--- linux-azure-5.8-5.8.0.orig/Documentation/ABI/testing/debugfs-aufs +++ linux-azure-5.8-5.8.0/Documentation/ABI/testing/debugfs-aufs @@ -0,0 +1,55 @@ +What: /debug/aufs/si_/ +Date: March 2009 +Contact: J. R. Okajima +Description: + Under /debug/aufs, a directory named si_ is created + per aufs mount, where is a unique id generated + internally. + +What: /debug/aufs/si_/plink +Date: Apr 2013 +Contact: J. R. Okajima +Description: + It has three lines and shows the information about the + pseudo-link. The first line is a single number + representing a number of buckets. The second line is a + number of pseudo-links per buckets (separated by a + blank). The last line is a single number representing a + total number of psedo-links. + When the aufs mount option 'noplink' is specified, it + will show "1\n0\n0\n". + +What: /debug/aufs/si_/xib +Date: March 2009 +Contact: J. R. Okajima +Description: + It shows the consumed blocks by xib (External Inode Number + Bitmap), its block size and file size. + When the aufs mount option 'noxino' is specified, it + will be empty. About XINO files, see the aufs manual. + +What: /debug/aufs/si_/xi0, xi1 ... xiN and xiN-N +Date: March 2009 +Contact: J. R. Okajima +Description: + It shows the consumed blocks by xino (External Inode Number + Translation Table), its link count, block size and file + size. + Due to the file size limit, there may exist multiple + xino files per branch. In this case, "-N" is added to + the filename and it corresponds to the index of the + internal xino array. "-0" is omitted. + When the aufs mount option 'noxino' is specified, Those + entries won't exist. About XINO files, see the aufs + manual. + +What: /debug/aufs/si_/xigen +Date: March 2009 +Contact: J. R. Okajima +Description: + It shows the consumed blocks by xigen (External Inode + Generation Table), its block size and file size. + If CONFIG_AUFS_EXPORT is disabled, this entry will not + be created. + When the aufs mount option 'noxino' is specified, it + will be empty. About XINO files, see the aufs manual. --- linux-azure-5.8-5.8.0.orig/Documentation/ABI/testing/sysfs-aufs +++ linux-azure-5.8-5.8.0/Documentation/ABI/testing/sysfs-aufs @@ -0,0 +1,31 @@ +What: /sys/fs/aufs/si_/ +Date: March 2009 +Contact: J. R. Okajima +Description: + Under /sys/fs/aufs, a directory named si_ is created + per aufs mount, where is a unique id generated + internally. + +What: /sys/fs/aufs/si_/br0, br1 ... brN +Date: March 2009 +Contact: J. R. Okajima +Description: + It shows the abolute path of a member directory (which + is called branch) in aufs, and its permission. + +What: /sys/fs/aufs/si_/brid0, brid1 ... bridN +Date: July 2013 +Contact: J. R. Okajima +Description: + It shows the id of a member directory (which is called + branch) in aufs. + +What: /sys/fs/aufs/si_/xi_path +Date: March 2009 +Contact: J. R. Okajima +Description: + It shows the abolute path of XINO (External Inode Number + Bitmap, Translation Table and Generation Table) file + even if it is the default path. + When the aufs mount option 'noxino' is specified, it + will be empty. About XINO files, see the aufs manual. --- linux-azure-5.8-5.8.0.orig/Documentation/ABI/testing/sysfs-bus-iio +++ linux-azure-5.8-5.8.0/Documentation/ABI/testing/sysfs-bus-iio @@ -1569,7 +1569,8 @@ KernelVersion: 4.3 Contact: linux-iio@vger.kernel.org Description: - Raw (unscaled no offset etc.) percentage reading of a substance. + Raw (unscaled no offset etc.) reading of a substance. Units + after application of scale and offset are percents. What: /sys/bus/iio/devices/iio:deviceX/in_resistance_raw What: /sys/bus/iio/devices/iio:deviceX/in_resistanceX_raw --- linux-azure-5.8-5.8.0.orig/Documentation/Makefile +++ linux-azure-5.8-5.8.0/Documentation/Makefile @@ -78,7 +78,7 @@ $(abspath $(BUILDDIR)/$3/$4) 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))) linkcheckdocs: --- linux-azure-5.8-5.8.0.orig/Documentation/admin-guide/device-mapper/dm-integrity.rst +++ linux-azure-5.8-5.8.0/Documentation/admin-guide/device-mapper/dm-integrity.rst @@ -177,14 +177,20 @@ The bitmap flush interval in milliseconds. The metadata buffers are synchronized when this interval expires. +allow_discards + Allow block discard requests (a.k.a. TRIM) for the integrity device. + Discards are only allowed to devices using internal hash. + fix_padding Use a smaller padding of the tag area that is more space-efficient. If this option is not present, large padding is used - that is for compatibility with older kernels. -allow_discards - Allow block discard requests (a.k.a. TRIM) for the integrity device. - Discards are only allowed to devices using internal hash. +legacy_recalculate + Allow recalculating of volumes with HMAC keys. This is disabled by + default for security reasons - an attacker could modify the volume, + set recalc_sector to zero, and the kernel would not detect the + modification. The journal mode (D/J), buffer_sectors, journal_watermark, commit_time and allow_discards can be changed when reloading the target (load an inactive --- linux-azure-5.8-5.8.0.orig/Documentation/admin-guide/ext4.rst +++ linux-azure-5.8-5.8.0/Documentation/admin-guide/ext4.rst @@ -482,6 +482,9 @@ multiple of this tuning parameter if the stripe size is not set in the ext4 superblock + mb_max_inode_prealloc + The maximum length of per-inode ext4_prealloc_space list. + mb_max_to_scan The maximum number of extents the multiblock allocator will search to find the best extent. --- linux-azure-5.8-5.8.0.orig/Documentation/admin-guide/hw-vuln/multihit.rst +++ linux-azure-5.8-5.8.0/Documentation/admin-guide/hw-vuln/multihit.rst @@ -80,6 +80,10 @@ - The processor is not vulnerable. * - KVM: Mitigation: Split huge pages - Software changes mitigate this issue. + * - KVM: Mitigation: VMX unsupported + - KVM is not vulnerable because Virtual Machine Extensions (VMX) is not supported. + * - KVM: Mitigation: VMX disabled + - KVM is not vulnerable because Virtual Machine Extensions (VMX) is disabled. * - KVM: Vulnerable - The processor is vulnerable, but no mitigation enabled --- linux-azure-5.8-5.8.0.orig/Documentation/admin-guide/kernel-parameters.txt +++ linux-azure-5.8-5.8.0/Documentation/admin-guide/kernel-parameters.txt @@ -577,7 +577,7 @@ loops can be debugged more effectively on production systems. - clearcpuid=BITNUM [X86] + clearcpuid=BITNUM[,BITNUM...] [X86] Disable CPUID feature X for the kernel. See arch/x86/include/asm/cpufeatures.h for the valid bit numbers. Note the Linux specific bits are not necessarily @@ -694,6 +694,10 @@ 0: default value, disable debugging 1: enable debugging at boot time + 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 @@ -2810,6 +2814,8 @@ mds=off [X86] tsx_async_abort=off [X86] kvm.nx_huge_pages=off [X86] + no_entry_flush [PPC] + no_uaccess_flush [PPC] Exceptions: This does not have any effect on @@ -3079,6 +3085,8 @@ no5lvl [X86-64] Disable 5-level paging mode. Forces kernel to use 4-level paging instead. + nofsgsbase [X86] Disables FSGSBASE instructions. + no_console_suspend [HW] Never suspend the console Disable suspending of consoles during suspend and @@ -3132,6 +3140,8 @@ noefi Disable EFI runtime services support. + no_entry_flush [PPC] Don't flush the L1-D cache when entering the kernel. + noexec [IA-64] noexec [X86] @@ -3181,6 +3191,9 @@ nospec_store_bypass_disable [HW] Disable all mitigations for the Speculative Store Bypass vulnerability + no_uaccess_flush + [PPC] Don't flush the L1-D cache after accessing user data. + noxsave [BUGS=X86] Disables x86 extended register state save and restore using xsave. The kernel will fallback to enabling legacy floating-point and sse state. @@ -3568,6 +3581,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. @@ -5421,6 +5440,7 @@ device); j = NO_REPORT_LUNS (don't use report luns command, uas only); + k = NO_SAME (do not use WRITE_SAME, uas only) l = NOT_LOCKABLE (don't try to lock and unlock ejectable media, not on uas); m = MAX_SECTORS_64 (don't transfer more @@ -5721,6 +5741,10 @@ This option is obsoleted by the "nopv" option, which has equivalent effect for XEN platform. + xen_no_vector_callback + [KNL,X86,XEN] Disable the vector callback for Xen + event channel interrupts. + xen_scrub_pages= [XEN] Boolean option to control scrubbing pages before giving them back to Xen, for use by other domains. Can be also changed at runtime @@ -5734,6 +5758,14 @@ improve timer resolution at the expense of processing more timer interrupts. + xen.event_eoi_delay= [XEN] + How long to delay EOI handling in case of event + storms (jiffies). Default is 10. + + xen.event_loop_timeout= [XEN] + After which time (jiffies) the event handling loop + should start to delay EOI handling. Default is 2. + nopv= [X86,XEN,KVM,HYPER_V,VMWARE] Disables the PV optimizations forcing the guest to run as generic guest with no PV drivers. Currently support --- linux-azure-5.8-5.8.0.orig/Documentation/admin-guide/sysctl/vm.rst +++ linux-azure-5.8-5.8.0/Documentation/admin-guide/sysctl/vm.rst @@ -961,11 +961,11 @@ left disabled as the caching effect is likely to be more important than data locality. -zone_reclaim may be enabled if it's known that the workload is partitioned -such that each partition fits within a NUMA node and that accessing remote -memory would cause a measurable performance reduction. The page allocator -will then reclaim easily reusable pages (those page cache pages that are -currently not used) before allocating off node pages. +Consider enabling one or more zone_reclaim mode bits if it's known that the +workload is partitioned such that each partition fits within a NUMA node +and that accessing remote memory would cause a measurable performance +reduction. The page allocator will take additional actions before +allocating off node pages. Allowing zone reclaim to write out pages stops processes that are writing large amounts of data from dirtying pages on other nodes. Zone --- linux-azure-5.8-5.8.0.orig/Documentation/asm-annotations.rst +++ linux-azure-5.8-5.8.0/Documentation/asm-annotations.rst @@ -100,6 +100,11 @@ ~~~~~~~~~~~~~~~~~~ This section covers ``SYM_FUNC_*`` and ``SYM_CODE_*`` enumerated above. +``objtool`` requires that all code must be contained in an ELF symbol. Symbol +names that have a ``.L`` prefix do not emit symbol table entries. ``.L`` +prefixed symbols can be used within a code region, but should be avoided for +denoting a range of code via ``SYM_*_START/END`` annotations. + * ``SYM_FUNC_START`` and ``SYM_FUNC_START_LOCAL`` are supposed to be **the most frequent markings**. They are used for functions with standard calling conventions -- global and local. Like in C, they both align the functions to --- linux-azure-5.8-5.8.0.orig/Documentation/cgroups/namespace.txt +++ linux-azure-5.8-5.8.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-azure-5.8-5.8.0.orig/Documentation/conf.py +++ linux-azure-5.8-5.8.0/Documentation/conf.py @@ -36,7 +36,7 @@ # Add any Sphinx extension module names here, as strings. They can be # extensions coming with Sphinx (named 'sphinx.ext.*') or your custom # ones. -extensions = ['kerneldoc', 'rstFlatTable', 'kernel_include', 'cdomain', +extensions = ['kerneldoc', 'rstFlatTable', 'kernel_include', #y'cdomain', 'kfigure', 'sphinx.ext.ifconfig', 'automarkup', 'maintainers_include', 'sphinx.ext.autosectionlabel' ] --- linux-azure-5.8-5.8.0.orig/Documentation/core-api/cpu_hotplug.rst +++ linux-azure-5.8-5.8.0/Documentation/core-api/cpu_hotplug.rst @@ -50,13 +50,6 @@ This option is limited to the X86 and S390 architecture. -``cede_offline={"off","on"}`` - Use this option to disable/enable putting offlined processors to an extended - ``H_CEDE`` state on supported pseries platforms. If nothing is specified, - ``cede_offline`` is set to "on". - - This option is limited to the PowerPC architecture. - ``cpu0_hotplug`` Allow to shutdown CPU0. --- linux-azure-5.8-5.8.0.orig/Documentation/core-api/printk-formats.rst +++ linux-azure-5.8-5.8.0/Documentation/core-api/printk-formats.rst @@ -566,6 +566,12 @@ Thanks ====== +Kernel messages: + + %pj 123456 + + For generating the jhash of a string truncated to six digits + If you add other %p extensions, please extend with one or more test cases, if at all feasible. --- linux-azure-5.8-5.8.0.orig/Documentation/devicetree/bindings/crypto/allwinner,sun4i-a10-crypto.yaml +++ linux-azure-5.8-5.8.0/Documentation/devicetree/bindings/crypto/allwinner,sun4i-a10-crypto.yaml @@ -23,8 +23,7 @@ - items: - const: allwinner,sun7i-a20-crypto - const: allwinner,sun4i-a10-crypto - - items: - - const: allwinner,sun8i-a33-crypto + - const: allwinner,sun8i-a33-crypto reg: maxItems: 1 @@ -59,7 +58,9 @@ properties: compatible: contains: - const: allwinner,sun6i-a31-crypto + enum: + - allwinner,sun6i-a31-crypto + - allwinner,sun8i-a33-crypto then: required: --- linux-azure-5.8-5.8.0.orig/Documentation/devicetree/bindings/display/bridge/sii902x.txt +++ linux-azure-5.8-5.8.0/Documentation/devicetree/bindings/display/bridge/sii902x.txt @@ -8,6 +8,8 @@ - interrupts: describe the interrupt line used to inform the host about hotplug events. - reset-gpios: OF device-tree gpio specification for RST_N pin. + - iovcc-supply: I/O Supply Voltage (1.8V or 3.3V) + - cvcc12-supply: Digital Core Supply Voltage (1.2V) HDMI audio properties: - #sound-dai-cells: <0> or <1>. <0> if only i2s or spdif pin @@ -54,6 +56,8 @@ compatible = "sil,sii9022"; reg = <0x39>; reset-gpios = <&pioA 1 0>; + iovcc-supply = <&v3v3_hdmi>; + cvcc12-supply = <&v1v2_hdmi>; #sound-dai-cells = <0>; sil,i2s-data-lanes = < 0 1 2 >; --- linux-azure-5.8-5.8.0.orig/Documentation/devicetree/bindings/gpio/sgpio-aspeed.txt +++ linux-azure-5.8-5.8.0/Documentation/devicetree/bindings/gpio/sgpio-aspeed.txt @@ -20,8 +20,9 @@ - gpio-controller : Marks the device node as a GPIO controller - interrupts : Interrupt specifier, see interrupt-controller/interrupts.txt - interrupt-controller : Mark the GPIO controller as an interrupt-controller -- ngpios : number of GPIO lines, see gpio.txt - (should be multiple of 8, up to 80 pins) +- ngpios : number of *hardware* GPIO lines, see gpio.txt. This will expose + 2 software GPIOs per hardware GPIO: one for hardware input, one for hardware + output. Up to 80 pins, must be a multiple of 8. - clocks : A phandle to the APB clock for SGPM clock division - bus-frequency : SGPM CLK frequency --- linux-azure-5.8-5.8.0.orig/Documentation/devicetree/bindings/iio/multiplexer/io-channel-mux.txt +++ linux-azure-5.8-5.8.0/Documentation/devicetree/bindings/iio/multiplexer/io-channel-mux.txt @@ -21,7 +21,7 @@ Example: mux: mux-controller { - compatible = "mux-gpio"; + compatible = "gpio-mux"; #mux-control-cells = <0>; mux-gpios = <&pioA 0 GPIO_ACTIVE_HIGH>, --- linux-azure-5.8-5.8.0.orig/Documentation/devicetree/bindings/mmc/mtk-sd.txt +++ linux-azure-5.8-5.8.0/Documentation/devicetree/bindings/mmc/mtk-sd.txt @@ -49,6 +49,8 @@ error caused by stop clock(fifo full) Valid range = [0:0x7]. if not present, default value is 0. applied to compatible "mediatek,mt2701-mmc". +- resets: Phandle and reset specifier pair to softreset line of MSDC IP. +- reset-names: Should be "hrst". Examples: mmc0: mmc@11230000 { --- linux-azure-5.8-5.8.0.orig/Documentation/devicetree/bindings/mmc/nvidia,tegra20-sdhci.txt +++ linux-azure-5.8-5.8.0/Documentation/devicetree/bindings/mmc/nvidia,tegra20-sdhci.txt @@ -15,8 +15,15 @@ - "nvidia,tegra210-sdhci": for Tegra210 - "nvidia,tegra186-sdhci": for Tegra186 - "nvidia,tegra194-sdhci": for Tegra194 -- clocks : Must contain one entry, for the module clock. - See ../clocks/clock-bindings.txt for details. +- clocks: For Tegra210, Tegra186 and Tegra194 must contain two entries. + One for the module clock and one for the timeout clock. + For all other Tegra devices, must contain a single entry for + the module clock. See ../clocks/clock-bindings.txt for details. +- clock-names: For Tegra210, Tegra186 and Tegra194 must contain the + strings 'sdhci' and 'tmclk' to represent the module and + the timeout clocks, respectively. + For all other Tegra devices must contain the string 'sdhci' + to represent the module clock. - resets : Must contain an entry for each entry in reset-names. See ../reset/reset.txt for details. - reset-names : Must include the following entries: @@ -99,7 +106,7 @@ Example: sdhci@700b0000 { - compatible = "nvidia,tegra210-sdhci", "nvidia,tegra124-sdhci"; + compatible = "nvidia,tegra124-sdhci"; reg = <0x0 0x700b0000 0x0 0x200>; interrupts = ; clocks = <&tegra_car TEGRA210_CLK_SDMMC1>; @@ -107,6 +114,25 @@ resets = <&tegra_car 14>; reset-names = "sdhci"; pinctrl-names = "sdmmc-3v3", "sdmmc-1v8"; + pinctrl-0 = <&sdmmc1_3v3>; + pinctrl-1 = <&sdmmc1_1v8>; + nvidia,pad-autocal-pull-up-offset-3v3 = <0x00>; + nvidia,pad-autocal-pull-down-offset-3v3 = <0x7d>; + nvidia,pad-autocal-pull-up-offset-1v8 = <0x7b>; + nvidia,pad-autocal-pull-down-offset-1v8 = <0x7b>; + status = "disabled"; +}; + +sdhci@700b0000 { + compatible = "nvidia,tegra210-sdhci"; + reg = <0x0 0x700b0000 0x0 0x200>; + interrupts = ; + clocks = <&tegra_car TEGRA210_CLK_SDMMC1>, + <&tegra_car TEGRA210_CLK_SDMMC_LEGACY>; + clock-names = "sdhci", "tmclk"; + resets = <&tegra_car 14>; + reset-names = "sdhci"; + pinctrl-names = "sdmmc-3v3", "sdmmc-1v8"; pinctrl-0 = <&sdmmc1_3v3>; pinctrl-1 = <&sdmmc1_1v8>; nvidia,pad-autocal-pull-up-offset-3v3 = <0x00>; --- linux-azure-5.8-5.8.0.orig/Documentation/devicetree/bindings/net/can/tcan4x5x.txt +++ linux-azure-5.8-5.8.0/Documentation/devicetree/bindings/net/can/tcan4x5x.txt @@ -33,7 +33,7 @@ spi-max-frequency = <10000000>; bosch,mram-cfg = <0x0 0 0 32 0 0 1 1>; interrupt-parent = <&gpio1>; - interrupts = <14 GPIO_ACTIVE_LOW>; + interrupts = <14 IRQ_TYPE_LEVEL_LOW>; device-state-gpios = <&gpio3 21 GPIO_ACTIVE_HIGH>; device-wake-gpios = <&gpio1 15 GPIO_ACTIVE_HIGH>; reset-gpios = <&gpio1 27 GPIO_ACTIVE_HIGH>; --- linux-azure-5.8-5.8.0.orig/Documentation/devicetree/bindings/net/nfc/nxp-nci.txt +++ linux-azure-5.8-5.8.0/Documentation/devicetree/bindings/net/nfc/nxp-nci.txt @@ -25,7 +25,7 @@ clock-frequency = <100000>; interrupt-parent = <&gpio1>; - interrupts = <29 GPIO_ACTIVE_HIGH>; + interrupts = <29 IRQ_TYPE_LEVEL_HIGH>; enable-gpios = <&gpio0 30 GPIO_ACTIVE_HIGH>; firmware-gpios = <&gpio0 31 GPIO_ACTIVE_HIGH>; --- linux-azure-5.8-5.8.0.orig/Documentation/devicetree/bindings/net/nfc/pn544.txt +++ linux-azure-5.8-5.8.0/Documentation/devicetree/bindings/net/nfc/pn544.txt @@ -25,7 +25,7 @@ clock-frequency = <400000>; interrupt-parent = <&gpio1>; - interrupts = <17 GPIO_ACTIVE_HIGH>; + interrupts = <17 IRQ_TYPE_LEVEL_HIGH>; enable-gpios = <&gpio3 21 GPIO_ACTIVE_HIGH>; firmware-gpios = <&gpio3 19 GPIO_ACTIVE_HIGH>; --- linux-azure-5.8-5.8.0.orig/Documentation/devicetree/bindings/net/socionext-netsec.txt +++ linux-azure-5.8-5.8.0/Documentation/devicetree/bindings/net/socionext-netsec.txt @@ -30,7 +30,9 @@ - max-frame-size: See ethernet.txt in the same directory. The MAC address will be determined using the optional properties -defined in ethernet.txt. +defined in ethernet.txt. The 'phy-mode' property is required, but may +be set to the empty string if the PHY configuration is programmed by +the firmware or set by hardware straps, and needs to be preserved. Example: eth0: ethernet@522d0000 { --- linux-azure-5.8-5.8.0.orig/Documentation/devicetree/bindings/pci/intel-gw-pcie.yaml +++ linux-azure-5.8-5.8.0/Documentation/devicetree/bindings/pci/intel-gw-pcie.yaml @@ -9,6 +9,14 @@ maintainers: - Dilip Kota +select: + properties: + compatible: + contains: + const: intel,lgm-pcie + required: + - compatible + properties: compatible: items: --- linux-azure-5.8-5.8.0.orig/Documentation/devicetree/bindings/phy/socionext,uniphier-usb3hs-phy.yaml +++ linux-azure-5.8-5.8.0/Documentation/devicetree/bindings/phy/socionext,uniphier-usb3hs-phy.yaml @@ -31,12 +31,16 @@ clocks: minItems: 1 - maxItems: 2 + maxItems: 3 clock-names: oneOf: - const: link # for PXs2 - - items: # for PXs3 + - items: # for PXs3 with phy-ext + - const: link + - const: phy + - const: phy-ext + - items: # for others - const: link - const: phy --- linux-azure-5.8-5.8.0.orig/Documentation/devicetree/bindings/rtc/rtc.yaml +++ linux-azure-5.8-5.8.0/Documentation/devicetree/bindings/rtc/rtc.yaml @@ -47,4 +47,9 @@ description: Enables wake up of host system on alarm. + reset-source: + $ref: /schemas/types.yaml#/definitions/flag + description: + The RTC is able to reset the machine. + ... --- linux-azure-5.8-5.8.0.orig/Documentation/devicetree/bindings/spi/brcm,spi-bcm-qspi.txt +++ linux-azure-5.8-5.8.0/Documentation/devicetree/bindings/spi/brcm,spi-bcm-qspi.txt @@ -23,8 +23,8 @@ - compatible: Must be one of : - "brcm,spi-bcm-qspi", "brcm,spi-brcmstb-qspi" : MSPI+BSPI on BRCMSTB SoCs - "brcm,spi-bcm-qspi", "brcm,spi-brcmstb-mspi" : Second Instance of MSPI + "brcm,spi-brcmstb-qspi", "brcm,spi-bcm-qspi" : MSPI+BSPI on BRCMSTB SoCs + "brcm,spi-brcmstb-mspi", "brcm,spi-bcm-qspi" : Second Instance of MSPI BRCMSTB SoCs "brcm,spi-bcm7425-qspi", "brcm,spi-bcm-qspi", "brcm,spi-brcmstb-mspi" : Second Instance of MSPI BRCMSTB SoCs @@ -36,8 +36,8 @@ BRCMSTB SoCs "brcm,spi-bcm7278-qspi", "brcm,spi-bcm-qspi", "brcm,spi-brcmstb-mspi" : Second Instance of MSPI BRCMSTB SoCs - "brcm,spi-bcm-qspi", "brcm,spi-nsp-qspi" : MSPI+BSPI on Cygnus, NSP - "brcm,spi-bcm-qspi", "brcm,spi-ns2-qspi" : NS2 SoCs + "brcm,spi-nsp-qspi", "brcm,spi-bcm-qspi" : MSPI+BSPI on Cygnus, NSP + "brcm,spi-ns2-qspi", "brcm,spi-bcm-qspi" : NS2 SoCs - reg: Define the bases and ranges of the associated I/O address spaces. @@ -86,7 +86,7 @@ spi@f03e3400 { #address-cells = <0x1>; #size-cells = <0x0>; - compatible = "brcm,spi-brcmstb-qspi", "brcm,spi-brcmstb-qspi"; + compatible = "brcm,spi-brcmstb-qspi", "brcm,spi-bcm-qspi"; reg = <0xf03e0920 0x4 0xf03e3400 0x188 0xf03e3200 0x50>; reg-names = "cs_reg", "mspi", "bspi"; interrupts = <0x6 0x5 0x4 0x3 0x2 0x1 0x0>; @@ -149,7 +149,7 @@ #address-cells = <1>; #size-cells = <0>; clocks = <&upg_fixed>; - compatible = "brcm,spi-brcmstb-qspi", "brcm,spi-brcmstb-mspi"; + compatible = "brcm,spi-brcmstb-mspi", "brcm,spi-bcm-qspi"; reg = <0xf0416000 0x180>; reg-names = "mspi"; interrupts = <0x14>; @@ -160,7 +160,7 @@ iProc SoC Example: qspi: spi@18027200 { - compatible = "brcm,spi-bcm-qspi", "brcm,spi-nsp-qspi"; + compatible = "brcm,spi-nsp-qspi", "brcm,spi-bcm-qspi"; reg = <0x18027200 0x184>, <0x18027000 0x124>, <0x1811c408 0x004>, @@ -191,7 +191,7 @@ NS2 SoC Example: qspi: spi@66470200 { - compatible = "brcm,spi-bcm-qspi", "brcm,spi-ns2-qspi"; + compatible = "brcm,spi-ns2-qspi", "brcm,spi-bcm-qspi"; reg = <0x66470200 0x184>, <0x66470000 0x124>, <0x67017408 0x004>, --- linux-azure-5.8-5.8.0.orig/Documentation/filesystems/affs.rst +++ linux-azure-5.8-5.8.0/Documentation/filesystems/affs.rst @@ -110,13 +110,15 @@ - R maps to r for user, group and others. On directories, R implies x. - - If both W and D are allowed, w will be set. + - W maps to w. - E maps to x. - - H and P are always retained and ignored under Linux. + - D is ignored. - - A is always reset when a file is written to. + - H, S and P are always retained and ignored under Linux. + + - A is cleared when a file is written to. User id and group id will be used unless set[gu]id are given as mount options. Since most of the Amiga file systems are single user systems @@ -128,11 +130,13 @@ The Linux rwxrwxrwx file mode is handled as follows: - - r permission will set R for user, group and others. + - r permission will allow R for user, group and others. + + - w permission will allow W for user, group and others. - - w permission will set W and D for user, group and others. + - x permission of the user will allow E for plain files. - - x permission of the user will set E for plain files. + - D will be allowed for user, group and others. - All other flags (suid, sgid, ...) are ignored and will not be retained. --- linux-azure-5.8-5.8.0.orig/Documentation/filesystems/aufs/README +++ linux-azure-5.8-5.8.0/Documentation/filesystems/aufs/README @@ -0,0 +1,401 @@ + +Aufs5 -- advanced multi layered unification filesystem version 5.x +http://aufs.sf.net +Junjiro R. Okajima + + +0. Introduction +---------------------------------------- +In the early days, aufs was entirely re-designed and re-implemented +Unionfs Version 1.x series. Adding many original ideas, approaches, +improvements and implementations, it became totally different from +Unionfs while keeping the basic features. +Later, Unionfs Version 2.x series began taking some of the same +approaches to aufs1's. +Unionfs was being developed by Professor Erez Zadok at Stony Brook +University and his team. + +Aufs5 supports linux-v5.0 and later, If you want older kernel version +support, +- for linux-v4.x series, try aufs4-linux.git or aufs4-standalone.git +- for linux-v3.x series, try aufs3-linux.git or aufs3-standalone.git +- for linux-v2.6.16 and later, try aufs2-2.6.git, aufs2-standalone.git + or aufs1 from CVS on SourceForge. + +Note: it becomes clear that "Aufs was rejected. Let's give it up." + According to Christoph Hellwig, linux rejects all union-type + filesystems but UnionMount. + + +PS. Al Viro seems have a plan to merge aufs as well as overlayfs and + UnionMount, and he pointed out an issue around a directory mutex + lock and aufs addressed it. But it is still unsure whether aufs will + be merged (or any other union solution). + + + +1. Features +---------------------------------------- +- unite several directories into a single virtual filesystem. The member + directory is called as a branch. +- you can specify the permission flags to the branch, which are 'readonly', + 'readwrite' and 'whiteout-able.' +- by upper writable branch, internal copyup and whiteout, files/dirs on + readonly branch are modifiable logically. +- dynamic branch manipulation, add, del. +- etc... + +Also there are many enhancements in aufs, such as: +- test only the highest one for the directory permission (dirperm1) +- copyup on open (coo=) +- 'move' policy for copy-up between two writable branches, after + checking free space. +- xattr, acl +- readdir(3) in userspace. +- keep inode number by external inode number table +- keep the timestamps of file/dir in internal copyup operation +- seekable directory, supporting NFS readdir. +- whiteout is hardlinked in order to reduce the consumption of inodes + on branch +- do not copyup, nor create a whiteout when it is unnecessary +- revert a single systemcall when an error occurs in aufs +- remount interface instead of ioctl +- maintain /etc/mtab by an external command, /sbin/mount.aufs. +- loopback mounted filesystem as a branch +- kernel thread for removing the dir who has a plenty of whiteouts +- support copyup sparse file (a file which has a 'hole' in it) +- default permission flags for branches +- selectable permission flags for ro branch, whether whiteout can + exist or not +- export via NFS. +- support /fs/aufs and /aufs. +- support multiple writable branches, some policies to select one + among multiple writable branches. +- a new semantics for link(2) and rename(2) to support multiple + writable branches. +- no glibc changes are required. +- pseudo hardlink (hardlink over branches) +- allow a direct access manually to a file on branch, e.g. bypassing aufs. + including NFS or remote filesystem branch. +- userspace wrapper for pathconf(3)/fpathconf(3) with _PC_LINK_MAX. +- and more... + +Currently these features are dropped temporary from aufs5. +See design/08plan.txt in detail. +- nested mount, i.e. aufs as readonly no-whiteout branch of another aufs + (robr) +- statistics of aufs thread (/sys/fs/aufs/stat) + +Features or just an idea in the future (see also design/*.txt), +- reorder the branch index without del/re-add. +- permanent xino files for NFSD +- an option for refreshing the opened files after add/del branches +- light version, without branch manipulation. (unnecessary?) +- copyup in userspace +- inotify in userspace +- readv/writev + + +2. Download +---------------------------------------- +There are three GIT trees for aufs5, aufs5-linux.git, +aufs5-standalone.git, and aufs-util.git. Note that there is no "5" in +"aufs-util.git." +While the aufs-util is always necessary, you need either of aufs5-linux +or aufs5-standalone. + +The aufs5-linux tree includes the whole linux mainline GIT tree, +git://git.kernel.org/.../torvalds/linux.git. +And you cannot select CONFIG_AUFS_FS=m for this version, eg. you cannot +build aufs5 as an external kernel module. +Several extra patches are not included in this tree. Only +aufs5-standalone tree contains them. They are described in the later +section "Configuration and Compilation." + +On the other hand, the aufs5-standalone tree has only aufs source files +and necessary patches, and you can select CONFIG_AUFS_FS=m. +But you need to apply all aufs patches manually. + +You will find GIT branches whose name is in form of "aufs5.x" where "x" +represents the linux kernel version, "linux-5.x". For instance, +"aufs5.0" is for linux-5.0. For latest "linux-5.x-rcN", use +"aufs5.x-rcN" branch. + +o aufs5-linux tree +$ git clone --reference /your/linux/git/tree \ + git://github.com/sfjro/aufs5-linux.git aufs5-linux.git +- if you don't have linux GIT tree, then remove "--reference ..." +$ cd aufs5-linux.git +$ git checkout origin/aufs5.0 + +Or You may want to directly git-pull aufs into your linux GIT tree, and +leave the patch-work to GIT. +$ cd /your/linux/git/tree +$ git remote add aufs5 git://github.com/sfjro/aufs5-linux.git +$ git fetch aufs5 +$ git checkout -b my5.0 v5.0 +$ (add your local change...) +$ git pull aufs5 aufs5.0 +- now you have v5.0 + your_changes + aufs5.0 in you my5.0 branch. +- you may need to solve some conflicts between your_changes and + aufs5.0. in this case, git-rerere is recommended so that you can + solve the similar conflicts automatically when you upgrade to 5.1 or + later in the future. + +o aufs5-standalone tree +$ git clone git://github.com/sfjro/aufs5-standalone.git aufs5-standalone.git +$ cd aufs5-standalone.git +$ git checkout origin/aufs5.0 + +o aufs-util tree +$ git clone git://git.code.sf.net/p/aufs/aufs-util aufs-util.git +- note that the public aufs-util.git is on SourceForge instead of + GitHUB. +$ cd aufs-util.git +$ git checkout origin/aufs5.0 + +Note: The 5.x-rcN branch is to be used with `rc' kernel versions ONLY. +The minor version number, 'x' in '5.x', of aufs may not always +follow the minor version number of the kernel. +Because changes in the kernel that cause the use of a new +minor version number do not always require changes to aufs-util. + +Since aufs-util has its own minor version number, you may not be +able to find a GIT branch in aufs-util for your kernel's +exact minor version number. +In this case, you should git-checkout the branch for the +nearest lower number. + +For (an unreleased) example: +If you are using "linux-5.10" and the "aufs5.10" branch +does not exist in aufs-util repository, then "aufs5.9", "aufs5.8" +or something numerically smaller is the branch for your kernel. + +Also you can view all branches by + $ git branch -a + + +3. Configuration and Compilation +---------------------------------------- +Make sure you have git-checkout'ed the correct branch. + +For aufs5-linux tree, +- enable CONFIG_AUFS_FS. +- set other aufs configurations if necessary. + +For aufs5-standalone tree, +There are several ways to build. + +1. +- apply ./aufs5-kbuild.patch to your kernel source files. +- apply ./aufs5-base.patch too. +- apply ./aufs5-mmap.patch too. +- apply ./aufs5-standalone.patch too, if you have a plan to set + CONFIG_AUFS_FS=m. otherwise you don't need ./aufs5-standalone.patch. +- copy ./{Documentation,fs,include/uapi/linux/aufs_type.h} files to your + kernel source tree. Never copy $PWD/include/uapi/linux/Kbuild. +- enable CONFIG_AUFS_FS, you can select either + =m or =y. +- and build your kernel as usual. +- install the built kernel. +- install the header files too by "make headers_install" to the + directory where you specify. By default, it is $PWD/usr. + "make help" shows a brief note for headers_install. +- and reboot your system. + +2. +- module only (CONFIG_AUFS_FS=m). +- apply ./aufs5-base.patch to your kernel source files. +- apply ./aufs5-mmap.patch too. +- apply ./aufs5-standalone.patch too. +- build your kernel, don't forget "make headers_install", and reboot. +- edit ./config.mk and set other aufs configurations if necessary. + Note: You should read $PWD/fs/aufs/Kconfig carefully which describes + every aufs configurations. +- build the module by simple "make". +- you can specify ${KDIR} make variable which points to your kernel + source tree. +- install the files + + run "make install" to install the aufs module, or copy the built + $PWD/aufs.ko to /lib/modules/... and run depmod -a (or reboot simply). + + run "make install_headers" (instead of headers_install) to install + the modified aufs header file (you can specify DESTDIR which is + available in aufs standalone version's Makefile only), or copy + $PWD/usr/include/linux/aufs_type.h to /usr/include/linux or wherever + you like manually. By default, the target directory is $PWD/usr. +- no need to apply aufs5-kbuild.patch, nor copying source files to your + kernel source tree. + +Note: The header file aufs_type.h is necessary to build aufs-util + as well as "make headers_install" in the kernel source tree. + headers_install is subject to be forgotten, but it is essentially + necessary, not only for building aufs-util. + You may not meet problems without headers_install in some older + version though. + +And then, +- read README in aufs-util, build and install it +- note that your distribution may contain an obsoleted version of + aufs_type.h in /usr/include/linux or something. When you build aufs + utilities, make sure that your compiler refers the correct aufs header + file which is built by "make headers_install." +- if you want to use readdir(3) in userspace or pathconf(3) wrapper, + then run "make install_ulib" too. And refer to the aufs manual in + detail. + +There several other patches in aufs5-standalone.git. They are all +optional. When you meet some problems, they will help you. +- aufs5-loopback.patch + Supports a nested loopback mount in a branch-fs. This patch is + unnecessary until aufs produces a message like "you may want to try + another patch for loopback file". +- proc_mounts.patch + When there are many mountpoints and many mount(2)/umount(2) are + running, then /proc/mounts may not show the all mountpoints. This + patch makes /proc/mounts always show the full mountpoints list. + If you don't want to apply this patch and meet such problem, then you + need to increase the value of 'ProcMounts_Times' make-variable in + aufs-util.git as a second best solution. +- vfs-ino.patch + Modifies a system global kernel internal function get_next_ino() in + order to stop assigning 0 for an inode-number. Not directly related to + aufs, but recommended generally. +- tmpfs-idr.patch + Keeps the tmpfs inode number as the lowest value. Effective to reduce + the size of aufs XINO files for tmpfs branch. Also it prevents the + duplication of inode number, which is important for backup tools and + other utilities. When you find aufs XINO files for tmpfs branch + growing too much, try this patch. +- lockdep-debug.patch + Because aufs is not only an ordinary filesystem (callee of VFS), but + also a caller of VFS functions for branch filesystems, subclassing of + the internal locks for LOCKDEP is necessary. LOCKDEP is a debugging + feature of linux kernel. If you enable CONFIG_LOCKDEP, then you will + need to apply this debug patch to expand several constant values. + If you don't know what LOCKDEP is, then you don't have apply this + patch. + + +4. Usage +---------------------------------------- +At first, make sure aufs-util are installed, and please read the aufs +manual, aufs.5 in aufs-util.git tree. +$ man -l aufs.5 + +And then, +$ mkdir /tmp/rw /tmp/aufs +# mount -t aufs -o br=/tmp/rw:${HOME} none /tmp/aufs + +Here is another example. The result is equivalent. +# mount -t aufs -o br=/tmp/rw=rw:${HOME}=ro none /tmp/aufs + Or +# mount -t aufs -o br:/tmp/rw none /tmp/aufs +# mount -o remount,append:${HOME} /tmp/aufs + +Then, you can see whole tree of your home dir through /tmp/aufs. If +you modify a file under /tmp/aufs, the one on your home directory is +not affected, instead the same named file will be newly created under +/tmp/rw. And all of your modification to a file will be applied to +the one under /tmp/rw. This is called the file based Copy on Write +(COW) method. +Aufs mount options are described in aufs.5. +If you run chroot or something and make your aufs as a root directory, +then you need to customize the shutdown script. See the aufs manual in +detail. + +Additionally, there are some sample usages of aufs which are a +diskless system with network booting, and LiveCD over NFS. +See sample dir in CVS tree on SourceForge. + + +5. Contact +---------------------------------------- +When you have any problems or strange behaviour in aufs, please let me +know with: +- /proc/mounts (instead of the output of mount(8)) +- /sys/module/aufs/* +- /sys/fs/aufs/* (if you have them) +- /debug/aufs/* (if you have them) +- linux kernel version + if your kernel is not plain, for example modified by distributor, + the url where i can download its source is necessary too. +- aufs version which was printed at loading the module or booting the + system, instead of the date you downloaded. +- configuration (define/undefine CONFIG_AUFS_xxx) +- kernel configuration or /proc/config.gz (if you have it) +- LSM (linux security module, if you are using) +- behaviour which you think to be incorrect +- actual operation, reproducible one is better +- mailto: aufs-users at lists.sourceforge.net + +Usually, I don't watch the Public Areas(Bugs, Support Requests, Patches, +and Feature Requests) on SourceForge. Please join and write to +aufs-users ML. + + +6. Acknowledgements +---------------------------------------- +Thanks to everyone who have tried and are using aufs, whoever +have reported a bug or any feedback. + +Especially donators: +Tomas Matejicek(slax.org) made a donation (much more than once). + Since Apr 2010, Tomas M (the author of Slax and Linux Live + scripts) is making "doubling" donations. + Unfortunately I cannot list all of the donators, but I really + appreciate. + It ends Aug 2010, but the ordinary donation URL is still available. + +Dai Itasaka made a donation (2007/8). +Chuck Smith made a donation (2008/4, 10 and 12). +Henk Schoneveld made a donation (2008/9). +Chih-Wei Huang, ASUS, CTC donated Eee PC 4G (2008/10). +Francois Dupoux made a donation (2008/11). +Bruno Cesar Ribas and Luis Carlos Erpen de Bona, C3SL serves public + aufs2 GIT tree (2009/2). +William Grant made a donation (2009/3). +Patrick Lane made a donation (2009/4). +The Mail Archive (mail-archive.com) made donations (2009/5). +Nippy Networks (Ed Wildgoose) made a donation (2009/7). +New Dream Network, LLC (www.dreamhost.com) made a donation (2009/11). +Pavel Pronskiy made a donation (2011/2). +Iridium and Inmarsat satellite phone retailer (www.mailasail.com), Nippy + Networks (Ed Wildgoose) made a donation for hardware (2011/3). +Max Lekomcev (DOM-TV project) made a donation (2011/7, 12, 2012/3, 6 and +11). +Sam Liddicott made a donation (2011/9). +Era Scarecrow made a donation (2013/4). +Bor Ratajc made a donation (2013/4). +Alessandro Gorreta made a donation (2013/4). +POIRETTE Marc made a donation (2013/4). +Alessandro Gorreta made a donation (2013/4). +lauri kasvandik made a donation (2013/5). +"pemasu from Finland" made a donation (2013/7). +The Parted Magic Project made a donation (2013/9 and 11). +Pavel Barta made a donation (2013/10). +Nikolay Pertsev made a donation (2014/5). +James B made a donation (2014/7 and 2015/7). +Stefano Di Biase made a donation (2014/8). +Daniel Epellei made a donation (2015/1). +OmegaPhil made a donation (2016/1, 2018/4). +Tomasz Szewczyk made a donation (2016/4). +James Burry made a donation (2016/12). +Carsten Rose made a donation (2018/9). +Porteus Kiosk made a donation (2018/10). + +Thank you very much. +Donations are always, including future donations, very important and +helpful for me to keep on developing aufs. + + +7. +---------------------------------------- +If you are an experienced user, no explanation is needed. Aufs is +just a linux filesystem. + + +Enjoy! + +# Local variables: ; +# mode: text; +# End: ; --- linux-azure-5.8-5.8.0.orig/Documentation/filesystems/aufs/design/01intro.txt +++ linux-azure-5.8-5.8.0/Documentation/filesystems/aufs/design/01intro.txt @@ -0,0 +1,171 @@ + +# Copyright (C) 2005-2020 Junjiro R. Okajima +# +# This program is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 2 of the License, or +# (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program. If not, see . + +Introduction +---------------------------------------- + +aufs [ei ju: ef es] | /ey-yoo-ef-es/ | [a u f s] +1. abbrev. for "advanced multi-layered unification filesystem". +2. abbrev. for "another unionfs". +3. abbrev. for "auf das" in German which means "on the" in English. + Ex. "Butter aufs Brot"(G) means "butter onto bread"(E). + But "Filesystem aufs Filesystem" is hard to understand. +4. abbrev. for "African Urban Fashion Show". + +AUFS is a filesystem with features: +- multi layered stackable unification filesystem, the member directory + is called as a branch. +- branch permission and attribute, 'readonly', 'real-readonly', + 'readwrite', 'whiteout-able', 'link-able whiteout', etc. and their + combination. +- internal "file copy-on-write". +- logical deletion, whiteout. +- dynamic branch manipulation, adding, deleting and changing permission. +- allow bypassing aufs, user's direct branch access. +- external inode number translation table and bitmap which maintains the + persistent aufs inode number. +- seekable directory, including NFS readdir. +- file mapping, mmap and sharing pages. +- pseudo-link, hardlink over branches. +- loopback mounted filesystem as a branch. +- several policies to select one among multiple writable branches. +- revert a single systemcall when an error occurs in aufs. +- and more... + + +Multi Layered Stackable Unification Filesystem +---------------------------------------------------------------------- +Most people already knows what it is. +It is a filesystem which unifies several directories and provides a +merged single directory. When users access a file, the access will be +passed/re-directed/converted (sorry, I am not sure which English word is +correct) to the real file on the member filesystem. The member +filesystem is called 'lower filesystem' or 'branch' and has a mode +'readonly' and 'readwrite.' And the deletion for a file on the lower +readonly branch is handled by creating 'whiteout' on the upper writable +branch. + +On LKML, there have been discussions about UnionMount (Jan Blunck, +Bharata B Rao and Valerie Aurora) and Unionfs (Erez Zadok). They took +different approaches to implement the merged-view. +The former tries putting it into VFS, and the latter implements as a +separate filesystem. +(If I misunderstand about these implementations, please let me know and +I shall correct it. Because it is a long time ago when I read their +source files last time). + +UnionMount's approach will be able to small, but may be hard to share +branches between several UnionMount since the whiteout in it is +implemented in the inode on branch filesystem and always +shared. According to Bharata's post, readdir does not seems to be +finished yet. +There are several missing features known in this implementations such as +- for users, the inode number may change silently. eg. copy-up. +- link(2) may break by copy-up. +- read(2) may get an obsoleted filedata (fstat(2) too). +- fcntl(F_SETLK) may be broken by copy-up. +- unnecessary copy-up may happen, for example mmap(MAP_PRIVATE) after + open(O_RDWR). + +In linux-3.18, "overlay" filesystem (formerly known as "overlayfs") was +merged into mainline. This is another implementation of UnionMount as a +separated filesystem. All the limitations and known problems which +UnionMount are equally inherited to "overlay" filesystem. + +Unionfs has a longer history. When I started implementing a stackable +filesystem (Aug 2005), it already existed. It has virtual super_block, +inode, dentry and file objects and they have an array pointing lower +same kind objects. After contributing many patches for Unionfs, I +re-started my project AUFS (Jun 2006). + +In AUFS, the structure of filesystem resembles to Unionfs, but I +implemented my own ideas, approaches and enhancements and it became +totally different one. + +Comparing DM snapshot and fs based implementation +- the number of bytes to be copied between devices is much smaller. +- the type of filesystem must be one and only. +- the fs must be writable, no readonly fs, even for the lower original + device. so the compression fs will not be usable. but if we use + loopback mount, we may address this issue. + for instance, + mount /cdrom/squashfs.img /sq + losetup /sq/ext2.img + losetup /somewhere/cow + dmsetup "snapshot /dev/loop0 /dev/loop1 ..." +- it will be difficult (or needs more operations) to extract the + difference between the original device and COW. +- DM snapshot-merge may help a lot when users try merging. in the + fs-layer union, users will use rsync(1). + +You may want to read my old paper "Filesystems in LiveCD" +(http://aufs.sourceforge.net/aufs2/report/sq/sq.pdf). + + +Several characters/aspects/persona of aufs +---------------------------------------------------------------------- + +Aufs has several characters, aspects or persona. +1. a filesystem, callee of VFS helper +2. sub-VFS, caller of VFS helper for branches +3. a virtual filesystem which maintains persistent inode number +4. reader/writer of files on branches such like an application + +1. Callee of VFS Helper +As an ordinary linux filesystem, aufs is a callee of VFS. For instance, +unlink(2) from an application reaches sys_unlink() kernel function and +then vfs_unlink() is called. vfs_unlink() is one of VFS helper and it +calls filesystem specific unlink operation. Actually aufs implements the +unlink operation but it behaves like a redirector. + +2. Caller of VFS Helper for Branches +aufs_unlink() passes the unlink request to the branch filesystem as if +it were called from VFS. So the called unlink operation of the branch +filesystem acts as usual. As a caller of VFS helper, aufs should handle +every necessary pre/post operation for the branch filesystem. +- acquire the lock for the parent dir on a branch +- lookup in a branch +- revalidate dentry on a branch +- mnt_want_write() for a branch +- vfs_unlink() for a branch +- mnt_drop_write() for a branch +- release the lock on a branch + +3. Persistent Inode Number +One of the most important issue for a filesystem is to maintain inode +numbers. This is particularly important to support exporting a +filesystem via NFS. Aufs is a virtual filesystem which doesn't have a +backend block device for its own. But some storage is necessary to +keep and maintain the inode numbers. It may be a large space and may not +suit to keep in memory. Aufs rents some space from its first writable +branch filesystem (by default) and creates file(s) on it. These files +are created by aufs internally and removed soon (currently) keeping +opened. +Note: Because these files are removed, they are totally gone after + unmounting aufs. It means the inode numbers are not persistent + across unmount or reboot. I have a plan to make them really + persistent which will be important for aufs on NFS server. + +4. Read/Write Files Internally (copy-on-write) +Because a branch can be readonly, when you write a file on it, aufs will +"copy-up" it to the upper writable branch internally. And then write the +originally requested thing to the file. Generally kernel doesn't +open/read/write file actively. In aufs, even a single write may cause a +internal "file copy". This behaviour is very similar to cp(1) command. + +Some people may think it is better to pass such work to user space +helper, instead of doing in kernel space. Actually I am still thinking +about it. But currently I have implemented it in kernel space. --- linux-azure-5.8-5.8.0.orig/Documentation/filesystems/aufs/design/02struct.txt +++ linux-azure-5.8-5.8.0/Documentation/filesystems/aufs/design/02struct.txt @@ -0,0 +1,258 @@ + +# Copyright (C) 2005-2020 Junjiro R. Okajima +# +# This program is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 2 of the License, or +# (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program. If not, see . + +Basic Aufs Internal Structure + +Superblock/Inode/Dentry/File Objects +---------------------------------------------------------------------- +As like an ordinary filesystem, aufs has its own +superblock/inode/dentry/file objects. All these objects have a +dynamically allocated array and store the same kind of pointers to the +lower filesystem, branch. +For example, when you build a union with one readwrite branch and one +readonly, mounted /au, /rw and /ro respectively. +- /au = /rw + /ro +- /ro/fileA exists but /rw/fileA + +Aufs lookup operation finds /ro/fileA and gets dentry for that. These +pointers are stored in a aufs dentry. The array in aufs dentry will be, +- [0] = NULL (because /rw/fileA doesn't exist) +- [1] = /ro/fileA + +This style of an array is essentially same to the aufs +superblock/inode/dentry/file objects. + +Because aufs supports manipulating branches, ie. add/delete/change +branches dynamically, these objects has its own generation. When +branches are changed, the generation in aufs superblock is +incremented. And a generation in other object are compared when it is +accessed. When a generation in other objects are obsoleted, aufs +refreshes the internal array. + + +Superblock +---------------------------------------------------------------------- +Additionally aufs superblock has some data for policies to select one +among multiple writable branches, XIB files, pseudo-links and kobject. +See below in detail. +About the policies which supports copy-down a directory, see +wbr_policy.txt too. + + +Branch and XINO(External Inode Number Translation Table) +---------------------------------------------------------------------- +Every branch has its own xino (external inode number translation table) +file. The xino file is created and unlinked by aufs internally. When two +members of a union exist on the same filesystem, they share the single +xino file. +The struct of a xino file is simple, just a sequence of aufs inode +numbers which is indexed by the lower inode number. +In the above sample, assume the inode number of /ro/fileA is i111 and +aufs assigns the inode number i999 for fileA. Then aufs writes 999 as +4(8) bytes at 111 * 4(8) bytes offset in the xino file. + +When the inode numbers are not contiguous, the xino file will be sparse +which has a hole in it and doesn't consume as much disk space as it +might appear. If your branch filesystem consumes disk space for such +holes, then you should specify 'xino=' option at mounting aufs. + +Aufs has a mount option to free the disk blocks for such holes in XINO +files on tmpfs or ramdisk. But it is not so effective actually. If you +meet a problem of disk shortage due to XINO files, then you should try +"tmpfs-ino.patch" (and "vfs-ino.patch" too) in aufs4-standalone.git. +The patch localizes the assignment inumbers per tmpfs-mount and avoid +the holes in XINO files. + +Also a writable branch has three kinds of "whiteout bases". All these +are existed when the branch is joined to aufs, and their names are +whiteout-ed doubly, so that users will never see their names in aufs +hierarchy. +1. a regular file which will be hardlinked to all whiteouts. +2. a directory to store a pseudo-link. +3. a directory to store an "orphan"-ed file temporary. + +1. Whiteout Base + When you remove a file on a readonly branch, aufs handles it as a + logical deletion and creates a whiteout on the upper writable branch + as a hardlink of this file in order not to consume inode on the + writable branch. +2. Pseudo-link Dir + See below, Pseudo-link. +3. Step-Parent Dir + When "fileC" exists on the lower readonly branch only and it is + opened and removed with its parent dir, and then user writes + something into it, then aufs copies-up fileC to this + directory. Because there is no other dir to store fileC. After + creating a file under this dir, the file is unlinked. + +Because aufs supports manipulating branches, ie. add/delete/change +dynamically, a branch has its own id. When the branch order changes, +aufs finds the new index by searching the branch id. + + +Pseudo-link +---------------------------------------------------------------------- +Assume "fileA" exists on the lower readonly branch only and it is +hardlinked to "fileB" on the branch. When you write something to fileA, +aufs copies-up it to the upper writable branch. Additionally aufs +creates a hardlink under the Pseudo-link Directory of the writable +branch. The inode of a pseudo-link is kept in aufs super_block as a +simple list. If fileB is read after unlinking fileA, aufs returns +filedata from the pseudo-link instead of the lower readonly +branch. Because the pseudo-link is based upon the inode, to keep the +inode number by xino (see above) is essentially necessary. + +All the hardlinks under the Pseudo-link Directory of the writable branch +should be restored in a proper location later. Aufs provides a utility +to do this. The userspace helpers executed at remounting and unmounting +aufs by default. +During this utility is running, it puts aufs into the pseudo-link +maintenance mode. In this mode, only the process which began the +maintenance mode (and its child processes) is allowed to operate in +aufs. Some other processes which are not related to the pseudo-link will +be allowed to run too, but the rest have to return an error or wait +until the maintenance mode ends. If a process already acquires an inode +mutex (in VFS), it has to return an error. + + +XIB(external inode number bitmap) +---------------------------------------------------------------------- +Addition to the xino file per a branch, aufs has an external inode number +bitmap in a superblock object. It is also an internal file such like a +xino file. +It is a simple bitmap to mark whether the aufs inode number is in-use or +not. +To reduce the file I/O, aufs prepares a single memory page to cache xib. + +As well as XINO files, aufs has a feature to truncate/refresh XIB to +reduce the number of consumed disk blocks for these files. + + +Virtual or Vertical Dir, and Readdir in Userspace +---------------------------------------------------------------------- +In order to support multiple layers (branches), aufs readdir operation +constructs a virtual dir block on memory. For readdir, aufs calls +vfs_readdir() internally for each dir on branches, merges their entries +with eliminating the whiteout-ed ones, and sets it to file (dir) +object. So the file object has its entry list until it is closed. The +entry list will be updated when the file position is zero and becomes +obsoleted. This decision is made in aufs automatically. + +The dynamically allocated memory block for the name of entries has a +unit of 512 bytes (by default) and stores the names contiguously (no +padding). Another block for each entry is handled by kmem_cache too. +During building dir blocks, aufs creates hash list and judging whether +the entry is whiteouted by its upper branch or already listed. +The merged result is cached in the corresponding inode object and +maintained by a customizable life-time option. + +Some people may call it can be a security hole or invite DoS attack +since the opened and once readdir-ed dir (file object) holds its entry +list and becomes a pressure for system memory. But I'd say it is similar +to files under /proc or /sys. The virtual files in them also holds a +memory page (generally) while they are opened. When an idea to reduce +memory for them is introduced, it will be applied to aufs too. +For those who really hate this situation, I've developed readdir(3) +library which operates this merging in userspace. You just need to set +LD_PRELOAD environment variable, and aufs will not consume no memory in +kernel space for readdir(3). + + +Workqueue +---------------------------------------------------------------------- +Aufs sometimes requires privilege access to a branch. For instance, +in copy-up/down operation. When a user process is going to make changes +to a file which exists in the lower readonly branch only, and the mode +of one of ancestor directories may not be writable by a user +process. Here aufs copy-up the file with its ancestors and they may +require privilege to set its owner/group/mode/etc. +This is a typical case of a application character of aufs (see +Introduction). + +Aufs uses workqueue synchronously for this case. It creates its own +workqueue. The workqueue is a kernel thread and has privilege. Aufs +passes the request to call mkdir or write (for example), and wait for +its completion. This approach solves a problem of a signal handler +simply. +If aufs didn't adopt the workqueue and changed the privilege of the +process, then the process may receive the unexpected SIGXFSZ or other +signals. + +Also aufs uses the system global workqueue ("events" kernel thread) too +for asynchronous tasks, such like handling inotify/fsnotify, re-creating a +whiteout base and etc. This is unrelated to a privilege. +Most of aufs operation tries acquiring a rw_semaphore for aufs +superblock at the beginning, at the same time waits for the completion +of all queued asynchronous tasks. + + +Whiteout +---------------------------------------------------------------------- +The whiteout in aufs is very similar to Unionfs's. That is represented +by its filename. UnionMount takes an approach of a file mode, but I am +afraid several utilities (find(1) or something) will have to support it. + +Basically the whiteout represents "logical deletion" which stops aufs to +lookup further, but also it represents "dir is opaque" which also stop +further lookup. + +In aufs, rmdir(2) and rename(2) for dir uses whiteout alternatively. +In order to make several functions in a single systemcall to be +revertible, aufs adopts an approach to rename a directory to a temporary +unique whiteouted name. +For example, in rename(2) dir where the target dir already existed, aufs +renames the target dir to a temporary unique whiteouted name before the +actual rename on a branch, and then handles other actions (make it opaque, +update the attributes, etc). If an error happens in these actions, aufs +simply renames the whiteouted name back and returns an error. If all are +succeeded, aufs registers a function to remove the whiteouted unique +temporary name completely and asynchronously to the system global +workqueue. + + +Copy-up +---------------------------------------------------------------------- +It is a well-known feature or concept. +When user modifies a file on a readonly branch, aufs operate "copy-up" +internally and makes change to the new file on the upper writable branch. +When the trigger systemcall does not update the timestamps of the parent +dir, aufs reverts it after copy-up. + + +Move-down (aufs3.9 and later) +---------------------------------------------------------------------- +"Copy-up" is one of the essential feature in aufs. It copies a file from +the lower readonly branch to the upper writable branch when a user +changes something about the file. +"Move-down" is an opposite action of copy-up. Basically this action is +ran manually instead of automatically and internally. +For desgin and implementation, aufs has to consider these issues. +- whiteout for the file may exist on the lower branch. +- ancestor directories may not exist on the lower branch. +- diropq for the ancestor directories may exist on the upper branch. +- free space on the lower branch will reduce. +- another access to the file may happen during moving-down, including + UDBA (see "Revalidate Dentry and UDBA"). +- the file should not be hard-linked nor pseudo-linked. they should be + handled by auplink utility later. + +Sometimes users want to move-down a file from the upper writable branch +to the lower readonly or writable branch. For instance, +- the free space of the upper writable branch is going to run out. +- create a new intermediate branch between the upper and lower branch. +- etc. + +For this purpose, use "aumvdown" command in aufs-util.git. --- linux-azure-5.8-5.8.0.orig/Documentation/filesystems/aufs/design/03atomic_open.txt +++ linux-azure-5.8-5.8.0/Documentation/filesystems/aufs/design/03atomic_open.txt @@ -0,0 +1,85 @@ + +# Copyright (C) 2015-2020 Junjiro R. Okajima +# +# This program is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 2 of the License, or +# (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program. If not, see . + +Support for a branch who has its ->atomic_open() +---------------------------------------------------------------------- +The filesystems who implement its ->atomic_open() are not majority. For +example NFSv4 does, and aufs should call NFSv4 ->atomic_open, +particularly for open(O_CREAT|O_EXCL, 0400) case. Other than +->atomic_open(), NFSv4 returns an error for this open(2). While I am not +sure whether all filesystems who have ->atomic_open() behave like this, +but NFSv4 surely returns the error. + +In order to support ->atomic_open() for aufs, there are a few +approaches. + +A. Introduce aufs_atomic_open() + - calls one of VFS:do_last(), lookup_open() or atomic_open() for + branch fs. +B. Introduce aufs_atomic_open() calling create, open and chmod. this is + an aufs user Pip Cet's approach + - calls aufs_create(), VFS finish_open() and notify_change(). + - pass fake-mode to finish_open(), and then correct the mode by + notify_change(). +C. Extend aufs_open() to call branch fs's ->atomic_open() + - no aufs_atomic_open(). + - aufs_lookup() registers the TID to an aufs internal object. + - aufs_create() does nothing when the matching TID is registered, but + registers the mode. + - aufs_open() calls branch fs's ->atomic_open() when the matching + TID is registered. +D. Extend aufs_open() to re-try branch fs's ->open() with superuser's + credential + - no aufs_atomic_open(). + - aufs_create() registers the TID to an internal object. this info + represents "this process created this file just now." + - when aufs gets EACCES from branch fs's ->open(), then confirm the + registered TID and re-try open() with superuser's credential. + +Pros and cons for each approach. + +A. + - straightforward but highly depends upon VFS internal. + - the atomic behavaiour is kept. + - some of parameters such as nameidata are hard to reproduce for + branch fs. + - large overhead. +B. + - easy to implement. + - the atomic behavaiour is lost. +C. + - the atomic behavaiour is kept. + - dirty and tricky. + - VFS checks whether the file is created correctly after calling + ->create(), which means this approach doesn't work. +D. + - easy to implement. + - the atomic behavaiour is lost. + - to open a file with superuser's credential and give it to a user + process is a bad idea, since the file object keeps the credential + in it. It may affect LSM or something. This approach doesn't work + either. + +The approach A is ideal, but it hard to implement. So here is a +variation of A, which is to be implemented. + +A-1. Introduce aufs_atomic_open() + - calls branch fs ->atomic_open() if exists. otherwise calls + vfs_create() and finish_open(). + - the demerit is that the several checks after branch fs + ->atomic_open() are lost. in the ordinary case, the checks are + done by VFS:do_last(), lookup_open() and atomic_open(). some can + be implemented in aufs, but not all I am afraid. --- linux-azure-5.8-5.8.0.orig/Documentation/filesystems/aufs/design/03lookup.txt +++ linux-azure-5.8-5.8.0/Documentation/filesystems/aufs/design/03lookup.txt @@ -0,0 +1,113 @@ + +# Copyright (C) 2005-2020 Junjiro R. Okajima +# +# This program is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 2 of the License, or +# (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program. If not, see . + +Lookup in a Branch +---------------------------------------------------------------------- +Since aufs has a character of sub-VFS (see Introduction), it operates +lookup for branches as VFS does. It may be a heavy work. But almost all +lookup operation in aufs is the simplest case, ie. lookup only an entry +directly connected to its parent. Digging down the directory hierarchy +is unnecessary. VFS has a function lookup_one_len() for that use, and +aufs calls it. + +When a branch is a remote filesystem, aufs basically relies upon its +->d_revalidate(), also aufs forces the hardest revalidate tests for +them. +For d_revalidate, aufs implements three levels of revalidate tests. See +"Revalidate Dentry and UDBA" in detail. + + +Test Only the Highest One for the Directory Permission (dirperm1 option) +---------------------------------------------------------------------- +Let's try case study. +- aufs has two branches, upper readwrite and lower readonly. + /au = /rw + /ro +- "dirA" exists under /ro, but /rw. and its mode is 0700. +- user invoked "chmod a+rx /au/dirA" +- the internal copy-up is activated and "/rw/dirA" is created and its + permission bits are set to world readable. +- then "/au/dirA" becomes world readable? + +In this case, /ro/dirA is still 0700 since it exists in readonly branch, +or it may be a natively readonly filesystem. If aufs respects the lower +branch, it should not respond readdir request from other users. But user +allowed it by chmod. Should really aufs rejects showing the entries +under /ro/dirA? + +To be honest, I don't have a good solution for this case. So aufs +implements 'dirperm1' and 'nodirperm1' mount options, and leave it to +users. +When dirperm1 is specified, aufs checks only the highest one for the +directory permission, and shows the entries. Otherwise, as usual, checks +every dir existing on all branches and rejects the request. + +As a side effect, dirperm1 option improves the performance of aufs +because the number of permission check is reduced when the number of +branch is many. + + +Revalidate Dentry and UDBA (User's Direct Branch Access) +---------------------------------------------------------------------- +Generally VFS helpers re-validate a dentry as a part of lookup. +0. digging down the directory hierarchy. +1. lock the parent dir by its i_mutex. +2. lookup the final (child) entry. +3. revalidate it. +4. call the actual operation (create, unlink, etc.) +5. unlock the parent dir + +If the filesystem implements its ->d_revalidate() (step 3), then it is +called. Actually aufs implements it and checks the dentry on a branch is +still valid. +But it is not enough. Because aufs has to release the lock for the +parent dir on a branch at the end of ->lookup() (step 2) and +->d_revalidate() (step 3) while the i_mutex of the aufs dir is still +held by VFS. +If the file on a branch is changed directly, eg. bypassing aufs, after +aufs released the lock, then the subsequent operation may cause +something unpleasant result. + +This situation is a result of VFS architecture, ->lookup() and +->d_revalidate() is separated. But I never say it is wrong. It is a good +design from VFS's point of view. It is just not suitable for sub-VFS +character in aufs. + +Aufs supports such case by three level of revalidation which is +selectable by user. +1. Simple Revalidate + Addition to the native flow in VFS's, confirm the child-parent + relationship on the branch just after locking the parent dir on the + branch in the "actual operation" (step 4). When this validation + fails, aufs returns EBUSY. ->d_revalidate() (step 3) in aufs still + checks the validation of the dentry on branches. +2. Monitor Changes Internally by Inotify/Fsnotify + Addition to above, in the "actual operation" (step 4) aufs re-lookup + the dentry on the branch, and returns EBUSY if it finds different + dentry. + Additionally, aufs sets the inotify/fsnotify watch for every dir on branches + during it is in cache. When the event is notified, aufs registers a + function to kernel 'events' thread by schedule_work(). And the + function sets some special status to the cached aufs dentry and inode + private data. If they are not cached, then aufs has nothing to + do. When the same file is accessed through aufs (step 0-3) later, + aufs will detect the status and refresh all necessary data. + In this mode, aufs has to ignore the event which is fired by aufs + itself. +3. No Extra Validation + This is the simplest test and doesn't add any additional revalidation + test, and skip the revalidation in step 4. It is useful and improves + aufs performance when system surely hide the aufs branches from user, + by over-mounting something (or another method). --- linux-azure-5.8-5.8.0.orig/Documentation/filesystems/aufs/design/04branch.txt +++ linux-azure-5.8-5.8.0/Documentation/filesystems/aufs/design/04branch.txt @@ -0,0 +1,74 @@ + +# Copyright (C) 2005-2020 Junjiro R. Okajima +# +# This program is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 2 of the License, or +# (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program. If not, see . + +Branch Manipulation + +Since aufs supports dynamic branch manipulation, ie. add/remove a branch +and changing its permission/attribute, there are a lot of works to do. + + +Add a Branch +---------------------------------------------------------------------- +o Confirm the adding dir exists outside of aufs, including loopback + mount, and its various attributes. +o Initialize the xino file and whiteout bases if necessary. + See struct.txt. + +o Check the owner/group/mode of the directory + When the owner/group/mode of the adding directory differs from the + existing branch, aufs issues a warning because it may impose a + security risk. + For example, when a upper writable branch has a world writable empty + top directory, a malicious user can create any files on the writable + branch directly, like copy-up and modify manually. If something like + /etc/{passwd,shadow} exists on the lower readonly branch but the upper + writable branch, and the writable branch is world-writable, then a + malicious guy may create /etc/passwd on the writable branch directly + and the infected file will be valid in aufs. + I am afraid it can be a security issue, but aufs can do nothing except + producing a warning. + + +Delete a Branch +---------------------------------------------------------------------- +o Confirm the deleting branch is not busy + To be general, there is one merit to adopt "remount" interface to + manipulate branches. It is to discard caches. At deleting a branch, + aufs checks the still cached (and connected) dentries and inodes. If + there are any, then they are all in-use. An inode without its + corresponding dentry can be alive alone (for example, inotify/fsnotify case). + + For the cached one, aufs checks whether the same named entry exists on + other branches. + If the cached one is a directory, because aufs provides a merged view + to users, as long as one dir is left on any branch aufs can show the + dir to users. In this case, the branch can be removed from aufs. + Otherwise aufs rejects deleting the branch. + + If any file on the deleting branch is opened by aufs, then aufs + rejects deleting. + + +Modify the Permission of a Branch +---------------------------------------------------------------------- +o Re-initialize or remove the xino file and whiteout bases if necessary. + See struct.txt. + +o rw --> ro: Confirm the modifying branch is not busy + Aufs rejects the request if any of these conditions are true. + - a file on the branch is mmap-ed. + - a regular file on the branch is opened for write and there is no + same named entry on the upper branch. --- linux-azure-5.8-5.8.0.orig/Documentation/filesystems/aufs/design/05wbr_policy.txt +++ linux-azure-5.8-5.8.0/Documentation/filesystems/aufs/design/05wbr_policy.txt @@ -0,0 +1,64 @@ + +# Copyright (C) 2005-2020 Junjiro R. Okajima +# +# This program is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 2 of the License, or +# (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program. If not, see . + +Policies to Select One among Multiple Writable Branches +---------------------------------------------------------------------- +When the number of writable branch is more than one, aufs has to decide +the target branch for file creation or copy-up. By default, the highest +writable branch which has the parent (or ancestor) dir of the target +file is chosen (top-down-parent policy). +By user's request, aufs implements some other policies to select the +writable branch, for file creation several policies, round-robin, +most-free-space, and other policies. For copy-up, top-down-parent, +bottom-up-parent, bottom-up and others. + +As expected, the round-robin policy selects the branch in circular. When +you have two writable branches and creates 10 new files, 5 files will be +created for each branch. mkdir(2) systemcall is an exception. When you +create 10 new directories, all will be created on the same branch. +And the most-free-space policy selects the one which has most free +space among the writable branches. The amount of free space will be +checked by aufs internally, and users can specify its time interval. + +The policies for copy-up is more simple, +top-down-parent is equivalent to the same named on in create policy, +bottom-up-parent selects the writable branch where the parent dir +exists and the nearest upper one from the copyup-source, +bottom-up selects the nearest upper writable branch from the +copyup-source, regardless the existence of the parent dir. + +There are some rules or exceptions to apply these policies. +- If there is a readonly branch above the policy-selected branch and + the parent dir is marked as opaque (a variation of whiteout), or the + target (creating) file is whiteout-ed on the upper readonly branch, + then the result of the policy is ignored and the target file will be + created on the nearest upper writable branch than the readonly branch. +- If there is a writable branch above the policy-selected branch and + the parent dir is marked as opaque or the target file is whiteouted + on the branch, then the result of the policy is ignored and the target + file will be created on the highest one among the upper writable + branches who has diropq or whiteout. In case of whiteout, aufs removes + it as usual. +- link(2) and rename(2) systemcalls are exceptions in every policy. + They try selecting the branch where the source exists as possible + since copyup a large file will take long time. If it can't be, + ie. the branch where the source exists is readonly, then they will + follow the copyup policy. +- There is an exception for rename(2) when the target exists. + If the rename target exists, aufs compares the index of the branches + where the source and the target exists and selects the higher + one. If the selected branch is readonly, then aufs follows the + copyup policy. --- linux-azure-5.8-5.8.0.orig/Documentation/filesystems/aufs/design/06dirren.dot +++ linux-azure-5.8-5.8.0/Documentation/filesystems/aufs/design/06dirren.dot @@ -0,0 +1,31 @@ + +// to view this graph, run dot(1) command in GRAPHVIZ. + +digraph G { +node [shape=box]; +whinfo [label="detailed info file\n(lower_brid_root-hinum, h_inum, namelen, old name)"]; + +node [shape=oval]; + +aufs_rename -> whinfo [label="store/remove"]; + +node [shape=oval]; +inode_list [label="h_inum list in branch\ncache"]; + +node [shape=box]; +whinode [label="h_inum list file"]; + +node [shape=oval]; +brmgmt [label="br_add/del/mod/umount"]; + +brmgmt -> inode_list [label="create/remove"]; +brmgmt -> whinode [label="load/store"]; + +inode_list -> whinode [style=dashed,dir=both]; + +aufs_rename -> inode_list [label="add/del"]; + +aufs_lookup -> inode_list [label="search"]; + +aufs_lookup -> whinfo [label="load/remove"]; +} --- linux-azure-5.8-5.8.0.orig/Documentation/filesystems/aufs/design/06dirren.txt +++ linux-azure-5.8-5.8.0/Documentation/filesystems/aufs/design/06dirren.txt @@ -0,0 +1,102 @@ + +# Copyright (C) 2017-2020 Junjiro R. Okajima +# +# This program is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 2 of the License, or +# (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program. If not, see . + +Special handling for renaming a directory (DIRREN) +---------------------------------------------------------------------- +First, let's assume we have a simple usecase. + +- /u = /rw + /ro +- /rw/dirA exists +- /ro/dirA and /ro/dirA/file exist too +- there is no dirB on both branches +- a user issues rename("dirA", "dirB") + +Now, what should aufs behave against this rename(2)? +There are a few possible cases. + +A. returns EROFS. + since dirA exists on a readonly branch which cannot be renamed. +B. returns EXDEV. + it is possible to copy-up dirA (only the dir itself), but the child + entries ("file" in this case) should not be. it must be a bad + approach to copy-up recursively. +C. returns a success. + even the branch /ro is readonly, aufs tries renaming it. Obviously it + is a violation of aufs' policy. +D. construct an extra information which indicates that /ro/dirA should + be handled as the name of dirB. + overlayfs has a similar feature called REDIRECT. + +Until now, aufs implements the case B only which returns EXDEV, and +expects the userspace application behaves like mv(1) which tries +issueing rename(2) recursively. + +A new aufs feature called DIRREN is introduced which implements the case +D. There are several "extra information" added. + +1. detailed info per renamed directory + path: /rw/dirB/$AUFS_WH_DR_INFO_PFX. +2. the inode-number list of directories on a branch + path: /rw/dirB/$AUFS_WH_DR_BRHINO + +The filename of "detailed info per directory" represents the lower +branch, and its format is +- a type of the branch id + one of these. + + uuid (not implemented yet) + + fsid + + dev +- the inode-number of the branch root dir + +And it contains these info in a single regular file. +- magic number +- branch's inode-number of the logically renamed dir +- the name of the before-renamed dir + +The "detailed info per directory" file is created in aufs rename(2), and +loaded in any lookup. +The info is considered in lookup for the matching case only. Here +"matching" means that the root of branch (in the info filename) is same +to the current looking-up branch. After looking-up the before-renamed +name, the inode-number is compared. And the matched dentry is used. + +The "inode-number list of directories" is a regular file which contains +simply the inode-numbers on the branch. The file is created or updated +in removing the branch, and loaded in adding the branch. Its lifetime is +equal to the branch. +The list is refered in lookup, and when the current target inode is +found in the list, the aufs tries loading the "detailed info per +directory" and get the changed and valid name of the dir. + +Theoretically these "extra informaiton" may be able to be put into XATTR +in the dir inode. But aufs doesn't choose this way because +1. XATTR may not be supported by the branch (or its configuration) +2. XATTR may have its size limit. +3. XATTR may be less easy to convert than a regular file, when the + format of the info is changed in the future. +At the same time, I agree that the regular file approach is much slower +than XATTR approach. So, in the future, aufs may take the XATTR or other +better approach. + +This DIRREN feature is enabled by aufs configuration, and is activated +by a new mount option. + +For the more complicated case, there is a work with UDBA option, which +is to dected the direct access to the branches (by-passing aufs) and to +maintain the cashes in aufs. Since a single cached aufs dentry may +contains two names, before- and after-rename, the name comparision in +UDBA handler may not work correctly. In this case, the behaviour will be +equivalen to udba=reval case. --- linux-azure-5.8-5.8.0.orig/Documentation/filesystems/aufs/design/06fhsm.txt +++ linux-azure-5.8-5.8.0/Documentation/filesystems/aufs/design/06fhsm.txt @@ -0,0 +1,120 @@ + +# Copyright (C) 2011-2020 Junjiro R. Okajima +# +# This program is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 2 of the License, or +# (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program; if not, write to the Free Software +# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA + + +File-based Hierarchical Storage Management (FHSM) +---------------------------------------------------------------------- +Hierarchical Storage Management (or HSM) is a well-known feature in the +storage world. Aufs provides this feature as file-based with multiple +writable branches, based upon the principle of "Colder, the Lower". +Here the word "colder" means that the less used files, and "lower" means +that the position in the order of the stacked branches vertically. +These multiple writable branches are prioritized, ie. the topmost one +should be the fastest drive and be used heavily. + +o Characters in aufs FHSM story +- aufs itself and a new branch attribute. +- a new ioctl interface to move-down and to establish a connection with + the daemon ("move-down" is a converse of "copy-up"). +- userspace tool and daemon. + +The userspace daemon establishes a connection with aufs and waits for +the notification. The notified information is very similar to struct +statfs containing the number of consumed blocks and inodes. +When the consumed blocks/inodes of a branch exceeds the user-specified +upper watermark, the daemon activates its move-down process until the +consumed blocks/inodes reaches the user-specified lower watermark. + +The actual move-down is done by aufs based upon the request from +user-space since we need to maintain the inode number and the internal +pointer arrays in aufs. + +Currently aufs FHSM handles the regular files only. Additionally they +must not be hard-linked nor pseudo-linked. + + +o Cowork of aufs and the user-space daemon + During the userspace daemon established the connection, aufs sends a + small notification to it whenever aufs writes something into the + writable branch. But it may cost high since aufs issues statfs(2) + internally. So user can specify a new option to cache the + info. Actually the notification is controlled by these factors. + + the specified cache time. + + classified as "force" by aufs internally. + Until the specified time expires, aufs doesn't send the info + except the forced cases. When aufs decide forcing, the info is always + notified to userspace. + For example, the number of free inodes is generally large enough and + the shortage of it happens rarely. So aufs doesn't force the + notification when creating a new file, directory and others. This is + the typical case which aufs doesn't force. + When aufs writes the actual filedata and the files consumes any of new + blocks, the aufs forces notifying. + + +o Interfaces in aufs +- New branch attribute. + + fhsm + Specifies that the branch is managed by FHSM feature. In other word, + participant in the FHSM. + When nofhsm is set to the branch, it will not be the source/target + branch of the move-down operation. This attribute is set + independently from coo and moo attributes, and if you want full + FHSM, you should specify them as well. +- New mount option. + + fhsm_sec + Specifies a second to suppress many less important info to be + notified. +- New ioctl. + + AUFS_CTL_FHSM_FD + create a new file descriptor which userspace can read the notification + (a subset of struct statfs) from aufs. +- Module parameter 'brs' + It has to be set to 1. Otherwise the new mount option 'fhsm' will not + be set. +- mount helpers /sbin/mount.aufs and /sbin/umount.aufs + When there are two or more branches with fhsm attributes, + /sbin/mount.aufs invokes the user-space daemon and /sbin/umount.aufs + terminates it. As a result of remounting and branch-manipulation, the + number of branches with fhsm attribute can be one. In this case, + /sbin/mount.aufs will terminate the user-space daemon. + + +Finally the operation is done as these steps in kernel-space. +- make sure that, + + no one else is using the file. + + the file is not hard-linked. + + the file is not pseudo-linked. + + the file is a regular file. + + the parent dir is not opaqued. +- find the target writable branch. +- make sure the file is not whiteout-ed by the upper (than the target) + branch. +- make the parent dir on the target branch. +- mutex lock the inode on the branch. +- unlink the whiteout on the target branch (if exists). +- lookup and create the whiteout-ed temporary name on the target branch. +- copy the file as the whiteout-ed temporary name on the target branch. +- rename the whiteout-ed temporary name to the original name. +- unlink the file on the source branch. +- maintain the internal pointer array and the external inode number + table (XINO). +- maintain the timestamps and other attributes of the parent dir and the + file. + +And of course, in every step, an error may happen. So the operation +should restore the original file state after an error happens. --- linux-azure-5.8-5.8.0.orig/Documentation/filesystems/aufs/design/06mmap.txt +++ linux-azure-5.8-5.8.0/Documentation/filesystems/aufs/design/06mmap.txt @@ -0,0 +1,72 @@ + +# Copyright (C) 2005-2020 Junjiro R. Okajima +# +# This program is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 2 of the License, or +# (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program. If not, see . + +mmap(2) -- File Memory Mapping +---------------------------------------------------------------------- +In aufs, the file-mapped pages are handled by a branch fs directly, no +interaction with aufs. It means aufs_mmap() calls the branch fs's +->mmap(). +This approach is simple and good, but there is one problem. +Under /proc, several entries show the mmapped files by its path (with +device and inode number), and the printed path will be the path on the +branch fs's instead of virtual aufs's. +This is not a problem in most cases, but some utilities lsof(1) (and its +user) may expect the path on aufs. + +To address this issue, aufs adds a new member called vm_prfile in struct +vm_area_struct (and struct vm_region). The original vm_file points to +the file on the branch fs in order to handle everything correctly as +usual. The new vm_prfile points to a virtual file in aufs, and the +show-functions in procfs refers to vm_prfile if it is set. +Also we need to maintain several other places where touching vm_file +such like +- fork()/clone() copies vma and the reference count of vm_file is + incremented. +- merging vma maintains the ref count too. + +This is not a good approach. It just fakes the printed path. But it +leaves all behaviour around f_mapping unchanged. This is surely an +advantage. +Actually aufs had adopted another complicated approach which calls +generic_file_mmap() and handles struct vm_operations_struct. In this +approach, aufs met a hard problem and I could not solve it without +switching the approach. + +There may be one more another approach which is +- bind-mount the branch-root onto the aufs-root internally +- grab the new vfsmount (ie. struct mount) +- lazy-umount the branch-root internally +- in open(2) the aufs-file, open the branch-file with the hidden + vfsmount (instead of the original branch's vfsmount) +- ideally this "bind-mount and lazy-umount" should be done atomically, + but it may be possible from userspace by the mount helper. + +Adding the internal hidden vfsmount and using it in opening a file, the +file path under /proc will be printed correctly. This approach looks +smarter, but is not possible I am afraid. +- aufs-root may be bind-mount later. when it happens, another hidden + vfsmount will be required. +- it is hard to get the chance to bind-mount and lazy-umount + + in kernel-space, FS can have vfsmount in open(2) via + file->f_path, and aufs can know its vfsmount. But several locks are + already acquired, and if aufs tries to bind-mount and lazy-umount + here, then it may cause a deadlock. + + in user-space, bind-mount doesn't invoke the mount helper. +- since /proc shows dev and ino, aufs has to give vma these info. it + means a new member vm_prinode will be necessary. this is essentially + equivalent to vm_prfile described above. + +I have to give up this "looks-smater" approach. --- linux-azure-5.8-5.8.0.orig/Documentation/filesystems/aufs/design/06xattr.txt +++ linux-azure-5.8-5.8.0/Documentation/filesystems/aufs/design/06xattr.txt @@ -0,0 +1,96 @@ + +# Copyright (C) 2014-2020 Junjiro R. Okajima +# +# This program is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 2 of the License, or +# (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program; if not, write to the Free Software +# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA + + +Listing XATTR/EA and getting the value +---------------------------------------------------------------------- +For the inode standard attributes (owner, group, timestamps, etc.), aufs +shows the values from the topmost existing file. This behaviour is good +for the non-dir entries since the bahaviour exactly matches the shown +information. But for the directories, aufs considers all the same named +entries on the lower branches. Which means, if one of the lower entry +rejects readdir call, then aufs returns an error even if the topmost +entry allows it. This behaviour is necessary to respect the branch fs's +security, but can make users confused since the user-visible standard +attributes don't match the behaviour. +To address this issue, aufs has a mount option called dirperm1 which +checks the permission for the topmost entry only, and ignores the lower +entry's permission. + +A similar issue can happen around XATTR. +getxattr(2) and listxattr(2) families behave as if dirperm1 option is +always set. Otherwise these very unpleasant situation would happen. +- listxattr(2) may return the duplicated entries. +- users may not be able to remove or reset the XATTR forever, + + +XATTR/EA support in the internal (copy,move)-(up,down) +---------------------------------------------------------------------- +Generally the extended attributes of inode are categorized as these. +- "security" for LSM and capability. +- "system" for posix ACL, 'acl' mount option is required for the branch + fs generally. +- "trusted" for userspace, CAP_SYS_ADMIN is required. +- "user" for userspace, 'user_xattr' mount option is required for the + branch fs generally. + +Moreover there are some other categories. Aufs handles these rather +unpopular categories as the ordinary ones, ie. there is no special +condition nor exception. + +In copy-up, the support for XATTR on the dst branch may differ from the +src branch. In this case, the copy-up operation will get an error and +the original user operation which triggered the copy-up will fail. It +can happen that even all copy-up will fail. +When both of src and dst branches support XATTR and if an error occurs +during copying XATTR, then the copy-up should fail obviously. That is a +good reason and aufs should return an error to userspace. But when only +the src branch support that XATTR, aufs should not return an error. +For example, the src branch supports ACL but the dst branch doesn't +because the dst branch may natively un-support it or temporary +un-support it due to "noacl" mount option. Of course, the dst branch fs +may NOT return an error even if the XATTR is not supported. It is +totally up to the branch fs. + +Anyway when the aufs internal copy-up gets an error from the dst branch +fs, then aufs tries removing the just copied entry and returns the error +to the userspace. The worst case of this situation will be all copy-up +will fail. + +For the copy-up operation, there two basic approaches. +- copy the specified XATTR only (by category above), and return the + error unconditionally if it happens. +- copy all XATTR, and ignore the error on the specified category only. + +In order to support XATTR and to implement the correct behaviour, aufs +chooses the latter approach and introduces some new branch attributes, +"icexsec", "icexsys", "icextr", "icexusr", and "icexoth". +They correspond to the XATTR namespaces (see above). Additionally, to be +convenient, "icex" is also provided which means all "icex*" attributes +are set (here the word "icex" stands for "ignore copy-error on XATTR"). + +The meaning of these attributes is to ignore the error from setting +XATTR on that branch. +Note that aufs tries copying all XATTR unconditionally, and ignores the +error from the dst branch according to the specified attributes. + +Some XATTR may have its default value. The default value may come from +the parent dir or the environment. If the default value is set at the +file creating-time, it will be overwritten by copy-up. +Some contradiction may happen I am afraid. +Do we need another attribute to stop copying XATTR? I am unsure. For +now, aufs implements the branch attributes to ignore the error. --- linux-azure-5.8-5.8.0.orig/Documentation/filesystems/aufs/design/07export.txt +++ linux-azure-5.8-5.8.0/Documentation/filesystems/aufs/design/07export.txt @@ -0,0 +1,58 @@ + +# Copyright (C) 2005-2020 Junjiro R. Okajima +# +# This program is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 2 of the License, or +# (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program. If not, see . + +Export Aufs via NFS +---------------------------------------------------------------------- +Here is an approach. +- like xino/xib, add a new file 'xigen' which stores aufs inode + generation. +- iget_locked(): initialize aufs inode generation for a new inode, and + store it in xigen file. +- destroy_inode(): increment aufs inode generation and store it in xigen + file. it is necessary even if it is not unlinked, because any data of + inode may be changed by UDBA. +- encode_fh(): for a root dir, simply return FILEID_ROOT. otherwise + build file handle by + + branch id (4 bytes) + + superblock generation (4 bytes) + + inode number (4 or 8 bytes) + + parent dir inode number (4 or 8 bytes) + + inode generation (4 bytes)) + + return value of exportfs_encode_fh() for the parent on a branch (4 + bytes) + + file handle for a branch (by exportfs_encode_fh()) +- fh_to_dentry(): + + find the index of a branch from its id in handle, and check it is + still exist in aufs. + + 1st level: get the inode number from handle and search it in cache. + + 2nd level: if not found in cache, get the parent inode number from + the handle and search it in cache. and then open the found parent + dir, find the matching inode number by vfs_readdir() and get its + name, and call lookup_one_len() for the target dentry. + + 3rd level: if the parent dir is not cached, call + exportfs_decode_fh() for a branch and get the parent on a branch, + build a pathname of it, convert it a pathname in aufs, call + path_lookup(). now aufs gets a parent dir dentry, then handle it as + the 2nd level. + + to open the dir, aufs needs struct vfsmount. aufs keeps vfsmount + for every branch, but not itself. to get this, (currently) aufs + searches in current->nsproxy->mnt_ns list. it may not be a good + idea, but I didn't get other approach. + + test the generation of the gotten inode. +- every inode operation: they may get EBUSY due to UDBA. in this case, + convert it into ESTALE for NFSD. +- readdir(): call lockdep_on/off() because filldir in NFSD calls + lookup_one_len(), vfs_getattr(), encode_fh() and others. --- linux-azure-5.8-5.8.0.orig/Documentation/filesystems/aufs/design/08shwh.txt +++ linux-azure-5.8-5.8.0/Documentation/filesystems/aufs/design/08shwh.txt @@ -0,0 +1,52 @@ + +# Copyright (C) 2005-2020 Junjiro R. Okajima +# +# This program is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 2 of the License, or +# (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program. If not, see . + +Show Whiteout Mode (shwh) +---------------------------------------------------------------------- +Generally aufs hides the name of whiteouts. But in some cases, to show +them is very useful for users. For instance, creating a new middle layer +(branch) by merging existing layers. + +(borrowing aufs1 HOW-TO from a user, Michael Towers) +When you have three branches, +- Bottom: 'system', squashfs (underlying base system), read-only +- Middle: 'mods', squashfs, read-only +- Top: 'overlay', ram (tmpfs), read-write + +The top layer is loaded at boot time and saved at shutdown, to preserve +the changes made to the system during the session. +When larger changes have been made, or smaller changes have accumulated, +the size of the saved top layer data grows. At this point, it would be +nice to be able to merge the two overlay branches ('mods' and 'overlay') +and rewrite the 'mods' squashfs, clearing the top layer and thus +restoring save and load speed. + +This merging is simplified by the use of another aufs mount, of just the +two overlay branches using the 'shwh' option. +# mount -t aufs -o ro,shwh,br:/livesys/overlay=ro+wh:/livesys/mods=rr+wh \ + aufs /livesys/merge_union + +A merged view of these two branches is then available at +/livesys/merge_union, and the new feature is that the whiteouts are +visible! +Note that in 'shwh' mode the aufs mount must be 'ro', which will disable +writing to all branches. Also the default mode for all branches is 'ro'. +It is now possible to save the combined contents of the two overlay +branches to a new squashfs, e.g.: +# mksquashfs /livesys/merge_union /path/to/newmods.squash + +This new squashfs archive can be stored on the boot device and the +initramfs will use it to replace the old one at the next boot. --- linux-azure-5.8-5.8.0.orig/Documentation/filesystems/aufs/design/10dynop.txt +++ linux-azure-5.8-5.8.0/Documentation/filesystems/aufs/design/10dynop.txt @@ -0,0 +1,47 @@ + +# Copyright (C) 2010-2020 Junjiro R. Okajima +# +# This program is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 2 of the License, or +# (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program. If not, see . + +Dynamically customizable FS operations +---------------------------------------------------------------------- +Generally FS operations (struct inode_operations, struct +address_space_operations, struct file_operations, etc.) are defined as +"static const", but it never means that FS have only one set of +operation. Some FS have multiple sets of them. For instance, ext2 has +three sets, one for XIP, for NOBH, and for normal. +Since aufs overrides and redirects these operations, sometimes aufs has +to change its behaviour according to the branch FS type. More importantly +VFS acts differently if a function (member in the struct) is set or +not. It means aufs should have several sets of operations and select one +among them according to the branch FS definition. + +In order to solve this problem and not to affect the behaviour of VFS, +aufs defines these operations dynamically. For instance, aufs defines +dummy direct_IO function for struct address_space_operations, but it may +not be set to the address_space_operations actually. When the branch FS +doesn't have it, aufs doesn't set it to its address_space_operations +while the function definition itself is still alive. So the behaviour +itself will not change, and it will return an error when direct_IO is +not set. + +The lifetime of these dynamically generated operation object is +maintained by aufs branch object. When the branch is removed from aufs, +the reference counter of the object is decremented. When it reaches +zero, the dynamically generated operation object will be freed. + +This approach is designed to support AIO (io_submit), Direct I/O and +XIP (DAX) mainly. +Currently this approach is applied to address_space_operations for +regular files only. --- linux-azure-5.8-5.8.0.orig/Documentation/filesystems/seq_file.rst +++ linux-azure-5.8-5.8.0/Documentation/filesystems/seq_file.rst @@ -199,6 +199,12 @@ is a reasonable thing to do. The seq_file code will also avoid taking any other locks while the iterator is active. +The iterater value returned by start() or next() is guaranteed to be +passed to a subsequent next() or stop() call. This allows resources +such as locks that were taken to be reliably released. There is *no* +guarantee that the iterator will be passed to show(), though in practice +it often will be. + Formatted output ================ --- linux-azure-5.8-5.8.0.orig/Documentation/filesystems/sysfs.rst +++ linux-azure-5.8-5.8.0/Documentation/filesystems/sysfs.rst @@ -242,12 +242,10 @@ is 4096. - show() methods should return the number of bytes printed into the - buffer. This is the return value of scnprintf(). + buffer. -- show() must not use snprintf() when formatting the value to be - returned to user space. If you can guarantee that an overflow - will never happen you can use sprintf() otherwise you must use - scnprintf(). +- show() should only use sysfs_emit() or sysfs_emit_at() when formatting + the value to be returned to user space. - store() should return the number of bytes used from the buffer. If the entire buffer has been used, just return the count argument. --- linux-azure-5.8-5.8.0.orig/Documentation/gpu/todo.rst +++ linux-azure-5.8-5.8.0/Documentation/gpu/todo.rst @@ -273,6 +273,24 @@ Level: Advanced +Garbage collect fbdev scrolling acceleration +-------------------------------------------- + +Scroll acceleration is disabled in fbcon by hard-wiring p->scrollmode = +SCROLL_REDRAW. There's a ton of code this will allow us to remove: +- lots of code in fbcon.c +- a bunch of the hooks in fbcon_ops, maybe the remaining hooks could be called + directly instead of the function table (with a switch on p->rotate) +- fb_copyarea is unused after this, and can be deleted from all drivers + +Note that not all acceleration code can be deleted, since clearing and cursor +support is still accelerated, which might be good candidates for further +deletion projects. + +Contact: Daniel Vetter + +Level: Intermediate + idr_init_base() --------------- --- linux-azure-5.8-5.8.0.orig/Documentation/kmsg/IPVS +++ linux-azure-5.8-5.8.0/Documentation/kmsg/IPVS @@ -0,0 +1,81 @@ +/*? Text: "%s(): NULL arg\n" */ +/*? Text: "%s(): NULL scheduler_name\n" */ +/*? Text: "%s(): [%s] pe already existed in the system\n" */ +/*? Text: "%s(): [%s] pe already linked\n" */ +/*? Text: "%s(): [%s] pe is not in the list. failed\n" */ +/*? Text: "%s(): [%s] scheduler already existed in the system\n" */ +/*? Text: "%s(): [%s] scheduler already linked\n" */ +/*? Text: "%s(): [%s] scheduler is not in the list. failed\n" */ +/*? Text: "%s(): done error\n" */ +/*? Text: "%s(): init error\n" */ +/*? Text: "%s(): lower threshold is higher than upper threshold\n" */ +/*? Text: "%s(): no memory\n" */ +/*? Text: "%s(): request for already hashed, called from %pF\n" */ +/*? Text: "%s(): request for unhash flagged, called from %pF\n" */ +/*? Text: "%s(): server weight less than zero\n" */ +/*? Text: "%s: %s %pI4:%d - %s\n" */ +/*? Text: "%s: %s [%pI6]:%d - %s\n" */ +/*? Text: "%s: %s [%pI6c]:%d - %s\n" */ +/*? Text: "%s: FWM %u 0x%08X - %s\n" */ +/*? Text: "%s: enter\n" */ +/*? Text: "%s: loaded support on port[%d] = %d\n" */ +/*? Text: "BACKUP v0, Dropping buffer bogus conn options\n" */ +/*? Text: "BACKUP v0, bogus conn\n" */ +/*? Text: "BACKUP, Dropping buffer, Err: %d in decoding\n" */ +/*? Text: "BACKUP, Dropping buffer, Unknown version %d\n" */ +/*? Text: "BACKUP, Dropping buffer, msg > buffer\n" */ +/*? Text: "BACKUP, Dropping buffer, to small\n" */ +/*? Text: "BACKUP, Invalid PE parameters\n" */ +/*? Text: "BUG control DEL with n=0 : %s:%d to %s:%d\n" */ +/*? Text: "Connection hash table configured (size=%d, memory=%ldKbytes)\n" */ +/*? Text: "Error binding address of the mcast interface\n" */ +/*? Text: "Error binding to the multicast addr\n" */ +/*? Text: "Error connecting to the multicast addr\n" */ +/*? Text: "Error during creation of socket; terminating\n" */ +/*? Text: "Error joining to the multicast group\n" */ +/*? Text: "Error setting outbound mcast interface\n" */ +/*? Text: "Failed to stop Backup Daemon\n" */ +/*? Text: "Failed to stop Master Daemon\n" */ +/*? Text: "Registered protocols (%s)\n" */ +/*? Text: "SYNC, connection pe_data invalid\n" */ +/*? Text: "Schedule: port zero only supported in persistent services, check your ipvs configuration\n" */ +/*? Text: "Scheduler module ip_vs_%s not found\n" */ +/*? Text: "There is no net ptr to find in the skb in %s() line:%d\n" */ +/*? Text: "UDP no ns data\n" */ +/*? Text: "You probably need to specify IP address on multicast interface.\n" */ +/*? Text: "[%s] pe registered.\n" */ +/*? Text: "[%s] pe unregistered.\n" */ +/*? Text: "[%s] scheduler registered.\n" */ +/*? Text: "[%s] scheduler unregistered.\n" */ +/*? Text: "can't register hooks.\n" */ +/*? Text: "can't register netlink/ioctl.\n" */ +/*? Text: "can't setup connection table.\n" */ +/*? Text: "can't setup control.\n" */ +/*? Text: "cannot register Generic Netlink interface.\n" */ +/*? Text: "cannot register sockopt.\n" */ +/*? Text: "get_ctl: len %u < %u\n" */ +/*? Text: "ip_vs_send_async error %d\n" */ +/*? Text: "ip_vs_sync_buff_create failed.\n" */ +/*? Text: "ipvs loaded.\n" */ +/*? Text: "ipvs unloaded.\n" */ +/*? Text: "length: %u != %u\n" */ +/*? Text: "netif_stop_queue() cannot be called before register_netdev()\n" */ +/*? Text: "not enough space in Netlink message\n" */ +/*? Text: "persistence engine module ip_vs_pe_%s not found\n" */ +/*? Text: "receiving message error\n" */ +/*? Text: "request control ADD for already controlled: %s:%d to %s:%d\n" */ +/*? Text: "request control DEL for uncontrolled: %s:%d to %s:%d\n" */ +/*? Text: "set_ctl: invalid protocol: %d %pI4:%d %s\n" */ +/*? Text: "set_ctl: len %u != %u\n" */ +/*? Text: "shouldn't reach here, because the box is on the half connection in the tun/dr module.\n" */ +/*? Text: "stopping backup sync thread %d ...\n" */ +/*? Text: "stopping master sync thread %d ...\n" */ +/*? Text: "sync thread started: state = BACKUP, mcast_ifn = %s, syncid = %d\n" */ +/*? Text: "sync thread started: state = MASTER, mcast_ifn = %s, syncid = %d\n" */ +/*? Text: "unknown Generic Netlink command\n" */ +/*? Text: "sync thread started: state = MASTER, mcast_ifn = %s, syncid = %d, id = %d\n" */ +/*? Text: "sync thread started: state = BACKUP, mcast_ifn = %s, syncid = %d, id = %d\n" */ +/*? Text: "flen=%u proglen=%u pass=%u image=%pK from=%s pid=%d\n" */ +/*? Text: "%s selects TX queue %d, but real number of TX queues is %d\n" */ +/*? Text: "Unknown mcast interface: %s\n" */ +/*? Text: "%s: %d output lines suppressed due to ratelimiting\n" */ --- linux-azure-5.8-5.8.0.orig/Documentation/kmsg/s390/aes_s390 +++ linux-azure-5.8-5.8.0/Documentation/kmsg/s390/aes_s390 @@ -0,0 +1,45 @@ +/*? + * Text: "Allocating XTS fallback algorithm %s failed\n" + * Severity: Error + * Parameter: + * @1: algorithm name + * Description: + * The aes_s390 module failed to allocate a software fallback for the AES + * modes that are not supported by the hardware. A possible reason for this + * problem is that the aes_generic module that provides the fallback + * algorithms is not available. + * User action: + * Ensure that the aes_generic module is available and loaded and reload + * the aes_s390 module. + */ + +/*? + * Text: "Allocating AES fallback algorithm %s failed\n" + * Severity: Error + * Parameter: + * @1: algorithm name + * Description: + * The advanced encryption standard (AES) algorithm includes three modes with + * 128-bit, 192-bit, and 256-bit keys. Your hardware system only provides + * hardware acceleration for the 128-bit mode. The aes_s390 module failed to + * allocate a software fallback for the AES modes that are not supported by the + * hardware. A possible reason for this problem is that the aes_generic module + * that provides the fallback algorithms is not available. + * User action: + * Use the 128-bit mode only or ensure that the aes_generic module is available + * and loaded and reload the aes_s390 module. + */ + +/*? + * Text: "AES hardware acceleration is only available for 128-bit keys\n" + * Severity: Informational + * Description: + * The advanced encryption standard (AES) algorithm includes three modes with + * 128-bit, 192-bit, and 256-bit keys. Your hardware system only provides + * hardware acceleration for the 128-bit key mode. The aes_s390 module + * will use the less performant software fallback algorithm for the 192-bit + * and 256-bit key modes. + * User action: + * None. + */ +/*? Text: "%s: %d output lines suppressed due to ratelimiting\n" */ --- linux-azure-5.8-5.8.0.orig/Documentation/kmsg/s390/af_iucv +++ linux-azure-5.8-5.8.0/Documentation/kmsg/s390/af_iucv @@ -0,0 +1,23 @@ +/*? + * Text: "Application %s on z/VM guest %s exceeds message limit\n" + * Severity: Error + * Parameter: + * @1: application name + * @2: z/VM user ID + * Description: + * Messages or packets destined for the application have accumulated and + * reached the maximum value. The default for the message limit is 65535. + * You can specify a different limit as the value for MSGLIMIT within + * the IUCV statement of the z/VM virtual machine on which the application + * runs. + * User action: + * Ensure that you do not send data faster than the application retrieves + * them. Ensure that the message limit on the z/VM guest virtual machine + * on which the application runs is high enough. + */ + +/*? Text: "Attempt to release alive iucv socket %p\n" */ +/*? Text: "netif_stop_queue() cannot be called before register_netdev()\n" */ +/*? Text: "flen=%u proglen=%u pass=%u image=%pK from=%s pid=%d\n" */ +/*? Text: "%s selects TX queue %d, but real number of TX queues is %d\n" */ +/*? Text: "%s: %d output lines suppressed due to ratelimiting\n" */ --- linux-azure-5.8-5.8.0.orig/Documentation/kmsg/s390/ap +++ linux-azure-5.8-5.8.0/Documentation/kmsg/s390/ap @@ -0,0 +1,49 @@ +/*? + * Text: "%d is not a valid cryptographic domain\n" + * Severity: Warning + * Parameter: + * @1: AP domain index + * Description: + * The cryptographic domain specified for the 'domain=' module or kernel + * parameter must be an integer in the range 0 to 15. + * User action: + * Reload the cryptographic device driver with a correct module parameter. + * If the device driver has been compiled into the kernel, correct the value + * in the kernel parameter line and reboot Linux. + */ + +/*? + * Text: "The hardware system does not support AP instructions\n" + * Severity: Warning + * Description: + * The ap module addresses AP adapters through AP instructions. The hardware + * system on which the Linux instance runs does not support AP instructions. + * The ap module cannot detect any AP adapters. + * User action: + * Load the ap module only if your Linux instance runs on hardware that + * supports AP instructions. If the ap module has been compiled into the kernel, + * ignore this message. + */ + +/*? + * Text: "Registering adapter interrupts for AP device %02x.%04x failed\n" + * Severity: Error + * Parameter: + * @1: AP device ID + * @2: AP queue + * Description: + * The hardware system supports AP adapter interrupts but failed to enable + * an adapter for interrupts. Possible causes for this error are: + * i) The AP adapter firmware does not support AP interrupts. + * ii) An AP adapter firmware update to a firmware level that supports AP + * adapter interrupts failed. + * iii) The AP adapter firmware has been successfully updated to a level that + * supports AP interrupts but the new firmware has not been activated. + * User action: + * Ensure that the firmware on your AP adapters support AP interrupts and that + * any firmware updates have completed successfully. If necessary, deconfigure + * your cryptographic adapters and reconfigure them to ensure that any firmware + * updates become active, then reload the ap module. If the ap module has been + * compiled into the kernel, reboot Linux. + */ +/*? Text: "%s: %d output lines suppressed due to ratelimiting\n" */ --- linux-azure-5.8-5.8.0.orig/Documentation/kmsg/s390/appldata +++ linux-azure-5.8-5.8.0/Documentation/kmsg/s390/appldata @@ -0,0 +1,91 @@ +/*? + * Text: "Starting the data collection for %s failed with rc=%d\n" + * Severity: Error + * Parameter: + * @1: appldata module + * @2: return code + * Description: + * The specified data collection module used the z/VM diagnose call + * DIAG 0xDC to start writing data. z/VM returned an error and the data + * collection could not start. If the return code is 5, your z/VM guest + * virtual machine is not authorized to write data records. + * User action: + * If the return code is 5, ensure that your z/VM guest virtual machine's + * entry in the z/VM directory includes the OPTION APPLMON statement. + * For other return codes see the section about DIAGNOSE Code X'DC' + * in "z/VM CP Programming Services". + */ + +/*? + * Text: "Stopping the data collection for %s failed with rc=%d\n" + * Severity: Error + * Parameter: + * @1: appldata module + * @2: return code + * Description: + * The specified data collection module used the z/VM diagnose call DIAG 0xDC + * to stop writing data. z/VM returned an error and the data collection + * continues. + * User action: + * See the section about DIAGNOSE Code X'DC' in "z/VM CP Programming Services". + */ + +/*? + * Text: "Starting a new OS data collection failed with rc=%d\n" + * Severity: Error + * Parameter: + * @1: return code + * Description: + * After a CPU hotplug event, the record size for the running operating + * system data collection is no longer correct. The appldata_os module tried + * to start a new data collection with the correct record size but received + * an error from the z/VM diagnose call DIAG 0xDC. Any data collected with + * the current record size might be faulty. + * User action: + * Start a new data collection with the cappldata_os module. For information + * about starting data collections see "Device Drivers, Features, and + * Commands". For information about the return codes see the section about + * DIAGNOSE Code X'DC' in "z/VM CP Programming Services". + */ + +/*? + * Text: "Stopping a faulty OS data collection failed with rc=%d\n" + * Severity: Error + * Parameter: + * @1: return code + * Description: + * After a CPU hotplug event, the record size for the running operating + * system data collection is no longer correct. The appldata_os module tried + * to stop the faulty data collection but received an error from the z/VM + * diagnose call DIAG 0xDC. Any data collected with the current record size + * might be faulty. + * User action: + * Try to restart appldata_os monitoring. For information about stopping + * and starting data collections see "Device Drivers, Features, and + * Commands". For information about the return codes see the section about + * DIAGNOSE Code X'DC' in "z/VM CP Programming Services". + */ + +/*? + * Text: "Maximum OS record size %i exceeds the maximum record size %i\n" + * Severity: Error + * Parameter: + * @1: no of bytes + * @2: no of bytes + * Description: + * The OS record size grows with the number of CPUs and is adjusted by the + * appldata_os module in response to CPU hotplug events. For more than 110 + * CPUs the record size would exceed the maximum record size of 4024 bytes + * that is supported by the z/VM hypervisor. To prevent the maximum supported + * record size from being exceeded while data collection is in progress, + * you cannot load the appldata_os module on Linux instances that are + * configured for a maximum of more than 110 CPUs. + * User action: + * If you do not want to collect operating system data, you can ignore this + * message. If you want to collect operating system data, reconfigure your + * Linux instance to support less than 110 CPUs. + */ + +/*? Text: "netif_stop_queue() cannot be called before register_netdev()\n" */ +/*? Text: "%s selects TX queue %d, but real number of TX queues is %d\n" */ +/*? Text: "%s: %d output lines suppressed due to ratelimiting\n" */ --- linux-azure-5.8-5.8.0.orig/Documentation/kmsg/s390/bpf_jit +++ linux-azure-5.8-5.8.0/Documentation/kmsg/s390/bpf_jit @@ -0,0 +1,16 @@ +/*? Text: "flen=%u proglen=%u pass=%u image=%pK from=%s pid=%d\n" */ +/*? Text: "%s selects TX queue %d, but real number of TX queues is %d\n" */ +/*? Text: "netif_stop_queue() cannot be called before register_netdev()\n" */ + +/*? + * Text: "Unknown opcode %02x\n" + * Severity: Error + * Parameter: + * @1: Instruction opcode + * Description: + * The BPF JIT compiler has found an unknown instruction in the BPF program + * and therefore stops the compilation. As a fallback, the interpreter is used. + * User action: + * Report this problem and the error message to your support organization. + */ +/*? Text: "%s: %d output lines suppressed due to ratelimiting\n" */ --- linux-azure-5.8-5.8.0.orig/Documentation/kmsg/s390/cio +++ linux-azure-5.8-5.8.0/Documentation/kmsg/s390/cio @@ -0,0 +1,247 @@ +/*? + * Text: "%s is not a valid device for the cio_ignore kernel parameter\n" + * Severity: Warning + * Parameter: + * @1: device bus-ID + * Description: + * The device specification for the cio_ignore kernel parameter is + * syntactically incorrect or specifies an unknown device. This device is not + * excluded from being sensed and analyzed. + * User action: + * Correct your device specification in the kernel parameter line to have the + * device excluded when you next reboot Linux. You can write the correct + * device specification to /proc/cio_ignore to add the device to the list of + * devices to be excluded. This does not immediately make the device + * inaccessible but the device is ignored if it disappears and later reappears. + */ + +/*? + * Text: "0.%x.%04x to 0.%x.%04x is not a valid range for cio_ignore\n" + * Severity: Warning + * Parameter: + * @1: from subchannel set ID + * @2: from device number + * @3: to subchannel set ID + * @4: to device number + * Description: + * The device range specified for the cio_ignore kernel parameter is + * syntactically incorrect. No devices specified with this range are + * excluded from being sensed and analyzed. + * User action: + * Correct your range specification in the kernel parameter line to have the + * range of devices excluded when you next reboot Linux. You can write the + * correct range specification to /proc/cio_ignore to add the range of devices + * to the list of devices to be excluded. This does not immediately make the + * devices in the range inaccessible but any of these devices are ignored if + * they disappear and later reappear. + */ + +/*? + * Text: "Processing %s for channel path %x.%02x\n" + * Severity: Notice + * Parameter: + * @1: configuration change + * @2: channel subsystem ID + * @3: CHPID + * Description: + * A configuration change is in progress for the given channel path. + * User action: + * None. + */ + +/*? + * Text: "No CCW console was found\n" + * Severity: Warning + * Description: + * Linux did not find the expected CCW console and tries to use an alternative + * console. A possible reason why the console was not found is that the console + * has been specified in the cio_ignore list. + * User action: + * None, if an appropriate alternative console has been found, and you want + * to use this alternative console. If you want to use the CCW console, ensure + * that is not specified in the cio_ignore list, explicitly specify the console + * with the 'condev=' kernel parameter, and reboot Linux. + */ + +/*? + * Text: "Channel measurement facility initialized using format %s (mode %s)\n" + * Severity: Informational + * Parameter: + * @1: format + * @2: mode + * Description: + * The channel measurement facility has been initialized successfully. + * Format 'extended' should be used for z990 and later mainframe systems. + * Format 'basic' is intended for earlier mainframes. Mode 'autodetected' means + * that the format has been set automatically. Mode 'parameter' means that the + * format has been set according to the 'format=' kernel parameter. + * User action: + * None. + */ + +/*? + * Text: "The CSS device driver initialization failed with errno=%d\n" + * Severity: Alert + * Parameter: + * @1: Return code + * Description: + * The channel subsystem bus could not be established. + * User action: + * See the errno man page to find out what caused the problem. + */ + /*? Text: "%s: Got subchannel machine check but no sch_event handler provided.\n" */ + +/*? + * Text: "%s: Setting the device online failed because it is boxed\n" + * Severity: Warning + * Parameter: + * @1: Device bus-ID + * Description: + * Initialization of a device did not complete because it did not respond in + * time or it was reserved by another operating system. + * User action: + * Make sure that the device is working correctly, then try again to set it + * online. For devices that support the reserve/release mechanism (for example + * DASDs), you can try to override the reservation of the other system by + * writing 'force' to the 'online' sysfs attribute of the affected device. + */ + +/*? + * Text: "%s: Setting the device online failed because it is not operational\n" + * Severity: Warning + * Parameter: + * @1: Device bus-ID + * Description: + * Initialization of a device did not complete because it is not present or + * not operational. + * User action: + * Make sure that the device is present and working correctly, then try again + * to set it online. + */ + +/*? + * Text: "%s: The device stopped operating while being set offline\n" + * Severity: Warning + * Parameter: + * @1: Device bus-ID + * Description: + * While the device was set offline, it was not present or not operational. + * The device is now inactive, but setting it online again might fail. + * User action: + * None. + */ + +/*? + * Text: "%s: The device entered boxed state while being set offline\n" + * Severity: Warning + * Parameter: + * @1: Device bus-ID + * Description: + * While the device was set offline, it did not respond in time or it was + * reserved by another operating system. The device is now inactive, but + * setting it online again might fail. + * User action: + * None. + */ + +/*? + * Text: "Logging for subchannel 0.%x.%04x failed with errno=%d\n" + * Severity: Warning + * Parameter: + * @1: subchannel set ID + * @2: subchannel number + * @3: errno + * Description: + * Capturing model-dependent logs and traces could not be triggered for the + * specified subchannel. + * User action: + * See the errno man page to find out what caused the problem. + */ + +/*? + * Text: "Logging for subchannel 0.%x.%04x was triggered\n" + * Severity: Notice + * Parameter: + * @1: subchannel set ID + * @2: subchannel number + * Description: + * Model-dependent logs and traces may be captured for the specified + * subchannel. + * User action: + * None. + */ + +/*? + * Text: "%s: No interrupt was received within %lus (CS=%02x, DS=%02x, CHPID=%x.%02x)\n" + * Severity: Warning + * Parameter: + * @1: device number + * @2: timeout value + * @3: channel status + * @4: device status + * @5: channel subsystem ID + * @6: CHPID + * Description: + * Internal I/Os are used by the common I/O layer to ensure that devices are + * operational and accessible. + * The common I/O layer did not receive an interrupt for an internal I/O + * during the specified timeout period. + * As a result, the device might assume a state that makes the device + * unusable to Linux until the problem is resolved. + * User action: + * Make sure that the device is working correctly and try the action again. + */ + +/*? + * Text: "Link stopped: RS=%02x RSID=%04x IC=%02x IUPARAMS=%s IUNODEID=%s AUPARAMS=%s AUNODEID=%s\n" + * Severity: Error + * Parameter: + * @1: reporting source + * @2: reporting source ID + * @3: incident code + * @4: incident unit parameters + * @5: incident unit node ID + * @6: attached unit parameters + * @7: attached unit node ID + * + * Description: + * A hardware error has occurred. A unit at one end of an interface + * link has detected a failure in the link or in one of the units attached to + * the link. As a result, data transfer across the link has stopped. In the + * message text, the node IDs of involved units are represented in the + * following format: TTTTTT/MDL,MMM.PPSSSSSSSSSSSS,XXXX where TTTTTT refers to + * the machine type, MDL the model number, MMM the manufacturer, PP the + * manufacturing plant, SSSSSSSSSSSS the unit sequence number and XXXX the + * machine type-dependent physical interface number. If no data is available + * for the unit parameters or node ID field, "n/a" is used instead. + * + * User action: + * Report the problem to your support organization. + */ + +/*? + * Text: "Link degraded: RS=%02x RSID=%04x IC=%02x IUPARAMS=%s IUNODEID=%s AUPARAMS=%s AUNODEID=%s\n" + * Severity: Warning + * Parameter: + * @1: reporting source + * @2: reporting source ID + * @3: incident code + * @4: incident unit parameters + * @5: incident unit node ID + * @6: attached unit parameters + * @7: attached unit node ID + * Description: + * A hardware error has occurred. A unit at one end of an interface + * link has detected a failure in the link or in one of the units attached to + * the link. As a result, data transfer across the link is degraded. In the + * message text, the node IDs of involved units are represented in the + * following format: TTTTTT/MDL,MMM.PPSSSSSSSSSSSS,XXXX where TTTTTT refers to + * the machine type, MDL the model number, MMM the manufacturer, PP the + * manufacturing plant, SSSSSSSSSSSS the unit sequence number and XXXX the + * machine type-dependent physical interface number. If no data is available + * for the unit parameters or node ID field, "n/a" is used instead. + * + * User action: + * Report the problem to your support organization. + */ +/*? Text: "%s: %d output lines suppressed due to ratelimiting\n" */ --- linux-azure-5.8-5.8.0.orig/Documentation/kmsg/s390/cpcmd +++ linux-azure-5.8-5.8.0/Documentation/kmsg/s390/cpcmd @@ -0,0 +1,16 @@ +/*? + * Text: "The cpcmd kernel function failed to allocate a response buffer\n" + * Severity: Warning + * Description: + * IPL code, console detection, and device drivers like vmcp or vmlogrdr use + * the cpcmd kernel function to send commands to the z/VM control program (CP). + * If a program that uses the cpcmd function does not allocate a contiguous + * response buffer below 2 GB guest real storage, cpcmd creates a bounce buffer + * to be used as the response buffer. Because of low memory or memory + * fragmentation, cpcmd could not create the bounce buffer. + * User action: + * Look for related page allocation failure messages and at the stack trace to + * find out which program or operation failed. Free some memory and retry the + * failed operation. Consider allocating more memory to your z/VM guest virtual + * machine. + */ --- linux-azure-5.8-5.8.0.orig/Documentation/kmsg/s390/cpu +++ linux-azure-5.8-5.8.0/Documentation/kmsg/s390/cpu @@ -0,0 +1,46 @@ +/*? + * Text: "%d configured CPUs, %d standby CPUs\n" + * Severity: Informational + * Parameter: + * @1: number of configured CPUs + * @2: number of standby CPUs + * Description: + * The kernel detected the given number of configured and standby CPUs. + * User action: + * None. + */ + +/*? + * Text: "The CPU configuration topology of the machine is:" + * Severity: Informational + * Description: + * The first six values of the topology information represent fields Mag6 to + * Mag1 of system-information block (SYSIB) 15.1.2. These fields specify the + * maximum numbers of topology-list entries (TLE) at successive topology nesting + * levels. The last value represents the MNest value of SYSIB 15.1.2 which + * specifies the maximum possible nesting that can be configured through + * dynamic changes. For details see the SYSIB 15.1.2 information in the + * "Principles of Operation." + * User action: + * None. + */ + +/*? + * Text: "CPU %i exceeds the maximum %i and is excluded from the dump\n" + * Severity: Warning + * Parameter: + * @1: CPU number + * @2: maximum CPU number + * Description: + * The Linux kernel is used as a system dumper but it runs on more CPUs than + * it has been compiled for with the CONFIG_NR_CPUS kernel configuration + * option. The system dump will be created but information on one or more + * CPUs will be missing. + * User action: + * Update the system dump kernel to a newer version that supports more + * CPUs or reduce the number of installed CPUs and reproduce the problem + * that should be analyzed. If you send the system dump that prompted this + * message to a support organization, be sure to communicate that the dump + * does not include all CPU information. + */ +/*? Text: "%s: %d output lines suppressed due to ratelimiting\n" */ --- linux-azure-5.8-5.8.0.orig/Documentation/kmsg/s390/cpum_cf +++ linux-azure-5.8-5.8.0/Documentation/kmsg/s390/cpum_cf @@ -0,0 +1,68 @@ +/*? + * Text: "Enabling the performance measuring unit failed with rc=%x\n" + * Severity: Error + * Parameter: + * @1: error condition + * Description: + * The device driver failed to enable CPU counter sets with the + * load counter controls (lcctl) instruction. + * See the section about lcctl in "The Load-Program-Parameter and the CPU-Measurement + * Facilities", SA23-2260, for an explanation of the error conditions. + * User action: + * Stop the performance measurement programs and try again. + */ + +/*? + * Text: "Disabling the performance measuring unit failed with rc=%x\n" + * Severity: Error + * Parameter: + * @1: error condition + * Description: + * The device driver failed to disable CPU counter sets with the + * load counter controls (lcctl) instruction. + * See the section about lcctl in "The Load-Program-Parameter and the CPU-Measurement + * Facilities", SA23-2260, for an explanation of the error conditions. + * User action: + * Stop the performance measurement programs and try again. + */ + +/*? + * Text: "Registering the cpum_cf PMU failed with rc=%i\n" + * Severity: Error + * Parameter: + * @1: error code + * Description: + * The device driver could not register the Performance Measurement Unit (PMU) + * for the CPU-measurement counter facility. + * A possible cause of this problem is memory constraints. + * User action: + * If the error code is -12 (ENOMEM), consider assigning more memory + * to your Linux instance. + */ + +/*? + * Text: "CPU[%i] Counter data was lost\n" + * Severity: Error + * Parameter: + * @1: cpu number + * Description: + * CPU counter data was lost because of machine internal + * high-priority activities. + * User action: + * None. + */ + +/*? + * Text: "Registering for CPU-measurement alerts failed with rc=%i\n" + * Severity: Error + * Parameter: + * @1: error code + * Description: + * The device driver could not register to receive CPU-measurement alerts. + * Alerts make you aware of measurement errors. + * A possible cause of this problem is memory constraints. + * User action: + * If the error code is -12 (ENOMEM), consider assigning more memory + * to your Linux instance. + */ +/*? Text: "%s: %d output lines suppressed due to ratelimiting\n" */ --- linux-azure-5.8-5.8.0.orig/Documentation/kmsg/s390/cpum_sf +++ linux-azure-5.8-5.8.0/Documentation/kmsg/s390/cpum_sf @@ -0,0 +1,104 @@ +/*? + * Text: "The sampling buffer limits have changed to: min=%lu max=%lu (diag=x%lu)\n" + * Severity: Informational + * Parameter: + * @1: minimum size in sample-data-blocks + * @2: maximum size in sample-data-blocks + * @3: size factor for buffering diagnostic-sampling data entries + * Description: + * The minimum or maximum size limit for the sampling facility buffer was + * changed. The change is effective immediately. + * User action: + * None. + */ + +/*? + * Text: "Switching off the sampling facility failed with rc=%i\n" + * Severity: Error + * Parameter: + * @1: error condition + * Description: + * The CPU-measurement sampling facility could not be switched off and continues + * to run. For details, see LOAD SAMPLING CONTROLS in + * "The Load-Program-Parameter and the CPU-Measurement Facilities", SA23-2260. + * User action: + * If this problem persists, reboot your Linux instance. + */ + +/*? + * Text: "Sample data was lost\n" + * Severity: Error + * Description: + * Sample data was lost because of machine-internal high-priority activities. + * The sampling facility is stopped. + * User action: + * End all performance measurement sessions. Discard the measurement data, + * which are likely to be flawed. Repeat your measurements. + * If the problem persists, contact your hardware administrator. + */ + +/*? + * Text: "Sampling facility support for perf is not available: reason=%04x\n" + * Severity: Error + * Parameter: + * @1: reason code + * Description: + * The device driver could not initialize the sampling facility support. + * Possible reason codes are: + * 0001: The device driver failed to query CPU-measurement sampling facility + * information. + * + * 0002: The device driver does not support the basic-sampling function that + * is available on the LPAR within which the Linux instance runs. + * + * 0003: The device driver could not register to receive CPU-measurement alerts. + * A possible cause of this problem is memory constraints. + * + * 0004: The device driver could not register the Performance Measurement Unit + * (PMU) for the CPU-measurement sampling facility. + * A possible cause of this problem is memory constraints. + * User action: + * Consider assigning more memory to your Linux instance. + */ + +/*? + * Text: "Loading sampling controls failed: op=%i err=%i\n" + * Severity: Error + * Parameter: + * @1: Type of operation + * @2: Error condition + * Description: + * The sampling facility support could not load sampling controls to enable + * (operation type 1) or disable (operation type 2) the CPU-measurement sampling + * facility. For details of the error condition, see LOAD SAMPLING CONTROLS in + * "The Load-Program-Parameter and the CPU-Measurement Facilities", SA23-2260. + * User action: + * If the problem persists, reboot your Linux instance. + */ + +/*? + * Text: "A sampling buffer entry is incorrect (alert=0x%x)\n" + * Severity: Error + * Parameter: + * @1: Alert code + * Description: + * An incorrect sampling facility buffer entry was detected. The alert code + * indicates the root cause, for example, an incorrect entry address or an + * incorrect sample-data-block-table entry. + * User action: + * End active performance measurement sessions, for example, perf processes. If + * the problem persists, reboot your Linux instance. + */ + +/*? + * Text: "Registering for s390dbf failed\n" + * Severity: Error + * Description: + * The device driver failed to register for the s390 debug feature. You will + * not receive any debug information. A possible cause of this problem is + * memory constraints. + * User action: + * Consider assigning more memory + * to your Linux instance. + */ +/*? Text: "%s: %d output lines suppressed due to ratelimiting\n" */ --- linux-azure-5.8-5.8.0.orig/Documentation/kmsg/s390/crc32-vx +++ linux-azure-5.8-5.8.0/Documentation/kmsg/s390/crc32-vx @@ -0,0 +1 @@ +/*? Text: "%s: %d output lines suppressed due to ratelimiting\n" */ --- linux-azure-5.8-5.8.0.orig/Documentation/kmsg/s390/ctcm +++ linux-azure-5.8-5.8.0/Documentation/kmsg/s390/ctcm @@ -0,0 +1,202 @@ +/*? + * Text: "%s: An I/O-error occurred on the CTCM device\n" + * Severity: Error + * Parameter: + * @1: bus ID of the CTCM device + * Description: + * An I/O error was detected on one of the subchannels of the CTCM device. + * Depending on the error, the CTCM device driver might attempt an automatic + * recovery. + * User action: + * Check the status of the CTCM device, for example, with ifconfig. If the + * device is not operational, perform a manual recovery. See "Device Drivers, + * Features, and Commands" for details about how to recover a CTCM device. + */ + +/*? + * Text: "%s: An adapter hardware operation timed out\n" + * Severity: Error + * Parameter: + * @1: bus ID of the CTCM device + * Description: + * The CTCM device uses an adapter to physically connect to its communication + * peer. An operation on this adapter timed out. + * User action: + * Check the status of the CTCM device, for example, with ifconfig. If the + * device is not operational, perform a manual recovery. See "Device Drivers, + * Features, and Commands" for details about how to recover a CTCM device. + */ + +/*? + * Text: "%s: An error occurred on the adapter hardware\n" + * Severity: Error + * Parameter: + * @1: bus ID of the CTCM device + * Description: + * The CTCM device uses an adapter to physically connect to its communication + * peer. An operation on this adapter returned an error. + * User action: + * Check the status of the CTCM device, for example, with ifconfig. If the + * device is not operational, perform a manual recovery. See "Device Drivers, + * Features, and Commands" for details about how to recover a CTCM device. + */ + +/*? + * Text: "%s: The communication peer has disconnected\n" + * Severity: Notice + * Parameter: + * @1: channel ID + * Description: + * The remote device has disconnected. Possible reasons are that the remote + * interface has been closed or that the operating system instance with the + * communication peer has been rebooted or shut down. + * User action: + * Check the status of the peer device. Ensure that the peer operating system + * instance is running and that the peer interface is operational. + */ + +/*? + * Text: "%s: The remote operating system is not available\n" + * Severity: Notice + * Parameter: + * @1: channel ID + * Description: + * The operating system instance with the communication peer has disconnected. + * Possible reasons are that the operating system instance has been rebooted + * or shut down. + * User action: + * Ensure that the peer operating system instance is running and that the peer + * interface is operational. + */ + +/*? + * Text: "%s: The adapter received a non-specific IRQ\n" + * Severity: Warning + * Parameter: + * @1: bus ID of the CTCM device + * Description: + * The adapter hardware used by the CTCM device received an IRQ that cannot + * be mapped to a particular device. This is a hardware problem. + * User action: + * Check the status of the CTCM device, for example, with ifconfig. Check if + * the connection to the remote device still works. If the CTCM device is not + * operational, set it offline and back online. If this does not resolve the + * problem, perform a manual recovery. See "Device Drivers, Features, and + * Commands" for details about how to recover a CTCM device. If this problem + * persists, gather Linux debug data, collect the hardware logs, and report the + * problem to your support organization. + */ + +/*? + * Text: "%s: A check occurred on the subchannel\n" + * Severity: Warning + * Parameter: + * @1: bus ID of the CTCM device + * Description: + * A check condition has been detected on the subchannel. + * User action: + * Check if the connection to the remote device still works. If the CTCM device + * is not operational, set it offline and back online. If this does not resolve + * the problem, perform a manual recovery. See "Device Drivers, Features, and + * Commands" for details about how to recover a CTCM device. If this problem + * persists, gather Linux debug data and report the problem to your support + * organization. + */ + +/*? + * Text: "%s: The communication peer is busy\n" + * Severity: Informational + * Parameter: + * @1: channel ID + * Description: + * A busy target device was reported. This might be a temporary problem. + * User action: + * If this problem persists or is reported frequently ensure that the target + * device is working properly. + */ + +/*? + * Text: "%s: The specified target device is not valid\n" + * Severity: Error + * Parameter: + * @1: channel ID + * Description: + * A target device was called with a faulty device specification. This is an + * adapter hardware problem. + * User action: + * Gather Linux debug data, collect the hardware logs, and contact IBM support. + */ + +/*? + * Text: "An I/O operation resulted in error %04x\n" + * Severity: Error + * Parameter: + * @1: channel ID + * @2: error information + * Description: + * A hardware operation ended with an error. + * User action: + * Check the status of the CTCM device, for example, with ifconfig. If the + * device is not operational, perform a manual recovery. See "Device Drivers, + * Features, and Commands" for details about how to recover a CTCM device. + * If this problem persists, gather Linux debug data, collect the hardware logs, + * and report the problem to your support organization. + */ + +/*? + * Text: "%s: Initialization failed with RX/TX init handshake error %s\n" + * Severity: Warning + * Parameter: + * @1: bus ID of the CTCM device + * @2: error information + * Description: + * A problem occurred during the initialization of the connection. If the + * connection can be established after an automatic recovery, a success message + * is issued. + * User action: + * If the problem is not resolved by the automatic recovery process, check the + * local and remote device. If this problem persists, gather Linux debug data + * and report the problem to your support organization. + */ + +/*? + * Text: "%s: The network backlog for %s is exceeded, package dropped\n" + * Severity: Warning + * Parameter: + * @1: bus ID of the CTCM device + * @2: calling function + * Description: + * There is more network traffic than can be handled by the device. The device + * is closed and some data has not been transmitted. The device might be + * recovered automatically. + * User action: + * Investigate and resolve the congestion. If necessary, set the device + * online to make it operational. + */ + +/*? + * Text: "%s: The XID used in the MPC protocol is not valid, rc = %d\n" + * Severity: Warning + * Parameter: + * @1: bus ID of the CTCM device + * @2: return code + * Description: + * The exchange identification (XID) used by the CTCM device driver when + * in MPC mode is not valid. + * User action: + * Note the error information provided with this message and contact your + * support organization. + */ + +/*? Text: "CTCM driver unloaded\n" */ +/*? Text: "%s: %s Internal error: net_device is NULL, ch = 0x%p\n" */ +/*? Text: "%s / Initializing the ctcm device driver failed, ret = %d\n" */ +/*? Text: "%s: %s: Internal error: Can't determine channel for interrupt device %s\n" */ +/*? Text: "CTCM driver initialized\n" */ +/*? Text: "%s: setup OK : r/w = %s/%s, protocol : %d\n" */ +/*? Text: "%s: Connected with remote side\n" */ +/*? Text: "%s: Restarting device\n" */ +/*? Text: "netif_stop_queue() cannot be called before register_netdev()\n" */ +/*? Text: "flen=%u proglen=%u pass=%u image=%pK from=%s pid=%d\n" */ +/*? Text: "%s selects TX queue %d, but real number of TX queues is %d\n" */ +/*? Text: "%s: %d output lines suppressed due to ratelimiting\n" */ --- linux-azure-5.8-5.8.0.orig/Documentation/kmsg/s390/dasd +++ linux-azure-5.8-5.8.0/Documentation/kmsg/s390/dasd @@ -0,0 +1,704 @@ +/* dasd_ioctl */ + +/*? + * Text: "%s: The DASD has been put in the quiesce state\n" + * Severity: Informational + * Parameter: + * @1: bus ID of the DASD + * Description: + * No I/O operation is possible on this device. + * User action: + * Resume the DASD to enable I/O operations. + */ + +/*? + * Text: "%s: I/O operations have been resumed on the DASD\n" + * Severity: Informational + * Parameter: + * @1: bus ID of the DASD + * Description: + * The DASD is no longer in state quiesce and I/O operations can be performed + * on the device. + * User action: + * None. + */ + +/*? + * Text: "%s: The DASD cannot be formatted while it is enabled\n" + * Severity: Warning + * Parameter: + * @1: bus ID of the DASD + * Description: + * The DASD you try to format is enabled. Enabled devices cannot be formatted. + * User action: + * Contact the owner of the formatting tool. + */ + +/*? + * Text: "%s: The specified DASD is a partition and cannot be formatted\n" + * Severity: Warning + * Parameter: + * @1: bus ID of the DASD + * Description: + * The DASD you try to format is a partition. Partitions cannot be formatted + * separately. You can only format a complete DASD including all its partitions. + * User action: + * Format the complete DASD. + * ATTENTION: Formatting irreversibly destroys all data on all partitions + * of the DASD. + */ + +/*? + * Text: "%s: The specified DASD is a partition and cannot be checked\n" + * Severity: Warning + * Parameter: + * @1: bus ID of the DASD + * Description: + * The DASD you try to check is a partition. Partitions cannot be checked + * separately. You can only check a complete DASD including all its partitions. + * User action: + * Check the complete DASD. + */ + +/*? + * Text: "%s: Formatting unit %d failed with rc=%d\n" + * Severity: Error + * Parameter: + * @1: bus ID of the DASD + * @2: start track + * @3: return code + * Description: + * The formatting process might have been interrupted by a signal, for example, + * CTRL+C. If the process was not interrupted intentionally, an I/O error + * might have occurred. + * User action: + * Retry to format the device. If the error persists, check the log file for + * related error messages. If you cannot resolve the error, note the return + * code and contact your support organization. + */ + + +/* dasd */ + +/*? + * Text: "%s: Cancelling request %p failed with rc=%d\n" + * Severity: Error + * Parameter: + * @1: bus ID of the DASD + * @2: pointer to request + * @3: return code of previous function + * Description: + * In response to a user action, the DASD device driver tried but failed to + * cancel a previously started I/O operation. + * User action: + * Try the action again. + */ + +/*? + * Text: "%s: Flushing the DASD request queue failed for request %p\n" + * Severity: Error + * Parameter: + * @1: bus ID of the DASD + * @2: pointer to request + * Description: + * As part of the unloading process, the DASD device driver flushes the + * request queue. This failed because a previously started I/O operation + * could not be canceled. + * User action: + * Try again to unload the DASD device driver or to shut down Linux. + */ + +/*? + * Text: "The DASD device driver could not be initialized\n" + * Severity: Informational + * Description: + * The initialization of the DASD device driver failed because of previous + * errors. + * User action: + * Check for related previous error messages. + */ + +/*? + * Text: "%s: Accessing the DASD failed because it is in probeonly mode\n" + * Severity: Informational + * Parameter: + * @1: bus ID of the DASD + * Description: + * The dasd= module or kernel parameter specified the probeonly attribute for + * the DASD you are trying to access. The DASD device driver cannot access + * DASDs that are in probeonly mode. + * User action: + * Change the dasd= parameter as to omit probeonly for the DASD and reload + * the DASD device driver. If the DASD device driver has been compiled into + * the kernel, reboot Linux. + */ + +/*? + * Text: "%s: cqr %p timed out (%lus), %i retries remaining\n" + * Severity: Error + * Parameter: + * @1: bus ID of the DASD + * @2: request + * @3: timeout value + * @4: number of retries left + * Description: + * A try of the error recovery procedure (ERP) for the channel queued request + * (cqr) timed out and failed to recover the error. ERP continues for the DASD. + * User action: + * Ignore this message if it occurs infrequently and if the recovery succeeds + * during one of the retries. If this error persists, check for related + * previous error messages and report the problem to your support organization. + * + * The timeout can be changed by writing a new value to the sysfs 'expires' attribute of the DASD. The value specifies the timeout in seconds. + */ + +/*? + * Text: "%s: cqr %p timed out (%lus) but cannot be ended, retrying in 5 s\n" + * Severity: Error + * Parameter: + * @1: bus ID of the DASD + * @2: request + * @3: timeout value + * Description: + * A try of the error recovery procedure (ERP) for the channel queued request + * (cqr) timed out and failed to recover the error. The I/O request submitted + * during the try could not be canceled. The ERP waits for 5 seconds before + * trying again. + * User action: + * Ignore this message if it occurs infrequently and if the recovery succeeds + * during one of the retries. If this error persists, check for related + * previous error messages and report the problem to your support organization. + * + * The timeout can be changed by writing a new value to the sysfs 'expires' attribute of the DASD. The value specifies the timeout in seconds. + */ + +/*? + * Text: "%s: The DASD cannot be set offline while it is in use\n" + * Severity: Warning + * Parameter: + * @1: bus ID of the DASD + * Description: + * The DASD cannot be set offline because it is in use by an internal process. + * An action to free the DASD might not have completed yet. + * User action: + * Wait some time and set the DASD offline later. + */ + +/*? + * Text: "%s: The DASD cannot be set offline with open count %i\n" + * Severity: Warning + * Parameter: + * @1: bus ID of the DASD + * @2: count + * Description: + * The DASD is being used by one or more processes and cannot be set offline. + * User action: + * Ensure that the DASD is not in use anymore, for example, unmount all + * partitions. Then try again to set the DASD offline. + */ + +/*? + * Text: "%s: Setting the DASD online failed with rc=%d\n" + * Severity: Warning + * Parameter: + * @1: bus ID of the DASD + * @2: return code + * Description: + * The DASD could not be set online because of previous errors. + * User action: + * Look for previous error messages. If you cannot resolve the error, note + * the return code and contact your support organization. + */ + +/*? + * Text: "%s Setting the DASD online with discipline %s failed with rc=%i\n" + * Severity: Warning + * Parameter: + * @1: bus ID of the DASD + * @2: discipline + * @3: return code + * Description: + * The DASD could not be set online because of previous errors. + * User action: + * Look for previous error messages. If you cannot resolve the error, note the + * return code and contact your support organization. + */ + +/*? + * Text: "%s Setting the DASD online failed because of missing DIAG discipline\n" + * Severity: Warning + * Parameter: + * @1: bus ID of the DASD + * Description: + * The DASD was to be set online with discipline DIAG but this discipline of + * the DASD device driver is not available. + * User action: + * Ensure that the dasd_diag_mod module is loaded. If your Linux system does + * not include this module, you cannot set DASDs online with the DIAG + * discipline. + */ + +/*? + * Text: "%s Setting the DASD online failed because of a missing discipline\n" + * Severity: Warning + * Parameter: + * @1: bus ID of the DASD + * Description: + * The DASD was to be set online with a DASD device driver discipline that + * is not available. + * User action: + * Ensure that all DASD modules are loaded correctly. + */ + +--------------------------- + +/*? + * Text: "The statistics feature has been switched off\n" + * Severity: Informational + * Description: + * The statistics feature of the DASD device driver has been switched off. + * User action: + * None. + */ + +/*? + * Text: "The statistics feature has been switched on\n" + * Severity: Informational + * Description: + * The statistics feature of the DASD device driver has been switched on. + * User action: + * None. + */ + +/*? + * Text: "The statistics have been reset\n" + * Severity: Informational + * Description: + * The DASD statistics data have been reset. + * User action: + * None. + */ + +/*? + * Text: "%s is not a supported value for /proc/dasd/statistics\n" + * Severity: Warning + * Parameter: + * @1: value + * Description: + * An incorrect value has been written to /proc/dasd/statistics. + * The supported values are: 'set on', 'set off', and 'reset'. + * User action: + * Write a supported value to /proc/dasd/statistics. + */ + +/*? + * Text: "%s is not a valid device range\n" + * Severity: Error + * Parameter: + * @1: range + * Description: + * A device range specified with the dasd= parameter is not valid. + * User action: + * Examine the dasd= parameter and correct the device range. + */ + +/*? + * Text: "The probeonly mode has been activated\n" + * Severity: Informational + * Description: + * The probeonly mode of the DASD device driver has been activated. In this + * mode the device driver rejects any 'open' syscalls with EPERM. + * User action: + * None. + */ + +/*? + * Text: "The IPL device is not a CCW device\n" + * Severity: Error + * Description: + * The value for the dasd= parameter contains the 'ipldev' keyword. During + * the boot process this keyword is replaced with the device from which the + * IPL was performed. The 'ipldev' keyword is not valid if the IPL device is + * not a CCW device. + * User action: + * Do not specify the 'ipldev' keyword when performing an IPL from a device + * other than a CCW device. + */ + +/*? + * Text: "A closing parenthesis ')' is missing in the dasd= parameter\n" + * Severity: Warning + * Description: + * The specification for the dasd= kernel or module parameter has an opening + * parenthesis '(' * without a matching closing parenthesis ')'. + * User action: + * Correct the parameter value. + */ + +/*? + * Text: "The autodetection mode has been activated\n" + * Severity: Informational + * Description: + * The autodetection mode of the DASD device driver has been activated. In + * this mode the DASD device driver sets all detected DASDs online. + * User action: + * None. + */ + +/*? + * Text: "%*s is not a supported device option\n" + * Severity: Warning + * Parameter: + * @1: length of option code + * @2: option code + * Description: + * The dasd= parameter includes an unknown option for a DASD or a device range. + * Options are specified in parenthesis and immediately follow a device or + * device range. + * User action: + * Check the dasd= syntax and remove any unsupported options from the dasd= + * parameter specification. + */ + +/*? + * Text: "PAV support has be deactivated\n" + * Severity: Informational + * Description: + * The 'nopav' keyword has been specified with the dasd= kernel or module + * parameter. The Parallel Access Volume (PAV) support of the DASD device + * driver has been deactivated. + * User action: + * None. + */ + +/*? + * Text: "'nopav' is not supported on z/VM\n" + * Severity: Informational + * Description: + * For Linux instances that run as guest operating systems of the z/VM + * hypervisor Parallel Access Volume (PAV) support is controlled by z/VM not + * by Linux. + * User action: + * Remove 'nopav' from the dasd= module or kernel parameter specification. + */ + +/*? + * Text: "High Performance FICON support has been deactivated\n" + * Severity: Informational + * Description: + * The 'nofcx' keyword has been specified with the dasd= kernel or module + * parameter. The High Performance FICON (transport mode) support of the DASD + * device driver has been deactivated. + * User action: + * None. + */ + +/*? + * Text: "The dasd= parameter value %s has an invalid ending\n" + * Severity: Warning + * Parameter: + * @1: parameter value + * Description: + * The specified value for the dasd= kernel or module parameter is not correct. + * User action: + * Check the module or the kernel parameter. + */ + +/*? + * Text: "Registering the device driver with major number %d failed\n" + * Severity: Warning + * Parameter: + * @1: DASD major + * Description: + * Major number 94 is reserved for the DASD device driver. The DASD device + * driver failed to register with this major number. Another device driver + * might have used major number 94. + * User action: + * Determine which device driver uses major number 94 instead of the DASD + * device driver and unload this device driver. Then try again to load the + * DASD device driver. + */ + +/*? + * Text: "%s: default ERP has run out of retries and failed\n" + * Severity: Error + * Parameter: + * @1: bus ID of the DASD + * Description: + * The error recovery procedure (ERP) tried to recover an error but the number + * of retries for the I/O was exceeded before the error could be resolved. + * User action: + * Check for related previous error messages. + */ + +/*? + * Text: "%s: Unable to terminate request %p on suspend\n" + * Severity: Error + * Parameter: + * @1: bus ID of the DASD + * @2: pointer to request + * Description: + * As part of the suspend process, the DASD device driver terminates requests + * on the request queue. This failed because a previously started I/O operation + * could not be canceled. The suspend process will be stopped. + * User action: + * Try again to suspend the system. + */ + +/*? + * Text: "%s: ERP failed for the DASD\n" + * Severity: Error + * Parameter: + * @1: bus ID of the DASD + * Description: + * An error recovery procedure (ERP) was performed for the DASD but failed. + * User action: + * Check the message log for previous related error messages. + */ + +/*? + * Text: "%s: An error occurred in the DASD device driver, reason=%s\n" + * Severity: Error + * Parameter: + * @1: bus ID of the DASD + * @2: reason code + * Description: + * This problem indicates a program error in the DASD device driver. + * User action: + * Note the reason code and contact your support organization. +*/ + +/*? + * Text: "%s: No operational channel path is left for the device\n" + * Severity: Warning + * Parameter: + * @1: bus ID of the DASD + * Description: + * All channel paths to the device have become non-operational. The DASD + * device driver suspends I/O operations and queues I/O requests for this + * device until at least one channel path becomes operational again. + * User action: + * Ensure that each channel path to the device has been set up correctly + * and that the related physical cable connections are in place. + */ + +/*? + * Text: "%s: No verified channel paths remain for the device\n" + * Severity: Warning + * Parameter: + * @1: bus ID of the DASD + * Description: + * All verified channel paths to the device have become non-operational. + * Any other paths to the device have previously been identified as not usable. + * The DASD device driver suspends I/O operations and queues I/O requests + * for this device until at least one channel path becomes operational + * again. + * User action: + * Ensure that each channel path to the device has been set up correctly + * and that the related physical cable connections are in place. + * Set all paths to the device offline and online again to repeat the path + * verification. Alternatively, set the device offline and online again to + * verify all available paths for this device. + * If this problem persists, gather Linux debug data and report the problem + * to your support organization. + */ + +/*? + * Text: "%s: A channel path to the device has become operational\n" + * Severity: Informational + * Parameter: + * @1: bus ID of the DASD + * Description: + * At least one channel path of this device has become operational again. + * The DASD device driver resumes I/O operations to the device and processes + * the I/O requests that were queued while there was no operational channel path. + * User action: + * None. + */ + +------------------------------------------------------------------------------------ +/* dasd_diag */ + +/*? + * Text: "%s: A 64-bit DIAG call failed\n" + * Severity: Warning + * Parameter: + * @1: bus ID of the DASD + * Description: + * 64-bit DIAG calls require a 64-bit z/VM version. + * User action: + * Use z/VM 5.2 or later or set the sysfs 'use_diag' attribute of the DASD to 0 + * to switch off DIAG. + */ + +/*? + * Text: "%s: Accessing the DASD failed because of an incorrect format (rc=%d)\n" + * Severity: Warning + * Parameter: + * @1: bus ID of the DASD + * @2: return code + * Description: + * The format of the DASD is not correct. + * User action: + * Check the device format. For details about the return code see the + * section about the INITIALIZE function for DIAGNOSE Code X'250' + * in "z/VM CP Programming Services". If you cannot resolve the error, note + * the return code and contact your support organization. + */ + +/*? + * Text: "%s: New DASD with %ld byte/block, total size %ld KB%s\n" + * Severity: Informational + * Parameter: + * @1: bus ID of the DASD + * @2: bytes per block + * @3: size + * @4: access mode + * Description: + * A DASD with the indicated block size and total size has been set online. + * If the DASD is configured as read-only to the real or virtual hardware, + * the message includes an indication of this hardware access mode. The + * hardware access mode is independent from the 'readonly' attribute of + * the device in sysfs. + * User action: + * None. + */ + +/*? + * Text: "%s: DIAG ERP failed with rc=%d\n" + * Severity: Warning + * Parameter: + * @1: bus ID of the DASD + * @2: return code + * Description: + * An error in the DIAG processing could not be recovered by the error + * recovery procedure (ERP) of the DIAG discipline. + * User action: + * Note the return code, check for related I/O errors, and report this problem + * to your support organization. + */ + +/*? + * Text: "%s: DIAG initialization failed with rc=%d\n" + * Severity: Warning + * Parameter: + * @1: bus ID of the DASD + * @2: return code + * Description: + * Initializing the DASD with the DIAG discipline failed. Possible reasons for + * this problem are that the device has a device type other than FBA or ECKD, + * or has a block size other than one of the supported sizes: + * 512 byte, 1024 byte, 2048 byte, or 4096 byte. + * User action: + * Ensure that the device can be written to and has a supported device type + * and block size. For details about the return code see the section about + * the INITIALIZE function for DIAGNOSE Code X'250' in "z/VM CP Programming + * Services". If you cannot resolve the error, note the error code and contact + * your support organization. + */ + +/*? + * Text: "%s: Device type %d is not supported in DIAG mode\n" + * Severity: Warning + * Parameter: + * @1: bus ID of the DASD + * @2: device type + * Description: + * Only DASD of type FBA and ECKD are supported in DIAG mode. + * User action: + * Set the sysfs 'use_diag' attribute of the DASD to 0 and try again to access + * the DASD. + */ + +/*? + * Text: "Discipline %s cannot be used without z/VM\n" + * Severity: Informational + * Parameter: + * @1: discipline name + * Description: + * The discipline that is specified with the dasd= kernel or module parameter + * is only available for Linux instances that run as guest operating + * systems of the z/VM hypervisor. + * User action: + * Remove the unsupported discipline from the parameter string. + */ + +/*? + * Text: "%s: The access mode of a DIAG device changed to read-only\n" + * Severity: Warning + * Parameter: + * @1: bus ID of the DASD + * Description: + * A device changed its access mode from writeable to + * read-only while in use. + * User action: + * Set the device offline, ensure that the device is configured correctly in + * z/VM, then set the device online again. + */ + +------------------------------------------------------------------------------------ +/* dasd_erp */ + +/*? + * Text: "%s: A timeout error occurred for cqr %p\n" + * Severity: Error + * Parameter: + * @1: bus ID of the DASD + * @2: pointer to request + * Description: + * A channel queued request (cqr) failed because it timed out. + * One possible reason for this error is that a request did not + * complete within the timeout interval specified for the DASD. + * The timeout interval is set as the value of the 'timeout' sysfs + * attribute of a DASD. A value of 0 disables the timeout function. + * The timeout function can be used; for example, by mirroring setups; + * to quickly process a request queue for a DASD that has become unavailable. + * User action: + * Check the message log for previous related error messages. Verify + * that the storage server and the connection from host to storage + * server are operational. If the 'timeout' sysfs attribute of the + * DASD has been set to a value other than 0, verify that this + * setting is intentional and change it if required. + */ + +/*? + * Text: "%s: A transport error occurred for cqr %p\n" + * Severity: Error + * Parameter: + * @1: bus ID of the DASD + * @2: pointer to request + * Description: + * A channel queued request (cqr) failed because the connection to the + * device was lost and the 'failfast' flag is set for the request. + * This flag can result from, for example: + * + * - A software layer above the DASD device driver; + * for example, in a host based mirroring setup. + * + * - Value 1 for the 'failfast' sysfs attribute of the DASD. + * This setting applies to all requests on the DASD. + * + * User action: + * Ensure that each channel path to the device has been set up + * correctly and that the related physical cable connections are in + * place. If the 'failfast' attribute of the DASD is set to 1, + * verify that this setting is intentional and change it to 0 if required. + */ + +/*? + * Text: "%s Setting the DASD online failed because the required module %s could not be loaded (rc=%d)\n" + * Severity: Warning + * Parameter: + * @1: bus ID of the DASD + * @2: kernel module name + * @3: return code + * Description: + * The DASD was to be set online with discipline DIAG but this discipline of + * the DASD device driver is not available and an attempt to load the + * corresponding kernel module failed with the specified return code. + * + * User action: + * Ensure that the kernel module with the specified name is correctly installed + * or set the sysfs 'use_diag' attribute of the DASD to 0 to switch off DIAG. + */ +/*? Text: "%s: %d output lines suppressed due to ratelimiting\n" */ --- linux-azure-5.8-5.8.0.orig/Documentation/kmsg/s390/dasd-eckd +++ linux-azure-5.8-5.8.0/Documentation/kmsg/s390/dasd-eckd @@ -0,0 +1,2154 @@ +/* dasd_eckd */ + +/*? + * Text: "%s: ERP failed for the DASD\n" + * Severity: Error + * Parameter: + * @1: bus ID of the DASD + * Description: + * An error recovery procedure (ERP) was performed for the DASD but failed. + * User action: + * Check the message log for previous related error messages. + */ + +/*? + * Text: "%s: An error occurred in the DASD device driver, reason=%s\n" + * Severity: Error + * Parameter: + * @1: bus ID of the DASD + * @2: reason code + * Description: + * This problem indicates a program error in the DASD device driver. + * User action: + * Note the reason code and contact your support organization. +*/ + +/*? + * Text: "%s: Allocating memory for private DASD data failed\n" + * Severity: Warning + * Parameter: + * @1: bus ID of the DASD + * Description: + * The DASD device driver maintains data structures for each DASD it manages. + * There is not enough memory to allocate these data structures for one or + * more DASD. + * User action: + * Free some memory and try the operation again. + */ + +/*? + * Text: "%s: DASD with %d KB/block, %d KB total size, %d KB/track, %s\n" + * Severity: Informational + * Parameter: + * @1: bus ID of the DASD + * @2: block size + * @3: DASD size + * @4: track size + * @5: disc layout + * Description: + * A DASD with the shown characteristics has been set online. + * User action: + * None. + */ + +/*? + * Text: "%s: Start track number %u used in formatting is too big\n" + * Severity: Warning + * Parameter: + * @1: bus ID of the DASD + * @2: track number + * Description: + * The DASD format I/O control was used incorrectly by a formatting tool. + * User action: + * Contact the owner of the formatting tool. + */ + +/*? + * Text: "%s: Stop track number %u used in formatting is too big\n" + * Severity: Warning + * Parameter: + * @1: bus ID of the DASD + * @2: track number + * Description: + * The DASD format I/O control was used incorrectly by a formatting tool. + * User action: + * Contact the owner of the formatting tool. + */ + +/*? + * Text: "%s: The DASD is not formatted\n" + * Severity: Warning + * Parameter: + * @1: bus ID of the DASD + * Description: + * A DASD has been set online but it has not been formatted yet. You must + * format the DASD before you can use it. + * User action: + * Format the DASD, for example, with dasdfmt. + */ + +/*? + * Text: "%s: 0x%x is not a known command\n" + * Severity: Error + * Parameter: + * @1: bus ID of the DASD + * @2: command + * Description: + * This problem is likely to be caused by a programming error. + * User action: + * Contact your support organization. + */ + +/*? + * Text: "%s: Track 0 has no records following the VTOC\n" + * Severity: Warning + * Parameter: + * @1: bus ID of the DASD + * Description: + * Linux has identified a volume table of contents (VTOC) on the DASD but + * cannot read any data records following the VTOC. A possible cause of this + * problem is that the DASD has been used with another System z operating + * system. + * User action: + * Format the DASD for usage with Linux, for example, with dasdfmt. + * ATTENTION: Formatting irreversibly destroys all data on the DASD. + */ + +/*? + * Text: "%s: An I/O control call used incorrect flags 0x%x\n" + * Severity: Warning + * Parameter: + * @1: bus ID of the DASD + * @2: flags + * Description: + * The DASD format I/O control was used incorrectly. + * User action: + * Contact the owner of the formatting tool. + */ + +/*? + * Text: "%s: New DASD %04X/%02X (CU %04X/%02X) with %d cylinders, %d heads, %d sectors%s\n" + * Severity: Informational + * Parameter: + * @1: bus ID of the DASD + * @2: device type + * @3: device model + * @4: control unit type + * @5: control unit model + * @6: number of cylinders + * @7: tracks per cylinder + * @8: sectors per track + * @9: access mode + * Description: + * A DASD with the shown characteristics has been set online. + * If the DASD is configured as read-only to the real or virtual hardware, + * the message includes an indication of this hardware access mode. The + * hardware access mode is independent from the 'readonly' attribute of + * the device in sysfs. + * User action: + * None. + */ + +/*? + * Text: "%s: The disk layout of the DASD is not supported\n" + * Severity: Warning + * Parameter: + * @1: bus ID of the DASD + * Description: + * The DASD device driver only supports the following disk layouts: CDL, LDL, + * FBA, CMS, and CMS RESERVED. + * User action: + * None. + */ + +/*? + * Text: "%s: Start track %u used in formatting exceeds end track\n" + * Severity: Warning + * Parameter: + * @1: bus ID of the DASD + * @2: track number + * Description: + * The DASD format I/O control was used incorrectly by a formatting tool. + * User action: + * Contact the owner of the formatting tool. + */ + +/*? + * Text: "%s: The DASD cache mode was set to %x (%i cylinder prestage)\n" + * Severity: Informational + * Parameter: + * @1: bus ID of the DASD + * @2: operation mode + * @3: number of cylinders + * Description: + * The DASD cache mode has been changed. See the storage system documentation + * for information about the different cache operation modes. + * User action: + * None. + */ + +/*? + * Text: "%s: The DASD cannot be formatted with block size %u\n" + * Severity: Warning + * Parameter: + * @1: bus ID of the DASD + * @2: block size + * Description: + * The block size specified for a format instruction is not valid. The block + * size must be between 512 and 4096 byte and must be a power of 2. + * User action: + * Call the format command with a supported block size. + */ + +/*? + * Text: "%s: The UID of the DASD has changed\n" + * Severity: Error + * Parameter: + * @1: bus ID of the DASD + * Description: + * The Unique Identifier (UID) of a DASD that is currently in use has changed. + * This indicates that the physical disk has been replaced. + * User action: + * None if the replacement was intentional. + * If the disk change is not expected, stop using the disk to prevent possible + * data loss. +*/ + + +/* dasd_3990_erp */ + +/*? + * Text: "%s: is offline or not installed - INTERVENTION REQUIRED!!\n" + * Severity: Error + * Parameter: + * @1: bus ID of the DASD + * Description: + * The DASD to be accessed is not in an accessible state. The I/O operation + * will wait until the device is operational again. This is an operating system + * independent message that is issued by the storage system. + * User action: + * Make the DASD accessible again. For details see the storage system + * documentation. + */ + +/*? + * Text: "%s: The DASD cannot be reached on any path (lpum=%x/opm=%x)\n" + * Severity: Error + * Parameter: + * @1: bus ID of the DASD + * @2: last path used mask + * @3: online path mask + * Description: + * After a path to the DASD failed, the error recovery procedure of the DASD + * device driver tried but failed to reconnect the DASD through an alternative + * path. + * User action: + * Ensure that the cabling between the storage server and the mainframe + * system is securely in place. Check the file systems on the DASD when it is + * accessible again. + */ + +/*? + * Text: "%s: Unable to allocate DCTL-CQR\n" + * Severity: Error + * Parameter: + * @1: bus ID of the DASD + * Description: + * This is an internal error. + * User action: + * Contact your support organization. + */ + +/*? + * Text: "%s: FORMAT 0 - Invalid Parameter\n" + * Severity: Warning + * Parameter: + * @1: bus ID of the DASD + * Description: + * A data argument of a command is not valid. This is an operating system + * independent message that is issued by the storage system. + * User action: + * For more information see the documentation of your storage system. + */ + +/*? + * Text: "%s: FORMAT 0 - DPS Installation Check\n" + * Severity: Warning + * Parameter: + * @1: bus ID of the DASD + * Description: + * This operating system independent message is issued by the storage system + * for one of the following reasons: + * - A 3380 Model D or E DASD does not have the Dynamic Path Selection (DPS) + * feature in the DASD A-unit. + * - The device type of an attached DASD is not supported by the firmware. + * - A type 3390 DASD is attached to a 3 MB channel. + * User action: + * For more information see the documentation of your storage system. + */ + +/*? + * Text: "%s: FORMAT 2 - Reserved\n" + * Severity: Warning + * Parameter: + * @1: bus ID of the DASD + * Description: + * This is an operating system independent message that is issued by the + * storage system. + * User action: + * For more information see the documentation of your storage system. + */ + +/*? + * Text: "%s: FORMAT 1 - Drive motor switch is off\n" + * Severity: Warning + * Parameter: + * @1: bus ID of the DASD + * Description: + * This is an operating system independent message that is issued by the + * storage system. + * User action: + * For more information see the documentation of your storage system. + */ + +/*? + * Text: "%s: FORMAT 0 - CCW Count less than required\n" + * Severity: Warning + * Parameter: + * @1: bus ID of the DASD + * Description: + * The CCW count of a command is less than required. This is an operating + * system independent message that is issued by the storage system. + * User action: + * For more information see the documentation of your storage system. + */ + +/*? + * Text: "%s: FORMAT 0 - Channel requested ... %02x\n" + * Severity: Warning + * Parameter: + * @1: bus ID of the DASD + * @2: reason code + * Description: + * This is an operating system independent message that is issued by the + * storage system. The possible reason codes indicate the following problems: + * 00 No Message. + * 01 The channel has requested unit check sense data. + * 02 The channel has requested retry and retry is exhausted. + * 03 A SA Check-2 error has occurred. This sense is presented with + * Equipment Check. + * 04 The channel has requested retry and retry is not possible. + * User action: + * For more information see the documentation of your storage system. + */ + +/*? + * Text: "%s: FORMAT 0 - Status Not As Required: reason %02x\n" + * Severity: Warning + * Parameter: + * @1: bus ID of the DASD + * @2: reason code + * Description: + * This is an operating system independent message that is issued by the + * storage system. There are several potential reasons for this message; + * byte 8 contains the reason code. + * User action: + * For more information see the documentation of your storage system. + */ + +/*? + * Text: "%s: FORMAT 4 - Reserved\n" + * Severity: Warning + * Parameter: + * @1: bus ID of the DASD + * Description: + * This is an operating system independent message that is issued by the + * storage system. + * User action: + * For more information see the documentation of your storage system. + */ + +/*? + * Text: "%s: FORMAT 1 - Device status 1 not valid\n" + * Severity: Warning + * Parameter: + * @1: bus ID of the DASD + * Description: + * This is an operating system independent message that is issued by the + * storage system. + * User action: + * For more information see the documentation of your storage system. + */ + +/*? + * Text: "%s: FORMAT 0 - Storage Path Restart\n" + * Severity: Warning + * Parameter: + * @1: bus ID of the DASD + * Description: + * An operation for an active channel program was queued in a Storage Control + * when a warm start was received by the path. This is an operating system + * independent message that is issued by the storage system. + * User action: + * For more information see the documentation of your storage system. + */ + +/*? + * Text: "%s: FORMAT 0 - Reset Notification\n" + * Severity: Warning + * Parameter: + * @1: bus ID of the DASD + * Description: + * A system reset or its equivalent was received on an interface. The Unit + * Check that generates this sense is posted to the next channel initiated + * selection following the resetting event. This is an operating system + * independent message that is issued by the storage system. + * User action: + * For more information see the documentation of your storage system. + */ + +/*? + * Text: "%s: FORMAT 0 - Invalid Command Sequence\n" + * Severity: Warning + * Parameter: + * @1: bus ID of the DASD + * Description: + * An incorrect sequence of commands has occurred. This is an operating system + * independent message that is issued by the storage system. + * User action: + * For more information see the documentation of your storage system. + */ + +/*? + * Text: "%s: FORMAT 1 - Missing device address bit\n" + * Severity: Warning + * Parameter: + * @1: bus ID of the DASD + * Description: + * This is an operating system independent message that is issued by the + * storage system. + * User action: + * For more information see the documentation of your storage system. + */ + +/*? + * Text: "%s: FORMAT F - Subsystem Processing Error\n" + * Severity: Warning + * Parameter: + * @1: bus ID of the DASD + * Description: + * A firmware logic error has been detected. This is an operating system + * independent message that is issued by the storage system. + * User action: + * For more information see the documentation of your storage system. + */ + +/*? + * Text: "%s: FORMAT 1 - Seek incomplete\n" + * Severity: Warning + * Parameter: + * @1: bus ID of the DASD + * Description: + * This is an operating system independent message that is issued by the + * storage system. + * User action: + * For more information see the documentation of your storage system. + */ + +/*? + * Text: "%s: FORMAT 0 - Invalid Command\n" + * Severity: Warning + * Parameter: + * @1: bus ID of the DASD + * Description: + * A command was issued that is not in the 2107/1750 command set. + * This is an operating system independent message that is issued by the + * storage system. + * User action: + * For more information see the documentation of your storage system. + */ + +/*? + * Text: "%s: FORMAT 0 - Reserved\n" + * Severity: Warning + * Parameter: + * @1: bus ID of the DASD + * Description: + * This is an operating system independent message that is issued by the + * storage system. + * User action: + * For more information see the documentation of your storage system. + */ + +/*? + * Text: "%s: FORMAT 0 - Command Invalid on Secondary Address\n" + * Severity: Warning + * Parameter: + * @1: bus ID of the DASD + * Description: + * A command or order not allowed on a PPRC secondary device has been received + * by the secondary device. This is an operating system independent message + * that is issued by the storage system. + * User action: + * For more information see the documentation of your storage system. + */ + +/*? + * Text: "%s: FORMAT 0 - Invalid Defective/Alternate Track Pointer\n" + * Severity: Warning + * Parameter: + * @1: bus ID of the DASD + * Description: + * A defective track has been accessed. The subsystem generates an invalid + * Defective/Alternate Track Pointer as a part of RAID Recovery. + * This is an operating system independent message that is issued by the + * storage system. + * User action: + * For more information see the documentation of your storage system. + */ + +/*? + * Text: "%s: FORMAT 0 - Channel Returned with Incorrect retry CCW\n" + * Severity: Warning + * Parameter: + * @1: bus ID of the DASD + * Description: + * A command portion of the CCW returned after a command retry sequence does + * not match the command for which retry was signaled. This is an operating + * system independent message that is issued by the storage system. + * User action: + * For more information see the documentation of your storage system. + */ + +/*? + * Text: "%s: FORMAT 0 - Diagnostic of Special Command Violates File Mask\n" + * Severity: Warning + * Parameter: + * @1: bus ID of the DASD + * Description: + * A command is not allowed under the Access Authorization specified by the + * File Mask. This is an operating system independent message that is issued + * by the storage system. + * User action: + * For more information see the documentation of your storage system. + */ + +/*? + * Text: "%s: FORMAT 1 - Head address does not compare\n" + * Severity: Warning + * Parameter: + * @1: bus ID of the DASD + * Description: + * This is an operating system independent message that is issued by the + * storage system. + * User action: + * For more information see the documentation of your storage system. + */ + +/*? + * Text: "%s: FORMAT 1 - Reserved\n" + * Severity: Warning + * Parameter: + * @1: bus ID of the DASD + * Description: + * This is an operating system independent message that is issued by the + * storage system. + * User action: + * For more information see the documentation of your storage system. + */ + +/*? + * Text: "%s: FORMAT 1 - Device did not respond to selection\n" + * Severity: Warning + * Parameter: + * @1: bus ID of the DASD + * Description: + * This is an operating system independent message that is issued by the + * storage system. + * User action: + * For more information see the documentation of your storage system. + */ + +/*? + * Text: "%s: FORMAT 1 - Device check-2 error or Set Sector is not complete\n" + * Severity: Warning + * Parameter: + * @1: bus ID of the DASD + * Description: + * This is an operating system independent message that is issued by the + * storage system. + * User action: + * For more information see the documentation of your storage system. + */ + +/*? + * Text: "%s: FORMAT 0 - Device Error Source\n" + * Severity: Warning + * Parameter: + * @1: bus ID of the DASD + * Description: + * The device has completed soft error logging. This is an operating system + * independent message that is issued by the storage system. + * User action: + * For more information see the documentation of your storage system. + */ + +/*? + * Text: "%s: FORMAT 0 - Data Pinned for Device\n" + * Severity: Warning + * Parameter: + * @1: bus ID of the DASD + * Description: + * Modified data in cache or in persistent storage exists for the DASD. The + * data cannot be destaged to the device. This track is the first track pinned + * for this device. This is an operating system independent message that is + * issued by the storage system. + * User action: + * For more information see the documentation of your storage system. + */ + +/*? + * Text: "%s: FORMAT 6 - Overrun on channel C\n" + * Severity: Warning + * Parameter: + * @1: bus ID of the DASD + * Description: + * This is an operating system independent message that is issued by the + * storage system. + * User action: + * For more information see the documentation of your storage system. + */ + +/*? + * Text: "%s: FORMAT 1 - Device Status 1 not as expected\n" + * Severity: Warning + * Parameter: + * @1: bus ID of the DASD + * Description: + * This is an operating system independent message that is issued by the + * storage system. + * User action: + * For more information see the documentation of your storage system. + */ + +/*? + * Text: "%s: FORMAT 0 - Device Fenced - device = %02x\n" + * Severity: Warning + * Parameter: + * @1: bus ID of the DASD + * @2: sense data byte 4 + * Description: + * The device shown in sense byte 4 has been fenced. This is an operating + * system independent message that is issued by the storage system. + * User action: + * For more information see the documentation of your storage system. + */ + +/*? + * Text: "%s: FORMAT 1 - Interruption cannot be reset\n" + * Severity: Warning + * Parameter: + * @1: bus ID of the DASD + * Description: + * This is an operating system independent message that is issued by the + * storage system. + * User action: + * For more information see the documentation of your storage system. + */ + +/*? + * Text: "%s: FORMAT 1 - Index missing\n" + * Severity: Warning + * Parameter: + * @1: bus ID of the DASD + * Description: + * This is an operating system independent message that is issued by the + * storage system. + * User action: + * For more information see the documentation of your storage system. + */ + +/*? + * Text: "%s: FORMAT F - DASD Fast Write inhibited\n" + * Severity: Warning + * Parameter: + * @1: bus ID of the DASD + * Description: + * DASD Fast Write is not allowed because of a nonvolatile storage battery + * check condition. This is an operating system independent message that is + * issued by the storage system. + * User action: + * For more information see the documentation of your storage system. + */ + +/*? + * Text: "%s: FORMAT 7 - Invalid tag-in for an extended command sequence\n" + * Severity: Warning + * Parameter: + * @1: bus ID of the DASD + * Description: + * This is an operating system independent message that is issued by the + * storage system. + * User action: + * For more information see the documentation of your storage system. + */ + +/*? + * Text: "%s: FORMAT 4 - Key area error; offset active\n" + * Severity: Warning + * Parameter: + * @1: bus ID of the DASD + * Description: + * This is an operating system independent message that is issued by the + * storage system. + * User action: + * For more information see the documentation of your storage system. + */ + +/*? + * Text: "%s: FORMAT 4 - Count area error; offset active\n" + * Severity: Warning + * Parameter: + * @1: bus ID of the DASD + * Description: + * This is an operating system independent message that is issued by the + * storage system. + * User action: + * For more information see the documentation of your storage system. + */ + +/*? + * Text: "%s: FORMAT 1 - Track physical address did not compare\n" + * Severity: Warning + * Parameter: + * @1: bus ID of the DASD + * Description: + * This is an operating system independent message that is issued by the + * storage system. + * User action: + * For more information see the documentation of your storage system. + */ + +/*? + * Text: "%s: FORMAT 2 - 3990 check-2 error\n" + * Severity: Warning + * Parameter: + * @1: bus ID of the DASD + * Description: + * This is an operating system independent message that is issued by the + * storage system. + * User action: + * For more information see the documentation of your storage system. + */ + +/*? + * Text: "%s: FORMAT 1 - Offset active cannot be reset\n" + * Severity: Warning + * Parameter: + * @1: bus ID of the DASD + * Description: + * This is an operating system independent message that is issued by the + * storage system. + * User action: + * For more information see the documentation of your storage system. + */ + +/*? + * Text: "%s: FORMAT 7 - RCC 1 and RCC 2 sequences not successful\n" + * Severity: Warning + * Parameter: + * @1: bus ID of the DASD + * Description: + * This is an operating system independent message that is issued by the + * storage system. + * User action: + * For more information see the documentation of your storage system. + */ + +/*? + * Text: "%s: FORMAT 4 - No sync byte in count address area; offset active\n" + * Severity: Warning + * Parameter: + * @1: bus ID of the DASD + * Description: + * This is an operating system independent message that is issued by the + * storage system. + * User action: + * For more information see the documentation of your storage system. + */ + +/*? + * Text: "%s: FORMAT 4 - Data area error\n" + * Severity: Warning + * Parameter: + * @1: bus ID of the DASD + * Description: + * This is an operating system independent message that is issued by the + * storage system. + * User action: + * For more information see the documentation of your storage system. + */ + +/*? + * Text: "%s: FORMAT 6 - Overrun on channel A\n" + * Severity: Warning + * Parameter: + * @1: bus ID of the DASD + * Description: + * This is an operating system independent message that is issued by the + * storage system. + * User action: + * For more information see the documentation of your storage system. + */ + +/*? + * Text: "%s: FORMAT 4 - No sync byte in count address area\n" + * Severity: Warning + * Parameter: + * @1: bus ID of the DASD + * Description: + * This is an operating system independent message that is issued by the + * storage system. + * User action: + * For more information see the documentation of your storage system. + */ + +/*? + * Text: "%s: FORMAT 5 - Data Check in the key area\n" + * Severity: Warning + * Parameter: + * @1: bus ID of the DASD + * Description: + * This is an operating system independent message that is issued by the + * storage system. + * User action: + * For more information see the documentation of your storage system. + */ + +/*? + * Text: "%s: FORMAT F - Caching status reset to default\n" + * Severity: Warning + * Parameter: + * @1: bus ID of the DASD + * Description: + * The storage director has assigned two new subsystem status devices and + * resets the status to its default value. This is an operating system + * independent message that is issued by the storage system. + * User action: + * For more information see the documentation of your storage system. + */ + +/*? + * Text: "%s: FORMAT 5 - Data Check in the data area; offset active\n" + * Severity: Warning + * Parameter: + * @1: bus ID of the DASD + * Description: + * This is an operating system independent message that is issued by the + * storage system. + * User action: + * For more information see the documentation of your storage system. + */ + +/*? + * Text: "%s: FORMAT 5 - Reserved\n" + * Severity: Warning + * Parameter: + * @1: bus ID of the DASD + * Description: + * This is an operating system independent message that is issued by the + * storage system. + * User action: + * For more information see the documentation of your storage system. + */ + +/*? + * Text: "%s: FORMAT 1 - Device not ready\n" + * Severity: Warning + * Parameter: + * @1: bus ID of the DASD + * Description: + * This is an operating system independent message that is issued by the + * storage system. + * User action: + * For more information see the documentation of your storage system. + */ + +/*? + * Text: "%s: FORMAT 4 - No sync byte in key area\n" + * Severity: Warning + * Parameter: + * @1: bus ID of the DASD + * Description: + * This is an operating system independent message that is issued by the + * storage system. + * User action: + * For more information see the documentation of your storage system. + */ + +/*? + * Text: "%s: FORMAT 8 - DASD controller failed to set or reset the long busy latch\n" + * Severity: Warning + * Parameter: + * @1: bus ID of the DASD + * Description: + * This is an operating system independent message that is issued by the + * storage system. + * User action: + * For more information see the documentation of your storage system. + */ + +/*? + * Text: "%s: FORMAT 1 - Cylinder address did not compare\n" + * Severity: Warning + * Parameter: + * @1: bus ID of the DASD + * Description: + * This is an operating system independent message that is issued by the + * storage system. + * User action: + * For more information see the documentation of your storage system. + */ + +/*? + * Text: "%s: FORMAT 3 - Reserved\n" + * Severity: Warning + * Parameter: + * @1: bus ID of the DASD + * Description: + * This is an operating system independent message that is issued by the + * storage system. + * User action: + * For more information see the documentation of your storage system. + */ + +/*? + * Text: "%s: FORMAT 4 - No sync byte in data area; offset active\n" + * Severity: Warning + * Parameter: + * @1: bus ID of the DASD + * Description: + * This is an operating system independent message that is issued by the + * storage system. + * User action: + * For more information see the documentation of your storage system. + */ + +/*? + * Text: "%s: FORMAT 2 - Support facility errors\n" + * Severity: Warning + * Parameter: + * @1: bus ID of the DASD + * Description: + * This is an operating system independent message that is issued by the + * storage system. + * User action: + * For more information see the documentation of your storage system. + */ + +/*? + * Text: "%s: FORMAT 4 - Key area error\n" + * Severity: Warning + * Parameter: + * @1: bus ID of the DASD + * Description: + * This is an operating system independent message that is issued by the + * storage system. + * User action: + * For more information see the documentation of your storage system. + */ + +/*? + * Text: "%s: FORMAT 8 - End operation with transfer count not zero\n" + * Severity: Warning + * Parameter: + * @1: bus ID of the DASD + * Description: + * This is an operating system independent message that is issued by the + * storage system. + * User action: + * For more information see the documentation of your storage system. + */ + +/*? + * Text: "%s: FORMAT 2 - Microcode detected error %02x\n" + * Severity: Warning + * Parameter: + * @1: bus ID of the DASD + * @2: error code + * Description: + * This is an operating system independent message that is issued by the + * storage system. + * User action: + * For more information see the documentation of your storage system. + */ + +/*? + * Text: "%s: FORMAT 5 - Data Check in the count area; offset active\n" + * Severity: Warning + * Parameter: + * @1: bus ID of the DASD + * Description: + * This is an operating system independent message that is issued by the + * storage system. + * User action: + * For more information see the documentation of your storage system. + */ + +/*? + * Text: "%s: FORMAT 3 - Allegiance terminated\n" + * Severity: Warning + * Parameter: + * @1: bus ID of the DASD + * Description: + * Allegiance terminated because of a Reset Allegiance or an Unconditional + * Reserve command on another channel. This is an operating system independent + * message that is issued by the storage system. + * User action: + * For more information see the documentation of your storage system. + */ + +/*? + * Text: "%s: FORMAT 4 - Home address area error\n" + * Severity: Warning + * Parameter: + * @1: bus ID of the DASD + * Description: + * This is an operating system independent message that is issued by the + * storage system. + * User action: + * For more information see the documentation of your storage system. + */ + +/*? + * Text: "%s: FORMAT 4 - Count area error\n" + * Severity: Warning + * Parameter: + * @1: bus ID of the DASD + * Description: + * This is an operating system independent message that is issued by the + * storage system. + * User action: + * For more information see the documentation of your storage system. + */ + +/*? + * Text: "%s: FORMAT 7 - Invalid tag-in during selection sequence\n" + * Severity: Warning + * Parameter: + * @1: bus ID of the DASD + * Description: + * This is an operating system independent message that is issued by the + * storage system. + * User action: + * For more information see the documentation of your storage system. + */ + +/*? + * Text: "%s: FORMAT 4 - No sync byte in data area\n" + * Severity: Warning + * Parameter: + * @1: bus ID of the DASD + * Description: + * This is an operating system independent message that is issued by the + * storage system. + * User action: + * For more information see the documentation of your storage system. + */ + +/*? + * Text: "%s: FORMAT 4 - No sync byte in home address area; offset active\n" + * Severity: Warning + * Parameter: + * @1: bus ID of the DASD + * Description: + * This is an operating system independent message that is issued by the + * storage system. + * User action: + * For more information see the documentation of your storage system. + */ + +/*? + * Text: "%s: FORMAT 4 - Home address area error; offset active\n" + * Severity: Warning + * Parameter: + * @1: bus ID of the DASD + * Description: + * This is an operating system independent message that is issued by the + * storage system. + * User action: + * For more information see the documentation of your storage system. + */ + +/*? + * Text: "%s: FORMAT 4 - Data area error; offset active\n" + * Severity: Warning + * Parameter: + * @1: bus ID of the DASD + * Description: + * This is an operating system independent message that is issued by the + * storage system. + * User action: + * For more information see the documentation of your storage system. + */ + +/*? + * Text: "%s: FORMAT 4 - No sync byte in home address area\n" + * Severity: Warning + * Parameter: + * @1: bus ID of the DASD + * Description: + * This is an operating system independent message that is issued by the + * storage system. + * User action: + * For more information see the documentation of your storage system. + */ + +/*? + * Text: "%s: FORMAT 5 - Data Check in the home address area; offset active\n" + * Severity: Warning + * Parameter: + * @1: bus ID of the DASD + * Description: + * This is an operating system independent message that is issued by the + * storage system. + * User action: + * For more information see the documentation of your storage system. + */ + +/*? + * Text: "%s: FORMAT 5 - Data Check in the home address area\n" + * Severity: Warning + * Parameter: + * @1: bus ID of the DASD + * Description: + * This is an operating system independent message that is issued by the + * storage system. + * User action: + * For more information see the documentation of your storage system. + */ + +/*? + * Text: "%s: FORMAT 5 - Data Check in the count area\n" + * Severity: Warning + * Parameter: + * @1: bus ID of the DASD + * Description: + * This is an operating system independent message that is issued by the + * storage system. + * User action: + * For more information see the documentation of your storage system. + */ + +/*? + * Text: "%s: FORMAT 4 - No sync byte in key area; offset active\n" + * Severity: Warning + * Parameter: + * @1: bus ID of the DASD + * Description: + * This is an operating system independent message that is issued by the + * storage system. + * User action: + * For more information see the documentation of your storage system. + */ + +/*? + * Text: "%s: FORMAT 7 - Invalid DCC selection response or timeout\n" + * Severity: Warning + * Parameter: + * @1: bus ID of the DASD + * Description: + * This is an operating system independent message that is issued by the + * storage system. + * User action: + * For more information see the documentation of your storage system. + */ + +/*? + * Text: "%s: FORMAT 5 - Data Check in the data area\n" + * Severity: Warning + * Parameter: + * @1: bus ID of the DASD + * Description: + * This is an operating system independent message that is issued by the + * storage system. + * User action: + * For more information see the documentation of your storage system. + */ + +/*? + * Text: "%s: FORMAT F - Operation Terminated\n" + * Severity: Warning + * Parameter: + * @1: bus ID of the DASD + * Description: + * The storage system ends an operation related to an active channel program + * when termination and redrive are required and logging is not desired. + * This is an operating system independent message that is issued by the + * storage system. + * User action: + * For more information see the documentation of your storage system. + */ + +/*? + * Text: "%s: FORMAT 6 - Overrun on channel B\n" + * Severity: Warning + * Parameter: + * @1: bus ID of the DASD + * Description: + * This is an operating system independent message that is issued by the + * storage system. + * User action: + * For more information see the documentation of your storage system. + */ + +/*? + * Text: "%s: FORMAT 5 - Data Check in the key area; offset active\n" + * Severity: Warning + * Parameter: + * @1: bus ID of the DASD + * Description: + * This is an operating system independent message that is issued by the + * storage system. + * User action: + * For more information see the documentation of your storage system. + */ + +/*? + * Text: "%s: FORMAT F - Volume is suspended duplex\n" + * Severity: Warning + * Parameter: + * @1: bus ID of the DASD + * Description: + * The duplex pair volume has entered the suspended duplex state because of a + * failure. This is an operating system independent message that is issued by + * the storage system. + * User action: + * For more information see the documentation of your storage system. + */ + +/*? + * Text: "%s: FORMAT 6 - Overrun on channel D\n" + * Severity: Warning + * Parameter: + * @1: bus ID of the DASD + * Description: + * This is an operating system independent message that is issued by the + * storage system. + * User action: + * For more information see the documentation of your storage system. + */ + +/*? + * Text: "%s: FORMAT 7 - RCC 1 sequence not successful\n" + * Severity: Warning + * Parameter: + * @1: bus ID of the DASD + * Description: + * This is an operating system independent message that is issued by the + * storage system. + * User action: + * For more information see the documentation of your storage system. + */ + +/*? + * Text: "%s: FORMAT 6 - Overrun on channel E\n" + * Severity: Warning + * Parameter: + * @1: bus ID of the DASD + * Description: + * This is an operating system independent message that is issued by the + * storage system. + * User action: + * For more information see the documentation of your storage system. + */ + +/*? + * Text: "%s: FORMAT 7 - 3990 microcode time out when stopping selection\n" + * Severity: Warning + * Parameter: + * @1: bus ID of the DASD + * Description: + * This is an operating system independent message that is issued by the + * storage system. + * User action: + * For more information see the documentation of your storage system. + */ + +/*? + * Text: "%s: FORMAT 6 - Overrun on channel F\n" + * Severity: Warning + * Parameter: + * @1: bus ID of the DASD + * Description: + * This is an operating system independent message that is issued by the + * storage system. + * User action: + * For more information see the documentation of your storage system. + */ + +/*? + * Text: "%s: FORMAT 6 - Reserved\n" + * Severity: Warning + * Parameter: + * @1: bus ID of the DASD + * Description: + * This is an operating system independent message that is issued by the + * storage system. + * User action: + * For more information see the documentation of your storage system. + */ + +/*? + * Text: "%s: FORMAT 7 - RCC initiated by a connection check alert\n" + * Severity: Warning + * Parameter: + * @1: bus ID of the DASD + * Description: + * This is an operating system independent message that is issued by the + * storage system. + * User action: + * For more information see the documentation of your storage system. + */ + +/*? + * Text: "%s: FORMAT 6 - Overrun on channel G\n" + * Severity: Warning + * Parameter: + * @1: bus ID of the DASD + * Description: + * This is an operating system independent message that is issued by the + * storage system. + * User action: + * For more information see the documentation of your storage system. + */ + +/*? + * Text: "%s: FORMAT 7 - extra RCC required\n" + * Severity: Warning + * Parameter: + * @1: bus ID of the DASD + * Description: + * This is an operating system independent message that is issued by the + * storage system. + * User action: + * For more information see the documentation of your storage system. + */ + +/*? + * Text: "%s: FORMAT 6 - Overrun on channel H\n" + * Severity: Warning + * Parameter: + * @1: bus ID of the DASD + * Description: + * This is an operating system independent message that is issued by the + * storage system. + * User action: + * For more information see the documentation of your storage system. + */ + +/*? + * Text: "%s: FORMAT 8 - Unexpected end operation response code\n" + * Severity: Warning + * Parameter: + * @1: bus ID of the DASD + * Description: + * This is an operating system independent message that is issued by the + * storage system. + * User action: + * For more information see the documentation of your storage system. + */ + +/*? + * Text: "%s: FORMAT 7 - Permanent path error (DASD controller not available)\n" + * Severity: Warning + * Parameter: + * @1: bus ID of the DASD + * Description: + * This is an operating system independent message that is issued by the + * storage system. + * User action: + * For more information see the documentation of your storage system. + */ + +/*? + * Text: "%s: FORMAT 7 - Missing end operation; device transfer incomplete\n" + * Severity: Warning + * Parameter: + * @1: bus ID of the DASD + * Description: + * This is an operating system independent message that is issued by the + * storage system. + * User action: + * For more information see the documentation of your storage system. + */ + +/*? + * Text: "%s: FORMAT F - Reserved\n" + * Severity: Warning + * Parameter: + * @1: bus ID of the DASD + * Description: + * This is an operating system independent message that is issued by the + * storage system. + * User action: + * For more information see the documentation of your storage system. + */ + +/*? + * Text: "%s: FORMAT F - Cache or nonvolatile storage equipment failure\n" + * Severity: Warning + * Parameter: + * @1: bus ID of the DASD + * Description: + * An equipment failure has occurred in the cache storage or nonvolatile + * storage of the storage system. This is an operating system independent + * message that is issued by the storage system. + * User action: + * For more information see the documentation of your storage system. + */ + +/*? + * Text: "%s: FORMAT 8 - DPS cannot be filled\n" + * Severity: Warning + * Parameter: + * @1: bus ID of the DASD + * Description: + * This is an operating system independent message that is issued by the + * storage system. + * User action: + * For more information see the documentation of your storage system. + */ + +/*? + * Text: "%s: FORMAT 8 - Error correction code hardware fault\n" + * Severity: Warning + * Parameter: + * @1: bus ID of the DASD + * Description: + * This is an operating system independent message that is issued by the + * storage system. + * User action: + * For more information see the documentation of your storage system. + */ + +/*? + * Text: "%s: FORMAT 7 - Missing end operation; device transfer complete\n" + * Severity: Warning + * Parameter: + * @1: bus ID of the DASD + * Description: + * This is an operating system independent message that is issued by the + * storage system. + * User action: + * For more information see the documentation of your storage system. + */ + +/*? + * Text: "%s: FORMAT 7 - DASD controller not available on disconnected command chain\n" + * Severity: Warning + * Parameter: + * @1: bus ID of the DASD + * Description: + * This is an operating system independent message that is issued by the + * storage system. + * User action: + * For more information see the documentation of your storage system. + */ + +/*? + * Text: "%s: FORMAT 8 - No interruption from device during a command chain\n" + * Severity: Warning + * Parameter: + * @1: bus ID of the DASD + * Description: + * This is an operating system independent message that is issued by the + * storage system. + * User action: + * For more information see the documentation of your storage system. + */ + +/*? + * Text: "%s: FORMAT 7 - No response to selection after a poll interruption\n" + * Severity: Warning + * Parameter: + * @1: bus ID of the DASD + * Description: + * This is an operating system independent message that is issued by the + * storage system. + * User action: + * For more information see the documentation of your storage system. + */ + +/*? + * Text: "%s: FORMAT 9 - Track physical address did not compare while oriented\n" + * Severity: Warning + * Parameter: + * @1: bus ID of the DASD + * Description: + * This is an operating system independent message that is issued by the + * storage system. + * User action: + * For more information see the documentation of your storage system. + */ + +/*? + * Text: "%s: FORMAT 9 - Head address did not compare\n" + * Severity: Warning + * Parameter: + * @1: bus ID of the DASD + * Description: + * This is an operating system independent message that is issued by the + * storage system. + * User action: + * For more information see the documentation of your storage system. + */ + +/*? + * Text: "%s: FORMAT 7 - Invalid tag-in for an immediate command sequence\n" + * Severity: Warning + * Parameter: + * @1: bus ID of the DASD + * Description: + * This is an operating system independent message that is issued by the + * storage system. + * User action: + * For more information see the documentation of your storage system. + */ + +/*? + * Text: "%s: FORMAT 9 - Cylinder address did not compare\n" + * Severity: Warning + * Parameter: + * @1: bus ID of the DASD + * Description: + * This is an operating system independent message that is issued by the + * storage system. + * User action: + * For more information see the documentation of your storage system. + */ + +/*? + * Text: "%s: FORMAT 8 - DPS checks after a system reset or selective reset\n" + * Severity: Warning + * Parameter: + * @1: bus ID of the DASD + * Description: + * This is an operating system independent message that is issued by the + * storage system. + * User action: + * For more information see the documentation of your storage system. + */ + +/*? + * Text: "%s: FORMAT F - Caching reinitiated\n" + * Severity: Warning + * Parameter: + * @1: bus ID of the DASD + * Description: + * Caching has been automatically reinitiated following an error. + * This is an operating system independent message that is issued by the + * storage system. + * User action: + * For more information see the documentation of your storage system. + */ + +/*? + * Text: "%s: FORMAT 8 - End operation with transfer count zero\n" + * Severity: Warning + * Parameter: + * @1: bus ID of the DASD + * Description: + * This is an operating system independent message that is issued by the + * storage system. + * User action: + * For more information see the documentation of your storage system. + */ + +/*? + * Text: "%s: FORMAT 7 - Reserved\n" + * Severity: Warning + * Parameter: + * @1: bus ID of the DASD + * Description: + * This is an operating system independent message that is issued by the + * storage system. + * User action: + * For more information see the documentation of your storage system. + */ + +/*? + * Text: "%s: FORMAT 9 - Reserved\n" + * Severity: Warning + * Parameter: + * @1: bus ID of the DASD + * Description: + * This is an operating system independent message that is issued by the + * storage system. + * User action: + * For more information see the documentation of your storage system. + */ + +/*? + * Text: "%s: FORMAT 8 - Short busy time-out during device selection\n" + * Severity: Warning + * Parameter: + * @1: bus ID of the DASD + * Description: + * This is an operating system independent message that is issued by the + * storage system. + * User action: + * For more information see the documentation of your storage system. + */ + +/*? + * Text: "%s: FORMAT F - Caching terminated\n" + * Severity: Warning + * Parameter: + * @1: bus ID of the DASD + * Description: + * The storage system was unable to initiate caching or had to suspend caching + * for a 3990 control unit. If this problem is caused by a failure condition, + * an additional message will provide more information about the failure. + * This is an operating system independent message that is issued by the + * storage system. + * User action: + * Check for additional messages that point out possible failures. For more + * information see the documentation of your storage system. + */ + +/*? + * Text: "%s: FORMAT F - Subsystem status cannot be determined\n" + * Severity: Warning + * Parameter: + * @1: bus ID of the DASD + * Description: + * The status of a DASD Fast Write or PPRC volume cannot be determined. + * This is an operating system independent message that is issued by the + * storage system. + * User action: + * For more information see the documentation of your storage system. + */ + +/*? + * Text: "%s: FORMAT F - Nonvolatile storage terminated\n" + * Severity: Warning + * Parameter: + * @1: bus ID of the DASD + * Description: + * The storage director has stopped using nonvolatile storage or cannot + * initiate nonvolatile storage. If this problem is caused by a failure, an + * additional message will provide more information about the failure. This is + * an operating system independent message that is issued by the storage system. + * User action: + * Check for additional messages that point out possible failures. For more + * information see the documentation of your storage system. + */ + +/*? + * Text: "%s: FORMAT 8 - Reserved\n" + * Severity: Warning + * Parameter: + * @1: bus ID of the DASD + * Description: + * This is an operating system independent message that is issued by the + * storage system. + * User action: + * For more information see the documentation of your storage system. + */ + +/*? + * Text: "%s: Write inhibited path encountered\n" + * Severity: Informational + * Parameter: + * @1: bus ID of the DASD + * Description: + * This is an informational message. + * User action: + * None. + */ + +/*? + * Text: "%s: FORMAT 9 - Device check-2 error\n" + * Severity: Warning + * Parameter: + * @1: bus ID of the DASD + * Description: + * This is an operating system independent message that is issued by the + * storage system. + * User action: + * For more information see the documentation of your storage system. + */ + +/*? + * Text: "%s: FORMAT F - Track format incorrect\n" + * Severity: Warning + * Parameter: + * @1: bus ID of the DASD + * Description: + * A track format error occurred while data was being written to the DASD or + * while a duplex pair was being established. This is an operating system + * independent message that is issued by the storage system. + * User action: + * For more information see the documentation of your storage system. + */ + +/*? + * Text: "%s: FORMAT F - Cache fast write access not authorized\n" + * Severity: Warning + * Parameter: + * @1: bus ID of the DASD + * Description: + * A request for Cache Fast Write Data access cannot be satisfied because + * of missing access authorization for the storage system. This is an operating + * system independent message that is issued by the storage system. + * User action: + * For more information see the documentation of your storage system. + */ + +/*? + * Text: "%s: Data recovered during retry with PCI fetch mode active\n" + * Severity: Emerg + * Parameter: + * @1: bus ID of the DASD + * Description: + * A data error has been recovered on the storages system but the Linux file + * system cannot be informed about the data mismatch. To prevent Linux from + * running with incorrect data, the DASD device driver will trigger a kernel + * panic. + * User action: + * Reset your real or virtual hardware and reboot Linux. + */ + +/*? + * Text: "%s: The specified record was not found\n" + * Severity: Error + * Parameter: + * @1: bus ID of the DASD + * Description: + * The record to be accessed does not exist. The DASD might be unformatted + * or defect. + * User action: + * Try to format the DASD or replace it. + * ATTENTION: Formatting irreversibly destroys all data on the DASD. + */ + +/*? + * Text: "%s: ERP %p (%02x) refers to %p\n" + * Severity: Error + * Parameter: + * @1: bus ID of the DASD + * @2: pointer to ERP + * @3: ERP status + * @4: cqr + * Description: + * This message provides debug information for the enhanced error recovery + * procedure (ERP). + * User action: + * If you do not need this information, you can suppress this message by + * switching off ERP logging, for example, by writing '1' to the 'erplog' + * sysfs attribute of the DASD. + */ + +/*? + * Text: "%s: ERP chain at END of ERP-ACTION\n" + * Severity: Error + * Parameter: + * @1: bus ID of the DASD + * Description: + * This message provides debug information for the enhanced error recovery + * procedure (ERP). + * User action: + * If you do not need this information, you can suppress this message by + * switching off ERP logging, for example, by writing '1' to the 'erplog' + * sysfs attribute of the DASD. + */ + +/*? + * Text: "%s: The cylinder data for accessing the DASD is inconsistent\n" + * Severity: Error + * Parameter: + * @1: bus ID of the DASD + * Description: + * An error occurred in the storage system hardware. + * User action: + * For more information see the documentation of your storage system. + */ + +/*? + * Text: "%s: Accessing the DASD failed because of a hardware error\n" + * Severity: Error + * Parameter: + * @1: bus ID of the DASD + * Description: + * An error occurred in the storage system hardware. + * User action: + * For more information see the documentation of your storage system. + */ + +/*? + * Text: "%s: ERP chain at BEGINNING of ERP-ACTION\n" + * Severity: Error + * Parameter: + * @1: bus ID of the DASD + * Description: + * This message provides debug information for the enhanced error recovery + * procedure (ERP). + * User action: + * If you do not need this information, you can suppress this message by + * switching off ERP logging, for example, by writing '1' to the 'erplog' + * sysfs attribute of the DASD. + */ + +/*? + * Text: "%s: ERP %p has run out of retries and failed\n" + * Severity: Error + * Parameter: + * @1: bus ID of the DASD + * @2: ERP pointer + * Description: + * The error recovery procedure (ERP) tried to recover an error but the number + * of retries for the I/O was exceeded before the error could be resolved. + * User action: + * Check for related previous error messages. + */ + +/*? + * Text: "%s: SIM - SRC: %02x%02x%02x%02x\n" + * Severity: Error + * Parameter: + * @1: bus ID of the DASD + * @2: sense byte + * @3: sense byte + * @4: sense byte + * @5: sense byte + * Description: + * This error message is a System Information Message (SIM) generated by the + * storage system. The System Reference Code (SRC) defines the error in detail. + * User action: + * Look up the SRC in the storage server documentation. + */ + +/*? + * Text: "%s: log SIM - SRC: %02x%02x%02x%02x\n" + * Severity: Warning + * Parameter: + * @1: bus ID of the DASD + * @2: sense byte + * @3: sense byte + * @4: sense byte + * @5: sense byte + * Description: + * This System Information Message (SIM) is generated by the storage system. + * The System Reference Code (SRC) defines the error in detail. + * User action: + * Look up the SRC in the storage server documentation. + */ + +/*? + * Text: "%s: Reading device feature codes failed with rc=%d\n" + * Severity: Warning + * Parameter: + * @1: bus ID of the DASD + * @2: return code + * Description: + * The device feature codes state which advanced features are supported by a + * device. + * Examples for advanced features are PAV or high performance FICON. + * Some early devices do not provide feature codes and no advanced features are + * available on these devices. + * User action: + * None, if the DASD does not provide feature codes. If the DASD provides + * feature codes, make sure that it is working correctly, then set it offline + * and back online. + */ + +/*? + * Text: "%s: A channel path group could not be established\n" + * Severity: Warning + * Parameter: + * @1: bus ID of the DASD + * Description: + * Initialization of a DASD did not complete because a channel path group + * could not be established. + * User action: + * Make sure that the DASD is working correctly, then try again to set it + * online. If initialization still fails, reboot. + */ + +/*? + * Text: "%s: The DASD is not operating in multipath mode\n" + * Severity: Informational + * Parameter: + * @1: bus ID of the DASD + * Description: + * The DASD channel path group could not be configured to use multipath mode. + * This might negatively affect I/O performance on this DASD. + * User action: + * Make sure that the DASD is working correctly, then try again to set it + * online. If initialization still fails, reboot. + */ + +/*? + * Text: "%s: Detecting the DASD disk layout failed because of an I/O error\n" + * Severity: Error + * Parameter: + * @1: bus ID of the DASD + * Description: + * The disk layout of the DASD could not be detected because of an unexpected + * I/O error. The DASD device driver treats the device like an unformatted DASD, + * and partitions on the device are not accessible. + * User action: + * If the DASD is formatted, make sure that the DASD is working correctly, + * then set it offline and back online. If the DASD is unformatted, format the + * DASD, for example, with dasdfmt. + * ATTENTION: Formatting irreversibly destroys all data on the DASD. + */ + +/*? + * Text: "%s: An I/O request was rejected because writing is inhibited\n" + * Severity: Error + * Parameter: + * @1: bus ID of the DASD + * Description: + * An I/O request was returned with an error indication of 'command reject' + * and 'write inhibited'. The most likely reason for this error is a + * failed write request to a device that was attached as read-only in z/VM. + * User action: + * Set the device offline, ensure that the device is configured correctly in + * z/VM, then set the device online again. + */ + +/*? + * Text: "%s: An Alias device was reassigned to a new base device with UID: %s\n" + * Severity: Informational + * Parameter: + * @1: bus ID of the alias + * @2: UID of new base device + * Description: + * The alias device with the indicated bus ID has been reassigned. The UID of the new base device is shown in the message. + * User action: + * None. + */ + +/*? + * Text: "%s: Detecting the maximum supported data size for zHPF requests failed\n" + * Severity: Warning + * Parameter: + * @1: bus ID of the DASD + * Description: + * High Performance FICON (zHPF) requests are limited to a hardware-dependent + * maximum data size. The DASD device driver failed to detect this size and zHPF + * is not available for this device. + * User action: + * Set the device offline and online again. If this problem persists, gather + * Linux debug data and report the problem to your support organization. + */ + +/*? + * Text: "%s: Reading device feature codes failed (rc=%d) for new path %x\n" + * Severity: Warning + * Parameter: + * @1: bus ID of the DASD + * @2: return code + * @3: path mask + * Description: + * A new path has been made available to the a device. + * A command to read the device feature codes on this device returned an error. + * The new path will not be used for I/O. + * User action: + * Set the new path offline and online again to repeat the path verification. + * Alternatively, set the device offline and online again to + * verify all available paths for this device. + * If this problem persists, gather Linux debug data and report the problem + * to your support organization. + */ + +/*? + * Text: "%s: Detecting the maximum data size for zHPF requests failed (rc=%d) for a new path %x\n" + * Severity: Warning + * Parameter: + * @1: bus ID of the DASD + * @2: return code + * @3: path mask + * Description: + * High Performance FICON (zHPF) requests are limited to a hardware-dependent + * maximum data size. A command to detect this size for + * a new path returned an error. The new path will not be used for I/O. + * User action: + * Set the new path offline and online again to repeat the path verification. + * Alternatively, set the device offline and online again to + * verify all available paths for this device. + * If this problem persists, gather Linux debug data and report the problem + * to your support organization. + */ + +/*? + * Text: "%s: The maximum data size for zHPF requests %u on a new path %x is below the active maximum %u\n" + * Severity: Warning + * Parameter: + * @1: bus ID of the DASD + * @2: size in bytes + * @3: path mask + * @4: size in bytes + * Description: + * High Performance FICON (zHPF) requests are limited to a hardware-dependent + * maximum data size. The maximum of the new path is below + * the previously established common maximum for the + * existing paths for this device. This could cause requests on the new + * path to fail. The new path will not be used for I/O. + * User action: + * Set the device offline and online again to establish a new common maximum + * data size for the device. + */ + +/*? + * Text: "%s: The device reservation was lost\n" + * Severity: Error + * Parameter: + * @1: bus ID of the DASD + * Description: + * This Linux instance has lost its reservation of the device to another + * operating system instance. Depending on the reservation policy for the + * device, I/O might be blocked until the other operating system instance + * surrenders the reservation or all I/O requests might fail until the + * device is reset. + * User action: + * None, if this situation is handled by system automation software. + * If this situation is not handled by automation, check the + * last_known_reservation_state attribute of the device in sysfs. + * If the value is 'lost', verify that the device is no longer reserved + * by another operating system instance, then set the device offline and + * online again. For any other value of the last_known_reservation_state + * no action is required. I/O will resume when the device reservation is + * surrendered by the other operating system instance. + */ + +/*? + * Text: "%s: The storage server does not support raw-track access\n" + * Severity: Error + * Parameter: + * @1: bus ID of the DASD + * Description: + * The DASD cannot be accessed in raw-track access mode because the storage + * server does not have all required features for this access mode. + * In raw-track access mode, the DASD device driver accesses complete ECKD + * tracks. + * By default, the DASD device driver accesses only the data fields of ECKD + * devices and omits the count and key data fields. + * User action: + * Ensure that the raw_track_access sysfs attribute of the DASD has the value + * 0 to access the device in default ECKD mode. + */ + +/*? + * Text: "%s: The newly added channel path %02X will not be used because it leads to a different device %s\n" + * Severity: Error + * Parameter: + * @1: bus ID of the DASD + * @2: logical path mask + * @3: UID + * Description: + * The newly added channel path has a different UID than the DASD device. This indicates + * an incorrect cabling. This path is not going to be used. + * User action: + * Check the cabling of the DASD device. Disconnect and reconnect the cable. + */ + +/*? + * Text: "%s: Not all channel paths lead to the same device, path %02X leads to device %s instead of %s\n" + * Severity: Error + * Parameter: + * @1: bus ID of the DASD + * @2: logical path mask + * @3: UID + * @4: UID + * Description: + * Some channel paths have a different UID than others. This indicates + * an incorrect cabling. The DASD device is not enabled. + * User action: + * Check cabling of the DASD device and retry to enable the device. + */ + +/*? + * Text: "Service on the storage server caused path %x.%02x to go offline" + * Severity: Warning + * Parameter: + * @1: channel subsystem ID + * @2: CHPID + * Description: + * A channel path to the DASD has been set offline because of + * a service action on the storage server. The path will be set back + * online automatically when the service action is completed. + * User action: + * None. + */ + +/*? + * Text: "Path %x.%02x is back online after service on the storage server" + * Severity: Informational + * Parameter: + * @1: channel subsystem ID + * @2: CHPID + * Description: + * A path had been set offline temporarily because of a service + * action on the storage server. + * The service action has completed, and the channel path is available + * again. + * User action: + * None. + */ + +/*? + * Text: "%s: High Performance FICON disabled\n" + * Severity: Error + * Parameter: + * @1: bus ID of the DASD + * Description: + * High Performance FICON (HPF) has been disabled. Either the device + * lost HPF functionality, or none of the remaining channel paths are + * HPF capable. + * User action: + * Report the problem to your support organization. + * Ensure that the cabling between the storage server and the mainframe + * system is securely in place. + * Reset the device and channel paths by writing "all" or a logical path mask + * to the path_reset sysfs attribute of the device. + */ + +/*? + * Text: "%s: Channel path %02X lost HPF functionality and is disabled\n" + * Severity: Error + * Parameter: + * @1: bus ID of the DASD + * @2: logical path mask + * Description: + * A channel path has lost High Performance FICON (HPF) functionality + * and was removed from regular operations. + * User action: + * Report the problem to your support organization. + * Ensure that the cabling between the storage server and the mainframe + * system is securely in place. + * Reset the device and channel paths by writing "all" or a logical path mask + * to the path_reset sysfs attribute of the device. + */ + +/*? + * Text: "%s: Path %x.%02x (pathmask %02x) is disabled - IFCC threshold exceeded\n" + * Severity: Error + * Parameter: + * @1: bus ID of the DASD + * @2: cssid + * @3: chpid + * @4: logical path mask + * Description: + * Due to numerous interface or channel control checks (IFCCs), a channel path + * was removed from regular operations to retain good I/O performance. + * User action: + * Ensure that the cabling between the storage server and the mainframe + * system is securely in place. + * Reset the device and channel paths by writing "all" or a logical path mask + * to the path_reset sysfs attribute of the device. + * If the problem persists, report it to your support organization. + */ +/*? Text: "%s: %d output lines suppressed due to ratelimiting\n" */ --- linux-azure-5.8-5.8.0.orig/Documentation/kmsg/s390/dasd-fba +++ linux-azure-5.8-5.8.0/Documentation/kmsg/s390/dasd-fba @@ -0,0 +1,36 @@ + +/*? + * Text: "%s: New FBA DASD %04X/%02X (CU %04X/%02X) with %d MB and %d B/blk%s\n" + * Severity: Informational + * Parameter: + * @1: bus ID of the DASD + * @2: device type + * @3: device model + * @4: control unit type + * @5: control unit model + * @6: size + * @7: bytes per block + * @8: access mode + * Description: + * A DASD with the shown characteristics has been set online. + * If the DASD is configured as read-only to the real or virtual hardware, + * the message includes an indication of this hardware access mode. The + * hardware access mode is independent from the 'readonly' attribute of + * the device in sysfs. + * User action: + * None. + */ + +/*? + * Text: "%s: Allocating memory for private DASD data failed\n" + * Severity: Warning + * Parameter: + * @1: bus ID of the DASD + * Description: + * The DASD device driver maintains data structures for each DASD it manages. + * There is not enough memory to allocate these data structures for one or + * more DASD. + * User action: + * Free some memory and try the operation again. + */ +/*? Text: "%s: %d output lines suppressed due to ratelimiting\n" */ --- linux-azure-5.8-5.8.0.orig/Documentation/kmsg/s390/dcssblk +++ linux-azure-5.8-5.8.0/Documentation/kmsg/s390/dcssblk @@ -0,0 +1,206 @@ +/*? + * Text: "Adjacent DCSSs %s and %s are not contiguous\n" + * Severity: Error + * Parameter: + * @1: name 1 + * @2: name 2 + * Description: + * You can only map a set of two or more DCSSs to a single DCSS device if the + * DCSSs in the set form a contiguous memory space. The DCSS device cannot be + * created because there is a memory gap between two adjacent DCSSs. + * User action: + * Ensure that you have specified all DCSSs that belong to the set. Check the + * definitions of the DCSSs on the z/VM hypervisor to verify that they form + * a contiguous memory space. + */ + +/*? + * Text: "DCSS %s and DCSS %s have incompatible types\n" + * Severity: Error + * Parameter: + * @1: name 1 + * @2: name 2 + * Description: + * You can only map a set of two or more DCSSs to a single DCSS device if + * either all DCSSs in the set have the same type or if the set contains DCSSs + * of the two types EW and EN but no other type. The DCSS device cannot be + * created because at least two of the specified DCSSs are not compatible. + * User action: + * Check the definitions of the DCSSs on the z/VM hypervisor to verify that + * their types are compatible. + */ + +/*? + * Text: "DCSS %s is of type SC and cannot be loaded as exclusive-writable\n" + * Severity: Error + * Parameter: + * @1: device name + * Description: + * You cannot load a DCSS device in exclusive-writable access mode if the DCSS + * devise maps to one or more DCSSs of type SC. + * User action: + * Load the DCSS in shared access mode. + */ + +/*? + * Text: "DCSS device %s is removed after a failed access mode change\n" + * Severity: Error + * Parameter: + * @1: device name + * Description: + * To change the access mode of a DCSS device, all DCSSs that map to the device + * were unloaded. Reloading the DCSSs for the new access mode failed and the + * device is removed. + * User action: + * Look for related messages to find out why the DCSSs could not be reloaded. + * If necessary, add the device again. + */ + +/*? + * Text: "All DCSSs that map to device %s are saved\n" + * Severity: Informational + * Parameter: + * @1: device name + * Description: + * A save request has been submitted for the DCSS device. Changes to all DCSSs + * that map to the device are saved permanently. + * User action: + * None. + */ + +/*? + * Text: "Device %s is in use, its DCSSs will be saved when it becomes idle\n" + * Severity: Informational + * Parameter: + * @1: device name + * Description: + * A save request for the device has been deferred until the device becomes + * idle. Then changes to all DCSSs that the device maps to will be saved + * permanently. + * User action: + * None. + */ + +/*? + * Text: "A pending save request for device %s has been canceled\n" + * Severity: Informational + * Parameter: + * @1: device name + * Description: + * A save request for the DCSSs that map to a DCSS device has been pending + * while the device was in use. This save request has been canceled. Changes to + * the DCSSs will not be saved permanently. + * User action: + * None. + */ + +/*? + * Text: "Loaded %s with total size %lu bytes and capacity %lu sectors\n" + * Severity: Informational + * Parameter: + * @1: DCSS names + * @2: total size in bytes + * @3: total size in 512 byte sectors + * Description: + * The listed DCSSs have been verified as contiguous and successfully loaded. + * The displayed sizes are the sums of all DCSSs. + * User action: + * None. + */ + +/*? + * Text: "Device %s cannot be removed because it is not a known device\n" + * Severity: Warning + * Parameter: + * @1: device name + * Description: + * The DCSS device you are trying to remove is not known to the DCSS device + * driver. + * User action: + * List the entries under /sys/devices/dcssblk/ to see the names of the + * existing DCSS devices. + */ + +/*? + * Text: "Device %s cannot be removed while it is in use\n" + * Severity: Warning + * Parameter: + * @1: device name + * Description: + * You are trying to remove a device that is in use. + * User action: + * Make sure that all users of the device close the device before you try to + * remove it. + */ + +/*? + * Text: "Device %s has become idle and is being saved now\n" + * Severity: Informational + * Parameter: + * @1: device name + * Description: + * A save request for the DCSSs that map to a DCSS device has been pending + * while the device was in use. The device has become idle and all changes + * to the DCSSs are now saved permanently. + * User action: + * None. + */ + +/*? + * Text: "Writing to %s failed because it is a read-only device\n" + * Severity: Warning + * Parameter: + * @1: device name + * Description: + * The DCSS device is in shared access mode and cannot be written to. Depending + * on the type of the DCSSs that the device maps to, you might be able to + * change the access mode to exclusive-writable. + * User action: + * If the DCSSs of the device are of type SC, do not attempt to write to the + * device. If the DCSSs of the device are of type ER or SR, change the access + * mode to exclusive-writable before writing to the device. + */ + +/*? + * Text: "The address range of DCSS %s changed while the system was suspended\n" + * Severity: Error + * Parameter: + * @1: device name + * Description: + * After resuming the system, the start address or end address of a DCSS does + * not match the address when the system was suspended. DCSSs must not be + * changed after the system was suspended. + * This error cannot be recovered. The system is stopped with a kernel panic. + * User action: + * Reboot Linux. + */ + +/*? + * Text: "Suspending the system failed because DCSS device %s is writable\n" + * Severity: Error + * Parameter: + * @1: device name + * Description: + * A system cannot be suspended if one or more DCSSs are accessed in exclusive- + * writable mode. DCSS segment types EW, SW, and EN are always writable and + * must be removed before a system is suspended. + * User action: + * Remove all DCSSs of segment types EW, SW, and EN by writing the DCSS name to + * the sysfs 'remove' attribute. Set the access mode for all DCSSs of segment + * types SR and ER to read-only by writing 1 to the sysfs 'shared' attribute of + * the DCSS. Then try again to suspend the system. + */ + +/*? + * Text: "DCSS %s is of type SN or EN and cannot be saved\n" + * Severity: Warning + * Parameter: + * @1: DCSS name + * Description: + * DCSSs of type SN or EN cannot be saved. + * User action: + * If the DCSS was set up with the intention to prevent the content from being saved, + * no action is necessary. + * To be able to save the content, you must define the DCSS with a type other than SN or EN. + */ +/*? Text: "%s: %d output lines suppressed due to ratelimiting\n" */ --- linux-azure-5.8-5.8.0.orig/Documentation/kmsg/s390/diag288_wdt +++ linux-azure-5.8-5.8.0/Documentation/kmsg/s390/diag288_wdt @@ -0,0 +1,66 @@ +/*? + * Text: "The watchdog cannot be activated\n" + * Severity: Error + * Description: + * Diagnose instruction 0x288 was called to activate the diag288 watchdog. + * The diagnose call returned an error that cannot be handled by the device driver. + * The watchdog stays inactive. + * User action: + * Contact your support organization. + */ + +/*? + * Text: "The watchdog cannot be initialized\n" + * Severity: Error + * Description: + * Diagnose instruction 0x288 was called to initialize the diag288 watchdog. + * The diagnose call returned an error that cannot be handled by the device driver. + * The watchdog stays inactive. + * A possible reason for this error is that your real or virtual hardware does not support + * the diag288 watchdog. + * User action: + * Confirm that the diag288 watchdog is supported in your environment. + * Use a watchdog that is supported in your environment. + */ + +/*? + * Text: "The watchdog cannot be deactivated\n" + * Severity: Error + * Description: + * Diagnose instruction 0x288 was called to deactivate the diag288 watchdog. + * The diagnose call returned an error that cannot be handled by the device driver. + * The watchdog stays active and a watchdog timeout will trigger the configured timeout action. + * The diag288 watchdog device driver might intentionally be configured to prevent deactivation. + * User action: + * You can configure the diag288 watchdog device driver such that it can be deactivated. + * If the diag288 device driver has been compiled as a separate module, diag288_wdt, reload the module + * without specifying the 'nowayout' module parameter. + * If the diag288 device driver has been compiled into your kernel, + * reboot Linux without specifying the 'diag288.nowayout' kernel parameter'. + */ + +/*? + * Text: "The watchdog timer cannot be started or reset\n" + * Severity: Error + * Description: + * Diagnose instruction 0x288 was called to start the diag288 watchdog or to set timer back to zero. + * The diagnose call returned an error that cannot be handled by the device driver. + * The watchdog stays inactive or becomes inactive. + * User action: + * Contact your support organization. + */ + +/*? + * Text: "Linux cannot be suspended while the watchdog is in use\n" + * Severity: Error + * Description: + * The watchdog must not time out while Linux is suspended. + * Therefore, the diag288 watchdog device driver prevents Linux from being suspended + * while the watchdog is in use. + * User action: + * i) Stop the watchdog application. ii) If the problem persists, close the watchdog + * device node by issuing 'echo V > /dev/watchdog'. + * iii) If the device driver still prevents Linux from being suspended, + * contact your support organization. + */ +/*? Text: "%s: %d output lines suppressed due to ratelimiting\n" */ --- linux-azure-5.8-5.8.0.orig/Documentation/kmsg/s390/extmem +++ linux-azure-5.8-5.8.0/Documentation/kmsg/s390/extmem @@ -0,0 +1,293 @@ +/*? + * Text: "Querying a DCSS type failed with rc=%ld\n" + * Severity: Warning + * Parameter: + * @1: return code + * Description: + * The DCSS kernel interface used z/VM diagnose call X'64' to query the + * type of a DCSS. z/VM failed to determine the type and returned an error. + * User action: + * Look for related messages to find out which DCSS is affected. + * For details about the return codes see the section about DIAGNOSE Code + * X'64' in "z/VM CP Programming Services". + */ + +/*? + * Text: "Loading DCSS %s failed with rc=%ld\n" + * Severity: Warning + * Parameter: + * @1: DCSS name + * @2: return code + * Description: + * The DCSS kernel interface used diagnose call X'64' to load a DCSS. z/VM + * failed to load the DCSS and returned an error. + * User action: + * For details about the return codes see the section about DIAGNOSE Code + * X'64' in "z/VM CP Programming Services". + */ + +/*? + * Text: "DCSS %s of range %p to %p and type %s loaded as exclusive-writable\n" + * Severity: Informational + * Parameter: + * @1: DCSS name + * @2: starting page address + * @3: ending page address + * @4: DCSS type + * Description: + * The DCSS was loaded successfully in exclusive-writable access mode. + * User action: + * None. + */ + +/*? + * Text: "DCSS %s of range %p to %p and type %s loaded in shared access mode\n" + * Severity: Informational + * Parameter: + * @1: DCSS name + * @2: starting page address + * @3: ending page address + * @4: DCSS type + * Description: + * The DCSS was loaded successfully in shared access mode. + * User action: + * None. + */ + +/*? + * Text: "DCSS %s is already in the requested access mode\n" + * Severity: Informational + * Parameter: + * @1: DCSS name + * Description: + * A request to reload a DCSS with a new access mode has been rejected + * because the new access mode is the same as the current access mode. + * User action: + * None. + */ + +/*? + * Text: "DCSS %s is in use and cannot be reloaded\n" + * Severity: Warning + * Parameter: + * @1: DCSS name + * Description: + * Reloading a DCSS in a different access mode has failed because the DCSS is + * being used by one or more device drivers. The DCSS remains loaded with the + * current access mode. + * User action: + * Ensure that the DCSS is not used by any device driver then try again to + * load the DCSS with the new access mode. + */ + +/*? + * Text: "DCSS %s overlaps with used memory resources and cannot be reloaded\n" + * Severity: Warning + * Parameter: + * @1: DCSS name + * Description: + * The DCSS has been unloaded and cannot be reloaded because it overlaps with + * another loaded DCSS or with the memory of the z/VM guest virtual machine + * (guest storage). + * User action: + * Ensure that no DCSS is loaded that has overlapping memory resources + * with the DCSS you want to reload. If the DCSS overlaps with guest storage, + * use the DEF STORE CONFIG z/VM CP command to create a sufficient storage gap + * for the DCSS. For details, see the section about the DCSS device driver in + * "Device Drivers, Features, and Commands". + */ + +/*? + * Text: "Reloading DCSS %s failed with rc=%ld\n" + * Severity: Warning + * Parameter: + * @1: DCSS name + * @2: return code + * Description: + * The DCSS kernel interface used z/VM diagnose call X'64' to reload a DCSS + * in a different access mode. The DCSS was unloaded but z/VM failed to reload + * the DCSS. + * User action: + * For details about the return codes see the section about DIAGNOSE Code + * X'64' in "z/VM CP Programming Services". + */ + +/*? + * Text: "Unloading unknown DCSS %s failed\n" + * Severity: Error + * Parameter: + * @1: DCSS name + * Description: + * The specified DCSS cannot be unloaded. The DCSS is known to the DCSS device + * driver but not to the DCSS kernel interface. This problem indicates a + * program error in extmem.c. + * User action: + * Report this problem to your support organization. + */ + +/*? + * Text: "Saving unknown DCSS %s failed\n" + * Severity: Error + * Parameter: + * @1: DCSS name + * Description: + * The specified DCSS cannot be saved. The DCSS is known to the DCSS device + * driver but not to the DCSS kernel interface. This problem indicates a + * program error in extmem.c. + * User action: + * Report this problem to your support organization. + */ + +/*? + * Text: "Saving a DCSS failed with DEFSEG response code %i\n" + * Severity: Error + * Parameter: + * @1: response-code + * Description: + * The DEFSEG z/VM CP command failed to permanently save changes to a DCSS. + * User action: + * Ensure that the z/VM guest virtual machine is authorized to issue + * the CP DEFSEG command (typically privilege class E). + * Look for related messages to find the cause of this error. See also message + * HCPE in the DEFSEG section of the "z/VM CP Command and + * Utility Reference". + */ + +/*? + * Text: "Saving a DCSS failed with SAVESEG response code %i\n" + * Severity: Error + * Parameter: + * @1: response-code + * Description: + * The SAVESEG z/VM CP command failed to permanently save changes to a DCSS. + * User action: + * Ensure that the z/VM guest virtual machine is authorized to issue + * the CP SAVESEG command (typically privilege class E). + * Look for related messages to find the cause of this error. See also message + * HCPE in the SAVESEG section of the "z/VM CP Command and + * Utility Reference". + */ + +/*? + * Text: "DCSS %s cannot be loaded or queried\n" + * Severity: Error + * Parameter: + * @1: DCSS name + * Description: + * You cannot load or query the specified DCSS because it either is not defined + * in the z/VM hypervisor, or it is a class S DCSS, or it is above 2047 MB + * and the Linux system is a 31-bit system. + * User action: + * Use the CP command "QUERY NSS" to find out if the DCSS is a valid + * DCSS that can be loaded. + */ + +/*? + * Text: "DCSS %s cannot be loaded or queried without z/VM\n" + * Severity: Error + * Parameter: + * @1: DCSS name + * Description: + * A DCSS is a z/VM resource. Your Linux instance is not running as a z/VM + * guest operating system and, therefore, cannot load DCSSs. + * User action: + * Load DCSSs only on Linux instances that run as z/VM guest operating systems. + */ + +/*? + * Text: "Loading or querying DCSS %s resulted in a hardware error\n" + * Severity: Error + * Parameter: + * @1: DCSS name + * Description: + * Either the z/VM DIAGNOSE X'64' query or load call issued for the DCSS + * returned with an error. + * User action: + * Look for previous extmem message to find the return code from the + * DIAGNOSE X'64' query or load call. For details about the return codes see + * the section about DIAGNOSE Code X'64' in "z/VM CP Programming Services". + */ + +/*? + * Text: "DCSS %s has multiple page ranges and cannot be loaded or queried\n" + * Severity: Error + * Parameter: + * @1: DCSS name + * Description: + * You can only load or query a DCSS with multiple page ranges if: + * - The DCSS has 6 or fewer page ranges + * - The page ranges form a contiguous address space + * - The page ranges are of type EW or EN + * User action: + * Check the definition of the DCSS to make sure that the conditions for + * DCSSs with multiple page ranges are met. + */ + +/*? + * Text: "%s needs used memory resources and cannot be loaded or queried\n" + * Severity: Error + * Parameter: + * @1: DCSS name + * Description: + * You cannot load or query the DCSS because it overlaps with an already + * loaded DCSS or with the memory of the z/VM guest virtual machine + * (guest storage). + * User action: + * Ensure that no DCSS is loaded that has overlapping memory resources + * with the DCSS you want to load or query. If the DCSS overlaps with guest + * storage, use the DEF STORE CONFIG z/VM CP command to create a sufficient + * storage gap for the DCSS. For details, see the section about the DCSS + * device driver in "Device Drivers, Features, and Commands". + */ + +/*? + * Text: "DCSS %s is already loaded in a different access mode\n" + * Severity: Error + * Parameter: + * @1: DCSS name + * Description: + * The DCSS you are trying to load has already been loaded in a different + * access mode. You cannot simultaneously load the DCSS in different modes. + * User action: + * Reload the DCSS in a different mode or load it with the same mode in which + * it has already been loaded. + */ + +/*? + * Text: "There is not enough memory to load or query DCSS %s\n" + * Severity: Error + * Parameter: + * @1: DCSS name + * Description: + * The available memory is not enough to load or query the DCSS. + * User action: + * Free some memory and repeat the failed operation. + */ + +/*? + * Text: "DCSS %s overlaps with used storage and cannot be loaded\n" + * Severity: Error + * Parameter: + * @1: DCSS name + * Description: + * You cannot load the DCSS because it overlaps with an already loaded DCSS + * or with the memory of the z/VM guest virtual machine (guest storage). + * User action: + * Ensure that no DCSS is loaded that has overlapping memory resources + * with the DCSS you want to load. If the DCSS overlaps with guest storage, + * use the DEF STORE CONFIG z/VM CP command to create a sufficient storage gap + * for the DCSS. For details, see the section about the DCSS device driver in + * "Device Drivers, Features, and Commands". + */ + +/*? + * Text: "DCSS %s exceeds the kernel mapping range (%lu) and cannot be loaded\n" + * Severity: Error + * Parameter: + * @1: DCSS name + * @2: kernel mapping range in bytes + * Description: + * You cannot load the DCSS because it exceeds the kernel mapping range limit. + * User action: + * Ensure that the DCSS range is defined below the kernel mapping range. + */ --- linux-azure-5.8-5.8.0.orig/Documentation/kmsg/s390/hmcdrv +++ linux-azure-5.8-5.8.0/Documentation/kmsg/s390/hmcdrv @@ -0,0 +1,22 @@ +/*? + * Text: "Allocating the requested cache size of %zu bytes failed\n" + * Severity: Error + * Parameter: + * @1: size + * Description: + * You cannot use the 'hmcdrv' module. + * Either the cache size that was specified for the 'hmcdrv' module exceeded + * the maximum of 1048576 (1 megabyte), or not enough free memory was + * available. + * If the 'hmcdrv' module was compiled into the kernel, the cache size was + * specified with the 'hmcdrv.cachesize' kernel parameter. + * For a separate 'hmcdrv' module, the cache size was specified with the + * 'cachesize=' module parameter. + * User action: + * Specify a smaller cache size and try again to load the module. + * Do not exceed the maximum specification of 1048576 (1 megabyte). + * If necessary, free some memory and try again. + * If the module is compiled into the kernel, you must reboot Linux to change + * the cache size specification. + */ +/*? Text: "%s: %d output lines suppressed due to ratelimiting\n" */ --- linux-azure-5.8-5.8.0.orig/Documentation/kmsg/s390/hugetlb +++ linux-azure-5.8-5.8.0/Documentation/kmsg/s390/hugetlb @@ -0,0 +1,13 @@ +/*? + * Text: "hugepagesz= specifies an unsupported page size %s\n" + * Severity: Error + * Parameter: + * @1: size + * Description: + * The hugepagesz= kernel parameter specifies a huge page size + * that is not supported. + * User action: + * Specify "1M" for 1 MB huge pages. These are supported as of z10. + * Specify "2G" for 2 GB huge pages. These are supported as of zEC12 + * and zBC12 machines. + */ --- linux-azure-5.8-5.8.0.orig/Documentation/kmsg/s390/hvc_iucv +++ linux-azure-5.8-5.8.0/Documentation/kmsg/s390/hvc_iucv @@ -0,0 +1,123 @@ +/*? + * Text: "The z/VM IUCV HVC device driver cannot be used without z/VM\n" + * Severity: Notice + * Description: + * The z/VM IUCV hypervisor console (HVC) device driver requires the + * z/VM inter-user communication vehicle (IUCV). + * User action: + * Set "hvc_iucv=" to zero in the kernel parameter line and reboot Linux. + */ + +/*? + * Text: "%lu is not a valid value for the hvc_iucv= kernel parameter\n" + * Severity: Error + * Parameter: + * @1: hvc_iucv_devices + * Description: + * The "hvc_iucv=" kernel parameter specifies the number of z/VM IUCV + * hypervisor console (HVC) terminal devices. + * The parameter value ranges from 0 to 8. + * If zero is specified, the z/VM IUCV HVC device driver is disabled + * and no IUCV-based terminal access is available. + * User action: + * Correct the "hvc_iucv=" setting in the kernel parameter line and + * reboot Linux. + */ + +/*? + * Text: "Creating a new HVC terminal device failed with error code=%d\n" + * Severity: Error + * Parameter: + * @1: errno + * Description: + * The device driver initialization failed to allocate a new + * HVC terminal device. + * A possible cause of this problem is memory constraints. + * User action: + * If the error code is -12 (ENOMEM), consider assigning more memory + * to your z/VM guest virtual machine. + */ + +/*? + * Text: "Registering HVC terminal device as Linux console failed\n" + * Severity: Error + * Description: + * The device driver initialization failed to set up the first HVC terminal + * device for use as Linux console. + * User action: + * If the error code is -12 (ENOMEM), consider assigning more memory + * to your z/VM guest virtual machine. + */ + +/*? + * Text: "Registering IUCV handlers failed with error code=%d\n" + * Severity: Error + * Parameter: + * @1: errno + * Description: + * The device driver initialization failed to register with z/VM IUCV to + * handle IUCV connections, as well as sending and receiving of IUCV messages. + * User action: + * Check for related IUCV error messages and see the errno manual page + * to find out what caused the problem. + */ + +/*? + * Text: "Allocating memory failed with reason code=%d\n" + * Severity: Error + * Parameter: + * @1: reason + * Description: + * The z/VM IUCV hypervisor console (HVC) device driver initialization failed, + * because of a general memory allocation failure. The reason code indicates + * the memory operation that has failed: + * kmem_cache (reason code=1), + * mempool (reason code=2), or + * hvc_iucv_allow= (reason code=3) + * User action: + * Consider assigning more memory to your z/VM guest virtual machine. + */ + +/*? + * Text: "hvc_iucv_allow= does not specify a valid z/VM user ID list\n" + * Severity: Error + * Description: + * The "hvc_iucv_allow=" kernel parameter specifies a comma-separated list + * of z/VM user IDs that are permitted to connect to the z/VM IUCV hypervisor + * device driver. + * The z/VM user IDs in the list must not exceed eight characters and must + * not contain spaces. + * User action: + * Correct the "hvc_iucv_allow=" setting in the kernel parameter line and reboot + * Linux. + */ + +/*? + * Text: "hvc_iucv_allow= specifies too many z/VM user IDs\n" + * Severity: Error + * Description: + * The "hvc_iucv_allow=" kernel parameter specifies a comma-separated list + * of z/VM user IDs that are permitted to connect to the z/VM IUCV hypervisor + * device driver. + * The number of z/VM user IDs that are specified with the "hvc_iucv_allow=" + * kernel parameter exceeds the maximum of 500. + * User action: + * Correct the "hvc_iucv_allow=" setting by reducing the z/VM user IDs in + * the list and reboot Linux. + */ + +/*? + * Text: "A connection request from z/VM user ID %s was refused\n" + * Severity: Informational + * Parameter: + * @1: ID + * Description: + * An IUCV connection request from another z/VM guest virtual machine has been + * refused. The request was from a z/VM guest virtual machine that is not + * listed by the "hvc_iucv_allow=" kernel parameter. + * User action: + * Check the "hvc_iucv_allow=" kernel parameter setting. + * Consider adding the z/VM user ID to the "hvc_iucv_allow=" list in the kernel + * parameter line and reboot Linux. + */ +/*? Text: "%s: %d output lines suppressed due to ratelimiting\n" */ --- linux-azure-5.8-5.8.0.orig/Documentation/kmsg/s390/hypfs +++ linux-azure-5.8-5.8.0/Documentation/kmsg/s390/hypfs @@ -0,0 +1,56 @@ +/*? + * Text: "The hardware system does not support hypfs\n" + * Severity: Error + * Description: + * hypfs requires DIAGNOSE Code X'204' but this diagnose code is not available + * on your hardware. You need more recent hardware to use hypfs. + * User action: + * None. + */ + +/*? + * Text: "The hardware system does not provide all functions required by hypfs\n" + * Severity: Error + * Description: + * hypfs requires DIAGNOSE Code X'224' but this diagnode code is not available + * on your hardware. You need more recent hardware to use hypfs. + * User action: + * None. + */ + +/*? + * Text: "Updating the hypfs tree failed\n" + * Severity: Error + * Description: + * There was not enough memory available to update the hypfs tree. + * User action: + * Free some memory and try again to update the hypfs tree. Consider assigning + * more memory to your LPAR or z/VM guest virtual machine. + */ + +/*? + * Text: "%s is not a valid mount option\n" + * Severity: Error + * Parameter: + * @1: mount option + * Description: + * hypfs has detected mount options that are not valid. + * User action: + * See "Device Drivers Features and Commands" for information about valid + * mount options for hypfs. + */ + +/*? + * Text: "Initialization of hypfs failed with rc=%i\n" + * Severity: Error + * Parameter: + * @1: error code + * Description: + * Initialization of hypfs failed because of resource or hardware constraints. + * Possible reasons for this problem are insufficient free memory or missing + * hardware interfaces. + * User action: + * See errno.h for information about the error codes. + */ + +/*? Text: "Hypervisor filesystem mounted\n" */ --- linux-azure-5.8-5.8.0.orig/Documentation/kmsg/s390/iucv +++ linux-azure-5.8-5.8.0/Documentation/kmsg/s390/iucv @@ -0,0 +1,33 @@ +/*? + * Text: "Defining an interrupt buffer on CPU %i failed with 0x%02x (%s)\n" + * Severity: Warning + * Parameter: + * @1: CPU number + * @2: hexadecimal error value + * @3: short error code explanation + * Description: + * Defining an interrupt buffer for external interrupts failed. Error + * value 0x03 indicates a problem with the z/VM directory entry of the + * z/VM guest virtual machine. This problem can also be caused by a + * program error. + * User action: + * If the error value is 0x03, examine the z/VM directory entry of your + * z/VM guest virtual machine. If the directory entry is correct or if the + * error value is not 0x03, report this problem to your support organization. + */ + +/*? + * Text: "Suspending Linux did not completely close all IUCV connections\n" + * Severity: Warning + * Description: + * When resuming a suspended Linux instance, the IUCV base code found + * data structures from one or more IUCV connections that existed before the + * Linux instance was suspended. Modules that use IUCV connections must close + * these connections when a Linux instance is suspended. This problem + * indicates an error in a program that used an IUCV connection. + * User action: + * Report this problem to your support organization. + */ + +/*? Text: "iucv_external_interrupt: out of memory\n" */ +/*? Text: "%s: %d output lines suppressed due to ratelimiting\n" */ --- linux-azure-5.8-5.8.0.orig/Documentation/kmsg/s390/lcs +++ linux-azure-5.8-5.8.0/Documentation/kmsg/s390/lcs @@ -0,0 +1,169 @@ +/*? + * Text: "%s: Allocating a socket buffer to interface %s failed\n" + * Severity: Error + * Parameter: + * @1: bus ID of the LCS device + * @2: network interface + * Description: + * LAN channel station (LCS) devices require a socket buffer (SKB) structure + * for storing incoming data. The LCS device driver failed to allocate an SKB + * structure to the LCS device. A likely cause of this problem is memory + * constraints. + * User action: + * Free some memory and repeat the failed operation. + */ + +/*? + * Text: "%s: Shutting down the LCS device failed\n" + * Severity: Error + * Parameter: + * @1: bus ID of the LCS device + * Description: + * A request to shut down a LAN channel station (LCS) device resulted in an + * error. The error is logged in the LCS trace at trace level 4. + * User action: + * Try again to shut down the device. If the error persists, see the LCS trace + * to find out what causes the error. + */ + +/*? + * Text: "%s: Detecting a network adapter for LCS devices failed with rc=%d (0x%x)\n" + * Severity: Error + * Parameter: + * @1: bus ID of the LCS device + * @2: lcs_detect return code in decimal notation + * @3: lcs_detect return code in hexadecimal notation + * Description: + * The LCS device driver could not initialize a network adapter. + * User action: + * Ensure that the physical connection from the port to the network is + * in place. If the error persists, note the return code from the error + * message and contact IBM support. + */ + +/*? + * Text: "%s: A recovery process has been started for the LCS device\n" + * Severity: Warning + * Parameter: + * @1: bus ID of the LCS device + * Description: + * The LAN channel station (LCS) device is shut down and restarted. The recovery + * process might have been initiated by a user or started automatically as a + * response to a device problem. + * User action: + * Wait until a message indicates the completion of the recovery process. + */ + +/*? + * Text: "%s: An I/O-error occurred on the LCS device\n" + * Severity: Warning + * Parameter: + * @1: bus ID of the LCS device + * Description: + * The LAN channel station (LCS) device reported a problem that can be recovered + * by the LCS device driver. Repeated occurrences of this problem indicate a + * malfunctioning device. + * User action: + * If this problem occurs frequently, initiate a recovery process for the + * device, for example, by writing '1' to the 'recover' sysfs attribute of the + * device. + */ + +/*? + * Text: "%s: A command timed out on the LCS device\n" + * Severity: Warning + * Parameter: + * @1: bus ID of the LCS device + * Description: + * The LAN channel station (LCS) device reported a problem that can be recovered + * by the LCS device driver. Repeated occurrences of this problem indicate a + * malfunctioning device. + * User action: + * If this problem occurs frequently, initiate a recovery process for the + * device, for example, by writing '1' to the 'recover' sysfs attribute of the + * device. + */ + +/*? + * Text: "%s: An error occurred on the LCS device, rc=%ld\n" + * Severity: Warning + * Parameter: + * @1: bus ID of the LCS device + * @2: return code + * Description: + * The LAN channel station (LCS) device reported a problem that can be recovered + * by the LCS device driver. Repeated occurrences of this problem indicate a + * malfunctioning device. + * User action: + * If this problem occurs frequently, initiate a recovery process for the + * device, for example, by writing '1' to the 'recover' sysfs attribute of the + * device. + */ + +/*? + * Text: "%s: The LCS device stopped because of an error, dstat=0x%X, cstat=0x%X \n" + * Severity: Warning + * Parameter: + * @1: bus ID of the LCS device + * @2: device status + * @3: subchannel status + * Description: + * The LAN channel station (LCS) device reported an error. The LCS device driver + * might start a device recovery process. + * User action: + * If the device driver does not start a recovery process, initiate a recovery + * process, for example, by writing '1' to the 'recover' sysfs attribute of the + * device. If the problem persists, note the status information provided with + * the message and contact IBM support. + */ + +/*? + * Text: "%s: Starting an LCS device resulted in an error, rc=%d!\n" + * Severity: Error + * Parameter: + * @1: bus ID of the LCS device + * @2: ccw_device_start return code in decimal notation + * Description: + * The LAN channel station (LCS) device driver failed to initialize an LCS + * device. The device is not operational. + * User action: + * Initiate a recovery process, for example, by writing '1' to the 'recover' + * sysfs attribute of the device. If the problem persists, contact IBM support. + */ + +/*? + * Text: "%s: Sending data from the LCS device to the LAN failed with rc=%d\n" + * Severity: Error + * Parameter: + * @1: bus ID of the LCS device + * @2: ccw_device_resume return code in decimal notation + * Description: + * The LAN channel station (LCS) device driver could not send data to the LAN + * using the LCS device. This might be a temporary problem. Operations continue + * on the LCS device. + * User action: + * If this problem occurs frequently, initiate a recovery process, for example, + * by writing '1' to the 'recover' sysfs attribute of the device. If the + * problem persists, contact IBM support. + */ + +/*? Text: "Query IPAssist failed. Assuming unsupported!\n" */ +/*? Text: "Stoplan for %s initiated by LGW\n" */ +/*? Text: "Not enough memory to add new multicast entry!\n" */ +/*? Text: "Not enough memory for debug facility.\n" */ +/*? Text: "Adding multicast address failed. Table possibly full!\n" */ +/*? Text: "Error in opening device!\n" */ +/*? Text: "LCS device %s %s IPv6 support\n" */ +/*? Text: "Device %s successfully recovered!\n" */ +/*? Text: "LCS device %s %s Multicast support\n" */ +/*? Text: " Initialization failed\n" */ +/*? Text: "Loading %s\n" */ +/*? Text: "Initialization failed\n" */ +/*? Text: "Terminating lcs module.\n" */ +/*? Text: "Device %s could not be recovered!\n" */ +/*? Text: "Initializing the lcs device driver failed\n" */ +/*? Text: "%s: The lcs device driver failed to recover the device\n" */ +/*? Text: "netif_stop_queue() cannot be called before register_netdev()\n" */ +/*? Text: "flen=%u proglen=%u pass=%u image=%pK from=%s pid=%d\n" */ +/*? Text: "%s selects TX queue %d, but real number of TX queues is %d\n" */ +/*? Text: "%s: %d output lines suppressed due to ratelimiting\n" */ --- linux-azure-5.8-5.8.0.orig/Documentation/kmsg/s390/monreader +++ linux-azure-5.8-5.8.0/Documentation/kmsg/s390/monreader @@ -0,0 +1,128 @@ +/*? + * Text: "Reading monitor data failed with rc=%i\n" + * Severity: Error + * Parameter: + * @1: return code + * Description: + * The z/VM *MONITOR record device driver failed to read monitor data + * because the IUCV REPLY function failed. The read function against + * the monitor record device returns EIO. All monitor data that has been read + * since the last read with 0 size is incorrect. + * User action: + * Disregard all monitor data that has been read since the last read with + * 0 size. If the device driver has been compiled as a separate module, unload + * and reload the monreader module. If the device driver has been compiled + * into the kernel, reboot Linux. For more information about possible causes + * of the error see the IUCV section in "z/VM CP Programming Services" and + * the *MONITOR section in "z/VM Performance". + */ + +/*? + * Text: "z/VM *MONITOR system service disconnected with rc=%i\n" + * Severity: Error + * Parameter: + * @1: IPUSER SEVER return code + * Description: + * The z/VM *MONITOR record device driver receives monitor records through + * an IUCV connection to the z/VM *MONITOR system service. This connection + * has been severed and the read function of the z/VM *MONITOR device driver + * returns EIO. All data received since the last read with 0 size is incorrect. + * User action: + * Disregard all monitor data read since the last read with 0 size. Close and + * reopen the monitor record device. For information about the IPUSER SEVER + * return codes see "z/VM Performance". + */ + +/*? + * Text: "The read queue for monitor data is full\n" + * Severity: Warning + * Description: + * The read function of the z/VM *MONITOR device driver returns EOVERFLOW + * because not enough monitor data has been read since the monitor device + * has been opened. Monitor data already read are valid and subsequent reads + * return valid data but some intermediate data might be missing. + * User action: + * Be aware that monitor data might be missing. Assure that you regularly + * read monitor data after opening the monitor record device. + */ + +/*? + * Text: "Connecting to the z/VM *MONITOR system service failed with rc=%i\n" + * Severity: Error + * Parameter: + * @1: IUCV CONNECT return code + * Description: + * The z/VM *MONITOR record device driver receives monitor records through + * an IUCV connection to the z/VM *MONITOR system service. This connection + * could not be established when the monitor record device was opened. If + * the return code is 15, your z/VM guest virtual machine is not authorized + * to connect to the *MONITOR system service. + * User action: + * If the return code is 15, ensure that the IUCV *MONITOR statement is + * included in the z/VM directory entry for your z/VM guest virtual machine. + * For other IUCV CONNECT return codes see the IUCV section in "CP Programming + * Services" and the *MONITOR section in "z/VM Performance". + */ + +/*? + * Text: "Disconnecting the z/VM *MONITOR system service failed with rc=%i\n" + * Severity: Warning + * Parameter: + * @1: IUCV SEVER return code + * Description: + * The z/VM *MONITOR record device driver receives monitor data through an + * IUCV connection to the z/VM *MONITOR system service. This connection + * could not be closed when the monitor record device was closed. You might + * not be able to resume monitoring. + * User action: + * No immediate action is necessary. If you cannot open the monitor record + * device in the future, reboot Linux. For information about the IUCV SEVER + * return codes see the IUCV section in "CP Programming Services" and the + * *MONITOR section in "z/VM Performance". + */ + +/*? + * Text: "The z/VM *MONITOR record device driver cannot be loaded without z/VM\n" + * Severity: Error + * Description: + * The z/VM *MONITOR record device driver uses z/VM system services to provide + * monitor data about z/VM guest operating systems to applications on Linux. + * On Linux instances that run in environments other than the z/VM hypervisor, + * the z/VM *MONITOR record device driver does not provide any useful + * function and the corresponding monreader module cannot be loaded. + * User action: + * Load the z/VM *MONITOR record device driver only on Linux instances that run + * as guest operating systems of the z/VM hypervisor. If the z/VM *MONITOR + * record device driver has been compiled into the kernel, ignore this message. + */ + +/*? + * Text: "The z/VM *MONITOR record device driver failed to register with IUCV\n" + * Severity: Error + * Description: + * The z/VM *MONITOR record device driver receives monitor data through an IUCV + * connection and needs to register with the IUCV device driver. This + * registration failed and the z/VM *MONITOR record device driver was not + * loaded. A possible cause of this problem is insufficient memory. + * User action: + * Free some memory and try again to load the module. If the z/VM *MONITOR + * record device driver has been compiled into the kernel, you might have to + * configure more memory and reboot Linux. If you do not want to read monitor + * data, ignore this message. + */ + +/*? + * Text: "The specified *MONITOR DCSS %s does not have the required type SC\n" + * Severity: Error + * Parameter: + * @1: DCSS name + * Description: + * The DCSS that was specified with the monreader.mondcss kernel parameter or + * with the mondcss module parameter cannot be a *MONITOR DCSS because it is + * not of type SC. + * User action: + * Confirm that you are using the name of the DCSS that has been configured as + * the *MONITOR DCSS on the z/VM hypervisor. If the default name, MONDCSS, is + * used, omit the monreader.mondcss or mondcss parameter. + */ +/*? Text: "%s: %d output lines suppressed due to ratelimiting\n" */ --- linux-azure-5.8-5.8.0.orig/Documentation/kmsg/s390/monwriter +++ linux-azure-5.8-5.8.0/Documentation/kmsg/s390/monwriter @@ -0,0 +1,17 @@ +/*? + * Text: "Writing monitor data failed with rc=%i\n" + * Severity: Error + * Parameter: + * @1: return code + * Description: + * The monitor stream application device driver used the z/VM diagnose call + * DIAG X'DC' to start writing monitor data. z/VM returned an error and the + * monitor data cannot be written. If the return code is 5, your z/VM guest + * virtual machine is not authorized to write monitor data. + * User action: + * If the return code is 5, ensure that your z/VM guest virtual machine's + * entry in the z/VM directory includes the OPTION APPLMON statement. + * For other return codes see the section about DIAGNOSE Code X'DC' + * in "z/VM CP Programming Services". + */ +/*? Text: "%s: %d output lines suppressed due to ratelimiting\n" */ --- linux-azure-5.8-5.8.0.orig/Documentation/kmsg/s390/netiucv +++ linux-azure-5.8-5.8.0/Documentation/kmsg/s390/netiucv @@ -0,0 +1,156 @@ +/*? + * Text: "%s: The peer interface of the IUCV device has closed the connection\n" + * Severity: Informational + * Parameter: + * @1: bus ID of the IUCV device + * Description: + * The peer interface on the remote z/VM guest virtual machine has closed the + * connection. Do not expect further packets on this interface. Any packets + * you send to this interface will be dropped. + * User action: + * None. + */ + +/*? + * Text: "%s: The IUCV device failed to connect to z/VM guest %s\n" + * Severity: Warning + * Parameter: + * @1: bus ID of the IUCV device + * @2: z/VM user ID + * Description: + * The connection cannot be established because the z/VM guest virtual + * machine with the peer interface is not running. + * User action: + * Ensure that the z/VM guest virtual machine with the peer interface is + * running; then try again to establish the connection. + */ + +/*? + * Text: "%s: The IUCV device failed to connect to the peer on z/VM guest %s\n" + * Severity: Warning + * Parameter: + * @1: bus ID of the IUCV device + * @2: z/VM user ID + * Description: + * The connection cannot be established because the z/VM guest virtual machine + * with the peer interface is not configured for IUCV connections. + * User action: + * Configure the z/VM guest virtual machine with the peer interface for IUCV + * connections; then try again to establish the connection. + */ + +/*? + * Text: "%s: Connecting the IUCV device would exceed the maximum number of IUCV connections\n" + * Severity: Error + * Parameter: + * @1: bus ID of the IUCV device + * Description: + * The connection cannot be established because the maximum number of IUCV + * connections has been reached on the local z/VM guest virtual machine. + * User action: + * Close some of the established IUCV connections on the local z/VM guest + * virtual machine; then try again to establish the connection. + */ + +/*? + * Text: "%s: z/VM guest %s has too many IUCV connections to connect with the IUCV device\n" + * Severity: Error + * Parameter: + * @1: bus ID of the IUCV device + * @2: remote z/VM user ID + * Description: + * Connecting to the remote z/VM guest virtual machine failed because the + * maximum number of IUCV connections for the remote z/VM guest virtual + * machine has been reached. + * User action: + * Close some of the established IUCV connections on the remote z/VM guest + * virtual machine; then try again to establish the connection. + */ + +/*? + * Text: "%s: The IUCV device cannot connect to a z/VM guest with no IUCV authorization\n" + * Severity: Error + * Parameter: + * @1: bus ID of the IUCV device + * Description: + * Because the remote z/VM guest virtual machine is not authorized for IUCV + * connections, the connection cannot be established. + * User action: + * Add the statements 'IUCV ALLOW' and 'IUCV ANY' to the z/VM directory + * entry of the remote z/VM guest virtual machine; then try again to + * establish the connection. See "z/VM CP Planning and Administration" + * for details about the IUCV statements. + */ + +/*? + * Text: "%s: Connecting the IUCV device failed with error %d\n" + * Severity: Error + * Parameter: + * @1: bus ID of the IUCV device + * @2: error code + * Description: + * The connection cannot be established because of an IUCV CONNECT error. + * User action: + * Report this problem to your support organization. + */ + +/*? + * Text: "%s: The IUCV device has been connected successfully to %s\n" + * Severity: Informational + * Parameter: + * @1: bus ID of the IUCV device + * @2: remote z/VM user ID + * Description: + * The connection has been established and the interface is ready to + * transmit communication packages. + * User action: + * None. + */ + +/*? + * Text: "%s: The IUCV interface to %s has been established successfully\n" + * Severity: Informational + * Parameter: + * @1: bus ID of the IUCV device + * @2: remote z/VM user ID + * Description: + * The IUCV interface to the remote z/VM guest virtual machine has been + * established and can be activated with "ifconfig up" or an equivalent + * command. + * User action: + * None. + */ + +/*? + * Text: "%s: The IUCV device is connected to %s and cannot be removed\n" + * Severity: Warning + * Parameter: + * @1: bus ID of the IUCV device + * @2: remote z/VM user ID + * Description: + * Removing a connection failed because the interface is active with a peer + * interface on a remote z/VM guest virtual machine. + * User action: + * Deactivate the interface with "ifconfig down" or an equivalent command; + * then try again to remove the interface. + */ + +/*? + * Text: "%s: The peer z/VM guest %s has closed the connection\n" + * Severity: Informational + * Parameter: + * @1: bus ID of the IUCV device + * @2: remote z/VM user ID + * Description: + * The peer interface is no longer available. + * User action: + * Either deactivate and remove the interface, or wait for the peer + * z/VM guest to re-establish the interface. + */ + +/*? Text: "driver unloaded\n" */ +/*? Text: "driver initialized\n" */ +/*? Text: "netif_stop_queue() cannot be called before register_netdev()\n" */ +/*? Text: "flen=%u proglen=%u pass=%u image=%pK from=%s pid=%d\n" */ +/*? Text: "%s selects TX queue %d, but real number of TX queues is %d\n" */ +/*? Text: "%s: %d output lines suppressed due to ratelimiting\n" */ --- linux-azure-5.8-5.8.0.orig/Documentation/kmsg/s390/numa +++ linux-azure-5.8-5.8.0/Documentation/kmsg/s390/numa @@ -0,0 +1,11 @@ +/*? + * Text: "NUMA mode: %s\n" + * Severity: Informational + * Parameter: + * @1: mode + * Description: + * Linux started with the specified NUMA mode. + * User action: + * None. + */ +/*? Text: "%s: %d output lines suppressed due to ratelimiting\n" */ --- linux-azure-5.8-5.8.0.orig/Documentation/kmsg/s390/numa_emu +++ linux-azure-5.8-5.8.0/Documentation/kmsg/s390/numa_emu @@ -0,0 +1,50 @@ +/*? + * Text: "Not enough memory for %d nodes, reducing node count\n" + * Severity: Warning + * Parameter: + * @1: requested number of nodes + * Description: + * Using the requested memory stripe size for emulating the requested number of + * NUMA nodes requires more than the available memory. The number of nodes is + * specified with the emu_nodes= kernel parameter. The memory stripe size to + * be used for distributing the available memory among the nodes is specified + * with the emu_size= kernel parameter. Fewer nodes were created than the + * requested number; each node has one memory stripe of the requested size. + * User action: + * Specify fewer nodes, reduce the memory stripe size, or make more memory + * available to your Linux instance. + */ + +/*? + * Text: "Creating %d nodes with memory stripe size %ld MB\n" + * Severity: Informational + * Parameter: + * @1: number of nodes + * @2: stripe size + * Description: + * NUMA emulation is activated with the reported number of NUMA nodes. + * The specified memory stripe size is used to distribute, in round-robin + * fashion, the available memory among the nodes. + * User action: + * None. + */ + +/*? + * Text: "Increasing memory stripe size from %ld MB to %ld MB\n" + * Severity: Warning + * Parameter: + * @1: requested memory stripe size + * @2: adjusted memory stripe size + * Description: + * NUMA emulation could not use the requested memory stripe size and + * therefore has increased it to the next possible value. + * The requested memory stripe size is a default value or it was specified + * with the emu_size= kernel parameter. + * The memory stripe size must be a multiple of the memory block size that + * can be read in hexadecimal notation from + * /sys/devices/system/memory/block_size_bytes. + * User action: + * To avoid this message in the future, specify a valid memory stripe size + * with the emu_size= kernel parameter. + */ +/*? Text: "%s: %d output lines suppressed due to ratelimiting\n" */ --- linux-azure-5.8-5.8.0.orig/Documentation/kmsg/s390/os_info +++ linux-azure-5.8-5.8.0/Documentation/kmsg/s390/os_info @@ -0,0 +1,36 @@ +/*? + * Text: "entry %i: %s (addr=0x%lx size=%lu)\n" + * Severity: Informational + * Parameter: + * @1: entry ID + * @2: entry state + * @3: entry address + * @4: entry size + * Description: + * Linux is running in kdump mode and reports information defined by the + * previously running production kernel. Possible values for + * "entry state" are: + * + * - copied: The entry has been found, verified, and copied + * + * - not available: The entry has not been defined + * + * - checksum failed: The entry has been found, but it is not valid + * User action: + * If kdump fails, contact your service organization and include this message + * in the error report. + */ + +/*? + * Text: "crashkernel: addr=0x%lx size=%lu\n" + * Severity: Informational + * Parameter: + * @1: address + * @2: size + * Description: + * Linux is running in kdump mode and reports the address and size of + * the memory area that was reserved for kdump by the previously running + * production kernel. + * User action: + * None. + */ --- linux-azure-5.8-5.8.0.orig/Documentation/kmsg/s390/perf +++ linux-azure-5.8-5.8.0/Documentation/kmsg/s390/perf @@ -0,0 +1,90 @@ +/*? + * Text: "CPU[%i] CPUM_CF: ver=%u.%u A=%04x E=%04x C=%04x\n" + * Severity: Informational + * Parameter: + * @1: cpu number + * @2: first version number + * @3: second version number + * @4: counter set authorization + * @5: counter set enable controls + * @6: counter set activation controls + * Description: + * This message displays information about the CPU-measurement counter facility + * (CPUM_CF) on a particular CPU. For details, see + * "The Load-Program-Parameter and the CPU-Measurement Facilities", SA23-2260. + * User action: + * None. + */ + +/*? + * Text: "CPU[%i] CPUM_SF: basic=%i diag=%i min=%lu max=%lu cpu_speed=%u\n" + * Severity: Informational + * Parameter: + * @1: cpu number + * @2: authorization status for the basic-sampling function + * @3: authorization status for the diagnostic-sampling function + * @4: minimum sampling interval + * @5: maximum sampling interval + * @6: cpu speed + * Description: + * This message displays generic information about the CPU-measurement sampling + * facility (CPUM_SF) on a particular CPU. For details, see + * "The Load-Program-Parameter and the CPU-Measurement Facilities", SA23-2260. + * User action: + * None. + */ + +/*? + * Text: "CPU[%i] CPUM_SF: Basic-sampling: a=%i e=%i c=%i bsdes=%i tear=%016lx dear=%016lx\n" + * Severity: Informational + * Parameter: + * @1: cpu number + * @2: authorization control + * @3: enable control + * @4: activation control + * @5: basic-sampling-data-entry size + * @6: tear register contents + * @7: dear register contents + * Description: + * This message displays information about the basic-sampling function of the + * CPU-measurement sampling facility (CPUM_SF) on a particular CPU. + * For details, see + * "The Load-Program-Parameter and the CPU-Measurement Facilities", SA23-2260. + * User action: + * None. + */ + +/*? + * Text: "CPU[%i] CPUM_SF: Diagnostic-sampling: a=%i e=%i c=%i dsdes=%i tear=%016lx dear=%016lx\n" + * Severity: Informational + * Parameter: + * @1: cpu number + * @2: authorization control + * @3: enable control + * @4: activation control + * @5: diagnostic-sampling-data-entry size + * @6: tear register contents + * @7: dear register contents + * Description: + * This message displays information about the diagnostic-sampling function of the + * CPU-measurement sampling facility (CPUM_SF) on a particular CPU. + * For details, see + * "The Load-Program-Parameter and the CPU-Measurement Facilities", SA23-2260. + * User action: + * None. + */ + +/*? + * Text: "The sampling facility is already reserved by %p\n" + * Severity: Warning + * Parameter: + * @1: address of perf sampling support owner + * Description: + * A process tried to reserve the sampling facility support, but it was already + * reserved by another process. + * User action: + * Check whether another process, for example, the perf program or OProfile is + * currently active. Retry activating the sampling facility after the other + * process has ended. + */ +/*? Text: "%s: %d output lines suppressed due to ratelimiting\n" */ --- linux-azure-5.8-5.8.0.orig/Documentation/kmsg/s390/prng +++ linux-azure-5.8-5.8.0/Documentation/kmsg/s390/prng @@ -0,0 +1,103 @@ +/* prng */ + +/*? + * Text: "prng runs in TDES mode with chunksize=%d and reseed_limit=%u\n" + * Severity: Informational + * Parameter: + * @1: read chunk size in bytes + * @2: reseed limit + * Description: + * The pseudo-random number device driver started in triple DES mode. + * For IBM mainframes earlier than IBM zEnterprise EC12 (zEC12), + * triple DES is the only available mode. + * As of zEC12, the preferred mode is SHA-512. + * User action: + * If triple DES is the expected mode, no action is required. + * Otherwise, verify that the prng started with the mode= module or + * prng.mode= kernel parameter set to a value other than 1. + * The value 1 forces triple DES mode. Also ensure that the mainframe + * runs with the latest firmware level. + */ + +/*? + * Text: "The prng module stopped after running in triple DES mode\n" + * Severity: Informational + * Description: + * The pseudo-random number device driver was running in triple DES mode. + * The device driver module, prng, was unloaded, or it stopped + * because Linux shut down. + * User action: + * None. + */ + +/*? + * Text: "The prng module cannot start in SHA-512 mode\n" + * Severity: Error + * Description: + * The pseudo-random number device driver was loaded with the mode= module parameter + * or the prng.mode= kernel parameter set to 2. This setting forces SHA-512 mode, + * but the required support for MSA 5 is not available. This support requires an IBM + * zEnterprise EC12 (zEC12) or later mainframe. + * User action: + * If your mainframe is earlier than zEC12, set the mode= module or + * prng.mode= kernel parameter to 0 or 1 to run the + * pseudo-random number device driver in triple DES mode. + * Otherwise, ensure that MSA 5 support available. + */ + +/*? + * Text: "prng runs in SHA-512 mode with chunksize=%d and reseed_limit=%u\n" + * Severity: Informational + * Parameter: + * @1: read chunk size in bytes + * @2: reseed limit + * Description: + * The pseudo-random number device driver started in SHA-512 mode. + * As of IBM zEnterprise EC12, this is the preferred mode. + * User action: + * None. + */ + +/*? + * Text: "The prng module stopped after running in SHA-512 mode\n" + * Severity: Informational + * Description: + * The pseudo-random number device driver was running in SHA-512 mode. + * The device driver module, prng, was unloaded, or stopped + * because Linux shut down. + * User action: + * None. + */ + +/*? + * Text: "The prng self test state test for the SHA-512 mode failed\n" + * Severity: Error + * Description: + * The pseudo-random number device driver is not operational because the self test failed. + * After processing a published National Institute of Standards and Technology (NIST) test vector for the + * Deterministic Random Bit Generator (DRBG) algorithm, the device driver + * was not in the expected working state. This failure might indicate + * that the cryptographic software or hardware is not working correctly. + * The processed NIST test vector was: Hash Drbg, Sha-512, Count #0. + * User action: + * Unload and reload the prng module, or + * if prng was compiled into the kernel, restart Linux. + * If the error persists, contact your support organization. + */ + +/*? + * Text: "The prng self test data test for the SHA-512 mode failed\n" + * Severity: Error + * Description: + * The pseudo-random number device driver is not operational because the self test failed. + * After processing a published National Institute of Standards and Technology (NIST) test vector for the + * Deterministic Random Bit Generator (DRBG) algorithm, the device driver + * did not produce the expected pseudo-random data. This failure might indicate + * that the cryptographic software or hardware is not working correctly. + * The processed NIST test vector was: Hash Drbg, Sha-512, Count #0. + * User action: + * Unload and reload the prng module, or + * if prng was compiled into the kernel, restart Linux. + * If the error persists, contact your support organization. + */ +/*? Text: "%s: %d output lines suppressed due to ratelimiting\n" */ --- linux-azure-5.8-5.8.0.orig/Documentation/kmsg/s390/qeth +++ linux-azure-5.8-5.8.0/Documentation/kmsg/s390/qeth @@ -0,0 +1,929 @@ +/*? + * Text: "%s: The LAN is offline\n" + * Severity: Warning + * Parameter: + * @1: bus ID of the qeth device + * Description: + * A start LAN command was sent by the qeth device driver but the physical or + * virtual adapter has not started the LAN. The LAN might take a few seconds + * to become available. + * User action: + * Check the status of the qeth device, for example, with the lsqeth command. + * If the device does not become operational within a few seconds, initiate a + * recovery process, for example, by writing '1' to the 'recover' sysfs + * attribute of the device. + */ + +/*? + * Text: "%s: A recovery process has been started for the device\n" + * Severity: Warning + * Parameter: + * @1: bus ID of the qeth device + * Description: + * A recovery process was started either by the qeth device driver or through + * a user command. + * User action: + * Wait until a message indicates the completion of the recovery process. + */ + +/*? + * Text: "%s: The qeth device driver failed to recover an error on the device\n" + * Severity: Warning + * Parameter: + * @1: bus ID of the qeth device + * Description: + * The qeth device driver performed an automatic recovery operation to recover + * an error on a qeth device. The recovery operation failed. + * User action: + * Try the following actions in the given order: i) Check the status of the + * qeth device, for example, with the lsqeth command. ii) Initiate a recovery + * process by writing '1' to the 'recover' sysfs attribute of the device. + * iii) Ungroup and regroup the subchannel triplet of the device. vi) Reboot + * Linux. v) If the problem persists, gather Linux debug data and report the + * problem to your support organization. + */ + +/*? + * Text: "%s: Device recovery failed to restore all offload features\n" + * Severity: Warning + * Parameter: + * @1: bus ID of the qeth device + * Description: + * The qeth device driver performed a recovery operation on a qeth device. Part + * of the recovery is to restore the offload features that were enabled before + * the recovery. At least one of those offload features could not be restored. + * User action: + * Check which offload features are enabled on the device, for example with + * the "ethtool -k" command. Try to explicitly re-enable the missing offload + * features for the device, for example with the "ethtool -K" command. + */ + +/*? + * Text: "%s: The link for interface %s on CHPID 0x%X failed\n" + * Severity: Warning + * Parameter: + * @1: bus ID of the qeth device + * @2: network interface name + * @3: CHPID + * Description: + * A network link failed. A possible reason for this error is that a physical + * network cable has been disconnected. + * User action: + * Ensure that the network cable on the adapter hardware is connected properly. + * If the connection is to a guest LAN, ensure that the device is still coupled + * to the guest LAN. + */ + +/*? + * Text: "%s: The link for %s on CHPID 0x%X has been restored\n" + * Severity: Informational + * Parameter: + * @1: bus ID of the qeth device + * @2: network interface name + * @3: CHPID + * Description: + * A failed network link has been re-established. A device recovery is in + * progress. + * User action: + * Wait until a message indicates the completion of the recovery process. + */ + +/*? + * Text: "%s: A hardware operation timed out on the device\n" + * Severity: Warning + * Parameter: + * @1: bus ID of the qeth device + * Description: + * A hardware operation timed out on the qeth device. + * User action: + * Check the status of the qeth device, for example, with the lsqeth command. + * If the device is not operational, initiate a recovery process, for example, + * by writing '1' to the 'recover' sysfs attribute of the device. + */ + +/*? + * Text: "%s: The adapter hardware is of an unknown type\n" + * Severity: Error + * Parameter: + * @1: bus ID of the qeth device + * Description: + * The qeth device driver does not recognize the adapter hardware. The cause + * of this problem could be a hardware error or a Linux level that does not + * support your adapter hardware. + * User action: + * i) Investigate if your adapter hardware is supported by your Linux level. + * Consider using hardware that is supported by your Linux level or upgrading + * to a Linux level that supports your hardware. ii) Install the latest + * firmware on your adapter hardware. iii) If the problem persists and is not + * caused by a version mismatch, contact IBM support. + */ + +/*? + * Text: "%s: The adapter is used exclusively by another host\n" + * Severity: Error + * Parameter: + * @1: bus ID of the qeth device + * Description: + * The qeth adapter is exclusively used by another host. + * User action: + * Use another qeth adapter or configure this one not exclusively to a + * particular host. + */ + +/*? + * Text: "%s: QDIO reported an error, rc=%i\n" + * Severity: Warning + * Parameter: + * @1: bus ID of the qeth device + * @2: return code + * Description: + * The QDIO subsystem reported an error. + * User action: + * Check for related QDIO errors. Check the status of the qeth device, for + * example, with the lsqeth command. If the device is not operational, initiate + * a recovery process, for example, by writing '1' to the 'recover' sysfs + * attribute of the device. + */ + +/*? + * Text: "%s: There is no kernel module to support discipline %d\n" + * Severity: Error + * Parameter: + * @1: bus ID of the qeth device + * @2: discipline + * Description: + * The qeth device driver or a user command requested a kernel module for a + * particular qeth discipline. Either the discipline is not supported by the + * qeth device driver or the requested module is not available to your Linux + * system. + * User action: + * Check if the requested discipline module has been compiled into the kernel + * or is present in /lib/modules//kernel/drivers/s390/net. + */ + +/*? + * Text: "Initializing the qeth device driver failed\n" + * Severity: Error + * Parameter: + * Description: + * The base module of the qeth device driver could not be initialized. + * User action: + * See errno.h to determine the reason for the error. + * i) Reboot Linux. ii) If the problem persists, gather Linux debug data and + * report the problem to your support organization. + */ + +/*? + * Text: "%s: Registering IP address %s failed\n" + * Severity: Warning + * Parameter: + * @1: bus ID of the qeth device + * @2: IP address + * Description: + * An IP address could not be registered with the network adapter. + * User action: + * Check if another operating system instance has already registered the + * IP address with the same network adapter or at the same logical IP subnet. + */ + +/*? + * Text: "%s: Reading the adapter MAC address failed\n" + * Severity: Warning + * Parameter: + * @1: bus ID of the qeth device + * Description: + * The qeth device driver could not read the MAC address from the network + * adapter. + * User action: + * Ungroup and regroup the subchannel triplet of the device. If this does not + * resolve the problem, reboot Linux. If the problem persists, gather Linux + * debug data and report the problem to your support organization. + */ + +/*? + * Text: "%s: Starting ARP processing support for %s failed\n" + * Severity: Warning + * Parameter: + * @1: bus ID of the qeth device + * @2: network interface name + * Description: + * The qeth device driver could not start ARP support on the network adapter. + * User action: + * Ungroup and regroup the subchannel triplet of the device. If this does not + * resolve the problem, reboot Linux. If the problem persists, gather Linux + * debug data and report the problem to your support organization. + */ + +/*? + * Text: "%s: Starting IP fragmentation support for %s failed\n" + * Severity: Warning + * Parameter: + * @1: bus ID of the qeth device + * @2: network interface name + * Description: + * The qeth device driver could not start IP fragmentation support on the + * network adapter. + * User action: + * Ungroup and regroup the subchannel triplet of the device. If this does not + * resolve the problem, reboot Linux. If the problem persists, gather Linux + * debug data and report the problem to your support organization. + */ + +/*? + * Text: "%s: Starting VLAN support for %s failed\n" + * Severity: Warning + * Parameter: + * @1: bus ID of the qeth device + * @2: network interface name + * Description: + * The qeth device driver could not start VLAN support on the network adapter. + * User action: + * None if you do not require VLAN support. If you need VLAN support, + * ungroup and regroup the subchannel triplet of the device. If this does not + * resolve the problem, reboot Linux. If the problem persists, gather Linux + * debug data and report the problem to your support organization. + */ + +/*? + * Text: "%s: Starting multicast support for %s failed\n" + * Severity: Warning + * Parameter: + * @1: bus ID of the qeth device + * @2: network interface name + * Description: + * The qeth device driver could not start multicast support on the network + * adapter. + * User action: + * Ungroup and regroup the subchannel triplet of the device. If this does not + * resolve the problem, reboot Linux. If the problem persists, gather Linux + * debug data and report the problem to your support organization. + */ + +/*? + * Text: "%s: Activating IPv6 support for %s failed\n" + * Severity: Error + * Parameter: + * @1: bus ID of the qeth device + * @2: network interface name + * Description: + * The qeth device driver could not activate IPv6 support on the network + * adapter. + * User action: + * None if you do not require IPv6 communication. If you need IPv6 support, + * ungroup and regroup the subchannel triplet of the device. If this does not + * resolve the problem, reboot Linux. If the problem persists, gather Linux + * debug data and report the problem to your support organization. + */ + +/*? + * Text: "%s: Enabling the passthrough mode for %s failed\n" + * Severity: Warning + * Parameter: + * @1: bus ID of the qeth device + * @2: network interface name + * Description: + * The qeth device driver could not enable the passthrough mode on the + * network adapter. The passthrough mode is required for all network traffic + * other than IPv4. In particular, the passthrough mode is required for IPv6 + * traffic. + * User action: + * None if all you want to support is IPv4 communication. If you want to support + * IPv6 or other network traffic apart from IPv4, ungroup and regroup the + * subchannel triplet of the device. If this does not resolve the problem, + * reboot Linux. If the problem persists, gather Linux debug data and report + * the problem to your support organization. + */ + +/*? + * Text: "%s: Enabling broadcast filtering for %s failed\n" + * Severity: Warning + * Parameter: + * @1: bus ID of the qeth device + * @2: network interface name + * Description: + * The qeth device driver could not enable broadcast filtering on the network + * adapter. + * User action: + * Ungroup and regroup the subchannel triplet of the device. If this does not + * resolve the problem, reboot Linux. If the problem persists, gather Linux + * debug data and report the problem to your support organization. + */ + +/*? + * Text: "%s: Setting up broadcast filtering for %s failed\n" + * Severity: Warning + * Parameter: + * @1: bus ID of the qeth device + * @2: network interface name + * Description: + * The qeth device driver could not set up broadcast filtering on the network + * adapter. + * User action: + * Ungroup and regroup the subchannel triplet of the device. If this does not + * resolve the problem, reboot Linux. If the problem persists, gather Linux + * debug data and report the problem to your support organization. + */ + +/*? + * Text: "%s: Setting up broadcast echo filtering for %s failed\n" + * Severity: Warning + * Parameter: + * @1: bus ID of the qeth device + * @2: network interface name + * Description: + * The qeth device driver could not set up broadcast echo filtering on the + * network adapter. + * User action: + * Ungroup and regroup the subchannel triplet of the device. If this does not + * resolve the problem, reboot Linux. If the problem persists, gather Linux + * debug data and report the problem to your support organization. + */ + +/*? + * Text: "%s: Starting HW checksumming for %s failed, using SW checksumming\n" + * Severity: Warning + * Parameter: + * @1: bus ID of the qeth device + * @2: network interface name + * Description: + * The network adapter supports hardware checksumming for IP packages + * but the qeth device driver could not start hardware checksumming on the + * adapter. The qeth device driver continues to use software checksumming for + * IP packages. + * User action: + * None if you do not require hardware checksumming for network + * traffic. If you want to enable hardware checksumming, ungroup and regroup + * the subchannel triplet of the device. If this does not resolve the problem, + * reboot Linux. If the problem persists, gather Linux debug data and report + * the problem to your support organization. + */ + +/*? + * Text: "%s: Enabling HW checksumming for %s failed, using SW checksumming\n" + * Severity: Warning + * Parameter: + * @1: bus ID of the qeth device + * @2: network interface name + * Description: + * The network adapter supports hardware checksumming for IP packages + * but the qeth device driver could not enable hardware checksumming on the + * adapter. The qeth device driver continues to use software checksumming for + * IP packages. + * User action: + * None if you do not require hardware checksumming for network + * traffic. If you want to enable hardware checksumming, ungroup and regroup + * the subchannel triplet of the device. If this does not resolve the problem, + * reboot Linux. If the problem persists, gather Linux debug data and report + * the problem to your support organization. + */ + +/*? + * Text: "%s: Starting outbound TCP segmentation offload for %s failed\n" + * Severity: Warning + * Parameter: + * @1: bus ID of the qeth device + * @2: network interface name + * Description: + * The network adapter supports TCP segmentation offload, but the qeth device + * driver could not start this support on the adapter. + * User action: + * None if you do not require TCP segmentation offload. If you want to + * enable TCP segmentation offload, ungroup and regroup the subchannel triplet + * of the device. If this does not resolve the problem, reboot Linux. If the + * problem persists, gather Linux debug data and report the problem to your + * support organization. + */ + +/*? + * Text: "%s: The network adapter failed to generate a unique ID\n" + * Severity: Warning + * Parameter: + * @1: bus ID of the qeth device + * Description: + * In IBM mainframe environments, network interfaces are not identified by + * a specific MAC address. Therefore, the network adapters provide the network + * interfaces with unique IDs to be used in their IPv6 link local addresses. + * Without such a unique ID, duplicate addresses might be assigned in other + * LPARs. + * User action: + * Install the latest firmware on the adapter hardware. Manually, configure + * an IPv6 link local address for this device. + */ + +/*? + * Text: "There is no IPv6 support for the layer 3 discipline\n" + * Severity: Warning + * Description: + * If you want to use IPv6 with the layer 3 discipline, you need a Linux kernel + * with IPv6 support. Because your Linux kernel has not been compiled with + * IPv6 support, you cannot use IPv6 with the layer 3 discipline, even if your + * adapter supports IPv6. + * User action: + * Use a Linux kernel that has been complied to include IPv6 support if you + * want to use IPv6 with layer 3 qeth devices. + */ + +/*? + * Text: "%s: The qeth device is not configured for the OSI layer required by z/VM\n" + * Severity: Error + * Parameter: + * @1: bus ID of the qeth device + * Description: + * A qeth device that connects to a virtual network on z/VM must be configured for the + * same Open Systems Interconnection (OSI) layer as the virtual network. An ETHERNET + * guest LAN or VSWITCH uses the data link layer (layer 2) while an IP guest LAN + * or VSWITCH uses the network layer (layer 3). + * User action: + * If you are connecting to an ETHERNET guest LAN or VSWITCH, set the layer2 sysfs + * attribute of the qeth device to 1. If you are connecting to an IP guest LAN or + * VSWITCH, set the layer2 sysfs attribute of the qeth device to 0. + */ + +/*? + * Text: "%s: Starting source MAC-address support for %s failed\n" + * Severity: Warning + * Parameter: + * @1: bus ID of the qeth device + * @2: network interface name + * Description: + * The qeth device driver could not enable source MAC-address on the network + * adapter. + * User action: + * Ungroup and regroup the subchannel triplet of the device. If this does not + * resolve the problem, reboot Linux. If the problem persists, gather Linux + * debug data and report the problem to your support organization. + */ + +/*? + * Text: "%s: MAC address %pM already exists\n" + * Severity: Warning + * Parameter: + * @1: bus ID of the qeth device + * @2: MAC-address + * Description: + * Setting the MAC address for the qeth device fails, because this + * MAC address is already defined on the OSA CHPID. + * User action: + * Use a different MAC address for this qeth device. + */ + +/*? + * Text: "%s: MAC address %pM is not authorized\n" + * Severity: Warning + * Parameter: + * @1: bus ID of the qeth device + * @2: MAC-address + * Description: + * This qeth device is a virtual network interface card (NIC), to which z/VM + * has already assigned a MAC address. z/VM MAC address verification does + * not allow you to change this predefined address. + * User action: + * None; use the MAC address that has been assigned by z/VM. + */ + +/*? + * Text: "%s: The HiperSockets network traffic analyzer is activated\n" + * Severity: Informational + * Parameter: + * @1: bus ID of the qeth device + * Description: + * The sysfs 'sniffer' attribute of the HiperSockets device has the value '1'. + * The corresponding HiperSockets interface has been switched into promiscuous mode. + * As a result, the HiperSockets network traffic analyzer is started on the device. + * User action: + * None. + */ + + /*? + * Text: "%s: The HiperSockets network traffic analyzer is deactivated\n" + * Severity: Informational + * Parameter: + * @1: bus ID of the qeth device + * Description: + * The sysfs 'sniffer' attribute of the HiperSockets device has the value '1'. + * Promiscuous mode has been switched off for the corresponding HiperSockets interface + * As a result, the HiperSockets network traffic analyzer is stopped on the device. + * User action: + * None. + */ + +/*? + * Text: "%s: The device is not authorized to run as a HiperSockets network traffic analyzer\n" + * Severity: Warning + * Parameter: + * @1: bus ID of the qeth device + * Description: + * The sysfs 'sniffer' attribute of the HiperSockets device has the value '1'. + * The corresponding HiperSockets interface is switched into promiscuous mode + * but the network traffic analyzer (NTA) rules configured at the Support Element (SE) + * do not allow tracing. Possible reasons are: + * - Tracing is not authorized for all HiperSockets LANs in the mainframe system + * - Tracing is not authorized for this HiperSockets LAN + * - LPAR is not authorized to enable an NTA + * User action: + * Configure appropriate HiperSockets NTA rules at the SE. + */ + +/*? + * Text: "%s: A HiperSockets network traffic analyzer is already active in the HiperSockets LAN\n" + * Severity: Warning + * Parameter: + * @1: bus ID of the qeth device + * Description: + * The sysfs 'sniffer' attribute of the HiperSockets device has the value '1'. + * The HiperSockets interface is switched into promiscuous mode but another + * HiperSockets device on the same HiperSockets LAN is already running as + * a network traffic analyzer. + * A HiperSockets LAN can only have one active network traffic analyzer. + * User action: + * Do not configure multiple HiperSockets devices in the same HiperSockets LAN as + * tracing devices. + */ + +/*? + * Text: "%s: Enabling HW TX checksumming for %s failed, using SW TX checksumming\n" + * Severity: Warning + * Parameter: + * @1: bus ID of the qeth device + * @2: network interface name + * Description: + * The network adapter supports hardware checksumming for outgoing IP packages + * but the qeth device driver could not enable hardware TX checksumming on the + * adapter. The qeth device driver continues to use software checksumming for + * outgoing IP packages. + * User action: + * None if you do not require hardware checksumming for outgoing network + * traffic. If you want to enable hardware checksumming, ungroup and regroup + * the subchannel triplet of the device. If this does not resolve the problem, + * reboot Linux. If the problem persists, gather Linux debug data and report + * the problem to your support organization. + */ + +/*? + * Text: "%s: A connection could not be established because of an OLM limit\n" + * Severity: Error + * Parameter: + * @1: bus ID of the qeth device + * Description: + * z/OS has activated Optimized Latency Mode (OLM) for a connection through an OSA Express3 adapter. + * This reduces the maximum number of concurrent connections per physical port for shared adapters. + * The new connection would exceed the maximum. Linux cannot establish further connections using + * this adapter. + * User action: + * If possible, deactivate an existing connection that uses this adapter and try again to establish + * the new connection. If you cannot free an existing connection, use a different adapter for the + * new connection. + */ + +/*? + * Text: "%s: Setting the device online failed because of insufficient authorization\n" + * Severity: Error + * Parameter: + * @1: bus ID of the qeth device + * Description: + * The qeth device is configured with OSX CHPIDs. An OSX CHPID cannot be activated unless the LPAR is explicitly authorized to access it. + * For z/VM guest operating systems, the z/VM user ID must be explicitly authorized in addition to the LPAR. + * You grant these authorizations through the Service Element. + * User action: + * At the Service Element, authorize the LPAR and, if applicable, the z/VM user ID for using the OSX CHPIDs with which the qeth device has been configured. + * Then try again to set the device online. + */ + +/*? + * Text: "%s: portname is deprecated and is ignored\n" + * Severity: Warning + * Parameter: + * @1: bus ID of the qeth device + * Description: + * An OSA-Express port name was required to identify a shared OSA port. + * All operating system instances that shared the port had to use the same port name. + * This requirement no longer applies, and the specified portname attribute is ignored. + * User action: + * For future upgrades, remove OSA port name specifications from your + * network configuration. + */ + +/*? Text: "core functions removed\n" */ +/*? Text: "%s: Device is a%s card%s%s%s\nwith link type %s.\n" */ +/*? Text: "%s: issue_next_read failed: no iob available!\n" */ +/*? Text: "%s: Priority Queueing not supported\n" */ +/*? Text: "%s: sense data available. cstat 0x%X dstat 0x%X\n" */ +/*? Text: "loading core functions\n" */ +/*? Text: "%s: MAC address %pM successfully registered on device %s\n" */ +/*? Text: "%s: Device successfully recovered!\n" */ +/*? Text: "register layer 2 discipline\n" */ +/*? Text: "unregister layer 2 discipline\n" */ +/*? Text: "%s: Hardware IP fragmentation not supported on %s\n" */ +/*? Text: "%s: IPv6 not supported on %s\n" */ +/*? Text: "%s: VLAN not supported on %s\n" */ +/*? Text: "%s: Inbound source MAC-address not supported on %s\n" */ +/*? Text: "%s: IPV6 enabled\n" */ +/*? Text: "%s: ARP processing not supported on %s!\n" */ +/*? Text: "%s: Hardware IP fragmentation enabled \n" */ +/*? Text: "%s: set adapter parameters not supported.\n" */ +/*? Text: "%s: VLAN enabled\n" */ +/*? Text: "register layer 3 discipline\n" */ +/*? Text: "%s: Outbound TSO enabled\n" */ +/*? Text: "%s: Broadcast not supported on %s\n" */ +/*? Text: "%s: Outbound TSO not supported on %s\n" */ +/*? Text: "%s: Inbound HW Checksumming not supported on %s,\ncontinuing using Inbound SW Checksumming\n" */ +/*? Text: "%s: Using no checksumming on %s.\n" */ +/*? Text: "%s: Broadcast enabled\n" */ +/*? Text: "%s: Multicast not supported on %s\n" */ +/*? Text: "%s: Using SW checksumming on %s.\n" */ +/*? Text: "%s: HW Checksumming (%sbound) enabled\n" */ +/*? Text: "unregister layer 3 discipline\n" */ +/*? Text: "%s: Multicast enabled\n" */ +/*? Text: "%s: QDIO data connection isolation is deactivated\n" */ +/*? Text: "%s: QDIO data connection isolation is activated\n" */ +/*? Text: "%s: Adapter does not support QDIO data connection isolation\n" */ +/*? Text: "%s: Adapter is dedicated. QDIO data connection isolation not supported\n" */ +/*? Text: "%s: TSO does not permit QDIO data connection isolation\n" */ +/*? Text: "%s: HW TX Checksumming enabled\n" */ +/*? Text: "netif_stop_queue() cannot be called before register_netdev()\n" */ +/*? Text: "qeth_l3: ignoring TR device\n" */ +/*? Text: "flen=%u proglen=%u pass=%u image=%pK from=%s pid=%d\n" */ +/*? Text: "%s selects TX queue %d, but real number of TX queues is %d\n" */ + +/*? + * Text: "%s: Turning off reflective relay mode at the adjacent switch failed\n" + * Severity: Warning + * Parameter: + * @1: bus ID of the qeth device + * Description: + * The policy for the QDIO data connection isolation was + * changed successfully, and communications are now handled according to the + * new policy. The ISOLATION_FORWARD policy is no longer used, but the qeth + * device driver could not turn off the reflective relay mode on the adjacent + * switch port. + * User action: + * Check the adjacent switch for errors and correct the problem. + */ + +/*? + * Text: "%s: The adjacent switch port does not support reflective relay mode\n" + * Severity: Error + * Parameter: + * @1: bus ID of the qeth device + * Description: + * The 'isolation' sysfs attribute of the qeth device could not be set to 'forward'. + * This setting selects the ISOLATION_FORWARD policy for the QDIO data connection + * isolation. The ISOLATION_FORWARD policy requires a network adapter in Virtual + * Ethernet Port Aggregator (VEPA) mode with an adjacent switch port in reflective + * relay mode. + * User action: + * Use a switch port that supports reflective relay mode if you want to use the + * ISOLATION_FORWARD policy for the qeth device. + */ + +/*? + * Text: "%s: The reflective relay mode cannot be enabled at the adjacent switch port" + * Severity: Error + * Parameter: + * @1: bus ID of the qeth device + * Description: + * The 'isolation' sysfs attribute of the qeth device could not be set to 'forward'. + * This setting selects the ISOLATION_FORWARD policy for the QDIO data connection + * isolation. The ISOLATION_FORWARD policy requires a network adapter in Virtual + * Ethernet Port Aggregator (VEPA) mode with an adjacent switch port in reflective relay + * mode. The qeth device driver failed to enable the required reflective relay mode on + * the adjacent switch port although the switch port supports this mode. + * User action: + * Enable reflective relay mode on the switch for the adjacent port and try again. + */ + +/*? + * Text: "%s: Interface %s is down because the adjacent port is no longer in reflective relay mode\n" + * Severity: Error + * Parameter: + * @1: bus ID of the qeth device + * @2: interface name + * Description: + * The ISOLATION_FORWARD policy is active for the QDIO data connection isolation + * of the qeth device. This policy requires a network adapter in Virtual Ethernet + * Port Aggregator (VEPA) mode with an adjacent switch port in reflective relay mode. + * The reflective relay mode on the adjacent switch port was disabled. The qeth device + * was set offline and the interface was deactivated to prevent any unintended network traffic. + * User action: + * Enable the reflective relay mode again on the adjacent port or use the 'isolation' + * sysfs attribute of the qeth device to set a different policy for the QDIO data connection + * isolation. You can then resume operations by setting the qeth device back + * online and activating the interface. + */ + +/*? + * Text: "%s: Failed to create completion queue\n" + * Severity: Error + * Parameter: + * @1: bus ID of the qeth device + * Description: + * The HiperSockets device could not be configured with a completion queue. + * A completion queue is required to operate AF_IUCV communication in an LPAR. + * User action: + * i) Investigate if you have the latest firmware level in place. + * ii) If the problem persists and is not caused by a version mismatch, contact IBM + * support. + */ + +/*? + * Text: "%s: Completion Queueing supported\n" + * Severity: Informational + * Parameter: + * @1: bus ID of the qeth device + * Description: + * The HiperSockets device supports completion queueing. This is required to + * set up AF_IUCV communication in an LPAR. + */ + +/*? + * Text: "%s: Completion Queue support enabled" + * Severity: Informational + * Parameter: + * @1: bus ID of the qeth device + * Description: + * The HiperSockets device is enabled for completion queueing. This is part of + * the process to set up AF_IUCV communication in an LPAR. + */ + +/*? + * Text: "%s: Completion Queue support disabled" + * Severity: Informational + * Parameter: + * @1: bus ID of the qeth device + * Description: + * The HiperSockets device is disabled for completion queueing. This device + * cannot or no longer be used to set up AF_IUCV communication in an LPAR. + */ + +/*? + * Text: "%s: The device represents a Bridge Capable Port\n" + * Severity: Informational + * Parameter: + * @1: bus ID of the qeth device + * Description: + * You can configure this device as a Bridge Port. + * User action: + * None. + */ + +/*? + * Text: "%s: The device is not configured as a Bridge Port\n" + * Severity: Error + * Parameter: + * @1: bus ID of the qeth device + * Description: + * The Bridge Port role cannot be withdrawn from a device + * that is not configured as a Bridge Port. + * User action: + * None. + */ + +/*? + * Text: "%s: The LAN already has a primary Bridge Port\n" + * Severity: Error + * Parameter: + * @1: bus ID of the qeth device + * Description: + * A LAN can have multiple secondary Bridge Ports, but only + * one primary Bridge Port. Configuring the device as a + * primary Bridge Port failed because another port on the + * LAN has been configured as the primary Bridge Port. + * User action: + * Find out which operating system instance has configured the primary + * Bridge Port. Assure that the primary role for this port is withdrawn + * before trying again to configure your device as the primary Bridge + * Port. Alternatively, consider configuring your device as a secondary + * Bridge Port. + */ + +/*? + * Text: "%s: The device is already a secondary Bridge Port\n" + * Severity: Error + * Parameter: + * @1: bus ID of the qeth device + * Description: + * A device cannot be configured as a primary or secondary + * Bridge Port if it is already configured as a secondary Bridge Port. + * User action: + * None, if you want the device to be a secondary Bridge Port. + * If you want to configure the device as the primary Bridge Port, + * withdraw the secondary role by writing 'none' to the 'bridgeport_role' + * sysfs attribute of the device. Then try again to configure the + * device as the primary Bridge Port. + */ + +/*? + * Text: "%s: The LAN cannot have more secondary Bridge Ports\n" + * Severity: Error + * Parameter: + * @1: bus ID of the qeth device + * Description: + * A LAN can have up to five secondary Bridge Ports. + * You cannot configure a further device as a secondary + * Bridge Port unless the Bridge Ports role is withdrawn from one of + * the existing secondary Bridge Ports. + * User action: + * Assure that the Bridge Port role is withdrawn from one of the + * existing secondary Bridge Ports before trying again to configure your + * device as a secondary Bridge Port. + */ + +/*? + * Text: "%s: The device is already a primary Bridge Port\n" + * Severity: Error + * Parameter: + * @1: bus ID of the qeth device + * Description: + * A device cannot be configured as a primary or secondary + * Bridge Port if it is already configured as a primary Bridge Port. + * User action: + * None, if you want the device to be a primary Bridge Port. + * If you want to configure the device as a secondary Bridge Port, + * withdraw the primary role by writing 'none' to the 'bridgeport_role' + * sysfs attribute of the device. Then try again to configure the + * device as the secondary Bridge Port. + */ + +/*? + * Text: "%s: The device is not authorized to be a Bridge Port\n" + * Severity: Error + * Parameter: + * @1: bus ID of the qeth device + * Description: + * The device cannot be configured as a Bridge Port because + * the required authorizations in the hardware are not in place. + * User action: + * See your hardware documentation about how to authorize + * ports for becoming a Bridge Port. + */ + +/*? + * Text: "%s: A Bridge Port is already configured by a different operating system\n" + * Severity: Error + * Parameter: + * @1: bus ID of the qeth device + * Description: + * Linux instances cannot configure the target port as a Bridge Port. + * Another operating system already uses a Bridge Port on the HiperSockets + * or on the OSA adapter. For example, a z/VM instance might be using + * a port in a VSWITCH configuration. Multiple Bridge Ports on the same + * HiperSockets or OSA adapter must be configured by instances of the same + * operating system, for example, all Linux or all z/VM. + * User action: + * Reconsider your network topology. Configure Bridge Ports only for ports + * on adapters where any other Bridge Ports are configured by other Linux + * instances. + */ + +/*? + * Text: "%s: Setting address notification failed\n" + * Severity: Error + * Parameter: + * @1: bus ID of the qeth device + * Description: + * Enabling or disabling the address notification feature of a + * HiperSockets device failed. The device might not be configured as a + * Bridge Port. + * User action: + * None, unless you need address notifications for this device. + * If you need notifications, confirm that your device is attached to a + * HiperSockets LAN that supports Bridge Capable Ports and that your + * device is configured as a Bridge Port. If the 'bridgeport_role' + * sysfs attribute of the device contains, one of the values 'primary' + * or 'secondary' and you cannot set the address notification, contact + * your support organization. + */ + +/*? + * Text: "%s: Address notification from the Bridge Port stopped %s (%s)\n" + * Severity: Informational + * Parameter: + * @1: bus ID of the qeth device + * @2: network interface name + * @3: error reported by the hardware + * Description: + * A Bridge Port no longer provides address notifications. + * Possible reasons include traffic overflow and that the device is no + * longer configured as a Bridge Port. A udev event with + * BRIDGEDHOST=abort was emitted to alert applications that rely on the + * address notifications. + * User action: + * None. + */ + +/*? + * Text: "%s: The qeth driver ran out of channel command buffers\n" + * Severity: Warning + * Parameter: + * @1: bus ID of the qeth device + * Description: + * Command buffers can temporarily run out during periods of + * intense network configuration activities. + * The device driver recovers from this condition as outstanding + * commands are completed. + * User action: + * Wait for a short time. If the problem persists, + * initiate a recovery process by writing '1' to the 'recover' + * sysfs attribute of the device. + */ +/*? Text: "%s: %d output lines suppressed due to ratelimiting\n" */ --- linux-azure-5.8-5.8.0.orig/Documentation/kmsg/s390/s390dbf +++ linux-azure-5.8-5.8.0/Documentation/kmsg/s390/s390dbf @@ -0,0 +1,83 @@ +/*? + * Text: "Root becomes the owner of all s390dbf files in sysfs\n" + * Severity: Warning + * Description: + * The S/390 debug feature you are using only supports uid/gid = 0. + * User action: + * None. + */ + +/*? + * Text: "Registering debug feature %s failed\n" + * Severity: Error + * Parameter: + * @1: feature name + * Description: + * The initialization of an S/390 debug feature failed. A likely cause of this + * problem is memory constraints. The system keeps running, but the debug + * data for this feature will not be available in sysfs. + * User action: + * Consider assigning more memory to your LPAR or z/VM guest virtual machine. + */ + +/*? + * Text: "Registering view %s/%s would exceed the maximum number of views %i\n" + * Severity: Error + * Parameter: + * @1: feature name + * @2: view name + * @3: maximum + * Description: + * The maximum number of allowed debug feature views has been reached. The + * view has not been registered. The system keeps running but the new view + * will not be available in sysfs. This is a program error. + * User action: + * Report this problem to your support partner. + */ + +/*? + * Text: "%s is not a valid level for a debug feature\n" + * Severity: Warning + * Parameter: + * @1: level + * Description: + * Setting a new level for a debug feature by using the 'level' sysfs attribute + * failed. Valid levels are the minus sign (-) and the integers in the + * range 0 to 6. The minus sign switches off the feature. The numbers switch + * the feature on, where higher numbers produce more debug output. + * User action: + * Write a valid value to the 'level' sysfs attribute. + */ + +/*? + * Text: "Flushing debug data failed because %c is not a valid area\n" + * Severity: Informational + * Parameter: + * @1: debug area number + * Description: + * Flushing a debug area by using the 'flush' sysfs attribute failed. Valid + * values are the minus sign (-) for flushing all areas, or the number of the + * respective area for flushing a single area. + * User action: + * Write a valid area number or the minus sign (-) to the 'flush' sysfs + * attribute. + */ + +/*? + * Text: "Allocating memory for %i pages failed\n" + * Severity: Informational + * Parameter: + * @1: number of pages + * Description: + * Setting the debug feature size by using the 'page' sysfs attribute failed. + * Linux did not have enough memory for expanding the debug feature to the + * requested size. + * User action: + * Use a smaller number of pages for the debug feature or allocate more + * memory to your LPAR or z/VM guest virtual machine. + */ + +/*? Text: "%s: set new size (%i pages)\n" */ +/*? Text: "%s: switched off\n" */ +/*? Text: "%s: level %i is out of range (%i - %i)\n" */ +/*? Text: "Registering view %s/%s failed due to out of memory\n" */ --- linux-azure-5.8-5.8.0.orig/Documentation/kmsg/s390/sclp_cmd +++ linux-azure-5.8-5.8.0/Documentation/kmsg/s390/sclp_cmd @@ -0,0 +1,44 @@ +/*? Text: "sync request failed (cmd=0x%08x, status=0x%02x)\n" */ +/*? Text: "readcpuinfo failed (response=0x%04x)\n" */ +/*? Text: "configure cpu failed (cmd=0x%08x, response=0x%04x)\n" */ +/*? Text: "configure channel-path failed (cmd=0x%08x, response=0x%04x)\n" */ +/*? Text: "read channel-path info failed (response=0x%04x)\n" */ +/*? Text: "assign storage failed (cmd=0x%08x, response=0x%04x, rn=0x%04x)\n" */ +/*? Text: "configure PCI I/O adapter failed: cmd=0x%08x response=0x%04x\n" */ +/*? Text: "request failed (status=0x%02x)\n" */ +/*? Text: "request failed with response code 0x%x\n" */ + +/*? + * Text: "Memory hotplug state changed, suspend refused.\n" + * Severity: Error + * Description: + * Suspend is refused after a memory hotplug operation was performed. + * User action: + * The system needs to be restarted and no memory hotplug operation must be + * performed in order to allow suspend. + */ + +/*? + * Text: "Standby memory at 0x%llx (%lluM of %lluM usable)\n" + * Severity: Informational + * Parameter: + * @1: start address of standby memory + * @2: usable memory in MB + * @3: total detected memory in MB + * Description: + * Standby memory was detected. It can be used for memory hotplug only + * if it is aligned to the Linux hotplug memory block size. + * If the aligned amount of memory matches the total amount, + * all detected standby memory can be used. Otherwise, some of the detected + * memory is unaligned and cannot be used. + * User action: + * None, if the usable and the total amount of detected standby memory match. + * If the amounts of memory do not match, + * check the memory setup of your guest virtual machine and ensure that + * the standby memory start and end + * address is aligned to the Linux hotplug memory block size. + * On Linux, issue "cat /sys/devices/system/memory/block_size_bytes" + * to find the hotplug memory block size value in hexadecimal notation. + * On z/VM, query your memory setup with "vmcp q v store". + */ +/*? Text: "%s: %d output lines suppressed due to ratelimiting\n" */ --- linux-azure-5.8-5.8.0.orig/Documentation/kmsg/s390/sclp_config +++ linux-azure-5.8-5.8.0/Documentation/kmsg/s390/sclp_config @@ -0,0 +1,15 @@ +/*? + * Text: "CPU capability may have changed\n" + * Severity: Informational + * Description: + * The capability of the CPUs in the configuration may have been upgraded + * or downgraded. This message may also appear if the capability of the + * CPUs in the configuration did not change. + * For details see the STORE SYSTEM INFORMATION description in the + * "Principles of Operation." + * User action: + * The user can examine /proc/sysinfo for CPU capability values. + */ +/*? Text: "Open for Business request failed with response code 0x%04x\n" */ +/*? Text: "SCLP receiver did not register to receive Configuration Management Data Events.\n" */ +/*? Text: "%s: %d output lines suppressed due to ratelimiting\n" */ --- linux-azure-5.8-5.8.0.orig/Documentation/kmsg/s390/sclp_cpi +++ linux-azure-5.8-5.8.0/Documentation/kmsg/s390/sclp_cpi @@ -0,0 +1,3 @@ +/*? Text: "request failed (status=0x%02x)\n" */ +/*? Text: "request failed with response code 0x%x\n" */ +/*? Text: "%s: %d output lines suppressed due to ratelimiting\n" */ --- linux-azure-5.8-5.8.0.orig/Documentation/kmsg/s390/sclp_ocf +++ linux-azure-5.8-5.8.0/Documentation/kmsg/s390/sclp_ocf @@ -0,0 +1 @@ +/*? Text: "%s: %d output lines suppressed due to ratelimiting\n" */ --- linux-azure-5.8-5.8.0.orig/Documentation/kmsg/s390/sclp_sdias +++ linux-azure-5.8-5.8.0/Documentation/kmsg/s390/sclp_sdias @@ -0,0 +1,4 @@ +/*? Text: "sclp_send failed for get_nr_blocks\n" */ +/*? Text: "SCLP error: %x\n" */ +/*? Text: "sclp_send failed: %x\n" */ +/*? Text: "Error from SCLP while copying hsa. Event status = %x\n" */ --- linux-azure-5.8-5.8.0.orig/Documentation/kmsg/s390/scm_block +++ linux-azure-5.8-5.8.0/Documentation/kmsg/s390/scm_block @@ -0,0 +1,51 @@ +/*? + * Text: "%lx: The capabilities of the SCM increment changed\n" + * Severity: Informational + * Parameter: + * @1: start address of the SCM increment + * Description: + * A configuration change is in progress for the storage class memory (SCM) + * increment. + * User action: + * Verify that the capability of the SCM increment is as intended; for + * example, with lsscm. + */ + +/*? + * Text: "An I/O operation to SCM failed with rc=%d\n" + * Severity: Error + * Parameter: + * @1: return code + * Description: + * An error occurred during I/O to storage class memory (SCM). The operation + * was repeated, but the maximum number of retries was exceeded before the + * request could be fulfilled. + * User action: + * Contact your support organization. + */ + +/*? + * Text: "%lx: Write access to the SCM increment is suspended\n" + * Severity: Informational + * Parameter: + * @1: start address of the SCM increment + * Description: + * A concurrent firmware upgrade is in progress. For the duration of the + * upgrade, write access to the storage class memory (SCM) increment has been + * suspended. + * User action: + * None. + */ + +/*? + * Text: "%lx: Write access to the SCM increment is restored\n" + * Severity: Informational + * Parameter: + * @1: start address of the SCM increment + * Description: + * Write access to the storage class memory (SCM) increment was restored + * after a temporary suspension during a concurrent firmware upgrade. + * User action: + * None. + */ +/*? Text: "%s: %d output lines suppressed due to ratelimiting\n" */ --- linux-azure-5.8-5.8.0.orig/Documentation/kmsg/s390/setup +++ linux-azure-5.8-5.8.0/Documentation/kmsg/s390/setup @@ -0,0 +1,165 @@ +/*? + * Text: "The initial RAM disk does not fit into the memory\n" + * Severity: Error + * Description: + * The load address and the size of the initial RAM disk specify a memory + * area that is not available. + * User action: + * Lower the load address of the initial RAM disk, reduce the size of the + * initial RAM disk, or increase the size of the system memory to make the + * initial RAM disk fit into the memory. + */ + +/*? + * Text: "The maximum memory size is %luMB\n" + * Severity: Notice + * Parameter: + * @1: size in MB + * Description: + * The system memory size cannot exceed the amount of memory that is + * provided by the real or virtual hardware. It can be further reduced + * through an upper memory address limit that is specified with the + * mem= kernel parameter. + * User action: + * None. + */ + +/*? + * Text: "Linux is running as a z/VM guest operating system in 31-bit mode\n" + * Severity: Informational + * Description: + * The 31-bit Linux kernel detected that it is running as a guest operating + * system of the z/VM hypervisor. + * User action: + * None. + */ + +/*? + * Text: "Linux is running natively in 31-bit mode\n" + * Severity: Informational + * Description: + * The 31-bit Linux kernel detected that it is running on an IBM mainframe, + * either as the sole operating system in an LPAR or as the sole operating + * system on the entire mainframe. The Linux kernel is not running as a + * guest operating system of the z/VM hypervisor. + * User action: + * None. + */ + +/*? + * Text: "The hardware system has IEEE compatible floating point units\n" + * Severity: Informational + * Description: + * The Linux kernel detected that it is running on a hardware system with + * CPUs that have IEEE compatible floating point units. + * User action: + * None. + */ + +/*? + * Text: "The hardware system has no IEEE compatible floating point units\n" + * Severity: Informational + * Description: + * The Linux kernel detected that it is running on a hardware system with + * CPUs that do not have IEEE compatible floating point units. + * User action: + * None. + */ + +/*? + * Text: "Linux is running as a z/VM guest operating system in 64-bit mode\n" + * Severity: Informational + * Description: + * The 64-bit Linux kernel detected that it is running as a guest operating + * system of the z/VM hypervisor. + * User action: + * None. + */ + +/*? + * Text: "Linux is running under KVM in 64-bit mode\n" + * Severity: Informational + * Description: + * The 64-bit Linux kernel detected that it is running as a guest operating + * system of the KVM hypervisor. + * User action: + * None. + */ + +/*? + * Text: "Linux is running natively in 64-bit mode\n" + * Severity: Informational + * Description: + * The 64-bit Linux kernel detected that it is running on an IBM mainframe, + * either as the sole operating system in an LPAR or as the sole operating + * system on the entire mainframe. The Linux kernel is not running as a + * guest operating system of the z/VM hypervisor. + * User action: + * None. + */ + +/*? + * Text: "Defining the Linux kernel NSS failed with rc=%d\n" + * Severity: Error + * Parameter: + * @1: return code + * Description: + * The Linux kernel could not define the named saved system (NSS) with + * the z/VM CP DEFSYS command. The return code represents the numeric + * portion of the CP DEFSYS error message. + * User action: + * For return code 1, the z/VM guest virtual machine is not authorized + * to define named saved systems. + * Ensure that the z/VM guest virtual machine is authorized to issue + * the CP DEFSYS command (typically privilege class E). + * For other return codes, see the help and message documentation for + * the CP DEFSYS command. + */ + +/*? + * Text: "Saving the Linux kernel NSS failed with rc=%d\n" + * Severity: Error + * Parameter: + * @1: return code + * Description: + * The Linux kernel could not save the named saved system (NSS) with + * the z/VM CP SAVESYS command. The return code represents the numeric + * portion of the CP SAVESYS error message. + * User action: + * For return code 1, the z/VM guest virtual machine is not authorized + * to save named saved systems. + * Ensure that the z/VM guest virtual machine is authorized to issue + * the CP SAVESYS command (typically privilege class E). + * For other return codes, see the help and message documentation for + * the CP SAVESYS command. + */ + +/*? + * Text: "crashkernel reservation failed: %s\n" + * Severity: Informational + * Parameter: + * @1: reason string + * Description: + * The memory reservation for the kdump "crashkernel" parameter was not + * successful. The Linux kernel was either not able to find a free memory + * area or an invalid area has been defined. The reason string describes the + * cause of the failure in more detail. + * User action: + * Increase the memory footprint of your virtual machine or adjust the values + * for the "crashkernel" kernel parameter. Then boot your Linux system again. + */ + +/*? + * Text: "Reserving %lluMB of memory at %lluMB for crashkernel (System RAM: %luMB)\n" + * Severity: Informational + * Parameter: + * @1: amount of reserved memory + * @2: storage location of reserved memory + * @3: amount of system RAM + * Description: + * The memory reservation for the kdump "crashkernel" parameter was successful + * and a kdump kernel can now be loaded with the kexec tool. + * User action: + * None. + */ +/*? Text: "%s: %d output lines suppressed due to ratelimiting\n" */ --- linux-azure-5.8-5.8.0.orig/Documentation/kmsg/s390/smsgiucv +++ linux-azure-5.8-5.8.0/Documentation/kmsg/s390/smsgiucv @@ -0,0 +1 @@ +/*? Text: "%s: %d output lines suppressed due to ratelimiting\n" */ --- linux-azure-5.8-5.8.0.orig/Documentation/kmsg/s390/smsgiucv_app +++ linux-azure-5.8-5.8.0/Documentation/kmsg/s390/smsgiucv_app @@ -0,0 +1 @@ +/*? Text: "%s: %d output lines suppressed due to ratelimiting\n" */ --- linux-azure-5.8-5.8.0.orig/Documentation/kmsg/s390/tape +++ linux-azure-5.8-5.8.0/Documentation/kmsg/s390/tape @@ -0,0 +1,63 @@ +/*? + * Text: "%s: A tape unit was detached while in use\n" + * Severity: Warning + * Parameter: + * @1: bus ID of the tape device + * Description: + * A tape unit has been detached from the I/O configuration while a tape + * was being accessed. This typically results in I/O error messages and + * potentially in damaged data on the tape. + * User action: + * Check the output of the application that accesses the tape device. + * If this problem occurred during a write-type operation, consider repeating + * the operation after bringing the tape device back online. + */ + +/*? + * Text: "%s: A tape cartridge has been mounted\n" + * Severity: Informational + * Parameter: + * @1: bus ID of the tape device + * Description: + * A tape cartridge has been inserted into the tape unit. The tape in the + * tape unit is ready to be accessed. + * User action: + * None. + */ + +/*? + * Text: "%s: The tape cartridge has been successfully unloaded\n" + * Severity: Informational + * Parameter: + * @1: bus ID of the tape device + * Description: + * The tape cartridge has been unloaded from the tape unit. Insert a tape + * cartridge before accessing the tape device. + * User action: + * None. + */ + +/*? + * Text: "A cartridge is loaded in tape device %s, refusing to suspend\n" + * Severity: Error + * Parameter: + * @1: bus ID of the tape device + * Description: + * A request to suspend a tape device currently loaded with a cartridge is + * rejected. + * User action: + * Unload the tape device. Then try to suspend the system again. + */ + +/*? + * Text: "Tape device %s is busy, refusing to suspend\n" + * Severity: Error + * Parameter: + * @1: bus ID of the tape device + * Description: + * A request to suspend a tape device being currently in use is rejected. + * User action: + * Terminate applications performing tape operations + * and then try to suspend the system again. + */ +/*? Text: "%s: %d output lines suppressed due to ratelimiting\n" */ --- linux-azure-5.8-5.8.0.orig/Documentation/kmsg/s390/tape_34xx +++ linux-azure-5.8-5.8.0/Documentation/kmsg/s390/tape_34xx @@ -0,0 +1,418 @@ +/*? + * Text: "%s: An unexpected condition %d occurred in tape error recovery\n" + * Severity: Error + * Parameter: + * @1: bus ID of the tape device + * @2: number + * Description: + * The control unit has reported an error condition that is not recognized by + * the error recovery process of the tape device driver. + * User action: + * Report this problem and the condition number from the message to your + * support organization. + */ + +/*? + * Text: "%s: A data overrun occurred between the control unit and tape unit\n" + * Severity: Warning + * Parameter: + * @1: bus ID of the tape device + * Description: + * A data overrun error has occurred on the connection between the control + * unit and the tape unit. If this problem occurred during a write-type + * operation, the integrity of the data on the tape might be compromised. + * User action: + * Use a faster connection. If this problem occurred during a write-type + * operation, consider repositioning the tape and repeating the operation. + */ + +/*? + * Text: "%s: The block ID sequence on the tape is incorrect\n" + * Severity: Warning + * Parameter: + * @1: bus ID of the tape device + * Description: + * The control unit has detected an incorrect block ID sequence on the tape. + * This problem typically indicates that the data on the tape is damaged. + * User action: + * If this problem occurred during a write-type operation reposition the tape + * and repeat the operation. + */ + +/*? + * Text: "%s: A read error occurred that cannot be recovered\n" + * Severity: Warning + * Parameter: + * @1: bus ID of the tape device + * Description: + * A read error has occurred that cannot be recovered. The current tape might + * be damaged. + * User action: + * None. + */ + +/*? + * Text: "%s: A write error on the tape cannot be recovered\n" + * Severity: Warning + * Parameter: + * @1: bus ID of the tape device + * Description: + * A write error has occurred that could not be recovered by the automatic + * error recovery process. + * User action: + * Use a different tape cartridge. + */ + +/*? + * Text: "%s: Writing the ID-mark failed\n" + * Severity: Warning + * Parameter: + * @1: bus ID of the tape device + * Description: + * The ID-mark at the beginning of tape could not be written. The tape medium + * might be write-protected. + * User action: + * Try a different tape cartridge. Ensure that the write-protection on the + * cartridge is switched off. + */ + +/*? + * Text: "%s: Reading the tape beyond the end of the recorded area failed\n" + * Severity: Warning + * Parameter: + * @1: bus ID of the tape device + * Description: + * A read-type operation failed because it extended beyond the end of the + * recorded area on the tape medium. + * User action: + * None. + */ + +/*? + * Text: "%s: The tape contains an incorrect block ID sequence\n" + * Severity: Warning + * Parameter: + * @1: bus ID of the tape device + * Description: + * The control unit has detected an incorrect block ID sequence on the tape. + * This problem typically indicates that the data on the tape is damaged. + * User action: + * If this problem occurred during a write-type operation reposition the tape + * and repeat the operation. + */ + +/*? + * Text: "%s: A path equipment check occurred for the tape device\n" + * Severity: Warning + * Parameter: + * @1: bus ID of the tape device + * Description: + * A path equipment check has occurred. This check indicates problems with the + * connection between the mainframe system and the tape control unit. + * User action: + * Ensure that the cable connections between the mainframe system and the + * control unit are securely in place and not damaged. + */ + +/*? + * Text: "%s: The tape unit cannot process the tape format\n" + * Severity: Warning + * Parameter: + * @1: bus ID of the tape device + * Description: + * Either the tape unit is not able to read the format ID mark, or the + * specified format is not supported by the tape unit. + * User action: + * If you do not need the data recorded on the current tape, use a different + * tape or write a new format ID mark at the beginning of the tape. Be aware + * that writing a new ID mark leads to a loss of all data that has been + * recorded on the tape. If you need the data on the current tape, use a tape + * unit that supports the tape format. + */ + +/*? + * Text: "%s: The tape medium is write-protected\n" + * Severity: Warning + * Parameter: + * @1: bus ID of the tape device + * Description: + * A write-type operation failed because the tape medium is write-protected. + * User action: + * Eject the tape cartridge, switch off the write protection on the cartridge, + * insert the cartridge, and try the operation again. + */ + +/*? + * Text: "%s: The tape does not have the required tape tension\n" + * Severity: Warning + * Parameter: + * @1: bus ID of the tape device + * Description: + * The tape does not have the required tape tension. + * User action: + * Rewind and reposition the tape, then repeat the operation. + */ + +/*? + * Text: "%s: The tape unit failed to load the cartridge\n" + * Severity: Warning + * Parameter: + * @1: bus ID of the tape device + * Description: + * An error has occurred while loading the tape cartridge. + * User action: + * Unload the cartridge and load it again. + */ + +/*? + * Text: "%s: Automatic unloading of the tape cartridge failed\n" + * Severity: Warning + * Parameter: + * @1: bus ID of the tape device + * Description: + * The tape unit failed to unload the cartridge. + * User action: + * Unload the cartridge manually by using the eject button on the tape unit. + */ + +/*? + * Text: "%s: An equipment check has occurred on the tape unit\n" + * Severity: Warning + * Parameter: + * @1: bus ID of the tape device + * Description: + * Possible reasons for the check condition are a unit adapter error, a buffer + * error on the lower interface, an unusable internal path, or an error that + * has occurred while loading the cartridge. + * User action: + * Examine the tape unit and the cartridge loader. Consult the tape unit + * documentation for details. + */ + +/*? + * Text: "%s: The tape information states an incorrect length\n" + * Severity: Warning + * Parameter: + * @1: bus ID of the tape device + * Description: + * The tape is shorter than stated at the beginning of the tape data. A + * possible reason for this problem is that the tape might have been physically + * truncated. Data written to the tape might be incomplete or damaged. + * User action: + * If this problem occurred during a write-type operation, consider repeating + * the operation with a different tape cartridge. + */ + +/*? + * Text: "%s: The tape unit is not ready\n" + * Severity: Warning + * Parameter: + * @1: bus ID of the tape device + * Description: + * The tape unit is online but not ready. + * User action: + * Turn the ready switch on the tape unit to the ready position and try the + * operation again. + */ + +/*? + * Text: "%s: The tape medium has been rewound or unloaded manually\n" + * Severity: Warning + * Parameter: + * @1: bus ID of the tape device + * Description: + * The tape unit rewind button, unload button, or both have been used to + * rewind or unload the tape cartridge. A tape cartridge other than the + * intended cartridge might have been inserted or the tape medium might not + * be at the expected position. + * User action: + * Verify that the correct tape cartridge has been inserted and that the tape + * medium is at the required position before continuing to work with the tape. + */ + +/*? + * Text: "%s: The tape subsystem is running in degraded mode\n" + * Severity: Warning + * Parameter: + * @1: bus ID of the tape device + * Description: + * The tape subsystem is not operating at its maximum performance. + * User action: + * Contact your service representative for the tape unit and report this + * problem. + */ + +/*? + * Text: "%s: The tape unit is already assigned\n" + * Severity: Warning + * Parameter: + * @1: bus ID of the tape device + * Description: + * The tape unit is already assigned to another channel path. + * User action: + * Free the tape unit from the operating system instance to which it is + * currently assigned then try again. + */ + +/*? + * Text: "%s: The tape unit is not online\n" + * Severity: Warning + * Parameter: + * @1: bus ID of the tape device + * Description: + * The tape unit is not online to the tape device driver. + * User action: + * Ensure that the tape unit is operational and that the cable connections + * between the control unit and the tape unit are securely in place and not + * damaged. + */ + +/*? + * Text: "%s: The control unit has fenced access to the tape volume\n" + * Severity: Warning + * Parameter: + * @1: bus ID of the tape device + * Description: + * The control unit fences further access to the current tape volume. The data + * integrity on the tape volume might have been compromised. + * User action: + * Rewind and unload the tape cartridge. + */ + +/*? + * Text: "%s: A parity error occurred on the tape bus\n" + * Severity: Warning + * Parameter: + * @1: bus ID of the tape device + * Description: + * A data parity check error occurred on the bus. Data that was read or written + * while the error occurred is not valid. + * User action: + * Reposition the tape and repeat the read-type or write-type operation. + */ + +/*? + * Text: "%s: I/O error recovery failed on the tape control unit\n" + * Severity: Warning + * Parameter: + * @1: bus ID of the tape device + * Description: + * An I/O error occurred that cannot be recovered by the automatic error + * recovery process of the tape control unit. The application that operates + * the tape unit will receive a return value of -EIO which indicates an + * I/O error. The data on the tape might be damaged. + * User action: + * If this problem occurred during a write-type operation, consider + * repositioning the tape and repeating the operation. + */ + +/*? + * Text: "%s: The tape unit requires a firmware update\n" + * Severity: Warning + * Parameter: + * @1: bus ID of the tape device + * Description: + * The tape unit requires firmware patches from the tape control unit but the + * required patches are not available on the control unit. + * User action: + * Make the require patches available on the control unit then reposition the + * tape and retry the operation. For details about obtaining and installing + * firmware updates see the control unit documentation. + */ + +/*? + * Text: "%s: The maximum block size for buffered mode is exceeded\n" + * Severity: Warning + * Parameter: + * @1: bus ID of the tape device + * Description: + * The block to be written is larger than allowed for the buffered mode. + * User action: + * Use a smaller block size. + */ + +/*? + * Text: "%s: A channel interface error cannot be recovered\n" + * Severity: Warning + * Parameter: + * @1: bus ID of the tape device + * Description: + * An error has occurred on the channel interface. This error cannot + * be recovered by the control unit error recovery process. + * User action: + * See the documentation of the control unit. + */ + +/*? + * Text: "%s: A channel protocol error occurred\n" + * Severity: Warning + * Parameter: + * @1: bus ID of the tape device + * Description: + * An error was detected in the channel protocol. + * User action: + * Reposition the tape and try the operation again. + */ + +/*? + * Text: "%s: The tape unit does not support the compaction algorithm\n" + * Severity: Warning + * Parameter: + * @1: bus ID of the tape device + * Description: + * The tape unit cannot read the current tape. The data on the tape has been + * compressed with an algorithm that is not supported by the tape unit. + * User action: + * Use a tape unit that supports the compaction algorithm used for the + * current tape. + */ + +/*? + * Text: "%s: The tape unit does not support tape format 3480-2 XF\n" + * Severity: Warning + * Parameter: + * @1: bus ID of the tape device + * Description: + * The tape unit does not support tapes recorded in the 3480-2 XF format. + * User action: + * If you do not need the data recorded on the current tape, rewind the tape + * and overwrite it with a supported format. If you need the data on the + * current tape, use a tape unit that supports the tape format. + */ + +/*? + * Text: "%s: The tape unit does not support format 3480 XF\n" + * Severity: Warning + * Parameter: + * @1: bus ID of the tape device + * Description: + * The tape unit does not support tapes recorded in the 3480 XF format. + * User action: + * If you do not need the data recorded on the current tape, rewind the tape + * and overwrite it with a supported format. If you need the data on the + * current tape, use a tape unit that supports the tape format. + */ + +/*? + * Text: "%s: The tape unit does not support the current tape length\n" + * Severity: Warning + * Parameter: + * @1: bus ID of the tape device + * Description: + * The length of the tape in the cartridge is incompatible with the tape unit. + * User action: + * Either use a different tape unit or use a tape with a supported length. + */ + +/*? + * Text: "%s: The tape unit does not support the tape length\n" + * Severity: Warning + * Parameter: + * @1: bus ID of the tape device + * Description: + * The length of the tape in the cartridge is incompatible with the tape + * unit. + * User action: + * Either use a different tape unit or use a tape with a supported length. + */ +/*? Text: "%s: %d output lines suppressed due to ratelimiting\n" */ --- linux-azure-5.8-5.8.0.orig/Documentation/kmsg/s390/tape_3590 +++ linux-azure-5.8-5.8.0/Documentation/kmsg/s390/tape_3590 @@ -0,0 +1,183 @@ +/*? + * Text: "%s: The tape medium must be loaded into a different tape unit\n" + * Severity: Warning + * Parameter: + * @1: bus ID of the tape device + * Description: + * The tape device has indicated an error condition that requires loading + * the tape cartridge into a different tape unit to recover. + * User action: + * Unload the cartridge and use a different tape unit to retry the operation. + */ + +/*? + * Text: "%s: Tape media information: exception %s, service %s\n" + * Severity: Warning + * Parameter: + * @1: bus ID of the tape device + * @2: exception + * @3: service + * Description: + * This is an operating system independent tape medium information message + * that was issued by the tape unit. The information in the message is + * intended for the IBM customer engineer. + * User action: + * See the documentation for the tape unit for further information. + */ + +/*? + * Text: "%s: Device subsystem information: exception %s, service %s\n" + * Severity: Warning + * Parameter: + * @1: bus ID of the tape device + * @2: exception + * @3: required service action + * Description: + * This is an operating system independent device subsystem information message + * that was issued by the tape unit. The information in the message is + * intended for the IBM customer engineer. + * User action: + * See the documentation for the tape unit for further information. + */ + +/*? + * Text: "%s: I/O subsystem information: exception %s, service %s\n" + * Severity: Warning + * Parameter: + * @1: bus ID of the tape device + * @2: exception + * @3: required service action + * Description: + * This is an operating system independent I/O subsystem information message + * that was issued by the tape unit. The information in the message is + * intended for the IBM customer engineer. + * User action: + * See the documentation for the tape unit for further information. + */ + +/*? + * Text: "%s: The tape unit has issued sense message %s\n" + * Severity: Warning + * Parameter: + * @1: bus ID of the tape device + * @2: sense message code + * Description: + * The tape unit has issued an operating system independent sense message. + * User action: + * See the documentation for the tape unit for further information. + */ + +/*? + * Text: "%s: The tape unit has issued an unknown sense message code 0x%x\n" + * Severity: Warning + * Parameter: + * @1: bus ID of the tape device + * @2: code + * Description: + * The tape device driver has received an unknown sense message from the + * tape unit. + * User action: + * See the documentation for the tape unit for further information. + */ + +/*? + * Text: "%s: MIM SEV=%i, MC=%02x, ES=%x/%x, RC=%02x-%04x-%02x\n" + * Severity: Warning + * Parameter: + * @1: bus ID of the tape device + * @2: SEV + * @3: message code + * @4: exception + * @5: required service action + * @6: refcode + * @7: mid + * @8: fid + * Description: + * This is an operating system independent information message that was + * issued by the tape unit. The information in the message is intended for + * the IBM customer engineer. + * User action: + * See to the documentation for the tape unit for further information. + */ + +/*? + * Text: "%s: IOSIM SEV=%i, DEVTYPE=3590/%02x, MC=%02x, ES=%x/%x, REF=0x%04x-0x%04x-0x%04x\n" + * Severity: Warning + * Parameter: + * @1: bus ID of the tape device + * @2: SEV + * @3: model + * @4: message code + * @5: exception + * @6: required service action + * @7: refcode1 + * @8: refcode2 + * @9: refcode3 + * Description: + * This is an operating system independent I/O subsystem information message + * that was issued by the tape unit. The information in the message is + * intended for the IBM customer engineer. + * User action: + * See the documentation for the tape unit for further information. + */ + +/*? + * Text: "%s: DEVSIM SEV=%i, DEVTYPE=3590/%02x, MC=%02x, ES=%x/%x, REF=0x%04x-0x%04x-0x%04x\n" + * Severity: Warning + * Parameter: + * @1: bus ID of the tape device + * @2: SEV + * @3: model + * @4: message code + * @5: exception + * @6: required service action + * @7: refcode1 + * @8: refcode2 + * @9: refcode3 + * Description: + * This is an operating system independent device subsystem information message + * issued by the tape unit. The information in the message is intended for + * the IBM customer engineer. + * User action: + * See the documentation for the tape unit for further information. + */ + +/*? + * Text: "%s: The tape unit has issued an unknown sense message code %x\n" + * Severity: Warning + * Parameter: + * @1: bus ID of the tape device + * @2: code + * Description: + * The tape device has issued a sense message, that is unknown to the device + * driver. + * User action: + * Use the message code printed as hexadecimal value and see the documentation + * for the tape unit for further information. + */ + +/*? + * Text: "%s: The tape unit failed to obtain the encryption key from EKM\n" + * Severity: Error + * Parameter: + * @1: bus ID of the tape device + * Description: + * The tape unit was unable to retrieve the encryption key required to decode + * the data on the tape from the enterprise key manager (EKM). + * User action: + * See the EKM and tape unit documentation for information about how to enable + * the tape unit to retrieve the encryption key. + */ + +/*? + * Text: "%s: A different host has privileged access to the tape unit\n" + * Severity: Warning + * Parameter: + * @1: bus ID of the tape device + * Description: + * You cannot access the tape unit because a different operating system + * instance has privileged access to the unit. + * User action: + * Unload the current cartridge to solve this problem. + */ +/*? Text: "%s: %d output lines suppressed due to ratelimiting\n" */ --- linux-azure-5.8-5.8.0.orig/Documentation/kmsg/s390/time +++ linux-azure-5.8-5.8.0/Documentation/kmsg/s390/time @@ -0,0 +1,36 @@ +/*? + * Text: "The ETR interface has adjusted the clock by %li microseconds\n" + * Severity: Notice + * Parameter: + * @1: number of microseconds + * Description: + * The external time reference (ETR) interface has synchronized the system + * clock with the external reference and set it to a new value. The time + * difference between the old and new clock value has been passed to the + * network time protocol (NTP) as a single shot adjustment. + * User action: + * None. + */ + +/*? + * Text: "The real or virtual hardware system does not provide an ETR interface\n" + * Severity: Warning + * Description: + * The 'etr=' parameter has been passed on the kernel parameter line for + * a Linux instance that does not have access to the external time reference + * (ETR) facility. + * User action: + * To avoid this warning remove the 'etr=' kernel parameter. + */ + +/*? + * Text: "The real or virtual hardware system does not provide an STP interface\n" + * Severity: Warning + * Description: + * The 'stp=' parameter has been passed on the kernel parameter line for + * a Linux instance that does not have access to the server time protocol + * (STP) facility. + * User action: + * To avoid this warning remove the 'stp=' kernel parameter. + */ +/*? Text: "%s: %d output lines suppressed due to ratelimiting\n" */ --- linux-azure-5.8-5.8.0.orig/Documentation/kmsg/s390/vmlogrdr +++ linux-azure-5.8-5.8.0/Documentation/kmsg/s390/vmlogrdr @@ -0,0 +1,19 @@ +/*? Text: "vmlogrdr: failed to start recording automatically\n" */ +/*? Text: "vmlogrdr: connection severed with reason %i\n" */ +/*? Text: "vmlogrdr: iucv connection to %s failed with rc %i \n" */ +/*? Text: "vmlogrdr: failed to stop recording automatically\n" */ +/*? Text: "not running under VM, driver not loaded.\n" */ + +/*? + * Text: "vmlogrdr: device %s is busy. Refuse to suspend.\n" + * Severity: Error + * Parameter: + * @1: device name + * Description: + * Suspending vmlogrdr devices that are in uses is not supported. + * A request to suspend such a device is refused. + * User action: + * Close all applications that use any of the vmlogrdr devices + * and then try to suspend the system again. + */ +/*? Text: "%s: %d output lines suppressed due to ratelimiting\n" */ --- linux-azure-5.8-5.8.0.orig/Documentation/kmsg/s390/vmur +++ linux-azure-5.8-5.8.0/Documentation/kmsg/s390/vmur @@ -0,0 +1,48 @@ +/*? + * Text: "The %s cannot be loaded without z/VM\n" + * Severity: Error + * Parameter: + * @1: z/VM virtual unit record device driver + * Description: + * The z/VM virtual unit record device driver provides Linux with access to + * z/VM virtual unit record devices like punch card readers, card punches, and + * line printers. On Linux instances that run in environments other than the + * z/VM hypervisor, the device driver does not provide any useful function and + * the corresponding vmur module cannot be loaded. + * User action: + * Load the vmur module only on Linux instances that run as guest operating + * systems of the z/VM hypervisor. If the z/VM virtual unit record device + * has been compiled into the kernel, ignore this message. + */ + +/*? + * Text: "Kernel function alloc_chrdev_region failed with error code %d\n" + * Severity: Error + * Parameter: + * @1: error code according to errno definitions + * Description: + * The z/VM virtual unit record device driver (vmur) needs to register a range + * of character device minor numbers from 0x0000 to 0xffff. + * This registration failed, probably because of memory constraints. + * User action: + * Free some memory and reload the vmur module. If the z/VM virtual unit + * record device driver has been compiled into the kernel reboot Linux. + * Consider assigning more memory to your LPAR or z/VM guest virtual machine. + */ + +/*? + * Text: "Unit record device %s is busy, %s refusing to suspend.\n" + * Severity: Error + * Parameter: + * @1: bus ID of the unit record device + * @1: z/VM virtual unit record device driver + * Description: + * Linux cannot be suspended while a unit record device is in use. + * User action: + * Stop all applications that work on z/VM spool file queues, for example, the + * vmur tool. Then try again to suspend Linux. + */ + +/*? Text: "%s loaded.\n" */ +/*? Text: "%s unloaded.\n" */ +/*? Text: "%s: %d output lines suppressed due to ratelimiting\n" */ --- linux-azure-5.8-5.8.0.orig/Documentation/kmsg/s390/xpram +++ linux-azure-5.8-5.8.0/Documentation/kmsg/s390/xpram @@ -0,0 +1,74 @@ +/*? + * Text: "%d is not a valid number of XPRAM devices\n" + * Severity: Error + * Parameter: + * @1: number of partitions + * Description: + * The number of XPRAM partitions specified for the 'devs' module parameter + * or with the 'xpram.parts' kernel parameter must be an integer in the + * range 1 to 32. The XPRAM device driver created a maximum of 32 partitions + * that are probably not configured as intended. + * User action: + * If the XPRAM device driver has been compiled as a separate module, + * unload the module and load it again with a correct value for the 'devs' + * module parameter. If the XPRAM device driver has been compiled + * into the kernel, correct the 'xpram.parts' parameter in the kernel + * command line and restart Linux. + */ + +/*? + * Text: "Not enough expanded memory available\n" + * Severity: Error + * Description: + * The amount of expanded memory required to set up your XPRAM partitions + * depends on the 'sizes' parameter specified for the xpram module or on + * the specifications for the 'xpram.parts' parameter if the XPRAM device + * driver has been compiled into the kernel. Your + * current specification exceed the amount of available expanded memory. + * Your XPRAM partitions are probably not configured as intended. + * User action: + * If the XPRAM device driver has been compiled as a separate module, + * unload the xpram module and load it again with an appropriate value + * for the 'sizes' module parameter. If the XPRAM device driver has been + * compiled into the kernel, adjust the 'xpram.parts' parameter in the + * kernel command line and restart Linux. If you need more than the + * available expanded memory, increase the expanded memory allocation for + * your virtual hardware or LPAR. + */ + +/*? + * Text: "No expanded memory available\n" + * Severity: Error + * Description: + * The XPRAM device driver has been loaded in a Linux instance that runs + * in an LPAR or virtual hardware without expanded memory. + * No XPRAM partitions are created. + * User action: + * Allocate expanded memory for your LPAR or virtual hardware or do not + * load the xpram module. You can ignore this message, if you do not want + * to create XPRAM partitions. + */ + +/*? + * Text: "Resuming the system failed: %s\n" + * Severity: Error + * Parameter: + * @1: cause of the failure + * Description: + * A system cannot be resumed if the expanded memory setup changes + * after hibernation. Possible reasons for the failure are: + * - Expanded memory was removed after hibernation. + * - Size of the expanded memory changed after hibernation. + * The system is stopped with a kernel panic. + * User action: + * Reboot Linux. + */ + +/*? Text: " number of devices (partitions): %d \n" */ +/*? Text: " size of partition %d: %u kB\n" */ +/*? Text: " size of partition %d to be set automatically\n" */ +/*? Text: " memory needed (for sized partitions): %lu kB\n" */ +/*? Text: " partitions to be sized automatically: %d\n" */ +/*? Text: " automatically determined partition size: %lu kB\n" */ +/*? Text: " %u pages expanded memory found (%lu KB).\n" */ +/*? Text: "%s: %d output lines suppressed due to ratelimiting\n" */ --- linux-azure-5.8-5.8.0.orig/Documentation/kmsg/s390/zcrypt +++ linux-azure-5.8-5.8.0/Documentation/kmsg/s390/zcrypt @@ -0,0 +1,22 @@ +/*? + * Text: "Cryptographic device %02x.%04x failed and was set offline\n" + * Severity: Error + * Parameter: + * @1: AP device ID + * @2: AP queue + * Description: + * A cryptographic device failed to process a cryptographic request. + * The cryptographic device driver could not correct the error and + * set the device offline. The application that issued the + * request received an indication that the request has failed. + * User action: + * Use the lszcrypt command to confirm that the cryptographic + * hardware is still configured to your LPAR or z/VM guest virtual + * machine. If the device is available to your Linux instance the + * command output contains a line that begins with 'card', + * where is the two-digit decimal number in the message text. + * After ensuring that the device is available, use the chzcrypt command to + * set it online again. + * If the error persists, contact your support organization. + */ +/*? Text: "%s: %d output lines suppressed due to ratelimiting\n" */ --- linux-azure-5.8-5.8.0.orig/Documentation/kmsg/s390/zdump +++ linux-azure-5.8-5.8.0/Documentation/kmsg/s390/zdump @@ -0,0 +1,27 @@ +/*? + * Text: "The 32-bit dump tool cannot be used for a 64-bit system\n" + * Severity: Alert + * Description: + * The dump process ends without creating a system dump. + * User action: + * Use a 64-bit dump tool to obtain a system dump for 64-bit Linux instance. + */ +/*? + * Text: "The 64-bit dump tool cannot be used for a 32-bit system\n" + * Severity: Alert + * Description: + * The dump process ends without creating a system dump. + * User action: + * Use a 32-bit dump tool to obtain a system dump for 32-bit Linux instance. + */ +/*? + * Text: "The dump process started for a 64-bit operating system\n" + * Severity: Alert + * Description: + * The SCSI dump process started to create a dump for a 64-bit operating + * system instance. + * User action: + * None. + */ +/*? Text: "0x%x is an unknown architecture.\n" */ +/*? Text: "%s: %d output lines suppressed due to ratelimiting\n" */ --- linux-azure-5.8-5.8.0.orig/Documentation/kmsg/s390/zfcp +++ linux-azure-5.8-5.8.0/Documentation/kmsg/s390/zfcp @@ -0,0 +1,709 @@ +/*? + * Text: "%s is not a valid SCSI device\n" + * Severity: Error + * Parameter: + * @1: device specification + * Description: + * The specification for an initial SCSI device provided with the 'zfcp.device' + * kernel parameter or with the 'device' module parameter is syntactically + * incorrect. The specified SCSI device could not be attached to the Linux + * system. + * User action: + * Correct the value for the 'zfcp.device' or 'device' parameter and reboot + * Linux. See "Device Drivers, Features, and Commands" for information about + * the syntax. + */ + +/*? + * Text: "The zfcp device driver could not register with the common I/O layer\n" + * Severity: Error + * Description: + * The device driver initialization failed. A possible cause of this problem is + * memory constraints. + * User action: + * Free some memory and try again to load the zfcp device driver. If the zfcp + * device driver has been compiled into the kernel, reboot Linux. Consider + * assigning more memory to your LPAR or z/VM guest virtual machine. If the + * problem persists, contact your support organization. + */ + +/*? + * Text: "%s: Setting up data structures for the FCP adapter failed\n" + * Severity: Error + * Parameter: + * @1: bus ID of the zfcp device + * Description: + * The zfcp device driver could not allocate data structures for an FCP adapter. + * A possible reason for this problem is memory constraints. + * User action: + * Set the FCP adapter offline or detach it from the Linux system, free some + * memory and set the FCP adapter online again or attach it again. If this + * problem persists, gather Linux debug data, collect the FCP adapter + * hardware logs, and report the problem to your support organization. + */ + +/*? + * Text: "%s: The FCP device is operational again\n" + * Severity: Informational + * Parameter: + * @1: bus ID of the zfcp device + * Description: + * An FCP device has been unavailable because it had been detached from the + * Linux system or because the corresponding CHPID was offline. The FCP device + * is now available again and the zfcp device driver resumes all operations to + * the FCP device. + * User action: + * None. + */ + +/*? + * Text: "%s: The CHPID for the FCP device is offline\n" + * Severity: Warning + * Parameter: + * @1: bus ID of the zfcp device + * Description: + * The CHPID for an FCP device has been set offline, either logically in Linux + * or on the hardware. + * User action: + * Find out which CHPID corresponds to the FCP device, for example, with the + * lscss command. Check if the CHPID has been set logically offline in sysfs. + * Write 'on' to the CHPID's status attribute to set it online. If the CHPID is + * online in sysfs, find out if it has been varied offline through a hardware + * management interface, for example the service element (SE). + */ + +/*? + * Text: "%s: The FCP device has been detached\n" + * Severity: Warning + * Parameter: + * @1: bus ID of the zfcp device + * Description: + * An FCP device is no longer available to Linux. + * User action: + * Ensure that the FCP adapter is operational and attached to the LPAR or z/VM + * virtual machine. + */ + +/*? + * Text: "%s: The FCP device did not respond within the specified time\n" + * Severity: Warning + * Parameter: + * @1: bus ID of the zfcp device + * Description: + * The common I/O layer waited for a response from the FCP adapter but + * no response was received within the specified time limit. This might + * indicate a hardware problem. + * User action: + * Consult your hardware administrator. If this problem persists, + * gather Linux debug data, collect the FCP adapter hardware logs, and + * report the problem to your support organization. + */ + +/*? + * Text: "%s: Registering the FCP device with the SCSI stack failed\n" + * Severity: Error + * Parameter: + * @1: bus ID of the zfcp device + * Description: + * The FCP adapter could not be registered with the Linux SCSI + * stack. A possible reason for this problem is memory constraints. + * User action: + * Set the FCP adapter offline or detach it from the Linux system, free some + * memory and set the FCP adapter online again or attach it again. If this + * problem persists, gather Linux debug data, collect the FCP adapter + * hardware logs, and report the problem to your support organization. + */ + +/*? + * Text: "%s: ERP cannot recover an error on the FCP device\n" + * Severity: Error + * Parameter: + * @1: bus ID of the zfcp device + * Description: + * An error occurred on an FCP device. The error recovery procedure (ERP) + * could not resolve the error. The FCP device driver cannot use the FCP device. + * User action: + * Check for previous error messages for the same FCP device to find the + * cause of the problem. + */ + +/*? + * Text: "%s: Creating an ERP thread for the FCP device failed.\n" + * Severity: Error + * Parameter: + * @1: bus ID of the zfcp device + * Description: + * The zfcp device driver could not set up error recovery procedure (ERP) + * processing for the FCP device. The FCP device is not available for use + * in Linux. + * User action: + * Free some memory and try again to load the zfcp device driver. If the zfcp + * device driver has been compiled into the kernel, reboot Linux. Consider + * assigning more memory to your LPAR or z/VM guest virtual machine. If the + * problem persists, contact your support organization. + */ + +/*? + * Text: "%s: ERP failed for LUN 0x%016Lx on port 0x%016Lx\n" + * Severity: Error + * Parameter: + * @1: bus ID of the zfcp device + * @2: LUN + * @3: WWPN + * Description: + * An error occurred on the SCSI device at the specified LUN. The error recovery + * procedure (ERP) could not resolve the error. The SCSI device is not + * available. + * User action: + * Verify that the LUN is correct. Check the fibre channel fabric for errors + * related to the specified WWPN and LUN, the storage server, and Linux. + */ + +/*? + * Text: "%s: ERP failed for remote port 0x%016Lx\n" + * Severity: Error + * Parameter: + * @1: bus ID of the zfcp device + * @2: WWPN + * Description: + * An error occurred on a remote port. The error recovery procedure (ERP) + * could not resolve the error. The port is not available. + * User action: + * Verify that the WWPN is correct and check the fibre channel fabric for + * errors related to the WWPN. + */ + +/*? + * Text: "%s: Registering port 0x%016Lx failed\n" + * Severity: Error + * Parameter: + * @1: bus ID of the zfcp device + * @2: WWPN + * Description: + * The Linux kernel could not allocate enough memory to register the + * remote port with the indicated WWPN with the SCSI stack. The remote + * port is not available. + * User action: + * Free some memory and trigger the rescan for ports. + */ + +/*? + * Text: "%s: A QDIO problem occurred\n" + * Severity: Warning + * Parameter: + * @1: bus ID of the zfcp device + * Description: + * QDIO reported a problem to the zfcp device driver. The zfcp device driver + * tries to recover this problem. + * User action: + * Check for related error messages. If this problem occurs frequently, gather + * Linux debug data and contact your support organization. + */ + +/*? + * Text: "%s: Setting up the QDIO connection to the FCP adapter failed\n" + * Severity: Error + * Parameter: + * @1: bus ID of the zfcp device + * Description: + * The zfcp device driver failed to establish a QDIO connection with the FCP + * adapter. + * User action: + * Set the FCP adapter offline or detach it from the Linux system, free some + * memory and set the FCP adapter online again or attach it again. If this + * problem persists, gather Linux debug data, collect the FCP adapter + * hardware logs, and report the problem to your support organization. + */ + +/*? + * Text: "%s: The FCP adapter reported a problem that cannot be recovered\n" + * Severity: Error + * Parameter: + * @1: bus ID of the zfcp device + * Description: + * The FCP adapter has a problem that cannot be recovered by the zfcp device + * driver. The zfcp device driver stopped using the FCP device. + * User action: + * Gather Linux debug data, collect the FCP adapter hardware logs, and report + * this problem to your support organization. + */ + +/*? + * Text: "%s: There is a wrap plug instead of a fibre channel cable\n" + * Severity: Warning + * Parameter: + * @1: bus ID of the zfcp device + * Description: + * The FCP adapter is not physically connected to the fibre channel fabric. + * User action: + * Remove the wrap plug from the FCP adapter and connect the adapter with the + * fibre channel fabric. + */ + +/*? + * Text: "%s: FCP device not operational because of an unsupported FC class\n" + * Severity: Error + * Parameter: + * @1: bus ID of the zfcp device + * Description: + * The FCP adapter hardware does not support the fibre channel service class + * requested by the zfcp device driver. This problem indicates a program error + * in the zfcp device driver. + * User action: + * Gather Linux debug data, collect the FCP adapter hardware logs, and report + * this problem to your support organization. + */ + +/*? + * Text: "%s: 0x%Lx is an ambiguous request identifier\n" + * Severity: Error + * Parameter: + * @1: bus ID of the zfcp device + * @2: request ID + * Description: + * The FCP adapter reported that it received the same request ID twice. This is + * an error. The zfcp device driver stopped using the FCP device. + * User action: + * Gather Linux debug data, collect the FCP adapter hardware logs, and report + * this problem to your support organization. + */ + +/*? + * Text: "%s: QTCB version 0x%x not supported by FCP adapter (0x%x to 0x%x)\n" + * Severity: Error + * Parameter: + * @1: bus ID of the zfcp device + * @2: requested version + * @3: lowest supported version + * @4: highest supported version + * Description: + * See message text. + * The queue transfer control block (QTCB) version requested by the zfcp device + * driver is not supported by the FCP adapter hardware. + * User action: + * If the requested version is higher than the highest version supported by the + * hardware, install more recent firmware on the FCP adapter. If the requested + * version is lower then the lowest version supported by the hardware, upgrade + * to a Linux level with a more recent zfcp device driver. + */ + +/*? + * Text: "%s: The FCP adapter could not log in to the fibre channel fabric\n" + * Severity: Warning + * Parameter: + * @1: bus ID of the zfcp device + * Description: + * The fibre channel switch rejected the login request from the FCP adapter. + * User action: + * Check the fibre channel fabric or switch logs for possible errors. + */ + +/*? + * Text: "%s: The FCP device is suspended because of a firmware update\n" + * Severity: Warning + * Parameter: + * @1: bus ID of the zfcp device + * Description: + * The FCP device is not available while a firmware update is in progress. This + * problem is temporary. The FCP device will resume operations when the + * firmware update is completed. + * User action: + * Wait 10 seconds and try the operation again. + */ + +/*? + * Text: "%s: All NPIV ports on the FCP adapter have been assigned\n" + * Severity: Warning + * Parameter: + * @1: bus ID of the zfcp device + * Description: + * The number of N_Port ID Virtualization (NPIV) ports that can be assigned + * on an FCP adapter is limited. Once assigned, NPIV ports are not released + * automatically but have to be released explicitly through the support + * element (SE). + * User action: + * Identify NPIV ports that have been assigned but are no longer in use and + * release them from the SE. + */ + +/*? + * Text: "%s: The link between the FCP adapter and the FC fabric is down\n" + * Severity: Warning + * Parameter: + * @1: bus ID of the zfcp device + * Description: + * The FCP adapter is not usable. Specific error information is not available. + * User action: + * Check the cabling and the fibre channel fabric configuration. If this + * problem persists, gather Linux debug data, collect the FCP adapter + * hardware logs, and report the problem to your support organization. + */ + +/*? + * Text: "%s: The QTCB type is not supported by the FCP adapter\n" + * Severity: Error + * Parameter: + * @1: bus ID of the zfcp device + * Description: + * The queue transfer control block (QTCB) type requested by the zfcp device + * driver is not supported by the FCP adapter hardware. + * User action: + * Install the latest firmware on your FCP adapter hardware. If this does not + * resolve the problem, upgrade to a Linux level with a more recent zfcp device + * driver. If the problem persists, contact your support organization. + */ + +/*? + * Text: "%s: The error threshold for checksum statistics has been exceeded\n" + * Severity: Warning + * Parameter: + * @1: bus ID of the zfcp device + * Description: + * The FCP adapter has reported a large number of bit errors. This might + * indicate a problem with the physical components of the fibre channel fabric. + * Details about the errors have been written to the HBA trace for the FCP + * adapter. + * User action: + * Check for problems in the fibre channel fabric and ensure that all cables + * are properly plugged. + */ + +/*? + * Text: "%s: The local link has been restored\n" + * Severity: Informational + * Parameter: + * @1: bus ID of the zfcp device + * Description: + * A problem with the connection between the FCP adapter and the adjacent node + * on the fibre channel fabric has been resolved. The FCP adapter is now + * available again. + * User action: + * None. + */ + +/*? + * Text: "%s: The mode table on the FCP adapter has been damaged\n" + * Severity: Warning + * Parameter: + * @1: bus ID of the zfcp device + * Description: + * This is an FCP adapter hardware problem. + * User action: + * Report this problem with FCP hardware logs to IBM support. + */ + +/*? + * Text: "%s: The adjacent fibre channel node does not support FCP\n" + * Severity: Warning + * Parameter: + * @1: bus ID of the zfcp device + * Description: + * The fibre channel switch or storage system that is connected to the FCP + * channel does not support the fibre channel protocol (FCP). The zfcp + * device driver stopped using the FCP device. + * User action: + * Check the adjacent fibre channel node. + */ + +/*? + * Text: "%s: The FCP adapter does not recognize the command 0x%x\n" + * Severity: Error + * Parameter: + * @1: bus ID of the zfcp device + * @2: command + * Description: + * A command code that was sent from the zfcp device driver to the FCP adapter + * is not valid. The zfcp device driver stopped using the FCP device. + * User action: + * Gather Linux debug data, collect the FCP adapter hardware logs, and report + * this problem to your support organization. + */ + +/*? + * Text: "%s: There is no light signal from the local fibre channel cable\n" + * Severity: Warning + * Parameter: + * @1: bus ID of the zfcp device + * Description: + * There is no signal on the fibre channel cable that connects the FCP adapter + * to the fibre channel fabric. + * User action: + * Ensure that the cable is in place and connected properly to the FCP adapter + * and to the adjacent fibre channel switch or storage system. + */ + +/*? + * Text: "%s: The WWPN assignment file on the FCP adapter has been damaged\n" + * Severity: Warning + * Parameter: + * @1: bus ID of the zfcp device + * Description: + * This is an FCP adapter hardware problem. + * User action: + * Report this problem with FCP hardware logs to IBM support. + */ + +/*? + * Text: "%s: The FCP device detected a WWPN that is duplicate or not valid\n" + * Severity: Warning + * Parameter: + * @1: bus ID of the zfcp device + * Description: + * This condition indicates an error in the FCP adapter hardware or in the z/VM + * hypervisor. + * User action: + * Gather Linux debug data, collect the FCP adapter hardware logs, and report + * this problem to IBM support. + */ + +/*? + * Text: "%s: The fibre channel fabric does not support NPIV\n" + * Severity: Warning + * Parameter: + * @1: bus ID of the zfcp device + * Description: + * The FCP adapter requires N_Port ID Virtualization (NPIV) from the adjacent + * fibre channel node. Either the FCP adapter is connected to a fibre channel + * switch that does not support NPIV or the FCP adapter tries to use NPIV in a + * point-to-point setup. The connection is not operational. + * User action: + * Verify that NPIV is correctly used for this connection. Check the FCP adapter + * configuration and the fibre channel switch configuration. If necessary, + * update the fibre channel switch firmware. + */ + +/*? + * Text: "%s: The FCP adapter cannot support more NPIV ports\n" + * Severity: Warning + * Parameter: + * @1: bus ID of the zfcp device + * Description: + * N_Port ID Virtualization (NPIV) ports consume physical resources on the FCP + * adapter. The FCP adapter resources are exhausted. The connection is not + * operational. + * User action: + * Analyze the number of available NPIV ports and which operating system + * instances use them. If necessary, reconfigure your setup to move some + * NPIV ports to an FCP adapter with free resources. + */ + +/*? + * Text: "%s: The adjacent switch cannot support more NPIV ports\n" + * Severity: Warning + * Parameter: + * @1: bus ID of the zfcp device + * Description: + * N_Port ID Virtualization (NPIV) ports consume physical resources. The + * resources of the fibre channel switch that is connected to the FCP adapter + * are exhausted. The connection is not operational. + * User action: + * Analyze the number of available NPIV ports on the adjacent fibre channel + * switch and how they are used. If necessary, reconfigure your fibre channel + * fabric to accommodate the required NPIV ports. + */ + +/*? + * Text: "%s: 0x%x is not a valid transfer protocol status\n" + * Severity: Error + * Parameter: + * @1: bus ID of the zfcp device + * @2: status information + * Description: + * The transfer protocol status information reported by the FCP adapter is not + * a valid status for the zfcp device driver. The zfcp device driver stopped + * using the FCP device. + * User action: + * Gather Linux debug data, collect the FCP adapter hardware logs, and report + * this problem to your support organization. + */ + +/*? + * Text: "%s: Unknown or unsupported arbitrated loop fibre channel topology detected\n" + * Severity: Error + * Parameter: + * @1: bus ID of the zfcp device + * Description: + * The FCP device is connected to a fibre channel arbitrated loop or the FCP adapter + * reported an unknown fibre channel topology. The zfcp device driver supports + * point-to-point connections and switched fibre channel fabrics but not arbitrated + * loop topologies. The FCP device cannot be used. + * User action: + * Check the fibre channel setup and ensure that only supported topologies are + * connected to the FCP adapter. + */ + +/*? + * Text: "%s: FCP adapter maximum QTCB size (%d bytes) is too small\n" + * Severity: Error + * Parameter: + * @1: bus ID of the zfcp device + * @2: maximum supported size + * @3: requested QTCB size + * Description: + * The queue transfer control block (QTCB) size requested by the zfcp + * device driver is not supported by the FCP adapter hardware. + * User action: + * Update the firmware on your FCP adapter hardware to the latest + * available level and update the Linux kernel to the latest supported + * level. If the problem persists, contact your support organization. + */ + +/*? + * Text: "%s: The FCP adapter only supports newer control block versions\n" + * Severity: Error + * Parameter: + * @1: bus ID of the zfcp device + * Description: + * The protocol supported by the FCP adapter is not compatible with the zfcp + * device driver. + * User action: + * Upgrade your Linux kernel to a level that includes a zfcp device driver + * with support for the control block version required by your FCP adapter. + */ + +/*? + * Text: "%s: The FCP adapter only supports older control block versions\n" + * Severity: Error + * Parameter: + * @1: bus ID of the zfcp device + * Description: + * The protocol supported by the FCP adapter is not compatible with the zfcp + * device driver. + * User action: + * Install the latest firmware on your FCP adapter. + */ + +/*? + * Text: "%s: Not enough FCP adapter resources to open remote port 0x%016Lx\n" + * Severity: Warning + * Parameter: + * @1: bus ID of the zfcp device + * @2: WWPN + * Description: + * Each port that is opened consumes physical resources of the FCP adapter to + * which it is attached. These resources are exhausted and the specified port + * cannot be opened. + * User action: + * Reduce the total number of remote ports that are attached to the + * FCP adapter. + */ + +/*? + * Text: "%s: LUN 0x%Lx on port 0x%Lx is already in use by CSS%d, MIF Image ID %x\n" + * Severity: Warning + * Parameter: + * @1: bus ID of the zfcp device + * @2: LUN + * @3: remote port WWPN + * @4: channel subsystem ID + * @5: MIF Image ID of the LPAR + * Description: + * The SCSI device at the indicated LUN is already in use by another system. + * Only one system at a time can use the SCSI device. + * User action: + * Ensure that the other system stops using the device before trying to use it. + */ + +/*? + * Text: "%s: No handle is available for LUN 0x%016Lx on port 0x%016Lx\n" + * Severity: Warning + * Parameter: + * @1: bus ID of the zfcp device + * @2: LUN + * @3: WWPN + * Description: + * The FCP adapter can only open a limited number of SCSI devices. This limit + * has been reached and the SCSI device at the indicated LUN cannot be opened. + * User action: + * For FCP subchannels running in non-NPIV mode, check all SCSI + * devices opened through the FCP adapter and close some of them. For + * FCP subchannels running in NPIV mode, verify the SAN zoning and + * host connections on the storage systems. Ensure that the zoning and + * host connections only allow access to the required LUNs. As a + * workaround, disable the automatic LUN scanning by setting the + * zfcp.allow_lun_scan kernel parameter or the allow_lun_scan module + * parameter to 0. + */ + +/*? + * Text: "%s: Incorrect direction %d, LUN 0x%016Lx on port 0x%016Lx closed\n" + * Severity: Error + * Parameter: + * @1: bus ID of the zfcp device + * @2: value in direction field + * @3: LUN + * @4: WWPN + * Description: + * The direction field in a SCSI request contains an incorrect value. The zfcp + * device driver closed down the SCSI device at the indicated LUN. + * User action: + * Gather Linux debug data and report this problem to your support organization. + */ + +/*? + * Text: "%s: Incorrect CDB length %d, LUN 0x%016Lx on port 0x%016Lx closed\n" + * Severity: Error + * Parameter: + * @1: bus ID of the zfcp device + * @2: value in length field + * @3: LUN + * @4: WWPN + * Description: + * The control-data-block (CDB) length field in a SCSI request is not valid or + * too large for the FCP adapter. The zfcp device driver closed down the SCSI + * device at the indicated LUN. + * User action: + * Gather Linux debug data and report this problem to your support organization. + */ + +/*? + * Text: "%s: Opening WKA port 0x%x failed\n" + * Severity: Warning + * Parameter: + * @1: bus ID of the zfcp device + * @2: destination ID of the WKA port + * Description: + * The FCP adapter rejected a request to open the specified + * well-known address (WKA) port. No retry is possible. + * User action: + * Verify the setup and check if the maximum number of remote ports + * used through this adapter is below the maximum allowed. If the + * problem persists, gather Linux debug data, collect the FCP adapter + * hardware logs, and report the problem to your support organization. + */ + +/*? + * Text: "%s: The name server reported %d words residual data\n" + * Severity: Warning + * Parameter: + * @1: bus ID of the zfcp device + * @2: number of words in residual data + * Description: + * The fibre channel name server sent too much information about remote ports. + * The zfcp device driver did not receive sufficient information to attach all + * available remote ports in the SAN. + * User action: + * Verify that you are running the latest firmware level on the FCP + * adapter. Check your SAN setup and consider reducing the number of ports + * visible to the FCP adapter by using more restrictive zoning in the SAN. + */ + +/*? + * Text: "%s: A port opened with WWPN 0x%016Lx returned data that identifies it as WWPN 0x%016Lx\n" + * Severity: Warning + * Parameter: + * @1: bus ID of the zfcp device + * @2: expected WWPN + * @3: reported WWPN + * Description: + * A remote port was opened successfully, but it reported an + * unexpected WWPN in the returned port login (PLOGI) data. This + * condition might have been caused by a change applied to the SAN + * configuration while the port was being opened. + * User action: + * If this condition is only temporary and access to the remote port + * is possible, no action is required. If the condition persists, + * identify the storage system with the specified WWPN and contact the + * support organization of the storage system. + */ +/*? Text: "%s: %d output lines suppressed due to ratelimiting\n" */ --- linux-azure-5.8-5.8.0.orig/Documentation/kmsg/s390/zpci +++ linux-azure-5.8-5.8.0/Documentation/kmsg/s390/zpci @@ -0,0 +1,42 @@ +/*? + * Text: "%s: Event 0x%x reconfigured PCI function 0x%x\n" + * Severity: Informational + * Parameter: + * @1: device name of the function + * @2: PCI event code + * @3: function ID + * Description: + * The availability of a PCI function has changed. + * Possible reasons for the change include PCI configuration actions on the + * Hardware Management Console or hypervisor. + * For shared PCI functions, the function might also have been reserved or + * released by another system. + * If the device name of a function is shown as 'n/a', the device registration + * with the PCI device driver has not completed. + * The function ID identifies the function to the I/O configuration (IOCDS). + * The PCI event code can be useful diagnostic information for your support + * organization. + * User action: + * None. + */ + +/*? + * Text: "%s: Event 0x%x reports an error for PCI function 0x%x\n" + * Severity: Error + * Parameter: + * @1: device name of the function + * @2: PCI event code + * @3: function ID + * Description: + * A PCI function entered an error state from which it cannot recover + * automatically. + * User action: + * Trigger a recovery action by writing '1' to the 'recover' sysfs attribute + * of the PCI function. + * In sysfs, PCI functions are represented as /sys/bus/pci/devices/, + * where is the device name of the function. + * If the device name of a function is shown as 'n/a', the device + * registration with the PCI device driver has not completed. + * If the problem persists, contact your support organization. + */ +/*? Text: "%s: %d output lines suppressed due to ratelimiting\n" */ --- linux-azure-5.8-5.8.0.orig/Documentation/kmsg/sbp_target +++ linux-azure-5.8-5.8.0/Documentation/kmsg/sbp_target @@ -0,0 +1,49 @@ +/*? Text: "ABORT TASK SET not implemented\n" */ +/*? Text: "ABORT TASK not implemented\n" */ +/*? Text: "Cannot change the directory_id on an active target.\n" */ +/*? Text: "Cannot enable a target with no LUNs!\n" */ +/*? Text: "Could not update Config ROM\n" */ +/*? Text: "Ignoring ORB_POINTER write while active.\n" */ +/*? Text: "LOGICAL UNIT RESET not implemented\n" */ +/*? Text: "Node ACL not found for %s\n" */ +/*? Text: "Only one TPG per Unit is possible.\n" */ +/*? Text: "QUERY LOGINS not implemented\n" */ +/*? Text: "Reconnect timer expired for node: %016llx\n" */ +/*? Text: "SET PASSWORD not implemented\n" */ +/*? Text: "TARGET RESET not implemented\n" */ +/*? Text: "Unable to allocate struct sbp_nacl\n" */ +/*? Text: "Unable to allocate struct sbp_tpg\n" */ +/*? Text: "Unable to allocate struct sbp_tport\n" */ +/*? Text: "Waiting for reconnect from node: %016llx\n" */ +/*? Text: "cannot find login: %d\n" */ +/*? Text: "failed to allocate login descriptor\n" */ +/*? Text: "failed to allocate login response block\n" */ +/*? Text: "failed to allocate session descriptor\n" */ +/*? Text: "failed to init se_session\n" */ +/*? Text: "failed to map command block handler: %d\n" */ +/*? Text: "failed to read peer GUID: %d\n" */ +/*? Text: "ignoring management request while busy\n" */ +/*? Text: "ignoring request from foreign node (%x != %x)\n" */ +/*? Text: "ignoring request with wrong generation\n" */ +/*? Text: "initiator already logged-in\n" */ +/*? Text: "login to unknown LUN: %d\n" */ +/*? Text: "logout from different node ID\n" */ +/*? Text: "max number of logins reached\n" */ +/*? Text: "mgt_agent LOGIN to LUN %d from %016llx\n" */ +/*? Text: "mgt_agent LOGOUT from LUN %d session %d\n" */ +/*? Text: "mgt_agent RECONNECT from %016llx\n" */ +/*? Text: "mgt_agent RECONNECT login GUID doesn't match\n" */ +/*? Text: "mgt_agent RECONNECT unknown login ID\n" */ +/*? Text: "mgt_orb bad request\n" */ +/*? Text: "netif_stop_queue() cannot be called before register_netdev()\n" */ +/*? Text: "refusing exclusive login with other active logins\n" */ +/*? Text: "refusing login while another exclusive login present\n" */ +/*? Text: "sbp_run_transaction: page size ignored\n" */ +/*? Text: "sbp_send_sense: unknown sense format: 0x%x\n" */ +/*? Text: "target_fabric_configfs_init() failed\n" */ +/*? Text: "target_fabric_configfs_register() failed for SBP\n" */ +/*? Text: "unknown management function 0x%x\n" */ +/*? Text: "unlink LUN: failed to update unit directory\n" */ +/*? Text: "flen=%u proglen=%u pass=%u image=%pK from=%s pid=%d\n" */ +/*? Text: "%s selects TX queue %d, but real number of TX queues is %d\n" */ +/*? Text: "%s: %d output lines suppressed due to ratelimiting\n" */ \ No newline at end of file --- linux-azure-5.8-5.8.0.orig/Documentation/kmsg/zram +++ linux-azure-5.8-5.8.0/Documentation/kmsg/zram @@ -0,0 +1,34 @@ +/*? Text: "Error allocating compressor buffer space\n" */ +/*? Text: "Error allocating memory for compressed page: %u, size=%zu\n" */ +/*? Text: "Error creating memory pool\n" */ +/*? Text: "num_devices not specified. Using default: 1\n" */ +/*? Text: "Error allocating compressor working memory!\n" */ +/*? Text: "Error allocating zram address table\n" */ +/*? Text: "Unable to get major number\n" */ +/*? Text: "Compression failed! err=%d\n" */ +/*? Text: "Decompression failed! err=%d, page=%u\n" */ +/*? Text: "There is little point creating a zram of greater than twice the size of memory since we expect a 2:1 compression ratio. Note that zram uses about 0.1%% of the size of the disk when not in use so a huge zram is wasteful.\n\tMemory Size: %zu kB\n\tSize you selected: %llu kB\nContinuing anyway ...\n" */ +/*? Text: "disk size not provided. You can use disksize_kb module param to specify size.\nUsing default: (%u%% of RAM).\n" */ +/*? Text: "Error creating sysfs group" */ +/*? Text: "Error allocating memory for incompressible page: %u\n" */ +/*? Text: "Creating %u devices ...\n" */ +/*? Text: "Initialization failed: err=%d\n" */ +/*? Text: "Error allocating disk queue for device %d\n" */ +/*? Text: "Error allocating disk structure for device %d\n" */ +/*? Text: "Invalid value for num_devices: %u\n" */ +/*? Text: "Error allocating temp memory!\n" */ +/*? Text: "Unable to allocate temp memory\n" */ +/*? Text: "Created %u device(s) ...\n" */ +/*? Text: "There is little point creating a zram of greater than twice the size of memory since we expect a 2:1 compression ratio. Note that zram uses about 0.1%% of the size of the disk when not in use so a huge zram is wasteful.\n\tMemory Size: %lu kB\n\tSize you selected: %llu kB\nContinuing anyway ...\n" */ +/*? Text: "Cannot change disksize for initialized device\n" */ +/*? Text: "Can't change algorithm for initialized device\n" */ +/*? Text: "Cannot initialise %s compressing backend\n" */ +/*? Text: "Cannot change max compression streams\n" */ +/*? Text: "Destroyed %u device(s)\n" */ +/*? Text: "Created %u device(s)\n" */ +/*? Text: "Unable to register zram-control class\n" */ +/*? Text: "Removed device: %s\n" */ +/*? Text: "Added device: %s\n" */ +/*? Text: "Error creating sysfs group for device %d\n" */ +/*? Text: "Error allocating memory for compressed page: %u, size=%u\n" */ +/*? Text: "%s: %d output lines suppressed due to ratelimiting\n" */ \ No newline at end of file --- linux-azure-5.8-5.8.0.orig/Documentation/networking/device_drivers/amazon/ena.rst +++ linux-azure-5.8-5.8.0/Documentation/networking/device_drivers/amazon/ena.rst @@ -274,7 +274,7 @@ inputs for hash functions. - The driver configures RSS settings using the AQ SetFeature command (ENA_ADMIN_RSS_HASH_FUNCTION, ENA_ADMIN_RSS_HASH_INPUT and - ENA_ADMIN_RSS_REDIRECTION_TABLE_CONFIG properties). + ENA_ADMIN_RSS_INDIRECTION_TABLE_CONFIG properties). - If the NETIF_F_RXHASH flag is set, the 32-bit result of the hash function delivered in the Rx CQ descriptor is set in the received SKB. --- linux-azure-5.8-5.8.0.orig/Documentation/networking/ip-sysctl.rst +++ linux-azure-5.8-5.8.0/Documentation/networking/ip-sysctl.rst @@ -1142,13 +1142,15 @@ icmp_msgs_per_sec - INTEGER Limit maximal number of ICMP packets sent per second from this host. Only messages whose type matches icmp_ratemask (see below) are - controlled by this limit. + controlled by this limit. For security reasons, the precise count + of messages per second is randomized. Default: 1000 icmp_msgs_burst - INTEGER icmp_msgs_per_sec controls number of ICMP packets sent per second, while icmp_msgs_burst controls the burst size of these packets. + For security reasons, the precise burst size is randomized. Default: 50 --- linux-azure-5.8-5.8.0.orig/Documentation/networking/j1939.rst +++ linux-azure-5.8-5.8.0/Documentation/networking/j1939.rst @@ -414,8 +414,8 @@ .can_family = AF_CAN, .can_addr.j1939 = { .name = J1939_NO_NAME; - .pgn = 0x30, - .addr = 0x12300, + .addr = 0x30, + .pgn = 0x12300, }, }; --- linux-azure-5.8-5.8.0.orig/Documentation/networking/tls-offload.rst +++ linux-azure-5.8-5.8.0/Documentation/networking/tls-offload.rst @@ -428,6 +428,24 @@ which were part of a TLS stream. * ``rx_tls_decrypted_bytes`` - number of TLS payload bytes in RX packets which were successfully decrypted. + * ``rx_tls_ctx`` - number of TLS RX HW offload contexts added to device for + decryption. + * ``rx_tls_del`` - number of TLS RX HW offload contexts deleted from device + (connection has finished). + * ``rx_tls_resync_req_pkt`` - number of received TLS packets with a resync + request. + * ``rx_tls_resync_req_start`` - number of times the TLS async resync request + was started. + * ``rx_tls_resync_req_end`` - number of times the TLS async resync request + properly ended with providing the HW tracked tcp-seq. + * ``rx_tls_resync_req_skip`` - number of times the TLS async resync request + procedure was started by not properly ended. + * ``rx_tls_resync_res_ok`` - number of times the TLS resync response call to + the driver was successfully handled. + * ``rx_tls_resync_res_skip`` - number of times the TLS resync response call to + the driver was terminated unsuccessfully. + * ``rx_tls_err`` - number of RX packets which were part of a TLS stream + but were not decrypted due to unexpected error in the state machine. * ``tx_tls_encrypted_packets`` - number of TX packets passed to the device for encryption of their TLS payload. * ``tx_tls_encrypted_bytes`` - number of TLS payload bytes in TX packets --- linux-azure-5.8-5.8.0.orig/Documentation/scsi/libsas.rst +++ linux-azure-5.8-5.8.0/Documentation/scsi/libsas.rst @@ -189,7 +189,6 @@ The event interface:: /* LLDD calls these to notify the class of an event. */ - void (*notify_ha_event)(struct sas_ha_struct *, enum ha_event); void (*notify_port_event)(struct sas_phy *, enum port_event); void (*notify_phy_event)(struct sas_phy *, enum phy_event); --- linux-azure-5.8-5.8.0.orig/Documentation/security/keys/core.rst +++ linux-azure-5.8-5.8.0/Documentation/security/keys/core.rst @@ -1040,8 +1040,8 @@ "key" is the ID of the key to be watched. - "queue_fd" is a file descriptor referring to an open "/dev/watch_queue" - which manages the buffer into which notifications will be delivered. + "queue_fd" is a file descriptor referring to an open pipe which + manages the buffer into which notifications will be delivered. "filter" is either NULL to remove a watch or a filter specification to indicate what events are required from the key. --- linux-azure-5.8-5.8.0.orig/Documentation/security/lsm.rst +++ linux-azure-5.8-5.8.0/Documentation/security/lsm.rst @@ -129,3 +129,31 @@ The capabilities security module does not use the general security blobs, unlike other modules. The reasons are historical and are based on overhead, complexity and performance concerns. + +LSM External Interfaces +======================= + +The LSM infrastructure does not generally provide external interfaces. +The individual security modules provide what external interfaces they +require. + +The file ``/sys/kernel/security/lsm`` provides a comma +separated list of the active security modules. + +The file ``/proc/pid/attr/display`` contains the name of the security +module for which the ``/proc/pid/attr/current`` interface will +apply. This interface can be written to. + +The infrastructure does provide an interface for the special +case where multiple security modules provide a process context. +This is provided in compound context format. + +- `lsm\0value\0lsm\0value\0` + +The `lsm` and `value` fields are nul terminated bytestrings. +Each field may contain whitespace or non-printable characters. +The nul bytes are included in the size of a compound context. +The context ``Bell\0Secret\0Biba\0Loose\0`` has a size of 23. + +The file ``/proc/pid/attr/context`` provides the security +context of the identified process. --- linux-azure-5.8-5.8.0.orig/Documentation/sound/alsa-configuration.rst +++ linux-azure-5.8-5.8.0/Documentation/sound/alsa-configuration.rst @@ -1501,7 +1501,7 @@ This module supports multiple cards. Note: One miXart8 board will be represented as 4 alsa cards. -See MIXART.txt for details. +See Documentation/sound/cards/mixart.rst for details. When the driver is compiled as a module and the hotplug firmware is supported, the firmware data is loaded via hotplug automatically. --- linux-azure-5.8-5.8.0.orig/Documentation/sound/designs/timestamping.rst +++ linux-azure-5.8-5.8.0/Documentation/sound/designs/timestamping.rst @@ -143,7 +143,7 @@ before returning from the ``STATUS`` and ``STATUS_EXT`` ioctl. in most cases this driver_timestamp will be identical to the regular system tstamp. -Examples of typestamping with HDaudio: +Examples of timestamping with HDAudio: 1. DMA timestamp, no compensation for DMA+analog delay :: --- linux-azure-5.8-5.8.0.orig/Documentation/sphinx/cdomain.py +++ linux-azure-5.8-5.8.0/Documentation/sphinx/cdomain.py @@ -32,15 +32,34 @@ """ +import re + from docutils import nodes from docutils.parsers.rst import directives 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 +# 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.0' # Get Sphinx version --- linux-azure-5.8-5.8.0.orig/Documentation/userspace-api/media/v4l/colorspaces-defs.rst +++ linux-azure-5.8-5.8.0/Documentation/userspace-api/media/v4l/colorspaces-defs.rst @@ -36,8 +36,7 @@ :c:type:`v4l2_hsv_encoding` specifies which encoding is used. .. note:: The default R'G'B' quantization is full range for all - colorspaces except for BT.2020 which uses limited range R'G'B' - quantization. + colorspaces. HSV formats are always full range. .. tabularcolumns:: |p{6.7cm}|p{10.8cm}| @@ -169,8 +168,8 @@ - Details * - ``V4L2_QUANTIZATION_DEFAULT`` - Use the default quantization encoding as defined by the - colorspace. This is always full range for R'G'B' (except for the - BT.2020 colorspace) and HSV. It is usually limited range for Y'CbCr. + colorspace. This is always full range for R'G'B' and HSV. + It is usually limited range for Y'CbCr. * - ``V4L2_QUANTIZATION_FULL_RANGE`` - Use the full range quantization encoding. I.e. the range [0…1] is mapped to [0…255] (with possible clipping to [1…254] to avoid the @@ -180,4 +179,4 @@ * - ``V4L2_QUANTIZATION_LIM_RANGE`` - Use the limited range quantization encoding. I.e. the range [0…1] is mapped to [16…235]. Cb and Cr are mapped from [-0.5…0.5] to - [16…240]. + [16…240]. Limited Range cannot be used with HSV. --- linux-azure-5.8-5.8.0.orig/Documentation/userspace-api/media/v4l/colorspaces-details.rst +++ linux-azure-5.8-5.8.0/Documentation/userspace-api/media/v4l/colorspaces-details.rst @@ -377,9 +377,8 @@ The :ref:`itu2020` standard defines the colorspace used by Ultra-high definition television (UHDTV). The default transfer function is ``V4L2_XFER_FUNC_709``. The default Y'CbCr encoding is -``V4L2_YCBCR_ENC_BT2020``. The default R'G'B' quantization is limited -range (!), and so is the default Y'CbCr quantization. The chromaticities -of the primary colors and the white reference are: +``V4L2_YCBCR_ENC_BT2020``. The default Y'CbCr quantization is limited range. +The chromaticities of the primary colors and the white reference are: --- linux-azure-5.8-5.8.0.orig/Documentation/virt/kvm/api.rst +++ linux-azure-5.8-5.8.0/Documentation/virt/kvm/api.rst @@ -1260,6 +1260,9 @@ the entire memory slot size. Any object may back this memory, including anonymous memory, ordinary files, and hugetlbfs. +On architectures that support a form of address tagging, userspace_addr must +be an untagged address. + It is recommended that the lower 21 bits of guest_phys_addr and userspace_addr be identical. This allows large pages in the guest to be backed by large pages in the host. @@ -1312,7 +1315,7 @@ :Capability: KVM_CAP_ENABLE_CAP_VM :Architectures: all -:Type: vcpu ioctl +:Type: vm ioctl :Parameters: struct kvm_enable_cap (in) :Returns: 0 on success; -1 on error --- linux-azure-5.8-5.8.0.orig/Documentation/virt/kvm/mmu.rst +++ linux-azure-5.8-5.8.0/Documentation/virt/kvm/mmu.rst @@ -455,7 +455,7 @@ number, it will ignore the cached MMIO information and handle the page fault through the slow path. -Since only 19 bits are used to store generation-number on mmio spte, all +Since only 18 bits are used to store generation-number on mmio spte, all pages are zapped when there is an overflow. Unfortunately, a single memory access might access kvm_memslots(kvm) multiple --- linux-azure-5.8-5.8.0.orig/Documentation/x86/topology.rst +++ linux-azure-5.8-5.8.0/Documentation/x86/topology.rst @@ -41,6 +41,8 @@ Packages contain a number of cores plus shared resources, e.g. DRAM controller, shared caches etc. +Modern systems may also use the term 'Die' for package. + AMD nomenclature for package is 'Node'. Package-related topology information in the kernel: @@ -53,11 +55,18 @@ The number of dies in a package. This information is retrieved via CPUID. + - cpuinfo_x86.cpu_die_id: + + The physical ID of the die. This information is retrieved via CPUID. + - cpuinfo_x86.phys_proc_id: The physical ID of the package. This information is retrieved via CPUID and deduced from the APIC IDs of the cores in the package. + Modern systems use this value for the socket. There may be multiple + packages within a socket. This value may differ from cpu_die_id. + - cpuinfo_x86.logical_proc_id: The logical ID of the package. As we do not trust BIOSes to enumerate the --- linux-azure-5.8-5.8.0.orig/Documentation/x86/x86_64/fsgs.rst +++ linux-azure-5.8-5.8.0/Documentation/x86/x86_64/fsgs.rst @@ -0,0 +1,199 @@ +.. SPDX-License-Identifier: GPL-2.0 + +Using FS and GS segments in user space applications +=================================================== + +The x86 architecture supports segmentation. Instructions which access +memory can use segment register based addressing mode. The following +notation is used to address a byte within a segment: + + Segment-register:Byte-address + +The segment base address is added to the Byte-address to compute the +resulting virtual address which is accessed. This allows to access multiple +instances of data with the identical Byte-address, i.e. the same code. The +selection of a particular instance is purely based on the base-address in +the segment register. + +In 32-bit mode the CPU provides 6 segments, which also support segment +limits. The limits can be used to enforce address space protections. + +In 64-bit mode the CS/SS/DS/ES segments are ignored and the base address is +always 0 to provide a full 64bit address space. The FS and GS segments are +still functional in 64-bit mode. + +Common FS and GS usage +------------------------------ + +The FS segment is commonly used to address Thread Local Storage (TLS). FS +is usually managed by runtime code or a threading library. Variables +declared with the '__thread' storage class specifier are instantiated per +thread and the compiler emits the FS: address prefix for accesses to these +variables. Each thread has its own FS base address so common code can be +used without complex address offset calculations to access the per thread +instances. Applications should not use FS for other purposes when they use +runtimes or threading libraries which manage the per thread FS. + +The GS segment has no common use and can be used freely by +applications. GCC and Clang support GS based addressing via address space +identifiers. + +Reading and writing the FS/GS base address +------------------------------------------ + +There exist two mechanisms to read and write the FS/GS base address: + + - the arch_prctl() system call + + - the FSGSBASE instruction family + +Accessing FS/GS base with arch_prctl() +-------------------------------------- + + The arch_prctl(2) based mechanism is available on all 64-bit CPUs and all + kernel versions. + + Reading the base: + + arch_prctl(ARCH_GET_FS, &fsbase); + arch_prctl(ARCH_GET_GS, &gsbase); + + Writing the base: + + arch_prctl(ARCH_SET_FS, fsbase); + arch_prctl(ARCH_SET_GS, gsbase); + + The ARCH_SET_GS prctl may be disabled depending on kernel configuration + and security settings. + +Accessing FS/GS base with the FSGSBASE instructions +--------------------------------------------------- + + With the Ivy Bridge CPU generation Intel introduced a new set of + instructions to access the FS and GS base registers directly from user + space. These instructions are also supported on AMD Family 17H CPUs. The + following instructions are available: + + =============== =========================== + RDFSBASE %reg Read the FS base register + RDGSBASE %reg Read the GS base register + WRFSBASE %reg Write the FS base register + WRGSBASE %reg Write the GS base register + =============== =========================== + + The instructions avoid the overhead of the arch_prctl() syscall and allow + more flexible usage of the FS/GS addressing modes in user space + applications. This does not prevent conflicts between threading libraries + and runtimes which utilize FS and applications which want to use it for + their own purpose. + +FSGSBASE instructions enablement +^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ + The instructions are enumerated in CPUID leaf 7, bit 0 of EBX. If + available /proc/cpuinfo shows 'fsgsbase' in the flag entry of the CPUs. + + The availability of the instructions does not enable them + automatically. The kernel has to enable them explicitly in CR4. The + reason for this is that older kernels make assumptions about the values in + the GS register and enforce them when GS base is set via + arch_prctl(). Allowing user space to write arbitrary values to GS base + would violate these assumptions and cause malfunction. + + On kernels which do not enable FSGSBASE the execution of the FSGSBASE + instructions will fault with a #UD exception. + + The kernel provides reliable information about the enabled state in the + ELF AUX vector. If the HWCAP2_FSGSBASE bit is set in the AUX vector, the + kernel has FSGSBASE instructions enabled and applications can use them. + The following code example shows how this detection works:: + + #include + #include + + /* Will be eventually in asm/hwcap.h */ + #ifndef HWCAP2_FSGSBASE + #define HWCAP2_FSGSBASE (1 << 1) + #endif + + .... + + unsigned val = getauxval(AT_HWCAP2); + + if (val & HWCAP2_FSGSBASE) + printf("FSGSBASE enabled\n"); + +FSGSBASE instructions compiler support +^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ + +GCC version 4.6.4 and newer provide instrinsics for the FSGSBASE +instructions. Clang 5 supports them as well. + + =================== =========================== + _readfsbase_u64() Read the FS base register + _readfsbase_u64() Read the GS base register + _writefsbase_u64() Write the FS base register + _writegsbase_u64() Write the GS base register + =================== =========================== + +To utilize these instrinsics must be included in the source +code and the compiler option -mfsgsbase has to be added. + +Compiler support for FS/GS based addressing +------------------------------------------- + +GCC version 6 and newer provide support for FS/GS based addressing via +Named Address Spaces. GCC implements the following address space +identifiers for x86: + + ========= ==================================== + __seg_fs Variable is addressed relative to FS + __seg_gs Variable is addressed relative to GS + ========= ==================================== + +The preprocessor symbols __SEG_FS and __SEG_GS are defined when these +address spaces are supported. Code which implements fallback modes should +check whether these symbols are defined. Usage example:: + + #ifdef __SEG_GS + + long data0 = 0; + long data1 = 1; + + long __seg_gs *ptr; + + /* Check whether FSGSBASE is enabled by the kernel (HWCAP2_FSGSBASE) */ + .... + + /* Set GS base to point to data0 */ + _writegsbase_u64(&data0); + + /* Access offset 0 of GS */ + ptr = 0; + printf("data0 = %ld\n", *ptr); + + /* Set GS base to point to data1 */ + _writegsbase_u64(&data1); + /* ptr still addresses offset 0! */ + printf("data1 = %ld\n", *ptr); + + +Clang does not provide the GCC address space identifiers, but it provides +address spaces via an attribute based mechanism in Clang 2.6 and newer +versions: + + ==================================== ===================================== + __attribute__((address_space(256)) Variable is addressed relative to GS + __attribute__((address_space(257)) Variable is addressed relative to FS + ==================================== ===================================== + +FS/GS based addressing with inline assembly +------------------------------------------- + +In case the compiler does not support address spaces, inline assembly can +be used for FS/GS based addressing mode:: + + mov %fs:offset, %reg + mov %gs:offset, %reg + + mov %reg, %fs:offset + mov %reg, %gs:offset --- linux-azure-5.8-5.8.0.orig/Documentation/x86/x86_64/index.rst +++ linux-azure-5.8-5.8.0/Documentation/x86/x86_64/index.rst @@ -14,3 +14,4 @@ fake-numa-for-cpusets cpu-hotplug-spec machinecheck + fsgs --- linux-azure-5.8-5.8.0.orig/Documentation/xtensa/mmu.rst +++ linux-azure-5.8-5.8.0/Documentation/xtensa/mmu.rst @@ -82,7 +82,8 @@ +------------------+ | VMALLOC area | VMALLOC_START 0xc0000000 128MB - 64KB +------------------+ VMALLOC_END - | Cache aliasing | TLBTEMP_BASE_1 0xc7ff0000 DCACHE_WAY_SIZE + +------------------+ + | Cache aliasing | TLBTEMP_BASE_1 0xc8000000 DCACHE_WAY_SIZE | remap area 1 | +------------------+ | Cache aliasing | TLBTEMP_BASE_2 DCACHE_WAY_SIZE @@ -124,7 +125,8 @@ +------------------+ | VMALLOC area | VMALLOC_START 0xa0000000 128MB - 64KB +------------------+ VMALLOC_END - | Cache aliasing | TLBTEMP_BASE_1 0xa7ff0000 DCACHE_WAY_SIZE + +------------------+ + | Cache aliasing | TLBTEMP_BASE_1 0xa8000000 DCACHE_WAY_SIZE | remap area 1 | +------------------+ | Cache aliasing | TLBTEMP_BASE_2 DCACHE_WAY_SIZE @@ -167,7 +169,8 @@ +------------------+ | VMALLOC area | VMALLOC_START 0x90000000 128MB - 64KB +------------------+ VMALLOC_END - | Cache aliasing | TLBTEMP_BASE_1 0x97ff0000 DCACHE_WAY_SIZE + +------------------+ + | Cache aliasing | TLBTEMP_BASE_1 0x98000000 DCACHE_WAY_SIZE | remap area 1 | +------------------+ | Cache aliasing | TLBTEMP_BASE_2 DCACHE_WAY_SIZE --- linux-azure-5.8-5.8.0.orig/Kconfig +++ linux-azure-5.8-5.8.0/Kconfig @@ -19,6 +19,8 @@ source "drivers/Kconfig" +source "ubuntu/Kconfig" + source "fs/Kconfig" source "security/Kconfig" --- linux-azure-5.8-5.8.0.orig/MAINTAINERS +++ linux-azure-5.8-5.8.0/MAINTAINERS @@ -2984,6 +2984,19 @@ F: include/uapi/linux/audit.h F: kernel/audit* +AUFS (advanced multi layered unification filesystem) FILESYSTEM +M: "J. R. Okajima" +L: aufs-users@lists.sourceforge.net (members only) +L: linux-unionfs@vger.kernel.org +W: http://aufs.sourceforge.net +T: git://github.com/sfjro/aufs4-linux.git +S: Supported +F: Documentation/filesystems/aufs/ +F: Documentation/ABI/testing/debugfs-aufs +F: Documentation/ABI/testing/sysfs-aufs +F: fs/aufs/ +F: include/uapi/linux/aufs_type.h + AUXILIARY DISPLAY DRIVERS M: Miguel Ojeda Sandonis S: Maintained --- linux-azure-5.8-5.8.0.orig/Makefile +++ linux-azure-5.8-5.8.0/Makefile @@ -1,7 +1,7 @@ # SPDX-License-Identifier: GPL-2.0 VERSION = 5 PATCHLEVEL = 8 -SUBLEVEL = 0 +SUBLEVEL = 18 EXTRAVERSION = NAME = Kleptomaniac Octopus @@ -212,6 +212,20 @@ KBUILD_CHECKSRC = 0 endif +# Call message checker as part of the C compilation +# +# Use 'make D=1' to enable checking +# Use 'make D=2' to create the message catalog + +ifdef D + ifeq ("$(origin D)", "command line") + KBUILD_KMSG_CHECK = $(D) + endif +endif +ifndef KBUILD_KMSG_CHECK + KBUILD_KMSG_CHECK = 0 +endif + # Use make M=dir or set the environment variable KBUILD_EXTMOD to specify the # directory of external module to build. Setting M= takes precedence. ifeq ("$(origin M)", "command line") @@ -452,7 +466,7 @@ YACC = bison AWK = awk INSTALLKERNEL := installkernel -DEPMOD = /sbin/depmod +DEPMOD = depmod PERL = perl PYTHON = python PYTHON3 = python3 @@ -467,6 +481,7 @@ CHECKFLAGS := -D__linux__ -Dlinux -D__STDC__ -Dunix -D__unix__ \ -Wbitwise -Wno-return-void -Wno-unknown-attribute $(CF) +KMSG_CHECK = $(srctree)/scripts/kmsg-doc NOSTDINC_FLAGS := CFLAGS_MODULE = AFLAGS_MODULE = @@ -475,6 +490,13 @@ AFLAGS_KERNEL = LDFLAGS_vmlinux = +# Prefer linux-backports-modules +ifneq ($(KBUILD_SRC),) +ifneq ($(shell if test -e $(KBUILD_OUTPUT)/ubuntu-build; then echo yes; fi),yes) +UBUNTUINCLUDE := -I/usr/src/linux-headers-lbm-$(KERNELRELEASE) +endif +endif + # Use USERINCLUDE when you must reference the UAPI directories only. USERINCLUDE := \ -I$(srctree)/arch/$(SRCARCH)/include/uapi \ @@ -486,17 +508,21 @@ # Use LINUXINCLUDE when you must reference the include/ directory. # Needed to be compatible with the O= option LINUXINCLUDE := \ + $(UBUNTUINCLUDE) \ -I$(srctree)/arch/$(SRCARCH)/include \ -I$(objtree)/arch/$(SRCARCH)/include/generated \ $(if $(building_out_of_srctree),-I$(srctree)/include) \ -I$(objtree)/include \ $(USERINCLUDE) +# UBUNTU: Include our third party driver stuff too +LINUXINCLUDE += -Iubuntu/include $(if $(KBUILD_SRC),-I$(srctree)/ubuntu/include) + KBUILD_AFLAGS := -D__ASSEMBLY__ -fno-PIE KBUILD_CFLAGS := -Wall -Wundef -Werror=strict-prototypes -Wno-trigraphs \ -fno-strict-aliasing -fno-common -fshort-wchar -fno-PIE \ -Werror=implicit-function-declaration -Werror=implicit-int \ - -Wno-format-security \ + -Werror=return-type -Wno-format-security \ -std=gnu89 KBUILD_CPPFLAGS := -D__KERNEL__ KBUILD_AFLAGS_KERNEL := @@ -519,6 +545,7 @@ export KBUILD_CFLAGS CFLAGS_KERNEL CFLAGS_MODULE export CFLAGS_KASAN CFLAGS_KASAN_NOSANITIZE CFLAGS_UBSAN CFLAGS_KCSAN export KBUILD_AFLAGS AFLAGS_KERNEL AFLAGS_MODULE +export KBUILD_KMSG_CHECK KMSG_CHECK export KBUILD_AFLAGS_MODULE KBUILD_CFLAGS_MODULE KBUILD_LDFLAGS_MODULE export KBUILD_AFLAGS_KERNEL KBUILD_CFLAGS_KERNEL @@ -651,7 +678,7 @@ ifeq ($(KBUILD_EXTMOD),) # Objects we will link into vmlinux / subdirs we need to visit core-y := init/ usr/ -drivers-y := drivers/ sound/ +drivers-y := drivers/ sound/ ubuntu/ drivers-$(CONFIG_SAMPLES) += samples/ drivers-y += net/ virt/ libs-y := lib/ @@ -815,8 +842,11 @@ else DEBUG_CFLAGS += -g endif +ifneq ($(LLVM_IAS),1) KBUILD_AFLAGS += -Wa,-gdwarf-2 endif +endif + ifdef CONFIG_DEBUG_INFO_DWARF4 DEBUG_CFLAGS += -gdwarf-4 endif @@ -876,10 +906,6 @@ LDFLAGS_vmlinux += --gc-sections endif -ifdef CONFIG_LIVEPATCH -KBUILD_CFLAGS += $(call cc-option, -flive-patching=inline-clone) -endif - ifdef CONFIG_SHADOW_CALL_STACK CC_FLAGS_SCS := -fsanitize=shadow-call-stack KBUILD_CFLAGS += $(CC_FLAGS_SCS) @@ -942,12 +968,6 @@ # change __FILE__ to the relative path from the srctree KBUILD_CFLAGS += $(call cc-option,-fmacro-prefix-map=$(srctree)/=) -# ensure -fcf-protection is disabled when using retpoline as it is -# incompatible with -mindirect-branch=thunk-extern -ifdef CONFIG_RETPOLINE -KBUILD_CFLAGS += $(call cc-option,-fcf-protection=none) -endif - include scripts/Makefile.kasan include scripts/Makefile.extrawarn include scripts/Makefile.ubsan @@ -958,8 +978,8 @@ KBUILD_AFLAGS += $(KAFLAGS) KBUILD_CFLAGS += $(KCFLAGS) -KBUILD_LDFLAGS_MODULE += --build-id -LDFLAGS_vmlinux += --build-id +KBUILD_LDFLAGS_MODULE += --build-id=sha1 +LDFLAGS_vmlinux += --build-id=sha1 ifeq ($(CONFIG_STRIP_ASM_SYMS),y) LDFLAGS_vmlinux += $(call ld-option, -X,) @@ -1258,6 +1278,7 @@ $(error Headers not exportable for the $(SRCARCH) architecture)) $(Q)$(MAKE) $(hdr-inst)=include/uapi $(Q)$(MAKE) $(hdr-inst)=arch/$(SRCARCH)/include/uapi + $(Q)$(MAKE) $(hdr-inst)=ubuntu/include dst=include oldheaders= # Deprecated. It is no-op now. PHONY += headers_check --- linux-azure-5.8-5.8.0.orig/arch/Kconfig +++ linux-azure-5.8-5.8.0/arch/Kconfig @@ -131,6 +131,22 @@ managed by the kernel and kept transparent to the probed application. ) +config HAVE_64BIT_ALIGNED_ACCESS + def_bool 64BIT && !HAVE_EFFICIENT_UNALIGNED_ACCESS + help + Some architectures require 64 bit accesses to be 64 bit + aligned, which also requires structs containing 64 bit values + to be 64 bit aligned too. This includes some 32 bit + architectures which can do 64 bit accesses, as well as 64 bit + architectures without unaligned access. + + This symbol should be selected by an architecture if 64 bit + accesses are required to be 64 bit aligned in this way even + though it is not a 64 bit architecture. + + See Documentation/unaligned-memory-access.txt for more + information on the topic of unaligned memory accesses. + config HAVE_EFFICIENT_UNALIGNED_ACCESS bool help @@ -411,6 +427,13 @@ bool depends on MMU_GATHER_TABLE_FREE +config ARCH_WANT_IRQS_OFF_ACTIVATE_MM + bool + help + Temporary select until all architectures can be converted to have + irqs disabled over activate_mm. Architectures that do IPI based TLB + shootdowns should enable this. + config ARCH_HAVE_NMI_SAFE_CMPXCHG bool @@ -979,6 +1002,12 @@ entries at 4000, 5000 and 6000 locations. This option turns on syscall related optimizations for a given architecture. +config ARCH_SPLIT_ARG64 + bool + help + If a 32-bit architecture requires 64-bit arguments to be split into + pairs of 32-bit arguments, select this option. + source "kernel/gcov/Kconfig" source "scripts/gcc-plugins/Kconfig" --- linux-azure-5.8-5.8.0.orig/arch/alpha/include/asm/io.h +++ linux-azure-5.8-5.8.0/arch/alpha/include/asm/io.h @@ -489,10 +489,10 @@ } #endif -#define ioread16be(p) be16_to_cpu(ioread16(p)) -#define ioread32be(p) be32_to_cpu(ioread32(p)) -#define iowrite16be(v,p) iowrite16(cpu_to_be16(v), (p)) -#define iowrite32be(v,p) iowrite32(cpu_to_be32(v), (p)) +#define ioread16be(p) swab16(ioread16(p)) +#define ioread32be(p) swab32(ioread32(p)) +#define iowrite16be(v,p) iowrite16(swab16(v), (p)) +#define iowrite32be(v,p) iowrite32(swab32(v), (p)) #define inb_p inb #define inw_p inw --- linux-azure-5.8-5.8.0.orig/arch/arc/Makefile +++ linux-azure-5.8-5.8.0/arch/arc/Makefile @@ -107,16 +107,22 @@ boot := arch/arc/boot -#default target for make without any arguments. -KBUILD_IMAGE := $(boot)/bootpImage - -all: bootpImage -bootpImage: vmlinux - -boot_targets += uImage uImage.bin uImage.gz +boot_targets := uImage.bin uImage.gz uImage.lzma +PHONY += $(boot_targets) $(boot_targets): vmlinux $(Q)$(MAKE) $(build)=$(boot) $(boot)/$@ +uimage-default-y := uImage.bin +uimage-default-$(CONFIG_KERNEL_GZIP) := uImage.gz +uimage-default-$(CONFIG_KERNEL_LZMA) := uImage.lzma + +PHONY += uImage +uImage: $(uimage-default-y) + @ln -sf $< $(boot)/uImage + @$(kecho) ' Image $(boot)/uImage is ready' + +CLEAN_FILES += $(boot)/uImage + archclean: $(Q)$(MAKE) $(clean)=$(boot) --- linux-azure-5.8-5.8.0.orig/arch/arc/boot/Makefile +++ linux-azure-5.8-5.8.0/arch/arc/boot/Makefile @@ -1,5 +1,5 @@ # SPDX-License-Identifier: GPL-2.0 -targets := vmlinux.bin vmlinux.bin.gz uImage +targets := vmlinux.bin vmlinux.bin.gz # uImage build relies on mkimage being availble on your host for ARC target # You will need to build u-boot for ARC, rename mkimage to arc-elf32-mkimage @@ -13,11 +13,6 @@ UIMAGE_LOADADDR = $(CONFIG_LINUX_LINK_BASE) UIMAGE_ENTRYADDR = $(LINUX_START_TEXT) -suffix-y := bin -suffix-$(CONFIG_KERNEL_GZIP) := gz -suffix-$(CONFIG_KERNEL_LZMA) := lzma - -targets += uImage targets += uImage.bin targets += uImage.gz targets += uImage.lzma @@ -42,7 +37,3 @@ $(obj)/uImage.lzma: $(obj)/vmlinux.bin.lzma FORCE $(call if_changed,uimage,lzma) - -$(obj)/uImage: $(obj)/uImage.$(suffix-y) - @ln -sf $(notdir $<) $@ - @echo ' Image $@ is ready' --- linux-azure-5.8-5.8.0.orig/arch/arc/boot/dts/axc001.dtsi +++ linux-azure-5.8-5.8.0/arch/arc/boot/dts/axc001.dtsi @@ -91,7 +91,7 @@ * avoid duplicating the MB dtsi file given that IRQ from * this intc to cpu intc are different for axs101 and axs103 */ - mb_intc: dw-apb-ictl@e0012000 { + mb_intc: interrupt-controller@e0012000 { #interrupt-cells = <1>; compatible = "snps,dw-apb-ictl"; reg = < 0x0 0xe0012000 0x0 0x200 >; --- linux-azure-5.8-5.8.0.orig/arch/arc/boot/dts/axc003.dtsi +++ linux-azure-5.8-5.8.0/arch/arc/boot/dts/axc003.dtsi @@ -129,7 +129,7 @@ * avoid duplicating the MB dtsi file given that IRQ from * this intc to cpu intc are different for axs101 and axs103 */ - mb_intc: dw-apb-ictl@e0012000 { + mb_intc: interrupt-controller@e0012000 { #interrupt-cells = <1>; compatible = "snps,dw-apb-ictl"; reg = < 0x0 0xe0012000 0x0 0x200 >; --- linux-azure-5.8-5.8.0.orig/arch/arc/boot/dts/axc003_idu.dtsi +++ linux-azure-5.8-5.8.0/arch/arc/boot/dts/axc003_idu.dtsi @@ -135,7 +135,7 @@ * avoid duplicating the MB dtsi file given that IRQ from * this intc to cpu intc are different for axs101 and axs103 */ - mb_intc: dw-apb-ictl@e0012000 { + mb_intc: interrupt-controller@e0012000 { #interrupt-cells = <1>; compatible = "snps,dw-apb-ictl"; reg = < 0x0 0xe0012000 0x0 0x200 >; --- linux-azure-5.8-5.8.0.orig/arch/arc/boot/dts/hsdk.dts +++ linux-azure-5.8-5.8.0/arch/arc/boot/dts/hsdk.dts @@ -88,6 +88,8 @@ arcpct: pct { compatible = "snps,archs-pct"; + interrupt-parent = <&cpu_intc>; + interrupts = <20>; }; /* TIMER0 with interrupt for clockevent */ @@ -208,7 +210,7 @@ reg = <0x8000 0x2000>; interrupts = <10>; interrupt-names = "macirq"; - phy-mode = "rgmii"; + phy-mode = "rgmii-id"; snps,pbl = <32>; snps,multicast-filter-bins = <256>; clocks = <&gmacclk>; @@ -226,7 +228,7 @@ #address-cells = <1>; #size-cells = <0>; compatible = "snps,dwmac-mdio"; - phy0: ethernet-phy@0 { + phy0: ethernet-phy@0 { /* Micrel KSZ9031 */ reg = <0>; }; }; --- linux-azure-5.8-5.8.0.orig/arch/arc/boot/dts/vdk_axc003.dtsi +++ linux-azure-5.8-5.8.0/arch/arc/boot/dts/vdk_axc003.dtsi @@ -46,7 +46,7 @@ }; - mb_intc: dw-apb-ictl@e0012000 { + mb_intc: interrupt-controller@e0012000 { #interrupt-cells = <1>; compatible = "snps,dw-apb-ictl"; reg = < 0xe0012000 0x200 >; --- linux-azure-5.8-5.8.0.orig/arch/arc/boot/dts/vdk_axc003_idu.dtsi +++ linux-azure-5.8-5.8.0/arch/arc/boot/dts/vdk_axc003_idu.dtsi @@ -54,7 +54,7 @@ }; - mb_intc: dw-apb-ictl@e0012000 { + mb_intc: interrupt-controller@e0012000 { #interrupt-cells = <1>; compatible = "snps,dw-apb-ictl"; reg = < 0xe0012000 0x200 >; --- linux-azure-5.8-5.8.0.orig/arch/arc/include/asm/Kbuild +++ linux-azure-5.8-5.8.0/arch/arc/include/asm/Kbuild @@ -1,7 +1,6 @@ # SPDX-License-Identifier: GPL-2.0 generic-y += extable.h generic-y += kvm_para.h -generic-y += local64.h generic-y += mcs_spinlock.h generic-y += parport.h generic-y += user.h --- linux-azure-5.8-5.8.0.orig/arch/arc/include/asm/page.h +++ linux-azure-5.8-5.8.0/arch/arc/include/asm/page.h @@ -10,6 +10,7 @@ #ifndef __ASSEMBLY__ #define clear_page(paddr) memset((paddr), 0, PAGE_SIZE) +#define copy_user_page(to, from, vaddr, pg) copy_page(to, from) #define copy_page(to, from) memcpy((to), (from), PAGE_SIZE) struct vm_area_struct; --- linux-azure-5.8-5.8.0.orig/arch/arc/include/asm/pgtable.h +++ linux-azure-5.8-5.8.0/arch/arc/include/asm/pgtable.h @@ -134,8 +134,10 @@ #ifdef CONFIG_ARC_HAS_PAE40 #define PTE_BITS_NON_RWX_IN_PD1 (0xff00000000 | PAGE_MASK | _PAGE_CACHEABLE) +#define MAX_POSSIBLE_PHYSMEM_BITS 40 #else #define PTE_BITS_NON_RWX_IN_PD1 (PAGE_MASK | _PAGE_CACHEABLE) +#define MAX_POSSIBLE_PHYSMEM_BITS 32 #endif /************************************************************************** --- linux-azure-5.8-5.8.0.orig/arch/arc/kernel/head.S +++ linux-azure-5.8-5.8.0/arch/arc/kernel/head.S @@ -67,7 +67,22 @@ sr r5, [ARC_REG_LPB_CTRL] 1: #endif /* CONFIG_ARC_LPB_DISABLE */ -#endif + + /* On HSDK, CCMs need to remapped super early */ +#ifdef CONFIG_ARC_SOC_HSDK + mov r6, 0x60000000 + lr r5, [ARC_REG_ICCM_BUILD] + breq r5, 0, 1f + sr r6, [ARC_REG_AUX_ICCM] +1: + lr r5, [ARC_REG_DCCM_BUILD] + breq r5, 0, 2f + sr r6, [ARC_REG_AUX_DCCM] +2: +#endif /* CONFIG_ARC_SOC_HSDK */ + +#endif /* CONFIG_ISA_ARCV2 */ + ; Config DSP_CTRL properly, so kernel may use integer multiply, ; multiply-accumulate, and divide operations DSP_EARLY_INIT --- linux-azure-5.8-5.8.0.orig/arch/arc/kernel/perf_event.c +++ linux-azure-5.8-5.8.0/arch/arc/kernel/perf_event.c @@ -562,7 +562,7 @@ { struct arc_reg_pct_build pct_bcr; struct arc_reg_cc_build cc_bcr; - int i, has_interrupts; + int i, has_interrupts, irq = -1; int counter_size; /* in bits */ union cc_name { @@ -638,22 +638,25 @@ }; if (has_interrupts) { - int irq = platform_get_irq(pdev, 0); - - if (irq < 0) { - pr_err("Cannot get IRQ number for the platform\n"); - return -ENODEV; + irq = platform_get_irq(pdev, 0); + if (irq >= 0) { + int ret; + + arc_pmu->irq = irq; + + /* intc map function ensures irq_set_percpu_devid() called */ + ret = request_percpu_irq(irq, arc_pmu_intr, "ARC perf counters", + this_cpu_ptr(&arc_pmu_cpu)); + + if (!ret) + on_each_cpu(arc_cpu_pmu_irq_init, &irq, 1); + else + irq = -1; } - arc_pmu->irq = irq; - - /* intc map function ensures irq_set_percpu_devid() called */ - request_percpu_irq(irq, arc_pmu_intr, "ARC perf counters", - this_cpu_ptr(&arc_pmu_cpu)); - - on_each_cpu(arc_cpu_pmu_irq_init, &irq, 1); + } - } else + if (irq == -1) arc_pmu->pmu.capabilities |= PERF_PMU_CAP_NO_INTERRUPT; /* --- linux-azure-5.8-5.8.0.orig/arch/arc/kernel/stacktrace.c +++ linux-azure-5.8-5.8.0/arch/arc/kernel/stacktrace.c @@ -38,15 +38,15 @@ #ifdef CONFIG_ARC_DW2_UNWIND -static void seed_unwind_frame_info(struct task_struct *tsk, - struct pt_regs *regs, - struct unwind_frame_info *frame_info) +static int +seed_unwind_frame_info(struct task_struct *tsk, struct pt_regs *regs, + struct unwind_frame_info *frame_info) { /* * synchronous unwinding (e.g. dump_stack) * - uses current values of SP and friends */ - if (tsk == NULL && regs == NULL) { + if (regs == NULL && (tsk == NULL || tsk == current)) { unsigned long fp, sp, blink, ret; frame_info->task = current; @@ -65,11 +65,15 @@ frame_info->call_frame = 0; } else if (regs == NULL) { /* - * Asynchronous unwinding of sleeping task - * - Gets SP etc from task's pt_regs (saved bottom of kernel - * mode stack of task) + * Asynchronous unwinding of a likely sleeping task + * - first ensure it is actually sleeping + * - if so, it will be in __switch_to, kernel mode SP of task + * is safe-kept and BLINK at a well known location in there */ + if (tsk->state == TASK_RUNNING) + return -1; + frame_info->task = tsk; frame_info->regs.r27 = TSK_K_FP(tsk); @@ -103,6 +107,8 @@ frame_info->regs.r63 = regs->ret; frame_info->call_frame = 0; } + + return 0; } #endif @@ -112,11 +118,12 @@ int (*consumer_fn) (unsigned int, void *), void *arg) { #ifdef CONFIG_ARC_DW2_UNWIND - int ret = 0; + int ret = 0, cnt = 0; unsigned int address; struct unwind_frame_info frame_info; - seed_unwind_frame_info(tsk, regs, &frame_info); + if (seed_unwind_frame_info(tsk, regs, &frame_info)) + return 0; while (1) { address = UNW_PC(&frame_info); @@ -132,6 +139,11 @@ break; frame_info.regs.r63 = frame_info.regs.r31; + + if (cnt++ > 128) { + printk("unwinder looping too long, aborting !\n"); + return 0; + } } return address; /* return the last address it saw */ --- linux-azure-5.8-5.8.0.orig/arch/arc/kernel/troubleshoot.c +++ linux-azure-5.8-5.8.0/arch/arc/kernel/troubleshoot.c @@ -18,44 +18,37 @@ #define ARC_PATH_MAX 256 -/* - * Common routine to print scratch regs (r0-r12) or callee regs (r13-r25) - * -Prints 3 regs per line and a CR. - * -To continue, callee regs right after scratch, special handling of CR - */ -static noinline void print_reg_file(long *reg_rev, int start_num) -{ - unsigned int i; - char buf[512]; - int n = 0, len = sizeof(buf); - - for (i = start_num; i < start_num + 13; i++) { - n += scnprintf(buf + n, len - n, "r%02u: 0x%08lx\t", - i, (unsigned long)*reg_rev); - - if (((i + 1) % 3) == 0) - n += scnprintf(buf + n, len - n, "\n"); - - /* because pt_regs has regs reversed: r12..r0, r25..r13 */ - if (is_isa_arcv2() && start_num == 0) - reg_rev++; - else - reg_rev--; - } - - if (start_num != 0) - n += scnprintf(buf + n, len - n, "\n\n"); - - /* To continue printing callee regs on same line as scratch regs */ - if (start_num == 0) - pr_info("%s", buf); - else - pr_cont("%s\n", buf); -} - -static void show_callee_regs(struct callee_regs *cregs) +static noinline void print_regs_scratch(struct pt_regs *regs) { - print_reg_file(&(cregs->r13), 13); + pr_cont("BTA: 0x%08lx\n SP: 0x%08lx FP: 0x%08lx BLK: %pS\n", + regs->bta, regs->sp, regs->fp, (void *)regs->blink); + pr_cont("LPS: 0x%08lx\tLPE: 0x%08lx\tLPC: 0x%08lx\n", + regs->lp_start, regs->lp_end, regs->lp_count); + + pr_info("r00: 0x%08lx\tr01: 0x%08lx\tr02: 0x%08lx\n" \ + "r03: 0x%08lx\tr04: 0x%08lx\tr05: 0x%08lx\n" \ + "r06: 0x%08lx\tr07: 0x%08lx\tr08: 0x%08lx\n" \ + "r09: 0x%08lx\tr10: 0x%08lx\tr11: 0x%08lx\n" \ + "r12: 0x%08lx\t", + regs->r0, regs->r1, regs->r2, + regs->r3, regs->r4, regs->r5, + regs->r6, regs->r7, regs->r8, + regs->r9, regs->r10, regs->r11, + regs->r12); +} + +static void print_regs_callee(struct callee_regs *regs) +{ + pr_cont("r13: 0x%08lx\tr14: 0x%08lx\n" \ + "r15: 0x%08lx\tr16: 0x%08lx\tr17: 0x%08lx\n" \ + "r18: 0x%08lx\tr19: 0x%08lx\tr20: 0x%08lx\n" \ + "r21: 0x%08lx\tr22: 0x%08lx\tr23: 0x%08lx\n" \ + "r24: 0x%08lx\tr25: 0x%08lx\n", + regs->r13, regs->r14, + regs->r15, regs->r16, regs->r17, + regs->r18, regs->r19, regs->r20, + regs->r21, regs->r22, regs->r23, + regs->r24, regs->r25); } static void print_task_path_n_nm(struct task_struct *tsk) @@ -175,7 +168,7 @@ void show_regs(struct pt_regs *regs) { struct task_struct *tsk = current; - struct callee_regs *cregs; + struct callee_regs *cregs = (struct callee_regs *)tsk->thread.callee_reg; /* * generic code calls us with preemption disabled, but some calls @@ -204,25 +197,15 @@ STS_BIT(regs, A2), STS_BIT(regs, A1), STS_BIT(regs, E2), STS_BIT(regs, E1)); #else - pr_cont(" [%2s%2s%2s%2s]", + pr_cont(" [%2s%2s%2s%2s] ", STS_BIT(regs, IE), (regs->status32 & STATUS_U_MASK) ? "U " : "K ", STS_BIT(regs, DE), STS_BIT(regs, AE)); #endif - pr_cont(" BTA: 0x%08lx\n SP: 0x%08lx FP: 0x%08lx BLK: %pS\n", - regs->bta, regs->sp, regs->fp, (void *)regs->blink); - pr_info("LPS: 0x%08lx\tLPE: 0x%08lx\tLPC: 0x%08lx\n", - regs->lp_start, regs->lp_end, regs->lp_count); - - /* print regs->r0 thru regs->r12 - * Sequential printing was generating horrible code - */ - print_reg_file(&(regs->r0), 0); - /* If Callee regs were saved, display them too */ - cregs = (struct callee_regs *)current->thread.callee_reg; + print_regs_scratch(regs); if (cregs) - show_callee_regs(cregs); + print_regs_callee(cregs); preempt_disable(); } --- linux-azure-5.8-5.8.0.orig/arch/arc/mm/init.c +++ linux-azure-5.8-5.8.0/arch/arc/mm/init.c @@ -27,8 +27,8 @@ #ifdef CONFIG_HIGHMEM static unsigned long min_high_pfn, max_high_pfn; -static u64 high_mem_start; -static u64 high_mem_sz; +static phys_addr_t high_mem_start; +static phys_addr_t high_mem_sz; #endif #ifdef CONFIG_DISCONTIGMEM @@ -70,6 +70,7 @@ high_mem_sz = size; in_use = 1; memblock_add_node(base, size, 1); + memblock_reserve(base, size); #endif } @@ -158,7 +159,7 @@ min_high_pfn = PFN_DOWN(high_mem_start); max_high_pfn = PFN_DOWN(high_mem_start + high_mem_sz); - max_zone_pfn[ZONE_HIGHMEM] = max_high_pfn; + max_zone_pfn[ZONE_HIGHMEM] = min_low_pfn; high_memory = (void *)(min_high_pfn << PAGE_SHIFT); kmap_init(); @@ -167,22 +168,26 @@ free_area_init(max_zone_pfn); } -/* - * mem_init - initializes memory - * - * Frees up bootmem - * Calculates and displays memory available/used - */ -void __init mem_init(void) +static void __init highmem_init(void) { #ifdef CONFIG_HIGHMEM unsigned long tmp; - reset_all_zones_managed_pages(); + memblock_free(high_mem_start, high_mem_sz); for (tmp = min_high_pfn; tmp < max_high_pfn; tmp++) free_highmem_page(pfn_to_page(tmp)); #endif +} +/* + * mem_init - initializes memory + * + * Frees up bootmem + * Calculates and displays memory available/used + */ +void __init mem_init(void) +{ memblock_free_all(); + highmem_init(); mem_init_print_info(NULL); } --- linux-azure-5.8-5.8.0.orig/arch/arc/plat-eznps/include/plat/ctop.h +++ linux-azure-5.8-5.8.0/arch/arc/plat-eznps/include/plat/ctop.h @@ -33,7 +33,6 @@ #define CTOP_AUX_DPC (CTOP_AUX_BASE + 0x02C) #define CTOP_AUX_LPC (CTOP_AUX_BASE + 0x030) #define CTOP_AUX_EFLAGS (CTOP_AUX_BASE + 0x080) -#define CTOP_AUX_IACK (CTOP_AUX_BASE + 0x088) #define CTOP_AUX_GPA1 (CTOP_AUX_BASE + 0x08C) #define CTOP_AUX_UDMC (CTOP_AUX_BASE + 0x300) --- linux-azure-5.8-5.8.0.orig/arch/arc/plat-hsdk/Kconfig +++ linux-azure-5.8-5.8.0/arch/arc/plat-hsdk/Kconfig @@ -8,5 +8,6 @@ select ARC_HAS_ACCL_REGS select ARC_IRQ_NO_AUTOSAVE select CLK_HSDK + select RESET_CONTROLLER select RESET_HSDK select HAVE_PCI --- linux-azure-5.8-5.8.0.orig/arch/arc/plat-hsdk/platform.c +++ linux-azure-5.8-5.8.0/arch/arc/plat-hsdk/platform.c @@ -17,22 +17,6 @@ #define ARC_CCM_UNUSED_ADDR 0x60000000 -static void __init hsdk_init_per_cpu(unsigned int cpu) -{ - /* - * By default ICCM is mapped to 0x7z while this area is used for - * kernel virtual mappings, so move it to currently unused area. - */ - if (cpuinfo_arc700[cpu].iccm.sz) - write_aux_reg(ARC_REG_AUX_ICCM, ARC_CCM_UNUSED_ADDR); - - /* - * By default DCCM is mapped to 0x8z while this area is used by kernel, - * so move it to currently unused area. - */ - if (cpuinfo_arc700[cpu].dccm.sz) - write_aux_reg(ARC_REG_AUX_DCCM, ARC_CCM_UNUSED_ADDR); -} #define ARC_PERIPHERAL_BASE 0xf0000000 #define CREG_BASE (ARC_PERIPHERAL_BASE + 0x1000) @@ -339,5 +323,4 @@ MACHINE_START(SIMULATION, "hsdk") .dt_compat = hsdk_compat, .init_early = hsdk_init_early, - .init_per_cpu = hsdk_init_per_cpu, MACHINE_END --- linux-azure-5.8-5.8.0.orig/arch/arm/Kconfig +++ linux-azure-5.8-5.8.0/arch/arm/Kconfig @@ -506,8 +506,10 @@ select HAVE_S3C2410_WATCHDOG if WATCHDOG select HAVE_S3C_RTC if RTC_CLASS select NEED_MACH_IO_H + select S3C2410_WATCHDOG select SAMSUNG_ATAGS select USE_OF + select WATCHDOG help Samsung S3C2410, S3C2412, S3C2413, S3C2416, S3C2440, S3C2442, S3C2443 and S3C2450 SoCs based systems, such as the Simtec Electronics BAST --- linux-azure-5.8-5.8.0.orig/arch/arm/boot/compressed/atags_to_fdt.c +++ linux-azure-5.8-5.8.0/arch/arm/boot/compressed/atags_to_fdt.c @@ -15,7 +15,8 @@ { int offset = fdt_path_offset(fdt, node_path); if (offset == -FDT_ERR_NOTFOUND) - offset = fdt_add_subnode(fdt, 0, node_path); + /* Add the node to root if not found, dropping the leading '/' */ + offset = fdt_add_subnode(fdt, 0, node_path + 1); return offset; } --- linux-azure-5.8-5.8.0.orig/arch/arm/boot/compressed/head.S +++ linux-azure-5.8-5.8.0/arch/arm/boot/compressed/head.S @@ -1179,9 +1179,9 @@ __armv7_mmu_cache_off: mrc p15, 0, r0, c1, c0 #ifdef CONFIG_MMU - bic r0, r0, #0x000d + bic r0, r0, #0x0005 #else - bic r0, r0, #0x000c + bic r0, r0, #0x0004 #endif mcr p15, 0, r0, c1, c0 @ turn MMU and cache off mov r0, #0 @@ -1476,6 +1476,9 @@ @ issued from HYP mode take us to the correct handler code. We @ will disable the MMU before jumping to the kernel proper. @ + ARM( bic r1, r1, #(1 << 30) ) @ clear HSCTLR.TE + THUMB( orr r1, r1, #(1 << 30) ) @ set HSCTLR.TE + mcr p15, 4, r1, c1, c0, 0 adr r0, __hyp_reentry_vectors mcr p15, 4, r0, c12, c0, 0 @ set HYP vector base (HVBAR) isb --- linux-azure-5.8-5.8.0.orig/arch/arm/boot/dts/armada-388-helios4.dts +++ linux-azure-5.8-5.8.0/arch/arm/boot/dts/armada-388-helios4.dts @@ -70,6 +70,9 @@ system-leds { compatible = "gpio-leds"; + pinctrl-names = "default"; + pinctrl-0 = <&helios_system_led_pins>; + status-led { label = "helios4:green:status"; gpios = <&gpio0 24 GPIO_ACTIVE_LOW>; @@ -86,6 +89,9 @@ io-leds { compatible = "gpio-leds"; + pinctrl-names = "default"; + pinctrl-0 = <&helios_io_led_pins>; + sata1-led { label = "helios4:green:ata1"; gpios = <&gpio1 17 GPIO_ACTIVE_LOW>; @@ -121,11 +127,15 @@ fan1: j10-pwm { compatible = "pwm-fan"; pwms = <&gpio1 9 40000>; /* Target freq:25 kHz */ + pinctrl-names = "default"; + pinctrl-0 = <&helios_fan1_pins>; }; fan2: j17-pwm { compatible = "pwm-fan"; pwms = <&gpio1 23 40000>; /* Target freq:25 kHz */ + pinctrl-names = "default"; + pinctrl-0 = <&helios_fan2_pins>; }; usb2_phy: usb2-phy { @@ -286,16 +296,22 @@ "mpp39", "mpp40"; marvell,function = "sd0"; }; - helios_led_pins: helios-led-pins { - marvell,pins = "mpp24", "mpp25", - "mpp49", "mpp50", + helios_system_led_pins: helios-system-led-pins { + marvell,pins = "mpp24", "mpp25"; + marvell,function = "gpio"; + }; + helios_io_led_pins: helios-io-led-pins { + marvell,pins = "mpp49", "mpp50", "mpp52", "mpp53", "mpp54"; marvell,function = "gpio"; }; - helios_fan_pins: helios-fan-pins { - marvell,pins = "mpp41", "mpp43", - "mpp48", "mpp55"; + helios_fan1_pins: helios_fan1_pins { + marvell,pins = "mpp41", "mpp43"; + marvell,function = "gpio"; + }; + helios_fan2_pins: helios_fan2_pins { + marvell,pins = "mpp48", "mpp55"; marvell,function = "gpio"; }; microsom_spi1_cs_pins: spi1-cs-pins { --- linux-azure-5.8-5.8.0.orig/arch/arm/boot/dts/armada-xp-98dx3236.dtsi +++ linux-azure-5.8-5.8.0/arch/arm/boot/dts/armada-xp-98dx3236.dtsi @@ -266,11 +266,6 @@ reg = <0x11000 0x100>; }; -&i2c1 { - compatible = "marvell,mv78230-i2c", "marvell,mv64xxx-i2c"; - reg = <0x11100 0x100>; -}; - &mpic { reg = <0x20a00 0x2d0>, <0x21070 0x58>; }; --- linux-azure-5.8-5.8.0.orig/arch/arm/boot/dts/aspeed-bmc-facebook-tiogapass.dts +++ linux-azure-5.8-5.8.0/arch/arm/boot/dts/aspeed-bmc-facebook-tiogapass.dts @@ -82,11 +82,6 @@ status = "okay"; }; -&vuart { - // VUART Host Console - status = "okay"; -}; - &uart1 { // Host Console status = "okay"; --- linux-azure-5.8-5.8.0.orig/arch/arm/boot/dts/aspeed-bmc-intel-s2600wf.dts +++ linux-azure-5.8-5.8.0/arch/arm/boot/dts/aspeed-bmc-intel-s2600wf.dts @@ -22,9 +22,9 @@ #size-cells = <1>; ranges; - vga_memory: framebuffer@7f000000 { + vga_memory: framebuffer@9f000000 { no-map; - reg = <0x7f000000 0x01000000>; + reg = <0x9f000000 0x01000000>; /* 16M */ }; }; --- linux-azure-5.8-5.8.0.orig/arch/arm/boot/dts/aspeed-bmc-opp-tacoma.dts +++ linux-azure-5.8-5.8.0/arch/arm/boot/dts/aspeed-bmc-opp-tacoma.dts @@ -25,7 +25,7 @@ #size-cells = <1>; ranges; - flash_memory: region@ba000000 { + flash_memory: region@b8000000 { no-map; reg = <0xb8000000 0x4000000>; /* 64M */ }; --- linux-azure-5.8-5.8.0.orig/arch/arm/boot/dts/aspeed-g4.dtsi +++ linux-azure-5.8-5.8.0/arch/arm/boot/dts/aspeed-g4.dtsi @@ -370,6 +370,7 @@ compatible = "aspeed,ast2400-lpc-snoop"; reg = <0x10 0x8>; interrupts = <8>; + clocks = <&syscon ASPEED_CLK_GATE_LCLK>; status = "disabled"; }; --- linux-azure-5.8-5.8.0.orig/arch/arm/boot/dts/aspeed-g5.dtsi +++ linux-azure-5.8-5.8.0/arch/arm/boot/dts/aspeed-g5.dtsi @@ -424,7 +424,6 @@ interrupts = <8>; clocks = <&syscon ASPEED_CLK_APB>; no-loopback-test; - aspeed,sirq-polarity-sense = <&syscon 0x70 25>; status = "disabled"; }; @@ -492,6 +491,7 @@ compatible = "aspeed,ast2500-lpc-snoop"; reg = <0x10 0x8>; interrupts = <8>; + clocks = <&syscon ASPEED_CLK_GATE_LCLK>; status = "disabled"; }; --- linux-azure-5.8-5.8.0.orig/arch/arm/boot/dts/aspeed-g6.dtsi +++ linux-azure-5.8-5.8.0/arch/arm/boot/dts/aspeed-g6.dtsi @@ -366,7 +366,7 @@ #gpio-cells = <2>; gpio-controller; compatible = "aspeed,ast2600-gpio"; - reg = <0x1e780000 0x800>; + reg = <0x1e780000 0x400>; interrupts = ; gpio-ranges = <&pinctrl 0 0 208>; ngpios = <208>; @@ -522,6 +522,7 @@ compatible = "aspeed,ast2600-lpc-snoop"; reg = <0x0 0x80>; interrupts = ; + clocks = <&syscon ASPEED_CLK_GATE_LCLK>; status = "disabled"; }; --- linux-azure-5.8-5.8.0.orig/arch/arm/boot/dts/at91-sam9x60ek.dts +++ linux-azure-5.8-5.8.0/arch/arm/boot/dts/at91-sam9x60ek.dts @@ -559,11 +559,14 @@ atmel,pins = ; }; }; -}; /* pinctrl */ -&pmc { - atmel,osc-bypass; -}; + usb1 { + pinctrl_usb_default: usb_default { + atmel,pins = ; + }; + }; +}; /* pinctrl */ &pwm0 { pinctrl-names = "default"; @@ -662,6 +665,8 @@ atmel,vbus-gpio = <0 &pioD 15 GPIO_ACTIVE_HIGH &pioD 16 GPIO_ACTIVE_HIGH>; + pinctrl-names = "default"; + pinctrl-0 = <&pinctrl_usb_default>; status = "okay"; }; --- linux-azure-5.8-5.8.0.orig/arch/arm/boot/dts/at91-sama5d3_xplained.dts +++ linux-azure-5.8-5.8.0/arch/arm/boot/dts/at91-sama5d3_xplained.dts @@ -128,7 +128,7 @@ }; macb0: ethernet@f0028000 { - phy-mode = "rgmii"; + phy-mode = "rgmii-rxid"; #address-cells = <1>; #size-cells = <0>; status = "okay"; @@ -242,6 +242,11 @@ atmel,pins = ; /* PE9, conflicts with A9 */ }; + pinctrl_usb_default: usb_default { + atmel,pins = + ; + }; }; }; }; @@ -259,6 +264,8 @@ &pioE 3 GPIO_ACTIVE_LOW &pioE 4 GPIO_ACTIVE_LOW >; + pinctrl-names = "default"; + pinctrl-0 = <&pinctrl_usb_default>; status = "okay"; }; --- linux-azure-5.8-5.8.0.orig/arch/arm/boot/dts/at91-sama5d4_xplained.dts +++ linux-azure-5.8-5.8.0/arch/arm/boot/dts/at91-sama5d4_xplained.dts @@ -134,6 +134,11 @@ atmel,pins = ; }; + pinctrl_usb_default: usb_default { + atmel,pins = + ; + }; pinctrl_key_gpio: key_gpio_0 { atmel,pins = ; @@ -159,6 +164,8 @@ &pioE 11 GPIO_ACTIVE_HIGH &pioE 14 GPIO_ACTIVE_HIGH >; + pinctrl-names = "default"; + pinctrl-0 = <&pinctrl_usb_default>; status = "okay"; }; --- linux-azure-5.8-5.8.0.orig/arch/arm/boot/dts/at91sam9rl.dtsi +++ linux-azure-5.8-5.8.0/arch/arm/boot/dts/at91sam9rl.dtsi @@ -278,23 +278,26 @@ atmel,adc-use-res = "highres"; trigger0 { - trigger-name = "timer-counter-0"; + trigger-name = "external-rising"; trigger-value = <0x1>; + trigger-external; }; + trigger1 { - trigger-name = "timer-counter-1"; - trigger-value = <0x3>; + trigger-name = "external-falling"; + trigger-value = <0x2>; + trigger-external; }; trigger2 { - trigger-name = "timer-counter-2"; - trigger-value = <0x5>; + trigger-name = "external-any"; + trigger-value = <0x3>; + trigger-external; }; trigger3 { - trigger-name = "external"; - trigger-value = <0x13>; - trigger-external; + trigger-name = "continuous"; + trigger-value = <0x6>; }; }; --- linux-azure-5.8-5.8.0.orig/arch/arm/boot/dts/bcm-hr2.dtsi +++ linux-azure-5.8-5.8.0/arch/arm/boot/dts/bcm-hr2.dtsi @@ -217,7 +217,7 @@ }; qspi: spi@27200 { - compatible = "brcm,spi-bcm-qspi", "brcm,spi-nsp-qspi"; + compatible = "brcm,spi-nsp-qspi", "brcm,spi-bcm-qspi"; reg = <0x027200 0x184>, <0x027000 0x124>, <0x11c408 0x004>, --- linux-azure-5.8-5.8.0.orig/arch/arm/boot/dts/bcm-nsp.dtsi +++ linux-azure-5.8-5.8.0/arch/arm/boot/dts/bcm-nsp.dtsi @@ -284,7 +284,7 @@ }; qspi: spi@27200 { - compatible = "brcm,spi-bcm-qspi", "brcm,spi-nsp-qspi"; + compatible = "brcm,spi-nsp-qspi", "brcm,spi-bcm-qspi"; reg = <0x027200 0x184>, <0x027000 0x124>, <0x11c408 0x004>, --- linux-azure-5.8-5.8.0.orig/arch/arm/boot/dts/bcm5301x.dtsi +++ linux-azure-5.8-5.8.0/arch/arm/boot/dts/bcm5301x.dtsi @@ -488,7 +488,7 @@ }; spi@18029200 { - compatible = "brcm,spi-bcm-qspi", "brcm,spi-nsp-qspi"; + compatible = "brcm,spi-nsp-qspi", "brcm,spi-bcm-qspi"; reg = <0x18029200 0x184>, <0x18029000 0x124>, <0x1811b408 0x004>, --- linux-azure-5.8-5.8.0.orig/arch/arm/boot/dts/dra76x.dtsi +++ linux-azure-5.8-5.8.0/arch/arm/boot/dts/dra76x.dtsi @@ -32,8 +32,8 @@ interrupts = , ; interrupt-names = "int0", "int1"; - clocks = <&mcan_clk>, <&l3_iclk_div>; - clock-names = "cclk", "hclk"; + clocks = <&l3_iclk_div>, <&mcan_clk>; + clock-names = "hclk", "cclk"; bosch,mram-cfg = <0x0 0 0 32 0 0 1 1>; }; }; --- linux-azure-5.8-5.8.0.orig/arch/arm/boot/dts/exynos3250-artik5.dtsi +++ linux-azure-5.8-5.8.0/arch/arm/boot/dts/exynos3250-artik5.dtsi @@ -75,7 +75,7 @@ s2mps14_pmic@66 { compatible = "samsung,s2mps14-pmic"; interrupt-parent = <&gpx3>; - interrupts = <5 IRQ_TYPE_NONE>; + interrupts = <5 IRQ_TYPE_LEVEL_LOW>; pinctrl-names = "default"; pinctrl-0 = <&s2mps14_irq>; reg = <0x66>; --- linux-azure-5.8-5.8.0.orig/arch/arm/boot/dts/exynos3250-monk.dts +++ linux-azure-5.8-5.8.0/arch/arm/boot/dts/exynos3250-monk.dts @@ -196,7 +196,7 @@ s2mps14_pmic@66 { compatible = "samsung,s2mps14-pmic"; interrupt-parent = <&gpx0>; - interrupts = <7 IRQ_TYPE_NONE>; + interrupts = <7 IRQ_TYPE_LEVEL_LOW>; reg = <0x66>; wakeup-source; --- linux-azure-5.8-5.8.0.orig/arch/arm/boot/dts/exynos3250-rinato.dts +++ linux-azure-5.8-5.8.0/arch/arm/boot/dts/exynos3250-rinato.dts @@ -266,7 +266,7 @@ s2mps14_pmic@66 { compatible = "samsung,s2mps14-pmic"; interrupt-parent = <&gpx0>; - interrupts = <7 IRQ_TYPE_NONE>; + interrupts = <7 IRQ_TYPE_LEVEL_LOW>; reg = <0x66>; wakeup-source; --- linux-azure-5.8-5.8.0.orig/arch/arm/boot/dts/exynos5250-spring.dts +++ linux-azure-5.8-5.8.0/arch/arm/boot/dts/exynos5250-spring.dts @@ -108,7 +108,7 @@ compatible = "samsung,s5m8767-pmic"; reg = <0x66>; interrupt-parent = <&gpx3>; - interrupts = <2 IRQ_TYPE_NONE>; + interrupts = <2 IRQ_TYPE_LEVEL_LOW>; pinctrl-names = "default"; pinctrl-0 = <&s5m8767_irq &s5m8767_dvs &s5m8767_ds>; wakeup-source; --- linux-azure-5.8-5.8.0.orig/arch/arm/boot/dts/exynos5410-odroidxu.dts +++ linux-azure-5.8-5.8.0/arch/arm/boot/dts/exynos5410-odroidxu.dts @@ -327,6 +327,8 @@ regulator-name = "vddq_lcd"; regulator-min-microvolt = <1800000>; regulator-max-microvolt = <1800000>; + /* Supplies also GPK and GPJ */ + regulator-always-on; }; ldo8_reg: LDO8 { @@ -637,11 +639,11 @@ }; &usbdrd_dwc3_0 { - dr_mode = "host"; + dr_mode = "peripheral"; }; &usbdrd_dwc3_1 { - dr_mode = "peripheral"; + dr_mode = "host"; }; &usbdrd3_0 { --- linux-azure-5.8-5.8.0.orig/arch/arm/boot/dts/exynos5410-pinctrl.dtsi +++ linux-azure-5.8-5.8.0/arch/arm/boot/dts/exynos5410-pinctrl.dtsi @@ -560,6 +560,34 @@ interrupt-controller; #interrupt-cells = <2>; }; + + usb3_1_oc: usb3-1-oc { + samsung,pins = "gpk2-4", "gpk2-5"; + samsung,pin-function = ; + samsung,pin-pud = ; + samsung,pin-drv = ; + }; + + usb3_1_vbusctrl: usb3-1-vbusctrl { + samsung,pins = "gpk2-6", "gpk2-7"; + samsung,pin-function = ; + samsung,pin-pud = ; + samsung,pin-drv = ; + }; + + usb3_0_oc: usb3-0-oc { + samsung,pins = "gpk3-0", "gpk3-1"; + samsung,pin-function = ; + samsung,pin-pud = ; + samsung,pin-drv = ; + }; + + usb3_0_vbusctrl: usb3-0-vbusctrl { + samsung,pins = "gpk3-2", "gpk3-3"; + samsung,pin-function = ; + samsung,pin-pud = ; + samsung,pin-drv = ; + }; }; &pinctrl_2 { --- linux-azure-5.8-5.8.0.orig/arch/arm/boot/dts/exynos5410.dtsi +++ linux-azure-5.8-5.8.0/arch/arm/boot/dts/exynos5410.dtsi @@ -398,6 +398,8 @@ &usbdrd3_0 { clocks = <&clock CLK_USBD300>; clock-names = "usbdrd30"; + pinctrl-names = "default"; + pinctrl-0 = <&usb3_0_oc>, <&usb3_0_vbusctrl>; }; &usbdrd_phy0 { @@ -409,6 +411,8 @@ &usbdrd3_1 { clocks = <&clock CLK_USBD301>; clock-names = "usbdrd30"; + pinctrl-names = "default"; + pinctrl-0 = <&usb3_1_oc>, <&usb3_1_vbusctrl>; }; &usbdrd_dwc3_1 { --- linux-azure-5.8-5.8.0.orig/arch/arm/boot/dts/exynos5420-arndale-octa.dts +++ linux-azure-5.8-5.8.0/arch/arm/boot/dts/exynos5420-arndale-octa.dts @@ -349,7 +349,7 @@ reg = <0x66>; interrupt-parent = <&gpx3>; - interrupts = <2 IRQ_TYPE_EDGE_FALLING>; + interrupts = <2 IRQ_TYPE_LEVEL_LOW>; pinctrl-names = "default"; pinctrl-0 = <&s2mps11_irq>; --- linux-azure-5.8-5.8.0.orig/arch/arm/boot/dts/exynos5422-odroid-core.dtsi +++ linux-azure-5.8-5.8.0/arch/arm/boot/dts/exynos5422-odroid-core.dtsi @@ -411,12 +411,6 @@ status = "okay"; }; -&bus_fsys { - operating-points-v2 = <&bus_fsys2_opp_table>; - devfreq = <&bus_wcore>; - status = "okay"; -}; - &bus_fsys2 { operating-points-v2 = <&bus_fsys2_opp_table>; devfreq = <&bus_wcore>; @@ -515,7 +509,7 @@ samsung,s2mps11-acokb-ground; interrupt-parent = <&gpx0>; - interrupts = <4 IRQ_TYPE_EDGE_FALLING>; + interrupts = <4 IRQ_TYPE_LEVEL_LOW>; pinctrl-names = "default"; pinctrl-0 = <&s2mps11_irq>; --- linux-azure-5.8-5.8.0.orig/arch/arm/boot/dts/exynos5800.dtsi +++ linux-azure-5.8-5.8.0/arch/arm/boot/dts/exynos5800.dtsi @@ -23,17 +23,17 @@ &cluster_a15_opp_table { opp-2000000000 { opp-hz = /bits/ 64 <2000000000>; - opp-microvolt = <1312500>; + opp-microvolt = <1312500 1312500 1500000>; clock-latency-ns = <140000>; }; opp-1900000000 { opp-hz = /bits/ 64 <1900000000>; - opp-microvolt = <1262500>; + opp-microvolt = <1262500 1262500 1500000>; clock-latency-ns = <140000>; }; opp-1800000000 { opp-hz = /bits/ 64 <1800000000>; - opp-microvolt = <1237500>; + opp-microvolt = <1237500 1237500 1500000>; clock-latency-ns = <140000>; }; opp-1700000000 { --- linux-azure-5.8-5.8.0.orig/arch/arm/boot/dts/imx50-evk.dts +++ linux-azure-5.8-5.8.0/arch/arm/boot/dts/imx50-evk.dts @@ -59,7 +59,7 @@ MX50_PAD_CSPI_MISO__CSPI_MISO 0x00 MX50_PAD_CSPI_MOSI__CSPI_MOSI 0x00 MX50_PAD_CSPI_SS0__GPIO4_11 0xc4 - MX50_PAD_ECSPI1_MOSI__CSPI_SS1 0xf4 + MX50_PAD_ECSPI1_MOSI__GPIO4_13 0x84 >; }; --- linux-azure-5.8-5.8.0.orig/arch/arm/boot/dts/imx6q-tbs2910.dts +++ linux-azure-5.8-5.8.0/arch/arm/boot/dts/imx6q-tbs2910.dts @@ -16,6 +16,13 @@ stdout-path = &uart1; }; + aliases { + mmc0 = &usdhc2; + mmc1 = &usdhc3; + mmc2 = &usdhc4; + /delete-property/ mmc3; + }; + memory@10000000 { device_type = "memory"; reg = <0x10000000 0x80000000>; --- linux-azure-5.8-5.8.0.orig/arch/arm/boot/dts/imx6qdl-gw52xx.dtsi +++ linux-azure-5.8-5.8.0/arch/arm/boot/dts/imx6qdl-gw52xx.dtsi @@ -273,7 +273,7 @@ /* VDD_AUD_1P8: Audio codec */ reg_aud_1p8v: ldo3 { - regulator-name = "vdd1p8"; + regulator-name = "vdd1p8a"; regulator-min-microvolt = <1800000>; regulator-max-microvolt = <1800000>; regulator-boot-on; --- linux-azure-5.8-5.8.0.orig/arch/arm/boot/dts/imx6qdl-kontron-samx6i.dtsi +++ linux-azure-5.8-5.8.0/arch/arm/boot/dts/imx6qdl-kontron-samx6i.dtsi @@ -137,7 +137,7 @@ lcd_backlight: lcd-backlight { compatible = "pwm-backlight"; - pwms = <&pwm4 0 5000000>; + pwms = <&pwm4 0 5000000 0>; pwm-names = "LCD_BKLT_PWM"; brightness-levels = <0 10 20 30 40 50 60 70 80 90 100>; @@ -167,7 +167,7 @@ i2c-gpio,delay-us = <2>; /* ~100 kHz */ #address-cells = <1>; #size-cells = <0>; - status = "disabld"; + status = "disabled"; }; i2c_cam: i2c-gpio-cam { @@ -179,7 +179,7 @@ i2c-gpio,delay-us = <2>; /* ~100 kHz */ #address-cells = <1>; #size-cells = <0>; - status = "disabld"; + status = "disabled"; }; }; @@ -551,7 +551,7 @@ pinctrl_i2c3: i2c3grp { fsl,pins = < - MX6QDL_PAD_GPIO_3__I2C3_SCL 0x4001b8b1 + MX6QDL_PAD_GPIO_5__I2C3_SCL 0x4001b8b1 MX6QDL_PAD_GPIO_16__I2C3_SDA 0x4001b8b1 >; }; --- linux-azure-5.8-5.8.0.orig/arch/arm/boot/dts/imx6qdl-sr-som.dtsi +++ linux-azure-5.8-5.8.0/arch/arm/boot/dts/imx6qdl-sr-som.dtsi @@ -53,7 +53,6 @@ &fec { pinctrl-names = "default"; pinctrl-0 = <&pinctrl_microsom_enet_ar8035>; - phy-handle = <&phy>; phy-mode = "rgmii-id"; phy-reset-duration = <2>; phy-reset-gpios = <&gpio4 15 GPIO_ACTIVE_LOW>; @@ -63,10 +62,19 @@ #address-cells = <1>; #size-cells = <0>; - phy: ethernet-phy@0 { + /* + * The PHY can appear at either address 0 or 4 due to the + * configuration (LED) pin not being pulled sufficiently. + */ + ethernet-phy@0 { reg = <0>; qca,clk-out-frequency = <125000000>; }; + + ethernet-phy@4 { + reg = <4>; + qca,clk-out-frequency = <125000000>; + }; }; }; --- linux-azure-5.8-5.8.0.orig/arch/arm/boot/dts/imx6qdl-udoo.dtsi +++ linux-azure-5.8-5.8.0/arch/arm/boot/dts/imx6qdl-udoo.dtsi @@ -98,7 +98,7 @@ &fec { pinctrl-names = "default"; pinctrl-0 = <&pinctrl_enet>; - phy-mode = "rgmii"; + phy-mode = "rgmii-id"; status = "okay"; }; --- linux-azure-5.8-5.8.0.orig/arch/arm/boot/dts/imx6qdl-wandboard-revd1.dtsi +++ linux-azure-5.8-5.8.0/arch/arm/boot/dts/imx6qdl-wandboard-revd1.dtsi @@ -166,7 +166,6 @@ MX6QDL_PAD_RGMII_RD2__RGMII_RD2 0x1b030 MX6QDL_PAD_RGMII_RD3__RGMII_RD3 0x1b030 MX6QDL_PAD_RGMII_RX_CTL__RGMII_RX_CTL 0x1b030 - MX6QDL_PAD_GPIO_6__ENET_IRQ 0x000b1 >; }; --- linux-azure-5.8-5.8.0.orig/arch/arm/boot/dts/imx6sl.dtsi +++ linux-azure-5.8-5.8.0/arch/arm/boot/dts/imx6sl.dtsi @@ -939,8 +939,10 @@ }; rngb: rngb@21b4000 { + compatible = "fsl,imx6sl-rngb", "fsl,imx25-rngb"; reg = <0x021b4000 0x4000>; interrupts = <0 5 IRQ_TYPE_LEVEL_HIGH>; + clocks = <&clks IMX6SL_CLK_DUMMY>; }; weim: weim@21b8000 { --- linux-azure-5.8-5.8.0.orig/arch/arm/boot/dts/imx6sx-pinfunc.h +++ linux-azure-5.8-5.8.0/arch/arm/boot/dts/imx6sx-pinfunc.h @@ -1026,7 +1026,7 @@ #define MX6SX_PAD_QSPI1B_DQS__SIM_M_HADDR_15 0x01B0 0x04F8 0x0000 0x7 0x0 #define MX6SX_PAD_QSPI1B_SCLK__QSPI1_B_SCLK 0x01B4 0x04FC 0x0000 0x0 0x0 #define MX6SX_PAD_QSPI1B_SCLK__UART3_DCE_RX 0x01B4 0x04FC 0x0840 0x1 0x4 -#define MX6SX_PAD_QSPI1B_SCLK__UART3_DTE_TX 0x01B4 0x04FC 0x0000 0x0 0x0 +#define MX6SX_PAD_QSPI1B_SCLK__UART3_DTE_TX 0x01B4 0x04FC 0x0000 0x1 0x0 #define MX6SX_PAD_QSPI1B_SCLK__ECSPI3_SCLK 0x01B4 0x04FC 0x0730 0x2 0x1 #define MX6SX_PAD_QSPI1B_SCLK__ESAI_RX_HF_CLK 0x01B4 0x04FC 0x0780 0x3 0x2 #define MX6SX_PAD_QSPI1B_SCLK__CSI1_DATA_16 0x01B4 0x04FC 0x06DC 0x4 0x1 --- linux-azure-5.8-5.8.0.orig/arch/arm/boot/dts/imx7d-zii-rmu2.dts +++ linux-azure-5.8-5.8.0/arch/arm/boot/dts/imx7d-zii-rmu2.dts @@ -58,7 +58,7 @@ <&clks IMX7D_ENET1_TIME_ROOT_CLK>; assigned-clock-parents = <&clks IMX7D_PLL_ENET_MAIN_100M_CLK>; assigned-clock-rates = <0>, <100000000>; - phy-mode = "rgmii"; + phy-mode = "rgmii-id"; phy-handle = <&fec1_phy>; status = "okay"; --- linux-azure-5.8-5.8.0.orig/arch/arm/boot/dts/imx7ulp.dtsi +++ linux-azure-5.8-5.8.0/arch/arm/boot/dts/imx7ulp.dtsi @@ -394,7 +394,7 @@ clocks = <&pcc2 IMX7ULP_CLK_RGPIO2P1>, <&pcc3 IMX7ULP_CLK_PCTLC>; clock-names = "gpio", "port"; - gpio-ranges = <&iomuxc1 0 0 32>; + gpio-ranges = <&iomuxc1 0 0 20>; }; gpio_ptd: gpio@40af0000 { @@ -408,7 +408,7 @@ clocks = <&pcc2 IMX7ULP_CLK_RGPIO2P1>, <&pcc3 IMX7ULP_CLK_PCTLD>; clock-names = "gpio", "port"; - gpio-ranges = <&iomuxc1 0 32 32>; + gpio-ranges = <&iomuxc1 0 32 12>; }; gpio_pte: gpio@40b00000 { @@ -422,7 +422,7 @@ clocks = <&pcc2 IMX7ULP_CLK_RGPIO2P1>, <&pcc3 IMX7ULP_CLK_PCTLE>; clock-names = "gpio", "port"; - gpio-ranges = <&iomuxc1 0 64 32>; + gpio-ranges = <&iomuxc1 0 64 16>; }; gpio_ptf: gpio@40b10000 { @@ -436,7 +436,7 @@ clocks = <&pcc2 IMX7ULP_CLK_RGPIO2P1>, <&pcc3 IMX7ULP_CLK_PCTLF>; clock-names = "gpio", "port"; - gpio-ranges = <&iomuxc1 0 96 32>; + gpio-ranges = <&iomuxc1 0 96 20>; }; }; --- linux-azure-5.8-5.8.0.orig/arch/arm/boot/dts/iwg20d-q7-common.dtsi +++ linux-azure-5.8-5.8.0/arch/arm/boot/dts/iwg20d-q7-common.dtsi @@ -57,7 +57,7 @@ lvds-receiver { compatible = "ti,ds90cf384a", "lvds-decoder"; - powerdown-gpios = <&gpio7 25 GPIO_ACTIVE_LOW>; + power-supply = <&vcc_3v3_tft1>; ports { #address-cells = <1>; @@ -81,6 +81,7 @@ panel { compatible = "edt,etm0700g0dh6"; backlight = <&lcd_backlight>; + power-supply = <&vcc_3v3_tft1>; port { panel_in: endpoint { @@ -113,6 +114,17 @@ }; }; + vcc_3v3_tft1: regulator-panel { + compatible = "regulator-fixed"; + + regulator-name = "vcc-3v3-tft1"; + regulator-min-microvolt = <3300000>; + regulator-max-microvolt = <3300000>; + enable-active-high; + startup-delay-us = <500>; + gpio = <&gpio7 25 GPIO_ACTIVE_HIGH>; + }; + vcc_sdhi1: regulator-vcc-sdhi1 { compatible = "regulator-fixed"; @@ -207,6 +219,7 @@ reg = <0x38>; interrupt-parent = <&gpio2>; interrupts = <12 IRQ_TYPE_EDGE_FALLING>; + vcc-supply = <&vcc_3v3_tft1>; }; }; --- linux-azure-5.8-5.8.0.orig/arch/arm/boot/dts/logicpd-som-lv-baseboard.dtsi +++ linux-azure-5.8-5.8.0/arch/arm/boot/dts/logicpd-som-lv-baseboard.dtsi @@ -51,6 +51,8 @@ &mcbsp2 { status = "okay"; + pinctrl-names = "default"; + pinctrl-0 = <&mcbsp2_pins>; }; &charger { @@ -102,35 +104,18 @@ regulator-max-microvolt = <3300000>; }; - lcd0: display@0 { - compatible = "panel-dpi"; - label = "28"; - status = "okay"; - /* default-on; */ + lcd0: display { + /* This isn't the exact LCD, but the timings meet spec */ + compatible = "logicpd,type28"; pinctrl-names = "default"; pinctrl-0 = <&lcd_enable_pin>; - enable-gpios = <&gpio5 27 GPIO_ACTIVE_HIGH>; /* gpio155, lcd INI */ + backlight = <&bl>; + enable-gpios = <&gpio5 27 GPIO_ACTIVE_HIGH>; port { lcd_in: endpoint { remote-endpoint = <&dpi_out>; }; }; - - panel-timing { - clock-frequency = <9000000>; - hactive = <480>; - vactive = <272>; - hfront-porch = <3>; - hback-porch = <2>; - hsync-len = <42>; - vback-porch = <3>; - vfront-porch = <2>; - vsync-len = <11>; - hsync-active = <1>; - vsync-active = <1>; - de-active = <1>; - pixelclk-active = <0>; - }; }; bl: backlight { --- linux-azure-5.8-5.8.0.orig/arch/arm/boot/dts/logicpd-torpedo-baseboard.dtsi +++ linux-azure-5.8-5.8.0/arch/arm/boot/dts/logicpd-torpedo-baseboard.dtsi @@ -81,6 +81,8 @@ }; &mcbsp2 { + pinctrl-names = "default"; + pinctrl-0 = <&mcbsp2_pins>; status = "okay"; }; --- linux-azure-5.8-5.8.0.orig/arch/arm/boot/dts/lpc32xx.dtsi +++ linux-azure-5.8-5.8.0/arch/arm/boot/dts/lpc32xx.dtsi @@ -329,9 +329,6 @@ clocks = <&xtal_32k>, <&xtal>; clock-names = "xtal_32k", "xtal"; - - assigned-clocks = <&clk LPC32XX_CLK_HCLK_PLL>; - assigned-clock-rates = <208000000>; }; }; --- linux-azure-5.8-5.8.0.orig/arch/arm/boot/dts/ls1021a.dtsi +++ linux-azure-5.8-5.8.0/arch/arm/boot/dts/ls1021a.dtsi @@ -181,7 +181,7 @@ #address-cells = <1>; #size-cells = <0>; reg = <0x0 0x1550000 0x0 0x10000>, - <0x0 0x40000000 0x0 0x40000000>; + <0x0 0x40000000 0x0 0x20000000>; reg-names = "QuadSPI", "QuadSPI-memory"; interrupts = ; clock-names = "qspi_en", "qspi"; @@ -772,7 +772,7 @@ fsl,tmr-prsc = <2>; fsl,tmr-add = <0xaaaaaaab>; fsl,tmr-fiper1 = <999999995>; - fsl,tmr-fiper2 = <99990>; + fsl,tmr-fiper2 = <999999995>; fsl,max-adj = <499999999>; fsl,extts-fifo; }; --- linux-azure-5.8-5.8.0.orig/arch/arm/boot/dts/meson8.dtsi +++ linux-azure-5.8-5.8.0/arch/arm/boot/dts/meson8.dtsi @@ -239,8 +239,6 @@ , , , - , - , , , , --- linux-azure-5.8-5.8.0.orig/arch/arm/boot/dts/meson8b-odroidc1.dts +++ linux-azure-5.8-5.8.0/arch/arm/boot/dts/meson8b-odroidc1.dts @@ -218,7 +218,7 @@ reg = <0>; reset-assert-us = <10000>; - reset-deassert-us = <30000>; + reset-deassert-us = <80000>; reset-gpios = <&gpio GPIOH_4 GPIO_ACTIVE_LOW>; interrupt-parent = <&gpio_intc>; --- linux-azure-5.8-5.8.0.orig/arch/arm/boot/dts/meson8m2-mxiii-plus.dts +++ linux-azure-5.8-5.8.0/arch/arm/boot/dts/meson8m2-mxiii-plus.dts @@ -81,7 +81,7 @@ reg = <0>; reset-assert-us = <10000>; - reset-deassert-us = <30000>; + reset-deassert-us = <80000>; reset-gpios = <&gpio GPIOH_4 GPIO_ACTIVE_LOW>; }; }; --- linux-azure-5.8-5.8.0.orig/arch/arm/boot/dts/mmp3.dtsi +++ linux-azure-5.8-5.8.0/arch/arm/boot/dts/mmp3.dtsi @@ -295,6 +295,7 @@ interrupts = ; clocks = <&soc_clocks MMP2_CLK_CCIC0>; clock-names = "axi"; + power-domains = <&soc_clocks MMP3_POWER_DOMAIN_CAMERA>; #clock-cells = <0>; clock-output-names = "mclk"; status = "disabled"; @@ -306,6 +307,7 @@ interrupts = ; clocks = <&soc_clocks MMP2_CLK_CCIC1>; clock-names = "axi"; + power-domains = <&soc_clocks MMP3_POWER_DOMAIN_CAMERA>; #clock-cells = <0>; clock-output-names = "mclk"; status = "disabled"; --- linux-azure-5.8-5.8.0.orig/arch/arm/boot/dts/mt7623n-bananapi-bpi-r2.dts +++ linux-azure-5.8-5.8.0/arch/arm/boot/dts/mt7623n-bananapi-bpi-r2.dts @@ -192,6 +192,7 @@ fixed-link { speed = <1000>; full-duplex; + pause; }; }; }; --- linux-azure-5.8-5.8.0.orig/arch/arm/boot/dts/omap3-gta04.dtsi +++ linux-azure-5.8-5.8.0/arch/arm/boot/dts/omap3-gta04.dtsi @@ -114,7 +114,7 @@ gpio-sck = <&gpio1 12 GPIO_ACTIVE_HIGH>; gpio-miso = <&gpio1 18 GPIO_ACTIVE_HIGH>; gpio-mosi = <&gpio1 20 GPIO_ACTIVE_HIGH>; - cs-gpios = <&gpio1 19 GPIO_ACTIVE_HIGH>; + cs-gpios = <&gpio1 19 GPIO_ACTIVE_LOW>; num-chipselects = <1>; /* lcd panel */ @@ -124,7 +124,6 @@ spi-max-frequency = <100000>; spi-cpol; spi-cpha; - spi-cs-high; backlight= <&backlight>; label = "lcd"; --- linux-azure-5.8-5.8.0.orig/arch/arm/boot/dts/omap4-panda-es.dts +++ linux-azure-5.8-5.8.0/arch/arm/boot/dts/omap4-panda-es.dts @@ -46,7 +46,7 @@ button_pins: pinmux_button_pins { pinctrl-single,pins = < - OMAP4_IOPAD(0x11b, PIN_INPUT_PULLUP | MUX_MODE3) /* gpio_113 */ + OMAP4_IOPAD(0x0fc, PIN_INPUT_PULLUP | MUX_MODE3) /* gpio_113 */ >; }; }; --- linux-azure-5.8-5.8.0.orig/arch/arm/boot/dts/omap4.dtsi +++ linux-azure-5.8-5.8.0/arch/arm/boot/dts/omap4.dtsi @@ -389,7 +389,7 @@ status = "disabled"; }; - target-module@56000000 { + sgx_module: target-module@56000000 { compatible = "ti,sysc-omap4", "ti,sysc"; reg = <0x5600fe00 0x4>, <0x5600fe10 0x4>; --- linux-azure-5.8-5.8.0.orig/arch/arm/boot/dts/omap443x.dtsi +++ linux-azure-5.8-5.8.0/arch/arm/boot/dts/omap443x.dtsi @@ -33,10 +33,12 @@ }; ocp { + /* 4430 has only gpio_86 tshut and no talert interrupt */ bandgap: bandgap@4a002260 { reg = <0x4a002260 0x4 0x4a00232C 0x4>; compatible = "ti,omap4430-bandgap"; + gpios = <&gpio3 22 GPIO_ACTIVE_HIGH>; #thermal-sensor-cells = <0>; }; @@ -74,3 +76,13 @@ }; /include/ "omap443x-clocks.dtsi" + +/* + * Use dpll_per for sgx at 153.6MHz like droid4 stock v3.0.8 Android kernel + */ +&sgx_module { + assigned-clocks = <&l3_gfx_clkctrl OMAP4_GPU_CLKCTRL 24>, + <&dpll_per_m7x2_ck>; + assigned-clock-rates = <0>, <153600000>; + assigned-clock-parents = <&dpll_per_m7x2_ck>; +}; --- linux-azure-5.8-5.8.0.orig/arch/arm/boot/dts/omap5.dtsi +++ linux-azure-5.8-5.8.0/arch/arm/boot/dts/omap5.dtsi @@ -463,11 +463,11 @@ }; }; - target-module@5000 { + target-module@4000 { compatible = "ti,sysc-omap2", "ti,sysc"; - reg = <0x5000 0x4>, - <0x5010 0x4>, - <0x5014 0x4>; + reg = <0x4000 0x4>, + <0x4010 0x4>, + <0x4014 0x4>; reg-names = "rev", "sysc", "syss"; ti,sysc-sidle = , , @@ -479,7 +479,7 @@ ti,syss-mask = <1>; #address-cells = <1>; #size-cells = <1>; - ranges = <0 0x5000 0x1000>; + ranges = <0 0x4000 0x1000>; dsi1: encoder@0 { compatible = "ti,omap5-dsi"; @@ -489,8 +489,9 @@ reg-names = "proto", "phy", "pll"; interrupts = ; status = "disabled"; - clocks = <&dss_clkctrl OMAP5_DSS_CORE_CLKCTRL 8>; - clock-names = "fck"; + clocks = <&dss_clkctrl OMAP5_DSS_CORE_CLKCTRL 8>, + <&dss_clkctrl OMAP5_DSS_CORE_CLKCTRL 10>; + clock-names = "fck", "sys_clk"; }; }; @@ -520,8 +521,9 @@ reg-names = "proto", "phy", "pll"; interrupts = ; status = "disabled"; - clocks = <&dss_clkctrl OMAP5_DSS_CORE_CLKCTRL 8>; - clock-names = "fck"; + clocks = <&dss_clkctrl OMAP5_DSS_CORE_CLKCTRL 8>, + <&dss_clkctrl OMAP5_DSS_CORE_CLKCTRL 10>; + clock-names = "fck", "sys_clk"; }; }; --- linux-azure-5.8-5.8.0.orig/arch/arm/boot/dts/owl-s500.dtsi +++ linux-azure-5.8-5.8.0/arch/arm/boot/dts/owl-s500.dtsi @@ -84,21 +84,21 @@ global_timer: timer@b0020200 { compatible = "arm,cortex-a9-global-timer"; reg = <0xb0020200 0x100>; - interrupts = ; + interrupts = ; status = "disabled"; }; twd_timer: timer@b0020600 { compatible = "arm,cortex-a9-twd-timer"; reg = <0xb0020600 0x20>; - interrupts = ; + interrupts = ; status = "disabled"; }; twd_wdt: wdt@b0020620 { compatible = "arm,cortex-a9-twd-wdt"; reg = <0xb0020620 0xe0>; - interrupts = ; + interrupts = ; status = "disabled"; }; --- linux-azure-5.8-5.8.0.orig/arch/arm/boot/dts/picoxcell-pc3x2.dtsi +++ linux-azure-5.8-5.8.0/arch/arm/boot/dts/picoxcell-pc3x2.dtsi @@ -45,18 +45,21 @@ emac: gem@30000 { compatible = "cadence,gem"; reg = <0x30000 0x10000>; + interrupt-parent = <&vic0>; interrupts = <31>; }; dmac1: dmac@40000 { compatible = "snps,dw-dmac"; reg = <0x40000 0x10000>; + interrupt-parent = <&vic0>; interrupts = <25>; }; dmac2: dmac@50000 { compatible = "snps,dw-dmac"; reg = <0x50000 0x10000>; + interrupt-parent = <&vic0>; interrupts = <26>; }; @@ -234,6 +237,7 @@ axi2pico@c0000000 { compatible = "picochip,axi2pico-pc3x2"; reg = <0xc0000000 0x10000>; + interrupt-parent = <&vic0>; interrupts = <13 14 15 16 17 18 19 20 21>; }; }; --- linux-azure-5.8-5.8.0.orig/arch/arm/boot/dts/r8a7793-gose.dts +++ linux-azure-5.8-5.8.0/arch/arm/boot/dts/r8a7793-gose.dts @@ -336,7 +336,7 @@ reg = <0x20>; remote = <&vin1>; - port { + ports { #address-cells = <1>; #size-cells = <0>; @@ -394,7 +394,7 @@ interrupts = <2 IRQ_TYPE_LEVEL_LOW>; default-input = <0>; - port { + ports { #address-cells = <1>; #size-cells = <0>; --- linux-azure-5.8-5.8.0.orig/arch/arm/boot/dts/s5pv210-aries.dtsi +++ linux-azure-5.8-5.8.0/arch/arm/boot/dts/s5pv210-aries.dtsi @@ -47,6 +47,18 @@ }; }; + pmic_ap_clk: clock-0 { + /* Workaround for missing clock on PMIC */ + compatible = "fixed-clock"; + #clock-cells = <0>; + clock-frequency = <32768>; + }; + + bt_codec: bt_sco { + compatible = "linux,bt-sco"; + #sound-dai-cells = <0>; + }; + vibrator_pwr: regulator-fixed-0 { compatible = "regulator-fixed"; regulator-name = "vibrator-en"; @@ -54,7 +66,7 @@ gpio = <&gpj1 1 GPIO_ACTIVE_HIGH>; pinctrl-names = "default"; - pinctr-0 = <&vibrator_ena>; + pinctrl-0 = <&vibrator_ena>; }; touchkey_vdd: regulator-fixed-1 { @@ -507,7 +519,7 @@ value = <0x5200>; }; - spi_lcd: spi-gpio-0 { + spi_lcd: spi-2 { compatible = "spi-gpio"; #address-cells = <1>; #size-cells = <0>; @@ -590,6 +602,11 @@ }; }; +&i2s0 { + dmas = <&pdma0 9>, <&pdma0 10>, <&pdma0 11>; + status = "okay"; +}; + &mfc { memory-region = <&mfc_left>, <&mfc_right>; }; @@ -754,6 +771,11 @@ samsung,pwm-outputs = <1>; }; +&rtc { + clocks = <&clocks CLK_RTC>, <&pmic_ap_clk>; + clock-names = "rtc", "rtc_src"; +}; + &sdhci1 { #address-cells = <1>; #size-cells = <0>; --- linux-azure-5.8-5.8.0.orig/arch/arm/boot/dts/s5pv210-fascinate4g.dts +++ linux-azure-5.8-5.8.0/arch/arm/boot/dts/s5pv210-fascinate4g.dts @@ -35,12 +35,110 @@ linux,code = ; }; }; + + headset_micbias_reg: regulator-fixed-3 { + compatible = "regulator-fixed"; + regulator-name = "Headset_Micbias"; + gpio = <&gpj2 5 GPIO_ACTIVE_HIGH>; + enable-active-high; + + pinctrl-names = "default"; + pinctrl-0 = <&headset_micbias_ena>; + }; + + main_micbias_reg: regulator-fixed-4 { + compatible = "regulator-fixed"; + regulator-name = "Main_Micbias"; + gpio = <&gpj4 2 GPIO_ACTIVE_HIGH>; + enable-active-high; + + pinctrl-names = "default"; + pinctrl-0 = <&main_micbias_ena>; + }; + + sound { + compatible = "samsung,fascinate4g-wm8994"; + + model = "Fascinate4G"; + + extcon = <&fsa9480>; + + main-micbias-supply = <&main_micbias_reg>; + headset-micbias-supply = <&headset_micbias_reg>; + + earpath-sel-gpios = <&gpj2 6 GPIO_ACTIVE_HIGH>; + + io-channels = <&adc 3>; + io-channel-names = "headset-detect"; + headset-detect-gpios = <&gph0 6 GPIO_ACTIVE_HIGH>; + headset-key-gpios = <&gph3 6 GPIO_ACTIVE_HIGH>; + + samsung,audio-routing = + "HP", "HPOUT1L", + "HP", "HPOUT1R", + + "SPK", "SPKOUTLN", + "SPK", "SPKOUTLP", + + "RCV", "HPOUT2N", + "RCV", "HPOUT2P", + + "LINE", "LINEOUT2N", + "LINE", "LINEOUT2P", + + "IN1LP", "Main Mic", + "IN1LN", "Main Mic", + + "IN1RP", "Headset Mic", + "IN1RN", "Headset Mic", + + "Modem Out", "Modem TX", + "Modem RX", "Modem In", + + "Bluetooth SPK", "TX", + "RX", "Bluetooth Mic"; + + pinctrl-names = "default"; + pinctrl-0 = <&headset_det &earpath_sel>; + + cpu { + sound-dai = <&i2s0>, <&bt_codec>; + }; + + codec { + sound-dai = <&wm8994>; + }; + }; }; &pinctrl0 { pinctrl-names = "default"; pinctrl-0 = <&sleep_cfg>; + headset_det: headset-det { + samsung,pins = "gph0-6", "gph3-6"; + samsung,pin-function = ; + samsung,pin-pud = ; + }; + + headset_micbias_ena: headset-micbias-ena { + samsung,pins = "gpj2-5"; + samsung,pin-pud = ; + samsung,pin-drv = ; + }; + + earpath_sel: earpath-sel { + samsung,pins = "gpj2-6"; + samsung,pin-pud = ; + samsung,pin-drv = ; + }; + + main_micbias_ena: main-micbias-ena { + samsung,pins = "gpj4-2"; + samsung,pin-pud = ; + samsung,pin-drv = ; + }; + /* Based on vendor kernel v2.6.35.7 */ sleep_cfg: sleep-cfg { PIN_SLP(gpa0-0, PREV, NONE); --- linux-azure-5.8-5.8.0.orig/arch/arm/boot/dts/s5pv210-galaxys.dts +++ linux-azure-5.8-5.8.0/arch/arm/boot/dts/s5pv210-galaxys.dts @@ -72,6 +72,73 @@ pinctrl-0 = <&fm_irq &fm_rst>; }; }; + + micbias_reg: regulator-fixed-3 { + compatible = "regulator-fixed"; + regulator-name = "MICBIAS"; + gpio = <&gpj4 2 GPIO_ACTIVE_HIGH>; + enable-active-high; + + pinctrl-names = "default"; + pinctrl-0 = <&micbias_reg_ena>; + }; + + sound { + compatible = "samsung,aries-wm8994"; + + model = "Aries"; + + extcon = <&fsa9480>; + + main-micbias-supply = <&micbias_reg>; + headset-micbias-supply = <&micbias_reg>; + + earpath-sel-gpios = <&gpj2 6 GPIO_ACTIVE_HIGH>; + + io-channels = <&adc 3>; + io-channel-names = "headset-detect"; + headset-detect-gpios = <&gph0 6 GPIO_ACTIVE_LOW>; + headset-key-gpios = <&gph3 6 GPIO_ACTIVE_HIGH>; + + samsung,audio-routing = + "HP", "HPOUT1L", + "HP", "HPOUT1R", + + "SPK", "SPKOUTLN", + "SPK", "SPKOUTLP", + + "RCV", "HPOUT2N", + "RCV", "HPOUT2P", + + "LINE", "LINEOUT2N", + "LINE", "LINEOUT2P", + + "IN1LP", "Main Mic", + "IN1LN", "Main Mic", + + "IN1RP", "Headset Mic", + "IN1RN", "Headset Mic", + + "IN2LN", "FM In", + "IN2RN", "FM In", + + "Modem Out", "Modem TX", + "Modem RX", "Modem In", + + "Bluetooth SPK", "TX", + "RX", "Bluetooth Mic"; + + pinctrl-names = "default"; + pinctrl-0 = <&headset_det &earpath_sel>; + + cpu { + sound-dai = <&i2s0>, <&bt_codec>; + }; + + codec { + sound-dai = <&wm8994>; + }; + }; }; &aliases { @@ -88,6 +155,12 @@ samsung,pin-drv = ; }; + headset_det: headset-det { + samsung,pins = "gph0-6", "gph3-6"; + samsung,pin-function = ; + samsung,pin-pud = ; + }; + fm_irq: fm-irq { samsung,pins = "gpj2-4"; samsung,pin-function = ; @@ -102,12 +175,24 @@ samsung,pin-drv = ; }; + earpath_sel: earpath-sel { + samsung,pins = "gpj2-6"; + samsung,pin-pud = ; + samsung,pin-drv = ; + }; + massmemory_en: massmemory-en { samsung,pins = "gpj2-7"; samsung,pin-function = ; samsung,pin-pud = ; samsung,pin-drv = ; }; + + micbias_reg_ena: micbias-reg-ena { + samsung,pins = "gpj4-2"; + samsung,pin-pud = ; + samsung,pin-drv = ; + }; /* Based on CyanogenMod 3.0.101 kernel */ sleep_cfg: sleep-cfg { --- linux-azure-5.8-5.8.0.orig/arch/arm/boot/dts/s5pv210.dtsi +++ linux-azure-5.8-5.8.0/arch/arm/boot/dts/s5pv210.dtsi @@ -52,34 +52,26 @@ }; }; + xxti: oscillator-0 { + compatible = "fixed-clock"; + clock-frequency = <0>; + clock-output-names = "xxti"; + #clock-cells = <0>; + }; + + xusbxti: oscillator-1 { + compatible = "fixed-clock"; + clock-frequency = <0>; + clock-output-names = "xusbxti"; + #clock-cells = <0>; + }; + soc { compatible = "simple-bus"; #address-cells = <1>; #size-cells = <1>; ranges; - external-clocks { - compatible = "simple-bus"; - #address-cells = <1>; - #size-cells = <0>; - - xxti: oscillator@0 { - compatible = "fixed-clock"; - reg = <0>; - clock-frequency = <0>; - clock-output-names = "xxti"; - #clock-cells = <0>; - }; - - xusbxti: oscillator@1 { - compatible = "fixed-clock"; - reg = <1>; - clock-frequency = <0>; - clock-output-names = "xusbxti"; - #clock-cells = <0>; - }; - }; - onenand: onenand@b0600000 { compatible = "samsung,s5pv210-onenand"; reg = <0xb0600000 0x2000>, @@ -100,19 +92,16 @@ }; clocks: clock-controller@e0100000 { - compatible = "samsung,s5pv210-clock", "simple-bus"; + compatible = "samsung,s5pv210-clock"; reg = <0xe0100000 0x10000>; clock-names = "xxti", "xusbxti"; clocks = <&xxti>, <&xusbxti>; #clock-cells = <1>; - #address-cells = <1>; - #size-cells = <1>; - ranges; + }; - pmu_syscon: syscon@e0108000 { - compatible = "samsung-s5pv210-pmu", "syscon"; - reg = <0xe0108000 0x8000>; - }; + pmu_syscon: syscon@e0108000 { + compatible = "samsung-s5pv210-pmu", "syscon"; + reg = <0xe0108000 0x8000>; }; pinctrl0: pinctrl@e0200000 { @@ -128,35 +117,28 @@ }; }; - amba { - #address-cells = <1>; - #size-cells = <1>; - compatible = "simple-bus"; - ranges; - - pdma0: dma@e0900000 { - compatible = "arm,pl330", "arm,primecell"; - reg = <0xe0900000 0x1000>; - interrupt-parent = <&vic0>; - interrupts = <19>; - clocks = <&clocks CLK_PDMA0>; - clock-names = "apb_pclk"; - #dma-cells = <1>; - #dma-channels = <8>; - #dma-requests = <32>; - }; + pdma0: dma@e0900000 { + compatible = "arm,pl330", "arm,primecell"; + reg = <0xe0900000 0x1000>; + interrupt-parent = <&vic0>; + interrupts = <19>; + clocks = <&clocks CLK_PDMA0>; + clock-names = "apb_pclk"; + #dma-cells = <1>; + #dma-channels = <8>; + #dma-requests = <32>; + }; - pdma1: dma@e0a00000 { - compatible = "arm,pl330", "arm,primecell"; - reg = <0xe0a00000 0x1000>; - interrupt-parent = <&vic0>; - interrupts = <20>; - clocks = <&clocks CLK_PDMA1>; - clock-names = "apb_pclk"; - #dma-cells = <1>; - #dma-channels = <8>; - #dma-requests = <32>; - }; + pdma1: dma@e0a00000 { + compatible = "arm,pl330", "arm,primecell"; + reg = <0xe0a00000 0x1000>; + interrupt-parent = <&vic0>; + interrupts = <20>; + clocks = <&clocks CLK_PDMA1>; + clock-names = "apb_pclk"; + #dma-cells = <1>; + #dma-channels = <8>; + #dma-requests = <32>; }; adc: adc@e1700000 { @@ -241,43 +223,36 @@ status = "disabled"; }; - audio-subsystem { - compatible = "samsung,s5pv210-audss", "simple-bus"; - #address-cells = <1>; - #size-cells = <1>; - ranges; - - clk_audss: clock-controller@eee10000 { - compatible = "samsung,s5pv210-audss-clock"; - reg = <0xeee10000 0x1000>; - clock-names = "hclk", "xxti", - "fout_epll", - "sclk_audio0"; - clocks = <&clocks DOUT_HCLKP>, <&xxti>, - <&clocks FOUT_EPLL>, - <&clocks SCLK_AUDIO0>; - #clock-cells = <1>; - }; + clk_audss: clock-controller@eee10000 { + compatible = "samsung,s5pv210-audss-clock"; + reg = <0xeee10000 0x1000>; + clock-names = "hclk", "xxti", + "fout_epll", + "sclk_audio0"; + clocks = <&clocks DOUT_HCLKP>, <&xxti>, + <&clocks FOUT_EPLL>, + <&clocks SCLK_AUDIO0>; + #clock-cells = <1>; + }; - i2s0: i2s@eee30000 { - compatible = "samsung,s5pv210-i2s"; - reg = <0xeee30000 0x1000>; - interrupt-parent = <&vic2>; - interrupts = <16>; - dma-names = "rx", "tx", "tx-sec"; - dmas = <&pdma1 9>, <&pdma1 10>, <&pdma1 11>; - clock-names = "iis", - "i2s_opclk0", - "i2s_opclk1"; - clocks = <&clk_audss CLK_I2S>, - <&clk_audss CLK_I2S>, - <&clk_audss CLK_DOUT_AUD_BUS>; - samsung,idma-addr = <0xc0010000>; - pinctrl-names = "default"; - pinctrl-0 = <&i2s0_bus>; - #sound-dai-cells = <0>; - status = "disabled"; - }; + i2s0: i2s@eee30000 { + compatible = "samsung,s5pv210-i2s"; + reg = <0xeee30000 0x1000>; + interrupt-parent = <&vic2>; + interrupts = <16>; + dma-names = "rx", "tx", "tx-sec"; + dmas = <&pdma1 9>, <&pdma1 10>, <&pdma1 11>; + clock-names = "iis", + "i2s_opclk0", + "i2s_opclk1"; + clocks = <&clk_audss CLK_I2S>, + <&clk_audss CLK_I2S>, + <&clk_audss CLK_DOUT_AUD_BUS>; + samsung,idma-addr = <0xc0010000>; + pinctrl-names = "default"; + pinctrl-0 = <&i2s0_bus>; + #sound-dai-cells = <0>; + status = "disabled"; }; i2s1: i2s@e2100000 { --- linux-azure-5.8-5.8.0.orig/arch/arm/boot/dts/sama5d2.dtsi +++ linux-azure-5.8-5.8.0/arch/arm/boot/dts/sama5d2.dtsi @@ -645,6 +645,7 @@ clocks = <&pmc PMC_TYPE_PERIPHERAL 51>; #address-cells = <1>; #size-cells = <1>; + no-memory-wc; ranges = <0 0xf8044000 0x1420>; }; @@ -713,7 +714,7 @@ can0: can@f8054000 { compatible = "bosch,m_can"; - reg = <0xf8054000 0x4000>, <0x210000 0x4000>; + reg = <0xf8054000 0x4000>, <0x210000 0x1c00>; reg-names = "m_can", "message_ram"; interrupts = <56 IRQ_TYPE_LEVEL_HIGH 7>, <64 IRQ_TYPE_LEVEL_HIGH 7>; @@ -1113,7 +1114,7 @@ can1: can@fc050000 { compatible = "bosch,m_can"; - reg = <0xfc050000 0x4000>, <0x210000 0x4000>; + reg = <0xfc050000 0x4000>, <0x210000 0x3800>; reg-names = "m_can", "message_ram"; interrupts = <57 IRQ_TYPE_LEVEL_HIGH 7>, <65 IRQ_TYPE_LEVEL_HIGH 7>; @@ -1123,7 +1124,7 @@ assigned-clocks = <&pmc PMC_TYPE_GCK 57>; assigned-clock-parents = <&pmc PMC_TYPE_CORE PMC_UTMI>; assigned-clock-rates = <40000000>; - bosch,mram-cfg = <0x1100 0 0 64 0 0 32 32>; + bosch,mram-cfg = <0x1c00 0 0 64 0 0 32 32>; status = "disabled"; }; --- linux-azure-5.8-5.8.0.orig/arch/arm/boot/dts/socfpga_arria10.dtsi +++ linux-azure-5.8-5.8.0/arch/arm/boot/dts/socfpga_arria10.dtsi @@ -819,7 +819,7 @@ timer3: timer3@ffd00100 { compatible = "snps,dw-apb-timer"; interrupts = <0 118 IRQ_TYPE_LEVEL_HIGH>; - reg = <0xffd01000 0x100>; + reg = <0xffd00100 0x100>; clocks = <&l4_sys_free_clk>; clock-names = "timer"; resets = <&rst L4SYSTIMER1_RESET>; --- linux-azure-5.8-5.8.0.orig/arch/arm/boot/dts/ste-db8500.dtsi +++ linux-azure-5.8-5.8.0/arch/arm/boot/dts/ste-db8500.dtsi @@ -12,4 +12,42 @@ 200000 0>; }; }; + + reserved-memory { + #address-cells = <1>; + #size-cells = <1>; + ranges; + + /* Modem trace memory */ + ram@06000000 { + reg = <0x06000000 0x00f00000>; + no-map; + }; + + /* Modem shared memory */ + ram@06f00000 { + reg = <0x06f00000 0x00100000>; + no-map; + }; + + /* Modem private memory */ + ram@07000000 { + reg = <0x07000000 0x01000000>; + no-map; + }; + + /* + * Initial Secure Software ISSW memory + * + * This is probably only used if the kernel tries + * to actually call into trustzone to run secure + * applications, which the mainline kernel probably + * will not do on this old chipset. But you can never + * be too careful, so reserve this memory anyway. + */ + ram@17f00000 { + reg = <0x17f00000 0x00100000>; + no-map; + }; + }; }; --- linux-azure-5.8-5.8.0.orig/arch/arm/boot/dts/ste-db8520.dtsi +++ linux-azure-5.8-5.8.0/arch/arm/boot/dts/ste-db8520.dtsi @@ -12,4 +12,42 @@ 200000 0>; }; }; + + reserved-memory { + #address-cells = <1>; + #size-cells = <1>; + ranges; + + /* Modem trace memory */ + ram@06000000 { + reg = <0x06000000 0x00f00000>; + no-map; + }; + + /* Modem shared memory */ + ram@06f00000 { + reg = <0x06f00000 0x00100000>; + no-map; + }; + + /* Modem private memory */ + ram@07000000 { + reg = <0x07000000 0x01000000>; + no-map; + }; + + /* + * Initial Secure Software ISSW memory + * + * This is probably only used if the kernel tries + * to actually call into trustzone to run secure + * applications, which the mainline kernel probably + * will not do on this old chipset. But you can never + * be too careful, so reserve this memory anyway. + */ + ram@17f00000 { + reg = <0x17f00000 0x00100000>; + no-map; + }; + }; }; --- linux-azure-5.8-5.8.0.orig/arch/arm/boot/dts/ste-db9500.dtsi +++ linux-azure-5.8-5.8.0/arch/arm/boot/dts/ste-db9500.dtsi @@ -0,0 +1,35 @@ +// SPDX-License-Identifier: GPL-2.0-or-later + +#include "ste-dbx5x0.dtsi" + +/ { + cpus { + cpu@300 { + /* cpufreq controls */ + operating-points = <1152000 0 + 800000 0 + 400000 0 + 200000 0>; + }; + }; + + reserved-memory { + #address-cells = <1>; + #size-cells = <1>; + ranges; + + /* + * Initial Secure Software ISSW memory + * + * This is probably only used if the kernel tries + * to actually call into trustzone to run secure + * applications, which the mainline kernel probably + * will not do on this old chipset. But you can never + * be too careful, so reserve this memory anyway. + */ + ram@17f00000 { + reg = <0x17f00000 0x00100000>; + no-map; + }; + }; +}; --- linux-azure-5.8-5.8.0.orig/arch/arm/boot/dts/ste-snowball.dts +++ linux-azure-5.8-5.8.0/arch/arm/boot/dts/ste-snowball.dts @@ -4,7 +4,7 @@ */ /dts-v1/; -#include "ste-db8500.dtsi" +#include "ste-db9500.dtsi" #include "ste-href-ab8500.dtsi" #include "ste-href-family-pinctrl.dtsi" --- linux-azure-5.8-5.8.0.orig/arch/arm/boot/dts/stm32mp15-pinctrl.dtsi +++ linux-azure-5.8-5.8.0/arch/arm/boot/dts/stm32mp15-pinctrl.dtsi @@ -1574,143 +1574,157 @@ }; }; - usart2_pins_a: usart2-0 { + uart4_pins_a: uart4-0 { pins1 { - pinmux = , /* USART2_TX */ - ; /* USART2_RTS */ + pinmux = ; /* UART4_TX */ bias-disable; drive-push-pull; slew-rate = <0>; }; pins2 { - pinmux = , /* USART2_RX */ - ; /* USART2_CTS_NSS */ + pinmux = ; /* UART4_RX */ bias-disable; }; }; - usart2_sleep_pins_a: usart2-sleep-0 { - pins { - pinmux = , /* USART2_TX */ - , /* USART2_RTS */ - , /* USART2_RX */ - ; /* USART2_CTS_NSS */ - }; - }; - - usart2_pins_b: usart2-1 { + uart4_pins_b: uart4-1 { pins1 { - pinmux = , /* USART2_TX */ - ; /* USART2_RTS */ + pinmux = ; /* UART4_TX */ bias-disable; drive-push-pull; slew-rate = <0>; }; pins2 { - pinmux = , /* USART2_RX */ - ; /* USART2_CTS_NSS */ + pinmux = ; /* UART4_RX */ bias-disable; }; }; - usart2_sleep_pins_b: usart2-sleep-1 { - pins { - pinmux = , /* USART2_TX */ - , /* USART2_RTS */ - , /* USART2_RX */ - ; /* USART2_CTS_NSS */ + uart4_pins_c: uart4-2 { + pins1 { + pinmux = ; /* UART4_TX */ + bias-disable; + drive-push-pull; + slew-rate = <0>; + }; + pins2 { + pinmux = ; /* UART4_RX */ + bias-disable; }; }; - usart3_pins_a: usart3-0 { + uart7_pins_a: uart7-0 { pins1 { - pinmux = ; /* USART3_TX */ + pinmux = ; /* UART7_TX */ bias-disable; drive-push-pull; slew-rate = <0>; }; pins2 { - pinmux = ; /* USART3_RX */ + pinmux = , /* UART7_RX */ + , /* UART7_CTS */ + ; /* UART7_RTS */ bias-disable; }; }; - uart4_pins_a: uart4-0 { + uart7_pins_b: uart7-1 { pins1 { - pinmux = ; /* UART4_TX */ + pinmux = ; /* UART7_TX */ bias-disable; drive-push-pull; slew-rate = <0>; }; pins2 { - pinmux = ; /* UART4_RX */ + pinmux = ; /* UART7_RX */ bias-disable; }; }; - uart4_pins_b: uart4-1 { + uart8_pins_a: uart8-0 { pins1 { - pinmux = ; /* UART4_TX */ + pinmux = ; /* UART8_TX */ bias-disable; drive-push-pull; slew-rate = <0>; }; pins2 { - pinmux = ; /* UART4_RX */ + pinmux = ; /* UART8_RX */ bias-disable; }; }; - uart4_pins_c: uart4-2 { - pins1 { - pinmux = ; /* UART4_TX */ + spi4_pins_a: spi4-0 { + pins { + pinmux = , /* SPI4_SCK */ + ; /* SPI4_MOSI */ bias-disable; drive-push-pull; - slew-rate = <0>; + slew-rate = <1>; }; pins2 { - pinmux = ; /* UART4_RX */ + pinmux = ; /* SPI4_MISO */ bias-disable; }; }; - uart7_pins_a: uart7-0 { + usart2_pins_a: usart2-0 { pins1 { - pinmux = ; /* UART4_TX */ + pinmux = , /* USART2_TX */ + ; /* USART2_RTS */ bias-disable; drive-push-pull; slew-rate = <0>; }; pins2 { - pinmux = , /* UART4_RX */ - , /* UART4_CTS */ - ; /* UART4_RTS */ + pinmux = , /* USART2_RX */ + ; /* USART2_CTS_NSS */ bias-disable; }; }; - uart7_pins_b: uart7-1 { + usart2_sleep_pins_a: usart2-sleep-0 { + pins { + pinmux = , /* USART2_TX */ + , /* USART2_RTS */ + , /* USART2_RX */ + ; /* USART2_CTS_NSS */ + }; + }; + + usart2_pins_b: usart2-1 { pins1 { - pinmux = ; /* UART7_TX */ + pinmux = , /* USART2_TX */ + ; /* USART2_RTS */ bias-disable; drive-push-pull; slew-rate = <0>; }; pins2 { - pinmux = ; /* UART7_RX */ + pinmux = , /* USART2_RX */ + ; /* USART2_CTS_NSS */ bias-disable; }; }; - uart8_pins_a: uart8-0 { + usart2_sleep_pins_b: usart2-sleep-1 { + pins { + pinmux = , /* USART2_TX */ + , /* USART2_RTS */ + , /* USART2_RX */ + ; /* USART2_CTS_NSS */ + }; + }; + + usart3_pins_a: usart3-0 { pins1 { - pinmux = ; /* UART8_TX */ + pinmux = ; /* USART3_TX */ bias-disable; drive-push-pull; slew-rate = <0>; }; pins2 { - pinmux = ; /* UART8_RX */ + pinmux = ; /* USART3_RX */ bias-disable; }; }; @@ -1776,18 +1790,4 @@ bias-disable; }; }; - - spi4_pins_a: spi4-0 { - pins { - pinmux = , /* SPI4_SCK */ - ; /* SPI4_MOSI */ - bias-disable; - drive-push-pull; - slew-rate = <1>; - }; - pins2 { - pinmux = ; /* SPI4_MISO */ - bias-disable; - }; - }; }; --- linux-azure-5.8-5.8.0.orig/arch/arm/boot/dts/stm32mp157c-lxa-mc1.dts +++ linux-azure-5.8-5.8.0/arch/arm/boot/dts/stm32mp157c-lxa-mc1.dts @@ -121,8 +121,6 @@ reset-gpios = <&gpiog 0 GPIO_ACTIVE_LOW>; /* ETH_RST# */ interrupt-parent = <&gpioa>; interrupts = <6 IRQ_TYPE_EDGE_FALLING>; /* ETH_MDINT# */ - rxc-skew-ps = <1860>; - txc-skew-ps = <1860>; reset-assert-us = <10000>; reset-deassert-us = <300>; micrel,force-master; --- linux-azure-5.8-5.8.0.orig/arch/arm/boot/dts/stm32mp15xx-dhcom-pdk2.dtsi +++ linux-azure-5.8-5.8.0/arch/arm/boot/dts/stm32mp15xx-dhcom-pdk2.dtsi @@ -11,7 +11,6 @@ serial0 = &uart4; serial1 = &usart3; serial2 = &uart8; - ethernet0 = ðernet0; }; chosen { @@ -26,23 +25,13 @@ display_bl: display-bl { compatible = "pwm-backlight"; - pwms = <&pwm2 0 500000 PWM_POLARITY_INVERTED>; + pwms = <&pwm2 3 500000 PWM_POLARITY_INVERTED>; brightness-levels = <0 16 22 30 40 55 75 102 138 188 255>; default-brightness-level = <8>; enable-gpios = <&gpioi 0 GPIO_ACTIVE_HIGH>; status = "okay"; }; - ethernet_vio: vioregulator { - compatible = "regulator-fixed"; - regulator-name = "vio"; - regulator-min-microvolt = <3300000>; - regulator-max-microvolt = <3300000>; - gpio = <&gpiog 3 GPIO_ACTIVE_LOW>; - regulator-always-on; - regulator-boot-on; - }; - gpio-keys-polled { compatible = "gpio-keys-polled"; #size-cells = <0>; @@ -57,6 +46,16 @@ linux,code = ; gpios = <&gpiof 3 GPIO_ACTIVE_LOW>; }; + + /* + * The EXTi IRQ line 0 is shared with PMIC, + * so mark this as polled GPIO key. + */ + button-2 { + label = "TA3-GPIO-C"; + linux,code = ; + gpios = <&gpiog 0 GPIO_ACTIVE_LOW>; + }; }; gpio-keys { @@ -70,13 +69,6 @@ wakeup-source; }; - button-2 { - label = "TA3-GPIO-C"; - linux,code = ; - gpios = <&gpioi 11 GPIO_ACTIVE_LOW>; - wakeup-source; - }; - button-3 { label = "TA4-GPIO-D"; linux,code = ; @@ -90,7 +82,7 @@ led-0 { label = "green:led5"; - gpios = <&gpiog 2 GPIO_ACTIVE_HIGH>; + gpios = <&gpioc 6 GPIO_ACTIVE_HIGH>; default-state = "off"; }; @@ -141,28 +133,6 @@ status = "okay"; }; -ðernet0 { - status = "okay"; - pinctrl-0 = <ðernet0_rmii_pins_a>; - pinctrl-1 = <ðernet0_rmii_sleep_pins_a>; - pinctrl-names = "default", "sleep"; - phy-mode = "rmii"; - max-speed = <100>; - phy-handle = <&phy0>; - st,eth-ref-clk-sel; - phy-reset-gpios = <&gpioh 15 GPIO_ACTIVE_LOW>; - - mdio0 { - #address-cells = <1>; - #size-cells = <0>; - compatible = "snps,dwmac-mdio"; - - phy0: ethernet-phy@1 { - reg = <1>; - }; - }; -}; - &i2c2 { /* Header X22 */ pinctrl-names = "default"; pinctrl-0 = <&i2c2_pins_a>; --- linux-azure-5.8-5.8.0.orig/arch/arm/boot/dts/stm32mp15xx-dhcom-som.dtsi +++ linux-azure-5.8-5.8.0/arch/arm/boot/dts/stm32mp15xx-dhcom-som.dtsi @@ -9,6 +9,10 @@ #include / { + aliases { + ethernet0 = ðernet0; + }; + memory@c0000000 { device_type = "memory"; reg = <0xC0000000 0x40000000>; @@ -55,6 +59,17 @@ no-map; }; }; + + ethernet_vio: vioregulator { + compatible = "regulator-fixed"; + regulator-name = "vio"; + regulator-min-microvolt = <3300000>; + regulator-max-microvolt = <3300000>; + gpio = <&gpiog 3 GPIO_ACTIVE_LOW>; + regulator-always-on; + regulator-boot-on; + vin-supply = <&vdd>; + }; }; &adc { @@ -94,6 +109,28 @@ status = "okay"; }; +ðernet0 { + status = "okay"; + pinctrl-0 = <ðernet0_rmii_pins_a>; + pinctrl-1 = <ðernet0_rmii_sleep_pins_a>; + pinctrl-names = "default", "sleep"; + phy-mode = "rmii"; + max-speed = <100>; + phy-handle = <&phy0>; + st,eth-ref-clk-sel; + phy-reset-gpios = <&gpioh 3 GPIO_ACTIVE_LOW>; + + mdio0 { + #address-cells = <1>; + #size-cells = <0>; + compatible = "snps,dwmac-mdio"; + + phy0: ethernet-phy@1 { + reg = <1>; + }; + }; +}; + &i2c4 { pinctrl-names = "default"; pinctrl-0 = <&i2c4_pins_a>; @@ -166,6 +203,7 @@ vdda: ldo1 { regulator-name = "vdda"; + regulator-always-on; regulator-min-microvolt = <2900000>; regulator-max-microvolt = <2900000>; interrupts = ; @@ -249,7 +287,7 @@ compatible = "ti,tsc2004"; reg = <0x49>; vio-supply = <&v3v3>; - interrupts-extended = <&gpioh 3 IRQ_TYPE_EDGE_FALLING>; + interrupts-extended = <&gpioh 15 IRQ_TYPE_EDGE_FALLING>; }; eeprom@50 { @@ -315,7 +353,8 @@ pinctrl-0 = <&sdmmc1_b4_pins_a &sdmmc1_dir_pins_a>; pinctrl-1 = <&sdmmc1_b4_od_pins_a &sdmmc1_dir_pins_a>; pinctrl-2 = <&sdmmc1_b4_sleep_pins_a &sdmmc1_dir_sleep_pins_a>; - broken-cd; + cd-gpios = <&gpiog 1 (GPIO_ACTIVE_LOW | GPIO_PULL_UP)>; + disable-wp; st,sig-dir; st,neg-edge; st,use-ckin; --- linux-azure-5.8-5.8.0.orig/arch/arm/boot/dts/stm32mp15xx-dhcor-avenger96.dtsi +++ linux-azure-5.8-5.8.0/arch/arm/boot/dts/stm32mp15xx-dhcor-avenger96.dtsi @@ -295,9 +295,9 @@ &sdmmc2 { pinctrl-names = "default", "opendrain", "sleep"; - pinctrl-0 = <&sdmmc2_b4_pins_a &sdmmc2_d47_pins_b>; - pinctrl-1 = <&sdmmc2_b4_od_pins_a &sdmmc2_d47_pins_b>; - pinctrl-2 = <&sdmmc2_b4_sleep_pins_a &sdmmc2_d47_sleep_pins_b>; + pinctrl-0 = <&sdmmc2_b4_pins_a &sdmmc2_d47_pins_c>; + pinctrl-1 = <&sdmmc2_b4_od_pins_a &sdmmc2_d47_pins_c>; + pinctrl-2 = <&sdmmc2_b4_sleep_pins_a &sdmmc2_d47_sleep_pins_c>; bus-width = <8>; mmc-ddr-1_8v; no-sd; --- linux-azure-5.8-5.8.0.orig/arch/arm/boot/dts/stm32mp15xx-dhcor-som.dtsi +++ linux-azure-5.8-5.8.0/arch/arm/boot/dts/stm32mp15xx-dhcor-som.dtsi @@ -21,6 +21,10 @@ }; }; +&dts { + status = "okay"; +}; + &i2c4 { pinctrl-names = "default"; pinctrl-0 = <&i2c4_pins_a>; --- linux-azure-5.8-5.8.0.orig/arch/arm/boot/dts/sun4i-a10.dtsi +++ linux-azure-5.8-5.8.0/arch/arm/boot/dts/sun4i-a10.dtsi @@ -143,7 +143,7 @@ trips { cpu_alert0: cpu-alert0 { /* milliCelsius */ - temperature = <850000>; + temperature = <85000>; hysteresis = <2000>; type = "passive"; }; --- linux-azure-5.8-5.8.0.orig/arch/arm/boot/dts/sun6i-a31-hummingbird.dts +++ linux-azure-5.8-5.8.0/arch/arm/boot/dts/sun6i-a31-hummingbird.dts @@ -154,7 +154,7 @@ pinctrl-names = "default"; pinctrl-0 = <&gmac_rgmii_pins>; phy-handle = <&phy1>; - phy-mode = "rgmii"; + phy-mode = "rgmii-id"; status = "okay"; }; --- linux-azure-5.8-5.8.0.orig/arch/arm/boot/dts/sun7i-a20-bananapi-m1-plus.dts +++ linux-azure-5.8-5.8.0/arch/arm/boot/dts/sun7i-a20-bananapi-m1-plus.dts @@ -130,7 +130,7 @@ pinctrl-names = "default"; pinctrl-0 = <&gmac_rgmii_pins>; phy-handle = <&phy1>; - phy-mode = "rgmii"; + phy-mode = "rgmii-id"; phy-supply = <®_gmac_3v3>; status = "okay"; }; --- linux-azure-5.8-5.8.0.orig/arch/arm/boot/dts/sun7i-a20-bananapi.dts +++ linux-azure-5.8-5.8.0/arch/arm/boot/dts/sun7i-a20-bananapi.dts @@ -132,7 +132,7 @@ pinctrl-names = "default"; pinctrl-0 = <&gmac_rgmii_pins>; phy-handle = <&phy1>; - phy-mode = "rgmii"; + phy-mode = "rgmii-id"; phy-supply = <®_gmac_3v3>; status = "okay"; }; --- linux-azure-5.8-5.8.0.orig/arch/arm/boot/dts/sun7i-a20-bananapro.dts +++ linux-azure-5.8-5.8.0/arch/arm/boot/dts/sun7i-a20-bananapro.dts @@ -110,7 +110,7 @@ pinctrl-names = "default"; pinctrl-0 = <&gmac_rgmii_pins>; phy-handle = <&phy1>; - phy-mode = "rgmii"; + phy-mode = "rgmii-id"; phy-supply = <®_gmac_3v3>; status = "okay"; }; --- linux-azure-5.8-5.8.0.orig/arch/arm/boot/dts/sun7i-a20-cubietruck.dts +++ linux-azure-5.8-5.8.0/arch/arm/boot/dts/sun7i-a20-cubietruck.dts @@ -151,7 +151,7 @@ pinctrl-names = "default"; pinctrl-0 = <&gmac_rgmii_pins>; phy-handle = <&phy1>; - phy-mode = "rgmii"; + phy-mode = "rgmii-id"; status = "okay"; }; --- linux-azure-5.8-5.8.0.orig/arch/arm/boot/dts/sun7i-a20-pcduino3-nano.dts +++ linux-azure-5.8-5.8.0/arch/arm/boot/dts/sun7i-a20-pcduino3-nano.dts @@ -1,5 +1,5 @@ /* - * Copyright 2015 Adam Sampson + * Copyright 2015-2020 Adam Sampson * * This file is dual-licensed: you can use it either under the terms * of the GPL or the X11 license, at your option. Note that this dual @@ -115,7 +115,7 @@ pinctrl-names = "default"; pinctrl-0 = <&gmac_rgmii_pins>; phy-handle = <&phy1>; - phy-mode = "rgmii"; + phy-mode = "rgmii-id"; status = "okay"; }; --- linux-azure-5.8-5.8.0.orig/arch/arm/boot/dts/sun8i-a83t-bananapi-m3.dts +++ linux-azure-5.8-5.8.0/arch/arm/boot/dts/sun8i-a83t-bananapi-m3.dts @@ -131,7 +131,7 @@ pinctrl-0 = <&emac_rgmii_pins>; phy-supply = <®_sw>; phy-handle = <&rgmii_phy>; - phy-mode = "rgmii"; + phy-mode = "rgmii-id"; allwinner,rx-delay-ps = <700>; allwinner,tx-delay-ps = <700>; status = "okay"; --- linux-azure-5.8-5.8.0.orig/arch/arm/boot/dts/sun8i-a83t-cubietruck-plus.dts +++ linux-azure-5.8-5.8.0/arch/arm/boot/dts/sun8i-a83t-cubietruck-plus.dts @@ -183,7 +183,7 @@ pinctrl-0 = <&emac_rgmii_pins>; phy-supply = <®_dldo4>; phy-handle = <&rgmii_phy>; - phy-mode = "rgmii"; + phy-mode = "rgmii-id"; status = "okay"; }; --- linux-azure-5.8-5.8.0.orig/arch/arm/boot/dts/sun8i-h3-orangepi-pc-plus.dts +++ linux-azure-5.8-5.8.0/arch/arm/boot/dts/sun8i-h3-orangepi-pc-plus.dts @@ -53,11 +53,6 @@ }; }; -&emac { - /* LEDs changed to active high on the plus */ - /delete-property/ allwinner,leds-active-low; -}; - &mmc1 { vmmc-supply = <®_vcc3v3>; bus-width = <4>; --- linux-azure-5.8-5.8.0.orig/arch/arm/boot/dts/sun8i-h3-orangepi-plus2e.dts +++ linux-azure-5.8-5.8.0/arch/arm/boot/dts/sun8i-h3-orangepi-plus2e.dts @@ -67,7 +67,7 @@ pinctrl-0 = <&emac_rgmii_pins>; phy-supply = <®_gmac_3v3>; phy-handle = <&ext_rgmii_phy>; - phy-mode = "rgmii"; + phy-mode = "rgmii-id"; status = "okay"; }; --- linux-azure-5.8-5.8.0.orig/arch/arm/boot/dts/sun8i-r40-bananapi-m2-ultra.dts +++ linux-azure-5.8-5.8.0/arch/arm/boot/dts/sun8i-r40-bananapi-m2-ultra.dts @@ -129,7 +129,7 @@ pinctrl-names = "default"; pinctrl-0 = <&gmac_rgmii_pins>; phy-handle = <&phy1>; - phy-mode = "rgmii"; + phy-mode = "rgmii-id"; phy-supply = <®_dc1sw>; status = "okay"; }; @@ -223,16 +223,16 @@ }; ®_dc1sw { - regulator-min-microvolt = <3000000>; - regulator-max-microvolt = <3000000>; + regulator-min-microvolt = <3300000>; + regulator-max-microvolt = <3300000>; regulator-name = "vcc-gmac-phy"; }; ®_dcdc1 { regulator-always-on; - regulator-min-microvolt = <3000000>; - regulator-max-microvolt = <3000000>; - regulator-name = "vcc-3v0"; + regulator-min-microvolt = <3300000>; + regulator-max-microvolt = <3300000>; + regulator-name = "vcc-3v3"; }; ®_dcdc2 { --- linux-azure-5.8-5.8.0.orig/arch/arm/boot/dts/sun8i-v3s.dtsi +++ linux-azure-5.8-5.8.0/arch/arm/boot/dts/sun8i-v3s.dtsi @@ -421,7 +421,7 @@ gic: interrupt-controller@1c81000 { compatible = "arm,gic-400"; reg = <0x01c81000 0x1000>, - <0x01c82000 0x1000>, + <0x01c82000 0x2000>, <0x01c84000 0x2000>, <0x01c86000 0x2000>; interrupt-controller; --- linux-azure-5.8-5.8.0.orig/arch/arm/boot/dts/sun8i-v40-bananapi-m2-berry.dts +++ linux-azure-5.8-5.8.0/arch/arm/boot/dts/sun8i-v40-bananapi-m2-berry.dts @@ -120,7 +120,7 @@ pinctrl-names = "default"; pinctrl-0 = <&gmac_rgmii_pins>; phy-handle = <&phy1>; - phy-mode = "rgmii"; + phy-mode = "rgmii-id"; phy-supply = <®_dc1sw>; status = "okay"; }; @@ -198,16 +198,16 @@ }; ®_dc1sw { - regulator-min-microvolt = <3000000>; - regulator-max-microvolt = <3000000>; + regulator-min-microvolt = <3300000>; + regulator-max-microvolt = <3300000>; regulator-name = "vcc-gmac-phy"; }; ®_dcdc1 { regulator-always-on; - regulator-min-microvolt = <3000000>; - regulator-max-microvolt = <3000000>; - regulator-name = "vcc-3v0"; + regulator-min-microvolt = <3300000>; + regulator-max-microvolt = <3300000>; + regulator-name = "vcc-3v3"; }; ®_dcdc2 { --- linux-azure-5.8-5.8.0.orig/arch/arm/boot/dts/sun9i-a80-cubieboard4.dts +++ linux-azure-5.8-5.8.0/arch/arm/boot/dts/sun9i-a80-cubieboard4.dts @@ -129,7 +129,7 @@ pinctrl-names = "default"; pinctrl-0 = <&gmac_rgmii_pins>; phy-handle = <&phy1>; - phy-mode = "rgmii"; + phy-mode = "rgmii-id"; phy-supply = <®_cldo1>; status = "okay"; }; --- linux-azure-5.8-5.8.0.orig/arch/arm/boot/dts/sun9i-a80-optimus.dts +++ linux-azure-5.8-5.8.0/arch/arm/boot/dts/sun9i-a80-optimus.dts @@ -124,7 +124,7 @@ pinctrl-names = "default"; pinctrl-0 = <&gmac_rgmii_pins>; phy-handle = <&phy1>; - phy-mode = "rgmii"; + phy-mode = "rgmii-id"; phy-supply = <®_cldo1>; status = "okay"; }; --- linux-azure-5.8-5.8.0.orig/arch/arm/boot/dts/sunxi-bananapi-m2-plus-v1.2.dtsi +++ linux-azure-5.8-5.8.0/arch/arm/boot/dts/sunxi-bananapi-m2-plus-v1.2.dtsi @@ -16,15 +16,27 @@ regulator-type = "voltage"; regulator-boot-on; regulator-always-on; - regulator-min-microvolt = <1100000>; - regulator-max-microvolt = <1300000>; + regulator-min-microvolt = <1108475>; + regulator-max-microvolt = <1308475>; regulator-ramp-delay = <50>; /* 4ms */ gpios = <&r_pio 0 1 GPIO_ACTIVE_HIGH>; /* PL1 */ gpios-states = <0x1>; - states = <1100000 0>, <1300000 1>; + states = <1108475 0>, <1308475 1>; }; }; &cpu0 { cpu-supply = <®_vdd_cpux>; }; + +&cpu1 { + cpu-supply = <®_vdd_cpux>; +}; + +&cpu2 { + cpu-supply = <®_vdd_cpux>; +}; + +&cpu3 { + cpu-supply = <®_vdd_cpux>; +}; --- linux-azure-5.8-5.8.0.orig/arch/arm/boot/dts/sunxi-bananapi-m2-plus.dtsi +++ linux-azure-5.8-5.8.0/arch/arm/boot/dts/sunxi-bananapi-m2-plus.dtsi @@ -126,7 +126,7 @@ pinctrl-0 = <&emac_rgmii_pins>; phy-supply = <®_gmac_3v3>; phy-handle = <&ext_rgmii_phy>; - phy-mode = "rgmii"; + phy-mode = "rgmii-id"; status = "okay"; }; --- linux-azure-5.8-5.8.0.orig/arch/arm/boot/dts/tegra20-ventana.dts +++ linux-azure-5.8-5.8.0/arch/arm/boot/dts/tegra20-ventana.dts @@ -3,6 +3,7 @@ #include #include "tegra20.dtsi" +#include "tegra20-cpu-opp.dtsi" / { model = "NVIDIA Tegra20 Ventana evaluation board"; @@ -599,6 +600,16 @@ }; }; + cpus { + cpu0: cpu@0 { + operating-points-v2 = <&cpu0_opp_table>; + }; + + cpu@1 { + operating-points-v2 = <&cpu0_opp_table>; + }; + }; + gpio-keys { compatible = "gpio-keys"; --- linux-azure-5.8-5.8.0.orig/arch/arm/boot/dts/vf610-zii-dev-rev-b.dts +++ linux-azure-5.8-5.8.0/arch/arm/boot/dts/vf610-zii-dev-rev-b.dts @@ -406,6 +406,9 @@ }; }; +&mdio1 { + clock-frequency = <5000000>; +}; &iomuxc { pinctrl_gpio_e6185_eeprom_sel: pinctrl-gpio-e6185-eeprom-spi0 { --- linux-azure-5.8-5.8.0.orig/arch/arm/boot/dts/vfxxx.dtsi +++ linux-azure-5.8-5.8.0/arch/arm/boot/dts/vfxxx.dtsi @@ -495,7 +495,7 @@ }; ocotp: ocotp@400a5000 { - compatible = "fsl,vf610-ocotp"; + compatible = "fsl,vf610-ocotp", "syscon"; reg = <0x400a5000 0x1000>; clocks = <&clks VF610_CLK_OCOTP>; }; --- linux-azure-5.8-5.8.0.orig/arch/arm/configs/aspeed_g4_defconfig +++ linux-azure-5.8-5.8.0/arch/arm/configs/aspeed_g4_defconfig @@ -160,7 +160,8 @@ CONFIG_SENSORS_W83773G=y CONFIG_WATCHDOG_SYSFS=y CONFIG_MEDIA_SUPPORT=y -CONFIG_MEDIA_CAMERA_SUPPORT=y +CONFIG_MEDIA_SUPPORT_FILTER=y +CONFIG_MEDIA_PLATFORM_SUPPORT=y CONFIG_V4L_PLATFORM_DRIVERS=y CONFIG_VIDEO_ASPEED=y CONFIG_DRM=y --- linux-azure-5.8-5.8.0.orig/arch/arm/configs/aspeed_g5_defconfig +++ linux-azure-5.8-5.8.0/arch/arm/configs/aspeed_g5_defconfig @@ -175,7 +175,8 @@ CONFIG_SENSORS_W83773G=y CONFIG_WATCHDOG_SYSFS=y CONFIG_MEDIA_SUPPORT=y -CONFIG_MEDIA_CAMERA_SUPPORT=y +CONFIG_MEDIA_SUPPORT_FILTER=y +CONFIG_MEDIA_PLATFORM_SUPPORT=y CONFIG_V4L_PLATFORM_DRIVERS=y CONFIG_VIDEO_ASPEED=y CONFIG_DRM=y --- linux-azure-5.8-5.8.0.orig/arch/arm/configs/omap2plus_defconfig +++ linux-azure-5.8-5.8.0/arch/arm/configs/omap2plus_defconfig @@ -81,7 +81,6 @@ CONFIG_BINFMT_MISC=y CONFIG_CMA=y CONFIG_ZSMALLOC=m -CONFIG_ZSMALLOC_PGTABLE_MAPPING=y CONFIG_NET=y CONFIG_PACKET=y CONFIG_UNIX=y --- linux-azure-5.8-5.8.0.orig/arch/arm/crypto/aes-ce-core.S +++ linux-azure-5.8-5.8.0/arch/arm/crypto/aes-ce-core.S @@ -386,20 +386,32 @@ .Lctrloop4x: subs r4, r4, #4 bmi .Lctr1x - add r6, r6, #1 + + /* + * NOTE: the sequence below has been carefully tweaked to avoid + * a silicon erratum that exists in Cortex-A57 (#1742098) and + * Cortex-A72 (#1655431) cores, where AESE/AESMC instruction pairs + * may produce an incorrect result if they take their input from a + * register of which a single 32-bit lane has been updated the last + * time it was modified. To work around this, the lanes of registers + * q0-q3 below are not manipulated individually, and the different + * counter values are prepared by successive manipulations of q7. + */ + add ip, r6, #1 vmov q0, q7 + rev ip, ip + add lr, r6, #2 + vmov s31, ip @ set lane 3 of q1 via q7 + add ip, r6, #3 + rev lr, lr vmov q1, q7 - rev ip, r6 - add r6, r6, #1 + vmov s31, lr @ set lane 3 of q2 via q7 + rev ip, ip vmov q2, q7 - vmov s7, ip - rev ip, r6 - add r6, r6, #1 + vmov s31, ip @ set lane 3 of q3 via q7 + add r6, r6, #4 vmov q3, q7 - vmov s11, ip - rev ip, r6 - add r6, r6, #1 - vmov s15, ip + vld1.8 {q4-q5}, [r1]! vld1.8 {q6}, [r1]! vld1.8 {q15}, [r1]! --- linux-azure-5.8-5.8.0.orig/arch/arm/include/asm/Kbuild +++ linux-azure-5.8-5.8.0/arch/arm/include/asm/Kbuild @@ -2,7 +2,6 @@ generic-y += early_ioremap.h generic-y += extable.h generic-y += flat.h -generic-y += local64.h generic-y += parport.h generic-y += seccomp.h --- linux-azure-5.8-5.8.0.orig/arch/arm/include/asm/kexec-internal.h +++ linux-azure-5.8-5.8.0/arch/arm/include/asm/kexec-internal.h @@ -0,0 +1,12 @@ +/* SPDX-License-Identifier: GPL-2.0 */ +#ifndef _ARM_KEXEC_INTERNAL_H +#define _ARM_KEXEC_INTERNAL_H + +struct kexec_relocate_data { + unsigned long kexec_start_address; + unsigned long kexec_indirection_page; + unsigned long kexec_mach_type; + unsigned long kexec_r2; +}; + +#endif --- linux-azure-5.8-5.8.0.orig/arch/arm/include/asm/kprobes.h +++ linux-azure-5.8-5.8.0/arch/arm/include/asm/kprobes.h @@ -44,20 +44,20 @@ unsigned long val, void *data); /* optinsn template addresses */ -extern __visible kprobe_opcode_t optprobe_template_entry; -extern __visible kprobe_opcode_t optprobe_template_val; -extern __visible kprobe_opcode_t optprobe_template_call; -extern __visible kprobe_opcode_t optprobe_template_end; -extern __visible kprobe_opcode_t optprobe_template_sub_sp; -extern __visible kprobe_opcode_t optprobe_template_add_sp; -extern __visible kprobe_opcode_t optprobe_template_restore_begin; -extern __visible kprobe_opcode_t optprobe_template_restore_orig_insn; -extern __visible kprobe_opcode_t optprobe_template_restore_end; +extern __visible kprobe_opcode_t optprobe_template_entry[]; +extern __visible kprobe_opcode_t optprobe_template_val[]; +extern __visible kprobe_opcode_t optprobe_template_call[]; +extern __visible kprobe_opcode_t optprobe_template_end[]; +extern __visible kprobe_opcode_t optprobe_template_sub_sp[]; +extern __visible kprobe_opcode_t optprobe_template_add_sp[]; +extern __visible kprobe_opcode_t optprobe_template_restore_begin[]; +extern __visible kprobe_opcode_t optprobe_template_restore_orig_insn[]; +extern __visible kprobe_opcode_t optprobe_template_restore_end[]; #define MAX_OPTIMIZED_LENGTH 4 #define MAX_OPTINSN_SIZE \ - ((unsigned long)&optprobe_template_end - \ - (unsigned long)&optprobe_template_entry) + ((unsigned long)optprobe_template_end - \ + (unsigned long)optprobe_template_entry) #define RELATIVEJUMP_SIZE 4 struct arch_optimized_insn { --- linux-azure-5.8-5.8.0.orig/arch/arm/include/asm/pgtable-2level.h +++ linux-azure-5.8-5.8.0/arch/arm/include/asm/pgtable-2level.h @@ -75,6 +75,8 @@ #define PTE_HWTABLE_OFF (PTE_HWTABLE_PTRS * sizeof(pte_t)) #define PTE_HWTABLE_SIZE (PTRS_PER_PTE * sizeof(u32)) +#define MAX_POSSIBLE_PHYSMEM_BITS 32 + /* * PMD_SHIFT determines the size of the area a second-level page table can map * PGDIR_SHIFT determines what a third-level page table entry can map --- linux-azure-5.8-5.8.0.orig/arch/arm/include/asm/pgtable-3level.h +++ linux-azure-5.8-5.8.0/arch/arm/include/asm/pgtable-3level.h @@ -25,6 +25,8 @@ #define PTE_HWTABLE_OFF (0) #define PTE_HWTABLE_SIZE (PTRS_PER_PTE * sizeof(u64)) +#define MAX_POSSIBLE_PHYSMEM_BITS 40 + /* * PGDIR_SHIFT determines the size a top-level page table entry can map. */ --- linux-azure-5.8-5.8.0.orig/arch/arm/kernel/asm-offsets.c +++ linux-azure-5.8-5.8.0/arch/arm/kernel/asm-offsets.c @@ -12,6 +12,7 @@ #include #include #include +#include #include #include #include @@ -170,5 +171,9 @@ DEFINE(MPU_RGN_PRBAR, offsetof(struct mpu_rgn, prbar)); DEFINE(MPU_RGN_PRLAR, offsetof(struct mpu_rgn, prlar)); #endif + DEFINE(KEXEC_START_ADDR, offsetof(struct kexec_relocate_data, kexec_start_address)); + DEFINE(KEXEC_INDIR_PAGE, offsetof(struct kexec_relocate_data, kexec_indirection_page)); + DEFINE(KEXEC_MACH_TYPE, offsetof(struct kexec_relocate_data, kexec_mach_type)); + DEFINE(KEXEC_R2, offsetof(struct kexec_relocate_data, kexec_r2)); return 0; } --- linux-azure-5.8-5.8.0.orig/arch/arm/kernel/entry-armv.S +++ linux-azure-5.8-5.8.0/arch/arm/kernel/entry-armv.S @@ -252,31 +252,10 @@ #else svc_entry #endif - @ - @ call emulation code, which returns using r9 if it has emulated - @ the instruction, or the more conventional lr if we are to treat - @ this as a real undefined instruction - @ - @ r0 - instruction - @ -#ifndef CONFIG_THUMB2_KERNEL - ldr r0, [r4, #-4] -#else - mov r1, #2 - ldrh r0, [r4, #-2] @ Thumb instruction at LR - 2 - cmp r0, #0xe800 @ 32-bit instruction if xx >= 0 - blo __und_svc_fault - ldrh r9, [r4] @ bottom 16 bits - add r4, r4, #2 - str r4, [sp, #S_PC] - orr r0, r9, r0, lsl #16 -#endif - badr r9, __und_svc_finish - mov r2, r4 - bl call_fpe mov r1, #4 @ PC correction to apply -__und_svc_fault: + THUMB( tst r5, #PSR_T_BIT ) @ exception taken in Thumb mode? + THUMB( movne r1, #2 ) @ if so, fix up PC correction mov r0, sp @ struct pt_regs *regs bl __und_fault --- linux-azure-5.8-5.8.0.orig/arch/arm/kernel/head.S +++ linux-azure-5.8-5.8.0/arch/arm/kernel/head.S @@ -672,11 +672,7 @@ bcc 1b bx lr #else -#ifdef CONFIG_CPU_ENDIAN_BE8 - moveq r0, #0x00004000 @ set bit 22, mov to mvn instruction -#else moveq r0, #0x400000 @ set bit 22, mov to mvn instruction -#endif b 2f 1: ldr ip, [r7, r3] #ifdef CONFIG_CPU_ENDIAN_BE8 @@ -685,7 +681,7 @@ tst ip, #0x000f0000 @ check the rotation field orrne ip, ip, r6, lsl #24 @ mask in offset bits 31-24 biceq ip, ip, #0x00004000 @ clear bit 22 - orreq ip, ip, r0 @ mask in offset bits 7-0 + orreq ip, ip, r0, ror #8 @ mask in offset bits 7-0 #else bic ip, ip, #0x000000ff tst ip, #0xf00 @ check the rotation field --- linux-azure-5.8-5.8.0.orig/arch/arm/kernel/hw_breakpoint.c +++ linux-azure-5.8-5.8.0/arch/arm/kernel/hw_breakpoint.c @@ -683,6 +683,40 @@ arch_install_hw_breakpoint(bp); } +/* + * Arm32 hardware does not always report a watchpoint hit address that matches + * one of the watchpoints set. It can also report an address "near" the + * watchpoint if a single instruction access both watched and unwatched + * addresses. There is no straight-forward way, short of disassembling the + * offending instruction, to map that address back to the watchpoint. This + * function computes the distance of the memory access from the watchpoint as a + * heuristic for the likelyhood that a given access triggered the watchpoint. + * + * See this same function in the arm64 platform code, which has the same + * problem. + * + * The function returns the distance of the address from the bytes watched by + * the watchpoint. In case of an exact match, it returns 0. + */ +static u32 get_distance_from_watchpoint(unsigned long addr, u32 val, + struct arch_hw_breakpoint_ctrl *ctrl) +{ + u32 wp_low, wp_high; + u32 lens, lene; + + lens = __ffs(ctrl->len); + lene = __fls(ctrl->len); + + wp_low = val + lens; + wp_high = val + lene; + if (addr < wp_low) + return wp_low - addr; + else if (addr > wp_high) + return addr - wp_high; + else + return 0; +} + static int watchpoint_fault_on_uaccess(struct pt_regs *regs, struct arch_hw_breakpoint *info) { @@ -692,23 +726,25 @@ static void watchpoint_handler(unsigned long addr, unsigned int fsr, struct pt_regs *regs) { - int i, access; - u32 val, ctrl_reg, alignment_mask; + int i, access, closest_match = 0; + u32 min_dist = -1, dist; + u32 val, ctrl_reg; struct perf_event *wp, **slots; struct arch_hw_breakpoint *info; struct arch_hw_breakpoint_ctrl ctrl; slots = this_cpu_ptr(wp_on_reg); + /* + * Find all watchpoints that match the reported address. If no exact + * match is found. Attribute the hit to the closest watchpoint. + */ + rcu_read_lock(); for (i = 0; i < core_num_wrps; ++i) { - rcu_read_lock(); - wp = slots[i]; - if (wp == NULL) - goto unlock; + continue; - info = counter_arch_bp(wp); /* * The DFAR is an unknown value on debug architectures prior * to 7.1. Since we only allow a single watchpoint on these @@ -717,33 +753,31 @@ */ if (debug_arch < ARM_DEBUG_ARCH_V7_1) { BUG_ON(i > 0); + info = counter_arch_bp(wp); info->trigger = wp->attr.bp_addr; } else { - if (info->ctrl.len == ARM_BREAKPOINT_LEN_8) - alignment_mask = 0x7; - else - alignment_mask = 0x3; - - /* Check if the watchpoint value matches. */ - val = read_wb_reg(ARM_BASE_WVR + i); - if (val != (addr & ~alignment_mask)) - goto unlock; - - /* Possible match, check the byte address select. */ - ctrl_reg = read_wb_reg(ARM_BASE_WCR + i); - decode_ctrl_reg(ctrl_reg, &ctrl); - if (!((1 << (addr & alignment_mask)) & ctrl.len)) - goto unlock; - /* Check that the access type matches. */ if (debug_exception_updates_fsr()) { access = (fsr & ARM_FSR_ACCESS_MASK) ? HW_BREAKPOINT_W : HW_BREAKPOINT_R; if (!(access & hw_breakpoint_type(wp))) - goto unlock; + continue; } + val = read_wb_reg(ARM_BASE_WVR + i); + ctrl_reg = read_wb_reg(ARM_BASE_WCR + i); + decode_ctrl_reg(ctrl_reg, &ctrl); + dist = get_distance_from_watchpoint(addr, val, &ctrl); + if (dist < min_dist) { + min_dist = dist; + closest_match = i; + } + /* Is this an exact match? */ + if (dist != 0) + continue; + /* We have a winner. */ + info = counter_arch_bp(wp); info->trigger = addr; } @@ -765,13 +799,23 @@ * we can single-step over the watchpoint trigger. */ if (!is_default_overflow_handler(wp)) - goto unlock; - + continue; step: enable_single_step(wp, instruction_pointer(regs)); -unlock: - rcu_read_unlock(); } + + if (min_dist > 0 && min_dist != -1) { + /* No exact match found. */ + wp = slots[closest_match]; + info = counter_arch_bp(wp); + info->trigger = addr; + pr_debug("watchpoint fired: address = 0x%x\n", info->trigger); + perf_bp_event(wp, regs); + if (is_default_overflow_handler(wp)) + enable_single_step(wp, instruction_pointer(regs)); + } + + rcu_read_unlock(); } static void watchpoint_single_step_handler(unsigned long pc) --- linux-azure-5.8-5.8.0.orig/arch/arm/kernel/machine_kexec.c +++ linux-azure-5.8-5.8.0/arch/arm/kernel/machine_kexec.c @@ -14,6 +14,7 @@ #include #include #include +#include #include #include #include @@ -23,11 +24,6 @@ extern void relocate_new_kernel(void); extern const unsigned int relocate_new_kernel_size; -extern unsigned long kexec_start_address; -extern unsigned long kexec_indirection_page; -extern unsigned long kexec_mach_type; -extern unsigned long kexec_boot_atags; - static atomic_t waiting_for_crash_ipi; /* @@ -160,6 +156,7 @@ void machine_kexec(struct kimage *image) { unsigned long page_list, reboot_entry_phys; + struct kexec_relocate_data *data; void (*reboot_entry)(void); void *reboot_code_buffer; @@ -175,18 +172,17 @@ reboot_code_buffer = page_address(image->control_code_page); - /* Prepare parameters for reboot_code_buffer*/ - set_kernel_text_rw(); - kexec_start_address = image->start; - kexec_indirection_page = page_list; - kexec_mach_type = machine_arch_type; - kexec_boot_atags = image->arch.kernel_r2; - /* copy our kernel relocation code to the control code page */ reboot_entry = fncpy(reboot_code_buffer, &relocate_new_kernel, relocate_new_kernel_size); + data = reboot_code_buffer + relocate_new_kernel_size; + data->kexec_start_address = image->start; + data->kexec_indirection_page = page_list; + data->kexec_mach_type = machine_arch_type; + data->kexec_r2 = image->arch.kernel_r2; + /* get the identity mapping physical address for the reboot code */ reboot_entry_phys = virt_to_idmap(reboot_entry); --- linux-azure-5.8-5.8.0.orig/arch/arm/kernel/relocate_kernel.S +++ linux-azure-5.8-5.8.0/arch/arm/kernel/relocate_kernel.S @@ -5,14 +5,16 @@ #include #include +#include #include .align 3 /* not needed for this code, but keeps fncpy() happy */ ENTRY(relocate_new_kernel) - ldr r0,kexec_indirection_page - ldr r1,kexec_start_address + adr r7, relocate_new_kernel_end + ldr r0, [r7, #KEXEC_INDIR_PAGE] + ldr r1, [r7, #KEXEC_START_ADDR] /* * If there is no indirection page (we are doing crashdumps) @@ -57,34 +59,16 @@ 2: /* Jump to relocated kernel */ - mov lr,r1 - mov r0,#0 - ldr r1,kexec_mach_type - ldr r2,kexec_boot_atags - ARM( ret lr ) - THUMB( bx lr ) - - .align - - .globl kexec_start_address -kexec_start_address: - .long 0x0 - - .globl kexec_indirection_page -kexec_indirection_page: - .long 0x0 - - .globl kexec_mach_type -kexec_mach_type: - .long 0x0 - - /* phy addr of the atags for the new kernel */ - .globl kexec_boot_atags -kexec_boot_atags: - .long 0x0 + mov lr, r1 + mov r0, #0 + ldr r1, [r7, #KEXEC_MACH_TYPE] + ldr r2, [r7, #KEXEC_R2] + ARM( ret lr ) + THUMB( bx lr ) ENDPROC(relocate_new_kernel) + .align 3 relocate_new_kernel_end: .globl relocate_new_kernel_size --- linux-azure-5.8-5.8.0.orig/arch/arm/kernel/signal.c +++ linux-azure-5.8-5.8.0/arch/arm/kernel/signal.c @@ -694,18 +694,20 @@ addr = page_address(page); + /* Poison the entire page */ + memset32(addr, __opcode_to_mem_arm(0xe7fddef1), + PAGE_SIZE / sizeof(u32)); + /* Give the signal return code some randomness */ offset = 0x200 + (get_random_int() & 0x7fc); signal_return_offset = offset; - /* - * Copy signal return handlers into the vector page, and - * set sigreturn to be a pointer to these. - */ + /* Copy signal return handlers into the page */ memcpy(addr + offset, sigreturn_codes, sizeof(sigreturn_codes)); - ptr = (unsigned long)addr + offset; - flush_icache_range(ptr, ptr + sizeof(sigreturn_codes)); + /* Flush out all instructions in this page */ + ptr = (unsigned long)addr; + flush_icache_range(ptr, ptr + PAGE_SIZE); return page; } --- linux-azure-5.8-5.8.0.orig/arch/arm/kernel/stacktrace.c +++ linux-azure-5.8-5.8.0/arch/arm/kernel/stacktrace.c @@ -22,6 +22,19 @@ * A simple function epilogue looks like this: * ldm sp, {fp, sp, pc} * + * When compiled with clang, pc and sp are not pushed. A simple function + * prologue looks like this when built with clang: + * + * stmdb {..., fp, lr} + * add fp, sp, #x + * sub sp, sp, #y + * + * A simple function epilogue looks like this when built with clang: + * + * sub sp, fp, #x + * ldm {..., fp, pc} + * + * * Note that with framepointer enabled, even the leaf functions have the same * prologue and epilogue, therefore we can ignore the LR value in this case. */ @@ -34,6 +47,16 @@ low = frame->sp; high = ALIGN(low, THREAD_SIZE); +#ifdef CONFIG_CC_IS_CLANG + /* check current frame pointer is within bounds */ + if (fp < low + 4 || fp > high - 4) + return -EINVAL; + + frame->sp = frame->fp; + frame->fp = *(unsigned long *)(fp); + frame->pc = frame->lr; + frame->lr = *(unsigned long *)(fp + 4); +#else /* check current frame pointer is within bounds */ if (fp < low + 12 || fp > high - 4) return -EINVAL; @@ -42,6 +65,7 @@ frame->fp = *(unsigned long *)(fp - 12); frame->sp = *(unsigned long *)(fp - 8); frame->pc = *(unsigned long *)(fp - 4); +#endif return 0; } --- linux-azure-5.8-5.8.0.orig/arch/arm/kernel/sys_oabi-compat.c +++ linux-azure-5.8-5.8.0/arch/arm/kernel/sys_oabi-compat.c @@ -248,6 +248,7 @@ __u64 data; } __attribute__ ((packed,aligned(4))); +#ifdef CONFIG_EPOLL asmlinkage long sys_oabi_epoll_ctl(int epfd, int op, int fd, struct oabi_epoll_event __user *event) { @@ -298,6 +299,20 @@ kfree(kbuf); return err ? -EFAULT : ret; } +#else +asmlinkage long sys_oabi_epoll_ctl(int epfd, int op, int fd, + struct oabi_epoll_event __user *event) +{ + return -EINVAL; +} + +asmlinkage long sys_oabi_epoll_wait(int epfd, + struct oabi_epoll_event __user *events, + int maxevents, int timeout) +{ + return -EINVAL; +} +#endif struct oabi_sembuf { unsigned short sem_num; --- linux-azure-5.8-5.8.0.orig/arch/arm/mach-at91/pm.c +++ linux-azure-5.8-5.8.0/arch/arm/mach-at91/pm.c @@ -592,13 +592,13 @@ sram_pool = gen_pool_get(&pdev->dev, NULL); if (!sram_pool) { pr_warn("%s: sram pool unavailable!\n", __func__); - return; + goto out_put_device; } sram_base = gen_pool_alloc(sram_pool, at91_pm_suspend_in_sram_sz); if (!sram_base) { pr_warn("%s: unable to alloc sram!\n", __func__); - return; + goto out_put_device; } sram_pbase = gen_pool_virt_to_phys(sram_pool, sram_base); @@ -606,12 +606,17 @@ at91_pm_suspend_in_sram_sz, false); if (!at91_suspend_sram_fn) { pr_warn("SRAM: Could not map\n"); - return; + goto out_put_device; } /* Copy the pm suspend handler to SRAM */ at91_suspend_sram_fn = fncpy(at91_suspend_sram_fn, &at91_pm_suspend_in_sram, at91_pm_suspend_in_sram_sz); + return; + +out_put_device: + put_device(&pdev->dev); + return; } static bool __init at91_is_pm_mode_active(int pm_mode) @@ -795,6 +800,7 @@ pmc_np = of_find_matching_node_and_match(NULL, atmel_pmc_ids, &of_id); soc_pm.data.pmc = of_iomap(pmc_np, 0); + of_node_put(pmc_np); if (!soc_pm.data.pmc) { pr_err("AT91: PM not supported, PMC not found\n"); return; --- linux-azure-5.8-5.8.0.orig/arch/arm/mach-at91/pm_suspend.S +++ linux-azure-5.8-5.8.0/arch/arm/mach-at91/pm_suspend.S @@ -415,7 +415,7 @@ str tmp1, [pmc, #AT91_PMC_PLL_UPDT] /* step 2. */ - ldr tmp1, =#AT91_PMC_PLL_ACR_DEFAULT_PLLA + ldr tmp1, =AT91_PMC_PLL_ACR_DEFAULT_PLLA str tmp1, [pmc, #AT91_PMC_PLL_ACR] /* step 3. */ --- linux-azure-5.8-5.8.0.orig/arch/arm/mach-exynos/exynos.c +++ linux-azure-5.8-5.8.0/arch/arm/mach-exynos/exynos.c @@ -193,7 +193,7 @@ } DT_MACHINE_START(EXYNOS_DT, "Samsung Exynos (Flattened Device Tree)") - .l2c_aux_val = 0x3c400001, + .l2c_aux_val = 0x3c400000, .l2c_aux_mask = 0xc20fffff, .smp = smp_ops(exynos_smp_ops), .map_io = exynos_init_io, --- linux-azure-5.8-5.8.0.orig/arch/arm/mach-exynos/mcpm-exynos.c +++ linux-azure-5.8-5.8.0/arch/arm/mach-exynos/mcpm-exynos.c @@ -26,6 +26,7 @@ #define EXYNOS5420_USE_L2_COMMON_UP_STATE BIT(30) static void __iomem *ns_sram_base_addr __ro_after_init; +static bool secure_firmware __ro_after_init; /* * The common v7_exit_coherency_flush API could not be used because of the @@ -58,15 +59,16 @@ static int exynos_cpu_powerup(unsigned int cpu, unsigned int cluster) { unsigned int cpunr = cpu + (cluster * EXYNOS5420_CPUS_PER_CLUSTER); + bool state; pr_debug("%s: cpu %u cluster %u\n", __func__, cpu, cluster); if (cpu >= EXYNOS5420_CPUS_PER_CLUSTER || cluster >= EXYNOS5420_NR_CLUSTERS) return -EINVAL; - if (!exynos_cpu_power_state(cpunr)) { - exynos_cpu_power_up(cpunr); - + state = exynos_cpu_power_state(cpunr); + exynos_cpu_power_up(cpunr); + if (!state && secure_firmware) { /* * This assumes the cluster number of the big cores(Cortex A15) * is 0 and the Little cores(Cortex A7) is 1. @@ -258,6 +260,8 @@ return -ENOMEM; } + secure_firmware = exynos_secure_firmware_available(); + /* * To increase the stability of KFC reset we need to program * the PMU SPARE3 register --- linux-azure-5.8-5.8.0.orig/arch/arm/mach-footbridge/dc21285.c +++ linux-azure-5.8-5.8.0/arch/arm/mach-footbridge/dc21285.c @@ -65,15 +65,15 @@ if (addr) switch (size) { case 1: - asm("ldrb %0, [%1, %2]" + asm volatile("ldrb %0, [%1, %2]" : "=r" (v) : "r" (addr), "r" (where) : "cc"); break; case 2: - asm("ldrh %0, [%1, %2]" + asm volatile("ldrh %0, [%1, %2]" : "=r" (v) : "r" (addr), "r" (where) : "cc"); break; case 4: - asm("ldr %0, [%1, %2]" + asm volatile("ldr %0, [%1, %2]" : "=r" (v) : "r" (addr), "r" (where) : "cc"); break; } @@ -99,17 +99,17 @@ if (addr) switch (size) { case 1: - asm("strb %0, [%1, %2]" + asm volatile("strb %0, [%1, %2]" : : "r" (value), "r" (addr), "r" (where) : "cc"); break; case 2: - asm("strh %0, [%1, %2]" + asm volatile("strh %0, [%1, %2]" : : "r" (value), "r" (addr), "r" (where) : "cc"); break; case 4: - asm("str %0, [%1, %2]" + asm volatile("str %0, [%1, %2]" : : "r" (value), "r" (addr), "r" (where) : "cc"); break; --- linux-azure-5.8-5.8.0.orig/arch/arm/mach-imx/suspend-imx6.S +++ linux-azure-5.8-5.8.0/arch/arm/mach-imx/suspend-imx6.S @@ -67,6 +67,7 @@ #define MX6Q_CCM_CCR 0x0 .align 3 + .arm .macro sync_l2_cache --- linux-azure-5.8-5.8.0.orig/arch/arm/mach-ixp4xx/Kconfig +++ linux-azure-5.8-5.8.0/arch/arm/mach-ixp4xx/Kconfig @@ -13,7 +13,6 @@ select I2C select I2C_IOP3XX select PCI - select TIMER_OF select USE_OF help Say 'Y' here to support Device Tree-based IXP4xx platforms. --- linux-azure-5.8-5.8.0.orig/arch/arm/mach-omap1/board-osk.c +++ linux-azure-5.8-5.8.0/arch/arm/mach-omap1/board-osk.c @@ -199,6 +199,8 @@ */ gpio_request(OSK_TPS_GPIO_USB_PWR_EN, "n_vbus_en"); gpio_direction_output(OSK_TPS_GPIO_USB_PWR_EN, 1); + /* Free the GPIO again as the driver will request it */ + gpio_free(OSK_TPS_GPIO_USB_PWR_EN); /* Set GPIO 2 high so LED D3 is off by default */ tps65010_set_gpio_out_value(GPIO2, HIGH); --- linux-azure-5.8-5.8.0.orig/arch/arm/mach-omap2/cpuidle44xx.c +++ linux-azure-5.8-5.8.0/arch/arm/mach-omap2/cpuidle44xx.c @@ -151,10 +151,10 @@ (cx->mpu_logic_state == PWRDM_POWER_OFF); /* Enter broadcast mode for periodic timers */ - tick_broadcast_enable(); + RCU_NONIDLE(tick_broadcast_enable()); /* Enter broadcast mode for one-shot timers */ - tick_broadcast_enter(); + RCU_NONIDLE(tick_broadcast_enter()); /* * Call idle CPU PM enter notifier chain so that @@ -166,7 +166,7 @@ if (dev->cpu == 0) { pwrdm_set_logic_retst(mpu_pd, cx->mpu_logic_state); - omap_set_pwrdm_state(mpu_pd, cx->mpu_state); + RCU_NONIDLE(omap_set_pwrdm_state(mpu_pd, cx->mpu_state)); /* * Call idle CPU cluster PM enter notifier chain @@ -174,15 +174,19 @@ */ if (mpuss_can_lose_context) { error = cpu_cluster_pm_enter(); - if (error) - goto cpu_cluster_pm_out; + if (error) { + index = 0; + cx = state_ptr + index; + pwrdm_set_logic_retst(mpu_pd, cx->mpu_logic_state); + RCU_NONIDLE(omap_set_pwrdm_state(mpu_pd, cx->mpu_state)); + mpuss_can_lose_context = 0; + } } } omap4_enter_lowpower(dev->cpu, cx->cpu_state); cpu_done[dev->cpu] = true; -cpu_cluster_pm_out: /* Wakeup CPU1 only if it is not offlined */ if (dev->cpu == 0 && cpumask_test_cpu(1, cpu_online_mask)) { @@ -190,9 +194,9 @@ mpuss_can_lose_context) gic_dist_disable(); - clkdm_deny_idle(cpu_clkdm[1]); - omap_set_pwrdm_state(cpu_pd[1], PWRDM_POWER_ON); - clkdm_allow_idle(cpu_clkdm[1]); + RCU_NONIDLE(clkdm_deny_idle(cpu_clkdm[1])); + RCU_NONIDLE(omap_set_pwrdm_state(cpu_pd[1], PWRDM_POWER_ON)); + RCU_NONIDLE(clkdm_allow_idle(cpu_clkdm[1])); if (IS_PM44XX_ERRATUM(PM_OMAP4_ROM_SMP_BOOT_ERRATUM_GICD) && mpuss_can_lose_context) { @@ -218,7 +222,7 @@ cpu_pm_exit(); cpu_pm_out: - tick_broadcast_exit(); + RCU_NONIDLE(tick_broadcast_exit()); fail: cpuidle_coupled_parallel_barrier(dev, &abort_barrier); --- linux-azure-5.8-5.8.0.orig/arch/arm/mach-omap2/omap-iommu.c +++ linux-azure-5.8-5.8.0/arch/arm/mach-omap2/omap-iommu.c @@ -74,7 +74,7 @@ return pwrdm; clk = of_clk_get(dev->of_node->parent, 0); - if (!clk) { + if (IS_ERR(clk)) { dev_err(dev, "no fck found\n"); return NULL; } --- linux-azure-5.8-5.8.0.orig/arch/arm/mach-omap2/omap_device.c +++ linux-azure-5.8-5.8.0/arch/arm/mach-omap2/omap_device.c @@ -230,10 +230,12 @@ break; case BUS_NOTIFY_BIND_DRIVER: od = to_omap_device(pdev); - if (od && (od->_state == OMAP_DEVICE_STATE_ENABLED) && - pm_runtime_status_suspended(dev)) { + if (od) { od->_driver_status = BUS_NOTIFY_BIND_DRIVER; - pm_runtime_set_active(dev); + if (od->_state == OMAP_DEVICE_STATE_ENABLED && + pm_runtime_status_suspended(dev)) { + pm_runtime_set_active(dev); + } } break; case BUS_NOTIFY_ADD_DEVICE: --- linux-azure-5.8-5.8.0.orig/arch/arm/mach-omap2/pmic-cpcap.c +++ linux-azure-5.8-5.8.0/arch/arm/mach-omap2/pmic-cpcap.c @@ -71,7 +71,7 @@ .vp_vstepmin = OMAP4_VP_VSTEPMIN_VSTEPMIN, .vp_vstepmax = OMAP4_VP_VSTEPMAX_VSTEPMAX, .vddmin = 900000, - .vddmax = 1350000, + .vddmax = 1375000, .vp_timeout_us = OMAP4_VP_VLIMITTO_TIMEOUT_US, .i2c_slave_addr = 0x44, .volt_reg_addr = 0x0, --- linux-azure-5.8-5.8.0.orig/arch/arm/mach-s3c24xx/mach-at2440evb.c +++ linux-azure-5.8-5.8.0/arch/arm/mach-s3c24xx/mach-at2440evb.c @@ -143,7 +143,7 @@ .dev_id = "s3c2410-sdi", .table = { /* Card detect S3C2410_GPG(10) */ - GPIO_LOOKUP("GPG", 10, "cd", GPIO_ACTIVE_LOW), + GPIO_LOOKUP("GPIOG", 10, "cd", GPIO_ACTIVE_LOW), { }, }, }; --- linux-azure-5.8-5.8.0.orig/arch/arm/mach-s3c24xx/mach-h1940.c +++ linux-azure-5.8-5.8.0/arch/arm/mach-s3c24xx/mach-h1940.c @@ -468,9 +468,9 @@ .dev_id = "s3c2410-sdi", .table = { /* Card detect S3C2410_GPF(5) */ - GPIO_LOOKUP("GPF", 5, "cd", GPIO_ACTIVE_LOW), + GPIO_LOOKUP("GPIOF", 5, "cd", GPIO_ACTIVE_LOW), /* Write protect S3C2410_GPH(8) */ - GPIO_LOOKUP("GPH", 8, "wp", GPIO_ACTIVE_LOW), + GPIO_LOOKUP("GPIOH", 8, "wp", GPIO_ACTIVE_LOW), { }, }, }; --- linux-azure-5.8-5.8.0.orig/arch/arm/mach-s3c24xx/mach-mini2440.c +++ linux-azure-5.8-5.8.0/arch/arm/mach-s3c24xx/mach-mini2440.c @@ -244,9 +244,9 @@ .dev_id = "s3c2410-sdi", .table = { /* Card detect S3C2410_GPG(8) */ - GPIO_LOOKUP("GPG", 8, "cd", GPIO_ACTIVE_LOW), + GPIO_LOOKUP("GPIOG", 8, "cd", GPIO_ACTIVE_LOW), /* Write protect S3C2410_GPH(8) */ - GPIO_LOOKUP("GPH", 8, "wp", GPIO_ACTIVE_HIGH), + GPIO_LOOKUP("GPIOH", 8, "wp", GPIO_ACTIVE_HIGH), { }, }, }; --- linux-azure-5.8-5.8.0.orig/arch/arm/mach-s3c24xx/mach-n30.c +++ linux-azure-5.8-5.8.0/arch/arm/mach-s3c24xx/mach-n30.c @@ -359,9 +359,9 @@ .dev_id = "s3c2410-sdi", .table = { /* Card detect S3C2410_GPF(1) */ - GPIO_LOOKUP("GPF", 1, "cd", GPIO_ACTIVE_LOW), + GPIO_LOOKUP("GPIOF", 1, "cd", GPIO_ACTIVE_LOW), /* Write protect S3C2410_GPG(10) */ - GPIO_LOOKUP("GPG", 10, "wp", GPIO_ACTIVE_LOW), + GPIO_LOOKUP("GPIOG", 10, "wp", GPIO_ACTIVE_LOW), { }, }, }; --- linux-azure-5.8-5.8.0.orig/arch/arm/mach-s3c24xx/mach-rx1950.c +++ linux-azure-5.8-5.8.0/arch/arm/mach-s3c24xx/mach-rx1950.c @@ -571,9 +571,9 @@ .dev_id = "s3c2410-sdi", .table = { /* Card detect S3C2410_GPF(5) */ - GPIO_LOOKUP("GPF", 5, "cd", GPIO_ACTIVE_LOW), + GPIO_LOOKUP("GPIOF", 5, "cd", GPIO_ACTIVE_LOW), /* Write protect S3C2410_GPH(8) */ - GPIO_LOOKUP("GPH", 8, "wp", GPIO_ACTIVE_LOW), + GPIO_LOOKUP("GPIOH", 8, "wp", GPIO_ACTIVE_LOW), { }, }, }; --- linux-azure-5.8-5.8.0.orig/arch/arm/mach-socfpga/pm.c +++ linux-azure-5.8-5.8.0/arch/arm/mach-socfpga/pm.c @@ -49,14 +49,14 @@ if (!ocram_pool) { pr_warn("%s: ocram pool unavailable!\n", __func__); ret = -ENODEV; - goto put_node; + goto put_device; } ocram_base = gen_pool_alloc(ocram_pool, socfpga_sdram_self_refresh_sz); if (!ocram_base) { pr_warn("%s: unable to alloc ocram!\n", __func__); ret = -ENOMEM; - goto put_node; + goto put_device; } ocram_pbase = gen_pool_virt_to_phys(ocram_pool, ocram_base); @@ -67,7 +67,7 @@ if (!suspend_ocram_base) { pr_warn("%s: __arm_ioremap_exec failed!\n", __func__); ret = -ENOMEM; - goto put_node; + goto put_device; } /* Copy the code that puts DDR in self refresh to ocram */ @@ -81,6 +81,8 @@ if (!socfpga_sdram_self_refresh_in_ocram) ret = -EFAULT; +put_device: + put_device(&pdev->dev); put_node: of_node_put(np); --- linux-azure-5.8-5.8.0.orig/arch/arm/mach-sunxi/sunxi.c +++ linux-azure-5.8-5.8.0/arch/arm/mach-sunxi/sunxi.c @@ -66,6 +66,7 @@ "allwinner,sun8i-h2-plus", "allwinner,sun8i-h3", "allwinner,sun8i-r40", + "allwinner,sun8i-v3", "allwinner,sun8i-v3s", NULL, }; --- linux-azure-5.8-5.8.0.orig/arch/arm/mm/Kconfig +++ linux-azure-5.8-5.8.0/arch/arm/mm/Kconfig @@ -743,6 +743,7 @@ config CPU_BIG_ENDIAN bool "Build big-endian kernel" depends on ARCH_SUPPORTS_BIG_ENDIAN + depends on !LD_IS_LLD help Say Y if you plan on running a kernel in big-endian mode. Note that your board must be properly built and your board --- linux-azure-5.8-5.8.0.orig/arch/arm/mm/cache-l2x0.c +++ linux-azure-5.8-5.8.0/arch/arm/mm/cache-l2x0.c @@ -1249,20 +1249,28 @@ ret = of_property_read_u32(np, "prefetch-data", &val); if (ret == 0) { - if (val) + if (val) { prefetch |= L310_PREFETCH_CTRL_DATA_PREFETCH; - else + *aux_val |= L310_PREFETCH_CTRL_DATA_PREFETCH; + } else { prefetch &= ~L310_PREFETCH_CTRL_DATA_PREFETCH; + *aux_val &= ~L310_PREFETCH_CTRL_DATA_PREFETCH; + } + *aux_mask &= ~L310_PREFETCH_CTRL_DATA_PREFETCH; } else if (ret != -EINVAL) { pr_err("L2C-310 OF prefetch-data property value is missing\n"); } ret = of_property_read_u32(np, "prefetch-instr", &val); if (ret == 0) { - if (val) + if (val) { prefetch |= L310_PREFETCH_CTRL_INSTR_PREFETCH; - else + *aux_val |= L310_PREFETCH_CTRL_INSTR_PREFETCH; + } else { prefetch &= ~L310_PREFETCH_CTRL_INSTR_PREFETCH; + *aux_val &= ~L310_PREFETCH_CTRL_INSTR_PREFETCH; + } + *aux_mask &= ~L310_PREFETCH_CTRL_INSTR_PREFETCH; } else if (ret != -EINVAL) { pr_err("L2C-310 OF prefetch-instr property value is missing\n"); } --- linux-azure-5.8-5.8.0.orig/arch/arm/plat-samsung/Kconfig +++ linux-azure-5.8-5.8.0/arch/arm/plat-samsung/Kconfig @@ -241,6 +241,7 @@ depends on PM && DEBUG_KERNEL depends on PLAT_S3C24XX || ARCH_S3C64XX || ARCH_S5PV210 depends on DEBUG_EXYNOS_UART || DEBUG_S3C24XX_UART || DEBUG_S3C2410_UART + depends on DEBUG_LL && MMU help Say Y here if you want verbose debugging from the PM Suspend and Resume code. See --- linux-azure-5.8-5.8.0.orig/arch/arm/probes/kprobes/opt-arm.c +++ linux-azure-5.8-5.8.0/arch/arm/probes/kprobes/opt-arm.c @@ -85,21 +85,21 @@ "optprobe_template_end:\n"); #define TMPL_VAL_IDX \ - ((unsigned long *)&optprobe_template_val - (unsigned long *)&optprobe_template_entry) + ((unsigned long *)optprobe_template_val - (unsigned long *)optprobe_template_entry) #define TMPL_CALL_IDX \ - ((unsigned long *)&optprobe_template_call - (unsigned long *)&optprobe_template_entry) + ((unsigned long *)optprobe_template_call - (unsigned long *)optprobe_template_entry) #define TMPL_END_IDX \ - ((unsigned long *)&optprobe_template_end - (unsigned long *)&optprobe_template_entry) + ((unsigned long *)optprobe_template_end - (unsigned long *)optprobe_template_entry) #define TMPL_ADD_SP \ - ((unsigned long *)&optprobe_template_add_sp - (unsigned long *)&optprobe_template_entry) + ((unsigned long *)optprobe_template_add_sp - (unsigned long *)optprobe_template_entry) #define TMPL_SUB_SP \ - ((unsigned long *)&optprobe_template_sub_sp - (unsigned long *)&optprobe_template_entry) + ((unsigned long *)optprobe_template_sub_sp - (unsigned long *)optprobe_template_entry) #define TMPL_RESTORE_BEGIN \ - ((unsigned long *)&optprobe_template_restore_begin - (unsigned long *)&optprobe_template_entry) + ((unsigned long *)optprobe_template_restore_begin - (unsigned long *)optprobe_template_entry) #define TMPL_RESTORE_ORIGN_INSN \ - ((unsigned long *)&optprobe_template_restore_orig_insn - (unsigned long *)&optprobe_template_entry) + ((unsigned long *)optprobe_template_restore_orig_insn - (unsigned long *)optprobe_template_entry) #define TMPL_RESTORE_END \ - ((unsigned long *)&optprobe_template_restore_end - (unsigned long *)&optprobe_template_entry) + ((unsigned long *)optprobe_template_restore_end - (unsigned long *)optprobe_template_entry) /* * ARM can always optimize an instruction when using ARM ISA, except @@ -234,7 +234,7 @@ } /* Copy arch-dep-instance from template. */ - memcpy(code, (unsigned long *)&optprobe_template_entry, + memcpy(code, (unsigned long *)optprobe_template_entry, TMPL_END_IDX * sizeof(kprobe_opcode_t)); /* Adjust buffer according to instruction. */ --- linux-azure-5.8-5.8.0.orig/arch/arm/vdso/Makefile +++ linux-azure-5.8-5.8.0/arch/arm/vdso/Makefile @@ -19,7 +19,7 @@ ldflags-$(CONFIG_CPU_ENDIAN_BE8) := --be8 ldflags-y := -Bsymbolic --no-undefined -soname=linux-vdso.so.1 \ -z max-page-size=4096 -nostdlib -shared $(ldflags-y) \ - --hash-style=sysv --build-id \ + --hash-style=sysv --build-id=sha1 \ -T obj-$(CONFIG_VDSO) += vdso.o --- linux-azure-5.8-5.8.0.orig/arch/arm/vfp/entry.S +++ linux-azure-5.8-5.8.0/arch/arm/vfp/entry.S @@ -37,20 +37,3 @@ .align 2 .LCvfp: .word vfp_vector - -@ This code is called if the VFP does not exist. It needs to flag the -@ failure to the VFP initialisation code. - - __INIT -ENTRY(vfp_testing_entry) - dec_preempt_count_ti r10, r4 - ldr r0, VFP_arch_address - str r0, [r0] @ set to non-zero value - ret r9 @ we have handled the fault -ENDPROC(vfp_testing_entry) - - .align 2 -VFP_arch_address: - .word VFP_arch - - __FINIT --- linux-azure-5.8-5.8.0.orig/arch/arm/vfp/vfphw.S +++ linux-azure-5.8-5.8.0/arch/arm/vfp/vfphw.S @@ -78,11 +78,6 @@ ENTRY(vfp_support_entry) DBGSTR3 "instr %08x pc %08x state %p", r0, r2, r10 - ldr r3, [sp, #S_PSR] @ Neither lazy restore nor FP exceptions - and r3, r3, #MODE_MASK @ are supported in kernel mode - teq r3, #USR_MODE - bne vfp_kmode_exception @ Returns through lr - VFPFMRX r1, FPEXC @ Is the VFP enabled? DBGSTR1 "fpexc %08x", r1 tst r1, #FPEXC_EN --- linux-azure-5.8-5.8.0.orig/arch/arm/vfp/vfpmodule.c +++ linux-azure-5.8-5.8.0/arch/arm/vfp/vfpmodule.c @@ -23,6 +23,7 @@ #include #include #include +#include #include #include "vfpinstr.h" @@ -31,7 +32,6 @@ /* * Our undef handlers (in entry.S) */ -asmlinkage void vfp_testing_entry(void); asmlinkage void vfp_support_entry(void); asmlinkage void vfp_null_entry(void); @@ -42,7 +42,7 @@ * Used in startup: set to non-zero if VFP checks fail * After startup, holds VFP architecture */ -unsigned int VFP_arch; +static unsigned int __initdata VFP_arch; /* * The pointer to the vfpstate structure of the thread which currently @@ -436,7 +436,7 @@ * present on all CPUs within a SMP complex. Needs to be called prior to * vfp_init(). */ -void vfp_disable(void) +void __init vfp_disable(void) { if (VFP_arch) { pr_debug("%s: should be called prior to vfp_init\n", __func__); @@ -642,7 +642,9 @@ return 0; } -void vfp_kmode_exception(void) +#ifdef CONFIG_KERNEL_MODE_NEON + +static int vfp_kmode_exception(struct pt_regs *regs, unsigned int instr) { /* * If we reach this point, a floating point exception has been raised @@ -660,9 +662,51 @@ pr_crit("BUG: unsupported FP instruction in kernel mode\n"); else pr_crit("BUG: FP instruction issued in kernel mode with FP unit disabled\n"); + pr_crit("FPEXC == 0x%08x\n", fmrx(FPEXC)); + return 1; } -#ifdef CONFIG_KERNEL_MODE_NEON +static struct undef_hook vfp_kmode_exception_hook[] = {{ + .instr_mask = 0xfe000000, + .instr_val = 0xf2000000, + .cpsr_mask = MODE_MASK | PSR_T_BIT, + .cpsr_val = SVC_MODE, + .fn = vfp_kmode_exception, +}, { + .instr_mask = 0xff100000, + .instr_val = 0xf4000000, + .cpsr_mask = MODE_MASK | PSR_T_BIT, + .cpsr_val = SVC_MODE, + .fn = vfp_kmode_exception, +}, { + .instr_mask = 0xef000000, + .instr_val = 0xef000000, + .cpsr_mask = MODE_MASK | PSR_T_BIT, + .cpsr_val = SVC_MODE | PSR_T_BIT, + .fn = vfp_kmode_exception, +}, { + .instr_mask = 0xff100000, + .instr_val = 0xf9000000, + .cpsr_mask = MODE_MASK | PSR_T_BIT, + .cpsr_val = SVC_MODE | PSR_T_BIT, + .fn = vfp_kmode_exception, +}, { + .instr_mask = 0x0c000e00, + .instr_val = 0x0c000a00, + .cpsr_mask = MODE_MASK, + .cpsr_val = SVC_MODE, + .fn = vfp_kmode_exception, +}}; + +static int __init vfp_kmode_exception_hook_init(void) +{ + int i; + + for (i = 0; i < ARRAY_SIZE(vfp_kmode_exception_hook); i++) + register_undef_hook(&vfp_kmode_exception_hook[i]); + return 0; +} +subsys_initcall(vfp_kmode_exception_hook_init); /* * Kernel-side NEON support functions @@ -708,6 +752,21 @@ #endif /* CONFIG_KERNEL_MODE_NEON */ +static int __init vfp_detect(struct pt_regs *regs, unsigned int instr) +{ + VFP_arch = UINT_MAX; /* mark as not present */ + regs->ARM_pc += 4; + return 0; +} + +static struct undef_hook vfp_detect_hook __initdata = { + .instr_mask = 0x0c000e00, + .instr_val = 0x0c000a00, + .cpsr_mask = MODE_MASK, + .cpsr_val = SVC_MODE, + .fn = vfp_detect, +}; + /* * VFP support code initialisation. */ @@ -728,10 +787,11 @@ * The handler is already setup to just log calls, so * we just need to read the VFPSID register. */ - vfp_vector = vfp_testing_entry; + register_undef_hook(&vfp_detect_hook); barrier(); vfpsid = fmrx(FPSID); barrier(); + unregister_undef_hook(&vfp_detect_hook); vfp_vector = vfp_null_entry; pr_info("VFP support v0.3: "); --- linux-azure-5.8-5.8.0.orig/arch/arm/xen/enlighten.c +++ linux-azure-5.8-5.8.0/arch/arm/xen/enlighten.c @@ -369,8 +369,6 @@ return -ENOMEM; } gnttab_init(); - if (!xen_initial_domain()) - xenbus_probe(NULL); /* * Making sure board specific code will not set up ops for --- linux-azure-5.8-5.8.0.orig/arch/arm/xen/p2m.c +++ linux-azure-5.8-5.8.0/arch/arm/xen/p2m.c @@ -95,8 +95,10 @@ for (i = 0; i < count; i++) { if (map_ops[i].status) continue; - set_phys_to_machine(map_ops[i].host_addr >> XEN_PAGE_SHIFT, - map_ops[i].dev_bus_addr >> XEN_PAGE_SHIFT); + if (unlikely(!set_phys_to_machine(map_ops[i].host_addr >> XEN_PAGE_SHIFT, + map_ops[i].dev_bus_addr >> XEN_PAGE_SHIFT))) { + return -ENOMEM; + } } return 0; --- linux-azure-5.8-5.8.0.orig/arch/arm64/Kconfig +++ linux-azure-5.8-5.8.0/arch/arm64/Kconfig @@ -509,7 +509,7 @@ help This option adds a workaround for ARM Cortex-A55 Erratum 1024718. - Affected Cortex-A55 cores (r0p0, r0p1, r1p0) could cause incorrect + Affected Cortex-A55 cores (all revisions) could cause incorrect update of the hardware dirty bit when the DBM/AP bits are updated without a break-before-make. The workaround is to disable the usage of hardware DBM locally on the affected cores. CPUs not affected by @@ -1133,6 +1133,7 @@ config FORCE_MAX_ZONEORDER int default "14" if (ARM64_64K_PAGES && TRANSPARENT_HUGEPAGE) + default "13" if (ARCH_THUNDER && ARM64_4K_PAGES) default "12" if (ARM64_16K_PAGES && TRANSPARENT_HUGEPAGE) default "11" help --- linux-azure-5.8-5.8.0.orig/arch/arm64/Kconfig.platforms +++ linux-azure-5.8-5.8.0/arch/arm64/Kconfig.platforms @@ -54,6 +54,7 @@ config ARCH_BERLIN bool "Marvell Berlin SoC Family" select DW_APB_ICTL + select DW_APB_TIMER_OF select GPIOLIB select PINCTRL help --- linux-azure-5.8-5.8.0.orig/arch/arm64/Makefile +++ linux-azure-5.8-5.8.0/arch/arm64/Makefile @@ -17,7 +17,7 @@ # Pass --no-apply-dynamic-relocs to restore pre-binutils-2.27 behaviour # for relative relocs, since this leads to better Image compression # with the relocation offsets always being zero. -LDFLAGS_vmlinux += -shared -Bsymbolic -z notext -z norelro \ +LDFLAGS_vmlinux += -shared -Bsymbolic -z notext \ $(call ld-option, --no-apply-dynamic-relocs) endif @@ -96,16 +96,20 @@ CHECKFLAGS += -D__AARCH64EB__ # Prefer the baremetal ELF build target, but not all toolchains include # it so fall back to the standard linux version if needed. -KBUILD_LDFLAGS += -EB $(call ld-option, -maarch64elfb, -maarch64linuxb) +KBUILD_LDFLAGS += -EB $(call ld-option, -maarch64elfb, -maarch64linuxb -z norelro) UTS_MACHINE := aarch64_be else KBUILD_CPPFLAGS += -mlittle-endian CHECKFLAGS += -D__AARCH64EL__ # Same as above, prefer ELF but fall back to linux target if needed. -KBUILD_LDFLAGS += -EL $(call ld-option, -maarch64elf, -maarch64linux) +KBUILD_LDFLAGS += -EL $(call ld-option, -maarch64elf, -maarch64linux -z norelro) UTS_MACHINE := aarch64 endif +ifeq ($(CONFIG_LD_IS_LLD), y) +KBUILD_LDFLAGS += -z norelro +endif + CHECKFLAGS += -D__aarch64__ ifeq ($(CONFIG_ARM64_MODULE_PLTS),y) @@ -158,6 +162,8 @@ PHONY += vdso_install vdso_install: $(Q)$(MAKE) $(build)=arch/arm64/kernel/vdso $@ + $(if $(CONFIG_COMPAT_VDSO), \ + $(Q)$(MAKE) $(build)=arch/arm64/kernel/vdso32 $@) # We use MRPROPER_FILES and CLEAN_FILES now archclean: --- linux-azure-5.8-5.8.0.orig/arch/arm64/boot/dts/actions/s700.dtsi +++ linux-azure-5.8-5.8.0/arch/arm64/boot/dts/actions/s700.dtsi @@ -231,7 +231,7 @@ pinctrl: pinctrl@e01b0000 { compatible = "actions,s700-pinctrl"; - reg = <0x0 0xe01b0000 0x0 0x1000>; + reg = <0x0 0xe01b0000 0x0 0x100>; clocks = <&cmu CLK_GPIO>; gpio-controller; gpio-ranges = <&pinctrl 0 0 136>; --- linux-azure-5.8-5.8.0.orig/arch/arm64/boot/dts/allwinner/sun50i-a64-bananapi-m64.dts +++ linux-azure-5.8-5.8.0/arch/arm64/boot/dts/allwinner/sun50i-a64-bananapi-m64.dts @@ -105,7 +105,7 @@ &emac { pinctrl-names = "default"; pinctrl-0 = <&rgmii_pins>; - phy-mode = "rgmii"; + phy-mode = "rgmii-id"; phy-handle = <&ext_rgmii_phy>; phy-supply = <®_dc1sw>; status = "okay"; --- linux-azure-5.8-5.8.0.orig/arch/arm64/boot/dts/allwinner/sun50i-a64-orangepi-win.dts +++ linux-azure-5.8-5.8.0/arch/arm64/boot/dts/allwinner/sun50i-a64-orangepi-win.dts @@ -120,7 +120,7 @@ &emac { pinctrl-names = "default"; pinctrl-0 = <&rgmii_pins>; - phy-mode = "rgmii"; + phy-mode = "rgmii-id"; phy-handle = <&ext_rgmii_phy>; phy-supply = <®_gmac_3v3>; status = "okay"; --- linux-azure-5.8-5.8.0.orig/arch/arm64/boot/dts/allwinner/sun50i-a64-pine64-plus.dts +++ linux-azure-5.8-5.8.0/arch/arm64/boot/dts/allwinner/sun50i-a64-pine64-plus.dts @@ -13,7 +13,7 @@ &emac { pinctrl-names = "default"; pinctrl-0 = <&rgmii_pins>; - phy-mode = "rgmii"; + phy-mode = "rgmii-txid"; phy-handle = <&ext_rgmii_phy>; status = "okay"; }; --- linux-azure-5.8-5.8.0.orig/arch/arm64/boot/dts/allwinner/sun50i-a64-pinebook.dts +++ linux-azure-5.8-5.8.0/arch/arm64/boot/dts/allwinner/sun50i-a64-pinebook.dts @@ -126,8 +126,6 @@ }; &ehci0 { - phys = <&usbphy 0>; - phy-names = "usb"; status = "okay"; }; @@ -169,6 +167,7 @@ pinctrl-0 = <&mmc2_pins>, <&mmc2_ds_pin>; vmmc-supply = <®_dcdc1>; vqmmc-supply = <®_eldo1>; + max-frequency = <200000000>; bus-width = <8>; non-removable; cap-mmc-hw-reset; @@ -177,8 +176,6 @@ }; &ohci0 { - phys = <&usbphy 0>; - phy-names = "usb"; status = "okay"; }; --- linux-azure-5.8-5.8.0.orig/arch/arm64/boot/dts/allwinner/sun50i-a64-pinephone.dtsi +++ linux-azure-5.8-5.8.0/arch/arm64/boot/dts/allwinner/sun50i-a64-pinephone.dtsi @@ -279,7 +279,7 @@ ®_dldo4 { regulator-min-microvolt = <1800000>; - regulator-max-microvolt = <3300000>; + regulator-max-microvolt = <1800000>; regulator-name = "vcc-wifi-io"; }; --- linux-azure-5.8-5.8.0.orig/arch/arm64/boot/dts/allwinner/sun50i-a64-sopine.dtsi +++ linux-azure-5.8-5.8.0/arch/arm64/boot/dts/allwinner/sun50i-a64-sopine.dtsi @@ -32,7 +32,6 @@ pinctrl-names = "default"; pinctrl-0 = <&mmc0_pins>; vmmc-supply = <®_dcdc1>; - non-removable; disable-wp; bus-width = <4>; cd-gpios = <&pio 5 6 GPIO_ACTIVE_LOW>; /* PF6 */ --- linux-azure-5.8-5.8.0.orig/arch/arm64/boot/dts/allwinner/sun50i-a64.dtsi +++ linux-azure-5.8-5.8.0/arch/arm64/boot/dts/allwinner/sun50i-a64.dtsi @@ -513,7 +513,7 @@ resets = <&ccu RST_BUS_MMC2>; reset-names = "ahb"; interrupts = ; - max-frequency = <200000000>; + max-frequency = <150000000>; status = "disabled"; #address-cells = <1>; #size-cells = <0>; @@ -592,6 +592,8 @@ <&ccu CLK_USB_OHCI0>; resets = <&ccu RST_BUS_OHCI0>, <&ccu RST_BUS_EHCI0>; + phys = <&usbphy 0>; + phy-names = "usb"; status = "disabled"; }; @@ -602,6 +604,8 @@ clocks = <&ccu CLK_BUS_OHCI0>, <&ccu CLK_USB_OHCI0>; resets = <&ccu RST_BUS_OHCI0>; + phys = <&usbphy 0>; + phy-names = "usb"; status = "disabled"; }; --- linux-azure-5.8-5.8.0.orig/arch/arm64/boot/dts/allwinner/sun50i-h5-libretech-all-h5-cc.dts +++ linux-azure-5.8-5.8.0/arch/arm64/boot/dts/allwinner/sun50i-h5-libretech-all-h5-cc.dts @@ -36,7 +36,7 @@ pinctrl-0 = <&emac_rgmii_pins>; phy-supply = <®_gmac_3v3>; phy-handle = <&ext_rgmii_phy>; - phy-mode = "rgmii"; + phy-mode = "rgmii-id"; /delete-property/ allwinner,leds-active-low; status = "okay"; }; --- linux-azure-5.8-5.8.0.orig/arch/arm64/boot/dts/allwinner/sun50i-h5-orangepi-pc2.dts +++ linux-azure-5.8-5.8.0/arch/arm64/boot/dts/allwinner/sun50i-h5-orangepi-pc2.dts @@ -123,7 +123,7 @@ pinctrl-0 = <&emac_rgmii_pins>; phy-supply = <®_gmac_3v3>; phy-handle = <&ext_rgmii_phy>; - phy-mode = "rgmii"; + phy-mode = "rgmii-id"; status = "okay"; }; --- linux-azure-5.8-5.8.0.orig/arch/arm64/boot/dts/allwinner/sun50i-h5-orangepi-prime.dts +++ linux-azure-5.8-5.8.0/arch/arm64/boot/dts/allwinner/sun50i-h5-orangepi-prime.dts @@ -124,7 +124,7 @@ pinctrl-0 = <&emac_rgmii_pins>; phy-supply = <®_gmac_3v3>; phy-handle = <&ext_rgmii_phy>; - phy-mode = "rgmii"; + phy-mode = "rgmii-id"; status = "okay"; }; --- linux-azure-5.8-5.8.0.orig/arch/arm64/boot/dts/allwinner/sun50i-h5.dtsi +++ linux-azure-5.8-5.8.0/arch/arm64/boot/dts/allwinner/sun50i-h5.dtsi @@ -125,8 +125,7 @@ , , , - , - ; + ; interrupt-names = "gp", "gpmmu", "pp", @@ -137,8 +136,7 @@ "pp2", "ppmmu2", "pp3", - "ppmmu3", - "pmu"; + "ppmmu3"; clocks = <&ccu CLK_BUS_GPU>, <&ccu CLK_GPU>; clock-names = "bus", "core"; resets = <&ccu RST_BUS_GPU>; --- linux-azure-5.8-5.8.0.orig/arch/arm64/boot/dts/allwinner/sun50i-h6-beelink-gs1.dts +++ linux-azure-5.8-5.8.0/arch/arm64/boot/dts/allwinner/sun50i-h6-beelink-gs1.dts @@ -97,7 +97,7 @@ &emac { pinctrl-names = "default"; pinctrl-0 = <&ext_rgmii_pins>; - phy-mode = "rgmii"; + phy-mode = "rgmii-id"; phy-handle = <&ext_rgmii_phy>; phy-supply = <®_aldo2>; status = "okay"; --- linux-azure-5.8-5.8.0.orig/arch/arm64/boot/dts/allwinner/sun50i-h6-pine-h64.dts +++ linux-azure-5.8-5.8.0/arch/arm64/boot/dts/allwinner/sun50i-h6-pine-h64.dts @@ -100,7 +100,7 @@ &emac { pinctrl-names = "default"; pinctrl-0 = <&ext_rgmii_pins>; - phy-mode = "rgmii"; + phy-mode = "rgmii-id"; phy-handle = <&ext_rgmii_phy>; phy-supply = <®_gmac_3v3>; allwinner,rx-delay-ps = <200>; --- linux-azure-5.8-5.8.0.orig/arch/arm64/boot/dts/allwinner/sun50i-h6.dtsi +++ linux-azure-5.8-5.8.0/arch/arm64/boot/dts/allwinner/sun50i-h6.dtsi @@ -435,6 +435,7 @@ interrupts = ; pinctrl-names = "default"; pinctrl-0 = <&mmc0_pins>; + max-frequency = <150000000>; status = "disabled"; #address-cells = <1>; #size-cells = <0>; @@ -451,6 +452,7 @@ interrupts = ; pinctrl-names = "default"; pinctrl-0 = <&mmc1_pins>; + max-frequency = <150000000>; status = "disabled"; #address-cells = <1>; #size-cells = <0>; @@ -467,6 +469,7 @@ interrupts = ; pinctrl-names = "default"; pinctrl-0 = <&mmc2_pins>; + max-frequency = <150000000>; status = "disabled"; #address-cells = <1>; #size-cells = <0>; @@ -666,6 +669,8 @@ <&ccu CLK_USB_OHCI0>; resets = <&ccu RST_BUS_OHCI0>, <&ccu RST_BUS_EHCI0>; + phys = <&usb2phy 0>; + phy-names = "usb"; status = "disabled"; }; @@ -676,6 +681,8 @@ clocks = <&ccu CLK_BUS_OHCI0>, <&ccu CLK_USB_OHCI0>; resets = <&ccu RST_BUS_OHCI0>; + phys = <&usb2phy 0>; + phy-names = "usb"; status = "disabled"; }; --- linux-azure-5.8-5.8.0.orig/arch/arm64/boot/dts/altera/socfpga_stratix10_socdk.dts +++ linux-azure-5.8-5.8.0/arch/arm64/boot/dts/altera/socfpga_stratix10_socdk.dts @@ -159,7 +159,7 @@ flash@0 { #address-cells = <1>; #size-cells = <1>; - compatible = "n25q00a"; + compatible = "micron,mt25qu02g", "jedec,spi-nor"; reg = <0>; spi-max-frequency = <100000000>; --- linux-azure-5.8-5.8.0.orig/arch/arm64/boot/dts/altera/socfpga_stratix10_socdk_nand.dts +++ linux-azure-5.8-5.8.0/arch/arm64/boot/dts/altera/socfpga_stratix10_socdk_nand.dts @@ -192,7 +192,7 @@ flash@0 { #address-cells = <1>; #size-cells = <1>; - compatible = "n25q00a"; + compatible = "micron,mt25qu02g", "jedec,spi-nor"; reg = <0>; spi-max-frequency = <100000000>; --- linux-azure-5.8-5.8.0.orig/arch/arm64/boot/dts/amlogic/meson-axg.dtsi +++ linux-azure-5.8-5.8.0/arch/arm64/boot/dts/amlogic/meson-axg.dtsi @@ -185,6 +185,8 @@ clock-names = "stmmaceth", "clkin0", "clkin1"; rx-fifo-depth = <4096>; tx-fifo-depth = <2048>; + resets = <&reset RESET_ETHERNET>; + reset-names = "stmmaceth"; status = "disabled"; }; --- linux-azure-5.8-5.8.0.orig/arch/arm64/boot/dts/amlogic/meson-g12-common.dtsi +++ linux-azure-5.8-5.8.0/arch/arm64/boot/dts/amlogic/meson-g12-common.dtsi @@ -176,7 +176,7 @@ }; ethmac: ethernet@ff3f0000 { - compatible = "amlogic,meson-axg-dwmac", + compatible = "amlogic,meson-g12a-dwmac", "snps,dwmac-3.70a", "snps,dwmac"; reg = <0x0 0xff3f0000 0x0 0x10000>, @@ -189,6 +189,8 @@ clock-names = "stmmaceth", "clkin0", "clkin1"; rx-fifo-depth = <4096>; tx-fifo-depth = <2048>; + resets = <&reset RESET_ETHERNET>; + reset-names = "stmmaceth"; status = "disabled"; mdio0: mdio { @@ -247,6 +249,8 @@ hwrng: rng@218 { compatible = "amlogic,meson-rng"; reg = <0x0 0x218 0x0 0x4>; + clocks = <&clkc CLKID_RNG0>; + clock-names = "core"; }; }; @@ -2345,7 +2349,7 @@ interrupts = ; dr_mode = "host"; snps,dis_u2_susphy_quirk; - snps,quirk-frame-length-adjustment; + snps,quirk-frame-length-adjustment = <0x20>; snps,parkmode-disable-ss-quirk; }; }; --- linux-azure-5.8-5.8.0.orig/arch/arm64/boot/dts/amlogic/meson-g12a-x96-max.dts +++ linux-azure-5.8-5.8.0/arch/arm64/boot/dts/amlogic/meson-g12a-x96-max.dts @@ -340,7 +340,7 @@ eee-broken-1000t; reset-assert-us = <10000>; - reset-deassert-us = <30000>; + reset-deassert-us = <80000>; reset-gpios = <&gpio GPIOZ_15 (GPIO_ACTIVE_LOW | GPIO_OPEN_DRAIN)>; interrupt-parent = <&gpio_intc>; --- linux-azure-5.8-5.8.0.orig/arch/arm64/boot/dts/amlogic/meson-g12b-odroid-n2.dts +++ linux-azure-5.8-5.8.0/arch/arm64/boot/dts/amlogic/meson-g12b-odroid-n2.dts @@ -333,7 +333,7 @@ max-speed = <1000>; reset-assert-us = <10000>; - reset-deassert-us = <30000>; + reset-deassert-us = <80000>; reset-gpios = <&gpio GPIOZ_15 (GPIO_ACTIVE_LOW | GPIO_OPEN_DRAIN)>; interrupt-parent = <&gpio_intc>; --- linux-azure-5.8-5.8.0.orig/arch/arm64/boot/dts/amlogic/meson-g12b-w400.dtsi +++ linux-azure-5.8-5.8.0/arch/arm64/boot/dts/amlogic/meson-g12b-w400.dtsi @@ -264,7 +264,7 @@ max-speed = <1000>; reset-assert-us = <10000>; - reset-deassert-us = <30000>; + reset-deassert-us = <80000>; reset-gpios = <&gpio GPIOZ_15 (GPIO_ACTIVE_LOW | GPIO_OPEN_DRAIN)>; interrupt-parent = <&gpio_intc>; @@ -336,9 +336,11 @@ bus-width = <4>; cap-sd-highspeed; - sd-uhs-sdr50; max-frequency = <100000000>; + /* WiFi firmware requires power to be kept while in suspend */ + keep-power-in-suspend; + non-removable; disable-wp; @@ -398,7 +400,7 @@ shutdown-gpios = <&gpio GPIOX_17 GPIO_ACTIVE_HIGH>; max-speed = <2000000>; clocks = <&wifi32k>; - clock-names = "lpo"; + clock-names = "lpo"; }; }; --- linux-azure-5.8-5.8.0.orig/arch/arm64/boot/dts/amlogic/meson-g12b.dtsi +++ linux-azure-5.8-5.8.0/arch/arm64/boot/dts/amlogic/meson-g12b.dtsi @@ -135,3 +135,7 @@ }; }; }; + +&mali { + dma-coherent; +}; --- linux-azure-5.8-5.8.0.orig/arch/arm64/boot/dts/amlogic/meson-gx.dtsi +++ linux-azure-5.8-5.8.0/arch/arm64/boot/dts/amlogic/meson-gx.dtsi @@ -12,6 +12,7 @@ #include #include #include +#include #include / { @@ -574,6 +575,8 @@ interrupt-names = "macirq"; rx-fifo-depth = <4096>; tx-fifo-depth = <2048>; + resets = <&reset RESET_ETHERNET>; + reset-names = "stmmaceth"; status = "disabled"; }; --- linux-azure-5.8-5.8.0.orig/arch/arm64/boot/dts/amlogic/meson-gxbb-nanopi-k2.dts +++ linux-azure-5.8-5.8.0/arch/arm64/boot/dts/amlogic/meson-gxbb-nanopi-k2.dts @@ -165,7 +165,7 @@ reg = <0>; reset-assert-us = <10000>; - reset-deassert-us = <30000>; + reset-deassert-us = <80000>; reset-gpios = <&gpio GPIOZ_14 GPIO_ACTIVE_LOW>; interrupt-parent = <&gpio_intc>; --- linux-azure-5.8-5.8.0.orig/arch/arm64/boot/dts/amlogic/meson-gxbb-odroidc2.dts +++ linux-azure-5.8-5.8.0/arch/arm64/boot/dts/amlogic/meson-gxbb-odroidc2.dts @@ -200,7 +200,7 @@ reg = <0>; reset-assert-us = <10000>; - reset-deassert-us = <30000>; + reset-deassert-us = <80000>; reset-gpios = <&gpio GPIOZ_14 GPIO_ACTIVE_LOW>; interrupt-parent = <&gpio_intc>; --- linux-azure-5.8-5.8.0.orig/arch/arm64/boot/dts/amlogic/meson-gxbb-vega-s95.dtsi +++ linux-azure-5.8-5.8.0/arch/arm64/boot/dts/amlogic/meson-gxbb-vega-s95.dtsi @@ -126,7 +126,7 @@ reg = <0>; reset-assert-us = <10000>; - reset-deassert-us = <30000>; + reset-deassert-us = <80000>; reset-gpios = <&gpio GPIOZ_14 GPIO_ACTIVE_LOW>; interrupt-parent = <&gpio_intc>; --- linux-azure-5.8-5.8.0.orig/arch/arm64/boot/dts/amlogic/meson-gxbb-wetek.dtsi +++ linux-azure-5.8-5.8.0/arch/arm64/boot/dts/amlogic/meson-gxbb-wetek.dtsi @@ -147,7 +147,7 @@ reg = <0>; reset-assert-us = <10000>; - reset-deassert-us = <30000>; + reset-deassert-us = <80000>; reset-gpios = <&gpio GPIOZ_14 GPIO_ACTIVE_LOW>; interrupt-parent = <&gpio_intc>; --- linux-azure-5.8-5.8.0.orig/arch/arm64/boot/dts/amlogic/meson-gxl-s905d-p230.dts +++ linux-azure-5.8-5.8.0/arch/arm64/boot/dts/amlogic/meson-gxl-s905d-p230.dts @@ -82,7 +82,7 @@ /* External PHY reset is shared with internal PHY Led signal */ reset-assert-us = <10000>; - reset-deassert-us = <30000>; + reset-deassert-us = <80000>; reset-gpios = <&gpio GPIOZ_14 GPIO_ACTIVE_LOW>; interrupt-parent = <&gpio_intc>; --- linux-azure-5.8-5.8.0.orig/arch/arm64/boot/dts/amlogic/meson-gxm-khadas-vim2.dts +++ linux-azure-5.8-5.8.0/arch/arm64/boot/dts/amlogic/meson-gxm-khadas-vim2.dts @@ -194,7 +194,7 @@ reg = <0>; reset-assert-us = <10000>; - reset-deassert-us = <30000>; + reset-deassert-us = <80000>; reset-gpios = <&gpio GPIOZ_14 GPIO_ACTIVE_LOW>; interrupt-parent = <&gpio_intc>; @@ -341,7 +341,7 @@ #size-cells = <1>; compatible = "winbond,w25q16", "jedec,spi-nor"; reg = <0>; - spi-max-frequency = <3000000>; + spi-max-frequency = <104000000>; }; }; --- linux-azure-5.8-5.8.0.orig/arch/arm64/boot/dts/amlogic/meson-gxm-nexbox-a1.dts +++ linux-azure-5.8-5.8.0/arch/arm64/boot/dts/amlogic/meson-gxm-nexbox-a1.dts @@ -112,7 +112,7 @@ max-speed = <1000>; reset-assert-us = <10000>; - reset-deassert-us = <30000>; + reset-deassert-us = <80000>; reset-gpios = <&gpio GPIOZ_14 GPIO_ACTIVE_LOW>; }; }; --- linux-azure-5.8-5.8.0.orig/arch/arm64/boot/dts/amlogic/meson-gxm-q200.dts +++ linux-azure-5.8-5.8.0/arch/arm64/boot/dts/amlogic/meson-gxm-q200.dts @@ -64,7 +64,7 @@ /* External PHY reset is shared with internal PHY Led signal */ reset-assert-us = <10000>; - reset-deassert-us = <30000>; + reset-deassert-us = <80000>; reset-gpios = <&gpio GPIOZ_14 GPIO_ACTIVE_LOW>; interrupt-parent = <&gpio_intc>; --- linux-azure-5.8-5.8.0.orig/arch/arm64/boot/dts/amlogic/meson-gxm-rbox-pro.dts +++ linux-azure-5.8-5.8.0/arch/arm64/boot/dts/amlogic/meson-gxm-rbox-pro.dts @@ -114,7 +114,7 @@ max-speed = <1000>; reset-assert-us = <10000>; - reset-deassert-us = <30000>; + reset-deassert-us = <80000>; reset-gpios = <&gpio GPIOZ_14 GPIO_ACTIVE_LOW>; }; }; --- linux-azure-5.8-5.8.0.orig/arch/arm64/boot/dts/amlogic/meson-khadas-vim3.dtsi +++ linux-azure-5.8-5.8.0/arch/arm64/boot/dts/amlogic/meson-khadas-vim3.dtsi @@ -41,13 +41,13 @@ led-white { label = "vim3:white:sys"; - gpios = <&gpio_ao GPIOAO_4 GPIO_ACTIVE_LOW>; + gpios = <&gpio_ao GPIOAO_4 GPIO_ACTIVE_HIGH>; linux,default-trigger = "heartbeat"; }; led-red { label = "vim3:red"; - gpios = <&gpio_expander 5 GPIO_ACTIVE_LOW>; + gpios = <&gpio_expander 5 GPIO_ACTIVE_HIGH>; }; }; @@ -270,7 +270,6 @@ bus-width = <4>; cap-sd-highspeed; - sd-uhs-sdr50; max-frequency = <100000000>; non-removable; --- linux-azure-5.8-5.8.0.orig/arch/arm64/boot/dts/amlogic/meson-sm1-khadas-vim3l.dts +++ linux-azure-5.8-5.8.0/arch/arm64/boot/dts/amlogic/meson-sm1-khadas-vim3l.dts @@ -93,3 +93,7 @@ phy-names = "usb2-phy0", "usb2-phy1"; }; */ + +&sd_emmc_a { + sd-uhs-sdr50; +}; --- linux-azure-5.8-5.8.0.orig/arch/arm64/boot/dts/amlogic/meson-sm1-odroid-c4.dts +++ linux-azure-5.8-5.8.0/arch/arm64/boot/dts/amlogic/meson-sm1-odroid-c4.dts @@ -51,7 +51,7 @@ regulator-min-microvolt = <3300000>; regulator-max-microvolt = <3300000>; - gpio = <&gpio_ao GPIOAO_3 GPIO_ACTIVE_HIGH>; + gpio = <&gpio_ao GPIOAO_3 GPIO_OPEN_DRAIN>; enable-active-high; regulator-always-on; }; --- linux-azure-5.8-5.8.0.orig/arch/arm64/boot/dts/amlogic/meson-sm1.dtsi +++ linux-azure-5.8-5.8.0/arch/arm64/boot/dts/amlogic/meson-sm1.dtsi @@ -130,7 +130,7 @@ opp-microvolt = <790000>; }; - opp-1512000000 { + opp-1500000000 { opp-hz = /bits/ 64 <1500000000>; opp-microvolt = <800000>; }; --- linux-azure-5.8-5.8.0.orig/arch/arm64/boot/dts/broadcom/northstar2/ns2.dtsi +++ linux-azure-5.8-5.8.0/arch/arm64/boot/dts/broadcom/northstar2/ns2.dtsi @@ -745,7 +745,7 @@ }; qspi: spi@66470200 { - compatible = "brcm,spi-bcm-qspi", "brcm,spi-ns2-qspi"; + compatible = "brcm,spi-ns2-qspi", "brcm,spi-bcm-qspi"; reg = <0x66470200 0x184>, <0x66470000 0x124>, <0x67017408 0x004>, --- linux-azure-5.8-5.8.0.orig/arch/arm64/boot/dts/broadcom/stingray/stingray-usb.dtsi +++ linux-azure-5.8-5.8.0/arch/arm64/boot/dts/broadcom/stingray/stingray-usb.dtsi @@ -4,21 +4,26 @@ */ usb { compatible = "simple-bus"; - dma-ranges; - #address-cells = <1>; - #size-cells = <1>; - ranges = <0x0 0x0 0x68500000 0x00400000>; + #address-cells = <2>; + #size-cells = <2>; + ranges = <0x0 0x0 0x0 0x68500000 0x0 0x00400000>; + + /* + * Internally, USB bus to the interconnect can only address up + * to 40-bit + */ + dma-ranges = <0 0 0 0 0x100 0x0>; usbphy0: usb-phy@0 { compatible = "brcm,sr-usb-combo-phy"; - reg = <0x00000000 0x100>; + reg = <0x0 0x00000000 0x0 0x100>; #phy-cells = <1>; status = "disabled"; }; xhci0: usb@1000 { compatible = "generic-xhci"; - reg = <0x00001000 0x1000>; + reg = <0x0 0x00001000 0x0 0x1000>; interrupts = ; phys = <&usbphy0 1>, <&usbphy0 0>; phy-names = "phy0", "phy1"; @@ -28,7 +33,7 @@ bdc0: usb@2000 { compatible = "brcm,bdc-v0.16"; - reg = <0x00002000 0x1000>; + reg = <0x0 0x00002000 0x0 0x1000>; interrupts = ; phys = <&usbphy0 0>, <&usbphy0 1>; phy-names = "phy0", "phy1"; @@ -38,21 +43,21 @@ usbphy1: usb-phy@10000 { compatible = "brcm,sr-usb-combo-phy"; - reg = <0x00010000 0x100>; + reg = <0x0 0x00010000 0x0 0x100>; #phy-cells = <1>; status = "disabled"; }; usbphy2: usb-phy@20000 { compatible = "brcm,sr-usb-hs-phy"; - reg = <0x00020000 0x100>; + reg = <0x0 0x00020000 0x0 0x100>; #phy-cells = <0>; status = "disabled"; }; xhci1: usb@11000 { compatible = "generic-xhci"; - reg = <0x00011000 0x1000>; + reg = <0x0 0x00011000 0x0 0x1000>; interrupts = ; phys = <&usbphy1 1>, <&usbphy2>, <&usbphy1 0>; phy-names = "phy0", "phy1", "phy2"; @@ -62,7 +67,7 @@ bdc1: usb@21000 { compatible = "brcm,bdc-v0.16"; - reg = <0x00021000 0x1000>; + reg = <0x0 0x00021000 0x0 0x1000>; interrupts = ; phys = <&usbphy2>; phy-names = "phy0"; --- linux-azure-5.8-5.8.0.orig/arch/arm64/boot/dts/exynos/exynos5433-tm2-common.dtsi +++ linux-azure-5.8-5.8.0/arch/arm64/boot/dts/exynos/exynos5433-tm2-common.dtsi @@ -389,7 +389,7 @@ s2mps13-pmic@66 { compatible = "samsung,s2mps13-pmic"; interrupt-parent = <&gpa0>; - interrupts = <7 IRQ_TYPE_NONE>; + interrupts = <7 IRQ_TYPE_LEVEL_LOW>; reg = <0x66>; samsung,s2mps11-wrstbi-ground; --- linux-azure-5.8-5.8.0.orig/arch/arm64/boot/dts/exynos/exynos7-espresso.dts +++ linux-azure-5.8-5.8.0/arch/arm64/boot/dts/exynos/exynos7-espresso.dts @@ -90,7 +90,7 @@ s2mps15_pmic@66 { compatible = "samsung,s2mps15-pmic"; reg = <0x66>; - interrupts = <2 IRQ_TYPE_NONE>; + interrupts = <2 IRQ_TYPE_LEVEL_LOW>; interrupt-parent = <&gpa0>; pinctrl-names = "default"; pinctrl-0 = <&pmic_irq>; @@ -157,6 +157,7 @@ regulator-min-microvolt = <700000>; regulator-max-microvolt = <1150000>; regulator-enable-ramp-delay = <125>; + regulator-always-on; }; ldo8_reg: LDO8 { --- linux-azure-5.8-5.8.0.orig/arch/arm64/boot/dts/exynos/exynos7.dtsi +++ linux-azure-5.8-5.8.0/arch/arm64/boot/dts/exynos/exynos7.dtsi @@ -79,8 +79,10 @@ }; psci { - compatible = "arm,psci-0.2"; + compatible = "arm,psci"; method = "smc"; + cpu_off = <0x84000002>; + cpu_on = <0xC4000003>; }; soc: soc { @@ -483,13 +485,6 @@ pmu_system_controller: system-controller@105c0000 { compatible = "samsung,exynos7-pmu", "syscon"; reg = <0x105c0000 0x5000>; - - reboot: syscon-reboot { - compatible = "syscon-reboot"; - regmap = <&pmu_system_controller>; - offset = <0x0400>; - mask = <0x1>; - }; }; rtc: rtc@10590000 { @@ -650,3 +645,4 @@ }; #include "exynos7-pinctrl.dtsi" +#include "arm/exynos-syscon-restart.dtsi" --- linux-azure-5.8-5.8.0.orig/arch/arm64/boot/dts/freescale/Makefile +++ linux-azure-5.8-5.8.0/arch/arm64/boot/dts/freescale/Makefile @@ -28,6 +28,7 @@ dtb-$(CONFIG_ARCH_LAYERSCAPE) += fsl-lx2160a-qds.dtb dtb-$(CONFIG_ARCH_LAYERSCAPE) += fsl-lx2160a-rdb.dtb +dtb-$(CONFIG_ARCH_MXC) += imx8mm-beacon-kit.dtb dtb-$(CONFIG_ARCH_MXC) += imx8mm-evk.dtb dtb-$(CONFIG_ARCH_MXC) += imx8mn-evk.dtb dtb-$(CONFIG_ARCH_MXC) += imx8mn-ddr4-evk.dtb --- linux-azure-5.8-5.8.0.orig/arch/arm64/boot/dts/freescale/fsl-ls1028a-kontron-sl28.dts +++ linux-azure-5.8-5.8.0/arch/arm64/boot/dts/freescale/fsl-ls1028a-kontron-sl28.dts @@ -121,20 +121,10 @@ }; partition@210000 { - reg = <0x210000 0x0f0000>; + reg = <0x210000 0x1d0000>; label = "bootloader"; }; - partition@300000 { - reg = <0x300000 0x040000>; - label = "DP firmware"; - }; - - partition@340000 { - reg = <0x340000 0x0a0000>; - label = "trusted firmware"; - }; - partition@3e0000 { reg = <0x3e0000 0x020000>; label = "bootloader environment"; --- linux-azure-5.8-5.8.0.orig/arch/arm64/boot/dts/freescale/fsl-ls1028a.dtsi +++ linux-azure-5.8-5.8.0/arch/arm64/boot/dts/freescale/fsl-ls1028a.dtsi @@ -89,7 +89,7 @@ reboot { compatible ="syscon-reboot"; regmap = <&rst>; - offset = <0xb0>; + offset = <0>; mask = <0x02>; }; @@ -285,7 +285,7 @@ <0x0 0x20000000 0x0 0x10000000>; reg-names = "fspi_base", "fspi_mmap"; interrupts = ; - clocks = <&clockgen 4 3>, <&clockgen 4 3>; + clocks = <&clockgen 2 0>, <&clockgen 2 0>; clock-names = "fspi_en", "fspi"; status = "disabled"; }; @@ -910,7 +910,7 @@ ethernet@0,4 { compatible = "fsl,enetc-ptp"; reg = <0x000400 0 0 0 0>; - clocks = <&clockgen 4 0>; + clocks = <&clockgen 2 3>; little-endian; fsl,extts-fifo; }; --- linux-azure-5.8-5.8.0.orig/arch/arm64/boot/dts/freescale/fsl-ls1046a.dtsi +++ linux-azure-5.8-5.8.0/arch/arm64/boot/dts/freescale/fsl-ls1046a.dtsi @@ -304,7 +304,7 @@ dcfg: dcfg@1ee0000 { compatible = "fsl,ls1046a-dcfg", "syscon"; - reg = <0x0 0x1ee0000 0x0 0x10000>; + reg = <0x0 0x1ee0000 0x0 0x1000>; big-endian; }; --- linux-azure-5.8-5.8.0.orig/arch/arm64/boot/dts/freescale/imx8mm-beacon-som.dtsi +++ linux-azure-5.8-5.8.0/arch/arm64/boot/dts/freescale/imx8mm-beacon-som.dtsi @@ -210,6 +210,7 @@ host-wakeup-gpios = <&gpio2 8 GPIO_ACTIVE_HIGH>; device-wakeup-gpios = <&gpio2 7 GPIO_ACTIVE_HIGH>; clocks = <&osc_32k>; + max-speed = <4000000>; clock-names = "extclk"; }; }; --- linux-azure-5.8-5.8.0.orig/arch/arm64/boot/dts/freescale/imx8mm.dtsi +++ linux-azure-5.8-5.8.0/arch/arm64/boot/dts/freescale/imx8mm.dtsi @@ -129,7 +129,7 @@ opp-1600000000 { opp-hz = /bits/ 64 <1600000000>; - opp-microvolt = <900000>; + opp-microvolt = <950000>; opp-supported-hw = <0xc>, <0x7>; clock-latency-ns = <150000>; opp-suspend; --- linux-azure-5.8-5.8.0.orig/arch/arm64/boot/dts/freescale/imx8mn.dtsi +++ linux-azure-5.8-5.8.0/arch/arm64/boot/dts/freescale/imx8mn.dtsi @@ -781,28 +781,6 @@ #index-cells = <1>; reg = <0x32e40200 0x200>; }; - - usbotg2: usb@32e50000 { - compatible = "fsl,imx8mn-usb", "fsl,imx7d-usb"; - reg = <0x32e50000 0x200>; - interrupts = ; - clocks = <&clk IMX8MN_CLK_USB1_CTRL_ROOT>; - clock-names = "usb1_ctrl_root_clk"; - assigned-clocks = <&clk IMX8MN_CLK_USB_BUS>, - <&clk IMX8MN_CLK_USB_CORE_REF>; - assigned-clock-parents = <&clk IMX8MN_SYS_PLL2_500M>, - <&clk IMX8MN_SYS_PLL1_100M>; - fsl,usbphy = <&usbphynop2>; - fsl,usbmisc = <&usbmisc2 0>; - status = "disabled"; - }; - - usbmisc2: usbmisc@32e50200 { - compatible = "fsl,imx8mn-usbmisc", "fsl,imx7d-usbmisc"; - #index-cells = <1>; - reg = <0x32e50200 0x200>; - }; - }; dma_apbh: dma-controller@33000000 { @@ -864,14 +842,6 @@ compatible = "usb-nop-xceiv"; clocks = <&clk IMX8MN_CLK_USB_PHY_REF>; assigned-clocks = <&clk IMX8MN_CLK_USB_PHY_REF>; - assigned-clock-parents = <&clk IMX8MN_SYS_PLL1_100M>; - clock-names = "main_clk"; - }; - - usbphynop2: usbphynop2 { - compatible = "usb-nop-xceiv"; - clocks = <&clk IMX8MN_CLK_USB_PHY_REF>; - assigned-clocks = <&clk IMX8MN_CLK_USB_PHY_REF>; assigned-clock-parents = <&clk IMX8MN_SYS_PLL1_100M>; clock-names = "main_clk"; }; --- linux-azure-5.8-5.8.0.orig/arch/arm64/boot/dts/freescale/imx8mp.dtsi +++ linux-azure-5.8-5.8.0/arch/arm64/boot/dts/freescale/imx8mp.dtsi @@ -253,7 +253,7 @@ #gpio-cells = <2>; interrupt-controller; #interrupt-cells = <2>; - gpio-ranges = <&iomuxc 0 56 26>, <&iomuxc 0 144 4>; + gpio-ranges = <&iomuxc 0 56 26>, <&iomuxc 26 144 4>; }; gpio4: gpio@30230000 { @@ -688,7 +688,7 @@ reg = <0x30bd0000 0x10000>; interrupts = ; clocks = <&clk IMX8MP_CLK_SDMA1_ROOT>, - <&clk IMX8MP_CLK_SDMA1_ROOT>; + <&clk IMX8MP_CLK_AHB>; clock-names = "ipg", "ahb"; #dma-cells = <3>; fsl,sdma-ram-script-name = "imx/sdma/sdma-imx7d.bin"; --- linux-azure-5.8-5.8.0.orig/arch/arm64/boot/dts/freescale/imx8mq.dtsi +++ linux-azure-5.8-5.8.0/arch/arm64/boot/dts/freescale/imx8mq.dtsi @@ -420,7 +420,7 @@ tmu: tmu@30260000 { compatible = "fsl,imx8mq-tmu"; reg = <0x30260000 0x10000>; - interrupt = ; + interrupts = ; clocks = <&clk IMX8MQ_CLK_TMU_ROOT>; little-endian; fsl,tmu-range = <0xb0000 0xa0026 0x80048 0x70061>; @@ -614,6 +614,7 @@ gpc: gpc@303a0000 { compatible = "fsl,imx8mq-gpc"; reg = <0x303a0000 0x10000>; + interrupts = ; interrupt-parent = <&gic>; interrupt-controller; #interrupt-cells = <3>; --- linux-azure-5.8-5.8.0.orig/arch/arm64/boot/dts/hisilicon/hi3660-hikey960.dts +++ linux-azure-5.8-5.8.0/arch/arm64/boot/dts/hisilicon/hi3660-hikey960.dts @@ -530,6 +530,17 @@ status = "ok"; compatible = "adi,adv7533"; reg = <0x39>; + adi,dsi-lanes = <4>; + ports { + #address-cells = <1>; + #size-cells = <0>; + port@0 { + reg = <0>; + }; + port@1 { + reg = <1>; + }; + }; }; }; --- linux-azure-5.8-5.8.0.orig/arch/arm64/boot/dts/hisilicon/hi6220-hikey.dts +++ linux-azure-5.8-5.8.0/arch/arm64/boot/dts/hisilicon/hi6220-hikey.dts @@ -516,7 +516,7 @@ reg = <0x39>; interrupt-parent = <&gpio1>; interrupts = <1 2>; - pd-gpio = <&gpio0 4 0>; + pd-gpios = <&gpio0 4 0>; adi,dsi-lanes = <4>; #sound-dai-cells = <0>; --- linux-azure-5.8-5.8.0.orig/arch/arm64/boot/dts/intel/socfpga_agilex.dtsi +++ linux-azure-5.8-5.8.0/arch/arm64/boot/dts/intel/socfpga_agilex.dtsi @@ -129,7 +129,7 @@ rx-fifo-depth = <16384>; snps,multicast-filter-bins = <256>; iommus = <&smmu 2>; - altr,sysmgr-syscon = <&sysmgr 0x48 8>; + altr,sysmgr-syscon = <&sysmgr 0x48 0>; status = "disabled"; }; @@ -145,7 +145,7 @@ rx-fifo-depth = <16384>; snps,multicast-filter-bins = <256>; iommus = <&smmu 3>; - altr,sysmgr-syscon = <&sysmgr 0x4c 16>; + altr,sysmgr-syscon = <&sysmgr 0x4c 0>; status = "disabled"; }; --- linux-azure-5.8-5.8.0.orig/arch/arm64/boot/dts/intel/socfpga_agilex_socdk.dts +++ linux-azure-5.8-5.8.0/arch/arm64/boot/dts/intel/socfpga_agilex_socdk.dts @@ -102,7 +102,7 @@ flash@0 { #address-cells = <1>; #size-cells = <1>; - compatible = "mt25qu02g"; + compatible = "micron,mt25qu02g", "jedec,spi-nor"; reg = <0>; spi-max-frequency = <100000000>; --- linux-azure-5.8-5.8.0.orig/arch/arm64/boot/dts/marvell/armada-3720-espressobin-v7-emmc.dts +++ linux-azure-5.8-5.8.0/arch/arm64/boot/dts/marvell/armada-3720-espressobin-v7-emmc.dts @@ -20,17 +20,23 @@ compatible = "globalscale,espressobin-v7-emmc", "globalscale,espressobin-v7", "globalscale,espressobin", "marvell,armada3720", "marvell,armada3710"; + + aliases { + /* ethernet1 is wan port */ + ethernet1 = &switch0port3; + ethernet3 = &switch0port1; + }; }; &switch0 { ports { - port@1 { + switch0port1: port@1 { reg = <1>; label = "lan1"; phy-handle = <&switch0phy0>; }; - port@3 { + switch0port3: port@3 { reg = <3>; label = "wan"; phy-handle = <&switch0phy2>; --- linux-azure-5.8-5.8.0.orig/arch/arm64/boot/dts/marvell/armada-3720-espressobin-v7.dts +++ linux-azure-5.8-5.8.0/arch/arm64/boot/dts/marvell/armada-3720-espressobin-v7.dts @@ -19,17 +19,23 @@ model = "Globalscale Marvell ESPRESSOBin Board V7"; compatible = "globalscale,espressobin-v7", "globalscale,espressobin", "marvell,armada3720", "marvell,armada3710"; + + aliases { + /* ethernet1 is wan port */ + ethernet1 = &switch0port3; + ethernet3 = &switch0port1; + }; }; &switch0 { ports { - port@1 { + switch0port1: port@1 { reg = <1>; label = "lan1"; phy-handle = <&switch0phy0>; }; - port@3 { + switch0port3: port@3 { reg = <3>; label = "wan"; phy-handle = <&switch0phy2>; --- linux-azure-5.8-5.8.0.orig/arch/arm64/boot/dts/marvell/armada-3720-espressobin.dtsi +++ linux-azure-5.8-5.8.0/arch/arm64/boot/dts/marvell/armada-3720-espressobin.dtsi @@ -13,6 +13,10 @@ / { aliases { ethernet0 = ð0; + /* for dsa slave device */ + ethernet1 = &switch0port1; + ethernet2 = &switch0port2; + ethernet3 = &switch0port3; serial0 = &uart0; serial1 = &uart1; }; @@ -120,7 +124,7 @@ #address-cells = <1>; #size-cells = <0>; - port@0 { + switch0port0: port@0 { reg = <0>; label = "cpu"; ethernet = <ð0>; @@ -131,19 +135,19 @@ }; }; - port@1 { + switch0port1: port@1 { reg = <1>; label = "wan"; phy-handle = <&switch0phy0>; }; - port@2 { + switch0port2: port@2 { reg = <2>; label = "lan0"; phy-handle = <&switch0phy1>; }; - port@3 { + switch0port3: port@3 { reg = <3>; label = "lan1"; phy-handle = <&switch0phy2>; --- linux-azure-5.8-5.8.0.orig/arch/arm64/boot/dts/marvell/armada-3720-turris-mox.dts +++ linux-azure-5.8-5.8.0/arch/arm64/boot/dts/marvell/armada-3720-turris-mox.dts @@ -146,7 +146,7 @@ pinctrl-names = "default"; pinctrl-0 = <&rgmii_pins>; phy-mode = "rgmii-id"; - phy = <&phy1>; + phy-handle = <&phy1>; status = "okay"; }; @@ -204,7 +204,7 @@ }; partition@20000 { - label = "u-boot"; + label = "a53-firmware"; reg = <0x20000 0x160000>; }; --- linux-azure-5.8-5.8.0.orig/arch/arm64/boot/dts/mediatek/mt7622.dtsi +++ linux-azure-5.8-5.8.0/arch/arm64/boot/dts/mediatek/mt7622.dtsi @@ -686,6 +686,8 @@ clocks = <&pericfg CLK_PERI_MSDC30_0_PD>, <&topckgen CLK_TOP_MSDC50_0_SEL>; clock-names = "source", "hclk"; + resets = <&pericfg MT7622_PERI_MSDC0_SW_RST>; + reset-names = "hrst"; status = "disabled"; }; @@ -696,6 +698,8 @@ clocks = <&pericfg CLK_PERI_MSDC30_1_PD>, <&topckgen CLK_TOP_AXI_SEL>; clock-names = "source", "hclk"; + resets = <&pericfg MT7622_PERI_MSDC1_SW_RST>; + reset-names = "hrst"; status = "disabled"; }; --- linux-azure-5.8-5.8.0.orig/arch/arm64/boot/dts/mediatek/mt8173-elm.dtsi +++ linux-azure-5.8-5.8.0/arch/arm64/boot/dts/mediatek/mt8173-elm.dtsi @@ -431,12 +431,11 @@ status = "okay"; pinctrl-names = "default"; pinctrl-0 = <&nor_gpio1_pins>; - bus-width = <8>; - max-frequency = <50000000>; - non-removable; + flash@0 { compatible = "jedec,spi-nor"; reg = <0>; + spi-max-frequency = <50000000>; }; }; --- linux-azure-5.8-5.8.0.orig/arch/arm64/boot/dts/mediatek/mt8183.dtsi +++ linux-azure-5.8-5.8.0/arch/arm64/boot/dts/mediatek/mt8183.dtsi @@ -345,7 +345,7 @@ compatible = "mediatek,mt8183-gce"; reg = <0 0x10238000 0 0x4000>; interrupts = ; - #mbox-cells = <3>; + #mbox-cells = <2>; clocks = <&infracfg CLK_INFRA_GCE>; clock-names = "gce"; }; --- linux-azure-5.8-5.8.0.orig/arch/arm64/boot/dts/nvidia/tegra186-p2771-0000.dts +++ linux-azure-5.8-5.8.0/arch/arm64/boot/dts/nvidia/tegra186-p2771-0000.dts @@ -10,18 +10,6 @@ model = "NVIDIA Jetson TX2 Developer Kit"; compatible = "nvidia,p2771-0000", "nvidia,tegra186"; - aconnect { - status = "okay"; - - dma-controller@2930000 { - status = "okay"; - }; - - interrupt-controller@2a40000 { - status = "okay"; - }; - }; - i2c@3160000 { power-monitor@42 { compatible = "ti,ina3221"; --- linux-azure-5.8-5.8.0.orig/arch/arm64/boot/dts/nvidia/tegra186.dtsi +++ linux-azure-5.8-5.8.0/arch/arm64/boot/dts/nvidia/tegra186.dtsi @@ -331,8 +331,9 @@ compatible = "nvidia,tegra186-sdhci"; reg = <0x0 0x03400000 0x0 0x10000>; interrupts = ; - clocks = <&bpmp TEGRA186_CLK_SDMMC1>; - clock-names = "sdhci"; + clocks = <&bpmp TEGRA186_CLK_SDMMC1>, + <&bpmp TEGRA186_CLK_SDMMC_LEGACY_TM>; + clock-names = "sdhci", "tmclk"; resets = <&bpmp TEGRA186_RESET_SDMMC1>; reset-names = "sdhci"; iommus = <&smmu TEGRA186_SID_SDMMC1>; @@ -357,8 +358,9 @@ compatible = "nvidia,tegra186-sdhci"; reg = <0x0 0x03420000 0x0 0x10000>; interrupts = ; - clocks = <&bpmp TEGRA186_CLK_SDMMC2>; - clock-names = "sdhci"; + clocks = <&bpmp TEGRA186_CLK_SDMMC2>, + <&bpmp TEGRA186_CLK_SDMMC_LEGACY_TM>; + clock-names = "sdhci", "tmclk"; resets = <&bpmp TEGRA186_RESET_SDMMC2>; reset-names = "sdhci"; iommus = <&smmu TEGRA186_SID_SDMMC2>; @@ -378,8 +380,9 @@ compatible = "nvidia,tegra186-sdhci"; reg = <0x0 0x03440000 0x0 0x10000>; interrupts = ; - clocks = <&bpmp TEGRA186_CLK_SDMMC3>; - clock-names = "sdhci"; + clocks = <&bpmp TEGRA186_CLK_SDMMC3>, + <&bpmp TEGRA186_CLK_SDMMC_LEGACY_TM>; + clock-names = "sdhci", "tmclk"; resets = <&bpmp TEGRA186_RESET_SDMMC3>; reset-names = "sdhci"; iommus = <&smmu TEGRA186_SID_SDMMC3>; @@ -401,8 +404,9 @@ compatible = "nvidia,tegra186-sdhci"; reg = <0x0 0x03460000 0x0 0x10000>; interrupts = ; - clocks = <&bpmp TEGRA186_CLK_SDMMC4>; - clock-names = "sdhci"; + clocks = <&bpmp TEGRA186_CLK_SDMMC4>, + <&bpmp TEGRA186_CLK_SDMMC_LEGACY_TM>; + clock-names = "sdhci", "tmclk"; assigned-clocks = <&bpmp TEGRA186_CLK_SDMMC4>, <&bpmp TEGRA186_CLK_PLLC4_VCO>; assigned-clock-parents = <&bpmp TEGRA186_CLK_PLLC4_VCO>; --- linux-azure-5.8-5.8.0.orig/arch/arm64/boot/dts/nvidia/tegra194.dtsi +++ linux-azure-5.8-5.8.0/arch/arm64/boot/dts/nvidia/tegra194.dtsi @@ -152,7 +152,7 @@ nvidia,schmitt = ; nvidia,lpdr = ; nvidia,enable-input = ; - nvidia,io-high-voltage = ; + nvidia,io-hv = ; nvidia,tristate = ; nvidia,pull = ; }; @@ -164,7 +164,7 @@ nvidia,schmitt = ; nvidia,lpdr = ; nvidia,enable-input = ; - nvidia,io-high-voltage = ; + nvidia,io-hv = ; nvidia,tristate = ; nvidia,pull = ; }; @@ -453,8 +453,9 @@ compatible = "nvidia,tegra194-sdhci", "nvidia,tegra186-sdhci"; reg = <0x03400000 0x10000>; interrupts = ; - clocks = <&bpmp TEGRA194_CLK_SDMMC1>; - clock-names = "sdhci"; + clocks = <&bpmp TEGRA194_CLK_SDMMC1>, + <&bpmp TEGRA194_CLK_SDMMC_LEGACY_TM>; + clock-names = "sdhci", "tmclk"; resets = <&bpmp TEGRA194_RESET_SDMMC1>; reset-names = "sdhci"; nvidia,pad-autocal-pull-up-offset-3v3-timeout = @@ -475,8 +476,9 @@ compatible = "nvidia,tegra194-sdhci", "nvidia,tegra186-sdhci"; reg = <0x03440000 0x10000>; interrupts = ; - clocks = <&bpmp TEGRA194_CLK_SDMMC3>; - clock-names = "sdhci"; + clocks = <&bpmp TEGRA194_CLK_SDMMC3>, + <&bpmp TEGRA194_CLK_SDMMC_LEGACY_TM>; + clock-names = "sdhci", "tmclk"; resets = <&bpmp TEGRA194_RESET_SDMMC3>; reset-names = "sdhci"; nvidia,pad-autocal-pull-up-offset-1v8 = <0x00>; @@ -498,8 +500,9 @@ compatible = "nvidia,tegra194-sdhci", "nvidia,tegra186-sdhci"; reg = <0x03460000 0x10000>; interrupts = ; - clocks = <&bpmp TEGRA194_CLK_SDMMC4>; - clock-names = "sdhci"; + clocks = <&bpmp TEGRA194_CLK_SDMMC4>, + <&bpmp TEGRA194_CLK_SDMMC_LEGACY_TM>; + clock-names = "sdhci", "tmclk"; assigned-clocks = <&bpmp TEGRA194_CLK_SDMMC4>, <&bpmp TEGRA194_CLK_PLLC4>; assigned-clock-parents = @@ -903,7 +906,7 @@ hsp_aon: hsp@c150000 { compatible = "nvidia,tegra194-hsp", "nvidia,tegra186-hsp"; - reg = <0x0c150000 0xa0000>; + reg = <0x0c150000 0x90000>; interrupts = , , , --- linux-azure-5.8-5.8.0.orig/arch/arm64/boot/dts/nvidia/tegra210.dtsi +++ linux-azure-5.8-5.8.0/arch/arm64/boot/dts/nvidia/tegra210.dtsi @@ -981,6 +981,7 @@ <&tegra_car 128>, /* hda2hdmi */ <&tegra_car 111>; /* hda2codec_2x */ reset-names = "hda", "hda2hdmi", "hda2codec_2x"; + power-domains = <&pd_sor>; status = "disabled"; }; @@ -1180,8 +1181,9 @@ compatible = "nvidia,tegra210-sdhci", "nvidia,tegra124-sdhci"; reg = <0x0 0x700b0000 0x0 0x200>; interrupts = ; - clocks = <&tegra_car TEGRA210_CLK_SDMMC1>; - clock-names = "sdhci"; + clocks = <&tegra_car TEGRA210_CLK_SDMMC1>, + <&tegra_car TEGRA210_CLK_SDMMC_LEGACY>; + clock-names = "sdhci", "tmclk"; resets = <&tegra_car 14>; reset-names = "sdhci"; pinctrl-names = "sdmmc-3v3", "sdmmc-1v8", @@ -1208,8 +1210,9 @@ compatible = "nvidia,tegra210-sdhci", "nvidia,tegra124-sdhci"; reg = <0x0 0x700b0200 0x0 0x200>; interrupts = ; - clocks = <&tegra_car TEGRA210_CLK_SDMMC2>; - clock-names = "sdhci"; + clocks = <&tegra_car TEGRA210_CLK_SDMMC2>, + <&tegra_car TEGRA210_CLK_SDMMC_LEGACY>; + clock-names = "sdhci", "tmclk"; resets = <&tegra_car 9>; reset-names = "sdhci"; pinctrl-names = "sdmmc-1v8-drv"; @@ -1225,8 +1228,9 @@ compatible = "nvidia,tegra210-sdhci", "nvidia,tegra124-sdhci"; reg = <0x0 0x700b0400 0x0 0x200>; interrupts = ; - clocks = <&tegra_car TEGRA210_CLK_SDMMC3>; - clock-names = "sdhci"; + clocks = <&tegra_car TEGRA210_CLK_SDMMC3>, + <&tegra_car TEGRA210_CLK_SDMMC_LEGACY>; + clock-names = "sdhci", "tmclk"; resets = <&tegra_car 69>; reset-names = "sdhci"; pinctrl-names = "sdmmc-3v3", "sdmmc-1v8", @@ -1248,8 +1252,9 @@ compatible = "nvidia,tegra210-sdhci", "nvidia,tegra124-sdhci"; reg = <0x0 0x700b0600 0x0 0x200>; interrupts = ; - clocks = <&tegra_car TEGRA210_CLK_SDMMC4>; - clock-names = "sdhci"; + clocks = <&tegra_car TEGRA210_CLK_SDMMC4>, + <&tegra_car TEGRA210_CLK_SDMMC_LEGACY>; + clock-names = "sdhci", "tmclk"; resets = <&tegra_car 15>; reset-names = "sdhci"; pinctrl-names = "sdmmc-3v3-drv", "sdmmc-1v8-drv"; --- linux-azure-5.8-5.8.0.orig/arch/arm64/boot/dts/qcom/ipq6018.dtsi +++ linux-azure-5.8-5.8.0/arch/arm64/boot/dts/qcom/ipq6018.dtsi @@ -98,8 +98,8 @@ #size-cells = <2>; ranges; - tz: tz@48500000 { - reg = <0x0 0x48500000 0x0 0x00200000>; + tz: memory@4a600000 { + reg = <0x0 0x4a600000 0x0 0x00400000>; no-map; }; @@ -109,7 +109,7 @@ }; q6_region: memory@4ab00000 { - reg = <0x0 0x4ab00000 0x0 0x02800000>; + reg = <0x0 0x4ab00000 0x0 0x05500000>; no-map; }; }; --- linux-azure-5.8-5.8.0.orig/arch/arm64/boot/dts/qcom/msm8916-pins.dtsi +++ linux-azure-5.8-5.8.0/arch/arm64/boot/dts/qcom/msm8916-pins.dtsi @@ -556,7 +556,7 @@ pins = "gpio63", "gpio64", "gpio65", "gpio66", "gpio67", "gpio68"; drive-strength = <8>; - bias-pull-none; + bias-disable; }; }; cdc_pdm_lines_sus: pdm-lines-off { @@ -569,7 +569,7 @@ pins = "gpio63", "gpio64", "gpio65", "gpio66", "gpio67", "gpio68"; drive-strength = <2>; - bias-disable; + bias-pull-down; }; }; }; @@ -585,7 +585,7 @@ pins = "gpio113", "gpio114", "gpio115", "gpio116"; drive-strength = <8>; - bias-pull-none; + bias-disable; }; }; @@ -613,7 +613,7 @@ pinconf { pins = "gpio110"; drive-strength = <8>; - bias-pull-none; + bias-disable; }; }; @@ -639,7 +639,7 @@ pinconf { pins = "gpio116"; drive-strength = <8>; - bias-pull-none; + bias-disable; }; }; ext_mclk_tlmm_lines_sus: mclk-lines-off { @@ -667,7 +667,7 @@ pins = "gpio112", "gpio117", "gpio118", "gpio119"; drive-strength = <8>; - bias-pull-none; + bias-disable; }; }; ext_sec_tlmm_lines_sus: tlmm-lines-off { --- linux-azure-5.8-5.8.0.orig/arch/arm64/boot/dts/qcom/msm8916-samsung-a2015-common.dtsi +++ linux-azure-5.8-5.8.0/arch/arm64/boot/dts/qcom/msm8916-samsung-a2015-common.dtsi @@ -151,6 +151,9 @@ sda-gpios = <&msmgpio 105 (GPIO_ACTIVE_HIGH|GPIO_OPEN_DRAIN)>; scl-gpios = <&msmgpio 106 (GPIO_ACTIVE_HIGH|GPIO_OPEN_DRAIN)>; + pinctrl-names = "default"; + pinctrl-0 = <&muic_i2c_default>; + #address-cells = <1>; #size-cells = <0>; @@ -192,6 +195,14 @@ }; }; + muic_i2c_default: muic-i2c-default { + pins = "gpio105", "gpio106"; + function = "gpio"; + + drive-strength = <2>; + bias-disable; + }; + muic_int_default: muic-int-default { pinmux { function = "gpio"; --- linux-azure-5.8-5.8.0.orig/arch/arm64/boot/dts/qcom/msm8916-samsung-a5u-eur.dts +++ linux-azure-5.8-5.8.0/arch/arm64/boot/dts/qcom/msm8916-samsung-a5u-eur.dts @@ -32,7 +32,7 @@ &pronto { iris { - compatible = "qcom,wcn3680"; + compatible = "qcom,wcn3660b"; }; }; --- linux-azure-5.8-5.8.0.orig/arch/arm64/boot/dts/qcom/msm8916.dtsi +++ linux-azure-5.8-5.8.0/arch/arm64/boot/dts/qcom/msm8916.dtsi @@ -54,7 +54,7 @@ no-map; }; - reserved@8668000 { + reserved@86680000 { reg = <0x0 0x86680000 0x0 0x80000>; no-map; }; @@ -67,7 +67,7 @@ qcom,client-id = <1>; }; - rfsa@867e00000 { + rfsa@867e0000 { reg = <0x0 0x867e0000 0x0 0x20000>; no-map; }; @@ -228,14 +228,14 @@ }; thermal-zones { - cpu0_1-thermal { + cpu0-1-thermal { polling-delay-passive = <250>; polling-delay = <1000>; thermal-sensors = <&tsens 5>; trips { - cpu0_1_alert0: trip-point@0 { + cpu0_1_alert0: trip-point0 { temperature = <75000>; hysteresis = <2000>; type = "passive"; @@ -258,7 +258,7 @@ }; }; - cpu2_3-thermal { + cpu2-3-thermal { polling-delay-passive = <250>; polling-delay = <1000>; @@ -1021,7 +1021,7 @@ reg-names = "mdp_phys"; interrupt-parent = <&mdss>; - interrupts = <0 0>; + interrupts = <0>; clocks = <&gcc GCC_MDSS_AHB_CLK>, <&gcc GCC_MDSS_AXI_CLK>, @@ -1053,7 +1053,7 @@ reg-names = "dsi_ctrl"; interrupt-parent = <&mdss>; - interrupts = <4 0>; + interrupts = <4>; assigned-clocks = <&gcc BYTE0_CLK_SRC>, <&gcc PCLK0_CLK_SRC>; --- linux-azure-5.8-5.8.0.orig/arch/arm64/boot/dts/qcom/pm8916.dtsi +++ linux-azure-5.8-5.8.0/arch/arm64/boot/dts/qcom/pm8916.dtsi @@ -119,7 +119,7 @@ wcd_codec: codec@f000 { compatible = "qcom,pm8916-wcd-analog-codec"; - reg = <0xf000 0x200>; + reg = <0xf000>; reg-names = "pmic-codec-core"; clocks = <&gcc GCC_CODEC_DIGCODEC_CLK>; clock-names = "mclk"; --- linux-azure-5.8-5.8.0.orig/arch/arm64/boot/dts/qcom/sc7180-idp.dts +++ linux-azure-5.8-5.8.0/arch/arm64/boot/dts/qcom/sc7180-idp.dts @@ -312,7 +312,7 @@ &remoteproc_mpss { status = "okay"; compatible = "qcom,sc7180-mss-pil"; - iommus = <&apps_smmu 0x460 0x1>, <&apps_smmu 0x444 0x3>; + iommus = <&apps_smmu 0x461 0x0>, <&apps_smmu 0x444 0x3>; memory-region = <&mba_mem &mpss_mem>; }; --- linux-azure-5.8-5.8.0.orig/arch/arm64/boot/dts/qcom/sc7180.dtsi +++ linux-azure-5.8-5.8.0/arch/arm64/boot/dts/qcom/sc7180.dtsi @@ -1021,7 +1021,8 @@ ipa: ipa@1e40000 { compatible = "qcom,sc7180-ipa"; - iommus = <&apps_smmu 0x440 0x3>; + iommus = <&apps_smmu 0x440 0x0>, + <&apps_smmu 0x442 0x0>; reg = <0 0x1e40000 0 0x7000>, <0 0x1e47000 0 0x2000>, <0 0x1e04000 0 0x2c000>; @@ -2193,7 +2194,7 @@ system-cache-controller@9200000 { compatible = "qcom,sc7180-llcc"; - reg = <0 0x09200000 0 0x200000>, <0 0x09600000 0 0x50000>; + reg = <0 0x09200000 0 0x50000>, <0 0x09600000 0 0x50000>; reg-names = "llcc_base", "llcc_broadcast_base"; interrupts = ; }; @@ -2357,7 +2358,7 @@ <19200000>; interrupt-parent = <&mdss>; - interrupts = <0 IRQ_TYPE_LEVEL_HIGH>; + interrupts = <0>; status = "disabled"; @@ -2380,7 +2381,7 @@ reg-names = "dsi_ctrl"; interrupt-parent = <&mdss>; - interrupts = <4 IRQ_TYPE_LEVEL_HIGH>; + interrupts = <4>; clocks = <&dispcc DISP_CC_MDSS_BYTE0_CLK>, <&dispcc DISP_CC_MDSS_BYTE0_INTF_CLK>, --- linux-azure-5.8-5.8.0.orig/arch/arm64/boot/dts/qcom/sdm845-cheza.dtsi +++ linux-azure-5.8-5.8.0/arch/arm64/boot/dts/qcom/sdm845-cheza.dtsi @@ -634,7 +634,7 @@ }; &mss_pil { - iommus = <&apps_smmu 0x780 0x1>, + iommus = <&apps_smmu 0x781 0x0>, <&apps_smmu 0x724 0x3>; }; --- linux-azure-5.8-5.8.0.orig/arch/arm64/boot/dts/qcom/sdm845-db845c.dts +++ linux-azure-5.8-5.8.0/arch/arm64/boot/dts/qcom/sdm845-db845c.dts @@ -385,7 +385,9 @@ &gcc { protected-clocks = , , - ; + , + , + ; }; &gpu { @@ -994,11 +996,11 @@ reg = <0x10>; // CAM0_RST_N - reset-gpios = <&tlmm 9 0>; + reset-gpios = <&tlmm 9 GPIO_ACTIVE_LOW>; pinctrl-names = "default"; pinctrl-0 = <&cam0_default>; gpios = <&tlmm 13 0>, - <&tlmm 9 0>; + <&tlmm 9 GPIO_ACTIVE_LOW>; clocks = <&clock_camcc CAM_CC_MCLK0_CLK>; clock-names = "xvclk"; --- linux-azure-5.8-5.8.0.orig/arch/arm64/boot/dts/qcom/sdm845.dtsi +++ linux-azure-5.8-5.8.0/arch/arm64/boot/dts/qcom/sdm845.dtsi @@ -1763,7 +1763,8 @@ ipa: ipa@1e40000 { compatible = "qcom,sdm845-ipa"; - iommus = <&apps_smmu 0x720 0x3>; + iommus = <&apps_smmu 0x720 0x0>, + <&apps_smmu 0x722 0x0>; reg = <0 0x1e40000 0 0x7000>, <0 0x1e47000 0 0x2000>, <0 0x1e04000 0 0x2c000>; --- linux-azure-5.8-5.8.0.orig/arch/arm64/boot/dts/qcom/sdm850-lenovo-yoga-c630.dts +++ linux-azure-5.8-5.8.0/arch/arm64/boot/dts/qcom/sdm850-lenovo-yoga-c630.dts @@ -245,7 +245,9 @@ &gcc { protected-clocks = , , - ; + , + , + ; }; &gpu { @@ -263,24 +265,23 @@ &i2c3 { status = "okay"; clock-frequency = <400000>; + /* Overwrite pinctrl-0 from sdm845.dtsi */ + pinctrl-0 = <&qup_i2c3_default &i2c3_hid_active>; - hid@15 { + tsel: hid@15 { compatible = "hid-over-i2c"; reg = <0x15>; hid-descr-addr = <0x1>; - interrupts-extended = <&tlmm 37 IRQ_TYPE_EDGE_RISING>; + interrupts-extended = <&tlmm 37 IRQ_TYPE_LEVEL_HIGH>; }; - hid@2c { + tsc2: hid@2c { compatible = "hid-over-i2c"; reg = <0x2c>; hid-descr-addr = <0x20>; - interrupts-extended = <&tlmm 37 IRQ_TYPE_EDGE_RISING>; - - pinctrl-names = "default"; - pinctrl-0 = <&i2c2_hid_active>; + interrupts-extended = <&tlmm 37 IRQ_TYPE_LEVEL_HIGH>; }; }; @@ -288,15 +289,15 @@ status = "okay"; clock-frequency = <400000>; - hid@10 { + tsc1: hid@10 { compatible = "hid-over-i2c"; reg = <0x10>; hid-descr-addr = <0x1>; - interrupts-extended = <&tlmm 125 IRQ_TYPE_EDGE_FALLING>; + interrupts-extended = <&tlmm 125 IRQ_TYPE_LEVEL_LOW>; pinctrl-names = "default"; - pinctrl-0 = <&i2c6_hid_active>; + pinctrl-0 = <&i2c5_hid_active>; }; }; @@ -304,7 +305,7 @@ status = "okay"; clock-frequency = <400000>; - hid@5c { + ecsh: hid@5c { compatible = "hid-over-i2c"; reg = <0x5c>; hid-descr-addr = <0x1>; @@ -312,7 +313,7 @@ interrupts-extended = <&tlmm 92 IRQ_TYPE_LEVEL_LOW>; pinctrl-names = "default"; - pinctrl-0 = <&i2c12_hid_active>; + pinctrl-0 = <&i2c11_hid_active>; }; }; @@ -426,8 +427,8 @@ &tlmm { gpio-reserved-ranges = <0 4>, <81 4>; - i2c2_hid_active: i2c2-hid-active { - pins = <37>; + i2c3_hid_active: i2c2-hid-active { + pins = "gpio37"; function = "gpio"; input-enable; @@ -435,8 +436,8 @@ drive-strength = <2>; }; - i2c6_hid_active: i2c6-hid-active { - pins = <125>; + i2c5_hid_active: i2c5-hid-active { + pins = "gpio125"; function = "gpio"; input-enable; @@ -444,8 +445,8 @@ drive-strength = <2>; }; - i2c12_hid_active: i2c12-hid-active { - pins = <92>; + i2c11_hid_active: i2c11-hid-active { + pins = "gpio92"; function = "gpio"; input-enable; @@ -454,7 +455,7 @@ }; wcd_intr_default: wcd_intr_default { - pins = <54>; + pins = "gpio54"; function = "gpio"; input-enable; --- linux-azure-5.8-5.8.0.orig/arch/arm64/boot/dts/qcom/sm8250-mtp.dts +++ linux-azure-5.8-5.8.0/arch/arm64/boot/dts/qcom/sm8250-mtp.dts @@ -10,7 +10,7 @@ / { model = "Qualcomm Technologies, Inc. SM8250 MTP"; - compatible = "qcom,sm8250-mtp"; + compatible = "qcom,sm8250-mtp", "qcom,sm8250"; aliases { serial0 = &uart2; --- linux-azure-5.8-5.8.0.orig/arch/arm64/boot/dts/renesas/cat875.dtsi +++ linux-azure-5.8-5.8.0/arch/arm64/boot/dts/renesas/cat875.dtsi @@ -22,7 +22,6 @@ status = "okay"; phy0: ethernet-phy@0 { - rxc-skew-ps = <1500>; reg = <0>; interrupt-parent = <&gpio2>; interrupts = <21 IRQ_TYPE_LEVEL_LOW>; --- linux-azure-5.8-5.8.0.orig/arch/arm64/boot/dts/renesas/hihope-rzg2-ex.dtsi +++ linux-azure-5.8-5.8.0/arch/arm64/boot/dts/renesas/hihope-rzg2-ex.dtsi @@ -31,7 +31,6 @@ status = "okay"; phy0: ethernet-phy@0 { - rxc-skew-ps = <1500>; reg = <0>; interrupt-parent = <&gpio2>; interrupts = <11 IRQ_TYPE_LEVEL_LOW>; --- linux-azure-5.8-5.8.0.orig/arch/arm64/boot/dts/renesas/r8a774a1.dtsi +++ linux-azure-5.8-5.8.0/arch/arm64/boot/dts/renesas/r8a774a1.dtsi @@ -2250,7 +2250,7 @@ status = "disabled"; }; - sdhi0: sd@ee100000 { + sdhi0: mmc@ee100000 { compatible = "renesas,sdhi-r8a774a1", "renesas,rcar-gen3-sdhi"; reg = <0 0xee100000 0 0x2000>; @@ -2262,7 +2262,7 @@ status = "disabled"; }; - sdhi1: sd@ee120000 { + sdhi1: mmc@ee120000 { compatible = "renesas,sdhi-r8a774a1", "renesas,rcar-gen3-sdhi"; reg = <0 0xee120000 0 0x2000>; @@ -2274,7 +2274,7 @@ status = "disabled"; }; - sdhi2: sd@ee140000 { + sdhi2: mmc@ee140000 { compatible = "renesas,sdhi-r8a774a1", "renesas,rcar-gen3-sdhi"; reg = <0 0xee140000 0 0x2000>; @@ -2286,7 +2286,7 @@ status = "disabled"; }; - sdhi3: sd@ee160000 { + sdhi3: mmc@ee160000 { compatible = "renesas,sdhi-r8a774a1", "renesas,rcar-gen3-sdhi"; reg = <0 0xee160000 0 0x2000>; --- linux-azure-5.8-5.8.0.orig/arch/arm64/boot/dts/renesas/r8a774b1.dtsi +++ linux-azure-5.8-5.8.0/arch/arm64/boot/dts/renesas/r8a774b1.dtsi @@ -2108,7 +2108,7 @@ status = "disabled"; }; - sdhi0: sd@ee100000 { + sdhi0: mmc@ee100000 { compatible = "renesas,sdhi-r8a774b1", "renesas,rcar-gen3-sdhi"; reg = <0 0xee100000 0 0x2000>; @@ -2120,7 +2120,7 @@ status = "disabled"; }; - sdhi1: sd@ee120000 { + sdhi1: mmc@ee120000 { compatible = "renesas,sdhi-r8a774b1", "renesas,rcar-gen3-sdhi"; reg = <0 0xee120000 0 0x2000>; @@ -2132,7 +2132,7 @@ status = "disabled"; }; - sdhi2: sd@ee140000 { + sdhi2: mmc@ee140000 { compatible = "renesas,sdhi-r8a774b1", "renesas,rcar-gen3-sdhi"; reg = <0 0xee140000 0 0x2000>; @@ -2144,7 +2144,7 @@ status = "disabled"; }; - sdhi3: sd@ee160000 { + sdhi3: mmc@ee160000 { compatible = "renesas,sdhi-r8a774b1", "renesas,rcar-gen3-sdhi"; reg = <0 0xee160000 0 0x2000>; --- linux-azure-5.8-5.8.0.orig/arch/arm64/boot/dts/renesas/r8a774c0.dtsi +++ linux-azure-5.8-5.8.0/arch/arm64/boot/dts/renesas/r8a774c0.dtsi @@ -1214,9 +1214,8 @@ reg = <0 0xe6ea0000 0 0x0064>; interrupts = ; clocks = <&cpg CPG_MOD 210>; - dmas = <&dmac1 0x43>, <&dmac1 0x42>, - <&dmac2 0x43>, <&dmac2 0x42>; - dma-names = "tx", "rx", "tx", "rx"; + dmas = <&dmac0 0x43>, <&dmac0 0x42>; + dma-names = "tx", "rx"; power-domains = <&sysc R8A774C0_PD_ALWAYS_ON>; resets = <&cpg 210>; #address-cells = <1>; @@ -1618,7 +1617,7 @@ status = "disabled"; }; - sdhi0: sd@ee100000 { + sdhi0: mmc@ee100000 { compatible = "renesas,sdhi-r8a774c0", "renesas,rcar-gen3-sdhi"; reg = <0 0xee100000 0 0x2000>; @@ -1630,7 +1629,7 @@ status = "disabled"; }; - sdhi1: sd@ee120000 { + sdhi1: mmc@ee120000 { compatible = "renesas,sdhi-r8a774c0", "renesas,rcar-gen3-sdhi"; reg = <0 0xee120000 0 0x2000>; @@ -1642,7 +1641,7 @@ status = "disabled"; }; - sdhi3: sd@ee160000 { + sdhi3: mmc@ee160000 { compatible = "renesas,sdhi-r8a774c0", "renesas,rcar-gen3-sdhi"; reg = <0 0xee160000 0 0x2000>; --- linux-azure-5.8-5.8.0.orig/arch/arm64/boot/dts/renesas/r8a77951.dtsi +++ linux-azure-5.8-5.8.0/arch/arm64/boot/dts/renesas/r8a77951.dtsi @@ -2590,7 +2590,7 @@ status = "disabled"; }; - sdhi0: sd@ee100000 { + sdhi0: mmc@ee100000 { compatible = "renesas,sdhi-r8a7795", "renesas,rcar-gen3-sdhi"; reg = <0 0xee100000 0 0x2000>; @@ -2603,7 +2603,7 @@ status = "disabled"; }; - sdhi1: sd@ee120000 { + sdhi1: mmc@ee120000 { compatible = "renesas,sdhi-r8a7795", "renesas,rcar-gen3-sdhi"; reg = <0 0xee120000 0 0x2000>; @@ -2616,7 +2616,7 @@ status = "disabled"; }; - sdhi2: sd@ee140000 { + sdhi2: mmc@ee140000 { compatible = "renesas,sdhi-r8a7795", "renesas,rcar-gen3-sdhi"; reg = <0 0xee140000 0 0x2000>; @@ -2629,7 +2629,7 @@ status = "disabled"; }; - sdhi3: sd@ee160000 { + sdhi3: mmc@ee160000 { compatible = "renesas,sdhi-r8a7795", "renesas,rcar-gen3-sdhi"; reg = <0 0xee160000 0 0x2000>; --- linux-azure-5.8-5.8.0.orig/arch/arm64/boot/dts/renesas/r8a77960.dtsi +++ linux-azure-5.8-5.8.0/arch/arm64/boot/dts/renesas/r8a77960.dtsi @@ -2394,7 +2394,7 @@ status = "disabled"; }; - sdhi0: sd@ee100000 { + sdhi0: mmc@ee100000 { compatible = "renesas,sdhi-r8a7796", "renesas,rcar-gen3-sdhi"; reg = <0 0xee100000 0 0x2000>; @@ -2407,7 +2407,7 @@ status = "disabled"; }; - sdhi1: sd@ee120000 { + sdhi1: mmc@ee120000 { compatible = "renesas,sdhi-r8a7796", "renesas,rcar-gen3-sdhi"; reg = <0 0xee120000 0 0x2000>; @@ -2420,7 +2420,7 @@ status = "disabled"; }; - sdhi2: sd@ee140000 { + sdhi2: mmc@ee140000 { compatible = "renesas,sdhi-r8a7796", "renesas,rcar-gen3-sdhi"; reg = <0 0xee140000 0 0x2000>; @@ -2433,7 +2433,7 @@ status = "disabled"; }; - sdhi3: sd@ee160000 { + sdhi3: mmc@ee160000 { compatible = "renesas,sdhi-r8a7796", "renesas,rcar-gen3-sdhi"; reg = <0 0xee160000 0 0x2000>; --- linux-azure-5.8-5.8.0.orig/arch/arm64/boot/dts/renesas/r8a77961.dtsi +++ linux-azure-5.8-5.8.0/arch/arm64/boot/dts/renesas/r8a77961.dtsi @@ -1257,7 +1257,7 @@ status = "disabled"; }; - sdhi0: sd@ee100000 { + sdhi0: mmc@ee100000 { compatible = "renesas,sdhi-r8a77961", "renesas,rcar-gen3-sdhi"; reg = <0 0xee100000 0 0x2000>; @@ -1269,7 +1269,7 @@ status = "disabled"; }; - sdhi1: sd@ee120000 { + sdhi1: mmc@ee120000 { compatible = "renesas,sdhi-r8a77961", "renesas,rcar-gen3-sdhi"; reg = <0 0xee120000 0 0x2000>; @@ -1281,7 +1281,7 @@ status = "disabled"; }; - sdhi2: sd@ee140000 { + sdhi2: mmc@ee140000 { compatible = "renesas,sdhi-r8a77961", "renesas,rcar-gen3-sdhi"; reg = <0 0xee140000 0 0x2000>; @@ -1293,7 +1293,7 @@ status = "disabled"; }; - sdhi3: sd@ee160000 { + sdhi3: mmc@ee160000 { compatible = "renesas,sdhi-r8a77961", "renesas,rcar-gen3-sdhi"; reg = <0 0xee160000 0 0x2000>; --- linux-azure-5.8-5.8.0.orig/arch/arm64/boot/dts/renesas/r8a77965.dtsi +++ linux-azure-5.8-5.8.0/arch/arm64/boot/dts/renesas/r8a77965.dtsi @@ -2120,7 +2120,7 @@ status = "disabled"; }; - sdhi0: sd@ee100000 { + sdhi0: mmc@ee100000 { compatible = "renesas,sdhi-r8a77965", "renesas,rcar-gen3-sdhi"; reg = <0 0xee100000 0 0x2000>; @@ -2133,7 +2133,7 @@ status = "disabled"; }; - sdhi1: sd@ee120000 { + sdhi1: mmc@ee120000 { compatible = "renesas,sdhi-r8a77965", "renesas,rcar-gen3-sdhi"; reg = <0 0xee120000 0 0x2000>; @@ -2146,7 +2146,7 @@ status = "disabled"; }; - sdhi2: sd@ee140000 { + sdhi2: mmc@ee140000 { compatible = "renesas,sdhi-r8a77965", "renesas,rcar-gen3-sdhi"; reg = <0 0xee140000 0 0x2000>; @@ -2159,7 +2159,7 @@ status = "disabled"; }; - sdhi3: sd@ee160000 { + sdhi3: mmc@ee160000 { compatible = "renesas,sdhi-r8a77965", "renesas,rcar-gen3-sdhi"; reg = <0 0xee160000 0 0x2000>; --- linux-azure-5.8-5.8.0.orig/arch/arm64/boot/dts/renesas/r8a77990.dtsi +++ linux-azure-5.8-5.8.0/arch/arm64/boot/dts/renesas/r8a77990.dtsi @@ -1192,9 +1192,8 @@ reg = <0 0xe6ea0000 0 0x0064>; interrupts = ; clocks = <&cpg CPG_MOD 210>; - dmas = <&dmac1 0x43>, <&dmac1 0x42>, - <&dmac2 0x43>, <&dmac2 0x42>; - dma-names = "tx", "rx", "tx", "rx"; + dmas = <&dmac0 0x43>, <&dmac0 0x42>; + dma-names = "tx", "rx"; power-domains = <&sysc R8A77990_PD_ALWAYS_ON>; resets = <&cpg 210>; #address-cells = <1>; @@ -1595,7 +1594,7 @@ status = "disabled"; }; - sdhi0: sd@ee100000 { + sdhi0: mmc@ee100000 { compatible = "renesas,sdhi-r8a77990", "renesas,rcar-gen3-sdhi"; reg = <0 0xee100000 0 0x2000>; @@ -1608,7 +1607,7 @@ status = "disabled"; }; - sdhi1: sd@ee120000 { + sdhi1: mmc@ee120000 { compatible = "renesas,sdhi-r8a77990", "renesas,rcar-gen3-sdhi"; reg = <0 0xee120000 0 0x2000>; @@ -1621,7 +1620,7 @@ status = "disabled"; }; - sdhi3: sd@ee160000 { + sdhi3: mmc@ee160000 { compatible = "renesas,sdhi-r8a77990", "renesas,rcar-gen3-sdhi"; reg = <0 0xee160000 0 0x2000>; --- linux-azure-5.8-5.8.0.orig/arch/arm64/boot/dts/renesas/r8a77995.dtsi +++ linux-azure-5.8-5.8.0/arch/arm64/boot/dts/renesas/r8a77995.dtsi @@ -916,7 +916,7 @@ status = "disabled"; }; - sdhi2: sd@ee140000 { + sdhi2: mmc@ee140000 { compatible = "renesas,sdhi-r8a77995", "renesas,rcar-gen3-sdhi"; reg = <0 0xee140000 0 0x2000>; --- linux-azure-5.8-5.8.0.orig/arch/arm64/boot/dts/renesas/ulcb.dtsi +++ linux-azure-5.8-5.8.0/arch/arm64/boot/dts/renesas/ulcb.dtsi @@ -469,6 +469,7 @@ mmc-hs200-1_8v; mmc-hs400-1_8v; non-removable; + full-pwr-cycle-in-suspend; status = "okay"; }; --- linux-azure-5.8-5.8.0.orig/arch/arm64/boot/dts/rockchip/px30.dtsi +++ linux-azure-5.8-5.8.0/arch/arm64/boot/dts/rockchip/px30.dtsi @@ -1096,7 +1096,7 @@ vopl_mmu: iommu@ff470f00 { compatible = "rockchip,iommu"; reg = <0x0 0xff470f00 0x0 0x100>; - interrupts = ; + interrupts = ; interrupt-names = "vopl_mmu"; clocks = <&cru ACLK_VOPL>, <&cru HCLK_VOPL>; clock-names = "aclk", "iface"; --- linux-azure-5.8-5.8.0.orig/arch/arm64/boot/dts/rockchip/rk3326-odroid-go2.dts +++ linux-azure-5.8-5.8.0/arch/arm64/boot/dts/rockchip/rk3326-odroid-go2.dts @@ -243,7 +243,6 @@ interrupts = ; pinctrl-names = "default"; pinctrl-0 = <&pmic_int>; - rockchip,system-power-controller; wakeup-source; #clock-cells = <1>; clock-output-names = "rk808-clkout1", "xin32k"; --- linux-azure-5.8-5.8.0.orig/arch/arm64/boot/dts/rockchip/rk3328-roc-cc.dts +++ linux-azure-5.8-5.8.0/arch/arm64/boot/dts/rockchip/rk3328-roc-cc.dts @@ -334,6 +334,7 @@ }; &usb20_otg { + dr_mode = "host"; status = "okay"; }; --- linux-azure-5.8-5.8.0.orig/arch/arm64/boot/dts/rockchip/rk3328.dtsi +++ linux-azure-5.8-5.8.0/arch/arm64/boot/dts/rockchip/rk3328.dtsi @@ -927,6 +927,7 @@ phy-mode = "rmii"; phy-handle = <&phy>; snps,txpbl = <0x4>; + clock_in_out = "output"; status = "disabled"; mdio { @@ -1236,8 +1237,8 @@ uart0 { uart0_xfer: uart0-xfer { - rockchip,pins = <1 RK_PB1 1 &pcfg_pull_up>, - <1 RK_PB0 1 &pcfg_pull_none>; + rockchip,pins = <1 RK_PB1 1 &pcfg_pull_none>, + <1 RK_PB0 1 &pcfg_pull_up>; }; uart0_cts: uart0-cts { @@ -1255,8 +1256,8 @@ uart1 { uart1_xfer: uart1-xfer { - rockchip,pins = <3 RK_PA4 4 &pcfg_pull_up>, - <3 RK_PA6 4 &pcfg_pull_none>; + rockchip,pins = <3 RK_PA4 4 &pcfg_pull_none>, + <3 RK_PA6 4 &pcfg_pull_up>; }; uart1_cts: uart1-cts { @@ -1274,15 +1275,15 @@ uart2-0 { uart2m0_xfer: uart2m0-xfer { - rockchip,pins = <1 RK_PA0 2 &pcfg_pull_up>, - <1 RK_PA1 2 &pcfg_pull_none>; + rockchip,pins = <1 RK_PA0 2 &pcfg_pull_none>, + <1 RK_PA1 2 &pcfg_pull_up>; }; }; uart2-1 { uart2m1_xfer: uart2m1-xfer { - rockchip,pins = <2 RK_PA0 1 &pcfg_pull_up>, - <2 RK_PA1 1 &pcfg_pull_none>; + rockchip,pins = <2 RK_PA0 1 &pcfg_pull_none>, + <2 RK_PA1 1 &pcfg_pull_up>; }; }; --- linux-azure-5.8-5.8.0.orig/arch/arm64/boot/dts/rockchip/rk3368-lion.dtsi +++ linux-azure-5.8-5.8.0/arch/arm64/boot/dts/rockchip/rk3368-lion.dtsi @@ -156,7 +156,7 @@ pinctrl-0 = <&rgmii_pins>; snps,reset-active-low; snps,reset-delays-us = <0 10000 50000>; - snps,reset-gpio = <&gpio3 RK_PB3 GPIO_ACTIVE_HIGH>; + snps,reset-gpio = <&gpio3 RK_PB3 GPIO_ACTIVE_LOW>; tx_delay = <0x10>; rx_delay = <0x10>; status = "okay"; --- linux-azure-5.8-5.8.0.orig/arch/arm64/boot/dts/rockchip/rk3399-pinebook-pro.dts +++ linux-azure-5.8-5.8.0/arch/arm64/boot/dts/rockchip/rk3399-pinebook-pro.dts @@ -765,7 +765,6 @@ &pcie0 { bus-scan-delay-ms = <1000>; ep-gpios = <&gpio2 RK_PD4 GPIO_ACTIVE_HIGH>; - max-link-speed = <2>; num-lanes = <4>; pinctrl-names = "default"; pinctrl-0 = <&pcie_clkreqn_cpm>; --- linux-azure-5.8-5.8.0.orig/arch/arm64/boot/dts/rockchip/rk3399-puma.dtsi +++ linux-azure-5.8-5.8.0/arch/arm64/boot/dts/rockchip/rk3399-puma.dtsi @@ -101,7 +101,7 @@ vcc5v0_host: vcc5v0-host-regulator { compatible = "regulator-fixed"; - gpio = <&gpio4 RK_PA3 GPIO_ACTIVE_HIGH>; + gpio = <&gpio4 RK_PA3 GPIO_ACTIVE_LOW>; enable-active-low; pinctrl-names = "default"; pinctrl-0 = <&vcc5v0_host_en>; @@ -157,7 +157,7 @@ phy-mode = "rgmii"; pinctrl-names = "default"; pinctrl-0 = <&rgmii_pins>; - snps,reset-gpio = <&gpio3 RK_PC0 GPIO_ACTIVE_HIGH>; + snps,reset-gpio = <&gpio3 RK_PC0 GPIO_ACTIVE_LOW>; snps,reset-active-low; snps,reset-delays-us = <0 10000 50000>; tx_delay = <0x10>; --- linux-azure-5.8-5.8.0.orig/arch/arm64/boot/dts/rockchip/rk3399-roc-pc.dtsi +++ linux-azure-5.8-5.8.0/arch/arm64/boot/dts/rockchip/rk3399-roc-pc.dtsi @@ -74,14 +74,14 @@ label = "red:diy"; gpios = <&gpio0 RK_PB5 GPIO_ACTIVE_HIGH>; default-state = "off"; - linux,default-trigger = "mmc1"; + linux,default-trigger = "mmc2"; }; yellow-led { label = "yellow:yellow-led"; gpios = <&gpio0 RK_PA2 GPIO_ACTIVE_HIGH>; default-state = "off"; - linux,default-trigger = "mmc0"; + linux,default-trigger = "mmc1"; }; }; --- linux-azure-5.8-5.8.0.orig/arch/arm64/boot/dts/rockchip/rk3399.dtsi +++ linux-azure-5.8-5.8.0/arch/arm64/boot/dts/rockchip/rk3399.dtsi @@ -29,6 +29,9 @@ i2c6 = &i2c6; i2c7 = &i2c7; i2c8 = &i2c8; + mmc0 = &sdio0; + mmc1 = &sdmmc; + mmc2 = &sdhci; serial0 = &uart0; serial1 = &uart1; serial2 = &uart2; @@ -229,6 +232,7 @@ reg = <0x0 0xf8000000 0x0 0x2000000>, <0x0 0xfd000000 0x0 0x1000000>; reg-names = "axi-base", "apb-base"; + device_type = "pci"; #address-cells = <3>; #size-cells = <2>; #interrupt-cells = <1>; @@ -247,7 +251,6 @@ <0 0 0 2 &pcie0_intc 1>, <0 0 0 3 &pcie0_intc 2>, <0 0 0 4 &pcie0_intc 3>; - linux,pci-domain = <0>; max-link-speed = <1>; msi-map = <0x0 &its 0x0 0x1000>; phys = <&pcie_phy 0>, <&pcie_phy 1>, @@ -1273,7 +1276,6 @@ compatible = "rockchip,rk3399-vdec"; reg = <0x0 0xff660000 0x0 0x400>; interrupts = ; - interrupt-names = "vdpu"; clocks = <&cru ACLK_VDU>, <&cru HCLK_VDU>, <&cru SCLK_VDU_CA>, <&cru SCLK_VDU_CORE>; clock-names = "axi", "ahb", "cabac", "core"; --- linux-azure-5.8-5.8.0.orig/arch/arm64/boot/dts/ti/k3-am65-main.dtsi +++ linux-azure-5.8-5.8.0/arch/arm64/boot/dts/ti/k3-am65-main.dtsi @@ -780,7 +780,7 @@ }; }; - dss: dss@04a00000 { + dss: dss@4a00000 { compatible = "ti,am65x-dss"; reg = <0x0 0x04a00000 0x0 0x1000>, /* common */ <0x0 0x04a02000 0x0 0x1000>, /* vidl1 */ @@ -813,6 +813,8 @@ status = "disabled"; + dma-coherent; + dss_ports: ports { #address-cells = <1>; #size-cells = <0>; --- linux-azure-5.8-5.8.0.orig/arch/arm64/boot/dts/ti/k3-j721e-main.dtsi +++ linux-azure-5.8-5.8.0/arch/arm64/boot/dts/ti/k3-j721e-main.dtsi @@ -748,7 +748,7 @@ }; }; - dss: dss@04a00000 { + dss: dss@4a00000 { compatible = "ti,j721e-dss"; reg = <0x00 0x04a00000 0x00 0x10000>, /* common_m */ --- linux-azure-5.8-5.8.0.orig/arch/arm64/boot/dts/xilinx/zynqmp.dtsi +++ linux-azure-5.8-5.8.0/arch/arm64/boot/dts/xilinx/zynqmp.dtsi @@ -500,7 +500,7 @@ }; i2c0: i2c@ff020000 { - compatible = "cdns,i2c-r1p14", "cdns,i2c-r1p10"; + compatible = "cdns,i2c-r1p14"; status = "disabled"; interrupt-parent = <&gic>; interrupts = <0 17 4>; @@ -511,7 +511,7 @@ }; i2c1: i2c@ff030000 { - compatible = "cdns,i2c-r1p14", "cdns,i2c-r1p10"; + compatible = "cdns,i2c-r1p14"; status = "disabled"; interrupt-parent = <&gic>; interrupts = <0 18 4>; --- linux-azure-5.8-5.8.0.orig/arch/arm64/crypto/aes-glue.c +++ linux-azure-5.8-5.8.0/arch/arm64/crypto/aes-glue.c @@ -55,7 +55,7 @@ #define aes_mac_update neon_aes_mac_update MODULE_DESCRIPTION("AES-ECB/CBC/CTR/XTS using ARMv8 NEON"); #endif -#if defined(USE_V8_CRYPTO_EXTENSIONS) || !defined(CONFIG_CRYPTO_AES_ARM64_BS) +#if defined(USE_V8_CRYPTO_EXTENSIONS) || !IS_ENABLED(CONFIG_CRYPTO_AES_ARM64_BS) MODULE_ALIAS_CRYPTO("ecb(aes)"); MODULE_ALIAS_CRYPTO("cbc(aes)"); MODULE_ALIAS_CRYPTO("ctr(aes)"); @@ -650,7 +650,7 @@ } static struct skcipher_alg aes_algs[] = { { -#if defined(USE_V8_CRYPTO_EXTENSIONS) || !defined(CONFIG_CRYPTO_AES_ARM64_BS) +#if defined(USE_V8_CRYPTO_EXTENSIONS) || !IS_ENABLED(CONFIG_CRYPTO_AES_ARM64_BS) .base = { .cra_name = "__ecb(aes)", .cra_driver_name = "__ecb-aes-" MODE, --- linux-azure-5.8-5.8.0.orig/arch/arm64/crypto/aes-neonbs-core.S +++ linux-azure-5.8-5.8.0/arch/arm64/crypto/aes-neonbs-core.S @@ -788,7 +788,7 @@ 0: mov bskey, x21 mov rounds, x22 - br x7 + br x16 SYM_FUNC_END(__xts_crypt8) .macro __xts_crypt, do8, o0, o1, o2, o3, o4, o5, o6, o7 @@ -806,7 +806,7 @@ uzp1 v30.4s, v30.4s, v25.4s ld1 {v25.16b}, [x24] -99: adr x7, \do8 +99: adr x16, \do8 bl __xts_crypt8 ldp q16, q17, [sp, #.Lframe_local_offset] --- linux-azure-5.8-5.8.0.orig/arch/arm64/crypto/poly1305-armv8.pl +++ linux-azure-5.8-5.8.0/arch/arm64/crypto/poly1305-armv8.pl @@ -840,7 +840,6 @@ ldp d14,d15,[sp,#64] addp $ACC2,$ACC2,$ACC2 ldr x30,[sp,#8] - .inst 0xd50323bf // autiasp //////////////////////////////////////////////////////////////// // lazy reduction, but without narrowing @@ -882,6 +881,7 @@ str x4,[$ctx,#8] // set is_base2_26 ldr x29,[sp],#80 + .inst 0xd50323bf // autiasp ret .size poly1305_blocks_neon,.-poly1305_blocks_neon --- linux-azure-5.8-5.8.0.orig/arch/arm64/crypto/poly1305-core.S_shipped +++ linux-azure-5.8-5.8.0/arch/arm64/crypto/poly1305-core.S_shipped @@ -779,7 +779,6 @@ ldp d14,d15,[sp,#64] addp v21.2d,v21.2d,v21.2d ldr x30,[sp,#8] - .inst 0xd50323bf // autiasp //////////////////////////////////////////////////////////////// // lazy reduction, but without narrowing @@ -821,6 +820,7 @@ str x4,[x0,#8] // set is_base2_26 ldr x29,[sp],#80 + .inst 0xd50323bf // autiasp ret .size poly1305_blocks_neon,.-poly1305_blocks_neon --- linux-azure-5.8-5.8.0.orig/arch/arm64/crypto/sha1-ce-glue.c +++ linux-azure-5.8-5.8.0/arch/arm64/crypto/sha1-ce-glue.c @@ -19,6 +19,7 @@ MODULE_DESCRIPTION("SHA1 secure hash using ARMv8 Crypto Extensions"); MODULE_AUTHOR("Ard Biesheuvel "); MODULE_LICENSE("GPL v2"); +MODULE_ALIAS_CRYPTO("sha1"); struct sha1_ce_state { struct sha1_state sst; --- linux-azure-5.8-5.8.0.orig/arch/arm64/crypto/sha2-ce-glue.c +++ linux-azure-5.8-5.8.0/arch/arm64/crypto/sha2-ce-glue.c @@ -19,6 +19,8 @@ MODULE_DESCRIPTION("SHA-224/SHA-256 secure hash using ARMv8 Crypto Extensions"); MODULE_AUTHOR("Ard Biesheuvel "); MODULE_LICENSE("GPL v2"); +MODULE_ALIAS_CRYPTO("sha224"); +MODULE_ALIAS_CRYPTO("sha256"); struct sha256_ce_state { struct sha256_state sst; --- linux-azure-5.8-5.8.0.orig/arch/arm64/crypto/sha3-ce-glue.c +++ linux-azure-5.8-5.8.0/arch/arm64/crypto/sha3-ce-glue.c @@ -23,6 +23,10 @@ MODULE_DESCRIPTION("SHA3 secure hash using ARMv8 Crypto Extensions"); MODULE_AUTHOR("Ard Biesheuvel "); MODULE_LICENSE("GPL v2"); +MODULE_ALIAS_CRYPTO("sha3-224"); +MODULE_ALIAS_CRYPTO("sha3-256"); +MODULE_ALIAS_CRYPTO("sha3-384"); +MODULE_ALIAS_CRYPTO("sha3-512"); asmlinkage void sha3_ce_transform(u64 *st, const u8 *data, int blocks, int md_len); --- linux-azure-5.8-5.8.0.orig/arch/arm64/crypto/sha512-ce-glue.c +++ linux-azure-5.8-5.8.0/arch/arm64/crypto/sha512-ce-glue.c @@ -23,6 +23,8 @@ MODULE_DESCRIPTION("SHA-384/SHA-512 secure hash using ARMv8 Crypto Extensions"); MODULE_AUTHOR("Ard Biesheuvel "); MODULE_LICENSE("GPL v2"); +MODULE_ALIAS_CRYPTO("sha384"); +MODULE_ALIAS_CRYPTO("sha512"); asmlinkage void sha512_ce_transform(struct sha512_state *sst, u8 const *src, int blocks); --- linux-azure-5.8-5.8.0.orig/arch/arm64/include/asm/Kbuild +++ linux-azure-5.8-5.8.0/arch/arm64/include/asm/Kbuild @@ -1,6 +1,5 @@ # SPDX-License-Identifier: GPL-2.0 generic-y += early_ioremap.h -generic-y += local64.h generic-y += mcs_spinlock.h generic-y += qrwlock.h generic-y += qspinlock.h --- linux-azure-5.8-5.8.0.orig/arch/arm64/include/asm/archrandom.h +++ linux-azure-5.8-5.8.0/arch/arm64/include/asm/archrandom.h @@ -6,7 +6,6 @@ #include #include -#include #include static inline bool __arm64_rndr(unsigned long *v) --- linux-azure-5.8-5.8.0.orig/arch/arm64/include/asm/atomic.h +++ linux-azure-5.8-5.8.0/arch/arm64/include/asm/atomic.h @@ -17,7 +17,7 @@ #include #define ATOMIC_OP(op) \ -static inline void arch_##op(int i, atomic_t *v) \ +static __always_inline void arch_##op(int i, atomic_t *v) \ { \ __lse_ll_sc_body(op, i, v); \ } @@ -32,7 +32,7 @@ #undef ATOMIC_OP #define ATOMIC_FETCH_OP(name, op) \ -static inline int arch_##op##name(int i, atomic_t *v) \ +static __always_inline int arch_##op##name(int i, atomic_t *v) \ { \ return __lse_ll_sc_body(op##name, i, v); \ } @@ -56,7 +56,7 @@ #undef ATOMIC_FETCH_OPS #define ATOMIC64_OP(op) \ -static inline void arch_##op(long i, atomic64_t *v) \ +static __always_inline void arch_##op(long i, atomic64_t *v) \ { \ __lse_ll_sc_body(op, i, v); \ } @@ -71,7 +71,7 @@ #undef ATOMIC64_OP #define ATOMIC64_FETCH_OP(name, op) \ -static inline long arch_##op##name(long i, atomic64_t *v) \ +static __always_inline long arch_##op##name(long i, atomic64_t *v) \ { \ return __lse_ll_sc_body(op##name, i, v); \ } @@ -94,7 +94,7 @@ #undef ATOMIC64_FETCH_OP #undef ATOMIC64_FETCH_OPS -static inline long arch_atomic64_dec_if_positive(atomic64_t *v) +static __always_inline long arch_atomic64_dec_if_positive(atomic64_t *v) { return __lse_ll_sc_body(atomic64_dec_if_positive, v); } --- linux-azure-5.8-5.8.0.orig/arch/arm64/include/asm/cpufeature.h +++ linux-azure-5.8-5.8.0/arch/arm64/include/asm/cpufeature.h @@ -268,6 +268,8 @@ /* * CPU feature detected at boot time based on feature of one or more CPUs. * All possible conflicts for a late CPU are ignored. + * NOTE: this means that a late CPU with the feature will *not* cause the + * capability to be advertised by cpus_have_*cap()! */ #define ARM64_CPUCAP_WEAK_LOCAL_CPU_FEATURE \ (ARM64_CPUCAP_SCOPE_LOCAL_CPU | \ --- linux-azure-5.8-5.8.0.orig/arch/arm64/include/asm/cputype.h +++ linux-azure-5.8-5.8.0/arch/arm64/include/asm/cputype.h @@ -85,6 +85,8 @@ #define QCOM_CPU_PART_FALKOR_V1 0x800 #define QCOM_CPU_PART_FALKOR 0xC00 #define QCOM_CPU_PART_KRYO 0x200 +#define QCOM_CPU_PART_KRYO_2XX_GOLD 0x800 +#define QCOM_CPU_PART_KRYO_2XX_SILVER 0x801 #define QCOM_CPU_PART_KRYO_3XX_SILVER 0x803 #define QCOM_CPU_PART_KRYO_4XX_GOLD 0x804 #define QCOM_CPU_PART_KRYO_4XX_SILVER 0x805 @@ -114,6 +116,8 @@ #define MIDR_QCOM_FALKOR_V1 MIDR_CPU_MODEL(ARM_CPU_IMP_QCOM, QCOM_CPU_PART_FALKOR_V1) #define MIDR_QCOM_FALKOR MIDR_CPU_MODEL(ARM_CPU_IMP_QCOM, QCOM_CPU_PART_FALKOR) #define MIDR_QCOM_KRYO MIDR_CPU_MODEL(ARM_CPU_IMP_QCOM, QCOM_CPU_PART_KRYO) +#define MIDR_QCOM_KRYO_2XX_GOLD MIDR_CPU_MODEL(ARM_CPU_IMP_QCOM, QCOM_CPU_PART_KRYO_2XX_GOLD) +#define MIDR_QCOM_KRYO_2XX_SILVER MIDR_CPU_MODEL(ARM_CPU_IMP_QCOM, QCOM_CPU_PART_KRYO_2XX_SILVER) #define MIDR_QCOM_KRYO_3XX_SILVER MIDR_CPU_MODEL(ARM_CPU_IMP_QCOM, QCOM_CPU_PART_KRYO_3XX_SILVER) #define MIDR_QCOM_KRYO_4XX_GOLD MIDR_CPU_MODEL(ARM_CPU_IMP_QCOM, QCOM_CPU_PART_KRYO_4XX_GOLD) #define MIDR_QCOM_KRYO_4XX_SILVER MIDR_CPU_MODEL(ARM_CPU_IMP_QCOM, QCOM_CPU_PART_KRYO_4XX_SILVER) --- linux-azure-5.8-5.8.0.orig/arch/arm64/include/asm/insn.h +++ linux-azure-5.8-5.8.0/arch/arm64/include/asm/insn.h @@ -359,9 +359,13 @@ __AARCH64_INSN_FUNCS(exception, 0xFF000000, 0xD4000000) __AARCH64_INSN_FUNCS(hint, 0xFFFFF01F, 0xD503201F) __AARCH64_INSN_FUNCS(br, 0xFFFFFC1F, 0xD61F0000) +__AARCH64_INSN_FUNCS(br_auth, 0xFEFFF800, 0xD61F0800) __AARCH64_INSN_FUNCS(blr, 0xFFFFFC1F, 0xD63F0000) +__AARCH64_INSN_FUNCS(blr_auth, 0xFEFFF800, 0xD63F0800) __AARCH64_INSN_FUNCS(ret, 0xFFFFFC1F, 0xD65F0000) +__AARCH64_INSN_FUNCS(ret_auth, 0xFFFFFBFF, 0xD65F0BFF) __AARCH64_INSN_FUNCS(eret, 0xFFFFFFFF, 0xD69F03E0) +__AARCH64_INSN_FUNCS(eret_auth, 0xFFFFFBFF, 0xD69F0BFF) __AARCH64_INSN_FUNCS(mrs, 0xFFF00000, 0xD5300000) __AARCH64_INSN_FUNCS(msr_imm, 0xFFF8F01F, 0xD500401F) __AARCH64_INSN_FUNCS(msr_reg, 0xFFF00000, 0xD5100000) --- linux-azure-5.8-5.8.0.orig/arch/arm64/include/asm/kvm_arm.h +++ linux-azure-5.8-5.8.0/arch/arm64/include/asm/kvm_arm.h @@ -71,11 +71,12 @@ * IMO: Override CPSR.I and enable signaling with VI * FMO: Override CPSR.F and enable signaling with VF * SWIO: Turn set/way invalidates into set/way clean+invalidate + * PTW: Take a stage2 fault if a stage1 walk steps in device memory */ #define HCR_GUEST_FLAGS (HCR_TSC | HCR_TSW | HCR_TWE | HCR_TWI | HCR_VM | \ HCR_BSU_IS | HCR_FB | HCR_TAC | \ HCR_AMO | HCR_SWIO | HCR_TIDCP | HCR_RW | HCR_TLOR | \ - HCR_FMO | HCR_IMO) + HCR_FMO | HCR_IMO | HCR_PTW ) #define HCR_VIRT_EXCP_MASK (HCR_VSE | HCR_VI | HCR_VF) #define HCR_HOST_NVHE_FLAGS (HCR_RW | HCR_API | HCR_APK) #define HCR_HOST_VHE_FLAGS (HCR_RW | HCR_TGE | HCR_E2H) --- linux-azure-5.8-5.8.0.orig/arch/arm64/include/asm/kvm_asm.h +++ linux-azure-5.8-5.8.0/arch/arm64/include/asm/kvm_asm.h @@ -121,6 +121,34 @@ *__hyp_this_cpu_ptr(sym); \ }) +#define __KVM_EXTABLE(from, to) \ + " .pushsection __kvm_ex_table, \"a\"\n" \ + " .align 3\n" \ + " .long (" #from " - .), (" #to " - .)\n" \ + " .popsection\n" + + +#define __kvm_at(at_op, addr) \ +( { \ + int __kvm_at_err = 0; \ + u64 spsr, elr; \ + asm volatile( \ + " mrs %1, spsr_el2\n" \ + " mrs %2, elr_el2\n" \ + "1: at "at_op", %3\n" \ + " isb\n" \ + " b 9f\n" \ + "2: msr spsr_el2, %1\n" \ + " msr elr_el2, %2\n" \ + " mov %w0, %4\n" \ + "9:\n" \ + __KVM_EXTABLE(1b, 2b) \ + : "+r" (__kvm_at_err), "=&r" (spsr), "=&r" (elr) \ + : "r" (addr), "i" (-EFAULT)); \ + __kvm_at_err; \ +} ) + + #else /* __ASSEMBLY__ */ .macro hyp_adr_this_cpu reg, sym, tmp @@ -146,6 +174,21 @@ kern_hyp_va \vcpu .endm +/* + * KVM extable for unexpected exceptions. + * In the same format _asm_extable, but output to a different section so that + * it can be mapped to EL2. The KVM version is not sorted. The caller must + * ensure: + * x18 has the hypervisor value to allow any Shadow-Call-Stack instrumented + * code to write to it, and that SPSR_EL2 and ELR_EL2 are restored by the fixup. + */ +.macro _kvm_extable, from, to + .pushsection __kvm_ex_table, "a" + .align 3 + .long (\from - .), (\to - .) + .popsection +.endm + #endif #endif /* __ARM_KVM_ASM_H__ */ --- linux-azure-5.8-5.8.0.orig/arch/arm64/include/asm/kvm_emulate.h +++ linux-azure-5.8-5.8.0/arch/arm64/include/asm/kvm_emulate.h @@ -319,7 +319,7 @@ return (kvm_vcpu_get_hsr(vcpu) & ESR_ELx_SRT_MASK) >> ESR_ELx_SRT_SHIFT; } -static __always_inline bool kvm_vcpu_dabt_iss1tw(const struct kvm_vcpu *vcpu) +static __always_inline bool kvm_vcpu_abt_iss1tw(const struct kvm_vcpu *vcpu) { return !!(kvm_vcpu_get_hsr(vcpu) & ESR_ELx_S1PTW); } @@ -327,7 +327,7 @@ static __always_inline bool kvm_vcpu_dabt_iswrite(const struct kvm_vcpu *vcpu) { return !!(kvm_vcpu_get_hsr(vcpu) & ESR_ELx_WNR) || - kvm_vcpu_dabt_iss1tw(vcpu); /* AF/DBM update */ + kvm_vcpu_abt_iss1tw(vcpu); /* AF/DBM update */ } static inline bool kvm_vcpu_dabt_is_cm(const struct kvm_vcpu *vcpu) @@ -356,6 +356,11 @@ return kvm_vcpu_trap_get_class(vcpu) == ESR_ELx_EC_IABT_LOW; } +static inline bool kvm_vcpu_trap_is_exec_fault(const struct kvm_vcpu *vcpu) +{ + return kvm_vcpu_trap_is_iabt(vcpu) && !kvm_vcpu_abt_iss1tw(vcpu); +} + static __always_inline u8 kvm_vcpu_trap_get_fault(const struct kvm_vcpu *vcpu) { return kvm_vcpu_get_hsr(vcpu) & ESR_ELx_FSC; @@ -393,6 +398,9 @@ static inline bool kvm_is_write_fault(struct kvm_vcpu *vcpu) { + if (kvm_vcpu_abt_iss1tw(vcpu)) + return true; + if (kvm_vcpu_trap_is_iabt(vcpu)) return false; --- linux-azure-5.8-5.8.0.orig/arch/arm64/include/asm/kvm_host.h +++ linux-azure-5.8-5.8.0/arch/arm64/include/asm/kvm_host.h @@ -190,6 +190,7 @@ #define c2_TTBR1 (TTBR1_EL1 * 2) /* Translation Table Base Register 1 */ #define c2_TTBR1_high (c2_TTBR1 + 1) /* TTBR1 top 32 bits */ #define c2_TTBCR (TCR_EL1 * 2) /* Translation Table Base Control R. */ +#define c2_TTBCR2 (c2_TTBCR + 1) /* Translation Table Base Control R. 2 */ #define c3_DACR (DACR32_EL2 * 2)/* Domain Access Control Register */ #define c5_DFSR (ESR_EL1 * 2) /* Data Fault Status Register */ #define c5_IFSR (IFSR32_EL2 * 2)/* Instruction Fault Status Register */ @@ -217,6 +218,7 @@ #define cp14_DBGWCR0 (DBGWCR0_EL1 * 2) #define cp14_DBGWVR0 (DBGWVR0_EL1 * 2) #define cp14_DBGDCCINT (MDCCINT_EL1 * 2) +#define cp14_DBGVCR (DBGVCR32_EL2 * 2) #define NR_COPRO_REGS (NR_SYS_REGS * 2) @@ -443,7 +445,7 @@ #define KVM_ARCH_WANT_MMU_NOTIFIER int kvm_unmap_hva_range(struct kvm *kvm, - unsigned long start, unsigned long end); + unsigned long start, unsigned long end, unsigned flags); int kvm_set_spte_hva(struct kvm *kvm, unsigned long hva, pte_t pte); int kvm_age_hva(struct kvm *kvm, unsigned long start, unsigned long end); int kvm_test_age_hva(struct kvm *kvm, unsigned long hva); --- linux-azure-5.8-5.8.0.orig/arch/arm64/include/asm/memory.h +++ linux-azure-5.8-5.8.0/arch/arm64/include/asm/memory.h @@ -163,7 +163,6 @@ #include #include -extern s64 physvirt_offset; extern s64 memstart_addr; /* PHYS_OFFSET - the physical address of the start of memory. */ #define PHYS_OFFSET ({ VM_BUG_ON(memstart_addr & 1); memstart_addr; }) @@ -233,13 +232,13 @@ /* - * The linear kernel range starts at the bottom of the virtual address - * space. Testing the top bit for the start of the region is a - * sufficient check and avoids having to worry about the tag. + * Check whether an arbitrary address is within the linear map, which + * lives in the [PAGE_OFFSET, PAGE_END) interval at the bottom of the + * kernel's TTBR1 address range. */ -#define __is_lm_address(addr) (!(((u64)addr) & BIT(vabits_actual - 1))) +#define __is_lm_address(addr) (((u64)(addr) ^ PAGE_OFFSET) < (PAGE_END - PAGE_OFFSET)) -#define __lm_to_phys(addr) (((addr) + physvirt_offset)) +#define __lm_to_phys(addr) (((addr) & ~PAGE_OFFSET) + PHYS_OFFSET) #define __kimg_to_phys(addr) ((addr) - kimage_voffset) #define __virt_to_phys_nodebug(x) ({ \ @@ -257,7 +256,7 @@ #define __phys_addr_symbol(x) __pa_symbol_nodebug(x) #endif /* CONFIG_DEBUG_VIRTUAL */ -#define __phys_to_virt(x) ((unsigned long)((x) - physvirt_offset)) +#define __phys_to_virt(x) ((unsigned long)((x) - PHYS_OFFSET) | PAGE_OFFSET) #define __phys_to_kimg(x) ((unsigned long)((x) + kimage_voffset)) /* @@ -318,7 +317,7 @@ #endif /* !CONFIG_SPARSEMEM_VMEMMAP || CONFIG_DEBUG_VIRTUAL */ #define virt_addr_valid(addr) ({ \ - __typeof__(addr) __addr = addr; \ + __typeof__(addr) __addr = __tag_reset(addr); \ __is_lm_address(__addr) && pfn_valid(virt_to_pfn(__addr)); \ }) --- linux-azure-5.8-5.8.0.orig/arch/arm64/include/asm/numa.h +++ linux-azure-5.8-5.8.0/arch/arm64/include/asm/numa.h @@ -25,6 +25,9 @@ /* Returns a pointer to the cpumask of CPUs on Node 'node'. */ static inline const struct cpumask *cpumask_of_node(int node) { + if (node == NUMA_NO_NODE) + return cpu_all_mask; + return node_to_cpumask_map[node]; } #endif --- linux-azure-5.8-5.8.0.orig/arch/arm64/include/asm/pgtable.h +++ linux-azure-5.8-5.8.0/arch/arm64/include/asm/pgtable.h @@ -23,6 +23,8 @@ #define VMALLOC_START (MODULES_END) #define VMALLOC_END (- PUD_SIZE - VMEMMAP_SIZE - SZ_64K) +#define vmemmap ((struct page *)VMEMMAP_START - (memstart_addr >> PAGE_SHIFT)) + #define FIRST_USER_ADDRESS 0UL #ifndef __ASSEMBLY__ @@ -33,8 +35,6 @@ #include #include -extern struct page *vmemmap; - extern void __pte_error(const char *file, int line, unsigned long val); extern void __pmd_error(const char *file, int line, unsigned long val); extern void __pud_error(const char *file, int line, unsigned long val); @@ -98,8 +98,6 @@ #define pte_valid(pte) (!!(pte_val(pte) & PTE_VALID)) #define pte_valid_not_user(pte) \ ((pte_val(pte) & (PTE_VALID | PTE_USER)) == PTE_VALID) -#define pte_valid_young(pte) \ - ((pte_val(pte) & (PTE_VALID | PTE_AF)) == (PTE_VALID | PTE_AF)) #define pte_valid_user(pte) \ ((pte_val(pte) & (PTE_VALID | PTE_USER)) == (PTE_VALID | PTE_USER)) @@ -107,9 +105,12 @@ * Could the pte be present in the TLB? We must check mm_tlb_flush_pending * so that we don't erroneously return false for pages that have been * remapped as PROT_NONE but are yet to be flushed from the TLB. + * Note that we can't make any assumptions based on the state of the access + * flag, since ptep_clear_flush_young() elides a DSB when invalidating the + * TLB. */ #define pte_accessible(mm, pte) \ - (mm_tlb_flush_pending(mm) ? pte_present(pte) : pte_valid_young(pte)) + (mm_tlb_flush_pending(mm) ? pte_present(pte) : pte_valid(pte)) /* * p??_access_permitted() is true for valid user mappings (subject to the @@ -135,13 +136,6 @@ return pte; } -static inline pte_t pte_wrprotect(pte_t pte) -{ - pte = clear_pte_bit(pte, __pgprot(PTE_WRITE)); - pte = set_pte_bit(pte, __pgprot(PTE_RDONLY)); - return pte; -} - static inline pte_t pte_mkwrite(pte_t pte) { pte = set_pte_bit(pte, __pgprot(PTE_WRITE)); @@ -167,6 +161,20 @@ return pte; } +static inline pte_t pte_wrprotect(pte_t pte) +{ + /* + * If hardware-dirty (PTE_WRITE/DBM bit set and PTE_RDONLY + * clear), set the PTE_DIRTY bit. + */ + if (pte_hw_dirty(pte)) + pte = pte_mkdirty(pte); + + pte = clear_pte_bit(pte, __pgprot(PTE_WRITE)); + pte = set_pte_bit(pte, __pgprot(PTE_RDONLY)); + return pte; +} + static inline pte_t pte_mkold(pte_t pte) { return clear_pte_bit(pte, __pgprot(PTE_AF)); @@ -788,12 +796,6 @@ pte = READ_ONCE(*ptep); do { old_pte = pte; - /* - * If hardware-dirty (PTE_WRITE/DBM bit set and PTE_RDONLY - * clear), set the PTE_DIRTY bit. - */ - if (pte_hw_dirty(pte)) - pte = pte_mkdirty(pte); pte = pte_wrprotect(pte); pte_val(pte) = cmpxchg_relaxed(&pte_val(*ptep), pte_val(old_pte), pte_val(pte)); --- linux-azure-5.8-5.8.0.orig/arch/arm64/include/asm/processor.h +++ linux-azure-5.8-5.8.0/arch/arm64/include/asm/processor.h @@ -95,7 +95,8 @@ #endif /* CONFIG_ARM64_FORCE_52BIT */ extern phys_addr_t arm64_dma_phys_limit; -#define ARCH_LOW_ADDRESS_LIMIT (arm64_dma_phys_limit - 1) +extern phys_addr_t arm64_dma32_phys_limit; +#define ARCH_LOW_ADDRESS_LIMIT ((arm64_dma_phys_limit ? : arm64_dma32_phys_limit) - 1) struct debug_info { #ifdef CONFIG_HAVE_HW_BREAKPOINT --- linux-azure-5.8-5.8.0.orig/arch/arm64/include/asm/smp.h +++ linux-azure-5.8-5.8.0/arch/arm64/include/asm/smp.h @@ -46,7 +46,12 @@ * Logical CPU mapping. */ extern u64 __cpu_logical_map[NR_CPUS]; -#define cpu_logical_map(cpu) __cpu_logical_map[cpu] +extern u64 cpu_logical_map(int cpu); + +static inline void set_cpu_logical_map(int cpu, u64 hwid) +{ + __cpu_logical_map[cpu] = hwid; +} struct seq_file; --- linux-azure-5.8-5.8.0.orig/arch/arm64/kernel/cpu_errata.c +++ linux-azure-5.8-5.8.0/arch/arm64/kernel/cpu_errata.c @@ -234,14 +234,17 @@ smccc_end = NULL; break; -#if IS_ENABLED(CONFIG_KVM) case SMCCC_CONDUIT_SMC: cb = call_smc_arch_workaround_1; +#if IS_ENABLED(CONFIG_KVM) smccc_start = __smccc_workaround_1_smc; smccc_end = __smccc_workaround_1_smc + __SMCCC_WORKAROUND_1_SMC_SZ; - break; +#else + smccc_start = NULL; + smccc_end = NULL; #endif + break; default: return -1; @@ -454,6 +457,12 @@ return required; } +static void cpu_enable_ssbd_mitigation(const struct arm64_cpu_capabilities *cap) +{ + if (ssbd_state != ARM64_SSBD_FORCE_DISABLE) + cap->matches(cap, SCOPE_LOCAL_CPU); +} + /* known invulnerable cores */ static const struct midr_range arm64_ssb_cpus[] = { MIDR_ALL_VERSIONS(MIDR_CORTEX_A35), @@ -596,6 +605,12 @@ return (need_wa > 0); } +static void +cpu_enable_branch_predictor_hardening(const struct arm64_cpu_capabilities *cap) +{ + cap->matches(cap, SCOPE_LOCAL_CPU); +} + static const __maybe_unused struct midr_range tx2_family_cpus[] = { MIDR_ALL_VERSIONS(MIDR_BRCM_VULCAN), MIDR_ALL_VERSIONS(MIDR_CAVIUM_THUNDERX2), @@ -735,6 +750,8 @@ MIDR_REV_RANGE(MIDR_CORTEX_A53, 0, 0, 4), /* Brahma-B53 r0p[0] */ MIDR_REV(MIDR_BRAHMA_B53, 0, 0), + /* Kryo2XX Silver rAp4 */ + MIDR_REV(MIDR_QCOM_KRYO_2XX_SILVER, 0xa, 0x4), {}, }; #endif @@ -887,9 +904,11 @@ }, #endif { + .desc = "Branch predictor hardening", .capability = ARM64_HARDEN_BRANCH_PREDICTOR, .type = ARM64_CPUCAP_LOCAL_CPU_ERRATUM, .matches = check_branch_predictor, + .cpu_enable = cpu_enable_branch_predictor_hardening, }, #ifdef CONFIG_HARDEN_EL2_VECTORS { @@ -903,6 +922,7 @@ .capability = ARM64_SSBD, .type = ARM64_CPUCAP_LOCAL_CPU_ERRATUM, .matches = has_ssbd_mitigation, + .cpu_enable = cpu_enable_ssbd_mitigation, .midr_range_list = arm64_ssb_cpus, }, #ifdef CONFIG_ARM64_ERRATUM_1418040 @@ -910,6 +930,12 @@ .desc = "ARM erratum 1418040", .capability = ARM64_WORKAROUND_1418040, ERRATA_MIDR_RANGE_LIST(erratum_1418040_list), + /* + * We need to allow affected CPUs to come in late, but + * also need the non-affected CPUs to be able to come + * in at any point in time. Wonderful. + */ + .type = ARM64_CPUCAP_WEAK_LOCAL_CPU_FEATURE, }, #endif #ifdef CONFIG_ARM64_WORKAROUND_SPECULATIVE_AT --- linux-azure-5.8-5.8.0.orig/arch/arm64/kernel/cpufeature.c +++ linux-azure-5.8-5.8.0/arch/arm64/kernel/cpufeature.c @@ -1290,6 +1290,8 @@ MIDR_ALL_VERSIONS(MIDR_CORTEX_A73), MIDR_ALL_VERSIONS(MIDR_HISI_TSV110), MIDR_ALL_VERSIONS(MIDR_NVIDIA_CARMEL), + MIDR_ALL_VERSIONS(MIDR_QCOM_KRYO_2XX_GOLD), + MIDR_ALL_VERSIONS(MIDR_QCOM_KRYO_2XX_SILVER), MIDR_ALL_VERSIONS(MIDR_QCOM_KRYO_3XX_SILVER), MIDR_ALL_VERSIONS(MIDR_QCOM_KRYO_4XX_SILVER), { /* sentinel */ } @@ -1407,7 +1409,7 @@ /* List of CPUs which have broken DBM support. */ static const struct midr_range cpus[] = { #ifdef CONFIG_ARM64_ERRATUM_1024718 - MIDR_RANGE(MIDR_CORTEX_A55, 0, 0, 1, 0), // A55 r0p0 -r1p0 + MIDR_ALL_VERSIONS(MIDR_CORTEX_A55), /* Kryo4xx Silver (rdpe => r1p0) */ MIDR_REV(MIDR_QCOM_KRYO_4XX_SILVER, 0xd, 0xe), #endif @@ -2469,7 +2471,7 @@ int parange, ipa_max; unsigned int safe_vmid_bits, vmid_bits; - if (!IS_ENABLED(CONFIG_KVM) || !IS_ENABLED(CONFIG_KVM_ARM_HOST)) + if (!IS_ENABLED(CONFIG_KVM)) return; safe_mmfr1 = read_sanitised_ftr_reg(SYS_ID_AA64MMFR1_EL1); --- linux-azure-5.8-5.8.0.orig/arch/arm64/kernel/efi-header.S +++ linux-azure-5.8-5.8.0/arch/arm64/kernel/efi-header.S @@ -147,6 +147,6 @@ * correctly at this alignment, we must ensure that .text is * placed at a 4k boundary in the Image to begin with. */ - .align 12 + .balign SEGMENT_ALIGN efi_header_end: .endm --- linux-azure-5.8-5.8.0.orig/arch/arm64/kernel/entry.S +++ linux-azure-5.8-5.8.0/arch/arm64/kernel/entry.S @@ -169,19 +169,6 @@ stp x28, x29, [sp, #16 * 14] .if \el == 0 - .if \regsize == 32 - /* - * If we're returning from a 32-bit task on a system affected by - * 1418040 then re-enable userspace access to the virtual counter. - */ -#ifdef CONFIG_ARM64_ERRATUM_1418040 -alternative_if ARM64_WORKAROUND_1418040 - mrs x0, cntkctl_el1 - orr x0, x0, #2 // ARCH_TIMER_USR_VCT_ACCESS_EN - msr cntkctl_el1, x0 -alternative_else_nop_endif -#endif - .endif clear_gp_regs mrs x21, sp_el0 ldr_this_cpu tsk, __entry_task, x20 @@ -337,14 +324,6 @@ tst x22, #PSR_MODE32_BIT // native task? b.eq 3f -#ifdef CONFIG_ARM64_ERRATUM_1418040 -alternative_if ARM64_WORKAROUND_1418040 - mrs x0, cntkctl_el1 - bic x0, x0, #2 // ARCH_TIMER_USR_VCT_ACCESS_EN - msr cntkctl_el1, x0 -alternative_else_nop_endif -#endif - #ifdef CONFIG_ARM64_ERRATUM_845719 alternative_if ARM64_WORKAROUND_845719 #ifdef CONFIG_PID_IN_CONTEXTIDR --- linux-azure-5.8-5.8.0.orig/arch/arm64/kernel/head.S +++ linux-azure-5.8-5.8.0/arch/arm64/kernel/head.S @@ -989,6 +989,7 @@ tlbi vmalle1 // Remove any stale TLB entries dsb nsh + isb msr sctlr_el1, x19 // re-enable the MMU isb --- linux-azure-5.8-5.8.0.orig/arch/arm64/kernel/insn.c +++ linux-azure-5.8-5.8.0/arch/arm64/kernel/insn.c @@ -176,7 +176,7 @@ bool __kprobes aarch64_insn_is_branch(u32 insn) { - /* b, bl, cb*, tb*, b.cond, br, blr */ + /* b, bl, cb*, tb*, ret*, b.cond, br*, blr* */ return aarch64_insn_is_b(insn) || aarch64_insn_is_bl(insn) || @@ -185,8 +185,11 @@ aarch64_insn_is_tbz(insn) || aarch64_insn_is_tbnz(insn) || aarch64_insn_is_ret(insn) || + aarch64_insn_is_ret_auth(insn) || aarch64_insn_is_br(insn) || + aarch64_insn_is_br_auth(insn) || aarch64_insn_is_blr(insn) || + aarch64_insn_is_blr_auth(insn) || aarch64_insn_is_bcond(insn); } --- linux-azure-5.8-5.8.0.orig/arch/arm64/kernel/kaslr.c +++ linux-azure-5.8-5.8.0/arch/arm64/kernel/kaslr.c @@ -11,8 +11,8 @@ #include #include #include +#include -#include #include #include #include @@ -84,6 +84,7 @@ void *fdt; u64 seed, offset, mask, module_range; const u8 *cmdline, *str; + unsigned long raw; int size; /* @@ -122,15 +123,12 @@ } /* - * Mix in any entropy obtainable architecturally, open coded - * since this runs extremely early. + * Mix in any entropy obtainable architecturally if enabled + * and supported. */ - if (__early_cpu_has_rndr()) { - unsigned long raw; - if (__arm64_rndr(&raw)) - seed ^= raw; - } + if (arch_get_random_seed_long_early(&raw)) + seed ^= raw; if (!seed) { kaslr_status = KASLR_DISABLED_NO_SEED; --- linux-azure-5.8-5.8.0.orig/arch/arm64/kernel/kexec_image.c +++ linux-azure-5.8-5.8.0/arch/arm64/kernel/kexec_image.c @@ -43,7 +43,7 @@ u64 flags, value; bool be_image, be_kernel; struct kexec_buf kbuf; - unsigned long text_offset; + unsigned long text_offset, kernel_segment_number; struct kexec_segment *kernel_segment; int ret; @@ -88,11 +88,37 @@ /* Adjust kernel segment with TEXT_OFFSET */ kbuf.memsz += text_offset; - ret = kexec_add_buffer(&kbuf); - if (ret) + kernel_segment_number = image->nr_segments; + + /* + * The location of the kernel segment may make it impossible to satisfy + * the other segment requirements, so we try repeatedly to find a + * location that will work. + */ + while ((ret = kexec_add_buffer(&kbuf)) == 0) { + /* Try to load additional data */ + kernel_segment = &image->segment[kernel_segment_number]; + ret = load_other_segments(image, kernel_segment->mem, + kernel_segment->memsz, initrd, + initrd_len, cmdline); + if (!ret) + break; + + /* + * We couldn't find space for the other segments; erase the + * kernel segment and try the next available hole. + */ + image->nr_segments -= 1; + kbuf.buf_min = kernel_segment->mem + kernel_segment->memsz; + kbuf.mem = KEXEC_BUF_MEM_UNKNOWN; + } + + if (ret) { + pr_err("Could not find any suitable kernel location!"); return ERR_PTR(ret); + } - kernel_segment = &image->segment[image->nr_segments - 1]; + kernel_segment = &image->segment[kernel_segment_number]; kernel_segment->mem += text_offset; kernel_segment->memsz -= text_offset; image->start = kernel_segment->mem; @@ -101,12 +127,7 @@ kernel_segment->mem, kbuf.bufsz, kernel_segment->memsz); - /* Load additional data */ - ret = load_other_segments(image, - kernel_segment->mem, kernel_segment->memsz, - initrd, initrd_len, cmdline); - - return ERR_PTR(ret); + return 0; } #ifdef CONFIG_KEXEC_IMAGE_VERIFY_SIG --- linux-azure-5.8-5.8.0.orig/arch/arm64/kernel/machine_kexec_file.c +++ linux-azure-5.8-5.8.0/arch/arm64/kernel/machine_kexec_file.c @@ -182,8 +182,10 @@ /* duplicate a device tree blob */ ret = fdt_open_into(initial_boot_params, buf, buf_size); - if (ret) + if (ret) { + vfree(buf); return -EINVAL; + } ret = setup_dtb(image, initrd_load_addr, initrd_len, cmdline, buf); @@ -242,6 +244,11 @@ return ret; } +/* + * Tries to add the initrd and DTB to the image. If it is not possible to find + * valid locations, this function will undo changes to the image and return non + * zero. + */ int load_other_segments(struct kimage *image, unsigned long kernel_load_addr, unsigned long kernel_size, @@ -250,7 +257,8 @@ { struct kexec_buf kbuf; void *headers, *dtb = NULL; - unsigned long headers_sz, initrd_load_addr = 0, dtb_len; + unsigned long headers_sz, initrd_load_addr = 0, dtb_len, + orig_segments = image->nr_segments; int ret = 0; kbuf.image = image; @@ -336,6 +344,7 @@ return 0; out_err: + image->nr_segments = orig_segments; vfree(dtb); return ret; } --- linux-azure-5.8-5.8.0.orig/arch/arm64/kernel/module-plts.c +++ linux-azure-5.8-5.8.0/arch/arm64/kernel/module-plts.c @@ -271,8 +271,7 @@ mod->arch.core.plt_shndx = i; else if (!strcmp(secstrings + sechdrs[i].sh_name, ".init.plt")) mod->arch.init.plt_shndx = i; - else if (IS_ENABLED(CONFIG_DYNAMIC_FTRACE) && - !strcmp(secstrings + sechdrs[i].sh_name, + else if (!strcmp(secstrings + sechdrs[i].sh_name, ".text.ftrace_trampoline")) tramp = sechdrs + i; else if (sechdrs[i].sh_type == SHT_SYMTAB) --- linux-azure-5.8-5.8.0.orig/arch/arm64/kernel/module.lds +++ linux-azure-5.8-5.8.0/arch/arm64/kernel/module.lds @@ -1,5 +1,5 @@ SECTIONS { - .plt (NOLOAD) : { BYTE(0) } - .init.plt (NOLOAD) : { BYTE(0) } - .text.ftrace_trampoline (NOLOAD) : { BYTE(0) } + .plt 0 (NOLOAD) : { BYTE(0) } + .init.plt 0 (NOLOAD) : { BYTE(0) } + .text.ftrace_trampoline 0 (NOLOAD) : { BYTE(0) } } --- linux-azure-5.8-5.8.0.orig/arch/arm64/kernel/paravirt.c +++ linux-azure-5.8-5.8.0/arch/arm64/kernel/paravirt.c @@ -50,16 +50,19 @@ struct pv_time_stolen_time_region *reg; reg = per_cpu_ptr(&stolen_time_region, cpu); - if (!reg->kaddr) { - pr_warn_once("stolen time enabled but not configured for cpu %d\n", - cpu); + + /* + * paravirt_steal_clock() may be called before the CPU + * online notification callback runs. Until the callback + * has run we just return zero. + */ + if (!reg->kaddr) return 0; - } return le64_to_cpu(READ_ONCE(reg->kaddr->stolen_time)); } -static int stolen_time_dying_cpu(unsigned int cpu) +static int stolen_time_cpu_down_prepare(unsigned int cpu) { struct pv_time_stolen_time_region *reg; @@ -73,7 +76,7 @@ return 0; } -static int init_stolen_time_cpu(unsigned int cpu) +static int stolen_time_cpu_online(unsigned int cpu) { struct pv_time_stolen_time_region *reg; struct arm_smccc_res res; @@ -103,19 +106,20 @@ return 0; } -static int pv_time_init_stolen_time(void) +static int __init pv_time_init_stolen_time(void) { int ret; - ret = cpuhp_setup_state(CPUHP_AP_ARM_KVMPV_STARTING, - "hypervisor/arm/pvtime:starting", - init_stolen_time_cpu, stolen_time_dying_cpu); + ret = cpuhp_setup_state(CPUHP_AP_ONLINE_DYN, + "hypervisor/arm/pvtime:online", + stolen_time_cpu_online, + stolen_time_cpu_down_prepare); if (ret < 0) return ret; return 0; } -static bool has_pv_steal_clock(void) +static bool __init has_pv_steal_clock(void) { struct arm_smccc_res res; --- linux-azure-5.8-5.8.0.orig/arch/arm64/kernel/perf_event.c +++ linux-azure-5.8-5.8.0/arch/arm64/kernel/perf_event.c @@ -155,7 +155,7 @@ pmu_attr = container_of(attr, struct perf_pmu_events_attr, attr); - return sprintf(page, "event=0x%03llx\n", pmu_attr->id); + return sprintf(page, "event=0x%04llx\n", pmu_attr->id); } #define ARMV8_EVENT_ATTR(name, config) \ @@ -244,10 +244,13 @@ test_bit(pmu_attr->id, cpu_pmu->pmceid_bitmap)) return attr->mode; - pmu_attr->id -= ARMV8_PMUV3_EXT_COMMON_EVENT_BASE; - if (pmu_attr->id < ARMV8_PMUV3_MAX_COMMON_EVENTS && - test_bit(pmu_attr->id, cpu_pmu->pmceid_ext_bitmap)) - return attr->mode; + if (pmu_attr->id >= ARMV8_PMUV3_EXT_COMMON_EVENT_BASE) { + u64 id = pmu_attr->id - ARMV8_PMUV3_EXT_COMMON_EVENT_BASE; + + if (id < ARMV8_PMUV3_MAX_COMMON_EVENTS && + test_bit(id, cpu_pmu->pmceid_ext_bitmap)) + return attr->mode; + } return 0; } @@ -507,6 +510,11 @@ static inline void armv8pmu_enable_counter(u32 mask) { + /* + * Make sure event configuration register writes are visible before we + * enable the counter. + * */ + isb(); write_sysreg(mask, pmcntenset_el0); } --- linux-azure-5.8-5.8.0.orig/arch/arm64/kernel/probes/decode-insn.c +++ linux-azure-5.8-5.8.0/arch/arm64/kernel/probes/decode-insn.c @@ -29,7 +29,8 @@ aarch64_insn_is_msr_imm(insn) || aarch64_insn_is_msr_reg(insn) || aarch64_insn_is_exception(insn) || - aarch64_insn_is_eret(insn)) + aarch64_insn_is_eret(insn) || + aarch64_insn_is_eret_auth(insn)) return false; /* --- linux-azure-5.8-5.8.0.orig/arch/arm64/kernel/probes/uprobes.c +++ linux-azure-5.8-5.8.0/arch/arm64/kernel/probes/uprobes.c @@ -38,7 +38,7 @@ /* TODO: Currently we do not support AARCH32 instruction probing */ if (mm->context.flags & MMCF_AARCH32) - return -ENOTSUPP; + return -EOPNOTSUPP; else if (!IS_ALIGNED(addr, AARCH64_INSN_SIZE)) return -EINVAL; --- linux-azure-5.8-5.8.0.orig/arch/arm64/kernel/process.c +++ linux-azure-5.8-5.8.0/arch/arm64/kernel/process.c @@ -516,6 +516,38 @@ } /* + * ARM erratum 1418040 handling, affecting the 32bit view of CNTVCT. + * Assuming the virtual counter is enabled at the beginning of times: + * + * - disable access when switching from a 64bit task to a 32bit task + * - enable access when switching from a 32bit task to a 64bit task + */ +static void erratum_1418040_thread_switch(struct task_struct *prev, + struct task_struct *next) +{ + bool prev32, next32; + u64 val; + + if (!IS_ENABLED(CONFIG_ARM64_ERRATUM_1418040)) + return; + + prev32 = is_compat_thread(task_thread_info(prev)); + next32 = is_compat_thread(task_thread_info(next)); + + if (prev32 == next32 || !this_cpu_has_cap(ARM64_WORKAROUND_1418040)) + return; + + val = read_sysreg(cntkctl_el1); + + if (!next32) + val |= ARCH_TIMER_USR_VCT_ACCESS_EN; + else + val &= ~ARCH_TIMER_USR_VCT_ACCESS_EN; + + write_sysreg(val, cntkctl_el1); +} + +/* * Thread switching. */ __notrace_funcgraph struct task_struct *__switch_to(struct task_struct *prev, @@ -530,6 +562,7 @@ entry_task_switch(next); uao_thread_switch(next); ssbs_thread_switch(next); + erratum_1418040_thread_switch(prev, next); /* * Complete any pending TLB or cache maintenance on this CPU in case --- linux-azure-5.8-5.8.0.orig/arch/arm64/kernel/psci.c +++ linux-azure-5.8-5.8.0/arch/arm64/kernel/psci.c @@ -66,7 +66,6 @@ static void cpu_psci_cpu_die(unsigned int cpu) { - int ret; /* * There are no known implementations of PSCI actually using the * power state field, pass a sensible default for now. @@ -74,9 +73,7 @@ u32 state = PSCI_POWER_STATE_TYPE_POWER_DOWN << PSCI_0_2_POWER_STATE_TYPE_SHIFT; - ret = psci_ops.cpu_off(state); - - pr_crit("unable to power off CPU%u (%d)\n", cpu, ret); + psci_ops.cpu_off(state); } static int cpu_psci_cpu_kill(unsigned int cpu) --- linux-azure-5.8-5.8.0.orig/arch/arm64/kernel/ptrace.c +++ linux-azure-5.8-5.8.0/arch/arm64/kernel/ptrace.c @@ -1855,7 +1855,7 @@ if (flags & (_TIF_SYSCALL_EMU | _TIF_SYSCALL_TRACE)) { tracehook_report_syscall(regs, PTRACE_SYSCALL_ENTER); - if (!in_syscall(regs) || (flags & _TIF_SYSCALL_EMU)) + if (flags & _TIF_SYSCALL_EMU) return NO_SYSCALL; } --- linux-azure-5.8-5.8.0.orig/arch/arm64/kernel/setup.c +++ linux-azure-5.8-5.8.0/arch/arm64/kernel/setup.c @@ -85,7 +85,7 @@ void __init smp_setup_processor_id(void) { u64 mpidr = read_cpuid_mpidr() & MPIDR_HWID_BITMASK; - cpu_logical_map(0) = mpidr; + set_cpu_logical_map(0, mpidr); /* * clear __my_cpu_offset on boot CPU to avoid hang caused by @@ -276,6 +276,12 @@ u64 __cpu_logical_map[NR_CPUS] = { [0 ... NR_CPUS-1] = INVALID_HWID }; +u64 cpu_logical_map(int cpu) +{ + return __cpu_logical_map[cpu]; +} +EXPORT_SYMBOL_GPL(cpu_logical_map); + void __init setup_arch(char **cmdline_p) { init_mm.start_code = (unsigned long) _text; --- linux-azure-5.8-5.8.0.orig/arch/arm64/kernel/signal.c +++ linux-azure-5.8-5.8.0/arch/arm64/kernel/signal.c @@ -910,13 +910,6 @@ asmlinkage void do_notify_resume(struct pt_regs *regs, unsigned long thread_flags) { - /* - * The assembly code enters us with IRQs off, but it hasn't - * informed the tracing code of that for efficiency reasons. - * Update the trace code with the current status. - */ - trace_hardirqs_off(); - do { /* Check valid user FS if needed */ addr_limit_user_check(); --- linux-azure-5.8-5.8.0.orig/arch/arm64/kernel/smp.c +++ linux-azure-5.8-5.8.0/arch/arm64/kernel/smp.c @@ -214,6 +214,7 @@ if (system_uses_irq_prio_masking()) init_gic_priority_masking(); + rcu_cpu_starting(cpu); preempt_disable(); trace_hardirqs_off(); @@ -401,6 +402,7 @@ /* Mark this CPU absent */ set_cpu_present(cpu, 0); + rcu_report_dead(cpu); if (IS_ENABLED(CONFIG_HOTPLUG_CPU)) { update_cpu_boot_status(CPU_KILL_ME); @@ -567,7 +569,7 @@ return; /* map the logical cpu id to cpu MPIDR */ - cpu_logical_map(cpu_count) = hwid; + set_cpu_logical_map(cpu_count, hwid); cpu_madt_gicc[cpu_count] = *processor; @@ -681,7 +683,7 @@ goto next; pr_debug("cpu logical map 0x%llx\n", hwid); - cpu_logical_map(cpu_count) = hwid; + set_cpu_logical_map(cpu_count, hwid); early_map_cpu_to_node(cpu_count, of_node_to_nid(dn)); next: @@ -722,7 +724,7 @@ for (i = 1; i < nr_cpu_ids; i++) { if (cpu_logical_map(i) != INVALID_HWID) { if (smp_cpu_setup(i)) - cpu_logical_map(i) = INVALID_HWID; + set_cpu_logical_map(i, INVALID_HWID); } } } --- linux-azure-5.8-5.8.0.orig/arch/arm64/kernel/suspend.c +++ linux-azure-5.8-5.8.0/arch/arm64/kernel/suspend.c @@ -117,7 +117,7 @@ if (!ret) ret = -EOPNOTSUPP; } else { - __cpu_suspend_exit(); + RCU_NONIDLE(__cpu_suspend_exit()); } unpause_graph_tracing(); --- linux-azure-5.8-5.8.0.orig/arch/arm64/kernel/syscall.c +++ linux-azure-5.8-5.8.0/arch/arm64/kernel/syscall.c @@ -120,8 +120,8 @@ */ cortex_a76_erratum_1463225_svc_handler(); + user_exit_irqoff(); local_daif_restore(DAIF_PROCCTX); - user_exit(); if (has_syscall_work(flags)) { /* @@ -156,15 +156,8 @@ if (!has_syscall_work(flags) && !IS_ENABLED(CONFIG_DEBUG_RSEQ)) { local_daif_mask(); flags = current_thread_info()->flags; - if (!has_syscall_work(flags) && !(flags & _TIF_SINGLESTEP)) { - /* - * We're off to userspace, where interrupts are - * always enabled after we restore the flags from - * the SPSR. - */ - trace_hardirqs_on(); + if (!has_syscall_work(flags) && !(flags & _TIF_SINGLESTEP)) return; - } local_daif_restore(DAIF_PROCCTX); } --- linux-azure-5.8-5.8.0.orig/arch/arm64/kernel/topology.c +++ linux-azure-5.8-5.8.0/arch/arm64/kernel/topology.c @@ -36,21 +36,23 @@ if (mpidr & MPIDR_UP_BITMASK) return; - /* Create cpu topology mapping based on MPIDR. */ - if (mpidr & MPIDR_MT_BITMASK) { - /* Multiprocessor system : Multi-threads per core */ - cpuid_topo->thread_id = MPIDR_AFFINITY_LEVEL(mpidr, 0); - cpuid_topo->core_id = MPIDR_AFFINITY_LEVEL(mpidr, 1); - cpuid_topo->package_id = MPIDR_AFFINITY_LEVEL(mpidr, 2) | - MPIDR_AFFINITY_LEVEL(mpidr, 3) << 8; - } else { - /* Multiprocessor system : Single-thread per core */ - cpuid_topo->thread_id = -1; - cpuid_topo->core_id = MPIDR_AFFINITY_LEVEL(mpidr, 0); - cpuid_topo->package_id = MPIDR_AFFINITY_LEVEL(mpidr, 1) | - MPIDR_AFFINITY_LEVEL(mpidr, 2) << 8 | - MPIDR_AFFINITY_LEVEL(mpidr, 3) << 16; - } + /* + * This would be the place to create cpu topology based on MPIDR. + * + * However, it cannot be trusted to depict the actual topology; some + * pieces of the architecture enforce an artificial cap on Aff0 values + * (e.g. GICv3's ICC_SGI1R_EL1 limits it to 15), leading to an + * artificial cycling of Aff1, Aff2 and Aff3 values. IOW, these end up + * having absolutely no relationship to the actual underlying system + * topology, and cannot be reasonably used as core / package ID. + * + * If the MT bit is set, Aff0 *could* be used to define a thread ID, but + * we still wouldn't be able to obtain a sane core ID. This means we + * need to entirely ignore MPIDR for any topology deduction. + */ + cpuid_topo->thread_id = -1; + cpuid_topo->core_id = cpuid; + cpuid_topo->package_id = cpu_to_node(cpuid); pr_debug("CPU%u: cluster %d core %d thread %d mpidr %#016llx\n", cpuid, cpuid_topo->package_id, cpuid_topo->core_id, --- linux-azure-5.8-5.8.0.orig/arch/arm64/kernel/vdso/Makefile +++ linux-azure-5.8-5.8.0/arch/arm64/kernel/vdso/Makefile @@ -24,7 +24,7 @@ # routines, as x86 does (see 6f121e548f83 ("x86, vdso: Reimplement vdso.so # preparation in build-time C")). ldflags-y := -shared -nostdlib -soname=linux-vdso.so.1 --hash-style=sysv \ - -Bsymbolic $(call ld-option, --no-eh-frame-hdr) --build-id -n \ + -Bsymbolic $(call ld-option, --no-eh-frame-hdr) --build-id=sha1 -n \ $(btildflags-y) -T ccflags-y := -fno-common -fno-builtin -fno-stack-protector -ffixed-x18 --- linux-azure-5.8-5.8.0.orig/arch/arm64/kernel/vdso32/Makefile +++ linux-azure-5.8-5.8.0/arch/arm64/kernel/vdso32/Makefile @@ -128,7 +128,7 @@ VDSO_LDFLAGS += -Wl,-z,max-page-size=4096 -Wl,-z,common-page-size=4096 VDSO_LDFLAGS += -nostdlib -shared -mfloat-abi=soft VDSO_LDFLAGS += -Wl,--hash-style=sysv -VDSO_LDFLAGS += -Wl,--build-id +VDSO_LDFLAGS += -Wl,--build-id=sha1 VDSO_LDFLAGS += $(call cc32-ldoption,-fuse-ld=bfd) @@ -208,7 +208,7 @@ cmd_vdsosym = $(NM) $< | $(gen-vdsosym) | LC_ALL=C sort > $@ # Install commands for the unstripped file -quiet_cmd_vdso_install = INSTALL $@ +quiet_cmd_vdso_install = INSTALL32 $@ cmd_vdso_install = cp $(obj)/$@.dbg $(MODLIB)/vdso/vdso32.so vdso.so: $(obj)/vdso.so.dbg --- linux-azure-5.8-5.8.0.orig/arch/arm64/kernel/vmlinux.lds.S +++ linux-azure-5.8-5.8.0/arch/arm64/kernel/vmlinux.lds.S @@ -21,6 +21,13 @@ jiffies = jiffies_64; + +#define HYPERVISOR_EXTABLE \ + . = ALIGN(SZ_8); \ + __start___kvm_ex_table = .; \ + *(__kvm_ex_table) \ + __stop___kvm_ex_table = .; + #define HYPERVISOR_TEXT \ /* \ * Align to 4 KB so that \ @@ -36,6 +43,7 @@ __hyp_idmap_text_end = .; \ __hyp_text_start = .; \ *(.hyp.text) \ + HYPERVISOR_EXTABLE \ __hyp_text_end = .; #define IDMAP_TEXT \ --- linux-azure-5.8-5.8.0.orig/arch/arm64/kvm/hyp/entry.S +++ linux-azure-5.8-5.8.0/arch/arm64/kvm/hyp/entry.S @@ -198,20 +198,23 @@ // This is our single instruction exception window. A pending // SError is guaranteed to occur at the earliest when we unmask // it, and at the latest just after the ISB. - .global abort_guest_exit_start abort_guest_exit_start: isb - .global abort_guest_exit_end abort_guest_exit_end: msr daifset, #4 // Mask aborts + ret - // If the exception took place, restore the EL1 exception - // context so that we can report some information. - // Merge the exception code with the SError pending bit. - tbz x0, #ARM_EXIT_WITH_SERROR_BIT, 1f + _kvm_extable abort_guest_exit_start, 9997f + _kvm_extable abort_guest_exit_end, 9997f +9997: + msr daifset, #4 // Mask aborts + mov x0, #(1 << ARM_EXIT_WITH_SERROR_BIT) + + // restore the EL1 exception context so that we can report some + // information. Merge the exception code with the SError pending bit. msr elr_el2, x2 msr esr_el2, x3 msr spsr_el2, x4 --- linux-azure-5.8-5.8.0.orig/arch/arm64/kvm/hyp/hyp-entry.S +++ linux-azure-5.8-5.8.0/arch/arm64/kvm/hyp/hyp-entry.S @@ -15,6 +15,30 @@ #include #include +.macro save_caller_saved_regs_vect + /* x0 and x1 were saved in the vector entry */ + stp x2, x3, [sp, #-16]! + stp x4, x5, [sp, #-16]! + stp x6, x7, [sp, #-16]! + stp x8, x9, [sp, #-16]! + stp x10, x11, [sp, #-16]! + stp x12, x13, [sp, #-16]! + stp x14, x15, [sp, #-16]! + stp x16, x17, [sp, #-16]! +.endm + +.macro restore_caller_saved_regs_vect + ldp x16, x17, [sp], #16 + ldp x14, x15, [sp], #16 + ldp x12, x13, [sp], #16 + ldp x10, x11, [sp], #16 + ldp x8, x9, [sp], #16 + ldp x6, x7, [sp], #16 + ldp x4, x5, [sp], #16 + ldp x2, x3, [sp], #16 + ldp x0, x1, [sp], #16 +.endm + .text .pushsection .hyp.text, "ax" @@ -142,13 +166,19 @@ b __guest_exit el2_sync: - /* Check for illegal exception return, otherwise panic */ + /* Check for illegal exception return */ mrs x0, spsr_el2 + tbnz x0, #20, 1f - /* if this was something else, then panic! */ - tst x0, #PSR_IL_BIT - b.eq __hyp_panic + save_caller_saved_regs_vect + stp x29, x30, [sp, #-16]! + bl kvm_unexpected_el2_exception + ldp x29, x30, [sp], #16 + restore_caller_saved_regs_vect + eret + +1: /* Let's attempt a recovery from the illegal exception return */ get_vcpu_ptr x1, x0 mov x0, #ARM_EXCEPTION_IL @@ -156,27 +186,14 @@ el2_error: - ldp x0, x1, [sp], #16 + save_caller_saved_regs_vect + stp x29, x30, [sp, #-16]! + + bl kvm_unexpected_el2_exception + + ldp x29, x30, [sp], #16 + restore_caller_saved_regs_vect - /* - * Only two possibilities: - * 1) Either we come from the exit path, having just unmasked - * PSTATE.A: change the return code to an EL2 fault, and - * carry on, as we're already in a sane state to handle it. - * 2) Or we come from anywhere else, and that's a bug: we panic. - * - * For (1), x0 contains the original return code and x1 doesn't - * contain anything meaningful at that stage. We can reuse them - * as temp registers. - * For (2), who cares? - */ - mrs x0, elr_el2 - adr x1, abort_guest_exit_start - cmp x0, x1 - adr x1, abort_guest_exit_end - ccmp x0, x1, #4, ne - b.ne __hyp_panic - mov x0, #(1 << ARM_EXIT_WITH_SERROR_BIT) eret sb --- linux-azure-5.8-5.8.0.orig/arch/arm64/kvm/hyp/switch.c +++ linux-azure-5.8-5.8.0/arch/arm64/kvm/hyp/switch.c @@ -14,6 +14,7 @@ #include #include +#include #include #include #include @@ -24,6 +25,9 @@ #include #include +extern struct exception_table_entry __start___kvm_ex_table; +extern struct exception_table_entry __stop___kvm_ex_table; + /* Check whether the FP regs were dirtied while in the host-side run loop: */ static bool __hyp_text update_fp_enabled(struct kvm_vcpu *vcpu) { @@ -299,10 +303,10 @@ * saved the guest context yet, and we may return early... */ par = read_sysreg(par_el1); - asm volatile("at s1e1r, %0" : : "r" (far)); - isb(); - - tmp = read_sysreg(par_el1); + if (!__kvm_at("s1e1r", far)) + tmp = read_sysreg(par_el1); + else + tmp = SYS_PAR_EL1_F; /* back to the guest */ write_sysreg(par, par_el1); if (unlikely(tmp & SYS_PAR_EL1_F)) @@ -595,7 +599,7 @@ kvm_vcpu_trap_get_fault_type(vcpu) == FSC_FAULT && kvm_vcpu_dabt_isvalid(vcpu) && !kvm_vcpu_dabt_isextabt(vcpu) && - !kvm_vcpu_dabt_iss1tw(vcpu); + !kvm_vcpu_abt_iss1tw(vcpu); if (valid) { int ret = __vgic_v2_perform_cpuif_access(vcpu); @@ -897,7 +901,7 @@ * making sure it is a kernel address and not a PC-relative * reference. */ - asm volatile("ldr %0, =__hyp_panic_string" : "=r" (str_va)); + asm volatile("ldr %0, =%1" : "=r" (str_va) : "S" (__hyp_panic_string)); __hyp_do_panic(str_va, spsr, elr, @@ -934,3 +938,30 @@ unreachable(); } + +asmlinkage void __hyp_text kvm_unexpected_el2_exception(void) +{ + unsigned long addr, fixup; + struct kvm_cpu_context *host_ctxt; + struct exception_table_entry *entry, *end; + unsigned long elr_el2 = read_sysreg(elr_el2); + + entry = hyp_symbol_addr(__start___kvm_ex_table); + end = hyp_symbol_addr(__stop___kvm_ex_table); + host_ctxt = &__hyp_this_cpu_ptr(kvm_host_data)->host_ctxt; + + while (entry < end) { + addr = (unsigned long)&entry->insn + entry->insn; + fixup = (unsigned long)&entry->fixup + entry->fixup; + + if (addr != elr_el2) { + entry++; + continue; + } + + write_sysreg(fixup, elr_el2); + return; + } + + hyp_panic(host_ctxt); +} --- linux-azure-5.8-5.8.0.orig/arch/arm64/kvm/hypercalls.c +++ linux-azure-5.8-5.8.0/arch/arm64/kvm/hypercalls.c @@ -31,7 +31,7 @@ val = SMCCC_RET_SUCCESS; break; case KVM_BP_HARDEN_NOT_REQUIRED: - val = SMCCC_RET_NOT_REQUIRED; + val = SMCCC_ARCH_WORKAROUND_RET_UNAFFECTED; break; } break; --- linux-azure-5.8-5.8.0.orig/arch/arm64/kvm/mmio.c +++ linux-azure-5.8-5.8.0/arch/arm64/kvm/mmio.c @@ -146,7 +146,7 @@ } /* Page table accesses IO mem: tell guest to fix its TTBR */ - if (kvm_vcpu_dabt_iss1tw(vcpu)) { + if (kvm_vcpu_abt_iss1tw(vcpu)) { kvm_inject_dabt(vcpu, kvm_vcpu_get_hfar(vcpu)); return 1; } --- linux-azure-5.8-5.8.0.orig/arch/arm64/kvm/mmu.c +++ linux-azure-5.8-5.8.0/arch/arm64/kvm/mmu.c @@ -365,7 +365,8 @@ * destroying the VM), otherwise another faulting VCPU may come in and mess * with things behind our backs. */ -static void unmap_stage2_range(struct kvm *kvm, phys_addr_t start, u64 size) +static void __unmap_stage2_range(struct kvm *kvm, phys_addr_t start, u64 size, + bool may_block) { pgd_t *pgd; phys_addr_t addr = start, end = start + size; @@ -390,11 +391,16 @@ * If the range is too large, release the kvm->mmu_lock * to prevent starvation and lockup detector warnings. */ - if (next != end) + if (may_block && next != end) cond_resched_lock(&kvm->mmu_lock); } while (pgd++, addr = next, addr != end); } +static void unmap_stage2_range(struct kvm *kvm, phys_addr_t start, u64 size) +{ + __unmap_stage2_range(kvm, start, size, true); +} + static void stage2_flush_ptes(struct kvm *kvm, pmd_t *pmd, phys_addr_t addr, phys_addr_t end) { @@ -1839,7 +1845,7 @@ unsigned long vma_pagesize, flags = 0; write_fault = kvm_is_write_fault(vcpu); - exec_fault = kvm_vcpu_trap_is_iabt(vcpu); + exec_fault = kvm_vcpu_trap_is_exec_fault(vcpu); VM_BUG_ON(write_fault && exec_fault); if (fault_status == FSC_PERM && !write_fault && !exec_fault) { @@ -1867,6 +1873,7 @@ !fault_supports_stage2_huge_mapping(memslot, hva, vma_pagesize)) { force_pte = true; vma_pagesize = PAGE_SIZE; + vma_shift = PAGE_SHIFT; } /* @@ -1910,6 +1917,7 @@ if (kvm_is_device_pfn(pfn)) { mem_type = PAGE_S2_DEVICE; flags |= KVM_S2PTE_FLAG_IS_IOMAP; + force_pte = true; } else if (logging_active) { /* * Faults on pages in a memslot with logging enabled @@ -1961,7 +1969,12 @@ (fault_status == FSC_PERM && stage2_is_exec(kvm, fault_ipa, vma_pagesize)); - if (vma_pagesize == PUD_SIZE) { + /* + * If PUD_SIZE == PMD_SIZE, there is no real PUD level, and + * all we have is a 2-level page table. Trying to map a PUD in + * this case would be fatally wrong. + */ + if (PUD_SIZE != PMD_SIZE && vma_pagesize == PUD_SIZE) { pud_t new_pud = kvm_pfn_pud(pfn, mem_type); new_pud = kvm_pud_mkhuge(new_pud); @@ -2198,18 +2211,21 @@ static int kvm_unmap_hva_handler(struct kvm *kvm, gpa_t gpa, u64 size, void *data) { - unmap_stage2_range(kvm, gpa, size); + unsigned flags = *(unsigned *)data; + bool may_block = flags & MMU_NOTIFIER_RANGE_BLOCKABLE; + + __unmap_stage2_range(kvm, gpa, size, may_block); return 0; } int kvm_unmap_hva_range(struct kvm *kvm, - unsigned long start, unsigned long end) + unsigned long start, unsigned long end, unsigned flags) { if (!kvm->arch.pgd) return 0; trace_kvm_unmap_hva_range(start, end); - handle_hva_to_gpa(kvm, start, end, &kvm_unmap_hva_handler, NULL); + handle_hva_to_gpa(kvm, start, end, &kvm_unmap_hva_handler, &flags); return 0; } --- linux-azure-5.8-5.8.0.orig/arch/arm64/kvm/sys_regs.c +++ linux-azure-5.8-5.8.0/arch/arm64/kvm/sys_regs.c @@ -636,6 +636,10 @@ { u64 pmcr, val; + /* No PMU available, PMCR_EL0 may UNDEF... */ + if (!kvm_arm_support_pmu_v3()) + return; + pmcr = read_sysreg(pmcr_el0); /* * Writable bits of PMCR_EL0 (ARMV8_PMU_PMCR_MASK) are reset to UNKNOWN @@ -1166,16 +1170,6 @@ return REG_HIDDEN_USER | REG_HIDDEN_GUEST; } -/* Visibility overrides for SVE-specific ID registers */ -static unsigned int sve_id_visibility(const struct kvm_vcpu *vcpu, - const struct sys_reg_desc *rd) -{ - if (vcpu_has_sve(vcpu)) - return 0; - - return REG_HIDDEN_USER; -} - /* Generate the emulated ID_AA64ZFR0_EL1 value exposed to the guest */ static u64 guest_id_aa64zfr0_el1(const struct kvm_vcpu *vcpu) { @@ -1202,9 +1196,6 @@ { u64 val; - if (WARN_ON(!vcpu_has_sve(vcpu))) - return -ENOENT; - val = guest_id_aa64zfr0_el1(vcpu); return reg_to_user(uaddr, &val, reg->id); } @@ -1217,9 +1208,6 @@ int err; u64 val; - if (WARN_ON(!vcpu_has_sve(vcpu))) - return -ENOENT; - err = reg_from_user(&val, uaddr, id); if (err) return err; @@ -1482,7 +1470,7 @@ ID_SANITISED(ID_AA64PFR1_EL1), ID_UNALLOCATED(4,2), ID_UNALLOCATED(4,3), - { SYS_DESC(SYS_ID_AA64ZFR0_EL1), access_id_aa64zfr0_el1, .get_user = get_id_aa64zfr0_el1, .set_user = set_id_aa64zfr0_el1, .visibility = sve_id_visibility }, + { SYS_DESC(SYS_ID_AA64ZFR0_EL1), access_id_aa64zfr0_el1, .get_user = get_id_aa64zfr0_el1, .set_user = set_id_aa64zfr0_el1, }, ID_UNALLOCATED(4,5), ID_UNALLOCATED(4,6), ID_UNALLOCATED(4,7), @@ -1853,9 +1841,9 @@ { Op1( 0), CRn( 0), CRm( 1), Op2( 0), trap_raz_wi }, DBG_BCR_BVR_WCR_WVR(1), /* DBGDCCINT */ - { Op1( 0), CRn( 0), CRm( 2), Op2( 0), trap_debug32 }, + { Op1( 0), CRn( 0), CRm( 2), Op2( 0), trap_debug32, NULL, cp14_DBGDCCINT }, /* DBGDSCRext */ - { Op1( 0), CRn( 0), CRm( 2), Op2( 2), trap_debug32 }, + { Op1( 0), CRn( 0), CRm( 2), Op2( 2), trap_debug32, NULL, cp14_DBGDSCRext }, DBG_BCR_BVR_WCR_WVR(2), /* DBGDTR[RT]Xint */ { Op1( 0), CRn( 0), CRm( 3), Op2( 0), trap_raz_wi }, @@ -1870,7 +1858,7 @@ { Op1( 0), CRn( 0), CRm( 6), Op2( 2), trap_raz_wi }, DBG_BCR_BVR_WCR_WVR(6), /* DBGVCR */ - { Op1( 0), CRn( 0), CRm( 7), Op2( 0), trap_debug32 }, + { Op1( 0), CRn( 0), CRm( 7), Op2( 0), trap_debug32, NULL, cp14_DBGVCR }, DBG_BCR_BVR_WCR_WVR(7), DBG_BCR_BVR_WCR_WVR(8), DBG_BCR_BVR_WCR_WVR(9), @@ -1960,6 +1948,7 @@ { Op1( 0), CRn( 2), CRm( 0), Op2( 0), access_vm_reg, NULL, c2_TTBR0 }, { Op1( 0), CRn( 2), CRm( 0), Op2( 1), access_vm_reg, NULL, c2_TTBR1 }, { Op1( 0), CRn( 2), CRm( 0), Op2( 2), access_vm_reg, NULL, c2_TTBCR }, + { Op1( 0), CRn( 2), CRm( 0), Op2( 3), access_vm_reg, NULL, c2_TTBCR2 }, { Op1( 0), CRn( 3), CRm( 0), Op2( 0), access_vm_reg, NULL, c3_DACR }, { Op1( 0), CRn( 5), CRm( 0), Op2( 0), access_vm_reg, NULL, c5_DFSR }, { Op1( 0), CRn( 5), CRm( 0), Op2( 1), access_vm_reg, NULL, c5_IFSR }, --- linux-azure-5.8-5.8.0.orig/arch/arm64/kvm/trace_arm.h +++ linux-azure-5.8-5.8.0/arch/arm64/kvm/trace_arm.h @@ -2,6 +2,7 @@ #if !defined(_TRACE_ARM_ARM64_KVM_H) || defined(TRACE_HEADER_MULTI_READ) #define _TRACE_ARM_ARM64_KVM_H +#include #include #include --- linux-azure-5.8-5.8.0.orig/arch/arm64/kvm/vgic/vgic-mmio-v3.c +++ linux-azure-5.8-5.8.0/arch/arm64/kvm/vgic/vgic-mmio-v3.c @@ -273,6 +273,23 @@ return extract_bytes(value, addr & 7, len); } +static unsigned long vgic_uaccess_read_v3r_typer(struct kvm_vcpu *vcpu, + gpa_t addr, unsigned int len) +{ + unsigned long mpidr = kvm_vcpu_get_mpidr_aff(vcpu); + int target_vcpu_id = vcpu->vcpu_id; + u64 value; + + value = (u64)(mpidr & GENMASK(23, 0)) << 32; + value |= ((target_vcpu_id & 0xffff) << 8); + + if (vgic_has_its(vcpu->kvm)) + value |= GICR_TYPER_PLPIS; + + /* reporting of the Last bit is not supported for userspace */ + return extract_bytes(value, addr & 7, len); +} + static unsigned long vgic_mmio_read_v3r_iidr(struct kvm_vcpu *vcpu, gpa_t addr, unsigned int len) { @@ -593,8 +610,9 @@ REGISTER_DESC_WITH_LENGTH(GICR_IIDR, vgic_mmio_read_v3r_iidr, vgic_mmio_write_wi, 4, VGIC_ACCESS_32bit), - REGISTER_DESC_WITH_LENGTH(GICR_TYPER, - vgic_mmio_read_v3r_typer, vgic_mmio_write_wi, 8, + REGISTER_DESC_WITH_LENGTH_UACCESS(GICR_TYPER, + vgic_mmio_read_v3r_typer, vgic_mmio_write_wi, + vgic_uaccess_read_v3r_typer, vgic_mmio_uaccess_write_wi, 8, VGIC_ACCESS_64bit | VGIC_ACCESS_32bit), REGISTER_DESC_WITH_LENGTH(GICR_WAKER, vgic_mmio_read_raz, vgic_mmio_write_wi, 4, --- linux-azure-5.8-5.8.0.orig/arch/arm64/lib/memcpy.S +++ linux-azure-5.8-5.8.0/arch/arm64/lib/memcpy.S @@ -56,9 +56,8 @@ stp \reg1, \reg2, [\ptr], \val .endm - .weak memcpy SYM_FUNC_START_ALIAS(__memcpy) -SYM_FUNC_START_PI(memcpy) +SYM_FUNC_START_WEAK_PI(memcpy) #include "copy_template.S" ret SYM_FUNC_END_PI(memcpy) --- linux-azure-5.8-5.8.0.orig/arch/arm64/lib/memmove.S +++ linux-azure-5.8-5.8.0/arch/arm64/lib/memmove.S @@ -45,9 +45,8 @@ D_l .req x13 D_h .req x14 - .weak memmove SYM_FUNC_START_ALIAS(__memmove) -SYM_FUNC_START_PI(memmove) +SYM_FUNC_START_WEAK_PI(memmove) cmp dstin, src b.lo __memcpy add tmp1, src, count --- linux-azure-5.8-5.8.0.orig/arch/arm64/lib/memset.S +++ linux-azure-5.8-5.8.0/arch/arm64/lib/memset.S @@ -42,9 +42,8 @@ tmp3w .req w9 tmp3 .req x9 - .weak memset SYM_FUNC_START_ALIAS(__memset) -SYM_FUNC_START_PI(memset) +SYM_FUNC_START_WEAK_PI(memset) mov dst, dstin /* Preserve return value. */ and A_lw, val, #255 orr A_lw, A_lw, A_lw, lsl #8 --- linux-azure-5.8-5.8.0.orig/arch/arm64/mm/init.c +++ linux-azure-5.8-5.8.0/arch/arm64/mm/init.c @@ -54,12 +54,6 @@ s64 memstart_addr __ro_after_init = -1; EXPORT_SYMBOL(memstart_addr); -s64 physvirt_offset __ro_after_init; -EXPORT_SYMBOL(physvirt_offset); - -struct page *vmemmap __ro_after_init; -EXPORT_SYMBOL(vmemmap); - /* * We create both ZONE_DMA and ZONE_DMA32. ZONE_DMA covers the first 1G of * memory as some devices, namely the Raspberry Pi 4, have peripherals with @@ -67,7 +61,7 @@ * bit addressable memory area. */ phys_addr_t arm64_dma_phys_limit __ro_after_init; -static phys_addr_t arm64_dma32_phys_limit __ro_after_init; +phys_addr_t arm64_dma32_phys_limit __ro_after_init; #ifdef CONFIG_KEXEC_CORE /* @@ -290,20 +284,6 @@ memstart_addr = round_down(memblock_start_of_DRAM(), ARM64_MEMSTART_ALIGN); - physvirt_offset = PHYS_OFFSET - PAGE_OFFSET; - - vmemmap = ((struct page *)VMEMMAP_START - (memstart_addr >> PAGE_SHIFT)); - - /* - * If we are running with a 52-bit kernel VA config on a system that - * does not support it, we have to offset our vmemmap and physvirt_offset - * s.t. we avoid the 52-bit portion of the direct linear map - */ - if (IS_ENABLED(CONFIG_ARM64_VA_BITS_52) && (vabits_actual != 52)) { - vmemmap += (_PAGE_OFFSET(48) - _PAGE_OFFSET(52)) >> PAGE_SHIFT; - physvirt_offset = PHYS_OFFSET - _PAGE_OFFSET(48); - } - /* * Remove the memory that we will not be able to cover with the * linear mapping. Take care not to clip the kernel which may be @@ -319,6 +299,16 @@ } /* + * If we are running with a 52-bit kernel VA config on a system that + * does not support it, we have to place the available physical + * memory in the 48-bit addressable part of the linear region, i.e., + * we have to move it upward. Since memstart_addr represents the + * physical address of PAGE_OFFSET, we have to *subtract* from it. + */ + if (IS_ENABLED(CONFIG_ARM64_VA_BITS_52) && (vabits_actual != 52)) + memstart_addr -= _PAGE_OFFSET(48) - _PAGE_OFFSET(52); + + /* * Apply the memory limit if it was set. Since the kernel may be loaded * high up in memory, add back the kernel region that must be accessible * via the linear mapping. --- linux-azure-5.8-5.8.0.orig/arch/arm64/mm/mmu.c +++ linux-azure-5.8-5.8.0/arch/arm64/mm/mmu.c @@ -1414,11 +1414,28 @@ free_empty_tables(start, end, PAGE_OFFSET, PAGE_END); } +static bool inside_linear_region(u64 start, u64 size) +{ + /* + * Linear mapping region is the range [PAGE_OFFSET..(PAGE_END - 1)] + * accommodating both its ends but excluding PAGE_END. Max physical + * range which can be mapped inside this linear mapping range, must + * also be derived from its end points. + */ + return start >= __pa(_PAGE_OFFSET(vabits_actual)) && + (start + size - 1) <= __pa(PAGE_END - 1); +} + int arch_add_memory(int nid, u64 start, u64 size, struct mhp_params *params) { int ret, flags = 0; + if (!inside_linear_region(start, size)) { + pr_err("[%llx %llx] is outside linear mapping region\n", start, start + size); + return -EINVAL; + } + if (rodata_full || debug_pagealloc_enabled()) flags = NO_BLOCK_MAPPINGS | NO_CONT_MAPPINGS; --- linux-azure-5.8-5.8.0.orig/arch/arm64/mm/numa.c +++ linux-azure-5.8-5.8.0/arch/arm64/mm/numa.c @@ -46,7 +46,11 @@ */ const struct cpumask *cpumask_of_node(int node) { - if (WARN_ON(node >= nr_node_ids)) + + if (node == NUMA_NO_NODE) + return cpu_all_mask; + + if (WARN_ON(node < 0 || node >= nr_node_ids)) return cpu_none_mask; if (WARN_ON(node_to_cpumask_map[node] == NULL)) --- linux-azure-5.8-5.8.0.orig/arch/arm64/mm/physaddr.c +++ linux-azure-5.8-5.8.0/arch/arm64/mm/physaddr.c @@ -9,7 +9,7 @@ phys_addr_t __virt_to_phys(unsigned long x) { - WARN(!__is_lm_address(x), + WARN(!__is_lm_address(__tag_reset(x)), "virt_to_phys used for non-linear address: %pK (%pS)\n", (void *)x, (void *)x); --- linux-azure-5.8-5.8.0.orig/arch/arm64/net/bpf_jit_comp.c +++ linux-azure-5.8-5.8.0/arch/arm64/net/bpf_jit_comp.c @@ -141,14 +141,17 @@ } } -static inline int bpf2a64_offset(int bpf_to, int bpf_from, +static inline int bpf2a64_offset(int bpf_insn, int off, const struct jit_ctx *ctx) { - int to = ctx->offset[bpf_to]; - /* -1 to account for the Branch instruction */ - int from = ctx->offset[bpf_from] - 1; - - return to - from; + /* BPF JMP offset is relative to the next instruction */ + bpf_insn++; + /* + * Whereas arm64 branch instructions encode the offset + * from the branch itself, so we must subtract 1 from the + * instruction offset. + */ + return ctx->offset[bpf_insn + off] - (ctx->offset[bpf_insn] - 1); } static void jit_fill_hole(void *area, unsigned int size) @@ -578,7 +581,7 @@ /* JUMP off */ case BPF_JMP | BPF_JA: - jmp_offset = bpf2a64_offset(i + off, i, ctx); + jmp_offset = bpf2a64_offset(i, off, ctx); check_imm26(jmp_offset); emit(A64_B(jmp_offset), ctx); break; @@ -605,7 +608,7 @@ case BPF_JMP32 | BPF_JSLE | BPF_X: emit(A64_CMP(is64, dst, src), ctx); emit_cond_jmp: - jmp_offset = bpf2a64_offset(i + off, i, ctx); + jmp_offset = bpf2a64_offset(i, off, ctx); check_imm19(jmp_offset); switch (BPF_OP(code)) { case BPF_JEQ: @@ -837,10 +840,21 @@ const struct bpf_prog *prog = ctx->prog; int i; + /* + * - offset[0] offset of the end of prologue, + * start of the 1st instruction. + * - offset[1] - offset of the end of 1st instruction, + * start of the 2nd instruction + * [....] + * - offset[3] - offset of the end of 3rd instruction, + * start of 4th instruction + */ for (i = 0; i < prog->len; i++) { const struct bpf_insn *insn = &prog->insnsi[i]; int ret; + if (ctx->image == NULL) + ctx->offset[i] = ctx->idx; ret = build_insn(insn, ctx, extra_pass); if (ret > 0) { i++; @@ -848,11 +862,16 @@ ctx->offset[i] = ctx->idx; continue; } - if (ctx->image == NULL) - ctx->offset[i] = ctx->idx; if (ret) return ret; } + /* + * offset is allocated with prog->len + 1 so fill in + * the last element with the offset after the last + * instruction (end of program) + */ + if (ctx->image == NULL) + ctx->offset[i] = ctx->idx; return 0; } @@ -928,7 +947,7 @@ memset(&ctx, 0, sizeof(ctx)); ctx.prog = prog; - ctx.offset = kcalloc(prog->len, sizeof(int), GFP_KERNEL); + ctx.offset = kcalloc(prog->len + 1, sizeof(int), GFP_KERNEL); if (ctx.offset == NULL) { prog = orig_prog; goto out_off; @@ -1008,7 +1027,7 @@ prog->jited_len = image_size; if (!prog->is_func || extra_pass) { - bpf_prog_fill_jited_linfo(prog, ctx.offset); + bpf_prog_fill_jited_linfo(prog, ctx.offset + 1); out_off: kfree(ctx.offset); kfree(jit_data); --- linux-azure-5.8-5.8.0.orig/arch/csky/include/asm/Kbuild +++ linux-azure-5.8-5.8.0/arch/csky/include/asm/Kbuild @@ -2,7 +2,6 @@ generic-y += asm-offsets.h generic-y += gpio.h generic-y += kvm_para.h -generic-y += local64.h generic-y += qrwlock.h generic-y += user.h generic-y += vmlinux.lds.h --- linux-azure-5.8-5.8.0.orig/arch/h8300/include/asm/Kbuild +++ linux-azure-5.8-5.8.0/arch/h8300/include/asm/Kbuild @@ -2,7 +2,6 @@ generic-y += asm-offsets.h generic-y += extable.h generic-y += kvm_para.h -generic-y += local64.h generic-y += mcs_spinlock.h generic-y += parport.h generic-y += spinlock.h --- linux-azure-5.8-5.8.0.orig/arch/h8300/kernel/asm-offsets.c +++ linux-azure-5.8-5.8.0/arch/h8300/kernel/asm-offsets.c @@ -63,6 +63,9 @@ OFFSET(TI_FLAGS, thread_info, flags); OFFSET(TI_CPU, thread_info, cpu); OFFSET(TI_PRE, thread_info, preempt_count); +#ifdef CONFIG_PREEMPTION + DEFINE(TI_PRE_COUNT, offsetof(struct thread_info, preempt_count)); +#endif return 0; } --- linux-azure-5.8-5.8.0.orig/arch/hexagon/include/asm/Kbuild +++ linux-azure-5.8-5.8.0/arch/hexagon/include/asm/Kbuild @@ -2,5 +2,4 @@ generic-y += extable.h generic-y += iomap.h generic-y += kvm_para.h -generic-y += local64.h generic-y += mcs_spinlock.h --- linux-azure-5.8-5.8.0.orig/arch/ia64/include/asm/pgtable.h +++ linux-azure-5.8-5.8.0/arch/ia64/include/asm/pgtable.h @@ -366,6 +366,15 @@ } #define pgd_index pgd_index +/* + * In the kernel's mapped region we know everything is in region number 5, so + * as an optimisation its PGD already points to the area for that region. + * However, this also means that we cannot use pgd_index() and we must + * never add the region here. + */ +#define pgd_offset_k(addr) \ + (init_mm.pgd + (((addr) >> PGDIR_SHIFT) & (PTRS_PER_PGD - 1))) + /* Look up a pgd entry in the gate area. On IA-64, the gate-area resides in the kernel-mapped segment, hence we use pgd_offset_k() here. */ --- linux-azure-5.8-5.8.0.orig/arch/ia64/kernel/Makefile +++ linux-azure-5.8-5.8.0/arch/ia64/kernel/Makefile @@ -41,7 +41,7 @@ endif obj-$(CONFIG_INTEL_IOMMU) += pci-dma.o -obj-$(CONFIG_BINFMT_ELF) += elfcore.o +obj-$(CONFIG_ELF_CORE) += elfcore.o # fp_emulate() expects f2-f5,f16-f31 to contain the user-level state. CFLAGS_traps.o += -mfixed-range=f2-f5,f16-f31 --- linux-azure-5.8-5.8.0.orig/arch/ia64/kernel/kprobes.c +++ linux-azure-5.8-5.8.0/arch/ia64/kernel/kprobes.c @@ -396,83 +396,9 @@ { } -/* - * At this point the target function has been tricked into - * returning into our trampoline. Lookup the associated instance - * and then: - * - call the handler function - * - cleanup by marking the instance as unused - * - long jump back to the original return address - */ int __kprobes trampoline_probe_handler(struct kprobe *p, struct pt_regs *regs) { - struct kretprobe_instance *ri = NULL; - struct hlist_head *head, empty_rp; - struct hlist_node *tmp; - unsigned long flags, orig_ret_address = 0; - unsigned long trampoline_address = - ((struct fnptr *)kretprobe_trampoline)->ip; - - INIT_HLIST_HEAD(&empty_rp); - kretprobe_hash_lock(current, &head, &flags); - - /* - * It is possible to have multiple instances associated with a given - * task either because an multiple functions in the call path - * have a return probe installed on them, and/or more than one return - * return probe was registered for a target function. - * - * We can handle this because: - * - instances are always inserted at the head of the list - * - when multiple return probes are registered for the same - * function, the first instance's ret_addr will point to the - * real return address, and all the rest will point to - * kretprobe_trampoline - */ - hlist_for_each_entry_safe(ri, tmp, head, hlist) { - if (ri->task != current) - /* another task is sharing our hash bucket */ - continue; - - orig_ret_address = (unsigned long)ri->ret_addr; - if (orig_ret_address != trampoline_address) - /* - * This is the real return address. Any other - * instances associated with this task are for - * other calls deeper on the call stack - */ - break; - } - - regs->cr_iip = orig_ret_address; - - hlist_for_each_entry_safe(ri, tmp, head, hlist) { - if (ri->task != current) - /* another task is sharing our hash bucket */ - continue; - - if (ri->rp && ri->rp->handler) - ri->rp->handler(ri, regs); - - orig_ret_address = (unsigned long)ri->ret_addr; - recycle_rp_inst(ri, &empty_rp); - - if (orig_ret_address != trampoline_address) - /* - * This is the real return address. Any other - * instances associated with this task are for - * other calls deeper on the call stack - */ - break; - } - kretprobe_assert(ri, orig_ret_address, trampoline_address); - - kretprobe_hash_unlock(current, &flags); - - hlist_for_each_entry_safe(ri, tmp, &empty_rp, hlist) { - hlist_del(&ri->hlist); - kfree(ri); - } + regs->cr_iip = __kretprobe_trampoline_handler(regs, kretprobe_trampoline, NULL); /* * By returning a non-zero value, we are telling * kprobe_handler() that we don't want the post_handler @@ -485,6 +411,7 @@ struct pt_regs *regs) { ri->ret_addr = (kprobe_opcode_t *)regs->b0; + ri->fp = NULL; /* Replace the return addr with trampoline addr */ regs->b0 = ((struct fnptr *)kretprobe_trampoline)->ip; --- linux-azure-5.8-5.8.0.orig/arch/ia64/mm/init.c +++ linux-azure-5.8-5.8.0/arch/ia64/mm/init.c @@ -537,8 +537,8 @@ if (map_start < map_end) memmap_init_zone((unsigned long)(map_end - map_start), - args->nid, args->zone, page_to_pfn(map_start), - MEMMAP_EARLY, NULL); + args->nid, args->zone, page_to_pfn(map_start), page_to_pfn(map_end), + MEMINIT_EARLY, NULL); return 0; } @@ -547,8 +547,8 @@ unsigned long start_pfn) { if (!vmem_map) { - memmap_init_zone(size, nid, zone, start_pfn, MEMMAP_EARLY, - NULL); + memmap_init_zone(size, nid, zone, start_pfn, start_pfn + size, + MEMINIT_EARLY, NULL); } else { struct page *start; struct memmap_init_callback_data args; --- linux-azure-5.8-5.8.0.orig/arch/m68k/coldfire/device.c +++ linux-azure-5.8-5.8.0/arch/m68k/coldfire/device.c @@ -554,7 +554,7 @@ }; #endif /* IS_ENABLED(CONFIG_MCF_EDMA) */ -#if IS_ENABLED(CONFIG_MMC) +#ifdef MCFSDHC_BASE static struct mcf_esdhc_platform_data mcf_esdhc_data = { .max_bus_width = 4, .cd_type = ESDHC_CD_NONE, @@ -579,7 +579,7 @@ .resource = mcf_esdhc_resources, .dev.platform_data = &mcf_esdhc_data, }; -#endif /* IS_ENABLED(CONFIG_MMC) */ +#endif /* MCFSDHC_BASE */ static struct platform_device *mcf_devices[] __initdata = { &mcf_uart, @@ -613,7 +613,7 @@ #if IS_ENABLED(CONFIG_MCF_EDMA) &mcf_edma, #endif -#if IS_ENABLED(CONFIG_MMC) +#ifdef MCFSDHC_BASE &mcf_esdhc, #endif }; --- linux-azure-5.8-5.8.0.orig/arch/m68k/include/asm/Kbuild +++ linux-azure-5.8-5.8.0/arch/m68k/include/asm/Kbuild @@ -2,6 +2,5 @@ generated-y += syscall_table.h generic-y += extable.h generic-y += kvm_para.h -generic-y += local64.h generic-y += mcs_spinlock.h generic-y += spinlock.h --- linux-azure-5.8-5.8.0.orig/arch/m68k/include/asm/m53xxacr.h +++ linux-azure-5.8-5.8.0/arch/m68k/include/asm/m53xxacr.h @@ -89,9 +89,9 @@ * coherency though in all cases. And for copyback caches we will need * to push cached data as well. */ -#define CACHE_INIT CACR_CINVA -#define CACHE_INVALIDATE CACR_CINVA -#define CACHE_INVALIDATED CACR_CINVA +#define CACHE_INIT (CACHE_MODE + CACR_CINVA - CACR_EC) +#define CACHE_INVALIDATE (CACHE_MODE + CACR_CINVA) +#define CACHE_INVALIDATED (CACHE_MODE + CACR_CINVA) #define ACR0_MODE ((CONFIG_RAMBASE & 0xff000000) + \ (0x000f0000) + \ --- linux-azure-5.8-5.8.0.orig/arch/m68k/mac/config.c +++ linux-azure-5.8-5.8.0/arch/m68k/mac/config.c @@ -776,16 +776,12 @@ struct platform_device scc_a_pdev = { .name = "scc", .id = 0, - .num_resources = ARRAY_SIZE(scc_a_rsrcs), - .resource = scc_a_rsrcs, }; EXPORT_SYMBOL(scc_a_pdev); struct platform_device scc_b_pdev = { .name = "scc", .id = 1, - .num_resources = ARRAY_SIZE(scc_b_rsrcs), - .resource = scc_b_rsrcs, }; EXPORT_SYMBOL(scc_b_pdev); @@ -812,10 +808,15 @@ /* Set up serial port resources for the console initcall. */ - scc_a_rsrcs[0].start = (resource_size_t) mac_bi_data.sccbase + 2; - scc_a_rsrcs[0].end = scc_a_rsrcs[0].start; - scc_b_rsrcs[0].start = (resource_size_t) mac_bi_data.sccbase; - scc_b_rsrcs[0].end = scc_b_rsrcs[0].start; + scc_a_rsrcs[0].start = (resource_size_t)mac_bi_data.sccbase + 2; + scc_a_rsrcs[0].end = scc_a_rsrcs[0].start; + scc_a_pdev.num_resources = ARRAY_SIZE(scc_a_rsrcs); + scc_a_pdev.resource = scc_a_rsrcs; + + scc_b_rsrcs[0].start = (resource_size_t)mac_bi_data.sccbase; + scc_b_rsrcs[0].end = scc_b_rsrcs[0].start; + scc_b_pdev.num_resources = ARRAY_SIZE(scc_b_rsrcs); + scc_b_pdev.resource = scc_b_rsrcs; switch (macintosh_config->scc_type) { case MAC_SCC_PSC: --- linux-azure-5.8-5.8.0.orig/arch/m68k/mac/iop.c +++ linux-azure-5.8-5.8.0/arch/m68k/mac/iop.c @@ -183,7 +183,7 @@ static __inline__ void iop_stop(volatile struct mac_iop *iop) { - iop->status_ctrl &= ~IOP_RUN; + iop->status_ctrl = IOP_AUTOINC; } static __inline__ void iop_start(volatile struct mac_iop *iop) @@ -191,14 +191,9 @@ iop->status_ctrl = IOP_RUN | IOP_AUTOINC; } -static __inline__ void iop_bypass(volatile struct mac_iop *iop) -{ - iop->status_ctrl |= IOP_BYPASS; -} - static __inline__ void iop_interrupt(volatile struct mac_iop *iop) { - iop->status_ctrl |= IOP_IRQ; + iop->status_ctrl = IOP_IRQ | IOP_RUN | IOP_AUTOINC; } static int iop_alive(volatile struct mac_iop *iop) @@ -244,7 +239,6 @@ } else { iop_base[IOP_NUM_SCC] = (struct mac_iop *) SCC_IOP_BASE_QUADRA; } - iop_base[IOP_NUM_SCC]->status_ctrl = 0x87; iop_scc_present = 1; } else { iop_base[IOP_NUM_SCC] = NULL; @@ -256,7 +250,7 @@ } else { iop_base[IOP_NUM_ISM] = (struct mac_iop *) ISM_IOP_BASE_QUADRA; } - iop_base[IOP_NUM_ISM]->status_ctrl = 0; + iop_stop(iop_base[IOP_NUM_ISM]); iop_ism_present = 1; } else { iop_base[IOP_NUM_ISM] = NULL; @@ -415,7 +409,8 @@ msg->status = IOP_MSGSTATUS_UNUSED; msg = msg->next; iop_send_queue[iop_num][chan] = msg; - if (msg) iop_do_send(msg); + if (msg && iop_readb(iop, IOP_ADDR_SEND_STATE + chan) == IOP_MSG_IDLE) + iop_do_send(msg); } /* @@ -489,16 +484,12 @@ if (!(q = iop_send_queue[iop_num][chan])) { iop_send_queue[iop_num][chan] = msg; + iop_do_send(msg); } else { while (q->next) q = q->next; q->next = msg; } - if (iop_readb(iop_base[iop_num], - IOP_ADDR_SEND_STATE + chan) == IOP_MSG_IDLE) { - iop_do_send(msg); - } - return 0; } --- linux-azure-5.8-5.8.0.orig/arch/microblaze/include/asm/Kbuild +++ linux-azure-5.8-5.8.0/arch/microblaze/include/asm/Kbuild @@ -1,9 +1,7 @@ # SPDX-License-Identifier: GPL-2.0 generated-y += syscall_table.h generic-y += extable.h -generic-y += hw_irq.h generic-y += kvm_para.h -generic-y += local64.h generic-y += mcs_spinlock.h generic-y += parport.h generic-y += syscalls.h --- linux-azure-5.8-5.8.0.orig/arch/mips/Kconfig +++ linux-azure-5.8-5.8.0/arch/mips/Kconfig @@ -678,6 +678,7 @@ select SYS_SUPPORTS_NUMA select SYS_SUPPORTS_SMP select MIPS_L1_CACHE_SHIFT_7 + select NUMA help This are the SGI Origin 200, Origin 2000 and Onyx 2 Graphics workstations. To compile a Linux kernel that runs on these, say Y @@ -875,6 +876,7 @@ select I8253 select I8259 select ISA + select MIPS_L1_CACHE_SHIFT_6 select SWAP_IO_SPACE if CPU_BIG_ENDIAN select SYS_HAS_CPU_R4X00 select SYS_HAS_CPU_R5000 @@ -2202,6 +2204,7 @@ config KVM_GUEST bool "KVM Guest Kernel" + depends on CPU_MIPS32_R2 depends on BROKEN_ON_SMP help Select this option if building a guest kernel for KVM (Trap & Emulate) --- linux-azure-5.8-5.8.0.orig/arch/mips/Makefile +++ linux-azure-5.8-5.8.0/arch/mips/Makefile @@ -136,6 +136,25 @@ # cflags-y += -fno-stack-check +# binutils from v2.35 when built with --enable-mips-fix-loongson3-llsc=yes, +# supports an -mfix-loongson3-llsc flag which emits a sync prior to each ll +# instruction to work around a CPU bug (see __SYNC_loongson3_war in asm/sync.h +# for a description). +# +# We disable this in order to prevent the assembler meddling with the +# instruction that labels refer to, ie. if we label an ll instruction: +# +# 1: ll v0, 0(a0) +# +# ...then with the assembler fix applied the label may actually point at a sync +# instruction inserted by the assembler, and if we were using the label in an +# exception table the table would no longer contain the address of the ll +# instruction. +# +# Avoid this by explicitly disabling that assembler behaviour. +# +cflags-y += $(call as-option,-Wa$(comma)-mno-fix-loongson3-llsc,) + # # CPU-dependent compiler/assembler options for optimization. # --- linux-azure-5.8-5.8.0.orig/arch/mips/alchemy/common/clock.c +++ linux-azure-5.8-5.8.0/arch/mips/alchemy/common/clock.c @@ -152,6 +152,7 @@ { struct clk_init_data id; struct clk_hw *h; + struct clk *clk; h = kzalloc(sizeof(*h), GFP_KERNEL); if (!h) @@ -164,7 +165,13 @@ id.ops = &alchemy_clkops_cpu; h->init = &id; - return clk_register(NULL, h); + clk = clk_register(NULL, h); + if (IS_ERR(clk)) { + pr_err("failed to register clock\n"); + kfree(h); + } + + return clk; } /* AUXPLLs ************************************************************/ --- linux-azure-5.8-5.8.0.orig/arch/mips/bcm47xx/Kconfig +++ linux-azure-5.8-5.8.0/arch/mips/bcm47xx/Kconfig @@ -27,6 +27,7 @@ select BCMA select BCMA_HOST_SOC select BCMA_DRIVER_MIPS + select BCMA_DRIVER_PCI if PCI select BCMA_DRIVER_PCI_HOSTMODE if PCI select BCMA_DRIVER_GPIO default y --- linux-azure-5.8-5.8.0.orig/arch/mips/boot/compressed/decompress.c +++ linux-azure-5.8-5.8.0/arch/mips/boot/compressed/decompress.c @@ -13,6 +13,7 @@ #include #include +#include /* * These two variables specify the free mem region @@ -113,7 +114,7 @@ dtb_size = fdt_totalsize((void *)&__appended_dtb); /* last four bytes is always image size in little endian */ - image_size = le32_to_cpup((void *)&__image_end - 4); + image_size = get_unaligned_le32((void *)&__image_end - 4); /* copy dtb to where the booted kernel will expect it */ memcpy((void *)VMLINUX_LOAD_ADDRESS_ULL + image_size, --- linux-azure-5.8-5.8.0.orig/arch/mips/boot/dts/ingenic/qi_lb60.dts +++ linux-azure-5.8-5.8.0/arch/mips/boot/dts/ingenic/qi_lb60.dts @@ -69,7 +69,7 @@ "Speaker", "OUTL", "Speaker", "OUTR", "INL", "LOUT", - "INL", "ROUT"; + "INR", "ROUT"; simple-audio-card,aux-devs = <&>; --- linux-azure-5.8-5.8.0.orig/arch/mips/cavium-octeon/octeon-usb.c +++ linux-azure-5.8-5.8.0/arch/mips/cavium-octeon/octeon-usb.c @@ -518,6 +518,7 @@ res = platform_get_resource(pdev, IORESOURCE_MEM, 0); if (res == NULL) { + put_device(&pdev->dev); dev_err(&pdev->dev, "No memory resources\n"); return -ENXIO; } @@ -529,8 +530,10 @@ * know the difference. */ base = devm_ioremap_resource(&pdev->dev, res); - if (IS_ERR(base)) + if (IS_ERR(base)) { + put_device(&pdev->dev); return PTR_ERR(base); + } mutex_lock(&dwc3_octeon_clocks_mutex); dwc3_octeon_clocks_start(&pdev->dev, (u64)base); --- linux-azure-5.8-5.8.0.orig/arch/mips/cavium-octeon/setup.c +++ linux-azure-5.8-5.8.0/arch/mips/cavium-octeon/setup.c @@ -1162,12 +1162,15 @@ bool do_prune; bool fill_mac; - if (fw_passed_dtb) { - fdt = (void *)fw_passed_dtb; +#ifdef CONFIG_MIPS_ELF_APPENDED_DTB + if (!fdt_check_header(&__appended_dtb)) { + fdt = &__appended_dtb; do_prune = false; fill_mac = true; pr_info("Using appended Device Tree.\n"); - } else if (octeon_bootinfo->minor_version >= 3 && octeon_bootinfo->fdt_addr) { + } else +#endif + if (octeon_bootinfo->minor_version >= 3 && octeon_bootinfo->fdt_addr) { fdt = phys_to_virt(octeon_bootinfo->fdt_addr); if (fdt_check_header(fdt)) panic("Corrupt Device Tree passed to kernel."); --- linux-azure-5.8-5.8.0.orig/arch/mips/configs/qi_lb60_defconfig +++ linux-azure-5.8-5.8.0/arch/mips/configs/qi_lb60_defconfig @@ -8,6 +8,7 @@ # CONFIG_COMPAT_BRK is not set CONFIG_SLAB=y CONFIG_MACH_INGENIC=y +CONFIG_JZ4740_QI_LB60=y CONFIG_HZ_100=y # CONFIG_SECCOMP is not set CONFIG_MODULES=y --- linux-azure-5.8-5.8.0.orig/arch/mips/dec/setup.c +++ linux-azure-5.8-5.8.0/arch/mips/dec/setup.c @@ -6,7 +6,7 @@ * for more details. * * Copyright (C) 1998 Harald Koerfgen - * Copyright (C) 2000, 2001, 2002, 2003, 2005 Maciej W. Rozycki + * Copyright (C) 2000, 2001, 2002, 2003, 2005, 2020 Maciej W. Rozycki */ #include #include @@ -15,6 +15,7 @@ #include #include #include +#include #include #include #include @@ -22,6 +23,7 @@ #include #include +#include #include #include #include @@ -29,7 +31,9 @@ #include #include #include +#include #include +#include #include #include #include @@ -146,6 +150,9 @@ ioport_resource.start = ~0UL; ioport_resource.end = 0UL; + + /* Stay away from the firmware working memory area for now. */ + memblock_reserve(PHYS_OFFSET, __pa_symbol(&_text) - PHYS_OFFSET); } /* --- linux-azure-5.8-5.8.0.orig/arch/mips/include/asm/Kbuild +++ linux-azure-5.8-5.8.0/arch/mips/include/asm/Kbuild @@ -5,7 +5,6 @@ generated-y += syscall_table_64_n64.h generated-y += syscall_table_64_o32.h generic-y += export.h -generic-y += local64.h generic-y += mcs_spinlock.h generic-y += parport.h generic-y += qrwlock.h --- linux-azure-5.8-5.8.0.orig/arch/mips/include/asm/asm.h +++ linux-azure-5.8-5.8.0/arch/mips/include/asm/asm.h @@ -20,10 +20,27 @@ #include #include +#ifndef __VDSO__ +/* + * Emit CFI data in .debug_frame sections, not .eh_frame sections. + * We don't do DWARF unwinding at runtime, so only the offline DWARF + * information is useful to anyone. Note we should change this if we + * ever decide to enable DWARF unwinding at runtime. + */ +#define CFI_SECTIONS .cfi_sections .debug_frame +#else + /* + * For the vDSO, emit both runtime unwind information and debug + * symbols for the .dbg file. + */ +#define CFI_SECTIONS +#endif + /* * LEAF - declare leaf routine */ #define LEAF(symbol) \ + CFI_SECTIONS; \ .globl symbol; \ .align 2; \ .type symbol, @function; \ @@ -36,6 +53,7 @@ * NESTED - declare nested routine entry point */ #define NESTED(symbol, framesize, rpc) \ + CFI_SECTIONS; \ .globl symbol; \ .align 2; \ .type symbol, @function; \ --- linux-azure-5.8-5.8.0.orig/arch/mips/include/asm/atomic.h +++ linux-azure-5.8-5.8.0/arch/mips/include/asm/atomic.h @@ -249,7 +249,7 @@ * bltz that can branch to code outside of the LL/SC loop. As \ * such, we don't need to emit another barrier here. \ */ \ - if (!__SYNC_loongson3_war) \ + if (__SYNC_loongson3_war == 0) \ smp_mb__after_atomic(); \ \ return result; \ --- linux-azure-5.8-5.8.0.orig/arch/mips/include/asm/cmpxchg.h +++ linux-azure-5.8-5.8.0/arch/mips/include/asm/cmpxchg.h @@ -99,7 +99,7 @@ * contains a completion barrier prior to the LL, so we don't \ * need to emit an extra one here. \ */ \ - if (!__SYNC_loongson3_war) \ + if (__SYNC_loongson3_war == 0) \ smp_mb__before_llsc(); \ \ __res = (__typeof__(*(ptr))) \ @@ -191,7 +191,7 @@ * contains a completion barrier prior to the LL, so we don't \ * need to emit an extra one here. \ */ \ - if (!__SYNC_loongson3_war) \ + if (__SYNC_loongson3_war == 0) \ smp_mb__before_llsc(); \ \ __res = cmpxchg_local((ptr), (old), (new)); \ @@ -201,7 +201,7 @@ * contains a completion barrier after the SC, so we don't \ * need to emit an extra one here. \ */ \ - if (!__SYNC_loongson3_war) \ + if (__SYNC_loongson3_war == 0) \ smp_llsc_mb(); \ \ __res; \ --- linux-azure-5.8-5.8.0.orig/arch/mips/include/asm/cpu-features.h +++ linux-azure-5.8-5.8.0/arch/mips/include/asm/cpu-features.h @@ -568,6 +568,10 @@ # define cpu_has_mac2008_only __opt(MIPS_CPU_MAC_2008_ONLY) #endif +#ifndef cpu_has_ftlbparex +# define cpu_has_ftlbparex __opt(MIPS_CPU_FTLBPAREX) +#endif + #ifdef CONFIG_SMP /* * Some systems share FTLB RAMs between threads within a core (siblings in --- linux-azure-5.8-5.8.0.orig/arch/mips/include/asm/cpu-type.h +++ linux-azure-5.8-5.8.0/arch/mips/include/asm/cpu-type.h @@ -47,6 +47,7 @@ case CPU_34K: case CPU_1004K: case CPU_74K: + case CPU_1074K: case CPU_M14KC: case CPU_M14KEC: case CPU_INTERAPTIV: --- linux-azure-5.8-5.8.0.orig/arch/mips/include/asm/cpu.h +++ linux-azure-5.8-5.8.0/arch/mips/include/asm/cpu.h @@ -425,6 +425,7 @@ #define MIPS_CPU_MM_SYSAD BIT_ULL(58) /* CPU supports write-through SysAD Valid merge */ #define MIPS_CPU_MM_FULL BIT_ULL(59) /* CPU supports write-through full merge */ #define MIPS_CPU_MAC_2008_ONLY BIT_ULL(60) /* CPU Only support MAC2008 Fused multiply-add instruction */ +#define MIPS_CPU_FTLBPAREX BIT_ULL(61) /* CPU has FTLB parity exception */ /* * CPU ASE encodings --- linux-azure-5.8-5.8.0.orig/arch/mips/include/asm/kvm_host.h +++ linux-azure-5.8-5.8.0/arch/mips/include/asm/kvm_host.h @@ -981,7 +981,7 @@ #define KVM_ARCH_WANT_MMU_NOTIFIER int kvm_unmap_hva_range(struct kvm *kvm, - unsigned long start, unsigned long end); + unsigned long start, unsigned long end, unsigned flags); int kvm_set_spte_hva(struct kvm *kvm, unsigned long hva, pte_t pte); int kvm_age_hva(struct kvm *kvm, unsigned long start, unsigned long end); int kvm_test_age_hva(struct kvm *kvm, unsigned long hva); --- linux-azure-5.8-5.8.0.orig/arch/mips/include/asm/mach-loongson64/cpu-feature-overrides.h +++ linux-azure-5.8-5.8.0/arch/mips/include/asm/mach-loongson64/cpu-feature-overrides.h @@ -26,7 +26,6 @@ #define cpu_has_counter 1 #define cpu_has_dc_aliases (PAGE_SIZE < 0x4000) #define cpu_has_divec 0 -#define cpu_has_ejtag 0 #define cpu_has_inclusive_pcaches 1 #define cpu_has_llsc 1 #define cpu_has_mcheck 0 @@ -42,7 +41,6 @@ #define cpu_has_veic 0 #define cpu_has_vint 0 #define cpu_has_vtag_icache 0 -#define cpu_has_watch 1 #define cpu_has_wsbh 1 #define cpu_has_ic_fills_f_dc 1 #define cpu_hwrena_impl_bits 0xc0000000 --- linux-azure-5.8-5.8.0.orig/arch/mips/include/asm/pgtable-32.h +++ linux-azure-5.8-5.8.0/arch/mips/include/asm/pgtable-32.h @@ -154,6 +154,7 @@ #if defined(CONFIG_XPA) +#define MAX_POSSIBLE_PHYSMEM_BITS 40 #define pte_pfn(x) (((unsigned long)((x).pte_high >> _PFN_SHIFT)) | (unsigned long)((x).pte_low << _PAGE_PRESENT_SHIFT)) static inline pte_t pfn_pte(unsigned long pfn, pgprot_t prot) @@ -169,6 +170,7 @@ #elif defined(CONFIG_PHYS_ADDR_T_64BIT) && defined(CONFIG_CPU_MIPS32) +#define MAX_POSSIBLE_PHYSMEM_BITS 36 #define pte_pfn(x) ((unsigned long)((x).pte_high >> 6)) static inline pte_t pfn_pte(unsigned long pfn, pgprot_t prot) @@ -183,6 +185,7 @@ #else +#define MAX_POSSIBLE_PHYSMEM_BITS 32 #ifdef CONFIG_CPU_VR41XX #define pte_pfn(x) ((unsigned long)((x).pte >> (PAGE_SHIFT + 2))) #define pfn_pte(pfn, prot) __pte(((pfn) << (PAGE_SHIFT + 2)) | pgprot_val(prot)) --- linux-azure-5.8-5.8.0.orig/arch/mips/kernel/binfmt_elfn32.c +++ linux-azure-5.8-5.8.0/arch/mips/kernel/binfmt_elfn32.c @@ -103,4 +103,11 @@ #undef ns_to_kernel_old_timeval #define ns_to_kernel_old_timeval ns_to_old_timeval32 +/* + * Some data types as stored in coredump. + */ +#define user_long_t compat_long_t +#define user_siginfo_t compat_siginfo_t +#define copy_siginfo_to_external copy_siginfo_to_external32 + #include "../../../fs/binfmt_elf.c" --- linux-azure-5.8-5.8.0.orig/arch/mips/kernel/binfmt_elfo32.c +++ linux-azure-5.8-5.8.0/arch/mips/kernel/binfmt_elfo32.c @@ -106,4 +106,11 @@ #undef ns_to_kernel_old_timeval #define ns_to_kernel_old_timeval ns_to_old_timeval32 +/* + * Some data types as stored in coredump. + */ +#define user_long_t compat_long_t +#define user_siginfo_t compat_siginfo_t +#define copy_siginfo_to_external copy_siginfo_to_external32 + #include "../../../fs/binfmt_elf.c" --- linux-azure-5.8-5.8.0.orig/arch/mips/kernel/cpu-probe.c +++ linux-azure-5.8-5.8.0/arch/mips/kernel/cpu-probe.c @@ -1827,6 +1827,19 @@ default: break; } + + /* Recent MIPS cores use the implementation-dependent ExcCode 16 for + * cache/FTLB parity exceptions. + */ + switch (__get_cpu_type(c->cputype)) { + case CPU_PROAPTIV: + case CPU_P5600: + case CPU_P6600: + case CPU_I6400: + case CPU_I6500: + c->options |= MIPS_CPU_FTLBPAREX; + break; + } } static inline void cpu_probe_alchemy(struct cpuinfo_mips *c, unsigned int cpu) @@ -2129,16 +2142,17 @@ */ case PRID_COMP_INGENIC_D0: c->isa_level &= ~MIPS_CPU_ISA_M32R2; - break; + fallthrough; /* * The config0 register in the XBurst CPUs with a processor ID of - * PRID_COMP_INGENIC_D1 has an abandoned huge page tlb mode, this - * mode is not compatible with the MIPS standard, it will cause - * tlbmiss and into an infinite loop (line 21 in the tlb-funcs.S) - * when starting the init process. After chip reset, the default - * is HPTLB mode, Write 0xa9000000 to cp0 register 5 sel 4 to - * switch back to VTLB mode to prevent getting stuck. + * PRID_COMP_INGENIC_D0 or PRID_COMP_INGENIC_D1 has an abandoned + * huge page tlb mode, this mode is not compatible with the MIPS + * standard, it will cause tlbmiss and into an infinite loop + * (line 21 in the tlb-funcs.S) when starting the init process. + * After chip reset, the default is HPTLB mode, Write 0xa9000000 + * to cp0 register 5 sel 4 to switch back to VTLB mode to prevent + * getting stuck. */ case PRID_COMP_INGENIC_D1: write_c0_page_ctrl(XBURST_PAGECTRL_HPTLB_DIS); --- linux-azure-5.8-5.8.0.orig/arch/mips/kernel/perf_event_mipsxx.c +++ linux-azure-5.8-5.8.0/arch/mips/kernel/perf_event_mipsxx.c @@ -1898,8 +1898,8 @@ (base_id >= 64 && base_id < 90) || (base_id >= 128 && base_id < 164) || (base_id >= 192 && base_id < 200) || - (base_id >= 256 && base_id < 274) || - (base_id >= 320 && base_id < 358) || + (base_id >= 256 && base_id < 275) || + (base_id >= 320 && base_id < 361) || (base_id >= 384 && base_id < 574)) break; --- linux-azure-5.8-5.8.0.orig/arch/mips/kernel/relocate.c +++ linux-azure-5.8-5.8.0/arch/mips/kernel/relocate.c @@ -187,8 +187,14 @@ static inline __init unsigned long rotate_xor(unsigned long hash, const void *area, size_t size) { - size_t i; - unsigned long *ptr = (unsigned long *)area; + const typeof(hash) *ptr = PTR_ALIGN(area, sizeof(hash)); + size_t diff, i; + + diff = (void *)ptr - area; + if (unlikely(size < diff + sizeof(hash))) + return hash; + + size = ALIGN_DOWN(size - diff, sizeof(hash)); for (i = 0; i < size / sizeof(hash); i++) { /* Rotate by odd number of bits and XOR. */ --- linux-azure-5.8-5.8.0.orig/arch/mips/kernel/setup.c +++ linux-azure-5.8-5.8.0/arch/mips/kernel/setup.c @@ -497,7 +497,7 @@ if (ret != 0 || crash_size <= 0) return; - if (!memblock_find_in_range(crash_base, crash_base + crash_size, crash_size, 0)) { + if (!memblock_find_in_range(crash_base, crash_base + crash_size, crash_size, 1)) { pr_warn("Invalid memory region reserved for crash kernel\n"); return; } @@ -531,8 +531,8 @@ static void __init check_kernel_sections_mem(void) { - phys_addr_t start = PFN_PHYS(PFN_DOWN(__pa_symbol(&_text))); - phys_addr_t size = PFN_PHYS(PFN_UP(__pa_symbol(&_end))) - start; + phys_addr_t start = __pa_symbol(&_text); + phys_addr_t size = __pa_symbol(&_end) - start; if (!memblock_is_region_memory(start, size)) { pr_info("Kernel sections are not in the memory maps\n"); --- linux-azure-5.8-5.8.0.orig/arch/mips/kernel/smp-bmips.c +++ linux-azure-5.8-5.8.0/arch/mips/kernel/smp-bmips.c @@ -239,6 +239,8 @@ */ static void bmips_init_secondary(void) { + bmips_cpu_setup(); + switch (current_cpu_type()) { case CPU_BMIPS4350: case CPU_BMIPS4380: --- linux-azure-5.8-5.8.0.orig/arch/mips/kernel/topology.c +++ linux-azure-5.8-5.8.0/arch/mips/kernel/topology.c @@ -20,7 +20,7 @@ for_each_present_cpu(i) { struct cpu *c = &per_cpu(cpu_devices, i); - c->hotpluggable = 1; + c->hotpluggable = !!i; ret = register_cpu(c, i); if (ret) printk(KERN_WARNING "topology_init: register_cpu %d " --- linux-azure-5.8-5.8.0.orig/arch/mips/kernel/traps.c +++ linux-azure-5.8-5.8.0/arch/mips/kernel/traps.c @@ -1286,6 +1286,18 @@ err = own_fpu_inatomic(1); if (msa && !err) { enable_msa(); + /* + * with MSA enabled, userspace can see MSACSR + * and MSA regs, but the values in them are from + * other task before current task, restore them + * from saved fp/msa context + */ + write_msa_csr(current->thread.fpu.msacsr); + /* + * own_fpu_inatomic(1) just restore low 64bit, + * fix the high 64bit + */ + init_msa_upper(); set_thread_flag(TIF_USEDMSA); set_thread_flag(TIF_MSA_CTX_LIVE); } @@ -2457,7 +2469,8 @@ if (cpu_has_fpu && !cpu_has_nofpuex) set_except_vector(EXCCODE_FPE, handle_fpe); - set_except_vector(MIPS_EXCCODE_TLBPAR, handle_ftlb); + if (cpu_has_ftlbparex) + set_except_vector(MIPS_EXCCODE_TLBPAR, handle_ftlb); if (cpu_has_rixiex) { set_except_vector(EXCCODE_TLBRI, tlb_do_page_fault_0); --- linux-azure-5.8-5.8.0.orig/arch/mips/kernel/vmlinux.lds.S +++ linux-azure-5.8-5.8.0/arch/mips/kernel/vmlinux.lds.S @@ -90,6 +90,7 @@ INIT_TASK_DATA(THREAD_SIZE) NOSAVE_DATA + PAGE_ALIGNED_DATA(PAGE_SIZE) CACHELINE_ALIGNED_DATA(1 << CONFIG_MIPS_L1_CACHE_SHIFT) READ_MOSTLY_DATA(1 << CONFIG_MIPS_L1_CACHE_SHIFT) DATA_DATA @@ -222,6 +223,5 @@ *(.options) *(.pdr) *(.reginfo) - *(.eh_frame) } } --- linux-azure-5.8-5.8.0.orig/arch/mips/kvm/Kconfig +++ linux-azure-5.8-5.8.0/arch/mips/kvm/Kconfig @@ -37,10 +37,11 @@ config KVM_MIPS_TE bool "Trap & Emulate" + depends on CPU_MIPS32_R2 help Use trap and emulate to virtualize 32-bit guests in user mode. This does not require any special hardware Virtualization support beyond - standard MIPS32/64 r2 or later, but it does require the guest kernel + standard MIPS32 r2 or later, but it does require the guest kernel to be configured with CONFIG_KVM_GUEST=y so that it resides in the user address segment. --- linux-azure-5.8-5.8.0.orig/arch/mips/kvm/mips.c +++ linux-azure-5.8-5.8.0/arch/mips/kvm/mips.c @@ -137,6 +137,8 @@ int kvm_arch_init_vm(struct kvm *kvm, unsigned long type) { switch (type) { + case KVM_VM_MIPS_AUTO: + break; #ifdef CONFIG_KVM_MIPS_VZ case KVM_VM_MIPS_VZ: #else --- linux-azure-5.8-5.8.0.orig/arch/mips/kvm/mmu.c +++ linux-azure-5.8-5.8.0/arch/mips/kvm/mmu.c @@ -518,7 +518,8 @@ return 1; } -int kvm_unmap_hva_range(struct kvm *kvm, unsigned long start, unsigned long end) +int kvm_unmap_hva_range(struct kvm *kvm, unsigned long start, unsigned long end, + unsigned flags) { handle_hva_to_gpa(kvm, start, end, &kvm_unmap_hva_handler, NULL); --- linux-azure-5.8-5.8.0.orig/arch/mips/kvm/vz.c +++ linux-azure-5.8-5.8.0/arch/mips/kvm/vz.c @@ -29,7 +29,9 @@ #include #include "interrupt.h" +#ifdef CONFIG_CPU_LOONGSON64 #include "loongson_regs.h" +#endif #include "trace.h" --- linux-azure-5.8-5.8.0.orig/arch/mips/lantiq/irq.c +++ linux-azure-5.8-5.8.0/arch/mips/lantiq/irq.c @@ -302,7 +302,7 @@ generic_handle_irq(irq_linear_revmap(ltq_domain, hwirq)); /* if this is a EBU irq, we need to ack it or get a deadlock */ - if ((irq == LTQ_ICU_EBU_IRQ) && (module == 0) && LTQ_EBU_PCC_ISTAT) + if (irq == LTQ_ICU_EBU_IRQ && !module && LTQ_EBU_PCC_ISTAT != 0) ltq_ebu_w32(ltq_ebu_r32(LTQ_EBU_PCC_ISTAT) | 0x10, LTQ_EBU_PCC_ISTAT); } --- linux-azure-5.8-5.8.0.orig/arch/mips/lib/uncached.c +++ linux-azure-5.8-5.8.0/arch/mips/lib/uncached.c @@ -37,10 +37,12 @@ */ unsigned long run_uncached(void *func) { - register long sp __asm__("$sp"); register long ret __asm__("$2"); long lfunc = (long)func, ufunc; long usp; + long sp; + + __asm__("move %0, $sp" : "=r" (sp)); if (sp >= (long)CKSEG0 && sp < (long)CKSEG2) usp = CKSEG1ADDR(sp); --- linux-azure-5.8-5.8.0.orig/arch/mips/loongson2ef/Platform +++ linux-azure-5.8-5.8.0/arch/mips/loongson2ef/Platform @@ -22,6 +22,10 @@ endif endif +# Some -march= flags enable MMI instructions, and GCC complains about that +# support being enabled alongside -msoft-float. Thus explicitly disable MMI. +cflags-y += $(call cc-option,-mno-loongson-mmi) + # # Loongson Machines' Support # --- linux-azure-5.8-5.8.0.orig/arch/mips/loongson64/Platform +++ linux-azure-5.8-5.8.0/arch/mips/loongson64/Platform @@ -6,28 +6,6 @@ cflags-$(CONFIG_CPU_LOONGSON64) += -Wa,--trap # -# Some versions of binutils, not currently mainline as of 2019/02/04, support -# an -mfix-loongson3-llsc flag which emits a sync prior to each ll instruction -# to work around a CPU bug (see __SYNC_loongson3_war in asm/sync.h for a -# description). -# -# We disable this in order to prevent the assembler meddling with the -# instruction that labels refer to, ie. if we label an ll instruction: -# -# 1: ll v0, 0(a0) -# -# ...then with the assembler fix applied the label may actually point at a sync -# instruction inserted by the assembler, and if we were using the label in an -# exception table the table would no longer contain the address of the ll -# instruction. -# -# Avoid this by explicitly disabling that assembler behaviour. If upstream -# binutils does not merge support for the flag then we can revisit & remove -# this later - for now it ensures vendor toolchains don't cause problems. -# -cflags-$(CONFIG_CPU_LOONGSON64) += $(call as-option,-Wa$(comma)-mno-fix-loongson3-llsc,) - -# # binutils from v2.25 on and gcc starting from v4.9.0 treat -march=loongson3a # as MIPS64 R2; older versions as just R1. This leaves the possibility open # that GCC might generate R2 code for -march=loongson3a which then is rejected --- linux-azure-5.8-5.8.0.orig/arch/mips/loongson64/cop2-ex.c +++ linux-azure-5.8-5.8.0/arch/mips/loongson64/cop2-ex.c @@ -95,10 +95,8 @@ if (res) goto fault; - set_fpr64(current->thread.fpu.fpr, - insn.loongson3_lswc2_format.rt, value); - set_fpr64(current->thread.fpu.fpr, - insn.loongson3_lswc2_format.rq, value_next); + set_fpr64(¤t->thread.fpu.fpr[insn.loongson3_lswc2_format.rt], 0, value); + set_fpr64(¤t->thread.fpu.fpr[insn.loongson3_lswc2_format.rq], 0, value_next); compute_return_epc(regs); own_fpu(1); } @@ -130,15 +128,13 @@ goto sigbus; lose_fpu(1); - value_next = get_fpr64(current->thread.fpu.fpr, - insn.loongson3_lswc2_format.rq); + value_next = get_fpr64(¤t->thread.fpu.fpr[insn.loongson3_lswc2_format.rq], 0); StoreDW(addr + 8, value_next, res); if (res) goto fault; - value = get_fpr64(current->thread.fpu.fpr, - insn.loongson3_lswc2_format.rt); + value = get_fpr64(¤t->thread.fpu.fpr[insn.loongson3_lswc2_format.rt], 0); StoreDW(addr, value, res); if (res) @@ -204,8 +200,7 @@ if (res) goto fault; - set_fpr64(current->thread.fpu.fpr, - insn.loongson3_lsdc2_format.rt, value); + set_fpr64(¤t->thread.fpu.fpr[insn.loongson3_lsdc2_format.rt], 0, value); compute_return_epc(regs); own_fpu(1); @@ -221,8 +216,7 @@ if (res) goto fault; - set_fpr64(current->thread.fpu.fpr, - insn.loongson3_lsdc2_format.rt, value); + set_fpr64(¤t->thread.fpu.fpr[insn.loongson3_lsdc2_format.rt], 0, value); compute_return_epc(regs); own_fpu(1); break; @@ -286,8 +280,7 @@ goto sigbus; lose_fpu(1); - value = get_fpr64(current->thread.fpu.fpr, - insn.loongson3_lsdc2_format.rt); + value = get_fpr64(¤t->thread.fpu.fpr[insn.loongson3_lsdc2_format.rt], 0); StoreW(addr, value, res); if (res) @@ -305,8 +298,7 @@ goto sigbus; lose_fpu(1); - value = get_fpr64(current->thread.fpu.fpr, - insn.loongson3_lsdc2_format.rt); + value = get_fpr64(¤t->thread.fpu.fpr[insn.loongson3_lsdc2_format.rt], 0); StoreDW(addr, value, res); if (res) --- linux-azure-5.8-5.8.0.orig/arch/mips/mm/c-r4k.c +++ linux-azure-5.8-5.8.0/arch/mips/mm/c-r4k.c @@ -1590,7 +1590,7 @@ return 1; } -static void __init loongson2_sc_init(void) +static void loongson2_sc_init(void) { struct cpuinfo_mips *c = ¤t_cpu_data; @@ -1606,7 +1606,7 @@ c->options |= MIPS_CPU_INCLUSIVE_CACHES; } -static void __init loongson3_sc_init(void) +static void loongson3_sc_init(void) { struct cpuinfo_mips *c = ¤t_cpu_data; unsigned int config2, lsize; @@ -1712,7 +1712,11 @@ printk("MIPS secondary cache %ldkB, %s, linesize %d bytes.\n", scache_size >> 10, way_string[c->scache.ways], c->scache.linesz); + + if (current_cpu_type() == CPU_BMIPS5000) + c->options |= MIPS_CPU_INCLUSIVE_CACHES; } + #else if (!(c->scache.flags & MIPS_CACHE_NOT_PRESENT)) panic("Dunno how to handle MIPS32 / MIPS64 second level cache"); --- linux-azure-5.8-5.8.0.orig/arch/mips/mm/sc-mips.c +++ linux-azure-5.8-5.8.0/arch/mips/mm/sc-mips.c @@ -146,7 +146,7 @@ return 1; } -static int __init mips_sc_probe_cm3(void) +static int mips_sc_probe_cm3(void) { struct cpuinfo_mips *c = ¤t_cpu_data; unsigned long cfg = read_gcr_l2_config(); @@ -180,7 +180,7 @@ return 0; } -static inline int __init mips_sc_probe(void) +static inline int mips_sc_probe(void) { struct cpuinfo_mips *c = ¤t_cpu_data; unsigned int config1, config2; --- linux-azure-5.8-5.8.0.orig/arch/mips/mm/tlb-r4k.c +++ linux-azure-5.8-5.8.0/arch/mips/mm/tlb-r4k.c @@ -438,6 +438,7 @@ } return mask == PM_HUGE_MASK; } +EXPORT_SYMBOL(has_transparent_hugepage); #endif /* CONFIG_TRANSPARENT_HUGEPAGE */ --- linux-azure-5.8-5.8.0.orig/arch/mips/oprofile/op_model_mipsxx.c +++ linux-azure-5.8-5.8.0/arch/mips/oprofile/op_model_mipsxx.c @@ -245,7 +245,6 @@ switch (counters) { #define HANDLE_COUNTER(n) \ - fallthrough; \ case n + 1: \ control = r_c0_perfctrl ## n(); \ counter = r_c0_perfcntr ## n(); \ @@ -256,8 +255,11 @@ handled = IRQ_HANDLED; \ } HANDLE_COUNTER(3) + fallthrough; HANDLE_COUNTER(2) + fallthrough; HANDLE_COUNTER(1) + fallthrough; HANDLE_COUNTER(0) } --- linux-azure-5.8-5.8.0.orig/arch/mips/pci/pci-xtalk-bridge.c +++ linux-azure-5.8-5.8.0/arch/mips/pci/pci-xtalk-bridge.c @@ -728,6 +728,7 @@ pci_free_resource_list(&host->windows); err_remove_domain: irq_domain_remove(domain); + irq_domain_free_fwnode(fn); return err; } @@ -735,8 +736,10 @@ { struct pci_bus *bus = platform_get_drvdata(pdev); struct bridge_controller *bc = BRIDGE_CONTROLLER(bus); + struct fwnode_handle *fn = bc->domain->fwnode; irq_domain_remove(bc->domain); + irq_domain_free_fwnode(fn); pci_lock_rescan_remove(); pci_stop_root_bus(bus); pci_remove_root_bus(bus); --- linux-azure-5.8-5.8.0.orig/arch/mips/sni/a20r.c +++ linux-azure-5.8-5.8.0/arch/mips/sni/a20r.c @@ -143,7 +143,10 @@ }, }; -static u32 a20r_ack_hwint(void) +/* + * Trigger chipset to update CPU's CAUSE IP field + */ +static u32 a20r_update_cause_ip(void) { u32 status = read_c0_status(); @@ -205,12 +208,14 @@ int irq; clear_c0_status(IE_IRQ0); - status = a20r_ack_hwint(); + status = a20r_update_cause_ip(); cause = read_c0_cause(); irq = ffs(((cause & status) >> 8) & 0xf8); if (likely(irq > 0)) do_IRQ(SNI_A20R_IRQ_BASE + irq - 1); + + a20r_update_cause_ip(); set_c0_status(IE_IRQ0); } @@ -222,8 +227,8 @@ irq_set_chip_and_handler(i, &a20r_irq_type, handle_level_irq); sni_hwint = a20r_hwint; change_c0_status(ST0_IM, IE_IRQ0); - if (request_irq(SNI_A20R_IRQ_BASE + 3, sni_isa_irq_handler, 0, "ISA", - NULL)) + if (request_irq(SNI_A20R_IRQ_BASE + 3, sni_isa_irq_handler, + IRQF_SHARED, "ISA", sni_isa_irq_handler)) pr_err("Failed to register ISA interrupt\n"); } --- linux-azure-5.8-5.8.0.orig/arch/mips/vdso/Makefile +++ linux-azure-5.8-5.8.0/arch/mips/vdso/Makefile @@ -16,16 +16,13 @@ $(filter -march=%,$(KBUILD_CFLAGS)) \ $(filter -m%-float,$(KBUILD_CFLAGS)) \ $(filter -mno-loongson-%,$(KBUILD_CFLAGS)) \ + $(CLANG_FLAGS) \ -D__VDSO__ ifndef CONFIG_64BIT ccflags-vdso += -DBUILD_VDSO32 endif -ifdef CONFIG_CC_IS_CLANG -ccflags-vdso += $(filter --target=%,$(KBUILD_CFLAGS)) -endif - # # The -fno-jump-tables flag only prevents the compiler from generating # jump tables but does not prevent the compiler from emitting absolute @@ -62,7 +59,7 @@ # VDSO linker flags. ldflags-y := -Bsymbolic --no-undefined -soname=linux-vdso.so.1 \ $(filter -E%,$(KBUILD_CFLAGS)) -nostdlib -shared \ - -G 0 --eh-frame-hdr --hash-style=sysv --build-id -T + -G 0 --eh-frame-hdr --hash-style=sysv --build-id=sha1 -T CFLAGS_REMOVE_vdso.o = -pg --- linux-azure-5.8-5.8.0.orig/arch/mips/vdso/genvdso.c +++ linux-azure-5.8-5.8.0/arch/mips/vdso/genvdso.c @@ -122,6 +122,7 @@ if (fstat(fd, &stat) != 0) { fprintf(stderr, "%s: Failed to stat '%s': %s\n", program_name, path, strerror(errno)); + close(fd); return NULL; } @@ -130,6 +131,7 @@ if (addr == MAP_FAILED) { fprintf(stderr, "%s: Failed to map '%s': %s\n", program_name, path, strerror(errno)); + close(fd); return NULL; } @@ -139,6 +141,7 @@ if (memcmp(ehdr->e_ident, ELFMAG, SELFMAG) != 0) { fprintf(stderr, "%s: '%s' is not an ELF file\n", program_name, path); + close(fd); return NULL; } @@ -150,6 +153,7 @@ default: fprintf(stderr, "%s: '%s' has invalid ELF class\n", program_name, path); + close(fd); return NULL; } @@ -161,6 +165,7 @@ default: fprintf(stderr, "%s: '%s' has invalid ELF data order\n", program_name, path); + close(fd); return NULL; } @@ -168,15 +173,18 @@ fprintf(stderr, "%s: '%s' has invalid ELF machine (expected EM_MIPS)\n", program_name, path); + close(fd); return NULL; } else if (swap_uint16(ehdr->e_type) != ET_DYN) { fprintf(stderr, "%s: '%s' has invalid ELF type (expected ET_DYN)\n", program_name, path); + close(fd); return NULL; } *_size = stat.st_size; + close(fd); return addr; } @@ -293,10 +301,12 @@ /* Calculate and write symbol offsets to */ if (!get_symbols(dbg_vdso_path, dbg_vdso)) { unlink(out_path); + fclose(out_file); return EXIT_FAILURE; } fprintf(out_file, "};\n"); + fclose(out_file); return EXIT_SUCCESS; } --- linux-azure-5.8-5.8.0.orig/arch/nds32/include/asm/Kbuild +++ linux-azure-5.8-5.8.0/arch/nds32/include/asm/Kbuild @@ -4,6 +4,5 @@ generic-y += export.h generic-y += gpio.h generic-y += kvm_para.h -generic-y += local64.h generic-y += parport.h generic-y += user.h --- linux-azure-5.8-5.8.0.orig/arch/nios2/kernel/sys_nios2.c +++ linux-azure-5.8-5.8.0/arch/nios2/kernel/sys_nios2.c @@ -22,6 +22,7 @@ unsigned int op) { struct vm_area_struct *vma; + struct mm_struct *mm = current->mm; if (len == 0) return 0; @@ -34,16 +35,22 @@ if (addr + len < addr) return -EFAULT; + if (mmap_read_lock_killable(mm)) + return -EINTR; + /* * Verify that the specified address region actually belongs * to this process. */ - vma = find_vma(current->mm, addr); - if (vma == NULL || addr < vma->vm_start || addr + len > vma->vm_end) + vma = find_vma(mm, addr); + if (vma == NULL || addr < vma->vm_start || addr + len > vma->vm_end) { + mmap_read_unlock(mm); return -EFAULT; + } flush_cache_range(vma, addr, addr + len); + mmap_read_unlock(mm); return 0; } --- linux-azure-5.8-5.8.0.orig/arch/openrisc/include/asm/uaccess.h +++ linux-azure-5.8-5.8.0/arch/openrisc/include/asm/uaccess.h @@ -164,19 +164,19 @@ #define __get_user_nocheck(x, ptr, size) \ ({ \ - long __gu_err, __gu_val; \ - __get_user_size(__gu_val, (ptr), (size), __gu_err); \ - (x) = (__force __typeof__(*(ptr)))__gu_val; \ + long __gu_err; \ + __get_user_size((x), (ptr), (size), __gu_err); \ __gu_err; \ }) #define __get_user_check(x, ptr, size) \ ({ \ - long __gu_err = -EFAULT, __gu_val = 0; \ - const __typeof__(*(ptr)) * __gu_addr = (ptr); \ - if (access_ok(__gu_addr, size)) \ - __get_user_size(__gu_val, __gu_addr, (size), __gu_err); \ - (x) = (__force __typeof__(*(ptr)))__gu_val; \ + long __gu_err = -EFAULT; \ + const __typeof__(*(ptr)) *__gu_addr = (ptr); \ + if (access_ok(__gu_addr, size)) \ + __get_user_size((x), __gu_addr, (size), __gu_err); \ + else \ + (x) = (__typeof__(*(ptr))) 0; \ __gu_err; \ }) @@ -190,11 +190,13 @@ case 2: __get_user_asm(x, ptr, retval, "l.lhz"); break; \ case 4: __get_user_asm(x, ptr, retval, "l.lwz"); break; \ case 8: __get_user_asm2(x, ptr, retval); break; \ - default: (x) = __get_user_bad(); \ + default: (x) = (__typeof__(*(ptr)))__get_user_bad(); \ } \ } while (0) #define __get_user_asm(x, addr, err, op) \ +{ \ + unsigned long __gu_tmp; \ __asm__ __volatile__( \ "1: "op" %1,0(%2)\n" \ "2:\n" \ @@ -208,10 +210,14 @@ " .align 2\n" \ " .long 1b,3b\n" \ ".previous" \ - : "=r"(err), "=r"(x) \ - : "r"(addr), "i"(-EFAULT), "0"(err)) + : "=r"(err), "=r"(__gu_tmp) \ + : "r"(addr), "i"(-EFAULT), "0"(err)); \ + (x) = (__typeof__(*(addr)))__gu_tmp; \ +} #define __get_user_asm2(x, addr, err) \ +{ \ + unsigned long long __gu_tmp; \ __asm__ __volatile__( \ "1: l.lwz %1,0(%2)\n" \ "2: l.lwz %H1,4(%2)\n" \ @@ -228,8 +234,11 @@ " .long 1b,4b\n" \ " .long 2b,4b\n" \ ".previous" \ - : "=r"(err), "=&r"(x) \ - : "r"(addr), "i"(-EFAULT), "0"(err)) + : "=r"(err), "=&r"(__gu_tmp) \ + : "r"(addr), "i"(-EFAULT), "0"(err)); \ + (x) = (__typeof__(*(addr)))( \ + (__typeof__((x)-(x)))__gu_tmp); \ +} /* more complex routines */ --- linux-azure-5.8-5.8.0.orig/arch/openrisc/kernel/stacktrace.c +++ linux-azure-5.8-5.8.0/arch/openrisc/kernel/stacktrace.c @@ -13,6 +13,7 @@ #include #include #include +#include #include #include @@ -68,12 +69,25 @@ { unsigned long *sp = NULL; + if (!try_get_task_stack(tsk)) + return; + if (tsk == current) sp = (unsigned long *) &sp; - else - sp = (unsigned long *) KSTK_ESP(tsk); + else { + unsigned long ksp; + + /* Locate stack from kernel context */ + ksp = task_thread_info(tsk)->ksp; + ksp += STACK_FRAME_OVERHEAD; /* redzone */ + ksp += sizeof(struct pt_regs); + + sp = (unsigned long *) ksp; + } unwind_stack(trace, sp, save_stack_address_nosched); + + put_task_stack(tsk); } EXPORT_SYMBOL_GPL(save_stack_trace_tsk); --- linux-azure-5.8-5.8.0.orig/arch/openrisc/mm/cache.c +++ linux-azure-5.8-5.8.0/arch/openrisc/mm/cache.c @@ -16,7 +16,7 @@ #include #include -static void cache_loop(struct page *page, const unsigned int reg) +static __always_inline void cache_loop(struct page *page, const unsigned int reg) { unsigned long paddr = page_to_pfn(page) << PAGE_SHIFT; unsigned long line = paddr & ~(L1_CACHE_BYTES - 1); --- linux-azure-5.8-5.8.0.orig/arch/parisc/Kconfig +++ linux-azure-5.8-5.8.0/arch/parisc/Kconfig @@ -202,9 +202,8 @@ depends on PA8X00 || PA7200 config MLONGCALLS - bool "Enable the -mlong-calls compiler option for big kernels" - default y if !MODULES || UBSAN || FTRACE - default n + def_bool y if !MODULES || UBSAN || FTRACE + bool "Enable the -mlong-calls compiler option for big kernels" if MODULES && !UBSAN && !FTRACE depends on PA8X00 help If you configure the kernel to include many drivers built-in instead --- linux-azure-5.8-5.8.0.orig/arch/parisc/include/asm/Kbuild +++ linux-azure-5.8-5.8.0/arch/parisc/include/asm/Kbuild @@ -3,7 +3,6 @@ generated-y += syscall_table_64.h generated-y += syscall_table_c32.h generic-y += kvm_para.h -generic-y += local64.h generic-y += mcs_spinlock.h generic-y += seccomp.h generic-y += user.h --- linux-azure-5.8-5.8.0.orig/arch/parisc/include/asm/barrier.h +++ linux-azure-5.8-5.8.0/arch/parisc/include/asm/barrier.h @@ -26,6 +26,67 @@ #define __smp_rmb() mb() #define __smp_wmb() mb() +#define __smp_store_release(p, v) \ +do { \ + typeof(p) __p = (p); \ + union { typeof(*p) __val; char __c[1]; } __u = \ + { .__val = (__force typeof(*p)) (v) }; \ + compiletime_assert_atomic_type(*p); \ + switch (sizeof(*p)) { \ + case 1: \ + asm volatile("stb,ma %0,0(%1)" \ + : : "r"(*(__u8 *)__u.__c), "r"(__p) \ + : "memory"); \ + break; \ + case 2: \ + asm volatile("sth,ma %0,0(%1)" \ + : : "r"(*(__u16 *)__u.__c), "r"(__p) \ + : "memory"); \ + break; \ + case 4: \ + asm volatile("stw,ma %0,0(%1)" \ + : : "r"(*(__u32 *)__u.__c), "r"(__p) \ + : "memory"); \ + break; \ + case 8: \ + if (IS_ENABLED(CONFIG_64BIT)) \ + asm volatile("std,ma %0,0(%1)" \ + : : "r"(*(__u64 *)__u.__c), "r"(__p) \ + : "memory"); \ + break; \ + } \ +} while (0) + +#define __smp_load_acquire(p) \ +({ \ + union { typeof(*p) __val; char __c[1]; } __u; \ + typeof(p) __p = (p); \ + compiletime_assert_atomic_type(*p); \ + switch (sizeof(*p)) { \ + case 1: \ + asm volatile("ldb,ma 0(%1),%0" \ + : "=r"(*(__u8 *)__u.__c) : "r"(__p) \ + : "memory"); \ + break; \ + case 2: \ + asm volatile("ldh,ma 0(%1),%0" \ + : "=r"(*(__u16 *)__u.__c) : "r"(__p) \ + : "memory"); \ + break; \ + case 4: \ + asm volatile("ldw,ma 0(%1),%0" \ + : "=r"(*(__u32 *)__u.__c) : "r"(__p) \ + : "memory"); \ + break; \ + case 8: \ + if (IS_ENABLED(CONFIG_64BIT)) \ + asm volatile("ldd,ma 0(%1),%0" \ + : "=r"(*(__u64 *)__u.__c) : "r"(__p) \ + : "memory"); \ + break; \ + } \ + __u.__val; \ +}) #include #endif /* !__ASSEMBLY__ */ --- linux-azure-5.8-5.8.0.orig/arch/parisc/include/asm/spinlock.h +++ linux-azure-5.8-5.8.0/arch/parisc/include/asm/spinlock.h @@ -10,34 +10,25 @@ static inline int arch_spin_is_locked(arch_spinlock_t *x) { volatile unsigned int *a = __ldcw_align(x); - smp_mb(); return *a == 0; } -static inline void arch_spin_lock(arch_spinlock_t *x) -{ - volatile unsigned int *a; - - a = __ldcw_align(x); - while (__ldcw(a) == 0) - while (*a == 0) - cpu_relax(); -} +#define arch_spin_lock(lock) arch_spin_lock_flags(lock, 0) static inline void arch_spin_lock_flags(arch_spinlock_t *x, unsigned long flags) { volatile unsigned int *a; - unsigned long flags_dis; a = __ldcw_align(x); - while (__ldcw(a) == 0) { - local_save_flags(flags_dis); - local_irq_restore(flags); + while (__ldcw(a) == 0) while (*a == 0) - cpu_relax(); - local_irq_restore(flags_dis); - } + if (flags & PSW_SM_I) { + local_irq_enable(); + cpu_relax(); + local_irq_disable(); + } else + cpu_relax(); } #define arch_spin_lock_flags arch_spin_lock_flags @@ -46,12 +37,8 @@ volatile unsigned int *a; a = __ldcw_align(x); -#ifdef CONFIG_SMP - (void) __ldcw(a); -#else - mb(); -#endif - *a = 1; + /* Release with ordered store. */ + __asm__ __volatile__("stw,ma %0,0(%1)" : : "r"(1), "r"(a) : "memory"); } static inline int arch_spin_trylock(arch_spinlock_t *x) --- linux-azure-5.8-5.8.0.orig/arch/parisc/kernel/entry.S +++ linux-azure-5.8-5.8.0/arch/parisc/kernel/entry.S @@ -454,7 +454,6 @@ nop LDREG 0(\ptp),\pte bb,<,n \pte,_PAGE_PRESENT_BIT,3f - LDCW 0(\tmp),\tmp1 b \fault stw \spc,0(\tmp) 99: ALTERNATIVE(98b, 99b, ALT_COND_NO_SMP, INSN_NOP) @@ -464,23 +463,26 @@ 3: .endm - /* Release pa_tlb_lock lock without reloading lock address. */ - .macro tlb_unlock0 spc,tmp,tmp1 + /* Release pa_tlb_lock lock without reloading lock address. + Note that the values in the register spc are limited to + NR_SPACE_IDS (262144). Thus, the stw instruction always + stores a nonzero value even when register spc is 64 bits. + We use an ordered store to ensure all prior accesses are + performed prior to releasing the lock. */ + .macro tlb_unlock0 spc,tmp #ifdef CONFIG_SMP 98: or,COND(=) %r0,\spc,%r0 - LDCW 0(\tmp),\tmp1 - or,COND(=) %r0,\spc,%r0 - stw \spc,0(\tmp) + stw,ma \spc,0(\tmp) 99: ALTERNATIVE(98b, 99b, ALT_COND_NO_SMP, INSN_NOP) #endif .endm /* Release pa_tlb_lock lock. */ - .macro tlb_unlock1 spc,tmp,tmp1 + .macro tlb_unlock1 spc,tmp #ifdef CONFIG_SMP 98: load_pa_tlb_lock \tmp 99: ALTERNATIVE(98b, 99b, ALT_COND_NO_SMP, INSN_NOP) - tlb_unlock0 \spc,\tmp,\tmp1 + tlb_unlock0 \spc,\tmp #endif .endm @@ -995,10 +997,17 @@ bb,<,n %r20, 31 - PSW_SM_I, intr_restore nop + /* ssm PSW_SM_I done later in intr_restore */ +#ifdef CONFIG_MLONGCALLS + ldil L%intr_restore, %r2 + load32 preempt_schedule_irq, %r1 + bv %r0(%r1) + ldo R%intr_restore(%r2), %r2 +#else + ldil L%intr_restore, %r1 BL preempt_schedule_irq, %r2 - nop - - b,n intr_restore /* ssm PSW_SM_I done by intr_restore */ + ldo R%intr_restore(%r1), %r2 +#endif #endif /* CONFIG_PREEMPTION */ /* @@ -1163,7 +1172,7 @@ idtlbt pte,prot - tlb_unlock1 spc,t0,t1 + tlb_unlock1 spc,t0 rfir nop @@ -1189,7 +1198,7 @@ idtlbt pte,prot - tlb_unlock1 spc,t0,t1 + tlb_unlock1 spc,t0 rfir nop @@ -1223,7 +1232,7 @@ mtsp t1, %sr1 /* Restore sr1 */ - tlb_unlock1 spc,t0,t1 + tlb_unlock1 spc,t0 rfir nop @@ -1256,7 +1265,7 @@ mtsp t1, %sr1 /* Restore sr1 */ - tlb_unlock1 spc,t0,t1 + tlb_unlock1 spc,t0 rfir nop @@ -1285,7 +1294,7 @@ idtlbt pte,prot - tlb_unlock1 spc,t0,t1 + tlb_unlock1 spc,t0 rfir nop @@ -1313,7 +1322,7 @@ idtlbt pte,prot - tlb_unlock1 spc,t0,t1 + tlb_unlock1 spc,t0 rfir nop @@ -1420,7 +1429,7 @@ iitlbt pte,prot - tlb_unlock1 spc,t0,t1 + tlb_unlock1 spc,t0 rfir nop @@ -1444,7 +1453,7 @@ iitlbt pte,prot - tlb_unlock1 spc,t0,t1 + tlb_unlock1 spc,t0 rfir nop @@ -1478,7 +1487,7 @@ mtsp t1, %sr1 /* Restore sr1 */ - tlb_unlock1 spc,t0,t1 + tlb_unlock1 spc,t0 rfir nop @@ -1502,7 +1511,7 @@ mtsp t1, %sr1 /* Restore sr1 */ - tlb_unlock1 spc,t0,t1 + tlb_unlock1 spc,t0 rfir nop @@ -1532,7 +1541,7 @@ iitlbt pte,prot - tlb_unlock1 spc,t0,t1 + tlb_unlock1 spc,t0 rfir nop @@ -1552,7 +1561,7 @@ iitlbt pte,prot - tlb_unlock1 spc,t0,t1 + tlb_unlock1 spc,t0 rfir nop @@ -1582,7 +1591,7 @@ idtlbt pte,prot - tlb_unlock0 spc,t0,t1 + tlb_unlock0 spc,t0 rfir nop #else @@ -1608,7 +1617,7 @@ mtsp t1, %sr1 /* Restore sr1 */ - tlb_unlock0 spc,t0,t1 + tlb_unlock0 spc,t0 rfir nop @@ -1628,7 +1637,7 @@ idtlbt pte,prot - tlb_unlock0 spc,t0,t1 + tlb_unlock0 spc,t0 rfir nop #endif --- linux-azure-5.8-5.8.0.orig/arch/parisc/kernel/syscall.S +++ linux-azure-5.8-5.8.0/arch/parisc/kernel/syscall.S @@ -640,11 +640,7 @@ sub,<> %r28, %r25, %r0 2: stw %r24, 0(%r26) /* Free lock */ -#ifdef CONFIG_SMP -98: LDCW 0(%sr2,%r20), %r1 /* Barrier */ -99: ALTERNATIVE(98b, 99b, ALT_COND_NO_SMP, INSN_NOP) -#endif - stw %r20, 0(%sr2,%r20) + stw,ma %r20, 0(%sr2,%r20) #if ENABLE_LWS_DEBUG /* Clear thread register indicator */ stw %r0, 4(%sr2,%r20) @@ -658,11 +654,7 @@ 3: /* Error occurred on load or store */ /* Free lock */ -#ifdef CONFIG_SMP -98: LDCW 0(%sr2,%r20), %r1 /* Barrier */ -99: ALTERNATIVE(98b, 99b, ALT_COND_NO_SMP, INSN_NOP) -#endif - stw %r20, 0(%sr2,%r20) + stw,ma %r20, 0(%sr2,%r20) #if ENABLE_LWS_DEBUG stw %r0, 4(%sr2,%r20) #endif @@ -863,11 +855,7 @@ cas2_end: /* Free lock */ -#ifdef CONFIG_SMP -98: LDCW 0(%sr2,%r20), %r1 /* Barrier */ -99: ALTERNATIVE(98b, 99b, ALT_COND_NO_SMP, INSN_NOP) -#endif - stw %r20, 0(%sr2,%r20) + stw,ma %r20, 0(%sr2,%r20) /* Enable interrupts */ ssm PSW_SM_I, %r0 /* Return to userspace, set no error */ @@ -877,11 +865,7 @@ 22: /* Error occurred on load or store */ /* Free lock */ -#ifdef CONFIG_SMP -98: LDCW 0(%sr2,%r20), %r1 /* Barrier */ -99: ALTERNATIVE(98b, 99b, ALT_COND_NO_SMP, INSN_NOP) -#endif - stw %r20, 0(%sr2,%r20) + stw,ma %r20, 0(%sr2,%r20) ssm PSW_SM_I, %r0 ldo 1(%r0),%r28 b lws_exit --- linux-azure-5.8-5.8.0.orig/arch/powerpc/Kconfig +++ linux-azure-5.8-5.8.0/arch/powerpc/Kconfig @@ -135,7 +135,7 @@ select ARCH_HAS_STRICT_KERNEL_RWX if (PPC32 && !HIBERNATION) select ARCH_HAS_TICK_BROADCAST if GENERIC_CLOCKEVENTS_BROADCAST select ARCH_HAS_UACCESS_FLUSHCACHE - select ARCH_HAS_UACCESS_MCSAFE if PPC64 + select ARCH_HAS_COPY_MC if PPC64 select ARCH_HAS_UBSAN_SANITIZE_ALL select ARCH_HAVE_NMI_SAFE_CMPXCHG select ARCH_KEEP_MEMBLOCK @@ -146,6 +146,7 @@ select ARCH_USE_BUILTIN_BSWAP select ARCH_USE_CMPXCHG_LOCKREF if PPC64 select ARCH_WANT_IPC_PARSE_VERSION + select ARCH_WANT_IRQS_OFF_ACTIVATE_MM select ARCH_WEAK_RELEASE_ACQUIRE select BINFMT_ELF select BUILDTIME_TABLE_SORT @@ -739,7 +740,7 @@ config PPC_256K_PAGES bool "256k page size" - depends on 44x && !STDBINUTILS + depends on 44x && !STDBINUTILS && !PPC_47x help Make the page size 256k. @@ -973,6 +974,19 @@ read/write operations on these variables. Say Y if you have secure boot enabled and want to expose variables to userspace. +config PPC_RTAS_FILTER + bool "Enable filtering of RTAS syscalls" + default y + depends on PPC_RTAS + help + The RTAS syscall API has security issues that could be used to + compromise system integrity. This option enforces restrictions on the + RTAS calls and arguments passed by userspace programs to mitigate + these issues. + + Say Y unless you know what you are doing and the filter is causing + problems for you. + endmenu config ISA_DMA_API --- linux-azure-5.8-5.8.0.orig/arch/powerpc/Makefile +++ linux-azure-5.8-5.8.0/arch/powerpc/Makefile @@ -248,7 +248,6 @@ cpu-as-$(CONFIG_4xx) += -Wa,-m405 cpu-as-$(CONFIG_ALTIVEC) += $(call as-option,-Wa$(comma)-maltivec) -cpu-as-$(CONFIG_E200) += -Wa,-me200 cpu-as-$(CONFIG_E500) += -Wa,-me500 # When using '-many -mpower4' gas will first try and find a matching power4 @@ -283,7 +282,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-azure-5.8-5.8.0.orig/arch/powerpc/boot/Makefile +++ linux-azure-5.8-5.8.0/arch/powerpc/boot/Makefile @@ -117,7 +117,7 @@ elf_util.c $(zlib-y) devtree.c stdlib.c \ oflib.c ofconsole.c cuboot.c -src-wlib-$(CONFIG_PPC_MPC52XX) += mpc52xx-psc.c +src-wlib-$(CONFIG_PPC_MPC52xx) += mpc52xx-psc.c src-wlib-$(CONFIG_PPC64_BOOT_WRAPPER) += opal-calls.S opal.c ifndef CONFIG_PPC64_BOOT_WRAPPER src-wlib-y += crtsavres.S --- linux-azure-5.8-5.8.0.orig/arch/powerpc/boot/serial.c +++ linux-azure-5.8-5.8.0/arch/powerpc/boot/serial.c @@ -128,7 +128,7 @@ dt_is_compatible(devp, "fsl,cpm2-smc-uart")) rc = cpm_console_init(devp, &serial_cd); #endif -#ifdef CONFIG_PPC_MPC52XX +#ifdef CONFIG_PPC_MPC52xx else if (dt_is_compatible(devp, "fsl,mpc5200-psc-uart")) rc = mpc5200_psc_console_init(devp, &serial_cd); #endif --- linux-azure-5.8-5.8.0.orig/arch/powerpc/configs/pasemi_defconfig +++ linux-azure-5.8-5.8.0/arch/powerpc/configs/pasemi_defconfig @@ -109,7 +109,6 @@ CONFIG_FB_NVIDIA_I2C=y CONFIG_FB_RADEON=y # CONFIG_LCD_CLASS_DEVICE is not set -CONFIG_VGACON_SOFT_SCROLLBACK=y CONFIG_LOGO=y CONFIG_SOUND=y CONFIG_SND=y --- linux-azure-5.8-5.8.0.orig/arch/powerpc/configs/ppc6xx_defconfig +++ linux-azure-5.8-5.8.0/arch/powerpc/configs/ppc6xx_defconfig @@ -772,7 +772,6 @@ CONFIG_FB_SM501=m CONFIG_FB_IBM_GXT4500=y CONFIG_LCD_PLATFORM=m -CONFIG_VGACON_SOFT_SCROLLBACK=y CONFIG_FRAMEBUFFER_CONSOLE=y CONFIG_FRAMEBUFFER_CONSOLE_ROTATION=y CONFIG_LOGO=y --- linux-azure-5.8-5.8.0.orig/arch/powerpc/include/asm/Kbuild +++ linux-azure-5.8-5.8.0/arch/powerpc/include/asm/Kbuild @@ -4,7 +4,6 @@ generated-y += syscall_table_c32.h generated-y += syscall_table_spu.h generic-y += export.h -generic-y += local64.h generic-y += mcs_spinlock.h generic-y += vtime.h generic-y += early_ioremap.h --- linux-azure-5.8-5.8.0.orig/arch/powerpc/include/asm/bitops.h +++ linux-azure-5.8-5.8.0/arch/powerpc/include/asm/bitops.h @@ -216,15 +216,34 @@ */ static inline int fls(unsigned int x) { - return 32 - __builtin_clz(x); + int lz; + + if (__builtin_constant_p(x)) + return x ? 32 - __builtin_clz(x) : 0; + asm("cntlzw %0,%1" : "=r" (lz) : "r" (x)); + return 32 - lz; } #include +/* + * 64-bit can do this using one cntlzd (count leading zeroes doubleword) + * instruction; for 32-bit we use the generic version, which does two + * 32-bit fls calls. + */ +#ifdef CONFIG_PPC64 static inline int fls64(__u64 x) { - return 64 - __builtin_clzll(x); + int lz; + + if (__builtin_constant_p(x)) + return x ? 64 - __builtin_clzll(x) : 0; + asm("cntlzd %0,%1" : "=r" (lz) : "r" (x)); + return 64 - lz; } +#else +#include +#endif #ifdef CONFIG_PPC64 unsigned int __arch_hweight8(unsigned int w); --- linux-azure-5.8-5.8.0.orig/arch/powerpc/include/asm/book3s/32/mmu-hash.h +++ linux-azure-5.8-5.8.0/arch/powerpc/include/asm/book3s/32/mmu-hash.h @@ -94,6 +94,7 @@ } mm_context_t; void update_bats(void); +static inline void cleanup_cpu_mmu_context(void) { }; /* patch sites */ extern s32 patch__hash_page_A0, patch__hash_page_A1, patch__hash_page_A2; --- linux-azure-5.8-5.8.0.orig/arch/powerpc/include/asm/book3s/32/pgtable.h +++ linux-azure-5.8-5.8.0/arch/powerpc/include/asm/book3s/32/pgtable.h @@ -36,8 +36,10 @@ */ #ifdef CONFIG_PTE_64BIT #define PTE_RPN_MASK (~((1ULL << PTE_RPN_SHIFT) - 1)) +#define MAX_POSSIBLE_PHYSMEM_BITS 36 #else #define PTE_RPN_MASK (~((1UL << PTE_RPN_SHIFT) - 1)) +#define MAX_POSSIBLE_PHYSMEM_BITS 32 #endif /* @@ -527,9 +529,9 @@ if (pte_val(*ptep) & _PAGE_HASHPTE) flush_hash_entry(mm, ptep, addr); __asm__ __volatile__("\ - stw%U0%X0 %2,%0\n\ + stw%X0 %2,%0\n\ eieio\n\ - stw%U0%X0 %L2,%1" + stw%X1 %L2,%1" : "=m" (*ptep), "=m" (*((unsigned char *)ptep+4)) : "r" (pte) : "memory"); --- linux-azure-5.8-5.8.0.orig/arch/powerpc/include/asm/book3s/64/hash-4k.h +++ linux-azure-5.8-5.8.0/arch/powerpc/include/asm/book3s/64/hash-4k.h @@ -13,20 +13,19 @@ */ #define MAX_EA_BITS_PER_CONTEXT 46 -#define REGION_SHIFT (MAX_EA_BITS_PER_CONTEXT - 2) /* - * Our page table limit us to 64TB. Hence for the kernel mapping, - * each MAP area is limited to 16 TB. - * The four map areas are: linear mapping, vmap, IO and vmemmap + * Our page table limit us to 64TB. For 64TB physical memory, we only need 64GB + * of vmemmap space. To better support sparse memory layout, we use 61TB + * linear map range, 1TB of vmalloc, 1TB of I/O and 1TB of vmememmap. */ +#define REGION_SHIFT (40) #define H_KERN_MAP_SIZE (ASM_CONST(1) << REGION_SHIFT) /* - * Define the address range of the kernel non-linear virtual area - * 16TB + * Define the address range of the kernel non-linear virtual area (61TB) */ -#define H_KERN_VIRT_START ASM_CONST(0xc000100000000000) +#define H_KERN_VIRT_START ASM_CONST(0xc0003d0000000000) #ifndef __ASSEMBLY__ #define H_PTE_TABLE_SIZE (sizeof(pte_t) << H_PTE_INDEX_SIZE) --- linux-azure-5.8-5.8.0.orig/arch/powerpc/include/asm/book3s/64/kup-radix.h +++ linux-azure-5.8-5.8.0/arch/powerpc/include/asm/book3s/64/kup-radix.h @@ -27,6 +27,7 @@ #endif .endm +#ifdef CONFIG_PPC_KUAP .macro kuap_check_amr gpr1, gpr2 #ifdef CONFIG_PPC_KUAP_DEBUG BEGIN_MMU_FTR_SECTION_NESTED(67) @@ -38,6 +39,7 @@ END_MMU_FTR_SECTION_NESTED_IFSET(MMU_FTR_RADIX_KUAP, 67) #endif .endm +#endif .macro kuap_save_amr_and_lock gpr1, gpr2, use_cr, msr_pr_cr #ifdef CONFIG_PPC_KUAP @@ -61,6 +63,10 @@ #else /* !__ASSEMBLY__ */ +#include + +DECLARE_STATIC_KEY_FALSE(uaccess_flush_key); + #ifdef CONFIG_PPC_KUAP #include @@ -103,8 +109,16 @@ static inline unsigned long get_kuap(void) { + /* + * We return AMR_KUAP_BLOCKED when we don't support KUAP because + * prevent_user_access_return needs to return AMR_KUAP_BLOCKED to + * cause restore_user_access to do a flush. + * + * This has no effect in terms of actually blocking things on hash, + * so it doesn't break anything. + */ if (!early_mmu_has_feature(MMU_FTR_RADIX_KUAP)) - return 0; + return AMR_KUAP_BLOCKED; return mfspr(SPRN_AMR); } @@ -123,6 +137,29 @@ isync(); } +static inline bool +bad_kuap_fault(struct pt_regs *regs, unsigned long address, bool is_write) +{ + return WARN(mmu_has_feature(MMU_FTR_RADIX_KUAP) && + (regs->kuap & (is_write ? AMR_KUAP_BLOCK_WRITE : AMR_KUAP_BLOCK_READ)), + "Bug: %s fault blocked by AMR!", is_write ? "Write" : "Read"); +} +#else /* CONFIG_PPC_KUAP */ +static inline void kuap_restore_amr(struct pt_regs *regs, unsigned long amr) { } + +static inline unsigned long kuap_get_and_check_amr(void) +{ + return 0UL; +} + +static inline unsigned long get_kuap(void) +{ + return AMR_KUAP_BLOCKED; +} + +static inline void set_kuap(unsigned long value) { } +#endif /* !CONFIG_PPC_KUAP */ + static __always_inline void allow_user_access(void __user *to, const void __user *from, unsigned long size, unsigned long dir) { @@ -142,6 +179,8 @@ unsigned long size, unsigned long dir) { set_kuap(AMR_KUAP_BLOCKED); + if (static_branch_unlikely(&uaccess_flush_key)) + do_uaccess_flush(); } static inline unsigned long prevent_user_access_return(void) @@ -149,6 +188,8 @@ unsigned long flags = get_kuap(); set_kuap(AMR_KUAP_BLOCKED); + if (static_branch_unlikely(&uaccess_flush_key)) + do_uaccess_flush(); return flags; } @@ -156,30 +197,9 @@ static inline void restore_user_access(unsigned long flags) { set_kuap(flags); + if (static_branch_unlikely(&uaccess_flush_key) && flags == AMR_KUAP_BLOCKED) + do_uaccess_flush(); } - -static inline bool -bad_kuap_fault(struct pt_regs *regs, unsigned long address, bool is_write) -{ - return WARN(mmu_has_feature(MMU_FTR_RADIX_KUAP) && - (regs->kuap & (is_write ? AMR_KUAP_BLOCK_WRITE : AMR_KUAP_BLOCK_READ)), - "Bug: %s fault blocked by AMR!", is_write ? "Write" : "Read"); -} -#else /* CONFIG_PPC_KUAP */ -static inline void kuap_restore_amr(struct pt_regs *regs, unsigned long amr) -{ -} - -static inline void kuap_check_amr(void) -{ -} - -static inline unsigned long kuap_get_and_check_amr(void) -{ - return 0; -} -#endif /* CONFIG_PPC_KUAP */ - #endif /* __ASSEMBLY__ */ #endif /* _ASM_POWERPC_BOOK3S_64_KUP_RADIX_H */ --- linux-azure-5.8-5.8.0.orig/arch/powerpc/include/asm/book3s/64/mmu.h +++ linux-azure-5.8-5.8.0/arch/powerpc/include/asm/book3s/64/mmu.h @@ -228,14 +228,14 @@ extern void hash__setup_initial_memory_limit(phys_addr_t first_memblock_base, phys_addr_t first_memblock_size); -extern void radix__setup_initial_memory_limit(phys_addr_t first_memblock_base, - phys_addr_t first_memblock_size); static inline void setup_initial_memory_limit(phys_addr_t first_memblock_base, phys_addr_t first_memblock_size) { - if (early_radix_enabled()) - return radix__setup_initial_memory_limit(first_memblock_base, - first_memblock_size); + /* + * Hash has more strict restrictions. At this point we don't + * know which translations we will pick. Hence go with hash + * restrictions. + */ return hash__setup_initial_memory_limit(first_memblock_base, first_memblock_size); } --- linux-azure-5.8-5.8.0.orig/arch/powerpc/include/asm/cpm1.h +++ linux-azure-5.8-5.8.0/arch/powerpc/include/asm/cpm1.h @@ -68,6 +68,7 @@ #define PROFF_SPI ((uint)0x0180) #define PROFF_SCC3 ((uint)0x0200) #define PROFF_SMC1 ((uint)0x0280) +#define PROFF_DSP1 ((uint)0x02c0) #define PROFF_SCC4 ((uint)0x0300) #define PROFF_SMC2 ((uint)0x0380) --- linux-azure-5.8-5.8.0.orig/arch/powerpc/include/asm/cputable.h +++ linux-azure-5.8-5.8.0/arch/powerpc/include/asm/cputable.h @@ -369,7 +369,7 @@ CPU_FTR_PPC_LE | CPU_FTR_NEED_PAIRED_STWCX) #define CPU_FTRS_82XX (CPU_FTR_COMMON | CPU_FTR_MAYBE_CAN_DOZE | CPU_FTR_NOEXECUTE) #define CPU_FTRS_G2_LE (CPU_FTR_COMMON | CPU_FTR_MAYBE_CAN_DOZE | \ - CPU_FTR_MAYBE_CAN_NAP) + CPU_FTR_MAYBE_CAN_NAP | CPU_FTR_NOEXECUTE) #define CPU_FTRS_E300 (CPU_FTR_MAYBE_CAN_DOZE | \ CPU_FTR_MAYBE_CAN_NAP | \ CPU_FTR_COMMON | CPU_FTR_NOEXECUTE) @@ -409,7 +409,6 @@ CPU_FTR_DBELL | CPU_FTR_POPCNTB | CPU_FTR_POPCNTD | \ CPU_FTR_DEBUG_LVL_EXC | CPU_FTR_EMB_HV | CPU_FTR_ALTIVEC_COMP | \ CPU_FTR_CELL_TB_BUG | CPU_FTR_SMT) -#define CPU_FTRS_GENERIC_32 (CPU_FTR_COMMON | CPU_FTR_NODSISRALIGN) /* 64-bit CPUs */ #define CPU_FTRS_PPC970 (CPU_FTR_LWSYNC | \ @@ -522,8 +521,6 @@ CPU_FTRS_7447 | CPU_FTRS_7447A | CPU_FTRS_82XX | CPU_FTRS_G2_LE | CPU_FTRS_E300 | CPU_FTRS_E300C2 | CPU_FTRS_CLASSIC32 | -#else - CPU_FTRS_GENERIC_32 | #endif #ifdef CONFIG_PPC_8xx CPU_FTRS_8XX | @@ -600,8 +597,6 @@ CPU_FTRS_7447 & CPU_FTRS_7447A & CPU_FTRS_82XX & CPU_FTRS_G2_LE & CPU_FTRS_E300 & CPU_FTRS_E300C2 & CPU_FTRS_CLASSIC32 & -#else - CPU_FTRS_GENERIC_32 & #endif #ifdef CONFIG_PPC_8xx CPU_FTRS_8XX & --- linux-azure-5.8-5.8.0.orig/arch/powerpc/include/asm/cputhreads.h +++ linux-azure-5.8-5.8.0/arch/powerpc/include/asm/cputhreads.h @@ -3,6 +3,7 @@ #define _ASM_POWERPC_CPUTHREADS_H #ifndef __ASSEMBLY__ +#include #include #include --- linux-azure-5.8-5.8.0.orig/arch/powerpc/include/asm/drmem.h +++ linux-azure-5.8-5.8.0/arch/powerpc/include/asm/drmem.h @@ -8,26 +8,39 @@ #ifndef _ASM_POWERPC_LMB_H #define _ASM_POWERPC_LMB_H +#include + struct drmem_lmb { u64 base_addr; u32 drc_index; u32 aa_index; u32 flags; -#ifdef CONFIG_MEMORY_HOTPLUG - int nid; -#endif }; struct drmem_lmb_info { struct drmem_lmb *lmbs; int n_lmbs; - u32 lmb_size; + u64 lmb_size; }; extern struct drmem_lmb_info *drmem_info; +static inline struct drmem_lmb *drmem_lmb_next(struct drmem_lmb *lmb, + const struct drmem_lmb *start) +{ + /* + * DLPAR code paths can take several milliseconds per element + * when interacting with firmware. Ensure that we don't + * unfairly monopolize the CPU. + */ + if (((++lmb - start) % 16) == 0) + cond_resched(); + + return lmb; +} + #define for_each_drmem_lmb_in_range(lmb, start, end) \ - for ((lmb) = (start); (lmb) < (end); (lmb)++) + for ((lmb) = (start); (lmb) < (end); lmb = drmem_lmb_next(lmb, start)) #define for_each_drmem_lmb(lmb) \ for_each_drmem_lmb_in_range((lmb), \ @@ -67,7 +80,7 @@ #define DRCONF_MEM_RESERVED 0x00000080 #define DRCONF_MEM_HOTREMOVABLE 0x00000100 -static inline u32 drmem_lmb_size(void) +static inline u64 drmem_lmb_size(void) { return drmem_info->lmb_size; } @@ -104,22 +117,4 @@ lmb->aa_index = 0xffffffff; } -#ifdef CONFIG_MEMORY_HOTPLUG -static inline void lmb_set_nid(struct drmem_lmb *lmb) -{ - lmb->nid = memory_add_physaddr_to_nid(lmb->base_addr); -} -static inline void lmb_clear_nid(struct drmem_lmb *lmb) -{ - lmb->nid = -1; -} -#else -static inline void lmb_set_nid(struct drmem_lmb *lmb) -{ -} -static inline void lmb_clear_nid(struct drmem_lmb *lmb) -{ -} -#endif - #endif /* _ASM_POWERPC_LMB_H */ --- linux-azure-5.8-5.8.0.orig/arch/powerpc/include/asm/exception-64s.h +++ linux-azure-5.8-5.8.0/arch/powerpc/include/asm/exception-64s.h @@ -57,11 +57,18 @@ nop; \ nop +#define ENTRY_FLUSH_SLOT \ + ENTRY_FLUSH_FIXUP_SECTION; \ + nop; \ + nop; \ + nop; + /* * r10 must be free to use, r13 must be paca */ #define INTERRUPT_TO_KERNEL \ - STF_ENTRY_BARRIER_SLOT + STF_ENTRY_BARRIER_SLOT; \ + ENTRY_FLUSH_SLOT /* * Macros for annotating the expected destination of (h)rfid @@ -123,6 +130,9 @@ hrfid; \ b hrfi_flush_fallback +#else /* __ASSEMBLY__ */ +/* Prototype for function defined in exceptions-64s.S */ +void do_uaccess_flush(void); #endif /* __ASSEMBLY__ */ #endif /* _ASM_POWERPC_EXCEPTION_H */ --- linux-azure-5.8-5.8.0.orig/arch/powerpc/include/asm/feature-fixups.h +++ linux-azure-5.8-5.8.0/arch/powerpc/include/asm/feature-fixups.h @@ -205,6 +205,22 @@ FTR_ENTRY_OFFSET 955b-956b; \ .popsection; +#define UACCESS_FLUSH_FIXUP_SECTION \ +959: \ + .pushsection __uaccess_flush_fixup,"a"; \ + .align 2; \ +960: \ + FTR_ENTRY_OFFSET 959b-960b; \ + .popsection; + +#define ENTRY_FLUSH_FIXUP_SECTION \ +957: \ + .pushsection __entry_flush_fixup,"a"; \ + .align 2; \ +958: \ + FTR_ENTRY_OFFSET 957b-958b; \ + .popsection; + #define RFI_FLUSH_FIXUP_SECTION \ 951: \ .pushsection __rfi_flush_fixup,"a"; \ @@ -237,8 +253,11 @@ #include extern long stf_barrier_fallback; +extern long entry_flush_fallback; extern long __start___stf_entry_barrier_fixup, __stop___stf_entry_barrier_fixup; extern long __start___stf_exit_barrier_fixup, __stop___stf_exit_barrier_fixup; +extern long __start___uaccess_flush_fixup, __stop___uaccess_flush_fixup; +extern long __start___entry_flush_fixup, __stop___entry_flush_fixup; extern long __start___rfi_flush_fixup, __stop___rfi_flush_fixup; extern long __start___barrier_nospec_fixup, __stop___barrier_nospec_fixup; extern long __start__btb_flush_fixup, __stop__btb_flush_fixup; --- linux-azure-5.8-5.8.0.orig/arch/powerpc/include/asm/fixmap.h +++ linux-azure-5.8-5.8.0/arch/powerpc/include/asm/fixmap.h @@ -52,7 +52,7 @@ FIX_HOLE, /* reserve the top 128K for early debugging purposes */ FIX_EARLY_DEBUG_TOP = FIX_HOLE, - FIX_EARLY_DEBUG_BASE = FIX_EARLY_DEBUG_TOP+((128*1024)/PAGE_SIZE)-1, + FIX_EARLY_DEBUG_BASE = FIX_EARLY_DEBUG_TOP+(ALIGN(SZ_128K, PAGE_SIZE)/PAGE_SIZE)-1, #ifdef CONFIG_HIGHMEM FIX_KMAP_BEGIN, /* reserved pte's for temporary kernel mappings */ FIX_KMAP_END = FIX_KMAP_BEGIN+(KM_TYPE_NR*NR_CPUS)-1, --- linux-azure-5.8-5.8.0.orig/arch/powerpc/include/asm/hw_breakpoint.h +++ linux-azure-5.8-5.8.0/arch/powerpc/include/asm/hw_breakpoint.h @@ -40,6 +40,7 @@ #else #define HW_BREAKPOINT_SIZE 0x8 #endif +#define HW_BREAKPOINT_SIZE_QUADWORD 0x10 #define DABR_MAX_LEN 8 #define DAWR_MAX_LEN 512 --- linux-azure-5.8-5.8.0.orig/arch/powerpc/include/asm/kasan.h +++ linux-azure-5.8-5.8.0/arch/powerpc/include/asm/kasan.h @@ -27,10 +27,12 @@ #ifdef CONFIG_KASAN void kasan_early_init(void); +void kasan_mmu_init(void); void kasan_init(void); void kasan_late_init(void); #else static inline void kasan_init(void) { } +static inline void kasan_mmu_init(void) { } static inline void kasan_late_init(void) { } #endif --- linux-azure-5.8-5.8.0.orig/arch/powerpc/include/asm/kup.h +++ linux-azure-5.8-5.8.0/arch/powerpc/include/asm/kup.h @@ -14,7 +14,7 @@ #define KUAP_CURRENT_WRITE 8 #define KUAP_CURRENT (KUAP_CURRENT_READ | KUAP_CURRENT_WRITE) -#ifdef CONFIG_PPC64 +#ifdef CONFIG_PPC_BOOK3S_64 #include #endif #ifdef CONFIG_PPC_8xx @@ -35,6 +35,9 @@ .macro kuap_check current, gpr .endm +.macro kuap_check_amr gpr1, gpr2 +.endm + #endif #else /* !__ASSEMBLY__ */ @@ -53,17 +56,28 @@ void setup_kuap(bool disabled); #else static inline void setup_kuap(bool disabled) { } + +static inline bool +bad_kuap_fault(struct pt_regs *regs, unsigned long address, bool is_write) +{ + return false; +} + +static inline void kuap_check_amr(void) { } + +/* + * book3s/64/kup-radix.h defines these functions for the !KUAP case to flush + * the L1D cache after user accesses. Only include the empty stubs for other + * platforms. + */ +#ifndef CONFIG_PPC_BOOK3S_64 static inline void allow_user_access(void __user *to, const void __user *from, unsigned long size, unsigned long dir) { } static inline void prevent_user_access(void __user *to, const void __user *from, unsigned long size, unsigned long dir) { } static inline unsigned long prevent_user_access_return(void) { return 0UL; } static inline void restore_user_access(unsigned long flags) { } -static inline bool -bad_kuap_fault(struct pt_regs *regs, unsigned long address, bool is_write) -{ - return false; -} +#endif /* CONFIG_PPC_BOOK3S_64 */ #endif /* CONFIG_PPC_KUAP */ static inline void allow_read_from_user(const void __user *from, unsigned long size) --- linux-azure-5.8-5.8.0.orig/arch/powerpc/include/asm/kvm_host.h +++ linux-azure-5.8-5.8.0/arch/powerpc/include/asm/kvm_host.h @@ -58,7 +58,8 @@ #define KVM_ARCH_WANT_MMU_NOTIFIER extern int kvm_unmap_hva_range(struct kvm *kvm, - unsigned long start, unsigned long end); + unsigned long start, unsigned long end, + unsigned flags); extern int kvm_age_hva(struct kvm *kvm, unsigned long start, unsigned long end); extern int kvm_test_age_hva(struct kvm *kvm, unsigned long hva); extern int kvm_set_spte_hva(struct kvm *kvm, unsigned long hva, pte_t pte); --- linux-azure-5.8-5.8.0.orig/arch/powerpc/include/asm/mmu_context.h +++ linux-azure-5.8-5.8.0/arch/powerpc/include/asm/mmu_context.h @@ -246,7 +246,7 @@ */ static inline void activate_mm(struct mm_struct *prev, struct mm_struct *next) { - switch_mm(prev, next, current); + switch_mm_irqs_off(prev, next, current); } /* We don't currently use enter_lazy_tlb() for anything */ --- linux-azure-5.8-5.8.0.orig/arch/powerpc/include/asm/nohash/32/pgtable.h +++ linux-azure-5.8-5.8.0/arch/powerpc/include/asm/nohash/32/pgtable.h @@ -153,8 +153,10 @@ */ #if defined(CONFIG_PPC32) && defined(CONFIG_PTE_64BIT) #define PTE_RPN_MASK (~((1ULL << PTE_RPN_SHIFT) - 1)) +#define MAX_POSSIBLE_PHYSMEM_BITS 36 #else #define PTE_RPN_MASK (~((1UL << PTE_RPN_SHIFT) - 1)) +#define MAX_POSSIBLE_PHYSMEM_BITS 32 #endif /* --- linux-azure-5.8-5.8.0.orig/arch/powerpc/include/asm/nohash/pgtable.h +++ linux-azure-5.8-5.8.0/arch/powerpc/include/asm/nohash/pgtable.h @@ -197,9 +197,9 @@ */ if (IS_ENABLED(CONFIG_PPC32) && IS_ENABLED(CONFIG_PTE_64BIT) && !percpu) { __asm__ __volatile__("\ - stw%U0%X0 %2,%0\n\ + stw%X0 %2,%0\n\ eieio\n\ - stw%U0%X0 %L2,%1" + stw%X1 %L2,%1" : "=m" (*ptep), "=m" (*((unsigned char *)ptep+4)) : "r" (pte) : "memory"); return; --- linux-azure-5.8-5.8.0.orig/arch/powerpc/include/asm/percpu.h +++ linux-azure-5.8-5.8.0/arch/powerpc/include/asm/percpu.h @@ -10,8 +10,6 @@ #ifdef CONFIG_SMP -#include - #define __my_cpu_offset local_paca->data_offset #endif /* CONFIG_SMP */ @@ -19,4 +17,6 @@ #include +#include + #endif /* _ASM_POWERPC_PERCPU_H_ */ --- linux-azure-5.8-5.8.0.orig/arch/powerpc/include/asm/perf_event.h +++ linux-azure-5.8-5.8.0/arch/powerpc/include/asm/perf_event.h @@ -12,6 +12,8 @@ #ifdef CONFIG_PPC_PERF_CTRS #include +#else +static inline bool is_sier_available(void) { return false; } #endif #ifdef CONFIG_FSL_EMB_PERF_EVENT --- linux-azure-5.8-5.8.0.orig/arch/powerpc/include/asm/ptrace.h +++ linux-azure-5.8-5.8.0/arch/powerpc/include/asm/ptrace.h @@ -238,7 +238,7 @@ } #define arch_has_single_step() (1) -#ifndef CONFIG_BOOK3S_601 +#ifndef CONFIG_PPC_BOOK3S_601 #define arch_has_block_step() (true) #else #define arch_has_block_step() (false) --- linux-azure-5.8-5.8.0.orig/arch/powerpc/include/asm/reg.h +++ linux-azure-5.8-5.8.0/arch/powerpc/include/asm/reg.h @@ -815,7 +815,7 @@ #define THRM1_TIN (1 << 31) #define THRM1_TIV (1 << 30) #define THRM1_THRES(x) ((x&0x7f)<<23) -#define THRM3_SITV(x) ((x&0x3fff)<<1) +#define THRM3_SITV(x) ((x & 0x1fff) << 1) #define THRM1_TID (1<<2) #define THRM1_TIE (1<<1) #define THRM1_V (1<<0) --- linux-azure-5.8-5.8.0.orig/arch/powerpc/include/asm/rtas.h +++ linux-azure-5.8-5.8.0/arch/powerpc/include/asm/rtas.h @@ -253,8 +253,6 @@ extern void rtas_progress(char *s, unsigned short hex); extern int rtas_suspend_cpu(struct rtas_suspend_me_data *data); extern int rtas_suspend_last_cpu(struct rtas_suspend_me_data *data); -extern int rtas_online_cpus_mask(cpumask_var_t cpus); -extern int rtas_offline_cpus_mask(cpumask_var_t cpus); extern int rtas_ibm_suspend_me(u64 handle); struct rtc_time; --- linux-azure-5.8-5.8.0.orig/arch/powerpc/include/asm/security_features.h +++ linux-azure-5.8-5.8.0/arch/powerpc/include/asm/security_features.h @@ -84,12 +84,19 @@ // Software required to flush link stack on context switch #define SEC_FTR_FLUSH_LINK_STACK 0x0000000000001000ull +// The L1-D cache should be flushed when entering the kernel +#define SEC_FTR_L1D_FLUSH_ENTRY 0x0000000000004000ull + +// The L1-D cache should be flushed after user accesses from the kernel +#define SEC_FTR_L1D_FLUSH_UACCESS 0x0000000000008000ull // Features enabled by default #define SEC_FTR_DEFAULT \ (SEC_FTR_L1D_FLUSH_HV | \ SEC_FTR_L1D_FLUSH_PR | \ SEC_FTR_BNDS_CHK_SPEC_BAR | \ + SEC_FTR_L1D_FLUSH_ENTRY | \ + SEC_FTR_L1D_FLUSH_UACCESS | \ SEC_FTR_FAVOUR_SECURITY) #endif /* _ASM_POWERPC_SECURITY_FEATURES_H */ --- linux-azure-5.8-5.8.0.orig/arch/powerpc/include/asm/setup.h +++ linux-azure-5.8-5.8.0/arch/powerpc/include/asm/setup.h @@ -52,12 +52,16 @@ }; void setup_rfi_flush(enum l1d_flush_type, bool enable); +void setup_entry_flush(bool enable); +void setup_uaccess_flush(bool enable); void do_rfi_flush_fixups(enum l1d_flush_type types); #ifdef CONFIG_PPC_BARRIER_NOSPEC void setup_barrier_nospec(void); #else static inline void setup_barrier_nospec(void) { }; #endif +void do_uaccess_flush_fixups(enum l1d_flush_type types); +void do_entry_flush_fixups(enum l1d_flush_type types); void do_barrier_nospec_fixups(bool enable); extern bool barrier_nospec_enabled; --- linux-azure-5.8-5.8.0.orig/arch/powerpc/include/asm/string.h +++ linux-azure-5.8-5.8.0/arch/powerpc/include/asm/string.h @@ -53,9 +53,7 @@ #ifndef CONFIG_KASAN #define __HAVE_ARCH_MEMSET32 #define __HAVE_ARCH_MEMSET64 -#define __HAVE_ARCH_MEMCPY_MCSAFE -extern int memcpy_mcsafe(void *dst, const void *src, __kernel_size_t sz); extern void *__memset16(uint16_t *, uint16_t v, __kernel_size_t); extern void *__memset32(uint32_t *, uint32_t v, __kernel_size_t); extern void *__memset64(uint64_t *, uint64_t v, __kernel_size_t); --- linux-azure-5.8-5.8.0.orig/arch/powerpc/include/asm/svm.h +++ linux-azure-5.8-5.8.0/arch/powerpc/include/asm/svm.h @@ -15,6 +15,8 @@ return mfmsr() & MSR_S; } +void __init svm_swiotlb_init(void); + void dtl_cache_ctor(void *addr); #define get_dtl_cache_ctor() (is_secure_guest() ? dtl_cache_ctor : NULL) @@ -25,6 +27,8 @@ return false; } +static inline void svm_swiotlb_init(void) {} + #define get_dtl_cache_ctor() NULL #endif /* CONFIG_PPC_SVM */ --- linux-azure-5.8-5.8.0.orig/arch/powerpc/include/asm/timex.h +++ linux-azure-5.8-5.8.0/arch/powerpc/include/asm/timex.h @@ -17,7 +17,7 @@ static inline cycles_t get_cycles(void) { - if (IS_ENABLED(CONFIG_BOOK3S_601)) + if (IS_ENABLED(CONFIG_PPC_BOOK3S_601)) return 0; return mftb(); --- linux-azure-5.8-5.8.0.orig/arch/powerpc/include/asm/tlb.h +++ linux-azure-5.8-5.8.0/arch/powerpc/include/asm/tlb.h @@ -67,19 +67,6 @@ return false; return cpumask_test_cpu(smp_processor_id(), mm_cpumask(mm)); } -static inline void mm_reset_thread_local(struct mm_struct *mm) -{ - WARN_ON(atomic_read(&mm->context.copros) > 0); - /* - * It's possible for mm_access to take a reference on mm_users to - * access the remote mm from another thread, but it's not allowed - * to set mm_cpumask, so mm_users may be > 1 here. - */ - WARN_ON(current->mm != mm); - atomic_set(&mm->context.active_cpus, 1); - cpumask_clear(mm_cpumask(mm)); - cpumask_set_cpu(smp_processor_id(), mm_cpumask(mm)); -} #else /* CONFIG_PPC_BOOK3S_64 */ static inline int mm_is_thread_local(struct mm_struct *mm) { --- linux-azure-5.8-5.8.0.orig/arch/powerpc/include/asm/uaccess.h +++ linux-azure-5.8-5.8.0/arch/powerpc/include/asm/uaccess.h @@ -289,8 +289,6 @@ #define __put_user_nocheck_goto(x, ptr, size, label) \ do { \ __typeof__(*(ptr)) __user *__pu_addr = (ptr); \ - if (!is_kernel_addr((unsigned long)__pu_addr)) \ - might_fault(); \ __chk_user_ptr(ptr); \ __put_user_size_goto((x), __pu_addr, (size), label); \ } while (0) @@ -386,7 +384,7 @@ __typeof__(size) __gu_size = (size); \ \ __chk_user_ptr(__gu_addr); \ - if (!is_kernel_addr((unsigned long)__gu_addr)) \ + if (do_allow && !is_kernel_addr((unsigned long)__gu_addr)) \ might_fault(); \ barrier_nospec(); \ if (do_allow) \ @@ -436,6 +434,32 @@ extern unsigned long __copy_tofrom_user(void __user *to, const void __user *from, unsigned long size); +#ifdef CONFIG_ARCH_HAS_COPY_MC +unsigned long __must_check +copy_mc_generic(void *to, const void *from, unsigned long size); + +static inline unsigned long __must_check +copy_mc_to_kernel(void *to, const void *from, unsigned long size) +{ + return copy_mc_generic(to, from, size); +} +#define copy_mc_to_kernel copy_mc_to_kernel + +static inline unsigned long __must_check +copy_mc_to_user(void __user *to, const void *from, unsigned long n) +{ + if (likely(check_copy_size(from, n, true))) { + if (access_ok(to, n)) { + allow_write_to_user(to, n); + n = copy_mc_generic((void *)to, from, n); + prevent_write_to_user(to, n); + } + } + + return n; +} +#endif + #ifdef __powerpc64__ static inline unsigned long raw_copy_in_user(void __user *to, const void __user *from, unsigned long n) @@ -524,20 +548,6 @@ return ret; } -static __always_inline unsigned long __must_check -copy_to_user_mcsafe(void __user *to, const void *from, unsigned long n) -{ - if (likely(check_copy_size(from, n, true))) { - if (access_ok(to, n)) { - allow_write_to_user(to, n); - n = memcpy_mcsafe((void *)to, from, n); - prevent_write_to_user(to, n); - } - } - - return n; -} - unsigned long __arch_clear_user(void __user *addr, unsigned long size); static inline unsigned long clear_user(void __user *addr, unsigned long size) @@ -569,6 +579,9 @@ { if (unlikely(!access_ok(ptr, len))) return false; + + might_fault(); + allow_read_write_user((void __user *)ptr, ptr, len); return true; } @@ -582,6 +595,9 @@ { if (unlikely(!access_ok(ptr, len))) return false; + + might_fault(); + allow_read_from_user(ptr, len); return true; } @@ -593,6 +609,9 @@ { if (unlikely(!access_ok(ptr, len))) return false; + + might_fault(); + allow_write_to_user((void __user *)ptr, len); return true; } --- linux-azure-5.8-5.8.0.orig/arch/powerpc/kernel/Makefile +++ linux-azure-5.8-5.8.0/arch/powerpc/kernel/Makefile @@ -172,6 +172,9 @@ KCOV_INSTRUMENT_setup_64.o := n KCOV_INSTRUMENT_paca.o := n +CFLAGS_setup_64.o += -fno-stack-protector +CFLAGS_paca.o += -fno-stack-protector + extra-$(CONFIG_PPC_FPU) += fpu.o extra-$(CONFIG_ALTIVEC) += vector.o extra-$(CONFIG_PPC64) += entry_64.o --- linux-azure-5.8-5.8.0.orig/arch/powerpc/kernel/dma-iommu.c +++ linux-azure-5.8-5.8.0/arch/powerpc/kernel/dma-iommu.c @@ -160,7 +160,8 @@ return bypass_mask; } - mask = 1ULL < (fls_long(tbl->it_offset + tbl->it_size) - 1); + mask = 1ULL << (fls_long(tbl->it_offset + tbl->it_size) + + tbl->it_page_shift - 1); mask += mask - 1; return mask; --- linux-azure-5.8-5.8.0.orig/arch/powerpc/kernel/eeh_cache.c +++ linux-azure-5.8-5.8.0/arch/powerpc/kernel/eeh_cache.c @@ -264,8 +264,9 @@ { struct pci_io_addr_range *piar; struct rb_node *n; + unsigned long flags; - spin_lock(&pci_io_addr_cache_root.piar_lock); + spin_lock_irqsave(&pci_io_addr_cache_root.piar_lock, flags); for (n = rb_first(&pci_io_addr_cache_root.rb_root); n; n = rb_next(n)) { piar = rb_entry(n, struct pci_io_addr_range, rb_node); @@ -273,7 +274,7 @@ (piar->flags & IORESOURCE_IO) ? "i/o" : "mem", &piar->addr_lo, &piar->addr_hi, pci_name(piar->pcidev)); } - spin_unlock(&pci_io_addr_cache_root.piar_lock); + spin_unlock_irqrestore(&pci_io_addr_cache_root.piar_lock, flags); return 0; } --- linux-azure-5.8-5.8.0.orig/arch/powerpc/kernel/entry_32.S +++ linux-azure-5.8-5.8.0/arch/powerpc/kernel/entry_32.S @@ -344,6 +344,9 @@ .globl transfer_to_syscall transfer_to_syscall: +#ifdef CONFIG_PPC_BOOK3S_32 + kuep_lock r11, r12 +#endif #ifdef CONFIG_TRACE_IRQFLAGS andi. r12,r9,MSR_EE beq- trace_syscall_entry_irq_off --- linux-azure-5.8-5.8.0.orig/arch/powerpc/kernel/exceptions-64s.S +++ linux-azure-5.8-5.8.0/arch/powerpc/kernel/exceptions-64s.S @@ -910,8 +910,6 @@ * Vectors for the FWNMI option. Share common code. */ TRAMP_REAL_BEGIN(system_reset_fwnmi) - /* XXX: fwnmi guest could run a nested/PR guest, so why no test? */ - __IKVM_REAL(system_reset)=0 GEN_INT_ENTRY system_reset, virt=0 #endif /* CONFIG_PPC_PSERIES */ @@ -1322,6 +1320,11 @@ * If none is found, do a Linux page fault. Linux page faults can happen in * kernel mode due to user copy operations of course. * + * KVM: The KVM HDSI handler may perform a load with MSR[DR]=1 in guest + * MMU context, which may cause a DSI in the host, which must go to the + * KVM handler. MSR[IR] is not enabled, so the real-mode handler will + * always be used regardless of AIL setting. + * * - Radix MMU * The hardware loads from the Linux page table directly, so a fault goes * immediately to Linux page fault. @@ -1332,10 +1335,8 @@ IVEC=0x300 IDAR=1 IDSISR=1 -#ifdef CONFIG_KVM_BOOK3S_PR_POSSIBLE IKVM_SKIP=1 IKVM_REAL=1 -#endif INT_DEFINE_END(data_access) EXC_REAL_BEGIN(data_access, 0x300, 0x80) @@ -1374,6 +1375,8 @@ * ppc64_bolted_size (first segment). The kernel handler must avoid stomping * on user-handler data structures. * + * KVM: Same as 0x300, DSLB must test for KVM guest. + * * A dedicated save area EXSLB is used (XXX: but it actually need not be * these days, we could use EXGEN). */ @@ -1382,10 +1385,8 @@ IAREA=PACA_EXSLB IRECONCILE=0 IDAR=1 -#ifdef CONFIG_KVM_BOOK3S_PR_POSSIBLE IKVM_SKIP=1 IKVM_REAL=1 -#endif INT_DEFINE_END(data_access_slb) EXC_REAL_BEGIN(data_access_slb, 0x380, 0x80) @@ -2860,15 +2861,8 @@ .endr blr -TRAMP_REAL_BEGIN(rfi_flush_fallback) - SET_SCRATCH0(r13); - GET_PACA(r13); - std r1,PACA_EXRFI+EX_R12(r13) - ld r1,PACAKSAVE(r13) - std r9,PACA_EXRFI+EX_R9(r13) - std r10,PACA_EXRFI+EX_R10(r13) - std r11,PACA_EXRFI+EX_R11(r13) - mfctr r9 +/* Clobbers r10, r11, ctr */ +.macro L1D_DISPLACEMENT_FLUSH ld r10,PACA_RFI_FLUSH_FALLBACK_AREA(r13) ld r11,PACA_L1D_FLUSH_SIZE(r13) srdi r11,r11,(7 + 3) /* 128 byte lines, unrolled 8x */ @@ -2879,7 +2873,7 @@ sync /* - * The load adresses are at staggered offsets within cachelines, + * The load addresses are at staggered offsets within cachelines, * which suits some pipelines better (on others it should not * hurt). */ @@ -2894,7 +2888,30 @@ ld r11,(0x80 + 8)*7(r10) addi r10,r10,0x80*8 bdnz 1b +.endm +TRAMP_REAL_BEGIN(entry_flush_fallback) + std r9,PACA_EXRFI+EX_R9(r13) + std r10,PACA_EXRFI+EX_R10(r13) + std r11,PACA_EXRFI+EX_R11(r13) + mfctr r9 + L1D_DISPLACEMENT_FLUSH + mtctr r9 + ld r9,PACA_EXRFI+EX_R9(r13) + ld r10,PACA_EXRFI+EX_R10(r13) + ld r11,PACA_EXRFI+EX_R11(r13) + blr + +TRAMP_REAL_BEGIN(rfi_flush_fallback) + SET_SCRATCH0(r13); + GET_PACA(r13); + std r1,PACA_EXRFI+EX_R12(r13) + ld r1,PACAKSAVE(r13) + std r9,PACA_EXRFI+EX_R9(r13) + std r10,PACA_EXRFI+EX_R10(r13) + std r11,PACA_EXRFI+EX_R11(r13) + mfctr r9 + L1D_DISPLACEMENT_FLUSH mtctr r9 ld r9,PACA_EXRFI+EX_R9(r13) ld r10,PACA_EXRFI+EX_R10(r13) @@ -2912,32 +2929,7 @@ std r10,PACA_EXRFI+EX_R10(r13) std r11,PACA_EXRFI+EX_R11(r13) mfctr r9 - ld r10,PACA_RFI_FLUSH_FALLBACK_AREA(r13) - ld r11,PACA_L1D_FLUSH_SIZE(r13) - srdi r11,r11,(7 + 3) /* 128 byte lines, unrolled 8x */ - mtctr r11 - DCBT_BOOK3S_STOP_ALL_STREAM_IDS(r11) /* Stop prefetch streams */ - - /* order ld/st prior to dcbt stop all streams with flushing */ - sync - - /* - * The load adresses are at staggered offsets within cachelines, - * which suits some pipelines better (on others it should not - * hurt). - */ -1: - ld r11,(0x80 + 8)*0(r10) - ld r11,(0x80 + 8)*1(r10) - ld r11,(0x80 + 8)*2(r10) - ld r11,(0x80 + 8)*3(r10) - ld r11,(0x80 + 8)*4(r10) - ld r11,(0x80 + 8)*5(r10) - ld r11,(0x80 + 8)*6(r10) - ld r11,(0x80 + 8)*7(r10) - addi r10,r10,0x80*8 - bdnz 1b - + L1D_DISPLACEMENT_FLUSH mtctr r9 ld r9,PACA_EXRFI+EX_R9(r13) ld r10,PACA_EXRFI+EX_R10(r13) @@ -2947,8 +2939,21 @@ hrfid USE_TEXT_SECTION() - MASKED_INTERRUPT - MASKED_INTERRUPT hsrr=1 + +_GLOBAL(do_uaccess_flush) + UACCESS_FLUSH_FIXUP_SECTION + nop + nop + nop + blr + L1D_DISPLACEMENT_FLUSH + blr +_ASM_NOKPROBE_SYMBOL(do_uaccess_flush) +EXPORT_SYMBOL(do_uaccess_flush) + + +MASKED_INTERRUPT +MASKED_INTERRUPT hsrr=1 #ifdef CONFIG_KVM_BOOK3S_64_HANDLER kvmppc_skip_interrupt: --- linux-azure-5.8-5.8.0.orig/arch/powerpc/kernel/head_32.S +++ linux-azure-5.8-5.8.0/arch/powerpc/kernel/head_32.S @@ -274,14 +274,8 @@ DO_KVM 0x200 MachineCheck: EXCEPTION_PROLOG_0 -#ifdef CONFIG_VMAP_STACK - li r11, MSR_KERNEL & ~(MSR_IR | MSR_RI) /* can take DTLB miss */ - mtmsr r11 - isync -#endif #ifdef CONFIG_PPC_CHRP mfspr r11, SPRN_SPRG_THREAD - tovirt_vmstack r11, r11 lwz r11, RTAS_SP(r11) cmpwi cr1, r11, 0 bne cr1, 7f @@ -478,11 +472,7 @@ cmplw 0,r1,r3 #endif mfspr r2, SPRN_SPRG_PGDIR -#ifdef CONFIG_SWAP li r1,_PAGE_PRESENT | _PAGE_ACCESSED | _PAGE_EXEC -#else - li r1,_PAGE_PRESENT | _PAGE_EXEC -#endif #if defined(CONFIG_MODULES) || defined(CONFIG_DEBUG_PAGEALLOC) bge- 112f lis r2, (swapper_pg_dir - PAGE_OFFSET)@ha /* if kernel address, use */ @@ -544,11 +534,7 @@ lis r1,PAGE_OFFSET@h /* check if kernel address */ cmplw 0,r1,r3 mfspr r2, SPRN_SPRG_PGDIR -#ifdef CONFIG_SWAP li r1, _PAGE_PRESENT | _PAGE_ACCESSED -#else - li r1, _PAGE_PRESENT -#endif bge- 112f lis r2, (swapper_pg_dir - PAGE_OFFSET)@ha /* if kernel address, use */ addi r2, r2, (swapper_pg_dir - PAGE_OFFSET)@l /* kernel page table */ @@ -624,11 +610,7 @@ lis r1,PAGE_OFFSET@h /* check if kernel address */ cmplw 0,r1,r3 mfspr r2, SPRN_SPRG_PGDIR -#ifdef CONFIG_SWAP li r1, _PAGE_RW | _PAGE_DIRTY | _PAGE_PRESENT | _PAGE_ACCESSED -#else - li r1, _PAGE_RW | _PAGE_DIRTY | _PAGE_PRESENT -#endif bge- 112f lis r2, (swapper_pg_dir - PAGE_OFFSET)@ha /* if kernel address, use */ addi r2, r2, (swapper_pg_dir - PAGE_OFFSET)@l /* kernel page table */ @@ -998,7 +980,7 @@ END_MMU_FTR_SECTION_IFSET(MMU_FTR_USE_HIGH_BATS) blr -load_segment_registers: +_GLOBAL(load_segment_registers) li r0, NUM_USER_SEGMENTS /* load up user segment register values */ mtctr r0 /* for context 0 */ li r3, 0 /* Kp = 0, Ks = 0, VSID = 0 */ --- linux-azure-5.8-5.8.0.orig/arch/powerpc/kernel/head_32.h +++ linux-azure-5.8-5.8.0/arch/powerpc/kernel/head_32.h @@ -40,48 +40,52 @@ .macro EXCEPTION_PROLOG_1 for_rtas=0 #ifdef CONFIG_VMAP_STACK - .ifeq \for_rtas - li r11, MSR_KERNEL & ~(MSR_IR | MSR_RI) /* can take DTLB miss */ - mtmsr r11 - isync - .endif - subi r11, r1, INT_FRAME_SIZE /* use r1 if kernel */ + mr r11, r1 + subi r1, r1, INT_FRAME_SIZE /* use r1 if kernel */ + beq 1f + mfspr r1,SPRN_SPRG_THREAD + lwz r1,TASK_STACK-THREAD(r1) + addi r1, r1, THREAD_SIZE - INT_FRAME_SIZE #else - tophys(r11,r1) /* use tophys(r1) if kernel */ - subi r11, r11, INT_FRAME_SIZE /* alloc exc. frame */ -#endif + subi r11, r1, INT_FRAME_SIZE /* use r1 if kernel */ beq 1f mfspr r11,SPRN_SPRG_THREAD - tovirt_vmstack r11, r11 lwz r11,TASK_STACK-THREAD(r11) addi r11, r11, THREAD_SIZE - INT_FRAME_SIZE - tophys_novmstack r11, r11 +#endif 1: + tophys_novmstack r11, r11 #ifdef CONFIG_VMAP_STACK - mtcrf 0x7f, r11 + mtcrf 0x7f, r1 bt 32 - THREAD_ALIGN_SHIFT, stack_overflow #endif .endm .macro EXCEPTION_PROLOG_2 handle_dar_dsisr=0 -#if defined(CONFIG_VMAP_STACK) && defined(CONFIG_PPC_BOOK3S) -BEGIN_MMU_FTR_SECTION +#ifdef CONFIG_VMAP_STACK mtcr r10 -FTR_SECTION_ELSE - stw r10, _CCR(r11) -ALT_MMU_FTR_SECTION_END_IFSET(MMU_FTR_HPTE_TABLE) + li r10, MSR_KERNEL & ~(MSR_IR | MSR_RI) /* can take DTLB miss */ + mtmsr r10 + isync #else stw r10,_CCR(r11) /* save registers */ #endif mfspr r10, SPRN_SPRG_SCRATCH0 +#ifdef CONFIG_VMAP_STACK + stw r11,GPR1(r1) + stw r11,0(r1) + mr r11, r1 +#else + stw r1,GPR1(r11) + stw r1,0(r11) + tovirt(r1, r11) /* set new kernel sp */ +#endif stw r12,GPR12(r11) stw r9,GPR9(r11) stw r10,GPR10(r11) -#if defined(CONFIG_VMAP_STACK) && defined(CONFIG_PPC_BOOK3S) -BEGIN_MMU_FTR_SECTION +#ifdef CONFIG_VMAP_STACK mfcr r10 stw r10, _CCR(r11) -END_MMU_FTR_SECTION_IFSET(MMU_FTR_HPTE_TABLE) #endif mfspr r12,SPRN_SPRG_SCRATCH1 stw r12,GPR11(r11) @@ -97,19 +101,12 @@ stw r10, _DSISR(r11) .endif lwz r9, SRR1(r12) -#if defined(CONFIG_VMAP_STACK) && defined(CONFIG_PPC_BOOK3S) -BEGIN_MMU_FTR_SECTION andi. r10, r9, MSR_PR -END_MMU_FTR_SECTION_IFSET(MMU_FTR_HPTE_TABLE) -#endif lwz r12, SRR0(r12) #else mfspr r12,SPRN_SRR0 mfspr r9,SPRN_SRR1 #endif - stw r1,GPR1(r11) - stw r1,0(r11) - tovirt_novmstack r1, r11 /* set new kernel sp */ #ifdef CONFIG_40x rlwinm r9,r9,0,14,12 /* clear MSR_WE (necessary?) */ #else @@ -134,18 +131,28 @@ #ifdef CONFIG_VMAP_STACK mfspr r11, SPRN_SRR0 mtctr r11 -#endif andi. r11, r9, MSR_PR - lwz r11,TASK_STACK-THREAD(r12) + mr r11, r1 + lwz r1,TASK_STACK-THREAD(r12) beq- 99f - addi r11, r11, THREAD_SIZE - INT_FRAME_SIZE -#ifdef CONFIG_VMAP_STACK + addi r1, r1, THREAD_SIZE - INT_FRAME_SIZE li r10, MSR_KERNEL & ~(MSR_IR | MSR_RI) /* can take DTLB miss */ mtmsr r10 isync + tovirt(r12, r12) + stw r11,GPR1(r1) + stw r11,0(r1) + mr r11, r1 +#else + andi. r11, r9, MSR_PR + lwz r11,TASK_STACK-THREAD(r12) + beq- 99f + addi r11, r11, THREAD_SIZE - INT_FRAME_SIZE + tophys(r11, r11) + stw r1,GPR1(r11) + stw r1,0(r11) + tovirt(r1, r11) /* set new kernel sp */ #endif - tovirt_vmstack r12, r12 - tophys_novmstack r11, r11 mflr r10 stw r10, _LINK(r11) #ifdef CONFIG_VMAP_STACK @@ -153,9 +160,6 @@ #else mfspr r10,SPRN_SRR0 #endif - stw r1,GPR1(r11) - stw r1,0(r11) - tovirt_novmstack r1, r11 /* set new kernel sp */ stw r10,_NIP(r11) mfcr r10 rlwinm r10,r10,0,4,2 /* Clear SO bit in CR */ @@ -327,20 +331,19 @@ .macro vmap_stack_overflow_exception #ifdef CONFIG_VMAP_STACK #ifdef CONFIG_SMP - mfspr r11, SPRN_SPRG_THREAD - tovirt(r11, r11) - lwz r11, TASK_CPU - THREAD(r11) - slwi r11, r11, 3 - addis r11, r11, emergency_ctx@ha + mfspr r1, SPRN_SPRG_THREAD + lwz r1, TASK_CPU - THREAD(r1) + slwi r1, r1, 3 + addis r1, r1, emergency_ctx@ha #else - lis r11, emergency_ctx@ha + lis r1, emergency_ctx@ha #endif - lwz r11, emergency_ctx@l(r11) - cmpwi cr1, r11, 0 + lwz r1, emergency_ctx@l(r1) + cmpwi cr1, r1, 0 bne cr1, 1f - lis r11, init_thread_union@ha - addi r11, r11, init_thread_union@l -1: addi r11, r11, THREAD_SIZE - INT_FRAME_SIZE + lis r1, init_thread_union@ha + addi r1, r1, init_thread_union@l +1: addi r1, r1, THREAD_SIZE - INT_FRAME_SIZE EXCEPTION_PROLOG_2 SAVE_NVGPRS(r11) addi r3, r1, STACK_FRAME_OVERHEAD --- linux-azure-5.8-5.8.0.orig/arch/powerpc/kernel/head_40x.S +++ linux-azure-5.8-5.8.0/arch/powerpc/kernel/head_40x.S @@ -285,11 +285,7 @@ rlwimi r11, r10, 22, 20, 29 /* Compute PTE address */ lwz r11, 0(r11) /* Get Linux PTE */ -#ifdef CONFIG_SWAP li r9, _PAGE_PRESENT | _PAGE_ACCESSED -#else - li r9, _PAGE_PRESENT -#endif andc. r9, r9, r11 /* Check permission */ bne 5f @@ -370,11 +366,7 @@ rlwimi r11, r10, 22, 20, 29 /* Compute PTE address */ lwz r11, 0(r11) /* Get Linux PTE */ -#ifdef CONFIG_SWAP li r9, _PAGE_PRESENT | _PAGE_ACCESSED | _PAGE_EXEC -#else - li r9, _PAGE_PRESENT | _PAGE_EXEC -#endif andc. r9, r9, r11 /* Check permission */ bne 5f --- linux-azure-5.8-5.8.0.orig/arch/powerpc/kernel/head_64.S +++ linux-azure-5.8-5.8.0/arch/powerpc/kernel/head_64.S @@ -420,6 +420,10 @@ /* From now on, r24 is expected to be logical cpuid */ mr r24,r5 + /* Create a temp kernel stack for use before relocation is on. */ + ld r1,PACAEMERGSP(r13) + subi r1,r1,STACK_FRAME_OVERHEAD + /* See if we need to call a cpu state restore handler */ LOAD_REG_ADDR(r23, cur_cpu_spec) ld r23,0(r23) @@ -448,10 +452,6 @@ sync /* order paca.run and cur_cpu_spec */ isync /* In case code patching happened */ - /* Create a temp kernel stack for use before relocation is on. */ - ld r1,PACAEMERGSP(r13) - subi r1,r1,STACK_FRAME_OVERHEAD - b __secondary_start #endif /* SMP */ @@ -993,7 +993,7 @@ bl start_kernel /* Not reached */ - trap +0: trap EMIT_BUG_ENTRY 0b, __FILE__, __LINE__, 0 .previous --- linux-azure-5.8-5.8.0.orig/arch/powerpc/kernel/head_8xx.S +++ linux-azure-5.8-5.8.0/arch/powerpc/kernel/head_8xx.S @@ -175,7 +175,7 @@ /* On the MPC8xx, this is a software emulation interrupt. It occurs * for all unimplemented and illegal instructions. */ - EXCEPTION(0x1000, SoftEmu, program_check_exception, EXC_XFER_STD) + EXCEPTION(0x1000, SoftEmu, emulation_assist_interrupt, EXC_XFER_STD) . = 0x1100 /* @@ -202,9 +202,7 @@ InstructionTLBMiss: mtspr SPRN_SPRG_SCRATCH0, r10 -#if defined(ITLB_MISS_KERNEL) || defined(CONFIG_SWAP) || defined(CONFIG_HUGETLBFS) mtspr SPRN_SPRG_SCRATCH1, r11 -#endif /* If we are faulting a kernel address, we have to use the * kernel page tables. @@ -238,11 +236,9 @@ rlwimi r11, r10, 32 - 9, _PMD_PAGE_512K mtspr SPRN_MI_TWC, r11 #endif -#ifdef CONFIG_SWAP - rlwinm r11, r10, 32-5, _PAGE_PRESENT + rlwinm r11, r10, 32-7, _PAGE_PRESENT and r11, r11, r10 rlwimi r10, r11, 0, _PAGE_PRESENT -#endif /* The Linux PTE won't go exactly into the MMU TLB. * Software indicator bits 20 and 23 must be clear. * Software indicator bits 22, 24, 25, 26, and 27 must be @@ -256,9 +252,7 @@ /* Restore registers */ 0: mfspr r10, SPRN_SPRG_SCRATCH0 -#if defined(ITLB_MISS_KERNEL) || defined(CONFIG_SWAP) || defined(CONFIG_HUGETLBFS) mfspr r11, SPRN_SPRG_SCRATCH1 -#endif rfi patch_site 0b, patch__itlbmiss_exit_1 @@ -268,9 +262,7 @@ addi r10, r10, 1 stw r10, (itlb_miss_counter - PAGE_OFFSET)@l(0) mfspr r10, SPRN_SPRG_SCRATCH0 -#if defined(ITLB_MISS_KERNEL) || defined(CONFIG_SWAP) mfspr r11, SPRN_SPRG_SCRATCH1 -#endif rfi #endif @@ -316,11 +308,9 @@ * r11 = ((r10 & PRESENT) & ((r10 & ACCESSED) >> 5)); * r10 = (r10 & ~PRESENT) | r11; */ -#ifdef CONFIG_SWAP - rlwinm r11, r10, 32-5, _PAGE_PRESENT + rlwinm r11, r10, 32-7, _PAGE_PRESENT and r11, r11, r10 rlwimi r10, r11, 0, _PAGE_PRESENT -#endif /* The Linux PTE won't go exactly into the MMU TLB. * Software indicator bits 24, 25, 26, and 27 must be * set. All other Linux PTE bits control the behavior --- linux-azure-5.8-5.8.0.orig/arch/powerpc/kernel/hw_breakpoint.c +++ linux-azure-5.8-5.8.0/arch/powerpc/kernel/hw_breakpoint.c @@ -419,7 +419,7 @@ if (dawr_enabled()) { max_len = DAWR_MAX_LEN; /* DAWR region can't cross 512 bytes boundary */ - if (ALIGN(start_addr, SZ_512M) != ALIGN(end_addr - 1, SZ_512M)) + if (ALIGN_DOWN(start_addr, SZ_512) != ALIGN_DOWN(end_addr - 1, SZ_512)) return -EINVAL; } else if (IS_ENABLED(CONFIG_PPC_8xx)) { /* 8xx can setup a range without limitation */ @@ -498,11 +498,11 @@ return ((info->address <= dar) && (dar - info->address < info->len)); } -static bool dar_user_range_overlaps(unsigned long dar, int size, - struct arch_hw_breakpoint *info) +static bool ea_user_range_overlaps(unsigned long ea, int size, + struct arch_hw_breakpoint *info) { - return ((dar < info->address + info->len) && - (dar + size > info->address)); + return ((ea < info->address + info->len) && + (ea + size > info->address)); } static bool dar_in_hw_range(unsigned long dar, struct arch_hw_breakpoint *info) @@ -515,20 +515,30 @@ return ((hw_start_addr <= dar) && (hw_end_addr > dar)); } -static bool dar_hw_range_overlaps(unsigned long dar, int size, - struct arch_hw_breakpoint *info) +static bool ea_hw_range_overlaps(unsigned long ea, int size, + struct arch_hw_breakpoint *info) { unsigned long hw_start_addr, hw_end_addr; + unsigned long align_size = HW_BREAKPOINT_SIZE; - hw_start_addr = ALIGN_DOWN(info->address, HW_BREAKPOINT_SIZE); - hw_end_addr = ALIGN(info->address + info->len, HW_BREAKPOINT_SIZE); + /* + * On p10 predecessors, quadword is handle differently then + * other instructions. + */ + if (!cpu_has_feature(CPU_FTR_ARCH_31) && size == 16) + align_size = HW_BREAKPOINT_SIZE_QUADWORD; + + hw_start_addr = ALIGN_DOWN(info->address, align_size); + hw_end_addr = ALIGN(info->address + info->len, align_size); - return ((dar < hw_end_addr) && (dar + size > hw_start_addr)); + return ((ea < hw_end_addr) && (ea + size > hw_start_addr)); } /* * If hw has multiple DAWR registers, we also need to check all * dawrx constraint bits to confirm this is _really_ a valid event. + * If type is UNKNOWN, but privilege level matches, consider it as + * a positive match. */ static bool check_dawrx_constraints(struct pt_regs *regs, int type, struct arch_hw_breakpoint *info) @@ -536,7 +546,12 @@ if (OP_IS_LOAD(type) && !(info->type & HW_BRK_TYPE_READ)) return false; - if (OP_IS_STORE(type) && !(info->type & HW_BRK_TYPE_WRITE)) + /* + * The Cache Management instructions other than dcbz never + * cause a match. i.e. if type is CACHEOP, the instruction + * is dcbz, and dcbz is treated as Store. + */ + if ((OP_IS_STORE(type) || type == CACHEOP) && !(info->type & HW_BRK_TYPE_WRITE)) return false; if (is_kernel_addr(regs->nip) && !(info->type & HW_BRK_TYPE_KERNEL)) @@ -553,7 +568,8 @@ * including extraneous exception. Otherwise return false. */ static bool check_constraints(struct pt_regs *regs, struct ppc_inst instr, - int type, int size, struct arch_hw_breakpoint *info) + unsigned long ea, int type, int size, + struct arch_hw_breakpoint *info) { bool in_user_range = dar_in_user_range(regs->dar, info); bool dawrx_constraints; @@ -569,22 +585,27 @@ } if (unlikely(ppc_inst_equal(instr, ppc_inst(0)))) { - if (in_user_range) - return true; + if (cpu_has_feature(CPU_FTR_ARCH_31) && + !dar_in_hw_range(regs->dar, info)) + return false; - if (dar_in_hw_range(regs->dar, info)) { - info->type |= HW_BRK_TYPE_EXTRANEOUS_IRQ; - return true; - } - return false; + return true; } dawrx_constraints = check_dawrx_constraints(regs, type, info); - if (dar_user_range_overlaps(regs->dar, size, info)) + if (type == UNKNOWN) { + if (cpu_has_feature(CPU_FTR_ARCH_31) && + !dar_in_hw_range(regs->dar, info)) + return false; + + return dawrx_constraints; + } + + if (ea_user_range_overlaps(ea, size, info)) return dawrx_constraints; - if (dar_hw_range_overlaps(regs->dar, size, info)) { + if (ea_hw_range_overlaps(ea, size, info)) { if (dawrx_constraints) { info->type |= HW_BRK_TYPE_EXTRANEOUS_IRQ; return true; @@ -593,8 +614,17 @@ return false; } +static int cache_op_size(void) +{ +#ifdef __powerpc64__ + return ppc64_caches.l1d.block_size; +#else + return L1_CACHE_BYTES; +#endif +} + static void get_instr_detail(struct pt_regs *regs, struct ppc_inst *instr, - int *type, int *size, bool *larx_stcx) + int *type, int *size, unsigned long *ea) { struct instruction_op op; @@ -602,16 +632,25 @@ return; analyse_instr(&op, regs, *instr); - - /* - * Set size = 8 if analyse_instr() fails. If it's a userspace - * watchpoint(valid or extraneous), we can notify user about it. - * If it's a kernel watchpoint, instruction emulation will fail - * in stepping_handler() and watchpoint will be disabled. - */ *type = GETTYPE(op.type); - *size = !(*type == UNKNOWN) ? GETSIZE(op.type) : 8; - *larx_stcx = (*type == LARX || *type == STCX); + *ea = op.ea; +#ifdef __powerpc64__ + if (!(regs->msr & MSR_64BIT)) + *ea &= 0xffffffffUL; +#endif + + *size = GETSIZE(op.type); + if (*type == CACHEOP) { + *size = cache_op_size(); + *ea &= ~(*size - 1); + } else if (*type == LOAD_VMX || *type == STORE_VMX) { + *ea &= ~(*size - 1); + } +} + +static bool is_larx_stcx_instr(int type) +{ + return type == LARX || type == STCX; } /* @@ -678,7 +717,7 @@ struct ppc_inst instr = ppc_inst(0); int type = 0; int size = 0; - bool larx_stcx = false; + unsigned long ea; /* Disable breakpoints during exception handling */ hw_breakpoint_disable(); @@ -692,7 +731,7 @@ rcu_read_lock(); if (!IS_ENABLED(CONFIG_PPC_8xx)) - get_instr_detail(regs, &instr, &type, &size, &larx_stcx); + get_instr_detail(regs, &instr, &type, &size, &ea); for (i = 0; i < nr_wp_slots(); i++) { bp[i] = __this_cpu_read(bp_per_reg[i]); @@ -702,7 +741,7 @@ info[i] = counter_arch_bp(bp[i]); info[i]->type &= ~HW_BRK_TYPE_EXTRANEOUS_IRQ; - if (check_constraints(regs, instr, type, size, info[i])) { + if (check_constraints(regs, instr, ea, type, size, info[i])) { if (!IS_ENABLED(CONFIG_PPC_8xx) && ppc_inst_equal(instr, ppc_inst(0))) { handler_error(bp[i], info[i]); @@ -744,7 +783,7 @@ } if (!IS_ENABLED(CONFIG_PPC_8xx)) { - if (larx_stcx) { + if (is_larx_stcx_instr(type)) { for (i = 0; i < nr_wp_slots(); i++) { if (!hit[i]) continue; --- linux-azure-5.8-5.8.0.orig/arch/powerpc/kernel/irq.c +++ linux-azure-5.8-5.8.0/arch/powerpc/kernel/irq.c @@ -214,7 +214,7 @@ struct pt_regs regs; ppc_save_regs(®s); - regs.softe = IRQS_ALL_DISABLED; + regs.softe = IRQS_ENABLED; again: if (IS_ENABLED(CONFIG_PPC_IRQ_SOFT_MASK_DEBUG)) @@ -315,6 +315,31 @@ } } +#if defined(CONFIG_PPC_BOOK3S_64) && defined(CONFIG_PPC_KUAP) +static inline void replay_soft_interrupts_irqrestore(void) +{ + unsigned long kuap_state = get_kuap(); + + /* + * Check if anything calls local_irq_enable/restore() when KUAP is + * disabled (user access enabled). We handle that case here by saving + * and re-locking AMR but we shouldn't get here in the first place, + * hence the warning. + */ + kuap_check_amr(); + + if (kuap_state != AMR_KUAP_BLOCKED) + set_kuap(AMR_KUAP_BLOCKED); + + replay_soft_interrupts(); + + if (kuap_state != AMR_KUAP_BLOCKED) + set_kuap(kuap_state); +} +#else +#define replay_soft_interrupts_irqrestore() replay_soft_interrupts() +#endif + notrace void arch_local_irq_restore(unsigned long mask) { unsigned char irq_happened; @@ -368,15 +393,22 @@ } } + /* + * Disable preempt here, so that the below preempt_enable will + * perform resched if required (a replayed interrupt may set + * need_resched). + */ + preempt_disable(); irq_soft_mask_set(IRQS_ALL_DISABLED); trace_hardirqs_off(); - replay_soft_interrupts(); + replay_soft_interrupts_irqrestore(); local_paca->irq_happened = 0; trace_hardirqs_on(); irq_soft_mask_set(IRQS_ENABLED); __hard_irq_enable(); + preempt_enable(); } EXPORT_SYMBOL(arch_local_irq_restore); --- linux-azure-5.8-5.8.0.orig/arch/powerpc/kernel/mce.c +++ linux-azure-5.8-5.8.0/arch/powerpc/kernel/mce.c @@ -575,12 +575,11 @@ long notrace machine_check_early(struct pt_regs *regs) { long handled = 0; - bool nested = in_nmi(); u8 ftrace_enabled = this_cpu_get_ftrace_enabled(); this_cpu_set_ftrace_enabled(0); - - if (!nested) + /* Do not use nmi_enter/exit for pseries hpte guest */ + if (radix_enabled() || !firmware_has_feature(FW_FEATURE_LPAR)) nmi_enter(); hv_nmi_check_nonrecoverable(regs); @@ -591,7 +590,7 @@ if (ppc_md.machine_check_early) handled = ppc_md.machine_check_early(regs); - if (!nested) + if (radix_enabled() || !firmware_has_feature(FW_FEATURE_LPAR)) nmi_exit(); this_cpu_set_ftrace_enabled(ftrace_enabled); --- linux-azure-5.8-5.8.0.orig/arch/powerpc/kernel/paca.c +++ linux-azure-5.8-5.8.0/arch/powerpc/kernel/paca.c @@ -201,7 +201,7 @@ struct paca_struct **paca_ptrs __read_mostly; EXPORT_SYMBOL(paca_ptrs); -void __init __nostackprotector initialise_paca(struct paca_struct *new_paca, int cpu) +void __init initialise_paca(struct paca_struct *new_paca, int cpu) { #ifdef CONFIG_PPC_PSERIES new_paca->lppaca_ptr = NULL; @@ -234,7 +234,7 @@ } /* Put the paca pointer into r13 and SPRG_PACA */ -void __nostackprotector setup_paca(struct paca_struct *new_paca) +void setup_paca(struct paca_struct *new_paca) { /* Setup r13 */ local_paca = new_paca; --- linux-azure-5.8-5.8.0.orig/arch/powerpc/kernel/pci-common.c +++ linux-azure-5.8-5.8.0/arch/powerpc/kernel/pci-common.c @@ -341,6 +341,7 @@ } return NULL; } +EXPORT_SYMBOL(pci_find_hose_for_OF_device); struct pci_controller *pci_find_controller_for_domain(int domain_nr) { @@ -1533,6 +1534,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-azure-5.8-5.8.0.orig/arch/powerpc/kernel/process.c +++ linux-azure-5.8-5.8.0/arch/powerpc/kernel/process.c @@ -1231,15 +1231,17 @@ restore_math(current->thread.regs); /* - * The copy-paste buffer can only store into foreign real - * addresses, so unprivileged processes can not see the - * data or use it in any way unless they have foreign real - * mappings. If the new process has the foreign real address - * mappings, we must issue a cp_abort to clear any state and - * prevent snooping, corruption or a covert channel. + * On POWER9 the copy-paste buffer can only paste into + * foreign real addresses, so unprivileged processes can not + * see the data or use it in any way unless they have + * foreign real mappings. If the new process has the foreign + * real address mappings, we must issue a cp_abort to clear + * any state and prevent snooping, corruption or a covert + * channel. ISA v3.1 supports paste into local memory. */ if (current->mm && - atomic_read(¤t->mm->context.vas_windows)) + (cpu_has_feature(CPU_FTR_ARCH_31) || + atomic_read(¤t->mm->context.vas_windows))) asm volatile(PPC_CP_ABORT); } #endif /* CONFIG_PPC_BOOK3S_64 */ --- linux-azure-5.8-5.8.0.orig/arch/powerpc/kernel/prom_init.c +++ linux-azure-5.8-5.8.0/arch/powerpc/kernel/prom_init.c @@ -1325,14 +1325,10 @@ if (prop_len > sizeof(vec)) prom_printf("WARNING: ibm,arch-vec-5-platform-support longer than expected (len: %d)\n", prop_len); - prom_getprop(prom.chosen, "ibm,arch-vec-5-platform-support", - &vec, sizeof(vec)); - for (i = 0; i < sizeof(vec); i += 2) { - prom_debug("%d: index = 0x%x val = 0x%x\n", i / 2 - , vec[i] - , vec[i + 1]); - prom_parse_platform_support(vec[i], vec[i + 1], - &supported); + prom_getprop(prom.chosen, "ibm,arch-vec-5-platform-support", &vec, sizeof(vec)); + for (i = 0; i < prop_len; i += 2) { + prom_debug("%d: index = 0x%x val = 0x%x\n", i / 2, vec[i], vec[i + 1]); + prom_parse_platform_support(vec[i], vec[i + 1], &supported); } } --- linux-azure-5.8-5.8.0.orig/arch/powerpc/kernel/ptrace/ptrace-noadv.c +++ linux-azure-5.8-5.8.0/arch/powerpc/kernel/ptrace/ptrace-noadv.c @@ -217,8 +217,9 @@ return -EIO; brk.address = ALIGN_DOWN(bp_info->addr, HW_BREAKPOINT_SIZE); - brk.type = HW_BRK_TYPE_TRANSLATE; + brk.type = HW_BRK_TYPE_TRANSLATE | HW_BRK_TYPE_PRIV_ALL; brk.len = DABR_MAX_LEN; + brk.hw_len = DABR_MAX_LEN; if (bp_info->trigger_type & PPC_BREAKPOINT_TRIGGER_READ) brk.type |= HW_BRK_TYPE_READ; if (bp_info->trigger_type & PPC_BREAKPOINT_TRIGGER_WRITE) --- linux-azure-5.8-5.8.0.orig/arch/powerpc/kernel/rtas.c +++ linux-azure-5.8-5.8.0/arch/powerpc/kernel/rtas.c @@ -843,96 +843,6 @@ __rtas_suspend_cpu((struct rtas_suspend_me_data *)info, 1); } -enum rtas_cpu_state { - DOWN, - UP, -}; - -#ifndef CONFIG_SMP -static int rtas_cpu_state_change_mask(enum rtas_cpu_state state, - cpumask_var_t cpus) -{ - if (!cpumask_empty(cpus)) { - cpumask_clear(cpus); - return -EINVAL; - } else - return 0; -} -#else -/* On return cpumask will be altered to indicate CPUs changed. - * CPUs with states changed will be set in the mask, - * CPUs with status unchanged will be unset in the mask. */ -static int rtas_cpu_state_change_mask(enum rtas_cpu_state state, - cpumask_var_t cpus) -{ - int cpu; - int cpuret = 0; - int ret = 0; - - if (cpumask_empty(cpus)) - return 0; - - for_each_cpu(cpu, cpus) { - struct device *dev = get_cpu_device(cpu); - - switch (state) { - case DOWN: - cpuret = device_offline(dev); - break; - case UP: - cpuret = device_online(dev); - break; - } - if (cpuret < 0) { - pr_debug("%s: cpu_%s for cpu#%d returned %d.\n", - __func__, - ((state == UP) ? "up" : "down"), - cpu, cpuret); - if (!ret) - ret = cpuret; - if (state == UP) { - /* clear bits for unchanged cpus, return */ - cpumask_shift_right(cpus, cpus, cpu); - cpumask_shift_left(cpus, cpus, cpu); - break; - } else { - /* clear bit for unchanged cpu, continue */ - cpumask_clear_cpu(cpu, cpus); - } - } - cond_resched(); - } - - return ret; -} -#endif - -int rtas_online_cpus_mask(cpumask_var_t cpus) -{ - int ret; - - ret = rtas_cpu_state_change_mask(UP, cpus); - - if (ret) { - cpumask_var_t tmp_mask; - - if (!alloc_cpumask_var(&tmp_mask, GFP_KERNEL)) - return ret; - - /* Use tmp_mask to preserve cpus mask from first failure */ - cpumask_copy(tmp_mask, cpus); - rtas_offline_cpus_mask(tmp_mask); - free_cpumask_var(tmp_mask); - } - - return ret; -} - -int rtas_offline_cpus_mask(cpumask_var_t cpus) -{ - return rtas_cpu_state_change_mask(DOWN, cpus); -} - int rtas_ibm_suspend_me(u64 handle) { long state; @@ -940,8 +850,6 @@ unsigned long retbuf[PLPAR_HCALL_BUFSIZE]; struct rtas_suspend_me_data data; DECLARE_COMPLETION_ONSTACK(done); - cpumask_var_t offline_mask; - int cpuret; if (!rtas_service_present("ibm,suspend-me")) return -ENOSYS; @@ -962,9 +870,6 @@ return -EIO; } - if (!alloc_cpumask_var(&offline_mask, GFP_KERNEL)) - return -ENOMEM; - atomic_set(&data.working, 0); atomic_set(&data.done, 0); atomic_set(&data.error, 0); @@ -973,24 +878,8 @@ lock_device_hotplug(); - /* All present CPUs must be online */ - cpumask_andnot(offline_mask, cpu_present_mask, cpu_online_mask); - cpuret = rtas_online_cpus_mask(offline_mask); - if (cpuret) { - pr_err("%s: Could not bring present CPUs online.\n", __func__); - atomic_set(&data.error, cpuret); - goto out; - } - cpu_hotplug_disable(); - /* Check if we raced with a CPU-Offline Operation */ - if (!cpumask_equal(cpu_present_mask, cpu_online_mask)) { - pr_info("%s: Raced against a concurrent CPU-Offline\n", __func__); - atomic_set(&data.error, -EAGAIN); - goto out_hotplug_enable; - } - /* Call function on all CPUs. One of us will make the * rtas call */ @@ -1001,18 +890,11 @@ if (atomic_read(&data.error) != 0) printk(KERN_ERR "Error doing global join\n"); -out_hotplug_enable: - cpu_hotplug_enable(); - /* Take down CPUs not online prior to suspend */ - cpuret = rtas_offline_cpus_mask(offline_mask); - if (cpuret) - pr_warn("%s: Could not restore CPUs to offline state.\n", - __func__); + cpu_hotplug_enable(); -out: unlock_device_hotplug(); - free_cpumask_var(offline_mask); + return atomic_read(&data.error); } @@ -1110,6 +992,147 @@ return NULL; } +#ifdef CONFIG_PPC_RTAS_FILTER + +/* + * The sys_rtas syscall, as originally designed, allows root to pass + * arbitrary physical addresses to RTAS calls. A number of RTAS calls + * can be abused to write to arbitrary memory and do other things that + * are potentially harmful to system integrity, and thus should only + * be used inside the kernel and not exposed to userspace. + * + * All known legitimate users of the sys_rtas syscall will only ever + * pass addresses that fall within the RMO buffer, and use a known + * subset of RTAS calls. + * + * Accordingly, we filter RTAS requests to check that the call is + * permitted, and that provided pointers fall within the RMO buffer. + * The rtas_filters list contains an entry for each permitted call, + * with the indexes of the parameters which are expected to contain + * addresses and sizes of buffers allocated inside the RMO buffer. + */ +struct rtas_filter { + const char *name; + int token; + /* Indexes into the args buffer, -1 if not used */ + int buf_idx1; + int size_idx1; + int buf_idx2; + int size_idx2; + + int fixed_size; +}; + +static struct rtas_filter rtas_filters[] __ro_after_init = { + { "ibm,activate-firmware", -1, -1, -1, -1, -1 }, + { "ibm,configure-connector", -1, 0, -1, 1, -1, 4096 }, /* Special cased */ + { "display-character", -1, -1, -1, -1, -1 }, + { "ibm,display-message", -1, 0, -1, -1, -1 }, + { "ibm,errinjct", -1, 2, -1, -1, -1, 1024 }, + { "ibm,close-errinjct", -1, -1, -1, -1, -1 }, + { "ibm,open-errinjct", -1, -1, -1, -1, -1 }, + { "ibm,get-config-addr-info2", -1, -1, -1, -1, -1 }, + { "ibm,get-dynamic-sensor-state", -1, 1, -1, -1, -1 }, + { "ibm,get-indices", -1, 2, 3, -1, -1 }, + { "get-power-level", -1, -1, -1, -1, -1 }, + { "get-sensor-state", -1, -1, -1, -1, -1 }, + { "ibm,get-system-parameter", -1, 1, 2, -1, -1 }, + { "get-time-of-day", -1, -1, -1, -1, -1 }, + { "ibm,get-vpd", -1, 0, -1, 1, 2 }, + { "ibm,lpar-perftools", -1, 2, 3, -1, -1 }, + { "ibm,platform-dump", -1, 4, 5, -1, -1 }, + { "ibm,read-slot-reset-state", -1, -1, -1, -1, -1 }, + { "ibm,scan-log-dump", -1, 0, 1, -1, -1 }, + { "ibm,set-dynamic-indicator", -1, 2, -1, -1, -1 }, + { "ibm,set-eeh-option", -1, -1, -1, -1, -1 }, + { "set-indicator", -1, -1, -1, -1, -1 }, + { "set-power-level", -1, -1, -1, -1, -1 }, + { "set-time-for-power-on", -1, -1, -1, -1, -1 }, + { "ibm,set-system-parameter", -1, 1, -1, -1, -1 }, + { "set-time-of-day", -1, -1, -1, -1, -1 }, + { "ibm,suspend-me", -1, -1, -1, -1, -1 }, + { "ibm,update-nodes", -1, 0, -1, -1, -1, 4096 }, + { "ibm,update-properties", -1, 0, -1, -1, -1, 4096 }, + { "ibm,physical-attestation", -1, 0, 1, -1, -1 }, +}; + +static bool in_rmo_buf(u32 base, u32 end) +{ + return base >= rtas_rmo_buf && + base < (rtas_rmo_buf + RTAS_RMOBUF_MAX) && + base <= end && + end >= rtas_rmo_buf && + end < (rtas_rmo_buf + RTAS_RMOBUF_MAX); +} + +static bool block_rtas_call(int token, int nargs, + struct rtas_args *args) +{ + int i; + + for (i = 0; i < ARRAY_SIZE(rtas_filters); i++) { + struct rtas_filter *f = &rtas_filters[i]; + u32 base, size, end; + + if (token != f->token) + continue; + + if (f->buf_idx1 != -1) { + base = be32_to_cpu(args->args[f->buf_idx1]); + if (f->size_idx1 != -1) + size = be32_to_cpu(args->args[f->size_idx1]); + else if (f->fixed_size) + size = f->fixed_size; + else + size = 1; + + end = base + size - 1; + if (!in_rmo_buf(base, end)) + goto err; + } + + if (f->buf_idx2 != -1) { + base = be32_to_cpu(args->args[f->buf_idx2]); + if (f->size_idx2 != -1) + size = be32_to_cpu(args->args[f->size_idx2]); + else if (f->fixed_size) + size = f->fixed_size; + else + size = 1; + end = base + size - 1; + + /* + * Special case for ibm,configure-connector where the + * address can be 0 + */ + if (!strcmp(f->name, "ibm,configure-connector") && + base == 0) + return false; + + if (!in_rmo_buf(base, end)) + goto err; + } + + return false; + } + +err: + pr_err_ratelimited("sys_rtas: RTAS call blocked - exploit attempt?\n"); + pr_err_ratelimited("sys_rtas: token=0x%x, nargs=%d (called by %s)\n", + token, nargs, current->comm); + return true; +} + +#else + +static bool block_rtas_call(int token, int nargs, + struct rtas_args *args) +{ + return false; +} + +#endif /* CONFIG_PPC_RTAS_FILTER */ + /* We assume to be passed big endian arguments */ SYSCALL_DEFINE1(rtas, struct rtas_args __user *, uargs) { @@ -1147,6 +1170,9 @@ args.rets = &args.args[nargs]; memset(args.rets, 0, nret * sizeof(rtas_arg_t)); + if (block_rtas_call(token, nargs, &args)) + return -EINVAL; + /* Need to handle ibm,suspend_me call specially */ if (token == ibm_suspend_me_token) { @@ -1208,6 +1234,9 @@ unsigned long rtas_region = RTAS_INSTANTIATE_MAX; u32 base, size, entry; int no_base, no_size, no_entry; +#ifdef CONFIG_PPC_RTAS_FILTER + int i; +#endif /* Get RTAS dev node and fill up our "rtas" structure with infos * about it. @@ -1247,6 +1276,12 @@ #ifdef CONFIG_RTAS_ERROR_LOGGING rtas_last_error_token = rtas_token("rtas-last-error"); #endif + +#ifdef CONFIG_PPC_RTAS_FILTER + for (i = 0; i < ARRAY_SIZE(rtas_filters); i++) { + rtas_filters[i].token = rtas_token(rtas_filters[i].name); + } +#endif } int __init early_init_dt_scan_rtas(unsigned long node, --- linux-azure-5.8-5.8.0.orig/arch/powerpc/kernel/setup-common.c +++ linux-azure-5.8-5.8.0/arch/powerpc/kernel/setup-common.c @@ -32,6 +32,7 @@ #include #include #include +#include #include #include #include @@ -64,6 +65,7 @@ #include #include #include +#include #include "setup.h" @@ -311,6 +313,7 @@ min = pvr & 0xFF; break; case 0x004e: /* POWER9 bits 12-15 give chip type */ + case 0x0080: /* POWER10 bit 12 gives SMT8/4 */ maj = (pvr >> 8) & 0x0F; min = pvr & 0xFF; break; @@ -870,6 +873,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(); @@ -918,8 +931,6 @@ /* On BookE, setup per-core TLB data structures. */ setup_tlb_core_data(); - - smp_release_cpus(); #endif /* Print various info about the machine that has been gathered so far. */ @@ -940,6 +951,8 @@ exc_lvl_early_init(); emergency_stack_init(); + smp_release_cpus(); + initmem_init(); early_memtest(min_low_pfn << PAGE_SHIFT, max_low_pfn << PAGE_SHIFT); --- linux-azure-5.8-5.8.0.orig/arch/powerpc/kernel/setup.h +++ linux-azure-5.8-5.8.0/arch/powerpc/kernel/setup.h @@ -8,12 +8,6 @@ #ifndef __ARCH_POWERPC_KERNEL_SETUP_H #define __ARCH_POWERPC_KERNEL_SETUP_H -#ifdef CONFIG_CC_IS_CLANG -#define __nostackprotector -#else -#define __nostackprotector __attribute__((__optimize__("no-stack-protector"))) -#endif - void initialize_cache_info(void); void irqstack_early_init(void); --- linux-azure-5.8-5.8.0.orig/arch/powerpc/kernel/setup_64.c +++ linux-azure-5.8-5.8.0/arch/powerpc/kernel/setup_64.c @@ -279,7 +279,7 @@ * device-tree is not accessible via normal means at this point. */ -void __init __nostackprotector early_setup(unsigned long dt_ptr) +void __init early_setup(unsigned long dt_ptr) { static __initdata struct paca_struct boot_paca; @@ -857,7 +857,13 @@ static enum l1d_flush_type enabled_flush_types; static void *l1d_flush_fallback_area; static bool no_rfi_flush; +static bool no_entry_flush; +static bool no_uaccess_flush; bool rfi_flush; +bool entry_flush; +bool uaccess_flush; +DEFINE_STATIC_KEY_FALSE(uaccess_flush_key); +EXPORT_SYMBOL(uaccess_flush_key); static int __init handle_no_rfi_flush(char *p) { @@ -867,6 +873,22 @@ } early_param("no_rfi_flush", handle_no_rfi_flush); +static int __init handle_no_entry_flush(char *p) +{ + pr_info("entry-flush: disabled on command line."); + no_entry_flush = true; + return 0; +} +early_param("no_entry_flush", handle_no_entry_flush); + +static int __init handle_no_uaccess_flush(char *p) +{ + pr_info("uaccess-flush: disabled on command line."); + no_uaccess_flush = true; + return 0; +} +early_param("no_uaccess_flush", handle_no_uaccess_flush); + /* * The RFI flush is not KPTI, but because users will see doco that says to use * nopti we hijack that option here to also disable the RFI flush. @@ -898,6 +920,32 @@ rfi_flush = enable; } +void entry_flush_enable(bool enable) +{ + if (enable) { + do_entry_flush_fixups(enabled_flush_types); + on_each_cpu(do_nothing, NULL, 1); + } else { + do_entry_flush_fixups(L1D_FLUSH_NONE); + } + + entry_flush = enable; +} + +void uaccess_flush_enable(bool enable) +{ + if (enable) { + do_uaccess_flush_fixups(enabled_flush_types); + static_branch_enable(&uaccess_flush_key); + on_each_cpu(do_nothing, NULL, 1); + } else { + static_branch_disable(&uaccess_flush_key); + do_uaccess_flush_fixups(L1D_FLUSH_NONE); + } + + uaccess_flush = enable; +} + static void __ref init_fallback_flush(void) { u64 l1d_size, limit; @@ -956,10 +1004,28 @@ enabled_flush_types = types; - if (!no_rfi_flush && !cpu_mitigations_off()) + if (!cpu_mitigations_off() && !no_rfi_flush) rfi_flush_enable(enable); } +void setup_entry_flush(bool enable) +{ + if (cpu_mitigations_off()) + return; + + if (!no_entry_flush) + entry_flush_enable(enable); +} + +void setup_uaccess_flush(bool enable) +{ + if (cpu_mitigations_off()) + return; + + if (!no_uaccess_flush) + uaccess_flush_enable(enable); +} + #ifdef CONFIG_DEBUG_FS static int rfi_flush_set(void *data, u64 val) { @@ -987,9 +1053,63 @@ DEFINE_SIMPLE_ATTRIBUTE(fops_rfi_flush, rfi_flush_get, rfi_flush_set, "%llu\n"); +static int entry_flush_set(void *data, u64 val) +{ + bool enable; + + if (val == 1) + enable = true; + else if (val == 0) + enable = false; + else + return -EINVAL; + + /* Only do anything if we're changing state */ + if (enable != entry_flush) + entry_flush_enable(enable); + + return 0; +} + +static int entry_flush_get(void *data, u64 *val) +{ + *val = entry_flush ? 1 : 0; + return 0; +} + +DEFINE_SIMPLE_ATTRIBUTE(fops_entry_flush, entry_flush_get, entry_flush_set, "%llu\n"); + +static int uaccess_flush_set(void *data, u64 val) +{ + bool enable; + + if (val == 1) + enable = true; + else if (val == 0) + enable = false; + else + return -EINVAL; + + /* Only do anything if we're changing state */ + if (enable != uaccess_flush) + uaccess_flush_enable(enable); + + return 0; +} + +static int uaccess_flush_get(void *data, u64 *val) +{ + *val = uaccess_flush ? 1 : 0; + return 0; +} + +DEFINE_SIMPLE_ATTRIBUTE(fops_uaccess_flush, uaccess_flush_get, uaccess_flush_set, "%llu\n"); + static __init int rfi_flush_debugfs_init(void) { debugfs_create_file("rfi_flush", 0600, powerpc_debugfs_root, NULL, &fops_rfi_flush); + debugfs_create_file("entry_flush", 0600, powerpc_debugfs_root, NULL, &fops_entry_flush); + debugfs_create_file("uaccess_flush", 0600, powerpc_debugfs_root, NULL, &fops_uaccess_flush); return 0; } device_initcall(rfi_flush_debugfs_init); --- linux-azure-5.8-5.8.0.orig/arch/powerpc/kernel/smp.c +++ linux-azure-5.8-5.8.0/arch/powerpc/kernel/smp.c @@ -818,7 +818,7 @@ return err; } -static int init_big_cores(void) +static int __init init_big_cores(void) { int cpu; @@ -1250,7 +1250,7 @@ /* Activate a secondary processor. */ void start_secondary(void *unused) { - unsigned int cpu = smp_processor_id(); + unsigned int cpu = raw_smp_processor_id(); struct cpumask *(*sibling_mask)(int) = cpu_sibling_mask; mmgrab(&init_mm); --- linux-azure-5.8-5.8.0.orig/arch/powerpc/kernel/syscall_64.c +++ linux-azure-5.8-5.8.0/arch/powerpc/kernel/syscall_64.c @@ -2,7 +2,7 @@ #include #include -#include +#include #include #include #include --- linux-azure-5.8-5.8.0.orig/arch/powerpc/kernel/sysfs.c +++ linux-azure-5.8-5.8.0/arch/powerpc/kernel/sysfs.c @@ -32,29 +32,27 @@ static DEFINE_PER_CPU(struct cpu, cpu_devices); -/* - * SMT snooze delay stuff, 64-bit only for now - */ - #ifdef CONFIG_PPC64 -/* Time in microseconds we delay before sleeping in the idle loop */ -static DEFINE_PER_CPU(long, smt_snooze_delay) = { 100 }; +/* + * Snooze delay has not been hooked up since 3fa8cad82b94 ("powerpc/pseries/cpuidle: + * smt-snooze-delay cleanup.") and has been broken even longer. As was foretold in + * 2014: + * + * "ppc64_util currently utilises it. Once we fix ppc64_util, propose to clean + * up the kernel code." + * + * powerpc-utils stopped using it as of 1.3.8. At some point in the future this + * code should be removed. + */ static ssize_t store_smt_snooze_delay(struct device *dev, struct device_attribute *attr, const char *buf, size_t count) { - struct cpu *cpu = container_of(dev, struct cpu, dev); - ssize_t ret; - long snooze; - - ret = sscanf(buf, "%ld", &snooze); - if (ret != 1) - return -EINVAL; - - per_cpu(smt_snooze_delay, cpu->dev.id) = snooze; + pr_warn_once("%s (%d) stored to unsupported smt_snooze_delay, which has no effect.\n", + current->comm, current->pid); return count; } @@ -62,9 +60,9 @@ struct device_attribute *attr, char *buf) { - struct cpu *cpu = container_of(dev, struct cpu, dev); - - return sprintf(buf, "%ld\n", per_cpu(smt_snooze_delay, cpu->dev.id)); + pr_warn_once("%s (%d) read from unsupported smt_snooze_delay\n", + current->comm, current->pid); + return sprintf(buf, "100\n"); } static DEVICE_ATTR(smt_snooze_delay, 0644, show_smt_snooze_delay, @@ -72,16 +70,10 @@ static int __init setup_smt_snooze_delay(char *str) { - unsigned int cpu; - long snooze; - if (!cpu_has_feature(CPU_FTR_SMT)) return 1; - snooze = simple_strtol(str, NULL, 10); - for_each_possible_cpu(cpu) - per_cpu(smt_snooze_delay, cpu) = snooze; - + pr_warn("smt-snooze-delay command line option has no effect\n"); return 1; } __setup("smt-snooze-delay=", setup_smt_snooze_delay); --- linux-azure-5.8-5.8.0.orig/arch/powerpc/kernel/tau_6xx.c +++ linux-azure-5.8-5.8.0/arch/powerpc/kernel/tau_6xx.c @@ -13,13 +13,14 @@ */ #include -#include #include #include #include #include #include #include +#include +#include #include #include @@ -39,9 +40,7 @@ unsigned char grew; } tau[NR_CPUS]; -struct timer_list tau_timer; - -#undef DEBUG +static bool tau_int_enable; /* TODO: put these in a /proc interface, with some sanity checks, and maybe * dynamic adjustment to minimize # of interrupts */ @@ -50,72 +49,49 @@ #define step_size 2 /* step size when temp goes out of range */ #define window_expand 1 /* expand the window by this much */ /* configurable values for shrinking the window */ -#define shrink_timer 2*HZ /* period between shrinking the window */ +#define shrink_timer 2000 /* period between shrinking the window */ #define min_window 2 /* minimum window size, degrees C */ static void set_thresholds(unsigned long cpu) { -#ifdef CONFIG_TAU_INT - /* - * setup THRM1, - * threshold, valid bit, enable interrupts, interrupt when below threshold - */ - mtspr(SPRN_THRM1, THRM1_THRES(tau[cpu].low) | THRM1_V | THRM1_TIE | THRM1_TID); + u32 maybe_tie = tau_int_enable ? THRM1_TIE : 0; - /* setup THRM2, - * threshold, valid bit, enable interrupts, interrupt when above threshold - */ - mtspr (SPRN_THRM2, THRM1_THRES(tau[cpu].high) | THRM1_V | THRM1_TIE); -#else - /* same thing but don't enable interrupts */ - mtspr(SPRN_THRM1, THRM1_THRES(tau[cpu].low) | THRM1_V | THRM1_TID); - mtspr(SPRN_THRM2, THRM1_THRES(tau[cpu].high) | THRM1_V); -#endif + /* setup THRM1, threshold, valid bit, interrupt when below threshold */ + mtspr(SPRN_THRM1, THRM1_THRES(tau[cpu].low) | THRM1_V | maybe_tie | THRM1_TID); + + /* setup THRM2, threshold, valid bit, interrupt when above threshold */ + mtspr(SPRN_THRM2, THRM1_THRES(tau[cpu].high) | THRM1_V | maybe_tie); } static void TAUupdate(int cpu) { - unsigned thrm; - -#ifdef DEBUG - printk("TAUupdate "); -#endif + u32 thrm; + u32 bits = THRM1_TIV | THRM1_TIN | THRM1_V; /* if both thresholds are crossed, the step_sizes cancel out * and the window winds up getting expanded twice. */ - if((thrm = mfspr(SPRN_THRM1)) & THRM1_TIV){ /* is valid? */ - if(thrm & THRM1_TIN){ /* crossed low threshold */ - if (tau[cpu].low >= step_size){ - tau[cpu].low -= step_size; - tau[cpu].high -= (step_size - window_expand); - } - tau[cpu].grew = 1; -#ifdef DEBUG - printk("low threshold crossed "); -#endif + thrm = mfspr(SPRN_THRM1); + if ((thrm & bits) == bits) { + mtspr(SPRN_THRM1, 0); + + if (tau[cpu].low >= step_size) { + tau[cpu].low -= step_size; + tau[cpu].high -= (step_size - window_expand); } + tau[cpu].grew = 1; + pr_debug("%s: low threshold crossed\n", __func__); } - if((thrm = mfspr(SPRN_THRM2)) & THRM1_TIV){ /* is valid? */ - if(thrm & THRM1_TIN){ /* crossed high threshold */ - if (tau[cpu].high <= 127-step_size){ - tau[cpu].low += (step_size - window_expand); - tau[cpu].high += step_size; - } - tau[cpu].grew = 1; -#ifdef DEBUG - printk("high threshold crossed "); -#endif + thrm = mfspr(SPRN_THRM2); + if ((thrm & bits) == bits) { + mtspr(SPRN_THRM2, 0); + + if (tau[cpu].high <= 127 - step_size) { + tau[cpu].low += (step_size - window_expand); + tau[cpu].high += step_size; } + tau[cpu].grew = 1; + pr_debug("%s: high threshold crossed\n", __func__); } - -#ifdef DEBUG - printk("grew = %d\n", tau[cpu].grew); -#endif - -#ifndef CONFIG_TAU_INT /* tau_timeout will do this if not using interrupts */ - set_thresholds(cpu); -#endif - } #ifdef CONFIG_TAU_INT @@ -140,17 +116,16 @@ static void tau_timeout(void * info) { int cpu; - unsigned long flags; int size; int shrink; - /* disabling interrupts *should* be okay */ - local_irq_save(flags); cpu = smp_processor_id(); -#ifndef CONFIG_TAU_INT - TAUupdate(cpu); -#endif + if (!tau_int_enable) + TAUupdate(cpu); + + /* Stop thermal sensor comparisons and interrupts */ + mtspr(SPRN_THRM3, 0); size = tau[cpu].high - tau[cpu].low; if (size > min_window && ! tau[cpu].grew) { @@ -173,32 +148,26 @@ set_thresholds(cpu); - /* - * Do the enable every time, since otherwise a bunch of (relatively) - * complex sleep code needs to be added. One mtspr every time - * tau_timeout is called is probably not a big deal. - * - * Enable thermal sensor and set up sample interval timer - * need 20 us to do the compare.. until a nice 'cpu_speed' function - * call is implemented, just assume a 500 mhz clock. It doesn't really - * matter if we take too long for a compare since it's all interrupt - * driven anyway. - * - * use a extra long time.. (60 us @ 500 mhz) + /* Restart thermal sensor comparisons and interrupts. + * The "PowerPC 740 and PowerPC 750 Microprocessor Datasheet" + * recommends that "the maximum value be set in THRM3 under all + * conditions." */ - mtspr(SPRN_THRM3, THRM3_SITV(500*60) | THRM3_E); - - local_irq_restore(flags); + mtspr(SPRN_THRM3, THRM3_SITV(0x1fff) | THRM3_E); } -static void tau_timeout_smp(struct timer_list *unused) -{ +static struct workqueue_struct *tau_workq; - /* schedule ourselves to be run again */ - mod_timer(&tau_timer, jiffies + shrink_timer) ; +static void tau_work_func(struct work_struct *work) +{ + msleep(shrink_timer); on_each_cpu(tau_timeout, NULL, 0); + /* schedule ourselves to be run again */ + queue_work(tau_workq, work); } +DECLARE_WORK(tau_work, tau_work_func); + /* * setup the TAU * @@ -231,21 +200,19 @@ return 1; } + tau_int_enable = IS_ENABLED(CONFIG_TAU_INT) && + !strcmp(cur_cpu_spec->platform, "ppc750"); - /* first, set up the window shrinking timer */ - timer_setup(&tau_timer, tau_timeout_smp, 0); - tau_timer.expires = jiffies + shrink_timer; - add_timer(&tau_timer); + tau_workq = alloc_workqueue("tau", WQ_UNBOUND, 1, 0); + if (!tau_workq) + return -ENOMEM; on_each_cpu(TAU_init_smp, NULL, 0); - printk("Thermal assist unit "); -#ifdef CONFIG_TAU_INT - printk("using interrupts, "); -#else - printk("using timers, "); -#endif - printk("shrink_timer: %d jiffies\n", shrink_timer); + queue_work(tau_workq, &tau_work); + + pr_info("Thermal assist unit using %s, shrink_timer: %d ms\n", + tau_int_enable ? "interrupts" : "workqueue", shrink_timer); tau_initialized = 1; return 0; --- linux-azure-5.8-5.8.0.orig/arch/powerpc/kernel/time.c +++ linux-azure-5.8-5.8.0/arch/powerpc/kernel/time.c @@ -53,6 +53,7 @@ #include #include #include +#include #include #include @@ -1132,6 +1133,7 @@ tick_setup_hrtimer_broadcast(); of_clk_init(NULL); + enable_sched_clock_irqtime(); } /* --- linux-azure-5.8-5.8.0.orig/arch/powerpc/kernel/traps.c +++ linux-azure-5.8-5.8.0/arch/powerpc/kernel/traps.c @@ -889,7 +889,7 @@ { unsigned int ra, rb, t, i, sel, instr, rc; const void __user *addr; - u8 vbuf[16], *vdst; + u8 vbuf[16] __aligned(16), *vdst; unsigned long ea, msr, msr_mask; bool swap; --- linux-azure-5.8-5.8.0.orig/arch/powerpc/kernel/vdso.c +++ linux-azure-5.8-5.8.0/arch/powerpc/kernel/vdso.c @@ -677,7 +677,7 @@ node = cpu_to_node(cpu); WARN_ON_ONCE(node > 0xffff); - val = (cpu & 0xfff) | ((node & 0xffff) << 16); + val = (cpu & 0xffff) | ((node & 0xffff) << 16); mtspr(SPRN_SPRG_VDSO_WRITE, val); get_paca()->sprg_vdso = val; --- linux-azure-5.8-5.8.0.orig/arch/powerpc/kernel/vmlinux.lds.S +++ linux-azure-5.8-5.8.0/arch/powerpc/kernel/vmlinux.lds.S @@ -85,7 +85,7 @@ ALIGN_FUNCTION(); #endif /* careful! __ftr_alt_* sections need to be close to .text */ - *(.text.hot TEXT_MAIN .text.fixup .text.unlikely .fixup __ftr_alt_* .ref.text); + *(.text.hot .text.hot.* TEXT_MAIN .text.fixup .text.unlikely .text.unlikely.* .fixup __ftr_alt_* .ref.text); #ifdef CONFIG_PPC64 *(.tramp.ftrace.text); #endif @@ -132,6 +132,20 @@ } . = ALIGN(8); + __uaccess_flush_fixup : AT(ADDR(__uaccess_flush_fixup) - LOAD_OFFSET) { + __start___uaccess_flush_fixup = .; + *(__uaccess_flush_fixup) + __stop___uaccess_flush_fixup = .; + } + + . = ALIGN(8); + __entry_flush_fixup : AT(ADDR(__entry_flush_fixup) - LOAD_OFFSET) { + __start___entry_flush_fixup = .; + *(__entry_flush_fixup) + __stop___entry_flush_fixup = .; + } + + . = ALIGN(8); __stf_exit_barrier_fixup : AT(ADDR(__stf_exit_barrier_fixup) - LOAD_OFFSET) { __start___stf_exit_barrier_fixup = .; *(__stf_exit_barrier_fixup) @@ -173,6 +187,12 @@ .init.text : AT(ADDR(.init.text) - LOAD_OFFSET) { _sinittext = .; INIT_TEXT + + /* + *.init.text might be RO so we must ensure this section ends on + * a page boundary. + */ + . = ALIGN(PAGE_SIZE); _einittext = .; #ifdef CONFIG_PPC64 *(.tramp.ftrace.init); @@ -186,21 +206,9 @@ EXIT_TEXT } - .init.data : AT(ADDR(.init.data) - LOAD_OFFSET) { - INIT_DATA - } - - .init.setup : AT(ADDR(.init.setup) - LOAD_OFFSET) { - INIT_SETUP(16) - } - - .initcall.init : AT(ADDR(.initcall.init) - LOAD_OFFSET) { - INIT_CALLS - } + . = ALIGN(PAGE_SIZE); - .con_initcall.init : AT(ADDR(.con_initcall.init) - LOAD_OFFSET) { - CON_INITCALL - } + INIT_DATA_SECTION(16) . = ALIGN(8); __ftr_fixup : AT(ADDR(__ftr_fixup) - LOAD_OFFSET) { @@ -228,9 +236,6 @@ __stop___fw_ftr_fixup = .; } #endif - .init.ramfs : AT(ADDR(.init.ramfs) - LOAD_OFFSET) { - INIT_RAM_FS - } PERCPU_SECTION(L1_CACHE_BYTES) --- linux-azure-5.8-5.8.0.orig/arch/powerpc/kvm/book3s.c +++ linux-azure-5.8-5.8.0/arch/powerpc/kvm/book3s.c @@ -834,7 +834,8 @@ kvm->arch.kvm_ops->commit_memory_region(kvm, mem, old, new, change); } -int kvm_unmap_hva_range(struct kvm *kvm, unsigned long start, unsigned long end) +int kvm_unmap_hva_range(struct kvm *kvm, unsigned long start, unsigned long end, + unsigned flags) { return kvm->arch.kvm_ops->unmap_hva_range(kvm, start, end); } --- linux-azure-5.8-5.8.0.orig/arch/powerpc/kvm/book3s_hv.c +++ linux-azure-5.8-5.8.0/arch/powerpc/kvm/book3s_hv.c @@ -3485,6 +3485,13 @@ */ asm volatile("eieio; tlbsync; ptesync"); + /* + * cp_abort is required if the processor supports local copy-paste + * to clear the copy buffer that was under control of the guest. + */ + if (cpu_has_feature(CPU_FTR_ARCH_31)) + asm volatile(PPC_CP_ABORT); + mtspr(SPRN_LPID, vcpu->kvm->arch.host_lpid); /* restore host LPID */ isync(); @@ -5207,6 +5214,12 @@ case KVM_PPC_ALLOCATE_HTAB: { u32 htab_order; + /* If we're a nested hypervisor, we currently only support radix */ + if (kvmhv_on_pseries()) { + r = -EOPNOTSUPP; + break; + } + r = -EFAULT; if (get_user(htab_order, (u32 __user *)argp)) break; --- linux-azure-5.8-5.8.0.orig/arch/powerpc/kvm/book3s_hv_rmhandlers.S +++ linux-azure-5.8-5.8.0/arch/powerpc/kvm/book3s_hv_rmhandlers.S @@ -1831,6 +1831,14 @@ #endif /* CONFIG_PPC_RADIX_MMU */ /* + * cp_abort is required if the processor supports local copy-paste + * to clear the copy buffer that was under control of the guest. + */ +BEGIN_FTR_SECTION + PPC_CP_ABORT +END_FTR_SECTION_IFSET(CPU_FTR_ARCH_31) + + /* * POWER7/POWER8 guest -> host partition switch code. * We don't have to lock against tlbies but we do * have to coordinate the hardware threads. --- linux-azure-5.8-5.8.0.orig/arch/powerpc/kvm/book3s_xive.c +++ linux-azure-5.8-5.8.0/arch/powerpc/kvm/book3s_xive.c @@ -1214,12 +1214,9 @@ static bool kvmppc_xive_vcpu_id_valid(struct kvmppc_xive *xive, u32 cpu) { /* We have a block of xive->nr_servers VPs. We just need to check - * raw vCPU ids are below the expected limit for this guest's - * core stride ; kvmppc_pack_vcpu_id() will pack them down to an - * index that can be safely used to compute a VP id that belongs - * to the VP block. + * packed vCPU ids are below that. */ - return cpu < xive->nr_servers * xive->kvm->arch.emul_smt_mode; + return kvmppc_pack_vcpu_id(xive->kvm, cpu) < xive->nr_servers; } int kvmppc_xive_compute_vp_id(struct kvmppc_xive *xive, u32 cpu, u32 *vp) --- linux-azure-5.8-5.8.0.orig/arch/powerpc/kvm/book3s_xive_native.c +++ linux-azure-5.8-5.8.0/arch/powerpc/kvm/book3s_xive_native.c @@ -251,6 +251,13 @@ } state = &sb->irq_state[src]; + + /* Some sanity checking */ + if (!state->valid) { + pr_devel("%s: source %lx invalid !\n", __func__, irq); + return VM_FAULT_SIGBUS; + } + kvmppc_xive_select_irq(state, &hw_num, &xd); arch_spin_lock(&sb->lock); --- linux-azure-5.8-5.8.0.orig/arch/powerpc/kvm/e500_mmu_host.c +++ linux-azure-5.8-5.8.0/arch/powerpc/kvm/e500_mmu_host.c @@ -734,7 +734,8 @@ return 0; } -int kvm_unmap_hva_range(struct kvm *kvm, unsigned long start, unsigned long end) +int kvm_unmap_hva_range(struct kvm *kvm, unsigned long start, unsigned long end, + unsigned flags) { /* kvm_unmap_hva flushes everything anyways */ kvm_unmap_hva(kvm, start); --- linux-azure-5.8-5.8.0.orig/arch/powerpc/kvm/powerpc.c +++ linux-azure-5.8-5.8.0/arch/powerpc/kvm/powerpc.c @@ -1515,7 +1515,7 @@ return emulated; } -int kvmppc_get_vmx_dword(struct kvm_vcpu *vcpu, int index, u64 *val) +static int kvmppc_get_vmx_dword(struct kvm_vcpu *vcpu, int index, u64 *val) { union kvmppc_one_reg reg; int vmx_offset = 0; @@ -1533,7 +1533,7 @@ return result; } -int kvmppc_get_vmx_word(struct kvm_vcpu *vcpu, int index, u64 *val) +static int kvmppc_get_vmx_word(struct kvm_vcpu *vcpu, int index, u64 *val) { union kvmppc_one_reg reg; int vmx_offset = 0; @@ -1551,7 +1551,7 @@ return result; } -int kvmppc_get_vmx_hword(struct kvm_vcpu *vcpu, int index, u64 *val) +static int kvmppc_get_vmx_hword(struct kvm_vcpu *vcpu, int index, u64 *val) { union kvmppc_one_reg reg; int vmx_offset = 0; @@ -1569,7 +1569,7 @@ return result; } -int kvmppc_get_vmx_byte(struct kvm_vcpu *vcpu, int index, u64 *val) +static int kvmppc_get_vmx_byte(struct kvm_vcpu *vcpu, int index, u64 *val) { union kvmppc_one_reg reg; int vmx_offset = 0; --- linux-azure-5.8-5.8.0.orig/arch/powerpc/lib/Makefile +++ linux-azure-5.8-5.8.0/arch/powerpc/lib/Makefile @@ -39,7 +39,7 @@ memcpy_power7.o obj64-y += copypage_64.o copyuser_64.o mem_64.o hweight_64.o \ - memcpy_64.o memcpy_mcsafe_64.o + memcpy_64.o copy_mc_64.o obj64-$(CONFIG_SMP) += locks.o obj64-$(CONFIG_ALTIVEC) += vmx-helper.o --- linux-azure-5.8-5.8.0.orig/arch/powerpc/lib/copy_mc_64.S +++ linux-azure-5.8-5.8.0/arch/powerpc/lib/copy_mc_64.S @@ -0,0 +1,242 @@ +/* SPDX-License-Identifier: GPL-2.0 */ +/* + * Copyright (C) IBM Corporation, 2011 + * Derived from copyuser_power7.s by Anton Blanchard + * Author - Balbir Singh + */ +#include +#include +#include + + .macro err1 +100: + EX_TABLE(100b,.Ldo_err1) + .endm + + .macro err2 +200: + EX_TABLE(200b,.Ldo_err2) + .endm + + .macro err3 +300: EX_TABLE(300b,.Ldone) + .endm + +.Ldo_err2: + ld r22,STK_REG(R22)(r1) + ld r21,STK_REG(R21)(r1) + ld r20,STK_REG(R20)(r1) + ld r19,STK_REG(R19)(r1) + ld r18,STK_REG(R18)(r1) + ld r17,STK_REG(R17)(r1) + ld r16,STK_REG(R16)(r1) + ld r15,STK_REG(R15)(r1) + ld r14,STK_REG(R14)(r1) + addi r1,r1,STACKFRAMESIZE +.Ldo_err1: + /* Do a byte by byte copy to get the exact remaining size */ + mtctr r7 +46: +err3; lbz r0,0(r4) + addi r4,r4,1 +err3; stb r0,0(r3) + addi r3,r3,1 + bdnz 46b + li r3,0 + blr + +.Ldone: + mfctr r3 + blr + + +_GLOBAL(copy_mc_generic) + mr r7,r5 + cmpldi r5,16 + blt .Lshort_copy + +.Lcopy: + /* Get the source 8B aligned */ + neg r6,r4 + mtocrf 0x01,r6 + clrldi r6,r6,(64-3) + + bf cr7*4+3,1f +err1; lbz r0,0(r4) + addi r4,r4,1 +err1; stb r0,0(r3) + addi r3,r3,1 + subi r7,r7,1 + +1: bf cr7*4+2,2f +err1; lhz r0,0(r4) + addi r4,r4,2 +err1; sth r0,0(r3) + addi r3,r3,2 + subi r7,r7,2 + +2: bf cr7*4+1,3f +err1; lwz r0,0(r4) + addi r4,r4,4 +err1; stw r0,0(r3) + addi r3,r3,4 + subi r7,r7,4 + +3: sub r5,r5,r6 + cmpldi r5,128 + + mflr r0 + stdu r1,-STACKFRAMESIZE(r1) + std r14,STK_REG(R14)(r1) + std r15,STK_REG(R15)(r1) + std r16,STK_REG(R16)(r1) + std r17,STK_REG(R17)(r1) + std r18,STK_REG(R18)(r1) + std r19,STK_REG(R19)(r1) + std r20,STK_REG(R20)(r1) + std r21,STK_REG(R21)(r1) + std r22,STK_REG(R22)(r1) + std r0,STACKFRAMESIZE+16(r1) + + blt 5f + srdi r6,r5,7 + mtctr r6 + + /* Now do cacheline (128B) sized loads and stores. */ + .align 5 +4: +err2; ld r0,0(r4) +err2; ld r6,8(r4) +err2; ld r8,16(r4) +err2; ld r9,24(r4) +err2; ld r10,32(r4) +err2; ld r11,40(r4) +err2; ld r12,48(r4) +err2; ld r14,56(r4) +err2; ld r15,64(r4) +err2; ld r16,72(r4) +err2; ld r17,80(r4) +err2; ld r18,88(r4) +err2; ld r19,96(r4) +err2; ld r20,104(r4) +err2; ld r21,112(r4) +err2; ld r22,120(r4) + addi r4,r4,128 +err2; std r0,0(r3) +err2; std r6,8(r3) +err2; std r8,16(r3) +err2; std r9,24(r3) +err2; std r10,32(r3) +err2; std r11,40(r3) +err2; std r12,48(r3) +err2; std r14,56(r3) +err2; std r15,64(r3) +err2; std r16,72(r3) +err2; std r17,80(r3) +err2; std r18,88(r3) +err2; std r19,96(r3) +err2; std r20,104(r3) +err2; std r21,112(r3) +err2; std r22,120(r3) + addi r3,r3,128 + subi r7,r7,128 + bdnz 4b + + clrldi r5,r5,(64-7) + + /* Up to 127B to go */ +5: srdi r6,r5,4 + mtocrf 0x01,r6 + +6: bf cr7*4+1,7f +err2; ld r0,0(r4) +err2; ld r6,8(r4) +err2; ld r8,16(r4) +err2; ld r9,24(r4) +err2; ld r10,32(r4) +err2; ld r11,40(r4) +err2; ld r12,48(r4) +err2; ld r14,56(r4) + addi r4,r4,64 +err2; std r0,0(r3) +err2; std r6,8(r3) +err2; std r8,16(r3) +err2; std r9,24(r3) +err2; std r10,32(r3) +err2; std r11,40(r3) +err2; std r12,48(r3) +err2; std r14,56(r3) + addi r3,r3,64 + subi r7,r7,64 + +7: ld r14,STK_REG(R14)(r1) + ld r15,STK_REG(R15)(r1) + ld r16,STK_REG(R16)(r1) + ld r17,STK_REG(R17)(r1) + ld r18,STK_REG(R18)(r1) + ld r19,STK_REG(R19)(r1) + ld r20,STK_REG(R20)(r1) + ld r21,STK_REG(R21)(r1) + ld r22,STK_REG(R22)(r1) + addi r1,r1,STACKFRAMESIZE + + /* Up to 63B to go */ + bf cr7*4+2,8f +err1; ld r0,0(r4) +err1; ld r6,8(r4) +err1; ld r8,16(r4) +err1; ld r9,24(r4) + addi r4,r4,32 +err1; std r0,0(r3) +err1; std r6,8(r3) +err1; std r8,16(r3) +err1; std r9,24(r3) + addi r3,r3,32 + subi r7,r7,32 + + /* Up to 31B to go */ +8: bf cr7*4+3,9f +err1; ld r0,0(r4) +err1; ld r6,8(r4) + addi r4,r4,16 +err1; std r0,0(r3) +err1; std r6,8(r3) + addi r3,r3,16 + subi r7,r7,16 + +9: clrldi r5,r5,(64-4) + + /* Up to 15B to go */ +.Lshort_copy: + mtocrf 0x01,r5 + bf cr7*4+0,12f +err1; lwz r0,0(r4) /* Less chance of a reject with word ops */ +err1; lwz r6,4(r4) + addi r4,r4,8 +err1; stw r0,0(r3) +err1; stw r6,4(r3) + addi r3,r3,8 + subi r7,r7,8 + +12: bf cr7*4+1,13f +err1; lwz r0,0(r4) + addi r4,r4,4 +err1; stw r0,0(r3) + addi r3,r3,4 + subi r7,r7,4 + +13: bf cr7*4+2,14f +err1; lhz r0,0(r4) + addi r4,r4,2 +err1; sth r0,0(r3) + addi r3,r3,2 + subi r7,r7,2 + +14: bf cr7*4+3,15f +err1; lbz r0,0(r4) +err1; stb r0,0(r3) + +15: li r3,0 + blr + +EXPORT_SYMBOL_GPL(copy_mc_generic); --- linux-azure-5.8-5.8.0.orig/arch/powerpc/lib/feature-fixups.c +++ linux-azure-5.8-5.8.0/arch/powerpc/lib/feature-fixups.c @@ -234,6 +234,110 @@ do_stf_exit_barrier_fixups(types); } +void do_uaccess_flush_fixups(enum l1d_flush_type types) +{ + unsigned int instrs[4], *dest; + long *start, *end; + int i; + + start = PTRRELOC(&__start___uaccess_flush_fixup); + end = PTRRELOC(&__stop___uaccess_flush_fixup); + + instrs[0] = 0x60000000; /* nop */ + instrs[1] = 0x60000000; /* nop */ + instrs[2] = 0x60000000; /* nop */ + instrs[3] = 0x4e800020; /* blr */ + + i = 0; + if (types == L1D_FLUSH_FALLBACK) { + instrs[3] = 0x60000000; /* nop */ + /* fallthrough to fallback flush */ + } + + if (types & L1D_FLUSH_ORI) { + instrs[i++] = 0x63ff0000; /* ori 31,31,0 speculation barrier */ + instrs[i++] = 0x63de0000; /* ori 30,30,0 L1d flush*/ + } + + if (types & L1D_FLUSH_MTTRIG) + instrs[i++] = 0x7c12dba6; /* mtspr TRIG2,r0 (SPR #882) */ + + for (i = 0; start < end; start++, i++) { + dest = (void *)start + *start; + + pr_devel("patching dest %lx\n", (unsigned long)dest); + + patch_instruction((struct ppc_inst *)dest, ppc_inst(instrs[0])); + + patch_instruction((struct ppc_inst *)(dest + 1), ppc_inst(instrs[1])); + patch_instruction((struct ppc_inst *)(dest + 2), ppc_inst(instrs[2])); + patch_instruction((struct ppc_inst *)(dest + 3), ppc_inst(instrs[3])); + } + + printk(KERN_DEBUG "uaccess-flush: patched %d locations (%s flush)\n", i, + (types == L1D_FLUSH_NONE) ? "no" : + (types == L1D_FLUSH_FALLBACK) ? "fallback displacement" : + (types & L1D_FLUSH_ORI) ? (types & L1D_FLUSH_MTTRIG) + ? "ori+mttrig type" + : "ori type" : + (types & L1D_FLUSH_MTTRIG) ? "mttrig type" + : "unknown"); +} + +void do_entry_flush_fixups(enum l1d_flush_type types) +{ + unsigned int instrs[3], *dest; + long *start, *end; + int i; + + start = PTRRELOC(&__start___entry_flush_fixup); + end = PTRRELOC(&__stop___entry_flush_fixup); + + instrs[0] = 0x60000000; /* nop */ + instrs[1] = 0x60000000; /* nop */ + instrs[2] = 0x60000000; /* nop */ + + i = 0; + if (types == L1D_FLUSH_FALLBACK) { + instrs[i++] = 0x7d4802a6; /* mflr r10 */ + instrs[i++] = 0x60000000; /* branch patched below */ + instrs[i++] = 0x7d4803a6; /* mtlr r10 */ + } + + if (types & L1D_FLUSH_ORI) { + instrs[i++] = 0x63ff0000; /* ori 31,31,0 speculation barrier */ + instrs[i++] = 0x63de0000; /* ori 30,30,0 L1d flush*/ + } + + if (types & L1D_FLUSH_MTTRIG) + instrs[i++] = 0x7c12dba6; /* mtspr TRIG2,r0 (SPR #882) */ + + for (i = 0; start < end; start++, i++) { + dest = (void *)start + *start; + + pr_devel("patching dest %lx\n", (unsigned long)dest); + + patch_instruction((struct ppc_inst *)dest, ppc_inst(instrs[0])); + + if (types == L1D_FLUSH_FALLBACK) + patch_branch((struct ppc_inst *)(dest + 1), (unsigned long)&entry_flush_fallback, + BRANCH_SET_LINK); + else + patch_instruction((struct ppc_inst *)(dest + 1), ppc_inst(instrs[1])); + + patch_instruction((struct ppc_inst *)(dest + 2), ppc_inst(instrs[2])); + } + + printk(KERN_DEBUG "entry-flush: patched %d locations (%s flush)\n", i, + (types == L1D_FLUSH_NONE) ? "no" : + (types == L1D_FLUSH_FALLBACK) ? "fallback displacement" : + (types & L1D_FLUSH_ORI) ? (types & L1D_FLUSH_MTTRIG) + ? "ori+mttrig type" + : "ori type" : + (types & L1D_FLUSH_MTTRIG) ? "mttrig type" + : "unknown"); +} + void do_rfi_flush_fixups(enum l1d_flush_type types) { unsigned int instrs[3], *dest; --- linux-azure-5.8-5.8.0.orig/arch/powerpc/lib/sstep.c +++ linux-azure-5.8-5.8.0/arch/powerpc/lib/sstep.c @@ -8,6 +8,7 @@ #include #include #include +#include #include #include #include @@ -1339,6 +1340,9 @@ switch (opcode) { #ifdef __powerpc64__ case 1: + if (!cpu_has_feature(CPU_FTR_ARCH_31)) + return -1; + prefix_r = word & (1ul << 20); ra = (suffix >> 16) & 0x1f; rd = (suffix >> 21) & 0x1f; @@ -2715,6 +2719,9 @@ } break; case 1: /* Prefixed instructions */ + if (!cpu_has_feature(CPU_FTR_ARCH_31)) + return -1; + prefix_r = word & (1ul << 20); ra = (suffix >> 16) & 0x1f; op->update_reg = ra; @@ -2733,6 +2740,7 @@ case 41: /* plwa */ op->type = MKOP(LOAD, PREFIXED | SIGNEXT, 4); break; +#ifdef CONFIG_VSX case 42: /* plxsd */ op->reg = rd + 32; op->type = MKOP(LOAD_VSX, PREFIXED, 8); @@ -2773,13 +2781,14 @@ op->element_size = 16; op->vsx_flags = VSX_CHECK_VEC; break; +#endif /* CONFIG_VSX */ case 56: /* plq */ op->type = MKOP(LOAD, PREFIXED, 16); break; case 57: /* pld */ op->type = MKOP(LOAD, PREFIXED, 8); break; - case 60: /* stq */ + case 60: /* pstq */ op->type = MKOP(STORE, PREFIXED, 16); break; case 61: /* pstd */ --- linux-azure-5.8-5.8.0.orig/arch/powerpc/mm/book3s64/hash_native.c +++ linux-azure-5.8-5.8.0/arch/powerpc/mm/book3s64/hash_native.c @@ -68,7 +68,7 @@ rs = ((unsigned long)pid << PPC_BITLSHIFT(31)); asm volatile(PPC_TLBIEL(%0, %1, %2, %3, %4) - : : "r"(rb), "r"(rs), "i"(ric), "i"(prs), "r"(r) + : : "r"(rb), "r"(rs), "i"(ric), "i"(prs), "i"(r) : "memory"); } --- linux-azure-5.8-5.8.0.orig/arch/powerpc/mm/book3s64/hash_utils.c +++ linux-azure-5.8-5.8.0/arch/powerpc/mm/book3s64/hash_utils.c @@ -663,11 +663,10 @@ * Pick a size for the linear mapping. Currently, we only * support 16M, 1M and 4K which is the default */ - if (IS_ENABLED(STRICT_KERNEL_RWX) && + if (IS_ENABLED(CONFIG_STRICT_KERNEL_RWX) && (unsigned long)_stext % 0x1000000) { if (mmu_psize_defs[MMU_PAGE_16M].shift) - pr_warn("Kernel not 16M aligned, " - "disabling 16M linear map alignment"); + pr_warn("Kernel not 16M aligned, disabling 16M linear map alignment\n"); aligned = false; } --- linux-azure-5.8-5.8.0.orig/arch/powerpc/mm/book3s64/pkeys.c +++ linux-azure-5.8-5.8.0/arch/powerpc/mm/book3s64/pkeys.c @@ -83,13 +83,17 @@ scan_pkey_feature(); /* - * Let's assume 32 pkeys on P8 bare metal, if its not defined by device - * tree. We make this exception since skiboot forgot to expose this - * property on power8. + * Let's assume 32 pkeys on P8/P9 bare metal, if its not defined by device + * tree. We make this exception since some version of skiboot forgot to + * expose this property on power8/9. */ - if (!pkeys_devtree_defined && !firmware_has_feature(FW_FEATURE_LPAR) && - cpu_has_feature(CPU_FTRS_POWER8)) - pkeys_total = 32; + if (!pkeys_devtree_defined && !firmware_has_feature(FW_FEATURE_LPAR)) { + unsigned long pvr = mfspr(SPRN_PVR); + + if (PVR_VER(pvr) == PVR_POWER8 || PVR_VER(pvr) == PVR_POWER8E || + PVR_VER(pvr) == PVR_POWER8NVL || PVR_VER(pvr) == PVR_POWER9) + pkeys_total = 32; + } /* * Adjust the upper limit, based on the number of bits supported by --- linux-azure-5.8-5.8.0.orig/arch/powerpc/mm/book3s64/radix_pgtable.c +++ linux-azure-5.8-5.8.0/arch/powerpc/mm/book3s64/radix_pgtable.c @@ -654,21 +654,6 @@ } } -void radix__setup_initial_memory_limit(phys_addr_t first_memblock_base, - phys_addr_t first_memblock_size) -{ - /* - * We don't currently support the first MEMBLOCK not mapping 0 - * physical on those processors - */ - BUG_ON(first_memblock_base != 0); - - /* - * Radix mode is not limited by RMA / VRMA addressing. - */ - ppc64_rma_size = ULONG_MAX; -} - #ifdef CONFIG_MEMORY_HOTPLUG static void free_pte_table(pte_t *pte_start, pmd_t *pmd) { @@ -700,6 +685,21 @@ pud_clear(pud); } +static void free_pud_table(pud_t *pud_start, p4d_t *p4d) +{ + pud_t *pud; + int i; + + for (i = 0; i < PTRS_PER_PUD; i++) { + pud = pud_start + i; + if (!pud_none(*pud)) + return; + } + + pud_free(&init_mm, pud_start); + p4d_clear(p4d); +} + struct change_mapping_params { pte_t *pte; unsigned long start; @@ -874,6 +874,7 @@ pud_base = (pud_t *)p4d_page_vaddr(*p4d); remove_pud_table(pud_base, addr, next); + free_pud_table(pud_base, p4d); } spin_unlock(&init_mm.page_table_lock); --- linux-azure-5.8-5.8.0.orig/arch/powerpc/mm/book3s64/radix_tlb.c +++ linux-azure-5.8-5.8.0/arch/powerpc/mm/book3s64/radix_tlb.c @@ -644,19 +644,29 @@ struct mm_struct *mm = arg; unsigned long pid = mm->context.id; + /* + * A kthread could have done a mmget_not_zero() after the flushing CPU + * checked mm_is_singlethreaded, and be in the process of + * kthread_use_mm when interrupted here. In that case, current->mm will + * be set to mm, because kthread_use_mm() setting ->mm and switching to + * the mm is done with interrupts off. + */ if (current->mm == mm) - return; /* Local CPU */ + goto out_flush; if (current->active_mm == mm) { - /* - * Must be a kernel thread because sender is single-threaded. - */ - BUG_ON(current->mm); + WARN_ON_ONCE(current->mm != NULL); + /* Is a kernel thread and is using mm as the lazy tlb */ mmgrab(&init_mm); - switch_mm(mm, &init_mm, current); current->active_mm = &init_mm; + switch_mm_irqs_off(mm, &init_mm, current); mmdrop(mm); } + + atomic_dec(&mm->context.active_cpus); + cpumask_clear_cpu(smp_processor_id(), mm_cpumask(mm)); + +out_flush: _tlbiel_pid(pid, RIC_FLUSH_ALL); } @@ -671,7 +681,6 @@ */ smp_call_function_many(mm_cpumask(mm), do_exit_flush_lazy_tlb, (void *)mm, 1); - mm_reset_thread_local(mm); } void radix__flush_tlb_mm(struct mm_struct *mm) --- linux-azure-5.8-5.8.0.orig/arch/powerpc/mm/drmem.c +++ linux-azure-5.8-5.8.0/arch/powerpc/mm/drmem.c @@ -362,10 +362,8 @@ if (!drmem_info->lmbs) return; - for_each_drmem_lmb(lmb) { + for_each_drmem_lmb(lmb) read_drconf_v1_cell(lmb, &prop); - lmb_set_nid(lmb); - } } static void __init init_drmem_v2_lmbs(const __be32 *prop) @@ -410,8 +408,6 @@ lmb->aa_index = dr_cell.aa_index; lmb->flags = dr_cell.flags; - - lmb_set_nid(lmb); } } } --- linux-azure-5.8-5.8.0.orig/arch/powerpc/mm/fault.c +++ linux-azure-5.8-5.8.0/arch/powerpc/mm/fault.c @@ -267,6 +267,9 @@ return false; } +// This comes from 64-bit struct rt_sigframe + __SIGNAL_FRAMESIZE +#define SIGFRAME_MAX_SIZE (4096 + 128) + static bool bad_stack_expansion(struct pt_regs *regs, unsigned long address, struct vm_area_struct *vma, unsigned int flags, bool *must_retry) @@ -274,7 +277,7 @@ /* * N.B. The POWER/Open ABI allows programs to access up to * 288 bytes below the stack pointer. - * The kernel signal delivery code writes up to about 1.5kB + * The kernel signal delivery code writes a bit over 4KB * below the stack pointer (r1) before decrementing it. * The exec code can write slightly over 640kB to the stack * before setting the user r1. Thus we allow the stack to @@ -299,7 +302,7 @@ * between the last mapped region and the stack will * expand the stack rather than segfaulting. */ - if (address + 2048 >= uregs->gpr[1]) + if (address + SIGFRAME_MAX_SIZE >= uregs->gpr[1]) return false; if ((flags & FAULT_FLAG_WRITE) && (flags & FAULT_FLAG_USER) && @@ -383,7 +386,6 @@ static inline void cmo_account_page_fault(void) { } #endif /* CONFIG_PPC_SMLPAR */ -#ifdef CONFIG_PPC_BOOK3S static void sanity_check_fault(bool is_write, bool is_user, unsigned long error_code, unsigned long address) { @@ -400,6 +402,9 @@ return; } + if (!IS_ENABLED(CONFIG_PPC_BOOK3S)) + return; + /* * For hash translation mode, we should never get a * PROTFAULT. Any update to pte to reduce access will result in us @@ -434,10 +439,6 @@ WARN_ON_ONCE(error_code & DSISR_PROTFAULT); } -#else -static void sanity_check_fault(bool is_write, bool is_user, - unsigned long error_code, unsigned long address) { } -#endif /* CONFIG_PPC_BOOK3S */ /* * Define the correct "is_write" bit in error_code based --- linux-azure-5.8-5.8.0.orig/arch/powerpc/mm/hugetlbpage.c +++ linux-azure-5.8-5.8.0/arch/powerpc/mm/hugetlbpage.c @@ -330,10 +330,24 @@ get_hugepd_cache_index(pdshift - shift)); } -static void hugetlb_free_pte_range(struct mmu_gather *tlb, pmd_t *pmd, unsigned long addr) +static void hugetlb_free_pte_range(struct mmu_gather *tlb, pmd_t *pmd, + unsigned long addr, unsigned long end, + unsigned long floor, unsigned long ceiling) { + unsigned long start = addr; pgtable_t token = pmd_pgtable(*pmd); + start &= PMD_MASK; + if (start < floor) + return; + if (ceiling) { + ceiling &= PMD_MASK; + if (!ceiling) + return; + } + if (end - 1 > ceiling - 1) + return; + pmd_clear(pmd); pte_free_tlb(tlb, token, addr); mm_dec_nr_ptes(tlb->mm); @@ -363,7 +377,7 @@ */ WARN_ON(!IS_ENABLED(CONFIG_PPC_8xx)); - hugetlb_free_pte_range(tlb, pmd, addr); + hugetlb_free_pte_range(tlb, pmd, addr, end, floor, ceiling); continue; } --- linux-azure-5.8-5.8.0.orig/arch/powerpc/mm/init_32.c +++ linux-azure-5.8-5.8.0/arch/powerpc/mm/init_32.c @@ -171,6 +171,8 @@ btext_unmap(); #endif + kasan_mmu_init(); + setup_kup(); /* Shortly after that, the entire linear mapping will be available */ --- linux-azure-5.8-5.8.0.orig/arch/powerpc/mm/init_64.c +++ linux-azure-5.8-5.8.0/arch/powerpc/mm/init_64.c @@ -162,16 +162,16 @@ return next++; } -static __meminit void vmemmap_list_populate(unsigned long phys, - unsigned long start, - int node) +static __meminit int vmemmap_list_populate(unsigned long phys, + unsigned long start, + int node) { struct vmemmap_backing *vmem_back; vmem_back = vmemmap_list_alloc(node); if (unlikely(!vmem_back)) { - WARN_ON(1); - return; + pr_debug("vmemap list allocation failed\n"); + return -ENOMEM; } vmem_back->phys = phys; @@ -179,6 +179,7 @@ vmem_back->list = vmemmap_list; vmemmap_list = vmem_back; + return 0; } static bool altmap_cross_boundary(struct vmem_altmap *altmap, unsigned long start, @@ -199,6 +200,7 @@ int __meminit vmemmap_populate(unsigned long start, unsigned long end, int node, struct vmem_altmap *altmap) { + bool altmap_alloc; unsigned long page_size = 1 << mmu_psize_defs[mmu_vmemmap_psize].shift; /* Align to the page size of the linear mapping. */ @@ -228,13 +230,32 @@ p = altmap_alloc_block_buf(page_size, altmap); if (!p) pr_debug("altmap block allocation failed, falling back to system memory"); + else + altmap_alloc = true; } - if (!p) + if (!p) { p = vmemmap_alloc_block_buf(page_size, node); + altmap_alloc = false; + } if (!p) return -ENOMEM; - vmemmap_list_populate(__pa(p), start, node); + if (vmemmap_list_populate(__pa(p), start, node)) { + /* + * If we don't populate vmemap list, we don't have + * the ability to free the allocated vmemmap + * pages in section_deactivate. Hence free them + * here. + */ + int nr_pfns = page_size >> PAGE_SHIFT; + unsigned long page_order = get_order(page_size); + + if (altmap_alloc) + vmem_altmap_free(altmap, nr_pfns); + else + free_pages((unsigned long)p, page_order); + return -ENOMEM; + } pr_debug(" * %016lx..%016lx allocated at %p\n", start, start + page_size, p); @@ -431,9 +452,16 @@ if (!(mfmsr() & MSR_HV)) early_check_vec5(); - if (early_radix_enabled()) + if (early_radix_enabled()) { radix__early_init_devtree(); - else + /* + * We have finalized the translation we are going to use by now. + * Radix mode is not limited by RMA / VRMA addressing. + * Hence don't limit memblock allocations. + */ + ppc64_rma_size = ULONG_MAX; + memblock_set_current_limit(MEMBLOCK_ALLOC_ANYWHERE); + } else hash__early_init_devtree(); } #endif /* CONFIG_PPC_BOOK3S_64 */ --- linux-azure-5.8-5.8.0.orig/arch/powerpc/mm/kasan/kasan_init_32.c +++ linux-azure-5.8-5.8.0/arch/powerpc/mm/kasan/kasan_init_32.c @@ -117,10 +117,22 @@ kasan_update_early_region(k_start, k_end, __pte(0)); } -static void __init kasan_mmu_init(void) +void __init kasan_mmu_init(void) { int ret; + + if (early_mmu_has_feature(MMU_FTR_HPTE_TABLE)) { + ret = kasan_init_shadow_page_tables(KASAN_SHADOW_START, KASAN_SHADOW_END); + + if (ret) + panic("kasan: kasan_init_shadow_page_tables() failed"); + } +} + +void __init kasan_init(void) +{ struct memblock_region *reg; + int ret; for_each_memblock(memory, reg) { phys_addr_t base = reg->base; @@ -134,20 +146,13 @@ panic("kasan: kasan_init_region() failed"); } - if (early_mmu_has_feature(MMU_FTR_HPTE_TABLE) || - IS_ENABLED(CONFIG_KASAN_VMALLOC)) { + if (IS_ENABLED(CONFIG_KASAN_VMALLOC)) { ret = kasan_init_shadow_page_tables(KASAN_SHADOW_START, KASAN_SHADOW_END); if (ret) panic("kasan: kasan_init_shadow_page_tables() failed"); } -} - -void __init kasan_init(void) -{ - kasan_mmu_init(); - kasan_remap_early_shadow_ro(); clear_page(kasan_early_shadow_page); --- linux-azure-5.8-5.8.0.orig/arch/powerpc/mm/mem.c +++ linux-azure-5.8-5.8.0/arch/powerpc/mm/mem.c @@ -50,6 +50,7 @@ #include #include #include +#include #include @@ -290,7 +291,10 @@ * back to to-down. */ memblock_set_bottom_up(true); - swiotlb_init(0); + if (is_secure_guest()) + svm_swiotlb_init(); + else + swiotlb_init(0); #endif high_memory = (void *) __va(max_low_pfn * PAGE_SIZE); @@ -534,7 +538,7 @@ * space occurs, before returning to user space. */ - if (cpu_has_feature(MMU_FTR_TYPE_44x)) + if (mmu_has_feature(MMU_FTR_TYPE_44x)) return; invalidate_icache_range(addr, addr + PAGE_SIZE); --- linux-azure-5.8-5.8.0.orig/arch/powerpc/mm/ptdump/hashpagetable.c +++ linux-azure-5.8-5.8.0/arch/powerpc/mm/ptdump/hashpagetable.c @@ -258,7 +258,7 @@ for (i = 0; i < HPTES_PER_GROUP; i += 4, hpte_group += 4) { lpar_rc = plpar_pte_read_4(0, hpte_group, (void *)ptes); - if (lpar_rc != H_SUCCESS) + if (lpar_rc) continue; for (j = 0; j < 4; j++) { if (HPTE_V_COMPARE(ptes[j].v, want_v) && --- linux-azure-5.8-5.8.0.orig/arch/powerpc/perf/core-book3s.c +++ linux-azure-5.8-5.8.0/arch/powerpc/perf/core-book3s.c @@ -133,6 +133,9 @@ bool is_sier_available(void) { + if (!ppmu) + return false; + if (ppmu->flags & PPMU_HAS_SIER) return true; @@ -1517,9 +1520,16 @@ ret = 0; out: if (has_branch_stack(event)) { - power_pmu_bhrb_enable(event); - cpuhw->bhrb_filter = ppmu->bhrb_filter_map( - event->attr.branch_sample_type); + u64 bhrb_filter = -1; + + if (ppmu->bhrb_filter_map) + bhrb_filter = ppmu->bhrb_filter_map( + event->attr.branch_sample_type); + + if (bhrb_filter != -1) { + cpuhw->bhrb_filter = bhrb_filter; + power_pmu_bhrb_enable(event); + } } perf_pmu_enable(event->pmu); @@ -1841,7 +1851,6 @@ int n; int err; struct cpu_hw_events *cpuhw; - u64 bhrb_filter; if (!ppmu) return -ENOENT; @@ -1947,7 +1956,10 @@ err = power_check_constraints(cpuhw, events, cflags, n + 1); if (has_branch_stack(event)) { - bhrb_filter = ppmu->bhrb_filter_map( + u64 bhrb_filter = -1; + + if (ppmu->bhrb_filter_map) + bhrb_filter = ppmu->bhrb_filter_map( event->attr.branch_sample_type); if (bhrb_filter == -1) { @@ -2073,6 +2085,16 @@ perf_event_update_userpage(event); /* + * Due to hardware limitation, sometimes SIAR could sample a kernel + * address even when freeze on supervisor state (kernel) is set in + * MMCR2. Check attr.exclude_kernel and address to drop the sample in + * these cases. + */ + if (event->attr.exclude_kernel && record) + if (is_kernel_addr(mfspr(SPRN_SIAR))) + record = 0; + + /* * Finally record data if requested. */ if (record) { @@ -2101,6 +2123,10 @@ if (perf_event_overflow(event, &data, regs)) power_pmu_stop(event, 0); + } else if (period) { + /* Account for interrupt in case of invalid SIAR */ + if (perf_event_account_interrupt(event)) + power_pmu_stop(event, 0); } } --- linux-azure-5.8-5.8.0.orig/arch/powerpc/perf/hv-gpci-requests.h +++ linux-azure-5.8-5.8.0/arch/powerpc/perf/hv-gpci-requests.h @@ -95,7 +95,7 @@ #define REQUEST_NAME system_performance_capabilities #define REQUEST_NUM 0x40 -#define REQUEST_IDX_KIND "starting_index=0xffffffffffffffff" +#define REQUEST_IDX_KIND "starting_index=0xffffffff" #include I(REQUEST_BEGIN) REQUEST(__field(0, 1, perf_collect_privileged) __field(0x1, 1, capability_mask) @@ -223,7 +223,7 @@ #define REQUEST_NAME system_hypervisor_times #define REQUEST_NUM 0xF0 -#define REQUEST_IDX_KIND "starting_index=0xffffffffffffffff" +#define REQUEST_IDX_KIND "starting_index=0xffffffff" #include I(REQUEST_BEGIN) REQUEST(__count(0, 8, time_spent_to_dispatch_virtual_processors) __count(0x8, 8, time_spent_processing_virtual_processor_timers) @@ -234,7 +234,7 @@ #define REQUEST_NAME system_tlbie_count_and_time #define REQUEST_NUM 0xF4 -#define REQUEST_IDX_KIND "starting_index=0xffffffffffffffff" +#define REQUEST_IDX_KIND "starting_index=0xffffffff" #include I(REQUEST_BEGIN) REQUEST(__count(0, 8, tlbie_instructions_issued) /* --- linux-azure-5.8-5.8.0.orig/arch/powerpc/perf/isa207-common.c +++ linux-azure-5.8-5.8.0/arch/powerpc/perf/isa207-common.c @@ -233,6 +233,9 @@ u64 sier = mfspr(SPRN_SIER); u64 val = (sier & ISA207_SIER_TYPE_MASK) >> ISA207_SIER_TYPE_SHIFT; + if (cpu_has_feature(CPU_FTR_ARCH_31)) + mantissa = P10_MMCRA_THR_CTR_MANT(mmcra); + if (val == 0 || val == 7) *weight = 0; else @@ -269,6 +272,15 @@ mask |= CNST_PMC_MASK(pmc); value |= CNST_PMC_VAL(pmc); + + /* + * PMC5 and PMC6 are used to count cycles and instructions and + * they do not support most of the constraint bits. Add a check + * to exclude PMC5/6 from most of the constraints except for + * EBB/BHRB. + */ + if (pmc >= 5) + goto ebb_bhrb; } if (pmc <= 4) { @@ -313,7 +325,12 @@ value |= CNST_SAMPLE_VAL(event >> EVENT_SAMPLE_SHIFT); } - if (cpu_has_feature(CPU_FTR_ARCH_300)) { + if (cpu_has_feature(CPU_FTR_ARCH_31)) { + if (event_is_threshold(event)) { + mask |= CNST_THRESH_CTL_SEL_MASK; + value |= CNST_THRESH_CTL_SEL_VAL(event >> EVENT_THRESH_SHIFT); + } + } else if (cpu_has_feature(CPU_FTR_ARCH_300)) { if (event_is_threshold(event) && is_thresh_cmp_valid(event)) { mask |= CNST_THRESH_MASK; value |= CNST_THRESH_VAL(event >> EVENT_THRESH_SHIFT); @@ -335,6 +352,7 @@ } } +ebb_bhrb: if (!pmc && ebb) /* EBB events must specify the PMC */ return -1; --- linux-azure-5.8-5.8.0.orig/arch/powerpc/perf/isa207-common.h +++ linux-azure-5.8-5.8.0/arch/powerpc/perf/isa207-common.h @@ -118,6 +118,9 @@ #define CNST_THRESH_VAL(v) (((v) & EVENT_THRESH_MASK) << 32) #define CNST_THRESH_MASK CNST_THRESH_VAL(EVENT_THRESH_MASK) +#define CNST_THRESH_CTL_SEL_VAL(v) (((v) & 0x7ffull) << 32) +#define CNST_THRESH_CTL_SEL_MASK CNST_THRESH_CTL_SEL_VAL(0x7ff) + #define CNST_EBB_VAL(v) (((v) & EVENT_EBB_MASK) << 24) #define CNST_EBB_MASK CNST_EBB_VAL(EVENT_EBB_MASK) @@ -191,6 +194,10 @@ #define MMCRA_THR_CTR_EXP(v) (((v) >> MMCRA_THR_CTR_EXP_SHIFT) &\ MMCRA_THR_CTR_EXP_MASK) +#define P10_MMCRA_THR_CTR_MANT_MASK 0xFFul +#define P10_MMCRA_THR_CTR_MANT(v) (((v) >> MMCRA_THR_CTR_MANT_SHIFT) &\ + P10_MMCRA_THR_CTR_MANT_MASK) + /* MMCR1 Threshold Compare bit constant for power9 */ #define p9_MMCRA_THR_CMP_SHIFT 45 --- linux-azure-5.8-5.8.0.orig/arch/powerpc/platforms/8xx/micropatch.c +++ linux-azure-5.8-5.8.0/arch/powerpc/platforms/8xx/micropatch.c @@ -360,6 +360,17 @@ if (IS_ENABLED(CONFIG_SMC_UCODE_PATCH)) { smc_uart_t *smp; + if (IS_ENABLED(CONFIG_PPC_EARLY_DEBUG_CPM)) { + int i; + + for (i = 0; i < sizeof(*smp); i += 4) { + u32 __iomem *src = (u32 __iomem *)&cp->cp_dparam[PROFF_SMC1 + i]; + u32 __iomem *dst = (u32 __iomem *)&cp->cp_dparam[PROFF_DSP1 + i]; + + out_be32(dst, in_be32(src)); + } + } + smp = (smc_uart_t *)&cp->cp_dparam[PROFF_SMC1]; out_be16(&smp->smc_rpbase, 0x1ec0); smp = (smc_uart_t *)&cp->cp_dparam[PROFF_SMC2]; --- linux-azure-5.8-5.8.0.orig/arch/powerpc/platforms/Kconfig +++ linux-azure-5.8-5.8.0/arch/powerpc/platforms/Kconfig @@ -223,12 +223,11 @@ temperature within 2-4 degrees Celsius. This option shows the current on-die temperature in /proc/cpuinfo if the cpu supports it. - Unfortunately, on some chip revisions, this sensor is very inaccurate - and in many cases, does not work at all, so don't assume the cpu - temp is actually what /proc/cpuinfo says it is. + Unfortunately, this sensor is very inaccurate when uncalibrated, so + don't assume the cpu temp is actually what /proc/cpuinfo says it is. config TAU_INT - bool "Interrupt driven TAU driver (DANGEROUS)" + bool "Interrupt driven TAU driver (EXPERIMENTAL)" depends on TAU help The TAU supports an interrupt driven mode which causes an interrupt @@ -236,12 +235,7 @@ to get notified the temp has exceeded a range. With this option off, a timer is used to re-check the temperature periodically. - However, on some cpus it appears that the TAU interrupt hardware - is buggy and can cause a situation which would lead unexplained hard - lockups. - - Unless you are extending the TAU driver, or enjoy kernel/hardware - debugging, leave this option off. + If in doubt, say N here. config TAU_AVERAGE bool "Average high and low temp" --- linux-azure-5.8-5.8.0.orig/arch/powerpc/platforms/cell/Kconfig +++ linux-azure-5.8-5.8.0/arch/powerpc/platforms/cell/Kconfig @@ -44,6 +44,7 @@ tristate "SPU file system" default m depends on PPC_CELL + depends on COREDUMP select SPU_BASE help The SPU file system is used to access Synergistic Processing --- linux-azure-5.8-5.8.0.orig/arch/powerpc/platforms/cell/spufs/coredump.c +++ linux-azure-5.8-5.8.0/arch/powerpc/platforms/cell/spufs/coredump.c @@ -105,7 +105,7 @@ size_t sz = spufs_coredump_read[i].size; char fullname[80]; struct elf_note en; - size_t ret; + int ret; sprintf(fullname, "SPU/%d/%s", dfd, spufs_coredump_read[i].name); en.n_namesz = strlen(fullname) + 1; --- linux-azure-5.8-5.8.0.orig/arch/powerpc/platforms/powermac/sleep.S +++ linux-azure-5.8-5.8.0/arch/powerpc/platforms/powermac/sleep.S @@ -44,7 +44,8 @@ #define SL_TB 0xa0 #define SL_R2 0xa8 #define SL_CR 0xac -#define SL_R12 0xb0 /* r12 to r31 */ +#define SL_LR 0xb0 +#define SL_R12 0xb4 /* r12 to r31 */ #define SL_SIZE (SL_R12 + 80) .section .text @@ -63,105 +64,107 @@ blr #else mflr r0 - stw r0,4(r1) - stwu r1,-SL_SIZE(r1) + lis r11,sleep_storage@ha + addi r11,r11,sleep_storage@l + stw r0,SL_LR(r11) mfcr r0 - stw r0,SL_CR(r1) - stw r2,SL_R2(r1) - stmw r12,SL_R12(r1) + stw r0,SL_CR(r11) + stw r1,SL_SP(r11) + stw r2,SL_R2(r11) + stmw r12,SL_R12(r11) /* Save MSR & SDR1 */ mfmsr r4 - stw r4,SL_MSR(r1) + stw r4,SL_MSR(r11) mfsdr1 r4 - stw r4,SL_SDR1(r1) + stw r4,SL_SDR1(r11) /* Get a stable timebase and save it */ 1: mftbu r4 - stw r4,SL_TB(r1) + stw r4,SL_TB(r11) mftb r5 - stw r5,SL_TB+4(r1) + stw r5,SL_TB+4(r11) mftbu r3 cmpw r3,r4 bne 1b /* Save SPRGs */ mfsprg r4,0 - stw r4,SL_SPRG0(r1) + stw r4,SL_SPRG0(r11) mfsprg r4,1 - stw r4,SL_SPRG0+4(r1) + stw r4,SL_SPRG0+4(r11) mfsprg r4,2 - stw r4,SL_SPRG0+8(r1) + stw r4,SL_SPRG0+8(r11) mfsprg r4,3 - stw r4,SL_SPRG0+12(r1) + stw r4,SL_SPRG0+12(r11) /* Save BATs */ mfdbatu r4,0 - stw r4,SL_DBAT0(r1) + stw r4,SL_DBAT0(r11) mfdbatl r4,0 - stw r4,SL_DBAT0+4(r1) + stw r4,SL_DBAT0+4(r11) mfdbatu r4,1 - stw r4,SL_DBAT1(r1) + stw r4,SL_DBAT1(r11) mfdbatl r4,1 - stw r4,SL_DBAT1+4(r1) + stw r4,SL_DBAT1+4(r11) mfdbatu r4,2 - stw r4,SL_DBAT2(r1) + stw r4,SL_DBAT2(r11) mfdbatl r4,2 - stw r4,SL_DBAT2+4(r1) + stw r4,SL_DBAT2+4(r11) mfdbatu r4,3 - stw r4,SL_DBAT3(r1) + stw r4,SL_DBAT3(r11) mfdbatl r4,3 - stw r4,SL_DBAT3+4(r1) + stw r4,SL_DBAT3+4(r11) mfibatu r4,0 - stw r4,SL_IBAT0(r1) + stw r4,SL_IBAT0(r11) mfibatl r4,0 - stw r4,SL_IBAT0+4(r1) + stw r4,SL_IBAT0+4(r11) mfibatu r4,1 - stw r4,SL_IBAT1(r1) + stw r4,SL_IBAT1(r11) mfibatl r4,1 - stw r4,SL_IBAT1+4(r1) + stw r4,SL_IBAT1+4(r11) mfibatu r4,2 - stw r4,SL_IBAT2(r1) + stw r4,SL_IBAT2(r11) mfibatl r4,2 - stw r4,SL_IBAT2+4(r1) + stw r4,SL_IBAT2+4(r11) mfibatu r4,3 - stw r4,SL_IBAT3(r1) + stw r4,SL_IBAT3(r11) mfibatl r4,3 - stw r4,SL_IBAT3+4(r1) + stw r4,SL_IBAT3+4(r11) BEGIN_MMU_FTR_SECTION mfspr r4,SPRN_DBAT4U - stw r4,SL_DBAT4(r1) + stw r4,SL_DBAT4(r11) mfspr r4,SPRN_DBAT4L - stw r4,SL_DBAT4+4(r1) + stw r4,SL_DBAT4+4(r11) mfspr r4,SPRN_DBAT5U - stw r4,SL_DBAT5(r1) + stw r4,SL_DBAT5(r11) mfspr r4,SPRN_DBAT5L - stw r4,SL_DBAT5+4(r1) + stw r4,SL_DBAT5+4(r11) mfspr r4,SPRN_DBAT6U - stw r4,SL_DBAT6(r1) + stw r4,SL_DBAT6(r11) mfspr r4,SPRN_DBAT6L - stw r4,SL_DBAT6+4(r1) + stw r4,SL_DBAT6+4(r11) mfspr r4,SPRN_DBAT7U - stw r4,SL_DBAT7(r1) + stw r4,SL_DBAT7(r11) mfspr r4,SPRN_DBAT7L - stw r4,SL_DBAT7+4(r1) + stw r4,SL_DBAT7+4(r11) mfspr r4,SPRN_IBAT4U - stw r4,SL_IBAT4(r1) + stw r4,SL_IBAT4(r11) mfspr r4,SPRN_IBAT4L - stw r4,SL_IBAT4+4(r1) + stw r4,SL_IBAT4+4(r11) mfspr r4,SPRN_IBAT5U - stw r4,SL_IBAT5(r1) + stw r4,SL_IBAT5(r11) mfspr r4,SPRN_IBAT5L - stw r4,SL_IBAT5+4(r1) + stw r4,SL_IBAT5+4(r11) mfspr r4,SPRN_IBAT6U - stw r4,SL_IBAT6(r1) + stw r4,SL_IBAT6(r11) mfspr r4,SPRN_IBAT6L - stw r4,SL_IBAT6+4(r1) + stw r4,SL_IBAT6+4(r11) mfspr r4,SPRN_IBAT7U - stw r4,SL_IBAT7(r1) + stw r4,SL_IBAT7(r11) mfspr r4,SPRN_IBAT7L - stw r4,SL_IBAT7+4(r1) + stw r4,SL_IBAT7+4(r11) END_MMU_FTR_SECTION_IFSET(MMU_FTR_USE_HIGH_BATS) /* Backup various CPU config stuffs */ @@ -180,9 +183,9 @@ lis r5,grackle_wake_up@ha addi r5,r5,grackle_wake_up@l tophys(r5,r5) - stw r5,SL_PC(r1) + stw r5,SL_PC(r11) lis r4,KERNELBASE@h - tophys(r5,r1) + tophys(r5,r11) addi r5,r5,SL_PC lis r6,MAGIC@ha addi r6,r6,MAGIC@l @@ -194,12 +197,6 @@ tophys(r3,r3) stw r3,0x80(r4) stw r5,0x84(r4) - /* Store a pointer to our backup storage into - * a kernel global - */ - lis r3,sleep_storage@ha - addi r3,r3,sleep_storage@l - stw r5,0(r3) .globl low_cpu_die low_cpu_die: @@ -279,7 +276,7 @@ lis r3,sleep_storage@ha addi r3,r3,sleep_storage@l tophys(r3,r3) - lwz r1,0(r3) + addi r1,r3,SL_PC /* Pass thru to older resume code ... */ _ASM_NOKPROBE_SYMBOL(core99_wake_up) @@ -294,14 +291,7 @@ * we do any r1 memory access as we are not sure they * are in a sane state above the first 256Mb region */ - li r0,16 /* load up segment register values */ - mtctr r0 /* for context 0 */ - lis r3,0x2000 /* Ku = 1, VSID = 0 */ - li r4,0 -3: mtsrin r3,r4 - addi r3,r3,0x111 /* increment VSID */ - addis r4,r4,0x1000 /* address of next segment */ - bdnz 3b + bl load_segment_registers sync isync @@ -406,13 +396,6 @@ blt 1b sync - /* restore the MSR and turn on the MMU */ - lwz r3,SL_MSR(r1) - bl turn_on_mmu - - /* get back the stack pointer */ - tovirt(r1,r1) - /* Restore TB */ li r3,0 mttbl r3 @@ -426,28 +409,24 @@ mtcr r0 lwz r2,SL_R2(r1) lmw r12,SL_R12(r1) - addi r1,r1,SL_SIZE - lwz r0,4(r1) - mtlr r0 - blr -_ASM_NOKPROBE_SYMBOL(grackle_wake_up) -turn_on_mmu: - mflr r4 - tovirt(r4,r4) + /* restore the MSR and SP and turn on the MMU and return */ + lwz r3,SL_MSR(r1) + lwz r4,SL_LR(r1) + lwz r1,SL_SP(r1) mtsrr0 r4 mtsrr1 r3 sync isync rfi -_ASM_NOKPROBE_SYMBOL(turn_on_mmu) +_ASM_NOKPROBE_SYMBOL(grackle_wake_up) #endif /* defined(CONFIG_PM) || defined(CONFIG_CPU_FREQ) */ - .section .data + .section .bss .balign L1_CACHE_BYTES sleep_storage: - .long 0 + .space SL_SIZE .balign L1_CACHE_BYTES, 0 #endif /* CONFIG_PPC_BOOK3S_32 */ --- linux-azure-5.8-5.8.0.orig/arch/powerpc/platforms/powernv/memtrace.c +++ linux-azure-5.8-5.8.0/arch/powerpc/platforms/powernv/memtrace.c @@ -30,6 +30,7 @@ char name[16]; }; +static DEFINE_MUTEX(memtrace_mutex); static u64 memtrace_size; static struct memtrace_entry *memtrace_array; @@ -67,6 +68,23 @@ return 0; } +static void memtrace_clear_range(unsigned long start_pfn, + unsigned long nr_pages) +{ + unsigned long pfn; + + /* + * As pages are offline, we cannot trust the memmap anymore. As HIGHMEM + * does not apply, avoid passing around "struct page" and use + * clear_page() instead directly. + */ + for (pfn = start_pfn; pfn < start_pfn + nr_pages; pfn++) { + if (IS_ALIGNED(pfn, PAGES_PER_SECTION)) + cond_resched(); + clear_page(__va(PFN_PHYS(pfn))); + } +} + /* called with device_hotplug_lock held */ static bool memtrace_offline_pages(u32 nid, u64 start_pfn, u64 nr_pages) { @@ -112,6 +130,11 @@ for (base_pfn = end_pfn; base_pfn > start_pfn; base_pfn -= nr_pages) { if (memtrace_offline_pages(nid, base_pfn, nr_pages) == true) { /* + * Clear the range while we still have a linear + * mapping. + */ + memtrace_clear_range(base_pfn, nr_pages); + /* * Remove memory in memory block size chunks so that * iomem resources are always split to the same size and * we never try to remove memory that spans two iomem @@ -257,6 +280,7 @@ static int memtrace_enable_set(void *data, u64 val) { + int rc = -EAGAIN; u64 bytes; /* @@ -269,25 +293,31 @@ return -EINVAL; } + mutex_lock(&memtrace_mutex); + /* Re-add/online previously removed/offlined memory */ if (memtrace_size) { if (memtrace_online()) - return -EAGAIN; + goto out_unlock; } - if (!val) - return 0; + if (!val) { + rc = 0; + goto out_unlock; + } /* Offline and remove memory */ if (memtrace_init_regions_runtime(val)) - return -EINVAL; + goto out_unlock; if (memtrace_init_debugfs()) - return -EINVAL; + goto out_unlock; memtrace_size = val; - - return 0; + rc = 0; +out_unlock: + mutex_unlock(&memtrace_mutex); + return rc; } static int memtrace_enable_get(void *data, u64 *val) --- linux-azure-5.8-5.8.0.orig/arch/powerpc/platforms/powernv/npu-dma.c +++ linux-azure-5.8-5.8.0/arch/powerpc/platforms/powernv/npu-dma.c @@ -385,7 +385,8 @@ for (i = 0; i < npucomp->pe_num; ++i) { struct pnv_ioda_pe *pe = npucomp->pe[i]; - if (!pe->table_group.ops->take_ownership) + if (!pe->table_group.ops || + !pe->table_group.ops->take_ownership) continue; pe->table_group.ops->take_ownership(&pe->table_group); } @@ -401,7 +402,8 @@ for (i = 0; i < npucomp->pe_num; ++i) { struct pnv_ioda_pe *pe = npucomp->pe[i]; - if (!pe->table_group.ops->release_ownership) + if (!pe->table_group.ops || + !pe->table_group.ops->release_ownership) continue; pe->table_group.ops->release_ownership(&pe->table_group); } @@ -623,6 +625,11 @@ return -ENODEV; hose = pci_bus_to_host(npdev->bus); + if (hose->npu == NULL) { + dev_info_once(&npdev->dev, "Nvlink1 does not support contexts"); + return 0; + } + nphb = hose->private_data; dev_dbg(&gpdev->dev, "Map LPAR opalid=%llu lparid=%u\n", @@ -670,6 +677,11 @@ return -ENODEV; hose = pci_bus_to_host(npdev->bus); + if (hose->npu == NULL) { + dev_info_once(&npdev->dev, "Nvlink1 does not support contexts"); + return 0; + } + nphb = hose->private_data; dev_dbg(&gpdev->dev, "destroy context opalid=%llu\n", --- linux-azure-5.8-5.8.0.orig/arch/powerpc/platforms/powernv/opal-dump.c +++ linux-azure-5.8-5.8.0/arch/powerpc/platforms/powernv/opal-dump.c @@ -318,15 +318,14 @@ return count; } -static struct dump_obj *create_dump_obj(uint32_t id, size_t size, - uint32_t type) +static void create_dump_obj(uint32_t id, size_t size, uint32_t type) { struct dump_obj *dump; int rc; dump = kzalloc(sizeof(*dump), GFP_KERNEL); if (!dump) - return NULL; + return; dump->kobj.kset = dump_kset; @@ -346,21 +345,39 @@ rc = kobject_add(&dump->kobj, NULL, "0x%x-0x%x", type, id); if (rc) { kobject_put(&dump->kobj); - return NULL; + return; } + /* + * As soon as the sysfs file for this dump is created/activated there is + * a chance the opal_errd daemon (or any userspace) might read and + * acknowledge the dump before kobject_uevent() is called. If that + * happens then there is a potential race between + * dump_ack_store->kobject_put() and kobject_uevent() which leads to a + * use-after-free of a kernfs object resulting in a kernel crash. + * + * To avoid that, we need to take a reference on behalf of the bin file, + * so that our reference remains valid while we call kobject_uevent(). + * We then drop our reference before exiting the function, leaving the + * bin file to drop the last reference (if it hasn't already). + */ + + /* Take a reference for the bin file */ + kobject_get(&dump->kobj); rc = sysfs_create_bin_file(&dump->kobj, &dump->dump_attr); - if (rc) { + if (rc == 0) { + kobject_uevent(&dump->kobj, KOBJ_ADD); + + pr_info("%s: New platform dump. ID = 0x%x Size %u\n", + __func__, dump->id, dump->size); + } else { + /* Drop reference count taken for bin file */ kobject_put(&dump->kobj); - return NULL; } - pr_info("%s: New platform dump. ID = 0x%x Size %u\n", - __func__, dump->id, dump->size); - - kobject_uevent(&dump->kobj, KOBJ_ADD); - - return dump; + /* Drop our reference */ + kobject_put(&dump->kobj); + return; } static irqreturn_t process_dump(int irq, void *data) --- linux-azure-5.8-5.8.0.orig/arch/powerpc/platforms/powernv/opal-elog.c +++ linux-azure-5.8-5.8.0/arch/powerpc/platforms/powernv/opal-elog.c @@ -179,14 +179,14 @@ return count; } -static struct elog_obj *create_elog_obj(uint64_t id, size_t size, uint64_t type) +static void create_elog_obj(uint64_t id, size_t size, uint64_t type) { struct elog_obj *elog; int rc; elog = kzalloc(sizeof(*elog), GFP_KERNEL); if (!elog) - return NULL; + return; elog->kobj.kset = elog_kset; @@ -219,18 +219,37 @@ rc = kobject_add(&elog->kobj, NULL, "0x%llx", id); if (rc) { kobject_put(&elog->kobj); - return NULL; + return; } + /* + * As soon as the sysfs file for this elog is created/activated there is + * a chance the opal_errd daemon (or any userspace) might read and + * acknowledge the elog before kobject_uevent() is called. If that + * happens then there is a potential race between + * elog_ack_store->kobject_put() and kobject_uevent() which leads to a + * use-after-free of a kernfs object resulting in a kernel crash. + * + * To avoid that, we need to take a reference on behalf of the bin file, + * so that our reference remains valid while we call kobject_uevent(). + * We then drop our reference before exiting the function, leaving the + * bin file to drop the last reference (if it hasn't already). + */ + + /* Take a reference for the bin file */ + kobject_get(&elog->kobj); rc = sysfs_create_bin_file(&elog->kobj, &elog->raw_attr); - if (rc) { + if (rc == 0) { + kobject_uevent(&elog->kobj, KOBJ_ADD); + } else { + /* Drop the reference taken for the bin file */ kobject_put(&elog->kobj); - return NULL; } - kobject_uevent(&elog->kobj, KOBJ_ADD); + /* Drop our reference */ + kobject_put(&elog->kobj); - return elog; + return; } static irqreturn_t elog_event(int irq, void *data) --- linux-azure-5.8-5.8.0.orig/arch/powerpc/platforms/powernv/setup.c +++ linux-azure-5.8-5.8.0/arch/powerpc/platforms/powernv/setup.c @@ -122,12 +122,29 @@ type = L1D_FLUSH_ORI; } + /* + * If we are non-Power9 bare metal, we don't need to flush on kernel + * entry or after user access: they fix a P9 specific vulnerability. + */ + if (!pvr_version_is(PVR_POWER9)) { + security_ftr_clear(SEC_FTR_L1D_FLUSH_ENTRY); + security_ftr_clear(SEC_FTR_L1D_FLUSH_UACCESS); + } + enable = security_ftr_enabled(SEC_FTR_FAVOUR_SECURITY) && \ (security_ftr_enabled(SEC_FTR_L1D_FLUSH_PR) || \ security_ftr_enabled(SEC_FTR_L1D_FLUSH_HV)); setup_rfi_flush(type, enable); setup_count_cache_flush(); + + enable = security_ftr_enabled(SEC_FTR_FAVOUR_SECURITY) && + security_ftr_enabled(SEC_FTR_L1D_FLUSH_ENTRY); + setup_entry_flush(enable); + + enable = security_ftr_enabled(SEC_FTR_FAVOUR_SECURITY) && + security_ftr_enabled(SEC_FTR_L1D_FLUSH_UACCESS); + setup_uaccess_flush(enable); } static void __init pnv_setup_arch(void) @@ -169,11 +186,16 @@ add_preferred_console("hvc", 0, NULL); if (!radix_enabled()) { + size_t size = sizeof(struct slb_entry) * mmu_slb_size; int i; /* Allocate per cpu area to save old slb contents during MCE */ - for_each_possible_cpu(i) - paca_ptrs[i]->mce_faulty_slbs = memblock_alloc_node(mmu_slb_size, __alignof__(*paca_ptrs[i]->mce_faulty_slbs), cpu_to_node(i)); + for_each_possible_cpu(i) { + paca_ptrs[i]->mce_faulty_slbs = + memblock_alloc_node(size, + __alignof__(struct slb_entry), + cpu_to_node(i)); + } } } --- linux-azure-5.8-5.8.0.orig/arch/powerpc/platforms/powernv/smp.c +++ linux-azure-5.8-5.8.0/arch/powerpc/platforms/powernv/smp.c @@ -43,7 +43,7 @@ #include #define DBG(fmt...) udbg_printf(fmt) #else -#define DBG(fmt...) +#define DBG(fmt...) do { } while (0) #endif static void pnv_smp_setup_cpu(int cpu) --- linux-azure-5.8-5.8.0.orig/arch/powerpc/platforms/pseries/dlpar.c +++ linux-azure-5.8-5.8.0/arch/powerpc/platforms/pseries/dlpar.c @@ -127,7 +127,6 @@ #define NEXT_PROPERTY 3 #define PREV_PARENT 4 #define MORE_MEMORY 5 -#define CALL_AGAIN -2 #define ERR_CFG_USE -9003 struct device_node *dlpar_configure_connector(__be32 drc_index, @@ -168,6 +167,9 @@ spin_unlock(&rtas_data_buf_lock); + if (rtas_busy_delay(rc)) + continue; + switch (rc) { case COMPLETE: break; @@ -216,9 +218,6 @@ last_dn = last_dn->parent; break; - case CALL_AGAIN: - break; - case MORE_MEMORY: case ERR_CFG_USE: default: --- linux-azure-5.8-5.8.0.orig/arch/powerpc/platforms/pseries/hotplug-cpu.c +++ linux-azure-5.8-5.8.0/arch/powerpc/platforms/pseries/hotplug-cpu.c @@ -35,54 +35,10 @@ #include #include "pseries.h" -#include "offline_states.h" /* This version can't take the spinlock, because it never returns */ static int rtas_stop_self_token = RTAS_UNKNOWN_SERVICE; -static DEFINE_PER_CPU(enum cpu_state_vals, preferred_offline_state) = - CPU_STATE_OFFLINE; -static DEFINE_PER_CPU(enum cpu_state_vals, current_state) = CPU_STATE_OFFLINE; - -static enum cpu_state_vals default_offline_state = CPU_STATE_OFFLINE; - -static bool cede_offline_enabled __read_mostly = true; - -/* - * Enable/disable cede_offline when available. - */ -static int __init setup_cede_offline(char *str) -{ - return (kstrtobool(str, &cede_offline_enabled) == 0); -} - -__setup("cede_offline=", setup_cede_offline); - -enum cpu_state_vals get_cpu_current_state(int cpu) -{ - return per_cpu(current_state, cpu); -} - -void set_cpu_current_state(int cpu, enum cpu_state_vals state) -{ - per_cpu(current_state, cpu) = state; -} - -enum cpu_state_vals get_preferred_offline_state(int cpu) -{ - return per_cpu(preferred_offline_state, cpu); -} - -void set_preferred_offline_state(int cpu, enum cpu_state_vals state) -{ - per_cpu(preferred_offline_state, cpu) = state; -} - -void set_default_offline_state(int cpu) -{ - per_cpu(preferred_offline_state, cpu) = default_offline_state; -} - static void rtas_stop_self(void) { static struct rtas_args args; @@ -101,9 +57,7 @@ static void pseries_mach_cpu_die(void) { - unsigned int cpu = smp_processor_id(); unsigned int hwcpu = hard_smp_processor_id(); - u8 cede_latency_hint = 0; local_irq_disable(); idle_task_exit(); @@ -112,49 +66,6 @@ else xics_teardown_cpu(); - if (get_preferred_offline_state(cpu) == CPU_STATE_INACTIVE) { - set_cpu_current_state(cpu, CPU_STATE_INACTIVE); - if (ppc_md.suspend_disable_cpu) - ppc_md.suspend_disable_cpu(); - - cede_latency_hint = 2; - - get_lppaca()->idle = 1; - if (!lppaca_shared_proc(get_lppaca())) - get_lppaca()->donate_dedicated_cpu = 1; - - while (get_preferred_offline_state(cpu) == CPU_STATE_INACTIVE) { - while (!prep_irq_for_idle()) { - local_irq_enable(); - local_irq_disable(); - } - - extended_cede_processor(cede_latency_hint); - } - - local_irq_disable(); - - if (!lppaca_shared_proc(get_lppaca())) - get_lppaca()->donate_dedicated_cpu = 0; - get_lppaca()->idle = 0; - - if (get_preferred_offline_state(cpu) == CPU_STATE_ONLINE) { - unregister_slb_shadow(hwcpu); - - hard_irq_disable(); - /* - * Call to start_secondary_resume() will not return. - * Kernel stack will be reset and start_secondary() - * will be called to continue the online operation. - */ - start_secondary_resume(); - } - } - - /* Requested state is CPU_STATE_OFFLINE at this point */ - WARN_ON(get_preferred_offline_state(cpu) != CPU_STATE_OFFLINE); - - set_cpu_current_state(cpu, CPU_STATE_OFFLINE); unregister_slb_shadow(hwcpu); rtas_stop_self(); @@ -196,33 +107,28 @@ */ static void pseries_cpu_die(unsigned int cpu) { - int tries; int cpu_status = 1; unsigned int pcpu = get_hard_smp_processor_id(cpu); + unsigned long timeout = jiffies + msecs_to_jiffies(120000); - if (get_preferred_offline_state(cpu) == CPU_STATE_INACTIVE) { - cpu_status = 1; - for (tries = 0; tries < 5000; tries++) { - if (get_cpu_current_state(cpu) == CPU_STATE_INACTIVE) { - cpu_status = 0; - break; - } - msleep(1); - } - } else if (get_preferred_offline_state(cpu) == CPU_STATE_OFFLINE) { + while (true) { + cpu_status = smp_query_cpu_stopped(pcpu); + if (cpu_status == QCSS_STOPPED || + cpu_status == QCSS_HARDWARE_ERROR) + break; - for (tries = 0; tries < 25; tries++) { - cpu_status = smp_query_cpu_stopped(pcpu); - if (cpu_status == QCSS_STOPPED || - cpu_status == QCSS_HARDWARE_ERROR) - break; - cpu_relax(); + if (time_after(jiffies, timeout)) { + pr_warn("CPU %i (hwid %i) didn't die after 120 seconds\n", + cpu, pcpu); + timeout = jiffies + msecs_to_jiffies(120000); } + + cond_resched(); } - if (cpu_status != 0) { - printk("Querying DEAD? cpu %i (%i) shows %i\n", - cpu, pcpu, cpu_status); + if (cpu_status == QCSS_HARDWARE_ERROR) { + pr_warn("CPU %i (hwid %i) reported error while dying\n", + cpu, pcpu); } /* Isolation and deallocation are definitely done by @@ -359,28 +265,15 @@ if (get_hard_smp_processor_id(cpu) != thread) continue; - if (get_cpu_current_state(cpu) == CPU_STATE_OFFLINE) - break; - - if (get_cpu_current_state(cpu) == CPU_STATE_ONLINE) { - set_preferred_offline_state(cpu, - CPU_STATE_OFFLINE); - cpu_maps_update_done(); - timed_topology_update(1); - rc = device_offline(get_cpu_device(cpu)); - if (rc) - goto out; - cpu_maps_update_begin(); + if (!cpu_online(cpu)) break; - } - /* - * The cpu is in CPU_STATE_INACTIVE. - * Upgrade it's state to CPU_STATE_OFFLINE. - */ - set_preferred_offline_state(cpu, CPU_STATE_OFFLINE); - WARN_ON(plpar_hcall_norets(H_PROD, thread) != H_SUCCESS); - __cpu_die(cpu); + cpu_maps_update_done(); + timed_topology_update(1); + rc = device_offline(get_cpu_device(cpu)); + if (rc) + goto out; + cpu_maps_update_begin(); break; } if (cpu == num_possible_cpus()) { @@ -414,8 +307,6 @@ for_each_present_cpu(cpu) { if (get_hard_smp_processor_id(cpu) != thread) continue; - BUG_ON(get_cpu_current_state(cpu) - != CPU_STATE_OFFLINE); cpu_maps_update_done(); timed_topology_update(1); find_and_online_cpu_nid(cpu); @@ -1013,27 +904,8 @@ .notifier_call = pseries_smp_notifier, }; -#define MAX_CEDE_LATENCY_LEVELS 4 -#define CEDE_LATENCY_PARAM_LENGTH 10 -#define CEDE_LATENCY_PARAM_MAX_LENGTH \ - (MAX_CEDE_LATENCY_LEVELS * CEDE_LATENCY_PARAM_LENGTH * sizeof(char)) -#define CEDE_LATENCY_TOKEN 45 - -static char cede_parameters[CEDE_LATENCY_PARAM_MAX_LENGTH]; - -static int parse_cede_parameters(void) -{ - memset(cede_parameters, 0, CEDE_LATENCY_PARAM_MAX_LENGTH); - return rtas_call(rtas_token("ibm,get-system-parameter"), 3, 1, - NULL, - CEDE_LATENCY_TOKEN, - __pa(cede_parameters), - CEDE_LATENCY_PARAM_MAX_LENGTH); -} - static int __init pseries_cpu_hotplug_init(void) { - int cpu; int qcss_tok; #ifdef CONFIG_ARCH_CPU_PROBE_RELEASE @@ -1056,16 +928,8 @@ smp_ops->cpu_die = pseries_cpu_die; /* Processors can be added/removed only on LPAR */ - if (firmware_has_feature(FW_FEATURE_LPAR)) { + if (firmware_has_feature(FW_FEATURE_LPAR)) of_reconfig_notifier_register(&pseries_smp_nb); - cpu_maps_update_begin(); - if (cede_offline_enabled && parse_cede_parameters() == 0) { - default_offline_state = CPU_STATE_INACTIVE; - for_each_online_cpu(cpu) - set_default_offline_state(cpu); - } - cpu_maps_update_done(); - } return 0; } --- linux-azure-5.8-5.8.0.orig/arch/powerpc/platforms/pseries/hotplug-memory.c +++ linux-azure-5.8-5.8.0/arch/powerpc/platforms/pseries/hotplug-memory.c @@ -27,7 +27,7 @@ unsigned long pseries_memory_block_size(void) { struct device_node *np; - unsigned int memblock_size = MIN_MEMORY_BLOCK_SIZE; + u64 memblock_size = MIN_MEMORY_BLOCK_SIZE; struct resource r; np = of_find_node_by_path("/ibm,dynamic-reconfiguration-memory"); @@ -279,7 +279,7 @@ return dlpar_change_lmb_state(lmb, false); } -static int pseries_remove_memblock(unsigned long base, unsigned int memblock_size) +static int pseries_remove_memblock(unsigned long base, unsigned long memblock_size) { unsigned long block_sz, start_pfn; int sections_per_block; @@ -310,10 +310,11 @@ static int pseries_remove_mem_node(struct device_node *np) { - const __be32 *regs; + const __be32 *prop; unsigned long base; - unsigned int lmb_size; + unsigned long lmb_size; int ret = -EINVAL; + int addr_cells, size_cells; /* * Check to see if we are actually removing memory @@ -324,12 +325,19 @@ /* * Find the base address and size of the memblock */ - regs = of_get_property(np, "reg", NULL); - if (!regs) + prop = of_get_property(np, "reg", NULL); + if (!prop) return ret; - base = be64_to_cpu(*(unsigned long *)regs); - lmb_size = be32_to_cpu(regs[3]); + addr_cells = of_n_addr_cells(np); + size_cells = of_n_size_cells(np); + + /* + * "reg" property represents (addr,size) tuple. + */ + base = of_read_number(prop, addr_cells); + prop += addr_cells; + lmb_size = of_read_number(prop, size_cells); pseries_remove_memblock(base, lmb_size); return 0; @@ -356,25 +364,32 @@ static int dlpar_remove_lmb(struct drmem_lmb *lmb) { + struct memory_block *mem_block; unsigned long block_sz; int rc; if (!lmb_is_removable(lmb)) return -EINVAL; + mem_block = lmb_to_memblock(lmb); + if (mem_block == NULL) + return -EINVAL; + rc = dlpar_offline_lmb(lmb); - if (rc) + if (rc) { + put_device(&mem_block->dev); return rc; + } block_sz = pseries_memory_block_size(); - __remove_memory(lmb->nid, lmb->base_addr, block_sz); + __remove_memory(mem_block->nid, lmb->base_addr, block_sz); + put_device(&mem_block->dev); /* Update memory regions for memory remove */ memblock_remove(lmb->base_addr, block_sz); invalidate_lmb_associativity_index(lmb); - lmb_clear_nid(lmb); lmb->flags &= ~DRCONF_MEM_ASSIGNED; return 0; @@ -593,7 +608,7 @@ #else static inline int pseries_remove_memblock(unsigned long base, - unsigned int memblock_size) + unsigned long memblock_size) { return -EOPNOTSUPP; } @@ -631,7 +646,7 @@ static int dlpar_add_lmb(struct drmem_lmb *lmb) { unsigned long block_sz; - int rc; + int nid, rc; if (lmb->flags & DRCONF_MEM_ASSIGNED) return -EINVAL; @@ -642,11 +657,13 @@ return rc; } - lmb_set_nid(lmb); block_sz = memory_block_size_bytes(); + /* Find the node id for this address. */ + nid = memory_add_physaddr_to_nid(lmb->base_addr); + /* Add the memory */ - rc = __add_memory(lmb->nid, lmb->base_addr, block_sz); + rc = __add_memory(nid, lmb->base_addr, block_sz); if (rc) { invalidate_lmb_associativity_index(lmb); return rc; @@ -654,9 +671,8 @@ rc = dlpar_online_lmb(lmb); if (rc) { - __remove_memory(lmb->nid, lmb->base_addr, block_sz); + __remove_memory(nid, lmb->base_addr, block_sz); invalidate_lmb_associativity_index(lmb); - lmb_clear_nid(lmb); } else { lmb->flags |= DRCONF_MEM_ASSIGNED; } @@ -925,10 +941,11 @@ static int pseries_add_mem_node(struct device_node *np) { - const __be32 *regs; + const __be32 *prop; unsigned long base; - unsigned int lmb_size; + unsigned long lmb_size; int ret = -EINVAL; + int addr_cells, size_cells; /* * Check to see if we are actually adding memory @@ -939,12 +956,18 @@ /* * Find the base and size of the memblock */ - regs = of_get_property(np, "reg", NULL); - if (!regs) + prop = of_get_property(np, "reg", NULL); + if (!prop) return ret; - base = be64_to_cpu(*(unsigned long *)regs); - lmb_size = be32_to_cpu(regs[3]); + addr_cells = of_n_addr_cells(np); + size_cells = of_n_size_cells(np); + /* + * "reg" property represents (addr,size) tuple. + */ + base = of_read_number(prop, addr_cells); + prop += addr_cells; + lmb_size = of_read_number(prop, size_cells); /* * Update memory region to represent the memory add --- linux-azure-5.8-5.8.0.orig/arch/powerpc/platforms/pseries/msi.c +++ linux-azure-5.8-5.8.0/arch/powerpc/platforms/pseries/msi.c @@ -458,7 +458,8 @@ return hwirq; } - virq = irq_create_mapping(NULL, hwirq); + virq = irq_create_mapping_affinity(NULL, hwirq, + entry->affinity); if (!virq) { pr_debug("rtas_msi: Failed mapping hwirq %d\n", hwirq); --- linux-azure-5.8-5.8.0.orig/arch/powerpc/platforms/pseries/papr_scm.c +++ linux-azure-5.8-5.8.0/arch/powerpc/platforms/pseries/papr_scm.c @@ -702,6 +702,9 @@ p->bus_desc.of_node = p->pdev->dev.of_node; p->bus_desc.provider_name = kstrdup(p->pdev->name, GFP_KERNEL); + /* Set the dimm command family mask to accept PDSMs */ + set_bit(NVDIMM_FAMILY_PAPR, &p->bus_desc.dimm_family_mask); + if (!p->bus_desc.provider_name) return -ENOMEM; --- linux-azure-5.8-5.8.0.orig/arch/powerpc/platforms/pseries/pmem.c +++ linux-azure-5.8-5.8.0/arch/powerpc/platforms/pseries/pmem.c @@ -24,7 +24,6 @@ #include #include "pseries.h" -#include "offline_states.h" static struct device_node *pmem_node; --- linux-azure-5.8-5.8.0.orig/arch/powerpc/platforms/pseries/ras.c +++ linux-azure-5.8-5.8.0/arch/powerpc/platforms/pseries/ras.c @@ -184,7 +184,6 @@ case EPOW_SHUTDOWN_ON_UPS: pr_emerg("Loss of system power detected. System is running on" " UPS/battery. Check RTAS error log for details\n"); - orderly_poweroff(true); break; case EPOW_SHUTDOWN_LOSS_OF_CRITICAL_FUNCTIONS: @@ -522,18 +521,55 @@ return 0; /* need to perform reset */ } +static int mce_handle_err_realmode(int disposition, u8 error_type) +{ +#ifdef CONFIG_PPC_BOOK3S_64 + if (disposition == RTAS_DISP_NOT_RECOVERED) { + switch (error_type) { + case MC_ERROR_TYPE_SLB: + case MC_ERROR_TYPE_ERAT: + /* + * Store the old slb content in paca before flushing. + * Print this when we go to virtual mode. + * There are chances that we may hit MCE again if there + * is a parity error on the SLB entry we trying to read + * for saving. Hence limit the slb saving to single + * level of recursion. + */ + if (local_paca->in_mce == 1) + slb_save_contents(local_paca->mce_faulty_slbs); + flush_and_reload_slb(); + disposition = RTAS_DISP_FULLY_RECOVERED; + break; + default: + break; + } + } else if (disposition == RTAS_DISP_LIMITED_RECOVERY) { + /* Platform corrected itself but could be degraded */ + pr_err("MCE: limited recovery, system may be degraded\n"); + disposition = RTAS_DISP_FULLY_RECOVERED; + } +#endif + return disposition; +} -static int mce_handle_error(struct pt_regs *regs, struct rtas_error_log *errp) +static int mce_handle_err_virtmode(struct pt_regs *regs, + struct rtas_error_log *errp, + struct pseries_mc_errorlog *mce_log, + int disposition) { struct mce_error_info mce_err = { 0 }; - unsigned long eaddr = 0, paddr = 0; - struct pseries_errorlog *pseries_log; - struct pseries_mc_errorlog *mce_log; - int disposition = rtas_error_disposition(errp); int initiator = rtas_error_initiator(errp); int severity = rtas_error_severity(errp); + unsigned long eaddr = 0, paddr = 0; u8 error_type, err_sub_type; + if (!mce_log) + goto out; + + error_type = mce_log->error_type; + err_sub_type = rtas_mc_error_sub_type(mce_log); + if (initiator == RTAS_INITIATOR_UNKNOWN) mce_err.initiator = MCE_INITIATOR_UNKNOWN; else if (initiator == RTAS_INITIATOR_CPU) @@ -572,18 +608,7 @@ mce_err.error_type = MCE_ERROR_TYPE_UNKNOWN; mce_err.error_class = MCE_ECLASS_UNKNOWN; - if (!rtas_error_extended(errp)) - goto out; - - pseries_log = get_pseries_errorlog(errp, PSERIES_ELOG_SECT_ID_MCE); - if (pseries_log == NULL) - goto out; - - mce_log = (struct pseries_mc_errorlog *)pseries_log->data; - error_type = mce_log->error_type; - err_sub_type = rtas_mc_error_sub_type(mce_log); - - switch (mce_log->error_type) { + switch (error_type) { case MC_ERROR_TYPE_UE: mce_err.error_type = MCE_ERROR_TYPE_UE; mce_common_process_ue(regs, &mce_err); @@ -683,37 +708,31 @@ mce_err.error_type = MCE_ERROR_TYPE_UNKNOWN; break; } +out: + save_mce_event(regs, disposition == RTAS_DISP_FULLY_RECOVERED, + &mce_err, regs->nip, eaddr, paddr); + return disposition; +} -#ifdef CONFIG_PPC_BOOK3S_64 - if (disposition == RTAS_DISP_NOT_RECOVERED) { - switch (error_type) { - case MC_ERROR_TYPE_SLB: - case MC_ERROR_TYPE_ERAT: - /* - * Store the old slb content in paca before flushing. - * Print this when we go to virtual mode. - * There are chances that we may hit MCE again if there - * is a parity error on the SLB entry we trying to read - * for saving. Hence limit the slb saving to single - * level of recursion. - */ - if (local_paca->in_mce == 1) - slb_save_contents(local_paca->mce_faulty_slbs); - flush_and_reload_slb(); - disposition = RTAS_DISP_FULLY_RECOVERED; - break; - default: - break; - } - } else if (disposition == RTAS_DISP_LIMITED_RECOVERY) { - /* Platform corrected itself but could be degraded */ - printk(KERN_ERR "MCE: limited recovery, system may " - "be degraded\n"); - disposition = RTAS_DISP_FULLY_RECOVERED; - } -#endif +static int mce_handle_error(struct pt_regs *regs, struct rtas_error_log *errp) +{ + struct pseries_errorlog *pseries_log; + struct pseries_mc_errorlog *mce_log = NULL; + int disposition = rtas_error_disposition(errp); + u8 error_type; + + if (!rtas_error_extended(errp)) + goto out; + + pseries_log = get_pseries_errorlog(errp, PSERIES_ELOG_SECT_ID_MCE); + if (!pseries_log) + goto out; + + mce_log = (struct pseries_mc_errorlog *)pseries_log->data; + error_type = mce_log->error_type; + + disposition = mce_handle_err_realmode(disposition, error_type); -out: /* * Enable translation as we will be accessing per-cpu variables * in save_mce_event() which may fall outside RMO region, also @@ -724,10 +743,10 @@ * Note: All the realmode handling like flushing SLB entries for * SLB multihit is done by now. */ +out: mtmsr(mfmsr() | MSR_IR | MSR_DR); - save_mce_event(regs, disposition == RTAS_DISP_FULLY_RECOVERED, - &mce_err, regs->nip, eaddr, paddr); - + disposition = mce_handle_err_virtmode(regs, errp, mce_log, + disposition); return disposition; } --- linux-azure-5.8-5.8.0.orig/arch/powerpc/platforms/pseries/rng.c +++ linux-azure-5.8-5.8.0/arch/powerpc/platforms/pseries/rng.c @@ -36,6 +36,7 @@ ppc_md.get_random_seed = pseries_get_random_long; + of_node_put(dn); return 0; } machine_subsys_initcall(pseries, rng_init); --- linux-azure-5.8-5.8.0.orig/arch/powerpc/platforms/pseries/setup.c +++ linux-azure-5.8-5.8.0/arch/powerpc/platforms/pseries/setup.c @@ -570,6 +570,14 @@ setup_rfi_flush(types, enable); setup_count_cache_flush(); + + enable = security_ftr_enabled(SEC_FTR_FAVOUR_SECURITY) && + security_ftr_enabled(SEC_FTR_L1D_FLUSH_ENTRY); + setup_entry_flush(enable); + + enable = security_ftr_enabled(SEC_FTR_FAVOUR_SECURITY) && + security_ftr_enabled(SEC_FTR_L1D_FLUSH_UACCESS); + setup_uaccess_flush(enable); } #ifdef CONFIG_PCI_IOV --- linux-azure-5.8-5.8.0.orig/arch/powerpc/platforms/pseries/smp.c +++ linux-azure-5.8-5.8.0/arch/powerpc/platforms/pseries/smp.c @@ -44,8 +44,6 @@ #include #include "pseries.h" -#include "offline_states.h" - /* * The Primary thread of each non-boot processor was started from the OF client @@ -108,10 +106,7 @@ /* Fixup atomic count: it exited inside IRQ handler. */ task_thread_info(paca_ptrs[lcpu]->__current)->preempt_count = 0; -#ifdef CONFIG_HOTPLUG_CPU - if (get_cpu_current_state(lcpu) == CPU_STATE_INACTIVE) - goto out; -#endif + /* * If the RTAS start-cpu token does not exist then presume the * cpu is already spinning. @@ -126,9 +121,6 @@ return 0; } -#ifdef CONFIG_HOTPLUG_CPU -out: -#endif return 1; } @@ -143,10 +135,6 @@ vpa_init(cpu); cpumask_clear_cpu(cpu, of_spin_mask); -#ifdef CONFIG_HOTPLUG_CPU - set_cpu_current_state(cpu, CPU_STATE_ONLINE); - set_default_offline_state(cpu); -#endif } static int smp_pSeries_kick_cpu(int nr) @@ -163,20 +151,6 @@ * the processor will continue on to secondary_start */ paca_ptrs[nr]->cpu_start = 1; -#ifdef CONFIG_HOTPLUG_CPU - set_preferred_offline_state(nr, CPU_STATE_ONLINE); - - if (get_cpu_current_state(nr) == CPU_STATE_INACTIVE) { - long rc; - unsigned long hcpuid; - - hcpuid = get_hard_smp_processor_id(nr); - rc = plpar_hcall_norets(H_PROD, hcpuid); - if (rc != H_SUCCESS) - printk(KERN_ERR "Error: Prod to wake up processor %d " - "Ret= %ld\n", nr, rc); - } -#endif return 0; } --- linux-azure-5.8-5.8.0.orig/arch/powerpc/platforms/pseries/suspend.c +++ linux-azure-5.8-5.8.0/arch/powerpc/platforms/pseries/suspend.c @@ -13,7 +13,6 @@ #include #include #include -#include "../../kernel/cacheinfo.h" static u64 stream_id; static struct device suspend_dev; @@ -78,9 +77,7 @@ * Update configuration which can be modified based on device tree * changes during resume. */ - cacheinfo_cpu_offline(smp_processor_id()); post_mobility_fixup(); - cacheinfo_cpu_online(smp_processor_id()); } /** @@ -132,15 +129,11 @@ struct device_attribute *attr, const char *buf, size_t count) { - cpumask_var_t offline_mask; int rc; if (!capable(CAP_SYS_ADMIN)) return -EPERM; - if (!alloc_cpumask_var(&offline_mask, GFP_KERNEL)) - return -ENOMEM; - stream_id = simple_strtoul(buf, NULL, 16); do { @@ -150,32 +143,16 @@ } while (rc == -EAGAIN); if (!rc) { - /* All present CPUs must be online */ - cpumask_andnot(offline_mask, cpu_present_mask, - cpu_online_mask); - rc = rtas_online_cpus_mask(offline_mask); - if (rc) { - pr_err("%s: Could not bring present CPUs online.\n", - __func__); - goto out; - } - stop_topology_update(); rc = pm_suspend(PM_SUSPEND_MEM); start_topology_update(); - - /* Take down CPUs not online prior to suspend */ - if (!rtas_offline_cpus_mask(offline_mask)) - pr_warn("%s: Could not restore CPUs to offline " - "state.\n", __func__); } stream_id = 0; if (!rc) rc = count; -out: - free_cpumask_var(offline_mask); + return rc; } @@ -210,7 +187,6 @@ static const struct platform_suspend_ops pseries_suspend_ops = { .valid = suspend_valid_only_mem, - .begin = pseries_suspend_begin, .prepare_late = pseries_prepare_late, .enter = pseries_suspend_enter, }; --- linux-azure-5.8-5.8.0.orig/arch/powerpc/platforms/pseries/svm.c +++ linux-azure-5.8-5.8.0/arch/powerpc/platforms/pseries/svm.c @@ -7,6 +7,7 @@ */ #include +#include #include #include #include @@ -34,6 +35,31 @@ } machine_early_initcall(pseries, init_svm); +/* + * Initialize SWIOTLB. Essentially the same as swiotlb_init(), except that it + * can allocate the buffer anywhere in memory. Since the hypervisor doesn't have + * any addressing limitation, we don't need to allocate it in low addresses. + */ +void __init svm_swiotlb_init(void) +{ + unsigned char *vstart; + unsigned long bytes, io_tlb_nslabs; + + io_tlb_nslabs = (swiotlb_size_or_default() >> IO_TLB_SHIFT); + io_tlb_nslabs = ALIGN(io_tlb_nslabs, IO_TLB_SEGSIZE); + + bytes = io_tlb_nslabs << IO_TLB_SHIFT; + + vstart = memblock_alloc(PAGE_ALIGN(bytes), PAGE_SIZE); + if (vstart && !swiotlb_init_with_tbl(vstart, io_tlb_nslabs, false)) + return; + + if (io_tlb_start) + memblock_free_early(io_tlb_start, + PAGE_ALIGN(io_tlb_nslabs << IO_TLB_SHIFT)); + panic("SVM: Cannot allocate SWIOTLB buffer"); +} + int set_memory_encrypted(unsigned long addr, int numpages) { if (!PAGE_ALIGNED(addr)) --- linux-azure-5.8-5.8.0.orig/arch/powerpc/platforms/pseries/vio.c +++ linux-azure-5.8-5.8.0/arch/powerpc/platforms/pseries/vio.c @@ -37,7 +37,6 @@ .name = "vio", .type = "", .dev.init_name = "vio", - .dev.bus = &vio_bus_type, }; #ifdef CONFIG_PPC_SMLPAR --- linux-azure-5.8-5.8.0.orig/arch/powerpc/sysdev/mpic_msgr.c +++ linux-azure-5.8-5.8.0/arch/powerpc/sysdev/mpic_msgr.c @@ -191,7 +191,7 @@ /* IO map the message register block. */ of_address_to_resource(np, 0, &rsrc); - msgr_block_addr = ioremap(rsrc.start, resource_size(&rsrc)); + msgr_block_addr = devm_ioremap(&dev->dev, rsrc.start, resource_size(&rsrc)); if (!msgr_block_addr) { dev_err(&dev->dev, "Failed to iomap MPIC message registers"); return -EFAULT; --- linux-azure-5.8-5.8.0.orig/arch/powerpc/sysdev/xics/icp-hv.c +++ linux-azure-5.8-5.8.0/arch/powerpc/sysdev/xics/icp-hv.c @@ -174,6 +174,7 @@ icp_ops = &icp_hv_ops; + of_node_put(np); return 0; } --- linux-azure-5.8-5.8.0.orig/arch/powerpc/sysdev/xive/native.c +++ linux-azure-5.8-5.8.0/arch/powerpc/sysdev/xive/native.c @@ -18,6 +18,7 @@ #include #include #include +#include #include #include @@ -647,6 +648,7 @@ pr_err("Failed to allocate provisioning page\n"); return false; } + kmemleak_ignore(p); opal_xive_donate_page(chip, __pa(p)); } return true; --- linux-azure-5.8-5.8.0.orig/arch/powerpc/xmon/nonstdio.c +++ linux-azure-5.8-5.8.0/arch/powerpc/xmon/nonstdio.c @@ -178,7 +178,7 @@ if (n && rc == 0) { /* No udbg hooks, fallback to printk() - dangerous */ - printk("%s", xmon_outbuf); + pr_cont("%s", xmon_outbuf); } } --- linux-azure-5.8-5.8.0.orig/arch/powerpc/xmon/xmon.c +++ linux-azure-5.8-5.8.0/arch/powerpc/xmon/xmon.c @@ -962,6 +962,7 @@ brk.address = dabr[i].address; brk.type = (dabr[i].enabled & HW_BRK_TYPE_DABR) | HW_BRK_TYPE_PRIV_ALL; brk.len = 8; + brk.hw_len = 8; __set_breakpoint(i, &brk); } } @@ -1375,6 +1376,7 @@ return 1; } +#ifndef CONFIG_PPC_8xx static int find_free_data_bpt(void) { int i; @@ -1386,6 +1388,7 @@ printf("Couldn't find free breakpoint register\n"); return -1; } +#endif static void print_data_bpts(void) { --- linux-azure-5.8-5.8.0.orig/arch/riscv/Kconfig +++ linux-azure-5.8-5.8.0/arch/riscv/Kconfig @@ -123,7 +123,7 @@ config PAGE_OFFSET hex - default 0xC0000000 if 32BIT && MAXPHYSMEM_2GB + default 0xC0000000 if 32BIT && MAXPHYSMEM_1GB default 0x80000000 if 64BIT && !MMU default 0xffffffff80000000 if 64BIT && MAXPHYSMEM_2GB default 0xffffffe000000000 if 64BIT && MAXPHYSMEM_128GB @@ -233,11 +233,15 @@ choice prompt "Maximum Physical Memory" - default MAXPHYSMEM_2GB if 32BIT + default MAXPHYSMEM_1GB if 32BIT default MAXPHYSMEM_2GB if 64BIT && CMODEL_MEDLOW default MAXPHYSMEM_128GB if 64BIT && CMODEL_MEDANY + config MAXPHYSMEM_1GB + depends on 32BIT + bool "1GiB" config MAXPHYSMEM_2GB + depends on 64BIT && CMODEL_MEDLOW bool "2GiB" config MAXPHYSMEM_128GB depends on 64BIT && CMODEL_MEDANY --- linux-azure-5.8-5.8.0.orig/arch/riscv/boot/dts/kendryte/k210.dtsi +++ linux-azure-5.8-5.8.0/arch/riscv/boot/dts/kendryte/k210.dtsi @@ -95,10 +95,12 @@ #clock-cells = <1>; }; - clint0: interrupt-controller@2000000 { + clint0: clint@2000000 { + #interrupt-cells = <1>; compatible = "riscv,clint0"; reg = <0x2000000 0xC000>; - interrupts-extended = <&cpu0_intc 3>, <&cpu1_intc 3>; + interrupts-extended = <&cpu0_intc 3 &cpu0_intc 7 + &cpu1_intc 3 &cpu1_intc 7>; clocks = <&sysctl K210_CLK_ACLK>; }; --- linux-azure-5.8-5.8.0.orig/arch/riscv/boot/dts/sifive/hifive-unleashed-a00.dts +++ linux-azure-5.8-5.8.0/arch/riscv/boot/dts/sifive/hifive-unleashed-a00.dts @@ -88,6 +88,7 @@ phy-mode = "gmii"; phy-handle = <&phy0>; phy0: ethernet-phy@0 { + compatible = "ethernet-phy-id0007.0771"; reg = <0>; }; }; --- linux-azure-5.8-5.8.0.orig/arch/riscv/configs/defconfig +++ linux-azure-5.8-5.8.0/arch/riscv/configs/defconfig @@ -63,6 +63,8 @@ CONFIG_HW_RANDOM_VIRTIO=y CONFIG_SPI=y CONFIG_SPI_SIFIVE=y +CONFIG_GPIOLIB=y +CONFIG_GPIO_SIFIVE=y # CONFIG_PTP_1588_CLOCK is not set CONFIG_POWER_RESET=y CONFIG_DRM=y --- linux-azure-5.8-5.8.0.orig/arch/riscv/include/asm/Kbuild +++ linux-azure-5.8-5.8.0/arch/riscv/include/asm/Kbuild @@ -2,6 +2,5 @@ generic-y += extable.h generic-y += flat.h generic-y += kvm_para.h -generic-y += local64.h generic-y += user.h generic-y += vmlinux.lds.h --- linux-azure-5.8-5.8.0.orig/arch/riscv/include/asm/ftrace.h +++ linux-azure-5.8-5.8.0/arch/riscv/include/asm/ftrace.h @@ -66,6 +66,13 @@ * Let auipc+jalr be the basic *mcount unit*, so we make it 8 bytes here. */ #define MCOUNT_INSN_SIZE 8 + +#ifndef __ASSEMBLY__ +struct dyn_ftrace; +int ftrace_init_nop(struct module *mod, struct dyn_ftrace *rec); +#define ftrace_init_nop ftrace_init_nop +#endif + #endif #endif /* _ASM_RISCV_FTRACE_H */ --- linux-azure-5.8-5.8.0.orig/arch/riscv/include/asm/page.h +++ linux-azure-5.8-5.8.0/arch/riscv/include/asm/page.h @@ -135,7 +135,10 @@ #endif /* __ASSEMBLY__ */ -#define virt_addr_valid(vaddr) (pfn_valid(virt_to_pfn(vaddr))) +#define virt_addr_valid(vaddr) ({ \ + unsigned long _addr = (unsigned long)vaddr; \ + (unsigned long)(_addr) >= PAGE_OFFSET && pfn_valid(virt_to_pfn(_addr)); \ +}) #define VM_DATA_DEFAULT_FLAGS VM_DATA_FLAGS_NON_EXEC --- linux-azure-5.8-5.8.0.orig/arch/riscv/include/asm/pgtable-32.h +++ linux-azure-5.8-5.8.0/arch/riscv/include/asm/pgtable-32.h @@ -14,4 +14,6 @@ #define PGDIR_SIZE (_AC(1, UL) << PGDIR_SHIFT) #define PGDIR_MASK (~(PGDIR_SIZE - 1)) +#define MAX_POSSIBLE_PHYSMEM_BITS 34 + #endif /* _ASM_RISCV_PGTABLE_32_H */ --- linux-azure-5.8-5.8.0.orig/arch/riscv/include/asm/vdso.h +++ linux-azure-5.8-5.8.0/arch/riscv/include/asm/vdso.h @@ -10,7 +10,7 @@ #include -#ifndef GENERIC_TIME_VSYSCALL +#ifndef CONFIG_GENERIC_TIME_VSYSCALL struct vdso_data { }; #endif --- linux-azure-5.8-5.8.0.orig/arch/riscv/include/asm/vdso/processor.h +++ linux-azure-5.8-5.8.0/arch/riscv/include/asm/vdso/processor.h @@ -4,6 +4,8 @@ #ifndef __ASSEMBLY__ +#include + static inline void cpu_relax(void) { #ifdef __riscv_muldiv --- linux-azure-5.8-5.8.0.orig/arch/riscv/include/uapi/asm/auxvec.h +++ linux-azure-5.8-5.8.0/arch/riscv/include/uapi/asm/auxvec.h @@ -10,4 +10,7 @@ /* vDSO location */ #define AT_SYSINFO_EHDR 33 +/* entries in ARCH_DLINFO */ +#define AT_VECTOR_SIZE_ARCH 1 + #endif /* _UAPI_ASM_RISCV_AUXVEC_H */ --- linux-azure-5.8-5.8.0.orig/arch/riscv/kernel/entry.S +++ linux-azure-5.8-5.8.0/arch/riscv/kernel/entry.S @@ -137,6 +137,15 @@ tail do_trap_unknown handle_syscall: +#ifdef CONFIG_RISCV_M_MODE + /* + * When running is M-Mode (no MMU config), MPIE does not get set. + * As a result, we need to force enable interrupts here because + * handle_exception did not do set SR_IE as it always sees SR_PIE + * being cleared. + */ + csrs CSR_STATUS, SR_IE +#endif /* save the initial A0 value (needed in signal handlers) */ REG_S a0, PT_ORIG_A0(sp) /* @@ -157,14 +166,7 @@ * Syscall number held in a7. * If syscall number is above allowed value, redirect to ni_syscall. */ - bge a7, t0, 1f - /* - * Check if syscall is rejected by tracer, i.e., a7 == -1. - * If yes, we pretend it was executed. - */ - li t1, -1 - beq a7, t1, ret_from_syscall_rejected - blt a7, t1, 1f + bgeu a7, t0, 1f /* Call syscall */ la s0, sys_call_table slli t0, a7, RISCV_LGPTR --- linux-azure-5.8-5.8.0.orig/arch/riscv/kernel/ftrace.c +++ linux-azure-5.8-5.8.0/arch/riscv/kernel/ftrace.c @@ -97,6 +97,25 @@ return __ftrace_modify_call(rec->ip, addr, false); } + +/* + * This is called early on, and isn't wrapped by + * ftrace_arch_code_modify_{prepare,post_process}() and therefor doesn't hold + * text_mutex, which triggers a lockdep failure. SMP isn't running so we could + * just directly poke the text, but it's simpler to just take the lock + * ourselves. + */ +int ftrace_init_nop(struct module *mod, struct dyn_ftrace *rec) +{ + int out; + + ftrace_arch_code_modify_prepare(); + out = ftrace_make_nop(mod, rec, MCOUNT_ADDR); + ftrace_arch_code_modify_post_process(); + + return out; +} + int ftrace_update_ftrace_func(ftrace_func_t func) { int ret = __ftrace_modify_call((unsigned long)&ftrace_call, --- linux-azure-5.8-5.8.0.orig/arch/riscv/kernel/head.S +++ linux-azure-5.8-5.8.0/arch/riscv/kernel/head.S @@ -27,6 +27,10 @@ /* reserved */ .word 0 .balign 8 +#ifdef CONFIG_RISCV_M_MODE + /* Image load offset (0MB) from start of RAM for M-mode */ + .dword 0 +#else #if __riscv_xlen == 64 /* Image load offset(2MB) from start of RAM */ .dword 0x200000 @@ -34,6 +38,7 @@ /* Image load offset(4MB) from start of RAM */ .dword 0x400000 #endif +#endif /* Effective size of kernel image */ .dword _end - _start .dword __HEAD_FLAGS --- linux-azure-5.8-5.8.0.orig/arch/riscv/kernel/setup.c +++ linux-azure-5.8-5.8.0/arch/riscv/kernel/setup.c @@ -70,6 +70,7 @@ *cmdline_p = boot_command_line; + jump_label_init(); parse_early_param(); setup_bootmem(); --- linux-azure-5.8-5.8.0.orig/arch/riscv/kernel/time.c +++ linux-azure-5.8-5.8.0/arch/riscv/kernel/time.c @@ -4,6 +4,7 @@ * Copyright (C) 2017 SiFive */ +#include #include #include #include @@ -24,6 +25,8 @@ riscv_timebase = prop; lpj_fine = riscv_timebase / HZ; + + of_clk_init(NULL); timer_probe(); } --- linux-azure-5.8-5.8.0.orig/arch/riscv/kernel/vdso.c +++ linux-azure-5.8-5.8.0/arch/riscv/kernel/vdso.c @@ -12,7 +12,7 @@ #include #include #include -#ifdef GENERIC_TIME_VSYSCALL +#ifdef CONFIG_GENERIC_TIME_VSYSCALL #include #else #include --- linux-azure-5.8-5.8.0.orig/arch/riscv/kernel/vdso/Makefile +++ linux-azure-5.8-5.8.0/arch/riscv/kernel/vdso/Makefile @@ -30,8 +30,9 @@ # Disable -pg to prevent insert call site CFLAGS_REMOVE_vgettimeofday.o = $(CC_FLAGS_FTRACE) -Os -# Disable gcov profiling for VDSO code +# Disable profiling and instrumentation for VDSO code GCOV_PROFILE := n +KASAN_SANITIZE := n # Force dependency $(obj)/vdso.o: $(obj)/vdso.so @@ -40,19 +41,14 @@ SYSCFLAGS_vdso.so.dbg = $(c_flags) $(obj)/vdso.so.dbg: $(src)/vdso.lds $(obj-vdso) FORCE $(call if_changed,vdsold) +SYSCFLAGS_vdso.so.dbg = -shared -s -Wl,-soname=linux-vdso.so.1 \ + -Wl,--build-id=sha1 -Wl,--hash-style=both # We also create a special relocatable object that should mirror the symbol # table and layout of the linked DSO. With ld --just-symbols we can then # refer to these symbols in the kernel code rather than hand-coded addresses. - -SYSCFLAGS_vdso.so.dbg = -shared -s -Wl,-soname=linux-vdso.so.1 \ - -Wl,--build-id -Wl,--hash-style=both -$(obj)/vdso-dummy.o: $(src)/vdso.lds $(obj)/rt_sigreturn.o FORCE - $(call if_changed,vdsold) - -LDFLAGS_vdso-syms.o := -r --just-symbols -$(obj)/vdso-syms.o: $(obj)/vdso-dummy.o FORCE - $(call if_changed,ld) +$(obj)/vdso-syms.S: $(obj)/vdso.so FORCE + $(call if_changed,so2s) # strip rule for the .so file $(obj)/%.so: OBJCOPYFLAGS := -S @@ -70,6 +66,11 @@ $(patsubst %, -G __vdso_%, $(vdso-syms)) $@.tmp $@ && \ rm $@.tmp +# Extracts symbol offsets from the VDSO, converting them into an assembly file +# that contains the same symbols at the same offsets. +quiet_cmd_so2s = SO2S $@ + cmd_so2s = $(NM) -D $< | $(srctree)/$(src)/so2s.sh > $@ + # install commands for the unstripped file quiet_cmd_vdso_install = INSTALL $@ cmd_vdso_install = cp $(obj)/$@.dbg $(MODLIB)/vdso/$@ --- linux-azure-5.8-5.8.0.orig/arch/riscv/kernel/vdso/so2s.sh +++ linux-azure-5.8-5.8.0/arch/riscv/kernel/vdso/so2s.sh @@ -0,0 +1,6 @@ +#!/bin/sh +# SPDX-License-Identifier: GPL-2.0+ +# Copyright 2020 Palmer Dabbelt + +sed 's!\([0-9a-f]*\) T \([a-z0-9_]*\)\(@@LINUX_4.15\)*!.global \2\n.set \2,0x\1!' \ +| grep '^\.' --- linux-azure-5.8-5.8.0.orig/arch/riscv/kernel/vmlinux.lds.S +++ linux-azure-5.8-5.8.0/arch/riscv/kernel/vmlinux.lds.S @@ -27,7 +27,6 @@ __init_begin = .; INIT_TEXT_SECTION(PAGE_SIZE) - INIT_DATA_SECTION(16) . = ALIGN(8); __soc_early_init_table : { __soc_early_init_table_start = .; @@ -67,6 +66,8 @@ _etext = .; } + INIT_DATA_SECTION(16) + /* Start of data section */ _sdata = .; RO_DATA(SECTION_ALIGN) --- linux-azure-5.8-5.8.0.orig/arch/riscv/mm/init.c +++ linux-azure-5.8-5.8.0/arch/riscv/mm/init.c @@ -148,9 +148,10 @@ struct memblock_region *reg; phys_addr_t mem_size = 0; phys_addr_t total_mem = 0; - phys_addr_t mem_start, end = 0; + phys_addr_t mem_start, dram_end, end = 0; phys_addr_t vmlinux_end = __pa_symbol(&_end); phys_addr_t vmlinux_start = __pa_symbol(&_start); + phys_addr_t max_mapped_addr = __pa(~(ulong)0); /* Find the memory region containing the kernel */ for_each_memblock(memory, reg) { @@ -174,7 +175,18 @@ /* Reserve from the start of the kernel to the end of the kernel */ memblock_reserve(vmlinux_start, vmlinux_end - vmlinux_start); - max_pfn = PFN_DOWN(memblock_end_of_DRAM()); + dram_end = memblock_end_of_DRAM(); + + /* + * memblock allocator is not aware of the fact that last 4K bytes of + * the addressable memory can not be mapped because of IS_ERR_VALUE + * macro. Make sure that last 4k bytes are not usable by memblock + * if end of dram is equal to maximum addressable memory. + */ + if (max_mapped_addr == (dram_end - 1)) + memblock_set_current_limit(max_mapped_addr - 4096); + + max_pfn = PFN_DOWN(dram_end); max_low_pfn = max_pfn; set_max_mapnr(max_low_pfn); @@ -226,12 +238,11 @@ ptep = &fixmap_pte[pte_index(addr)]; - if (pgprot_val(prot)) { + if (pgprot_val(prot)) set_pte(ptep, pfn_pte(phys >> PAGE_SHIFT, prot)); - } else { + else pte_clear(&init_mm, addr, ptep); - local_flush_tlb_page(addr); - } + local_flush_tlb_page(addr); } static pte_t *__init get_pte_virt(phys_addr_t pa) @@ -516,6 +527,7 @@ #else dtb_early_va = (void *)dtb_pa; #endif + dtb_early_pa = dtb_pa; } static inline void setup_vm_final(void) --- linux-azure-5.8-5.8.0.orig/arch/s390/Kconfig +++ linux-azure-5.8-5.8.0/arch/s390/Kconfig @@ -30,7 +30,7 @@ def_bool y config GENERIC_LOCKBREAK - def_bool y if PREEMPTTION + def_bool y if PREEMPTION config PGSTE def_bool y if KVM @@ -769,6 +769,7 @@ def_tristate n prompt "VFIO support for AP devices" depends on S390_AP_IOMMU && VFIO_MDEV_DEVICE && KVM + depends on ZCRYPT help This driver grants access to Adjunct Processor (AP) devices via the VFIO mediated device interface. @@ -954,6 +955,14 @@ endmenu +config KMSG_IDS + def_bool y + prompt "Kernel message numbers" + help + Select this option if you want to include a message number to the + prefix for kernel messages issued by the s390 architecture and + driver code. See "Documentation/s390/kmsg.txt" for more details. + menu "Selftests" config S390_UNWIND_SELFTEST --- linux-azure-5.8-5.8.0.orig/arch/s390/boot/head.S +++ linux-azure-5.8-5.8.0/arch/s390/boot/head.S @@ -360,22 +360,23 @@ # the save area and does disabled wait with a faulty address. # ENTRY(startup_pgm_check_handler) - stmg %r0,%r15,__LC_SAVE_AREA_SYNC - la %r1,4095 - stctg %c0,%c15,__LC_CREGS_SAVE_AREA-4095(%r1) - mvc __LC_GPREGS_SAVE_AREA-4095(128,%r1),__LC_SAVE_AREA_SYNC - mvc __LC_PSW_SAVE_AREA-4095(16,%r1),__LC_PGM_OLD_PSW + stmg %r8,%r15,__LC_SAVE_AREA_SYNC + la %r8,4095 + stctg %c0,%c15,__LC_CREGS_SAVE_AREA-4095(%r8) + stmg %r0,%r7,__LC_GPREGS_SAVE_AREA-4095(%r8) + mvc __LC_GPREGS_SAVE_AREA-4095+64(64,%r8),__LC_SAVE_AREA_SYNC + mvc __LC_PSW_SAVE_AREA-4095(16,%r8),__LC_PGM_OLD_PSW mvc __LC_RETURN_PSW(16),__LC_PGM_OLD_PSW ni __LC_RETURN_PSW,0xfc # remove IO and EX bits ni __LC_RETURN_PSW+1,0xfb # remove MCHK bit oi __LC_RETURN_PSW+1,0x2 # set wait state bit - larl %r2,.Lold_psw_disabled_wait - stg %r2,__LC_PGM_NEW_PSW+8 - l %r15,.Ldump_info_stack-.Lold_psw_disabled_wait(%r2) + larl %r9,.Lold_psw_disabled_wait + stg %r9,__LC_PGM_NEW_PSW+8 + l %r15,.Ldump_info_stack-.Lold_psw_disabled_wait(%r9) brasl %r14,print_pgm_check_info .Lold_psw_disabled_wait: - la %r1,4095 - lmg %r0,%r15,__LC_GPREGS_SAVE_AREA-4095(%r1) + la %r8,4095 + lmg %r0,%r15,__LC_GPREGS_SAVE_AREA-4095(%r8) lpswe __LC_RETURN_PSW # disabled wait .Ldump_info_stack: .long 0x5000 + PAGE_SIZE - STACK_FRAME_OVERHEAD --- linux-azure-5.8-5.8.0.orig/arch/s390/boot/ipl_parm.c +++ linux-azure-5.8-5.8.0/arch/s390/boot/ipl_parm.c @@ -70,30 +70,44 @@ static size_t ipl_block_get_ascii_scpdata(char *dest, size_t size, const struct ipl_parameter_block *ipb) { - size_t count; - size_t i; + const __u8 *scp_data; + __u32 scp_data_len; int has_lowercase; + size_t count = 0; + size_t i; + + switch (ipb->pb0_hdr.pbt) { + case IPL_PBT_FCP: + scp_data_len = ipb->fcp.scp_data_len; + scp_data = ipb->fcp.scp_data; + break; + case IPL_PBT_NVME: + scp_data_len = ipb->nvme.scp_data_len; + scp_data = ipb->nvme.scp_data; + break; + default: + goto out; + } - count = min(size - 1, scpdata_length(ipb->fcp.scp_data, - ipb->fcp.scp_data_len)); + count = min(size - 1, scpdata_length(scp_data, scp_data_len)); if (!count) goto out; has_lowercase = 0; for (i = 0; i < count; i++) { - if (!isascii(ipb->fcp.scp_data[i])) { + if (!isascii(scp_data[i])) { count = 0; goto out; } - if (!has_lowercase && islower(ipb->fcp.scp_data[i])) + if (!has_lowercase && islower(scp_data[i])) has_lowercase = 1; } if (has_lowercase) - memcpy(dest, ipb->fcp.scp_data, count); + memcpy(dest, scp_data, count); else for (i = 0; i < count; i++) - dest[i] = tolower(ipb->fcp.scp_data[i]); + dest[i] = tolower(scp_data[i]); out: dest[count] = '\0'; return count; @@ -115,6 +129,7 @@ parm, COMMAND_LINE_SIZE - len - 1, &ipl_block); break; case IPL_PBT_FCP: + case IPL_PBT_NVME: rc = ipl_block_get_ascii_scpdata( parm, COMMAND_LINE_SIZE - len - 1, &ipl_block); break; --- linux-azure-5.8-5.8.0.orig/arch/s390/boot/uv.c +++ linux-azure-5.8-5.8.0/arch/s390/boot/uv.c @@ -32,7 +32,7 @@ uv_info.guest_cpu_stor_len = uvcb.cpu_stor_len; uv_info.max_sec_stor_addr = ALIGN(uvcb.max_guest_stor_addr, PAGE_SIZE); uv_info.max_num_sec_conf = uvcb.max_num_sec_conf; - uv_info.max_guest_cpus = uvcb.max_guest_cpus; + uv_info.max_guest_cpu_id = uvcb.max_guest_cpu_id; } #ifdef CONFIG_PROTECTED_VIRTUALIZATION_GUEST --- linux-azure-5.8-5.8.0.orig/arch/s390/include/asm/Kbuild +++ linux-azure-5.8-5.8.0/arch/s390/include/asm/Kbuild @@ -6,5 +6,4 @@ generic-y += asm-offsets.h generic-y += export.h -generic-y += local64.h generic-y += mcs_spinlock.h --- linux-azure-5.8-5.8.0.orig/arch/s390/include/asm/ipl.h +++ linux-azure-5.8-5.8.0/arch/s390/include/asm/ipl.h @@ -120,6 +120,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-azure-5.8-5.8.0.orig/arch/s390/include/asm/percpu.h +++ linux-azure-5.8-5.8.0/arch/s390/include/asm/percpu.h @@ -29,7 +29,7 @@ typedef typeof(pcp) pcp_op_T__; \ pcp_op_T__ old__, new__, prev__; \ pcp_op_T__ *ptr__; \ - preempt_disable(); \ + preempt_disable_notrace(); \ ptr__ = raw_cpu_ptr(&(pcp)); \ prev__ = *ptr__; \ do { \ @@ -37,7 +37,7 @@ new__ = old__ op (val); \ prev__ = cmpxchg(ptr__, old__, new__); \ } while (prev__ != old__); \ - preempt_enable(); \ + preempt_enable_notrace(); \ new__; \ }) @@ -68,7 +68,7 @@ typedef typeof(pcp) pcp_op_T__; \ pcp_op_T__ val__ = (val); \ pcp_op_T__ old__, *ptr__; \ - preempt_disable(); \ + preempt_disable_notrace(); \ ptr__ = raw_cpu_ptr(&(pcp)); \ if (__builtin_constant_p(val__) && \ ((szcast)val__ > -129) && ((szcast)val__ < 128)) { \ @@ -84,7 +84,7 @@ : [val__] "d" (val__) \ : "cc"); \ } \ - preempt_enable(); \ + preempt_enable_notrace(); \ } #define this_cpu_add_4(pcp, val) arch_this_cpu_add(pcp, val, "laa", "asi", int) @@ -95,14 +95,14 @@ typedef typeof(pcp) pcp_op_T__; \ pcp_op_T__ val__ = (val); \ pcp_op_T__ old__, *ptr__; \ - preempt_disable(); \ + preempt_disable_notrace(); \ ptr__ = raw_cpu_ptr(&(pcp)); \ asm volatile( \ op " %[old__],%[val__],%[ptr__]\n" \ : [old__] "=d" (old__), [ptr__] "+Q" (*ptr__) \ : [val__] "d" (val__) \ : "cc"); \ - preempt_enable(); \ + preempt_enable_notrace(); \ old__ + val__; \ }) @@ -114,14 +114,14 @@ typedef typeof(pcp) pcp_op_T__; \ pcp_op_T__ val__ = (val); \ pcp_op_T__ old__, *ptr__; \ - preempt_disable(); \ + preempt_disable_notrace(); \ ptr__ = raw_cpu_ptr(&(pcp)); \ asm volatile( \ op " %[old__],%[val__],%[ptr__]\n" \ : [old__] "=d" (old__), [ptr__] "+Q" (*ptr__) \ : [val__] "d" (val__) \ : "cc"); \ - preempt_enable(); \ + preempt_enable_notrace(); \ } #define this_cpu_and_4(pcp, val) arch_this_cpu_to_op(pcp, val, "lan") @@ -136,10 +136,10 @@ typedef typeof(pcp) pcp_op_T__; \ pcp_op_T__ ret__; \ pcp_op_T__ *ptr__; \ - preempt_disable(); \ + preempt_disable_notrace(); \ ptr__ = raw_cpu_ptr(&(pcp)); \ ret__ = cmpxchg(ptr__, oval, nval); \ - preempt_enable(); \ + preempt_enable_notrace(); \ ret__; \ }) @@ -152,10 +152,10 @@ ({ \ typeof(pcp) *ptr__; \ typeof(pcp) ret__; \ - preempt_disable(); \ + preempt_disable_notrace(); \ ptr__ = raw_cpu_ptr(&(pcp)); \ ret__ = xchg(ptr__, nval); \ - preempt_enable(); \ + preempt_enable_notrace(); \ ret__; \ }) @@ -171,11 +171,11 @@ typeof(pcp1) *p1__; \ typeof(pcp2) *p2__; \ int ret__; \ - preempt_disable(); \ + preempt_disable_notrace(); \ p1__ = raw_cpu_ptr(&(pcp1)); \ p2__ = raw_cpu_ptr(&(pcp2)); \ ret__ = __cmpxchg_double(p1__, p2__, o1__, o2__, n1__, n2__); \ - preempt_enable(); \ + preempt_enable_notrace(); \ ret__; \ }) --- linux-azure-5.8-5.8.0.orig/arch/s390/include/asm/pgtable.h +++ linux-azure-5.8-5.8.0/arch/s390/include/asm/pgtable.h @@ -691,16 +691,6 @@ return !!(pud_val(pud) & _REGION3_ENTRY_LARGE); } -static inline unsigned long pud_pfn(pud_t pud) -{ - unsigned long origin_mask; - - origin_mask = _REGION_ENTRY_ORIGIN; - if (pud_large(pud)) - origin_mask = _REGION3_ENTRY_ORIGIN_LARGE; - return (pud_val(pud) & origin_mask) >> PAGE_SHIFT; -} - #define pmd_leaf pmd_large static inline int pmd_large(pmd_t pmd) { @@ -746,16 +736,6 @@ return pmd_val(pmd) == _SEGMENT_ENTRY_EMPTY; } -static inline unsigned long pmd_pfn(pmd_t pmd) -{ - unsigned long origin_mask; - - origin_mask = _SEGMENT_ENTRY_ORIGIN; - if (pmd_large(pmd)) - origin_mask = _SEGMENT_ENTRY_ORIGIN_LARGE; - return (pmd_val(pmd) & origin_mask) >> PAGE_SHIFT; -} - #define pmd_write pmd_write static inline int pmd_write(pmd_t pmd) { @@ -1230,11 +1210,39 @@ #define pud_index(address) (((address) >> PUD_SHIFT) & (PTRS_PER_PUD-1)) #define pmd_index(address) (((address) >> PMD_SHIFT) & (PTRS_PER_PMD-1)) -#define pmd_deref(pmd) (pmd_val(pmd) & _SEGMENT_ENTRY_ORIGIN) -#define pud_deref(pud) (pud_val(pud) & _REGION_ENTRY_ORIGIN) #define p4d_deref(pud) (p4d_val(pud) & _REGION_ENTRY_ORIGIN) #define pgd_deref(pgd) (pgd_val(pgd) & _REGION_ENTRY_ORIGIN) +static inline unsigned long pmd_deref(pmd_t pmd) +{ + unsigned long origin_mask; + + origin_mask = _SEGMENT_ENTRY_ORIGIN; + if (pmd_large(pmd)) + origin_mask = _SEGMENT_ENTRY_ORIGIN_LARGE; + return pmd_val(pmd) & origin_mask; +} + +static inline unsigned long pmd_pfn(pmd_t pmd) +{ + return pmd_deref(pmd) >> PAGE_SHIFT; +} + +static inline unsigned long pud_deref(pud_t pud) +{ + unsigned long origin_mask; + + origin_mask = _REGION_ENTRY_ORIGIN; + if (pud_large(pud)) + origin_mask = _REGION3_ENTRY_ORIGIN_LARGE; + return pud_val(pud) & origin_mask; +} + +static inline unsigned long pud_pfn(pud_t pud) +{ + return pud_deref(pud) >> PAGE_SHIFT; +} + /* * The pgd_offset function *always* adds the index for the top-level * region/segment table. This is done to get a sequence like the @@ -1260,26 +1268,44 @@ #define pgd_offset(mm, address) pgd_offset_raw(READ_ONCE((mm)->pgd), address) -static inline p4d_t *p4d_offset(pgd_t *pgd, unsigned long address) +static inline p4d_t *p4d_offset_lockless(pgd_t *pgdp, pgd_t pgd, unsigned long address) +{ + if ((pgd_val(pgd) & _REGION_ENTRY_TYPE_MASK) >= _REGION_ENTRY_TYPE_R1) + return (p4d_t *) pgd_deref(pgd) + p4d_index(address); + return (p4d_t *) pgdp; +} +#define p4d_offset_lockless p4d_offset_lockless + +static inline p4d_t *p4d_offset(pgd_t *pgdp, unsigned long address) { - if ((pgd_val(*pgd) & _REGION_ENTRY_TYPE_MASK) >= _REGION_ENTRY_TYPE_R1) - return (p4d_t *) pgd_deref(*pgd) + p4d_index(address); - return (p4d_t *) pgd; + return p4d_offset_lockless(pgdp, *pgdp, address); } -static inline pud_t *pud_offset(p4d_t *p4d, unsigned long address) +static inline pud_t *pud_offset_lockless(p4d_t *p4dp, p4d_t p4d, unsigned long address) { - if ((p4d_val(*p4d) & _REGION_ENTRY_TYPE_MASK) >= _REGION_ENTRY_TYPE_R2) - return (pud_t *) p4d_deref(*p4d) + pud_index(address); - return (pud_t *) p4d; + if ((p4d_val(p4d) & _REGION_ENTRY_TYPE_MASK) >= _REGION_ENTRY_TYPE_R2) + return (pud_t *) p4d_deref(p4d) + pud_index(address); + return (pud_t *) p4dp; +} +#define pud_offset_lockless pud_offset_lockless + +static inline pud_t *pud_offset(p4d_t *p4dp, unsigned long address) +{ + return pud_offset_lockless(p4dp, *p4dp, address); } #define pud_offset pud_offset -static inline pmd_t *pmd_offset(pud_t *pud, unsigned long address) +static inline pmd_t *pmd_offset_lockless(pud_t *pudp, pud_t pud, unsigned long address) +{ + if ((pud_val(pud) & _REGION_ENTRY_TYPE_MASK) >= _REGION_ENTRY_TYPE_R3) + return (pmd_t *) pud_deref(pud) + pmd_index(address); + return (pmd_t *) pudp; +} +#define pmd_offset_lockless pmd_offset_lockless + +static inline pmd_t *pmd_offset(pud_t *pudp, unsigned long address) { - if ((pud_val(*pud) & _REGION_ENTRY_TYPE_MASK) >= _REGION_ENTRY_TYPE_R3) - return (pmd_t *) pud_deref(*pud) + pmd_index(address); - return (pmd_t *) pud; + return pmd_offset_lockless(pudp, *pudp, address); } #define pmd_offset pmd_offset --- linux-azure-5.8-5.8.0.orig/arch/s390/include/asm/topology.h +++ linux-azure-5.8-5.8.0/arch/s390/include/asm/topology.h @@ -86,12 +86,6 @@ #define pcibus_to_node(bus) __pcibus_to_node(bus) -#define node_distance(a, b) __node_distance(a, b) -static inline int __node_distance(int a, int b) -{ - return 0; -} - #else /* !CONFIG_NUMA */ #define numa_node_id numa_node_id --- linux-azure-5.8-5.8.0.orig/arch/s390/include/asm/uv.h +++ linux-azure-5.8-5.8.0/arch/s390/include/asm/uv.h @@ -95,7 +95,7 @@ u32 max_num_sec_conf; u64 max_guest_stor_addr; u8 reserved88[158 - 136]; - u16 max_guest_cpus; + u16 max_guest_cpu_id; u8 reserveda0[200 - 160]; } __packed __aligned(8); @@ -272,7 +272,7 @@ unsigned long guest_cpu_stor_len; unsigned long max_sec_stor_addr; unsigned int max_num_sec_conf; - unsigned short max_guest_cpus; + unsigned short max_guest_cpu_id; }; extern struct uv_info uv_info; --- linux-azure-5.8-5.8.0.orig/arch/s390/kernel/Makefile +++ linux-azure-5.8-5.8.0/arch/s390/kernel/Makefile @@ -76,3 +76,6 @@ # vdso obj-y += vdso64/ + +# kernel message catalog +obj-$(CONFIG_KMSG_IDS) += kmsg.o --- linux-azure-5.8-5.8.0.orig/arch/s390/kernel/asm-offsets.c +++ linux-azure-5.8-5.8.0/arch/s390/kernel/asm-offsets.c @@ -53,11 +53,11 @@ /* stack_frame offsets */ OFFSET(__SF_BACKCHAIN, stack_frame, back_chain); OFFSET(__SF_GPRS, stack_frame, gprs); - OFFSET(__SF_EMPTY, stack_frame, empty1); - OFFSET(__SF_SIE_CONTROL, stack_frame, empty1[0]); - OFFSET(__SF_SIE_SAVEAREA, stack_frame, empty1[1]); - OFFSET(__SF_SIE_REASON, stack_frame, empty1[2]); - OFFSET(__SF_SIE_FLAGS, stack_frame, empty1[3]); + OFFSET(__SF_EMPTY, stack_frame, empty1[0]); + OFFSET(__SF_SIE_CONTROL, stack_frame, empty1[1]); + OFFSET(__SF_SIE_SAVEAREA, stack_frame, empty1[2]); + OFFSET(__SF_SIE_REASON, stack_frame, empty1[3]); + OFFSET(__SF_SIE_FLAGS, stack_frame, empty1[4]); BLANK(); /* timeval/timezone offsets for use by vdso */ OFFSET(__VDSO_UPD_COUNT, vdso_data, tb_update_count); --- linux-azure-5.8-5.8.0.orig/arch/s390/kernel/entry.S +++ linux-azure-5.8-5.8.0/arch/s390/kernel/entry.S @@ -110,9 +110,9 @@ #endif .endm - .macro SWITCH_ASYNC savearea,timer + .macro SWITCH_ASYNC savearea,timer,clock tmhh %r8,0x0001 # interrupting from user ? - jnz 2f + jnz 4f #if IS_ENABLED(CONFIG_KVM) lgr %r14,%r9 larl %r13,.Lsie_gmap @@ -125,10 +125,26 @@ #endif 0: larl %r13,.Lpsw_idle_exit cgr %r13,%r9 - jne 1f + jne 3f + + larl %r1,smp_cpu_mtid + llgf %r1,0(%r1) + ltgr %r1,%r1 + jz 2f # no SMT, skip mt_cycles calculation + .insn rsy,0xeb0000000017,%r1,5,__SF_EMPTY+80(%r15) + larl %r3,mt_cycles + ag %r3,__LC_PERCPU_OFFSET + la %r4,__SF_EMPTY+16(%r15) +1: lg %r0,0(%r3) + slg %r0,0(%r4) + alg %r0,64(%r4) + stg %r0,0(%r3) + la %r3,8(%r3) + la %r4,8(%r4) + brct %r1,1b - mvc __CLOCK_IDLE_EXIT(8,%r2), __LC_INT_CLOCK - mvc __TIMER_IDLE_EXIT(8,%r2), __LC_ASYNC_ENTER_TIMER +2: mvc __CLOCK_IDLE_EXIT(8,%r2), \clock + mvc __TIMER_IDLE_EXIT(8,%r2), \timer # account system time going idle ni __LC_CPU_FLAGS+7,255-_CIF_ENABLED_WAIT @@ -146,17 +162,17 @@ mvc __LC_LAST_UPDATE_TIMER(8),__TIMER_IDLE_EXIT(%r2) nihh %r8,0xfcfd # clear wait state and irq bits -1: lg %r14,__LC_ASYNC_STACK # are we already on the target stack? +3: lg %r14,__LC_ASYNC_STACK # are we already on the target stack? slgr %r14,%r15 srag %r14,%r14,STACK_SHIFT - jnz 3f + jnz 5f CHECK_STACK \savearea aghi %r15,-(STACK_FRAME_OVERHEAD + __PT_SIZE) - j 4f -2: UPDATE_VTIME %r14,%r15,\timer + j 6f +4: UPDATE_VTIME %r14,%r15,\timer BPENTER __TI_flags(%r12),_TIF_ISOLATE_BP -3: lg %r15,__LC_ASYNC_STACK # load async stack -4: la %r11,STACK_FRAME_OVERHEAD(%r15) +5: lg %r15,__LC_ASYNC_STACK # load async stack +6: la %r11,STACK_FRAME_OVERHEAD(%r15) .endm .macro UPDATE_VTIME w1,w2,enter_timer @@ -390,6 +406,7 @@ mvc __PT_PSW(16,%r11),__LC_SVC_OLD_PSW mvc __PT_INT_CODE(4,%r11),__LC_SVC_ILC stg %r14,__PT_FLAGS(%r11) + xc __SF_BACKCHAIN(8,%r15),__SF_BACKCHAIN(%r15) ENABLE_INTS .Lsysc_do_svc: # clear user controlled register to prevent speculative use @@ -406,7 +423,6 @@ jnl .Lsysc_nr_ok slag %r8,%r1,3 .Lsysc_nr_ok: - xc __SF_BACKCHAIN(8,%r15),__SF_BACKCHAIN(%r15) stg %r2,__PT_ORIG_GPR2(%r11) stg %r7,STACK_FRAME_OVERHEAD(%r15) lg %r9,0(%r8,%r10) # get system call add. @@ -422,6 +438,7 @@ #endif LOCKDEP_SYS_EXIT .Lsysc_tif: + DISABLE_INTS TSTMSK __PT_FLAGS(%r11),_PIF_WORK jnz .Lsysc_work TSTMSK __TI_flags(%r12),_TIF_WORK @@ -446,6 +463,7 @@ # One of the work bits is on. Find out which one. # .Lsysc_work: + ENABLE_INTS TSTMSK __TI_flags(%r12),_TIF_NEED_RESCHED jo .Lsysc_reschedule TSTMSK __PT_FLAGS(%r11),_PIF_SYSCALL_RESTART @@ -696,8 +714,8 @@ mvc __THREAD_per_address(8,%r14),__LC_PER_ADDRESS mvc __THREAD_per_cause(2,%r14),__LC_PER_CODE mvc __THREAD_per_paid(1,%r14),__LC_PER_ACCESS_ID -6: RESTORE_SM_CLEAR_PER - xc __SF_BACKCHAIN(8,%r15),__SF_BACKCHAIN(%r15) +6: xc __SF_BACKCHAIN(8,%r15),__SF_BACKCHAIN(%r15) + RESTORE_SM_CLEAR_PER larl %r1,pgm_check_table llgh %r10,__PT_INT_CODE+2(%r11) nill %r10,0x007f @@ -718,8 +736,8 @@ # PER event in supervisor state, must be kprobes # .Lpgm_kprobe: - RESTORE_SM_CLEAR_PER xc __SF_BACKCHAIN(8,%r15),__SF_BACKCHAIN(%r15) + RESTORE_SM_CLEAR_PER lgr %r2,%r11 # pass pointer to pt_regs brasl %r14,do_per_trap j .Lpgm_return @@ -745,7 +763,7 @@ stmg %r8,%r15,__LC_SAVE_AREA_ASYNC lg %r12,__LC_CURRENT lmg %r8,%r9,__LC_IO_OLD_PSW - SWITCH_ASYNC __LC_SAVE_AREA_ASYNC,__LC_ASYNC_ENTER_TIMER + SWITCH_ASYNC __LC_SAVE_AREA_ASYNC,__LC_ASYNC_ENTER_TIMER,__LC_INT_CLOCK stmg %r0,%r7,__PT_R0(%r11) # clear user controlled registers to prevent speculative use xgr %r0,%r0 @@ -761,15 +779,10 @@ stmg %r8,%r9,__PT_PSW(%r11) mvc __PT_INT_CODE(12,%r11),__LC_SUBCHANNEL_ID xc __PT_FLAGS(8,%r11),__PT_FLAGS(%r11) + xc __SF_BACKCHAIN(8,%r15),__SF_BACKCHAIN(%r15) TSTMSK __LC_CPU_FLAGS,_CIF_IGNORE_IRQ jo .Lio_restore -#if IS_ENABLED(CONFIG_TRACE_IRQFLAGS) - tmhh %r8,0x300 - jz 1f TRACE_IRQS_OFF -1: -#endif - xc __SF_BACKCHAIN(8,%r15),__SF_BACKCHAIN(%r15) .Lio_loop: lgr %r2,%r11 # pass pointer to pt_regs lghi %r3,IO_INTERRUPT @@ -791,12 +804,7 @@ TSTMSK __LC_CPU_FLAGS,_CIF_WORK jnz .Lio_work .Lio_restore: -#if IS_ENABLED(CONFIG_TRACE_IRQFLAGS) - tm __PT_PSW(%r11),3 - jno 0f TRACE_IRQS_ON -0: -#endif lg %r14,__LC_VDSO_PER_CPU mvc __LC_RETURN_PSW(16),__PT_PSW(%r11) tm __PT_PSW+1(%r11),0x01 # returning to user ? @@ -957,7 +965,7 @@ stmg %r8,%r15,__LC_SAVE_AREA_ASYNC lg %r12,__LC_CURRENT lmg %r8,%r9,__LC_EXT_OLD_PSW - SWITCH_ASYNC __LC_SAVE_AREA_ASYNC,__LC_ASYNC_ENTER_TIMER + SWITCH_ASYNC __LC_SAVE_AREA_ASYNC,__LC_ASYNC_ENTER_TIMER,__LC_INT_CLOCK stmg %r0,%r7,__PT_R0(%r11) # clear user controlled registers to prevent speculative use xgr %r0,%r0 @@ -976,15 +984,10 @@ mvc __PT_INT_PARM(4,%r11),__LC_EXT_PARAMS mvc __PT_INT_PARM_LONG(8,%r11),0(%r1) xc __PT_FLAGS(8,%r11),__PT_FLAGS(%r11) + xc __SF_BACKCHAIN(8,%r15),__SF_BACKCHAIN(%r15) TSTMSK __LC_CPU_FLAGS,_CIF_IGNORE_IRQ jo .Lio_restore -#if IS_ENABLED(CONFIG_TRACE_IRQFLAGS) - tmhh %r8,0x300 - jz 1f TRACE_IRQS_OFF -1: -#endif - xc __SF_BACKCHAIN(8,%r15),__SF_BACKCHAIN(%r15) lgr %r2,%r11 # pass pointer to pt_regs lghi %r3,EXT_INTERRUPT brasl %r14,do_IRQ @@ -1070,6 +1073,7 @@ * %r4 */ load_fpu_regs: + stnsm __SF_EMPTY(%r15),0xfc lg %r4,__LC_CURRENT aghi %r4,__TASK_thread TSTMSK __LC_CPU_FLAGS,_CIF_FPU @@ -1101,6 +1105,7 @@ .Lload_fpu_regs_done: ni __LC_CPU_FLAGS+7,255-_CIF_FPU .Lload_fpu_regs_exit: + ssm __SF_EMPTY(%r15) BR_EX %r14 .Lload_fpu_regs_end: ENDPROC(load_fpu_regs) @@ -1182,7 +1187,7 @@ TSTMSK __LC_MCCK_CODE,MCCK_CODE_PSW_IA_VALID jno .Lmcck_panic 4: ssm __LC_PGM_NEW_PSW # turn dat on, keep irqs off - SWITCH_ASYNC __LC_GPREGS_SAVE_AREA+64,__LC_MCCK_ENTER_TIMER + SWITCH_ASYNC __LC_GPREGS_SAVE_AREA+64,__LC_MCCK_ENTER_TIMER,__LC_MCCK_CLOCK .Lmcck_skip: lghi %r14,__LC_GPREGS_SAVE_AREA+64 stmg %r0,%r7,__PT_R0(%r11) --- linux-azure-5.8-5.8.0.orig/arch/s390/kernel/entry.h +++ linux-azure-5.8-5.8.0/arch/s390/kernel/entry.h @@ -26,6 +26,7 @@ void do_dat_exception(struct pt_regs *regs); void do_secure_storage_access(struct pt_regs *regs); void do_non_secure_storage_access(struct pt_regs *regs); +void do_secure_storage_violation(struct pt_regs *regs); void addressing_exception(struct pt_regs *regs); void data_exception(struct pt_regs *regs); --- linux-azure-5.8-5.8.0.orig/arch/s390/kernel/ipl.c +++ linux-azure-5.8-5.8.0/arch/s390/kernel/ipl.c @@ -2110,3 +2110,8 @@ } #endif + +bool ipl_get_secureboot(void) +{ + return !!ipl_secure_flag; +} --- linux-azure-5.8-5.8.0.orig/arch/s390/kernel/kmsg.c +++ linux-azure-5.8-5.8.0/arch/s390/kernel/kmsg.c @@ -0,0 +1,114 @@ +/* + * Message printing with message catalog prefixes. + * + * Copyright IBM Corp. 2012 + */ + +#include +#include +#include +#include +#include + +static inline u32 __printk_jhash(const void *key, u32 length) +{ + u32 a, b, c, len; + const u8 *k; + u8 zk[12]; + + a = b = 0x9e3779b9; + c = 0; + for (len = length + 12, k = key; len >= 12; len -= 12, k += 12) { + if (len >= 24) { + a += k[0] | k[1] << 8 | k[2] << 16 | k[3] << 24; + b += k[4] | k[5] << 8 | k[6] << 16 | k[7] << 24; + c += k[8] | k[9] << 8 | k[10] << 16 | k[11] << 24; + } else { + memset(zk, 0, 12); + memcpy(zk, k, len - 12); + a += zk[0] | zk[1] << 8 | zk[2] << 16 | zk[3] << 24; + b += zk[4] | zk[5] << 8 | zk[6] << 16 | zk[7] << 24; + c += (u32) zk[8] << 8; + c += (u32) zk[9] << 16; + c += (u32) zk[10] << 24; + c += length; + } + a -= b + c; a ^= (c>>13); + b -= a + c; b ^= (a<<8); + c -= a + b; c ^= (b>>13); + a -= b + c; a ^= (c>>12); + b -= a + c; b ^= (a<<16); + c -= a + b; c ^= (b>>5); + a -= b + c; a ^= (c>>3); + b -= a + c; b ^= (a<<10); + c -= a + b; c ^= (b>>15); + } + return c; +} + +/** + * __jhash_string - calculate the six digit jhash of a string + * @str: string to calculate the jhash + */ +unsigned long long __jhash_string(const char *str) +{ + return __printk_jhash(str, strlen(str)) & 0xffffff; +} +EXPORT_SYMBOL(__jhash_string); + +static int __dev_printk_hash(const char *level, const struct device *dev, + struct va_format *vaf) +{ + if (!dev) + return printk("%s(NULL device *): %pV", level, vaf); + + return printk("%s%s.%06x: %pV", level, dev_driver_string(dev), + __printk_jhash(vaf->fmt, strlen(vaf->fmt)) & 0xffffff, + vaf); +} + +int dev_printk_hash(const char *level, const struct device *dev, + const char *fmt, ...) +{ + struct va_format vaf; + va_list args; + int r; + + va_start(args, fmt); + + vaf.fmt = fmt; + vaf.va = &args; + + r = __dev_printk_hash(level, dev, &vaf); + va_end(args); + + return r; +} +EXPORT_SYMBOL(dev_printk_hash); + +#define define_dev_printk_hash_level(func, kern_level) \ +int func(const struct device *dev, const char *fmt, ...) \ +{ \ + struct va_format vaf; \ + va_list args; \ + int r; \ + \ + va_start(args, fmt); \ + \ + vaf.fmt = fmt; \ + vaf.va = &args; \ + \ + r = __dev_printk_hash(kern_level, dev, &vaf); \ + va_end(args); \ + \ + return r; \ +} \ +EXPORT_SYMBOL(func); + +define_dev_printk_hash_level(dev_emerg_hash, KERN_EMERG); +define_dev_printk_hash_level(dev_alert_hash, KERN_ALERT); +define_dev_printk_hash_level(dev_crit_hash, KERN_CRIT); +define_dev_printk_hash_level(dev_err_hash, KERN_ERR); +define_dev_printk_hash_level(dev_warn_hash, KERN_WARNING); +define_dev_printk_hash_level(dev_notice_hash, KERN_NOTICE); +define_dev_printk_hash_level(_dev_info_hash, KERN_INFO); --- linux-azure-5.8-5.8.0.orig/arch/s390/kernel/perf_cpum_sf.c +++ linux-azure-5.8-5.8.0/arch/s390/kernel/perf_cpum_sf.c @@ -2228,4 +2228,4 @@ } arch_initcall(init_cpum_sampling_pmu); -core_param(cpum_sfb_size, CPUM_SF_MAX_SDB, sfb_size, 0640); +core_param(cpum_sfb_size, CPUM_SF_MAX_SDB, sfb_size, 0644); --- linux-azure-5.8-5.8.0.orig/arch/s390/kernel/pgm_check.S +++ linux-azure-5.8-5.8.0/arch/s390/kernel/pgm_check.S @@ -80,7 +80,7 @@ PGM_CHECK_DEFAULT /* 3c */ PGM_CHECK(do_secure_storage_access) /* 3d */ PGM_CHECK(do_non_secure_storage_access) /* 3e */ -PGM_CHECK_DEFAULT /* 3f */ +PGM_CHECK(do_secure_storage_violation) /* 3f */ PGM_CHECK(monitor_event_exception) /* 40 */ PGM_CHECK_DEFAULT /* 41 */ PGM_CHECK_DEFAULT /* 42 */ --- linux-azure-5.8-5.8.0.orig/arch/s390/kernel/ptrace.c +++ linux-azure-5.8-5.8.0/arch/s390/kernel/ptrace.c @@ -1310,7 +1310,6 @@ cb->pc == 1 && cb->qc == 0 && cb->reserved2 == 0 && - cb->key == PAGE_DEFAULT_KEY && cb->reserved3 == 0 && cb->reserved4 == 0 && cb->reserved5 == 0 && @@ -1374,7 +1373,11 @@ kfree(data); return -EINVAL; } - + /* + * Override access key in any case, since user space should + * not be able to set it, nor should it care about it. + */ + ri_cb.key = PAGE_DEFAULT_KEY >> 4; preempt_disable(); if (!target->thread.ri_cb) target->thread.ri_cb = data; --- linux-azure-5.8-5.8.0.orig/arch/s390/kernel/runtime_instr.c +++ linux-azure-5.8-5.8.0/arch/s390/kernel/runtime_instr.c @@ -57,7 +57,7 @@ cb->k = 1; cb->ps = 1; cb->pc = 1; - cb->key = PAGE_DEFAULT_KEY; + cb->key = PAGE_DEFAULT_KEY >> 4; cb->v = 1; } --- linux-azure-5.8-5.8.0.orig/arch/s390/kernel/setup.c +++ linux-azure-5.8-5.8.0/arch/s390/kernel/setup.c @@ -49,6 +49,7 @@ #include #include #include +#include #include #include @@ -619,7 +620,7 @@ /* * Make sure that the area behind memory_end is protected */ -static void reserve_memory_end(void) +static void __init reserve_memory_end(void) { if (memory_end_set) memblock_reserve(memory_end, ULONG_MAX); @@ -628,7 +629,7 @@ /* * Make sure that oldmem, where the dump is stored, is protected */ -static void reserve_oldmem(void) +static void __init reserve_oldmem(void) { #ifdef CONFIG_CRASH_DUMP if (OLDMEM_BASE) @@ -640,7 +641,7 @@ /* * Make sure that oldmem, where the dump is stored, is protected */ -static void remove_oldmem(void) +static void __init remove_oldmem(void) { #ifdef CONFIG_CRASH_DUMP if (OLDMEM_BASE) @@ -1086,6 +1087,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-azure-5.8-5.8.0.orig/arch/s390/kernel/smp.c +++ linux-azure-5.8-5.8.0/arch/s390/kernel/smp.c @@ -855,13 +855,14 @@ static void smp_init_secondary(void) { - int cpu = smp_processor_id(); + int cpu = raw_smp_processor_id(); S390_lowcore.last_update_clock = get_tod_clock(); restore_access_regs(S390_lowcore.access_regs_save_area); set_cpu_flag(CIF_ASCE_PRIMARY); set_cpu_flag(CIF_ASCE_SECONDARY); cpu_init(); + rcu_cpu_starting(cpu); preempt_disable(); init_cpu_timer(); vtime_init(); @@ -895,24 +896,12 @@ /* Upping and downing of CPUs */ int __cpu_up(unsigned int cpu, struct task_struct *tidle) { - struct pcpu *pcpu; - int base, i, rc; + struct pcpu *pcpu = pcpu_devices + cpu; + int rc; - pcpu = pcpu_devices + cpu; if (pcpu->state != CPU_STATE_CONFIGURED) return -EIO; - base = smp_get_base_cpu(cpu); - for (i = 0; i <= smp_cpu_mtid; i++) { - if (base + i < nr_cpu_ids) - if (cpu_online(base + i)) - break; - } - /* - * If this is the first CPU of the core to get online - * do an initial CPU reset. - */ - if (i > smp_cpu_mtid && - pcpu_sigp_retry(pcpu_devices + base, SIGP_INITIAL_CPU_RESET, 0) != + if (pcpu_sigp_retry(pcpu, SIGP_INITIAL_CPU_RESET, 0) != SIGP_CC_ORDER_CODE_ACCEPTED) return -EIO; --- linux-azure-5.8-5.8.0.orig/arch/s390/kernel/time.c +++ linux-azure-5.8-5.8.0/arch/s390/kernel/time.c @@ -345,8 +345,9 @@ static DEFINE_MUTEX(clock_sync_mutex); static unsigned long clock_sync_flags; -#define CLOCK_SYNC_HAS_STP 0 -#define CLOCK_SYNC_STP 1 +#define CLOCK_SYNC_HAS_STP 0 +#define CLOCK_SYNC_STP 1 +#define CLOCK_SYNC_STPINFO_VALID 2 /* * The get_clock function for the physical clock. It will get the current @@ -583,6 +584,22 @@ queue_work(time_sync_wq, &stp_work); } +static int __store_stpinfo(void) +{ + int rc = chsc_sstpi(stp_page, &stp_info, sizeof(struct stp_sstpi)); + + if (rc) + clear_bit(CLOCK_SYNC_STPINFO_VALID, &clock_sync_flags); + else + set_bit(CLOCK_SYNC_STPINFO_VALID, &clock_sync_flags); + return rc; +} + +static int stpinfo_valid(void) +{ + return stp_online && test_bit(CLOCK_SYNC_STPINFO_VALID, &clock_sync_flags); +} + static int stp_sync_clock(void *data) { struct clock_sync_data *sync = data; @@ -604,8 +621,7 @@ if (rc == 0) { sync->clock_delta = clock_delta; clock_sync_global(clock_delta); - rc = chsc_sstpi(stp_page, &stp_info, - sizeof(struct stp_sstpi)); + rc = __store_stpinfo(); if (rc == 0 && stp_info.tmd != 2) rc = -EAGAIN; } @@ -650,7 +666,7 @@ if (rc) goto out_unlock; - rc = chsc_sstpi(stp_page, &stp_info, sizeof(struct stp_sstpi)); + rc = __store_stpinfo(); if (rc || stp_info.c == 0) goto out_unlock; @@ -687,10 +703,14 @@ struct device_attribute *attr, char *buf) { - if (!stp_online) - return -ENODATA; - return sprintf(buf, "%016llx\n", - *(unsigned long long *) stp_info.ctnid); + ssize_t ret = -ENODATA; + + mutex_lock(&stp_work_mutex); + if (stpinfo_valid()) + ret = sprintf(buf, "%016llx\n", + *(unsigned long long *) stp_info.ctnid); + mutex_unlock(&stp_work_mutex); + return ret; } static DEVICE_ATTR(ctn_id, 0400, stp_ctn_id_show, NULL); @@ -699,9 +719,13 @@ struct device_attribute *attr, char *buf) { - if (!stp_online) - return -ENODATA; - return sprintf(buf, "%i\n", stp_info.ctn); + ssize_t ret = -ENODATA; + + mutex_lock(&stp_work_mutex); + if (stpinfo_valid()) + ret = sprintf(buf, "%i\n", stp_info.ctn); + mutex_unlock(&stp_work_mutex); + return ret; } static DEVICE_ATTR(ctn_type, 0400, stp_ctn_type_show, NULL); @@ -710,9 +734,13 @@ struct device_attribute *attr, char *buf) { - if (!stp_online || !(stp_info.vbits & 0x2000)) - return -ENODATA; - return sprintf(buf, "%i\n", (int)(s16) stp_info.dsto); + ssize_t ret = -ENODATA; + + mutex_lock(&stp_work_mutex); + if (stpinfo_valid() && (stp_info.vbits & 0x2000)) + ret = sprintf(buf, "%i\n", (int)(s16) stp_info.dsto); + mutex_unlock(&stp_work_mutex); + return ret; } static DEVICE_ATTR(dst_offset, 0400, stp_dst_offset_show, NULL); @@ -721,9 +749,13 @@ struct device_attribute *attr, char *buf) { - if (!stp_online || !(stp_info.vbits & 0x8000)) - return -ENODATA; - return sprintf(buf, "%i\n", (int)(s16) stp_info.leaps); + ssize_t ret = -ENODATA; + + mutex_lock(&stp_work_mutex); + if (stpinfo_valid() && (stp_info.vbits & 0x8000)) + ret = sprintf(buf, "%i\n", (int)(s16) stp_info.leaps); + mutex_unlock(&stp_work_mutex); + return ret; } static DEVICE_ATTR(leap_seconds, 0400, stp_leap_seconds_show, NULL); @@ -732,9 +764,13 @@ struct device_attribute *attr, char *buf) { - if (!stp_online) - return -ENODATA; - return sprintf(buf, "%i\n", (int)(s16) stp_info.stratum); + ssize_t ret = -ENODATA; + + mutex_lock(&stp_work_mutex); + if (stpinfo_valid()) + ret = sprintf(buf, "%i\n", (int)(s16) stp_info.stratum); + mutex_unlock(&stp_work_mutex); + return ret; } static DEVICE_ATTR(stratum, 0400, stp_stratum_show, NULL); @@ -743,9 +779,13 @@ struct device_attribute *attr, char *buf) { - if (!stp_online || !(stp_info.vbits & 0x0800)) - return -ENODATA; - return sprintf(buf, "%i\n", (int) stp_info.tto); + ssize_t ret = -ENODATA; + + mutex_lock(&stp_work_mutex); + if (stpinfo_valid() && (stp_info.vbits & 0x0800)) + ret = sprintf(buf, "%i\n", (int) stp_info.tto); + mutex_unlock(&stp_work_mutex); + return ret; } static DEVICE_ATTR(time_offset, 0400, stp_time_offset_show, NULL); @@ -754,9 +794,13 @@ struct device_attribute *attr, char *buf) { - if (!stp_online || !(stp_info.vbits & 0x4000)) - return -ENODATA; - return sprintf(buf, "%i\n", (int)(s16) stp_info.tzo); + ssize_t ret = -ENODATA; + + mutex_lock(&stp_work_mutex); + if (stpinfo_valid() && (stp_info.vbits & 0x4000)) + ret = sprintf(buf, "%i\n", (int)(s16) stp_info.tzo); + mutex_unlock(&stp_work_mutex); + return ret; } static DEVICE_ATTR(time_zone_offset, 0400, @@ -766,9 +810,13 @@ struct device_attribute *attr, char *buf) { - if (!stp_online) - return -ENODATA; - return sprintf(buf, "%i\n", stp_info.tmd); + ssize_t ret = -ENODATA; + + mutex_lock(&stp_work_mutex); + if (stpinfo_valid()) + ret = sprintf(buf, "%i\n", stp_info.tmd); + mutex_unlock(&stp_work_mutex); + return ret; } static DEVICE_ATTR(timing_mode, 0400, stp_timing_mode_show, NULL); @@ -777,9 +825,13 @@ struct device_attribute *attr, char *buf) { - if (!stp_online) - return -ENODATA; - return sprintf(buf, "%i\n", stp_info.tst); + ssize_t ret = -ENODATA; + + mutex_lock(&stp_work_mutex); + if (stpinfo_valid()) + ret = sprintf(buf, "%i\n", stp_info.tst); + mutex_unlock(&stp_work_mutex); + return ret; } static DEVICE_ATTR(timing_state, 0400, stp_timing_state_show, NULL); --- linux-azure-5.8-5.8.0.orig/arch/s390/kernel/uv.c +++ linux-azure-5.8-5.8.0/arch/s390/kernel/uv.c @@ -345,7 +345,7 @@ struct kobj_attribute *attr, char *page) { return scnprintf(page, PAGE_SIZE, "%d\n", - uv_info.max_guest_cpus); + uv_info.max_guest_cpu_id + 1); } static struct kobj_attribute uv_query_max_guest_cpus_attr = --- linux-azure-5.8-5.8.0.orig/arch/s390/kernel/vdso64/Makefile +++ linux-azure-5.8-5.8.0/arch/s390/kernel/vdso64/Makefile @@ -19,7 +19,7 @@ KBUILD_CFLAGS_64 := $(filter-out -m64,$(KBUILD_CFLAGS)) KBUILD_CFLAGS_64 += -m64 -fPIC -shared -fno-common -fno-builtin ldflags-y := -fPIC -shared -nostdlib -soname=linux-vdso64.so.1 \ - --hash-style=both --build-id -T + --hash-style=both --build-id=sha1 -T $(targets:%=$(obj)/%.dbg): KBUILD_CFLAGS = $(KBUILD_CFLAGS_64) $(targets:%=$(obj)/%.dbg): KBUILD_AFLAGS = $(KBUILD_AFLAGS_64) --- linux-azure-5.8-5.8.0.orig/arch/s390/kernel/vtime.c +++ linux-azure-5.8-5.8.0/arch/s390/kernel/vtime.c @@ -136,7 +136,8 @@ " stck %1" /* Store current tod clock value */ #endif : "=Q" (S390_lowcore.last_update_timer), - "=Q" (S390_lowcore.last_update_clock)); + "=Q" (S390_lowcore.last_update_clock) + : : "cc"); clock = S390_lowcore.last_update_clock - clock; timer -= S390_lowcore.last_update_timer; @@ -216,7 +217,7 @@ avg_steal = S390_lowcore.avg_steal_timer / 2; if ((s64) steal > 0) { S390_lowcore.steal_timer = 0; - account_steal_time(steal); + account_steal_time(cputime_to_nsecs(steal)); avg_steal += steal; } S390_lowcore.avg_steal_timer = avg_steal; --- linux-azure-5.8-5.8.0.orig/arch/s390/kvm/kvm-s390.c +++ linux-azure-5.8-5.8.0/arch/s390/kvm/kvm-s390.c @@ -2311,7 +2311,7 @@ struct kvm_s390_pv_unp unp = {}; r = -EINVAL; - if (!kvm_s390_pv_is_protected(kvm)) + if (!kvm_s390_pv_is_protected(kvm) || !mm_is_protected(kvm->mm)) break; r = -EFAULT; --- linux-azure-5.8-5.8.0.orig/arch/s390/kvm/pv.c +++ linux-azure-5.8-5.8.0/arch/s390/kvm/pv.c @@ -209,7 +209,6 @@ return -EIO; } kvm->arch.gmap->guest_handle = uvcb.guest_handle; - atomic_set(&kvm->mm->context.is_protected, 1); return 0; } @@ -229,6 +228,8 @@ *rrc = uvcb.header.rrc; KVM_UV_EVENT(kvm, 3, "PROTVIRT VM SET PARMS: rc %x rrc %x", *rc, *rrc); + if (!cc) + atomic_set(&kvm->mm->context.is_protected, 1); return cc ? -EINVAL : 0; } --- linux-azure-5.8-5.8.0.orig/arch/s390/lib/delay.c +++ linux-azure-5.8-5.8.0/arch/s390/lib/delay.c @@ -33,7 +33,7 @@ static void __udelay_disabled(unsigned long long usecs) { - unsigned long cr0, cr0_new, psw_mask, flags; + unsigned long cr0, cr0_new, psw_mask; struct s390_idle_data idle; u64 end; @@ -45,9 +45,8 @@ psw_mask = __extract_psw() | PSW_MASK_EXT | PSW_MASK_WAIT; set_clock_comparator(end); set_cpu_flag(CIF_IGNORE_IRQ); - local_irq_save(flags); psw_idle(&idle, psw_mask); - local_irq_restore(flags); + trace_hardirqs_off(); clear_cpu_flag(CIF_IGNORE_IRQ); set_clock_comparator(S390_lowcore.clock_comparator); __ctl_load(cr0, 0, 0); --- linux-azure-5.8-5.8.0.orig/arch/s390/lib/test_unwind.c +++ linux-azure-5.8-5.8.0/arch/s390/lib/test_unwind.c @@ -63,6 +63,7 @@ break; if (state.reliable && !addr) { pr_err("unwind state reliable but addr is 0\n"); + kfree(bt); return -EINVAL; } sprint_symbol(sym, addr); @@ -203,12 +204,15 @@ /* This function must appear in the backtrace. */ static noinline int unwindme_func2(struct unwindme *u) { + unsigned long flags; int rc; if (u->flags & UWM_SWITCH_STACK) { - preempt_disable(); + local_irq_save(flags); + local_mcck_disable(); rc = CALL_ON_STACK(unwindme_func3, S390_lowcore.nodat_stack, 1, u); - preempt_enable(); + local_mcck_enable(); + local_irq_restore(flags); return rc; } else { return unwindme_func3(u); --- linux-azure-5.8-5.8.0.orig/arch/s390/mm/fault.c +++ linux-azure-5.8-5.8.0/arch/s390/mm/fault.c @@ -875,6 +875,21 @@ } NOKPROBE_SYMBOL(do_non_secure_storage_access); +void do_secure_storage_violation(struct pt_regs *regs) +{ + /* + * Either KVM messed up the secure guest mapping or the same + * page is mapped into multiple secure guests. + * + * This exception is only triggered when a guest 2 is running + * and can therefore never occur in kernel context. + */ + printk_ratelimited(KERN_WARNING + "Secure storage violation in task: %s, pid %d\n", + current->comm, current->pid); + send_sig(SIGSEGV, current, 0); +} + #else void do_secure_storage_access(struct pt_regs *regs) { @@ -885,4 +900,9 @@ { default_trap_handler(regs); } + +void do_secure_storage_violation(struct pt_regs *regs) +{ + default_trap_handler(regs); +} #endif --- linux-azure-5.8-5.8.0.orig/arch/s390/mm/gmap.c +++ linux-azure-5.8-5.8.0/arch/s390/mm/gmap.c @@ -2485,23 +2485,36 @@ } EXPORT_SYMBOL_GPL(gmap_sync_dirty_log_pmd); +#ifdef CONFIG_TRANSPARENT_HUGEPAGE +static int thp_split_walk_pmd_entry(pmd_t *pmd, unsigned long addr, + unsigned long end, struct mm_walk *walk) +{ + struct vm_area_struct *vma = walk->vma; + + split_huge_pmd(vma, pmd, addr); + return 0; +} + +static const struct mm_walk_ops thp_split_walk_ops = { + .pmd_entry = thp_split_walk_pmd_entry, +}; + static inline void thp_split_mm(struct mm_struct *mm) { -#ifdef CONFIG_TRANSPARENT_HUGEPAGE struct vm_area_struct *vma; - unsigned long addr; for (vma = mm->mmap; vma != NULL; vma = vma->vm_next) { - for (addr = vma->vm_start; - addr < vma->vm_end; - addr += PAGE_SIZE) - follow_page(vma, addr, FOLL_SPLIT); vma->vm_flags &= ~VM_HUGEPAGE; vma->vm_flags |= VM_NOHUGEPAGE; + walk_page_vma(vma, &thp_split_walk_ops, NULL); } mm->def_flags |= VM_NOHUGEPAGE; -#endif } +#else +static inline void thp_split_mm(struct mm_struct *mm) +{ +} +#endif /* CONFIG_TRANSPARENT_HUGEPAGE */ /* * Remove all empty zero pages from the mapping for lazy refaulting @@ -2677,6 +2690,8 @@ #include void s390_reset_acc(struct mm_struct *mm) { + if (!mm_is_protected(mm)) + return; /* * we might be called during * reset: we walk the pages and clear --- linux-azure-5.8-5.8.0.orig/arch/s390/net/bpf_jit_comp.c +++ linux-azure-5.8-5.8.0/arch/s390/net/bpf_jit_comp.c @@ -489,6 +489,24 @@ } while (re <= last); } +static void bpf_skip(struct bpf_jit *jit, int size) +{ + if (size >= 6 && !is_valid_rel(size)) { + /* brcl 0xf,size */ + EMIT6_PCREL_RIL(0xc0f4000000, size); + size -= 6; + } else if (size >= 4 && is_valid_rel(size)) { + /* brc 0xf,size */ + EMIT4_PCREL(0xa7f40000, size); + size -= 4; + } + while (size >= 2) { + /* bcr 0,%0 */ + _EMIT2(0x0700); + size -= 2; + } +} + /* * Emit function prologue * @@ -1268,8 +1286,12 @@ last = (i == fp->len - 1) ? 1 : 0; if (last) break; - /* j */ - EMIT4_PCREL(0xa7f40000, jit->exit_ip - jit->prg); + if (!is_first_pass(jit) && can_use_rel(jit, jit->exit_ip)) + /* brc 0xf, */ + EMIT4_PCREL_RIC(0xa7040000, 0xf, jit->exit_ip); + else + /* brcl 0xf, */ + EMIT6_PCREL_RILC(0xc0040000, 0xf, jit->exit_ip); break; /* * Branch relative (number of skipped instructions) to offset on @@ -1417,21 +1439,10 @@ } break; branch_ku: - is_jmp32 = BPF_CLASS(insn->code) == BPF_JMP32; - /* clfi or clgfi %dst,imm */ - EMIT6_IMM(is_jmp32 ? 0xc20f0000 : 0xc20e0000, - dst_reg, imm); - if (!is_first_pass(jit) && - can_use_rel(jit, addrs[i + off + 1])) { - /* brc mask,off */ - EMIT4_PCREL_RIC(0xa7040000, - mask >> 12, addrs[i + off + 1]); - } else { - /* brcl mask,off */ - EMIT6_PCREL_RILC(0xc0040000, - mask >> 12, addrs[i + off + 1]); - } - break; + /* lgfi %w1,imm (load sign extend imm) */ + src_reg = REG_1; + EMIT6_IMM(0xc0010000, src_reg, imm); + goto branch_xu; branch_xs: is_jmp32 = BPF_CLASS(insn->code) == BPF_JMP32; if (!is_first_pass(jit) && @@ -1510,7 +1521,14 @@ */ static int bpf_set_addr(struct bpf_jit *jit, int i) { - if (!bpf_is_new_addr_sane(jit, i)) + int delta; + + if (is_codegen_pass(jit)) { + delta = jit->prg - jit->addrs[i]; + if (delta < 0) + bpf_skip(jit, -delta); + } + if (WARN_ON_ONCE(!bpf_is_new_addr_sane(jit, i))) return -1; jit->addrs[i] = jit->prg; return 0; --- linux-azure-5.8-5.8.0.orig/arch/s390/pci/pci.c +++ linux-azure-5.8-5.8.0/arch/s390/pci/pci.c @@ -668,10 +668,27 @@ int zpci_disable_device(struct zpci_dev *zdev) { zpci_dma_exit_device(zdev); + /* + * The zPCI function may already be disabled by the platform, this is + * detected in clp_disable_fh() which becomes a no-op. + */ return clp_disable_fh(zdev); } EXPORT_SYMBOL_GPL(zpci_disable_device); +void zpci_remove_device(struct zpci_dev *zdev) +{ + struct zpci_bus *zbus = zdev->zbus; + struct pci_dev *pdev; + + pdev = pci_get_slot(zbus->bus, zdev->devfn); + if (pdev) { + if (pdev->is_virtfn) + return zpci_remove_virtfn(pdev, zdev->vfn); + pci_stop_and_remove_bus_device_locked(pdev); + } +} + int zpci_create_device(struct zpci_dev *zdev) { int rc; @@ -716,13 +733,8 @@ { struct zpci_dev *zdev = container_of(kref, struct zpci_dev, kref); - if (zdev->zbus->bus) { - struct pci_dev *pdev; - - pdev = pci_get_slot(zdev->zbus->bus, zdev->devfn); - if (pdev) - pci_stop_and_remove_bus_device_locked(pdev); - } + if (zdev->zbus->bus) + zpci_remove_device(zdev); switch (zdev->state) { case ZPCI_FN_STATE_ONLINE: --- linux-azure-5.8-5.8.0.orig/arch/s390/pci/pci_bus.c +++ linux-azure-5.8-5.8.0/arch/s390/pci/pci_bus.c @@ -132,13 +132,14 @@ { int rc; - virtfn->physfn = pci_dev_get(pdev); rc = pci_iov_sysfs_link(pdev, virtfn, vfid); - if (rc) { - pci_dev_put(pdev); - virtfn->physfn = NULL; + if (rc) return rc; - } + + virtfn->is_virtfn = 1; + virtfn->multifunction = 0; + virtfn->physfn = pci_dev_get(pdev); + return 0; } @@ -151,9 +152,9 @@ int vfid = vfn - 1; /* Linux' vfid's start at 0 vfn at 1*/ int rc = 0; - virtfn->is_virtfn = 1; - virtfn->multifunction = 0; - WARN_ON(vfid < 0); + if (!zbus->multifunction) + return 0; + /* If the parent PF for the given VF is also configured in the * instance, it must be on the same zbus. * We can then identify the parent PF by checking what @@ -165,11 +166,17 @@ zdev = zbus->function[i]; if (zdev && zdev->is_physfn) { pdev = pci_get_slot(zbus->bus, zdev->devfn); + if (!pdev) + continue; cand_devfn = pci_iov_virtfn_devfn(pdev, vfid); if (cand_devfn == virtfn->devfn) { rc = zpci_bus_link_virtfn(pdev, virtfn, vfid); + /* balance pci_get_slot() */ + pci_dev_put(pdev); break; } + /* balance pci_get_slot() */ + pci_dev_put(pdev); } } return rc; @@ -178,12 +185,24 @@ static inline int zpci_bus_setup_virtfn(struct zpci_bus *zbus, struct pci_dev *virtfn, int vfn) { - virtfn->is_virtfn = 1; - virtfn->multifunction = 0; return 0; } #endif +void pcibios_bus_add_device(struct pci_dev *pdev) +{ + struct zpci_dev *zdev = to_zpci(pdev); + + /* + * With pdev->no_vf_scan the common PCI probing code does not + * perform PF/VF linking. + */ + if (zdev->vfn) { + zpci_bus_setup_virtfn(zdev->zbus, pdev, zdev->vfn); + pdev->no_command_memory = 1; + } +} + static int zpci_bus_add_device(struct zpci_bus *zbus, struct zpci_dev *zdev) { struct pci_bus *bus; @@ -214,20 +233,10 @@ } pdev = pci_scan_single_device(bus, zdev->devfn); - if (pdev) { - if (!zdev->is_physfn) { - rc = zpci_bus_setup_virtfn(zbus, pdev, zdev->vfn); - if (rc) - goto failed_with_pdev; - } + if (pdev) pci_bus_add_device(pdev); - } - return 0; -failed_with_pdev: - pci_stop_and_remove_bus_device(pdev); - pci_dev_put(pdev); - return rc; + return 0; } static void zpci_bus_add_devices(struct zpci_bus *zbus) --- linux-azure-5.8-5.8.0.orig/arch/s390/pci/pci_bus.h +++ linux-azure-5.8-5.8.0/arch/s390/pci/pci_bus.h @@ -29,3 +29,16 @@ return (devfn >= ZPCI_FUNCTIONS_PER_BUS) ? NULL : zbus->function[devfn]; } + +#ifdef CONFIG_PCI_IOV +static inline void zpci_remove_virtfn(struct pci_dev *pdev, int vfn) +{ + + pci_lock_rescan_remove(); + /* Linux' vfid's start at 0 vfn at 1 */ + pci_iov_remove_virtfn(pdev->physfn, vfn - 1); + pci_unlock_rescan_remove(); +} +#else /* CONFIG_PCI_IOV */ +static inline void zpci_remove_virtfn(struct pci_dev *pdev, int vfn) {} +#endif /* CONFIG_PCI_IOV */ --- linux-azure-5.8-5.8.0.orig/arch/s390/pci/pci_event.c +++ linux-azure-5.8-5.8.0/arch/s390/pci/pci_event.c @@ -92,12 +92,19 @@ ret = clp_add_pci_device(ccdf->fid, ccdf->fh, 1); break; } + /* the configuration request may be stale */ + if (zdev->state != ZPCI_FN_STATE_STANDBY) + break; zdev->fh = ccdf->fh; zdev->state = ZPCI_FN_STATE_CONFIGURED; ret = zpci_enable_device(zdev); if (ret) break; + /* the PCI function will be scanned once function 0 appears */ + if (!zdev->zbus->bus) + break; + pdev = pci_scan_single_device(zdev->zbus->bus, zdev->devfn); if (!pdev) break; @@ -118,7 +125,7 @@ if (!zdev) break; if (pdev) - pci_stop_and_remove_bus_device_locked(pdev); + zpci_remove_device(zdev); ret = zpci_disable_device(zdev); if (ret) @@ -137,9 +144,11 @@ /* Give the driver a hint that the function is * already unusable. */ pdev->error_state = pci_channel_io_perm_failure; - pci_stop_and_remove_bus_device_locked(pdev); + zpci_remove_device(zdev); } + zdev->fh = ccdf->fh; + zpci_disable_device(zdev); zdev->state = ZPCI_FN_STATE_STANDBY; if (!clp_get_state(ccdf->fid, &state) && state == ZPCI_FN_STATE_RESERVED) { --- linux-azure-5.8-5.8.0.orig/arch/s390/pci/pci_irq.c +++ linux-azure-5.8-5.8.0/arch/s390/pci/pci_irq.c @@ -103,9 +103,10 @@ { struct msi_desc *entry = irq_get_msi_desc(data->irq); struct msi_msg msg = entry->msg; + int cpu_addr = smp_cpu_get_cpu_address(cpumask_first(dest)); msg.address_lo &= 0xff0000ff; - msg.address_lo |= (cpumask_first(dest) << 8); + msg.address_lo |= (cpu_addr << 8); pci_write_msi_msg(data->irq, &msg); return IRQ_SET_MASK_OK; @@ -238,6 +239,7 @@ unsigned long bit; struct msi_desc *msi; struct msi_msg msg; + int cpu_addr; int rc, irq; zdev->aisb = -1UL; @@ -287,9 +289,15 @@ handle_percpu_irq); msg.data = hwirq - bit; if (irq_delivery == DIRECTED) { + if (msi->affinity) + cpu = cpumask_first(&msi->affinity->mask); + else + cpu = 0; + cpu_addr = smp_cpu_get_cpu_address(cpu); + msg.address_lo = zdev->msi_addr & 0xff0000ff; - msg.address_lo |= msi->affinity ? - (cpumask_first(&msi->affinity->mask) << 8) : 0; + msg.address_lo |= (cpu_addr << 8); + for_each_possible_cpu(cpu) { airq_iv_set_data(zpci_ibv[cpu], hwirq, irq); } --- linux-azure-5.8-5.8.0.orig/arch/s390/purgatory/head.S +++ linux-azure-5.8-5.8.0/arch/s390/purgatory/head.S @@ -62,14 +62,15 @@ jh 10b .endm -.macro START_NEXT_KERNEL base +.macro START_NEXT_KERNEL base subcode lg %r4,kernel_entry-\base(%r13) lg %r5,load_psw_mask-\base(%r13) ogr %r4,%r5 stg %r4,0(%r0) xgr %r0,%r0 - diag %r0,%r0,0x308 + lghi %r1,\subcode + diag %r0,%r1,0x308 .endm .text @@ -123,7 +124,7 @@ je .start_crash_kernel /* start normal kernel */ - START_NEXT_KERNEL .base_crash + START_NEXT_KERNEL .base_crash 0 .return_old_kernel: lmg %r6,%r15,gprregs-.base_crash(%r13) @@ -227,7 +228,7 @@ MEMCPY %r9,%r10,%r11 /* start crash kernel */ - START_NEXT_KERNEL .base_dst + START_NEXT_KERNEL .base_dst 1 load_psw_mask: --- linux-azure-5.8-5.8.0.orig/arch/sh/boards/mach-landisk/setup.c +++ linux-azure-5.8-5.8.0/arch/sh/boards/mach-landisk/setup.c @@ -82,6 +82,9 @@ static void __init landisk_setup(char **cmdline_p) { + /* I/O port identity mapping */ + __set_io_port_base(0); + /* LED ON */ __raw_writeb(__raw_readb(PA_LED) | 0x03, PA_LED); --- linux-azure-5.8-5.8.0.orig/arch/sh/drivers/dma/Kconfig +++ linux-azure-5.8-5.8.0/arch/sh/drivers/dma/Kconfig @@ -63,8 +63,7 @@ config G2_DMA tristate "G2 Bus DMA support" - depends on SH_DREAMCAST - select SH_DMA_API + depends on SH_DREAMCAST && SH_DMA_API help This enables support for the DMA controller for the Dreamcast's G2 bus. Drivers that want this will generally enable this on --- linux-azure-5.8-5.8.0.orig/arch/sh/include/asm/Kbuild +++ linux-azure-5.8-5.8.0/arch/sh/include/asm/Kbuild @@ -1,6 +1,5 @@ # SPDX-License-Identifier: GPL-2.0 generated-y += syscall_table.h generic-y += kvm_para.h -generic-y += local64.h generic-y += mcs_spinlock.h generic-y += parport.h --- linux-azure-5.8-5.8.0.orig/arch/sh/mm/fault.c +++ linux-azure-5.8-5.8.0/arch/sh/mm/fault.c @@ -208,7 +208,6 @@ if (!oops_may_print()) return; - printk(KERN_ALERT "PC:"); pr_alert("BUG: unable to handle kernel %s at %08lx\n", address < PAGE_SIZE ? "NULL pointer dereference" : "paging request", --- linux-azure-5.8-5.8.0.orig/arch/sparc/Kconfig +++ linux-azure-5.8-5.8.0/arch/sparc/Kconfig @@ -510,7 +510,7 @@ bool depends on SPARC64 default y - select COMPAT_BINFMT_ELF + select COMPAT_BINFMT_ELF if BINFMT_ELF select HAVE_UID16 select ARCH_WANT_OLD_COMPAT_IPC select COMPAT_OLD_SIGACTION --- linux-azure-5.8-5.8.0.orig/arch/sparc/include/asm/Kbuild +++ linux-azure-5.8-5.8.0/arch/sparc/include/asm/Kbuild @@ -6,5 +6,4 @@ generated-y += syscall_table_c32.h generic-y += export.h generic-y += kvm_para.h -generic-y += local64.h generic-y += mcs_spinlock.h --- linux-azure-5.8-5.8.0.orig/arch/sparc/kernel/led.c +++ linux-azure-5.8-5.8.0/arch/sparc/kernel/led.c @@ -50,6 +50,7 @@ add_timer(&led_blink_timer); } +#ifdef CONFIG_PROC_FS static int led_proc_show(struct seq_file *m, void *v) { if (get_auxio() & AUXIO_LED) @@ -111,6 +112,7 @@ .proc_release = single_release, .proc_write = led_proc_write, }; +#endif static struct proc_dir_entry *led; --- linux-azure-5.8-5.8.0.orig/arch/sparc/kernel/smp_64.c +++ linux-azure-5.8-5.8.0/arch/sparc/kernel/smp_64.c @@ -1038,38 +1038,9 @@ * are flush_tlb_*() routines, and these run after flush_cache_*() * which performs the flushw. * - * The SMP TLB coherency scheme we use works as follows: - * - * 1) mm->cpu_vm_mask is a bit mask of which cpus an address - * space has (potentially) executed on, this is the heuristic - * we use to avoid doing cross calls. - * - * Also, for flushing from kswapd and also for clones, we - * use cpu_vm_mask as the list of cpus to make run the TLB. - * - * 2) TLB context numbers are shared globally across all processors - * in the system, this allows us to play several games to avoid - * cross calls. - * - * One invariant is that when a cpu switches to a process, and - * that processes tsk->active_mm->cpu_vm_mask does not have the - * current cpu's bit set, that tlb context is flushed locally. - * - * If the address space is non-shared (ie. mm->count == 1) we avoid - * cross calls when we want to flush the currently running process's - * tlb state. This is done by clearing all cpu bits except the current - * processor's in current->mm->cpu_vm_mask and performing the - * flush locally only. This will force any subsequent cpus which run - * this task to flush the context from the local tlb if the process - * migrates to another cpu (again). - * - * 3) For shared address spaces (threads) and swapping we bite the - * bullet for most cases and perform the cross call (but only to - * the cpus listed in cpu_vm_mask). - * - * The performance gain from "optimizing" away the cross call for threads is - * questionable (in theory the big win for threads is the massive sharing of - * address space state across processors). + * mm->cpu_vm_mask is a bit mask of which cpus an address + * space has (potentially) executed on, this is the heuristic + * we use to limit cross calls. */ /* This currently is only used by the hugetlb arch pre-fault @@ -1079,18 +1050,13 @@ void smp_flush_tlb_mm(struct mm_struct *mm) { u32 ctx = CTX_HWBITS(mm->context); - int cpu = get_cpu(); - if (atomic_read(&mm->mm_users) == 1) { - cpumask_copy(mm_cpumask(mm), cpumask_of(cpu)); - goto local_flush_and_out; - } + get_cpu(); smp_cross_call_masked(&xcall_flush_tlb_mm, ctx, 0, 0, mm_cpumask(mm)); -local_flush_and_out: __flush_tlb_mm(ctx, SECONDARY_CONTEXT); put_cpu(); @@ -1113,17 +1079,15 @@ { u32 ctx = CTX_HWBITS(mm->context); struct tlb_pending_info info; - int cpu = get_cpu(); + + get_cpu(); info.ctx = ctx; info.nr = nr; info.vaddrs = vaddrs; - if (mm == current->mm && atomic_read(&mm->mm_users) == 1) - cpumask_copy(mm_cpumask(mm), cpumask_of(cpu)); - else - smp_call_function_many(mm_cpumask(mm), tlb_pending_func, - &info, 1); + smp_call_function_many(mm_cpumask(mm), tlb_pending_func, + &info, 1); __flush_tlb_pending(ctx, nr, vaddrs); @@ -1133,14 +1097,13 @@ void smp_flush_tlb_page(struct mm_struct *mm, unsigned long vaddr) { unsigned long context = CTX_HWBITS(mm->context); - int cpu = get_cpu(); - if (mm == current->mm && atomic_read(&mm->mm_users) == 1) - cpumask_copy(mm_cpumask(mm), cpumask_of(cpu)); - else - smp_cross_call_masked(&xcall_flush_tlb_page, - context, vaddr, 0, - mm_cpumask(mm)); + get_cpu(); + + smp_cross_call_masked(&xcall_flush_tlb_page, + context, vaddr, 0, + mm_cpumask(mm)); + __flush_tlb_page(context, vaddr); put_cpu(); --- linux-azure-5.8-5.8.0.orig/arch/sparc/lib/memset.S +++ linux-azure-5.8-5.8.0/arch/sparc/lib/memset.S @@ -142,6 +142,7 @@ ZERO_LAST_BLOCKS(%o0, 0x48, %g2) ZERO_LAST_BLOCKS(%o0, 0x08, %g2) 13: + EXT(12b, 13b, 21f) be 8f andcc %o1, 4, %g0 --- linux-azure-5.8-5.8.0.orig/arch/sparc/mm/init_64.c +++ linux-azure-5.8-5.8.0/arch/sparc/mm/init_64.c @@ -2899,7 +2899,7 @@ if (!page) return NULL; if (!pgtable_pte_page_ctor(page)) { - free_unref_page(page); + __free_page(page); return NULL; } return (pte_t *) page_address(page); --- linux-azure-5.8-5.8.0.orig/arch/sparc/vdso/Makefile +++ linux-azure-5.8-5.8.0/arch/sparc/vdso/Makefile @@ -115,7 +115,7 @@ -T $(filter %.lds,$^) $(filter %.o,$^) && \ sh $(srctree)/$(src)/checkundef.sh '$(OBJDUMP)' '$@' -VDSO_LDFLAGS = -shared --hash-style=both --build-id -Bsymbolic +VDSO_LDFLAGS = -shared --hash-style=both --build-id=sha1 -Bsymbolic GCOV_PROFILE := n # --- linux-azure-5.8-5.8.0.orig/arch/um/drivers/chan_user.c +++ linux-azure-5.8-5.8.0/arch/um/drivers/chan_user.c @@ -26,10 +26,10 @@ n = read(fd, c_out, sizeof(*c_out)); if (n > 0) return n; - else if (errno == EAGAIN) - return 0; else if (n == 0) return -EIO; + else if (errno == EAGAIN) + return 0; return -errno; } --- linux-azure-5.8-5.8.0.orig/arch/um/drivers/random.c +++ linux-azure-5.8-5.8.0/arch/um/drivers/random.c @@ -11,6 +11,7 @@ #include #include #include +#include #include #include #include @@ -18,9 +19,8 @@ #include /* - * core module and version information + * core module information */ -#define RNG_VERSION "1.0.0" #define RNG_MODULE_NAME "hw_random" /* Changed at init time, in the non-modular case, and at module load @@ -28,88 +28,36 @@ * protects against a module being loaded twice at the same time. */ static int random_fd = -1; -static DECLARE_WAIT_QUEUE_HEAD(host_read_wait); +static struct hwrng hwrng = { 0, }; +static DECLARE_COMPLETION(have_data); -static int rng_dev_open (struct inode *inode, struct file *filp) +static int rng_dev_read(struct hwrng *rng, void *buf, size_t max, bool block) { - /* enforce read-only access to this chrdev */ - if ((filp->f_mode & FMODE_READ) == 0) - return -EINVAL; - if ((filp->f_mode & FMODE_WRITE) != 0) - return -EINVAL; + int ret; - return 0; -} - -static atomic_t host_sleep_count = ATOMIC_INIT(0); - -static ssize_t rng_dev_read (struct file *filp, char __user *buf, size_t size, - loff_t *offp) -{ - u32 data; - int n, ret = 0, have_data; - - while (size) { - n = os_read_file(random_fd, &data, sizeof(data)); - if (n > 0) { - have_data = n; - while (have_data && size) { - if (put_user((u8) data, buf++)) { - ret = ret ? : -EFAULT; - break; - } - size--; - ret++; - have_data--; - data >>= 8; - } - } - else if (n == -EAGAIN) { - DECLARE_WAITQUEUE(wait, current); - - if (filp->f_flags & O_NONBLOCK) - return ret ? : -EAGAIN; - - atomic_inc(&host_sleep_count); + for (;;) { + ret = os_read_file(random_fd, buf, max); + if (block && ret == -EAGAIN) { add_sigio_fd(random_fd); - add_wait_queue(&host_read_wait, &wait); - set_current_state(TASK_INTERRUPTIBLE); + ret = wait_for_completion_killable(&have_data); - schedule(); - remove_wait_queue(&host_read_wait, &wait); + ignore_sigio_fd(random_fd); + deactivate_fd(random_fd, RANDOM_IRQ); - if (atomic_dec_and_test(&host_sleep_count)) { - ignore_sigio_fd(random_fd); - deactivate_fd(random_fd, RANDOM_IRQ); - } + if (ret < 0) + break; + } else { + break; } - else - return n; - - if (signal_pending (current)) - return ret ? : -ERESTARTSYS; } - return ret; -} -static const struct file_operations rng_chrdev_ops = { - .owner = THIS_MODULE, - .open = rng_dev_open, - .read = rng_dev_read, - .llseek = noop_llseek, -}; - -/* rng_init shouldn't be called more than once at boot time */ -static struct miscdevice rng_miscdev = { - HWRNG_MINOR, - RNG_MODULE_NAME, - &rng_chrdev_ops, -}; + return ret != -EAGAIN ? ret : 0; +} static irqreturn_t random_interrupt(int irq, void *data) { - wake_up(&host_read_wait); + complete(&have_data); return IRQ_HANDLED; } @@ -126,18 +74,19 @@ goto out; random_fd = err; - err = um_request_irq(RANDOM_IRQ, random_fd, IRQ_READ, random_interrupt, 0, "random", NULL); if (err) goto err_out_cleanup_hw; sigio_broken(random_fd, 1); + hwrng.name = RNG_MODULE_NAME; + hwrng.read = rng_dev_read; + hwrng.quality = 1024; - err = misc_register (&rng_miscdev); + err = hwrng_register(&hwrng); if (err) { - printk (KERN_ERR RNG_MODULE_NAME ": misc device register " - "failed\n"); + pr_err(RNG_MODULE_NAME " registering failed (%d)\n", err); goto err_out_cleanup_hw; } out: @@ -161,8 +110,8 @@ static void __exit rng_cleanup(void) { + hwrng_unregister(&hwrng); os_close_file(random_fd); - misc_deregister (&rng_miscdev); } module_init (rng_init); --- linux-azure-5.8-5.8.0.orig/arch/um/drivers/ubd_kern.c +++ linux-azure-5.8-5.8.0/arch/um/drivers/ubd_kern.c @@ -47,18 +47,25 @@ /* Max request size is determined by sector mask - 32K */ #define UBD_MAX_REQUEST (8 * sizeof(long)) +struct io_desc { + char *buffer; + unsigned long length; + unsigned long sector_mask; + unsigned long long cow_offset; + unsigned long bitmap_words[2]; +}; + struct io_thread_req { struct request *req; int fds[2]; unsigned long offsets[2]; unsigned long long offset; - unsigned long length; - char *buffer; int sectorsize; - unsigned long sector_mask; - unsigned long long cow_offset; - unsigned long bitmap_words[2]; int error; + + int desc_cnt; + /* io_desc has to be the last element of the struct */ + struct io_desc io_desc[]; }; @@ -525,12 +532,7 @@ blk_queue_max_write_zeroes_sectors(io_req->req->q, 0); blk_queue_flag_clear(QUEUE_FLAG_DISCARD, io_req->req->q); } - if ((io_req->error) || (io_req->buffer == NULL)) - blk_mq_end_request(io_req->req, io_req->error); - else { - if (!blk_update_request(io_req->req, io_req->error, io_req->length)) - __blk_mq_end_request(io_req->req, io_req->error); - } + blk_mq_end_request(io_req->req, io_req->error); kfree(io_req); } } @@ -946,6 +948,7 @@ blk_queue_write_cache(ubd_dev->queue, true, false); blk_queue_max_segments(ubd_dev->queue, MAX_SG); + blk_queue_segment_boundary(ubd_dev->queue, PAGE_SIZE - 1); err = ubd_disk_register(UBD_MAJOR, ubd_dev->size, n, &ubd_gendisk[n]); if(err){ *error_out = "Failed to register device"; @@ -1289,37 +1292,74 @@ *cow_offset += bitmap_offset; } -static void cowify_req(struct io_thread_req *req, unsigned long *bitmap, +static void cowify_req(struct io_thread_req *req, struct io_desc *segment, + unsigned long offset, unsigned long *bitmap, __u64 bitmap_offset, __u64 bitmap_len) { - __u64 sector = req->offset >> SECTOR_SHIFT; + __u64 sector = offset >> SECTOR_SHIFT; int i; - if (req->length > (sizeof(req->sector_mask) * 8) << SECTOR_SHIFT) + if (segment->length > (sizeof(segment->sector_mask) * 8) << SECTOR_SHIFT) panic("Operation too long"); if (req_op(req->req) == REQ_OP_READ) { - for (i = 0; i < req->length >> SECTOR_SHIFT; i++) { + for (i = 0; i < segment->length >> SECTOR_SHIFT; i++) { if(ubd_test_bit(sector + i, (unsigned char *) bitmap)) ubd_set_bit(i, (unsigned char *) - &req->sector_mask); + &segment->sector_mask); } + } else { + cowify_bitmap(offset, segment->length, &segment->sector_mask, + &segment->cow_offset, bitmap, bitmap_offset, + segment->bitmap_words, bitmap_len); } - else cowify_bitmap(req->offset, req->length, &req->sector_mask, - &req->cow_offset, bitmap, bitmap_offset, - req->bitmap_words, bitmap_len); } -static int ubd_queue_one_vec(struct blk_mq_hw_ctx *hctx, struct request *req, - u64 off, struct bio_vec *bvec) +static void ubd_map_req(struct ubd *dev, struct io_thread_req *io_req, + struct request *req) +{ + struct bio_vec bvec; + struct req_iterator iter; + int i = 0; + unsigned long byte_offset = io_req->offset; + int op = req_op(req); + + if (op == REQ_OP_WRITE_ZEROES || op == REQ_OP_DISCARD) { + io_req->io_desc[0].buffer = NULL; + io_req->io_desc[0].length = blk_rq_bytes(req); + } else { + rq_for_each_segment(bvec, req, iter) { + BUG_ON(i >= io_req->desc_cnt); + + io_req->io_desc[i].buffer = + page_address(bvec.bv_page) + bvec.bv_offset; + io_req->io_desc[i].length = bvec.bv_len; + i++; + } + } + + if (dev->cow.file) { + for (i = 0; i < io_req->desc_cnt; i++) { + cowify_req(io_req, &io_req->io_desc[i], byte_offset, + dev->cow.bitmap, dev->cow.bitmap_offset, + dev->cow.bitmap_len); + byte_offset += io_req->io_desc[i].length; + } + + } +} + +static struct io_thread_req *ubd_alloc_req(struct ubd *dev, struct request *req, + int desc_cnt) { - struct ubd *dev = hctx->queue->queuedata; struct io_thread_req *io_req; - int ret; + int i; - io_req = kmalloc(sizeof(struct io_thread_req), GFP_ATOMIC); + io_req = kmalloc(sizeof(*io_req) + + (desc_cnt * sizeof(struct io_desc)), + GFP_ATOMIC); if (!io_req) - return -ENOMEM; + return NULL; io_req->req = req; if (dev->cow.file) @@ -1327,26 +1367,41 @@ else io_req->fds[0] = dev->fd; io_req->error = 0; - - if (bvec != NULL) { - io_req->buffer = page_address(bvec->bv_page) + bvec->bv_offset; - io_req->length = bvec->bv_len; - } else { - io_req->buffer = NULL; - io_req->length = blk_rq_bytes(req); - } - io_req->sectorsize = SECTOR_SIZE; io_req->fds[1] = dev->fd; - io_req->cow_offset = -1; - io_req->offset = off; - io_req->sector_mask = 0; + io_req->offset = (u64) blk_rq_pos(req) << SECTOR_SHIFT; io_req->offsets[0] = 0; io_req->offsets[1] = dev->cow.data_offset; - if (dev->cow.file) - cowify_req(io_req, dev->cow.bitmap, - dev->cow.bitmap_offset, dev->cow.bitmap_len); + for (i = 0 ; i < desc_cnt; i++) { + io_req->io_desc[i].sector_mask = 0; + io_req->io_desc[i].cow_offset = -1; + } + + return io_req; +} + +static int ubd_submit_request(struct ubd *dev, struct request *req) +{ + int segs = 0; + struct io_thread_req *io_req; + int ret; + int op = req_op(req); + + if (op == REQ_OP_FLUSH) + segs = 0; + else if (op == REQ_OP_WRITE_ZEROES || op == REQ_OP_DISCARD) + segs = 1; + else + segs = blk_rq_nr_phys_segments(req); + + io_req = ubd_alloc_req(dev, req, segs); + if (!io_req) + return -ENOMEM; + + io_req->desc_cnt = segs; + if (segs) + ubd_map_req(dev, io_req, req); ret = os_write_file(thread_fd, &io_req, sizeof(io_req)); if (ret != sizeof(io_req)) { @@ -1357,22 +1412,6 @@ return ret; } -static int queue_rw_req(struct blk_mq_hw_ctx *hctx, struct request *req) -{ - struct req_iterator iter; - struct bio_vec bvec; - int ret; - u64 off = (u64)blk_rq_pos(req) << SECTOR_SHIFT; - - rq_for_each_segment(bvec, req, iter) { - ret = ubd_queue_one_vec(hctx, req, off, &bvec); - if (ret < 0) - return ret; - off += bvec.bv_len; - } - return 0; -} - static blk_status_t ubd_queue_rq(struct blk_mq_hw_ctx *hctx, const struct blk_mq_queue_data *bd) { @@ -1385,17 +1424,12 @@ spin_lock_irq(&ubd_dev->lock); switch (req_op(req)) { - /* operations with no lentgth/offset arguments */ case REQ_OP_FLUSH: - ret = ubd_queue_one_vec(hctx, req, 0, NULL); - break; case REQ_OP_READ: case REQ_OP_WRITE: - ret = queue_rw_req(hctx, req); - break; case REQ_OP_DISCARD: case REQ_OP_WRITE_ZEROES: - ret = ubd_queue_one_vec(hctx, req, (u64)blk_rq_pos(req) << 9, NULL); + ret = ubd_submit_request(ubd_dev, req); break; default: WARN_ON_ONCE(1); @@ -1483,22 +1517,22 @@ * will result in unpredictable behaviour and/or crashes. */ -static int update_bitmap(struct io_thread_req *req) +static int update_bitmap(struct io_thread_req *req, struct io_desc *segment) { int n; - if(req->cow_offset == -1) + if (segment->cow_offset == -1) return map_error(0); - n = os_pwrite_file(req->fds[1], &req->bitmap_words, - sizeof(req->bitmap_words), req->cow_offset); - if (n != sizeof(req->bitmap_words)) + n = os_pwrite_file(req->fds[1], &segment->bitmap_words, + sizeof(segment->bitmap_words), segment->cow_offset); + if (n != sizeof(segment->bitmap_words)) return map_error(-n); return map_error(0); } -static void do_io(struct io_thread_req *req) +static void do_io(struct io_thread_req *req, struct io_desc *desc) { char *buf = NULL; unsigned long len; @@ -1513,21 +1547,20 @@ return; } - nsectors = req->length / req->sectorsize; + nsectors = desc->length / req->sectorsize; start = 0; do { - bit = ubd_test_bit(start, (unsigned char *) &req->sector_mask); + bit = ubd_test_bit(start, (unsigned char *) &desc->sector_mask); end = start; while((end < nsectors) && - (ubd_test_bit(end, (unsigned char *) - &req->sector_mask) == bit)) + (ubd_test_bit(end, (unsigned char *) &desc->sector_mask) == bit)) end++; off = req->offset + req->offsets[bit] + start * req->sectorsize; len = (end - start) * req->sectorsize; - if (req->buffer != NULL) - buf = &req->buffer[start * req->sectorsize]; + if (desc->buffer != NULL) + buf = &desc->buffer[start * req->sectorsize]; switch (req_op(req->req)) { case REQ_OP_READ: @@ -1567,7 +1600,8 @@ start = end; } while(start < nsectors); - req->error = update_bitmap(req); + req->offset += len; + req->error = update_bitmap(req, desc); } /* Changed in start_io_thread, which is serialized by being called only @@ -1600,8 +1634,13 @@ } for (count = 0; count < n/sizeof(struct io_thread_req *); count++) { + struct io_thread_req *req = (*io_req_buffer)[count]; + int i; + io_count++; - do_io((*io_req_buffer)[count]); + for (i = 0; !req->error && i < req->desc_cnt; i++) + do_io(req, &(req->io_desc[i])); + } written = 0; --- linux-azure-5.8-5.8.0.orig/arch/um/drivers/vector_kern.c +++ linux-azure-5.8-5.8.0/arch/um/drivers/vector_kern.c @@ -1403,7 +1403,7 @@ kfree(vp->bpf->filter); vp->bpf->filter = NULL; } else { - vp->bpf = kmalloc(sizeof(struct sock_fprog), GFP_KERNEL); + vp->bpf = kmalloc(sizeof(struct sock_fprog), GFP_ATOMIC); if (vp->bpf == NULL) { netdev_err(dev, "failed to allocate memory for firmware\n"); goto flash_fail; @@ -1415,7 +1415,7 @@ if (request_firmware(&fw, efl->data, &vdevice->pdev.dev)) goto flash_fail; - vp->bpf->filter = kmemdup(fw->data, fw->size, GFP_KERNEL); + vp->bpf->filter = kmemdup(fw->data, fw->size, GFP_ATOMIC); if (!vp->bpf->filter) goto free_buffer; --- linux-azure-5.8-5.8.0.orig/arch/um/drivers/virtio_uml.c +++ linux-azure-5.8-5.8.0/arch/um/drivers/virtio_uml.c @@ -1083,6 +1083,7 @@ } os_close_file(vu_dev->sock); + kfree(vu_dev); } /* Platform device */ @@ -1096,7 +1097,7 @@ if (!pdata) return -EINVAL; - vu_dev = devm_kzalloc(&pdev->dev, sizeof(*vu_dev), GFP_KERNEL); + vu_dev = kzalloc(sizeof(*vu_dev), GFP_KERNEL); if (!vu_dev) return -ENOMEM; --- linux-azure-5.8-5.8.0.orig/arch/um/drivers/xterm.c +++ linux-azure-5.8-5.8.0/arch/um/drivers/xterm.c @@ -18,6 +18,7 @@ struct xterm_chan { int pid; int helper_pid; + int chan_fd; char *title; int device; int raw; @@ -33,6 +34,7 @@ return NULL; *data = ((struct xterm_chan) { .pid = -1, .helper_pid = -1, + .chan_fd = -1, .device = device, .title = opts->xterm_title, .raw = opts->raw } ); @@ -149,6 +151,7 @@ goto out_kill; } + data->chan_fd = fd; new = xterm_fd(fd, &data->helper_pid); if (new < 0) { err = new; @@ -206,6 +209,8 @@ os_kill_process(data->helper_pid, 0); data->helper_pid = -1; + if (data->chan_fd != -1) + os_close_file(data->chan_fd); os_close_file(fd); } --- linux-azure-5.8-5.8.0.orig/arch/um/include/shared/skas/mm_id.h +++ linux-azure-5.8-5.8.0/arch/um/include/shared/skas/mm_id.h @@ -12,6 +12,7 @@ int pid; } u; unsigned long stack; + int kill; }; #endif --- linux-azure-5.8-5.8.0.orig/arch/um/kernel/sigio.c +++ linux-azure-5.8-5.8.0/arch/um/kernel/sigio.c @@ -35,14 +35,14 @@ } /* These are called from os-Linux/sigio.c to protect its pollfds arrays. */ -static DEFINE_SPINLOCK(sigio_spinlock); +static DEFINE_MUTEX(sigio_mutex); void sigio_lock(void) { - spin_lock(&sigio_spinlock); + mutex_lock(&sigio_mutex); } void sigio_unlock(void) { - spin_unlock(&sigio_spinlock); + mutex_unlock(&sigio_mutex); } --- linux-azure-5.8-5.8.0.orig/arch/um/kernel/time.c +++ linux-azure-5.8-5.8.0/arch/um/kernel/time.c @@ -70,13 +70,17 @@ * read of the message and write of the ACK. */ if (mode != TTMH_READ) { + bool disabled = irqs_disabled(); + + BUG_ON(mode == TTMH_IDLE && !disabled); + + if (disabled) + local_irq_enable(); while (os_poll(1, &time_travel_ext_fd) != 0) { - if (mode == TTMH_IDLE) { - BUG_ON(!irqs_disabled()); - local_irq_enable(); - local_irq_disable(); - } + /* nothing */ } + if (disabled) + local_irq_disable(); } ret = os_read_file(time_travel_ext_fd, msg, sizeof(*msg)); @@ -255,11 +259,6 @@ struct time_travel_event *tmp; bool inserted = false; - if (WARN(time_travel_mode == TT_MODE_BASIC && - e != &time_travel_timer_event, - "only timer events can be handled in basic mode")) - return; - if (e->pending) return; --- linux-azure-5.8-5.8.0.orig/arch/um/kernel/tlb.c +++ linux-azure-5.8-5.8.0/arch/um/kernel/tlb.c @@ -125,6 +125,9 @@ struct host_vm_op *last; int fd = -1, ret = 0; + if (virt + len > STUB_START && virt < STUB_END) + return -EINVAL; + if (hvc->userspace) fd = phys_mapping(phys, &offset); else @@ -162,7 +165,7 @@ struct host_vm_op *last; int ret = 0; - if ((addr >= STUB_START) && (addr < STUB_END)) + if (addr + len > STUB_START && addr < STUB_END) return -EINVAL; if (hvc->index != 0) { @@ -192,6 +195,9 @@ struct host_vm_op *last; int ret = 0; + if (addr + len > STUB_START && addr < STUB_END) + return -EINVAL; + if (hvc->index != 0) { last = &hvc->ops[hvc->index - 1]; if ((last->type == MPROTECT) && @@ -346,12 +352,11 @@ /* This is not an else because ret is modified above */ if (ret) { + struct mm_id *mm_idp = ¤t->mm->context.id; + printk(KERN_ERR "fix_range_common: failed, killing current " "process: %d\n", task_tgid_vnr(current)); - /* We are under mmap_lock, release it such that current can terminate */ - mmap_write_unlock(current->mm); - force_sig(SIGKILL); - do_signal(¤t->thread.regs); + mm_idp->kill = 1; } } @@ -472,6 +477,10 @@ struct mm_id *mm_id; address &= PAGE_MASK; + + if (address >= STUB_START && address < STUB_END) + goto kill; + pgd = pgd_offset(mm, address); if (!pgd_present(*pgd)) goto kill; --- linux-azure-5.8-5.8.0.orig/arch/um/os-Linux/irq.c +++ linux-azure-5.8-5.8.0/arch/um/os-Linux/irq.c @@ -48,7 +48,7 @@ int os_event_mask(int irq_type) { if (irq_type == IRQ_READ) - return EPOLLIN | EPOLLPRI; + return EPOLLIN | EPOLLPRI | EPOLLERR | EPOLLHUP | EPOLLRDHUP; if (irq_type == IRQ_WRITE) return EPOLLOUT; return 0; --- linux-azure-5.8-5.8.0.orig/arch/um/os-Linux/skas/process.c +++ linux-azure-5.8-5.8.0/arch/um/os-Linux/skas/process.c @@ -249,6 +249,7 @@ } int userspace_pid[NR_CPUS]; +int kill_userspace_mm[NR_CPUS]; /** * start_userspace() - prepare a new userspace process @@ -342,6 +343,8 @@ interrupt_end(); while (1) { + if (kill_userspace_mm[0]) + fatal_sigsegv(); /* * This can legitimately fail if the process loads a @@ -650,4 +653,5 @@ void __switch_mm(struct mm_id *mm_idp) { userspace_pid[0] = mm_idp->u.pid; + kill_userspace_mm[0] = mm_idp->kill; } --- linux-azure-5.8-5.8.0.orig/arch/um/os-Linux/umid.c +++ linux-azure-5.8-5.8.0/arch/um/os-Linux/umid.c @@ -137,20 +137,13 @@ { char pid[sizeof("nnnnn\0")], *end, *file; int dead, fd, p, n, err; - size_t filelen; + size_t filelen = strlen(dir) + sizeof("/pid") + 1; - err = asprintf(&file, "%s/pid", dir); - if (err < 0) - return 0; + file = malloc(filelen); + if (!file) + return -ENOMEM; - filelen = strlen(file); - - n = snprintf(file, filelen, "%s/pid", dir); - if (n >= filelen) { - printk(UM_KERN_ERR "is_umdir_used - pid filename too long\n"); - err = -E2BIG; - goto out; - } + snprintf(file, filelen, "%s/pid", dir); dead = 0; fd = open(file, O_RDONLY); --- linux-azure-5.8-5.8.0.orig/arch/x86/Kconfig +++ linux-azure-5.8-5.8.0/arch/x86/Kconfig @@ -18,6 +18,7 @@ select MODULES_USE_ELF_REL select OLD_SIGACTION select GENERIC_VDSO_32 + select ARCH_SPLIT_ARG64 config X86_64 def_bool y @@ -75,7 +76,7 @@ select ARCH_HAS_PTE_DEVMAP if X86_64 select ARCH_HAS_PTE_SPECIAL select ARCH_HAS_UACCESS_FLUSHCACHE if X86_64 - select ARCH_HAS_UACCESS_MCSAFE if X86_64 && X86_MCE + select ARCH_HAS_COPY_MC if X86_64 select ARCH_HAS_SET_MEMORY select ARCH_HAS_SET_DIRECT_MAP select ARCH_HAS_STRICT_KERNEL_RWX --- linux-azure-5.8-5.8.0.orig/arch/x86/Kconfig.debug +++ linux-azure-5.8-5.8.0/arch/x86/Kconfig.debug @@ -59,7 +59,7 @@ You should normally say N here, unless you want to debug early crashes or need a very simple printk logging facility. -config MCSAFE_TEST +config COPY_MC_TEST def_bool n config EFI_PGT_DUMP --- linux-azure-5.8-5.8.0.orig/arch/x86/Makefile +++ linux-azure-5.8-5.8.0/arch/x86/Makefile @@ -61,6 +61,9 @@ KBUILD_CFLAGS += -mno-sse -mno-mmx -mno-sse2 -mno-3dnow KBUILD_CFLAGS += $(call cc-option,-mno-avx,) +# Intel CET isn't enabled in the kernel +KBUILD_CFLAGS += $(call cc-option,-fcf-protection=none) + ifeq ($(CONFIG_X86_32),y) BITS := 32 UTS_MACHINE := i386 --- linux-azure-5.8-5.8.0.orig/arch/x86/boot/compressed/Makefile +++ linux-azure-5.8-5.8.0/arch/x86/boot/compressed/Makefile @@ -42,6 +42,8 @@ KBUILD_CFLAGS += -Wno-pointer-sign KBUILD_CFLAGS += $(call cc-option,-fmacro-prefix-map=$(srctree)/=) KBUILD_CFLAGS += -fno-asynchronous-unwind-tables +# Disable relocation relaxation in case the link is not PIE. +KBUILD_CFLAGS += $(call as-option,-Wa$(comma)-mrelax-relocations=no) KBUILD_AFLAGS := $(KBUILD_CFLAGS) -D__ASSEMBLY__ GCOV_PROFILE := n --- linux-azure-5.8-5.8.0.orig/arch/x86/boot/compressed/kaslr.c +++ linux-azure-5.8-5.8.0/arch/x86/boot/compressed/kaslr.c @@ -94,8 +94,11 @@ static bool memmap_too_large; -/* Store memory limit specified by "mem=nn[KMG]" or "memmap=nn[KMG]" */ -static unsigned long long mem_limit = ULLONG_MAX; +/* + * Store memory limit: MAXMEM on 64-bit and KERNEL_IMAGE_SIZE on 32-bit. + * It may be reduced by "mem=nn[KMG]" or "memmap=nn[KMG]" command line options. + */ +static unsigned long long mem_limit; /* Number of immovable memory regions */ static int num_immovable_mem; @@ -221,7 +224,7 @@ if (start == 0) { /* Store the specified memory limit if size > 0 */ - if (size > 0) + if (size > 0 && size < mem_limit) mem_limit = size; continue; @@ -309,7 +312,8 @@ if (mem_size == 0) goto out; - mem_limit = mem_size; + if (mem_size < mem_limit) + mem_limit = mem_size; } else if (!strcmp(param, "efi_fake_mem")) { mem_avoid_memmap(PARSE_EFI, val); } @@ -321,7 +325,9 @@ } /* - * In theory, KASLR can put the kernel anywhere in the range of [16M, 64T). + * In theory, KASLR can put the kernel anywhere in the range of [16M, MAXMEM) + * on 64-bit, and [16M, KERNEL_IMAGE_SIZE) on 32-bit. + * * The mem_avoid array is used to store the ranges that need to be avoided * when KASLR searches for an appropriate random address. We must avoid any * regions that are unsafe to overlap with during decompression, and other @@ -621,10 +627,6 @@ unsigned long start_orig, end; struct mem_vector cur_entry; - /* On 32-bit, ignore entries entirely above our maximum. */ - if (IS_ENABLED(CONFIG_X86_32) && entry->start >= KERNEL_IMAGE_SIZE) - return; - /* Ignore entries entirely below our minimum. */ if (entry->start + entry->size < minimum) return; @@ -657,11 +659,6 @@ /* Reduce size by any delta from the original address. */ region.size -= region.start - start_orig; - /* On 32-bit, reduce region size to fit within max size. */ - if (IS_ENABLED(CONFIG_X86_32) && - region.start + region.size > KERNEL_IMAGE_SIZE) - region.size = KERNEL_IMAGE_SIZE - region.start; - /* Return if region can't contain decompressed kernel */ if (region.size < image_size) return; @@ -846,15 +843,16 @@ static unsigned long find_random_phys_addr(unsigned long minimum, unsigned long image_size) { + /* Bail out early if it's impossible to succeed. */ + if (minimum + image_size > mem_limit) + return 0; + /* Check if we had too many memmaps. */ if (memmap_too_large) { debug_putstr("Aborted memory entries scan (more than 4 memmap= args)!\n"); return 0; } - /* Make sure minimum is aligned. */ - minimum = ALIGN(minimum, CONFIG_PHYSICAL_ALIGN); - if (process_efi_entries(minimum, image_size)) return slots_fetch_random(); @@ -867,8 +865,6 @@ { unsigned long slots, random_addr; - /* Make sure minimum is aligned. */ - minimum = ALIGN(minimum, CONFIG_PHYSICAL_ALIGN); /* Align image_size for easy slot calculations. */ image_size = ALIGN(image_size, CONFIG_PHYSICAL_ALIGN); @@ -915,6 +911,11 @@ /* Prepare to add new identity pagetables on demand. */ initialize_identity_maps(); + if (IS_ENABLED(CONFIG_X86_32)) + mem_limit = KERNEL_IMAGE_SIZE; + else + mem_limit = MAXMEM; + /* Record the various known unsafe memory ranges. */ mem_avoid_init(input, input_size, *output); @@ -924,6 +925,8 @@ * location: */ min_addr = min(*output, 512UL << 20); + /* Make sure minimum is aligned. */ + min_addr = ALIGN(min_addr, CONFIG_PHYSICAL_ALIGN); /* Walk available memory entries to find a random address. */ random_addr = find_random_phys_addr(min_addr, output_size); --- linux-azure-5.8-5.8.0.orig/arch/x86/boot/compressed/mem_encrypt.S +++ linux-azure-5.8-5.8.0/arch/x86/boot/compressed/mem_encrypt.S @@ -81,6 +81,19 @@ bts %rax, sme_me_mask(%rip) /* Create the encryption mask */ + /* + * Read MSR_AMD64_SEV again and store it to sev_status. Can't do this in + * get_sev_encryption_bit() because this function is 32-bit code and + * shared between 64-bit and 32-bit boot path. + */ + movl $MSR_AMD64_SEV, %ecx /* Read the SEV MSR */ + rdmsr + + /* Store MSR value in sev_status */ + shlq $32, %rdx + orq %rdx, %rax + movq %rax, sev_status(%rip) + .Lno_sev_mask: movq %rbp, %rsp /* Restore original stack pointer */ @@ -96,5 +109,6 @@ #ifdef CONFIG_AMD_MEM_ENCRYPT .balign 8 -SYM_DATA(sme_me_mask, .quad 0) +SYM_DATA(sme_me_mask, .quad 0) +SYM_DATA(sev_status, .quad 0) #endif --- linux-azure-5.8-5.8.0.orig/arch/x86/boot/compressed/pgtable_64.c +++ linux-azure-5.8-5.8.0/arch/x86/boot/compressed/pgtable_64.c @@ -5,15 +5,6 @@ #include "pgtable.h" #include "../string.h" -/* - * __force_order is used by special_insns.h asm code to force instruction - * serialization. - * - * It is not referenced from the code, but GCC < 5 with -fPIE would fail - * due to an undefined symbol. Define it to make these ancient GCCs work. - */ -unsigned long __force_order; - #define BIOS_START_MIN 0x20000U /* 128K, less than this is insane */ #define BIOS_START_MAX 0x9f000U /* 640K, absolute maximum */ --- linux-azure-5.8-5.8.0.orig/arch/x86/boot/video-vga.c +++ linux-azure-5.8-5.8.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-azure-5.8-5.8.0.orig/arch/x86/configs/i386_defconfig +++ linux-azure-5.8-5.8.0/arch/x86/configs/i386_defconfig @@ -202,7 +202,6 @@ CONFIG_FB_TILEBLITTING=y CONFIG_FB_EFI=y # CONFIG_LCD_CLASS_DEVICE is not set -CONFIG_VGACON_SOFT_SCROLLBACK=y CONFIG_LOGO=y # CONFIG_LOGO_LINUX_MONO is not set # CONFIG_LOGO_LINUX_VGA16 is not set --- linux-azure-5.8-5.8.0.orig/arch/x86/configs/x86_64_defconfig +++ linux-azure-5.8-5.8.0/arch/x86/configs/x86_64_defconfig @@ -197,7 +197,6 @@ CONFIG_FB_TILEBLITTING=y CONFIG_FB_EFI=y # CONFIG_LCD_CLASS_DEVICE is not set -CONFIG_VGACON_SOFT_SCROLLBACK=y CONFIG_LOGO=y # CONFIG_LOGO_LINUX_MONO is not set # CONFIG_LOGO_LINUX_VGA16 is not set --- linux-azure-5.8-5.8.0.orig/arch/x86/crypto/aes_ctrby8_avx-x86_64.S +++ linux-azure-5.8-5.8.0/arch/x86/crypto/aes_ctrby8_avx-x86_64.S @@ -127,10 +127,6 @@ /* generate a unique variable for ddq_add_x */ -.macro setddq n - var_ddq_add = ddq_add_\n -.endm - /* generate a unique variable for xmm register */ .macro setxdata n var_xdata = %xmm\n @@ -140,9 +136,7 @@ .macro club name, id .altmacro - .if \name == DDQ_DATA - setddq %\id - .elseif \name == XDATA + .if \name == XDATA setxdata %\id .endif .noaltmacro @@ -165,9 +159,8 @@ .set i, 1 .rept (by - 1) - club DDQ_DATA, i club XDATA, i - vpaddq var_ddq_add(%rip), xcounter, var_xdata + vpaddq (ddq_add_1 + 16 * (i - 1))(%rip), xcounter, var_xdata vptest ddq_low_msk(%rip), var_xdata jnz 1f vpaddq ddq_high_add_1(%rip), var_xdata, var_xdata @@ -180,8 +173,7 @@ vmovdqa 1*16(p_keys), xkeyA vpxor xkey0, xdata0, xdata0 - club DDQ_DATA, by - vpaddq var_ddq_add(%rip), xcounter, xcounter + vpaddq (ddq_add_1 + 16 * (by - 1))(%rip), xcounter, xcounter vptest ddq_low_msk(%rip), xcounter jnz 1f vpaddq ddq_high_add_1(%rip), xcounter, xcounter --- linux-azure-5.8-5.8.0.orig/arch/x86/crypto/aesni-intel_asm.S +++ linux-azure-5.8-5.8.0/arch/x86/crypto/aesni-intel_asm.S @@ -266,7 +266,7 @@ PSHUFB_XMM %xmm2, %xmm0 movdqu %xmm0, CurCount(%arg2) # ctx_data.current_counter = iv - PRECOMPUTE \SUBKEY, %xmm1, %xmm2, %xmm3, %xmm4, %xmm5, %xmm6, %xmm7, + PRECOMPUTE \SUBKEY, %xmm1, %xmm2, %xmm3, %xmm4, %xmm5, %xmm6, %xmm7 movdqu HashKey(%arg2), %xmm13 CALC_AAD_HASH %xmm13, \AAD, \AADLEN, %xmm0, %xmm1, %xmm2, %xmm3, \ @@ -978,7 +978,7 @@ * arg1, %arg3, %arg4 are used as pointers only, not modified * %r11 is the data offset value */ -.macro GHASH_4_ENCRYPT_4_PARALLEL_ENC TMP1 TMP2 TMP3 TMP4 TMP5 \ +.macro GHASH_4_ENCRYPT_4_PARALLEL_enc TMP1 TMP2 TMP3 TMP4 TMP5 \ TMP6 XMM0 XMM1 XMM2 XMM3 XMM4 XMM5 XMM6 XMM7 XMM8 operation movdqa \XMM1, \XMM5 @@ -1186,7 +1186,7 @@ * arg1, %arg3, %arg4 are used as pointers only, not modified * %r11 is the data offset value */ -.macro GHASH_4_ENCRYPT_4_PARALLEL_DEC TMP1 TMP2 TMP3 TMP4 TMP5 \ +.macro GHASH_4_ENCRYPT_4_PARALLEL_dec TMP1 TMP2 TMP3 TMP4 TMP5 \ TMP6 XMM0 XMM1 XMM2 XMM3 XMM4 XMM5 XMM6 XMM7 XMM8 operation movdqa \XMM1, \XMM5 --- linux-azure-5.8-5.8.0.orig/arch/x86/crypto/aesni-intel_glue.c +++ linux-azure-5.8-5.8.0/arch/x86/crypto/aesni-intel_glue.c @@ -686,7 +686,8 @@ struct crypto_aead *tfm = crypto_aead_reqtfm(req); unsigned long auth_tag_len = crypto_aead_authsize(tfm); const struct aesni_gcm_tfm_s *gcm_tfm = aesni_gcm_tfm; - struct gcm_context_data data AESNI_ALIGN_ATTR; + u8 databuf[sizeof(struct gcm_context_data) + (AESNI_ALIGN - 8)] __aligned(8); + struct gcm_context_data *data = PTR_ALIGN((void *)databuf, AESNI_ALIGN); struct scatter_walk dst_sg_walk = {}; unsigned long left = req->cryptlen; unsigned long len, srclen, dstlen; @@ -735,8 +736,7 @@ } kernel_fpu_begin(); - gcm_tfm->init(aes_ctx, &data, iv, - hash_subkey, assoc, assoclen); + gcm_tfm->init(aes_ctx, data, iv, hash_subkey, assoc, assoclen); if (req->src != req->dst) { while (left) { src = scatterwalk_map(&src_sg_walk); @@ -746,10 +746,10 @@ len = min(srclen, dstlen); if (len) { if (enc) - gcm_tfm->enc_update(aes_ctx, &data, + gcm_tfm->enc_update(aes_ctx, data, dst, src, len); else - gcm_tfm->dec_update(aes_ctx, &data, + gcm_tfm->dec_update(aes_ctx, data, dst, src, len); } left -= len; @@ -767,10 +767,10 @@ len = scatterwalk_clamp(&src_sg_walk, left); if (len) { if (enc) - gcm_tfm->enc_update(aes_ctx, &data, + gcm_tfm->enc_update(aes_ctx, data, src, src, len); else - gcm_tfm->dec_update(aes_ctx, &data, + gcm_tfm->dec_update(aes_ctx, data, src, src, len); } left -= len; @@ -779,7 +779,7 @@ scatterwalk_done(&src_sg_walk, 1, left); } } - gcm_tfm->finalize(aes_ctx, &data, authTag, auth_tag_len); + gcm_tfm->finalize(aes_ctx, data, authTag, auth_tag_len); kernel_fpu_end(); if (!assocmem) @@ -828,7 +828,8 @@ struct crypto_aead *tfm = crypto_aead_reqtfm(req); struct aesni_rfc4106_gcm_ctx *ctx = aesni_rfc4106_gcm_ctx_get(tfm); void *aes_ctx = &(ctx->aes_key_expanded); - u8 iv[16] __attribute__ ((__aligned__(AESNI_ALIGN))); + u8 ivbuf[16 + (AESNI_ALIGN - 8)] __aligned(8); + u8 *iv = PTR_ALIGN(&ivbuf[0], AESNI_ALIGN); unsigned int i; __be32 counter = cpu_to_be32(1); @@ -855,7 +856,8 @@ struct crypto_aead *tfm = crypto_aead_reqtfm(req); struct aesni_rfc4106_gcm_ctx *ctx = aesni_rfc4106_gcm_ctx_get(tfm); void *aes_ctx = &(ctx->aes_key_expanded); - u8 iv[16] __attribute__ ((__aligned__(AESNI_ALIGN))); + u8 ivbuf[16 + (AESNI_ALIGN - 8)] __aligned(8); + u8 *iv = PTR_ALIGN(&ivbuf[0], AESNI_ALIGN); unsigned int i; if (unlikely(req->assoclen != 16 && req->assoclen != 20)) @@ -985,7 +987,8 @@ struct crypto_aead *tfm = crypto_aead_reqtfm(req); struct generic_gcmaes_ctx *ctx = generic_gcmaes_ctx_get(tfm); void *aes_ctx = &(ctx->aes_key_expanded); - u8 iv[16] __attribute__ ((__aligned__(AESNI_ALIGN))); + u8 ivbuf[16 + (AESNI_ALIGN - 8)] __aligned(8); + u8 *iv = PTR_ALIGN(&ivbuf[0], AESNI_ALIGN); __be32 counter = cpu_to_be32(1); memcpy(iv, req->iv, 12); @@ -1001,7 +1004,8 @@ struct crypto_aead *tfm = crypto_aead_reqtfm(req); struct generic_gcmaes_ctx *ctx = generic_gcmaes_ctx_get(tfm); void *aes_ctx = &(ctx->aes_key_expanded); - u8 iv[16] __attribute__ ((__aligned__(AESNI_ALIGN))); + u8 ivbuf[16 + (AESNI_ALIGN - 8)] __aligned(8); + u8 *iv = PTR_ALIGN(&ivbuf[0], AESNI_ALIGN); memcpy(iv, req->iv, 12); *((__be32 *)(iv+12)) = counter; --- linux-azure-5.8-5.8.0.orig/arch/x86/crypto/crc32c-pcl-intel-asm_64.S +++ linux-azure-5.8-5.8.0/arch/x86/crypto/crc32c-pcl-intel-asm_64.S @@ -170,7 +170,7 @@ ## branch into array lea jump_table(%rip), %bufp - movzxw (%bufp, %rax, 2), len + movzwq (%bufp, %rax, 2), len lea crc_array(%rip), %bufp lea (%bufp, len, 1), %bufp JMP_NOSPEC bufp --- linux-azure-5.8-5.8.0.orig/arch/x86/entry/calling.h +++ linux-azure-5.8-5.8.0/arch/x86/entry/calling.h @@ -6,6 +6,7 @@ #include #include #include +#include /* @@ -341,6 +342,12 @@ #endif .endm +.macro SAVE_AND_SET_GSBASE scratch_reg:req save_reg:req + rdgsbase \save_reg + GET_PERCPU_BASE \scratch_reg + wrgsbase \scratch_reg +.endm + #else /* CONFIG_X86_64 */ # undef UNWIND_HINT_IRET_REGS # define UNWIND_HINT_IRET_REGS @@ -351,3 +358,36 @@ call stackleak_erase #endif .endm + +#ifdef CONFIG_SMP + +/* + * CPU/node NR is loaded from the limit (size) field of a special segment + * descriptor entry in GDT. + */ +.macro LOAD_CPU_AND_NODE_SEG_LIMIT reg:req + movq $__CPUNODE_SEG, \reg + lsl \reg, \reg +.endm + +/* + * Fetch the per-CPU GSBASE value for this processor and put it in @reg. + * We normally use %gs for accessing per-CPU data, but we are setting up + * %gs here and obviously can not use %gs itself to access per-CPU data. + */ +.macro GET_PERCPU_BASE reg:req + ALTERNATIVE \ + "LOAD_CPU_AND_NODE_SEG_LIMIT \reg", \ + "RDPID \reg", \ + X86_FEATURE_RDPID + andq $VDSO_CPUNODE_MASK, \reg + movq __per_cpu_offset(, \reg, 8), \reg +.endm + +#else + +.macro GET_PERCPU_BASE reg:req + movq pcpu_unit_offsets(%rip), \reg +.endm + +#endif /* CONFIG_SMP */ --- linux-azure-5.8-5.8.0.orig/arch/x86/entry/common.c +++ linux-azure-5.8-5.8.0/arch/x86/entry/common.c @@ -55,8 +55,16 @@ * state, not the interrupt state as imagined by Xen. */ unsigned long flags = native_save_fl(); - WARN_ON_ONCE(flags & (X86_EFLAGS_AC | X86_EFLAGS_DF | - X86_EFLAGS_NT)); + unsigned long mask = X86_EFLAGS_DF | X86_EFLAGS_NT; + + /* + * For !SMAP hardware we patch out CLAC on entry. + */ + if (boot_cpu_has(X86_FEATURE_SMAP) || + (IS_ENABLED(CONFIG_64_BIT) && boot_cpu_has(X86_FEATURE_XENPV))) + mask |= X86_EFLAGS_AC; + + WARN_ON_ONCE(flags & mask); /* We think we came from user mode. Make sure pt_regs agrees. */ WARN_ON_ONCE(!user_mode(regs)); @@ -806,8 +814,8 @@ old_regs = set_irq_regs(regs); instrumentation_begin(); - run_on_irqstack_cond(__xen_pv_evtchn_do_upcall, NULL, regs); - instrumentation_begin(); + run_on_irqstack_cond(__xen_pv_evtchn_do_upcall, regs); + instrumentation_end(); set_irq_regs(old_regs); --- linux-azure-5.8-5.8.0.orig/arch/x86/entry/entry_64.S +++ linux-azure-5.8-5.8.0/arch/x86/entry/entry_64.S @@ -38,6 +38,7 @@ #include #include #include +#include #include #include "calling.h" @@ -426,10 +427,7 @@ testb $3, CS-ORIG_RAX(%rsp) jnz .Lfrom_usermode_switch_stack_\@ - /* - * paranoid_entry returns SWAPGS flag for paranoid_exit in EBX. - * EBX == 0 -> SWAPGS, EBX == 1 -> no SWAPGS - */ + /* paranoid_entry returns GS information for paranoid_exit in EBX. */ call paranoid_entry UNWIND_HINT_REGS @@ -458,10 +456,7 @@ UNWIND_HINT_IRET_REGS offset=8 ASM_CLAC - /* - * paranoid_entry returns SWAPGS flag for paranoid_exit in EBX. - * EBX == 0 -> SWAPGS, EBX == 1 -> no SWAPGS - */ + /* paranoid_entry returns GS information for paranoid_exit in EBX. */ call paranoid_entry UNWIND_HINT_REGS @@ -687,6 +682,8 @@ * rdx: Function argument (can be NULL if none) */ SYM_FUNC_START(asm_call_on_stack) +SYM_INNER_LABEL(asm_call_sysvec_on_stack, SYM_L_GLOBAL) +SYM_INNER_LABEL(asm_call_irq_on_stack, SYM_L_GLOBAL) /* * Save the frame pointer unconditionally. This allows the ORC * unwinder to handle the stack switch. @@ -798,24 +795,21 @@ #endif /* CONFIG_XEN_PV */ /* - * Save all registers in pt_regs, and switch gs if needed. - * Use slow, but surefire "are we in kernel?" check. - * Return: ebx=0: need swapgs on exit, ebx=1: otherwise + * Save all registers in pt_regs. Return GSBASE related information + * in EBX depending on the availability of the FSGSBASE instructions: + * + * FSGSBASE R/EBX + * N 0 -> SWAPGS on exit + * 1 -> no SWAPGS on exit + * + * Y GSBASE value at entry, must be restored in paranoid_exit */ SYM_CODE_START_LOCAL(paranoid_entry) UNWIND_HINT_FUNC cld PUSH_AND_CLEAR_REGS save_ret=1 ENCODE_FRAME_POINTER 8 - movl $1, %ebx - movl $MSR_GS_BASE, %ecx - rdmsr - testl %edx, %edx - js 1f /* negative -> in kernel */ - SWAPGS - xorl %ebx, %ebx -1: /* * Always stash CR3 in %r14. This value will be restored, * verbatim, at exit. Needed if paranoid_entry interrupted @@ -825,16 +819,60 @@ * This is also why CS (stashed in the "iret frame" by the * hardware at entry) can not be used: this may be a return * to kernel code, but with a user CR3 value. + * + * Switching CR3 does not depend on kernel GSBASE so it can + * be done before switching to the kernel GSBASE. This is + * required for FSGSBASE because the kernel GSBASE has to + * be retrieved from a kernel internal table. */ SAVE_AND_SWITCH_TO_KERNEL_CR3 scratch_reg=%rax save_reg=%r14 /* + * Handling GSBASE depends on the availability of FSGSBASE. + * + * Without FSGSBASE the kernel enforces that negative GSBASE + * values indicate kernel GSBASE. With FSGSBASE no assumptions + * can be made about the GSBASE value when entering from user + * space. + */ + ALTERNATIVE "jmp .Lparanoid_entry_checkgs", "", X86_FEATURE_FSGSBASE + + /* + * Read the current GSBASE and store it in %rbx unconditionally, + * retrieve and set the current CPUs kernel GSBASE. The stored value + * has to be restored in paranoid_exit unconditionally. + * + * The MSR write ensures that no subsequent load is based on a + * mispredicted GSBASE. No extra FENCE required. + */ + SAVE_AND_SET_GSBASE scratch_reg=%rax save_reg=%rbx + ret + +.Lparanoid_entry_checkgs: + /* EBX = 1 -> kernel GSBASE active, no restore required */ + movl $1, %ebx + /* + * The kernel-enforced convention is a negative GSBASE indicates + * a kernel value. No SWAPGS needed on entry and exit. + */ + movl $MSR_GS_BASE, %ecx + rdmsr + testl %edx, %edx + jns .Lparanoid_entry_swapgs + ret + +.Lparanoid_entry_swapgs: + SWAPGS + + /* * The above SAVE_AND_SWITCH_TO_KERNEL_CR3 macro doesn't do an * unconditional CR3 write, even in the PTI case. So do an lfence * to prevent GS speculation, regardless of whether PTI is enabled. */ FENCE_SWAPGS_KERNEL_ENTRY + /* EBX = 0 -> SWAPGS required on exit */ + xorl %ebx, %ebx ret SYM_CODE_END(paranoid_entry) @@ -845,23 +883,45 @@ * * We may be returning to very strange contexts (e.g. very early * in syscall entry), so checking for preemption here would - * be complicated. Fortunately, we there's no good reason - * to try to handle preemption here. + * be complicated. Fortunately, there's no good reason to try + * to handle preemption here. + * + * R/EBX contains the GSBASE related information depending on the + * availability of the FSGSBASE instructions: + * + * FSGSBASE R/EBX + * N 0 -> SWAPGS on exit + * 1 -> no SWAPGS on exit * - * On entry, ebx is "no swapgs" flag (1: don't need swapgs, 0: need it) + * Y User space GSBASE, must be restored unconditionally */ SYM_CODE_START_LOCAL(paranoid_exit) UNWIND_HINT_REGS - testl %ebx, %ebx /* swapgs needed? */ - jnz .Lparanoid_exit_no_swapgs - /* Always restore stashed CR3 value (see paranoid_entry) */ - RESTORE_CR3 scratch_reg=%rbx save_reg=%r14 + /* + * The order of operations is important. RESTORE_CR3 requires + * kernel GSBASE. + * + * NB to anyone to try to optimize this code: this code does + * not execute at all for exceptions from user mode. Those + * exceptions go through error_exit instead. + */ + RESTORE_CR3 scratch_reg=%rax save_reg=%r14 + + /* Handle the three GSBASE cases */ + ALTERNATIVE "jmp .Lparanoid_exit_checkgs", "", X86_FEATURE_FSGSBASE + + /* With FSGSBASE enabled, unconditionally restore GSBASE */ + wrgsbase %rbx + jmp restore_regs_and_return_to_kernel + +.Lparanoid_exit_checkgs: + /* On non-FSGSBASE systems, conditionally do SWAPGS */ + testl %ebx, %ebx + jnz restore_regs_and_return_to_kernel + + /* We are returning to a context with user GSBASE */ SWAPGS_UNSAFE_STACK - jmp restore_regs_and_return_to_kernel -.Lparanoid_exit_no_swapgs: - /* Always restore stashed CR3 value (see paranoid_entry) */ - RESTORE_CR3 scratch_reg=%rbx save_reg=%r14 - jmp restore_regs_and_return_to_kernel + jmp restore_regs_and_return_to_kernel SYM_CODE_END(paranoid_exit) /* @@ -1266,10 +1326,27 @@ /* Always restore stashed CR3 value (see paranoid_entry) */ RESTORE_CR3 scratch_reg=%r15 save_reg=%r14 - testl %ebx, %ebx /* swapgs needed? */ + /* + * The above invocation of paranoid_entry stored the GSBASE + * related information in R/EBX depending on the availability + * of FSGSBASE. + * + * If FSGSBASE is enabled, restore the saved GSBASE value + * unconditionally, otherwise take the conditional SWAPGS path. + */ + ALTERNATIVE "jmp nmi_no_fsgsbase", "", X86_FEATURE_FSGSBASE + + wrgsbase %rbx + jmp nmi_restore + +nmi_no_fsgsbase: + /* EBX == 0 -> invoke SWAPGS */ + testl %ebx, %ebx jnz nmi_restore + nmi_swapgs: SWAPGS_UNSAFE_STACK + nmi_restore: POP_REGS --- linux-azure-5.8-5.8.0.orig/arch/x86/entry/thunk_64.S +++ linux-azure-5.8-5.8.0/arch/x86/entry/thunk_64.S @@ -31,7 +31,7 @@ .endif call \func - jmp .L_restore + jmp __thunk_restore SYM_FUNC_END(\name) _ASM_NOKPROBE(\name) .endm @@ -44,7 +44,7 @@ #endif #ifdef CONFIG_PREEMPTION -SYM_CODE_START_LOCAL_NOALIGN(.L_restore) +SYM_CODE_START_LOCAL_NOALIGN(__thunk_restore) popq %r11 popq %r10 popq %r9 @@ -56,6 +56,6 @@ popq %rdi popq %rbp ret - _ASM_NOKPROBE(.L_restore) -SYM_CODE_END(.L_restore) + _ASM_NOKPROBE(__thunk_restore) +SYM_CODE_END(__thunk_restore) #endif --- linux-azure-5.8-5.8.0.orig/arch/x86/entry/vdso/Makefile +++ linux-azure-5.8-5.8.0/arch/x86/entry/vdso/Makefile @@ -176,7 +176,7 @@ -T $(filter %.lds,$^) $(filter %.o,$^) && \ sh $(srctree)/$(src)/checkundef.sh '$(NM)' '$@' -VDSO_LDFLAGS = -shared --hash-style=both --build-id \ +VDSO_LDFLAGS = -shared --hash-style=both --build-id=sha1 \ $(call ld-option, --eh-frame-hdr) -Bsymbolic GCOV_PROFILE := n --- linux-azure-5.8-5.8.0.orig/arch/x86/events/amd/ibs.c +++ linux-azure-5.8-5.8.0/arch/x86/events/amd/ibs.c @@ -89,6 +89,7 @@ u64 max_period; unsigned long offset_mask[1]; int offset_max; + unsigned int fetch_count_reset_broken : 1; struct cpu_perf_ibs __percpu *pcpu; struct attribute **format_attrs; @@ -334,11 +335,15 @@ { u64 count = 0; + /* + * If the internal 27-bit counter rolled over, the count is MaxCnt + * and the lower 7 bits of CurCnt are randomized. + * Otherwise CurCnt has the full 27-bit current counter value. + */ if (config & IBS_OP_VAL) - count += (config & IBS_OP_MAX_CNT) << 4; /* cnt rolled over */ - - if (ibs_caps & IBS_CAPS_RDWROPCNT) - count += (config & IBS_OP_CUR_CNT) >> 32; + count = (config & IBS_OP_MAX_CNT) << 4; + else if (ibs_caps & IBS_CAPS_RDWROPCNT) + count = (config & IBS_OP_CUR_CNT) >> 32; return count; } @@ -363,7 +368,12 @@ static inline void perf_ibs_enable_event(struct perf_ibs *perf_ibs, struct hw_perf_event *hwc, u64 config) { - wrmsrl(hwc->config_base, hwc->config | config | perf_ibs->enable_mask); + u64 tmp = hwc->config | config; + + if (perf_ibs->fetch_count_reset_broken) + wrmsrl(hwc->config_base, tmp & ~perf_ibs->enable_mask); + + wrmsrl(hwc->config_base, tmp | perf_ibs->enable_mask); } /* @@ -626,18 +636,24 @@ perf_ibs->offset_max, offset + 1); } while (offset < offset_max); + /* + * Read IbsBrTarget, IbsOpData4, and IbsExtdCtl separately + * depending on their availability. + * Can't add to offset_max as they are staggered + */ if (event->attr.sample_type & PERF_SAMPLE_RAW) { - /* - * Read IbsBrTarget and IbsOpData4 separately - * depending on their availability. - * Can't add to offset_max as they are staggered - */ - if (ibs_caps & IBS_CAPS_BRNTRGT) { - rdmsrl(MSR_AMD64_IBSBRTARGET, *buf++); - size++; + if (perf_ibs == &perf_ibs_op) { + if (ibs_caps & IBS_CAPS_BRNTRGT) { + rdmsrl(MSR_AMD64_IBSBRTARGET, *buf++); + size++; + } + if (ibs_caps & IBS_CAPS_OPDATA4) { + rdmsrl(MSR_AMD64_IBSOPDATA4, *buf++); + size++; + } } - if (ibs_caps & IBS_CAPS_OPDATA4) { - rdmsrl(MSR_AMD64_IBSOPDATA4, *buf++); + if (perf_ibs == &perf_ibs_fetch && (ibs_caps & IBS_CAPS_FETCHCTLEXTD)) { + rdmsrl(MSR_AMD64_ICIBSEXTDCTL, *buf++); size++; } } @@ -733,6 +749,13 @@ { struct attribute **attr = ibs_op_format_attrs; + /* + * Some chips fail to reset the fetch count when it is written; instead + * they need a 0-1 transition of IbsFetchEn. + */ + if (boot_cpu_data.x86 >= 0x16 && boot_cpu_data.x86 <= 0x18) + perf_ibs_fetch.fetch_count_reset_broken = 1; + perf_ibs_pmu_init(&perf_ibs_fetch, "ibs_fetch"); if (ibs_caps & IBS_CAPS_OPCNT) { --- linux-azure-5.8-5.8.0.orig/arch/x86/events/amd/iommu.c +++ linux-azure-5.8-5.8.0/arch/x86/events/amd/iommu.c @@ -379,7 +379,7 @@ while (amd_iommu_v2_event_descs[i].attr.attr.name) i++; - attrs = kcalloc(i + 1, sizeof(struct attribute **), GFP_KERNEL); + attrs = kcalloc(i + 1, sizeof(*attrs), GFP_KERNEL); if (!attrs) return -ENOMEM; --- linux-azure-5.8-5.8.0.orig/arch/x86/events/amd/uncore.c +++ linux-azure-5.8-5.8.0/arch/x86/events/amd/uncore.c @@ -181,28 +181,16 @@ } /* - * Convert logical CPU number to L3 PMC Config ThreadMask format + * Return a full thread and slice mask until per-CPU is + * properly supported. */ -static u64 l3_thread_slice_mask(int cpu) +static u64 l3_thread_slice_mask(void) { - u64 thread_mask, core = topology_core_id(cpu); - unsigned int shift, thread = 0; + if (boot_cpu_data.x86 <= 0x18) + return AMD64_L3_SLICE_MASK | AMD64_L3_THREAD_MASK; - if (topology_smt_supported() && !topology_is_primary_thread(cpu)) - thread = 1; - - if (boot_cpu_data.x86 <= 0x18) { - shift = AMD64_L3_THREAD_SHIFT + 2 * (core % 4) + thread; - thread_mask = BIT_ULL(shift); - - return AMD64_L3_SLICE_MASK | thread_mask; - } - - core = (core << AMD64_L3_COREID_SHIFT) & AMD64_L3_COREID_MASK; - shift = AMD64_L3_THREAD_SHIFT + thread; - thread_mask = BIT_ULL(shift); - - return AMD64_L3_EN_ALL_SLICES | core | thread_mask; + return AMD64_L3_EN_ALL_SLICES | AMD64_L3_EN_ALL_CORES | + AMD64_L3_F19H_THREAD_MASK; } static int amd_uncore_event_init(struct perf_event *event) @@ -232,7 +220,7 @@ * For other events, the two fields do not affect the count. */ if (l3_mask && is_llc_event(event)) - hwc->config |= l3_thread_slice_mask(event->cpu); + hwc->config |= l3_thread_slice_mask(); uncore = event_to_amd_uncore(event); if (!uncore) --- linux-azure-5.8-5.8.0.orig/arch/x86/events/core.c +++ linux-azure-5.8-5.8.0/arch/x86/events/core.c @@ -1087,8 +1087,10 @@ cpuc->event_list[n] = event; n++; - if (is_counter_pair(&event->hw)) + if (is_counter_pair(&event->hw)) { cpuc->n_pair++; + cpuc->n_txn_pair++; + } } return n; } @@ -1275,11 +1277,11 @@ wrmsrl(hwc->event_base, (u64)(-left) & x86_pmu.cntval_mask); /* - * Clear the Merge event counter's upper 16 bits since + * Sign extend the Merge event counter's upper 16 bits since * we currently declare a 48-bit counter width */ if (is_counter_pair(hwc)) - wrmsrl(x86_pmu_event_addr(idx + 1), 0); + wrmsrl(x86_pmu_event_addr(idx + 1), 0xffff); /* * Due to erratum on certan cpu we need @@ -1953,6 +1955,7 @@ perf_pmu_disable(pmu); __this_cpu_write(cpu_hw_events.n_txn, 0); + __this_cpu_write(cpu_hw_events.n_txn_pair, 0); } /* @@ -1978,6 +1981,7 @@ */ __this_cpu_sub(cpu_hw_events.n_added, __this_cpu_read(cpu_hw_events.n_txn)); __this_cpu_sub(cpu_hw_events.n_events, __this_cpu_read(cpu_hw_events.n_txn)); + __this_cpu_sub(cpu_hw_events.n_pair, __this_cpu_read(cpu_hw_events.n_txn_pair)); perf_pmu_enable(pmu); } --- linux-azure-5.8-5.8.0.orig/arch/x86/events/intel/core.c +++ linux-azure-5.8-5.8.0/arch/x86/events/intel/core.c @@ -243,7 +243,7 @@ static struct event_constraint intel_icl_event_constraints[] = { FIXED_EVENT_CONSTRAINT(0x00c0, 0), /* INST_RETIRED.ANY */ - INTEL_UEVENT_CONSTRAINT(0x1c0, 0), /* INST_RETIRED.PREC_DIST */ + FIXED_EVENT_CONSTRAINT(0x01c0, 0), /* INST_RETIRED.PREC_DIST */ FIXED_EVENT_CONSTRAINT(0x003c, 1), /* CPU_CLK_UNHALTED.CORE */ FIXED_EVENT_CONSTRAINT(0x0300, 2), /* CPU_CLK_UNHALTED.REF */ FIXED_EVENT_CONSTRAINT(0x0400, 3), /* SLOTS */ @@ -253,7 +253,8 @@ INTEL_EVENT_CONSTRAINT_RANGE(0x48, 0x54, 0xf), INTEL_EVENT_CONSTRAINT_RANGE(0x60, 0x8b, 0xf), INTEL_UEVENT_CONSTRAINT(0x04a3, 0xff), /* CYCLE_ACTIVITY.STALLS_TOTAL */ - INTEL_UEVENT_CONSTRAINT(0x10a3, 0xff), /* CYCLE_ACTIVITY.STALLS_MEM_ANY */ + INTEL_UEVENT_CONSTRAINT(0x10a3, 0xff), /* CYCLE_ACTIVITY.CYCLES_MEM_ANY */ + INTEL_UEVENT_CONSTRAINT(0x14a3, 0xff), /* CYCLE_ACTIVITY.STALLS_MEM_ANY */ INTEL_EVENT_CONSTRAINT(0xa3, 0xf), /* CYCLE_ACTIVITY.* */ INTEL_EVENT_CONSTRAINT_RANGE(0xa8, 0xb0, 0xf), INTEL_EVENT_CONSTRAINT_RANGE(0xb7, 0xbd, 0xf), @@ -5095,7 +5096,7 @@ extra_skl_attr = skl_format_attr; mem_attr = icl_events_attrs; tsx_attr = icl_tsx_events_attrs; - x86_pmu.rtm_abort_event = X86_CONFIG(.event=0xca, .umask=0x02); + x86_pmu.rtm_abort_event = X86_CONFIG(.event=0xc9, .umask=0x04); x86_pmu.lbr_pt_coexist = true; intel_pmu_pebs_data_source_skl(pmem); pr_cont("Icelake events, "); --- linux-azure-5.8-5.8.0.orig/arch/x86/events/intel/cstate.c +++ linux-azure-5.8-5.8.0/arch/x86/events/intel/cstate.c @@ -107,14 +107,14 @@ MODULE_LICENSE("GPL"); #define DEFINE_CSTATE_FORMAT_ATTR(_var, _name, _format) \ -static ssize_t __cstate_##_var##_show(struct kobject *kobj, \ - struct kobj_attribute *attr, \ +static ssize_t __cstate_##_var##_show(struct device *dev, \ + struct device_attribute *attr, \ char *page) \ { \ BUILD_BUG_ON(sizeof(_format) >= PAGE_SIZE); \ return sprintf(page, _format "\n"); \ } \ -static struct kobj_attribute format_attr_##_var = \ +static struct device_attribute format_attr_##_var = \ __ATTR(_name, 0444, __cstate_##_var##_show, NULL) static ssize_t cstate_get_attr_cpumask(struct device *dev, --- linux-azure-5.8-5.8.0.orig/arch/x86/events/intel/ds.c +++ linux-azure-5.8-5.8.0/arch/x86/events/intel/ds.c @@ -670,9 +670,7 @@ static inline void intel_pmu_drain_pebs_buffer(void) { - struct pt_regs regs; - - x86_pmu.drain_pebs(®s); + x86_pmu.drain_pebs(NULL); } /* @@ -1737,6 +1735,7 @@ struct x86_perf_regs perf_regs; struct pt_regs *regs = &perf_regs.regs; void *at = get_next_pebs_record_by_bit(base, top, bit); + struct pt_regs dummy_iregs; if (hwc->flags & PERF_X86_EVENT_AUTO_RELOAD) { /* @@ -1749,6 +1748,9 @@ } else if (!intel_pmu_save_and_restart(event)) return; + if (!iregs) + iregs = &dummy_iregs; + while (count > 1) { setup_sample(event, iregs, at, &data, regs); perf_event_output(event, &data, regs); @@ -1758,16 +1760,22 @@ } setup_sample(event, iregs, at, &data, regs); - - /* - * All but the last records are processed. - * The last one is left to be able to call the overflow handler. - */ - if (perf_event_overflow(event, &data, regs)) { - x86_pmu_stop(event, 0); - return; + if (iregs == &dummy_iregs) { + /* + * The PEBS records may be drained in the non-overflow context, + * e.g., large PEBS + context switch. Perf should treat the + * last record the same as other PEBS records, and doesn't + * invoke the generic overflow handler. + */ + perf_event_output(event, &data, regs); + } else { + /* + * All but the last records are processed. + * The last one is left to be able to call the overflow handler. + */ + if (perf_event_overflow(event, &data, regs)) + x86_pmu_stop(event, 0); } - } static void intel_pmu_drain_pebs_core(struct pt_regs *iregs) @@ -1905,7 +1913,7 @@ * that caused the PEBS record. It's called collision. * If collision happened, the record will be dropped. */ - if (p->status != (1ULL << bit)) { + if (pebs_status != (1ULL << bit)) { for_each_set_bit(i, (unsigned long *)&pebs_status, size) error[i]++; continue; @@ -1929,7 +1937,7 @@ if (error[bit]) { perf_log_lost_samples(event, error[bit]); - if (perf_event_account_interrupt(event)) + if (iregs && perf_event_account_interrupt(event)) x86_pmu_stop(event, 0); } --- linux-azure-5.8-5.8.0.orig/arch/x86/events/intel/uncore.c +++ linux-azure-5.8-5.8.0/arch/x86/events/intel/uncore.c @@ -92,8 +92,8 @@ return map; } -ssize_t uncore_event_show(struct kobject *kobj, - struct kobj_attribute *attr, char *buf) +ssize_t uncore_event_show(struct device *dev, + struct device_attribute *attr, char *buf) { struct uncore_event_desc *event = container_of(attr, struct uncore_event_desc, attr); --- linux-azure-5.8-5.8.0.orig/arch/x86/events/intel/uncore.h +++ linux-azure-5.8-5.8.0/arch/x86/events/intel/uncore.h @@ -144,7 +144,7 @@ #define UNCORE_BOX_FLAG_CFL8_CBOX_MSR_OFFS 2 struct uncore_event_desc { - struct kobj_attribute attr; + struct device_attribute attr; const char *config; }; @@ -166,8 +166,8 @@ struct pci2phy_map *__find_pci2phy_map(int segment); int uncore_pcibus_to_physid(struct pci_bus *bus); -ssize_t uncore_event_show(struct kobject *kobj, - struct kobj_attribute *attr, char *buf); +ssize_t uncore_event_show(struct device *dev, + struct device_attribute *attr, char *buf); #define INTEL_UNCORE_EVENT_DESC(_name, _config) \ { \ @@ -176,14 +176,14 @@ } #define DEFINE_UNCORE_FORMAT_ATTR(_var, _name, _format) \ -static ssize_t __uncore_##_var##_show(struct kobject *kobj, \ - struct kobj_attribute *attr, \ +static ssize_t __uncore_##_var##_show(struct device *dev, \ + struct device_attribute *attr, \ char *page) \ { \ BUILD_BUG_ON(sizeof(_format) >= PAGE_SIZE); \ return sprintf(page, _format "\n"); \ } \ -static struct kobj_attribute format_attr_##_var = \ +static struct device_attribute format_attr_##_var = \ __ATTR(_name, 0444, __uncore_##_var##_show, NULL) static inline bool uncore_pmc_fixed(int idx) --- linux-azure-5.8-5.8.0.orig/arch/x86/events/intel/uncore_snb.c +++ linux-azure-5.8-5.8.0/arch/x86/events/intel/uncore_snb.c @@ -115,6 +115,10 @@ #define ICL_UNC_CBO_0_PER_CTR0 0x702 #define ICL_UNC_CBO_MSR_OFFSET 0x8 +/* ICL ARB register */ +#define ICL_UNC_ARB_PER_CTR 0x3b1 +#define ICL_UNC_ARB_PERFEVTSEL 0x3b3 + DEFINE_UNCORE_FORMAT_ATTR(event, event, "config:0-7"); DEFINE_UNCORE_FORMAT_ATTR(umask, umask, "config:8-15"); DEFINE_UNCORE_FORMAT_ATTR(edge, edge, "config:18"); @@ -302,15 +306,21 @@ snb_uncore_arb.ops = &skl_uncore_msr_ops; } +static struct intel_uncore_ops icl_uncore_msr_ops = { + .disable_event = snb_uncore_msr_disable_event, + .enable_event = snb_uncore_msr_enable_event, + .read_counter = uncore_msr_read_counter, +}; + static struct intel_uncore_type icl_uncore_cbox = { .name = "cbox", - .num_counters = 4, + .num_counters = 2, .perf_ctr_bits = 44, .perf_ctr = ICL_UNC_CBO_0_PER_CTR0, .event_ctl = SNB_UNC_CBO_0_PERFEVTSEL0, .event_mask = SNB_UNC_RAW_EVENT_MASK, .msr_offset = ICL_UNC_CBO_MSR_OFFSET, - .ops = &skl_uncore_msr_ops, + .ops = &icl_uncore_msr_ops, .format_group = &snb_uncore_format_group, }; @@ -339,13 +349,25 @@ .single_fixed = 1, .event_mask = SNB_UNC_CTL_EV_SEL_MASK, .format_group = &icl_uncore_clock_format_group, - .ops = &skl_uncore_msr_ops, + .ops = &icl_uncore_msr_ops, .event_descs = icl_uncore_events, }; +static struct intel_uncore_type icl_uncore_arb = { + .name = "arb", + .num_counters = 1, + .num_boxes = 1, + .perf_ctr_bits = 44, + .perf_ctr = ICL_UNC_ARB_PER_CTR, + .event_ctl = ICL_UNC_ARB_PERFEVTSEL, + .event_mask = SNB_UNC_RAW_EVENT_MASK, + .ops = &icl_uncore_msr_ops, + .format_group = &snb_uncore_format_group, +}; + static struct intel_uncore_type *icl_msr_uncores[] = { &icl_uncore_cbox, - &snb_uncore_arb, + &icl_uncore_arb, &icl_uncore_clockbox, NULL, }; @@ -363,7 +385,6 @@ { uncore_msr_uncores = icl_msr_uncores; icl_uncore_cbox.num_boxes = icl_get_cbox_num(); - snb_uncore_arb.ops = &skl_uncore_msr_ops; } enum { @@ -1085,6 +1106,7 @@ } #define TGL_UNCORE_MMIO_IMC_MEM_OFFSET 0x10000 +#define TGL_UNCORE_PCI_IMC_MAP_SIZE 0xe000 static void tgl_uncore_imc_freerunning_init_box(struct intel_uncore_box *box) { @@ -1112,7 +1134,7 @@ addr |= ((resource_size_t)mch_bar << 32); #endif - box->io_addr = ioremap(addr, SNB_UNCORE_PCI_IMC_MAP_SIZE); + box->io_addr = ioremap(addr, TGL_UNCORE_PCI_IMC_MAP_SIZE); } static struct intel_uncore_ops tgl_uncore_imc_freerunning_ops = { --- linux-azure-5.8-5.8.0.orig/arch/x86/events/intel/uncore_snbep.c +++ linux-azure-5.8-5.8.0/arch/x86/events/intel/uncore_snbep.c @@ -4550,10 +4550,10 @@ INTEL_UNCORE_EVENT_DESC(dclk, "event=0xff,umask=0x10"), INTEL_UNCORE_EVENT_DESC(read, "event=0xff,umask=0x20"), - INTEL_UNCORE_EVENT_DESC(read.scale, "3.814697266e-6"), + INTEL_UNCORE_EVENT_DESC(read.scale, "6.103515625e-5"), INTEL_UNCORE_EVENT_DESC(read.unit, "MiB"), INTEL_UNCORE_EVENT_DESC(write, "event=0xff,umask=0x21"), - INTEL_UNCORE_EVENT_DESC(write.scale, "3.814697266e-6"), + INTEL_UNCORE_EVENT_DESC(write.scale, "6.103515625e-5"), INTEL_UNCORE_EVENT_DESC(write.unit, "MiB"), { /* end: all zeroes */ }, }; @@ -5009,17 +5009,17 @@ INTEL_UNCORE_EVENT_DESC(dclk, "event=0xff,umask=0x10"), INTEL_UNCORE_EVENT_DESC(read, "event=0xff,umask=0x20"), - INTEL_UNCORE_EVENT_DESC(read.scale, "3.814697266e-6"), + INTEL_UNCORE_EVENT_DESC(read.scale, "6.103515625e-5"), INTEL_UNCORE_EVENT_DESC(read.unit, "MiB"), INTEL_UNCORE_EVENT_DESC(write, "event=0xff,umask=0x21"), - INTEL_UNCORE_EVENT_DESC(write.scale, "3.814697266e-6"), + INTEL_UNCORE_EVENT_DESC(write.scale, "6.103515625e-5"), INTEL_UNCORE_EVENT_DESC(write.unit, "MiB"), INTEL_UNCORE_EVENT_DESC(ddrt_read, "event=0xff,umask=0x30"), - INTEL_UNCORE_EVENT_DESC(ddrt_read.scale, "3.814697266e-6"), + INTEL_UNCORE_EVENT_DESC(ddrt_read.scale, "6.103515625e-5"), INTEL_UNCORE_EVENT_DESC(ddrt_read.unit, "MiB"), INTEL_UNCORE_EVENT_DESC(ddrt_write, "event=0xff,umask=0x31"), - INTEL_UNCORE_EVENT_DESC(ddrt_write.scale, "3.814697266e-6"), + INTEL_UNCORE_EVENT_DESC(ddrt_write.scale, "6.103515625e-5"), INTEL_UNCORE_EVENT_DESC(ddrt_write.unit, "MiB"), { /* end: all zeroes */ }, }; --- linux-azure-5.8-5.8.0.orig/arch/x86/events/perf_event.h +++ linux-azure-5.8-5.8.0/arch/x86/events/perf_event.h @@ -198,6 +198,7 @@ they've never been enabled yet */ int n_txn; /* the # last events in the below arrays; added in the current transaction */ + int n_txn_pair; int assign[X86_PMC_IDX_MAX]; /* event to counter assignment */ u64 tags[X86_PMC_IDX_MAX]; --- linux-azure-5.8-5.8.0.orig/arch/x86/events/rapl.c +++ linux-azure-5.8-5.8.0/arch/x86/events/rapl.c @@ -93,18 +93,6 @@ * any other bit is reserved */ #define RAPL_EVENT_MASK 0xFFULL - -#define DEFINE_RAPL_FORMAT_ATTR(_var, _name, _format) \ -static ssize_t __rapl_##_var##_show(struct kobject *kobj, \ - struct kobj_attribute *attr, \ - char *page) \ -{ \ - BUILD_BUG_ON(sizeof(_format) >= PAGE_SIZE); \ - return sprintf(page, _format "\n"); \ -} \ -static struct kobj_attribute format_attr_##_var = \ - __ATTR(_name, 0444, __rapl_##_var##_show, NULL) - #define RAPL_CNTR_WIDTH 32 #define RAPL_EVENT_ATTR_STR(_name, v, str) \ @@ -435,7 +423,7 @@ .attrs = attrs_empty, }; -DEFINE_RAPL_FORMAT_ATTR(event, event, "config:0-7"); +PMU_FORMAT_ATTR(event, "config:0-7"); static struct attribute *rapl_formats_attr[] = { &format_attr_event.attr, NULL, @@ -665,7 +653,7 @@ &rapl_events_pkg_group, &rapl_events_ram_group, &rapl_events_gpu_group, - &rapl_events_gpu_group, + &rapl_events_psys_group, NULL, }; --- linux-azure-5.8-5.8.0.orig/arch/x86/hyperv/hv_init.c +++ linux-azure-5.8-5.8.0/arch/x86/hyperv/hv_init.c @@ -26,6 +26,14 @@ #include #include +#ifndef PKG_ABI +/* + * Preserve the ability to 'make deb-pkg' since PKG_ABI is provided + * by the Ubuntu build rules. + */ +#define PKG_ABI 0 +#endif + void *hv_hypercall_pg; EXPORT_SYMBOL_GPL(hv_hypercall_pg); @@ -312,6 +320,25 @@ .resume = hv_resume, }; +static void (* __initdata old_setup_percpu_clockev)(void); + +static void __init hv_stimer_setup_percpu_clockev(void) +{ + /* + * Ignore any errors in setting up stimer clockevents + * as we can run with the LAPIC timer as a fallback. + */ + (void)hv_stimer_alloc(); + + /* + * Still register the LAPIC timer, because the direct-mode STIMER is + * not supported by old versions of Hyper-V. This also allows users + * to switch to LAPIC timer via /sys, if they want to. + */ + if (old_setup_percpu_clockev) + old_setup_percpu_clockev(); +} + /* * This function is to be invoked early in the boot sequence after the * hypervisor has been detected. @@ -372,7 +399,7 @@ * 1. Register the guest ID * 2. Enable the hypercall and register the hypercall page */ - guest_id = generate_guest_id(0, LINUX_VERSION_CODE, 0); + guest_id = generate_guest_id(0x80 /*Canonical*/, LINUX_VERSION_CODE, PKG_ABI); wrmsrl(HV_X64_MSR_GUEST_OS_ID, guest_id); hv_hypercall_pg = __vmalloc_node_range(PAGE_SIZE, 1, VMALLOC_START, @@ -390,10 +417,14 @@ wrmsrl(HV_X64_MSR_HYPERCALL, hypercall_msr.as_uint64); /* - * Ignore any errors in setting up stimer clockevents - * as we can run with the LAPIC timer as a fallback. + * hyperv_init() is called before LAPIC is initialized: see + * apic_intr_mode_init() -> x86_platform.apic_post_init() and + * apic_bsp_setup() -> setup_local_APIC(). The direct-mode STIMER + * depends on LAPIC, so hv_stimer_alloc() should be called from + * x86_init.timers.setup_percpu_clockev. */ - (void)hv_stimer_alloc(); + old_setup_percpu_clockev = x86_init.timers.setup_percpu_clockev; + x86_init.timers.setup_percpu_clockev = hv_stimer_setup_percpu_clockev; hv_apic_init(); --- linux-azure-5.8-5.8.0.orig/arch/x86/hyperv/mmu.c +++ linux-azure-5.8-5.8.0/arch/x86/hyperv/mmu.c @@ -66,11 +66,17 @@ if (!hv_hypercall_pg) goto do_native; - if (cpumask_empty(cpus)) - return; - local_irq_save(flags); + /* + * Only check the mask _after_ interrupt has been disabled to avoid the + * mask changing under our feet. + */ + if (cpumask_empty(cpus)) { + local_irq_restore(flags); + return; + } + flush_pcpu = (struct hv_tlb_flush **) this_cpu_ptr(hyperv_pcpu_input_arg); --- linux-azure-5.8-5.8.0.orig/arch/x86/include/asm/apic.h +++ linux-azure-5.8-5.8.0/arch/x86/include/asm/apic.h @@ -197,16 +197,6 @@ #endif /* !CONFIG_X86_LOCAL_APIC */ #ifdef CONFIG_X86_X2APIC -/* - * Make previous memory operations globally visible before - * sending the IPI through x2apic wrmsr. We need a serializing instruction or - * mfence for this. - */ -static inline void x2apic_wrmsr_fence(void) -{ - asm volatile("mfence" : : : "memory"); -} - static inline void native_apic_msr_write(u32 reg, u32 v) { if (reg == APIC_DFR || reg == APIC_ID || reg == APIC_LDR || @@ -259,6 +249,7 @@ extern int x2apic_mode; extern int x2apic_phys; +extern void __init x2apic_set_max_apicid(u32 apicid); extern void __init check_x2apic(void); extern void x2apic_setup(void); static inline int x2apic_enabled(void) --- linux-azure-5.8-5.8.0.orig/arch/x86/include/asm/apm.h +++ linux-azure-5.8-5.8.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-azure-5.8-5.8.0.orig/arch/x86/include/asm/asm-prototypes.h +++ linux-azure-5.8-5.8.0/arch/x86/include/asm/asm-prototypes.h @@ -5,6 +5,7 @@ #include #include #include +#include #include --- linux-azure-5.8-5.8.0.orig/arch/x86/include/asm/barrier.h +++ linux-azure-5.8-5.8.0/arch/x86/include/asm/barrier.h @@ -84,4 +84,22 @@ #include +/* + * Make previous memory operations globally visible before + * a WRMSR. + * + * MFENCE makes writes visible, but only affects load/store + * instructions. WRMSR is unfortunately not a load/store + * instruction and is unaffected by MFENCE. The LFENCE ensures + * that the WRMSR is not reordered. + * + * Most WRMSRs are full serializing instructions themselves and + * do not require this barrier. This is only required for the + * IA32_TSC_DEADLINE and X2APIC MSRs. + */ +static inline void weak_wrmsr_fence(void) +{ + asm volatile("mfence; lfence" : : : "memory"); +} + #endif /* _ASM_X86_BARRIER_H */ --- linux-azure-5.8-5.8.0.orig/arch/x86/include/asm/cacheinfo.h +++ linux-azure-5.8-5.8.0/arch/x86/include/asm/cacheinfo.h @@ -2,7 +2,7 @@ #ifndef _ASM_X86_CACHEINFO_H #define _ASM_X86_CACHEINFO_H -void cacheinfo_amd_init_llc_id(struct cpuinfo_x86 *c, int cpu, u8 node_id); -void cacheinfo_hygon_init_llc_id(struct cpuinfo_x86 *c, int cpu, u8 node_id); +void cacheinfo_amd_init_llc_id(struct cpuinfo_x86 *c, int cpu); +void cacheinfo_hygon_init_llc_id(struct cpuinfo_x86 *c, int cpu); #endif /* _ASM_X86_CACHEINFO_H */ --- linux-azure-5.8-5.8.0.orig/arch/x86/include/asm/copy_mc_test.h +++ linux-azure-5.8-5.8.0/arch/x86/include/asm/copy_mc_test.h @@ -0,0 +1,75 @@ +/* SPDX-License-Identifier: GPL-2.0 */ +#ifndef _COPY_MC_TEST_H_ +#define _COPY_MC_TEST_H_ + +#ifndef __ASSEMBLY__ +#ifdef CONFIG_COPY_MC_TEST +extern unsigned long copy_mc_test_src; +extern unsigned long copy_mc_test_dst; + +static inline void copy_mc_inject_src(void *addr) +{ + if (addr) + copy_mc_test_src = (unsigned long) addr; + else + copy_mc_test_src = ~0UL; +} + +static inline void copy_mc_inject_dst(void *addr) +{ + if (addr) + copy_mc_test_dst = (unsigned long) addr; + else + copy_mc_test_dst = ~0UL; +} +#else /* CONFIG_COPY_MC_TEST */ +static inline void copy_mc_inject_src(void *addr) +{ +} + +static inline void copy_mc_inject_dst(void *addr) +{ +} +#endif /* CONFIG_COPY_MC_TEST */ + +#else /* __ASSEMBLY__ */ +#include + +#ifdef CONFIG_COPY_MC_TEST +.macro COPY_MC_TEST_CTL + .pushsection .data + .align 8 + .globl copy_mc_test_src + copy_mc_test_src: + .quad 0 + EXPORT_SYMBOL_GPL(copy_mc_test_src) + .globl copy_mc_test_dst + copy_mc_test_dst: + .quad 0 + EXPORT_SYMBOL_GPL(copy_mc_test_dst) + .popsection +.endm + +.macro COPY_MC_TEST_SRC reg count target + leaq \count(\reg), %r9 + cmp copy_mc_test_src, %r9 + ja \target +.endm + +.macro COPY_MC_TEST_DST reg count target + leaq \count(\reg), %r9 + cmp copy_mc_test_dst, %r9 + ja \target +.endm +#else +.macro COPY_MC_TEST_CTL +.endm + +.macro COPY_MC_TEST_SRC reg count target +.endm + +.macro COPY_MC_TEST_DST reg count target +.endm +#endif /* CONFIG_COPY_MC_TEST */ +#endif /* __ASSEMBLY__ */ +#endif /* _COPY_MC_TEST_H_ */ --- linux-azure-5.8-5.8.0.orig/arch/x86/include/asm/fpu/api.h +++ linux-azure-5.8-5.8.0/arch/x86/include/asm/fpu/api.h @@ -16,14 +16,25 @@ * Use kernel_fpu_begin/end() if you intend to use FPU in kernel context. It * disables preemption so be careful if you intend to use it for long periods * of time. - * If you intend to use the FPU in softirq you need to check first with + * If you intend to use the FPU in irq/softirq you need to check first with * irq_fpu_usable() if it is possible. */ -extern void kernel_fpu_begin(void); + +/* Kernel FPU states to initialize in kernel_fpu_begin_mask() */ +#define KFPU_387 _BITUL(0) /* 387 state will be initialized */ +#define KFPU_MXCSR _BITUL(1) /* MXCSR will be initialized */ + +extern void kernel_fpu_begin_mask(unsigned int kfpu_mask); extern void kernel_fpu_end(void); extern bool irq_fpu_usable(void); extern void fpregs_mark_activate(void); +/* Code that is unaware of kernel_fpu_begin_mask() can use this */ +static inline void kernel_fpu_begin(void) +{ + kernel_fpu_begin_mask(KFPU_387 | KFPU_MXCSR); +} + /* * Use fpregs_lock() while editing CPU's FPU registers or fpu->state. * A context switch will (and softirq might) save CPU's FPU registers to --- linux-azure-5.8-5.8.0.orig/arch/x86/include/asm/frame.h +++ linux-azure-5.8-5.8.0/arch/x86/include/asm/frame.h @@ -60,12 +60,26 @@ #define FRAME_END "pop %" _ASM_BP "\n" #ifdef CONFIG_X86_64 + #define ENCODE_FRAME_POINTER \ "lea 1(%rsp), %rbp\n\t" + +static inline unsigned long encode_frame_pointer(struct pt_regs *regs) +{ + return (unsigned long)regs + 1; +} + #else /* !CONFIG_X86_64 */ + #define ENCODE_FRAME_POINTER \ "movl %esp, %ebp\n\t" \ "andl $0x7fffffff, %ebp\n\t" + +static inline unsigned long encode_frame_pointer(struct pt_regs *regs) +{ + return (unsigned long)regs & 0x7fffffff; +} + #endif /* CONFIG_X86_64 */ #endif /* __ASSEMBLY__ */ @@ -83,6 +97,11 @@ #define ENCODE_FRAME_POINTER +static inline unsigned long encode_frame_pointer(struct pt_regs *regs) +{ + return 0; +} + #endif #define FRAME_BEGIN --- linux-azure-5.8-5.8.0.orig/arch/x86/include/asm/fsgsbase.h +++ linux-azure-5.8-5.8.0/arch/x86/include/asm/fsgsbase.h @@ -19,36 +19,65 @@ extern void x86_fsbase_write_task(struct task_struct *task, unsigned long fsbase); extern void x86_gsbase_write_task(struct task_struct *task, unsigned long gsbase); -/* Helper functions for reading/writing FS/GS base */ +/* Must be protected by X86_FEATURE_FSGSBASE check. */ -static inline unsigned long x86_fsbase_read_cpu(void) +static __always_inline unsigned long rdfsbase(void) { unsigned long fsbase; - rdmsrl(MSR_FS_BASE, fsbase); + asm volatile("rdfsbase %0" : "=r" (fsbase) :: "memory"); return fsbase; } -static inline unsigned long x86_gsbase_read_cpu_inactive(void) +static __always_inline unsigned long rdgsbase(void) { unsigned long gsbase; - rdmsrl(MSR_KERNEL_GS_BASE, gsbase); + asm volatile("rdgsbase %0" : "=r" (gsbase) :: "memory"); return gsbase; } -static inline void x86_fsbase_write_cpu(unsigned long fsbase) +static __always_inline void wrfsbase(unsigned long fsbase) { - wrmsrl(MSR_FS_BASE, fsbase); + asm volatile("wrfsbase %0" :: "r" (fsbase) : "memory"); } -static inline void x86_gsbase_write_cpu_inactive(unsigned long gsbase) +static __always_inline void wrgsbase(unsigned long gsbase) { - wrmsrl(MSR_KERNEL_GS_BASE, gsbase); + asm volatile("wrgsbase %0" :: "r" (gsbase) : "memory"); } +#include + +/* Helper functions for reading/writing FS/GS base */ + +static inline unsigned long x86_fsbase_read_cpu(void) +{ + unsigned long fsbase; + + if (static_cpu_has(X86_FEATURE_FSGSBASE)) + fsbase = rdfsbase(); + else + rdmsrl(MSR_FS_BASE, fsbase); + + return fsbase; +} + +static inline void x86_fsbase_write_cpu(unsigned long fsbase) +{ + if (static_cpu_has(X86_FEATURE_FSGSBASE)) + wrfsbase(fsbase); + else + wrmsrl(MSR_FS_BASE, fsbase); +} + +extern unsigned long x86_gsbase_read_cpu_inactive(void); +extern void x86_gsbase_write_cpu_inactive(unsigned long gsbase); +extern unsigned long x86_fsgsbase_read_task(struct task_struct *task, + unsigned short selector); + #endif /* CONFIG_X86_64 */ #endif /* __ASSEMBLY__ */ --- linux-azure-5.8-5.8.0.orig/arch/x86/include/asm/idtentry.h +++ linux-azure-5.8-5.8.0/arch/x86/include/asm/idtentry.h @@ -246,7 +246,7 @@ instrumentation_begin(); \ irq_enter_rcu(); \ kvm_set_cpu_l1tf_flush_l1d(); \ - run_on_irqstack_cond(__##func, regs, regs); \ + run_sysvec_on_irqstack_cond(__##func, regs); \ irq_exit_rcu(); \ instrumentation_end(); \ idtentry_exit_cond_rcu(regs, rcu_exit); \ --- linux-azure-5.8-5.8.0.orig/arch/x86/include/asm/insn.h +++ linux-azure-5.8-5.8.0/arch/x86/include/asm/insn.h @@ -201,6 +201,21 @@ return insn_offset_displacement(insn) + insn->displacement.nbytes; } +/** + * for_each_insn_prefix() -- Iterate prefixes in the instruction + * @insn: Pointer to struct insn. + * @idx: Index storage. + * @prefix: Prefix byte. + * + * Iterate prefix bytes of given @insn. Each prefix byte is stored in @prefix + * and the index is stored in @idx (note that this @idx is just for a cursor, + * do not change it.) + * Since prefixes.nbytes can be bigger than 4 if some prefixes + * are repeated, it cannot be used for looping over the prefixes. + */ +#define for_each_insn_prefix(insn, idx, prefix) \ + for (idx = 0; idx < ARRAY_SIZE(insn->prefixes.bytes) && (prefix = insn->prefixes.bytes[idx]) != 0; idx++) + #define POP_SS_OPCODE 0x1f #define MOV_SREG_OPCODE 0x8e --- linux-azure-5.8-5.8.0.orig/arch/x86/include/asm/inst.h +++ linux-azure-5.8-5.8.0/arch/x86/include/asm/inst.h @@ -306,6 +306,21 @@ .endif MODRM 0xc0 movq_r64_xmm_opd1 movq_r64_xmm_opd2 .endm + +.macro RDPID opd + REG_TYPE rdpid_opd_type \opd + .if rdpid_opd_type == REG_TYPE_R64 + R64_NUM rdpid_opd \opd + .else + R32_NUM rdpid_opd \opd + .endif + .byte 0xf3 + .if rdpid_opd > 7 + PFX_REX rdpid_opd 0 + .endif + .byte 0x0f, 0xc7 + MODRM 0xc0 rdpid_opd 0x7 +.endm #endif #endif --- linux-azure-5.8-5.8.0.orig/arch/x86/include/asm/intel-family.h +++ linux-azure-5.8-5.8.0/arch/x86/include/asm/intel-family.h @@ -89,8 +89,16 @@ #define INTEL_FAM6_COMETLAKE 0xA5 #define INTEL_FAM6_COMETLAKE_L 0xA6 +#define INTEL_FAM6_ROCKETLAKE 0xA7 + #define INTEL_FAM6_SAPPHIRERAPIDS_X 0x8F +/* Hybrid Core/Atom Processors */ + +#define INTEL_FAM6_LAKEFIELD 0x8A +#define INTEL_FAM6_ALDERLAKE 0x97 +#define INTEL_FAM6_ALDERLAKE_L 0x9A + /* "Small Core" Processors (Atom) */ #define INTEL_FAM6_ATOM_BONNELL 0x1C /* Diamondville, Pineview */ --- linux-azure-5.8-5.8.0.orig/arch/x86/include/asm/irq_stack.h +++ linux-azure-5.8-5.8.0/arch/x86/include/asm/irq_stack.h @@ -3,6 +3,7 @@ #define _ASM_X86_IRQ_STACK_H #include +#include #include @@ -12,20 +13,50 @@ return __this_cpu_read(irq_count) != -1; } -void asm_call_on_stack(void *sp, void *func, void *arg); +void asm_call_on_stack(void *sp, void (*func)(void), void *arg); +void asm_call_sysvec_on_stack(void *sp, void (*func)(struct pt_regs *regs), + struct pt_regs *regs); +void asm_call_irq_on_stack(void *sp, void (*func)(struct irq_desc *desc), + struct irq_desc *desc); -static __always_inline void __run_on_irqstack(void *func, void *arg) +static __always_inline void __run_on_irqstack(void (*func)(void)) { void *tos = __this_cpu_read(hardirq_stack_ptr); __this_cpu_add(irq_count, 1); - asm_call_on_stack(tos - 8, func, arg); + asm_call_on_stack(tos - 8, func, NULL); + __this_cpu_sub(irq_count, 1); +} + +static __always_inline void +__run_sysvec_on_irqstack(void (*func)(struct pt_regs *regs), + struct pt_regs *regs) +{ + void *tos = __this_cpu_read(hardirq_stack_ptr); + + __this_cpu_add(irq_count, 1); + asm_call_sysvec_on_stack(tos - 8, func, regs); + __this_cpu_sub(irq_count, 1); +} + +static __always_inline void +__run_irq_on_irqstack(void (*func)(struct irq_desc *desc), + struct irq_desc *desc) +{ + void *tos = __this_cpu_read(hardirq_stack_ptr); + + __this_cpu_add(irq_count, 1); + asm_call_irq_on_stack(tos - 8, func, desc); __this_cpu_sub(irq_count, 1); } #else /* CONFIG_X86_64 */ static inline bool irqstack_active(void) { return false; } -static inline void __run_on_irqstack(void *func, void *arg) { } +static inline void __run_on_irqstack(void (*func)(void)) { } +static inline void __run_sysvec_on_irqstack(void (*func)(struct pt_regs *regs), + struct pt_regs *regs) { } +static inline void __run_irq_on_irqstack(void (*func)(struct irq_desc *desc), + struct irq_desc *desc) { } #endif /* !CONFIG_X86_64 */ static __always_inline bool irq_needs_irq_stack(struct pt_regs *regs) @@ -37,17 +68,40 @@ return !user_mode(regs) && !irqstack_active(); } -static __always_inline void run_on_irqstack_cond(void *func, void *arg, + +static __always_inline void run_on_irqstack_cond(void (*func)(void), struct pt_regs *regs) { - void (*__func)(void *arg) = func; + lockdep_assert_irqs_disabled(); + + if (irq_needs_irq_stack(regs)) + __run_on_irqstack(func); + else + func(); +} + +static __always_inline void +run_sysvec_on_irqstack_cond(void (*func)(struct pt_regs *regs), + struct pt_regs *regs) +{ + lockdep_assert_irqs_disabled(); + if (irq_needs_irq_stack(regs)) + __run_sysvec_on_irqstack(func, regs); + else + func(regs); +} + +static __always_inline void +run_irq_on_irqstack_cond(void (*func)(struct irq_desc *desc), struct irq_desc *desc, + struct pt_regs *regs) +{ lockdep_assert_irqs_disabled(); if (irq_needs_irq_stack(regs)) - __run_on_irqstack(__func, arg); + __run_irq_on_irqstack(func, desc); else - __func(arg); + func(desc); } #endif --- linux-azure-5.8-5.8.0.orig/arch/x86/include/asm/kvm_host.h +++ linux-azure-5.8-5.8.0/arch/x86/include/asm/kvm_host.h @@ -1641,12 +1641,14 @@ _ASM_EXTABLE(666b, 667b) #define KVM_ARCH_WANT_MMU_NOTIFIER -int kvm_unmap_hva_range(struct kvm *kvm, unsigned long start, unsigned long end); +int kvm_unmap_hva_range(struct kvm *kvm, unsigned long start, unsigned long end, + unsigned flags); int kvm_age_hva(struct kvm *kvm, unsigned long start, unsigned long end); int kvm_test_age_hva(struct kvm *kvm, unsigned long hva); int kvm_set_spte_hva(struct kvm *kvm, unsigned long hva, pte_t pte); 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); int kvm_arch_interrupt_allowed(struct kvm_vcpu *vcpu); int kvm_cpu_get_interrupt(struct kvm_vcpu *v); void kvm_vcpu_reset(struct kvm_vcpu *vcpu, bool init_event); --- linux-azure-5.8-5.8.0.orig/arch/x86/include/asm/mce.h +++ linux-azure-5.8-5.8.0/arch/x86/include/asm/mce.h @@ -162,7 +162,8 @@ MCE_PRIO_EXTLOG, MCE_PRIO_UC, MCE_PRIO_EARLY, - MCE_PRIO_CEC + MCE_PRIO_CEC, + MCE_PRIO_HIGHEST = MCE_PRIO_CEC }; struct notifier_block; @@ -174,6 +175,15 @@ extern int mce_p5_enabled; +#ifdef CONFIG_ARCH_HAS_COPY_MC +extern void enable_copy_mc_fragile(void); +unsigned long __must_check copy_mc_fragile(void *dst, const void *src, unsigned cnt); +#else +static inline void enable_copy_mc_fragile(void) +{ +} +#endif + #ifdef CONFIG_X86_MCE int mcheck_init(void); void mcheck_cpu_init(struct cpuinfo_x86 *c); --- linux-azure-5.8-5.8.0.orig/arch/x86/include/asm/msr-index.h +++ linux-azure-5.8-5.8.0/arch/x86/include/asm/msr-index.h @@ -446,6 +446,7 @@ #define MSR_AMD64_IBSOP_REG_MASK ((1UL<thread */ -void save_fsgs_for_kvm(void); -#endif +void current_save_fsgs(void); #else /* X86_64 */ #ifdef CONFIG_STACKPROTECTOR /* @@ -575,7 +573,7 @@ this_cpu_write(cpu_tss_rw.x86_tss.sp0, sp0); } -static inline void native_swapgs(void) +static __always_inline void native_swapgs(void) { #ifdef CONFIG_X86_64 asm volatile("swapgs" ::: "memory"); --- linux-azure-5.8-5.8.0.orig/arch/x86/include/asm/ptrace.h +++ linux-azure-5.8-5.8.0/arch/x86/include/asm/ptrace.h @@ -322,8 +322,8 @@ static const unsigned int argument_offs[] = { #ifdef __i386__ offsetof(struct pt_regs, ax), - offsetof(struct pt_regs, cx), offsetof(struct pt_regs, dx), + offsetof(struct pt_regs, cx), #define NR_REG_ARGUMENTS 3 #else offsetof(struct pt_regs, di), --- linux-azure-5.8-5.8.0.orig/arch/x86/include/asm/special_insns.h +++ linux-azure-5.8-5.8.0/arch/x86/include/asm/special_insns.h @@ -11,45 +11,47 @@ #include /* - * Volatile isn't enough to prevent the compiler from reordering the - * read/write functions for the control registers and messing everything up. - * A memory clobber would solve the problem, but would prevent reordering of - * all loads stores around it, which can hurt performance. Solution is to - * use a variable and mimic reads and writes to it to enforce serialization + * The compiler should not reorder volatile asm statements with respect to each + * other: they should execute in program order. However GCC 4.9.x and 5.x have + * a bug (which was fixed in 8.1, 7.3 and 6.5) where they might reorder + * volatile asm. The write functions are not affected since they have memory + * clobbers preventing reordering. To prevent reads from being reordered with + * respect to writes, use a dummy memory operand. */ -extern unsigned long __force_order; + +#define __FORCE_ORDER "m"(*(unsigned int *)0x1000UL) void native_write_cr0(unsigned long val); static inline unsigned long native_read_cr0(void) { unsigned long val; - asm volatile("mov %%cr0,%0\n\t" : "=r" (val), "=m" (__force_order)); + asm volatile("mov %%cr0,%0\n\t" : "=r" (val) : __FORCE_ORDER); return val; } static __always_inline unsigned long native_read_cr2(void) { unsigned long val; - asm volatile("mov %%cr2,%0\n\t" : "=r" (val), "=m" (__force_order)); + asm volatile("mov %%cr2,%0\n\t" : "=r" (val) : __FORCE_ORDER); return val; } static __always_inline void native_write_cr2(unsigned long val) { - asm volatile("mov %0,%%cr2": : "r" (val), "m" (__force_order)); + asm volatile("mov %0,%%cr2": : "r" (val) : "memory"); } static inline unsigned long __native_read_cr3(void) { unsigned long val; - asm volatile("mov %%cr3,%0\n\t" : "=r" (val), "=m" (__force_order)); + asm volatile("mov %%cr3,%0\n\t" : "=r" (val) : __FORCE_ORDER); return val; } static inline void native_write_cr3(unsigned long val) { - asm volatile("mov %0,%%cr3": : "r" (val), "m" (__force_order)); + asm volatile("mov %0,%%cr3": : "r" (val) : "memory"); } static inline unsigned long native_read_cr4(void) @@ -64,10 +66,10 @@ asm volatile("1: mov %%cr4, %0\n" "2:\n" _ASM_EXTABLE(1b, 2b) - : "=r" (val), "=m" (__force_order) : "0" (0)); + : "=r" (val) : "0" (0), __FORCE_ORDER); #else /* CR4 always exists on x86_64. */ - asm volatile("mov %%cr4,%0\n\t" : "=r" (val), "=m" (__force_order)); + asm volatile("mov %%cr4,%0\n\t" : "=r" (val) : __FORCE_ORDER); #endif return val; } --- linux-azure-5.8-5.8.0.orig/arch/x86/include/asm/string_64.h +++ linux-azure-5.8-5.8.0/arch/x86/include/asm/string_64.h @@ -82,38 +82,6 @@ #endif -#define __HAVE_ARCH_MEMCPY_MCSAFE 1 -__must_check unsigned long __memcpy_mcsafe(void *dst, const void *src, - size_t cnt); -DECLARE_STATIC_KEY_FALSE(mcsafe_key); - -/** - * memcpy_mcsafe - copy memory with indication if a machine check happened - * - * @dst: destination address - * @src: source address - * @cnt: number of bytes to copy - * - * Low level memory copy function that catches machine checks - * We only call into the "safe" function on systems that can - * actually do machine check recovery. Everyone else can just - * use memcpy(). - * - * Return 0 for success, or number of bytes not copied if there was an - * exception. - */ -static __always_inline __must_check unsigned long -memcpy_mcsafe(void *dst, const void *src, size_t cnt) -{ -#ifdef CONFIG_X86_MCE - if (static_branch_unlikely(&mcsafe_key)) - return __memcpy_mcsafe(dst, src, cnt); - else -#endif - memcpy(dst, src, cnt); - return 0; -} - #ifdef CONFIG_ARCH_HAS_UACCESS_FLUSHCACHE #define __HAVE_ARCH_MEMCPY_FLUSHCACHE 1 void __memcpy_flushcache(void *dst, const void *src, size_t cnt); --- linux-azure-5.8-5.8.0.orig/arch/x86/include/asm/switch_to.h +++ linux-azure-5.8-5.8.0/arch/x86/include/asm/switch_to.h @@ -12,6 +12,27 @@ __visible struct task_struct *__switch_to(struct task_struct *prev, struct task_struct *next); +/* This runs runs on the previous thread's stack. */ +static inline void prepare_switch_to(struct task_struct *next) +{ +#ifdef CONFIG_VMAP_STACK + /* + * If we switch to a stack that has a top-level paging entry + * that is not present in the current mm, the resulting #PF will + * will be promoted to a double-fault and we'll panic. Probe + * the new stack now so that vmalloc_fault can fix up the page + * tables if needed. This can only happen if we use a stack + * in vmap space. + * + * We assume that the stack is aligned so that it never spans + * more than one top-level paging entry. + * + * To minimize cache pollution, just follow the stack pointer. + */ + READ_ONCE(*(unsigned char *)next->thread.sp); +#endif +} + asmlinkage void ret_from_fork(void); /* @@ -46,6 +67,8 @@ #define switch_to(prev, next, last) \ do { \ + prepare_switch_to(next); \ + \ ((last) = __switch_to_asm((prev), (next))); \ } while (0) --- linux-azure-5.8-5.8.0.orig/arch/x86/include/asm/sync_core.h +++ linux-azure-5.8-5.8.0/arch/x86/include/asm/sync_core.h @@ -16,12 +16,13 @@ /* With PTI, we unconditionally serialize before running user code. */ if (static_cpu_has(X86_FEATURE_PTI)) return; + /* - * Return from interrupt and NMI is done through iret, which is core - * serializing. + * Even if we're in an interrupt, we might reschedule before returning, + * in which case we could switch to a different thread in the same mm + * and return using SYSRET or SYSEXIT. Instead of trying to keep + * track of our need to sync the core, just sync right away. */ - if (in_irq() || in_nmi()) - return; sync_core(); } --- linux-azure-5.8-5.8.0.orig/arch/x86/include/asm/topology.h +++ linux-azure-5.8-5.8.0/arch/x86/include/asm/topology.h @@ -110,6 +110,8 @@ #define topology_die_id(cpu) (cpu_data(cpu).cpu_die_id) #define topology_core_id(cpu) (cpu_data(cpu).cpu_core_id) +extern unsigned int __max_die_per_package; + #ifdef CONFIG_SMP #define topology_die_cpumask(cpu) (per_cpu(cpu_die_map, cpu)) #define topology_core_cpumask(cpu) (per_cpu(cpu_core_map, cpu)) @@ -118,8 +120,6 @@ extern unsigned int __max_logical_packages; #define topology_max_packages() (__max_logical_packages) -extern unsigned int __max_die_per_package; - static inline int topology_max_die_per_package(void) { return __max_die_per_package; @@ -193,7 +193,7 @@ } #endif /* CONFIG_SCHED_MC_PRIO */ -#ifdef CONFIG_SMP +#if defined(CONFIG_SMP) && defined(CONFIG_X86_64) #include DECLARE_STATIC_KEY_FALSE(arch_scale_freq_key); --- linux-azure-5.8-5.8.0.orig/arch/x86/include/asm/uaccess.h +++ linux-azure-5.8-5.8.0/arch/x86/include/asm/uaccess.h @@ -314,11 +314,14 @@ #define __get_user_size(x, ptr, size, retval) \ do { \ + unsigned char x_u8__; \ + \ retval = 0; \ __chk_user_ptr(ptr); \ switch (size) { \ case 1: \ - __get_user_asm(x, ptr, retval, "b", "=q"); \ + __get_user_asm(x_u8__, ptr, retval, "b", "=q"); \ + (x) = x_u8__; \ break; \ case 2: \ __get_user_asm(x, ptr, retval, "w", "=r"); \ @@ -452,6 +455,15 @@ unsigned long __must_check clear_user(void __user *mem, unsigned long len); unsigned long __must_check __clear_user(void __user *mem, unsigned long len); +#ifdef CONFIG_ARCH_HAS_COPY_MC +unsigned long __must_check +copy_mc_to_kernel(void *to, const void *from, unsigned len); +#define copy_mc_to_kernel copy_mc_to_kernel + +unsigned long __must_check +copy_mc_to_user(void *to, const void *from, unsigned len); +#endif + /* * movsl can be slow when source and dest are not both 8-byte aligned */ --- linux-azure-5.8-5.8.0.orig/arch/x86/include/asm/uaccess_64.h +++ linux-azure-5.8-5.8.0/arch/x86/include/asm/uaccess_64.h @@ -47,22 +47,6 @@ } static __always_inline __must_check unsigned long -copy_to_user_mcsafe(void *to, const void *from, unsigned len) -{ - unsigned long ret; - - __uaccess_begin(); - /* - * Note, __memcpy_mcsafe() is explicitly used since it can - * handle exceptions / faults. memcpy_mcsafe() may fall back to - * memcpy() which lacks this handling. - */ - ret = __memcpy_mcsafe(to, from, len); - __uaccess_end(); - return ret; -} - -static __always_inline __must_check unsigned long raw_copy_from_user(void *dst, const void __user *src, unsigned long size) { return copy_user_generic(dst, (__force void *)src, size); @@ -102,8 +86,4 @@ kasan_check_write(dst, size); return __copy_user_flushcache(dst, src, size); } - -unsigned long -mcsafe_handle_tail(char *to, char *from, unsigned len); - #endif /* _ASM_X86_UACCESS_64_H */ --- linux-azure-5.8-5.8.0.orig/arch/x86/include/asm/virtext.h +++ linux-azure-5.8-5.8.0/arch/x86/include/asm/virtext.h @@ -30,15 +30,22 @@ } -/** Disable VMX on the current CPU +/** + * cpu_vmxoff() - Disable VMX on the current CPU * - * vmxoff causes a undefined-opcode exception if vmxon was not run - * on the CPU previously. Only call this function if you know VMX - * is enabled. + * Disable VMX and clear CR4.VMXE (even if VMXOFF faults) + * + * Note, VMXOFF causes a #UD if the CPU is !post-VMXON, but it's impossible to + * atomically track post-VMXON state, e.g. this may be called in NMI context. + * Eat all faults as all other faults on VMXOFF faults are mode related, i.e. + * faults are guaranteed to be due to the !post-VMXON check unless the CPU is + * magically in RM, VM86, compat mode, or at CPL>0. */ static inline void cpu_vmxoff(void) { - asm volatile ("vmxoff"); + asm_volatile_goto("1: vmxoff\n\t" + _ASM_EXTABLE(1b, %l[fault]) :::: fault); +fault: cr4_clear_bits(X86_CR4_VMXE); } --- linux-azure-5.8-5.8.0.orig/arch/x86/include/dcap.h +++ linux-azure-5.8-5.8.0/arch/x86/include/dcap.h @@ -0,0 +1,39 @@ +// SPDX-License-Identifier: (GPL-2.0 OR BSD-3-Clause) +// Copyright(c) 2016-17 Intel Corporation. + +#ifndef __DCAP_H__ +#define __DCAP_H__ + +#ifndef X86_FEATURE_SGX + #define X86_FEATURE_SGX (9 * 32 + 2) +#endif + +#ifndef X86_FEATURE_SGX1 + #define X86_FEATURE_SGX1 ( 8*32+ 0) /* SGX1 leaf functions */ +#endif + +#ifndef X86_FEATURE_SGX2 + #define X86_FEATURE_SGX2 ( 8*32+ 1) /* SGX2 leaf functions */ +#endif + +#ifndef X86_FEATURE_SGX_LC + #define X86_FEATURE_SGX_LC (16*32+30) /* supports SGX launch configuration */ +#endif + +#ifndef FEAT_CTL_SGX_ENABLED + #define FEAT_CTL_SGX_ENABLED (1<<18) +#endif + +#ifndef FEAT_CTL_SGX_LC_ENABLED + #define FEAT_CTL_SGX_LC_ENABLED (1<<17) +#endif + +#ifndef MSR_IA32_SGXLEPUBKEYHASH0 + #define MSR_IA32_SGXLEPUBKEYHASH0 0x0000008C + #define MSR_IA32_SGXLEPUBKEYHASH1 0x0000008D + #define MSR_IA32_SGXLEPUBKEYHASH2 0x0000008E + #define MSR_IA32_SGXLEPUBKEYHASH3 0x0000008F +#endif + + +#endif --- linux-azure-5.8-5.8.0.orig/arch/x86/include/uapi/asm/hwcap2.h +++ linux-azure-5.8-5.8.0/arch/x86/include/uapi/asm/hwcap2.h @@ -5,4 +5,7 @@ /* MONITOR/MWAIT enabled in Ring 3 */ #define HWCAP2_RING3MWAIT (1 << 0) +/* Kernel allows FSGSBASE instructions available in Ring 3 */ +#define HWCAP2_FSGSBASE BIT(1) + #endif --- linux-azure-5.8-5.8.0.orig/arch/x86/include/uapi/asm/sgx_oot.h +++ linux-azure-5.8-5.8.0/arch/x86/include/uapi/asm/sgx_oot.h @@ -0,0 +1,114 @@ +/* SPDX-License-Identifier: (GPL-2.0 OR BSD-3-Clause) WITH Linux-syscall-note */ +/* + * Copyright(c) 2016-19 Intel Corporation. + */ +#ifndef _UAPI_ASM_X86_SGX_H +#define _UAPI_ASM_X86_SGX_H + +#include +#include + +/** + * enum sgx_epage_flags - page control flags + * %SGX_PAGE_MEASURE: Measure the page contents with a sequence of + * ENCLS[EEXTEND] operations. + */ +enum sgx_page_flags { + SGX_PAGE_MEASURE = 0x01, +}; + +#define SGX_MAGIC 0xA4 + +#define SGX_IOC_ENCLAVE_CREATE \ + _IOW(SGX_MAGIC, 0x00, struct sgx_enclave_create) +#define SGX_IOC_ENCLAVE_ADD_PAGES \ + _IOWR(SGX_MAGIC, 0x01, struct sgx_enclave_add_pages) +#define SGX_IOC_ENCLAVE_INIT \ + _IOW(SGX_MAGIC, 0x02, struct sgx_enclave_init) +#define SGX_IOC_ENCLAVE_SET_ATTRIBUTE \ + _IOW(SGX_MAGIC, 0x03, struct sgx_enclave_set_attribute) + +/** + * struct sgx_enclave_create - parameter structure for the + * %SGX_IOC_ENCLAVE_CREATE ioctl + * @src: address for the SECS page data + */ +struct sgx_enclave_create { + __u64 src; +}; + +/** + * struct sgx_enclave_add_pages - parameter structure for the + * %SGX_IOC_ENCLAVE_ADD_PAGE ioctl + * @src: start address for the page data + * @offset: starting page offset + * @length: length of the data (multiple of the page size) + * @secinfo: address for the SECINFO data + * @flags: page control flags + * @count: number of bytes added (multiple of the page size) + */ +struct sgx_enclave_add_pages { + __u64 src; + __u64 offset; + __u64 length; + __u64 secinfo; + __u64 flags; + __u64 count; +}; + +/** + * struct sgx_enclave_init - parameter structure for the + * %SGX_IOC_ENCLAVE_INIT ioctl + * @sigstruct: address for the SIGSTRUCT data + */ +struct sgx_enclave_init { + __u64 sigstruct; +}; + +/** + * struct sgx_enclave_set_attribute - parameter structure for the + * %SGX_IOC_ENCLAVE_SET_ATTRIBUTE ioctl + * @attribute_fd: file handle of the attribute file in the securityfs + */ +struct sgx_enclave_set_attribute { + __u64 attribute_fd; +}; + +/** + * struct sgx_enclave_exception - structure to report exceptions encountered in + * __vdso_sgx_enter_enclave() + * + * @leaf: ENCLU leaf from \%eax at time of exception + * @trapnr: exception trap number, a.k.a. fault vector + * @error_code: exception error code + * @address: exception address, e.g. CR2 on a #PF + * @reserved: reserved for future use + */ +struct sgx_enclave_exception { + __u32 leaf; + __u16 trapnr; + __u16 error_code; + __u64 address; + __u64 reserved[2]; +}; + +/** + * typedef sgx_enclave_exit_handler_t - Exit handler function accepted by + * __vdso_sgx_enter_enclave() + * + * @rdi: RDI at the time of enclave exit + * @rsi: RSI at the time of enclave exit + * @rdx: RDX at the time of enclave exit + * @ursp: RSP at the time of enclave exit (untrusted stack) + * @r8: R8 at the time of enclave exit + * @r9: R9 at the time of enclave exit + * @tcs: Thread Control Structure used to enter enclave + * @ret: 0 on success (EEXIT), -EFAULT on an exception + * @e: Pointer to struct sgx_enclave_exception (as provided by caller) + */ +typedef int (*sgx_enclave_exit_handler_t)(long rdi, long rsi, long rdx, + long ursp, long r8, long r9, + void *tcs, int ret, + struct sgx_enclave_exception *e); + +#endif /* _UAPI_ASM_X86_SGX_H */ --- linux-azure-5.8-5.8.0.orig/arch/x86/kernel/acpi/wakeup_32.S +++ linux-azure-5.8-5.8.0/arch/x86/kernel/acpi/wakeup_32.S @@ -3,6 +3,7 @@ #include #include #include +#include # Copyright 2003, 2008 Pavel Machek #include #include +#include # Copyright 2003 Pavel Machek = 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) { @@ -240,8 +214,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-azure-5.8-5.8.0.orig/arch/x86/kernel/apic/apic.c +++ linux-azure-5.8-5.8.0/arch/x86/kernel/apic/apic.c @@ -42,6 +42,7 @@ #include #include #include +#include #include #include #include @@ -472,6 +473,9 @@ { u64 tsc; + /* This MSR is special and need a special fence: */ + weak_wrmsr_fence(); + tsc = rdtsc(); wrmsrl(MSR_IA32_TSC_DEADLINE, tsc + (((u64) delta) * TSC_DIVISOR)); return 0; @@ -1838,20 +1842,22 @@ return; if (remap_mode != IRQ_REMAP_X2APIC_MODE) { - /* IR is required if there is APIC ID > 255 even when running - * under KVM + /* + * Using X2APIC without IR is not architecturally supported + * on bare metal but may be supported in guests. */ - if (max_physical_apicid > 255 || - !x86_init.hyper.x2apic_available()) { + if (!x86_init.hyper.x2apic_available()) { pr_info("x2apic: IRQ remapping doesn't support X2APIC mode\n"); x2apic_disable(); return; } /* - * without IR all CPUs can be addressed by IOAPIC/MSI - * only in physical mode + * Without IR, all CPUs can be addressed by IOAPIC/MSI only + * in physical mode, and CPUs with an APIC ID that cannnot + * be addressed must not be brought online. */ + x2apic_set_max_apicid(255); x2apic_phys = 1; } x2apic_enable(); --- linux-azure-5.8-5.8.0.orig/arch/x86/kernel/apic/io_apic.c +++ linux-azure-5.8-5.8.0/arch/x86/kernel/apic/io_apic.c @@ -2243,6 +2243,7 @@ legacy_pic->init(0); legacy_pic->make_irq(0); apic_write(APIC_LVT0, APIC_DM_EXTINT); + legacy_pic->unmask(0); unlock_ExtINT_logic(); @@ -2335,8 +2336,13 @@ static void ioapic_destroy_irqdomain(int idx) { + struct ioapic_domain_cfg *cfg = &ioapics[idx].irqdomain_cfg; + struct fwnode_handle *fn = ioapics[idx].irqdomain->fwnode; + if (ioapics[idx].irqdomain) { irq_domain_remove(ioapics[idx].irqdomain); + if (!cfg->dev) + irq_domain_free_fwnode(fn); ioapics[idx].irqdomain = NULL; } } --- linux-azure-5.8-5.8.0.orig/arch/x86/kernel/apic/vector.c +++ linux-azure-5.8-5.8.0/arch/x86/kernel/apic/vector.c @@ -161,6 +161,7 @@ apicd->move_in_progress = true; apicd->prev_vector = apicd->vector; apicd->prev_cpu = apicd->cpu; + WARN_ON_ONCE(apicd->cpu == newcpu); } else { irq_matrix_free(vector_matrix, apicd->cpu, apicd->vector, managed); @@ -272,20 +273,24 @@ const struct cpumask *affmsk = irq_data_get_affinity_mask(irqd); int node = irq_data_get_node(irqd); - if (node == NUMA_NO_NODE) - goto all; - /* Try the intersection of @affmsk and node mask */ - cpumask_and(vector_searchmask, cpumask_of_node(node), affmsk); - if (!assign_vector_locked(irqd, vector_searchmask)) - return 0; - /* Try the node mask */ - if (!assign_vector_locked(irqd, cpumask_of_node(node))) - return 0; -all: + if (node != NUMA_NO_NODE) { + /* Try the intersection of @affmsk and node mask */ + cpumask_and(vector_searchmask, cpumask_of_node(node), affmsk); + if (!assign_vector_locked(irqd, vector_searchmask)) + return 0; + } + /* Try the full affinity mask */ cpumask_and(vector_searchmask, affmsk, cpu_online_mask); if (!assign_vector_locked(irqd, vector_searchmask)) return 0; + + if (node != NUMA_NO_NODE) { + /* Try the node mask */ + if (!assign_vector_locked(irqd, cpumask_of_node(node))) + return 0; + } + /* Try the full online mask */ return assign_vector_locked(irqd, cpu_online_mask); } @@ -560,6 +565,10 @@ * as that can corrupt the affinity move state. */ irqd_set_handle_enforce_irqctx(irqd); + + /* Don't invoke affinity setter on deactivated interrupts */ + irqd_set_affinity_on_activate(irqd); + /* * Legacy vectors are already assigned when the IOAPIC * takes them over. They stay on the same vector. This is @@ -906,7 +915,7 @@ __send_cleanup_vector(apicd); } -static void __irq_complete_move(struct irq_cfg *cfg, unsigned vector) +void irq_complete_move(struct irq_cfg *cfg) { struct apic_chip_data *apicd; @@ -914,15 +923,16 @@ if (likely(!apicd->move_in_progress)) return; - if (vector == apicd->vector && apicd->cpu == smp_processor_id()) + /* + * If the interrupt arrived on the new target CPU, cleanup the + * vector on the old target CPU. A vector check is not required + * because an interrupt can never move from one vector to another + * on the same CPU. + */ + if (apicd->cpu == smp_processor_id()) __send_cleanup_vector(apicd); } -void irq_complete_move(struct irq_cfg *cfg) -{ - __irq_complete_move(cfg, ~get_irq_regs()->orig_ax); -} - /* * Called from fixup_irqs() with @desc->lock held and interrupts disabled. */ --- linux-azure-5.8-5.8.0.orig/arch/x86/kernel/apic/x2apic_cluster.c +++ linux-azure-5.8-5.8.0/arch/x86/kernel/apic/x2apic_cluster.c @@ -29,7 +29,8 @@ { u32 dest = per_cpu(x86_cpu_to_logical_apicid, cpu); - x2apic_wrmsr_fence(); + /* x2apic MSRs are special and need a special fence: */ + weak_wrmsr_fence(); __x2apic_send_IPI_dest(dest, vector, APIC_DEST_LOGICAL); } @@ -41,7 +42,8 @@ unsigned long flags; u32 dest; - x2apic_wrmsr_fence(); + /* x2apic MSRs are special and need a special fence: */ + weak_wrmsr_fence(); local_irq_save(flags); tmpmsk = this_cpu_cpumask_var_ptr(ipi_mask); --- linux-azure-5.8-5.8.0.orig/arch/x86/kernel/apic/x2apic_phys.c +++ linux-azure-5.8-5.8.0/arch/x86/kernel/apic/x2apic_phys.c @@ -8,6 +8,12 @@ int x2apic_phys; static struct apic apic_x2apic_phys; +static u32 x2apic_max_apicid __ro_after_init; + +void __init x2apic_set_max_apicid(u32 apicid) +{ + x2apic_max_apicid = apicid; +} static int __init set_x2apic_phys_mode(char *arg) { @@ -37,7 +43,8 @@ { u32 dest = per_cpu(x86_cpu_to_apicid, cpu); - x2apic_wrmsr_fence(); + /* x2apic MSRs are special and need a special fence: */ + weak_wrmsr_fence(); __x2apic_send_IPI_dest(dest, vector, APIC_DEST_PHYSICAL); } @@ -48,7 +55,8 @@ unsigned long this_cpu; unsigned long flags; - x2apic_wrmsr_fence(); + /* x2apic MSRs are special and need a special fence: */ + weak_wrmsr_fence(); local_irq_save(flags); @@ -98,6 +106,9 @@ /* Common x2apic functions, also used by x2apic_cluster */ int x2apic_apic_id_valid(u32 apicid) { + if (x2apic_max_apicid && apicid > x2apic_max_apicid) + return 0; + return 1; } @@ -116,7 +127,8 @@ { unsigned long cfg = __prepare_ICR(which, vector, 0); - x2apic_wrmsr_fence(); + /* x2apic MSRs are special and need a special fence: */ + weak_wrmsr_fence(); native_x2apic_icr_write(cfg, 0); } --- linux-azure-5.8-5.8.0.orig/arch/x86/kernel/cpu/amd.c +++ linux-azure-5.8-5.8.0/arch/x86/kernel/cpu/amd.c @@ -329,7 +329,6 @@ */ static void amd_get_topology(struct cpuinfo_x86 *c) { - u8 node_id; int cpu = smp_processor_id(); /* get information required for multi-node processors */ @@ -339,7 +338,7 @@ cpuid(0x8000001e, &eax, &ebx, &ecx, &edx); - node_id = ecx & 0xff; + c->cpu_die_id = ecx & 0xff; if (c->x86 == 0x15) c->cu_id = ebx & 0xff; @@ -359,15 +358,15 @@ if (!err) c->x86_coreid_bits = get_count_order(c->x86_max_cores); - cacheinfo_amd_init_llc_id(c, cpu, node_id); + cacheinfo_amd_init_llc_id(c, cpu); } else if (cpu_has(c, X86_FEATURE_NODEID_MSR)) { u64 value; rdmsrl(MSR_FAM10H_NODE_ID, value); - node_id = value & 7; + c->cpu_die_id = value & 7; - per_cpu(cpu_llc_id, cpu) = node_id; + per_cpu(cpu_llc_id, cpu) = c->cpu_die_id; } else return; @@ -392,7 +391,7 @@ /* Convert the initial APIC ID into the socket ID */ c->phys_proc_id = c->initial_apicid >> bits; /* use socket ID also for last level cache */ - per_cpu(cpu_llc_id, cpu) = c->phys_proc_id; + per_cpu(cpu_llc_id, cpu) = c->cpu_die_id = c->phys_proc_id; } static void amd_detect_ppin(struct cpuinfo_x86 *c) @@ -569,12 +568,12 @@ u32 ecx; ecx = cpuid_ecx(0x8000001e); - nodes_per_socket = ((ecx >> 8) & 7) + 1; + __max_die_per_package = nodes_per_socket = ((ecx >> 8) & 7) + 1; } else if (boot_cpu_has(X86_FEATURE_NODEID_MSR)) { u64 value; rdmsrl(MSR_FAM10H_NODE_ID, value); - nodes_per_socket = ((value >> 3) & 7) + 1; + __max_die_per_package = nodes_per_socket = ((value >> 3) & 7) + 1; } if (!boot_cpu_has(X86_FEATURE_AMD_SSBD) && --- linux-azure-5.8-5.8.0.orig/arch/x86/kernel/cpu/bugs.c +++ linux-azure-5.8-5.8.0/arch/x86/kernel/cpu/bugs.c @@ -31,6 +31,7 @@ #include #include #include +#include #include "cpu.h" @@ -543,14 +544,12 @@ * If FSGSBASE is enabled, the user can put a kernel address in * GS, in which case SMAP provides no protection. * - * [ NOTE: Don't check for X86_FEATURE_FSGSBASE until the - * FSGSBASE enablement patches have been merged. ] - * * If FSGSBASE is disabled, the user can only put a user space * address in GS. That makes an attack harder, but still * possible if there's no SMAP protection. */ - if (!smap_works_speculatively()) { + if (boot_cpu_has(X86_FEATURE_FSGSBASE) || + !smap_works_speculatively()) { /* * Mitigation can be provided from SWAPGS itself or * PTI as the CR3 write in the Meltdown mitigation @@ -740,11 +739,13 @@ if (boot_cpu_has(X86_FEATURE_IBPB)) { setup_force_cpu_cap(X86_FEATURE_USE_IBPB); + spectre_v2_user_ibpb = mode; switch (cmd) { case SPECTRE_V2_USER_CMD_FORCE: case SPECTRE_V2_USER_CMD_PRCTL_IBPB: case SPECTRE_V2_USER_CMD_SECCOMP_IBPB: static_branch_enable(&switch_mm_always_ibpb); + spectre_v2_user_ibpb = SPECTRE_V2_USER_STRICT; break; case SPECTRE_V2_USER_CMD_PRCTL: case SPECTRE_V2_USER_CMD_AUTO: @@ -758,8 +759,6 @@ pr_info("mitigation: Enabling %s Indirect Branch Prediction Barrier\n", static_key_enabled(&switch_mm_always_ibpb) ? "always-on" : "conditional"); - - spectre_v2_user_ibpb = mode; } /* @@ -1259,6 +1258,14 @@ return 0; } +static bool is_spec_ib_user_controlled(void) +{ + return spectre_v2_user_ibpb == SPECTRE_V2_USER_PRCTL || + spectre_v2_user_ibpb == SPECTRE_V2_USER_SECCOMP || + spectre_v2_user_stibp == SPECTRE_V2_USER_PRCTL || + spectre_v2_user_stibp == SPECTRE_V2_USER_SECCOMP; +} + static int ib_prctl_set(struct task_struct *task, unsigned long ctrl) { switch (ctrl) { @@ -1266,17 +1273,26 @@ if (spectre_v2_user_ibpb == SPECTRE_V2_USER_NONE && spectre_v2_user_stibp == SPECTRE_V2_USER_NONE) return 0; - /* - * Indirect branch speculation is always disabled in strict - * mode. It can neither be enabled if it was force-disabled - * by a previous prctl call. + /* + * With strict mode for both IBPB and STIBP, the instruction + * code paths avoid checking this task flag and instead, + * unconditionally run the instruction. However, STIBP and IBPB + * are independent and either can be set to conditionally + * enabled regardless of the mode of the other. + * + * If either is set to conditional, allow the task flag to be + * updated, unless it was force-disabled by a previous prctl + * call. Currently, this is possible on an AMD CPU which has the + * feature X86_FEATURE_AMD_STIBP_ALWAYS_ON. In this case, if the + * kernel is booted with 'spectre_v2_user=seccomp', then + * spectre_v2_user_ibpb == SPECTRE_V2_USER_SECCOMP and + * spectre_v2_user_stibp == SPECTRE_V2_USER_STRICT_PREFERRED. */ - if (spectre_v2_user_ibpb == SPECTRE_V2_USER_STRICT || - spectre_v2_user_stibp == SPECTRE_V2_USER_STRICT || - spectre_v2_user_stibp == SPECTRE_V2_USER_STRICT_PREFERRED || + if (!is_spec_ib_user_controlled() || task_spec_ib_force_disable(task)) return -EPERM; + task_clear_spec_ib_disable(task); task_update_spec_tif(task); break; @@ -1289,10 +1305,10 @@ if (spectre_v2_user_ibpb == SPECTRE_V2_USER_NONE && spectre_v2_user_stibp == SPECTRE_V2_USER_NONE) return -EPERM; - if (spectre_v2_user_ibpb == SPECTRE_V2_USER_STRICT || - spectre_v2_user_stibp == SPECTRE_V2_USER_STRICT || - spectre_v2_user_stibp == SPECTRE_V2_USER_STRICT_PREFERRED) + + if (!is_spec_ib_user_controlled()) return 0; + task_set_spec_ib_disable(task); if (ctrl == PR_SPEC_FORCE_DISABLE) task_set_spec_ib_force_disable(task); @@ -1357,20 +1373,17 @@ if (spectre_v2_user_ibpb == SPECTRE_V2_USER_NONE && spectre_v2_user_stibp == SPECTRE_V2_USER_NONE) return PR_SPEC_ENABLE; - else if (spectre_v2_user_ibpb == SPECTRE_V2_USER_STRICT || - spectre_v2_user_stibp == SPECTRE_V2_USER_STRICT || - spectre_v2_user_stibp == SPECTRE_V2_USER_STRICT_PREFERRED) - return PR_SPEC_DISABLE; - else if (spectre_v2_user_ibpb == SPECTRE_V2_USER_PRCTL || - spectre_v2_user_ibpb == SPECTRE_V2_USER_SECCOMP || - spectre_v2_user_stibp == SPECTRE_V2_USER_PRCTL || - spectre_v2_user_stibp == SPECTRE_V2_USER_SECCOMP) { + else if (is_spec_ib_user_controlled()) { if (task_spec_ib_force_disable(task)) return PR_SPEC_PRCTL | PR_SPEC_FORCE_DISABLE; if (task_spec_ib_disable(task)) return PR_SPEC_PRCTL | PR_SPEC_DISABLE; return PR_SPEC_PRCTL | PR_SPEC_ENABLE; - } else + } else if (spectre_v2_user_ibpb == SPECTRE_V2_USER_STRICT || + spectre_v2_user_stibp == SPECTRE_V2_USER_STRICT || + spectre_v2_user_stibp == SPECTRE_V2_USER_STRICT_PREFERRED) + return PR_SPEC_DISABLE; + else return PR_SPEC_NOT_AFFECTED; } @@ -1556,7 +1569,12 @@ static ssize_t itlb_multihit_show_state(char *buf) { - if (itlb_multihit_kvm_mitigation) + if (!boot_cpu_has(X86_FEATURE_MSR_IA32_FEAT_CTL) || + !boot_cpu_has(X86_FEATURE_VMX)) + return sprintf(buf, "KVM: Mitigation: VMX unsupported\n"); + else if (!(cr4_read_shadow() & X86_CR4_VMXE)) + return sprintf(buf, "KVM: Mitigation: VMX disabled\n"); + else if (itlb_multihit_kvm_mitigation) return sprintf(buf, "KVM: Mitigation: Split huge pages\n"); else return sprintf(buf, "KVM: Vulnerable\n"); --- linux-azure-5.8-5.8.0.orig/arch/x86/kernel/cpu/cacheinfo.c +++ linux-azure-5.8-5.8.0/arch/x86/kernel/cpu/cacheinfo.c @@ -646,7 +646,7 @@ return i; } -void cacheinfo_amd_init_llc_id(struct cpuinfo_x86 *c, int cpu, u8 node_id) +void cacheinfo_amd_init_llc_id(struct cpuinfo_x86 *c, int cpu) { /* * We may have multiple LLCs if L3 caches exist, so check if we @@ -657,7 +657,7 @@ if (c->x86 < 0x17) { /* LLC is at the node level. */ - per_cpu(cpu_llc_id, cpu) = node_id; + per_cpu(cpu_llc_id, cpu) = c->cpu_die_id; } else if (c->x86 == 0x17 && c->x86_model <= 0x1F) { /* * LLC is at the core complex level. @@ -684,7 +684,7 @@ } } -void cacheinfo_hygon_init_llc_id(struct cpuinfo_x86 *c, int cpu, u8 node_id) +void cacheinfo_hygon_init_llc_id(struct cpuinfo_x86 *c, int cpu) { /* * We may have multiple LLCs if L3 caches exist, so check if we --- linux-azure-5.8-5.8.0.orig/arch/x86/kernel/cpu/common.c +++ linux-azure-5.8-5.8.0/arch/x86/kernel/cpu/common.c @@ -358,7 +358,7 @@ unsigned long bits_missing = 0; set_register: - asm volatile("mov %0,%%cr0": "+r" (val), "+m" (__force_order)); + asm volatile("mov %0,%%cr0": "+r" (val) : : "memory"); if (static_branch_likely(&cr_pinning)) { if (unlikely((val & X86_CR0_WP) != X86_CR0_WP)) { @@ -377,7 +377,7 @@ unsigned long bits_changed = 0; set_register: - asm volatile("mov %0,%%cr4": "+r" (val), "+m" (cr4_pinned_bits)); + asm volatile("mov %0,%%cr4": "+r" (val) : : "memory"); if (static_branch_likely(&cr_pinning)) { if (unlikely((val & cr4_pinned_mask) != cr4_pinned_bits)) { @@ -441,6 +441,22 @@ static_key_enable(&cr_pinning.key); } +static __init int x86_nofsgsbase_setup(char *arg) +{ + /* Require an exact match without trailing characters. */ + if (strlen(arg)) + return 0; + + /* Do not emit a message if the feature is not present. */ + if (!boot_cpu_has(X86_FEATURE_FSGSBASE)) + return 1; + + setup_clear_cpu_cap(X86_FEATURE_FSGSBASE); + pr_info("FSGSBASE disabled via kernel command line\n"); + return 1; +} +__setup("nofsgsbase", x86_nofsgsbase_setup); + /* * Protection Keys are not available in 32-bit mode. */ @@ -1495,6 +1511,12 @@ setup_smap(c); setup_umip(c); + /* Enable FSGSBASE instructions if available. */ + if (cpu_has(c, X86_FEATURE_FSGSBASE)) { + cr4_set_bits(X86_CR4_FSGSBASE); + elf_hwcap2 |= HWCAP2_FSGSBASE; + } + /* * The vendor-specific functions might have changed features. * Now we do "generic changes." --- linux-azure-5.8-5.8.0.orig/arch/x86/kernel/cpu/hygon.c +++ linux-azure-5.8-5.8.0/arch/x86/kernel/cpu/hygon.c @@ -64,7 +64,6 @@ */ static void hygon_get_topology(struct cpuinfo_x86 *c) { - u8 node_id; int cpu = smp_processor_id(); /* get information required for multi-node processors */ @@ -74,7 +73,7 @@ cpuid(0x8000001e, &eax, &ebx, &ecx, &edx); - node_id = ecx & 0xff; + c->cpu_die_id = ecx & 0xff; c->cpu_core_id = ebx & 0xff; @@ -92,14 +91,14 @@ /* Socket ID is ApicId[6] for these processors. */ c->phys_proc_id = c->apicid >> APICID_SOCKET_ID_BIT; - cacheinfo_hygon_init_llc_id(c, cpu, node_id); + cacheinfo_hygon_init_llc_id(c, cpu); } else if (cpu_has(c, X86_FEATURE_NODEID_MSR)) { u64 value; rdmsrl(MSR_FAM10H_NODE_ID, value); - node_id = value & 7; + c->cpu_die_id = value & 7; - per_cpu(cpu_llc_id, cpu) = node_id; + per_cpu(cpu_llc_id, cpu) = c->cpu_die_id; } else return; @@ -122,7 +121,7 @@ /* Convert the initial APIC ID into the socket ID */ c->phys_proc_id = c->initial_apicid >> bits; /* use socket ID also for last level cache */ - per_cpu(cpu_llc_id, cpu) = c->phys_proc_id; + per_cpu(cpu_llc_id, cpu) = c->cpu_die_id = c->phys_proc_id; } static void srat_detect_node(struct cpuinfo_x86 *c) --- linux-azure-5.8-5.8.0.orig/arch/x86/kernel/cpu/intel.c +++ linux-azure-5.8-5.8.0/arch/x86/kernel/cpu/intel.c @@ -1156,6 +1156,9 @@ X86_MATCH_INTEL_FAM6_MODEL(ATOM_TREMONT_L, 1), X86_MATCH_INTEL_FAM6_MODEL(TIGERLAKE_L, 1), X86_MATCH_INTEL_FAM6_MODEL(TIGERLAKE, 1), + X86_MATCH_INTEL_FAM6_MODEL(SAPPHIRERAPIDS_X, 1), + X86_MATCH_INTEL_FAM6_MODEL(ALDERLAKE, 1), + X86_MATCH_INTEL_FAM6_MODEL(ALDERLAKE_L, 1), {} }; --- linux-azure-5.8-5.8.0.orig/arch/x86/kernel/cpu/mce/core.c +++ linux-azure-5.8-5.8.0/arch/x86/kernel/cpu/mce/core.c @@ -40,7 +40,6 @@ #include #include #include -#include #include #include #include @@ -162,7 +161,8 @@ void mce_register_decode_chain(struct notifier_block *nb) { - if (WARN_ON(nb->priority > MCE_PRIO_MCELOG && nb->priority < MCE_PRIO_EDAC)) + if (WARN_ON(nb->priority < MCE_PRIO_LOWEST || + nb->priority > MCE_PRIO_HIGHEST)) return; blocking_notifier_chain_register(&x86_mce_decoder_chain, nb); @@ -370,42 +370,105 @@ return -1; } +__visible bool ex_handler_rdmsr_fault(const struct exception_table_entry *fixup, + struct pt_regs *regs, int trapnr, + unsigned long error_code, + unsigned long fault_addr) +{ + pr_emerg("MSR access error: RDMSR from 0x%x at rIP: 0x%lx (%pS)\n", + (unsigned int)regs->cx, regs->ip, (void *)regs->ip); + + show_stack_regs(regs); + + panic("MCA architectural violation!\n"); + + while (true) + cpu_relax(); + + return true; +} + /* MSR access wrappers used for error injection */ -static u64 mce_rdmsrl(u32 msr) +static noinstr u64 mce_rdmsrl(u32 msr) { - u64 v; + DECLARE_ARGS(val, low, high); if (__this_cpu_read(injectm.finished)) { - int offset = msr_to_offset(msr); + int offset; + u64 ret; + + instrumentation_begin(); + offset = msr_to_offset(msr); if (offset < 0) - return 0; - return *(u64 *)((char *)this_cpu_ptr(&injectm) + offset); - } + ret = 0; + else + ret = *(u64 *)((char *)this_cpu_ptr(&injectm) + offset); - if (rdmsrl_safe(msr, &v)) { - WARN_ONCE(1, "mce: Unable to read MSR 0x%x!\n", msr); - /* - * Return zero in case the access faulted. This should - * not happen normally but can happen if the CPU does - * something weird, or if the code is buggy. - */ - v = 0; + instrumentation_end(); + + return ret; } - return v; + /* + * RDMSR on MCA MSRs should not fault. If they do, this is very much an + * architectural violation and needs to be reported to hw vendor. Panic + * the box to not allow any further progress. + */ + asm volatile("1: rdmsr\n" + "2:\n" + _ASM_EXTABLE_HANDLE(1b, 2b, ex_handler_rdmsr_fault) + : EAX_EDX_RET(val, low, high) : "c" (msr)); + + + return EAX_EDX_VAL(val, low, high); +} + +__visible bool ex_handler_wrmsr_fault(const struct exception_table_entry *fixup, + struct pt_regs *regs, int trapnr, + unsigned long error_code, + unsigned long fault_addr) +{ + pr_emerg("MSR access error: WRMSR to 0x%x (tried to write 0x%08x%08x) at rIP: 0x%lx (%pS)\n", + (unsigned int)regs->cx, (unsigned int)regs->dx, (unsigned int)regs->ax, + regs->ip, (void *)regs->ip); + + show_stack_regs(regs); + + panic("MCA architectural violation!\n"); + + while (true) + cpu_relax(); + + return true; } -static void mce_wrmsrl(u32 msr, u64 v) +static noinstr void mce_wrmsrl(u32 msr, u64 v) { + u32 low, high; + if (__this_cpu_read(injectm.finished)) { - int offset = msr_to_offset(msr); + int offset; + + instrumentation_begin(); + offset = msr_to_offset(msr); if (offset >= 0) *(u64 *)((char *)this_cpu_ptr(&injectm) + offset) = v; + + instrumentation_end(); + return; } - wrmsrl(msr, v); + + low = (u32)v; + high = (u32)(v >> 32); + + /* See comment in mce_rdmsrl() */ + asm volatile("1: wrmsr\n" + "2:\n" + _ASM_EXTABLE_HANDLE(1b, 2b, ex_handler_wrmsr_fault) + : : "c" (msr), "a"(low), "d" (high) : "memory"); } /* @@ -1298,8 +1361,10 @@ * When there's any problem use only local no_way_out state. */ if (!lmce) { - if (mce_end(order) < 0) - no_way_out = worst >= MCE_PANIC_SEVERITY; + if (mce_end(order) < 0) { + if (!no_way_out) + no_way_out = worst >= MCE_PANIC_SEVERITY; + } } else { /* * If there was a fatal machine check we should have @@ -1345,7 +1410,7 @@ current->mce_kill_me.func = kill_me_maybe; if (kill_it) current->mce_kill_me.func = kill_me_now; - task_work_add(current, ¤t->mce_kill_me, true); + task_work_add(current, ¤t->mce_kill_me, TWA_RESUME); } else { /* * Handle an MCE which has happened in kernel space but from @@ -2059,7 +2124,7 @@ and older. * mce=nobootlog Don't log MCEs from before booting. * mce=bios_cmci_threshold Don't program the CMCI threshold - * mce=recovery force enable memcpy_mcsafe() + * mce=recovery force enable copy_mc_fragile() */ static int __init mcheck_enable(char *str) { @@ -2667,13 +2732,10 @@ static void __init mcheck_debugfs_init(void) { } #endif -DEFINE_STATIC_KEY_FALSE(mcsafe_key); -EXPORT_SYMBOL_GPL(mcsafe_key); - static int __init mcheck_late_init(void) { if (mca_cfg.recovery) - static_branch_inc(&mcsafe_key); + enable_copy_mc_fragile(); mcheck_debugfs_init(); --- linux-azure-5.8-5.8.0.orig/arch/x86/kernel/cpu/mce/inject.c +++ linux-azure-5.8-5.8.0/arch/x86/kernel/cpu/mce/inject.c @@ -511,7 +511,7 @@ */ if (inj_type == DFR_INT_INJ) { i_mce.status |= MCI_STATUS_DEFERRED; - i_mce.status |= (i_mce.status & ~MCI_STATUS_UC); + i_mce.status &= ~MCI_STATUS_UC; } /* --- linux-azure-5.8-5.8.0.orig/arch/x86/kernel/cpu/mce/internal.h +++ linux-azure-5.8-5.8.0/arch/x86/kernel/cpu/mce/internal.h @@ -185,4 +185,14 @@ static inline bool amd_filter_mce(struct mce *m) { return false; }; #endif +__visible bool ex_handler_rdmsr_fault(const struct exception_table_entry *fixup, + struct pt_regs *regs, int trapnr, + unsigned long error_code, + unsigned long fault_addr); + +__visible bool ex_handler_wrmsr_fault(const struct exception_table_entry *fixup, + struct pt_regs *regs, int trapnr, + unsigned long error_code, + unsigned long fault_addr); + #endif /* __X86_MCE_INTERNAL_H__ */ --- linux-azure-5.8-5.8.0.orig/arch/x86/kernel/cpu/mce/severity.c +++ linux-azure-5.8-5.8.0/arch/x86/kernel/cpu/mce/severity.c @@ -9,9 +9,11 @@ #include #include #include -#include #include +#include +#include + #include "internal.h" /* @@ -40,9 +42,14 @@ unsigned char context; unsigned char excp; unsigned char covered; + unsigned char cpu_model; + unsigned char cpu_minstepping; + unsigned char bank_lo, bank_hi; char *msg; } severities[] = { #define MCESEV(s, m, c...) { .sev = MCE_ ## s ## _SEVERITY, .msg = m, ## c } +#define BANK_RANGE(l, h) .bank_lo = l, .bank_hi = h +#define MODEL_STEPPING(m, s) .cpu_model = m, .cpu_minstepping = s #define KERNEL .context = IN_KERNEL #define USER .context = IN_USER #define KERNEL_RECOV .context = IN_KERNEL_RECOV @@ -97,7 +104,6 @@ KEEP, "Corrected error", NOSER, BITCLR(MCI_STATUS_UC) ), - /* * known AO MCACODs reported via MCE or CMC: * @@ -113,6 +119,18 @@ AO, "Action optional: last level cache writeback error", SER, MASK(MCI_UC_AR|MCACOD, MCI_STATUS_UC|MCACOD_L3WB) ), + /* + * Quirk for Skylake/Cascade Lake. Patrol scrubber may be configured + * to report uncorrected errors using CMCI with a special signature. + * UC=0, MSCOD=0x0010, MCACOD=binary(000X 0000 1100 XXXX) reported + * in one of the memory controller banks. + * Set severity to "AO" for same action as normal patrol scrub error. + */ + MCESEV( + AO, "Uncorrected Patrol Scrub Error", + SER, MASK(MCI_STATUS_UC|MCI_ADDR|0xffffeff0, MCI_ADDR|0x001000c0), + MODEL_STEPPING(INTEL_FAM6_SKYLAKE_X, 4), BANK_RANGE(13, 18) + ), /* ignore OVER for UCNA */ MCESEV( @@ -324,6 +342,12 @@ continue; if (s->excp && excp != s->excp) continue; + if (s->cpu_model && boot_cpu_data.x86_model != s->cpu_model) + continue; + if (s->cpu_minstepping && boot_cpu_data.x86_stepping < s->cpu_minstepping) + continue; + if (s->bank_lo && (m->bank < s->bank_lo || m->bank > s->bank_hi)) + continue; if (msg) *msg = s->msg; s->covered = 1; --- linux-azure-5.8-5.8.0.orig/arch/x86/kernel/cpu/microcode/intel.c +++ linux-azure-5.8-5.8.0/arch/x86/kernel/cpu/microcode/intel.c @@ -100,53 +100,6 @@ return find_matching_signature(mc, csig, cpf); } -/* - * Given CPU signature and a microcode patch, this function finds if the - * microcode patch has matching family and model with the CPU. - * - * %true - if there's a match - * %false - otherwise - */ -static bool microcode_matches(struct microcode_header_intel *mc_header, - unsigned long sig) -{ - unsigned long total_size = get_totalsize(mc_header); - unsigned long data_size = get_datasize(mc_header); - struct extended_sigtable *ext_header; - unsigned int fam_ucode, model_ucode; - struct extended_signature *ext_sig; - unsigned int fam, model; - int ext_sigcount, i; - - fam = x86_family(sig); - model = x86_model(sig); - - fam_ucode = x86_family(mc_header->sig); - model_ucode = x86_model(mc_header->sig); - - if (fam == fam_ucode && model == model_ucode) - return true; - - /* Look for ext. headers: */ - if (total_size <= data_size + MC_HEADER_SIZE) - return false; - - ext_header = (void *) mc_header + data_size + MC_HEADER_SIZE; - ext_sig = (void *)ext_header + EXT_HEADER_SIZE; - ext_sigcount = ext_header->count; - - for (i = 0; i < ext_sigcount; i++) { - fam_ucode = x86_family(ext_sig->sig); - model_ucode = x86_model(ext_sig->sig); - - if (fam == fam_ucode && model == model_ucode) - return true; - - ext_sig++; - } - return false; -} - static struct ucode_patch *memdup_patch(void *data, unsigned int size) { struct ucode_patch *p; @@ -164,7 +117,7 @@ return p; } -static void save_microcode_patch(void *data, unsigned int size) +static void save_microcode_patch(struct ucode_cpu_info *uci, void *data, unsigned int size) { struct microcode_header_intel *mc_hdr, *mc_saved_hdr; struct ucode_patch *iter, *tmp, *p = NULL; @@ -210,6 +163,9 @@ if (!p) return; + if (!find_matching_signature(p->data, uci->cpu_sig.sig, uci->cpu_sig.pf)) + return; + /* * Save for early loading. On 32-bit, that needs to be a physical * address as the APs are running from physical addresses, before @@ -344,13 +300,14 @@ size -= mc_size; - if (!microcode_matches(mc_header, uci->cpu_sig.sig)) { + if (!find_matching_signature(data, uci->cpu_sig.sig, + uci->cpu_sig.pf)) { data += mc_size; continue; } if (save) { - save_microcode_patch(data, mc_size); + save_microcode_patch(uci, data, mc_size); goto next; } @@ -483,14 +440,14 @@ * Save this microcode patch. It will be loaded early when a CPU is * hot-added or resumes. */ -static void save_mc_for_early(u8 *mc, unsigned int size) +static void save_mc_for_early(struct ucode_cpu_info *uci, u8 *mc, unsigned int size) { /* Synchronization during CPU hotplug. */ static DEFINE_MUTEX(x86_cpu_microcode_mutex); mutex_lock(&x86_cpu_microcode_mutex); - save_microcode_patch(mc, size); + save_microcode_patch(uci, mc, size); show_saved_mc(); mutex_unlock(&x86_cpu_microcode_mutex); @@ -935,7 +892,7 @@ * permanent memory. So it will be loaded early when a CPU is hot added * or resumes. */ - save_mc_for_early(new_mc, new_mc_size); + save_mc_for_early(uci, new_mc, new_mc_size); pr_debug("CPU%d found a matching microcode update with version 0x%x (current=0x%x)\n", cpu, new_rev, uci->cpu_sig.rev); --- linux-azure-5.8-5.8.0.orig/arch/x86/kernel/cpu/mtrr/generic.c +++ linux-azure-5.8-5.8.0/arch/x86/kernel/cpu/mtrr/generic.c @@ -167,9 +167,6 @@ *repeat = 0; *uniform = 1; - /* Make end inclusive instead of exclusive */ - end--; - prev_match = MTRR_TYPE_INVALID; for (i = 0; i < num_var_ranges; ++i) { unsigned short start_state, end_state, inclusive; @@ -261,6 +258,9 @@ int repeat; u64 partial_end; + /* Make end inclusive instead of exclusive */ + end--; + if (!mtrr_state_set) return MTRR_TYPE_INVALID; --- linux-azure-5.8-5.8.0.orig/arch/x86/kernel/cpu/resctrl/internal.h +++ linux-azure-5.8-5.8.0/arch/x86/kernel/cpu/resctrl/internal.h @@ -283,7 +283,6 @@ * struct mbm_state - status for each MBM counter in each domain * @chunks: Total data moved (multiply by rdt_group.mon_scale to get bytes) * @prev_msr Value of IA32_QM_CTR for this RMID last time we read it - * @chunks_bw Total local data moved. Used for bandwidth calculation * @prev_bw_msr:Value of previous IA32_QM_CTR for bandwidth counting * @prev_bw The most recent bandwidth in MBps * @delta_bw Difference between the current and previous bandwidth @@ -292,7 +291,6 @@ struct mbm_state { u64 chunks; u64 prev_msr; - u64 chunks_bw; u64 prev_bw_msr; u32 prev_bw; u32 delta_bw; --- linux-azure-5.8-5.8.0.orig/arch/x86/kernel/cpu/resctrl/monitor.c +++ linux-azure-5.8-5.8.0/arch/x86/kernel/cpu/resctrl/monitor.c @@ -279,8 +279,6 @@ return; chunks = mbm_overflow_count(m->prev_bw_msr, tval, rr->r->mbm_width); - m->chunks_bw += chunks; - m->chunks = m->chunks_bw; cur_bw = (chunks * r->mon_scale) >> 20; if (m->delta_comp) @@ -451,15 +449,14 @@ } if (is_mbm_local_enabled()) { rr.evtid = QOS_L3_MBM_LOCAL_EVENT_ID; + __mon_event_count(rmid, &rr); /* * Call the MBA software controller only for the * control groups and when user has enabled * the software controller explicitly. */ - if (!is_mba_sc(NULL)) - __mon_event_count(rmid, &rr); - else + if (is_mba_sc(NULL)) mbm_bw_count(rmid, &rr); } } --- linux-azure-5.8-5.8.0.orig/arch/x86/kernel/cpu/resctrl/rdtgroup.c +++ linux-azure-5.8-5.8.0/arch/x86/kernel/cpu/resctrl/rdtgroup.c @@ -507,89 +507,88 @@ return ret ?: nbytes; } -struct task_move_callback { - struct callback_head work; - struct rdtgroup *rdtgrp; -}; - -static void move_myself(struct callback_head *head) +/** + * rdtgroup_remove - the helper to remove resource group safely + * @rdtgrp: resource group to remove + * + * On resource group creation via a mkdir, an extra kernfs_node reference is + * taken to ensure that the rdtgroup structure remains accessible for the + * rdtgroup_kn_unlock() calls where it is removed. + * + * Drop the extra reference here, then free the rdtgroup structure. + * + * Return: void + */ +static void rdtgroup_remove(struct rdtgroup *rdtgrp) { - struct task_move_callback *callback; - struct rdtgroup *rdtgrp; - - callback = container_of(head, struct task_move_callback, work); - rdtgrp = callback->rdtgrp; + kernfs_put(rdtgrp->kn); + kfree(rdtgrp); +} +static void _update_task_closid_rmid(void *task) +{ /* - * If resource group was deleted before this task work callback - * was invoked, then assign the task to root group and free the - * resource group. + * If the task is still current on this CPU, update PQR_ASSOC MSR. + * Otherwise, the MSR is updated when the task is scheduled in. */ - if (atomic_dec_and_test(&rdtgrp->waitcount) && - (rdtgrp->flags & RDT_DELETED)) { - current->closid = 0; - current->rmid = 0; - kfree(rdtgrp); - } - - if (unlikely(current->flags & PF_EXITING)) - goto out; - - preempt_disable(); - /* update PQR_ASSOC MSR to make resource group go into effect */ - resctrl_sched_in(); - preempt_enable(); + if (task == current) + resctrl_sched_in(); +} -out: - kfree(callback); +static void update_task_closid_rmid(struct task_struct *t) +{ + if (IS_ENABLED(CONFIG_SMP) && task_curr(t)) + smp_call_function_single(task_cpu(t), _update_task_closid_rmid, t, 1); + else + _update_task_closid_rmid(t); } static int __rdtgroup_move_task(struct task_struct *tsk, struct rdtgroup *rdtgrp) { - struct task_move_callback *callback; - int ret; - - callback = kzalloc(sizeof(*callback), GFP_KERNEL); - if (!callback) - return -ENOMEM; - callback->work.func = move_myself; - callback->rdtgrp = rdtgrp; + /* If the task is already in rdtgrp, no need to move the task. */ + if ((rdtgrp->type == RDTCTRL_GROUP && tsk->closid == rdtgrp->closid && + tsk->rmid == rdtgrp->mon.rmid) || + (rdtgrp->type == RDTMON_GROUP && tsk->rmid == rdtgrp->mon.rmid && + tsk->closid == rdtgrp->mon.parent->closid)) + return 0; /* - * Take a refcount, so rdtgrp cannot be freed before the - * callback has been invoked. + * Set the task's closid/rmid before the PQR_ASSOC MSR can be + * updated by them. + * + * For ctrl_mon groups, move both closid and rmid. + * For monitor groups, can move the tasks only from + * their parent CTRL group. */ - atomic_inc(&rdtgrp->waitcount); - ret = task_work_add(tsk, &callback->work, true); - if (ret) { - /* - * Task is exiting. Drop the refcount and free the callback. - * No need to check the refcount as the group cannot be - * deleted before the write function unlocks rdtgroup_mutex. - */ - atomic_dec(&rdtgrp->waitcount); - kfree(callback); - rdt_last_cmd_puts("Task exited\n"); - } else { - /* - * For ctrl_mon groups move both closid and rmid. - * For monitor groups, can move the tasks only from - * their parent CTRL group. - */ - if (rdtgrp->type == RDTCTRL_GROUP) { - tsk->closid = rdtgrp->closid; + + if (rdtgrp->type == RDTCTRL_GROUP) { + tsk->closid = rdtgrp->closid; + tsk->rmid = rdtgrp->mon.rmid; + } else if (rdtgrp->type == RDTMON_GROUP) { + if (rdtgrp->mon.parent->closid == tsk->closid) { tsk->rmid = rdtgrp->mon.rmid; - } else if (rdtgrp->type == RDTMON_GROUP) { - if (rdtgrp->mon.parent->closid == tsk->closid) { - tsk->rmid = rdtgrp->mon.rmid; - } else { - rdt_last_cmd_puts("Can't move task to different control group\n"); - ret = -EINVAL; - } + } else { + rdt_last_cmd_puts("Can't move task to different control group\n"); + return -EINVAL; } } - return ret; + + /* + * Ensure the task's closid and rmid are written before determining if + * the task is current that will decide if it will be interrupted. + */ + barrier(); + + /* + * By now, the task's closid and rmid are set. If the task is current + * on a CPU, the PQR_ASSOC MSR needs to be updated to make the resource + * group go into effect. If the task is not current, the MSR will be + * updated when the task is scheduled in. + */ + update_task_closid_rmid(tsk); + + return 0; } /** @@ -1708,7 +1707,6 @@ if (IS_ERR(kn_subdir)) return PTR_ERR(kn_subdir); - kernfs_get(kn_subdir); ret = rdtgroup_kn_set_ugid(kn_subdir); if (ret) return ret; @@ -1731,7 +1729,6 @@ kn_info = kernfs_create_dir(parent_kn, "info", parent_kn->mode, NULL); if (IS_ERR(kn_info)) return PTR_ERR(kn_info); - kernfs_get(kn_info); ret = rdtgroup_add_files(kn_info, RF_TOP_INFO); if (ret) @@ -1752,12 +1749,6 @@ goto out_destroy; } - /* - * This extra ref will be put in kernfs_remove() and guarantees - * that @rdtgrp->kn is always accessible. - */ - kernfs_get(kn_info); - ret = rdtgroup_kn_set_ugid(kn_info); if (ret) goto out_destroy; @@ -1786,12 +1777,6 @@ if (dest_kn) *dest_kn = kn; - /* - * This extra ref will be put in kernfs_remove() and guarantees - * that @rdtgrp->kn is always accessible. - */ - kernfs_get(kn); - ret = rdtgroup_kn_set_ugid(kn); if (ret) goto out_destroy; @@ -2018,8 +2003,7 @@ rdtgrp->mode == RDT_MODE_PSEUDO_LOCKED) rdtgroup_pseudo_lock_remove(rdtgrp); kernfs_unbreak_active_protection(kn); - kernfs_put(rdtgrp->kn); - kfree(rdtgrp); + rdtgroup_remove(rdtgrp); } else { kernfs_unbreak_active_protection(kn); } @@ -2078,13 +2062,11 @@ &kn_mongrp); if (ret < 0) goto out_info; - kernfs_get(kn_mongrp); ret = mkdir_mondata_all(rdtgroup_default.kn, &rdtgroup_default, &kn_mondata); if (ret < 0) goto out_mongrp; - kernfs_get(kn_mondata); rdtgroup_default.mon.mon_data_kn = kn_mondata; } @@ -2308,7 +2290,7 @@ if (atomic_read(&sentry->waitcount) != 0) sentry->flags = RDT_DELETED; else - kfree(sentry); + rdtgroup_remove(sentry); } } @@ -2350,7 +2332,7 @@ if (atomic_read(&rdtgrp->waitcount) != 0) rdtgrp->flags = RDT_DELETED; else - kfree(rdtgrp); + rdtgroup_remove(rdtgrp); } /* Notify online CPUs to update per cpu storage and PQR_ASSOC MSR */ update_closid_rmid(cpu_online_mask, &rdtgroup_default); @@ -2450,11 +2432,6 @@ if (IS_ERR(kn)) return PTR_ERR(kn); - /* - * This extra ref will be put in kernfs_remove() and guarantees - * that kn is always accessible. - */ - kernfs_get(kn); ret = rdtgroup_kn_set_ugid(kn); if (ret) goto out_destroy; @@ -2789,8 +2766,8 @@ /* * kernfs_remove() will drop the reference count on "kn" which * will free it. But we still need it to stick around for the - * rdtgroup_kn_unlock(kn} call below. Take one extra reference - * here, which will be dropped inside rdtgroup_kn_unlock(). + * rdtgroup_kn_unlock(kn) call. Take one extra reference here, + * which will be dropped by kernfs_put() in rdtgroup_remove(). */ kernfs_get(kn); @@ -2831,6 +2808,7 @@ out_idfree: free_rmid(rdtgrp->mon.rmid); out_destroy: + kernfs_put(rdtgrp->kn); kernfs_remove(rdtgrp->kn); out_free_rgrp: kfree(rdtgrp); @@ -2843,7 +2821,7 @@ { kernfs_remove(rgrp->kn); free_rmid(rgrp->mon.rmid); - kfree(rgrp); + rdtgroup_remove(rgrp); } /* @@ -3000,11 +2978,6 @@ WARN_ON(list_empty(&prdtgrp->mon.crdtgrp_list)); list_del(&rdtgrp->mon.crdtgrp_list); - /* - * one extra hold on this, will drop when we kfree(rdtgrp) - * in rdtgroup_kn_unlock() - */ - kernfs_get(kn); kernfs_remove(rdtgrp->kn); return 0; @@ -3016,11 +2989,6 @@ rdtgrp->flags = RDT_DELETED; list_del(&rdtgrp->rdtgroup_list); - /* - * one extra hold on this, will drop when we kfree(rdtgrp) - * in rdtgroup_kn_unlock() - */ - kernfs_get(kn); kernfs_remove(rdtgrp->kn); return 0; } --- linux-azure-5.8-5.8.0.orig/arch/x86/kernel/cpu/topology.c +++ linux-azure-5.8-5.8.0/arch/x86/kernel/cpu/topology.c @@ -25,10 +25,10 @@ #define BITS_SHIFT_NEXT_LEVEL(eax) ((eax) & 0x1f) #define LEVEL_MAX_SIBLINGS(ebx) ((ebx) & 0xffff) -#ifdef CONFIG_SMP unsigned int __max_die_per_package __read_mostly = 1; EXPORT_SYMBOL(__max_die_per_package); +#ifdef CONFIG_SMP /* * Check if given CPUID extended toplogy "leaf" is implemented */ --- linux-azure-5.8-5.8.0.orig/arch/x86/kernel/dumpstack.c +++ linux-azure-5.8-5.8.0/arch/x86/kernel/dumpstack.c @@ -77,6 +77,9 @@ if (!user_mode(regs)) return copy_from_kernel_nofault(buf, (u8 *)src, nbytes); + /* The user space code from other tasks cannot be accessed. */ + if (regs != task_pt_regs(current)) + return -EPERM; /* * Make sure userspace isn't trying to trick us into dumping kernel * memory by pointing the userspace instruction pointer at it. @@ -84,6 +87,12 @@ if (__chk_range_not_ok(src, nbytes, TASK_SIZE_MAX)) return -EINVAL; + /* + * Even if named copy_from_user_nmi() this can be invoked from + * other contexts and will not try to resolve a pagefault, which is + * the correct thing to do here as this code can be called from any + * context. + */ return copy_from_user_nmi(buf, (void __user *)src, nbytes); } @@ -114,12 +123,19 @@ u8 opcodes[OPCODE_BUFSIZE]; unsigned long prologue = regs->ip - PROLOGUE_SIZE; - if (copy_code(regs, opcodes, prologue, sizeof(opcodes))) { - printk("%sCode: Bad RIP value.\n", loglvl); - } else { + switch (copy_code(regs, opcodes, prologue, sizeof(opcodes))) { + case 0: printk("%sCode: %" __stringify(PROLOGUE_SIZE) "ph <%02x> %" __stringify(EPILOGUE_SIZE) "ph\n", loglvl, opcodes, opcodes[PROLOGUE_SIZE], opcodes + PROLOGUE_SIZE + 1); + break; + case -EPERM: + /* No access to the user space stack of other tasks. Ignore. */ + break; + default: + printk("%sCode: Unable to access opcode bytes at RIP 0x%lx.\n", + loglvl, prologue); + break; } } --- linux-azure-5.8-5.8.0.orig/arch/x86/kernel/early-quirks.c +++ linux-azure-5.8-5.8.0/arch/x86/kernel/early-quirks.c @@ -28,6 +28,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; @@ -718,6 +749,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}, {} }; @@ -770,6 +802,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); @@ -796,8 +832,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-azure-5.8-5.8.0.orig/arch/x86/kernel/fpu/core.c +++ linux-azure-5.8-5.8.0/arch/x86/kernel/fpu/core.c @@ -82,7 +82,7 @@ } EXPORT_SYMBOL(irq_fpu_usable); -void kernel_fpu_begin(void) +void kernel_fpu_begin_mask(unsigned int kfpu_mask) { preempt_disable(); @@ -102,13 +102,14 @@ } __cpu_invalidate_fpregs_state(); - if (boot_cpu_has(X86_FEATURE_XMM)) + /* Put sane initial values into the control registers. */ + if (likely(kfpu_mask & KFPU_MXCSR) && boot_cpu_has(X86_FEATURE_XMM)) ldmxcsr(MXCSR_DEFAULT); - if (boot_cpu_has(X86_FEATURE_FPU)) + if (unlikely(kfpu_mask & KFPU_387) && boot_cpu_has(X86_FEATURE_FPU)) asm volatile ("fninit"); } -EXPORT_SYMBOL_GPL(kernel_fpu_begin); +EXPORT_SYMBOL_GPL(kernel_fpu_begin_mask); void kernel_fpu_end(void) { --- linux-azure-5.8-5.8.0.orig/arch/x86/kernel/fpu/init.c +++ linux-azure-5.8-5.8.0/arch/x86/kernel/fpu/init.c @@ -243,9 +243,9 @@ */ static void __init fpu__init_parse_early_param(void) { - char arg[32]; + char arg[128]; char *argptr = arg; - int bit; + int arglen, res, bit; #ifdef CONFIG_X86_32 if (cmdline_find_option_bool(boot_command_line, "no387")) @@ -268,12 +268,26 @@ if (cmdline_find_option_bool(boot_command_line, "noxsaves")) setup_clear_cpu_cap(X86_FEATURE_XSAVES); - if (cmdline_find_option(boot_command_line, "clearcpuid", arg, - sizeof(arg)) && - get_option(&argptr, &bit) && - bit >= 0 && - bit < NCAPINTS * 32) - setup_clear_cpu_cap(bit); + arglen = cmdline_find_option(boot_command_line, "clearcpuid", arg, sizeof(arg)); + if (arglen <= 0) + return; + + pr_info("Clearing CPUID bits:"); + do { + res = get_option(&argptr, &bit); + if (res == 0 || res == 3) + break; + + /* If the argument was too long, the last bit may be cut off */ + if (res == 1 && arglen >= sizeof(arg)) + break; + + if (bit >= 0 && bit < NCAPINTS * 32) { + pr_cont(" " X86_CAP_FMT, x86_cap_flag(bit)); + setup_clear_cpu_cap(bit); + } + } while (res == 2); + pr_cont("\n"); } /* --- linux-azure-5.8-5.8.0.orig/arch/x86/kernel/head_32.S +++ linux-azure-5.8-5.8.0/arch/x86/kernel/head_32.S @@ -26,6 +26,7 @@ #include #include #include +#include /* Physical address */ #define pa(X) ((X) - __PAGE_OFFSET) @@ -147,6 +148,7 @@ movl pa(subarch_entries)(,%eax,4), %eax subl $__PAGE_OFFSET, %eax + ANNOTATE_RETPOLINE_SAFE jmp *%eax .Lbad_subarch: @@ -297,6 +299,7 @@ movl setup_once_ref,%eax andl %eax,%eax jz 1f # Did we do this already? + ANNOTATE_RETPOLINE_SAFE call *%eax 1: --- linux-azure-5.8-5.8.0.orig/arch/x86/kernel/hw_breakpoint.c +++ linux-azure-5.8-5.8.0/arch/x86/kernel/hw_breakpoint.c @@ -269,6 +269,20 @@ CPU_ENTRY_AREA_TOTAL_SIZE)) return true; + /* + * When FSGSBASE is enabled, paranoid_entry() fetches the per-CPU + * GSBASE value via __per_cpu_offset or pcpu_unit_offsets. + */ +#ifdef CONFIG_SMP + if (within_area(addr, end, (unsigned long)__per_cpu_offset, + sizeof(unsigned long) * nr_cpu_ids)) + return true; +#else + if (within_area(addr, end, (unsigned long)&pcpu_unit_offsets, + sizeof(pcpu_unit_offsets))) + return true; +#endif + for_each_possible_cpu(cpu) { /* The original rw GDT is being used after load_direct_gdt() */ if (within_area(addr, end, (unsigned long)get_cpu_gdt_rw(cpu), @@ -293,6 +307,14 @@ (unsigned long)&per_cpu(cpu_tlbstate, cpu), sizeof(struct tlb_state))) return true; + + /* + * When in guest (X86_FEATURE_HYPERVISOR), local_db_save() + * will read per-cpu cpu_dr7 before clear dr7 register. + */ + if (within_area(addr, end, (unsigned long)&per_cpu(cpu_dr7, cpu), + sizeof(cpu_dr7))) + return true; } return false; @@ -527,15 +549,12 @@ struct perf_event *bp; unsigned long dr6; unsigned long *dr6_p; + bool bpx; /* The DR6 value is pointed by args->err */ dr6_p = (unsigned long *)ERR_PTR(args->err); dr6 = *dr6_p; - /* If it's a single step, TRAP bits are random */ - if (dr6 & DR_STEP) - return NOTIFY_DONE; - /* Do an early return if no trap bits are set in DR6 */ if ((dr6 & DR_TRAP_BITS) == 0) return NOTIFY_DONE; @@ -553,28 +572,29 @@ if (likely(!(dr6 & (DR_TRAP0 << i)))) continue; + bp = this_cpu_read(bp_per_reg[i]); + if (!bp) + continue; + + bpx = bp->hw.info.type == X86_BREAKPOINT_EXECUTE; + /* - * The counter may be concurrently released but that can only - * occur from a call_rcu() path. We can then safely fetch - * the breakpoint, use its callback, touch its counter - * while we are in an rcu_read_lock() path. + * TF and data breakpoints are traps and can be merged, however + * instruction breakpoints are faults and will be raised + * separately. + * + * However DR6 can indicate both TF and instruction + * breakpoints. In that case take TF as that has precedence and + * delay the instruction breakpoint for the next exception. */ - rcu_read_lock(); + if (bpx && (dr6 & DR_STEP)) + continue; - bp = per_cpu(bp_per_reg[i], cpu); /* * Reset the 'i'th TRAP bit in dr6 to denote completion of * exception handling */ (*dr6_p) &= ~(DR_TRAP0 << i); - /* - * bp can be NULL due to lazy debug register switching - * or due to concurrent perf counter removing. - */ - if (!bp) { - rcu_read_unlock(); - break; - } perf_bp_event(bp, args->regs); @@ -582,11 +602,10 @@ * Set up resume flag to avoid breakpoint recursion when * returning back to origin. */ - if (bp->hw.info.type == X86_BREAKPOINT_EXECUTE) + if (bpx) args->regs->flags |= X86_EFLAGS_RF; - - rcu_read_unlock(); } + /* * Further processing in do_debug() is needed for a) user-space * breakpoints (to generate signals) and b) when the system has --- linux-azure-5.8-5.8.0.orig/arch/x86/kernel/irq.c +++ linux-azure-5.8-5.8.0/arch/x86/kernel/irq.c @@ -227,7 +227,7 @@ struct pt_regs *regs) { if (IS_ENABLED(CONFIG_X86_64)) - run_on_irqstack_cond(desc->handle_irq, desc, regs); + run_irq_on_irqstack_cond(desc->handle_irq, desc, regs); else __handle_irq(desc, regs); } --- linux-azure-5.8-5.8.0.orig/arch/x86/kernel/irq_64.c +++ linux-azure-5.8-5.8.0/arch/x86/kernel/irq_64.c @@ -74,5 +74,5 @@ void do_softirq_own_stack(void) { - run_on_irqstack_cond(__do_softirq, NULL, NULL); + run_on_irqstack_cond(__do_softirq, NULL); } --- linux-azure-5.8-5.8.0.orig/arch/x86/kernel/kexec-bzimage64.c +++ linux-azure-5.8-5.8.0/arch/x86/kernel/kexec-bzimage64.c @@ -209,8 +209,7 @@ params->hdr.hardware_subarch = boot_params.hdr.hardware_subarch; /* Copying screen_info will do? */ - memcpy(¶ms->screen_info, &boot_params.screen_info, - sizeof(struct screen_info)); + memcpy(¶ms->screen_info, &screen_info, sizeof(struct screen_info)); /* Fill in memsize later */ params->screen_info.ext_mem_k = 0; --- linux-azure-5.8-5.8.0.orig/arch/x86/kernel/kprobes/core.c +++ linux-azure-5.8-5.8.0/arch/x86/kernel/kprobes/core.c @@ -1027,6 +1027,11 @@ * So clear it by resetting the current kprobe: */ regs->flags &= ~X86_EFLAGS_TF; + /* + * Since the single step (trap) has been cancelled, + * we need to restore BTF here. + */ + restore_btf(); /* * If the TF flag was set before the kprobe hit, --- linux-azure-5.8-5.8.0.orig/arch/x86/kernel/kprobes/opt.c +++ linux-azure-5.8-5.8.0/arch/x86/kernel/kprobes/opt.c @@ -270,6 +270,19 @@ return ret; } +static bool is_padding_int3(unsigned long addr, unsigned long eaddr) +{ + unsigned char ops; + + for (; addr < eaddr; addr++) { + if (get_kernel_nofault(ops, (void *)addr) < 0 || + ops != INT3_INSN_OPCODE) + return false; + } + + return true; +} + /* Decode whole function to ensure any instructions don't jump into target */ static int can_optimize(unsigned long paddr) { @@ -308,9 +321,14 @@ return 0; kernel_insn_init(&insn, (void *)recovered_insn, MAX_INSN_SIZE); insn_get_length(&insn); - /* Another subsystem puts a breakpoint */ + /* + * In the case of detecting unknown breakpoint, this could be + * a padding INT3 between functions. Let's check that all the + * rest of the bytes are also INT3. + */ if (insn.opcode.bytes[0] == INT3_INSN_OPCODE) - return 0; + return is_padding_int3(addr, paddr - offset + size) ? 1 : 0; + /* Recover address */ insn.kaddr = (void *)addr; insn.next_byte = (void *)(addr + insn.length); --- linux-azure-5.8-5.8.0.orig/arch/x86/kernel/nmi.c +++ linux-azure-5.8-5.8.0/arch/x86/kernel/nmi.c @@ -102,7 +102,6 @@ static void nmi_check_duration(struct nmiaction *action, u64 duration) { - u64 whole_msecs = READ_ONCE(action->max_duration); int remainder_ns, decimal_msecs; if (duration < nmi_longest_ns || duration < action->max_duration) @@ -110,12 +109,12 @@ action->max_duration = duration; - remainder_ns = do_div(whole_msecs, (1000 * 1000)); + remainder_ns = do_div(duration, (1000 * 1000)); decimal_msecs = remainder_ns / 1000; printk_ratelimited(KERN_INFO "INFO: NMI handler (%ps) took too long to run: %lld.%03d msecs\n", - action->handler, whole_msecs, decimal_msecs); + action->handler, duration, decimal_msecs); } static int nmi_handle(unsigned int type, struct pt_regs *regs) --- linux-azure-5.8-5.8.0.orig/arch/x86/kernel/process.c +++ linux-azure-5.8-5.8.0/arch/x86/kernel/process.c @@ -42,6 +42,7 @@ #include #include #include +#include #include "process.h" @@ -133,17 +134,19 @@ fork_frame = container_of(childregs, struct fork_frame, regs); frame = &fork_frame->frame; - frame->bp = 0; + frame->bp = encode_frame_pointer(childregs); frame->ret_addr = (unsigned long) ret_from_fork; p->thread.sp = (unsigned long) fork_frame; p->thread.io_bitmap = NULL; memset(p->thread.ptrace_bps, 0, sizeof(p->thread.ptrace_bps)); #ifdef CONFIG_X86_64 - savesegment(gs, p->thread.gsindex); - p->thread.gsbase = p->thread.gsindex ? 0 : current->thread.gsbase; - savesegment(fs, p->thread.fsindex); - p->thread.fsbase = p->thread.fsindex ? 0 : current->thread.fsbase; + current_save_fsgs(); + p->thread.fsindex = current->thread.fsindex; + p->thread.fsbase = current->thread.fsbase; + p->thread.gsindex = current->thread.gsindex; + p->thread.gsbase = current->thread.gsbase; + savesegment(es, p->thread.es); savesegment(ds, p->thread.ds); #else --- linux-azure-5.8-5.8.0.orig/arch/x86/kernel/process_64.c +++ linux-azure-5.8-5.8.0/arch/x86/kernel/process_64.c @@ -150,6 +150,56 @@ }; /* + * Out of line to be protected from kprobes and tracing. If this would be + * traced or probed than any access to a per CPU variable happens with + * the wrong GS. + * + * It is not used on Xen paravirt. When paravirt support is needed, it + * needs to be renamed with native_ prefix. + */ +static noinstr unsigned long __rdgsbase_inactive(void) +{ + unsigned long gsbase; + + lockdep_assert_irqs_disabled(); + + if (!static_cpu_has(X86_FEATURE_XENPV)) { + native_swapgs(); + gsbase = rdgsbase(); + native_swapgs(); + } else { + instrumentation_begin(); + rdmsrl(MSR_KERNEL_GS_BASE, gsbase); + instrumentation_end(); + } + + return gsbase; +} + +/* + * Out of line to be protected from kprobes and tracing. If this would be + * traced or probed than any access to a per CPU variable happens with + * the wrong GS. + * + * It is not used on Xen paravirt. When paravirt support is needed, it + * needs to be renamed with native_ prefix. + */ +static noinstr void __wrgsbase_inactive(unsigned long gsbase) +{ + lockdep_assert_irqs_disabled(); + + if (!static_cpu_has(X86_FEATURE_XENPV)) { + native_swapgs(); + wrgsbase(gsbase); + native_swapgs(); + } else { + instrumentation_begin(); + wrmsrl(MSR_KERNEL_GS_BASE, gsbase); + instrumentation_end(); + } +} + +/* * Saves the FS or GS base for an outgoing thread if FSGSBASE extensions are * not available. The goal is to be reasonably fast on non-FSGSBASE systems. * It's forcibly inlined because it'll generate better code and this function @@ -198,22 +248,35 @@ { savesegment(fs, task->thread.fsindex); savesegment(gs, task->thread.gsindex); - save_base_legacy(task, task->thread.fsindex, FS); - save_base_legacy(task, task->thread.gsindex, GS); + if (static_cpu_has(X86_FEATURE_FSGSBASE)) { + /* + * If FSGSBASE is enabled, we can't make any useful guesses + * about the base, and user code expects us to save the current + * value. Fortunately, reading the base directly is efficient. + */ + task->thread.fsbase = rdfsbase(); + task->thread.gsbase = __rdgsbase_inactive(); + } else { + save_base_legacy(task, task->thread.fsindex, FS); + save_base_legacy(task, task->thread.gsindex, GS); + } } -#if IS_ENABLED(CONFIG_KVM) /* * While a process is running,current->thread.fsbase and current->thread.gsbase - * may not match the corresponding CPU registers (see save_base_legacy()). KVM - * wants an efficient way to save and restore FSBASE and GSBASE. - * When FSGSBASE extensions are enabled, this will have to use RD{FS,GS}BASE. + * may not match the corresponding CPU registers (see save_base_legacy()). */ -void save_fsgs_for_kvm(void) +void current_save_fsgs(void) { + unsigned long flags; + + /* Interrupts need to be off for FSGSBASE */ + local_irq_save(flags); save_fsgs(current); + local_irq_restore(flags); } -EXPORT_SYMBOL_GPL(save_fsgs_for_kvm); +#if IS_ENABLED(CONFIG_KVM) +EXPORT_SYMBOL_GPL(current_save_fsgs); #endif static __always_inline void loadseg(enum which_selector which, @@ -278,14 +341,26 @@ static __always_inline void x86_fsgsbase_load(struct thread_struct *prev, struct thread_struct *next) { - load_seg_legacy(prev->fsindex, prev->fsbase, - next->fsindex, next->fsbase, FS); - load_seg_legacy(prev->gsindex, prev->gsbase, - next->gsindex, next->gsbase, GS); + if (static_cpu_has(X86_FEATURE_FSGSBASE)) { + /* Update the FS and GS selectors if they could have changed. */ + if (unlikely(prev->fsindex || next->fsindex)) + loadseg(FS, next->fsindex); + if (unlikely(prev->gsindex || next->gsindex)) + loadseg(GS, next->gsindex); + + /* Update the bases. */ + wrfsbase(next->fsbase); + __wrgsbase_inactive(next->gsbase); + } else { + load_seg_legacy(prev->fsindex, prev->fsbase, + next->fsindex, next->fsbase, FS); + load_seg_legacy(prev->gsindex, prev->gsbase, + next->gsindex, next->gsbase, GS); + } } -static unsigned long x86_fsgsbase_read_task(struct task_struct *task, - unsigned short selector) +unsigned long x86_fsgsbase_read_task(struct task_struct *task, + unsigned short selector) { unsigned short idx = selector >> 3; unsigned long base; @@ -314,7 +389,7 @@ */ mutex_lock(&task->mm->context.lock); ldt = task->mm->context.ldt; - if (unlikely(idx >= ldt->nr_entries)) + if (unlikely(!ldt || idx >= ldt->nr_entries)) base = 0; else base = get_desc_base(ldt->entries + idx); @@ -327,13 +402,44 @@ return base; } +unsigned long x86_gsbase_read_cpu_inactive(void) +{ + unsigned long gsbase; + + if (static_cpu_has(X86_FEATURE_FSGSBASE)) { + unsigned long flags; + + local_irq_save(flags); + gsbase = __rdgsbase_inactive(); + local_irq_restore(flags); + } else { + rdmsrl(MSR_KERNEL_GS_BASE, gsbase); + } + + return gsbase; +} + +void x86_gsbase_write_cpu_inactive(unsigned long gsbase) +{ + if (static_cpu_has(X86_FEATURE_FSGSBASE)) { + unsigned long flags; + + local_irq_save(flags); + __wrgsbase_inactive(gsbase); + local_irq_restore(flags); + } else { + wrmsrl(MSR_KERNEL_GS_BASE, gsbase); + } +} + unsigned long x86_fsbase_read_task(struct task_struct *task) { unsigned long fsbase; if (task == current) fsbase = x86_fsbase_read_cpu(); - else if (task->thread.fsindex == 0) + else if (static_cpu_has(X86_FEATURE_FSGSBASE) || + (task->thread.fsindex == 0)) fsbase = task->thread.fsbase; else fsbase = x86_fsgsbase_read_task(task, task->thread.fsindex); @@ -347,7 +453,8 @@ if (task == current) gsbase = x86_gsbase_read_cpu_inactive(); - else if (task->thread.gsindex == 0) + else if (static_cpu_has(X86_FEATURE_FSGSBASE) || + (task->thread.gsindex == 0)) gsbase = task->thread.gsbase; else gsbase = x86_fsgsbase_read_task(task, task->thread.gsindex); --- linux-azure-5.8-5.8.0.orig/arch/x86/kernel/ptrace.c +++ linux-azure-5.8-5.8.0/arch/x86/kernel/ptrace.c @@ -281,17 +281,9 @@ return -EIO; /* - * This function has some ABI oddities. - * - * A 32-bit ptracer probably expects that writing FS or GS will change - * FSBASE or GSBASE respectively. In the absence of FSGSBASE support, - * this code indeed has that effect. When FSGSBASE is added, this - * will require a special case. - * - * For existing 64-bit ptracers, writing FS or GS *also* currently - * changes the base if the selector is nonzero the next time the task - * is run. This behavior may not be needed, and trying to preserve it - * when FSGSBASE is added would be complicated at best. + * Writes to FS and GS will change the stored selector. Whether + * this changes the segment base as well depends on whether + * FSGSBASE is enabled. */ switch (offset) { @@ -379,25 +371,12 @@ case offsetof(struct user_regs_struct,fs_base): if (value >= TASK_SIZE_MAX) return -EIO; - /* - * When changing the FS base, use do_arch_prctl_64() - * to set the index to zero and to set the base - * as requested. - * - * NB: This behavior is nonsensical and likely needs to - * change when FSGSBASE support is added. - */ - if (child->thread.fsbase != value) - return do_arch_prctl_64(child, ARCH_SET_FS, value); + x86_fsbase_write_task(child, value); return 0; case offsetof(struct user_regs_struct,gs_base): - /* - * Exactly the same here as the %fs handling above. - */ if (value >= TASK_SIZE_MAX) return -EIO; - if (child->thread.gsbase != value) - return do_arch_prctl_64(child, ARCH_SET_GS, value); + x86_gsbase_write_task(child, value); return 0; #endif } @@ -880,14 +859,39 @@ static int putreg32(struct task_struct *child, unsigned regno, u32 value) { struct pt_regs *regs = task_pt_regs(child); + int ret; switch (regno) { SEG32(cs); SEG32(ds); SEG32(es); - SEG32(fs); - SEG32(gs); + + /* + * A 32-bit ptracer on a 64-bit kernel expects that writing + * FS or GS will also update the base. This is needed for + * operations like PTRACE_SETREGS to fully restore a saved + * CPU state. + */ + + case offsetof(struct user32, regs.fs): + ret = set_segment_reg(child, + offsetof(struct user_regs_struct, fs), + value); + if (ret == 0) + child->thread.fsbase = + x86_fsgsbase_read_task(child, value); + return ret; + + case offsetof(struct user32, regs.gs): + ret = set_segment_reg(child, + offsetof(struct user_regs_struct, gs), + value); + if (ret == 0) + child->thread.gsbase = + x86_fsgsbase_read_task(child, value); + return ret; + SEG32(ss); R32(ebx, bx); --- linux-azure-5.8-5.8.0.orig/arch/x86/kernel/quirks.c +++ linux-azure-5.8-5.8.0/arch/x86/kernel/quirks.c @@ -8,6 +8,7 @@ #include #include +#include #if defined(CONFIG_X86_IO_APIC) && defined(CONFIG_SMP) && defined(CONFIG_PCI) @@ -624,10 +625,6 @@ DECLARE_PCI_FIXUP_FINAL(PCI_VENDOR_ID_AMD, PCI_DEVICE_ID_AMD_16H_NB_F3, amd_disable_seq_and_redirect_scrub); -#if defined(CONFIG_X86_64) && defined(CONFIG_X86_MCE) -#include -#include - /* Ivy Bridge, Haswell, Broadwell */ static void quirk_intel_brickland_xeon_ras_cap(struct pci_dev *pdev) { @@ -636,7 +633,7 @@ pci_read_config_dword(pdev, 0x84, &capid0); if (capid0 & 0x10) - static_branch_inc(&mcsafe_key); + enable_copy_mc_fragile(); } /* Skylake */ @@ -653,7 +650,7 @@ * enabled, so memory machine check recovery is also enabled. */ if ((capid0 & 0xc0) == 0xc0 || (capid5 & 0x1e0)) - static_branch_inc(&mcsafe_key); + enable_copy_mc_fragile(); } DECLARE_PCI_FIXUP_EARLY(PCI_VENDOR_ID_INTEL, 0x0ec3, quirk_intel_brickland_xeon_ras_cap); @@ -661,7 +658,6 @@ DECLARE_PCI_FIXUP_EARLY(PCI_VENDOR_ID_INTEL, 0x6fc0, quirk_intel_brickland_xeon_ras_cap); DECLARE_PCI_FIXUP_EARLY(PCI_VENDOR_ID_INTEL, 0x2083, quirk_intel_purley_xeon_ras_cap); #endif -#endif bool x86_apple_machine; EXPORT_SYMBOL(x86_apple_machine); --- linux-azure-5.8-5.8.0.orig/arch/x86/kernel/reboot.c +++ linux-azure-5.8-5.8.0/arch/x86/kernel/reboot.c @@ -32,6 +32,7 @@ #include #include #include +#include /* * Power off function, if any @@ -486,7 +487,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"), + }, + }, { } }; @@ -538,31 +578,21 @@ local_irq_disable(); /* - * We need to disable VMX on all CPUs before rebooting, otherwise - * we risk hanging up the machine, because the CPU ignores INIT - * signals when VMX is enabled. - * - * We can't take any locks and we may be on an inconsistent - * state, so we use NMIs as IPIs to tell the other CPUs to disable - * VMX and halt. + * Disable VMX on all CPUs before rebooting, otherwise we risk hanging + * the machine, because the CPU blocks INIT when it's in VMX root. * - * For safety, we will avoid running the nmi_shootdown_cpus() - * stuff unnecessarily, but we don't have a way to check - * if other CPUs have VMX enabled. So we will call it only if the - * CPU we are running on has VMX enabled. + * We can't take any locks and we may be on an inconsistent state, so + * use NMIs as IPIs to tell the other CPUs to exit VMX root and halt. * - * We will miss cases where VMX is not enabled on all CPUs. This - * shouldn't do much harm because KVM always enable VMX on all - * CPUs anyway. But we can miss it on the small window where KVM - * is still enabling VMX. + * Do the NMI shootdown even if VMX if off on _this_ CPU, as that + * doesn't prevent a different CPU from being in VMX root operation. */ - if (cpu_has_vmx() && cpu_vmx_enabled()) { - /* Disable VMX on this CPU. */ - cpu_vmxoff(); + if (cpu_has_vmx()) { + /* Safely force _this_ CPU out of VMX root operation. */ + __cpu_emergency_vmxoff(); - /* Halt and disable VMX on the other CPUs */ + /* Halt and exit VMX root operation on the other CPUs. */ nmi_shootdown_cpus(vmxoff_nmi); - } } --- linux-azure-5.8-5.8.0.orig/arch/x86/kernel/relocate_kernel_32.S +++ linux-azure-5.8-5.8.0/arch/x86/kernel/relocate_kernel_32.S @@ -8,6 +8,7 @@ #include #include #include +#include /* * Must be relocatable PIC code callable as a C function @@ -165,6 +166,7 @@ movl CP_PA_SWAP_PAGE(%edi), %esp addl $PAGE_SIZE, %esp 2: + ANNOTATE_RETPOLINE_SAFE call *%edx /* get the re-entry point of the peer system */ --- linux-azure-5.8-5.8.0.orig/arch/x86/kernel/setup.c +++ linux-azure-5.8-5.8.0/arch/x86/kernel/setup.c @@ -18,6 +18,7 @@ #include #include #include +#include #include #include @@ -979,6 +980,13 @@ if (efi_enabled(EFI_BOOT)) efi_init(); + 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(); /* @@ -1130,19 +1138,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-azure-5.8-5.8.0.orig/arch/x86/kernel/setup_percpu.c +++ linux-azure-5.8-5.8.0/arch/x86/kernel/setup_percpu.c @@ -287,9 +287,9 @@ /* * Sync back kernel address range again. We already did this in * setup_arch(), but percpu data also needs to be available in - * the smpboot asm and arch_sync_kernel_mappings() doesn't sync to - * swapper_pg_dir on 32-bit. The per-cpu mappings need to be available - * there too. + * the smpboot asm. We can't reliably pick up percpu mappings + * using vmalloc_fault(), because exception dispatch needs + * percpu data. * * FIXME: Can the later sync in setup_cpu_entry_areas() replace * this call? --- linux-azure-5.8-5.8.0.orig/arch/x86/kernel/smpboot.c +++ linux-azure-5.8-5.8.0/arch/x86/kernel/smpboot.c @@ -56,6 +56,7 @@ #include #include #include +#include #include #include @@ -1603,14 +1604,28 @@ if (ret) return ret; - /* - * Disable the local APIC. Otherwise IPI broadcasts will reach - * it. It still responds normally to INIT, NMI, SMI, and SIPI - * messages. - */ - apic_soft_disable(); cpu_disable_common(); + /* + * Disable the local APIC. Otherwise IPI broadcasts will reach + * it. It still responds normally to INIT, NMI, SMI, and SIPI + * messages. + * + * Disabling the APIC must happen after cpu_disable_common() + * which invokes fixup_irqs(). + * + * Disabling the APIC preserves already set bits in IRR, but + * an interrupt arriving after disabling the local APIC does not + * set the corresponding IRR bit. + * + * fixup_irqs() scans IRR for set bits so it can raise a not + * yet handled interrupt on the new destination CPU via an IPI + * but obviously it can't do so for IRR bits which are not set. + * IOW, interrupts arriving after disabling the local APIC will + * be lost. + */ + apic_soft_disable(); + return 0; } @@ -1777,6 +1792,7 @@ #endif +#ifdef CONFIG_X86_64 /* * APERF/MPERF frequency ratio computation. * @@ -1823,6 +1839,7 @@ arch_max_freq_ratio = turbo_disabled ? SCHED_CAPACITY_SCALE : arch_turbo_freq_ratio; } +EXPORT_SYMBOL_GPL(arch_set_max_freq_ratio); static bool turbo_disabled(void) { @@ -1975,6 +1992,7 @@ static bool intel_set_max_freq_ratio(void) { u64 base_freq, turbo_freq; + u64 turbo_ratio; if (slv_set_max_freq_ratio(&base_freq, &turbo_freq)) goto out; @@ -2000,15 +2018,23 @@ /* * Some hypervisors advertise X86_FEATURE_APERFMPERF * but then fill all MSR's with zeroes. + * Some CPUs have turbo boost but don't declare any turbo ratio + * in MSR_TURBO_RATIO_LIMIT. */ - if (!base_freq) { - pr_debug("Couldn't determine cpu base frequency, necessary for scale-invariant accounting.\n"); + if (!base_freq || !turbo_freq) { + pr_debug("Couldn't determine cpu base or turbo frequency, necessary for scale-invariant accounting.\n"); return false; } - arch_turbo_freq_ratio = div_u64(turbo_freq * SCHED_CAPACITY_SCALE, - base_freq); + turbo_ratio = div_u64(turbo_freq * SCHED_CAPACITY_SCALE, base_freq); + if (!turbo_ratio) { + pr_debug("Non-zero turbo and base frequencies led to a 0 ratio.\n"); + return false; + } + + arch_turbo_freq_ratio = turbo_ratio; arch_set_max_freq_ratio(turbo_disabled()); + return true; } @@ -2048,11 +2074,19 @@ } } +static void disable_freq_invariance_workfn(struct work_struct *work) +{ + static_branch_disable(&arch_scale_freq_key); +} + +static DECLARE_WORK(disable_freq_invariance_work, + disable_freq_invariance_workfn); + DEFINE_PER_CPU(unsigned long, arch_freq_scale) = SCHED_CAPACITY_SCALE; void arch_scale_freq_tick(void) { - u64 freq_scale; + u64 freq_scale = SCHED_CAPACITY_SCALE; u64 aperf, mperf; u64 acnt, mcnt; @@ -2064,19 +2098,32 @@ acnt = aperf - this_cpu_read(arch_prev_aperf); mcnt = mperf - this_cpu_read(arch_prev_mperf); - if (!mcnt) - return; this_cpu_write(arch_prev_aperf, aperf); this_cpu_write(arch_prev_mperf, mperf); - acnt <<= 2*SCHED_CAPACITY_SHIFT; - mcnt *= arch_max_freq_ratio; + if (check_shl_overflow(acnt, 2*SCHED_CAPACITY_SHIFT, &acnt)) + goto error; + + if (check_mul_overflow(mcnt, arch_max_freq_ratio, &mcnt) || !mcnt) + goto error; freq_scale = div64_u64(acnt, mcnt); + if (!freq_scale) + goto error; if (freq_scale > SCHED_CAPACITY_SCALE) freq_scale = SCHED_CAPACITY_SCALE; this_cpu_write(arch_freq_scale, freq_scale); + return; + +error: + pr_warn("Scheduler frequency invariance went wobbly, disabling!\n"); + schedule_work(&disable_freq_invariance_work); +} +#else +static inline void init_freq_invariance(bool secondary) +{ } +#endif /* CONFIG_X86_64 */ --- linux-azure-5.8-5.8.0.orig/arch/x86/kernel/tboot.c +++ linux-azure-5.8-5.8.0/arch/x86/kernel/tboot.c @@ -514,16 +514,10 @@ if (!tboot_enabled()) return 0; - if (intel_iommu_tboot_noforce) - return 1; - - if (no_iommu || swiotlb || dmar_disabled) + if (no_iommu || dmar_disabled) pr_warn("Forcing Intel-IOMMU to enabled\n"); dmar_disabled = 0; -#ifdef CONFIG_SWIOTLB - swiotlb = 0; -#endif no_iommu = 0; return 1; --- linux-azure-5.8-5.8.0.orig/arch/x86/kernel/traps.c +++ linux-azure-5.8-5.8.0/arch/x86/kernel/traps.c @@ -196,7 +196,7 @@ DEFINE_IDTENTRY(exc_divide_error) { - do_error_trap(regs, 0, "divide_error", X86_TRAP_DE, SIGFPE, + do_error_trap(regs, 0, "divide error", X86_TRAP_DE, SIGFPE, FPE_INTDIV, error_get_trap_addr(regs)); } @@ -299,11 +299,12 @@ local_irq_enable(); if (handle_user_split_lock(regs, error_code)) - return; + goto out; do_trap(X86_TRAP_AC, SIGBUS, "alignment check", regs, error_code, BUS_ADRALN, NULL); +out: local_irq_disable(); } @@ -733,20 +734,9 @@ #endif } -static __always_inline void debug_enter(unsigned long *dr6, unsigned long *dr7) +static __always_inline unsigned long debug_read_clear_dr6(void) { - /* - * Disable breakpoints during exception handling; recursive exceptions - * are exceedingly 'fun'. - * - * Since this function is NOKPROBE, and that also applies to - * HW_BREAKPOINT_X, we can't hit a breakpoint before this (XXX except a - * HW_BREAKPOINT_W on our stack) - * - * Entry text is excluded for HW_BP_X and cpu_entry_area, which - * includes the entry stack is excluded for everything. - */ - *dr7 = local_db_save(); + unsigned long dr6; /* * The Intel SDM says: @@ -759,15 +749,12 @@ * * Keep it simple: clear DR6 immediately. */ - get_debugreg(*dr6, 6); + get_debugreg(dr6, 6); set_debugreg(0, 6); /* Filter out all the reserved bits which are preset to 1 */ - *dr6 &= ~DR6_RESERVED; -} + dr6 &= ~DR6_RESERVED; -static __always_inline void debug_exit(unsigned long dr7) -{ - local_db_restore(dr7); + return dr6; } /* @@ -867,6 +854,19 @@ static __always_inline void exc_debug_kernel(struct pt_regs *regs, unsigned long dr6) { + /* + * Disable breakpoints during exception handling; recursive exceptions + * are exceedingly 'fun'. + * + * Since this function is NOKPROBE, and that also applies to + * HW_BREAKPOINT_X, we can't hit a breakpoint before this (XXX except a + * HW_BREAKPOINT_W on our stack) + * + * Entry text is excluded for HW_BP_X and cpu_entry_area, which + * includes the entry stack is excluded for everything. + */ + unsigned long dr7 = local_db_save(); + nmi_enter(); instrumentation_begin(); trace_hardirqs_off_finish(); @@ -890,6 +890,8 @@ trace_hardirqs_on_prepare(); instrumentation_end(); nmi_exit(); + + local_db_restore(dr7); } static __always_inline void exc_debug_user(struct pt_regs *regs, @@ -901,6 +903,15 @@ */ WARN_ON_ONCE(!user_mode(regs)); + /* + * NB: We can't easily clear DR7 here because + * idtentry_exit_to_usermode() can invoke ptrace, schedule, access + * user memory, etc. This means that a recursive #DB is possible. If + * this happens, that #DB will hit exc_debug_kernel() and clear DR7. + * Since we're not on the IST stack right now, everything will be + * fine. + */ + idtentry_enter_user(regs); instrumentation_begin(); @@ -913,36 +924,24 @@ /* IST stack entry */ DEFINE_IDTENTRY_DEBUG(exc_debug) { - unsigned long dr6, dr7; - - debug_enter(&dr6, &dr7); - exc_debug_kernel(regs, dr6); - debug_exit(dr7); + exc_debug_kernel(regs, debug_read_clear_dr6()); } /* User entry, runs on regular task stack */ DEFINE_IDTENTRY_DEBUG_USER(exc_debug) { - unsigned long dr6, dr7; - - debug_enter(&dr6, &dr7); - exc_debug_user(regs, dr6); - debug_exit(dr7); + exc_debug_user(regs, debug_read_clear_dr6()); } #else /* 32 bit does not have separate entry points. */ DEFINE_IDTENTRY_RAW(exc_debug) { - unsigned long dr6, dr7; - - debug_enter(&dr6, &dr7); + unsigned long dr6 = debug_read_clear_dr6(); if (user_mode(regs)) exc_debug_user(regs, dr6); else exc_debug_kernel(regs, dr6); - - debug_exit(dr7); } #endif --- linux-azure-5.8-5.8.0.orig/arch/x86/kernel/tsc_msr.c +++ linux-azure-5.8-5.8.0/arch/x86/kernel/tsc_msr.c @@ -133,10 +133,15 @@ .mask = 0x0f, }; -/* 24 MHz crystal? : 24 * 13 / 4 = 78 MHz */ +/* + * 24 MHz crystal? : 24 * 13 / 4 = 78 MHz + * Frequency step for Lightning Mountain SoC is fixed to 78 MHz, + * so all the frequency entries are 78000. + */ static const struct freq_desc freq_desc_lgm = { .use_msr_plat = true, - .freqs = { 78000, 78000, 78000, 78000, 78000, 78000, 78000, 78000 }, + .freqs = { 78000, 78000, 78000, 78000, 78000, 78000, 78000, 78000, + 78000, 78000, 78000, 78000, 78000, 78000, 78000, 78000 }, .mask = 0x0f, }; --- linux-azure-5.8-5.8.0.orig/arch/x86/kernel/unwind_orc.c +++ linux-azure-5.8-5.8.0/arch/x86/kernel/unwind_orc.c @@ -320,19 +320,12 @@ unsigned long *unwind_get_return_address_ptr(struct unwind_state *state) { - struct task_struct *task = state->task; - if (unwind_done(state)) return NULL; if (state->regs) return &state->regs->ip; - if (task != current && state->sp == task->thread.sp) { - struct inactive_task_frame *frame = (void *)task->thread.sp; - return &frame->ret_addr; - } - if (state->sp) return (unsigned long *)state->sp - 1; @@ -662,7 +655,7 @@ } else { struct inactive_task_frame *frame = (void *)task->thread.sp; - state->sp = task->thread.sp; + state->sp = task->thread.sp + sizeof(*frame); state->bp = READ_ONCE_NOCHECK(frame->bp); state->ip = READ_ONCE_NOCHECK(frame->ret_addr); state->signal = (void *)state->ip == ret_from_fork; --- linux-azure-5.8-5.8.0.orig/arch/x86/kernel/uprobes.c +++ linux-azure-5.8-5.8.0/arch/x86/kernel/uprobes.c @@ -255,12 +255,13 @@ static bool is_prefix_bad(struct insn *insn) { + insn_byte_t p; int i; - for (i = 0; i < insn->prefixes.nbytes; i++) { + for_each_insn_prefix(insn, i, p) { insn_attr_t attr; - attr = inat_get_opcode_attribute(insn->prefixes.bytes[i]); + attr = inat_get_opcode_attribute(p); switch (attr) { case INAT_MAKE_PREFIX(INAT_PFX_ES): case INAT_MAKE_PREFIX(INAT_PFX_CS): @@ -715,6 +716,7 @@ static int branch_setup_xol_ops(struct arch_uprobe *auprobe, struct insn *insn) { u8 opc1 = OPCODE1(insn); + insn_byte_t p; int i; switch (opc1) { @@ -746,8 +748,8 @@ * Intel and AMD behavior differ in 64-bit mode: Intel ignores 66 prefix. * No one uses these insns, reject any branch insns with such prefix. */ - for (i = 0; i < insn->prefixes.nbytes; i++) { - if (insn->prefixes.bytes[i] == 0x66) + for_each_insn_prefix(insn, i, p) { + if (p == 0x66) return -ENOTSUPP; } --- linux-azure-5.8-5.8.0.orig/arch/x86/kvm/cpuid.c +++ linux-azure-5.8-5.8.0/arch/x86/kvm/cpuid.c @@ -244,7 +244,7 @@ if (cpuid->nent < vcpu->arch.cpuid_nent) goto out; r = -EFAULT; - if (copy_to_user(entries, &vcpu->arch.cpuid_entries, + if (copy_to_user(entries, vcpu->arch.cpuid_entries, vcpu->arch.cpuid_nent * sizeof(struct kvm_cpuid_entry2))) goto out; return 0; --- linux-azure-5.8-5.8.0.orig/arch/x86/kvm/cpuid.h +++ linux-azure-5.8-5.8.0/arch/x86/kvm/cpuid.h @@ -257,6 +257,20 @@ return x86_stepping(best->eax); } +static inline bool guest_has_spec_ctrl_msr(struct kvm_vcpu *vcpu) +{ + return (guest_cpuid_has(vcpu, X86_FEATURE_SPEC_CTRL) || + guest_cpuid_has(vcpu, X86_FEATURE_AMD_STIBP) || + guest_cpuid_has(vcpu, X86_FEATURE_AMD_IBRS) || + guest_cpuid_has(vcpu, X86_FEATURE_AMD_SSBD)); +} + +static inline bool guest_has_pred_cmd_msr(struct kvm_vcpu *vcpu) +{ + return (guest_cpuid_has(vcpu, X86_FEATURE_SPEC_CTRL) || + guest_cpuid_has(vcpu, X86_FEATURE_AMD_IBPB)); +} + static inline bool supports_cpuid_fault(struct kvm_vcpu *vcpu) { return vcpu->arch.msr_platform_info & MSR_PLATFORM_INFO_CPUID_FAULT; --- linux-azure-5.8-5.8.0.orig/arch/x86/kvm/emulate.c +++ linux-azure-5.8-5.8.0/arch/x86/kvm/emulate.c @@ -2559,9 +2559,9 @@ ctxt->_eip = GET_SMSTATE(u64, smstate, 0x7f78); ctxt->eflags = GET_SMSTATE(u32, smstate, 0x7f70) | X86_EFLAGS_FIXED; - val = GET_SMSTATE(u32, smstate, 0x7f68); + val = GET_SMSTATE(u64, smstate, 0x7f68); ctxt->ops->set_dr(ctxt, 6, (val & DR6_VOLATILE) | DR6_FIXED_1); - val = GET_SMSTATE(u32, smstate, 0x7f60); + val = GET_SMSTATE(u64, smstate, 0x7f60); ctxt->ops->set_dr(ctxt, 7, (val & DR7_VOLATILE) | DR7_FIXED_1); cr0 = GET_SMSTATE(u64, smstate, 0x7f58); @@ -2867,6 +2867,8 @@ ops->get_msr(ctxt, MSR_IA32_SYSENTER_ESP, &msr_data); *reg_write(ctxt, VCPU_REGS_RSP) = (efer & EFER_LMA) ? msr_data : (u32)msr_data; + if (efer & EFER_LMA) + ctxt->mode = X86EMUL_MODE_PROT64; return X86EMUL_CONTINUE; } @@ -3594,7 +3596,7 @@ u64 tsc_aux = 0; if (ctxt->ops->get_msr(ctxt, MSR_TSC_AUX, &tsc_aux)) - return emulate_gp(ctxt, 0); + return emulate_ud(ctxt); ctxt->dst.val = tsc_aux; return X86EMUL_CONTINUE; } @@ -4020,6 +4022,12 @@ return X86EMUL_CONTINUE; } +static int em_clflushopt(struct x86_emulate_ctxt *ctxt) +{ + /* emulating clflushopt regardless of cpuid */ + return X86EMUL_CONTINUE; +} + static int em_movsxd(struct x86_emulate_ctxt *ctxt) { ctxt->dst.val = (s32) ctxt->src.val; @@ -4559,7 +4567,7 @@ }; static const struct gprefix pfx_0f_ae_7 = { - I(SrcMem | ByteOp, em_clflush), N, N, N, + I(SrcMem | ByteOp, em_clflush), I(SrcMem | ByteOp, em_clflushopt), N, N, }; static const struct group_dual group15 = { { --- linux-azure-5.8-5.8.0.orig/arch/x86/kvm/ioapic.c +++ linux-azure-5.8-5.8.0/arch/x86/kvm/ioapic.c @@ -197,12 +197,9 @@ /* * If no longer has pending EOI in LAPICs, update - * EOI for this vetor. + * EOI for this vector. */ rtc_irq_eoi(ioapic, vcpu, entry->fields.vector); - kvm_ioapic_update_eoi_one(vcpu, ioapic, - entry->fields.trig_mode, - irq); break; } } --- linux-azure-5.8-5.8.0.orig/arch/x86/kvm/irq.c +++ linux-azure-5.8-5.8.0/arch/x86/kvm/irq.c @@ -40,29 +40,10 @@ * check if there is pending interrupt from * non-APIC source without intack. */ -static int kvm_cpu_has_extint(struct kvm_vcpu *v) -{ - u8 accept = kvm_apic_accept_pic_intr(v); - - if (accept) { - if (irqchip_split(v->kvm)) - return pending_userspace_extint(v); - else - return v->kvm->arch.vpic->output; - } else - return 0; -} - -/* - * check if there is injectable interrupt: - * when virtual interrupt delivery enabled, - * interrupt from apic will handled by hardware, - * we don't need to check it here. - */ -int kvm_cpu_has_injectable_intr(struct kvm_vcpu *v) +int kvm_cpu_has_extint(struct kvm_vcpu *v) { /* - * FIXME: interrupt.injected represents an interrupt that it's + * FIXME: interrupt.injected represents an interrupt whose * side-effects have already been applied (e.g. bit from IRR * already moved to ISR). Therefore, it is incorrect to rely * on interrupt.injected to know if there is a pending @@ -75,6 +56,23 @@ if (!lapic_in_kernel(v)) return v->arch.interrupt.injected; + if (!kvm_apic_accept_pic_intr(v)) + return 0; + + if (irqchip_split(v->kvm)) + return pending_userspace_extint(v); + else + return v->kvm->arch.vpic->output; +} + +/* + * check if there is injectable interrupt: + * when virtual interrupt delivery enabled, + * interrupt from apic will handled by hardware, + * we don't need to check it here. + */ +int kvm_cpu_has_injectable_intr(struct kvm_vcpu *v) +{ if (kvm_cpu_has_extint(v)) return 1; @@ -91,20 +89,6 @@ */ int kvm_cpu_has_interrupt(struct kvm_vcpu *v) { - /* - * FIXME: interrupt.injected represents an interrupt that it's - * side-effects have already been applied (e.g. bit from IRR - * already moved to ISR). Therefore, it is incorrect to rely - * on interrupt.injected to know if there is a pending - * interrupt in the user-mode LAPIC. - * This leads to nVMX/nSVM not be able to distinguish - * if it should exit from L2 to L1 on EXTERNAL_INTERRUPT on - * pending interrupt or should re-inject an injected - * interrupt. - */ - if (!lapic_in_kernel(v)) - return v->arch.interrupt.injected; - if (kvm_cpu_has_extint(v)) return 1; @@ -118,16 +102,21 @@ */ static int kvm_cpu_get_extint(struct kvm_vcpu *v) { - if (kvm_cpu_has_extint(v)) { - if (irqchip_split(v->kvm)) { - int vector = v->arch.pending_external_vector; - - v->arch.pending_external_vector = -1; - return vector; - } else - return kvm_pic_read_irq(v->kvm); /* PIC */ - } else + if (!kvm_cpu_has_extint(v)) { + WARN_ON(!lapic_in_kernel(v)); return -1; + } + + if (!lapic_in_kernel(v)) + return v->arch.interrupt.nr; + + if (irqchip_split(v->kvm)) { + int vector = v->arch.pending_external_vector; + + v->arch.pending_external_vector = -1; + return vector; + } else + return kvm_pic_read_irq(v->kvm); /* PIC */ } /* @@ -135,13 +124,7 @@ */ int kvm_cpu_get_interrupt(struct kvm_vcpu *v) { - int vector; - - if (!lapic_in_kernel(v)) - return v->arch.interrupt.nr; - - vector = kvm_cpu_get_extint(v); - + int vector = kvm_cpu_get_extint(v); if (vector != -1) return vector; /* PIC */ --- linux-azure-5.8-5.8.0.orig/arch/x86/kvm/kvm_cache_regs.h +++ linux-azure-5.8-5.8.0/arch/x86/kvm/kvm_cache_regs.h @@ -7,7 +7,7 @@ #define KVM_POSSIBLE_CR0_GUEST_BITS X86_CR0_TS #define KVM_POSSIBLE_CR4_GUEST_BITS \ (X86_CR4_PVI | X86_CR4_DE | X86_CR4_PCE | X86_CR4_OSFXSR \ - | X86_CR4_OSXMMEXCPT | X86_CR4_LA57 | X86_CR4_PGE | X86_CR4_TSD) + | X86_CR4_OSXMMEXCPT | X86_CR4_PGE | X86_CR4_TSD) #define BUILD_KVM_GPR_ACCESSORS(lname, uname) \ static __always_inline unsigned long kvm_##lname##_read(struct kvm_vcpu *vcpu)\ --- linux-azure-5.8-5.8.0.orig/arch/x86/kvm/lapic.c +++ linux-azure-5.8-5.8.0/arch/x86/kvm/lapic.c @@ -490,6 +490,12 @@ } } +void kvm_apic_clear_irr(struct kvm_vcpu *vcpu, int vec) +{ + apic_clear_irr(vec, vcpu->arch.apic); +} +EXPORT_SYMBOL_GPL(kvm_apic_clear_irr); + static inline void apic_set_isr(int vec, struct kvm_lapic *apic) { struct kvm_vcpu *vcpu; @@ -2456,12 +2462,13 @@ struct kvm_lapic *apic = vcpu->arch.apic; u32 ppr; - if (!kvm_apic_hw_enabled(apic)) + if (!kvm_apic_present(vcpu)) return -1; __apic_update_ppr(apic, &ppr); return apic_has_interrupt_for_ppr(apic, ppr); } +EXPORT_SYMBOL_GPL(kvm_apic_has_interrupt); int kvm_apic_accept_pic_intr(struct kvm_vcpu *vcpu) { --- linux-azure-5.8-5.8.0.orig/arch/x86/kvm/lapic.h +++ linux-azure-5.8-5.8.0/arch/x86/kvm/lapic.h @@ -89,6 +89,7 @@ bool kvm_apic_match_dest(struct kvm_vcpu *vcpu, struct kvm_lapic *source, int shorthand, unsigned int dest, int dest_mode); int kvm_apic_compare_prio(struct kvm_vcpu *vcpu1, struct kvm_vcpu *vcpu2); +void kvm_apic_clear_irr(struct kvm_vcpu *vcpu, int vec); bool __kvm_apic_update_irr(u32 *pir, void *regs, int *max_irr); bool kvm_apic_update_irr(struct kvm_vcpu *vcpu, u32 *pir, int *max_irr); void kvm_apic_update_ppr(struct kvm_vcpu *vcpu); --- linux-azure-5.8-5.8.0.orig/arch/x86/kvm/mmu.h +++ linux-azure-5.8-5.8.0/arch/x86/kvm/mmu.h @@ -48,7 +48,7 @@ if (e < s) return 0; - return ((1ULL << (e - s + 1)) - 1) << s; + return ((2ULL << (e - s)) - 1) << s; } void kvm_mmu_set_mmio_spte_mask(u64 mmio_value, u64 access_mask); --- linux-azure-5.8-5.8.0.orig/arch/x86/kvm/mmu/mmu.c +++ linux-azure-5.8-5.8.0/arch/x86/kvm/mmu/mmu.c @@ -400,11 +400,11 @@ } /* - * 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-8 of the MMIO generation are propagated to spte bits 3-11 - * Bits 9-18 of the MMIO generation are propagated to spte bits 52-61 + * Bits 9-17 of the MMIO generation are propagated to spte bits 54-62 * * 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 @@ -413,18 +413,29 @@ * requires a full MMU zap). The flag is instead explicitly queried when * checking for MMIO spte cache hits. */ -#define MMIO_SPTE_GEN_MASK GENMASK_ULL(17, 0) #define MMIO_SPTE_GEN_LOW_START 3 #define MMIO_SPTE_GEN_LOW_END 11 -#define MMIO_SPTE_GEN_LOW_MASK GENMASK_ULL(MMIO_SPTE_GEN_LOW_END, \ - MMIO_SPTE_GEN_LOW_START) #define MMIO_SPTE_GEN_HIGH_START PT64_SECOND_AVAIL_BITS_SHIFT #define MMIO_SPTE_GEN_HIGH_END 62 + +#define MMIO_SPTE_GEN_LOW_MASK GENMASK_ULL(MMIO_SPTE_GEN_LOW_END, \ + MMIO_SPTE_GEN_LOW_START) #define MMIO_SPTE_GEN_HIGH_MASK GENMASK_ULL(MMIO_SPTE_GEN_HIGH_END, \ MMIO_SPTE_GEN_HIGH_START) +#define MMIO_SPTE_GEN_LOW_BITS (MMIO_SPTE_GEN_LOW_END - MMIO_SPTE_GEN_LOW_START + 1) +#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 == 9 && MMIO_SPTE_GEN_HIGH_BITS == 9); + +#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) + static u64 generation_mmio_spte_mask(u64 gen) { u64 mask; @@ -432,8 +443,8 @@ WARN_ON(gen & ~MMIO_SPTE_GEN_MASK); BUILD_BUG_ON((MMIO_SPTE_GEN_HIGH_MASK | MMIO_SPTE_GEN_LOW_MASK) & SPTE_SPECIAL_MASK); - mask = (gen << MMIO_SPTE_GEN_LOW_START) & MMIO_SPTE_GEN_LOW_MASK; - mask |= (gen << MMIO_SPTE_GEN_HIGH_START) & MMIO_SPTE_GEN_HIGH_MASK; + mask = (gen << MMIO_SPTE_GEN_LOW_SHIFT) & MMIO_SPTE_GEN_LOW_MASK; + mask |= (gen << MMIO_SPTE_GEN_HIGH_SHIFT) & MMIO_SPTE_GEN_HIGH_MASK; return mask; } @@ -441,8 +452,8 @@ { u64 gen; - gen = (spte & MMIO_SPTE_GEN_LOW_MASK) >> MMIO_SPTE_GEN_LOW_START; - gen |= (spte & MMIO_SPTE_GEN_HIGH_MASK) >> MMIO_SPTE_GEN_HIGH_START; + gen = (spte & MMIO_SPTE_GEN_LOW_MASK) >> MMIO_SPTE_GEN_LOW_SHIFT; + gen |= (spte & MMIO_SPTE_GEN_HIGH_MASK) >> MMIO_SPTE_GEN_HIGH_SHIFT; return gen; } @@ -1971,7 +1982,8 @@ return kvm_handle_hva_range(kvm, hva, hva + 1, data, handler); } -int kvm_unmap_hva_range(struct kvm *kvm, unsigned long start, unsigned long end) +int kvm_unmap_hva_range(struct kvm *kvm, unsigned long start, unsigned long end, + unsigned flags) { return kvm_handle_hva_range(kvm, start, end, 0, kvm_unmap_rmapp); } @@ -2520,7 +2532,7 @@ } if (sp->unsync_children) - kvm_make_request(KVM_REQ_TLB_FLUSH_CURRENT, vcpu); + kvm_make_request(KVM_REQ_MMU_SYNC, vcpu); __clear_sp_write_flooding_count(sp); trace_kvm_mmu_get_page(sp, false); @@ -6340,6 +6352,7 @@ cond_resched_lock(&kvm->mmu_lock); } } + kvm_mmu_commit_zap_page(kvm, &invalid_list); spin_unlock(&kvm->mmu_lock); srcu_read_unlock(&kvm->srcu, rcu_idx); --- linux-azure-5.8-5.8.0.orig/arch/x86/kvm/svm/avic.c +++ linux-azure-5.8-5.8.0/arch/x86/kvm/svm/avic.c @@ -868,6 +868,7 @@ * - Tell IOMMU to use legacy mode for this interrupt. * - Retrieve ga_tag of prior interrupt remapping data. */ + pi.prev_ga_tag = 0; pi.is_guest_mode = false; ret = irq_set_vcpu_affinity(host_irq, &pi); --- linux-azure-5.8-5.8.0.orig/arch/x86/kvm/svm/nested.c +++ linux-azure-5.8-5.8.0/arch/x86/kvm/svm/nested.c @@ -65,7 +65,7 @@ u64 pdpte; int ret; - ret = kvm_vcpu_read_guest_page(vcpu, gpa_to_gfn(__sme_clr(cr3)), &pdpte, + ret = kvm_vcpu_read_guest_page(vcpu, gpa_to_gfn(cr3), &pdpte, offset_in_page(cr3) + index * 8, 8); if (ret) return 0; --- linux-azure-5.8-5.8.0.orig/arch/x86/kvm/svm/sev.c +++ linux-azure-5.8-5.8.0/arch/x86/kvm/svm/sev.c @@ -318,6 +318,8 @@ struct page **pages; unsigned long first, last; + lockdep_assert_held(&kvm->lock); + if (ulen == 0 || uaddr + ulen < uaddr) return NULL; @@ -986,12 +988,20 @@ if (!region) return -ENOMEM; + mutex_lock(&kvm->lock); region->pages = sev_pin_memory(kvm, range->addr, range->size, ®ion->npages, 1); if (!region->pages) { ret = -ENOMEM; + mutex_unlock(&kvm->lock); goto e_free; } + region->uaddr = range->addr; + region->size = range->size; + + list_add_tail(®ion->list, &sev->regions_list); + mutex_unlock(&kvm->lock); + /* * The guest may change the memory encryption attribute from C=0 -> C=1 * or vice versa for this memory range. Lets make sure caches are @@ -1000,13 +1010,6 @@ */ sev_clflush_pages(region->pages, region->npages); - region->uaddr = range->addr; - region->size = range->size; - - mutex_lock(&kvm->lock); - list_add_tail(®ion->list, &sev->regions_list); - mutex_unlock(&kvm->lock); - return ret; e_free: @@ -1111,9 +1114,6 @@ int __init sev_hardware_setup(void) { - struct sev_user_data_status *status; - int rc; - /* Maximum number of encrypted guests supported simultaneously */ max_sev_asid = cpuid_ecx(0x8000001F); @@ -1132,26 +1132,9 @@ if (!sev_reclaim_asid_bitmap) return 1; - status = kmalloc(sizeof(*status), GFP_KERNEL); - if (!status) - return 1; - - /* - * Check SEV platform status. - * - * PLATFORM_STATUS can be called in any state, if we failed to query - * the PLATFORM status then either PSP firmware does not support SEV - * feature or SEV firmware is dead. - */ - rc = sev_platform_status(status, NULL); - if (rc) - goto err; - pr_info("SEV supported\n"); -err: - kfree(status); - return rc; + return 0; } void sev_hardware_teardown(void) --- linux-azure-5.8-5.8.0.orig/arch/x86/kvm/svm/svm.c +++ linux-azure-5.8-5.8.0/arch/x86/kvm/svm/svm.c @@ -418,6 +418,11 @@ return 0; } + if (sev_active()) { + pr_info("KVM is unsupported when running as an SEV guest\n"); + return 0; + } + return 1; } @@ -2169,6 +2174,12 @@ return 1; } +static int invd_interception(struct vcpu_svm *svm) +{ + /* Treat an INVD instruction as a NOP and just skip it. */ + return kvm_skip_emulated_instruction(&svm->vcpu); +} + static int invlpg_interception(struct vcpu_svm *svm) { if (!static_cpu_has(X86_FEATURE_DECODEASSISTS)) @@ -2429,10 +2440,7 @@ break; case MSR_IA32_SPEC_CTRL: if (!msr_info->host_initiated && - !guest_cpuid_has(vcpu, X86_FEATURE_SPEC_CTRL) && - !guest_cpuid_has(vcpu, X86_FEATURE_AMD_STIBP) && - !guest_cpuid_has(vcpu, X86_FEATURE_AMD_IBRS) && - !guest_cpuid_has(vcpu, X86_FEATURE_AMD_SSBD)) + !guest_has_spec_ctrl_msr(vcpu)) return 1; msr_info->data = svm->spec_ctrl; @@ -2516,13 +2524,10 @@ break; case MSR_IA32_SPEC_CTRL: if (!msr->host_initiated && - !guest_cpuid_has(vcpu, X86_FEATURE_SPEC_CTRL) && - !guest_cpuid_has(vcpu, X86_FEATURE_AMD_STIBP) && - !guest_cpuid_has(vcpu, X86_FEATURE_AMD_IBRS) && - !guest_cpuid_has(vcpu, X86_FEATURE_AMD_SSBD)) + !guest_has_spec_ctrl_msr(vcpu)) return 1; - if (data & ~kvm_spec_ctrl_valid_bits(vcpu)) + if (kvm_spec_ctrl_test_value(data)) return 1; svm->spec_ctrl = data; @@ -2544,12 +2549,12 @@ break; case MSR_IA32_PRED_CMD: if (!msr->host_initiated && - !guest_cpuid_has(vcpu, X86_FEATURE_AMD_IBPB)) + !guest_has_pred_cmd_msr(vcpu)) return 1; if (data & ~PRED_CMD_IBPB) return 1; - if (!boot_cpu_has(X86_FEATURE_AMD_IBPB)) + if (!boot_cpu_has(X86_FEATURE_IBPB)) return 1; if (!data) break; @@ -2758,7 +2763,7 @@ [SVM_EXIT_RDPMC] = rdpmc_interception, [SVM_EXIT_CPUID] = cpuid_interception, [SVM_EXIT_IRET] = iret_interception, - [SVM_EXIT_INVD] = emulate_on_interception, + [SVM_EXIT_INVD] = invd_interception, [SVM_EXIT_PAUSE] = pause_interception, [SVM_EXIT_HLT] = halt_interception, [SVM_EXIT_INVLPG] = invlpg_interception, --- linux-azure-5.8-5.8.0.orig/arch/x86/kvm/vmx/nested.c +++ linux-azure-5.8-5.8.0/arch/x86/kvm/vmx/nested.c @@ -2402,6 +2402,8 @@ vmcs_writel(GUEST_TR_BASE, vmcs12->guest_tr_base); vmcs_writel(GUEST_GDTR_BASE, vmcs12->guest_gdtr_base); vmcs_writel(GUEST_IDTR_BASE, vmcs12->guest_idtr_base); + + vmx->segment_cache.bitmask = 0; } if (!hv_evmcs || !(hv_evmcs->hv_clean_fields & @@ -3295,8 +3297,10 @@ prepare_vmcs02_early(vmx, vmcs12); if (from_vmentry) { - if (unlikely(!nested_get_vmcs12_pages(vcpu))) + if (unlikely(!nested_get_vmcs12_pages(vcpu))) { + vmx_switch_vmcs(vcpu, &vmx->vmcs01); return NVMX_VMENTRY_KVM_INTERNAL_ERROR; + } if (nested_vmx_check_vmentry_hw(vcpu)) { vmx_switch_vmcs(vcpu, &vmx->vmcs01); @@ -3480,6 +3484,14 @@ if (unlikely(status != NVMX_VMENTRY_SUCCESS)) goto vmentry_failed; + /* Emulate processing of posted interrupts on VM-Enter. */ + if (nested_cpu_has_posted_intr(vmcs12) && + kvm_apic_has_interrupt(vcpu) == vmx->nested.posted_intr_nv) { + vmx->nested.pi_pending = true; + kvm_make_request(KVM_REQ_EVENT, vcpu); + kvm_apic_clear_irr(vcpu, vmx->nested.posted_intr_nv); + } + /* Hide L1D cache contents from the nested guest. */ vmx->vcpu.arch.l1tf_flush_l1d = true; @@ -4620,7 +4632,7 @@ vmx->nested.msrs.entry_ctls_high &= ~VM_ENTRY_LOAD_IA32_PERF_GLOBAL_CTRL; vmx->nested.msrs.exit_ctls_high &= - ~VM_ENTRY_LOAD_IA32_PERF_GLOBAL_CTRL; + ~VM_EXIT_LOAD_IA32_PERF_GLOBAL_CTRL; } } @@ -5992,11 +6004,14 @@ if (is_guest_mode(vcpu)) { sync_vmcs02_to_vmcs12(vcpu, vmcs12); sync_vmcs02_to_vmcs12_rare(vcpu, vmcs12); - } else if (!vmx->nested.need_vmcs12_to_shadow_sync) { - if (vmx->nested.hv_evmcs) - copy_enlightened_to_vmcs12(vmx); - else if (enable_shadow_vmcs) - copy_shadow_to_vmcs12(vmx); + } else { + copy_vmcs02_to_vmcs12_rare(vcpu, get_vmcs12(vcpu)); + if (!vmx->nested.need_vmcs12_to_shadow_sync) { + if (vmx->nested.hv_evmcs) + copy_enlightened_to_vmcs12(vmx); + else if (enable_shadow_vmcs) + copy_shadow_to_vmcs12(vmx); + } } BUILD_BUG_ON(sizeof(user_vmx_nested_state->vmcs12) < VMCS12_SIZE); --- linux-azure-5.8-5.8.0.orig/arch/x86/kvm/vmx/pmu_intel.c +++ linux-azure-5.8-5.8.0/arch/x86/kvm/vmx/pmu_intel.c @@ -29,7 +29,7 @@ [4] = { 0x2e, 0x41, PERF_COUNT_HW_CACHE_MISSES }, [5] = { 0xc4, 0x00, PERF_COUNT_HW_BRANCH_INSTRUCTIONS }, [6] = { 0xc5, 0x00, PERF_COUNT_HW_BRANCH_MISSES }, - [7] = { 0x00, 0x30, PERF_COUNT_HW_REF_CPU_CYCLES }, + [7] = { 0x00, 0x03, PERF_COUNT_HW_REF_CPU_CYCLES }, }; /* mapping between fixed pmc index and intel_arch_events array */ @@ -362,7 +362,9 @@ pmu->nr_arch_gp_counters = min_t(int, eax.split.num_counters, x86_pmu.num_counters_gp); + eax.split.bit_width = min_t(int, eax.split.bit_width, x86_pmu.bit_width_gp); pmu->counter_bitmask[KVM_PMC_GP] = ((u64)1 << eax.split.bit_width) - 1; + eax.split.mask_length = min_t(int, eax.split.mask_length, x86_pmu.events_mask_len); pmu->available_event_types = ~entry->ebx & ((1ull << eax.split.mask_length) - 1); @@ -372,6 +374,8 @@ pmu->nr_arch_fixed_counters = min_t(int, edx.split.num_counters_fixed, x86_pmu.num_counters_fixed); + edx.split.bit_width_fixed = min_t(int, + edx.split.bit_width_fixed, x86_pmu.bit_width_fixed); pmu->counter_bitmask[KVM_PMC_FIXED] = ((u64)1 << edx.split.bit_width_fixed) - 1; } --- linux-azure-5.8-5.8.0.orig/arch/x86/kvm/vmx/vmx.c +++ linux-azure-5.8-5.8.0/arch/x86/kvm/vmx/vmx.c @@ -1169,7 +1169,7 @@ gs_base = cpu_kernelmode_gs_base(cpu); if (likely(is_64bit_mm(current->mm))) { - save_fsgs_for_kvm(); + current_save_fsgs(); fs_sel = current->thread.fsindex; gs_sel = current->thread.gsindex; fs_base = current->thread.fsbase; @@ -1857,7 +1857,7 @@ break; case MSR_IA32_SPEC_CTRL: if (!msr_info->host_initiated && - !guest_cpuid_has(vcpu, X86_FEATURE_SPEC_CTRL)) + !guest_has_spec_ctrl_msr(vcpu)) return 1; msr_info->data = to_vmx(vcpu)->spec_ctrl; @@ -2059,10 +2059,10 @@ break; case MSR_IA32_SPEC_CTRL: if (!msr_info->host_initiated && - !guest_cpuid_has(vcpu, X86_FEATURE_SPEC_CTRL)) + !guest_has_spec_ctrl_msr(vcpu)) return 1; - if (data & ~kvm_spec_ctrl_valid_bits(vcpu)) + if (kvm_spec_ctrl_test_value(data)) return 1; vmx->spec_ctrl = data; @@ -2094,12 +2094,12 @@ goto find_shared_msr; case MSR_IA32_PRED_CMD: if (!msr_info->host_initiated && - !guest_cpuid_has(vcpu, X86_FEATURE_SPEC_CTRL)) + !guest_has_pred_cmd_msr(vcpu)) return 1; if (data & ~PRED_CMD_IBPB) return 1; - if (!boot_cpu_has(X86_FEATURE_SPEC_CTRL)) + if (!boot_cpu_has(X86_FEATURE_IBPB)) return 1; if (!data) break; @@ -6028,6 +6028,7 @@ (exit_reason != EXIT_REASON_EXCEPTION_NMI && exit_reason != EXIT_REASON_EPT_VIOLATION && exit_reason != EXIT_REASON_PML_FULL && + exit_reason != EXIT_REASON_APIC_ACCESS && exit_reason != EXIT_REASON_TASK_SWITCH)) { vcpu->run->exit_reason = KVM_EXIT_INTERNAL_ERROR; vcpu->run->internal.suberror = KVM_INTERNAL_ERROR_DELIVERY_EV; @@ -6887,11 +6888,21 @@ switch (index) { case MSR_IA32_TSX_CTRL: /* - * No need to pass TSX_CTRL_CPUID_CLEAR through, so - * let's avoid changing CPUID bits under the host - * kernel's feet. + * TSX_CTRL_CPUID_CLEAR is handled in the CPUID + * interception. Keep the host value unchanged to avoid + * changing CPUID bits under the host kernel's feet. + * + * hle=0, rtm=0, tsx_ctrl=1 can be found with some + * combinations of new kernel and old userspace. If + * those guests run on a tsx=off host, do allow guests + * to use TSX_CTRL, but do not change the value on the + * host so that TSX remains always disabled. */ vmx->guest_msrs[j].mask = ~(u64)TSX_CTRL_CPUID_CLEAR; + if (boot_cpu_has(X86_FEATURE_RTM)) + vmx->guest_msrs[j].mask = ~(u64)TSX_CTRL_CPUID_CLEAR; + else + vmx->guest_msrs[j].mask = 0; break; default: vmx->guest_msrs[j].mask = -1ull; --- linux-azure-5.8-5.8.0.orig/arch/x86/kvm/x86.c +++ linux-azure-5.8-5.8.0/arch/x86/kvm/x86.c @@ -103,6 +103,7 @@ static void update_cr8_intercept(struct kvm_vcpu *vcpu); static void process_nmi(struct kvm_vcpu *vcpu); +static void process_smi(struct kvm_vcpu *vcpu); static void enter_smm(struct kvm_vcpu *vcpu); static void __kvm_set_rflags(struct kvm_vcpu *vcpu, unsigned long rflags); static void store_regs(struct kvm_vcpu *vcpu); @@ -967,7 +968,8 @@ { unsigned long old_cr4 = kvm_read_cr4(vcpu); unsigned long pdptr_bits = X86_CR4_PGE | X86_CR4_PSE | X86_CR4_PAE | - X86_CR4_SMEP | X86_CR4_SMAP | X86_CR4_PKE; + X86_CR4_SMEP; + unsigned long mmu_role_bits = pdptr_bits | X86_CR4_SMAP | X86_CR4_PKE; if (kvm_valid_cr4(vcpu, cr4)) return 1; @@ -995,7 +997,7 @@ if (kvm_x86_ops.set_cr4(vcpu, cr4)) return 1; - if (((cr4 ^ old_cr4) & pdptr_bits) || + if (((cr4 ^ old_cr4) & mmu_role_bits) || (!(cr4 & X86_CR4_PCIDE) && (old_cr4 & X86_CR4_PCIDE))) kvm_mmu_reset_context(vcpu); @@ -1365,16 +1367,24 @@ if (!boot_cpu_has_bug(X86_BUG_MDS)) data |= ARCH_CAP_MDS_NO; - /* - * On TAA affected systems: - * - nothing to do if TSX is disabled on the host. - * - we emulate TSX_CTRL if present on the host. - * This lets the guest use VERW to clear CPU buffers. - */ - if (!boot_cpu_has(X86_FEATURE_RTM)) - data &= ~(ARCH_CAP_TAA_NO | ARCH_CAP_TSX_CTRL_MSR); - else if (!boot_cpu_has_bug(X86_BUG_TAA)) + if (!boot_cpu_has(X86_FEATURE_RTM)) { + /* + * If RTM=0 because the kernel has disabled TSX, the host might + * have TAA_NO or TSX_CTRL. Clear TAA_NO (the guest sees RTM=0 + * and therefore knows that there cannot be TAA) but keep + * TSX_CTRL: some buggy userspaces leave it set on tsx=on hosts, + * and we want to allow migrating those guests to tsx=off hosts. + */ + data &= ~ARCH_CAP_TAA_NO; + } else if (!boot_cpu_has_bug(X86_BUG_TAA)) { data |= ARCH_CAP_TAA_NO; + } else { + /* + * Nothing to do here; we emulate TSX_CTRL if present on the + * host so the guest can choose between disabling TSX or + * using VERW to clear CPU buffers. + */ + } return data; } @@ -2696,7 +2706,7 @@ return 1; if (!lapic_in_kernel(vcpu)) - return 1; + return data ? 1 : 0; vcpu->arch.apf.msr_en_val = data; @@ -3782,21 +3792,23 @@ static int kvm_cpu_accept_dm_intr(struct kvm_vcpu *vcpu) { + /* + * We can accept userspace's request for interrupt injection + * as long as we have a place to store the interrupt number. + * The actual injection will happen when the CPU is able to + * deliver the interrupt. + */ + if (kvm_cpu_has_extint(vcpu)) + return false; + + /* Acknowledging ExtINT does not happen if LINT0 is masked. */ return (!lapic_in_kernel(vcpu) || kvm_apic_accept_pic_intr(vcpu)); } -/* - * if userspace requested an interrupt window, check that the - * interrupt window is open. - * - * No need to exit to userspace if we already have an interrupt queued. - */ static int kvm_vcpu_ready_for_interrupt_injection(struct kvm_vcpu *vcpu) { return kvm_arch_interrupt_allowed(vcpu) && - !kvm_cpu_has_interrupt(vcpu) && - !kvm_event_needs_reinjection(vcpu) && kvm_cpu_accept_dm_intr(vcpu); } @@ -3928,6 +3940,9 @@ { process_nmi(vcpu); + if (kvm_check_request(KVM_REQ_SMI, vcpu)) + process_smi(vcpu); + /* * In guest mode, payload delivery should be deferred, * so that the L1 hypervisor can intercept #PF before @@ -7440,7 +7455,7 @@ goto out; } if (ops->disabled_by_bios()) { - pr_err_ratelimited("kvm: disabled by bios\n"); + pr_warn_ratelimited("kvm: disabled by bios\n"); r = -EOPNOTSUPP; goto out; } @@ -10676,28 +10691,32 @@ } EXPORT_SYMBOL_GPL(kvm_arch_no_poll); -u64 kvm_spec_ctrl_valid_bits(struct kvm_vcpu *vcpu) + +int kvm_spec_ctrl_test_value(u64 value) { - uint64_t bits = SPEC_CTRL_IBRS | SPEC_CTRL_STIBP | SPEC_CTRL_SSBD; + /* + * test that setting IA32_SPEC_CTRL to given value + * is allowed by the host processor + */ - /* The STIBP bit doesn't fault even if it's not advertised */ - if (!guest_cpuid_has(vcpu, X86_FEATURE_SPEC_CTRL) && - !guest_cpuid_has(vcpu, X86_FEATURE_AMD_IBRS)) - bits &= ~(SPEC_CTRL_IBRS | SPEC_CTRL_STIBP); - if (!boot_cpu_has(X86_FEATURE_SPEC_CTRL) && - !boot_cpu_has(X86_FEATURE_AMD_IBRS)) - bits &= ~(SPEC_CTRL_IBRS | SPEC_CTRL_STIBP); - - if (!guest_cpuid_has(vcpu, X86_FEATURE_SPEC_CTRL_SSBD) && - !guest_cpuid_has(vcpu, X86_FEATURE_AMD_SSBD)) - bits &= ~SPEC_CTRL_SSBD; - if (!boot_cpu_has(X86_FEATURE_SPEC_CTRL_SSBD) && - !boot_cpu_has(X86_FEATURE_AMD_SSBD)) - bits &= ~SPEC_CTRL_SSBD; + u64 saved_value; + unsigned long flags; + int ret = 0; - return bits; + local_irq_save(flags); + + if (rdmsrl_safe(MSR_IA32_SPEC_CTRL, &saved_value)) + ret = 1; + else if (wrmsrl_safe(MSR_IA32_SPEC_CTRL, value)) + ret = 1; + else + wrmsrl(MSR_IA32_SPEC_CTRL, saved_value); + + local_irq_restore(flags); + + return ret; } -EXPORT_SYMBOL_GPL(kvm_spec_ctrl_valid_bits); +EXPORT_SYMBOL_GPL(kvm_spec_ctrl_test_value); EXPORT_TRACEPOINT_SYMBOL_GPL(kvm_exit); EXPORT_TRACEPOINT_SYMBOL_GPL(kvm_fast_mmio); --- linux-azure-5.8-5.8.0.orig/arch/x86/kvm/x86.h +++ linux-azure-5.8-5.8.0/arch/x86/kvm/x86.h @@ -363,7 +363,7 @@ void kvm_load_guest_xsave_state(struct kvm_vcpu *vcpu); void kvm_load_host_xsave_state(struct kvm_vcpu *vcpu); -u64 kvm_spec_ctrl_valid_bits(struct kvm_vcpu *vcpu); +int kvm_spec_ctrl_test_value(u64 value); bool kvm_vcpu_exit_request(struct kvm_vcpu *vcpu); #endif --- linux-azure-5.8-5.8.0.orig/arch/x86/lib/Makefile +++ linux-azure-5.8-5.8.0/arch/x86/lib/Makefile @@ -44,6 +44,7 @@ lib-y := delay.o misc.o cmdline.o cpu.o lib-y += usercopy_$(BITS).o usercopy.o getuser.o putuser.o lib-y += memcpy_$(BITS).o +lib-$(CONFIG_ARCH_HAS_COPY_MC) += copy_mc.o copy_mc_64.o lib-$(CONFIG_INSTRUCTION_DECODER) += insn.o inat.o insn-eval.o lib-$(CONFIG_RANDOMIZE_BASE) += kaslr.o lib-$(CONFIG_FUNCTION_ERROR_INJECTION) += error-inject.o --- linux-azure-5.8-5.8.0.orig/arch/x86/lib/copy_mc.c +++ linux-azure-5.8-5.8.0/arch/x86/lib/copy_mc.c @@ -0,0 +1,96 @@ +// SPDX-License-Identifier: GPL-2.0 +/* Copyright(c) 2016-2020 Intel Corporation. All rights reserved. */ + +#include +#include +#include +#include +#include + +#include + +#ifdef CONFIG_X86_MCE +/* + * See COPY_MC_TEST for self-test of the copy_mc_fragile() + * implementation. + */ +static DEFINE_STATIC_KEY_FALSE(copy_mc_fragile_key); + +void enable_copy_mc_fragile(void) +{ + static_branch_inc(©_mc_fragile_key); +} +#define copy_mc_fragile_enabled (static_branch_unlikely(©_mc_fragile_key)) + +/* + * Similar to copy_user_handle_tail, probe for the write fault point, or + * source exception point. + */ +__visible notrace unsigned long +copy_mc_fragile_handle_tail(char *to, char *from, unsigned len) +{ + for (; len; --len, to++, from++) + if (copy_mc_fragile(to, from, 1)) + break; + return len; +} +#else +/* + * No point in doing careful copying, or consulting a static key when + * there is no #MC handler in the CONFIG_X86_MCE=n case. + */ +void enable_copy_mc_fragile(void) +{ +} +#define copy_mc_fragile_enabled (0) +#endif + +unsigned long copy_mc_enhanced_fast_string(void *dst, const void *src, unsigned len); + +/** + * copy_mc_to_kernel - memory copy that handles source exceptions + * + * @dst: destination address + * @src: source address + * @len: number of bytes to copy + * + * Call into the 'fragile' version on systems that benefit from avoiding + * corner case poison consumption scenarios, For example, accessing + * poison across 2 cachelines with a single instruction. Almost all + * other uses case can use copy_mc_enhanced_fast_string() for a fast + * recoverable copy, or fallback to plain memcpy. + * + * Return 0 for success, or number of bytes not copied if there was an + * exception. + */ +unsigned long __must_check copy_mc_to_kernel(void *dst, const void *src, unsigned len) +{ + if (copy_mc_fragile_enabled) + return copy_mc_fragile(dst, src, len); + if (static_cpu_has(X86_FEATURE_ERMS)) + return copy_mc_enhanced_fast_string(dst, src, len); + memcpy(dst, src, len); + return 0; +} +EXPORT_SYMBOL_GPL(copy_mc_to_kernel); + +unsigned long __must_check copy_mc_to_user(void *dst, const void *src, unsigned len) +{ + unsigned long ret; + + if (copy_mc_fragile_enabled) { + __uaccess_begin(); + ret = copy_mc_fragile(dst, src, len); + __uaccess_end(); + return ret; + } + + if (static_cpu_has(X86_FEATURE_ERMS)) { + __uaccess_begin(); + ret = copy_mc_enhanced_fast_string(dst, src, len); + __uaccess_end(); + return ret; + } + + return copy_user_generic(dst, src, len); +} --- linux-azure-5.8-5.8.0.orig/arch/x86/lib/copy_mc_64.S +++ linux-azure-5.8-5.8.0/arch/x86/lib/copy_mc_64.S @@ -0,0 +1,163 @@ +/* SPDX-License-Identifier: GPL-2.0-only */ +/* Copyright(c) 2016-2020 Intel Corporation. All rights reserved. */ + +#include +#include +#include +#include + +#ifndef CONFIG_UML + +#ifdef CONFIG_X86_MCE +COPY_MC_TEST_CTL + +/* + * copy_mc_fragile - copy memory with indication if an exception / fault happened + * + * The 'fragile' version is opted into by platform quirks and takes + * pains to avoid unrecoverable corner cases like 'fast-string' + * instruction sequences, and consuming poison across a cacheline + * boundary. The non-fragile version is equivalent to memcpy() + * regardless of CPU machine-check-recovery capability. + */ +SYM_FUNC_START(copy_mc_fragile) + cmpl $8, %edx + /* Less than 8 bytes? Go to byte copy loop */ + jb .L_no_whole_words + + /* Check for bad alignment of source */ + testl $7, %esi + /* Already aligned */ + jz .L_8byte_aligned + + /* Copy one byte at a time until source is 8-byte aligned */ + movl %esi, %ecx + andl $7, %ecx + subl $8, %ecx + negl %ecx + subl %ecx, %edx +.L_read_leading_bytes: + movb (%rsi), %al + COPY_MC_TEST_SRC %rsi 1 .E_leading_bytes + COPY_MC_TEST_DST %rdi 1 .E_leading_bytes +.L_write_leading_bytes: + movb %al, (%rdi) + incq %rsi + incq %rdi + decl %ecx + jnz .L_read_leading_bytes + +.L_8byte_aligned: + movl %edx, %ecx + andl $7, %edx + shrl $3, %ecx + jz .L_no_whole_words + +.L_read_words: + movq (%rsi), %r8 + COPY_MC_TEST_SRC %rsi 8 .E_read_words + COPY_MC_TEST_DST %rdi 8 .E_write_words +.L_write_words: + movq %r8, (%rdi) + addq $8, %rsi + addq $8, %rdi + decl %ecx + jnz .L_read_words + + /* Any trailing bytes? */ +.L_no_whole_words: + andl %edx, %edx + jz .L_done_memcpy_trap + + /* Copy trailing bytes */ + movl %edx, %ecx +.L_read_trailing_bytes: + movb (%rsi), %al + COPY_MC_TEST_SRC %rsi 1 .E_trailing_bytes + COPY_MC_TEST_DST %rdi 1 .E_trailing_bytes +.L_write_trailing_bytes: + movb %al, (%rdi) + incq %rsi + incq %rdi + decl %ecx + jnz .L_read_trailing_bytes + + /* Copy successful. Return zero */ +.L_done_memcpy_trap: + xorl %eax, %eax +.L_done: + ret +SYM_FUNC_END(copy_mc_fragile) +EXPORT_SYMBOL_GPL(copy_mc_fragile) + + .section .fixup, "ax" + /* + * Return number of bytes not copied for any failure. Note that + * there is no "tail" handling since the source buffer is 8-byte + * aligned and poison is cacheline aligned. + */ +.E_read_words: + shll $3, %ecx +.E_leading_bytes: + addl %edx, %ecx +.E_trailing_bytes: + mov %ecx, %eax + jmp .L_done + + /* + * For write fault handling, given the destination is unaligned, + * we handle faults on multi-byte writes with a byte-by-byte + * copy up to the write-protected page. + */ +.E_write_words: + shll $3, %ecx + addl %edx, %ecx + movl %ecx, %edx + jmp copy_mc_fragile_handle_tail + + .previous + + _ASM_EXTABLE_FAULT(.L_read_leading_bytes, .E_leading_bytes) + _ASM_EXTABLE_FAULT(.L_read_words, .E_read_words) + _ASM_EXTABLE_FAULT(.L_read_trailing_bytes, .E_trailing_bytes) + _ASM_EXTABLE(.L_write_leading_bytes, .E_leading_bytes) + _ASM_EXTABLE(.L_write_words, .E_write_words) + _ASM_EXTABLE(.L_write_trailing_bytes, .E_trailing_bytes) +#endif /* CONFIG_X86_MCE */ + +/* + * copy_mc_enhanced_fast_string - memory copy with exception handling + * + * Fast string copy + fault / exception handling. If the CPU does + * support machine check exception recovery, but does not support + * recovering from fast-string exceptions then this CPU needs to be + * added to the copy_mc_fragile_key set of quirks. Otherwise, absent any + * machine check recovery support this version should be no slower than + * standard memcpy. + */ +SYM_FUNC_START(copy_mc_enhanced_fast_string) + movq %rdi, %rax + movq %rdx, %rcx +.L_copy: + rep movsb + /* Copy successful. Return zero */ + xorl %eax, %eax + ret +SYM_FUNC_END(copy_mc_enhanced_fast_string) + + .section .fixup, "ax" +.E_copy: + /* + * On fault %rcx is updated such that the copy instruction could + * optionally be restarted at the fault position, i.e. it + * contains 'bytes remaining'. A non-zero return indicates error + * to copy_mc_generic() users, or indicate short transfers to + * user-copy routines. + */ + movq %rcx, %rax + ret + + .previous + + _ASM_EXTABLE_FAULT(.L_copy, .E_copy) +#endif /* !CONFIG_UML */ --- linux-azure-5.8-5.8.0.orig/arch/x86/lib/insn-eval.c +++ linux-azure-5.8-5.8.0/arch/x86/lib/insn-eval.c @@ -70,14 +70,15 @@ { int idx = INAT_SEG_REG_DEFAULT; int num_overrides = 0, i; + insn_byte_t p; insn_get_prefixes(insn); /* Look for any segment override prefixes. */ - for (i = 0; i < insn->prefixes.nbytes; i++) { + for_each_insn_prefix(insn, i, p) { insn_attr_t attr; - attr = inat_get_opcode_attribute(insn->prefixes.bytes[i]); + attr = inat_get_opcode_attribute(p); switch (attr) { case INAT_MAKE_PREFIX(INAT_PFX_CS): idx = INAT_SEG_REG_CS; --- linux-azure-5.8-5.8.0.orig/arch/x86/lib/memcpy_64.S +++ linux-azure-5.8-5.8.0/arch/x86/lib/memcpy_64.S @@ -4,7 +4,6 @@ #include #include #include -#include #include #include @@ -17,8 +16,6 @@ * to a jmp to memcpy_erms which does the REP; MOVSB mem copy. */ -.weak memcpy - /* * memcpy - Copy a memory block. * @@ -31,7 +28,7 @@ * rax original destination */ SYM_FUNC_START_ALIAS(__memcpy) -SYM_FUNC_START_LOCAL(memcpy) +SYM_FUNC_START_WEAK(memcpy) ALTERNATIVE_2 "jmp memcpy_orig", "", X86_FEATURE_REP_GOOD, \ "jmp memcpy_erms", X86_FEATURE_ERMS @@ -187,117 +184,3 @@ SYM_FUNC_END(memcpy_orig) .popsection - -#ifndef CONFIG_UML - -MCSAFE_TEST_CTL - -/* - * __memcpy_mcsafe - memory copy with machine check exception handling - * Note that we only catch machine checks when reading the source addresses. - * Writes to target are posted and don't generate machine checks. - */ -SYM_FUNC_START(__memcpy_mcsafe) - cmpl $8, %edx - /* Less than 8 bytes? Go to byte copy loop */ - jb .L_no_whole_words - - /* Check for bad alignment of source */ - testl $7, %esi - /* Already aligned */ - jz .L_8byte_aligned - - /* Copy one byte at a time until source is 8-byte aligned */ - movl %esi, %ecx - andl $7, %ecx - subl $8, %ecx - negl %ecx - subl %ecx, %edx -.L_read_leading_bytes: - movb (%rsi), %al - MCSAFE_TEST_SRC %rsi 1 .E_leading_bytes - MCSAFE_TEST_DST %rdi 1 .E_leading_bytes -.L_write_leading_bytes: - movb %al, (%rdi) - incq %rsi - incq %rdi - decl %ecx - jnz .L_read_leading_bytes - -.L_8byte_aligned: - movl %edx, %ecx - andl $7, %edx - shrl $3, %ecx - jz .L_no_whole_words - -.L_read_words: - movq (%rsi), %r8 - MCSAFE_TEST_SRC %rsi 8 .E_read_words - MCSAFE_TEST_DST %rdi 8 .E_write_words -.L_write_words: - movq %r8, (%rdi) - addq $8, %rsi - addq $8, %rdi - decl %ecx - jnz .L_read_words - - /* Any trailing bytes? */ -.L_no_whole_words: - andl %edx, %edx - jz .L_done_memcpy_trap - - /* Copy trailing bytes */ - movl %edx, %ecx -.L_read_trailing_bytes: - movb (%rsi), %al - MCSAFE_TEST_SRC %rsi 1 .E_trailing_bytes - MCSAFE_TEST_DST %rdi 1 .E_trailing_bytes -.L_write_trailing_bytes: - movb %al, (%rdi) - incq %rsi - incq %rdi - decl %ecx - jnz .L_read_trailing_bytes - - /* Copy successful. Return zero */ -.L_done_memcpy_trap: - xorl %eax, %eax -.L_done: - ret -SYM_FUNC_END(__memcpy_mcsafe) -EXPORT_SYMBOL_GPL(__memcpy_mcsafe) - - .section .fixup, "ax" - /* - * Return number of bytes not copied for any failure. Note that - * there is no "tail" handling since the source buffer is 8-byte - * aligned and poison is cacheline aligned. - */ -.E_read_words: - shll $3, %ecx -.E_leading_bytes: - addl %edx, %ecx -.E_trailing_bytes: - mov %ecx, %eax - jmp .L_done - - /* - * For write fault handling, given the destination is unaligned, - * we handle faults on multi-byte writes with a byte-by-byte - * copy up to the write-protected page. - */ -.E_write_words: - shll $3, %ecx - addl %edx, %ecx - movl %ecx, %edx - jmp mcsafe_handle_tail - - .previous - - _ASM_EXTABLE_FAULT(.L_read_leading_bytes, .E_leading_bytes) - _ASM_EXTABLE_FAULT(.L_read_words, .E_read_words) - _ASM_EXTABLE_FAULT(.L_read_trailing_bytes, .E_trailing_bytes) - _ASM_EXTABLE(.L_write_leading_bytes, .E_leading_bytes) - _ASM_EXTABLE(.L_write_words, .E_write_words) - _ASM_EXTABLE(.L_write_trailing_bytes, .E_trailing_bytes) -#endif --- linux-azure-5.8-5.8.0.orig/arch/x86/lib/memmove_64.S +++ linux-azure-5.8-5.8.0/arch/x86/lib/memmove_64.S @@ -24,9 +24,7 @@ * Output: * rax: dest */ -.weak memmove - -SYM_FUNC_START_ALIAS(memmove) +SYM_FUNC_START_WEAK(memmove) SYM_FUNC_START(__memmove) mov %rdi, %rax --- linux-azure-5.8-5.8.0.orig/arch/x86/lib/memset_64.S +++ linux-azure-5.8-5.8.0/arch/x86/lib/memset_64.S @@ -6,8 +6,6 @@ #include #include -.weak memset - /* * ISO C memset - set a memory block to a byte value. This function uses fast * string to get better performance than the original function. The code is @@ -19,7 +17,7 @@ * * rax original destination */ -SYM_FUNC_START_ALIAS(memset) +SYM_FUNC_START_WEAK(memset) SYM_FUNC_START(__memset) /* * Some CPUs support enhanced REP MOVSB/STOSB feature. It is recommended --- linux-azure-5.8-5.8.0.orig/arch/x86/lib/mmx_32.c +++ linux-azure-5.8-5.8.0/arch/x86/lib/mmx_32.c @@ -26,6 +26,16 @@ #include #include +/* + * Use KFPU_387. MMX instructions are not affected by MXCSR, + * but both AMD and Intel documentation states that even integer MMX + * operations will result in #MF if an exception is pending in FCW. + * + * EMMS is not needed afterwards because, after calling kernel_fpu_end(), + * any subsequent user of the 387 stack will reinitialize it using + * KFPU_387. + */ + void *_mmx_memcpy(void *to, const void *from, size_t len) { void *p; @@ -37,7 +47,7 @@ p = to; i = len >> 6; /* len/64 */ - kernel_fpu_begin(); + kernel_fpu_begin_mask(KFPU_387); __asm__ __volatile__ ( "1: prefetch (%0)\n" /* This set is 28 bytes */ @@ -127,7 +137,7 @@ { int i; - kernel_fpu_begin(); + kernel_fpu_begin_mask(KFPU_387); __asm__ __volatile__ ( " pxor %%mm0, %%mm0\n" : : @@ -160,7 +170,7 @@ { int i; - kernel_fpu_begin(); + kernel_fpu_begin_mask(KFPU_387); /* * maybe the prefetch stuff can go before the expensive fnsave... @@ -247,7 +257,7 @@ { int i; - kernel_fpu_begin(); + kernel_fpu_begin_mask(KFPU_387); __asm__ __volatile__ ( " pxor %%mm0, %%mm0\n" : : @@ -282,7 +292,7 @@ { int i; - kernel_fpu_begin(); + kernel_fpu_begin_mask(KFPU_387); __asm__ __volatile__ ( "1: prefetch (%0)\n" --- linux-azure-5.8-5.8.0.orig/arch/x86/lib/usercopy_64.c +++ linux-azure-5.8-5.8.0/arch/x86/lib/usercopy_64.c @@ -56,27 +56,6 @@ } EXPORT_SYMBOL(clear_user); -/* - * Similar to copy_user_handle_tail, probe for the write fault point, - * but reuse __memcpy_mcsafe in case a new read error is encountered. - * clac() is handled in _copy_to_iter_mcsafe(). - */ -__visible notrace unsigned long -mcsafe_handle_tail(char *to, char *from, unsigned len) -{ - for (; len; --len, to++, from++) { - /* - * Call the assembly routine back directly since - * memcpy_mcsafe() may silently fallback to memcpy. - */ - unsigned long rem = __memcpy_mcsafe(to, from, 1); - - if (rem) - break; - } - return len; -} - #ifdef CONFIG_ARCH_HAS_UACCESS_FLUSHCACHE /** * clean_cache_range - write back a cache range with CLWB @@ -120,7 +99,7 @@ */ if (size < 8) { if (!IS_ALIGNED(dest, 4) || size != 4) - clean_cache_range(dst, 1); + clean_cache_range(dst, size); } else { if (!IS_ALIGNED(dest, 8)) { dest = ALIGN(dest, boot_cpu_data.x86_clflush_size); --- linux-azure-5.8-5.8.0.orig/arch/x86/mm/fault.c +++ linux-azure-5.8-5.8.0/arch/x86/mm/fault.c @@ -54,7 +54,7 @@ * 32-bit mode: * * Sometimes AMD Athlon/Opteron CPUs report invalid exceptions on prefetch. - * Check that here and ignore it. + * Check that here and ignore it. This is AMD erratum #91. * * 64-bit mode: * @@ -83,11 +83,7 @@ #ifdef CONFIG_X86_64 case 0x40: /* - * In AMD64 long mode 0x40..0x4F are valid REX prefixes - * Need to figure out under what instruction mode the - * instruction was issued. Could check the LDT for lm, - * but for now it's good enough to assume that long - * mode only uses well known segments or kernel. + * In 64-bit mode 0x40..0x4F are valid REX prefixes */ return (!user_mode(regs) || user_64bit_mode(regs)); #endif @@ -127,20 +123,31 @@ instr = (void *)convert_ip_to_linear(current, regs); max_instr = instr + 15; - if (user_mode(regs) && instr >= (unsigned char *)TASK_SIZE_MAX) - return 0; + /* + * This code has historically always bailed out if IP points to a + * not-present page (e.g. due to a race). No one has ever + * complained about this. + */ + pagefault_disable(); while (instr < max_instr) { unsigned char opcode; - if (get_kernel_nofault(opcode, instr)) - break; + if (user_mode(regs)) { + if (get_user(opcode, instr)) + break; + } else { + if (get_kernel_nofault(opcode, instr)) + break; + } instr++; if (!check_prefetch_opcode(regs, instr, opcode, &prefetch)) break; } + + pagefault_enable(); return prefetch; } @@ -216,6 +223,44 @@ } /* + * 32-bit: + * + * Handle a fault on the vmalloc or module mapping area + */ +static noinline int vmalloc_fault(unsigned long address) +{ + unsigned long pgd_paddr; + pmd_t *pmd_k; + pte_t *pte_k; + + /* Make sure we are in vmalloc area: */ + if (!(address >= VMALLOC_START && address < VMALLOC_END)) + return -1; + + /* + * Synchronize this task's top level page-table + * with the 'reference' page table. + * + * Do _not_ use "current" here. We might be inside + * an interrupt in the middle of a task switch.. + */ + pgd_paddr = read_cr3_pa(); + pmd_k = vmalloc_sync_one(__va(pgd_paddr), address); + if (!pmd_k) + return -1; + + if (pmd_large(*pmd_k)) + return 0; + + pte_k = pte_offset_kernel(pmd_k, address); + if (!pte_present(*pte_k)) + return -1; + + return 0; +} +NOKPROBE_SYMBOL(vmalloc_fault); + +/* * Did it hit the DOS screen memory VA from vm86 mode? */ static inline void @@ -279,6 +324,79 @@ #else /* CONFIG_X86_64: */ +/* + * 64-bit: + * + * Handle a fault on the vmalloc area + */ +static noinline int vmalloc_fault(unsigned long address) +{ + pgd_t *pgd, *pgd_k; + p4d_t *p4d, *p4d_k; + pud_t *pud; + pmd_t *pmd; + pte_t *pte; + + /* Make sure we are in vmalloc area: */ + if (!(address >= VMALLOC_START && address < VMALLOC_END)) + return -1; + + /* + * Copy kernel mappings over when needed. This can also + * happen within a race in page table update. In the later + * case just flush: + */ + pgd = (pgd_t *)__va(read_cr3_pa()) + pgd_index(address); + pgd_k = pgd_offset_k(address); + if (pgd_none(*pgd_k)) + return -1; + + if (pgtable_l5_enabled()) { + if (pgd_none(*pgd)) { + set_pgd(pgd, *pgd_k); + arch_flush_lazy_mmu_mode(); + } else { + BUG_ON(pgd_page_vaddr(*pgd) != pgd_page_vaddr(*pgd_k)); + } + } + + /* With 4-level paging, copying happens on the p4d level. */ + p4d = p4d_offset(pgd, address); + p4d_k = p4d_offset(pgd_k, address); + if (p4d_none(*p4d_k)) + return -1; + + if (p4d_none(*p4d) && !pgtable_l5_enabled()) { + set_p4d(p4d, *p4d_k); + arch_flush_lazy_mmu_mode(); + } else { + BUG_ON(p4d_pfn(*p4d) != p4d_pfn(*p4d_k)); + } + + BUILD_BUG_ON(CONFIG_PGTABLE_LEVELS < 4); + + pud = pud_offset(p4d, address); + if (pud_none(*pud)) + return -1; + + if (pud_large(*pud)) + return 0; + + pmd = pmd_offset(pud, address); + if (pmd_none(*pmd)) + return -1; + + if (pmd_large(*pmd)) + return 0; + + pte = pte_offset_kernel(pmd, address); + if (!pte_present(*pte)) + return -1; + + return 0; +} +NOKPROBE_SYMBOL(vmalloc_fault); + #ifdef CONFIG_CPU_SUP_AMD static const char errata93_warning[] = KERN_ERR @@ -1111,6 +1229,29 @@ */ WARN_ON_ONCE(hw_error_code & X86_PF_PK); + /* + * We can fault-in kernel-space virtual memory on-demand. The + * 'reference' page table is init_mm.pgd. + * + * NOTE! We MUST NOT take any locks for this case. We may + * be in an interrupt or a critical region, and should + * only copy the information from the master page table, + * nothing more. + * + * Before doing this on-demand faulting, ensure that the + * fault is not any of the following: + * 1. A fault on a PTE with a reserved bit set. + * 2. A fault caused by a user-mode access. (Do not demand- + * fault kernel memory due to user-mode accesses). + * 3. A fault caused by a page-level protection violation. + * (A demand fault would be on a non-present page which + * would have X86_PF_PROT==0). + */ + if (!(hw_error_code & (X86_PF_RSVD | X86_PF_USER | X86_PF_PROT))) { + if (vmalloc_fault(address) >= 0) + return; + } + /* Was the fault spurious, caused by lazy TLB invalidation? */ if (spurious_kernel_fault(hw_error_code, address)) return; --- linux-azure-5.8-5.8.0.orig/arch/x86/mm/ident_map.c +++ linux-azure-5.8-5.8.0/arch/x86/mm/ident_map.c @@ -62,6 +62,7 @@ unsigned long addr, unsigned long end) { unsigned long next; + int result; for (; addr < end; addr = next) { p4d_t *p4d = p4d_page + p4d_index(addr); @@ -73,13 +74,20 @@ if (p4d_present(*p4d)) { pud = pud_offset(p4d, 0); - ident_pud_init(info, pud, addr, next); + result = ident_pud_init(info, pud, addr, next); + if (result) + return result; + continue; } pud = (pud_t *)info->alloc_pgt_page(info->context); if (!pud) return -ENOMEM; - ident_pud_init(info, pud, addr, next); + + result = ident_pud_init(info, pud, addr, next); + if (result) + return result; + set_p4d(p4d, __p4d(__pa(pud) | info->kernpg_flag)); } --- linux-azure-5.8-5.8.0.orig/arch/x86/mm/init_32.c +++ linux-azure-5.8-5.8.0/arch/x86/mm/init_32.c @@ -764,6 +764,9 @@ * important here. */ set_highmem_pages_init(); +#ifdef CONFIG_HIGHMEM + set_default_mem_hotplug_zone(ZONE_HIGHMEM); +#endif /* this will put all low memory onto the freelists */ memblock_free_all(); --- linux-azure-5.8-5.8.0.orig/arch/x86/mm/mem_encrypt.c +++ linux-azure-5.8-5.8.0/arch/x86/mm/mem_encrypt.c @@ -349,6 +349,7 @@ { return sme_me_mask && sev_enabled; } +EXPORT_SYMBOL_GPL(sev_active); /* Override for DMA direct allocation check - ARCH_HAS_FORCE_DMA_UNENCRYPTED */ bool force_dma_unencrypted(struct device *dev) --- linux-azure-5.8-5.8.0.orig/arch/x86/mm/mem_encrypt_identity.c +++ linux-azure-5.8-5.8.0/arch/x86/mm/mem_encrypt_identity.c @@ -45,8 +45,8 @@ #define PMD_FLAGS_LARGE (__PAGE_KERNEL_LARGE_EXEC & ~_PAGE_GLOBAL) #define PMD_FLAGS_DEC PMD_FLAGS_LARGE -#define PMD_FLAGS_DEC_WP ((PMD_FLAGS_DEC & ~_PAGE_CACHE_MASK) | \ - (_PAGE_PAT | _PAGE_PWT)) +#define PMD_FLAGS_DEC_WP ((PMD_FLAGS_DEC & ~_PAGE_LARGE_CACHE_MASK) | \ + (_PAGE_PAT_LARGE | _PAGE_PWT)) #define PMD_FLAGS_ENC (PMD_FLAGS_LARGE | _PAGE_ENC) --- linux-azure-5.8-5.8.0.orig/arch/x86/mm/numa_emulation.c +++ linux-azure-5.8-5.8.0/arch/x86/mm/numa_emulation.c @@ -321,7 +321,7 @@ u64 addr, u64 max_addr, u64 size) { return split_nodes_size_interleave_uniform(ei, pi, addr, max_addr, size, - 0, NULL, NUMA_NO_NODE); + 0, NULL, 0); } static int __init setup_emu2phys_nid(int *dfl_phys_nid) --- linux-azure-5.8-5.8.0.orig/arch/x86/mm/pat/memtype.c +++ linux-azure-5.8-5.8.0/arch/x86/mm/pat/memtype.c @@ -1164,12 +1164,14 @@ static void *memtype_seq_next(struct seq_file *seq, void *v, loff_t *pos) { + kfree(v); ++*pos; return memtype_get_idx(*pos); } static void memtype_seq_stop(struct seq_file *seq, void *v) { + kfree(v); } static int memtype_seq_show(struct seq_file *seq, void *v) @@ -1181,8 +1183,6 @@ entry_print->end, cattr_name(entry_print->type)); - kfree(entry_print); - return 0; } --- linux-azure-5.8-5.8.0.orig/arch/x86/mm/pgtable.c +++ linux-azure-5.8-5.8.0/arch/x86/mm/pgtable.c @@ -829,6 +829,8 @@ } free_page((unsigned long)pmd_sv); + + pgtable_pmd_page_dtor(virt_to_page(pmd)); free_page((unsigned long)pmd); return 1; --- linux-azure-5.8-5.8.0.orig/arch/x86/mm/pti.c +++ linux-azure-5.8-5.8.0/arch/x86/mm/pti.c @@ -447,7 +447,13 @@ * the sp1 and sp2 slots. * * This is done for all possible CPUs during boot to ensure - * that it's propagated to all mms. + * that it's propagated to all mms. If we were to add one of + * these mappings during CPU hotplug, we would need to take + * some measure to make sure that every mm that subsequently + * ran on that CPU would have the relevant PGD entry in its + * pagetables. The usual vmalloc_fault() mechanism would not + * work for page faults taken in entry_SYSCALL_64 before RSP + * is set up. */ unsigned long va = (unsigned long)&per_cpu(cpu_tss_rw, cpu); --- linux-azure-5.8-5.8.0.orig/arch/x86/mm/tlb.c +++ linux-azure-5.8-5.8.0/arch/x86/mm/tlb.c @@ -317,6 +317,34 @@ local_irq_restore(flags); } +static void sync_current_stack_to_mm(struct mm_struct *mm) +{ + unsigned long sp = current_stack_pointer; + pgd_t *pgd = pgd_offset(mm, sp); + + if (pgtable_l5_enabled()) { + if (unlikely(pgd_none(*pgd))) { + pgd_t *pgd_ref = pgd_offset_k(sp); + + set_pgd(pgd, *pgd_ref); + } + } else { + /* + * "pgd" is faked. The top level entries are "p4d"s, so sync + * the p4d. This compiles to approximately the same code as + * the 5-level case. + */ + p4d_t *p4d = p4d_offset(pgd, sp); + + if (unlikely(p4d_none(*p4d))) { + pgd_t *pgd_ref = pgd_offset_k(sp); + p4d_t *p4d_ref = p4d_offset(pgd_ref, sp); + + set_p4d(p4d, *p4d_ref); + } + } +} + static inline unsigned long mm_mangle_tif_spec_ib(struct task_struct *next) { unsigned long next_tif = task_thread_info(next)->flags; @@ -475,8 +503,14 @@ /* * The membarrier system call requires a full memory barrier and * core serialization before returning to user-space, after - * storing to rq->curr. Writing to CR3 provides that full - * memory barrier and core serializing instruction. + * storing to rq->curr, when changing mm. This is because + * membarrier() sends IPIs to all CPUs that are in the target mm + * to make them issue memory barriers. However, if another CPU + * switches to/from the target mm concurrently with + * membarrier(), it can cause that CPU not to receive an IPI + * when it really should issue a memory barrier. Writing to CR3 + * provides that full memory barrier and core serializing + * instruction. */ if (real_prev == next) { VM_WARN_ON(this_cpu_read(cpu_tlbstate.ctxs[prev_asid].ctx_id) != @@ -525,6 +559,15 @@ */ cond_ibpb(tsk); + if (IS_ENABLED(CONFIG_VMAP_STACK)) { + /* + * If our current stack is in vmalloc space and isn't + * mapped in the new pgd, we'll double-fault. Forcibly + * map it. + */ + sync_current_stack_to_mm(next); + } + /* * Stop remote flushes for the previous mm. * Skip kernel threads; we never send init_mm TLB flushing IPIs, --- linux-azure-5.8-5.8.0.orig/arch/x86/net/bpf_jit_comp.c +++ linux-azure-5.8-5.8.0/arch/x86/net/bpf_jit_comp.c @@ -1322,7 +1322,16 @@ } if (image) { - if (unlikely(proglen + ilen > oldproglen)) { + /* + * When populating the image, assert that: + * + * i) We do not write beyond the allocated space, and + * ii) addrs[i] did not change from the prior run, in order + * to validate assumptions made for computing branch + * displacements. + */ + if (unlikely(proglen + ilen > oldproglen || + proglen + ilen != addrs[i])) { pr_err("bpf_jit: fatal error\n"); return -EFAULT; } --- linux-azure-5.8-5.8.0.orig/arch/x86/net/bpf_jit_comp32.c +++ linux-azure-5.8-5.8.0/arch/x86/net/bpf_jit_comp32.c @@ -2278,7 +2278,16 @@ } if (image) { - if (unlikely(proglen + ilen > oldproglen)) { + /* + * When populating the image, assert that: + * + * i) We do not write beyond the allocated space, and + * ii) addrs[i] did not change from the prior run, in order + * to validate assumptions made for computing branch + * displacements. + */ + if (unlikely(proglen + ilen > oldproglen || + proglen + ilen != addrs[i])) { pr_err("bpf_jit: fatal error\n"); return -EFAULT; } --- linux-azure-5.8-5.8.0.orig/arch/x86/pci/common.c +++ linux-azure-5.8-5.8.0/arch/x86/pci/common.c @@ -33,6 +33,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; @@ -605,6 +606,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-azure-5.8-5.8.0.orig/arch/x86/pci/early.c +++ linux-azure-5.8-5.8.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-azure-5.8-5.8.0.orig/arch/x86/pci/intel_mid_pci.c +++ linux-azure-5.8-5.8.0/arch/x86/pci/intel_mid_pci.c @@ -33,6 +33,7 @@ #include #include #include +#include #define PCIE_CAP_OFFSET 0x100 --- linux-azure-5.8-5.8.0.orig/arch/x86/pci/xen.c +++ linux-azure-5.8-5.8.0/arch/x86/pci/xen.c @@ -26,6 +26,7 @@ #include #include #include +#include #include static int xen_pcifront_enable_irq(struct pci_dev *dev) --- linux-azure-5.8-5.8.0.orig/arch/x86/platform/efi/efi_64.c +++ linux-azure-5.8-5.8.0/arch/x86/platform/efi/efi_64.c @@ -80,28 +80,30 @@ gfp_mask = GFP_KERNEL | __GFP_ZERO; efi_pgd = (pgd_t *)__get_free_pages(gfp_mask, PGD_ALLOCATION_ORDER); if (!efi_pgd) - return -ENOMEM; + goto fail; pgd = efi_pgd + pgd_index(EFI_VA_END); p4d = p4d_alloc(&init_mm, pgd, EFI_VA_END); - if (!p4d) { - free_page((unsigned long)efi_pgd); - return -ENOMEM; - } + if (!p4d) + goto free_pgd; pud = pud_alloc(&init_mm, p4d, EFI_VA_END); - if (!pud) { - if (pgtable_l5_enabled()) - free_page((unsigned long) pgd_page_vaddr(*pgd)); - free_pages((unsigned long)efi_pgd, PGD_ALLOCATION_ORDER); - return -ENOMEM; - } + if (!pud) + goto free_p4d; efi_mm.pgd = efi_pgd; mm_init_cpumask(&efi_mm); init_new_context(NULL, &efi_mm); return 0; + +free_p4d: + if (pgtable_l5_enabled()) + free_page((unsigned long)pgd_page_vaddr(*pgd)); +free_pgd: + free_pages((unsigned long)efi_pgd, PGD_ALLOCATION_ORDER); +fail: + return -ENOMEM; } /* @@ -118,31 +120,12 @@ if (efi_have_uv1_memmap()) return; - /* - * We can share all PGD entries apart from the one entry that - * covers the EFI runtime mapping space. - * - * Make sure the EFI runtime region mappings are guaranteed to - * only span a single PGD entry and that the entry also maps - * other important kernel regions. - */ - MAYBE_BUILD_BUG_ON(pgd_index(EFI_VA_END) != pgd_index(MODULES_END)); - MAYBE_BUILD_BUG_ON((EFI_VA_START & PGDIR_MASK) != - (EFI_VA_END & PGDIR_MASK)); - pgd_efi = efi_pgd + pgd_index(PAGE_OFFSET); pgd_k = pgd_offset_k(PAGE_OFFSET); num_entries = pgd_index(EFI_VA_END) - pgd_index(PAGE_OFFSET); memcpy(pgd_efi, pgd_k, sizeof(pgd_t) * num_entries); - /* - * As with PGDs, we share all P4D entries apart from the one entry - * that covers the EFI runtime mapping space. - */ - BUILD_BUG_ON(p4d_index(EFI_VA_END) != p4d_index(MODULES_END)); - BUILD_BUG_ON((EFI_VA_START & P4D_MASK) != (EFI_VA_END & P4D_MASK)); - pgd_efi = efi_pgd + pgd_index(EFI_VA_END); pgd_k = pgd_offset_k(EFI_VA_END); p4d_efi = p4d_offset(pgd_efi, 0); @@ -268,6 +251,8 @@ npages = (__end_rodata - __start_rodata) >> PAGE_SHIFT; rodata = __pa(__start_rodata); pfn = rodata >> PAGE_SHIFT; + + pf = _PAGE_NX | _PAGE_ENC; if (kernel_map_pages_in_pgd(pgd, pfn, rodata, npages, pf)) { pr_err("Failed to map kernel rodata 1:1\n"); return 1; --- linux-azure-5.8-5.8.0.orig/arch/x86/platform/pvh/head.S +++ linux-azure-5.8-5.8.0/arch/x86/platform/pvh/head.S @@ -16,6 +16,7 @@ #include #include #include +#include #include __HEAD @@ -105,6 +106,7 @@ /* startup_64 expects boot_params in %rsi. */ mov $_pa(pvh_bootparams), %rsi mov $_pa(startup_64), %rax + ANNOTATE_RETPOLINE_SAFE jmp *%rax #else /* CONFIG_X86_64 */ --- linux-azure-5.8-5.8.0.orig/arch/x86/power/hibernate_asm_64.S +++ linux-azure-5.8-5.8.0/arch/x86/power/hibernate_asm_64.S @@ -21,6 +21,7 @@ #include #include #include +#include SYM_FUNC_START(swsusp_arch_suspend) movq $saved_context, %rax @@ -66,6 +67,7 @@ /* jump to relocated restore code */ movq relocated_restore_code(%rip), %rcx + ANNOTATE_RETPOLINE_SAFE jmpq *%rcx SYM_CODE_END(restore_image) @@ -97,6 +99,7 @@ .Ldone: /* jump to the restore_registers address from the image header */ + ANNOTATE_RETPOLINE_SAFE jmpq *%r8 SYM_CODE_END(core_restore_code) --- linux-azure-5.8-5.8.0.orig/arch/x86/realmode/rm/trampoline_32.S +++ linux-azure-5.8-5.8.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-azure-5.8-5.8.0.orig/arch/x86/xen/enlighten_hvm.c +++ linux-azure-5.8-5.8.0/arch/x86/xen/enlighten_hvm.c @@ -187,6 +187,8 @@ return 0; } +static bool no_vector_callback __initdata; + static void __init xen_hvm_guest_init(void) { if (xen_pv_domain()) @@ -206,7 +208,7 @@ xen_panic_handler_init(); - if (xen_feature(XENFEAT_hvm_callback_vector)) + if (!no_vector_callback && xen_feature(XENFEAT_hvm_callback_vector)) xen_have_vector_callback = 1; xen_hvm_smp_init(); @@ -232,6 +234,13 @@ } early_param("xen_nopv", xen_parse_nopv); +static __init int xen_parse_no_vector_callback(char *arg) +{ + no_vector_callback = true; + return 0; +} +early_param("xen_no_vector_callback", xen_parse_no_vector_callback); + bool __init xen_hvm_need_lapic(void) { if (xen_pv_domain()) --- linux-azure-5.8-5.8.0.orig/arch/x86/xen/enlighten_pv.c +++ linux-azure-5.8-5.8.0/arch/x86/xen/enlighten_pv.c @@ -1438,6 +1438,15 @@ x86_init.mpparse.get_smp_config = x86_init_uint_noop; xen_boot_params_init_edd(); + +#ifdef CONFIG_ACPI + /* + * Disable selecting "Firmware First mode" for correctable + * memory errors, as this is the duty of the hypervisor to + * decide. + */ + acpi_disable_cmcff = 1; +#endif } if (!boot_params.screen_info.orig_video_isVGA) --- linux-azure-5.8-5.8.0.orig/arch/x86/xen/p2m.c +++ linux-azure-5.8-5.8.0/arch/x86/xen/p2m.c @@ -716,7 +716,8 @@ unsigned long mfn, pfn; /* Do not add to override if the map failed. */ - if (map_ops[i].status) + if (map_ops[i].status != GNTST_okay || + (kmap_ops && kmap_ops[i].status != GNTST_okay)) continue; if (map_ops[i].flags & GNTMAP_contains_pte) { @@ -754,17 +755,15 @@ unsigned long mfn = __pfn_to_mfn(page_to_pfn(pages[i])); unsigned long pfn = page_to_pfn(pages[i]); - if (mfn == INVALID_P2M_ENTRY || !(mfn & FOREIGN_FRAME_BIT)) { + if (mfn != INVALID_P2M_ENTRY && (mfn & FOREIGN_FRAME_BIT)) + set_phys_to_machine(pfn, INVALID_P2M_ENTRY); + else ret = -EINVAL; - goto out; - } - - set_phys_to_machine(pfn, INVALID_P2M_ENTRY); } if (kunmap_ops) ret = HYPERVISOR_grant_table_op(GNTTABOP_unmap_grant_ref, - kunmap_ops, count); -out: + kunmap_ops, count) ?: ret; + return ret; } EXPORT_SYMBOL_GPL(clear_foreign_p2m_mapping); --- linux-azure-5.8-5.8.0.orig/arch/x86/xen/spinlock.c +++ linux-azure-5.8-5.8.0/arch/x86/xen/spinlock.c @@ -93,10 +93,20 @@ void xen_uninit_lock_cpu(int cpu) { + int irq; + if (!xen_pvspin) return; - unbind_from_irqhandler(per_cpu(lock_kicker_irq, cpu), NULL); + /* + * When booting the kernel with 'mitigations=auto,nosmt', the secondary + * CPUs are not activated, and lock_kicker_irq is not initialized. + */ + irq = per_cpu(lock_kicker_irq, cpu); + if (irq == -1) + return; + + unbind_from_irqhandler(irq, NULL); per_cpu(lock_kicker_irq, cpu) = -1; kfree(per_cpu(irq_name, cpu)); per_cpu(irq_name, cpu) = NULL; --- linux-azure-5.8-5.8.0.orig/arch/xtensa/include/asm/Kbuild +++ linux-azure-5.8-5.8.0/arch/xtensa/include/asm/Kbuild @@ -2,7 +2,6 @@ generated-y += syscall_table.h generic-y += extable.h generic-y += kvm_para.h -generic-y += local64.h generic-y += mcs_spinlock.h generic-y += param.h generic-y += qrwlock.h --- linux-azure-5.8-5.8.0.orig/arch/xtensa/include/asm/pgtable.h +++ linux-azure-5.8-5.8.0/arch/xtensa/include/asm/pgtable.h @@ -69,7 +69,7 @@ */ #define VMALLOC_START (XCHAL_KSEG_CACHED_VADDR - 0x10000000) #define VMALLOC_END (VMALLOC_START + 0x07FEFFFF) -#define TLBTEMP_BASE_1 (VMALLOC_END + 1) +#define TLBTEMP_BASE_1 (VMALLOC_START + 0x08000000) #define TLBTEMP_BASE_2 (TLBTEMP_BASE_1 + DCACHE_WAY_SIZE) #if 2 * DCACHE_WAY_SIZE > ICACHE_WAY_SIZE #define TLBTEMP_SIZE (2 * DCACHE_WAY_SIZE) --- linux-azure-5.8-5.8.0.orig/arch/xtensa/include/asm/thread_info.h +++ linux-azure-5.8-5.8.0/arch/xtensa/include/asm/thread_info.h @@ -55,6 +55,10 @@ mm_segment_t addr_limit; /* thread address space */ unsigned long cpenable; +#if XCHAL_HAVE_EXCLUSIVE + /* result of the most recent exclusive store */ + unsigned long atomctl8; +#endif /* Allocate storage for extra user states and coprocessor states. */ #if XTENSA_HAVE_COPROCESSORS --- linux-azure-5.8-5.8.0.orig/arch/xtensa/include/asm/uaccess.h +++ linux-azure-5.8-5.8.0/arch/xtensa/include/asm/uaccess.h @@ -302,7 +302,7 @@ return -EFAULT; } #else -long strncpy_from_user(char *dst, const char *src, long count); +long strncpy_from_user(char *dst, const char __user *src, long count); #endif /* --- linux-azure-5.8-5.8.0.orig/arch/xtensa/kernel/asm-offsets.c +++ linux-azure-5.8-5.8.0/arch/xtensa/kernel/asm-offsets.c @@ -93,6 +93,9 @@ DEFINE(THREAD_RA, offsetof (struct task_struct, thread.ra)); DEFINE(THREAD_SP, offsetof (struct task_struct, thread.sp)); DEFINE(THREAD_CPENABLE, offsetof (struct thread_info, cpenable)); +#if XCHAL_HAVE_EXCLUSIVE + DEFINE(THREAD_ATOMCTL8, offsetof (struct thread_info, atomctl8)); +#endif #if XTENSA_HAVE_COPROCESSORS DEFINE(THREAD_XTREGS_CP0, offsetof(struct thread_info, xtregs_cp.cp0)); DEFINE(THREAD_XTREGS_CP1, offsetof(struct thread_info, xtregs_cp.cp1)); --- linux-azure-5.8-5.8.0.orig/arch/xtensa/kernel/entry.S +++ linux-azure-5.8-5.8.0/arch/xtensa/kernel/entry.S @@ -374,6 +374,11 @@ s32i a2, a1, PT_LCOUNT #endif +#if XCHAL_HAVE_EXCLUSIVE + /* Clear exclusive access monitor set by interrupted code */ + clrex +#endif + /* It is now save to restore the EXC_TABLE_FIXUP variable. */ rsr a2, exccause @@ -2020,6 +2025,12 @@ s32i a3, a4, THREAD_CPENABLE #endif +#if XCHAL_HAVE_EXCLUSIVE + l32i a3, a5, THREAD_ATOMCTL8 + getex a3 + s32i a3, a4, THREAD_ATOMCTL8 +#endif + /* Flush register file. */ spill_registers_kernel --- linux-azure-5.8-5.8.0.orig/arch/xtensa/kernel/perf_event.c +++ linux-azure-5.8-5.8.0/arch/xtensa/kernel/perf_event.c @@ -399,7 +399,7 @@ .read = xtensa_pmu_read, }; -static int xtensa_pmu_setup(int cpu) +static int xtensa_pmu_setup(unsigned int cpu) { unsigned i; --- linux-azure-5.8-5.8.0.orig/arch/xtensa/mm/cache.c +++ linux-azure-5.8-5.8.0/arch/xtensa/mm/cache.c @@ -71,8 +71,10 @@ kvaddr = TLBTEMP_BASE_1 + (page_to_phys(page) & DCACHE_ALIAS_MASK); + preempt_disable(); __invalidate_dcache_page_alias(kvaddr, page_to_phys(page)); + preempt_enable(); } } } @@ -157,6 +159,7 @@ if (!alias && !mapping) return; + preempt_disable(); virt = TLBTEMP_BASE_1 + (phys & DCACHE_ALIAS_MASK); __flush_invalidate_dcache_page_alias(virt, phys); @@ -167,6 +170,7 @@ if (mapping) __invalidate_icache_page_alias(virt, phys); + preempt_enable(); } /* There shouldn't be an entry in the cache for this page anymore. */ @@ -200,8 +204,10 @@ unsigned long phys = page_to_phys(pfn_to_page(pfn)); unsigned long virt = TLBTEMP_BASE_1 + (address & DCACHE_ALIAS_MASK); + preempt_disable(); __flush_invalidate_dcache_page_alias(virt, phys); __invalidate_icache_page_alias(virt, phys); + preempt_enable(); } EXPORT_SYMBOL(local_flush_cache_page); @@ -228,11 +234,13 @@ unsigned long phys = page_to_phys(page); unsigned long tmp; + preempt_disable(); tmp = TLBTEMP_BASE_1 + (phys & DCACHE_ALIAS_MASK); __flush_invalidate_dcache_page_alias(tmp, phys); tmp = TLBTEMP_BASE_1 + (addr & DCACHE_ALIAS_MASK); __flush_invalidate_dcache_page_alias(tmp, phys); __invalidate_icache_page_alias(tmp, phys); + preempt_enable(); clear_bit(PG_arch_1, &page->flags); } @@ -266,7 +274,9 @@ if (alias) { unsigned long t = TLBTEMP_BASE_1 + (vaddr & DCACHE_ALIAS_MASK); + preempt_disable(); __flush_invalidate_dcache_page_alias(t, phys); + preempt_enable(); } /* Copy data */ @@ -281,9 +291,11 @@ if (alias) { unsigned long t = TLBTEMP_BASE_1 + (vaddr & DCACHE_ALIAS_MASK); + preempt_disable(); __flush_invalidate_dcache_range((unsigned long) dst, len); if ((vma->vm_flags & VM_EXEC) != 0) __invalidate_icache_page_alias(t, phys); + preempt_enable(); } else if ((vma->vm_flags & VM_EXEC) != 0) { __flush_dcache_range((unsigned long)dst,len); @@ -305,7 +317,9 @@ if (alias) { unsigned long t = TLBTEMP_BASE_1 + (vaddr & DCACHE_ALIAS_MASK); + preempt_disable(); __flush_invalidate_dcache_page_alias(t, phys); + preempt_enable(); } memcpy(dst, src, len); --- linux-azure-5.8-5.8.0.orig/block/bfq-cgroup.c +++ linux-azure-5.8-5.8.0/block/bfq-cgroup.c @@ -332,7 +332,7 @@ kfree(bfqg); } -void bfqg_and_blkg_get(struct bfq_group *bfqg) +static void bfqg_and_blkg_get(struct bfq_group *bfqg) { /* see comments in bfq_bic_update_cgroup for why refcounting bfqg */ bfqg_get(bfqg); --- linux-azure-5.8-5.8.0.orig/block/bfq-iosched.c +++ linux-azure-5.8-5.8.0/block/bfq-iosched.c @@ -2937,6 +2937,7 @@ } bfqd->in_service_queue = bfqq; + bfqd->in_serv_last_pos = 0; } /* @@ -5896,18 +5897,6 @@ struct bfq_data *bfqd; /* - * Requeue and finish hooks are invoked in blk-mq without - * checking whether the involved request is actually still - * referenced in the scheduler. To handle this fact, the - * following two checks make this function exit in case of - * spurious invocations, for which there is nothing to do. - * - * First, check whether rq has nothing to do with an elevator. - */ - if (unlikely(!(rq->rq_flags & RQF_ELVPRIV))) - return; - - /* * rq either is not associated with any icq, or is an already * requeued request that has not (yet) been re-inserted into * a bfq_queue. --- linux-azure-5.8-5.8.0.orig/block/bfq-iosched.h +++ linux-azure-5.8-5.8.0/block/bfq-iosched.h @@ -986,7 +986,6 @@ struct blkcg_gq *bfqg_to_blkg(struct bfq_group *bfqg); struct bfq_group *bfqq_group(struct bfq_queue *bfqq); struct bfq_group *bfq_create_group_hierarchy(struct bfq_data *bfqd, int node); -void bfqg_and_blkg_get(struct bfq_group *bfqg); void bfqg_and_blkg_put(struct bfq_group *bfqg); #ifdef CONFIG_BFQ_GROUP_IOSCHED --- linux-azure-5.8-5.8.0.orig/block/bfq-wf2q.c +++ linux-azure-5.8-5.8.0/block/bfq-wf2q.c @@ -533,9 +533,7 @@ bfqq->ref++; bfq_log_bfqq(bfqq->bfqd, bfqq, "get_entity: %p %d", bfqq, bfqq->ref); - } else - bfqg_and_blkg_get(container_of(entity, struct bfq_group, - entity)); + } } /** @@ -649,14 +647,8 @@ entity->on_st_or_in_serv = false; st->wsum -= entity->weight; - if (is_in_service) - return; - - if (bfqq) + if (bfqq && !is_in_service) bfq_put_queue(bfqq); - else - bfqg_and_blkg_put(container_of(entity, struct bfq_group, - entity)); } /** --- linux-azure-5.8-5.8.0.orig/block/bio.c +++ linux-azure-5.8-5.8.0/block/bio.c @@ -738,8 +738,8 @@ struct page *page, unsigned int len, unsigned int off, bool *same_page) { - phys_addr_t vec_end_addr = page_to_phys(bv->bv_page) + - bv->bv_offset + bv->bv_len - 1; + 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; phys_addr_t page_addr = page_to_phys(page); if (vec_end_addr + 1 != page_addr + off) @@ -748,9 +748,9 @@ return false; *same_page = ((vec_end_addr & PAGE_MASK) == page_addr); - if (!*same_page && pfn_to_page(PFN_DOWN(vec_end_addr)) + 1 != page) - return false; - return true; + if (*same_page) + return true; + return (bv->bv_page + bv_end / PAGE_SIZE) == (page + off / PAGE_SIZE); } /* @@ -877,8 +877,10 @@ 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) + 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; @@ -1042,6 +1044,7 @@ ssize_t size, left; unsigned len, i; size_t offset; + int ret = 0; if (WARN_ON_ONCE(!max_append_sectors)) return 0; @@ -1064,15 +1067,17 @@ len = min_t(size_t, PAGE_SIZE - offset, left); if (bio_add_hw_page(q, bio, page, len, offset, - max_append_sectors, &same_page) != len) - return -EINVAL; + max_append_sectors, &same_page) != len) { + ret = -EINVAL; + break; + } if (same_page) put_page(page); offset = 0; } - iov_iter_advance(iter, size); - return 0; + iov_iter_advance(iter, size - left); + return ret; } /** --- linux-azure-5.8-5.8.0.orig/block/blk-cgroup.c +++ linux-azure-5.8-5.8.0/block/blk-cgroup.c @@ -676,13 +676,20 @@ goto fail; } + if (radix_tree_preload(GFP_KERNEL)) { + blkg_free(new_blkg); + ret = -ENOMEM; + goto fail; + } + rcu_read_lock(); spin_lock_irq(&q->queue_lock); blkg = blkg_lookup_check(pos, pol, q); if (IS_ERR(blkg)) { ret = PTR_ERR(blkg); - goto fail_unlock; + blkg_free(new_blkg); + goto fail_preloaded; } if (blkg) { @@ -691,10 +698,12 @@ blkg = blkg_create(pos, q, new_blkg); if (IS_ERR(blkg)) { ret = PTR_ERR(blkg); - goto fail_unlock; + goto fail_preloaded; } } + radix_tree_preload_end(); + if (pos == blkcg) goto success; } @@ -704,6 +713,8 @@ ctx->body = input; return 0; +fail_preloaded: + radix_tree_preload_end(); fail_unlock: spin_unlock_irq(&q->queue_lock); rcu_read_unlock(); @@ -900,6 +911,8 @@ */ void blkcg_destroy_blkgs(struct blkcg *blkcg) { + might_sleep(); + spin_lock_irq(&blkcg->lock); while (!hlist_empty(&blkcg->blkg_list)) { @@ -907,14 +920,20 @@ struct blkcg_gq, blkcg_node); struct request_queue *q = blkg->q; - if (spin_trylock(&q->queue_lock)) { - blkg_destroy(blkg); - spin_unlock(&q->queue_lock); - } else { + if (need_resched() || !spin_trylock(&q->queue_lock)) { + /* + * Given that the system can accumulate a huge number + * of blkgs in pathological cases, check to see if we + * need to rescheduling to avoid softlockup. + */ spin_unlock_irq(&blkcg->lock); - cpu_relax(); + cond_resched(); spin_lock_irq(&blkcg->lock); + continue; } + + blkg_destroy(blkg); + spin_unlock(&q->queue_lock); } spin_unlock_irq(&blkcg->lock); @@ -1056,13 +1075,15 @@ if (preloaded) radix_tree_preload_end(); - ret = blk_iolatency_init(q); + ret = blk_throtl_init(q); if (ret) goto err_destroy_all; - ret = blk_throtl_init(q); - if (ret) + ret = blk_iolatency_init(q); + if (ret) { + blk_throtl_exit(q); goto err_destroy_all; + } return 0; err_destroy_all: --- linux-azure-5.8-5.8.0.orig/block/blk-core.c +++ linux-azure-5.8-5.8.0/block/blk-core.c @@ -18,6 +18,7 @@ #include #include #include +#include #include #include #include @@ -407,11 +408,11 @@ /** * blk_queue_enter() - try to increase q->q_usage_counter * @q: request queue pointer - * @flags: BLK_MQ_REQ_NOWAIT and/or BLK_MQ_REQ_PREEMPT + * @flags: BLK_MQ_REQ_NOWAIT and/or BLK_MQ_REQ_PM */ int blk_queue_enter(struct request_queue *q, blk_mq_req_flags_t flags) { - const bool pm = flags & BLK_MQ_REQ_PREEMPT; + const bool pm = flags & BLK_MQ_REQ_PM; while (true) { bool success = false; @@ -423,7 +424,8 @@ * responsible for ensuring that that counter is * globally visible before the queue is unfrozen. */ - if (pm || !blk_queue_pm_only(q)) { + if ((pm && queue_rpm_status(q) != RPM_SUSPENDED) || + !blk_queue_pm_only(q)) { success = true; } else { percpu_ref_put(&q->q_usage_counter); @@ -448,8 +450,7 @@ wait_event(q->mq_freeze_wq, (!q->mq_freeze_depth && - (pm || (blk_pm_request_resume(q), - !blk_queue_pm_only(q)))) || + blk_pm_resume_queue(pm, q)) || blk_queue_dying(q)); if (blk_queue_dying(q)) return -ENODEV; @@ -526,6 +527,7 @@ goto fail_stats; q->backing_dev_info->ra_pages = VM_READAHEAD_PAGES; + q->backing_dev_info->io_pages = VM_READAHEAD_PAGES; q->backing_dev_info->capabilities = BDI_CAP_CGROUP_WRITEBACK; q->node = node_id; @@ -621,7 +623,7 @@ struct request *req; WARN_ON_ONCE(op & REQ_NOWAIT); - WARN_ON_ONCE(flags & ~(BLK_MQ_REQ_NOWAIT | BLK_MQ_REQ_PREEMPT)); + WARN_ON_ONCE(flags & ~(BLK_MQ_REQ_NOWAIT | BLK_MQ_REQ_PM)); req = blk_mq_alloc_request(q, op, flags); if (!IS_ERR(req) && q->mq_ops->initialize_rq_fn) @@ -797,11 +799,10 @@ { char b[BDEVNAME_SIZE]; - printk(KERN_INFO "attempt to access beyond end of device\n"); - printk(KERN_INFO "%s: rw=%d, want=%Lu, limit=%Lu\n", - bio_devname(bio, b), bio->bi_opf, - (unsigned long long)bio_end_sector(bio), - (long long)maxsector); + pr_info_ratelimited("attempt to access beyond end of device\n" + "%s: rw=%d, want=%llu, limit=%llu\n", + bio_devname(bio, b), bio->bi_opf, + bio_end_sector(bio), maxsector); } #ifdef CONFIG_FAIL_MAKE_REQUEST @@ -972,11 +973,14 @@ } /* - * For a REQ_NOWAIT based request, return -EOPNOTSUPP - * if queue is not a request based queue. + * Non-mq queues do not honor REQ_NOWAIT, so complete a bio + * with BLK_STS_AGAIN status in order to catch -EAGAIN and + * to give a chance to the caller to repeat request gracefully. */ - if ((bio->bi_opf & REQ_NOWAIT) && !queue_is_mq(q)) - goto not_supported; + if ((bio->bi_opf & REQ_NOWAIT) && !queue_is_mq(q)) { + status = BLK_STS_AGAIN; + goto end_io; + } if (should_fail_bio(bio)) goto end_io; --- linux-azure-5.8-5.8.0.orig/block/blk-iocost.c +++ linux-azure-5.8-5.8.0/block/blk-iocost.c @@ -1370,7 +1370,7 @@ * should have woken up in the last period and expire idle iocgs. */ list_for_each_entry_safe(iocg, tiocg, &ioc->active_iocgs, active_list) { - if (!waitqueue_active(&iocg->waitq) && iocg->abs_vdebt && + if (!waitqueue_active(&iocg->waitq) && !iocg->abs_vdebt && !iocg_is_idle(iocg)) continue; @@ -1729,8 +1729,8 @@ u32 hw_active, hw_inuse; u64 abs_cost, cost, vtime; - /* bypass IOs if disabled or for root cgroup */ - if (!ioc->enabled || !iocg->level) + /* bypass IOs if disabled, still initializing, or for root cgroup */ + if (!ioc->enabled || !iocg || !iocg->level) return; /* always activate so that even 0 cost IOs get protected to some level */ @@ -1849,15 +1849,15 @@ struct bio *bio) { struct ioc_gq *iocg = blkg_to_iocg(bio->bi_blkg); - struct ioc *ioc = iocg->ioc; + struct ioc *ioc = rqos_to_ioc(rqos); sector_t bio_end = bio_end_sector(bio); struct ioc_now now; u32 hw_inuse; u64 abs_cost, cost; unsigned long flags; - /* bypass if disabled or for root cgroup */ - if (!ioc->enabled || !iocg->level) + /* bypass if disabled, still initializing, or for root cgroup */ + if (!ioc->enabled || !iocg || !iocg->level) return; abs_cost = calc_vtime_cost(bio, iocg, true); @@ -2011,6 +2011,12 @@ ioc_refresh_params(ioc, true); spin_unlock_irq(&ioc->lock); + /* + * rqos must be added before activation to allow iocg_pd_init() to + * lookup the ioc from q. This means that the rqos methods may get + * called before policy activation completion, can't assume that the + * target bio has an iocg associated and need to test for NULL iocg. + */ rq_qos_add(q, rqos); ret = blkcg_activate_policy(q, &blkcg_policy_iocost); if (ret) { @@ -2094,14 +2100,15 @@ { struct ioc_gq *iocg = pd_to_iocg(pd); struct ioc *ioc = iocg->ioc; + unsigned long flags; if (ioc) { - spin_lock(&ioc->lock); + spin_lock_irqsave(&ioc->lock, flags); if (!list_empty(&iocg->active_list)) { propagate_active_weight(iocg, 0, 0); list_del_init(&iocg->active_list); } - spin_unlock(&ioc->lock); + spin_unlock_irqrestore(&ioc->lock, flags); hrtimer_cancel(&iocg->waitq_timer); hrtimer_cancel(&iocg->delay_timer); --- linux-azure-5.8-5.8.0.orig/block/blk-merge.c +++ linux-azure-5.8-5.8.0/block/blk-merge.c @@ -154,7 +154,7 @@ if (max_sectors > start_offset) return max_sectors - start_offset; - return sectors & (lbs - 1); + return sectors & ~(lbs - 1); } static inline unsigned get_max_segment_size(const struct request_queue *q, @@ -534,10 +534,17 @@ } EXPORT_SYMBOL(__blk_rq_map_sg); +static inline unsigned int blk_rq_get_max_segments(struct request *rq) +{ + if (req_op(rq) == REQ_OP_DISCARD) + return queue_max_discard_segments(rq->q); + return queue_max_segments(rq->q); +} + static inline int ll_new_hw_segment(struct request *req, struct bio *bio, unsigned int nr_phys_segs) { - if (req->nr_phys_segments + nr_phys_segs > queue_max_segments(req->q)) + if (req->nr_phys_segments + nr_phys_segs > blk_rq_get_max_segments(req)) goto no_merge; if (blk_integrity_merge_bio(req->q, req, bio) == false) @@ -625,7 +632,7 @@ return 0; total_phys_segments = req->nr_phys_segments + next->nr_phys_segments; - if (total_phys_segments > queue_max_segments(q)) + if (total_phys_segments > blk_rq_get_max_segments(req)) return 0; if (blk_integrity_merge_rq(q, req, next) == false) --- linux-azure-5.8-5.8.0.orig/block/blk-mq-debugfs.c +++ linux-azure-5.8-5.8.0/block/blk-mq-debugfs.c @@ -296,7 +296,6 @@ RQF_NAME(MIXED_MERGE), RQF_NAME(MQ_INFLIGHT), RQF_NAME(DONTPREP), - RQF_NAME(PREEMPT), RQF_NAME(FAILED), RQF_NAME(QUIET), RQF_NAME(ELVPRIV), --- linux-azure-5.8-5.8.0.orig/block/blk-mq-sched.c +++ linux-azure-5.8-5.8.0/block/blk-mq-sched.c @@ -77,6 +77,15 @@ return; clear_bit(BLK_MQ_S_SCHED_RESTART, &hctx->state); + /* + * Order clearing SCHED_RESTART and list_empty_careful(&hctx->dispatch) + * in blk_mq_run_hw_queue(). Its pair is the barrier in + * blk_mq_dispatch_rq_list(). So dispatch code won't see SCHED_RESTART, + * meantime new request added to hctx->dispatch is missed to check in + * blk_mq_run_hw_queue(). + */ + smp_mb(); + blk_mq_run_hw_queue(hctx, true); } --- linux-azure-5.8-5.8.0.orig/block/blk-mq-sched.h +++ linux-azure-5.8-5.8.0/block/blk-mq-sched.h @@ -66,7 +66,7 @@ struct request_queue *q = rq->q; struct elevator_queue *e = q->elevator; - if (e && e->type->ops.requeue_request) + if ((rq->rq_flags & RQF_ELVPRIV) && e && e->type->ops.requeue_request) e->type->ops.requeue_request(rq); } --- linux-azure-5.8-5.8.0.orig/block/blk-mq-sysfs.c +++ linux-azure-5.8-5.8.0/block/blk-mq-sysfs.c @@ -36,8 +36,6 @@ struct blk_mq_hw_ctx *hctx = container_of(kobj, struct blk_mq_hw_ctx, kobj); - cancel_delayed_work_sync(&hctx->run_work); - if (hctx->flags & BLK_MQ_F_BLOCKING) cleanup_srcu_struct(hctx->srcu); blk_free_flush_queue(hctx->fq); --- linux-azure-5.8-5.8.0.orig/block/blk-mq-tag.c +++ linux-azure-5.8-5.8.0/block/blk-mq-tag.c @@ -90,9 +90,9 @@ static int __blk_mq_get_tag(struct blk_mq_alloc_data *data, struct sbitmap_queue *bt) { - if (!(data->flags & BLK_MQ_REQ_INTERNAL) && - !hctx_may_queue(data->hctx, bt)) + if (!data->q->elevator && !hctx_may_queue(data->hctx, bt)) return BLK_MQ_NO_TAG; + if (data->shallow_depth) return __sbitmap_queue_get_shallow(bt, data->shallow_depth); else --- linux-azure-5.8-5.8.0.orig/block/blk-mq.c +++ linux-azure-5.8-5.8.0/block/blk-mq.c @@ -103,7 +103,7 @@ { struct mq_inflight *mi = priv; - if (rq->part == mi->part) + if (rq->part == mi->part && blk_mq_rq_state(rq) == MQ_RQ_IN_FLIGHT) mi->inflight[rq_data_dir(rq)]++; return true; @@ -277,7 +277,7 @@ struct request *rq = tags->static_rqs[tag]; req_flags_t rq_flags = 0; - if (data->flags & BLK_MQ_REQ_INTERNAL) { + if (data->q->elevator) { rq->tag = BLK_MQ_NO_TAG; rq->internal_tag = tag; } else { @@ -296,8 +296,8 @@ rq->mq_hctx = data->hctx; rq->rq_flags = rq_flags; rq->cmd_flags = data->cmd_flags; - if (data->flags & BLK_MQ_REQ_PREEMPT) - rq->rq_flags |= RQF_PREEMPT; + if (data->flags & BLK_MQ_REQ_PM) + rq->rq_flags |= RQF_PM; if (blk_queue_io_stat(data->q)) rq->rq_flags |= RQF_IO_STAT; INIT_LIST_HEAD(&rq->queuelist); @@ -362,8 +362,6 @@ data->flags |= BLK_MQ_REQ_NOWAIT; if (e) { - data->flags |= BLK_MQ_REQ_INTERNAL; - /* * Flush requests are special and go directly to the * dispatch list. Don't include reserved tags in the @@ -378,7 +376,7 @@ retry: data->ctx = blk_mq_get_ctx(q); data->hctx = blk_mq_map_queue(q, data->cmd_flags, data->ctx); - if (!(data->flags & BLK_MQ_REQ_INTERNAL)) + if (!e) blk_mq_tag_busy(data->hctx); /* @@ -474,9 +472,7 @@ cpu = cpumask_first_and(data.hctx->cpumask, cpu_online_mask); data.ctx = __blk_mq_get_ctx(q, cpu); - if (q->elevator) - data.flags |= BLK_MQ_REQ_INTERNAL; - else + if (!q->elevator) blk_mq_tag_busy(data.hctx); ret = -EWOULDBLOCK; @@ -1304,6 +1300,11 @@ hctx->dispatched[queued_to_index(queued)]++; + /* If we didn't flush the entire list, we could have told the driver + * there was more coming, but that turned out to be a lie. + */ + if ((!list_empty(list) || errors) && q->mq_ops->commit_rqs && queued) + q->mq_ops->commit_rqs(hctx); /* * Any items that need requeuing? Stuff them into hctx->dispatch, * that is where we will continue on next queue run. @@ -1311,19 +1312,20 @@ if (!list_empty(list)) { bool needs_restart; - /* - * If we didn't flush the entire list, we could have told - * the driver there was more coming, but that turned out to - * be a lie. - */ - if (q->mq_ops->commit_rqs && queued) - q->mq_ops->commit_rqs(hctx); - spin_lock(&hctx->lock); list_splice_tail_init(list, &hctx->dispatch); spin_unlock(&hctx->lock); /* + * Order adding requests to hctx->dispatch and checking + * SCHED_RESTART flag. The pair of this smp_mb() is the one + * in blk_mq_sched_restart(). Avoid restart code path to + * miss the new added requests to hctx->dispatch, meantime + * SCHED_RESTART is observed here. + */ + smp_mb(); + + /* * If SCHED_RESTART was set by the caller of this function and * it is no longer set that means that it was cleared by another * thread and hence that a queue rerun is needed. @@ -1909,7 +1911,8 @@ if (bypass_insert) return BLK_STS_RESOURCE; - blk_mq_request_bypass_insert(rq, false, run_queue); + blk_mq_sched_insert_request(rq, false, run_queue, false); + return BLK_STS_OK; } @@ -1961,6 +1964,7 @@ struct list_head *list) { int queued = 0; + int errors = 0; while (!list_empty(list)) { blk_status_t ret; @@ -1977,6 +1981,7 @@ break; } blk_mq_end_request(rq, ret); + errors++; } else queued++; } @@ -1986,7 +1991,8 @@ * the driver there was more coming, but that turned out to * be a lie. */ - if (!list_empty(list) && hctx->queue->mq_ops->commit_rqs && queued) + if ((!list_empty(list) || errors) && + hctx->queue->mq_ops->commit_rqs && queued) hctx->queue->mq_ops->commit_rqs(hctx); } --- linux-azure-5.8-5.8.0.orig/block/blk-mq.h +++ linux-azure-5.8-5.8.0/block/blk-mq.h @@ -159,7 +159,7 @@ static inline struct blk_mq_tags *blk_mq_tags_from_data(struct blk_mq_alloc_data *data) { - if (data->flags & BLK_MQ_REQ_INTERNAL) + if (data->q->elevator) return data->hctx->sched_tags; return data->hctx->tags; --- linux-azure-5.8-5.8.0.orig/block/blk-pm.c +++ linux-azure-5.8-5.8.0/block/blk-pm.c @@ -67,6 +67,10 @@ WARN_ON_ONCE(q->rpm_status != RPM_ACTIVE); + spin_lock_irq(&q->queue_lock); + q->rpm_status = RPM_SUSPENDING; + spin_unlock_irq(&q->queue_lock); + /* * Increase the pm_only counter before checking whether any * non-PM blk_queue_enter() calls are in progress to avoid that any @@ -89,15 +93,14 @@ /* Switch q_usage_counter back to per-cpu mode. */ blk_mq_unfreeze_queue(q); - spin_lock_irq(&q->queue_lock); - if (ret < 0) + if (ret < 0) { + spin_lock_irq(&q->queue_lock); + q->rpm_status = RPM_ACTIVE; pm_runtime_mark_last_busy(q->dev); - else - q->rpm_status = RPM_SUSPENDING; - spin_unlock_irq(&q->queue_lock); + spin_unlock_irq(&q->queue_lock); - if (ret) blk_clear_pm_only(q); + } return ret; } --- linux-azure-5.8-5.8.0.orig/block/blk-pm.h +++ linux-azure-5.8-5.8.0/block/blk-pm.h @@ -6,11 +6,14 @@ #include #ifdef CONFIG_PM -static inline void blk_pm_request_resume(struct request_queue *q) +static inline int blk_pm_resume_queue(const bool pm, struct request_queue *q) { - if (q->dev && (q->rpm_status == RPM_SUSPENDED || - q->rpm_status == RPM_SUSPENDING)) - pm_request_resume(q->dev); + if (!q->dev || !blk_queue_pm_only(q)) + return 1; /* Nothing to do */ + if (pm && q->rpm_status != RPM_SUSPENDED) + return 1; /* Request allowed */ + pm_request_resume(q->dev); + return 0; } static inline void blk_pm_mark_last_busy(struct request *rq) @@ -44,8 +47,9 @@ --rq->q->nr_pending; } #else -static inline void blk_pm_request_resume(struct request_queue *q) +static inline int blk_pm_resume_queue(const bool pm, struct request_queue *q) { + return 1; } static inline void blk_pm_mark_last_busy(struct request *rq) --- linux-azure-5.8-5.8.0.orig/block/blk-settings.c +++ linux-azure-5.8-5.8.0/block/blk-settings.c @@ -466,6 +466,14 @@ } EXPORT_SYMBOL(blk_queue_stack_limits); +static unsigned int blk_round_down_sectors(unsigned int sectors, unsigned int lbs) +{ + sectors = round_down(sectors, lbs >> SECTOR_SHIFT); + if (sectors < PAGE_SIZE >> SECTOR_SHIFT) + sectors = PAGE_SIZE >> SECTOR_SHIFT; + return sectors; +} + /** * blk_stack_limits - adjust queue_limits for stacked devices * @t: the stacking driver limits (top device) @@ -581,6 +589,10 @@ ret = -1; } + t->max_sectors = blk_round_down_sectors(t->max_sectors, t->logical_block_size); + t->max_hw_sectors = blk_round_down_sectors(t->max_hw_sectors, t->logical_block_size); + t->max_dev_sectors = blk_round_down_sectors(t->max_dev_sectors, t->logical_block_size); + /* Discard alignment and granularity */ if (b->discard_granularity) { alignment = queue_limit_discard_alignment(b, start); @@ -832,6 +844,52 @@ } EXPORT_SYMBOL_GPL(blk_queue_can_use_dma_map_merging); +/** + * blk_queue_set_zoned - configure a disk queue zoned model. + * @disk: the gendisk of the queue to configure + * @model: the zoned model to set + * + * Set the zoned model of the request queue of @disk according to @model. + * When @model is BLK_ZONED_HM (host managed), this should be called only + * if zoned block device support is enabled (CONFIG_BLK_DEV_ZONED option). + * If @model specifies BLK_ZONED_HA (host aware), the effective model used + * depends on CONFIG_BLK_DEV_ZONED settings and on the existence of partitions + * on the disk. + */ +void blk_queue_set_zoned(struct gendisk *disk, enum blk_zoned_model model) +{ + switch (model) { + case BLK_ZONED_HM: + /* + * Host managed devices are supported only if + * CONFIG_BLK_DEV_ZONED is enabled. + */ + WARN_ON_ONCE(!IS_ENABLED(CONFIG_BLK_DEV_ZONED)); + break; + case BLK_ZONED_HA: + /* + * Host aware devices can be treated either as regular block + * devices (similar to drive managed devices) or as zoned block + * devices to take advantage of the zone command set, similarly + * to host managed devices. We try the latter if there are no + * partitions and zoned block device support is enabled, else + * we do nothing special as far as the block layer is concerned. + */ + if (!IS_ENABLED(CONFIG_BLK_DEV_ZONED) || + disk_has_partitions(disk)) + model = BLK_ZONED_NONE; + break; + case BLK_ZONED_NONE: + default: + if (WARN_ON_ONCE(model != BLK_ZONED_NONE)) + model = BLK_ZONED_NONE; + break; + } + + disk->queue->limits.zoned = model; +} +EXPORT_SYMBOL_GPL(blk_queue_set_zoned); + static int __init blk_settings_init(void) { blk_max_low_pfn = max_low_pfn - 1; --- linux-azure-5.8-5.8.0.orig/block/blk-stat.c +++ linux-azure-5.8-5.8.0/block/blk-stat.c @@ -137,6 +137,7 @@ struct blk_stat_callback *cb) { unsigned int bucket; + unsigned long flags; int cpu; for_each_possible_cpu(cpu) { @@ -147,20 +148,22 @@ blk_rq_stat_init(&cpu_stat[bucket]); } - spin_lock(&q->stats->lock); + spin_lock_irqsave(&q->stats->lock, flags); list_add_tail_rcu(&cb->list, &q->stats->callbacks); blk_queue_flag_set(QUEUE_FLAG_STATS, q); - spin_unlock(&q->stats->lock); + spin_unlock_irqrestore(&q->stats->lock, flags); } void blk_stat_remove_callback(struct request_queue *q, struct blk_stat_callback *cb) { - spin_lock(&q->stats->lock); + unsigned long flags; + + spin_lock_irqsave(&q->stats->lock, flags); list_del_rcu(&cb->list); if (list_empty(&q->stats->callbacks) && !q->stats->enable_accounting) blk_queue_flag_clear(QUEUE_FLAG_STATS, q); - spin_unlock(&q->stats->lock); + spin_unlock_irqrestore(&q->stats->lock, flags); del_timer_sync(&cb->timer); } @@ -183,10 +186,12 @@ void blk_stat_enable_accounting(struct request_queue *q) { - spin_lock(&q->stats->lock); + unsigned long flags; + + spin_lock_irqsave(&q->stats->lock, flags); q->stats->enable_accounting = true; blk_queue_flag_set(QUEUE_FLAG_STATS, q); - spin_unlock(&q->stats->lock); + spin_unlock_irqrestore(&q->stats->lock, flags); } EXPORT_SYMBOL_GPL(blk_stat_enable_accounting); --- linux-azure-5.8-5.8.0.orig/block/blk-sysfs.c +++ linux-azure-5.8-5.8.0/block/blk-sysfs.c @@ -896,9 +896,16 @@ blk_free_queue_stats(q->stats); - if (queue_is_mq(q)) + if (queue_is_mq(q)) { + struct blk_mq_hw_ctx *hctx; + int i; + cancel_delayed_work_sync(&q->requeue_work); + queue_for_each_hw_ctx(q, hctx, i) + cancel_delayed_work_sync(&hctx->run_work); + } + blk_exit_queue(q); blk_queue_free_zone_bitmaps(q); --- linux-azure-5.8-5.8.0.orig/block/blk-zoned.c +++ linux-azure-5.8-5.8.0/block/blk-zoned.c @@ -312,6 +312,7 @@ return ret; rep.nr_zones = ret; + rep.flags = BLK_ZONE_REP_CAPACITY; if (copy_to_user(argp, &rep, sizeof(struct blk_zone_report))) return -EFAULT; return 0; @@ -497,6 +498,9 @@ if (WARN_ON_ONCE(!queue_is_mq(q))) return -EIO; + if (!get_capacity(disk)) + return -EIO; + /* * Ensure that all memory allocations in this context are done as if * GFP_NOIO was specified. --- linux-azure-5.8-5.8.0.orig/block/bsg.c +++ linux-azure-5.8-5.8.0/block/bsg.c @@ -157,8 +157,10 @@ return PTR_ERR(rq); ret = q->bsg_dev.ops->fill_hdr(rq, &hdr, mode); - if (ret) + if (ret) { + blk_put_request(rq); return ret; + } rq->timeout = msecs_to_jiffies(hdr.timeout); if (!rq->timeout) --- linux-azure-5.8-5.8.0.orig/block/genhd.c +++ linux-azure-5.8-5.8.0/block/genhd.c @@ -51,7 +51,7 @@ * Set disk capacity and notify if the size is not currently * zero and will not be set to zero */ -void set_capacity_revalidate_and_notify(struct gendisk *disk, sector_t size, +bool set_capacity_revalidate_and_notify(struct gendisk *disk, sector_t size, bool revalidate) { sector_t capacity = get_capacity(disk); @@ -65,7 +65,10 @@ char *envp[] = { "RESIZE=1", NULL }; kobject_uevent_env(&disk_to_dev(disk)->kobj, KOBJ_CHANGE, envp); + return true; } + + return false; } EXPORT_SYMBOL_GPL(set_capacity_revalidate_and_notify); @@ -258,14 +261,17 @@ part = rcu_dereference(ptbl->part[piter->idx]); if (!part) continue; + get_device(part_to_dev(part)); + piter->part = part; if (!part_nr_sects_read(part) && !(piter->flags & DISK_PITER_INCL_EMPTY) && !(piter->flags & DISK_PITER_INCL_EMPTY_PART0 && - piter->idx == 0)) + piter->idx == 0)) { + put_device(part_to_dev(part)); + piter->part = NULL; continue; + } - get_device(part_to_dev(part)); - piter->part = part; piter->idx += inc; break; } @@ -349,6 +355,7 @@ rcu_read_unlock(); return part; } +EXPORT_SYMBOL_GPL(disk_map_sector_rcu); /** * disk_has_partitions --- linux-azure-5.8-5.8.0.orig/block/keyslot-manager.c +++ linux-azure-5.8-5.8.0/block/keyslot-manager.c @@ -103,6 +103,13 @@ spin_lock_init(&ksm->idle_slots_lock); slot_hashtable_size = roundup_pow_of_two(num_slots); + /* + * hash_ptr() assumes bits != 0, so ensure the hash table has at least 2 + * buckets. This only makes a difference when there is only 1 keyslot. + */ + if (slot_hashtable_size < 2) + slot_hashtable_size = 2; + ksm->log_slot_ht_size = ilog2(slot_hashtable_size); ksm->slot_hashtable = kvmalloc_array(slot_hashtable_size, sizeof(ksm->slot_hashtable[0]), --- linux-azure-5.8-5.8.0.orig/block/partitions/core.c +++ linux-azure-5.8-5.8.0/block/partitions/core.c @@ -524,19 +524,20 @@ int bdev_del_partition(struct block_device *bdev, int partno) { struct block_device *bdevp; - struct hd_struct *part; - int ret = 0; + struct hd_struct *part = NULL; + int ret; - part = disk_get_part(bdev->bd_disk, partno); - if (!part) - return -ENXIO; - - ret = -ENOMEM; - bdevp = bdget(part_devt(part)); + bdevp = bdget_disk(bdev->bd_disk, partno); if (!bdevp) - goto out_put_part; + return -ENXIO; mutex_lock(&bdevp->bd_mutex); + mutex_lock_nested(&bdev->bd_mutex, 1); + + ret = -ENXIO; + part = disk_get_part(bdev->bd_disk, partno); + if (!part) + goto out_unlock; ret = -EBUSY; if (bdevp->bd_openers) @@ -545,16 +546,14 @@ sync_blockdev(bdevp); invalidate_bdev(bdevp); - mutex_lock_nested(&bdev->bd_mutex, 1); delete_partition(bdev->bd_disk, part); - mutex_unlock(&bdev->bd_mutex); - ret = 0; out_unlock: + mutex_unlock(&bdev->bd_mutex); mutex_unlock(&bdevp->bd_mutex); bdput(bdevp); -out_put_part: - disk_put_part(part); + if (part) + disk_put_part(part); return ret; } --- linux-azure-5.8-5.8.0.orig/block/partitions/ibm.c +++ linux-azure-5.8-5.8.0/block/partitions/ibm.c @@ -305,8 +305,6 @@ if (!disk->fops->getgeo) goto out_exit; fn = symbol_get(dasd_biodasdinfo); - if (!fn) - goto out_exit; blocksize = bdev_logical_block_size(bdev); if (blocksize <= 0) goto out_symbol; @@ -326,7 +324,7 @@ geo->start = get_start_sect(bdev); if (disk->fops->getgeo(bdev, geo)) goto out_freeall; - if (fn(disk, info)) { + if (!fn || fn(disk, info)) { kfree(info); info = NULL; } @@ -370,7 +368,8 @@ out_nogeo: kfree(info); out_symbol: - symbol_put(dasd_biodasdinfo); + if (fn) + symbol_put(dasd_biodasdinfo); out_exit: return res; } --- linux-azure-5.8-5.8.0.orig/block/scsi_ioctl.c +++ linux-azure-5.8-5.8.0/block/scsi_ioctl.c @@ -651,6 +651,7 @@ compat_int_t stat; compat_caddr_t sense; unsigned char data_direction; + unsigned char pad[3]; compat_int_t quiet; compat_int_t timeout; compat_caddr_t reserved[1]; --- linux-azure-5.8-5.8.0.orig/certs/blacklist.c +++ linux-azure-5.8-5.8.0/certs/blacklist.c @@ -162,7 +162,7 @@ KEY_USR_VIEW | KEY_USR_READ | KEY_USR_SEARCH, KEY_ALLOC_NOT_IN_QUOTA | - KEY_FLAG_KEEP, + KEY_ALLOC_SET_KEEP, NULL, NULL); if (IS_ERR(blacklist_keyring)) panic("Can't allocate system blacklist keyring\n"); --- linux-azure-5.8-5.8.0.orig/certs/system_keyring.c +++ linux-azure-5.8-5.8.0/certs/system_keyring.c @@ -171,6 +171,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-azure-5.8-5.8.0.orig/crypto/Kconfig +++ linux-azure-5.8-5.8.0/crypto/Kconfig @@ -145,7 +145,7 @@ config CRYPTO_MANAGER_EXTRA_TESTS bool "Enable extra run-time crypto self tests" - depends on DEBUG_KERNEL && !CRYPTO_MANAGER_DISABLE_TESTS + depends on DEBUG_KERNEL && !CRYPTO_MANAGER_DISABLE_TESTS && CRYPTO_MANAGER help Enable extra run-time self tests of registered crypto algorithms, including randomized fuzz tests. --- linux-azure-5.8-5.8.0.orig/crypto/aegis128-neon-inner.c +++ linux-azure-5.8-5.8.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-azure-5.8-5.8.0.orig/crypto/af_alg.c +++ linux-azure-5.8-5.8.0/crypto/af_alg.c @@ -16,6 +16,7 @@ #include #include #include +#include #include #include @@ -146,7 +147,7 @@ const u32 allowed = CRYPTO_ALG_KERN_DRIVER_ONLY; struct sock *sk = sock->sk; struct alg_sock *ask = alg_sk(sk); - struct sockaddr_alg *sa = (void *)uaddr; + struct sockaddr_alg_new *sa = (void *)uaddr; const struct af_alg_type *type; void *private; int err; @@ -154,7 +155,11 @@ if (sock->state == SS_CONNECTED) return -EINVAL; - if (addr_len < sizeof(*sa)) + BUILD_BUG_ON(offsetof(struct sockaddr_alg_new, salg_name) != + offsetof(struct sockaddr_alg, salg_name)); + BUILD_BUG_ON(offsetof(struct sockaddr_alg, salg_name) != sizeof(*sa)); + + if (addr_len < sizeof(*sa) + 1) return -EINVAL; /* If caller uses non-allowed flag, return error. */ @@ -162,7 +167,7 @@ return -EINVAL; sa->salg_type[sizeof(sa->salg_type) - 1] = 0; - sa->salg_name[sizeof(sa->salg_name) + addr_len - sizeof(*sa) - 1] = 0; + sa->salg_name[addr_len - sizeof(*sa) - 1] = 0; type = alg_get_type(sa->salg_type); if (PTR_ERR(type) == -ENOENT) { @@ -635,6 +640,7 @@ if (!ctx->used) ctx->merge = 0; + ctx->init = ctx->more; } EXPORT_SYMBOL_GPL(af_alg_pull_tsgl); @@ -734,9 +740,10 @@ * * @sk socket of connection to user space * @flags If MSG_DONTWAIT is set, then only report if function would sleep + * @min Set to minimum request size if partial requests are allowed. * @return 0 when writable memory is available, < 0 upon error */ -int af_alg_wait_for_data(struct sock *sk, unsigned flags) +int af_alg_wait_for_data(struct sock *sk, unsigned flags, unsigned min) { DEFINE_WAIT_FUNC(wait, woken_wake_function); struct alg_sock *ask = alg_sk(sk); @@ -754,7 +761,9 @@ if (signal_pending(current)) break; timeout = MAX_SCHEDULE_TIMEOUT; - if (sk_wait_event(sk, &timeout, (ctx->used || !ctx->more), + if (sk_wait_event(sk, &timeout, + ctx->init && (!ctx->more || + (min && ctx->used >= min)), &wait)) { err = 0; break; @@ -843,10 +852,17 @@ } lock_sock(sk); - if (!ctx->more && ctx->used) { - err = -EINVAL; - goto unlock; + if (ctx->init && !ctx->more) { + if (ctx->used) { + err = -EINVAL; + goto unlock; + } + + pr_info_once( + "%s sent an empty control message without MSG_MORE.\n", + current->comm); } + ctx->init = true; if (init) { ctx->enc = enc; --- linux-azure-5.8-5.8.0.orig/crypto/algif_aead.c +++ linux-azure-5.8-5.8.0/crypto/algif_aead.c @@ -78,7 +78,7 @@ SYNC_SKCIPHER_REQUEST_ON_STACK(skreq, null_tfm); skcipher_request_set_sync_tfm(skreq, null_tfm); - skcipher_request_set_callback(skreq, CRYPTO_TFM_REQ_MAY_BACKLOG, + skcipher_request_set_callback(skreq, CRYPTO_TFM_REQ_MAY_SLEEP, NULL, NULL); skcipher_request_set_crypt(skreq, src, dst, len, NULL); @@ -106,8 +106,8 @@ size_t usedpages = 0; /* [in] RX bufs to be used from user */ size_t processed = 0; /* [in] TX bufs to be consumed */ - if (!ctx->used) { - err = af_alg_wait_for_data(sk, flags); + if (!ctx->init || ctx->more) { + err = af_alg_wait_for_data(sk, flags, 0); if (err) return err; } @@ -291,19 +291,20 @@ areq->outlen = outlen; aead_request_set_callback(&areq->cra_u.aead_req, - CRYPTO_TFM_REQ_MAY_BACKLOG, + CRYPTO_TFM_REQ_MAY_SLEEP, af_alg_async_cb, areq); err = ctx->enc ? crypto_aead_encrypt(&areq->cra_u.aead_req) : crypto_aead_decrypt(&areq->cra_u.aead_req); /* AIO operation in progress */ - if (err == -EINPROGRESS || err == -EBUSY) + if (err == -EINPROGRESS) return -EIOCBQUEUED; sock_put(sk); } else { /* Synchronous operation */ aead_request_set_callback(&areq->cra_u.aead_req, + CRYPTO_TFM_REQ_MAY_SLEEP | CRYPTO_TFM_REQ_MAY_BACKLOG, crypto_req_done, &ctx->wait); err = crypto_wait_req(ctx->enc ? @@ -558,12 +559,6 @@ INIT_LIST_HEAD(&ctx->tsgl_list); ctx->len = len; - ctx->used = 0; - atomic_set(&ctx->rcvused, 0); - ctx->more = 0; - ctx->merge = 0; - ctx->enc = 0; - ctx->aead_assoclen = 0; crypto_init_wait(&ctx->wait); ask->private = ctx; --- linux-azure-5.8-5.8.0.orig/crypto/algif_skcipher.c +++ linux-azure-5.8-5.8.0/crypto/algif_skcipher.c @@ -61,8 +61,8 @@ int err = 0; size_t len = 0; - if (!ctx->used) { - err = af_alg_wait_for_data(sk, flags); + if (!ctx->init || (ctx->more && ctx->used < bs)) { + err = af_alg_wait_for_data(sk, flags, bs); if (err) return err; } @@ -123,7 +123,7 @@ crypto_skcipher_decrypt(&areq->cra_u.skcipher_req); /* AIO operation in progress */ - if (err == -EINPROGRESS || err == -EBUSY) + if (err == -EINPROGRESS) return -EIOCBQUEUED; sock_put(sk); @@ -333,6 +333,7 @@ ctx = sock_kmalloc(sk, len, GFP_KERNEL); if (!ctx) return -ENOMEM; + memset(ctx, 0, len); ctx->iv = sock_kmalloc(sk, crypto_skcipher_ivsize(tfm), GFP_KERNEL); @@ -340,16 +341,10 @@ sock_kfree_s(sk, ctx, len); return -ENOMEM; } - memset(ctx->iv, 0, crypto_skcipher_ivsize(tfm)); INIT_LIST_HEAD(&ctx->tsgl_list); ctx->len = len; - ctx->used = 0; - atomic_set(&ctx->rcvused, 0); - ctx->more = 0; - ctx->merge = 0; - ctx->enc = 0; crypto_init_wait(&ctx->wait); ask->private = ctx; --- linux-azure-5.8-5.8.0.orig/crypto/asymmetric_keys/asym_tpm.c +++ linux-azure-5.8-5.8.0/crypto/asymmetric_keys/asym_tpm.c @@ -354,7 +354,7 @@ memcpy(cur, e, sizeof(e)); cur += sizeof(e); /* Zero parameters to satisfy set_pub_key ABI. */ - memset(cur, 0, SETKEY_PARAMS_SIZE); + memzero_explicit(cur, SETKEY_PARAMS_SIZE); return cur - buf; } --- linux-azure-5.8-5.8.0.orig/crypto/ecdh.c +++ linux-azure-5.8-5.8.0/crypto/ecdh.c @@ -39,7 +39,8 @@ struct ecdh params; unsigned int ndigits; - if (crypto_ecdh_decode_key(buf, len, ¶ms) < 0) + if (crypto_ecdh_decode_key(buf, len, ¶ms) < 0 || + params.key_size > sizeof(ctx->private_key)) return -EINVAL; ndigits = ecdh_supported_curve(params.curve_id); @@ -53,12 +54,13 @@ return ecc_gen_privkey(ctx->curve_id, ctx->ndigits, ctx->private_key); - if (ecc_is_key_valid(ctx->curve_id, ctx->ndigits, - (const u64 *)params.key, params.key_size) < 0) - return -EINVAL; - memcpy(ctx->private_key, params.key, params.key_size); + if (ecc_is_key_valid(ctx->curve_id, ctx->ndigits, + ctx->private_key, params.key_size) < 0) { + memzero_explicit(ctx->private_key, params.key_size); + return -EINVAL; + } return 0; } --- linux-azure-5.8-5.8.0.orig/crypto/ecdh_helper.c +++ linux-azure-5.8-5.8.0/crypto/ecdh_helper.c @@ -67,6 +67,9 @@ if (secret.type != CRYPTO_KPP_SECRET_TYPE_ECDH) return -EINVAL; + if (unlikely(len < secret.len)) + return -EINVAL; + ptr = ecdh_unpack_data(¶ms->curve_id, ptr, sizeof(params->curve_id)); ptr = ecdh_unpack_data(¶ms->key_size, ptr, sizeof(params->key_size)); if (secret.len != crypto_ecdh_key_len(params)) --- linux-azure-5.8-5.8.0.orig/crypto/michael_mic.c +++ linux-azure-5.8-5.8.0/crypto/michael_mic.c @@ -7,7 +7,7 @@ * Copyright (c) 2004 Jouni Malinen */ #include -#include +#include #include #include #include @@ -19,7 +19,7 @@ }; struct michael_mic_desc_ctx { - u8 pending[4]; + __le32 pending; size_t pending_len; u32 l, r; @@ -60,13 +60,12 @@ unsigned int len) { struct michael_mic_desc_ctx *mctx = shash_desc_ctx(desc); - const __le32 *src; if (mctx->pending_len) { int flen = 4 - mctx->pending_len; if (flen > len) flen = len; - memcpy(&mctx->pending[mctx->pending_len], data, flen); + memcpy((u8 *)&mctx->pending + mctx->pending_len, data, flen); mctx->pending_len += flen; data += flen; len -= flen; @@ -74,23 +73,21 @@ if (mctx->pending_len < 4) return 0; - src = (const __le32 *)mctx->pending; - mctx->l ^= le32_to_cpup(src); + mctx->l ^= le32_to_cpu(mctx->pending); michael_block(mctx->l, mctx->r); mctx->pending_len = 0; } - src = (const __le32 *)data; - while (len >= 4) { - mctx->l ^= le32_to_cpup(src++); + mctx->l ^= get_unaligned_le32(data); michael_block(mctx->l, mctx->r); + data += 4; len -= 4; } if (len > 0) { mctx->pending_len = len; - memcpy(mctx->pending, src, len); + memcpy(&mctx->pending, data, len); } return 0; @@ -100,8 +97,7 @@ static int michael_final(struct shash_desc *desc, u8 *out) { struct michael_mic_desc_ctx *mctx = shash_desc_ctx(desc); - u8 *data = mctx->pending; - __le32 *dst = (__le32 *)out; + u8 *data = (u8 *)&mctx->pending; /* Last block and padding (0x5a, 4..7 x 0) */ switch (mctx->pending_len) { @@ -123,8 +119,8 @@ /* l ^= 0; */ michael_block(mctx->l, mctx->r); - dst[0] = cpu_to_le32(mctx->l); - dst[1] = cpu_to_le32(mctx->r); + put_unaligned_le32(mctx->l, out); + put_unaligned_le32(mctx->r, out + 4); return 0; } @@ -135,13 +131,11 @@ { struct michael_mic_ctx *mctx = crypto_shash_ctx(tfm); - const __le32 *data = (const __le32 *)key; - if (keylen != 8) return -EINVAL; - mctx->l = le32_to_cpu(data[0]); - mctx->r = le32_to_cpu(data[1]); + mctx->l = get_unaligned_le32(key); + mctx->r = get_unaligned_le32(key + 4); return 0; } @@ -156,7 +150,6 @@ .cra_name = "michael_mic", .cra_driver_name = "michael_mic-generic", .cra_blocksize = 8, - .cra_alignmask = 3, .cra_ctxsize = sizeof(struct michael_mic_ctx), .cra_module = THIS_MODULE, } --- linux-azure-5.8-5.8.0.orig/debian.azure-5.8/abi/5.8.0-1027.29~20.04.2/abiname +++ linux-azure-5.8-5.8.0/debian.azure-5.8/abi/5.8.0-1027.29~20.04.2/abiname @@ -0,0 +1 @@ +1027 --- linux-azure-5.8-5.8.0.orig/debian.azure-5.8/abi/5.8.0-1027.29~20.04.2/amd64/azure +++ linux-azure-5.8-5.8.0/debian.azure-5.8/abi/5.8.0-1027.29~20.04.2/amd64/azure @@ -0,0 +1,18103 @@ +EXPORT_SYMBOL arch/x86/crypto/blake2s-x86_64 0x23aa18fe blake2s_compress_arch +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 0x7c904efe poly1305_init_arch +EXPORT_SYMBOL arch/x86/crypto/poly1305-x86_64 0xd9ec23eb poly1305_update_arch +EXPORT_SYMBOL arch/x86/crypto/poly1305-x86_64 0xfaeb41b2 poly1305_final_arch +EXPORT_SYMBOL arch/x86/kvm/kvm 0x6a690159 kvm_cpu_has_pending_timer +EXPORT_SYMBOL crypto/ecc 0x16e410ff vli_from_be64 +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 0x9263b417 ecc_point_mult_shamir +EXPORT_SYMBOL crypto/ecc 0x92668805 vli_cmp +EXPORT_SYMBOL crypto/ecc 0x9f6efabd vli_sub +EXPORT_SYMBOL crypto/ecc 0xa76b31a2 crypto_ecdh_shared_secret +EXPORT_SYMBOL crypto/ecc 0xd6315f31 ecc_gen_privkey +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 0x0869b245 crypto_nhpoly1305_final +EXPORT_SYMBOL crypto/nhpoly1305 0x3d8ec978 crypto_nhpoly1305_final_helper +EXPORT_SYMBOL crypto/nhpoly1305 0x50382db4 crypto_nhpoly1305_update_helper +EXPORT_SYMBOL crypto/nhpoly1305 0x5a8c0f0d crypto_nhpoly1305_setkey +EXPORT_SYMBOL crypto/nhpoly1305 0x82784099 crypto_nhpoly1305_init +EXPORT_SYMBOL crypto/nhpoly1305 0x9a95365d crypto_nhpoly1305_update +EXPORT_SYMBOL crypto/sha3_generic 0x48f5c437 crypto_sha3_init +EXPORT_SYMBOL crypto/sha3_generic 0xb2ca9df2 crypto_sha3_update +EXPORT_SYMBOL crypto/sha3_generic 0xca7c7e66 crypto_sha3_final +EXPORT_SYMBOL crypto/sm3_generic 0x3102e11f crypto_sm3_update +EXPORT_SYMBOL crypto/sm3_generic 0x988ec331 crypto_sm3_finup +EXPORT_SYMBOL crypto/xor 0x5b6c00e6 xor_blocks +EXPORT_SYMBOL drivers/acpi/video 0x507a7752 acpi_video_get_edid +EXPORT_SYMBOL drivers/acpi/video 0x6de7f7ff acpi_video_get_backlight_type +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 0x8826c13b acpi_video_register +EXPORT_SYMBOL drivers/acpi/video 0xb9203d98 acpi_video_get_levels +EXPORT_SYMBOL drivers/acpi/video 0xe92ca535 acpi_video_set_dmi_backlight_type +EXPORT_SYMBOL drivers/atm/suni 0xfe7488c9 suni_init +EXPORT_SYMBOL drivers/atm/uPD98402 0x089002b5 uPD98402_init +EXPORT_SYMBOL drivers/bcma/bcma 0x3fac88c5 bcma_core_irq +EXPORT_SYMBOL drivers/bcma/bcma 0x73201398 bcma_core_dma_translation +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/core/mhi 0xe9df6f87 mhi_sync_power_up +EXPORT_SYMBOL drivers/char/ipmi/ipmi_msghandler 0x03bc993e ipmi_set_my_LUN +EXPORT_SYMBOL drivers/char/ipmi/ipmi_msghandler 0x0683c285 ipmi_smi_watcher_unregister +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 0x230094ac ipmi_smi_watchdog_pretimeout +EXPORT_SYMBOL drivers/char/ipmi/ipmi_msghandler 0x31cab048 ipmi_smi_msg_received +EXPORT_SYMBOL drivers/char/ipmi/ipmi_msghandler 0x3a4c6280 ipmi_smi_watcher_register +EXPORT_SYMBOL drivers/char/ipmi/ipmi_msghandler 0x40f2b10c ipmi_alloc_smi_msg +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 0x663f6fce ipmi_add_smi +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 0x82db0c5a ipmi_get_smi_info +EXPORT_SYMBOL drivers/char/ipmi/ipmi_msghandler 0x89a5279a ipmi_get_version +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 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/crypto/atmel-i2c 0x348755c9 atmel_i2c_probe +EXPORT_SYMBOL drivers/crypto/atmel-i2c 0x57f7c3f9 atmel_i2c_send_receive +EXPORT_SYMBOL drivers/crypto/atmel-i2c 0x75661352 atmel_i2c_enqueue +EXPORT_SYMBOL drivers/crypto/atmel-i2c 0x80a11b1d atmel_i2c_init_read_cmd +EXPORT_SYMBOL drivers/crypto/atmel-i2c 0xc71ed50c atmel_i2c_init_genkey_cmd +EXPORT_SYMBOL drivers/crypto/atmel-i2c 0xf283e995 atmel_i2c_init_random_cmd +EXPORT_SYMBOL drivers/crypto/atmel-i2c 0xfaab573f atmel_i2c_init_ecdh_cmd +EXPORT_SYMBOL drivers/crypto/ccp/ccp 0x47d3c97f psp_check_tee_status +EXPORT_SYMBOL drivers/crypto/ccp/ccp 0xaa04056c psp_tee_process_cmd +EXPORT_SYMBOL drivers/gpu/drm/drm 0x0198b9db drm_connector_attach_edid_property +EXPORT_SYMBOL drivers/gpu/drm/drm 0x02245d03 drm_crtc_wait_one_vblank +EXPORT_SYMBOL drivers/gpu/drm/drm 0x029eb0d4 drm_plane_create_zpos_immutable_property +EXPORT_SYMBOL drivers/gpu/drm/drm 0x02e8aab2 drm_gem_prime_import +EXPORT_SYMBOL drivers/gpu/drm/drm 0x0363b613 drm_vblank_restore +EXPORT_SYMBOL drivers/gpu/drm/drm 0x03c63897 __drm_get_edid_firmware_path +EXPORT_SYMBOL drivers/gpu/drm/drm 0x03ceb3e1 drm_agp_init +EXPORT_SYMBOL drivers/gpu/drm/drm 0x044ca342 drm_mode_validate_ycbcr420 +EXPORT_SYMBOL drivers/gpu/drm/drm 0x04fbf1d9 drm_gtf_mode +EXPORT_SYMBOL drivers/gpu/drm/drm 0x05155a55 drm_dev_unregister +EXPORT_SYMBOL drivers/gpu/drm/drm 0x05d2cf4a drm_plane_create_rotation_property +EXPORT_SYMBOL drivers/gpu/drm/drm 0x05dd6c36 drm_gem_private_object_init +EXPORT_SYMBOL drivers/gpu/drm/drm 0x070b28aa drm_ht_remove_item +EXPORT_SYMBOL drivers/gpu/drm/drm 0x070ebaac drm_atomic_state_clear +EXPORT_SYMBOL drivers/gpu/drm/drm 0x0712e21d drm_edid_get_monitor_name +EXPORT_SYMBOL drivers/gpu/drm/drm 0x07f88521 drm_edid_is_valid +EXPORT_SYMBOL drivers/gpu/drm/drm 0x07fb449a drm_vma_offset_manager_destroy +EXPORT_SYMBOL drivers/gpu/drm/drm 0x0937c444 drm_read +EXPORT_SYMBOL drivers/gpu/drm/drm 0x0a1687e3 drm_gem_cma_print_info +EXPORT_SYMBOL drivers/gpu/drm/drm 0x0a721775 drm_mode_plane_set_obj_prop +EXPORT_SYMBOL drivers/gpu/drm/drm 0x0a72f765 drm_clflush_virt_range +EXPORT_SYMBOL drivers/gpu/drm/drm 0x0c992d72 drm_client_release +EXPORT_SYMBOL drivers/gpu/drm/drm 0x0d4f1847 drmm_kfree +EXPORT_SYMBOL drivers/gpu/drm/drm 0x0dee1c9a drm_match_cea_mode +EXPORT_SYMBOL drivers/gpu/drm/drm 0x0e0394c2 drm_gem_unmap_dma_buf +EXPORT_SYMBOL drivers/gpu/drm/drm 0x0e0eb666 drm_dev_enter +EXPORT_SYMBOL drivers/gpu/drm/drm 0x0e69d8a0 drm_modeset_lock_init +EXPORT_SYMBOL drivers/gpu/drm/drm 0x0f6a3b87 drmm_add_final_kfree +EXPORT_SYMBOL drivers/gpu/drm/drm 0x0fd60df2 drm_get_connector_status_name +EXPORT_SYMBOL drivers/gpu/drm/drm 0x107742a9 drm_get_subpixel_order_name +EXPORT_SYMBOL drivers/gpu/drm/drm 0x109dd500 drm_writeback_connector_init +EXPORT_SYMBOL drivers/gpu/drm/drm 0x10c62b61 __drm_printfn_debug +EXPORT_SYMBOL drivers/gpu/drm/drm 0x10c88be8 drm_connector_init +EXPORT_SYMBOL drivers/gpu/drm/drm 0x10e2c32c drm_property_add_enum +EXPORT_SYMBOL drivers/gpu/drm/drm 0x116a01af drm_gtf_mode_complex +EXPORT_SYMBOL drivers/gpu/drm/drm 0x11b9567a drm_vma_node_is_allowed +EXPORT_SYMBOL drivers/gpu/drm/drm 0x127a8c6b drm_flip_work_queue +EXPORT_SYMBOL drivers/gpu/drm/drm 0x12a594ff drm_gem_dmabuf_vunmap +EXPORT_SYMBOL drivers/gpu/drm/drm 0x12fc3886 drm_i2c_encoder_mode_fixup +EXPORT_SYMBOL drivers/gpu/drm/drm 0x136a297b drm_put_dev +EXPORT_SYMBOL drivers/gpu/drm/drm 0x13d3eb1b drm_modeset_unlock_all +EXPORT_SYMBOL drivers/gpu/drm/drm 0x13e14103 drm_mode_equal_no_clocks_no_stereo +EXPORT_SYMBOL drivers/gpu/drm/drm 0x1463eb06 drm_mode_create_hdmi_colorspace_property +EXPORT_SYMBOL drivers/gpu/drm/drm 0x14a49246 drm_panel_unprepare +EXPORT_SYMBOL drivers/gpu/drm/drm 0x14ac3782 drm_event_reserve_init_locked +EXPORT_SYMBOL drivers/gpu/drm/drm 0x1540e71a __drmm_add_action +EXPORT_SYMBOL drivers/gpu/drm/drm 0x15687847 drm_framebuffer_init +EXPORT_SYMBOL drivers/gpu/drm/drm 0x15750b1e drm_mode_object_find +EXPORT_SYMBOL drivers/gpu/drm/drm 0x15d8aa41 __drm_printfn_seq_file +EXPORT_SYMBOL drivers/gpu/drm/drm 0x16ac2597 drm_printf +EXPORT_SYMBOL drivers/gpu/drm/drm 0x170d5325 drm_atomic_bridge_chain_disable +EXPORT_SYMBOL drivers/gpu/drm/drm 0x182651cc drm_crtc_vblank_helper_get_vblank_timestamp +EXPORT_SYMBOL drivers/gpu/drm/drm 0x182b500c drm_connector_unregister +EXPORT_SYMBOL drivers/gpu/drm/drm 0x18a2e2c0 drm_connector_list_iter_begin +EXPORT_SYMBOL drivers/gpu/drm/drm 0x190fce16 drm_gem_vm_open +EXPORT_SYMBOL drivers/gpu/drm/drm 0x1923c650 drm_release_noglobal +EXPORT_SYMBOL drivers/gpu/drm/drm 0x19c2016e drm_modeset_backoff +EXPORT_SYMBOL drivers/gpu/drm/drm 0x1a411479 drm_syncobj_free +EXPORT_SYMBOL drivers/gpu/drm/drm 0x1a47dddd drm_mode_create_tv_margin_properties +EXPORT_SYMBOL drivers/gpu/drm/drm 0x1a7244d5 drm_crtc_vblank_count +EXPORT_SYMBOL drivers/gpu/drm/drm 0x1b9622d7 drm_master_internal_release +EXPORT_SYMBOL drivers/gpu/drm/drm 0x1b99a495 drm_client_framebuffer_create +EXPORT_SYMBOL drivers/gpu/drm/drm 0x1bcb67ab drm_property_create_enum +EXPORT_SYMBOL drivers/gpu/drm/drm 0x1c054daf drm_connector_init_with_ddc +EXPORT_SYMBOL drivers/gpu/drm/drm 0x1d414a25 drm_master_internal_acquire +EXPORT_SYMBOL drivers/gpu/drm/drm 0x1d47ffe3 drm_property_create_signed_range +EXPORT_SYMBOL drivers/gpu/drm/drm 0x1decbdec drm_dev_init +EXPORT_SYMBOL drivers/gpu/drm/drm 0x1f88a570 drm_modeset_unlock +EXPORT_SYMBOL drivers/gpu/drm/drm 0x1fbe8d12 drm_hdcp_update_content_protection +EXPORT_SYMBOL drivers/gpu/drm/drm 0x2014e237 drm_dev_register +EXPORT_SYMBOL drivers/gpu/drm/drm 0x21642508 drm_gem_prime_import_dev +EXPORT_SYMBOL drivers/gpu/drm/drm 0x2183c08c drm_mm_scan_add_block +EXPORT_SYMBOL drivers/gpu/drm/drm 0x21a94484 drm_mode_create_tile_group +EXPORT_SYMBOL drivers/gpu/drm/drm 0x21d541eb drm_flip_work_queue_task +EXPORT_SYMBOL drivers/gpu/drm/drm 0x22e719b2 drm_gem_dma_resv_wait +EXPORT_SYMBOL drivers/gpu/drm/drm 0x22ea0b95 drm_gem_dmabuf_vmap +EXPORT_SYMBOL drivers/gpu/drm/drm 0x23385062 drm_property_blob_get +EXPORT_SYMBOL drivers/gpu/drm/drm 0x23fcaad8 drm_hdmi_vendor_infoframe_from_display_mode +EXPORT_SYMBOL drivers/gpu/drm/drm 0x25326629 drm_atomic_set_crtc_for_connector +EXPORT_SYMBOL drivers/gpu/drm/drm 0x2532689b drm_mode_is_420 +EXPORT_SYMBOL drivers/gpu/drm/drm 0x258d20c3 drm_gem_shmem_unpin +EXPORT_SYMBOL drivers/gpu/drm/drm 0x25aec1d4 drm_crtc_vblank_on +EXPORT_SYMBOL drivers/gpu/drm/drm 0x25d9367d drm_mode_crtc_set_gamma_size +EXPORT_SYMBOL drivers/gpu/drm/drm 0x25daad93 __drm_mm_interval_first +EXPORT_SYMBOL drivers/gpu/drm/drm 0x269496e6 drm_mode_create_tv_properties +EXPORT_SYMBOL drivers/gpu/drm/drm 0x2754dad8 drm_mm_reserve_node +EXPORT_SYMBOL drivers/gpu/drm/drm 0x2898272a drm_object_attach_property +EXPORT_SYMBOL drivers/gpu/drm/drm 0x29a076a8 drm_client_init +EXPORT_SYMBOL drivers/gpu/drm/drm 0x29c42057 drm_bridge_chain_mode_fixup +EXPORT_SYMBOL drivers/gpu/drm/drm 0x29d8a11b __drm_atomic_helper_set_config +EXPORT_SYMBOL drivers/gpu/drm/drm 0x29f078d1 drm_mode_legacy_fb_format +EXPORT_SYMBOL drivers/gpu/drm/drm 0x2a32c320 drm_property_create_bool +EXPORT_SYMBOL drivers/gpu/drm/drm 0x2a962499 drm_mm_scan_init_with_range +EXPORT_SYMBOL drivers/gpu/drm/drm 0x2aa1b113 drm_gem_mmap +EXPORT_SYMBOL drivers/gpu/drm/drm 0x2aced7fd drm_client_modeset_commit_locked +EXPORT_SYMBOL drivers/gpu/drm/drm 0x2ae0bfea drm_vma_offset_lookup_locked +EXPORT_SYMBOL drivers/gpu/drm/drm 0x2c414a0a drm_calc_timestamping_constants +EXPORT_SYMBOL drivers/gpu/drm/drm 0x2c576c7c drm_modeset_lock_single_interruptible +EXPORT_SYMBOL drivers/gpu/drm/drm 0x2cae94b5 drm_atomic_bridge_chain_post_disable +EXPORT_SYMBOL drivers/gpu/drm/drm 0x2cbcb8aa drm_property_blob_put +EXPORT_SYMBOL drivers/gpu/drm/drm 0x2d50570f drm_rect_calc_hscale +EXPORT_SYMBOL drivers/gpu/drm/drm 0x2e7fc614 drm_connector_list_iter_next +EXPORT_SYMBOL drivers/gpu/drm/drm 0x30adc8fb drm_crtc_vblank_helper_get_vblank_timestamp_internal +EXPORT_SYMBOL drivers/gpu/drm/drm 0x31b8a5e3 __drm_set_edid_firmware_path +EXPORT_SYMBOL drivers/gpu/drm/drm 0x3277abdd drm_irq_install +EXPORT_SYMBOL drivers/gpu/drm/drm 0x330a5bb5 drm_crtc_vblank_restore +EXPORT_SYMBOL drivers/gpu/drm/drm 0x3342e9a1 drm_i2c_encoder_restore +EXPORT_SYMBOL drivers/gpu/drm/drm 0x34e8eb66 drm_connector_set_vrr_capable_property +EXPORT_SYMBOL drivers/gpu/drm/drm 0x3503d682 drm_mode_vrefresh +EXPORT_SYMBOL drivers/gpu/drm/drm 0x352b9066 drm_connector_register +EXPORT_SYMBOL drivers/gpu/drm/drm 0x35afae24 __drm_puts_seq_file +EXPORT_SYMBOL drivers/gpu/drm/drm 0x35cf6c9d drm_panel_of_backlight +EXPORT_SYMBOL drivers/gpu/drm/drm 0x35ee9aba drm_gem_get_pages +EXPORT_SYMBOL drivers/gpu/drm/drm 0x36633743 drm_hdmi_avi_infoframe_from_display_mode +EXPORT_SYMBOL drivers/gpu/drm/drm 0x36e72b3b drm_panel_disable +EXPORT_SYMBOL drivers/gpu/drm/drm 0x37821126 drm_hdmi_avi_infoframe_bars +EXPORT_SYMBOL drivers/gpu/drm/drm 0x378d294c drm_mode_is_420_also +EXPORT_SYMBOL drivers/gpu/drm/drm 0x391840d9 drm_panel_init +EXPORT_SYMBOL drivers/gpu/drm/drm 0x3aec1bec drm_vma_node_allow +EXPORT_SYMBOL drivers/gpu/drm/drm 0x3b04e2a7 drm_property_create_object +EXPORT_SYMBOL drivers/gpu/drm/drm 0x3ba17eab drm_ht_insert_item +EXPORT_SYMBOL drivers/gpu/drm/drm 0x3ba85cfc drm_sysfs_hotplug_event +EXPORT_SYMBOL drivers/gpu/drm/drm 0x3c22a4d8 drm_vma_offset_manager_init +EXPORT_SYMBOL drivers/gpu/drm/drm 0x3c68d4c0 drm_bridge_chain_mode_valid +EXPORT_SYMBOL drivers/gpu/drm/drm 0x3e412255 drm_state_dump +EXPORT_SYMBOL drivers/gpu/drm/drm 0x3e50b109 drm_gem_fence_array_add +EXPORT_SYMBOL drivers/gpu/drm/drm 0x3f1386f0 drm_bridge_add +EXPORT_SYMBOL drivers/gpu/drm/drm 0x40372e29 drmm_mode_config_init +EXPORT_SYMBOL drivers/gpu/drm/drm 0x40964d60 drm_atomic_nonblocking_commit +EXPORT_SYMBOL drivers/gpu/drm/drm 0x411e1f14 drm_atomic_add_affected_connectors +EXPORT_SYMBOL drivers/gpu/drm/drm 0x41685ac2 drm_gem_shmem_madvise +EXPORT_SYMBOL drivers/gpu/drm/drm 0x42e82b21 drm_crtc_vblank_put +EXPORT_SYMBOL drivers/gpu/drm/drm 0x4354eaf1 drm_gem_fence_array_add_implicit +EXPORT_SYMBOL drivers/gpu/drm/drm 0x44774b31 drmm_kmalloc +EXPORT_SYMBOL drivers/gpu/drm/drm 0x449cea11 drm_mode_object_get +EXPORT_SYMBOL drivers/gpu/drm/drm 0x450f274d drm_atomic_get_old_bridge_state +EXPORT_SYMBOL drivers/gpu/drm/drm 0x45764f0a drm_property_create_blob +EXPORT_SYMBOL drivers/gpu/drm/drm 0x474156b5 drm_mode_equal +EXPORT_SYMBOL drivers/gpu/drm/drm 0x47f985aa drm_edid_duplicate +EXPORT_SYMBOL drivers/gpu/drm/drm 0x48202a3f drm_invalid_op +EXPORT_SYMBOL drivers/gpu/drm/drm 0x4828c5bc drm_dev_get +EXPORT_SYMBOL drivers/gpu/drm/drm 0x49969749 drm_ioctl_permit +EXPORT_SYMBOL drivers/gpu/drm/drm 0x49bb1ce9 drm_client_modeset_commit +EXPORT_SYMBOL drivers/gpu/drm/drm 0x4a6410b5 drm_i2c_encoder_destroy +EXPORT_SYMBOL drivers/gpu/drm/drm 0x4b54781e drm_warn_on_modeset_not_all_locked +EXPORT_SYMBOL drivers/gpu/drm/drm 0x4b58e7b1 drm_plane_cleanup +EXPORT_SYMBOL drivers/gpu/drm/drm 0x4b7ebf95 drm_mm_remove_node +EXPORT_SYMBOL drivers/gpu/drm/drm 0x4bbed026 drm_crtc_send_vblank_event +EXPORT_SYMBOL drivers/gpu/drm/drm 0x4bc348cb drm_mode_duplicate +EXPORT_SYMBOL drivers/gpu/drm/drm 0x4c500e16 drm_display_info_set_bus_formats +EXPORT_SYMBOL drivers/gpu/drm/drm 0x4d6481a5 drm_gem_handle_delete +EXPORT_SYMBOL drivers/gpu/drm/drm 0x4d7b1fe4 drm_prime_gem_destroy +EXPORT_SYMBOL drivers/gpu/drm/drm 0x4d982bf9 drm_gem_object_put +EXPORT_SYMBOL drivers/gpu/drm/drm 0x4e095f11 drm_get_format_name +EXPORT_SYMBOL drivers/gpu/drm/drm 0x4e9ab25b drm_crtc_vblank_get +EXPORT_SYMBOL drivers/gpu/drm/drm 0x4ed8839a drm_atomic_set_mode_prop_for_crtc +EXPORT_SYMBOL drivers/gpu/drm/drm 0x4edffe0f drm_atomic_get_connector_state +EXPORT_SYMBOL drivers/gpu/drm/drm 0x4eefeef2 drm_atomic_state_default_clear +EXPORT_SYMBOL drivers/gpu/drm/drm 0x4f0653e1 drm_connector_list_iter_end +EXPORT_SYMBOL drivers/gpu/drm/drm 0x4f18a150 __drm_debug +EXPORT_SYMBOL drivers/gpu/drm/drm 0x50010db8 drm_panel_remove +EXPORT_SYMBOL drivers/gpu/drm/drm 0x503fe38f drm_atomic_add_encoder_bridges +EXPORT_SYMBOL drivers/gpu/drm/drm 0x5045e465 drm_agp_unbind +EXPORT_SYMBOL drivers/gpu/drm/drm 0x504fd725 drm_client_buffer_vunmap +EXPORT_SYMBOL drivers/gpu/drm/drm 0x50674de7 drm_timeout_abs_to_jiffies +EXPORT_SYMBOL drivers/gpu/drm/drm 0x507a94f2 drm_is_current_master +EXPORT_SYMBOL drivers/gpu/drm/drm 0x50b12b60 drm_set_preferred_mode +EXPORT_SYMBOL drivers/gpu/drm/drm 0x50e0fb2c drm_crtc_vblank_off +EXPORT_SYMBOL drivers/gpu/drm/drm 0x52157640 drm_send_event_locked +EXPORT_SYMBOL drivers/gpu/drm/drm 0x5236cdf4 drm_gem_shmem_create_with_handle +EXPORT_SYMBOL drivers/gpu/drm/drm 0x52e28791 drm_legacy_ioremap +EXPORT_SYMBOL drivers/gpu/drm/drm 0x542ea146 drm_bridge_chain_enable +EXPORT_SYMBOL drivers/gpu/drm/drm 0x548dd44d drm_handle_vblank +EXPORT_SYMBOL drivers/gpu/drm/drm 0x54a2c27a drm_connector_set_panel_orientation_with_quirk +EXPORT_SYMBOL drivers/gpu/drm/drm 0x5542443b drm_flip_work_init +EXPORT_SYMBOL drivers/gpu/drm/drm 0x554dfdd5 drm_gem_create_mmap_offset_size +EXPORT_SYMBOL drivers/gpu/drm/drm 0x56c6e828 drm_mode_get_hv_timing +EXPORT_SYMBOL drivers/gpu/drm/drm 0x57698a50 drm_mm_takedown +EXPORT_SYMBOL drivers/gpu/drm/drm 0x57b6efe3 drm_ioctl_flags +EXPORT_SYMBOL drivers/gpu/drm/drm 0x5814899b drm_agp_info +EXPORT_SYMBOL drivers/gpu/drm/drm 0x5823671e drm_get_edid_switcheroo +EXPORT_SYMBOL drivers/gpu/drm/drm 0x58842118 drm_gem_objects_lookup +EXPORT_SYMBOL drivers/gpu/drm/drm 0x59056243 drm_mm_replace_node +EXPORT_SYMBOL drivers/gpu/drm/drm 0x5a326cbb drm_mode_create_scaling_mode_property +EXPORT_SYMBOL drivers/gpu/drm/drm 0x5b5b4b4f drm_plane_create_alpha_property +EXPORT_SYMBOL drivers/gpu/drm/drm 0x5bfa06fd drm_crtc_vblank_count_and_time +EXPORT_SYMBOL drivers/gpu/drm/drm 0x5c4eab20 drm_noop +EXPORT_SYMBOL drivers/gpu/drm/drm 0x5e913cab drm_dev_put +EXPORT_SYMBOL drivers/gpu/drm/drm 0x5f096225 drm_vma_offset_remove +EXPORT_SYMBOL drivers/gpu/drm/drm 0x5f7985a5 drm_mm_scan_remove_block +EXPORT_SYMBOL drivers/gpu/drm/drm 0x602c74d4 drm_client_register +EXPORT_SYMBOL drivers/gpu/drm/drm 0x6182abe2 drm_property_create +EXPORT_SYMBOL drivers/gpu/drm/drm 0x61b00bef drm_atomic_get_old_private_obj_state +EXPORT_SYMBOL drivers/gpu/drm/drm 0x61dbd965 drm_atomic_bridge_chain_pre_enable +EXPORT_SYMBOL drivers/gpu/drm/drm 0x63510e42 drm_gem_cma_prime_import_sg_table_vmap +EXPORT_SYMBOL drivers/gpu/drm/drm 0x637cac19 drm_mode_set_crtcinfo +EXPORT_SYMBOL drivers/gpu/drm/drm 0x65c5d6d9 drm_modeset_acquire_init +EXPORT_SYMBOL drivers/gpu/drm/drm 0x66551bc7 drm_detect_monitor_audio +EXPORT_SYMBOL drivers/gpu/drm/drm 0x6658d95f drm_connector_set_path_property +EXPORT_SYMBOL drivers/gpu/drm/drm 0x6698ecb3 drm_atomic_get_new_private_obj_state +EXPORT_SYMBOL drivers/gpu/drm/drm 0x6750296d drm_syncobj_replace_fence +EXPORT_SYMBOL drivers/gpu/drm/drm 0x677395b8 drm_cma_gem_create_object_default_funcs +EXPORT_SYMBOL drivers/gpu/drm/drm 0x67ad841d drm_hdmi_infoframe_set_hdr_metadata +EXPORT_SYMBOL drivers/gpu/drm/drm 0x686a1129 drm_agp_free +EXPORT_SYMBOL drivers/gpu/drm/drm 0x69c371b7 drm_gem_prime_handle_to_fd +EXPORT_SYMBOL drivers/gpu/drm/drm 0x6a77bada drm_bridge_chain_mode_set +EXPORT_SYMBOL drivers/gpu/drm/drm 0x6bf585b5 drm_modeset_drop_locks +EXPORT_SYMBOL drivers/gpu/drm/drm 0x6c1613f0 drm_i2c_encoder_save +EXPORT_SYMBOL drivers/gpu/drm/drm 0x6c30e50d drm_agp_alloc +EXPORT_SYMBOL drivers/gpu/drm/drm 0x6ca24c36 drm_legacy_ioremap_wc +EXPORT_SYMBOL drivers/gpu/drm/drm 0x6cbba138 drm_connector_attach_encoder +EXPORT_SYMBOL drivers/gpu/drm/drm 0x6ce0bc05 drm_syncobj_get_fd +EXPORT_SYMBOL drivers/gpu/drm/drm 0x6d6bfd5e drm_gem_object_lookup +EXPORT_SYMBOL drivers/gpu/drm/drm 0x6dc428a6 drm_mode_find_dmt +EXPORT_SYMBOL drivers/gpu/drm/drm 0x6dd7d69a drm_dev_printk +EXPORT_SYMBOL drivers/gpu/drm/drm 0x6e2c6323 drm_compat_ioctl +EXPORT_SYMBOL drivers/gpu/drm/drm 0x6e30ba8e drm_rect_rotate_inv +EXPORT_SYMBOL drivers/gpu/drm/drm 0x6e516e37 drm_bridge_chain_pre_enable +EXPORT_SYMBOL drivers/gpu/drm/drm 0x6e671ad6 drm_client_modeset_dpms +EXPORT_SYMBOL drivers/gpu/drm/drm 0x6e76c22e drm_print_regset32 +EXPORT_SYMBOL drivers/gpu/drm/drm 0x6f07c140 drm_atomic_state_default_release +EXPORT_SYMBOL drivers/gpu/drm/drm 0x6f2925e0 drm_gem_vm_close +EXPORT_SYMBOL drivers/gpu/drm/drm 0x6f3a6399 drm_crtc_from_index +EXPORT_SYMBOL drivers/gpu/drm/drm 0x70555db4 drm_mode_set_config_internal +EXPORT_SYMBOL drivers/gpu/drm/drm 0x70e435fa drm_gem_map_detach +EXPORT_SYMBOL drivers/gpu/drm/drm 0x712b1f4d drm_encoder_init +EXPORT_SYMBOL drivers/gpu/drm/drm 0x71acd327 drm_mode_get_tile_group +EXPORT_SYMBOL drivers/gpu/drm/drm 0x7238f7d4 drm_dev_has_vblank +EXPORT_SYMBOL drivers/gpu/drm/drm 0x74b14b4c drm_vma_offset_add +EXPORT_SYMBOL drivers/gpu/drm/drm 0x76a8e7ea drm_property_replace_global_blob +EXPORT_SYMBOL drivers/gpu/drm/drm 0x76abff27 drm_gem_dmabuf_export +EXPORT_SYMBOL drivers/gpu/drm/drm 0x788daa51 drm_gem_map_attach +EXPORT_SYMBOL drivers/gpu/drm/drm 0x79013b5e drm_mode_config_reset +EXPORT_SYMBOL drivers/gpu/drm/drm 0x79518580 drm_framebuffer_plane_height +EXPORT_SYMBOL drivers/gpu/drm/drm 0x795e4c46 drm_syncobj_get_handle +EXPORT_SYMBOL drivers/gpu/drm/drm 0x795e8c8e drm_mode_create_dvi_i_properties +EXPORT_SYMBOL drivers/gpu/drm/drm 0x799a2391 drm_plane_force_disable +EXPORT_SYMBOL drivers/gpu/drm/drm 0x7a62440f drm_connector_attach_vrr_capable_property +EXPORT_SYMBOL drivers/gpu/drm/drm 0x7c573f34 drm_modeset_acquire_fini +EXPORT_SYMBOL drivers/gpu/drm/drm 0x7c846f7b drm_atomic_set_crtc_for_plane +EXPORT_SYMBOL drivers/gpu/drm/drm 0x7d405b49 drm_atomic_commit +EXPORT_SYMBOL drivers/gpu/drm/drm 0x7d580ed1 drm_gem_object_put_unlocked +EXPORT_SYMBOL drivers/gpu/drm/drm 0x7e374fb7 drm_panel_prepare +EXPORT_SYMBOL drivers/gpu/drm/drm 0x7edc546f drm_mm_print +EXPORT_SYMBOL drivers/gpu/drm/drm 0x80951dab drm_mode_probed_add +EXPORT_SYMBOL drivers/gpu/drm/drm 0x8108949d drm_mode_equal_no_clocks +EXPORT_SYMBOL drivers/gpu/drm/drm 0x8131c54e drm_probe_ddc +EXPORT_SYMBOL drivers/gpu/drm/drm 0x81992424 drm_edid_header_is_valid +EXPORT_SYMBOL drivers/gpu/drm/drm 0x81c7309f drm_property_lookup_blob +EXPORT_SYMBOL drivers/gpu/drm/drm 0x8247618d drm_atomic_normalize_zpos +EXPORT_SYMBOL drivers/gpu/drm/drm 0x83293ed0 drm_gem_object_release +EXPORT_SYMBOL drivers/gpu/drm/drm 0x8385e45b drm_atomic_get_private_obj_state +EXPORT_SYMBOL drivers/gpu/drm/drm 0x842dd90c drm_flip_work_commit +EXPORT_SYMBOL drivers/gpu/drm/drm 0x846ef9ec drm_master_put +EXPORT_SYMBOL drivers/gpu/drm/drm 0x84ce1a10 drm_gem_shmem_vmap +EXPORT_SYMBOL drivers/gpu/drm/drm 0x84cefc19 drm_wait_one_vblank +EXPORT_SYMBOL drivers/gpu/drm/drm 0x8563a554 drm_ht_remove +EXPORT_SYMBOL drivers/gpu/drm/drm 0x866fccb3 drm_gem_lock_reservations +EXPORT_SYMBOL drivers/gpu/drm/drm 0x86e5e325 drm_agp_enable +EXPORT_SYMBOL drivers/gpu/drm/drm 0x86ea2f21 drm_dev_set_unique +EXPORT_SYMBOL drivers/gpu/drm/drm 0x8717b9e7 drm_i2c_encoder_mode_set +EXPORT_SYMBOL drivers/gpu/drm/drm 0x871ab41a drm_rect_intersect +EXPORT_SYMBOL drivers/gpu/drm/drm 0x87578352 drm_vblank_init +EXPORT_SYMBOL drivers/gpu/drm/drm 0x88bff8aa devm_drm_dev_init +EXPORT_SYMBOL drivers/gpu/drm/drm 0x8916c460 drm_release +EXPORT_SYMBOL drivers/gpu/drm/drm 0x8935d2ad drm_crtc_check_viewport +EXPORT_SYMBOL drivers/gpu/drm/drm 0x8972e65c drm_event_reserve_init +EXPORT_SYMBOL drivers/gpu/drm/drm 0x89ec7ba0 drm_plane_create_zpos_property +EXPORT_SYMBOL drivers/gpu/drm/drm 0x8a2ad058 drm_atomic_set_fence_for_plane +EXPORT_SYMBOL drivers/gpu/drm/drm 0x8a799a8a drm_syncobj_find_fence +EXPORT_SYMBOL drivers/gpu/drm/drm 0x8ac02e0c drm_connector_attach_content_type_property +EXPORT_SYMBOL drivers/gpu/drm/drm 0x8bf89353 drm_poll +EXPORT_SYMBOL drivers/gpu/drm/drm 0x8bfbd0f2 drm_i2c_encoder_commit +EXPORT_SYMBOL drivers/gpu/drm/drm 0x8c4fd37c drm_mode_set_name +EXPORT_SYMBOL drivers/gpu/drm/drm 0x9029d61c drm_client_rotation +EXPORT_SYMBOL drivers/gpu/drm/drm 0x919206f3 drm_gem_mmap_obj +EXPORT_SYMBOL drivers/gpu/drm/drm 0x91ab444b drm_plane_from_index +EXPORT_SYMBOL drivers/gpu/drm/drm 0x91fec1cc drm_rect_calc_vscale +EXPORT_SYMBOL drivers/gpu/drm/drm 0x920a070a drm_atomic_add_affected_planes +EXPORT_SYMBOL drivers/gpu/drm/drm 0x9213f5c3 drm_edid_to_speaker_allocation +EXPORT_SYMBOL drivers/gpu/drm/drm 0x934af53c drm_gem_shmem_get_pages +EXPORT_SYMBOL drivers/gpu/drm/drm 0x9457daec drm_dev_dbg +EXPORT_SYMBOL drivers/gpu/drm/drm 0x9466f2db drm_i2c_encoder_prepare +EXPORT_SYMBOL drivers/gpu/drm/drm 0x95dbc76d drm_ht_create +EXPORT_SYMBOL drivers/gpu/drm/drm 0x9689721f drm_panel_detach +EXPORT_SYMBOL drivers/gpu/drm/drm 0x972e4665 drm_send_event +EXPORT_SYMBOL drivers/gpu/drm/drm 0x982698bd drm_mode_match +EXPORT_SYMBOL drivers/gpu/drm/drm 0x9876b74a drm_gem_shmem_print_info +EXPORT_SYMBOL drivers/gpu/drm/drm 0x99eb8bf5 drm_prime_pages_to_sg +EXPORT_SYMBOL drivers/gpu/drm/drm 0x99fd20aa drm_rect_clip_scaled +EXPORT_SYMBOL drivers/gpu/drm/drm 0x9a9cad56 drm_crtc_cleanup +EXPORT_SYMBOL drivers/gpu/drm/drm 0x9b250c16 drm_hdmi_avi_infoframe_content_type +EXPORT_SYMBOL drivers/gpu/drm/drm 0x9b8a53f5 drm_ht_just_insert_please +EXPORT_SYMBOL drivers/gpu/drm/drm 0x9c351ae1 drm_gem_shmem_pin +EXPORT_SYMBOL drivers/gpu/drm/drm 0x9c9bcc6f drm_atomic_set_fb_for_plane +EXPORT_SYMBOL drivers/gpu/drm/drm 0x9d9642ee drm_ioctl_kernel +EXPORT_SYMBOL drivers/gpu/drm/drm 0x9db2188a drm_panel_enable +EXPORT_SYMBOL drivers/gpu/drm/drm 0x9eb77960 drm_framebuffer_remove +EXPORT_SYMBOL drivers/gpu/drm/drm 0x9fa94ce5 drm_atomic_get_new_bridge_state +EXPORT_SYMBOL drivers/gpu/drm/drm 0x9fd47b74 drm_connector_set_link_status_property +EXPORT_SYMBOL drivers/gpu/drm/drm 0xa0713087 drm_ht_find_item +EXPORT_SYMBOL drivers/gpu/drm/drm 0xa1743155 drm_mode_create_aspect_ratio_property +EXPORT_SYMBOL drivers/gpu/drm/drm 0xa243e6a8 drm_bridge_attach +EXPORT_SYMBOL drivers/gpu/drm/drm 0xa31da83c drm_connector_attach_scaling_mode_property +EXPORT_SYMBOL drivers/gpu/drm/drm 0xa4806b84 drm_atomic_state_alloc +EXPORT_SYMBOL drivers/gpu/drm/drm 0xa4a3d8a2 drm_master_get +EXPORT_SYMBOL drivers/gpu/drm/drm 0xa4c53d2c drm_property_destroy +EXPORT_SYMBOL drivers/gpu/drm/drm 0xa6f6cbfe drm_plane_create_blend_mode_property +EXPORT_SYMBOL drivers/gpu/drm/drm 0xa7687d72 drm_prime_sg_to_page_addr_arrays +EXPORT_SYMBOL drivers/gpu/drm/drm 0xa893c8a8 drm_atomic_private_obj_init +EXPORT_SYMBOL drivers/gpu/drm/drm 0xa8ad5d01 drm_detect_hdmi_monitor +EXPORT_SYMBOL drivers/gpu/drm/drm 0xaa54cf93 drm_atomic_get_old_connector_for_encoder +EXPORT_SYMBOL drivers/gpu/drm/drm 0xaac39ff3 __drm_printfn_info +EXPORT_SYMBOL drivers/gpu/drm/drm 0xab90fd1f drm_crtc_accurate_vblank_count +EXPORT_SYMBOL drivers/gpu/drm/drm 0xabab5d21 drm_client_dev_hotplug +EXPORT_SYMBOL drivers/gpu/drm/drm 0xac56b14a drm_gem_dumb_destroy +EXPORT_SYMBOL drivers/gpu/drm/drm 0xad1bd506 drm_gem_object_init +EXPORT_SYMBOL drivers/gpu/drm/drm 0xad2a4ae4 drm_crtc_init_with_planes +EXPORT_SYMBOL drivers/gpu/drm/drm 0xad4e902b drm_color_ctm_s31_32_to_qm_n +EXPORT_SYMBOL drivers/gpu/drm/drm 0xad7c28cf drm_atomic_get_new_connector_for_encoder +EXPORT_SYMBOL drivers/gpu/drm/drm 0xae277372 __drm_crtc_commit_free +EXPORT_SYMBOL drivers/gpu/drm/drm 0xae5ec5b0 drm_gem_free_mmap_offset +EXPORT_SYMBOL drivers/gpu/drm/drm 0xb04fedb4 drm_gem_shmem_put_pages +EXPORT_SYMBOL drivers/gpu/drm/drm 0xb05169f9 drm_crtc_handle_vblank +EXPORT_SYMBOL drivers/gpu/drm/drm 0xb053adda drm_rect_rotate +EXPORT_SYMBOL drivers/gpu/drm/drm 0xb0b05ff5 drm_clflush_sg +EXPORT_SYMBOL drivers/gpu/drm/drm 0xb11ac7a7 __drm_err +EXPORT_SYMBOL drivers/gpu/drm/drm 0xb174d46e drm_connector_has_possible_encoder +EXPORT_SYMBOL drivers/gpu/drm/drm 0xb28cec4f drm_framebuffer_plane_width +EXPORT_SYMBOL drivers/gpu/drm/drm 0xb37fb6d8 drm_dev_unplug +EXPORT_SYMBOL drivers/gpu/drm/drm 0xb4032484 drm_mm_insert_node_in_range +EXPORT_SYMBOL drivers/gpu/drm/drm 0xb447512f drm_atomic_check_only +EXPORT_SYMBOL drivers/gpu/drm/drm 0xb6127243 drm_need_swiotlb +EXPORT_SYMBOL drivers/gpu/drm/drm 0xb7316c35 drm_universal_plane_init +EXPORT_SYMBOL drivers/gpu/drm/drm 0xb750532d drm_object_property_get_value +EXPORT_SYMBOL drivers/gpu/drm/drm 0xb853833f drm_mode_validate_size +EXPORT_SYMBOL drivers/gpu/drm/drm 0xb8bdb3f5 drm_puts +EXPORT_SYMBOL drivers/gpu/drm/drm 0xb8ce5763 drm_color_lut_check +EXPORT_SYMBOL drivers/gpu/drm/drm 0xb8f28004 drm_panel_add +EXPORT_SYMBOL drivers/gpu/drm/drm 0xb8f9f297 drm_bridge_remove +EXPORT_SYMBOL drivers/gpu/drm/drm 0xb90e6e70 drm_hdmi_avi_infoframe_colorspace +EXPORT_SYMBOL drivers/gpu/drm/drm 0xb9cad492 __drm_atomic_state_free +EXPORT_SYMBOL drivers/gpu/drm/drm 0xb9f56e22 drm_format_info_block_width +EXPORT_SYMBOL drivers/gpu/drm/drm 0xba1cf072 __drmm_add_action_or_reset +EXPORT_SYMBOL drivers/gpu/drm/drm 0xbaca8da8 drm_cvt_mode +EXPORT_SYMBOL drivers/gpu/drm/drm 0xbb33ee7b drm_default_rgb_quant_range +EXPORT_SYMBOL drivers/gpu/drm/drm 0xbb5c0f69 __drm_atomic_helper_disable_plane +EXPORT_SYMBOL drivers/gpu/drm/drm 0xbcf48f6d drm_property_create_range +EXPORT_SYMBOL drivers/gpu/drm/drm 0xbd476c89 drm_add_override_edid_modes +EXPORT_SYMBOL drivers/gpu/drm/drm 0xbd5ededa drm_crtc_set_max_vblank_count +EXPORT_SYMBOL drivers/gpu/drm/drm 0xbe0f2408 drm_driver_legacy_fb_format +EXPORT_SYMBOL drivers/gpu/drm/drm 0xbe3b5412 drm_modeset_lock_all +EXPORT_SYMBOL drivers/gpu/drm/drm 0xbeeacea9 drm_agp_acquire +EXPORT_SYMBOL drivers/gpu/drm/drm 0xc06c8a52 drm_crtc_vblank_reset +EXPORT_SYMBOL drivers/gpu/drm/drm 0xc10d0478 drm_object_property_set_value +EXPORT_SYMBOL drivers/gpu/drm/drm 0xc1c4dada drm_modeset_lock_all_ctx +EXPORT_SYMBOL drivers/gpu/drm/drm 0xc2c36138 drm_mode_is_420_only +EXPORT_SYMBOL drivers/gpu/drm/drm 0xc2ee2f85 drm_gem_map_dma_buf +EXPORT_SYMBOL drivers/gpu/drm/drm 0xc324efb9 drm_edid_to_sad +EXPORT_SYMBOL drivers/gpu/drm/drm 0xc35152b4 drm_gem_dmabuf_mmap +EXPORT_SYMBOL drivers/gpu/drm/drm 0xc3515a62 drm_plane_init +EXPORT_SYMBOL drivers/gpu/drm/drm 0xc39a58f1 drm_open +EXPORT_SYMBOL drivers/gpu/drm/drm 0xc3a0426e drm_crtc_enable_color_mgmt +EXPORT_SYMBOL drivers/gpu/drm/drm 0xc503316f drm_plane_create_color_properties +EXPORT_SYMBOL drivers/gpu/drm/drm 0xc52795ff drm_agp_bind +EXPORT_SYMBOL drivers/gpu/drm/drm 0xc5992401 __drm_puts_coredump +EXPORT_SYMBOL drivers/gpu/drm/drm 0xc6323239 drm_flip_work_cleanup +EXPORT_SYMBOL drivers/gpu/drm/drm 0xc70de6c2 drm_gem_put_pages +EXPORT_SYMBOL drivers/gpu/drm/drm 0xc7c3b8ae drm_gem_shmem_purge +EXPORT_SYMBOL drivers/gpu/drm/drm 0xc7f0f027 drm_format_info_min_pitch +EXPORT_SYMBOL drivers/gpu/drm/drm 0xc91a2afa drm_writeback_signal_completion +EXPORT_SYMBOL drivers/gpu/drm/drm 0xc97b2c3e drm_connector_cleanup +EXPORT_SYMBOL drivers/gpu/drm/drm 0xc9fd6654 drm_panel_get_modes +EXPORT_SYMBOL drivers/gpu/drm/drm 0xcae8df80 drm_gem_prime_mmap +EXPORT_SYMBOL drivers/gpu/drm/drm 0xcb2340b8 drm_rect_debug_print +EXPORT_SYMBOL drivers/gpu/drm/drm 0xcb5b21a1 drm_get_edid +EXPORT_SYMBOL drivers/gpu/drm/drm 0xcb9e3b92 drm_atomic_get_bridge_state +EXPORT_SYMBOL drivers/gpu/drm/drm 0xcc0c6c83 drm_ioctl +EXPORT_SYMBOL drivers/gpu/drm/drm 0xcc5895bb drm_connector_update_edid_property +EXPORT_SYMBOL drivers/gpu/drm/drm 0xccf8e421 drm_atomic_state_init +EXPORT_SYMBOL drivers/gpu/drm/drm 0xcdb32dd6 drm_connector_attach_tv_margin_properties +EXPORT_SYMBOL drivers/gpu/drm/drm 0xce4c4240 drm_irq_uninstall +EXPORT_SYMBOL drivers/gpu/drm/drm 0xcf11a549 drm_flip_work_allocate_task +EXPORT_SYMBOL drivers/gpu/drm/drm 0xd0043db4 drm_gem_shmem_purge_locked +EXPORT_SYMBOL drivers/gpu/drm/drm 0xd13f9985 drm_edid_block_valid +EXPORT_SYMBOL drivers/gpu/drm/drm 0xd213b14a drm_modeset_lock +EXPORT_SYMBOL drivers/gpu/drm/drm 0xd360108a drm_av_sync_delay +EXPORT_SYMBOL drivers/gpu/drm/drm 0xd364bfd7 drm_property_create_bitmask +EXPORT_SYMBOL drivers/gpu/drm/drm 0xd36e7611 drm_i2c_encoder_detect +EXPORT_SYMBOL drivers/gpu/drm/drm 0xd3db7100 drm_clflush_pages +EXPORT_SYMBOL drivers/gpu/drm/drm 0xd4505b10 drm_encoder_cleanup +EXPORT_SYMBOL drivers/gpu/drm/drm 0xd4571156 drm_framebuffer_cleanup +EXPORT_SYMBOL drivers/gpu/drm/drm 0xd59d1fb2 drm_mode_prune_invalid +EXPORT_SYMBOL drivers/gpu/drm/drm 0xd662b803 __devm_drm_dev_alloc +EXPORT_SYMBOL drivers/gpu/drm/drm 0xd680a377 drm_gem_object_free +EXPORT_SYMBOL drivers/gpu/drm/drm 0xd6aae07c drm_mode_parse_command_line_for_connector +EXPORT_SYMBOL drivers/gpu/drm/drm 0xd766c6b4 drm_writeback_get_out_fence +EXPORT_SYMBOL drivers/gpu/drm/drm 0xd8dd2a2d drm_atomic_set_mode_for_crtc +EXPORT_SYMBOL drivers/gpu/drm/drm 0xd91736ce drm_atomic_get_plane_state +EXPORT_SYMBOL drivers/gpu/drm/drm 0xd944cad2 drm_panel_attach +EXPORT_SYMBOL drivers/gpu/drm/drm 0xd96b425a __drm_printfn_coredump +EXPORT_SYMBOL drivers/gpu/drm/drm 0xd9b261d0 drm_event_cancel_free +EXPORT_SYMBOL drivers/gpu/drm/drm 0xda595f14 drm_crtc_vblank_waitqueue +EXPORT_SYMBOL drivers/gpu/drm/drm 0xdac1f95e drm_i2c_encoder_init +EXPORT_SYMBOL drivers/gpu/drm/drm 0xdac3fbce drm_gem_prime_fd_to_handle +EXPORT_SYMBOL drivers/gpu/drm/drm 0xdb2ef7e2 drm_connector_list_update +EXPORT_SYMBOL drivers/gpu/drm/drm 0xdb576a8e drm_hdmi_avi_infoframe_quant_range +EXPORT_SYMBOL drivers/gpu/drm/drm 0xdba2d633 drm_connector_set_panel_orientation +EXPORT_SYMBOL drivers/gpu/drm/drm 0xdbda2127 drm_i2c_encoder_dpms +EXPORT_SYMBOL drivers/gpu/drm/drm 0xddc01878 drm_debugfs_remove_files +EXPORT_SYMBOL drivers/gpu/drm/drm 0xddd1f64e drm_bridge_chain_disable +EXPORT_SYMBOL drivers/gpu/drm/drm 0xde287f11 drm_property_replace_blob +EXPORT_SYMBOL drivers/gpu/drm/drm 0xdf3f760d drm_mm_scan_color_evict +EXPORT_SYMBOL drivers/gpu/drm/drm 0xdf4a50e0 drm_sysfs_connector_status_event +EXPORT_SYMBOL drivers/gpu/drm/drm 0xdf666902 drm_rotation_simplify +EXPORT_SYMBOL drivers/gpu/drm/drm 0xe116d3a4 drm_vma_node_revoke +EXPORT_SYMBOL drivers/gpu/drm/drm 0xe1691992 drm_bridge_chain_post_disable +EXPORT_SYMBOL drivers/gpu/drm/drm 0xe1ca8685 drm_legacy_ioremapfree +EXPORT_SYMBOL drivers/gpu/drm/drm 0xe24d332d drm_add_modes_noedid +EXPORT_SYMBOL drivers/gpu/drm/drm 0xe25d0e17 drm_add_edid_modes +EXPORT_SYMBOL drivers/gpu/drm/drm 0xe31f608b drm_client_modeset_probe +EXPORT_SYMBOL drivers/gpu/drm/drm 0xe34e381a drm_crtc_arm_vblank_event +EXPORT_SYMBOL drivers/gpu/drm/drm 0xe3f9d289 drm_gem_create_mmap_offset +EXPORT_SYMBOL drivers/gpu/drm/drm 0xe4133565 drm_client_buffer_vmap +EXPORT_SYMBOL drivers/gpu/drm/drm 0xe48c1f09 drm_mode_create_dp_colorspace_property +EXPORT_SYMBOL drivers/gpu/drm/drm 0xe4a7d1d1 drm_writeback_queue_job +EXPORT_SYMBOL drivers/gpu/drm/drm 0xe54e11a8 drm_atomic_get_crtc_state +EXPORT_SYMBOL drivers/gpu/drm/drm 0xe5e29e21 drm_connector_attach_content_protection_property +EXPORT_SYMBOL drivers/gpu/drm/drm 0xe667c80d drm_gem_prime_export +EXPORT_SYMBOL drivers/gpu/drm/drm 0xe6fbaa8b drm_mode_config_cleanup +EXPORT_SYMBOL drivers/gpu/drm/drm 0xe74e7720 drm_gem_dmabuf_release +EXPORT_SYMBOL drivers/gpu/drm/drm 0xe771be93 drm_mode_create_from_cmdline_mode +EXPORT_SYMBOL drivers/gpu/drm/drm 0xe7e7c05d drm_syncobj_find +EXPORT_SYMBOL drivers/gpu/drm/drm 0xe817eb01 __drm_printfn_err +EXPORT_SYMBOL drivers/gpu/drm/drm 0xe8a034df drm_dev_exit +EXPORT_SYMBOL drivers/gpu/drm/drm 0xe9366013 drm_connector_set_tile_property +EXPORT_SYMBOL drivers/gpu/drm/drm 0xea328d40 drm_mode_object_put +EXPORT_SYMBOL drivers/gpu/drm/drm 0xea5867e4 drm_dev_alloc +EXPORT_SYMBOL drivers/gpu/drm/drm 0xeb4a4294 drm_mode_destroy +EXPORT_SYMBOL drivers/gpu/drm/drm 0xec12af74 __drm_dbg +EXPORT_SYMBOL drivers/gpu/drm/drm 0xec9f565a drm_mode_create_suggested_offset_properties +EXPORT_SYMBOL drivers/gpu/drm/drm 0xecda3906 drm_writeback_prepare_job +EXPORT_SYMBOL drivers/gpu/drm/drm 0xed4f0051 drm_gem_handle_create +EXPORT_SYMBOL drivers/gpu/drm/drm 0xed87a35f drm_atomic_bridge_chain_enable +EXPORT_SYMBOL drivers/gpu/drm/drm 0xedd351bd drm_connector_attach_max_bpc_property +EXPORT_SYMBOL drivers/gpu/drm/drm 0xeea43837 drm_writeback_cleanup_job +EXPORT_SYMBOL drivers/gpu/drm/drm 0xeef14d8c drm_format_info_block_height +EXPORT_SYMBOL drivers/gpu/drm/drm 0xf009c8b0 drm_atomic_private_obj_fini +EXPORT_SYMBOL drivers/gpu/drm/drm 0xf0517d7a drm_mm_init +EXPORT_SYMBOL drivers/gpu/drm/drm 0xf125b9b7 drm_framebuffer_unregister_private +EXPORT_SYMBOL drivers/gpu/drm/drm 0xf1421d13 drm_mode_sort +EXPORT_SYMBOL drivers/gpu/drm/drm 0xf19e1969 drm_gem_shmem_vunmap +EXPORT_SYMBOL drivers/gpu/drm/drm 0xf2587336 drm_atomic_bridge_chain_check +EXPORT_SYMBOL drivers/gpu/drm/drm 0xf2990869 drm_syncobj_create +EXPORT_SYMBOL drivers/gpu/drm/drm 0xf3086b0c drm_client_framebuffer_delete +EXPORT_SYMBOL drivers/gpu/drm/drm 0xf316e041 drm_gem_unlock_reservations +EXPORT_SYMBOL drivers/gpu/drm/drm 0xf406e46a drm_get_connector_type_name +EXPORT_SYMBOL drivers/gpu/drm/drm 0xf4c39aad drm_agp_release +EXPORT_SYMBOL drivers/gpu/drm/drm 0xf74e0553 drm_mode_create_content_type_property +EXPORT_SYMBOL drivers/gpu/drm/drm 0xf78ab344 drm_syncobj_add_point +EXPORT_SYMBOL drivers/gpu/drm/drm 0xf826786c drm_format_info +EXPORT_SYMBOL drivers/gpu/drm/drm 0xfa04d29a drm_mode_create +EXPORT_SYMBOL drivers/gpu/drm/drm 0xfb0e2ae2 drm_framebuffer_lookup +EXPORT_SYMBOL drivers/gpu/drm/drm 0xfc39877c drm_get_format_info +EXPORT_SYMBOL drivers/gpu/drm/drm 0xfc93306a drm_mode_put_tile_group +EXPORT_SYMBOL drivers/gpu/drm/drm 0xfe4df192 drm_mode_validate_driver +EXPORT_SYMBOL drivers/gpu/drm/drm 0xfe9ca022 drm_debugfs_create_files +EXPORT_SYMBOL drivers/gpu/drm/drm 0xfed795af drm_mode_debug_printmodeline +EXPORT_SYMBOL drivers/gpu/drm/drm 0xff8732fd drm_any_plane_has_format +EXPORT_SYMBOL drivers/gpu/drm/drm 0xff8de91d drm_print_bits +EXPORT_SYMBOL drivers/gpu/drm/drm 0xff90a292 drm_mode_copy +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x0016b7b7 drm_mode_config_helper_suspend +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x01a01a8a drm_fb_swab16 +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x02373b98 drm_gem_fb_create_handle +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x028f03ed drm_fb_xrgb8888_to_rgb565_dstclip +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x02f0c839 drm_atomic_helper_legacy_gamma_set +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x03c1d033 __drm_atomic_helper_crtc_destroy_state +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x06c49551 drm_dp_dsc_sink_line_buf_depth +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x078778f8 drm_fb_helper_alloc_fbi +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x07a32bab drm_dp_find_vcpi_slots +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x084108c4 drm_atomic_helper_page_flip +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x0a1ecb02 drm_self_refresh_helper_alter_state +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x0a4148ee drm_atomic_helper_commit_cleanup_done +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x0aac75df drm_scdc_set_scrambling +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x0cc184b3 drm_dp_dual_mode_set_tmds_output +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x0d1c2350 drm_self_refresh_helper_cleanup +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x0ed1cdef drm_kms_helper_poll_fini +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x0f094afc drm_helper_crtc_in_use +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x0f17e2c7 drm_fb_helper_initial_config +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x0f8ae5fd drm_atomic_helper_prepare_planes +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x11c9ad03 drm_dp_mst_topology_mgr_set_mst +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x129d16ba drm_gem_fb_simple_display_pipe_prepare_fb +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x1435f17e drm_fb_helper_ioctl +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x17aee351 drm_helper_connector_dpms +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x18d98eeb drm_helper_probe_single_connector_modes +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x1a1194e9 drm_fb_helper_cfb_fillrect +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x1b5d4217 drm_dp_mst_topology_mgr_resume +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x1e0ba0df drm_atomic_helper_swap_state +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x1e590566 __drm_atomic_helper_crtc_state_reset +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x1ec4b846 drm_helper_move_panel_connectors_to_head +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x1f0c1ab9 drm_dp_dpcd_read +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x1f37f1b4 drm_helper_mode_fill_fb_struct +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x1fe7a8b6 drm_dp_vsc_sdp_log +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x20cf8a6c drm_panel_bridge_remove +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x2182f60a drm_fb_helper_hotplug_event +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x22856778 drm_dp_mst_topology_mgr_destroy +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x22b8a796 drm_self_refresh_helper_update_avg_times +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x24bc4fcb drm_fb_helper_debug_leave +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x24db74c1 drm_fb_helper_deferred_io +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x2577a316 drm_simple_encoder_init +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x26815dbc drm_dp_link_rate_to_bw_code +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x2759f292 drm_dp_mst_dsc_aux_for_port +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x27bca774 drm_atomic_helper_connector_destroy_state +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x27cea7a2 drm_mode_config_helper_resume +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x2813ee7a drm_atomic_helper_commit_modeset_disables +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x28535335 drm_atomic_helper_commit_tail +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x28ee8343 drm_dp_set_phy_test_pattern +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x2a5ace37 drm_dp_mst_get_port_malloc +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x2a7942a5 __drm_atomic_helper_connector_duplicate_state +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x2b7c74ee drm_fb_helper_output_poll_changed +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x2be48607 drm_dp_mst_reset_vcpi_slots +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x2cfc4160 drm_atomic_helper_commit_planes +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x2d0fde14 drm_helper_force_disable_all +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x2e5ee6ad drm_atomic_helper_check_modeset +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x2ebdd5bd drm_dp_mst_get_edid +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x34a3dce0 drm_atomic_helper_bridge_propagate_bus_fmt +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x37dd397f drm_atomic_helper_resume +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x39d40764 drm_dp_mst_detect_port +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x3a8063f3 drm_dp_dsc_sink_supported_input_bpcs +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x3e8678b4 drm_atomic_helper_disable_planes_on_crtc +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x3f534bff __drm_atomic_helper_bridge_reset +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x3f5a972c drm_dp_read_desc +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x3ff8a38e drm_atomic_helper_connector_tv_reset +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x418827c7 __drm_atomic_helper_plane_duplicate_state +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x430ebf03 drm_kms_helper_poll_disable +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x4473e4f5 drm_atomic_helper_bridge_destroy_state +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x44d463ef drm_helper_encoder_in_use +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x48b62a57 drm_dp_link_train_channel_eq_delay +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x4ab685f7 __drm_atomic_helper_connector_destroy_state +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x4c4e490c drm_dp_aux_init +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x4feda14c drm_atomic_helper_commit_hw_done +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x52f79e1a drm_atomic_helper_crtc_duplicate_state +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x5407ae9e drm_dp_get_dual_mode_type_name +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x54719046 drm_atomic_helper_async_check +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x5484030b drm_dp_mst_connector_early_unregister +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x5532fa1b drm_dp_mst_topology_mgr_init +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x56019170 drm_fb_helper_sys_copyarea +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x562121dc drm_kms_helper_poll_enable +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x56c3999a drm_scdc_set_high_tmds_clock_ratio +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x57c0aa5f drm_fb_helper_prepare +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x582f248e drm_dp_get_adjust_request_pre_emphasis +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x58d8fcaa drm_dsc_pps_payload_pack +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x5921b621 drm_atomic_helper_update_legacy_modeset_state +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x59dc4ec8 drm_fb_memcpy +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x5a4734d1 drm_kms_helper_is_poll_worker +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x5b986f0e drm_atomic_helper_setup_commit +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x5bd7fa2e drm_dp_cec_set_edid +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x5bfade5c drm_panel_bridge_add +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x5c4a5d3a drm_fb_helper_pan_display +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x5e1e183b drm_atomic_helper_bridge_duplicate_state +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x5e24c1f4 drm_dp_dual_mode_write +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x5e34e17c drm_atomic_helper_wait_for_flip_done +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x5e56bcda drm_atomic_helper_crtc_destroy_state +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x5fbd6873 drm_atomic_helper_check_plane_state +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x6010da5b drm_atomic_helper_plane_duplicate_state +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x62a2307d drm_dp_mst_connector_late_register +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x63fc053a drm_lspcon_get_mode +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x64805082 drm_fb_helper_blank +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x648d953b drm_dsc_dp_pps_header_init +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x64b5456a drm_atomic_helper_plane_destroy_state +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x6522fb28 __drm_atomic_helper_plane_state_reset +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x6615069e drm_dp_dsc_sink_max_slice_count +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x667a2098 drm_atomic_helper_commit_modeset_enables +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x6a4ecc67 drm_gem_fb_destroy +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x6b5c2b06 drm_atomic_helper_damage_iter_next +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x6d21c849 __drm_atomic_helper_plane_destroy_state +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x6f41399a drm_dp_mst_add_affected_dsc_crtcs +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x73011db0 drm_dp_bw_code_to_link_rate +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x73eaf7ab drm_dp_mst_deallocate_vcpi +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x74bb621d drm_atomic_helper_damage_merged +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x750540ef drm_panel_bridge_add_typed +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x750b2729 drm_fb_helper_cfb_imageblit +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x75b00ed0 drm_fb_helper_fini +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x769ec917 drm_dp_aux_register +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x76e86174 drm_fb_memcpy_dstclip +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x7779afe0 drm_crtc_helper_set_config +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x77f39d1e drm_dp_send_real_edid_checksum +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x78023a0d drm_fb_helper_lastclose +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x78524c01 drm_dp_mst_atomic_check +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x7aea0bc1 drm_dp_mst_topology_state_funcs +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x7c8d2ddc drm_fb_helper_restore_fbdev_mode_unlocked +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x7d395953 drm_simple_display_pipe_init +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x7dd954d6 drm_atomic_get_mst_topology_state +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x7eb9ccb3 drm_fb_helper_sys_read +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x7ed030f6 drm_fb_helper_setcmap +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x7f70a679 drm_fb_helper_debug_enter +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x828b7e27 drm_fb_helper_sys_imageblit +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x82958631 drm_atomic_helper_crtc_reset +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x831f6340 __drm_atomic_helper_bridge_duplicate_state +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x835761a0 drm_dp_atomic_release_vcpi_slots +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x83dc66d1 drm_atomic_helper_set_config +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x8412a741 drm_dp_dual_mode_detect +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x876ac959 drm_dp_mst_hpd_irq +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x885a22ba drm_atomic_helper_disable_plane +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x894b1f57 drm_dp_get_adjust_request_post_cursor +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x8adf785b devm_drm_panel_bridge_add +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x8b5310da drm_dp_mst_get_vcpi_slots +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x8c2856d6 drm_self_refresh_helper_init +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x8ca2d9e4 drm_dp_calc_pbn_mode +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x8d701329 drm_dp_clock_recovery_ok +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x8ecf4732 drm_atomic_helper_disable_all +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x8f089765 drm_atomic_helper_wait_for_dependencies +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x91f9f518 drm_fb_helper_check_var +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x92340566 drm_fb_xrgb8888_to_rgb565 +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x92d6455a drm_fb_xrgb8888_to_gray8 +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x92f480e1 drm_atomic_helper_commit_tail_rpm +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x93c6a875 drm_atomic_helper_bridge_reset +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x94415265 drm_dp_cec_irq +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x9462f60a drm_atomic_helper_connector_reset +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x9480aad6 drm_dp_cec_register_connector +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x95d9869a drm_dp_downstream_debug +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x9625a7b7 drm_fb_helper_sys_fillrect +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x973e74be drm_atomic_helper_check_planes +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x9751dc8b drm_dp_aux_unregister +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x98219b64 drm_atomic_helper_check_plane_damage +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x9849225b drm_kms_helper_hotplug_event +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x9958fe2c __drm_atomic_helper_private_obj_duplicate_state +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x99c0ec80 __drm_atomic_helper_connector_state_reset +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x9c18384a drm_atomic_helper_fake_vblank +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x9df73b0c drm_dp_mst_atomic_enable_dsc +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x9e169fbb drm_dp_get_phy_test_pattern +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x9e3a0638 drm_helper_hpd_irq_event +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x9eacb5db drm_crtc_init +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xa09d2c57 drm_dp_remote_aux_init +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xa153a5f7 drm_dp_dpcd_read_link_status +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xa1fefe6a drm_dp_psr_setup_time +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xa2f5c65b drm_dp_get_edid_quirks +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xa6ff9496 drm_dp_link_train_clock_recovery_delay +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xa7295627 drm_scdc_get_scrambling_status +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xa73a333b drm_dp_check_act_status +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xa8a766b5 __drm_atomic_helper_crtc_reset +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xa8f70627 drm_atomic_helper_wait_for_vblanks +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xa93fe517 drm_crtc_helper_set_mode +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xaa47fbc2 drm_atomic_helper_async_commit +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xab0e7cd4 drm_fb_helper_modinit +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xab584900 drm_dp_stop_crc +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xabbf80a7 drm_dp_get_vc_payload_bw +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xadbc6f3f drm_fb_helper_set_suspend_unlocked +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xaf9e5a7d drm_dp_dual_mode_get_tmds_output +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xb0e2f3c8 drm_fb_helper_set_suspend +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xb160c55a drm_atomic_helper_commit +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xb261f190 drm_atomic_helper_cleanup_planes +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xb7051180 drm_kms_helper_poll_init +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xb9f79514 drm_atomic_helper_damage_iter_init +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xbf4a3ac2 drm_helper_resume_force_mode +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xc1d3a722 drm_dp_mst_topology_mgr_suspend +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xc4928665 drm_lspcon_set_mode +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xc5c99a79 drm_dp_get_adjust_request_voltage +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xc7174137 drm_dp_downstream_id +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xc8bd40ea drm_fb_helper_set_par +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xc92379bb drm_dp_mst_dump_topology +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xcc888e85 drm_atomic_helper_plane_reset +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xcd628769 drm_dp_update_payload_part2 +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xd08e2e78 drm_dp_dual_mode_read +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xd11cd4ab drm_dp_send_power_updown_phy +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xd1c18d52 drm_atomic_helper_suspend +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xd2917bf6 drm_dp_update_payload_part1 +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xd2fce14c drm_dp_cec_unset_edid +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xd4f08c70 drm_scdc_write +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xd5717f98 drm_helper_disable_unused_functions +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xd5ee5e8b drm_fb_xrgb8888_to_rgb888_dstclip +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xd6219cef drm_panel_bridge_connector +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xd62c5a49 drm_plane_enable_fb_damage_clips +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xd69f2ce6 drm_scdc_read +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xda35a22e drm_fb_helper_cfb_copyarea +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xda5307cd drm_primary_helper_destroy +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xdb7df3d5 drm_atomic_helper_update_plane +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xdce8736b drm_atomic_helper_dirtyfb +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xdd786cfa __drm_atomic_helper_connector_reset +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xe02abfbb drm_dp_downstream_max_bpc +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xe2868890 drm_atomic_helper_commit_planes_on_crtc +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xe3f10b63 drm_dp_dual_mode_max_tmds_clock +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xe6edc8a5 drm_fb_helper_fill_info +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xe8a8c9a3 drm_atomic_helper_shutdown +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xe8df26af drm_dp_mst_allocate_vcpi +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xe934a5a3 drm_atomic_helper_wait_for_fences +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xea0b82ed drm_helper_probe_detect +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xeb2a4875 drm_primary_helper_funcs +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xebf91589 drm_atomic_helper_page_flip_target +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xeca174d6 drm_atomic_helper_commit_duplicated_state +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xedcf81ce drm_dp_channel_eq_ok +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xef8a5167 drm_atomic_helper_check +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xefbe284b drm_dp_atomic_find_vcpi_slots +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xeffbe75e drm_atomic_helper_connector_duplicate_state +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xf09ddfbf drm_dp_mst_put_port_malloc +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xf2329e89 drm_dp_downstream_max_clock +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xf3159427 drm_simple_display_pipe_attach_bridge +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xf667098b drm_dp_cec_unregister_connector +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xf7c988bb devm_drm_panel_bridge_add_typed +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xf98dec26 drm_dp_start_crc +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xfabc5bb4 __drm_atomic_helper_crtc_duplicate_state +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xfbfffdf6 drm_fb_helper_unregister_fbi +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xfccd3498 drm_fb_helper_init +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xfd471d1d __drm_atomic_helper_plane_reset +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xfe00c67c drm_fb_helper_sys_write +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xfe12bcb9 drm_dsc_compute_rc_parameters +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xfe493264 drm_dp_dpcd_write +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xfe50620b drm_atomic_helper_duplicate_state +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xff1c5d66 drm_fbdev_generic_setup +EXPORT_SYMBOL drivers/gpu/drm/drm_mipi_dbi 0x30c11ebf mipi_dbi_command_stackbuf +EXPORT_SYMBOL drivers/gpu/drm/drm_mipi_dbi 0x32934216 mipi_dbi_display_is_on +EXPORT_SYMBOL drivers/gpu/drm/drm_mipi_dbi 0x3e988700 mipi_dbi_spi_init +EXPORT_SYMBOL drivers/gpu/drm/drm_mipi_dbi 0x4ba690fe mipi_dbi_buf_copy +EXPORT_SYMBOL drivers/gpu/drm/drm_mipi_dbi 0x4e0addfc mipi_dbi_command_buf +EXPORT_SYMBOL drivers/gpu/drm/drm_mipi_dbi 0x54984d49 mipi_dbi_debugfs_init +EXPORT_SYMBOL drivers/gpu/drm/drm_mipi_dbi 0x5816e761 mipi_dbi_dev_init +EXPORT_SYMBOL drivers/gpu/drm/drm_mipi_dbi 0x593d2a2d mipi_dbi_spi_transfer +EXPORT_SYMBOL drivers/gpu/drm/drm_mipi_dbi 0x765d3e9e mipi_dbi_hw_reset +EXPORT_SYMBOL drivers/gpu/drm/drm_mipi_dbi 0x77be9b5c mipi_dbi_poweron_reset +EXPORT_SYMBOL drivers/gpu/drm/drm_mipi_dbi 0xa3edbeee mipi_dbi_command_read +EXPORT_SYMBOL drivers/gpu/drm/drm_mipi_dbi 0xa8bf4b9e mipi_dbi_dev_init_with_formats +EXPORT_SYMBOL drivers/gpu/drm/drm_mipi_dbi 0xc31324d1 mipi_dbi_pipe_update +EXPORT_SYMBOL drivers/gpu/drm/drm_mipi_dbi 0xcaeff23f mipi_dbi_pipe_disable +EXPORT_SYMBOL drivers/gpu/drm/drm_mipi_dbi 0xd645da59 mipi_dbi_spi_cmd_max_speed +EXPORT_SYMBOL drivers/gpu/drm/drm_mipi_dbi 0xd7b2c09e mipi_dbi_enable_flush +EXPORT_SYMBOL drivers/gpu/drm/drm_mipi_dbi 0xe35b7109 mipi_dbi_poweron_conditional_reset +EXPORT_SYMBOL drivers/gpu/drm/drm_panel_orientation_quirks 0x2e439142 drm_get_panel_orientation_quirk +EXPORT_SYMBOL drivers/gpu/drm/drm_ttm_helper 0x3e477ad7 drm_gem_ttm_print_info +EXPORT_SYMBOL drivers/gpu/drm/drm_ttm_helper 0x7cf3222f drm_gem_ttm_mmap +EXPORT_SYMBOL drivers/gpu/drm/drm_vram_helper 0x01c4239e drm_gem_vram_driver_dumb_create +EXPORT_SYMBOL drivers/gpu/drm/drm_vram_helper 0x03eb38a8 drm_gem_vram_vunmap +EXPORT_SYMBOL drivers/gpu/drm/drm_vram_helper 0x083a1ebc drm_gem_vram_simple_display_pipe_cleanup_fb +EXPORT_SYMBOL drivers/gpu/drm/drm_vram_helper 0x0887a62d drm_gem_vram_create +EXPORT_SYMBOL drivers/gpu/drm/drm_vram_helper 0x1d47a9f8 drm_gem_vram_plane_helper_cleanup_fb +EXPORT_SYMBOL drivers/gpu/drm/drm_vram_helper 0x2cf81d8b drm_gem_vram_simple_display_pipe_prepare_fb +EXPORT_SYMBOL drivers/gpu/drm/drm_vram_helper 0x46e1f074 drm_gem_vram_pin +EXPORT_SYMBOL drivers/gpu/drm/drm_vram_helper 0x5d5e5ec7 drm_gem_vram_vmap +EXPORT_SYMBOL drivers/gpu/drm/drm_vram_helper 0x65290ea7 drm_gem_vram_fill_create_dumb +EXPORT_SYMBOL drivers/gpu/drm/drm_vram_helper 0x6d2559a5 drm_gem_vram_driver_dumb_mmap_offset +EXPORT_SYMBOL drivers/gpu/drm/drm_vram_helper 0x75a7c6c6 drm_vram_helper_mode_valid +EXPORT_SYMBOL drivers/gpu/drm/drm_vram_helper 0x85b605d6 drm_vram_helper_alloc_mm +EXPORT_SYMBOL drivers/gpu/drm/drm_vram_helper 0x91c97da1 drm_gem_vram_put +EXPORT_SYMBOL drivers/gpu/drm/drm_vram_helper 0xb0f9dbba drm_vram_helper_release_mm +EXPORT_SYMBOL drivers/gpu/drm/drm_vram_helper 0xbbf9d5e0 drm_gem_vram_kmap +EXPORT_SYMBOL drivers/gpu/drm/drm_vram_helper 0xc310b736 drm_gem_vram_mmap_offset +EXPORT_SYMBOL drivers/gpu/drm/drm_vram_helper 0xd6a73a69 drm_gem_vram_kunmap +EXPORT_SYMBOL drivers/gpu/drm/drm_vram_helper 0xd929fcf6 drm_gem_vram_offset +EXPORT_SYMBOL drivers/gpu/drm/drm_vram_helper 0xe97e1db7 drm_gem_vram_plane_helper_prepare_fb +EXPORT_SYMBOL drivers/gpu/drm/drm_vram_helper 0xf02e9d70 drm_vram_mm_debugfs_init +EXPORT_SYMBOL drivers/gpu/drm/drm_vram_helper 0xf60116b3 drm_gem_vram_unpin +EXPORT_SYMBOL drivers/gpu/drm/scheduler/gpu-sched 0x0a917e3f drm_sched_fault +EXPORT_SYMBOL drivers/gpu/drm/scheduler/gpu-sched 0x0c6a3338 drm_sched_entity_set_priority +EXPORT_SYMBOL drivers/gpu/drm/scheduler/gpu-sched 0x0f89f10c drm_sched_job_cleanup +EXPORT_SYMBOL drivers/gpu/drm/scheduler/gpu-sched 0x24358954 drm_sched_increase_karma +EXPORT_SYMBOL drivers/gpu/drm/scheduler/gpu-sched 0x2f99f308 drm_sched_pick_best +EXPORT_SYMBOL drivers/gpu/drm/scheduler/gpu-sched 0x348e4510 to_drm_sched_fence +EXPORT_SYMBOL drivers/gpu/drm/scheduler/gpu-sched 0x39c34b2f drm_sched_entity_init +EXPORT_SYMBOL drivers/gpu/drm/scheduler/gpu-sched 0x519a8b2c drm_sched_entity_fini +EXPORT_SYMBOL drivers/gpu/drm/scheduler/gpu-sched 0x58354122 drm_sched_entity_push_job +EXPORT_SYMBOL drivers/gpu/drm/scheduler/gpu-sched 0x5e64b5ce drm_sched_start +EXPORT_SYMBOL drivers/gpu/drm/scheduler/gpu-sched 0x72a04f45 drm_sched_resubmit_jobs +EXPORT_SYMBOL drivers/gpu/drm/scheduler/gpu-sched 0x9573a7c6 drm_sched_suspend_timeout +EXPORT_SYMBOL drivers/gpu/drm/scheduler/gpu-sched 0x9b6031a0 drm_sched_entity_flush +EXPORT_SYMBOL drivers/gpu/drm/scheduler/gpu-sched 0x9ba4d13f drm_sched_init +EXPORT_SYMBOL drivers/gpu/drm/scheduler/gpu-sched 0xaede6b86 drm_sched_dependency_optimized +EXPORT_SYMBOL drivers/gpu/drm/scheduler/gpu-sched 0xbf765b6f drm_sched_entity_destroy +EXPORT_SYMBOL drivers/gpu/drm/scheduler/gpu-sched 0xcb1dd16a drm_sched_stop +EXPORT_SYMBOL drivers/gpu/drm/scheduler/gpu-sched 0xd6e7e333 drm_sched_resume_timeout +EXPORT_SYMBOL drivers/gpu/drm/scheduler/gpu-sched 0xe0b2ca5d drm_sched_entity_modify_sched +EXPORT_SYMBOL drivers/gpu/drm/scheduler/gpu-sched 0xec08f76f drm_sched_job_init +EXPORT_SYMBOL drivers/gpu/drm/scheduler/gpu-sched 0xf6c45fd1 drm_sched_fini +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x015af6c1 ttm_bo_kmap +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x080ab47a ttm_bo_unlock_delayed_workqueue +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x0d910b11 ttm_bo_move_to_lru_tail +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x1162c224 ttm_bo_bulk_move_lru_tail +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x171bcf2b ttm_mem_glob +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x18a40d99 ttm_bo_kunmap +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x1c1b0585 ttm_io_prot +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x1ed4c390 ttm_pool_populate +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x1fa486e0 ttm_bo_move_ttm +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x22c700f1 ttm_bo_swapout_all +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x2413c803 ttm_bo_vm_close +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x26cb83b1 ttm_bo_clean_mm +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x2913b1fb ttm_bo_wait +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x2b1bb780 ttm_eu_reserve_buffers +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x2c26ec36 ttm_bo_vm_fault_reserved +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x36672cfc ttm_bo_lock_delayed_workqueue +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x41f9be95 ttm_bo_manager_func +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x43c6112d ttm_tt_fini +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x4debc6e5 ttm_dma_tt_init +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x4e0a71db ttm_pool_unpopulate +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x5169054a ttm_eu_backoff_reservation +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x55baee66 ttm_bo_evict_mm +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x5783d00b ttm_mem_global_free +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x5cd926d4 ttm_bo_move_memcpy +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x6052860c ttm_round_pot +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x6402aed3 ttm_bo_glob +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x6404dc1a ttm_eu_fence_buffer_objects +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x648f0621 ttm_agp_tt_unpopulate +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x6a89746f ttm_bo_mem_compat +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x6ec6df71 ttm_sg_tt_init +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x80def979 ttm_bo_vm_access +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x8e7a2a88 ttm_bo_validate +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x93587ecb ttm_populate_and_map_pages +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x9b067a2a ttm_mem_global_alloc +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x9b1dddf6 ttm_bo_vm_open +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x9d6a6f38 ttm_bo_swapout +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x9dc08697 ttm_bo_create +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x9de551c5 ttm_bo_init_reserved +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x9e69372a ttm_bo_eviction_valuable +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xa187fba1 ttm_bo_put +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xa4f7ffb9 ttm_bo_move_accel_cleanup +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xa542efae ttm_bo_dma_acc_size +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xad52f414 ttm_bo_mem_space +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xadc951a2 ttm_bo_unmap_virtual +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xaedd84ef ttm_bo_init +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xb514b50a ttm_bo_vm_reserve +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xb82b2d12 ttm_bo_mem_put +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xc6b3e501 ttm_bo_device_init +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xcc9cb617 ttm_tt_bind +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xcdd39c1e ttm_dma_tt_fini +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xd1e31304 ttm_bo_mmap_obj +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xd37c1d73 ttm_check_under_lowerlimit +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xd3cb60cb ttm_agp_tt_create +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xd7b59654 ttm_bo_pipeline_move +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xe57e07cf ttm_get_kernel_zone_memory_size +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xe71b6fcf ttm_page_alloc_debugfs +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xe75e4dfb ttm_tt_set_placement_caching +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xe882f058 ttm_agp_tt_populate +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xe89e7329 ttm_bo_init_mm +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xe8aa6209 ttm_unmap_and_unpopulate_pages +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xec315d9c ttm_bo_device_release +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xee5f9b1b ttm_bo_mmap +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xf13fbded ttm_tt_init +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xf3812a0c ttm_bo_acc_size +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xf435701c ttm_bo_vm_fault +EXPORT_SYMBOL drivers/hid/hid 0x29e4098c hid_bus_type +EXPORT_SYMBOL drivers/hid/intel-ish-hid/intel-ishtp 0x01a1ff10 ishtp_fw_cl_by_uuid +EXPORT_SYMBOL drivers/hid/intel-ish-hid/intel-ishtp 0x0c7a6749 ishtp_cl_flush_queues +EXPORT_SYMBOL drivers/hid/intel-ish-hid/intel-ishtp 0x0f929583 ishtp_get_client_data +EXPORT_SYMBOL drivers/hid/intel-ish-hid/intel-ishtp 0x12d1e83f ishtp_cl_disconnect +EXPORT_SYMBOL drivers/hid/intel-ish-hid/intel-ishtp 0x219dde81 ishtp_reset_compl_handler +EXPORT_SYMBOL drivers/hid/intel-ish-hid/intel-ishtp 0x256c1ed0 ishtp_cl_driver_register +EXPORT_SYMBOL drivers/hid/intel-ish-hid/intel-ishtp 0x2beddcbc ishtp_cl_send +EXPORT_SYMBOL drivers/hid/intel-ish-hid/intel-ishtp 0x332850ed ishtp_recv +EXPORT_SYMBOL drivers/hid/intel-ish-hid/intel-ishtp 0x361a55d5 ish_hw_reset +EXPORT_SYMBOL drivers/hid/intel-ish-hid/intel-ishtp 0x37cd2b41 ishtp_start +EXPORT_SYMBOL drivers/hid/intel-ish-hid/intel-ishtp 0x38d98f3a ishtp_dev_to_cl_device +EXPORT_SYMBOL drivers/hid/intel-ish-hid/intel-ishtp 0x3c2d9b15 ishtp_device_init +EXPORT_SYMBOL drivers/hid/intel-ish-hid/intel-ishtp 0x3e256e60 ishtp_send_suspend +EXPORT_SYMBOL drivers/hid/intel-ish-hid/intel-ishtp 0x3eecb094 ishtp_trace_callback +EXPORT_SYMBOL drivers/hid/intel-ish-hid/intel-ishtp 0x4017ff0e ishtp_get_ishtp_device +EXPORT_SYMBOL drivers/hid/intel-ish-hid/intel-ishtp 0x459ae264 ishtp_cl_set_fw_client_id +EXPORT_SYMBOL drivers/hid/intel-ish-hid/intel-ishtp 0x495cdfe9 ishtp_set_drvdata +EXPORT_SYMBOL drivers/hid/intel-ish-hid/intel-ishtp 0x49aae566 ishtp_set_tx_ring_size +EXPORT_SYMBOL drivers/hid/intel-ish-hid/intel-ishtp 0x4f534b59 ishtp_device +EXPORT_SYMBOL drivers/hid/intel-ish-hid/intel-ishtp 0x5c69a2b8 ishtp_get_device +EXPORT_SYMBOL drivers/hid/intel-ish-hid/intel-ishtp 0x5e72a154 ishtp_cl_free +EXPORT_SYMBOL drivers/hid/intel-ish-hid/intel-ishtp 0x5f9b0501 ishtp_get_fw_client_id +EXPORT_SYMBOL drivers/hid/intel-ish-hid/intel-ishtp 0x70591ffb ishtp_fw_cl_get_client +EXPORT_SYMBOL drivers/hid/intel-ish-hid/intel-ishtp 0x79cfaa4d ishtp_reset_handler +EXPORT_SYMBOL drivers/hid/intel-ish-hid/intel-ishtp 0x8e7c3473 ishtp_cl_get_tx_free_buffer_size +EXPORT_SYMBOL drivers/hid/intel-ish-hid/intel-ishtp 0x9989083c ishtp_cl_allocate +EXPORT_SYMBOL drivers/hid/intel-ish-hid/intel-ishtp 0x9aef3104 ishtp_register_event_cb +EXPORT_SYMBOL drivers/hid/intel-ish-hid/intel-ishtp 0x9c20117f ishtp_cl_io_rb_recycle +EXPORT_SYMBOL drivers/hid/intel-ish-hid/intel-ishtp 0xa23027ee ishtp_put_device +EXPORT_SYMBOL drivers/hid/intel-ish-hid/intel-ishtp 0xa3c12ae3 ishtp_set_rx_ring_size +EXPORT_SYMBOL drivers/hid/intel-ish-hid/intel-ishtp 0xaa15d687 ishtp_set_connection_state +EXPORT_SYMBOL drivers/hid/intel-ish-hid/intel-ishtp 0xac0d525f ishtp_cl_unlink +EXPORT_SYMBOL drivers/hid/intel-ish-hid/intel-ishtp 0xb003a529 ishtp_set_client_data +EXPORT_SYMBOL drivers/hid/intel-ish-hid/intel-ishtp 0xb0f0e5c7 ishtp_cl_get_tx_free_rings +EXPORT_SYMBOL drivers/hid/intel-ish-hid/intel-ishtp 0xb61d4968 ishtp_cl_connect +EXPORT_SYMBOL drivers/hid/intel-ish-hid/intel-ishtp 0xbbaaa1d5 ishtp_get_pci_device +EXPORT_SYMBOL drivers/hid/intel-ish-hid/intel-ishtp 0xca8098fd ishtp_send_resume +EXPORT_SYMBOL drivers/hid/intel-ish-hid/intel-ishtp 0xcd56f02a ishtp_get_drvdata +EXPORT_SYMBOL drivers/hid/intel-ish-hid/intel-ishtp 0xdeefc05e ishtp_cl_driver_unregister +EXPORT_SYMBOL drivers/hid/intel-ish-hid/intel-ishtp 0xe7e4dbf6 ishtp_cl_link +EXPORT_SYMBOL drivers/hid/intel-ish-hid/intel-ishtp 0xe95a326f ishtp_bus_remove_all_clients +EXPORT_SYMBOL drivers/hid/intel-ish-hid/intel-ishtp 0xeadb7934 ishtp_cl_tx_empty +EXPORT_SYMBOL drivers/hid/intel-ish-hid/intel-ishtp 0xecf23874 ishtp_cl_rx_get_rb +EXPORT_SYMBOL drivers/hwmon/hwmon-vid 0x2f9e7f8e vid_which_vrm +EXPORT_SYMBOL drivers/hwmon/hwmon-vid 0x446615bd vid_from_reg +EXPORT_SYMBOL drivers/hwmon/sch56xx-common 0x01568393 sch56xx_read_virtual_reg +EXPORT_SYMBOL drivers/hwmon/sch56xx-common 0x34257f35 sch56xx_watchdog_unregister +EXPORT_SYMBOL drivers/hwmon/sch56xx-common 0x54cb5f04 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 0x15e28824 i2c_bit_add_numbered_bus +EXPORT_SYMBOL drivers/i2c/algos/i2c-algo-bit 0x9073f4f4 i2c_bit_algo +EXPORT_SYMBOL drivers/i2c/algos/i2c-algo-bit 0xf4aaf3db i2c_bit_add_bus +EXPORT_SYMBOL drivers/i2c/algos/i2c-algo-pca 0x86994268 i2c_pca_add_numbered_bus +EXPORT_SYMBOL drivers/i2c/algos/i2c-algo-pca 0x94bfaa50 i2c_pca_add_bus +EXPORT_SYMBOL drivers/i2c/busses/i2c-amd756 0x95e9c393 amd756_smbus +EXPORT_SYMBOL drivers/i2c/i2c-core 0x04af68a3 i2c_verify_client +EXPORT_SYMBOL drivers/i2c/i2c-core 0x1a9e7dc6 i2c_clients_command +EXPORT_SYMBOL drivers/i2c/i2c-core 0x1c4e5653 i2c_smbus_read_i2c_block_data +EXPORT_SYMBOL drivers/i2c/i2c-core 0x241c342d i2c_smbus_write_byte +EXPORT_SYMBOL drivers/i2c/i2c-core 0x3455754c i2c_smbus_read_byte_data +EXPORT_SYMBOL drivers/i2c/i2c-core 0x34c24554 i2c_verify_adapter +EXPORT_SYMBOL drivers/i2c/i2c-core 0x3c105aa3 i2c_add_adapter +EXPORT_SYMBOL drivers/i2c/i2c-core 0x48e0714c i2c_smbus_read_byte +EXPORT_SYMBOL drivers/i2c/i2c-core 0x4e1cdaf0 i2c_transfer_buffer_flags +EXPORT_SYMBOL drivers/i2c/i2c-core 0x5a6fb59d __i2c_smbus_xfer +EXPORT_SYMBOL drivers/i2c/i2c-core 0x5c9afa14 __i2c_transfer +EXPORT_SYMBOL drivers/i2c/i2c-core 0x6d6e0848 i2c_smbus_write_block_data +EXPORT_SYMBOL drivers/i2c/i2c-core 0x74d0711a i2c_transfer +EXPORT_SYMBOL drivers/i2c/i2c-core 0x82ed07a7 i2c_smbus_xfer +EXPORT_SYMBOL drivers/i2c/i2c-core 0x894e8304 i2c_smbus_read_i2c_block_data_or_emulated +EXPORT_SYMBOL drivers/i2c/i2c-core 0x8da7887f i2c_smbus_write_i2c_block_data +EXPORT_SYMBOL drivers/i2c/i2c-core 0x8db74e8a i2c_del_driver +EXPORT_SYMBOL drivers/i2c/i2c-core 0xa3b46689 i2c_smbus_write_byte_data +EXPORT_SYMBOL drivers/i2c/i2c-core 0xa7a640b4 i2c_del_adapter +EXPORT_SYMBOL drivers/i2c/i2c-core 0xaa6e8f1c i2c_register_driver +EXPORT_SYMBOL drivers/i2c/i2c-core 0xb662a629 i2c_smbus_read_word_data +EXPORT_SYMBOL drivers/i2c/i2c-core 0xc2fb3ec5 i2c_smbus_write_word_data +EXPORT_SYMBOL drivers/i2c/i2c-core 0xcec7507b i2c_put_adapter +EXPORT_SYMBOL drivers/i2c/i2c-core 0xe1128f00 i2c_get_adapter +EXPORT_SYMBOL drivers/i2c/i2c-core 0xee25c952 i2c_smbus_read_block_data +EXPORT_SYMBOL drivers/infiniband/core/ib_cm 0x087411e4 ib_cm_insert_listen +EXPORT_SYMBOL drivers/infiniband/core/ib_cm 0x0e443100 ib_cm_listen +EXPORT_SYMBOL drivers/infiniband/core/ib_cm 0x264bf072 ib_send_cm_mra +EXPORT_SYMBOL drivers/infiniband/core/ib_cm 0x39361927 ib_send_cm_sidr_rep +EXPORT_SYMBOL drivers/infiniband/core/ib_cm 0x3c33df94 ib_send_cm_drep +EXPORT_SYMBOL drivers/infiniband/core/ib_cm 0x4285441a ib_send_cm_req +EXPORT_SYMBOL drivers/infiniband/core/ib_cm 0x4d1769d7 ib_create_cm_id +EXPORT_SYMBOL drivers/infiniband/core/ib_cm 0x5412d066 ib_cm_notify +EXPORT_SYMBOL drivers/infiniband/core/ib_cm 0x56518e27 ib_send_cm_dreq +EXPORT_SYMBOL drivers/infiniband/core/ib_cm 0x69824a14 ibcm_reject_msg +EXPORT_SYMBOL drivers/infiniband/core/ib_cm 0x88f7bb28 ib_send_cm_rej +EXPORT_SYMBOL drivers/infiniband/core/ib_cm 0xac977685 ib_destroy_cm_id +EXPORT_SYMBOL drivers/infiniband/core/ib_cm 0xad231073 ib_cm_init_qp_attr +EXPORT_SYMBOL drivers/infiniband/core/ib_cm 0xbc1b9127 ib_send_cm_rep +EXPORT_SYMBOL drivers/infiniband/core/ib_cm 0xd2bb7143 ib_send_cm_sidr_req +EXPORT_SYMBOL drivers/infiniband/core/ib_cm 0xdaba4d9a ib_send_cm_rtu +EXPORT_SYMBOL drivers/infiniband/core/ib_cm 0xf8201093 cm_class +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x004831e9 ib_sa_sendonly_fullmem_support +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x01685124 ib_dispatch_event +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x01c11aec ib_get_vf_stats +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x024ac62e rdma_nl_put_driver_string +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x044a118c ib_device_get_by_name +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x04c90920 rdma_put_gid_attr +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x04cce106 ib_modify_device +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x051a47a8 ib_get_eth_speed +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x06a14a76 ib_mr_pool_put +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x0b0b5a32 __ib_alloc_cq +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x0c04c40c rdma_user_mmap_entry_remove +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x0c86f5cb ib_sa_register_client +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x131639db rdma_modify_ah +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x134482e0 ib_create_qp_security +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x14d03dff ib_register_mad_agent +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x17969742 rdma_restrack_uadd +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x184621a4 ib_get_rdma_header_version +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x1957f0cb rdma_restrack_kadd +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x1b037462 __rdma_block_iter_start +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x1c4dd26f ib_rdmacg_uncharge +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x1d52a451 ib_create_send_mad +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x20880b43 ib_get_net_dev_by_params +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x22f3cf93 ib_pack +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x24d9904b __ib_alloc_cq_any +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x25bfaaa2 ibdev_alert +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x267b2ff1 ib_init_ah_attr_from_path +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x273ae423 rdma_create_ah +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x282673da ib_attach_mcast +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x29845002 rdma_restrack_put +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x2a91bb33 ib_cache_gid_type_str +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x2ad37735 ibnl_put_attr +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x2c6f1757 rdma_translate_ip +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x2d0564d5 ib_cancel_mad +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x2ddefe70 ib_unregister_device_queued +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x2ee318b8 ib_create_wq +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x2eec5bd7 ibdev_notice +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x2fbac585 ib_sa_service_rec_query +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x305e5701 rdma_addr_size_kss +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x30660ec0 ib_get_device_fw_str +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x30e76935 rdma_restrack_get +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x315a3068 rdma_restrack_del +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x32cf6436 ib_mr_pool_get +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x340e5730 ib_process_cq_direct +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x36e4167c ib_free_recv_mad +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x37c55265 ibdev_printk +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x3a0fea49 ib_init_ah_attr_from_wc +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x3b3186bf ib_advise_mr +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x3b3c4953 rdma_move_grh_sgid_attr +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x3bc2c7d3 rdma_restrack_count +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x3c060107 ib_destroy_rwq_ind_table +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x3c5a69ca ib_get_vf_config +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x3d0b3455 ibdev_emerg +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x3d66f647 rdma_user_mmap_io +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x3ed4bfd2 rdma_nl_multicast +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x3f993d58 rdma_addr_cancel +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x3fc2387c ib_ud_header_unpack +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x42ab4517 rdma_user_mmap_entry_get_pgoff +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 0x4498b4ef ib_get_cached_subnet_prefix +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x45fb8985 rdma_nl_chk_listeners +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x49e86a0e ib_get_gids_from_rdma_hdr +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x4a13f2f9 ib_drain_qp +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x4ad2e3a9 ib_unregister_event_handler +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x4b759d18 ib_detach_mcast +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x4bebe382 rdma_find_gid +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x4c6a92d7 ib_find_pkey +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x4e155af0 ib_response_mad +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x4e69a2bf ib_dereg_mr_user +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x4e90435c ib_sa_free_multicast +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x4eeae137 rdma_rw_ctx_post +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x510e90cc __ib_alloc_pd +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x57cc0c0b rdma_alloc_netdev +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x5a69682e ib_port_register_module_stat +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x5f760f12 ib_modify_wq +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x613b1e2e ib_is_mad_class_rmpp +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x61c7a9a5 rdma_destroy_ah_attr +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x61d24c52 ib_rate_to_mbps +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x62748b9f rdma_nl_put_driver_u32_hex +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x628df943 ib_destroy_srq_user +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x645b4627 rdma_destroy_ah_user +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x6651eeb1 ib_query_srq +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x66673996 rdma_dev_access_netns +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x6684e11d rdma_nl_unicast_wait +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x699fa973 ib_resize_cq +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x6b958320 ib_ud_ip4_csum +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x6bf6a10f rdma_link_unregister +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x6ea2ec46 ib_create_srq_user +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x6f3614b6 rdma_is_zero_gid +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x701ab7b2 rdma_umap_priv_init +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x7050e7c6 ib_create_ah_from_wc +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x72d55d3b rdma_nl_put_driver_u64 +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x75472fd3 ib_query_pkey +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x75a729a0 rdma_nl_unregister +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x787ccc4c ib_get_mad_data_offset +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x78c9dcd3 rdma_nl_register +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x7a95f27a ib_get_cached_port_state +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x7b56b034 ib_unregister_driver +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x7b899435 ib_create_rwq_ind_table +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x7ca00fe8 ib_destroy_cq_user +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x7f7ed8bd roce_gid_type_mask_support +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x8045ceed rdma_read_gid_l2_fields +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x809cc1d6 _ib_alloc_device +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x80bd880e ib_device_put +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x8396c24c ib_sa_guid_info_rec_query +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x83f7e805 ibnl_put_msg +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x86cef180 rdma_addr_size +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x872eb285 ibdev_err +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x87cfed5b rdma_find_gid_by_port +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x87e5e443 ib_unregister_mad_agent +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x87ffbbda rdma_rw_ctx_init +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x8918de99 ib_map_mr_sg_pi +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x89755091 rdma_rw_ctx_destroy_signature +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x89aef4f1 __ib_create_cq +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x8a06d741 ib_get_vf_guid +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x8c90b902 rdma_restrack_set_task +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x8e03dff7 ib_sa_get_mcmember_rec +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x8e7528da __rdma_block_iter_next +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x8f0a5022 ib_dealloc_pd_user +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x90137903 ib_get_cached_lmc +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x90e807c7 ib_cache_gid_parse_type_str +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x94205da7 rdma_rw_ctx_destroy +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x950ea933 rdma_rw_mr_factor +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x95e54f6b ib_dealloc_xrcd +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x97878de5 ib_rdmacg_try_charge +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x97c563f3 ib_free_cq +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x98e714b0 ibdev_crit +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x99e1220a ib_find_cached_pkey +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x9c522cbe ib_init_ah_from_mcmember +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x9caccd03 ib_cq_pool_get +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x9db8c4d7 ib_device_set_netdev +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x9dfee521 ib_modify_qp +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x9e3da99f rdma_user_mmap_entry_insert_range +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x9e4ef894 ib_mr_pool_destroy +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xa1f1f715 ib_find_gid +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xa432baf6 ib_unpack +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xa5a9b236 ib_query_qp +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xa68da299 rdma_resolve_ip +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xa6f29905 ib_get_rmpp_segment +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xa73935cd ib_dealloc_device +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xa7715794 ib_create_qp +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xa9a86329 ib_register_device +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xab12af32 ib_set_vf_link_state +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xadcff364 rdma_query_ah +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xae956dce ib_rate_to_mult +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xafce3982 ib_port_unregister_module_stat +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xb02b96c5 ib_reg_user_mr +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xb1ae7e2b rdma_roce_rescan_device +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xb239cc13 rdma_user_mmap_entry_insert +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xb32feaad rdma_hold_gid_attr +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xb36e4148 ib_sa_pack_path +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xb3839649 ib_sa_path_rec_get +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xb3cb8fc6 rdma_rw_ctx_signature_init +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xb58ccb61 rdma_read_gid_hw_context +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xb703293f ib_get_cached_pkey +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xb73261a5 ib_register_client +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xb7852a05 ib_ud_header_init +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xb93172de rdma_user_mmap_entry_put +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xba157068 ib_modify_srq +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xbdfe9816 ib_destroy_wq +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xbed66696 ib_free_send_mad +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xbf642681 ib_register_event_handler +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xc0f14e81 rdma_link_register +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xc124ea09 rdma_nl_stat_hwcounter_entry +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xc1b0e05a rdma_create_user_ah +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xc1fb69f6 rdma_nl_unicast +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xc2ab42e9 ib_unregister_device +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xc6387b6d ib_alloc_mr_integrity +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xc7ca237e ib_unregister_device_and_put +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xc7ef037f ib_drain_rq +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xcbb44f31 ib_map_mr_sg +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xcbc66f8b rdma_nl_put_driver_u32 +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xcc751e32 rdma_rw_ctx_wrs +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xccaed9a6 rdma_user_mmap_entry_get +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xcd7de687 ib_drain_sq +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xd0b922c7 ib_sg_to_pages +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xd39cd874 ib_modify_mad +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xd46e6090 ib_sa_join_multicast +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xd5bf23ac ib_set_device_ops +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xd635ab30 ib_query_port +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xd645c164 ib_close_qp +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xd6636ca6 rdma_addr_size_in6 +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xd6e65d77 ib_modify_qp_is_ok +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xd6fb57b4 ib_find_exact_cached_pkey +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xd804dfc8 rdma_set_cq_moderation +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xd8a80764 ib_alloc_mr_user +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xd93becf5 rdma_replace_ah_attr +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xd946f4b9 rdma_move_ah_attr +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xd9fcdc3a rdma_restrack_get_byid +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xda0d50ec ib_sa_cancel_query +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xda1af522 ib_post_send_mad +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xda352082 ib_unregister_client +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xde8436da ibdev_info +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xe180722c rdma_copy_src_l2_addr +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xe28b953a ib_modify_qp_with_udata +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xe34d1fb7 ib_check_mr_status +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xe3f1de6f rdma_query_gid +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xe550a81c ib_open_qp +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xe5840ec6 ib_wc_status_msg +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xe5a78c1e ib_sa_unpack_path +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xe7b52e5f mult_to_ib_rate +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xe8d92c7a ibdev_warn +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xe99868a7 rdma_init_netdev +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xe9e799fc ib_ud_header_pack +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xeac82225 rdma_nl_put_driver_u64_hex +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xebc029b6 ib_set_client_data +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xed6f621c ib_destroy_qp_user +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xee180efd __ib_alloc_xrcd +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xefb49b7c ib_cq_pool_put +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xf0a92485 ib_modify_port +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xf0f3ee64 ib_mad_kernel_rmpp_agent +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xf3bddd1f rdma_port_get_link_layer +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xf3d4ddc1 ib_device_get_by_netdev +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xf468b914 rdma_copy_ah_attr +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xf5dedb30 rdma_node_get_transport +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xf5e3c5e6 rdma_read_gid_attr_ndev_rcu +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xf6ed3334 ib_event_msg +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xfac78de6 ib_mr_pool_init +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xfe6aa966 rdma_get_gid_attr +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xff5967a8 ib_set_vf_guid +EXPORT_SYMBOL drivers/infiniband/core/ib_uverbs 0x05b94e36 flow_resources_alloc +EXPORT_SYMBOL drivers/infiniband/core/ib_uverbs 0x12cf9020 ib_umem_odp_get +EXPORT_SYMBOL drivers/infiniband/core/ib_uverbs 0x1432dd92 ib_umem_find_best_pgsz +EXPORT_SYMBOL drivers/infiniband/core/ib_uverbs 0x157957a6 _uverbs_alloc +EXPORT_SYMBOL drivers/infiniband/core/ib_uverbs 0x18b7e7e5 ib_umem_odp_unmap_dma_pages +EXPORT_SYMBOL drivers/infiniband/core/ib_uverbs 0x19009bde uverbs_finalize_uobj_create +EXPORT_SYMBOL drivers/infiniband/core/ib_uverbs 0x1b54bd5d ib_copy_path_rec_from_user +EXPORT_SYMBOL drivers/infiniband/core/ib_uverbs 0x2aa9ae10 ib_umem_odp_release +EXPORT_SYMBOL drivers/infiniband/core/ib_uverbs 0x2b0f82c6 ib_umem_get +EXPORT_SYMBOL drivers/infiniband/core/ib_uverbs 0x33244bde ib_uverbs_flow_resources_free +EXPORT_SYMBOL drivers/infiniband/core/ib_uverbs 0x346b5a44 uverbs_destroy_def_handler +EXPORT_SYMBOL drivers/infiniband/core/ib_uverbs 0x35e496aa uverbs_uobject_fd_release +EXPORT_SYMBOL drivers/infiniband/core/ib_uverbs 0x501fb5f9 ib_umem_odp_alloc_child +EXPORT_SYMBOL drivers/infiniband/core/ib_uverbs 0x570d7c18 ib_umem_odp_alloc_implicit +EXPORT_SYMBOL drivers/infiniband/core/ib_uverbs 0x57a87b72 uverbs_get_flags64 +EXPORT_SYMBOL drivers/infiniband/core/ib_uverbs 0x5bb93edb uverbs_get_flags32 +EXPORT_SYMBOL drivers/infiniband/core/ib_uverbs 0x63057f4b ib_copy_path_rec_to_user +EXPORT_SYMBOL drivers/infiniband/core/ib_uverbs 0x63721c36 uverbs_copy_to +EXPORT_SYMBOL drivers/infiniband/core/ib_uverbs 0x79e9d325 ib_umem_page_count +EXPORT_SYMBOL drivers/infiniband/core/ib_uverbs 0x950db236 uverbs_uobject_put +EXPORT_SYMBOL drivers/infiniband/core/ib_uverbs 0x96028fb4 uverbs_fd_class +EXPORT_SYMBOL drivers/infiniband/core/ib_uverbs 0x9ddebed8 ib_umem_copy_from +EXPORT_SYMBOL drivers/infiniband/core/ib_uverbs 0xa86b069b ib_umem_odp_map_dma_pages +EXPORT_SYMBOL drivers/infiniband/core/ib_uverbs 0xa96885a7 ib_umem_release +EXPORT_SYMBOL drivers/infiniband/core/ib_uverbs 0xb40b0d96 _uverbs_get_const +EXPORT_SYMBOL drivers/infiniband/core/ib_uverbs 0xbb0dbe94 uverbs_idr_class +EXPORT_SYMBOL drivers/infiniband/core/ib_uverbs 0xcd695e49 ib_uverbs_get_ucontext_file +EXPORT_SYMBOL drivers/infiniband/core/ib_uverbs 0xd7cd1aba ib_copy_ah_attr_to_user +EXPORT_SYMBOL drivers/infiniband/core/ib_uverbs 0xe141c6e6 ib_copy_qp_attr_to_user +EXPORT_SYMBOL drivers/infiniband/core/ib_uverbs 0xe6f41312 flow_resources_add +EXPORT_SYMBOL drivers/infiniband/core/iw_cm 0x045596b3 iw_cm_disconnect +EXPORT_SYMBOL drivers/infiniband/core/iw_cm 0x1ab33890 iw_cm_connect +EXPORT_SYMBOL drivers/infiniband/core/iw_cm 0x1d0c8a34 iw_cm_reject +EXPORT_SYMBOL drivers/infiniband/core/iw_cm 0x2df9dfb5 iw_cm_accept +EXPORT_SYMBOL drivers/infiniband/core/iw_cm 0x67273f83 iw_create_cm_id +EXPORT_SYMBOL drivers/infiniband/core/iw_cm 0xc2da1e11 iw_destroy_cm_id +EXPORT_SYMBOL drivers/infiniband/core/iw_cm 0xd855bcbf iw_cm_init_qp_attr +EXPORT_SYMBOL drivers/infiniband/core/iw_cm 0xf3df871f iwcm_reject_msg +EXPORT_SYMBOL drivers/infiniband/core/iw_cm 0xfa789259 iw_cm_listen +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0x01094d38 rdma_set_reuseaddr +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0x0c0efb12 rdma_set_afonly +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0x158243ef rdma_iw_cm_id +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0x3a62b118 rdma_join_multicast +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0x3d1895b5 rdma_res_to_id +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0x49633a95 __rdma_accept +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0x4f64dcba rdma_resolve_route +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0x5e3df22f rdma_set_ack_timeout +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0x64891297 rdma_connect_ece +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0x67d5e200 rdma_leave_multicast +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0x705b8da1 rdma_reject +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0x70f30634 rdma_create_qp +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0x733e8d73 rdma_get_service_id +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0x834674b4 rdma_set_service_type +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0x86c8fb6a rdma_listen +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0x8f92b19f rdma_init_qp_attr +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0x907df803 rdma_event_msg +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0xa2172909 __rdma_accept_ece +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0xa7236513 __rdma_create_id +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0xaa612a48 rdma_set_ib_path +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0xab1e74cd rdma_connect +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0xadaf43fe rdma_destroy_qp +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0xc707641c rdma_notify +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0xc83ccf1e rdma_reject_msg +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0xc8d635c8 rdma_bind_addr +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0xdbd920ca rdma_disconnect +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0xdd22fda7 rdma_destroy_id +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0xe92c4f9f rdma_consumer_reject_data +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0xee3d7514 rdma_resolve_addr +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0xff28b8ab rdma_read_gids +EXPORT_SYMBOL drivers/infiniband/ulp/rtrs/rtrs-client 0x01066089 rtrs_clt_close +EXPORT_SYMBOL drivers/infiniband/ulp/rtrs/rtrs-client 0x1ed4e478 rtrs_clt_query +EXPORT_SYMBOL drivers/infiniband/ulp/rtrs/rtrs-client 0x267cf596 rtrs_clt_open +EXPORT_SYMBOL drivers/infiniband/ulp/rtrs/rtrs-client 0x501f598d rtrs_permit_to_pdu +EXPORT_SYMBOL drivers/infiniband/ulp/rtrs/rtrs-client 0x5e2e6a46 rtrs_clt_get_permit +EXPORT_SYMBOL drivers/infiniband/ulp/rtrs/rtrs-client 0x5ec91774 rtrs_clt_put_permit +EXPORT_SYMBOL drivers/infiniband/ulp/rtrs/rtrs-client 0xeee25ade rtrs_clt_request +EXPORT_SYMBOL drivers/infiniband/ulp/rtrs/rtrs-core 0x56636a82 rtrs_rdma_dev_pd_init +EXPORT_SYMBOL drivers/infiniband/ulp/rtrs/rtrs-core 0x5b01e41d sockaddr_to_str +EXPORT_SYMBOL drivers/infiniband/ulp/rtrs/rtrs-core 0x887302f3 rtrs_addr_to_sockaddr +EXPORT_SYMBOL drivers/infiniband/ulp/rtrs/rtrs-core 0x94932cc5 rtrs_ib_dev_put +EXPORT_SYMBOL drivers/infiniband/ulp/rtrs/rtrs-core 0xb4192cd6 rtrs_rdma_dev_pd_deinit +EXPORT_SYMBOL drivers/infiniband/ulp/rtrs/rtrs-core 0xc8ac8a2a rtrs_ib_dev_find_or_add +EXPORT_SYMBOL drivers/infiniband/ulp/rtrs/rtrs-server 0x03a9090e rtrs_srv_set_sess_priv +EXPORT_SYMBOL drivers/infiniband/ulp/rtrs/rtrs-server 0x297ad50d rtrs_srv_get_queue_depth +EXPORT_SYMBOL drivers/infiniband/ulp/rtrs/rtrs-server 0xd0b26ee1 rtrs_srv_resp_rdma +EXPORT_SYMBOL drivers/infiniband/ulp/rtrs/rtrs-server 0xdc6ae90e rtrs_srv_open +EXPORT_SYMBOL drivers/infiniband/ulp/rtrs/rtrs-server 0xe7501ef6 rtrs_srv_get_sess_name +EXPORT_SYMBOL drivers/infiniband/ulp/rtrs/rtrs-server 0xff6da8f0 rtrs_srv_close +EXPORT_SYMBOL drivers/input/input-polldev 0x0a28577d input_free_polled_device +EXPORT_SYMBOL drivers/input/input-polldev 0x0dee1882 input_register_polled_device +EXPORT_SYMBOL drivers/input/input-polldev 0x809bc081 input_unregister_polled_device +EXPORT_SYMBOL drivers/input/input-polldev 0x81b8715d devm_input_allocate_polled_device +EXPORT_SYMBOL drivers/input/input-polldev 0xe5c8c143 input_allocate_polled_device +EXPORT_SYMBOL drivers/input/matrix-keymap 0x6d9ab77c matrix_keypad_build_keymap +EXPORT_SYMBOL drivers/input/sparse-keymap 0x2d5566f2 sparse_keymap_setup +EXPORT_SYMBOL drivers/input/sparse-keymap 0x522bd9f8 sparse_keymap_report_entry +EXPORT_SYMBOL drivers/input/sparse-keymap 0x895061d2 sparse_keymap_entry_from_scancode +EXPORT_SYMBOL drivers/input/sparse-keymap 0x8d5cb4bd sparse_keymap_entry_from_keycode +EXPORT_SYMBOL drivers/input/sparse-keymap 0xa23598c3 sparse_keymap_report_event +EXPORT_SYMBOL drivers/iommu/amd/iommu_v2 0x1034aba8 amd_iommu_bind_pasid +EXPORT_SYMBOL drivers/iommu/amd/iommu_v2 0x12ee7673 amd_iommu_unbind_pasid +EXPORT_SYMBOL drivers/iommu/amd/iommu_v2 0x22781213 amd_iommu_free_device +EXPORT_SYMBOL drivers/iommu/amd/iommu_v2 0xbeee017d amd_iommu_init_device +EXPORT_SYMBOL drivers/iommu/amd/iommu_v2 0xd1c44350 amd_iommu_set_invalidate_ctx_cb +EXPORT_SYMBOL drivers/iommu/amd/iommu_v2 0xf8b024f0 amd_iommu_set_invalid_ppr_cb +EXPORT_SYMBOL drivers/leds/leds-ti-lmu-common 0x54a12ec4 ti_lmu_common_set_ramp +EXPORT_SYMBOL drivers/leds/leds-ti-lmu-common 0x58f8e8e9 ti_lmu_common_get_ramp_params +EXPORT_SYMBOL drivers/leds/leds-ti-lmu-common 0x618c6173 ti_lmu_common_get_brt_res +EXPORT_SYMBOL drivers/leds/leds-ti-lmu-common 0xced72aae ti_lmu_common_set_brightness +EXPORT_SYMBOL drivers/md/dm-log 0x1471c50c dm_dirty_log_type_register +EXPORT_SYMBOL drivers/md/dm-log 0x1c1dce7c dm_dirty_log_type_unregister +EXPORT_SYMBOL drivers/md/dm-log 0x3217a2ea dm_dirty_log_destroy +EXPORT_SYMBOL drivers/md/dm-log 0xe0ded756 dm_dirty_log_create +EXPORT_SYMBOL drivers/md/dm-snapshot 0x3df110e5 dm_exception_store_create +EXPORT_SYMBOL drivers/md/dm-snapshot 0x4fbc4dbf dm_exception_store_type_unregister +EXPORT_SYMBOL drivers/md/dm-snapshot 0x85adba0e dm_exception_store_destroy +EXPORT_SYMBOL drivers/md/dm-snapshot 0xd60a988d dm_snap_origin +EXPORT_SYMBOL drivers/md/dm-snapshot 0xdbb4b3aa dm_snap_cow +EXPORT_SYMBOL drivers/md/dm-snapshot 0xdeb4e39f dm_exception_store_type_register +EXPORT_SYMBOL drivers/md/raid456 0x8125883b raid5_set_cache_size +EXPORT_SYMBOL drivers/md/raid456 0xe30748f6 r5c_journal_mode_set +EXPORT_SYMBOL drivers/media/common/videobuf2/videobuf2-common 0xc6b2a453 vb2_verify_memory_type +EXPORT_SYMBOL drivers/media/common/videobuf2/videobuf2-common 0xea3b0e49 vb2_buffer_in_use +EXPORT_SYMBOL drivers/media/common/videobuf2/videobuf2-memops 0xa21fa765 vb2_create_framevec +EXPORT_SYMBOL drivers/media/common/videobuf2/videobuf2-memops 0xccd197c7 vb2_destroy_framevec +EXPORT_SYMBOL drivers/media/common/videobuf2/videobuf2-v4l2 0xb20ed8bd vb2_querybuf +EXPORT_SYMBOL drivers/media/rc/rc-core 0x2ad91f6e ir_raw_gen_pl +EXPORT_SYMBOL drivers/media/rc/rc-core 0x3131b773 ir_raw_encode_scancode +EXPORT_SYMBOL drivers/media/rc/rc-core 0x4725eda1 ir_raw_encode_carrier +EXPORT_SYMBOL drivers/media/rc/rc-core 0x78b6fda1 ir_raw_handler_register +EXPORT_SYMBOL drivers/media/rc/rc-core 0x7cf52901 ir_raw_gen_manchester +EXPORT_SYMBOL drivers/media/rc/rc-core 0x9a51dfba ir_raw_handler_unregister +EXPORT_SYMBOL drivers/media/rc/rc-core 0x9e12e343 ir_raw_gen_pd +EXPORT_SYMBOL drivers/media/v4l2-core/v4l2-mem2mem 0x1abcc21e v4l2_m2m_get_vq +EXPORT_SYMBOL drivers/media/v4l2-core/v4l2-mem2mem 0x459e133f v4l2_m2m_get_curr_priv +EXPORT_SYMBOL drivers/media/v4l2-core/v4l2-mem2mem 0x496fc76c v4l2_m2m_job_finish +EXPORT_SYMBOL drivers/media/v4l2-core/v4l2-mem2mem 0xb3036e08 v4l2_m2m_mmap +EXPORT_SYMBOL drivers/media/v4l2-core/v4l2-mem2mem 0xf9adc588 v4l2_m2m_buf_done_and_job_finish +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x023787f9 __v4l2_ctrl_grab +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 0x0a5c5862 v4l2_async_notifier_register +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x123959a1 v4l2_type_names +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x12afba1b v4l2_async_notifier_init +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x12cec4c5 v4l2_ctrl_find +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x1333dcc0 v4l2_async_unregister_subdev +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x15d4ced7 video_device_release +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x16244fe5 v4l2_prio_check +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x18242f37 v4l2_g_ext_ctrls +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x1a8c0fa1 v4l2_clk_unregister +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x1ec02e2a v4l2_ctrl_poll +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x2342f1ae v4l2_prio_open +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x2675cab9 v4l2_ctrl_handler_init_class +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x28b12cc9 v4l2_format_info +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x2be0c205 v4l2_ctrl_log_status +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x315de2cf v4l2_ctrl_get_menu +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x325858f4 v4l2_ctrl_request_complete +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x32d43420 v4l2_ctrl_get_name +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x374c6e60 video_ioctl2 +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x3a7fadcf v4l2_clk_set_rate +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x3abc1bd9 video_devdata +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x3adbd595 v4l2_field_names +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x3bdd0f94 v4l2_prio_change +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x3f0f67f3 v4l2_async_notifier_unregister +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x41afbe48 video_unregister_device +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x4d4d61b3 v4l2_s_ext_ctrls +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x4d759f1a v4l2_clk_put +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x544ca13e v4l2_ctrl_handler_setup +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x55324778 v4l2_ctrl_subdev_log_status +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x555bbf39 v4l2_clk_disable +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x558c631c v4l2_ctrl_new_custom +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x5d671ac4 v4l2_ctrl_subscribe_event +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x5f954b6b v4l2_querymenu +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x60227a7f v4l2_ctrl_new_int_menu +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x61c63b12 v4l2_ctrl_new_fwnode_properties +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x61f6de2c v4l2_ctrl_handler_log_status +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x639c59c5 video_device_alloc +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x63dfa55c v4l2_clk_get_rate +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x63e9c8c5 v4l2_ctrl_add_handler +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x64e10451 v4l2_ctrl_g_ctrl +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x68f6e560 video_device_release_empty +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x6c40e9ec v4l2_ctrl_new_std_menu +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x6c45721a v4l2_subdev_init +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x71178ed8 v4l2_ctrl_request_setup +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x72d7708d __video_register_device +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x7f1088e6 v4l2_ctrl_handler_free +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x7fcb2f57 __v4l2_ctrl_s_ctrl_int64 +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x7ffe6cc6 v4l2_g_ctrl +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x8106095a v4l2_prio_max +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x8280534c v4l2_ctrl_fill +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x858acd67 v4l2_ctrl_cluster +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x89e3897d v4l2_ctrl_query_fill +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x8b1fec93 __v4l2_ctrl_modify_range +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x91021276 v4l2_s_ctrl +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x9cd4c32b v4l2_async_subdev_notifier_register +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xa2b855d0 v4l2_ctrl_radio_filter +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xa7abe321 v4l2_try_ext_ctrls +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xaef87723 __v4l2_clk_register_fixed +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xb77b0159 v4l2_prio_init +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xb7aba6c1 v4l2_ctrl_auto_cluster +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xb895e15c v4l2_clk_unregister_fixed +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xbb0649b4 v4l2_queryctrl +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xbc5671dc v4l_printk_ioctl +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xc1109b11 v4l2_clk_enable +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xc357dd8c v4l2_query_ext_ctrl +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xc39e3e14 v4l2_ctrl_g_ctrl_int64 +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xc5f8d0ad v4l2_ctrl_subdev_subscribe_event +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xcda04a5b v4l2_prio_close +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xce398c57 v4l2_ctrl_new_std +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xd16d9c01 v4l2_ctrl_get_int_menu +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xd22d18de v4l2_ctrl_sub_ev_ops +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xd825b6ea v4l2_ctrl_activate +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xd90da888 v4l2_ctrl_new_std_menu_items +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xdb603dcc v4l2_ctrl_notify +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xde37e8f4 v4l2_clk_register +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xe2b92059 v4l2_video_std_construct +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xe2d8c1da v4l2_async_register_subdev +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xee5f515c v4l2_ctrl_new_std_compound +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xf04dd21f __v4l2_ctrl_s_ctrl_string +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xf3251e7b v4l2_norm_to_name +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xf35f5998 v4l2_subdev_call_wrappers +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xf50fecbc v4l2_ctrl_replace +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xf69ac1a7 v4l2_clk_get +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xfbf516e0 __v4l2_ctrl_s_ctrl +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xfbfb6bfa __v4l2_ctrl_s_ctrl_compound +EXPORT_SYMBOL drivers/message/fusion/mptbase 0x209e40ed mpt_raid_phys_disk_pg1 +EXPORT_SYMBOL drivers/message/fusion/mptbase 0x322771f0 mpt_get_msg_frame +EXPORT_SYMBOL drivers/message/fusion/mptbase 0x3b2f9004 mpt_raid_phys_disk_pg0 +EXPORT_SYMBOL drivers/message/fusion/mptbase 0x4379900b mpt_HardResetHandler +EXPORT_SYMBOL drivers/message/fusion/mptbase 0x43bc287f mpt_config +EXPORT_SYMBOL drivers/message/fusion/mptbase 0x502108d0 mpt_fwfault_debug +EXPORT_SYMBOL drivers/message/fusion/mptbase 0x5682ad46 mpt_attach +EXPORT_SYMBOL drivers/message/fusion/mptbase 0x610b257e mpt_reset_deregister +EXPORT_SYMBOL drivers/message/fusion/mptbase 0x74a0134a mpt_device_driver_deregister +EXPORT_SYMBOL drivers/message/fusion/mptbase 0x92627e70 mpt_resume +EXPORT_SYMBOL drivers/message/fusion/mptbase 0x97dc4cc9 mpt_detach +EXPORT_SYMBOL drivers/message/fusion/mptbase 0x981efe92 mpt_deregister +EXPORT_SYMBOL drivers/message/fusion/mptbase 0x9e909a4e mpt_verify_adapter +EXPORT_SYMBOL drivers/message/fusion/mptbase 0xa40af20f mpt_suspend +EXPORT_SYMBOL drivers/message/fusion/mptbase 0xa5348bef mptbase_sas_persist_operation +EXPORT_SYMBOL drivers/message/fusion/mptbase 0xb3478534 mpt_reset_register +EXPORT_SYMBOL drivers/message/fusion/mptbase 0xb3bc3d74 mpt_clear_taskmgmt_in_progress_flag +EXPORT_SYMBOL drivers/message/fusion/mptbase 0xb4866bb5 mpt_device_driver_register +EXPORT_SYMBOL drivers/message/fusion/mptbase 0xc4a3b443 mpt_free_msg_frame +EXPORT_SYMBOL drivers/message/fusion/mptbase 0xc804abd0 mpt_findImVolumes +EXPORT_SYMBOL drivers/message/fusion/mptbase 0xc99be17e mpt_GetIocState +EXPORT_SYMBOL drivers/message/fusion/mptbase 0xcbe9e977 mpt_halt_firmware +EXPORT_SYMBOL drivers/message/fusion/mptbase 0xd0e4a0b7 mpt_put_msg_frame_hi_pri +EXPORT_SYMBOL drivers/message/fusion/mptbase 0xd39aafa0 mpt_put_msg_frame +EXPORT_SYMBOL drivers/message/fusion/mptbase 0xdd805159 ioc_list +EXPORT_SYMBOL drivers/message/fusion/mptbase 0xe0de54c8 mpt_alloc_fw_memory +EXPORT_SYMBOL drivers/message/fusion/mptbase 0xe6c1e126 mpt_event_deregister +EXPORT_SYMBOL drivers/message/fusion/mptbase 0xe7655403 mpt_free_fw_memory +EXPORT_SYMBOL drivers/message/fusion/mptbase 0xec54f8e0 mpt_print_ioc_summary +EXPORT_SYMBOL drivers/message/fusion/mptbase 0xf1b4c062 mpt_set_taskmgmt_in_progress_flag +EXPORT_SYMBOL drivers/message/fusion/mptbase 0xf1d2e915 mpt_raid_phys_disk_get_num_paths +EXPORT_SYMBOL drivers/message/fusion/mptbase 0xf1fc044a mpt_send_handshake_request +EXPORT_SYMBOL drivers/message/fusion/mptbase 0xf6392ff7 mpt_Soft_Hard_ResetHandler +EXPORT_SYMBOL drivers/message/fusion/mptbase 0xfaf0f132 mpt_event_register +EXPORT_SYMBOL drivers/message/fusion/mptbase 0xfe31f235 mpt_register +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0x00ccf628 mptscsih_taskmgmt_response_code +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0x103077a4 mptscsih_resume +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0x1ec89ea5 mptscsih_remove +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0x388330fc mptscsih_dev_reset +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0x3e9d3d0e mptscsih_host_attrs +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0x44289d70 mptscsih_slave_configure +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0x6424179a mptscsih_scandv_complete +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0x70d6e7a9 mptscsih_abort +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0x858636a9 mptscsih_get_scsi_lookup +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0x880584ce mptscsih_is_phys_disk +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0x8d7402c3 mptscsih_show_info +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0x9404c1c9 mptscsih_taskmgmt_complete +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0x94be131b mptscsih_suspend +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0x966d5d96 mptscsih_shutdown +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0x976d5e03 mptscsih_host_reset +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0x98a9ac9f mptscsih_info +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0x9c378183 mptscsih_event_process +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0xa49a788f mptscsih_io_done +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0xaf751819 mptscsih_change_queue_depth +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0xbb286995 mptscsih_ioc_reset +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0xdf9cbd4e mptscsih_qcmd +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0xe5962d59 mptscsih_bios_param +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0xe87d8534 mptscsih_bus_reset +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0xe9b88842 mptscsih_slave_destroy +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0xf082c3d5 mptscsih_flush_running_cmds +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0xf22e073e mptscsih_IssueTaskMgmt +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0xf769985f mptscsih_raid_id_to_num +EXPORT_SYMBOL drivers/mfd/axp20x 0xd49a3419 axp20x_device_probe +EXPORT_SYMBOL drivers/mfd/axp20x 0xd8216e11 axp20x_device_remove +EXPORT_SYMBOL drivers/mfd/axp20x 0xee5e584a axp20x_match_device +EXPORT_SYMBOL drivers/mfd/htc-pasic3 0x80498b05 pasic3_write_register +EXPORT_SYMBOL drivers/mfd/htc-pasic3 0x93cecb1c pasic3_read_register +EXPORT_SYMBOL drivers/mfd/mc13xxx-core 0x21b7ba22 mc13xxx_irq_request +EXPORT_SYMBOL drivers/mfd/mc13xxx-core 0x5314b759 mc13xxx_irq_status +EXPORT_SYMBOL drivers/mfd/mc13xxx-core 0x532c96ad mc13xxx_reg_rmw +EXPORT_SYMBOL drivers/mfd/mc13xxx-core 0x625be049 mc13xxx_reg_write +EXPORT_SYMBOL drivers/mfd/mc13xxx-core 0x6d867ef8 mc13xxx_irq_mask +EXPORT_SYMBOL drivers/mfd/mc13xxx-core 0x854b42d0 mc13xxx_irq_unmask +EXPORT_SYMBOL drivers/mfd/mc13xxx-core 0x89f095b0 mc13xxx_get_flags +EXPORT_SYMBOL drivers/mfd/mc13xxx-core 0xdb677b8a mc13xxx_reg_read +EXPORT_SYMBOL drivers/mfd/mc13xxx-core 0xe8d10c0b mc13xxx_lock +EXPORT_SYMBOL drivers/mfd/mc13xxx-core 0xf8f2acdd mc13xxx_irq_free +EXPORT_SYMBOL drivers/mfd/mc13xxx-core 0xfa2c609e mc13xxx_unlock +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 0x7dccf894 wm1811_regmap_config +EXPORT_SYMBOL drivers/mfd/wm8994 0xb4695d4e wm8994_irq_init +EXPORT_SYMBOL drivers/mfd/wm8994 0xd0944120 wm8994_regmap_config +EXPORT_SYMBOL drivers/mfd/wm8994 0xe2aefab9 wm8958_regmap_config +EXPORT_SYMBOL drivers/mfd/wm8994 0xea37d7da wm8994_irq_exit +EXPORT_SYMBOL drivers/mfd/wm8994 0xff9661ef wm8994_base_regmap_config +EXPORT_SYMBOL drivers/misc/mei/mei 0x1545cfd0 __tracepoint_mei_reg_read +EXPORT_SYMBOL drivers/misc/mei/mei 0xa5bff49d __tracepoint_mei_pci_cfg_read +EXPORT_SYMBOL drivers/misc/mei/mei 0xb93bb2a0 __tracepoint_mei_reg_write +EXPORT_SYMBOL drivers/misc/tifm_core 0x0ffb277f tifm_queue_work +EXPORT_SYMBOL drivers/misc/tifm_core 0x144fa64e tifm_add_adapter +EXPORT_SYMBOL drivers/misc/tifm_core 0x161954cc tifm_unregister_driver +EXPORT_SYMBOL drivers/misc/tifm_core 0x20a8f292 tifm_has_ms_pif +EXPORT_SYMBOL drivers/misc/tifm_core 0x4de5594b tifm_unmap_sg +EXPORT_SYMBOL drivers/misc/tifm_core 0x690173a7 tifm_map_sg +EXPORT_SYMBOL drivers/misc/tifm_core 0x7506785c tifm_free_adapter +EXPORT_SYMBOL drivers/misc/tifm_core 0x78c314ff tifm_alloc_device +EXPORT_SYMBOL drivers/misc/tifm_core 0x8791a0f6 tifm_eject +EXPORT_SYMBOL drivers/misc/tifm_core 0xb9adb61a tifm_register_driver +EXPORT_SYMBOL drivers/misc/tifm_core 0xbae8ba87 tifm_free_device +EXPORT_SYMBOL drivers/misc/tifm_core 0xf72c7762 tifm_alloc_adapter +EXPORT_SYMBOL drivers/misc/tifm_core 0xf9cd3cca tifm_remove_adapter +EXPORT_SYMBOL drivers/net/arcnet/arcnet 0x0594f2c7 arcnet_timeout +EXPORT_SYMBOL drivers/net/arcnet/arcnet 0x1d958a00 arc_proto_default +EXPORT_SYMBOL drivers/net/arcnet/arcnet 0x2371d830 alloc_arcdev +EXPORT_SYMBOL drivers/net/arcnet/arcnet 0x369a39a7 arcnet_close +EXPORT_SYMBOL drivers/net/arcnet/arcnet 0x60c862e7 arcnet_open +EXPORT_SYMBOL drivers/net/arcnet/arcnet 0x6534792a arcnet_debug +EXPORT_SYMBOL drivers/net/arcnet/arcnet 0x72d9f1c5 arcnet_send_packet +EXPORT_SYMBOL drivers/net/arcnet/arcnet 0xabdf8092 arc_proto_map +EXPORT_SYMBOL drivers/net/arcnet/arcnet 0xcb9621ac arc_bcast_proto +EXPORT_SYMBOL drivers/net/arcnet/arcnet 0xec346a8b arc_raw_proto +EXPORT_SYMBOL drivers/net/arcnet/arcnet 0xecb730b0 arcnet_interrupt +EXPORT_SYMBOL drivers/net/arcnet/arcnet 0xff3d2094 arcnet_unregister_proto +EXPORT_SYMBOL drivers/net/arcnet/com20020 0x0f3feaab com20020_netdev_ops +EXPORT_SYMBOL drivers/net/arcnet/com20020 0x604e40c4 com20020_check +EXPORT_SYMBOL drivers/net/arcnet/com20020 0xb811acbf com20020_found +EXPORT_SYMBOL drivers/net/dsa/b53/b53_common 0x04d7a836 b53_get_ethtool_phy_stats +EXPORT_SYMBOL drivers/net/dsa/b53/b53_common 0x05425829 b53_mirror_del +EXPORT_SYMBOL drivers/net/dsa/b53/b53_common 0x105cc996 b53_vlan_filtering +EXPORT_SYMBOL drivers/net/dsa/b53/b53_common 0x1dcadddb b53_br_egress_floods +EXPORT_SYMBOL drivers/net/dsa/b53/b53_common 0x2836d8f9 b53_mdb_prepare +EXPORT_SYMBOL drivers/net/dsa/b53/b53_common 0x2b4d2179 b53_fdb_del +EXPORT_SYMBOL drivers/net/dsa/b53/b53_common 0x2ebff7d8 b53_get_strings +EXPORT_SYMBOL drivers/net/dsa/b53/b53_common 0x48105919 b53_enable_port +EXPORT_SYMBOL drivers/net/dsa/b53/b53_common 0x4aedf999 b53_phylink_mac_link_up +EXPORT_SYMBOL drivers/net/dsa/b53/b53_common 0x4d07858a b53_imp_vlan_setup +EXPORT_SYMBOL drivers/net/dsa/b53/b53_common 0x5848ef9f b53_switch_register +EXPORT_SYMBOL drivers/net/dsa/b53/b53_common 0x63669156 b53_br_join +EXPORT_SYMBOL drivers/net/dsa/b53/b53_common 0x734df88f b53_vlan_del +EXPORT_SYMBOL drivers/net/dsa/b53/b53_common 0x821f05d0 b53_phylink_mac_config +EXPORT_SYMBOL drivers/net/dsa/b53/b53_common 0x85dba721 b53_phylink_validate +EXPORT_SYMBOL drivers/net/dsa/b53/b53_common 0x87ce77d3 b53_get_sset_count +EXPORT_SYMBOL drivers/net/dsa/b53/b53_common 0x8b1a8c4e b53_br_fast_age +EXPORT_SYMBOL drivers/net/dsa/b53/b53_common 0x91aed7ae b53_phylink_mac_link_down +EXPORT_SYMBOL drivers/net/dsa/b53/b53_common 0x920cf6a0 b53_vlan_add +EXPORT_SYMBOL drivers/net/dsa/b53/b53_common 0x9413dba6 b53_disable_port +EXPORT_SYMBOL drivers/net/dsa/b53/b53_common 0x9d1ff5dd b53_phylink_mac_an_restart +EXPORT_SYMBOL drivers/net/dsa/b53/b53_common 0x9e4f4e02 b53_mirror_add +EXPORT_SYMBOL drivers/net/dsa/b53/b53_common 0xac00fa29 b53_br_leave +EXPORT_SYMBOL drivers/net/dsa/b53/b53_common 0xb4c7eede b53_get_tag_protocol +EXPORT_SYMBOL drivers/net/dsa/b53/b53_common 0xb61f5827 b53_fdb_add +EXPORT_SYMBOL drivers/net/dsa/b53/b53_common 0xb7570402 b53_switch_detect +EXPORT_SYMBOL drivers/net/dsa/b53/b53_common 0xb9fa8f95 b53_get_mac_eee +EXPORT_SYMBOL drivers/net/dsa/b53/b53_common 0xc13f2e82 b53_phylink_mac_link_state +EXPORT_SYMBOL drivers/net/dsa/b53/b53_common 0xc1b99822 b53_fdb_dump +EXPORT_SYMBOL drivers/net/dsa/b53/b53_common 0xc20a459e b53_eee_enable_set +EXPORT_SYMBOL drivers/net/dsa/b53/b53_common 0xc93d9d56 b53_eee_init +EXPORT_SYMBOL drivers/net/dsa/b53/b53_common 0xc9567167 b53_port_event +EXPORT_SYMBOL drivers/net/dsa/b53/b53_common 0xce0c5e8f b53_vlan_prepare +EXPORT_SYMBOL drivers/net/dsa/b53/b53_common 0xcf0bb13d b53_mdb_add +EXPORT_SYMBOL drivers/net/dsa/b53/b53_common 0xdc15d1fb b53_brcm_hdr_setup +EXPORT_SYMBOL drivers/net/dsa/b53/b53_common 0xdf42c416 b53_set_mac_eee +EXPORT_SYMBOL drivers/net/dsa/b53/b53_common 0xe0042a33 b53_get_ethtool_stats +EXPORT_SYMBOL drivers/net/dsa/b53/b53_common 0xeabd3dc4 b53_switch_alloc +EXPORT_SYMBOL drivers/net/dsa/b53/b53_common 0xf1c78f30 b53_br_set_stp_state +EXPORT_SYMBOL drivers/net/dsa/b53/b53_common 0xf83265f0 b53_mdb_del +EXPORT_SYMBOL drivers/net/dsa/b53/b53_common 0xfb13c6f3 b53_configure_vlan +EXPORT_SYMBOL drivers/net/dsa/b53/b53_serdes 0x0164f9ff b53_serdes_link_state +EXPORT_SYMBOL drivers/net/dsa/b53/b53_serdes 0x231c0c84 b53_serdes_link_set +EXPORT_SYMBOL drivers/net/dsa/b53/b53_serdes 0x2fede735 b53_serdes_an_restart +EXPORT_SYMBOL drivers/net/dsa/b53/b53_serdes 0x3b94ea5f b53_serdes_config +EXPORT_SYMBOL drivers/net/dsa/b53/b53_serdes 0xb1f8309d b53_serdes_phylink_validate +EXPORT_SYMBOL drivers/net/dsa/b53/b53_serdes 0xc62b400d b53_serdes_init +EXPORT_SYMBOL drivers/net/dsa/lan9303-core 0x569a34a9 lan9303_probe +EXPORT_SYMBOL drivers/net/dsa/lan9303-core 0xada83f40 lan9303_register_set +EXPORT_SYMBOL drivers/net/dsa/lan9303-core 0xded91eaa lan9303_remove +EXPORT_SYMBOL drivers/net/dsa/microchip/ksz8795 0x90208079 ksz8795_switch_register +EXPORT_SYMBOL drivers/net/dsa/microchip/ksz9477 0x6787f031 ksz9477_switch_register +EXPORT_SYMBOL drivers/net/dsa/microchip/ksz_common 0x55b42e11 ksz_switch_alloc +EXPORT_SYMBOL drivers/net/dsa/microchip/ksz_common 0x6cee398c ksz_switch_register +EXPORT_SYMBOL drivers/net/dsa/microchip/ksz_common 0xabe79292 ksz_switch_remove +EXPORT_SYMBOL drivers/net/dsa/vitesse-vsc73xx-core 0x62c4ccf8 vsc73xx_remove +EXPORT_SYMBOL drivers/net/dsa/vitesse-vsc73xx-core 0x99d242fe vsc73xx_is_addr_valid +EXPORT_SYMBOL drivers/net/dsa/vitesse-vsc73xx-core 0xf9581af2 vsc73xx_probe +EXPORT_SYMBOL drivers/net/ethernet/broadcom/cnic 0x409704e1 cnic_register_driver +EXPORT_SYMBOL drivers/net/ethernet/broadcom/cnic 0x636af174 cnic_unregister_driver +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb3/cxgb3 0x10652076 cxgb3_remove_tid +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb3/cxgb3 0x27f22928 t3_l2t_send_event +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb3/cxgb3 0x34fdd477 cxgb3_free_stid +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb3/cxgb3 0x3c729141 cxgb3_insert_tid +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb3/cxgb3 0x41e98777 t3_l2t_send_slow +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb3/cxgb3 0x5ede22c3 cxgb3_register_client +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb3/cxgb3 0x6fcf6125 cxgb3_unregister_client +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb3/cxgb3 0x9456ca8a cxgb3_ofld_send +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb3/cxgb3 0x985759fa cxgb3_alloc_atid +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb3/cxgb3 0xa1946c5c t3_l2t_get +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb3/cxgb3 0xa492cf68 dev2t3cdev +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb3/cxgb3 0xbe3465bc t3_l2e_free +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb3/cxgb3 0xdf128281 cxgb3_queue_tid_release +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb3/cxgb3 0xf3e4c973 t3_register_cpl_handler +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb3/cxgb3 0xf65f3d2c cxgb3_free_atid +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb3/cxgb3 0xfcdaa86d cxgb3_alloc_stid +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0x082f1837 cxgb4_l2t_send +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0x09b956a9 cxgb4_get_tcp_stats +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0x0b236077 cxgb4_select_ntuple +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0x0fcff92f cxgb4_port_chan +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0x110c19fd cxgb4_remove_server +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0x1818248c cxgb4_immdata_send +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0x18bfc77a cxgb4_port_e2cchan +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0x1b0f5996 cxgb4_port_idx +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0x3a790946 cxgb4_get_srq_entry +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0x40655c44 cxgb4_dbfifo_count +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0x43822ec1 cxgb4_check_l2t_valid +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0x442ff3e2 cxgb4_free_atid +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0x443ca36b cxgb4_crypto_send +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0x4ed564b6 cxgb4_flush_eq_cache +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0x4fbb0b2a cxgb4_pktgl_to_skb +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0x50ee5c07 cxgb4_best_aligned_mtu +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0x52f9441a cxgb4_create_server_filter +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0x53f8c94f cxgb4_alloc_atid +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0x5ab75117 cxgb4_ofld_send +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0x60727205 cxgb4_remove_server_filter +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0x61c75b1c cxgb4_sync_txq_pidx +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0x676a11a9 cxgb4_unregister_uld +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0x7b29fc34 cxgb4_alloc_sftid +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0x8fdf6ea9 cxgb4_register_uld +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0x91453f1b cxgb4_l2t_alloc_switching +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0x9b807eb3 cxgb4_read_tpte +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0x9c8d0b42 cxgb4_map_skb +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0xa1550ed0 cxgb4_create_server +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0xa161bad7 cxgb4_clip_get +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0xa5cc7d46 cxgb4_l2t_release +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0xa682e7ca cxgb4_create_server6 +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0xa8db193f cxgb4_smt_release +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0xae8813e6 cxgb4_l2t_get +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0xafb1f294 cxgb4_alloc_stid +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0xafdb8260 cxgb4_reclaim_completed_tx +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0xb26410a2 cxgb4_update_root_dev_clip +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0xb4716900 cxgb4_read_sge_timestamp +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0xb6239238 cxgb4_free_stid +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0xba5b411e cxgb4_bar2_sge_qregs +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0xbf54dbd4 t4_cleanup_clip_tbl +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0xcaa5157b cxgb4_ring_tx_db +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0xcd56cb7f cxgb4_clip_release +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0xd1f13d26 cxgb4_inline_tx_skb +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0xd69a0294 cxgb4_best_mtu +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0xd7357db8 cxgb4_remove_tid +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0xe7262791 cxgb4_write_sgl +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0xe9a86912 cxgb4_port_viid +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0xefe50c0d cxgb4_iscsi_init +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0xf43bdfe8 cxgb4_smt_alloc_switching +EXPORT_SYMBOL drivers/net/ethernet/cisco/enic/enic 0x12810b1e vnic_dev_register +EXPORT_SYMBOL drivers/net/ethernet/cisco/enic/enic 0x73b6cd7a vnic_dev_unregister +EXPORT_SYMBOL drivers/net/ethernet/cisco/enic/enic 0x866c4adc vnic_dev_get_pdev +EXPORT_SYMBOL drivers/net/ethernet/cisco/enic/enic 0x9e0ca43a vnic_dev_get_res +EXPORT_SYMBOL drivers/net/ethernet/cisco/enic/enic 0xc5bbe3ad vnic_dev_get_res_count +EXPORT_SYMBOL drivers/net/ethernet/cisco/enic/enic 0xc9f567bf 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 0xa434c4a2 be_roce_register_driver +EXPORT_SYMBOL drivers/net/ethernet/emulex/benet/be2net 0xf354d21e be_roce_unregister_driver +EXPORT_SYMBOL drivers/net/ethernet/intel/i40e/i40e 0x95435a55 i40e_unregister_client +EXPORT_SYMBOL drivers/net/ethernet/intel/i40e/i40e 0xbdc627c7 i40e_register_client +EXPORT_SYMBOL drivers/net/ethernet/intel/iavf/iavf 0xc6bf2a9a iavf_register_client +EXPORT_SYMBOL drivers/net/ethernet/intel/iavf/iavf 0xfab58afd iavf_unregister_client +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x01d0f66e mlx4_test_async +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x02007591 mlx4_SET_PORT_VXLAN +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x022d0f54 mlx4_SET_VPORT_QOS_set +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x0668bed1 mlx4_ALLOCATE_VPP_set +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x0d0d7bb7 set_phv_bit +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x0f88657e mlx4_SET_PORT_user_mtu +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x16bedc83 mlx4_eq_get_irq +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x1c35061b mlx4_get_slave_node_guid +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x20f91b44 mlx4_get_is_vlan_offload_disabled +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x2603ecfa mlx4_SET_VPORT_QOS_get +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x28a368f8 mlx4_get_parav_qkey +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x2cab2f5b mlx4_SET_PORT_SCHEDULER +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x2d5c8cfd get_phv_bit +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x3628045d mlx4_SET_PORT_BEACON +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x3e735a39 mlx4_get_roce_gid_from_slave +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x410d8822 mlx4_query_diag_counters +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x417c034f set_and_calc_slave_port_state +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x4a3c7c61 mlx4_assign_eq +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x4c26be0e mlx4_gen_port_state_change_eqe +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x4d3398aa mlx4_get_slave_pkey_gid_tbl_len +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x54c27406 mlx4_get_cpu_rmap +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x565ef25f mlx4_is_eq_vector_valid +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x65386fa6 mlx4_SET_MCAST_FLTR +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x6ce6686f mlx4_ALLOCATE_VPP_get +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x7e0ae9d9 mlx4_SET_PORT_fcs_check +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 0x826093bd mlx4_max_tc +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x838ce8df mlx4_SET_PORT_user_mac +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x8d77b774 mlx4_gen_guid_change_eqe +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x8fbc24e2 mlx4_tunnel_steer_add +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x92e8dba5 mlx4_get_slave_from_roce_gid +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x942c1014 mlx4_release_eq +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xa3e40019 mlx4_gen_pkey_eqe +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xa4ca5b42 mlx4_is_eq_shared +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xa589f6ba mlx4_put_slave_node_guid +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xbbe790d6 mlx4_SET_PORT_PRIO2TC +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xc6180c4b mlx4_gen_slaves_port_mgt_ev +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xcedbf39d mlx4_test_interrupt +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xd2013374 mlx4_is_slave_active +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xd5b8c2d3 mlx4_sync_pkey_table +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xd5d6baef mlx4_SET_PORT_qpn_calc +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xe854c88d mlx4_get_eqs_per_port +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xec16b657 mlx4_get_module_info +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xeee033f1 mlx4_SET_PORT_general +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xf785e804 mlx4_get_slave_port_state +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x003bdb2c mlx5_eswitch_vport_rep +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x03390fb9 mlx5_query_port_ib_proto_oper +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x05958797 mlx5_buf_alloc +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x06efc2e2 mlx5_packet_reformat_dealloc +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x07ccd017 mlx5_modify_header_dealloc +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x087d841c mlx5_put_uars_page +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x0e382779 mlx5_fpga_sbu_conn_destroy +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x0efc62a4 mlx5_core_query_vendor_id +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x0f10361b mlx5_register_interface +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x12041571 mlx5_core_modify_tis +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x1300ad69 mlx5_core_query_sq +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x161f6dd9 mlx5_core_destroy_rqt +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x16ae8727 mlx5_core_create_tis +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x1831c3fc mlx5_core_modify_cq_moderation +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x1835b6b8 mlx5_cmd_exec_polling +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x18738f53 mlx5_core_roce_gid_set +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x18ff516b mlx5_fs_add_rx_underlay_qpn +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x1e3eac2b mlx5_lag_get_roce_netdev +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x1e4c9620 mlx5_debugfs_root +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x22b12f26 mlx5_core_create_rqt +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x24057761 mlx5_core_create_rq +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x24ceda4c mlx5_eswitch_unregister_vport_reps +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x250f93f6 mlx5_notifier_unregister +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x275118cd mlx5_modify_header_alloc +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x27fa4d63 __tracepoint_mlx5_fs_del_fg +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x2a688b52 mlx5_qp_debugfs_init +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x2baf9978 mlx5_fc_query +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x2c93bf4c mlx5_eq_create_generic +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x310931a2 mlx5_cmd_cleanup +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x32705594 __tracepoint_mlx5_fs_del_rule +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x37651b47 __tracepoint_mlx5_fs_set_fte +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x377ce2db mlx5_qp_debugfs_cleanup +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x38b39e44 mlx5_eswitch_vport_match_metadata_enabled +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x3e960390 __tracepoint_mlx5_fw +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x3fb9179e mlx5_create_auto_grouped_flow_table +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x404e9627 mlx5_debug_qp_add +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x46150cf1 __tracepoint_mlx5_fs_del_ft +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x48662e81 mlx5_fpga_get_sbu_caps +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x48733b63 mlx5_core_destroy_rq +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x49859553 mlx5_notifier_register +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x4d397a1a mlx5_cmd_init_async_ctx +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x4fe33933 mlx5_core_create_psv +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x50c9e41e mlx5_lag_is_active +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x54b6bf72 mlx5_eswitch_uplink_get_proto_dev +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x56158db2 mlx5_core_destroy_cq +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x5827de66 mlx5_free_bfreg +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x5c7f343a mlx5_cmd_set_state +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x5e0a147e mlx5_fc_create +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x5e61b5db mlx5_core_dealloc_transport_domain +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x604ac5c5 mlx5_eq_update_ci +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x61363397 mlx5_packet_reformat_alloc +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 0x62b86338 mlx5_get_fdb_sub_ns +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x64c6c1ad mlx5_eq_disable +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x65481bbc mlx5_cmd_exec +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x65de88ce mlx5_eswitch_get_encap_mode +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x65ef1699 mlx5_eq_enable +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x678eb3f3 mlx5_core_detach_mcg +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x67977ef2 mlx5_rl_add_rate +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x67a1953a mlx5_rl_remove_rate +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x6b390ae6 mlx5_vector2eqn +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x6c258e40 mlx5_core_modify_cq +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x6c7f4950 mlx5_eswitch_get_vport_metadata_for_match +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x6c7fd4fb mlx5_comp_vectors_count +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x6ff54437 mlx5_core_modify_rq +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x714e71e4 mlx5_cmd_cleanup_async_ctx +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x75fb1b8f mlx5_core_query_cq +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x7623ee0b mlx5_get_flow_namespace +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x791efcd2 mlx5_eq_notifier_register +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x7b996a91 mlx5_eswitch_register_vport_reps +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x830724fe mlx5_core_modify_sq +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x83a418d2 mlx5_core_destroy_psv +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x8464d517 mlx5_unregister_interface +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x87a25e22 __tracepoint_mlx5_fs_add_rule +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x889b37bb mlx5_cmd_alloc_uar +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x8a52f16b mlx5_cmd_free_uar +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x8dde331d mlx5_lag_get_slave_port +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x8eeefaa0 __tracepoint_mlx5_fs_add_fg +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x8f0429a9 mlx5_fpga_mem_write +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x90e9cb3e mlx5_core_destroy_mkey +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x92e68811 mlx5_cmd_exec_cb +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x92ed2298 mlx5_rdma_rn_get_params +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x963efbb2 mlx5_core_destroy_tis +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x96eb2c99 mlx5_fc_id +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x9884865a mlx5_del_flow_rules +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x98ab7cc6 mlx5_destroy_flow_table +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x9a11ad67 mlx5_debug_qp_remove +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x9cee2032 mlx5_lag_is_sriov +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x9e6c36ce mlx5_eq_get_eqe +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xa5d35725 mlx5_core_query_mkey +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xa5dfdcad mlx5_cmd_init +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xaa607f16 mlx5_core_alloc_transport_domain +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xad78b1e0 mlx5_rl_is_in_range +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xad8ac5b1 mlx5_fs_remove_rx_underlay_qpn +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xae9ea383 __tracepoint_mlx5_fs_del_fte +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xaeabbcbe mlx5_fpga_sbu_conn_sendmsg +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xaf2032b8 mlx5_eq_destroy_generic +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xb00cb3f6 mlx5_lag_query_cong_counters +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xb339cdce mlx5_core_dealloc_pd +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xb471aedc mlx5_eswitch_get_proto_dev +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xb720abdb mlx5_eq_notifier_unregister +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xbbdee52e mlx5_core_create_cq +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xbc0bab9e mlx5_fpga_sbu_conn_create +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xbf4de61d mlx5_cmd_destroy_vport_lag +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xca0b5a67 mlx5_comp_irq_get_affinity_mask +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xcc0018aa mlx5_alloc_bfreg +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xcce9ea0b mlx5_rl_add_rate_raw +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xce1490e1 mlx5_lag_is_roce +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xce38dc66 mlx5_rl_remove_rate_raw +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xd1328b2d mlx5_core_create_mkey +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xd1c593e1 mlx5_eswitch_reg_c1_loopback_enabled +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xd53991b0 mlx5_eswitch_add_send_to_vport_rule +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xd5950f9a mlx5_cmd_create_vport_lag +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xddd0ba96 mlx5_add_flow_rules +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xde1809c8 mlx5_nic_vport_disable_roce +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xdec6fbda mlx5_get_uars_page +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xdfd461c8 mlx5_core_alloc_pd +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xef01bb32 __tracepoint_mlx5_fs_add_ft +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xf120e368 mlx5_create_lag_demux_flow_table +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xf358ff79 mlx5_core_attach_mcg +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xf4e11f13 mlx5_core_destroy_tir +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xf4fa0f53 mlx5_core_create_tir +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xf8921692 mlx5_fc_destroy +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xff52a990 mlx5_fpga_mem_read +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xfff2cda0 mlx5_core_query_rq +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxfw/mlxfw 0x6b595d08 mlxfw_firmware_flash +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0x013a596a mlxsw_core_driver_register +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0x02998acf mlxsw_afa_block_append_counter +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0x02db5c3f mlxsw_core_trap_state_set +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 0x07abcc0c mlxsw_afa_block_append_trap +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0x0ca34ccf mlxsw_core_max_ports +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0x0e2b5842 mlxsw_afa_block_append_vlan_modify +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0x0e81c09c mlxsw_afk_destroy +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0x13ad0a45 mlxsw_core_skb_transmit +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0x15801382 mlxsw_afk_key_info_put +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 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 0x27b6f344 mlxsw_core_port_eth_set +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0x2c68ced3 mlxsw_core_read_frc_h +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0x2decde87 mlxsw_core_fw_flash_start +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0x2f2c4887 mlxsw_afa_block_append_qos_switch_prio +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0x35ba2254 mlxsw_afk_values_add_u32 +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0x3f123442 mlxsw_core_kvd_sizes_get +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0x41055a45 mlxsw_core_event_listener_unregister +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0x41da900b mlxsw_env_get_module_eeprom +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 0x47fd6eee mlxsw_core_fw_flash_end +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0x484489a4 mlxsw_cmd_exec +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0x4a24ca55 mlxsw_afa_block_append_mirror +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0x4a6ed376 mlxsw_core_port_fini +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0x4d33c574 mlxsw_core_port_devlink_port_get +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0x58030066 mlxsw_core_driver_unregister +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0x5cf3dd79 mlxsw_core_bus_device_unregister +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0x5ff17b5c mlxsw_afa_block_destroy +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0x615ef5fc mlxsw_afa_block_append_qos_dscp +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 0x65e16da4 mlxsw_afk_key_info_get +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0x692ac04e mlxsw_afk_create +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0x71e1d813 mlxsw_core_port_clear +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0x73cf1d7a mlxsw_core_res_get +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0x749556a2 mlxsw_afk_key_info_subset +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0x76a65e3b mlxsw_core_port_init +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0x77768221 mlxsw_core_module_max_width +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0x77d83398 mlxsw_core_read_frc_l +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 0x858c30d0 mlxsw_afa_block_create +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0x8854d198 mlxsw_reg_write +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0x8863a4f7 mlxsw_core_bus_device_register +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0x8ba5fa7e mlxsw_core_lag_mapping_set +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0x902c3533 mlxsw_core_schedule_dw +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0x963cfb6a mlxsw_core_resources_query +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 0x9e41f494 mlxsw_afk_encode +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0xa3d0d2b6 mlxsw_afa_block_append_fwd +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0xa7765e88 mlxsw_reg_query +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0xa7ccb62a mlxsw_afa_block_append_qos_dsfield +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0xa7f8978d mlxsw_core_trap_unregister +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0xa9d85c42 mlxsw_core_ptp_transmitted +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0xb0717797 mlxsw_afa_block_append_fid_set +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0xb2f24677 mlxsw_core_res_valid +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0xb416b050 mlxsw_core_skb_receive +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0xb5e762fa mlxsw_afk_values_add_buf +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 0xba05b3b0 mlxsw_core_emad_string_tlv_enable +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0xbc222a8d mlxsw_afk_clear +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0xbe82d6cc mlxsw_env_get_module_info +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0xbfb7df3c mlxsw_core_driver_priv +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0xbfd01f33 mlxsw_core_port_ib_set +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0xc9c2e4cc mlxsw_core_lag_mapping_clear +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 0xcd9a40a4 mlxsw_afa_block_append_drop +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0xce3539c9 mlxsw_core_rx_listener_register +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0xd1a82f0b mlxsw_core_lag_mapping_get +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0xd252e62d mlxsw_core_skb_transmit_busy +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 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 0xdeb1dc2e mlxsw_afa_block_first_kvdl_index +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0xdeff4950 mlxsw_core_event_listener_register +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0xe16986dd mlxsw_afa_block_activity_get +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0xecab212a mlxsw_afa_cookie_lookup +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0xf2ca3bae mlxsw_core_res_query_enabled +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0xf4909bea mlxsw_core_port_type_get +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0xf4ee6852 mlxsw_core_rx_listener_unregister +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0xf7fbba9f mlxsw_afa_block_append_qos_ecn +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0xfb04852c mlxsw_afa_create +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0xfbf8e0dc mlxsw_core_trap_register +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0xff007c25 mlxsw_core_cpu_port_fini +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_i2c 0x98281a33 mlxsw_i2c_driver_register +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_i2c 0xbde57cd6 mlxsw_i2c_driver_unregister +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_pci 0x7e875251 mlxsw_pci_driver_unregister +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_pci 0x9957acc6 mlxsw_pci_driver_register +EXPORT_SYMBOL drivers/net/ethernet/mscc/mscc_ocelot_common 0x01f7aa66 ocelot_port_readl +EXPORT_SYMBOL drivers/net/ethernet/mscc/mscc_ocelot_common 0x0b150222 ocelot_netdevice_nb +EXPORT_SYMBOL drivers/net/ethernet/mscc/mscc_ocelot_common 0x0cacef6d ocelot_hwstamp_set +EXPORT_SYMBOL drivers/net/ethernet/mscc/mscc_ocelot_common 0x130d0223 ocelot_get_ethtool_stats +EXPORT_SYMBOL drivers/net/ethernet/mscc/mscc_ocelot_common 0x1ba7e6d9 ocelot_fdb_del +EXPORT_SYMBOL drivers/net/ethernet/mscc/mscc_ocelot_common 0x1f6d39c4 ocelot_adjust_link +EXPORT_SYMBOL drivers/net/ethernet/mscc/mscc_ocelot_common 0x20e6457e ocelot_ptp_settime64 +EXPORT_SYMBOL drivers/net/ethernet/mscc/mscc_ocelot_common 0x246cbb9f ocelot_vlan_add +EXPORT_SYMBOL drivers/net/ethernet/mscc/mscc_ocelot_common 0x2778b8a9 ocelot_port_writel +EXPORT_SYMBOL drivers/net/ethernet/mscc/mscc_ocelot_common 0x34100e35 ocelot_fdb_add +EXPORT_SYMBOL drivers/net/ethernet/mscc/mscc_ocelot_common 0x3485615c __ocelot_rmw_ix +EXPORT_SYMBOL drivers/net/ethernet/mscc/mscc_ocelot_common 0x3a7e7b42 ocelot_ptp_adjfine +EXPORT_SYMBOL drivers/net/ethernet/mscc/mscc_ocelot_common 0x4100cb08 ocelot_deinit_timestamp +EXPORT_SYMBOL drivers/net/ethernet/mscc/mscc_ocelot_common 0x4b1b78e3 ocelot_ptp_verify +EXPORT_SYMBOL drivers/net/ethernet/mscc/mscc_ocelot_common 0x50a2b3ae __ocelot_write_ix +EXPORT_SYMBOL drivers/net/ethernet/mscc/mscc_ocelot_common 0x511c9ea1 ocelot_ptp_enable +EXPORT_SYMBOL drivers/net/ethernet/mscc/mscc_ocelot_common 0x52dba7b0 ocelot_port_bridge_leave +EXPORT_SYMBOL drivers/net/ethernet/mscc/mscc_ocelot_common 0x540f744a ocelot_init +EXPORT_SYMBOL drivers/net/ethernet/mscc/mscc_ocelot_common 0x5e5a9a8f ocelot_get_txtstamp +EXPORT_SYMBOL drivers/net/ethernet/mscc/mscc_ocelot_common 0x6725a9eb __ocelot_read_ix +EXPORT_SYMBOL drivers/net/ethernet/mscc/mscc_ocelot_common 0x6a21497a ocelot_set_ageing_time +EXPORT_SYMBOL drivers/net/ethernet/mscc/mscc_ocelot_common 0x73dffd80 ocelot_regmap_init +EXPORT_SYMBOL drivers/net/ethernet/mscc/mscc_ocelot_common 0x754e4ecb ocelot_ptp_adjtime +EXPORT_SYMBOL drivers/net/ethernet/mscc/mscc_ocelot_common 0x7757b732 ocelot_hwstamp_get +EXPORT_SYMBOL drivers/net/ethernet/mscc/mscc_ocelot_common 0x7db68d88 ocelot_port_policer_del +EXPORT_SYMBOL drivers/net/ethernet/mscc/mscc_ocelot_common 0x81cd42be ocelot_init_timestamp +EXPORT_SYMBOL drivers/net/ethernet/mscc/mscc_ocelot_common 0x8464356a ocelot_port_disable +EXPORT_SYMBOL drivers/net/ethernet/mscc/mscc_ocelot_common 0x8ea4d9e6 ocelot_port_enable +EXPORT_SYMBOL drivers/net/ethernet/mscc/mscc_ocelot_common 0x910f2fef ocelot_get_max_mtu +EXPORT_SYMBOL drivers/net/ethernet/mscc/mscc_ocelot_common 0x973d852a ocelot_ptp_gettime64 +EXPORT_SYMBOL drivers/net/ethernet/mscc/mscc_ocelot_common 0x9e23f399 ocelot_port_add_txtstamp_skb +EXPORT_SYMBOL drivers/net/ethernet/mscc/mscc_ocelot_common 0xa10798bc ocelot_bridge_stp_state_set +EXPORT_SYMBOL drivers/net/ethernet/mscc/mscc_ocelot_common 0xa1867a98 ocelot_regfields_init +EXPORT_SYMBOL drivers/net/ethernet/mscc/mscc_ocelot_common 0xa22b0043 ocelot_probe_port +EXPORT_SYMBOL drivers/net/ethernet/mscc/mscc_ocelot_common 0xae08a76d ocelot_port_bridge_join +EXPORT_SYMBOL drivers/net/ethernet/mscc/mscc_ocelot_common 0xaeabe529 ocelot_port_policer_add +EXPORT_SYMBOL drivers/net/ethernet/mscc/mscc_ocelot_common 0xb507317b ocelot_get_ts_info +EXPORT_SYMBOL drivers/net/ethernet/mscc/mscc_ocelot_common 0xb5551af4 ocelot_chip_init +EXPORT_SYMBOL drivers/net/ethernet/mscc/mscc_ocelot_common 0xc4447726 ocelot_deinit +EXPORT_SYMBOL drivers/net/ethernet/mscc/mscc_ocelot_common 0xccae3197 ocelot_configure_cpu +EXPORT_SYMBOL drivers/net/ethernet/mscc/mscc_ocelot_common 0xcfbd5de2 ocelot_port_vlan_filtering +EXPORT_SYMBOL drivers/net/ethernet/mscc/mscc_ocelot_common 0xd0348add ocelot_switchdev_nb +EXPORT_SYMBOL drivers/net/ethernet/mscc/mscc_ocelot_common 0xdd6733aa ocelot_vlan_del +EXPORT_SYMBOL drivers/net/ethernet/mscc/mscc_ocelot_common 0xe54a91e8 ocelot_switchdev_blocking_nb +EXPORT_SYMBOL drivers/net/ethernet/mscc/mscc_ocelot_common 0xe78b0b61 ocelot_port_set_maxlen +EXPORT_SYMBOL drivers/net/ethernet/mscc/mscc_ocelot_common 0xf5088106 ocelot_get_sset_count +EXPORT_SYMBOL drivers/net/ethernet/mscc/mscc_ocelot_common 0xf71839a0 ocelot_fdb_dump +EXPORT_SYMBOL drivers/net/ethernet/mscc/mscc_ocelot_common 0xf724e085 ocelot_get_strings +EXPORT_SYMBOL drivers/net/ethernet/mscc/mscc_ocelot_common 0xf7966cf7 ocelot_init_port +EXPORT_SYMBOL drivers/net/mdio 0x3e17f466 mdio_set_flag +EXPORT_SYMBOL drivers/net/mdio 0x60443957 mdio45_probe +EXPORT_SYMBOL drivers/net/mdio 0x63e0fee5 mdio45_links_ok +EXPORT_SYMBOL drivers/net/mdio 0x652fb0b6 mdio45_ethtool_ksettings_get_npage +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/mii 0x346430e5 mii_check_gmii_support +EXPORT_SYMBOL drivers/net/mii 0x5a1b6249 generic_mii_ioctl +EXPORT_SYMBOL drivers/net/mii 0x6f523fef mii_ethtool_set_link_ksettings +EXPORT_SYMBOL drivers/net/mii 0x861e5202 mii_check_link +EXPORT_SYMBOL drivers/net/mii 0x91191973 mii_ethtool_sset +EXPORT_SYMBOL drivers/net/mii 0xaf896b3b mii_ethtool_get_link_ksettings +EXPORT_SYMBOL drivers/net/mii 0xb658b426 mii_nway_restart +EXPORT_SYMBOL drivers/net/mii 0xbac287e4 mii_check_media +EXPORT_SYMBOL drivers/net/mii 0xf2dd0afc mii_ethtool_gset +EXPORT_SYMBOL drivers/net/mii 0xff71d1a9 mii_link_ok +EXPORT_SYMBOL drivers/net/phy/bcm-phy-lib 0x9403174b bcm54xx_auxctl_write +EXPORT_SYMBOL drivers/net/ppp/pppox 0x10df6adb pppox_ioctl +EXPORT_SYMBOL drivers/net/ppp/pppox 0x159385c2 pppox_compat_ioctl +EXPORT_SYMBOL drivers/net/ppp/pppox 0x5f5e523d register_pppox_proto +EXPORT_SYMBOL drivers/net/ppp/pppox 0xc74743de pppox_unbind_sock +EXPORT_SYMBOL drivers/net/ppp/pppox 0xe0ff7a18 unregister_pppox_proto +EXPORT_SYMBOL drivers/net/wan/hdlc 0x0ec3ea11 hdlc_start_xmit +EXPORT_SYMBOL drivers/net/wan/hdlc 0x2eee14c8 detach_hdlc_protocol +EXPORT_SYMBOL drivers/net/wan/hdlc 0x39cea5a2 alloc_hdlcdev +EXPORT_SYMBOL drivers/net/wan/hdlc 0x4cca0257 unregister_hdlc_device +EXPORT_SYMBOL drivers/net/wan/hdlc 0x4d15861f hdlc_ioctl +EXPORT_SYMBOL drivers/net/wan/hdlc 0x587964a3 hdlc_open +EXPORT_SYMBOL drivers/net/wan/hdlc 0x698ae66f unregister_hdlc_protocol +EXPORT_SYMBOL drivers/net/wan/hdlc 0x81111e0b hdlc_close +EXPORT_SYMBOL drivers/net/wan/hdlc 0x8566c4e9 attach_hdlc_protocol +EXPORT_SYMBOL drivers/net/wan/hdlc 0x86b5dcba register_hdlc_protocol +EXPORT_SYMBOL drivers/nfc/microread/microread 0x1c9f7e8e microread_probe +EXPORT_SYMBOL drivers/nfc/microread/microread 0xf914506b microread_remove +EXPORT_SYMBOL drivers/nfc/pn544/pn544 0x31ace5d8 pn544_hci_probe +EXPORT_SYMBOL drivers/nfc/pn544/pn544 0xd07a5b66 pn544_hci_remove +EXPORT_SYMBOL drivers/ntb/ntb 0x0edb17bd ntb_msg_event +EXPORT_SYMBOL drivers/ntb/ntb 0x252d8a84 ntb_link_event +EXPORT_SYMBOL drivers/ntb/ntb 0x2652fd61 ntb_msi_peer_trigger +EXPORT_SYMBOL drivers/ntb/ntb 0x343faa4a ntb_msi_init +EXPORT_SYMBOL drivers/ntb/ntb 0x3a55effb ntb_set_ctx +EXPORT_SYMBOL drivers/ntb/ntb 0x44006a44 ntb_msi_setup_mws +EXPORT_SYMBOL drivers/ntb/ntb 0x4d722079 ntb_default_peer_port_number +EXPORT_SYMBOL drivers/ntb/ntb 0x51e21bfb ntb_msi_peer_addr +EXPORT_SYMBOL drivers/ntb/ntb 0x5c52b5b7 ntbm_msi_request_threaded_irq +EXPORT_SYMBOL drivers/ntb/ntb 0x601e52a0 ntb_unregister_device +EXPORT_SYMBOL drivers/ntb/ntb 0x7151298f ntb_default_peer_port_idx +EXPORT_SYMBOL drivers/ntb/ntb 0x81809b38 ntb_clear_ctx +EXPORT_SYMBOL drivers/ntb/ntb 0x9a23244a ntb_db_event +EXPORT_SYMBOL drivers/ntb/ntb 0x9d41176c ntb_default_peer_port_count +EXPORT_SYMBOL drivers/ntb/ntb 0x9f7a6b92 __ntb_register_client +EXPORT_SYMBOL drivers/ntb/ntb 0x9f94a27f ntb_unregister_client +EXPORT_SYMBOL drivers/ntb/ntb 0xa583df6c ntb_msi_clear_mws +EXPORT_SYMBOL drivers/ntb/ntb 0xc70755a4 ntb_register_device +EXPORT_SYMBOL drivers/ntb/ntb 0xf855be6b ntb_default_port_number +EXPORT_SYMBOL drivers/ntb/ntb 0xfa4e693d ntbm_msi_free_irq +EXPORT_SYMBOL drivers/parport/parport 0x02205d4b parport_wait_event +EXPORT_SYMBOL drivers/parport/parport 0x027189e0 parport_put_port +EXPORT_SYMBOL drivers/parport/parport 0x0717033b parport_register_dev_model +EXPORT_SYMBOL drivers/parport/parport 0x0c8ea2f6 parport_wait_peripheral +EXPORT_SYMBOL drivers/parport/parport 0x1190c00a parport_ieee1284_read_byte +EXPORT_SYMBOL drivers/parport/parport 0x1e99d3f6 parport_ieee1284_ecp_write_data +EXPORT_SYMBOL drivers/parport/parport 0x2dce4eb8 parport_get_port +EXPORT_SYMBOL drivers/parport/parport 0x3b54e49f parport_register_port +EXPORT_SYMBOL drivers/parport/parport 0x3f01d34b parport_remove_port +EXPORT_SYMBOL drivers/parport/parport 0x415fd966 parport_write +EXPORT_SYMBOL drivers/parport/parport 0x4d2a941b parport_ieee1284_interrupt +EXPORT_SYMBOL drivers/parport/parport 0x4da482a3 parport_announce_port +EXPORT_SYMBOL drivers/parport/parport 0x4faaeaf6 __parport_register_driver +EXPORT_SYMBOL drivers/parport/parport 0x56804ca0 parport_read +EXPORT_SYMBOL drivers/parport/parport 0x5b438c50 parport_ieee1284_epp_write_addr +EXPORT_SYMBOL drivers/parport/parport 0x5e3a3912 parport_irq_handler +EXPORT_SYMBOL drivers/parport/parport 0x63c76cfc parport_negotiate +EXPORT_SYMBOL drivers/parport/parport 0x752dba47 parport_find_base +EXPORT_SYMBOL drivers/parport/parport 0x7c592721 parport_claim +EXPORT_SYMBOL drivers/parport/parport 0x9202b015 parport_del_port +EXPORT_SYMBOL drivers/parport/parport 0x94f26774 parport_ieee1284_ecp_read_data +EXPORT_SYMBOL drivers/parport/parport 0xa38f2d21 parport_set_timeout +EXPORT_SYMBOL drivers/parport/parport 0xb363ae11 parport_ieee1284_epp_write_data +EXPORT_SYMBOL drivers/parport/parport 0xb86baaee parport_ieee1284_write_compat +EXPORT_SYMBOL drivers/parport/parport 0xd9efac32 parport_ieee1284_epp_read_data +EXPORT_SYMBOL drivers/parport/parport 0xddcb6492 parport_ieee1284_epp_read_addr +EXPORT_SYMBOL drivers/parport/parport 0xde174a99 parport_claim_or_block +EXPORT_SYMBOL drivers/parport/parport 0xde38242b parport_unregister_driver +EXPORT_SYMBOL drivers/parport/parport 0xe022ac67 parport_ieee1284_read_nibble +EXPORT_SYMBOL drivers/parport/parport 0xe36234fe parport_unregister_device +EXPORT_SYMBOL drivers/parport/parport 0xf0157463 parport_release +EXPORT_SYMBOL drivers/parport/parport 0xf4037466 parport_find_number +EXPORT_SYMBOL drivers/parport/parport 0xf6b9f1b7 parport_ieee1284_ecp_write_addr +EXPORT_SYMBOL drivers/parport/parport_pc 0x5c89e033 parport_pc_probe_port +EXPORT_SYMBOL drivers/parport/parport_pc 0x6f7d701c parport_pc_unregister_port +EXPORT_SYMBOL drivers/pcmcia/pcmcia_core 0x212db8d2 pcmcia_socket_list +EXPORT_SYMBOL drivers/pcmcia/pcmcia_core 0x377d3fa9 pcmcia_parse_uevents +EXPORT_SYMBOL drivers/pcmcia/pcmcia_core 0x3d7a9295 pcmcia_unregister_socket +EXPORT_SYMBOL drivers/pcmcia/pcmcia_core 0x45b6d40b pcmcia_reset_card +EXPORT_SYMBOL drivers/pcmcia/pcmcia_core 0x5f6df251 pcmcia_register_socket +EXPORT_SYMBOL drivers/pcmcia/pcmcia_core 0x62a5680f pccard_register_pcmcia +EXPORT_SYMBOL drivers/pcmcia/pcmcia_core 0x6d5bc74e pcmcia_get_socket_by_nr +EXPORT_SYMBOL drivers/pcmcia/pcmcia_core 0xa5854bbd pcmcia_parse_events +EXPORT_SYMBOL drivers/pcmcia/pcmcia_core 0xce76950f pcmcia_get_socket +EXPORT_SYMBOL drivers/pcmcia/pcmcia_core 0xcf97f3bd dead_socket +EXPORT_SYMBOL drivers/pcmcia/pcmcia_core 0xd6a375e6 pcmcia_put_socket +EXPORT_SYMBOL drivers/pcmcia/pcmcia_core 0xf86c5cbb pcmcia_socket_class +EXPORT_SYMBOL drivers/pcmcia/pcmcia_core 0xf942709b pcmcia_socket_list_rwsem +EXPORT_SYMBOL drivers/pcmcia/pcmcia_rsrc 0x155a70bc pccard_static_ops +EXPORT_SYMBOL drivers/platform/x86/intel_punit_ipc 0x3a0b563a intel_punit_ipc_simple_command +EXPORT_SYMBOL drivers/platform/x86/wmi 0x0e50b107 __wmi_driver_register +EXPORT_SYMBOL drivers/platform/x86/wmi 0xa446745c wmi_driver_unregister +EXPORT_SYMBOL drivers/rpmsg/rpmsg_core 0x125ddf5c unregister_rpmsg_driver +EXPORT_SYMBOL drivers/rpmsg/rpmsg_core 0x256e42b8 rpmsg_send +EXPORT_SYMBOL drivers/rpmsg/rpmsg_core 0x2d6630b6 rpmsg_send_offchannel +EXPORT_SYMBOL drivers/rpmsg/rpmsg_core 0x2e08555d rpmsg_trysend_offchannel +EXPORT_SYMBOL drivers/rpmsg/rpmsg_core 0x3299af8e rpmsg_trysendto +EXPORT_SYMBOL drivers/rpmsg/rpmsg_core 0x47b1fd52 rpmsg_create_ept +EXPORT_SYMBOL drivers/rpmsg/rpmsg_core 0x682918b6 rpmsg_unregister_device +EXPORT_SYMBOL drivers/rpmsg/rpmsg_core 0x78650461 rpmsg_sendto +EXPORT_SYMBOL drivers/rpmsg/rpmsg_core 0x90eaf6a9 rpmsg_register_device +EXPORT_SYMBOL drivers/rpmsg/rpmsg_core 0x9ca1f721 rpmsg_destroy_ept +EXPORT_SYMBOL drivers/rpmsg/rpmsg_core 0xe7db4fc6 rpmsg_poll +EXPORT_SYMBOL drivers/rpmsg/rpmsg_core 0xec255d57 rpmsg_trysend +EXPORT_SYMBOL drivers/rpmsg/rpmsg_core 0xf2ef6c81 __register_rpmsg_driver +EXPORT_SYMBOL drivers/rpmsg/rpmsg_core 0xfeb765d6 rpmsg_find_device +EXPORT_SYMBOL drivers/scsi/53c700 0x3d9cece0 NCR_700_intr +EXPORT_SYMBOL drivers/scsi/53c700 0x834bdb66 NCR_700_detect +EXPORT_SYMBOL drivers/scsi/53c700 0xfa478c85 NCR_700_release +EXPORT_SYMBOL drivers/scsi/esp_scsi 0x016b9ac2 scsi_esp_register +EXPORT_SYMBOL drivers/scsi/esp_scsi 0x33399a27 scsi_esp_template +EXPORT_SYMBOL drivers/scsi/esp_scsi 0x40be954b scsi_esp_unregister +EXPORT_SYMBOL drivers/scsi/esp_scsi 0x4a29ab38 scsi_esp_intr +EXPORT_SYMBOL drivers/scsi/esp_scsi 0x7db99b6d scsi_esp_cmd +EXPORT_SYMBOL drivers/scsi/libsas/libsas 0x1955cbe5 sas_prep_resume_ha +EXPORT_SYMBOL drivers/scsi/libsas/libsas 0x4a8e3d34 try_test_sas_gpio_gp_bit +EXPORT_SYMBOL drivers/scsi/libsas/libsas 0x621f6e98 sas_suspend_ha +EXPORT_SYMBOL drivers/scsi/libsas/libsas 0x636b3a76 sas_resume_ha +EXPORT_SYMBOL drivers/scsi/megaraid/megaraid_mm 0x8d5a2635 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 0x03e12b7d qlt_free_cmd +EXPORT_SYMBOL drivers/scsi/qla2xxx/qla2xxx 0x0f4ed1de qlt_lport_deregister +EXPORT_SYMBOL drivers/scsi/qla2xxx/qla2xxx 0x1451bb16 qlt_lport_register +EXPORT_SYMBOL drivers/scsi/qla2xxx/qla2xxx 0x20a31e4f qlt_abort_cmd +EXPORT_SYMBOL drivers/scsi/qla2xxx/qla2xxx 0x53e4ecd4 qlt_free_mcmd +EXPORT_SYMBOL drivers/scsi/qla2xxx/qla2xxx 0x7517fec3 qlt_xmit_tm_rsp +EXPORT_SYMBOL drivers/scsi/qla2xxx/qla2xxx 0x81126187 qlt_stop_phase1 +EXPORT_SYMBOL drivers/scsi/qla2xxx/qla2xxx 0xa466200a qlt_stop_phase2 +EXPORT_SYMBOL drivers/scsi/qla2xxx/qla2xxx 0xb6f9496c qlt_xmit_response +EXPORT_SYMBOL drivers/scsi/qla2xxx/qla2xxx 0xc6609371 qlt_rdy_to_xfer +EXPORT_SYMBOL drivers/scsi/qla2xxx/qla2xxx 0xdfbfdc50 qlt_enable_vha +EXPORT_SYMBOL drivers/scsi/qla2xxx/qla2xxx 0xec971904 qlt_unreg_sess +EXPORT_SYMBOL drivers/scsi/raid_class 0x4eedda1b raid_class_release +EXPORT_SYMBOL drivers/scsi/raid_class 0xc5bab06e raid_class_attach +EXPORT_SYMBOL drivers/scsi/raid_class 0xfb94196f raid_component_add +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0x01e8297e sas_release_transport +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0x03fe496f sas_port_add +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0x0eacce6d sas_phy_alloc +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0x1645c11d scsi_is_sas_port +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0x30b49075 sas_port_alloc +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0x312bca5c sas_port_add_phy +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0x3425d4cd sas_port_delete_phy +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0x377d3c6d sas_read_port_mode_page +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0x44e011c0 sas_rphy_remove +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0x47f0777b sas_remove_children +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0x49ed73e2 sas_rphy_unlink +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0x4a318651 sas_port_get_phy +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0x4ccc03c5 sas_phy_add +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0x637d6b22 sas_port_delete +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0x63da60c0 sas_rphy_delete +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0x696ad961 sas_phy_free +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0x6e21b7e9 sas_get_address +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0x72edabf1 sas_port_mark_backlink +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0x74bbc919 sas_rphy_free +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0x7b106df6 sas_expander_alloc +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0x7ea1c920 sas_port_free +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0x7eb09992 sas_remove_host +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0x97eead72 sas_phy_delete +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0xa006442e sas_end_device_alloc +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0xb31575f6 sas_rphy_add +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0xc397f86a sas_port_alloc_num +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0xe06920c4 sas_attach_transport +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0xedd5a3c0 scsi_is_sas_rphy +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0xfaa9d027 scsi_is_sas_phy +EXPORT_SYMBOL drivers/scsi/scsi_transport_spi 0x2f6f8a34 spi_attach_transport +EXPORT_SYMBOL drivers/scsi/scsi_transport_spi 0x35fdae36 spi_display_xfer_agreement +EXPORT_SYMBOL drivers/scsi/scsi_transport_spi 0x3686ea09 spi_print_msg +EXPORT_SYMBOL drivers/scsi/scsi_transport_spi 0x468de0cb spi_dv_device +EXPORT_SYMBOL drivers/scsi/scsi_transport_spi 0x6daa0a38 spi_release_transport +EXPORT_SYMBOL drivers/scsi/scsi_transport_spi 0xbca3fe59 spi_schedule_dv_device +EXPORT_SYMBOL drivers/scsi/scsi_transport_srp 0x27cfb709 srp_rport_get +EXPORT_SYMBOL drivers/scsi/scsi_transport_srp 0x405b6e05 srp_parse_tmo +EXPORT_SYMBOL drivers/scsi/scsi_transport_srp 0x72c6cb50 srp_timed_out +EXPORT_SYMBOL drivers/scsi/scsi_transport_srp 0xa27ab7be srp_reconnect_rport +EXPORT_SYMBOL drivers/scsi/scsi_transport_srp 0xaa440ec1 srp_start_tl_fail_timers +EXPORT_SYMBOL drivers/scsi/scsi_transport_srp 0xc41aa4a4 srp_rport_put +EXPORT_SYMBOL drivers/soundwire/soundwire-bus 0x16d1706b sdw_prepare_stream +EXPORT_SYMBOL drivers/soundwire/soundwire-bus 0x17db3036 sdw_nread +EXPORT_SYMBOL drivers/soundwire/soundwire-bus 0x1a765daf sdw_nwrite +EXPORT_SYMBOL drivers/soundwire/soundwire-bus 0x1deee061 sdw_find_row_index +EXPORT_SYMBOL drivers/soundwire/soundwire-bus 0x1e89d99e sdw_stream_add_slave +EXPORT_SYMBOL drivers/soundwire/soundwire-bus 0x208e5c54 sdw_stream_remove_master +EXPORT_SYMBOL drivers/soundwire/soundwire-bus 0x4c0fe49c sdw_clear_slave_status +EXPORT_SYMBOL drivers/soundwire/soundwire-bus 0x4cde88bf sdw_disable_stream +EXPORT_SYMBOL drivers/soundwire/soundwire-bus 0x4ddaa175 sdw_bus_exit_clk_stop +EXPORT_SYMBOL drivers/soundwire/soundwire-bus 0x60e31fbb sdw_find_col_index +EXPORT_SYMBOL drivers/soundwire/soundwire-bus 0x65b7103a sdw_slave_read_prop +EXPORT_SYMBOL drivers/soundwire/soundwire-bus 0x66714477 sdw_bus_master_delete +EXPORT_SYMBOL drivers/soundwire/soundwire-bus 0x71891d59 sdw_deprepare_stream +EXPORT_SYMBOL drivers/soundwire/soundwire-bus 0x815b01bb sdw_bus_prep_clk_stop +EXPORT_SYMBOL drivers/soundwire/soundwire-bus 0x9e122d79 sdw_alloc_stream +EXPORT_SYMBOL drivers/soundwire/soundwire-bus 0xa1de83d7 sdw_master_read_prop +EXPORT_SYMBOL drivers/soundwire/soundwire-bus 0xad64b147 sdw_handle_slave_status +EXPORT_SYMBOL drivers/soundwire/soundwire-bus 0xb9fd2eee sdw_bus_clk_stop +EXPORT_SYMBOL drivers/soundwire/soundwire-bus 0xbbec2c2e sdw_enable_stream +EXPORT_SYMBOL drivers/soundwire/soundwire-bus 0xbf5ce94c sdw_stream_add_master +EXPORT_SYMBOL drivers/soundwire/soundwire-bus 0xd04bf127 sdw_bus_master_add +EXPORT_SYMBOL drivers/soundwire/soundwire-bus 0xd1a3373a sdw_write +EXPORT_SYMBOL drivers/soundwire/soundwire-bus 0xda5bce09 sdw_release_stream +EXPORT_SYMBOL drivers/soundwire/soundwire-bus 0xe8c862a5 sdw_stream_remove_slave +EXPORT_SYMBOL drivers/soundwire/soundwire-bus 0xebc80535 sdw_read +EXPORT_SYMBOL drivers/ssb/ssb 0x01eacce5 ssb_commit_settings +EXPORT_SYMBOL drivers/ssb/ssb 0x0b4d40aa ssb_bus_suspend +EXPORT_SYMBOL drivers/ssb/ssb 0x2bd3e6d3 ssb_pcicore_dev_irqvecs_enable +EXPORT_SYMBOL drivers/ssb/ssb 0x41f58c50 ssb_set_devtypedata +EXPORT_SYMBOL drivers/ssb/ssb 0x46f66acc ssb_pmu_set_ldo_paref +EXPORT_SYMBOL drivers/ssb/ssb 0x48b66f25 ssb_device_disable +EXPORT_SYMBOL drivers/ssb/ssb 0x4fac2710 ssb_bus_powerup +EXPORT_SYMBOL drivers/ssb/ssb 0x51867c63 ssb_driver_unregister +EXPORT_SYMBOL drivers/ssb/ssb 0x5bfbff0c ssb_device_is_enabled +EXPORT_SYMBOL drivers/ssb/ssb 0x6c6725e9 ssb_clockspeed +EXPORT_SYMBOL drivers/ssb/ssb 0x741208a5 ssb_pcihost_register +EXPORT_SYMBOL drivers/ssb/ssb 0x74b5f887 ssb_device_enable +EXPORT_SYMBOL drivers/ssb/ssb 0x75f58eb5 ssb_bus_may_powerdown +EXPORT_SYMBOL drivers/ssb/ssb 0x912a21ab ssb_bus_unregister +EXPORT_SYMBOL drivers/ssb/ssb 0x94a38130 ssb_dma_translation +EXPORT_SYMBOL drivers/ssb/ssb 0xafbd9618 ssb_chipco_gpio_control +EXPORT_SYMBOL drivers/ssb/ssb 0xc0b46827 ssb_pmu_set_ldo_voltage +EXPORT_SYMBOL drivers/ssb/ssb 0xc2dc54ae ssb_bus_resume +EXPORT_SYMBOL drivers/ssb/ssb 0xcb17f1cb ssb_admatch_base +EXPORT_SYMBOL drivers/ssb/ssb 0xd10eee47 __ssb_driver_register +EXPORT_SYMBOL drivers/ssb/ssb 0xdfc7c6ef ssb_admatch_size +EXPORT_SYMBOL drivers/staging/fbtft/fbtft 0x046cd601 fbtft_register_backlight +EXPORT_SYMBOL drivers/staging/fbtft/fbtft 0x04f7c5bf fbtft_write_gpio16_wr +EXPORT_SYMBOL drivers/staging/fbtft/fbtft 0x07fc5794 fbtft_write_reg16_bus16 +EXPORT_SYMBOL drivers/staging/fbtft/fbtft 0x21f3d4f2 fbtft_register_framebuffer +EXPORT_SYMBOL drivers/staging/fbtft/fbtft 0x2eff94e2 fbtft_write_spi_emulate_9 +EXPORT_SYMBOL drivers/staging/fbtft/fbtft 0x345375fd fbtft_write_vmem16_bus9 +EXPORT_SYMBOL drivers/staging/fbtft/fbtft 0x38cb7bbb fbtft_unregister_backlight +EXPORT_SYMBOL drivers/staging/fbtft/fbtft 0x41936085 fbtft_framebuffer_release +EXPORT_SYMBOL drivers/staging/fbtft/fbtft 0x7649cf76 fbtft_write_reg8_bus9 +EXPORT_SYMBOL drivers/staging/fbtft/fbtft 0x7a619f4d fbtft_unregister_framebuffer +EXPORT_SYMBOL drivers/staging/fbtft/fbtft 0x80a2a947 fbtft_write_vmem16_bus8 +EXPORT_SYMBOL drivers/staging/fbtft/fbtft 0x86a471e0 fbtft_read_spi +EXPORT_SYMBOL drivers/staging/fbtft/fbtft 0x87eac90f fbtft_remove_common +EXPORT_SYMBOL drivers/staging/fbtft/fbtft 0x89f93470 fbtft_write_vmem16_bus16 +EXPORT_SYMBOL drivers/staging/fbtft/fbtft 0x8ac4d698 fbtft_write_gpio16_wr_latched +EXPORT_SYMBOL drivers/staging/fbtft/fbtft 0x95204036 fbtft_framebuffer_alloc +EXPORT_SYMBOL drivers/staging/fbtft/fbtft 0x97c5960e fbtft_dbg_hex +EXPORT_SYMBOL drivers/staging/fbtft/fbtft 0x9d0af478 fbtft_probe_common +EXPORT_SYMBOL drivers/staging/fbtft/fbtft 0xa805cc3c fbtft_write_buf_dc +EXPORT_SYMBOL drivers/staging/fbtft/fbtft 0xb8b32c1c fbtft_write_reg8_bus8 +EXPORT_SYMBOL drivers/staging/fbtft/fbtft 0xbae562d7 fbtft_write_gpio8_wr +EXPORT_SYMBOL drivers/staging/fbtft/fbtft 0xe3a7ed0e fbtft_write_spi +EXPORT_SYMBOL drivers/staging/fbtft/fbtft 0xf2f89b6e fbtft_init_display +EXPORT_SYMBOL drivers/staging/fbtft/fbtft 0xf3b04169 fbtft_write_reg16_bus8 +EXPORT_SYMBOL drivers/staging/fbtft/fbtft 0xf5c29bb8 fbtft_write_vmem8_bus8 +EXPORT_SYMBOL drivers/staging/gasket/gasket 0x065f9c9d gasket_page_table_max_size +EXPORT_SYMBOL drivers/staging/gasket/gasket 0x339c2b95 gasket_page_table_map +EXPORT_SYMBOL drivers/staging/gasket/gasket 0x372973e0 gasket_page_table_are_addrs_bad +EXPORT_SYMBOL drivers/staging/gasket/gasket 0x38c3d415 gasket_page_table_num_active_pages +EXPORT_SYMBOL drivers/staging/gasket/gasket 0x39623111 gasket_sysfs_get_device_data +EXPORT_SYMBOL drivers/staging/gasket/gasket 0x3be54987 gasket_unregister_device +EXPORT_SYMBOL drivers/staging/gasket/gasket 0x4109757c gasket_page_table_partition +EXPORT_SYMBOL drivers/staging/gasket/gasket 0x4292ff96 gasket_page_table_is_dev_addr_bad +EXPORT_SYMBOL drivers/staging/gasket/gasket 0x4c4ff973 gasket_sysfs_get_attr +EXPORT_SYMBOL drivers/staging/gasket/gasket 0x5088675c gasket_get_ioctl_permissions_cb +EXPORT_SYMBOL drivers/staging/gasket/gasket 0x62216ac7 gasket_reset_nolock +EXPORT_SYMBOL drivers/staging/gasket/gasket 0x6abfb07a gasket_disable_device +EXPORT_SYMBOL drivers/staging/gasket/gasket 0x6f17fae4 gasket_sysfs_create_entries +EXPORT_SYMBOL drivers/staging/gasket/gasket 0x77311f6a gasket_page_table_unmap_all +EXPORT_SYMBOL drivers/staging/gasket/gasket 0x7e3326d1 gasket_enable_device +EXPORT_SYMBOL drivers/staging/gasket/gasket 0x8c92da47 gasket_page_table_num_simple_entries +EXPORT_SYMBOL drivers/staging/gasket/gasket 0x91659d9e gasket_sysfs_put_device_data +EXPORT_SYMBOL drivers/staging/gasket/gasket 0x97f304fd gasket_sysfs_put_attr +EXPORT_SYMBOL drivers/staging/gasket/gasket 0x9fa6c9cc gasket_sysfs_register_store +EXPORT_SYMBOL drivers/staging/gasket/gasket 0xb73eacac gasket_reset +EXPORT_SYMBOL drivers/staging/gasket/gasket 0xbaa2668a gasket_num_name_lookup +EXPORT_SYMBOL drivers/staging/gasket/gasket 0xbaf2f8cd gasket_page_table_unmap +EXPORT_SYMBOL drivers/staging/gasket/gasket 0xc225208c gasket_page_table_num_entries +EXPORT_SYMBOL drivers/staging/gasket/gasket 0xca8ac248 gasket_register_device +EXPORT_SYMBOL drivers/staging/gasket/gasket 0xe851b463 gasket_pci_remove_device +EXPORT_SYMBOL drivers/staging/gasket/gasket 0xeaffae48 gasket_mm_unmap_region +EXPORT_SYMBOL drivers/staging/gasket/gasket 0xf136b5ef gasket_wait_with_reschedule +EXPORT_SYMBOL drivers/staging/gasket/gasket 0xfafb0365 gasket_pci_add_device +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x048ff931 iscsit_build_logout_rsp +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x04d36dd3 iscsit_handle_logout_cmd +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x071fb218 iscsit_handle_task_mgt_cmd +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x0ae09e54 iscsit_process_scsi_cmd +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x142a8222 iscsit_cause_connection_reinstatement +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x14a53156 iscsit_increment_maxcmdsn +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x1ea0efbd iscsit_response_queue +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x21e298f4 iscsit_register_transport +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x352e85ba iscsit_queue_rsp +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x3cabb007 iscsit_build_datain_pdu +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x3cfcf9ea iscsit_add_reject +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x3dc05ba0 iscsit_set_unsolicited_dataout +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x3f8df8d4 iscsit_setup_nop_out +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x4a748334 iscsit_build_nopin_rsp +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x4a792a94 iscsit_find_cmd_from_itt +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x4d87cac2 iscsit_free_cmd +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x5533e9e3 iscsit_build_r2ts_for_cmd +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x587319d6 iscsit_setup_scsi_cmd +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x5a80be8e iscsit_unregister_transport +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x60a7227c iscsit_release_cmd +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x6178b829 iscsit_sequence_cmd +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x69178ada iscsit_handle_snack +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x6d7729ab iscsit_process_text_cmd +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x725516b3 iscsit_setup_text_cmd +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x725da084 iscsit_tmr_post_handler +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x797a905e iscsit_process_nop_out +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x8c86991b __iscsit_check_dataout_hdr +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x9128eb47 iscsit_check_dataout_hdr +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x9169da68 iscsit_reject_cmd +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x94d50297 iscsit_logout_post_handler +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x9b8ac259 iscsit_add_cmd_to_immediate_queue +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0xa0eb3b39 iscsit_stop_dataout_timer +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0xa24ec494 iscsit_aborted_task +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0xa3d7306f iscsit_build_task_mgt_rsp +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0xab27b6f7 iscsit_build_rsp_pdu +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0xac9a2261 iscsi_change_param_sprintf +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0xb84474aa iscsit_build_reject +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0xbec23612 iscsi_target_check_login_request +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0xbee9b338 iscsit_build_text_rsp +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0xc4d64d6d iscsit_immediate_queue +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0xce3bdbf1 iscsit_check_dataout_payload +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0xde84e284 iscsit_allocate_cmd +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0xde90e9c3 iscsit_get_datain_values +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0xf2e8350d iscsit_find_cmd_from_itt_or_dump +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0xf34332f0 iscsi_find_param_from_key +EXPORT_SYMBOL drivers/target/target_core_mod 0x051f7187 target_show_dynamic_sessions +EXPORT_SYMBOL drivers/target/target_core_mod 0x079e17f7 target_sess_cmd_list_set_waiting +EXPORT_SYMBOL drivers/target/target_core_mod 0x0871ffd6 transport_set_vpd_ident +EXPORT_SYMBOL drivers/target/target_core_mod 0x101a33c0 target_depend_item +EXPORT_SYMBOL drivers/target/target_core_mod 0x142072c0 transport_set_vpd_assoc +EXPORT_SYMBOL drivers/target/target_core_mod 0x23c85df1 core_tpg_set_initiator_node_queue_depth +EXPORT_SYMBOL drivers/target/target_core_mod 0x2689759c target_lun_is_rdonly +EXPORT_SYMBOL drivers/target/target_core_mod 0x2793fd90 target_backend_unregister +EXPORT_SYMBOL drivers/target/target_core_mod 0x2b4299cd transport_kmap_data_sg +EXPORT_SYMBOL drivers/target/target_core_mod 0x2c4859f8 target_get_sess_cmd +EXPORT_SYMBOL drivers/target/target_core_mod 0x2ed55e3f __transport_register_session +EXPORT_SYMBOL drivers/target/target_core_mod 0x323c6b08 transport_backend_register +EXPORT_SYMBOL drivers/target/target_core_mod 0x35f908a7 transport_generic_handle_tmr +EXPORT_SYMBOL drivers/target/target_core_mod 0x369f5200 sbc_dif_copy_prot +EXPORT_SYMBOL drivers/target/target_core_mod 0x38ba2cf6 transport_lookup_cmd_lun +EXPORT_SYMBOL drivers/target/target_core_mod 0x3a20a9d7 transport_set_vpd_ident_type +EXPORT_SYMBOL drivers/target/target_core_mod 0x4d2ac138 passthrough_parse_cdb +EXPORT_SYMBOL drivers/target/target_core_mod 0x5059043d transport_wait_for_tasks +EXPORT_SYMBOL drivers/target/target_core_mod 0x516758fd sbc_attrib_attrs +EXPORT_SYMBOL drivers/target/target_core_mod 0x52eb961c core_tpg_register +EXPORT_SYMBOL drivers/target/target_core_mod 0x563a7242 sbc_get_write_same_sectors +EXPORT_SYMBOL drivers/target/target_core_mod 0x5690a6da target_register_template +EXPORT_SYMBOL drivers/target/target_core_mod 0x5c548344 target_tpg_has_node_acl +EXPORT_SYMBOL drivers/target/target_core_mod 0x5eadc668 transport_init_session +EXPORT_SYMBOL drivers/target/target_core_mod 0x5ff3129d target_configure_unmap_from_queue +EXPORT_SYMBOL drivers/target/target_core_mod 0x619d51dc target_submit_cmd_map_sgls +EXPORT_SYMBOL drivers/target/target_core_mod 0x636b3a2d sbc_dif_verify +EXPORT_SYMBOL drivers/target/target_core_mod 0x638bffb7 target_free_sgl +EXPORT_SYMBOL drivers/target/target_core_mod 0x6a1d6605 transport_alloc_session +EXPORT_SYMBOL drivers/target/target_core_mod 0x6b4dc360 target_cmd_parse_cdb +EXPORT_SYMBOL drivers/target/target_core_mod 0x6d7502d7 sbc_get_device_type +EXPORT_SYMBOL drivers/target/target_core_mod 0x6ecd92da transport_register_session +EXPORT_SYMBOL drivers/target/target_core_mod 0x6f36da6f spc_emulate_evpd_83 +EXPORT_SYMBOL drivers/target/target_core_mod 0x70b1f11d core_tpg_get_initiator_node_acl +EXPORT_SYMBOL drivers/target/target_core_mod 0x7344703a transport_lookup_tmr_lun +EXPORT_SYMBOL drivers/target/target_core_mod 0x754743b9 core_alua_check_nonop_delay +EXPORT_SYMBOL drivers/target/target_core_mod 0x7a1d0d3c target_alloc_sgl +EXPORT_SYMBOL drivers/target/target_core_mod 0x8f0d852a target_remove_session +EXPORT_SYMBOL drivers/target/target_core_mod 0x90adc4f6 target_complete_cmd_with_length +EXPORT_SYMBOL drivers/target/target_core_mod 0x93929352 passthrough_pr_attrib_attrs +EXPORT_SYMBOL drivers/target/target_core_mod 0x973f43d7 transport_deregister_session +EXPORT_SYMBOL drivers/target/target_core_mod 0x9a25d6b3 target_put_sess_cmd +EXPORT_SYMBOL drivers/target/target_core_mod 0x9c755e58 spc_emulate_report_luns +EXPORT_SYMBOL drivers/target/target_core_mod 0x9d9076b4 target_complete_cmd +EXPORT_SYMBOL drivers/target/target_core_mod 0x9f32e0ec core_tpg_set_initiator_node_tag +EXPORT_SYMBOL drivers/target/target_core_mod 0x9f3a065d sbc_parse_cdb +EXPORT_SYMBOL drivers/target/target_core_mod 0x9fda6919 target_nacl_find_deve +EXPORT_SYMBOL drivers/target/target_core_mod 0xa3cc6ccd spc_emulate_inquiry_std +EXPORT_SYMBOL drivers/target/target_core_mod 0xa5fc3926 core_tpg_deregister +EXPORT_SYMBOL drivers/target/target_core_mod 0xa6d7e3b3 transport_generic_free_cmd +EXPORT_SYMBOL drivers/target/target_core_mod 0xaa5625ba core_tpg_check_initiator_node_acl +EXPORT_SYMBOL drivers/target/target_core_mod 0xacc63912 transport_init_se_cmd +EXPORT_SYMBOL drivers/target/target_core_mod 0xad6bdb76 target_undepend_item +EXPORT_SYMBOL drivers/target/target_core_mod 0xae9b644c transport_deregister_session_configfs +EXPORT_SYMBOL drivers/target/target_core_mod 0xb08ae6d4 core_tmr_alloc_req +EXPORT_SYMBOL drivers/target/target_core_mod 0xb213cd07 target_execute_cmd +EXPORT_SYMBOL drivers/target/target_core_mod 0xbd5c976d target_wait_for_sess_cmds +EXPORT_SYMBOL drivers/target/target_core_mod 0xbdef017e target_to_linux_sector +EXPORT_SYMBOL drivers/target/target_core_mod 0xc468a82b transport_kunmap_data_sg +EXPORT_SYMBOL drivers/target/target_core_mod 0xc5e829d3 transport_alloc_session_tags +EXPORT_SYMBOL drivers/target/target_core_mod 0xc8b81fb1 target_put_nacl +EXPORT_SYMBOL drivers/target/target_core_mod 0xca047ef0 target_send_busy +EXPORT_SYMBOL drivers/target/target_core_mod 0xcdb629a6 transport_generic_request_failure +EXPORT_SYMBOL drivers/target/target_core_mod 0xd296a55d spc_parse_cdb +EXPORT_SYMBOL drivers/target/target_core_mod 0xd5e20f71 core_allocate_nexus_loss_ua +EXPORT_SYMBOL drivers/target/target_core_mod 0xd608fd00 target_unregister_template +EXPORT_SYMBOL drivers/target/target_core_mod 0xd85bdae7 transport_handle_cdb_direct +EXPORT_SYMBOL drivers/target/target_core_mod 0xe2f1a5b5 target_submit_tmr +EXPORT_SYMBOL drivers/target/target_core_mod 0xe484e8f1 transport_send_check_condition_and_sense +EXPORT_SYMBOL drivers/target/target_core_mod 0xe5501806 target_setup_session +EXPORT_SYMBOL drivers/target/target_core_mod 0xea8187ab target_cmd_init_cdb +EXPORT_SYMBOL drivers/target/target_core_mod 0xee449acb passthrough_attrib_attrs +EXPORT_SYMBOL drivers/target/target_core_mod 0xf37023da transport_free_session +EXPORT_SYMBOL drivers/target/target_core_mod 0xf3c2dfe0 transport_set_vpd_proto_id +EXPORT_SYMBOL drivers/target/target_core_mod 0xf62a3f8c transport_copy_sense_to_cmd +EXPORT_SYMBOL drivers/target/target_core_mod 0xf7db5f1d transport_generic_new_cmd +EXPORT_SYMBOL drivers/target/target_core_mod 0xfb4ffe0a target_submit_cmd +EXPORT_SYMBOL drivers/target/target_core_mod 0xfb5f9a7f target_show_cmd +EXPORT_SYMBOL drivers/vfio/mdev/mdev 0x01993060 mdev_parent_dev +EXPORT_SYMBOL drivers/vfio/mdev/mdev 0x032b28de mdev_set_drvdata +EXPORT_SYMBOL drivers/vfio/mdev/mdev 0x175e307c mdev_set_iommu_device +EXPORT_SYMBOL drivers/vfio/mdev/mdev 0x254c8655 mdev_unregister_device +EXPORT_SYMBOL drivers/vfio/mdev/mdev 0x2f7018ce mdev_register_driver +EXPORT_SYMBOL drivers/vfio/mdev/mdev 0x5cefee5a mdev_unregister_driver +EXPORT_SYMBOL drivers/vfio/mdev/mdev 0x60adb184 mdev_from_dev +EXPORT_SYMBOL drivers/vfio/mdev/mdev 0x63994997 mdev_uuid +EXPORT_SYMBOL drivers/vfio/mdev/mdev 0x9c892021 mdev_get_drvdata +EXPORT_SYMBOL drivers/vfio/mdev/mdev 0x9e551e5e mdev_get_iommu_device +EXPORT_SYMBOL drivers/vfio/mdev/mdev 0xef898026 mdev_register_device +EXPORT_SYMBOL drivers/vfio/mdev/mdev 0xfccfb5d2 mdev_dev +EXPORT_SYMBOL drivers/vhost/vhost 0x0670431e vhost_chr_poll +EXPORT_SYMBOL drivers/vhost/vhost 0x8079c71f vhost_chr_write_iter +EXPORT_SYMBOL drivers/vhost/vringh 0x3b304ebb vringh_iov_push_user +EXPORT_SYMBOL drivers/vhost/vringh 0x3ecc1eea vringh_getdesc_kern +EXPORT_SYMBOL drivers/vhost/vringh 0x4311cd91 vringh_iov_pull_user +EXPORT_SYMBOL drivers/vhost/vringh 0x44d6f41b vringh_notify_enable_kern +EXPORT_SYMBOL drivers/vhost/vringh 0x4b6a6e23 vringh_iov_pull_iotlb +EXPORT_SYMBOL drivers/vhost/vringh 0x4d0529ee vringh_complete_multi_user +EXPORT_SYMBOL drivers/vhost/vringh 0x56f694fc vringh_abandon_kern +EXPORT_SYMBOL drivers/vhost/vringh 0x58bc86ac vringh_complete_user +EXPORT_SYMBOL drivers/vhost/vringh 0x5aa88061 vringh_init_user +EXPORT_SYMBOL drivers/vhost/vringh 0x5e47ee29 vringh_notify_enable_user +EXPORT_SYMBOL drivers/vhost/vringh 0x6d95262b vringh_getdesc_user +EXPORT_SYMBOL drivers/vhost/vringh 0x80ad788a vringh_notify_disable_user +EXPORT_SYMBOL drivers/vhost/vringh 0x85665842 vringh_notify_enable_iotlb +EXPORT_SYMBOL drivers/vhost/vringh 0x8701069c vringh_abandon_iotlb +EXPORT_SYMBOL drivers/vhost/vringh 0x8bfb5a2b vringh_complete_iotlb +EXPORT_SYMBOL drivers/vhost/vringh 0x8d40c6f4 vringh_getdesc_iotlb +EXPORT_SYMBOL drivers/vhost/vringh 0x8e78a074 vringh_need_notify_user +EXPORT_SYMBOL drivers/vhost/vringh 0x91b5a92c vringh_abandon_user +EXPORT_SYMBOL drivers/vhost/vringh 0x97fa07e9 vringh_iov_push_kern +EXPORT_SYMBOL drivers/vhost/vringh 0xac2d6746 vringh_init_kern +EXPORT_SYMBOL drivers/vhost/vringh 0xaf01a583 vringh_set_iotlb +EXPORT_SYMBOL drivers/vhost/vringh 0xbf4f4fbd vringh_need_notify_iotlb +EXPORT_SYMBOL drivers/vhost/vringh 0xd3a14d7d vringh_complete_kern +EXPORT_SYMBOL drivers/vhost/vringh 0xde804bb9 vringh_iov_pull_kern +EXPORT_SYMBOL drivers/vhost/vringh 0xe544457e vringh_notify_disable_iotlb +EXPORT_SYMBOL drivers/vhost/vringh 0xee1c7df3 vringh_init_iotlb +EXPORT_SYMBOL drivers/vhost/vringh 0xf1bbb2ad vringh_need_notify_kern +EXPORT_SYMBOL drivers/vhost/vringh 0xf6784994 vringh_iov_push_iotlb +EXPORT_SYMBOL drivers/vhost/vringh 0xff6e6a53 vringh_notify_disable_kern +EXPORT_SYMBOL drivers/video/fbdev/core/cfbcopyarea 0x06b76d78 cfb_copyarea +EXPORT_SYMBOL drivers/video/fbdev/core/cfbfillrect 0x3c1cae1a cfb_fillrect +EXPORT_SYMBOL drivers/video/fbdev/core/cfbimgblt 0x0fa8c0a0 cfb_imageblit +EXPORT_SYMBOL drivers/video/fbdev/core/syscopyarea 0x44c0ef25 sys_copyarea +EXPORT_SYMBOL drivers/video/fbdev/core/sysfillrect 0x7e6b2c47 sys_fillrect +EXPORT_SYMBOL drivers/video/fbdev/core/sysimgblt 0xafa25718 sys_imageblit +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 0x003e74e7 fscache_init_cache +EXPORT_SYMBOL fs/fscache/fscache 0x01e8a703 fscache_object_retrying_stale +EXPORT_SYMBOL fs/fscache/fscache 0x0cea3c9f fscache_mark_page_cached +EXPORT_SYMBOL fs/fscache/fscache 0x0e0716b1 fscache_op_complete +EXPORT_SYMBOL fs/fscache/fscache 0x11e94e49 __fscache_relinquish_cookie +EXPORT_SYMBOL fs/fscache/fscache 0x16c021ac __fscache_update_cookie +EXPORT_SYMBOL fs/fscache/fscache 0x187a9c73 __fscache_wait_on_page_write +EXPORT_SYMBOL fs/fscache/fscache 0x21dc0844 fscache_object_init +EXPORT_SYMBOL fs/fscache/fscache 0x2de8bb8f __fscache_write_page +EXPORT_SYMBOL fs/fscache/fscache 0x343dced8 fscache_object_lookup_negative +EXPORT_SYMBOL fs/fscache/fscache 0x36fbad68 __fscache_read_or_alloc_page +EXPORT_SYMBOL fs/fscache/fscache 0x3aee75aa fscache_check_aux +EXPORT_SYMBOL fs/fscache/fscache 0x3bded580 __fscache_enable_cookie +EXPORT_SYMBOL fs/fscache/fscache 0x3d760097 fscache_io_error +EXPORT_SYMBOL fs/fscache/fscache 0x44af55f6 __fscache_maybe_release_page +EXPORT_SYMBOL fs/fscache/fscache 0x46046833 fscache_enqueue_operation +EXPORT_SYMBOL fs/fscache/fscache 0x549325af __fscache_attr_changed +EXPORT_SYMBOL fs/fscache/fscache 0x59700fdd __fscache_wait_on_invalidate +EXPORT_SYMBOL fs/fscache/fscache 0x5f57bce6 __fscache_register_netfs +EXPORT_SYMBOL fs/fscache/fscache 0x619b2705 __fscache_check_consistency +EXPORT_SYMBOL fs/fscache/fscache 0x6a9d0348 __fscache_check_page_write +EXPORT_SYMBOL fs/fscache/fscache 0x6acefa42 fscache_cache_cleared_wq +EXPORT_SYMBOL fs/fscache/fscache 0x6e8ae6ac fscache_obtained_object +EXPORT_SYMBOL fs/fscache/fscache 0x730a8df5 __fscache_alloc_page +EXPORT_SYMBOL fs/fscache/fscache 0x74530ecd fscache_op_debug_id +EXPORT_SYMBOL fs/fscache/fscache 0x7a52f83c __fscache_invalidate +EXPORT_SYMBOL fs/fscache/fscache 0x807b6db0 __fscache_uncache_page +EXPORT_SYMBOL fs/fscache/fscache 0x817ed79b fscache_fsdef_index +EXPORT_SYMBOL fs/fscache/fscache 0xa08032fb fscache_put_operation +EXPORT_SYMBOL fs/fscache/fscache 0xa1593988 fscache_withdraw_cache +EXPORT_SYMBOL fs/fscache/fscache 0xa1739940 __fscache_disable_cookie +EXPORT_SYMBOL fs/fscache/fscache 0xc3b4d91b __fscache_unregister_netfs +EXPORT_SYMBOL fs/fscache/fscache 0xcd8d8df5 __fscache_acquire_cookie +EXPORT_SYMBOL fs/fscache/fscache 0xce06ca86 fscache_mark_pages_cached +EXPORT_SYMBOL fs/fscache/fscache 0xda1ebc4c fscache_object_mark_killed +EXPORT_SYMBOL fs/fscache/fscache 0xdb52a1cf fscache_operation_init +EXPORT_SYMBOL fs/fscache/fscache 0xe4971315 __fscache_uncache_all_inode_pages +EXPORT_SYMBOL fs/fscache/fscache 0xe56e038c fscache_object_destroy +EXPORT_SYMBOL fs/fscache/fscache 0xe677455d __fscache_readpages_cancel +EXPORT_SYMBOL fs/fscache/fscache 0xf078ebd2 fscache_add_cache +EXPORT_SYMBOL fs/fscache/fscache 0xff83130b __fscache_read_or_alloc_pages +EXPORT_SYMBOL fs/ocfs2/cluster/ocfs2_nodemanager 0xbfd7d7a2 o2hb_global_heartbeat_active +EXPORT_SYMBOL fs/quota/quota_tree 0x8366e125 qtree_entry_unused +EXPORT_SYMBOL fs/quota/quota_tree 0x8bdc4368 qtree_delete_dquot +EXPORT_SYMBOL fs/quota/quota_tree 0x9bc6a0f8 qtree_release_dquot +EXPORT_SYMBOL fs/quota/quota_tree 0xd5460431 qtree_get_next_id +EXPORT_SYMBOL fs/quota/quota_tree 0xdd2fb267 qtree_write_dquot +EXPORT_SYMBOL fs/quota/quota_tree 0xdf5d9da9 qtree_read_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 0xaa8106bc crc8_populate_msb +EXPORT_SYMBOL lib/crc8 0xc3cd034d crc8_populate_lsb +EXPORT_SYMBOL lib/crc8 0xe2aae5cc crc8 +EXPORT_SYMBOL lib/crypto/libarc4 0x2bb32ad1 arc4_setkey +EXPORT_SYMBOL lib/crypto/libarc4 0xcd47fcc4 arc4_crypt +EXPORT_SYMBOL lib/crypto/libblake2s 0x7bcc24fd blake2s256_hmac +EXPORT_SYMBOL lib/crypto/libblake2s 0xa3cefaa0 blake2s_update +EXPORT_SYMBOL lib/crypto/libblake2s 0xadae6df8 blake2s_final +EXPORT_SYMBOL lib/crypto/libblake2s-generic 0x755f4ba3 blake2s_compress_generic +EXPORT_SYMBOL lib/crypto/libchacha 0xcec122d7 chacha_crypt_generic +EXPORT_SYMBOL lib/crypto/libchacha20poly1305 0x147c3f2e chacha20poly1305_encrypt +EXPORT_SYMBOL lib/crypto/libchacha20poly1305 0x1c679fe2 chacha20poly1305_decrypt +EXPORT_SYMBOL lib/crypto/libchacha20poly1305 0x37b34b92 chacha20poly1305_encrypt_sg_inplace +EXPORT_SYMBOL lib/crypto/libchacha20poly1305 0x5b19e187 chacha20poly1305_decrypt_sg_inplace +EXPORT_SYMBOL lib/crypto/libchacha20poly1305 0xbaf4d923 xchacha20poly1305_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 0x4dba97c6 poly1305_core_setkey +EXPORT_SYMBOL lib/crypto/libpoly1305 0xbcb90cb3 poly1305_core_emit +EXPORT_SYMBOL lib/libcrc32c 0x89a0cd52 crc32c_impl +EXPORT_SYMBOL lib/libcrc32c 0xb15b4109 crc32c +EXPORT_SYMBOL lib/lru_cache 0x0641307b lc_destroy +EXPORT_SYMBOL lib/lru_cache 0x098d2ed9 lc_try_get +EXPORT_SYMBOL lib/lru_cache 0x2d47ac83 lc_committed +EXPORT_SYMBOL lib/lru_cache 0x2f3dcecb lc_index_of +EXPORT_SYMBOL lib/lru_cache 0x33d62c28 lc_seq_dump_details +EXPORT_SYMBOL lib/lru_cache 0x4522d82a lc_reset +EXPORT_SYMBOL lib/lru_cache 0x4cf5f5a8 lc_is_used +EXPORT_SYMBOL lib/lru_cache 0x50bfb251 lc_seq_printf_stats +EXPORT_SYMBOL lib/lru_cache 0x5752f31b lc_del +EXPORT_SYMBOL lib/lru_cache 0x7257beee lc_element_by_index +EXPORT_SYMBOL lib/lru_cache 0x9134feb7 lc_get +EXPORT_SYMBOL lib/lru_cache 0xb672aa97 lc_create +EXPORT_SYMBOL lib/lru_cache 0xbfbe53d5 lc_get_cumulative +EXPORT_SYMBOL lib/lru_cache 0xc3a98c1d lc_try_lock +EXPORT_SYMBOL lib/lru_cache 0xcc979a91 lc_set +EXPORT_SYMBOL lib/lru_cache 0xefec290a lc_find +EXPORT_SYMBOL lib/lru_cache 0xfd525ec7 lc_put +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 0x92fa27b6 lowpan_nhc_del +EXPORT_SYMBOL net/6lowpan/6lowpan 0xc8c10369 lowpan_unregister_netdevice +EXPORT_SYMBOL net/6lowpan/6lowpan 0xd2838240 lowpan_nhc_add +EXPORT_SYMBOL net/6lowpan/6lowpan 0xd30e334c lowpan_unregister_netdev +EXPORT_SYMBOL net/6lowpan/6lowpan 0xd4c070d8 lowpan_register_netdev +EXPORT_SYMBOL net/6lowpan/6lowpan 0xe00b229a lowpan_register_netdevice +EXPORT_SYMBOL net/802/p8022 0x6e282a39 register_8022_client +EXPORT_SYMBOL net/802/p8022 0xfc2b5a63 unregister_8022_client +EXPORT_SYMBOL net/802/psnap 0xebddd0f2 unregister_snap_client +EXPORT_SYMBOL net/802/psnap 0xfecc3d1a register_snap_client +EXPORT_SYMBOL net/9p/9pnet 0x119c37f0 p9_client_getlock_dotl +EXPORT_SYMBOL net/9p/9pnet 0x1430723c p9_req_put +EXPORT_SYMBOL net/9p/9pnet 0x1843ecdc p9_client_mknod_dotl +EXPORT_SYMBOL net/9p/9pnet 0x2407c7ae p9_show_client_options +EXPORT_SYMBOL net/9p/9pnet 0x2c26b9c5 p9_client_begin_disconnect +EXPORT_SYMBOL net/9p/9pnet 0x2eefbab8 p9_client_write +EXPORT_SYMBOL net/9p/9pnet 0x2f9d48a3 p9_client_readlink +EXPORT_SYMBOL net/9p/9pnet 0x3026d67c p9_client_symlink +EXPORT_SYMBOL net/9p/9pnet 0x34022e69 p9_client_read +EXPORT_SYMBOL net/9p/9pnet 0x3d73a797 p9_errstr2errno +EXPORT_SYMBOL net/9p/9pnet 0x41ce9823 p9stat_read +EXPORT_SYMBOL net/9p/9pnet 0x452a1375 p9_client_walk +EXPORT_SYMBOL net/9p/9pnet 0x4590278a p9_client_read_once +EXPORT_SYMBOL net/9p/9pnet 0x499cab15 p9_client_create_dotl +EXPORT_SYMBOL net/9p/9pnet 0x536f64e9 p9_client_destroy +EXPORT_SYMBOL net/9p/9pnet 0x54c0dc76 v9fs_get_default_trans +EXPORT_SYMBOL net/9p/9pnet 0x5e9344bb p9_client_setattr +EXPORT_SYMBOL net/9p/9pnet 0x62955a9e p9_client_rename +EXPORT_SYMBOL net/9p/9pnet 0x668c4ee5 p9_tag_lookup +EXPORT_SYMBOL net/9p/9pnet 0x67043bcc p9_client_link +EXPORT_SYMBOL net/9p/9pnet 0x7348ef66 p9_client_fsync +EXPORT_SYMBOL net/9p/9pnet 0x78cd6ec5 p9_client_stat +EXPORT_SYMBOL net/9p/9pnet 0x810da401 v9fs_register_trans +EXPORT_SYMBOL net/9p/9pnet 0x8262d966 p9_client_readdir +EXPORT_SYMBOL net/9p/9pnet 0x8b78194d p9_release_pages +EXPORT_SYMBOL net/9p/9pnet 0x95bd8f96 p9dirent_read +EXPORT_SYMBOL net/9p/9pnet 0x963fb8c5 v9fs_unregister_trans +EXPORT_SYMBOL net/9p/9pnet 0x984c5e73 p9_fcall_fini +EXPORT_SYMBOL net/9p/9pnet 0x9df022f4 p9_client_attach +EXPORT_SYMBOL net/9p/9pnet 0xa0544895 v9fs_get_trans_by_name +EXPORT_SYMBOL net/9p/9pnet 0xa58be265 p9_client_cb +EXPORT_SYMBOL net/9p/9pnet 0xa5c006ad p9_client_remove +EXPORT_SYMBOL net/9p/9pnet 0xa8f08678 p9_is_proto_dotu +EXPORT_SYMBOL net/9p/9pnet 0xb3cdf3b8 p9_client_lock_dotl +EXPORT_SYMBOL net/9p/9pnet 0xb79f25fd p9_parse_header +EXPORT_SYMBOL net/9p/9pnet 0xb832f275 p9_client_wstat +EXPORT_SYMBOL net/9p/9pnet 0xb84d18d5 p9_client_renameat +EXPORT_SYMBOL net/9p/9pnet 0xbaed13f9 p9_client_mkdir_dotl +EXPORT_SYMBOL net/9p/9pnet 0xc00f9510 p9_is_proto_dotl +EXPORT_SYMBOL net/9p/9pnet 0xc0e06642 p9_client_unlinkat +EXPORT_SYMBOL net/9p/9pnet 0xd384c683 p9stat_free +EXPORT_SYMBOL net/9p/9pnet 0xdc7534af p9_client_clunk +EXPORT_SYMBOL net/9p/9pnet 0xde95f8e7 p9_client_getattr_dotl +EXPORT_SYMBOL net/9p/9pnet 0xe0a79a0e p9_client_fcreate +EXPORT_SYMBOL net/9p/9pnet 0xe5089dbd p9_client_open +EXPORT_SYMBOL net/9p/9pnet 0xe58a3360 p9_error_init +EXPORT_SYMBOL net/9p/9pnet 0xebb62687 p9_client_statfs +EXPORT_SYMBOL net/9p/9pnet 0xf3091b1f p9_client_disconnect +EXPORT_SYMBOL net/9p/9pnet 0xf4730905 p9_client_create +EXPORT_SYMBOL net/appletalk/appletalk 0x336e34ec atalk_find_dev_addr +EXPORT_SYMBOL net/appletalk/appletalk 0x775cd533 atrtr_get_dev +EXPORT_SYMBOL net/appletalk/appletalk 0xcc6c4479 aarp_send_ddp +EXPORT_SYMBOL net/appletalk/appletalk 0xcf804dd3 alloc_ltalkdev +EXPORT_SYMBOL net/atm/atm 0x035ad638 atm_alloc_charge +EXPORT_SYMBOL net/atm/atm 0x2cc2d52d vcc_hash +EXPORT_SYMBOL net/atm/atm 0x3886685b deregister_atm_ioctl +EXPORT_SYMBOL net/atm/atm 0x4443d399 atm_proc_root +EXPORT_SYMBOL net/atm/atm 0x44c6e633 vcc_sklist_lock +EXPORT_SYMBOL net/atm/atm 0x4ebdbae2 atm_charge +EXPORT_SYMBOL net/atm/atm 0x60bb08df atm_dev_lookup +EXPORT_SYMBOL net/atm/atm 0x6bcaf42c atm_dev_deregister +EXPORT_SYMBOL net/atm/atm 0x7db23fad atm_dev_register +EXPORT_SYMBOL net/atm/atm 0x88e9957a vcc_process_recv_queue +EXPORT_SYMBOL net/atm/atm 0x9feaf287 sonet_subtract_stats +EXPORT_SYMBOL net/atm/atm 0xaa024146 sonet_copy_stats +EXPORT_SYMBOL net/atm/atm 0xabf99122 vcc_insert_socket +EXPORT_SYMBOL net/atm/atm 0xcd149275 atm_init_aal5 +EXPORT_SYMBOL net/atm/atm 0xdeadefc1 register_atm_ioctl +EXPORT_SYMBOL net/atm/atm 0xe4b3931e atm_dev_signal_change +EXPORT_SYMBOL net/atm/atm 0xf063ec54 atm_dev_release_vccs +EXPORT_SYMBOL net/atm/atm 0xf49bc67a atm_pcr_goal +EXPORT_SYMBOL net/atm/atm 0xfda160fb vcc_release_async +EXPORT_SYMBOL net/ax25/ax25 0x14cecd59 ax25_display_timer +EXPORT_SYMBOL net/ax25/ax25 0x242852b9 ax25_uid_policy +EXPORT_SYMBOL net/ax25/ax25 0x253b2e7c ax25_listen_register +EXPORT_SYMBOL net/ax25/ax25 0x33e521af ax25_find_cb +EXPORT_SYMBOL net/ax25/ax25 0x3481dd6a ax25_linkfail_register +EXPORT_SYMBOL net/ax25/ax25 0x4502c65a asc2ax +EXPORT_SYMBOL net/ax25/ax25 0x53dea1ff ax2asc +EXPORT_SYMBOL net/ax25/ax25 0x66e5f210 ax25_listen_release +EXPORT_SYMBOL net/ax25/ax25 0x787b8e25 ax25_ip_xmit +EXPORT_SYMBOL net/ax25/ax25 0x8ede9e26 ax25_protocol_release +EXPORT_SYMBOL net/ax25/ax25 0x90d10e7d ax25_header_ops +EXPORT_SYMBOL net/ax25/ax25 0xa79899dd ax25_send_frame +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/ax25/ax25 0xff3d9870 ax25_linkfail_release +EXPORT_SYMBOL net/bridge/netfilter/ebtables 0x288e03f6 ebt_register_table +EXPORT_SYMBOL net/bridge/netfilter/ebtables 0x371109d5 ebt_unregister_table +EXPORT_SYMBOL net/bridge/netfilter/ebtables 0xddff8f3a ebt_do_table +EXPORT_SYMBOL net/caif/caif 0x1446b60a caif_client_register_refcnt +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 0x69e65275 caif_enroll_dev +EXPORT_SYMBOL net/caif/caif 0x839ddb7b cfcnfg_set_phy_state +EXPORT_SYMBOL net/caif/caif 0x9aaf4994 cfcnfg_add_phy_layer +EXPORT_SYMBOL net/caif/caif 0x9e3e305d cfpkt_set_prio +EXPORT_SYMBOL net/caif/caif 0x9e90e316 caif_connect_client +EXPORT_SYMBOL net/caif/caif 0xa0976ca5 caif_disconnect_client +EXPORT_SYMBOL net/caif/caif 0xb7b6874e caif_free_client +EXPORT_SYMBOL net/caif/caif 0xc15bed7a get_cfcnfg +EXPORT_SYMBOL net/can/can 0x3943c2d1 can_sock_destruct +EXPORT_SYMBOL net/can/can 0x5eb6db31 can_rx_unregister +EXPORT_SYMBOL net/can/can 0x67ab2e36 can_send +EXPORT_SYMBOL net/can/can 0xadd34f19 can_proto_register +EXPORT_SYMBOL net/can/can 0xaf00b090 can_proto_unregister +EXPORT_SYMBOL net/can/can 0xd12934ce can_rx_register +EXPORT_SYMBOL net/ceph/libceph 0x0130bc34 osd_req_op_alloc_hint_init +EXPORT_SYMBOL net/ceph/libceph 0x017db6c5 osd_req_op_extent_osd_data_bvec_pos +EXPORT_SYMBOL net/ceph/libceph 0x03608fa4 ceph_auth_add_authorizer_challenge +EXPORT_SYMBOL net/ceph/libceph 0x063277cc ceph_osdc_put_request +EXPORT_SYMBOL net/ceph/libceph 0x0c6341aa ceph_osdc_watch +EXPORT_SYMBOL net/ceph/libceph 0x113b77d7 __ceph_open_session +EXPORT_SYMBOL net/ceph/libceph 0x165b1948 ceph_pagelist_free_reserve +EXPORT_SYMBOL net/ceph/libceph 0x17b27e54 ceph_alloc_page_vector +EXPORT_SYMBOL net/ceph/libceph 0x1f1ec1f9 ceph_osdc_copy_from +EXPORT_SYMBOL net/ceph/libceph 0x2087719e ceph_oid_copy +EXPORT_SYMBOL net/ceph/libceph 0x20b5fd04 ceph_monc_stop +EXPORT_SYMBOL net/ceph/libceph 0x2101cbc9 ceph_oid_destroy +EXPORT_SYMBOL net/ceph/libceph 0x2494626d ceph_object_locator_to_pg +EXPORT_SYMBOL net/ceph/libceph 0x26445dfb osd_req_op_extent_osd_data_bvecs +EXPORT_SYMBOL net/ceph/libceph 0x287ace1e ceph_msg_new2 +EXPORT_SYMBOL net/ceph/libceph 0x2a4e2698 ceph_parse_param +EXPORT_SYMBOL net/ceph/libceph 0x2a983d26 ceph_pagelist_release +EXPORT_SYMBOL net/ceph/libceph 0x2d77b695 ceph_client_addr +EXPORT_SYMBOL net/ceph/libceph 0x301e3e4d ceph_osdc_maybe_request_map +EXPORT_SYMBOL net/ceph/libceph 0x3254aeb0 ceph_msg_data_add_pages +EXPORT_SYMBOL net/ceph/libceph 0x332ba657 ceph_osdc_start_request +EXPORT_SYMBOL net/ceph/libceph 0x3847dc33 ceph_con_open +EXPORT_SYMBOL net/ceph/libceph 0x38a91469 ceph_msg_new +EXPORT_SYMBOL net/ceph/libceph 0x38f2d94e ceph_file_to_extents +EXPORT_SYMBOL net/ceph/libceph 0x39295f6a ceph_osdc_cancel_request +EXPORT_SYMBOL net/ceph/libceph 0x3c8d7111 ceph_get_num_objects +EXPORT_SYMBOL net/ceph/libceph 0x3d582376 ceph_monc_validate_auth +EXPORT_SYMBOL net/ceph/libceph 0x3fec3780 ceph_osdc_call +EXPORT_SYMBOL net/ceph/libceph 0x417a9131 ceph_oloc_destroy +EXPORT_SYMBOL net/ceph/libceph 0x42728c96 osd_req_op_xattr_init +EXPORT_SYMBOL net/ceph/libceph 0x4280c718 ceph_messenger_fini +EXPORT_SYMBOL net/ceph/libceph 0x42bcf580 ceph_msg_data_add_bio +EXPORT_SYMBOL net/ceph/libceph 0x4551d153 osd_req_op_cls_request_data_bvecs +EXPORT_SYMBOL net/ceph/libceph 0x45b07be7 ceph_open_session +EXPORT_SYMBOL net/ceph/libceph 0x46555f2e ceph_pg_poolid_by_name +EXPORT_SYMBOL net/ceph/libceph 0x466b85b8 libceph_compatible +EXPORT_SYMBOL net/ceph/libceph 0x499c7c71 ceph_osdc_get_request +EXPORT_SYMBOL net/ceph/libceph 0x4f546acc ceph_copy_to_page_vector +EXPORT_SYMBOL net/ceph/libceph 0x57baf885 ceph_str_hash +EXPORT_SYMBOL net/ceph/libceph 0x5aeeee62 ceph_oid_aprintf +EXPORT_SYMBOL net/ceph/libceph 0x5b4f0f93 ceph_create_client +EXPORT_SYMBOL net/ceph/libceph 0x5c27bb6b ceph_cls_break_lock +EXPORT_SYMBOL net/ceph/libceph 0x5d5b725d ceph_msg_data_add_pagelist +EXPORT_SYMBOL net/ceph/libceph 0x5e0ec6a3 ceph_pg_pool_name_by_id +EXPORT_SYMBOL net/ceph/libceph 0x60bb51fa osd_req_op_init +EXPORT_SYMBOL net/ceph/libceph 0x6101eff1 ceph_auth_verify_authorizer_reply +EXPORT_SYMBOL net/ceph/libceph 0x63758856 ceph_str_hash_name +EXPORT_SYMBOL net/ceph/libceph 0x6a7a38a0 ceph_pr_addr +EXPORT_SYMBOL net/ceph/libceph 0x6c80b134 ceph_msg_data_add_bvecs +EXPORT_SYMBOL net/ceph/libceph 0x6d25a134 ceph_osdc_new_request +EXPORT_SYMBOL net/ceph/libceph 0x6e477464 ceph_monc_wait_osdmap +EXPORT_SYMBOL net/ceph/libceph 0x6f3a25ef osd_req_op_cls_init +EXPORT_SYMBOL net/ceph/libceph 0x72574bf2 osd_req_op_cls_request_data_pages +EXPORT_SYMBOL net/ceph/libceph 0x72f2d383 ceph_monc_do_statfs +EXPORT_SYMBOL net/ceph/libceph 0x7358e4c4 ceph_alloc_options +EXPORT_SYMBOL net/ceph/libceph 0x751ec2bb ceph_msg_dump +EXPORT_SYMBOL net/ceph/libceph 0x767a8323 ceph_auth_is_authenticated +EXPORT_SYMBOL net/ceph/libceph 0x76cea558 ceph_release_page_vector +EXPORT_SYMBOL net/ceph/libceph 0x7a594a34 osd_req_op_extent_osd_data_bio +EXPORT_SYMBOL net/ceph/libceph 0x7d3027fb ceph_check_fsid +EXPORT_SYMBOL net/ceph/libceph 0x7fc543db ceph_monc_open_session +EXPORT_SYMBOL net/ceph/libceph 0x80027508 ceph_zero_page_vector_range +EXPORT_SYMBOL net/ceph/libceph 0x821e3f11 ceph_client_gid +EXPORT_SYMBOL net/ceph/libceph 0x86fca7e4 ceph_put_snap_context +EXPORT_SYMBOL net/ceph/libceph 0x8712d379 ceph_monc_blacklist_add +EXPORT_SYMBOL net/ceph/libceph 0x890cd080 ceph_messenger_init +EXPORT_SYMBOL net/ceph/libceph 0x8e373662 osd_req_op_extent_osd_data +EXPORT_SYMBOL net/ceph/libceph 0x95b04e17 ceph_wait_for_latest_osdmap +EXPORT_SYMBOL net/ceph/libceph 0x965308c6 ceph_compare_options +EXPORT_SYMBOL net/ceph/libceph 0x969d8b87 ceph_osdc_abort_requests +EXPORT_SYMBOL net/ceph/libceph 0x98ef7983 ceph_reset_client_addr +EXPORT_SYMBOL net/ceph/libceph 0x9aa37d1a ceph_osdc_notify +EXPORT_SYMBOL net/ceph/libceph 0x9b2f3478 ceph_pg_pool_flags +EXPORT_SYMBOL net/ceph/libceph 0x9bc6b539 ceph_find_or_create_string +EXPORT_SYMBOL net/ceph/libceph 0x9c4682de ceph_osdc_alloc_messages +EXPORT_SYMBOL net/ceph/libceph 0x9c5e5078 ceph_auth_invalidate_authorizer +EXPORT_SYMBOL net/ceph/libceph 0x9ca95932 ceph_create_snap_context +EXPORT_SYMBOL net/ceph/libceph 0x9ef5bba3 ceph_con_send +EXPORT_SYMBOL net/ceph/libceph 0x9f868a66 ceph_osdc_clear_abort_err +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 0xa159a840 ceph_con_keepalive +EXPORT_SYMBOL net/ceph/libceph 0xa42c5b4d ceph_destroy_client +EXPORT_SYMBOL net/ceph/libceph 0xa698f998 ceph_free_lockers +EXPORT_SYMBOL net/ceph/libceph 0xaa35a65d ceph_put_page_vector +EXPORT_SYMBOL net/ceph/libceph 0xad703657 ceph_auth_destroy_authorizer +EXPORT_SYMBOL net/ceph/libceph 0xae9cfa8c ceph_cls_set_cookie +EXPORT_SYMBOL net/ceph/libceph 0xafb8a407 ceph_msgr_flush +EXPORT_SYMBOL net/ceph/libceph 0xb10081a4 ceph_osdc_update_epoch_barrier +EXPORT_SYMBOL net/ceph/libceph 0xb28c9eff ceph_osdc_notify_ack +EXPORT_SYMBOL net/ceph/libceph 0xb293e4f7 ceph_copy_from_page_vector +EXPORT_SYMBOL net/ceph/libceph 0xb387da66 osd_req_op_extent_update +EXPORT_SYMBOL net/ceph/libceph 0xb5074230 ceph_monc_get_version_async +EXPORT_SYMBOL net/ceph/libceph 0xb54676fa ceph_msg_type_name +EXPORT_SYMBOL net/ceph/libceph 0xb72c162e ceph_buffer_release +EXPORT_SYMBOL net/ceph/libceph 0xb8ca16dc ceph_osdc_wait_request +EXPORT_SYMBOL net/ceph/libceph 0xbbfc03e6 osd_req_op_extent_osd_data_pages +EXPORT_SYMBOL net/ceph/libceph 0xbd2f79ae ceph_oloc_copy +EXPORT_SYMBOL net/ceph/libceph 0xbd426d2b ceph_msg_get +EXPORT_SYMBOL net/ceph/libceph 0xbd635679 ceph_cls_lock_info +EXPORT_SYMBOL net/ceph/libceph 0xbd8c1313 ceph_destroy_options +EXPORT_SYMBOL net/ceph/libceph 0xbe3879aa ceph_get_snap_context +EXPORT_SYMBOL net/ceph/libceph 0xc0e686dc ceph_con_init +EXPORT_SYMBOL net/ceph/libceph 0xc20c2cf3 osd_req_op_extent_init +EXPORT_SYMBOL net/ceph/libceph 0xc366bfa1 ceph_pagelist_truncate +EXPORT_SYMBOL net/ceph/libceph 0xc5c0652e ceph_con_close +EXPORT_SYMBOL net/ceph/libceph 0xc60b6526 osd_req_op_raw_data_in_pages +EXPORT_SYMBOL net/ceph/libceph 0xc68f1d53 ceph_osdc_alloc_request +EXPORT_SYMBOL net/ceph/libceph 0xc966a790 ceph_osdc_list_watchers +EXPORT_SYMBOL net/ceph/libceph 0xc9d27e39 ceph_copy_user_to_page_vector +EXPORT_SYMBOL net/ceph/libceph 0xca5a0a13 osd_req_op_extent_dup_last +EXPORT_SYMBOL net/ceph/libceph 0xca80437b ceph_extent_to_file +EXPORT_SYMBOL net/ceph/libceph 0xd0aecb97 osd_req_op_cls_response_data_pages +EXPORT_SYMBOL net/ceph/libceph 0xd26368cd ceph_osdc_flush_notifies +EXPORT_SYMBOL net/ceph/libceph 0xd4eb7735 ceph_decode_entity_addr +EXPORT_SYMBOL net/ceph/libceph 0xd723e0f5 ceph_cls_lock +EXPORT_SYMBOL net/ceph/libceph 0xd8d35e9e ceph_monc_got_map +EXPORT_SYMBOL net/ceph/libceph 0xd8e6b70d osd_req_op_extent_osd_data_pagelist +EXPORT_SYMBOL net/ceph/libceph 0xddb4d0e3 ceph_cls_assert_locked +EXPORT_SYMBOL net/ceph/libceph 0xdf6ef4a1 ceph_oid_printf +EXPORT_SYMBOL net/ceph/libceph 0xdfc091f9 ceph_entity_type_name +EXPORT_SYMBOL net/ceph/libceph 0xe0006215 ceph_auth_create_authorizer +EXPORT_SYMBOL net/ceph/libceph 0xe2d15c53 osd_req_op_cls_request_data_pagelist +EXPORT_SYMBOL net/ceph/libceph 0xe76e7226 ceph_pagelist_alloc +EXPORT_SYMBOL net/ceph/libceph 0xe7b0fa81 ceph_msg_put +EXPORT_SYMBOL net/ceph/libceph 0xe9827b41 ceph_parse_mon_ips +EXPORT_SYMBOL net/ceph/libceph 0xe9bd0bcf ceph_monc_renew_subs +EXPORT_SYMBOL net/ceph/libceph 0xea46a86b ceph_auth_update_authorizer +EXPORT_SYMBOL net/ceph/libceph 0xecf4e96e ceph_print_client_options +EXPORT_SYMBOL net/ceph/libceph 0xee120c03 ceph_release_string +EXPORT_SYMBOL net/ceph/libceph 0xeef6cfa3 ceph_iterate_extents +EXPORT_SYMBOL net/ceph/libceph 0xef65f2f5 ceph_pg_to_acting_primary +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 0xf23a5ecd ceph_monc_get_version +EXPORT_SYMBOL net/ceph/libceph 0xf5a1ee85 ceph_monc_init +EXPORT_SYMBOL net/ceph/libceph 0xf798026a ceph_cls_unlock +EXPORT_SYMBOL net/ceph/libceph 0xf98f5f91 ceph_osdc_unwatch +EXPORT_SYMBOL net/ceph/libceph 0xfeb7c5eb ceph_osdc_sync +EXPORT_SYMBOL net/ceph/libceph 0xfee52002 ceph_monc_want_map +EXPORT_SYMBOL net/dccp/dccp_ipv4 0x4b07ee4a dccp_syn_ack_timeout +EXPORT_SYMBOL net/dccp/dccp_ipv4 0xfe421e65 dccp_req_err +EXPORT_SYMBOL net/dsa/dsa_core 0x160a9bda dsa_port_vid_add +EXPORT_SYMBOL net/dsa/dsa_core 0x59348a3f dsa_port_vid_del +EXPORT_SYMBOL net/ieee802154/ieee802154 0x09521fbe wpan_phy_for_each +EXPORT_SYMBOL net/ieee802154/ieee802154 0x757abbf1 wpan_phy_unregister +EXPORT_SYMBOL net/ieee802154/ieee802154 0x99699115 wpan_phy_find +EXPORT_SYMBOL net/ieee802154/ieee802154 0xcef7e8fe wpan_phy_register +EXPORT_SYMBOL net/ieee802154/ieee802154 0xe19e1870 wpan_phy_free +EXPORT_SYMBOL net/ieee802154/ieee802154 0xe5bdea4f wpan_phy_new +EXPORT_SYMBOL net/ipv4/fou 0x1757d1a4 fou_encap_hlen +EXPORT_SYMBOL net/ipv4/fou 0x360bbfa3 __gue_build_header +EXPORT_SYMBOL net/ipv4/fou 0x58502732 __fou_build_header +EXPORT_SYMBOL net/ipv4/fou 0xf13914b3 gue_encap_hlen +EXPORT_SYMBOL net/ipv4/gre 0x2eb5050c gre_parse_header +EXPORT_SYMBOL net/ipv4/netfilter/arp_tables 0x340d4a12 arpt_unregister_table +EXPORT_SYMBOL net/ipv4/netfilter/arp_tables 0x85a8ee63 arpt_register_table +EXPORT_SYMBOL net/ipv4/netfilter/arp_tables 0xdb8bb987 arpt_do_table +EXPORT_SYMBOL net/ipv4/netfilter/ip_tables 0x27c9f957 ipt_register_table +EXPORT_SYMBOL net/ipv4/netfilter/ip_tables 0x5af824a1 ipt_unregister_table_exit +EXPORT_SYMBOL net/ipv4/netfilter/ip_tables 0xb4b6c8ec ipt_do_table +EXPORT_SYMBOL net/ipv4/netfilter/ip_tables 0xc16b3f07 ipt_unregister_table_pre_exit +EXPORT_SYMBOL net/ipv4/netfilter/ip_tables 0xdb5b7d90 ipt_unregister_table +EXPORT_SYMBOL net/ipv4/tunnel4 0x0cbdf055 xfrm4_tunnel_deregister +EXPORT_SYMBOL net/ipv4/tunnel4 0x69159380 xfrm4_tunnel_register +EXPORT_SYMBOL net/ipv6/ip6_tunnel 0x353d9d00 ip6_tnl_get_cap +EXPORT_SYMBOL net/ipv6/ip6_tunnel 0x6dc3fd99 ip6_tnl_get_link_net +EXPORT_SYMBOL net/ipv6/ip6_tunnel 0x822d9b91 ip6_tnl_rcv +EXPORT_SYMBOL net/ipv6/ip6_tunnel 0x93c63706 ip6_tnl_encap_add_ops +EXPORT_SYMBOL net/ipv6/ip6_tunnel 0x9b11ca26 ip6_tnl_change_mtu +EXPORT_SYMBOL net/ipv6/ip6_tunnel 0xbae67e31 ip6_tnl_encap_del_ops +EXPORT_SYMBOL net/ipv6/ip6_tunnel 0xd8b5e2b4 ip6_tnl_parse_tlv_enc_lim +EXPORT_SYMBOL net/ipv6/ip6_tunnel 0xf5cff1ab ip6_tnl_get_iflink +EXPORT_SYMBOL net/ipv6/ip6_tunnel 0xfb9b4e90 ip6_tnl_xmit +EXPORT_SYMBOL net/ipv6/netfilter/ip6_tables 0x080499a1 ip6t_do_table +EXPORT_SYMBOL net/ipv6/netfilter/ip6_tables 0x354b704a ip6t_unregister_table_pre_exit +EXPORT_SYMBOL net/ipv6/netfilter/ip6_tables 0x38aa8ae8 ip6t_unregister_table_exit +EXPORT_SYMBOL net/ipv6/netfilter/ip6_tables 0xf4036bc6 ip6t_register_table +EXPORT_SYMBOL net/ipv6/netfilter/ip6_tables 0xfbb03380 ip6t_unregister_table +EXPORT_SYMBOL net/ipv6/tunnel6 0x15230939 xfrm6_tunnel_register +EXPORT_SYMBOL net/ipv6/tunnel6 0xf7f75716 xfrm6_tunnel_deregister +EXPORT_SYMBOL net/ipv6/xfrm6_tunnel 0xae551329 xfrm6_tunnel_alloc_spi +EXPORT_SYMBOL net/ipv6/xfrm6_tunnel 0xf6ad24a4 xfrm6_tunnel_spi_lookup +EXPORT_SYMBOL net/l2tp/l2tp_core 0xa7ae538a l2tp_tunnel_free +EXPORT_SYMBOL net/l2tp/l2tp_core 0xc24a87a7 l2tp_recv_common +EXPORT_SYMBOL net/l2tp/l2tp_ip 0x56b27c11 l2tp_ioctl +EXPORT_SYMBOL net/lapb/lapb 0x28314efb lapb_data_received +EXPORT_SYMBOL net/lapb/lapb 0x6358977d lapb_connect_request +EXPORT_SYMBOL net/lapb/lapb 0x81e3cc1f lapb_disconnect_request +EXPORT_SYMBOL net/lapb/lapb 0x96993ace lapb_setparms +EXPORT_SYMBOL net/lapb/lapb 0xa6eba8fb lapb_register +EXPORT_SYMBOL net/lapb/lapb 0xb07ad419 lapb_getparms +EXPORT_SYMBOL net/lapb/lapb 0xbba1c9ee lapb_unregister +EXPORT_SYMBOL net/lapb/lapb 0xf3e31560 lapb_data_request +EXPORT_SYMBOL net/llc/llc 0x38b92846 llc_remove_pack +EXPORT_SYMBOL net/llc/llc 0x4151566e llc_add_pack +EXPORT_SYMBOL net/llc/llc 0x52d7b2fd llc_sap_list +EXPORT_SYMBOL net/llc/llc 0x62e53f9a llc_set_station_handler +EXPORT_SYMBOL net/llc/llc 0x7490629f llc_sap_close +EXPORT_SYMBOL net/llc/llc 0x756f73a4 llc_build_and_send_ui_pkt +EXPORT_SYMBOL net/llc/llc 0xb48777b1 llc_sap_find +EXPORT_SYMBOL net/llc/llc 0xc453866a llc_mac_hdr_init +EXPORT_SYMBOL net/llc/llc 0xf0ab1d27 llc_sap_open +EXPORT_SYMBOL net/mac80211/mac80211 0x03aac0c4 ieee80211_iter_keys +EXPORT_SYMBOL net/mac80211/mac80211 0x05e486fc ieee80211_rate_control_unregister +EXPORT_SYMBOL net/mac80211/mac80211 0x063f5308 ieee80211_get_tkip_p1k_iv +EXPORT_SYMBOL net/mac80211/mac80211 0x07819f38 ieee80211_nan_func_match +EXPORT_SYMBOL net/mac80211/mac80211 0x0a46a5e0 ieee80211_queue_stopped +EXPORT_SYMBOL net/mac80211/mac80211 0x0cffc4f1 ieee80211_get_buffered_bc +EXPORT_SYMBOL net/mac80211/mac80211 0x0f5577a4 ieee80211_tdls_oper_request +EXPORT_SYMBOL net/mac80211/mac80211 0x104c1e3b ieee80211_sta_pspoll +EXPORT_SYMBOL net/mac80211/mac80211 0x140dcc66 ieee80211_next_txq +EXPORT_SYMBOL net/mac80211/mac80211 0x179340c4 ieee80211_tx_dequeue +EXPORT_SYMBOL net/mac80211/mac80211 0x183dcd3b ieee80211_get_key_rx_seq +EXPORT_SYMBOL net/mac80211/mac80211 0x19f37f0d ieee80211_update_p2p_noa +EXPORT_SYMBOL net/mac80211/mac80211 0x1a66fc17 ieee80211_get_tkip_rx_p1k +EXPORT_SYMBOL net/mac80211/mac80211 0x212638e9 __ieee80211_get_assoc_led_name +EXPORT_SYMBOL net/mac80211/mac80211 0x231cf18e ieee80211_get_tx_rates +EXPORT_SYMBOL net/mac80211/mac80211 0x236b61cb ieee80211_start_tx_ba_cb_irqsafe +EXPORT_SYMBOL net/mac80211/mac80211 0x24ac07b3 ieee80211_tx_status +EXPORT_SYMBOL net/mac80211/mac80211 0x26ef5c04 ieee80211_ctstoself_get +EXPORT_SYMBOL net/mac80211/mac80211 0x281cc810 ieee80211_manage_rx_ba_offl +EXPORT_SYMBOL net/mac80211/mac80211 0x2c95c5d9 __ieee80211_get_rx_led_name +EXPORT_SYMBOL net/mac80211/mac80211 0x2d05bd23 ieee80211_queue_delayed_work +EXPORT_SYMBOL net/mac80211/mac80211 0x38701481 ieee80211_rx_irqsafe +EXPORT_SYMBOL net/mac80211/mac80211 0x38d11f0b ieee80211_disable_rssi_reports +EXPORT_SYMBOL net/mac80211/mac80211 0x394a1492 ieee80211_connection_loss +EXPORT_SYMBOL net/mac80211/mac80211 0x395bc890 ieee80211_tx_status_8023 +EXPORT_SYMBOL net/mac80211/mac80211 0x3a21dea6 ieee80211_txq_get_depth +EXPORT_SYMBOL net/mac80211/mac80211 0x3d7adad1 ieee80211_sta_register_airtime +EXPORT_SYMBOL net/mac80211/mac80211 0x3d852ea0 ieee80211_enable_rssi_reports +EXPORT_SYMBOL net/mac80211/mac80211 0x3ded4506 ieee80211_csa_update_counter +EXPORT_SYMBOL net/mac80211/mac80211 0x3e1ef2a0 ieee80211_mark_rx_ba_filtered_frames +EXPORT_SYMBOL net/mac80211/mac80211 0x43e2d7a6 ieee80211_unregister_hw +EXPORT_SYMBOL net/mac80211/mac80211 0x468a11f5 ieee80211_nullfunc_get +EXPORT_SYMBOL net/mac80211/mac80211 0x47e30210 ieee80211_ctstoself_duration +EXPORT_SYMBOL net/mac80211/mac80211 0x49127160 ieee80211_alloc_hw_nm +EXPORT_SYMBOL net/mac80211/mac80211 0x4f8e98a0 __ieee80211_schedule_txq +EXPORT_SYMBOL net/mac80211/mac80211 0x5186a63e rate_control_set_rates +EXPORT_SYMBOL net/mac80211/mac80211 0x5b8d8103 ieee80211_tx_rate_update +EXPORT_SYMBOL net/mac80211/mac80211 0x5c78a272 ieee80211_stop_rx_ba_session +EXPORT_SYMBOL net/mac80211/mac80211 0x602ad563 ieee80211_txq_schedule_start +EXPORT_SYMBOL net/mac80211/mac80211 0x605df05f ieee80211_wake_queue +EXPORT_SYMBOL net/mac80211/mac80211 0x651b4918 ieee80211_tx_prepare_skb +EXPORT_SYMBOL net/mac80211/mac80211 0x67be183b ieee80211_sta_block_awake +EXPORT_SYMBOL net/mac80211/mac80211 0x67d748e0 ieee80211_sta_set_buffered +EXPORT_SYMBOL net/mac80211/mac80211 0x69c9aa50 ieee80211_iter_keys_rcu +EXPORT_SYMBOL net/mac80211/mac80211 0x6a82bc0e ieee80211_tx_status_ext +EXPORT_SYMBOL net/mac80211/mac80211 0x6c95a3c0 ieee80211_beacon_get_tim +EXPORT_SYMBOL net/mac80211/mac80211 0x70eaedfc ieee80211_restart_hw +EXPORT_SYMBOL net/mac80211/mac80211 0x76899b7a __ieee80211_create_tpt_led_trigger +EXPORT_SYMBOL net/mac80211/mac80211 0x78b91cb7 ieee80211_send_bar +EXPORT_SYMBOL net/mac80211/mac80211 0x796bef13 __ieee80211_get_radio_led_name +EXPORT_SYMBOL net/mac80211/mac80211 0x79e7497d ieee80211_txq_airtime_check +EXPORT_SYMBOL net/mac80211/mac80211 0x7c0c6f9c ieee80211_wake_queues +EXPORT_SYMBOL net/mac80211/mac80211 0x7f6de49e ieee80211_find_sta +EXPORT_SYMBOL net/mac80211/mac80211 0x899eb182 ieee80211_unreserve_tid +EXPORT_SYMBOL net/mac80211/mac80211 0x8c15fd16 ieee80211_csa_is_complete +EXPORT_SYMBOL net/mac80211/mac80211 0x8d0e435e wiphy_to_ieee80211_hw +EXPORT_SYMBOL net/mac80211/mac80211 0x8d44f350 ieee80211_stop_queues +EXPORT_SYMBOL net/mac80211/mac80211 0x8fda57de ieee80211_pspoll_get +EXPORT_SYMBOL net/mac80211/mac80211 0x915d25f9 ieee80211_probereq_get +EXPORT_SYMBOL net/mac80211/mac80211 0x91deff6c ieee80211_scan_completed +EXPORT_SYMBOL net/mac80211/mac80211 0x92defa4b ieee80211_cqm_rssi_notify +EXPORT_SYMBOL net/mac80211/mac80211 0x961720d8 ieee80211_csa_set_counter +EXPORT_SYMBOL net/mac80211/mac80211 0x9617e2f3 ieee80211_chswitch_done +EXPORT_SYMBOL net/mac80211/mac80211 0x96bf8b81 ieee80211_nan_func_terminated +EXPORT_SYMBOL net/mac80211/mac80211 0x96ebc334 ieee80211_rx_ba_timer_expired +EXPORT_SYMBOL net/mac80211/mac80211 0x98cfd931 ieee80211_txq_may_transmit +EXPORT_SYMBOL net/mac80211/mac80211 0x991a0ca0 ieee80211_parse_p2p_noa +EXPORT_SYMBOL net/mac80211/mac80211 0x9e815006 ieee80211_rate_control_register +EXPORT_SYMBOL net/mac80211/mac80211 0xa03761fb ieee80211_generic_frame_duration +EXPORT_SYMBOL net/mac80211/mac80211 0xa0e9cf64 ieee80211_csa_finish +EXPORT_SYMBOL net/mac80211/mac80211 0xa7223141 ieee80211_rts_get +EXPORT_SYMBOL net/mac80211/mac80211 0xab2fb4f8 ieee80211_sched_scan_results +EXPORT_SYMBOL net/mac80211/mac80211 0xac6eb316 ieee80211_sta_eosp +EXPORT_SYMBOL net/mac80211/mac80211 0xae27006c ieee80211_set_hw_80211_encap +EXPORT_SYMBOL net/mac80211/mac80211 0xae4f4fdd ieee80211_rts_duration +EXPORT_SYMBOL net/mac80211/mac80211 0xb0d49b7b ieee80211_ap_probereq_get +EXPORT_SYMBOL net/mac80211/mac80211 0xb33aa404 ieee80211_queue_work +EXPORT_SYMBOL net/mac80211/mac80211 0xb76bdc93 ieee80211_tx_status_irqsafe +EXPORT_SYMBOL net/mac80211/mac80211 0xbbcb96e8 ieee80211_rx_napi +EXPORT_SYMBOL net/mac80211/mac80211 0xc159dcba ieee80211_report_low_ack +EXPORT_SYMBOL net/mac80211/mac80211 0xc16d3651 ieee80211_sched_scan_stopped +EXPORT_SYMBOL net/mac80211/mac80211 0xc2fbb6ea ieee80211_proberesp_get +EXPORT_SYMBOL net/mac80211/mac80211 0xc800a71d ieee80211_stop_queue +EXPORT_SYMBOL net/mac80211/mac80211 0xca0150c8 ieee80211_report_wowlan_wakeup +EXPORT_SYMBOL net/mac80211/mac80211 0xcf21aa13 ieee80211_radar_detected +EXPORT_SYMBOL net/mac80211/mac80211 0xcf22b26a ieee80211_send_eosp_nullfunc +EXPORT_SYMBOL net/mac80211/mac80211 0xd35a3258 ieee80211_stop_tx_ba_session +EXPORT_SYMBOL net/mac80211/mac80211 0xd3a05ff7 ieee80211_stop_tx_ba_cb_irqsafe +EXPORT_SYMBOL net/mac80211/mac80211 0xd6a8a09b ieee80211_free_hw +EXPORT_SYMBOL net/mac80211/mac80211 0xdf40f26d ieee80211_reserve_tid +EXPORT_SYMBOL net/mac80211/mac80211 0xeb13cd4c ieee80211_beacon_get_template +EXPORT_SYMBOL net/mac80211/mac80211 0xeb679053 ieee80211_sta_ps_transition +EXPORT_SYMBOL net/mac80211/mac80211 0xefa38864 ieee80211_start_tx_ba_session +EXPORT_SYMBOL net/mac80211/mac80211 0xf00a37b7 ieee80211_free_txskb +EXPORT_SYMBOL net/mac80211/mac80211 0xf12c737f ieee80211_register_hw +EXPORT_SYMBOL net/mac80211/mac80211 0xf7fe8d82 ieee80211_get_tkip_p2k +EXPORT_SYMBOL net/mac80211/mac80211 0xf851650f __ieee80211_get_tx_led_name +EXPORT_SYMBOL net/mac80211/mac80211 0xfd1b0783 ieee80211_sta_uapsd_trigger +EXPORT_SYMBOL net/mac80211/mac80211 0xfdb64fb4 ieee80211_beacon_loss +EXPORT_SYMBOL net/mac80211/mac80211 0xfe0c52e1 ieee80211_cqm_beacon_loss_notify +EXPORT_SYMBOL net/mac802154/mac802154 0x217ee6b9 ieee802154_xmit_complete +EXPORT_SYMBOL net/mac802154/mac802154 0x3f1e0443 ieee802154_wake_queue +EXPORT_SYMBOL net/mac802154/mac802154 0x42876a79 ieee802154_free_hw +EXPORT_SYMBOL net/mac802154/mac802154 0x6716caa5 ieee802154_stop_queue +EXPORT_SYMBOL net/mac802154/mac802154 0x7b46e8e2 ieee802154_unregister_hw +EXPORT_SYMBOL net/mac802154/mac802154 0xba794e48 ieee802154_alloc_hw +EXPORT_SYMBOL net/mac802154/mac802154 0xce299c97 ieee802154_rx_irqsafe +EXPORT_SYMBOL net/mac802154/mac802154 0xea9ca4cf ieee802154_register_hw +EXPORT_SYMBOL net/netfilter/ipvs/ip_vs 0x0e65631c ip_vs_conn_new +EXPORT_SYMBOL net/netfilter/ipvs/ip_vs 0x127a25e7 ip_vs_conn_in_get +EXPORT_SYMBOL net/netfilter/ipvs/ip_vs 0x1edac134 ip_vs_conn_out_get +EXPORT_SYMBOL net/netfilter/ipvs/ip_vs 0x3b441506 ip_vs_tcp_conn_listen +EXPORT_SYMBOL net/netfilter/ipvs/ip_vs 0x43619ebf unregister_ip_vs_app +EXPORT_SYMBOL net/netfilter/ipvs/ip_vs 0x460fbf1f ip_vs_proto_get +EXPORT_SYMBOL net/netfilter/ipvs/ip_vs 0x49529b2f register_ip_vs_app_inc +EXPORT_SYMBOL net/netfilter/ipvs/ip_vs 0x6b7ed2ad ip_vs_scheduler_err +EXPORT_SYMBOL net/netfilter/ipvs/ip_vs 0x80bda5e7 ip_vs_conn_put +EXPORT_SYMBOL net/netfilter/ipvs/ip_vs 0x966d69b6 ip_vs_nfct_expect_related +EXPORT_SYMBOL net/netfilter/ipvs/ip_vs 0x98795b1b ip_vs_new_conn_out +EXPORT_SYMBOL net/netfilter/ipvs/ip_vs 0x9bf798e0 register_ip_vs_app +EXPORT_SYMBOL net/netfilter/ipvs/ip_vs 0xba0a8b10 ip_vs_proto_data_get +EXPORT_SYMBOL net/netfilter/ipvs/ip_vs 0xd831a1a2 ip_vs_proto_name +EXPORT_SYMBOL net/netfilter/ipvs/ip_vs 0xdd502685 unregister_ip_vs_scheduler +EXPORT_SYMBOL net/netfilter/ipvs/ip_vs 0xee006995 register_ip_vs_scheduler +EXPORT_SYMBOL net/netfilter/nf_conntrack 0xd0d56b84 nf_ct_ext_add +EXPORT_SYMBOL net/netfilter/nf_conntrack_pptp 0xf2a36612 pptp_msg_name +EXPORT_SYMBOL net/netfilter/nf_nat 0x1f9872cf nf_nat_setup_info +EXPORT_SYMBOL net/netfilter/nf_nat 0x306bf2e8 nf_nat_follow_master +EXPORT_SYMBOL net/netfilter/nf_nat 0x3da8cd20 __nf_nat_mangle_tcp_packet +EXPORT_SYMBOL net/netfilter/nf_nat 0x70d6f550 nf_nat_mangle_udp_packet +EXPORT_SYMBOL net/netfilter/nf_nat 0x920f2ae9 nf_xfrm_me_harder +EXPORT_SYMBOL net/netfilter/nft_fib 0xe8203072 nft_fib_policy +EXPORT_SYMBOL net/netfilter/x_tables 0x00dd75b2 xt_register_target +EXPORT_SYMBOL net/netfilter/x_tables 0x015a1f8f xt_unregister_targets +EXPORT_SYMBOL net/netfilter/x_tables 0x0d7f5fcd xt_alloc_entry_offsets +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 0x51c8a086 xt_register_matches +EXPORT_SYMBOL net/netfilter/x_tables 0x6b392f98 xt_register_match +EXPORT_SYMBOL net/netfilter/x_tables 0x89552de3 xt_table_get_private_protected +EXPORT_SYMBOL net/netfilter/x_tables 0x91211173 xt_find_match +EXPORT_SYMBOL net/netfilter/x_tables 0x977fd4bf xt_alloc_table_info +EXPORT_SYMBOL net/netfilter/x_tables 0xa25fc115 xt_compat_check_entry_offsets +EXPORT_SYMBOL net/netfilter/x_tables 0xaeb096ed xt_unregister_match +EXPORT_SYMBOL net/netfilter/x_tables 0xcb3e91cc xt_counters_alloc +EXPORT_SYMBOL net/netfilter/x_tables 0xcfd0b51a xt_unregister_matches +EXPORT_SYMBOL net/netfilter/x_tables 0xd87ae60d xt_check_entry_offsets +EXPORT_SYMBOL net/netfilter/x_tables 0xe02836a0 xt_unregister_target +EXPORT_SYMBOL net/netfilter/x_tables 0xe204e042 xt_free_table_info +EXPORT_SYMBOL net/netfilter/x_tables 0xf87dd8f5 xt_register_targets +EXPORT_SYMBOL net/netfilter/x_tables 0xfef779fa xt_find_jump_offset +EXPORT_SYMBOL net/nfc/hci/hci 0x0f313fca nfc_hci_free_device +EXPORT_SYMBOL net/nfc/hci/hci 0x169b9ab0 nfc_llc_start +EXPORT_SYMBOL net/nfc/hci/hci 0x254b7237 nfc_hci_reset_pipes_per_host +EXPORT_SYMBOL net/nfc/hci/hci 0x282c1432 nfc_hci_allocate_device +EXPORT_SYMBOL net/nfc/hci/hci 0x2f5a30a8 nfc_hci_send_cmd_async +EXPORT_SYMBOL net/nfc/hci/hci 0x53c95635 nfc_hci_set_param +EXPORT_SYMBOL net/nfc/hci/hci 0x60840a31 nfc_hci_send_cmd +EXPORT_SYMBOL net/nfc/hci/hci 0x65bb0c56 nfc_hci_register_device +EXPORT_SYMBOL net/nfc/hci/hci 0x6d9992ce nfc_hci_disconnect_all_gates +EXPORT_SYMBOL net/nfc/hci/hci 0x74fe3670 nfc_hci_result_to_errno +EXPORT_SYMBOL net/nfc/hci/hci 0x7e7f198a nfc_hci_reset_pipes +EXPORT_SYMBOL net/nfc/hci/hci 0x7f8d9495 nfc_hci_recv_frame +EXPORT_SYMBOL net/nfc/hci/hci 0xaa54dcaf nfc_hci_unregister_device +EXPORT_SYMBOL net/nfc/hci/hci 0xab2c1203 nfc_hci_connect_gate +EXPORT_SYMBOL net/nfc/hci/hci 0xbd6bea2d nfc_hci_driver_failure +EXPORT_SYMBOL net/nfc/hci/hci 0xc493e429 nfc_hci_disconnect_gate +EXPORT_SYMBOL net/nfc/hci/hci 0xc75006c3 nfc_llc_stop +EXPORT_SYMBOL net/nfc/hci/hci 0xceeb5d16 nfc_hci_get_clientdata +EXPORT_SYMBOL net/nfc/hci/hci 0xcf55ebf7 nfc_hci_target_discovered +EXPORT_SYMBOL net/nfc/hci/hci 0xd71e55eb nfc_hci_send_event +EXPORT_SYMBOL net/nfc/hci/hci 0xdd231c55 nfc_hci_sak_to_protocol +EXPORT_SYMBOL net/nfc/hci/hci 0xed2fb0bc nfc_hci_set_clientdata +EXPORT_SYMBOL net/nfc/hci/hci 0xf9979cb1 nfc_hci_get_param +EXPORT_SYMBOL net/nfc/nci/nci 0x07574139 nci_send_frame +EXPORT_SYMBOL net/nfc/nci/nci 0x106b5145 nci_register_device +EXPORT_SYMBOL net/nfc/nci/nci 0x14744f6a nci_req_complete +EXPORT_SYMBOL net/nfc/nci/nci 0x14e17278 nci_nfcee_discover +EXPORT_SYMBOL net/nfc/nci/nci 0x1ccf99ba nci_core_init +EXPORT_SYMBOL net/nfc/nci/nci 0x21e7bfcd nci_hci_open_pipe +EXPORT_SYMBOL net/nfc/nci/nci 0x49e240f0 nci_set_config +EXPORT_SYMBOL net/nfc/nci/nci 0x542d6c61 nci_hci_send_cmd +EXPORT_SYMBOL net/nfc/nci/nci 0x58d3930a nci_free_device +EXPORT_SYMBOL net/nfc/nci/nci 0x5ae16307 nci_nfcee_mode_set +EXPORT_SYMBOL net/nfc/nci/nci 0x645096ed nci_hci_set_param +EXPORT_SYMBOL net/nfc/nci/nci 0x6deac219 nci_core_reset +EXPORT_SYMBOL net/nfc/nci/nci 0x7923fa49 nci_hci_get_param +EXPORT_SYMBOL net/nfc/nci/nci 0x817af6cf nci_conn_max_data_pkt_payload_size +EXPORT_SYMBOL net/nfc/nci/nci 0x8217de4a nci_allocate_device +EXPORT_SYMBOL net/nfc/nci/nci 0x9203d776 nci_send_cmd +EXPORT_SYMBOL net/nfc/nci/nci 0x97764396 nci_unregister_device +EXPORT_SYMBOL net/nfc/nci/nci 0x98c33503 nci_recv_frame +EXPORT_SYMBOL net/nfc/nci/nci 0x9c8231ab nci_send_data +EXPORT_SYMBOL net/nfc/nci/nci 0x9e8fc9be nci_core_conn_create +EXPORT_SYMBOL net/nfc/nci/nci 0xa42c6007 nci_get_conn_info_by_dest_type_params +EXPORT_SYMBOL net/nfc/nci/nci 0xba490602 nci_to_errno +EXPORT_SYMBOL net/nfc/nci/nci 0xba8252aa nci_prop_cmd +EXPORT_SYMBOL net/nfc/nci/nci 0xca79d939 nci_core_cmd +EXPORT_SYMBOL net/nfc/nci/nci 0xcdc3259c nci_hci_clear_all_pipes +EXPORT_SYMBOL net/nfc/nci/nci 0xd14f938d nci_hci_connect_gate +EXPORT_SYMBOL net/nfc/nci/nci 0xd96a4a8a nci_nfcc_loopback +EXPORT_SYMBOL net/nfc/nci/nci 0xdc1645e3 nci_core_conn_close +EXPORT_SYMBOL net/nfc/nci/nci 0xe96a4914 nci_hci_send_event +EXPORT_SYMBOL net/nfc/nci/nci 0xffc074d3 nci_hci_dev_session_init +EXPORT_SYMBOL net/nfc/nfc 0x02a1f288 nfc_vendor_cmd_reply +EXPORT_SYMBOL net/nfc/nfc 0x1497195c __nfc_alloc_vendor_cmd_reply_skb +EXPORT_SYMBOL net/nfc/nfc 0x197681e7 nfc_remove_se +EXPORT_SYMBOL net/nfc/nfc 0x37821b56 nfc_register_device +EXPORT_SYMBOL net/nfc/nfc 0x38798f2f nfc_proto_unregister +EXPORT_SYMBOL net/nfc/nfc 0x3b62fd93 nfc_alloc_recv_skb +EXPORT_SYMBOL net/nfc/nfc 0x40797e47 nfc_set_remote_general_bytes +EXPORT_SYMBOL net/nfc/nfc 0x41ad90ee nfc_unregister_device +EXPORT_SYMBOL net/nfc/nfc 0x4706811b nfc_driver_failure +EXPORT_SYMBOL net/nfc/nfc 0x4c8eeea0 nfc_targets_found +EXPORT_SYMBOL net/nfc/nfc 0x51aaaac7 nfc_se_connectivity +EXPORT_SYMBOL net/nfc/nfc 0x60de8930 nfc_dep_link_is_up +EXPORT_SYMBOL net/nfc/nfc 0x7491dd12 nfc_class +EXPORT_SYMBOL net/nfc/nfc 0x74965274 nfc_send_to_raw_sock +EXPORT_SYMBOL net/nfc/nfc 0x75b64afe nfc_add_se +EXPORT_SYMBOL net/nfc/nfc 0x77283ebb nfc_tm_deactivated +EXPORT_SYMBOL net/nfc/nfc 0x80b49e58 nfc_find_se +EXPORT_SYMBOL net/nfc/nfc 0x8526f7d4 nfc_fw_download_done +EXPORT_SYMBOL net/nfc/nfc 0xaa8d75ca nfc_proto_register +EXPORT_SYMBOL net/nfc/nfc 0xaf66a34b nfc_allocate_device +EXPORT_SYMBOL net/nfc/nfc 0xb4f575d9 nfc_tm_data_received +EXPORT_SYMBOL net/nfc/nfc 0xc455e6e0 nfc_se_transaction +EXPORT_SYMBOL net/nfc/nfc 0xcabfd186 nfc_get_local_general_bytes +EXPORT_SYMBOL net/nfc/nfc 0xcef655ad nfc_tm_activated +EXPORT_SYMBOL net/nfc/nfc 0xdac91210 nfc_target_lost +EXPORT_SYMBOL net/nfc/nfc_digital 0x02fafa8c nfc_digital_free_device +EXPORT_SYMBOL net/nfc/nfc_digital 0x4779b697 nfc_digital_register_device +EXPORT_SYMBOL net/nfc/nfc_digital 0x636ce7c8 nfc_digital_allocate_device +EXPORT_SYMBOL net/nfc/nfc_digital 0x6b82c3fb nfc_digital_unregister_device +EXPORT_SYMBOL net/phonet/phonet 0x251e0cdd phonet_stream_ops +EXPORT_SYMBOL net/phonet/phonet 0x378e33d9 phonet_header_ops +EXPORT_SYMBOL net/phonet/phonet 0x6dcbd7c4 pn_sock_hash +EXPORT_SYMBOL net/phonet/phonet 0x9dca85f5 phonet_proto_unregister +EXPORT_SYMBOL net/phonet/phonet 0xb0057c83 pn_sock_get_port +EXPORT_SYMBOL net/phonet/phonet 0xcc8d28ed pn_skb_send +EXPORT_SYMBOL net/phonet/phonet 0xfb860dff pn_sock_unhash +EXPORT_SYMBOL net/phonet/phonet 0xfd5b0c7f phonet_proto_register +EXPORT_SYMBOL net/rxrpc/rxrpc 0x01f478e9 rxrpc_kernel_set_max_life +EXPORT_SYMBOL net/rxrpc/rxrpc 0x0701a2db rxrpc_kernel_end_call +EXPORT_SYMBOL net/rxrpc/rxrpc 0x1710aacf rxrpc_kernel_check_life +EXPORT_SYMBOL net/rxrpc/rxrpc 0x20791a88 rxrpc_kernel_get_epoch +EXPORT_SYMBOL net/rxrpc/rxrpc 0x2414251f rxrpc_kernel_set_tx_length +EXPORT_SYMBOL net/rxrpc/rxrpc 0x2bb7b740 rxrpc_kernel_get_srtt +EXPORT_SYMBOL net/rxrpc/rxrpc 0x31bf3ca3 rxrpc_debug_id +EXPORT_SYMBOL net/rxrpc/rxrpc 0x3df97209 rxrpc_kernel_send_data +EXPORT_SYMBOL net/rxrpc/rxrpc 0x67c69145 rxrpc_get_null_key +EXPORT_SYMBOL net/rxrpc/rxrpc 0x718b4111 rxrpc_kernel_charge_accept +EXPORT_SYMBOL net/rxrpc/rxrpc 0x838efd29 rxrpc_sock_set_min_security_level +EXPORT_SYMBOL net/rxrpc/rxrpc 0x97ec5581 key_type_rxrpc +EXPORT_SYMBOL net/rxrpc/rxrpc 0xba231825 rxrpc_kernel_get_reply_time +EXPORT_SYMBOL net/rxrpc/rxrpc 0xc116b87d rxrpc_kernel_begin_call +EXPORT_SYMBOL net/rxrpc/rxrpc 0xc73542c5 rxrpc_kernel_recv_data +EXPORT_SYMBOL net/rxrpc/rxrpc 0xc860f10c rxrpc_kernel_abort_call +EXPORT_SYMBOL net/rxrpc/rxrpc 0xe4c8fe73 rxrpc_kernel_get_peer +EXPORT_SYMBOL net/rxrpc/rxrpc 0xf0a719e7 rxrpc_kernel_new_call_notification +EXPORT_SYMBOL net/rxrpc/rxrpc 0xf3b5974c rxrpc_get_server_data_key +EXPORT_SYMBOL net/sctp/sctp 0xc42d6ebd sctp_do_peeloff +EXPORT_SYMBOL net/sunrpc/auth_gss/auth_rpcgss 0x0b43e806 gss_mech_put +EXPORT_SYMBOL net/sunrpc/auth_gss/auth_rpcgss 0x83b26cae gss_pseudoflavor_to_service +EXPORT_SYMBOL net/sunrpc/auth_gss/auth_rpcgss 0xd2edd5dc gss_mech_get +EXPORT_SYMBOL net/sunrpc/sunrpc 0x8fa6b341 svc_pool_stats_open +EXPORT_SYMBOL net/sunrpc/sunrpc 0xa31fd3bb xdr_restrict_buflen +EXPORT_SYMBOL net/sunrpc/sunrpc 0xefe9d6ce xdr_truncate_encode +EXPORT_SYMBOL net/tipc/tipc 0x1402b430 tipc_dump_done +EXPORT_SYMBOL net/tipc/tipc 0x2ad35932 tipc_sk_fill_sock_diag +EXPORT_SYMBOL net/tipc/tipc 0x910cc913 tipc_nl_sk_walk +EXPORT_SYMBOL net/tipc/tipc 0xac57ccb8 tipc_dump_start +EXPORT_SYMBOL net/tls/tls 0x1a06a662 tls_get_record +EXPORT_SYMBOL net/wireless/cfg80211 0x02672889 cfg80211_sched_scan_stopped +EXPORT_SYMBOL net/wireless/cfg80211 0x02f6f948 cfg80211_update_owe_info_event +EXPORT_SYMBOL net/wireless/cfg80211 0x04e36427 cfg80211_tx_mgmt_expired +EXPORT_SYMBOL net/wireless/cfg80211 0x09723865 cfg80211_mgmt_tx_status +EXPORT_SYMBOL net/wireless/cfg80211 0x0be95b93 cfg80211_rx_assoc_resp +EXPORT_SYMBOL net/wireless/cfg80211 0x0c9b2ee5 cfg80211_rx_mgmt_khz +EXPORT_SYMBOL net/wireless/cfg80211 0x0cde1df4 cfg80211_scan_done +EXPORT_SYMBOL net/wireless/cfg80211 0x1128c107 cfg80211_remain_on_channel_expired +EXPORT_SYMBOL net/wireless/cfg80211 0x117aca91 cfg80211_merge_profile +EXPORT_SYMBOL net/wireless/cfg80211 0x1537e8e3 cfg80211_roamed +EXPORT_SYMBOL net/wireless/cfg80211 0x15a37cf3 cfg80211_calculate_bitrate +EXPORT_SYMBOL net/wireless/cfg80211 0x1879fcbd bridge_tunnel_header +EXPORT_SYMBOL net/wireless/cfg80211 0x18b53545 cfg80211_chandef_create +EXPORT_SYMBOL net/wireless/cfg80211 0x19062d61 cfg80211_conn_failed +EXPORT_SYMBOL net/wireless/cfg80211 0x1a1f6456 wiphy_rfkill_start_polling +EXPORT_SYMBOL net/wireless/cfg80211 0x1ab288b2 regulatory_set_wiphy_regd_sync_rtnl +EXPORT_SYMBOL net/wireless/cfg80211 0x1aee658d __cfg80211_alloc_reply_skb +EXPORT_SYMBOL net/wireless/cfg80211 0x1ce2497f reg_query_regdb_wmm +EXPORT_SYMBOL net/wireless/cfg80211 0x1ed8ab7e regulatory_pre_cac_allowed +EXPORT_SYMBOL net/wireless/cfg80211 0x232222a5 cfg80211_auth_timeout +EXPORT_SYMBOL net/wireless/cfg80211 0x2409a286 wiphy_free +EXPORT_SYMBOL net/wireless/cfg80211 0x261b3c78 cfg80211_nan_match +EXPORT_SYMBOL net/wireless/cfg80211 0x275269b3 ieee80211_ie_split_ric +EXPORT_SYMBOL net/wireless/cfg80211 0x28446f90 ieee80211_get_response_rate +EXPORT_SYMBOL net/wireless/cfg80211 0x2cfe1946 cfg80211_stop_iface +EXPORT_SYMBOL net/wireless/cfg80211 0x3028713f cfg80211_sched_scan_results +EXPORT_SYMBOL net/wireless/cfg80211 0x331a6041 cfg80211_check_combinations +EXPORT_SYMBOL net/wireless/cfg80211 0x338cc1ee cfg80211_cqm_beacon_loss_notify +EXPORT_SYMBOL net/wireless/cfg80211 0x34c8cf87 cfg80211_rx_mlme_mgmt +EXPORT_SYMBOL net/wireless/cfg80211 0x3a5bab4d cfg80211_cac_event +EXPORT_SYMBOL net/wireless/cfg80211 0x3bd8aaa1 ieee80211_operating_class_to_band +EXPORT_SYMBOL net/wireless/cfg80211 0x43336486 ieee80211_get_num_supported_channels +EXPORT_SYMBOL net/wireless/cfg80211 0x43f5efcf cfg80211_sinfo_alloc_tid_stats +EXPORT_SYMBOL net/wireless/cfg80211 0x46312808 ieee80211_radiotap_iterator_next +EXPORT_SYMBOL net/wireless/cfg80211 0x4b5add2c cfg80211_probe_status +EXPORT_SYMBOL net/wireless/cfg80211 0x4bb39a4a cfg80211_unregister_wdev +EXPORT_SYMBOL net/wireless/cfg80211 0x4c248296 cfg80211_unlink_bss +EXPORT_SYMBOL net/wireless/cfg80211 0x54e34007 cfg80211_chandef_dfs_required +EXPORT_SYMBOL net/wireless/cfg80211 0x5c76288d wiphy_new_nm +EXPORT_SYMBOL net/wireless/cfg80211 0x61efbeb3 cfg80211_connect_done +EXPORT_SYMBOL net/wireless/cfg80211 0x64ce8a29 __cfg80211_alloc_event_skb +EXPORT_SYMBOL net/wireless/cfg80211 0x661f1b61 cfg80211_check_station_change +EXPORT_SYMBOL net/wireless/cfg80211 0x662e29fc cfg80211_cqm_rssi_notify +EXPORT_SYMBOL net/wireless/cfg80211 0x66d12412 ieee80211_data_to_8023_exthdr +EXPORT_SYMBOL net/wireless/cfg80211 0x67d86dcd ieee80211_chandef_to_operating_class +EXPORT_SYMBOL net/wireless/cfg80211 0x68600c40 ieee80211_mandatory_rates +EXPORT_SYMBOL net/wireless/cfg80211 0x69b18f43 rfc1042_header +EXPORT_SYMBOL net/wireless/cfg80211 0x6ac8d008 cfg80211_get_drvinfo +EXPORT_SYMBOL net/wireless/cfg80211 0x6b048935 cfg80211_rx_unexpected_4addr_frame +EXPORT_SYMBOL net/wireless/cfg80211 0x6bedf402 ieee80211_freq_khz_to_channel +EXPORT_SYMBOL net/wireless/cfg80211 0x6e00b107 regulatory_set_wiphy_regd +EXPORT_SYMBOL net/wireless/cfg80211 0x7009b88d cfg80211_rx_unprot_mlme_mgmt +EXPORT_SYMBOL net/wireless/cfg80211 0x7288d11a __cfg80211_send_event_skb +EXPORT_SYMBOL net/wireless/cfg80211 0x76b3ace9 cfg80211_new_sta +EXPORT_SYMBOL net/wireless/cfg80211 0x77b6c36e ieee80211_get_channel_khz +EXPORT_SYMBOL net/wireless/cfg80211 0x79b82a71 cfg80211_find_vendor_elem +EXPORT_SYMBOL net/wireless/cfg80211 0x7af8f851 regulatory_hint +EXPORT_SYMBOL net/wireless/cfg80211 0x7c3ac925 ieee80211_get_vht_max_nss +EXPORT_SYMBOL net/wireless/cfg80211 0x7ef39823 ieee80211_hdrlen +EXPORT_SYMBOL net/wireless/cfg80211 0x81a471d6 cfg80211_chandef_valid +EXPORT_SYMBOL net/wireless/cfg80211 0x82ee8b2b wiphy_apply_custom_regulatory +EXPORT_SYMBOL net/wireless/cfg80211 0x84d46d81 cfg80211_ch_switch_started_notify +EXPORT_SYMBOL net/wireless/cfg80211 0x856cfdbc cfg80211_get_station +EXPORT_SYMBOL net/wireless/cfg80211 0x86b20b26 cfg80211_rx_control_port +EXPORT_SYMBOL net/wireless/cfg80211 0x8e7d6fe9 cfg80211_pmksa_candidate_notify +EXPORT_SYMBOL net/wireless/cfg80211 0x8fa02936 cfg80211_free_nan_func +EXPORT_SYMBOL net/wireless/cfg80211 0x9779b9f2 cfg80211_notify_new_peer_candidate +EXPORT_SYMBOL net/wireless/cfg80211 0x9ab53d43 cfg80211_send_layer2_update +EXPORT_SYMBOL net/wireless/cfg80211 0x9d6cba30 cfg80211_find_elem_match +EXPORT_SYMBOL net/wireless/cfg80211 0xa00dd56d cfg80211_sched_scan_stopped_rtnl +EXPORT_SYMBOL net/wireless/cfg80211 0xa4f5b27d cfg80211_gtk_rekey_notify +EXPORT_SYMBOL net/wireless/cfg80211 0xa68a8a2e cfg80211_tx_mlme_mgmt +EXPORT_SYMBOL net/wireless/cfg80211 0xa892b5e9 cfg80211_abandon_assoc +EXPORT_SYMBOL net/wireless/cfg80211 0xaabf4c37 cfg80211_chandef_usable +EXPORT_SYMBOL net/wireless/cfg80211 0xac97a207 ieee80211_radiotap_iterator_init +EXPORT_SYMBOL net/wireless/cfg80211 0xacddc99b cfg80211_rx_spurious_frame +EXPORT_SYMBOL net/wireless/cfg80211 0xafe8b001 ieee80211_channel_to_freq_khz +EXPORT_SYMBOL net/wireless/cfg80211 0xb347558e cfg80211_disconnected +EXPORT_SYMBOL net/wireless/cfg80211 0xb3d20740 ieee80211_get_hdrlen_from_skb +EXPORT_SYMBOL net/wireless/cfg80211 0xb51c8a47 cfg80211_put_bss +EXPORT_SYMBOL net/wireless/cfg80211 0xb6613c51 cfg80211_control_port_tx_status +EXPORT_SYMBOL net/wireless/cfg80211 0xb6720a88 cfg80211_ready_on_channel +EXPORT_SYMBOL net/wireless/cfg80211 0xbab378e7 cfg80211_nan_func_terminated +EXPORT_SYMBOL net/wireless/cfg80211 0xbf2d5539 freq_reg_info +EXPORT_SYMBOL net/wireless/cfg80211 0xc4ab053f cfg80211_iftype_allowed +EXPORT_SYMBOL net/wireless/cfg80211 0xc93c9cab cfg80211_cqm_txe_notify +EXPORT_SYMBOL net/wireless/cfg80211 0xca11726b wiphy_rfkill_set_hw_state +EXPORT_SYMBOL net/wireless/cfg80211 0xcc1a7c48 cfg80211_is_element_inherited +EXPORT_SYMBOL net/wireless/cfg80211 0xcd73ffc2 cfg80211_external_auth_request +EXPORT_SYMBOL net/wireless/cfg80211 0xcd758f84 cfg80211_iter_combinations +EXPORT_SYMBOL net/wireless/cfg80211 0xce57e913 wiphy_register +EXPORT_SYMBOL net/wireless/cfg80211 0xcf0c6b41 cfg80211_get_bss +EXPORT_SYMBOL net/wireless/cfg80211 0xd002fafc cfg80211_port_authorized +EXPORT_SYMBOL net/wireless/cfg80211 0xd3bf1de8 cfg80211_del_sta_sinfo +EXPORT_SYMBOL net/wireless/cfg80211 0xd3e166b8 cfg80211_ibss_joined +EXPORT_SYMBOL net/wireless/cfg80211 0xd4978482 ieee80211_amsdu_to_8023s +EXPORT_SYMBOL net/wireless/cfg80211 0xd50a566a cfg80211_ref_bss +EXPORT_SYMBOL net/wireless/cfg80211 0xd56d55f3 ieee80211_get_mesh_hdrlen +EXPORT_SYMBOL net/wireless/cfg80211 0xd69f61e9 cfg80211_tdls_oper_request +EXPORT_SYMBOL net/wireless/cfg80211 0xd709c881 wiphy_unregister +EXPORT_SYMBOL net/wireless/cfg80211 0xdaeb6caa cfg80211_report_obss_beacon_khz +EXPORT_SYMBOL net/wireless/cfg80211 0xdba126c1 reg_initiator_name +EXPORT_SYMBOL net/wireless/cfg80211 0xdf2a7302 cfg80211_inform_bss_frame_data +EXPORT_SYMBOL net/wireless/cfg80211 0xe4446ec6 cfg80211_assoc_timeout +EXPORT_SYMBOL net/wireless/cfg80211 0xe69779f4 cfg80211_inform_bss_data +EXPORT_SYMBOL net/wireless/cfg80211 0xe716c293 cfg80211_report_wowlan_wakeup +EXPORT_SYMBOL net/wireless/cfg80211 0xe7396feb cfg80211_bss_iter +EXPORT_SYMBOL net/wireless/cfg80211 0xeb27613f cfg80211_michael_mic_failure +EXPORT_SYMBOL net/wireless/cfg80211 0xec16fd61 cfg80211_ch_switch_notify +EXPORT_SYMBOL net/wireless/cfg80211 0xef45c03c wiphy_rfkill_stop_polling +EXPORT_SYMBOL net/wireless/cfg80211 0xf11361d6 cfg80211_classify8021d +EXPORT_SYMBOL net/wireless/cfg80211 0xf2a10417 cfg80211_crit_proto_stopped +EXPORT_SYMBOL net/wireless/cfg80211 0xf4d8679d cfg80211_cqm_pktloss_notify +EXPORT_SYMBOL net/wireless/cfg80211 0xf505ffe6 cfg80211_ft_event +EXPORT_SYMBOL net/wireless/cfg80211 0xf5596d89 cfg80211_get_p2p_attr +EXPORT_SYMBOL net/wireless/cfg80211 0xf58fdd71 cfg80211_reg_can_beacon_relax +EXPORT_SYMBOL net/wireless/cfg80211 0xf6562db4 cfg80211_reg_can_beacon +EXPORT_SYMBOL net/wireless/cfg80211 0xfa22e1cb cfg80211_radar_event +EXPORT_SYMBOL net/wireless/cfg80211 0xfae8514f cfg80211_chandef_compatible +EXPORT_SYMBOL net/wireless/cfg80211 0xfedd4ce8 cfg80211_sta_opmode_change_notify +EXPORT_SYMBOL net/wireless/cfg80211 0xff0c113a ieee80211_bss_get_elem +EXPORT_SYMBOL ubuntu/hio/hio 0x03b64bdd ssd_get_label +EXPORT_SYMBOL ubuntu/hio/hio 0x0781a36a ssd_unregister_event_notifier +EXPORT_SYMBOL ubuntu/hio/hio 0x26dd7255 ssd_get_temperature +EXPORT_SYMBOL ubuntu/hio/hio 0x26f13228 ssd_bm_status +EXPORT_SYMBOL ubuntu/hio/hio 0x2eb78b54 ssd_submit_pbio +EXPORT_SYMBOL ubuntu/hio/hio 0x49b1e586 ssd_get_pciaddr +EXPORT_SYMBOL ubuntu/hio/hio 0x67dd8e97 ssd_register_event_notifier +EXPORT_SYMBOL ubuntu/hio/hio 0x69c7c4c0 ssd_set_wmode +EXPORT_SYMBOL ubuntu/hio/hio 0x72cf7354 ssd_get_version +EXPORT_SYMBOL ubuntu/hio/hio 0x9c910212 ssd_reset +EXPORT_SYMBOL ubuntu/hio/hio 0xcf044761 ssd_set_otprotect +EXPORT_SYMBOL vmlinux 0x001f8a2a find_inode_nowait +EXPORT_SYMBOL vmlinux 0x002ac813 netlink_capable +EXPORT_SYMBOL vmlinux 0x0073fd9a get_tree_nodev +EXPORT_SYMBOL vmlinux 0x0088f765 tcp_read_sock +EXPORT_SYMBOL vmlinux 0x0099b227 unregister_framebuffer +EXPORT_SYMBOL vmlinux 0x00a3eeaa lookup_bdev +EXPORT_SYMBOL vmlinux 0x00a4b044 amd_iommu_deactivate_guest_mode +EXPORT_SYMBOL vmlinux 0x00addcc0 devm_get_clk_from_child +EXPORT_SYMBOL vmlinux 0x00b4e615 posix_acl_equiv_mode +EXPORT_SYMBOL vmlinux 0x00c8ac5e dns_query +EXPORT_SYMBOL vmlinux 0x00d13ae4 pci_msix_vec_count +EXPORT_SYMBOL vmlinux 0x00d22922 sock_set_reuseaddr +EXPORT_SYMBOL vmlinux 0x00d7e722 vme_lm_count +EXPORT_SYMBOL vmlinux 0x00dffd0e mipi_dsi_dcs_set_page_address +EXPORT_SYMBOL vmlinux 0x00ea1ce4 dup_iter +EXPORT_SYMBOL vmlinux 0x01000e51 schedule +EXPORT_SYMBOL vmlinux 0x0113142c ip_cmsg_recv_offset +EXPORT_SYMBOL vmlinux 0x011ca083 convert_art_to_tsc +EXPORT_SYMBOL vmlinux 0x01228339 param_get_int +EXPORT_SYMBOL vmlinux 0x013f26ae dma_fence_get_stub +EXPORT_SYMBOL vmlinux 0x0145ca68 simple_rmdir +EXPORT_SYMBOL vmlinux 0x0147812c kblockd_mod_delayed_work_on +EXPORT_SYMBOL vmlinux 0x01553371 vm_brk_flags +EXPORT_SYMBOL vmlinux 0x015af7f4 system_state +EXPORT_SYMBOL vmlinux 0x017456e3 netif_stacked_transfer_operstate +EXPORT_SYMBOL vmlinux 0x01757935 rdmacg_register_device +EXPORT_SYMBOL vmlinux 0x017de3d5 nr_cpu_ids +EXPORT_SYMBOL vmlinux 0x018574a1 mb_cache_entry_delete +EXPORT_SYMBOL vmlinux 0x0188cd88 vme_alloc_consistent +EXPORT_SYMBOL vmlinux 0x0191a2b0 blk_pm_runtime_init +EXPORT_SYMBOL vmlinux 0x019859e6 fb_set_var +EXPORT_SYMBOL vmlinux 0x019a07e9 tcf_idrinfo_destroy +EXPORT_SYMBOL vmlinux 0x01a6c140 md_bitmap_startwrite +EXPORT_SYMBOL vmlinux 0x01aa3099 unregister_console +EXPORT_SYMBOL vmlinux 0x01b6865c xa_get_mark +EXPORT_SYMBOL vmlinux 0x01bf55fc paddr_vmcoreinfo_note +EXPORT_SYMBOL vmlinux 0x01c2b004 security_unix_may_send +EXPORT_SYMBOL vmlinux 0x01e303a2 dev_close +EXPORT_SYMBOL vmlinux 0x01eab19e crypto_sha512_update +EXPORT_SYMBOL vmlinux 0x01ee6017 bio_endio +EXPORT_SYMBOL vmlinux 0x01f17047 udp_sock_create4 +EXPORT_SYMBOL vmlinux 0x020762f2 flow_rule_match_cvlan +EXPORT_SYMBOL vmlinux 0x020dbf27 bitmap_alloc +EXPORT_SYMBOL vmlinux 0x02124474 ip_send_check +EXPORT_SYMBOL vmlinux 0x021315ee __fs_parse +EXPORT_SYMBOL vmlinux 0x0213b81f inet_frag_reasm_prepare +EXPORT_SYMBOL vmlinux 0x0228925f iowrite64_hi_lo +EXPORT_SYMBOL vmlinux 0x02293ac3 dma_fence_chain_ops +EXPORT_SYMBOL vmlinux 0x0237b57a arch_unregister_cpu +EXPORT_SYMBOL vmlinux 0x023d1b90 wrmsr_on_cpu +EXPORT_SYMBOL vmlinux 0x025483b1 set_current_groups +EXPORT_SYMBOL vmlinux 0x025955bb pin_user_pages +EXPORT_SYMBOL vmlinux 0x025db97b tty_insert_flip_string_fixed_flag +EXPORT_SYMBOL vmlinux 0x02666e58 fixed_size_llseek +EXPORT_SYMBOL vmlinux 0x0274dc2b netif_get_num_default_rss_queues +EXPORT_SYMBOL vmlinux 0x02813827 pipe_lock +EXPORT_SYMBOL vmlinux 0x0296695f refcount_warn_saturate +EXPORT_SYMBOL vmlinux 0x02a18c74 nf_conntrack_destroy +EXPORT_SYMBOL vmlinux 0x02a2016c phy_ethtool_ksettings_set +EXPORT_SYMBOL vmlinux 0x02a4031a end_page_writeback +EXPORT_SYMBOL vmlinux 0x02b8ab42 sg_copy_to_buffer +EXPORT_SYMBOL vmlinux 0x02c63063 input_register_handle +EXPORT_SYMBOL vmlinux 0x02c656b6 acpi_enable_all_runtime_gpes +EXPORT_SYMBOL vmlinux 0x02d034d6 blk_rq_append_bio +EXPORT_SYMBOL vmlinux 0x02dafc6b vga_switcheroo_register_client +EXPORT_SYMBOL vmlinux 0x02ea111e scsi_driverbyte_string +EXPORT_SYMBOL vmlinux 0x02f36c1b devm_iounmap +EXPORT_SYMBOL vmlinux 0x03134b46 dev_uc_init +EXPORT_SYMBOL vmlinux 0x03136bc3 linkwatch_fire_event +EXPORT_SYMBOL vmlinux 0x0319dbd5 reuseport_attach_prog +EXPORT_SYMBOL vmlinux 0x031a25c4 pci_write_vpd +EXPORT_SYMBOL vmlinux 0x0334da4e scsi_command_size_tbl +EXPORT_SYMBOL vmlinux 0x033ff0a1 vc_resize +EXPORT_SYMBOL vmlinux 0x03400c9b dev_load +EXPORT_SYMBOL vmlinux 0x0363c1c2 netif_receive_skb_core +EXPORT_SYMBOL vmlinux 0x0366307a console_suspend_enabled +EXPORT_SYMBOL vmlinux 0x037a0cba kfree +EXPORT_SYMBOL vmlinux 0x03914165 skb_seq_read +EXPORT_SYMBOL vmlinux 0x0397edd5 fb_edid_to_monspecs +EXPORT_SYMBOL vmlinux 0x03ae8bf4 devm_pci_remap_cfg_resource +EXPORT_SYMBOL vmlinux 0x03b5c7e1 __splice_from_pipe +EXPORT_SYMBOL vmlinux 0x03f549a2 md_bitmap_endwrite +EXPORT_SYMBOL vmlinux 0x03fd2571 vm_unmap_ram +EXPORT_SYMBOL vmlinux 0x03fde583 remap_vmalloc_range +EXPORT_SYMBOL vmlinux 0x0427a40d unregister_nls +EXPORT_SYMBOL vmlinux 0x04482cdb __refrigerator +EXPORT_SYMBOL vmlinux 0x045c5912 ww_mutex_lock_interruptible +EXPORT_SYMBOL vmlinux 0x0466390c fs_context_for_mount +EXPORT_SYMBOL vmlinux 0x046b1547 agp_backend_acquire +EXPORT_SYMBOL vmlinux 0x0484c6c4 acpi_enter_sleep_state_prep +EXPORT_SYMBOL vmlinux 0x04863e28 hdmi_audio_infoframe_pack_only +EXPORT_SYMBOL vmlinux 0x048b0b1d vme_bus_type +EXPORT_SYMBOL vmlinux 0x049e77c4 input_unregister_device +EXPORT_SYMBOL vmlinux 0x04b5d434 flow_rule_match_eth_addrs +EXPORT_SYMBOL vmlinux 0x04c62fd7 __memset +EXPORT_SYMBOL vmlinux 0x04cebb7c napi_gro_receive +EXPORT_SYMBOL vmlinux 0x04d8c750 release_perfctr_nmi +EXPORT_SYMBOL vmlinux 0x04e732a9 ppp_dev_name +EXPORT_SYMBOL vmlinux 0x04ea56f9 _kstrtol +EXPORT_SYMBOL vmlinux 0x04ea5d10 ksize +EXPORT_SYMBOL vmlinux 0x04fee9d4 security_sk_classify_flow +EXPORT_SYMBOL vmlinux 0x0501afa7 crypto_sha1_finup +EXPORT_SYMBOL vmlinux 0x050877b9 dmi_first_match +EXPORT_SYMBOL vmlinux 0x051d58e8 dma_fence_wait_any_timeout +EXPORT_SYMBOL vmlinux 0x05240ee7 percpu_counter_batch +EXPORT_SYMBOL vmlinux 0x054496b4 schedule_timeout_interruptible +EXPORT_SYMBOL vmlinux 0x054b6753 pci_bus_claim_resources +EXPORT_SYMBOL vmlinux 0x055e77e8 jiffies_64 +EXPORT_SYMBOL vmlinux 0x057b511d n_tty_ioctl_helper +EXPORT_SYMBOL vmlinux 0x057d1802 tcp_get_cookie_sock +EXPORT_SYMBOL vmlinux 0x05acab7e finalize_exec +EXPORT_SYMBOL vmlinux 0x05bbc296 __icmp_send +EXPORT_SYMBOL vmlinux 0x05bfdbea dev_printk +EXPORT_SYMBOL vmlinux 0x05c09ade kmem_cache_create +EXPORT_SYMBOL vmlinux 0x05d4021b kmem_cache_alloc_node +EXPORT_SYMBOL vmlinux 0x05d78cff inet_unregister_protosw +EXPORT_SYMBOL vmlinux 0x06052f8d __memmove +EXPORT_SYMBOL vmlinux 0x060a5485 __SetPageMovable +EXPORT_SYMBOL vmlinux 0x060ba97c gen_pool_free_owner +EXPORT_SYMBOL vmlinux 0x061651be strcat +EXPORT_SYMBOL vmlinux 0x0634100a bitmap_parselist_user +EXPORT_SYMBOL vmlinux 0x064e250e nobh_write_end +EXPORT_SYMBOL vmlinux 0x065246b8 frame_vector_create +EXPORT_SYMBOL vmlinux 0x0660e9b4 __dquot_alloc_space +EXPORT_SYMBOL vmlinux 0x067b1f71 eth_commit_mac_addr_change +EXPORT_SYMBOL vmlinux 0x067f0bb2 default_qdisc_ops +EXPORT_SYMBOL vmlinux 0x068940b1 elv_bio_merge_ok +EXPORT_SYMBOL vmlinux 0x069dc7b7 devm_pci_alloc_host_bridge +EXPORT_SYMBOL vmlinux 0x069de55e iommu_dma_get_resv_regions +EXPORT_SYMBOL vmlinux 0x06a1a406 dma_ops +EXPORT_SYMBOL vmlinux 0x06a86bc1 iowrite16 +EXPORT_SYMBOL vmlinux 0x06a9f112 inet_csk_delete_keepalive_timer +EXPORT_SYMBOL vmlinux 0x06adacaf ptp_clock_register +EXPORT_SYMBOL vmlinux 0x06b23d04 pci_ep_cfs_remove_epc_group +EXPORT_SYMBOL vmlinux 0x06bd88b5 ucs2_strnlen +EXPORT_SYMBOL vmlinux 0x06bff3a3 jbd2_journal_try_to_free_buffers +EXPORT_SYMBOL vmlinux 0x06c8f2de slhc_compress +EXPORT_SYMBOL vmlinux 0x06e3a29f sock_alloc_send_pskb +EXPORT_SYMBOL vmlinux 0x06f68e9f security_inet_conn_request +EXPORT_SYMBOL vmlinux 0x06f6c105 skb_store_bits +EXPORT_SYMBOL vmlinux 0x071ae3a7 xp_raw_get_dma +EXPORT_SYMBOL vmlinux 0x072f901c vme_master_rmw +EXPORT_SYMBOL vmlinux 0x0745a981 xa_erase +EXPORT_SYMBOL vmlinux 0x0756aaa6 tty_driver_kref_put +EXPORT_SYMBOL vmlinux 0x0757f1d3 blk_queue_flag_set +EXPORT_SYMBOL vmlinux 0x07892f83 vfs_get_tree +EXPORT_SYMBOL vmlinux 0x079eeafe adjust_managed_page_count +EXPORT_SYMBOL vmlinux 0x07a58fab _copy_from_iter_full +EXPORT_SYMBOL vmlinux 0x07a890c8 fb_alloc_cmap +EXPORT_SYMBOL vmlinux 0x07ae985e pci_write_config_word +EXPORT_SYMBOL vmlinux 0x07c56d66 __sk_mem_raise_allocated +EXPORT_SYMBOL vmlinux 0x07c92c2d sk_page_frag_refill +EXPORT_SYMBOL vmlinux 0x07cc4a5d printk_timed_ratelimit +EXPORT_SYMBOL vmlinux 0x07ceeac9 panic_notifier_list +EXPORT_SYMBOL vmlinux 0x07f57478 pci_unmap_iospace +EXPORT_SYMBOL vmlinux 0x0805f2c8 ecryptfs_get_auth_tok_key +EXPORT_SYMBOL vmlinux 0x08162c74 free_bucket_spinlocks +EXPORT_SYMBOL vmlinux 0x08249512 iwe_stream_add_point +EXPORT_SYMBOL vmlinux 0x08254e32 filemap_page_mkwrite +EXPORT_SYMBOL vmlinux 0x082c3213 pci_root_buses +EXPORT_SYMBOL vmlinux 0x083eb21c rfkill_unregister +EXPORT_SYMBOL vmlinux 0x084972eb jbd2_journal_extend +EXPORT_SYMBOL vmlinux 0x0870448e dev_disable_lro +EXPORT_SYMBOL vmlinux 0x0882a449 security_xfrm_policy_alloc +EXPORT_SYMBOL vmlinux 0x08b6ffe8 vmf_insert_mixed +EXPORT_SYMBOL vmlinux 0x08d049e0 tcp_prot +EXPORT_SYMBOL vmlinux 0x08dc85ce to_nd_btt +EXPORT_SYMBOL vmlinux 0x08df8094 inode_init_owner +EXPORT_SYMBOL vmlinux 0x08e1f494 tso_build_data +EXPORT_SYMBOL vmlinux 0x08e48584 scsi_target_quiesce +EXPORT_SYMBOL vmlinux 0x08f7a31d ipv6_select_ident +EXPORT_SYMBOL vmlinux 0x090366ec seq_open_private +EXPORT_SYMBOL vmlinux 0x0903fdbc dmam_pool_create +EXPORT_SYMBOL vmlinux 0x0904794b sk_stream_kill_queues +EXPORT_SYMBOL vmlinux 0x09179e18 fget_raw +EXPORT_SYMBOL vmlinux 0x0921b8e2 jbd2_journal_get_undo_access +EXPORT_SYMBOL vmlinux 0x092e26bf acpi_remove_address_space_handler +EXPORT_SYMBOL vmlinux 0x093712e5 acpi_purge_cached_objects +EXPORT_SYMBOL vmlinux 0x0944c43f node_states +EXPORT_SYMBOL vmlinux 0x09545113 dcb_ieee_getapp_default_prio_mask +EXPORT_SYMBOL vmlinux 0x09649fa7 nf_ip_checksum +EXPORT_SYMBOL vmlinux 0x09682235 down_timeout +EXPORT_SYMBOL vmlinux 0x09769037 dmt_modes +EXPORT_SYMBOL vmlinux 0x097af021 neigh_proc_dointvec_jiffies +EXPORT_SYMBOL vmlinux 0x098b71c6 fb_dealloc_cmap +EXPORT_SYMBOL vmlinux 0x09937789 __dynamic_netdev_dbg +EXPORT_SYMBOL vmlinux 0x099bd0fb kernel_write +EXPORT_SYMBOL vmlinux 0x09aa57d6 blk_mq_delay_kick_requeue_list +EXPORT_SYMBOL vmlinux 0x09c8eb55 font_vga_8x16 +EXPORT_SYMBOL vmlinux 0x09cd4ce8 inet_del_offload +EXPORT_SYMBOL vmlinux 0x09cf1a25 pci_disable_msix +EXPORT_SYMBOL vmlinux 0x09d44df9 in_lock_functions +EXPORT_SYMBOL vmlinux 0x09da0ba4 xa_set_mark +EXPORT_SYMBOL vmlinux 0x09e2b152 nf_unregister_sockopt +EXPORT_SYMBOL vmlinux 0x09f2f36e __skb_flow_dissect +EXPORT_SYMBOL vmlinux 0x09f72904 __netlink_dump_start +EXPORT_SYMBOL vmlinux 0x09fec150 lock_two_nondirectories +EXPORT_SYMBOL vmlinux 0x0a0ebc08 __xa_cmpxchg +EXPORT_SYMBOL vmlinux 0x0a10424c start_tty +EXPORT_SYMBOL vmlinux 0x0a1dbc76 tcp_rx_skb_cache_key +EXPORT_SYMBOL vmlinux 0x0a226cb9 register_tcf_proto_ops +EXPORT_SYMBOL vmlinux 0x0a292872 reservation_seqcount_class +EXPORT_SYMBOL vmlinux 0x0a2af6bf __page_cache_alloc +EXPORT_SYMBOL vmlinux 0x0a321118 scsi_host_get +EXPORT_SYMBOL vmlinux 0x0a4913a2 pci_bus_add_devices +EXPORT_SYMBOL vmlinux 0x0a4af2b6 vfs_fsync +EXPORT_SYMBOL vmlinux 0x0a4bc54f tcp_gro_complete +EXPORT_SYMBOL vmlinux 0x0a53a154 tc_setup_cb_destroy +EXPORT_SYMBOL vmlinux 0x0a691412 devm_backlight_device_unregister +EXPORT_SYMBOL vmlinux 0x0a770832 register_memory_notifier +EXPORT_SYMBOL vmlinux 0x0a7ee055 xfrm_state_free +EXPORT_SYMBOL vmlinux 0x0a8658c8 blk_rq_init +EXPORT_SYMBOL vmlinux 0x0a9a47f6 would_dump +EXPORT_SYMBOL vmlinux 0x0aa309cf synchronize_hardirq +EXPORT_SYMBOL vmlinux 0x0aaba3d0 ata_link_printk +EXPORT_SYMBOL vmlinux 0x0aaccc92 pci_remap_iospace +EXPORT_SYMBOL vmlinux 0x0abdd85d phy_ethtool_get_wol +EXPORT_SYMBOL vmlinux 0x0ac1f3bb cdev_del +EXPORT_SYMBOL vmlinux 0x0ac88dff phy_aneg_done +EXPORT_SYMBOL vmlinux 0x0ac942aa inode_permission +EXPORT_SYMBOL vmlinux 0x0acf7679 dma_issue_pending_all +EXPORT_SYMBOL vmlinux 0x0ad10eb8 _raw_read_unlock_bh +EXPORT_SYMBOL vmlinux 0x0aeff6ba jbd2_journal_init_dev +EXPORT_SYMBOL vmlinux 0x0af20eae down_read_interruptible +EXPORT_SYMBOL vmlinux 0x0b019441 dma_resv_reserve_shared +EXPORT_SYMBOL vmlinux 0x0b03104d agp3_generic_tlbflush +EXPORT_SYMBOL vmlinux 0x0b13ec83 ps2_handle_response +EXPORT_SYMBOL vmlinux 0x0b1beb31 vmalloc_32_user +EXPORT_SYMBOL vmlinux 0x0b26b8c8 acpi_run_osc +EXPORT_SYMBOL vmlinux 0x0b290ada dma_fence_chain_walk +EXPORT_SYMBOL vmlinux 0x0b2cb334 psched_ratecfg_precompute +EXPORT_SYMBOL vmlinux 0x0b30f0be set_security_override_from_ctx +EXPORT_SYMBOL vmlinux 0x0b32b80b sock_common_setsockopt +EXPORT_SYMBOL vmlinux 0x0b33b1d2 pcix_set_mmrbc +EXPORT_SYMBOL vmlinux 0x0b34eff5 read_cache_page_gfp +EXPORT_SYMBOL vmlinux 0x0b3add81 fbcon_set_bitops +EXPORT_SYMBOL vmlinux 0x0b435b5a mipi_dsi_dcs_get_power_mode +EXPORT_SYMBOL vmlinux 0x0b436657 security_d_instantiate +EXPORT_SYMBOL vmlinux 0x0b5eb636 dquot_get_next_id +EXPORT_SYMBOL vmlinux 0x0b637410 cr4_update_irqsoff +EXPORT_SYMBOL vmlinux 0x0b742fd7 simple_strtol +EXPORT_SYMBOL vmlinux 0x0b761eb5 netdev_features_change +EXPORT_SYMBOL vmlinux 0x0b77abb0 zap_page_range +EXPORT_SYMBOL vmlinux 0x0b96635a bh_uptodate_or_lock +EXPORT_SYMBOL vmlinux 0x0b9cf727 netdev_upper_dev_unlink +EXPORT_SYMBOL vmlinux 0x0ba5d8e7 skb_find_text +EXPORT_SYMBOL vmlinux 0x0bb1cbc1 netdev_master_upper_dev_get_rcu +EXPORT_SYMBOL vmlinux 0x0bbfbb41 __skb_wait_for_more_packets +EXPORT_SYMBOL vmlinux 0x0bc477a2 irq_set_irq_type +EXPORT_SYMBOL vmlinux 0x0bcbc35a dma_resv_add_shared_fence +EXPORT_SYMBOL vmlinux 0x0bfea946 legacy_pic +EXPORT_SYMBOL vmlinux 0x0c0a3198 scsi_is_host_device +EXPORT_SYMBOL vmlinux 0x0c0f79af ZSTD_getDictID_fromFrame +EXPORT_SYMBOL vmlinux 0x0c178a6c netlink_ns_capable +EXPORT_SYMBOL vmlinux 0x0c17cfc8 uart_register_driver +EXPORT_SYMBOL vmlinux 0x0c25ec48 secure_tcpv6_seq +EXPORT_SYMBOL vmlinux 0x0c36ebcf genl_register_family +EXPORT_SYMBOL vmlinux 0x0c4ea3e6 inet_del_protocol +EXPORT_SYMBOL vmlinux 0x0c6b8f93 netdev_info +EXPORT_SYMBOL vmlinux 0x0c6bdc3f vme_master_read +EXPORT_SYMBOL vmlinux 0x0c74bcc7 __ip4_datagram_connect +EXPORT_SYMBOL vmlinux 0x0c826478 jbd2_journal_revoke +EXPORT_SYMBOL vmlinux 0x0c877901 lookup_one_len_unlocked +EXPORT_SYMBOL vmlinux 0x0c942639 pnp_get_resource +EXPORT_SYMBOL vmlinux 0x0caaf4b7 mipi_dsi_dcs_write_buffer +EXPORT_SYMBOL vmlinux 0x0cb264a1 security_lock_kernel_down +EXPORT_SYMBOL vmlinux 0x0cb97250 _copy_from_iter_full_nocache +EXPORT_SYMBOL vmlinux 0x0cc4b4b6 crc_ccitt_false +EXPORT_SYMBOL vmlinux 0x0cd5835b ipv6_flowlabel_exclusive +EXPORT_SYMBOL vmlinux 0x0ce19729 mb_cache_entry_touch +EXPORT_SYMBOL vmlinux 0x0ce47dfc d_rehash +EXPORT_SYMBOL vmlinux 0x0d07f543 get_anon_bdev +EXPORT_SYMBOL vmlinux 0x0d0b5113 __block_write_begin +EXPORT_SYMBOL vmlinux 0x0d13439a xfrm_register_type_offload +EXPORT_SYMBOL vmlinux 0x0d174361 pcim_iounmap +EXPORT_SYMBOL vmlinux 0x0d50f88f put_disk_and_module +EXPORT_SYMBOL vmlinux 0x0d518335 vfs_rename +EXPORT_SYMBOL vmlinux 0x0d542439 __ipv6_addr_type +EXPORT_SYMBOL vmlinux 0x0d6187da pci_wake_from_d3 +EXPORT_SYMBOL vmlinux 0x0d61eeee __bitmap_subset +EXPORT_SYMBOL vmlinux 0x0d67046c get_ipc_ns_exported +EXPORT_SYMBOL vmlinux 0x0d748dbb qdisc_hash_del +EXPORT_SYMBOL vmlinux 0x0d7bfae8 mod_node_page_state +EXPORT_SYMBOL vmlinux 0x0d9fadfa configfs_depend_item_unlocked +EXPORT_SYMBOL vmlinux 0x0db0cda9 skb_copy_datagram_from_iter +EXPORT_SYMBOL vmlinux 0x0dc06c59 d_add +EXPORT_SYMBOL vmlinux 0x0dc1c86d kiocb_set_cancel_fn +EXPORT_SYMBOL vmlinux 0x0dd15cab __ip_dev_find +EXPORT_SYMBOL vmlinux 0x0e002e2a tcp_fastopen_defer_connect +EXPORT_SYMBOL vmlinux 0x0e034058 blk_integrity_compare +EXPORT_SYMBOL vmlinux 0x0e0a9f1f unpin_user_pages +EXPORT_SYMBOL vmlinux 0x0e17678a siphash_4u64 +EXPORT_SYMBOL vmlinux 0x0e1fec63 tcp_rcv_established +EXPORT_SYMBOL vmlinux 0x0e23b37f alloc_cpumask_var_node +EXPORT_SYMBOL vmlinux 0x0e24f7b6 pci_save_state +EXPORT_SYMBOL vmlinux 0x0e27a2dd ZSTD_initCCtx +EXPORT_SYMBOL vmlinux 0x0e286180 __block_write_full_page +EXPORT_SYMBOL vmlinux 0x0e2e7ba1 fscrypt_has_permitted_context +EXPORT_SYMBOL vmlinux 0x0e49d6e0 compat_ipv6_setsockopt +EXPORT_SYMBOL vmlinux 0x0e65f588 neigh_destroy +EXPORT_SYMBOL vmlinux 0x0e69d8a4 ethtool_rx_flow_rule_destroy +EXPORT_SYMBOL vmlinux 0x0e6ebc97 sk_capable +EXPORT_SYMBOL vmlinux 0x0e74ad2d utf8ncursor +EXPORT_SYMBOL vmlinux 0x0e9035dd bio_integrity_trim +EXPORT_SYMBOL vmlinux 0x0e93d897 mfd_add_devices +EXPORT_SYMBOL vmlinux 0x0e980270 kthread_stop +EXPORT_SYMBOL vmlinux 0x0ea549ac md_unregister_thread +EXPORT_SYMBOL vmlinux 0x0ea813d7 block_is_partially_uptodate +EXPORT_SYMBOL vmlinux 0x0eaa6aed skb_page_frag_refill +EXPORT_SYMBOL vmlinux 0x0ec5babe vme_dma_free +EXPORT_SYMBOL vmlinux 0x0ecc8d92 dquot_destroy +EXPORT_SYMBOL vmlinux 0x0ed813f2 inet_sendpage +EXPORT_SYMBOL vmlinux 0x0ed93206 pci_pme_capable +EXPORT_SYMBOL vmlinux 0x0ee565b2 __set_page_dirty_nobuffers +EXPORT_SYMBOL vmlinux 0x0f05c7b8 __x86_indirect_thunk_r15 +EXPORT_SYMBOL vmlinux 0x0f07966f seq_write +EXPORT_SYMBOL vmlinux 0x0f09cc34 schedule_timeout_killable +EXPORT_SYMBOL vmlinux 0x0f37ca89 lockref_put_not_zero +EXPORT_SYMBOL vmlinux 0x0f4b2ea1 _dev_warn +EXPORT_SYMBOL vmlinux 0x0f50712e blk_mq_complete_request +EXPORT_SYMBOL vmlinux 0x0f798e95 tcp_setsockopt +EXPORT_SYMBOL vmlinux 0x0f7a94e2 iterate_dir +EXPORT_SYMBOL vmlinux 0x0f82c490 tcf_generic_walker +EXPORT_SYMBOL vmlinux 0x0f86f560 kthread_delayed_work_timer_fn +EXPORT_SYMBOL vmlinux 0x0f88f9c0 sock_no_bind +EXPORT_SYMBOL vmlinux 0x0f977aa3 flow_rule_match_enc_ports +EXPORT_SYMBOL vmlinux 0x0fab1ab0 hdmi_spd_infoframe_pack +EXPORT_SYMBOL vmlinux 0x0faef0ed __tasklet_schedule +EXPORT_SYMBOL vmlinux 0x0faf01e2 jbd2_journal_start_commit +EXPORT_SYMBOL vmlinux 0x0fb2f8a4 mktime64 +EXPORT_SYMBOL vmlinux 0x0fb6d803 security_secctx_to_secid +EXPORT_SYMBOL vmlinux 0x0fbe6d12 phy_mac_interrupt +EXPORT_SYMBOL vmlinux 0x0fd902db mb_cache_entry_create +EXPORT_SYMBOL vmlinux 0x0fe859ca passthru_features_check +EXPORT_SYMBOL vmlinux 0x0ff728f9 __dev_get_by_flags +EXPORT_SYMBOL vmlinux 0x0ff80f59 zalloc_cpumask_var +EXPORT_SYMBOL vmlinux 0x0fff5afc time64_to_tm +EXPORT_SYMBOL vmlinux 0x100fbe69 vm_zone_stat +EXPORT_SYMBOL vmlinux 0x1025f680 __post_watch_notification +EXPORT_SYMBOL vmlinux 0x102bed66 cpu_info +EXPORT_SYMBOL vmlinux 0x1035c7c2 __release_region +EXPORT_SYMBOL vmlinux 0x103d6e52 jbd2_journal_errno +EXPORT_SYMBOL vmlinux 0x103eb074 kmem_cache_alloc_node_trace +EXPORT_SYMBOL vmlinux 0x104ec45b inode_insert5 +EXPORT_SYMBOL vmlinux 0x1057a279 bsearch +EXPORT_SYMBOL vmlinux 0x1067158b setup_new_exec +EXPORT_SYMBOL vmlinux 0x1068004b gf128mul_bbe +EXPORT_SYMBOL vmlinux 0x10740479 __dev_get_by_name +EXPORT_SYMBOL vmlinux 0x1077582d nd_device_register +EXPORT_SYMBOL vmlinux 0x107e5878 zlib_inflateEnd +EXPORT_SYMBOL vmlinux 0x10940da2 unmap_mapping_range +EXPORT_SYMBOL vmlinux 0x10ad6be2 pci_irq_vector +EXPORT_SYMBOL vmlinux 0x10ae9c4d file_update_time +EXPORT_SYMBOL vmlinux 0x10c3f57e __gnet_stats_copy_queue +EXPORT_SYMBOL vmlinux 0x10c5974f configfs_register_default_group +EXPORT_SYMBOL vmlinux 0x10c9dc69 xfrm4_protocol_deregister +EXPORT_SYMBOL vmlinux 0x10d9f885 scsi_sense_desc_find +EXPORT_SYMBOL vmlinux 0x10dfd4d6 tcp_time_wait +EXPORT_SYMBOL vmlinux 0x10e11c48 register_filesystem +EXPORT_SYMBOL vmlinux 0x11089ac7 _ctype +EXPORT_SYMBOL vmlinux 0x1109e448 filemap_fault +EXPORT_SYMBOL vmlinux 0x110f2eb9 kthread_create_on_node +EXPORT_SYMBOL vmlinux 0x111b6768 __pci_register_driver +EXPORT_SYMBOL vmlinux 0x113f588f netlink_ack +EXPORT_SYMBOL vmlinux 0x114990b2 skb_copy_and_hash_datagram_iter +EXPORT_SYMBOL vmlinux 0x1163f0a7 blk_max_low_pfn +EXPORT_SYMBOL vmlinux 0x116c60d2 blk_mq_start_stopped_hw_queues +EXPORT_SYMBOL vmlinux 0x117093be qdisc_class_hash_init +EXPORT_SYMBOL vmlinux 0x118a9f5e vlan_for_each +EXPORT_SYMBOL vmlinux 0x11a1b9bc agp_generic_alloc_user +EXPORT_SYMBOL vmlinux 0x11a42908 kthread_bind +EXPORT_SYMBOL vmlinux 0x11a77574 dev_vprintk_emit +EXPORT_SYMBOL vmlinux 0x11b86f2d __x86_retpoline_rbp +EXPORT_SYMBOL vmlinux 0x11d48a8d pci_free_irq_vectors +EXPORT_SYMBOL vmlinux 0x11e0ec41 dm_read_arg +EXPORT_SYMBOL vmlinux 0x11e30762 chacha_block_generic +EXPORT_SYMBOL vmlinux 0x11f47d8c utf8_strncmp +EXPORT_SYMBOL vmlinux 0x11f7ed4c hex_to_bin +EXPORT_SYMBOL vmlinux 0x120214e6 simple_statfs +EXPORT_SYMBOL vmlinux 0x120b336a __rb_insert_augmented +EXPORT_SYMBOL vmlinux 0x120e7e72 get_fs_type +EXPORT_SYMBOL vmlinux 0x12210056 tcf_action_dump_1 +EXPORT_SYMBOL vmlinux 0x122fc516 serial8250_register_8250_port +EXPORT_SYMBOL vmlinux 0x124e1557 __breadahead +EXPORT_SYMBOL vmlinux 0x1278221d ZSTD_compressBegin_usingCDict +EXPORT_SYMBOL vmlinux 0x127d19a4 __free_pages +EXPORT_SYMBOL vmlinux 0x129d3219 security_path_mkdir +EXPORT_SYMBOL vmlinux 0x12a38747 usleep_range +EXPORT_SYMBOL vmlinux 0x12ba395e delete_from_page_cache +EXPORT_SYMBOL vmlinux 0x12c67317 prepare_to_swait_exclusive +EXPORT_SYMBOL vmlinux 0x12c8b1cb flush_signals +EXPORT_SYMBOL vmlinux 0x12cabc89 siphash_2u64 +EXPORT_SYMBOL vmlinux 0x12cbf9bc file_remove_privs +EXPORT_SYMBOL vmlinux 0x12d21427 xp_dma_unmap +EXPORT_SYMBOL vmlinux 0x12da358b phy_device_register +EXPORT_SYMBOL vmlinux 0x12f08c58 device_get_mac_address +EXPORT_SYMBOL vmlinux 0x12f6f69c fb_videomode_to_var +EXPORT_SYMBOL vmlinux 0x130afd75 acpi_get_sleep_type_data +EXPORT_SYMBOL vmlinux 0x13110126 request_resource +EXPORT_SYMBOL vmlinux 0x131a6146 xa_clear_mark +EXPORT_SYMBOL vmlinux 0x13235f01 lease_modify +EXPORT_SYMBOL vmlinux 0x133fe1b5 __skb_ext_del +EXPORT_SYMBOL vmlinux 0x1344d7e6 acpi_enable_gpe +EXPORT_SYMBOL vmlinux 0x134cdd34 inet_frag_rbtree_purge +EXPORT_SYMBOL vmlinux 0x134ce9ff ex_handler_clear_fs +EXPORT_SYMBOL vmlinux 0x135201ad d_exact_alias +EXPORT_SYMBOL vmlinux 0x135e48c7 km_policy_expired +EXPORT_SYMBOL vmlinux 0x13634b7b sock_no_setsockopt +EXPORT_SYMBOL vmlinux 0x136c75cc fs_lookup_param +EXPORT_SYMBOL vmlinux 0x137396c2 blk_queue_max_discard_sectors +EXPORT_SYMBOL vmlinux 0x137f3c6a __cpuhp_remove_state_cpuslocked +EXPORT_SYMBOL vmlinux 0x1389619c __max_die_per_package +EXPORT_SYMBOL vmlinux 0x13976c17 tcp_sendmsg +EXPORT_SYMBOL vmlinux 0x139f2189 __kfifo_alloc +EXPORT_SYMBOL vmlinux 0x13b2c78c truncate_inode_pages_range +EXPORT_SYMBOL vmlinux 0x13bff621 jbd2_journal_start_reserved +EXPORT_SYMBOL vmlinux 0x13d0adf7 __kfifo_out +EXPORT_SYMBOL vmlinux 0x13d9be28 blk_queue_max_hw_sectors +EXPORT_SYMBOL vmlinux 0x13f42152 system_entering_hibernation +EXPORT_SYMBOL vmlinux 0x13ffb94d napi_consume_skb +EXPORT_SYMBOL vmlinux 0x14047c70 backlight_device_unregister +EXPORT_SYMBOL vmlinux 0x141271bf acpi_dev_found +EXPORT_SYMBOL vmlinux 0x14334b51 __udp_disconnect +EXPORT_SYMBOL vmlinux 0x14605535 dma_fence_context_alloc +EXPORT_SYMBOL vmlinux 0x146289b7 crc16_table +EXPORT_SYMBOL vmlinux 0x146abe53 blkdev_put +EXPORT_SYMBOL vmlinux 0x146b002e __dev_set_mtu +EXPORT_SYMBOL vmlinux 0x1473a76d proc_create +EXPORT_SYMBOL vmlinux 0x147a2f47 jbd2_journal_load +EXPORT_SYMBOL vmlinux 0x148534b4 tty_register_ldisc +EXPORT_SYMBOL vmlinux 0x1487c7a3 inet_select_addr +EXPORT_SYMBOL vmlinux 0x148cf1f6 ps2_cmd_aborted +EXPORT_SYMBOL vmlinux 0x14921939 ip_tunnel_get_link_net +EXPORT_SYMBOL vmlinux 0x14a3a80b generic_delete_inode +EXPORT_SYMBOL vmlinux 0x14b7ed5f dquot_mark_dquot_dirty +EXPORT_SYMBOL vmlinux 0x14c67e3e tcp_tx_delay_enabled +EXPORT_SYMBOL vmlinux 0x14e6b41a cdev_set_parent +EXPORT_SYMBOL vmlinux 0x14f17d35 sock_set_keepalive +EXPORT_SYMBOL vmlinux 0x14fb2365 cmdline_parts_set +EXPORT_SYMBOL vmlinux 0x15054a06 blk_dump_rq_flags +EXPORT_SYMBOL vmlinux 0x150e3657 _raw_read_lock_bh +EXPORT_SYMBOL vmlinux 0x151f4898 schedule_timeout_uninterruptible +EXPORT_SYMBOL vmlinux 0x1526b301 unix_tot_inflight +EXPORT_SYMBOL vmlinux 0x1529e059 devfreq_add_governor +EXPORT_SYMBOL vmlinux 0x152af77a tcf_exts_dump +EXPORT_SYMBOL vmlinux 0x1543222c tcp_check_req +EXPORT_SYMBOL vmlinux 0x154c6338 dm_kcopyd_client_destroy +EXPORT_SYMBOL vmlinux 0x1560ab65 dma_direct_sync_sg_for_device +EXPORT_SYMBOL vmlinux 0x1579674a fc_host_fpin_rcv +EXPORT_SYMBOL vmlinux 0x157a24be kmem_cache_free +EXPORT_SYMBOL vmlinux 0x1591a40d clear_nlink +EXPORT_SYMBOL vmlinux 0x1593e031 flow_rule_match_vlan +EXPORT_SYMBOL vmlinux 0x15ac8abb single_open_size +EXPORT_SYMBOL vmlinux 0x15b31a3d qdisc_watchdog_init_clockid +EXPORT_SYMBOL vmlinux 0x15ba50a6 jiffies +EXPORT_SYMBOL vmlinux 0x15bafe29 unregister_md_cluster_operations +EXPORT_SYMBOL vmlinux 0x15bed7a5 LZ4_decompress_safe_partial +EXPORT_SYMBOL vmlinux 0x15c2e1c3 skb_copy_bits +EXPORT_SYMBOL vmlinux 0x15c85de3 mempool_init +EXPORT_SYMBOL vmlinux 0x15f074e1 tcp_v4_conn_request +EXPORT_SYMBOL vmlinux 0x15f7983f __x86_retpoline_r13 +EXPORT_SYMBOL vmlinux 0x160ea4c8 sfi_disabled +EXPORT_SYMBOL vmlinux 0x16286538 iowrite64be_lo_hi +EXPORT_SYMBOL vmlinux 0x162893fd hashlen_string +EXPORT_SYMBOL vmlinux 0x162b9d6c skb_abort_seq_read +EXPORT_SYMBOL vmlinux 0x16301b34 wrmsrl_on_cpu +EXPORT_SYMBOL vmlinux 0x16316a10 ZSTD_getFrameContentSize +EXPORT_SYMBOL vmlinux 0x163bfb93 cdev_device_del +EXPORT_SYMBOL vmlinux 0x163e32b3 dec_node_page_state +EXPORT_SYMBOL vmlinux 0x167bae20 call_usermodehelper_setup +EXPORT_SYMBOL vmlinux 0x167c5967 print_hex_dump +EXPORT_SYMBOL vmlinux 0x167e7f9d __get_user_1 +EXPORT_SYMBOL vmlinux 0x1682f8a9 security_inode_listsecurity +EXPORT_SYMBOL vmlinux 0x168c17be cdev_init +EXPORT_SYMBOL vmlinux 0x169614f6 get_acl +EXPORT_SYMBOL vmlinux 0x169938c1 __sysfs_match_string +EXPORT_SYMBOL vmlinux 0x16af42dd ppp_register_net_channel +EXPORT_SYMBOL vmlinux 0x16b72287 ps2_init +EXPORT_SYMBOL vmlinux 0x16c30966 netpoll_poll_enable +EXPORT_SYMBOL vmlinux 0x16cdc340 acpi_get_table +EXPORT_SYMBOL vmlinux 0x16d3b057 fb_show_logo +EXPORT_SYMBOL vmlinux 0x16dee44d dma_fence_init +EXPORT_SYMBOL vmlinux 0x16e297c3 bit_wait +EXPORT_SYMBOL vmlinux 0x16f269bd drop_super_exclusive +EXPORT_SYMBOL vmlinux 0x16fa92a4 datagram_poll +EXPORT_SYMBOL vmlinux 0x16ff6675 make_bad_inode +EXPORT_SYMBOL vmlinux 0x17012352 simple_transaction_read +EXPORT_SYMBOL vmlinux 0x170ddf79 acpi_install_notify_handler +EXPORT_SYMBOL vmlinux 0x170eb06b set_pages_array_uc +EXPORT_SYMBOL vmlinux 0x1727dc44 posix_acl_to_xattr +EXPORT_SYMBOL vmlinux 0x174f7f17 inet_proto_csum_replace16 +EXPORT_SYMBOL vmlinux 0x1752fe40 clear_inode +EXPORT_SYMBOL vmlinux 0x175e33fb dma_spin_lock +EXPORT_SYMBOL vmlinux 0x1765688c rdmacg_uncharge +EXPORT_SYMBOL vmlinux 0x1765ea1f __xa_alloc_cyclic +EXPORT_SYMBOL vmlinux 0x1765ec77 skb_flow_dissect_meta +EXPORT_SYMBOL vmlinux 0x1772d2e4 xfrm_policy_register_afinfo +EXPORT_SYMBOL vmlinux 0x1773b84b tcf_em_register +EXPORT_SYMBOL vmlinux 0x17884423 pci_read_config_byte +EXPORT_SYMBOL vmlinux 0x179abe27 neigh_connected_output +EXPORT_SYMBOL vmlinux 0x17ae2d6d bdget_disk +EXPORT_SYMBOL vmlinux 0x17bcf073 blk_post_runtime_suspend +EXPORT_SYMBOL vmlinux 0x17be68ca acpi_clear_event +EXPORT_SYMBOL vmlinux 0x17c90b58 sock_set_priority +EXPORT_SYMBOL vmlinux 0x17ce826b vfs_get_super +EXPORT_SYMBOL vmlinux 0x17ee1f7c netdev_master_upper_dev_get +EXPORT_SYMBOL vmlinux 0x17f341a0 i8042_lock_chip +EXPORT_SYMBOL vmlinux 0x17fe93ea shrink_dcache_sb +EXPORT_SYMBOL vmlinux 0x180cb8ce __neigh_for_each_release +EXPORT_SYMBOL vmlinux 0x18164e82 make_kgid +EXPORT_SYMBOL vmlinux 0x18345b8e __bitmap_replace +EXPORT_SYMBOL vmlinux 0x183d25c3 param_ops_string +EXPORT_SYMBOL vmlinux 0x18494146 uart_unregister_driver +EXPORT_SYMBOL vmlinux 0x184fe875 mfd_remove_devices +EXPORT_SYMBOL vmlinux 0x18537622 netdev_adjacent_change_abort +EXPORT_SYMBOL vmlinux 0x185aca44 security_sk_clone +EXPORT_SYMBOL vmlinux 0x185ef960 set_user_nice +EXPORT_SYMBOL vmlinux 0x186766ac xsk_umem_complete_tx +EXPORT_SYMBOL vmlinux 0x187a4ecd __tracepoint_read_msr +EXPORT_SYMBOL vmlinux 0x1886fef8 find_vma +EXPORT_SYMBOL vmlinux 0x18888d00 downgrade_write +EXPORT_SYMBOL vmlinux 0x188ea314 jiffies_to_timespec64 +EXPORT_SYMBOL vmlinux 0x1892a4b3 nf_log_bind_pf +EXPORT_SYMBOL vmlinux 0x18a47e48 skb_try_coalesce +EXPORT_SYMBOL vmlinux 0x18a5082f xfrm_stateonly_find +EXPORT_SYMBOL vmlinux 0x18a733bd d_drop +EXPORT_SYMBOL vmlinux 0x18b72573 register_kmmio_probe +EXPORT_SYMBOL vmlinux 0x18cca064 zpool_register_driver +EXPORT_SYMBOL vmlinux 0x18d18b51 dma_resv_init +EXPORT_SYMBOL vmlinux 0x18e60984 __do_once_start +EXPORT_SYMBOL vmlinux 0x18efd028 hdmi_drm_infoframe_unpack_only +EXPORT_SYMBOL vmlinux 0x18f7347e sync_filesystem +EXPORT_SYMBOL vmlinux 0x1951c29b ps2_drain +EXPORT_SYMBOL vmlinux 0x1951f0bf tcf_get_next_proto +EXPORT_SYMBOL vmlinux 0x1953c958 mempool_create +EXPORT_SYMBOL vmlinux 0x19567d06 vfio_info_cap_shift +EXPORT_SYMBOL vmlinux 0x196ba8ee sock_bindtoindex +EXPORT_SYMBOL vmlinux 0x1984d421 out_of_line_wait_on_bit +EXPORT_SYMBOL vmlinux 0x198620d7 security_add_mnt_opt +EXPORT_SYMBOL vmlinux 0x1991ff92 scsicam_bios_param +EXPORT_SYMBOL vmlinux 0x199ed0cd net_disable_timestamp +EXPORT_SYMBOL vmlinux 0x19bd383b security_secmark_refcount_dec +EXPORT_SYMBOL vmlinux 0x19be8c7f skb_flow_dissect_ct +EXPORT_SYMBOL vmlinux 0x19df99b9 acpi_finish_gpe +EXPORT_SYMBOL vmlinux 0x1a0878b2 generic_write_checks +EXPORT_SYMBOL vmlinux 0x1a107de2 ZSTD_compressCCtx +EXPORT_SYMBOL vmlinux 0x1a1bac9c ZSTD_decompressDCtx +EXPORT_SYMBOL vmlinux 0x1a31d4d6 vga_client_register +EXPORT_SYMBOL vmlinux 0x1a3640f9 __dquot_transfer +EXPORT_SYMBOL vmlinux 0x1a45cb6c acpi_disabled +EXPORT_SYMBOL vmlinux 0x1a62d196 dma_direct_sync_sg_for_cpu +EXPORT_SYMBOL vmlinux 0x1a63af34 vga_switcheroo_process_delayed_switch +EXPORT_SYMBOL vmlinux 0x1a746f80 __dev_getfirstbyhwtype +EXPORT_SYMBOL vmlinux 0x1a9a433c prandom_u32_state +EXPORT_SYMBOL vmlinux 0x1aa32e1b unix_detach_fds +EXPORT_SYMBOL vmlinux 0x1aa9fba0 vfio_dma_rw +EXPORT_SYMBOL vmlinux 0x1ac5d3cb strcspn +EXPORT_SYMBOL vmlinux 0x1adc56f1 clocksource_unregister +EXPORT_SYMBOL vmlinux 0x1aec5f87 param_get_bool +EXPORT_SYMBOL vmlinux 0x1b015d25 bitmap_parselist +EXPORT_SYMBOL vmlinux 0x1b1b70eb ping_prot +EXPORT_SYMBOL vmlinux 0x1b22da33 put_watch_queue +EXPORT_SYMBOL vmlinux 0x1b255c68 cdrom_media_changed +EXPORT_SYMBOL vmlinux 0x1b258870 security_inode_notifysecctx +EXPORT_SYMBOL vmlinux 0x1b29b923 skb_queue_head +EXPORT_SYMBOL vmlinux 0x1b2f844c kset_unregister +EXPORT_SYMBOL vmlinux 0x1b379b36 acpi_pm_device_sleep_state +EXPORT_SYMBOL vmlinux 0x1b597b7a swake_up_all +EXPORT_SYMBOL vmlinux 0x1b6314fd in_aton +EXPORT_SYMBOL vmlinux 0x1b689342 tcf_block_netif_keep_dst +EXPORT_SYMBOL vmlinux 0x1b700d37 put_vaddr_frames +EXPORT_SYMBOL vmlinux 0x1b777357 rdmacg_unregister_device +EXPORT_SYMBOL vmlinux 0x1b7ff556 vme_bus_error_handler +EXPORT_SYMBOL vmlinux 0x1b8b95ad i8042_unlock_chip +EXPORT_SYMBOL vmlinux 0x1b8d4944 scsi_block_when_processing_errors +EXPORT_SYMBOL vmlinux 0x1ba59527 __kmalloc_node +EXPORT_SYMBOL vmlinux 0x1bb3f290 ptp_schedule_worker +EXPORT_SYMBOL vmlinux 0x1bb51249 tcp_have_smc +EXPORT_SYMBOL vmlinux 0x1bc025fe writeback_inodes_sb +EXPORT_SYMBOL vmlinux 0x1bc258ae pci_bus_assign_resources +EXPORT_SYMBOL vmlinux 0x1bc48ec3 __brelse +EXPORT_SYMBOL vmlinux 0x1bd177f3 soft_cursor +EXPORT_SYMBOL vmlinux 0x1bd59dbe vme_free_consistent +EXPORT_SYMBOL vmlinux 0x1bdca54a tcf_chain_put_by_act +EXPORT_SYMBOL vmlinux 0x1bec8bb2 __scsi_print_sense +EXPORT_SYMBOL vmlinux 0x1befa335 peernet2id +EXPORT_SYMBOL vmlinux 0x1c06733f fscrypt_put_encryption_info +EXPORT_SYMBOL vmlinux 0x1c0cfd9e pci_get_device +EXPORT_SYMBOL vmlinux 0x1c1b9f8e _raw_write_unlock_irqrestore +EXPORT_SYMBOL vmlinux 0x1c338147 vm_numa_stat +EXPORT_SYMBOL vmlinux 0x1c58427f acpi_remove_notify_handler +EXPORT_SYMBOL vmlinux 0x1c7812b8 udp_gro_receive +EXPORT_SYMBOL vmlinux 0x1c7c7a17 neigh_changeaddr +EXPORT_SYMBOL vmlinux 0x1c7e5ee1 tcp_v4_mtu_reduced +EXPORT_SYMBOL vmlinux 0x1ca45c74 get_mem_cgroup_from_page +EXPORT_SYMBOL vmlinux 0x1cb2c6d8 kvasprintf +EXPORT_SYMBOL vmlinux 0x1cb2ce0b audit_log_object_context +EXPORT_SYMBOL vmlinux 0x1cd8438b pxm_to_node +EXPORT_SYMBOL vmlinux 0x1cd994a7 md_bitmap_close_sync +EXPORT_SYMBOL vmlinux 0x1d00eb38 param_ops_ushort +EXPORT_SYMBOL vmlinux 0x1d07e365 memdup_user_nul +EXPORT_SYMBOL vmlinux 0x1d0edb23 bdput +EXPORT_SYMBOL vmlinux 0x1d19f77b physical_mask +EXPORT_SYMBOL vmlinux 0x1d1abdf0 acpi_get_physical_device_location +EXPORT_SYMBOL vmlinux 0x1d20f5cc fb_set_cmap +EXPORT_SYMBOL vmlinux 0x1d24c881 ___ratelimit +EXPORT_SYMBOL vmlinux 0x1d2d6d15 wait_iff_congested +EXPORT_SYMBOL vmlinux 0x1d350b68 __put_user_ns +EXPORT_SYMBOL vmlinux 0x1d37b795 phy_drivers_register +EXPORT_SYMBOL vmlinux 0x1d40b6f3 idr_for_each +EXPORT_SYMBOL vmlinux 0x1d5f9555 frame_vector_destroy +EXPORT_SYMBOL vmlinux 0x1d71657f generic_file_write_iter +EXPORT_SYMBOL vmlinux 0x1d8309f2 try_module_get +EXPORT_SYMBOL vmlinux 0x1d957c7b dev_get_flags +EXPORT_SYMBOL vmlinux 0x1daec915 __ip_mc_dec_group +EXPORT_SYMBOL vmlinux 0x1db7706b __copy_user_nocache +EXPORT_SYMBOL vmlinux 0x1dc6c93b lookup_user_key +EXPORT_SYMBOL vmlinux 0x1dd571e6 fb_copy_cmap +EXPORT_SYMBOL vmlinux 0x1ddd643c flow_hash_from_keys +EXPORT_SYMBOL vmlinux 0x1de4ccb2 get_sg_io_hdr +EXPORT_SYMBOL vmlinux 0x1dedb2d3 param_ops_long +EXPORT_SYMBOL vmlinux 0x1df5942f tcp_release_cb +EXPORT_SYMBOL vmlinux 0x1df63e88 ZSTD_compressBegin +EXPORT_SYMBOL vmlinux 0x1e0291b3 phy_device_create +EXPORT_SYMBOL vmlinux 0x1e0a0c24 mod_timer_pending +EXPORT_SYMBOL vmlinux 0x1e0cd7fe acpi_detach_data +EXPORT_SYMBOL vmlinux 0x1e17cd57 arch_debugfs_dir +EXPORT_SYMBOL vmlinux 0x1e1e140e ns_to_timespec64 +EXPORT_SYMBOL vmlinux 0x1e2d7b04 nd_integrity_init +EXPORT_SYMBOL vmlinux 0x1e342c3e key_reject_and_link +EXPORT_SYMBOL vmlinux 0x1e62643b skb_flow_dissector_init +EXPORT_SYMBOL vmlinux 0x1e6d26a8 strstr +EXPORT_SYMBOL vmlinux 0x1e9edfb7 seq_hlist_start_head_rcu +EXPORT_SYMBOL vmlinux 0x1ea71ed2 md_write_inc +EXPORT_SYMBOL vmlinux 0x1eb922a3 IO_APIC_get_PCI_irq_vector +EXPORT_SYMBOL vmlinux 0x1ebceffc simple_symlink_inode_operations +EXPORT_SYMBOL vmlinux 0x1ed8b599 __x86_indirect_thunk_r8 +EXPORT_SYMBOL vmlinux 0x1edb69d6 ktime_get_raw_ts64 +EXPORT_SYMBOL vmlinux 0x1edc3f35 fc_block_scsi_eh +EXPORT_SYMBOL vmlinux 0x1ee34ca7 mipi_dsi_device_register_full +EXPORT_SYMBOL vmlinux 0x1ee660db ip_fraglist_init +EXPORT_SYMBOL vmlinux 0x1ef1713e tcf_exts_destroy +EXPORT_SYMBOL vmlinux 0x1ef67b6f mdiobus_unregister_device +EXPORT_SYMBOL vmlinux 0x1f019b56 neigh_seq_start +EXPORT_SYMBOL vmlinux 0x1f03912b ZSTD_flushStream +EXPORT_SYMBOL vmlinux 0x1f089a29 kern_unmount +EXPORT_SYMBOL vmlinux 0x1f1a074d ip_sock_set_freebind +EXPORT_SYMBOL vmlinux 0x1f1b2df8 bio_integrity_clone +EXPORT_SYMBOL vmlinux 0x1f1d6eac pci_release_regions +EXPORT_SYMBOL vmlinux 0x1f38c4f7 dst_discard_out +EXPORT_SYMBOL vmlinux 0x1f557414 gen_pool_has_addr +EXPORT_SYMBOL vmlinux 0x1f6102b4 dquot_initialize_needed +EXPORT_SYMBOL vmlinux 0x1f637b39 pci_choose_state +EXPORT_SYMBOL vmlinux 0x1f6ebbfd fb_set_suspend +EXPORT_SYMBOL vmlinux 0x1f70f7fb ipv6_dev_get_saddr +EXPORT_SYMBOL vmlinux 0x1f911a4d qdisc_watchdog_cancel +EXPORT_SYMBOL vmlinux 0x1f9b3554 sync_inodes_sb +EXPORT_SYMBOL vmlinux 0x1f9c43f0 sock_no_sendpage +EXPORT_SYMBOL vmlinux 0x1faa85ea to_nd_pfn +EXPORT_SYMBOL vmlinux 0x1fb29d4a tty_hung_up_p +EXPORT_SYMBOL vmlinux 0x1fb8483a dev_driver_string +EXPORT_SYMBOL vmlinux 0x1fbd16da ip_tos2prio +EXPORT_SYMBOL vmlinux 0x1fc0cc7c intel_gtt_insert_sg_entries +EXPORT_SYMBOL vmlinux 0x1fc1ecb3 pci_get_slot +EXPORT_SYMBOL vmlinux 0x1fd07fff kdb_grepping_flag +EXPORT_SYMBOL vmlinux 0x1fe912f1 netdev_alloc_frag +EXPORT_SYMBOL vmlinux 0x1ff5654b page_pool_put_page +EXPORT_SYMBOL vmlinux 0x1ffa6dba mdiobus_get_phy +EXPORT_SYMBOL vmlinux 0x20000329 simple_strtoul +EXPORT_SYMBOL vmlinux 0x2003c3c9 __close_fd +EXPORT_SYMBOL vmlinux 0x200b2041 in6addr_any +EXPORT_SYMBOL vmlinux 0x20261761 mark_buffer_write_io_error +EXPORT_SYMBOL vmlinux 0x20268396 __break_lease +EXPORT_SYMBOL vmlinux 0x20286fe3 release_pages +EXPORT_SYMBOL vmlinux 0x202f2e1f rawv6_mh_filter_register +EXPORT_SYMBOL vmlinux 0x2039ac53 dcache_dir_lseek +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 0x204dfdcf generic_shutdown_super +EXPORT_SYMBOL vmlinux 0x205352f7 phy_init_eee +EXPORT_SYMBOL vmlinux 0x205c47a0 netif_tx_wake_queue +EXPORT_SYMBOL vmlinux 0x20630c70 xsk_set_tx_need_wakeup +EXPORT_SYMBOL vmlinux 0x206be4e0 lru_cache_add +EXPORT_SYMBOL vmlinux 0x2072ee9b request_threaded_irq +EXPORT_SYMBOL vmlinux 0x207a653f blk_queue_flag_clear +EXPORT_SYMBOL vmlinux 0x20991b6b mfd_cell_disable +EXPORT_SYMBOL vmlinux 0x20a1b519 acpi_resource_to_address64 +EXPORT_SYMBOL vmlinux 0x20a789ac irq_set_chip_data +EXPORT_SYMBOL vmlinux 0x20b31725 new_inode +EXPORT_SYMBOL vmlinux 0x20ba4f3e rdmsr_on_cpu +EXPORT_SYMBOL vmlinux 0x20c21754 tcp_close +EXPORT_SYMBOL vmlinux 0x20c3e8fd amd_iommu_flush_page +EXPORT_SYMBOL vmlinux 0x20cbb30a __percpu_counter_init +EXPORT_SYMBOL vmlinux 0x20cedb60 vfs_unlink +EXPORT_SYMBOL vmlinux 0x20d37115 set_security_override +EXPORT_SYMBOL vmlinux 0x20d65e40 fb_find_nearest_mode +EXPORT_SYMBOL vmlinux 0x20e4ad87 generic_permission +EXPORT_SYMBOL vmlinux 0x20e9830c get_super +EXPORT_SYMBOL vmlinux 0x20eadeb6 ip_compute_csum +EXPORT_SYMBOL vmlinux 0x20f80c4b dm_mq_kick_requeue_list +EXPORT_SYMBOL vmlinux 0x20fff6ec ZSTD_DStreamInSize +EXPORT_SYMBOL vmlinux 0x2104f357 mpage_readpage +EXPORT_SYMBOL vmlinux 0x210b88dd seq_read +EXPORT_SYMBOL vmlinux 0x210bc020 fb_find_mode +EXPORT_SYMBOL vmlinux 0x211130c1 alloc_cpumask_var +EXPORT_SYMBOL vmlinux 0x2111a391 inet_addr_type_dev_table +EXPORT_SYMBOL vmlinux 0x211b082d netdev_err +EXPORT_SYMBOL vmlinux 0x211dd0ef crypto_sha1_update +EXPORT_SYMBOL vmlinux 0x2131e7e9 vfs_link +EXPORT_SYMBOL vmlinux 0x213a738d memregion_alloc +EXPORT_SYMBOL vmlinux 0x213e4965 ps2_is_keyboard_id +EXPORT_SYMBOL vmlinux 0x21580dec nobh_write_begin +EXPORT_SYMBOL vmlinux 0x2159ee8e __pskb_copy_fclone +EXPORT_SYMBOL vmlinux 0x215a8ec8 slhc_init +EXPORT_SYMBOL vmlinux 0x21606dd4 md_bitmap_sync_with_cluster +EXPORT_SYMBOL vmlinux 0x2177bd71 acpi_disable_event +EXPORT_SYMBOL vmlinux 0x217db9dd inode_io_list_del +EXPORT_SYMBOL vmlinux 0x218e600b pci_add_resource_offset +EXPORT_SYMBOL vmlinux 0x218f47d0 sk_stream_error +EXPORT_SYMBOL vmlinux 0x219962a4 blk_mq_rq_cpu +EXPORT_SYMBOL vmlinux 0x21bdb523 errseq_check_and_advance +EXPORT_SYMBOL vmlinux 0x21be37e1 hdmi_avi_infoframe_check +EXPORT_SYMBOL vmlinux 0x21bf3faf scsi_print_sense +EXPORT_SYMBOL vmlinux 0x21c8ff67 netdev_lower_get_first_private_rcu +EXPORT_SYMBOL vmlinux 0x21cd523b dm_unregister_target +EXPORT_SYMBOL vmlinux 0x21e13cb3 inet_peer_xrlim_allow +EXPORT_SYMBOL vmlinux 0x21e680e6 ip6_dst_alloc +EXPORT_SYMBOL vmlinux 0x21ef374c try_wait_for_completion +EXPORT_SYMBOL vmlinux 0x221cf7f5 make_kuid +EXPORT_SYMBOL vmlinux 0x222e7ce2 sysfs_streq +EXPORT_SYMBOL vmlinux 0x2234ca51 acpi_match_platform_list +EXPORT_SYMBOL vmlinux 0x22738ffe pagecache_get_page +EXPORT_SYMBOL vmlinux 0x2276db98 kstrtoint +EXPORT_SYMBOL vmlinux 0x228159a5 compat_tcp_getsockopt +EXPORT_SYMBOL vmlinux 0x22883dd7 jbd2_journal_get_create_access +EXPORT_SYMBOL vmlinux 0x228be3b9 con_set_default_unimap +EXPORT_SYMBOL vmlinux 0x22a689a4 eth_type_trans +EXPORT_SYMBOL vmlinux 0x22b325d5 kd_mksound +EXPORT_SYMBOL vmlinux 0x22de4931 amd_iommu_register_ga_log_notifier +EXPORT_SYMBOL vmlinux 0x22e4ddb0 sockfd_lookup +EXPORT_SYMBOL vmlinux 0x22ed7f17 unlock_rename +EXPORT_SYMBOL vmlinux 0x22f174b5 tty_port_carrier_raised +EXPORT_SYMBOL vmlinux 0x231d8cae pci_scan_single_device +EXPORT_SYMBOL vmlinux 0x231f8e08 d_prune_aliases +EXPORT_SYMBOL vmlinux 0x23449342 __ip_mc_inc_group +EXPORT_SYMBOL vmlinux 0x23899fe2 migrate_vma_finalize +EXPORT_SYMBOL vmlinux 0x238b099f mipi_dsi_packet_format_is_short +EXPORT_SYMBOL vmlinux 0x23b9d6e2 mangle_path +EXPORT_SYMBOL vmlinux 0x23c9891c kstrtoint_from_user +EXPORT_SYMBOL vmlinux 0x23cabbb1 register_sysctl_paths +EXPORT_SYMBOL vmlinux 0x23d9132d netif_skb_features +EXPORT_SYMBOL vmlinux 0x23daa989 mipi_dsi_create_packet +EXPORT_SYMBOL vmlinux 0x23ee13fd mb_cache_entry_find_first +EXPORT_SYMBOL vmlinux 0x23f2c894 inet6_unregister_icmp_sender +EXPORT_SYMBOL vmlinux 0x23fd3028 vmalloc_node +EXPORT_SYMBOL vmlinux 0x241fecbe neigh_table_init +EXPORT_SYMBOL vmlinux 0x24212d86 __frontswap_invalidate_page +EXPORT_SYMBOL vmlinux 0x24229c95 phy_remove_link_mode +EXPORT_SYMBOL vmlinux 0x2439d3d0 backlight_force_update +EXPORT_SYMBOL vmlinux 0x243e3dbb serio_unregister_child_port +EXPORT_SYMBOL vmlinux 0x24420752 bio_split +EXPORT_SYMBOL vmlinux 0x24428be5 strncpy_from_user +EXPORT_SYMBOL vmlinux 0x244d527c scsi_print_command +EXPORT_SYMBOL vmlinux 0x24576f96 fqdir_exit +EXPORT_SYMBOL vmlinux 0x2459bbcc console_set_on_cmdline +EXPORT_SYMBOL vmlinux 0x245e8384 kmem_cache_alloc_trace +EXPORT_SYMBOL vmlinux 0x2473f47e dm_table_get_size +EXPORT_SYMBOL vmlinux 0x2474e2f7 xp_set_rxq_info +EXPORT_SYMBOL vmlinux 0x247b791d blk_queue_chunk_sectors +EXPORT_SYMBOL vmlinux 0x2484adc3 __kfifo_to_user_r +EXPORT_SYMBOL vmlinux 0x249641f4 compat_tcp_setsockopt +EXPORT_SYMBOL vmlinux 0x249ef1a4 __skb_get_hash +EXPORT_SYMBOL vmlinux 0x24b5ef89 jbd2_journal_start +EXPORT_SYMBOL vmlinux 0x24d273d1 add_timer +EXPORT_SYMBOL vmlinux 0x24fb2116 vfs_fsync_range +EXPORT_SYMBOL vmlinux 0x250d4674 netdev_emerg +EXPORT_SYMBOL vmlinux 0x25115282 pci_ep_cfs_add_epc_group +EXPORT_SYMBOL vmlinux 0x251977e6 md_flush_request +EXPORT_SYMBOL vmlinux 0x2524ba17 ZSTD_getCParams +EXPORT_SYMBOL vmlinux 0x25261752 generic_error_remove_page +EXPORT_SYMBOL vmlinux 0x25277497 rfkill_register +EXPORT_SYMBOL vmlinux 0x25277f76 ip6_xmit +EXPORT_SYMBOL vmlinux 0x2532e29c __scsi_device_lookup +EXPORT_SYMBOL vmlinux 0x254a8191 dm_kcopyd_zero +EXPORT_SYMBOL vmlinux 0x255ba5be d_set_fallthru +EXPORT_SYMBOL vmlinux 0x25643bbd get_user_pages_unlocked +EXPORT_SYMBOL vmlinux 0x2570a138 reservation_seqcount_string +EXPORT_SYMBOL vmlinux 0x257ce325 blk_mq_tagset_busy_iter +EXPORT_SYMBOL vmlinux 0x25820c64 fs_overflowuid +EXPORT_SYMBOL vmlinux 0x258d2f76 net_dim_get_tx_moderation +EXPORT_SYMBOL vmlinux 0x25974000 wait_for_completion +EXPORT_SYMBOL vmlinux 0x259a7d28 ilookup5 +EXPORT_SYMBOL vmlinux 0x25b3f25f scsi_target_resume +EXPORT_SYMBOL vmlinux 0x25db1577 do_trace_write_msr +EXPORT_SYMBOL vmlinux 0x25e58a09 hdmi_avi_infoframe_init +EXPORT_SYMBOL vmlinux 0x25e9d4bd resource_list_free +EXPORT_SYMBOL vmlinux 0x260a095a __sg_alloc_table +EXPORT_SYMBOL vmlinux 0x261f1e3a inet_csk_clear_xmit_timers +EXPORT_SYMBOL vmlinux 0x2624434e pci_set_vpd_size +EXPORT_SYMBOL vmlinux 0x263733c4 napi_gro_frags +EXPORT_SYMBOL vmlinux 0x26399b5d pci_biosrom_size +EXPORT_SYMBOL vmlinux 0x263beb75 ecryptfs_get_versions +EXPORT_SYMBOL vmlinux 0x263c3152 bcmp +EXPORT_SYMBOL vmlinux 0x263ed23b __x86_indirect_thunk_r12 +EXPORT_SYMBOL vmlinux 0x265cb0cc blk_queue_virt_boundary +EXPORT_SYMBOL vmlinux 0x26705cec security_dentry_init_security +EXPORT_SYMBOL vmlinux 0x2688ec10 bitmap_zalloc +EXPORT_SYMBOL vmlinux 0x26926284 fs_param_is_blockdev +EXPORT_SYMBOL vmlinux 0x26948d96 copy_user_enhanced_fast_string +EXPORT_SYMBOL vmlinux 0x269737c7 pnpacpi_protocol +EXPORT_SYMBOL vmlinux 0x26b13b84 tcf_block_get +EXPORT_SYMBOL vmlinux 0x26b52322 dev_queue_xmit +EXPORT_SYMBOL vmlinux 0x26bf230b udp_set_csum +EXPORT_SYMBOL vmlinux 0x26cc73c3 complete_and_exit +EXPORT_SYMBOL vmlinux 0x26da719c textsearch_prepare +EXPORT_SYMBOL vmlinux 0x26e298e0 unregister_memory_notifier +EXPORT_SYMBOL vmlinux 0x26f06061 gnet_stats_copy_rate_est +EXPORT_SYMBOL vmlinux 0x26f8f0b8 iowrite16be +EXPORT_SYMBOL vmlinux 0x2710fc7c add_random_ready_callback +EXPORT_SYMBOL vmlinux 0x271cba95 acpi_bus_private_data_handler +EXPORT_SYMBOL vmlinux 0x272a38fd security_inode_init_security +EXPORT_SYMBOL vmlinux 0x272a8933 udp_memory_allocated +EXPORT_SYMBOL vmlinux 0x2733eaf7 scsi_dev_info_list_add_keyed +EXPORT_SYMBOL vmlinux 0x27479d14 param_free_charp +EXPORT_SYMBOL vmlinux 0x275f3d49 hdmi_vendor_infoframe_check +EXPORT_SYMBOL vmlinux 0x275fb9d5 input_unregister_handle +EXPORT_SYMBOL vmlinux 0x27639220 blk_verify_command +EXPORT_SYMBOL vmlinux 0x2768afe6 _copy_from_iter_nocache +EXPORT_SYMBOL vmlinux 0x27756bc8 scsi_sanitize_inquiry_string +EXPORT_SYMBOL vmlinux 0x277c923e tcf_exts_validate +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 0x278be985 gnet_stats_start_copy_compat +EXPORT_SYMBOL vmlinux 0x278c69f5 stop_tty +EXPORT_SYMBOL vmlinux 0x2791aa6f __wait_on_buffer +EXPORT_SYMBOL vmlinux 0x279be432 ZSTD_copyCCtx +EXPORT_SYMBOL vmlinux 0x27ac9e27 cleancache_register_ops +EXPORT_SYMBOL vmlinux 0x27bbf221 disable_irq_nosync +EXPORT_SYMBOL vmlinux 0x27cdca93 pci_add_resource +EXPORT_SYMBOL vmlinux 0x281823c5 __kfifo_out_peek +EXPORT_SYMBOL vmlinux 0x281e1eaa pci_get_domain_bus_and_slot +EXPORT_SYMBOL vmlinux 0x281fc139 vme_master_request +EXPORT_SYMBOL vmlinux 0x2833f577 ZSTD_compressBegin_advanced +EXPORT_SYMBOL vmlinux 0x2846c545 dev_activate +EXPORT_SYMBOL vmlinux 0x284b7056 skb_flow_get_icmp_tci +EXPORT_SYMBOL vmlinux 0x284d6fe5 unpin_user_pages_dirty_lock +EXPORT_SYMBOL vmlinux 0x285e0771 fscrypt_setup_filename +EXPORT_SYMBOL vmlinux 0x2875a315 utf32_to_utf8 +EXPORT_SYMBOL vmlinux 0x287abd4a migrate_page_move_mapping +EXPORT_SYMBOL vmlinux 0x288e6ce3 block_page_mkwrite +EXPORT_SYMBOL vmlinux 0x28961c43 km_state_notify +EXPORT_SYMBOL vmlinux 0x289900dc request_firmware +EXPORT_SYMBOL vmlinux 0x28b46a02 tcf_em_tree_destroy +EXPORT_SYMBOL vmlinux 0x28b4cc76 filemap_fdatawrite_range +EXPORT_SYMBOL vmlinux 0x28b875d9 update_region +EXPORT_SYMBOL vmlinux 0x28da9fe8 mr_vif_seq_next +EXPORT_SYMBOL vmlinux 0x28e09af1 iosf_mbi_available +EXPORT_SYMBOL vmlinux 0x28eed9a0 filemap_fdatawrite +EXPORT_SYMBOL vmlinux 0x2914ea2d ZSTD_compressBlock +EXPORT_SYMBOL vmlinux 0x2949e59d neigh_for_each +EXPORT_SYMBOL vmlinux 0x294b9ea1 on_each_cpu +EXPORT_SYMBOL vmlinux 0x296cb509 __xa_insert +EXPORT_SYMBOL vmlinux 0x298199e0 devm_register_reboot_notifier +EXPORT_SYMBOL vmlinux 0x298eb0c0 pcie_get_speed_cap +EXPORT_SYMBOL vmlinux 0x29ad8e33 x86_hyper_type +EXPORT_SYMBOL vmlinux 0x29b7316d __f_setown +EXPORT_SYMBOL vmlinux 0x29e1e204 hdmi_audio_infoframe_pack +EXPORT_SYMBOL vmlinux 0x29fbf063 nd_pfn_validate +EXPORT_SYMBOL vmlinux 0x2a188430 d_splice_alias +EXPORT_SYMBOL vmlinux 0x2a303d4d check_signature +EXPORT_SYMBOL vmlinux 0x2a3ec9a7 mipi_dsi_device_unregister +EXPORT_SYMBOL vmlinux 0x2a97ce2d security_secid_to_secctx +EXPORT_SYMBOL vmlinux 0x2a9a3905 vme_master_get +EXPORT_SYMBOL vmlinux 0x2a9d4cce PDE_DATA +EXPORT_SYMBOL vmlinux 0x2aa00e26 intel_scu_ipc_dev_update +EXPORT_SYMBOL vmlinux 0x2aa0843e mempool_resize +EXPORT_SYMBOL vmlinux 0x2ab7989d mutex_lock +EXPORT_SYMBOL vmlinux 0x2ac4eb6b xfrm_state_add +EXPORT_SYMBOL vmlinux 0x2ad474d4 pci_find_parent_resource +EXPORT_SYMBOL vmlinux 0x2ae3b4f6 generic_update_time +EXPORT_SYMBOL vmlinux 0x2b052d32 tcp_initialize_rcv_mss +EXPORT_SYMBOL vmlinux 0x2b3e28f3 udp_seq_stop +EXPORT_SYMBOL vmlinux 0x2b3e3083 __x86_retpoline_rdi +EXPORT_SYMBOL vmlinux 0x2b5010cf debugfs_create_automount +EXPORT_SYMBOL vmlinux 0x2b593aa8 gen_pool_alloc_algo_owner +EXPORT_SYMBOL vmlinux 0x2b60ef57 super_setup_bdi_name +EXPORT_SYMBOL vmlinux 0x2b68bd2f del_timer +EXPORT_SYMBOL vmlinux 0x2b7f88e6 sk_send_sigurg +EXPORT_SYMBOL vmlinux 0x2b94df63 security_path_rename +EXPORT_SYMBOL vmlinux 0x2b9da7a4 genl_lock +EXPORT_SYMBOL vmlinux 0x2bb6099e dq_data_lock +EXPORT_SYMBOL vmlinux 0x2bbb5a9e poll_freewait +EXPORT_SYMBOL vmlinux 0x2bc60c10 netdev_set_sb_channel +EXPORT_SYMBOL vmlinux 0x2bd60ab9 acpi_reset +EXPORT_SYMBOL vmlinux 0x2c0dab92 md_bitmap_free +EXPORT_SYMBOL vmlinux 0x2c1f3d05 begin_new_exec +EXPORT_SYMBOL vmlinux 0x2c256e1f input_scancode_to_scalar +EXPORT_SYMBOL vmlinux 0x2c333dd4 posix_test_lock +EXPORT_SYMBOL vmlinux 0x2c38e150 sk_mc_loop +EXPORT_SYMBOL vmlinux 0x2c3a5f17 pci_msi_vec_count +EXPORT_SYMBOL vmlinux 0x2c4c87e7 dquot_file_open +EXPORT_SYMBOL vmlinux 0x2c541e7b radix_tree_next_chunk +EXPORT_SYMBOL vmlinux 0x2c62811b arp_tbl +EXPORT_SYMBOL vmlinux 0x2c647798 path_put +EXPORT_SYMBOL vmlinux 0x2c95d691 get_cached_acl_rcu +EXPORT_SYMBOL vmlinux 0x2c995a8c __mdiobus_write +EXPORT_SYMBOL vmlinux 0x2caf63d1 topology_phys_to_logical_die +EXPORT_SYMBOL vmlinux 0x2cc7ae21 vfs_mkobj +EXPORT_SYMBOL vmlinux 0x2ccb1351 dcbnl_cee_notify +EXPORT_SYMBOL vmlinux 0x2ccd059a dim_on_top +EXPORT_SYMBOL vmlinux 0x2cdbf347 security_socket_socketpair +EXPORT_SYMBOL vmlinux 0x2cdf87a1 proc_dointvec_minmax +EXPORT_SYMBOL vmlinux 0x2cf5cb0e block_truncate_page +EXPORT_SYMBOL vmlinux 0x2cf73cb7 kstrtoll_from_user +EXPORT_SYMBOL vmlinux 0x2d08721a dcb_ieee_getapp_prio_dscp_mask_map +EXPORT_SYMBOL vmlinux 0x2d140a58 genl_unlock +EXPORT_SYMBOL vmlinux 0x2d192c70 sg_zero_buffer +EXPORT_SYMBOL vmlinux 0x2d1afe2a freeze_bdev +EXPORT_SYMBOL vmlinux 0x2d272f34 xfrm_trans_queue +EXPORT_SYMBOL vmlinux 0x2d2fc8b6 phy_start_cable_test_tdr +EXPORT_SYMBOL vmlinux 0x2d30596c from_kqid_munged +EXPORT_SYMBOL vmlinux 0x2d3385d3 system_wq +EXPORT_SYMBOL vmlinux 0x2d33d7eb jbd2_journal_flush +EXPORT_SYMBOL vmlinux 0x2d39b0a7 kstrdup +EXPORT_SYMBOL vmlinux 0x2d4c773a hdmi_spd_infoframe_init +EXPORT_SYMBOL vmlinux 0x2d547281 thaw_bdev +EXPORT_SYMBOL vmlinux 0x2d572dcb kernel_read +EXPORT_SYMBOL vmlinux 0x2d8f65f1 inet_dgram_connect +EXPORT_SYMBOL vmlinux 0x2d912bca dmi_get_bios_year +EXPORT_SYMBOL vmlinux 0x2d994605 security_inode_copy_up_xattr +EXPORT_SYMBOL vmlinux 0x2db3bc61 check_zeroed_user +EXPORT_SYMBOL vmlinux 0x2db3d320 mutex_lock_interruptible +EXPORT_SYMBOL vmlinux 0x2db7a108 dm_get_device +EXPORT_SYMBOL vmlinux 0x2dd16564 arch_register_cpu +EXPORT_SYMBOL vmlinux 0x2dd85401 current_task +EXPORT_SYMBOL vmlinux 0x2dd8f323 submit_bio_wait +EXPORT_SYMBOL vmlinux 0x2def7f76 rtc_cmos_write +EXPORT_SYMBOL vmlinux 0x2df1270a iov_iter_get_pages +EXPORT_SYMBOL vmlinux 0x2e0b1deb dma_fence_get_status +EXPORT_SYMBOL vmlinux 0x2e0d8891 ipv6_dev_mc_dec +EXPORT_SYMBOL vmlinux 0x2e152405 registered_fb +EXPORT_SYMBOL vmlinux 0x2e1ca751 clk_put +EXPORT_SYMBOL vmlinux 0x2e2b40d2 strncat +EXPORT_SYMBOL vmlinux 0x2e3bcce2 wait_for_completion_interruptible +EXPORT_SYMBOL vmlinux 0x2e4cedd7 touch_buffer +EXPORT_SYMBOL vmlinux 0x2e4e6bad vga_switcheroo_unregister_client +EXPORT_SYMBOL vmlinux 0x2e5fe036 __skb_ext_put +EXPORT_SYMBOL vmlinux 0x2e97aeb4 dev_getbyhwaddr_rcu +EXPORT_SYMBOL vmlinux 0x2e9ff2e0 agp_unbind_memory +EXPORT_SYMBOL vmlinux 0x2ea2c95c __x86_indirect_thunk_rax +EXPORT_SYMBOL vmlinux 0x2eb4824f md_integrity_register +EXPORT_SYMBOL vmlinux 0x2ec6bba0 errseq_set +EXPORT_SYMBOL vmlinux 0x2eccb201 dev_set_mtu +EXPORT_SYMBOL vmlinux 0x2edbeaf7 hex2bin +EXPORT_SYMBOL vmlinux 0x2ee3dd52 to_ndd +EXPORT_SYMBOL vmlinux 0x2ee4c2b1 hdmi_avi_infoframe_pack_only +EXPORT_SYMBOL vmlinux 0x2eeecd3b fscrypt_decrypt_pagecache_blocks +EXPORT_SYMBOL vmlinux 0x2ef251fd configfs_undepend_item +EXPORT_SYMBOL vmlinux 0x2ef8eba1 compat_sock_common_setsockopt +EXPORT_SYMBOL vmlinux 0x2f03fc4b security_secmark_refcount_inc +EXPORT_SYMBOL vmlinux 0x2f14a12f ata_scsi_cmd_error_handler +EXPORT_SYMBOL vmlinux 0x2f165dfa fib_notifier_ops_unregister +EXPORT_SYMBOL vmlinux 0x2f197255 mipi_dsi_dcs_set_tear_off +EXPORT_SYMBOL vmlinux 0x2f29830a blk_get_request +EXPORT_SYMBOL vmlinux 0x2f298afa nf_setsockopt +EXPORT_SYMBOL vmlinux 0x2f2e91b2 security_ib_alloc_security +EXPORT_SYMBOL vmlinux 0x2f384db3 acpi_is_video_device +EXPORT_SYMBOL vmlinux 0x2f55c34b tcf_em_tree_validate +EXPORT_SYMBOL vmlinux 0x2f5e0748 sget +EXPORT_SYMBOL vmlinux 0x2f7754a8 dma_pool_free +EXPORT_SYMBOL vmlinux 0x2f879370 netdev_lower_get_next +EXPORT_SYMBOL vmlinux 0x2fa820df ip_options_compile +EXPORT_SYMBOL vmlinux 0x2fb6de5d add_device_randomness +EXPORT_SYMBOL vmlinux 0x2fb8fc7f inet_twsk_deschedule_put +EXPORT_SYMBOL vmlinux 0x2fd8a426 scsi_print_result +EXPORT_SYMBOL vmlinux 0x2fe252cc unregister_inet6addr_notifier +EXPORT_SYMBOL vmlinux 0x2ff55e09 fc_remote_port_delete +EXPORT_SYMBOL vmlinux 0x3017a25f netdev_alert +EXPORT_SYMBOL vmlinux 0x301b9094 param_array_ops +EXPORT_SYMBOL vmlinux 0x3020996b fwnode_irq_get +EXPORT_SYMBOL vmlinux 0x303ca5a6 __put_cred +EXPORT_SYMBOL vmlinux 0x30454c0d vfs_ioc_fssetxattr_check +EXPORT_SYMBOL vmlinux 0x304767cc dquot_set_dqinfo +EXPORT_SYMBOL vmlinux 0x304c118f vfs_iocb_iter_write +EXPORT_SYMBOL vmlinux 0x3055f418 tcf_action_check_ctrlact +EXPORT_SYMBOL vmlinux 0x305c5eed fb_validate_mode +EXPORT_SYMBOL vmlinux 0x30768269 devm_ioremap_resource +EXPORT_SYMBOL vmlinux 0x3079e31e get_tree_keyed +EXPORT_SYMBOL vmlinux 0x3094f038 pci_setup_cardbus +EXPORT_SYMBOL vmlinux 0x3096be16 names_cachep +EXPORT_SYMBOL vmlinux 0x30a80826 __kfifo_from_user +EXPORT_SYMBOL vmlinux 0x30a9f1c9 devm_release_resource +EXPORT_SYMBOL vmlinux 0x30acfde9 hsiphash_2u32 +EXPORT_SYMBOL vmlinux 0x30af45a1 ZSTD_initCStream +EXPORT_SYMBOL vmlinux 0x30b53642 dump_emit +EXPORT_SYMBOL vmlinux 0x30b62205 pcie_capability_clear_and_set_word +EXPORT_SYMBOL vmlinux 0x30bd5245 ip_ct_attach +EXPORT_SYMBOL vmlinux 0x30ccabdf amd_iommu_device_info +EXPORT_SYMBOL vmlinux 0x30dd40e0 clear_page_dirty_for_io +EXPORT_SYMBOL vmlinux 0x30dec207 __x86_retpoline_rcx +EXPORT_SYMBOL vmlinux 0x30e74134 tty_termios_copy_hw +EXPORT_SYMBOL vmlinux 0x3100cff9 lockref_get_or_lock +EXPORT_SYMBOL vmlinux 0x3102d70b frontswap_curr_pages +EXPORT_SYMBOL vmlinux 0x3126a9e8 siphash_1u64 +EXPORT_SYMBOL vmlinux 0x3145216f pci_dev_present +EXPORT_SYMBOL vmlinux 0x3145f04e seq_path +EXPORT_SYMBOL vmlinux 0x3149e6a3 key_task_permission +EXPORT_SYMBOL vmlinux 0x316bf185 neigh_sysctl_unregister +EXPORT_SYMBOL vmlinux 0x316dac50 jbd2_journal_dirty_metadata +EXPORT_SYMBOL vmlinux 0x316f90ce xfrm_state_update +EXPORT_SYMBOL vmlinux 0x3176d3d7 gnet_stats_copy_basic +EXPORT_SYMBOL vmlinux 0x317fc475 pcie_get_width_cap +EXPORT_SYMBOL vmlinux 0x3182656d ihold +EXPORT_SYMBOL vmlinux 0x318738a9 pci_dev_put +EXPORT_SYMBOL vmlinux 0x318d6fec mutex_is_locked +EXPORT_SYMBOL vmlinux 0x319d493d proc_dostring +EXPORT_SYMBOL vmlinux 0x319e927f input_enable_softrepeat +EXPORT_SYMBOL vmlinux 0x31a466eb __devm_release_region +EXPORT_SYMBOL vmlinux 0x31a80a4b vme_unregister_bridge +EXPORT_SYMBOL vmlinux 0x31b31f5c csum_partial_copy_nocheck +EXPORT_SYMBOL vmlinux 0x31c88ad3 inet_gro_receive +EXPORT_SYMBOL vmlinux 0x31e93831 inet_sk_set_state +EXPORT_SYMBOL vmlinux 0x31f672f5 sock_no_mmap +EXPORT_SYMBOL vmlinux 0x323e365d dev_pick_tx_zero +EXPORT_SYMBOL vmlinux 0x32630db8 udp_seq_ops +EXPORT_SYMBOL vmlinux 0x326425ca pci_unmap_biosrom +EXPORT_SYMBOL vmlinux 0x3273c0fc free_netdev +EXPORT_SYMBOL vmlinux 0x3277a1ab devfreq_monitor_suspend +EXPORT_SYMBOL vmlinux 0x327c84bf vme_lm_attach +EXPORT_SYMBOL vmlinux 0x3283e6b0 prandom_seed_full_state +EXPORT_SYMBOL vmlinux 0x3287192b tcp_syn_ack_timeout +EXPORT_SYMBOL vmlinux 0x32980deb security_secmark_relabel_packet +EXPORT_SYMBOL vmlinux 0x329f023e scsi_host_alloc +EXPORT_SYMBOL vmlinux 0x329ffa7d mount_nodev +EXPORT_SYMBOL vmlinux 0x32ae5741 _raw_read_lock +EXPORT_SYMBOL vmlinux 0x32bf8612 kernel_sendpage +EXPORT_SYMBOL vmlinux 0x32ce3777 radix_tree_preload +EXPORT_SYMBOL vmlinux 0x32d896ca input_get_timestamp +EXPORT_SYMBOL vmlinux 0x32e6f1a0 acpi_video_backlight_string +EXPORT_SYMBOL vmlinux 0x32e74ee6 gnet_stats_copy_basic_hw +EXPORT_SYMBOL vmlinux 0x32eda466 put_devmap_managed_page +EXPORT_SYMBOL vmlinux 0x32fb267d inc_node_page_state +EXPORT_SYMBOL vmlinux 0x331cae56 find_inode_by_ino_rcu +EXPORT_SYMBOL vmlinux 0x3324ef3b acpi_set_firmware_waking_vector +EXPORT_SYMBOL vmlinux 0x3363f90f wait_on_page_bit_killable +EXPORT_SYMBOL vmlinux 0x336cb85e pfifo_qdisc_ops +EXPORT_SYMBOL vmlinux 0x33736a1d __genradix_ptr_alloc +EXPORT_SYMBOL vmlinux 0x338e94f6 genphy_read_status +EXPORT_SYMBOL vmlinux 0x33a14a02 posix_lock_file +EXPORT_SYMBOL vmlinux 0x33b59131 uart_get_baud_rate +EXPORT_SYMBOL vmlinux 0x33b84f74 copy_page +EXPORT_SYMBOL vmlinux 0x33bd1baa brioctl_set +EXPORT_SYMBOL vmlinux 0x33c7d962 xfrm_state_walk_done +EXPORT_SYMBOL vmlinux 0x33df59eb vmbus_sendpacket +EXPORT_SYMBOL vmlinux 0x33f0768c cpufreq_quick_get_max +EXPORT_SYMBOL vmlinux 0x33f0adb8 phy_drivers_unregister +EXPORT_SYMBOL vmlinux 0x33fcf44a __kfifo_out_r +EXPORT_SYMBOL vmlinux 0x33fd9da4 acpi_get_gpe_device +EXPORT_SYMBOL vmlinux 0x33fe0aad mark_buffer_dirty +EXPORT_SYMBOL vmlinux 0x3400004f kmem_cache_alloc_bulk +EXPORT_SYMBOL vmlinux 0x3441445f msrs_free +EXPORT_SYMBOL vmlinux 0x3443802f mdiobus_free +EXPORT_SYMBOL vmlinux 0x3449a4fc dquot_alloc_inode +EXPORT_SYMBOL vmlinux 0x34646dad free_inode_nonrcu +EXPORT_SYMBOL vmlinux 0x34776a03 f_setown +EXPORT_SYMBOL vmlinux 0x348242cc scm_detach_fds +EXPORT_SYMBOL vmlinux 0x3489859f acpi_enter_sleep_state_s4bios +EXPORT_SYMBOL vmlinux 0x3499596e param_ops_uint +EXPORT_SYMBOL vmlinux 0x349ac524 __tracepoint_dma_fence_emit +EXPORT_SYMBOL vmlinux 0x349cba85 strchr +EXPORT_SYMBOL vmlinux 0x34a1f7e3 acpi_processor_get_psd +EXPORT_SYMBOL vmlinux 0x34afd1d7 thermal_cdev_update +EXPORT_SYMBOL vmlinux 0x34b85bcc flow_rule_match_tcp +EXPORT_SYMBOL vmlinux 0x34c4c5c7 cred_fscmp +EXPORT_SYMBOL vmlinux 0x34ded4d6 input_mt_drop_unused +EXPORT_SYMBOL vmlinux 0x34f015d1 bd_set_size +EXPORT_SYMBOL vmlinux 0x34f3484e security_tun_dev_attach_queue +EXPORT_SYMBOL vmlinux 0x350ea558 dma_fence_default_wait +EXPORT_SYMBOL vmlinux 0x3517383e register_reboot_notifier +EXPORT_SYMBOL vmlinux 0x352b0cae mini_qdisc_pair_block_init +EXPORT_SYMBOL vmlinux 0x3532d5c4 mini_qdisc_pair_swap +EXPORT_SYMBOL vmlinux 0x3539ae37 irq_domain_set_info +EXPORT_SYMBOL vmlinux 0x3539f11b match_strlcpy +EXPORT_SYMBOL vmlinux 0x354dd0d2 vga_get +EXPORT_SYMBOL vmlinux 0x356461c8 rtc_time64_to_tm +EXPORT_SYMBOL vmlinux 0x356fa82c ptp_clock_index +EXPORT_SYMBOL vmlinux 0x3585eb49 mmput_async +EXPORT_SYMBOL vmlinux 0x35984479 param_get_short +EXPORT_SYMBOL vmlinux 0x359ec42f _raw_read_trylock +EXPORT_SYMBOL vmlinux 0x35a0cf20 nd_region_to_nstype +EXPORT_SYMBOL vmlinux 0x35a88f28 zlib_inflateInit2 +EXPORT_SYMBOL vmlinux 0x35cc6f8e uart_match_port +EXPORT_SYMBOL vmlinux 0x35da6086 netif_carrier_off +EXPORT_SYMBOL vmlinux 0x35e7413e __page_symlink +EXPORT_SYMBOL vmlinux 0x360b1afe probe_irq_mask +EXPORT_SYMBOL vmlinux 0x36226894 mr_fill_mroute +EXPORT_SYMBOL vmlinux 0x362ef408 _copy_from_user +EXPORT_SYMBOL vmlinux 0x363e04d5 inet_proto_csum_replace4 +EXPORT_SYMBOL vmlinux 0x3649d635 dcbnl_ieee_notify +EXPORT_SYMBOL vmlinux 0x365acda7 set_normalized_timespec64 +EXPORT_SYMBOL vmlinux 0x365e7911 kstrdup_const +EXPORT_SYMBOL vmlinux 0x3679ab32 udp_sk_rx_dst_set +EXPORT_SYMBOL vmlinux 0x368ade84 cookie_ecn_ok +EXPORT_SYMBOL vmlinux 0x36da1208 dev_set_alias +EXPORT_SYMBOL vmlinux 0x36e848e6 devm_of_iomap +EXPORT_SYMBOL vmlinux 0x36e9027f file_path +EXPORT_SYMBOL vmlinux 0x36ef4952 rtc_add_group +EXPORT_SYMBOL vmlinux 0x37015d24 lease_get_mtime +EXPORT_SYMBOL vmlinux 0x37110088 remove_wait_queue +EXPORT_SYMBOL vmlinux 0x3711a77b vga_set_legacy_decoding +EXPORT_SYMBOL vmlinux 0x37142663 nvdimm_namespace_disk_name +EXPORT_SYMBOL vmlinux 0x371e7f3a ZSTD_initCDict +EXPORT_SYMBOL vmlinux 0x372d84cd key_invalidate +EXPORT_SYMBOL vmlinux 0x3731d969 __zerocopy_sg_from_iter +EXPORT_SYMBOL vmlinux 0x3737d9a9 ZSTD_DStreamWorkspaceBound +EXPORT_SYMBOL vmlinux 0x3744cf36 vmalloc_to_pfn +EXPORT_SYMBOL vmlinux 0x374f8b0c blk_execute_rq +EXPORT_SYMBOL vmlinux 0x3755f990 gf128mul_init_64k_bbe +EXPORT_SYMBOL vmlinux 0x3757d4c5 iov_iter_kvec +EXPORT_SYMBOL vmlinux 0x375f8bbd fc_get_event_number +EXPORT_SYMBOL vmlinux 0x37746fde ZSTD_initDStream +EXPORT_SYMBOL vmlinux 0x377d8004 acpi_error +EXPORT_SYMBOL vmlinux 0x37af3190 dm_table_run_md_queue_async +EXPORT_SYMBOL vmlinux 0x37b8b39e screen_info +EXPORT_SYMBOL vmlinux 0x37b8deb3 _dev_info +EXPORT_SYMBOL vmlinux 0x37beb1a8 page_readlink +EXPORT_SYMBOL vmlinux 0x37befc70 jiffies_to_msecs +EXPORT_SYMBOL vmlinux 0x37c0463f pcibios_bus_to_resource +EXPORT_SYMBOL vmlinux 0x37c40238 eth_header_cache +EXPORT_SYMBOL vmlinux 0x37d1bdf4 devm_gen_pool_create +EXPORT_SYMBOL vmlinux 0x37d3f960 jbd2_log_start_commit +EXPORT_SYMBOL vmlinux 0x37db8f19 dmi_get_date +EXPORT_SYMBOL vmlinux 0x37e37c21 sock_wake_async +EXPORT_SYMBOL vmlinux 0x37fdcba9 bpf_prog_get_type_path +EXPORT_SYMBOL vmlinux 0x37ff6b1e ps2_handle_ack +EXPORT_SYMBOL vmlinux 0x38079dc7 netif_schedule_queue +EXPORT_SYMBOL vmlinux 0x380edf16 fc_host_post_event +EXPORT_SYMBOL vmlinux 0x3812050a _raw_spin_unlock_irqrestore +EXPORT_SYMBOL vmlinux 0x381a798a setup_max_cpus +EXPORT_SYMBOL vmlinux 0x38290277 device_add_disk +EXPORT_SYMBOL vmlinux 0x383ae39a page_get_link +EXPORT_SYMBOL vmlinux 0x3847798b vmf_insert_pfn +EXPORT_SYMBOL vmlinux 0x386d0754 scsi_device_lookup +EXPORT_SYMBOL vmlinux 0x38714391 iget_locked +EXPORT_SYMBOL vmlinux 0x38867a62 fscrypt_fname_alloc_buffer +EXPORT_SYMBOL vmlinux 0x38869d88 kstat +EXPORT_SYMBOL vmlinux 0x388aa3c9 neigh_proc_dointvec_ms_jiffies +EXPORT_SYMBOL vmlinux 0x388df132 is_nd_pfn +EXPORT_SYMBOL vmlinux 0x3891ffc8 ecryptfs_fill_auth_tok +EXPORT_SYMBOL vmlinux 0x389617b0 LZ4_decompress_fast_continue +EXPORT_SYMBOL vmlinux 0x3897d5cf input_mt_report_slot_state +EXPORT_SYMBOL vmlinux 0x38a5759e __netlink_kernel_create +EXPORT_SYMBOL vmlinux 0x38a71b7e pci_free_resource_list +EXPORT_SYMBOL vmlinux 0x38a9f7c5 in6addr_loopback +EXPORT_SYMBOL vmlinux 0x38d8a91c eth_header_parse +EXPORT_SYMBOL vmlinux 0x38e22d93 ethtool_op_get_ts_info +EXPORT_SYMBOL vmlinux 0x38e2e574 kobject_del +EXPORT_SYMBOL vmlinux 0x38e46431 mempool_exit +EXPORT_SYMBOL vmlinux 0x38ec7825 nf_unregister_queue_handler +EXPORT_SYMBOL vmlinux 0x38edc8ad unregister_shrinker +EXPORT_SYMBOL vmlinux 0x38f33bed dump_fpu +EXPORT_SYMBOL vmlinux 0x39081193 __max_logical_packages +EXPORT_SYMBOL vmlinux 0x392a74a3 cpufreq_generic_suspend +EXPORT_SYMBOL vmlinux 0x392b1fea wait_for_completion_io +EXPORT_SYMBOL vmlinux 0x393854c1 hash_and_copy_to_iter +EXPORT_SYMBOL vmlinux 0x3939f8f0 rfkill_pause_polling +EXPORT_SYMBOL vmlinux 0x39461d6a in_egroup_p +EXPORT_SYMBOL vmlinux 0x394a1e11 phy_sfp_attach +EXPORT_SYMBOL vmlinux 0x3955fcf6 __kfifo_in_r +EXPORT_SYMBOL vmlinux 0x39894094 vfio_unregister_notifier +EXPORT_SYMBOL vmlinux 0x39991865 icmp_global_allow +EXPORT_SYMBOL vmlinux 0x399ad043 __kfifo_dma_out_finish_r +EXPORT_SYMBOL vmlinux 0x39a4d083 __blk_rq_map_sg +EXPORT_SYMBOL vmlinux 0x39abdfae blk_mq_stop_hw_queues +EXPORT_SYMBOL vmlinux 0x39b52d19 __bitmap_and +EXPORT_SYMBOL vmlinux 0x39dd1f10 inet_put_port +EXPORT_SYMBOL vmlinux 0x39e3c030 do_trace_read_msr +EXPORT_SYMBOL vmlinux 0x3a08475f platform_thermal_notify +EXPORT_SYMBOL vmlinux 0x3a094d88 security_inode_getsecctx +EXPORT_SYMBOL vmlinux 0x3a13c13b rtnetlink_put_metrics +EXPORT_SYMBOL vmlinux 0x3a13f54a sgl_alloc +EXPORT_SYMBOL vmlinux 0x3a2d1dfa rdmsr_safe_regs_on_cpu +EXPORT_SYMBOL vmlinux 0x3a2f6702 sg_alloc_table +EXPORT_SYMBOL vmlinux 0x3a32839e intel_gtt_chipset_flush +EXPORT_SYMBOL vmlinux 0x3a4a1e16 tty_unthrottle +EXPORT_SYMBOL vmlinux 0x3a4b2ff7 pci_release_selected_regions +EXPORT_SYMBOL vmlinux 0x3a4f9d28 rng_is_initialized +EXPORT_SYMBOL vmlinux 0x3a6928f2 set_wb_congested +EXPORT_SYMBOL vmlinux 0x3a76df26 lookup_one_len +EXPORT_SYMBOL vmlinux 0x3ab356d5 seq_release_private +EXPORT_SYMBOL vmlinux 0x3ab7b1cc scsi_set_sense_field_pointer +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 0x3adc8431 locks_copy_lock +EXPORT_SYMBOL vmlinux 0x3aed120d scsi_device_resume +EXPORT_SYMBOL vmlinux 0x3afb11a7 kobject_set_name +EXPORT_SYMBOL vmlinux 0x3aff3200 acpi_evaluate_object_typed +EXPORT_SYMBOL vmlinux 0x3b029f48 acpi_install_fixed_event_handler +EXPORT_SYMBOL vmlinux 0x3b14288e sb_set_blocksize +EXPORT_SYMBOL vmlinux 0x3b20fb95 dma_fence_remove_callback +EXPORT_SYMBOL vmlinux 0x3b321462 LZ4_setStreamDecode +EXPORT_SYMBOL vmlinux 0x3b3f10a0 tcp_v4_syn_recv_sock +EXPORT_SYMBOL vmlinux 0x3b4173fb param_ops_int +EXPORT_SYMBOL vmlinux 0x3b4d3fca __x86_retpoline_r8 +EXPORT_SYMBOL vmlinux 0x3b4d9d86 genphy_config_eee_advert +EXPORT_SYMBOL vmlinux 0x3b55389c from_kprojid +EXPORT_SYMBOL vmlinux 0x3b6154d7 netdev_reset_tc +EXPORT_SYMBOL vmlinux 0x3b638ea3 jbd2_journal_unlock_updates +EXPORT_SYMBOL vmlinux 0x3b644591 __bitmap_shift_left +EXPORT_SYMBOL vmlinux 0x3b71b31c seq_read_iter +EXPORT_SYMBOL vmlinux 0x3b8233cb vga_switcheroo_get_client_state +EXPORT_SYMBOL vmlinux 0x3b83610f cpu_sibling_map +EXPORT_SYMBOL vmlinux 0x3b860fd4 dev_trans_start +EXPORT_SYMBOL vmlinux 0x3b893edd igrab +EXPORT_SYMBOL vmlinux 0x3b9144c9 acpi_get_current_resources +EXPORT_SYMBOL vmlinux 0x3bbfb206 fb_get_buffer_offset +EXPORT_SYMBOL vmlinux 0x3bc52ec2 nd_dev_to_uuid +EXPORT_SYMBOL vmlinux 0x3bd41493 trace_raw_output_prep +EXPORT_SYMBOL vmlinux 0x3be7643e security_xfrm_policy_free +EXPORT_SYMBOL vmlinux 0x3c01008d phy_suspend +EXPORT_SYMBOL vmlinux 0x3c185c61 page_put_link +EXPORT_SYMBOL vmlinux 0x3c26f06d qdisc_watchdog_init +EXPORT_SYMBOL vmlinux 0x3c38b513 convert_art_ns_to_tsc +EXPORT_SYMBOL vmlinux 0x3c3fce39 __local_bh_enable_ip +EXPORT_SYMBOL vmlinux 0x3c3ff9fd sprintf +EXPORT_SYMBOL vmlinux 0x3c427f67 cpu_die_map +EXPORT_SYMBOL vmlinux 0x3c457453 ioread64_lo_hi +EXPORT_SYMBOL vmlinux 0x3c655886 filemap_write_and_wait_range +EXPORT_SYMBOL vmlinux 0x3c80c06c kstrtoull +EXPORT_SYMBOL vmlinux 0x3c8236f9 pci_wait_for_pending_transaction +EXPORT_SYMBOL vmlinux 0x3c84d24e dquot_get_next_dqblk +EXPORT_SYMBOL vmlinux 0x3c8c9377 node_data +EXPORT_SYMBOL vmlinux 0x3caffbf1 ppp_unit_number +EXPORT_SYMBOL vmlinux 0x3cc6441a cdrom_check_events +EXPORT_SYMBOL vmlinux 0x3cc91d03 netdev_adjacent_change_prepare +EXPORT_SYMBOL vmlinux 0x3ccc8dbc __x86_retpoline_r14 +EXPORT_SYMBOL vmlinux 0x3cdf5943 inet6_register_protosw +EXPORT_SYMBOL vmlinux 0x3ce4ca6f disable_irq +EXPORT_SYMBOL vmlinux 0x3cfd7af9 netdev_notice +EXPORT_SYMBOL vmlinux 0x3cfe58db xfrm6_protocol_deregister +EXPORT_SYMBOL vmlinux 0x3d02cd70 dma_fence_signal_locked +EXPORT_SYMBOL vmlinux 0x3d1034da flow_rule_match_enc_ip +EXPORT_SYMBOL vmlinux 0x3d173bf1 netlbl_audit_start +EXPORT_SYMBOL vmlinux 0x3d210724 gen_pool_dma_zalloc_align +EXPORT_SYMBOL vmlinux 0x3d2fe3ec prepare_kernel_cred +EXPORT_SYMBOL vmlinux 0x3d569f01 flow_rule_match_enc_keyid +EXPORT_SYMBOL vmlinux 0x3d56e7b3 utf8_unload +EXPORT_SYMBOL vmlinux 0x3d5b8d18 pci_scan_bus +EXPORT_SYMBOL vmlinux 0x3d5bb3fd refcount_dec_and_lock_irqsave +EXPORT_SYMBOL vmlinux 0x3d6ea89a kill_fasync +EXPORT_SYMBOL vmlinux 0x3d9ba630 agp_collect_device_status +EXPORT_SYMBOL vmlinux 0x3da171f9 pci_mem_start +EXPORT_SYMBOL vmlinux 0x3dabf271 memcg_sockets_enabled_key +EXPORT_SYMBOL vmlinux 0x3dac7b8a seg6_hmac_info_del +EXPORT_SYMBOL vmlinux 0x3dad9978 cancel_delayed_work +EXPORT_SYMBOL vmlinux 0x3db4dad1 fd_install +EXPORT_SYMBOL vmlinux 0x3dc619d3 swake_up_locked +EXPORT_SYMBOL vmlinux 0x3dc9b5ac __scm_destroy +EXPORT_SYMBOL vmlinux 0x3dcaaeef dquot_acquire +EXPORT_SYMBOL vmlinux 0x3dcb88a0 irq_set_handler_data +EXPORT_SYMBOL vmlinux 0x3dd9b230 proc_dointvec_userhz_jiffies +EXPORT_SYMBOL vmlinux 0x3ddc6c04 x86_bios_cpu_apicid +EXPORT_SYMBOL vmlinux 0x3de91c94 d_hash_and_lookup +EXPORT_SYMBOL vmlinux 0x3dfb86b9 resource_list_create_entry +EXPORT_SYMBOL vmlinux 0x3dfc897c seq_hlist_start_head +EXPORT_SYMBOL vmlinux 0x3e10d0c9 skb_headers_offset_update +EXPORT_SYMBOL vmlinux 0x3e2896be sget_fc +EXPORT_SYMBOL vmlinux 0x3e2b0ba6 groups_alloc +EXPORT_SYMBOL vmlinux 0x3e2bfb95 block_invalidatepage +EXPORT_SYMBOL vmlinux 0x3e5adf72 sync_mapping_buffers +EXPORT_SYMBOL vmlinux 0x3e6a5a9d nf_getsockopt +EXPORT_SYMBOL vmlinux 0x3e730734 tty_flip_buffer_push +EXPORT_SYMBOL vmlinux 0x3e9110fa __hw_addr_unsync +EXPORT_SYMBOL vmlinux 0x3eb65434 free_task +EXPORT_SYMBOL vmlinux 0x3ebb2a35 pci_enable_ptm +EXPORT_SYMBOL vmlinux 0x3ec2467d jbd2__journal_restart +EXPORT_SYMBOL vmlinux 0x3ed3af5c flow_block_cb_setup_simple +EXPORT_SYMBOL vmlinux 0x3ee68633 sock_kmalloc +EXPORT_SYMBOL vmlinux 0x3eeb2322 __wake_up +EXPORT_SYMBOL vmlinux 0x3eeb4529 ipmi_platform_add +EXPORT_SYMBOL vmlinux 0x3efe1703 phy_unregister_fixup_for_id +EXPORT_SYMBOL vmlinux 0x3f0546a8 ioread32_rep +EXPORT_SYMBOL vmlinux 0x3f0eabd2 xxh64_update +EXPORT_SYMBOL vmlinux 0x3f3cc182 padata_free +EXPORT_SYMBOL vmlinux 0x3f4547a7 put_unused_fd +EXPORT_SYMBOL vmlinux 0x3f4bd846 gen_pool_first_fit_order_align +EXPORT_SYMBOL vmlinux 0x3f4f4912 mr_mfc_find_parent +EXPORT_SYMBOL vmlinux 0x3f54fadb compat_nf_setsockopt +EXPORT_SYMBOL vmlinux 0x3f6152ca read_cache_page +EXPORT_SYMBOL vmlinux 0x3f75d7aa devfreq_recommended_opp +EXPORT_SYMBOL vmlinux 0x3f8730ff xfrm_unregister_type_offload +EXPORT_SYMBOL vmlinux 0x3f89071b security_ib_pkey_access +EXPORT_SYMBOL vmlinux 0x3f9c23eb md_reload_sb +EXPORT_SYMBOL vmlinux 0x3fbf3c89 vme_slave_set +EXPORT_SYMBOL vmlinux 0x3fc7d2ae ptp_find_pin +EXPORT_SYMBOL vmlinux 0x3fd34c05 kernel_connect +EXPORT_SYMBOL vmlinux 0x3fd4c944 get_cpu_entry_area +EXPORT_SYMBOL vmlinux 0x3fd78f3b register_chrdev_region +EXPORT_SYMBOL vmlinux 0x3fe2ccbe memweight +EXPORT_SYMBOL vmlinux 0x3fe5cbb7 tty_port_close_start +EXPORT_SYMBOL vmlinux 0x3fe7c355 tty_chars_in_buffer +EXPORT_SYMBOL vmlinux 0x3ffa3acc gro_cells_receive +EXPORT_SYMBOL vmlinux 0x4037ed45 devm_ioremap +EXPORT_SYMBOL vmlinux 0x403b0b6f netif_napi_del +EXPORT_SYMBOL vmlinux 0x404c4d2b is_nd_dax +EXPORT_SYMBOL vmlinux 0x4055a920 acpi_remove_fixed_event_handler +EXPORT_SYMBOL vmlinux 0x407a580d kill_pgrp +EXPORT_SYMBOL vmlinux 0x40973662 sysctl_udp_mem +EXPORT_SYMBOL vmlinux 0x409873e3 tty_termios_baud_rate +EXPORT_SYMBOL vmlinux 0x409bcb62 mutex_unlock +EXPORT_SYMBOL vmlinux 0x409f9a62 mdiobus_register_device +EXPORT_SYMBOL vmlinux 0x40a9b349 vzalloc +EXPORT_SYMBOL vmlinux 0x40ab2e52 get_vm_area +EXPORT_SYMBOL vmlinux 0x40b42324 netif_device_detach +EXPORT_SYMBOL vmlinux 0x40b73b64 dget_parent +EXPORT_SYMBOL vmlinux 0x40c7247c si_meminfo +EXPORT_SYMBOL vmlinux 0x40d04664 console_trylock +EXPORT_SYMBOL vmlinux 0x40d59096 unregister_restart_handler +EXPORT_SYMBOL vmlinux 0x40d84a37 ZSTD_getFrameParams +EXPORT_SYMBOL vmlinux 0x40e715c2 xfrm4_rcv +EXPORT_SYMBOL vmlinux 0x40ebbf4e param_ops_bool +EXPORT_SYMBOL vmlinux 0x40ef4001 elv_rb_del +EXPORT_SYMBOL vmlinux 0x4101c393 blk_sync_queue +EXPORT_SYMBOL vmlinux 0x4118eed2 generic_file_open +EXPORT_SYMBOL vmlinux 0x411f8086 tcf_idr_check_alloc +EXPORT_SYMBOL vmlinux 0x4123324b __skb_pad +EXPORT_SYMBOL vmlinux 0x413ed95c __pagevec_release +EXPORT_SYMBOL vmlinux 0x41482d8b strndup_user +EXPORT_SYMBOL vmlinux 0x4161be65 tty_schedule_flip +EXPORT_SYMBOL vmlinux 0x4188d439 neigh_rand_reach_time +EXPORT_SYMBOL vmlinux 0x4191f74e blk_queue_max_segment_size +EXPORT_SYMBOL vmlinux 0x4194b70b dev_set_mac_address +EXPORT_SYMBOL vmlinux 0x4198ca95 __do_once_done +EXPORT_SYMBOL vmlinux 0x41dfd079 set_binfmt +EXPORT_SYMBOL vmlinux 0x41e4bec7 tcp_sock_set_cork +EXPORT_SYMBOL vmlinux 0x41efdeaf radix_tree_lookup_slot +EXPORT_SYMBOL vmlinux 0x4203aa21 fuse_dequeue_forget +EXPORT_SYMBOL vmlinux 0x42160169 flush_workqueue +EXPORT_SYMBOL vmlinux 0x4230a8d7 sg_nents_for_len +EXPORT_SYMBOL vmlinux 0x4234ead2 pci_stop_and_remove_bus_device +EXPORT_SYMBOL vmlinux 0x4237fa9a noop_llseek +EXPORT_SYMBOL vmlinux 0x4248ae3c single_task_running +EXPORT_SYMBOL vmlinux 0x424d3620 zlib_inflateIncomp +EXPORT_SYMBOL vmlinux 0x42578e80 acpi_get_type +EXPORT_SYMBOL vmlinux 0x42595e58 vgacon_text_force +EXPORT_SYMBOL vmlinux 0x426c4fb3 buffer_migrate_page +EXPORT_SYMBOL vmlinux 0x427e2f8e vfs_dup_fs_context +EXPORT_SYMBOL vmlinux 0x428621de vga_switcheroo_lock_ddc +EXPORT_SYMBOL vmlinux 0x429bc4e6 tcp_sendpage +EXPORT_SYMBOL vmlinux 0x42a3d01e filemap_range_has_page +EXPORT_SYMBOL vmlinux 0x42bed8d4 unix_gc_lock +EXPORT_SYMBOL vmlinux 0x42d147c0 crypto_sha512_finup +EXPORT_SYMBOL vmlinux 0x42df7d64 mipi_dsi_generic_read +EXPORT_SYMBOL vmlinux 0x42e393fc ata_print_version +EXPORT_SYMBOL vmlinux 0x42f1b900 fb_pad_unaligned_buffer +EXPORT_SYMBOL vmlinux 0x42f20e3a phy_read_paged +EXPORT_SYMBOL vmlinux 0x4301d1a1 scsi_alloc_sgtables +EXPORT_SYMBOL vmlinux 0x4302d0eb free_pages +EXPORT_SYMBOL vmlinux 0x43042ccd ip4_datagram_connect +EXPORT_SYMBOL vmlinux 0x430ecc96 ZSTD_initCStream_usingCDict +EXPORT_SYMBOL vmlinux 0x43173995 tcp_create_openreq_child +EXPORT_SYMBOL vmlinux 0x43214acb amd_iommu_rlookup_table +EXPORT_SYMBOL vmlinux 0x4323a37c flow_rule_match_enc_control +EXPORT_SYMBOL vmlinux 0x43283d4c __ClearPageMovable +EXPORT_SYMBOL vmlinux 0x4331ee75 bio_advance +EXPORT_SYMBOL vmlinux 0x43326756 pci_map_rom +EXPORT_SYMBOL vmlinux 0x4336fcca ucs2_as_utf8 +EXPORT_SYMBOL vmlinux 0x433cabfb acpi_decode_pld_buffer +EXPORT_SYMBOL vmlinux 0x4346045d register_fib_notifier +EXPORT_SYMBOL vmlinux 0x4346bbe4 sk_ns_capable +EXPORT_SYMBOL vmlinux 0x4351577a fb_parse_edid +EXPORT_SYMBOL vmlinux 0x437a0d6d __sock_tx_timestamp +EXPORT_SYMBOL vmlinux 0x438610bd security_tun_dev_alloc_security +EXPORT_SYMBOL vmlinux 0x43a30f5b xdp_get_umem_from_qid +EXPORT_SYMBOL vmlinux 0x43ab111a mount_single +EXPORT_SYMBOL vmlinux 0x43afcacf dev_uc_unsync +EXPORT_SYMBOL vmlinux 0x43b4a7af pagecache_isize_extended +EXPORT_SYMBOL vmlinux 0x43c0695b truncate_pagecache +EXPORT_SYMBOL vmlinux 0x43c781bd pci_bus_alloc_resource +EXPORT_SYMBOL vmlinux 0x43d7f99d __dec_zone_page_state +EXPORT_SYMBOL vmlinux 0x43ddd93a param_set_short +EXPORT_SYMBOL vmlinux 0x43f48bcd default_llseek +EXPORT_SYMBOL vmlinux 0x43f52b39 security_socket_getpeersec_dgram +EXPORT_SYMBOL vmlinux 0x44304edf blk_mq_start_hw_queue +EXPORT_SYMBOL vmlinux 0x44414ff2 iosf_mbi_unblock_punit_i2c_access +EXPORT_SYMBOL vmlinux 0x44462b88 __x86_retpoline_rdx +EXPORT_SYMBOL vmlinux 0x44469a76 crc_ccitt_false_table +EXPORT_SYMBOL vmlinux 0x444ebd3f genphy_check_and_restart_aneg +EXPORT_SYMBOL vmlinux 0x444f8ce3 fb_get_mode +EXPORT_SYMBOL vmlinux 0x445ba164 inc_nlink +EXPORT_SYMBOL vmlinux 0x4462d35e cpufreq_get_hw_max_freq +EXPORT_SYMBOL vmlinux 0x4466e764 tcp_sock_set_quickack +EXPORT_SYMBOL vmlinux 0x446cafc9 tty_unregister_driver +EXPORT_SYMBOL vmlinux 0x447f5fe8 user_revoke +EXPORT_SYMBOL vmlinux 0x448b2927 nf_hook_slow_list +EXPORT_SYMBOL vmlinux 0x44902cff acpi_enable_event +EXPORT_SYMBOL vmlinux 0x449ad0a7 memcmp +EXPORT_SYMBOL vmlinux 0x449eec83 nf_log_unset +EXPORT_SYMBOL vmlinux 0x44a6e90a irq_cpu_rmap_add +EXPORT_SYMBOL vmlinux 0x44aaf30f tsc_khz +EXPORT_SYMBOL vmlinux 0x44bea763 netdev_txq_to_tc +EXPORT_SYMBOL vmlinux 0x44c9a9c0 netdev_has_upper_dev +EXPORT_SYMBOL vmlinux 0x44d1fd72 acpi_device_set_power +EXPORT_SYMBOL vmlinux 0x44d3cbb8 phy_connect +EXPORT_SYMBOL vmlinux 0x44e012f6 dma_virt_ops +EXPORT_SYMBOL vmlinux 0x44e45e52 dev_deactivate +EXPORT_SYMBOL vmlinux 0x44e9a829 match_token +EXPORT_SYMBOL vmlinux 0x44f0fe59 dquot_reclaim_space_nodirty +EXPORT_SYMBOL vmlinux 0x44f294d1 __scm_send +EXPORT_SYMBOL vmlinux 0x44f36c06 netdev_set_num_tc +EXPORT_SYMBOL vmlinux 0x45006cee default_red +EXPORT_SYMBOL vmlinux 0x45081703 ec_get_handle +EXPORT_SYMBOL vmlinux 0x45219513 pci_unregister_driver +EXPORT_SYMBOL vmlinux 0x4524ded4 cdrom_get_last_written +EXPORT_SYMBOL vmlinux 0x452ba683 ipv6_ext_hdr +EXPORT_SYMBOL vmlinux 0x453a18c4 dquot_initialize +EXPORT_SYMBOL vmlinux 0x453c6cd5 iov_iter_gap_alignment +EXPORT_SYMBOL vmlinux 0x453c8403 pci_msi_enabled +EXPORT_SYMBOL vmlinux 0x4544a58d truncate_inode_pages_final +EXPORT_SYMBOL vmlinux 0x4546c810 __filemap_set_wb_err +EXPORT_SYMBOL vmlinux 0x45535485 xxh32_update +EXPORT_SYMBOL vmlinux 0x45575612 dev_mc_add_global +EXPORT_SYMBOL vmlinux 0x45674bf9 __blk_mq_end_request +EXPORT_SYMBOL vmlinux 0x456ea532 qdisc_offload_graft_helper +EXPORT_SYMBOL vmlinux 0x45765608 iov_iter_bvec +EXPORT_SYMBOL vmlinux 0x4578f528 __kfifo_to_user +EXPORT_SYMBOL vmlinux 0x45843d72 xfrm_policy_delete +EXPORT_SYMBOL vmlinux 0x4587b938 scsi_verify_blk_ioctl +EXPORT_SYMBOL vmlinux 0x458e391a tcp_peek_len +EXPORT_SYMBOL vmlinux 0x458f1a89 jbd2_journal_force_commit +EXPORT_SYMBOL vmlinux 0x459aff3e tcf_action_exec +EXPORT_SYMBOL vmlinux 0x45ae81f4 __cleancache_init_shared_fs +EXPORT_SYMBOL vmlinux 0x45d246da node_to_cpumask_map +EXPORT_SYMBOL vmlinux 0x45d7999e blk_mq_run_hw_queues +EXPORT_SYMBOL vmlinux 0x45e69e01 prepare_to_wait_exclusive +EXPORT_SYMBOL vmlinux 0x45e8d7b5 native_write_cr0 +EXPORT_SYMBOL vmlinux 0x46045dd7 kstrtou8 +EXPORT_SYMBOL vmlinux 0x461ac773 kstrtol_from_user +EXPORT_SYMBOL vmlinux 0x461d16ca sg_nents +EXPORT_SYMBOL vmlinux 0x4621eae4 pci_back_from_sleep +EXPORT_SYMBOL vmlinux 0x4629334c __preempt_count +EXPORT_SYMBOL vmlinux 0x462f6f0b pci_clear_mwi +EXPORT_SYMBOL vmlinux 0x463219fb tcp_hashinfo +EXPORT_SYMBOL vmlinux 0x4632891f pci_scan_bridge +EXPORT_SYMBOL vmlinux 0x465ad677 netdev_lower_state_changed +EXPORT_SYMBOL vmlinux 0x465e24ff ucs2_utf8size +EXPORT_SYMBOL vmlinux 0x46613531 get_tree_single +EXPORT_SYMBOL vmlinux 0x4663d24c kthread_create_worker_on_cpu +EXPORT_SYMBOL vmlinux 0x466c14a7 __delay +EXPORT_SYMBOL vmlinux 0x467df16d netdev_rss_key_fill +EXPORT_SYMBOL vmlinux 0x4683099e of_find_mipi_dsi_device_by_node +EXPORT_SYMBOL vmlinux 0x469a6ec7 tcp_parse_md5sig_option +EXPORT_SYMBOL vmlinux 0x469f7871 blk_integrity_merge_bio +EXPORT_SYMBOL vmlinux 0x46b94b42 scsi_print_sense_hdr +EXPORT_SYMBOL vmlinux 0x46c47fb6 __node_distance +EXPORT_SYMBOL vmlinux 0x46cf10eb cachemode2protval +EXPORT_SYMBOL vmlinux 0x46e5edc4 from_kprojid_munged +EXPORT_SYMBOL vmlinux 0x46f55ff6 phy_resume +EXPORT_SYMBOL vmlinux 0x470be283 bmap +EXPORT_SYMBOL vmlinux 0x4712ed25 kthread_blkcg +EXPORT_SYMBOL vmlinux 0x4715a909 acpi_load_table +EXPORT_SYMBOL vmlinux 0x4719516d blk_queue_physical_block_size +EXPORT_SYMBOL vmlinux 0x472420bb pnp_device_detach +EXPORT_SYMBOL vmlinux 0x47417324 devm_devfreq_unregister_opp_notifier +EXPORT_SYMBOL vmlinux 0x475a280f netdev_update_features +EXPORT_SYMBOL vmlinux 0x476816cd security_dentry_create_files_as +EXPORT_SYMBOL vmlinux 0x47709e42 free_anon_bdev +EXPORT_SYMBOL vmlinux 0x47769160 nd_namespace_blk_validate +EXPORT_SYMBOL vmlinux 0x47939e0d __tasklet_hi_schedule +EXPORT_SYMBOL vmlinux 0x47941711 _raw_spin_lock_irq +EXPORT_SYMBOL vmlinux 0x47960bc4 proc_do_large_bitmap +EXPORT_SYMBOL vmlinux 0x4797f015 __genphy_config_aneg +EXPORT_SYMBOL vmlinux 0x479c3c86 find_next_zero_bit +EXPORT_SYMBOL vmlinux 0x47a0cdcb mb_cache_entry_find_next +EXPORT_SYMBOL vmlinux 0x47a157ba simple_write_end +EXPORT_SYMBOL vmlinux 0x47b94d94 amd_iommu_domain_enable_v2 +EXPORT_SYMBOL vmlinux 0x47c65bfc unregister_inet6addr_validator_notifier +EXPORT_SYMBOL vmlinux 0x47ccc3c4 inet6_csk_route_req +EXPORT_SYMBOL vmlinux 0x47d4446d __skb_recv_udp +EXPORT_SYMBOL vmlinux 0x48193639 acpi_lid_open +EXPORT_SYMBOL vmlinux 0x481ea764 register_cdrom +EXPORT_SYMBOL vmlinux 0x4829cf6b fscrypt_enqueue_decrypt_work +EXPORT_SYMBOL vmlinux 0x4834ccff ipmr_rule_default +EXPORT_SYMBOL vmlinux 0x4841bdee strnchr +EXPORT_SYMBOL vmlinux 0x48476bcb intel_gtt_insert_page +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 0x486b1157 set_anon_super +EXPORT_SYMBOL vmlinux 0x486d72c6 d_tmpfile +EXPORT_SYMBOL vmlinux 0x487087c0 genphy_read_mmd_unsupported +EXPORT_SYMBOL vmlinux 0x4871d75d clk_hw_register_clkdev +EXPORT_SYMBOL vmlinux 0x4875eec0 ip_getsockopt +EXPORT_SYMBOL vmlinux 0x487c557f blk_mq_init_queue +EXPORT_SYMBOL vmlinux 0x48951ab3 give_up_console +EXPORT_SYMBOL vmlinux 0x489f6e0b rdma_dim +EXPORT_SYMBOL vmlinux 0x48a81d7e vfio_group_pin_pages +EXPORT_SYMBOL vmlinux 0x48a91171 string_get_size +EXPORT_SYMBOL vmlinux 0x48b99a13 vme_lm_free +EXPORT_SYMBOL vmlinux 0x48c093fb _atomic_dec_and_lock_irqsave +EXPORT_SYMBOL vmlinux 0x48c42d2b __nla_put +EXPORT_SYMBOL vmlinux 0x48d50e79 amd_iommu_register_ppr_notifier +EXPORT_SYMBOL vmlinux 0x48de4232 kobject_get_unless_zero +EXPORT_SYMBOL vmlinux 0x48e0bec7 pcim_iomap +EXPORT_SYMBOL vmlinux 0x49045426 icmp_err_convert +EXPORT_SYMBOL vmlinux 0x4914c41b is_acpi_data_node +EXPORT_SYMBOL vmlinux 0x4922f916 genl_unregister_family +EXPORT_SYMBOL vmlinux 0x49330257 uart_add_one_port +EXPORT_SYMBOL vmlinux 0x49436a46 __vfs_getxattr +EXPORT_SYMBOL vmlinux 0x494e3393 vm_get_page_prot +EXPORT_SYMBOL vmlinux 0x495196e3 bioset_exit +EXPORT_SYMBOL vmlinux 0x49572bbe uart_remove_one_port +EXPORT_SYMBOL vmlinux 0x495e378d __pv_queued_spin_lock_slowpath +EXPORT_SYMBOL vmlinux 0x4960d7f6 pcim_iomap_regions +EXPORT_SYMBOL vmlinux 0x4965a3fa blk_rq_map_user_iov +EXPORT_SYMBOL vmlinux 0x49662e6b neigh_resolve_output +EXPORT_SYMBOL vmlinux 0x497cefa3 fc_block_rport +EXPORT_SYMBOL vmlinux 0x498e9128 ZSTD_findDecompressedSize +EXPORT_SYMBOL vmlinux 0x499843dd dma_mmap_attrs +EXPORT_SYMBOL vmlinux 0x49996826 skb_copy_datagram_iter +EXPORT_SYMBOL vmlinux 0x499f0ecf nd_sb_checksum +EXPORT_SYMBOL vmlinux 0x49b163b8 acpi_bus_scan +EXPORT_SYMBOL vmlinux 0x49c41a57 _raw_spin_unlock_bh +EXPORT_SYMBOL vmlinux 0x49d0cd36 dma_direct_map_resource +EXPORT_SYMBOL vmlinux 0x49d87a3c dev_change_carrier +EXPORT_SYMBOL vmlinux 0x49e0254a param_get_invbool +EXPORT_SYMBOL vmlinux 0x49ed86a0 ZSTD_endStream +EXPORT_SYMBOL vmlinux 0x49f4b6bd page_mapping +EXPORT_SYMBOL vmlinux 0x4a051dd5 blk_mq_run_hw_queue +EXPORT_SYMBOL vmlinux 0x4a07d70d xfrm_policy_insert +EXPORT_SYMBOL vmlinux 0x4a0c83ed d_obtain_root +EXPORT_SYMBOL vmlinux 0x4a16f72d d_alloc_parallel +EXPORT_SYMBOL vmlinux 0x4a19cb67 param_set_bint +EXPORT_SYMBOL vmlinux 0x4a20fc5e ll_rw_block +EXPORT_SYMBOL vmlinux 0x4a2cbd79 ip_mc_check_igmp +EXPORT_SYMBOL vmlinux 0x4a3ad70e wait_for_completion_timeout +EXPORT_SYMBOL vmlinux 0x4a453f53 iowrite32 +EXPORT_SYMBOL vmlinux 0x4a7612f3 phy_get_eee_err +EXPORT_SYMBOL vmlinux 0x4a7b8d77 d_delete +EXPORT_SYMBOL vmlinux 0x4a8c7109 block_commit_write +EXPORT_SYMBOL vmlinux 0x4a8f875e nlmsg_notify +EXPORT_SYMBOL vmlinux 0x4a96a8eb xxh32_digest +EXPORT_SYMBOL vmlinux 0x4a9b888c iunique +EXPORT_SYMBOL vmlinux 0x4ab208ba acpi_walk_resource_buffer +EXPORT_SYMBOL vmlinux 0x4abb7d10 cpu_rmap_update +EXPORT_SYMBOL vmlinux 0x4aea463f crc32_le_shift +EXPORT_SYMBOL vmlinux 0x4af5d812 security_sock_rcv_skb +EXPORT_SYMBOL vmlinux 0x4afb2238 add_wait_queue +EXPORT_SYMBOL vmlinux 0x4afd64f8 phy_start +EXPORT_SYMBOL vmlinux 0x4b085dbf agp3_generic_configure +EXPORT_SYMBOL vmlinux 0x4b0962c3 mpage_readahead +EXPORT_SYMBOL vmlinux 0x4b1525a4 i8042_remove_filter +EXPORT_SYMBOL vmlinux 0x4b23b067 consume_skb +EXPORT_SYMBOL vmlinux 0x4b257f08 misc_deregister +EXPORT_SYMBOL vmlinux 0x4b290fbe tcp_set_rcvlowat +EXPORT_SYMBOL vmlinux 0x4b4110f6 sock_dequeue_err_skb +EXPORT_SYMBOL vmlinux 0x4b55dca3 jbd2_log_wait_commit +EXPORT_SYMBOL vmlinux 0x4b5dddcd processors +EXPORT_SYMBOL vmlinux 0x4b5fd49e dm_kcopyd_do_callback +EXPORT_SYMBOL vmlinux 0x4b6cf4e7 pcie_capability_clear_and_set_dword +EXPORT_SYMBOL vmlinux 0x4b6df007 acpi_evaluate_reg +EXPORT_SYMBOL vmlinux 0x4b8cb7de __phy_write_mmd +EXPORT_SYMBOL vmlinux 0x4bace099 blk_queue_dma_alignment +EXPORT_SYMBOL vmlinux 0x4bb31a99 phy_ethtool_get_eee +EXPORT_SYMBOL vmlinux 0x4bbaec27 vfio_unpin_pages +EXPORT_SYMBOL vmlinux 0x4bbd6b5c devfreq_add_device +EXPORT_SYMBOL vmlinux 0x4bc06342 tcf_em_unregister +EXPORT_SYMBOL vmlinux 0x4bc766ec jbd2_journal_force_commit_nested +EXPORT_SYMBOL vmlinux 0x4bcc2662 mempool_init_node +EXPORT_SYMBOL vmlinux 0x4bd06c10 unregister_filesystem +EXPORT_SYMBOL vmlinux 0x4be8dd72 vme_bus_num +EXPORT_SYMBOL vmlinux 0x4bef1c67 empty_name +EXPORT_SYMBOL vmlinux 0x4bf1087f iptun_encaps +EXPORT_SYMBOL vmlinux 0x4c07a7e0 acpi_processor_unregister_performance +EXPORT_SYMBOL vmlinux 0x4c0d4ca4 skb_checksum_setup +EXPORT_SYMBOL vmlinux 0x4c333a56 nf_ip6_checksum +EXPORT_SYMBOL vmlinux 0x4c34db21 blk_rq_count_integrity_sg +EXPORT_SYMBOL vmlinux 0x4c38d4e0 utf8_strncasecmp_folded +EXPORT_SYMBOL vmlinux 0x4c416eb9 LZ4_decompress_fast +EXPORT_SYMBOL vmlinux 0x4c628866 rdmacg_try_charge +EXPORT_SYMBOL vmlinux 0x4c67b64d blk_queue_io_min +EXPORT_SYMBOL vmlinux 0x4c9d28b0 phys_base +EXPORT_SYMBOL vmlinux 0x4ca3bd0b scmd_printk +EXPORT_SYMBOL vmlinux 0x4cb9c677 blkdev_compat_ptr_ioctl +EXPORT_SYMBOL vmlinux 0x4cba441d iwe_stream_add_event +EXPORT_SYMBOL vmlinux 0x4cd5bc5e rdmsr_safe_regs +EXPORT_SYMBOL vmlinux 0x4cd5f1ce iov_iter_advance +EXPORT_SYMBOL vmlinux 0x4cee214d jbd2_journal_set_features +EXPORT_SYMBOL vmlinux 0x4d2c7133 acpi_info +EXPORT_SYMBOL vmlinux 0x4d3d7489 gro_find_receive_by_type +EXPORT_SYMBOL vmlinux 0x4d4304f1 dquot_quota_on_mount +EXPORT_SYMBOL vmlinux 0x4d924f20 memremap +EXPORT_SYMBOL vmlinux 0x4d9b21fe __x86_retpoline_r11 +EXPORT_SYMBOL vmlinux 0x4d9b652b rb_erase +EXPORT_SYMBOL vmlinux 0x4da007d4 agp_generic_insert_memory +EXPORT_SYMBOL vmlinux 0x4dab1b55 ppp_register_channel +EXPORT_SYMBOL vmlinux 0x4db5b713 dma_cache_sync +EXPORT_SYMBOL vmlinux 0x4dc0904d cdrom_dummy_generic_packet +EXPORT_SYMBOL vmlinux 0x4dca08ee sync_file_get_fence +EXPORT_SYMBOL vmlinux 0x4ddbd4ef skb_append +EXPORT_SYMBOL vmlinux 0x4de8e3c5 param_ops_charp +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 0x4e20bcf8 radix_tree_tag_set +EXPORT_SYMBOL vmlinux 0x4e3567f7 match_int +EXPORT_SYMBOL vmlinux 0x4e4f0f16 dma_fence_chain_find_seqno +EXPORT_SYMBOL vmlinux 0x4e547048 __kmalloc_node_track_caller +EXPORT_SYMBOL vmlinux 0x4e5ea529 ip_mc_inc_group +EXPORT_SYMBOL vmlinux 0x4e5f04ca ___pskb_trim +EXPORT_SYMBOL vmlinux 0x4e68e9be rb_next_postorder +EXPORT_SYMBOL vmlinux 0x4e68fc23 seq_puts +EXPORT_SYMBOL vmlinux 0x4e6aa22d pnp_is_active +EXPORT_SYMBOL vmlinux 0x4e6dceb4 udp6_csum_init +EXPORT_SYMBOL vmlinux 0x4e6e4b41 radix_tree_delete +EXPORT_SYMBOL vmlinux 0x4e6e8ea7 fg_console +EXPORT_SYMBOL vmlinux 0x4e7396f1 pps_register_source +EXPORT_SYMBOL vmlinux 0x4e8d40a2 qdisc_watchdog_schedule_range_ns +EXPORT_SYMBOL vmlinux 0x4e96a5e5 vme_register_error_handler +EXPORT_SYMBOL vmlinux 0x4e9e6102 xp_dma_sync_for_cpu_slow +EXPORT_SYMBOL vmlinux 0x4ea25709 dql_reset +EXPORT_SYMBOL vmlinux 0x4eac7b9d __inet_stream_connect +EXPORT_SYMBOL vmlinux 0x4eba3b3c tcp_sock_set_nodelay +EXPORT_SYMBOL vmlinux 0x4ebbbc53 blk_stack_limits +EXPORT_SYMBOL vmlinux 0x4ec54e78 bitmap_to_arr32 +EXPORT_SYMBOL vmlinux 0x4ec585b7 udp_lib_setsockopt +EXPORT_SYMBOL vmlinux 0x4ed86164 scsi_device_put +EXPORT_SYMBOL vmlinux 0x4ed8b914 generic_file_llseek +EXPORT_SYMBOL vmlinux 0x4ede0651 inet_addr_type_table +EXPORT_SYMBOL vmlinux 0x4ef4750f nd_device_unregister +EXPORT_SYMBOL vmlinux 0x4ef96045 nla_put +EXPORT_SYMBOL vmlinux 0x4f1cd128 security_tun_dev_create +EXPORT_SYMBOL vmlinux 0x4f2250ba rtc_tm_to_time64 +EXPORT_SYMBOL vmlinux 0x4f24b59b xfrm_input_resume +EXPORT_SYMBOL vmlinux 0x4f47ef08 flow_block_cb_priv +EXPORT_SYMBOL vmlinux 0x4f4d78c5 LZ4_compress_default +EXPORT_SYMBOL vmlinux 0x4f55166f acpi_set_current_resources +EXPORT_SYMBOL vmlinux 0x4f5ccdba kill_pid +EXPORT_SYMBOL vmlinux 0x4f6ea6c7 blk_queue_max_segments +EXPORT_SYMBOL vmlinux 0x4f711f84 intel_scu_ipc_dev_iowrite8 +EXPORT_SYMBOL vmlinux 0x4f907f2a xfrm_policy_walk_done +EXPORT_SYMBOL vmlinux 0x4f924cbb __mdiobus_read +EXPORT_SYMBOL vmlinux 0x4f929251 zpool_unregister_driver +EXPORT_SYMBOL vmlinux 0x4fb4b9aa phy_write_mmd +EXPORT_SYMBOL vmlinux 0x4fb6149a __bforget +EXPORT_SYMBOL vmlinux 0x4fc5bebd agp_generic_create_gatt_table +EXPORT_SYMBOL vmlinux 0x4fcc8ad2 ex_handler_uaccess +EXPORT_SYMBOL vmlinux 0x4fd73047 ip_tunnel_encap_del_ops +EXPORT_SYMBOL vmlinux 0x4fdee897 i8042_command +EXPORT_SYMBOL vmlinux 0x4fe11e07 fb_firmware_edid +EXPORT_SYMBOL vmlinux 0x4feebb7b vlan_dev_real_dev +EXPORT_SYMBOL vmlinux 0x4ff39d27 super_setup_bdi +EXPORT_SYMBOL vmlinux 0x4ffbb298 dma_direct_sync_single_for_device +EXPORT_SYMBOL vmlinux 0x50097088 security_tun_dev_free_security +EXPORT_SYMBOL vmlinux 0x5009c71d glob_match +EXPORT_SYMBOL vmlinux 0x50129458 mipi_dsi_dcs_set_pixel_format +EXPORT_SYMBOL vmlinux 0x5016aaaa jbd2_journal_check_used_features +EXPORT_SYMBOL vmlinux 0x5027bde2 acpi_acquire_mutex +EXPORT_SYMBOL vmlinux 0x502ee688 phy_do_ioctl +EXPORT_SYMBOL vmlinux 0x50367b84 dev_pm_opp_unregister_notifier +EXPORT_SYMBOL vmlinux 0x5047900e cdrom_open +EXPORT_SYMBOL vmlinux 0x504dfc58 vmap +EXPORT_SYMBOL vmlinux 0x50624917 sha1_init +EXPORT_SYMBOL vmlinux 0x506c9332 pnp_stop_dev +EXPORT_SYMBOL vmlinux 0x506dff1a __genradix_free +EXPORT_SYMBOL vmlinux 0x507912e4 make_kprojid +EXPORT_SYMBOL vmlinux 0x509b64ea acpi_has_method +EXPORT_SYMBOL vmlinux 0x50a3179e try_to_writeback_inodes_sb +EXPORT_SYMBOL vmlinux 0x50a4698c fb_videomode_to_modelist +EXPORT_SYMBOL vmlinux 0x50aafe5e flow_rule_match_ipv6_addrs +EXPORT_SYMBOL vmlinux 0x50b73ce2 rfkill_find_type +EXPORT_SYMBOL vmlinux 0x50be748d security_ib_free_security +EXPORT_SYMBOL vmlinux 0x50c84983 agp_generic_free_gatt_table +EXPORT_SYMBOL vmlinux 0x50cb613b csum_and_copy_from_iter_full +EXPORT_SYMBOL vmlinux 0x50d68377 arch_phys_wc_del +EXPORT_SYMBOL vmlinux 0x50dd3f20 truncate_pagecache_range +EXPORT_SYMBOL vmlinux 0x50e7aa02 neigh_sysctl_register +EXPORT_SYMBOL vmlinux 0x50f91491 __genradix_ptr +EXPORT_SYMBOL vmlinux 0x5102a30b do_wait_intr_irq +EXPORT_SYMBOL vmlinux 0x5105847e serio_unregister_driver +EXPORT_SYMBOL vmlinux 0x5105d38d skb_mac_gso_segment +EXPORT_SYMBOL vmlinux 0x5118866f pci_enable_device_mem +EXPORT_SYMBOL vmlinux 0x5122992b simple_lookup +EXPORT_SYMBOL vmlinux 0x5145ef52 __insert_inode_hash +EXPORT_SYMBOL vmlinux 0x51480b32 padata_stop +EXPORT_SYMBOL vmlinux 0x515083bf acpi_release_mutex +EXPORT_SYMBOL vmlinux 0x5155d292 tty_port_close +EXPORT_SYMBOL vmlinux 0x515b146c xsk_umem_consume_tx +EXPORT_SYMBOL vmlinux 0x51641162 opal_unlock_from_suspend +EXPORT_SYMBOL vmlinux 0x516742eb dquot_scan_active +EXPORT_SYMBOL vmlinux 0x51739e69 clk_get +EXPORT_SYMBOL vmlinux 0x51760917 _raw_spin_lock_irqsave +EXPORT_SYMBOL vmlinux 0x517f18c8 follow_down_one +EXPORT_SYMBOL vmlinux 0x518ddc20 tcp_sync_mss +EXPORT_SYMBOL vmlinux 0x519d6682 bdev_dax_pgoff +EXPORT_SYMBOL vmlinux 0x51a9ef37 input_free_device +EXPORT_SYMBOL vmlinux 0x51aa07a3 phy_get_pause +EXPORT_SYMBOL vmlinux 0x51b02b83 csum_and_copy_to_iter +EXPORT_SYMBOL vmlinux 0x51d12d4e acpi_pci_disabled +EXPORT_SYMBOL vmlinux 0x51e88bad request_key_tag +EXPORT_SYMBOL vmlinux 0x51f298e0 intel_scu_ipc_dev_ioread8 +EXPORT_SYMBOL vmlinux 0x51fb1a8f mdiobus_is_registered_device +EXPORT_SYMBOL vmlinux 0x51ff6343 blk_mq_requeue_request +EXPORT_SYMBOL vmlinux 0x522c9810 call_fib_notifiers +EXPORT_SYMBOL vmlinux 0x525b82c0 bio_init +EXPORT_SYMBOL vmlinux 0x526e5eea locks_init_lock +EXPORT_SYMBOL vmlinux 0x526eef2c hdmi_vendor_infoframe_pack +EXPORT_SYMBOL vmlinux 0x52983a4f vme_master_write +EXPORT_SYMBOL vmlinux 0x52aa7512 pci_dev_get +EXPORT_SYMBOL vmlinux 0x52c33f93 __module_put_and_exit +EXPORT_SYMBOL vmlinux 0x52d717da xz_dec_init +EXPORT_SYMBOL vmlinux 0x52e5ea15 vga_switcheroo_unlock_ddc +EXPORT_SYMBOL vmlinux 0x52eba3a3 bfifo_qdisc_ops +EXPORT_SYMBOL vmlinux 0x52ecbc75 crc_ccitt +EXPORT_SYMBOL vmlinux 0x52f4b6ae netdev_class_create_file_ns +EXPORT_SYMBOL vmlinux 0x52f4e33f edac_mc_find +EXPORT_SYMBOL vmlinux 0x52fe6a8a redirty_page_for_writepage +EXPORT_SYMBOL vmlinux 0x530b1e98 pm_suspend +EXPORT_SYMBOL vmlinux 0x53126ecc __percpu_counter_sum +EXPORT_SYMBOL vmlinux 0x531b604e __virt_addr_valid +EXPORT_SYMBOL vmlinux 0x533206b5 sort_r +EXPORT_SYMBOL vmlinux 0x533febeb fscrypt_zeroout_range +EXPORT_SYMBOL vmlinux 0x53569707 this_cpu_off +EXPORT_SYMBOL vmlinux 0x5367b4b4 boot_cpu_data +EXPORT_SYMBOL vmlinux 0x53717922 alloc_pages_vma +EXPORT_SYMBOL vmlinux 0x537316a4 setattr_prepare +EXPORT_SYMBOL vmlinux 0x537c3064 neigh_app_ns +EXPORT_SYMBOL vmlinux 0x53957cb6 ip6_fraglist_prepare +EXPORT_SYMBOL vmlinux 0x53a5e7c6 param_get_charp +EXPORT_SYMBOL vmlinux 0x53b1e3d7 proc_create_mount_point +EXPORT_SYMBOL vmlinux 0x53b954a2 up_read +EXPORT_SYMBOL vmlinux 0x53be34f0 __x86_retpoline_rsi +EXPORT_SYMBOL vmlinux 0x53c52cb9 inode_set_flags +EXPORT_SYMBOL vmlinux 0x53f6b8b7 netdev_name_node_alt_create +EXPORT_SYMBOL vmlinux 0x53fa36d1 ZSTD_decompressBlock +EXPORT_SYMBOL vmlinux 0x54079823 neigh_seq_stop +EXPORT_SYMBOL vmlinux 0x5407abc0 devfreq_register_notifier +EXPORT_SYMBOL vmlinux 0x54175c5f acpi_read_bit_register +EXPORT_SYMBOL vmlinux 0x54245b39 kstrtoull_from_user +EXPORT_SYMBOL vmlinux 0x543ef284 seq_hlist_start +EXPORT_SYMBOL vmlinux 0x54596ac5 dev_set_allmulti +EXPORT_SYMBOL vmlinux 0x545ea85c pci_scan_slot +EXPORT_SYMBOL vmlinux 0x54765c79 deactivate_super +EXPORT_SYMBOL vmlinux 0x547a05df __nla_put_64bit +EXPORT_SYMBOL vmlinux 0x547ccae5 pci_request_regions +EXPORT_SYMBOL vmlinux 0x547e3344 acpi_disable +EXPORT_SYMBOL vmlinux 0x5496f634 pci_map_biosrom +EXPORT_SYMBOL vmlinux 0x54991b13 genphy_soft_reset +EXPORT_SYMBOL vmlinux 0x54a9db5f _kstrtoul +EXPORT_SYMBOL vmlinux 0x54b5f9f7 nd_btt_probe +EXPORT_SYMBOL vmlinux 0x54bc8323 genphy_read_abilities +EXPORT_SYMBOL vmlinux 0x54c1206a sync_inode +EXPORT_SYMBOL vmlinux 0x54c9f035 ip_defrag +EXPORT_SYMBOL vmlinux 0x54d48db5 vfs_clone_file_range +EXPORT_SYMBOL vmlinux 0x54de796a devm_ioremap_wc +EXPORT_SYMBOL vmlinux 0x54e6fcdd net_enable_timestamp +EXPORT_SYMBOL vmlinux 0x54ec4b1c kernel_recvmsg +EXPORT_SYMBOL vmlinux 0x54f37e4c acpi_match_device_ids +EXPORT_SYMBOL vmlinux 0x54f9d2ed devm_of_find_backlight +EXPORT_SYMBOL vmlinux 0x5502333d bio_integrity_prep +EXPORT_SYMBOL vmlinux 0x5506b8f7 netlbl_bitmap_setbit +EXPORT_SYMBOL vmlinux 0x550b7704 input_grab_device +EXPORT_SYMBOL vmlinux 0x5513089a cad_pid +EXPORT_SYMBOL vmlinux 0x551bd071 __rb_erase_color +EXPORT_SYMBOL vmlinux 0x55249dd1 phy_connect_direct +EXPORT_SYMBOL vmlinux 0x554ae3a4 irq_poll_sched +EXPORT_SYMBOL vmlinux 0x554b5c44 devm_input_allocate_device +EXPORT_SYMBOL vmlinux 0x555e9e7c vc_cons +EXPORT_SYMBOL vmlinux 0x556422b3 ioremap_cache +EXPORT_SYMBOL vmlinux 0x556b5d62 __kfifo_dma_in_prepare_r +EXPORT_SYMBOL vmlinux 0x556cca46 x86_apple_machine +EXPORT_SYMBOL vmlinux 0x55726f37 unregister_quota_format +EXPORT_SYMBOL vmlinux 0x55751fc5 kfree_skb +EXPORT_SYMBOL vmlinux 0x5577d88f __tty_alloc_driver +EXPORT_SYMBOL vmlinux 0x55782363 fs_param_is_bool +EXPORT_SYMBOL vmlinux 0x558a2799 commit_creds +EXPORT_SYMBOL vmlinux 0x558b281d aes_expandkey +EXPORT_SYMBOL vmlinux 0x5593987d __getblk_gfp +EXPORT_SYMBOL vmlinux 0x55a87cc9 generic_setlease +EXPORT_SYMBOL vmlinux 0x55cbecf1 nf_log_unbind_pf +EXPORT_SYMBOL vmlinux 0x55cf1a5d phy_attached_info +EXPORT_SYMBOL vmlinux 0x55e0e613 xfrm_register_km +EXPORT_SYMBOL vmlinux 0x55e31703 ethtool_convert_link_mode_to_legacy_u32 +EXPORT_SYMBOL vmlinux 0x55f95e07 ioremap_prot +EXPORT_SYMBOL vmlinux 0x560ddd3f alloc_fddidev +EXPORT_SYMBOL vmlinux 0x5612e4bf xfrm_policy_unregister_afinfo +EXPORT_SYMBOL vmlinux 0x56159e3d tcp_mss_to_mtu +EXPORT_SYMBOL vmlinux 0x561600f8 __dev_remove_pack +EXPORT_SYMBOL vmlinux 0x5635a60a vmalloc_user +EXPORT_SYMBOL vmlinux 0x56459d7d pci_release_region +EXPORT_SYMBOL vmlinux 0x56466e42 ZSTD_CStreamInSize +EXPORT_SYMBOL vmlinux 0x56470118 __warn_printk +EXPORT_SYMBOL vmlinux 0x564f7608 acpi_reconfig_notifier_register +EXPORT_SYMBOL vmlinux 0x566f6d43 scm_fp_dup +EXPORT_SYMBOL vmlinux 0x567e949d pcie_port_service_unregister +EXPORT_SYMBOL vmlinux 0x56802ae8 rps_cpu_mask +EXPORT_SYMBOL vmlinux 0x56806152 send_sig_mceerr +EXPORT_SYMBOL vmlinux 0x56987298 vme_slave_request +EXPORT_SYMBOL vmlinux 0x569abcca acpi_walk_resources +EXPORT_SYMBOL vmlinux 0x56c8799d scsi_kunmap_atomic_sg +EXPORT_SYMBOL vmlinux 0x56e2bf60 netif_tx_stop_all_queues +EXPORT_SYMBOL vmlinux 0x56e76a5d generic_fillattr +EXPORT_SYMBOL vmlinux 0x56ecd5cb tcp_filter +EXPORT_SYMBOL vmlinux 0x56ef3863 config_group_init +EXPORT_SYMBOL vmlinux 0x56f8c371 __tracepoint_kfree +EXPORT_SYMBOL vmlinux 0x57013b74 agp_generic_mask_memory +EXPORT_SYMBOL vmlinux 0x5723f2a9 inet_rcv_saddr_equal +EXPORT_SYMBOL vmlinux 0x574c2e74 bitmap_release_region +EXPORT_SYMBOL vmlinux 0x574e8ff1 fs_param_is_enum +EXPORT_SYMBOL vmlinux 0x57575f08 dmaengine_put +EXPORT_SYMBOL vmlinux 0x575e4ec7 ps2_sendbyte +EXPORT_SYMBOL vmlinux 0x57676230 put_cmsg +EXPORT_SYMBOL vmlinux 0x577c16b1 security_inode_copy_up +EXPORT_SYMBOL vmlinux 0x578a1876 tun_xdp_to_ptr +EXPORT_SYMBOL vmlinux 0x578a408b ZSTD_initDCtx +EXPORT_SYMBOL vmlinux 0x578c92b5 fscrypt_fname_disk_to_usr +EXPORT_SYMBOL vmlinux 0x57900416 gen_pool_fixed_alloc +EXPORT_SYMBOL vmlinux 0x5792f848 strlcpy +EXPORT_SYMBOL vmlinux 0x5796b141 generic_file_llseek_size +EXPORT_SYMBOL vmlinux 0x579c987c serio_close +EXPORT_SYMBOL vmlinux 0x579cdc34 pci_enable_device_io +EXPORT_SYMBOL vmlinux 0x57ba9dbb inet_register_protosw +EXPORT_SYMBOL vmlinux 0x57bc19d2 down_write +EXPORT_SYMBOL vmlinux 0x57c02163 sched_autogroup_create_attach +EXPORT_SYMBOL vmlinux 0x57d3f86b cdc_parse_cdc_header +EXPORT_SYMBOL vmlinux 0x57d914e9 tcf_idr_create +EXPORT_SYMBOL vmlinux 0x57ec3d8e __xfrm_decode_session +EXPORT_SYMBOL vmlinux 0x57f43556 qdisc_put +EXPORT_SYMBOL vmlinux 0x5800da9a amd_iommu_pc_set_reg +EXPORT_SYMBOL vmlinux 0x5807a635 textsearch_register +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 0x58392d09 noop_fsync +EXPORT_SYMBOL vmlinux 0x58512ecb param_get_uint +EXPORT_SYMBOL vmlinux 0x5857653d compat_ip_setsockopt +EXPORT_SYMBOL vmlinux 0x5857b225 ioread16_rep +EXPORT_SYMBOL vmlinux 0x58604e4d alloc_iova_mem +EXPORT_SYMBOL vmlinux 0x586efbfe md_register_thread +EXPORT_SYMBOL vmlinux 0x58765178 __xfrm_route_forward +EXPORT_SYMBOL vmlinux 0x587f22d7 devmap_managed_key +EXPORT_SYMBOL vmlinux 0x5881c8ea serio_open +EXPORT_SYMBOL vmlinux 0x5881dd6a xfrm_lookup_route +EXPORT_SYMBOL vmlinux 0x588286d0 __skb_gro_checksum_complete +EXPORT_SYMBOL vmlinux 0x58acf24b mdiobus_register_board_info +EXPORT_SYMBOL vmlinux 0x58adb05c get_vaddr_frames +EXPORT_SYMBOL vmlinux 0x58b4645c dev_close_many +EXPORT_SYMBOL vmlinux 0x58b73bc7 match_wildcard +EXPORT_SYMBOL vmlinux 0x58bb2c63 vm_insert_pages +EXPORT_SYMBOL vmlinux 0x58c0911f vfs_getattr +EXPORT_SYMBOL vmlinux 0x58e3306d bit_wait_io +EXPORT_SYMBOL vmlinux 0x58eace01 eth_gro_receive +EXPORT_SYMBOL vmlinux 0x58ecc0a9 iommu_put_dma_cookie +EXPORT_SYMBOL vmlinux 0x58fa5099 follow_pte_pmd +EXPORT_SYMBOL vmlinux 0x5907b9b5 nla_append +EXPORT_SYMBOL vmlinux 0x5908bbaf device_add_disk_no_queue_reg +EXPORT_SYMBOL vmlinux 0x590b7a5a devfreq_monitor_stop +EXPORT_SYMBOL vmlinux 0x59197408 devm_devfreq_register_notifier +EXPORT_SYMBOL vmlinux 0x592b3a26 flow_rule_match_enc_opts +EXPORT_SYMBOL vmlinux 0x593c1bac __x86_indirect_thunk_rbx +EXPORT_SYMBOL vmlinux 0x594bf15b ioport_map +EXPORT_SYMBOL vmlinux 0x59588850 vsscanf +EXPORT_SYMBOL vmlinux 0x596f8227 __register_nls +EXPORT_SYMBOL vmlinux 0x597f54c0 native_restore_fl +EXPORT_SYMBOL vmlinux 0x599bdb68 pnp_start_dev +EXPORT_SYMBOL vmlinux 0x599fb41c kvmalloc_node +EXPORT_SYMBOL vmlinux 0x59a2f0ee packing +EXPORT_SYMBOL vmlinux 0x59b4ac3e tcp_memory_allocated +EXPORT_SYMBOL vmlinux 0x59b5ac22 pci_bus_read_config_dword +EXPORT_SYMBOL vmlinux 0x59b9e6ef inet_frag_find +EXPORT_SYMBOL vmlinux 0x59baa245 pci_resize_resource +EXPORT_SYMBOL vmlinux 0x59c1fc9a __blockdev_direct_IO +EXPORT_SYMBOL vmlinux 0x59ca9a25 xfrm_dev_state_flush +EXPORT_SYMBOL vmlinux 0x5a0a8350 bio_copy_data_iter +EXPORT_SYMBOL vmlinux 0x5a0b73d0 zlib_deflateInit2 +EXPORT_SYMBOL vmlinux 0x5a245f6d _raw_write_lock +EXPORT_SYMBOL vmlinux 0x5a44f8cb __crypto_memneq +EXPORT_SYMBOL vmlinux 0x5a4754a2 ptp_clock_event +EXPORT_SYMBOL vmlinux 0x5a4896a8 __put_user_2 +EXPORT_SYMBOL vmlinux 0x5a4d313e gf128mul_4k_lle +EXPORT_SYMBOL vmlinux 0x5a5a2271 __cpu_online_mask +EXPORT_SYMBOL vmlinux 0x5a6d8e9b fwnode_graph_parse_endpoint +EXPORT_SYMBOL vmlinux 0x5a876b6e dev_addr_del +EXPORT_SYMBOL vmlinux 0x5a88009e eisa_driver_unregister +EXPORT_SYMBOL vmlinux 0x5a8ae15a ZSTD_initDDict +EXPORT_SYMBOL vmlinux 0x5a921311 strncmp +EXPORT_SYMBOL vmlinux 0x5ac2ca24 devm_backlight_device_register +EXPORT_SYMBOL vmlinux 0x5ac4adb0 sock_rfree +EXPORT_SYMBOL vmlinux 0x5ad6a698 dmam_alloc_attrs +EXPORT_SYMBOL vmlinux 0x5ad81250 devm_memremap +EXPORT_SYMBOL vmlinux 0x5adb4700 acpi_processor_notify_smm +EXPORT_SYMBOL vmlinux 0x5b2f27fb do_wait_intr +EXPORT_SYMBOL vmlinux 0x5b36d5dd utf8agemax +EXPORT_SYMBOL vmlinux 0x5b3e282f xa_store +EXPORT_SYMBOL vmlinux 0x5b56860c vm_munmap +EXPORT_SYMBOL vmlinux 0x5b695460 set_pages_wb +EXPORT_SYMBOL vmlinux 0x5b828bbe dev_change_flags +EXPORT_SYMBOL vmlinux 0x5b86b830 mipi_dsi_host_register +EXPORT_SYMBOL vmlinux 0x5b92bf86 truncate_inode_pages +EXPORT_SYMBOL vmlinux 0x5bc92e85 LZ4_compress_destSize +EXPORT_SYMBOL vmlinux 0x5bd048a8 dec_zone_page_state +EXPORT_SYMBOL vmlinux 0x5bd1fb62 release_sock +EXPORT_SYMBOL vmlinux 0x5bd4ff88 flow_action_cookie_create +EXPORT_SYMBOL vmlinux 0x5be63c5b crc32c_csum_stub +EXPORT_SYMBOL vmlinux 0x5bea43a5 __task_pid_nr_ns +EXPORT_SYMBOL vmlinux 0x5bf877b5 agp_enable +EXPORT_SYMBOL vmlinux 0x5bfd28db netif_napi_add +EXPORT_SYMBOL vmlinux 0x5c00d810 ZSTD_CDictWorkspaceBound +EXPORT_SYMBOL vmlinux 0x5c060799 tcp_sock_set_syncnt +EXPORT_SYMBOL vmlinux 0x5c0beff3 __sock_queue_rcv_skb +EXPORT_SYMBOL vmlinux 0x5c2666ad unlock_new_inode +EXPORT_SYMBOL vmlinux 0x5c26a53b wait_for_completion_io_timeout +EXPORT_SYMBOL vmlinux 0x5c391447 pagevec_lookup_range +EXPORT_SYMBOL vmlinux 0x5c4265f6 blk_unregister_region +EXPORT_SYMBOL vmlinux 0x5c7a0267 __cleancache_get_page +EXPORT_SYMBOL vmlinux 0x5c7eaa29 xfrm_find_acq_byseq +EXPORT_SYMBOL vmlinux 0x5c879d37 fput +EXPORT_SYMBOL vmlinux 0x5c943a18 phy_register_fixup_for_uid +EXPORT_SYMBOL vmlinux 0x5cf53ce2 input_free_minor +EXPORT_SYMBOL vmlinux 0x5cfb26a0 acpi_enter_sleep_state +EXPORT_SYMBOL vmlinux 0x5d091284 ps2_command +EXPORT_SYMBOL vmlinux 0x5d0bde6a mdio_device_remove +EXPORT_SYMBOL vmlinux 0x5d0e4d41 skb_vlan_pop +EXPORT_SYMBOL vmlinux 0x5d1bd1a3 scsi_is_target_device +EXPORT_SYMBOL vmlinux 0x5d428e50 pskb_trim_rcsum_slow +EXPORT_SYMBOL vmlinux 0x5d49aabc init_wait_var_entry +EXPORT_SYMBOL vmlinux 0x5d78a8f6 vm_node_stat +EXPORT_SYMBOL vmlinux 0x5d830297 get_random_bytes_arch +EXPORT_SYMBOL vmlinux 0x5dacc507 compat_ip_getsockopt +EXPORT_SYMBOL vmlinux 0x5db576b5 napi_schedule_prep +EXPORT_SYMBOL vmlinux 0x5dfd5150 uart_suspend_port +EXPORT_SYMBOL vmlinux 0x5dffb495 ZSTD_decompress_usingDDict +EXPORT_SYMBOL vmlinux 0x5e0ccb9f sha1_transform +EXPORT_SYMBOL vmlinux 0x5e0e35d2 __cgroup_bpf_run_filter_sock_ops +EXPORT_SYMBOL vmlinux 0x5e0f7783 phy_start_cable_test +EXPORT_SYMBOL vmlinux 0x5e171e78 security_cred_getsecid +EXPORT_SYMBOL vmlinux 0x5e1c48bc tcp_ld_RTO_revert +EXPORT_SYMBOL vmlinux 0x5e21a065 backlight_device_get_by_name +EXPORT_SYMBOL vmlinux 0x5e332b52 __var_waitqueue +EXPORT_SYMBOL vmlinux 0x5e34f090 pid_task +EXPORT_SYMBOL vmlinux 0x5e373fb4 gf128mul_64k_bbe +EXPORT_SYMBOL vmlinux 0x5e3820c9 bio_add_page +EXPORT_SYMBOL vmlinux 0x5e514808 inode_nohighmem +EXPORT_SYMBOL vmlinux 0x5e5b76f8 __tracepoint_kmalloc_node +EXPORT_SYMBOL vmlinux 0x5e69e349 phy_ethtool_set_eee +EXPORT_SYMBOL vmlinux 0x5e70d332 mfd_cell_enable +EXPORT_SYMBOL vmlinux 0x5e803ba9 vfs_ioc_setflags_prepare +EXPORT_SYMBOL vmlinux 0x5e855e56 gen_pool_first_fit_align +EXPORT_SYMBOL vmlinux 0x5e95b1cd current_umask +EXPORT_SYMBOL vmlinux 0x5ea0a4c4 tcp_seq_stop +EXPORT_SYMBOL vmlinux 0x5ea91477 md_set_array_sectors +EXPORT_SYMBOL vmlinux 0x5eab4291 skb_copy_and_csum_bits +EXPORT_SYMBOL vmlinux 0x5eb1dfda tty_port_tty_set +EXPORT_SYMBOL vmlinux 0x5eb24829 dm_shift_arg +EXPORT_SYMBOL vmlinux 0x5ec4aee6 put_sg_io_hdr +EXPORT_SYMBOL vmlinux 0x5ed040b0 pm_set_vt_switch +EXPORT_SYMBOL vmlinux 0x5ed2969e string_escape_mem_ascii +EXPORT_SYMBOL vmlinux 0x5ed51b25 mdio_device_create +EXPORT_SYMBOL vmlinux 0x5ed90adc int_to_scsilun +EXPORT_SYMBOL vmlinux 0x5ee06f94 scsi_block_requests +EXPORT_SYMBOL vmlinux 0x5ee16721 flow_get_u32_src +EXPORT_SYMBOL vmlinux 0x5ef6a672 gen_pool_for_each_chunk +EXPORT_SYMBOL vmlinux 0x5efde8e6 proc_doulongvec_ms_jiffies_minmax +EXPORT_SYMBOL vmlinux 0x5f098b2a in6addr_interfacelocal_allrouters +EXPORT_SYMBOL vmlinux 0x5f0ddd0b generic_copy_file_range +EXPORT_SYMBOL vmlinux 0x5f206049 component_match_add_release +EXPORT_SYMBOL vmlinux 0x5f29ab22 flow_rule_match_ct +EXPORT_SYMBOL vmlinux 0x5f3cd0ca netdev_get_xmit_slave +EXPORT_SYMBOL vmlinux 0x5f3df73c sock_no_getsockopt +EXPORT_SYMBOL vmlinux 0x5f440d35 pci_bus_type +EXPORT_SYMBOL vmlinux 0x5f50a0f5 proc_create_single_data +EXPORT_SYMBOL vmlinux 0x5f56663b rdmsrl_on_cpu +EXPORT_SYMBOL vmlinux 0x5f772bc8 phy_attach +EXPORT_SYMBOL vmlinux 0x5f7ea89c dquot_writeback_dquots +EXPORT_SYMBOL vmlinux 0x5f93525c acpi_extract_package +EXPORT_SYMBOL vmlinux 0x5f9a7893 reuseport_detach_prog +EXPORT_SYMBOL vmlinux 0x5fa718a2 netif_rx +EXPORT_SYMBOL vmlinux 0x5fc62196 pnp_activate_dev +EXPORT_SYMBOL vmlinux 0x5fc70301 bio_integrity_alloc +EXPORT_SYMBOL vmlinux 0x5fc72f0e alloc_pages_exact +EXPORT_SYMBOL vmlinux 0x5fdaff66 acpi_bus_register_driver +EXPORT_SYMBOL vmlinux 0x5fef13b5 migrate_vma_pages +EXPORT_SYMBOL vmlinux 0x5ff6b5e3 __ip_queue_xmit +EXPORT_SYMBOL vmlinux 0x5ff9eb0e lockref_mark_dead +EXPORT_SYMBOL vmlinux 0x600206f2 skb_trim +EXPORT_SYMBOL vmlinux 0x6004858d LZ4_compress_fast +EXPORT_SYMBOL vmlinux 0x6005a39d path_nosuid +EXPORT_SYMBOL vmlinux 0x6005c351 zpool_has_pool +EXPORT_SYMBOL vmlinux 0x600683d3 do_unblank_screen +EXPORT_SYMBOL vmlinux 0x601496f4 revert_creds +EXPORT_SYMBOL vmlinux 0x6018c9ea __nla_reserve +EXPORT_SYMBOL vmlinux 0x601f665f dm_io_client_create +EXPORT_SYMBOL vmlinux 0x602e9bbe nvdimm_bus_unlock +EXPORT_SYMBOL vmlinux 0x602f3570 elevator_alloc +EXPORT_SYMBOL vmlinux 0x60351b98 __nla_validate +EXPORT_SYMBOL vmlinux 0x60352082 register_inet6addr_notifier +EXPORT_SYMBOL vmlinux 0x605790dc fiemap_fill_next_extent +EXPORT_SYMBOL vmlinux 0x6059ba4e pci_request_regions_exclusive +EXPORT_SYMBOL vmlinux 0x6082ff8d iter_file_splice_write +EXPORT_SYMBOL vmlinux 0x608741b5 __init_swait_queue_head +EXPORT_SYMBOL vmlinux 0x608da8ce pcie_capability_write_dword +EXPORT_SYMBOL vmlinux 0x608f8768 kset_register +EXPORT_SYMBOL vmlinux 0x6091b333 unregister_chrdev_region +EXPORT_SYMBOL vmlinux 0x609b2853 hdmi_infoframe_pack +EXPORT_SYMBOL vmlinux 0x609bcd98 in6_pton +EXPORT_SYMBOL vmlinux 0x609f1c7e synchronize_net +EXPORT_SYMBOL vmlinux 0x60a32ea9 pm_power_off +EXPORT_SYMBOL vmlinux 0x60b3071f neigh_proc_dointvec +EXPORT_SYMBOL vmlinux 0x60c2790d kmalloc_caches +EXPORT_SYMBOL vmlinux 0x60c8897a seg6_hmac_validate_skb +EXPORT_SYMBOL vmlinux 0x60ca3133 get_super_exclusive_thawed +EXPORT_SYMBOL vmlinux 0x60d8ab30 vme_lm_get +EXPORT_SYMBOL vmlinux 0x60dc50b2 request_firmware_nowait +EXPORT_SYMBOL vmlinux 0x6103bd3a __alloc_pages_nodemask +EXPORT_SYMBOL vmlinux 0x610ee105 dev_add_offload +EXPORT_SYMBOL vmlinux 0x6128b5fc __printk_ratelimit +EXPORT_SYMBOL vmlinux 0x614d8e9d pin_user_pages_unlocked +EXPORT_SYMBOL vmlinux 0x61577694 ZSTD_compressEnd +EXPORT_SYMBOL vmlinux 0x615911d7 __bitmap_set +EXPORT_SYMBOL vmlinux 0x6172e206 __scsi_iterate_devices +EXPORT_SYMBOL vmlinux 0x617c452b queued_read_lock_slowpath +EXPORT_SYMBOL vmlinux 0x6185b747 radix_tree_gang_lookup_tag +EXPORT_SYMBOL vmlinux 0x618911fc numa_node +EXPORT_SYMBOL vmlinux 0x619cb7dd simple_read_from_buffer +EXPORT_SYMBOL vmlinux 0x619dfcdc intel_scu_ipc_dev_readv +EXPORT_SYMBOL vmlinux 0x61a134b9 dma_resv_copy_fences +EXPORT_SYMBOL vmlinux 0x61a5c550 skb_get_hash_perturb +EXPORT_SYMBOL vmlinux 0x61b22e42 get_tz_trend +EXPORT_SYMBOL vmlinux 0x61b7b126 simple_strtoull +EXPORT_SYMBOL vmlinux 0x61d63c69 udp_ioctl +EXPORT_SYMBOL vmlinux 0x61e272c9 sha256_final +EXPORT_SYMBOL vmlinux 0x61ea189b fb_pad_aligned_buffer +EXPORT_SYMBOL vmlinux 0x61fca3c0 kernel_sendpage_locked +EXPORT_SYMBOL vmlinux 0x61fdae87 complete_request_key +EXPORT_SYMBOL vmlinux 0x6203f9ff pci_enable_wake +EXPORT_SYMBOL vmlinux 0x6207c2d0 jbd2_journal_free_reserved +EXPORT_SYMBOL vmlinux 0x620b4122 input_handler_for_each_handle +EXPORT_SYMBOL vmlinux 0x62139f4d vlan_ioctl_set +EXPORT_SYMBOL vmlinux 0x6214aef2 cpufreq_unregister_notifier +EXPORT_SYMBOL vmlinux 0x6228c21f smp_call_function_single +EXPORT_SYMBOL vmlinux 0x6264ebc7 __neigh_event_send +EXPORT_SYMBOL vmlinux 0x6271f8d5 kill_block_super +EXPORT_SYMBOL vmlinux 0x62737e1d sock_unregister +EXPORT_SYMBOL vmlinux 0x627a7477 __napi_schedule_irqoff +EXPORT_SYMBOL vmlinux 0x62849ac7 dev_valid_name +EXPORT_SYMBOL vmlinux 0x62890955 __tracepoint_spi_transfer_stop +EXPORT_SYMBOL vmlinux 0x628ea32c proc_create_seq_private +EXPORT_SYMBOL vmlinux 0x6297f6f0 input_set_poll_interval +EXPORT_SYMBOL vmlinux 0x629caaac vfs_iocb_iter_read +EXPORT_SYMBOL vmlinux 0x629e77fc nonseekable_open +EXPORT_SYMBOL vmlinux 0x62a213c2 __sk_mem_reclaim +EXPORT_SYMBOL vmlinux 0x62bf6edf utf8agemin +EXPORT_SYMBOL vmlinux 0x6305a8fd bdevname +EXPORT_SYMBOL vmlinux 0x63187451 pcie_aspm_support_enabled +EXPORT_SYMBOL vmlinux 0x631d06aa cpu_rmap_put +EXPORT_SYMBOL vmlinux 0x632bdfa3 ether_setup +EXPORT_SYMBOL vmlinux 0x632ee5d9 skb_ensure_writable +EXPORT_SYMBOL vmlinux 0x6340780d netdev_port_same_parent_id +EXPORT_SYMBOL vmlinux 0x635ff76d LZ4_saveDict +EXPORT_SYMBOL vmlinux 0x636257f7 get_ibs_caps +EXPORT_SYMBOL vmlinux 0x637d072e netif_device_attach +EXPORT_SYMBOL vmlinux 0x6380d836 dump_page +EXPORT_SYMBOL vmlinux 0x6382a465 dma_get_sgtable_attrs +EXPORT_SYMBOL vmlinux 0x63949ee3 __pskb_pull_tail +EXPORT_SYMBOL vmlinux 0x639f4c0f genlmsg_put +EXPORT_SYMBOL vmlinux 0x63a58370 flow_action_cookie_destroy +EXPORT_SYMBOL vmlinux 0x63a7c28c bitmap_find_free_region +EXPORT_SYMBOL vmlinux 0x63b6aef0 udp_sendmsg +EXPORT_SYMBOL vmlinux 0x63c4d61f __bitmap_weight +EXPORT_SYMBOL vmlinux 0x63d570fe load_nls_default +EXPORT_SYMBOL vmlinux 0x63d6dbd9 __tracepoint_kmem_cache_alloc_node +EXPORT_SYMBOL vmlinux 0x63dca336 dm_register_target +EXPORT_SYMBOL vmlinux 0x63eb9355 panic_blink +EXPORT_SYMBOL vmlinux 0x63f835ba on_each_cpu_cond_mask +EXPORT_SYMBOL vmlinux 0x63ff6505 ndo_dflt_fdb_add +EXPORT_SYMBOL vmlinux 0x6405dcd3 slhc_toss +EXPORT_SYMBOL vmlinux 0x64127b67 bitmap_find_next_zero_area_off +EXPORT_SYMBOL vmlinux 0x6420ffae vfs_mkdir +EXPORT_SYMBOL vmlinux 0x6427417f sg_miter_stop +EXPORT_SYMBOL vmlinux 0x643d9ba1 groups_free +EXPORT_SYMBOL vmlinux 0x6449187a pnp_unregister_driver +EXPORT_SYMBOL vmlinux 0x644d48d6 hdmi_infoframe_log +EXPORT_SYMBOL vmlinux 0x645b63fd xfrm_state_walk +EXPORT_SYMBOL vmlinux 0x645b85ab jbd2_journal_begin_ordered_truncate +EXPORT_SYMBOL vmlinux 0x646e8008 scsi_host_lookup +EXPORT_SYMBOL vmlinux 0x6472150c dump_align +EXPORT_SYMBOL vmlinux 0x6481ffe0 hsiphash_1u32 +EXPORT_SYMBOL vmlinux 0x648eb59d gc_inflight_list +EXPORT_SYMBOL vmlinux 0x64999478 congestion_wait +EXPORT_SYMBOL vmlinux 0x64a131a7 tcf_register_action +EXPORT_SYMBOL vmlinux 0x64a4ac3c pci_bus_write_config_word +EXPORT_SYMBOL vmlinux 0x64a6abb2 migrate_page +EXPORT_SYMBOL vmlinux 0x64a9c928 default_blu +EXPORT_SYMBOL vmlinux 0x64bbc288 string_unescape +EXPORT_SYMBOL vmlinux 0x64c991d9 scsi_rescan_device +EXPORT_SYMBOL vmlinux 0x650d5794 dquot_transfer +EXPORT_SYMBOL vmlinux 0x6513a3fa fb_get_color_depth +EXPORT_SYMBOL vmlinux 0x651a4139 test_taint +EXPORT_SYMBOL vmlinux 0x652032cb mac_pton +EXPORT_SYMBOL vmlinux 0x652ce9aa nla_memcmp +EXPORT_SYMBOL vmlinux 0x653ab67b __generic_file_write_iter +EXPORT_SYMBOL vmlinux 0x653e3e00 __devm_request_region +EXPORT_SYMBOL vmlinux 0x65408378 zlib_inflate_blob +EXPORT_SYMBOL vmlinux 0x65464c16 clkdev_drop +EXPORT_SYMBOL vmlinux 0x6551c054 reuseport_alloc +EXPORT_SYMBOL vmlinux 0x656c1a0e string_escape_mem +EXPORT_SYMBOL vmlinux 0x656e4a6e snprintf +EXPORT_SYMBOL vmlinux 0x658ce1a8 xxh64_reset +EXPORT_SYMBOL vmlinux 0x65960974 ip6_frag_init +EXPORT_SYMBOL vmlinux 0x659ded26 xfrm_flush_gc +EXPORT_SYMBOL vmlinux 0x65a799d6 pci_try_set_mwi +EXPORT_SYMBOL vmlinux 0x65ac305e audit_log_start +EXPORT_SYMBOL vmlinux 0x65af699a fs_param_is_fd +EXPORT_SYMBOL vmlinux 0x65c8798b import_iovec +EXPORT_SYMBOL vmlinux 0x65cf8831 ZSTD_decompress_usingDict +EXPORT_SYMBOL vmlinux 0x65d1bab2 acpi_bios_warning +EXPORT_SYMBOL vmlinux 0x65d9e877 cpufreq_register_notifier +EXPORT_SYMBOL vmlinux 0x65dccf13 xz_dec_end +EXPORT_SYMBOL vmlinux 0x65e0d6d7 memory_read_from_buffer +EXPORT_SYMBOL vmlinux 0x65e5404b fc_attach_transport +EXPORT_SYMBOL vmlinux 0x66015076 file_open_root +EXPORT_SYMBOL vmlinux 0x6626afca down +EXPORT_SYMBOL vmlinux 0x663182c9 acpi_get_gpe_status +EXPORT_SYMBOL vmlinux 0x664a3530 tcf_idr_cleanup +EXPORT_SYMBOL vmlinux 0x665aab32 xp_alloc +EXPORT_SYMBOL vmlinux 0x66628bf3 ip_tunnel_metadata_cnt +EXPORT_SYMBOL vmlinux 0x6673f96d xxh32_reset +EXPORT_SYMBOL vmlinux 0x668b19a1 down_read +EXPORT_SYMBOL vmlinux 0x668dee4c phy_modify_paged_changed +EXPORT_SYMBOL vmlinux 0x669ac687 rt6_lookup +EXPORT_SYMBOL vmlinux 0x66af1fd1 lockref_put_or_lock +EXPORT_SYMBOL vmlinux 0x66b4cc41 kmemdup +EXPORT_SYMBOL vmlinux 0x66c134ef fib_default_rule_add +EXPORT_SYMBOL vmlinux 0x66d29e23 nla_put_64bit +EXPORT_SYMBOL vmlinux 0x66d2ebec nla_reserve_64bit +EXPORT_SYMBOL vmlinux 0x66f35e9b devm_alloc_etherdev_mqs +EXPORT_SYMBOL vmlinux 0x66fdcda4 sock_gettstamp +EXPORT_SYMBOL vmlinux 0x66fe1d3d show_init_ipc_ns +EXPORT_SYMBOL vmlinux 0x67187f1f input_close_device +EXPORT_SYMBOL vmlinux 0x671ef855 dquot_disable +EXPORT_SYMBOL vmlinux 0x6729d3df __get_user_4 +EXPORT_SYMBOL vmlinux 0x673f815e agp_bridges +EXPORT_SYMBOL vmlinux 0x67421595 put_tty_driver +EXPORT_SYMBOL vmlinux 0x6749d53f hdmi_vendor_infoframe_init +EXPORT_SYMBOL vmlinux 0x674e8bd4 __frontswap_load +EXPORT_SYMBOL vmlinux 0x678b96ec dma_pool_alloc +EXPORT_SYMBOL vmlinux 0x67b27ec1 tty_std_termios +EXPORT_SYMBOL vmlinux 0x67b78eb3 seq_hlist_next_rcu +EXPORT_SYMBOL vmlinux 0x67c13ea0 acpi_read +EXPORT_SYMBOL vmlinux 0x681092a1 mr_dump +EXPORT_SYMBOL vmlinux 0x681197b5 sk_filter_trim_cap +EXPORT_SYMBOL vmlinux 0x6822ad89 sdev_prefix_printk +EXPORT_SYMBOL vmlinux 0x683a9560 __gnet_stats_copy_basic +EXPORT_SYMBOL vmlinux 0x68421639 unload_nls +EXPORT_SYMBOL vmlinux 0x68486e2b put_fs_context +EXPORT_SYMBOL vmlinux 0x6851664e wrmsrl_safe_on_cpu +EXPORT_SYMBOL vmlinux 0x685e31ca groups_sort +EXPORT_SYMBOL vmlinux 0x686b6fea dcb_setapp +EXPORT_SYMBOL vmlinux 0x687b6a16 kdbgetsymval +EXPORT_SYMBOL vmlinux 0x688cae6f sock_no_socketpair +EXPORT_SYMBOL vmlinux 0x68946f70 scsi_eh_finish_cmd +EXPORT_SYMBOL vmlinux 0x689c6c28 udp_flush_pending_frames +EXPORT_SYMBOL vmlinux 0x68a42fc8 tcp_connect +EXPORT_SYMBOL vmlinux 0x68a90b51 get_default_font +EXPORT_SYMBOL vmlinux 0x68ae89ca flow_rule_match_enc_ipv6_addrs +EXPORT_SYMBOL vmlinux 0x68c2ee39 vfs_dedupe_file_range +EXPORT_SYMBOL vmlinux 0x68c957d1 pcie_capability_write_word +EXPORT_SYMBOL vmlinux 0x68d6180a __tty_insert_flip_char +EXPORT_SYMBOL vmlinux 0x68facbfe dma_dummy_ops +EXPORT_SYMBOL vmlinux 0x69012eed flow_rule_match_ip +EXPORT_SYMBOL vmlinux 0x69049cd2 radix_tree_replace_slot +EXPORT_SYMBOL vmlinux 0x691a8414 bprm_change_interp +EXPORT_SYMBOL vmlinux 0x6920f157 __quota_error +EXPORT_SYMBOL vmlinux 0x6926fb16 flow_block_cb_decref +EXPORT_SYMBOL vmlinux 0x69351dc1 eth_platform_get_mac_address +EXPORT_SYMBOL vmlinux 0x69493b1a kstrtos16 +EXPORT_SYMBOL vmlinux 0x6956f036 input_mt_get_slot_by_key +EXPORT_SYMBOL vmlinux 0x69585523 __ksize +EXPORT_SYMBOL vmlinux 0x6961439f param_set_copystring +EXPORT_SYMBOL vmlinux 0x69668826 netdev_increment_features +EXPORT_SYMBOL vmlinux 0x6971447a rtc_month_days +EXPORT_SYMBOL vmlinux 0x697657b9 vfs_tmpfile +EXPORT_SYMBOL vmlinux 0x6980bc47 inet_gso_segment +EXPORT_SYMBOL vmlinux 0x6988d0ca cpu_dr7 +EXPORT_SYMBOL vmlinux 0x699a05c8 netdev_bind_sb_channel_queue +EXPORT_SYMBOL vmlinux 0x69a69814 security_unix_stream_connect +EXPORT_SYMBOL vmlinux 0x69acdf38 memcpy +EXPORT_SYMBOL vmlinux 0x69ad2f20 kstrtouint +EXPORT_SYMBOL vmlinux 0x69bc0305 dev_printk_emit +EXPORT_SYMBOL vmlinux 0x69c57824 unlock_page +EXPORT_SYMBOL vmlinux 0x69c86d07 padata_alloc_shell +EXPORT_SYMBOL vmlinux 0x69d7ff49 has_capability +EXPORT_SYMBOL vmlinux 0x69dd3b5b crc32_le +EXPORT_SYMBOL vmlinux 0x69de8757 vme_check_window +EXPORT_SYMBOL vmlinux 0x69e16a1a sock_no_sendpage_locked +EXPORT_SYMBOL vmlinux 0x69e975f0 devm_nvmem_cell_put +EXPORT_SYMBOL vmlinux 0x69ee03f0 xfrm_state_register_afinfo +EXPORT_SYMBOL vmlinux 0x6a03751f sgl_free_order +EXPORT_SYMBOL vmlinux 0x6a037cf1 mempool_kfree +EXPORT_SYMBOL vmlinux 0x6a0ecf48 vlan_dev_vlan_proto +EXPORT_SYMBOL vmlinux 0x6a261b78 irq_stat +EXPORT_SYMBOL vmlinux 0x6a449c4f register_sysctl_table +EXPORT_SYMBOL vmlinux 0x6a484602 user_path_create +EXPORT_SYMBOL vmlinux 0x6a4fa9c7 netif_rx_ni +EXPORT_SYMBOL vmlinux 0x6a5cb5ee __get_free_pages +EXPORT_SYMBOL vmlinux 0x6a5ecb18 unregister_module_notifier +EXPORT_SYMBOL vmlinux 0x6a5fa363 sigprocmask +EXPORT_SYMBOL vmlinux 0x6a625854 tcp_parse_options +EXPORT_SYMBOL vmlinux 0x6a6d4412 tcp_timewait_state_process +EXPORT_SYMBOL vmlinux 0x6a7b664e pcim_iomap_table +EXPORT_SYMBOL vmlinux 0x6a7e1f43 input_set_timestamp +EXPORT_SYMBOL vmlinux 0x6a8ab4db tty_port_lower_dtr_rts +EXPORT_SYMBOL vmlinux 0x6aa11aa6 sgl_free_n_order +EXPORT_SYMBOL vmlinux 0x6aa4fbe2 vga_switcheroo_register_audio_client +EXPORT_SYMBOL vmlinux 0x6ab487c4 blk_limits_io_opt +EXPORT_SYMBOL vmlinux 0x6ab4fa93 mini_qdisc_pair_init +EXPORT_SYMBOL vmlinux 0x6abf76db set_trace_device +EXPORT_SYMBOL vmlinux 0x6ac5b22a sock_edemux +EXPORT_SYMBOL vmlinux 0x6ad0fa68 jbd2_journal_restart +EXPORT_SYMBOL vmlinux 0x6add5c9a dmi_find_device +EXPORT_SYMBOL vmlinux 0x6aeefac4 zlib_deflateReset +EXPORT_SYMBOL vmlinux 0x6afd09e4 dm_table_get_md +EXPORT_SYMBOL vmlinux 0x6b0220d8 md_reap_sync_thread +EXPORT_SYMBOL vmlinux 0x6b13dc68 pci_enable_device +EXPORT_SYMBOL vmlinux 0x6b16c5bc unregister_fib_notifier +EXPORT_SYMBOL vmlinux 0x6b1d7a5c serio_reconnect +EXPORT_SYMBOL vmlinux 0x6b27729b radix_tree_gang_lookup +EXPORT_SYMBOL vmlinux 0x6b2dc060 dump_stack +EXPORT_SYMBOL vmlinux 0x6b3b2c67 blk_cleanup_queue +EXPORT_SYMBOL vmlinux 0x6b3c3dba md_bitmap_update_sb +EXPORT_SYMBOL vmlinux 0x6b3f7ec2 nosteal_pipe_buf_ops +EXPORT_SYMBOL vmlinux 0x6b55acd0 rtnl_lock_killable +EXPORT_SYMBOL vmlinux 0x6b597056 proto_unregister +EXPORT_SYMBOL vmlinux 0x6b640864 nla_strlcpy +EXPORT_SYMBOL vmlinux 0x6b7d7fdf neigh_seq_next +EXPORT_SYMBOL vmlinux 0x6b853d06 ns_to_kernel_old_timeval +EXPORT_SYMBOL vmlinux 0x6b8bf149 netif_receive_skb_list +EXPORT_SYMBOL vmlinux 0x6b94950d take_dentry_name_snapshot +EXPORT_SYMBOL vmlinux 0x6ba725b3 __mark_inode_dirty +EXPORT_SYMBOL vmlinux 0x6bc26261 fc_remote_port_add +EXPORT_SYMBOL vmlinux 0x6bc3fbc0 __unregister_chrdev +EXPORT_SYMBOL vmlinux 0x6bc7a3a9 inode_set_bytes +EXPORT_SYMBOL vmlinux 0x6bc7aa33 clk_bulk_get_all +EXPORT_SYMBOL vmlinux 0x6bd5c24d sync_dirty_buffer +EXPORT_SYMBOL vmlinux 0x6bdbbb3c md_bitmap_start_sync +EXPORT_SYMBOL vmlinux 0x6be1c1f8 acpi_install_method +EXPORT_SYMBOL vmlinux 0x6be36b2a blk_mq_tagset_wait_completed_request +EXPORT_SYMBOL vmlinux 0x6bf4772a pci_find_capability +EXPORT_SYMBOL vmlinux 0x6bfc9556 invalidate_bdev +EXPORT_SYMBOL vmlinux 0x6c224cda gen_pool_destroy +EXPORT_SYMBOL vmlinux 0x6c22a709 ata_port_printk +EXPORT_SYMBOL vmlinux 0x6c2313fb xsk_clear_tx_need_wakeup +EXPORT_SYMBOL vmlinux 0x6c257ac0 tty_termios_hw_change +EXPORT_SYMBOL vmlinux 0x6c28be5a vfio_info_add_capability +EXPORT_SYMBOL vmlinux 0x6c34fde1 __sock_cmsg_send +EXPORT_SYMBOL vmlinux 0x6c39a760 generic_read_dir +EXPORT_SYMBOL vmlinux 0x6c42a7df security_inet_conn_established +EXPORT_SYMBOL vmlinux 0x6c4a35e4 from_kuid +EXPORT_SYMBOL vmlinux 0x6c4fffa4 console_stop +EXPORT_SYMBOL vmlinux 0x6c513448 migrate_page_copy +EXPORT_SYMBOL vmlinux 0x6c5dae23 scsi_kmap_atomic_sg +EXPORT_SYMBOL vmlinux 0x6c61ce70 num_registered_fb +EXPORT_SYMBOL vmlinux 0x6c6c0e5d inet_sk_rx_dst_set +EXPORT_SYMBOL vmlinux 0x6c7abe3c pci_fixup_device +EXPORT_SYMBOL vmlinux 0x6c81c0b2 dev_get_phys_port_id +EXPORT_SYMBOL vmlinux 0x6c8d1c7d tcp_rcv_state_process +EXPORT_SYMBOL vmlinux 0x6c9105fc mdio_device_free +EXPORT_SYMBOL vmlinux 0x6ca31e49 __test_set_page_writeback +EXPORT_SYMBOL vmlinux 0x6cb09991 udp_prot +EXPORT_SYMBOL vmlinux 0x6cb46525 netlbl_catmap_walk +EXPORT_SYMBOL vmlinux 0x6cb4ffea vfs_iter_read +EXPORT_SYMBOL vmlinux 0x6cb59e4c key_payload_reserve +EXPORT_SYMBOL vmlinux 0x6ce7b212 ip6_route_me_harder +EXPORT_SYMBOL vmlinux 0x6cf2227e __tcp_md5_do_lookup +EXPORT_SYMBOL vmlinux 0x6cf62166 __tracepoint_kmem_cache_alloc +EXPORT_SYMBOL vmlinux 0x6d0ab661 genphy_aneg_done +EXPORT_SYMBOL vmlinux 0x6d199e40 serial8250_set_isa_configurator +EXPORT_SYMBOL vmlinux 0x6d1f8a8e nvmem_get_mac_address +EXPORT_SYMBOL vmlinux 0x6d213c32 iterate_supers_type +EXPORT_SYMBOL vmlinux 0x6d22c74f devm_clk_get_optional +EXPORT_SYMBOL vmlinux 0x6d294e43 clock_t_to_jiffies +EXPORT_SYMBOL vmlinux 0x6d334118 __get_user_8 +EXPORT_SYMBOL vmlinux 0x6d340f64 tty_termios_input_baud_rate +EXPORT_SYMBOL vmlinux 0x6d3d226c generic_pipe_buf_get +EXPORT_SYMBOL vmlinux 0x6d5005fc inet_release +EXPORT_SYMBOL vmlinux 0x6d58f69e agp3_generic_sizes +EXPORT_SYMBOL vmlinux 0x6d5a243e watchdog_unregister_governor +EXPORT_SYMBOL vmlinux 0x6d5f5b91 radix_tree_tagged +EXPORT_SYMBOL vmlinux 0x6d6292c0 register_md_personality +EXPORT_SYMBOL vmlinux 0x6d7abe02 first_ec +EXPORT_SYMBOL vmlinux 0x6d7c7dcc bitmap_cut +EXPORT_SYMBOL vmlinux 0x6da7af54 tty_wait_until_sent +EXPORT_SYMBOL vmlinux 0x6dc35b25 radix_tree_iter_delete +EXPORT_SYMBOL vmlinux 0x6dcf857f uuid_null +EXPORT_SYMBOL vmlinux 0x6dd17e7b acpi_get_table_header +EXPORT_SYMBOL vmlinux 0x6de67266 mark_buffer_dirty_inode +EXPORT_SYMBOL vmlinux 0x6df1aaf1 kernel_sigaction +EXPORT_SYMBOL vmlinux 0x6e019034 __tracepoint_module_get +EXPORT_SYMBOL vmlinux 0x6e10c227 seg6_hmac_info_add +EXPORT_SYMBOL vmlinux 0x6e174f22 simple_dentry_operations +EXPORT_SYMBOL vmlinux 0x6e286604 hdmi_drm_infoframe_pack +EXPORT_SYMBOL vmlinux 0x6e4664ba stream_open +EXPORT_SYMBOL vmlinux 0x6e4c107e devfreq_suspend_device +EXPORT_SYMBOL vmlinux 0x6e543138 mipi_dsi_driver_unregister +EXPORT_SYMBOL vmlinux 0x6e5b8651 xz_dec_run +EXPORT_SYMBOL vmlinux 0x6e648045 ip_sock_set_pktinfo +EXPORT_SYMBOL vmlinux 0x6e6493f3 eth_header +EXPORT_SYMBOL vmlinux 0x6e712ac4 neigh_event_ns +EXPORT_SYMBOL vmlinux 0x6e720ff2 rtnl_unlock +EXPORT_SYMBOL vmlinux 0x6e7ab26b page_pool_destroy +EXPORT_SYMBOL vmlinux 0x6e886177 km_report +EXPORT_SYMBOL vmlinux 0x6e8ec73d __register_chrdev +EXPORT_SYMBOL vmlinux 0x6e9dd606 __symbol_put +EXPORT_SYMBOL vmlinux 0x6ea7575d acpi_dispatch_gpe +EXPORT_SYMBOL vmlinux 0x6ea9363b force_sig +EXPORT_SYMBOL vmlinux 0x6ec0cfd1 dev_add_pack +EXPORT_SYMBOL vmlinux 0x6ec0fa3e call_fib_notifier +EXPORT_SYMBOL vmlinux 0x6ed3e630 param_ops_ullong +EXPORT_SYMBOL vmlinux 0x6ed8a5fc hdmi_drm_infoframe_check +EXPORT_SYMBOL vmlinux 0x6edf617e arp_create +EXPORT_SYMBOL vmlinux 0x6f2eeaee dquot_commit +EXPORT_SYMBOL vmlinux 0x6f2f3a40 netdev_crit +EXPORT_SYMBOL vmlinux 0x6f3056ae dst_dev_put +EXPORT_SYMBOL vmlinux 0x6f41a428 acpi_get_vendor_resource +EXPORT_SYMBOL vmlinux 0x6f7d67c2 inode_get_bytes +EXPORT_SYMBOL vmlinux 0x6f8331e3 udp_seq_next +EXPORT_SYMBOL vmlinux 0x6f8f674a bpf_dispatcher_xdp_func +EXPORT_SYMBOL vmlinux 0x6f915a45 dqstats +EXPORT_SYMBOL vmlinux 0x6f9630f3 input_setup_polling +EXPORT_SYMBOL vmlinux 0x6fac0c74 jbd2_journal_lock_updates +EXPORT_SYMBOL vmlinux 0x6fb49676 queue_rcu_work +EXPORT_SYMBOL vmlinux 0x6fbc6a00 radix_tree_insert +EXPORT_SYMBOL vmlinux 0x6fcb87a1 touch_softlockup_watchdog +EXPORT_SYMBOL vmlinux 0x6fd8c058 vm_insert_page +EXPORT_SYMBOL vmlinux 0x6fd9c35a __clzdi2 +EXPORT_SYMBOL vmlinux 0x6fee1bbb ip_tunnel_parse_protocol +EXPORT_SYMBOL vmlinux 0x6ff2dc89 bdi_alloc +EXPORT_SYMBOL vmlinux 0x70002fe8 siphash_1u32 +EXPORT_SYMBOL vmlinux 0x7006a877 proc_remove +EXPORT_SYMBOL vmlinux 0x701e2b2a dma_set_mask +EXPORT_SYMBOL vmlinux 0x7021fe86 dcb_getapp +EXPORT_SYMBOL vmlinux 0x7023bea8 unregister_acpi_notifier +EXPORT_SYMBOL vmlinux 0x702946da ucs2_strlen +EXPORT_SYMBOL vmlinux 0x7040fff9 rtc_lock +EXPORT_SYMBOL vmlinux 0x704dbce4 pagecache_write_begin +EXPORT_SYMBOL vmlinux 0x7054a3e4 request_dma +EXPORT_SYMBOL vmlinux 0x7071a4f2 cmdline_parts_free +EXPORT_SYMBOL vmlinux 0x70774320 vme_dma_list_free +EXPORT_SYMBOL vmlinux 0x7090f4c5 pcim_set_mwi +EXPORT_SYMBOL vmlinux 0x7094c615 netdev_warn +EXPORT_SYMBOL vmlinux 0x709a188c dma_direct_map_sg +EXPORT_SYMBOL vmlinux 0x709c46a3 simple_get_link +EXPORT_SYMBOL vmlinux 0x70a827f4 __cleancache_put_page +EXPORT_SYMBOL vmlinux 0x70aaf68e tcp_enter_quickack_mode +EXPORT_SYMBOL vmlinux 0x70ad75fb radix_tree_lookup +EXPORT_SYMBOL vmlinux 0x70c0627a __skb_try_recv_datagram +EXPORT_SYMBOL vmlinux 0x70c16015 disk_stack_limits +EXPORT_SYMBOL vmlinux 0x70d01651 key_instantiate_and_link +EXPORT_SYMBOL vmlinux 0x70d2efa6 vmf_insert_pfn_prot +EXPORT_SYMBOL vmlinux 0x70ec0e7e tc_cleanup_flow_action +EXPORT_SYMBOL vmlinux 0x70ecb785 open_with_fake_path +EXPORT_SYMBOL vmlinux 0x70eeeccf neigh_xmit +EXPORT_SYMBOL vmlinux 0x70f6bd1a from_kgid +EXPORT_SYMBOL vmlinux 0x70f88e77 genphy_read_status_fixed +EXPORT_SYMBOL vmlinux 0x7129e5f8 hex_asc +EXPORT_SYMBOL vmlinux 0x713cc026 pci_set_power_state +EXPORT_SYMBOL vmlinux 0x714ba6b7 __dynamic_ibdev_dbg +EXPORT_SYMBOL vmlinux 0x715154db __ps2_command +EXPORT_SYMBOL vmlinux 0x7155e795 pci_free_host_bridge +EXPORT_SYMBOL vmlinux 0x7158a73a __dev_direct_xmit +EXPORT_SYMBOL vmlinux 0x715c2d4e pcie_bandwidth_available +EXPORT_SYMBOL vmlinux 0x715d5ed3 dev_uc_flush +EXPORT_SYMBOL vmlinux 0x7165042d single_open +EXPORT_SYMBOL vmlinux 0x716780e1 mem_cgroup_from_task +EXPORT_SYMBOL vmlinux 0x7171121c overflowgid +EXPORT_SYMBOL vmlinux 0x717cce92 phy_device_free +EXPORT_SYMBOL vmlinux 0x718dbec9 rps_may_expire_flow +EXPORT_SYMBOL vmlinux 0x719e4526 pcie_port_service_register +EXPORT_SYMBOL vmlinux 0x71a50dbc register_blkdev +EXPORT_SYMBOL vmlinux 0x71a672ef dmam_pool_destroy +EXPORT_SYMBOL vmlinux 0x71aa466f filemap_fdatawait_range +EXPORT_SYMBOL vmlinux 0x71c3c629 sock_bind_add +EXPORT_SYMBOL vmlinux 0x71c5a5b9 devm_nvmem_unregister +EXPORT_SYMBOL vmlinux 0x71d1eb64 block_read_full_page +EXPORT_SYMBOL vmlinux 0x71d61f01 blk_queue_io_opt +EXPORT_SYMBOL vmlinux 0x71e9c894 d_instantiate +EXPORT_SYMBOL vmlinux 0x71edd601 pci_enable_msix_range +EXPORT_SYMBOL vmlinux 0x72006be9 ata_dev_printk +EXPORT_SYMBOL vmlinux 0x7219f76d dentry_open +EXPORT_SYMBOL vmlinux 0x724876f6 xfrm_policy_bysel_ctx +EXPORT_SYMBOL vmlinux 0x724ddac7 utf8version_is_supported +EXPORT_SYMBOL vmlinux 0x724df696 splice_direct_to_actor +EXPORT_SYMBOL vmlinux 0x726bc3c7 wait_for_completion_killable_timeout +EXPORT_SYMBOL vmlinux 0x727212c7 vme_slot_num +EXPORT_SYMBOL vmlinux 0x727c210d dquot_free_inode +EXPORT_SYMBOL vmlinux 0x7294e461 udplite_prot +EXPORT_SYMBOL vmlinux 0x72a89d5a fb_is_primary_device +EXPORT_SYMBOL vmlinux 0x72a98fdb copy_user_generic_unrolled +EXPORT_SYMBOL vmlinux 0x72b243d4 free_dma +EXPORT_SYMBOL vmlinux 0x72b347cc pci_ep_cfs_remove_epf_group +EXPORT_SYMBOL vmlinux 0x72b9d287 default_grn +EXPORT_SYMBOL vmlinux 0x72c90dbf phy_reset_after_clk_enable +EXPORT_SYMBOL vmlinux 0x72d1e930 tty_register_driver +EXPORT_SYMBOL vmlinux 0x72d29a16 __get_hash_from_flowi6 +EXPORT_SYMBOL vmlinux 0x72d79d83 pgdir_shift +EXPORT_SYMBOL vmlinux 0x72d7ec02 vfs_create_mount +EXPORT_SYMBOL vmlinux 0x72e4aa42 blk_alloc_queue +EXPORT_SYMBOL vmlinux 0x72e94a6c md_integrity_add_rdev +EXPORT_SYMBOL vmlinux 0x72ea7b2d scsi_device_type +EXPORT_SYMBOL vmlinux 0x731c4a9c dma_fence_signal +EXPORT_SYMBOL vmlinux 0x731ed5c1 __sg_alloc_table_from_pages +EXPORT_SYMBOL vmlinux 0x731fba5b mdio_driver_unregister +EXPORT_SYMBOL vmlinux 0x735a0bd5 native_io_delay +EXPORT_SYMBOL vmlinux 0x735e6a81 acpi_evaluate_integer +EXPORT_SYMBOL vmlinux 0x7366c2b1 sock_common_getsockopt +EXPORT_SYMBOL vmlinux 0x736b5662 _raw_read_lock_irqsave +EXPORT_SYMBOL vmlinux 0x736b720c phy_print_status +EXPORT_SYMBOL vmlinux 0x7378ebd8 no_seek_end_llseek_size +EXPORT_SYMBOL vmlinux 0x7380dffa argv_split +EXPORT_SYMBOL vmlinux 0x7397d63f mntget +EXPORT_SYMBOL vmlinux 0x73abb180 alloc_contig_range +EXPORT_SYMBOL vmlinux 0x73d9a5fb ip6_find_1stfragopt +EXPORT_SYMBOL vmlinux 0x73dd54eb irq_fpu_usable +EXPORT_SYMBOL vmlinux 0x73f1b98d keyring_clear +EXPORT_SYMBOL vmlinux 0x73fd19c5 con_is_visible +EXPORT_SYMBOL vmlinux 0x74087400 jbd2_journal_destroy +EXPORT_SYMBOL vmlinux 0x740a1b95 reserve_evntsel_nmi +EXPORT_SYMBOL vmlinux 0x7410aba2 strreplace +EXPORT_SYMBOL vmlinux 0x7412ed5b kvfree_sensitive +EXPORT_SYMBOL vmlinux 0x7413793a EISA_bus +EXPORT_SYMBOL vmlinux 0x741e126d skb_dequeue +EXPORT_SYMBOL vmlinux 0x742578a5 wait_for_random_bytes +EXPORT_SYMBOL vmlinux 0x742bbefe scsi_report_device_reset +EXPORT_SYMBOL vmlinux 0x7453d3e8 security_release_secctx +EXPORT_SYMBOL vmlinux 0x74665dbb put_cmsg_scm_timestamping +EXPORT_SYMBOL vmlinux 0x74725e69 ZSTD_compressContinue +EXPORT_SYMBOL vmlinux 0x74754435 acpi_bus_generate_netlink_event +EXPORT_SYMBOL vmlinux 0x74831d9f get_mem_cgroup_from_mm +EXPORT_SYMBOL vmlinux 0x74884922 get_mm_exe_file +EXPORT_SYMBOL vmlinux 0x749849d8 LZ4_loadDict +EXPORT_SYMBOL vmlinux 0x7499c7df add_watch_to_object +EXPORT_SYMBOL vmlinux 0x7499e278 vme_dma_list_exec +EXPORT_SYMBOL vmlinux 0x749e17ff try_to_release_page +EXPORT_SYMBOL vmlinux 0x74a5fc2d netpoll_poll_disable +EXPORT_SYMBOL vmlinux 0x74c134b9 __sw_hweight32 +EXPORT_SYMBOL vmlinux 0x74d2161a __inode_sub_bytes +EXPORT_SYMBOL vmlinux 0x74e5ff1a udpv6_encap_enable +EXPORT_SYMBOL vmlinux 0x75068cdf xfrm_state_unregister_afinfo +EXPORT_SYMBOL vmlinux 0x7507cc24 scsi_device_lookup_by_target +EXPORT_SYMBOL vmlinux 0x750a7b71 config_item_set_name +EXPORT_SYMBOL vmlinux 0x753603ce acpi_device_hid +EXPORT_SYMBOL vmlinux 0x7538a316 fb_class +EXPORT_SYMBOL vmlinux 0x7538b132 agp_off +EXPORT_SYMBOL vmlinux 0x754d539c strlen +EXPORT_SYMBOL vmlinux 0x75533484 phy_free_interrupt +EXPORT_SYMBOL vmlinux 0x755c8b77 mount_bdev +EXPORT_SYMBOL vmlinux 0x75627792 load_nls +EXPORT_SYMBOL vmlinux 0x756f6bf3 clean_bdev_aliases +EXPORT_SYMBOL vmlinux 0x75858d92 skb_csum_hwoffload_help +EXPORT_SYMBOL vmlinux 0x75871f5e acpi_get_next_object +EXPORT_SYMBOL vmlinux 0x7591f514 security_binder_set_context_mgr +EXPORT_SYMBOL vmlinux 0x75943e25 i8253_lock +EXPORT_SYMBOL vmlinux 0x75a1f601 skb_clone +EXPORT_SYMBOL vmlinux 0x75b20be4 dquot_commit_info +EXPORT_SYMBOL vmlinux 0x75bda77a seq_hlist_next +EXPORT_SYMBOL vmlinux 0x75cc2e3f vfs_statfs +EXPORT_SYMBOL vmlinux 0x75cc6f5e seg6_hmac_info_lookup +EXPORT_SYMBOL vmlinux 0x75d0deb9 nsecs_to_jiffies64 +EXPORT_SYMBOL vmlinux 0x75d499dd vmcore_add_device_dump +EXPORT_SYMBOL vmlinux 0x75f5c67a acpi_notifier_call_chain +EXPORT_SYMBOL vmlinux 0x75ff2927 sock_set_rcvbuf +EXPORT_SYMBOL vmlinux 0x7601c51a pci_reenable_device +EXPORT_SYMBOL vmlinux 0x760a0f4f yield +EXPORT_SYMBOL vmlinux 0x760d154f should_remove_suid +EXPORT_SYMBOL vmlinux 0x76175581 xfrm_policy_byid +EXPORT_SYMBOL vmlinux 0x761aa9d2 vlan_vids_add_by_dev +EXPORT_SYMBOL vmlinux 0x7624249e dim_park_tired +EXPORT_SYMBOL vmlinux 0x7626c4b0 inode_sub_bytes +EXPORT_SYMBOL vmlinux 0x7627bbd7 __dev_kfree_skb_irq +EXPORT_SYMBOL vmlinux 0x76323e1e vmf_insert_mixed_prot +EXPORT_SYMBOL vmlinux 0x763a9e6c input_alloc_absinfo +EXPORT_SYMBOL vmlinux 0x763ba3ad ioread64be_hi_lo +EXPORT_SYMBOL vmlinux 0x763be656 dma_resv_add_excl_fence +EXPORT_SYMBOL vmlinux 0x7647726c handle_sysrq +EXPORT_SYMBOL vmlinux 0x765d8ae6 setattr_copy +EXPORT_SYMBOL vmlinux 0x765ff474 crc_t10dif_generic +EXPORT_SYMBOL vmlinux 0x766a0927 mempool_alloc_pages +EXPORT_SYMBOL vmlinux 0x76777dd8 netdev_lower_dev_get_private +EXPORT_SYMBOL vmlinux 0x767dce4b acpi_disable_all_gpes +EXPORT_SYMBOL vmlinux 0x767ddb02 set_memory_wc +EXPORT_SYMBOL vmlinux 0x76865c50 kernel_param_unlock +EXPORT_SYMBOL vmlinux 0x768a6097 kernel_sendmsg +EXPORT_SYMBOL vmlinux 0x769f6e64 errseq_check +EXPORT_SYMBOL vmlinux 0x76a2e868 tcf_idr_search +EXPORT_SYMBOL vmlinux 0x76ba6306 ip_do_fragment +EXPORT_SYMBOL vmlinux 0x76c379d6 bio_uninit +EXPORT_SYMBOL vmlinux 0x76d0f8d9 rawv6_mh_filter_unregister +EXPORT_SYMBOL vmlinux 0x76d3cd60 laptop_mode +EXPORT_SYMBOL vmlinux 0x76d451c4 add_taint +EXPORT_SYMBOL vmlinux 0x76d57d45 tcf_exts_num_actions +EXPORT_SYMBOL vmlinux 0x76fb08a7 amd_iommu_unregister_ppr_notifier +EXPORT_SYMBOL vmlinux 0x770b06ce dma_async_tx_descriptor_init +EXPORT_SYMBOL vmlinux 0x770b2360 crypto_sha256_finup +EXPORT_SYMBOL vmlinux 0x7727c023 posix_acl_update_mode +EXPORT_SYMBOL vmlinux 0x772ff09c __seq_open_private +EXPORT_SYMBOL vmlinux 0x7732159c free_irq_cpu_rmap +EXPORT_SYMBOL vmlinux 0x77358855 iomem_resource +EXPORT_SYMBOL vmlinux 0x77369f58 reuseport_detach_sock +EXPORT_SYMBOL vmlinux 0x773fa409 __kfifo_dma_in_finish_r +EXPORT_SYMBOL vmlinux 0x77456e0a acpi_root_dir +EXPORT_SYMBOL vmlinux 0x7749ad6f agp_copy_info +EXPORT_SYMBOL vmlinux 0x775259b9 mipi_dsi_dcs_get_pixel_format +EXPORT_SYMBOL vmlinux 0x77629dab mdio_find_bus +EXPORT_SYMBOL vmlinux 0x77798207 sock_set_reuseport +EXPORT_SYMBOL vmlinux 0x7784d9be __sk_dst_check +EXPORT_SYMBOL vmlinux 0x779a18af kstrtoll +EXPORT_SYMBOL vmlinux 0x77b0fed9 __next_node_in +EXPORT_SYMBOL vmlinux 0x77b81087 ip_options_rcv_srr +EXPORT_SYMBOL vmlinux 0x77baaa6f generic_cont_expand_simple +EXPORT_SYMBOL vmlinux 0x77bc13a0 strim +EXPORT_SYMBOL vmlinux 0x77cf878b locks_lock_inode_wait +EXPORT_SYMBOL vmlinux 0x77de82fb __dst_destroy_metrics_generic +EXPORT_SYMBOL vmlinux 0x77e9eb37 aes_encrypt +EXPORT_SYMBOL vmlinux 0x77f9b543 devm_pci_remap_cfgspace +EXPORT_SYMBOL vmlinux 0x7807f0f8 schedule_timeout_idle +EXPORT_SYMBOL vmlinux 0x780fdfd1 intel_enable_gtt +EXPORT_SYMBOL vmlinux 0x78132857 genphy_resume +EXPORT_SYMBOL vmlinux 0x781d9b06 seg6_push_hmac +EXPORT_SYMBOL vmlinux 0x7834defd vfio_group_unpin_pages +EXPORT_SYMBOL vmlinux 0x783b2dcf skb_realloc_headroom +EXPORT_SYMBOL vmlinux 0x783c0ea5 netdev_set_tc_queue +EXPORT_SYMBOL vmlinux 0x783df0ac proc_set_user +EXPORT_SYMBOL vmlinux 0x7846af3e __kfifo_len_r +EXPORT_SYMBOL vmlinux 0x7880c781 dm_kcopyd_prepare_callback +EXPORT_SYMBOL vmlinux 0x788f8e09 can_nice +EXPORT_SYMBOL vmlinux 0x7891f1fc pcim_enable_device +EXPORT_SYMBOL vmlinux 0x789affb1 frontswap_tmem_exclusive_gets +EXPORT_SYMBOL vmlinux 0x78a16f48 aes_decrypt +EXPORT_SYMBOL vmlinux 0x78c151d0 kmem_cache_create_usercopy +EXPORT_SYMBOL vmlinux 0x78df6bd7 no_pci_devices +EXPORT_SYMBOL vmlinux 0x78e4660a elv_rb_find +EXPORT_SYMBOL vmlinux 0x78f11950 skb_copy +EXPORT_SYMBOL vmlinux 0x78f1b9c9 phy_modify_paged +EXPORT_SYMBOL vmlinux 0x78f99c24 dm_put_table_device +EXPORT_SYMBOL vmlinux 0x7900991d key_revoke +EXPORT_SYMBOL vmlinux 0x791efb33 tcp_init_sock +EXPORT_SYMBOL vmlinux 0x792296c7 simple_link +EXPORT_SYMBOL vmlinux 0x7933af75 account_page_redirty +EXPORT_SYMBOL vmlinux 0x79739c3c utf8nagemin +EXPORT_SYMBOL vmlinux 0x79756284 seq_hex_dump +EXPORT_SYMBOL vmlinux 0x797ebe1d mipi_dsi_dcs_soft_reset +EXPORT_SYMBOL vmlinux 0x7984eefc key_update +EXPORT_SYMBOL vmlinux 0x79972aca pnp_disable_dev +EXPORT_SYMBOL vmlinux 0x799c5c0e input_mt_init_slots +EXPORT_SYMBOL vmlinux 0x79a33f85 vme_get_size +EXPORT_SYMBOL vmlinux 0x79a8952a xfrm_state_lookup_byspi +EXPORT_SYMBOL vmlinux 0x79aa04a2 get_random_bytes +EXPORT_SYMBOL vmlinux 0x79beac24 rtnl_notify +EXPORT_SYMBOL vmlinux 0x79c92d5e set_groups +EXPORT_SYMBOL vmlinux 0x79d2fa00 jbd2_journal_get_write_access +EXPORT_SYMBOL vmlinux 0x79de5923 nvdimm_bus_lock +EXPORT_SYMBOL vmlinux 0x79df9633 ioremap_encrypted +EXPORT_SYMBOL vmlinux 0x7a005aa3 nf_hook_slow +EXPORT_SYMBOL vmlinux 0x7a09a064 seg6_hmac_compute +EXPORT_SYMBOL vmlinux 0x7a09d74d tty_hangup +EXPORT_SYMBOL vmlinux 0x7a0da07e netdev_bonding_info_change +EXPORT_SYMBOL vmlinux 0x7a1bcd59 gf128mul_x8_ble +EXPORT_SYMBOL vmlinux 0x7a244dc9 xfrm_input_register_afinfo +EXPORT_SYMBOL vmlinux 0x7a2af7b4 cpu_number +EXPORT_SYMBOL vmlinux 0x7a3eb97a rtnl_set_sk_err +EXPORT_SYMBOL vmlinux 0x7a4497db kzfree +EXPORT_SYMBOL vmlinux 0x7a540cb2 nf_register_net_hooks +EXPORT_SYMBOL vmlinux 0x7a588e4e nobh_truncate_page +EXPORT_SYMBOL vmlinux 0x7a7b7ea2 bio_chain +EXPORT_SYMBOL vmlinux 0x7a88da87 iosf_mbi_write +EXPORT_SYMBOL vmlinux 0x7a8b7530 tcp_md5_do_add +EXPORT_SYMBOL vmlinux 0x7a95e5ae do_settimeofday64 +EXPORT_SYMBOL vmlinux 0x7a9b37e8 blk_start_plug +EXPORT_SYMBOL vmlinux 0x7a9f34b1 ppp_unregister_channel +EXPORT_SYMBOL vmlinux 0x7aa1756e kvfree +EXPORT_SYMBOL vmlinux 0x7ab88a45 system_freezing_cnt +EXPORT_SYMBOL vmlinux 0x7acd1ccb sock_no_recvmsg +EXPORT_SYMBOL vmlinux 0x7ad050b9 qid_lt +EXPORT_SYMBOL vmlinux 0x7ad084d4 param_set_ushort +EXPORT_SYMBOL vmlinux 0x7ad7db06 del_gendisk +EXPORT_SYMBOL vmlinux 0x7adc0fbf rb_replace_node_rcu +EXPORT_SYMBOL vmlinux 0x7ae6c917 inet_frag_pull_head +EXPORT_SYMBOL vmlinux 0x7aec9089 clear_user +EXPORT_SYMBOL vmlinux 0x7aef5713 vmbus_recvpacket +EXPORT_SYMBOL vmlinux 0x7af0aab1 tty_port_raise_dtr_rts +EXPORT_SYMBOL vmlinux 0x7af504bd ip_sock_set_recverr +EXPORT_SYMBOL vmlinux 0x7aff77a3 __cpu_present_mask +EXPORT_SYMBOL vmlinux 0x7b0192da kstrtou16 +EXPORT_SYMBOL vmlinux 0x7b0306a4 scsi_compat_ioctl +EXPORT_SYMBOL vmlinux 0x7b039743 ip_mc_join_group +EXPORT_SYMBOL vmlinux 0x7b0d1715 devm_devfreq_remove_device +EXPORT_SYMBOL vmlinux 0x7b1bf767 ipv6_chk_custom_prefix +EXPORT_SYMBOL vmlinux 0x7b278877 pci_ep_cfs_add_epf_group +EXPORT_SYMBOL vmlinux 0x7b3c3767 dev_uc_sync_multiple +EXPORT_SYMBOL vmlinux 0x7b4da6ff __init_rwsem +EXPORT_SYMBOL vmlinux 0x7b50637c tcp_v4_connect +EXPORT_SYMBOL vmlinux 0x7b55bb9d generic_ro_fops +EXPORT_SYMBOL vmlinux 0x7b5b8f31 sha256_update +EXPORT_SYMBOL vmlinux 0x7b75617c PageMovable +EXPORT_SYMBOL vmlinux 0x7b82b9a1 idr_replace +EXPORT_SYMBOL vmlinux 0x7b947e3e inet6_offloads +EXPORT_SYMBOL vmlinux 0x7bb50b88 acpi_write +EXPORT_SYMBOL vmlinux 0x7bb8a7ce posix_acl_from_xattr +EXPORT_SYMBOL vmlinux 0x7bbccd05 nr_node_ids +EXPORT_SYMBOL vmlinux 0x7bc18dac sk_reset_timer +EXPORT_SYMBOL vmlinux 0x7bd8b726 key_put +EXPORT_SYMBOL vmlinux 0x7bde156b pci_read_vpd +EXPORT_SYMBOL vmlinux 0x7bed23d7 ns_capable +EXPORT_SYMBOL vmlinux 0x7bfc16db pps_event +EXPORT_SYMBOL vmlinux 0x7c0beae4 pm_vt_switch_unregister +EXPORT_SYMBOL vmlinux 0x7c16f057 seq_vprintf +EXPORT_SYMBOL vmlinux 0x7c173634 __bitmap_complement +EXPORT_SYMBOL vmlinux 0x7c17d434 netlbl_calipso_ops_register +EXPORT_SYMBOL vmlinux 0x7c46233a cpufreq_quick_get +EXPORT_SYMBOL vmlinux 0x7c511ce1 from_kgid_munged +EXPORT_SYMBOL vmlinux 0x7c55503d of_find_mipi_dsi_host_by_node +EXPORT_SYMBOL vmlinux 0x7c5a51aa __scsi_device_lookup_by_target +EXPORT_SYMBOL vmlinux 0x7c684872 devfreq_monitor_resume +EXPORT_SYMBOL vmlinux 0x7c6a0d28 shrink_dcache_parent +EXPORT_SYMBOL vmlinux 0x7c6fbe91 security_task_getsecid +EXPORT_SYMBOL vmlinux 0x7c829a77 unix_attach_fds +EXPORT_SYMBOL vmlinux 0x7c845d54 __skb_flow_get_ports +EXPORT_SYMBOL vmlinux 0x7c8df870 blk_queue_max_write_zeroes_sectors +EXPORT_SYMBOL vmlinux 0x7c9ca58f __sg_page_iter_next +EXPORT_SYMBOL vmlinux 0x7cb1aea1 devlink_dpipe_header_ethernet +EXPORT_SYMBOL vmlinux 0x7cca5f60 napi_gro_flush +EXPORT_SYMBOL vmlinux 0x7cd8d75e page_offset_base +EXPORT_SYMBOL vmlinux 0x7ce18c9f from_kqid +EXPORT_SYMBOL vmlinux 0x7ce1bf38 sock_release +EXPORT_SYMBOL vmlinux 0x7cf35220 vme_master_free +EXPORT_SYMBOL vmlinux 0x7cfe368d net_dim_get_def_tx_moderation +EXPORT_SYMBOL vmlinux 0x7d020361 disk_start_io_acct +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 0x7d3d7353 dev_addr_add +EXPORT_SYMBOL vmlinux 0x7d45ec21 mdio_driver_register +EXPORT_SYMBOL vmlinux 0x7d4b176a netlbl_catmap_setbit +EXPORT_SYMBOL vmlinux 0x7d526063 ip6_fraglist_init +EXPORT_SYMBOL vmlinux 0x7d52bd2d mdiobus_scan +EXPORT_SYMBOL vmlinux 0x7d5e1008 __crc32c_le_shift +EXPORT_SYMBOL vmlinux 0x7d628444 memcpy_fromio +EXPORT_SYMBOL vmlinux 0x7d708d89 unlock_two_nondirectories +EXPORT_SYMBOL vmlinux 0x7d83d49a bioset_init_from_src +EXPORT_SYMBOL vmlinux 0x7d880aed nf_log_set +EXPORT_SYMBOL vmlinux 0x7d9a6f05 mipi_dsi_attach +EXPORT_SYMBOL vmlinux 0x7da10152 netdev_next_lower_dev_rcu +EXPORT_SYMBOL vmlinux 0x7daece67 quota_send_warning +EXPORT_SYMBOL vmlinux 0x7dd554fc unregister_kmmio_probe +EXPORT_SYMBOL vmlinux 0x7dd7815f dquot_get_state +EXPORT_SYMBOL vmlinux 0x7de0ed1a fs_bio_set +EXPORT_SYMBOL vmlinux 0x7deff673 dm_consume_args +EXPORT_SYMBOL vmlinux 0x7dff0780 security_sctp_assoc_request +EXPORT_SYMBOL vmlinux 0x7e0826e2 atomic_dec_and_mutex_lock +EXPORT_SYMBOL vmlinux 0x7e106b3d kernel_param_lock +EXPORT_SYMBOL vmlinux 0x7e11514c rfkill_alloc +EXPORT_SYMBOL vmlinux 0x7e261af0 vfs_fadvise +EXPORT_SYMBOL vmlinux 0x7e3191f6 try_to_del_timer_sync +EXPORT_SYMBOL vmlinux 0x7e526bfa __x86_indirect_thunk_r10 +EXPORT_SYMBOL vmlinux 0x7e5ccd01 try_to_free_buffers +EXPORT_SYMBOL vmlinux 0x7e7aed1f inet_csk_init_xmit_timers +EXPORT_SYMBOL vmlinux 0x7e7bcf26 acpi_map_cpu +EXPORT_SYMBOL vmlinux 0x7eb2c868 sync_file_create +EXPORT_SYMBOL vmlinux 0x7ec78bdd rename_lock +EXPORT_SYMBOL vmlinux 0x7ee39c59 generic_file_direct_write +EXPORT_SYMBOL vmlinux 0x7ee4e86a generic_file_splice_read +EXPORT_SYMBOL vmlinux 0x7f02188f __msecs_to_jiffies +EXPORT_SYMBOL vmlinux 0x7f03b6a9 crc_ccitt_table +EXPORT_SYMBOL vmlinux 0x7f105d4c inet6_add_offload +EXPORT_SYMBOL vmlinux 0x7f18c71d fc_host_post_vendor_event +EXPORT_SYMBOL vmlinux 0x7f1db839 tcf_exts_terse_dump +EXPORT_SYMBOL vmlinux 0x7f24b4f6 scsi_get_device_flags_keyed +EXPORT_SYMBOL vmlinux 0x7f24de73 jiffies_to_usecs +EXPORT_SYMBOL vmlinux 0x7f29a71b fbcon_update_vcs +EXPORT_SYMBOL vmlinux 0x7f30d57a netdev_rx_csum_fault +EXPORT_SYMBOL vmlinux 0x7f363510 sock_create +EXPORT_SYMBOL vmlinux 0x7f447e87 security_sctp_sk_clone +EXPORT_SYMBOL vmlinux 0x7f52071a net_dim +EXPORT_SYMBOL vmlinux 0x7f582359 zerocopy_sg_from_iter +EXPORT_SYMBOL vmlinux 0x7f5b4fe4 sg_free_table +EXPORT_SYMBOL vmlinux 0x7f6b6218 tty_port_destroy +EXPORT_SYMBOL vmlinux 0x7f7f7bb4 irq_poll_disable +EXPORT_SYMBOL vmlinux 0x7fa13edf free_cgroup_ns +EXPORT_SYMBOL vmlinux 0x7fb646c5 xfrm_dst_ifdown +EXPORT_SYMBOL vmlinux 0x7fbde28d fget +EXPORT_SYMBOL vmlinux 0x7fc6870f security_sb_remount +EXPORT_SYMBOL vmlinux 0x7fd0438e dm_kcopyd_copy +EXPORT_SYMBOL vmlinux 0x7fe32873 rb_replace_node +EXPORT_SYMBOL vmlinux 0x7fed746b tc_setup_flow_action +EXPORT_SYMBOL vmlinux 0x80029a18 qdisc_class_hash_grow +EXPORT_SYMBOL vmlinux 0x800e8bf2 udp_lib_rehash +EXPORT_SYMBOL vmlinux 0x8016cd76 tcf_action_set_ctrlact +EXPORT_SYMBOL vmlinux 0x8035f26f page_cache_prev_miss +EXPORT_SYMBOL vmlinux 0x803ddbb6 __posix_acl_create +EXPORT_SYMBOL vmlinux 0x804af87c wrmsr_safe_on_cpu +EXPORT_SYMBOL vmlinux 0x80514ea5 pci_free_irq +EXPORT_SYMBOL vmlinux 0x80546717 security_sock_graft +EXPORT_SYMBOL vmlinux 0x80842fb0 agp_generic_destroy_pages +EXPORT_SYMBOL vmlinux 0x8089fbba dma_fence_array_create +EXPORT_SYMBOL vmlinux 0x809712ff hdmi_avi_infoframe_pack +EXPORT_SYMBOL vmlinux 0x80a40f15 page_pool_release_page +EXPORT_SYMBOL vmlinux 0x80a54205 sock_no_sendmsg_locked +EXPORT_SYMBOL vmlinux 0x80a717a8 __percpu_counter_compare +EXPORT_SYMBOL vmlinux 0x80b08224 netdev_lower_get_next_private +EXPORT_SYMBOL vmlinux 0x80b68322 dma_direct_map_page +EXPORT_SYMBOL vmlinux 0x80ca5026 _bin2bcd +EXPORT_SYMBOL vmlinux 0x80d68d3e fb_register_client +EXPORT_SYMBOL vmlinux 0x80d838dc neigh_parms_release +EXPORT_SYMBOL vmlinux 0x80dafc50 module_put +EXPORT_SYMBOL vmlinux 0x80e51a43 __dquot_free_space +EXPORT_SYMBOL vmlinux 0x80e5ea0c xsk_clear_rx_need_wakeup +EXPORT_SYMBOL vmlinux 0x810df6fa mark_buffer_async_write +EXPORT_SYMBOL vmlinux 0x8112b3d2 scsi_build_sense_buffer +EXPORT_SYMBOL vmlinux 0x81188c30 match_string +EXPORT_SYMBOL vmlinux 0x811b4621 blk_rq_map_kern +EXPORT_SYMBOL vmlinux 0x812dc45d tc_setup_cb_reoffload +EXPORT_SYMBOL vmlinux 0x81355a1f dev_mc_add_excl +EXPORT_SYMBOL vmlinux 0x814dfc35 agp_generic_remove_memory +EXPORT_SYMBOL vmlinux 0x81533963 sysfs_format_mac +EXPORT_SYMBOL vmlinux 0x815412b7 km_new_mapping +EXPORT_SYMBOL vmlinux 0x815b5dd4 match_octal +EXPORT_SYMBOL vmlinux 0x815d8926 ipv6_sock_mc_join +EXPORT_SYMBOL vmlinux 0x815f2897 empty_zero_page +EXPORT_SYMBOL vmlinux 0x816347c6 agp_device_command +EXPORT_SYMBOL vmlinux 0x818416e1 scsi_set_sense_information +EXPORT_SYMBOL vmlinux 0x8190936f sock_no_listen +EXPORT_SYMBOL vmlinux 0x81ac5e33 trace_print_hex_dump_seq +EXPORT_SYMBOL vmlinux 0x81b0334f con_is_bound +EXPORT_SYMBOL vmlinux 0x81b395b3 down_interruptible +EXPORT_SYMBOL vmlinux 0x81b61606 set_page_dirty +EXPORT_SYMBOL vmlinux 0x81b64f7d ip_route_input_noref +EXPORT_SYMBOL vmlinux 0x81b79c70 zero_fill_bio_iter +EXPORT_SYMBOL vmlinux 0x81b94563 blk_mq_alloc_request +EXPORT_SYMBOL vmlinux 0x81ce9941 intel_scu_ipc_dev_writev +EXPORT_SYMBOL vmlinux 0x81d2e3d7 phy_set_max_speed +EXPORT_SYMBOL vmlinux 0x81d3a41a vfs_getattr_nosec +EXPORT_SYMBOL vmlinux 0x81db6ebb xz_dec_reset +EXPORT_SYMBOL vmlinux 0x81e327fb inet_csk_destroy_sock +EXPORT_SYMBOL vmlinux 0x81e6b37f dmi_get_system_info +EXPORT_SYMBOL vmlinux 0x81f52e68 vif_device_init +EXPORT_SYMBOL vmlinux 0x81ff2b86 vme_lm_request +EXPORT_SYMBOL vmlinux 0x82072614 tasklet_kill +EXPORT_SYMBOL vmlinux 0x821a2da6 __vfs_removexattr +EXPORT_SYMBOL vmlinux 0x821fcb83 skb_checksum +EXPORT_SYMBOL vmlinux 0x8233476e sk_wait_data +EXPORT_SYMBOL vmlinux 0x823c19ea iosf_mbi_unregister_pmic_bus_access_notifier_unlocked +EXPORT_SYMBOL vmlinux 0x82403a43 skb_checksum_help +EXPORT_SYMBOL vmlinux 0x8260a0d8 __lock_page +EXPORT_SYMBOL vmlinux 0x8263a6d9 proc_douintvec +EXPORT_SYMBOL vmlinux 0x8266d4c4 skb_coalesce_rx_frag +EXPORT_SYMBOL vmlinux 0x828062b1 __frontswap_init +EXPORT_SYMBOL vmlinux 0x82903f01 phy_write_paged +EXPORT_SYMBOL vmlinux 0x82942017 to_nd_dax +EXPORT_SYMBOL vmlinux 0x82abb1e3 xfrm6_find_1stfragopt +EXPORT_SYMBOL vmlinux 0x82c33bb2 dquot_drop +EXPORT_SYMBOL vmlinux 0x82c87ad5 nr_online_nodes +EXPORT_SYMBOL vmlinux 0x82ca6d2b register_gifconf +EXPORT_SYMBOL vmlinux 0x82cad1a4 security_sb_clone_mnt_opts +EXPORT_SYMBOL vmlinux 0x82d43161 skb_tx_error +EXPORT_SYMBOL vmlinux 0x82f2e7e7 mdiobus_read_nested +EXPORT_SYMBOL vmlinux 0x83021e36 eth_validate_addr +EXPORT_SYMBOL vmlinux 0x8303335c tcp_v4_destroy_sock +EXPORT_SYMBOL vmlinux 0x8304948d input_get_poll_interval +EXPORT_SYMBOL vmlinux 0x83119cae agp_find_bridge +EXPORT_SYMBOL vmlinux 0x8313e065 wake_up_process +EXPORT_SYMBOL vmlinux 0x83190b0c blk_mq_tag_to_rq +EXPORT_SYMBOL vmlinux 0x83220fd9 kmem_cache_alloc +EXPORT_SYMBOL vmlinux 0x83231b0b __frontswap_store +EXPORT_SYMBOL vmlinux 0x832b3bd7 is_nvdimm_bus_locked +EXPORT_SYMBOL vmlinux 0x8336899e dma_set_coherent_mask +EXPORT_SYMBOL vmlinux 0x833e59e3 register_quota_format +EXPORT_SYMBOL vmlinux 0x834e9809 sync_inode_metadata +EXPORT_SYMBOL vmlinux 0x83581089 gf128mul_init_4k_lle +EXPORT_SYMBOL vmlinux 0x836b683b vlan_dev_vlan_id +EXPORT_SYMBOL vmlinux 0x837b7b09 __dynamic_pr_debug +EXPORT_SYMBOL vmlinux 0x838d2bc8 siphash_3u32 +EXPORT_SYMBOL vmlinux 0x839472a0 vfs_get_link +EXPORT_SYMBOL vmlinux 0x83a73f2b freezing_slow_path +EXPORT_SYMBOL vmlinux 0x83b94a42 handle_edge_irq +EXPORT_SYMBOL vmlinux 0x83c52fba xfrm4_protocol_init +EXPORT_SYMBOL vmlinux 0x83edfad5 crypto_sha256_update +EXPORT_SYMBOL vmlinux 0x83f26cae padata_set_cpumask +EXPORT_SYMBOL vmlinux 0x83f4b221 dquot_quota_on +EXPORT_SYMBOL vmlinux 0x840342c6 sgl_free +EXPORT_SYMBOL vmlinux 0x840bcc2a __hw_addr_sync_dev +EXPORT_SYMBOL vmlinux 0x84272f0a ip6mr_rule_default +EXPORT_SYMBOL vmlinux 0x842c4e4a pci_restore_state +EXPORT_SYMBOL vmlinux 0x8459c67d tty_unregister_device +EXPORT_SYMBOL vmlinux 0x845d12c4 phy_ethtool_set_wol +EXPORT_SYMBOL vmlinux 0x848d372e iowrite8 +EXPORT_SYMBOL vmlinux 0x8492d847 scsi_remove_host +EXPORT_SYMBOL vmlinux 0x84944469 secpath_set +EXPORT_SYMBOL vmlinux 0x849adbb7 unregister_netdevice_notifier_dev_net +EXPORT_SYMBOL vmlinux 0x849fe807 csum_and_copy_from_user +EXPORT_SYMBOL vmlinux 0x84c1c552 proc_dointvec_ms_jiffies +EXPORT_SYMBOL vmlinux 0x84cffda0 seq_open +EXPORT_SYMBOL vmlinux 0x84fd815a scsi_ioctl +EXPORT_SYMBOL vmlinux 0x8502f247 check_disk_change +EXPORT_SYMBOL vmlinux 0x854466ab skb_udp_tunnel_segment +EXPORT_SYMBOL vmlinux 0x85460f23 blk_mq_init_allocated_queue +EXPORT_SYMBOL vmlinux 0x85532eb1 __tracepoint_dma_fence_enable_signal +EXPORT_SYMBOL vmlinux 0x85585557 inet_protos +EXPORT_SYMBOL vmlinux 0x85670f1d rtnl_is_locked +EXPORT_SYMBOL vmlinux 0x8568136f netdev_change_features +EXPORT_SYMBOL vmlinux 0x857a67be netlink_set_err +EXPORT_SYMBOL vmlinux 0x858b3fe3 free_iova_mem +EXPORT_SYMBOL vmlinux 0x8591c753 gnet_stats_copy_queue +EXPORT_SYMBOL vmlinux 0x8594f81b mipi_dsi_turn_on_peripheral +EXPORT_SYMBOL vmlinux 0x85b4cf2f utf8nlen +EXPORT_SYMBOL vmlinux 0x85b5e625 rfkill_set_states +EXPORT_SYMBOL vmlinux 0x85bd1608 __request_region +EXPORT_SYMBOL vmlinux 0x85df9b6c strsep +EXPORT_SYMBOL vmlinux 0x85efc7e0 zero_pfn +EXPORT_SYMBOL vmlinux 0x85fbc931 slhc_uncompress +EXPORT_SYMBOL vmlinux 0x860d38b2 get_super_thawed +EXPORT_SYMBOL vmlinux 0x861c6df9 netpoll_send_skb +EXPORT_SYMBOL vmlinux 0x86216a49 rt_dst_alloc +EXPORT_SYMBOL vmlinux 0x863a276a color_table +EXPORT_SYMBOL vmlinux 0x86408ee4 mntput +EXPORT_SYMBOL vmlinux 0x865029ac __hw_addr_sync +EXPORT_SYMBOL vmlinux 0x8658f898 __serio_register_port +EXPORT_SYMBOL vmlinux 0x865f9264 dma_alloc_attrs +EXPORT_SYMBOL vmlinux 0x8664050a scsi_device_set_state +EXPORT_SYMBOL vmlinux 0x8668e4bc ww_mutex_lock +EXPORT_SYMBOL vmlinux 0x867152cd arp_send +EXPORT_SYMBOL vmlinux 0x867614f4 genphy_c37_read_status +EXPORT_SYMBOL vmlinux 0x8676ef84 simple_empty +EXPORT_SYMBOL vmlinux 0x8685d7d0 input_match_device_id +EXPORT_SYMBOL vmlinux 0x8687fcf0 netpoll_setup +EXPORT_SYMBOL vmlinux 0x868acba5 get_options +EXPORT_SYMBOL vmlinux 0x86ba5f11 vfs_create +EXPORT_SYMBOL vmlinux 0x86bd6081 call_netdevice_notifiers +EXPORT_SYMBOL vmlinux 0x86c7272b iosf_mbi_read +EXPORT_SYMBOL vmlinux 0x86d52ba5 lookup_constant +EXPORT_SYMBOL vmlinux 0x86ddf89f ipv6_skip_exthdr +EXPORT_SYMBOL vmlinux 0x86ec61a3 path_is_mountpoint +EXPORT_SYMBOL vmlinux 0x86f27420 iosf_mbi_block_punit_i2c_access +EXPORT_SYMBOL vmlinux 0x86fb4536 cpumask_any_and_distribute +EXPORT_SYMBOL vmlinux 0x86fb9b05 bitmap_parse_user +EXPORT_SYMBOL vmlinux 0x86ffd0a6 __bio_clone_fast +EXPORT_SYMBOL vmlinux 0x870831e0 simple_transaction_get +EXPORT_SYMBOL vmlinux 0x87312fe6 jbd2_journal_check_available_features +EXPORT_SYMBOL vmlinux 0x873ba03d __put_page +EXPORT_SYMBOL vmlinux 0x8754073c pci_dev_driver +EXPORT_SYMBOL vmlinux 0x87551b94 phy_ethtool_nway_reset +EXPORT_SYMBOL vmlinux 0x875a6830 tcp_md5_do_del +EXPORT_SYMBOL vmlinux 0x8761c87b rps_needed +EXPORT_SYMBOL vmlinux 0x87732eb8 rtnl_unicast +EXPORT_SYMBOL vmlinux 0x878469bd ZSTD_decompressStream +EXPORT_SYMBOL vmlinux 0x87aa3455 cdrom_number_of_slots +EXPORT_SYMBOL vmlinux 0x87ad0f70 ethtool_notify +EXPORT_SYMBOL vmlinux 0x87b8798d sg_next +EXPORT_SYMBOL vmlinux 0x87cd2c51 skb_copy_and_csum_datagram_msg +EXPORT_SYMBOL vmlinux 0x87d01b88 prepare_creds +EXPORT_SYMBOL vmlinux 0x87da2f66 inet6_register_icmp_sender +EXPORT_SYMBOL vmlinux 0x87fbe062 scsi_host_busy +EXPORT_SYMBOL vmlinux 0x87ff192f security_sb_set_mnt_opts +EXPORT_SYMBOL vmlinux 0x881c4413 gen_pool_first_fit +EXPORT_SYMBOL vmlinux 0x882116da kernel_getsockname +EXPORT_SYMBOL vmlinux 0x883037ee __dev_kfree_skb_any +EXPORT_SYMBOL vmlinux 0x883436d0 flow_rule_match_icmp +EXPORT_SYMBOL vmlinux 0x8834e9e5 generic_key_instantiate +EXPORT_SYMBOL vmlinux 0x884e3414 udp6_set_csum +EXPORT_SYMBOL vmlinux 0x8855d780 blk_mq_delay_run_hw_queues +EXPORT_SYMBOL vmlinux 0x885f6070 devm_pci_remap_iospace +EXPORT_SYMBOL vmlinux 0x88690fd0 jbd2_journal_wipe +EXPORT_SYMBOL vmlinux 0x88822d38 unregister_blocking_lsm_notifier +EXPORT_SYMBOL vmlinux 0x8888f1fe xxh32 +EXPORT_SYMBOL vmlinux 0x889cfa6c pci_write_config_byte +EXPORT_SYMBOL vmlinux 0x88abb78b ZSTD_insertBlock +EXPORT_SYMBOL vmlinux 0x88cf287a blk_pre_runtime_resume +EXPORT_SYMBOL vmlinux 0x88d0a84b inet6_getname +EXPORT_SYMBOL vmlinux 0x88d38ebf kern_path +EXPORT_SYMBOL vmlinux 0x88db9f48 __check_object_size +EXPORT_SYMBOL vmlinux 0x88dd990f bdi_set_max_ratio +EXPORT_SYMBOL vmlinux 0x88e1d0f0 page_frag_free +EXPORT_SYMBOL vmlinux 0x88e49fff xfrm_state_flush +EXPORT_SYMBOL vmlinux 0x88ec794b lookup_positive_unlocked +EXPORT_SYMBOL vmlinux 0x88ef4615 kernel_getpeername +EXPORT_SYMBOL vmlinux 0x88fb148a fsync_bdev +EXPORT_SYMBOL vmlinux 0x891998f4 blk_rq_map_user +EXPORT_SYMBOL vmlinux 0x891ea2b8 current_time +EXPORT_SYMBOL vmlinux 0x89434b4b radix_tree_tag_clear +EXPORT_SYMBOL vmlinux 0x895e144b page_mapped +EXPORT_SYMBOL vmlinux 0x89658a63 agp_alloc_bridge +EXPORT_SYMBOL vmlinux 0x896a9c4a dma_fence_chain_init +EXPORT_SYMBOL vmlinux 0x896f685e scsi_cmd_blk_ioctl +EXPORT_SYMBOL vmlinux 0x8976bc16 blk_queue_alignment_offset +EXPORT_SYMBOL vmlinux 0x899854ab padata_free_shell +EXPORT_SYMBOL vmlinux 0x89dc4a0a amd_iommu_domain_clear_gcr3 +EXPORT_SYMBOL vmlinux 0x89df796c kernel_listen +EXPORT_SYMBOL vmlinux 0x89f52a37 dev_remove_offload +EXPORT_SYMBOL vmlinux 0x89f5d8c7 __nd_driver_register +EXPORT_SYMBOL vmlinux 0x8a34d937 iov_iter_single_seg_count +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 0x8a6af65c kstrtoul_from_user +EXPORT_SYMBOL vmlinux 0x8a6c7139 acpi_mask_gpe +EXPORT_SYMBOL vmlinux 0x8a722f15 phy_sfp_probe +EXPORT_SYMBOL vmlinux 0x8a7d1c31 high_memory +EXPORT_SYMBOL vmlinux 0x8a8f87f7 sock_no_ioctl +EXPORT_SYMBOL vmlinux 0x8a948f27 __nla_parse +EXPORT_SYMBOL vmlinux 0x8a99a016 mempool_free_slab +EXPORT_SYMBOL vmlinux 0x8ac3334b net_dim_get_def_rx_moderation +EXPORT_SYMBOL vmlinux 0x8ac5c194 mipi_dsi_dcs_exit_sleep_mode +EXPORT_SYMBOL vmlinux 0x8ac743de sg_copy_buffer +EXPORT_SYMBOL vmlinux 0x8acc78cf tty_port_open +EXPORT_SYMBOL vmlinux 0x8acfda5f tcp_v4_do_rcv +EXPORT_SYMBOL vmlinux 0x8ad29bab _raw_write_unlock_bh +EXPORT_SYMBOL vmlinux 0x8afbb0ee cdev_device_add +EXPORT_SYMBOL vmlinux 0x8afbbfc3 __kfree_skb +EXPORT_SYMBOL vmlinux 0x8b0088d1 LZ4_decompress_safe_usingDict +EXPORT_SYMBOL vmlinux 0x8b285f86 may_umount_tree +EXPORT_SYMBOL vmlinux 0x8b3a3704 agp_put_bridge +EXPORT_SYMBOL vmlinux 0x8b3b5732 input_open_device +EXPORT_SYMBOL vmlinux 0x8b4e90b6 qdisc_reset +EXPORT_SYMBOL vmlinux 0x8b57f851 dev_mc_sync +EXPORT_SYMBOL vmlinux 0x8b618d08 overflowuid +EXPORT_SYMBOL vmlinux 0x8b780fd6 ip6_err_gen_icmpv6_unreach +EXPORT_SYMBOL vmlinux 0x8b8059bd in_group_p +EXPORT_SYMBOL vmlinux 0x8b901cf2 sock_set_sndtimeo +EXPORT_SYMBOL vmlinux 0x8b910be2 errseq_sample +EXPORT_SYMBOL vmlinux 0x8b97eb00 generic_file_fsync +EXPORT_SYMBOL vmlinux 0x8b989cf9 acpi_bus_can_wakeup +EXPORT_SYMBOL vmlinux 0x8b9ea582 ZSTD_copyDCtx +EXPORT_SYMBOL vmlinux 0x8ba3771e scsi_register_driver +EXPORT_SYMBOL vmlinux 0x8bce0287 amd_iommu_get_v2_domain +EXPORT_SYMBOL vmlinux 0x8be3aaad scsi_eh_prep_cmnd +EXPORT_SYMBOL vmlinux 0x8bf5b6d6 bdgrab +EXPORT_SYMBOL vmlinux 0x8c0db60d input_register_device +EXPORT_SYMBOL vmlinux 0x8c15fe3e __x86_retpoline_r10 +EXPORT_SYMBOL vmlinux 0x8c26d495 prepare_to_wait_event +EXPORT_SYMBOL vmlinux 0x8c3253ec _raw_spin_trylock +EXPORT_SYMBOL vmlinux 0x8c36f17a dquot_quotactl_sysfile_ops +EXPORT_SYMBOL vmlinux 0x8c4fcedc __netif_schedule +EXPORT_SYMBOL vmlinux 0x8c57760c unlock_page_memcg +EXPORT_SYMBOL vmlinux 0x8c6bf651 flow_block_cb_is_busy +EXPORT_SYMBOL vmlinux 0x8c84f489 pci_iomap +EXPORT_SYMBOL vmlinux 0x8c86426b md_done_sync +EXPORT_SYMBOL vmlinux 0x8c9e338f acpi_bios_error +EXPORT_SYMBOL vmlinux 0x8cb544df __tracepoint_kmalloc +EXPORT_SYMBOL vmlinux 0x8cb99ec5 agp_generic_free_by_type +EXPORT_SYMBOL vmlinux 0x8cc79cab iowrite16_rep +EXPORT_SYMBOL vmlinux 0x8ccf75f6 dev_addr_init +EXPORT_SYMBOL vmlinux 0x8cde9391 misc_register +EXPORT_SYMBOL vmlinux 0x8ce6ec3f unix_destruct_scm +EXPORT_SYMBOL vmlinux 0x8ceac1bf dev_get_by_index +EXPORT_SYMBOL vmlinux 0x8d3231ca fscrypt_ioctl_set_policy +EXPORT_SYMBOL vmlinux 0x8d4080ae __close_fd_get_file +EXPORT_SYMBOL vmlinux 0x8d411dd4 qdisc_hash_add +EXPORT_SYMBOL vmlinux 0x8d55bb8a qid_eq +EXPORT_SYMBOL vmlinux 0x8d5f3d3d unregister_qdisc +EXPORT_SYMBOL vmlinux 0x8d643393 pci_bus_find_capability +EXPORT_SYMBOL vmlinux 0x8d71ce01 copy_page_from_iter +EXPORT_SYMBOL vmlinux 0x8d73278e hex_asc_upper +EXPORT_SYMBOL vmlinux 0x8d7be4f4 blk_set_queue_depth +EXPORT_SYMBOL vmlinux 0x8d9ca0e6 dma_fence_enable_sw_signaling +EXPORT_SYMBOL vmlinux 0x8db22efe acpi_setup_gpe_for_wake +EXPORT_SYMBOL vmlinux 0x8db86720 skb_queue_tail +EXPORT_SYMBOL vmlinux 0x8db994c8 input_inject_event +EXPORT_SYMBOL vmlinux 0x8dbb11d2 single_release +EXPORT_SYMBOL vmlinux 0x8ddd8aad schedule_timeout +EXPORT_SYMBOL vmlinux 0x8de8ab61 __napi_schedule +EXPORT_SYMBOL vmlinux 0x8df7e8d6 cpumask_any_but +EXPORT_SYMBOL vmlinux 0x8df92f66 memchr_inv +EXPORT_SYMBOL vmlinux 0x8df9dd10 guid_null +EXPORT_SYMBOL vmlinux 0x8e17b3ae idr_destroy +EXPORT_SYMBOL vmlinux 0x8e21c9a1 dma_fence_add_callback +EXPORT_SYMBOL vmlinux 0x8e2d1236 ex_handler_wrmsr_unsafe +EXPORT_SYMBOL vmlinux 0x8e3ab292 udp_lib_get_port +EXPORT_SYMBOL vmlinux 0x8e663d0f zalloc_cpumask_var_node +EXPORT_SYMBOL vmlinux 0x8e6e7cf9 devfreq_update_status +EXPORT_SYMBOL vmlinux 0x8e7669c9 __starget_for_each_device +EXPORT_SYMBOL vmlinux 0x8e7762dd ndo_dflt_fdb_del +EXPORT_SYMBOL vmlinux 0x8e7dec6c d_invalidate +EXPORT_SYMBOL vmlinux 0x8e9c2297 sk_net_capable +EXPORT_SYMBOL vmlinux 0x8eaf2a5f vga_switcheroo_unregister_handler +EXPORT_SYMBOL vmlinux 0x8eb2ae8c devm_devfreq_unregister_notifier +EXPORT_SYMBOL vmlinux 0x8ec1e54d ata_std_end_eh +EXPORT_SYMBOL vmlinux 0x8ec7e56b vlan_uses_dev +EXPORT_SYMBOL vmlinux 0x8ed2c666 ip_tunnel_encap_add_ops +EXPORT_SYMBOL vmlinux 0x8ed2e0f1 sk_common_release +EXPORT_SYMBOL vmlinux 0x8eece748 phy_read_mmd +EXPORT_SYMBOL vmlinux 0x8f13d9e5 ppp_channel_index +EXPORT_SYMBOL vmlinux 0x8f13f53d fs_param_is_s32 +EXPORT_SYMBOL vmlinux 0x8f2703b7 wbinvd_on_all_cpus +EXPORT_SYMBOL vmlinux 0x8f38d383 ex_handler_default +EXPORT_SYMBOL vmlinux 0x8f80bf11 acpi_install_gpe_raw_handler +EXPORT_SYMBOL vmlinux 0x8f81610e locks_mandatory_area +EXPORT_SYMBOL vmlinux 0x8f8736fe write_inode_now +EXPORT_SYMBOL vmlinux 0x8f95f66a __cgroup_bpf_run_filter_sock_addr +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 0x8fdd24fe empty_aops +EXPORT_SYMBOL vmlinux 0x8ff89ed0 seg6_hmac_exit +EXPORT_SYMBOL vmlinux 0x8ffbdba9 blk_limits_io_min +EXPORT_SYMBOL vmlinux 0x902d8722 vme_slave_get +EXPORT_SYMBOL vmlinux 0x902eac14 nd_dax_probe +EXPORT_SYMBOL vmlinux 0x9034a696 mempool_destroy +EXPORT_SYMBOL vmlinux 0x903ccd4b xfrm_unregister_km +EXPORT_SYMBOL vmlinux 0x903f1edf input_flush_device +EXPORT_SYMBOL vmlinux 0x90505962 serial8250_do_set_termios +EXPORT_SYMBOL vmlinux 0x905478e0 phy_ethtool_ksettings_get +EXPORT_SYMBOL vmlinux 0x9054ee54 ethtool_intersect_link_masks +EXPORT_SYMBOL vmlinux 0x905695ab sg_copy_from_buffer +EXPORT_SYMBOL vmlinux 0x90576ec4 vmemdup_user +EXPORT_SYMBOL vmlinux 0x906f7447 inet_add_protocol +EXPORT_SYMBOL vmlinux 0x907ba52c posix_acl_valid +EXPORT_SYMBOL vmlinux 0x9084a529 init_special_inode +EXPORT_SYMBOL vmlinux 0x909ce9cc tcp_getsockopt +EXPORT_SYMBOL vmlinux 0x909d2cdf vm_event_states +EXPORT_SYMBOL vmlinux 0x909feccd map_kernel_range_noflush +EXPORT_SYMBOL vmlinux 0x90a5b483 blkdev_issue_discard +EXPORT_SYMBOL vmlinux 0x90b4ed38 blk_mq_free_tag_set +EXPORT_SYMBOL vmlinux 0x90cd7359 netdev_adjacent_change_commit +EXPORT_SYMBOL vmlinux 0x90f9065e fc_eh_timed_out +EXPORT_SYMBOL vmlinux 0x91113e60 dma_resv_fini +EXPORT_SYMBOL vmlinux 0x91607d95 set_memory_wb +EXPORT_SYMBOL vmlinux 0x91638c3a security_tun_dev_attach +EXPORT_SYMBOL vmlinux 0x9166fada strncpy +EXPORT_SYMBOL vmlinux 0x916e1f5e vlan_filter_drop_vids +EXPORT_SYMBOL vmlinux 0x9176145b acpi_install_global_event_handler +EXPORT_SYMBOL vmlinux 0x919965ce add_to_pipe +EXPORT_SYMBOL vmlinux 0x919c58f3 __clzsi2 +EXPORT_SYMBOL vmlinux 0x91a10c61 intel_scu_ipc_dev_simple_command +EXPORT_SYMBOL vmlinux 0x91a7b1da qdisc_class_hash_remove +EXPORT_SYMBOL vmlinux 0x91cd015f tcf_classify_ingress +EXPORT_SYMBOL vmlinux 0x91cf3c57 tso_start +EXPORT_SYMBOL vmlinux 0x91eecea8 do_SAK +EXPORT_SYMBOL vmlinux 0x91eef2f3 send_sig_info +EXPORT_SYMBOL vmlinux 0x91f1b163 inet_reqsk_alloc +EXPORT_SYMBOL vmlinux 0x91f44510 idr_alloc_cyclic +EXPORT_SYMBOL vmlinux 0x91fcd058 _dev_emerg +EXPORT_SYMBOL vmlinux 0x922f45a6 __bitmap_clear +EXPORT_SYMBOL vmlinux 0x922fd264 textsearch_unregister +EXPORT_SYMBOL vmlinux 0x92367e56 genphy_restart_aneg +EXPORT_SYMBOL vmlinux 0x923b1276 dmaengine_get +EXPORT_SYMBOL vmlinux 0x923c39e1 blk_mq_queue_stopped +EXPORT_SYMBOL vmlinux 0x924012f2 phy_request_interrupt +EXPORT_SYMBOL vmlinux 0x92540fbf finish_wait +EXPORT_SYMBOL vmlinux 0x9258c776 hdmi_vendor_infoframe_pack_only +EXPORT_SYMBOL vmlinux 0x925924a4 tcf_exts_change +EXPORT_SYMBOL vmlinux 0x9269069f console_start +EXPORT_SYMBOL vmlinux 0x92731123 security_binder_transaction +EXPORT_SYMBOL vmlinux 0x9275b611 seq_release +EXPORT_SYMBOL vmlinux 0x92897e3d default_idle +EXPORT_SYMBOL vmlinux 0x9291cd3b memdup_user +EXPORT_SYMBOL vmlinux 0x929dc083 skb_set_owner_w +EXPORT_SYMBOL vmlinux 0x92a3bead pagecache_write_end +EXPORT_SYMBOL vmlinux 0x92aec847 scsi_is_sdev_device +EXPORT_SYMBOL vmlinux 0x92af2d98 dev_get_phys_port_name +EXPORT_SYMBOL vmlinux 0x92b576b4 get_bitmap_from_slot +EXPORT_SYMBOL vmlinux 0x92b63669 devfreq_unregister_notifier +EXPORT_SYMBOL vmlinux 0x92b98013 sock_queue_err_skb +EXPORT_SYMBOL vmlinux 0x92b99a33 acpi_put_table +EXPORT_SYMBOL vmlinux 0x92b9b180 slash_name +EXPORT_SYMBOL vmlinux 0x92de3c9f xfrm_init_replay +EXPORT_SYMBOL vmlinux 0x92ec510d jiffies64_to_msecs +EXPORT_SYMBOL vmlinux 0x92fa5abb vme_lm_detach +EXPORT_SYMBOL vmlinux 0x93022ba6 __scsi_format_command +EXPORT_SYMBOL vmlinux 0x9305bf68 find_next_and_bit +EXPORT_SYMBOL vmlinux 0x9305f8e6 cpufreq_get +EXPORT_SYMBOL vmlinux 0x930fa378 bio_add_pc_page +EXPORT_SYMBOL vmlinux 0x93147a94 tty_write_room +EXPORT_SYMBOL vmlinux 0x931dc3cd ethtool_op_get_link +EXPORT_SYMBOL vmlinux 0x932f31cb pcim_iounmap_regions +EXPORT_SYMBOL vmlinux 0x9347a26a eth_header_cache_update +EXPORT_SYMBOL vmlinux 0x9369f946 padata_alloc_possible +EXPORT_SYMBOL vmlinux 0x936b3104 fc_host_post_fc_event +EXPORT_SYMBOL vmlinux 0x936d6c47 tty_driver_flush_buffer +EXPORT_SYMBOL vmlinux 0x9375064e devm_request_resource +EXPORT_SYMBOL vmlinux 0x937733e3 qid_valid +EXPORT_SYMBOL vmlinux 0x93a6e0b2 io_schedule +EXPORT_SYMBOL vmlinux 0x93b3fc74 register_dcbevent_notifier +EXPORT_SYMBOL vmlinux 0x93c1992f nla_put_nohdr +EXPORT_SYMBOL vmlinux 0x93c31d73 nf_log_register +EXPORT_SYMBOL vmlinux 0x93d6dd8c complete_all +EXPORT_SYMBOL vmlinux 0x93d7ccac blk_queue_max_write_same_sectors +EXPORT_SYMBOL vmlinux 0x93f46bb2 nf_ct_attach +EXPORT_SYMBOL vmlinux 0x940857bb rt_dst_clone +EXPORT_SYMBOL vmlinux 0x940ad759 scsi_device_quiesce +EXPORT_SYMBOL vmlinux 0x940f9398 dev_change_proto_down_generic +EXPORT_SYMBOL vmlinux 0x9428f816 dim_turn +EXPORT_SYMBOL vmlinux 0x943dc80f csum_and_copy_to_user +EXPORT_SYMBOL vmlinux 0x943efd60 lock_rename +EXPORT_SYMBOL vmlinux 0x9440cde4 tcp_v4_md5_hash_skb +EXPORT_SYMBOL vmlinux 0x944375db _totalram_pages +EXPORT_SYMBOL vmlinux 0x9445bca8 tty_insert_flip_string_flags +EXPORT_SYMBOL vmlinux 0x9446672f bio_integrity_add_page +EXPORT_SYMBOL vmlinux 0x944a564d is_console_locked +EXPORT_SYMBOL vmlinux 0x945b0693 simple_open +EXPORT_SYMBOL vmlinux 0x945ccb8b input_mt_sync_frame +EXPORT_SYMBOL vmlinux 0x94678944 pnp_request_card_device +EXPORT_SYMBOL vmlinux 0x946cce1d vme_irq_handler +EXPORT_SYMBOL vmlinux 0x94851eed __register_binfmt +EXPORT_SYMBOL vmlinux 0x948c15f0 genlmsg_multicast_allns +EXPORT_SYMBOL vmlinux 0x94961283 vunmap +EXPORT_SYMBOL vmlinux 0x94bb7ec3 gen_pool_dma_zalloc_algo +EXPORT_SYMBOL vmlinux 0x94bf03ca utf8_to_utf32 +EXPORT_SYMBOL vmlinux 0x94dc2f97 netdev_boot_setup_check +EXPORT_SYMBOL vmlinux 0x94e481cf ZSTD_adjustCParams +EXPORT_SYMBOL vmlinux 0x94f78b40 dev_getfirstbyhwtype +EXPORT_SYMBOL vmlinux 0x94fe65c2 jbd2_journal_set_triggers +EXPORT_SYMBOL vmlinux 0x950a242e get_user_pages_remote +EXPORT_SYMBOL vmlinux 0x9545af6d tasklet_init +EXPORT_SYMBOL vmlinux 0x95498cde genphy_update_link +EXPORT_SYMBOL vmlinux 0x954cef6f init_on_alloc +EXPORT_SYMBOL vmlinux 0x954f099c idr_preload +EXPORT_SYMBOL vmlinux 0x9566da62 mipi_dsi_driver_register_full +EXPORT_SYMBOL vmlinux 0x956c90f1 vfs_statx_fd +EXPORT_SYMBOL vmlinux 0x9579d4ae ppp_input +EXPORT_SYMBOL vmlinux 0x957cc595 md_check_recovery +EXPORT_SYMBOL vmlinux 0x9586f5b4 pci_request_region +EXPORT_SYMBOL vmlinux 0x95a67b07 udp_table +EXPORT_SYMBOL vmlinux 0x95a86cd5 dma_async_device_register +EXPORT_SYMBOL vmlinux 0x95b13a50 simple_recursive_removal +EXPORT_SYMBOL vmlinux 0x95c4b9e0 __lock_buffer +EXPORT_SYMBOL vmlinux 0x95c62646 amd_iommu_domain_direct_map +EXPORT_SYMBOL vmlinux 0x95e161b8 param_get_string +EXPORT_SYMBOL vmlinux 0x95e67ddc xfrm6_rcv_encap +EXPORT_SYMBOL vmlinux 0x95fcd441 __nla_put_nohdr +EXPORT_SYMBOL vmlinux 0x95fef464 blk_put_request +EXPORT_SYMBOL vmlinux 0x96195cec ipv6_find_hdr +EXPORT_SYMBOL vmlinux 0x961b4795 scsi_scan_host +EXPORT_SYMBOL vmlinux 0x9625695d acpi_install_gpe_block +EXPORT_SYMBOL vmlinux 0x962c4977 clkdev_add +EXPORT_SYMBOL vmlinux 0x963dcba1 _raw_spin_trylock_bh +EXPORT_SYMBOL vmlinux 0x964b1b1d sock_efree +EXPORT_SYMBOL vmlinux 0x966359aa sg_alloc_table_from_pages +EXPORT_SYMBOL vmlinux 0x96848186 scnprintf +EXPORT_SYMBOL vmlinux 0x969ed577 pci_unmap_rom +EXPORT_SYMBOL vmlinux 0x96b29254 strncasecmp +EXPORT_SYMBOL vmlinux 0x96ba3fe2 netdev_name_node_alt_destroy +EXPORT_SYMBOL vmlinux 0x96c17136 fb_var_to_videomode +EXPORT_SYMBOL vmlinux 0x96cd2b04 scsi_sense_key_string +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 0x97127746 clear_wb_congested +EXPORT_SYMBOL vmlinux 0x97342bae __breadahead_gfp +EXPORT_SYMBOL vmlinux 0x973a8869 blkdev_get_by_path +EXPORT_SYMBOL vmlinux 0x973fa82e register_acpi_notifier +EXPORT_SYMBOL vmlinux 0x9746eb89 ZSTD_decompressBegin_usingDict +EXPORT_SYMBOL vmlinux 0x974ff6a7 simple_transaction_set +EXPORT_SYMBOL vmlinux 0x97620a01 migrate_vma_setup +EXPORT_SYMBOL vmlinux 0x97651e6c vmemmap_base +EXPORT_SYMBOL vmlinux 0x977f511b __mutex_init +EXPORT_SYMBOL vmlinux 0x978e2a45 xp_raw_get_data +EXPORT_SYMBOL vmlinux 0x97934ecf del_timer_sync +EXPORT_SYMBOL vmlinux 0x97999817 rfkill_set_hw_state +EXPORT_SYMBOL vmlinux 0x979f5533 tcf_em_tree_dump +EXPORT_SYMBOL vmlinux 0x97a18ff0 vga_switcheroo_register_handler +EXPORT_SYMBOL vmlinux 0x97a57333 crc_t10dif_update +EXPORT_SYMBOL vmlinux 0x97a822ad pcibios_resource_to_bus +EXPORT_SYMBOL vmlinux 0x97adb487 utf8s_to_utf16s +EXPORT_SYMBOL vmlinux 0x97bdfa60 scsi_dev_info_remove_list +EXPORT_SYMBOL vmlinux 0x97ccbbae sock_i_uid +EXPORT_SYMBOL vmlinux 0x97ea07c1 backlight_device_set_brightness +EXPORT_SYMBOL vmlinux 0x98096682 cookie_timestamp_decode +EXPORT_SYMBOL vmlinux 0x9812d30b pnp_possible_config +EXPORT_SYMBOL vmlinux 0x9828ac28 ipv4_specific +EXPORT_SYMBOL vmlinux 0x9829fc11 __kfifo_out_peek_r +EXPORT_SYMBOL vmlinux 0x983fc732 d_add_ci +EXPORT_SYMBOL vmlinux 0x987f24ee register_shrinker +EXPORT_SYMBOL vmlinux 0x9880e152 netdev_upper_get_next_dev_rcu +EXPORT_SYMBOL vmlinux 0x98a87fbf _copy_to_iter +EXPORT_SYMBOL vmlinux 0x98bdf56b insert_inode_locked4 +EXPORT_SYMBOL vmlinux 0x98c039dc dma_fence_wait_timeout +EXPORT_SYMBOL vmlinux 0x98c89ade security_xfrm_state_alloc +EXPORT_SYMBOL vmlinux 0x98e508ef ignore_console_lock_warning +EXPORT_SYMBOL vmlinux 0x9905eb2d vme_irq_free +EXPORT_SYMBOL vmlinux 0x99078b39 trace_print_flags_seq +EXPORT_SYMBOL vmlinux 0x991b14c3 unlock_buffer +EXPORT_SYMBOL vmlinux 0x992fc0cc blk_mq_stop_hw_queue +EXPORT_SYMBOL vmlinux 0x9939eba0 backlight_unregister_notifier +EXPORT_SYMBOL vmlinux 0x99517682 udp_encap_enable +EXPORT_SYMBOL vmlinux 0x9973ea36 input_mt_report_pointer_emulation +EXPORT_SYMBOL vmlinux 0x9975dc22 acpi_get_handle +EXPORT_SYMBOL vmlinux 0x999e27e1 vfs_llseek +EXPORT_SYMBOL vmlinux 0x999e8297 vfree +EXPORT_SYMBOL vmlinux 0x99a2a1c6 kernel_bind +EXPORT_SYMBOL vmlinux 0x99a6ddf0 path_get +EXPORT_SYMBOL vmlinux 0x99b7b067 keyring_search +EXPORT_SYMBOL vmlinux 0x99c93bda freeze_super +EXPORT_SYMBOL vmlinux 0x99cf9241 mount_subtree +EXPORT_SYMBOL vmlinux 0x99d472b1 net_dim_get_rx_moderation +EXPORT_SYMBOL vmlinux 0x99d65df1 efi +EXPORT_SYMBOL vmlinux 0x99daa9bf try_offline_node +EXPORT_SYMBOL vmlinux 0x99e5719d generic_iommu_put_resv_regions +EXPORT_SYMBOL vmlinux 0x99e5bc61 cdrom_release +EXPORT_SYMBOL vmlinux 0x99ea3168 qdisc_offload_dump_helper +EXPORT_SYMBOL vmlinux 0x99ee8e29 init_net +EXPORT_SYMBOL vmlinux 0x99f068d5 x86_cpu_to_node_map +EXPORT_SYMBOL vmlinux 0x9a0c3a18 vme_unregister_error_handler +EXPORT_SYMBOL vmlinux 0x9a19ec50 make_flow_keys_digest +EXPORT_SYMBOL vmlinux 0x9a1dfd65 strpbrk +EXPORT_SYMBOL vmlinux 0x9a217627 dquot_load_quota_sb +EXPORT_SYMBOL vmlinux 0x9a22391e radix_tree_gang_lookup_tag_slot +EXPORT_SYMBOL vmlinux 0x9a33ab99 phy_ethtool_set_link_ksettings +EXPORT_SYMBOL vmlinux 0x9a583306 netlbl_bitmap_walk +EXPORT_SYMBOL vmlinux 0x9a58e99e mdio_device_reset +EXPORT_SYMBOL vmlinux 0x9a5c1b38 genphy_read_lpa +EXPORT_SYMBOL vmlinux 0x9a5d5b4b skb_free_datagram +EXPORT_SYMBOL vmlinux 0x9a5e7d0b __dev_get_by_index +EXPORT_SYMBOL vmlinux 0x9a65f1f7 vlan_vid_del +EXPORT_SYMBOL vmlinux 0x9a71c2d6 mipi_dsi_shutdown_peripheral +EXPORT_SYMBOL vmlinux 0x9a73b032 ZSTD_initDStream_usingDDict +EXPORT_SYMBOL vmlinux 0x9a7e0d00 register_netdevice_notifier_dev_net +EXPORT_SYMBOL vmlinux 0x9aaeefce sysctl_nf_log_all_netns +EXPORT_SYMBOL vmlinux 0x9ab04ade mr_table_alloc +EXPORT_SYMBOL vmlinux 0x9ad60af7 drop_super +EXPORT_SYMBOL vmlinux 0x9ad7a582 iosf_mbi_assert_punit_acquired +EXPORT_SYMBOL vmlinux 0x9ad7d60c ioc_lookup_icq +EXPORT_SYMBOL vmlinux 0x9add61f0 kthread_destroy_worker +EXPORT_SYMBOL vmlinux 0x9b07810c __skb_checksum +EXPORT_SYMBOL vmlinux 0x9b0ae0e2 agp_generic_type_to_mask_type +EXPORT_SYMBOL vmlinux 0x9b2560b9 gf128mul_init_4k_bbe +EXPORT_SYMBOL vmlinux 0x9b33e0d7 unregister_dcbevent_notifier +EXPORT_SYMBOL vmlinux 0x9b420478 utf8_strncasecmp +EXPORT_SYMBOL vmlinux 0x9b496b21 posix_acl_alloc +EXPORT_SYMBOL vmlinux 0x9b684fc2 file_fdatawait_range +EXPORT_SYMBOL vmlinux 0x9b6d8a40 thermal_zone_device_critical +EXPORT_SYMBOL vmlinux 0x9b72478f acpi_unload_parent_table +EXPORT_SYMBOL vmlinux 0x9bc33680 security_path_mknod +EXPORT_SYMBOL vmlinux 0x9bc8fce0 sdev_enable_disk_events +EXPORT_SYMBOL vmlinux 0x9bcb5176 submit_bh +EXPORT_SYMBOL vmlinux 0x9bcb6acd t10_pi_type1_ip +EXPORT_SYMBOL vmlinux 0x9bd8d3ae vme_dma_list_add +EXPORT_SYMBOL vmlinux 0x9bdd1556 md_wait_for_blocked_rdev +EXPORT_SYMBOL vmlinux 0x9bdf3e17 _copy_from_iter +EXPORT_SYMBOL vmlinux 0x9bf62c78 phy_attach_direct +EXPORT_SYMBOL vmlinux 0x9c122bcf mempool_create_node +EXPORT_SYMBOL vmlinux 0x9c123187 md_bitmap_unplug +EXPORT_SYMBOL vmlinux 0x9c146b8b tcp_md5_hash_key +EXPORT_SYMBOL vmlinux 0x9c417b7f jbd2_journal_inode_ranged_write +EXPORT_SYMBOL vmlinux 0x9c53fd6c kernel_sendmsg_locked +EXPORT_SYMBOL vmlinux 0x9c68d55e qdisc_put_unlocked +EXPORT_SYMBOL vmlinux 0x9c83d4de seq_putc +EXPORT_SYMBOL vmlinux 0x9c942adc vprintk_emit +EXPORT_SYMBOL vmlinux 0x9c9ed7f3 param_set_byte +EXPORT_SYMBOL vmlinux 0x9cab34a6 rfkill_set_led_trigger_name +EXPORT_SYMBOL vmlinux 0x9caf4a7c pci_alloc_irq_vectors_affinity +EXPORT_SYMBOL vmlinux 0x9cb986f2 vmalloc_base +EXPORT_SYMBOL vmlinux 0x9ccb0fca __check_sticky +EXPORT_SYMBOL vmlinux 0x9ccf7171 vme_dma_pci_attribute +EXPORT_SYMBOL vmlinux 0x9ccfb9d8 alloc_netdev_mqs +EXPORT_SYMBOL vmlinux 0x9cd91791 register_sysctl +EXPORT_SYMBOL vmlinux 0x9cdbd933 elv_rb_latter_request +EXPORT_SYMBOL vmlinux 0x9cdfb3f7 sysctl_fb_tunnels_only_for_init_net +EXPORT_SYMBOL vmlinux 0x9ceb6eef kmem_cache_size +EXPORT_SYMBOL vmlinux 0x9cf79bbf input_set_min_poll_interval +EXPORT_SYMBOL vmlinux 0x9d099a39 acpi_remove_gpe_handler +EXPORT_SYMBOL vmlinux 0x9d0d6206 unregister_netdevice_notifier +EXPORT_SYMBOL vmlinux 0x9d2bbfb3 ipv6_sock_mc_drop +EXPORT_SYMBOL vmlinux 0x9d2e7707 unregister_sysrq_key +EXPORT_SYMBOL vmlinux 0x9d3ea74a locks_delete_block +EXPORT_SYMBOL vmlinux 0x9d4f3e0d pcie_relaxed_ordering_enabled +EXPORT_SYMBOL vmlinux 0x9d548d51 rtnl_link_get_net +EXPORT_SYMBOL vmlinux 0x9d563e80 iget5_locked +EXPORT_SYMBOL vmlinux 0x9d61e994 ucs2_strncmp +EXPORT_SYMBOL vmlinux 0x9d6736b0 genl_notify +EXPORT_SYMBOL vmlinux 0x9d6e0951 xfrm_state_check_expire +EXPORT_SYMBOL vmlinux 0x9d70541a native_save_fl +EXPORT_SYMBOL vmlinux 0x9d72ed0d mipi_dsi_dcs_set_display_brightness +EXPORT_SYMBOL vmlinux 0x9d736fa9 input_reset_device +EXPORT_SYMBOL vmlinux 0x9d870d32 param_ops_ulong +EXPORT_SYMBOL vmlinux 0x9d92f3ad __wait_on_bit_lock +EXPORT_SYMBOL vmlinux 0x9d9ea3e5 writeback_inodes_sb_nr +EXPORT_SYMBOL vmlinux 0x9da0f116 ipv6_chk_addr +EXPORT_SYMBOL vmlinux 0x9da4031f hmm_range_fault +EXPORT_SYMBOL vmlinux 0x9dd175cf __inc_node_page_state +EXPORT_SYMBOL vmlinux 0x9dd4f48b dcb_ieee_setapp +EXPORT_SYMBOL vmlinux 0x9de43e24 flow_block_cb_free +EXPORT_SYMBOL vmlinux 0x9de91ac0 md_check_no_bitmap +EXPORT_SYMBOL vmlinux 0x9dea8291 simple_readpage +EXPORT_SYMBOL vmlinux 0x9dee7584 genphy_suspend +EXPORT_SYMBOL vmlinux 0x9e0c711d vzalloc_node +EXPORT_SYMBOL vmlinux 0x9e0fa5ae hsiphash_3u32 +EXPORT_SYMBOL vmlinux 0x9e1233d7 redraw_screen +EXPORT_SYMBOL vmlinux 0x9e13f6f6 gf128mul_lle +EXPORT_SYMBOL vmlinux 0x9e2737f0 acpi_install_interface_handler +EXPORT_SYMBOL vmlinux 0x9e4faeef dm_io_client_destroy +EXPORT_SYMBOL vmlinux 0x9e52c556 tcp_v4_send_check +EXPORT_SYMBOL vmlinux 0x9e61bb05 set_freezable +EXPORT_SYMBOL vmlinux 0x9e64fbfe rtc_cmos_read +EXPORT_SYMBOL vmlinux 0x9e662caa agp_generic_alloc_page +EXPORT_SYMBOL vmlinux 0x9e683f75 __cpu_possible_mask +EXPORT_SYMBOL vmlinux 0x9e6a7971 fscrypt_encrypt_block_inplace +EXPORT_SYMBOL vmlinux 0x9e6e403c sock_alloc +EXPORT_SYMBOL vmlinux 0x9e7d6bd0 __udelay +EXPORT_SYMBOL vmlinux 0x9e83aa85 frontswap_register_ops +EXPORT_SYMBOL vmlinux 0x9e8b74bb serio_interrupt +EXPORT_SYMBOL vmlinux 0x9e92e8f3 tcf_chain_get_by_act +EXPORT_SYMBOL vmlinux 0x9e984096 prepare_to_swait_event +EXPORT_SYMBOL vmlinux 0x9e9b255a pmem_should_map_pages +EXPORT_SYMBOL vmlinux 0x9e9eab95 devcgroup_check_permission +EXPORT_SYMBOL vmlinux 0x9e9fdd9d memunmap +EXPORT_SYMBOL vmlinux 0x9ea53d7f vsnprintf +EXPORT_SYMBOL vmlinux 0x9eab8d85 _raw_write_lock_irq +EXPORT_SYMBOL vmlinux 0x9eacf8a5 kstrndup +EXPORT_SYMBOL vmlinux 0x9eafdfd0 fasync_helper +EXPORT_SYMBOL vmlinux 0x9ec031c4 dst_destroy +EXPORT_SYMBOL vmlinux 0x9ec3c66e unregister_netdevice_queue +EXPORT_SYMBOL vmlinux 0x9ec6ca96 ktime_get_real_ts64 +EXPORT_SYMBOL vmlinux 0x9ed978de vme_lm_set +EXPORT_SYMBOL vmlinux 0x9ef31a67 devm_clk_hw_register_clkdev +EXPORT_SYMBOL vmlinux 0x9f0a8183 pm_vt_switch_required +EXPORT_SYMBOL vmlinux 0x9f0d2b6b inet_stream_connect +EXPORT_SYMBOL vmlinux 0x9f14eb8d devm_devfreq_add_device +EXPORT_SYMBOL vmlinux 0x9f2163ef xp_can_alloc +EXPORT_SYMBOL vmlinux 0x9f35aea6 ipv6_dev_mc_inc +EXPORT_SYMBOL vmlinux 0x9f46ced8 __sw_hweight64 +EXPORT_SYMBOL vmlinux 0x9f4f2aa3 acpi_gbl_FADT +EXPORT_SYMBOL vmlinux 0x9f50b770 keyring_restrict +EXPORT_SYMBOL vmlinux 0x9f520212 dev_queue_xmit_accel +EXPORT_SYMBOL vmlinux 0x9f53ab19 xp_dma_sync_for_device_slow +EXPORT_SYMBOL vmlinux 0x9f54ead7 gro_cells_destroy +EXPORT_SYMBOL vmlinux 0x9f613dbf tcp_req_err +EXPORT_SYMBOL vmlinux 0x9f65c857 ZSTD_checkCParams +EXPORT_SYMBOL vmlinux 0x9f68c218 mroute6_is_socket +EXPORT_SYMBOL vmlinux 0x9f984513 strrchr +EXPORT_SYMBOL vmlinux 0x9fa7184a cancel_delayed_work_sync +EXPORT_SYMBOL vmlinux 0x9fa83152 inet_listen +EXPORT_SYMBOL vmlinux 0x9fb1d0ed uuid_is_valid +EXPORT_SYMBOL vmlinux 0x9fb9a6dc generic_file_mmap +EXPORT_SYMBOL vmlinux 0x9fbf3113 md_cluster_ops +EXPORT_SYMBOL vmlinux 0x9fdecc31 unregister_netdevice_many +EXPORT_SYMBOL vmlinux 0x9fe68751 set_device_ro +EXPORT_SYMBOL vmlinux 0x9feed7ce timer_reduce +EXPORT_SYMBOL vmlinux 0x9ffa3a75 netdev_max_backlog +EXPORT_SYMBOL vmlinux 0xa00aca2a dql_completed +EXPORT_SYMBOL vmlinux 0xa014e292 page_symlink_inode_operations +EXPORT_SYMBOL vmlinux 0xa020f9f0 audit_log_task_context +EXPORT_SYMBOL vmlinux 0xa02aa74a __cond_resched_lock +EXPORT_SYMBOL vmlinux 0xa0436e98 in6addr_linklocal_allnodes +EXPORT_SYMBOL vmlinux 0xa07a37f0 memchr +EXPORT_SYMBOL vmlinux 0xa0801c70 follow_up +EXPORT_SYMBOL vmlinux 0xa084749a __bitmap_or +EXPORT_SYMBOL vmlinux 0xa084f79f cpumask_next_wrap +EXPORT_SYMBOL vmlinux 0xa095e02e generic_check_addressable +EXPORT_SYMBOL vmlinux 0xa0ae1e73 siphash_3u64 +EXPORT_SYMBOL vmlinux 0xa0aefdef padata_do_serial +EXPORT_SYMBOL vmlinux 0xa0b04675 vmalloc_32 +EXPORT_SYMBOL vmlinux 0xa0be646d inode_needs_sync +EXPORT_SYMBOL vmlinux 0xa0c98823 dev_addr_flush +EXPORT_SYMBOL vmlinux 0xa0d56753 generic_remap_file_range_prep +EXPORT_SYMBOL vmlinux 0xa0d73433 phy_loopback +EXPORT_SYMBOL vmlinux 0xa0dad88e netdev_adjacent_get_private +EXPORT_SYMBOL vmlinux 0xa0debf5a __skb_warn_lro_forwarding +EXPORT_SYMBOL vmlinux 0xa0eae826 smp_call_function +EXPORT_SYMBOL vmlinux 0xa0ebd14c sysctl_tcp_mem +EXPORT_SYMBOL vmlinux 0xa0f7805a dev_uc_del +EXPORT_SYMBOL vmlinux 0xa0fbac79 wake_up_bit +EXPORT_SYMBOL vmlinux 0xa1064a3a ethtool_virtdev_set_link_ksettings +EXPORT_SYMBOL vmlinux 0xa10782dc fc_remove_host +EXPORT_SYMBOL vmlinux 0xa108eb4d sysctl_optmem_max +EXPORT_SYMBOL vmlinux 0xa1097db2 nvdimm_namespace_attach_btt +EXPORT_SYMBOL vmlinux 0xa10eea31 inet_csk_reset_keepalive_timer +EXPORT_SYMBOL vmlinux 0xa11a03da udp_pre_connect +EXPORT_SYMBOL vmlinux 0xa120d33c tty_unregister_ldisc +EXPORT_SYMBOL vmlinux 0xa125411a scsi_vpd_lun_id +EXPORT_SYMBOL vmlinux 0xa12aa332 sock_alloc_file +EXPORT_SYMBOL vmlinux 0xa13c9a3e register_nexthop_notifier +EXPORT_SYMBOL vmlinux 0xa13e780a gen_replace_estimator +EXPORT_SYMBOL vmlinux 0xa13f3c52 fscrypt_decrypt_bio +EXPORT_SYMBOL vmlinux 0xa1545e3e sock_no_linger +EXPORT_SYMBOL vmlinux 0xa155c071 ZSTD_compressBegin_usingDict +EXPORT_SYMBOL vmlinux 0xa160d385 wait_on_page_bit +EXPORT_SYMBOL vmlinux 0xa16c8613 _raw_read_unlock_irqrestore +EXPORT_SYMBOL vmlinux 0xa16dc120 padata_start +EXPORT_SYMBOL vmlinux 0xa18a3529 dcb_ieee_getapp_mask +EXPORT_SYMBOL vmlinux 0xa18b42ba bd_start_claiming +EXPORT_SYMBOL vmlinux 0xa193dd2a inet_proto_csum_replace_by_diff +EXPORT_SYMBOL vmlinux 0xa1bedd72 amd_iommu_pc_get_max_counters +EXPORT_SYMBOL vmlinux 0xa1c39e34 __ethtool_get_link_ksettings +EXPORT_SYMBOL vmlinux 0xa1c76e0a _cond_resched +EXPORT_SYMBOL vmlinux 0xa1d5d2a7 netdev_class_remove_file_ns +EXPORT_SYMBOL vmlinux 0xa1d6f556 devm_register_netdev +EXPORT_SYMBOL vmlinux 0xa1d913d9 pci_get_subsys +EXPORT_SYMBOL vmlinux 0xa1f8ac20 find_get_pages_contig +EXPORT_SYMBOL vmlinux 0xa1f9a134 __x86_indirect_thunk_rsi +EXPORT_SYMBOL vmlinux 0xa2060911 inet_current_timestamp +EXPORT_SYMBOL vmlinux 0xa2093aba mr_table_dump +EXPORT_SYMBOL vmlinux 0xa22b7a6e phy_disconnect +EXPORT_SYMBOL vmlinux 0xa2326c49 acpi_remove_table_handler +EXPORT_SYMBOL vmlinux 0xa23b50ef dev_uc_add_excl +EXPORT_SYMBOL vmlinux 0xa24f23d8 __request_module +EXPORT_SYMBOL vmlinux 0xa25b90ab utf8byte +EXPORT_SYMBOL vmlinux 0xa263892b fscrypt_fname_free_buffer +EXPORT_SYMBOL vmlinux 0xa271af92 compat_import_iovec +EXPORT_SYMBOL vmlinux 0xa27981d5 iterate_fd +EXPORT_SYMBOL vmlinux 0xa28cfcc0 gen_estimator_active +EXPORT_SYMBOL vmlinux 0xa29dee58 tty_throttle +EXPORT_SYMBOL vmlinux 0xa2a62cf9 __inet_hash +EXPORT_SYMBOL vmlinux 0xa2c40e9f napi_get_frags +EXPORT_SYMBOL vmlinux 0xa2df2e89 unregister_netdev +EXPORT_SYMBOL vmlinux 0xa2e6455d wait_for_key_construction +EXPORT_SYMBOL vmlinux 0xa2f6616e phy_validate_pause +EXPORT_SYMBOL vmlinux 0xa326f3c2 configfs_depend_item +EXPORT_SYMBOL vmlinux 0xa348496b ip_mc_leave_group +EXPORT_SYMBOL vmlinux 0xa36e0c70 nvdimm_namespace_detach_btt +EXPORT_SYMBOL vmlinux 0xa38f21b9 amd_iommu_update_ga +EXPORT_SYMBOL vmlinux 0xa3ac3dd4 end_buffer_async_write +EXPORT_SYMBOL vmlinux 0xa3fea172 sha224_final +EXPORT_SYMBOL vmlinux 0xa40ff01b acpi_dbg_layer +EXPORT_SYMBOL vmlinux 0xa4191c0b memset_io +EXPORT_SYMBOL vmlinux 0xa4206c48 amd_iommu_complete_ppr +EXPORT_SYMBOL vmlinux 0xa4248a5e xfrm_state_insert +EXPORT_SYMBOL vmlinux 0xa4352b46 set_page_dirty_lock +EXPORT_SYMBOL vmlinux 0xa44470ca clk_add_alias +EXPORT_SYMBOL vmlinux 0xa44b3dce d_obtain_alias +EXPORT_SYMBOL vmlinux 0xa4a165f7 bdev_read_only +EXPORT_SYMBOL vmlinux 0xa4b94fea iowrite8_rep +EXPORT_SYMBOL vmlinux 0xa4ba8c13 alloc_file_pseudo +EXPORT_SYMBOL vmlinux 0xa4c8127c ZSTD_maxCLevel +EXPORT_SYMBOL vmlinux 0xa4d4f0e6 global_cache_flush +EXPORT_SYMBOL vmlinux 0xa4ea7be5 compat_sock_common_getsockopt +EXPORT_SYMBOL vmlinux 0xa4f70eb8 vga_switcheroo_client_probe_defer +EXPORT_SYMBOL vmlinux 0xa4faf62a acpi_disable_gpe +EXPORT_SYMBOL vmlinux 0xa5056338 __hsiphash_aligned +EXPORT_SYMBOL vmlinux 0xa507125e acpi_clear_gpe +EXPORT_SYMBOL vmlinux 0xa50bcff0 x86_cpu_to_apicid +EXPORT_SYMBOL vmlinux 0xa5173b7a iov_iter_alignment +EXPORT_SYMBOL vmlinux 0xa53119e5 vfs_symlink +EXPORT_SYMBOL vmlinux 0xa5350922 __frontswap_test +EXPORT_SYMBOL vmlinux 0xa542e219 register_framebuffer +EXPORT_SYMBOL vmlinux 0xa54f04b4 mipi_dsi_dcs_read +EXPORT_SYMBOL vmlinux 0xa54f2aa6 fbcon_rotate_ud +EXPORT_SYMBOL vmlinux 0xa5507fc5 scsi_eh_restore_cmnd +EXPORT_SYMBOL vmlinux 0xa5526619 rb_insert_color +EXPORT_SYMBOL vmlinux 0xa562364a tcp_rtx_synack +EXPORT_SYMBOL vmlinux 0xa56976aa dump_truncate +EXPORT_SYMBOL vmlinux 0xa56c2089 acpi_bus_unregister_driver +EXPORT_SYMBOL vmlinux 0xa58cc003 mr_mfc_find_any +EXPORT_SYMBOL vmlinux 0xa5956abe ioread64_hi_lo +EXPORT_SYMBOL vmlinux 0xa5976e4f dev_base_lock +EXPORT_SYMBOL vmlinux 0xa5a31d15 dcache_readdir +EXPORT_SYMBOL vmlinux 0xa5ac3e33 ZSTD_DCtxWorkspaceBound +EXPORT_SYMBOL vmlinux 0xa5c0e29f __d_drop +EXPORT_SYMBOL vmlinux 0xa5cff10d register_key_type +EXPORT_SYMBOL vmlinux 0xa5e0ea73 alloc_anon_inode +EXPORT_SYMBOL vmlinux 0xa5e4dc45 add_to_page_cache_locked +EXPORT_SYMBOL vmlinux 0xa5e55057 rdmsrl_safe_on_cpu +EXPORT_SYMBOL vmlinux 0xa5f6229c __page_frag_cache_drain +EXPORT_SYMBOL vmlinux 0xa601e660 agp_generic_alloc_pages +EXPORT_SYMBOL vmlinux 0xa61ced89 qdisc_put_rtab +EXPORT_SYMBOL vmlinux 0xa6257a2f complete +EXPORT_SYMBOL vmlinux 0xa65064d9 ppp_register_compressor +EXPORT_SYMBOL vmlinux 0xa655e1f8 always_delete_dentry +EXPORT_SYMBOL vmlinux 0xa657aac5 __invalidate_device +EXPORT_SYMBOL vmlinux 0xa665ffdc config_item_put +EXPORT_SYMBOL vmlinux 0xa6661a16 inet_add_offload +EXPORT_SYMBOL vmlinux 0xa679eff2 elv_rb_former_request +EXPORT_SYMBOL vmlinux 0xa67c72cc md_update_sb +EXPORT_SYMBOL vmlinux 0xa681fe88 generate_random_uuid +EXPORT_SYMBOL vmlinux 0xa6830031 kern_path_create +EXPORT_SYMBOL vmlinux 0xa6841fb6 tun_ptr_to_xdp +EXPORT_SYMBOL vmlinux 0xa68648ff _dev_err +EXPORT_SYMBOL vmlinux 0xa68a4b08 tcp_make_synack +EXPORT_SYMBOL vmlinux 0xa69e1715 blkdev_issue_write_same +EXPORT_SYMBOL vmlinux 0xa6b04536 ip6_frag_next +EXPORT_SYMBOL vmlinux 0xa6c79e42 of_find_backlight +EXPORT_SYMBOL vmlinux 0xa6e1ff55 mipi_dsi_compression_mode +EXPORT_SYMBOL vmlinux 0xa6ef3c15 open_exec +EXPORT_SYMBOL vmlinux 0xa6f41b8c dst_release +EXPORT_SYMBOL vmlinux 0xa6f7de30 loop_register_transfer +EXPORT_SYMBOL vmlinux 0xa7015553 devm_ioport_map +EXPORT_SYMBOL vmlinux 0xa70489e1 vme_irq_generate +EXPORT_SYMBOL vmlinux 0xa70fabbe release_evntsel_nmi +EXPORT_SYMBOL vmlinux 0xa7200706 skb_prepare_seq_read +EXPORT_SYMBOL vmlinux 0xa724e175 kmem_cache_destroy +EXPORT_SYMBOL vmlinux 0xa72cfb7d ioremap_wt +EXPORT_SYMBOL vmlinux 0xa72d220b sock_pfree +EXPORT_SYMBOL vmlinux 0xa73629d9 dquot_quota_sync +EXPORT_SYMBOL vmlinux 0xa74c9877 refcount_dec_and_rtnl_lock +EXPORT_SYMBOL vmlinux 0xa75b1d33 __netdev_alloc_skb +EXPORT_SYMBOL vmlinux 0xa77048f8 flow_indr_block_cb_alloc +EXPORT_SYMBOL vmlinux 0xa77bfd29 register_inet6addr_validator_notifier +EXPORT_SYMBOL vmlinux 0xa77c6c73 sk_alloc +EXPORT_SYMBOL vmlinux 0xa78477db jbd2_journal_release_jbd_inode +EXPORT_SYMBOL vmlinux 0xa7a13952 km_state_expired +EXPORT_SYMBOL vmlinux 0xa7c340bf get_unmapped_area +EXPORT_SYMBOL vmlinux 0xa7d2df5c security_inode_setsecctx +EXPORT_SYMBOL vmlinux 0xa7d5f92e ida_destroy +EXPORT_SYMBOL vmlinux 0xa7e38f12 flow_keys_basic_dissector +EXPORT_SYMBOL vmlinux 0xa7eedcc4 call_usermodehelper +EXPORT_SYMBOL vmlinux 0xa805ecfc acpi_release_global_lock +EXPORT_SYMBOL vmlinux 0xa80c370d agp_create_memory +EXPORT_SYMBOL vmlinux 0xa8181adf proc_dointvec +EXPORT_SYMBOL vmlinux 0xa82209fb inet_dgram_ops +EXPORT_SYMBOL vmlinux 0xa8304ff7 dma_async_device_unregister +EXPORT_SYMBOL vmlinux 0xa8306b78 scaled_ppm_to_ppb +EXPORT_SYMBOL vmlinux 0xa836ba02 wrmsr_safe_regs +EXPORT_SYMBOL vmlinux 0xa8375bae __inc_zone_page_state +EXPORT_SYMBOL vmlinux 0xa8409802 find_get_pages_range_tag +EXPORT_SYMBOL vmlinux 0xa843805a get_unused_fd_flags +EXPORT_SYMBOL vmlinux 0xa8461b4e __netlink_ns_capable +EXPORT_SYMBOL vmlinux 0xa84ce9e0 crypto_aes_inv_sbox +EXPORT_SYMBOL vmlinux 0xa853396b xa_extract +EXPORT_SYMBOL vmlinux 0xa85a3e6d xa_load +EXPORT_SYMBOL vmlinux 0xa8694ecd kblockd_schedule_work +EXPORT_SYMBOL vmlinux 0xa88ca5d8 inet_shutdown +EXPORT_SYMBOL vmlinux 0xa88cd466 mr_mfc_find_any_parent +EXPORT_SYMBOL vmlinux 0xa897e3e7 mempool_free +EXPORT_SYMBOL vmlinux 0xa8b9a07f put_cmsg_scm_timestamping64 +EXPORT_SYMBOL vmlinux 0xa8caa845 clk_bulk_put_all +EXPORT_SYMBOL vmlinux 0xa8cf28f8 scsi_is_fc_rport +EXPORT_SYMBOL vmlinux 0xa8d4e6e3 ipv6_setsockopt +EXPORT_SYMBOL vmlinux 0xa8e6933a qdf2400_e44_present +EXPORT_SYMBOL vmlinux 0xa8e96166 d_find_any_alias +EXPORT_SYMBOL vmlinux 0xa8ed1d84 bioset_init +EXPORT_SYMBOL vmlinux 0xa8ef21f5 sock_no_getname +EXPORT_SYMBOL vmlinux 0xa8f250d7 netif_set_real_num_rx_queues +EXPORT_SYMBOL vmlinux 0xa8f34cbb get_user_pages +EXPORT_SYMBOL vmlinux 0xa8f6c843 ip_frag_ecn_table +EXPORT_SYMBOL vmlinux 0xa8fa8da0 sg_miter_next +EXPORT_SYMBOL vmlinux 0xa90ca0de flush_rcu_work +EXPORT_SYMBOL vmlinux 0xa916b694 strnlen +EXPORT_SYMBOL vmlinux 0xa92537f5 phy_set_sym_pause +EXPORT_SYMBOL vmlinux 0xa92e440e sock_diag_put_filterinfo +EXPORT_SYMBOL vmlinux 0xa92fcfb3 blkdev_issue_zeroout +EXPORT_SYMBOL vmlinux 0xa931af8a asm_load_gs_index +EXPORT_SYMBOL vmlinux 0xa934bc4b flow_get_u32_dst +EXPORT_SYMBOL vmlinux 0xa9359a74 dev_pick_tx_cpu_id +EXPORT_SYMBOL vmlinux 0xa9428692 generic_splice_sendpage +EXPORT_SYMBOL vmlinux 0xa946f0f1 dev_get_port_parent_id +EXPORT_SYMBOL vmlinux 0xa94a09bb mem_section +EXPORT_SYMBOL vmlinux 0xa94c9322 end_buffer_write_sync +EXPORT_SYMBOL vmlinux 0xa965ca81 reciprocal_value +EXPORT_SYMBOL vmlinux 0xa969bb53 udp_push_pending_frames +EXPORT_SYMBOL vmlinux 0xa96db665 config_item_get_unless_zero +EXPORT_SYMBOL vmlinux 0xa97463c9 __siphash_aligned +EXPORT_SYMBOL vmlinux 0xa9785b49 cpu_core_map +EXPORT_SYMBOL vmlinux 0xa97ccd4c eth_header_parse_protocol +EXPORT_SYMBOL vmlinux 0xa9860fee pnp_device_attach +EXPORT_SYMBOL vmlinux 0xa98bb873 iov_iter_for_each_range +EXPORT_SYMBOL vmlinux 0xa99b39c2 prandom_bytes +EXPORT_SYMBOL vmlinux 0xa99ebdc5 scsi_device_get +EXPORT_SYMBOL vmlinux 0xa9a8e17f arch_phys_wc_add +EXPORT_SYMBOL vmlinux 0xa9bfd9bb scsi_get_host_dev +EXPORT_SYMBOL vmlinux 0xa9c056fc mdiobus_read +EXPORT_SYMBOL vmlinux 0xa9c72303 amd_iommu_pc_get_max_banks +EXPORT_SYMBOL vmlinux 0xa9d17303 follow_pfn +EXPORT_SYMBOL vmlinux 0xa9ec88c8 tty_port_put +EXPORT_SYMBOL vmlinux 0xaa00fdc0 ec_transaction +EXPORT_SYMBOL vmlinux 0xaa03cd0e __phy_read_mmd +EXPORT_SYMBOL vmlinux 0xaa173c25 iov_iter_pipe +EXPORT_SYMBOL vmlinux 0xaa20bf48 set_pages_array_wb +EXPORT_SYMBOL vmlinux 0xaa2bb0f4 inet6_del_protocol +EXPORT_SYMBOL vmlinux 0xaa341905 acpi_bios_exception +EXPORT_SYMBOL vmlinux 0xaa6f23ad rfkill_get_led_trigger_name +EXPORT_SYMBOL vmlinux 0xaa78aae1 fs_param_is_u32 +EXPORT_SYMBOL vmlinux 0xaa8a4b75 pps_unregister_source +EXPORT_SYMBOL vmlinux 0xaa985d10 gnet_stats_finish_copy +EXPORT_SYMBOL vmlinux 0xaaa4b9bc hchacha_block_generic +EXPORT_SYMBOL vmlinux 0xaaba6272 vga_con +EXPORT_SYMBOL vmlinux 0xaacd2b4c serial8250_do_pm +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 0xaadfa06d __skb_checksum_complete_head +EXPORT_SYMBOL vmlinux 0xaae0f6c0 read_cache_pages +EXPORT_SYMBOL vmlinux 0xaae4cc30 __xfrm_init_state +EXPORT_SYMBOL vmlinux 0xaae8ab0e acpi_bus_power_manageable +EXPORT_SYMBOL vmlinux 0xaafa9e88 irq_set_chip +EXPORT_SYMBOL vmlinux 0xaafd2abd xp_dma_map +EXPORT_SYMBOL vmlinux 0xaafdad1a is_nd_btt +EXPORT_SYMBOL vmlinux 0xaafdc258 strcasecmp +EXPORT_SYMBOL vmlinux 0xab020dc1 xfrm_if_register_cb +EXPORT_SYMBOL vmlinux 0xab04615b config_group_find_item +EXPORT_SYMBOL vmlinux 0xab3697e4 irq_poll_init +EXPORT_SYMBOL vmlinux 0xab3b75ea vme_dma_pattern_attribute +EXPORT_SYMBOL vmlinux 0xab521094 tcp_simple_retransmit +EXPORT_SYMBOL vmlinux 0xab600421 probe_irq_off +EXPORT_SYMBOL vmlinux 0xab61d4d6 pagevec_lookup_range_nr_tag +EXPORT_SYMBOL vmlinux 0xab63baa5 unregister_inetaddr_validator_notifier +EXPORT_SYMBOL vmlinux 0xab65ed80 set_memory_uc +EXPORT_SYMBOL vmlinux 0xab67a0ac dql_init +EXPORT_SYMBOL vmlinux 0xab735372 ipmi_dmi_get_slave_addr +EXPORT_SYMBOL vmlinux 0xab781570 fb_get_options +EXPORT_SYMBOL vmlinux 0xab7b8e68 __x86_retpoline_rbx +EXPORT_SYMBOL vmlinux 0xab824bc2 dcb_ieee_getapp_dscp_prio_mask_map +EXPORT_SYMBOL vmlinux 0xab84db39 eth_get_headlen +EXPORT_SYMBOL vmlinux 0xab9d4ce5 netlink_rcv_skb +EXPORT_SYMBOL vmlinux 0xab9dcfe5 genphy_loopback +EXPORT_SYMBOL vmlinux 0xaba48b1a fscrypt_encrypt_pagecache_blocks +EXPORT_SYMBOL vmlinux 0xaba81805 xps_rxqs_needed +EXPORT_SYMBOL vmlinux 0xaba89465 dev_uc_add +EXPORT_SYMBOL vmlinux 0xabad09b4 input_release_device +EXPORT_SYMBOL vmlinux 0xabb403cd xfrm_lookup +EXPORT_SYMBOL vmlinux 0xabc3ab6e pfifo_fast_ops +EXPORT_SYMBOL vmlinux 0xabce866f fscrypt_free_bounce_page +EXPORT_SYMBOL vmlinux 0xabeaa102 bio_reset +EXPORT_SYMBOL vmlinux 0xabf32f29 utf16s_to_utf8s +EXPORT_SYMBOL vmlinux 0xabfa2c6d remove_proc_entry +EXPORT_SYMBOL vmlinux 0xabfd3968 __phy_resume +EXPORT_SYMBOL vmlinux 0xac14f5d0 inet_frag_kill +EXPORT_SYMBOL vmlinux 0xac1a55be unregister_reboot_notifier +EXPORT_SYMBOL vmlinux 0xac3201b0 udp_flow_hashrnd +EXPORT_SYMBOL vmlinux 0xac37d28d ipv6_mc_check_icmpv6 +EXPORT_SYMBOL vmlinux 0xac39f58c md_wakeup_thread +EXPORT_SYMBOL vmlinux 0xac43b4cb __serio_register_driver +EXPORT_SYMBOL vmlinux 0xac537ac2 percpu_counter_destroy +EXPORT_SYMBOL vmlinux 0xac54fc8e xfrm_state_delete_tunnel +EXPORT_SYMBOL vmlinux 0xac5fcec0 in4_pton +EXPORT_SYMBOL vmlinux 0xac8597d5 mb_cache_entry_get +EXPORT_SYMBOL vmlinux 0xac94e86b vsprintf +EXPORT_SYMBOL vmlinux 0xac9bc87d blk_mq_delay_run_hw_queue +EXPORT_SYMBOL vmlinux 0xac9d2b69 pci_set_mwi +EXPORT_SYMBOL vmlinux 0xaca27222 xfrm_parse_spi +EXPORT_SYMBOL vmlinux 0xaca5ac89 reuseport_select_sock +EXPORT_SYMBOL vmlinux 0xaca88385 ptp_find_pin_unlocked +EXPORT_SYMBOL vmlinux 0xacaa4c72 dma_fence_match_context +EXPORT_SYMBOL vmlinux 0xacab29b7 seq_hlist_start_percpu +EXPORT_SYMBOL vmlinux 0xacbd42c1 configfs_unregister_subsystem +EXPORT_SYMBOL vmlinux 0xacc6acc0 neigh_update +EXPORT_SYMBOL vmlinux 0xacd646cb generic_writepages +EXPORT_SYMBOL vmlinux 0xacd6628d __scsi_execute +EXPORT_SYMBOL vmlinux 0xacd81eb3 jbd2_inode_cache +EXPORT_SYMBOL vmlinux 0xace0653f kernel_sock_shutdown +EXPORT_SYMBOL vmlinux 0xacec07d7 bio_clone_fast +EXPORT_SYMBOL vmlinux 0xacf4d843 match_strdup +EXPORT_SYMBOL vmlinux 0xacf649bf audit_log_task_info +EXPORT_SYMBOL vmlinux 0xacfa56fd mdio_device_register +EXPORT_SYMBOL vmlinux 0xad0413d4 match_hex +EXPORT_SYMBOL vmlinux 0xad1036a2 amd_iommu_activate_guest_mode +EXPORT_SYMBOL vmlinux 0xad1cbbfc d_alloc_name +EXPORT_SYMBOL vmlinux 0xad2265f6 param_set_ullong +EXPORT_SYMBOL vmlinux 0xad2573e2 flow_indr_dev_register +EXPORT_SYMBOL vmlinux 0xad2951a9 ex_handler_rdmsr_unsafe +EXPORT_SYMBOL vmlinux 0xad536c91 x86_cpu_to_acpiid +EXPORT_SYMBOL vmlinux 0xad57b5c8 remap_pfn_range +EXPORT_SYMBOL vmlinux 0xad600e19 bio_list_copy_data +EXPORT_SYMBOL vmlinux 0xad6ba40e radix_tree_tag_get +EXPORT_SYMBOL vmlinux 0xad73041f autoremove_wake_function +EXPORT_SYMBOL vmlinux 0xad7680cc inode_init_once +EXPORT_SYMBOL vmlinux 0xad84bef8 dm_table_event +EXPORT_SYMBOL vmlinux 0xad96eea2 ppp_input_error +EXPORT_SYMBOL vmlinux 0xad9901ae bit_waitqueue +EXPORT_SYMBOL vmlinux 0xad995dac netdev_stats_to_stats64 +EXPORT_SYMBOL vmlinux 0xada31e57 gen_pool_dma_alloc_align +EXPORT_SYMBOL vmlinux 0xada3b38c nf_register_queue_handler +EXPORT_SYMBOL vmlinux 0xadaa5eea sched_autogroup_detach +EXPORT_SYMBOL vmlinux 0xadb8d6c3 agp_alloc_page_array +EXPORT_SYMBOL vmlinux 0xadbeed61 mipi_dsi_packet_format_is_long +EXPORT_SYMBOL vmlinux 0xadc044b7 vfio_set_irqs_validate_and_prepare +EXPORT_SYMBOL vmlinux 0xadc3b37d get_phy_device +EXPORT_SYMBOL vmlinux 0xadc694de xfrm_sad_getinfo +EXPORT_SYMBOL vmlinux 0xadcba50b ZSTD_findFrameCompressedSize +EXPORT_SYMBOL vmlinux 0xadd139d4 rfs_needed +EXPORT_SYMBOL vmlinux 0xadd5321b iov_iter_get_pages_alloc +EXPORT_SYMBOL vmlinux 0xadf7e900 scsi_partsize +EXPORT_SYMBOL vmlinux 0xadfdfcef __bitmap_andnot +EXPORT_SYMBOL vmlinux 0xae04012c __vmalloc +EXPORT_SYMBOL vmlinux 0xae1e5ab0 tcf_block_get_ext +EXPORT_SYMBOL vmlinux 0xae304a66 backlight_device_register +EXPORT_SYMBOL vmlinux 0xae316c11 icmpv6_err_convert +EXPORT_SYMBOL vmlinux 0xae39b076 arp_xmit +EXPORT_SYMBOL vmlinux 0xae4bb066 pci_clear_master +EXPORT_SYMBOL vmlinux 0xae5a04bb acpi_evaluate_dsm +EXPORT_SYMBOL vmlinux 0xae64f7c1 mr_vif_seq_idx +EXPORT_SYMBOL vmlinux 0xae7e3a35 mutex_trylock_recursive +EXPORT_SYMBOL vmlinux 0xae8ca7a1 simple_dir_operations +EXPORT_SYMBOL vmlinux 0xae9f392a xfrm6_input_addr +EXPORT_SYMBOL vmlinux 0xaeac049a generate_random_guid +EXPORT_SYMBOL vmlinux 0xaeb9a253 xfrm_init_state +EXPORT_SYMBOL vmlinux 0xaeba72a5 kobject_get +EXPORT_SYMBOL vmlinux 0xaebd12f0 acpi_get_name +EXPORT_SYMBOL vmlinux 0xaec60722 abort_creds +EXPORT_SYMBOL vmlinux 0xaec7332d __nlmsg_put +EXPORT_SYMBOL vmlinux 0xaecaf43b kill_anon_super +EXPORT_SYMBOL vmlinux 0xaecfc86a balance_dirty_pages_ratelimited +EXPORT_SYMBOL vmlinux 0xaed98bd9 xfrm_policy_flush +EXPORT_SYMBOL vmlinux 0xaefd61ef dev_get_stats +EXPORT_SYMBOL vmlinux 0xaeffce6d ip_sock_set_mtu_discover +EXPORT_SYMBOL vmlinux 0xaf1bad42 udp_skb_destructor +EXPORT_SYMBOL vmlinux 0xaf2b1a9a jbd2_journal_update_sb_errno +EXPORT_SYMBOL vmlinux 0xaf354bbe cpu_tss_rw +EXPORT_SYMBOL vmlinux 0xaf3dd7dc scsi_logging_level +EXPORT_SYMBOL vmlinux 0xaf6b0d18 udp_disconnect +EXPORT_SYMBOL vmlinux 0xaf7aad5c follow_down +EXPORT_SYMBOL vmlinux 0xaf7c561a filp_close +EXPORT_SYMBOL vmlinux 0xaf860121 ip_fraglist_prepare +EXPORT_SYMBOL vmlinux 0xaf86a124 locks_remove_posix +EXPORT_SYMBOL vmlinux 0xaf929d4d _dev_notice +EXPORT_SYMBOL vmlinux 0xaf9e45e0 filemap_fdatawait_range_keep_errors +EXPORT_SYMBOL vmlinux 0xafa11c9a devm_clk_release_clkdev +EXPORT_SYMBOL vmlinux 0xafa72d6a amd_iommu_enable_device_erratum +EXPORT_SYMBOL vmlinux 0xafa939ed set_pages_uc +EXPORT_SYMBOL vmlinux 0xafb8c6ff copy_user_generic_string +EXPORT_SYMBOL vmlinux 0xafce6df7 inode_init_always +EXPORT_SYMBOL vmlinux 0xafd5ff2c amd_iommu_v2_supported +EXPORT_SYMBOL vmlinux 0xafe39237 fscrypt_decrypt_block_inplace +EXPORT_SYMBOL vmlinux 0xafe8ec9b clkdev_hw_alloc +EXPORT_SYMBOL vmlinux 0xaff99550 configfs_register_subsystem +EXPORT_SYMBOL vmlinux 0xb003da3d phy_queue_state_machine +EXPORT_SYMBOL vmlinux 0xb009f252 may_umount +EXPORT_SYMBOL vmlinux 0xb015617e mdio_bus_type +EXPORT_SYMBOL vmlinux 0xb01bebf9 xfrm_get_acqseq +EXPORT_SYMBOL vmlinux 0xb026e5e6 xfrm_state_lookup +EXPORT_SYMBOL vmlinux 0xb027e298 xfrm_state_alloc +EXPORT_SYMBOL vmlinux 0xb030ea9b inc_zone_page_state +EXPORT_SYMBOL vmlinux 0xb05fc310 sysctl_rmem_max +EXPORT_SYMBOL vmlinux 0xb061a98a mutex_lock_killable +EXPORT_SYMBOL vmlinux 0xb0630b77 kfree_skb_list +EXPORT_SYMBOL vmlinux 0xb089ab27 inet6_unregister_protosw +EXPORT_SYMBOL vmlinux 0xb08d45d5 fbcon_set_tileops +EXPORT_SYMBOL vmlinux 0xb0a0da0c rational_best_approximation +EXPORT_SYMBOL vmlinux 0xb0aed408 ZSTD_compressStream +EXPORT_SYMBOL vmlinux 0xb0b8d836 nf_log_packet +EXPORT_SYMBOL vmlinux 0xb0c5e247 lockref_put_return +EXPORT_SYMBOL vmlinux 0xb0e10781 get_option +EXPORT_SYMBOL vmlinux 0xb0e602eb memmove +EXPORT_SYMBOL vmlinux 0xb0f0f0f7 flow_block_cb_alloc +EXPORT_SYMBOL vmlinux 0xb0f389ee utf8_normalize +EXPORT_SYMBOL vmlinux 0xb101a40b netpoll_parse_options +EXPORT_SYMBOL vmlinux 0xb10e7df4 __kfifo_dma_in_prepare +EXPORT_SYMBOL vmlinux 0xb119a6f8 ndisc_mc_map +EXPORT_SYMBOL vmlinux 0xb121390a probe_irq_on +EXPORT_SYMBOL vmlinux 0xb12cbacb fb_unregister_client +EXPORT_SYMBOL vmlinux 0xb1481ad7 sb_min_blocksize +EXPORT_SYMBOL vmlinux 0xb14ab1ef hdmi_audio_infoframe_init +EXPORT_SYMBOL vmlinux 0xb14fc46a find_next_clump8 +EXPORT_SYMBOL vmlinux 0xb16900ad cmdline_parts_parse +EXPORT_SYMBOL vmlinux 0xb18470da rtnl_kfree_skbs +EXPORT_SYMBOL vmlinux 0xb191ebcd vm_map_pages +EXPORT_SYMBOL vmlinux 0xb19a5453 __per_cpu_offset +EXPORT_SYMBOL vmlinux 0xb19adaeb register_netdev +EXPORT_SYMBOL vmlinux 0xb1a5ab8c on_each_cpu_cond +EXPORT_SYMBOL vmlinux 0xb1b54874 module_layout +EXPORT_SYMBOL vmlinux 0xb1c3a01a oops_in_progress +EXPORT_SYMBOL vmlinux 0xb1ddf995 jiffies_64_to_clock_t +EXPORT_SYMBOL vmlinux 0xb1e12d81 krealloc +EXPORT_SYMBOL vmlinux 0xb202ddf8 pcie_set_mps +EXPORT_SYMBOL vmlinux 0xb2106728 bio_put +EXPORT_SYMBOL vmlinux 0xb219760e ilookup5_nowait +EXPORT_SYMBOL vmlinux 0xb219d56c wbinvd_on_cpu +EXPORT_SYMBOL vmlinux 0xb22e16d5 radix_tree_maybe_preload +EXPORT_SYMBOL vmlinux 0xb2471866 acpi_dev_get_first_match_dev +EXPORT_SYMBOL vmlinux 0xb27b5a85 devfreq_monitor_start +EXPORT_SYMBOL vmlinux 0xb2838c95 netdev_pick_tx +EXPORT_SYMBOL vmlinux 0xb28b8b55 ps2_sliced_command +EXPORT_SYMBOL vmlinux 0xb2a7d731 pin_user_pages_locked +EXPORT_SYMBOL vmlinux 0xb2bcb088 acpi_current_gpe_count +EXPORT_SYMBOL vmlinux 0xb2cd1801 unregister_tcf_proto_ops +EXPORT_SYMBOL vmlinux 0xb2d12488 nf_register_sockopt +EXPORT_SYMBOL vmlinux 0xb2eb5844 inet_frags_fini +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 0xb30894e3 ip_check_defrag +EXPORT_SYMBOL vmlinux 0xb308c97d wait_woken +EXPORT_SYMBOL vmlinux 0xb30b9822 vme_master_set +EXPORT_SYMBOL vmlinux 0xb320cc0e sg_init_one +EXPORT_SYMBOL vmlinux 0xb322274c xfrm_input_unregister_afinfo +EXPORT_SYMBOL vmlinux 0xb326cf79 cdev_alloc +EXPORT_SYMBOL vmlinux 0xb328549d __nla_reserve_nohdr +EXPORT_SYMBOL vmlinux 0xb3390819 task_work_add +EXPORT_SYMBOL vmlinux 0xb3419c6f vme_irq_request +EXPORT_SYMBOL vmlinux 0xb349737d module_refcount +EXPORT_SYMBOL vmlinux 0xb34cd6a2 tcf_idr_create_from_flags +EXPORT_SYMBOL vmlinux 0xb352177e find_first_bit +EXPORT_SYMBOL vmlinux 0xb35e2943 pci_disable_link_state_locked +EXPORT_SYMBOL vmlinux 0xb3635b01 _raw_spin_lock_bh +EXPORT_SYMBOL vmlinux 0xb3687850 out_of_line_wait_on_bit_lock +EXPORT_SYMBOL vmlinux 0xb3863a67 acpi_set_gpe_wake_mask +EXPORT_SYMBOL vmlinux 0xb38776a5 tcf_get_next_chain +EXPORT_SYMBOL vmlinux 0xb390aae1 fqdir_init +EXPORT_SYMBOL vmlinux 0xb39ee9e6 no_llseek +EXPORT_SYMBOL vmlinux 0xb3a2dfdf nmi_panic +EXPORT_SYMBOL vmlinux 0xb3bc21dc fbcon_set_rotate +EXPORT_SYMBOL vmlinux 0xb3c0bb3e __hw_addr_ref_unsync_dev +EXPORT_SYMBOL vmlinux 0xb3c5cc79 pci_find_bus +EXPORT_SYMBOL vmlinux 0xb3c83a75 flow_rule_alloc +EXPORT_SYMBOL vmlinux 0xb3c87859 page_zero_new_buffers +EXPORT_SYMBOL vmlinux 0xb3c8ab50 sock_enable_timestamps +EXPORT_SYMBOL vmlinux 0xb3cecaf1 md_bitmap_end_sync +EXPORT_SYMBOL vmlinux 0xb3d2c76d scsi_hostbyte_string +EXPORT_SYMBOL vmlinux 0xb3dd8cee vm_mmap +EXPORT_SYMBOL vmlinux 0xb3f548ad kmemdup_nul +EXPORT_SYMBOL vmlinux 0xb3f7646e kthread_should_stop +EXPORT_SYMBOL vmlinux 0xb4043948 acpi_execute_simple_method +EXPORT_SYMBOL vmlinux 0xb407a9aa input_mt_assign_slots +EXPORT_SYMBOL vmlinux 0xb417f082 kstrtos8_from_user +EXPORT_SYMBOL vmlinux 0xb423dba1 console_blanked +EXPORT_SYMBOL vmlinux 0xb42e1f2a bd_finish_claiming +EXPORT_SYMBOL vmlinux 0xb442fc11 bdev_stack_limits +EXPORT_SYMBOL vmlinux 0xb4498dcb param_set_invbool +EXPORT_SYMBOL vmlinux 0xb44999ea km_query +EXPORT_SYMBOL vmlinux 0xb44ad4b3 _copy_to_user +EXPORT_SYMBOL vmlinux 0xb4577003 acpi_dev_present +EXPORT_SYMBOL vmlinux 0xb468268f genphy_write_mmd_unsupported +EXPORT_SYMBOL vmlinux 0xb47cca30 csum_ipv6_magic +EXPORT_SYMBOL vmlinux 0xb48d4d22 security_sb_eat_lsm_opts +EXPORT_SYMBOL vmlinux 0xb4985beb ZSTD_resetCStream +EXPORT_SYMBOL vmlinux 0xb49d543d tcp_select_initial_window +EXPORT_SYMBOL vmlinux 0xb4ce61f1 xfrm4_rcv_encap +EXPORT_SYMBOL vmlinux 0xb4d58ef9 devm_request_any_context_irq +EXPORT_SYMBOL vmlinux 0xb4f13d2a abort +EXPORT_SYMBOL vmlinux 0xb5003fef tcp_poll +EXPORT_SYMBOL vmlinux 0xb52ee8be intel_gtt_clear_range +EXPORT_SYMBOL vmlinux 0xb53f2810 tcp_sockets_allocated +EXPORT_SYMBOL vmlinux 0xb5512aea jbd2_journal_clear_features +EXPORT_SYMBOL vmlinux 0xb5522f9c md_handle_request +EXPORT_SYMBOL vmlinux 0xb56a7b6b dump_skip +EXPORT_SYMBOL vmlinux 0xb57343c2 frontswap_shrink +EXPORT_SYMBOL vmlinux 0xb5826efc vfio_pin_pages +EXPORT_SYMBOL vmlinux 0xb58386ac __ip_select_ident +EXPORT_SYMBOL vmlinux 0xb58aeaab kernel_cpustat +EXPORT_SYMBOL vmlinux 0xb59ea399 __generic_file_fsync +EXPORT_SYMBOL vmlinux 0xb5a41049 no_seek_end_llseek +EXPORT_SYMBOL vmlinux 0xb5a459dc unregister_blkdev +EXPORT_SYMBOL vmlinux 0xb5aa7165 dma_pool_destroy +EXPORT_SYMBOL vmlinux 0xb5e19bc9 generic_write_end +EXPORT_SYMBOL vmlinux 0xb5e1e3bb pci_iomap_range +EXPORT_SYMBOL vmlinux 0xb5e73116 flush_delayed_work +EXPORT_SYMBOL vmlinux 0xb601be4c __x86_indirect_thunk_rdx +EXPORT_SYMBOL vmlinux 0xb618bcef devfreq_unregister_opp_notifier +EXPORT_SYMBOL vmlinux 0xb629b357 del_random_ready_callback +EXPORT_SYMBOL vmlinux 0xb633f115 irq_poll_enable +EXPORT_SYMBOL vmlinux 0xb638e566 qdisc_tree_reduce_backlog +EXPORT_SYMBOL vmlinux 0xb63bb80a call_usermodehelper_exec +EXPORT_SYMBOL vmlinux 0xb63d8f92 km_policy_notify +EXPORT_SYMBOL vmlinux 0xb654ef65 acpi_os_read_port +EXPORT_SYMBOL vmlinux 0xb66dbabb sock_create_kern +EXPORT_SYMBOL vmlinux 0xb6727267 phy_find_first +EXPORT_SYMBOL vmlinux 0xb674a534 acpi_unmap_cpu +EXPORT_SYMBOL vmlinux 0xb678366f int_sqrt +EXPORT_SYMBOL vmlinux 0xb67a84bf xp_free +EXPORT_SYMBOL vmlinux 0xb67baae2 nla_reserve +EXPORT_SYMBOL vmlinux 0xb67c9280 utf8cursor +EXPORT_SYMBOL vmlinux 0xb67fec0e uuid_parse +EXPORT_SYMBOL vmlinux 0xb68103ef _dev_crit +EXPORT_SYMBOL vmlinux 0xb691b964 __bread_gfp +EXPORT_SYMBOL vmlinux 0xb6936ffe _bcd2bin +EXPORT_SYMBOL vmlinux 0xb6a68816 find_last_bit +EXPORT_SYMBOL vmlinux 0xb6acaa13 phy_sfp_detach +EXPORT_SYMBOL vmlinux 0xb6cc5e6c pci_enable_msi +EXPORT_SYMBOL vmlinux 0xb70a7a75 simple_transaction_release +EXPORT_SYMBOL vmlinux 0xb71892c0 config_item_get +EXPORT_SYMBOL vmlinux 0xb72577a8 nd_pfn_probe +EXPORT_SYMBOL vmlinux 0xb7330418 scsi_report_bus_reset +EXPORT_SYMBOL vmlinux 0xb737b185 gen_pool_best_fit +EXPORT_SYMBOL vmlinux 0xb738f73d dev_get_by_napi_id +EXPORT_SYMBOL vmlinux 0xb74fba17 page_pool_alloc_pages +EXPORT_SYMBOL vmlinux 0xb7593ddc iosf_mbi_unregister_pmic_bus_access_notifier +EXPORT_SYMBOL vmlinux 0xb778ed0b xfrm_policy_hash_rebuild +EXPORT_SYMBOL vmlinux 0xb77e153b proc_create_data +EXPORT_SYMBOL vmlinux 0xb78debe3 LZ4_decompress_fast_usingDict +EXPORT_SYMBOL vmlinux 0xb79ca728 key_alloc +EXPORT_SYMBOL vmlinux 0xb79dacd0 tc_setup_cb_call +EXPORT_SYMBOL vmlinux 0xb7b065cf serio_bus +EXPORT_SYMBOL vmlinux 0xb7c0f443 sort +EXPORT_SYMBOL vmlinux 0xb7c6db70 sysctl_max_skb_frags +EXPORT_SYMBOL vmlinux 0xb7e2ecc0 register_netdevice_notifier_net +EXPORT_SYMBOL vmlinux 0xb7eebe78 inode_owner_or_capable +EXPORT_SYMBOL vmlinux 0xb7fff9ed seq_put_decimal_ull +EXPORT_SYMBOL vmlinux 0xb80f0009 udp_poll +EXPORT_SYMBOL vmlinux 0xb80f9ec9 kthread_create_worker +EXPORT_SYMBOL vmlinux 0xb814e18a on_each_cpu_mask +EXPORT_SYMBOL vmlinux 0xb82215d1 __tcf_idr_release +EXPORT_SYMBOL vmlinux 0xb822e064 dma_find_channel +EXPORT_SYMBOL vmlinux 0xb82bfbc0 inet_addr_type +EXPORT_SYMBOL vmlinux 0xb82ca0d2 inet_stream_ops +EXPORT_SYMBOL vmlinux 0xb83129db ZSTD_decompressContinue +EXPORT_SYMBOL vmlinux 0xb8341e6b simple_fill_super +EXPORT_SYMBOL vmlinux 0xb8497bcd vfs_dedupe_file_range_one +EXPORT_SYMBOL vmlinux 0xb85e4963 sock_no_connect +EXPORT_SYMBOL vmlinux 0xb868ac5c register_sysrq_key +EXPORT_SYMBOL vmlinux 0xb86f74c5 free_cpumask_var +EXPORT_SYMBOL vmlinux 0xb8746229 flow_rule_match_basic +EXPORT_SYMBOL vmlinux 0xb8785ac1 netpoll_cleanup +EXPORT_SYMBOL vmlinux 0xb882f048 dev_uc_sync +EXPORT_SYMBOL vmlinux 0xb88df7b7 netdev_has_upper_dev_all_rcu +EXPORT_SYMBOL vmlinux 0xb88eaa2b current_in_userns +EXPORT_SYMBOL vmlinux 0xb89b0396 dquot_alloc +EXPORT_SYMBOL vmlinux 0xb89b6e6b guid_parse +EXPORT_SYMBOL vmlinux 0xb8b043f2 kfree_link +EXPORT_SYMBOL vmlinux 0xb8b9f817 kmalloc_order_trace +EXPORT_SYMBOL vmlinux 0xb8e107fc __blkdev_issue_discard +EXPORT_SYMBOL vmlinux 0xb8e7ce2c __put_user_8 +EXPORT_SYMBOL vmlinux 0xb8f2f10d ipv6_getsockopt +EXPORT_SYMBOL vmlinux 0xb9056bb6 remove_conflicting_framebuffers +EXPORT_SYMBOL vmlinux 0xb907513f unpoison_memory +EXPORT_SYMBOL vmlinux 0xb910deab security_binder_transfer_file +EXPORT_SYMBOL vmlinux 0xb911bb58 minmax_running_max +EXPORT_SYMBOL vmlinux 0xb9146101 __dec_node_page_state +EXPORT_SYMBOL vmlinux 0xb9181df5 tty_port_block_til_ready +EXPORT_SYMBOL vmlinux 0xb92c503c fscrypt_free_inode +EXPORT_SYMBOL vmlinux 0xb9369eae tty_devnum +EXPORT_SYMBOL vmlinux 0xb9383acc __sync_dirty_buffer +EXPORT_SYMBOL vmlinux 0xb94339c4 qdisc_put_stab +EXPORT_SYMBOL vmlinux 0xb949e109 locks_copy_conflock +EXPORT_SYMBOL vmlinux 0xb96555fc __cancel_dirty_page +EXPORT_SYMBOL vmlinux 0xb97220ff bitmap_parse +EXPORT_SYMBOL vmlinux 0xb97f7045 acpi_install_gpe_handler +EXPORT_SYMBOL vmlinux 0xb9ad6464 kobject_add +EXPORT_SYMBOL vmlinux 0xb9af1d0d __xa_clear_mark +EXPORT_SYMBOL vmlinux 0xb9c02dff reuseport_add_sock +EXPORT_SYMBOL vmlinux 0xb9c272a2 __sb_end_write +EXPORT_SYMBOL vmlinux 0xb9c5b238 __sk_mem_reduce_allocated +EXPORT_SYMBOL vmlinux 0xb9d111b2 unregister_md_personality +EXPORT_SYMBOL vmlinux 0xb9e276cf wrmsr_safe_regs_on_cpu +EXPORT_SYMBOL vmlinux 0xb9e70d1c tty_do_resize +EXPORT_SYMBOL vmlinux 0xb9e7429c memcpy_toio +EXPORT_SYMBOL vmlinux 0xb9e8e2cc in6addr_sitelocal_allrouters +EXPORT_SYMBOL vmlinux 0xb9eb355d set_bh_page +EXPORT_SYMBOL vmlinux 0xba0973db pnp_release_card_device +EXPORT_SYMBOL vmlinux 0xba0c5665 get_thermal_instance +EXPORT_SYMBOL vmlinux 0xba1008c8 __crc32c_le +EXPORT_SYMBOL vmlinux 0xba1d27e7 user_path_at_empty +EXPORT_SYMBOL vmlinux 0xba1e14e1 pci_pme_active +EXPORT_SYMBOL vmlinux 0xba2c0f03 fc_vport_create +EXPORT_SYMBOL vmlinux 0xba38d8ba starget_for_each_device +EXPORT_SYMBOL vmlinux 0xba497f13 loops_per_jiffy +EXPORT_SYMBOL vmlinux 0xba62ca60 pskb_extract +EXPORT_SYMBOL vmlinux 0xba6f4aab simple_release_fs +EXPORT_SYMBOL vmlinux 0xbac2214b finish_open +EXPORT_SYMBOL vmlinux 0xbad3ed77 netdev_refcnt_read +EXPORT_SYMBOL vmlinux 0xbadcaade blk_set_default_limits +EXPORT_SYMBOL vmlinux 0xbaf86c90 icmp_ndo_send +EXPORT_SYMBOL vmlinux 0xbaffff96 ZSTD_CStreamWorkspaceBound +EXPORT_SYMBOL vmlinux 0xbb0540aa zlib_inflateReset +EXPORT_SYMBOL vmlinux 0xbb05e732 sg_miter_skip +EXPORT_SYMBOL vmlinux 0xbb13595e smp_call_function_many +EXPORT_SYMBOL vmlinux 0xbb15ca46 d_mark_dontcache +EXPORT_SYMBOL vmlinux 0xbb22e990 mipi_dsi_set_maximum_return_packet_size +EXPORT_SYMBOL vmlinux 0xbb24f607 init_cdrom_command +EXPORT_SYMBOL vmlinux 0xbb35675b __bitmap_intersects +EXPORT_SYMBOL vmlinux 0xbb444a42 pci_bus_read_config_byte +EXPORT_SYMBOL vmlinux 0xbb45ba35 pci_alloc_dev +EXPORT_SYMBOL vmlinux 0xbb4afb78 scsi_dma_map +EXPORT_SYMBOL vmlinux 0xbb4f4766 simple_write_to_buffer +EXPORT_SYMBOL vmlinux 0xbb4f92ee t10_pi_type1_crc +EXPORT_SYMBOL vmlinux 0xbb754160 param_get_ushort +EXPORT_SYMBOL vmlinux 0xbb792ab6 pci_set_master +EXPORT_SYMBOL vmlinux 0xbb85ae61 security_sctp_bind_connect +EXPORT_SYMBOL vmlinux 0xbb8e169a vga_switcheroo_handler_flags +EXPORT_SYMBOL vmlinux 0xbbb01e30 fifo_set_limit +EXPORT_SYMBOL vmlinux 0xbbb4c486 configfs_remove_default_groups +EXPORT_SYMBOL vmlinux 0xbbbf2ab7 io_uring_get_socket +EXPORT_SYMBOL vmlinux 0xbbc273a9 scsi_report_opcode +EXPORT_SYMBOL vmlinux 0xbbd94d88 fib_notifier_ops_register +EXPORT_SYMBOL vmlinux 0xbbdbdbda dmaengine_get_unmap_data +EXPORT_SYMBOL vmlinux 0xbbe0b6ce tcp_sock_set_keepidle +EXPORT_SYMBOL vmlinux 0xbbe80fdb kmalloc_order +EXPORT_SYMBOL vmlinux 0xbbfdf7ed tcp_recvmsg +EXPORT_SYMBOL vmlinux 0xbc02b8f3 get_agp_version +EXPORT_SYMBOL vmlinux 0xbc06d1f7 dev_loopback_xmit +EXPORT_SYMBOL vmlinux 0xbc081cb5 dmam_free_coherent +EXPORT_SYMBOL vmlinux 0xbc2031de acpi_processor_get_bios_limit +EXPORT_SYMBOL vmlinux 0xbc25f7cc free_contig_range +EXPORT_SYMBOL vmlinux 0xbc2fc5de ppp_unregister_compressor +EXPORT_SYMBOL vmlinux 0xbc4199d7 tcf_exts_dump_stats +EXPORT_SYMBOL vmlinux 0xbc50aef7 filemap_check_errors +EXPORT_SYMBOL vmlinux 0xbc69128e ipv6_push_frag_opts +EXPORT_SYMBOL vmlinux 0xbc7bb9d9 pci_scan_root_bus +EXPORT_SYMBOL vmlinux 0xbc8126e3 proc_symlink +EXPORT_SYMBOL vmlinux 0xbc8687f8 textsearch_find_continuous +EXPORT_SYMBOL vmlinux 0xbcab6ee6 sscanf +EXPORT_SYMBOL vmlinux 0xbcb34473 __dynamic_dev_dbg +EXPORT_SYMBOL vmlinux 0xbcba1c47 skb_orphan_partial +EXPORT_SYMBOL vmlinux 0xbcbdf60f kstrtos8 +EXPORT_SYMBOL vmlinux 0xbcc308bb strnlen_user +EXPORT_SYMBOL vmlinux 0xbccf3f29 phy_device_remove +EXPORT_SYMBOL vmlinux 0xbcd5f841 __hw_addr_ref_sync_dev +EXPORT_SYMBOL vmlinux 0xbcead5e1 netlink_unicast +EXPORT_SYMBOL vmlinux 0xbd076ec6 netif_receive_skb +EXPORT_SYMBOL vmlinux 0xbd09e016 blk_set_runtime_active +EXPORT_SYMBOL vmlinux 0xbd1e61b9 tcp_openreq_init_rwin +EXPORT_SYMBOL vmlinux 0xbd364716 input_get_keycode +EXPORT_SYMBOL vmlinux 0xbd462b55 __kfifo_init +EXPORT_SYMBOL vmlinux 0xbd6841d4 crc16 +EXPORT_SYMBOL vmlinux 0xbd6940b4 pci_read_config_dword +EXPORT_SYMBOL vmlinux 0xbd78d62e ns_capable_setid +EXPORT_SYMBOL vmlinux 0xbda5ba09 jbd2_transaction_committed +EXPORT_SYMBOL vmlinux 0xbdbd3e93 __cleancache_invalidate_page +EXPORT_SYMBOL vmlinux 0xbdc881fe blk_mq_start_hw_queues +EXPORT_SYMBOL vmlinux 0xbdec321c i8042_install_filter +EXPORT_SYMBOL vmlinux 0xbdeeb714 skb_unlink +EXPORT_SYMBOL vmlinux 0xbdf764b0 bd_abort_claiming +EXPORT_SYMBOL vmlinux 0xbdfb6dbb __fentry__ +EXPORT_SYMBOL vmlinux 0xbe0110e7 acpi_set_gpe +EXPORT_SYMBOL vmlinux 0xbe104c33 phy_detach +EXPORT_SYMBOL vmlinux 0xbe2f93f8 devfreq_remove_governor +EXPORT_SYMBOL vmlinux 0xbe31b1c1 flow_rule_match_mpls +EXPORT_SYMBOL vmlinux 0xbe460f5b mnt_set_expiry +EXPORT_SYMBOL vmlinux 0xbe4839c7 scsi_cmd_ioctl +EXPORT_SYMBOL vmlinux 0xbe49252c acpi_os_write_port +EXPORT_SYMBOL vmlinux 0xbe4eb6ed secure_dccpv6_sequence_number +EXPORT_SYMBOL vmlinux 0xbe5a24e9 xxh32_copy_state +EXPORT_SYMBOL vmlinux 0xbe6a866f __wait_on_bit +EXPORT_SYMBOL vmlinux 0xbe7e05a8 acpi_tb_install_and_load_table +EXPORT_SYMBOL vmlinux 0xbea72db4 ptp_clock_unregister +EXPORT_SYMBOL vmlinux 0xbeb9e6d1 iov_iter_init +EXPORT_SYMBOL vmlinux 0xbebb6ea2 input_event +EXPORT_SYMBOL vmlinux 0xbebfb2c9 mdiobus_write +EXPORT_SYMBOL vmlinux 0xbed4a9a8 blkdev_fsync +EXPORT_SYMBOL vmlinux 0xbed70a5a __skb_gso_segment +EXPORT_SYMBOL vmlinux 0xbedadc20 free_buffer_head +EXPORT_SYMBOL vmlinux 0xbee73d44 blackhole_netdev +EXPORT_SYMBOL vmlinux 0xbef43296 console_conditional_schedule +EXPORT_SYMBOL vmlinux 0xbefa51a3 gen_pool_add_owner +EXPORT_SYMBOL vmlinux 0xbefcb867 lock_sock_fast +EXPORT_SYMBOL vmlinux 0xbf0524b7 alloc_buffer_head +EXPORT_SYMBOL vmlinux 0xbf0bee9b agp_generic_alloc_by_type +EXPORT_SYMBOL vmlinux 0xbf1f7007 vga_remove_vgacon +EXPORT_SYMBOL vmlinux 0xbf3193ec acpi_unregister_ioapic +EXPORT_SYMBOL vmlinux 0xbf322f09 sk_stream_wait_connect +EXPORT_SYMBOL vmlinux 0xbf468098 d_set_d_op +EXPORT_SYMBOL vmlinux 0xbf4e0305 ip_tunnel_get_iflink +EXPORT_SYMBOL vmlinux 0xbf59c419 posix_acl_init +EXPORT_SYMBOL vmlinux 0xbf6c5ff1 dev_pm_opp_register_notifier +EXPORT_SYMBOL vmlinux 0xbf706438 pv_ops +EXPORT_SYMBOL vmlinux 0xbf70f166 blk_mq_end_request +EXPORT_SYMBOL vmlinux 0xbf7a3bd8 seg6_hmac_net_init +EXPORT_SYMBOL vmlinux 0xbf7a95e3 try_lookup_one_len +EXPORT_SYMBOL vmlinux 0xbf7d40da __alloc_disk_node +EXPORT_SYMBOL vmlinux 0xbf91234b param_get_long +EXPORT_SYMBOL vmlinux 0xbf99fdb0 copy_page_to_iter +EXPORT_SYMBOL vmlinux 0xbf9bcc8d __cap_empty_set +EXPORT_SYMBOL vmlinux 0xbfa6b701 xfrm_unregister_type +EXPORT_SYMBOL vmlinux 0xbfa75018 scsi_remove_device +EXPORT_SYMBOL vmlinux 0xbfafba40 gnet_stats_start_copy +EXPORT_SYMBOL vmlinux 0xbfb3936c __neigh_create +EXPORT_SYMBOL vmlinux 0xbfc177bc iowrite32_rep +EXPORT_SYMBOL vmlinux 0xbfd73a5e create_empty_buffers +EXPORT_SYMBOL vmlinux 0xbfd92b67 cdrom_mode_select +EXPORT_SYMBOL vmlinux 0xbfdcb43a __x86_indirect_thunk_r11 +EXPORT_SYMBOL vmlinux 0xbfee3ad5 loop_unregister_transfer +EXPORT_SYMBOL vmlinux 0xc0041424 done_path_create +EXPORT_SYMBOL vmlinux 0xc0055509 __sb_start_write +EXPORT_SYMBOL vmlinux 0xc0100211 __skb_free_datagram_locked +EXPORT_SYMBOL vmlinux 0xc01e3fd6 skb_add_rx_frag +EXPORT_SYMBOL vmlinux 0xc025016c flow_keys_dissector +EXPORT_SYMBOL vmlinux 0xc03a0906 pci_disable_msi +EXPORT_SYMBOL vmlinux 0xc05e65f6 mark_info_dirty +EXPORT_SYMBOL vmlinux 0xc06c5fe6 pnp_unregister_card_driver +EXPORT_SYMBOL vmlinux 0xc072d788 request_firmware_into_buf +EXPORT_SYMBOL vmlinux 0xc0732d30 __cpuhp_setup_state_cpuslocked +EXPORT_SYMBOL vmlinux 0xc0763484 rfkill_blocked +EXPORT_SYMBOL vmlinux 0xc079fcbc vfs_parse_fs_string +EXPORT_SYMBOL vmlinux 0xc07b0863 fb_destroy_modedb +EXPORT_SYMBOL vmlinux 0xc080d581 dquot_resume +EXPORT_SYMBOL vmlinux 0xc0810ee3 generic_parse_monolithic +EXPORT_SYMBOL vmlinux 0xc096e23d hdmi_drm_infoframe_init +EXPORT_SYMBOL vmlinux 0xc0a3d105 find_next_bit +EXPORT_SYMBOL vmlinux 0xc0b2664d devlink_dpipe_header_ipv4 +EXPORT_SYMBOL vmlinux 0xc0bca0f1 ZSTD_nextSrcSizeToDecompress +EXPORT_SYMBOL vmlinux 0xc0be1ed8 ns_capable_noaudit +EXPORT_SYMBOL vmlinux 0xc0ce6e49 iov_iter_revert +EXPORT_SYMBOL vmlinux 0xc0d5feee vfs_statx +EXPORT_SYMBOL vmlinux 0xc0f249a2 neigh_ifdown +EXPORT_SYMBOL vmlinux 0xc0f518c5 sock_alloc_send_skb +EXPORT_SYMBOL vmlinux 0xc0f79560 inet_dev_addr_type +EXPORT_SYMBOL vmlinux 0xc0ff12fb nla_strdup +EXPORT_SYMBOL vmlinux 0xc111ae64 intel_gtt_get +EXPORT_SYMBOL vmlinux 0xc1179daa kstrtou8_from_user +EXPORT_SYMBOL vmlinux 0xc117ba16 dquot_operations +EXPORT_SYMBOL vmlinux 0xc11a0494 sk_stream_wait_memory +EXPORT_SYMBOL vmlinux 0xc1351bf9 vfs_readlink +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 0xc156c981 refcount_dec_and_mutex_lock +EXPORT_SYMBOL vmlinux 0xc16410b9 ZSTD_getDictID_fromDDict +EXPORT_SYMBOL vmlinux 0xc16be39d iter_div_u64_rem +EXPORT_SYMBOL vmlinux 0xc172f2f5 write_cache_pages +EXPORT_SYMBOL vmlinux 0xc181ad40 inet_ioctl +EXPORT_SYMBOL vmlinux 0xc1848059 xsk_umem_uses_need_wakeup +EXPORT_SYMBOL vmlinux 0xc1967ef0 __neigh_set_probe_once +EXPORT_SYMBOL vmlinux 0xc1a9f1bc input_mt_destroy_slots +EXPORT_SYMBOL vmlinux 0xc1aeb5d0 fs_param_is_string +EXPORT_SYMBOL vmlinux 0xc1baaafb napi_disable +EXPORT_SYMBOL vmlinux 0xc1c679d8 neigh_direct_output +EXPORT_SYMBOL vmlinux 0xc1d62eb6 posix_acl_chmod +EXPORT_SYMBOL vmlinux 0xc1d8cfaf __fdget +EXPORT_SYMBOL vmlinux 0xc20c5dc0 devm_devfreq_register_opp_notifier +EXPORT_SYMBOL vmlinux 0xc228637b flow_rule_match_ports +EXPORT_SYMBOL vmlinux 0xc22b62a7 vm_map_ram +EXPORT_SYMBOL vmlinux 0xc22e4848 alloc_pages_current +EXPORT_SYMBOL vmlinux 0xc2424641 agp3_generic_cleanup +EXPORT_SYMBOL vmlinux 0xc24672aa input_register_handler +EXPORT_SYMBOL vmlinux 0xc267960e utf8_validate +EXPORT_SYMBOL vmlinux 0xc26b2bdb dm_io +EXPORT_SYMBOL vmlinux 0xc26b5ae8 blk_queue_bounce_limit +EXPORT_SYMBOL vmlinux 0xc273f343 copy_string_kernel +EXPORT_SYMBOL vmlinux 0xc278c965 cpu_all_bits +EXPORT_SYMBOL vmlinux 0xc29957c3 __x86_indirect_thunk_rcx +EXPORT_SYMBOL vmlinux 0xc29bf967 strspn +EXPORT_SYMBOL vmlinux 0xc29d943d pci_bus_read_dev_vendor_id +EXPORT_SYMBOL vmlinux 0xc2a17ebe seqno_fence_ops +EXPORT_SYMBOL vmlinux 0xc2c7e94f netdev_printk +EXPORT_SYMBOL vmlinux 0xc2e587d1 reset_devices +EXPORT_SYMBOL vmlinux 0xc2f5e100 input_set_abs_params +EXPORT_SYMBOL vmlinux 0xc2f80126 ip_tunnel_header_ops +EXPORT_SYMBOL vmlinux 0xc306c3a8 page_frag_alloc +EXPORT_SYMBOL vmlinux 0xc309553a unregister_cdrom +EXPORT_SYMBOL vmlinux 0xc30d219c page_pool_update_nid +EXPORT_SYMBOL vmlinux 0xc310b981 strnstr +EXPORT_SYMBOL vmlinux 0xc319bc54 build_skb +EXPORT_SYMBOL vmlinux 0xc31be6c0 inode_newsize_ok +EXPORT_SYMBOL vmlinux 0xc31ca6fd fc_vport_terminate +EXPORT_SYMBOL vmlinux 0xc31db0ce is_vmalloc_addr +EXPORT_SYMBOL vmlinux 0xc32c71af register_inetaddr_validator_notifier +EXPORT_SYMBOL vmlinux 0xc335bf93 dcache_dir_open +EXPORT_SYMBOL vmlinux 0xc348f77d jbd2_journal_init_jbd_inode +EXPORT_SYMBOL vmlinux 0xc35aab72 blk_mq_alloc_tag_set +EXPORT_SYMBOL vmlinux 0xc36645de flow_indr_dev_unregister +EXPORT_SYMBOL vmlinux 0xc36a3bd4 __acpi_handle_debug +EXPORT_SYMBOL vmlinux 0xc36e3739 filemap_fdatawait_keep_errors +EXPORT_SYMBOL vmlinux 0xc3762aec mempool_alloc +EXPORT_SYMBOL vmlinux 0xc37706ba get_task_exe_file +EXPORT_SYMBOL vmlinux 0xc377a105 tcp_mtup_init +EXPORT_SYMBOL vmlinux 0xc37f9c6e cpufreq_update_policy +EXPORT_SYMBOL vmlinux 0xc3801231 pci_fixup_cardbus +EXPORT_SYMBOL vmlinux 0xc38c83b8 mod_timer +EXPORT_SYMBOL vmlinux 0xc393bf9c pcie_get_mps +EXPORT_SYMBOL vmlinux 0xc3942966 override_creds +EXPORT_SYMBOL vmlinux 0xc3aaf0a9 __put_user_1 +EXPORT_SYMBOL vmlinux 0xc3bc72ad trace_print_array_seq +EXPORT_SYMBOL vmlinux 0xc3c6b5ed inet_get_local_port_range +EXPORT_SYMBOL vmlinux 0xc3cee300 scsi_command_normalize_sense +EXPORT_SYMBOL vmlinux 0xc3e033e7 d_instantiate_anon +EXPORT_SYMBOL vmlinux 0xc3eecada param_ops_invbool +EXPORT_SYMBOL vmlinux 0xc3f1dd72 nf_unregister_net_hooks +EXPORT_SYMBOL vmlinux 0xc3ff38c2 down_read_trylock +EXPORT_SYMBOL vmlinux 0xc41bc980 iwe_stream_add_value +EXPORT_SYMBOL vmlinux 0xc41e3748 mipi_dsi_dcs_set_display_off +EXPORT_SYMBOL vmlinux 0xc4212ab9 qdisc_class_hash_insert +EXPORT_SYMBOL vmlinux 0xc42182fa fbcon_rotate_ccw +EXPORT_SYMBOL vmlinux 0xc42dcb99 acpi_evaluate_ost +EXPORT_SYMBOL vmlinux 0xc4437721 __cgroup_bpf_run_filter_sk +EXPORT_SYMBOL vmlinux 0xc45448c6 agp_generic_enable +EXPORT_SYMBOL vmlinux 0xc4777aa9 __ctzsi2 +EXPORT_SYMBOL vmlinux 0xc47f6f15 buffer_check_dirty_writeback +EXPORT_SYMBOL vmlinux 0xc4ae915e arch_touch_nmi_watchdog +EXPORT_SYMBOL vmlinux 0xc4affd92 dev_mc_del +EXPORT_SYMBOL vmlinux 0xc4b5e277 serio_unregister_port +EXPORT_SYMBOL vmlinux 0xc4b9a595 xfrm_alloc_spi +EXPORT_SYMBOL vmlinux 0xc4d76adb xfrm_find_acq +EXPORT_SYMBOL vmlinux 0xc4e94e7e seq_put_decimal_ll +EXPORT_SYMBOL vmlinux 0xc4ef257f config_group_init_type_name +EXPORT_SYMBOL vmlinux 0xc4f109b0 skb_put +EXPORT_SYMBOL vmlinux 0xc4f7ba54 generic_pipe_buf_release +EXPORT_SYMBOL vmlinux 0xc50db700 jbd2_journal_inode_ranged_wait +EXPORT_SYMBOL vmlinux 0xc528a49a queued_write_lock_slowpath +EXPORT_SYMBOL vmlinux 0xc52935d7 jbd2__journal_start +EXPORT_SYMBOL vmlinux 0xc5355348 nd_region_release_lane +EXPORT_SYMBOL vmlinux 0xc535c395 tcp_sock_set_keepintvl +EXPORT_SYMBOL vmlinux 0xc5447536 inet_sendmsg +EXPORT_SYMBOL vmlinux 0xc5476af6 config_item_init_type_name +EXPORT_SYMBOL vmlinux 0xc5534d64 ioread16 +EXPORT_SYMBOL vmlinux 0xc558530d profile_pc +EXPORT_SYMBOL vmlinux 0xc55ae7d5 pci_bus_set_ops +EXPORT_SYMBOL vmlinux 0xc5731c7a tty_unlock +EXPORT_SYMBOL vmlinux 0xc57709d4 unpin_user_page +EXPORT_SYMBOL vmlinux 0xc57c48a3 idr_get_next +EXPORT_SYMBOL vmlinux 0xc5850110 printk +EXPORT_SYMBOL vmlinux 0xc5985255 tcf_classify +EXPORT_SYMBOL vmlinux 0xc599a772 security_xfrm_state_delete +EXPORT_SYMBOL vmlinux 0xc5b68b16 blkdev_get +EXPORT_SYMBOL vmlinux 0xc5b6f236 queue_work_on +EXPORT_SYMBOL vmlinux 0xc5d60a9a iommu_get_dma_cookie +EXPORT_SYMBOL vmlinux 0xc5d9c46c agp_try_unsupported_boot +EXPORT_SYMBOL vmlinux 0xc5e4a5d1 cpumask_next +EXPORT_SYMBOL vmlinux 0xc5e5573a frame_vector_to_pages +EXPORT_SYMBOL vmlinux 0xc5e74216 release_resource +EXPORT_SYMBOL vmlinux 0xc5f7e801 sg_last +EXPORT_SYMBOL vmlinux 0xc5fb9006 __skb_checksum_complete +EXPORT_SYMBOL vmlinux 0xc6055c9e kvasprintf_const +EXPORT_SYMBOL vmlinux 0xc6087183 tty_port_init +EXPORT_SYMBOL vmlinux 0xc60d0620 __num_online_cpus +EXPORT_SYMBOL vmlinux 0xc61ca65e iowrite64be_hi_lo +EXPORT_SYMBOL vmlinux 0xc62a0f00 mipi_dsi_dcs_get_display_brightness +EXPORT_SYMBOL vmlinux 0xc62ecea0 bh_submit_read +EXPORT_SYMBOL vmlinux 0xc631580a console_unlock +EXPORT_SYMBOL vmlinux 0xc633d82d phy_unregister_fixup +EXPORT_SYMBOL vmlinux 0xc63fbfc3 dquot_load_quota_inode +EXPORT_SYMBOL vmlinux 0xc655840d seg6_hmac_net_exit +EXPORT_SYMBOL vmlinux 0xc65e4e97 secure_dccp_sequence_number +EXPORT_SYMBOL vmlinux 0xc666a132 crc_t10dif +EXPORT_SYMBOL vmlinux 0xc66828d6 gro_find_complete_by_type +EXPORT_SYMBOL vmlinux 0xc66a8304 cpu_rmap_add +EXPORT_SYMBOL vmlinux 0xc66d919f dm_table_get_mode +EXPORT_SYMBOL vmlinux 0xc683ab59 iov_iter_npages +EXPORT_SYMBOL vmlinux 0xc6910aa0 do_trace_rdpmc +EXPORT_SYMBOL vmlinux 0xc695b98a phy_attached_info_irq +EXPORT_SYMBOL vmlinux 0xc6aa2ab6 gnet_stats_copy_app +EXPORT_SYMBOL vmlinux 0xc6be83fc dquot_claim_space_nodirty +EXPORT_SYMBOL vmlinux 0xc6c9278c d_genocide +EXPORT_SYMBOL vmlinux 0xc6cb465a __kfifo_max_r +EXPORT_SYMBOL vmlinux 0xc6cbbc89 capable +EXPORT_SYMBOL vmlinux 0xc6cd1207 xfrm_policy_destroy +EXPORT_SYMBOL vmlinux 0xc6d09aa9 release_firmware +EXPORT_SYMBOL vmlinux 0xc6d824b6 mdiobus_alloc_size +EXPORT_SYMBOL vmlinux 0xc6e37a6d dqget +EXPORT_SYMBOL vmlinux 0xc6e93b50 filemap_map_pages +EXPORT_SYMBOL vmlinux 0xc6eaca16 vfs_iter_write +EXPORT_SYMBOL vmlinux 0xc6ee6ded request_key_rcu +EXPORT_SYMBOL vmlinux 0xc6f46339 init_timer_key +EXPORT_SYMBOL vmlinux 0xc6fcc6ce locks_free_lock +EXPORT_SYMBOL vmlinux 0xc708f1fe ec_write +EXPORT_SYMBOL vmlinux 0xc7124dda pcix_get_max_mmrbc +EXPORT_SYMBOL vmlinux 0xc717a15f __d_lookup_done +EXPORT_SYMBOL vmlinux 0xc71b6eea proc_set_size +EXPORT_SYMBOL vmlinux 0xc71e6be2 xfrm_register_type +EXPORT_SYMBOL vmlinux 0xc7208c3a serial8250_resume_port +EXPORT_SYMBOL vmlinux 0xc723069c blkdev_get_by_dev +EXPORT_SYMBOL vmlinux 0xc72a751b inet_frag_destroy +EXPORT_SYMBOL vmlinux 0xc72b3569 security_skb_classify_flow +EXPORT_SYMBOL vmlinux 0xc7342dff bio_alloc_bioset +EXPORT_SYMBOL vmlinux 0xc73ff5e2 compat_ptr_ioctl +EXPORT_SYMBOL vmlinux 0xc75c5d5a pci_match_id +EXPORT_SYMBOL vmlinux 0xc77db502 vga_switcheroo_client_fb_set +EXPORT_SYMBOL vmlinux 0xc781bd9f rfkill_resume_polling +EXPORT_SYMBOL vmlinux 0xc7856a3d inet6addr_notifier_call_chain +EXPORT_SYMBOL vmlinux 0xc78590cb get_user_pages_locked +EXPORT_SYMBOL vmlinux 0xc79bcd36 dm_vcalloc +EXPORT_SYMBOL vmlinux 0xc7a4d90f fc_remote_port_rolechg +EXPORT_SYMBOL vmlinux 0xc7a4fbed rtnl_lock +EXPORT_SYMBOL vmlinux 0xc7bb994c blkdev_issue_flush +EXPORT_SYMBOL vmlinux 0xc7c1107a LZ4_decompress_safe +EXPORT_SYMBOL vmlinux 0xc7c3568e refresh_frequency_limits +EXPORT_SYMBOL vmlinux 0xc7d029c9 backlight_device_get_by_type +EXPORT_SYMBOL vmlinux 0xc7d094b5 dm_read_arg_group +EXPORT_SYMBOL vmlinux 0xc7dc7d16 udp_lib_unhash +EXPORT_SYMBOL vmlinux 0xc7e7aa23 timestamp_truncate +EXPORT_SYMBOL vmlinux 0xc7e8f57e genphy_setup_forced +EXPORT_SYMBOL vmlinux 0xc809570f unix_get_socket +EXPORT_SYMBOL vmlinux 0xc80ab559 swake_up_one +EXPORT_SYMBOL vmlinux 0xc81e91a8 napi_busy_loop +EXPORT_SYMBOL vmlinux 0xc81f25fc sock_cmsg_send +EXPORT_SYMBOL vmlinux 0xc8220186 revalidate_disk +EXPORT_SYMBOL vmlinux 0xc82fb2d7 dm_put_device +EXPORT_SYMBOL vmlinux 0xc84a0a7e seq_hlist_start_rcu +EXPORT_SYMBOL vmlinux 0xc858a614 nla_reserve_nohdr +EXPORT_SYMBOL vmlinux 0xc869ac89 xfrm_policy_walk +EXPORT_SYMBOL vmlinux 0xc872fd85 in6addr_interfacelocal_allnodes +EXPORT_SYMBOL vmlinux 0xc88132b9 mark_page_accessed +EXPORT_SYMBOL vmlinux 0xc8827b75 sysctl_vals +EXPORT_SYMBOL vmlinux 0xc890c008 zlib_deflateEnd +EXPORT_SYMBOL vmlinux 0xc89488f0 netdev_unbind_sb_channel +EXPORT_SYMBOL vmlinux 0xc89cc1a1 genphy_c37_config_aneg +EXPORT_SYMBOL vmlinux 0xc89d9490 I_BDEV +EXPORT_SYMBOL vmlinux 0xc8a91ad0 tcf_block_put +EXPORT_SYMBOL vmlinux 0xc8a91f5b cpumask_local_spread +EXPORT_SYMBOL vmlinux 0xc8e7622c inetpeer_invalidate_tree +EXPORT_SYMBOL vmlinux 0xc8f15401 fb_pan_display +EXPORT_SYMBOL vmlinux 0xc9216a82 recalibrate_cpu_khz +EXPORT_SYMBOL vmlinux 0xc93e8461 acpi_get_event_resources +EXPORT_SYMBOL vmlinux 0xc93e98d9 dev_set_group +EXPORT_SYMBOL vmlinux 0xc940036d acpi_bus_get_device +EXPORT_SYMBOL vmlinux 0xc95225c2 mnt_drop_write_file +EXPORT_SYMBOL vmlinux 0xc9577148 dma_direct_unmap_page +EXPORT_SYMBOL vmlinux 0xc959d152 __stack_chk_fail +EXPORT_SYMBOL vmlinux 0xc95afd08 seq_lseek +EXPORT_SYMBOL vmlinux 0xc9634df9 in6addr_linklocal_allrouters +EXPORT_SYMBOL vmlinux 0xc972449f mempool_alloc_slab +EXPORT_SYMBOL vmlinux 0xc9822234 clk_register_clkdev +EXPORT_SYMBOL vmlinux 0xc98ed63a register_console +EXPORT_SYMBOL vmlinux 0xc9b559a1 skb_checksum_trimmed +EXPORT_SYMBOL vmlinux 0xc9c9183a phy_ethtool_get_link_ksettings +EXPORT_SYMBOL vmlinux 0xc9df055a xfrm_policy_walk_init +EXPORT_SYMBOL vmlinux 0xc9f34c1d acpi_acquire_global_lock +EXPORT_SYMBOL vmlinux 0xca046610 pci_read_config_word +EXPORT_SYMBOL vmlinux 0xca15413f ZSTD_resetDStream +EXPORT_SYMBOL vmlinux 0xca1ea2c7 blk_set_stacking_limits +EXPORT_SYMBOL vmlinux 0xca21ebd3 bitmap_free +EXPORT_SYMBOL vmlinux 0xca2ee96f find_inode_rcu +EXPORT_SYMBOL vmlinux 0xca34e43f filemap_flush +EXPORT_SYMBOL vmlinux 0xca3d5485 __alloc_skb +EXPORT_SYMBOL vmlinux 0xca402250 inet_frag_reasm_finish +EXPORT_SYMBOL vmlinux 0xca431c05 wake_bit_function +EXPORT_SYMBOL vmlinux 0xca486c02 fifo_create_dflt +EXPORT_SYMBOL vmlinux 0xca786268 dma_direct_sync_single_for_cpu +EXPORT_SYMBOL vmlinux 0xca7edf54 generic_fadvise +EXPORT_SYMBOL vmlinux 0xca83d6f0 blk_integrity_merge_rq +EXPORT_SYMBOL vmlinux 0xca8d5369 param_ops_short +EXPORT_SYMBOL vmlinux 0xca8db3d5 __remove_inode_hash +EXPORT_SYMBOL vmlinux 0xca8f97cd vfs_ioctl +EXPORT_SYMBOL vmlinux 0xca9360b5 rb_next +EXPORT_SYMBOL vmlinux 0xca9beaa4 __xa_store +EXPORT_SYMBOL vmlinux 0xca9ecad0 register_netdevice +EXPORT_SYMBOL vmlinux 0xcaad46de forget_cached_acl +EXPORT_SYMBOL vmlinux 0xcaae6162 pci_request_selected_regions_exclusive +EXPORT_SYMBOL vmlinux 0xcacc0f9c sock_register +EXPORT_SYMBOL vmlinux 0xcad1aca8 acpi_exception +EXPORT_SYMBOL vmlinux 0xcadbe31a tc_setup_cb_add +EXPORT_SYMBOL vmlinux 0xcae5c2ea flow_rule_match_meta +EXPORT_SYMBOL vmlinux 0xcae88f64 dput +EXPORT_SYMBOL vmlinux 0xcaf2c603 scsi_sd_pm_domain +EXPORT_SYMBOL vmlinux 0xcb0387f8 pci_lost_interrupt +EXPORT_SYMBOL vmlinux 0xcb26aebd get_amd_iommu +EXPORT_SYMBOL vmlinux 0xcb3ae215 call_blocking_lsm_notifier +EXPORT_SYMBOL vmlinux 0xcb3b1fd2 blk_integrity_register +EXPORT_SYMBOL vmlinux 0xcb45b139 mipi_dsi_dcs_write +EXPORT_SYMBOL vmlinux 0xcb5bc039 scsi_add_host_with_dma +EXPORT_SYMBOL vmlinux 0xcb733bf2 acpi_bus_set_power +EXPORT_SYMBOL vmlinux 0xcb8bf65f rtnl_create_link +EXPORT_SYMBOL vmlinux 0xcb8c5747 is_subdir +EXPORT_SYMBOL vmlinux 0xcb9b5eba sock_from_file +EXPORT_SYMBOL vmlinux 0xcb9e1a22 acpi_os_map_generic_address +EXPORT_SYMBOL vmlinux 0xcba4abe3 list_sort +EXPORT_SYMBOL vmlinux 0xcbadbdc9 devm_kvasprintf +EXPORT_SYMBOL vmlinux 0xcbb488be dev_get_by_index_rcu +EXPORT_SYMBOL vmlinux 0xcbc88a23 ZSTD_isFrame +EXPORT_SYMBOL vmlinux 0xcbca9229 tcp_mmap +EXPORT_SYMBOL vmlinux 0xcbcad3c9 jbd2_journal_forget +EXPORT_SYMBOL vmlinux 0xcbd4898c fortify_panic +EXPORT_SYMBOL vmlinux 0xcbe6cab1 dev_get_by_name +EXPORT_SYMBOL vmlinux 0xcbf195c7 blk_queue_stack_limits +EXPORT_SYMBOL vmlinux 0xcbfb33e4 init_opal_dev +EXPORT_SYMBOL vmlinux 0xcc191718 kfree_skb_partial +EXPORT_SYMBOL vmlinux 0xcc1b882a idr_get_next_ul +EXPORT_SYMBOL vmlinux 0xcc248d26 serial8250_suspend_port +EXPORT_SYMBOL vmlinux 0xcc28e7b0 xsk_umem_consume_tx_done +EXPORT_SYMBOL vmlinux 0xcc29eb9b skb_dump +EXPORT_SYMBOL vmlinux 0xcc328a5c reservation_ww_class +EXPORT_SYMBOL vmlinux 0xcc445ceb __sg_page_iter_dma_next +EXPORT_SYMBOL vmlinux 0xcc5005fe msleep_interruptible +EXPORT_SYMBOL vmlinux 0xcc5c2df4 trace_print_symbols_seq +EXPORT_SYMBOL vmlinux 0xcc5d22d9 can_do_mlock +EXPORT_SYMBOL vmlinux 0xcc66bb77 vmalloc_to_page +EXPORT_SYMBOL vmlinux 0xcc99ef58 bdi_register +EXPORT_SYMBOL vmlinux 0xcca1b904 framebuffer_alloc +EXPORT_SYMBOL vmlinux 0xcca5f587 xsk_set_rx_need_wakeup +EXPORT_SYMBOL vmlinux 0xcca66a4c tcp_disconnect +EXPORT_SYMBOL vmlinux 0xccb97cc6 skb_pull +EXPORT_SYMBOL vmlinux 0xccc21f5e input_get_new_minor +EXPORT_SYMBOL vmlinux 0xccc758d8 nla_policy_len +EXPORT_SYMBOL vmlinux 0xccd4c999 __sg_page_iter_start +EXPORT_SYMBOL vmlinux 0xccecd022 pci_bus_write_config_dword +EXPORT_SYMBOL vmlinux 0xccef37e4 ZSTD_DStreamOutSize +EXPORT_SYMBOL vmlinux 0xccf700c6 netif_carrier_on +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 0xcd256667 tcp_md5_needed +EXPORT_SYMBOL vmlinux 0xcd279169 nla_find +EXPORT_SYMBOL vmlinux 0xcd50a21a insert_inode_locked +EXPORT_SYMBOL vmlinux 0xcd5a367c build_skb_around +EXPORT_SYMBOL vmlinux 0xcd5c2bcb page_symlink +EXPORT_SYMBOL vmlinux 0xcd63ea9a set_posix_acl +EXPORT_SYMBOL vmlinux 0xcd6d2730 flow_rule_match_control +EXPORT_SYMBOL vmlinux 0xcd6d6070 nvdimm_namespace_locked +EXPORT_SYMBOL vmlinux 0xcd8152ef clk_bulk_get +EXPORT_SYMBOL vmlinux 0xcd8308fb skb_copy_and_csum_dev +EXPORT_SYMBOL vmlinux 0xcd8ac691 scsi_remove_target +EXPORT_SYMBOL vmlinux 0xcd8ce890 acpi_format_exception +EXPORT_SYMBOL vmlinux 0xcdb0f995 elv_rb_add +EXPORT_SYMBOL vmlinux 0xcdc39c9e security_ismaclabel +EXPORT_SYMBOL vmlinux 0xcdc562ae bio_copy_data +EXPORT_SYMBOL vmlinux 0xcdce2de9 agp_allocate_memory +EXPORT_SYMBOL vmlinux 0xcdd5dd4d get_tree_single_reconf +EXPORT_SYMBOL vmlinux 0xcdde454b phy_driver_unregister +EXPORT_SYMBOL vmlinux 0xcde2b085 mdiobus_unregister +EXPORT_SYMBOL vmlinux 0xcde77bcc free_opal_dev +EXPORT_SYMBOL vmlinux 0xce1ea253 pci_assign_resource +EXPORT_SYMBOL vmlinux 0xce22d240 put_ipc_ns +EXPORT_SYMBOL vmlinux 0xce2840e7 irq_set_irq_wake +EXPORT_SYMBOL vmlinux 0xce3864eb ZSTD_compress_usingDict +EXPORT_SYMBOL vmlinux 0xce3ceeda __xfrm_dst_lookup +EXPORT_SYMBOL vmlinux 0xce3fae81 drop_nlink +EXPORT_SYMBOL vmlinux 0xce4cdb8e fb_find_best_mode +EXPORT_SYMBOL vmlinux 0xce4e47b6 __kfifo_skip_r +EXPORT_SYMBOL vmlinux 0xce50e5de ZSTD_compress_usingCDict +EXPORT_SYMBOL vmlinux 0xce5ac24f zlib_inflate_workspacesize +EXPORT_SYMBOL vmlinux 0xce6477b2 acpi_pci_osc_control_set +EXPORT_SYMBOL vmlinux 0xce76c257 acpi_get_irq_routing_table +EXPORT_SYMBOL vmlinux 0xce76d15c pci_bus_read_config_word +EXPORT_SYMBOL vmlinux 0xce7bfe70 vm_brk +EXPORT_SYMBOL vmlinux 0xce7e7826 disk_end_io_acct +EXPORT_SYMBOL vmlinux 0xce807a25 up_write +EXPORT_SYMBOL vmlinux 0xce85b033 vme_register_bridge +EXPORT_SYMBOL vmlinux 0xce8b1878 __x86_indirect_thunk_r14 +EXPORT_SYMBOL vmlinux 0xce93821d nd_btt_version +EXPORT_SYMBOL vmlinux 0xcea381dd x86_match_cpu +EXPORT_SYMBOL vmlinux 0xcea486ec clkdev_alloc +EXPORT_SYMBOL vmlinux 0xceab0311 strchrnul +EXPORT_SYMBOL vmlinux 0xcead8203 inet6_protos +EXPORT_SYMBOL vmlinux 0xceb37278 pnp_register_card_driver +EXPORT_SYMBOL vmlinux 0xced0f4d4 gen_pool_create +EXPORT_SYMBOL vmlinux 0xced4a0d6 rtnl_configure_link +EXPORT_SYMBOL vmlinux 0xcee3aafb truncate_setsize +EXPORT_SYMBOL vmlinux 0xcee4b9d8 phy_start_aneg +EXPORT_SYMBOL vmlinux 0xceec8abd __mb_cache_entry_free +EXPORT_SYMBOL vmlinux 0xceec93be to_nfit_uuid +EXPORT_SYMBOL vmlinux 0xcefcd99a serial8250_unregister_port +EXPORT_SYMBOL vmlinux 0xcf000c7e hdmi_infoframe_check +EXPORT_SYMBOL vmlinux 0xcf0a5c3d phy_support_sym_pause +EXPORT_SYMBOL vmlinux 0xcf104b8c is_acpi_device_node +EXPORT_SYMBOL vmlinux 0xcf179375 d_alloc_anon +EXPORT_SYMBOL vmlinux 0xcf1ba670 __ip_options_compile +EXPORT_SYMBOL vmlinux 0xcf1c6ca3 cmdline_parts_find +EXPORT_SYMBOL vmlinux 0xcf2a6966 up +EXPORT_SYMBOL vmlinux 0xcf2b7849 xfrm6_rcv_tnl +EXPORT_SYMBOL vmlinux 0xcf2c95fb netpoll_send_udp +EXPORT_SYMBOL vmlinux 0xcf432cf2 blk_register_region +EXPORT_SYMBOL vmlinux 0xcf4fdd4d _atomic_dec_and_lock +EXPORT_SYMBOL vmlinux 0xcf83d83a __tracepoint_spi_transfer_start +EXPORT_SYMBOL vmlinux 0xcf967aa3 vm_iomap_memory +EXPORT_SYMBOL vmlinux 0xcfadf7ec vme_unregister_driver +EXPORT_SYMBOL vmlinux 0xcfb99dab generic_listxattr +EXPORT_SYMBOL vmlinux 0xcff0e9ad dev_mc_add +EXPORT_SYMBOL vmlinux 0xd008cea0 mipi_dsi_generic_write +EXPORT_SYMBOL vmlinux 0xd00960e0 sk_stop_timer +EXPORT_SYMBOL vmlinux 0xd01c9c44 tcf_action_update_stats +EXPORT_SYMBOL vmlinux 0xd02ad96f __vfs_setxattr +EXPORT_SYMBOL vmlinux 0xd02cab2e dst_release_immediate +EXPORT_SYMBOL vmlinux 0xd03dfde0 vfs_get_fsid +EXPORT_SYMBOL vmlinux 0xd042475c qdisc_get_rtab +EXPORT_SYMBOL vmlinux 0xd04a7b69 skb_dequeue_tail +EXPORT_SYMBOL vmlinux 0xd04c1a64 sysctl_devconf_inherit_init_net +EXPORT_SYMBOL vmlinux 0xd05467b5 scsi_register_interface +EXPORT_SYMBOL vmlinux 0xd0654aba woken_wake_function +EXPORT_SYMBOL vmlinux 0xd06570ad nf_ct_get_tuple_skb +EXPORT_SYMBOL vmlinux 0xd08683dc iput +EXPORT_SYMBOL vmlinux 0xd08adb2b trace_seq_hex_dump +EXPORT_SYMBOL vmlinux 0xd0a85759 invalidate_mapping_pages +EXPORT_SYMBOL vmlinux 0xd0a91bab skip_spaces +EXPORT_SYMBOL vmlinux 0xd0a9d412 eisa_bus_type +EXPORT_SYMBOL vmlinux 0xd0b74705 acpi_install_interface +EXPORT_SYMBOL vmlinux 0xd0bb0bb2 inet6_del_offload +EXPORT_SYMBOL vmlinux 0xd0bd487b hdmi_drm_infoframe_pack_only +EXPORT_SYMBOL vmlinux 0xd0c0b53d register_qdisc +EXPORT_SYMBOL vmlinux 0xd0c9baa3 blk_mq_init_sq_queue +EXPORT_SYMBOL vmlinux 0xd0d73e50 iommu_get_msi_cookie +EXPORT_SYMBOL vmlinux 0xd0e20eaf __hw_addr_unsync_dev +EXPORT_SYMBOL vmlinux 0xd0e2e90a acpi_dev_hid_uid_match +EXPORT_SYMBOL vmlinux 0xd0e4ddcc bio_devname +EXPORT_SYMBOL vmlinux 0xd0f284b8 mmiotrace_printk +EXPORT_SYMBOL vmlinux 0xd0fd9109 dev_graft_qdisc +EXPORT_SYMBOL vmlinux 0xd0fe8d51 sg_pcopy_from_buffer +EXPORT_SYMBOL vmlinux 0xd0fef3b2 agp_free_key +EXPORT_SYMBOL vmlinux 0xd1262d0d ipv6_chk_prefix +EXPORT_SYMBOL vmlinux 0xd1363cc1 ucs2_strsize +EXPORT_SYMBOL vmlinux 0xd13d031b watchdog_register_governor +EXPORT_SYMBOL vmlinux 0xd13e1d46 scsi_mode_sense +EXPORT_SYMBOL vmlinux 0xd1412f9b kobject_init +EXPORT_SYMBOL vmlinux 0xd14bdb01 get_task_cred +EXPORT_SYMBOL vmlinux 0xd14c66bc kern_unmount_array +EXPORT_SYMBOL vmlinux 0xd14e7cb6 __cleancache_invalidate_fs +EXPORT_SYMBOL vmlinux 0xd161e0f0 qdisc_create_dflt +EXPORT_SYMBOL vmlinux 0xd16dbb5d nvdimm_namespace_common_probe +EXPORT_SYMBOL vmlinux 0xd16ee8e0 jbd2_journal_blocks_per_page +EXPORT_SYMBOL vmlinux 0xd17d6477 skb_copy_header +EXPORT_SYMBOL vmlinux 0xd1816f32 frontswap_writethrough +EXPORT_SYMBOL vmlinux 0xd18c84de mipi_dsi_dcs_set_tear_scanline +EXPORT_SYMBOL vmlinux 0xd194ddf9 acpi_gpe_count +EXPORT_SYMBOL vmlinux 0xd19bd2e1 __tracepoint_write_msr +EXPORT_SYMBOL vmlinux 0xd1a06e4f logfc +EXPORT_SYMBOL vmlinux 0xd1b10dcd netdev_upper_dev_link +EXPORT_SYMBOL vmlinux 0xd1d87e92 scsi_mlreturn_string +EXPORT_SYMBOL vmlinux 0xd1dd0a32 param_set_charp +EXPORT_SYMBOL vmlinux 0xd1ee7740 neigh_parms_alloc +EXPORT_SYMBOL vmlinux 0xd1f60a89 arch_io_free_memtype_wc +EXPORT_SYMBOL vmlinux 0xd1f6c5f3 smp_num_siblings +EXPORT_SYMBOL vmlinux 0xd1f98c86 dma_supported +EXPORT_SYMBOL vmlinux 0xd1ffd160 secure_tcpv6_ts_off +EXPORT_SYMBOL vmlinux 0xd20bcd86 skb_copy_expand +EXPORT_SYMBOL vmlinux 0xd21c5139 iowrite64_lo_hi +EXPORT_SYMBOL vmlinux 0xd2237016 radix_tree_delete_item +EXPORT_SYMBOL vmlinux 0xd22ff217 inet_frag_queue_insert +EXPORT_SYMBOL vmlinux 0xd230e581 fc_release_transport +EXPORT_SYMBOL vmlinux 0xd257338b tcp_v4_md5_lookup +EXPORT_SYMBOL vmlinux 0xd25d4f74 console_blank_hook +EXPORT_SYMBOL vmlinux 0xd262dfcb vscnprintf +EXPORT_SYMBOL vmlinux 0xd27b25dd blk_check_plugged +EXPORT_SYMBOL vmlinux 0xd280387c simple_rename +EXPORT_SYMBOL vmlinux 0xd296c808 eth_prepare_mac_addr_change +EXPORT_SYMBOL vmlinux 0xd2aad6df sock_setsockopt +EXPORT_SYMBOL vmlinux 0xd2b47d16 d_lookup +EXPORT_SYMBOL vmlinux 0xd2bed7c2 udp6_seq_ops +EXPORT_SYMBOL vmlinux 0xd2c45037 vga_tryget +EXPORT_SYMBOL vmlinux 0xd2c99738 __kmalloc_track_caller +EXPORT_SYMBOL vmlinux 0xd2d9f508 agp_free_memory +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 0xd306d956 mr_rtm_dumproute +EXPORT_SYMBOL vmlinux 0xd33b3a16 scsi_free_host_dev +EXPORT_SYMBOL vmlinux 0xd3543063 memcg_kmem_enabled_key +EXPORT_SYMBOL vmlinux 0xd35a6d31 mempool_kmalloc +EXPORT_SYMBOL vmlinux 0xd36af56e eth_mac_addr +EXPORT_SYMBOL vmlinux 0xd36dc10c get_random_u32 +EXPORT_SYMBOL vmlinux 0xd36e3d59 prandom_bytes_state +EXPORT_SYMBOL vmlinux 0xd377826c mod_zone_page_state +EXPORT_SYMBOL vmlinux 0xd38cd261 __default_kernel_pte_mask +EXPORT_SYMBOL vmlinux 0xd3a58523 deactivate_locked_super +EXPORT_SYMBOL vmlinux 0xd3af8119 dev_mc_sync_multiple +EXPORT_SYMBOL vmlinux 0xd3e950ad noop_qdisc +EXPORT_SYMBOL vmlinux 0xd3eaf1ed devlink_dpipe_entry_clear +EXPORT_SYMBOL vmlinux 0xd3f673a2 simple_write_begin +EXPORT_SYMBOL vmlinux 0xd406d266 fb_mode_is_equal +EXPORT_SYMBOL vmlinux 0xd42674e7 sock_no_accept +EXPORT_SYMBOL vmlinux 0xd436ccb6 cdrom_mode_sense +EXPORT_SYMBOL vmlinux 0xd437ad1d netlink_kernel_release +EXPORT_SYMBOL vmlinux 0xd45bda0b fs_context_for_reconfigure +EXPORT_SYMBOL vmlinux 0xd45cc6ca bin2hex +EXPORT_SYMBOL vmlinux 0xd4754696 tcp_ioctl +EXPORT_SYMBOL vmlinux 0xd47947ff __x86_retpoline_r12 +EXPORT_SYMBOL vmlinux 0xd4835ef8 dmi_check_system +EXPORT_SYMBOL vmlinux 0xd4bb4a82 inet6addr_validator_notifier_call_chain +EXPORT_SYMBOL vmlinux 0xd4d1983c udplite_table +EXPORT_SYMBOL vmlinux 0xd4d206ff from_kuid_munged +EXPORT_SYMBOL vmlinux 0xd4eaead0 keyring_alloc +EXPORT_SYMBOL vmlinux 0xd4fa5a87 __kfifo_dma_out_prepare +EXPORT_SYMBOL vmlinux 0xd508457e tty_port_alloc_xmit_buf +EXPORT_SYMBOL vmlinux 0xd519dd96 tty_kref_put +EXPORT_SYMBOL vmlinux 0xd5263820 mb_cache_destroy +EXPORT_SYMBOL vmlinux 0xd530b059 file_check_and_advance_wb_err +EXPORT_SYMBOL vmlinux 0xd5346bfc acpi_get_possible_resources +EXPORT_SYMBOL vmlinux 0xd54d8136 inet6_release +EXPORT_SYMBOL vmlinux 0xd55040e4 mdiobus_setup_mdiodev_from_board_info +EXPORT_SYMBOL vmlinux 0xd56db517 inet_sock_destruct +EXPORT_SYMBOL vmlinux 0xd58f698e ptp_cancel_worker_sync +EXPORT_SYMBOL vmlinux 0xd5a99572 phy_register_fixup_for_id +EXPORT_SYMBOL vmlinux 0xd5b3d0d5 xxh64_copy_state +EXPORT_SYMBOL vmlinux 0xd5c25074 sock_create_lite +EXPORT_SYMBOL vmlinux 0xd5de69d4 generic_file_readonly_mmap +EXPORT_SYMBOL vmlinux 0xd5fd90f1 prepare_to_wait +EXPORT_SYMBOL vmlinux 0xd6019bb2 dcache_dir_close +EXPORT_SYMBOL vmlinux 0xd60736ec gf128mul_free_64k +EXPORT_SYMBOL vmlinux 0xd61704c7 d_instantiate_new +EXPORT_SYMBOL vmlinux 0xd62ecd49 rps_sock_flow_table +EXPORT_SYMBOL vmlinux 0xd63fd8d1 utf8nagemax +EXPORT_SYMBOL vmlinux 0xd643239a acpi_leave_sleep_state +EXPORT_SYMBOL vmlinux 0xd65e417d uart_resume_port +EXPORT_SYMBOL vmlinux 0xd65f69d8 do_splice_direct +EXPORT_SYMBOL vmlinux 0xd674d830 dev_mc_unsync +EXPORT_SYMBOL vmlinux 0xd688716b dm_kcopyd_client_create +EXPORT_SYMBOL vmlinux 0xd68c5a1f adjust_resource +EXPORT_SYMBOL vmlinux 0xd68f9851 path_is_under +EXPORT_SYMBOL vmlinux 0xd691c6a9 unregister_sysctl_table +EXPORT_SYMBOL vmlinux 0xd695f3ab ipv6_mc_check_mld +EXPORT_SYMBOL vmlinux 0xd69885c2 mipi_dsi_picture_parameter_set +EXPORT_SYMBOL vmlinux 0xd699d005 iov_iter_copy_from_user_atomic +EXPORT_SYMBOL vmlinux 0xd6b04ccb kernel_sock_ip_overhead +EXPORT_SYMBOL vmlinux 0xd6b2ed5f generate_pm_trace +EXPORT_SYMBOL vmlinux 0xd6b33026 cpu_khz +EXPORT_SYMBOL vmlinux 0xd6ba4b12 iov_iter_fault_in_readable +EXPORT_SYMBOL vmlinux 0xd6d1f593 seq_file_path +EXPORT_SYMBOL vmlinux 0xd6e5c0c3 block_write_full_page +EXPORT_SYMBOL vmlinux 0xd6eaaea1 full_name_hash +EXPORT_SYMBOL vmlinux 0xd6ee688f vmalloc +EXPORT_SYMBOL vmlinux 0xd6f74671 pcix_get_mmrbc +EXPORT_SYMBOL vmlinux 0xd6fa37a7 tcp_enter_cwr +EXPORT_SYMBOL vmlinux 0xd6fde043 is_module_sig_enforced +EXPORT_SYMBOL vmlinux 0xd704bd53 scsi_unblock_requests +EXPORT_SYMBOL vmlinux 0xd707b97b fscrypt_get_encryption_info +EXPORT_SYMBOL vmlinux 0xd70d35a1 gf128mul_4k_bbe +EXPORT_SYMBOL vmlinux 0xd70f62b6 acpi_os_execute +EXPORT_SYMBOL vmlinux 0xd71163d0 ndo_dflt_fdb_dump +EXPORT_SYMBOL vmlinux 0xd723598a simple_pin_fs +EXPORT_SYMBOL vmlinux 0xd738ca1b phy_unregister_fixup_for_uid +EXPORT_SYMBOL vmlinux 0xd74ebcab phy_mii_ioctl +EXPORT_SYMBOL vmlinux 0xd75345bd serio_rescan +EXPORT_SYMBOL vmlinux 0xd773aa43 jbd2_journal_init_inode +EXPORT_SYMBOL vmlinux 0xd77a2a8d get_tree_bdev +EXPORT_SYMBOL vmlinux 0xd785c43a vmf_insert_mixed_mkwrite +EXPORT_SYMBOL vmlinux 0xd78e978a get_cached_acl +EXPORT_SYMBOL vmlinux 0xd799d63a con_copy_unimap +EXPORT_SYMBOL vmlinux 0xd79edb29 devfreq_register_opp_notifier +EXPORT_SYMBOL vmlinux 0xd7ab8a41 uart_update_timeout +EXPORT_SYMBOL vmlinux 0xd7b0cbce eisa_driver_register +EXPORT_SYMBOL vmlinux 0xd7b75fa9 blk_pre_runtime_suspend +EXPORT_SYMBOL vmlinux 0xd7d09027 set_create_files_as +EXPORT_SYMBOL vmlinux 0xd7d280ad irq_poll_complete +EXPORT_SYMBOL vmlinux 0xd7dd777b reserve_perfctr_nmi +EXPORT_SYMBOL vmlinux 0xd7e56a4e simple_strtoll +EXPORT_SYMBOL vmlinux 0xd7f3d255 __destroy_inode +EXPORT_SYMBOL vmlinux 0xd7f3df35 sock_init_data +EXPORT_SYMBOL vmlinux 0xd7fe3a06 inet6_bind +EXPORT_SYMBOL vmlinux 0xd7ff6644 tty_lock +EXPORT_SYMBOL vmlinux 0xd812963d inet_rtx_syn_ack +EXPORT_SYMBOL vmlinux 0xd814739b sync_blockdev +EXPORT_SYMBOL vmlinux 0xd817b0d1 path_has_submounts +EXPORT_SYMBOL vmlinux 0xd82a98aa md_finish_reshape +EXPORT_SYMBOL vmlinux 0xd833cc2f scsi_dma_unmap +EXPORT_SYMBOL vmlinux 0xd8358fac vme_dma_request +EXPORT_SYMBOL vmlinux 0xd83633fc get_disk_and_module +EXPORT_SYMBOL vmlinux 0xd83c1e15 jbd2_journal_ack_err +EXPORT_SYMBOL vmlinux 0xd846c315 acpi_write_bit_register +EXPORT_SYMBOL vmlinux 0xd849ef45 mipi_dsi_host_unregister +EXPORT_SYMBOL vmlinux 0xd8602b6a tun_is_xdp_frame +EXPORT_SYMBOL vmlinux 0xd87ee6d6 devfreq_remove_device +EXPORT_SYMBOL vmlinux 0xd89da37f movable_zone +EXPORT_SYMBOL vmlinux 0xd8a994eb scsi_extd_sense_format +EXPORT_SYMBOL vmlinux 0xd8dcd834 __qdisc_calculate_pkt_len +EXPORT_SYMBOL vmlinux 0xd8dde776 __sock_create +EXPORT_SYMBOL vmlinux 0xd8df08ac acpi_handle_printk +EXPORT_SYMBOL vmlinux 0xd8f3b6b7 agp_generic_destroy_page +EXPORT_SYMBOL vmlinux 0xd8f88eee vlan_filter_push_vids +EXPORT_SYMBOL vmlinux 0xd90cb249 ZSTD_getBlockSizeMax +EXPORT_SYMBOL vmlinux 0xd914fcac inetdev_by_index +EXPORT_SYMBOL vmlinux 0xd91cf60d dev_pre_changeaddr_notify +EXPORT_SYMBOL vmlinux 0xd92283e4 sock_kfree_s +EXPORT_SYMBOL vmlinux 0xd92deb6b acpi_evaluate_object +EXPORT_SYMBOL vmlinux 0xd941f41c blk_rq_map_integrity_sg +EXPORT_SYMBOL vmlinux 0xd9491c14 xa_destroy +EXPORT_SYMBOL vmlinux 0xd94ea103 fs_param_is_blob +EXPORT_SYMBOL vmlinux 0xd95ab880 __sk_backlog_rcv +EXPORT_SYMBOL vmlinux 0xd9732531 nf_register_net_hook +EXPORT_SYMBOL vmlinux 0xd9781307 neigh_table_clear +EXPORT_SYMBOL vmlinux 0xd979a547 __x86_indirect_thunk_rdi +EXPORT_SYMBOL vmlinux 0xd985dc99 mempool_free_pages +EXPORT_SYMBOL vmlinux 0xd98de419 msi_desc_to_pci_dev +EXPORT_SYMBOL vmlinux 0xd9a5ea54 __init_waitqueue_head +EXPORT_SYMBOL vmlinux 0xd9b2d9d5 nd_region_acquire_lane +EXPORT_SYMBOL vmlinux 0xd9b3c1ba block_write_begin +EXPORT_SYMBOL vmlinux 0xd9b85ef6 lockref_get +EXPORT_SYMBOL vmlinux 0xd9ca454b memory_cgrp_subsys +EXPORT_SYMBOL vmlinux 0xd9d8fd16 register_restart_handler +EXPORT_SYMBOL vmlinux 0xd9d952d1 crypto_aes_sbox +EXPORT_SYMBOL vmlinux 0xd9e8aee7 refcount_dec_and_lock +EXPORT_SYMBOL vmlinux 0xd9ee65c8 sock_kzfree_s +EXPORT_SYMBOL vmlinux 0xd9efbbcd tcp_md5_hash_skb_data +EXPORT_SYMBOL vmlinux 0xd9f625e2 dqput +EXPORT_SYMBOL vmlinux 0xd9fc7f56 fscrypt_inherit_context +EXPORT_SYMBOL vmlinux 0xda1ddef1 acpi_mark_gpe_for_wake +EXPORT_SYMBOL vmlinux 0xda26b8ea __irq_regs +EXPORT_SYMBOL vmlinux 0xda29460e bio_free_pages +EXPORT_SYMBOL vmlinux 0xda3914aa netdev_state_change +EXPORT_SYMBOL vmlinux 0xda3cd67f flow_rule_match_enc_ipv4_addrs +EXPORT_SYMBOL vmlinux 0xda3d10a8 security_tun_dev_open +EXPORT_SYMBOL vmlinux 0xda490f94 nvdimm_namespace_capacity +EXPORT_SYMBOL vmlinux 0xda5a7261 pci_select_bars +EXPORT_SYMBOL vmlinux 0xda6952b2 md_error +EXPORT_SYMBOL vmlinux 0xda72a7ec ZSTD_nextInputType +EXPORT_SYMBOL vmlinux 0xda7301ba __module_get +EXPORT_SYMBOL vmlinux 0xda753001 gro_cells_init +EXPORT_SYMBOL vmlinux 0xda76a55f tty_name +EXPORT_SYMBOL vmlinux 0xda872864 security_locked_down +EXPORT_SYMBOL vmlinux 0xda89ea3b ip_idents_reserve +EXPORT_SYMBOL vmlinux 0xda8f9790 phy_register_fixup +EXPORT_SYMBOL vmlinux 0xda9fc7ae kstrtobool_from_user +EXPORT_SYMBOL vmlinux 0xdaba319a pci_request_selected_regions +EXPORT_SYMBOL vmlinux 0xdac4913a bitmap_allocate_region +EXPORT_SYMBOL vmlinux 0xdad13544 ptrs_per_p4d +EXPORT_SYMBOL vmlinux 0xdaf9bb55 set_nlink +EXPORT_SYMBOL vmlinux 0xdb16b170 topology_phys_to_logical_pkg +EXPORT_SYMBOL vmlinux 0xdb19cd5d __vlan_find_dev_deep_rcu +EXPORT_SYMBOL vmlinux 0xdb47c213 ww_mutex_unlock +EXPORT_SYMBOL vmlinux 0xdb55c076 radix_tree_iter_resume +EXPORT_SYMBOL vmlinux 0xdb68bbad rfkill_destroy +EXPORT_SYMBOL vmlinux 0xdb699779 blk_queue_segment_boundary +EXPORT_SYMBOL vmlinux 0xdb760f52 __kfifo_free +EXPORT_SYMBOL vmlinux 0xdb7c324d netlink_broadcast +EXPORT_SYMBOL vmlinux 0xdb95e185 intel_scu_ipc_dev_command_with_size +EXPORT_SYMBOL vmlinux 0xdb981927 fs_param_is_path +EXPORT_SYMBOL vmlinux 0xdba48d7b blk_rq_unmap_user +EXPORT_SYMBOL vmlinux 0xdbcf041a acpi_install_address_space_handler +EXPORT_SYMBOL vmlinux 0xdbdf6c92 ioport_resource +EXPORT_SYMBOL vmlinux 0xdbef405f thaw_super +EXPORT_SYMBOL vmlinux 0xdbf17652 _raw_spin_lock +EXPORT_SYMBOL vmlinux 0xdbf2a91b pci_find_next_bus +EXPORT_SYMBOL vmlinux 0xdc14eda7 pci_pci_problems +EXPORT_SYMBOL vmlinux 0xdc190929 mpage_writepage +EXPORT_SYMBOL vmlinux 0xdc2b5e5b fb_prepare_logo +EXPORT_SYMBOL vmlinux 0xdc49c198 reciprocal_value_adv +EXPORT_SYMBOL vmlinux 0xdc4db268 xfrm4_protocol_register +EXPORT_SYMBOL vmlinux 0xdc512134 backlight_register_notifier +EXPORT_SYMBOL vmlinux 0xdc55cf0a dm_kobject_release +EXPORT_SYMBOL vmlinux 0xdc5736d5 acpi_register_ioapic +EXPORT_SYMBOL vmlinux 0xdc61953b __fib6_flush_trees +EXPORT_SYMBOL vmlinux 0xdca3685b blk_integrity_unregister +EXPORT_SYMBOL vmlinux 0xdcb1b687 tty_set_operations +EXPORT_SYMBOL vmlinux 0xdcd9733f key_validate +EXPORT_SYMBOL vmlinux 0xdce02e07 security_old_inode_init_security +EXPORT_SYMBOL vmlinux 0xdce55c98 __x86_retpoline_rax +EXPORT_SYMBOL vmlinux 0xdceb837c tty_port_free_xmit_buf +EXPORT_SYMBOL vmlinux 0xdced2243 param_set_uint +EXPORT_SYMBOL vmlinux 0xdcf48d2f jbd2_journal_stop +EXPORT_SYMBOL vmlinux 0xdcfd7921 __sk_receive_skb +EXPORT_SYMBOL vmlinux 0xdcff7b1c __find_get_block +EXPORT_SYMBOL vmlinux 0xdd0b903e proc_mkdir_mode +EXPORT_SYMBOL vmlinux 0xdd18a993 acpi_check_dsm +EXPORT_SYMBOL vmlinux 0xdd231f7b unregister_netdevice_notifier_net +EXPORT_SYMBOL vmlinux 0xdd2c169b mb_cache_create +EXPORT_SYMBOL vmlinux 0xdd64e639 strscpy +EXPORT_SYMBOL vmlinux 0xdd69d6b7 inet_csk_prepare_forced_close +EXPORT_SYMBOL vmlinux 0xdd742d72 __sg_free_table +EXPORT_SYMBOL vmlinux 0xdd8166a1 dma_fence_free +EXPORT_SYMBOL vmlinux 0xdd840fd1 inet_bind +EXPORT_SYMBOL vmlinux 0xdd849d51 scsi_get_sense_info_fld +EXPORT_SYMBOL vmlinux 0xdd8be620 sock_queue_rcv_skb +EXPORT_SYMBOL vmlinux 0xdd8fed08 xfrm6_rcv +EXPORT_SYMBOL vmlinux 0xdda69cec set_blocksize +EXPORT_SYMBOL vmlinux 0xddad7952 acpi_dbg_level +EXPORT_SYMBOL vmlinux 0xddb7acd4 netif_set_real_num_tx_queues +EXPORT_SYMBOL vmlinux 0xddc88dfb flow_block_cb_incref +EXPORT_SYMBOL vmlinux 0xddd4a8a5 xfrm_spd_getinfo +EXPORT_SYMBOL vmlinux 0xddf6ad7a completion_done +EXPORT_SYMBOL vmlinux 0xde122502 discard_new_inode +EXPORT_SYMBOL vmlinux 0xde244d9a skb_vlan_untag +EXPORT_SYMBOL vmlinux 0xde293f9e add_wait_queue_exclusive +EXPORT_SYMBOL vmlinux 0xde2987a2 jbd2_trans_will_send_data_barrier +EXPORT_SYMBOL vmlinux 0xde384dd5 pcim_pin_device +EXPORT_SYMBOL vmlinux 0xde3a1c27 kernel_accept +EXPORT_SYMBOL vmlinux 0xde3b52a0 sk_stream_wait_close +EXPORT_SYMBOL vmlinux 0xde4d4ace dim_calc_stats +EXPORT_SYMBOL vmlinux 0xde4eeab5 __register_nmi_handler +EXPORT_SYMBOL vmlinux 0xde68f75c vga_switcheroo_fini_domain_pm_ops +EXPORT_SYMBOL vmlinux 0xde6e8428 finish_swait +EXPORT_SYMBOL vmlinux 0xde80cd09 ioremap +EXPORT_SYMBOL vmlinux 0xde877a45 pskb_expand_head +EXPORT_SYMBOL vmlinux 0xde93f0d1 dev_open +EXPORT_SYMBOL vmlinux 0xde9b17ed agp3_generic_fetch_size +EXPORT_SYMBOL vmlinux 0xdeb21b8b dev_mc_flush +EXPORT_SYMBOL vmlinux 0xdeb3ef56 devm_clk_put +EXPORT_SYMBOL vmlinux 0xdeb6aae9 kmem_cache_free_bulk +EXPORT_SYMBOL vmlinux 0xdebb2e81 inet_pton_with_scope +EXPORT_SYMBOL vmlinux 0xded39a6b gen_kill_estimator +EXPORT_SYMBOL vmlinux 0xded6a415 acpi_get_object_info +EXPORT_SYMBOL vmlinux 0xdee0fde1 sock_no_shutdown +EXPORT_SYMBOL vmlinux 0xdee365b0 _raw_write_trylock +EXPORT_SYMBOL vmlinux 0xdeec22c3 dquot_quota_off +EXPORT_SYMBOL vmlinux 0xdef7c893 fb_match_mode +EXPORT_SYMBOL vmlinux 0xdf07518e scsi_track_queue_full +EXPORT_SYMBOL vmlinux 0xdf0c5819 xfrm_input +EXPORT_SYMBOL vmlinux 0xdf2c2742 rb_last +EXPORT_SYMBOL vmlinux 0xdf36914b xa_find_after +EXPORT_SYMBOL vmlinux 0xdf36d4aa ip6_dst_hoplimit +EXPORT_SYMBOL vmlinux 0xdf376b29 __mod_zone_page_state +EXPORT_SYMBOL vmlinux 0xdf54a8f7 netlink_unregister_notifier +EXPORT_SYMBOL vmlinux 0xdf566a59 __x86_indirect_thunk_r9 +EXPORT_SYMBOL vmlinux 0xdf644761 icmpv6_ndo_send +EXPORT_SYMBOL vmlinux 0xdf6b082f proc_dointvec_jiffies +EXPORT_SYMBOL vmlinux 0xdf6e2e6e scsi_add_device +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 0xdfa23039 d_move +EXPORT_SYMBOL vmlinux 0xdfa48b48 ip_setsockopt +EXPORT_SYMBOL vmlinux 0xdfa90fb3 generic_file_read_iter +EXPORT_SYMBOL vmlinux 0xdfacd9df __sk_queue_drop_skb +EXPORT_SYMBOL vmlinux 0xdfaf32b8 page_cache_next_miss +EXPORT_SYMBOL vmlinux 0xdfb14029 down_read_killable +EXPORT_SYMBOL vmlinux 0xdfcc992c current_work +EXPORT_SYMBOL vmlinux 0xdfdfa9e7 utf8nfdi +EXPORT_SYMBOL vmlinux 0xdff905e5 vme_slave_free +EXPORT_SYMBOL vmlinux 0xdffb744b frame_vector_to_pfns +EXPORT_SYMBOL vmlinux 0xdffc80fc vesa_modes +EXPORT_SYMBOL vmlinux 0xe00c2d63 netdev_lower_get_next_private_rcu +EXPORT_SYMBOL vmlinux 0xe01f0f83 ps2_begin_command +EXPORT_SYMBOL vmlinux 0xe021910c inet_csk_reqsk_queue_add +EXPORT_SYMBOL vmlinux 0xe02ba436 trace_print_hex_seq +EXPORT_SYMBOL vmlinux 0xe02c9c92 __xa_erase +EXPORT_SYMBOL vmlinux 0xe02d5158 flow_indr_dev_setup_offload +EXPORT_SYMBOL vmlinux 0xe02dda09 param_set_long +EXPORT_SYMBOL vmlinux 0xe032cd69 dma_free_attrs +EXPORT_SYMBOL vmlinux 0xe033cb29 native_queued_spin_lock_slowpath +EXPORT_SYMBOL vmlinux 0xe033ebdc netpoll_print_options +EXPORT_SYMBOL vmlinux 0xe03a689d dma_fence_array_ops +EXPORT_SYMBOL vmlinux 0xe03aa06c vfs_copy_file_range +EXPORT_SYMBOL vmlinux 0xe0521ee9 cdev_add +EXPORT_SYMBOL vmlinux 0xe062ad57 dentry_path_raw +EXPORT_SYMBOL vmlinux 0xe06df178 _dev_alert +EXPORT_SYMBOL vmlinux 0xe07166fe netif_set_xps_queue +EXPORT_SYMBOL vmlinux 0xe073b3bb __mod_node_page_state +EXPORT_SYMBOL vmlinux 0xe07e5f44 acpi_reconfig_notifier_unregister +EXPORT_SYMBOL vmlinux 0xe082e88d acpi_check_address_range +EXPORT_SYMBOL vmlinux 0xe0875eb1 kstrtobool +EXPORT_SYMBOL vmlinux 0xe0955f76 utf8_casefold +EXPORT_SYMBOL vmlinux 0xe0966016 xfrm6_rcv_spi +EXPORT_SYMBOL vmlinux 0xe09a7245 sg_miter_start +EXPORT_SYMBOL vmlinux 0xe0a0b589 ip_route_me_harder +EXPORT_SYMBOL vmlinux 0xe0a72280 kmem_cache_shrink +EXPORT_SYMBOL vmlinux 0xe0b13336 argv_free +EXPORT_SYMBOL vmlinux 0xe0bfdcaa qdisc_warn_nonwc +EXPORT_SYMBOL vmlinux 0xe0d0c182 seq_escape_mem_ascii +EXPORT_SYMBOL vmlinux 0xe0dc613b compat_ipv6_getsockopt +EXPORT_SYMBOL vmlinux 0xe0e2a07d generic_make_request +EXPORT_SYMBOL vmlinux 0xe0ec82d7 xfrm_trans_queue_net +EXPORT_SYMBOL vmlinux 0xe105d30e devm_memunmap +EXPORT_SYMBOL vmlinux 0xe10a8aad mipi_dsi_dcs_set_tear_on +EXPORT_SYMBOL vmlinux 0xe10b39ad t10_pi_type3_ip +EXPORT_SYMBOL vmlinux 0xe113bbbc csum_partial +EXPORT_SYMBOL vmlinux 0xe11ca997 ZSTD_getDictID_fromDict +EXPORT_SYMBOL vmlinux 0xe1239b63 fs_context_for_submount +EXPORT_SYMBOL vmlinux 0xe123f3d9 dma_fence_release +EXPORT_SYMBOL vmlinux 0xe1257289 skb_recv_datagram +EXPORT_SYMBOL vmlinux 0xe12bda79 vme_dma_free_attribute +EXPORT_SYMBOL vmlinux 0xe138fb8c percpu_counter_add_batch +EXPORT_SYMBOL vmlinux 0xe13cd8a7 dmi_name_in_vendors +EXPORT_SYMBOL vmlinux 0xe13d5d07 kstrtou16_from_user +EXPORT_SYMBOL vmlinux 0xe1437000 fbcon_rotate_cw +EXPORT_SYMBOL vmlinux 0xe145557c address_space_init_once +EXPORT_SYMBOL vmlinux 0xe14a8cfe pnp_register_driver +EXPORT_SYMBOL vmlinux 0xe15f1b3b dev_get_iflink +EXPORT_SYMBOL vmlinux 0xe167388c seq_printf +EXPORT_SYMBOL vmlinux 0xe16f859d inet_sk_rebuild_header +EXPORT_SYMBOL vmlinux 0xe1a4f16a secure_ipv6_port_ephemeral +EXPORT_SYMBOL vmlinux 0xe1afa3e2 phy_do_ioctl_running +EXPORT_SYMBOL vmlinux 0xe1b9b471 invalidate_inode_buffers +EXPORT_SYMBOL vmlinux 0xe1b9c04e amd_iommu_domain_set_gcr3 +EXPORT_SYMBOL vmlinux 0xe1c94779 __blkdev_issue_zeroout +EXPORT_SYMBOL vmlinux 0xe1dcf64a audit_log_format +EXPORT_SYMBOL vmlinux 0xe1e7e40c rtnl_nla_parse_ifla +EXPORT_SYMBOL vmlinux 0xe1ed698d _raw_write_lock_bh +EXPORT_SYMBOL vmlinux 0xe1efb7ce kthread_associate_blkcg +EXPORT_SYMBOL vmlinux 0xe21d4c63 input_set_max_poll_interval +EXPORT_SYMBOL vmlinux 0xe21f18ac __genradix_iter_peek +EXPORT_SYMBOL vmlinux 0xe25ee9d3 _raw_write_lock_irqsave +EXPORT_SYMBOL vmlinux 0xe263d2be blk_queue_update_dma_pad +EXPORT_SYMBOL vmlinux 0xe272a8a8 tcp_seq_next +EXPORT_SYMBOL vmlinux 0xe273d75d alloc_cpu_rmap +EXPORT_SYMBOL vmlinux 0xe2742906 param_get_byte +EXPORT_SYMBOL vmlinux 0xe2d5255a strcmp +EXPORT_SYMBOL vmlinux 0xe2f4be7d pci_irq_get_affinity +EXPORT_SYMBOL vmlinux 0xe2f80c6c devm_ioport_unmap +EXPORT_SYMBOL vmlinux 0xe2fbf3fd ppp_output_wakeup +EXPORT_SYMBOL vmlinux 0xe2ffeef3 scsi_req_init +EXPORT_SYMBOL vmlinux 0xe3147e1d __xfrm_state_delete +EXPORT_SYMBOL vmlinux 0xe32ab4d8 xxh64_digest +EXPORT_SYMBOL vmlinux 0xe33e5bc1 tcp_conn_request +EXPORT_SYMBOL vmlinux 0xe34c38a0 proc_mkdir +EXPORT_SYMBOL vmlinux 0xe369e551 phy_stop +EXPORT_SYMBOL vmlinux 0xe393bbdf nf_log_trace +EXPORT_SYMBOL vmlinux 0xe3d857ea __cpu_active_mask +EXPORT_SYMBOL vmlinux 0xe3dd5848 vfs_parse_fs_param +EXPORT_SYMBOL vmlinux 0xe3e28a5d fwnode_get_mac_address +EXPORT_SYMBOL vmlinux 0xe3e6e337 blk_queue_update_dma_alignment +EXPORT_SYMBOL vmlinux 0xe3ec2f2b alloc_chrdev_region +EXPORT_SYMBOL vmlinux 0xe3ed11ae __mdiobus_register +EXPORT_SYMBOL vmlinux 0xe3ff2c41 get_random_u64 +EXPORT_SYMBOL vmlinux 0xe3fffae9 __x86_indirect_thunk_rbp +EXPORT_SYMBOL vmlinux 0xe40976c0 pnp_range_reserved +EXPORT_SYMBOL vmlinux 0xe40c37ea down_write_trylock +EXPORT_SYMBOL vmlinux 0xe41476d9 ZSTD_getParams +EXPORT_SYMBOL vmlinux 0xe419bc99 iowrite32be +EXPORT_SYMBOL vmlinux 0xe4329092 __ctzdi2 +EXPORT_SYMBOL vmlinux 0xe43791b8 dev_alloc_name +EXPORT_SYMBOL vmlinux 0xe43b76ef blk_put_queue +EXPORT_SYMBOL vmlinux 0xe43fcc7d cdrom_ioctl +EXPORT_SYMBOL vmlinux 0xe441e95a refcount_dec_not_one +EXPORT_SYMBOL vmlinux 0xe484e35f ioread32 +EXPORT_SYMBOL vmlinux 0xe489c827 scsi_set_medium_removal +EXPORT_SYMBOL vmlinux 0xe4974705 mdiobus_write_nested +EXPORT_SYMBOL vmlinux 0xe4a026b7 dev_lstats_read +EXPORT_SYMBOL vmlinux 0xe4a69b8c inet6_add_protocol +EXPORT_SYMBOL vmlinux 0xe4bd6589 input_unregister_handler +EXPORT_SYMBOL vmlinux 0xe4cba206 inode_dio_wait +EXPORT_SYMBOL vmlinux 0xe4d46e62 blk_get_queue +EXPORT_SYMBOL vmlinux 0xe4d80bf4 acpi_enable +EXPORT_SYMBOL vmlinux 0xe4f6977c vfs_setpos +EXPORT_SYMBOL vmlinux 0xe523ad75 synchronize_irq +EXPORT_SYMBOL vmlinux 0xe53ada8d pin_user_pages_remote +EXPORT_SYMBOL vmlinux 0xe53fdff7 dquot_set_dqblk +EXPORT_SYMBOL vmlinux 0xe5562cc1 blk_post_runtime_resume +EXPORT_SYMBOL vmlinux 0xe5600b5a inet_accept +EXPORT_SYMBOL vmlinux 0xe571b2f2 xfrm6_protocol_register +EXPORT_SYMBOL vmlinux 0xe575ec11 scsi_change_queue_depth +EXPORT_SYMBOL vmlinux 0xe58090ca security_ib_endport_manage_subnet +EXPORT_SYMBOL vmlinux 0xe5867808 dlci_ioctl_set +EXPORT_SYMBOL vmlinux 0xe590dea3 sk_busy_loop_end +EXPORT_SYMBOL vmlinux 0xe5bc9a53 slhc_free +EXPORT_SYMBOL vmlinux 0xe5c3c0dc mpage_writepages +EXPORT_SYMBOL vmlinux 0xe5c60bd2 percpu_counter_set +EXPORT_SYMBOL vmlinux 0xe5c78a99 do_blank_screen +EXPORT_SYMBOL vmlinux 0xe5ebd02c xfrm_lookup_with_ifid +EXPORT_SYMBOL vmlinux 0xe5f86844 phy_advertise_supported +EXPORT_SYMBOL vmlinux 0xe613a798 inet_addr_is_any +EXPORT_SYMBOL vmlinux 0xe642427b __scsi_add_device +EXPORT_SYMBOL vmlinux 0xe64d5fef dev_mc_init +EXPORT_SYMBOL vmlinux 0xe65912fc param_ops_bint +EXPORT_SYMBOL vmlinux 0xe669b130 input_allocate_device +EXPORT_SYMBOL vmlinux 0xe6752617 write_one_page +EXPORT_SYMBOL vmlinux 0xe68cdb15 blk_queue_logical_block_size +EXPORT_SYMBOL vmlinux 0xe691ac7f ZSTD_decompressBegin +EXPORT_SYMBOL vmlinux 0xe694ee38 csum_and_copy_from_iter +EXPORT_SYMBOL vmlinux 0xe698c4e2 phy_init_hw +EXPORT_SYMBOL vmlinux 0xe6abb1f5 import_single_range +EXPORT_SYMBOL vmlinux 0xe6adb40d xfrm_user_policy +EXPORT_SYMBOL vmlinux 0xe6af3279 simple_unlink +EXPORT_SYMBOL vmlinux 0xe6c8cbf4 pci_claim_resource +EXPORT_SYMBOL vmlinux 0xe6cb22ad grab_cache_page_write_begin +EXPORT_SYMBOL vmlinux 0xe6cf51b2 devm_free_irq +EXPORT_SYMBOL vmlinux 0xe6ef202c __skb_recv_datagram +EXPORT_SYMBOL vmlinux 0xe7038d50 dquot_release +EXPORT_SYMBOL vmlinux 0xe70877d4 acpi_remove_sci_handler +EXPORT_SYMBOL vmlinux 0xe7257ab8 xa_store_range +EXPORT_SYMBOL vmlinux 0xe72d5200 init_pseudo +EXPORT_SYMBOL vmlinux 0xe7324b9a utf8nfdicf +EXPORT_SYMBOL vmlinux 0xe745f4d2 padata_do_parallel +EXPORT_SYMBOL vmlinux 0xe74dcb84 nf_reinject +EXPORT_SYMBOL vmlinux 0xe756a41c capable_wrt_inode_uidgid +EXPORT_SYMBOL vmlinux 0xe76c7541 jbd2_complete_transaction +EXPORT_SYMBOL vmlinux 0xe7732696 __xfrm_policy_check +EXPORT_SYMBOL vmlinux 0xe77ec164 pci_find_resource +EXPORT_SYMBOL vmlinux 0xe77f4d06 phy_set_asym_pause +EXPORT_SYMBOL vmlinux 0xe787698f acpi_processor_register_performance +EXPORT_SYMBOL vmlinux 0xe7a02573 ida_alloc_range +EXPORT_SYMBOL vmlinux 0xe7b00dfb __x86_indirect_thunk_r13 +EXPORT_SYMBOL vmlinux 0xe7b88b35 uart_write_wakeup +EXPORT_SYMBOL vmlinux 0xe7bfa767 fiemap_prep +EXPORT_SYMBOL vmlinux 0xe7c481d5 vme_master_mmap +EXPORT_SYMBOL vmlinux 0xe7cdbe2c vlan_vids_del_by_dev +EXPORT_SYMBOL vmlinux 0xe7d3c4c1 __tracepoint_kmem_cache_free +EXPORT_SYMBOL vmlinux 0xe7d4daac seq_list_next +EXPORT_SYMBOL vmlinux 0xe7f31782 flow_rule_match_ipv4_addrs +EXPORT_SYMBOL vmlinux 0xe7f6780c acpi_bus_get_status +EXPORT_SYMBOL vmlinux 0xe8342e80 nd_btt_arena_is_valid +EXPORT_SYMBOL vmlinux 0xe8534548 mr_mfc_seq_next +EXPORT_SYMBOL vmlinux 0xe85abbb9 pipe_unlock +EXPORT_SYMBOL vmlinux 0xe85f2123 acpi_tb_unload_table +EXPORT_SYMBOL vmlinux 0xe86ea0c2 is_bad_inode +EXPORT_SYMBOL vmlinux 0xe87309ac dst_init +EXPORT_SYMBOL vmlinux 0xe8964903 dst_cow_metrics_generic +EXPORT_SYMBOL vmlinux 0xe8a0a7fc in6_dev_finish_destroy +EXPORT_SYMBOL vmlinux 0xe8a76724 phy_driver_register +EXPORT_SYMBOL vmlinux 0xe8b813c3 pci_alloc_host_bridge +EXPORT_SYMBOL vmlinux 0xe8ba2d5e remove_conflicting_pci_framebuffers +EXPORT_SYMBOL vmlinux 0xe8baf2c2 pci_write_config_dword +EXPORT_SYMBOL vmlinux 0xe8cd5dd9 fc_mount +EXPORT_SYMBOL vmlinux 0xe8d43d35 tcp_sock_set_keepcnt +EXPORT_SYMBOL vmlinux 0xe8fbf4fa __alloc_bucket_spinlocks +EXPORT_SYMBOL vmlinux 0xe91269e2 mipi_dsi_detach +EXPORT_SYMBOL vmlinux 0xe914e41e strcpy +EXPORT_SYMBOL vmlinux 0xe915945c dmaenginem_async_device_register +EXPORT_SYMBOL vmlinux 0xe921c738 nf_log_unregister +EXPORT_SYMBOL vmlinux 0xe92af07a sock_wfree +EXPORT_SYMBOL vmlinux 0xe93f0160 seq_escape +EXPORT_SYMBOL vmlinux 0xe9418dff skb_kill_datagram +EXPORT_SYMBOL vmlinux 0xe949f34b param_set_int +EXPORT_SYMBOL vmlinux 0xe94fa9f5 page_pool_create +EXPORT_SYMBOL vmlinux 0xe953b21f get_next_ino +EXPORT_SYMBOL vmlinux 0xe95d9c85 input_set_capability +EXPORT_SYMBOL vmlinux 0xe96ebe39 tcp_shutdown +EXPORT_SYMBOL vmlinux 0xe97d74a5 touch_atime +EXPORT_SYMBOL vmlinux 0xe982b37a tty_register_device +EXPORT_SYMBOL vmlinux 0xe98a6015 vfio_register_notifier +EXPORT_SYMBOL vmlinux 0xe9942699 vme_init_bridge +EXPORT_SYMBOL vmlinux 0xe99b5137 tcp_get_md5sig_pool +EXPORT_SYMBOL vmlinux 0xe9a46de0 dev_change_proto_down +EXPORT_SYMBOL vmlinux 0xe9a5e67f intel_graphics_stolen_res +EXPORT_SYMBOL vmlinux 0xe9af7397 __xa_set_mark +EXPORT_SYMBOL vmlinux 0xe9cf8251 fscrypt_ioctl_get_policy +EXPORT_SYMBOL vmlinux 0xe9e8b863 sock_common_recvmsg +EXPORT_SYMBOL vmlinux 0xe9e8faeb efi_tpm_final_log_size +EXPORT_SYMBOL vmlinux 0xe9f64872 __cleancache_invalidate_inode +EXPORT_SYMBOL vmlinux 0xe9f7149c zlib_deflate_workspacesize +EXPORT_SYMBOL vmlinux 0xea231bdc down_write_killable +EXPORT_SYMBOL vmlinux 0xea2ea0c9 mipi_dsi_dcs_set_column_address +EXPORT_SYMBOL vmlinux 0xea3c8e4e scsilun_to_int +EXPORT_SYMBOL vmlinux 0xea3d6cb7 ilookup +EXPORT_SYMBOL vmlinux 0xea6f9a36 zlib_deflate_dfltcc_enabled +EXPORT_SYMBOL vmlinux 0xea748810 ip6tun_encaps +EXPORT_SYMBOL vmlinux 0xea778fab sg_pcopy_to_buffer +EXPORT_SYMBOL vmlinux 0xea80dfe1 security_req_classify_flow +EXPORT_SYMBOL vmlinux 0xea888bf0 scsi_scan_target +EXPORT_SYMBOL vmlinux 0xeaa0fad8 lock_sock_nested +EXPORT_SYMBOL vmlinux 0xeab6f4c4 acpi_check_resource_conflict +EXPORT_SYMBOL vmlinux 0xeabf6b61 mr_mfc_seq_idx +EXPORT_SYMBOL vmlinux 0xeae3dfd6 __const_udelay +EXPORT_SYMBOL vmlinux 0xeae6c8b0 simple_setattr +EXPORT_SYMBOL vmlinux 0xeafc141f __posix_acl_chmod +EXPORT_SYMBOL vmlinux 0xeb233a45 __kmalloc +EXPORT_SYMBOL vmlinux 0xeb236993 fddi_type_trans +EXPORT_SYMBOL vmlinux 0xeb2391c9 gen_new_estimator +EXPORT_SYMBOL vmlinux 0xeb2c15d7 pci_scan_root_bus_bridge +EXPORT_SYMBOL vmlinux 0xeb37101c audit_log_end +EXPORT_SYMBOL vmlinux 0xeb44339a free_pages_exact +EXPORT_SYMBOL vmlinux 0xeb613b2c simple_getattr +EXPORT_SYMBOL vmlinux 0xeb7f6046 acpi_get_devices +EXPORT_SYMBOL vmlinux 0xeb82dd6b agp_bridge +EXPORT_SYMBOL vmlinux 0xeb8c4f00 phy_attached_print +EXPORT_SYMBOL vmlinux 0xeb9e913d sgl_alloc_order +EXPORT_SYMBOL vmlinux 0xeba22b37 set_anon_super_fc +EXPORT_SYMBOL vmlinux 0xeba7aa22 flow_block_cb_lookup +EXPORT_SYMBOL vmlinux 0xebb4c7d4 xfrm_policy_alloc +EXPORT_SYMBOL vmlinux 0xebc7faa2 inet_csk_reqsk_queue_drop +EXPORT_SYMBOL vmlinux 0xebcdc771 configfs_register_group +EXPORT_SYMBOL vmlinux 0xebd89e65 ip_sock_set_tos +EXPORT_SYMBOL vmlinux 0xebf74471 pps_lookup_dev +EXPORT_SYMBOL vmlinux 0xec237e4f xps_needed +EXPORT_SYMBOL vmlinux 0xec2b848b pci_bus_write_config_byte +EXPORT_SYMBOL vmlinux 0xec2b8a42 acpi_walk_namespace +EXPORT_SYMBOL vmlinux 0xec2e1c8f proc_doulongvec_minmax +EXPORT_SYMBOL vmlinux 0xec3034eb inet_csk_reqsk_queue_drop_and_put +EXPORT_SYMBOL vmlinux 0xec4d9e3a clk_get_sys +EXPORT_SYMBOL vmlinux 0xec543b19 clocksource_change_rating +EXPORT_SYMBOL vmlinux 0xec792c72 nf_unregister_net_hook +EXPORT_SYMBOL vmlinux 0xec7bc3d6 param_get_ulong +EXPORT_SYMBOL vmlinux 0xeca2552b update_devfreq +EXPORT_SYMBOL vmlinux 0xecac8407 __memcpy +EXPORT_SYMBOL vmlinux 0xecb3ac4f devfreq_resume_device +EXPORT_SYMBOL vmlinux 0xecb60d67 skb_clone_sk +EXPORT_SYMBOL vmlinux 0xece38745 skb_push +EXPORT_SYMBOL vmlinux 0xece784c2 rb_first +EXPORT_SYMBOL vmlinux 0xecfd68ef acpi_get_node +EXPORT_SYMBOL vmlinux 0xed00c4fb acpi_os_printf +EXPORT_SYMBOL vmlinux 0xed0ae863 dma_pool_create +EXPORT_SYMBOL vmlinux 0xed111873 ethtool_rx_flow_rule_create +EXPORT_SYMBOL vmlinux 0xed16596e kill_litter_super +EXPORT_SYMBOL vmlinux 0xed2661d2 register_md_cluster_operations +EXPORT_SYMBOL vmlinux 0xed34ebbc acpi_any_gpe_status_set +EXPORT_SYMBOL vmlinux 0xed3945c6 key_move +EXPORT_SYMBOL vmlinux 0xed3d85f3 remap_vmalloc_range_partial +EXPORT_SYMBOL vmlinux 0xed49e7c7 security_path_unlink +EXPORT_SYMBOL vmlinux 0xed55f929 acpi_os_unmap_generic_address +EXPORT_SYMBOL vmlinux 0xed7ffdc0 vfs_rmdir +EXPORT_SYMBOL vmlinux 0xed83dea0 poll_initwait +EXPORT_SYMBOL vmlinux 0xed9bc3fd tcp_splice_read +EXPORT_SYMBOL vmlinux 0xeda47454 neigh_lookup_nodev +EXPORT_SYMBOL vmlinux 0xedbaee5e nla_strcmp +EXPORT_SYMBOL vmlinux 0xedc03953 iounmap +EXPORT_SYMBOL vmlinux 0xedcce78c audit_log +EXPORT_SYMBOL vmlinux 0xede28d38 __skb_vlan_pop +EXPORT_SYMBOL vmlinux 0xede81509 __cleancache_init_fs +EXPORT_SYMBOL vmlinux 0xedeafb38 __napi_alloc_skb +EXPORT_SYMBOL vmlinux 0xedf512d9 sock_recvmsg +EXPORT_SYMBOL vmlinux 0xee2d0fc7 _local_bh_enable +EXPORT_SYMBOL vmlinux 0xee50375c amd_iommu_flush_tlb +EXPORT_SYMBOL vmlinux 0xee543583 acpi_get_hp_hw_control_from_firmware +EXPORT_SYMBOL vmlinux 0xee58e970 fb_add_videomode +EXPORT_SYMBOL vmlinux 0xee791c3f dev_mc_del_global +EXPORT_SYMBOL vmlinux 0xee7d7deb gen_pool_dma_zalloc +EXPORT_SYMBOL vmlinux 0xee7eb9e1 pnp_platform_devices +EXPORT_SYMBOL vmlinux 0xee894a8d tty_port_tty_get +EXPORT_SYMBOL vmlinux 0xee8acbc8 jbd2_journal_invalidatepage +EXPORT_SYMBOL vmlinux 0xee8d74d6 jiffies64_to_nsecs +EXPORT_SYMBOL vmlinux 0xee91879b rb_first_postorder +EXPORT_SYMBOL vmlinux 0xee9b9c10 pcie_print_link_status +EXPORT_SYMBOL vmlinux 0xeea89b5e bioset_integrity_create +EXPORT_SYMBOL vmlinux 0xeeaa4d3f pci_add_new_bus +EXPORT_SYMBOL vmlinux 0xeeab1efa md_bitmap_cond_end_sync +EXPORT_SYMBOL vmlinux 0xeeadf7dc md_write_end +EXPORT_SYMBOL vmlinux 0xeeb477dc cdrom_get_media_event +EXPORT_SYMBOL vmlinux 0xeec3481d __inet6_lookup_established +EXPORT_SYMBOL vmlinux 0xeec3f6ea param_set_ulong +EXPORT_SYMBOL vmlinux 0xeee98d5a skb_split +EXPORT_SYMBOL vmlinux 0xeef00c29 xfrm_state_lookup_byaddr +EXPORT_SYMBOL vmlinux 0xef1beeee scsi_vpd_tpg_id +EXPORT_SYMBOL vmlinux 0xef1c3d4d nobh_writepage +EXPORT_SYMBOL vmlinux 0xef3b5c90 generic_pipe_buf_try_steal +EXPORT_SYMBOL vmlinux 0xef4b7493 do_clone_file_range +EXPORT_SYMBOL vmlinux 0xef7fa876 scsi_host_put +EXPORT_SYMBOL vmlinux 0xef988b1c devm_mfd_add_devices +EXPORT_SYMBOL vmlinux 0xef997e2f sock_recv_errqueue +EXPORT_SYMBOL vmlinux 0xef99aa2d seq_pad +EXPORT_SYMBOL vmlinux 0xef9aedfc boot_option_idle_override +EXPORT_SYMBOL vmlinux 0xefa5afd3 component_match_add_typed +EXPORT_SYMBOL vmlinux 0xefa7669c tcp_seq_start +EXPORT_SYMBOL vmlinux 0xefae1d80 __set_page_dirty_buffers +EXPORT_SYMBOL vmlinux 0xefaf2e4f tcf_queue_work +EXPORT_SYMBOL vmlinux 0xefc405b4 sock_sendmsg +EXPORT_SYMBOL vmlinux 0xefcb1029 __tcf_em_tree_match +EXPORT_SYMBOL vmlinux 0xefcea2e7 acpi_warning +EXPORT_SYMBOL vmlinux 0xefd104c3 vlan_vid_add +EXPORT_SYMBOL vmlinux 0xefd1e4d0 ip_frag_next +EXPORT_SYMBOL vmlinux 0xefd30512 __cpuhp_setup_state +EXPORT_SYMBOL vmlinux 0xefe37195 blk_mq_unique_tag +EXPORT_SYMBOL vmlinux 0xefe4f679 ZSTD_CCtxWorkspaceBound +EXPORT_SYMBOL vmlinux 0xefebbd40 ioread64be_lo_hi +EXPORT_SYMBOL vmlinux 0xefee932c acpi_get_data_full +EXPORT_SYMBOL vmlinux 0xeff11f63 remove_watch_from_object +EXPORT_SYMBOL vmlinux 0xeff608e0 kstrtos16_from_user +EXPORT_SYMBOL vmlinux 0xf0009fee put_pages_list +EXPORT_SYMBOL vmlinux 0xf008a885 seg6_hmac_init +EXPORT_SYMBOL vmlinux 0xf014ef06 __inode_add_bytes +EXPORT_SYMBOL vmlinux 0xf0224be2 vme_register_driver +EXPORT_SYMBOL vmlinux 0xf029e3fd set_disk_ro +EXPORT_SYMBOL vmlinux 0xf02aa937 wait_for_completion_interruptible_timeout +EXPORT_SYMBOL vmlinux 0xf02bda2c d_make_root +EXPORT_SYMBOL vmlinux 0xf02e712f udp_seq_start +EXPORT_SYMBOL vmlinux 0xf044b02b tcp_child_process +EXPORT_SYMBOL vmlinux 0xf049dd9b pci_remove_bus +EXPORT_SYMBOL vmlinux 0xf04b5ec6 devm_request_threaded_irq +EXPORT_SYMBOL vmlinux 0xf05c32ad rdmsr_on_cpus +EXPORT_SYMBOL vmlinux 0xf065f629 ioread16be +EXPORT_SYMBOL vmlinux 0xf08c47bd inet_csk_accept +EXPORT_SYMBOL vmlinux 0xf08c67de napi_alloc_frag +EXPORT_SYMBOL vmlinux 0xf09170f4 ip_generic_getfrag +EXPORT_SYMBOL vmlinux 0xf09744b4 pci_get_class +EXPORT_SYMBOL vmlinux 0xf0995acc pci_iounmap +EXPORT_SYMBOL vmlinux 0xf09b5d9a get_zeroed_page +EXPORT_SYMBOL vmlinux 0xf0b7cd71 pci_disable_link_state +EXPORT_SYMBOL vmlinux 0xf0bdfe3a block_write_end +EXPORT_SYMBOL vmlinux 0xf0e0807d agp_backend_release +EXPORT_SYMBOL vmlinux 0xf0e70165 dma_direct_unmap_sg +EXPORT_SYMBOL vmlinux 0xf100e95c wireless_send_event +EXPORT_SYMBOL vmlinux 0xf102033e slhc_remember +EXPORT_SYMBOL vmlinux 0xf10de535 ioread8 +EXPORT_SYMBOL vmlinux 0xf11543ff find_first_zero_bit +EXPORT_SYMBOL vmlinux 0xf12fdc93 sk_free +EXPORT_SYMBOL vmlinux 0xf15ca1c5 init_task +EXPORT_SYMBOL vmlinux 0xf16efca4 tcf_block_put_ext +EXPORT_SYMBOL vmlinux 0xf1848ee2 acpi_install_sci_handler +EXPORT_SYMBOL vmlinux 0xf195c682 fb_invert_cmaps +EXPORT_SYMBOL vmlinux 0xf1969a8e __usecs_to_jiffies +EXPORT_SYMBOL vmlinux 0xf1a68107 acpi_processor_preregister_performance +EXPORT_SYMBOL vmlinux 0xf1bdac7e framebuffer_release +EXPORT_SYMBOL vmlinux 0xf1cf6359 neigh_lookup +EXPORT_SYMBOL vmlinux 0xf1d00628 __cpuhp_remove_state +EXPORT_SYMBOL vmlinux 0xf1d8fc2a nvdimm_revalidate_disk +EXPORT_SYMBOL vmlinux 0xf1db1704 nla_memcpy +EXPORT_SYMBOL vmlinux 0xf1debd80 nd_device_notify +EXPORT_SYMBOL vmlinux 0xf1df7a90 proto_register +EXPORT_SYMBOL vmlinux 0xf1e046cc panic +EXPORT_SYMBOL vmlinux 0xf1e58bb6 mipi_dsi_dcs_enter_sleep_mode +EXPORT_SYMBOL vmlinux 0xf1e69bf9 finish_no_open +EXPORT_SYMBOL vmlinux 0xf1e98c74 avenrun +EXPORT_SYMBOL vmlinux 0xf21017d9 mutex_trylock +EXPORT_SYMBOL vmlinux 0xf2215f74 blk_finish_plug +EXPORT_SYMBOL vmlinux 0xf22719fc pci_prepare_to_sleep +EXPORT_SYMBOL vmlinux 0xf23fcb99 __kfifo_in +EXPORT_SYMBOL vmlinux 0xf24b565e unregister_binfmt +EXPORT_SYMBOL vmlinux 0xf24d8571 tc_setup_cb_replace +EXPORT_SYMBOL vmlinux 0xf25bfa12 rtc_add_groups +EXPORT_SYMBOL vmlinux 0xf28404cf devlink_dpipe_header_ipv6 +EXPORT_SYMBOL vmlinux 0xf29403e5 acpi_install_table_handler +EXPORT_SYMBOL vmlinux 0xf29f8515 __kfifo_dma_out_prepare_r +EXPORT_SYMBOL vmlinux 0xf2a9e94a textsearch_destroy +EXPORT_SYMBOL vmlinux 0xf2b81b64 arch_io_reserve_memtype_wc +EXPORT_SYMBOL vmlinux 0xf2c43f3f zlib_deflate +EXPORT_SYMBOL vmlinux 0xf2d4d3a0 pci_enable_atomic_ops_to_root +EXPORT_SYMBOL vmlinux 0xf2e03dac inode_add_bytes +EXPORT_SYMBOL vmlinux 0xf2e0928d skb_ext_add +EXPORT_SYMBOL vmlinux 0xf2e5bd87 security_free_mnt_opts +EXPORT_SYMBOL vmlinux 0xf2ec54d4 tty_port_hangup +EXPORT_SYMBOL vmlinux 0xf2f53617 memregion_free +EXPORT_SYMBOL vmlinux 0xf30965ac iosf_mbi_register_pmic_bus_access_notifier +EXPORT_SYMBOL vmlinux 0xf3096b79 pci_request_irq +EXPORT_SYMBOL vmlinux 0xf30a4571 device_match_acpi_dev +EXPORT_SYMBOL vmlinux 0xf3107926 sha224_update +EXPORT_SYMBOL vmlinux 0xf319a9ec dev_remove_pack +EXPORT_SYMBOL vmlinux 0xf3268567 d_alloc +EXPORT_SYMBOL vmlinux 0xf3341268 __clear_user +EXPORT_SYMBOL vmlinux 0xf336f755 tty_check_change +EXPORT_SYMBOL vmlinux 0xf346231f seq_list_start_head +EXPORT_SYMBOL vmlinux 0xf34eac9b compat_nf_getsockopt +EXPORT_SYMBOL vmlinux 0xf353a698 register_module_notifier +EXPORT_SYMBOL vmlinux 0xf36cfcdf configfs_unregister_group +EXPORT_SYMBOL vmlinux 0xf3770422 d_find_alias +EXPORT_SYMBOL vmlinux 0xf3817bee sdev_disable_disk_events +EXPORT_SYMBOL vmlinux 0xf3893a88 scsi_bios_ptable +EXPORT_SYMBOL vmlinux 0xf389fe60 __hw_addr_init +EXPORT_SYMBOL vmlinux 0xf3916987 global_cursor_default +EXPORT_SYMBOL vmlinux 0xf3a57892 release_dentry_name_snapshot +EXPORT_SYMBOL vmlinux 0xf3af1eb1 seq_dentry +EXPORT_SYMBOL vmlinux 0xf3b30a06 utf8version_latest +EXPORT_SYMBOL vmlinux 0xf3c9259b remove_arg_zero +EXPORT_SYMBOL vmlinux 0xf3e0e1df allocate_resource +EXPORT_SYMBOL vmlinux 0xf3e6402e __bitmap_equal +EXPORT_SYMBOL vmlinux 0xf3e739f4 pcie_capability_read_dword +EXPORT_SYMBOL vmlinux 0xf3e9197d find_lock_entry +EXPORT_SYMBOL vmlinux 0xf3ed6a26 tty_port_close_end +EXPORT_SYMBOL vmlinux 0xf40e7a73 __xa_alloc +EXPORT_SYMBOL vmlinux 0xf4232cbb dst_alloc +EXPORT_SYMBOL vmlinux 0xf424dcd0 pneigh_enqueue +EXPORT_SYMBOL vmlinux 0xf425eaeb __nla_reserve_64bit +EXPORT_SYMBOL vmlinux 0xf42840d5 param_ops_byte +EXPORT_SYMBOL vmlinux 0xf428b053 inet_csk_complete_hashdance +EXPORT_SYMBOL vmlinux 0xf43be381 param_get_ullong +EXPORT_SYMBOL vmlinux 0xf43d2caa acpi_remove_interface +EXPORT_SYMBOL vmlinux 0xf43eae92 key_unlink +EXPORT_SYMBOL vmlinux 0xf441ac43 ioread8_rep +EXPORT_SYMBOL vmlinux 0xf44a904a net_ns_barrier +EXPORT_SYMBOL vmlinux 0xf456cdc3 tso_build_hdr +EXPORT_SYMBOL vmlinux 0xf46df3de file_ns_capable +EXPORT_SYMBOL vmlinux 0xf474c21c bitmap_print_to_pagebuf +EXPORT_SYMBOL vmlinux 0xf474fdcb kfree_const +EXPORT_SYMBOL vmlinux 0xf47dc83e xfrm_state_delete +EXPORT_SYMBOL vmlinux 0xf48be74d dquot_get_dqblk +EXPORT_SYMBOL vmlinux 0xf4a565fd wrmsr_on_cpus +EXPORT_SYMBOL vmlinux 0xf4a5c213 avail_to_resrv_perfctr_nmi_bit +EXPORT_SYMBOL vmlinux 0xf4b2b86e cgroup_bpf_enabled_key +EXPORT_SYMBOL vmlinux 0xf4b754fd acpi_resources_are_enforced +EXPORT_SYMBOL vmlinux 0xf4baa37e jbd2_journal_clear_err +EXPORT_SYMBOL vmlinux 0xf4bdbeb9 __frontswap_invalidate_area +EXPORT_SYMBOL vmlinux 0xf4c6a598 kobject_put +EXPORT_SYMBOL vmlinux 0xf4d3b792 blk_queue_split +EXPORT_SYMBOL vmlinux 0xf4db35bc stpcpy +EXPORT_SYMBOL vmlinux 0xf4e90175 submit_bio +EXPORT_SYMBOL vmlinux 0xf4f14de6 rtnl_trylock +EXPORT_SYMBOL vmlinux 0xf4f70a5f bdi_put +EXPORT_SYMBOL vmlinux 0xf4faf6d6 generic_perform_write +EXPORT_SYMBOL vmlinux 0xf518b782 inet_offloads +EXPORT_SYMBOL vmlinux 0xf5298aeb put_disk +EXPORT_SYMBOL vmlinux 0xf53d4c26 qdisc_class_hash_destroy +EXPORT_SYMBOL vmlinux 0xf545384c amd_iommu_pc_get_reg +EXPORT_SYMBOL vmlinux 0xf559c11b ps2_end_command +EXPORT_SYMBOL vmlinux 0xf55dee74 write_dirty_buffer +EXPORT_SYMBOL vmlinux 0xf55eebb4 skb_queue_purge +EXPORT_SYMBOL vmlinux 0xf5618cf5 mipi_dsi_dcs_nop +EXPORT_SYMBOL vmlinux 0xf5847332 inet_getname +EXPORT_SYMBOL vmlinux 0xf591753d nf_hooks_needed +EXPORT_SYMBOL vmlinux 0xf5a20ed2 __genradix_prealloc +EXPORT_SYMBOL vmlinux 0xf5a5c84c msrs_alloc +EXPORT_SYMBOL vmlinux 0xf5aba4d5 request_key_with_auxdata +EXPORT_SYMBOL vmlinux 0xf5c31666 __cgroup_bpf_run_filter_skb +EXPORT_SYMBOL vmlinux 0xf5c3673e cont_write_begin +EXPORT_SYMBOL vmlinux 0xf5c5f496 set_cached_acl +EXPORT_SYMBOL vmlinux 0xf5e079e6 jbd2_journal_abort +EXPORT_SYMBOL vmlinux 0xf5e5a87b hdmi_infoframe_pack_only +EXPORT_SYMBOL vmlinux 0xf5e7ea40 ktime_get_coarse_ts64 +EXPORT_SYMBOL vmlinux 0xf609b6d0 udp_lib_getsockopt +EXPORT_SYMBOL vmlinux 0xf60ab926 acpi_get_event_status +EXPORT_SYMBOL vmlinux 0xf643d104 hsiphash_4u32 +EXPORT_SYMBOL vmlinux 0xf64582ee ip_frag_init +EXPORT_SYMBOL vmlinux 0xf653699a devm_clk_get +EXPORT_SYMBOL vmlinux 0xf6565d13 tcp_sock_set_user_timeout +EXPORT_SYMBOL vmlinux 0xf665f74f sock_load_diag_module +EXPORT_SYMBOL vmlinux 0xf670268d inet_recvmsg +EXPORT_SYMBOL vmlinux 0xf678719d sock_i_ino +EXPORT_SYMBOL vmlinux 0xf681acfc hdmi_infoframe_unpack +EXPORT_SYMBOL vmlinux 0xf68285c0 register_inetaddr_notifier +EXPORT_SYMBOL vmlinux 0xf68733e5 t10_pi_type3_crc +EXPORT_SYMBOL vmlinux 0xf6925937 pcie_get_readrq +EXPORT_SYMBOL vmlinux 0xf6da4ca4 netdev_notify_peers +EXPORT_SYMBOL vmlinux 0xf6e9e05d netlink_net_capable +EXPORT_SYMBOL vmlinux 0xf6ebc03b net_ratelimit +EXPORT_SYMBOL vmlinux 0xf6f9d58d init_on_free +EXPORT_SYMBOL vmlinux 0xf6fc8791 __bitmap_xor +EXPORT_SYMBOL vmlinux 0xf70944aa tag_pages_for_writeback +EXPORT_SYMBOL vmlinux 0xf716820e unregister_key_type +EXPORT_SYMBOL vmlinux 0xf7326329 configfs_unregister_default_group +EXPORT_SYMBOL vmlinux 0xf738d1be register_blocking_lsm_notifier +EXPORT_SYMBOL vmlinux 0xf74406c8 tso_count_descs +EXPORT_SYMBOL vmlinux 0xf753cff1 uart_get_divisor +EXPORT_SYMBOL vmlinux 0xf7583e01 file_modified +EXPORT_SYMBOL vmlinux 0xf7584a9c find_font +EXPORT_SYMBOL vmlinux 0xf75af6c3 sk_dst_check +EXPORT_SYMBOL vmlinux 0xf75b2a5b setup_arg_pages +EXPORT_SYMBOL vmlinux 0xf767f190 end_buffer_read_sync +EXPORT_SYMBOL vmlinux 0xf77337a1 hdmi_audio_infoframe_check +EXPORT_SYMBOL vmlinux 0xf7746d72 fb_blank +EXPORT_SYMBOL vmlinux 0xf79ca3bb acpi_remove_gpe_block +EXPORT_SYMBOL vmlinux 0xf7b27da1 skb_flow_dissect_tunnel_info +EXPORT_SYMBOL vmlinux 0xf7d1b347 d_path +EXPORT_SYMBOL vmlinux 0xf7d6630d get_watch_queue +EXPORT_SYMBOL vmlinux 0xf7d71abc eth_gro_complete +EXPORT_SYMBOL vmlinux 0xf7da6e6f acpi_unload_table +EXPORT_SYMBOL vmlinux 0xf7ddbfc7 simple_nosetlease +EXPORT_SYMBOL vmlinux 0xf7ef9a79 iosf_mbi_punit_release +EXPORT_SYMBOL vmlinux 0xf7f0863d inet_gro_complete +EXPORT_SYMBOL vmlinux 0xf7fd05e3 dev_set_promiscuity +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 0xf819b4c7 key_type_keyring +EXPORT_SYMBOL vmlinux 0xf81d691c __sk_mem_schedule +EXPORT_SYMBOL vmlinux 0xf82abc1d isa_dma_bridge_buggy +EXPORT_SYMBOL vmlinux 0xf82ec573 rb_prev +EXPORT_SYMBOL vmlinux 0xf8386d97 cpumask_next_and +EXPORT_SYMBOL vmlinux 0xf84990f9 inet6_ioctl +EXPORT_SYMBOL vmlinux 0xf84bd6ee bpf_stats_enabled_key +EXPORT_SYMBOL vmlinux 0xf8595510 _raw_read_lock_irq +EXPORT_SYMBOL vmlinux 0xf870dbcd phy_support_asym_pause +EXPORT_SYMBOL vmlinux 0xf8800328 neigh_carrier_down +EXPORT_SYMBOL vmlinux 0xf888ca21 sg_init_table +EXPORT_SYMBOL vmlinux 0xf8b1a8dc pci_release_resource +EXPORT_SYMBOL vmlinux 0xf8b4f470 migrate_page_states +EXPORT_SYMBOL vmlinux 0xf8b75841 mipi_dsi_dcs_set_display_on +EXPORT_SYMBOL vmlinux 0xf8ba710c input_mt_report_finger_count +EXPORT_SYMBOL vmlinux 0xf8bb464f netdev_master_upper_dev_link +EXPORT_SYMBOL vmlinux 0xf8bf8e22 ZSTD_DDictWorkspaceBound +EXPORT_SYMBOL vmlinux 0xf8d07858 bitmap_from_arr32 +EXPORT_SYMBOL vmlinux 0xf8d20aa4 unregister_nexthop_notifier +EXPORT_SYMBOL vmlinux 0xf8da2b77 blk_mq_kick_requeue_list +EXPORT_SYMBOL vmlinux 0xf8e876b9 dcb_ieee_delapp +EXPORT_SYMBOL vmlinux 0xf8f2c372 lock_page_memcg +EXPORT_SYMBOL vmlinux 0xf8f61ebc wake_up_var +EXPORT_SYMBOL vmlinux 0xf915179e refcount_dec_if_one +EXPORT_SYMBOL vmlinux 0xf921b8c5 iget_failed +EXPORT_SYMBOL vmlinux 0xf93fd09c fb_find_mode_cvt +EXPORT_SYMBOL vmlinux 0xf95cfe37 pmem_sector_size +EXPORT_SYMBOL vmlinux 0xf971cea8 utf8len +EXPORT_SYMBOL vmlinux 0xf98c5a00 bdget +EXPORT_SYMBOL vmlinux 0xf9a3c465 skb_vlan_push +EXPORT_SYMBOL vmlinux 0xf9a482f9 msleep +EXPORT_SYMBOL vmlinux 0xf9b4f50b translation_pre_enabled +EXPORT_SYMBOL vmlinux 0xf9b89c03 icmpv6_send +EXPORT_SYMBOL vmlinux 0xf9c0b663 strlcat +EXPORT_SYMBOL vmlinux 0xf9eced44 LZ4_compress_fast_continue +EXPORT_SYMBOL vmlinux 0xfa08f4b8 __tracepoint_dma_fence_signaled +EXPORT_SYMBOL vmlinux 0xfa165e88 set_pages_array_wc +EXPORT_SYMBOL vmlinux 0xfa297415 acpi_map_pxm_to_node +EXPORT_SYMBOL vmlinux 0xfa303b63 softnet_data +EXPORT_SYMBOL vmlinux 0xfa359c9c udp_gro_complete +EXPORT_SYMBOL vmlinux 0xfa4fc37d inet_frags_init +EXPORT_SYMBOL vmlinux 0xfa53c959 security_binder_transfer_binder +EXPORT_SYMBOL vmlinux 0xfa599bb2 netlink_register_notifier +EXPORT_SYMBOL vmlinux 0xfa6d2e9e agp_bind_memory +EXPORT_SYMBOL vmlinux 0xfa77cdea netdev_has_any_upper_dev +EXPORT_SYMBOL vmlinux 0xfa873ad0 prandom_seed +EXPORT_SYMBOL vmlinux 0xfa8a40c5 pagevec_lookup_range_tag +EXPORT_SYMBOL vmlinux 0xfa9c51cb irq_to_desc +EXPORT_SYMBOL vmlinux 0xfaa1fdf7 __tracepoint_rdpmc +EXPORT_SYMBOL vmlinux 0xfac3e00a __x86_retpoline_r9 +EXPORT_SYMBOL vmlinux 0xfac8865f sysctl_wmem_max +EXPORT_SYMBOL vmlinux 0xfacb6129 vm_map_pages_zero +EXPORT_SYMBOL vmlinux 0xfacc36d4 inet_confirm_addr +EXPORT_SYMBOL vmlinux 0xfae9cf8c fs_param_is_u64 +EXPORT_SYMBOL vmlinux 0xfb0a82b4 cpufreq_get_policy +EXPORT_SYMBOL vmlinux 0xfb2921f0 remove_proc_subtree +EXPORT_SYMBOL vmlinux 0xfb384d37 kasprintf +EXPORT_SYMBOL vmlinux 0xfb481954 vprintk +EXPORT_SYMBOL vmlinux 0xfb56e0e9 forget_all_cached_acls +EXPORT_SYMBOL vmlinux 0xfb578fc5 memset +EXPORT_SYMBOL vmlinux 0xfb6af58d recalc_sigpending +EXPORT_SYMBOL vmlinux 0xfb746cc9 down_killable +EXPORT_SYMBOL vmlinux 0xfb893ad7 pci_bus_size_bridges +EXPORT_SYMBOL vmlinux 0xfb8b0532 filp_open +EXPORT_SYMBOL vmlinux 0xfb9370ed ipv6_chk_addr_and_flags +EXPORT_SYMBOL vmlinux 0xfba7ddd2 match_u64 +EXPORT_SYMBOL vmlinux 0xfbaaf01e console_lock +EXPORT_SYMBOL vmlinux 0xfbad3cf0 scsi_normalize_sense +EXPORT_SYMBOL vmlinux 0xfbb7314b dma_sync_wait +EXPORT_SYMBOL vmlinux 0xfbb8a761 strscpy_pad +EXPORT_SYMBOL vmlinux 0xfbbbe3fc notify_change +EXPORT_SYMBOL vmlinux 0xfbc4f89e io_schedule_timeout +EXPORT_SYMBOL vmlinux 0xfbe34829 netlink_broadcast_filtered +EXPORT_SYMBOL vmlinux 0xfbe8ee28 acpi_get_table_by_index +EXPORT_SYMBOL vmlinux 0xfc0a8706 md_write_start +EXPORT_SYMBOL vmlinux 0xfc2d3060 pcie_set_readrq +EXPORT_SYMBOL vmlinux 0xfc336d2e __wake_up_bit +EXPORT_SYMBOL vmlinux 0xfc399557 utf8_load +EXPORT_SYMBOL vmlinux 0xfc39e32f ioport_unmap +EXPORT_SYMBOL vmlinux 0xfc4152fc ec_read +EXPORT_SYMBOL vmlinux 0xfc5c46e2 acpi_buffer_to_resource +EXPORT_SYMBOL vmlinux 0xfc696c2c alloc_etherdev_mqs +EXPORT_SYMBOL vmlinux 0xfc6e3ec0 simple_dir_inode_operations +EXPORT_SYMBOL vmlinux 0xfc724107 intel_gmch_probe +EXPORT_SYMBOL vmlinux 0xfc7e2596 down_trylock +EXPORT_SYMBOL vmlinux 0xfc9a4491 sock_no_sendmsg +EXPORT_SYMBOL vmlinux 0xfca2b893 __xfrm_state_destroy +EXPORT_SYMBOL vmlinux 0xfca9db90 napi_complete_done +EXPORT_SYMBOL vmlinux 0xfcb65d14 pci_disable_device +EXPORT_SYMBOL vmlinux 0xfcb926cd kstrtouint_from_user +EXPORT_SYMBOL vmlinux 0xfcc3eec2 param_set_bool +EXPORT_SYMBOL vmlinux 0xfcc5fc44 sock_wmalloc +EXPORT_SYMBOL vmlinux 0xfcd1819a hdmi_spd_infoframe_check +EXPORT_SYMBOL vmlinux 0xfce7830f scsi_test_unit_ready +EXPORT_SYMBOL vmlinux 0xfcec0987 enable_irq +EXPORT_SYMBOL vmlinux 0xfd0a7685 iov_iter_zero +EXPORT_SYMBOL vmlinux 0xfd1b72c9 tcp_add_backlog +EXPORT_SYMBOL vmlinux 0xfd221fa1 vga_switcheroo_init_domain_pm_ops +EXPORT_SYMBOL vmlinux 0xfd42527c __x86_retpoline_r15 +EXPORT_SYMBOL vmlinux 0xfd7c6b2e file_write_and_wait_range +EXPORT_SYMBOL vmlinux 0xfd7d723c xattr_full_name +EXPORT_SYMBOL vmlinux 0xfd93ee35 ioremap_wc +EXPORT_SYMBOL vmlinux 0xfda2b770 key_link +EXPORT_SYMBOL vmlinux 0xfda9581f prandom_u32 +EXPORT_SYMBOL vmlinux 0xfdab784f xfrm_replay_seqhi +EXPORT_SYMBOL vmlinux 0xfdb9b629 ioread32be +EXPORT_SYMBOL vmlinux 0xfdcb4ed3 acpi_os_get_line +EXPORT_SYMBOL vmlinux 0xfdcc8a0e fb_find_best_display +EXPORT_SYMBOL vmlinux 0xfdce9347 tcf_unregister_action +EXPORT_SYMBOL vmlinux 0xfdd4216d pcibios_align_resource +EXPORT_SYMBOL vmlinux 0xfdebea46 security_inode_invalidate_secctx +EXPORT_SYMBOL vmlinux 0xfdf70093 ZSTD_CStreamOutSize +EXPORT_SYMBOL vmlinux 0xfdfb792f amd_iommu_pc_supported +EXPORT_SYMBOL vmlinux 0xfe003d41 pcie_capability_read_word +EXPORT_SYMBOL vmlinux 0xfe029963 unregister_inetaddr_notifier +EXPORT_SYMBOL vmlinux 0xfe1b9265 devfreq_update_interval +EXPORT_SYMBOL vmlinux 0xfe1d2e94 key_create_or_update +EXPORT_SYMBOL vmlinux 0xfe449f3e rio_query_mport +EXPORT_SYMBOL vmlinux 0xfe487975 init_wait_entry +EXPORT_SYMBOL vmlinux 0xfe4d639d pcim_iomap_regions_request_all +EXPORT_SYMBOL vmlinux 0xfe5d4bb2 sys_tz +EXPORT_SYMBOL vmlinux 0xfe916dc6 hex_dump_to_buffer +EXPORT_SYMBOL vmlinux 0xfe9ebbbb acpi_osi_is_win8 +EXPORT_SYMBOL vmlinux 0xfea35c22 dev_get_by_name_rcu +EXPORT_SYMBOL vmlinux 0xfead52df vme_new_dma_list +EXPORT_SYMBOL vmlinux 0xfeb5d0aa verify_spi_info +EXPORT_SYMBOL vmlinux 0xfecfc81c alloc_skb_with_frags +EXPORT_SYMBOL vmlinux 0xfedcdb60 seq_hlist_next_percpu +EXPORT_SYMBOL vmlinux 0xfedf9edd pneigh_lookup +EXPORT_SYMBOL vmlinux 0xfee2af40 netpoll_poll_dev +EXPORT_SYMBOL vmlinux 0xfee43928 input_set_keycode +EXPORT_SYMBOL vmlinux 0xfeebc7c4 __kfifo_from_user_r +EXPORT_SYMBOL vmlinux 0xfefcb98e vme_dma_vme_attribute +EXPORT_SYMBOL vmlinux 0xff1e9dd8 seq_list_start +EXPORT_SYMBOL vmlinux 0xff20c411 tty_vhangup +EXPORT_SYMBOL vmlinux 0xff30126a vfs_path_lookup +EXPORT_SYMBOL vmlinux 0xff4da13e vfs_mknod +EXPORT_SYMBOL vmlinux 0xff6878cf fb_default_cmap +EXPORT_SYMBOL vmlinux 0xff87cd18 lockref_get_not_dead +EXPORT_SYMBOL vmlinux 0xff96788d generic_block_bmap +EXPORT_SYMBOL vmlinux 0xff9c4b56 ZSTD_compressBound +EXPORT_SYMBOL vmlinux 0xffaff63b blk_mq_start_request +EXPORT_SYMBOL vmlinux 0xffb7c514 ida_free +EXPORT_SYMBOL vmlinux 0xffc30c3a acpi_processor_power_init_bm_check +EXPORT_SYMBOL vmlinux 0xffc807ce in_dev_finish_destroy +EXPORT_SYMBOL vmlinux 0xffcafea6 send_sig +EXPORT_SYMBOL vmlinux 0xffcd7f49 iosf_mbi_punit_acquire +EXPORT_SYMBOL vmlinux 0xffeedf6a delayed_work_timer_fn +EXPORT_SYMBOL vmlinux 0xfff55de4 generic_block_fiemap +EXPORT_SYMBOL vmlinux 0xfffd7bf7 vga_put +EXPORT_SYMBOL vmlinux 0xfffde994 iov_iter_discard +EXPORT_SYMBOL_GPL arch/x86/crypto/camellia-aesni-avx-x86_64 0x19711697 camellia_xts_dec_16way +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 0x6f3a8de5 camellia_xts_enc_16way +EXPORT_SYMBOL_GPL arch/x86/crypto/camellia-aesni-avx-x86_64 0x8b44ee75 camellia_ecb_dec_16way +EXPORT_SYMBOL_GPL arch/x86/crypto/camellia-aesni-avx-x86_64 0x9056f10d camellia_xts_enc +EXPORT_SYMBOL_GPL arch/x86/crypto/camellia-aesni-avx-x86_64 0x9380a966 xts_camellia_setkey +EXPORT_SYMBOL_GPL arch/x86/crypto/camellia-aesni-avx-x86_64 0xc00f725a camellia_ctr_16way +EXPORT_SYMBOL_GPL arch/x86/crypto/camellia-aesni-avx-x86_64 0xfea2b457 camellia_xts_dec +EXPORT_SYMBOL_GPL arch/x86/crypto/camellia-x86_64 0x0b901549 camellia_dec_blk_2way +EXPORT_SYMBOL_GPL arch/x86/crypto/camellia-x86_64 0x315d28f7 camellia_crypt_ctr_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 0xee61eb71 camellia_crypt_ctr +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/glue_helper 0x0236f872 glue_xts_req_128bit +EXPORT_SYMBOL_GPL arch/x86/crypto/glue_helper 0x1f748593 glue_ctr_req_128bit +EXPORT_SYMBOL_GPL arch/x86/crypto/glue_helper 0x47c4e08f glue_xts_crypt_128bit_one +EXPORT_SYMBOL_GPL arch/x86/crypto/glue_helper 0x5f78ddda glue_cbc_encrypt_req_128bit +EXPORT_SYMBOL_GPL arch/x86/crypto/glue_helper 0x6c8bf791 glue_cbc_decrypt_req_128bit +EXPORT_SYMBOL_GPL arch/x86/crypto/glue_helper 0xf29a6e3b glue_ecb_req_128bit +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/serpent-avx-x86_64 0x5cea0c9c serpent_ctr_8way_avx +EXPORT_SYMBOL_GPL arch/x86/crypto/serpent-avx-x86_64 0x99341b41 serpent_xts_dec_8way_avx +EXPORT_SYMBOL_GPL arch/x86/crypto/serpent-avx-x86_64 0xa0100109 serpent_xts_dec +EXPORT_SYMBOL_GPL arch/x86/crypto/serpent-avx-x86_64 0xaebf6567 xts_serpent_setkey +EXPORT_SYMBOL_GPL arch/x86/crypto/serpent-avx-x86_64 0xb75988d7 __serpent_crypt_ctr +EXPORT_SYMBOL_GPL arch/x86/crypto/serpent-avx-x86_64 0xbdfa6cc0 serpent_xts_enc_8way_avx +EXPORT_SYMBOL_GPL arch/x86/crypto/serpent-avx-x86_64 0xcee44453 serpent_xts_enc +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 0x2c7b3458 twofish_enc_blk_ctr +EXPORT_SYMBOL_GPL arch/x86/crypto/twofish-x86_64-3way 0x31ddef7a twofish_enc_blk_ctr_3way +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 0x0207761f kvm_irq_has_notifier +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x03ee4856 kvm_slot_page_track_add_page +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x0c2d2138 kvm_read_guest_offset_cached +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x0d8f4740 kvm_mce_cap_supported +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x106c7d30 kvm_load_guest_xsave_state +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x106d6470 kvm_vcpu_destroy +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x1212954f kvm_emulate_instruction +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x1235000a kvm_tsc_scaling_ratio_frac_bits +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x130fd155 supported_xss +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x159b8d5e host_efer +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x15ac9c15 kvm_requeue_exception_e +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x15f5cf6a __tracepoint_kvm_nested_vmexit_inject +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x167cea3a kvm_emulate_wrmsr +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x17426302 kvm_emulate_halt +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x19dd0d58 kvm_write_guest_offset_cached +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x1b74af67 kvm_flush_remote_tlbs +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x1cf65ffc kvm_max_guest_tsc_khz +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x1d013832 kvm_enable_efer_bits +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x1db1c372 enable_vmware_backdoor +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x1de646da __tracepoint_kvm_avic_ga_log +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x1ea6f562 kvm_lapic_expired_hv_timer +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x1fbbf519 kvm_set_msr_common +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x2157b5fc kvm_requeue_exception +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x251e68d2 kvm_load_host_xsave_state +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x2525f4e2 kvm_get_running_vcpu +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x25285ad4 kvm_vcpu_write_guest +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x259e5345 kvm_read_guest_page_mmu +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x27046576 kvm_exit +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x279ba407 reprogram_fixed_counter +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x281bdc11 kvm_vcpu_gfn_to_pfn_atomic +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x28411ed7 kvm_max_tsc_scaling_ratio +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x29547e44 kvm_mmu_clear_dirty_pt_masked +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x2ad7adba kvm_is_visible_gfn +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x2bd1a010 kvm_emulate_cpuid +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x2d82cc24 kvm_spec_ctrl_test_value +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x2ed5c8be kvm_debugfs_dir +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x306eeb45 kvm_apicv_activated +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x30eca570 kvm_vcpu_wake_up +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x31b22fb0 kvm_get_dr +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x325fff64 kvm_slot_page_track_remove_page +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x3285b203 kvm_fast_pio +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x32b74a5b kvm_mmu_free_roots +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x32f13428 gfn_to_pfn_memslot +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x369c979a kvm_mmu_reset_context +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x37dac1c4 kvm_cpu_has_injectable_intr +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x3903d89c vcpu_put +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x39da49d2 kvm_emulate_instruction_from_buffer +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x39fd83db halt_poll_ns_shrink +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x3c1e9f5b kvm_get_msr_common +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x3c2bb1dd kvm_cpuid +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x3c8b970e kvm_intr_is_single_vcpu +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x3cc82f45 __tracepoint_kvm_cr +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x3d35e240 kvm_hv_get_assist_page +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x3e44c603 kvm_write_tsc +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x3eccb9c7 kvm_mtrr_valid +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x431a8ae4 kvm_set_cr3 +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x439fc9cc kvm_vcpu_map +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x46335815 kvm_mmu_unprotect_page_virt +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x470782ab kvm_vcpu_halt +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x478ff58e kvm_lapic_find_highest_irr +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x47ac0eaf kvm_arch_no_poll +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x485cd7f6 kvm_rebooting +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x49fa8ae4 gfn_to_memslot +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x4a0952f7 kvm_mmu_invalidate_gva +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x4bdd73ac kvm_cpu_has_interrupt +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x4c0cb4d3 kvm_apicv_init +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x4e3fd1b4 kvm_release_pfn_clean +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x4f8bd36a kvm_emulate_rdmsr +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x4fb6dc59 kvm_vcpu_unmap +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x50f67267 kvm_read_guest_virt +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x5352956e kvm_apic_update_ppr +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x54774f52 kvm_mmu_slot_leaf_clear_dirty +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x549d3c44 kvm_lapic_switch_to_sw_timer +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x54c264b3 kvm_rdpmc +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x570753e3 kvm_vcpu_update_apicv +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x5931cfc3 kvm_mmu_invlpg +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x598e8a17 __tracepoint_kvm_nested_vmrun +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x59e640c0 halt_poll_ns +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x5d996b31 kvm_set_cpu_caps +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x5dac8728 kvm_arch_has_assigned_device +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x5ee1d894 kvm_vcpu_read_guest_page +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x5f061c48 kvm_init_mmu +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x5fb8848b halt_poll_ns_grow_start +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x6151d896 kvm_set_xcr +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x616b4a1e kvm_mmu_sync_roots +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x6243ac82 __kvm_apic_update_irr +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x62857574 kvm_io_bus_get_dev +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x63270977 kvm_default_tsc_scaling_ratio +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x64fd3176 kvm_get_cs_db_l_bits +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x65c532be kvm_set_msi_irq +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x65ece2a2 __tracepoint_kvm_fast_mmio +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x66c4423a kvm_define_shared_msr +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x67f5e007 kvm_emulate_hypercall +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x6892e3c3 kvm_set_pfn_accessed +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x68b161ee kvm_init_shadow_ept_mmu +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x68f54e0f __tracepoint_kvm_skinit +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x6ae85402 kvm_queue_exception_p +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x6b8190ad handle_fastpath_set_msr_irqoff +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x6cee1206 kvm_vcpu_gfn_to_page +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x6d0fd045 kvm_get_rflags +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x709cd8cb kvm_spurious_fault +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x71043942 kvm_unmap_gfn +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x74428775 kvm_vcpu_gfn_to_pfn +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x74956913 kvm_set_msr +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x74b5cc23 kvm_vcpu_gfn_to_memslot +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x7763a671 __tracepoint_kvm_nested_vmenter_failed +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x7afe324e halt_poll_ns_grow +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x7b3b8ec2 gfn_to_page +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x7c94c99a kvm_release_pfn_dirty +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x7e1936a1 kvm_queue_exception +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x7f9e9c3f kvm_update_dr7 +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x804bcfad kvm_mmu_load +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x806d7c92 kvm_set_apic_base +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x816e4b69 kvm_mmu_slot_set_dirty +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x849344cc __tracepoint_kvm_pml_full +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x84990ecd kvm_apic_clear_irr +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x85fd35c5 kvm_get_msr +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x867690a7 __tracepoint_kvm_msr +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x86931b5d __tracepoint_kvm_avic_incomplete_ipi +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x86e30ff7 kvm_lapic_switch_to_hv_timer +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x87373e07 kvm_get_kvm +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x8789e597 kvm_get_apic_mode +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x87994510 kvm_set_cr8 +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x880d0bb0 kvm_clear_guest_page +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x888d979f __tracepoint_kvm_exit +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x897983ad kvm_write_guest_cached +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x8a5f7def kvm_wait_lapic_expire +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x8ad5594e reprogram_gp_counter +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x8b871f63 kvm_lapic_set_eoi +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x8d2ab664 kvm_lapic_reg_read +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x8d6f7a86 kvm_hv_assist_page_enabled +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x8e982dc5 kvm_read_guest +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x8fe27059 kvm_require_dr +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x91d4d992 __tracepoint_kvm_nested_vmexit +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x91f2fdbc kvm_put_kvm +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x9230461b gfn_to_pfn_prot +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x94abbd88 __tracepoint_kvm_invlpga +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x977232e4 kvm_set_memory_region +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x97e28dc5 vcpu_load +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x97f82fcb kvm_map_gfn +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x9874dc02 kvm_clear_guest +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x98db144d kvm_vcpu_gfn_to_hva +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x98dd5133 kvm_release_page_clean +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x9916bcde kvm_x86_ops +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x9f6d78fc kvm_get_pfn +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x9ff86359 kvm_inject_pending_timer_irqs +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xa0799721 kvm_request_apicv_update +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xa1c4231f kvm_set_pfn_dirty +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xa20d8e0d kvm_handle_page_fault +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xa370635a kvm_require_cpl +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xa3a09a99 gfn_to_pfn +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xa3f93202 kvm_valid_efer +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xa43c83c2 kvm_release_page_dirty +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xa4c000c5 kvm_inject_realmode_interrupt +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xa6152d16 kvm_configure_mmu +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xa75aa833 kvm_put_kvm_no_destroy +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xa7bc6bbf load_pdptrs +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xa85ba0f4 gfn_to_page_many_atomic +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xa90e44f5 kvm_mmu_set_mmio_spte_mask +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xa94afdf1 kvm_set_rflags +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xa96fc535 reprogram_counter +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xa975020d kvm_mmu_set_mask_ptes +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xaa2e0bf6 kvm_mmu_new_pgd +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xab31e82f gfn_to_pfn_memslot_atomic +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xab99afa8 kvm_task_switch +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xabbce7a8 handle_ud +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xabc8a929 kvm_io_bus_write +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xb097e540 __tracepoint_kvm_nested_intercepts +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xb0e0640b kvm_read_guest_cached +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xb3a9fbdc kvm_read_l1_tsc +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xb4b6bba6 current_vcpu +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xb4f2ebe2 kvm_arch_register_noncoherent_dma +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xb6a1cb47 kvm_vcpu_kick +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xb8601b28 kvm_vcpu_exit_request +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xb9615394 kvm_get_cr8 +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xba2758c6 mark_page_dirty +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xba8ca33b kvm_get_apic_base +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xbbe20b0f kvm_skip_emulated_instruction +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xbbe65e51 kvm_write_guest_virt_system +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xbd73a1ac kvm_apic_update_apicv +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xbe580b23 kvm_cpu_get_interrupt +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xbecf5866 kvm_is_linear_rip +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xbfc61ecf __tracepoint_kvm_page_fault +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xc1083882 kvm_set_cr0 +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xc165c621 kvm_init_shadow_mmu +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xc1d769b7 __tracepoint_kvm_nested_intr_vmexit +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xc3b9cad9 kvm_vcpu_block +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xc3feb4d7 kvm_vcpu_write_guest_page +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xc419629a kvm_mmu_invpcid_gva +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xc4478e3a kvm_vcpu_read_guest +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xc44a6f34 kvm_scale_tsc +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xc45b7b15 __kvm_request_immediate_exit +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xc51f3aa7 kvm_can_use_hv_timer +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xc6c05c2e kvm_arch_has_noncoherent_dma +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xc86e6000 kvm_read_guest_page +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xc888a1c2 kvm_cpu_caps +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xca3ab5ad __tracepoint_kvm_ple_window_update +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xca849e98 kvm_apic_update_irr +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xcab0c0a4 __tracepoint_kvm_write_tsc_offset +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xcab381e3 kvm_mmu_unprotect_page +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xcad8a167 kvm_apic_write_nodecode +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xcb31ecb5 __x86_set_memory_region +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xcc36817c kvm_mmu_slot_largepage_remove_write_access +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xcc9e423a kvm_page_track_unregister_notifier +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xce87084b kvm_gfn_to_hva_cache_init +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xcf09ef04 kvm_init +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xd011337f kvm_apic_set_eoi_accelerated +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xd03b581e kvm_find_cpuid_entry +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xd0459e67 kvm_has_tsc_control +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xd16ade6a kvm_deliver_exception_payload +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xd4d300a4 kvm_complete_insn_gp +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xd6ae2993 kvm_apic_has_interrupt +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xd79483ce kvm_mmu_unload +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xd79d88ba kvm_mmu_page_fault +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xd8ae2ac3 __tracepoint_kvm_pi_irte_update +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xd8ca9a5f kvm_lapic_hv_timer_in_use +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xdac62564 kvm_inject_page_fault +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xdafe65e9 kvm_arch_end_assignment +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xdb24ac6b kvm_set_dr +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xdd9e7aeb kvm_set_shared_msr +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xde7823a9 kvm_write_guest +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xdec24039 kvm_vcpu_is_reset_bsp +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xe02a0987 __kvm_set_memory_region +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xe0c61b7a cpuid_query_maxphyaddr +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xe240864b kvm_set_cr4 +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xe2f5544f kvm_emulate_wbinvd +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xe799d8b9 kvm_arch_start_assignment +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xe8b9851e reset_shadow_zero_bits_mask +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xe8bfb392 kvm_vcpu_yield_to +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xe91ef7e4 kvm_apic_match_dest +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xe9674a16 supported_xcr0 +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xec06defc __tracepoint_kvm_avic_unaccelerated_access +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xecd5930f kvm_vcpu_mark_page_dirty +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xed3b51de kvm_mtrr_get_guest_memory_type +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xed60b96b kvm_queue_exception_e +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xeecf997d __gfn_to_pfn_memslot +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xf06010b6 kvm_arch_unregister_noncoherent_dma +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xf110c1dd kvm_get_linear_rip +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xf47e3dba kvm_no_apic_vcpu +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xf525243d gfn_to_hva +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xf5291698 kvm_vcpu_read_guest_atomic +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xf5e7e521 kvm_write_guest_page +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xf5f65110 gfn_to_hva_memslot +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xf6a2b8db __tracepoint_kvm_apicv_update_request +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xfa541ffc __tracepoint_kvm_inj_virq +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xfbd6989e pdptrs_changed +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xfc658ee6 kvm_vcpu_on_spin +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xfd75530e kvm_lapic_reg_write +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xfdd0854e kvm_inject_nmi +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xfe0fb916 kvm_page_track_register_notifier +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xff30a0d3 kvm_inject_emulated_page_fault +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xffb43430 kvm_lmsw +EXPORT_SYMBOL_GPL crypto/af_alg 0x19a62432 af_alg_sendmsg +EXPORT_SYMBOL_GPL crypto/af_alg 0x1a06b2b4 af_alg_async_cb +EXPORT_SYMBOL_GPL crypto/af_alg 0x3046d0cf af_alg_free_sg +EXPORT_SYMBOL_GPL crypto/af_alg 0x4ad0d11f af_alg_make_sg +EXPORT_SYMBOL_GPL crypto/af_alg 0x4b2f0039 af_alg_count_tsgl +EXPORT_SYMBOL_GPL crypto/af_alg 0x4d938890 af_alg_free_resources +EXPORT_SYMBOL_GPL crypto/af_alg 0x60885359 af_alg_unregister_type +EXPORT_SYMBOL_GPL crypto/af_alg 0x62651e62 af_alg_release_parent +EXPORT_SYMBOL_GPL crypto/af_alg 0x73bd0212 af_alg_sendpage +EXPORT_SYMBOL_GPL crypto/af_alg 0x9cf84e54 af_alg_poll +EXPORT_SYMBOL_GPL crypto/af_alg 0xa7223f2b af_alg_accept +EXPORT_SYMBOL_GPL crypto/af_alg 0xba965ea3 af_alg_alloc_areq +EXPORT_SYMBOL_GPL crypto/af_alg 0xc2d8c8a6 af_alg_register_type +EXPORT_SYMBOL_GPL crypto/af_alg 0xd8d85504 af_alg_wait_for_data +EXPORT_SYMBOL_GPL crypto/af_alg 0xe4963e35 af_alg_pull_tsgl +EXPORT_SYMBOL_GPL crypto/af_alg 0xf14c5ad5 af_alg_wmem_wakeup +EXPORT_SYMBOL_GPL crypto/af_alg 0xf20e2fbd af_alg_get_rsgl +EXPORT_SYMBOL_GPL crypto/af_alg 0xf76e6f01 af_alg_release +EXPORT_SYMBOL_GPL crypto/asymmetric_keys/asym_tpm 0x7430f97c tpm_key_create +EXPORT_SYMBOL_GPL crypto/asymmetric_keys/asym_tpm 0x9e78385b asym_tpm_subtype +EXPORT_SYMBOL_GPL crypto/async_tx/async_memcpy 0x463c447f async_memcpy +EXPORT_SYMBOL_GPL crypto/async_tx/async_pq 0x2838d948 async_syndrome_val +EXPORT_SYMBOL_GPL crypto/async_tx/async_pq 0x3838069b async_gen_syndrome +EXPORT_SYMBOL_GPL crypto/async_tx/async_raid6_recov 0x52a4a1b2 async_raid6_datap_recov +EXPORT_SYMBOL_GPL crypto/async_tx/async_raid6_recov 0x7db65604 async_raid6_2data_recov +EXPORT_SYMBOL_GPL crypto/async_tx/async_tx 0x207a6609 __async_tx_find_channel +EXPORT_SYMBOL_GPL crypto/async_tx/async_tx 0x65d2d869 async_tx_quiesce +EXPORT_SYMBOL_GPL crypto/async_tx/async_tx 0x9389b8b4 async_tx_submit +EXPORT_SYMBOL_GPL crypto/async_tx/async_tx 0xe68b72aa async_trigger_callback +EXPORT_SYMBOL_GPL crypto/async_tx/async_xor 0x0ea5ce81 async_xor +EXPORT_SYMBOL_GPL crypto/async_tx/async_xor 0x47505b99 async_xor_val +EXPORT_SYMBOL_GPL crypto/authenc 0x2479193e crypto_authenc_extractkeys +EXPORT_SYMBOL_GPL crypto/blowfish_common 0x6d38e29f blowfish_setkey +EXPORT_SYMBOL_GPL crypto/cast5_generic 0x188d9d26 __cast5_decrypt +EXPORT_SYMBOL_GPL crypto/cast5_generic 0x85413f3b 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 0xcfce512f __cast6_encrypt +EXPORT_SYMBOL_GPL crypto/cast6_generic 0xd76a5716 __cast6_setkey +EXPORT_SYMBOL_GPL crypto/cast6_generic 0xfd2a1409 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 0x01e7d097 cryptd_skcipher_child +EXPORT_SYMBOL_GPL crypto/cryptd 0x0adf21cc cryptd_alloc_skcipher +EXPORT_SYMBOL_GPL crypto/cryptd 0x13fe9867 cryptd_free_skcipher +EXPORT_SYMBOL_GPL crypto/cryptd 0x19120bca cryptd_aead_queued +EXPORT_SYMBOL_GPL crypto/cryptd 0x28cad6c3 cryptd_free_aead +EXPORT_SYMBOL_GPL crypto/cryptd 0x2b116476 cryptd_alloc_ahash +EXPORT_SYMBOL_GPL crypto/cryptd 0xbcae6896 cryptd_ahash_child +EXPORT_SYMBOL_GPL crypto/cryptd 0xd61d9068 cryptd_aead_child +EXPORT_SYMBOL_GPL crypto/cryptd 0xd9bd67d0 cryptd_alloc_aead +EXPORT_SYMBOL_GPL crypto/cryptd 0xdd542672 cryptd_shash_desc +EXPORT_SYMBOL_GPL crypto/cryptd 0xf7d8a19e cryptd_free_ahash +EXPORT_SYMBOL_GPL crypto/cryptd 0xf95a8910 cryptd_skcipher_queued +EXPORT_SYMBOL_GPL crypto/cryptd 0xfe49b809 cryptd_ahash_queued +EXPORT_SYMBOL_GPL crypto/crypto_engine 0x0a0bcbce crypto_finalize_skcipher_request +EXPORT_SYMBOL_GPL crypto/crypto_engine 0x17851f9c crypto_transfer_skcipher_request_to_engine +EXPORT_SYMBOL_GPL crypto/crypto_engine 0x1f0a6dc4 crypto_transfer_hash_request_to_engine +EXPORT_SYMBOL_GPL crypto/crypto_engine 0x2156fa9b crypto_engine_exit +EXPORT_SYMBOL_GPL crypto/crypto_engine 0x285ee5f6 crypto_finalize_hash_request +EXPORT_SYMBOL_GPL crypto/crypto_engine 0x4c25c6e6 crypto_engine_alloc_init_and_set +EXPORT_SYMBOL_GPL crypto/crypto_engine 0x4f6b674d crypto_transfer_akcipher_request_to_engine +EXPORT_SYMBOL_GPL crypto/crypto_engine 0x5fae450c crypto_transfer_aead_request_to_engine +EXPORT_SYMBOL_GPL crypto/crypto_engine 0x6ee4eb3a crypto_engine_alloc_init +EXPORT_SYMBOL_GPL crypto/crypto_engine 0x89c5b094 crypto_finalize_akcipher_request +EXPORT_SYMBOL_GPL crypto/crypto_engine 0xc7181101 crypto_engine_stop +EXPORT_SYMBOL_GPL crypto/crypto_engine 0xd904135b crypto_finalize_aead_request +EXPORT_SYMBOL_GPL crypto/crypto_engine 0xf6366dd8 crypto_engine_start +EXPORT_SYMBOL_GPL crypto/crypto_simd 0x504cb053 simd_aead_create_compat +EXPORT_SYMBOL_GPL crypto/crypto_simd 0x6086664b simd_unregister_aeads +EXPORT_SYMBOL_GPL crypto/crypto_simd 0x66983e96 simd_skcipher_create +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 0xbd90d05b simd_unregister_skciphers +EXPORT_SYMBOL_GPL crypto/crypto_simd 0xbfd26f15 simd_aead_free +EXPORT_SYMBOL_GPL crypto/crypto_simd 0xca8cd043 simd_register_aeads_compat +EXPORT_SYMBOL_GPL crypto/crypto_simd 0xdbe2a90f simd_register_skciphers_compat +EXPORT_SYMBOL_GPL crypto/crypto_simd 0xefe73979 simd_skcipher_free +EXPORT_SYMBOL_GPL crypto/ecdh_generic 0x515ba532 crypto_ecdh_decode_key +EXPORT_SYMBOL_GPL crypto/ecdh_generic 0x7a395d76 crypto_ecdh_encode_key +EXPORT_SYMBOL_GPL crypto/ecdh_generic 0xd5a29505 crypto_ecdh_key_len +EXPORT_SYMBOL_GPL crypto/serpent_generic 0x4eb4c55e __serpent_encrypt +EXPORT_SYMBOL_GPL crypto/serpent_generic 0x74a52392 serpent_setkey +EXPORT_SYMBOL_GPL crypto/serpent_generic 0xbcc074f3 __serpent_decrypt +EXPORT_SYMBOL_GPL crypto/serpent_generic 0xd4c9681a __serpent_setkey +EXPORT_SYMBOL_GPL crypto/sm3_generic 0x0bddca87 sm3_zero_message_hash +EXPORT_SYMBOL_GPL crypto/sm4_generic 0x09a89410 crypto_sm4_expand_key +EXPORT_SYMBOL_GPL crypto/sm4_generic 0x85bd030c crypto_sm4_set_key +EXPORT_SYMBOL_GPL crypto/sm4_generic 0x8b624cc2 crypto_sm4_decrypt +EXPORT_SYMBOL_GPL crypto/sm4_generic 0xd7dc7547 crypto_sm4_encrypt +EXPORT_SYMBOL_GPL crypto/twofish_common 0x79f86a2f twofish_setkey +EXPORT_SYMBOL_GPL crypto/twofish_common 0xe22b7787 __twofish_setkey +EXPORT_SYMBOL_GPL drivers/ata/libahci 0x070cbaf6 ahci_qc_issue +EXPORT_SYMBOL_GPL drivers/ata/libahci 0x1d45ef18 ahci_dev_classify +EXPORT_SYMBOL_GPL drivers/ata/libahci 0x208a609a ahci_error_handler +EXPORT_SYMBOL_GPL drivers/ata/libahci 0x2ebf8a21 ahci_check_ready +EXPORT_SYMBOL_GPL drivers/ata/libahci 0x346d7f13 ahci_start_engine +EXPORT_SYMBOL_GPL drivers/ata/libahci 0x57cda92d ahci_reset_em +EXPORT_SYMBOL_GPL drivers/ata/libahci 0x65a75f05 ahci_init_controller +EXPORT_SYMBOL_GPL drivers/ata/libahci 0x765d67c3 ahci_host_activate +EXPORT_SYMBOL_GPL drivers/ata/libahci 0x76a66e16 ahci_save_initial_config +EXPORT_SYMBOL_GPL drivers/ata/libahci 0x78d292f2 ahci_kick_engine +EXPORT_SYMBOL_GPL drivers/ata/libahci 0x7b97b6f0 ahci_set_em_messages +EXPORT_SYMBOL_GPL drivers/ata/libahci 0x91f4f229 ahci_stop_engine +EXPORT_SYMBOL_GPL drivers/ata/libahci 0x9eb65d67 ahci_handle_port_intr +EXPORT_SYMBOL_GPL drivers/ata/libahci 0xaa14b93c ahci_port_resume +EXPORT_SYMBOL_GPL drivers/ata/libahci 0xac1d4009 ahci_sdev_attrs +EXPORT_SYMBOL_GPL drivers/ata/libahci 0xb4d2a763 ahci_do_hardreset +EXPORT_SYMBOL_GPL drivers/ata/libahci 0xc0374592 ahci_do_softreset +EXPORT_SYMBOL_GPL drivers/ata/libahci 0xd29ab03b ahci_reset_controller +EXPORT_SYMBOL_GPL drivers/ata/libahci 0xd64f8d1c ahci_shost_attrs +EXPORT_SYMBOL_GPL drivers/ata/libahci 0xd7ed8a86 ahci_fill_cmd_slot +EXPORT_SYMBOL_GPL drivers/ata/libahci 0xe895c78c ahci_print_info +EXPORT_SYMBOL_GPL drivers/ata/libahci 0xea50dad3 ahci_ignore_sss +EXPORT_SYMBOL_GPL drivers/ata/libahci 0xec880fd5 ahci_start_fis_rx +EXPORT_SYMBOL_GPL drivers/ata/libahci 0xecf305bc ahci_ops +EXPORT_SYMBOL_GPL drivers/ata/libahci 0xf0a65c6d ahci_pmp_retry_srst_ops +EXPORT_SYMBOL_GPL drivers/ata/libahci_platform 0x00dcc1a6 ahci_platform_shutdown +EXPORT_SYMBOL_GPL drivers/ata/libahci_platform 0x22d709ef ahci_platform_enable_clks +EXPORT_SYMBOL_GPL drivers/ata/libahci_platform 0x295b2d8e ahci_platform_enable_phys +EXPORT_SYMBOL_GPL drivers/ata/libahci_platform 0x306a6234 ahci_platform_get_resources +EXPORT_SYMBOL_GPL drivers/ata/libahci_platform 0x43a3853a ahci_platform_disable_clks +EXPORT_SYMBOL_GPL drivers/ata/libahci_platform 0x482fa15b ahci_platform_disable_phys +EXPORT_SYMBOL_GPL drivers/ata/libahci_platform 0x4bc1a3fa ahci_platform_enable_regulators +EXPORT_SYMBOL_GPL drivers/ata/libahci_platform 0x552b1810 ahci_platform_disable_resources +EXPORT_SYMBOL_GPL drivers/ata/libahci_platform 0x57290836 ahci_platform_resume +EXPORT_SYMBOL_GPL drivers/ata/libahci_platform 0x6a907174 ahci_platform_init_host +EXPORT_SYMBOL_GPL drivers/ata/libahci_platform 0x8b595350 ahci_platform_suspend_host +EXPORT_SYMBOL_GPL drivers/ata/libahci_platform 0x9caf7bd0 ahci_platform_enable_resources +EXPORT_SYMBOL_GPL drivers/ata/libahci_platform 0xb67cd144 ahci_platform_resume_host +EXPORT_SYMBOL_GPL drivers/ata/libahci_platform 0xc6037140 ahci_platform_suspend +EXPORT_SYMBOL_GPL drivers/ata/libahci_platform 0xcae9ad8b ahci_platform_ops +EXPORT_SYMBOL_GPL drivers/ata/libahci_platform 0xd06ce529 ahci_platform_disable_regulators +EXPORT_SYMBOL_GPL drivers/ata/pata_platform 0xd33f97cc __pata_platform_probe +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 0x727ea304 charlcd_poke +EXPORT_SYMBOL_GPL drivers/auxdisplay/charlcd 0x9192a401 charlcd_register +EXPORT_SYMBOL_GPL drivers/auxdisplay/charlcd 0xa2a58bbe charlcd_alloc +EXPORT_SYMBOL_GPL drivers/auxdisplay/charlcd 0xac53a91b charlcd_unregister +EXPORT_SYMBOL_GPL drivers/auxdisplay/charlcd 0xd0cc2e18 charlcd_free +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/base/regmap/regmap-i2c 0x59689bff __regmap_init_i2c +EXPORT_SYMBOL_GPL drivers/base/regmap/regmap-i2c 0xd58aa7c4 __devm_regmap_init_i2c +EXPORT_SYMBOL_GPL drivers/base/regmap/regmap-slimbus 0x4e98bd8b __devm_regmap_init_slimbus +EXPORT_SYMBOL_GPL drivers/base/regmap/regmap-slimbus 0xcb3abcf7 __regmap_init_slimbus +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0x24ca350a bcma_host_pci_up +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0x25801569 bcma_chipco_pll_write +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0x2b00fa97 __bcma_driver_register +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0x2b7bfe65 bcma_chipco_gpio_outen +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0x30245def bcma_chipco_pll_maskset +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0x57cd6552 bcma_chipco_pll_read +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0x62d8a15a bcma_host_pci_down +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0x69b6a34d bcma_core_set_clockmode +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0x7e6b41be bcma_host_pci_irq_ctl +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0x7f638dc1 bcma_chipco_gpio_control +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0x8005c23f bcma_core_pll_ctl +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0x8386bb39 bcma_chipco_chipctl_maskset +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0x856ba5aa bcma_core_enable +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0x95a85852 bcma_core_is_enabled +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0x96077786 bcma_chipco_gpio_out +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0x96446db0 bcma_chipco_regctl_maskset +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0xa5112059 bcma_driver_unregister +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0xa9c4d44a bcma_pmu_get_bus_clock +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0xb48e5fba bcma_find_core_unit +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0xbe65e68a bcma_core_disable +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0xc41e034e bcma_chipco_b_mii_write +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0xd814cd9a bcma_chipco_get_alp_clock +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0xdf633b37 bcma_pmu_spuravoid_pllupdate +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0xfde25818 bcma_core_pci_power_save +EXPORT_SYMBOL_GPL drivers/bus/mhi/core/mhi 0x064739d0 mhi_prepare_for_power_up +EXPORT_SYMBOL_GPL drivers/bus/mhi/core/mhi 0x0e416b37 mhi_prepare_for_transfer +EXPORT_SYMBOL_GPL drivers/bus/mhi/core/mhi 0x23c9ec50 mhi_queue_buf +EXPORT_SYMBOL_GPL drivers/bus/mhi/core/mhi 0x24ca00be mhi_unregister_controller +EXPORT_SYMBOL_GPL drivers/bus/mhi/core/mhi 0x26780d7f mhi_notify +EXPORT_SYMBOL_GPL drivers/bus/mhi/core/mhi 0x2682da04 mhi_queue_dma +EXPORT_SYMBOL_GPL drivers/bus/mhi/core/mhi 0x47d499d1 mhi_unprepare_from_transfer +EXPORT_SYMBOL_GPL drivers/bus/mhi/core/mhi 0x5c8da91d mhi_pm_resume +EXPORT_SYMBOL_GPL drivers/bus/mhi/core/mhi 0x66097313 mhi_register_controller +EXPORT_SYMBOL_GPL drivers/bus/mhi/core/mhi 0x68a5fe52 mhi_async_power_up +EXPORT_SYMBOL_GPL drivers/bus/mhi/core/mhi 0x89287d9b mhi_download_rddm_img +EXPORT_SYMBOL_GPL drivers/bus/mhi/core/mhi 0x8babff54 mhi_unprepare_after_power_down +EXPORT_SYMBOL_GPL drivers/bus/mhi/core/mhi 0xa4f952ec mhi_power_down +EXPORT_SYMBOL_GPL drivers/bus/mhi/core/mhi 0xaa127d0f mhi_device_get_sync +EXPORT_SYMBOL_GPL drivers/bus/mhi/core/mhi 0xb20486e4 mhi_driver_unregister +EXPORT_SYMBOL_GPL drivers/bus/mhi/core/mhi 0xb51ff0dc mhi_pm_suspend +EXPORT_SYMBOL_GPL drivers/bus/mhi/core/mhi 0xb6f13847 mhi_device_get +EXPORT_SYMBOL_GPL drivers/bus/mhi/core/mhi 0xd3626654 mhi_force_rddm_mode +EXPORT_SYMBOL_GPL drivers/bus/mhi/core/mhi 0xd4c8ba6b __mhi_driver_register +EXPORT_SYMBOL_GPL drivers/bus/mhi/core/mhi 0xdf5995b2 mhi_device_put +EXPORT_SYMBOL_GPL drivers/bus/mhi/core/mhi 0xe2f07971 mhi_poll +EXPORT_SYMBOL_GPL drivers/bus/mhi/core/mhi 0xf17565fa mhi_queue_skb +EXPORT_SYMBOL_GPL drivers/counter/counter 0x01aab51b counter_count_direction_str +EXPORT_SYMBOL_GPL drivers/counter/counter 0x178d18cf counter_device_enum_read +EXPORT_SYMBOL_GPL drivers/counter/counter 0x23e376b0 counter_signal_enum_available_read +EXPORT_SYMBOL_GPL drivers/counter/counter 0x28c49f57 counter_count_enum_write +EXPORT_SYMBOL_GPL drivers/counter/counter 0x2988eb5a counter_count_enum_available_read +EXPORT_SYMBOL_GPL drivers/counter/counter 0x4b5b9fef counter_device_enum_write +EXPORT_SYMBOL_GPL drivers/counter/counter 0x6942ee98 counter_device_enum_available_read +EXPORT_SYMBOL_GPL drivers/counter/counter 0x6e7cf17f counter_register +EXPORT_SYMBOL_GPL drivers/counter/counter 0x8136a93f devm_counter_unregister +EXPORT_SYMBOL_GPL drivers/counter/counter 0xb9e5d15b counter_signal_enum_read +EXPORT_SYMBOL_GPL drivers/counter/counter 0xcf41370b counter_signal_enum_write +EXPORT_SYMBOL_GPL drivers/counter/counter 0xe1108c1c counter_unregister +EXPORT_SYMBOL_GPL drivers/counter/counter 0xee526d0f counter_count_mode_str +EXPORT_SYMBOL_GPL drivers/counter/counter 0xef03b205 counter_count_enum_read +EXPORT_SYMBOL_GPL drivers/counter/counter 0xf2de0a07 devm_counter_register +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 0x6259539d sev_issue_cmd_external_user +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 0xd02e197f sev_platform_init +EXPORT_SYMBOL_GPL drivers/crypto/ccp/ccp 0xd2572193 ccp_enqueue_cmd +EXPORT_SYMBOL_GPL drivers/crypto/qat/qat_common/intel_qat 0x152a70dd qat_crypto_dev_config +EXPORT_SYMBOL_GPL drivers/crypto/qat/qat_common/intel_qat 0x232b18c8 adf_enable_vf2pf_comms +EXPORT_SYMBOL_GPL drivers/crypto/qat/qat_common/intel_qat 0x2c8a74b6 adf_cleanup_etr_data +EXPORT_SYMBOL_GPL drivers/crypto/qat/qat_common/intel_qat 0x323b9e4a adf_sriov_configure +EXPORT_SYMBOL_GPL drivers/crypto/qat/qat_common/intel_qat 0x34120499 adf_dev_get +EXPORT_SYMBOL_GPL drivers/crypto/qat/qat_common/intel_qat 0x39dc57f6 adf_dev_init +EXPORT_SYMBOL_GPL drivers/crypto/qat/qat_common/intel_qat 0x3aa56b4b adf_exit_arb +EXPORT_SYMBOL_GPL drivers/crypto/qat/qat_common/intel_qat 0x3c790768 adf_reset_sbr +EXPORT_SYMBOL_GPL drivers/crypto/qat/qat_common/intel_qat 0x3fd163c7 adf_vf2pf_init +EXPORT_SYMBOL_GPL drivers/crypto/qat/qat_common/intel_qat 0x43bffac1 adf_exit_admin_comms +EXPORT_SYMBOL_GPL drivers/crypto/qat/qat_common/intel_qat 0x4833095f adf_vf_isr_resource_free +EXPORT_SYMBOL_GPL drivers/crypto/qat/qat_common/intel_qat 0x49782342 adf_reset_flr +EXPORT_SYMBOL_GPL drivers/crypto/qat/qat_common/intel_qat 0x4db262c0 adf_vf2pf_shutdown +EXPORT_SYMBOL_GPL drivers/crypto/qat/qat_common/intel_qat 0x57e9e988 adf_dev_put +EXPORT_SYMBOL_GPL drivers/crypto/qat/qat_common/intel_qat 0x5b086a56 adf_devmgr_update_class_index +EXPORT_SYMBOL_GPL drivers/crypto/qat/qat_common/intel_qat 0x604cf5f3 adf_dev_shutdown +EXPORT_SYMBOL_GPL drivers/crypto/qat/qat_common/intel_qat 0x61f45a21 adf_send_admin_init +EXPORT_SYMBOL_GPL drivers/crypto/qat/qat_common/intel_qat 0x626553f4 adf_devmgr_pci_to_accel_dev +EXPORT_SYMBOL_GPL drivers/crypto/qat/qat_common/intel_qat 0x64642b8c adf_init_admin_comms +EXPORT_SYMBOL_GPL drivers/crypto/qat/qat_common/intel_qat 0x65a2b234 adf_cfg_add_key_value_param +EXPORT_SYMBOL_GPL drivers/crypto/qat/qat_common/intel_qat 0x76ae3d61 adf_devmgr_in_reset +EXPORT_SYMBOL_GPL drivers/crypto/qat/qat_common/intel_qat 0x7fb4b656 adf_isr_resource_free +EXPORT_SYMBOL_GPL drivers/crypto/qat/qat_common/intel_qat 0x88ebb44a adf_devmgr_rm_dev +EXPORT_SYMBOL_GPL drivers/crypto/qat/qat_common/intel_qat 0x8a9b5a21 adf_dev_stop +EXPORT_SYMBOL_GPL drivers/crypto/qat/qat_common/intel_qat 0x8dc78366 adf_dev_started +EXPORT_SYMBOL_GPL drivers/crypto/qat/qat_common/intel_qat 0x94fef426 adf_cfg_dev_add +EXPORT_SYMBOL_GPL drivers/crypto/qat/qat_common/intel_qat 0x9bb1603e adf_enable_aer +EXPORT_SYMBOL_GPL drivers/crypto/qat/qat_common/intel_qat 0x9f81a44e adf_disable_sriov +EXPORT_SYMBOL_GPL drivers/crypto/qat/qat_common/intel_qat 0xa63994df adf_init_etr_data +EXPORT_SYMBOL_GPL drivers/crypto/qat/qat_common/intel_qat 0xb877045e adf_dev_in_use +EXPORT_SYMBOL_GPL drivers/crypto/qat/qat_common/intel_qat 0xc44e7bd7 adf_devmgr_add_dev +EXPORT_SYMBOL_GPL drivers/crypto/qat/qat_common/intel_qat 0xc791b488 adf_iov_putmsg +EXPORT_SYMBOL_GPL drivers/crypto/qat/qat_common/intel_qat 0xcc3b167a adf_clean_vf_map +EXPORT_SYMBOL_GPL drivers/crypto/qat/qat_common/intel_qat 0xd7f54803 adf_disable_aer +EXPORT_SYMBOL_GPL drivers/crypto/qat/qat_common/intel_qat 0xdfae9680 adf_cfg_dev_remove +EXPORT_SYMBOL_GPL drivers/crypto/qat/qat_common/intel_qat 0xe1901256 adf_init_arb +EXPORT_SYMBOL_GPL drivers/crypto/qat/qat_common/intel_qat 0xe46024bf adf_vf_isr_resource_alloc +EXPORT_SYMBOL_GPL drivers/crypto/qat/qat_common/intel_qat 0xef925847 adf_dev_start +EXPORT_SYMBOL_GPL drivers/crypto/qat/qat_common/intel_qat 0xf572ee9a adf_cfg_section_add +EXPORT_SYMBOL_GPL drivers/crypto/qat/qat_common/intel_qat 0xfeac5c8d adf_isr_resource_alloc +EXPORT_SYMBOL_GPL drivers/dca/dca 0x01a33ab9 dca_unregister_notify +EXPORT_SYMBOL_GPL drivers/dca/dca 0x1c2d2cc8 alloc_dca_provider +EXPORT_SYMBOL_GPL drivers/dca/dca 0x3cae2d6f unregister_dca_provider +EXPORT_SYMBOL_GPL drivers/dca/dca 0x52cee9e1 dca_add_requester +EXPORT_SYMBOL_GPL drivers/dca/dca 0x65462027 free_dca_provider +EXPORT_SYMBOL_GPL drivers/dca/dca 0x75f923aa dca_remove_requester +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 0xe860edf5 register_dca_provider +EXPORT_SYMBOL_GPL drivers/dca/dca 0xfc7f484e dca3_get_tag +EXPORT_SYMBOL_GPL drivers/dma/dw-edma/dw-edma 0x30db3f73 dw_edma_remove +EXPORT_SYMBOL_GPL drivers/dma/dw-edma/dw-edma 0xf899a6d8 dw_edma_probe +EXPORT_SYMBOL_GPL drivers/dma/dw/dw_dmac_core 0x13256fce dw_dma_remove +EXPORT_SYMBOL_GPL drivers/dma/dw/dw_dmac_core 0x89278504 dw_dma_probe +EXPORT_SYMBOL_GPL drivers/dma/dw/dw_dmac_core 0x95918c06 dw_dma_filter +EXPORT_SYMBOL_GPL drivers/dma/dw/dw_dmac_core 0xa8b24e12 idma32_dma_probe +EXPORT_SYMBOL_GPL drivers/dma/dw/dw_dmac_core 0xcd4165fb do_dw_dma_enable +EXPORT_SYMBOL_GPL drivers/dma/dw/dw_dmac_core 0xe7d04f54 idma32_dma_remove +EXPORT_SYMBOL_GPL drivers/dma/dw/dw_dmac_core 0xf97fa2ca do_dw_dma_disable +EXPORT_SYMBOL_GPL drivers/dma/hsu/hsu_dma 0x078317f1 hsu_dma_remove +EXPORT_SYMBOL_GPL drivers/dma/hsu/hsu_dma 0x1928029a hsu_dma_do_irq +EXPORT_SYMBOL_GPL drivers/dma/hsu/hsu_dma 0xebb39cb6 hsu_dma_get_status +EXPORT_SYMBOL_GPL drivers/dma/hsu/hsu_dma 0xf1dbeeb2 hsu_dma_probe +EXPORT_SYMBOL_GPL drivers/dma/virt-dma 0x223e6d77 vchan_find_desc +EXPORT_SYMBOL_GPL drivers/dma/virt-dma 0x6d19810f vchan_init +EXPORT_SYMBOL_GPL drivers/dma/virt-dma 0x79afe4a9 vchan_dma_desc_free_list +EXPORT_SYMBOL_GPL drivers/dma/virt-dma 0xa2be50f6 vchan_tx_desc_free +EXPORT_SYMBOL_GPL drivers/dma/virt-dma 0xb6c53175 vchan_tx_submit +EXPORT_SYMBOL_GPL drivers/edac/amd64_edac_mod 0xec15fa63 amd64_get_dram_hole_info +EXPORT_SYMBOL_GPL drivers/gnss/gnss 0x0f1e934a gnss_put_device +EXPORT_SYMBOL_GPL drivers/gnss/gnss 0x2bcf5aad gnss_insert_raw +EXPORT_SYMBOL_GPL drivers/gnss/gnss 0x9214aa28 gnss_deregister_device +EXPORT_SYMBOL_GPL drivers/gnss/gnss 0xa108ea5b gnss_allocate_device +EXPORT_SYMBOL_GPL drivers/gnss/gnss 0xcc4957c1 gnss_register_device +EXPORT_SYMBOL_GPL drivers/gpio/gpio-generic 0xb02801ef bgpio_init +EXPORT_SYMBOL_GPL drivers/gpio/gpio-max730x 0xc0f6cfcc __max730x_remove +EXPORT_SYMBOL_GPL drivers/gpio/gpio-max730x 0xed761e61 __max730x_probe +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm 0x0e3b2858 drm_hdcp_check_ksvs_revoked +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm 0x1303acb6 drm_gem_cma_vm_ops +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm 0x1ae3bd6a drm_gem_cma_prime_vunmap +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm 0x37aee407 drm_gem_cma_prime_mmap +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm 0x37f8b47c drm_gem_shmem_mmap +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm 0x3e0c4e4d drm_class_device_unregister +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm 0x48ea321e drm_get_unmapped_area +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm 0x49340733 drm_gem_shmem_create +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm 0x4c85bafc drm_gem_shmem_get_sg_table +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm 0x4d4065ec drm_bridge_get_edid +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm 0x56a248f0 drm_gem_cma_dumb_create_internal +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm 0x58d415b7 drm_gem_shmem_prime_import_sg_table +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm 0x5edca03c drm_gem_shmem_free_object +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm 0x5fdf3b01 drm_gem_dumb_map_offset +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm 0x63f03fec drm_gem_shmem_get_pages_sgt +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm 0x691b99a8 drm_gem_cma_prime_vmap +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm 0x69be3af6 drm_gem_cma_prime_import_sg_table +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm 0x6e8cfcea drm_gem_cma_dumb_create +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm 0x73dfbfe4 drm_gem_shmem_dumb_create +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm 0x8e6cb683 drm_bridge_hpd_disable +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm 0x9e98f8f2 drm_bridge_hpd_notify +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm 0xa33d6c20 drm_bridge_get_modes +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm 0xa77a0c3b drm_crtc_add_crc_entry +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm 0xb3df0296 drm_gem_cma_mmap +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm 0xbe969530 drm_gem_cma_free_object +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm 0xc16c3aaa drm_do_get_edid +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm 0xc286c062 drm_bridge_detect +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm 0xd42fd9be drm_gem_cma_prime_get_sg_table +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm 0xd57416c7 drm_gem_cma_create +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm 0xd8c22dc8 drmm_kstrdup +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm 0xd948316d drm_class_device_register +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm 0xe44ae4cf drm_bridge_hpd_enable +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm_kms_helper 0x2dc7ee89 drm_bridge_connector_disable_hpd +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm_kms_helper 0x440b71eb drm_bridge_connector_enable_hpd +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm_kms_helper 0x4513e50f drm_fb_cma_get_gem_obj +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm_kms_helper 0x6d141c5a drm_gem_fb_afbc_init +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm_kms_helper 0x7dad8e6c drm_bridge_connector_init +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm_kms_helper 0x97c5a0ae drm_gem_fb_init_with_funcs +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm_kms_helper 0xb098fcfe drm_gem_fb_prepare_fb +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm_kms_helper 0xbe567c99 drm_gem_fb_get_obj +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm_kms_helper 0xc4f5518e drm_gem_fb_create_with_dirty +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm_kms_helper 0xc6b83e15 drm_gem_fb_create +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm_kms_helper 0xd53779a2 drm_gem_fb_create_with_funcs +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm_kms_helper 0xfc7513fd drm_fb_cma_get_gem_addr +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 0x4537f425 intel_gvt_register_hypervisor +EXPORT_SYMBOL_GPL drivers/gpu/drm/i915/i915 0x500858b9 i915_read_mch_val +EXPORT_SYMBOL_GPL drivers/gpu/drm/i915/i915 0x6fbc5503 intel_gvt_unregister_hypervisor +EXPORT_SYMBOL_GPL drivers/gpu/drm/i915/i915 0xe7237b0b i915_gpu_turbo_disable +EXPORT_SYMBOL_GPL drivers/gpu/drm/ttm/ttm 0x149057c3 ttm_dma_unpopulate +EXPORT_SYMBOL_GPL drivers/gpu/drm/ttm/ttm 0xc160ae68 ttm_dma_page_alloc_debugfs +EXPORT_SYMBOL_GPL drivers/gpu/drm/ttm/ttm 0xddf5d6da ttm_dma_populate +EXPORT_SYMBOL_GPL drivers/hid/hid 0x04ea0eef hidinput_report_event +EXPORT_SYMBOL_GPL drivers/hid/hid 0x05495392 hid_debug +EXPORT_SYMBOL_GPL drivers/hid/hid 0x0c67e504 hid_destroy_device +EXPORT_SYMBOL_GPL drivers/hid/hid 0x19d52f1f hid_quirks_exit +EXPORT_SYMBOL_GPL drivers/hid/hid 0x1c08e848 hid_connect +EXPORT_SYMBOL_GPL drivers/hid/hid 0x1daa4e41 hid_dump_report +EXPORT_SYMBOL_GPL drivers/hid/hid 0x2a6a9d20 hidraw_disconnect +EXPORT_SYMBOL_GPL drivers/hid/hid 0x2e552df9 hid_check_keys_pressed +EXPORT_SYMBOL_GPL drivers/hid/hid 0x2ea8857c hidraw_connect +EXPORT_SYMBOL_GPL drivers/hid/hid 0x317657a2 hidinput_count_leds +EXPORT_SYMBOL_GPL drivers/hid/hid 0x3303fb40 hid_validate_values +EXPORT_SYMBOL_GPL drivers/hid/hid 0x3436cf63 hidinput_calc_abs_res +EXPORT_SYMBOL_GPL drivers/hid/hid 0x3bc738de hid_output_report +EXPORT_SYMBOL_GPL drivers/hid/hid 0x41780fe7 hid_setup_resolution_multiplier +EXPORT_SYMBOL_GPL drivers/hid/hid 0x41da324a hid_hw_open +EXPORT_SYMBOL_GPL drivers/hid/hid 0x41f8b137 hidinput_find_field +EXPORT_SYMBOL_GPL drivers/hid/hid 0x443cb3a2 hid_report_raw_event +EXPORT_SYMBOL_GPL drivers/hid/hid 0x45b07c85 hid_hw_stop +EXPORT_SYMBOL_GPL drivers/hid/hid 0x47eb802a hid_hw_close +EXPORT_SYMBOL_GPL drivers/hid/hid 0x5384966d hid_dump_device +EXPORT_SYMBOL_GPL drivers/hid/hid 0x65609274 hid_unregister_driver +EXPORT_SYMBOL_GPL drivers/hid/hid 0x67811d46 hid_dump_input +EXPORT_SYMBOL_GPL drivers/hid/hid 0x67fc3021 hid_ignore +EXPORT_SYMBOL_GPL drivers/hid/hid 0x6808eed2 hid_lookup_quirk +EXPORT_SYMBOL_GPL drivers/hid/hid 0x6ec16129 __hid_request +EXPORT_SYMBOL_GPL drivers/hid/hid 0x6ef3f035 hid_hw_start +EXPORT_SYMBOL_GPL drivers/hid/hid 0x707895f9 hid_add_device +EXPORT_SYMBOL_GPL drivers/hid/hid 0x74b51351 hid_disconnect +EXPORT_SYMBOL_GPL drivers/hid/hid 0x7797f0f1 hid_alloc_report_buf +EXPORT_SYMBOL_GPL drivers/hid/hid 0x787b6f9f hid_resolv_usage +EXPORT_SYMBOL_GPL drivers/hid/hid 0x84aeeded hid_open_report +EXPORT_SYMBOL_GPL drivers/hid/hid 0x87ed7b02 hidraw_report_event +EXPORT_SYMBOL_GPL drivers/hid/hid 0x8b13a8b8 hid_snto32 +EXPORT_SYMBOL_GPL drivers/hid/hid 0x9bf26f84 hid_parse_report +EXPORT_SYMBOL_GPL drivers/hid/hid 0xb900635b hid_field_extract +EXPORT_SYMBOL_GPL drivers/hid/hid 0xc1d510d1 hidinput_connect +EXPORT_SYMBOL_GPL drivers/hid/hid 0xcb96b0fc hid_input_report +EXPORT_SYMBOL_GPL drivers/hid/hid 0xcc6a0d2f hid_set_field +EXPORT_SYMBOL_GPL drivers/hid/hid 0xd1457816 hid_match_device +EXPORT_SYMBOL_GPL drivers/hid/hid 0xe23c82b8 hidinput_get_led_field +EXPORT_SYMBOL_GPL drivers/hid/hid 0xe5044bb8 hid_debug_event +EXPORT_SYMBOL_GPL drivers/hid/hid 0xe9a2abd9 __hid_register_driver +EXPORT_SYMBOL_GPL drivers/hid/hid 0xeaa809db hid_compare_device_paths +EXPORT_SYMBOL_GPL drivers/hid/hid 0xf3d95f22 hid_dump_field +EXPORT_SYMBOL_GPL drivers/hid/hid 0xf3feb127 hid_register_report +EXPORT_SYMBOL_GPL drivers/hid/hid 0xf671164a hid_allocate_device +EXPORT_SYMBOL_GPL drivers/hid/hid 0xfa355613 hid_quirks_init +EXPORT_SYMBOL_GPL drivers/hid/hid 0xfcf856d6 hidinput_disconnect +EXPORT_SYMBOL_GPL drivers/hid/hid-sensor-hub 0x04ea0a50 sensor_hub_remove_callback +EXPORT_SYMBOL_GPL drivers/hid/hid-sensor-hub 0x1758bcb3 sensor_hub_input_attr_get_raw_value +EXPORT_SYMBOL_GPL drivers/hid/hid-sensor-hub 0x1f9c0ea6 sensor_hub_register_callback +EXPORT_SYMBOL_GPL drivers/hid/hid-sensor-hub 0x28929bf7 sensor_hub_set_feature +EXPORT_SYMBOL_GPL drivers/hid/hid-sensor-hub 0x6e0bd5a0 hid_sensor_get_usage_index +EXPORT_SYMBOL_GPL drivers/hid/hid-sensor-hub 0x711f139a sensor_hub_get_feature +EXPORT_SYMBOL_GPL drivers/hid/hid-sensor-hub 0xa9efe49b sensor_hub_input_get_attribute_info +EXPORT_SYMBOL_GPL drivers/hid/hid-sensor-hub 0xab54b99d sensor_hub_device_open +EXPORT_SYMBOL_GPL drivers/hid/hid-sensor-hub 0xd1aa0f05 sensor_hub_device_close +EXPORT_SYMBOL_GPL drivers/hid/uhid 0xa3f6c75a uhid_hid_driver +EXPORT_SYMBOL_GPL drivers/hwmon/adt7x10 0x396cf8ba adt7x10_dev_pm_ops +EXPORT_SYMBOL_GPL drivers/hwmon/adt7x10 0x5b360680 adt7x10_probe +EXPORT_SYMBOL_GPL drivers/hwmon/adt7x10 0xa0c56acd adt7x10_remove +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/ltc2947-core 0xc778b676 ltc2947_pm_ops +EXPORT_SYMBOL_GPL drivers/i2c/busses/i2c-designware-core 0x0608e591 i2c_dw_probe_master +EXPORT_SYMBOL_GPL drivers/i2c/busses/i2c-designware-core 0x0e383c5c i2c_dw_prepare_clk +EXPORT_SYMBOL_GPL drivers/i2c/busses/i2c-designware-core 0x11d501b7 i2c_dw_adjust_bus_speed +EXPORT_SYMBOL_GPL drivers/i2c/busses/i2c-designware-core 0x87232615 i2c_dw_acpi_configure +EXPORT_SYMBOL_GPL drivers/i2c/busses/i2c-designware-core 0x90e975e8 i2c_dw_validate_speed +EXPORT_SYMBOL_GPL drivers/i2c/busses/i2c-designware-core 0xa1acf0a9 i2c_dw_configure_master +EXPORT_SYMBOL_GPL drivers/i2c/busses/i2c-nforce2 0x70c6bf9d nforce2_smbus +EXPORT_SYMBOL_GPL drivers/i2c/i2c-core 0x1050d843 i2c_new_scanned_device +EXPORT_SYMBOL_GPL drivers/i2c/i2c-core 0x172aa701 i2c_parse_fw_timings +EXPORT_SYMBOL_GPL drivers/i2c/i2c-core 0x283ac817 i2c_adapter_depth +EXPORT_SYMBOL_GPL drivers/i2c/i2c-core 0x32597e5b i2c_unregister_device +EXPORT_SYMBOL_GPL drivers/i2c/i2c-core 0x42041512 i2c_get_dma_safe_msg_buf +EXPORT_SYMBOL_GPL drivers/i2c/i2c-core 0x4dae16e4 i2c_put_dma_safe_msg_buf +EXPORT_SYMBOL_GPL drivers/i2c/i2c-core 0x4e75f24f i2c_add_numbered_adapter +EXPORT_SYMBOL_GPL drivers/i2c/i2c-core 0x51331770 i2c_recover_bus +EXPORT_SYMBOL_GPL drivers/i2c/i2c-core 0x5da741d4 i2c_adapter_type +EXPORT_SYMBOL_GPL drivers/i2c/i2c-core 0x5ff9eaeb i2c_bus_type +EXPORT_SYMBOL_GPL drivers/i2c/i2c-core 0x60806523 i2c_acpi_get_i2c_resource +EXPORT_SYMBOL_GPL drivers/i2c/i2c-core 0x60c7e62e i2c_get_device_id +EXPORT_SYMBOL_GPL drivers/i2c/i2c-core 0x8e019cd1 i2c_client_type +EXPORT_SYMBOL_GPL drivers/i2c/i2c-core 0x8fb0deda i2c_acpi_find_bus_speed +EXPORT_SYMBOL_GPL drivers/i2c/i2c-core 0x99e83de5 i2c_probe_func_quick_read +EXPORT_SYMBOL_GPL drivers/i2c/i2c-core 0x9df24bbe i2c_new_ancillary_device +EXPORT_SYMBOL_GPL drivers/i2c/i2c-core 0xa2a1f7ae i2c_match_id +EXPORT_SYMBOL_GPL drivers/i2c/i2c-core 0xa7e33526 i2c_handle_smbus_host_notify +EXPORT_SYMBOL_GPL drivers/i2c/i2c-core 0xaf4dcb0d i2c_new_smbus_alert_device +EXPORT_SYMBOL_GPL drivers/i2c/i2c-core 0xb79a646a devm_i2c_new_dummy_device +EXPORT_SYMBOL_GPL drivers/i2c/i2c-core 0xc0206d83 i2c_acpi_find_adapter_by_handle +EXPORT_SYMBOL_GPL drivers/i2c/i2c-core 0xd3446d1b i2c_new_dummy_device +EXPORT_SYMBOL_GPL drivers/i2c/i2c-core 0xdfb34dfd i2c_generic_scl_recovery +EXPORT_SYMBOL_GPL drivers/i2c/i2c-core 0xe1854240 i2c_for_each_dev +EXPORT_SYMBOL_GPL drivers/i2c/i2c-core 0xe2ae3638 i2c_acpi_new_device +EXPORT_SYMBOL_GPL drivers/i2c/i2c-core 0xf0097774 i2c_new_client_device +EXPORT_SYMBOL_GPL drivers/i2c/i2c-mux 0x39a6564f i2c_root_adapter +EXPORT_SYMBOL_GPL drivers/i2c/i2c-mux 0x52627e80 i2c_mux_alloc +EXPORT_SYMBOL_GPL drivers/i2c/i2c-mux 0x98e8b439 i2c_mux_add_adapter +EXPORT_SYMBOL_GPL drivers/i2c/i2c-mux 0xd4235da6 i2c_mux_del_adapters +EXPORT_SYMBOL_GPL drivers/i2c/i2c-smbus 0x88822d96 i2c_register_spd +EXPORT_SYMBOL_GPL drivers/i2c/i2c-smbus 0xb0114900 i2c_handle_smbus_alert +EXPORT_SYMBOL_GPL drivers/i3c/i3c 0x265a93b3 i3c_master_disec_locked +EXPORT_SYMBOL_GPL drivers/i3c/i3c 0x34303c6b i3c_master_enec_locked +EXPORT_SYMBOL_GPL drivers/i3c/i3c 0x34eb2dd1 i3c_device_match_id +EXPORT_SYMBOL_GPL drivers/i3c/i3c 0x37d9402f i3c_generic_ibi_alloc_pool +EXPORT_SYMBOL_GPL drivers/i3c/i3c 0x39e16025 i3c_master_add_i3c_dev_locked +EXPORT_SYMBOL_GPL drivers/i3c/i3c 0x3af23ce0 i3c_device_do_priv_xfers +EXPORT_SYMBOL_GPL drivers/i3c/i3c 0x4de225b8 i3c_generic_ibi_recycle_slot +EXPORT_SYMBOL_GPL drivers/i3c/i3c 0x5f7ee948 i3c_device_disable_ibi +EXPORT_SYMBOL_GPL drivers/i3c/i3c 0x687ffdbc i3c_device_enable_ibi +EXPORT_SYMBOL_GPL drivers/i3c/i3c 0x76fe3e05 i3c_generic_ibi_free_pool +EXPORT_SYMBOL_GPL drivers/i3c/i3c 0x7d016279 i3c_device_free_ibi +EXPORT_SYMBOL_GPL drivers/i3c/i3c 0x8afc649b i3c_master_entdaa_locked +EXPORT_SYMBOL_GPL drivers/i3c/i3c 0x8f2d04e3 i3c_master_defslvs_locked +EXPORT_SYMBOL_GPL drivers/i3c/i3c 0x99f2f6f5 i3c_master_get_free_addr +EXPORT_SYMBOL_GPL drivers/i3c/i3c 0x9de98083 i3c_device_request_ibi +EXPORT_SYMBOL_GPL drivers/i3c/i3c 0xaf95ce6b dev_to_i3cdev +EXPORT_SYMBOL_GPL drivers/i3c/i3c 0xb04e1678 i3c_driver_register_with_owner +EXPORT_SYMBOL_GPL drivers/i3c/i3c 0xbb3a1689 i3cdev_to_dev +EXPORT_SYMBOL_GPL drivers/i3c/i3c 0xca56ffeb i3c_master_queue_ibi +EXPORT_SYMBOL_GPL drivers/i3c/i3c 0xda2558c1 i3c_master_set_info +EXPORT_SYMBOL_GPL drivers/i3c/i3c 0xdb8a179d i3c_device_get_info +EXPORT_SYMBOL_GPL drivers/i3c/i3c 0xdd5aa70d i3c_driver_unregister +EXPORT_SYMBOL_GPL drivers/i3c/i3c 0xe2acb964 i3c_master_register +EXPORT_SYMBOL_GPL drivers/i3c/i3c 0xe6ed3e66 i3c_master_do_daa +EXPORT_SYMBOL_GPL drivers/i3c/i3c 0xfbd94224 i3c_generic_ibi_get_free_slot +EXPORT_SYMBOL_GPL drivers/i3c/i3c 0xff7a5721 i3c_master_unregister +EXPORT_SYMBOL_GPL drivers/infiniband/core/ib_core 0xdbd019c4 ib_wq +EXPORT_SYMBOL_GPL drivers/infiniband/ulp/rtrs/rtrs-core 0x19fe2fe2 rtrs_cq_qp_create +EXPORT_SYMBOL_GPL drivers/infiniband/ulp/rtrs/rtrs-core 0x28975fe3 rtrs_send_hb_ack +EXPORT_SYMBOL_GPL drivers/infiniband/ulp/rtrs/rtrs-core 0x49a2db8d rtrs_iu_post_recv +EXPORT_SYMBOL_GPL drivers/infiniband/ulp/rtrs/rtrs-core 0x5c03acd7 rtrs_iu_free +EXPORT_SYMBOL_GPL drivers/infiniband/ulp/rtrs/rtrs-core 0x68b7fa88 rtrs_iu_post_send +EXPORT_SYMBOL_GPL drivers/infiniband/ulp/rtrs/rtrs-core 0x6b513fe8 rtrs_init_hb +EXPORT_SYMBOL_GPL drivers/infiniband/ulp/rtrs/rtrs-core 0x7830c5b2 rtrs_start_hb +EXPORT_SYMBOL_GPL drivers/infiniband/ulp/rtrs/rtrs-core 0x8bafac00 rtrs_iu_alloc +EXPORT_SYMBOL_GPL drivers/infiniband/ulp/rtrs/rtrs-core 0x8d371387 rtrs_cq_qp_destroy +EXPORT_SYMBOL_GPL drivers/infiniband/ulp/rtrs/rtrs-core 0xa3ead9ba rtrs_iu_post_rdma_write_imm +EXPORT_SYMBOL_GPL drivers/infiniband/ulp/rtrs/rtrs-core 0xbb6e2a68 rtrs_post_recv_empty +EXPORT_SYMBOL_GPL drivers/infiniband/ulp/rtrs/rtrs-core 0xdfabfcf0 rtrs_stop_hb +EXPORT_SYMBOL_GPL drivers/infiniband/ulp/rtrs/rtrs-core 0xeade1756 rtrs_post_rdma_write_imm_empty +EXPORT_SYMBOL_GPL drivers/input/ff-memless 0x79d143a3 input_ff_create_memless +EXPORT_SYMBOL_GPL drivers/input/matrix-keymap 0xeac66055 matrix_keypad_parse_properties +EXPORT_SYMBOL_GPL drivers/ipack/ipack 0x2a2b08a0 ipack_put_device +EXPORT_SYMBOL_GPL drivers/ipack/ipack 0x3105503a ipack_bus_unregister +EXPORT_SYMBOL_GPL drivers/ipack/ipack 0x3b3915ab ipack_device_del +EXPORT_SYMBOL_GPL drivers/ipack/ipack 0x44db688c ipack_device_add +EXPORT_SYMBOL_GPL drivers/ipack/ipack 0x47fe92c9 ipack_driver_register +EXPORT_SYMBOL_GPL drivers/ipack/ipack 0x4b42c40d ipack_driver_unregister +EXPORT_SYMBOL_GPL drivers/ipack/ipack 0x8ab285c9 ipack_get_device +EXPORT_SYMBOL_GPL drivers/ipack/ipack 0xb68731f6 ipack_bus_register +EXPORT_SYMBOL_GPL drivers/ipack/ipack 0xfa49e22d ipack_device_init +EXPORT_SYMBOL_GPL drivers/leds/led-class 0x0c5c0f43 devm_led_classdev_unregister +EXPORT_SYMBOL_GPL drivers/leds/led-class 0x12b5d089 devm_led_classdev_register_ext +EXPORT_SYMBOL_GPL drivers/leds/led-class 0x14b55dbf led_classdev_register_ext +EXPORT_SYMBOL_GPL drivers/leds/led-class 0x2c131fcc led_classdev_resume +EXPORT_SYMBOL_GPL drivers/leds/led-class 0x2cea10a9 devm_of_led_get +EXPORT_SYMBOL_GPL drivers/leds/led-class 0x2f2b94eb of_led_get +EXPORT_SYMBOL_GPL drivers/leds/led-class 0x4c0a3e5f led_classdev_suspend +EXPORT_SYMBOL_GPL drivers/leds/led-class 0x4d10ddf1 led_classdev_notify_brightness_hw_changed +EXPORT_SYMBOL_GPL drivers/leds/led-class 0xa44896ce led_put +EXPORT_SYMBOL_GPL drivers/leds/led-class 0xe874bca2 led_classdev_unregister +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/md/bcache/bcache 0x15b97715 __tracepoint_bcache_write +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0x19b88bec __tracepoint_bcache_writeback +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0x2307b422 __tracepoint_bcache_journal_full +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0x2b46c4b6 __tracepoint_bcache_btree_node_alloc_fail +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0x2b793afb __tracepoint_bcache_read +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0x2fbf8560 __tracepoint_bcache_btree_read +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0x33554606 __tracepoint_bcache_journal_entry_full +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0x414c7765 __tracepoint_bcache_btree_node_alloc +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0x5f6a4a3e __tracepoint_bcache_btree_node_free +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0x65fb81f0 __tracepoint_bcache_btree_node_compact +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0x6b1045c7 __tracepoint_bcache_btree_set_root +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0x7260fb66 __tracepoint_bcache_btree_write +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0x748968f6 __tracepoint_bcache_btree_insert_key +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0x7574c715 __tracepoint_bcache_gc_end +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0x7c8a33fe __tracepoint_bcache_read_retry +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0x96bf5dba __tracepoint_bcache_writeback_collision +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0xa353964f __tracepoint_bcache_request_end +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0xa4682eff __tracepoint_bcache_gc_start +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0xab4c5652 __tracepoint_bcache_btree_node_split +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0xb22f8879 __tracepoint_bcache_bypass_sequential +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0xbf53dc9d __tracepoint_bcache_btree_gc_coalesce +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0xc00185bc __tracepoint_bcache_gc_copy_collision +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0xc13b483f __tracepoint_bcache_invalidate +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0xc36e201d __tracepoint_bcache_gc_copy +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0xc8feefc9 __tracepoint_bcache_alloc_fail +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0xd8da0f0e __tracepoint_bcache_cache_insert +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0xd9f20dee __tracepoint_bcache_journal_replay_key +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0xe9c4d700 __tracepoint_bcache_bypass_congested +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0xee603d81 __tracepoint_bcache_journal_write +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0xf5d8bf62 __tracepoint_bcache_btree_cache_cannibalize +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0xf8502c64 __tracepoint_bcache_request_start +EXPORT_SYMBOL_GPL drivers/md/dm-bio-prison 0x13e8a6d3 dm_cell_unlock_v2 +EXPORT_SYMBOL_GPL drivers/md/dm-bio-prison 0x17dd39d6 dm_deferred_set_create +EXPORT_SYMBOL_GPL drivers/md/dm-bio-prison 0x2eb01e04 dm_deferred_set_destroy +EXPORT_SYMBOL_GPL drivers/md/dm-bio-prison 0x340856d9 dm_cell_visit_release +EXPORT_SYMBOL_GPL drivers/md/dm-bio-prison 0x35775939 dm_bio_prison_alloc_cell +EXPORT_SYMBOL_GPL drivers/md/dm-bio-prison 0x386cfa91 dm_cell_quiesce_v2 +EXPORT_SYMBOL_GPL drivers/md/dm-bio-prison 0x44e0eb33 dm_cell_lock_v2 +EXPORT_SYMBOL_GPL drivers/md/dm-bio-prison 0x46ef8a86 dm_cell_error +EXPORT_SYMBOL_GPL drivers/md/dm-bio-prison 0x53066943 dm_cell_release_no_holder +EXPORT_SYMBOL_GPL drivers/md/dm-bio-prison 0x5f3896eb dm_bio_prison_free_cell +EXPORT_SYMBOL_GPL drivers/md/dm-bio-prison 0x65c0d76c 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 0x753e20b2 dm_bio_prison_create +EXPORT_SYMBOL_GPL drivers/md/dm-bio-prison 0x778d7196 dm_bio_detain +EXPORT_SYMBOL_GPL drivers/md/dm-bio-prison 0x7c4b1bb6 dm_cell_get_v2 +EXPORT_SYMBOL_GPL drivers/md/dm-bio-prison 0xaa8fd435 dm_cell_promote_or_release +EXPORT_SYMBOL_GPL drivers/md/dm-bio-prison 0xace9b57b dm_bio_prison_destroy_v2 +EXPORT_SYMBOL_GPL drivers/md/dm-bio-prison 0xada2c934 dm_get_cell +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 0xc1bd4f7d dm_bio_prison_free_cell_v2 +EXPORT_SYMBOL_GPL drivers/md/dm-bio-prison 0xc89abf9b dm_cell_put_v2 +EXPORT_SYMBOL_GPL drivers/md/dm-bio-prison 0xca2e3a88 dm_deferred_entry_inc +EXPORT_SYMBOL_GPL drivers/md/dm-bio-prison 0xd99e003d dm_bio_prison_create_v2 +EXPORT_SYMBOL_GPL drivers/md/dm-bio-prison 0xe285b731 dm_cell_lock_promote_v2 +EXPORT_SYMBOL_GPL drivers/md/dm-bio-prison 0xf3cfa98e dm_cell_release +EXPORT_SYMBOL_GPL drivers/md/dm-bufio 0x0ad0dc4f dm_bufio_mark_buffer_dirty +EXPORT_SYMBOL_GPL drivers/md/dm-bufio 0x111ab12a dm_bufio_mark_partial_buffer_dirty +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 0x6aebce95 dm_bufio_issue_discard +EXPORT_SYMBOL_GPL drivers/md/dm-bufio 0x6d3f57bd dm_bufio_get_client +EXPORT_SYMBOL_GPL drivers/md/dm-bufio 0x72f07bf4 dm_bufio_set_minimum_buffers +EXPORT_SYMBOL_GPL drivers/md/dm-bufio 0x74dcd98c dm_bufio_get_aux_data +EXPORT_SYMBOL_GPL drivers/md/dm-bufio 0x7c381a76 dm_bufio_get_block_size +EXPORT_SYMBOL_GPL drivers/md/dm-bufio 0x867e87eb dm_bufio_get_dm_io_client +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 0xb2438d54 dm_bufio_release_move +EXPORT_SYMBOL_GPL drivers/md/dm-bufio 0xc0d7df85 dm_bufio_new +EXPORT_SYMBOL_GPL drivers/md/dm-bufio 0xc90df7e5 dm_bufio_prefetch +EXPORT_SYMBOL_GPL drivers/md/dm-bufio 0xc9a3422d dm_bufio_write_dirty_buffers_async +EXPORT_SYMBOL_GPL drivers/md/dm-bufio 0xcbbbf9d1 dm_bufio_client_create +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 0x5435a0e4 dm_cache_policy_unregister +EXPORT_SYMBOL_GPL drivers/md/dm-cache 0x5adc2807 btracker_destroy +EXPORT_SYMBOL_GPL drivers/md/dm-cache 0x5de611a9 btracker_nr_writebacks_queued +EXPORT_SYMBOL_GPL drivers/md/dm-cache 0x7890d535 dm_cache_policy_get_name +EXPORT_SYMBOL_GPL drivers/md/dm-cache 0x87bee547 btracker_queue +EXPORT_SYMBOL_GPL drivers/md/dm-cache 0x890723f7 dm_cache_policy_get_version +EXPORT_SYMBOL_GPL drivers/md/dm-cache 0x90c2d715 dm_cache_policy_register +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 0xadbefda4 dm_cache_policy_destroy +EXPORT_SYMBOL_GPL drivers/md/dm-cache 0xbf1a2968 btracker_create +EXPORT_SYMBOL_GPL drivers/md/dm-cache 0xccfe6409 btracker_nr_demotions_queued +EXPORT_SYMBOL_GPL drivers/md/dm-cache 0xcf8c2590 dm_cache_policy_get_hint_size +EXPORT_SYMBOL_GPL drivers/md/dm-cache 0xe1bdae47 dm_cache_policy_create +EXPORT_SYMBOL_GPL drivers/md/dm-multipath 0x2abdc735 dm_register_path_selector +EXPORT_SYMBOL_GPL drivers/md/dm-multipath 0xc8f2f568 dm_unregister_path_selector +EXPORT_SYMBOL_GPL drivers/md/dm-region-hash 0x01d2f9ac dm_rh_recovery_start +EXPORT_SYMBOL_GPL drivers/md/dm-region-hash 0x0c998fc8 dm_rh_bio_to_region +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 0x57e16c3e dm_rh_get_state +EXPORT_SYMBOL_GPL drivers/md/dm-region-hash 0x5f4a6e61 dm_rh_dec +EXPORT_SYMBOL_GPL drivers/md/dm-region-hash 0x632a7d15 dm_rh_dirty_log +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 0xadece54d dm_region_hash_create +EXPORT_SYMBOL_GPL drivers/md/dm-region-hash 0xb7e4d4b8 dm_rh_mark_nosync +EXPORT_SYMBOL_GPL drivers/md/dm-region-hash 0xb8091df8 dm_rh_delay +EXPORT_SYMBOL_GPL drivers/md/dm-region-hash 0xbe38a431 dm_rh_recovery_prepare +EXPORT_SYMBOL_GPL drivers/md/dm-region-hash 0xce4077ef dm_rh_inc_pending +EXPORT_SYMBOL_GPL drivers/md/dm-region-hash 0xd8aa4284 dm_rh_region_context +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 0x09cc81fa dm_btree_cursor_skip +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x0a7e77f3 dm_btree_cursor_end +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x0b25f6bc dm_array_resize +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x0b36102c dm_array_empty +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x0be67537 dm_btree_walk +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x0e198232 dm_btree_insert +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x10e6ccea dm_bitset_clear_bit +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x16af9071 dm_array_set_value +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x1e3f728d dm_block_data +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x23ebd5fb dm_bitset_set_bit +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x2417c5c4 dm_btree_empty +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x24621ca3 dm_sm_disk_open +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x2adee13f dm_btree_cursor_next +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 0x34d45c77 dm_btree_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 0x36a34e58 dm_array_cursor_get_value +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x36b84cda dm_array_del +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x3a797d19 dm_btree_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 0x432b8178 dm_array_cursor_begin +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x4557b425 dm_bitset_test_bit +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x48d1c7dc dm_btree_find_lowest_key +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x48e323be dm_bm_unlock +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x49081644 dm_btree_remove +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x4a4cb558 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 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 0x5cf0d0bb dm_tm_create_with_sm +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x63b0c22d dm_bitset_flush +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x688d422d dm_bm_block_size +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x6af8a872 dm_array_info_init +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x6bb4bf8f dm_array_cursor_next +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x6e1e3821 dm_array_walk +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x6f2fe3c4 dm_btree_remove_leaves +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 0x7485935a dm_btree_lookup +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x7551b46e dm_tm_open_with_sm +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x764567c8 dm_btree_find_highest_key +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 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 0x885b0024 dm_array_new +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x89783bda dm_array_cursor_end +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 0x95a52abd dm_bm_is_read_only +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x97263968 dm_bitset_resize +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x98db2687 dm_bitset_cursor_end +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 0x9e98460e dm_bitset_empty +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0xa2ea5542 dm_bitset_del +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0xa3cc1157 dm_btree_cursor_begin +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0xa51fbedc dm_bitset_new +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0xa54dad76 dm_block_manager_create +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0xaab0ef04 dm_bitset_cursor_skip +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0xb6949944 dm_array_get_value +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0xbb461fb7 dm_bitset_cursor_begin +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0xbbb5df05 dm_array_cursor_skip +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0xc248bde2 dm_disk_bitset_init +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0xcedfc878 dm_bitset_cursor_get_value +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0xd163cade dm_tm_commit +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0xd51c29f1 dm_sm_disk_create +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0xd6711a58 dm_bitset_cursor_next +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0xe781f874 dm_tm_dec +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0xf398644f dm_btree_lookup_next +EXPORT_SYMBOL_GPL drivers/media/cec/core/cec 0x149f6eb1 cec_notifier_parse_hdmi_phandle +EXPORT_SYMBOL_GPL drivers/media/cec/core/cec 0x19542cd3 cec_transmit_attempt_done_ts +EXPORT_SYMBOL_GPL drivers/media/cec/core/cec 0x26ec4557 cec_queue_pin_cec_event +EXPORT_SYMBOL_GPL drivers/media/cec/core/cec 0x286dbdb2 cec_s_phys_addr_from_edid +EXPORT_SYMBOL_GPL drivers/media/cec/core/cec 0x2a57c7b3 cec_fill_conn_info_from_drm +EXPORT_SYMBOL_GPL drivers/media/cec/core/cec 0x49d89540 cec_transmit_done_ts +EXPORT_SYMBOL_GPL drivers/media/cec/core/cec 0x4b5d1dee cec_register_adapter +EXPORT_SYMBOL_GPL drivers/media/cec/core/cec 0x57482c39 cec_queue_pin_hpd_event +EXPORT_SYMBOL_GPL drivers/media/cec/core/cec 0x6f144ca8 cec_transmit_msg +EXPORT_SYMBOL_GPL drivers/media/cec/core/cec 0x763cf1df cec_delete_adapter +EXPORT_SYMBOL_GPL drivers/media/cec/core/cec 0x80ddabaa cec_notifier_cec_adap_unregister +EXPORT_SYMBOL_GPL drivers/media/cec/core/cec 0x884971f8 cec_notifier_cec_adap_register +EXPORT_SYMBOL_GPL drivers/media/cec/core/cec 0x9689ff78 cec_notifier_conn_register +EXPORT_SYMBOL_GPL drivers/media/cec/core/cec 0xa01fbb6b cec_notifier_set_phys_addr +EXPORT_SYMBOL_GPL drivers/media/cec/core/cec 0xaee236c6 cec_notifier_conn_unregister +EXPORT_SYMBOL_GPL drivers/media/cec/core/cec 0xb9371028 cec_received_msg_ts +EXPORT_SYMBOL_GPL drivers/media/cec/core/cec 0xbe4de675 cec_get_edid_phys_addr +EXPORT_SYMBOL_GPL drivers/media/cec/core/cec 0xc525df6d cec_s_conn_info +EXPORT_SYMBOL_GPL drivers/media/cec/core/cec 0xc836100e cec_unregister_adapter +EXPORT_SYMBOL_GPL drivers/media/cec/core/cec 0xd2e84f78 cec_allocate_adapter +EXPORT_SYMBOL_GPL drivers/media/cec/core/cec 0xe605eadf cec_s_phys_addr +EXPORT_SYMBOL_GPL drivers/media/cec/core/cec 0xed33dcce cec_queue_pin_5v_event +EXPORT_SYMBOL_GPL drivers/media/cec/core/cec 0xed888acc cec_s_log_addrs +EXPORT_SYMBOL_GPL drivers/media/cec/core/cec 0xf8c99364 cec_notifier_set_phys_addr_from_edid +EXPORT_SYMBOL_GPL drivers/media/common/v4l2-tpg/v4l2-tpg 0x03005a48 tpg_alloc +EXPORT_SYMBOL_GPL drivers/media/common/v4l2-tpg/v4l2-tpg 0x040dc7cd tpg_aspect_strings +EXPORT_SYMBOL_GPL drivers/media/common/v4l2-tpg/v4l2-tpg 0x4d1d285c tpg_init +EXPORT_SYMBOL_GPL drivers/media/common/v4l2-tpg/v4l2-tpg 0x517e7ccd tpg_fill_plane_buffer +EXPORT_SYMBOL_GPL drivers/media/common/v4l2-tpg/v4l2-tpg 0x579c6308 tpg_gen_text +EXPORT_SYMBOL_GPL drivers/media/common/v4l2-tpg/v4l2-tpg 0x6026aaf0 tpg_log_status +EXPORT_SYMBOL_GPL drivers/media/common/v4l2-tpg/v4l2-tpg 0x6960e899 tpg_s_crop_compose +EXPORT_SYMBOL_GPL drivers/media/common/v4l2-tpg/v4l2-tpg 0x756516e7 tpg_s_fourcc +EXPORT_SYMBOL_GPL drivers/media/common/v4l2-tpg/v4l2-tpg 0x7a5d8c0b tpg_update_mv_step +EXPORT_SYMBOL_GPL drivers/media/common/v4l2-tpg/v4l2-tpg 0x86b4ddf7 tpg_reset_source +EXPORT_SYMBOL_GPL drivers/media/common/v4l2-tpg/v4l2-tpg 0x975a1e29 tpg_g_interleaved_plane +EXPORT_SYMBOL_GPL drivers/media/common/v4l2-tpg/v4l2-tpg 0xaa5503d9 tpg_set_font +EXPORT_SYMBOL_GPL drivers/media/common/v4l2-tpg/v4l2-tpg 0xc6110b6e tpg_free +EXPORT_SYMBOL_GPL drivers/media/common/v4l2-tpg/v4l2-tpg 0xc6808be7 tpg_calc_text_basep +EXPORT_SYMBOL_GPL drivers/media/common/v4l2-tpg/v4l2-tpg 0xce8159bb tpg_pattern_strings +EXPORT_SYMBOL_GPL drivers/media/common/v4l2-tpg/v4l2-tpg 0xf65c5e46 tpg_fillbuffer +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-common 0x0e3b4127 vb2_core_queue_init +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-common 0x11bdf3f3 vb2_write +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-common 0x287bb5c8 vb2_core_poll +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-common 0x28be0209 vb2_core_queue_release +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-common 0x3144a61a vb2_discard_done +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-common 0x351b2784 vb2_core_prepare_buf +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-common 0x3f623848 __tracepoint_vb2_qbuf +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-common 0x421f0ab6 vb2_core_streamoff +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-common 0x511701b7 vb2_request_object_is_buffer +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-common 0x545275b1 vb2_request_buffer_cnt +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-common 0x5780d1ef vb2_core_reqbufs +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-common 0x5ee133e0 vb2_queue_error +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-common 0x68340fbb vb2_core_dqbuf +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-common 0x71788eee vb2_read +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-common 0x8743f9ce vb2_core_create_bufs +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-common 0x8ddae992 __tracepoint_vb2_buf_done +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-common 0x90828029 __tracepoint_vb2_dqbuf +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-common 0x9baa70f6 vb2_core_expbuf +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-common 0xa12195c9 vb2_thread_stop +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-common 0xa7ac7890 vb2_core_querybuf +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-common 0xae7a9945 vb2_thread_start +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-common 0xb59524cc vb2_core_streamon +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-common 0xb5b5305c vb2_plane_cookie +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-common 0xbbc6736e vb2_wait_for_all_buffers +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-common 0xc88264fe __tracepoint_vb2_buf_queue +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-common 0xd404abb6 vb2_plane_vaddr +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-common 0xd4d214bc vb2_mmap +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-common 0xe2bd2894 vb2_core_qbuf +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-common 0xe55a9b21 vb2_buffer_done +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-dma-contig 0x8cf54e9b vb2_dma_contig_set_max_seg_size +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-dma-contig 0xdd5e028f vb2_dma_contig_memops +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-dma-sg 0x935db49d vb2_dma_sg_memops +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-memops 0xd494d2d0 vb2_common_vm_ops +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-v4l2 0x02174cde vb2_fop_read +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-v4l2 0x047ead56 vb2_ioctl_prepare_buf +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-v4l2 0x0e0de0de vb2_fop_mmap +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-v4l2 0x22452d31 vb2_ioctl_querybuf +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-v4l2 0x23e372a2 vb2_fop_write +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-v4l2 0x29d0f923 vb2_ioctl_qbuf +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-v4l2 0x2bd6d480 vb2_ioctl_reqbufs +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-v4l2 0x30cd506a vb2_queue_release +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-v4l2 0x3652a7e9 vb2_ioctl_dqbuf +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-v4l2 0x3a2b2ee9 vb2_fop_release +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-v4l2 0x3e44bc3b vb2_prepare_buf +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-v4l2 0x4a074e3f vb2_ioctl_streamon +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-v4l2 0x4c362899 vb2_streamon +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-v4l2 0x4f606ed5 vb2_request_queue +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-v4l2 0x507f6e08 vb2_dqbuf +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-v4l2 0x5c083fc3 vb2_find_timestamp +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-v4l2 0x6487e972 vb2_ops_wait_prepare +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-v4l2 0x70fc0925 vb2_fop_poll +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-v4l2 0x7b39dae1 vb2_ioctl_create_bufs +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-v4l2 0x7ff321c2 vb2_create_bufs +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-v4l2 0x80ce9992 vb2_request_validate +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-v4l2 0x90114b73 vb2_queue_init +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-v4l2 0xa65171bb vb2_poll +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-v4l2 0xa92bab5c vb2_expbuf +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-v4l2 0xbc06923e vb2_streamoff +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-v4l2 0xbf2e49cf vb2_ioctl_streamoff +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-v4l2 0xd24a8550 vb2_ioctl_expbuf +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-v4l2 0xdc726c49 vb2_reqbufs +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-v4l2 0xea9938e7 vb2_ops_wait_finish +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-v4l2 0xf16e1034 _vb2_fop_release +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-v4l2 0xfb5351b8 vb2_qbuf +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-vmalloc 0xf7f0c870 vb2_vmalloc_memops +EXPORT_SYMBOL_GPL drivers/media/mc/mc 0x010e8bbc media_request_object_put +EXPORT_SYMBOL_GPL drivers/media/mc/mc 0x019a009b media_get_pad_index +EXPORT_SYMBOL_GPL drivers/media/mc/mc 0x0b1dc2c9 media_entity_setup_link +EXPORT_SYMBOL_GPL drivers/media/mc/mc 0x0be4fe3d media_request_object_bind +EXPORT_SYMBOL_GPL drivers/media/mc/mc 0x0e61d635 media_devnode_remove +EXPORT_SYMBOL_GPL drivers/media/mc/mc 0x147d1fc5 media_device_unregister_entity +EXPORT_SYMBOL_GPL drivers/media/mc/mc 0x196325e3 __media_remove_intf_link +EXPORT_SYMBOL_GPL drivers/media/mc/mc 0x224627fb __media_entity_setup_link +EXPORT_SYMBOL_GPL drivers/media/mc/mc 0x226c26d8 media_remove_intf_link +EXPORT_SYMBOL_GPL drivers/media/mc/mc 0x23b421c2 media_pipeline_stop +EXPORT_SYMBOL_GPL drivers/media/mc/mc 0x2938227c media_graph_walk_start +EXPORT_SYMBOL_GPL drivers/media/mc/mc 0x309c77b2 media_device_register_entity_notify +EXPORT_SYMBOL_GPL drivers/media/mc/mc 0x3a0dfb51 __media_device_usb_init +EXPORT_SYMBOL_GPL drivers/media/mc/mc 0x42877795 __media_entity_remove_links +EXPORT_SYMBOL_GPL drivers/media/mc/mc 0x4297d2e2 __media_pipeline_stop +EXPORT_SYMBOL_GPL drivers/media/mc/mc 0x4fedd3f4 media_device_register_entity +EXPORT_SYMBOL_GPL drivers/media/mc/mc 0x563efa7c media_create_intf_link +EXPORT_SYMBOL_GPL drivers/media/mc/mc 0x58aa4cc1 media_graph_walk_cleanup +EXPORT_SYMBOL_GPL drivers/media/mc/mc 0x5d064b60 media_device_unregister_entity_notify +EXPORT_SYMBOL_GPL drivers/media/mc/mc 0x621031ef media_pipeline_start +EXPORT_SYMBOL_GPL drivers/media/mc/mc 0x6d8cebca media_device_unregister +EXPORT_SYMBOL_GPL drivers/media/mc/mc 0x756e5541 media_entity_find_link +EXPORT_SYMBOL_GPL drivers/media/mc/mc 0x7adc4a7f media_device_pci_init +EXPORT_SYMBOL_GPL drivers/media/mc/mc 0x7e394573 media_request_put +EXPORT_SYMBOL_GPL drivers/media/mc/mc 0x7ed10aba media_create_pad_link +EXPORT_SYMBOL_GPL drivers/media/mc/mc 0x82fdd623 media_graph_walk_init +EXPORT_SYMBOL_GPL drivers/media/mc/mc 0x8bb725ee media_device_usb_allocate +EXPORT_SYMBOL_GPL drivers/media/mc/mc 0x8c7a2e8c media_entity_pads_init +EXPORT_SYMBOL_GPL drivers/media/mc/mc 0xa3fa4a33 media_create_pad_links +EXPORT_SYMBOL_GPL drivers/media/mc/mc 0xa6cd4b9f media_request_object_find +EXPORT_SYMBOL_GPL drivers/media/mc/mc 0xac9cf66f media_devnode_create +EXPORT_SYMBOL_GPL drivers/media/mc/mc 0xb12df9e9 media_entity_remove_links +EXPORT_SYMBOL_GPL drivers/media/mc/mc 0xb17258b5 media_request_object_complete +EXPORT_SYMBOL_GPL drivers/media/mc/mc 0xb6265827 media_remove_intf_links +EXPORT_SYMBOL_GPL drivers/media/mc/mc 0xb808ae2d media_device_delete +EXPORT_SYMBOL_GPL drivers/media/mc/mc 0xbbe1a806 __media_pipeline_start +EXPORT_SYMBOL_GPL drivers/media/mc/mc 0xc1d33a33 media_device_init +EXPORT_SYMBOL_GPL drivers/media/mc/mc 0xc4d20be9 media_graph_walk_next +EXPORT_SYMBOL_GPL drivers/media/mc/mc 0xc8a2003b media_request_object_init +EXPORT_SYMBOL_GPL drivers/media/mc/mc 0xcca8e766 media_entity_get_fwnode_pad +EXPORT_SYMBOL_GPL drivers/media/mc/mc 0xd1bd4c76 media_request_object_unbind +EXPORT_SYMBOL_GPL drivers/media/mc/mc 0xdc581289 __media_entity_enum_init +EXPORT_SYMBOL_GPL drivers/media/mc/mc 0xe4b851c6 media_entity_remote_pad +EXPORT_SYMBOL_GPL drivers/media/mc/mc 0xe58b74c6 media_device_cleanup +EXPORT_SYMBOL_GPL drivers/media/mc/mc 0xe5ceecd6 media_entity_enum_cleanup +EXPORT_SYMBOL_GPL drivers/media/mc/mc 0xef66cfbe __media_remove_intf_links +EXPORT_SYMBOL_GPL drivers/media/mc/mc 0xf2815183 media_request_get_by_fd +EXPORT_SYMBOL_GPL drivers/media/mc/mc 0xf9bd0c30 __media_device_register +EXPORT_SYMBOL_GPL drivers/media/platform/marvell-ccic/mcam-core 0x2675b1d2 mccic_suspend +EXPORT_SYMBOL_GPL drivers/media/platform/marvell-ccic/mcam-core 0x3da5933e mccic_irq +EXPORT_SYMBOL_GPL drivers/media/platform/marvell-ccic/mcam-core 0x5237cee6 mccic_register +EXPORT_SYMBOL_GPL drivers/media/platform/marvell-ccic/mcam-core 0x9574a47c mccic_shutdown +EXPORT_SYMBOL_GPL drivers/media/platform/marvell-ccic/mcam-core 0xbb4ec747 mccic_resume +EXPORT_SYMBOL_GPL drivers/media/rc/rc-core 0x04d8ad3c devm_rc_allocate_device +EXPORT_SYMBOL_GPL drivers/media/rc/rc-core 0x087ba771 rc_map_get +EXPORT_SYMBOL_GPL drivers/media/rc/rc-core 0x1ac62c77 rc_map_unregister +EXPORT_SYMBOL_GPL drivers/media/rc/rc-core 0x2e7174b3 rc_keyup +EXPORT_SYMBOL_GPL drivers/media/rc/rc-core 0x357a06a9 rc_keydown_notimeout +EXPORT_SYMBOL_GPL drivers/media/rc/rc-core 0x3e738194 rc_unregister_device +EXPORT_SYMBOL_GPL drivers/media/rc/rc-core 0x40487361 ir_raw_event_store_with_timeout +EXPORT_SYMBOL_GPL drivers/media/rc/rc-core 0x59f6017f rc_allocate_device +EXPORT_SYMBOL_GPL drivers/media/rc/rc-core 0x786f096b ir_raw_event_set_idle +EXPORT_SYMBOL_GPL drivers/media/rc/rc-core 0x7b6b5226 ir_raw_event_store_edge +EXPORT_SYMBOL_GPL drivers/media/rc/rc-core 0x7bc8ac67 rc_map_register +EXPORT_SYMBOL_GPL drivers/media/rc/rc-core 0x845f87f8 ir_raw_event_store_with_filter +EXPORT_SYMBOL_GPL drivers/media/rc/rc-core 0x945b6cef rc_repeat +EXPORT_SYMBOL_GPL drivers/media/rc/rc-core 0x9e1a23c7 rc_keydown +EXPORT_SYMBOL_GPL drivers/media/rc/rc-core 0xa100c73e ir_lirc_scancode_event +EXPORT_SYMBOL_GPL drivers/media/rc/rc-core 0xa648ecf4 rc_g_keycode_from_table +EXPORT_SYMBOL_GPL drivers/media/rc/rc-core 0xbc6c256e ir_raw_event_handle +EXPORT_SYMBOL_GPL drivers/media/rc/rc-core 0xcfd95fb7 rc_register_device +EXPORT_SYMBOL_GPL drivers/media/rc/rc-core 0xd5b0dde8 devm_rc_register_device +EXPORT_SYMBOL_GPL drivers/media/rc/rc-core 0xea142189 ir_raw_event_store +EXPORT_SYMBOL_GPL drivers/media/rc/rc-core 0xf40e02ea rc_free_device +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 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 0xef15cc44 v4l2_hdmi_rx_colorimetry +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-fwnode 0x04da0f93 v4l2_fwnode_parse_link +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-fwnode 0x0b27aa15 v4l2_fwnode_device_parse +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-fwnode 0x12b98233 v4l2_async_register_subdev_sensor_common +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-fwnode 0x17bab976 v4l2_fwnode_endpoint_free +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-fwnode 0x190a55e6 v4l2_fwnode_connector_parse +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-fwnode 0x1ce1bd84 v4l2_fwnode_endpoint_alloc_parse +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-fwnode 0x3ce9b4f2 v4l2_fwnode_connector_add_link +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-fwnode 0x430c0f01 v4l2_async_notifier_parse_fwnode_sensor_common +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-fwnode 0x4864a1f3 v4l2_async_notifier_parse_fwnode_endpoints +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-fwnode 0x4898f2f3 v4l2_fwnode_endpoint_parse +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-fwnode 0x5165dc5a v4l2_async_notifier_parse_fwnode_endpoints_by_port +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-fwnode 0x612ddce5 v4l2_fwnode_connector_free +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-fwnode 0x61beee83 v4l2_fwnode_put_link +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0x00c8e609 v4l2_m2m_querybuf +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0x043d7147 v4l2_m2m_ioctl_qbuf +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0x0b782798 v4l2_m2m_ioctl_prepare_buf +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0x0ba137a8 v4l2_m2m_request_queue +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0x0c817378 v4l2_m2m_ioctl_decoder_cmd +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0x10bcd0c9 v4l2_m2m_ctx_release +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0x14705d77 v4l2_m2m_streamoff +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0x16e5a21c v4l2_m2m_update_start_streaming_state +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0x1b287285 v4l2_m2m_buf_remove +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0x1c1a4153 v4l2_m2m_prepare_buf +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0x1db8f1be v4l2_m2m_update_stop_streaming_state +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0x25945076 v4l2_m2m_expbuf +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0x38cb98fe v4l2_m2m_ioctl_streamoff +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0x3b888471 v4l2_m2m_create_bufs +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0x3f5d3590 v4l2_m2m_encoder_cmd +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0x3fce58b9 v4l2_m2m_ioctl_create_bufs +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0x40eb0043 v4l2_m2m_ctx_init +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0x45a17b76 v4l2_m2m_decoder_cmd +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0x4b53b199 v4l2_m2m_ioctl_try_encoder_cmd +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0x4d7d6db6 v4l2_m2m_last_buf +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0x52ba580c v4l2_m2m_qbuf +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0x59ece2f1 v4l2_m2m_fop_mmap +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0x5ab261d7 v4l2_m2m_ioctl_expbuf +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0x674155a6 v4l2_m2m_last_buffer_done +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0x693d0401 v4l2_m2m_ioctl_stateless_try_decoder_cmd +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0x6a108baf v4l2_m2m_buf_remove_by_buf +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0x7302e039 v4l2_m2m_streamon +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0x730f2eae v4l2_m2m_init +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0x7b01468f v4l2_m2m_buf_queue +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0x7ca0ef20 v4l2_m2m_ioctl_dqbuf +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0xa775adae v4l2_m2m_ioctl_streamon +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0xb4b28a37 v4l2_m2m_poll +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0xb5d0d604 v4l2_m2m_register_media_controller +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0xb67ebf58 v4l2_m2m_ioctl_encoder_cmd +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0xc6fca5ad v4l2_m2m_release +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0xca73c7ef v4l2_m2m_fop_poll +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0xca9a0b93 v4l2_m2m_buf_copy_metadata +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0xd70cb49d v4l2_m2m_ioctl_try_decoder_cmd +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0xd728d689 v4l2_m2m_ioctl_querybuf +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0xdb68b558 v4l2_m2m_ioctl_reqbufs +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0xe14a24f5 v4l2_m2m_next_buf +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0xed483e9a v4l2_m2m_try_schedule +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0xee4615b4 v4l2_m2m_buf_remove_by_idx +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0xefbbd4d7 v4l2_m2m_dqbuf +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0xf06d377c v4l2_m2m_ioctl_stateless_decoder_cmd +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0xf13ff84d v4l2_m2m_unregister_media_controller +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0xf5959e41 v4l2_m2m_reqbufs +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0x11c14b43 videobuf_mmap_mapper +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0x1e403054 videobuf_queue_is_busy +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0x347a64ab videobuf_next_field +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0x3521af91 videobuf_queue_core_init +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0x3c635ba4 videobuf_waiton +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0x44a2bf55 videobuf_read_one +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0x4da06bd3 videobuf_reqbufs +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0x54040213 videobuf_dqbuf +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0x6b243223 videobuf_mmap_free +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0x7c7c792e videobuf_streamoff +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0x7f090616 videobuf_read_stop +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0x81daaf9b videobuf_queue_cancel +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0xa9d2e1c8 videobuf_iolock +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0xaf373619 videobuf_read_start +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0xbe693f5b videobuf_poll_stream +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0xc0479321 videobuf_qbuf +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0xc7331d8b videobuf_streamon +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0xc98baa90 videobuf_querybuf +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0xca1d3c2a videobuf_mmap_setup +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0xd8a80eaf __videobuf_mmap_setup +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0xdc9d9edf videobuf_stop +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0xe9c3f26c videobuf_queue_to_vaddr +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0xed40eb0f videobuf_alloc_vb +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0xfb2ed4ed videobuf_read_stream +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-vmalloc 0x533a4725 videobuf_queue_vmalloc_init +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-vmalloc 0x9a3eb0e2 videobuf_to_vmalloc +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-vmalloc 0xccea8c73 videobuf_vmalloc_free +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x037cd1d2 v4l2_device_set_name +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x056c3e55 v4l_disable_media_source +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x08b2031a v4l_enable_media_source +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x14bf66e5 v4l2_event_unsubscribe +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x1a724bd3 v4l2_spi_subdev_init +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x1ca26b55 v4l2_pipeline_link_notify +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x28aefb33 v4l2_s_parm_cap +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x2917714f v4l2_spi_new_subdev +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x2a53ca39 __tracepoint_vb2_v4l2_qbuf +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x2b2df5e4 v4l2_subdev_link_validate_default +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x2c42c4e9 v4l2_src_change_event_subdev_subscribe +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x2df84cdd v4l2_fh_release +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x30273875 v4l2_device_disconnect +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x32431a1e __tracepoint_vb2_v4l2_buf_queue +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x345c8b29 v4l2_i2c_subdev_set_name +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x3ba75536 v4l2_subdev_alloc_pad_config +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x43996a8c __tracepoint_vb2_v4l2_buf_done +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x44959455 v4l2_ctrl_request_hdl_ctrl_find +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x45fdb0ef v4l2_pipeline_pm_put +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x488bfc49 v4l2_i2c_subdev_init +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x4af54479 v4l2_async_notifier_add_i2c_subdev +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x4bb96420 v4l2_fh_is_singular +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x50d65b11 v4l2_subdev_free_pad_config +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x574eb5a2 v4l2_device_put +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x5d6901f5 __v4l2_ctrl_handler_setup +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x60c339b8 v4l2_i2c_new_subdev +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x68c8119a v4l2_event_unsubscribe_all +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x6e9acc41 v4l2_fill_pixfmt_mp +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x6f1498ea v4l2_device_unregister +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x6fd9cc72 v4l2_compat_ioctl32 +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x71b6a191 v4l2_async_notifier_add_fwnode_subdev +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x73158890 v4l2_fh_open +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x7f117948 v4l2_event_queue +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x80f57d2a v4l2_fh_add +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x84024db2 v4l2_g_parm_cap +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x85e98e78 v4l2_event_dequeue +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x86586da9 v4l2_ctrl_request_hdl_find +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x8a7ada38 v4l2_subdev_notify_event +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x91e0a705 v4l2_subdev_get_fwnode_pad_1_to_1 +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x97c2fafb __v4l2_device_register_subdev_nodes +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x99499786 v4l2_event_subdev_unsubscribe +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x9bf8d4fe v4l2_src_change_event_subscribe +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x9fef35ac v4l2_apply_frmsize_constraints +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0xa74dbddf v4l2_create_fwnode_links +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0xa9f1f919 v4l2_subdev_link_validate +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0xb0651b34 v4l2_device_register_subdev +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0xb795f071 __tracepoint_vb2_v4l2_dqbuf +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0xb980656b v4l2_async_notifier_cleanup +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0xbaee9502 v4l2_async_notifier_add_fwnode_remote_subdev +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0xbcab7b4d v4l2_fh_del +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0xc9d5b153 v4l2_device_register +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0xcc501597 v4l2_fill_pixfmt +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0xcd6f63d4 v4l2_mc_create_media_graph +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0xcefbcb9f v4l2_async_notifier_add_subdev +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0xd089d68e v4l2_event_subscribe +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0xd1dab669 v4l2_event_pending +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0xdbc7f22f v4l2_device_unregister_subdev +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0xe1a7e100 v4l2_pipeline_pm_get +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0xe20c0881 v4l2_i2c_subdev_addr +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0xe22bcf8e v4l2_fh_exit +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0xe2822320 __v4l2_find_nearest_size +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0xeb614814 v4l2_fh_init +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0xed5f8948 v4l2_event_queue_fh +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0xef5b8c13 v4l2_async_notifier_add_devname_subdev +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0xf2a353ac v4l2_i2c_tuner_addrs +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0xf5314642 v4l_vb2q_enable_media_source +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0xf5ef842e v4l_bound_align_image +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0xfc243702 v4l2_create_fwnode_links_to_pad +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0xfd360c91 v4l2_i2c_new_subdev_board +EXPORT_SYMBOL_GPL drivers/mfd/88pm80x 0x2c69f929 pm80x_regmap_config +EXPORT_SYMBOL_GPL drivers/mfd/88pm80x 0x776ecc24 pm80x_init +EXPORT_SYMBOL_GPL drivers/mfd/88pm80x 0xafa4973f pm80x_pm_ops +EXPORT_SYMBOL_GPL drivers/mfd/88pm80x 0xd99fd720 pm80x_deinit +EXPORT_SYMBOL_GPL drivers/mfd/intel-lpss 0x07e5c8aa intel_lpss_resume +EXPORT_SYMBOL_GPL drivers/mfd/intel-lpss 0x499604ad intel_lpss_remove +EXPORT_SYMBOL_GPL drivers/mfd/intel-lpss 0x8b399077 intel_lpss_probe +EXPORT_SYMBOL_GPL drivers/mfd/intel-lpss 0xae7a656b intel_lpss_prepare +EXPORT_SYMBOL_GPL drivers/mfd/intel-lpss 0xd58de624 intel_lpss_suspend +EXPORT_SYMBOL_GPL drivers/mfd/intel_pmc_bxt 0x2ebd5fe0 intel_pmc_s0ix_counter_read +EXPORT_SYMBOL_GPL drivers/mfd/intel_pmc_bxt 0x85d7e739 intel_pmc_gcr_read64 +EXPORT_SYMBOL_GPL drivers/mfd/intel_pmc_bxt 0xf137932c intel_pmc_gcr_update +EXPORT_SYMBOL_GPL drivers/mfd/iqs62x 0x22a28670 iqs62x_events +EXPORT_SYMBOL_GPL drivers/mfd/lp3943 0x6cfb2155 lp3943_update_bits +EXPORT_SYMBOL_GPL drivers/mfd/lp3943 0xdc0d184f lp3943_write_byte +EXPORT_SYMBOL_GPL drivers/mfd/lp3943 0xf3209897 lp3943_read_byte +EXPORT_SYMBOL_GPL drivers/mfd/madera 0x00477acf cs47l15_32bit_spi_regmap +EXPORT_SYMBOL_GPL drivers/mfd/madera 0x004aa68f cs47l15_16bit_spi_regmap +EXPORT_SYMBOL_GPL drivers/mfd/madera 0x0f379262 madera_of_match +EXPORT_SYMBOL_GPL drivers/mfd/madera 0x13e7bd9c cs47l92_patch +EXPORT_SYMBOL_GPL drivers/mfd/madera 0x2b53aea4 madera_pm_ops +EXPORT_SYMBOL_GPL drivers/mfd/madera 0x3f5a3d1c madera_dev_exit +EXPORT_SYMBOL_GPL drivers/mfd/madera 0x437267c3 cs47l15_16bit_i2c_regmap +EXPORT_SYMBOL_GPL drivers/mfd/madera 0x437fbb83 cs47l15_32bit_i2c_regmap +EXPORT_SYMBOL_GPL drivers/mfd/madera 0x552f9ab4 cs47l35_patch +EXPORT_SYMBOL_GPL drivers/mfd/madera 0x816ce1b6 madera_dev_init +EXPORT_SYMBOL_GPL drivers/mfd/madera 0x89b1cd0f cs47l35_32bit_i2c_regmap +EXPORT_SYMBOL_GPL drivers/mfd/madera 0x89bc114f cs47l35_16bit_i2c_regmap +EXPORT_SYMBOL_GPL drivers/mfd/madera 0x94973a3a cs47l92_16bit_i2c_regmap +EXPORT_SYMBOL_GPL drivers/mfd/madera 0x949ae67a cs47l92_32bit_i2c_regmap +EXPORT_SYMBOL_GPL drivers/mfd/madera 0xa31621c7 cs47l90_32bit_spi_regmap +EXPORT_SYMBOL_GPL drivers/mfd/madera 0xa31bfd87 cs47l90_16bit_spi_regmap +EXPORT_SYMBOL_GPL drivers/mfd/madera 0xbbc35677 cs47l85_32bit_i2c_regmap +EXPORT_SYMBOL_GPL drivers/mfd/madera 0xbbce8a37 cs47l85_16bit_i2c_regmap +EXPORT_SYMBOL_GPL drivers/mfd/madera 0xca84d003 cs47l35_16bit_spi_regmap +EXPORT_SYMBOL_GPL drivers/mfd/madera 0xca890c43 cs47l35_32bit_spi_regmap +EXPORT_SYMBOL_GPL drivers/mfd/madera 0xced23b07 cs47l85_patch +EXPORT_SYMBOL_GPL drivers/mfd/madera 0xd7a22736 cs47l92_32bit_spi_regmap +EXPORT_SYMBOL_GPL drivers/mfd/madera 0xd7affb76 cs47l92_16bit_spi_regmap +EXPORT_SYMBOL_GPL drivers/mfd/madera 0xdaa70414 cs47l15_patch +EXPORT_SYMBOL_GPL drivers/mfd/madera 0xe0233ccb cs47l90_16bit_i2c_regmap +EXPORT_SYMBOL_GPL drivers/mfd/madera 0xe02ee08b cs47l90_32bit_i2c_regmap +EXPORT_SYMBOL_GPL drivers/mfd/madera 0xebe384cb madera_name_from_type +EXPORT_SYMBOL_GPL drivers/mfd/madera 0xf8f64b7b cs47l85_16bit_spi_regmap +EXPORT_SYMBOL_GPL drivers/mfd/madera 0xf8fb973b cs47l85_32bit_spi_regmap +EXPORT_SYMBOL_GPL drivers/mfd/madera 0xfee7e240 cs47l90_patch +EXPORT_SYMBOL_GPL drivers/mfd/max14577 0x352b3813 maxim_charger_calc_reg_current +EXPORT_SYMBOL_GPL drivers/mfd/max14577 0xbab9a9f0 maxim_charger_currents +EXPORT_SYMBOL_GPL drivers/mfd/mc13xxx-core 0x3adeb0f0 mc13xxx_variant_mc13892 +EXPORT_SYMBOL_GPL drivers/mfd/mc13xxx-core 0x686b0eb8 mc13xxx_variant_mc34708 +EXPORT_SYMBOL_GPL drivers/mfd/mc13xxx-core 0x7a64fbd0 mc13xxx_variant_mc13783 +EXPORT_SYMBOL_GPL drivers/mfd/mc13xxx-core 0xc5f84b79 mc13xxx_common_exit +EXPORT_SYMBOL_GPL drivers/mfd/mc13xxx-core 0xc6c0d0af mc13xxx_adc_do_conversion +EXPORT_SYMBOL_GPL drivers/mfd/mc13xxx-core 0xd4f958be mc13xxx_common_init +EXPORT_SYMBOL_GPL drivers/mfd/pcf50633 0x41293e97 pcf50633_irq_mask +EXPORT_SYMBOL_GPL drivers/mfd/pcf50633 0x49a6cfcf pcf50633_reg_set_bit_mask +EXPORT_SYMBOL_GPL drivers/mfd/pcf50633 0x67f66aa7 pcf50633_write_block +EXPORT_SYMBOL_GPL drivers/mfd/pcf50633 0x8fe385cd pcf50633_register_irq +EXPORT_SYMBOL_GPL drivers/mfd/pcf50633 0x96859748 pcf50633_reg_read +EXPORT_SYMBOL_GPL drivers/mfd/pcf50633 0xae399326 pcf50633_free_irq +EXPORT_SYMBOL_GPL drivers/mfd/pcf50633 0xbdec7990 pcf50633_reg_write +EXPORT_SYMBOL_GPL drivers/mfd/pcf50633 0xc26a9c35 pcf50633_irq_unmask +EXPORT_SYMBOL_GPL drivers/mfd/pcf50633 0xc9bc03bd pcf50633_reg_clear_bits +EXPORT_SYMBOL_GPL drivers/mfd/pcf50633 0xe4b3b3f0 pcf50633_read_block +EXPORT_SYMBOL_GPL drivers/mfd/pcf50633 0xeb210c81 pcf50633_irq_mask_get +EXPORT_SYMBOL_GPL drivers/mfd/pcf50633-adc 0x5c7b937a pcf50633_adc_async_read +EXPORT_SYMBOL_GPL drivers/mfd/pcf50633-adc 0x8905871d pcf50633_adc_sync_read +EXPORT_SYMBOL_GPL drivers/mfd/pcf50633-gpio 0x0be87ac0 pcf50633_gpio_invert_get +EXPORT_SYMBOL_GPL drivers/mfd/pcf50633-gpio 0x1fb99b57 pcf50633_gpio_power_supply_set +EXPORT_SYMBOL_GPL drivers/mfd/pcf50633-gpio 0x4475997a pcf50633_gpio_get +EXPORT_SYMBOL_GPL drivers/mfd/pcf50633-gpio 0x932f63ee pcf50633_gpio_set +EXPORT_SYMBOL_GPL drivers/mfd/pcf50633-gpio 0xe86905ff pcf50633_gpio_invert_set +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/sm501 0x23cb6cf8 sm501_set_clock +EXPORT_SYMBOL_GPL drivers/mfd/sm501 0x27385a48 sm501_unit_power +EXPORT_SYMBOL_GPL drivers/mfd/sm501 0xc2d8b2c7 sm501_misc_control +EXPORT_SYMBOL_GPL drivers/mfd/sm501 0xc93a8b93 sm501_modify_reg +EXPORT_SYMBOL_GPL drivers/mfd/sm501 0xe682c27d sm501_find_clock +EXPORT_SYMBOL_GPL drivers/mfd/ti_am335x_tscadc 0x78127e4d am335x_tsc_se_adc_done +EXPORT_SYMBOL_GPL drivers/mfd/ti_am335x_tscadc 0x7dd27085 am335x_tsc_se_set_once +EXPORT_SYMBOL_GPL drivers/mfd/ti_am335x_tscadc 0x86835d72 am335x_tsc_se_set_cache +EXPORT_SYMBOL_GPL drivers/mfd/ti_am335x_tscadc 0xe1f43764 am335x_tsc_se_clr +EXPORT_SYMBOL_GPL drivers/misc/cardreader/alcor_pci 0x535af1f8 alcor_write16 +EXPORT_SYMBOL_GPL drivers/misc/cardreader/alcor_pci 0x7f58920f alcor_read8 +EXPORT_SYMBOL_GPL drivers/misc/cardreader/alcor_pci 0x9ec0cb83 alcor_write32be +EXPORT_SYMBOL_GPL drivers/misc/cardreader/alcor_pci 0xbe12e25f alcor_read32be +EXPORT_SYMBOL_GPL drivers/misc/cardreader/alcor_pci 0xc8666376 alcor_write8 +EXPORT_SYMBOL_GPL drivers/misc/cardreader/alcor_pci 0xcb38aa7b alcor_read32 +EXPORT_SYMBOL_GPL drivers/misc/cardreader/alcor_pci 0xdd26a8d0 alcor_write32 +EXPORT_SYMBOL_GPL drivers/misc/cardreader/rtsx_pci 0x0546ce72 rtsx_pci_read_ppbuf +EXPORT_SYMBOL_GPL drivers/misc/cardreader/rtsx_pci 0x0c066893 rtsx_pci_dma_transfer +EXPORT_SYMBOL_GPL drivers/misc/cardreader/rtsx_pci 0x0cc8aafd rtsx_pci_dma_map_sg +EXPORT_SYMBOL_GPL drivers/misc/cardreader/rtsx_pci 0x106b3e59 rtsx_pci_card_power_on +EXPORT_SYMBOL_GPL drivers/misc/cardreader/rtsx_pci 0x13db7ad2 rtsx_pci_card_power_off +EXPORT_SYMBOL_GPL drivers/misc/cardreader/rtsx_pci 0x2f0c98cd rtsx_pci_send_cmd +EXPORT_SYMBOL_GPL drivers/misc/cardreader/rtsx_pci 0x4204b73d rtsx_pci_start_run +EXPORT_SYMBOL_GPL drivers/misc/cardreader/rtsx_pci 0x50d994de rtsx_pci_stop_cmd +EXPORT_SYMBOL_GPL drivers/misc/cardreader/rtsx_pci 0x97a98fc9 rtsx_pci_write_register +EXPORT_SYMBOL_GPL drivers/misc/cardreader/rtsx_pci 0xaa1ba7d0 rtsx_pci_write_ppbuf +EXPORT_SYMBOL_GPL drivers/misc/cardreader/rtsx_pci 0xb0608ef3 rtsx_pci_card_pull_ctl_enable +EXPORT_SYMBOL_GPL drivers/misc/cardreader/rtsx_pci 0xb062f3b1 rtsx_pci_complete_unfinished_transfer +EXPORT_SYMBOL_GPL drivers/misc/cardreader/rtsx_pci 0xbacb9633 rtsx_pci_add_cmd +EXPORT_SYMBOL_GPL drivers/misc/cardreader/rtsx_pci 0xc0d746a2 rtsx_pci_card_exclusive_check +EXPORT_SYMBOL_GPL drivers/misc/cardreader/rtsx_pci 0xc7d7581a rtsx_pci_transfer_data +EXPORT_SYMBOL_GPL drivers/misc/cardreader/rtsx_pci 0xca0e7fcf rtsx_pci_read_phy_register +EXPORT_SYMBOL_GPL drivers/misc/cardreader/rtsx_pci 0xd5699c84 rtsx_pci_read_register +EXPORT_SYMBOL_GPL drivers/misc/cardreader/rtsx_pci 0xd584101e rtsx_pci_send_cmd_no_wait +EXPORT_SYMBOL_GPL drivers/misc/cardreader/rtsx_pci 0xd87c9d4f rtsx_pci_switch_clock +EXPORT_SYMBOL_GPL drivers/misc/cardreader/rtsx_pci 0xdd1109b5 rtsx_pci_card_pull_ctl_disable +EXPORT_SYMBOL_GPL drivers/misc/cardreader/rtsx_pci 0xe739fdb1 rtsx_pci_switch_output_voltage +EXPORT_SYMBOL_GPL drivers/misc/cardreader/rtsx_pci 0xf5213e8a rtsx_pci_dma_unmap_sg +EXPORT_SYMBOL_GPL drivers/misc/cardreader/rtsx_pci 0xf671fad8 rtsx_pci_card_exist +EXPORT_SYMBOL_GPL drivers/misc/cardreader/rtsx_pci 0xf907bec3 rtsx_pci_write_phy_register +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 0x01900b79 enclosure_register +EXPORT_SYMBOL_GPL drivers/misc/enclosure 0x6e84a19e enclosure_add_device +EXPORT_SYMBOL_GPL drivers/misc/enclosure 0x8e1cdb22 enclosure_unregister +EXPORT_SYMBOL_GPL drivers/misc/enclosure 0x992625d0 enclosure_remove_device +EXPORT_SYMBOL_GPL drivers/misc/enclosure 0xa3ed6a5f enclosure_component_alloc +EXPORT_SYMBOL_GPL drivers/misc/enclosure 0xbd11a116 enclosure_find +EXPORT_SYMBOL_GPL drivers/misc/enclosure 0xcae9be62 enclosure_component_register +EXPORT_SYMBOL_GPL drivers/misc/enclosure 0xdbf186d2 enclosure_for_each_device +EXPORT_SYMBOL_GPL drivers/misc/mei/mei 0x0277eb55 mei_cldev_ver +EXPORT_SYMBOL_GPL drivers/misc/mei/mei 0x0da95cc0 mei_reset +EXPORT_SYMBOL_GPL drivers/misc/mei/mei 0x1381bc53 mei_hbm_pg +EXPORT_SYMBOL_GPL drivers/misc/mei/mei 0x21f5ad33 mei_start +EXPORT_SYMBOL_GPL drivers/misc/mei/mei 0x319aaaad mei_cancel_work +EXPORT_SYMBOL_GPL drivers/misc/mei/mei 0x341c468e mei_irq_read_handler +EXPORT_SYMBOL_GPL drivers/misc/mei/mei 0x3e081664 mei_restart +EXPORT_SYMBOL_GPL drivers/misc/mei/mei 0x60e1fb4b mei_cldev_register_rx_cb +EXPORT_SYMBOL_GPL drivers/misc/mei/mei 0x665db788 mei_cldev_send +EXPORT_SYMBOL_GPL drivers/misc/mei/mei 0x6ac8e930 mei_irq_compl_handler +EXPORT_SYMBOL_GPL drivers/misc/mei/mei 0x77dbc432 mei_cldev_get_drvdata +EXPORT_SYMBOL_GPL drivers/misc/mei/mei 0x7ecdaf11 mei_cldev_disable +EXPORT_SYMBOL_GPL drivers/misc/mei/mei 0x8032a8f2 mei_hbm_pg_resume +EXPORT_SYMBOL_GPL drivers/misc/mei/mei 0x85530e46 mei_cldev_recv_nonblock +EXPORT_SYMBOL_GPL drivers/misc/mei/mei 0x8f7d5bdd mei_register +EXPORT_SYMBOL_GPL drivers/misc/mei/mei 0x90a24af4 mei_fw_status2str +EXPORT_SYMBOL_GPL drivers/misc/mei/mei 0x928ceee1 mei_cldev_recv +EXPORT_SYMBOL_GPL drivers/misc/mei/mei 0x9756a745 mei_cldev_register_notif_cb +EXPORT_SYMBOL_GPL drivers/misc/mei/mei 0x9a78ab96 mei_irq_write_handler +EXPORT_SYMBOL_GPL drivers/misc/mei/mei 0xb60d5ce5 mei_deregister +EXPORT_SYMBOL_GPL drivers/misc/mei/mei 0xbba90878 mei_write_is_idle +EXPORT_SYMBOL_GPL drivers/misc/mei/mei 0xc48b05de mei_cldev_set_drvdata +EXPORT_SYMBOL_GPL drivers/misc/mei/mei 0xcdec8c17 mei_cldev_uuid +EXPORT_SYMBOL_GPL drivers/misc/mei/mei 0xd1fff5da mei_cldev_enabled +EXPORT_SYMBOL_GPL drivers/misc/mei/mei 0xe073d9e5 mei_stop +EXPORT_SYMBOL_GPL drivers/misc/mei/mei 0xee204a84 mei_device_init +EXPORT_SYMBOL_GPL drivers/misc/mei/mei 0xf246c5df mei_cldev_driver_unregister +EXPORT_SYMBOL_GPL drivers/misc/mei/mei 0xf6026c44 __mei_cldev_driver_register +EXPORT_SYMBOL_GPL drivers/misc/mei/mei 0xfbbee8b6 mei_cldev_enable +EXPORT_SYMBOL_GPL drivers/misc/uacce/uacce 0x635841d2 uacce_alloc +EXPORT_SYMBOL_GPL drivers/misc/uacce/uacce 0x7fac859d uacce_register +EXPORT_SYMBOL_GPL drivers/misc/uacce/uacce 0xeaf59f6a uacce_remove +EXPORT_SYMBOL_GPL drivers/most/most_core 0x10cc4719 most_deregister_interface +EXPORT_SYMBOL_GPL drivers/most/most_core 0x23a219be channel_has_mbo +EXPORT_SYMBOL_GPL drivers/most/most_core 0x47d76f47 most_get_mbo +EXPORT_SYMBOL_GPL drivers/most/most_core 0x56ef389c most_deregister_configfs_subsys +EXPORT_SYMBOL_GPL drivers/most/most_core 0x5e5f437f most_register_interface +EXPORT_SYMBOL_GPL drivers/most/most_core 0x70680dfb most_resume_enqueue +EXPORT_SYMBOL_GPL drivers/most/most_core 0x73a8260e most_register_component +EXPORT_SYMBOL_GPL drivers/most/most_core 0xa8c0e24b most_stop_enqueue +EXPORT_SYMBOL_GPL drivers/most/most_core 0xc33c6716 most_deregister_component +EXPORT_SYMBOL_GPL drivers/most/most_core 0xce91c748 most_put_mbo +EXPORT_SYMBOL_GPL drivers/most/most_core 0xd0ef67fc most_register_configfs_subsys +EXPORT_SYMBOL_GPL drivers/most/most_core 0xd1a1ab7e most_start_channel +EXPORT_SYMBOL_GPL drivers/most/most_core 0xd721eae7 most_submit_mbo +EXPORT_SYMBOL_GPL drivers/most/most_core 0xe65decf4 most_stop_channel +EXPORT_SYMBOL_GPL drivers/mux/mux-core 0x0999d51f mux_control_get +EXPORT_SYMBOL_GPL drivers/mux/mux-core 0x2779f25e mux_chip_alloc +EXPORT_SYMBOL_GPL drivers/mux/mux-core 0x2e0a72b0 mux_control_try_select +EXPORT_SYMBOL_GPL drivers/mux/mux-core 0x303ecee4 devm_mux_control_get +EXPORT_SYMBOL_GPL drivers/mux/mux-core 0x3800f794 mux_control_put +EXPORT_SYMBOL_GPL drivers/mux/mux-core 0x3f2a2ace mux_control_states +EXPORT_SYMBOL_GPL drivers/mux/mux-core 0x40908097 mux_chip_free +EXPORT_SYMBOL_GPL drivers/mux/mux-core 0x90d9b244 mux_control_select +EXPORT_SYMBOL_GPL drivers/mux/mux-core 0xa8560e11 mux_control_deselect +EXPORT_SYMBOL_GPL drivers/mux/mux-core 0xc8bf2895 devm_mux_chip_register +EXPORT_SYMBOL_GPL drivers/mux/mux-core 0xcb092cf0 mux_chip_unregister +EXPORT_SYMBOL_GPL drivers/mux/mux-core 0xe045d202 devm_mux_chip_alloc +EXPORT_SYMBOL_GPL drivers/mux/mux-core 0xfcf78a21 mux_chip_register +EXPORT_SYMBOL_GPL drivers/net/arcnet/arcnet 0x9b872f83 devm_arcnet_led_init +EXPORT_SYMBOL_GPL drivers/net/arcnet/arcnet 0xd6c8c79f arcnet_led_event +EXPORT_SYMBOL_GPL drivers/net/bareudp 0xd8987279 bareudp_dev_create +EXPORT_SYMBOL_GPL drivers/net/can/c_can/c_can 0x12078859 register_c_can_dev +EXPORT_SYMBOL_GPL drivers/net/can/c_can/c_can 0x122d862a unregister_c_can_dev +EXPORT_SYMBOL_GPL drivers/net/can/c_can/c_can 0x4219e070 c_can_power_up +EXPORT_SYMBOL_GPL drivers/net/can/c_can/c_can 0x60e5fb2a c_can_power_down +EXPORT_SYMBOL_GPL drivers/net/can/c_can/c_can 0xa65a837f alloc_c_can_dev +EXPORT_SYMBOL_GPL drivers/net/can/c_can/c_can 0xf0b264d5 free_c_can_dev +EXPORT_SYMBOL_GPL drivers/net/can/can-dev 0x09773cf5 register_candev +EXPORT_SYMBOL_GPL drivers/net/can/can-dev 0x131eee5c can_change_mtu +EXPORT_SYMBOL_GPL drivers/net/can/can-dev 0x15857750 can_rx_offload_add_timestamp +EXPORT_SYMBOL_GPL drivers/net/can/can-dev 0x16081ffb can_dlc2len +EXPORT_SYMBOL_GPL drivers/net/can/can-dev 0x1ea655bc alloc_can_skb +EXPORT_SYMBOL_GPL drivers/net/can/can-dev 0x30464dca can_rx_offload_del +EXPORT_SYMBOL_GPL drivers/net/can/can-dev 0x45c64caf free_candev +EXPORT_SYMBOL_GPL drivers/net/can/can-dev 0x5040614f can_rx_offload_get_echo_skb +EXPORT_SYMBOL_GPL drivers/net/can/can-dev 0x5d31822c can_rx_offload_irq_offload_fifo +EXPORT_SYMBOL_GPL drivers/net/can/can-dev 0x60cec10d alloc_candev_mqs +EXPORT_SYMBOL_GPL drivers/net/can/can-dev 0x6135e8e8 can_get_echo_skb +EXPORT_SYMBOL_GPL drivers/net/can/can-dev 0x69b2c9a4 can_rx_offload_queue_tail +EXPORT_SYMBOL_GPL drivers/net/can/can-dev 0x6b7cc4cb alloc_can_err_skb +EXPORT_SYMBOL_GPL drivers/net/can/can-dev 0x6ce6ac8c close_candev +EXPORT_SYMBOL_GPL drivers/net/can/can-dev 0x83ba0ac9 open_candev +EXPORT_SYMBOL_GPL drivers/net/can/can-dev 0x8762619a can_len2dlc +EXPORT_SYMBOL_GPL drivers/net/can/can-dev 0x88a4a007 can_rx_offload_queue_sorted +EXPORT_SYMBOL_GPL drivers/net/can/can-dev 0x8c365e6c can_rx_offload_add_fifo +EXPORT_SYMBOL_GPL drivers/net/can/can-dev 0x932e211c can_change_state +EXPORT_SYMBOL_GPL drivers/net/can/can-dev 0x941a7b59 can_put_echo_skb +EXPORT_SYMBOL_GPL drivers/net/can/can-dev 0xc2bf8879 safe_candev_priv +EXPORT_SYMBOL_GPL drivers/net/can/can-dev 0xc908d3bd can_rx_offload_irq_offload_timestamp +EXPORT_SYMBOL_GPL drivers/net/can/can-dev 0xcf7ae50a can_free_echo_skb +EXPORT_SYMBOL_GPL drivers/net/can/can-dev 0xd0ccb5fd alloc_canfd_skb +EXPORT_SYMBOL_GPL drivers/net/can/can-dev 0xdcabb774 can_bus_off +EXPORT_SYMBOL_GPL drivers/net/can/can-dev 0xe3644976 unregister_candev +EXPORT_SYMBOL_GPL drivers/net/can/can-dev 0xfb0446d4 can_rx_offload_enable +EXPORT_SYMBOL_GPL drivers/net/can/sja1000/sja1000 0x49ebd0d2 sja1000_interrupt +EXPORT_SYMBOL_GPL drivers/net/can/sja1000/sja1000 0x52816331 unregister_sja1000dev +EXPORT_SYMBOL_GPL drivers/net/can/sja1000/sja1000 0xb37c8db2 free_sja1000dev +EXPORT_SYMBOL_GPL drivers/net/can/sja1000/sja1000 0xd5c10a71 alloc_sja1000dev +EXPORT_SYMBOL_GPL drivers/net/can/sja1000/sja1000 0xd9d94d57 register_sja1000dev +EXPORT_SYMBOL_GPL drivers/net/dsa/lan9303-core 0xfcdc8296 lan9303_indirect_phy_ops +EXPORT_SYMBOL_GPL drivers/net/dsa/microchip/ksz_common 0x1001f9bb ksz_disable_port +EXPORT_SYMBOL_GPL drivers/net/dsa/microchip/ksz_common 0x277fe667 ksz_port_fast_age +EXPORT_SYMBOL_GPL drivers/net/dsa/microchip/ksz_common 0x2a6e9b48 ksz_port_vlan_prepare +EXPORT_SYMBOL_GPL drivers/net/dsa/microchip/ksz_common 0x5287a9c8 ksz_phy_read16 +EXPORT_SYMBOL_GPL drivers/net/dsa/microchip/ksz_common 0x52ca6b2c ksz_get_ethtool_stats +EXPORT_SYMBOL_GPL drivers/net/dsa/microchip/ksz_common 0x5bf5cc3e ksz_phy_write16 +EXPORT_SYMBOL_GPL drivers/net/dsa/microchip/ksz_common 0x6d7ffaae ksz_port_mdb_del +EXPORT_SYMBOL_GPL drivers/net/dsa/microchip/ksz_common 0x715d48cf ksz_port_bridge_join +EXPORT_SYMBOL_GPL drivers/net/dsa/microchip/ksz_common 0x87ec224f ksz_init_mib_timer +EXPORT_SYMBOL_GPL drivers/net/dsa/microchip/ksz_common 0x9619b3f6 ksz_port_fdb_dump +EXPORT_SYMBOL_GPL drivers/net/dsa/microchip/ksz_common 0xa8ed08b0 ksz_enable_port +EXPORT_SYMBOL_GPL drivers/net/dsa/microchip/ksz_common 0xaae550da ksz_sset_count +EXPORT_SYMBOL_GPL drivers/net/dsa/microchip/ksz_common 0xc26d18a3 ksz_port_bridge_leave +EXPORT_SYMBOL_GPL drivers/net/dsa/microchip/ksz_common 0xce62371a ksz_port_mdb_add +EXPORT_SYMBOL_GPL drivers/net/dsa/microchip/ksz_common 0xd1fb603d ksz_adjust_link +EXPORT_SYMBOL_GPL drivers/net/dsa/microchip/ksz_common 0xe7d356d7 ksz_port_mdb_prepare +EXPORT_SYMBOL_GPL drivers/net/dsa/microchip/ksz_common 0xf7debf38 ksz_update_port_member +EXPORT_SYMBOL_GPL drivers/net/dsa/realtek-smi 0x01883cfb rtl8366_enable_vlan4k +EXPORT_SYMBOL_GPL drivers/net/dsa/realtek-smi 0x15f65527 rtl8366_reset_vlan +EXPORT_SYMBOL_GPL drivers/net/dsa/realtek-smi 0x2059f1a0 rtl8366_set_pvid +EXPORT_SYMBOL_GPL drivers/net/dsa/realtek-smi 0x2bbf100f rtl8366rb_variant +EXPORT_SYMBOL_GPL drivers/net/dsa/realtek-smi 0x5518a964 rtl8366_mc_is_used +EXPORT_SYMBOL_GPL drivers/net/dsa/realtek-smi 0x62ac0523 rtl8366_set_vlan +EXPORT_SYMBOL_GPL drivers/net/dsa/realtek-smi 0x64bcd7ff rtl8366_vlan_del +EXPORT_SYMBOL_GPL drivers/net/dsa/realtek-smi 0x8c185e2c realtek_smi_write_reg_noack +EXPORT_SYMBOL_GPL drivers/net/dsa/realtek-smi 0xa813bda7 rtl8366_vlan_add +EXPORT_SYMBOL_GPL drivers/net/dsa/realtek-smi 0xafbc192c rtl8366_get_ethtool_stats +EXPORT_SYMBOL_GPL drivers/net/dsa/realtek-smi 0xba77be89 rtl8366_enable_vlan +EXPORT_SYMBOL_GPL drivers/net/dsa/realtek-smi 0xc3b51f0b rtl8366_vlan_filtering +EXPORT_SYMBOL_GPL drivers/net/dsa/realtek-smi 0xd23ba220 rtl8366_vlan_prepare +EXPORT_SYMBOL_GPL drivers/net/dsa/realtek-smi 0xd39c9b0e rtl8366_get_strings +EXPORT_SYMBOL_GPL drivers/net/dsa/realtek-smi 0xd7010c1f rtl8366_get_sset_count +EXPORT_SYMBOL_GPL drivers/net/dsa/realtek-smi 0xf37121c9 rtl8366_init_vlan +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x0086ba67 mlx4_config_roce_v2_port +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x03894189 mlx4_phys_to_slaves_pport_actv +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x0443fd25 mlx4_uar_free +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x0653c048 mlx4_multicast_promisc_add +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x080a07ab mlx4_xrcd_alloc +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x08c1b5d9 mlx4_mtt_cleanup +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x0b278683 mlx4_mr_hw_put_mpt +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x0ef844ba mlx4_srq_query +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x0f76a68a mlx4_qp_query +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x15599975 mlx4_buf_alloc +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x15b974c5 mlx4_mr_rereg_mem_cleanup +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x1de1a213 mlx4_get_default_counter_index +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x1f1fdc9a mlx4_counter_free +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x1f4b4a2f mlx4_find_cached_mac +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x21610014 mlx4_flow_steer_promisc_remove +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x27255bbb mlx4_unbond +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x2b7976da mlx4_srq_arm +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x2e9948f8 mlx4_mw_alloc +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x319f9f1b mlx4_SYNC_TPT +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x322e878b mlx4_qp_release_range +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x35300a8d __mlx4_replace_mac +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x36396fa8 mlx4_mr_hw_change_access +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x3677cf45 mlx4_buf_free +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x3fc09f9e mlx4_phys_to_slaves_pport +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x430751c6 mlx4_unicast_detach +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x477dc6f0 mlx4_get_internal_clock_params +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x486fd6cc mlx4_find_cached_vlan +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x48b05336 mlx4_config_dev_retrieval +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x4bacb5fd mlx4_pd_alloc +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x4bb49303 mlx4_mr_alloc +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x4ce8b803 mlx4_unregister_interface +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x524514f4 __mlx4_unregister_mac +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x5514bef7 mlx4_map_sw_to_hw_steering_mode +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x58af96a5 mlx4_set_vf_mac +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x5948ea4d mlx4_bond +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x5b2f0e18 mlx4_update_qp +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x6096f508 mlx4_get_counter_stats +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x63c0c4f9 mlx4_unregister_vlan +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x68f9a5a8 mlx4_register_mac +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x69f8ee2f mlx4_db_alloc +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x6bce27eb mlx4_set_vf_vlan +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x6fc6bfc7 mlx4_flow_detach +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x71826a59 mlx4_flow_steer_promisc_add +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x725ef174 mlx4_set_vf_link_state +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x72ac85f6 mlx4_set_vf_spoofchk +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x740c0965 mlx4_phys_to_slave_port +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x790bd68d mlx4_unicast_promisc_remove +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x79280e08 mlx4_get_base_qpn +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x7d0b8bab mlx4_mw_enable +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x81af43b6 mlx4_vf_get_enable_smi_admin +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x81af9714 mlx4_flow_attach +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x86ce58de mlx4_free_cmd_mailbox +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x8837727b mlx4_multicast_detach +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x88acb33e mlx4_mw_free +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x8aa6f771 mlx4_srq_alloc +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x8b0f755e mlx4_mr_hw_get_mpt +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x8dbd2411 mlx4_get_base_gid_ix +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x8eb28daf mlx4_srq_lookup +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x8ec6a237 mlx4_write_mtt +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x92fe418d mlx4_qp_remove +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x9367028d mlx4_get_devlink_port +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x97225374 mlx4_vf_smi_enabled +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x98d00804 mlx4_get_vf_stats +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x9d524fcc mlx4_qp_reserve_range +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xa0fae51c mlx4_cq_alloc +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xa1e6a91b __mlx4_cmd +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xa28b5d0c mlx4_set_admin_guid +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xa419dc8f mlx4_mr_free +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xa6108d4f mlx4_counter_alloc +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xa6591bad mlx4_FLOW_STEERING_IB_UC_QP_RANGE +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xa77df24f mlx4_mtt_addr +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xa9ee6932 mlx4_vf_set_enable_smi_admin +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xaab61b90 mlx4_INIT_PORT +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xac0155b4 mlx4_multicast_promisc_remove +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xad1c79b1 mlx4_register_vlan +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xad54ab30 mlx4_wol_write +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xaf68df08 mlx4_set_vf_rate +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xafb5277a __mlx4_register_mac +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xb3789e41 mlx4_CLOSE_PORT +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xb48b3555 mlx4_mtt_init +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xb7265cfe mlx4_xrcd_free +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xb83a740c mlx4_mr_rereg_mem_write +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xb938ee5b mlx4_qp_free +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xbd963312 mlx4_wol_read +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xbfdd8274 mlx4_free_hwq_res +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xbfe79b77 mlx4_get_slave_default_vlan +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xc1ce5c3b mlx4_bf_alloc +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xc6711ca5 mlx4_get_admin_guid +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xc699c834 mlx4_qp_alloc +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xc71249ea mlx4_mr_hw_write_mpt +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xc91ff730 mlx4_get_vf_config +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xca46a945 mlx4_replace_zero_macs +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xca4cc364 mlx4_alloc_cmd_mailbox +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xcbee1780 mlx4_unicast_attach +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xcf4e40da mlx4_unregister_mac +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xd161fe8d mlx4_map_sw_to_hw_steering_id +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xd20ab6de mlx4_mr_enable +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xd29dfe6a mlx4_bf_free +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xd31db693 mlx4_srq_free +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xd377bfe2 mlx4_read_clock +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xd9228433 mlx4_db_free +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xd9dfd7f8 mlx4_hw_rule_sz +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xdc4c22d2 mlx4_config_vxlan_port +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xdd0737c0 mlx4_get_active_ports +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xdeff2d0b mlx4_qp_to_ready +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xe12b627a mlx4_cq_free +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xe2b9f687 mlx4_ACCESS_PTYS_REG +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xe3117406 mlx4_buf_write_mtt +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xe37f5581 mlx4_register_interface +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xe3c3d284 mlx4_pd_free +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xe692361e mlx4_slave_convert_port +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xf1d312c6 mlx4_uar_alloc +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xf2d3035f mlx4_port_map_set +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xf44d53ad mlx4_get_protocol_dev +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xf85b5c41 mlx4_qp_modify +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xf86a7ae6 mlx4_cq_resize +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xfa7d425d mlx4_cq_modify +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xfb421723 mlx4_multicast_attach +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xfce4548e mlx4_unicast_promisc_add +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xfdf93da3 mlx4_mr_hw_change_pd +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xffc21981 mlx4_alloc_hwq_res +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x0427f6f7 mlx5_nic_vport_enable_roce +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 0x072e0b2f mlx5_query_nic_vport_mac_address +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x09981c76 mlx5_nic_vport_unaffiliate_multiport +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x0c71d01f mlx5_modify_nic_vport_mtu +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x0d3929d7 mlx5_set_port_prio_tc +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x116649ed mlx5_query_mac_address +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x1417dfdb mlx5_query_port_oper_mtu +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x149b9cd8 mlx5_eswitch_mode +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x1eebfdb5 mlx5_set_port_caps +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x2ad4d71a mlx5_core_query_vport_counter +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x2bf3df02 mlx5_query_nic_vport_promisc +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x3334129a mlx5_query_hca_vport_context +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x346beec4 mlx5_query_port_pfc +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x36a6be29 mlx5_set_port_pfc +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x386eb152 mlx5_buf_free +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x39d69c70 mlx5_modify_nic_vport_vlans +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x453a0248 mlx5_modify_port_ets_rate_limit +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x4d0b6ab4 mlx5_set_port_tc_bw_alloc +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x4ec97313 mlx5_core_access_reg +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x568fa305 mlx5_accel_esp_create_xfrm +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x56ad973b mlx5_core_query_ib_ppcnt +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x5b43273e mlx5_query_nic_vport_node_guid +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x6174fd71 mlx5_query_port_tc_bw_alloc +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x61b15b25 mlx5_set_port_admin_status +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x62d7ac43 mlx5_nic_vport_affiliate_multiport +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x6a26901f mlx5_eswitch_get_total_vports +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x6c7e6525 mlx5_frag_buf_alloc_node +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x72428ae9 mlx5_modify_nic_vport_mac_address +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x7294aa6f mlx5_query_hca_vport_pkey +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x741be680 mlx5_query_port_ets_rate_limit +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x7ee0af28 mlx5_accel_esp_modify_xfrm +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x8165666d mlx5_query_hca_vport_gid +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x828a249b mlx5_query_port_wol +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x89f6f1f3 mlx5_accel_esp_destroy_xfrm +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x8af1407d mlx5_query_port_tc_group +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x8dd89287 mlx5_query_nic_vport_mtu +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x901f7b9f mlx5_accel_ipsec_device_caps +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x92deb134 mlx5_query_port_ptys +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x930f07bc mlx5_query_module_eeprom +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x93cf6b09 mlx5_core_modify_hca_vport_context +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x93f4d52c mlx5_db_alloc +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x9a982b6e mlx5_core_query_sq_state +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x9c74f66e mlx5_query_hca_vport_system_image_guid +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x9e4b3f28 mlx5_dm_sw_icm_dealloc +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x9ee1c996 mlx5_core_reserved_gids_count +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xa0f7dc09 mlx5_frag_buf_free +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xa2ff1c21 mlx5_db_alloc_node +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xa35d7815 mlx5_query_min_inline +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xa75f49d6 mlx5_fill_page_array +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xafc412de mlx5_query_port_max_mtu +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xb06bf2f8 mlx5_query_port_admin_status +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xb8b73d66 mlx5_modify_nic_vport_mac_list +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xc1a455c9 mlx5_set_port_wol +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xc9140c34 mlx5_query_port_link_width_oper +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xcb0303da mlx5_db_free +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xcbeda93d mlx5_query_nic_vport_mac_list +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xcd7efebc mlx5_query_nic_system_image_guid +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xcdaff70e mlx5_query_port_prio_tc +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xd02dc8cb mlx5_dm_sw_icm_alloc +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xd4a91f14 mlx5_modify_nic_vport_promisc +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xd88371a5 mlx5_nic_vport_update_local_lb +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xe18e9e9a mlx5_set_port_tc_group +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xe23aedcd mlx5_query_port_vl_hw_cap +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xe3f34cfa mlx5_toggle_port_link +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xe538c529 mlx5_set_port_pause +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xe6ae6aaa mlx5_query_nic_vport_system_image_guid +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xe8c35b9c mlx5_query_port_pause +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xeafa79e7 mlx5_query_hca_vport_node_guid +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xf0d2fbea mlx5_query_nic_vport_qkey_viol_cntr +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xf19a3998 mlx5_set_port_mtu +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xf2ec41ee mlx5_nic_vport_query_local_lb +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xfb4ad87b mlx5_query_nic_vport_min_inline +EXPORT_SYMBOL_GPL drivers/net/ethernet/mscc/mscc_ocelot_common 0x4139395f ocelot_cls_flower_stats +EXPORT_SYMBOL_GPL drivers/net/ethernet/mscc/mscc_ocelot_common 0xb4ad5633 ocelot_cls_flower_replace +EXPORT_SYMBOL_GPL drivers/net/ethernet/mscc/mscc_ocelot_common 0xea45a111 ocelot_cls_flower_destroy +EXPORT_SYMBOL_GPL drivers/net/geneve 0xa6178d9d geneve_dev_create_fb +EXPORT_SYMBOL_GPL drivers/net/ipvlan/ipvlan 0x08a707e9 ipvlan_link_register +EXPORT_SYMBOL_GPL drivers/net/ipvlan/ipvlan 0x17bf0ee6 ipvlan_link_new +EXPORT_SYMBOL_GPL drivers/net/ipvlan/ipvlan 0x9385e666 ipvlan_link_setup +EXPORT_SYMBOL_GPL drivers/net/ipvlan/ipvlan 0x969d22f7 ipvlan_count_rx +EXPORT_SYMBOL_GPL drivers/net/ipvlan/ipvlan 0xcd136147 ipvlan_link_delete +EXPORT_SYMBOL_GPL drivers/net/macsec 0x51118812 macsec_pn_wrapped +EXPORT_SYMBOL_GPL drivers/net/macvlan 0x08b9760a macvlan_dellink +EXPORT_SYMBOL_GPL drivers/net/macvlan 0x49253a43 macvlan_link_register +EXPORT_SYMBOL_GPL drivers/net/macvlan 0x4d39f55b macvlan_common_setup +EXPORT_SYMBOL_GPL drivers/net/macvlan 0x8ca75c91 macvlan_common_newlink +EXPORT_SYMBOL_GPL drivers/net/net_failover 0x1b3f3651 net_failover_destroy +EXPORT_SYMBOL_GPL drivers/net/net_failover 0x9d56b3dc net_failover_create +EXPORT_SYMBOL_GPL drivers/net/phy/bcm-phy-lib 0x0a17ca0b __bcm_phy_read_exp +EXPORT_SYMBOL_GPL drivers/net/phy/bcm-phy-lib 0x0ff61954 __bcm_phy_write_exp +EXPORT_SYMBOL_GPL drivers/net/phy/bcm-phy-lib 0x123c1456 bcm_phy_cable_test_start_rdb +EXPORT_SYMBOL_GPL drivers/net/phy/bcm-phy-lib 0x12ae1ff4 __bcm_phy_modify_rdb +EXPORT_SYMBOL_GPL drivers/net/phy/bcm-phy-lib 0x1640cf99 bcm_phy_read_misc +EXPORT_SYMBOL_GPL drivers/net/phy/bcm-phy-lib 0x1aba8075 bcm_phy_downshift_get +EXPORT_SYMBOL_GPL drivers/net/phy/bcm-phy-lib 0x228656f4 __bcm_phy_write_rdb +EXPORT_SYMBOL_GPL drivers/net/phy/bcm-phy-lib 0x2925d856 bcm_phy_enable_jumbo +EXPORT_SYMBOL_GPL drivers/net/phy/bcm-phy-lib 0x3208e2b5 bcm_phy_set_eee +EXPORT_SYMBOL_GPL drivers/net/phy/bcm-phy-lib 0x3d237d4b bcm_phy_modify_exp +EXPORT_SYMBOL_GPL drivers/net/phy/bcm-phy-lib 0x3d4282bd bcm_phy_28nm_a0b0_afe_config_init +EXPORT_SYMBOL_GPL drivers/net/phy/bcm-phy-lib 0x520fb290 bcm_phy_write_shadow +EXPORT_SYMBOL_GPL drivers/net/phy/bcm-phy-lib 0x59ab8a65 bcm_phy_read_shadow +EXPORT_SYMBOL_GPL drivers/net/phy/bcm-phy-lib 0x5cf9ba59 bcm_phy_write_rdb +EXPORT_SYMBOL_GPL drivers/net/phy/bcm-phy-lib 0x5e71281c bcm_phy_cable_test_start +EXPORT_SYMBOL_GPL drivers/net/phy/bcm-phy-lib 0x5f993a0d bcm_phy_get_stats +EXPORT_SYMBOL_GPL drivers/net/phy/bcm-phy-lib 0x6b70f70b bcm_phy_enable_apd +EXPORT_SYMBOL_GPL drivers/net/phy/bcm-phy-lib 0x7189f5f9 bcm_phy_write_exp +EXPORT_SYMBOL_GPL drivers/net/phy/bcm-phy-lib 0x766f1770 bcm_phy_read_rdb +EXPORT_SYMBOL_GPL drivers/net/phy/bcm-phy-lib 0x7bb2700a bcm_phy_r_rc_cal_reset +EXPORT_SYMBOL_GPL drivers/net/phy/bcm-phy-lib 0x7eb6f062 bcm_phy_get_strings +EXPORT_SYMBOL_GPL drivers/net/phy/bcm-phy-lib 0x83115996 bcm_phy_cable_test_get_status +EXPORT_SYMBOL_GPL drivers/net/phy/bcm-phy-lib 0x89d5dc42 bcm_phy_config_intr +EXPORT_SYMBOL_GPL drivers/net/phy/bcm-phy-lib 0x8abbb4ad __bcm_phy_modify_exp +EXPORT_SYMBOL_GPL drivers/net/phy/bcm-phy-lib 0x934e3c41 __bcm_phy_read_rdb +EXPORT_SYMBOL_GPL drivers/net/phy/bcm-phy-lib 0x9cb8f47e bcm_phy_write_misc +EXPORT_SYMBOL_GPL drivers/net/phy/bcm-phy-lib 0xa536d612 bcm_phy_modify_rdb +EXPORT_SYMBOL_GPL drivers/net/phy/bcm-phy-lib 0xaffe81d6 bcm_phy_get_sset_count +EXPORT_SYMBOL_GPL drivers/net/phy/bcm-phy-lib 0xb33c84a2 bcm_phy_ack_intr +EXPORT_SYMBOL_GPL drivers/net/phy/bcm-phy-lib 0xbdb651fe bcm_phy_downshift_set +EXPORT_SYMBOL_GPL drivers/net/phy/bcm-phy-lib 0xeee9f2f2 bcm_phy_cable_test_get_status_rdb +EXPORT_SYMBOL_GPL drivers/net/phy/bcm-phy-lib 0xef36e13a bcm_phy_read_exp +EXPORT_SYMBOL_GPL drivers/net/phy/bcm-phy-lib 0xf20515fe bcm54xx_auxctl_read +EXPORT_SYMBOL_GPL drivers/net/phy/mdio-i2c 0x5d20bca0 mdio_i2c_alloc +EXPORT_SYMBOL_GPL drivers/net/phy/mdio-xpcs 0xcd9a37ea mdio_xpcs_get_ops +EXPORT_SYMBOL_GPL drivers/net/phy/phylink 0x0805f2d9 phylink_add_pcs +EXPORT_SYMBOL_GPL drivers/net/phy/phylink 0x08213956 phylink_ethtool_get_wol +EXPORT_SYMBOL_GPL drivers/net/phy/phylink 0x0eb2f850 phylink_mii_c22_pcs_set_advertisement +EXPORT_SYMBOL_GPL drivers/net/phy/phylink 0x1162b00e phylink_ethtool_ksettings_get +EXPORT_SYMBOL_GPL drivers/net/phy/phylink 0x12135396 phylink_mac_change +EXPORT_SYMBOL_GPL drivers/net/phy/phylink 0x15c4e3e2 phylink_ethtool_set_pauseparam +EXPORT_SYMBOL_GPL drivers/net/phy/phylink 0x2c8e28ee phylink_ethtool_get_eee +EXPORT_SYMBOL_GPL drivers/net/phy/phylink 0x57727285 phylink_ethtool_set_eee +EXPORT_SYMBOL_GPL drivers/net/phy/phylink 0x5fb6b35f phylink_helper_basex_speed +EXPORT_SYMBOL_GPL drivers/net/phy/phylink 0x62104126 phylink_ethtool_set_wol +EXPORT_SYMBOL_GPL drivers/net/phy/phylink 0x64c69f8b phylink_mii_c45_pcs_get_state +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 0x86ff345f phylink_ethtool_ksettings_set +EXPORT_SYMBOL_GPL drivers/net/phy/phylink 0x8b86f203 phylink_create +EXPORT_SYMBOL_GPL drivers/net/phy/phylink 0x911fcd6c phylink_start +EXPORT_SYMBOL_GPL drivers/net/phy/phylink 0x974b2144 phylink_of_phy_connect +EXPORT_SYMBOL_GPL drivers/net/phy/phylink 0x983276da phylink_disconnect_phy +EXPORT_SYMBOL_GPL drivers/net/phy/phylink 0xc1d15a4c phylink_set_port_modes +EXPORT_SYMBOL_GPL drivers/net/phy/phylink 0xd458787d phylink_mii_c22_pcs_an_restart +EXPORT_SYMBOL_GPL drivers/net/phy/phylink 0xdcb0a2c0 phylink_stop +EXPORT_SYMBOL_GPL drivers/net/phy/phylink 0xde66f4a7 phylink_mii_ioctl +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 0xf544d97b phylink_connect_phy +EXPORT_SYMBOL_GPL drivers/net/phy/phylink 0xf8fe5642 phylink_ethtool_get_pauseparam +EXPORT_SYMBOL_GPL drivers/net/phy/phylink 0xfddd85db phylink_mii_c22_pcs_get_state +EXPORT_SYMBOL_GPL drivers/net/tap 0x1cb7e6de tap_destroy_cdev +EXPORT_SYMBOL_GPL drivers/net/tap 0x6660c646 tap_handle_frame +EXPORT_SYMBOL_GPL drivers/net/tap 0x905405cf tap_queue_resize +EXPORT_SYMBOL_GPL drivers/net/tap 0xd33541a6 tap_get_ptr_ring +EXPORT_SYMBOL_GPL drivers/net/tap 0xe2caa715 tap_del_queues +EXPORT_SYMBOL_GPL drivers/net/tap 0xe4d6b8ce tap_free_minor +EXPORT_SYMBOL_GPL drivers/net/tap 0xf0b8c661 tap_get_socket +EXPORT_SYMBOL_GPL drivers/net/tap 0xf0ee1436 tap_get_minor +EXPORT_SYMBOL_GPL drivers/net/tap 0xff49ce51 tap_create_cdev +EXPORT_SYMBOL_GPL drivers/nfc/mei_phy 0x3a9ac56b nfc_mei_phy_free +EXPORT_SYMBOL_GPL drivers/nfc/mei_phy 0xd81b317e mei_phy_ops +EXPORT_SYMBOL_GPL drivers/nfc/mei_phy 0xe1edbe20 nfc_mei_phy_alloc +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 0x4012bccb ntb_transport_register_client +EXPORT_SYMBOL_GPL drivers/ntb/ntb_transport 0x436098aa ntb_transport_link_down +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 0xc2957b1b ntb_transport_create_queue +EXPORT_SYMBOL_GPL drivers/ntb/ntb_transport 0xc37d9036 ntb_transport_rx_remove +EXPORT_SYMBOL_GPL drivers/ntb/ntb_transport 0xd40e7a02 ntb_transport_rx_enqueue +EXPORT_SYMBOL_GPL drivers/ntb/ntb_transport 0xf2b5a01a ntb_transport_unregister_client +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/nvdimm/nd_virtio 0x886ee932 async_pmem_flush +EXPORT_SYMBOL_GPL drivers/nvdimm/nd_virtio 0xd55046b2 virtio_pmem_host_ack +EXPORT_SYMBOL_GPL drivers/nvme/host/nvme-fabrics 0x1cea4077 nvmf_should_reconnect +EXPORT_SYMBOL_GPL drivers/nvme/host/nvme-fabrics 0x451289b5 nvmf_reg_write32 +EXPORT_SYMBOL_GPL drivers/nvme/host/nvme-fabrics 0x48de4d64 nvmf_unregister_transport +EXPORT_SYMBOL_GPL drivers/nvme/host/nvme-fabrics 0x4c09e7ed nvmf_connect_admin_queue +EXPORT_SYMBOL_GPL drivers/nvme/host/nvme-fabrics 0x53d93a1a nvmf_get_address +EXPORT_SYMBOL_GPL drivers/nvme/host/nvme-fabrics 0x5fc8cf15 nvmf_reg_read64 +EXPORT_SYMBOL_GPL drivers/nvme/host/nvme-fabrics 0x79df4564 nvmf_free_options +EXPORT_SYMBOL_GPL drivers/nvme/host/nvme-fabrics 0xa6b5bd4a __nvmf_check_ready +EXPORT_SYMBOL_GPL drivers/nvme/host/nvme-fabrics 0xba35b609 nvmf_ip_options_match +EXPORT_SYMBOL_GPL drivers/nvme/host/nvme-fabrics 0xbc4f32ba nvmf_connect_io_queue +EXPORT_SYMBOL_GPL drivers/nvme/host/nvme-fabrics 0xe3c3d126 nvmf_register_transport +EXPORT_SYMBOL_GPL drivers/nvme/host/nvme-fabrics 0xf3612cff nvmf_reg_read32 +EXPORT_SYMBOL_GPL drivers/nvme/host/nvme-fabrics 0xfbbd7cf3 nvmf_fail_nonready_command +EXPORT_SYMBOL_GPL drivers/nvme/host/nvme-fc 0x0d12e564 nvme_fc_register_remoteport +EXPORT_SYMBOL_GPL drivers/nvme/host/nvme-fc 0x28e0c749 nvme_fc_register_localport +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 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 0xfca9dc99 nvme_fc_unregister_remoteport +EXPORT_SYMBOL_GPL drivers/nvme/target/nvmet 0x1c3a7de6 nvmet_check_transfer_len +EXPORT_SYMBOL_GPL drivers/nvme/target/nvmet 0x32df6d77 nvmet_req_complete +EXPORT_SYMBOL_GPL drivers/nvme/target/nvmet 0x5ab8b041 nvmet_ctrl_fatal_error +EXPORT_SYMBOL_GPL drivers/nvme/target/nvmet 0x65e87ea6 nvmet_sq_init +EXPORT_SYMBOL_GPL drivers/nvme/target/nvmet 0x8fedb2da nvmet_req_free_sgls +EXPORT_SYMBOL_GPL drivers/nvme/target/nvmet 0x94cdb3c6 nvmet_register_transport +EXPORT_SYMBOL_GPL drivers/nvme/target/nvmet 0xa7534bad nvmet_unregister_transport +EXPORT_SYMBOL_GPL drivers/nvme/target/nvmet 0xbc214952 nvmet_req_alloc_sgls +EXPORT_SYMBOL_GPL drivers/nvme/target/nvmet 0xc3c34c8d nvmet_req_uninit +EXPORT_SYMBOL_GPL drivers/nvme/target/nvmet 0xc572aa2b nvmet_req_init +EXPORT_SYMBOL_GPL drivers/nvme/target/nvmet 0xf39309ba nvmet_sq_destroy +EXPORT_SYMBOL_GPL drivers/nvme/target/nvmet-fc 0x0b98123d nvmet_fc_rcv_ls_req +EXPORT_SYMBOL_GPL drivers/nvme/target/nvmet-fc 0x1048b92a nvmet_fc_rcv_fcp_req +EXPORT_SYMBOL_GPL drivers/nvme/target/nvmet-fc 0x21966f2a 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 0x7fa5302a nvmet_fc_rcv_fcp_abort +EXPORT_SYMBOL_GPL drivers/nvme/target/nvmet-fc 0x9ef76d99 nvmet_fc_unregister_targetport +EXPORT_SYMBOL_GPL drivers/pci/switch/switchtec 0x6812c87d switchtec_class +EXPORT_SYMBOL_GPL drivers/pinctrl/intel/pinctrl-intel 0x01d48842 intel_pinctrl_probe_by_uid +EXPORT_SYMBOL_GPL drivers/pinctrl/intel/pinctrl-intel 0x31871836 intel_pinctrl_suspend_noirq +EXPORT_SYMBOL_GPL drivers/pinctrl/intel/pinctrl-intel 0xcdc9da1e intel_pinctrl_resume_noirq +EXPORT_SYMBOL_GPL drivers/pinctrl/intel/pinctrl-intel 0xe0c09173 intel_pinctrl_probe_by_hid +EXPORT_SYMBOL_GPL drivers/pinctrl/pinctrl-mcp23s08 0xcef28755 mcp23x17_regmap +EXPORT_SYMBOL_GPL drivers/pinctrl/pinctrl-mcp23s08 0xd05b715a mcp23s08_probe_one +EXPORT_SYMBOL_GPL drivers/pinctrl/pinctrl-mcp23s08 0xfe8923ba mcp23x08_regmap +EXPORT_SYMBOL_GPL drivers/platform/x86/dell-smbios 0x1b0b3141 dell_laptop_register_notifier +EXPORT_SYMBOL_GPL drivers/platform/x86/dell-smbios 0x3d2bfb4e dell_smbios_call_filter +EXPORT_SYMBOL_GPL drivers/platform/x86/dell-smbios 0x45170471 dell_smbios_call +EXPORT_SYMBOL_GPL drivers/platform/x86/dell-smbios 0x7fd2ce06 dell_smbios_find_token +EXPORT_SYMBOL_GPL drivers/platform/x86/dell-smbios 0xab680a55 dell_smbios_unregister_device +EXPORT_SYMBOL_GPL drivers/platform/x86/dell-smbios 0xb9400dbf dell_laptop_call_notifier +EXPORT_SYMBOL_GPL drivers/platform/x86/dell-smbios 0xc2871e79 dell_smbios_error +EXPORT_SYMBOL_GPL drivers/platform/x86/dell-smbios 0xd6c6b12d dell_laptop_unregister_notifier +EXPORT_SYMBOL_GPL drivers/platform/x86/dell-smbios 0xe081f9f7 dell_smbios_register_device +EXPORT_SYMBOL_GPL drivers/platform/x86/dell-wmi-descriptor 0x8eef8246 dell_wmi_get_hotfix +EXPORT_SYMBOL_GPL drivers/platform/x86/dell-wmi-descriptor 0x9559234e dell_wmi_get_interface_version +EXPORT_SYMBOL_GPL drivers/platform/x86/dell-wmi-descriptor 0xa167d064 dell_wmi_get_size +EXPORT_SYMBOL_GPL drivers/platform/x86/dell-wmi-descriptor 0xa3dcfa65 dell_wmi_get_descriptor_valid +EXPORT_SYMBOL_GPL drivers/platform/x86/intel_ips 0x46809fa9 ips_link_to_i915_driver +EXPORT_SYMBOL_GPL drivers/platform/x86/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 0x4b0847a4 isst_if_cdev_register +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 0x84ee0f7c 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 0xe18f42a5 isst_if_cdev_unregister +EXPORT_SYMBOL_GPL drivers/platform/x86/intel_telemetry_core 0x112d0332 telemetry_get_pltdata +EXPORT_SYMBOL_GPL drivers/platform/x86/intel_telemetry_core 0x17d36efd telemetry_set_pltdata +EXPORT_SYMBOL_GPL drivers/platform/x86/intel_telemetry_core 0x1c7565c2 telemetry_read_events +EXPORT_SYMBOL_GPL drivers/platform/x86/intel_telemetry_core 0x35db93a6 telemetry_get_trace_verbosity +EXPORT_SYMBOL_GPL drivers/platform/x86/intel_telemetry_core 0x5847f501 telemetry_clear_pltdata +EXPORT_SYMBOL_GPL drivers/platform/x86/intel_telemetry_core 0x5bb8e91a telemetry_raw_read_eventlog +EXPORT_SYMBOL_GPL drivers/platform/x86/intel_telemetry_core 0x665cd407 telemetry_read_eventlog +EXPORT_SYMBOL_GPL drivers/platform/x86/intel_telemetry_core 0x6b892524 telemetry_set_sampling_period +EXPORT_SYMBOL_GPL drivers/platform/x86/intel_telemetry_core 0x82bb2dbe telemetry_get_evtname +EXPORT_SYMBOL_GPL drivers/platform/x86/intel_telemetry_core 0x90551504 telemetry_add_events +EXPORT_SYMBOL_GPL drivers/platform/x86/intel_telemetry_core 0xb75bd1e6 telemetry_raw_read_events +EXPORT_SYMBOL_GPL drivers/platform/x86/intel_telemetry_core 0xbb9a2726 telemetry_reset_events +EXPORT_SYMBOL_GPL drivers/platform/x86/intel_telemetry_core 0xd14ffffc telemetry_update_events +EXPORT_SYMBOL_GPL drivers/platform/x86/intel_telemetry_core 0xe1eb4be1 telemetry_set_trace_verbosity +EXPORT_SYMBOL_GPL drivers/platform/x86/intel_telemetry_core 0xe8847f53 telemetry_get_sampling_period +EXPORT_SYMBOL_GPL drivers/platform/x86/intel_telemetry_core 0xf00771b0 telemetry_get_eventconfig +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 0x57c35c6e 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 0x7b246ca4 wmidev_evaluate_method +EXPORT_SYMBOL_GPL drivers/platform/x86/wmi 0xaba842fe wmi_query_block +EXPORT_SYMBOL_GPL drivers/platform/x86/wmi 0xc9d4d6d1 wmi_has_guid +EXPORT_SYMBOL_GPL drivers/platform/x86/wmi 0xcab7824f set_required_buffer_size +EXPORT_SYMBOL_GPL drivers/platform/x86/wmi 0xd7752b86 wmi_set_block +EXPORT_SYMBOL_GPL drivers/platform/x86/wmi 0xf18bdd75 wmi_install_notify_handler +EXPORT_SYMBOL_GPL drivers/rpmsg/qcom_glink 0x149236da qcom_glink_native_remove +EXPORT_SYMBOL_GPL drivers/rpmsg/qcom_glink 0x514c9e82 qcom_glink_native_probe +EXPORT_SYMBOL_GPL drivers/rpmsg/qcom_glink 0xf14f5684 qcom_glink_ssr_notify +EXPORT_SYMBOL_GPL drivers/rpmsg/qcom_glink 0xfd2d5a1d qcom_glink_native_unregister +EXPORT_SYMBOL_GPL drivers/scsi/fdomain 0x2dc5b43d fdomain_destroy +EXPORT_SYMBOL_GPL drivers/scsi/fdomain 0xc86a62a3 fdomain_create +EXPORT_SYMBOL_GPL drivers/scsi/iscsi_boot_sysfs 0x2a4d271f iscsi_boot_create_acpitbl +EXPORT_SYMBOL_GPL drivers/scsi/iscsi_boot_sysfs 0x2e22d5c9 iscsi_boot_create_kset +EXPORT_SYMBOL_GPL drivers/scsi/iscsi_boot_sysfs 0x802e5a9f iscsi_boot_create_ethernet +EXPORT_SYMBOL_GPL drivers/scsi/iscsi_boot_sysfs 0x99855bfa iscsi_boot_destroy_kset +EXPORT_SYMBOL_GPL drivers/scsi/iscsi_boot_sysfs 0xb5e8e0b5 iscsi_boot_create_target +EXPORT_SYMBOL_GPL drivers/scsi/iscsi_boot_sysfs 0xd5cb4487 iscsi_boot_create_initiator +EXPORT_SYMBOL_GPL drivers/scsi/iscsi_boot_sysfs 0xf89a02bd iscsi_boot_create_host_kset +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x074d644f iscsi_eh_session_reset +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x0c1b0b1c iscsi_complete_scsi_task +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x0e5be548 iscsi_eh_device_reset +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x1018b9a3 iscsi_conn_stop +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x12b2ad06 iscsi_switch_str_param +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x144295f9 __iscsi_complete_pdu +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x1b788aef iscsi_complete_pdu +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x229920de __iscsi_put_task +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x22a69e2e iscsi_requeue_task +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x2d979a8e iscsi_queuecommand +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x35a3da7f iscsi_eh_cmd_timed_out +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x3bef2f73 iscsi_pool_init +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x40f464e0 iscsi_host_set_param +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x44e38d28 iscsi_conn_bind +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x4d50ca7b __iscsi_get_task +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x521a206b iscsi_session_setup +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x5befaaa6 iscsi_itt_to_ctask +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x62ee8d88 iscsi_eh_recover_target +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x661b10c5 iscsi_conn_teardown +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x6662325b iscsi_session_teardown +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x674657f1 iscsi_suspend_tx +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x6b2b1ed5 iscsi_host_get_param +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x78a5ee88 iscsi_eh_abort +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x7bb960d5 iscsi_target_alloc +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x84e775e9 iscsi_host_remove +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x884ebf60 iscsi_conn_get_param +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x8911d641 iscsi_session_get_param +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x8d303b1b iscsi_pool_free +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x961ff501 iscsi_itt_to_task +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x970c11c2 iscsi_conn_setup +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x973e62dc iscsi_update_cmdsn +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x976fe822 iscsi_conn_start +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x97c91d1d iscsi_prep_data_out_pdu +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0xa0089ba3 iscsi_suspend_queue +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0xacc5a6dd iscsi_verify_itt +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0xb51ded6c iscsi_put_task +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0xc2cc22c5 iscsi_host_alloc +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0xc9d0d6b5 iscsi_host_free +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0xdeb7bf34 iscsi_session_recovery_timedout +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0xdee1126c iscsi_set_param +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0xdf514ca1 iscsi_host_add +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0xe76de4d9 iscsi_conn_failure +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0xeab9cbd5 iscsi_conn_get_addr_param +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0xf4e54008 iscsi_session_failure +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0xf52c262d iscsi_conn_queue_work +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0xfe8f4159 iscsi_conn_send_pdu +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi_tcp 0x05eecce3 iscsi_tcp_cleanup_task +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi_tcp 0x126cce24 iscsi_tcp_segment_unmap +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi_tcp 0x1c39352e iscsi_tcp_recv_skb +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi_tcp 0x27640223 iscsi_tcp_hdr_recv_prep +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi_tcp 0x37eeb083 iscsi_tcp_dgst_header +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi_tcp 0x4ef8b198 iscsi_tcp_segment_done +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi_tcp 0x572f40ab iscsi_tcp_conn_get_stats +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi_tcp 0x5c5ae0ec iscsi_segment_init_linear +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi_tcp 0x757b9081 iscsi_segment_seek_sg +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi_tcp 0x8d9662ef iscsi_tcp_set_max_r2t +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi_tcp 0x9dd6ce3a iscsi_tcp_conn_setup +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi_tcp 0xb7392985 iscsi_tcp_conn_teardown +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi_tcp 0xd6a61926 iscsi_tcp_task_xmit +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi_tcp 0xda0cd1a8 iscsi_tcp_r2tpool_alloc +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi_tcp 0xda2f775f iscsi_tcp_r2tpool_free +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi_tcp 0xee874906 iscsi_tcp_task_init +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi_tcp 0xf278bb44 iscsi_tcp_recv_segment_is_hdr +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0x062f45f3 sas_ata_schedule_reset +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0x0b85789d sas_eh_abort_handler +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0x0d293229 sas_unregister_ha +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0x10523d7a sas_alloc_slow_task +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0x1f696bfb sas_ssp_task_response +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0x20163c58 dev_attr_phy_event_threshold +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0x338d4417 sas_alloc_task +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0x3f54c39d sas_bios_param +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0x42a12583 sas_change_queue_depth +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0x6eee235f sas_target_alloc +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0x7fe18dc4 sas_task_abort +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0x9ca87eac sas_drain_work +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0xb51b0594 sas_target_destroy +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0xc0fadb31 sas_register_ha +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0xc387cb21 sas_eh_target_reset_handler +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0xd360192b sas_queuecommand +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0xd72ecf73 sas_request_addr +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0xe2578efb sas_slave_configure +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0xe5f0b9b8 sas_ioctl +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0xe7372182 sas_domain_attach_transport +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0xe9aa09b4 sas_free_task +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0xfa05870b sas_get_local_phy +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0xfc9de5f3 sas_eh_device_reset_handler +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0xff534393 sas_phy_reset +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x08320a16 iscsi_register_transport +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x0bcdb347 iscsi_get_port_speed_name +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x12d65c20 iscsi_conn_login_event +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x15222be6 iscsi_remove_session +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x185fc6ad iscsi_host_for_each_session +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x28a1158e iscsi_recv_pdu +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x2a5deeea iscsi_flashnode_bus_match +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x3133dc5c __tracepoint_iscsi_dbg_session +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x38752bf3 iscsi_scan_finished +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x39fb9bb6 iscsi_destroy_all_flashnode +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x47867762 __tracepoint_iscsi_dbg_tcp +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x4eefdae2 iscsi_offload_mesg +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x4f3c91a3 iscsi_dbg_trace +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x59d19416 iscsi_is_session_dev +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x5d74bfe0 iscsi_session_event +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x5ea71415 iscsi_destroy_iface +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x655006df iscsi_create_flashnode_sess +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x699fe53e iscsi_get_discovery_parent_name +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x71acc949 iscsi_create_endpoint +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x7c9d17d5 iscsi_block_scsi_eh +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x84a005f1 iscsi_get_router_state_name +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x85b6bdb7 iscsi_ping_comp_event +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x895ed883 iscsi_destroy_flashnode_sess +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x900bb7bc iscsi_create_iface +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x97757d2e iscsi_create_flashnode_conn +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x9a722fa6 iscsi_add_session +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x9d66fdeb iscsi_block_session +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0xaa296f06 iscsi_unblock_session +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0xaac3519d __tracepoint_iscsi_dbg_conn +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0xab1081e5 iscsi_alloc_session +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0xabf4b84f iscsi_destroy_conn +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0xad707fcf iscsi_unregister_transport +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0xaea92c90 __tracepoint_iscsi_dbg_eh +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0xb4a42ec0 iscsi_get_port_state_name +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0xbc071179 iscsi_get_ipaddress_state_name +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0xcd868834 iscsi_find_flashnode_conn +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0xcf3f8c37 iscsi_destroy_endpoint +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0xd28bc887 iscsi_session_chkready +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0xd4697d5b __tracepoint_iscsi_dbg_sw_tcp +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0xd6bd3440 iscsi_create_session +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0xdf4fcbc8 iscsi_is_session_online +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0xe952c3e7 iscsi_post_host_event +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0xea789f4e iscsi_find_flashnode_sess +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0xef5f1095 iscsi_conn_error_event +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0xf1b43807 iscsi_lookup_endpoint +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0xfa0c2ec6 iscsi_create_conn +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0xfc851b65 iscsi_free_session +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_sas 0x6bf1ded6 sas_is_tlr_enabled +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_sas 0xb979f4e5 sas_tlr_supported +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_sas 0xc86e5db4 sas_disable_tlr +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_sas 0xeec7c7df sas_enable_tlr +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_spi 0x0ef06974 spi_populate_ppr_msg +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_spi 0x28146cdc spi_populate_tag_msg +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_spi 0xa0c71dac spi_populate_sync_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 0x1b78b53b srp_attach_transport +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_srp 0x3caad06d srp_remove_host +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_srp 0x528ad75b srp_rport_del +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_srp 0xd4f48d0a srp_stop_rport_timers +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_srp 0xe8683676 srp_rport_add +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_srp 0xff535f1a srp_release_transport +EXPORT_SYMBOL_GPL drivers/siox/siox-core 0x2a36b9ca siox_master_unregister +EXPORT_SYMBOL_GPL drivers/siox/siox-core 0x2f0e8f44 __siox_driver_register +EXPORT_SYMBOL_GPL drivers/siox/siox-core 0x54cd7b76 siox_master_alloc +EXPORT_SYMBOL_GPL drivers/siox/siox-core 0xd5bac9b8 siox_master_register +EXPORT_SYMBOL_GPL drivers/siox/siox-core 0xeec2ebdb siox_device_connected +EXPORT_SYMBOL_GPL drivers/siox/siox-core 0xfccceda3 siox_device_synced +EXPORT_SYMBOL_GPL drivers/slimbus/slimbus 0x0667fd47 slim_readb +EXPORT_SYMBOL_GPL drivers/slimbus/slimbus 0x07bd89b7 slim_driver_unregister +EXPORT_SYMBOL_GPL drivers/slimbus/slimbus 0x085c514b slim_stream_prepare +EXPORT_SYMBOL_GPL drivers/slimbus/slimbus 0x0e25a7f4 slim_get_logical_addr +EXPORT_SYMBOL_GPL drivers/slimbus/slimbus 0x150333bc slim_free_txn_tid +EXPORT_SYMBOL_GPL drivers/slimbus/slimbus 0x1bc10f61 slim_stream_free +EXPORT_SYMBOL_GPL drivers/slimbus/slimbus 0x29e1307c slim_get_device +EXPORT_SYMBOL_GPL drivers/slimbus/slimbus 0x3528ad46 slim_unregister_controller +EXPORT_SYMBOL_GPL drivers/slimbus/slimbus 0x4583275a slim_device_report_present +EXPORT_SYMBOL_GPL drivers/slimbus/slimbus 0x5c9475d4 slim_writeb +EXPORT_SYMBOL_GPL drivers/slimbus/slimbus 0x61b12678 slim_stream_disable +EXPORT_SYMBOL_GPL drivers/slimbus/slimbus 0x62329401 slim_do_transfer +EXPORT_SYMBOL_GPL drivers/slimbus/slimbus 0x822302ee slim_stream_unprepare +EXPORT_SYMBOL_GPL drivers/slimbus/slimbus 0x83f23d40 slim_stream_enable +EXPORT_SYMBOL_GPL drivers/slimbus/slimbus 0x92d50d09 slim_report_absent +EXPORT_SYMBOL_GPL drivers/slimbus/slimbus 0x94af9c2b slim_stream_allocate +EXPORT_SYMBOL_GPL drivers/slimbus/slimbus 0x9783bb9f slim_read +EXPORT_SYMBOL_GPL drivers/slimbus/slimbus 0x9d3a6630 slim_xfer_msg +EXPORT_SYMBOL_GPL drivers/slimbus/slimbus 0xa7e25aa1 __slim_driver_register +EXPORT_SYMBOL_GPL drivers/slimbus/slimbus 0xb14bd4b9 of_slim_get_device +EXPORT_SYMBOL_GPL drivers/slimbus/slimbus 0xc0199675 slim_msg_response +EXPORT_SYMBOL_GPL drivers/slimbus/slimbus 0xc43f4787 slim_ctrl_clk_pause +EXPORT_SYMBOL_GPL drivers/slimbus/slimbus 0xe9bd4b6f slim_register_controller +EXPORT_SYMBOL_GPL drivers/slimbus/slimbus 0xf5955470 slim_alloc_txn_tid +EXPORT_SYMBOL_GPL drivers/slimbus/slimbus 0xfa8a9670 slim_write +EXPORT_SYMBOL_GPL drivers/slimbus/slimbus 0xfbfdfb01 slimbus_bus +EXPORT_SYMBOL_GPL drivers/soundwire/soundwire-bus 0x5a537d04 __sdw_register_driver +EXPORT_SYMBOL_GPL drivers/soundwire/soundwire-bus 0x5c3613dd sdw_bus_type +EXPORT_SYMBOL_GPL drivers/soundwire/soundwire-bus 0x5c9af164 sdw_unregister_driver +EXPORT_SYMBOL_GPL drivers/spi/spi-bitbang 0x1c0d32a9 spi_bitbang_start +EXPORT_SYMBOL_GPL drivers/spi/spi-bitbang 0x2a612606 spi_bitbang_stop +EXPORT_SYMBOL_GPL drivers/spi/spi-bitbang 0x30535f7c spi_bitbang_cleanup +EXPORT_SYMBOL_GPL drivers/spi/spi-bitbang 0xbbfba28d spi_bitbang_setup_transfer +EXPORT_SYMBOL_GPL drivers/spi/spi-bitbang 0xbf416ce8 spi_bitbang_setup +EXPORT_SYMBOL_GPL drivers/spi/spi-bitbang 0xca52d043 spi_bitbang_init +EXPORT_SYMBOL_GPL drivers/spi/spi-dw 0x06c70b54 dw_spi_suspend_host +EXPORT_SYMBOL_GPL drivers/spi/spi-dw 0x0879d588 dw_spi_resume_host +EXPORT_SYMBOL_GPL drivers/spi/spi-dw 0x2044c76e dw_spi_update_cr0_v1_01a +EXPORT_SYMBOL_GPL drivers/spi/spi-dw 0x4f09369c dw_spi_remove_host +EXPORT_SYMBOL_GPL drivers/spi/spi-dw 0xb1b2f64e dw_spi_update_cr0 +EXPORT_SYMBOL_GPL drivers/spi/spi-dw 0xc2431ac3 dw_spi_dma_setup_generic +EXPORT_SYMBOL_GPL drivers/spi/spi-dw 0xc4a9fd2e dw_spi_dma_setup_mfld +EXPORT_SYMBOL_GPL drivers/spi/spi-dw 0xdd0dbe58 dw_spi_add_host +EXPORT_SYMBOL_GPL drivers/spi/spi-dw 0xf2f5e071 dw_spi_set_cs +EXPORT_SYMBOL_GPL drivers/spi/spi-loopback-test 0x43c85529 spi_test_run_tests +EXPORT_SYMBOL_GPL drivers/spi/spi-loopback-test 0xba1a192e spi_test_run_test +EXPORT_SYMBOL_GPL drivers/spi/spi-loopback-test 0xdb58510a spi_test_execute_msg +EXPORT_SYMBOL_GPL drivers/ssb/ssb 0xfa7efcef ssb_pmu_spuravoid_pllupdate +EXPORT_SYMBOL_GPL drivers/staging/fieldbus/fieldbus_dev 0x4105bddc fieldbus_dev_area_updated +EXPORT_SYMBOL_GPL drivers/staging/fieldbus/fieldbus_dev 0x45d462e0 fieldbus_dev_unregister +EXPORT_SYMBOL_GPL drivers/staging/fieldbus/fieldbus_dev 0xa1d39163 fieldbus_dev_register +EXPORT_SYMBOL_GPL drivers/staging/fieldbus/fieldbus_dev 0xf071cc29 fieldbus_dev_online_changed +EXPORT_SYMBOL_GPL drivers/staging/media/atomisp/i2c/atomisp-libmsrlisthelper 0x1a040d1c load_msr_list +EXPORT_SYMBOL_GPL drivers/staging/media/atomisp/i2c/atomisp-libmsrlisthelper 0x6a0fbeae release_msr_list +EXPORT_SYMBOL_GPL drivers/staging/media/atomisp/i2c/atomisp-libmsrlisthelper 0xd73b1749 apply_msr_data +EXPORT_SYMBOL_GPL drivers/staging/media/atomisp/pci/atomisp_gmin_platform 0x026ee02c atomisp_get_platform_data +EXPORT_SYMBOL_GPL drivers/staging/media/atomisp/pci/atomisp_gmin_platform 0x46c9c0e4 gmin_get_var_int +EXPORT_SYMBOL_GPL drivers/staging/media/atomisp/pci/atomisp_gmin_platform 0x525c46e8 atomisp_gmin_register_vcm_control +EXPORT_SYMBOL_GPL drivers/staging/media/atomisp/pci/atomisp_gmin_platform 0x5e2d8776 atomisp_gmin_remove_subdev +EXPORT_SYMBOL_GPL drivers/staging/media/atomisp/pci/atomisp_gmin_platform 0x7cf25455 camera_sensor_csi +EXPORT_SYMBOL_GPL drivers/staging/media/atomisp/pci/atomisp_gmin_platform 0x8f5f66c7 atomisp_register_i2c_module +EXPORT_SYMBOL_GPL drivers/staging/media/atomisp/pci/atomisp_gmin_platform 0xbae0e12f atomisp_get_default_camera_caps +EXPORT_SYMBOL_GPL drivers/staging/media/atomisp/pci/atomisp_gmin_platform 0xe13bb6d5 atomisp_gmin_find_subdev +EXPORT_SYMBOL_GPL drivers/staging/media/atomisp/pci/atomisp_gmin_platform 0xe1f91447 gmin_camera_platform_data +EXPORT_SYMBOL_GPL drivers/tee/tee 0x0665b201 tee_device_register +EXPORT_SYMBOL_GPL drivers/tee/tee 0x0790d31c tee_shm_register +EXPORT_SYMBOL_GPL drivers/tee/tee 0x142fc861 tee_client_invoke_func +EXPORT_SYMBOL_GPL drivers/tee/tee 0x1dcbaca3 tee_shm_pool_alloc +EXPORT_SYMBOL_GPL drivers/tee/tee 0x2c797808 tee_shm_free +EXPORT_SYMBOL_GPL drivers/tee/tee 0x3485d0fa tee_client_open_context +EXPORT_SYMBOL_GPL drivers/tee/tee 0x3b91431b tee_shm_va2pa +EXPORT_SYMBOL_GPL drivers/tee/tee 0x469152a1 tee_shm_alloc +EXPORT_SYMBOL_GPL drivers/tee/tee 0x46f044fb tee_shm_get_pa +EXPORT_SYMBOL_GPL drivers/tee/tee 0x5bfdb39e tee_device_unregister +EXPORT_SYMBOL_GPL drivers/tee/tee 0x6f1d5ed0 tee_shm_get_from_id +EXPORT_SYMBOL_GPL drivers/tee/tee 0x7a482948 tee_shm_pool_alloc_res_mem +EXPORT_SYMBOL_GPL drivers/tee/tee 0x7e40c968 tee_client_close_session +EXPORT_SYMBOL_GPL drivers/tee/tee 0x85fd9922 tee_session_calc_client_uuid +EXPORT_SYMBOL_GPL drivers/tee/tee 0x883d57c6 tee_shm_put +EXPORT_SYMBOL_GPL drivers/tee/tee 0x90c272c0 tee_device_alloc +EXPORT_SYMBOL_GPL drivers/tee/tee 0x94183663 tee_get_drvdata +EXPORT_SYMBOL_GPL drivers/tee/tee 0x988c53e9 tee_bus_type +EXPORT_SYMBOL_GPL drivers/tee/tee 0xaf56ceef tee_client_close_context +EXPORT_SYMBOL_GPL drivers/tee/tee 0xb7f71dc7 tee_client_open_session +EXPORT_SYMBOL_GPL drivers/tee/tee 0xb82e837d tee_shm_get_va +EXPORT_SYMBOL_GPL drivers/tee/tee 0xc18fbf46 tee_client_get_version +EXPORT_SYMBOL_GPL drivers/tee/tee 0xc9b5137d tee_shm_pa2va +EXPORT_SYMBOL_GPL drivers/tee/tee 0xe578b947 tee_shm_pool_mgr_alloc_res_mem +EXPORT_SYMBOL_GPL drivers/tee/tee 0xecefd0c0 tee_shm_pool_free +EXPORT_SYMBOL_GPL drivers/thermal/intel/intel_soc_dts_iosf 0x4b14cf52 intel_soc_dts_iosf_exit +EXPORT_SYMBOL_GPL drivers/thermal/intel/intel_soc_dts_iosf 0xbff44633 intel_soc_dts_iosf_add_read_only_critical_trip +EXPORT_SYMBOL_GPL drivers/thermal/intel/intel_soc_dts_iosf 0xe200467d intel_soc_dts_iosf_init +EXPORT_SYMBOL_GPL drivers/thermal/intel/intel_soc_dts_iosf 0xf0d09f1c intel_soc_dts_iosf_interrupt_handler +EXPORT_SYMBOL_GPL drivers/thunderbolt/thunderbolt 0x012da9c6 tb_service_type +EXPORT_SYMBOL_GPL drivers/thunderbolt/thunderbolt 0x018e06bc tb_ring_free +EXPORT_SYMBOL_GPL drivers/thunderbolt/thunderbolt 0x01d23ee1 tb_property_create_dir +EXPORT_SYMBOL_GPL drivers/thunderbolt/thunderbolt 0x1d88af0c tb_xdomain_request +EXPORT_SYMBOL_GPL drivers/thunderbolt/thunderbolt 0x297828a5 tb_unregister_service_driver +EXPORT_SYMBOL_GPL drivers/thunderbolt/thunderbolt 0x393b4f2f tb_property_free_dir +EXPORT_SYMBOL_GPL drivers/thunderbolt/thunderbolt 0x39d35f24 tb_xdomain_find_by_uuid +EXPORT_SYMBOL_GPL drivers/thunderbolt/thunderbolt 0x448532c2 tb_xdomain_enable_paths +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 0x603249ed tb_unregister_property_dir +EXPORT_SYMBOL_GPL drivers/thunderbolt/thunderbolt 0x658e3d97 tb_property_add_immediate +EXPORT_SYMBOL_GPL drivers/thunderbolt/thunderbolt 0x68f8bd2a tb_xdomain_find_by_route +EXPORT_SYMBOL_GPL drivers/thunderbolt/thunderbolt 0x6a30a58a tb_xdomain_response +EXPORT_SYMBOL_GPL drivers/thunderbolt/thunderbolt 0x7016420c tb_ring_alloc_rx +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 0x7978fb2b tb_ring_poll_complete +EXPORT_SYMBOL_GPL drivers/thunderbolt/thunderbolt 0x894fbf3f tb_ring_poll +EXPORT_SYMBOL_GPL drivers/thunderbolt/thunderbolt 0x8b62f95e tb_property_add_dir +EXPORT_SYMBOL_GPL drivers/thunderbolt/thunderbolt 0xa3d2b403 tb_property_add_data +EXPORT_SYMBOL_GPL drivers/thunderbolt/thunderbolt 0xafa033c1 __tb_ring_enqueue +EXPORT_SYMBOL_GPL drivers/thunderbolt/thunderbolt 0xb614c8a9 tb_ring_stop +EXPORT_SYMBOL_GPL drivers/thunderbolt/thunderbolt 0xb7c7cdce tb_property_add_text +EXPORT_SYMBOL_GPL drivers/thunderbolt/thunderbolt 0xb9969d6e tb_register_service_driver +EXPORT_SYMBOL_GPL drivers/thunderbolt/thunderbolt 0xbfa28541 tb_ring_start +EXPORT_SYMBOL_GPL drivers/thunderbolt/thunderbolt 0xe543cc4b tb_xdomain_disable_paths +EXPORT_SYMBOL_GPL drivers/thunderbolt/thunderbolt 0xef7243f3 tb_xdomain_type +EXPORT_SYMBOL_GPL drivers/thunderbolt/thunderbolt 0xf1cfd1ff tb_register_property_dir +EXPORT_SYMBOL_GPL drivers/thunderbolt/thunderbolt 0xf40088c6 tb_ring_alloc_tx +EXPORT_SYMBOL_GPL drivers/thunderbolt/thunderbolt 0xf76028c7 tb_unregister_protocol_handler +EXPORT_SYMBOL_GPL drivers/tty/n_tracesink 0x8a422e5e n_tracesink_datadrain +EXPORT_SYMBOL_GPL drivers/uio/uio 0x4cfbe682 __uio_register_device +EXPORT_SYMBOL_GPL drivers/uio/uio 0x60ffa66a uio_unregister_device +EXPORT_SYMBOL_GPL drivers/uio/uio 0xa50a568f uio_event_notify +EXPORT_SYMBOL_GPL drivers/uio/uio 0xbca7cc33 __devm_uio_register_device +EXPORT_SYMBOL_GPL drivers/vdpa/vdpa 0x3b7e42da __vdpa_register_driver +EXPORT_SYMBOL_GPL drivers/vdpa/vdpa 0x5ed85627 vdpa_register_device +EXPORT_SYMBOL_GPL drivers/vdpa/vdpa 0x7afbe8fe vdpa_unregister_driver +EXPORT_SYMBOL_GPL drivers/vdpa/vdpa 0xf7a788ed __vdpa_alloc_device +EXPORT_SYMBOL_GPL drivers/vdpa/vdpa 0xfb0f2c79 vdpa_unregister_device +EXPORT_SYMBOL_GPL drivers/vfio/mdev/mdev 0xfea1a69d mdev_bus_type +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x042f0872 vhost_add_used_n +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x118f52a2 vhost_new_msg +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x283e6bf9 vhost_poll_init +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x29ab0da7 vhost_dequeue_msg +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x3baf040b vhost_log_access_ok +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x3ee90ca3 vhost_get_vq_desc +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x3f709fa9 vhost_dev_reset_owner +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x400576c8 vhost_dev_stop +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x479ba4c4 vhost_exceeds_weight +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x4d304f6f vhost_poll_queue +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x4d9f12f4 vhost_dev_set_owner +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x5315e485 vhost_poll_start +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x604f0c39 vhost_disable_notify +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x6261b37b vhost_init_device_iotlb +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x67a52a97 vhost_has_work +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x6ac5a74b vhost_vq_is_setup +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x74c18ffe vhost_work_flush +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x789cd0a8 vhost_vring_ioctl +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x7a4e2a8a vq_meta_prefetch +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x7cf08c6a vhost_signal +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x825c448c vhost_vq_avail_empty +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x8699bd30 vhost_add_used +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x87c3ff5f vhost_add_used_and_signal +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x8ffe43c8 vhost_log_write +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x961257cb vhost_vq_init_access +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x97198ca4 vhost_vq_access_ok +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x9efe6781 vhost_dev_ioctl +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0xa909cfc5 vhost_work_init +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0xad196b6e vhost_enable_notify +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0xad3e9852 vhost_work_queue +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0xb8c6edaf vhost_dev_init +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0xba9820a6 vhost_discard_vq_desc +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0xbb4145bb vhost_dev_has_owner +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0xc674d985 vhost_enqueue_msg +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0xc7421005 vhost_poll_stop +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0xd181b217 vhost_add_used_and_signal_n +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0xd6481bf3 vhost_poll_flush +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0xd83220f8 vhost_chr_read_iter +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0xe5116865 vhost_dev_cleanup +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0xe56c5695 vhost_dev_check_owner +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 0x514d0e6a vhost_iotlb_itree_first +EXPORT_SYMBOL_GPL drivers/vhost/vhost_iotlb 0x5f4e5249 vhost_iotlb_reset +EXPORT_SYMBOL_GPL drivers/vhost/vhost_iotlb 0x6bec0e66 vhost_iotlb_del_range +EXPORT_SYMBOL_GPL drivers/vhost/vhost_iotlb 0x7579334f vhost_iotlb_itree_next +EXPORT_SYMBOL_GPL drivers/vhost/vhost_iotlb 0xa24517eb vhost_iotlb_free +EXPORT_SYMBOL_GPL drivers/vhost/vhost_iotlb 0xad111707 vhost_iotlb_map_free +EXPORT_SYMBOL_GPL drivers/vhost/vhost_iotlb 0xc577832d vhost_iotlb_alloc +EXPORT_SYMBOL_GPL drivers/video/fbdev/core/fb_ddc 0x8912ed36 fb_ddc_read +EXPORT_SYMBOL_GPL drivers/video/fbdev/core/fb_sys_fops 0x35e1b3c5 fb_sys_read +EXPORT_SYMBOL_GPL drivers/video/fbdev/core/fb_sys_fops 0xd3624e62 fb_sys_write +EXPORT_SYMBOL_GPL drivers/video/fbdev/via/viafb 0x0e1cee08 viafb_dma_copy_out_sg +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 0x51f0a999 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 0xfff2dfd2 viafb_gpio_lookup +EXPORT_SYMBOL_GPL fs/dlm/dlm 0x21099891 dlm_posix_lock +EXPORT_SYMBOL_GPL fs/dlm/dlm 0x2b99874e dlm_posix_get +EXPORT_SYMBOL_GPL fs/dlm/dlm 0x4b62826c dlm_unlock +EXPORT_SYMBOL_GPL fs/dlm/dlm 0x53de35ec dlm_posix_unlock +EXPORT_SYMBOL_GPL fs/dlm/dlm 0x647d6170 dlm_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/fscache/fscache 0x092cf98e fscache_object_sleep_till_congested +EXPORT_SYMBOL_GPL fs/lockd/lockd 0x0f432b67 lockd_up +EXPORT_SYMBOL_GPL fs/lockd/lockd 0x1c8633e8 nlmsvc_ops +EXPORT_SYMBOL_GPL fs/lockd/lockd 0x4cabf08d nlmclnt_init +EXPORT_SYMBOL_GPL fs/lockd/lockd 0x6a6d2cf0 nlmclnt_done +EXPORT_SYMBOL_GPL fs/lockd/lockd 0x6de7078e lockd_down +EXPORT_SYMBOL_GPL fs/lockd/lockd 0x6ee8918d nlmsvc_unlock_all_by_sb +EXPORT_SYMBOL_GPL fs/lockd/lockd 0x77e35ccc nlmsvc_unlock_all_by_ip +EXPORT_SYMBOL_GPL fs/lockd/lockd 0x8ac58b06 nlmclnt_proc +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x009077d9 nfs_pgio_header_alloc +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x0258a078 nfs_scan_commit_list +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x0294c6a2 nfs_callback_nr_threads +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x02b26c19 nfs_lock +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x0538cd70 nfs_wb_all +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x0649d0dc nfs_reconfigure +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x0a0c9d3e nfs_async_iocounter_wait +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x0a213a47 nfs_get_client +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x0b01f958 nfs_sops +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x0b51514f nfs_revalidate_inode +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x0b7f988f nfs_free_client +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x0f6def25 nfs_drop_inode +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x10962bc2 nfs_auth_info_match +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x10f3f6bb nfs_wait_on_request +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x11443c61 nfs_fhget +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x1337c277 nfs_access_add_cache +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x1343efe4 nfs_request_add_commit_list +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x139efa4b nfs_client_init_is_complete +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x13efbdcc nfs_fs_type +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x1637190b nfs_commitdata_release +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x16f3c566 nfs_close_context +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x180ad8df nfs_write_inode +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x1b01c67d nfs_submount +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x1cccc5fa nfs_sb_active +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x1e2a5f16 nfs_sb_deactive +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x21025cfc nfs_init_server_rpcclient +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x213960f8 nfs_unlink +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x22d795a8 _nfs_display_fhandle_hash +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x26884ff7 nfs_alloc_fhandle +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x28322ac0 nfs_pgio_current_mirror +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x285f47c6 nfs_getattr +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x2efa6006 nfs_writeback_update_inode +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x2f40cdea nfs_inode_attach_open_context +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x39e05ac3 nfs_idmap_cache_timeout +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x3dd3ad19 nfs_create_server +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x3e443185 nfs_lookup +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x3f2690f2 nfs_check_flags +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x40152e78 nfs_client_for_each_server +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x4023a5bb nfs_commit_free +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x40739385 nfs_wait_bit_killable +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x42f2c81f nfs4_client_id_uniquifier +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x450a1235 nfs_statfs +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x45ceaac9 nfs_pageio_reset_read_mds +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x48de5f97 nfs_do_submount +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x49ae1713 nfs_server_insert_lists +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x4a5854d2 nfs_initiate_commit +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x4a8b5e46 nfs_file_operations +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x4bba9f9e nfs_put_lock_context +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x4c7a87a4 nfs_file_release +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x4cb9bd4a nfs_put_client +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x4cb9e001 recover_lost_locks +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x501286c5 nfs_fscache_open_file +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x513ee510 nfs_client_init_status +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x51892d61 nfs_callback_set_tcpport +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x51cc18a2 put_nfs_open_context +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x538a31c6 nfs_file_set_open_context +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x541bc3ff nfs_probe_fsinfo +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x57232b9a nfs_create +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x5742f3fe nfs_umount_begin +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x584b8482 nfs_inc_attr_generation_counter +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x59e32fc5 nfs_pageio_init_write +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x5bbd63bc nfs_request_remove_commit_list +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x5fc873ea nfs_server_remove_lists +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x6112f195 alloc_nfs_open_context +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x613cd26f nfs_show_stats +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x6188eb71 nfs_commit_inode +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x621bb2b0 nfs_init_commit +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x63307b23 nfs_force_lookup_revalidate +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x650ec9eb nfs_zap_acl_cache +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x68de6242 nfs_try_get_tree +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x698389e9 nfs_generic_pg_test +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x6a8d55a1 nfs4_label_alloc +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x6b8425cc nfs_free_server +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x6c803215 nfs_pgio_header_free +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x702d2ae0 nfs4_dentry_operations +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x70e60483 nfs_server_copy_userdata +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x722a8dcd nfs_alloc_server +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x733764f7 get_nfs_open_context +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x73dccde2 nfs_permission +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x75e378a4 nfs_post_op_update_inode +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x76f84293 nfs_kill_super +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x7ac45157 nfs_pageio_reset_write_mds +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x7c9722ba nfs_dreq_bytes_left +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x7cc066b7 nfs_release_request +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x7e570ce3 nfs_request_add_commit_list_locked +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x7fd7a1cd nfs_init_client +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x8011daa2 nfs_path +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x831d5d2e nfs_get_lock_context +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x832e8f0b nfs_alloc_fattr +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x83e8c166 nfs_mknod +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x851d74ac nfs_pageio_init_read +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x887683a9 nfs_alloc_client +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x8b40e6b7 nfs_mkdir +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x8fb5f076 nfs_flock +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x8fca00f4 nfs_pageio_resend +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x90a5530f nfsiod_workqueue +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x90e136d7 nfs_generic_pgio +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x91d1fe52 max_session_slots +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x936eefdf nfs4_fs_type +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x97f986c8 nfs_setattr_update_inode +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x98b0ece8 nfs_init_timeout_values +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x9c0a1b78 nfs_show_options +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x9cba3fff nfs_instantiate +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x9d2122b0 nfs_sync_inode +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x9e4859c8 nfs_post_op_update_inode_force_wcc +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x9e642a24 nfs_file_read +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x9f5f6902 nfs_clone_server +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xa05ca625 nfs_fattr_init +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xa625df3c nfs_file_mmap +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xa78c5c09 nfs_clear_verifier_delegated +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xa8abcded __tracepoint_nfs_xdr_status +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xa8e9e1ae send_implementation_id +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xa9490838 nfs_may_open +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xaa9fde04 nfs_access_set_mask +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xaafd4acc max_session_cb_slots +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xabed0194 nfs_show_path +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xac4057a9 nfs_link +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xadad0363 nfs_refresh_inode +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xaea06eb0 nfs_rename +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xaf60db39 nfs_alloc_inode +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xb5f5c91f __tracepoint_nfs_fsync_exit +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xb8d8ae48 nfs_init_cinfo +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xbacf7327 nfs_setsecurity +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xbc6b2c88 __tracepoint_nfs_fsync_enter +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xc05c03b2 unregister_nfs_version +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xc169e1f0 nfs_wait_client_init_complete +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xc2b5c88b nfs_atomic_open +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xc398facb nfs_show_devname +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xc3a2be67 nfs_net_id +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xc47c5321 register_nfs_version +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xc504394f nfs_open +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xc745f59d nfs_file_write +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xc8a7582a nfs_symlink +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xcbf6b07b nfs_dentry_operations +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xcedf1f64 nfs_access_zap_cache +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xcf066c5c nfs_retry_commit +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xcf5b144c nfs_filemap_write_and_wait_range +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xd1534566 nfs_create_rpc_client +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xd2981c9e nfs_free_inode +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xdae9b5d7 nfs4_disable_idmapping +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xdd3367b8 nfs_rmdir +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xdee9a838 nfs_clear_inode +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xe4d694bc nfs_setattr +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xed0833da nfs_initiate_pgio +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xf4e4ea7a nfs_invalidate_atime +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xf538bba2 nfs_commitdata_alloc +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xf5467ff2 nfs_pgheader_init +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xfb067053 nfs_add_or_obtain +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xfb1ecb9b nfs_mark_client_ready +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xfc619abd _nfs_display_fhandle +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xfdb82afe nfs_file_llseek +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xfe088933 nfs_file_fsync +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xffaea081 nfs_set_verifier +EXPORT_SYMBOL_GPL fs/nfs/nfsv3 0x9067f55a nfs3_set_ds_client +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x054bef45 layoutstats_timer +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x0595cf71 pnfs_generic_pg_writepages +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x06c58196 nfs4_schedule_migration_recovery +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x07a514f2 pnfs_generic_pg_init_read +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x0ade27ae __tracepoint_ff_layout_read_error +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x10f14d2c pnfs_layoutcommit_inode +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x163831c3 __tracepoint_nfs4_pnfs_write +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x19d7c78f pnfs_generic_clear_request_commit +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x1a082ac3 nfs4_pnfs_ds_add +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x1cdde079 __tracepoint_nfs4_pnfs_read +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x1f271484 pnfs_generic_pg_init_write +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x208f5c30 __tracepoint_pnfs_mds_fallback_read_pagelist +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x246e3ca5 pnfs_read_done_resend_to_mds +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x296a6b8c pnfs_ld_write_done +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x2ba1f702 nfs42_ssc_open +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x2bd4da40 nfs42_ssc_close +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x2e3fa271 nfs42_proc_layouterror +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x33eced59 pnfs_destroy_layout +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x33ff9a19 pnfs_put_lseg +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x35e7b83a nfs4_set_ds_client +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x379ec59b nfs4_schedule_lease_recovery +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x39ac52fe __tracepoint_ff_layout_commit_error +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x39d5fd53 nfs4_mark_deviceid_unavailable +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x3c03f288 nfs4_delete_deviceid +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x3c7d84cc __tracepoint_pnfs_mds_fallback_write_pagelist +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x3cb28ca8 nfs4_pnfs_ds_put +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x3f8b113a pnfs_generic_pg_cleanup +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x40bc3c6d __tracepoint_ff_layout_write_error +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x420aba08 nfs4_schedule_session_recovery +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x4379d6cf nfs4_init_deviceid_node +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x44c2face pnfs_generic_scan_commit_lists +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x46cde42e nfs4_setup_sequence +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x47b112bb nfs4_test_session_trunk +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x49ac2857 pnfs_generic_pg_check_range +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x570adfe0 pnfs_generic_commit_pagelist +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x59464b4e pnfs_generic_ds_cinfo_release_lseg +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x5c4a7e03 pnfs_register_layoutdriver +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x6085edbd nfs_map_string_to_numeric +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x625b8fa3 pnfs_set_lo_fail +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x66f0c75f pnfs_generic_sync +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x67e199a7 nfs4_init_ds_session +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x684daea4 nfs4_test_deviceid_unavailable +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x6928ee43 pnfs_generic_pg_test +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x69d3558d pnfs_generic_rw_release +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x6c9ac3ee pnfs_generic_ds_cinfo_destroy +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x6d70c15b nfs4_proc_getdeviceinfo +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x6f6c2d6d nfs4_put_deviceid_node +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x76a2910e pnfs_write_done_resend_to_mds +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x78ecf37b __tracepoint_pnfs_mds_fallback_pg_init_write +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x85626f68 pnfs_report_layoutstat +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x8ad86021 pnfs_generic_prepare_to_resend_writes +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x8b2f0c95 pnfs_update_layout +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x8b67a90a pnfs_error_mark_layout_for_return +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x94dc75b0 pnfs_alloc_commit_array +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x956cedbe pnfs_ld_read_done +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x99bc6cac nfs4_pnfs_ds_connect +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x9d1c2552 nfs4_find_or_create_ds_client +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xa319bfee __tracepoint_pnfs_mds_fallback_pg_init_read +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xa717d236 nfs41_sequence_done +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xa8e9ef2f pnfs_add_commit_array +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xa8f8cb43 nfs4_schedule_stateid_recovery +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xab9a762b nfs4_sequence_done +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xb78d9d18 pnfs_read_resend_pnfs +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xbe1fe952 nfs4_mark_deviceid_available +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xbf9331ff pnfs_nfs_generic_sync +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xc0509f93 pnfs_unregister_layoutdriver +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xc38ade9c pnfs_generic_pg_check_layout +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xc6c8f752 pnfs_free_commit_array +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xc830a1d4 pnfs_generic_write_commit_done +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xc8bf1ec8 pnfs_set_layoutcommit +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xcb9e15d5 nfs4_decode_mp_ds_addr +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xd27f9fa2 nfs4_schedule_lease_moved_recovery +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xd6ed7dda __tracepoint_pnfs_mds_fallback_write_done +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xd7939faa pnfs_generic_pg_readpages +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xdc29230a __tracepoint_pnfs_mds_fallback_pg_get_mirror_count +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xdf05942f __tracepoint_nfs4_pnfs_commit_ds +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xe45bfafd nfs4_find_get_deviceid +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xe4f546b8 pnfs_generic_recover_commit_reqs +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xeb42fd77 pnfs_layout_mark_request_commit +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xed15fb41 nfs4_print_deviceid +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xee960d9f __tracepoint_pnfs_mds_fallback_read_done +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xf5402269 pnfs_generic_search_commit_reqs +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xf6de7ca7 nfs_remove_bad_delegation +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/nfsv4 0xf9ff282f pnfs_generic_layout_insert_lseg +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xfac0fde5 nfs4_set_rw_stateid +EXPORT_SYMBOL_GPL fs/nfs_common/grace 0x1fe1e1ad locks_end_grace +EXPORT_SYMBOL_GPL fs/nfs_common/grace 0x28a95323 locks_in_grace +EXPORT_SYMBOL_GPL fs/nfs_common/grace 0x58b862fa opens_in_grace +EXPORT_SYMBOL_GPL fs/nfs_common/grace 0x7d56ccb8 locks_start_grace +EXPORT_SYMBOL_GPL fs/nfs_common/nfs_acl 0x16173472 nfsacl_encode +EXPORT_SYMBOL_GPL fs/nfs_common/nfs_acl 0xc185d2b0 nfsacl_decode +EXPORT_SYMBOL_GPL fs/nfsd/nfsd 0x5b388f0f inter_copy_offload_enable +EXPORT_SYMBOL_GPL fs/ocfs2/cluster/ocfs2_nodemanager 0x03085155 o2nm_get_node_by_ip +EXPORT_SYMBOL_GPL fs/ocfs2/cluster/ocfs2_nodemanager 0x0b91b222 o2nm_node_put +EXPORT_SYMBOL_GPL fs/ocfs2/cluster/ocfs2_nodemanager 0x1b834320 o2hb_register_callback +EXPORT_SYMBOL_GPL fs/ocfs2/cluster/ocfs2_nodemanager 0x1b89c6ee o2hb_fill_node_map +EXPORT_SYMBOL_GPL fs/ocfs2/cluster/ocfs2_nodemanager 0x487341e3 o2nm_get_node_by_num +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 0x81a17396 mlog_and_bits +EXPORT_SYMBOL_GPL fs/ocfs2/cluster/ocfs2_nodemanager 0xa3ba4b12 o2hb_unregister_callback +EXPORT_SYMBOL_GPL fs/ocfs2/cluster/ocfs2_nodemanager 0xa87bc9e7 o2nm_configured_node_map +EXPORT_SYMBOL_GPL fs/ocfs2/cluster/ocfs2_nodemanager 0xac49c2c7 o2nm_node_get +EXPORT_SYMBOL_GPL fs/ocfs2/cluster/ocfs2_nodemanager 0xb6ebf62a o2nm_this_node +EXPORT_SYMBOL_GPL fs/ocfs2/cluster/ocfs2_nodemanager 0xb989bd38 o2hb_setup_callback +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 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 0x46feff20 dlm_register_eviction_cb +EXPORT_SYMBOL_GPL fs/ocfs2/dlm/ocfs2_dlm 0x7a1211f8 dlm_setup_eviction_cb +EXPORT_SYMBOL_GPL fs/ocfs2/dlm/ocfs2_dlm 0x7f0927e7 dlmunlock +EXPORT_SYMBOL_GPL fs/ocfs2/dlm/ocfs2_dlm 0xbff2472e dlm_unregister_domain +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 0xeda07e9e dlm_print_one_lock +EXPORT_SYMBOL_GPL fs/ocfs2/dlm/ocfs2_dlm 0xef3f65da dlm_register_domain +EXPORT_SYMBOL_GPL fs/ocfs2/dlm/ocfs2_dlm 0xf36cb82c dlmlock +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 0x76f40744 ocfs2_dlm_lvb +EXPORT_SYMBOL_GPL fs/ocfs2/ocfs2_stackglue 0x9507547f ocfs2_cluster_disconnect +EXPORT_SYMBOL_GPL fs/ocfs2/ocfs2_stackglue 0x98785a2e ocfs2_stack_glue_register +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 0xc60ce059 ocfs2_plock +EXPORT_SYMBOL_GPL fs/ocfs2/ocfs2_stackglue 0xc9fae756 ocfs2_cluster_connect +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 0xe8e8424f ocfs2_kset +EXPORT_SYMBOL_GPL fs/ocfs2/ocfs2_stackglue 0xeee4d0d7 ocfs2_stack_glue_unregister +EXPORT_SYMBOL_GPL fs/pstore/pstore_blk 0x43cc3d4b pstore_blk_get_config +EXPORT_SYMBOL_GPL fs/pstore/pstore_blk 0x941c79d7 unregister_pstore_blk +EXPORT_SYMBOL_GPL fs/pstore/pstore_blk 0x96d760c6 register_pstore_device +EXPORT_SYMBOL_GPL fs/pstore/pstore_blk 0xb32bf368 register_pstore_blk +EXPORT_SYMBOL_GPL fs/pstore/pstore_blk 0xc3d2aed6 unregister_pstore_device +EXPORT_SYMBOL_GPL fs/pstore/pstore_zone 0x32e49bf4 unregister_pstore_zone +EXPORT_SYMBOL_GPL fs/pstore/pstore_zone 0xa685abe1 register_pstore_zone +EXPORT_SYMBOL_GPL kernel/torture 0x1b2fca48 torture_must_stop_irq +EXPORT_SYMBOL_GPL kernel/torture 0x1be7d8be torture_onoff_failures +EXPORT_SYMBOL_GPL kernel/torture 0x3e9619f5 torture_onoff_stats +EXPORT_SYMBOL_GPL kernel/torture 0x3ff9be11 torture_online +EXPORT_SYMBOL_GPL kernel/torture 0x447d9c95 torture_offline +EXPORT_SYMBOL_GPL kernel/torture 0x478035c9 _torture_create_kthread +EXPORT_SYMBOL_GPL kernel/torture 0x4c7529bd torture_shutdown_absorb +EXPORT_SYMBOL_GPL kernel/torture 0x52665f8b torture_random +EXPORT_SYMBOL_GPL kernel/torture 0x5a12a7da torture_stutter_init +EXPORT_SYMBOL_GPL kernel/torture 0x679d9e50 torture_must_stop +EXPORT_SYMBOL_GPL kernel/torture 0x688e6a64 torture_cleanup_end +EXPORT_SYMBOL_GPL kernel/torture 0x6c3ff11a torture_init_begin +EXPORT_SYMBOL_GPL kernel/torture 0x8b0e1d2f torture_shuffle_init +EXPORT_SYMBOL_GPL kernel/torture 0xc67a49d4 torture_cleanup_begin +EXPORT_SYMBOL_GPL kernel/torture 0xc94a93e3 torture_onoff_init +EXPORT_SYMBOL_GPL kernel/torture 0xca300278 torture_shuffle_task_register +EXPORT_SYMBOL_GPL kernel/torture 0xdbc5277a torture_shutdown_init +EXPORT_SYMBOL_GPL kernel/torture 0xe2430307 stutter_wait +EXPORT_SYMBOL_GPL kernel/torture 0xe6989fd3 torture_init_end +EXPORT_SYMBOL_GPL kernel/torture 0xf2e46991 _torture_stop_kthread +EXPORT_SYMBOL_GPL kernel/torture 0xf6d34fb5 torture_kthread_stopping +EXPORT_SYMBOL_GPL lib/842/842_compress 0xcf048a91 sw842_compress +EXPORT_SYMBOL_GPL lib/842/842_decompress 0xa4adedf1 sw842_decompress +EXPORT_SYMBOL_GPL lib/crc4 0x696b3a5a crc4 +EXPORT_SYMBOL_GPL lib/crc64 0xeaf3cb23 crc64_be +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 0x7f376d08 poly1305_final_generic +EXPORT_SYMBOL_GPL lib/crypto/libpoly1305 0xaeadcbe8 poly1305_init_generic +EXPORT_SYMBOL_GPL lib/crypto/libpoly1305 0xfa617389 poly1305_update_generic +EXPORT_SYMBOL_GPL lib/notifier-error-inject 0x878072c0 notifier_err_inject_init +EXPORT_SYMBOL_GPL lib/notifier-error-inject 0xa068b0f9 notifier_err_inject_dir +EXPORT_SYMBOL_GPL lib/raid6/raid6_pq 0x1803a6ed raid6_2data_recov +EXPORT_SYMBOL_GPL lib/raid6/raid6_pq 0x2b30f429 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 0xeb2f825c init_rs_gfp +EXPORT_SYMBOL_GPL lib/reed_solomon/reed_solomon 0xfd581da1 free_rs +EXPORT_SYMBOL_GPL net/6lowpan/6lowpan 0xedfee982 lowpan_header_compress +EXPORT_SYMBOL_GPL net/6lowpan/6lowpan 0xfaf52b73 lowpan_header_decompress +EXPORT_SYMBOL_GPL net/802/garp 0x00069b6c garp_unregister_application +EXPORT_SYMBOL_GPL net/802/garp 0x026db6d7 garp_uninit_applicant +EXPORT_SYMBOL_GPL net/802/garp 0x145e1951 garp_register_application +EXPORT_SYMBOL_GPL net/802/garp 0x4fec0346 garp_request_leave +EXPORT_SYMBOL_GPL net/802/garp 0x7cd2e9a0 garp_init_applicant +EXPORT_SYMBOL_GPL net/802/garp 0xa5ee3b64 garp_request_join +EXPORT_SYMBOL_GPL net/802/mrp 0x096d00d1 mrp_request_leave +EXPORT_SYMBOL_GPL net/802/mrp 0x2b2121fd mrp_unregister_application +EXPORT_SYMBOL_GPL net/802/mrp 0x38a4746b mrp_request_join +EXPORT_SYMBOL_GPL net/802/mrp 0x7d44321c mrp_register_application +EXPORT_SYMBOL_GPL net/802/mrp 0xc624e7f8 mrp_init_applicant +EXPORT_SYMBOL_GPL net/802/mrp 0xf9feeac4 mrp_uninit_applicant +EXPORT_SYMBOL_GPL net/802/stp 0x285f51af stp_proto_unregister +EXPORT_SYMBOL_GPL net/802/stp 0x3ba5469a stp_proto_register +EXPORT_SYMBOL_GPL net/9p/9pnet 0x5e254ae2 p9_client_xattrwalk +EXPORT_SYMBOL_GPL net/9p/9pnet 0x601df3a0 p9_client_xattrcreate +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 0x650f2eed 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 0x4388e1e7 nf_br_ops +EXPORT_SYMBOL_GPL net/bridge/bridge 0x447ef7c1 br_multicast_has_querier_anywhere +EXPORT_SYMBOL_GPL net/bridge/bridge 0x467f5997 br_vlan_get_info +EXPORT_SYMBOL_GPL net/bridge/bridge 0x4c459b5e br_multicast_list_adjacent +EXPORT_SYMBOL_GPL net/bridge/bridge 0x54dff78c br_dev_queue_push_xmit +EXPORT_SYMBOL_GPL net/bridge/bridge 0x5d8f5988 br_fdb_clear_offload +EXPORT_SYMBOL_GPL net/bridge/bridge 0x61bed11b br_vlan_get_pvid_rcu +EXPORT_SYMBOL_GPL net/bridge/bridge 0x9769a0cc br_handle_frame_finish +EXPORT_SYMBOL_GPL net/bridge/bridge 0xa8766c67 br_vlan_get_proto +EXPORT_SYMBOL_GPL net/bridge/bridge 0xa912a86a br_multicast_enabled +EXPORT_SYMBOL_GPL net/bridge/bridge 0xadba8bbf br_multicast_router +EXPORT_SYMBOL_GPL net/bridge/bridge 0xcb771166 br_forward_finish +EXPORT_SYMBOL_GPL net/bridge/bridge 0xdc24851f br_multicast_has_querier_adjacent +EXPORT_SYMBOL_GPL net/bridge/bridge 0xe5dcc936 br_port_flag_is_set +EXPORT_SYMBOL_GPL net/bridge/bridge 0xe60fb556 br_fdb_find_port +EXPORT_SYMBOL_GPL net/bridge/bridge 0xeb06ffbf br_vlan_enabled +EXPORT_SYMBOL_GPL net/bridge/bridge 0xef1b28f6 br_vlan_get_pvid +EXPORT_SYMBOL_GPL net/bridge/bridge 0xfb619488 br_forward +EXPORT_SYMBOL_GPL net/core/failover 0x93da420f failover_register +EXPORT_SYMBOL_GPL net/core/failover 0xa6b5ea47 failover_slave_unregister +EXPORT_SYMBOL_GPL net/core/failover 0xd0c608a5 failover_unregister +EXPORT_SYMBOL_GPL net/dccp/dccp 0x008fef33 dccp_ioctl +EXPORT_SYMBOL_GPL net/dccp/dccp 0x055cf1a7 dccp_create_openreq_child +EXPORT_SYMBOL_GPL net/dccp/dccp 0x0934316f dccp_ctl_make_reset +EXPORT_SYMBOL_GPL net/dccp/dccp 0x0c44e91b dccp_send_sync +EXPORT_SYMBOL_GPL net/dccp/dccp 0x0edaa6c1 dccp_connect +EXPORT_SYMBOL_GPL net/dccp/dccp 0x11bcc94e dccp_rcv_state_process +EXPORT_SYMBOL_GPL net/dccp/dccp 0x182ec2bf dccp_ackvec_parsed_add +EXPORT_SYMBOL_GPL net/dccp/dccp 0x1d017662 dccp_sendmsg +EXPORT_SYMBOL_GPL net/dccp/dccp 0x1fa750fd dccp_insert_option +EXPORT_SYMBOL_GPL net/dccp/dccp 0x239d6d27 dccp_reqsk_send_ack +EXPORT_SYMBOL_GPL net/dccp/dccp 0x252dab43 dccp_feat_signal_nn_change +EXPORT_SYMBOL_GPL net/dccp/dccp 0x25607383 inet_dccp_listen +EXPORT_SYMBOL_GPL net/dccp/dccp 0x3314a3b9 dccp_set_state +EXPORT_SYMBOL_GPL net/dccp/dccp 0x4cdd391d dccp_feat_list_purge +EXPORT_SYMBOL_GPL net/dccp/dccp 0x51e74ffe dccp_poll +EXPORT_SYMBOL_GPL net/dccp/dccp 0x59814a84 dccp_statistics +EXPORT_SYMBOL_GPL net/dccp/dccp 0x5e5ddd65 dccp_recvmsg +EXPORT_SYMBOL_GPL net/dccp/dccp 0x722630de dccp_hashinfo +EXPORT_SYMBOL_GPL net/dccp/dccp 0x777dc5d7 dccp_child_process +EXPORT_SYMBOL_GPL net/dccp/dccp 0x80993155 dccp_timestamp +EXPORT_SYMBOL_GPL net/dccp/dccp 0x86be7924 dccp_packet_name +EXPORT_SYMBOL_GPL net/dccp/dccp 0x896bafbc dccp_done +EXPORT_SYMBOL_GPL net/dccp/dccp 0x9598d24d dccp_ackvec_parsed_cleanup +EXPORT_SYMBOL_GPL net/dccp/dccp 0x98a41b3d dccp_disconnect +EXPORT_SYMBOL_GPL net/dccp/dccp 0x9b2e46a3 dccp_make_response +EXPORT_SYMBOL_GPL net/dccp/dccp 0xa2624a42 dccp_death_row +EXPORT_SYMBOL_GPL net/dccp/dccp 0xae97f9da dccp_send_ack +EXPORT_SYMBOL_GPL net/dccp/dccp 0xafbe33ea dccp_shutdown +EXPORT_SYMBOL_GPL net/dccp/dccp 0xb28fc566 dccp_init_sock +EXPORT_SYMBOL_GPL net/dccp/dccp 0xbe20c9c1 compat_dccp_setsockopt +EXPORT_SYMBOL_GPL net/dccp/dccp 0xc3b6a26c dccp_orphan_count +EXPORT_SYMBOL_GPL net/dccp/dccp 0xc5b44dbd dccp_sync_mss +EXPORT_SYMBOL_GPL net/dccp/dccp 0xc6be5f5c compat_dccp_getsockopt +EXPORT_SYMBOL_GPL net/dccp/dccp 0xd1f92660 dccp_rcv_established +EXPORT_SYMBOL_GPL net/dccp/dccp 0xd97eb59b dccp_setsockopt +EXPORT_SYMBOL_GPL net/dccp/dccp 0xda0f2c2f dccp_getsockopt +EXPORT_SYMBOL_GPL net/dccp/dccp 0xdbd29d5b dccp_check_req +EXPORT_SYMBOL_GPL net/dccp/dccp 0xdcd55466 dccp_close +EXPORT_SYMBOL_GPL net/dccp/dccp 0xe543fac9 dccp_reqsk_init +EXPORT_SYMBOL_GPL net/dccp/dccp 0xebf8cf38 dccp_feat_nn_get +EXPORT_SYMBOL_GPL net/dccp/dccp 0xf04b5ba9 dccp_destroy_sock +EXPORT_SYMBOL_GPL net/dccp/dccp 0xf0740758 dccp_parse_options +EXPORT_SYMBOL_GPL net/dccp/dccp_ipv4 0x128a3452 dccp_invalid_packet +EXPORT_SYMBOL_GPL net/dccp/dccp_ipv4 0x2a532bba dccp_v4_send_check +EXPORT_SYMBOL_GPL net/dccp/dccp_ipv4 0x416f7d8b dccp_v4_connect +EXPORT_SYMBOL_GPL net/dccp/dccp_ipv4 0x4c705555 dccp_v4_request_recv_sock +EXPORT_SYMBOL_GPL net/dccp/dccp_ipv4 0x8ced44a1 dccp_v4_conn_request +EXPORT_SYMBOL_GPL net/dccp/dccp_ipv4 0xa9ef6f83 dccp_v4_do_rcv +EXPORT_SYMBOL_GPL net/dsa/dsa_core 0x033a19d8 dsa_register_switch +EXPORT_SYMBOL_GPL net/dsa/dsa_core 0x4db9c9a8 dsa_devlink_params_register +EXPORT_SYMBOL_GPL net/dsa/dsa_core 0x4fcfcf1c dsa_devlink_resource_register +EXPORT_SYMBOL_GPL net/dsa/dsa_core 0x5c5bb8ee unregister_dsa_notifier +EXPORT_SYMBOL_GPL net/dsa/dsa_core 0x81625503 dsa_port_get_ethtool_phy_stats +EXPORT_SYMBOL_GPL net/dsa/dsa_core 0x98cc65a5 dsa_tag_drivers_unregister +EXPORT_SYMBOL_GPL net/dsa/dsa_core 0x995b78f6 dsa_devlink_param_get +EXPORT_SYMBOL_GPL net/dsa/dsa_core 0xa2e85eda dsa_dev_to_net_device +EXPORT_SYMBOL_GPL net/dsa/dsa_core 0xa9966e5d call_dsa_notifiers +EXPORT_SYMBOL_GPL net/dsa/dsa_core 0xb330c886 dsa_port_phylink_mac_change +EXPORT_SYMBOL_GPL net/dsa/dsa_core 0xb8048752 dsa_switch_suspend +EXPORT_SYMBOL_GPL net/dsa/dsa_core 0xb9c69a9a dsa_devlink_params_unregister +EXPORT_SYMBOL_GPL net/dsa/dsa_core 0xba903ec1 dsa_port_from_netdev +EXPORT_SYMBOL_GPL net/dsa/dsa_core 0xbdafa21c dsa_switch_find +EXPORT_SYMBOL_GPL net/dsa/dsa_core 0xc159dbd7 dsa_devlink_param_set +EXPORT_SYMBOL_GPL net/dsa/dsa_core 0xc4cac600 dsa_enqueue_skb +EXPORT_SYMBOL_GPL net/dsa/dsa_core 0xc8217dc8 dsa_devlink_resource_occ_get_register +EXPORT_SYMBOL_GPL net/dsa/dsa_core 0xcbd96639 dsa_devlink_resources_unregister +EXPORT_SYMBOL_GPL net/dsa/dsa_core 0xcec9a535 dsa_tag_drivers_register +EXPORT_SYMBOL_GPL net/dsa/dsa_core 0xe25f2e25 dsa_port_get_phy_sset_count +EXPORT_SYMBOL_GPL net/dsa/dsa_core 0xf429b9ee dsa_devlink_resource_occ_get_unregister +EXPORT_SYMBOL_GPL net/dsa/dsa_core 0xf86039e0 register_dsa_notifier +EXPORT_SYMBOL_GPL net/dsa/dsa_core 0xfd25e6a6 dsa_switch_resume +EXPORT_SYMBOL_GPL net/dsa/dsa_core 0xff38df33 dsa_port_get_phy_strings +EXPORT_SYMBOL_GPL net/dsa/dsa_core 0xffe99d4c dsa_unregister_switch +EXPORT_SYMBOL_GPL net/dsa/tag_8021q 0x0bdaf7de dsa_port_setup_8021q_tagging +EXPORT_SYMBOL_GPL net/dsa/tag_8021q 0x415e894e dsa_8021q_rx_subvlan +EXPORT_SYMBOL_GPL net/dsa/tag_8021q 0x417d1fed dsa_8021q_rx_switch_id +EXPORT_SYMBOL_GPL net/dsa/tag_8021q 0x4722ec8e dsa_8021q_tx_vid +EXPORT_SYMBOL_GPL net/dsa/tag_8021q 0x555700b3 dsa_8021q_xmit +EXPORT_SYMBOL_GPL net/dsa/tag_8021q 0x5802e3ef dsa_8021q_rx_vid +EXPORT_SYMBOL_GPL net/dsa/tag_8021q 0x78710754 dsa_8021q_rx_vid_subvlan +EXPORT_SYMBOL_GPL net/dsa/tag_8021q 0x9e47ee1d dsa_8021q_crosschip_bridge_leave +EXPORT_SYMBOL_GPL net/dsa/tag_8021q 0x9e59271d dsa_8021q_rx_source_port +EXPORT_SYMBOL_GPL net/dsa/tag_8021q 0xa474f7ab dsa_8021q_crosschip_bridge_join +EXPORT_SYMBOL_GPL net/dsa/tag_8021q 0xf13e1803 vid_is_dsa_8021q +EXPORT_SYMBOL_GPL net/ieee802154/ieee802154 0x71636f61 ieee802154_hdr_peek +EXPORT_SYMBOL_GPL net/ieee802154/ieee802154 0x7eaefddd ieee802154_hdr_peek_addrs +EXPORT_SYMBOL_GPL net/ieee802154/ieee802154 0x87e2553b ieee802154_max_payload +EXPORT_SYMBOL_GPL net/ieee802154/ieee802154 0x8e6ffe15 ieee802154_hdr_pull +EXPORT_SYMBOL_GPL net/ieee802154/ieee802154 0xa3f1fb69 ieee802154_hdr_push +EXPORT_SYMBOL_GPL net/ife/ife 0x25f0b162 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 0xddd4c48f ife_decode +EXPORT_SYMBOL_GPL net/ife/ife 0xe7888e98 ife_tlv_meta_encode +EXPORT_SYMBOL_GPL net/ipv4/esp4 0x0d6645b7 esp_input_done2 +EXPORT_SYMBOL_GPL net/ipv4/esp4 0x2e8a5ba3 esp_output_tail +EXPORT_SYMBOL_GPL net/ipv4/esp4 0xa286fcba esp_output_head +EXPORT_SYMBOL_GPL net/ipv4/gre 0x2846c7e5 gre_del_protocol +EXPORT_SYMBOL_GPL net/ipv4/gre 0x94c45f32 gre_add_protocol +EXPORT_SYMBOL_GPL net/ipv4/inet_diag 0x4320bffb inet_diag_msg_attrs_fill +EXPORT_SYMBOL_GPL net/ipv4/inet_diag 0x47ad2555 inet_diag_dump_one_icsk +EXPORT_SYMBOL_GPL net/ipv4/inet_diag 0x65e48ff8 inet_diag_find_one_icsk +EXPORT_SYMBOL_GPL net/ipv4/inet_diag 0x87bd3f52 inet_diag_bc_sk +EXPORT_SYMBOL_GPL net/ipv4/inet_diag 0x88a0c208 inet_diag_dump_icsk +EXPORT_SYMBOL_GPL net/ipv4/inet_diag 0x95f6bc4d inet_diag_msg_common_fill +EXPORT_SYMBOL_GPL net/ipv4/inet_diag 0x99c46771 inet_diag_register +EXPORT_SYMBOL_GPL net/ipv4/inet_diag 0xd2f28486 inet_diag_unregister +EXPORT_SYMBOL_GPL net/ipv4/inet_diag 0xef4c16f7 inet_sk_diag_fill +EXPORT_SYMBOL_GPL net/ipv4/ip_gre 0x4e751024 gretap_fb_dev_create +EXPORT_SYMBOL_GPL net/ipv4/netfilter/arp_tables 0x82bfe816 arpt_alloc_initial_table +EXPORT_SYMBOL_GPL net/ipv4/netfilter/ip_tables 0x7e8a5dad ipt_alloc_initial_table +EXPORT_SYMBOL_GPL net/ipv4/netfilter/nf_defrag_ipv4 0x2a9be9a6 nf_defrag_ipv4_enable +EXPORT_SYMBOL_GPL net/ipv4/netfilter/nf_dup_ipv4 0x3b0262d0 nf_dup_ipv4 +EXPORT_SYMBOL_GPL net/ipv4/netfilter/nf_reject_ipv4 0x1e627780 nf_send_unreach +EXPORT_SYMBOL_GPL net/ipv4/netfilter/nf_reject_ipv4 0x32ed5241 nf_reject_ip_tcphdr_put +EXPORT_SYMBOL_GPL net/ipv4/netfilter/nf_reject_ipv4 0x5870545f nf_reject_iphdr_put +EXPORT_SYMBOL_GPL net/ipv4/netfilter/nf_reject_ipv4 0xe55e0c58 nf_reject_ip_tcphdr_get +EXPORT_SYMBOL_GPL net/ipv4/netfilter/nf_reject_ipv4 0xfb352814 nf_send_reset +EXPORT_SYMBOL_GPL net/ipv4/netfilter/nf_socket_ipv4 0x9ee0442c nf_sk_lookup_slow_v4 +EXPORT_SYMBOL_GPL net/ipv4/netfilter/nf_tproxy_ipv4 0x05db640e nf_tproxy_get_sock_v4 +EXPORT_SYMBOL_GPL net/ipv4/netfilter/nf_tproxy_ipv4 0x7003f491 nf_tproxy_handle_time_wait4 +EXPORT_SYMBOL_GPL net/ipv4/netfilter/nf_tproxy_ipv4 0xfa5fd541 nf_tproxy_laddr4 +EXPORT_SYMBOL_GPL net/ipv4/netfilter/nft_fib_ipv4 0x30671075 nft_fib4_eval +EXPORT_SYMBOL_GPL net/ipv4/netfilter/nft_fib_ipv4 0xedbcd917 nft_fib4_eval_type +EXPORT_SYMBOL_GPL net/ipv4/tcp_vegas 0x23268a61 tcp_vegas_pkts_acked +EXPORT_SYMBOL_GPL net/ipv4/tcp_vegas 0x5aa8c483 tcp_vegas_cwnd_event +EXPORT_SYMBOL_GPL net/ipv4/tcp_vegas 0xa3817e17 tcp_vegas_init +EXPORT_SYMBOL_GPL net/ipv4/tcp_vegas 0xaaeef2e1 tcp_vegas_state +EXPORT_SYMBOL_GPL net/ipv4/tcp_vegas 0xdc1a3e01 tcp_vegas_get_info +EXPORT_SYMBOL_GPL net/ipv6/esp6 0xb54ee9fc esp6_output_head +EXPORT_SYMBOL_GPL net/ipv6/esp6 0xd37d43f6 esp6_output_tail +EXPORT_SYMBOL_GPL net/ipv6/esp6 0xe27d8b58 esp6_input_done2 +EXPORT_SYMBOL_GPL net/ipv6/ip6_tunnel 0x766a9499 ip6_tnl_rcv_ctl +EXPORT_SYMBOL_GPL net/ipv6/ip6_tunnel 0x8c9b620a ip6_tnl_xmit_ctl +EXPORT_SYMBOL_GPL net/ipv6/ip6_tunnel 0xe43d64b4 ip6_tnl_encap_setup +EXPORT_SYMBOL_GPL net/ipv6/netfilter/ip6_tables 0x7d07cd0a ip6t_alloc_initial_table +EXPORT_SYMBOL_GPL net/ipv6/netfilter/nf_defrag_ipv6 0x84b6e97d nf_ct_frag6_gather +EXPORT_SYMBOL_GPL net/ipv6/netfilter/nf_defrag_ipv6 0xcbb0264a nf_defrag_ipv6_enable +EXPORT_SYMBOL_GPL net/ipv6/netfilter/nf_dup_ipv6 0xeaceef4b nf_dup_ipv6 +EXPORT_SYMBOL_GPL net/ipv6/netfilter/nf_reject_ipv6 0x0a2461a2 nf_reject_ip6hdr_put +EXPORT_SYMBOL_GPL net/ipv6/netfilter/nf_reject_ipv6 0x103419f9 nf_reject_ip6_tcphdr_put +EXPORT_SYMBOL_GPL net/ipv6/netfilter/nf_reject_ipv6 0x1c8fa1fb nf_reject_ip6_tcphdr_get +EXPORT_SYMBOL_GPL net/ipv6/netfilter/nf_reject_ipv6 0x2f21bed9 nf_send_reset6 +EXPORT_SYMBOL_GPL net/ipv6/netfilter/nf_reject_ipv6 0x7b7c7b39 nf_send_unreach6 +EXPORT_SYMBOL_GPL net/ipv6/netfilter/nf_socket_ipv6 0x1987e545 nf_sk_lookup_slow_v6 +EXPORT_SYMBOL_GPL net/ipv6/netfilter/nf_tproxy_ipv6 0x00c1240b nf_tproxy_laddr6 +EXPORT_SYMBOL_GPL net/ipv6/netfilter/nf_tproxy_ipv6 0x6abe058a nf_tproxy_get_sock_v6 +EXPORT_SYMBOL_GPL net/ipv6/netfilter/nf_tproxy_ipv6 0x8e5c4c8a nf_tproxy_handle_time_wait6 +EXPORT_SYMBOL_GPL net/ipv6/netfilter/nft_fib_ipv6 0x0de55457 nft_fib6_eval +EXPORT_SYMBOL_GPL net/ipv6/netfilter/nft_fib_ipv6 0x8c067fd1 nft_fib6_eval_type +EXPORT_SYMBOL_GPL net/l2tp/l2tp_core 0x044b8fc9 l2tp_tunnel_get_nth +EXPORT_SYMBOL_GPL net/l2tp/l2tp_core 0x0837aa62 l2tp_session_get_nth +EXPORT_SYMBOL_GPL net/l2tp/l2tp_core 0x197d8943 l2tp_tunnel_create +EXPORT_SYMBOL_GPL net/l2tp/l2tp_core 0x305e3bb8 l2tp_tunnel_get +EXPORT_SYMBOL_GPL net/l2tp/l2tp_core 0x31d12831 l2tp_session_create +EXPORT_SYMBOL_GPL net/l2tp/l2tp_core 0x3c916968 l2tp_session_set_header_len +EXPORT_SYMBOL_GPL net/l2tp/l2tp_core 0x4f833ae4 l2tp_session_get +EXPORT_SYMBOL_GPL net/l2tp/l2tp_core 0x558b8459 __l2tp_session_unhash +EXPORT_SYMBOL_GPL net/l2tp/l2tp_core 0x6280b69a l2tp_session_get_by_ifname +EXPORT_SYMBOL_GPL net/l2tp/l2tp_core 0x767b3a8a l2tp_session_register +EXPORT_SYMBOL_GPL net/l2tp/l2tp_core 0xba92195d l2tp_xmit_skb +EXPORT_SYMBOL_GPL net/l2tp/l2tp_core 0xc20108ec l2tp_tunnel_register +EXPORT_SYMBOL_GPL net/l2tp/l2tp_core 0xcbd8fc7a l2tp_session_delete +EXPORT_SYMBOL_GPL net/l2tp/l2tp_core 0xd204c98b l2tp_tunnel_get_session +EXPORT_SYMBOL_GPL net/l2tp/l2tp_core 0xd67bdefa l2tp_session_free +EXPORT_SYMBOL_GPL net/l2tp/l2tp_core 0xe52ab82f l2tp_tunnel_delete +EXPORT_SYMBOL_GPL net/l2tp/l2tp_core 0xeb2a8378 l2tp_udp_encap_recv +EXPORT_SYMBOL_GPL net/l2tp/l2tp_netlink 0x337f2432 l2tp_nl_unregister_ops +EXPORT_SYMBOL_GPL net/l2tp/l2tp_netlink 0x873c8cc3 l2tp_nl_register_ops +EXPORT_SYMBOL_GPL net/mac80211/mac80211 0x1b4eced3 ieee80211_gtk_rekey_add +EXPORT_SYMBOL_GPL net/mac80211/mac80211 0x24b2fda5 ieee80211_ready_on_channel +EXPORT_SYMBOL_GPL net/mac80211/mac80211 0x2575a375 ieee80211_request_smps +EXPORT_SYMBOL_GPL net/mac80211/mac80211 0x2a21b915 ieee80211_update_mu_groups +EXPORT_SYMBOL_GPL net/mac80211/mac80211 0x5250cf98 ieee80211_tkip_add_iv +EXPORT_SYMBOL_GPL net/mac80211/mac80211 0x571db184 ieee80211_calc_rx_airtime +EXPORT_SYMBOL_GPL net/mac80211/mac80211 0x8bcabca0 ieee80211_gtk_rekey_notify +EXPORT_SYMBOL_GPL net/mac80211/mac80211 0x901b9424 ieee80211_iterate_interfaces +EXPORT_SYMBOL_GPL net/mac80211/mac80211 0x91076b00 ieee80211_iter_chan_contexts_atomic +EXPORT_SYMBOL_GPL net/mac80211/mac80211 0x98ceb04f ieee80211_resume_disconnect +EXPORT_SYMBOL_GPL net/mac80211/mac80211 0xa1247034 ieee80211_remove_key +EXPORT_SYMBOL_GPL net/mac80211/mac80211 0xa1cb7862 ieee80211_iterate_active_interfaces_atomic +EXPORT_SYMBOL_GPL net/mac80211/mac80211 0xb867ced6 ieee80211_iterate_active_interfaces_rtnl +EXPORT_SYMBOL_GPL net/mac80211/mac80211 0xb941f629 ieee80211_iterate_stations_atomic +EXPORT_SYMBOL_GPL net/mac80211/mac80211 0xc58ad4cd ieee80211_find_sta_by_ifaddr +EXPORT_SYMBOL_GPL net/mac80211/mac80211 0xc871978f ieee80211_calc_tx_airtime +EXPORT_SYMBOL_GPL net/mac80211/mac80211 0xcfe39902 ieee80211_vif_to_wdev +EXPORT_SYMBOL_GPL net/mac80211/mac80211 0xd7beb893 ieee80211_ave_rssi +EXPORT_SYMBOL_GPL net/mac80211/mac80211 0xd8e09da4 ieee80211_set_key_rx_seq +EXPORT_SYMBOL_GPL net/mac80211/mac80211 0xecd9de97 ieee80211_remain_on_channel_expired +EXPORT_SYMBOL_GPL net/mac80211/mac80211 0xf0cd4724 wdev_to_ieee80211_vif +EXPORT_SYMBOL_GPL net/mpls/mpls_router 0x88d100b1 mpls_pkt_too_big +EXPORT_SYMBOL_GPL net/mpls/mpls_router 0xce23940a mpls_dev_mtu +EXPORT_SYMBOL_GPL net/mpls/mpls_router 0xd0a606c5 nla_put_labels +EXPORT_SYMBOL_GPL net/mpls/mpls_router 0xe413b0a4 nla_get_labels +EXPORT_SYMBOL_GPL net/mpls/mpls_router 0xeff44074 mpls_output_possible +EXPORT_SYMBOL_GPL net/mpls/mpls_router 0xf826da9f mpls_stats_inc_outucastpkts +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0x0a5befcd ip_set_init_comment +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0x22d966c6 ip_set_range_to_cidr +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0x3412ee14 ip_set_put_extensions +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0x34721b8c ip_set_get_extensions +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0x397f6231 ip_set_free +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0x50d634b8 ip_set_get_ip4_port +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0x51b9c3c0 ip_set_del +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0x51cd6370 ip_set_type_register +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0x69b66eae ip_set_get_ip6_port +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0x7924b6de ip_set_hostmask_map +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0x7c3a539e ip_set_test +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0x7e2a663e ip_set_put_flags +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0x81fff2d1 ip_set_netmask_map +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0x8974acae ip_set_match_extensions +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0x977652fd ip_set_get_byname +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 0xa3829f39 ip_set_type_unregister +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0xa82b6274 ip_set_nfnl_put +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0xb72c619d ip_set_add +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0xbb7a70ce ip_set_put_byindex +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0xc884d3a7 ip_set_name_byindex +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0xdf9c20fa ip_set_extensions +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0xe17d2960 ip_set_nfnl_get_byindex +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0xf3b4d4ae ip_set_alloc +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0xfb2bc16d ip_set_elem_len +EXPORT_SYMBOL_GPL net/netfilter/ipvs/ip_vs 0x15112f3f ip_vs_conn_out_get_proto +EXPORT_SYMBOL_GPL net/netfilter/ipvs/ip_vs 0xe5c720ac ip_vs_conn_in_get_proto +EXPORT_SYMBOL_GPL net/netfilter/ipvs/ip_vs 0xf89a8f3a register_ip_vs_pe +EXPORT_SYMBOL_GPL net/netfilter/ipvs/ip_vs 0xf8fc76ff unregister_ip_vs_pe +EXPORT_SYMBOL_GPL net/netfilter/nf_conncount 0x38cc149e nf_conncount_init +EXPORT_SYMBOL_GPL net/netfilter/nf_conncount 0x3ff55ad3 nf_conncount_cache_free +EXPORT_SYMBOL_GPL net/netfilter/nf_conncount 0x4f3fb034 nf_conncount_add +EXPORT_SYMBOL_GPL net/netfilter/nf_conncount 0x8c4cb9c3 nf_conncount_list_init +EXPORT_SYMBOL_GPL net/netfilter/nf_conncount 0xb7195bb5 nf_conncount_gc_list +EXPORT_SYMBOL_GPL net/netfilter/nf_conncount 0xee02405f nf_conncount_count +EXPORT_SYMBOL_GPL net/netfilter/nf_conncount 0xf884f8f0 nf_conncount_destroy +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x00543a10 nf_ct_helper_expectfn_unregister +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x048e2599 nf_ct_helper_expectfn_register +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x072d7aaf nf_ct_get_tuplepr +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x09045919 nf_ct_expect_find_get +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x0977f3fd nf_ct_expect_iterate_net +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x0a4ba5ee nf_conntrack_free +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x0bc00f80 nf_nat_helper_try_module_get +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x114f2035 nf_conntrack_hash_check_insert +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x198ccfb3 nf_ct_bridge_unregister +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x1d6609cf nf_ct_seqadj_init +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x204ad990 nf_ct_helper_expectfn_find_by_name +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x2057f42b nf_ct_helper_log +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x215b9814 nf_conntrack_helper_put +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x25d385a8 nf_conntrack_eventmask_report +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x2706051e nf_ct_kill_acct +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x272d704a nf_ct_acct_add +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 0x2af26719 nf_conntrack_helpers_register +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x2bc604a0 nf_conntrack_alloc +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x325718b2 nf_ct_delete +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x3b6648a6 nf_ct_untimeout +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x40395713 nf_ct_destroy_timeout +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x42a79bb9 nf_ct_expect_alloc +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x42f0a7e2 nf_ct_expect_unregister_notifier +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x456fd77d nf_conntrack_helpers_unregister +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x50f594d3 nf_ct_deliver_cached_events +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x548ac595 nf_ct_expect_init +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x60665991 nf_ct_extend_register +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x66067012 nf_ct_expect_register_notifier +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x693c3961 nf_ct_helper_hash +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x6c930683 __nf_ct_refresh_acct +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x700754ae nf_connlabels_put +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x70687057 nf_ct_bridge_register +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x73942529 nf_ct_unlink_expect_report +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x7683b3c3 nf_l4proto_log_invalid +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x76c0993e nf_ct_remove_expect +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x76ca5ec2 nf_connlabels_get +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x7809ab0b nf_conntrack_helper_register +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x7a57ab3b nf_ct_seq_adjust +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x7b452ad2 nf_conntrack_unregister_notifier +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x7da80b2e nf_ct_port_nla_policy +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x7e3ce42b nf_ct_expect_put +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x7eb247e8 nf_conntrack_find_get +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x85348f57 nf_ct_timeout_find_get_hook +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x85a367fe __nf_ct_expect_find +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x87101d9e nf_ct_gre_keymap_destroy +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x88692826 nf_conntrack_tuple_taken +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x8c6814d1 nf_ct_tmpl_alloc +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x8d1036c3 __nf_conntrack_helper_find +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x8ffe7e89 nf_conntrack_htable_size +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x9052eecb nf_conntrack_helper_try_module_get +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x9461a42d nf_conntrack_in +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x94cd341a nf_ct_netns_get +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x953f77af nf_ct_netns_put +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x99dad1e6 nf_ct_l4proto_find +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x9adb7399 nf_conntrack_expect_lock +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x9be884ad nf_ct_gre_keymap_add +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x9d7893a0 nf_ct_expect_related_report +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x9eb6b9ad nf_ct_helper_expectfn_find_by_symbol +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xa722d39f nf_ct_tmpl_free +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xab558b1d nf_ct_extend_unregister +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xada2dd6e nf_ct_get_id +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xaf0847f0 nf_conntrack_locks +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xaf745658 nf_ct_seqadj_set +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xafbd6cf5 nf_ct_port_nlattr_to_tuple +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xb1c0390e nf_ct_iterate_cleanup_net +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xb67f1c65 nf_nat_helper_unregister +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xb7061044 nf_ct_helper_init +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xb82ab616 nf_ct_unexpect_related +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xb8ba2545 nf_conntrack_alter_reply +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xb93b877c nf_confirm +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xc18ac88d nf_ct_expect_hsize +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xc31e1f61 nf_ct_expect_iterate_destroy +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xc40f284c nf_ct_helper_hsize +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xc467e4a9 nf_ct_helper_ext_add +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xc6c617a1 nf_ct_seq_offset +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xcf655b6c nf_nat_helper_put +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xd505c3e0 nf_ct_port_nlattr_tuple_size +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xd5abd0f8 nf_ct_iterate_destroy +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xda20f588 nf_ct_remove_expectations +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xdb5b578b nf_connlabels_replace +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xdba7326b nf_conntrack_lock +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xdd14eabd nf_ct_l4proto_log_invalid +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xdf1ccd30 nf_nat_helper_register +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xe2d08a76 nf_ct_unconfirmed_destroy +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xe72d5932 nf_conntrack_register_notifier +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xeaf29331 nf_ct_set_timeout +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xec54466b nf_conntrack_helper_unregister +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xec8beba6 nf_ct_expect_hash +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xefcf24c9 nf_ct_tcp_seqadj_set +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xf03f05e6 __nf_conntrack_confirm +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xf0af1cb3 __nf_ct_try_assign_helper +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xf2c1d574 nf_ct_port_tuple_to_nlattr +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xf38bcdf3 nf_conntrack_max +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xf930e116 nf_ct_timeout_put_hook +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xfe731af8 nf_ct_invert_tuple +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_amanda 0x8effc2e3 nf_nat_amanda_hook +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_broadcast 0x346cc405 nf_conntrack_broadcast_help +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_ftp 0x0d9de47a nf_nat_ftp_hook +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_h323 0x0803d116 nat_callforwarding_hook +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_h323 0x13bd7fee nat_t120_hook +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_h323 0x4fb0d8c0 set_h225_addr_hook +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_h323 0x5eee0d7c set_sig_addr_hook +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_h323 0x62295f1a nat_rtp_rtcp_hook +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_h323 0x739ead1a nat_h245_hook +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_h323 0x80340f3f set_ras_addr_hook +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_h323 0x9562d1ba set_h245_addr_hook +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_h323 0xbff10660 get_h225_addr +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_h323 0xcb8e7dc3 nat_q931_hook +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_irc 0x97f7caa0 nf_nat_irc_hook +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_pptp 0x2c33b3f4 nf_nat_pptp_hook_exp_gre +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_pptp 0x812589d3 nf_nat_pptp_hook_outbound +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_pptp 0x97124908 nf_nat_pptp_hook_inbound +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_pptp 0xafb4083d nf_nat_pptp_hook_expectfn +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_sip 0x0c9e5d20 ct_sip_parse_header_uri +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_sip 0x10d7df89 ct_sip_get_header +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_sip 0x473b01f6 ct_sip_parse_request +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_sip 0x481b6148 ct_sip_parse_address_param +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_sip 0x49daa39c ct_sip_parse_numerical_param +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_sip 0x6b5600a8 ct_sip_get_sdp_header +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_sip 0xb1c710b4 nf_nat_sip_hooks +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_snmp 0xf528118f nf_nat_snmp_hook +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_tftp 0xf4bd6d24 nf_nat_tftp_hook +EXPORT_SYMBOL_GPL net/netfilter/nf_dup_netdev 0x67a5716b nf_fwd_netdev_egress +EXPORT_SYMBOL_GPL net/netfilter/nf_dup_netdev 0x8a8cc7ca nft_fwd_dup_netdev_offload +EXPORT_SYMBOL_GPL net/netfilter/nf_dup_netdev 0xfada8cba nf_dup_netdev_egress +EXPORT_SYMBOL_GPL net/netfilter/nf_flow_table 0x1f191fb8 flow_offload_free +EXPORT_SYMBOL_GPL net/netfilter/nf_flow_table 0x21e88268 flow_offload_route_init +EXPORT_SYMBOL_GPL net/netfilter/nf_flow_table 0x30736ff0 flow_offload_teardown +EXPORT_SYMBOL_GPL net/netfilter/nf_flow_table 0x34be4e37 nf_flow_table_offload_setup +EXPORT_SYMBOL_GPL net/netfilter/nf_flow_table 0x4b2ea282 flow_offload_refresh +EXPORT_SYMBOL_GPL net/netfilter/nf_flow_table 0x5336b1e2 nf_flow_dnat_port +EXPORT_SYMBOL_GPL net/netfilter/nf_flow_table 0x64060724 nf_flow_offload_ipv6_hook +EXPORT_SYMBOL_GPL net/netfilter/nf_flow_table 0x642a8749 flow_offload_add +EXPORT_SYMBOL_GPL net/netfilter/nf_flow_table 0x8a32b20a nf_flow_table_free +EXPORT_SYMBOL_GPL net/netfilter/nf_flow_table 0xa83ca25d flow_offload_lookup +EXPORT_SYMBOL_GPL net/netfilter/nf_flow_table 0xa8cfb504 nf_flow_offload_ip_hook +EXPORT_SYMBOL_GPL net/netfilter/nf_flow_table 0xb78b97cc nf_flow_table_init +EXPORT_SYMBOL_GPL net/netfilter/nf_flow_table 0xc811c11b flow_offload_alloc +EXPORT_SYMBOL_GPL net/netfilter/nf_flow_table 0xcef1b57d nf_flow_rule_route_ipv6 +EXPORT_SYMBOL_GPL net/netfilter/nf_flow_table 0xd0460974 nf_flow_rule_route_ipv4 +EXPORT_SYMBOL_GPL net/netfilter/nf_flow_table 0xdab82834 nf_flow_snat_port +EXPORT_SYMBOL_GPL net/netfilter/nf_flow_table 0xdcc713ac nf_flow_table_cleanup +EXPORT_SYMBOL_GPL net/netfilter/nf_log_common 0x1b3bef79 nf_log_dump_tcp_header +EXPORT_SYMBOL_GPL net/netfilter/nf_log_common 0x745727c6 nf_log_dump_udp_header +EXPORT_SYMBOL_GPL net/netfilter/nf_log_common 0x7af7ff59 nf_log_l2packet +EXPORT_SYMBOL_GPL net/netfilter/nf_log_common 0x8395a004 nf_log_dump_vlan +EXPORT_SYMBOL_GPL net/netfilter/nf_log_common 0x9473038e nf_log_dump_packet_common +EXPORT_SYMBOL_GPL net/netfilter/nf_log_common 0xb0d1ef68 nf_log_dump_sk_uid_gid +EXPORT_SYMBOL_GPL net/netfilter/nf_nat 0x0ef4f0f9 nf_nat_redirect_ipv4 +EXPORT_SYMBOL_GPL net/netfilter/nf_nat 0x14ef93eb nf_nat_redirect_ipv6 +EXPORT_SYMBOL_GPL net/netfilter/nf_nat 0x2af59639 nf_nat_masquerade_ipv4 +EXPORT_SYMBOL_GPL net/netfilter/nf_nat 0x31f868ba nf_nat_packet +EXPORT_SYMBOL_GPL net/netfilter/nf_nat 0x3bc17c49 nf_nat_masquerade_inet_register_notifiers +EXPORT_SYMBOL_GPL net/netfilter/nf_nat 0x3e0d2284 nf_nat_ipv6_unregister_fn +EXPORT_SYMBOL_GPL net/netfilter/nf_nat 0x530431d8 nf_nat_inet_fn +EXPORT_SYMBOL_GPL net/netfilter/nf_nat 0x6a79eab1 nf_nat_ipv4_register_fn +EXPORT_SYMBOL_GPL net/netfilter/nf_nat 0x6b18eae1 nf_nat_ipv6_register_fn +EXPORT_SYMBOL_GPL net/netfilter/nf_nat 0x84b67eb1 nf_nat_ipv4_unregister_fn +EXPORT_SYMBOL_GPL net/netfilter/nf_nat 0x8d7f8f9b nf_nat_alloc_null_binding +EXPORT_SYMBOL_GPL net/netfilter/nf_nat 0x960830a0 nf_ct_nat_ext_add +EXPORT_SYMBOL_GPL net/netfilter/nf_nat 0xb37a297b nf_nat_inet_register_fn +EXPORT_SYMBOL_GPL net/netfilter/nf_nat 0xb7ce0b7c nf_nat_inet_unregister_fn +EXPORT_SYMBOL_GPL net/netfilter/nf_nat 0xbe9c7fd0 nf_nat_icmpv6_reply_translation +EXPORT_SYMBOL_GPL net/netfilter/nf_nat 0xbf129688 nf_nat_masquerade_ipv6 +EXPORT_SYMBOL_GPL net/netfilter/nf_nat 0xd9c25654 nf_nat_masquerade_inet_unregister_notifiers +EXPORT_SYMBOL_GPL net/netfilter/nf_nat 0xf29b0d67 nf_nat_icmp_reply_translation +EXPORT_SYMBOL_GPL net/netfilter/nf_synproxy_core 0x1f099794 synproxy_init_timestamp_cookie +EXPORT_SYMBOL_GPL net/netfilter/nf_synproxy_core 0x2c6ff019 nf_synproxy_ipv6_init +EXPORT_SYMBOL_GPL net/netfilter/nf_synproxy_core 0x4d06a41f nf_synproxy_ipv4_fini +EXPORT_SYMBOL_GPL net/netfilter/nf_synproxy_core 0x5c9f8dbb synproxy_send_client_synack_ipv6 +EXPORT_SYMBOL_GPL net/netfilter/nf_synproxy_core 0x975b4768 synproxy_send_client_synack +EXPORT_SYMBOL_GPL net/netfilter/nf_synproxy_core 0xa844a4d5 synproxy_recv_client_ack +EXPORT_SYMBOL_GPL net/netfilter/nf_synproxy_core 0xac20f9ce nf_synproxy_ipv6_fini +EXPORT_SYMBOL_GPL net/netfilter/nf_synproxy_core 0xbaed8619 synproxy_parse_options +EXPORT_SYMBOL_GPL net/netfilter/nf_synproxy_core 0xbafa2aa2 ipv6_synproxy_hook +EXPORT_SYMBOL_GPL net/netfilter/nf_synproxy_core 0xca9fc082 synproxy_net_id +EXPORT_SYMBOL_GPL net/netfilter/nf_synproxy_core 0xcd49adc8 nf_synproxy_ipv4_init +EXPORT_SYMBOL_GPL net/netfilter/nf_synproxy_core 0xe1ac0b95 ipv4_synproxy_hook +EXPORT_SYMBOL_GPL net/netfilter/nf_synproxy_core 0xf569af52 synproxy_recv_client_ack_ipv6 +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0x04c26b4c nft_chain_validate_hooks +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0x07ace124 nft_register_flowtable_type +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0x0939fd5e nft_set_lookup_global +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0x16157c56 nft_validate_register_store +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0x1ca0d10e nft_obj_notify +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0x1cf23add nft_meta_set_dump +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0x1e6b75a3 nft_parse_register +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0x25beb798 nft_unregister_flowtable_type +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0x29539b23 nf_tables_deactivate_set +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0x3251d762 nf_tables_trans_destroy_flush_work +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0x41b71e65 nft_trace_enabled +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0x4228f150 nft_unregister_expr +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0x4e620ba6 nft_register_obj +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0x502eed3d nft_meta_policy +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0x5a973b5c nf_tables_destroy_set +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0x5c53a43c nft_flowtable_lookup +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0x62e27226 nft_dump_register +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0x6839e39f nft_do_chain +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0x69909356 nft_data_dump +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0x71ac0d98 nf_tables_bind_set +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0x74bee704 nft_meta_get_init +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0x7692821f nft_data_release +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0x85430a76 nft_validate_register_load +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0x86422702 nft_set_elem_destroy +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0x8bb9de54 nft_meta_get_dump +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0x9c364e88 nft_meta_set_validate +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0x9c551cf4 nft_unregister_chain_type +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0xa3a86dce __nft_release_basechain +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0xb78698f1 nft_meta_get_eval +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0xbe811175 nft_chain_validate_dependency +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0xc0f8de80 nft_unregister_obj +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0xc27ad514 nft_obj_lookup +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0xcf26a405 nft_meta_set_destroy +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0xd242ea1c nft_register_chain_type +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0xd39902fc nf_tables_deactivate_flowtable +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0xd4499738 nft_chain_validate +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0xd58ca7a6 nft_meta_set_init +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0xd72fbc1d nft_register_expr +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0xd8d0e8a4 nft_data_init +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0xde57b5f5 nft_parse_u32_check +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0xe8d7a1be nft_meta_set_eval +EXPORT_SYMBOL_GPL net/netfilter/nfnetlink 0x097e02a2 nfnetlink_set_err +EXPORT_SYMBOL_GPL net/netfilter/nfnetlink 0x5ce3b588 nfnl_lock +EXPORT_SYMBOL_GPL net/netfilter/nfnetlink 0x6d12ef7d nfnetlink_subsys_register +EXPORT_SYMBOL_GPL net/netfilter/nfnetlink 0x9071d988 nfnetlink_has_listeners +EXPORT_SYMBOL_GPL net/netfilter/nfnetlink 0xd124c67b nfnetlink_send +EXPORT_SYMBOL_GPL net/netfilter/nfnetlink 0xd6577a1d nfnetlink_unicast +EXPORT_SYMBOL_GPL net/netfilter/nfnetlink 0xdb065657 nfnl_unlock +EXPORT_SYMBOL_GPL net/netfilter/nfnetlink 0xfe4d9dd1 nfnetlink_subsys_unregister +EXPORT_SYMBOL_GPL net/netfilter/nfnetlink_acct 0xa59f4521 nfnl_acct_find_get +EXPORT_SYMBOL_GPL net/netfilter/nfnetlink_acct 0xa9be1438 nfnl_acct_update +EXPORT_SYMBOL_GPL net/netfilter/nfnetlink_acct 0xbecf5d14 nfnl_acct_put +EXPORT_SYMBOL_GPL net/netfilter/nfnetlink_acct 0xcedf228f nfnl_acct_overquota +EXPORT_SYMBOL_GPL net/netfilter/nfnetlink_osf 0x35eff5e0 nf_osf_fingers +EXPORT_SYMBOL_GPL net/netfilter/nfnetlink_osf 0x7775784f nf_osf_find +EXPORT_SYMBOL_GPL net/netfilter/nfnetlink_osf 0x9eb84cfc nf_osf_match +EXPORT_SYMBOL_GPL net/netfilter/nft_fib 0x52ba5f25 nft_fib_init +EXPORT_SYMBOL_GPL net/netfilter/nft_fib 0x65f2573b nft_fib_store_result +EXPORT_SYMBOL_GPL net/netfilter/nft_fib 0xa204f272 nft_fib_dump +EXPORT_SYMBOL_GPL net/netfilter/nft_fib 0xc8eee7c0 nft_fib_validate +EXPORT_SYMBOL_GPL net/netfilter/nft_reject 0x105b07e2 nft_reject_policy +EXPORT_SYMBOL_GPL net/netfilter/nft_reject 0x1cec7dc3 nft_reject_validate +EXPORT_SYMBOL_GPL net/netfilter/nft_reject 0x1de558c1 nft_reject_icmpv6_code +EXPORT_SYMBOL_GPL net/netfilter/nft_reject 0x694da2be nft_reject_init +EXPORT_SYMBOL_GPL net/netfilter/nft_reject 0xbb8f7500 nft_reject_dump +EXPORT_SYMBOL_GPL net/netfilter/nft_reject 0xe2c84666 nft_reject_icmp_code +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0x02160e71 xt_proto_fini +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0x04e27719 xt_compat_flush_offsets +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0x076876b3 xt_compat_target_offset +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0x0f29e472 xt_register_table +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0x24c8e482 xt_copy_counters_from_user +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0x2843f17f xt_compat_target_to_user +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0x34c3829c xt_request_find_target +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0x34fdfef7 xt_target_to_user +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0x39b6f1c3 xt_find_table_lock +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0x3a45b1e1 xt_compat_match_from_user +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0x3ba0915f xt_request_find_table_lock +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0x4945856f xt_check_match +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0x4f8a3990 xt_proto_init +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0x5826d27f xt_unregister_table +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0x68ae786a xt_table_unlock +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0x78459660 xt_check_target +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 0x818fc554 xt_compat_match_to_user +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0x823edea5 xt_compat_add_offset +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0x8d4605e2 xt_request_find_match +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0x978db24d xt_match_to_user +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0x9c995c69 xt_percpu_counter_alloc +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0xa7c94f1d xt_compat_lock +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0xad960d75 xt_replace_table +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0xbb1d9273 xt_hook_ops_alloc +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0xbfacb837 xt_percpu_counter_free +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0xc7fae024 xt_compat_calc_jump +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 0xee796969 xt_compat_target_from_user +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0xfceff575 xt_compat_match_offset +EXPORT_SYMBOL_GPL net/netfilter/xt_RATEEST 0x3afed12e xt_rateest_put +EXPORT_SYMBOL_GPL net/netfilter/xt_RATEEST 0x8f314ee5 xt_rateest_lookup +EXPORT_SYMBOL_GPL net/nfc/nci/nci_spi 0x62d863d1 nci_spi_allocate_spi +EXPORT_SYMBOL_GPL net/nfc/nci/nci_spi 0x9daa8ab9 nci_spi_send +EXPORT_SYMBOL_GPL net/nfc/nci/nci_spi 0xb780733e nci_spi_read +EXPORT_SYMBOL_GPL net/nfc/nci/nci_uart 0x63a8eb77 nci_uart_unregister +EXPORT_SYMBOL_GPL net/nfc/nci/nci_uart 0x9d14fdba nci_uart_register +EXPORT_SYMBOL_GPL net/nfc/nci/nci_uart 0xdf5cc32b nci_uart_set_config +EXPORT_SYMBOL_GPL net/nsh/nsh 0x2eea6afb nsh_pop +EXPORT_SYMBOL_GPL net/nsh/nsh 0x7f2ba5b8 nsh_push +EXPORT_SYMBOL_GPL net/openvswitch/openvswitch 0x2cd32ece ovs_netdev_tunnel_destroy +EXPORT_SYMBOL_GPL net/openvswitch/openvswitch 0x2dbc3fa8 ovs_netdev_link +EXPORT_SYMBOL_GPL net/openvswitch/openvswitch 0x45a7fb07 ovs_vport_alloc +EXPORT_SYMBOL_GPL net/openvswitch/openvswitch 0x7cfe907c ovs_vport_ops_unregister +EXPORT_SYMBOL_GPL net/openvswitch/openvswitch 0x97fc0e27 ovs_vport_free +EXPORT_SYMBOL_GPL net/openvswitch/openvswitch 0xba8bcfa9 __ovs_vport_ops_register +EXPORT_SYMBOL_GPL net/psample/psample 0x0469f261 psample_group_take +EXPORT_SYMBOL_GPL net/psample/psample 0x6e2be338 psample_sample_packet +EXPORT_SYMBOL_GPL net/psample/psample 0x8e5ac620 psample_group_get +EXPORT_SYMBOL_GPL net/psample/psample 0xd279c315 psample_group_put +EXPORT_SYMBOL_GPL net/qrtr/ns 0x636a2832 qrtr_ns_init +EXPORT_SYMBOL_GPL net/qrtr/ns 0x8d25501f qrtr_ns_remove +EXPORT_SYMBOL_GPL net/qrtr/qrtr 0x5f792615 qrtr_endpoint_register +EXPORT_SYMBOL_GPL net/qrtr/qrtr 0xaca43c26 qrtr_endpoint_post +EXPORT_SYMBOL_GPL net/qrtr/qrtr 0xb5e553c9 qrtr_endpoint_unregister +EXPORT_SYMBOL_GPL net/rds/rds 0x00a467af rds_wq +EXPORT_SYMBOL_GPL net/rds/rds 0x00aa5e1b rds_info_register_func +EXPORT_SYMBOL_GPL net/rds/rds 0x15ce9764 rds_message_put +EXPORT_SYMBOL_GPL net/rds/rds 0x2b0d543c rds_message_add_extension +EXPORT_SYMBOL_GPL net/rds/rds 0x2d356b4e rds_trans_register +EXPORT_SYMBOL_GPL net/rds/rds 0x36087aa4 rds_stats +EXPORT_SYMBOL_GPL net/rds/rds 0x37e86fcc rds_conn_create +EXPORT_SYMBOL_GPL net/rds/rds 0x3c50efcd rds_recv_incoming +EXPORT_SYMBOL_GPL net/rds/rds 0x45a4781e rds_addr_cmp +EXPORT_SYMBOL_GPL net/rds/rds 0x519e8d0a rds_send_drop_acked +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 0x64fbe3bb rds_conn_create_outgoing +EXPORT_SYMBOL_GPL net/rds/rds 0x6663b448 rds_message_addref +EXPORT_SYMBOL_GPL net/rds/rds 0x68609f24 rds_conn_drop +EXPORT_SYMBOL_GPL net/rds/rds 0x6fd9b1a5 rds_conn_path_connect_if_down +EXPORT_SYMBOL_GPL net/rds/rds 0x75e26415 rds_conn_destroy +EXPORT_SYMBOL_GPL net/rds/rds 0x7b399e66 rds_page_remainder_alloc +EXPORT_SYMBOL_GPL net/rds/rds 0x8458ae38 rds_send_path_drop_acked +EXPORT_SYMBOL_GPL net/rds/rds 0x85e4e520 rds_stats_info_copy +EXPORT_SYMBOL_GPL net/rds/rds 0x94bb4d68 rds_for_each_conn_info +EXPORT_SYMBOL_GPL net/rds/rds 0x996a726c rds_conn_path_drop +EXPORT_SYMBOL_GPL net/rds/rds 0x9f586a26 rds_connect_path_complete +EXPORT_SYMBOL_GPL net/rds/rds 0xaa3fc8dc rds_send_path_reset +EXPORT_SYMBOL_GPL net/rds/rds 0xab247b7e rds_send_ping +EXPORT_SYMBOL_GPL net/rds/rds 0xafd79f1c rds_atomic_send_complete +EXPORT_SYMBOL_GPL net/rds/rds 0xb5718d3b rds_inc_init +EXPORT_SYMBOL_GPL net/rds/rds 0xb9b84ef1 rds_send_xmit +EXPORT_SYMBOL_GPL net/rds/rds 0xc2dab779 rds_info_copy +EXPORT_SYMBOL_GPL net/rds/rds 0xc553a1e5 rds_info_deregister_func +EXPORT_SYMBOL_GPL net/rds/rds 0xc9db1943 rds_inc_path_init +EXPORT_SYMBOL_GPL net/rds/rds 0xd08f51b6 rds_connect_complete +EXPORT_SYMBOL_GPL net/rds/rds 0xd53691e5 rds_trans_unregister +EXPORT_SYMBOL_GPL net/rds/rds 0xdb95dab7 rds_conn_connect_if_down +EXPORT_SYMBOL_GPL net/rds/rds 0xef476817 rds_inc_put +EXPORT_SYMBOL_GPL net/rds/rds 0xef4a2e25 rds_message_unmapped +EXPORT_SYMBOL_GPL net/rds/rds 0xf142ddb3 rds_rdma_send_complete +EXPORT_SYMBOL_GPL net/rds/rds 0xfd22dd56 rds_cong_map_updated +EXPORT_SYMBOL_GPL net/sched/sch_pie 0x174fc74e pie_process_dequeue +EXPORT_SYMBOL_GPL net/sched/sch_pie 0x6ce9b467 pie_calculate_probability +EXPORT_SYMBOL_GPL net/sched/sch_pie 0x86f8d36b pie_drop_early +EXPORT_SYMBOL_GPL net/sched/sch_taprio 0x5fc3c6ed taprio_offload_free +EXPORT_SYMBOL_GPL net/sched/sch_taprio 0xa7f08102 taprio_offload_get +EXPORT_SYMBOL_GPL net/sctp/sctp 0x07818a8a sctp_transport_lookup_process +EXPORT_SYMBOL_GPL net/sctp/sctp 0x13b84143 sctp_get_sctp_info +EXPORT_SYMBOL_GPL net/sctp/sctp 0x512464fd sctp_for_each_endpoint +EXPORT_SYMBOL_GPL net/sctp/sctp 0xe8fce950 sctp_for_each_transport +EXPORT_SYMBOL_GPL net/smc/smc 0x0c9d2293 smcd_free_dev +EXPORT_SYMBOL_GPL net/smc/smc 0x34ec3966 smc_proto +EXPORT_SYMBOL_GPL net/smc/smc 0x3f73537d smcd_register_dev +EXPORT_SYMBOL_GPL net/smc/smc 0x4b003b22 smc_hash_sk +EXPORT_SYMBOL_GPL net/smc/smc 0x511152c6 smc_proto6 +EXPORT_SYMBOL_GPL net/smc/smc 0x56c7fc0f smc_unhash_sk +EXPORT_SYMBOL_GPL net/smc/smc 0x8b411728 smcd_alloc_dev +EXPORT_SYMBOL_GPL net/smc/smc 0xa026c261 smcd_handle_event +EXPORT_SYMBOL_GPL net/smc/smc 0xc7125eea smcd_unregister_dev +EXPORT_SYMBOL_GPL net/smc/smc 0xd87994eb smcd_handle_irq +EXPORT_SYMBOL_GPL net/sunrpc/auth_gss/auth_rpcgss 0x001cc140 svcauth_gss_flavor +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 0x66df518e svcauth_gss_register_pseudoflavor +EXPORT_SYMBOL_GPL net/sunrpc/auth_gss/auth_rpcgss 0xd74f7adf gss_mech_register +EXPORT_SYMBOL_GPL net/sunrpc/auth_gss/auth_rpcgss 0xd7673035 g_verify_token_header +EXPORT_SYMBOL_GPL net/sunrpc/auth_gss/auth_rpcgss 0xe0174aed gss_mech_unregister +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x0177ad3b rpc_destroy_pipe_data +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x05957424 xprt_unregister_transport +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x05d0d14b rpc_add_pipe_dir_object +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x05e807a9 xdr_encode_string +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x0633f448 svc_shutdown_net +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x065994f1 xdr_encode_opaque_fixed +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x09667522 xprt_disconnect_done +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x0f56e88b rpc_clnt_swap_activate +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x0ffd54f4 svc_xprt_names +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x1047f853 xdr_buf_subsegment +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x1090394f svc_xprt_copy_addrs +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x14905b2e rpcauth_unwrap_resp_decode +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x1675d52d xprt_alloc +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x177da678 cache_register_net +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x17fc0b7d sunrpc_init_cache_detail +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x19b235e0 rpc_prepare_reply_pages +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x1baf8ab0 rpc_call_async +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x1d614dec auth_domain_find +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x1d6a334e rpc_delay +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x1debaf56 svc_prepare_thread +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x1e119a79 rpcauth_get_pseudoflavor +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x1f2a9970 rpc_ntop +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x1fb72d57 svc_generic_rpcbind_set +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x204f574d rpc_localaddr +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x2099e719 auth_domain_put +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x2121b712 rpc_call_null +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x22bea220 rpc_free +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x234e2562 rpc_pipe_generic_upcall +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x235ba23d xdr_enter_page +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x23b98542 rpc_sleep_on_priority +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x24079486 rpcauth_unregister +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x24645b19 rpcauth_create +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x28aec631 rpc_clone_client +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x2919b156 xdr_decode_string_inplace +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x2b45fd30 svc_wake_up +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x2b8c7da4 svc_fill_symlink_pathname +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x2ba13237 xdr_commit_encode +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x2df1f9d3 svc_set_client +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x2ea6411a rpc_switch_client_transport +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x2f0c5aaf unix_domain_find +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x304a70c3 rpcauth_destroy_credcache +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x31a89d59 rpc_debug +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x31c286a8 svc_authenticate +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x34a842a9 rpc_proc_register +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x34d184de rpc_wake_up_status +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x34fae33a svc_encode_read_payload +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x35886628 sunrpc_cache_pipe_upcall_timeout +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x360009ee rpc_put_task_async +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x36da25ee rpc_shutdown_client +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x36f5220e xprt_release_rqst_cong +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x373c2676 rpc_max_payload +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x3816576c rpc_wake_up_first +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x3850e8e4 xdr_stream_decode_opaque_dup +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x387274ba xprt_request_get_cong +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x387e1639 rpc_pipefs_notifier_register +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x397c9400 rpc_clnt_xprt_switch_has_addr +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x3b877cdc xdr_reserve_space +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x3c87711d rpc_run_task +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x3f9a2b0b rpcauth_get_gssinfo +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x416cab92 svc_create +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x42d406a5 rpc_init_pipe_dir_object +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x438f3025 csum_partial_copy_to_xdr +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x443d6a60 sunrpc_destroy_cache_detail +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x4501b081 xdr_stream_decode_string_dup +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x453efa54 svc_pool_map +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x45f17807 svc_create_xprt +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x4684e092 xprt_pin_rqst +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x47ccf8f1 xprt_free +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x482502b3 xprt_release_xprt_cong +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x48661846 xdr_shift_buf +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x487017a5 xdr_init_decode_pages +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x4aecf825 svc_print_addr +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x4af10b82 rpc_task_release_transport +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x4afedab1 xprtiod_workqueue +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x4ca56139 xprt_reserve_xprt +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x4d806fb7 rpc_clnt_test_and_add_xprt +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x4da50b86 cache_seq_start_rcu +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x4dac77f0 xdr_encode_netobj +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x4debd5e5 svc_auth_register +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x4e88a155 xdr_read_pages +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x4e8e86f9 rpcauth_init_credcache +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x4e8f6ca7 sunrpc_net_id +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x4ea40a53 svc_bind +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x4f532879 rpc_task_timeout +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x4f7579c9 rpc_release_client +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x50e756fe svc_max_payload +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x513900f0 xdr_inline_decode +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x529521d0 rpc_pton +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x53445f68 nlm_debug +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x5399bce4 sunrpc_cache_pipe_upcall +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x539e5468 svc_create_pooled +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x54348727 svc_set_num_threads +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x5516e1bc rpc_create +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x5696b5c8 xprt_write_space +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x588153d0 put_rpccred +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x58a5ce8d xdr_buf_from_iov +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x5a45ba31 svc_auth_unregister +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x5cb80a00 svc_xprt_init +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x5f2d99b6 xdr_process_buf +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x6027ccc9 rpcauth_lookupcred +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x60cee8fd xprt_get +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x60f0e28b rpc_mkpipe_dentry +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x63287f6f auth_domain_lookup +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x66ed2439 rpc_destroy_wait_queue +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x69e4bc1c rpc_malloc +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x6a0b9182 rpc_init_pipe_dir_head +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x6b1c37b4 rpc_exit +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x6ca52736 rpc_count_iostats +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x6f2517bf xprt_force_disconnect +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x6f9eae33 svc_rqst_alloc +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x705d1dd5 xprt_reserve_xprt_cong +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x710b652b svc_seq_show +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 0x73211294 svc_fill_write_vector +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x74bebbbe svc_age_temp_xprts_now +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x75894d7e rpc_force_rebind +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x79c3771e rpc_set_connect_timeout +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x7bbba627 rpc_count_iostats_metrics +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x7c8e1ea8 cache_destroy_net +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x7ca66dcf rpc_clnt_setup_test_and_add_xprt +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x7cf99909 svcauth_unix_purge +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x7dcba72e svc_reg_xprt_class +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x7de53067 rpc_init_rtt +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x7e74cae1 write_bytes_to_xdr_buf +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x7fd73cfc svc_xprt_enqueue +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x804f7763 svc_xprt_do_enqueue +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x810d5aa8 svc_set_num_threads_sync +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x813637f3 svcauth_unix_set_client +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x81ad91e8 svc_sock_update_bufs +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x83b99f31 xprt_adjust_cwnd +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x84301237 rpc_sleep_on_timeout +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x844bf0eb xprt_unpin_rqst +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x852cb44e _copy_from_pages +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x872e9323 svc_proc_unregister +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x87a8d350 rpcauth_wrap_req_encode +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x884f49a8 xdr_write_pages +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x8884b24a xdr_decode_word +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x88a8b698 xdr_encode_array2 +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x8adcc02d rpc_max_bc_payload +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x8cb5ef0c rpc_call_sync +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x8d7bddb7 xprt_reconnect_delay +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x8e684db6 rpc_clnt_iterate_for_each_xprt +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x8f68f0e1 rpc_peeraddr +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x8f728b81 xprt_reconnect_backoff +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x8fc4de7e svc_find_xprt +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x8fed5a44 cache_unregister_net +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x913af4d6 xprt_wake_pending_tasks +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x93cc79ab rpc_bind_new_program +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x95122ab3 rpc_unlink +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x9572ed8f xprt_register_transport +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x9670b5a1 rpc_free_iostats +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x97616ce6 svc_addsock +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x99aee353 rpc_init_priority_wait_queue +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x9af38d32 rpc_find_or_alloc_pipe_dir_object +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x9bc2a060 sunrpc_cache_update +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x9ceb684a rpc_put_sb_net +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x9d35ea50 xprt_wait_for_reply_request_def +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x9d995d18 rpc_call_start +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x9eb9e27f xdr_terminate_string +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x9f446dd1 svc_process +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x9f9efedd rpc_clnt_xprt_switch_put +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x9fd5d23a sunrpc_cache_register_pipefs +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xa13acdb8 svc_pool_map_put +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xa31871dc xdr_stream_pos +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xa33ee743 rpc_setbufsize +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xa3a16d43 __rpc_wait_for_completion_task +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xa4f76da6 svc_generic_init_request +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xa6db2766 rpc_clone_client_set_auth +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xaa3e17e1 xprt_setup_backchannel +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xaa64c24a rpc_num_bc_slots +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xadcb2239 rpcauth_init_cred +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xaf478040 xdr_set_scratch_buffer +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xaf5bf6ef nfs_debug +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xb03402f3 xprt_complete_rqst +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xb12a8be1 rpc_wake_up_queued_task +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xb1d4324c cache_create_net +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xb2618008 rpc_wake_up_next +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xb2e47b25 rpc_sleep_on_priority_timeout +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xb312d0c4 svc_pool_map_get +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xb427e3f5 svc_proc_register +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xb51a3724 rpc_pipefs_notifier_unregister +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xb59d8feb xprt_alloc_slot +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xb6cb34e2 svc_rpcb_setup +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xb77b69fd xprt_put +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xb8e0ed15 xprt_wait_for_buffer_space +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xb8fcbbbb svc_close_xprt +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xb95e3ae5 rpc_net_ns +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xbb63d524 xdr_stream_decode_opaque +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xbbba7d0e xdr_init_encode +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xbf347b48 gssd_running +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xbf8fe91b svc_return_autherr +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xbf9d1b96 nfsd_debug +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xc12435e3 rpc_calc_rto +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xc1e5e678 rpc_peeraddr2str +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xc24e8898 svc_xprt_put +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xc27b72d2 rpc_killall_tasks +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xc2d0369d rpc_restart_call_prepare +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xc69701d3 svc_alien_sock +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xc6f6d2eb cache_seq_stop_rcu +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xc75381e6 svc_exit_thread +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xc82449f8 cache_seq_next_rcu +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xc8e96dea qword_addhex +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xcb45dcdc svc_reserve +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xce678a59 xdr_decode_netobj +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xcee467f3 xprt_load_transport +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xd1832fcc svc_destroy +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xd1dcae23 rpc_clnt_add_xprt +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xd3b703a3 xprt_lookup_rqst +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xd3ff5649 cache_purge +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xd4b81127 xdr_stream_decode_string +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xd5e2938e xdr_buf_trim +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xd66d9c66 rpc_d_lookup_sb +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xd7aafeda rpc_clnt_show_stats +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xd8088af2 xdr_inline_pages +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xd875e013 rpc_proc_unregister +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xd882aed8 bc_svc_process +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xd990c24e rpc_remove_pipe_dir_object +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xdb48657f read_bytes_from_xdr_buf +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xdbdde339 rpcb_getport_async +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xdc160ad6 rpc_put_task +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xdfc6b362 rpc_clnt_xprt_switch_add_xprt +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xe02480d1 rpc_uaddr2sockaddr +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xe201bc7b rpc_alloc_iostats +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xe5919cb1 xdr_encode_opaque +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xe59c0a94 svc_recv +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xe68e6912 rpc_restart_call +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xe6d7aafc rpc_clnt_swap_deactivate +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xe7dde4d5 rpcauth_lookup_credcache +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xe97f4ce5 qword_get +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xea7d8129 rpc_get_sb_net +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xeb47ad04 svc_rqst_free +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xed3a1eea xprt_wait_for_reply_request_rtt +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xedcf6be4 qword_add +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xee1a5767 sunrpc_cache_unhash +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xeeacab69 rpc_update_rtt +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xeff73838 svc_rpcb_cleanup +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xf0b7775d rpc_init_wait_queue +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xf26ce131 xdr_encode_word +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xf2e6a630 svc_drop +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xf320e25b xprt_destroy_backchannel +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xf32a04cd xprt_release_xprt +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xf47b5c88 sunrpc_cache_lookup_rcu +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xf50f5802 rpc_mkpipe_data +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xf677e9c9 rpcauth_stringify_acceptor +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xf69f4d06 xdr_init_decode +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xf71ea815 xdr_decode_array2 +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xf86c8d94 xprt_update_rtt +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xfaa70bc0 rpc_machine_cred +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xfad31df9 cache_check +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xfb589b28 sunrpc_cache_unregister_pipefs +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xfb623b17 rpc_sleep_on +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xfc230991 svc_unreg_xprt_class +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xfcf2085b rpc_queue_upcall +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xfd7e6396 rpcauth_register +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xfe53dded svc_rpcbind_set_version +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xfec07012 xprt_free_slot +EXPORT_SYMBOL_GPL net/tls/tls 0x5511197f tls_offload_tx_resync_request +EXPORT_SYMBOL_GPL net/tls/tls 0x80ac674e tls_validate_xmit_skb +EXPORT_SYMBOL_GPL net/tls/tls 0xdd71102b tls_device_sk_destruct +EXPORT_SYMBOL_GPL net/tls/tls 0xe4118c7d tls_encrypt_skb +EXPORT_SYMBOL_GPL net/vmw_vsock/vmw_vsock_virtio_transport_common 0x023d5afe virtio_transport_dgram_bind +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 0x0a173a9e virtio_transport_stream_is_active +EXPORT_SYMBOL_GPL net/vmw_vsock/vmw_vsock_virtio_transport_common 0x0eb33ade virtio_transport_notify_recv_pre_block +EXPORT_SYMBOL_GPL net/vmw_vsock/vmw_vsock_virtio_transport_common 0x0f004720 virtio_transport_stream_has_data +EXPORT_SYMBOL_GPL net/vmw_vsock/vmw_vsock_virtio_transport_common 0x118d4cb6 virtio_transport_notify_send_pre_block +EXPORT_SYMBOL_GPL net/vmw_vsock/vmw_vsock_virtio_transport_common 0x369de177 virtio_transport_notify_recv_init +EXPORT_SYMBOL_GPL net/vmw_vsock/vmw_vsock_virtio_transport_common 0x3a0ef68f virtio_transport_notify_recv_pre_dequeue +EXPORT_SYMBOL_GPL net/vmw_vsock/vmw_vsock_virtio_transport_common 0x3a537872 virtio_transport_stream_rcvhiwat +EXPORT_SYMBOL_GPL net/vmw_vsock/vmw_vsock_virtio_transport_common 0x4dad2915 virtio_transport_notify_send_pre_enqueue +EXPORT_SYMBOL_GPL net/vmw_vsock/vmw_vsock_virtio_transport_common 0x57296e6d virtio_transport_dgram_dequeue +EXPORT_SYMBOL_GPL net/vmw_vsock/vmw_vsock_virtio_transport_common 0x65cdf7a5 virtio_transport_notify_send_init +EXPORT_SYMBOL_GPL net/vmw_vsock/vmw_vsock_virtio_transport_common 0x7184f026 virtio_transport_notify_buffer_size +EXPORT_SYMBOL_GPL net/vmw_vsock/vmw_vsock_virtio_transport_common 0x732a4709 virtio_transport_get_credit +EXPORT_SYMBOL_GPL net/vmw_vsock/vmw_vsock_virtio_transport_common 0x772791fc virtio_transport_notify_poll_out +EXPORT_SYMBOL_GPL net/vmw_vsock/vmw_vsock_virtio_transport_common 0x78d56ea4 virtio_transport_dgram_enqueue +EXPORT_SYMBOL_GPL net/vmw_vsock/vmw_vsock_virtio_transport_common 0x7dcc4fc4 virtio_transport_inc_tx_pkt +EXPORT_SYMBOL_GPL net/vmw_vsock/vmw_vsock_virtio_transport_common 0x7eff4aca virtio_transport_notify_recv_post_dequeue +EXPORT_SYMBOL_GPL net/vmw_vsock/vmw_vsock_virtio_transport_common 0xabb15bf5 virtio_transport_stream_dequeue +EXPORT_SYMBOL_GPL net/vmw_vsock/vmw_vsock_virtio_transport_common 0xabca5654 virtio_transport_recv_pkt +EXPORT_SYMBOL_GPL net/vmw_vsock/vmw_vsock_virtio_transport_common 0xb286796f virtio_transport_deliver_tap_pkt +EXPORT_SYMBOL_GPL net/vmw_vsock/vmw_vsock_virtio_transport_common 0xb702edf4 virtio_transport_destruct +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 0xbad53170 virtio_transport_notify_poll_in +EXPORT_SYMBOL_GPL net/vmw_vsock/vmw_vsock_virtio_transport_common 0xbbc89885 virtio_transport_free_pkt +EXPORT_SYMBOL_GPL net/vmw_vsock/vmw_vsock_virtio_transport_common 0xbedf9507 virtio_transport_shutdown +EXPORT_SYMBOL_GPL net/vmw_vsock/vmw_vsock_virtio_transport_common 0xc22815fc virtio_transport_put_credit +EXPORT_SYMBOL_GPL net/vmw_vsock/vmw_vsock_virtio_transport_common 0xceb4d7b3 virtio_transport_connect +EXPORT_SYMBOL_GPL net/vmw_vsock/vmw_vsock_virtio_transport_common 0xd81f0e22 virtio_transport_release +EXPORT_SYMBOL_GPL net/vmw_vsock/vmw_vsock_virtio_transport_common 0xefff0374 virtio_transport_notify_send_post_enqueue +EXPORT_SYMBOL_GPL net/vmw_vsock/vmw_vsock_virtio_transport_common 0xf4dc72c8 virtio_transport_do_socket_init +EXPORT_SYMBOL_GPL net/vmw_vsock/vmw_vsock_virtio_transport_common 0xf622f5d4 virtio_transport_stream_enqueue +EXPORT_SYMBOL_GPL net/vmw_vsock/vmw_vsock_virtio_transport_common 0xf6ccb076 virtio_transport_stream_has_space +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0x0c71ab45 vsock_find_connected_socket +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0x1543d563 vsock_remove_connected +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0x25c2d376 vsock_core_register +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0x2663cb64 vsock_addr_equals_addr +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0x284e07d8 vsock_bind_table +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0x2f2201ce vsock_stream_has_space +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0x51b2f984 vsock_insert_connected +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0x59d943c8 vsock_addr_cast +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0x6a3bff04 vsock_find_bound_socket +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0x6f2de6a1 vsock_remove_sock +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0x73879664 vsock_addr_init +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0x751ff010 vsock_addr_unbind +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0x76625bfe vsock_core_unregister +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0x841ad4c8 vsock_remove_pending +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0x87a4a675 vsock_stream_has_data +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0x90aa8549 vsock_find_cid +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0x9bb6fd09 vsock_connected_table +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0x9f1125df vsock_add_pending +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0xaf0daef8 vsock_create_connected +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0xb08b6ef8 vsock_core_get_transport +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0xb4291bc3 vsock_deliver_tap +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0xbd0f699d vsock_addr_bound +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0xc0456a3b vsock_add_tap +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0xc92f7f50 vsock_table_lock +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0xd95ac116 vsock_addr_validate +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0xe7f27cfc vsock_assign_transport +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0xf0b062de vsock_enqueue_accept +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0xf5836fa2 vsock_remove_bound +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0xfbc4cfc4 vsock_remove_tap +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0xfdf7198f vsock_for_each_connected_socket +EXPORT_SYMBOL_GPL net/wireless/cfg80211 0x400b6fc0 cfg80211_vendor_cmd_reply +EXPORT_SYMBOL_GPL net/wireless/cfg80211 0x80725c27 cfg80211_pmsr_complete +EXPORT_SYMBOL_GPL net/wireless/cfg80211 0xad33a448 cfg80211_pmsr_report +EXPORT_SYMBOL_GPL net/wireless/cfg80211 0xb3c8ae92 cfg80211_shutdown_all_interfaces +EXPORT_SYMBOL_GPL net/wireless/cfg80211 0xf3dd9f3a cfg80211_vendor_cmd_get_sender +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 0x105a26c8 ipcomp_output +EXPORT_SYMBOL_GPL net/xfrm/xfrm_ipcomp 0x248efc8e ipcomp_input +EXPORT_SYMBOL_GPL net/xfrm/xfrm_ipcomp 0x381e7fc9 ipcomp_destroy +EXPORT_SYMBOL_GPL net/xfrm/xfrm_ipcomp 0xe819bc19 ipcomp_init_state +EXPORT_SYMBOL_GPL vmlinux 0x000005b0 usb_get_urb +EXPORT_SYMBOL_GPL vmlinux 0x00091b10 dma_buf_detach +EXPORT_SYMBOL_GPL vmlinux 0x001b074f mce_is_correctable +EXPORT_SYMBOL_GPL vmlinux 0x003084d9 edac_pci_alloc_ctl_info +EXPORT_SYMBOL_GPL vmlinux 0x004062fe bus_find_device +EXPORT_SYMBOL_GPL vmlinux 0x00513f58 get_timespec64 +EXPORT_SYMBOL_GPL vmlinux 0x00565f18 pernet_ops_rwsem +EXPORT_SYMBOL_GPL vmlinux 0x005a51b9 crypto_alloc_base +EXPORT_SYMBOL_GPL vmlinux 0x006454be gpiod_get_array +EXPORT_SYMBOL_GPL vmlinux 0x007cbe8d __blkg_prfill_u64 +EXPORT_SYMBOL_GPL vmlinux 0x0084f637 vfs_setlease +EXPORT_SYMBOL_GPL vmlinux 0x008539f0 klp_shadow_alloc +EXPORT_SYMBOL_GPL vmlinux 0x008d3a4e regulator_set_soft_start_regmap +EXPORT_SYMBOL_GPL vmlinux 0x00a969d1 xfrm_dev_offload_ok +EXPORT_SYMBOL_GPL vmlinux 0x00b81e77 wm831x_set_bits +EXPORT_SYMBOL_GPL vmlinux 0x00b9ae05 mmu_interval_notifier_remove +EXPORT_SYMBOL_GPL vmlinux 0x00d92291 pm_generic_runtime_resume +EXPORT_SYMBOL_GPL vmlinux 0x00df9837 ioasid_register_allocator +EXPORT_SYMBOL_GPL vmlinux 0x00ea1a2d bpf_trace_run9 +EXPORT_SYMBOL_GPL vmlinux 0x00f16672 input_ff_upload +EXPORT_SYMBOL_GPL vmlinux 0x0110d1af fwnode_property_read_u64_array +EXPORT_SYMBOL_GPL vmlinux 0x01199d04 perf_pmu_migrate_context +EXPORT_SYMBOL_GPL vmlinux 0x0119a1df sysfs_rename_link_ns +EXPORT_SYMBOL_GPL vmlinux 0x01254e5a tcp_register_congestion_control +EXPORT_SYMBOL_GPL vmlinux 0x012570a0 __devm_alloc_percpu +EXPORT_SYMBOL_GPL vmlinux 0x012db589 thermal_zone_device_unregister +EXPORT_SYMBOL_GPL vmlinux 0x012e730e apei_exec_noop +EXPORT_SYMBOL_GPL vmlinux 0x01305f78 usb_hcd_amd_remote_wakeup_quirk +EXPORT_SYMBOL_GPL vmlinux 0x0131b712 is_transparent_hugepage +EXPORT_SYMBOL_GPL vmlinux 0x0134e2ef uhci_reset_hc +EXPORT_SYMBOL_GPL vmlinux 0x014e6051 cpufreq_enable_fast_switch +EXPORT_SYMBOL_GPL vmlinux 0x015fd5f0 __tracepoint_pelt_irq_tp +EXPORT_SYMBOL_GPL vmlinux 0x0183f196 wm8997_aod +EXPORT_SYMBOL_GPL vmlinux 0x01848a8e local_apic_timer_c2_ok +EXPORT_SYMBOL_GPL vmlinux 0x01866a57 ezx_pcap_set_bits +EXPORT_SYMBOL_GPL vmlinux 0x018b3d1e intel_pt_validate_cap +EXPORT_SYMBOL_GPL vmlinux 0x0190d0dd phy_speed_up +EXPORT_SYMBOL_GPL vmlinux 0x019454a6 elv_rqhash_del +EXPORT_SYMBOL_GPL vmlinux 0x01a0cb78 property_entries_free +EXPORT_SYMBOL_GPL vmlinux 0x01a736c7 __page_file_mapping +EXPORT_SYMBOL_GPL vmlinux 0x01b10fca ftrace_ops_set_global_filter +EXPORT_SYMBOL_GPL vmlinux 0x01ba9a16 device_get_child_node_count +EXPORT_SYMBOL_GPL vmlinux 0x01c12c32 cpu_bit_bitmap +EXPORT_SYMBOL_GPL vmlinux 0x01c18a4d clk_register +EXPORT_SYMBOL_GPL vmlinux 0x01c90dba con_debug_enter +EXPORT_SYMBOL_GPL vmlinux 0x01e01f92 reset_controller_register +EXPORT_SYMBOL_GPL vmlinux 0x01e1a8de kgdb_breakpoint +EXPORT_SYMBOL_GPL vmlinux 0x01ee5532 smp_call_function_any +EXPORT_SYMBOL_GPL vmlinux 0x01fe27e6 dev_pm_opp_find_level_exact +EXPORT_SYMBOL_GPL vmlinux 0x02100211 ip6_sk_update_pmtu +EXPORT_SYMBOL_GPL vmlinux 0x02195855 strp_data_ready +EXPORT_SYMBOL_GPL vmlinux 0x02232dfa skcipher_walk_aead_decrypt +EXPORT_SYMBOL_GPL vmlinux 0x02394899 play_idle_precise +EXPORT_SYMBOL_GPL vmlinux 0x02427aca ipv6_opt_accepted +EXPORT_SYMBOL_GPL vmlinux 0x0245e828 crypto_register_kpp +EXPORT_SYMBOL_GPL vmlinux 0x024d13dd request_free_mem_region +EXPORT_SYMBOL_GPL vmlinux 0x0267ed39 efivars_register +EXPORT_SYMBOL_GPL vmlinux 0x026968e1 perf_trace_run_bpf_submit +EXPORT_SYMBOL_GPL vmlinux 0x0276d1e6 virtio_config_disable +EXPORT_SYMBOL_GPL vmlinux 0x0281d62e proc_get_parent_data +EXPORT_SYMBOL_GPL vmlinux 0x0283f8fc nvme_init_identify +EXPORT_SYMBOL_GPL vmlinux 0x02924f75 dw_pcie_find_capability +EXPORT_SYMBOL_GPL vmlinux 0x02bb3095 pci_assign_unassigned_bus_resources +EXPORT_SYMBOL_GPL vmlinux 0x02d9bcaf ata_std_qc_defer +EXPORT_SYMBOL_GPL vmlinux 0x02ec420f kobject_init_and_add +EXPORT_SYMBOL_GPL vmlinux 0x0305b275 wbt_disable_default +EXPORT_SYMBOL_GPL vmlinux 0x030d2a1d to_nd_blk_region +EXPORT_SYMBOL_GPL vmlinux 0x0312b3b0 reset_controller_add_lookup +EXPORT_SYMBOL_GPL vmlinux 0x031791e5 platform_driver_unregister +EXPORT_SYMBOL_GPL vmlinux 0x0323cb9d __devm_create_dev_dax +EXPORT_SYMBOL_GPL vmlinux 0x03372453 force_irqthreads +EXPORT_SYMBOL_GPL vmlinux 0x033832c7 usb_amd_hang_symptom_quirk +EXPORT_SYMBOL_GPL vmlinux 0x0343bdf1 __i2c_board_list +EXPORT_SYMBOL_GPL vmlinux 0x034be37b bpf_prog_inc_not_zero +EXPORT_SYMBOL_GPL vmlinux 0x034e8caf rio_mport_write_config_8 +EXPORT_SYMBOL_GPL vmlinux 0x036bd7b2 ata_dev_set_feature +EXPORT_SYMBOL_GPL vmlinux 0x036de383 perf_event_cgrp_subsys_enabled_key +EXPORT_SYMBOL_GPL vmlinux 0x03952887 ktime_add_safe +EXPORT_SYMBOL_GPL vmlinux 0x03acd48e devfreq_event_reset_event +EXPORT_SYMBOL_GPL vmlinux 0x03be67bf securityfs_create_file +EXPORT_SYMBOL_GPL vmlinux 0x03c12dfe cancel_work_sync +EXPORT_SYMBOL_GPL vmlinux 0x03c64a51 scsi_mode_select +EXPORT_SYMBOL_GPL vmlinux 0x03cae201 rio_request_mport_dma +EXPORT_SYMBOL_GPL vmlinux 0x03ce7234 sched_smt_present +EXPORT_SYMBOL_GPL vmlinux 0x03cf812e __pci_hp_initialize +EXPORT_SYMBOL_GPL vmlinux 0x03dab64f regmap_reinit_cache +EXPORT_SYMBOL_GPL vmlinux 0x03ecbbd0 sata_scr_valid +EXPORT_SYMBOL_GPL vmlinux 0x03fc439a netdev_walk_all_lower_dev +EXPORT_SYMBOL_GPL vmlinux 0x0400a652 mbox_chan_txdone +EXPORT_SYMBOL_GPL vmlinux 0x0402cbbf preempt_notifier_inc +EXPORT_SYMBOL_GPL vmlinux 0x0419e175 vbin_printf +EXPORT_SYMBOL_GPL vmlinux 0x041c8e07 fuse_kill_sb_anon +EXPORT_SYMBOL_GPL vmlinux 0x0423ed9e pci_ioremap_bar +EXPORT_SYMBOL_GPL vmlinux 0x0452e07a vfs_lock_file +EXPORT_SYMBOL_GPL vmlinux 0x0465a073 regmap_reg_in_ranges +EXPORT_SYMBOL_GPL vmlinux 0x0466bc30 clk_mux_determine_rate_flags +EXPORT_SYMBOL_GPL vmlinux 0x04742ba4 __percpu_init_rwsem +EXPORT_SYMBOL_GPL vmlinux 0x048ae9d3 dma_run_dependencies +EXPORT_SYMBOL_GPL vmlinux 0x049709a8 relay_flush +EXPORT_SYMBOL_GPL vmlinux 0x049929c0 hv_stimer_free +EXPORT_SYMBOL_GPL vmlinux 0x049f631a device_create_bin_file +EXPORT_SYMBOL_GPL vmlinux 0x04bf0092 io_cgrp_subsys_enabled_key +EXPORT_SYMBOL_GPL vmlinux 0x04c4f603 mpi_get_buffer +EXPORT_SYMBOL_GPL vmlinux 0x04d1562e irq_domain_reset_irq_data +EXPORT_SYMBOL_GPL vmlinux 0x04d69382 spi_mem_driver_unregister +EXPORT_SYMBOL_GPL vmlinux 0x04df8fbc lzo1x_decompress_safe +EXPORT_SYMBOL_GPL vmlinux 0x04f6f3b4 fib_alias_hw_flags_set +EXPORT_SYMBOL_GPL vmlinux 0x04f97b3b fib_nl_newrule +EXPORT_SYMBOL_GPL vmlinux 0x050b1eea iommu_sva_bind_device +EXPORT_SYMBOL_GPL vmlinux 0x05280ea0 devlink_traps_register +EXPORT_SYMBOL_GPL vmlinux 0x052c9aed ktime_get_real_fast_ns +EXPORT_SYMBOL_GPL vmlinux 0x052e4333 rio_enable_rx_tx_port +EXPORT_SYMBOL_GPL vmlinux 0x05427549 usb_store_new_id +EXPORT_SYMBOL_GPL vmlinux 0x054a8ea9 ata_sff_queue_pio_task +EXPORT_SYMBOL_GPL vmlinux 0x054e550b kernel_halt +EXPORT_SYMBOL_GPL vmlinux 0x0552fd88 usb_autopm_get_interface_async +EXPORT_SYMBOL_GPL vmlinux 0x05558474 nvmem_cell_get +EXPORT_SYMBOL_GPL vmlinux 0x0558ca26 acpi_is_pnp_device +EXPORT_SYMBOL_GPL vmlinux 0x05681604 usb_reset_endpoint +EXPORT_SYMBOL_GPL vmlinux 0x056a9bae pci_add_dynid +EXPORT_SYMBOL_GPL vmlinux 0x05880bd0 __module_address +EXPORT_SYMBOL_GPL vmlinux 0x058b582a vt_get_leds +EXPORT_SYMBOL_GPL vmlinux 0x058f9366 apei_exec_collect_resources +EXPORT_SYMBOL_GPL vmlinux 0x05a12780 fat_setattr +EXPORT_SYMBOL_GPL vmlinux 0x05a3f311 __pm_runtime_suspend +EXPORT_SYMBOL_GPL vmlinux 0x05a5856b __tracepoint_neigh_cleanup_and_release +EXPORT_SYMBOL_GPL vmlinux 0x05b1de5f cpufreq_frequency_table_get_index +EXPORT_SYMBOL_GPL vmlinux 0x05c0e519 gpiochip_line_is_persistent +EXPORT_SYMBOL_GPL vmlinux 0x05dfb6d6 dev_pm_qos_update_user_latency_tolerance +EXPORT_SYMBOL_GPL vmlinux 0x05e2ba24 wm5102_i2c_regmap +EXPORT_SYMBOL_GPL vmlinux 0x0608fb03 skb_scrub_packet +EXPORT_SYMBOL_GPL vmlinux 0x06209f49 phy_lookup_setting +EXPORT_SYMBOL_GPL vmlinux 0x06250506 devres_release +EXPORT_SYMBOL_GPL vmlinux 0x0625cdd3 sysfs_file_change_owner +EXPORT_SYMBOL_GPL vmlinux 0x0626da5f od_unregister_powersave_bias_handler +EXPORT_SYMBOL_GPL vmlinux 0x064db9a5 mark_mounts_for_expiry +EXPORT_SYMBOL_GPL vmlinux 0x064e562c thermal_of_cooling_device_register +EXPORT_SYMBOL_GPL vmlinux 0x0650ba14 rio_route_add_entry +EXPORT_SYMBOL_GPL vmlinux 0x066ac6a5 __bdev_dax_supported +EXPORT_SYMBOL_GPL vmlinux 0x067bf538 inet_ehash_nolisten +EXPORT_SYMBOL_GPL vmlinux 0x067f7d07 nvdimm_has_flush +EXPORT_SYMBOL_GPL vmlinux 0x06ae311d devlink_dpipe_table_counter_enabled +EXPORT_SYMBOL_GPL vmlinux 0x06aff973 kgdb_register_io_module +EXPORT_SYMBOL_GPL vmlinux 0x06b23bce dma_buf_move_notify +EXPORT_SYMBOL_GPL vmlinux 0x06bd29ab tpm_pcr_extend +EXPORT_SYMBOL_GPL vmlinux 0x06cb312c iommu_device_register +EXPORT_SYMBOL_GPL vmlinux 0x06cca30b ring_buffer_record_off +EXPORT_SYMBOL_GPL vmlinux 0x06d1fdb2 device_create_file +EXPORT_SYMBOL_GPL vmlinux 0x06d305c2 devm_gpiod_get_array +EXPORT_SYMBOL_GPL vmlinux 0x06eb98ca attribute_container_find_class_device +EXPORT_SYMBOL_GPL vmlinux 0x06fe1e2a crypto_comp_compress +EXPORT_SYMBOL_GPL vmlinux 0x0707019a context_tracking +EXPORT_SYMBOL_GPL vmlinux 0x07136647 irq_chip_set_affinity_parent +EXPORT_SYMBOL_GPL vmlinux 0x071b21d8 fwnode_property_match_string +EXPORT_SYMBOL_GPL vmlinux 0x07229dba sata_link_scr_lpm +EXPORT_SYMBOL_GPL vmlinux 0x0722ee07 __pm_runtime_resume +EXPORT_SYMBOL_GPL vmlinux 0x07242d92 put_dax +EXPORT_SYMBOL_GPL vmlinux 0x0728d3c2 do_xdp_generic +EXPORT_SYMBOL_GPL vmlinux 0x07420d62 wbc_detach_inode +EXPORT_SYMBOL_GPL vmlinux 0x0744cef0 rio_release_inb_dbell +EXPORT_SYMBOL_GPL vmlinux 0x074f98db synth_event_add_field +EXPORT_SYMBOL_GPL vmlinux 0x075aeaa9 sched_trace_cfs_rq_path +EXPORT_SYMBOL_GPL vmlinux 0x075c5e71 fat_free_clusters +EXPORT_SYMBOL_GPL vmlinux 0x076356e7 sfp_may_have_phy +EXPORT_SYMBOL_GPL vmlinux 0x07646cee ata_tf_to_fis +EXPORT_SYMBOL_GPL vmlinux 0x076b4937 pm_generic_restore_early +EXPORT_SYMBOL_GPL vmlinux 0x078ce056 pci_cfg_access_lock +EXPORT_SYMBOL_GPL vmlinux 0x078f2e3c set_online_page_callback +EXPORT_SYMBOL_GPL vmlinux 0x079dfba0 bpf_trace_run12 +EXPORT_SYMBOL_GPL vmlinux 0x07a6f459 regmap_mmio_attach_clk +EXPORT_SYMBOL_GPL vmlinux 0x07a89d21 srcu_notifier_call_chain +EXPORT_SYMBOL_GPL vmlinux 0x07aad9b0 __rtnl_link_register +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 0x07be6905 net_inc_egress_queue +EXPORT_SYMBOL_GPL vmlinux 0x07bf29cd get_cached_msi_msg +EXPORT_SYMBOL_GPL vmlinux 0x07c23703 hrtimer_try_to_cancel +EXPORT_SYMBOL_GPL vmlinux 0x07c375ed skb_complete_wifi_ack +EXPORT_SYMBOL_GPL vmlinux 0x07ce5501 crypto_rng_reset +EXPORT_SYMBOL_GPL vmlinux 0x07d367bf devm_device_add_group +EXPORT_SYMBOL_GPL vmlinux 0x07d58276 pinconf_generic_dump_config +EXPORT_SYMBOL_GPL vmlinux 0x07edeba7 hv_free_hyperv_page +EXPORT_SYMBOL_GPL vmlinux 0x07f6f507 devlink_port_param_value_changed +EXPORT_SYMBOL_GPL vmlinux 0x080822ff blkcg_root +EXPORT_SYMBOL_GPL vmlinux 0x08135613 dax_write_cache +EXPORT_SYMBOL_GPL vmlinux 0x08213960 blk_queue_flag_test_and_set +EXPORT_SYMBOL_GPL vmlinux 0x0828d609 mc146818_get_time +EXPORT_SYMBOL_GPL vmlinux 0x0831de25 switchdev_handle_port_obj_del +EXPORT_SYMBOL_GPL vmlinux 0x084494b4 nvme_cancel_request +EXPORT_SYMBOL_GPL vmlinux 0x087f5dc5 wm831x_of_match +EXPORT_SYMBOL_GPL vmlinux 0x08800469 wb_writeout_inc +EXPORT_SYMBOL_GPL vmlinux 0x08933034 thp_get_unmapped_area +EXPORT_SYMBOL_GPL vmlinux 0x08938f21 wakeup_sources_walk_start +EXPORT_SYMBOL_GPL vmlinux 0x0894b45a gpiochip_unlock_as_irq +EXPORT_SYMBOL_GPL vmlinux 0x0899bd6c devm_mbox_controller_unregister +EXPORT_SYMBOL_GPL vmlinux 0x08d3bf02 trace_vprintk +EXPORT_SYMBOL_GPL vmlinux 0x08d70d99 debugfs_create_x32 +EXPORT_SYMBOL_GPL vmlinux 0x08d91e92 usb_hcd_check_unlink_urb +EXPORT_SYMBOL_GPL vmlinux 0x08e7e5fd irq_domain_create_hierarchy +EXPORT_SYMBOL_GPL vmlinux 0x08ea9856 irq_chip_disable_parent +EXPORT_SYMBOL_GPL vmlinux 0x0907d14d blocking_notifier_chain_register +EXPORT_SYMBOL_GPL vmlinux 0x090ca113 crypto_alloc_rng +EXPORT_SYMBOL_GPL vmlinux 0x091eb9b4 round_jiffies +EXPORT_SYMBOL_GPL vmlinux 0x0925493f clear_page_orig +EXPORT_SYMBOL_GPL vmlinux 0x092b95df pcie_aspm_enabled +EXPORT_SYMBOL_GPL vmlinux 0x09337cd0 __wake_up_locked_key +EXPORT_SYMBOL_GPL vmlinux 0x093786cf synth_event_add_field_str +EXPORT_SYMBOL_GPL vmlinux 0x0941c951 pm_genpd_remove_device +EXPORT_SYMBOL_GPL vmlinux 0x094e77cd is_software_node +EXPORT_SYMBOL_GPL vmlinux 0x0955cd8b bpf_prog_get_type_dev +EXPORT_SYMBOL_GPL vmlinux 0x096151b2 usb_bulk_msg +EXPORT_SYMBOL_GPL vmlinux 0x0969eddd uart_try_toggle_sysrq +EXPORT_SYMBOL_GPL vmlinux 0x096a7e6f x86_spec_ctrl_base +EXPORT_SYMBOL_GPL vmlinux 0x096b2418 __tracepoint_tcp_send_reset +EXPORT_SYMBOL_GPL vmlinux 0x097cff6a transport_remove_device +EXPORT_SYMBOL_GPL vmlinux 0x097ddc04 context_tracking_exit +EXPORT_SYMBOL_GPL vmlinux 0x0984dd3c sata_sff_hardreset +EXPORT_SYMBOL_GPL vmlinux 0x09b53e14 interval_tree_remove +EXPORT_SYMBOL_GPL vmlinux 0x09c4a525 dma_get_any_slave_channel +EXPORT_SYMBOL_GPL vmlinux 0x09c85b35 ata_scsi_unlock_native_capacity +EXPORT_SYMBOL_GPL vmlinux 0x09d63265 list_lru_count_node +EXPORT_SYMBOL_GPL vmlinux 0x09e3c1b1 virtqueue_disable_cb +EXPORT_SYMBOL_GPL vmlinux 0x09e519b6 devm_power_supply_register_no_ws +EXPORT_SYMBOL_GPL vmlinux 0x09e7ec8c __ata_ehi_push_desc +EXPORT_SYMBOL_GPL vmlinux 0x09ed8fe8 phy_power_off +EXPORT_SYMBOL_GPL vmlinux 0x09f06d5b pci_set_host_bridge_release +EXPORT_SYMBOL_GPL vmlinux 0x0a0c9d45 inet_peer_base_init +EXPORT_SYMBOL_GPL vmlinux 0x0a13cf57 ping_init_sock +EXPORT_SYMBOL_GPL vmlinux 0x0a247dc3 usb_hcd_pci_remove +EXPORT_SYMBOL_GPL vmlinux 0x0a2dabfa dst_cache_get_ip4 +EXPORT_SYMBOL_GPL vmlinux 0x0a3e3cbd blk_steal_bios +EXPORT_SYMBOL_GPL vmlinux 0x0a426d76 blk_mq_debugfs_rq_show +EXPORT_SYMBOL_GPL vmlinux 0x0a434412 dw_pcie_host_deinit +EXPORT_SYMBOL_GPL vmlinux 0x0a502c98 dmar_platform_optin +EXPORT_SYMBOL_GPL vmlinux 0x0a6c4041 cn_netlink_send +EXPORT_SYMBOL_GPL vmlinux 0x0a6ce1cc sfp_select_interface +EXPORT_SYMBOL_GPL vmlinux 0x0a6d0b19 udp4_hwcsum +EXPORT_SYMBOL_GPL vmlinux 0x0a705e0d hwspin_lock_request +EXPORT_SYMBOL_GPL vmlinux 0x0a78cf08 pinctrl_force_default +EXPORT_SYMBOL_GPL vmlinux 0x0a7b591a trace_array_get_by_name +EXPORT_SYMBOL_GPL vmlinux 0x0ad137d3 lpit_read_residency_count_address +EXPORT_SYMBOL_GPL vmlinux 0x0af40724 iommu_alloc_resv_region +EXPORT_SYMBOL_GPL vmlinux 0x0af8170f dev_pm_opp_put_clkname +EXPORT_SYMBOL_GPL vmlinux 0x0b03a2a1 __regmap_init_mmio_clk +EXPORT_SYMBOL_GPL vmlinux 0x0b07abe2 unshare_fs_struct +EXPORT_SYMBOL_GPL vmlinux 0x0b1bb9f9 synchronize_rcu_tasks +EXPORT_SYMBOL_GPL vmlinux 0x0b2db2d5 remove_resource +EXPORT_SYMBOL_GPL vmlinux 0x0b40e560 uart_console_device +EXPORT_SYMBOL_GPL vmlinux 0x0b4af568 nvme_setup_cmd +EXPORT_SYMBOL_GPL vmlinux 0x0b52e502 apei_resources_add +EXPORT_SYMBOL_GPL vmlinux 0x0b5b82f2 regulator_list_voltage_linear_range +EXPORT_SYMBOL_GPL vmlinux 0x0b86a51d get_net_ns +EXPORT_SYMBOL_GPL vmlinux 0x0b914a6a nf_nat_hook +EXPORT_SYMBOL_GPL vmlinux 0x0b95fe19 gpiochip_add_pingroup_range +EXPORT_SYMBOL_GPL vmlinux 0x0b9d44b4 tcp_slow_start +EXPORT_SYMBOL_GPL vmlinux 0x0ba9cb88 device_for_each_child_reverse +EXPORT_SYMBOL_GPL vmlinux 0x0bb521cb subsys_dev_iter_exit +EXPORT_SYMBOL_GPL vmlinux 0x0bba9b5f node_to_amd_nb +EXPORT_SYMBOL_GPL vmlinux 0x0bbdb435 crypto_ahash_walk_first +EXPORT_SYMBOL_GPL vmlinux 0x0bc01093 led_set_brightness_nopm +EXPORT_SYMBOL_GPL vmlinux 0x0bc20b69 usb_hcd_is_primary_hcd +EXPORT_SYMBOL_GPL vmlinux 0x0be1a4d8 amd_unregister_ecc_decoder +EXPORT_SYMBOL_GPL vmlinux 0x0c0597ad sched_trace_rq_avg_irq +EXPORT_SYMBOL_GPL vmlinux 0x0c0690e4 mbox_controller_unregister +EXPORT_SYMBOL_GPL vmlinux 0x0c0cb3a2 gpiochip_irqchip_add_key +EXPORT_SYMBOL_GPL vmlinux 0x0c10071d event_triggers_post_call +EXPORT_SYMBOL_GPL vmlinux 0x0c29d99a subsys_find_device_by_id +EXPORT_SYMBOL_GPL vmlinux 0x0c2c5802 work_busy +EXPORT_SYMBOL_GPL vmlinux 0x0c2f5238 power_supply_changed +EXPORT_SYMBOL_GPL vmlinux 0x0c32ff8a edac_pci_alloc_index +EXPORT_SYMBOL_GPL vmlinux 0x0c5dee46 crypto_register_scomp +EXPORT_SYMBOL_GPL vmlinux 0x0c7df46d dma_get_slave_caps +EXPORT_SYMBOL_GPL vmlinux 0x0c805f93 clflush_cache_range +EXPORT_SYMBOL_GPL vmlinux 0x0c87b963 dev_pm_opp_set_sharing_cpus +EXPORT_SYMBOL_GPL vmlinux 0x0c987a94 irq_set_default_host +EXPORT_SYMBOL_GPL vmlinux 0x0cb579c0 __free_iova +EXPORT_SYMBOL_GPL vmlinux 0x0cbe3ee2 software_node_unregister +EXPORT_SYMBOL_GPL vmlinux 0x0cc3b29e acpi_dev_filter_resource_type +EXPORT_SYMBOL_GPL vmlinux 0x0ce96bc7 rio_add_net +EXPORT_SYMBOL_GPL vmlinux 0x0ceee1ff pci_find_next_ext_capability +EXPORT_SYMBOL_GPL vmlinux 0x0d116ad0 __sbitmap_queue_get +EXPORT_SYMBOL_GPL vmlinux 0x0d38ce59 gov_attr_set_init +EXPORT_SYMBOL_GPL vmlinux 0x0d3dc3a4 virtqueue_enable_cb_prepare +EXPORT_SYMBOL_GPL vmlinux 0x0d4039f5 raw_seq_stop +EXPORT_SYMBOL_GPL vmlinux 0x0d459213 work_on_cpu_safe +EXPORT_SYMBOL_GPL vmlinux 0x0d4961de nf_log_buf_open +EXPORT_SYMBOL_GPL vmlinux 0x0d5ec7e0 fwnode_get_phy_mode +EXPORT_SYMBOL_GPL vmlinux 0x0d71def5 ima_file_hash +EXPORT_SYMBOL_GPL vmlinux 0x0d738472 component_add_typed +EXPORT_SYMBOL_GPL vmlinux 0x0d880d23 mbox_client_peek_data +EXPORT_SYMBOL_GPL vmlinux 0x0d9d3371 gpiochip_generic_free +EXPORT_SYMBOL_GPL vmlinux 0x0d9d8fdf debugfs_real_fops +EXPORT_SYMBOL_GPL vmlinux 0x0db46ffe usb_hcd_pci_shutdown +EXPORT_SYMBOL_GPL vmlinux 0x0dc02661 sysfs_remove_files +EXPORT_SYMBOL_GPL vmlinux 0x0dc373ab wm5110_aod +EXPORT_SYMBOL_GPL vmlinux 0x0dcb3ee8 divider_recalc_rate +EXPORT_SYMBOL_GPL vmlinux 0x0dd39cfc spi_register_controller +EXPORT_SYMBOL_GPL vmlinux 0x0dd65241 net_ns_type_operations +EXPORT_SYMBOL_GPL vmlinux 0x0dd81ce9 regmap_get_val_bytes +EXPORT_SYMBOL_GPL vmlinux 0x0ddb1cd7 llist_reverse_order +EXPORT_SYMBOL_GPL vmlinux 0x0ddb27e9 devm_reset_control_array_get +EXPORT_SYMBOL_GPL vmlinux 0x0ddfc54f ata_sff_wait_ready +EXPORT_SYMBOL_GPL vmlinux 0x0ddfcff6 cpci_hp_unregister_controller +EXPORT_SYMBOL_GPL vmlinux 0x0de82a7c tcp_ca_get_key_by_name +EXPORT_SYMBOL_GPL vmlinux 0x0decf45e pci_bus_resource_n +EXPORT_SYMBOL_GPL vmlinux 0x0dfe4eda efivar_entry_set +EXPORT_SYMBOL_GPL vmlinux 0x0e13cb4d apei_resources_release +EXPORT_SYMBOL_GPL vmlinux 0x0e17d069 vmbus_sendpacket_mpb_desc +EXPORT_SYMBOL_GPL vmlinux 0x0e3933af regulator_set_current_limit_regmap +EXPORT_SYMBOL_GPL vmlinux 0x0e53a283 pm_runtime_no_callbacks +EXPORT_SYMBOL_GPL vmlinux 0x0e6282d9 ata_sas_tport_delete +EXPORT_SYMBOL_GPL vmlinux 0x0e6b79af static_key_disable_cpuslocked +EXPORT_SYMBOL_GPL vmlinux 0x0e6cfb48 usb_string +EXPORT_SYMBOL_GPL vmlinux 0x0e6fa4c1 pinctrl_add_gpio_range +EXPORT_SYMBOL_GPL vmlinux 0x0e7bc610 perf_pmu_unregister +EXPORT_SYMBOL_GPL vmlinux 0x0e8dbe2b edac_device_add_device +EXPORT_SYMBOL_GPL vmlinux 0x0e9e17a3 crypto_drop_spawn +EXPORT_SYMBOL_GPL vmlinux 0x0ea4b99c ata_bmdma_port_start32 +EXPORT_SYMBOL_GPL vmlinux 0x0eb0bbf9 kmsg_dump_get_buffer +EXPORT_SYMBOL_GPL vmlinux 0x0ec096b0 hv_read_reference_counter +EXPORT_SYMBOL_GPL vmlinux 0x0ed2d635 acpi_gpiochip_request_interrupts +EXPORT_SYMBOL_GPL vmlinux 0x0edfba00 cgroup_rstat_updated +EXPORT_SYMBOL_GPL vmlinux 0x0ef9b264 pci_find_ht_capability +EXPORT_SYMBOL_GPL vmlinux 0x0efadf49 vfs_write +EXPORT_SYMBOL_GPL vmlinux 0x0f002603 class_destroy +EXPORT_SYMBOL_GPL vmlinux 0x0f0b21fe pm_trace_rtc_abused +EXPORT_SYMBOL_GPL vmlinux 0x0f0fff18 regmap_update_bits_base +EXPORT_SYMBOL_GPL vmlinux 0x0f11d4a3 md_find_rdev_rcu +EXPORT_SYMBOL_GPL vmlinux 0x0f180070 ring_buffer_free_read_page +EXPORT_SYMBOL_GPL vmlinux 0x0f19551b usb_enable_intel_xhci_ports +EXPORT_SYMBOL_GPL vmlinux 0x0f2345ae device_store_bool +EXPORT_SYMBOL_GPL vmlinux 0x0f257daf __udp_gso_segment +EXPORT_SYMBOL_GPL vmlinux 0x0f2bbf71 serial8250_request_dma +EXPORT_SYMBOL_GPL vmlinux 0x0f2d7d87 mce_unregister_decode_chain +EXPORT_SYMBOL_GPL vmlinux 0x0f49b34b usb_sg_init +EXPORT_SYMBOL_GPL vmlinux 0x0f526078 usb_register_dev +EXPORT_SYMBOL_GPL vmlinux 0x0f64d67b bpf_map_inc_not_zero +EXPORT_SYMBOL_GPL vmlinux 0x0f7ca236 dmi_memdev_name +EXPORT_SYMBOL_GPL vmlinux 0x0f7ddb9f usb_submit_urb +EXPORT_SYMBOL_GPL vmlinux 0x0f934c79 inet_csk_listen_start +EXPORT_SYMBOL_GPL vmlinux 0x0f99c1d9 nvdimm_provider_data +EXPORT_SYMBOL_GPL vmlinux 0x0fa316de skb_zerocopy_iter_dgram +EXPORT_SYMBOL_GPL vmlinux 0x0fb0ef7a vfio_del_group_dev +EXPORT_SYMBOL_GPL vmlinux 0x0fb23024 regcache_sync_region +EXPORT_SYMBOL_GPL vmlinux 0x0fb3f325 vmbus_allocate_mmio +EXPORT_SYMBOL_GPL vmlinux 0x0fba24af led_trigger_rename_static +EXPORT_SYMBOL_GPL vmlinux 0x0fbb7344 memremap_compat_align +EXPORT_SYMBOL_GPL vmlinux 0x0fc37562 amd_smn_read +EXPORT_SYMBOL_GPL vmlinux 0x0fcc1969 copy_from_user_nmi +EXPORT_SYMBOL_GPL vmlinux 0x0fcf52a4 crypto_destroy_tfm +EXPORT_SYMBOL_GPL vmlinux 0x0fddec37 regmap_write +EXPORT_SYMBOL_GPL vmlinux 0x0fe7617c __tracepoint_suspend_resume +EXPORT_SYMBOL_GPL vmlinux 0x1005d60b tick_nohz_dep_set_cpu +EXPORT_SYMBOL_GPL vmlinux 0x100c3bdb xfrm_audit_state_replay_overflow +EXPORT_SYMBOL_GPL vmlinux 0x10138352 tracing_on +EXPORT_SYMBOL_GPL vmlinux 0x1038b96f adxl_get_component_names +EXPORT_SYMBOL_GPL vmlinux 0x103e1549 fuse_conn_put +EXPORT_SYMBOL_GPL vmlinux 0x1062aa27 power_supply_batinfo_ocv2cap +EXPORT_SYMBOL_GPL vmlinux 0x1077fbce nvme_wait_freeze_timeout +EXPORT_SYMBOL_GPL vmlinux 0x108a0acd bstr_printf +EXPORT_SYMBOL_GPL vmlinux 0x109ac38d perf_get_aux +EXPORT_SYMBOL_GPL vmlinux 0x10a928da crypto_skcipher_decrypt +EXPORT_SYMBOL_GPL vmlinux 0x10aaa3c7 fib_rules_register +EXPORT_SYMBOL_GPL vmlinux 0x10af85c7 debugfs_create_x64 +EXPORT_SYMBOL_GPL vmlinux 0x10b45fbf acpiphp_register_attention +EXPORT_SYMBOL_GPL vmlinux 0x10b5204f regulator_get_bypass_regmap +EXPORT_SYMBOL_GPL vmlinux 0x10c2e75a kmsg_dump_register +EXPORT_SYMBOL_GPL vmlinux 0x10ecc52c usb_amd_quirk_pll_enable +EXPORT_SYMBOL_GPL vmlinux 0x110106c1 cper_severity_to_aer +EXPORT_SYMBOL_GPL vmlinux 0x1126abfd md_rdev_clear +EXPORT_SYMBOL_GPL vmlinux 0x11693b57 get_pid_task +EXPORT_SYMBOL_GPL vmlinux 0x1172d487 rhashtable_insert_slow +EXPORT_SYMBOL_GPL vmlinux 0x11774472 dm_bio_get_target_bio_nr +EXPORT_SYMBOL_GPL vmlinux 0x1185c249 arch_apei_report_mem_error +EXPORT_SYMBOL_GPL vmlinux 0x11952ff2 task_user_regset_view +EXPORT_SYMBOL_GPL vmlinux 0x11a2e0ac crypto_dh_key_len +EXPORT_SYMBOL_GPL vmlinux 0x11b15f60 dw_pcie_wait_for_link +EXPORT_SYMBOL_GPL vmlinux 0x11c0384c aead_init_geniv +EXPORT_SYMBOL_GPL vmlinux 0x11c23240 crypto_attr_u32 +EXPORT_SYMBOL_GPL vmlinux 0x11c6b007 fib4_rule_default +EXPORT_SYMBOL_GPL vmlinux 0x11d5f96c regulator_unregister_notifier +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 0x11e3169a devm_remove_action +EXPORT_SYMBOL_GPL vmlinux 0x11e9fe10 crypto_unregister_acomp +EXPORT_SYMBOL_GPL vmlinux 0x11ea62df __devm_regmap_init_spi +EXPORT_SYMBOL_GPL vmlinux 0x11f1a73b crypto_unregister_scomps +EXPORT_SYMBOL_GPL vmlinux 0x11fe0754 dma_get_slave_channel +EXPORT_SYMBOL_GPL vmlinux 0x1200d0f3 pci_hp_create_module_link +EXPORT_SYMBOL_GPL vmlinux 0x1208d794 crypto_register_ahashes +EXPORT_SYMBOL_GPL vmlinux 0x121264fb devm_phy_create +EXPORT_SYMBOL_GPL vmlinux 0x121d958a unregister_die_notifier +EXPORT_SYMBOL_GPL vmlinux 0x12284145 usb_hub_release_port +EXPORT_SYMBOL_GPL vmlinux 0x1232085d __clk_mux_determine_rate +EXPORT_SYMBOL_GPL vmlinux 0x1234e483 get_cpu_iowait_time_us +EXPORT_SYMBOL_GPL vmlinux 0x1234ffa1 cper_estatus_check_header +EXPORT_SYMBOL_GPL vmlinux 0x124ccb72 tpm_chip_register +EXPORT_SYMBOL_GPL vmlinux 0x124df5ad devm_regulator_register_notifier +EXPORT_SYMBOL_GPL vmlinux 0x1268f357 resume_device_irqs +EXPORT_SYMBOL_GPL vmlinux 0x1275094e bpf_prog_free +EXPORT_SYMBOL_GPL vmlinux 0x127a7f1b device_show_ulong +EXPORT_SYMBOL_GPL vmlinux 0x129334ae sfp_parse_support +EXPORT_SYMBOL_GPL vmlinux 0x12ab31f1 idr_alloc_u32 +EXPORT_SYMBOL_GPL vmlinux 0x12b6d949 percpu_up_write +EXPORT_SYMBOL_GPL vmlinux 0x12be775c do_splice_to +EXPORT_SYMBOL_GPL vmlinux 0x12d5e1c9 regulator_get_error_flags +EXPORT_SYMBOL_GPL vmlinux 0x12dbc8f6 percpu_ref_switch_to_atomic_sync +EXPORT_SYMBOL_GPL vmlinux 0x12dd4263 ata_link_online +EXPORT_SYMBOL_GPL vmlinux 0x12e1fea5 acpi_nfit_desc_init +EXPORT_SYMBOL_GPL vmlinux 0x12e397ac pinctrl_add_gpio_ranges +EXPORT_SYMBOL_GPL vmlinux 0x13087407 class_unregister +EXPORT_SYMBOL_GPL vmlinux 0x131a5ed7 regmap_del_irq_chip +EXPORT_SYMBOL_GPL vmlinux 0x131db64a system_long_wq +EXPORT_SYMBOL_GPL vmlinux 0x131f7c3d clk_hw_register_fractional_divider +EXPORT_SYMBOL_GPL vmlinux 0x133437c6 get_kernel_page +EXPORT_SYMBOL_GPL vmlinux 0x1336b9e4 pm_clk_remove_clk +EXPORT_SYMBOL_GPL vmlinux 0x13385b7d fuse_get_unique +EXPORT_SYMBOL_GPL vmlinux 0x133969d7 __trace_printk +EXPORT_SYMBOL_GPL vmlinux 0x134b8a78 __device_reset +EXPORT_SYMBOL_GPL vmlinux 0x134e6bb6 phy_modify_mmd +EXPORT_SYMBOL_GPL vmlinux 0x136209db power_supply_reg_notifier +EXPORT_SYMBOL_GPL vmlinux 0x1366d275 fib_rules_unregister +EXPORT_SYMBOL_GPL vmlinux 0x13771e47 ip6_datagram_connect +EXPORT_SYMBOL_GPL vmlinux 0x138b7d0d sis_info133_for_sata +EXPORT_SYMBOL_GPL vmlinux 0x138e0957 dax_write_cache_enabled +EXPORT_SYMBOL_GPL vmlinux 0x1391b728 dev_pm_qos_hide_flags +EXPORT_SYMBOL_GPL vmlinux 0x139d1d1a __clocksource_update_freq_scale +EXPORT_SYMBOL_GPL vmlinux 0x139ff498 skb_segment +EXPORT_SYMBOL_GPL vmlinux 0x13a8bb25 syscon_regmap_lookup_by_phandle_args +EXPORT_SYMBOL_GPL vmlinux 0x13c19ee7 alarm_forward_now +EXPORT_SYMBOL_GPL vmlinux 0x13ce87e8 asn1_ber_decoder +EXPORT_SYMBOL_GPL vmlinux 0x13e3aa9a smca_banks +EXPORT_SYMBOL_GPL vmlinux 0x13ed8784 sdev_evt_alloc +EXPORT_SYMBOL_GPL vmlinux 0x140065bc irq_domain_get_irq_data +EXPORT_SYMBOL_GPL vmlinux 0x14018628 verify_signature +EXPORT_SYMBOL_GPL vmlinux 0x1401fccd get_hwpoison_page +EXPORT_SYMBOL_GPL vmlinux 0x1403ad09 cpufreq_add_update_util_hook +EXPORT_SYMBOL_GPL vmlinux 0x14060d37 debugfs_file_get +EXPORT_SYMBOL_GPL vmlinux 0x1418238a __tracepoint_cpu_frequency +EXPORT_SYMBOL_GPL vmlinux 0x141f38bf ktime_get_raw_fast_ns +EXPORT_SYMBOL_GPL vmlinux 0x144b0903 fsstack_copy_attr_all +EXPORT_SYMBOL_GPL vmlinux 0x14591f8a acpi_dev_resume +EXPORT_SYMBOL_GPL vmlinux 0x14682efd usb_get_intf +EXPORT_SYMBOL_GPL vmlinux 0x146d97f2 security_inode_mkdir +EXPORT_SYMBOL_GPL vmlinux 0x1473869e trace_event_buffer_lock_reserve +EXPORT_SYMBOL_GPL vmlinux 0x148801b2 nl_table +EXPORT_SYMBOL_GPL vmlinux 0x148e6228 aead_geniv_alloc +EXPORT_SYMBOL_GPL vmlinux 0x14a9ba86 dma_resv_get_fences_rcu +EXPORT_SYMBOL_GPL vmlinux 0x14ab905e iommu_sva_bind_gpasid +EXPORT_SYMBOL_GPL vmlinux 0x14ada36a edac_mc_handle_error +EXPORT_SYMBOL_GPL vmlinux 0x14af1e1c wakeup_source_register +EXPORT_SYMBOL_GPL vmlinux 0x14ce2d30 pinctrl_pm_select_default_state +EXPORT_SYMBOL_GPL vmlinux 0x14cec087 platform_irq_count +EXPORT_SYMBOL_GPL vmlinux 0x14d01690 clk_mux_index_to_val +EXPORT_SYMBOL_GPL vmlinux 0x14e23803 xfrm_audit_state_notfound +EXPORT_SYMBOL_GPL vmlinux 0x14e8a546 dma_get_required_mask +EXPORT_SYMBOL_GPL vmlinux 0x14fde0f2 __module_text_address +EXPORT_SYMBOL_GPL vmlinux 0x1501a87d fib_info_nh_uses_dev +EXPORT_SYMBOL_GPL vmlinux 0x15136446 strp_done +EXPORT_SYMBOL_GPL vmlinux 0x152e41e3 ata_sff_qc_fill_rtf +EXPORT_SYMBOL_GPL vmlinux 0x153b60a6 klist_del +EXPORT_SYMBOL_GPL vmlinux 0x15510a89 devlink_fmsg_binary_put +EXPORT_SYMBOL_GPL vmlinux 0x1554e2d5 pci_find_next_ht_capability +EXPORT_SYMBOL_GPL vmlinux 0x155c0461 serial8250_modem_status +EXPORT_SYMBOL_GPL vmlinux 0x156b07a4 tpm_pm_resume +EXPORT_SYMBOL_GPL vmlinux 0x156beeef rio_del_device +EXPORT_SYMBOL_GPL vmlinux 0x156cdac8 __tracepoint_kfree_skb +EXPORT_SYMBOL_GPL vmlinux 0x156d8a2d crypto_register_templates +EXPORT_SYMBOL_GPL vmlinux 0x157c35e2 genphy_c45_read_status +EXPORT_SYMBOL_GPL vmlinux 0x158aa465 unregister_virtio_driver +EXPORT_SYMBOL_GPL vmlinux 0x158f0415 dm_put +EXPORT_SYMBOL_GPL vmlinux 0x1591b2c6 hyperv_read_cfg_blk +EXPORT_SYMBOL_GPL vmlinux 0x15acb80b sysfs_remove_groups +EXPORT_SYMBOL_GPL vmlinux 0x15e329bf crypto_stats_skcipher_decrypt +EXPORT_SYMBOL_GPL vmlinux 0x15ea2648 hwpoison_filter_flags_mask +EXPORT_SYMBOL_GPL vmlinux 0x162f0774 sk_msg_return +EXPORT_SYMBOL_GPL vmlinux 0x16516798 osc_pc_lpi_support_confirmed +EXPORT_SYMBOL_GPL vmlinux 0x16613135 ncsi_stop_dev +EXPORT_SYMBOL_GPL vmlinux 0x16693f68 ip6_datagram_send_ctl +EXPORT_SYMBOL_GPL vmlinux 0x166d6443 __tracepoint_pelt_rt_tp +EXPORT_SYMBOL_GPL vmlinux 0x166db1b5 sched_clock_idle_wakeup_event +EXPORT_SYMBOL_GPL vmlinux 0x16773640 regmap_fields_update_bits_base +EXPORT_SYMBOL_GPL vmlinux 0x167c6006 pci_disable_pcie_error_reporting +EXPORT_SYMBOL_GPL vmlinux 0x167d7113 acpi_bus_register_early_device +EXPORT_SYMBOL_GPL vmlinux 0x167da7b0 od_register_powersave_bias_handler +EXPORT_SYMBOL_GPL vmlinux 0x167f5abf pci_user_write_config_word +EXPORT_SYMBOL_GPL vmlinux 0x16a86b58 usb_autopm_put_interface_async +EXPORT_SYMBOL_GPL vmlinux 0x16c04afb exportfs_encode_fh +EXPORT_SYMBOL_GPL vmlinux 0x16ca5d53 blk_mq_unfreeze_queue +EXPORT_SYMBOL_GPL vmlinux 0x16d7a860 irq_domain_simple_ops +EXPORT_SYMBOL_GPL vmlinux 0x16da1f88 devlink_fmsg_u32_put +EXPORT_SYMBOL_GPL vmlinux 0x170cc36c put_timespec64 +EXPORT_SYMBOL_GPL vmlinux 0x17178be0 input_ff_destroy +EXPORT_SYMBOL_GPL vmlinux 0x1741ddee trace_seq_puts +EXPORT_SYMBOL_GPL vmlinux 0x176031a7 devlink_fmsg_string_put +EXPORT_SYMBOL_GPL vmlinux 0x17614bf3 apei_resources_sub +EXPORT_SYMBOL_GPL vmlinux 0x1762095e tcp_ca_openreq_child +EXPORT_SYMBOL_GPL vmlinux 0x17811e8a of_phy_simple_xlate +EXPORT_SYMBOL_GPL vmlinux 0x1788db5a crypto_stats_aead_decrypt +EXPORT_SYMBOL_GPL vmlinux 0x178b21eb kthread_queue_delayed_work +EXPORT_SYMBOL_GPL vmlinux 0x17a3993f __tracepoint_block_split +EXPORT_SYMBOL_GPL vmlinux 0x17add64b gdt_page +EXPORT_SYMBOL_GPL vmlinux 0x17ba818a device_remove_bin_file +EXPORT_SYMBOL_GPL vmlinux 0x17e01f11 erst_clear +EXPORT_SYMBOL_GPL vmlinux 0x17eb09af __clk_hw_register_divider +EXPORT_SYMBOL_GPL vmlinux 0x17ef77ac devlink_alloc +EXPORT_SYMBOL_GPL vmlinux 0x18008c59 ring_buffer_resize +EXPORT_SYMBOL_GPL vmlinux 0x1811c15f device_match_any +EXPORT_SYMBOL_GPL vmlinux 0x1817f116 virtqueue_is_broken +EXPORT_SYMBOL_GPL vmlinux 0x181f1866 pci_reset_function_locked +EXPORT_SYMBOL_GPL vmlinux 0x182875d7 crypto_cipher_decrypt_one +EXPORT_SYMBOL_GPL vmlinux 0x18341687 ata_dev_disable +EXPORT_SYMBOL_GPL vmlinux 0x183f5bac devm_watchdog_register_device +EXPORT_SYMBOL_GPL vmlinux 0x18439ee7 power_supply_property_is_writeable +EXPORT_SYMBOL_GPL vmlinux 0x185196d1 dev_attr_ncq_prio_enable +EXPORT_SYMBOL_GPL vmlinux 0x18582826 amd_pmu_disable_virt +EXPORT_SYMBOL_GPL vmlinux 0x18615d35 efivar_supports_writes +EXPORT_SYMBOL_GPL vmlinux 0x1870ebc7 blk_set_queue_dying +EXPORT_SYMBOL_GPL vmlinux 0x18728552 sprint_OID +EXPORT_SYMBOL_GPL vmlinux 0x187e5d5b blockdev_superblock +EXPORT_SYMBOL_GPL vmlinux 0x18a4e1ff fwnode_handle_put +EXPORT_SYMBOL_GPL vmlinux 0x18b577d2 pinctrl_dev_get_name +EXPORT_SYMBOL_GPL vmlinux 0x18d7bc1d vxlan_fdb_clear_offload +EXPORT_SYMBOL_GPL vmlinux 0x18e4f8aa swphy_read_reg +EXPORT_SYMBOL_GPL vmlinux 0x18f53424 pcie_has_flr +EXPORT_SYMBOL_GPL vmlinux 0x18fb2caf cpus_read_unlock +EXPORT_SYMBOL_GPL vmlinux 0x1913b57a kcpustat_cpu_fetch +EXPORT_SYMBOL_GPL vmlinux 0x19151d61 crypto_lookup_template +EXPORT_SYMBOL_GPL vmlinux 0x19161800 irq_chip_mask_ack_parent +EXPORT_SYMBOL_GPL vmlinux 0x19191bc5 genphy_c45_an_config_aneg +EXPORT_SYMBOL_GPL vmlinux 0x192551ff nvdimm_flush +EXPORT_SYMBOL_GPL vmlinux 0x192baa8e virtio_finalize_features +EXPORT_SYMBOL_GPL vmlinux 0x19380608 iommu_group_add_device +EXPORT_SYMBOL_GPL vmlinux 0x193dfdf6 klp_get_prev_state +EXPORT_SYMBOL_GPL vmlinux 0x194404e6 perf_event_addr_filters_sync +EXPORT_SYMBOL_GPL vmlinux 0x195e84ca dm_send_uevents +EXPORT_SYMBOL_GPL vmlinux 0x1962871f dmaengine_desc_attach_metadata +EXPORT_SYMBOL_GPL vmlinux 0x196614ce hw_breakpoint_restore +EXPORT_SYMBOL_GPL vmlinux 0x19731c4d kstrdup_quotable_cmdline +EXPORT_SYMBOL_GPL vmlinux 0x19752db2 pci_host_probe +EXPORT_SYMBOL_GPL vmlinux 0x19783855 devm_pinctrl_register +EXPORT_SYMBOL_GPL vmlinux 0x197e86f8 is_nvdimm_sync +EXPORT_SYMBOL_GPL vmlinux 0x1980b34e crypto_stats_get +EXPORT_SYMBOL_GPL vmlinux 0x1983a427 devm_pinctrl_register_and_init +EXPORT_SYMBOL_GPL vmlinux 0x19982e8d vfs_cancel_lock +EXPORT_SYMBOL_GPL vmlinux 0x199e6640 pkcs7_validate_trust +EXPORT_SYMBOL_GPL vmlinux 0x19a304ba usb_disabled +EXPORT_SYMBOL_GPL vmlinux 0x19a8e0d3 spi_bus_type +EXPORT_SYMBOL_GPL vmlinux 0x19b9cb8a ata_bmdma_port_intr +EXPORT_SYMBOL_GPL vmlinux 0x19bc9dcd nvme_wait_freeze +EXPORT_SYMBOL_GPL vmlinux 0x19c93a7b fsnotify_init_mark +EXPORT_SYMBOL_GPL vmlinux 0x19cfb9ed dm_noflush_suspending +EXPORT_SYMBOL_GPL vmlinux 0x19d8828c subsys_system_register +EXPORT_SYMBOL_GPL vmlinux 0x19d9641a devm_clk_hw_unregister +EXPORT_SYMBOL_GPL vmlinux 0x19e81304 btree_alloc +EXPORT_SYMBOL_GPL vmlinux 0x19edd064 blkg_rwstat_exit +EXPORT_SYMBOL_GPL vmlinux 0x19f462ab kfree_call_rcu +EXPORT_SYMBOL_GPL vmlinux 0x19fe83f9 regmap_field_alloc +EXPORT_SYMBOL_GPL vmlinux 0x1a10c32b crypto_ft_tab +EXPORT_SYMBOL_GPL vmlinux 0x1a146ec3 usb_ep_type_string +EXPORT_SYMBOL_GPL vmlinux 0x1a310b28 debugfs_lookup +EXPORT_SYMBOL_GPL vmlinux 0x1a60f847 devlink_port_params_register +EXPORT_SYMBOL_GPL vmlinux 0x1a62e9cc fwnode_connection_find_match +EXPORT_SYMBOL_GPL vmlinux 0x1a6bf28f fsnotify_get_cookie +EXPORT_SYMBOL_GPL vmlinux 0x1a7044b6 bsg_scsi_register_queue +EXPORT_SYMBOL_GPL vmlinux 0x1a8a34ad virtqueue_add_inbuf_ctx +EXPORT_SYMBOL_GPL vmlinux 0x1aaa4bb2 iommu_domain_window_enable +EXPORT_SYMBOL_GPL vmlinux 0x1aab0935 regulator_disable +EXPORT_SYMBOL_GPL vmlinux 0x1ac458a1 public_key_signature_free +EXPORT_SYMBOL_GPL vmlinux 0x1ac69bd4 store_sampling_rate +EXPORT_SYMBOL_GPL vmlinux 0x1ac98060 usb_deregister +EXPORT_SYMBOL_GPL vmlinux 0x1acd18c8 cpuset_cgrp_subsys_on_dfl_key +EXPORT_SYMBOL_GPL vmlinux 0x1ad6197a crypto_unregister_aeads +EXPORT_SYMBOL_GPL vmlinux 0x1aeb1037 sata_async_notification +EXPORT_SYMBOL_GPL vmlinux 0x1aec62e9 irq_gc_mask_clr_bit +EXPORT_SYMBOL_GPL vmlinux 0x1af267f8 int_pow +EXPORT_SYMBOL_GPL vmlinux 0x1afcea59 ip_tunnel_newlink +EXPORT_SYMBOL_GPL vmlinux 0x1aff3d55 mce_register_injector_chain +EXPORT_SYMBOL_GPL vmlinux 0x1b1471f3 alarm_start +EXPORT_SYMBOL_GPL vmlinux 0x1b18f955 tcp_set_state +EXPORT_SYMBOL_GPL vmlinux 0x1b1d03ee phy_resolve_aneg_linkmode +EXPORT_SYMBOL_GPL vmlinux 0x1b29bcf4 phy_exit +EXPORT_SYMBOL_GPL vmlinux 0x1b2a00aa blkcg_policy_register +EXPORT_SYMBOL_GPL vmlinux 0x1b3bb2c7 thermal_zone_bind_cooling_device +EXPORT_SYMBOL_GPL vmlinux 0x1b4af867 ip_route_output_flow +EXPORT_SYMBOL_GPL vmlinux 0x1b5059ce ata_id_xfermask +EXPORT_SYMBOL_GPL vmlinux 0x1b51ce4c debugfs_read_file_bool +EXPORT_SYMBOL_GPL vmlinux 0x1b53159d __dax_pmem_probe +EXPORT_SYMBOL_GPL vmlinux 0x1b55eddb dst_cache_get_ip6 +EXPORT_SYMBOL_GPL vmlinux 0x1b5f11fb phy_init +EXPORT_SYMBOL_GPL vmlinux 0x1b5f4377 trace_seq_putc +EXPORT_SYMBOL_GPL vmlinux 0x1b6131b9 alloc_iova_fast +EXPORT_SYMBOL_GPL vmlinux 0x1b79e14c sk_msg_free +EXPORT_SYMBOL_GPL vmlinux 0x1b7a40ff pm_genpd_remove_subdomain +EXPORT_SYMBOL_GPL vmlinux 0x1b8822d8 pinctrl_gpio_direction_output +EXPORT_SYMBOL_GPL vmlinux 0x1b88adbc page_cache_async_readahead +EXPORT_SYMBOL_GPL vmlinux 0x1b92e41d inet_putpeer +EXPORT_SYMBOL_GPL vmlinux 0x1b9867b0 devfreq_event_set_event +EXPORT_SYMBOL_GPL vmlinux 0x1b995412 iomap_readpage +EXPORT_SYMBOL_GPL vmlinux 0x1b9d235c dev_pm_qos_expose_latency_tolerance +EXPORT_SYMBOL_GPL vmlinux 0x1b9f3e7f rio_free_net +EXPORT_SYMBOL_GPL vmlinux 0x1ba237b0 default_cpu_present_to_apicid +EXPORT_SYMBOL_GPL vmlinux 0x1bacb97d __acpi_nfit_notify +EXPORT_SYMBOL_GPL vmlinux 0x1bc5eebe pinctrl_gpio_direction_input +EXPORT_SYMBOL_GPL vmlinux 0x1bc872ce md_do_sync +EXPORT_SYMBOL_GPL vmlinux 0x1bd9844d irq_domain_xlate_twocell +EXPORT_SYMBOL_GPL vmlinux 0x1be26673 udp_tunnel_drop_rx_port +EXPORT_SYMBOL_GPL vmlinux 0x1bee4974 sg_alloc_table_chained +EXPORT_SYMBOL_GPL vmlinux 0x1bf62d29 netlink_has_listeners +EXPORT_SYMBOL_GPL vmlinux 0x1c17b5ee devlink_dpipe_match_put +EXPORT_SYMBOL_GPL vmlinux 0x1c197520 devlink_params_register +EXPORT_SYMBOL_GPL vmlinux 0x1c37c44e phy_modify +EXPORT_SYMBOL_GPL vmlinux 0x1c422040 pci_epc_mem_free_addr +EXPORT_SYMBOL_GPL vmlinux 0x1c44b902 __blocking_notifier_call_chain +EXPORT_SYMBOL_GPL vmlinux 0x1c51d0b8 ata_host_alloc_pinfo +EXPORT_SYMBOL_GPL vmlinux 0x1c5541bd cpufreq_boost_enabled +EXPORT_SYMBOL_GPL vmlinux 0x1c5861b0 xfrm_audit_policy_add +EXPORT_SYMBOL_GPL vmlinux 0x1c5b1f28 irq_free_descs +EXPORT_SYMBOL_GPL vmlinux 0x1c5b38a5 rio_unlock_device +EXPORT_SYMBOL_GPL vmlinux 0x1c5ff742 clk_get_phase +EXPORT_SYMBOL_GPL vmlinux 0x1c67bb14 inet_unhash +EXPORT_SYMBOL_GPL vmlinux 0x1c6fd07c kthread_flush_worker +EXPORT_SYMBOL_GPL vmlinux 0x1c7055ca balloon_page_alloc +EXPORT_SYMBOL_GPL vmlinux 0x1c72daab crypto_unregister_shashes +EXPORT_SYMBOL_GPL vmlinux 0x1c7dfcac __list_lru_init +EXPORT_SYMBOL_GPL vmlinux 0x1c80d27d btree_geo128 +EXPORT_SYMBOL_GPL vmlinux 0x1c87a811 __round_jiffies_up +EXPORT_SYMBOL_GPL vmlinux 0x1c8da595 irq_set_chip_and_handler_name +EXPORT_SYMBOL_GPL vmlinux 0x1c9429fa vfio_group_get_external_user +EXPORT_SYMBOL_GPL vmlinux 0x1c9d5da6 sock_diag_unregister_inet_compat +EXPORT_SYMBOL_GPL vmlinux 0x1ca2c10f ata_sas_port_alloc +EXPORT_SYMBOL_GPL vmlinux 0x1caa082e __nf_ip6_route +EXPORT_SYMBOL_GPL vmlinux 0x1cab64e5 debugfs_create_devm_seqfile +EXPORT_SYMBOL_GPL vmlinux 0x1cb42cbf rio_register_scan +EXPORT_SYMBOL_GPL vmlinux 0x1cb7c983 apei_exec_read_register_value +EXPORT_SYMBOL_GPL vmlinux 0x1cbd92b0 cpu_mitigations_off +EXPORT_SYMBOL_GPL vmlinux 0x1cc0196f sysfs_create_file_ns +EXPORT_SYMBOL_GPL vmlinux 0x1cc5c4f2 skb_copy_ubufs +EXPORT_SYMBOL_GPL vmlinux 0x1cdcbdfb acpi_dev_get_dma_resources +EXPORT_SYMBOL_GPL vmlinux 0x1cfe4101 clkdev_hw_create +EXPORT_SYMBOL_GPL vmlinux 0x1d0a37aa irq_domain_add_legacy +EXPORT_SYMBOL_GPL vmlinux 0x1d0fa861 ethnl_cable_test_step +EXPORT_SYMBOL_GPL vmlinux 0x1d15d1f2 devm_nvmem_cell_get +EXPORT_SYMBOL_GPL vmlinux 0x1d222ced irq_get_irqchip_state +EXPORT_SYMBOL_GPL vmlinux 0x1d271a9c regulator_get_drvdata +EXPORT_SYMBOL_GPL vmlinux 0x1d34e996 pp_msgs +EXPORT_SYMBOL_GPL vmlinux 0x1d37f0f5 simple_attr_release +EXPORT_SYMBOL_GPL vmlinux 0x1d3f57f8 gpiod_get_value_cansleep +EXPORT_SYMBOL_GPL vmlinux 0x1d511590 crypto_spawn_tfm2 +EXPORT_SYMBOL_GPL vmlinux 0x1d5cf639 transport_destroy_device +EXPORT_SYMBOL_GPL vmlinux 0x1d5e93fd hwmon_device_register_with_info +EXPORT_SYMBOL_GPL vmlinux 0x1d6ff224 crypto_hash_alg_has_setkey +EXPORT_SYMBOL_GPL vmlinux 0x1d7623df clk_hw_rate_is_protected +EXPORT_SYMBOL_GPL vmlinux 0x1d77b0f8 unix_socket_table +EXPORT_SYMBOL_GPL vmlinux 0x1d94a218 dmi_memdev_handle +EXPORT_SYMBOL_GPL vmlinux 0x1dd9a783 cpufreq_cpu_get +EXPORT_SYMBOL_GPL vmlinux 0x1ddf2e97 icc_get +EXPORT_SYMBOL_GPL vmlinux 0x1e0670c6 reset_control_release +EXPORT_SYMBOL_GPL vmlinux 0x1e1b58ff vfio_add_group_dev +EXPORT_SYMBOL_GPL vmlinux 0x1e2267fd scsi_host_block +EXPORT_SYMBOL_GPL vmlinux 0x1e24b597 tpm_try_get_ops +EXPORT_SYMBOL_GPL vmlinux 0x1e4bb85c fsnotify_put_mark +EXPORT_SYMBOL_GPL vmlinux 0x1e51dabb __tracepoint_detach_device_from_domain +EXPORT_SYMBOL_GPL vmlinux 0x1e67b5e3 of_hwspin_lock_get_id +EXPORT_SYMBOL_GPL vmlinux 0x1e6efd56 get_current_tty +EXPORT_SYMBOL_GPL vmlinux 0x1e7bbcb3 kernel_restart +EXPORT_SYMBOL_GPL vmlinux 0x1e7c4fbb usb_phy_roothub_resume +EXPORT_SYMBOL_GPL vmlinux 0x1e7ea903 iomap_dio_iopoll +EXPORT_SYMBOL_GPL vmlinux 0x1e8fac8e wireless_nlevent_flush +EXPORT_SYMBOL_GPL vmlinux 0x1e96852b serial8250_do_get_mctrl +EXPORT_SYMBOL_GPL vmlinux 0x1e9bc719 freq_qos_update_request +EXPORT_SYMBOL_GPL vmlinux 0x1eaec09e sbitmap_get +EXPORT_SYMBOL_GPL vmlinux 0x1eafc30e tty_buffer_request_room +EXPORT_SYMBOL_GPL vmlinux 0x1eb9516e round_jiffies_relative +EXPORT_SYMBOL_GPL vmlinux 0x1ebba313 of_clk_hw_register +EXPORT_SYMBOL_GPL vmlinux 0x1ebd7472 crypto_register_template +EXPORT_SYMBOL_GPL vmlinux 0x1ebf6c2a pci_power_names +EXPORT_SYMBOL_GPL vmlinux 0x1ec8b77c acpi_driver_match_device +EXPORT_SYMBOL_GPL vmlinux 0x1ed47150 virtio_max_dma_size +EXPORT_SYMBOL_GPL vmlinux 0x1ed512fd pci_stop_root_bus +EXPORT_SYMBOL_GPL vmlinux 0x1edc6a93 led_sysfs_enable +EXPORT_SYMBOL_GPL vmlinux 0x1ee7d3cd hrtimer_init +EXPORT_SYMBOL_GPL vmlinux 0x1eee7c55 rio_alloc_net +EXPORT_SYMBOL_GPL vmlinux 0x1f052a51 spi_finalize_current_transfer +EXPORT_SYMBOL_GPL vmlinux 0x1f0cb5bf pm_power_off_prepare +EXPORT_SYMBOL_GPL vmlinux 0x1f17d28c regulator_list_voltage +EXPORT_SYMBOL_GPL vmlinux 0x1f1ddd8d copy_mc_fragile +EXPORT_SYMBOL_GPL vmlinux 0x1f24f597 crypto_grab_akcipher +EXPORT_SYMBOL_GPL vmlinux 0x1f4218b7 nvme_get_features +EXPORT_SYMBOL_GPL vmlinux 0x1f449588 mctrl_gpio_disable_ms +EXPORT_SYMBOL_GPL vmlinux 0x1f563160 bpf_offload_dev_priv +EXPORT_SYMBOL_GPL vmlinux 0x1f5aa652 __raw_v4_lookup +EXPORT_SYMBOL_GPL vmlinux 0x1f8544b8 panic_timeout +EXPORT_SYMBOL_GPL vmlinux 0x1f8cd2d2 tpm_put_ops +EXPORT_SYMBOL_GPL vmlinux 0x1f9134db iommu_sva_unbind_gpasid +EXPORT_SYMBOL_GPL vmlinux 0x1f9d901e fwnode_get_next_child_node +EXPORT_SYMBOL_GPL vmlinux 0x1fa1d95c sha256_zero_message_hash +EXPORT_SYMBOL_GPL vmlinux 0x1fa47b5e wm831x_reg_read +EXPORT_SYMBOL_GPL vmlinux 0x1fc5324e security_path_link +EXPORT_SYMBOL_GPL vmlinux 0x1fe6e504 gpiod_add_hogs +EXPORT_SYMBOL_GPL vmlinux 0x1fe7a801 device_get_dma_attr +EXPORT_SYMBOL_GPL vmlinux 0x1ffb25a3 pcie_port_find_device +EXPORT_SYMBOL_GPL vmlinux 0x1fffa841 pm_generic_suspend +EXPORT_SYMBOL_GPL vmlinux 0x200390cf pm_generic_poweroff +EXPORT_SYMBOL_GPL vmlinux 0x200ab853 blk_queue_rq_timeout +EXPORT_SYMBOL_GPL vmlinux 0x201b9101 devm_regulator_bulk_register_supply_alias +EXPORT_SYMBOL_GPL vmlinux 0x202d4ed6 nvmem_cell_write +EXPORT_SYMBOL_GPL vmlinux 0x2035abbb regulator_map_voltage_ascend +EXPORT_SYMBOL_GPL vmlinux 0x205cc516 thermal_add_hwmon_sysfs +EXPORT_SYMBOL_GPL vmlinux 0x2064d70d fixed_phy_register_with_gpiod +EXPORT_SYMBOL_GPL vmlinux 0x2078ec50 debugfs_create_u16 +EXPORT_SYMBOL_GPL vmlinux 0x207c7e7a tps65912_regmap_config +EXPORT_SYMBOL_GPL vmlinux 0x20835a9f __xdp_release_frame +EXPORT_SYMBOL_GPL vmlinux 0x20899467 hv_stimer0_isr +EXPORT_SYMBOL_GPL vmlinux 0x2093f4dd clk_register_divider_table +EXPORT_SYMBOL_GPL vmlinux 0x20973b6e hwspin_lock_unregister +EXPORT_SYMBOL_GPL vmlinux 0x20978fb9 idr_find +EXPORT_SYMBOL_GPL vmlinux 0x20d5bd16 acpi_device_get_match_data +EXPORT_SYMBOL_GPL vmlinux 0x20ee318e usb_wakeup_enabled_descendants +EXPORT_SYMBOL_GPL vmlinux 0x21037920 synth_event_gen_cmd_array_start +EXPORT_SYMBOL_GPL vmlinux 0x2129d121 __pm_runtime_idle +EXPORT_SYMBOL_GPL vmlinux 0x21412a08 devlink_port_unregister +EXPORT_SYMBOL_GPL vmlinux 0x21541c70 hv_pkt_iter_first +EXPORT_SYMBOL_GPL vmlinux 0x215d3e69 crypto_unregister_rng +EXPORT_SYMBOL_GPL vmlinux 0x216019ed usb_urb_ep_type_check +EXPORT_SYMBOL_GPL vmlinux 0x2167728c generic_file_buffered_read +EXPORT_SYMBOL_GPL vmlinux 0x216de4e1 rcu_get_gp_kthreads_prio +EXPORT_SYMBOL_GPL vmlinux 0x2170b2e6 perf_event_period +EXPORT_SYMBOL_GPL vmlinux 0x2176e42a hwpoison_filter_memcg +EXPORT_SYMBOL_GPL vmlinux 0x2182e18a clockevents_config_and_register +EXPORT_SYMBOL_GPL vmlinux 0x2184b5f2 __account_locked_vm +EXPORT_SYMBOL_GPL vmlinux 0x218fd478 gpiod_set_transitory +EXPORT_SYMBOL_GPL vmlinux 0x21a563da clk_get_accuracy +EXPORT_SYMBOL_GPL vmlinux 0x21ac8b77 iommu_group_get_by_id +EXPORT_SYMBOL_GPL vmlinux 0x21b0d3d9 bpf_offload_dev_netdev_register +EXPORT_SYMBOL_GPL vmlinux 0x21bd5982 debugfs_create_blob +EXPORT_SYMBOL_GPL vmlinux 0x21cd536a crypto_put_default_null_skcipher +EXPORT_SYMBOL_GPL vmlinux 0x21eb1a6e set_selection_kernel +EXPORT_SYMBOL_GPL vmlinux 0x2211a4c0 blk_op_str +EXPORT_SYMBOL_GPL vmlinux 0x221394ae hyperv_reg_block_invalidate +EXPORT_SYMBOL_GPL vmlinux 0x221eab6d scatterwalk_copychunks +EXPORT_SYMBOL_GPL vmlinux 0x2229bfa5 pm_genpd_remove +EXPORT_SYMBOL_GPL vmlinux 0x2231b60a vfs_submount +EXPORT_SYMBOL_GPL vmlinux 0x223455a0 __pci_epf_register_driver +EXPORT_SYMBOL_GPL vmlinux 0x223d363c tick_nohz_full_setup +EXPORT_SYMBOL_GPL vmlinux 0x2246b4dd __tracepoint_block_bio_remap +EXPORT_SYMBOL_GPL vmlinux 0x2248601a debugfs_create_symlink +EXPORT_SYMBOL_GPL vmlinux 0x224f51bf nvmem_device_cell_read +EXPORT_SYMBOL_GPL vmlinux 0x2264fefb crypto_shash_final +EXPORT_SYMBOL_GPL vmlinux 0x227af2e9 __generic_fsdax_supported +EXPORT_SYMBOL_GPL vmlinux 0x228236df iommu_map_atomic +EXPORT_SYMBOL_GPL vmlinux 0x228573f2 nvdimm_bus_add_badrange +EXPORT_SYMBOL_GPL vmlinux 0x228cf69a pm_generic_freeze_late +EXPORT_SYMBOL_GPL vmlinux 0x229f87ef irq_domain_associate_many +EXPORT_SYMBOL_GPL vmlinux 0x22b07f86 synth_event_trace_start +EXPORT_SYMBOL_GPL vmlinux 0x22d337ff irq_domain_free_irqs_parent +EXPORT_SYMBOL_GPL vmlinux 0x22d8f62a pci_bridge_secondary_bus_reset +EXPORT_SYMBOL_GPL vmlinux 0x22d9409b iomap_sort_ioends +EXPORT_SYMBOL_GPL vmlinux 0x22d98c78 bio_iov_iter_get_pages +EXPORT_SYMBOL_GPL vmlinux 0x22eab9b9 sysfs_chmod_file +EXPORT_SYMBOL_GPL vmlinux 0x22ec5205 cpu_latency_qos_remove_request +EXPORT_SYMBOL_GPL vmlinux 0x22f36e10 ip6_sk_redirect +EXPORT_SYMBOL_GPL vmlinux 0x22fd08ba cpuacct_cgrp_subsys_on_dfl_key +EXPORT_SYMBOL_GPL vmlinux 0x2301a4c8 unregister_kretprobe +EXPORT_SYMBOL_GPL vmlinux 0x230fa346 fuse_abort_conn +EXPORT_SYMBOL_GPL vmlinux 0x231ccb47 crypto_unregister_skcipher +EXPORT_SYMBOL_GPL vmlinux 0x231ecf24 spi_sync +EXPORT_SYMBOL_GPL vmlinux 0x2325861e sata_link_hardreset +EXPORT_SYMBOL_GPL vmlinux 0x232e894c devlink_port_type_clear +EXPORT_SYMBOL_GPL vmlinux 0x23313e70 vmf_insert_pfn_pud_prot +EXPORT_SYMBOL_GPL vmlinux 0x23338049 usb_ep0_reinit +EXPORT_SYMBOL_GPL vmlinux 0x23412816 rtc_tm_to_ktime +EXPORT_SYMBOL_GPL vmlinux 0x23419814 skb_mpls_update_lse +EXPORT_SYMBOL_GPL vmlinux 0x234aef9e fuse_file_poll +EXPORT_SYMBOL_GPL vmlinux 0x234cf416 devlink_fmsg_string_pair_put +EXPORT_SYMBOL_GPL vmlinux 0x23521e23 pci_enable_pasid +EXPORT_SYMBOL_GPL vmlinux 0x23864ce7 cpuset_mem_spread_node +EXPORT_SYMBOL_GPL vmlinux 0x238c18e7 devm_acpi_dev_remove_driver_gpios +EXPORT_SYMBOL_GPL vmlinux 0x2396c7f0 clk_set_parent +EXPORT_SYMBOL_GPL vmlinux 0x23b4e0d7 clear_page_rep +EXPORT_SYMBOL_GPL vmlinux 0x23c1ddfc acpi_subsys_suspend_noirq +EXPORT_SYMBOL_GPL vmlinux 0x23c2cbe3 vmbus_set_sc_create_callback +EXPORT_SYMBOL_GPL vmlinux 0x23cfd1ff ata_host_alloc +EXPORT_SYMBOL_GPL vmlinux 0x23e2515d mbox_client_txdone +EXPORT_SYMBOL_GPL vmlinux 0x23e9e500 acpi_subsys_restore_early +EXPORT_SYMBOL_GPL vmlinux 0x24036ed3 rcuwait_wake_up +EXPORT_SYMBOL_GPL vmlinux 0x2405ef6b skb_tstamp_tx +EXPORT_SYMBOL_GPL vmlinux 0x2410c338 x86_virt_spec_ctrl +EXPORT_SYMBOL_GPL vmlinux 0x241aa415 ata_pci_sff_activate_host +EXPORT_SYMBOL_GPL vmlinux 0x243f0b4b crypto_check_attr_type +EXPORT_SYMBOL_GPL vmlinux 0x2447dc9f ata_sff_dev_classify +EXPORT_SYMBOL_GPL vmlinux 0x2451a5a0 icc_put +EXPORT_SYMBOL_GPL vmlinux 0x24640ab3 led_trigger_write +EXPORT_SYMBOL_GPL vmlinux 0x2464da17 gen_pool_size +EXPORT_SYMBOL_GPL vmlinux 0x246df185 hyperv_fill_flush_guest_mapping_list +EXPORT_SYMBOL_GPL vmlinux 0x24709b2f trace_seq_putmem +EXPORT_SYMBOL_GPL vmlinux 0x247ef831 kdb_unregister +EXPORT_SYMBOL_GPL vmlinux 0x248b8bae sk_set_memalloc +EXPORT_SYMBOL_GPL vmlinux 0x248baacd __fscrypt_prepare_rename +EXPORT_SYMBOL_GPL vmlinux 0x24957252 regulator_bulk_register_supply_alias +EXPORT_SYMBOL_GPL vmlinux 0x24963ca0 to_nvdimm_bus_dev +EXPORT_SYMBOL_GPL vmlinux 0x24ad11db wakeup_sources_read_unlock +EXPORT_SYMBOL_GPL vmlinux 0x24aee39f crypto_unregister_scomp +EXPORT_SYMBOL_GPL vmlinux 0x24bda2d7 pm_clk_runtime_suspend +EXPORT_SYMBOL_GPL vmlinux 0x24ca3acf usb_autopm_get_interface +EXPORT_SYMBOL_GPL vmlinux 0x24da0093 rcu_inkernel_boot_has_ended +EXPORT_SYMBOL_GPL vmlinux 0x24e018e0 mctrl_gpio_init +EXPORT_SYMBOL_GPL vmlinux 0x24eb7e32 leds_list +EXPORT_SYMBOL_GPL vmlinux 0x24f02991 sk_msg_alloc +EXPORT_SYMBOL_GPL vmlinux 0x24f39c39 reset_control_reset +EXPORT_SYMBOL_GPL vmlinux 0x24f63dcf ata_xfer_mask2mode +EXPORT_SYMBOL_GPL vmlinux 0x24fdc2dc udp_tunnel6_xmit_skb +EXPORT_SYMBOL_GPL vmlinux 0x2506813d irq_alloc_generic_chip +EXPORT_SYMBOL_GPL vmlinux 0x250f4530 do_truncate +EXPORT_SYMBOL_GPL vmlinux 0x25202163 dev_pm_opp_get_suspend_opp_freq +EXPORT_SYMBOL_GPL vmlinux 0x25301bc6 arch_wb_cache_pmem +EXPORT_SYMBOL_GPL vmlinux 0x25379e73 clk_set_min_rate +EXPORT_SYMBOL_GPL vmlinux 0x253b9c5e usb_amd_pt_check_port +EXPORT_SYMBOL_GPL vmlinux 0x25515aa3 fwnode_get_named_child_node +EXPORT_SYMBOL_GPL vmlinux 0x2554342b anon_transport_class_unregister +EXPORT_SYMBOL_GPL vmlinux 0x255a4e1f device_wakeup_disable +EXPORT_SYMBOL_GPL vmlinux 0x257314e3 crypto_alloc_tfm +EXPORT_SYMBOL_GPL vmlinux 0x25905449 skb_morph +EXPORT_SYMBOL_GPL vmlinux 0x2592fc6c console_printk +EXPORT_SYMBOL_GPL vmlinux 0x259f6a34 ata_sas_port_stop +EXPORT_SYMBOL_GPL vmlinux 0x25a3b424 acpi_dev_get_resources +EXPORT_SYMBOL_GPL vmlinux 0x25a5cc88 nvme_uninit_ctrl +EXPORT_SYMBOL_GPL vmlinux 0x25b047f9 __dev_forward_skb +EXPORT_SYMBOL_GPL vmlinux 0x25e177e5 __efivar_entry_get +EXPORT_SYMBOL_GPL vmlinux 0x261fcec8 pci_epc_add_epf +EXPORT_SYMBOL_GPL vmlinux 0x263f039e xas_nomem +EXPORT_SYMBOL_GPL vmlinux 0x264eeaf4 devm_pinctrl_put +EXPORT_SYMBOL_GPL vmlinux 0x264ff9fc crypto_unregister_kpp +EXPORT_SYMBOL_GPL vmlinux 0x26520970 vm_memory_committed +EXPORT_SYMBOL_GPL vmlinux 0x265bbef9 kexec_crash_loaded +EXPORT_SYMBOL_GPL vmlinux 0x267df662 smp_call_on_cpu +EXPORT_SYMBOL_GPL vmlinux 0x269c49b8 is_skb_forwardable +EXPORT_SYMBOL_GPL vmlinux 0x269c7a24 ip_tunnel_delete_nets +EXPORT_SYMBOL_GPL vmlinux 0x26a1bcd8 strp_check_rcv +EXPORT_SYMBOL_GPL vmlinux 0x26a323fd ata_sff_irq_on +EXPORT_SYMBOL_GPL vmlinux 0x26ab4755 put_old_itimerspec32 +EXPORT_SYMBOL_GPL vmlinux 0x26c62254 dev_attr_em_message +EXPORT_SYMBOL_GPL vmlinux 0x26c622ee percpu_ref_switch_to_percpu +EXPORT_SYMBOL_GPL vmlinux 0x26c90ea4 scsi_eh_get_sense +EXPORT_SYMBOL_GPL vmlinux 0x26cc80d4 tty_buffer_lock_exclusive +EXPORT_SYMBOL_GPL vmlinux 0x26cda94f e820__mapped_raw_any +EXPORT_SYMBOL_GPL vmlinux 0x26cddb48 unwind_next_frame +EXPORT_SYMBOL_GPL vmlinux 0x26e135de inverse_translate +EXPORT_SYMBOL_GPL vmlinux 0x26ed2186 register_vmap_purge_notifier +EXPORT_SYMBOL_GPL vmlinux 0x271e949a platform_device_add +EXPORT_SYMBOL_GPL vmlinux 0x272d8539 iommu_map_sg +EXPORT_SYMBOL_GPL vmlinux 0x2739b122 regmap_field_update_bits_base +EXPORT_SYMBOL_GPL vmlinux 0x2739c8f6 pm_runtime_suspended_time +EXPORT_SYMBOL_GPL vmlinux 0x273e2382 __context_tracking_enter +EXPORT_SYMBOL_GPL vmlinux 0x274cf5e1 __clk_get_flags +EXPORT_SYMBOL_GPL vmlinux 0x274dd1a3 sg_free_table_chained +EXPORT_SYMBOL_GPL vmlinux 0x27595236 gpiochip_populate_parent_fwspec_twocell +EXPORT_SYMBOL_GPL vmlinux 0x27675316 device_wakeup_enable +EXPORT_SYMBOL_GPL vmlinux 0x2769516c synth_event_add_val +EXPORT_SYMBOL_GPL vmlinux 0x276ac6a6 icc_get_name +EXPORT_SYMBOL_GPL vmlinux 0x276bad02 icc_node_create +EXPORT_SYMBOL_GPL vmlinux 0x2773c485 __wake_up_locked +EXPORT_SYMBOL_GPL vmlinux 0x277e6dfd sock_gen_put +EXPORT_SYMBOL_GPL vmlinux 0x278cf80f devm_free_pages +EXPORT_SYMBOL_GPL vmlinux 0x27a84ad3 blk_mq_sched_try_merge +EXPORT_SYMBOL_GPL vmlinux 0x27bb32aa vfs_getxattr +EXPORT_SYMBOL_GPL vmlinux 0x27c12ab8 __pm_relax +EXPORT_SYMBOL_GPL vmlinux 0x27c522f8 __mmu_notifier_register +EXPORT_SYMBOL_GPL vmlinux 0x27cfe653 usb_hcd_setup_local_mem +EXPORT_SYMBOL_GPL vmlinux 0x27df3105 hv_alloc_hyperv_zeroed_page +EXPORT_SYMBOL_GPL vmlinux 0x27efbcc4 fscrypt_get_symlink +EXPORT_SYMBOL_GPL vmlinux 0x27f4f029 ftrace_set_global_filter +EXPORT_SYMBOL_GPL vmlinux 0x27fa66e1 nr_free_buffer_pages +EXPORT_SYMBOL_GPL vmlinux 0x2810fb27 cpufreq_driver_target +EXPORT_SYMBOL_GPL vmlinux 0x2817f7fd cppc_get_desired_perf +EXPORT_SYMBOL_GPL vmlinux 0x281e2434 usb_set_interface +EXPORT_SYMBOL_GPL vmlinux 0x282ad0cc pci_epc_mem_exit +EXPORT_SYMBOL_GPL vmlinux 0x283f3e09 skcipher_alloc_instance_simple +EXPORT_SYMBOL_GPL vmlinux 0x284fe794 percpu_ref_exit +EXPORT_SYMBOL_GPL vmlinux 0x2857b57b rio_attach_device +EXPORT_SYMBOL_GPL vmlinux 0x2858f349 to_nd_region +EXPORT_SYMBOL_GPL vmlinux 0x2864abc9 klist_node_attached +EXPORT_SYMBOL_GPL vmlinux 0x286cc647 async_synchronize_cookie_domain +EXPORT_SYMBOL_GPL vmlinux 0x286ded2a usb_kill_urb +EXPORT_SYMBOL_GPL vmlinux 0x2876cc51 dm_accept_partial_bio +EXPORT_SYMBOL_GPL vmlinux 0x2892bcbc metadata_dst_alloc_percpu +EXPORT_SYMBOL_GPL vmlinux 0x28aa484b pci_find_next_capability +EXPORT_SYMBOL_GPL vmlinux 0x28aa6a67 call_rcu +EXPORT_SYMBOL_GPL vmlinux 0x28ab4fb9 pinctrl_gpio_free +EXPORT_SYMBOL_GPL vmlinux 0x28ac0bf1 devlink_flash_update_end_notify +EXPORT_SYMBOL_GPL vmlinux 0x28afbb08 cpu_latency_qos_add_request +EXPORT_SYMBOL_GPL vmlinux 0x28b257b1 wakeup_source_add +EXPORT_SYMBOL_GPL vmlinux 0x28d4494c get_task_mm +EXPORT_SYMBOL_GPL vmlinux 0x28e05cf1 gpiod_to_chip +EXPORT_SYMBOL_GPL vmlinux 0x28f15141 device_property_read_u16_array +EXPORT_SYMBOL_GPL vmlinux 0x28f5058d of_css +EXPORT_SYMBOL_GPL vmlinux 0x28fb481d device_remove_file_self +EXPORT_SYMBOL_GPL vmlinux 0x2903bec2 dev_attr_sw_activity +EXPORT_SYMBOL_GPL vmlinux 0x29051cc3 gpiod_get_raw_array_value +EXPORT_SYMBOL_GPL vmlinux 0x290610f6 cpufreq_dbs_governor_stop +EXPORT_SYMBOL_GPL vmlinux 0x290ae71b dev_pm_get_subsys_data +EXPORT_SYMBOL_GPL vmlinux 0x2911aee9 acpi_dma_configure +EXPORT_SYMBOL_GPL vmlinux 0x291d26e7 ata_sas_port_resume +EXPORT_SYMBOL_GPL vmlinux 0x29252e74 __tracepoint_block_unplug +EXPORT_SYMBOL_GPL vmlinux 0x29366b61 register_ftrace_direct +EXPORT_SYMBOL_GPL vmlinux 0x2951a872 trace_clock_local +EXPORT_SYMBOL_GPL vmlinux 0x295b4826 dmaengine_desc_get_metadata_ptr +EXPORT_SYMBOL_GPL vmlinux 0x296949a7 ata_cable_80wire +EXPORT_SYMBOL_GPL vmlinux 0x2978a762 phy_calibrate +EXPORT_SYMBOL_GPL vmlinux 0x297edc7c nvme_kill_queues +EXPORT_SYMBOL_GPL vmlinux 0x299d4cfe class_remove_file_ns +EXPORT_SYMBOL_GPL vmlinux 0x29a159af dev_get_regmap +EXPORT_SYMBOL_GPL vmlinux 0x29a55078 scsi_host_complete_all_commands +EXPORT_SYMBOL_GPL vmlinux 0x29b38e26 regulator_map_voltage_pickable_linear_range +EXPORT_SYMBOL_GPL vmlinux 0x29c2d11b fsnotify_get_group +EXPORT_SYMBOL_GPL vmlinux 0x29dcee07 rtnl_link_register +EXPORT_SYMBOL_GPL vmlinux 0x29e99471 tcp_leave_memory_pressure +EXPORT_SYMBOL_GPL vmlinux 0x29eb564f add_page_wait_queue +EXPORT_SYMBOL_GPL vmlinux 0x29eba37f current_is_async +EXPORT_SYMBOL_GPL vmlinux 0x29f95a43 regmap_raw_read +EXPORT_SYMBOL_GPL vmlinux 0x29fbebaa dev_pm_opp_put_prop_name +EXPORT_SYMBOL_GPL vmlinux 0x2a198412 tty_get_pgrp +EXPORT_SYMBOL_GPL vmlinux 0x2a2aea17 clk_fixed_rate_ops +EXPORT_SYMBOL_GPL vmlinux 0x2a37423e trace_event_raw_init +EXPORT_SYMBOL_GPL vmlinux 0x2a575099 nvdimm_setup_pfn +EXPORT_SYMBOL_GPL vmlinux 0x2a58ae55 disable_kprobe +EXPORT_SYMBOL_GPL vmlinux 0x2a62cb3a ring_buffer_overrun_cpu +EXPORT_SYMBOL_GPL vmlinux 0x2a641e48 xhci_run +EXPORT_SYMBOL_GPL vmlinux 0x2a678a13 __suspend_report_result +EXPORT_SYMBOL_GPL vmlinux 0x2a6e70c4 trace_event_ignore_this_pid +EXPORT_SYMBOL_GPL vmlinux 0x2a8e2710 handle_bad_irq +EXPORT_SYMBOL_GPL vmlinux 0x2a8f3162 __vfs_removexattr_noperm +EXPORT_SYMBOL_GPL vmlinux 0x2a961a19 gpiod_get_raw_array_value_cansleep +EXPORT_SYMBOL_GPL vmlinux 0x2aa5025b acpi_match_device +EXPORT_SYMBOL_GPL vmlinux 0x2aa68e03 md_allow_write +EXPORT_SYMBOL_GPL vmlinux 0x2aab2f58 crypto_unregister_akcipher +EXPORT_SYMBOL_GPL vmlinux 0x2aadad1a efi_capsule_update +EXPORT_SYMBOL_GPL vmlinux 0x2ab434b2 irq_generic_chip_ops +EXPORT_SYMBOL_GPL vmlinux 0x2ab84821 cpuidle_unregister +EXPORT_SYMBOL_GPL vmlinux 0x2ac2eee2 vmf_insert_pfn_pmd_prot +EXPORT_SYMBOL_GPL vmlinux 0x2ada1856 to_nd_desc +EXPORT_SYMBOL_GPL vmlinux 0x2adf98e0 phy_modify_mmd_changed +EXPORT_SYMBOL_GPL vmlinux 0x2ae686cb irq_chip_unmask_parent +EXPORT_SYMBOL_GPL vmlinux 0x2ae6c308 __devm_irq_alloc_descs +EXPORT_SYMBOL_GPL vmlinux 0x2afdf168 power_supply_put +EXPORT_SYMBOL_GPL vmlinux 0x2aff68f9 perf_guest_get_msrs +EXPORT_SYMBOL_GPL vmlinux 0x2b140cfe tty_ldisc_flush +EXPORT_SYMBOL_GPL vmlinux 0x2b25c845 devm_clk_unregister +EXPORT_SYMBOL_GPL vmlinux 0x2b260a74 __tracepoint_cpu_idle +EXPORT_SYMBOL_GPL vmlinux 0x2b2852b0 kthread_mod_delayed_work +EXPORT_SYMBOL_GPL vmlinux 0x2b366da8 sysfs_remove_bin_file +EXPORT_SYMBOL_GPL vmlinux 0x2b3d3a13 regmap_field_read +EXPORT_SYMBOL_GPL vmlinux 0x2b4509dd devlink_health_reporter_state_update +EXPORT_SYMBOL_GPL vmlinux 0x2b485a25 blkg_prfill_rwstat +EXPORT_SYMBOL_GPL vmlinux 0x2b6150fb power_supply_temp2resist_simple +EXPORT_SYMBOL_GPL vmlinux 0x2b6636f1 netlink_add_tap +EXPORT_SYMBOL_GPL vmlinux 0x2b67b6b7 mds_idle_clear +EXPORT_SYMBOL_GPL vmlinux 0x2b6a37b5 nd_region_provider_data +EXPORT_SYMBOL_GPL vmlinux 0x2b6bf969 ata_bmdma_port_ops +EXPORT_SYMBOL_GPL vmlinux 0x2b6d960d synth_event_cmd_init +EXPORT_SYMBOL_GPL vmlinux 0x2b7fc385 hv_init_clocksource +EXPORT_SYMBOL_GPL vmlinux 0x2b952517 clk_has_parent +EXPORT_SYMBOL_GPL vmlinux 0x2b9997fb atomic_notifier_chain_register +EXPORT_SYMBOL_GPL vmlinux 0x2b99cf20 gpiochip_add_data_with_key +EXPORT_SYMBOL_GPL vmlinux 0x2ba2c3e8 phy_start_machine +EXPORT_SYMBOL_GPL vmlinux 0x2ba3315b dst_cache_set_ip4 +EXPORT_SYMBOL_GPL vmlinux 0x2bbc7a6a crypto_register_acomp +EXPORT_SYMBOL_GPL vmlinux 0x2bc6db28 sbitmap_bitmap_show +EXPORT_SYMBOL_GPL vmlinux 0x2be09d3c acomp_request_alloc +EXPORT_SYMBOL_GPL vmlinux 0x2be43cd3 tcpv6_prot +EXPORT_SYMBOL_GPL vmlinux 0x2c208607 power_supply_is_system_supplied +EXPORT_SYMBOL_GPL vmlinux 0x2c24d28c tpm_calc_ordinal_duration +EXPORT_SYMBOL_GPL vmlinux 0x2c2f5a09 x86_family +EXPORT_SYMBOL_GPL vmlinux 0x2c3054f9 net_inc_ingress_queue +EXPORT_SYMBOL_GPL vmlinux 0x2c635527 arch_invalidate_pmem +EXPORT_SYMBOL_GPL vmlinux 0x2c668c67 nd_cmd_in_size +EXPORT_SYMBOL_GPL vmlinux 0x2c66ac85 devlink_info_serial_number_put +EXPORT_SYMBOL_GPL vmlinux 0x2c79247c sysfs_update_group +EXPORT_SYMBOL_GPL vmlinux 0x2c79b5ca trace_array_printk +EXPORT_SYMBOL_GPL vmlinux 0x2c7db649 irq_dispose_mapping +EXPORT_SYMBOL_GPL vmlinux 0x2c8a4448 pinctrl_get_group_pins +EXPORT_SYMBOL_GPL vmlinux 0x2c8dd6b8 edac_mem_types +EXPORT_SYMBOL_GPL vmlinux 0x2c8eb914 regulator_allow_bypass +EXPORT_SYMBOL_GPL vmlinux 0x2c8f0174 xdp_rxq_info_reg_mem_model +EXPORT_SYMBOL_GPL vmlinux 0x2c9000eb ata_noop_qc_prep +EXPORT_SYMBOL_GPL vmlinux 0x2c9269aa fsnotify_find_mark +EXPORT_SYMBOL_GPL vmlinux 0x2c9b64c1 pci_epc_get_msix +EXPORT_SYMBOL_GPL vmlinux 0x2ca544dc xhci_ext_cap_init +EXPORT_SYMBOL_GPL vmlinux 0x2cadba93 acpi_nfit_ctl +EXPORT_SYMBOL_GPL vmlinux 0x2cb72b89 rio_route_clr_table +EXPORT_SYMBOL_GPL vmlinux 0x2cbbfcee dm_internal_suspend_fast +EXPORT_SYMBOL_GPL vmlinux 0x2ce742b9 inet_csk_route_child_sock +EXPORT_SYMBOL_GPL vmlinux 0x2cea32ee unregister_oldmem_pfn_is_ram +EXPORT_SYMBOL_GPL vmlinux 0x2cead240 __devm_reset_control_get +EXPORT_SYMBOL_GPL vmlinux 0x2d049a99 desc_to_gpio +EXPORT_SYMBOL_GPL vmlinux 0x2d1b02d2 usermodehelper_read_lock_wait +EXPORT_SYMBOL_GPL vmlinux 0x2d1ecf58 acpi_nfit_init +EXPORT_SYMBOL_GPL vmlinux 0x2d1f2131 acpi_subsys_complete +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 0x2d477a6a vring_del_virtqueue +EXPORT_SYMBOL_GPL vmlinux 0x2d480bc9 pm_runtime_get_if_active +EXPORT_SYMBOL_GPL vmlinux 0x2d6aa0f0 arch_apei_enable_cmcff +EXPORT_SYMBOL_GPL vmlinux 0x2d7526e6 hwspin_lock_request_specific +EXPORT_SYMBOL_GPL vmlinux 0x2d8ae6c3 edac_pci_del_device +EXPORT_SYMBOL_GPL vmlinux 0x2d91d0b3 usb_altnum_to_altsetting +EXPORT_SYMBOL_GPL vmlinux 0x2daa2177 x509_free_certificate +EXPORT_SYMBOL_GPL vmlinux 0x2dcc57fb dma_async_device_channel_register +EXPORT_SYMBOL_GPL vmlinux 0x2dd65c68 rt_mutex_unlock +EXPORT_SYMBOL_GPL vmlinux 0x2de6b596 spi_alloc_device +EXPORT_SYMBOL_GPL vmlinux 0x2dfe8849 usb_hub_find_child +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 0x2e25ef1c phy_pm_runtime_get_sync +EXPORT_SYMBOL_GPL vmlinux 0x2e2df5ac ip6_flush_pending_frames +EXPORT_SYMBOL_GPL vmlinux 0x2e2df7f4 irq_remapping_cap +EXPORT_SYMBOL_GPL vmlinux 0x2e43fa9f usb_hcd_platform_shutdown +EXPORT_SYMBOL_GPL vmlinux 0x2e678211 xas_find_conflict +EXPORT_SYMBOL_GPL vmlinux 0x2e8777f3 pci_hp_deregister +EXPORT_SYMBOL_GPL vmlinux 0x2e9741a6 tty_ldisc_ref_wait +EXPORT_SYMBOL_GPL vmlinux 0x2e980d4c uprobe_unregister +EXPORT_SYMBOL_GPL vmlinux 0x2e99640e netdev_rx_handler_unregister +EXPORT_SYMBOL_GPL vmlinux 0x2e9f5353 nfnl_ct_hook +EXPORT_SYMBOL_GPL vmlinux 0x2eba84c3 blk_mq_queue_inflight +EXPORT_SYMBOL_GPL vmlinux 0x2ebb19fd execute_in_process_context +EXPORT_SYMBOL_GPL vmlinux 0x2ebce548 rio_map_inb_region +EXPORT_SYMBOL_GPL vmlinux 0x2ebe3135 cpu_is_hotpluggable +EXPORT_SYMBOL_GPL vmlinux 0x2ec41fe8 dev_pm_qos_expose_flags +EXPORT_SYMBOL_GPL vmlinux 0x2ec71b23 devm_gpio_request +EXPORT_SYMBOL_GPL vmlinux 0x2eda422e pci_msi_unmask_irq +EXPORT_SYMBOL_GPL vmlinux 0x2ee31e60 devfreq_event_add_edev +EXPORT_SYMBOL_GPL vmlinux 0x2ee66058 synth_event_add_next_val +EXPORT_SYMBOL_GPL vmlinux 0x2ee7c52b btree_visitor +EXPORT_SYMBOL_GPL vmlinux 0x2ef554a3 napi_hash_del +EXPORT_SYMBOL_GPL vmlinux 0x2f0c2f6b device_dma_supported +EXPORT_SYMBOL_GPL vmlinux 0x2f0d9053 usb_otg_state_string +EXPORT_SYMBOL_GPL vmlinux 0x2f2c95c4 flush_work +EXPORT_SYMBOL_GPL vmlinux 0x2f3d37fb blk_execute_rq_nowait +EXPORT_SYMBOL_GPL vmlinux 0x2f4113a2 dcookie_register +EXPORT_SYMBOL_GPL vmlinux 0x2f4880df static_key_slow_dec +EXPORT_SYMBOL_GPL vmlinux 0x2f509aee __phy_modify_mmd +EXPORT_SYMBOL_GPL vmlinux 0x2f50a55c pingv6_ops +EXPORT_SYMBOL_GPL vmlinux 0x2f5fce02 fib_rule_matchall +EXPORT_SYMBOL_GPL vmlinux 0x2f63c4de dax_region_put +EXPORT_SYMBOL_GPL vmlinux 0x2f64415f unregister_acpi_hed_notifier +EXPORT_SYMBOL_GPL vmlinux 0x2f8092a4 tcp_unregister_congestion_control +EXPORT_SYMBOL_GPL vmlinux 0x2f92f58e ata_std_sched_eh +EXPORT_SYMBOL_GPL vmlinux 0x2f9b0c75 skb_pull_rcsum +EXPORT_SYMBOL_GPL vmlinux 0x2fab7823 blk_mq_start_stopped_hw_queue +EXPORT_SYMBOL_GPL vmlinux 0x2faeeb45 dev_pm_qos_hide_latency_limit +EXPORT_SYMBOL_GPL vmlinux 0x2fb72e9b sbitmap_init_node +EXPORT_SYMBOL_GPL vmlinux 0x2fc4f368 fsl_mc_device_group +EXPORT_SYMBOL_GPL vmlinux 0x2fdcfd28 smca_get_long_name +EXPORT_SYMBOL_GPL vmlinux 0x2fe3776b kthread_use_mm +EXPORT_SYMBOL_GPL vmlinux 0x2fea9989 usb_hcd_pci_probe +EXPORT_SYMBOL_GPL vmlinux 0x2fed51f4 sysfs_break_active_protection +EXPORT_SYMBOL_GPL vmlinux 0x30148c1d bdev_disk_changed +EXPORT_SYMBOL_GPL vmlinux 0x301efb32 gpiod_set_consumer_name +EXPORT_SYMBOL_GPL vmlinux 0x30283b68 usb_get_maximum_speed +EXPORT_SYMBOL_GPL vmlinux 0x30313796 edac_pci_free_ctl_info +EXPORT_SYMBOL_GPL vmlinux 0x303237b8 ata_qc_complete +EXPORT_SYMBOL_GPL vmlinux 0x304f107a fsnotify_put_group +EXPORT_SYMBOL_GPL vmlinux 0x304f474b device_link_del +EXPORT_SYMBOL_GPL vmlinux 0x305a4470 wm831x_reg_unlock +EXPORT_SYMBOL_GPL vmlinux 0x3061cfce ring_buffer_entries_cpu +EXPORT_SYMBOL_GPL vmlinux 0x306f5576 pkcs7_verify +EXPORT_SYMBOL_GPL vmlinux 0x3080a51b balloon_page_list_enqueue +EXPORT_SYMBOL_GPL vmlinux 0x30876277 pm_generic_resume +EXPORT_SYMBOL_GPL vmlinux 0x309235b3 iommu_sva_get_pasid +EXPORT_SYMBOL_GPL vmlinux 0x30a2fa8f devlink_port_params_unregister +EXPORT_SYMBOL_GPL vmlinux 0x30aebfa4 iommu_aux_get_pasid +EXPORT_SYMBOL_GPL vmlinux 0x30bd8cbf kernel_read_file_from_path +EXPORT_SYMBOL_GPL vmlinux 0x30cf804f slow_virt_to_phys +EXPORT_SYMBOL_GPL vmlinux 0x30dcd110 ata_sas_port_start +EXPORT_SYMBOL_GPL vmlinux 0x30e05c4c set_cpus_allowed_ptr +EXPORT_SYMBOL_GPL vmlinux 0x30e1ec25 apei_map_generic_address +EXPORT_SYMBOL_GPL vmlinux 0x30e42163 tick_nohz_dep_clear_cpu +EXPORT_SYMBOL_GPL vmlinux 0x30e80638 tty_ldisc_release +EXPORT_SYMBOL_GPL vmlinux 0x30f97c53 rio_release_inb_mbox +EXPORT_SYMBOL_GPL vmlinux 0x31028beb acpi_create_platform_device +EXPORT_SYMBOL_GPL vmlinux 0x310663a8 component_bind_all +EXPORT_SYMBOL_GPL vmlinux 0x31128b8e hv_remove_kexec_handler +EXPORT_SYMBOL_GPL vmlinux 0x31266931 con_debug_leave +EXPORT_SYMBOL_GPL vmlinux 0x313a5fba blk_freeze_queue_start +EXPORT_SYMBOL_GPL vmlinux 0x31414159 ip_tunnel_get_stats64 +EXPORT_SYMBOL_GPL vmlinux 0x314a275f crypto_aead_setkey +EXPORT_SYMBOL_GPL vmlinux 0x31619c41 iommu_device_unlink +EXPORT_SYMBOL_GPL vmlinux 0x31633083 nf_ipv6_ops +EXPORT_SYMBOL_GPL vmlinux 0x31785f08 __tracepoint_br_fdb_add +EXPORT_SYMBOL_GPL vmlinux 0x317f94dc ip_fib_metrics_init +EXPORT_SYMBOL_GPL vmlinux 0x31839ad3 software_node_register_nodes +EXPORT_SYMBOL_GPL vmlinux 0x31916206 devres_open_group +EXPORT_SYMBOL_GPL vmlinux 0x3192d768 cpufreq_remove_update_util_hook +EXPORT_SYMBOL_GPL vmlinux 0x31a106c7 sfp_bus_find_fwnode +EXPORT_SYMBOL_GPL vmlinux 0x31a95e8b ring_buffer_record_enable_cpu +EXPORT_SYMBOL_GPL vmlinux 0x31aee135 spi_unregister_device +EXPORT_SYMBOL_GPL vmlinux 0x31c22fa9 __rio_local_read_config_32 +EXPORT_SYMBOL_GPL vmlinux 0x31c7970f pciserial_suspend_ports +EXPORT_SYMBOL_GPL vmlinux 0x31ce89dd sched_trace_cfs_rq_avg +EXPORT_SYMBOL_GPL vmlinux 0x31dc3ada dev_pm_domain_start +EXPORT_SYMBOL_GPL vmlinux 0x31e2aaee get_device_system_crosststamp +EXPORT_SYMBOL_GPL vmlinux 0x31e2e77f vmbus_free_mmio +EXPORT_SYMBOL_GPL vmlinux 0x31fd67b2 regmap_multi_reg_write +EXPORT_SYMBOL_GPL vmlinux 0x32191a5c inet_csk_update_pmtu +EXPORT_SYMBOL_GPL vmlinux 0x3221c14f usb_debug_root +EXPORT_SYMBOL_GPL vmlinux 0x3224b2a9 mpi_read_raw_from_sgl +EXPORT_SYMBOL_GPL vmlinux 0x322d5b7f xfrm_audit_state_replay +EXPORT_SYMBOL_GPL vmlinux 0x3232c99b mmu_notifier_range_update_to_read_only +EXPORT_SYMBOL_GPL vmlinux 0x323cbf33 debugfs_rename +EXPORT_SYMBOL_GPL vmlinux 0x324db169 vtime_guest_exit +EXPORT_SYMBOL_GPL vmlinux 0x3254b13e blkg_rwstat_recursive_sum +EXPORT_SYMBOL_GPL vmlinux 0x325b6c4d replace_page_cache_page +EXPORT_SYMBOL_GPL vmlinux 0x326cefe5 hwpoison_filter_dev_minor +EXPORT_SYMBOL_GPL vmlinux 0x3286bde8 md_bitmap_copy_from_slot +EXPORT_SYMBOL_GPL vmlinux 0x328e3354 __memcpy_flushcache +EXPORT_SYMBOL_GPL vmlinux 0x328e8ff1 acpi_set_modalias +EXPORT_SYMBOL_GPL vmlinux 0x3290e78d trace_array_set_clr_event +EXPORT_SYMBOL_GPL vmlinux 0x32ab06cc irq_percpu_is_enabled +EXPORT_SYMBOL_GPL vmlinux 0x32b3a893 securityfs_remove +EXPORT_SYMBOL_GPL vmlinux 0x32bc0fcf preempt_notifier_dec +EXPORT_SYMBOL_GPL vmlinux 0x32c2bb04 list_lru_walk_node +EXPORT_SYMBOL_GPL vmlinux 0x32c39040 vmbus_driver_unregister +EXPORT_SYMBOL_GPL vmlinux 0x32c3cb4e class_compat_register +EXPORT_SYMBOL_GPL vmlinux 0x32c5345b phy_restore_page +EXPORT_SYMBOL_GPL vmlinux 0x32c6c604 __tracepoint_attach_device_to_domain +EXPORT_SYMBOL_GPL vmlinux 0x32d56663 agp_add_bridge +EXPORT_SYMBOL_GPL vmlinux 0x32e3b076 mxcsr_feature_mask +EXPORT_SYMBOL_GPL vmlinux 0x32f11d86 bpf_sk_storage_diag_put +EXPORT_SYMBOL_GPL vmlinux 0x32f94f62 governor_sysfs_ops +EXPORT_SYMBOL_GPL vmlinux 0x32fcd9fb device_property_read_string +EXPORT_SYMBOL_GPL vmlinux 0x330010b6 cpuset_cgrp_subsys_enabled_key +EXPORT_SYMBOL_GPL vmlinux 0x33051e20 ip6_dst_lookup +EXPORT_SYMBOL_GPL vmlinux 0x33077b86 strp_init +EXPORT_SYMBOL_GPL vmlinux 0x33187792 __phy_modify_mmd_changed +EXPORT_SYMBOL_GPL vmlinux 0x33205162 irqd_cfg +EXPORT_SYMBOL_GPL vmlinux 0x333f664c devm_gpiod_get_optional +EXPORT_SYMBOL_GPL vmlinux 0x33407b1a fork_usermode_blob +EXPORT_SYMBOL_GPL vmlinux 0x3342fb8f fscrypt_show_test_dummy_encryption +EXPORT_SYMBOL_GPL vmlinux 0x33489511 devlink_unregister +EXPORT_SYMBOL_GPL vmlinux 0x335c570f enable_percpu_irq +EXPORT_SYMBOL_GPL vmlinux 0x33679a25 led_set_brightness_nosleep +EXPORT_SYMBOL_GPL vmlinux 0x3372706b __platform_create_bundle +EXPORT_SYMBOL_GPL vmlinux 0x33727789 crypto_skcipher_setkey +EXPORT_SYMBOL_GPL vmlinux 0x33745d2e iptunnel_handle_offloads +EXPORT_SYMBOL_GPL vmlinux 0x3376ab16 pm_stay_awake +EXPORT_SYMBOL_GPL vmlinux 0x33b361bf usb_sg_wait +EXPORT_SYMBOL_GPL vmlinux 0x33c07d7f crypto_create_tfm +EXPORT_SYMBOL_GPL vmlinux 0x33de3372 gen_pool_get +EXPORT_SYMBOL_GPL vmlinux 0x33e2cb70 nvme_enable_ctrl +EXPORT_SYMBOL_GPL vmlinux 0x33eb382f regulator_get_voltage_sel_pickable_regmap +EXPORT_SYMBOL_GPL vmlinux 0x33fbf3b7 nvdimm_bus_register +EXPORT_SYMBOL_GPL vmlinux 0x340db976 regulator_bulk_force_disable +EXPORT_SYMBOL_GPL vmlinux 0x3421ca7c __tracepoint_neigh_event_send_dead +EXPORT_SYMBOL_GPL vmlinux 0x3422b858 crypto_grab_spawn +EXPORT_SYMBOL_GPL vmlinux 0x34331f04 acpi_os_unmap_memory +EXPORT_SYMBOL_GPL vmlinux 0x34407691 crypto_has_ahash +EXPORT_SYMBOL_GPL vmlinux 0x345abd59 gpiod_cansleep +EXPORT_SYMBOL_GPL vmlinux 0x3463aa58 usb_alloc_streams +EXPORT_SYMBOL_GPL vmlinux 0x34675f3a thermal_zone_device_update +EXPORT_SYMBOL_GPL vmlinux 0x34737e76 ata_pci_bmdma_init +EXPORT_SYMBOL_GPL vmlinux 0x347927d7 debugfs_create_x8 +EXPORT_SYMBOL_GPL vmlinux 0x34a31e9d acpi_device_uevent_modalias +EXPORT_SYMBOL_GPL vmlinux 0x34bab869 look_up_OID +EXPORT_SYMBOL_GPL vmlinux 0x34c1a9d9 mddev_unlock +EXPORT_SYMBOL_GPL vmlinux 0x34d7fcc9 pinctrl_find_gpio_range_from_pin_nolock +EXPORT_SYMBOL_GPL vmlinux 0x35018f79 inet_twsk_hashdance +EXPORT_SYMBOL_GPL vmlinux 0x35171fc5 efivar_entry_find +EXPORT_SYMBOL_GPL vmlinux 0x35249bab ata_ehi_push_desc +EXPORT_SYMBOL_GPL vmlinux 0x352ec68b bpf_offload_dev_destroy +EXPORT_SYMBOL_GPL vmlinux 0x35306072 pci_destroy_slot +EXPORT_SYMBOL_GPL vmlinux 0x353bbe51 irq_remove_generic_chip +EXPORT_SYMBOL_GPL vmlinux 0x35400164 pci_epc_set_msix +EXPORT_SYMBOL_GPL vmlinux 0x355bc89a klist_next +EXPORT_SYMBOL_GPL vmlinux 0x3567743b vfio_external_user_iommu_id +EXPORT_SYMBOL_GPL vmlinux 0x356b2201 mbox_request_channel_byname +EXPORT_SYMBOL_GPL vmlinux 0x3586767d phy_optional_get +EXPORT_SYMBOL_GPL vmlinux 0x358ad052 of_phy_put +EXPORT_SYMBOL_GPL vmlinux 0x3591f957 dma_request_chan +EXPORT_SYMBOL_GPL vmlinux 0x359c8538 ata_sff_dma_pause +EXPORT_SYMBOL_GPL vmlinux 0x35a23ae6 serial8250_rx_chars +EXPORT_SYMBOL_GPL vmlinux 0x35aae435 fwnode_graph_get_endpoint_by_id +EXPORT_SYMBOL_GPL vmlinux 0x35abd1e5 iommu_domain_free +EXPORT_SYMBOL_GPL vmlinux 0x35c2d7c1 rio_dev_get +EXPORT_SYMBOL_GPL vmlinux 0x35c4d8ca clean_acked_data_disable +EXPORT_SYMBOL_GPL vmlinux 0x35d3dc46 crypto_alg_sem +EXPORT_SYMBOL_GPL vmlinux 0x35dc6b73 usb_hcd_start_port_resume +EXPORT_SYMBOL_GPL vmlinux 0x35dd8d83 usb_alloc_dev +EXPORT_SYMBOL_GPL vmlinux 0x35e348dc devm_spi_mem_dirmap_destroy +EXPORT_SYMBOL_GPL vmlinux 0x35e46c37 iommu_page_response +EXPORT_SYMBOL_GPL vmlinux 0x35f282b7 blk_register_queue +EXPORT_SYMBOL_GPL vmlinux 0x35f4973b netdev_set_default_ethtool_ops +EXPORT_SYMBOL_GPL vmlinux 0x36075bb5 iommu_group_register_notifier +EXPORT_SYMBOL_GPL vmlinux 0x360c645e of_icc_get +EXPORT_SYMBOL_GPL vmlinux 0x3616fe65 lwtunnel_encap_del_ops +EXPORT_SYMBOL_GPL vmlinux 0x36173c1d phys_to_target_node +EXPORT_SYMBOL_GPL vmlinux 0x361cecd8 fuse_fill_super_common +EXPORT_SYMBOL_GPL vmlinux 0x36242943 switchdev_deferred_process +EXPORT_SYMBOL_GPL vmlinux 0x3629eaf0 rio_add_device +EXPORT_SYMBOL_GPL vmlinux 0x362c0793 ipv6_dup_options +EXPORT_SYMBOL_GPL vmlinux 0x3646c066 ip_tunnel_changelink +EXPORT_SYMBOL_GPL vmlinux 0x3665916f spi_controller_dma_map_mem_op_data +EXPORT_SYMBOL_GPL vmlinux 0x367fa7af pm_clk_add_clk +EXPORT_SYMBOL_GPL vmlinux 0x368d5236 nd_region_dev +EXPORT_SYMBOL_GPL vmlinux 0x368e58a5 security_file_permission +EXPORT_SYMBOL_GPL vmlinux 0x3691f459 invalidate_inode_pages2 +EXPORT_SYMBOL_GPL vmlinux 0x3699ac68 iptunnel_xmit +EXPORT_SYMBOL_GPL vmlinux 0x369fcd70 tracing_snapshot +EXPORT_SYMBOL_GPL vmlinux 0x36af416f nvme_wait_reset +EXPORT_SYMBOL_GPL vmlinux 0x36b07297 sock_diag_register_inet_compat +EXPORT_SYMBOL_GPL vmlinux 0x36b5497e intel_iommu_enabled +EXPORT_SYMBOL_GPL vmlinux 0x36b7665e devm_gpio_free +EXPORT_SYMBOL_GPL vmlinux 0x36e5400f pinctrl_dev_get_devname +EXPORT_SYMBOL_GPL vmlinux 0x36f17706 zap_vma_ptes +EXPORT_SYMBOL_GPL vmlinux 0x36f189a0 __hwspin_trylock +EXPORT_SYMBOL_GPL vmlinux 0x36fb3c4c key_type_logon +EXPORT_SYMBOL_GPL vmlinux 0x3715f9ed __root_device_register +EXPORT_SYMBOL_GPL vmlinux 0x37169f79 cpu_latency_qos_update_request +EXPORT_SYMBOL_GPL vmlinux 0x37228386 blk_mq_pci_map_queues +EXPORT_SYMBOL_GPL vmlinux 0x3743bfb9 nd_cmd_out_size +EXPORT_SYMBOL_GPL vmlinux 0x374c53e1 ata_get_cmd_descript +EXPORT_SYMBOL_GPL vmlinux 0x3750d770 erst_read +EXPORT_SYMBOL_GPL vmlinux 0x3759bda2 wakeup_source_destroy +EXPORT_SYMBOL_GPL vmlinux 0x3773bb73 pci_epf_unregister_driver +EXPORT_SYMBOL_GPL vmlinux 0x3779b7d3 usb_poison_urb +EXPORT_SYMBOL_GPL vmlinux 0x377bbcbc pm_suspend_target_state +EXPORT_SYMBOL_GPL vmlinux 0x37af29c7 fat_scan +EXPORT_SYMBOL_GPL vmlinux 0x37baf626 wm831x_reg_write +EXPORT_SYMBOL_GPL vmlinux 0x37bc3020 rhltable_init +EXPORT_SYMBOL_GPL vmlinux 0x37bf6bb3 vga_default_device +EXPORT_SYMBOL_GPL vmlinux 0x37c39bc2 page_endio +EXPORT_SYMBOL_GPL vmlinux 0x37ea659f add_memory +EXPORT_SYMBOL_GPL vmlinux 0x37eca1ca add_swap_extent +EXPORT_SYMBOL_GPL vmlinux 0x37ed2351 regmap_noinc_read +EXPORT_SYMBOL_GPL vmlinux 0x37ed3e56 fat_remove_entries +EXPORT_SYMBOL_GPL vmlinux 0x37f292c4 pmc_atom_write +EXPORT_SYMBOL_GPL vmlinux 0x37f79a41 pm_clk_init +EXPORT_SYMBOL_GPL vmlinux 0x37fa0d46 fib_nh_common_release +EXPORT_SYMBOL_GPL vmlinux 0x3801776b __ioread32_copy +EXPORT_SYMBOL_GPL vmlinux 0x380c8c4f tcp_enter_memory_pressure +EXPORT_SYMBOL_GPL vmlinux 0x38131766 ata_sff_softreset +EXPORT_SYMBOL_GPL vmlinux 0x381bf308 relay_late_setup_files +EXPORT_SYMBOL_GPL vmlinux 0x38342825 usb_create_hcd +EXPORT_SYMBOL_GPL vmlinux 0x38374815 clear_selection +EXPORT_SYMBOL_GPL vmlinux 0x3837e2e2 acpi_find_child_device +EXPORT_SYMBOL_GPL vmlinux 0x384a8c24 exportfs_encode_inode_fh +EXPORT_SYMBOL_GPL vmlinux 0x386320ca cpufreq_dbs_governor_init +EXPORT_SYMBOL_GPL vmlinux 0x3866e217 nvmem_device_write +EXPORT_SYMBOL_GPL vmlinux 0x38722f80 kernel_fpu_end +EXPORT_SYMBOL_GPL vmlinux 0x387b9b82 crypto_stats_akcipher_decrypt +EXPORT_SYMBOL_GPL vmlinux 0x388df70d acpi_initialize_hp_context +EXPORT_SYMBOL_GPL vmlinux 0x388e5dca usb_acpi_set_power_state +EXPORT_SYMBOL_GPL vmlinux 0x389b64a2 static_key_count +EXPORT_SYMBOL_GPL vmlinux 0x389f816a spi_setup +EXPORT_SYMBOL_GPL vmlinux 0x38aa1397 gpiod_add_lookup_table +EXPORT_SYMBOL_GPL vmlinux 0x38b565b8 shmem_zero_setup +EXPORT_SYMBOL_GPL vmlinux 0x38bc9089 pm_clk_add +EXPORT_SYMBOL_GPL vmlinux 0x38c3ff30 freq_qos_add_notifier +EXPORT_SYMBOL_GPL vmlinux 0x38c6df81 pci_epc_init_notify +EXPORT_SYMBOL_GPL vmlinux 0x38ca7b1d ata_bmdma32_port_ops +EXPORT_SYMBOL_GPL vmlinux 0x38e2635c invalidate_inode_pages2_range +EXPORT_SYMBOL_GPL vmlinux 0x38e5bc5a clk_set_rate_range +EXPORT_SYMBOL_GPL vmlinux 0x38f01483 gen10g_config_aneg +EXPORT_SYMBOL_GPL vmlinux 0x38fa4bfc crypto_register_shashes +EXPORT_SYMBOL_GPL vmlinux 0x39004b41 pci_hp_remove_module_link +EXPORT_SYMBOL_GPL vmlinux 0x39011a3a udp6_lib_lookup +EXPORT_SYMBOL_GPL vmlinux 0x391520d7 spi_controller_resume +EXPORT_SYMBOL_GPL vmlinux 0x393917bc scsi_device_from_queue +EXPORT_SYMBOL_GPL vmlinux 0x394a8891 __regmap_init +EXPORT_SYMBOL_GPL vmlinux 0x395cc9ee devm_fwnode_gpiod_get_index +EXPORT_SYMBOL_GPL vmlinux 0x39682e3c __platform_register_drivers +EXPORT_SYMBOL_GPL vmlinux 0x396e2fd7 ms_hyperv +EXPORT_SYMBOL_GPL vmlinux 0x39885464 dequeue_signal +EXPORT_SYMBOL_GPL vmlinux 0x398b0441 dm_hold +EXPORT_SYMBOL_GPL vmlinux 0x398d6826 dax_writeback_mapping_range +EXPORT_SYMBOL_GPL vmlinux 0x39a2639d ata_acpi_gtm +EXPORT_SYMBOL_GPL vmlinux 0x39a7affc driver_deferred_probe_timeout +EXPORT_SYMBOL_GPL vmlinux 0x39ab6a39 devm_phy_destroy +EXPORT_SYMBOL_GPL vmlinux 0x39ac0b78 pci_probe_reset_bus +EXPORT_SYMBOL_GPL vmlinux 0x39bc1574 xfrm_dev_resume +EXPORT_SYMBOL_GPL vmlinux 0x39cedb1f dma_get_merge_boundary +EXPORT_SYMBOL_GPL vmlinux 0x39cfb517 kstrdup_quotable_file +EXPORT_SYMBOL_GPL vmlinux 0x39ded098 rdma_cgrp_subsys_enabled_key +EXPORT_SYMBOL_GPL vmlinux 0x39e49590 bpf_prog_put +EXPORT_SYMBOL_GPL vmlinux 0x39e61495 nf_logger_request_module +EXPORT_SYMBOL_GPL vmlinux 0x3a001215 device_store_ulong +EXPORT_SYMBOL_GPL vmlinux 0x3a167a6a virtqueue_enable_cb +EXPORT_SYMBOL_GPL vmlinux 0x3a26ed11 sched_clock +EXPORT_SYMBOL_GPL vmlinux 0x3a2e1b39 dm_report_zones_cb +EXPORT_SYMBOL_GPL vmlinux 0x3a32cafe ip_tunnel_dellink +EXPORT_SYMBOL_GPL vmlinux 0x3a3cb99a apply_to_existing_page_range +EXPORT_SYMBOL_GPL vmlinux 0x3a480bf2 agp_remove_bridge +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 0x3a61d012 inet6_hash +EXPORT_SYMBOL_GPL vmlinux 0x3a75a6e3 blk_queue_max_discard_segments +EXPORT_SYMBOL_GPL vmlinux 0x3a877fce usb_hcd_link_urb_to_ep +EXPORT_SYMBOL_GPL vmlinux 0x3a8bbb8e trace_clock_jiffies +EXPORT_SYMBOL_GPL vmlinux 0x3a9be019 asymmetric_key_id_partial +EXPORT_SYMBOL_GPL vmlinux 0x3aa2d77b nvme_start_ctrl +EXPORT_SYMBOL_GPL vmlinux 0x3aa84256 usb_hcd_resume_root_hub +EXPORT_SYMBOL_GPL vmlinux 0x3ab1fec2 platform_msi_domain_alloc_irqs +EXPORT_SYMBOL_GPL vmlinux 0x3aead263 cpufreq_dbs_governor_start +EXPORT_SYMBOL_GPL vmlinux 0x3aead5ad irq_set_chained_handler_and_data +EXPORT_SYMBOL_GPL vmlinux 0x3af578f5 hyperv_report_panic +EXPORT_SYMBOL_GPL vmlinux 0x3b2f4b02 klp_enable_patch +EXPORT_SYMBOL_GPL vmlinux 0x3b3865f1 xfrm_output +EXPORT_SYMBOL_GPL vmlinux 0x3b390014 tty_standard_install +EXPORT_SYMBOL_GPL vmlinux 0x3b5ba9c1 sk_psock_tls_strp_read +EXPORT_SYMBOL_GPL vmlinux 0x3b770279 ip_md_tunnel_xmit +EXPORT_SYMBOL_GPL vmlinux 0x3b91db5b intel_pt_handle_vmx +EXPORT_SYMBOL_GPL vmlinux 0x3b95f543 klp_shadow_free +EXPORT_SYMBOL_GPL vmlinux 0x3b9d9d94 kobject_uevent +EXPORT_SYMBOL_GPL vmlinux 0x3ba01b47 get_compat_sigset +EXPORT_SYMBOL_GPL vmlinux 0x3ba06a56 find_mci_by_dev +EXPORT_SYMBOL_GPL vmlinux 0x3ba94ca3 file_ra_state_init +EXPORT_SYMBOL_GPL vmlinux 0x3bb0dab3 get_dev_pagemap +EXPORT_SYMBOL_GPL vmlinux 0x3bb7dd66 fscrypt_ioctl_remove_key +EXPORT_SYMBOL_GPL vmlinux 0x3bdb5d28 alg_test +EXPORT_SYMBOL_GPL vmlinux 0x3beb67f1 genphy_c45_read_link +EXPORT_SYMBOL_GPL vmlinux 0x3bebc578 acpi_device_modalias +EXPORT_SYMBOL_GPL vmlinux 0x3bf17755 mpi_read_buffer +EXPORT_SYMBOL_GPL vmlinux 0x3bf71a2b pm_runtime_set_memalloc_noio +EXPORT_SYMBOL_GPL vmlinux 0x3bfa5a98 crypto_register_aeads +EXPORT_SYMBOL_GPL vmlinux 0x3c0e8050 hyperv_pcpu_input_arg +EXPORT_SYMBOL_GPL vmlinux 0x3c1c3725 rcu_fwd_progress_check +EXPORT_SYMBOL_GPL vmlinux 0x3c212744 sbitmap_del_wait_queue +EXPORT_SYMBOL_GPL vmlinux 0x3c23a70b gpiod_set_raw_array_value +EXPORT_SYMBOL_GPL vmlinux 0x3c2fd475 regulator_enable +EXPORT_SYMBOL_GPL vmlinux 0x3c4306f0 kernel_kobj +EXPORT_SYMBOL_GPL vmlinux 0x3c5df8ce xdp_attachment_query +EXPORT_SYMBOL_GPL vmlinux 0x3c5e54a8 pcie_bus_configure_settings +EXPORT_SYMBOL_GPL vmlinux 0x3c67b9e0 spi_get_next_queued_message +EXPORT_SYMBOL_GPL vmlinux 0x3c681dc4 ring_buffer_record_disable +EXPORT_SYMBOL_GPL vmlinux 0x3c7cf105 pci_cfg_access_trylock +EXPORT_SYMBOL_GPL vmlinux 0x3cce221e devlink_region_snapshot_id_put +EXPORT_SYMBOL_GPL vmlinux 0x3cd06035 add_input_randomness +EXPORT_SYMBOL_GPL vmlinux 0x3cdfa1b5 pci_user_read_config_byte +EXPORT_SYMBOL_GPL vmlinux 0x3ce0af3c crypto_comp_decompress +EXPORT_SYMBOL_GPL vmlinux 0x3ce31702 rio_register_mport +EXPORT_SYMBOL_GPL vmlinux 0x3ceb76b7 usb_remove_hcd +EXPORT_SYMBOL_GPL vmlinux 0x3d17481d iommu_aux_attach_device +EXPORT_SYMBOL_GPL vmlinux 0x3d1cacfe vfs_test_lock +EXPORT_SYMBOL_GPL vmlinux 0x3d251e1a unregister_kretprobes +EXPORT_SYMBOL_GPL vmlinux 0x3d361e35 __get_task_comm +EXPORT_SYMBOL_GPL vmlinux 0x3d369d42 vfs_writef +EXPORT_SYMBOL_GPL vmlinux 0x3d388324 dpm_resume_end +EXPORT_SYMBOL_GPL vmlinux 0x3d5047b4 pm_generic_poweroff_noirq +EXPORT_SYMBOL_GPL vmlinux 0x3d510a7b rcu_jiffies_till_stall_check +EXPORT_SYMBOL_GPL vmlinux 0x3d6454b6 nvdimm_bus_check_dimm_count +EXPORT_SYMBOL_GPL vmlinux 0x3d8baf3b zs_huge_class_size +EXPORT_SYMBOL_GPL vmlinux 0x3d979f51 crypto_register_skcipher +EXPORT_SYMBOL_GPL vmlinux 0x3d9bd3b0 tracing_snapshot_cond +EXPORT_SYMBOL_GPL vmlinux 0x3dabd1b5 regmap_raw_write +EXPORT_SYMBOL_GPL vmlinux 0x3db408d7 cpufreq_cpu_get_raw +EXPORT_SYMBOL_GPL vmlinux 0x3de9cae1 crypto_remove_final +EXPORT_SYMBOL_GPL vmlinux 0x3def9707 alloc_dax +EXPORT_SYMBOL_GPL vmlinux 0x3df4b4d7 ip_tunnel_uninit +EXPORT_SYMBOL_GPL vmlinux 0x3df82d00 mce_log +EXPORT_SYMBOL_GPL vmlinux 0x3e3c671a synth_event_trace +EXPORT_SYMBOL_GPL vmlinux 0x3e468848 register_virtio_device +EXPORT_SYMBOL_GPL vmlinux 0x3e491454 pinctrl_find_gpio_range_from_pin +EXPORT_SYMBOL_GPL vmlinux 0x3e7080cb mpi_read_from_buffer +EXPORT_SYMBOL_GPL vmlinux 0x3e745daf __netpoll_free +EXPORT_SYMBOL_GPL vmlinux 0x3e868708 crypto_unregister_skciphers +EXPORT_SYMBOL_GPL vmlinux 0x3ea5196d apei_osc_setup +EXPORT_SYMBOL_GPL vmlinux 0x3ec36eef fib_rules_seq_read +EXPORT_SYMBOL_GPL vmlinux 0x3ec4d80c crypto_unregister_rngs +EXPORT_SYMBOL_GPL vmlinux 0x3ec663ee pci_ats_supported +EXPORT_SYMBOL_GPL vmlinux 0x3ed24a5b kthread_unpark +EXPORT_SYMBOL_GPL vmlinux 0x3ed38703 crypto_stats_init +EXPORT_SYMBOL_GPL vmlinux 0x3ed96173 kset_find_obj +EXPORT_SYMBOL_GPL vmlinux 0x3ede3f21 acpi_bus_trim +EXPORT_SYMBOL_GPL vmlinux 0x3ede97dc devm_hwspin_lock_request +EXPORT_SYMBOL_GPL vmlinux 0x3ef051c8 crypto_inc +EXPORT_SYMBOL_GPL vmlinux 0x3efd1889 dax_direct_access +EXPORT_SYMBOL_GPL vmlinux 0x3f06540f fwnode_get_parent +EXPORT_SYMBOL_GPL vmlinux 0x3f1e2ed0 each_symbol_section +EXPORT_SYMBOL_GPL vmlinux 0x3f2196f8 acpi_dev_resource_address_space +EXPORT_SYMBOL_GPL vmlinux 0x3f3de29d devm_irq_alloc_generic_chip +EXPORT_SYMBOL_GPL vmlinux 0x3f4632cd phy_10gbit_features +EXPORT_SYMBOL_GPL vmlinux 0x3f72b16f gpiod_get_array_value +EXPORT_SYMBOL_GPL vmlinux 0x3f7a06e7 gpiod_get_value +EXPORT_SYMBOL_GPL vmlinux 0x3f7e7a32 sdev_evt_send +EXPORT_SYMBOL_GPL vmlinux 0x3f8185b7 shash_free_singlespawn_instance +EXPORT_SYMBOL_GPL vmlinux 0x3f831921 nf_hook_entries_delete_raw +EXPORT_SYMBOL_GPL vmlinux 0x3f83f8d3 rcu_bind_current_to_nocb +EXPORT_SYMBOL_GPL vmlinux 0x3f84bcd7 dax_alive +EXPORT_SYMBOL_GPL vmlinux 0x3f8ab72e devlink_fmsg_bool_put +EXPORT_SYMBOL_GPL vmlinux 0x3f9fbcab phy_pm_runtime_forbid +EXPORT_SYMBOL_GPL vmlinux 0x3fa47070 xfrm_audit_state_add +EXPORT_SYMBOL_GPL vmlinux 0x3fa75154 fat_getattr +EXPORT_SYMBOL_GPL vmlinux 0x3faa8e4e dw_pcie_setup_rc +EXPORT_SYMBOL_GPL vmlinux 0x3fae6ab0 hv_vp_index +EXPORT_SYMBOL_GPL vmlinux 0x3fafadcb register_pernet_device +EXPORT_SYMBOL_GPL vmlinux 0x3fb226f5 generic_fh_to_dentry +EXPORT_SYMBOL_GPL vmlinux 0x3fc3afbd dm_get_md +EXPORT_SYMBOL_GPL vmlinux 0x3fd9bffc device_set_wakeup_enable +EXPORT_SYMBOL_GPL vmlinux 0x3fe35aea irq_bypass_unregister_consumer +EXPORT_SYMBOL_GPL vmlinux 0x3fe6c346 devlink_fmsg_binary_pair_put +EXPORT_SYMBOL_GPL vmlinux 0x3fe89308 phy_reset +EXPORT_SYMBOL_GPL vmlinux 0x3ffdacf3 timerqueue_iterate_next +EXPORT_SYMBOL_GPL vmlinux 0x400a024b acpi_scan_lock_release +EXPORT_SYMBOL_GPL vmlinux 0x40143379 pci_remove_root_bus +EXPORT_SYMBOL_GPL vmlinux 0x40198504 regmap_mmio_detach_clk +EXPORT_SYMBOL_GPL vmlinux 0x401a7752 cpci_hp_unregister_bus +EXPORT_SYMBOL_GPL vmlinux 0x40267068 usb_anchor_resume_wakeups +EXPORT_SYMBOL_GPL vmlinux 0x402fb2e6 fib_rules_dump +EXPORT_SYMBOL_GPL vmlinux 0x4031b9b0 __ndisc_fill_addr_option +EXPORT_SYMBOL_GPL vmlinux 0x403f9529 gpio_request_one +EXPORT_SYMBOL_GPL vmlinux 0x40438a40 rio_register_driver +EXPORT_SYMBOL_GPL vmlinux 0x4065d168 pm_print_active_wakeup_sources +EXPORT_SYMBOL_GPL vmlinux 0x406c4cb1 hrtimer_resolution +EXPORT_SYMBOL_GPL vmlinux 0x406d1e0e blkg_conf_prep +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 0x407f91e3 virtqueue_enable_cb_delayed +EXPORT_SYMBOL_GPL vmlinux 0x408861be platform_find_device_by_driver +EXPORT_SYMBOL_GPL vmlinux 0x4099f919 tun_ptr_free +EXPORT_SYMBOL_GPL vmlinux 0x40a0aafc __flush_tlb_all +EXPORT_SYMBOL_GPL vmlinux 0x40a5752b ping_rcv +EXPORT_SYMBOL_GPL vmlinux 0x40b43bd0 sbitmap_add_wait_queue +EXPORT_SYMBOL_GPL vmlinux 0x40b54ee8 ata_sff_tf_load +EXPORT_SYMBOL_GPL vmlinux 0x40bdf13d dw_pcie_link_set_n_fts +EXPORT_SYMBOL_GPL vmlinux 0x40c5d97b iommu_map_sg_atomic +EXPORT_SYMBOL_GPL vmlinux 0x40e50080 dma_need_sync +EXPORT_SYMBOL_GPL vmlinux 0x40ec74c2 eventfd_ctx_fileget +EXPORT_SYMBOL_GPL vmlinux 0x40f0683e reset_control_put +EXPORT_SYMBOL_GPL vmlinux 0x40f08948 gpiochip_request_own_desc +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 0x4107e183 acpi_subsys_runtime_suspend +EXPORT_SYMBOL_GPL vmlinux 0x4129f5ee kernel_fpu_begin_mask +EXPORT_SYMBOL_GPL vmlinux 0x412bc681 ring_buffer_empty_cpu +EXPORT_SYMBOL_GPL vmlinux 0x4152781f scsi_register_device_handler +EXPORT_SYMBOL_GPL vmlinux 0x41579534 vfio_unregister_iommu_driver +EXPORT_SYMBOL_GPL vmlinux 0x415ad41c __reset_control_get +EXPORT_SYMBOL_GPL vmlinux 0x416697de __unwind_start +EXPORT_SYMBOL_GPL vmlinux 0x4179b6bb irq_chip_ack_parent +EXPORT_SYMBOL_GPL vmlinux 0x41814cb8 dirty_writeback_interval +EXPORT_SYMBOL_GPL vmlinux 0x418873cc irq_bypass_register_producer +EXPORT_SYMBOL_GPL vmlinux 0x41916d13 vxlan_dev_create +EXPORT_SYMBOL_GPL vmlinux 0x41992cd6 get_task_pid +EXPORT_SYMBOL_GPL vmlinux 0x419e7efd sfp_module_stop +EXPORT_SYMBOL_GPL vmlinux 0x41a34593 vfs_fallocate +EXPORT_SYMBOL_GPL vmlinux 0x41af5b9d ip_tunnel_encap_setup +EXPORT_SYMBOL_GPL vmlinux 0x41b200f9 percpu_ref_init +EXPORT_SYMBOL_GPL vmlinux 0x41b6f13c irq_chip_release_resources_parent +EXPORT_SYMBOL_GPL vmlinux 0x41be3e42 __inet_inherit_port +EXPORT_SYMBOL_GPL vmlinux 0x41be42d6 rdev_get_dev +EXPORT_SYMBOL_GPL vmlinux 0x41de5305 devres_remove +EXPORT_SYMBOL_GPL vmlinux 0x41ea817e smpboot_register_percpu_thread +EXPORT_SYMBOL_GPL vmlinux 0x41ed3cec eventfd_ctx_remove_wait_queue +EXPORT_SYMBOL_GPL vmlinux 0x420a6c78 of_hwspin_lock_get_id_byname +EXPORT_SYMBOL_GPL vmlinux 0x420f3d01 nvmem_unregister_notifier +EXPORT_SYMBOL_GPL vmlinux 0x42214614 __ftrace_vbprintk +EXPORT_SYMBOL_GPL vmlinux 0x42230915 sbitmap_any_bit_set +EXPORT_SYMBOL_GPL vmlinux 0x422e1395 blkdev_nr_zones +EXPORT_SYMBOL_GPL vmlinux 0x423f8f54 do_unbind_con_driver +EXPORT_SYMBOL_GPL vmlinux 0x424890de usb_alloc_coherent +EXPORT_SYMBOL_GPL vmlinux 0x42635d55 pm_suspend_global_flags +EXPORT_SYMBOL_GPL vmlinux 0x4277f306 regmap_get_reg_stride +EXPORT_SYMBOL_GPL vmlinux 0x427abfc0 bpf_verifier_log_write +EXPORT_SYMBOL_GPL vmlinux 0x42825ce2 rcu_scheduler_active +EXPORT_SYMBOL_GPL vmlinux 0x4283d1db tcp_reno_cong_avoid +EXPORT_SYMBOL_GPL vmlinux 0x4283d423 wakeup_sources_walk_next +EXPORT_SYMBOL_GPL vmlinux 0x42935147 serial8250_do_shutdown +EXPORT_SYMBOL_GPL vmlinux 0x4295648a find_vpid +EXPORT_SYMBOL_GPL vmlinux 0x42c0e75e ip_route_output_tunnel +EXPORT_SYMBOL_GPL vmlinux 0x42c510bf vfio_virqfd_enable +EXPORT_SYMBOL_GPL vmlinux 0x42d14017 ata_bmdma_qc_issue +EXPORT_SYMBOL_GPL vmlinux 0x42e22e52 transport_setup_device +EXPORT_SYMBOL_GPL vmlinux 0x42e445f6 clk_mux_val_to_index +EXPORT_SYMBOL_GPL vmlinux 0x42e53cbc nvme_start_queues +EXPORT_SYMBOL_GPL vmlinux 0x42e9d0da ring_buffer_unlock_commit +EXPORT_SYMBOL_GPL vmlinux 0x42edac10 __cpufreq_driver_target +EXPORT_SYMBOL_GPL vmlinux 0x42f728aa mctrl_gpio_get_outputs +EXPORT_SYMBOL_GPL vmlinux 0x42fba1c7 __sbitmap_queue_get_shallow +EXPORT_SYMBOL_GPL vmlinux 0x430b6bd4 net_ns_get_ownership +EXPORT_SYMBOL_GPL vmlinux 0x431ca263 blkcg_policy_unregister +EXPORT_SYMBOL_GPL vmlinux 0x43365af5 dw8250_setup_port +EXPORT_SYMBOL_GPL vmlinux 0x4337fad9 tpm_is_tpm2 +EXPORT_SYMBOL_GPL vmlinux 0x433ae21c user_preparse +EXPORT_SYMBOL_GPL vmlinux 0x4341a699 platform_bus_type +EXPORT_SYMBOL_GPL vmlinux 0x43420d10 watchdog_register_device +EXPORT_SYMBOL_GPL vmlinux 0x43479316 pinctrl_unregister +EXPORT_SYMBOL_GPL vmlinux 0x4351dd0d devm_pci_epc_destroy +EXPORT_SYMBOL_GPL vmlinux 0x4370c97c skb_gso_validate_mac_len +EXPORT_SYMBOL_GPL vmlinux 0x4375021f __rtc_register_device +EXPORT_SYMBOL_GPL vmlinux 0x43753583 skb_partial_csum_set +EXPORT_SYMBOL_GPL vmlinux 0x437eb1df ipv6_mod_enabled +EXPORT_SYMBOL_GPL vmlinux 0x438033da crypto_skcipher_encrypt +EXPORT_SYMBOL_GPL vmlinux 0x438d8df2 iova_cache_get +EXPORT_SYMBOL_GPL vmlinux 0x4391d59e iomap_finish_ioends +EXPORT_SYMBOL_GPL vmlinux 0x43aa319e lease_register_notifier +EXPORT_SYMBOL_GPL vmlinux 0x43bc4dcc phy_resolve_aneg_pause +EXPORT_SYMBOL_GPL vmlinux 0x43c003fa gpiochip_enable_irq +EXPORT_SYMBOL_GPL vmlinux 0x43de4f24 smp_call_function_single_async +EXPORT_SYMBOL_GPL vmlinux 0x43e603df acpi_cppc_processor_probe +EXPORT_SYMBOL_GPL vmlinux 0x43f56e82 ata_xfer_mode2shift +EXPORT_SYMBOL_GPL vmlinux 0x43f81957 clk_round_rate +EXPORT_SYMBOL_GPL vmlinux 0x43f89158 dma_buf_vmap +EXPORT_SYMBOL_GPL vmlinux 0x4420ef66 usb_alloc_urb +EXPORT_SYMBOL_GPL vmlinux 0x44256af4 blk_req_needs_zone_write_lock +EXPORT_SYMBOL_GPL vmlinux 0x442655ef pinctrl_utils_add_map_mux +EXPORT_SYMBOL_GPL vmlinux 0x442d89c5 phy_10gbit_fec_features +EXPORT_SYMBOL_GPL vmlinux 0x4435a1a3 rio_release_outb_mbox +EXPORT_SYMBOL_GPL vmlinux 0x444b50e1 ata_sas_queuecmd +EXPORT_SYMBOL_GPL vmlinux 0x444f041a skb_zerocopy +EXPORT_SYMBOL_GPL vmlinux 0x445a09c0 nvmem_device_cell_write +EXPORT_SYMBOL_GPL vmlinux 0x4460c659 kill_device +EXPORT_SYMBOL_GPL vmlinux 0x448177f8 msi_desc_to_pci_sysdata +EXPORT_SYMBOL_GPL vmlinux 0x4484a5a4 wait_for_device_probe +EXPORT_SYMBOL_GPL vmlinux 0x4491c98f fwnode_device_is_available +EXPORT_SYMBOL_GPL vmlinux 0x449a9bb2 sock_diag_unregister +EXPORT_SYMBOL_GPL vmlinux 0x44a2ee39 dev_pm_opp_set_rate +EXPORT_SYMBOL_GPL vmlinux 0x44b029fd power_supply_class +EXPORT_SYMBOL_GPL vmlinux 0x44ba4509 devlink_params_publish +EXPORT_SYMBOL_GPL vmlinux 0x44bae227 bit_wait_timeout +EXPORT_SYMBOL_GPL vmlinux 0x44c801ef task_cputime_adjusted +EXPORT_SYMBOL_GPL vmlinux 0x44c92827 regulator_is_equal +EXPORT_SYMBOL_GPL vmlinux 0x44cf8cf0 blk_zone_cond_str +EXPORT_SYMBOL_GPL vmlinux 0x44e25387 vfio_external_group_match_file +EXPORT_SYMBOL_GPL vmlinux 0x44f3081d fscrypt_set_test_dummy_encryption +EXPORT_SYMBOL_GPL vmlinux 0x45000cfb sysfs_remove_link_from_group +EXPORT_SYMBOL_GPL vmlinux 0x450110e8 perf_assign_events +EXPORT_SYMBOL_GPL vmlinux 0x4507f4a8 cpuhp_tasks_frozen +EXPORT_SYMBOL_GPL vmlinux 0x4531624f usb_decode_ctrl +EXPORT_SYMBOL_GPL vmlinux 0x4531ab62 copy_from_kernel_nofault +EXPORT_SYMBOL_GPL vmlinux 0x453b7b1b tty_encode_baud_rate +EXPORT_SYMBOL_GPL vmlinux 0x454144b8 __fscrypt_prepare_symlink +EXPORT_SYMBOL_GPL vmlinux 0x4541fe0d mtrr_state +EXPORT_SYMBOL_GPL vmlinux 0x45489922 pci_set_cacheline_size +EXPORT_SYMBOL_GPL vmlinux 0x454dc8c5 devlink_health_reporter_create +EXPORT_SYMBOL_GPL vmlinux 0x45558f56 clk_unregister_fixed_factor +EXPORT_SYMBOL_GPL vmlinux 0x456f90c0 devm_pinctrl_unregister +EXPORT_SYMBOL_GPL vmlinux 0x457594fa crypto_alg_list +EXPORT_SYMBOL_GPL vmlinux 0x45822284 devlink_dpipe_entry_ctx_close +EXPORT_SYMBOL_GPL vmlinux 0x459ff082 rio_mport_initialize +EXPORT_SYMBOL_GPL vmlinux 0x45cafbbd devlink_resource_occ_get_unregister +EXPORT_SYMBOL_GPL vmlinux 0x45d9da64 irq_domain_remove_sim +EXPORT_SYMBOL_GPL vmlinux 0x46013233 net_dec_ingress_queue +EXPORT_SYMBOL_GPL vmlinux 0x4610706f of_reset_control_array_get +EXPORT_SYMBOL_GPL vmlinux 0x4639bcda acpi_nfit_shutdown +EXPORT_SYMBOL_GPL vmlinux 0x463d8290 __irq_alloc_descs +EXPORT_SYMBOL_GPL vmlinux 0x463e65f5 inet_csk_clone_lock +EXPORT_SYMBOL_GPL vmlinux 0x4654146c __fib_lookup +EXPORT_SYMBOL_GPL vmlinux 0x465bb677 regmap_exit +EXPORT_SYMBOL_GPL vmlinux 0x465c1b75 disk_part_iter_exit +EXPORT_SYMBOL_GPL vmlinux 0x465d4b85 pci_load_saved_state +EXPORT_SYMBOL_GPL vmlinux 0x465ed9c0 pm_relax +EXPORT_SYMBOL_GPL vmlinux 0x466093fb init_iova_flush_queue +EXPORT_SYMBOL_GPL vmlinux 0x4670b852 crypto_register_shash +EXPORT_SYMBOL_GPL vmlinux 0x467c1bde l3mdev_update_flow +EXPORT_SYMBOL_GPL vmlinux 0x467fcf0f irq_domain_translate_onecell +EXPORT_SYMBOL_GPL vmlinux 0x468626ba devm_memunmap_pages +EXPORT_SYMBOL_GPL vmlinux 0x4688d7ec pvclock_gtod_unregister_notifier +EXPORT_SYMBOL_GPL vmlinux 0x468f4fe8 fwnode_property_read_string +EXPORT_SYMBOL_GPL vmlinux 0x46a417ca vmbus_proto_version +EXPORT_SYMBOL_GPL vmlinux 0x46a6c9ef hv_get_tsc_page +EXPORT_SYMBOL_GPL vmlinux 0x46aa09ca scsi_dh_attached_handler_name +EXPORT_SYMBOL_GPL vmlinux 0x46ac38d6 trace_array_put +EXPORT_SYMBOL_GPL vmlinux 0x46b3c51a gpiochip_get_desc +EXPORT_SYMBOL_GPL vmlinux 0x46c21ef1 scsi_host_unblock +EXPORT_SYMBOL_GPL vmlinux 0x46c5be22 clk_multiplier_ops +EXPORT_SYMBOL_GPL vmlinux 0x46da7b68 wm5102_spi_regmap +EXPORT_SYMBOL_GPL vmlinux 0x46f345e8 phy_save_page +EXPORT_SYMBOL_GPL vmlinux 0x46f42be0 devlink_fmsg_u8_put +EXPORT_SYMBOL_GPL vmlinux 0x46f99552 usb_hcd_unmap_urb_for_dma +EXPORT_SYMBOL_GPL vmlinux 0x470b389b regulator_bulk_unregister_supply_alias +EXPORT_SYMBOL_GPL vmlinux 0x47229b5c gpio_request +EXPORT_SYMBOL_GPL vmlinux 0x4723fd42 edac_mc_free +EXPORT_SYMBOL_GPL vmlinux 0x4727b7ce usb_driver_release_interface +EXPORT_SYMBOL_GPL vmlinux 0x472a7eca device_set_wakeup_capable +EXPORT_SYMBOL_GPL vmlinux 0x4730e180 sock_diag_put_meminfo +EXPORT_SYMBOL_GPL vmlinux 0x47313513 devprop_gpiochip_set_names +EXPORT_SYMBOL_GPL vmlinux 0x474456af pci_epc_mem_alloc_addr +EXPORT_SYMBOL_GPL vmlinux 0x474f244d tun_get_socket +EXPORT_SYMBOL_GPL vmlinux 0x47570b8a __clk_determine_rate +EXPORT_SYMBOL_GPL vmlinux 0x476167c8 remove_memory +EXPORT_SYMBOL_GPL vmlinux 0x4761f17c register_netevent_notifier +EXPORT_SYMBOL_GPL vmlinux 0x477a59ce sysfs_remove_link +EXPORT_SYMBOL_GPL vmlinux 0x47847519 badblocks_store +EXPORT_SYMBOL_GPL vmlinux 0x4784eb07 mmu_interval_notifier_insert_locked +EXPORT_SYMBOL_GPL vmlinux 0x47884890 system_power_efficient_wq +EXPORT_SYMBOL_GPL vmlinux 0x479f70d6 l3mdev_master_ifindex_rcu +EXPORT_SYMBOL_GPL vmlinux 0x479f7d4b clk_bulk_disable +EXPORT_SYMBOL_GPL vmlinux 0x47a021d7 rtnl_put_cacheinfo +EXPORT_SYMBOL_GPL vmlinux 0x47a42be4 efivar_entry_iter +EXPORT_SYMBOL_GPL vmlinux 0x47a63c1a sysfs_create_groups +EXPORT_SYMBOL_GPL vmlinux 0x47a89953 __tracepoint_pelt_cfs_tp +EXPORT_SYMBOL_GPL vmlinux 0x47aad3b9 have_governor_per_policy +EXPORT_SYMBOL_GPL vmlinux 0x47b02fb4 dev_pm_opp_set_regulators +EXPORT_SYMBOL_GPL vmlinux 0x47d0eea2 acpi_lpat_temp_to_raw +EXPORT_SYMBOL_GPL vmlinux 0x47d5fdb4 crypto_inst_setname +EXPORT_SYMBOL_GPL vmlinux 0x47de0dc7 clk_unregister_mux +EXPORT_SYMBOL_GPL vmlinux 0x47f2b7f0 evm_verifyxattr +EXPORT_SYMBOL_GPL vmlinux 0x47f6caed rio_get_device +EXPORT_SYMBOL_GPL vmlinux 0x47fb0ffe sata_scr_write_flush +EXPORT_SYMBOL_GPL vmlinux 0x480720a9 acpi_device_fwnode_ops +EXPORT_SYMBOL_GPL vmlinux 0x4828e77b acpi_scan_lock_acquire +EXPORT_SYMBOL_GPL vmlinux 0x4832a259 tty_put_char +EXPORT_SYMBOL_GPL vmlinux 0x4832a48c edac_device_alloc_ctl_info +EXPORT_SYMBOL_GPL vmlinux 0x4832b5de inet_hash +EXPORT_SYMBOL_GPL vmlinux 0x483c5a12 __ip6_datagram_connect +EXPORT_SYMBOL_GPL vmlinux 0x4879f6e3 platform_get_irq_byname_optional +EXPORT_SYMBOL_GPL vmlinux 0x487cec1e tty_init_termios +EXPORT_SYMBOL_GPL vmlinux 0x487efa90 device_property_read_string_array +EXPORT_SYMBOL_GPL vmlinux 0x488f484e nvme_sync_io_queues +EXPORT_SYMBOL_GPL vmlinux 0x488fb854 fat_alloc_new_dir +EXPORT_SYMBOL_GPL vmlinux 0x4890aa15 power_supply_external_power_changed +EXPORT_SYMBOL_GPL vmlinux 0x4897f94d __scsi_init_queue +EXPORT_SYMBOL_GPL vmlinux 0x489e5355 nf_checksum +EXPORT_SYMBOL_GPL vmlinux 0x48a3d20b mctrl_gpio_get +EXPORT_SYMBOL_GPL vmlinux 0x48ba03e0 edac_pci_handle_pe +EXPORT_SYMBOL_GPL vmlinux 0x48c124ec pci_walk_bus +EXPORT_SYMBOL_GPL vmlinux 0x48cf6de8 device_match_devt +EXPORT_SYMBOL_GPL vmlinux 0x48cfbefc rio_local_get_device_id +EXPORT_SYMBOL_GPL vmlinux 0x48e635d3 __set_page_dirty +EXPORT_SYMBOL_GPL vmlinux 0x48f49400 apei_hest_parse +EXPORT_SYMBOL_GPL vmlinux 0x49207bd8 ip6_route_output_flags_noref +EXPORT_SYMBOL_GPL vmlinux 0x4920b479 ip_tunnel_init +EXPORT_SYMBOL_GPL vmlinux 0x49224181 nvme_reset_wq +EXPORT_SYMBOL_GPL vmlinux 0x49242bc7 freezer_cgrp_subsys_on_dfl_key +EXPORT_SYMBOL_GPL vmlinux 0x4939ebcd numa_map_to_online_node +EXPORT_SYMBOL_GPL vmlinux 0x49414d56 crypto_alloc_akcipher +EXPORT_SYMBOL_GPL vmlinux 0x49447683 sata_pmp_error_handler +EXPORT_SYMBOL_GPL vmlinux 0x4946a633 genphy_c45_pma_read_abilities +EXPORT_SYMBOL_GPL vmlinux 0x49576844 serial8250_do_set_ldisc +EXPORT_SYMBOL_GPL vmlinux 0x49650b25 cpufreq_generic_init +EXPORT_SYMBOL_GPL vmlinux 0x4985770c regulator_set_active_discharge_regmap +EXPORT_SYMBOL_GPL vmlinux 0x4987499f usb_clear_halt +EXPORT_SYMBOL_GPL vmlinux 0x499043d3 crypto_init_queue +EXPORT_SYMBOL_GPL vmlinux 0x49951708 sev_enable_key +EXPORT_SYMBOL_GPL vmlinux 0x499bbf57 nfit_get_smbios_id +EXPORT_SYMBOL_GPL vmlinux 0x49a96a66 device_show_bool +EXPORT_SYMBOL_GPL vmlinux 0x49aacd83 pcie_port_bus_type +EXPORT_SYMBOL_GPL vmlinux 0x49bffbc5 fwnode_property_read_u32_array +EXPORT_SYMBOL_GPL vmlinux 0x49c14a61 ex_handler_fault +EXPORT_SYMBOL_GPL vmlinux 0x49c5400d kobj_sysfs_ops +EXPORT_SYMBOL_GPL vmlinux 0x49ce3365 gpiochip_irq_unmap +EXPORT_SYMBOL_GPL vmlinux 0x49d001c5 crypto_stats_kpp_compute_shared_secret +EXPORT_SYMBOL_GPL vmlinux 0x49db5c64 __tracepoint_neigh_event_send_done +EXPORT_SYMBOL_GPL vmlinux 0x49df9707 rio_request_dma +EXPORT_SYMBOL_GPL vmlinux 0x49e96999 cond_synchronize_rcu +EXPORT_SYMBOL_GPL vmlinux 0x4a0fd2c7 __inet_lookup_established +EXPORT_SYMBOL_GPL vmlinux 0x4a11ff73 driver_attach +EXPORT_SYMBOL_GPL vmlinux 0x4a17ed66 sysrq_mask +EXPORT_SYMBOL_GPL vmlinux 0x4a2108ad devm_gpiod_get_from_of_node +EXPORT_SYMBOL_GPL vmlinux 0x4a22db44 ata_sff_port_ops +EXPORT_SYMBOL_GPL vmlinux 0x4a420d09 acpi_bus_detach_private_data +EXPORT_SYMBOL_GPL vmlinux 0x4a555b6d tty_perform_flush +EXPORT_SYMBOL_GPL vmlinux 0x4a8b324a sysfs_remove_group +EXPORT_SYMBOL_GPL vmlinux 0x4aa349cb kvm_clock +EXPORT_SYMBOL_GPL vmlinux 0x4aa58bea inet_getpeer +EXPORT_SYMBOL_GPL vmlinux 0x4ac161c0 dma_buf_map_attachment +EXPORT_SYMBOL_GPL vmlinux 0x4ad7cf10 __platform_driver_register +EXPORT_SYMBOL_GPL vmlinux 0x4b04a738 regmap_can_raw_write +EXPORT_SYMBOL_GPL vmlinux 0x4b094410 ata_cable_40wire +EXPORT_SYMBOL_GPL vmlinux 0x4b2210b8 vmbus_send_tl_connect_request +EXPORT_SYMBOL_GPL vmlinux 0x4b29c78b transport_add_device +EXPORT_SYMBOL_GPL vmlinux 0x4b3692c9 intel_pmic_install_opregion_handler +EXPORT_SYMBOL_GPL vmlinux 0x4b38cf5b nvme_start_freeze +EXPORT_SYMBOL_GPL vmlinux 0x4b4213b5 pci_sriov_configure_simple +EXPORT_SYMBOL_GPL vmlinux 0x4b51f74c ata_xfer_mode2mask +EXPORT_SYMBOL_GPL vmlinux 0x4b61434a dev_pm_qos_add_notifier +EXPORT_SYMBOL_GPL vmlinux 0x4b76125e watchdog_notify_pretimeout +EXPORT_SYMBOL_GPL vmlinux 0x4b762828 start_thread +EXPORT_SYMBOL_GPL vmlinux 0x4b7cd2de led_trigger_register_simple +EXPORT_SYMBOL_GPL vmlinux 0x4b820d73 virtqueue_get_vring +EXPORT_SYMBOL_GPL vmlinux 0x4b96017c __tcp_send_ack +EXPORT_SYMBOL_GPL vmlinux 0x4b974a4d __spi_alloc_controller +EXPORT_SYMBOL_GPL vmlinux 0x4bea5fac tty_register_device_attr +EXPORT_SYMBOL_GPL vmlinux 0x4c0077bc devlink_dpipe_table_resource_set +EXPORT_SYMBOL_GPL vmlinux 0x4c0477d3 ata_bmdma_stop +EXPORT_SYMBOL_GPL vmlinux 0x4c0ebfc2 dax_layout_busy_page +EXPORT_SYMBOL_GPL vmlinux 0x4c1d54eb icc_std_aggregate +EXPORT_SYMBOL_GPL vmlinux 0x4c309c1e device_unregister +EXPORT_SYMBOL_GPL vmlinux 0x4c47fcf9 xdp_rxq_info_is_reg +EXPORT_SYMBOL_GPL vmlinux 0x4c4bef2b __dma_request_channel +EXPORT_SYMBOL_GPL vmlinux 0x4c52bef0 pm_generic_thaw +EXPORT_SYMBOL_GPL vmlinux 0x4c58f00c ata_sff_check_status +EXPORT_SYMBOL_GPL vmlinux 0x4c680bd0 hwmon_device_register_with_groups +EXPORT_SYMBOL_GPL vmlinux 0x4c6fab78 blk_mq_init_queue_data +EXPORT_SYMBOL_GPL vmlinux 0x4c762b5c x86_stepping +EXPORT_SYMBOL_GPL vmlinux 0x4c8d0f2d devlink_trap_groups_register +EXPORT_SYMBOL_GPL vmlinux 0x4c8dac36 dev_pm_opp_get_voltage +EXPORT_SYMBOL_GPL vmlinux 0x4ca5b834 sata_pmp_qc_defer_cmd_switch +EXPORT_SYMBOL_GPL vmlinux 0x4cacda00 of_phy_provider_unregister +EXPORT_SYMBOL_GPL vmlinux 0x4cc1498e blk_ksm_init +EXPORT_SYMBOL_GPL vmlinux 0x4cc95536 regmap_async_complete +EXPORT_SYMBOL_GPL vmlinux 0x4cccfba5 bsg_job_get +EXPORT_SYMBOL_GPL vmlinux 0x4cffcb2c scsi_target_block +EXPORT_SYMBOL_GPL vmlinux 0x4d0015e2 cpu_hotplug_disable +EXPORT_SYMBOL_GPL vmlinux 0x4d112e9a __kernel_write +EXPORT_SYMBOL_GPL vmlinux 0x4d202b8c __xas_prev +EXPORT_SYMBOL_GPL vmlinux 0x4d330f81 devm_hwspin_lock_unregister +EXPORT_SYMBOL_GPL vmlinux 0x4d371862 device_attach +EXPORT_SYMBOL_GPL vmlinux 0x4d4d7b79 blk_mq_map_queues +EXPORT_SYMBOL_GPL vmlinux 0x4d523a1b serial8250_read_char +EXPORT_SYMBOL_GPL vmlinux 0x4d64f814 led_compose_name +EXPORT_SYMBOL_GPL vmlinux 0x4d66fe81 sysfs_change_owner +EXPORT_SYMBOL_GPL vmlinux 0x4d6d0bbc iommu_group_ref_get +EXPORT_SYMBOL_GPL vmlinux 0x4d7f470b fb_deferred_io_open +EXPORT_SYMBOL_GPL vmlinux 0x4d879bc8 dev_pm_opp_is_turbo +EXPORT_SYMBOL_GPL vmlinux 0x4d8a96ab xas_set_mark +EXPORT_SYMBOL_GPL vmlinux 0x4d961726 crypto_alloc_skcipher +EXPORT_SYMBOL_GPL vmlinux 0x4da1f4a7 list_lru_del +EXPORT_SYMBOL_GPL vmlinux 0x4da53c58 skb_send_sock_locked +EXPORT_SYMBOL_GPL vmlinux 0x4da63411 register_net_sysctl +EXPORT_SYMBOL_GPL vmlinux 0x4dc447cf nexthop_find_by_id +EXPORT_SYMBOL_GPL vmlinux 0x4dd9d14d cn_netlink_send_mult +EXPORT_SYMBOL_GPL vmlinux 0x4de17ab3 usb_state_string +EXPORT_SYMBOL_GPL vmlinux 0x4de27caf inet_csk_listen_stop +EXPORT_SYMBOL_GPL vmlinux 0x4e17c613 ata_sff_queue_delayed_work +EXPORT_SYMBOL_GPL vmlinux 0x4e1e6292 serial8250_do_startup +EXPORT_SYMBOL_GPL vmlinux 0x4e336595 inet6_compat_ioctl +EXPORT_SYMBOL_GPL vmlinux 0x4e37f10c usb_disable_autosuspend +EXPORT_SYMBOL_GPL vmlinux 0x4e49ce60 ata_bmdma_port_start +EXPORT_SYMBOL_GPL vmlinux 0x4e4c37e2 freq_qos_remove_notifier +EXPORT_SYMBOL_GPL vmlinux 0x4e5d3f0d icc_disable +EXPORT_SYMBOL_GPL vmlinux 0x4e65d085 rt_mutex_lock +EXPORT_SYMBOL_GPL vmlinux 0x4e96bf9a proc_create_net_single_write +EXPORT_SYMBOL_GPL vmlinux 0x4eac5fc1 cpu_mitigations_auto_nosmt +EXPORT_SYMBOL_GPL vmlinux 0x4eb6f256 led_trigger_unregister_simple +EXPORT_SYMBOL_GPL vmlinux 0x4ebe3393 irq_get_domain_generic_chip +EXPORT_SYMBOL_GPL vmlinux 0x4ece3615 blocking_notifier_chain_unregister +EXPORT_SYMBOL_GPL vmlinux 0x4ed4b78b fuse_simple_background +EXPORT_SYMBOL_GPL vmlinux 0x4ef5bcf4 perf_swevent_get_recursion_context +EXPORT_SYMBOL_GPL vmlinux 0x4ef9d661 ip_valid_fib_dump_req +EXPORT_SYMBOL_GPL vmlinux 0x4f2593f0 btree_update +EXPORT_SYMBOL_GPL vmlinux 0x4f316e43 usb_unlocked_enable_lpm +EXPORT_SYMBOL_GPL vmlinux 0x4f3a9c70 tty_ldisc_receive_buf +EXPORT_SYMBOL_GPL vmlinux 0x4f3b468e uart_insert_char +EXPORT_SYMBOL_GPL vmlinux 0x4f3b5b5a usb_put_dev +EXPORT_SYMBOL_GPL vmlinux 0x4f3fac72 class_compat_remove_link +EXPORT_SYMBOL_GPL vmlinux 0x4f460832 devm_of_phy_get +EXPORT_SYMBOL_GPL vmlinux 0x4f498f36 ata_do_set_mode +EXPORT_SYMBOL_GPL vmlinux 0x4f4a4060 fwnode_gpiod_get_index +EXPORT_SYMBOL_GPL vmlinux 0x4f5504cf sk_msg_free_partial +EXPORT_SYMBOL_GPL vmlinux 0x4f5641c3 security_path_chown +EXPORT_SYMBOL_GPL vmlinux 0x4f5ed756 list_lru_count_one +EXPORT_SYMBOL_GPL vmlinux 0x4f6a07fe show_rcu_gp_kthreads +EXPORT_SYMBOL_GPL vmlinux 0x4f72a987 uart_parse_options +EXPORT_SYMBOL_GPL vmlinux 0x4f7813fb get_net_ns_by_pid +EXPORT_SYMBOL_GPL vmlinux 0x4f9e5dd9 __vring_new_virtqueue +EXPORT_SYMBOL_GPL vmlinux 0x4fac98a7 machine_check_poll +EXPORT_SYMBOL_GPL vmlinux 0x4fc02643 rhashtable_walk_exit +EXPORT_SYMBOL_GPL vmlinux 0x4fc19092 regulator_bulk_free +EXPORT_SYMBOL_GPL vmlinux 0x4fc8206e sock_zerocopy_put_abort +EXPORT_SYMBOL_GPL vmlinux 0x4fdc945d sata_deb_timing_normal +EXPORT_SYMBOL_GPL vmlinux 0x4fdcd42a pci_device_is_present +EXPORT_SYMBOL_GPL vmlinux 0x4fe12e85 lwtunnel_state_alloc +EXPORT_SYMBOL_GPL vmlinux 0x4fe1eddf unregister_netevent_notifier +EXPORT_SYMBOL_GPL vmlinux 0x500c768c apei_exec_read_register +EXPORT_SYMBOL_GPL vmlinux 0x503b0a23 nd_blk_memremap_flags +EXPORT_SYMBOL_GPL vmlinux 0x5042cc82 spi_add_device +EXPORT_SYMBOL_GPL vmlinux 0x5067bc97 regulator_map_voltage_linear +EXPORT_SYMBOL_GPL vmlinux 0x507662cc __pm_runtime_disable +EXPORT_SYMBOL_GPL vmlinux 0x507ebc7d fl6_update_dst +EXPORT_SYMBOL_GPL vmlinux 0x5091b823 ring_buffer_read_start +EXPORT_SYMBOL_GPL vmlinux 0x5094464a pci_hp_destroy +EXPORT_SYMBOL_GPL vmlinux 0x509c6d7d udp_cmsg_send +EXPORT_SYMBOL_GPL vmlinux 0x509d5f55 clk_divider_ro_ops +EXPORT_SYMBOL_GPL vmlinux 0x50a63f93 __tracepoint_devlink_hwmsg +EXPORT_SYMBOL_GPL vmlinux 0x50b03f5d l1tf_vmx_mitigation +EXPORT_SYMBOL_GPL vmlinux 0x50b8688b acpi_data_fwnode_ops +EXPORT_SYMBOL_GPL vmlinux 0x50c61940 __context_tracking_exit +EXPORT_SYMBOL_GPL vmlinux 0x50d1f870 pgprot_writecombine +EXPORT_SYMBOL_GPL vmlinux 0x50e7193a __i2c_first_dynamic_bus_num +EXPORT_SYMBOL_GPL vmlinux 0x50fad434 round_jiffies_up +EXPORT_SYMBOL_GPL vmlinux 0x5106d126 dma_buf_export +EXPORT_SYMBOL_GPL vmlinux 0x5111996d usb_unanchor_urb +EXPORT_SYMBOL_GPL vmlinux 0x511b9516 gov_attr_set_put +EXPORT_SYMBOL_GPL vmlinux 0x5123c03f __bio_try_merge_page +EXPORT_SYMBOL_GPL vmlinux 0x512825d6 driver_find_device +EXPORT_SYMBOL_GPL vmlinux 0x51390c96 rcu_barrier_tasks_rude +EXPORT_SYMBOL_GPL vmlinux 0x51512b40 devm_mdiobus_alloc_size +EXPORT_SYMBOL_GPL vmlinux 0x5177657f sysfs_merge_group +EXPORT_SYMBOL_GPL vmlinux 0x5187ad91 pci_epf_match_device +EXPORT_SYMBOL_GPL vmlinux 0x518c2fc6 hpet_rtc_dropped_irq +EXPORT_SYMBOL_GPL vmlinux 0x51975456 addrconf_add_linklocal +EXPORT_SYMBOL_GPL vmlinux 0x51a1f817 blkcg_activate_policy +EXPORT_SYMBOL_GPL vmlinux 0x51a33984 tpm_tis_resume +EXPORT_SYMBOL_GPL vmlinux 0x51af741c __skb_get_hash_symmetric +EXPORT_SYMBOL_GPL vmlinux 0x51bd1128 pci_hp_add +EXPORT_SYMBOL_GPL vmlinux 0x51bd28c9 fs_kobj +EXPORT_SYMBOL_GPL vmlinux 0x51cdb083 gpiod_set_value_cansleep +EXPORT_SYMBOL_GPL vmlinux 0x51d6f0a8 devm_spi_register_controller +EXPORT_SYMBOL_GPL vmlinux 0x51f176af ata_pci_device_do_resume +EXPORT_SYMBOL_GPL vmlinux 0x51fb877e regulator_bulk_get +EXPORT_SYMBOL_GPL vmlinux 0x5205ca99 usb_hcd_end_port_resume +EXPORT_SYMBOL_GPL vmlinux 0x52121118 __tracepoint_non_standard_event +EXPORT_SYMBOL_GPL vmlinux 0x5224be2e clk_register_fixed_rate +EXPORT_SYMBOL_GPL vmlinux 0x52252316 clk_unregister_fixed_rate +EXPORT_SYMBOL_GPL vmlinux 0x522af563 pci_epc_map_addr +EXPORT_SYMBOL_GPL vmlinux 0x523dc366 ping_hash +EXPORT_SYMBOL_GPL vmlinux 0x524ce6c6 dma_buf_vunmap +EXPORT_SYMBOL_GPL vmlinux 0x525942ca regulator_sync_voltage +EXPORT_SYMBOL_GPL vmlinux 0x525d0aa3 trace_seq_printf +EXPORT_SYMBOL_GPL vmlinux 0x525f469e spi_res_add +EXPORT_SYMBOL_GPL vmlinux 0x526b8473 pcie_flr +EXPORT_SYMBOL_GPL vmlinux 0x52741889 bpf_map_inc_with_uref +EXPORT_SYMBOL_GPL vmlinux 0x5289c395 regmap_add_irq_chip_np +EXPORT_SYMBOL_GPL vmlinux 0x52ada125 sock_diag_check_cookie +EXPORT_SYMBOL_GPL vmlinux 0x52b1e3c7 pci_flags +EXPORT_SYMBOL_GPL vmlinux 0x52b261bc irq_domain_remove +EXPORT_SYMBOL_GPL vmlinux 0x52bc205f bio_clone_blkg_association +EXPORT_SYMBOL_GPL vmlinux 0x52bd855c srcu_batches_completed +EXPORT_SYMBOL_GPL vmlinux 0x52bfa20a devlink_net +EXPORT_SYMBOL_GPL vmlinux 0x52c35e83 call_rcu_tasks_trace +EXPORT_SYMBOL_GPL vmlinux 0x52d54fce devlink_info_version_stored_put +EXPORT_SYMBOL_GPL vmlinux 0x52dee1bd trace_array_destroy +EXPORT_SYMBOL_GPL vmlinux 0x52e12284 devlink_dpipe_action_put +EXPORT_SYMBOL_GPL vmlinux 0x52eba1ea led_blink_set +EXPORT_SYMBOL_GPL vmlinux 0x53073987 iomap_invalidatepage +EXPORT_SYMBOL_GPL vmlinux 0x531535c7 fuse_dev_alloc +EXPORT_SYMBOL_GPL vmlinux 0x532b90b5 kprobe_event_cmd_init +EXPORT_SYMBOL_GPL vmlinux 0x532fc3d9 securityfs_create_symlink +EXPORT_SYMBOL_GPL vmlinux 0x534fd026 dev_nit_active +EXPORT_SYMBOL_GPL vmlinux 0x5358864e devlink_fmsg_binary_pair_nest_end +EXPORT_SYMBOL_GPL vmlinux 0x53589d9e vmbus_send_modifychannel +EXPORT_SYMBOL_GPL vmlinux 0x536822e3 sfp_module_insert +EXPORT_SYMBOL_GPL vmlinux 0x537a1cb8 devlink_is_reload_failed +EXPORT_SYMBOL_GPL vmlinux 0x537f4139 vmbus_connection +EXPORT_SYMBOL_GPL vmlinux 0x538d073d phy_duplex_to_str +EXPORT_SYMBOL_GPL vmlinux 0x53c0293c regmap_attach_dev +EXPORT_SYMBOL_GPL vmlinux 0x53c089f5 property_entries_dup +EXPORT_SYMBOL_GPL vmlinux 0x53c47c53 apic +EXPORT_SYMBOL_GPL vmlinux 0x53e06c0c power_supply_find_ocv2cap_table +EXPORT_SYMBOL_GPL vmlinux 0x53e14374 dma_buf_get +EXPORT_SYMBOL_GPL vmlinux 0x53fd3997 usb_reset_configuration +EXPORT_SYMBOL_GPL vmlinux 0x53ff2614 power_supply_set_input_current_limit_from_supplier +EXPORT_SYMBOL_GPL vmlinux 0x54085d0d __tracepoint_nvme_sq +EXPORT_SYMBOL_GPL vmlinux 0x5414c08c tpm1_getcap +EXPORT_SYMBOL_GPL vmlinux 0x541bd60a irq_work_run +EXPORT_SYMBOL_GPL vmlinux 0x54215db5 visitor64 +EXPORT_SYMBOL_GPL vmlinux 0x54279570 validate_xmit_skb_list +EXPORT_SYMBOL_GPL vmlinux 0x5435454c divider_ro_round_rate_parent +EXPORT_SYMBOL_GPL vmlinux 0x545025e5 nvmem_add_cell_table +EXPORT_SYMBOL_GPL vmlinux 0x545c718f inet_csk_compat_getsockopt +EXPORT_SYMBOL_GPL vmlinux 0x5462784d xfrm_dev_state_add +EXPORT_SYMBOL_GPL vmlinux 0x54690d8f __udp4_lib_lookup +EXPORT_SYMBOL_GPL vmlinux 0x547f3a88 fib_nexthop_info +EXPORT_SYMBOL_GPL vmlinux 0x54863fd6 crypto_find_alg +EXPORT_SYMBOL_GPL vmlinux 0x549525ef handle_nested_irq +EXPORT_SYMBOL_GPL vmlinux 0x54955855 alarm_start_relative +EXPORT_SYMBOL_GPL vmlinux 0x54a31506 akcipher_register_instance +EXPORT_SYMBOL_GPL vmlinux 0x54a34006 sb800_prefetch +EXPORT_SYMBOL_GPL vmlinux 0x54ab7297 decrypt_blob +EXPORT_SYMBOL_GPL vmlinux 0x54b8b103 account_locked_vm +EXPORT_SYMBOL_GPL vmlinux 0x54ba487b bus_for_each_drv +EXPORT_SYMBOL_GPL vmlinux 0x54ba6da6 bsg_job_put +EXPORT_SYMBOL_GPL vmlinux 0x54d829b7 devm_nvmem_register +EXPORT_SYMBOL_GPL vmlinux 0x54e036df security_file_ioctl +EXPORT_SYMBOL_GPL vmlinux 0x54f857a5 dst_cache_get +EXPORT_SYMBOL_GPL vmlinux 0x54f8fc3e em_register_perf_domain +EXPORT_SYMBOL_GPL vmlinux 0x550ce709 pat_enabled +EXPORT_SYMBOL_GPL vmlinux 0x552fccdc blk_mq_freeze_queue_wait_timeout +EXPORT_SYMBOL_GPL vmlinux 0x55339365 flush_delayed_fput +EXPORT_SYMBOL_GPL vmlinux 0x553b49a4 cpufreq_get_driver_data +EXPORT_SYMBOL_GPL vmlinux 0x55417264 unregister_vt_notifier +EXPORT_SYMBOL_GPL vmlinux 0x5549ad9f nvme_sync_queues +EXPORT_SYMBOL_GPL vmlinux 0x554e446c kthread_cancel_delayed_work_sync +EXPORT_SYMBOL_GPL vmlinux 0x555f9eca rhashtable_walk_enter +EXPORT_SYMBOL_GPL vmlinux 0x55631948 platform_device_add_resources +EXPORT_SYMBOL_GPL vmlinux 0x55686a27 sysfs_add_file_to_group +EXPORT_SYMBOL_GPL vmlinux 0x556d2606 clk_register_mux_table +EXPORT_SYMBOL_GPL vmlinux 0x556e4390 clk_get_rate +EXPORT_SYMBOL_GPL vmlinux 0x55741855 proc_create_net_data +EXPORT_SYMBOL_GPL vmlinux 0x55784228 regmap_irq_get_virq +EXPORT_SYMBOL_GPL vmlinux 0x55bc743c yield_to +EXPORT_SYMBOL_GPL vmlinux 0x55c76a23 ksys_sync_helper +EXPORT_SYMBOL_GPL vmlinux 0x55e14588 crypto_get_default_null_skcipher +EXPORT_SYMBOL_GPL vmlinux 0x55eecff4 bit_wait_io_timeout +EXPORT_SYMBOL_GPL vmlinux 0x55f55bcd metadata_dst_free +EXPORT_SYMBOL_GPL vmlinux 0x55f7fd6f __trace_note_message +EXPORT_SYMBOL_GPL vmlinux 0x55f99e25 usb_get_hcd +EXPORT_SYMBOL_GPL vmlinux 0x5603d384 pskb_put +EXPORT_SYMBOL_GPL vmlinux 0x56054c05 crypto_it_tab +EXPORT_SYMBOL_GPL vmlinux 0x56173654 pcap_set_ts_bits +EXPORT_SYMBOL_GPL vmlinux 0x5619e431 rio_del_mport_pw_handler +EXPORT_SYMBOL_GPL vmlinux 0x561c455a devm_mbox_controller_register +EXPORT_SYMBOL_GPL vmlinux 0x561e97d4 spi_bus_lock +EXPORT_SYMBOL_GPL vmlinux 0x56256e8a orderly_poweroff +EXPORT_SYMBOL_GPL vmlinux 0x56310925 regulator_mode_to_status +EXPORT_SYMBOL_GPL vmlinux 0x56398615 mark_tsc_unstable +EXPORT_SYMBOL_GPL vmlinux 0x56407e6c unregister_hw_breakpoint +EXPORT_SYMBOL_GPL vmlinux 0x5641485b tty_termios_encode_baud_rate +EXPORT_SYMBOL_GPL vmlinux 0x56496302 usb_block_urb +EXPORT_SYMBOL_GPL vmlinux 0x56521173 nvme_set_queue_count +EXPORT_SYMBOL_GPL vmlinux 0x566a07f8 inet_csk_reqsk_queue_hash_add +EXPORT_SYMBOL_GPL vmlinux 0x56703c1b edac_pci_release_generic_ctl +EXPORT_SYMBOL_GPL vmlinux 0x5674b3cb rhashtable_free_and_destroy +EXPORT_SYMBOL_GPL vmlinux 0x568373c5 udp6_lib_lookup_skb +EXPORT_SYMBOL_GPL vmlinux 0x5687e1e9 gpiod_get_array_optional +EXPORT_SYMBOL_GPL vmlinux 0x5693baac call_srcu +EXPORT_SYMBOL_GPL vmlinux 0x56a6b14c pm_generic_runtime_suspend +EXPORT_SYMBOL_GPL vmlinux 0x56abcf86 dev_change_net_namespace +EXPORT_SYMBOL_GPL vmlinux 0x56b64325 vmbus_set_chn_rescind_callback +EXPORT_SYMBOL_GPL vmlinux 0x56c5877d ping_seq_start +EXPORT_SYMBOL_GPL vmlinux 0x56cb7ee3 sysfs_create_link_nowarn +EXPORT_SYMBOL_GPL vmlinux 0x56d267ec pci_status_get_and_clear_errors +EXPORT_SYMBOL_GPL vmlinux 0x56d61dce context_tracking_enter +EXPORT_SYMBOL_GPL vmlinux 0x56ef0dd7 vring_new_virtqueue +EXPORT_SYMBOL_GPL vmlinux 0x56fb5204 __nvme_submit_sync_cmd +EXPORT_SYMBOL_GPL vmlinux 0x571ec062 __put_task_struct +EXPORT_SYMBOL_GPL vmlinux 0x572786f6 bio_release_pages +EXPORT_SYMBOL_GPL vmlinux 0x5727cfa2 power_supply_set_property +EXPORT_SYMBOL_GPL vmlinux 0x5728ad9c wm8998_i2c_regmap +EXPORT_SYMBOL_GPL vmlinux 0x57334379 crypto_alloc_sync_skcipher +EXPORT_SYMBOL_GPL vmlinux 0x57390676 fwnode_get_nth_parent +EXPORT_SYMBOL_GPL vmlinux 0x573b5453 ipv6_fixup_options +EXPORT_SYMBOL_GPL vmlinux 0x574609c5 apei_exec_write_register_value +EXPORT_SYMBOL_GPL vmlinux 0x574b5443 ata_acpi_stm +EXPORT_SYMBOL_GPL vmlinux 0x574f4572 rio_add_mport_pw_handler +EXPORT_SYMBOL_GPL vmlinux 0x575f6418 vmbus_establish_gpadl +EXPORT_SYMBOL_GPL vmlinux 0x576ccd40 icc_link_destroy +EXPORT_SYMBOL_GPL vmlinux 0x57732438 inet_twsk_purge +EXPORT_SYMBOL_GPL vmlinux 0x57863245 __blkg_prfill_rwstat +EXPORT_SYMBOL_GPL vmlinux 0x578eeb4d hugetlb_cgrp_subsys_enabled_key +EXPORT_SYMBOL_GPL vmlinux 0x5790e7a0 pci_unlock_rescan_remove +EXPORT_SYMBOL_GPL vmlinux 0x579e0bf5 rtnl_unregister_all +EXPORT_SYMBOL_GPL vmlinux 0x57a259a3 sock_diag_destroy +EXPORT_SYMBOL_GPL vmlinux 0x57aae1a1 show_class_attr_string +EXPORT_SYMBOL_GPL vmlinux 0x57c39727 kdb_register_flags +EXPORT_SYMBOL_GPL vmlinux 0x57d41bad pciserial_init_ports +EXPORT_SYMBOL_GPL vmlinux 0x57d5736a iommu_attach_device +EXPORT_SYMBOL_GPL vmlinux 0x57f70547 secure_ipv4_port_ephemeral +EXPORT_SYMBOL_GPL vmlinux 0x57f927c3 pci_d3cold_enable +EXPORT_SYMBOL_GPL vmlinux 0x57f9b7d5 crypto_stats_akcipher_encrypt +EXPORT_SYMBOL_GPL vmlinux 0x57ff6bd2 em_cpu_get +EXPORT_SYMBOL_GPL vmlinux 0x580defe4 dev_pm_opp_get_max_volt_latency +EXPORT_SYMBOL_GPL vmlinux 0x58219104 fwnode_graph_get_remote_port +EXPORT_SYMBOL_GPL vmlinux 0x58276f93 cper_next_record_id +EXPORT_SYMBOL_GPL vmlinux 0x582b0aec usb_hub_claim_port +EXPORT_SYMBOL_GPL vmlinux 0x5831e062 cpus_read_trylock +EXPORT_SYMBOL_GPL vmlinux 0x583f96e2 tracing_snapshot_cond_enable +EXPORT_SYMBOL_GPL vmlinux 0x583fc822 da9052_adc_manual_read +EXPORT_SYMBOL_GPL vmlinux 0x584f938f wm5110_revd_irq +EXPORT_SYMBOL_GPL vmlinux 0x58528ad4 bpf_redirect_info +EXPORT_SYMBOL_GPL vmlinux 0x5879a27d sfp_get_module_info +EXPORT_SYMBOL_GPL vmlinux 0x58d6311d trace_clock +EXPORT_SYMBOL_GPL vmlinux 0x58da1e93 regulator_get_voltage_sel_regmap +EXPORT_SYMBOL_GPL vmlinux 0x58dcef4e ata_port_pbar_desc +EXPORT_SYMBOL_GPL vmlinux 0x58def6ca sfp_module_remove +EXPORT_SYMBOL_GPL vmlinux 0x58ec3da4 blkg_lookup_slowpath +EXPORT_SYMBOL_GPL vmlinux 0x58f03b99 register_ftrace_function +EXPORT_SYMBOL_GPL vmlinux 0x597485c7 dma_buf_unmap_attachment +EXPORT_SYMBOL_GPL vmlinux 0x5986d190 kdb_printf +EXPORT_SYMBOL_GPL vmlinux 0x59b2adbf input_ff_effect_from_user +EXPORT_SYMBOL_GPL vmlinux 0x59b5f6c6 noop_invalidatepage +EXPORT_SYMBOL_GPL vmlinux 0x59bbf145 pv_info +EXPORT_SYMBOL_GPL vmlinux 0x59c508a5 dw_pcie_ep_linkup +EXPORT_SYMBOL_GPL vmlinux 0x59c6aff4 irq_set_affinity_hint +EXPORT_SYMBOL_GPL vmlinux 0x59d2a1b4 mm_unaccount_pinned_pages +EXPORT_SYMBOL_GPL vmlinux 0x59d85f8e __clk_get_hw +EXPORT_SYMBOL_GPL vmlinux 0x59d88bb2 ip6_datagram_recv_ctl +EXPORT_SYMBOL_GPL vmlinux 0x59dd1a86 relay_file_operations +EXPORT_SYMBOL_GPL vmlinux 0x5a04c1f5 __raw_v6_lookup +EXPORT_SYMBOL_GPL vmlinux 0x5a12b805 relay_open +EXPORT_SYMBOL_GPL vmlinux 0x5a1d134a rcu_momentary_dyntick_idle +EXPORT_SYMBOL_GPL vmlinux 0x5a2cb8a7 pci_user_read_config_dword +EXPORT_SYMBOL_GPL vmlinux 0x5a30e97e irqchip_fwnode_ops +EXPORT_SYMBOL_GPL vmlinux 0x5a49dbc9 timerqueue_del +EXPORT_SYMBOL_GPL vmlinux 0x5a570dee __percpu_down_read +EXPORT_SYMBOL_GPL vmlinux 0x5a619561 class_compat_create_link +EXPORT_SYMBOL_GPL vmlinux 0x5a6cdb52 nf_ct_zone_dflt +EXPORT_SYMBOL_GPL vmlinux 0x5a72e4e0 crypto_larval_kill +EXPORT_SYMBOL_GPL vmlinux 0x5a770ec5 kthread_cancel_work_sync +EXPORT_SYMBOL_GPL vmlinux 0x5a7bfe41 crypto_probing_notify +EXPORT_SYMBOL_GPL vmlinux 0x5a8540d9 synth_event_trace_end +EXPORT_SYMBOL_GPL vmlinux 0x5aa9b9d5 get_kernel_pages +EXPORT_SYMBOL_GPL vmlinux 0x5aa9ebbb watchdog_unregister_device +EXPORT_SYMBOL_GPL vmlinux 0x5ab09745 edac_get_owner +EXPORT_SYMBOL_GPL vmlinux 0x5ad5e642 gpiochip_disable_irq +EXPORT_SYMBOL_GPL vmlinux 0x5adef6c1 gpiod_set_config +EXPORT_SYMBOL_GPL vmlinux 0x5ae1b2b9 metadata_dst_free_percpu +EXPORT_SYMBOL_GPL vmlinux 0x5ae83387 regulator_is_enabled_regmap +EXPORT_SYMBOL_GPL vmlinux 0x5aeb2bc7 da9052_free_irq +EXPORT_SYMBOL_GPL vmlinux 0x5b118b57 regmap_get_device +EXPORT_SYMBOL_GPL vmlinux 0x5b183373 bus_unregister_notifier +EXPORT_SYMBOL_GPL vmlinux 0x5b21ceff ring_buffer_iter_peek +EXPORT_SYMBOL_GPL vmlinux 0x5b2a2255 pci_enable_rom +EXPORT_SYMBOL_GPL vmlinux 0x5b35c4f9 vfio_group_set_kvm +EXPORT_SYMBOL_GPL vmlinux 0x5b4c61e1 usb_asmedia_modifyflowcontrol +EXPORT_SYMBOL_GPL vmlinux 0x5b4f8e92 scsi_free_sgtables +EXPORT_SYMBOL_GPL vmlinux 0x5b6077b0 virtqueue_add_inbuf +EXPORT_SYMBOL_GPL vmlinux 0x5b637f8c lwtunnel_encap_add_ops +EXPORT_SYMBOL_GPL vmlinux 0x5b6b0329 swiotlb_max_segment +EXPORT_SYMBOL_GPL vmlinux 0x5b6f2708 dax_supported +EXPORT_SYMBOL_GPL vmlinux 0x5b884364 hyperv_report_panic_msg +EXPORT_SYMBOL_GPL vmlinux 0x5ba0a41e ip6_datagram_release_cb +EXPORT_SYMBOL_GPL vmlinux 0x5bb2d130 spi_async_locked +EXPORT_SYMBOL_GPL vmlinux 0x5bb57bf4 devm_gpiod_put_array +EXPORT_SYMBOL_GPL vmlinux 0x5bbdfa26 scatterwalk_ffwd +EXPORT_SYMBOL_GPL vmlinux 0x5bd0748f crypto_del_default_rng +EXPORT_SYMBOL_GPL vmlinux 0x5bdae35b usb_phy_roothub_set_mode +EXPORT_SYMBOL_GPL vmlinux 0x5bdbac4e rcu_unexpedite_gp +EXPORT_SYMBOL_GPL vmlinux 0x5bfb8e10 firmware_request_nowarn +EXPORT_SYMBOL_GPL vmlinux 0x5c1974c0 unregister_pernet_subsys +EXPORT_SYMBOL_GPL vmlinux 0x5c2bcd37 bpf_warn_invalid_xdp_action +EXPORT_SYMBOL_GPL vmlinux 0x5c2eb867 dm_bio_from_per_bio_data +EXPORT_SYMBOL_GPL vmlinux 0x5c3480ba skb_consume_udp +EXPORT_SYMBOL_GPL vmlinux 0x5c494c74 iommu_aux_detach_device +EXPORT_SYMBOL_GPL vmlinux 0x5c4c03dd rtc_initialize_alarm +EXPORT_SYMBOL_GPL vmlinux 0x5c54e1b8 ata_qc_complete_multiple +EXPORT_SYMBOL_GPL vmlinux 0x5c5a1b16 tick_broadcast_control +EXPORT_SYMBOL_GPL vmlinux 0x5c5e8f74 ata_dummy_port_info +EXPORT_SYMBOL_GPL vmlinux 0x5c66e90c efivar_run_worker +EXPORT_SYMBOL_GPL vmlinux 0x5c678d32 tcp_get_syncookie_mss +EXPORT_SYMBOL_GPL vmlinux 0x5c9ecec8 udp_init_sock +EXPORT_SYMBOL_GPL vmlinux 0x5cad8fc3 power_supply_ocv2cap_simple +EXPORT_SYMBOL_GPL vmlinux 0x5cb0ddd5 intel_msic_reg_update +EXPORT_SYMBOL_GPL vmlinux 0x5cc611d2 clk_hw_unregister +EXPORT_SYMBOL_GPL vmlinux 0x5d17148b apei_write +EXPORT_SYMBOL_GPL vmlinux 0x5d2c0ccd class_interface_unregister +EXPORT_SYMBOL_GPL vmlinux 0x5d2ff1a5 preempt_notifier_register +EXPORT_SYMBOL_GPL vmlinux 0x5d3b63b9 ata_bmdma_qc_prep +EXPORT_SYMBOL_GPL vmlinux 0x5d592c13 nvme_stop_ctrl +EXPORT_SYMBOL_GPL vmlinux 0x5d5f999a regulator_lock +EXPORT_SYMBOL_GPL vmlinux 0x5d63ee36 gpiod_set_raw_array_value_cansleep +EXPORT_SYMBOL_GPL vmlinux 0x5d6ec393 iomap_releasepage +EXPORT_SYMBOL_GPL vmlinux 0x5d8476d3 bpf_sk_storage_diag_alloc +EXPORT_SYMBOL_GPL vmlinux 0x5d9c4c88 subsys_interface_unregister +EXPORT_SYMBOL_GPL vmlinux 0x5da67adc zs_compact +EXPORT_SYMBOL_GPL vmlinux 0x5dba2c0f crypto_shash_tfm_digest +EXPORT_SYMBOL_GPL vmlinux 0x5dbaa6eb gpiochip_find +EXPORT_SYMBOL_GPL vmlinux 0x5dbcfa4f boot_cpu_physical_apicid +EXPORT_SYMBOL_GPL vmlinux 0x5de7447d __atomic_notifier_call_chain +EXPORT_SYMBOL_GPL vmlinux 0x5df2a9fd pingv6_prot +EXPORT_SYMBOL_GPL vmlinux 0x5dfa1213 security_inode_setattr +EXPORT_SYMBOL_GPL vmlinux 0x5e0a09ed md_find_rdev_nr_rcu +EXPORT_SYMBOL_GPL vmlinux 0x5e0f95d0 bpf_prog_alloc +EXPORT_SYMBOL_GPL vmlinux 0x5e173309 cpu_cgrp_subsys_on_dfl_key +EXPORT_SYMBOL_GPL vmlinux 0x5e1b9ae1 ata_ehi_clear_desc +EXPORT_SYMBOL_GPL vmlinux 0x5e39b9d5 crypto_unregister_algs +EXPORT_SYMBOL_GPL vmlinux 0x5e425eda kthread_func +EXPORT_SYMBOL_GPL vmlinux 0x5e4f9c00 tty_port_default_client_ops +EXPORT_SYMBOL_GPL vmlinux 0x5e515be6 ktime_get_ts64 +EXPORT_SYMBOL_GPL vmlinux 0x5e51cd74 swiotlb_nr_tbl +EXPORT_SYMBOL_GPL vmlinux 0x5e67763d pstore_register +EXPORT_SYMBOL_GPL vmlinux 0x5e6b4253 power_supply_get_by_name +EXPORT_SYMBOL_GPL vmlinux 0x5e798ffb divider_get_val +EXPORT_SYMBOL_GPL vmlinux 0x5e85415b ring_buffer_consume +EXPORT_SYMBOL_GPL vmlinux 0x5e86f057 icc_set_bw +EXPORT_SYMBOL_GPL vmlinux 0x5e9406b9 blk_mq_rdma_map_queues +EXPORT_SYMBOL_GPL vmlinux 0x5e960141 page_mkclean +EXPORT_SYMBOL_GPL vmlinux 0x5ea52be0 bio_disassociate_blkg +EXPORT_SYMBOL_GPL vmlinux 0x5ea9c32f phy_package_join +EXPORT_SYMBOL_GPL vmlinux 0x5ebb7fb5 tcp_abort +EXPORT_SYMBOL_GPL vmlinux 0x5ec62549 ata_dev_classify +EXPORT_SYMBOL_GPL vmlinux 0x5edfee09 udp4_lib_lookup_skb +EXPORT_SYMBOL_GPL vmlinux 0x5f1473ec __fat_fs_error +EXPORT_SYMBOL_GPL vmlinux 0x5f1869d4 sock_diag_save_cookie +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 0x5f31edba crypto_unregister_acomps +EXPORT_SYMBOL_GPL vmlinux 0x5f336749 proc_create_net_single +EXPORT_SYMBOL_GPL vmlinux 0x5f501d8e rio_release_dma +EXPORT_SYMBOL_GPL vmlinux 0x5f56a070 __irq_alloc_domain_generic_chips +EXPORT_SYMBOL_GPL vmlinux 0x5f6f1e9e dax_get_private +EXPORT_SYMBOL_GPL vmlinux 0x5f878d38 tty_buffer_set_limit +EXPORT_SYMBOL_GPL vmlinux 0x5faf219c power_supply_get_drvdata +EXPORT_SYMBOL_GPL vmlinux 0x5fdfa2c1 amd_pmu_enable_virt +EXPORT_SYMBOL_GPL vmlinux 0x5ffc0a16 phy_10gbit_full_features +EXPORT_SYMBOL_GPL vmlinux 0x60069ee1 inet_ehash_locks_alloc +EXPORT_SYMBOL_GPL vmlinux 0x60091316 clk_notifier_register +EXPORT_SYMBOL_GPL vmlinux 0x601ba3eb __tracepoint_io_page_fault +EXPORT_SYMBOL_GPL vmlinux 0x6029b279 ping_seq_stop +EXPORT_SYMBOL_GPL vmlinux 0x6030aa33 ata_std_bios_param +EXPORT_SYMBOL_GPL vmlinux 0x6037ac81 devlink_flash_update_begin_notify +EXPORT_SYMBOL_GPL vmlinux 0x603d0d51 acpi_os_map_iomem +EXPORT_SYMBOL_GPL vmlinux 0x60429826 __vfs_removexattr_locked +EXPORT_SYMBOL_GPL vmlinux 0x604722fd devices_cgrp_subsys_enabled_key +EXPORT_SYMBOL_GPL vmlinux 0x6051e40c blk_mq_alloc_request_hctx +EXPORT_SYMBOL_GPL vmlinux 0x60578e4f kobject_rename +EXPORT_SYMBOL_GPL vmlinux 0x607c4683 devlink_info_version_fixed_put +EXPORT_SYMBOL_GPL vmlinux 0x608acb3b dw_pcie_write_dbi +EXPORT_SYMBOL_GPL vmlinux 0x6091797f synchronize_rcu +EXPORT_SYMBOL_GPL vmlinux 0x6095838b tty_port_register_device_attr +EXPORT_SYMBOL_GPL vmlinux 0x609e52a0 led_blink_set_oneshot +EXPORT_SYMBOL_GPL vmlinux 0x60a13e90 rcu_barrier +EXPORT_SYMBOL_GPL vmlinux 0x60a634c4 vfio_info_cap_add +EXPORT_SYMBOL_GPL vmlinux 0x60a6710e sched_trace_cfs_rq_cpu +EXPORT_SYMBOL_GPL vmlinux 0x60d88e10 pm_generic_suspend_late +EXPORT_SYMBOL_GPL vmlinux 0x60ebc96f ring_buffer_read_prepare +EXPORT_SYMBOL_GPL vmlinux 0x60f99e1b cppc_set_perf +EXPORT_SYMBOL_GPL vmlinux 0x60ffb8c2 skcipher_walk_complete +EXPORT_SYMBOL_GPL vmlinux 0x610c9f7e unix_peer_get +EXPORT_SYMBOL_GPL vmlinux 0x6115bb17 ping_seq_next +EXPORT_SYMBOL_GPL vmlinux 0x611cfa85 klist_add_tail +EXPORT_SYMBOL_GPL vmlinux 0x6129fb93 sfp_remove_phy +EXPORT_SYMBOL_GPL vmlinux 0x612bfd89 errno_to_blk_status +EXPORT_SYMBOL_GPL vmlinux 0x61325c4e devm_namespace_disable +EXPORT_SYMBOL_GPL vmlinux 0x6158ff5a iommu_dev_disable_feature +EXPORT_SYMBOL_GPL vmlinux 0x615a2f73 dax_copy_to_iter +EXPORT_SYMBOL_GPL vmlinux 0x61674e59 acpi_dma_request_slave_chan_by_name +EXPORT_SYMBOL_GPL vmlinux 0x616b30c7 kmsg_dump_rewind +EXPORT_SYMBOL_GPL vmlinux 0x61725757 regulator_map_voltage_iterate +EXPORT_SYMBOL_GPL vmlinux 0x617a01c6 pci_disable_pasid +EXPORT_SYMBOL_GPL vmlinux 0x617b026c hwrng_register +EXPORT_SYMBOL_GPL vmlinux 0x61803901 register_virtio_driver +EXPORT_SYMBOL_GPL vmlinux 0x6181e79f timerqueue_add +EXPORT_SYMBOL_GPL vmlinux 0x6198dfea __ring_buffer_alloc +EXPORT_SYMBOL_GPL vmlinux 0x61996eac sched_show_task +EXPORT_SYMBOL_GPL vmlinux 0x6199ad5d crypto_has_skcipher +EXPORT_SYMBOL_GPL vmlinux 0x619b14da fpstate_init +EXPORT_SYMBOL_GPL vmlinux 0x619c2b57 hvc_poll +EXPORT_SYMBOL_GPL vmlinux 0x61abd6e9 rio_map_outb_region +EXPORT_SYMBOL_GPL vmlinux 0x61ae1d2d xas_pause +EXPORT_SYMBOL_GPL vmlinux 0x61cb6ef5 crypto_spawn_tfm +EXPORT_SYMBOL_GPL vmlinux 0x61f67c92 phy_gbit_features_array +EXPORT_SYMBOL_GPL vmlinux 0x62052b29 vtime_guest_enter +EXPORT_SYMBOL_GPL vmlinux 0x62063b26 phy_driver_is_genphy +EXPORT_SYMBOL_GPL vmlinux 0x6209a247 iomap_zero_range +EXPORT_SYMBOL_GPL vmlinux 0x620d8432 devm_memremap_pages +EXPORT_SYMBOL_GPL vmlinux 0x622c7922 register_oom_notifier +EXPORT_SYMBOL_GPL vmlinux 0x6232443e usb_free_coherent +EXPORT_SYMBOL_GPL vmlinux 0x62377a7b blk_io_schedule +EXPORT_SYMBOL_GPL vmlinux 0x6246a629 synchronize_rcu_tasks_trace +EXPORT_SYMBOL_GPL vmlinux 0x6246c127 devlink_port_attrs_pci_pf_set +EXPORT_SYMBOL_GPL vmlinux 0x6257dda7 clk_rate_exclusive_get +EXPORT_SYMBOL_GPL vmlinux 0x6259d291 clk_restore_context +EXPORT_SYMBOL_GPL vmlinux 0x625b7898 bus_register_notifier +EXPORT_SYMBOL_GPL vmlinux 0x62831a62 regulator_bulk_set_supply_names +EXPORT_SYMBOL_GPL vmlinux 0x629ee1d6 inode_congested +EXPORT_SYMBOL_GPL vmlinux 0x62a2e1a5 ata_std_prereset +EXPORT_SYMBOL_GPL vmlinux 0x62bb09bf clocks_calc_mult_shift +EXPORT_SYMBOL_GPL vmlinux 0x62d04546 bus_unregister +EXPORT_SYMBOL_GPL vmlinux 0x62f0daac hrtimer_init_sleeper +EXPORT_SYMBOL_GPL vmlinux 0x62fe9484 edac_mc_find_csrow_by_page +EXPORT_SYMBOL_GPL vmlinux 0x63077881 dma_buf_attach +EXPORT_SYMBOL_GPL vmlinux 0x630ac8d5 gpiod_set_raw_value_cansleep +EXPORT_SYMBOL_GPL vmlinux 0x63150e06 clk_get_parent +EXPORT_SYMBOL_GPL vmlinux 0x63197685 s2idle_wake +EXPORT_SYMBOL_GPL vmlinux 0x631ac2eb dio_end_io +EXPORT_SYMBOL_GPL vmlinux 0x631c422f rdev_set_badblocks +EXPORT_SYMBOL_GPL vmlinux 0x63251c14 wm831x_auxadc_read +EXPORT_SYMBOL_GPL vmlinux 0x633c91c3 virtio_device_freeze +EXPORT_SYMBOL_GPL vmlinux 0x6340434e x86_model +EXPORT_SYMBOL_GPL vmlinux 0x634614c8 mddev_suspend +EXPORT_SYMBOL_GPL vmlinux 0x634aef99 pinctrl_register +EXPORT_SYMBOL_GPL vmlinux 0x63731255 mmu_notifier_register +EXPORT_SYMBOL_GPL vmlinux 0x638a363a ata_pci_bmdma_init_one +EXPORT_SYMBOL_GPL vmlinux 0x638a9653 memory_add_physaddr_to_nid +EXPORT_SYMBOL_GPL vmlinux 0x638aff11 proc_douintvec_minmax +EXPORT_SYMBOL_GPL vmlinux 0x639ea7c5 usb_phy_roothub_suspend +EXPORT_SYMBOL_GPL vmlinux 0x63a35608 kernfs_path_from_node +EXPORT_SYMBOL_GPL vmlinux 0x63ade4c6 ncsi_vlan_rx_add_vid +EXPORT_SYMBOL_GPL vmlinux 0x63b95bcb sata_link_resume +EXPORT_SYMBOL_GPL vmlinux 0x63b9ac69 skb_complete_tx_timestamp +EXPORT_SYMBOL_GPL vmlinux 0x63c08029 clk_bulk_unprepare +EXPORT_SYMBOL_GPL vmlinux 0x63c48ae0 security_path_truncate +EXPORT_SYMBOL_GPL vmlinux 0x63c892db regmap_get_val_endian +EXPORT_SYMBOL_GPL vmlinux 0x63c8fd2b hv_setup_stimer0_irq +EXPORT_SYMBOL_GPL vmlinux 0x63c93ec6 ip6_push_pending_frames +EXPORT_SYMBOL_GPL vmlinux 0x63caa6f0 devlink_sb_register +EXPORT_SYMBOL_GPL vmlinux 0x63d8a0fc class_dev_iter_init +EXPORT_SYMBOL_GPL vmlinux 0x63db8f5b md_rdev_init +EXPORT_SYMBOL_GPL vmlinux 0x63ea80b3 cper_mem_err_type_str +EXPORT_SYMBOL_GPL vmlinux 0x640ab48f for_each_kernel_tracepoint +EXPORT_SYMBOL_GPL vmlinux 0x641eedad __clk_hw_register_mux +EXPORT_SYMBOL_GPL vmlinux 0x6452911d bus_set_iommu +EXPORT_SYMBOL_GPL vmlinux 0x645936e8 acpi_get_psd_map +EXPORT_SYMBOL_GPL vmlinux 0x6470c332 acpi_dev_pm_attach +EXPORT_SYMBOL_GPL vmlinux 0x6473daf9 d_exchange +EXPORT_SYMBOL_GPL vmlinux 0x6487c5fc regulator_get_voltage_rdev +EXPORT_SYMBOL_GPL vmlinux 0x6490703f iomap_is_partially_uptodate +EXPORT_SYMBOL_GPL vmlinux 0x649141f5 sata_pmp_port_ops +EXPORT_SYMBOL_GPL vmlinux 0x64925270 __dax_synchronous +EXPORT_SYMBOL_GPL vmlinux 0x649547b5 gpiod_set_array_value +EXPORT_SYMBOL_GPL vmlinux 0x649a027a led_set_brightness_sync +EXPORT_SYMBOL_GPL vmlinux 0x64a62e11 acpi_processor_ffh_cstate_enter +EXPORT_SYMBOL_GPL vmlinux 0x64ae0b25 ata_pci_remove_one +EXPORT_SYMBOL_GPL vmlinux 0x64b62862 nvme_wq +EXPORT_SYMBOL_GPL vmlinux 0x64be424b gpiod_get_index +EXPORT_SYMBOL_GPL vmlinux 0x64ca8d1e spi_busnum_to_master +EXPORT_SYMBOL_GPL vmlinux 0x64cc1976 tty_ldisc_deref +EXPORT_SYMBOL_GPL vmlinux 0x64d3cc4e xas_load +EXPORT_SYMBOL_GPL vmlinux 0x64e27c4f synth_event_delete +EXPORT_SYMBOL_GPL vmlinux 0x64f36620 dax_flush +EXPORT_SYMBOL_GPL vmlinux 0x64faf25c vprintk_default +EXPORT_SYMBOL_GPL vmlinux 0x65036105 clk_hw_is_enabled +EXPORT_SYMBOL_GPL vmlinux 0x6517ea71 crypto_shash_setkey +EXPORT_SYMBOL_GPL vmlinux 0x6527a231 dbgp_external_startup +EXPORT_SYMBOL_GPL vmlinux 0x65461c10 vfio_virqfd_disable +EXPORT_SYMBOL_GPL vmlinux 0x65606cfb lwtunnel_input +EXPORT_SYMBOL_GPL vmlinux 0x65704d22 hv_stimer_cleanup +EXPORT_SYMBOL_GPL vmlinux 0x6574dc3b devres_close_group +EXPORT_SYMBOL_GPL vmlinux 0x6578735e gpiochip_irq_domain_deactivate +EXPORT_SYMBOL_GPL vmlinux 0x659dcac9 crypto_shash_update +EXPORT_SYMBOL_GPL vmlinux 0x659e63f8 tracepoint_probe_register +EXPORT_SYMBOL_GPL vmlinux 0x65b59b96 fwnode_handle_get +EXPORT_SYMBOL_GPL vmlinux 0x65b7fb25 tty_set_termios +EXPORT_SYMBOL_GPL vmlinux 0x65c36f2d clk_hw_register +EXPORT_SYMBOL_GPL vmlinux 0x65ccb6f0 call_netevent_notifiers +EXPORT_SYMBOL_GPL vmlinux 0x65ed106f shmem_file_setup_with_mnt +EXPORT_SYMBOL_GPL vmlinux 0x660b9783 devlink_port_param_driverinit_value_get +EXPORT_SYMBOL_GPL vmlinux 0x6613f4af pm_generic_freeze_noirq +EXPORT_SYMBOL_GPL vmlinux 0x661601de sprint_symbol +EXPORT_SYMBOL_GPL vmlinux 0x66316548 hwspin_lock_register +EXPORT_SYMBOL_GPL vmlinux 0x6636c3c9 irq_set_vcpu_affinity +EXPORT_SYMBOL_GPL vmlinux 0x6638d38d sched_trace_rq_avg_dl +EXPORT_SYMBOL_GPL vmlinux 0x663bb448 devlink_fmsg_obj_nest_end +EXPORT_SYMBOL_GPL vmlinux 0x664d80ce bio_alloc_mddev +EXPORT_SYMBOL_GPL vmlinux 0x6656ee49 page_reporting_register +EXPORT_SYMBOL_GPL vmlinux 0x665e92a0 clk_set_duty_cycle +EXPORT_SYMBOL_GPL vmlinux 0x66669c6a iomap_writepage +EXPORT_SYMBOL_GPL vmlinux 0x666b755a __tracepoint_xdp_exception +EXPORT_SYMBOL_GPL vmlinux 0x66727a3f blk_mq_sched_request_inserted +EXPORT_SYMBOL_GPL vmlinux 0x66741161 dev_pm_set_wake_irq +EXPORT_SYMBOL_GPL vmlinux 0x6675a983 da9052_request_irq +EXPORT_SYMBOL_GPL vmlinux 0x6675badd nvmem_register +EXPORT_SYMBOL_GPL vmlinux 0x668402aa crypto_put_default_rng +EXPORT_SYMBOL_GPL vmlinux 0x66857c55 fwnode_graph_get_remote_endpoint +EXPORT_SYMBOL_GPL vmlinux 0x668a281e blk_mq_make_request +EXPORT_SYMBOL_GPL vmlinux 0x668a81cc trace_event_reg +EXPORT_SYMBOL_GPL vmlinux 0x66a6c061 tracepoint_probe_register_prio +EXPORT_SYMBOL_GPL vmlinux 0x66ae4727 mdio_bus_init +EXPORT_SYMBOL_GPL vmlinux 0x66b26b2b clk_hw_unregister_divider +EXPORT_SYMBOL_GPL vmlinux 0x66b97421 sfp_link_up +EXPORT_SYMBOL_GPL vmlinux 0x66bca893 pci_restore_msi_state +EXPORT_SYMBOL_GPL vmlinux 0x66bd3a45 key_type_trusted +EXPORT_SYMBOL_GPL vmlinux 0x66ced8bf thermal_zone_get_slope +EXPORT_SYMBOL_GPL vmlinux 0x66d87d38 symbol_put_addr +EXPORT_SYMBOL_GPL vmlinux 0x670d9157 usb_match_one_id +EXPORT_SYMBOL_GPL vmlinux 0x671c5c47 clk_hw_set_parent +EXPORT_SYMBOL_GPL vmlinux 0x67292248 device_node_to_regmap +EXPORT_SYMBOL_GPL vmlinux 0x6735d56e tcp_ca_get_name_by_key +EXPORT_SYMBOL_GPL vmlinux 0x675ae6d8 dev_pm_opp_put_supported_hw +EXPORT_SYMBOL_GPL vmlinux 0x677c2c7c devlink_param_value_changed +EXPORT_SYMBOL_GPL vmlinux 0x6790ebd3 mce_is_memory_error +EXPORT_SYMBOL_GPL vmlinux 0x6792e25a __tracepoint_unmap +EXPORT_SYMBOL_GPL vmlinux 0x67955ce6 profile_hits +EXPORT_SYMBOL_GPL vmlinux 0x6797920b crypto_register_aead +EXPORT_SYMBOL_GPL vmlinux 0x67a31844 ata_wait_register +EXPORT_SYMBOL_GPL vmlinux 0x67a91d0f gpiod_toggle_active_low +EXPORT_SYMBOL_GPL vmlinux 0x67bbc6be device_add +EXPORT_SYMBOL_GPL vmlinux 0x67bfa7f3 pci_create_root_bus +EXPORT_SYMBOL_GPL vmlinux 0x67c546f0 fwnode_graph_get_port_parent +EXPORT_SYMBOL_GPL vmlinux 0x67c68e0c bpf_trace_run3 +EXPORT_SYMBOL_GPL vmlinux 0x67cbb8f5 spi_split_transfers_maxsize +EXPORT_SYMBOL_GPL vmlinux 0x67d9df7b platform_msi_domain_free_irqs +EXPORT_SYMBOL_GPL vmlinux 0x67da9f7c sha512_zero_message_hash +EXPORT_SYMBOL_GPL vmlinux 0x67e80d69 xfrm_state_afinfo_get_rcu +EXPORT_SYMBOL_GPL vmlinux 0x67fe77e2 ata_scsi_port_error_handler +EXPORT_SYMBOL_GPL vmlinux 0x6807ffba posix_acl_access_xattr_handler +EXPORT_SYMBOL_GPL vmlinux 0x6821d7dc gpiod_get_raw_value_cansleep +EXPORT_SYMBOL_GPL vmlinux 0x682ff057 ring_buffer_commit_overrun_cpu +EXPORT_SYMBOL_GPL vmlinux 0x68400c9c peernet2id_alloc +EXPORT_SYMBOL_GPL vmlinux 0x6845b0ae gpiochip_get_data +EXPORT_SYMBOL_GPL vmlinux 0x685940df __rio_local_write_config_16 +EXPORT_SYMBOL_GPL vmlinux 0x6861a055 devm_phy_get +EXPORT_SYMBOL_GPL vmlinux 0x687558ab genphy_c45_check_and_restart_aneg +EXPORT_SYMBOL_GPL vmlinux 0x6890863e pm_clk_resume +EXPORT_SYMBOL_GPL vmlinux 0x68952493 rcu_note_context_switch +EXPORT_SYMBOL_GPL vmlinux 0x6898f2e2 tcp_cong_avoid_ai +EXPORT_SYMBOL_GPL vmlinux 0x68e28a71 cpufreq_register_governor +EXPORT_SYMBOL_GPL vmlinux 0x68eefa87 nvdimm_badblocks_populate +EXPORT_SYMBOL_GPL vmlinux 0x68fcf9a9 __sock_recv_ts_and_drops +EXPORT_SYMBOL_GPL vmlinux 0x690f585e phy_basic_ports_array +EXPORT_SYMBOL_GPL vmlinux 0x6945fa1f debugfs_create_u8 +EXPORT_SYMBOL_GPL vmlinux 0x6958ae23 dax_get_by_host +EXPORT_SYMBOL_GPL vmlinux 0x696340a5 __i2c_board_lock +EXPORT_SYMBOL_GPL vmlinux 0x696497ca ata_link_offline +EXPORT_SYMBOL_GPL vmlinux 0x696d7e0b l1tf_mitigation +EXPORT_SYMBOL_GPL vmlinux 0x6979fa3b ata_bmdma_start +EXPORT_SYMBOL_GPL vmlinux 0x697c25e7 pm_runtime_set_autosuspend_delay +EXPORT_SYMBOL_GPL vmlinux 0x697c5d0d tracing_snapshot_alloc +EXPORT_SYMBOL_GPL vmlinux 0x6989ed7c xhci_gen_setup +EXPORT_SYMBOL_GPL vmlinux 0x69a2b9cf edac_mc_del_mc +EXPORT_SYMBOL_GPL vmlinux 0x69bc8326 led_trigger_event +EXPORT_SYMBOL_GPL vmlinux 0x69e683de uuid_gen +EXPORT_SYMBOL_GPL vmlinux 0x69ee2220 linear_range_get_selector_high +EXPORT_SYMBOL_GPL vmlinux 0x6a05b3e2 tty_buffer_unlock_exclusive +EXPORT_SYMBOL_GPL vmlinux 0x6a1733eb iommu_group_unregister_notifier +EXPORT_SYMBOL_GPL vmlinux 0x6a2198e9 paste_selection +EXPORT_SYMBOL_GPL vmlinux 0x6a34fb54 vfs_truncate +EXPORT_SYMBOL_GPL vmlinux 0x6a41c40a inet_send_prepare +EXPORT_SYMBOL_GPL vmlinux 0x6a421062 memory_failure_queue +EXPORT_SYMBOL_GPL vmlinux 0x6a460dc5 schedule_hrtimeout +EXPORT_SYMBOL_GPL vmlinux 0x6a489c19 bpf_trace_run11 +EXPORT_SYMBOL_GPL vmlinux 0x6a4ae3f0 pm_generic_restore +EXPORT_SYMBOL_GPL vmlinux 0x6a4da8c3 wakeup_source_create +EXPORT_SYMBOL_GPL vmlinux 0x6a4f623b mmu_notifier_synchronize +EXPORT_SYMBOL_GPL vmlinux 0x6a5e2bde __cookie_v6_init_sequence +EXPORT_SYMBOL_GPL vmlinux 0x6a7d02b5 cpufreq_unregister_driver +EXPORT_SYMBOL_GPL vmlinux 0x6a8441be cpci_hp_start +EXPORT_SYMBOL_GPL vmlinux 0x6a94d3e9 debugfs_attr_write +EXPORT_SYMBOL_GPL vmlinux 0x6aa8506d pinctrl_utils_reserve_map +EXPORT_SYMBOL_GPL vmlinux 0x6ab61024 rtnl_register_module +EXPORT_SYMBOL_GPL vmlinux 0x6abdf28c blk_queue_can_use_dma_map_merging +EXPORT_SYMBOL_GPL vmlinux 0x6ac8556e crypto_grab_aead +EXPORT_SYMBOL_GPL vmlinux 0x6ad07287 ipv6_recv_error +EXPORT_SYMBOL_GPL vmlinux 0x6ad5247b dummy_irq_chip +EXPORT_SYMBOL_GPL vmlinux 0x6ada5e67 preempt_notifier_unregister +EXPORT_SYMBOL_GPL vmlinux 0x6b22926b irq_work_sync +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 0x6b3ccae9 pm_generic_suspend_noirq +EXPORT_SYMBOL_GPL vmlinux 0x6b413c9b sfp_link_down +EXPORT_SYMBOL_GPL vmlinux 0x6b484050 nvdimm_in_overwrite +EXPORT_SYMBOL_GPL vmlinux 0x6b5bd3c2 nvmem_device_get +EXPORT_SYMBOL_GPL vmlinux 0x6b7562db serial8250_get_port +EXPORT_SYMBOL_GPL vmlinux 0x6b7a4335 hyperv_cleanup +EXPORT_SYMBOL_GPL vmlinux 0x6b81c38b power_supply_unreg_notifier +EXPORT_SYMBOL_GPL vmlinux 0x6b83dce4 blkdev_ioctl +EXPORT_SYMBOL_GPL vmlinux 0x6ba36c6a hwpoison_filter_flags_value +EXPORT_SYMBOL_GPL vmlinux 0x6ba38c88 sysfs_unmerge_group +EXPORT_SYMBOL_GPL vmlinux 0x6bb773e9 nvme_set_features +EXPORT_SYMBOL_GPL vmlinux 0x6bd1aa56 stack_trace_save +EXPORT_SYMBOL_GPL vmlinux 0x6bd73962 regulator_get_voltage +EXPORT_SYMBOL_GPL vmlinux 0x6bdaee8e device_remove_properties +EXPORT_SYMBOL_GPL vmlinux 0x6bddf79e pci_disable_sriov +EXPORT_SYMBOL_GPL vmlinux 0x6bdef35c acpi_ec_mark_gpe_for_wake +EXPORT_SYMBOL_GPL vmlinux 0x6bdef5ee pci_get_dsn +EXPORT_SYMBOL_GPL vmlinux 0x6c1b58b4 __rio_local_read_config_8 +EXPORT_SYMBOL_GPL vmlinux 0x6c2720ee posix_acl_create +EXPORT_SYMBOL_GPL vmlinux 0x6c2f7d6d ata_sas_tport_add +EXPORT_SYMBOL_GPL vmlinux 0x6c350eba kthread_unuse_mm +EXPORT_SYMBOL_GPL vmlinux 0x6c389761 acpi_bus_get_private_data +EXPORT_SYMBOL_GPL vmlinux 0x6c3b612b acpi_ec_add_query_handler +EXPORT_SYMBOL_GPL vmlinux 0x6c3cc685 da9052_adc_read_temp +EXPORT_SYMBOL_GPL vmlinux 0x6c3f70e0 guid_gen +EXPORT_SYMBOL_GPL vmlinux 0x6c422aff tty_kclose +EXPORT_SYMBOL_GPL vmlinux 0x6c4b6684 reset_control_assert +EXPORT_SYMBOL_GPL vmlinux 0x6c4d8f67 fuse_send_init +EXPORT_SYMBOL_GPL vmlinux 0x6c55dffa ata_scsi_slave_config +EXPORT_SYMBOL_GPL vmlinux 0x6c5cdcc7 usb_autopm_put_interface_no_suspend +EXPORT_SYMBOL_GPL vmlinux 0x6c655913 register_acpi_hed_notifier +EXPORT_SYMBOL_GPL vmlinux 0x6c692de5 input_ff_erase +EXPORT_SYMBOL_GPL vmlinux 0x6c6b4b7f pci_set_pcie_reset_state +EXPORT_SYMBOL_GPL vmlinux 0x6c6f40ab serial8250_do_set_divisor +EXPORT_SYMBOL_GPL vmlinux 0x6c8fc610 virtqueue_add_sgs +EXPORT_SYMBOL_GPL vmlinux 0x6ca128d3 virtio_break_device +EXPORT_SYMBOL_GPL vmlinux 0x6ca4bf88 async_synchronize_full_domain +EXPORT_SYMBOL_GPL vmlinux 0x6ca51556 devm_nvmem_device_put +EXPORT_SYMBOL_GPL vmlinux 0x6ca63496 register_kretprobe +EXPORT_SYMBOL_GPL vmlinux 0x6cad0c66 gpiod_count +EXPORT_SYMBOL_GPL vmlinux 0x6cb60918 efivar_entry_get +EXPORT_SYMBOL_GPL vmlinux 0x6cb8aa1c bus_rescan_devices +EXPORT_SYMBOL_GPL vmlinux 0x6cce6655 pci_generic_config_read32 +EXPORT_SYMBOL_GPL vmlinux 0x6ccefd9d regulator_get_current_limit_regmap +EXPORT_SYMBOL_GPL vmlinux 0x6cdc4788 dev_pm_opp_get_freq +EXPORT_SYMBOL_GPL vmlinux 0x6ce1c1b4 gpiochip_irqchip_irq_valid +EXPORT_SYMBOL_GPL vmlinux 0x6d0ae550 pinctrl_gpio_request +EXPORT_SYMBOL_GPL vmlinux 0x6d253dc9 dst_cache_set_ip6 +EXPORT_SYMBOL_GPL vmlinux 0x6d2cde4d devlink_resource_size_get +EXPORT_SYMBOL_GPL vmlinux 0x6d2e899d mce_usable_address +EXPORT_SYMBOL_GPL vmlinux 0x6d2fc5a6 net_namespace_list +EXPORT_SYMBOL_GPL vmlinux 0x6d34e3dc dev_pm_qos_expose_latency_limit +EXPORT_SYMBOL_GPL vmlinux 0x6d3734ce devm_hwmon_device_register_with_info +EXPORT_SYMBOL_GPL vmlinux 0x6d5469c8 pm_generic_resume_early +EXPORT_SYMBOL_GPL vmlinux 0x6d57659e open_related_ns +EXPORT_SYMBOL_GPL vmlinux 0x6d6616ab skcipher_register_instance +EXPORT_SYMBOL_GPL vmlinux 0x6d6fec1f ktime_mono_to_any +EXPORT_SYMBOL_GPL vmlinux 0x6d7dc2ab compat_only_sysfs_link_entry_to_kobj +EXPORT_SYMBOL_GPL vmlinux 0x6d7e951e rcu_exp_batches_completed +EXPORT_SYMBOL_GPL vmlinux 0x6d8fbe57 raw_seq_start +EXPORT_SYMBOL_GPL vmlinux 0x6d9ee2a0 __request_percpu_irq +EXPORT_SYMBOL_GPL vmlinux 0x6daa3fbb devm_platform_ioremap_resource_byname +EXPORT_SYMBOL_GPL vmlinux 0x6dbaafd3 put_old_timespec32 +EXPORT_SYMBOL_GPL vmlinux 0x6dc322b1 clk_hw_register_fixed_factor +EXPORT_SYMBOL_GPL vmlinux 0x6dccead4 arizona_clk32k_disable +EXPORT_SYMBOL_GPL vmlinux 0x6ded1dcc d_walk +EXPORT_SYMBOL_GPL vmlinux 0x6df005d5 pm_genpd_init +EXPORT_SYMBOL_GPL vmlinux 0x6e00fcfb modify_ftrace_direct +EXPORT_SYMBOL_GPL vmlinux 0x6e01c2ed devm_hwrng_register +EXPORT_SYMBOL_GPL vmlinux 0x6e17df86 hvc_remove +EXPORT_SYMBOL_GPL vmlinux 0x6e18c005 dm_suspended +EXPORT_SYMBOL_GPL vmlinux 0x6e23d343 xdp_attachment_flags_ok +EXPORT_SYMBOL_GPL vmlinux 0x6e3ff83a edac_device_alloc_index +EXPORT_SYMBOL_GPL vmlinux 0x6e456012 nvme_stop_keep_alive +EXPORT_SYMBOL_GPL vmlinux 0x6e4bc056 spi_res_free +EXPORT_SYMBOL_GPL vmlinux 0x6e6d0dd9 arizona_clk32k_enable +EXPORT_SYMBOL_GPL vmlinux 0x6e7026c7 devres_alloc_node +EXPORT_SYMBOL_GPL vmlinux 0x6e7943ec iommu_group_id +EXPORT_SYMBOL_GPL vmlinux 0x6e84b258 pci_epc_set_bar +EXPORT_SYMBOL_GPL vmlinux 0x6e85076f pm_generic_thaw_early +EXPORT_SYMBOL_GPL vmlinux 0x6e85b00b local_touch_nmi +EXPORT_SYMBOL_GPL vmlinux 0x6e89a560 regmap_irq_chip_get_base +EXPORT_SYMBOL_GPL vmlinux 0x6e8a5e77 fwnode_count_parents +EXPORT_SYMBOL_GPL vmlinux 0x6e94351b devm_gpiochip_add_data_with_key +EXPORT_SYMBOL_GPL vmlinux 0x6e9bce92 md_kick_rdev_from_array +EXPORT_SYMBOL_GPL vmlinux 0x6eb16623 ata_std_error_handler +EXPORT_SYMBOL_GPL vmlinux 0x6eb84e1d vfio_iommu_group_put +EXPORT_SYMBOL_GPL vmlinux 0x6ebe366f ktime_get_mono_fast_ns +EXPORT_SYMBOL_GPL vmlinux 0x6ec38b4c ata_sas_port_suspend +EXPORT_SYMBOL_GPL vmlinux 0x6ec5e464 rtc_set_time +EXPORT_SYMBOL_GPL vmlinux 0x6ee8c94b sfp_get_module_eeprom +EXPORT_SYMBOL_GPL vmlinux 0x6ef6b54f ktime_get_boot_fast_ns +EXPORT_SYMBOL_GPL vmlinux 0x6f0c0dd6 __sock_recv_timestamp +EXPORT_SYMBOL_GPL vmlinux 0x6f12560a get_old_timespec32 +EXPORT_SYMBOL_GPL vmlinux 0x6f4776af nexthop_select_path +EXPORT_SYMBOL_GPL vmlinux 0x6f5ca50e evm_inode_init_security +EXPORT_SYMBOL_GPL vmlinux 0x6f6afbdb crypto_register_instance +EXPORT_SYMBOL_GPL vmlinux 0x6f71f0b7 device_link_add +EXPORT_SYMBOL_GPL vmlinux 0x6f7b1beb fat_truncate_time +EXPORT_SYMBOL_GPL vmlinux 0x6f949151 __acpi_nvdimm_notify +EXPORT_SYMBOL_GPL vmlinux 0x6f9e763b timecounter_read +EXPORT_SYMBOL_GPL vmlinux 0x6fcef6ab ring_buffer_reset +EXPORT_SYMBOL_GPL vmlinux 0x6ff3650b ipv6_proxy_select_ident +EXPORT_SYMBOL_GPL vmlinux 0x6ff607b6 crypto_get_default_rng +EXPORT_SYMBOL_GPL vmlinux 0x6ffce680 x86_cpu_has_min_microcode_rev +EXPORT_SYMBOL_GPL vmlinux 0x700358a4 fwnode_get_next_available_child_node +EXPORT_SYMBOL_GPL vmlinux 0x7006586e iommu_get_group_resv_regions +EXPORT_SYMBOL_GPL vmlinux 0x70200f80 fib6_rule_default +EXPORT_SYMBOL_GPL vmlinux 0x70415320 phy_modify_changed +EXPORT_SYMBOL_GPL vmlinux 0x704b6646 devlink_net_set +EXPORT_SYMBOL_GPL vmlinux 0x705001e9 cleanup_srcu_struct +EXPORT_SYMBOL_GPL vmlinux 0x70576fee acpi_processor_ffh_cstate_probe +EXPORT_SYMBOL_GPL vmlinux 0x706f2f2e rtc_class_open +EXPORT_SYMBOL_GPL vmlinux 0x7073c04f phy_10_100_features_array +EXPORT_SYMBOL_GPL vmlinux 0x70777366 thermal_zone_device_register +EXPORT_SYMBOL_GPL vmlinux 0x7079a4a3 tracepoint_srcu +EXPORT_SYMBOL_GPL vmlinux 0x7090ae99 pci_disable_pri +EXPORT_SYMBOL_GPL vmlinux 0x70ad4c34 xdp_return_frame_rx_napi +EXPORT_SYMBOL_GPL vmlinux 0x70bcdab2 devm_regulator_get_optional +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 0x70d70f32 usb_free_streams +EXPORT_SYMBOL_GPL vmlinux 0x70db283e cpufreq_table_index_unsorted +EXPORT_SYMBOL_GPL vmlinux 0x70f36638 blk_abort_request +EXPORT_SYMBOL_GPL vmlinux 0x70f414c1 dev_pm_qos_hide_latency_tolerance +EXPORT_SYMBOL_GPL vmlinux 0x70f4afb2 tty_set_ldisc +EXPORT_SYMBOL_GPL vmlinux 0x70f5332f sfi_table_parse +EXPORT_SYMBOL_GPL vmlinux 0x70f72d30 dev_pm_opp_enable +EXPORT_SYMBOL_GPL vmlinux 0x710c73b6 crypto_unregister_notifier +EXPORT_SYMBOL_GPL vmlinux 0x711199c6 scsi_autopm_get_device +EXPORT_SYMBOL_GPL vmlinux 0x71316503 kmsg_dump_get_line +EXPORT_SYMBOL_GPL vmlinux 0x7149d6b5 user_destroy +EXPORT_SYMBOL_GPL vmlinux 0x716265c7 debugfs_initialized +EXPORT_SYMBOL_GPL vmlinux 0x71650819 add_bootloader_randomness +EXPORT_SYMBOL_GPL vmlinux 0x7165e824 iommu_set_fault_handler +EXPORT_SYMBOL_GPL vmlinux 0x71761b03 hwspin_lock_free +EXPORT_SYMBOL_GPL vmlinux 0x7181db30 atomic_notifier_chain_unregister +EXPORT_SYMBOL_GPL vmlinux 0x7195b832 ethnl_cable_test_fault_length +EXPORT_SYMBOL_GPL vmlinux 0x7199de55 iommu_get_domain_for_dev +EXPORT_SYMBOL_GPL vmlinux 0x719e17ff clk_notifier_unregister +EXPORT_SYMBOL_GPL vmlinux 0x71cd4925 pci_device_group +EXPORT_SYMBOL_GPL vmlinux 0x71f4aa21 crypto_unregister_instance +EXPORT_SYMBOL_GPL vmlinux 0x71f6670b __cookie_v6_check +EXPORT_SYMBOL_GPL vmlinux 0x71f7b56d disk_map_sector_rcu +EXPORT_SYMBOL_GPL vmlinux 0x71fdce08 clk_hw_get_flags +EXPORT_SYMBOL_GPL vmlinux 0x72071ec9 dm_disk +EXPORT_SYMBOL_GPL vmlinux 0x721928ee anon_inode_getfile +EXPORT_SYMBOL_GPL vmlinux 0x721f337c ata_cable_ignore +EXPORT_SYMBOL_GPL vmlinux 0x7221590d ip6_append_data +EXPORT_SYMBOL_GPL vmlinux 0x72253f40 regulator_register_supply_alias +EXPORT_SYMBOL_GPL vmlinux 0x7225ce32 regulator_count_voltages +EXPORT_SYMBOL_GPL vmlinux 0x723d7ae0 pinctrl_pm_select_idle_state +EXPORT_SYMBOL_GPL vmlinux 0x72536d06 dev_pm_opp_find_freq_floor +EXPORT_SYMBOL_GPL vmlinux 0x725610dc usb_get_from_anchor +EXPORT_SYMBOL_GPL vmlinux 0x7268f82e blk_mq_force_complete_rq +EXPORT_SYMBOL_GPL vmlinux 0x726ac594 rio_get_asm +EXPORT_SYMBOL_GPL vmlinux 0x726dc7c4 vfs_read +EXPORT_SYMBOL_GPL vmlinux 0x72770b6b __phy_modify +EXPORT_SYMBOL_GPL vmlinux 0x7278d328 all_vm_events +EXPORT_SYMBOL_GPL vmlinux 0x728b7e94 raw_seq_next +EXPORT_SYMBOL_GPL vmlinux 0x729b94a9 fscrypt_ioctl_remove_key_all_users +EXPORT_SYMBOL_GPL vmlinux 0x72c1aeeb __tracepoint_map +EXPORT_SYMBOL_GPL vmlinux 0x72c20a38 subsys_dev_iter_next +EXPORT_SYMBOL_GPL vmlinux 0x72cfba13 pinctrl_select_state +EXPORT_SYMBOL_GPL vmlinux 0x72d267dc nvmem_del_cell_lookups +EXPORT_SYMBOL_GPL vmlinux 0x72e07867 inet6_destroy_sock +EXPORT_SYMBOL_GPL vmlinux 0x72e37d71 rio_get_comptag +EXPORT_SYMBOL_GPL vmlinux 0x72ec3441 pci_msi_prepare +EXPORT_SYMBOL_GPL vmlinux 0x72f5d363 phy_create_lookup +EXPORT_SYMBOL_GPL vmlinux 0x7309ef15 ipv6_bpf_stub +EXPORT_SYMBOL_GPL vmlinux 0x7312b73f rtc_read_time +EXPORT_SYMBOL_GPL vmlinux 0x7313b4ac spi_delay_to_ns +EXPORT_SYMBOL_GPL vmlinux 0x73154d6f fb_deferred_io_init +EXPORT_SYMBOL_GPL vmlinux 0x73172320 register_acpi_bus_type +EXPORT_SYMBOL_GPL vmlinux 0x73199e08 srcu_notifier_chain_unregister +EXPORT_SYMBOL_GPL vmlinux 0x73302627 skb_to_sgvec +EXPORT_SYMBOL_GPL vmlinux 0x735aa154 acpi_dma_request_slave_chan_by_index +EXPORT_SYMBOL_GPL vmlinux 0x736b2fb0 regulator_set_voltage_time_sel +EXPORT_SYMBOL_GPL vmlinux 0x73796ab6 regulator_get_hardware_vsel_register +EXPORT_SYMBOL_GPL vmlinux 0x7381287f trace_handle_return +EXPORT_SYMBOL_GPL vmlinux 0x73894b92 ata_dev_next +EXPORT_SYMBOL_GPL vmlinux 0x738fe32b amd_get_nodes_per_socket +EXPORT_SYMBOL_GPL vmlinux 0x73a48b4a ata_sff_std_ports +EXPORT_SYMBOL_GPL vmlinux 0x73afd54b __efivar_entry_iter +EXPORT_SYMBOL_GPL vmlinux 0x73b96593 ata_dummy_port_ops +EXPORT_SYMBOL_GPL vmlinux 0x73c2554f __iowrite64_copy +EXPORT_SYMBOL_GPL vmlinux 0x73cc8631 oiap +EXPORT_SYMBOL_GPL vmlinux 0x73d30eae devm_kstrdup_const +EXPORT_SYMBOL_GPL vmlinux 0x73ef74b9 crypto_stats_akcipher_sign +EXPORT_SYMBOL_GPL vmlinux 0x73f1efd2 sk_setup_caps +EXPORT_SYMBOL_GPL vmlinux 0x73f8d363 irq_chip_enable_parent +EXPORT_SYMBOL_GPL vmlinux 0x740f6d2c ata_eh_analyze_ncq_error +EXPORT_SYMBOL_GPL vmlinux 0x742211a8 clk_bulk_get_optional +EXPORT_SYMBOL_GPL vmlinux 0x7425429f __of_reset_control_get +EXPORT_SYMBOL_GPL vmlinux 0x74365ef3 n_tty_inherit_ops +EXPORT_SYMBOL_GPL vmlinux 0x743a165e ata_pack_xfermask +EXPORT_SYMBOL_GPL vmlinux 0x74457e56 apei_resources_fini +EXPORT_SYMBOL_GPL vmlinux 0x7452adff user_return_notifier_register +EXPORT_SYMBOL_GPL vmlinux 0x74604bff dma_request_chan_by_mask +EXPORT_SYMBOL_GPL vmlinux 0x7460f604 __fscrypt_encrypt_symlink +EXPORT_SYMBOL_GPL vmlinux 0x746a91d7 ata_bmdma_post_internal_cmd +EXPORT_SYMBOL_GPL vmlinux 0x7470e6a8 vmbus_connect_ring +EXPORT_SYMBOL_GPL vmlinux 0x7485f0d3 ping_unhash +EXPORT_SYMBOL_GPL vmlinux 0x748fa03f spi_take_timestamp_pre +EXPORT_SYMBOL_GPL vmlinux 0x7496986b ip_route_output_key_hash +EXPORT_SYMBOL_GPL vmlinux 0x749cad9e pci_epc_multi_mem_init +EXPORT_SYMBOL_GPL vmlinux 0x74b5ea68 lcm_not_zero +EXPORT_SYMBOL_GPL vmlinux 0x74baf17a tracing_is_on +EXPORT_SYMBOL_GPL vmlinux 0x74c7bffa stack_trace_snprint +EXPORT_SYMBOL_GPL vmlinux 0x74c99914 arizona_pm_ops +EXPORT_SYMBOL_GPL vmlinux 0x74e73871 housekeeping_overridden +EXPORT_SYMBOL_GPL vmlinux 0x750a3dbc devm_rtc_allocate_device +EXPORT_SYMBOL_GPL vmlinux 0x750d232a regmap_irq_get_domain +EXPORT_SYMBOL_GPL vmlinux 0x75108e7a cpufreq_dbs_governor_limits +EXPORT_SYMBOL_GPL vmlinux 0x75133f6e visitor128 +EXPORT_SYMBOL_GPL vmlinux 0x7513a473 watchdog_set_restart_priority +EXPORT_SYMBOL_GPL vmlinux 0x7521afb6 leave_mm +EXPORT_SYMBOL_GPL vmlinux 0x7522715f driver_unregister +EXPORT_SYMBOL_GPL vmlinux 0x7522f3ba irq_modify_status +EXPORT_SYMBOL_GPL vmlinux 0x752fb3b9 shmem_truncate_range +EXPORT_SYMBOL_GPL vmlinux 0x75340bcd fuse_dev_operations +EXPORT_SYMBOL_GPL vmlinux 0x753b0aa1 ata_pci_device_do_suspend +EXPORT_SYMBOL_GPL vmlinux 0x754bce59 pci_ignore_hotplug +EXPORT_SYMBOL_GPL vmlinux 0x75680446 efivars_unregister +EXPORT_SYMBOL_GPL vmlinux 0x75792186 get_xsave_addr +EXPORT_SYMBOL_GPL vmlinux 0x75920516 unregister_asymmetric_key_parser +EXPORT_SYMBOL_GPL vmlinux 0x759bfe36 btree_destroy +EXPORT_SYMBOL_GPL vmlinux 0x75b13213 trace_output_call +EXPORT_SYMBOL_GPL vmlinux 0x75c3738d nvdimm_region_notify +EXPORT_SYMBOL_GPL vmlinux 0x75cbfb09 add_interrupt_randomness +EXPORT_SYMBOL_GPL vmlinux 0x75d25e7e __tracepoint_napi_poll +EXPORT_SYMBOL_GPL vmlinux 0x75e1f4d4 dma_buf_dynamic_attach +EXPORT_SYMBOL_GPL vmlinux 0x75e9c735 pci_ats_disabled +EXPORT_SYMBOL_GPL vmlinux 0x75f0e875 xas_store +EXPORT_SYMBOL_GPL vmlinux 0x75f1198e bpf_prog_sub +EXPORT_SYMBOL_GPL vmlinux 0x7600a1a8 gpiochip_line_is_open_source +EXPORT_SYMBOL_GPL vmlinux 0x7614669d iomap_file_buffered_write +EXPORT_SYMBOL_GPL vmlinux 0x763a8b71 dma_max_mapping_size +EXPORT_SYMBOL_GPL vmlinux 0x765ff9bd phy_restart_aneg +EXPORT_SYMBOL_GPL vmlinux 0x7660ed25 netdev_walk_all_lower_dev_rcu +EXPORT_SYMBOL_GPL vmlinux 0x7665a95b idr_remove +EXPORT_SYMBOL_GPL vmlinux 0x7665ee72 crypto_dh_decode_key +EXPORT_SYMBOL_GPL vmlinux 0x767ae12f usb_free_urb +EXPORT_SYMBOL_GPL vmlinux 0x7681946c unregister_pm_notifier +EXPORT_SYMBOL_GPL vmlinux 0x76d9b876 clk_set_rate +EXPORT_SYMBOL_GPL vmlinux 0x76edf63b xdp_convert_zc_to_xdp_frame +EXPORT_SYMBOL_GPL vmlinux 0x76eeeb0f sha384_zero_message_hash +EXPORT_SYMBOL_GPL vmlinux 0x76efe00e pci_rescan_bus +EXPORT_SYMBOL_GPL vmlinux 0x77103a98 power_supply_register_no_ws +EXPORT_SYMBOL_GPL vmlinux 0x77222306 ring_buffer_read_page +EXPORT_SYMBOL_GPL vmlinux 0x7729cbdd task_handoff_register +EXPORT_SYMBOL_GPL vmlinux 0x77332efa spi_mem_supports_op +EXPORT_SYMBOL_GPL vmlinux 0x773d02d5 devfreq_event_is_enabled +EXPORT_SYMBOL_GPL vmlinux 0x773f2713 clk_hw_unregister_mux +EXPORT_SYMBOL_GPL vmlinux 0x7747af93 arizona_set_irq_wake +EXPORT_SYMBOL_GPL vmlinux 0x774a23b3 fib_table_lookup +EXPORT_SYMBOL_GPL vmlinux 0x7757b51a clk_unregister +EXPORT_SYMBOL_GPL vmlinux 0x7759190c init_pid_ns +EXPORT_SYMBOL_GPL vmlinux 0x77711798 devm_phy_put +EXPORT_SYMBOL_GPL vmlinux 0x777f0194 usb_driver_set_configuration +EXPORT_SYMBOL_GPL vmlinux 0x7791e066 dw_pcie_read +EXPORT_SYMBOL_GPL vmlinux 0x77a6ef5b dm_post_suspending +EXPORT_SYMBOL_GPL vmlinux 0x77ae495d usb_speed_string +EXPORT_SYMBOL_GPL vmlinux 0x77badf5c irq_chip_set_parent_state +EXPORT_SYMBOL_GPL vmlinux 0x77e507fe register_trace_event +EXPORT_SYMBOL_GPL vmlinux 0x77e75be3 sfp_bus_put +EXPORT_SYMBOL_GPL vmlinux 0x77eb2fe7 __hrtimer_get_remaining +EXPORT_SYMBOL_GPL vmlinux 0x77ecf68d memalloc_socks_key +EXPORT_SYMBOL_GPL vmlinux 0x77fe9f32 dax_finish_sync_fault +EXPORT_SYMBOL_GPL vmlinux 0x78041b8f byte_rev_table +EXPORT_SYMBOL_GPL vmlinux 0x780af70d crypto_stats_aead_encrypt +EXPORT_SYMBOL_GPL vmlinux 0x782adb74 hpet_rtc_interrupt +EXPORT_SYMBOL_GPL vmlinux 0x7842473c fwnode_remove_software_node +EXPORT_SYMBOL_GPL vmlinux 0x785a93b4 si_mem_available +EXPORT_SYMBOL_GPL vmlinux 0x78632d99 fsnotify +EXPORT_SYMBOL_GPL vmlinux 0x78646c85 cpufreq_register_driver +EXPORT_SYMBOL_GPL vmlinux 0x786c0cca proc_create_net_data_write +EXPORT_SYMBOL_GPL vmlinux 0x787c882b lzo1x_1_compress +EXPORT_SYMBOL_GPL vmlinux 0x788bfbad ring_buffer_empty +EXPORT_SYMBOL_GPL vmlinux 0x788fd48b perf_event_pause +EXPORT_SYMBOL_GPL vmlinux 0x789c73d9 rcu_cpu_stall_suppress_at_boot +EXPORT_SYMBOL_GPL vmlinux 0x78a17313 cdrom_multisession +EXPORT_SYMBOL_GPL vmlinux 0x78a1ea3f driver_find +EXPORT_SYMBOL_GPL vmlinux 0x78a4c458 blk_mq_bio_list_merge +EXPORT_SYMBOL_GPL vmlinux 0x78be151f query_asymmetric_key +EXPORT_SYMBOL_GPL vmlinux 0x78c25101 rtc_set_alarm +EXPORT_SYMBOL_GPL vmlinux 0x78c2e0fe devm_mdiobus_free +EXPORT_SYMBOL_GPL vmlinux 0x78d24b2d device_create_with_groups +EXPORT_SYMBOL_GPL vmlinux 0x78dd9666 dw_pcie_ep_init_complete +EXPORT_SYMBOL_GPL vmlinux 0x78ddb76b dmi_match +EXPORT_SYMBOL_GPL vmlinux 0x790be0b9 usb_bus_idr +EXPORT_SYMBOL_GPL vmlinux 0x790bfdaf crypto_stats_rng_generate +EXPORT_SYMBOL_GPL vmlinux 0x7915cee5 do_machine_check +EXPORT_SYMBOL_GPL vmlinux 0x791748c8 adxl_decode +EXPORT_SYMBOL_GPL vmlinux 0x7918d817 memory_failure +EXPORT_SYMBOL_GPL vmlinux 0x7922b07b fsnotify_add_mark +EXPORT_SYMBOL_GPL vmlinux 0x792eecf0 task_cls_state +EXPORT_SYMBOL_GPL vmlinux 0x794338f4 pid_nr_ns +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 0x79516c06 xdp_return_frame +EXPORT_SYMBOL_GPL vmlinux 0x7978d73c _proc_mkdir +EXPORT_SYMBOL_GPL vmlinux 0x798b7682 klist_prev +EXPORT_SYMBOL_GPL vmlinux 0x7991fd8d crash_vmclear_loaded_vmcss +EXPORT_SYMBOL_GPL vmlinux 0x799aebb1 sbitmap_get_shallow +EXPORT_SYMBOL_GPL vmlinux 0x79a2d15d rdev_get_regmap +EXPORT_SYMBOL_GPL vmlinux 0x79ba0b37 clk_hw_is_prepared +EXPORT_SYMBOL_GPL vmlinux 0x79bc842c usb_anchor_suspend_wakeups +EXPORT_SYMBOL_GPL vmlinux 0x79c8f956 sysfs_remove_file_from_group +EXPORT_SYMBOL_GPL vmlinux 0x79cd7e69 pm_clk_destroy +EXPORT_SYMBOL_GPL vmlinux 0x79cf1043 fpu_kernel_xstate_size +EXPORT_SYMBOL_GPL vmlinux 0x79defbe1 kthread_should_park +EXPORT_SYMBOL_GPL vmlinux 0x79e69460 intel_iommu_gfx_mapped +EXPORT_SYMBOL_GPL vmlinux 0x79f697e4 lzorle1x_1_compress +EXPORT_SYMBOL_GPL vmlinux 0x79ff4e76 iommu_domain_window_disable +EXPORT_SYMBOL_GPL vmlinux 0x7a01ba5d tty_port_tty_wakeup +EXPORT_SYMBOL_GPL vmlinux 0x7a139a62 tpm2_probe +EXPORT_SYMBOL_GPL vmlinux 0x7a258c02 switchdev_handle_port_obj_add +EXPORT_SYMBOL_GPL vmlinux 0x7a2b50f9 pci_sriov_get_totalvfs +EXPORT_SYMBOL_GPL vmlinux 0x7a416e06 vfio_device_get_from_dev +EXPORT_SYMBOL_GPL vmlinux 0x7a565798 usb_driver_claim_interface +EXPORT_SYMBOL_GPL vmlinux 0x7a566eae sfp_add_phy +EXPORT_SYMBOL_GPL vmlinux 0x7a6105e8 crypto_stats_skcipher_encrypt +EXPORT_SYMBOL_GPL vmlinux 0x7a6107a8 sysfs_update_groups +EXPORT_SYMBOL_GPL vmlinux 0x7a655f68 acpi_processor_claim_cst_control +EXPORT_SYMBOL_GPL vmlinux 0x7a71af77 add_memory_driver_managed +EXPORT_SYMBOL_GPL vmlinux 0x7a7327cc dw_pcie_find_ext_capability +EXPORT_SYMBOL_GPL vmlinux 0x7a73e605 wm831x_isinkv_values +EXPORT_SYMBOL_GPL vmlinux 0x7a76d674 led_set_brightness +EXPORT_SYMBOL_GPL vmlinux 0x7a78c81f ata_slave_link_init +EXPORT_SYMBOL_GPL vmlinux 0x7a81541b async_synchronize_cookie +EXPORT_SYMBOL_GPL vmlinux 0x7a98f4b4 copy_from_user_nofault +EXPORT_SYMBOL_GPL vmlinux 0x7a9e4c23 software_node_register_node_group +EXPORT_SYMBOL_GPL vmlinux 0x7aa8756a debugfs_create_dir +EXPORT_SYMBOL_GPL vmlinux 0x7ab044ba power_supply_put_battery_info +EXPORT_SYMBOL_GPL vmlinux 0x7abfca43 rhashtable_init +EXPORT_SYMBOL_GPL vmlinux 0x7ac381a8 blk_mq_sched_mark_restart_hctx +EXPORT_SYMBOL_GPL vmlinux 0x7ac722bd phy_all_ports_features_array +EXPORT_SYMBOL_GPL vmlinux 0x7ace318c __regmap_init_spi +EXPORT_SYMBOL_GPL vmlinux 0x7ad1ded1 pinctrl_register_mappings +EXPORT_SYMBOL_GPL vmlinux 0x7ae6c4fe devm_hwrng_unregister +EXPORT_SYMBOL_GPL vmlinux 0x7af97a3f pm_clk_suspend +EXPORT_SYMBOL_GPL vmlinux 0x7afcb7db __kprobe_event_add_fields +EXPORT_SYMBOL_GPL vmlinux 0x7afced43 cpufreq_generic_attr +EXPORT_SYMBOL_GPL vmlinux 0x7b178afe unlock_system_sleep +EXPORT_SYMBOL_GPL vmlinux 0x7b2e168a badblocks_init +EXPORT_SYMBOL_GPL vmlinux 0x7b32784e crypto_mod_get +EXPORT_SYMBOL_GPL vmlinux 0x7b33cb09 pci_find_ext_capability +EXPORT_SYMBOL_GPL vmlinux 0x7b46592c usb_for_each_dev +EXPORT_SYMBOL_GPL vmlinux 0x7b4b627f cpufreq_disable_fast_switch +EXPORT_SYMBOL_GPL vmlinux 0x7b4c9ba9 sbitmap_queue_min_shallow_depth +EXPORT_SYMBOL_GPL vmlinux 0x7b4ef438 unregister_kprobes +EXPORT_SYMBOL_GPL vmlinux 0x7b5452b8 acpi_unregister_gsi +EXPORT_SYMBOL_GPL vmlinux 0x7b570c78 __iptunnel_pull_header +EXPORT_SYMBOL_GPL vmlinux 0x7b5a376a power_supply_unregister +EXPORT_SYMBOL_GPL vmlinux 0x7b5a4926 sha1_zero_message_hash +EXPORT_SYMBOL_GPL vmlinux 0x7b6ba5b6 transport_class_register +EXPORT_SYMBOL_GPL vmlinux 0x7b6f9536 acpi_register_wakeup_handler +EXPORT_SYMBOL_GPL vmlinux 0x7b70ea9e fsverity_prepare_setattr +EXPORT_SYMBOL_GPL vmlinux 0x7b8217b6 usb_get_dev +EXPORT_SYMBOL_GPL vmlinux 0x7b856860 cpuidle_unregister_device +EXPORT_SYMBOL_GPL vmlinux 0x7b8dc3a8 balloon_page_list_dequeue +EXPORT_SYMBOL_GPL vmlinux 0x7b8efd34 devlink_port_register +EXPORT_SYMBOL_GPL vmlinux 0x7b9793a2 get_cpu_idle_time_us +EXPORT_SYMBOL_GPL vmlinux 0x7ba06dff sysfs_create_group +EXPORT_SYMBOL_GPL vmlinux 0x7bbd4145 iommu_register_device_fault_handler +EXPORT_SYMBOL_GPL vmlinux 0x7bc16241 regulator_bulk_disable +EXPORT_SYMBOL_GPL vmlinux 0x7bc18560 tty_port_register_device +EXPORT_SYMBOL_GPL vmlinux 0x7bc908f4 spi_mem_get_name +EXPORT_SYMBOL_GPL vmlinux 0x7bcfd6c1 register_kprobes +EXPORT_SYMBOL_GPL vmlinux 0x7be642b7 ata_port_wait_eh +EXPORT_SYMBOL_GPL vmlinux 0x7be87715 regulator_get_optional +EXPORT_SYMBOL_GPL vmlinux 0x7bfbf63b blk_req_zone_write_trylock +EXPORT_SYMBOL_GPL vmlinux 0x7c06a018 edac_device_free_ctl_info +EXPORT_SYMBOL_GPL vmlinux 0x7c077dcf ata_pci_sff_init_host +EXPORT_SYMBOL_GPL vmlinux 0x7c102609 rio_pw_enable +EXPORT_SYMBOL_GPL vmlinux 0x7c20b6a0 load_direct_gdt +EXPORT_SYMBOL_GPL vmlinux 0x7c2da1d1 crypto_aead_setauthsize +EXPORT_SYMBOL_GPL vmlinux 0x7c3ecc0f raw_hash_sk +EXPORT_SYMBOL_GPL vmlinux 0x7c57421b x509_cert_parse +EXPORT_SYMBOL_GPL vmlinux 0x7c5f3711 ioasid_unregister_allocator +EXPORT_SYMBOL_GPL vmlinux 0x7c626556 list_lru_destroy +EXPORT_SYMBOL_GPL vmlinux 0x7c681aba efivar_work +EXPORT_SYMBOL_GPL vmlinux 0x7c7f5094 pci_speed_string +EXPORT_SYMBOL_GPL vmlinux 0x7c9141b8 perf_event_release_kernel +EXPORT_SYMBOL_GPL vmlinux 0x7c983a5d dmi_walk +EXPORT_SYMBOL_GPL vmlinux 0x7c9a7371 clk_prepare +EXPORT_SYMBOL_GPL vmlinux 0x7ca727d7 crypto_grab_ahash +EXPORT_SYMBOL_GPL vmlinux 0x7cb803de btree_grim_visitor +EXPORT_SYMBOL_GPL vmlinux 0x7cca455b rio_mport_get_efb +EXPORT_SYMBOL_GPL vmlinux 0x7cd6f042 cpufreq_get_current_driver +EXPORT_SYMBOL_GPL vmlinux 0x7cddbfe7 cs47l24_irq +EXPORT_SYMBOL_GPL vmlinux 0x7ceaf0d5 generic_handle_irq +EXPORT_SYMBOL_GPL vmlinux 0x7cf2d084 cpufreq_freq_transition_begin +EXPORT_SYMBOL_GPL vmlinux 0x7d00c65b nd_synchronize +EXPORT_SYMBOL_GPL vmlinux 0x7d0e1d95 hv_setup_crash_handler +EXPORT_SYMBOL_GPL vmlinux 0x7d12e5fe sata_set_spd +EXPORT_SYMBOL_GPL vmlinux 0x7d14d2b5 __rtnl_link_unregister +EXPORT_SYMBOL_GPL vmlinux 0x7d197d6d devm_release_action +EXPORT_SYMBOL_GPL vmlinux 0x7d1bb1d4 tnum_strn +EXPORT_SYMBOL_GPL vmlinux 0x7d2ca554 pci_epc_get_first_free_bar +EXPORT_SYMBOL_GPL vmlinux 0x7d57aeaf device_initialize +EXPORT_SYMBOL_GPL vmlinux 0x7d59dd46 pm_wq +EXPORT_SYMBOL_GPL vmlinux 0x7d747e9d nvme_complete_async_event +EXPORT_SYMBOL_GPL vmlinux 0x7d942a18 __clk_mux_determine_rate_closest +EXPORT_SYMBOL_GPL vmlinux 0x7da34bb7 elv_register +EXPORT_SYMBOL_GPL vmlinux 0x7db191db pci_check_and_mask_intx +EXPORT_SYMBOL_GPL vmlinux 0x7dbc5d2a devres_remove_group +EXPORT_SYMBOL_GPL vmlinux 0x7dcf533d iommu_unregister_device_fault_handler +EXPORT_SYMBOL_GPL vmlinux 0x7dd1bea4 rio_mport_read_config_32 +EXPORT_SYMBOL_GPL vmlinux 0x7dda30af unregister_tracepoint_module_notifier +EXPORT_SYMBOL_GPL vmlinux 0x7ddb2718 __tracepoint_block_rq_remap +EXPORT_SYMBOL_GPL vmlinux 0x7de5dd73 fwnode_graph_get_remote_node +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 0x7e30a521 ip_tunnel_init_net +EXPORT_SYMBOL_GPL vmlinux 0x7e390001 intel_msic_bulk_read +EXPORT_SYMBOL_GPL vmlinux 0x7e39b0d2 virtqueue_get_desc_addr +EXPORT_SYMBOL_GPL vmlinux 0x7e5db80b pstore_name_to_type +EXPORT_SYMBOL_GPL vmlinux 0x7e64181d usb_calc_bus_time +EXPORT_SYMBOL_GPL vmlinux 0x7e65919f gpiochip_reqres_irq +EXPORT_SYMBOL_GPL vmlinux 0x7e73671e strp_stop +EXPORT_SYMBOL_GPL vmlinux 0x7e7e3f58 ring_buffer_reset_cpu +EXPORT_SYMBOL_GPL vmlinux 0x7e8d8619 usb_anchor_empty +EXPORT_SYMBOL_GPL vmlinux 0x7e9a572f events_sysfs_show +EXPORT_SYMBOL_GPL vmlinux 0x7e9e9266 ncsi_vlan_rx_kill_vid +EXPORT_SYMBOL_GPL vmlinux 0x7ea75c24 __wake_up_locked_key_bookmark +EXPORT_SYMBOL_GPL vmlinux 0x7ead450b device_connection_find +EXPORT_SYMBOL_GPL vmlinux 0x7eafba3e ata_host_detach +EXPORT_SYMBOL_GPL vmlinux 0x7eb808d0 add_cpu +EXPORT_SYMBOL_GPL vmlinux 0x7ec814de inet_hashinfo_init +EXPORT_SYMBOL_GPL vmlinux 0x7ecea8d8 spi_res_alloc +EXPORT_SYMBOL_GPL vmlinux 0x7ed02e02 bus_for_each_dev +EXPORT_SYMBOL_GPL vmlinux 0x7ee3eb7e skb_mpls_pop +EXPORT_SYMBOL_GPL vmlinux 0x7eea6b8b pcap_adc_async +EXPORT_SYMBOL_GPL vmlinux 0x7f0800af usb_init_urb +EXPORT_SYMBOL_GPL vmlinux 0x7f312567 md_bitmap_load +EXPORT_SYMBOL_GPL vmlinux 0x7f426878 bpf_map_put +EXPORT_SYMBOL_GPL vmlinux 0x7f7cbc64 ip_tunnel_need_metadata +EXPORT_SYMBOL_GPL vmlinux 0x7fa3add5 tty_port_install +EXPORT_SYMBOL_GPL vmlinux 0x7fa96509 erst_get_record_id_next +EXPORT_SYMBOL_GPL vmlinux 0x7fafdec9 clk_fixed_factor_ops +EXPORT_SYMBOL_GPL vmlinux 0x7fcfef14 wm831x_auxadc_read_uv +EXPORT_SYMBOL_GPL vmlinux 0x7fdeb62f udp_tunnel_push_rx_port +EXPORT_SYMBOL_GPL vmlinux 0x7fe5d261 pci_epc_set_msi +EXPORT_SYMBOL_GPL vmlinux 0x7fe82be4 regcache_sync +EXPORT_SYMBOL_GPL vmlinux 0x7fe91c34 tcp_set_keepalive +EXPORT_SYMBOL_GPL vmlinux 0x8014ebae gpiochip_relres_irq +EXPORT_SYMBOL_GPL vmlinux 0x8017019f dax_inode +EXPORT_SYMBOL_GPL vmlinux 0x801bc505 fscrypt_ioctl_add_key +EXPORT_SYMBOL_GPL vmlinux 0x804bc4f5 reset_controller_unregister +EXPORT_SYMBOL_GPL vmlinux 0x805667cf devlink_fmsg_u64_put +EXPORT_SYMBOL_GPL vmlinux 0x80689841 rio_mport_chk_dev_access +EXPORT_SYMBOL_GPL vmlinux 0x806fb3a6 vmbus_hvsock_device_unregister +EXPORT_SYMBOL_GPL vmlinux 0x807766ea usb_scuttle_anchored_urbs +EXPORT_SYMBOL_GPL vmlinux 0x807fdcc4 call_rcu_tasks_rude +EXPORT_SYMBOL_GPL vmlinux 0x808a8088 handle_guest_split_lock +EXPORT_SYMBOL_GPL vmlinux 0x808ec1a3 crypto_alg_tested +EXPORT_SYMBOL_GPL vmlinux 0x80af700e ping_recvmsg +EXPORT_SYMBOL_GPL vmlinux 0x80b109d4 __tracepoint_pelt_se_tp +EXPORT_SYMBOL_GPL vmlinux 0x80c68137 nf_log_buf_close +EXPORT_SYMBOL_GPL vmlinux 0x80d5e57a mpi_free +EXPORT_SYMBOL_GPL vmlinux 0x80e3a824 skcipher_walk_virt +EXPORT_SYMBOL_GPL vmlinux 0x80edceaf mnt_drop_write +EXPORT_SYMBOL_GPL vmlinux 0x80f4129f devm_gpiod_get_index +EXPORT_SYMBOL_GPL vmlinux 0x810a7abc acpi_unbind_one +EXPORT_SYMBOL_GPL vmlinux 0x810ad8d0 regulator_desc_list_voltage_linear_range +EXPORT_SYMBOL_GPL vmlinux 0x811dc334 usb_unregister_notify +EXPORT_SYMBOL_GPL vmlinux 0x81221cad amd_nb_num +EXPORT_SYMBOL_GPL vmlinux 0x81281cb0 blk_mq_quiesce_queue_nowait +EXPORT_SYMBOL_GPL vmlinux 0x812a2845 devm_acpi_dev_add_driver_gpios +EXPORT_SYMBOL_GPL vmlinux 0x8136448e crypto_cipher_setkey +EXPORT_SYMBOL_GPL vmlinux 0x81377d47 xdp_rxq_info_unreg +EXPORT_SYMBOL_GPL vmlinux 0x813b715c PageHuge +EXPORT_SYMBOL_GPL vmlinux 0x813cf212 nvme_io_timeout +EXPORT_SYMBOL_GPL vmlinux 0x814e2386 kcpustat_field +EXPORT_SYMBOL_GPL vmlinux 0x815588a6 clk_enable +EXPORT_SYMBOL_GPL vmlinux 0x815e99ce br_ip6_fragment +EXPORT_SYMBOL_GPL vmlinux 0x815f5920 usb_get_descriptor +EXPORT_SYMBOL_GPL vmlinux 0x815fda83 sed_ioctl +EXPORT_SYMBOL_GPL vmlinux 0x816a41ca cpufreq_update_limits +EXPORT_SYMBOL_GPL vmlinux 0x81832bdb x86_vector_domain +EXPORT_SYMBOL_GPL vmlinux 0x81930398 phy_pm_runtime_allow +EXPORT_SYMBOL_GPL vmlinux 0x819d72cb klist_iter_exit +EXPORT_SYMBOL_GPL vmlinux 0x81b03377 efivar_entry_set_safe +EXPORT_SYMBOL_GPL vmlinux 0x81d10485 ioasid_free +EXPORT_SYMBOL_GPL vmlinux 0x81d4f0a7 put_device +EXPORT_SYMBOL_GPL vmlinux 0x81d7c5b7 percpu_ref_kill_and_confirm +EXPORT_SYMBOL_GPL vmlinux 0x81e97389 bdi_dev_name +EXPORT_SYMBOL_GPL vmlinux 0x82061af1 sock_diag_register +EXPORT_SYMBOL_GPL vmlinux 0x82092899 badrange_forget +EXPORT_SYMBOL_GPL vmlinux 0x82158448 ata_sff_qc_issue +EXPORT_SYMBOL_GPL vmlinux 0x821ec7f1 clk_mux_ro_ops +EXPORT_SYMBOL_GPL vmlinux 0x82226c53 pinctrl_unregister_mappings +EXPORT_SYMBOL_GPL vmlinux 0x82235d5b ip_tunnel_setup +EXPORT_SYMBOL_GPL vmlinux 0x823744ef mbox_request_channel +EXPORT_SYMBOL_GPL vmlinux 0x823eae06 blocking_notifier_call_chain +EXPORT_SYMBOL_GPL vmlinux 0x826a2e38 skcipher_walk_atomise +EXPORT_SYMBOL_GPL vmlinux 0x8277c866 clockevents_unbind_device +EXPORT_SYMBOL_GPL vmlinux 0x827e61f8 acpi_has_watchdog +EXPORT_SYMBOL_GPL vmlinux 0x828623ef ata_pci_bmdma_prepare_host +EXPORT_SYMBOL_GPL vmlinux 0x82bf4536 pci_msi_create_irq_domain +EXPORT_SYMBOL_GPL vmlinux 0x82d7442c mbox_chan_received_data +EXPORT_SYMBOL_GPL vmlinux 0x82d79b51 sysctl_vfs_cache_pressure +EXPORT_SYMBOL_GPL vmlinux 0x82ff4b95 clk_hw_unregister_fixed_factor +EXPORT_SYMBOL_GPL vmlinux 0x83132fd7 acpi_subsys_poweroff +EXPORT_SYMBOL_GPL vmlinux 0x8318cef0 kobject_create_and_add +EXPORT_SYMBOL_GPL vmlinux 0x831df647 fb_deferred_io_cleanup +EXPORT_SYMBOL_GPL vmlinux 0x831eb76c fb_bl_default_curve +EXPORT_SYMBOL_GPL vmlinux 0x8339df73 klist_add_behind +EXPORT_SYMBOL_GPL vmlinux 0x8348e4f0 __tracepoint_wbc_writepage +EXPORT_SYMBOL_GPL vmlinux 0x8349a895 nvmem_device_put +EXPORT_SYMBOL_GPL vmlinux 0x8353dfff acpi_os_get_iomem +EXPORT_SYMBOL_GPL vmlinux 0x835ff765 sata_std_hardreset +EXPORT_SYMBOL_GPL vmlinux 0x8360cba2 cpci_hp_register_controller +EXPORT_SYMBOL_GPL vmlinux 0x8366c41a attribute_container_register +EXPORT_SYMBOL_GPL vmlinux 0x83689b22 pinctrl_utils_free_map +EXPORT_SYMBOL_GPL vmlinux 0x83720357 tty_release_struct +EXPORT_SYMBOL_GPL vmlinux 0x83bf0dca cpci_hp_register_bus +EXPORT_SYMBOL_GPL vmlinux 0x83f21f00 unregister_trace_event +EXPORT_SYMBOL_GPL vmlinux 0x83ffb09e spi_unregister_controller +EXPORT_SYMBOL_GPL vmlinux 0x84089aed led_trigger_set +EXPORT_SYMBOL_GPL vmlinux 0x840b32a2 devm_clk_hw_register +EXPORT_SYMBOL_GPL vmlinux 0x84106f36 devlink_trap_ctx_priv +EXPORT_SYMBOL_GPL vmlinux 0x841204ad cpufreq_driver_resolve_freq +EXPORT_SYMBOL_GPL vmlinux 0x84264ced fs_umode_to_ftype +EXPORT_SYMBOL_GPL vmlinux 0x8429a00f acpi_subsys_freeze +EXPORT_SYMBOL_GPL vmlinux 0x842b626e pm_generic_freeze +EXPORT_SYMBOL_GPL vmlinux 0x842f046d usb_poison_anchored_urbs +EXPORT_SYMBOL_GPL vmlinux 0x842f3fd0 bpfilter_ops +EXPORT_SYMBOL_GPL vmlinux 0x843d70ef acpi_is_root_bridge +EXPORT_SYMBOL_GPL vmlinux 0x843dedf0 ata_dev_pair +EXPORT_SYMBOL_GPL vmlinux 0x8441635d dev_pm_opp_register_set_opp_helper +EXPORT_SYMBOL_GPL vmlinux 0x84502a47 blk_status_to_errno +EXPORT_SYMBOL_GPL vmlinux 0x845dbf3b scatterwalk_map_and_copy +EXPORT_SYMBOL_GPL vmlinux 0x845e8923 set_task_ioprio +EXPORT_SYMBOL_GPL vmlinux 0x8462cb62 atapi_cmd_type +EXPORT_SYMBOL_GPL vmlinux 0x8474b915 debugfs_create_ulong +EXPORT_SYMBOL_GPL vmlinux 0x848815bc ata_pci_device_resume +EXPORT_SYMBOL_GPL vmlinux 0x848e2ecb device_connection_find_match +EXPORT_SYMBOL_GPL vmlinux 0x849c2b20 usb_get_current_frame_number +EXPORT_SYMBOL_GPL vmlinux 0x84a07d42 relay_reset +EXPORT_SYMBOL_GPL vmlinux 0x84c651bb mnt_want_write_file +EXPORT_SYMBOL_GPL vmlinux 0x84c753f2 devm_acpi_dma_controller_register +EXPORT_SYMBOL_GPL vmlinux 0x84cc0b38 phy_set_mode_ext +EXPORT_SYMBOL_GPL vmlinux 0x84df3506 class_interface_register +EXPORT_SYMBOL_GPL vmlinux 0x84e84e94 edac_mc_add_mc_with_groups +EXPORT_SYMBOL_GPL vmlinux 0x84ef27f5 synth_event_add_fields +EXPORT_SYMBOL_GPL vmlinux 0x84f1392a pm_generic_thaw_noirq +EXPORT_SYMBOL_GPL vmlinux 0x84faf37a memunmap_pages +EXPORT_SYMBOL_GPL vmlinux 0x84ff221a irq_create_strict_mappings +EXPORT_SYMBOL_GPL vmlinux 0x8506baa8 clk_unregister_gate +EXPORT_SYMBOL_GPL vmlinux 0x850bb6db devlink_health_reporter_destroy +EXPORT_SYMBOL_GPL vmlinux 0x851e6003 usb_phy_roothub_calibrate +EXPORT_SYMBOL_GPL vmlinux 0x851e7a6b irq_domain_associate +EXPORT_SYMBOL_GPL vmlinux 0x85514d23 devm_reset_controller_register +EXPORT_SYMBOL_GPL vmlinux 0x85540ebc nvmem_cell_put +EXPORT_SYMBOL_GPL vmlinux 0x856afb4e key_type_asymmetric +EXPORT_SYMBOL_GPL vmlinux 0x857c5973 usb_get_dr_mode +EXPORT_SYMBOL_GPL vmlinux 0x85862277 ioasid_find +EXPORT_SYMBOL_GPL vmlinux 0x85876f48 list_lru_walk_one +EXPORT_SYMBOL_GPL vmlinux 0x858e488e pm_genpd_syscore_poweron +EXPORT_SYMBOL_GPL vmlinux 0x8592d892 amd_register_ecc_decoder +EXPORT_SYMBOL_GPL vmlinux 0x85935a61 acpi_dev_irq_flags +EXPORT_SYMBOL_GPL vmlinux 0x85a49dc7 pci_vpd_find_info_keyword +EXPORT_SYMBOL_GPL vmlinux 0x85a6a4e2 usb_disable_xhci_ports +EXPORT_SYMBOL_GPL vmlinux 0x85b1c626 __tracepoint_rpm_suspend +EXPORT_SYMBOL_GPL vmlinux 0x85b38978 percpu_ref_reinit +EXPORT_SYMBOL_GPL vmlinux 0x85b9059b tun_get_tx_ring +EXPORT_SYMBOL_GPL vmlinux 0x85b98ebc tty_prepare_flip_string +EXPORT_SYMBOL_GPL vmlinux 0x85c54b61 efivar_validate +EXPORT_SYMBOL_GPL vmlinux 0x85d7edfd hpet_set_periodic_freq +EXPORT_SYMBOL_GPL vmlinux 0x85e5d047 cpuidle_register_device +EXPORT_SYMBOL_GPL vmlinux 0x860d652d pci_generic_config_write32 +EXPORT_SYMBOL_GPL vmlinux 0x860e7da6 klp_get_state +EXPORT_SYMBOL_GPL vmlinux 0x8611f842 blk_insert_cloned_request +EXPORT_SYMBOL_GPL vmlinux 0x86123cf4 blkdev_zone_mgmt +EXPORT_SYMBOL_GPL vmlinux 0x86169f3e amd_smn_write +EXPORT_SYMBOL_GPL vmlinux 0x862258db timecounter_init +EXPORT_SYMBOL_GPL vmlinux 0x86248ec5 __audit_log_nfcfg +EXPORT_SYMBOL_GPL vmlinux 0x862bb17b linear_range_values_in_range_array +EXPORT_SYMBOL_GPL vmlinux 0x86356a3b serial8250_handle_irq +EXPORT_SYMBOL_GPL vmlinux 0x86492143 platform_device_unregister +EXPORT_SYMBOL_GPL vmlinux 0x864f4b26 alloc_skb_for_msg +EXPORT_SYMBOL_GPL vmlinux 0x86537665 rtc_update_irq +EXPORT_SYMBOL_GPL vmlinux 0x8654be58 hv_remove_vmbus_irq +EXPORT_SYMBOL_GPL vmlinux 0x86585a33 devlink_fmsg_obj_nest_start +EXPORT_SYMBOL_GPL vmlinux 0x86596952 phy_check_downshift +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 0x868784cb __symbol_get +EXPORT_SYMBOL_GPL vmlinux 0x8692fb2e pm_runtime_force_suspend +EXPORT_SYMBOL_GPL vmlinux 0x86a666f3 kernfs_get +EXPORT_SYMBOL_GPL vmlinux 0x86b13d2a usb_unpoison_anchored_urbs +EXPORT_SYMBOL_GPL vmlinux 0x86b23d64 dev_pm_opp_find_freq_exact +EXPORT_SYMBOL_GPL vmlinux 0x86b427ce clkdev_create +EXPORT_SYMBOL_GPL vmlinux 0x86b81e7d ip_tunnel_xmit +EXPORT_SYMBOL_GPL vmlinux 0x86bb8634 find_extend_vma +EXPORT_SYMBOL_GPL vmlinux 0x86c43a8c cper_estatus_check +EXPORT_SYMBOL_GPL vmlinux 0x86c961b3 __set_dax_synchronous +EXPORT_SYMBOL_GPL vmlinux 0x86cad841 ata_pio_need_iordy +EXPORT_SYMBOL_GPL vmlinux 0x86dcfac9 gpio_to_desc +EXPORT_SYMBOL_GPL vmlinux 0x86e89a13 __srcu_read_unlock +EXPORT_SYMBOL_GPL vmlinux 0x86f616a9 regulator_set_current_limit +EXPORT_SYMBOL_GPL vmlinux 0x86f6b99d synchronize_rcu_expedited +EXPORT_SYMBOL_GPL vmlinux 0x86f85114 net_dec_egress_queue +EXPORT_SYMBOL_GPL vmlinux 0x86fc5b14 devlink_traps_unregister +EXPORT_SYMBOL_GPL vmlinux 0x8707ff3e netdev_walk_all_upper_dev_rcu +EXPORT_SYMBOL_GPL vmlinux 0x8718a511 dev_pm_opp_set_prop_name +EXPORT_SYMBOL_GPL vmlinux 0x8720578d pm_generic_resume_noirq +EXPORT_SYMBOL_GPL vmlinux 0x87228032 regulator_disable_regmap +EXPORT_SYMBOL_GPL vmlinux 0x8725cf8e uhci_check_and_reset_hc +EXPORT_SYMBOL_GPL vmlinux 0x8735ed3d irq_set_affinity_notifier +EXPORT_SYMBOL_GPL vmlinux 0x87377ace ata_msleep +EXPORT_SYMBOL_GPL vmlinux 0x873a328b ping_common_sendmsg +EXPORT_SYMBOL_GPL vmlinux 0x875582b7 nvmem_del_cell_table +EXPORT_SYMBOL_GPL vmlinux 0x876ca422 transport_configure_device +EXPORT_SYMBOL_GPL vmlinux 0x8773e87c __clk_hw_register_gate +EXPORT_SYMBOL_GPL vmlinux 0x879191a1 regmap_get_max_register +EXPORT_SYMBOL_GPL vmlinux 0x879cb93e device_property_read_u8_array +EXPORT_SYMBOL_GPL vmlinux 0x87a2f931 rio_bus_type +EXPORT_SYMBOL_GPL vmlinux 0x87d8fbcf crypto_stats_ahash_update +EXPORT_SYMBOL_GPL vmlinux 0x87e58609 srcu_notifier_chain_register +EXPORT_SYMBOL_GPL vmlinux 0x87e64181 amd_nb_has_feature +EXPORT_SYMBOL_GPL vmlinux 0x87ea1e8b rdev_get_drvdata +EXPORT_SYMBOL_GPL vmlinux 0x87eea81b usb_unlocked_disable_lpm +EXPORT_SYMBOL_GPL vmlinux 0x88066be2 __tracepoint_rpm_return_int +EXPORT_SYMBOL_GPL vmlinux 0x880a7456 __clocksource_register_scale +EXPORT_SYMBOL_GPL vmlinux 0x884f4c38 efivars_kobject +EXPORT_SYMBOL_GPL vmlinux 0x884f6284 blk_trace_startstop +EXPORT_SYMBOL_GPL vmlinux 0x8851d7fc irq_domain_free_fwnode +EXPORT_SYMBOL_GPL vmlinux 0x885528a6 ring_buffer_discard_commit +EXPORT_SYMBOL_GPL vmlinux 0x8856ceec clk_hw_get_rate +EXPORT_SYMBOL_GPL vmlinux 0x88577ae7 crypto_ahash_final +EXPORT_SYMBOL_GPL vmlinux 0x888c5be5 irq_bypass_register_consumer +EXPORT_SYMBOL_GPL vmlinux 0x8890dab8 encrypt_blob +EXPORT_SYMBOL_GPL vmlinux 0x889a6509 cgroup_attach_task_all +EXPORT_SYMBOL_GPL vmlinux 0x88ab6fe3 kgdb_active +EXPORT_SYMBOL_GPL vmlinux 0x88b4ae92 ring_buffer_normalize_time_stamp +EXPORT_SYMBOL_GPL vmlinux 0x88c46453 nvme_submit_sync_cmd +EXPORT_SYMBOL_GPL vmlinux 0x88d856c6 clk_hw_get_parent_index +EXPORT_SYMBOL_GPL vmlinux 0x88dbd5fc bpf_offload_dev_create +EXPORT_SYMBOL_GPL vmlinux 0x88dcd0f3 devm_platform_ioremap_resource +EXPORT_SYMBOL_GPL vmlinux 0x88e63814 irq_find_mapping +EXPORT_SYMBOL_GPL vmlinux 0x88f122c4 dev_pm_put_subsys_data +EXPORT_SYMBOL_GPL vmlinux 0x88f58bdf security_kernel_load_data +EXPORT_SYMBOL_GPL vmlinux 0x88faa174 tps65912_device_init +EXPORT_SYMBOL_GPL vmlinux 0x88fc743c rtc_update_irq_enable +EXPORT_SYMBOL_GPL vmlinux 0x89052a58 ata_acpi_cbl_80wire +EXPORT_SYMBOL_GPL vmlinux 0x890f4f97 __kprobe_event_gen_cmd_start +EXPORT_SYMBOL_GPL vmlinux 0x890fa0fa btree_get_prev +EXPORT_SYMBOL_GPL vmlinux 0x891b007b ata_host_resume +EXPORT_SYMBOL_GPL vmlinux 0x891fe39b kill_dev_dax +EXPORT_SYMBOL_GPL vmlinux 0x8924eb1e rcu_force_quiescent_state +EXPORT_SYMBOL_GPL vmlinux 0x892511d8 do_tcp_sendpages +EXPORT_SYMBOL_GPL vmlinux 0x892f3dad pci_user_read_config_word +EXPORT_SYMBOL_GPL vmlinux 0x89359dbf firmware_kobj +EXPORT_SYMBOL_GPL vmlinux 0x893abbdd devlink_fmsg_u32_pair_put +EXPORT_SYMBOL_GPL vmlinux 0x8947d18b security_kernel_read_file +EXPORT_SYMBOL_GPL vmlinux 0x89485687 iommu_group_put +EXPORT_SYMBOL_GPL vmlinux 0x894c5d9f trace_define_field +EXPORT_SYMBOL_GPL vmlinux 0x8960cf5a crypto_ahash_finup +EXPORT_SYMBOL_GPL vmlinux 0x89696218 reserve_iova +EXPORT_SYMBOL_GPL vmlinux 0x896e2087 devm_gpiod_get_index_optional +EXPORT_SYMBOL_GPL vmlinux 0x897dbcb5 srcu_init_notifier_head +EXPORT_SYMBOL_GPL vmlinux 0x899b1a20 xfrm_local_error +EXPORT_SYMBOL_GPL vmlinux 0x89ae7aa0 rsa_parse_pub_key +EXPORT_SYMBOL_GPL vmlinux 0x89bb63d7 mmu_notifier_get_locked +EXPORT_SYMBOL_GPL vmlinux 0x89bbafc6 usb_register_notify +EXPORT_SYMBOL_GPL vmlinux 0x89c45123 serial8250_init_port +EXPORT_SYMBOL_GPL vmlinux 0x89d0359a __fl6_sock_lookup +EXPORT_SYMBOL_GPL vmlinux 0x89e06700 inode_dax +EXPORT_SYMBOL_GPL vmlinux 0x89e340cf acpi_bus_get_ejd +EXPORT_SYMBOL_GPL vmlinux 0x89e3834f vmbus_are_subchannels_present +EXPORT_SYMBOL_GPL vmlinux 0x89f91193 wm831x_bulk_read +EXPORT_SYMBOL_GPL vmlinux 0x89fe539e tty_find_polling_driver +EXPORT_SYMBOL_GPL vmlinux 0x8a016a43 simple_attr_read +EXPORT_SYMBOL_GPL vmlinux 0x8a06ec57 ata_eh_freeze_port +EXPORT_SYMBOL_GPL vmlinux 0x8a0f67c0 do_take_over_console +EXPORT_SYMBOL_GPL vmlinux 0x8a168b6e regulator_unregister +EXPORT_SYMBOL_GPL vmlinux 0x8a240bff __xas_next +EXPORT_SYMBOL_GPL vmlinux 0x8a350861 fat_dir_empty +EXPORT_SYMBOL_GPL vmlinux 0x8a3f84ba linear_range_get_selector_low +EXPORT_SYMBOL_GPL vmlinux 0x8a45a555 acpi_unregister_wakeup_handler +EXPORT_SYMBOL_GPL vmlinux 0x8a4703b1 input_ff_flush +EXPORT_SYMBOL_GPL vmlinux 0x8a4ca7be hyperv_flush_guest_mapping_range +EXPORT_SYMBOL_GPL vmlinux 0x8a5461e8 fsverity_verify_page +EXPORT_SYMBOL_GPL vmlinux 0x8a62b81b sfp_upstream_stop +EXPORT_SYMBOL_GPL vmlinux 0x8a66a696 espintcp_queue_out +EXPORT_SYMBOL_GPL vmlinux 0x8a7af52c __vmbus_driver_register +EXPORT_SYMBOL_GPL vmlinux 0x8a7cb9c4 platform_thermal_package_rate_control +EXPORT_SYMBOL_GPL vmlinux 0x8a838ef6 intel_scu_ipc_dev_put +EXPORT_SYMBOL_GPL vmlinux 0x8a8af93e dma_buf_end_cpu_access +EXPORT_SYMBOL_GPL vmlinux 0x8a9310bd rt_mutex_destroy +EXPORT_SYMBOL_GPL vmlinux 0x8a9c70ed nvme_sec_submit +EXPORT_SYMBOL_GPL vmlinux 0x8a9fefa3 of_phy_get +EXPORT_SYMBOL_GPL vmlinux 0x8abacc47 get_max_files +EXPORT_SYMBOL_GPL vmlinux 0x8ac5cf74 __lock_page_killable +EXPORT_SYMBOL_GPL vmlinux 0x8acadb38 led_get_default_pattern +EXPORT_SYMBOL_GPL vmlinux 0x8ad2b7b4 gpiod_set_raw_value +EXPORT_SYMBOL_GPL vmlinux 0x8aef3bfa cpufreq_freq_transition_end +EXPORT_SYMBOL_GPL vmlinux 0x8b0502c5 cgroup_get_from_path +EXPORT_SYMBOL_GPL vmlinux 0x8b0fc7e0 devm_gpiod_put +EXPORT_SYMBOL_GPL vmlinux 0x8b149c36 clk_is_match +EXPORT_SYMBOL_GPL vmlinux 0x8b18fb7c dummy_con +EXPORT_SYMBOL_GPL vmlinux 0x8b1cdf20 cpu_subsys +EXPORT_SYMBOL_GPL vmlinux 0x8b3906d6 blk_lld_busy +EXPORT_SYMBOL_GPL vmlinux 0x8b3c8ed1 dev_pm_qos_add_request +EXPORT_SYMBOL_GPL vmlinux 0x8b3dda26 usb_set_configuration +EXPORT_SYMBOL_GPL vmlinux 0x8b4230ac inet_csk_addr2sockaddr +EXPORT_SYMBOL_GPL vmlinux 0x8b4330fd gpiod_get +EXPORT_SYMBOL_GPL vmlinux 0x8b453835 rio_request_inb_pwrite +EXPORT_SYMBOL_GPL vmlinux 0x8b6e23bd tcp_bpf_sendmsg_redir +EXPORT_SYMBOL_GPL vmlinux 0x8b78b05a devm_regmap_del_irq_chip +EXPORT_SYMBOL_GPL vmlinux 0x8b7b4d8e hv_stimer_alloc +EXPORT_SYMBOL_GPL vmlinux 0x8b7c8ade tcp_rate_check_app_limited +EXPORT_SYMBOL_GPL vmlinux 0x8b9200fd lookup_address +EXPORT_SYMBOL_GPL vmlinux 0x8ba17178 setfl +EXPORT_SYMBOL_GPL vmlinux 0x8bb9013f edac_pci_handle_npe +EXPORT_SYMBOL_GPL vmlinux 0x8bc2fd42 pinctrl_get +EXPORT_SYMBOL_GPL vmlinux 0x8bc57a7f devm_of_icc_get +EXPORT_SYMBOL_GPL vmlinux 0x8bdc86c5 root_device_unregister +EXPORT_SYMBOL_GPL vmlinux 0x8c011634 __irq_domain_add +EXPORT_SYMBOL_GPL vmlinux 0x8c0215f2 pm_system_wakeup +EXPORT_SYMBOL_GPL vmlinux 0x8c03d20c destroy_workqueue +EXPORT_SYMBOL_GPL vmlinux 0x8c1a1e4d regmap_async_complete_cb +EXPORT_SYMBOL_GPL vmlinux 0x8c304168 regulator_register +EXPORT_SYMBOL_GPL vmlinux 0x8c341c48 current_save_fsgs +EXPORT_SYMBOL_GPL vmlinux 0x8c479745 __cpuhp_state_remove_instance +EXPORT_SYMBOL_GPL vmlinux 0x8c4b3533 posix_clock_unregister +EXPORT_SYMBOL_GPL vmlinux 0x8c50d437 dw_pcie_read_dbi +EXPORT_SYMBOL_GPL vmlinux 0x8c743fb6 reset_control_status +EXPORT_SYMBOL_GPL vmlinux 0x8c89a95d dev_pm_opp_remove_all_dynamic +EXPORT_SYMBOL_GPL vmlinux 0x8c89e3b8 usb_phy_roothub_power_off +EXPORT_SYMBOL_GPL vmlinux 0x8c9d1661 arch_phys_wc_index +EXPORT_SYMBOL_GPL vmlinux 0x8cb0149c security_path_rmdir +EXPORT_SYMBOL_GPL vmlinux 0x8cbd6bd2 ftrace_set_notrace +EXPORT_SYMBOL_GPL vmlinux 0x8cf15f9a bpf_trace_run10 +EXPORT_SYMBOL_GPL vmlinux 0x8d184e19 linear_hugepage_index +EXPORT_SYMBOL_GPL vmlinux 0x8d22bb58 iommu_group_alloc +EXPORT_SYMBOL_GPL vmlinux 0x8d241feb hwmon_device_register +EXPORT_SYMBOL_GPL vmlinux 0x8d3330b6 cpuacct_cgrp_subsys_enabled_key +EXPORT_SYMBOL_GPL vmlinux 0x8d55dead vfs_kern_mount +EXPORT_SYMBOL_GPL vmlinux 0x8d5a2ca2 udp_tunnel_notify_del_rx_port +EXPORT_SYMBOL_GPL vmlinux 0x8d5fd735 phy_gbit_features +EXPORT_SYMBOL_GPL vmlinux 0x8d6f4514 regulator_set_load +EXPORT_SYMBOL_GPL vmlinux 0x8d7192e9 edac_device_del_device +EXPORT_SYMBOL_GPL vmlinux 0x8d75f33b devm_intel_scu_ipc_dev_get +EXPORT_SYMBOL_GPL vmlinux 0x8d7e3373 hwpoison_filter_dev_major +EXPORT_SYMBOL_GPL vmlinux 0x8d993d0f rio_release_outb_dbell +EXPORT_SYMBOL_GPL vmlinux 0x8dc4f350 l3mdev_fib_table_by_index +EXPORT_SYMBOL_GPL vmlinux 0x8dd57d1e __fsnotify_inode_delete +EXPORT_SYMBOL_GPL vmlinux 0x8decb2b5 fwnode_find_reference +EXPORT_SYMBOL_GPL vmlinux 0x8e105c6d sata_scr_write +EXPORT_SYMBOL_GPL vmlinux 0x8e12ea64 pci_disable_ats +EXPORT_SYMBOL_GPL vmlinux 0x8e1621cf fscrypt_match_name +EXPORT_SYMBOL_GPL vmlinux 0x8e1dc7a5 rio_unregister_mport +EXPORT_SYMBOL_GPL vmlinux 0x8e23d58f offline_and_remove_memory +EXPORT_SYMBOL_GPL vmlinux 0x8e4eb451 bpf_sk_storage_diag_free +EXPORT_SYMBOL_GPL vmlinux 0x8e545c7c bd_link_disk_holder +EXPORT_SYMBOL_GPL vmlinux 0x8e6fa8b5 apei_exec_pre_map_gars +EXPORT_SYMBOL_GPL vmlinux 0x8e8b7774 blkg_conf_finish +EXPORT_SYMBOL_GPL vmlinux 0x8e926fba phy_validate +EXPORT_SYMBOL_GPL vmlinux 0x8e92f7c4 static_key_slow_inc +EXPORT_SYMBOL_GPL vmlinux 0x8e9bd4a3 hv_alloc_hyperv_page +EXPORT_SYMBOL_GPL vmlinux 0x8eae8dfd usb_find_common_endpoints +EXPORT_SYMBOL_GPL vmlinux 0x8ecbc020 irq_domain_set_hwirq_and_chip +EXPORT_SYMBOL_GPL vmlinux 0x8ede9ca8 dm_get_table_device +EXPORT_SYMBOL_GPL vmlinux 0x8edee13c usb_enable_ltm +EXPORT_SYMBOL_GPL vmlinux 0x8ee53e31 register_kprobe +EXPORT_SYMBOL_GPL vmlinux 0x8eee3399 dax_read_unlock +EXPORT_SYMBOL_GPL vmlinux 0x8ef17a9e regcache_drop_region +EXPORT_SYMBOL_GPL vmlinux 0x8efc1c14 xhci_init_driver +EXPORT_SYMBOL_GPL vmlinux 0x8f0748af rcu_expedite_gp +EXPORT_SYMBOL_GPL vmlinux 0x8f193bcd init_srcu_struct +EXPORT_SYMBOL_GPL vmlinux 0x8f2eb429 kvm_arch_para_hints +EXPORT_SYMBOL_GPL vmlinux 0x8f3f8829 platform_bus +EXPORT_SYMBOL_GPL vmlinux 0x8f6cee77 __round_jiffies_relative +EXPORT_SYMBOL_GPL vmlinux 0x8f742006 udp_tun_rx_dst +EXPORT_SYMBOL_GPL vmlinux 0x8f786bee fs_umode_to_dtype +EXPORT_SYMBOL_GPL vmlinux 0x8f7bd0a6 btree_init_mempool +EXPORT_SYMBOL_GPL vmlinux 0x8f801d8d rhashtable_destroy +EXPORT_SYMBOL_GPL vmlinux 0x8f85349f blkcg_deactivate_policy +EXPORT_SYMBOL_GPL vmlinux 0x8f9635f2 sock_prot_inuse_add +EXPORT_SYMBOL_GPL vmlinux 0x8fa5a01a cpuidle_unregister_driver +EXPORT_SYMBOL_GPL vmlinux 0x8fa7d686 class_find_device +EXPORT_SYMBOL_GPL vmlinux 0x8fb2b4fa rtnl_delete_link +EXPORT_SYMBOL_GPL vmlinux 0x8fc12788 software_node_unregister_node_group +EXPORT_SYMBOL_GPL vmlinux 0x8fc8ce2b vmbus_prep_negotiate_resp +EXPORT_SYMBOL_GPL vmlinux 0x8fef1373 ata_sas_async_probe +EXPORT_SYMBOL_GPL vmlinux 0x9007d972 rhashtable_walk_peek +EXPORT_SYMBOL_GPL vmlinux 0x901d6b04 gpiochip_set_nested_irqchip +EXPORT_SYMBOL_GPL vmlinux 0x902400fe aead_exit_geniv +EXPORT_SYMBOL_GPL vmlinux 0x9024f443 mds_user_clear +EXPORT_SYMBOL_GPL vmlinux 0x902b0e3b nvme_alloc_request +EXPORT_SYMBOL_GPL vmlinux 0x902e92e6 serial8250_em485_start_tx +EXPORT_SYMBOL_GPL vmlinux 0x9033fdd6 gpiod_direction_output +EXPORT_SYMBOL_GPL vmlinux 0x90359588 dax_driver_unregister +EXPORT_SYMBOL_GPL vmlinux 0x903b627c list_lru_isolate_move +EXPORT_SYMBOL_GPL vmlinux 0x904558e1 seg6_do_srh_encap +EXPORT_SYMBOL_GPL vmlinux 0x904dd673 blk_rq_err_bytes +EXPORT_SYMBOL_GPL vmlinux 0x90688bcd devlink_info_driver_name_put +EXPORT_SYMBOL_GPL vmlinux 0x907bb5ef regmap_get_raw_write_max +EXPORT_SYMBOL_GPL vmlinux 0x9081b5db btree_insert +EXPORT_SYMBOL_GPL vmlinux 0x9084b044 clear_page_erms +EXPORT_SYMBOL_GPL vmlinux 0x9096d89c debugfs_create_file +EXPORT_SYMBOL_GPL vmlinux 0x90a9d8cc hv_is_hyperv_initialized +EXPORT_SYMBOL_GPL vmlinux 0x90ad66b1 software_node_unregister_nodes +EXPORT_SYMBOL_GPL vmlinux 0x90afd012 devlink_trap_policers_unregister +EXPORT_SYMBOL_GPL vmlinux 0x90c8498c apei_exec_write_register +EXPORT_SYMBOL_GPL vmlinux 0x90cd697f gpiod_get_raw_value +EXPORT_SYMBOL_GPL vmlinux 0x90d8b3a0 fib6_new_table +EXPORT_SYMBOL_GPL vmlinux 0x90d915bb find_pid_ns +EXPORT_SYMBOL_GPL vmlinux 0x90dc29df aout_dump_debugregs +EXPORT_SYMBOL_GPL vmlinux 0x90de0452 platform_thermal_package_notify +EXPORT_SYMBOL_GPL vmlinux 0x90e4389d thermal_zone_get_offset +EXPORT_SYMBOL_GPL vmlinux 0x90eb0524 tty_kopen +EXPORT_SYMBOL_GPL vmlinux 0x90fc5c1f skb_zerocopy_headlen +EXPORT_SYMBOL_GPL vmlinux 0x910a4783 rio_dma_prep_slave_sg +EXPORT_SYMBOL_GPL vmlinux 0x910ad9ad rtc_read_alarm +EXPORT_SYMBOL_GPL vmlinux 0x911c2f80 elv_unregister +EXPORT_SYMBOL_GPL vmlinux 0x913a10bb cpuidle_register +EXPORT_SYMBOL_GPL vmlinux 0x913b90f6 cpufreq_policy_transition_delay_us +EXPORT_SYMBOL_GPL vmlinux 0x9144f11c dev_pm_opp_disable +EXPORT_SYMBOL_GPL vmlinux 0x915a2c4a devlink_trap_policers_register +EXPORT_SYMBOL_GPL vmlinux 0x918d4950 ptp_classify_raw +EXPORT_SYMBOL_GPL vmlinux 0x91a55068 public_key_free +EXPORT_SYMBOL_GPL vmlinux 0x91b515d8 component_master_add_with_match +EXPORT_SYMBOL_GPL vmlinux 0x91b9a4ba e820__mapped_any +EXPORT_SYMBOL_GPL vmlinux 0x91c6e5b0 pcap_to_irq +EXPORT_SYMBOL_GPL vmlinux 0x91c8b5b5 mutex_lock_io +EXPORT_SYMBOL_GPL vmlinux 0x91d54ecc pci_epf_free_space +EXPORT_SYMBOL_GPL vmlinux 0x91dd0673 netlink_remove_tap +EXPORT_SYMBOL_GPL vmlinux 0x91f25101 phy_get +EXPORT_SYMBOL_GPL vmlinux 0x920145c3 __nvdimm_create +EXPORT_SYMBOL_GPL vmlinux 0x920cc389 visitorl +EXPORT_SYMBOL_GPL vmlinux 0x920f0bf2 dev_pm_opp_remove +EXPORT_SYMBOL_GPL vmlinux 0x92141343 kvm_async_pf_task_wake +EXPORT_SYMBOL_GPL vmlinux 0x921723d2 ata_sff_lost_interrupt +EXPORT_SYMBOL_GPL vmlinux 0x92295424 clk_register_gate +EXPORT_SYMBOL_GPL vmlinux 0x923d9dba pkcs7_parse_message +EXPORT_SYMBOL_GPL vmlinux 0x923daa38 dev_pm_qos_update_request +EXPORT_SYMBOL_GPL vmlinux 0x92414fd9 usb_hcd_poll_rh_status +EXPORT_SYMBOL_GPL vmlinux 0x9241b358 __static_key_slow_dec_deferred +EXPORT_SYMBOL_GPL vmlinux 0x924c46f8 zs_unmap_object +EXPORT_SYMBOL_GPL vmlinux 0x925408d0 pcc_mbox_free_channel +EXPORT_SYMBOL_GPL vmlinux 0x9257a608 tracing_cond_snapshot_data +EXPORT_SYMBOL_GPL vmlinux 0x925b53b3 iommu_unmap_fast +EXPORT_SYMBOL_GPL vmlinux 0x925f63c4 tty_port_unregister_device +EXPORT_SYMBOL_GPL vmlinux 0x92684c01 nvdimm_cmd_mask +EXPORT_SYMBOL_GPL vmlinux 0x9278315b wbc_account_cgroup_owner +EXPORT_SYMBOL_GPL vmlinux 0x928236f0 tracing_snapshot_cond_disable +EXPORT_SYMBOL_GPL vmlinux 0x92871d12 add_disk_randomness +EXPORT_SYMBOL_GPL vmlinux 0x929316cd __pneigh_lookup +EXPORT_SYMBOL_GPL vmlinux 0x92a384fd security_inode_create +EXPORT_SYMBOL_GPL vmlinux 0x92d31cfb fixed_phy_add +EXPORT_SYMBOL_GPL vmlinux 0x92d8e56f __tracepoint_xhci_dbg_quirks +EXPORT_SYMBOL_GPL vmlinux 0x92db8f68 do_trace_rcu_torture_read +EXPORT_SYMBOL_GPL vmlinux 0x92def24e set_pages_array_wt +EXPORT_SYMBOL_GPL vmlinux 0x92e4c047 regulator_unlock +EXPORT_SYMBOL_GPL vmlinux 0x92e8e9ab fsverity_enqueue_verify_work +EXPORT_SYMBOL_GPL vmlinux 0x92f5ca4f crypto_mod_put +EXPORT_SYMBOL_GPL vmlinux 0x93114abf nvdimm_clear_poison +EXPORT_SYMBOL_GPL vmlinux 0x93170790 blk_fill_rwbs +EXPORT_SYMBOL_GPL vmlinux 0x931e963c devm_init_badblocks +EXPORT_SYMBOL_GPL vmlinux 0x93255b2b ring_buffer_lock_reserve +EXPORT_SYMBOL_GPL vmlinux 0x932c8d7a linear_range_get_value_array +EXPORT_SYMBOL_GPL vmlinux 0x933cddf4 devm_regmap_field_free +EXPORT_SYMBOL_GPL vmlinux 0x933f75e0 usb_unlink_anchored_urbs +EXPORT_SYMBOL_GPL vmlinux 0x934058c5 gpiochip_populate_parent_fwspec_fourcell +EXPORT_SYMBOL_GPL vmlinux 0x9342637f arizona_dev_exit +EXPORT_SYMBOL_GPL vmlinux 0x93499647 trace_put_event_file +EXPORT_SYMBOL_GPL vmlinux 0x9350468c crypto_unregister_alg +EXPORT_SYMBOL_GPL vmlinux 0x9360f401 key_set_timeout +EXPORT_SYMBOL_GPL vmlinux 0x93725986 __tracepoint_pelt_dl_tp +EXPORT_SYMBOL_GPL vmlinux 0x9384cd49 ata_tf_from_fis +EXPORT_SYMBOL_GPL vmlinux 0x938519f6 device_del +EXPORT_SYMBOL_GPL vmlinux 0x93922111 get_compat_bpf_fprog +EXPORT_SYMBOL_GPL vmlinux 0x93a511ba regulator_suspend_enable +EXPORT_SYMBOL_GPL vmlinux 0x93b43e70 kthread_flush_work +EXPORT_SYMBOL_GPL vmlinux 0x93bf6857 cpuidle_register_driver +EXPORT_SYMBOL_GPL vmlinux 0x93db12ff genphy_c45_read_lpa +EXPORT_SYMBOL_GPL vmlinux 0x93dc2586 pgprot_writethrough +EXPORT_SYMBOL_GPL vmlinux 0x93ed69a3 vfio_register_iommu_driver +EXPORT_SYMBOL_GPL vmlinux 0x93edef07 devlink_health_report +EXPORT_SYMBOL_GPL vmlinux 0x93f7f0d5 mmu_interval_read_begin +EXPORT_SYMBOL_GPL vmlinux 0x93f931f9 md_stop_writes +EXPORT_SYMBOL_GPL vmlinux 0x94037ead iommu_map +EXPORT_SYMBOL_GPL vmlinux 0x941a3d4f clk_hw_unregister_fixed_rate +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 0x94271c48 policy_has_boost_freq +EXPORT_SYMBOL_GPL vmlinux 0x9430b198 trace_dump_stack +EXPORT_SYMBOL_GPL vmlinux 0x943255ff hv_ringbuffer_get_debuginfo +EXPORT_SYMBOL_GPL vmlinux 0x9434ad47 scsi_queue_work +EXPORT_SYMBOL_GPL vmlinux 0x945b07a5 blk_mq_sched_try_insert_merge +EXPORT_SYMBOL_GPL vmlinux 0x946d0822 blk_add_driver_data +EXPORT_SYMBOL_GPL vmlinux 0x946dd559 sha224_zero_message_hash +EXPORT_SYMBOL_GPL vmlinux 0x947b40c6 cpu_smt_possible +EXPORT_SYMBOL_GPL vmlinux 0x947ec432 md_bitmap_resize +EXPORT_SYMBOL_GPL vmlinux 0x949b5176 devlink_region_snapshot_create +EXPORT_SYMBOL_GPL vmlinux 0x949f7342 __alloc_percpu +EXPORT_SYMBOL_GPL vmlinux 0x94a1710e lwtunnel_output +EXPORT_SYMBOL_GPL vmlinux 0x94add736 dev_pm_domain_attach +EXPORT_SYMBOL_GPL vmlinux 0x94aec087 perf_event_disable +EXPORT_SYMBOL_GPL vmlinux 0x94b5d914 cgrp_dfl_root +EXPORT_SYMBOL_GPL vmlinux 0x94bccd56 rio_unregister_driver +EXPORT_SYMBOL_GPL vmlinux 0x94bdca6f power_supply_set_battery_charged +EXPORT_SYMBOL_GPL vmlinux 0x94e60718 get_user_pages_fast +EXPORT_SYMBOL_GPL vmlinux 0x94ef4d05 cpci_hp_stop +EXPORT_SYMBOL_GPL vmlinux 0x94f724d3 __ata_change_queue_depth +EXPORT_SYMBOL_GPL vmlinux 0x9502c216 percpu_down_write +EXPORT_SYMBOL_GPL vmlinux 0x9504df26 irq_wake_thread +EXPORT_SYMBOL_GPL vmlinux 0x95059d62 kernfs_notify +EXPORT_SYMBOL_GPL vmlinux 0x95106a6c vxlan_fdb_replay +EXPORT_SYMBOL_GPL vmlinux 0x95192e27 fl6_merge_options +EXPORT_SYMBOL_GPL vmlinux 0x951a2773 crypto_has_alg +EXPORT_SYMBOL_GPL vmlinux 0x951e2cee spi_finalize_current_message +EXPORT_SYMBOL_GPL vmlinux 0x95253977 exportfs_decode_fh +EXPORT_SYMBOL_GPL vmlinux 0x95258207 vfio_device_data +EXPORT_SYMBOL_GPL vmlinux 0x952664c5 do_exit +EXPORT_SYMBOL_GPL vmlinux 0x95329e57 platform_get_irq_byname +EXPORT_SYMBOL_GPL vmlinux 0x953e1b9e ktime_get_real_seconds +EXPORT_SYMBOL_GPL vmlinux 0x955b0e2e kthread_worker_fn +EXPORT_SYMBOL_GPL vmlinux 0x95609b26 context_tracking_key +EXPORT_SYMBOL_GPL vmlinux 0x956ac400 ring_buffer_dropped_events_cpu +EXPORT_SYMBOL_GPL vmlinux 0x958b4f8f device_property_match_string +EXPORT_SYMBOL_GPL vmlinux 0x958df3ac zs_free +EXPORT_SYMBOL_GPL vmlinux 0x959ec5f5 call_rcu_tasks +EXPORT_SYMBOL_GPL vmlinux 0x95af7be3 iommu_device_link +EXPORT_SYMBOL_GPL vmlinux 0x95bc9078 btree_free +EXPORT_SYMBOL_GPL vmlinux 0x95c2c8b7 devlink_params_unpublish +EXPORT_SYMBOL_GPL vmlinux 0x95cd9fdb srcu_torture_stats_print +EXPORT_SYMBOL_GPL vmlinux 0x95d2c215 __clk_hw_register_fixed_rate +EXPORT_SYMBOL_GPL vmlinux 0x95e8d58f __fput_sync +EXPORT_SYMBOL_GPL vmlinux 0x95ef1ccc dmi_memdev_size +EXPORT_SYMBOL_GPL vmlinux 0x95efa1db pkcs7_free_message +EXPORT_SYMBOL_GPL vmlinux 0x95f3a49d devm_ioremap_uc +EXPORT_SYMBOL_GPL vmlinux 0x961286e0 ring_buffer_read_events_cpu +EXPORT_SYMBOL_GPL vmlinux 0x96281b02 tpm2_get_cc_attrs_tbl +EXPORT_SYMBOL_GPL vmlinux 0x962bfe44 da9052_regmap_config +EXPORT_SYMBOL_GPL vmlinux 0x962c8ae1 usb_kill_anchored_urbs +EXPORT_SYMBOL_GPL vmlinux 0x962d3a81 power_supply_register +EXPORT_SYMBOL_GPL vmlinux 0x962f2fa6 device_create +EXPORT_SYMBOL_GPL vmlinux 0x96554810 register_keyboard_notifier +EXPORT_SYMBOL_GPL vmlinux 0x965c830d fat_flush_inodes +EXPORT_SYMBOL_GPL vmlinux 0x965e4f58 nf_queue_nf_hook_drop +EXPORT_SYMBOL_GPL vmlinux 0x96650c63 __audit_inode_child +EXPORT_SYMBOL_GPL vmlinux 0x9665abb1 to_nvdimm +EXPORT_SYMBOL_GPL vmlinux 0x968576e5 acpi_dev_add_driver_gpios +EXPORT_SYMBOL_GPL vmlinux 0x968f9a23 efivar_entry_iter_begin +EXPORT_SYMBOL_GPL vmlinux 0x968fef8a page_cache_readahead_unbounded +EXPORT_SYMBOL_GPL vmlinux 0x969c73d9 vfio_device_put +EXPORT_SYMBOL_GPL vmlinux 0x96a3e594 pci_d3cold_disable +EXPORT_SYMBOL_GPL vmlinux 0x96d59bcd led_sysfs_disable +EXPORT_SYMBOL_GPL vmlinux 0x96dc091f devfreq_event_enable_edev +EXPORT_SYMBOL_GPL vmlinux 0x96df5124 clockevent_delta2ns +EXPORT_SYMBOL_GPL vmlinux 0x96e10a9d __netpoll_setup +EXPORT_SYMBOL_GPL vmlinux 0x96f67f3e cpu_device_create +EXPORT_SYMBOL_GPL vmlinux 0x97011f09 nvdimm_bus_unregister +EXPORT_SYMBOL_GPL vmlinux 0x9714e0bb ktime_get_raw +EXPORT_SYMBOL_GPL vmlinux 0x9719bcfd pmc_atom_read +EXPORT_SYMBOL_GPL vmlinux 0x97245dac crypto_register_rng +EXPORT_SYMBOL_GPL vmlinux 0x972d1cb1 fwnode_property_read_u16_array +EXPORT_SYMBOL_GPL vmlinux 0x975519c1 asymmetric_key_id_same +EXPORT_SYMBOL_GPL vmlinux 0x9757e4b5 fuse_do_ioctl +EXPORT_SYMBOL_GPL vmlinux 0x97623558 xas_create_range +EXPORT_SYMBOL_GPL vmlinux 0x97631cc6 rt_mutex_trylock +EXPORT_SYMBOL_GPL vmlinux 0x9768c078 usb_lock_device_for_reset +EXPORT_SYMBOL_GPL vmlinux 0x977be5c7 klist_iter_init_node +EXPORT_SYMBOL_GPL vmlinux 0x978137d6 espintcp_push_skb +EXPORT_SYMBOL_GPL vmlinux 0x978204b6 spi_res_release +EXPORT_SYMBOL_GPL vmlinux 0x97887702 devm_irq_domain_create_sim +EXPORT_SYMBOL_GPL vmlinux 0x97898244 udp_tunnel_sock_release +EXPORT_SYMBOL_GPL vmlinux 0x97945090 __efivar_entry_delete +EXPORT_SYMBOL_GPL vmlinux 0x97b3c4b9 nvme_shutdown_ctrl +EXPORT_SYMBOL_GPL vmlinux 0x97c63002 __netif_set_xps_queue +EXPORT_SYMBOL_GPL vmlinux 0x97d12355 hv_remove_stimer0_irq +EXPORT_SYMBOL_GPL vmlinux 0x97d1dae0 spi_set_cs_timing +EXPORT_SYMBOL_GPL vmlinux 0x97de2b83 debug_locks_silent +EXPORT_SYMBOL_GPL vmlinux 0x97e7f902 trace_vbprintk +EXPORT_SYMBOL_GPL vmlinux 0x97f603de dev_pm_opp_set_supported_hw +EXPORT_SYMBOL_GPL vmlinux 0x9823e30d nvme_complete_rq +EXPORT_SYMBOL_GPL vmlinux 0x9833bc0c hvc_kick +EXPORT_SYMBOL_GPL vmlinux 0x98388581 gpiochip_irq_domain_activate +EXPORT_SYMBOL_GPL vmlinux 0x983d2f86 disk_part_iter_next +EXPORT_SYMBOL_GPL vmlinux 0x9841b500 fscrypt_ioctl_get_policy_ex +EXPORT_SYMBOL_GPL vmlinux 0x98489343 strp_process +EXPORT_SYMBOL_GPL vmlinux 0x98503a63 mpi_alloc +EXPORT_SYMBOL_GPL vmlinux 0x985453e1 lease_unregister_notifier +EXPORT_SYMBOL_GPL vmlinux 0x9856fd19 irq_domain_push_irq +EXPORT_SYMBOL_GPL vmlinux 0x9858d383 dev_pm_opp_set_clkname +EXPORT_SYMBOL_GPL vmlinux 0x985f5eb4 css_next_descendant_pre +EXPORT_SYMBOL_GPL vmlinux 0x986147b3 irq_domain_free_irqs_common +EXPORT_SYMBOL_GPL vmlinux 0x9865a624 irq_chip_get_parent_state +EXPORT_SYMBOL_GPL vmlinux 0x987520e2 usb_find_common_endpoints_reverse +EXPORT_SYMBOL_GPL vmlinux 0x9879932b crypto_register_notifier +EXPORT_SYMBOL_GPL vmlinux 0x987ab0a5 amd_get_nb_id +EXPORT_SYMBOL_GPL vmlinux 0x9884d320 fuse_free_conn +EXPORT_SYMBOL_GPL vmlinux 0x989074ff kmsg_dump_reason_str +EXPORT_SYMBOL_GPL vmlinux 0x989ca045 fscrypt_drop_inode +EXPORT_SYMBOL_GPL vmlinux 0x98ba45dd spi_mem_driver_register_with_owner +EXPORT_SYMBOL_GPL vmlinux 0x98c07d65 spi_write_then_read +EXPORT_SYMBOL_GPL vmlinux 0x98c98140 crypto_alloc_ahash +EXPORT_SYMBOL_GPL vmlinux 0x98caa99f led_update_brightness +EXPORT_SYMBOL_GPL vmlinux 0x98d6ae1e subsys_interface_register +EXPORT_SYMBOL_GPL vmlinux 0x98da6e3d ata_sff_wait_after_reset +EXPORT_SYMBOL_GPL vmlinux 0x98ee289a __skb_tstamp_tx +EXPORT_SYMBOL_GPL vmlinux 0x98ee62b2 ring_buffer_record_disable_cpu +EXPORT_SYMBOL_GPL vmlinux 0x98f4d306 hyperv_flush_guest_mapping +EXPORT_SYMBOL_GPL vmlinux 0x98f5bf0a scsi_internal_device_unblock_nowait +EXPORT_SYMBOL_GPL vmlinux 0x98fa1e20 dm_get_reserved_rq_based_ios +EXPORT_SYMBOL_GPL vmlinux 0x98ff8c68 evict_inodes +EXPORT_SYMBOL_GPL vmlinux 0x9908841a fsverity_ioctl_enable +EXPORT_SYMBOL_GPL vmlinux 0x991bff05 devres_get +EXPORT_SYMBOL_GPL vmlinux 0x99430ba2 acpi_get_phys_id +EXPORT_SYMBOL_GPL vmlinux 0x9946b0bc dma_resv_wait_timeout_rcu +EXPORT_SYMBOL_GPL vmlinux 0x995bccf6 genphy_c45_pma_setup_forced +EXPORT_SYMBOL_GPL vmlinux 0x995d1071 prof_on +EXPORT_SYMBOL_GPL vmlinux 0x996eb4c0 ping_bind +EXPORT_SYMBOL_GPL vmlinux 0x996f4965 ethnl_cable_test_alloc +EXPORT_SYMBOL_GPL vmlinux 0x998074dc of_icc_get_by_index +EXPORT_SYMBOL_GPL vmlinux 0x9987660d __of_phy_provider_register +EXPORT_SYMBOL_GPL vmlinux 0x998d79d6 x509_decode_time +EXPORT_SYMBOL_GPL vmlinux 0x99bc781c fuse_dev_fiq_ops +EXPORT_SYMBOL_GPL vmlinux 0x99c0b2be devlink_free +EXPORT_SYMBOL_GPL vmlinux 0x99e07175 dma_request_slave_channel +EXPORT_SYMBOL_GPL vmlinux 0x99f018c4 nvmem_cell_read +EXPORT_SYMBOL_GPL vmlinux 0x99f19af4 screen_pos +EXPORT_SYMBOL_GPL vmlinux 0x99f2d00a sysfs_emit_at +EXPORT_SYMBOL_GPL vmlinux 0x99f523e9 reset_control_get_count +EXPORT_SYMBOL_GPL vmlinux 0x99fc7b3e usb_wakeup_notification +EXPORT_SYMBOL_GPL vmlinux 0x99fdcb08 devm_clk_bulk_get +EXPORT_SYMBOL_GPL vmlinux 0x9a001937 fuse_conn_get +EXPORT_SYMBOL_GPL vmlinux 0x9a11a0fc crypto_attr_alg_name +EXPORT_SYMBOL_GPL vmlinux 0x9a185ace tick_nohz_full_running +EXPORT_SYMBOL_GPL vmlinux 0x9a41c9f3 pm_genpd_add_subdomain +EXPORT_SYMBOL_GPL vmlinux 0x9a4249a6 pm_runtime_autosuspend_expiration +EXPORT_SYMBOL_GPL vmlinux 0x9a4c65ea bus_register +EXPORT_SYMBOL_GPL vmlinux 0x9a557b9b fsverity_cleanup_inode +EXPORT_SYMBOL_GPL vmlinux 0x9a58dd2d trace_print_bitmask_seq +EXPORT_SYMBOL_GPL vmlinux 0x9a5a2055 spi_mem_default_supports_op +EXPORT_SYMBOL_GPL vmlinux 0x9a5ada59 fat_build_inode +EXPORT_SYMBOL_GPL vmlinux 0x9a84a6fc nvdimm_to_bus +EXPORT_SYMBOL_GPL vmlinux 0x9a8845ce switchdev_port_obj_del +EXPORT_SYMBOL_GPL vmlinux 0x9aa6c793 crypto_register_akcipher +EXPORT_SYMBOL_GPL vmlinux 0x9aa71c2a efi_query_variable_store +EXPORT_SYMBOL_GPL vmlinux 0x9aaac699 dev_pm_opp_cpumask_remove_table +EXPORT_SYMBOL_GPL vmlinux 0x9ac11b74 suspend_set_ops +EXPORT_SYMBOL_GPL vmlinux 0x9aca0b31 ptdump_walk_pgd_level_debugfs +EXPORT_SYMBOL_GPL vmlinux 0x9ad9ef78 pci_aer_clear_nonfatal_status +EXPORT_SYMBOL_GPL vmlinux 0x9ade3846 sk_msg_return_zero +EXPORT_SYMBOL_GPL vmlinux 0x9ae4191f sbitmap_queue_init_node +EXPORT_SYMBOL_GPL vmlinux 0x9aeacb87 ring_buffer_iter_empty +EXPORT_SYMBOL_GPL vmlinux 0x9af74621 devm_hwmon_device_unregister +EXPORT_SYMBOL_GPL vmlinux 0x9b000206 mdiobus_modify +EXPORT_SYMBOL_GPL vmlinux 0x9b0578b5 pci_epc_remove_epf +EXPORT_SYMBOL_GPL vmlinux 0x9b11b493 skb_zerocopy_iter_stream +EXPORT_SYMBOL_GPL vmlinux 0x9b36a0b5 regulator_disable_deferred +EXPORT_SYMBOL_GPL vmlinux 0x9b52ca8e blk_mq_update_nr_hw_queues +EXPORT_SYMBOL_GPL vmlinux 0x9b549363 gpiod_get_optional +EXPORT_SYMBOL_GPL vmlinux 0x9b555c8c pm_suspend_default_s2idle +EXPORT_SYMBOL_GPL vmlinux 0x9b5fbedf dev_pm_set_dedicated_wake_irq +EXPORT_SYMBOL_GPL vmlinux 0x9b698c42 ioasid_set_data +EXPORT_SYMBOL_GPL vmlinux 0x9b6ec967 ring_buffer_size +EXPORT_SYMBOL_GPL vmlinux 0x9b6f0a4c tty_mode_ioctl +EXPORT_SYMBOL_GPL vmlinux 0x9b837c9e alloc_dax_region +EXPORT_SYMBOL_GPL vmlinux 0x9b85bb71 irq_gc_ack_set_bit +EXPORT_SYMBOL_GPL vmlinux 0x9b896724 devlink_param_value_str_fill +EXPORT_SYMBOL_GPL vmlinux 0x9b8a14bd usb_unlink_urb +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 0x9bb76adc sk_psock_msg_verdict +EXPORT_SYMBOL_GPL vmlinux 0x9bc77923 __tracepoint_neigh_update +EXPORT_SYMBOL_GPL vmlinux 0x9bece81b mpi_cmp_ui +EXPORT_SYMBOL_GPL vmlinux 0x9bf8b839 fixed_phy_change_carrier +EXPORT_SYMBOL_GPL vmlinux 0x9c01e7be lookup_address_in_mm +EXPORT_SYMBOL_GPL vmlinux 0x9c3ad733 bpf_trace_run2 +EXPORT_SYMBOL_GPL vmlinux 0x9c5c064c ata_scsi_slave_destroy +EXPORT_SYMBOL_GPL vmlinux 0x9c6febfc add_uevent_var +EXPORT_SYMBOL_GPL vmlinux 0x9c78aae0 genphy_c45_config_aneg +EXPORT_SYMBOL_GPL vmlinux 0x9c803020 usb_phy_roothub_power_on +EXPORT_SYMBOL_GPL vmlinux 0x9c87f278 device_init_wakeup +EXPORT_SYMBOL_GPL vmlinux 0x9ca480cc clk_gate_is_enabled +EXPORT_SYMBOL_GPL vmlinux 0x9caab9ef acpi_gpio_get_irq_resource +EXPORT_SYMBOL_GPL vmlinux 0x9cb26601 acpi_debugfs_dir +EXPORT_SYMBOL_GPL vmlinux 0x9cc0e0c2 __pm_stay_awake +EXPORT_SYMBOL_GPL vmlinux 0x9cc4f70a register_pm_notifier +EXPORT_SYMBOL_GPL vmlinux 0x9cc9e3e8 key_type_encrypted +EXPORT_SYMBOL_GPL vmlinux 0x9cd3ddff locks_alloc_lock +EXPORT_SYMBOL_GPL vmlinux 0x9cf37c44 __iowrite32_copy +EXPORT_SYMBOL_GPL vmlinux 0x9cfa38e6 fat_update_time +EXPORT_SYMBOL_GPL vmlinux 0x9cfbb6f2 vc_scrolldelta_helper +EXPORT_SYMBOL_GPL vmlinux 0x9d0515be pci_epf_unbind +EXPORT_SYMBOL_GPL vmlinux 0x9d077f2f __sync_filesystem +EXPORT_SYMBOL_GPL vmlinux 0x9d09e8ae ring_buffer_event_data +EXPORT_SYMBOL_GPL vmlinux 0x9d118ed1 dma_buf_pin +EXPORT_SYMBOL_GPL vmlinux 0x9d14205c cr4_read_shadow +EXPORT_SYMBOL_GPL vmlinux 0x9d154e5d device_link_remove +EXPORT_SYMBOL_GPL vmlinux 0x9d1888a9 blk_update_request +EXPORT_SYMBOL_GPL vmlinux 0x9d2cbd12 xdp_rxq_info_unreg_mem_model +EXPORT_SYMBOL_GPL vmlinux 0x9d2d1a2a usb_get_status +EXPORT_SYMBOL_GPL vmlinux 0x9d405e67 lwtunnel_get_encap_size +EXPORT_SYMBOL_GPL vmlinux 0x9d41bde7 report_iommu_fault +EXPORT_SYMBOL_GPL vmlinux 0x9d486c63 blk_queue_write_cache +EXPORT_SYMBOL_GPL vmlinux 0x9d4e6f9d trace_event_buffer_reserve +EXPORT_SYMBOL_GPL vmlinux 0x9d597a03 nf_ct_hook +EXPORT_SYMBOL_GPL vmlinux 0x9d68972d badblocks_clear +EXPORT_SYMBOL_GPL vmlinux 0x9d6cfe33 pinctrl_dev_get_drvdata +EXPORT_SYMBOL_GPL vmlinux 0x9d9d2ed9 regulator_set_mode +EXPORT_SYMBOL_GPL vmlinux 0x9d9e5115 init_uts_ns +EXPORT_SYMBOL_GPL vmlinux 0x9d9ffe24 blk_mq_freeze_queue_wait +EXPORT_SYMBOL_GPL vmlinux 0x9da37449 device_connection_add +EXPORT_SYMBOL_GPL vmlinux 0x9dc98c27 clk_hw_set_rate_range +EXPORT_SYMBOL_GPL vmlinux 0x9dd95ca1 ata_host_activate +EXPORT_SYMBOL_GPL vmlinux 0x9ddc210a pm_wakeup_ws_event +EXPORT_SYMBOL_GPL vmlinux 0x9e005e6f cppc_get_perf_caps +EXPORT_SYMBOL_GPL vmlinux 0x9e020c69 devm_spi_mem_dirmap_create +EXPORT_SYMBOL_GPL vmlinux 0x9e08d700 __tracepoint_xdp_bulk_tx +EXPORT_SYMBOL_GPL vmlinux 0x9e1597ef irq_setup_generic_chip +EXPORT_SYMBOL_GPL vmlinux 0x9e423bbc unregister_ftrace_function +EXPORT_SYMBOL_GPL vmlinux 0x9e472f5f snmp_fold_field +EXPORT_SYMBOL_GPL vmlinux 0x9e626429 __blk_req_zone_write_unlock +EXPORT_SYMBOL_GPL vmlinux 0x9e72041e l3mdev_link_scope_lookup +EXPORT_SYMBOL_GPL vmlinux 0x9e8e7277 iomap_file_unshare +EXPORT_SYMBOL_GPL vmlinux 0x9ea1b489 ip6_update_pmtu +EXPORT_SYMBOL_GPL vmlinux 0x9ed554b3 unregister_keyboard_notifier +EXPORT_SYMBOL_GPL vmlinux 0x9edba61f fuse_direct_io +EXPORT_SYMBOL_GPL vmlinux 0x9edfa6cc acpi_subsys_suspend +EXPORT_SYMBOL_GPL vmlinux 0x9ee465cb fuse_conn_init +EXPORT_SYMBOL_GPL vmlinux 0x9ee534fe regulator_list_hardware_vsel +EXPORT_SYMBOL_GPL vmlinux 0x9ef76b3c ata_scsi_change_queue_depth +EXPORT_SYMBOL_GPL vmlinux 0x9ef92f21 pci_pasid_features +EXPORT_SYMBOL_GPL vmlinux 0x9efcadd5 ata_scsi_dma_need_drain +EXPORT_SYMBOL_GPL vmlinux 0x9f029c7e ata_wait_after_reset +EXPORT_SYMBOL_GPL vmlinux 0x9f07a6c7 gpiod_put_array +EXPORT_SYMBOL_GPL vmlinux 0x9f1e7c70 eventfd_fget +EXPORT_SYMBOL_GPL vmlinux 0x9f1fdb53 crypto_ahash_setkey +EXPORT_SYMBOL_GPL vmlinux 0x9f22412c gpiochip_remove +EXPORT_SYMBOL_GPL vmlinux 0x9f36457e __tracepoint_fdb_delete +EXPORT_SYMBOL_GPL vmlinux 0x9f370a64 __srcu_read_lock +EXPORT_SYMBOL_GPL vmlinux 0x9f4a8c11 crypto_cipher_encrypt_one +EXPORT_SYMBOL_GPL vmlinux 0x9f4d74e2 software_node_fwnode +EXPORT_SYMBOL_GPL vmlinux 0x9f57ec7c pktgen_xfrm_outer_mode_output +EXPORT_SYMBOL_GPL vmlinux 0x9f8075d2 sock_zerocopy_realloc +EXPORT_SYMBOL_GPL vmlinux 0x9f9495cd irq_domain_create_sim +EXPORT_SYMBOL_GPL vmlinux 0x9fab32df arch_set_freq_scale +EXPORT_SYMBOL_GPL vmlinux 0x9fbc30f9 devm_acpi_dma_controller_free +EXPORT_SYMBOL_GPL vmlinux 0x9fbfebab erst_write +EXPORT_SYMBOL_GPL vmlinux 0x9fce80db fb_notifier_call_chain +EXPORT_SYMBOL_GPL vmlinux 0x9fd0fbb8 ata_sff_postreset +EXPORT_SYMBOL_GPL vmlinux 0x9fd12a74 pci_check_and_unmask_intx +EXPORT_SYMBOL_GPL vmlinux 0x9fd45ecc generic_fh_to_parent +EXPORT_SYMBOL_GPL vmlinux 0x9fe532c6 dma_async_device_channel_unregister +EXPORT_SYMBOL_GPL vmlinux 0x9fe899b7 get_cpu_idle_time +EXPORT_SYMBOL_GPL vmlinux 0x9fe939e1 mpi_powm +EXPORT_SYMBOL_GPL vmlinux 0x9ffedb0e uart_handle_cts_change +EXPORT_SYMBOL_GPL vmlinux 0xa00700ee component_del +EXPORT_SYMBOL_GPL vmlinux 0xa00b4708 iommu_capable +EXPORT_SYMBOL_GPL vmlinux 0xa01a8d9b nd_cmd_bus_desc +EXPORT_SYMBOL_GPL vmlinux 0xa0208d60 fat_attach +EXPORT_SYMBOL_GPL vmlinux 0xa04b965e nvdimm_kobj +EXPORT_SYMBOL_GPL vmlinux 0xa04f945a cpus_read_lock +EXPORT_SYMBOL_GPL vmlinux 0xa04fc147 get_cpu_device +EXPORT_SYMBOL_GPL vmlinux 0xa06825b0 regulator_set_suspend_voltage +EXPORT_SYMBOL_GPL vmlinux 0xa06d8848 serial8250_em485_destroy +EXPORT_SYMBOL_GPL vmlinux 0xa080b756 dev_pm_clear_wake_irq +EXPORT_SYMBOL_GPL vmlinux 0xa08e9c83 ping_getfrag +EXPORT_SYMBOL_GPL vmlinux 0xa09c2a4c ip_local_out +EXPORT_SYMBOL_GPL vmlinux 0xa0a97814 pci_epc_put +EXPORT_SYMBOL_GPL vmlinux 0xa0b9bc3c debugfs_write_file_bool +EXPORT_SYMBOL_GPL vmlinux 0xa0c6befa hrtimer_cancel +EXPORT_SYMBOL_GPL vmlinux 0xa0d3456d nr_swap_pages +EXPORT_SYMBOL_GPL vmlinux 0xa1053ec9 ata_pci_sff_prepare_host +EXPORT_SYMBOL_GPL vmlinux 0xa10c8e8a crypto_enqueue_request +EXPORT_SYMBOL_GPL vmlinux 0xa1131f7c irq_domain_alloc_irqs_parent +EXPORT_SYMBOL_GPL vmlinux 0xa1189c5f acpi_pm_set_device_wakeup +EXPORT_SYMBOL_GPL vmlinux 0xa1225d9a phy_pm_runtime_put +EXPORT_SYMBOL_GPL vmlinux 0xa127e985 pci_intx +EXPORT_SYMBOL_GPL vmlinux 0xa1421ea7 __bio_crypt_clone +EXPORT_SYMBOL_GPL vmlinux 0xa156a1f2 erst_get_record_id_end +EXPORT_SYMBOL_GPL vmlinux 0xa1691b63 xas_find_marked +EXPORT_SYMBOL_GPL vmlinux 0xa16b6b8f device_connection_remove +EXPORT_SYMBOL_GPL vmlinux 0xa186dafc __bio_add_page +EXPORT_SYMBOL_GPL vmlinux 0xa18ee545 sched_trace_rd_span +EXPORT_SYMBOL_GPL vmlinux 0xa19389dc bio_trim +EXPORT_SYMBOL_GPL vmlinux 0xa194cd1a rio_mport_get_physefb +EXPORT_SYMBOL_GPL vmlinux 0xa19b0e97 user_read +EXPORT_SYMBOL_GPL vmlinux 0xa1a3fe51 inet6_sk_rebuild_header +EXPORT_SYMBOL_GPL vmlinux 0xa1c6d339 skcipher_walk_async +EXPORT_SYMBOL_GPL vmlinux 0xa1cd5d8a crypto_shash_digest +EXPORT_SYMBOL_GPL vmlinux 0xa1e239e4 clk_hw_get_num_parents +EXPORT_SYMBOL_GPL vmlinux 0xa1ed9c8b add_hwgenerator_randomness +EXPORT_SYMBOL_GPL vmlinux 0xa1fea34c devlink_reload_enable +EXPORT_SYMBOL_GPL vmlinux 0xa20c427f vmbus_free_ring +EXPORT_SYMBOL_GPL vmlinux 0xa20d01ba __trace_bprintk +EXPORT_SYMBOL_GPL vmlinux 0xa20eb501 phy_power_on +EXPORT_SYMBOL_GPL vmlinux 0xa21ef62b usb_register_driver +EXPORT_SYMBOL_GPL vmlinux 0xa232a7e7 led_trigger_set_default +EXPORT_SYMBOL_GPL vmlinux 0xa251d0f8 irq_domain_xlate_onecell +EXPORT_SYMBOL_GPL vmlinux 0xa25c9054 nvdimm_name +EXPORT_SYMBOL_GPL vmlinux 0xa26d9b4f workqueue_congested +EXPORT_SYMBOL_GPL vmlinux 0xa27c002a rio_request_inb_dbell +EXPORT_SYMBOL_GPL vmlinux 0xa2bca959 da9052_disable_irq_nosync +EXPORT_SYMBOL_GPL vmlinux 0xa2c1ba4f usb_autopm_get_interface_no_resume +EXPORT_SYMBOL_GPL vmlinux 0xa2d0f7a9 sk_clear_memalloc +EXPORT_SYMBOL_GPL vmlinux 0xa2d3a6ed balloon_aops +EXPORT_SYMBOL_GPL vmlinux 0xa2d8581b devm_hwmon_device_register_with_groups +EXPORT_SYMBOL_GPL vmlinux 0xa2e1b3ef trace_printk_init_buffers +EXPORT_SYMBOL_GPL vmlinux 0xa2f7487f hv_is_hibernation_supported +EXPORT_SYMBOL_GPL vmlinux 0xa2f812f9 phy_10gbit_fec_features_array +EXPORT_SYMBOL_GPL vmlinux 0xa301debb init_dummy_netdev +EXPORT_SYMBOL_GPL vmlinux 0xa3027571 thermal_notify_framework +EXPORT_SYMBOL_GPL vmlinux 0xa3054bc0 device_reprobe +EXPORT_SYMBOL_GPL vmlinux 0xa31b7922 balloon_page_enqueue +EXPORT_SYMBOL_GPL vmlinux 0xa32bab05 ata_sas_port_init +EXPORT_SYMBOL_GPL vmlinux 0xa3395c2f srcu_barrier +EXPORT_SYMBOL_GPL vmlinux 0xa35d5427 devm_kfree +EXPORT_SYMBOL_GPL vmlinux 0xa3659b5f __tracepoint_devlink_hwerr +EXPORT_SYMBOL_GPL vmlinux 0xa36ccb27 devlink_resource_register +EXPORT_SYMBOL_GPL vmlinux 0xa36f50fb is_binary_blacklisted +EXPORT_SYMBOL_GPL vmlinux 0xa3705e12 __irq_set_handler +EXPORT_SYMBOL_GPL vmlinux 0xa38602cd drain_workqueue +EXPORT_SYMBOL_GPL vmlinux 0xa389a49a profile_event_register +EXPORT_SYMBOL_GPL vmlinux 0xa38a9f71 get_itimerspec64 +EXPORT_SYMBOL_GPL vmlinux 0xa3a04602 btree_geo64 +EXPORT_SYMBOL_GPL vmlinux 0xa3ac2527 platform_get_irq_optional +EXPORT_SYMBOL_GPL vmlinux 0xa3b958ce reset_hung_task_detector +EXPORT_SYMBOL_GPL vmlinux 0xa3bdc6a6 fwnode_property_read_string_array +EXPORT_SYMBOL_GPL vmlinux 0xa3c2214a devm_clk_bulk_get_all +EXPORT_SYMBOL_GPL vmlinux 0xa3c33aea scsi_dh_activate +EXPORT_SYMBOL_GPL vmlinux 0xa3cb10de devm_kmemdup +EXPORT_SYMBOL_GPL vmlinux 0xa3e8a672 tpm_get_timeouts +EXPORT_SYMBOL_GPL vmlinux 0xa3ece414 freezer_cgrp_subsys_enabled_key +EXPORT_SYMBOL_GPL vmlinux 0xa3f12f69 __crypto_xor +EXPORT_SYMBOL_GPL vmlinux 0xa40029b3 nvme_unfreeze +EXPORT_SYMBOL_GPL vmlinux 0xa4031b7f sfp_parse_port +EXPORT_SYMBOL_GPL vmlinux 0xa410a295 devlink_region_destroy +EXPORT_SYMBOL_GPL vmlinux 0xa41c0da2 do_splice_from +EXPORT_SYMBOL_GPL vmlinux 0xa41e2e73 cpuidle_poll_state_init +EXPORT_SYMBOL_GPL vmlinux 0xa44a1307 interval_tree_iter_first +EXPORT_SYMBOL_GPL vmlinux 0xa44d694c pm_genpd_syscore_poweroff +EXPORT_SYMBOL_GPL vmlinux 0xa452c297 hpet_mask_rtc_irq_bit +EXPORT_SYMBOL_GPL vmlinux 0xa45c7b90 stack_trace_print +EXPORT_SYMBOL_GPL vmlinux 0xa45e68fe shash_ahash_digest +EXPORT_SYMBOL_GPL vmlinux 0xa460871f sata_port_ops +EXPORT_SYMBOL_GPL vmlinux 0xa468a4b4 pci_create_slot +EXPORT_SYMBOL_GPL vmlinux 0xa46d54dd acpiphp_unregister_attention +EXPORT_SYMBOL_GPL vmlinux 0xa471107e pci_epc_mem_init +EXPORT_SYMBOL_GPL vmlinux 0xa471982d dm_table_set_type +EXPORT_SYMBOL_GPL vmlinux 0xa48196c8 kdb_poll_idx +EXPORT_SYMBOL_GPL vmlinux 0xa4830d3c usb_acpi_power_manageable +EXPORT_SYMBOL_GPL vmlinux 0xa4892a9b devm_request_free_mem_region +EXPORT_SYMBOL_GPL vmlinux 0xa497a832 class_create_file_ns +EXPORT_SYMBOL_GPL vmlinux 0xa497afa0 platform_device_alloc +EXPORT_SYMBOL_GPL vmlinux 0xa497d3c0 sk_set_peek_off +EXPORT_SYMBOL_GPL vmlinux 0xa4a18fed __vfs_setxattr_noperm +EXPORT_SYMBOL_GPL vmlinux 0xa4ab7c1c ring_buffer_overruns +EXPORT_SYMBOL_GPL vmlinux 0xa4b07fe7 ring_buffer_change_overwrite +EXPORT_SYMBOL_GPL vmlinux 0xa4cffc15 transport_class_unregister +EXPORT_SYMBOL_GPL vmlinux 0xa4e59b15 sched_setscheduler_nocheck +EXPORT_SYMBOL_GPL vmlinux 0xa4f51226 subsys_virtual_register +EXPORT_SYMBOL_GPL vmlinux 0xa50335f4 sbitmap_finish_wait +EXPORT_SYMBOL_GPL vmlinux 0xa51952eb is_current_mnt_ns +EXPORT_SYMBOL_GPL vmlinux 0xa51bc818 __class_register +EXPORT_SYMBOL_GPL vmlinux 0xa51d097e tpm_tis_core_init +EXPORT_SYMBOL_GPL vmlinux 0xa525318d spi_mem_dirmap_read +EXPORT_SYMBOL_GPL vmlinux 0xa531471e clk_save_context +EXPORT_SYMBOL_GPL vmlinux 0xa53553b6 blk_clear_pm_only +EXPORT_SYMBOL_GPL vmlinux 0xa538b7f0 tcp_twsk_unique +EXPORT_SYMBOL_GPL vmlinux 0xa53b325e fb_deferred_io_fsync +EXPORT_SYMBOL_GPL vmlinux 0xa53b3490 irq_chip_eoi_parent +EXPORT_SYMBOL_GPL vmlinux 0xa5449bc2 gpiochip_remove_pin_ranges +EXPORT_SYMBOL_GPL vmlinux 0xa555a69d tpm_get_random +EXPORT_SYMBOL_GPL vmlinux 0xa557506d tcp_is_ulp_esp +EXPORT_SYMBOL_GPL vmlinux 0xa559b216 power_supply_powers +EXPORT_SYMBOL_GPL vmlinux 0xa5b3d295 pm_runtime_barrier +EXPORT_SYMBOL_GPL vmlinux 0xa5b5d26a debugfs_create_bool +EXPORT_SYMBOL_GPL vmlinux 0xa5bb7881 vmbus_recvpacket_raw +EXPORT_SYMBOL_GPL vmlinux 0xa5bda8a1 efi_capsule_supported +EXPORT_SYMBOL_GPL vmlinux 0xa5c6723d perf_event_update_userpage +EXPORT_SYMBOL_GPL vmlinux 0xa5d7c388 pstore_type_to_name +EXPORT_SYMBOL_GPL vmlinux 0xa5eecece pm_clk_remove +EXPORT_SYMBOL_GPL vmlinux 0xa5efbf4c async_synchronize_full +EXPORT_SYMBOL_GPL vmlinux 0xa601f870 vfs_readf +EXPORT_SYMBOL_GPL vmlinux 0xa6102d5d regulator_force_disable +EXPORT_SYMBOL_GPL vmlinux 0xa6138773 nvme_try_sched_reset +EXPORT_SYMBOL_GPL vmlinux 0xa62892c6 efivar_sysfs_list +EXPORT_SYMBOL_GPL vmlinux 0xa667b942 skcipher_walk_aead_encrypt +EXPORT_SYMBOL_GPL vmlinux 0xa673a4da devm_devfreq_event_add_edev +EXPORT_SYMBOL_GPL vmlinux 0xa6765766 acpi_dev_suspend +EXPORT_SYMBOL_GPL vmlinux 0xa67e9562 page_cache_sync_readahead +EXPORT_SYMBOL_GPL vmlinux 0xa6824f3f __tracepoint_br_fdb_external_learn_add +EXPORT_SYMBOL_GPL vmlinux 0xa68f2d27 devm_regulator_register +EXPORT_SYMBOL_GPL vmlinux 0xa68f9c13 mm_kobj +EXPORT_SYMBOL_GPL vmlinux 0xa6b06f65 ata_sff_queue_work +EXPORT_SYMBOL_GPL vmlinux 0xa6b21ef2 dpm_suspend_end +EXPORT_SYMBOL_GPL vmlinux 0xa6cdff1d usb_add_hcd +EXPORT_SYMBOL_GPL vmlinux 0xa6ce78a1 clk_hw_get_parent_by_index +EXPORT_SYMBOL_GPL vmlinux 0xa6dba0d2 iommu_detach_device +EXPORT_SYMBOL_GPL vmlinux 0xa6e1a69d kick_all_cpus_sync +EXPORT_SYMBOL_GPL vmlinux 0xa6f31bc8 badblocks_exit +EXPORT_SYMBOL_GPL vmlinux 0xa6f8efcf mnt_want_write +EXPORT_SYMBOL_GPL vmlinux 0xa709c835 fib6_info_destroy_rcu +EXPORT_SYMBOL_GPL vmlinux 0xa70c5352 serial8250_tx_chars +EXPORT_SYMBOL_GPL vmlinux 0xa70de739 sysfs_group_change_owner +EXPORT_SYMBOL_GPL vmlinux 0xa7127da7 mce_unregister_injector_chain +EXPORT_SYMBOL_GPL vmlinux 0xa7239d2d fib_rules_lookup +EXPORT_SYMBOL_GPL vmlinux 0xa726aeb0 iomap_swapfile_activate +EXPORT_SYMBOL_GPL vmlinux 0xa731f387 nl_table_lock +EXPORT_SYMBOL_GPL vmlinux 0xa7335b54 usb_reset_device +EXPORT_SYMBOL_GPL vmlinux 0xa738225c ack_all_badblocks +EXPORT_SYMBOL_GPL vmlinux 0xa73c788e perf_pmu_register +EXPORT_SYMBOL_GPL vmlinux 0xa73d463a usb_register_device_driver +EXPORT_SYMBOL_GPL vmlinux 0xa7572f0c gpiod_unexport +EXPORT_SYMBOL_GPL vmlinux 0xa7659efd nvdimm_blk_region_create +EXPORT_SYMBOL_GPL vmlinux 0xa7b32f7a fuse_dev_release +EXPORT_SYMBOL_GPL vmlinux 0xa7c35dff devm_device_remove_groups +EXPORT_SYMBOL_GPL vmlinux 0xa7e1746e dev_pm_domain_detach +EXPORT_SYMBOL_GPL vmlinux 0xa7f8d55d udp_tunnel_notify_add_rx_port +EXPORT_SYMBOL_GPL vmlinux 0xa7fa6b80 fwnode_get_next_parent +EXPORT_SYMBOL_GPL vmlinux 0xa7fa8dd4 udp4_lib_lookup +EXPORT_SYMBOL_GPL vmlinux 0xa7fc3403 cpufreq_driver_fast_switch +EXPORT_SYMBOL_GPL vmlinux 0xa803fa25 devfreq_get_devfreq_by_phandle +EXPORT_SYMBOL_GPL vmlinux 0xa826165a nf_checksum_partial +EXPORT_SYMBOL_GPL vmlinux 0xa826307a wbc_attach_and_unlock_inode +EXPORT_SYMBOL_GPL vmlinux 0xa82fb70a fib_new_table +EXPORT_SYMBOL_GPL vmlinux 0xa83eb94f acpi_dma_simple_xlate +EXPORT_SYMBOL_GPL vmlinux 0xa851973a raw_notifier_call_chain +EXPORT_SYMBOL_GPL vmlinux 0xa85c006f perf_event_read_value +EXPORT_SYMBOL_GPL vmlinux 0xa86b9fce serial8250_release_dma +EXPORT_SYMBOL_GPL vmlinux 0xa875d78f rio_mport_write_config_32 +EXPORT_SYMBOL_GPL vmlinux 0xa87a1d8a __rio_local_write_config_32 +EXPORT_SYMBOL_GPL vmlinux 0xa88f679c amd_iommu_is_attach_deferred +EXPORT_SYMBOL_GPL vmlinux 0xa89573d6 xfrm_output_resume +EXPORT_SYMBOL_GPL vmlinux 0xa89e1fc9 xdp_rxq_info_reg +EXPORT_SYMBOL_GPL vmlinux 0xa8b6b2a8 devm_regulator_bulk_get +EXPORT_SYMBOL_GPL vmlinux 0xa8bc1596 led_colors +EXPORT_SYMBOL_GPL vmlinux 0xa8be7968 find_asymmetric_key +EXPORT_SYMBOL_GPL vmlinux 0xa8bee666 inode_sb_list_add +EXPORT_SYMBOL_GPL vmlinux 0xa8c2e70f device_rename +EXPORT_SYMBOL_GPL vmlinux 0xa8ca351b md_new_event +EXPORT_SYMBOL_GPL vmlinux 0xa8cff782 devm_pinctrl_get +EXPORT_SYMBOL_GPL vmlinux 0xa8d2c2e5 udp_destruct_sock +EXPORT_SYMBOL_GPL vmlinux 0xa90c1107 tcp_reno_ssthresh +EXPORT_SYMBOL_GPL vmlinux 0xa910a95b vmbus_open +EXPORT_SYMBOL_GPL vmlinux 0xa9126bff hpet_set_rtc_irq_bit +EXPORT_SYMBOL_GPL vmlinux 0xa931f60e __netdev_watchdog_up +EXPORT_SYMBOL_GPL vmlinux 0xa9320d27 ktime_get_seconds +EXPORT_SYMBOL_GPL vmlinux 0xa96635ae console_drivers +EXPORT_SYMBOL_GPL vmlinux 0xa9712936 pm_runtime_force_resume +EXPORT_SYMBOL_GPL vmlinux 0xa9854364 umc_normaddr_to_sysaddr +EXPORT_SYMBOL_GPL vmlinux 0xa98f3c91 pci_slots_kset +EXPORT_SYMBOL_GPL vmlinux 0xa99ef899 devlink_fmsg_bool_pair_put +EXPORT_SYMBOL_GPL vmlinux 0xa9a2a7f3 crypto_unregister_template +EXPORT_SYMBOL_GPL vmlinux 0xa9abb6ba trace_get_event_file +EXPORT_SYMBOL_GPL vmlinux 0xa9bc8b74 module_mutex +EXPORT_SYMBOL_GPL vmlinux 0xa9cc05a8 pci_enable_ats +EXPORT_SYMBOL_GPL vmlinux 0xa9d15830 blk_mq_sched_free_hctx_data +EXPORT_SYMBOL_GPL vmlinux 0xa9d5fbbb rtnl_get_net_ns_capable +EXPORT_SYMBOL_GPL vmlinux 0xa9e18049 task_handoff_unregister +EXPORT_SYMBOL_GPL vmlinux 0xa9f7456b usb_hub_clear_tt_buffer +EXPORT_SYMBOL_GPL vmlinux 0xaa230f88 perf_unregister_guest_info_callbacks +EXPORT_SYMBOL_GPL vmlinux 0xaa328208 rio_lock_device +EXPORT_SYMBOL_GPL vmlinux 0xaa354ce9 mbox_controller_register +EXPORT_SYMBOL_GPL vmlinux 0xaa4978f7 dma_buf_put +EXPORT_SYMBOL_GPL vmlinux 0xaa6a50f9 __static_key_deferred_flush +EXPORT_SYMBOL_GPL vmlinux 0xaa878027 spi_statistics_add_transfer_stats +EXPORT_SYMBOL_GPL vmlinux 0xaaa918c9 ftrace_dump +EXPORT_SYMBOL_GPL vmlinux 0xaac8e912 inet6_csk_update_pmtu +EXPORT_SYMBOL_GPL vmlinux 0xaad806f6 trace_seq_path +EXPORT_SYMBOL_GPL vmlinux 0xaaff04cb tcp_sendpage_locked +EXPORT_SYMBOL_GPL vmlinux 0xab00d0e4 tcp_orphan_count +EXPORT_SYMBOL_GPL vmlinux 0xab18dabf devm_of_phy_provider_unregister +EXPORT_SYMBOL_GPL vmlinux 0xab1e0e93 hv_setup_kexec_handler +EXPORT_SYMBOL_GPL vmlinux 0xab207836 led_init_core +EXPORT_SYMBOL_GPL vmlinux 0xab3b7d07 uart_get_rs485_mode +EXPORT_SYMBOL_GPL vmlinux 0xab60e781 inet_ctl_sock_create +EXPORT_SYMBOL_GPL vmlinux 0xab6c8cf7 device_add_properties +EXPORT_SYMBOL_GPL vmlinux 0xab7962b9 sk_detach_filter +EXPORT_SYMBOL_GPL vmlinux 0xab7e28be find_get_pid +EXPORT_SYMBOL_GPL vmlinux 0xab9bd884 perf_register_guest_info_callbacks +EXPORT_SYMBOL_GPL vmlinux 0xaba3b627 pinctrl_put +EXPORT_SYMBOL_GPL vmlinux 0xabc298d0 intel_scu_ipc_unregister +EXPORT_SYMBOL_GPL vmlinux 0xabc640f3 list_lru_isolate +EXPORT_SYMBOL_GPL vmlinux 0xabf6ba31 devlink_dpipe_entry_ctx_append +EXPORT_SYMBOL_GPL vmlinux 0xabfcdbf7 spi_slave_abort +EXPORT_SYMBOL_GPL vmlinux 0xac01b8c0 tpm_pm_suspend +EXPORT_SYMBOL_GPL vmlinux 0xac02f91a ipv4_update_pmtu +EXPORT_SYMBOL_GPL vmlinux 0xac079798 isa_register_driver +EXPORT_SYMBOL_GPL vmlinux 0xac0dc274 register_user_hw_breakpoint +EXPORT_SYMBOL_GPL vmlinux 0xac42bbd5 ip_build_and_send_pkt +EXPORT_SYMBOL_GPL vmlinux 0xac4638b9 unregister_wide_hw_breakpoint +EXPORT_SYMBOL_GPL vmlinux 0xac7bb6c9 spi_mem_dirmap_create +EXPORT_SYMBOL_GPL vmlinux 0xac813f74 vfio_iommu_group_get +EXPORT_SYMBOL_GPL vmlinux 0xac8aea34 tcp_register_ulp +EXPORT_SYMBOL_GPL vmlinux 0xac97a8bb phy_package_leave +EXPORT_SYMBOL_GPL vmlinux 0xac9ddac5 devm_of_phy_get_by_index +EXPORT_SYMBOL_GPL vmlinux 0xacb35107 dbs_update +EXPORT_SYMBOL_GPL vmlinux 0xacb4d88c clk_rate_exclusive_put +EXPORT_SYMBOL_GPL vmlinux 0xace9223c rtnl_af_unregister +EXPORT_SYMBOL_GPL vmlinux 0xacedd89e devm_thermal_of_cooling_device_register +EXPORT_SYMBOL_GPL vmlinux 0xacf4a84f devm_phy_package_join +EXPORT_SYMBOL_GPL vmlinux 0xad0ad114 blk_rq_prep_clone +EXPORT_SYMBOL_GPL vmlinux 0xad0f2b6c unix_table_lock +EXPORT_SYMBOL_GPL vmlinux 0xad12086f ethnl_cable_test_result +EXPORT_SYMBOL_GPL vmlinux 0xad27bec6 icc_nodes_remove +EXPORT_SYMBOL_GPL vmlinux 0xad3579af inet6_hash_connect +EXPORT_SYMBOL_GPL vmlinux 0xad43341a pci_epf_alloc_space +EXPORT_SYMBOL_GPL vmlinux 0xad44d990 generic_online_page +EXPORT_SYMBOL_GPL vmlinux 0xad4e6259 remove_cpu +EXPORT_SYMBOL_GPL vmlinux 0xad5737fc efivar_init +EXPORT_SYMBOL_GPL vmlinux 0xad5f0017 perf_trace_buf_alloc +EXPORT_SYMBOL_GPL vmlinux 0xad645234 register_switchdev_notifier +EXPORT_SYMBOL_GPL vmlinux 0xad82dfc6 crypto_dequeue_request +EXPORT_SYMBOL_GPL vmlinux 0xad8ca0bd blkdev_read_iter +EXPORT_SYMBOL_GPL vmlinux 0xad95f722 devm_power_supply_register +EXPORT_SYMBOL_GPL vmlinux 0xad9db5f4 tick_nohz_dep_clear_task +EXPORT_SYMBOL_GPL vmlinux 0xad9fe2ac crypto_remove_spawns +EXPORT_SYMBOL_GPL vmlinux 0xada38766 dst_cache_destroy +EXPORT_SYMBOL_GPL vmlinux 0xadb33573 fuse_do_open +EXPORT_SYMBOL_GPL vmlinux 0xadc321d5 device_show_int +EXPORT_SYMBOL_GPL vmlinux 0xadda68ab vmbus_alloc_ring +EXPORT_SYMBOL_GPL vmlinux 0xaddfc0d3 scsi_eh_ready_devs +EXPORT_SYMBOL_GPL vmlinux 0xadf9699b pci_write_msi_msg +EXPORT_SYMBOL_GPL vmlinux 0xae1051b0 net_cls_cgrp_subsys_enabled_key +EXPORT_SYMBOL_GPL vmlinux 0xae2d4d20 __ftrace_vprintk +EXPORT_SYMBOL_GPL vmlinux 0xae39f80e dst_cache_init +EXPORT_SYMBOL_GPL vmlinux 0xae3aa894 dm_internal_resume_fast +EXPORT_SYMBOL_GPL vmlinux 0xae4b2950 pci_pri_supported +EXPORT_SYMBOL_GPL vmlinux 0xae62abe9 __hwspin_unlock +EXPORT_SYMBOL_GPL vmlinux 0xae69b1c1 usermodehelper_read_unlock +EXPORT_SYMBOL_GPL vmlinux 0xae7c231d mpi_cmp +EXPORT_SYMBOL_GPL vmlinux 0xae91205a subsys_dev_iter_init +EXPORT_SYMBOL_GPL vmlinux 0xae951b59 devm_rtc_device_register +EXPORT_SYMBOL_GPL vmlinux 0xae9653bc usb_hcd_unmap_urb_setup_for_dma +EXPORT_SYMBOL_GPL vmlinux 0xaeb12315 find_iova +EXPORT_SYMBOL_GPL vmlinux 0xaeb1725e netlink_strict_get_check +EXPORT_SYMBOL_GPL vmlinux 0xaeb6f0be __cpuhp_state_add_instance +EXPORT_SYMBOL_GPL vmlinux 0xaebb2ac9 devfreq_event_remove_edev +EXPORT_SYMBOL_GPL vmlinux 0xaecb1776 update_time +EXPORT_SYMBOL_GPL vmlinux 0xaedaebbc acpi_bind_one +EXPORT_SYMBOL_GPL vmlinux 0xaef3001c device_destroy +EXPORT_SYMBOL_GPL vmlinux 0xaf076aec nd_fletcher64 +EXPORT_SYMBOL_GPL vmlinux 0xaf0b6ba7 blkg_rwstat_init +EXPORT_SYMBOL_GPL vmlinux 0xaf3b36a0 regulator_get_linear_step +EXPORT_SYMBOL_GPL vmlinux 0xaf4014ff usb_amd_quirk_pll_check +EXPORT_SYMBOL_GPL vmlinux 0xaf793668 __alloc_percpu_gfp +EXPORT_SYMBOL_GPL vmlinux 0xaf89d3c0 kill_pid_usb_asyncio +EXPORT_SYMBOL_GPL vmlinux 0xaf91f7e7 rt_mutex_lock_interruptible +EXPORT_SYMBOL_GPL vmlinux 0xaf9778bf __spi_register_driver +EXPORT_SYMBOL_GPL vmlinux 0xaf9bfe8d dev_pm_opp_unregister_set_opp_helper +EXPORT_SYMBOL_GPL vmlinux 0xaf9eadd6 put_pid_ns +EXPORT_SYMBOL_GPL vmlinux 0xafa43e25 create_signature +EXPORT_SYMBOL_GPL vmlinux 0xafac4278 fixup_user_fault +EXPORT_SYMBOL_GPL vmlinux 0xafc600d1 acpi_pci_find_root +EXPORT_SYMBOL_GPL vmlinux 0xafc80b85 sfp_register_socket +EXPORT_SYMBOL_GPL vmlinux 0xafd9c55b restore_online_page_callback +EXPORT_SYMBOL_GPL vmlinux 0xafddd545 ata_id_c_string +EXPORT_SYMBOL_GPL vmlinux 0xafec1063 tps65912_device_exit +EXPORT_SYMBOL_GPL vmlinux 0xb0025d16 dax_iomap_rw +EXPORT_SYMBOL_GPL vmlinux 0xb0075a1f task_active_pid_ns +EXPORT_SYMBOL_GPL vmlinux 0xb018eba5 crypto_grab_skcipher +EXPORT_SYMBOL_GPL vmlinux 0xb01ebe07 usb_hc_died +EXPORT_SYMBOL_GPL vmlinux 0xb023d2a6 uprobe_register_refctr +EXPORT_SYMBOL_GPL vmlinux 0xb0747ed2 rcu_cpu_stall_suppress +EXPORT_SYMBOL_GPL vmlinux 0xb077e70a clk_unprepare +EXPORT_SYMBOL_GPL vmlinux 0xb08f57cc regulator_enable_regmap +EXPORT_SYMBOL_GPL vmlinux 0xb0998410 switchdev_port_attr_set +EXPORT_SYMBOL_GPL vmlinux 0xb0b85f47 ring_buffer_iter_reset +EXPORT_SYMBOL_GPL vmlinux 0xb0d1656c gpio_free_array +EXPORT_SYMBOL_GPL vmlinux 0xb0dffaef ping_err +EXPORT_SYMBOL_GPL vmlinux 0xb0ed4e3d pm_clk_add_notifier +EXPORT_SYMBOL_GPL vmlinux 0xb0f2e813 component_add +EXPORT_SYMBOL_GPL vmlinux 0xb0fbb722 clk_fractional_divider_ops +EXPORT_SYMBOL_GPL vmlinux 0xb10d964d devlink_fmsg_pair_nest_end +EXPORT_SYMBOL_GPL vmlinux 0xb11b21ad hwmon_device_unregister +EXPORT_SYMBOL_GPL vmlinux 0xb11d9000 tty_dev_name_to_number +EXPORT_SYMBOL_GPL vmlinux 0xb12849a4 crypto_stats_compress +EXPORT_SYMBOL_GPL vmlinux 0xb13e2e47 to_nvdimm_bus +EXPORT_SYMBOL_GPL vmlinux 0xb1425b32 dm_table_add_target_callbacks +EXPORT_SYMBOL_GPL vmlinux 0xb14ae90e perf_event_enable +EXPORT_SYMBOL_GPL vmlinux 0xb1506044 crypto_ahash_digest +EXPORT_SYMBOL_GPL vmlinux 0xb157d6a4 sched_trace_rq_cpu +EXPORT_SYMBOL_GPL vmlinux 0xb1647fc2 devlink_info_version_running_put +EXPORT_SYMBOL_GPL vmlinux 0xb16486ff gov_update_cpu_data +EXPORT_SYMBOL_GPL vmlinux 0xb172ffac efivars_sysfs_init +EXPORT_SYMBOL_GPL vmlinux 0xb181ab98 tty_port_register_device_serdev +EXPORT_SYMBOL_GPL vmlinux 0xb18429eb suspend_device_irqs +EXPORT_SYMBOL_GPL vmlinux 0xb190ab20 devm_regmap_field_alloc +EXPORT_SYMBOL_GPL vmlinux 0xb19c5fe7 ima_file_check +EXPORT_SYMBOL_GPL vmlinux 0xb1a7139d dax_copy_from_iter +EXPORT_SYMBOL_GPL vmlinux 0xb1aff5a1 ip_tunnel_rcv +EXPORT_SYMBOL_GPL vmlinux 0xb1bed25d dpm_resume_start +EXPORT_SYMBOL_GPL vmlinux 0xb1c8e7e2 phy_pm_runtime_put_sync +EXPORT_SYMBOL_GPL vmlinux 0xb1dabc1e unregister_ftrace_export +EXPORT_SYMBOL_GPL vmlinux 0xb1e25684 __trace_bputs +EXPORT_SYMBOL_GPL vmlinux 0xb1ef0548 ftrace_set_filter +EXPORT_SYMBOL_GPL vmlinux 0xb1f221b2 simple_attr_write +EXPORT_SYMBOL_GPL vmlinux 0xb2035e52 ata_sff_tf_read +EXPORT_SYMBOL_GPL vmlinux 0xb2055350 crypto_stats_rng_seed +EXPORT_SYMBOL_GPL vmlinux 0xb20a92d6 device_property_read_u64_array +EXPORT_SYMBOL_GPL vmlinux 0xb2210d64 reset_control_deassert +EXPORT_SYMBOL_GPL vmlinux 0xb2405efc secure_tcp_seq +EXPORT_SYMBOL_GPL vmlinux 0xb26a1add elfcorehdr_addr +EXPORT_SYMBOL_GPL vmlinux 0xb27ddf7a md_stop +EXPORT_SYMBOL_GPL vmlinux 0xb27eb6e2 __udp_enqueue_schedule_skb +EXPORT_SYMBOL_GPL vmlinux 0xb27f13c5 pci_epc_destroy +EXPORT_SYMBOL_GPL vmlinux 0xb28014db wm8997_i2c_regmap +EXPORT_SYMBOL_GPL vmlinux 0xb28237b1 handle_fasteoi_nmi +EXPORT_SYMBOL_GPL vmlinux 0xb28e696a rio_request_inb_mbox +EXPORT_SYMBOL_GPL vmlinux 0xb29533ee zs_malloc +EXPORT_SYMBOL_GPL vmlinux 0xb2b4b084 driver_create_file +EXPORT_SYMBOL_GPL vmlinux 0xb2b8ebfd perf_event_create_kernel_counter +EXPORT_SYMBOL_GPL vmlinux 0xb2c1732e rcu_gp_set_torture_wait +EXPORT_SYMBOL_GPL vmlinux 0xb2c2d46f devlink_dpipe_table_register +EXPORT_SYMBOL_GPL vmlinux 0xb2de4cf2 clk_gate_ops +EXPORT_SYMBOL_GPL vmlinux 0xb2e764e8 suspend_valid_only_mem +EXPORT_SYMBOL_GPL vmlinux 0xb2f52c6e strp_unpause +EXPORT_SYMBOL_GPL vmlinux 0xb307c909 devlink_fmsg_u64_pair_put +EXPORT_SYMBOL_GPL vmlinux 0xb311b99a __hvc_resize +EXPORT_SYMBOL_GPL vmlinux 0xb31faa89 dev_pm_opp_attach_genpd +EXPORT_SYMBOL_GPL vmlinux 0xb3253ed9 hpet_rtc_timer_init +EXPORT_SYMBOL_GPL vmlinux 0xb3351c6c rhashtable_walk_next +EXPORT_SYMBOL_GPL vmlinux 0xb336f5ea dpm_for_each_dev +EXPORT_SYMBOL_GPL vmlinux 0xb353f283 usb_match_id +EXPORT_SYMBOL_GPL vmlinux 0xb35fb193 thermal_cooling_device_register +EXPORT_SYMBOL_GPL vmlinux 0xb3697565 cpuidle_enable_device +EXPORT_SYMBOL_GPL vmlinux 0xb3b964a7 ata_sff_data_xfer32 +EXPORT_SYMBOL_GPL vmlinux 0xb3c5ecd9 mm_account_pinned_pages +EXPORT_SYMBOL_GPL vmlinux 0xb3cfe0f9 fib6_check_nexthop +EXPORT_SYMBOL_GPL vmlinux 0xb3e9b2e4 sysfs_unbreak_active_protection +EXPORT_SYMBOL_GPL vmlinux 0xb407c1df percpu_ref_switch_to_atomic +EXPORT_SYMBOL_GPL vmlinux 0xb436c590 security_path_symlink +EXPORT_SYMBOL_GPL vmlinux 0xb43ef65c balloon_page_dequeue +EXPORT_SYMBOL_GPL vmlinux 0xb43f9365 ktime_get +EXPORT_SYMBOL_GPL vmlinux 0xb44e18ea audit_enabled +EXPORT_SYMBOL_GPL vmlinux 0xb45a2340 find_module +EXPORT_SYMBOL_GPL vmlinux 0xb47885d3 pci_scan_child_bus +EXPORT_SYMBOL_GPL vmlinux 0xb480d432 sysfs_remove_file_ns +EXPORT_SYMBOL_GPL vmlinux 0xb48a0619 dev_dax_probe +EXPORT_SYMBOL_GPL vmlinux 0xb48d4d84 firmware_request_platform +EXPORT_SYMBOL_GPL vmlinux 0xb48f0638 software_node_register +EXPORT_SYMBOL_GPL vmlinux 0xb499aad2 fwnode_graph_get_remote_port_parent +EXPORT_SYMBOL_GPL vmlinux 0xb49bf14b spi_mem_adjust_op_size +EXPORT_SYMBOL_GPL vmlinux 0xb4ac1654 edac_get_sysfs_subsys +EXPORT_SYMBOL_GPL vmlinux 0xb4b4db7f irq_create_direct_mapping +EXPORT_SYMBOL_GPL vmlinux 0xb4b97c90 pvclock_gtod_register_notifier +EXPORT_SYMBOL_GPL vmlinux 0xb4dbe228 ref_module +EXPORT_SYMBOL_GPL vmlinux 0xb4e76704 regulator_get_mode +EXPORT_SYMBOL_GPL vmlinux 0xb4ea7cf7 kgdb_connected +EXPORT_SYMBOL_GPL vmlinux 0xb4eda0da ring_buffer_event_length +EXPORT_SYMBOL_GPL vmlinux 0xb4ff6bb6 hrtimer_active +EXPORT_SYMBOL_GPL vmlinux 0xb501b2df nd_cmd_dimm_desc +EXPORT_SYMBOL_GPL vmlinux 0xb510c250 raw_v4_hashinfo +EXPORT_SYMBOL_GPL vmlinux 0xb51be6b1 ip_tunnel_change_mtu +EXPORT_SYMBOL_GPL vmlinux 0xb51fbd64 edac_op_state +EXPORT_SYMBOL_GPL vmlinux 0xb520eb79 btree_merge +EXPORT_SYMBOL_GPL vmlinux 0xb520f5c5 genphy_c45_read_mdix +EXPORT_SYMBOL_GPL vmlinux 0xb548de0d ata_sas_sync_probe +EXPORT_SYMBOL_GPL vmlinux 0xb5786cee dev_pm_qos_flags +EXPORT_SYMBOL_GPL vmlinux 0xb57a3c9c devm_irq_setup_generic_chip +EXPORT_SYMBOL_GPL vmlinux 0xb58a8dab pci_epf_create +EXPORT_SYMBOL_GPL vmlinux 0xb593f70a register_pernet_subsys +EXPORT_SYMBOL_GPL vmlinux 0xb598b272 blk_mq_freeze_queue +EXPORT_SYMBOL_GPL vmlinux 0xb5a8c226 acpi_gsi_to_irq +EXPORT_SYMBOL_GPL vmlinux 0xb5c86824 pid_vnr +EXPORT_SYMBOL_GPL vmlinux 0xb5d0c789 crypto_stats_ahash_final +EXPORT_SYMBOL_GPL vmlinux 0xb5dadb30 irq_create_of_mapping +EXPORT_SYMBOL_GPL vmlinux 0xb5dbf2cf dev_pm_opp_put +EXPORT_SYMBOL_GPL vmlinux 0xb5e88934 tcp_sendmsg_locked +EXPORT_SYMBOL_GPL vmlinux 0xb60049ca regulator_bulk_enable +EXPORT_SYMBOL_GPL vmlinux 0xb60c965c virtqueue_get_vring_size +EXPORT_SYMBOL_GPL vmlinux 0xb60dbb53 blk_stat_enable_accounting +EXPORT_SYMBOL_GPL vmlinux 0xb610e386 device_remove_file +EXPORT_SYMBOL_GPL vmlinux 0xb6200bfc memremap_pages +EXPORT_SYMBOL_GPL vmlinux 0xb6261484 register_die_notifier +EXPORT_SYMBOL_GPL vmlinux 0xb6787346 sfp_unregister_socket +EXPORT_SYMBOL_GPL vmlinux 0xb6888188 klp_shadow_get_or_alloc +EXPORT_SYMBOL_GPL vmlinux 0xb69efb55 led_trigger_read +EXPORT_SYMBOL_GPL vmlinux 0xb6b9b596 dev_pm_domain_attach_by_id +EXPORT_SYMBOL_GPL vmlinux 0xb6c5a6a8 switchdev_handle_port_attr_set +EXPORT_SYMBOL_GPL vmlinux 0xb6c5e614 acpi_processor_evaluate_cst +EXPORT_SYMBOL_GPL vmlinux 0xb6d1813c user_describe +EXPORT_SYMBOL_GPL vmlinux 0xb6e6d99d clk_disable +EXPORT_SYMBOL_GPL vmlinux 0xb702838b alloc_iova +EXPORT_SYMBOL_GPL vmlinux 0xb71ccb75 acpi_pci_check_ejectable +EXPORT_SYMBOL_GPL vmlinux 0xb732484a gpiochip_generic_request +EXPORT_SYMBOL_GPL vmlinux 0xb7329c06 clk_set_phase +EXPORT_SYMBOL_GPL vmlinux 0xb73713d7 nvmem_add_cell_lookups +EXPORT_SYMBOL_GPL vmlinux 0xb7459295 devfreq_event_get_event +EXPORT_SYMBOL_GPL vmlinux 0xb74adb04 ping_get_port +EXPORT_SYMBOL_GPL vmlinux 0xb75041d1 hv_stimer_legacy_init +EXPORT_SYMBOL_GPL vmlinux 0xb76a0163 dmaengine_desc_set_metadata_len +EXPORT_SYMBOL_GPL vmlinux 0xb76ecd1e nf_queue_entry_get_refs +EXPORT_SYMBOL_GPL vmlinux 0xb78853b6 usb_hcd_pci_pm_ops +EXPORT_SYMBOL_GPL vmlinux 0xb7892f51 xhci_resume +EXPORT_SYMBOL_GPL vmlinux 0xb78a3094 ata_host_init +EXPORT_SYMBOL_GPL vmlinux 0xb790d31a usb_enable_lpm +EXPORT_SYMBOL_GPL vmlinux 0xb7a387fc synchronize_rcu_tasks_rude +EXPORT_SYMBOL_GPL vmlinux 0xb7b7e81e dev_fill_metadata_dst +EXPORT_SYMBOL_GPL vmlinux 0xb7c69a63 unregister_vmap_purge_notifier +EXPORT_SYMBOL_GPL vmlinux 0xb7d48eca crypto_stats_kpp_generate_public_key +EXPORT_SYMBOL_GPL vmlinux 0xb7d7c12e hpet_set_alarm_time +EXPORT_SYMBOL_GPL vmlinux 0xb7ea705e nvmem_cell_read_u16 +EXPORT_SYMBOL_GPL vmlinux 0xb7ed32e9 crypto_type_has_alg +EXPORT_SYMBOL_GPL vmlinux 0xb7f73ef8 xas_init_marks +EXPORT_SYMBOL_GPL vmlinux 0xb7f990e9 rht_bucket_nested +EXPORT_SYMBOL_GPL vmlinux 0xb7ff424d get_governor_parent_kobj +EXPORT_SYMBOL_GPL vmlinux 0xb7ffbce5 dev_pm_opp_get_opp_table +EXPORT_SYMBOL_GPL vmlinux 0xb8027856 usb_enable_autosuspend +EXPORT_SYMBOL_GPL vmlinux 0xb805eeb0 kthread_data +EXPORT_SYMBOL_GPL vmlinux 0xb80e2ba9 to_software_node +EXPORT_SYMBOL_GPL vmlinux 0xb80e5ed1 dm_device_name +EXPORT_SYMBOL_GPL vmlinux 0xb8114bbd __page_file_index +EXPORT_SYMBOL_GPL vmlinux 0xb812de86 ata_bmdma_error_handler +EXPORT_SYMBOL_GPL vmlinux 0xb815f4dd fib_nl_delrule +EXPORT_SYMBOL_GPL vmlinux 0xb8212341 timecounter_cyc2time +EXPORT_SYMBOL_GPL vmlinux 0xb8273d0b __wake_up_sync +EXPORT_SYMBOL_GPL vmlinux 0xb82df74e skb_cow_data +EXPORT_SYMBOL_GPL vmlinux 0xb8392d38 inet_hash_connect +EXPORT_SYMBOL_GPL vmlinux 0xb84121dc pci_epc_start +EXPORT_SYMBOL_GPL vmlinux 0xb847585f is_hash_blacklisted +EXPORT_SYMBOL_GPL vmlinux 0xb854bd8e phy_basic_t1_features +EXPORT_SYMBOL_GPL vmlinux 0xb857ef11 devlink_dpipe_headers_unregister +EXPORT_SYMBOL_GPL vmlinux 0xb861c8f7 virtio_config_enable +EXPORT_SYMBOL_GPL vmlinux 0xb87f67e5 dev_pm_opp_get_max_clock_latency +EXPORT_SYMBOL_GPL vmlinux 0xb889f0e1 __acpi_node_get_property_reference +EXPORT_SYMBOL_GPL vmlinux 0xb88dbfce irq_set_irqchip_state +EXPORT_SYMBOL_GPL vmlinux 0xb89e69b1 jump_label_update_timeout +EXPORT_SYMBOL_GPL vmlinux 0xb89ef7d3 ata_link_next +EXPORT_SYMBOL_GPL vmlinux 0xb8b2b1f7 mce_register_decode_chain +EXPORT_SYMBOL_GPL vmlinux 0xb8cd3a7f nf_logger_put +EXPORT_SYMBOL_GPL vmlinux 0xb8d51846 setup_udp_tunnel_sock +EXPORT_SYMBOL_GPL vmlinux 0xb8f11603 idr_alloc +EXPORT_SYMBOL_GPL vmlinux 0xb8fca981 driver_for_each_device +EXPORT_SYMBOL_GPL vmlinux 0xb900642d device_set_of_node_from_dev +EXPORT_SYMBOL_GPL vmlinux 0xb90925e7 devlink_resource_occ_get_register +EXPORT_SYMBOL_GPL vmlinux 0xb912560d static_key_disable +EXPORT_SYMBOL_GPL vmlinux 0xb9274d05 devlink_trap_groups_unregister +EXPORT_SYMBOL_GPL vmlinux 0xb934aa65 cs47l24_spi_regmap +EXPORT_SYMBOL_GPL vmlinux 0xb9382386 ping_close +EXPORT_SYMBOL_GPL vmlinux 0xb95559bc housekeeping_any_cpu +EXPORT_SYMBOL_GPL vmlinux 0xb962e6f2 dma_wait_for_async_tx +EXPORT_SYMBOL_GPL vmlinux 0xb9681621 xdp_do_flush +EXPORT_SYMBOL_GPL vmlinux 0xb9a7947c devlink_port_attrs_pci_vf_set +EXPORT_SYMBOL_GPL vmlinux 0xb9b9df41 usb_amd_dev_put +EXPORT_SYMBOL_GPL vmlinux 0xb9c0b8a1 ata_sff_busy_sleep +EXPORT_SYMBOL_GPL vmlinux 0xb9c16f51 hv_max_vp_index +EXPORT_SYMBOL_GPL vmlinux 0xb9c425de register_syscore_ops +EXPORT_SYMBOL_GPL vmlinux 0xb9d025c9 llist_del_first +EXPORT_SYMBOL_GPL vmlinux 0xb9d18b78 usb_choose_configuration +EXPORT_SYMBOL_GPL vmlinux 0xb9d61869 splice_to_pipe +EXPORT_SYMBOL_GPL vmlinux 0xb9f89246 trace_seq_vprintf +EXPORT_SYMBOL_GPL vmlinux 0xba01ec83 hv_stimer_global_cleanup +EXPORT_SYMBOL_GPL vmlinux 0xba0bbb8d debugfs_create_atomic_t +EXPORT_SYMBOL_GPL vmlinux 0xba109bd5 thermal_cooling_device_unregister +EXPORT_SYMBOL_GPL vmlinux 0xba1c72f1 crypto_stats_kpp_set_secret +EXPORT_SYMBOL_GPL vmlinux 0xba220db7 __wake_up_sync_key +EXPORT_SYMBOL_GPL vmlinux 0xba24f082 validate_xmit_xfrm +EXPORT_SYMBOL_GPL vmlinux 0xba2b7f64 cpufreq_generic_get +EXPORT_SYMBOL_GPL vmlinux 0xba2bbf78 devlink_sb_unregister +EXPORT_SYMBOL_GPL vmlinux 0xba2bd125 phy_gbit_fibre_features +EXPORT_SYMBOL_GPL vmlinux 0xba374a4f set_secondary_fwnode +EXPORT_SYMBOL_GPL vmlinux 0xba377ab8 blk_revalidate_disk_zones +EXPORT_SYMBOL_GPL vmlinux 0xba3eb893 efivar_entry_remove +EXPORT_SYMBOL_GPL vmlinux 0xba4b5be9 virtqueue_get_buf_ctx +EXPORT_SYMBOL_GPL vmlinux 0xba527781 component_master_del +EXPORT_SYMBOL_GPL vmlinux 0xba7c7c0e driver_remove_file +EXPORT_SYMBOL_GPL vmlinux 0xba984d9b acpi_ec_remove_query_handler +EXPORT_SYMBOL_GPL vmlinux 0xbaa4be40 platform_add_devices +EXPORT_SYMBOL_GPL vmlinux 0xbaa79f01 ata_qc_get_active +EXPORT_SYMBOL_GPL vmlinux 0xbab2b60b thermal_remove_hwmon_sysfs +EXPORT_SYMBOL_GPL vmlinux 0xbac171f9 fsnotify_alloc_group +EXPORT_SYMBOL_GPL vmlinux 0xbac50268 of_icc_xlate_onecell +EXPORT_SYMBOL_GPL vmlinux 0xbaf6696f public_key_subtype +EXPORT_SYMBOL_GPL vmlinux 0xbaf6850c fsnotify_wait_marks_destroyed +EXPORT_SYMBOL_GPL vmlinux 0xbaf9d785 __tss_limit_invalid +EXPORT_SYMBOL_GPL vmlinux 0xbb0ab47b debug_locks +EXPORT_SYMBOL_GPL vmlinux 0xbb1c62d4 vfs_setxattr +EXPORT_SYMBOL_GPL vmlinux 0xbb210f07 led_trigger_blink_oneshot +EXPORT_SYMBOL_GPL vmlinux 0xbb425d21 phy_pm_runtime_get +EXPORT_SYMBOL_GPL vmlinux 0xbb446cb1 usb_deregister_device_driver +EXPORT_SYMBOL_GPL vmlinux 0xbb5a2cfb user_update +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 0xbb71dda9 blk_mq_quiesce_queue +EXPORT_SYMBOL_GPL vmlinux 0xbb7a942b tpm_chip_unregister +EXPORT_SYMBOL_GPL vmlinux 0xbb80456c scsi_dh_attach +EXPORT_SYMBOL_GPL vmlinux 0xbb848e19 ip6_local_out +EXPORT_SYMBOL_GPL vmlinux 0xbb892f55 wm5110_spi_regmap +EXPORT_SYMBOL_GPL vmlinux 0xbb8ac3f2 pci_epc_get +EXPORT_SYMBOL_GPL vmlinux 0xbb93eec5 ioasid_alloc +EXPORT_SYMBOL_GPL vmlinux 0xbb9919a2 percpu_free_rwsem +EXPORT_SYMBOL_GPL vmlinux 0xbb9bc645 sata_scr_read +EXPORT_SYMBOL_GPL vmlinux 0xbb9f477e kset_create_and_add +EXPORT_SYMBOL_GPL vmlinux 0xbbad75bb pci_hp_add_bridge +EXPORT_SYMBOL_GPL vmlinux 0xbbb98859 edid_info +EXPORT_SYMBOL_GPL vmlinux 0xbbbaba14 blk_mq_virtio_map_queues +EXPORT_SYMBOL_GPL vmlinux 0xbbc300ae dmaengine_unmap_put +EXPORT_SYMBOL_GPL vmlinux 0xbbe501e0 crypto_alloc_acomp +EXPORT_SYMBOL_GPL vmlinux 0xbbec8a65 fixed_phy_set_link_update +EXPORT_SYMBOL_GPL vmlinux 0xbbfce443 clean_acked_data_enable +EXPORT_SYMBOL_GPL vmlinux 0xbc04bd46 x86_platform +EXPORT_SYMBOL_GPL vmlinux 0xbc079166 platform_get_irq +EXPORT_SYMBOL_GPL vmlinux 0xbc2bc78b regulator_set_pull_down_regmap +EXPORT_SYMBOL_GPL vmlinux 0xbc3589f1 lwtunnel_fill_encap +EXPORT_SYMBOL_GPL vmlinux 0xbc60dc37 cpufreq_show_cpus +EXPORT_SYMBOL_GPL vmlinux 0xbc6ba72a vfs_removexattr +EXPORT_SYMBOL_GPL vmlinux 0xbc6bec66 free_percpu_irq +EXPORT_SYMBOL_GPL vmlinux 0xbc710d93 sysfs_add_link_to_group +EXPORT_SYMBOL_GPL vmlinux 0xbc7e74e7 clk_hw_get_parent +EXPORT_SYMBOL_GPL vmlinux 0xbc86880b gov_attr_set_get +EXPORT_SYMBOL_GPL vmlinux 0xbc9b8588 ehci_cf_port_reset_rwsem +EXPORT_SYMBOL_GPL vmlinux 0xbca68d5e devlink_register +EXPORT_SYMBOL_GPL vmlinux 0xbcb838a1 amd_flush_garts +EXPORT_SYMBOL_GPL vmlinux 0xbcbc2576 devlink_resources_unregister +EXPORT_SYMBOL_GPL vmlinux 0xbcc15e75 ktime_get_coarse_with_offset +EXPORT_SYMBOL_GPL vmlinux 0xbccbe817 cpuidle_get_cpu_driver +EXPORT_SYMBOL_GPL vmlinux 0xbccc120a cpufreq_cpu_put +EXPORT_SYMBOL_GPL vmlinux 0xbccca9c1 find_symbol +EXPORT_SYMBOL_GPL vmlinux 0xbccfd4d8 register_oldmem_pfn_is_ram +EXPORT_SYMBOL_GPL vmlinux 0xbcdb1070 unix_outq_len +EXPORT_SYMBOL_GPL vmlinux 0xbcdc42ca devlink_reload_disable +EXPORT_SYMBOL_GPL vmlinux 0xbcdd5b99 iommu_group_set_name +EXPORT_SYMBOL_GPL vmlinux 0xbce8cb80 iterate_mounts +EXPORT_SYMBOL_GPL vmlinux 0xbcf1f0e6 zs_create_pool +EXPORT_SYMBOL_GPL vmlinux 0xbd031e08 pci_reset_function +EXPORT_SYMBOL_GPL vmlinux 0xbd051f4e rcu_read_unlock_trace_special +EXPORT_SYMBOL_GPL vmlinux 0xbd336d00 nvme_disable_ctrl +EXPORT_SYMBOL_GPL vmlinux 0xbd3fe1e3 disable_hardirq +EXPORT_SYMBOL_GPL vmlinux 0xbd4f3e4c badblocks_show +EXPORT_SYMBOL_GPL vmlinux 0xbd52bbf6 devm_regulator_get_exclusive +EXPORT_SYMBOL_GPL vmlinux 0xbd654943 device_bind_driver +EXPORT_SYMBOL_GPL vmlinux 0xbd796c60 virtio_device_restore +EXPORT_SYMBOL_GPL vmlinux 0xbd7d4828 gpiod_set_debounce +EXPORT_SYMBOL_GPL vmlinux 0xbd7d8323 led_trigger_blink +EXPORT_SYMBOL_GPL vmlinux 0xbd95540d init_user_ns +EXPORT_SYMBOL_GPL vmlinux 0xbd99ec13 icc_set_tag +EXPORT_SYMBOL_GPL vmlinux 0xbda31363 devm_devfreq_event_remove_edev +EXPORT_SYMBOL_GPL vmlinux 0xbda85d1e attribute_container_unregister +EXPORT_SYMBOL_GPL vmlinux 0xbdb4a294 dev_pm_domain_attach_by_name +EXPORT_SYMBOL_GPL vmlinux 0xbdc34d72 genphy_c45_an_disable_aneg +EXPORT_SYMBOL_GPL vmlinux 0xbdc859af pm_runtime_allow +EXPORT_SYMBOL_GPL vmlinux 0xbdd325b0 da9052_enable_irq +EXPORT_SYMBOL_GPL vmlinux 0xbe13a32d usb_interrupt_msg +EXPORT_SYMBOL_GPL vmlinux 0xbe37774c regcache_mark_dirty +EXPORT_SYMBOL_GPL vmlinux 0xbe421718 tpmm_chip_alloc +EXPORT_SYMBOL_GPL vmlinux 0xbe5c888b crypto_chain +EXPORT_SYMBOL_GPL vmlinux 0xbe687e88 wake_up_all_idle_cpus +EXPORT_SYMBOL_GPL vmlinux 0xbe971546 alloc_vm_area +EXPORT_SYMBOL_GPL vmlinux 0xbe9a83d5 dw_pcie_write +EXPORT_SYMBOL_GPL vmlinux 0xbea5ff1e static_key_initialized +EXPORT_SYMBOL_GPL vmlinux 0xbec66c3a __apei_exec_run +EXPORT_SYMBOL_GPL vmlinux 0xbed361a3 register_asymmetric_key_parser +EXPORT_SYMBOL_GPL vmlinux 0xbee86e8f rio_dev_put +EXPORT_SYMBOL_GPL vmlinux 0xbef2135d dev_pm_opp_get_level +EXPORT_SYMBOL_GPL vmlinux 0xbef55386 __pm_runtime_use_autosuspend +EXPORT_SYMBOL_GPL vmlinux 0xbf041102 register_vt_notifier +EXPORT_SYMBOL_GPL vmlinux 0xbf184535 lwtstate_free +EXPORT_SYMBOL_GPL vmlinux 0xbf23a2cb devm_regmap_add_irq_chip +EXPORT_SYMBOL_GPL vmlinux 0xbf5c709a skb_mpls_dec_ttl +EXPORT_SYMBOL_GPL vmlinux 0xbf6abbe7 housekeeping_enabled +EXPORT_SYMBOL_GPL vmlinux 0xbf79a971 crypto_register_ahash +EXPORT_SYMBOL_GPL vmlinux 0xbf7d6194 ata_common_sdev_attrs +EXPORT_SYMBOL_GPL vmlinux 0xbf8cb67e fs_dax_get_by_bdev +EXPORT_SYMBOL_GPL vmlinux 0xbf91f025 pm_generic_poweroff_late +EXPORT_SYMBOL_GPL vmlinux 0xbfb1be70 hv_setup_vmbus_irq +EXPORT_SYMBOL_GPL vmlinux 0xbfbc5434 pciserial_resume_ports +EXPORT_SYMBOL_GPL vmlinux 0xbfc14e0f iommu_domain_get_attr +EXPORT_SYMBOL_GPL vmlinux 0xbfe5616d tick_broadcast_oneshot_control +EXPORT_SYMBOL_GPL vmlinux 0xbfed2cd9 __wait_rcu_gp +EXPORT_SYMBOL_GPL vmlinux 0xbffb3425 __mnt_is_readonly +EXPORT_SYMBOL_GPL vmlinux 0xbffbea9a modify_user_hw_breakpoint +EXPORT_SYMBOL_GPL vmlinux 0xbffde8ec compat_alloc_user_space +EXPORT_SYMBOL_GPL vmlinux 0xc0025150 scsi_nl_sock +EXPORT_SYMBOL_GPL vmlinux 0xc0227dea dev_pm_opp_put_opp_table +EXPORT_SYMBOL_GPL vmlinux 0xc0330274 sock_prot_inuse_get +EXPORT_SYMBOL_GPL vmlinux 0xc05ff5cb ipv4_redirect +EXPORT_SYMBOL_GPL vmlinux 0xc071e240 debugfs_create_size_t +EXPORT_SYMBOL_GPL vmlinux 0xc0725102 dev_attr_em_message_type +EXPORT_SYMBOL_GPL vmlinux 0xc07414b8 dev_attr_unload_heads +EXPORT_SYMBOL_GPL vmlinux 0xc07c0a93 spi_delay_exec +EXPORT_SYMBOL_GPL vmlinux 0xc084a6a1 virtqueue_detach_unused_buf +EXPORT_SYMBOL_GPL vmlinux 0xc08bbce6 irq_get_percpu_devid_partition +EXPORT_SYMBOL_GPL vmlinux 0xc09b063c ata_bmdma_irq_clear +EXPORT_SYMBOL_GPL vmlinux 0xc0a96e14 rcu_gp_is_expedited +EXPORT_SYMBOL_GPL vmlinux 0xc0a9d549 posix_clock_register +EXPORT_SYMBOL_GPL vmlinux 0xc0b39152 ata_port_freeze +EXPORT_SYMBOL_GPL vmlinux 0xc0bc43fa uart_handle_dcd_change +EXPORT_SYMBOL_GPL vmlinux 0xc0dbef62 unregister_virtio_device +EXPORT_SYMBOL_GPL vmlinux 0xc0dcb59e edac_layer_name +EXPORT_SYMBOL_GPL vmlinux 0xc0f0458a ip_tunnel_unneed_metadata +EXPORT_SYMBOL_GPL vmlinux 0xc1086e0c sysrq_toggle_support +EXPORT_SYMBOL_GPL vmlinux 0xc10fddb8 name_to_dev_t +EXPORT_SYMBOL_GPL vmlinux 0xc138ec38 rio_set_port_lockout +EXPORT_SYMBOL_GPL vmlinux 0xc139426f tpm_transmit_cmd +EXPORT_SYMBOL_GPL vmlinux 0xc13bb97c irq_create_mapping_affinity +EXPORT_SYMBOL_GPL vmlinux 0xc141f4a5 unwind_get_return_address +EXPORT_SYMBOL_GPL vmlinux 0xc14a2dd8 regmap_read +EXPORT_SYMBOL_GPL vmlinux 0xc14ec61b regmap_register_patch +EXPORT_SYMBOL_GPL vmlinux 0xc152f16b device_property_present +EXPORT_SYMBOL_GPL vmlinux 0xc15bab32 phy_driver_is_genphy_10g +EXPORT_SYMBOL_GPL vmlinux 0xc1611431 perf_aux_output_skip +EXPORT_SYMBOL_GPL vmlinux 0xc16b3eb3 skb_mpls_push +EXPORT_SYMBOL_GPL vmlinux 0xc17515d7 usb_hcds_loaded +EXPORT_SYMBOL_GPL vmlinux 0xc17e9946 usb_show_dynids +EXPORT_SYMBOL_GPL vmlinux 0xc18b001f regmap_bulk_read +EXPORT_SYMBOL_GPL vmlinux 0xc18cdf36 amd_df_indirect_read +EXPORT_SYMBOL_GPL vmlinux 0xc1ae511e rio_unmap_inb_region +EXPORT_SYMBOL_GPL vmlinux 0xc1b93fe1 pci_enable_pcie_error_reporting +EXPORT_SYMBOL_GPL vmlinux 0xc1d989c5 vfio_external_check_extension +EXPORT_SYMBOL_GPL vmlinux 0xc1e9441a platform_get_resource_byname +EXPORT_SYMBOL_GPL vmlinux 0xc1fa8b31 iommu_group_remove_device +EXPORT_SYMBOL_GPL vmlinux 0xc21b2d61 devm_regulator_put +EXPORT_SYMBOL_GPL vmlinux 0xc22a3091 vm_unmap_aliases +EXPORT_SYMBOL_GPL vmlinux 0xc24b6a8d blk_ksm_register +EXPORT_SYMBOL_GPL vmlinux 0xc254d87c security_inode_permission +EXPORT_SYMBOL_GPL vmlinux 0xc25b8971 hv_remove_crash_handler +EXPORT_SYMBOL_GPL vmlinux 0xc2603da5 rdev_get_id +EXPORT_SYMBOL_GPL vmlinux 0xc2692173 wakeup_sources_read_lock +EXPORT_SYMBOL_GPL vmlinux 0xc26b22ca led_trigger_register +EXPORT_SYMBOL_GPL vmlinux 0xc280fb46 kdb_register +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 0xc2a814db tcp_memory_pressure +EXPORT_SYMBOL_GPL vmlinux 0xc2b6480e security_kernel_post_read_file +EXPORT_SYMBOL_GPL vmlinux 0xc2b702a9 sk_msg_free_nocharge +EXPORT_SYMBOL_GPL vmlinux 0xc2c1c427 perf_event_cgrp_subsys_on_dfl_key +EXPORT_SYMBOL_GPL vmlinux 0xc2d4419a xhci_suspend +EXPORT_SYMBOL_GPL vmlinux 0xc2de27ca hest_disable +EXPORT_SYMBOL_GPL vmlinux 0xc2eae34a __srcu_notifier_call_chain +EXPORT_SYMBOL_GPL vmlinux 0xc30bdf64 regmap_add_irq_chip +EXPORT_SYMBOL_GPL vmlinux 0xc319b413 sysfs_create_mount_point +EXPORT_SYMBOL_GPL vmlinux 0xc333c380 nd_blk_region_provider_data +EXPORT_SYMBOL_GPL vmlinux 0xc334c4fd regmap_test_bits +EXPORT_SYMBOL_GPL vmlinux 0xc3380146 blk_poll +EXPORT_SYMBOL_GPL vmlinux 0xc33c7148 efivar_entry_add +EXPORT_SYMBOL_GPL vmlinux 0xc341ae6d zs_map_object +EXPORT_SYMBOL_GPL vmlinux 0xc342dc16 virtqueue_get_avail_addr +EXPORT_SYMBOL_GPL vmlinux 0xc3494fe8 gpiochip_is_requested +EXPORT_SYMBOL_GPL vmlinux 0xc35b00ac bsg_remove_queue +EXPORT_SYMBOL_GPL vmlinux 0xc37694b2 dev_forward_skb +EXPORT_SYMBOL_GPL vmlinux 0xc37ea51b rio_inb_pwrite_handler +EXPORT_SYMBOL_GPL vmlinux 0xc3805cd1 fs_ftype_to_dtype +EXPORT_SYMBOL_GPL vmlinux 0xc38419bc blk_trace_setup +EXPORT_SYMBOL_GPL vmlinux 0xc3a58e6a irq_chip_request_resources_parent +EXPORT_SYMBOL_GPL vmlinux 0xc3c394ae rio_route_get_entry +EXPORT_SYMBOL_GPL vmlinux 0xc3c4c6cc hash_algo_name +EXPORT_SYMBOL_GPL vmlinux 0xc3c73dbc bd_unlink_disk_holder +EXPORT_SYMBOL_GPL vmlinux 0xc3de65ff ring_buffer_bytes_cpu +EXPORT_SYMBOL_GPL vmlinux 0xc3e8f2d0 regulator_get_init_drvdata +EXPORT_SYMBOL_GPL vmlinux 0xc3ea5305 iommu_default_passthrough +EXPORT_SYMBOL_GPL vmlinux 0xc4012032 acpi_dma_controller_free +EXPORT_SYMBOL_GPL vmlinux 0xc40f4e07 __tracepoint_neigh_update_done +EXPORT_SYMBOL_GPL vmlinux 0xc41c1c84 regmap_parse_val +EXPORT_SYMBOL_GPL vmlinux 0xc426c51f klp_shadow_free_all +EXPORT_SYMBOL_GPL vmlinux 0xc428068d sata_deb_timing_long +EXPORT_SYMBOL_GPL vmlinux 0xc42964cd acpi_dev_get_property +EXPORT_SYMBOL_GPL vmlinux 0xc42b4324 pci_msi_mask_irq +EXPORT_SYMBOL_GPL vmlinux 0xc4325111 blk_queue_set_zoned +EXPORT_SYMBOL_GPL vmlinux 0xc4379beb dmi_kobj +EXPORT_SYMBOL_GPL vmlinux 0xc43c65ee smpboot_unregister_percpu_thread +EXPORT_SYMBOL_GPL vmlinux 0xc43e92b9 trace_seq_bprintf +EXPORT_SYMBOL_GPL vmlinux 0xc45d0d13 injectm +EXPORT_SYMBOL_GPL vmlinux 0xc46111b5 regmap_noinc_write +EXPORT_SYMBOL_GPL vmlinux 0xc46324f6 dynevent_create +EXPORT_SYMBOL_GPL vmlinux 0xc47616f4 __hwspin_lock_timeout +EXPORT_SYMBOL_GPL vmlinux 0xc48b7ccf ata_mode_string +EXPORT_SYMBOL_GPL vmlinux 0xc4913442 vfio_group_put_external_user +EXPORT_SYMBOL_GPL vmlinux 0xc494cfe9 kobject_move +EXPORT_SYMBOL_GPL vmlinux 0xc49d49d3 pstore_unregister +EXPORT_SYMBOL_GPL vmlinux 0xc4a31146 rdma_cgrp_subsys_on_dfl_key +EXPORT_SYMBOL_GPL vmlinux 0xc4a72936 trusted_tpm_send +EXPORT_SYMBOL_GPL vmlinux 0xc4ac12e2 apply_to_page_range +EXPORT_SYMBOL_GPL vmlinux 0xc4ac8eef __tracepoint_rpm_idle +EXPORT_SYMBOL_GPL vmlinux 0xc4ba9fc9 dev_pm_qos_remove_request +EXPORT_SYMBOL_GPL vmlinux 0xc4c6a4ca dev_pm_opp_detach_genpd +EXPORT_SYMBOL_GPL vmlinux 0xc4c84aa9 simple_attr_open +EXPORT_SYMBOL_GPL vmlinux 0xc4d05c49 fat_add_entries +EXPORT_SYMBOL_GPL vmlinux 0xc4da1ea8 skcipher_walk_done +EXPORT_SYMBOL_GPL vmlinux 0xc4f0da12 ktime_get_with_offset +EXPORT_SYMBOL_GPL vmlinux 0xc4f7e504 of_pm_clk_add_clk +EXPORT_SYMBOL_GPL vmlinux 0xc50437f1 iommu_domain_set_attr +EXPORT_SYMBOL_GPL vmlinux 0xc50e0bf9 rio_mport_class +EXPORT_SYMBOL_GPL vmlinux 0xc512626a __supported_pte_mask +EXPORT_SYMBOL_GPL vmlinux 0xc5156bf3 fanout_mutex +EXPORT_SYMBOL_GPL vmlinux 0xc52c8581 device_change_owner +EXPORT_SYMBOL_GPL vmlinux 0xc52d5880 platform_unregister_drivers +EXPORT_SYMBOL_GPL vmlinux 0xc52db4ad wm831x_reg_lock +EXPORT_SYMBOL_GPL vmlinux 0xc52f0388 acpi_dev_resource_memory +EXPORT_SYMBOL_GPL vmlinux 0xc53903e8 switchdev_port_obj_add +EXPORT_SYMBOL_GPL vmlinux 0xc53cd616 __dax_driver_register +EXPORT_SYMBOL_GPL vmlinux 0xc54456a3 devm_phy_optional_get +EXPORT_SYMBOL_GPL vmlinux 0xc55ff962 phy_basic_t1_features_array +EXPORT_SYMBOL_GPL vmlinux 0xc56027e4 crypto_default_rng +EXPORT_SYMBOL_GPL vmlinux 0xc5604800 clk_set_rate_exclusive +EXPORT_SYMBOL_GPL vmlinux 0xc569d8ce __clk_get_name +EXPORT_SYMBOL_GPL vmlinux 0xc575c737 debug_locks_off +EXPORT_SYMBOL_GPL vmlinux 0xc5777fca linear_range_get_selector_low_array +EXPORT_SYMBOL_GPL vmlinux 0xc57cd895 irq_domain_add_simple +EXPORT_SYMBOL_GPL vmlinux 0xc58a3ee6 icc_node_destroy +EXPORT_SYMBOL_GPL vmlinux 0xc594d840 acpi_dev_resource_interrupt +EXPORT_SYMBOL_GPL vmlinux 0xc5996c8c pkcs7_get_content_data +EXPORT_SYMBOL_GPL vmlinux 0xc5a5c678 uart_parse_earlycon +EXPORT_SYMBOL_GPL vmlinux 0xc5ae917c nvme_stop_queues +EXPORT_SYMBOL_GPL vmlinux 0xc5afcb7d ata_cable_sata +EXPORT_SYMBOL_GPL vmlinux 0xc5b29650 ata_sff_dev_select +EXPORT_SYMBOL_GPL vmlinux 0xc5d789df alarm_expires_remaining +EXPORT_SYMBOL_GPL vmlinux 0xc5d88cc1 __devm_regmap_init_mmio_clk +EXPORT_SYMBOL_GPL vmlinux 0xc5e0ee82 __fscrypt_prepare_lookup +EXPORT_SYMBOL_GPL vmlinux 0xc6164fca pci_epc_unmap_addr +EXPORT_SYMBOL_GPL vmlinux 0xc617f82c unregister_oom_notifier +EXPORT_SYMBOL_GPL vmlinux 0xc62a41e3 skb_to_sgvec_nomark +EXPORT_SYMBOL_GPL vmlinux 0xc63dfe3b pci_cfg_access_unlock +EXPORT_SYMBOL_GPL vmlinux 0xc6419290 bpf_prog_select_runtime +EXPORT_SYMBOL_GPL vmlinux 0xc6484b36 iomap_bmap +EXPORT_SYMBOL_GPL vmlinux 0xc654d3f4 lwtunnel_valid_encap_type +EXPORT_SYMBOL_GPL vmlinux 0xc66a42f7 regmap_check_range_table +EXPORT_SYMBOL_GPL vmlinux 0xc66b77b1 iommu_group_set_iommudata +EXPORT_SYMBOL_GPL vmlinux 0xc6779093 ring_buffer_record_enable +EXPORT_SYMBOL_GPL vmlinux 0xc6779738 rio_release_inb_pwrite +EXPORT_SYMBOL_GPL vmlinux 0xc67ec6aa tcp_get_info +EXPORT_SYMBOL_GPL vmlinux 0xc683da81 set_memory_decrypted +EXPORT_SYMBOL_GPL vmlinux 0xc692b10c event_triggers_call +EXPORT_SYMBOL_GPL vmlinux 0xc6976a77 regulator_set_voltage_time +EXPORT_SYMBOL_GPL vmlinux 0xc697b0f7 nvmem_device_read +EXPORT_SYMBOL_GPL vmlinux 0xc69b7ee5 zs_destroy_pool +EXPORT_SYMBOL_GPL vmlinux 0xc69fcd77 xfrm_audit_state_icvfail +EXPORT_SYMBOL_GPL vmlinux 0xc6a2f94c sysfs_remove_file_self +EXPORT_SYMBOL_GPL vmlinux 0xc6a4a872 __clk_is_enabled +EXPORT_SYMBOL_GPL vmlinux 0xc6a89341 wm5110_patch +EXPORT_SYMBOL_GPL vmlinux 0xc6b10427 ex_handler_fprestore +EXPORT_SYMBOL_GPL vmlinux 0xc6b505c8 anon_inode_getfd +EXPORT_SYMBOL_GPL vmlinux 0xc6ced8dc usb_create_shared_hcd +EXPORT_SYMBOL_GPL vmlinux 0xc6eec8f5 clk_divider_ops +EXPORT_SYMBOL_GPL vmlinux 0xc7061ef3 iova_cache_put +EXPORT_SYMBOL_GPL vmlinux 0xc708e663 nvmem_cell_read_u32 +EXPORT_SYMBOL_GPL vmlinux 0xc70a8c26 devlink_dpipe_table_unregister +EXPORT_SYMBOL_GPL vmlinux 0xc70de8d0 platform_device_del +EXPORT_SYMBOL_GPL vmlinux 0xc71e64a9 snmp_get_cpu_field +EXPORT_SYMBOL_GPL vmlinux 0xc71fdbb3 acpi_dev_remove_driver_gpios +EXPORT_SYMBOL_GPL vmlinux 0xc72849ef ata_sff_thaw +EXPORT_SYMBOL_GPL vmlinux 0xc7330224 virtqueue_notify +EXPORT_SYMBOL_GPL vmlinux 0xc73ce49d pci_disable_rom +EXPORT_SYMBOL_GPL vmlinux 0xc7453254 devfreq_event_disable_edev +EXPORT_SYMBOL_GPL vmlinux 0xc749cc58 ata_port_desc +EXPORT_SYMBOL_GPL vmlinux 0xc751b7a3 device_for_each_child +EXPORT_SYMBOL_GPL vmlinux 0xc758536e iomap_migrate_page +EXPORT_SYMBOL_GPL vmlinux 0xc784f1e3 get_user_pages_fast_only +EXPORT_SYMBOL_GPL vmlinux 0xc7856e74 __wake_up_locked_sync_key +EXPORT_SYMBOL_GPL vmlinux 0xc7890d32 pci_sriov_set_totalvfs +EXPORT_SYMBOL_GPL vmlinux 0xc79120cf ata_sff_exec_command +EXPORT_SYMBOL_GPL vmlinux 0xc792aede devlink_port_type_eth_set +EXPORT_SYMBOL_GPL vmlinux 0xc7a1840e llist_add_batch +EXPORT_SYMBOL_GPL vmlinux 0xc7d4cc12 scsi_check_sense +EXPORT_SYMBOL_GPL vmlinux 0xc7d8d36d ata_host_suspend +EXPORT_SYMBOL_GPL vmlinux 0xc7e1217e devm_thermal_add_hwmon_sysfs +EXPORT_SYMBOL_GPL vmlinux 0xc7e638c1 ethnl_cable_test_finished +EXPORT_SYMBOL_GPL vmlinux 0xc7ee92d7 scsi_target_unblock +EXPORT_SYMBOL_GPL vmlinux 0xc7fa4aa9 kobj_ns_drop +EXPORT_SYMBOL_GPL vmlinux 0xc7fdc488 cn_add_callback +EXPORT_SYMBOL_GPL vmlinux 0xc80f0e46 vfio_group_get_external_user_from_dev +EXPORT_SYMBOL_GPL vmlinux 0xc82c721f klist_remove +EXPORT_SYMBOL_GPL vmlinux 0xc839c1ce trace_seq_to_user +EXPORT_SYMBOL_GPL vmlinux 0xc8438127 pci_num_vf +EXPORT_SYMBOL_GPL vmlinux 0xc851679b bpf_prog_create_from_user +EXPORT_SYMBOL_GPL vmlinux 0xc8594d3d reset_control_acquire +EXPORT_SYMBOL_GPL vmlinux 0xc85b066d enable_kprobe +EXPORT_SYMBOL_GPL vmlinux 0xc85e3020 nvmem_device_find +EXPORT_SYMBOL_GPL vmlinux 0xc8784a2b inet6_lookup +EXPORT_SYMBOL_GPL vmlinux 0xc87a4bea regulator_set_voltage_rdev +EXPORT_SYMBOL_GPL vmlinux 0xc87e487a sched_clock_idle_sleep_event +EXPORT_SYMBOL_GPL vmlinux 0xc87e71b9 fat_time_unix2fat +EXPORT_SYMBOL_GPL vmlinux 0xc87fb025 xas_get_mark +EXPORT_SYMBOL_GPL vmlinux 0xc881b1f7 __pci_hp_register +EXPORT_SYMBOL_GPL vmlinux 0xc8944355 power_supply_am_i_supplied +EXPORT_SYMBOL_GPL vmlinux 0xc8972eec devm_regulator_unregister_supply_alias +EXPORT_SYMBOL_GPL vmlinux 0xc8bbd9fb usb_disable_lpm +EXPORT_SYMBOL_GPL vmlinux 0xc8c50376 ata_host_put +EXPORT_SYMBOL_GPL vmlinux 0xc8d2218f intel_msic_reg_read +EXPORT_SYMBOL_GPL vmlinux 0xc8d595cc bpf_map_inc +EXPORT_SYMBOL_GPL vmlinux 0xc8ddd5b5 kstrdup_quotable +EXPORT_SYMBOL_GPL vmlinux 0xc8df612e dma_buf_unpin +EXPORT_SYMBOL_GPL vmlinux 0xc8e46b0e devlink_dpipe_headers_register +EXPORT_SYMBOL_GPL vmlinux 0xc8f162c9 ftrace_set_filter_ip +EXPORT_SYMBOL_GPL vmlinux 0xc91277a1 kgdb_schedule_breakpoint +EXPORT_SYMBOL_GPL vmlinux 0xc91501b2 sfp_bus_add_upstream +EXPORT_SYMBOL_GPL vmlinux 0xc9175636 ata_acpi_gtm_xfermask +EXPORT_SYMBOL_GPL vmlinux 0xc91a496d of_pm_clk_add_clks +EXPORT_SYMBOL_GPL vmlinux 0xc9241ed0 virtqueue_poll +EXPORT_SYMBOL_GPL vmlinux 0xc9345c0f digsig_verify +EXPORT_SYMBOL_GPL vmlinux 0xc93aaadb pinctrl_enable +EXPORT_SYMBOL_GPL vmlinux 0xc93ee1e7 usb_phy_roothub_init +EXPORT_SYMBOL_GPL vmlinux 0xc944ba88 dma_buf_mmap +EXPORT_SYMBOL_GPL vmlinux 0xc9561772 fb_destroy_modelist +EXPORT_SYMBOL_GPL vmlinux 0xc95c3662 nd_blk_region_set_provider_data +EXPORT_SYMBOL_GPL vmlinux 0xc9641b48 visitor32 +EXPORT_SYMBOL_GPL vmlinux 0xc96dac9c fib_nh_common_init +EXPORT_SYMBOL_GPL vmlinux 0xc97a00c9 alarm_try_to_cancel +EXPORT_SYMBOL_GPL vmlinux 0xc97c7833 raw_abort +EXPORT_SYMBOL_GPL vmlinux 0xc97f476f anon_transport_class_register +EXPORT_SYMBOL_GPL vmlinux 0xc9827693 __bpf_call_base +EXPORT_SYMBOL_GPL vmlinux 0xc9a4b416 copy_to_user_nofault +EXPORT_SYMBOL_GPL vmlinux 0xc9ac12dd regulator_set_voltage +EXPORT_SYMBOL_GPL vmlinux 0xc9b190d6 wait_on_page_writeback +EXPORT_SYMBOL_GPL vmlinux 0xc9b48bf0 pm_schedule_suspend +EXPORT_SYMBOL_GPL vmlinux 0xc9b9321b call_switchdev_notifiers +EXPORT_SYMBOL_GPL vmlinux 0xc9b9c149 regulator_suspend_disable +EXPORT_SYMBOL_GPL vmlinux 0xc9c3f176 hpet_register_irq_handler +EXPORT_SYMBOL_GPL vmlinux 0xc9d52c13 of_devfreq_cooling_register +EXPORT_SYMBOL_GPL vmlinux 0xc9d9e6f4 serial8250_rpm_put +EXPORT_SYMBOL_GPL vmlinux 0xc9de5fbe hvc_instantiate +EXPORT_SYMBOL_GPL vmlinux 0xc9ec4e21 free_percpu +EXPORT_SYMBOL_GPL vmlinux 0xca1259f3 serial8250_em485_stop_tx +EXPORT_SYMBOL_GPL vmlinux 0xca1a775c rtc_class_close +EXPORT_SYMBOL_GPL vmlinux 0xca2060fa gpiod_is_active_low +EXPORT_SYMBOL_GPL vmlinux 0xca295e27 tcp_unregister_ulp +EXPORT_SYMBOL_GPL vmlinux 0xca467318 hibernation_set_ops +EXPORT_SYMBOL_GPL vmlinux 0xca57a035 devm_free_percpu +EXPORT_SYMBOL_GPL vmlinux 0xca7010e7 crypto_alloc_aead +EXPORT_SYMBOL_GPL vmlinux 0xca720fb9 fixed_phy_register +EXPORT_SYMBOL_GPL vmlinux 0xca74a8b8 ata_port_abort +EXPORT_SYMBOL_GPL vmlinux 0xca7d8764 kthread_freezable_should_stop +EXPORT_SYMBOL_GPL vmlinux 0xca9a1d5e ring_buffer_free +EXPORT_SYMBOL_GPL vmlinux 0xcaa68533 cpu_has_xfeatures +EXPORT_SYMBOL_GPL vmlinux 0xcaaf8241 bpf_trace_run8 +EXPORT_SYMBOL_GPL vmlinux 0xcabe04de cpuidle_resume_and_unlock +EXPORT_SYMBOL_GPL vmlinux 0xcacd88a0 __tracepoint_br_fdb_update +EXPORT_SYMBOL_GPL vmlinux 0xcada8c13 rio_dma_prep_xfer +EXPORT_SYMBOL_GPL vmlinux 0xcae46dd2 access_process_vm +EXPORT_SYMBOL_GPL vmlinux 0xcaf6fdee noop_set_page_dirty +EXPORT_SYMBOL_GPL vmlinux 0xcaf9529c pci_user_write_config_dword +EXPORT_SYMBOL_GPL vmlinux 0xcafd00cb arizona_dev_init +EXPORT_SYMBOL_GPL vmlinux 0xcb068c40 tty_ldisc_ref +EXPORT_SYMBOL_GPL vmlinux 0xcb20837b debugfs_create_file_unsafe +EXPORT_SYMBOL_GPL vmlinux 0xcb259088 edac_device_handle_ue_count +EXPORT_SYMBOL_GPL vmlinux 0xcb2bfe2b nvmem_register_notifier +EXPORT_SYMBOL_GPL vmlinux 0xcb49c11e dev_pm_opp_free_cpufreq_table +EXPORT_SYMBOL_GPL vmlinux 0xcb5a258e rtm_getroute_parse_ip_proto +EXPORT_SYMBOL_GPL vmlinux 0xcb5ec63f pci_user_write_config_byte +EXPORT_SYMBOL_GPL vmlinux 0xcb721be2 efivar_entry_delete +EXPORT_SYMBOL_GPL vmlinux 0xcb78354d __kthread_init_worker +EXPORT_SYMBOL_GPL vmlinux 0xcb7e6c2b md_start +EXPORT_SYMBOL_GPL vmlinux 0xcb8328f1 power_supply_get_property +EXPORT_SYMBOL_GPL vmlinux 0xcb8a461c hv_stimer_legacy_cleanup +EXPORT_SYMBOL_GPL vmlinux 0xcb970751 stop_machine +EXPORT_SYMBOL_GPL vmlinux 0xcba336de wm831x_regmap_config +EXPORT_SYMBOL_GPL vmlinux 0xcba76382 __mnt_drop_write +EXPORT_SYMBOL_GPL vmlinux 0xcbac2d4d nvme_remove_namespaces +EXPORT_SYMBOL_GPL vmlinux 0xcbb3f487 acpi_device_fix_up_power +EXPORT_SYMBOL_GPL vmlinux 0xcbb71a1d __put_net +EXPORT_SYMBOL_GPL vmlinux 0xcbbf222e fwnode_property_read_u8_array +EXPORT_SYMBOL_GPL vmlinux 0xcbc1fb22 nd_tbl +EXPORT_SYMBOL_GPL vmlinux 0xcbc5fc46 nvdimm_has_cache +EXPORT_SYMBOL_GPL vmlinux 0xcbd59c34 ethnl_cable_test_pulse +EXPORT_SYMBOL_GPL vmlinux 0xcbe00f4f dev_pm_opp_get_sharing_cpus +EXPORT_SYMBOL_GPL vmlinux 0xcbe56bc2 zs_get_total_pages +EXPORT_SYMBOL_GPL vmlinux 0xcbfb8203 pci_epc_stop +EXPORT_SYMBOL_GPL vmlinux 0xcbfec966 kobject_get_path +EXPORT_SYMBOL_GPL vmlinux 0xcc0b00a1 ncsi_start_dev +EXPORT_SYMBOL_GPL vmlinux 0xcc1f0bc0 nf_hook_entries_insert_raw +EXPORT_SYMBOL_GPL vmlinux 0xcc291c56 pinctrl_pm_select_sleep_state +EXPORT_SYMBOL_GPL vmlinux 0xcc2dbfd8 irq_domain_check_msi_remap +EXPORT_SYMBOL_GPL vmlinux 0xcc312197 clk_mux_ops +EXPORT_SYMBOL_GPL vmlinux 0xcc339fda efivar_entry_size +EXPORT_SYMBOL_GPL vmlinux 0xcc39c03e nvmem_unregister +EXPORT_SYMBOL_GPL vmlinux 0xcc3c7522 acpi_kobj +EXPORT_SYMBOL_GPL vmlinux 0xcc426c2a __sock_recv_wifi_status +EXPORT_SYMBOL_GPL vmlinux 0xcc5104d0 copy_mc_to_kernel +EXPORT_SYMBOL_GPL vmlinux 0xcc648894 hwspin_lock_get_id +EXPORT_SYMBOL_GPL vmlinux 0xcc7a56d1 device_get_match_data +EXPORT_SYMBOL_GPL vmlinux 0xcc85a263 edac_mc_alloc +EXPORT_SYMBOL_GPL vmlinux 0xcc9268fc hwpoison_filter_enable +EXPORT_SYMBOL_GPL vmlinux 0xcc935375 walk_iomem_res_desc +EXPORT_SYMBOL_GPL vmlinux 0xcc93d9d0 ata_sff_data_xfer +EXPORT_SYMBOL_GPL vmlinux 0xcc9d1f9a iommu_fwspec_add_ids +EXPORT_SYMBOL_GPL vmlinux 0xcc9e8c2b perf_msr_probe +EXPORT_SYMBOL_GPL vmlinux 0xccae663c ata_sas_port_destroy +EXPORT_SYMBOL_GPL vmlinux 0xccb9a4a5 crypto_unregister_aead +EXPORT_SYMBOL_GPL vmlinux 0xccc22386 set_capacity_revalidate_and_notify +EXPORT_SYMBOL_GPL vmlinux 0xcccfb2fa sata_deb_timing_hotplug +EXPORT_SYMBOL_GPL vmlinux 0xccd4e2b0 regulator_set_voltage_sel_pickable_regmap +EXPORT_SYMBOL_GPL vmlinux 0xccd86806 ata_id_string +EXPORT_SYMBOL_GPL vmlinux 0xccdfdd14 dev_pm_enable_wake_irq +EXPORT_SYMBOL_GPL vmlinux 0xccea4e34 perf_get_x86_pmu_capability +EXPORT_SYMBOL_GPL vmlinux 0xccf4d562 irq_chip_mask_parent +EXPORT_SYMBOL_GPL vmlinux 0xccf52bc9 sfp_upstream_start +EXPORT_SYMBOL_GPL vmlinux 0xccf8e009 sdev_evt_send_simple +EXPORT_SYMBOL_GPL vmlinux 0xcd074d8a debugfs_remove +EXPORT_SYMBOL_GPL vmlinux 0xcd09e248 crypto_shoot_alg +EXPORT_SYMBOL_GPL vmlinux 0xcd0d82ba ping_queue_rcv_skb +EXPORT_SYMBOL_GPL vmlinux 0xcd11e582 hv_pkt_iter_close +EXPORT_SYMBOL_GPL vmlinux 0xcd1be3b0 dev_queue_xmit_nit +EXPORT_SYMBOL_GPL vmlinux 0xcd24e146 hash_digest_size +EXPORT_SYMBOL_GPL vmlinux 0xcd2d1287 fsverity_verify_bio +EXPORT_SYMBOL_GPL vmlinux 0xcd3cef8e __blkdev_driver_ioctl +EXPORT_SYMBOL_GPL vmlinux 0xcd3e5c7c acpi_release_memory +EXPORT_SYMBOL_GPL vmlinux 0xcd48eb6e devfreq_cooling_register +EXPORT_SYMBOL_GPL vmlinux 0xcd5af27e get_dcookie +EXPORT_SYMBOL_GPL vmlinux 0xcd5f7a4f rio_request_outb_dbell +EXPORT_SYMBOL_GPL vmlinux 0xcd6f2dc9 nf_log_buf_add +EXPORT_SYMBOL_GPL vmlinux 0xcd778531 iptunnel_metadata_reply +EXPORT_SYMBOL_GPL vmlinux 0xcd81a945 switch_fpu_return +EXPORT_SYMBOL_GPL vmlinux 0xcd883015 inet6_lookup_listener +EXPORT_SYMBOL_GPL vmlinux 0xcd91b127 system_highpri_wq +EXPORT_SYMBOL_GPL vmlinux 0xcd974f00 rcu_all_qs +EXPORT_SYMBOL_GPL vmlinux 0xcd9cd2ff wakeme_after_rcu +EXPORT_SYMBOL_GPL vmlinux 0xcd9e6bc2 dev_pm_disable_wake_irq +EXPORT_SYMBOL_GPL vmlinux 0xcda20451 blkdev_report_zones +EXPORT_SYMBOL_GPL vmlinux 0xcdb3739a crypto_unregister_templates +EXPORT_SYMBOL_GPL vmlinux 0xcdb6adcc ras_userspace_consumers +EXPORT_SYMBOL_GPL vmlinux 0xcdca3691 nr_irqs +EXPORT_SYMBOL_GPL vmlinux 0xcdd6290d devlink_region_create +EXPORT_SYMBOL_GPL vmlinux 0xcddd72e0 thermal_zone_unbind_cooling_device +EXPORT_SYMBOL_GPL vmlinux 0xcde19038 devm_kmalloc +EXPORT_SYMBOL_GPL vmlinux 0xcde26600 cppc_get_transition_latency +EXPORT_SYMBOL_GPL vmlinux 0xcde63d33 vring_transport_features +EXPORT_SYMBOL_GPL vmlinux 0xce0e2129 dw_pcie_host_init +EXPORT_SYMBOL_GPL vmlinux 0xce55295f sk_msg_clone +EXPORT_SYMBOL_GPL vmlinux 0xce5a8724 pci_load_and_free_saved_state +EXPORT_SYMBOL_GPL vmlinux 0xce6bceda dma_buf_fd +EXPORT_SYMBOL_GPL vmlinux 0xce6c21b8 regulator_is_enabled +EXPORT_SYMBOL_GPL vmlinux 0xce6db656 rcu_is_watching +EXPORT_SYMBOL_GPL vmlinux 0xce847ed0 sata_link_debounce +EXPORT_SYMBOL_GPL vmlinux 0xce90aa0e gpiod_get_direction +EXPORT_SYMBOL_GPL vmlinux 0xceb1f126 mpi_read_raw_data +EXPORT_SYMBOL_GPL vmlinux 0xceb66bec sched_clock_cpu +EXPORT_SYMBOL_GPL vmlinux 0xceb7f7f4 devm_hwspin_lock_free +EXPORT_SYMBOL_GPL vmlinux 0xcebac914 ata_sas_scsi_ioctl +EXPORT_SYMBOL_GPL vmlinux 0xcee1641c kgdb_unregister_nmi_console +EXPORT_SYMBOL_GPL vmlinux 0xceed8318 ibft_addr +EXPORT_SYMBOL_GPL vmlinux 0xcf0646d5 bpf_offload_dev_match +EXPORT_SYMBOL_GPL vmlinux 0xcf0b787c debugfs_create_file_size +EXPORT_SYMBOL_GPL vmlinux 0xcf22e1e6 __udp6_lib_lookup +EXPORT_SYMBOL_GPL vmlinux 0xcf4d9d44 ip6_input +EXPORT_SYMBOL_GPL vmlinux 0xcf54ea93 async_unregister_domain +EXPORT_SYMBOL_GPL vmlinux 0xcf6594d1 ata_std_postreset +EXPORT_SYMBOL_GPL vmlinux 0xcf684eda fsstack_copy_inode_size +EXPORT_SYMBOL_GPL vmlinux 0xcf6a1975 fwnode_property_present +EXPORT_SYMBOL_GPL vmlinux 0xcf70dd88 ip6_dst_lookup_flow +EXPORT_SYMBOL_GPL vmlinux 0xcf7ea267 perf_aux_output_begin +EXPORT_SYMBOL_GPL vmlinux 0xcf982db7 dev_pm_opp_put_regulators +EXPORT_SYMBOL_GPL vmlinux 0xcfa0e0de pci_msi_set_desc +EXPORT_SYMBOL_GPL vmlinux 0xcfa2b964 clk_hw_round_rate +EXPORT_SYMBOL_GPL vmlinux 0xcfc15f4b rht_bucket_nested_insert +EXPORT_SYMBOL_GPL vmlinux 0xcfc5108a devlink_fmsg_u8_pair_put +EXPORT_SYMBOL_GPL vmlinux 0xcfc5885a gpiod_put +EXPORT_SYMBOL_GPL vmlinux 0xcfc7b4e4 rcu_barrier_tasks_trace +EXPORT_SYMBOL_GPL vmlinux 0xcfc8ee93 tty_port_register_device_attr_serdev +EXPORT_SYMBOL_GPL vmlinux 0xcfd30d71 acpi_os_map_memory +EXPORT_SYMBOL_GPL vmlinux 0xcfddb723 regmap_get_raw_read_max +EXPORT_SYMBOL_GPL vmlinux 0xcff69f29 xdp_do_redirect +EXPORT_SYMBOL_GPL vmlinux 0xd002a938 blkcg_root_css +EXPORT_SYMBOL_GPL vmlinux 0xd0295d3c iommu_dev_feature_enabled +EXPORT_SYMBOL_GPL vmlinux 0xd03eaf4c schedule_hrtimeout_range +EXPORT_SYMBOL_GPL vmlinux 0xd042659b scsi_unregister_device_handler +EXPORT_SYMBOL_GPL vmlinux 0xd052b5d2 regcache_cache_bypass +EXPORT_SYMBOL_GPL vmlinux 0xd06524ba raw_notifier_chain_unregister +EXPORT_SYMBOL_GPL vmlinux 0xd067d3c5 system_freezable_power_efficient_wq +EXPORT_SYMBOL_GPL vmlinux 0xd06c7ab4 cgroup_get_from_fd +EXPORT_SYMBOL_GPL vmlinux 0xd0843b12 devlink_dpipe_entry_ctx_prepare +EXPORT_SYMBOL_GPL vmlinux 0xd09911a6 acpi_dev_get_irq_type +EXPORT_SYMBOL_GPL vmlinux 0xd099b325 ipv6_stub +EXPORT_SYMBOL_GPL vmlinux 0xd0a265ce pinctrl_utils_add_map_configs +EXPORT_SYMBOL_GPL vmlinux 0xd0a64e4d isa_unregister_driver +EXPORT_SYMBOL_GPL vmlinux 0xd0bb1d00 crypto_alg_extsize +EXPORT_SYMBOL_GPL vmlinux 0xd0bc5c83 __blk_mq_debugfs_rq_show +EXPORT_SYMBOL_GPL vmlinux 0xd0be1c2f fsverity_ioctl_measure +EXPORT_SYMBOL_GPL vmlinux 0xd0c05159 emergency_restart +EXPORT_SYMBOL_GPL vmlinux 0xd0c119d0 loop_backing_file +EXPORT_SYMBOL_GPL vmlinux 0xd0c3431c pci_pr3_present +EXPORT_SYMBOL_GPL vmlinux 0xd0cd7ada input_ff_create +EXPORT_SYMBOL_GPL vmlinux 0xd0d062c2 fwnode_property_get_reference_args +EXPORT_SYMBOL_GPL vmlinux 0xd0d156e9 __rht_bucket_nested +EXPORT_SYMBOL_GPL vmlinux 0xd0d3f0a4 gen_pool_avail +EXPORT_SYMBOL_GPL vmlinux 0xd0dabfa1 ata_sff_port_intr +EXPORT_SYMBOL_GPL vmlinux 0xd0db0f12 run_dax +EXPORT_SYMBOL_GPL vmlinux 0xd0f8e0b2 request_firmware_direct +EXPORT_SYMBOL_GPL vmlinux 0xd12cae2a devres_find +EXPORT_SYMBOL_GPL vmlinux 0xd13ac83e tty_buffer_space_avail +EXPORT_SYMBOL_GPL vmlinux 0xd152f8e3 disk_has_partitions +EXPORT_SYMBOL_GPL vmlinux 0xd1564d63 shake_page +EXPORT_SYMBOL_GPL vmlinux 0xd159586c net_prio_cgrp_subsys_enabled_key +EXPORT_SYMBOL_GPL vmlinux 0xd15af8ac usb_autopm_put_interface +EXPORT_SYMBOL_GPL vmlinux 0xd1600e10 acpi_dev_gpio_irq_get +EXPORT_SYMBOL_GPL vmlinux 0xd18d51b9 fuse_sync_release +EXPORT_SYMBOL_GPL vmlinux 0xd19f2c78 __devm_intel_scu_ipc_register +EXPORT_SYMBOL_GPL vmlinux 0xd1a3237e ata_pci_bmdma_clear_simplex +EXPORT_SYMBOL_GPL vmlinux 0xd1cac7bf unregister_ftrace_direct +EXPORT_SYMBOL_GPL vmlinux 0xd1cbc23c add_timer_on +EXPORT_SYMBOL_GPL vmlinux 0xd1cdc0e1 kern_mount +EXPORT_SYMBOL_GPL vmlinux 0xd1cf0553 cpufreq_freq_attr_scaling_boost_freqs +EXPORT_SYMBOL_GPL vmlinux 0xd1e335ab posix_acl_default_xattr_handler +EXPORT_SYMBOL_GPL vmlinux 0xd1f2eee2 nf_logger_find_get +EXPORT_SYMBOL_GPL vmlinux 0xd1fbc889 unregister_kprobe +EXPORT_SYMBOL_GPL vmlinux 0xd1fe5c30 serial8250_rpm_put_tx +EXPORT_SYMBOL_GPL vmlinux 0xd2079527 dw_pcie_ep_init +EXPORT_SYMBOL_GPL vmlinux 0xd20bf6ba dcookie_unregister +EXPORT_SYMBOL_GPL vmlinux 0xd212b454 cs47l24_patch +EXPORT_SYMBOL_GPL vmlinux 0xd217e9e6 trace_set_clr_event +EXPORT_SYMBOL_GPL vmlinux 0xd2190d67 iommu_cache_invalidate +EXPORT_SYMBOL_GPL vmlinux 0xd21b61bd async_schedule_node_domain +EXPORT_SYMBOL_GPL vmlinux 0xd21d40a5 iommu_fwspec_init +EXPORT_SYMBOL_GPL vmlinux 0xd23b872d ata_pci_sff_init_one +EXPORT_SYMBOL_GPL vmlinux 0xd24e9e8c klist_init +EXPORT_SYMBOL_GPL vmlinux 0xd260af0d ring_buffer_write +EXPORT_SYMBOL_GPL vmlinux 0xd273b1b1 __round_jiffies_up_relative +EXPORT_SYMBOL_GPL vmlinux 0xd27892bc nf_queue +EXPORT_SYMBOL_GPL vmlinux 0xd280a123 acpi_processor_get_performance_info +EXPORT_SYMBOL_GPL vmlinux 0xd2a06965 virtio_config_changed +EXPORT_SYMBOL_GPL vmlinux 0xd2b10a05 ata_timing_find_mode +EXPORT_SYMBOL_GPL vmlinux 0xd2b6727a device_release_driver +EXPORT_SYMBOL_GPL vmlinux 0xd2c8ae77 tracepoint_probe_unregister +EXPORT_SYMBOL_GPL vmlinux 0xd2dd4812 phy_basic_features +EXPORT_SYMBOL_GPL vmlinux 0xd31a2ac5 ring_buffer_oldest_event_ts +EXPORT_SYMBOL_GPL vmlinux 0xd31d22e6 pci_ioremap_wc_bar +EXPORT_SYMBOL_GPL vmlinux 0xd3217770 regulator_register_notifier +EXPORT_SYMBOL_GPL vmlinux 0xd32694be sbitmap_prepare_to_wait +EXPORT_SYMBOL_GPL vmlinux 0xd33c5b38 direct_make_request +EXPORT_SYMBOL_GPL vmlinux 0xd346ce3e devm_kasprintf +EXPORT_SYMBOL_GPL vmlinux 0xd34ef43d rio_mport_get_feature +EXPORT_SYMBOL_GPL vmlinux 0xd35232cf attribute_container_classdev_to_container +EXPORT_SYMBOL_GPL vmlinux 0xd35c01a3 clk_gate_restore_context +EXPORT_SYMBOL_GPL vmlinux 0xd360a7fd regulator_get_current_limit +EXPORT_SYMBOL_GPL vmlinux 0xd36760ef __usb_get_extra_descriptor +EXPORT_SYMBOL_GPL vmlinux 0xd3752c27 atomic_notifier_call_chain +EXPORT_SYMBOL_GPL vmlinux 0xd37a99e7 xfrm_audit_state_notfound_simple +EXPORT_SYMBOL_GPL vmlinux 0xd3806250 spi_replace_transfers +EXPORT_SYMBOL_GPL vmlinux 0xd395ab78 iomap_dio_rw +EXPORT_SYMBOL_GPL vmlinux 0xd39e9848 put_itimerspec64 +EXPORT_SYMBOL_GPL vmlinux 0xd3bfa753 usb_bus_idr_lock +EXPORT_SYMBOL_GPL vmlinux 0xd3cfb376 bpf_trace_run7 +EXPORT_SYMBOL_GPL vmlinux 0xd3d5ece9 regulator_set_voltage_sel_regmap +EXPORT_SYMBOL_GPL vmlinux 0xd3e6218a clk_register_fixed_factor +EXPORT_SYMBOL_GPL vmlinux 0xd3e68560 irq_create_fwspec_mapping +EXPORT_SYMBOL_GPL vmlinux 0xd3f8f3f4 page_poisoning_enabled +EXPORT_SYMBOL_GPL vmlinux 0xd4034828 system_freezable_wq +EXPORT_SYMBOL_GPL vmlinux 0xd418cbb1 platform_device_register +EXPORT_SYMBOL_GPL vmlinux 0xd426dbc4 erst_get_record_count +EXPORT_SYMBOL_GPL vmlinux 0xd436f2d7 scsi_host_busy_iter +EXPORT_SYMBOL_GPL vmlinux 0xd4376556 register_kretprobes +EXPORT_SYMBOL_GPL vmlinux 0xd44a5eac kgdb_register_nmi_console +EXPORT_SYMBOL_GPL vmlinux 0xd45434ee admin_timeout +EXPORT_SYMBOL_GPL vmlinux 0xd46af5ef cppc_get_perf_ctrs +EXPORT_SYMBOL_GPL vmlinux 0xd46beafc iommu_group_get +EXPORT_SYMBOL_GPL vmlinux 0xd46db7a6 scsi_autopm_put_device +EXPORT_SYMBOL_GPL vmlinux 0xd46efa9c hvc_alloc +EXPORT_SYMBOL_GPL vmlinux 0xd47e4970 phy_speed_down +EXPORT_SYMBOL_GPL vmlinux 0xd482d8d4 spi_controller_suspend +EXPORT_SYMBOL_GPL vmlinux 0xd4a5997b sk_psock_drop +EXPORT_SYMBOL_GPL vmlinux 0xd4b6157e devlink_health_reporter_recovery_done +EXPORT_SYMBOL_GPL vmlinux 0xd4ba612f devres_add +EXPORT_SYMBOL_GPL vmlinux 0xd4c14632 system_unbound_wq +EXPORT_SYMBOL_GPL vmlinux 0xd4cbdc66 pci_generic_config_read +EXPORT_SYMBOL_GPL vmlinux 0xd4d14b97 pin_user_pages_fast +EXPORT_SYMBOL_GPL vmlinux 0xd4d2d677 rio_mport_write_config_16 +EXPORT_SYMBOL_GPL vmlinux 0xd4e6d7e0 linear_range_get_value +EXPORT_SYMBOL_GPL vmlinux 0xd4f1849b sk_msg_zerocopy_from_iter +EXPORT_SYMBOL_GPL vmlinux 0xd501e89f dev_pm_opp_find_freq_ceil +EXPORT_SYMBOL_GPL vmlinux 0xd50ab241 serial8250_rx_dma_flush +EXPORT_SYMBOL_GPL vmlinux 0xd50d1cee ata_bmdma_setup +EXPORT_SYMBOL_GPL vmlinux 0xd51ace8f fwnode_graph_get_next_endpoint +EXPORT_SYMBOL_GPL vmlinux 0xd5301291 fat_detach +EXPORT_SYMBOL_GPL vmlinux 0xd5301b2c linear_range_get_max_value +EXPORT_SYMBOL_GPL vmlinux 0xd53c67b3 unregister_net_sysctl_table +EXPORT_SYMBOL_GPL vmlinux 0xd53f4a94 ipv4_sk_redirect +EXPORT_SYMBOL_GPL vmlinux 0xd541c3c4 icc_enable +EXPORT_SYMBOL_GPL vmlinux 0xd5470bd5 iommu_unmap +EXPORT_SYMBOL_GPL vmlinux 0xd54d0fbc ata_sff_pause +EXPORT_SYMBOL_GPL vmlinux 0xd55ad93b iommu_group_get_iommudata +EXPORT_SYMBOL_GPL vmlinux 0xd55c976e devm_clk_bulk_get_optional +EXPORT_SYMBOL_GPL vmlinux 0xd57611c0 acpi_register_gsi +EXPORT_SYMBOL_GPL vmlinux 0xd578c739 pm_runtime_enable +EXPORT_SYMBOL_GPL vmlinux 0xd57fbd31 hwrng_unregister +EXPORT_SYMBOL_GPL vmlinux 0xd581bfca pci_store_saved_state +EXPORT_SYMBOL_GPL vmlinux 0xd5822793 blk_set_pm_only +EXPORT_SYMBOL_GPL vmlinux 0xd58bbbcb nvme_delete_wq +EXPORT_SYMBOL_GPL vmlinux 0xd58fd1e3 regulator_is_supported_voltage +EXPORT_SYMBOL_GPL vmlinux 0xd59a1587 linkmode_resolve_pause +EXPORT_SYMBOL_GPL vmlinux 0xd5ad357f __tracepoint_mc_event +EXPORT_SYMBOL_GPL vmlinux 0xd5b57ab3 __tracepoint_rpm_resume +EXPORT_SYMBOL_GPL vmlinux 0xd5c2c790 vmbus_disconnect_ring +EXPORT_SYMBOL_GPL vmlinux 0xd5c8311f devm_gpio_request_one +EXPORT_SYMBOL_GPL vmlinux 0xd5d77b68 gpiod_to_irq +EXPORT_SYMBOL_GPL vmlinux 0xd5e2be31 security_path_chmod +EXPORT_SYMBOL_GPL vmlinux 0xd5e2e772 locks_release_private +EXPORT_SYMBOL_GPL vmlinux 0xd5e3286e dev_pm_domain_set +EXPORT_SYMBOL_GPL vmlinux 0xd5eff878 __vfs_setxattr_locked +EXPORT_SYMBOL_GPL vmlinux 0xd5f3bb7b set_memory_encrypted +EXPORT_SYMBOL_GPL vmlinux 0xd5f94474 kernfs_put +EXPORT_SYMBOL_GPL vmlinux 0xd5fa6fb6 phy_put +EXPORT_SYMBOL_GPL vmlinux 0xd5ffdbfa devm_request_pci_bus_resources +EXPORT_SYMBOL_GPL vmlinux 0xd6004338 crypto_alloc_shash +EXPORT_SYMBOL_GPL vmlinux 0xd62437bc tpm_send +EXPORT_SYMBOL_GPL vmlinux 0xd6252e01 unregister_pernet_device +EXPORT_SYMBOL_GPL vmlinux 0xd62b5d37 devm_nvmem_device_get +EXPORT_SYMBOL_GPL vmlinux 0xd6472c67 pci_bus_max_busnr +EXPORT_SYMBOL_GPL vmlinux 0xd64eb7fe gpiochip_free_own_desc +EXPORT_SYMBOL_GPL vmlinux 0xd64ed259 __memcat_p +EXPORT_SYMBOL_GPL vmlinux 0xd65572c5 virtqueue_get_used_addr +EXPORT_SYMBOL_GPL vmlinux 0xd6622557 genphy_c45_read_pma +EXPORT_SYMBOL_GPL vmlinux 0xd66d0f75 ata_sff_hsm_move +EXPORT_SYMBOL_GPL vmlinux 0xd66ed15a __devm_of_phy_provider_register +EXPORT_SYMBOL_GPL vmlinux 0xd67364f7 eventfd_ctx_fdget +EXPORT_SYMBOL_GPL vmlinux 0xd683bb2c vxlan_fdb_find_uc +EXPORT_SYMBOL_GPL vmlinux 0xd6a084d5 ahash_register_instance +EXPORT_SYMBOL_GPL vmlinux 0xd6a5573f __mmdrop +EXPORT_SYMBOL_GPL vmlinux 0xd6a77d43 addrconf_prefix_rcv_add_addr +EXPORT_SYMBOL_GPL vmlinux 0xd6b1f0a2 inet6_csk_xmit +EXPORT_SYMBOL_GPL vmlinux 0xd6b39920 rio_mport_read_config_16 +EXPORT_SYMBOL_GPL vmlinux 0xd6c31232 arizona_free_irq +EXPORT_SYMBOL_GPL vmlinux 0xd6c79203 crypto_unregister_shash +EXPORT_SYMBOL_GPL vmlinux 0xd6d0a239 xdp_rxq_info_unused +EXPORT_SYMBOL_GPL vmlinux 0xd6df6f44 __devm_pci_epc_create +EXPORT_SYMBOL_GPL vmlinux 0xd6e0d5bc vmbus_sendpacket_pagebuffer +EXPORT_SYMBOL_GPL vmlinux 0xd6ef61d4 pm_wakeup_dev_event +EXPORT_SYMBOL_GPL vmlinux 0xd6f6b843 pci_epf_bind +EXPORT_SYMBOL_GPL vmlinux 0xd6f80c28 sk_free_unlock_clone +EXPORT_SYMBOL_GPL vmlinux 0xd6feefa5 agp_num_entries +EXPORT_SYMBOL_GPL vmlinux 0xd72edd97 pinctrl_lookup_state +EXPORT_SYMBOL_GPL vmlinux 0xd730d4a4 crypto_enqueue_request_head +EXPORT_SYMBOL_GPL vmlinux 0xd7399d2a efivar_entry_iter_end +EXPORT_SYMBOL_GPL vmlinux 0xd74d2d9f ata_pci_device_suspend +EXPORT_SYMBOL_GPL vmlinux 0xd74e2d38 virtqueue_get_buf +EXPORT_SYMBOL_GPL vmlinux 0xd75b20aa rsa_parse_priv_key +EXPORT_SYMBOL_GPL vmlinux 0xd768e985 regulator_has_full_constraints +EXPORT_SYMBOL_GPL vmlinux 0xd7737c29 devlink_param_driverinit_value_set +EXPORT_SYMBOL_GPL vmlinux 0xd774957d mpi_write_to_sgl +EXPORT_SYMBOL_GPL vmlinux 0xd775191a metadata_dst_alloc +EXPORT_SYMBOL_GPL vmlinux 0xd7901fe5 ata_bmdma_status +EXPORT_SYMBOL_GPL vmlinux 0xd79f6845 device_pm_wait_for_dev +EXPORT_SYMBOL_GPL vmlinux 0xd7a3173d devm_get_free_pages +EXPORT_SYMBOL_GPL vmlinux 0xd7a35d5d sk_psock_init +EXPORT_SYMBOL_GPL vmlinux 0xd7a42881 sata_lpm_ignore_phy_events +EXPORT_SYMBOL_GPL vmlinux 0xd7b79bf9 __usb_create_hcd +EXPORT_SYMBOL_GPL vmlinux 0xd7b87288 netdev_rx_handler_register +EXPORT_SYMBOL_GPL vmlinux 0xd7c39fff free_iova +EXPORT_SYMBOL_GPL vmlinux 0xd7cc4401 fat_sync_inode +EXPORT_SYMBOL_GPL vmlinux 0xd7cea889 edac_mod_work +EXPORT_SYMBOL_GPL vmlinux 0xd7d1877e l3mdev_master_upper_ifindex_by_index_rcu +EXPORT_SYMBOL_GPL vmlinux 0xd7d98cec iomap_seek_data +EXPORT_SYMBOL_GPL vmlinux 0xd7db0b78 scsi_schedule_eh +EXPORT_SYMBOL_GPL vmlinux 0xd7f15a24 mctrl_gpio_free +EXPORT_SYMBOL_GPL vmlinux 0xd7f87938 virtqueue_kick +EXPORT_SYMBOL_GPL vmlinux 0xd8100339 phy_select_page +EXPORT_SYMBOL_GPL vmlinux 0xd8186efe icc_provider_del +EXPORT_SYMBOL_GPL vmlinux 0xd834046b spi_mem_dirmap_destroy +EXPORT_SYMBOL_GPL vmlinux 0xd84d35bd dax_read_lock +EXPORT_SYMBOL_GPL vmlinux 0xd86a9bfc dw_pcie_ep_init_notify +EXPORT_SYMBOL_GPL vmlinux 0xd879d635 bpf_trace_run4 +EXPORT_SYMBOL_GPL vmlinux 0xd87fc0a0 usb_amd_prefetch_quirk +EXPORT_SYMBOL_GPL vmlinux 0xd8a227de lwtunnel_build_state +EXPORT_SYMBOL_GPL vmlinux 0xd8abbd41 irq_get_irq_data +EXPORT_SYMBOL_GPL vmlinux 0xd8bb419e badblocks_check +EXPORT_SYMBOL_GPL vmlinux 0xd8c6628a pm_genpd_add_device +EXPORT_SYMBOL_GPL vmlinux 0xd8d5930a pci_max_pasids +EXPORT_SYMBOL_GPL vmlinux 0xd8d68ab1 dmi_memdev_type +EXPORT_SYMBOL_GPL vmlinux 0xd8db8dbd platform_device_register_full +EXPORT_SYMBOL_GPL vmlinux 0xd8f309c2 __ip_tunnel_change_mtu +EXPORT_SYMBOL_GPL vmlinux 0xd8fbb14d net_cls_cgrp_subsys_on_dfl_key +EXPORT_SYMBOL_GPL vmlinux 0xd902f7a1 ata_sas_slave_configure +EXPORT_SYMBOL_GPL vmlinux 0xd90d1ce7 crypto_alg_mod_lookup +EXPORT_SYMBOL_GPL vmlinux 0xd919806a amd_cache_northbridges +EXPORT_SYMBOL_GPL vmlinux 0xd91d8e9a crypto_register_alg +EXPORT_SYMBOL_GPL vmlinux 0xd920b4ee devm_regulator_register_supply_alias +EXPORT_SYMBOL_GPL vmlinux 0xd92f0791 leds_list_lock +EXPORT_SYMBOL_GPL vmlinux 0xd9340049 dev_pm_opp_get_max_transition_latency +EXPORT_SYMBOL_GPL vmlinux 0xd93a2849 inet_csk_route_req +EXPORT_SYMBOL_GPL vmlinux 0xd93a5cb1 efivar_variable_is_removable +EXPORT_SYMBOL_GPL vmlinux 0xd941dc3a dw_pcie_link_set_max_speed +EXPORT_SYMBOL_GPL vmlinux 0xd94395d8 ata_ncq_sdev_attrs +EXPORT_SYMBOL_GPL vmlinux 0xd9667e73 securityfs_create_dir +EXPORT_SYMBOL_GPL vmlinux 0xd96babb4 interval_tree_iter_next +EXPORT_SYMBOL_GPL vmlinux 0xd99d2e9d fsnotify_parent +EXPORT_SYMBOL_GPL vmlinux 0xd9a48dce alarmtimer_get_rtcdev +EXPORT_SYMBOL_GPL vmlinux 0xd9bd2a03 cpuidle_disable_device +EXPORT_SYMBOL_GPL vmlinux 0xd9c5829c devm_nvdimm_memremap +EXPORT_SYMBOL_GPL vmlinux 0xd9c95794 __crypto_alloc_tfm +EXPORT_SYMBOL_GPL vmlinux 0xd9cf00d4 devm_gpiod_unhinge +EXPORT_SYMBOL_GPL vmlinux 0xd9d0952e pci_enable_sriov +EXPORT_SYMBOL_GPL vmlinux 0xd9d5d879 sbitmap_queue_resize +EXPORT_SYMBOL_GPL vmlinux 0xd9e24457 ring_buffer_peek +EXPORT_SYMBOL_GPL vmlinux 0xd9e79bf9 fib6_get_table +EXPORT_SYMBOL_GPL vmlinux 0xd9e8a3f9 br_fdb_test_addr_hook +EXPORT_SYMBOL_GPL vmlinux 0xd9f8dea3 hwmon_notify_event +EXPORT_SYMBOL_GPL vmlinux 0xd9ff2172 ezx_pcap_write +EXPORT_SYMBOL_GPL vmlinux 0xda0686fe tpm2_get_tpm_pt +EXPORT_SYMBOL_GPL vmlinux 0xda15a15d alarm_forward +EXPORT_SYMBOL_GPL vmlinux 0xda1f78ee clear_hv_tscchange_cb +EXPORT_SYMBOL_GPL vmlinux 0xda3196a1 nf_queue_entry_free +EXPORT_SYMBOL_GPL vmlinux 0xda320d31 sfp_module_start +EXPORT_SYMBOL_GPL vmlinux 0xda353b74 bpf_trace_run6 +EXPORT_SYMBOL_GPL vmlinux 0xda45ff42 regulator_list_voltage_table +EXPORT_SYMBOL_GPL vmlinux 0xda4d77b1 tpm_chip_alloc +EXPORT_SYMBOL_GPL vmlinux 0xda6a47c3 clone_private_mount +EXPORT_SYMBOL_GPL vmlinux 0xda7912d4 freq_qos_add_request +EXPORT_SYMBOL_GPL vmlinux 0xda8465a0 platform_device_add_properties +EXPORT_SYMBOL_GPL vmlinux 0xda8e1302 software_node_find_by_name +EXPORT_SYMBOL_GPL vmlinux 0xdaa06dc1 acpi_lpat_raw_to_temp +EXPORT_SYMBOL_GPL vmlinux 0xdab5a1eb interval_tree_insert +EXPORT_SYMBOL_GPL vmlinux 0xdab77645 dw_pcie_upconfig_setup +EXPORT_SYMBOL_GPL vmlinux 0xdad4b8ac usb_put_intf +EXPORT_SYMBOL_GPL vmlinux 0xdad8ce8f screen_glyph_unicode +EXPORT_SYMBOL_GPL vmlinux 0xdaea33e3 iomap_page_mkwrite +EXPORT_SYMBOL_GPL vmlinux 0xdaf4dfb3 fb_mode_option +EXPORT_SYMBOL_GPL vmlinux 0xdaf5c16e __cookie_v4_check +EXPORT_SYMBOL_GPL vmlinux 0xdafae142 led_stop_software_blink +EXPORT_SYMBOL_GPL vmlinux 0xdafcdc3a ktime_get_snapshot +EXPORT_SYMBOL_GPL vmlinux 0xdb118df9 component_unbind_all +EXPORT_SYMBOL_GPL vmlinux 0xdb1b0360 wbt_enable_default +EXPORT_SYMBOL_GPL vmlinux 0xdb25da3e irq_work_queue +EXPORT_SYMBOL_GPL vmlinux 0xdb2cfb18 vmbus_setevent +EXPORT_SYMBOL_GPL vmlinux 0xdb394243 debugfs_create_x16 +EXPORT_SYMBOL_GPL vmlinux 0xdb40d5d2 edac_device_handle_ce_count +EXPORT_SYMBOL_GPL vmlinux 0xdb5146cb nvmem_cell_read_u64 +EXPORT_SYMBOL_GPL vmlinux 0xdb5f4fe9 ata_sff_prereset +EXPORT_SYMBOL_GPL vmlinux 0xdb63a944 acpi_lpat_get_conversion_table +EXPORT_SYMBOL_GPL vmlinux 0xdb67c532 crypto_register_skciphers +EXPORT_SYMBOL_GPL vmlinux 0xdb729912 __inet_lookup_listener +EXPORT_SYMBOL_GPL vmlinux 0xdb735885 alarm_cancel +EXPORT_SYMBOL_GPL vmlinux 0xdb8a1b3f usermodehelper_read_trylock +EXPORT_SYMBOL_GPL vmlinux 0xdbaa8d27 acpi_gpiochip_free_interrupts +EXPORT_SYMBOL_GPL vmlinux 0xdbc453fd acpi_cppc_processor_exit +EXPORT_SYMBOL_GPL vmlinux 0xdbe33f21 regmap_raw_write_async +EXPORT_SYMBOL_GPL vmlinux 0xdbf29726 __tracepoint_neigh_timer_handler +EXPORT_SYMBOL_GPL vmlinux 0xdbf7cb70 mpi_get_nbits +EXPORT_SYMBOL_GPL vmlinux 0xdc0e4332 irq_setup_alt_chip +EXPORT_SYMBOL_GPL vmlinux 0xdc0edfee regcache_cache_only +EXPORT_SYMBOL_GPL vmlinux 0xdc151580 tpm_tis_remove +EXPORT_SYMBOL_GPL vmlinux 0xdc21e866 hrtimer_forward +EXPORT_SYMBOL_GPL vmlinux 0xdc27f459 devm_regulator_bulk_unregister_supply_alias +EXPORT_SYMBOL_GPL vmlinux 0xdc2c0b62 sk_clone_lock +EXPORT_SYMBOL_GPL vmlinux 0xdc45a5db edac_stop_work +EXPORT_SYMBOL_GPL vmlinux 0xdc4be5ff usb_root_hub_lost_power +EXPORT_SYMBOL_GPL vmlinux 0xdc57ef64 nvme_cleanup_cmd +EXPORT_SYMBOL_GPL vmlinux 0xdc5bcdea ipv4_sk_update_pmtu +EXPORT_SYMBOL_GPL vmlinux 0xdc5f0252 pci_probe_reset_slot +EXPORT_SYMBOL_GPL vmlinux 0xdc6596fa irq_set_parent +EXPORT_SYMBOL_GPL vmlinux 0xdc6699cb acpi_dev_free_resource_list +EXPORT_SYMBOL_GPL vmlinux 0xdc6b9043 set_primary_fwnode +EXPORT_SYMBOL_GPL vmlinux 0xdc79d1e4 pci_platform_power_transition +EXPORT_SYMBOL_GPL vmlinux 0xdc7df67f apei_exec_ctx_init +EXPORT_SYMBOL_GPL vmlinux 0xdc825d6c usb_amd_quirk_pll_disable +EXPORT_SYMBOL_GPL vmlinux 0xdc8a4d61 efivar_entry_set_get_size +EXPORT_SYMBOL_GPL vmlinux 0xdc97af2e syscore_suspend +EXPORT_SYMBOL_GPL vmlinux 0xdc9e515f fscrypt_fname_siphash +EXPORT_SYMBOL_GPL vmlinux 0xdc9fa232 raw_notifier_chain_register +EXPORT_SYMBOL_GPL vmlinux 0xdcc09309 kobject_uevent_env +EXPORT_SYMBOL_GPL vmlinux 0xdcd18d2f queue_iova +EXPORT_SYMBOL_GPL vmlinux 0xdcd510ec blkcg_print_blkgs +EXPORT_SYMBOL_GPL vmlinux 0xdce23a83 sbitmap_queue_wake_up +EXPORT_SYMBOL_GPL vmlinux 0xdce89294 pci_try_reset_function +EXPORT_SYMBOL_GPL vmlinux 0xdcf84594 ndo_dflt_bridge_getlink +EXPORT_SYMBOL_GPL vmlinux 0xdcfd449a inet_twsk_put +EXPORT_SYMBOL_GPL vmlinux 0xdd041b68 perf_aux_output_end +EXPORT_SYMBOL_GPL vmlinux 0xdd060504 kernel_read_file_from_fd +EXPORT_SYMBOL_GPL vmlinux 0xdd0762df set_worker_desc +EXPORT_SYMBOL_GPL vmlinux 0xdd10f306 bus_create_file +EXPORT_SYMBOL_GPL vmlinux 0xdd221c37 mbox_free_channel +EXPORT_SYMBOL_GPL vmlinux 0xdd2fa561 blk_queue_required_elevator_features +EXPORT_SYMBOL_GPL vmlinux 0xdd391eff profile_event_unregister +EXPORT_SYMBOL_GPL vmlinux 0xdd404c22 nvme_reset_ctrl_sync +EXPORT_SYMBOL_GPL vmlinux 0xdd4bab6c blk_ksm_destroy +EXPORT_SYMBOL_GPL vmlinux 0xdd5be353 iomap_fiemap +EXPORT_SYMBOL_GPL vmlinux 0xdd5fda0f usb_hcd_map_urb_for_dma +EXPORT_SYMBOL_GPL vmlinux 0xdd626ee3 fuse_len_args +EXPORT_SYMBOL_GPL vmlinux 0xdd67470c usb_queue_reset_device +EXPORT_SYMBOL_GPL vmlinux 0xdd79ab1d rio_request_outb_mbox +EXPORT_SYMBOL_GPL vmlinux 0xdd7f0765 __tracepoint_powernv_throttle +EXPORT_SYMBOL_GPL vmlinux 0xdd831724 pci_epc_clear_bar +EXPORT_SYMBOL_GPL vmlinux 0xdd9007de sg_scsi_ioctl +EXPORT_SYMBOL_GPL vmlinux 0xdd90e9bc ip6_datagram_connect_v6_only +EXPORT_SYMBOL_GPL vmlinux 0xdda1955b iomap_set_page_dirty +EXPORT_SYMBOL_GPL vmlinux 0xddaa9560 icc_provider_add +EXPORT_SYMBOL_GPL vmlinux 0xddb3ed9c iommu_detach_group +EXPORT_SYMBOL_GPL vmlinux 0xddbeeecc pci_lock_rescan_remove +EXPORT_SYMBOL_GPL vmlinux 0xddc70e8e bsg_setup_queue +EXPORT_SYMBOL_GPL vmlinux 0xddc75fee intel_msic_irq_read +EXPORT_SYMBOL_GPL vmlinux 0xddc9a015 synchronize_srcu_expedited +EXPORT_SYMBOL_GPL vmlinux 0xddea7b84 pci_reset_bus +EXPORT_SYMBOL_GPL vmlinux 0xddf21547 mddev_init_writes_pending +EXPORT_SYMBOL_GPL vmlinux 0xde09a94d xas_find +EXPORT_SYMBOL_GPL vmlinux 0xde11bfb2 debugfs_attr_read +EXPORT_SYMBOL_GPL vmlinux 0xde2d3af0 acpi_dev_resource_ext_address_space +EXPORT_SYMBOL_GPL vmlinux 0xde3a2f91 gpiochip_irqchip_add_domain +EXPORT_SYMBOL_GPL vmlinux 0xde47ee88 sysfs_groups_change_owner +EXPORT_SYMBOL_GPL vmlinux 0xde5b5a96 bus_remove_file +EXPORT_SYMBOL_GPL vmlinux 0xde6f1851 TSS_checkhmac1 +EXPORT_SYMBOL_GPL vmlinux 0xde83ef84 iommu_attach_group +EXPORT_SYMBOL_GPL vmlinux 0xde8e839f alloc_page_buffers +EXPORT_SYMBOL_GPL vmlinux 0xdea9919b kmsg_dump_unregister +EXPORT_SYMBOL_GPL vmlinux 0xdeaed257 __inet_twsk_schedule +EXPORT_SYMBOL_GPL vmlinux 0xdeb32c16 pci_epc_linkup +EXPORT_SYMBOL_GPL vmlinux 0xdeb37d3d device_get_named_child_node +EXPORT_SYMBOL_GPL vmlinux 0xdeb6e12a fuse_request_end +EXPORT_SYMBOL_GPL vmlinux 0xded3d453 xfrm_audit_policy_delete +EXPORT_SYMBOL_GPL vmlinux 0xdeec7751 phy_destroy +EXPORT_SYMBOL_GPL vmlinux 0xdeffa0a7 edac_raw_mc_handle_error +EXPORT_SYMBOL_GPL vmlinux 0xdf0ca3f4 cpu_latency_qos_request_active +EXPORT_SYMBOL_GPL vmlinux 0xdf0f75c6 eventfd_signal +EXPORT_SYMBOL_GPL vmlinux 0xdf175dbc acpi_subsys_suspend_late +EXPORT_SYMBOL_GPL vmlinux 0xdf1882af dbgp_reset_prep +EXPORT_SYMBOL_GPL vmlinux 0xdf1f5858 rtc_nvmem_register +EXPORT_SYMBOL_GPL vmlinux 0xdf223247 __tracepoint_sched_overutilized_tp +EXPORT_SYMBOL_GPL vmlinux 0xdf2738bb cpu_cgrp_subsys_enabled_key +EXPORT_SYMBOL_GPL vmlinux 0xdf28965b acomp_request_free +EXPORT_SYMBOL_GPL vmlinux 0xdf28d8bc irq_domain_translate_twocell +EXPORT_SYMBOL_GPL vmlinux 0xdf46714f blk_ksm_reprogram_all_keys +EXPORT_SYMBOL_GPL vmlinux 0xdf46a5c9 init_iova_domain +EXPORT_SYMBOL_GPL vmlinux 0xdf4d9340 bio_associate_blkg +EXPORT_SYMBOL_GPL vmlinux 0xdf622c10 clockevents_register_device +EXPORT_SYMBOL_GPL vmlinux 0xdf6fe027 devm_led_trigger_register +EXPORT_SYMBOL_GPL vmlinux 0xdf708101 noop_direct_IO +EXPORT_SYMBOL_GPL vmlinux 0xdf802dd3 vfs_listxattr +EXPORT_SYMBOL_GPL vmlinux 0xdf9208c0 alloc_workqueue +EXPORT_SYMBOL_GPL vmlinux 0xdf920a0c fwnode_get_named_gpiod +EXPORT_SYMBOL_GPL vmlinux 0xdf926ed9 handle_simple_irq +EXPORT_SYMBOL_GPL vmlinux 0xdf9eaf9f debugfs_print_regs32 +EXPORT_SYMBOL_GPL vmlinux 0xdfb6bffc do_unregister_con_driver +EXPORT_SYMBOL_GPL vmlinux 0xdfbc4dcc __blk_req_zone_write_lock +EXPORT_SYMBOL_GPL vmlinux 0xdfc42081 mmu_notifier_unregister +EXPORT_SYMBOL_GPL vmlinux 0xdfcb6c90 mctrl_gpio_set +EXPORT_SYMBOL_GPL vmlinux 0xdfcd49c1 crypto_stats_decompress +EXPORT_SYMBOL_GPL vmlinux 0xdfd90d2e gpiochip_add_pin_range +EXPORT_SYMBOL_GPL vmlinux 0xdff14e9e nvme_reset_ctrl +EXPORT_SYMBOL_GPL vmlinux 0xdffed206 dm_per_bio_data +EXPORT_SYMBOL_GPL vmlinux 0xe00af151 spi_get_device_id +EXPORT_SYMBOL_GPL vmlinux 0xe012fa19 pci_stop_and_remove_bus_device_locked +EXPORT_SYMBOL_GPL vmlinux 0xe037fdb1 elv_rqhash_add +EXPORT_SYMBOL_GPL vmlinux 0xe04af0b7 __pm_runtime_set_status +EXPORT_SYMBOL_GPL vmlinux 0xe05e2f85 nexthop_free_rcu +EXPORT_SYMBOL_GPL vmlinux 0xe0626372 virtqueue_add_outbuf +EXPORT_SYMBOL_GPL vmlinux 0xe071d05d zs_pool_stats +EXPORT_SYMBOL_GPL vmlinux 0xe089cfcc agp_memory_reserved +EXPORT_SYMBOL_GPL vmlinux 0xe0a3ac74 bpf_event_output +EXPORT_SYMBOL_GPL vmlinux 0xe0a71b7f usb_find_interface +EXPORT_SYMBOL_GPL vmlinux 0xe0b1c103 clk_set_max_rate +EXPORT_SYMBOL_GPL vmlinux 0xe0b438e8 acpi_pm_wakeup_event +EXPORT_SYMBOL_GPL vmlinux 0xe0c38c90 dev_pm_qos_add_ancestor_request +EXPORT_SYMBOL_GPL vmlinux 0xe0c6df81 nvme_init_ctrl +EXPORT_SYMBOL_GPL vmlinux 0xe0c77bb5 mce_notify_irq +EXPORT_SYMBOL_GPL vmlinux 0xe0d6e7e1 spi_controller_dma_unmap_mem_op_data +EXPORT_SYMBOL_GPL vmlinux 0xe0e32de8 dev_set_name +EXPORT_SYMBOL_GPL vmlinux 0xe1017cf0 gpiod_direction_input +EXPORT_SYMBOL_GPL vmlinux 0xe102d37e __rt_mutex_init +EXPORT_SYMBOL_GPL vmlinux 0xe10cd6ad erst_get_record_id_begin +EXPORT_SYMBOL_GPL vmlinux 0xe1297d71 smp_ops +EXPORT_SYMBOL_GPL vmlinux 0xe1541037 virtio_check_driver_offered_feature +EXPORT_SYMBOL_GPL vmlinux 0xe1775ee7 dm_get_reserved_bio_based_ios +EXPORT_SYMBOL_GPL vmlinux 0xe1a8d7c9 net_rwsem +EXPORT_SYMBOL_GPL vmlinux 0xe1aa2d62 set_hv_tscchange_cb +EXPORT_SYMBOL_GPL vmlinux 0xe1bd6123 inet6_csk_addr2sockaddr +EXPORT_SYMBOL_GPL vmlinux 0xe1bd6c99 rio_init_mports +EXPORT_SYMBOL_GPL vmlinux 0xe1c63523 blk_ksm_get_slot_idx +EXPORT_SYMBOL_GPL vmlinux 0xe1c8728a devm_add_action +EXPORT_SYMBOL_GPL vmlinux 0xe1d91007 cdrom_read_tocentry +EXPORT_SYMBOL_GPL vmlinux 0xe1e4df72 sock_zerocopy_callback +EXPORT_SYMBOL_GPL vmlinux 0xe20db823 mddev_init +EXPORT_SYMBOL_GPL vmlinux 0xe21d43cf class_dev_iter_next +EXPORT_SYMBOL_GPL vmlinux 0xe21e0094 perf_event_refresh +EXPORT_SYMBOL_GPL vmlinux 0xe21e70bc rhashtable_walk_stop +EXPORT_SYMBOL_GPL vmlinux 0xe233762a input_event_from_user +EXPORT_SYMBOL_GPL vmlinux 0xe23b1081 hrtimer_sleeper_start_expires +EXPORT_SYMBOL_GPL vmlinux 0xe2429891 usb_ifnum_to_if +EXPORT_SYMBOL_GPL vmlinux 0xe2456e96 devfreq_event_get_edev_count +EXPORT_SYMBOL_GPL vmlinux 0xe25592f3 crypto_grab_shash +EXPORT_SYMBOL_GPL vmlinux 0xe2582a12 btree_init +EXPORT_SYMBOL_GPL vmlinux 0xe25a862c crypto_register_rngs +EXPORT_SYMBOL_GPL vmlinux 0xe2604b5a pci_test_config_bits +EXPORT_SYMBOL_GPL vmlinux 0xe283fe53 udp_sock_create6 +EXPORT_SYMBOL_GPL vmlinux 0xe28c4565 sync_page_io +EXPORT_SYMBOL_GPL vmlinux 0xe28f3b4e fscrypt_ioctl_get_key_status +EXPORT_SYMBOL_GPL vmlinux 0xe291c16e sock_zerocopy_alloc +EXPORT_SYMBOL_GPL vmlinux 0xe295c0ff is_hpet_enabled +EXPORT_SYMBOL_GPL vmlinux 0xe2a72e3d devres_for_each_res +EXPORT_SYMBOL_GPL vmlinux 0xe2b3207a unregister_switchdev_notifier +EXPORT_SYMBOL_GPL vmlinux 0xe2ce2b4d evm_set_key +EXPORT_SYMBOL_GPL vmlinux 0xe2e885d4 udp_tunnel_xmit_skb +EXPORT_SYMBOL_GPL vmlinux 0xe3043ff9 request_any_context_irq +EXPORT_SYMBOL_GPL vmlinux 0xe3054727 platform_device_put +EXPORT_SYMBOL_GPL vmlinux 0xe32055e4 gpiochip_generic_config +EXPORT_SYMBOL_GPL vmlinux 0xe329ba24 housekeeping_cpumask +EXPORT_SYMBOL_GPL vmlinux 0xe338c5ac inet_hashinfo2_init_mod +EXPORT_SYMBOL_GPL vmlinux 0xe33bbe7c acpi_dma_controller_register +EXPORT_SYMBOL_GPL vmlinux 0xe36357c9 vmbus_close +EXPORT_SYMBOL_GPL vmlinux 0xe368f5ae bpf_prog_destroy +EXPORT_SYMBOL_GPL vmlinux 0xe36ae793 acpi_subsys_runtime_resume +EXPORT_SYMBOL_GPL vmlinux 0xe3940e0b rtc_alarm_irq_enable +EXPORT_SYMBOL_GPL vmlinux 0xe3948ff4 acpi_walk_dep_device_list +EXPORT_SYMBOL_GPL vmlinux 0xe397caf5 seq_buf_printf +EXPORT_SYMBOL_GPL vmlinux 0xe39d0794 usb_phy_roothub_exit +EXPORT_SYMBOL_GPL vmlinux 0xe3a41d1f mbox_send_message +EXPORT_SYMBOL_GPL vmlinux 0xe3a74a5f device_find_child_by_name +EXPORT_SYMBOL_GPL vmlinux 0xe3b09712 kprobe_event_delete +EXPORT_SYMBOL_GPL vmlinux 0xe3b32608 pcc_mbox_request_channel +EXPORT_SYMBOL_GPL vmlinux 0xe3b7d8b6 dma_resv_test_signaled_rcu +EXPORT_SYMBOL_GPL vmlinux 0xe3bc7fd4 hpet_unregister_irq_handler +EXPORT_SYMBOL_GPL vmlinux 0xe3cd5fae klist_iter_init +EXPORT_SYMBOL_GPL vmlinux 0xe3d46bd2 __rio_local_read_config_16 +EXPORT_SYMBOL_GPL vmlinux 0xe3d470f8 devm_device_add_groups +EXPORT_SYMBOL_GPL vmlinux 0xe3e88acb __get_current_cr3_fast +EXPORT_SYMBOL_GPL vmlinux 0xe409dcc5 gpiod_export_link +EXPORT_SYMBOL_GPL vmlinux 0xe40bb23e devlink_health_reporter_priv +EXPORT_SYMBOL_GPL vmlinux 0xe412a39f regmap_bulk_write +EXPORT_SYMBOL_GPL vmlinux 0xe415640c blk_mq_free_request +EXPORT_SYMBOL_GPL vmlinux 0xe41726db devm_kstrdup +EXPORT_SYMBOL_GPL vmlinux 0xe4248980 cper_estatus_print +EXPORT_SYMBOL_GPL vmlinux 0xe4309905 syscore_resume +EXPORT_SYMBOL_GPL vmlinux 0xe44cfba9 led_trigger_remove +EXPORT_SYMBOL_GPL vmlinux 0xe456a3bc pci_hp_del +EXPORT_SYMBOL_GPL vmlinux 0xe465929a dw_pcie_msi_init +EXPORT_SYMBOL_GPL vmlinux 0xe46d336c devlink_port_attrs_set +EXPORT_SYMBOL_GPL vmlinux 0xe4703e79 bpf_trace_run5 +EXPORT_SYMBOL_GPL vmlinux 0xe4771709 bio_associate_blkg_from_css +EXPORT_SYMBOL_GPL vmlinux 0xe479713f __pci_reset_function_locked +EXPORT_SYMBOL_GPL vmlinux 0xe47abc50 inet_twsk_alloc +EXPORT_SYMBOL_GPL vmlinux 0xe47c53a4 mddev_congested +EXPORT_SYMBOL_GPL vmlinux 0xe48611ac trace_clock_global +EXPORT_SYMBOL_GPL vmlinux 0xe4874aef __tracepoint_add_device_to_group +EXPORT_SYMBOL_GPL vmlinux 0xe495926a alarm_restart +EXPORT_SYMBOL_GPL vmlinux 0xe4971ade tracing_alloc_snapshot +EXPORT_SYMBOL_GPL vmlinux 0xe49fea8f fixed_phy_unregister +EXPORT_SYMBOL_GPL vmlinux 0xe4ab63ff ksm_madvise +EXPORT_SYMBOL_GPL vmlinux 0xe4b064f9 pcie_link_speed +EXPORT_SYMBOL_GPL vmlinux 0xe4b62a54 mbox_flush +EXPORT_SYMBOL_GPL vmlinux 0xe4b818c3 phy_speed_to_str +EXPORT_SYMBOL_GPL vmlinux 0xe4bfe36d __kthread_should_park +EXPORT_SYMBOL_GPL vmlinux 0xe4c2c66c rtc_ktime_to_tm +EXPORT_SYMBOL_GPL vmlinux 0xe4c2f45a ata_host_register +EXPORT_SYMBOL_GPL vmlinux 0xe4d97797 serial8250_rpm_get +EXPORT_SYMBOL_GPL vmlinux 0xe4dbd9a2 __fscrypt_prepare_link +EXPORT_SYMBOL_GPL vmlinux 0xe4dd6dc7 srcutorture_get_gp_data +EXPORT_SYMBOL_GPL vmlinux 0xe4e48b12 swphy_validate_state +EXPORT_SYMBOL_GPL vmlinux 0xe4f9cb87 efi_mm +EXPORT_SYMBOL_GPL vmlinux 0xe50e969f gpiod_get_array_value_cansleep +EXPORT_SYMBOL_GPL vmlinux 0xe518b7f1 pci_bus_add_device +EXPORT_SYMBOL_GPL vmlinux 0xe52a4ac9 sock_zerocopy_put +EXPORT_SYMBOL_GPL vmlinux 0xe54981d8 pci_epc_raise_irq +EXPORT_SYMBOL_GPL vmlinux 0xe54c6d58 put_iova_domain +EXPORT_SYMBOL_GPL vmlinux 0xe5586ee9 dma_can_mmap +EXPORT_SYMBOL_GPL vmlinux 0xe55d1116 pci_epc_get_msi +EXPORT_SYMBOL_GPL vmlinux 0xe58261d9 handle_level_irq +EXPORT_SYMBOL_GPL vmlinux 0xe5883bd9 class_compat_unregister +EXPORT_SYMBOL_GPL vmlinux 0xe58c891e xhci_shutdown +EXPORT_SYMBOL_GPL vmlinux 0xe595b4d1 vmbus_teardown_gpadl +EXPORT_SYMBOL_GPL vmlinux 0xe596f624 __page_mapcount +EXPORT_SYMBOL_GPL vmlinux 0xe59f6290 dev_fwnode +EXPORT_SYMBOL_GPL vmlinux 0xe5b5d5ee __netpoll_cleanup +EXPORT_SYMBOL_GPL vmlinux 0xe5c02b64 freq_qos_remove_request +EXPORT_SYMBOL_GPL vmlinux 0xe5c1b357 irq_chip_set_type_parent +EXPORT_SYMBOL_GPL vmlinux 0xe5c6c67b devfreq_event_get_edev_by_phandle +EXPORT_SYMBOL_GPL vmlinux 0xe5cfd810 serial8250_clear_and_reinit_fifos +EXPORT_SYMBOL_GPL vmlinux 0xe5d046dc ata_do_dev_read_id +EXPORT_SYMBOL_GPL vmlinux 0xe5f73406 hyperv_write_cfg_blk +EXPORT_SYMBOL_GPL vmlinux 0xe5f85a70 dm_path_uevent +EXPORT_SYMBOL_GPL vmlinux 0xe60632a9 edac_queue_work +EXPORT_SYMBOL_GPL vmlinux 0xe60a5e8d pids_cgrp_subsys_enabled_key +EXPORT_SYMBOL_GPL vmlinux 0xe61de83b pm_runtime_irq_safe +EXPORT_SYMBOL_GPL vmlinux 0xe628bb9f phy_fibre_port_array +EXPORT_SYMBOL_GPL vmlinux 0xe63f56d3 dev_pm_opp_find_freq_ceil_by_volt +EXPORT_SYMBOL_GPL vmlinux 0xe64ad8ea unregister_nmi_handler +EXPORT_SYMBOL_GPL vmlinux 0xe651ddd0 regmap_write_async +EXPORT_SYMBOL_GPL vmlinux 0xe65c1938 usb_phy_roothub_alloc +EXPORT_SYMBOL_GPL vmlinux 0xe68712d1 blkdev_write_iter +EXPORT_SYMBOL_GPL vmlinux 0xe6897fd4 iommu_iova_to_phys +EXPORT_SYMBOL_GPL vmlinux 0xe68b55c8 irq_find_matching_fwspec +EXPORT_SYMBOL_GPL vmlinux 0xe691b4fc thermal_zone_get_temp +EXPORT_SYMBOL_GPL vmlinux 0xe6a257f1 divider_round_rate_parent +EXPORT_SYMBOL_GPL vmlinux 0xe6a502bd skb_splice_bits +EXPORT_SYMBOL_GPL vmlinux 0xe6c87a10 gpiochip_line_is_valid +EXPORT_SYMBOL_GPL vmlinux 0xe6e40502 rcu_get_gp_seq +EXPORT_SYMBOL_GPL vmlinux 0xe6eb27ae gpiochip_lock_as_irq +EXPORT_SYMBOL_GPL vmlinux 0xe6ec8539 devm_regmap_add_irq_chip_np +EXPORT_SYMBOL_GPL vmlinux 0xe6f52443 klist_add_head +EXPORT_SYMBOL_GPL vmlinux 0xe6f5e6f5 xas_clear_mark +EXPORT_SYMBOL_GPL vmlinux 0xe6f70355 relay_close +EXPORT_SYMBOL_GPL vmlinux 0xe6f83837 acpi_bus_attach_private_data +EXPORT_SYMBOL_GPL vmlinux 0xe6fe0fd7 uprobe_register +EXPORT_SYMBOL_GPL vmlinux 0xe7004725 gpiochip_irq_map +EXPORT_SYMBOL_GPL vmlinux 0xe7166b00 noop_backing_dev_info +EXPORT_SYMBOL_GPL vmlinux 0xe7232e0f user_return_notifier_unregister +EXPORT_SYMBOL_GPL vmlinux 0xe7260738 raw_unhash_sk +EXPORT_SYMBOL_GPL vmlinux 0xe72cd1eb get_net_ns_by_fd +EXPORT_SYMBOL_GPL vmlinux 0xe7346ba7 dev_pm_qos_remove_notifier +EXPORT_SYMBOL_GPL vmlinux 0xe73de1d3 free_vm_area +EXPORT_SYMBOL_GPL vmlinux 0xe740b58a hv_vp_assist_page +EXPORT_SYMBOL_GPL vmlinux 0xe7456dbb sysfs_create_link +EXPORT_SYMBOL_GPL vmlinux 0xe74a0729 uart_set_options +EXPORT_SYMBOL_GPL vmlinux 0xe753b68d devlink_fmsg_arr_pair_nest_end +EXPORT_SYMBOL_GPL vmlinux 0xe762ce03 ata_cable_unknown +EXPORT_SYMBOL_GPL vmlinux 0xe769232e sprint_symbol_no_offset +EXPORT_SYMBOL_GPL vmlinux 0xe77c0f4e wm8997_irq +EXPORT_SYMBOL_GPL vmlinux 0xe7805562 pinctrl_force_sleep +EXPORT_SYMBOL_GPL vmlinux 0xe783e261 sysfs_emit +EXPORT_SYMBOL_GPL vmlinux 0xe78a5d94 fuse_dev_install +EXPORT_SYMBOL_GPL vmlinux 0xe79bf0c4 klp_shadow_get +EXPORT_SYMBOL_GPL vmlinux 0xe7bd826c dm_start_time_ns_from_clone +EXPORT_SYMBOL_GPL vmlinux 0xe7cce4f2 serial8250_do_set_mctrl +EXPORT_SYMBOL_GPL vmlinux 0xe7d6d2d4 filter_match_preds +EXPORT_SYMBOL_GPL vmlinux 0xe7e5bcbf pci_vfs_assigned +EXPORT_SYMBOL_GPL vmlinux 0xe7eee3d5 __cookie_v4_init_sequence +EXPORT_SYMBOL_GPL vmlinux 0xe7f07573 tpm_default_chip +EXPORT_SYMBOL_GPL vmlinux 0xe7ffe877 pcpu_base_addr +EXPORT_SYMBOL_GPL vmlinux 0xe802fabe ata_port_schedule_eh +EXPORT_SYMBOL_GPL vmlinux 0xe809cffb ring_buffer_time_stamp +EXPORT_SYMBOL_GPL vmlinux 0xe80caa90 iommu_group_for_each_dev +EXPORT_SYMBOL_GPL vmlinux 0xe8125ae4 __mdiobus_modify_changed +EXPORT_SYMBOL_GPL vmlinux 0xe818b32b ata_bmdma_interrupt +EXPORT_SYMBOL_GPL vmlinux 0xe81ddad6 tracing_generic_entry_update +EXPORT_SYMBOL_GPL vmlinux 0xe81dfbd5 __inode_attach_wb +EXPORT_SYMBOL_GPL vmlinux 0xe81e9438 _copy_from_iter_flushcache +EXPORT_SYMBOL_GPL vmlinux 0xe82a2eda kthread_queue_work +EXPORT_SYMBOL_GPL vmlinux 0xe83e6f8f pin_get_name +EXPORT_SYMBOL_GPL vmlinux 0xe83eba32 itlb_multihit_kvm_mitigation +EXPORT_SYMBOL_GPL vmlinux 0xe84f6e5c pciserial_remove_ports +EXPORT_SYMBOL_GPL vmlinux 0xe85b25d2 dm_get_queue_limits +EXPORT_SYMBOL_GPL vmlinux 0xe862c4b7 dpm_suspend_start +EXPORT_SYMBOL_GPL vmlinux 0xe86c87ce usb_set_device_state +EXPORT_SYMBOL_GPL vmlinux 0xe87adc1d intel_msic_reg_write +EXPORT_SYMBOL_GPL vmlinux 0xe880b64b perf_event_sysfs_show +EXPORT_SYMBOL_GPL vmlinux 0xe88482cd nexthop_for_each_fib6_nh +EXPORT_SYMBOL_GPL vmlinux 0xe886bdbe cpufreq_freq_attr_scaling_available_freqs +EXPORT_SYMBOL_GPL vmlinux 0xe88fd89b nvdimm_pmem_region_create +EXPORT_SYMBOL_GPL vmlinux 0xe897bd9b perf_tp_event +EXPORT_SYMBOL_GPL vmlinux 0xe8b40f33 __tracepoint_remove_device_from_group +EXPORT_SYMBOL_GPL vmlinux 0xe8ba52ff bsg_job_done +EXPORT_SYMBOL_GPL vmlinux 0xe8bf464c relay_switch_subbuf +EXPORT_SYMBOL_GPL vmlinux 0xe8c77392 scsi_dh_set_params +EXPORT_SYMBOL_GPL vmlinux 0xe8c88256 tpm1_do_selftest +EXPORT_SYMBOL_GPL vmlinux 0xe8dc6e15 devlink_param_driverinit_value_get +EXPORT_SYMBOL_GPL vmlinux 0xe8e22bbb blk_rq_unprep_clone +EXPORT_SYMBOL_GPL vmlinux 0xe8e28847 tty_save_termios +EXPORT_SYMBOL_GPL vmlinux 0xe8e85253 tcp_reno_undo_cwnd +EXPORT_SYMBOL_GPL vmlinux 0xe8e9fe23 ip6_route_output_flags +EXPORT_SYMBOL_GPL vmlinux 0xe8f6f2f6 free_fib_info +EXPORT_SYMBOL_GPL vmlinux 0xe903cbe1 iomap_truncate_page +EXPORT_SYMBOL_GPL vmlinux 0xe906401d badblocks_set +EXPORT_SYMBOL_GPL vmlinux 0xe92014c0 devres_release_group +EXPORT_SYMBOL_GPL vmlinux 0xe93e49c3 devres_free +EXPORT_SYMBOL_GPL vmlinux 0xe93f9378 rtnl_af_register +EXPORT_SYMBOL_GPL vmlinux 0xe94ff357 syscon_node_to_regmap +EXPORT_SYMBOL_GPL vmlinux 0xe95ec5f3 iomap_writepages +EXPORT_SYMBOL_GPL vmlinux 0xe965319a debugfs_create_regset32 +EXPORT_SYMBOL_GPL vmlinux 0xe975642f regulator_list_voltage_pickable_linear_range +EXPORT_SYMBOL_GPL vmlinux 0xe995f2e0 devlink_flash_update_status_notify +EXPORT_SYMBOL_GPL vmlinux 0xe99be1a9 ata_scsi_queuecmd +EXPORT_SYMBOL_GPL vmlinux 0xe99f94fa devm_hwspin_lock_register +EXPORT_SYMBOL_GPL vmlinux 0xe9a91f34 sk_attach_filter +EXPORT_SYMBOL_GPL vmlinux 0xe9adfce3 crypto_shash_finup +EXPORT_SYMBOL_GPL vmlinux 0xe9ce931a kvm_para_available +EXPORT_SYMBOL_GPL vmlinux 0xe9d1b7cf irq_to_pcap +EXPORT_SYMBOL_GPL vmlinux 0xe9d9be62 iomap_ioend_try_merge +EXPORT_SYMBOL_GPL vmlinux 0xe9da3e65 scsi_bus_type +EXPORT_SYMBOL_GPL vmlinux 0xe9e18eb7 verify_pkcs7_signature +EXPORT_SYMBOL_GPL vmlinux 0xe9e2fcca fsnotify_destroy_mark +EXPORT_SYMBOL_GPL vmlinux 0xe9e4a517 nf_ip_route +EXPORT_SYMBOL_GPL vmlinux 0xea0feac9 platform_device_add_data +EXPORT_SYMBOL_GPL vmlinux 0xea124bd1 gcd +EXPORT_SYMBOL_GPL vmlinux 0xea16b68d handle_fasteoi_irq +EXPORT_SYMBOL_GPL vmlinux 0xea17b043 devm_gpiod_get_array_optional +EXPORT_SYMBOL_GPL vmlinux 0xea1e5d84 nvme_change_ctrl_state +EXPORT_SYMBOL_GPL vmlinux 0xea287155 pci_dev_run_wake +EXPORT_SYMBOL_GPL vmlinux 0xea29d653 vma_kernel_pagesize +EXPORT_SYMBOL_GPL vmlinux 0xea38036f ring_buffer_entries +EXPORT_SYMBOL_GPL vmlinux 0xea432daa tcp_done +EXPORT_SYMBOL_GPL vmlinux 0xea4a88f6 __irq_domain_alloc_fwnode +EXPORT_SYMBOL_GPL vmlinux 0xea6b6246 blk_trace_remove +EXPORT_SYMBOL_GPL vmlinux 0xea7711dc crypto_unregister_ahashes +EXPORT_SYMBOL_GPL vmlinux 0xeaa9b7f1 sock_inuse_get +EXPORT_SYMBOL_GPL vmlinux 0xeaad96f9 sbitmap_queue_clear +EXPORT_SYMBOL_GPL vmlinux 0xeac7d953 put_pid +EXPORT_SYMBOL_GPL vmlinux 0xead54924 mctrl_gpio_to_gpiod +EXPORT_SYMBOL_GPL vmlinux 0xeae0f496 clean_acked_data_flush +EXPORT_SYMBOL_GPL vmlinux 0xeaf7fe0f sbitmap_resize +EXPORT_SYMBOL_GPL vmlinux 0xeaf83024 regulator_map_voltage_linear_range +EXPORT_SYMBOL_GPL vmlinux 0xeaf8d518 usb_hcd_giveback_urb +EXPORT_SYMBOL_GPL vmlinux 0xeafe07b8 clk_bulk_prepare +EXPORT_SYMBOL_GPL vmlinux 0xeb2b7844 mmu_notifier_put +EXPORT_SYMBOL_GPL vmlinux 0xeb3794d0 devlink_params_unregister +EXPORT_SYMBOL_GPL vmlinux 0xeb38ad7c serial8250_set_defaults +EXPORT_SYMBOL_GPL vmlinux 0xeb3af8c7 ncsi_unregister_dev +EXPORT_SYMBOL_GPL vmlinux 0xeb3c8d73 wm5110_irq +EXPORT_SYMBOL_GPL vmlinux 0xeb493f15 clk_register_fractional_divider +EXPORT_SYMBOL_GPL vmlinux 0xeb51116a fscrypt_file_open +EXPORT_SYMBOL_GPL vmlinux 0xeb6aaf36 kernel_read_file_from_path_initns +EXPORT_SYMBOL_GPL vmlinux 0xeb796b15 __platform_driver_probe +EXPORT_SYMBOL_GPL vmlinux 0xeb7c9746 tpm_pcr_read +EXPORT_SYMBOL_GPL vmlinux 0xeb9e0208 shash_ahash_finup +EXPORT_SYMBOL_GPL vmlinux 0xeba2401f ip6_pol_route +EXPORT_SYMBOL_GPL vmlinux 0xebaba993 gpiochip_line_is_open_drain +EXPORT_SYMBOL_GPL vmlinux 0xebb25a2d get_device +EXPORT_SYMBOL_GPL vmlinux 0xebc9a09f lock_system_sleep +EXPORT_SYMBOL_GPL vmlinux 0xebd15e33 pci_iomap_wc +EXPORT_SYMBOL_GPL vmlinux 0xebd4cc11 mctrl_gpio_enable_ms +EXPORT_SYMBOL_GPL vmlinux 0xebd63647 path_noexec +EXPORT_SYMBOL_GPL vmlinux 0xebdad3e4 device_match_of_node +EXPORT_SYMBOL_GPL vmlinux 0xebe1c5cb iomap_seek_hole +EXPORT_SYMBOL_GPL vmlinux 0xebee2bd4 debugfs_create_u64 +EXPORT_SYMBOL_GPL vmlinux 0xec4452aa regulator_get +EXPORT_SYMBOL_GPL vmlinux 0xec49b491 gpiod_export +EXPORT_SYMBOL_GPL vmlinux 0xec5668f6 dax_zero_page_range +EXPORT_SYMBOL_GPL vmlinux 0xec59de0c debugfs_create_u32_array +EXPORT_SYMBOL_GPL vmlinux 0xec5ad73b trace_seq_bitmask +EXPORT_SYMBOL_GPL vmlinux 0xec660cd3 __tracepoint_fib6_table_lookup +EXPORT_SYMBOL_GPL vmlinux 0xec68ba70 clk_bulk_enable +EXPORT_SYMBOL_GPL vmlinux 0xec71a927 gpiod_set_value +EXPORT_SYMBOL_GPL vmlinux 0xec774acb cpufreq_frequency_table_verify +EXPORT_SYMBOL_GPL vmlinux 0xec77e790 pci_assign_unassigned_bridge_resources +EXPORT_SYMBOL_GPL vmlinux 0xec788566 acpi_target_system_state +EXPORT_SYMBOL_GPL vmlinux 0xec86008d sched_setscheduler +EXPORT_SYMBOL_GPL vmlinux 0xec8915a2 dev_pm_opp_get_opp_count +EXPORT_SYMBOL_GPL vmlinux 0xec89dba4 crypto_aead_encrypt +EXPORT_SYMBOL_GPL vmlinux 0xec9a4144 device_property_read_u32_array +EXPORT_SYMBOL_GPL vmlinux 0xecac3d34 register_wide_hw_breakpoint +EXPORT_SYMBOL_GPL vmlinux 0xecec7c8a icc_link_create +EXPORT_SYMBOL_GPL vmlinux 0xeceddc77 devm_hwspin_lock_request_specific +EXPORT_SYMBOL_GPL vmlinux 0xed0626af inet_csk_get_port +EXPORT_SYMBOL_GPL vmlinux 0xed176773 clk_hw_get_name +EXPORT_SYMBOL_GPL vmlinux 0xed1bcb5d alarm_init +EXPORT_SYMBOL_GPL vmlinux 0xed1f7772 pm_generic_restore_noirq +EXPORT_SYMBOL_GPL vmlinux 0xed233a3e tpm_chip_stop +EXPORT_SYMBOL_GPL vmlinux 0xed39fa7f check_move_unevictable_pages +EXPORT_SYMBOL_GPL vmlinux 0xed3a67cd mctrl_gpio_init_noauto +EXPORT_SYMBOL_GPL vmlinux 0xed440da3 phy_create +EXPORT_SYMBOL_GPL vmlinux 0xed453e66 rio_unmap_outb_region +EXPORT_SYMBOL_GPL vmlinux 0xed59d077 sbitmap_show +EXPORT_SYMBOL_GPL vmlinux 0xed61519e relay_subbufs_consumed +EXPORT_SYMBOL_GPL vmlinux 0xed6582f1 intel_msic_bulk_write +EXPORT_SYMBOL_GPL vmlinux 0xed696d3b pci_epc_write_header +EXPORT_SYMBOL_GPL vmlinux 0xed7c7b91 raw_v6_hashinfo +EXPORT_SYMBOL_GPL vmlinux 0xed7c92eb devm_device_remove_group +EXPORT_SYMBOL_GPL vmlinux 0xedaf039d key_type_user +EXPORT_SYMBOL_GPL vmlinux 0xedb6f90e ata_host_start +EXPORT_SYMBOL_GPL vmlinux 0xedc92e68 synchronize_srcu +EXPORT_SYMBOL_GPL vmlinux 0xedcaa69e sysfs_create_files +EXPORT_SYMBOL_GPL vmlinux 0xedd092d5 power_supply_notifier +EXPORT_SYMBOL_GPL vmlinux 0xede6050b nd_blk_region_to_dimm +EXPORT_SYMBOL_GPL vmlinux 0xede98ec5 intel_pt_validate_hw_cap +EXPORT_SYMBOL_GPL vmlinux 0xede9a09a btree_lookup +EXPORT_SYMBOL_GPL vmlinux 0xedf3a92f iommu_domain_alloc +EXPORT_SYMBOL_GPL vmlinux 0xedf3d9e7 crypto_unregister_ahash +EXPORT_SYMBOL_GPL vmlinux 0xedfe47e0 shmem_read_mapping_page_gfp +EXPORT_SYMBOL_GPL vmlinux 0xee13e697 set_personality_ia32 +EXPORT_SYMBOL_GPL vmlinux 0xee1a3b64 ipv6_find_tlv +EXPORT_SYMBOL_GPL vmlinux 0xee1b0911 unregister_acpi_bus_type +EXPORT_SYMBOL_GPL vmlinux 0xee24cb49 usb_hcd_unlink_urb_from_ep +EXPORT_SYMBOL_GPL vmlinux 0xee26adf8 power_supply_get_battery_info +EXPORT_SYMBOL_GPL vmlinux 0xee38ef57 register_switchdev_blocking_notifier +EXPORT_SYMBOL_GPL vmlinux 0xee511119 __devm_regmap_init +EXPORT_SYMBOL_GPL vmlinux 0xee6b71c4 syscon_regmap_lookup_by_compatible +EXPORT_SYMBOL_GPL vmlinux 0xee6be8c9 devm_namespace_enable +EXPORT_SYMBOL_GPL vmlinux 0xee6c633a devices_cgrp_subsys_on_dfl_key +EXPORT_SYMBOL_GPL vmlinux 0xee81442a sysfs_notify +EXPORT_SYMBOL_GPL vmlinux 0xee8e4882 fwnode_get_name +EXPORT_SYMBOL_GPL vmlinux 0xee9fcda6 apei_mce_report_mem_error +EXPORT_SYMBOL_GPL vmlinux 0xeea356af pm_clk_create +EXPORT_SYMBOL_GPL vmlinux 0xeea74cbe ip_tunnel_ioctl +EXPORT_SYMBOL_GPL vmlinux 0xeeb6c1ca gpiod_direction_output_raw +EXPORT_SYMBOL_GPL vmlinux 0xeebb2226 of_devfreq_cooling_register_power +EXPORT_SYMBOL_GPL vmlinux 0xeec8ed17 debugfs_file_put +EXPORT_SYMBOL_GPL vmlinux 0xeec9c8a5 tick_nohz_dep_set_task +EXPORT_SYMBOL_GPL vmlinux 0xeecc593d generic_access_phys +EXPORT_SYMBOL_GPL vmlinux 0xeece6736 kthread_park +EXPORT_SYMBOL_GPL vmlinux 0xeed126a0 rio_unregister_scan +EXPORT_SYMBOL_GPL vmlinux 0xeed131c7 nvme_delete_ctrl +EXPORT_SYMBOL_GPL vmlinux 0xeed57948 tty_wakeup +EXPORT_SYMBOL_GPL vmlinux 0xeed7b2de fscrypt_ioctl_get_nonce +EXPORT_SYMBOL_GPL vmlinux 0xeedd987e phy_10gbit_features_array +EXPORT_SYMBOL_GPL vmlinux 0xeede21ed ip6_route_input_lookup +EXPORT_SYMBOL_GPL vmlinux 0xeedfcec3 task_work_run +EXPORT_SYMBOL_GPL vmlinux 0xeee4ae06 device_register +EXPORT_SYMBOL_GPL vmlinux 0xeee5075a vfs_getxattr_alloc +EXPORT_SYMBOL_GPL vmlinux 0xeee667d3 fpregs_assert_state_consistent +EXPORT_SYMBOL_GPL vmlinux 0xeeec2f49 iommu_fwspec_free +EXPORT_SYMBOL_GPL vmlinux 0xeef14c82 icc_node_del +EXPORT_SYMBOL_GPL vmlinux 0xef1f6e23 apei_resources_request +EXPORT_SYMBOL_GPL vmlinux 0xef220723 dev_pm_opp_add +EXPORT_SYMBOL_GPL vmlinux 0xef29fcdd clk_bulk_put +EXPORT_SYMBOL_GPL vmlinux 0xef464c28 getboottime64 +EXPORT_SYMBOL_GPL vmlinux 0xef6c3f70 round_jiffies_up_relative +EXPORT_SYMBOL_GPL vmlinux 0xef70eb7e ring_buffer_iter_advance +EXPORT_SYMBOL_GPL vmlinux 0xef83fbc9 ethnl_cable_test_free +EXPORT_SYMBOL_GPL vmlinux 0xef8a590a skb_gso_validate_network_len +EXPORT_SYMBOL_GPL vmlinux 0xef8b17dd cpufreq_unregister_governor +EXPORT_SYMBOL_GPL vmlinux 0xef8fc95f kvm_async_pf_task_wait_schedule +EXPORT_SYMBOL_GPL vmlinux 0xef909887 skb_append_pagefrags +EXPORT_SYMBOL_GPL vmlinux 0xef92ef33 btree_last +EXPORT_SYMBOL_GPL vmlinux 0xefa2c27d register_tracepoint_module_notifier +EXPORT_SYMBOL_GPL vmlinux 0xefbe0e4c kernfs_find_and_get_ns +EXPORT_SYMBOL_GPL vmlinux 0xefbfcb1f crypto_larval_alloc +EXPORT_SYMBOL_GPL vmlinux 0xefc71227 arizona_request_irq +EXPORT_SYMBOL_GPL vmlinux 0xefdbfc1d nvdimm_volatile_region_create +EXPORT_SYMBOL_GPL vmlinux 0xefeafcf1 edac_has_mcs +EXPORT_SYMBOL_GPL vmlinux 0xf002dbda pci_epf_destroy +EXPORT_SYMBOL_GPL vmlinux 0xf00ff916 ethnl_cable_test_amplitude +EXPORT_SYMBOL_GPL vmlinux 0xf03bf857 xfrm_state_mtu +EXPORT_SYMBOL_GPL vmlinux 0xf04429b4 acpi_bus_get_status_handle +EXPORT_SYMBOL_GPL vmlinux 0xf0460cb7 add_to_page_cache_lru +EXPORT_SYMBOL_GPL vmlinux 0xf0696401 acpi_pci_detect_ejectable +EXPORT_SYMBOL_GPL vmlinux 0xf07e9790 spi_new_device +EXPORT_SYMBOL_GPL vmlinux 0xf08050c4 rhashtable_walk_start_check +EXPORT_SYMBOL_GPL vmlinux 0xf0854df3 devlink_port_param_driverinit_value_set +EXPORT_SYMBOL_GPL vmlinux 0xf0910075 sfp_bus_del_upstream +EXPORT_SYMBOL_GPL vmlinux 0xf0a0439c acpi_get_pci_dev +EXPORT_SYMBOL_GPL vmlinux 0xf0d2e945 perf_aux_output_flag +EXPORT_SYMBOL_GPL vmlinux 0xf0d478c7 list_lru_add +EXPORT_SYMBOL_GPL vmlinux 0xf0de7806 wakeup_source_unregister +EXPORT_SYMBOL_GPL vmlinux 0xf0f51ce3 rdev_clear_badblocks +EXPORT_SYMBOL_GPL vmlinux 0xf12cfe63 rio_mport_send_doorbell +EXPORT_SYMBOL_GPL vmlinux 0xf12f8179 call_switchdev_blocking_notifiers +EXPORT_SYMBOL_GPL vmlinux 0xf1321f79 bpf_prog_add +EXPORT_SYMBOL_GPL vmlinux 0xf1361941 pci_vpd_find_tag +EXPORT_SYMBOL_GPL vmlinux 0xf16bb8ae xfrm_audit_state_delete +EXPORT_SYMBOL_GPL vmlinux 0xf16e0400 ata_bmdma_dumb_qc_prep +EXPORT_SYMBOL_GPL vmlinux 0xf184d189 kernel_power_off +EXPORT_SYMBOL_GPL vmlinux 0xf187111f dma_release_channel +EXPORT_SYMBOL_GPL vmlinux 0xf189adb7 regulator_set_drvdata +EXPORT_SYMBOL_GPL vmlinux 0xf1950794 handle_mm_fault +EXPORT_SYMBOL_GPL vmlinux 0xf19cc8b7 ip6_sk_dst_lookup_flow +EXPORT_SYMBOL_GPL vmlinux 0xf1b31314 delayacct_on +EXPORT_SYMBOL_GPL vmlinux 0xf1b4fc25 cpuidle_get_driver +EXPORT_SYMBOL_GPL vmlinux 0xf1cd8929 kvm_read_and_reset_apf_flags +EXPORT_SYMBOL_GPL vmlinux 0xf1d8cffb rio_mport_read_config_8 +EXPORT_SYMBOL_GPL vmlinux 0xf1f5ebdd usb_disable_ltm +EXPORT_SYMBOL_GPL vmlinux 0xf205f11d input_class +EXPORT_SYMBOL_GPL vmlinux 0xf206bea9 crypto_aes_set_key +EXPORT_SYMBOL_GPL vmlinux 0xf21e1f9b disable_percpu_irq +EXPORT_SYMBOL_GPL vmlinux 0xf2494363 virtqueue_kick_prepare +EXPORT_SYMBOL_GPL vmlinux 0xf260a131 input_ff_event +EXPORT_SYMBOL_GPL vmlinux 0xf2612d60 devm_gpiod_get +EXPORT_SYMBOL_GPL vmlinux 0xf2824108 aead_register_instance +EXPORT_SYMBOL_GPL vmlinux 0xf2927f05 ip_tunnel_lookup +EXPORT_SYMBOL_GPL vmlinux 0xf2967796 ring_buffer_record_on +EXPORT_SYMBOL_GPL vmlinux 0xf2b0311b wakeup_source_remove +EXPORT_SYMBOL_GPL vmlinux 0xf2b16046 pm_clk_runtime_resume +EXPORT_SYMBOL_GPL vmlinux 0xf2b33cb7 memory_cgrp_subsys_on_dfl_key +EXPORT_SYMBOL_GPL vmlinux 0xf2c1aa1e blk_queue_max_zone_append_sectors +EXPORT_SYMBOL_GPL vmlinux 0xf2c2b8f7 devlink_trap_report +EXPORT_SYMBOL_GPL vmlinux 0xf2c37b81 devfreq_cooling_unregister +EXPORT_SYMBOL_GPL vmlinux 0xf2e1f045 __hv_pkt_iter_next +EXPORT_SYMBOL_GPL vmlinux 0xf2ecf984 gpiochip_line_is_irq +EXPORT_SYMBOL_GPL vmlinux 0xf2ef0eda irq_chip_set_wake_parent +EXPORT_SYMBOL_GPL vmlinux 0xf2f50597 dax_iomap_fault +EXPORT_SYMBOL_GPL vmlinux 0xf30866f2 regmap_multi_reg_write_bypassed +EXPORT_SYMBOL_GPL vmlinux 0xf30a5502 cpufreq_enable_boost_support +EXPORT_SYMBOL_GPL vmlinux 0xf30c5b6f regmap_fields_read +EXPORT_SYMBOL_GPL vmlinux 0xf311e156 key_being_used_for +EXPORT_SYMBOL_GPL vmlinux 0xf31632e0 ezx_pcap_read +EXPORT_SYMBOL_GPL vmlinux 0xf31b3fd1 workqueue_set_max_active +EXPORT_SYMBOL_GPL vmlinux 0xf331236f btree_geo32 +EXPORT_SYMBOL_GPL vmlinux 0xf335923f serial8250_rpm_get_tx +EXPORT_SYMBOL_GPL vmlinux 0xf3457166 pci_generic_config_write +EXPORT_SYMBOL_GPL vmlinux 0xf346a859 crypto_register_algs +EXPORT_SYMBOL_GPL vmlinux 0xf34efe4d handle_untracked_irq +EXPORT_SYMBOL_GPL vmlinux 0xf352023f memory_cgrp_subsys_enabled_key +EXPORT_SYMBOL_GPL vmlinux 0xf355e4c9 devm_regulator_unregister_notifier +EXPORT_SYMBOL_GPL vmlinux 0xf3641313 tpm2_flush_context +EXPORT_SYMBOL_GPL vmlinux 0xf37e9f63 devm_regulator_get +EXPORT_SYMBOL_GPL vmlinux 0xf3808cb1 get_state_synchronize_rcu +EXPORT_SYMBOL_GPL vmlinux 0xf385aa55 crypto_hash_walk_first +EXPORT_SYMBOL_GPL vmlinux 0xf38da4bd devlink_port_type_ib_set +EXPORT_SYMBOL_GPL vmlinux 0xf396a38a debugfs_create_u32 +EXPORT_SYMBOL_GPL vmlinux 0xf3a37974 crypto_stats_akcipher_verify +EXPORT_SYMBOL_GPL vmlinux 0xf3b451ca kdb_poll_funcs +EXPORT_SYMBOL_GPL vmlinux 0xf3b7a70b udp_abort +EXPORT_SYMBOL_GPL vmlinux 0xf3b95d79 btree_remove +EXPORT_SYMBOL_GPL vmlinux 0xf3bc399b spi_take_timestamp_post +EXPORT_SYMBOL_GPL vmlinux 0xf3ca0930 __pci_epc_create +EXPORT_SYMBOL_GPL vmlinux 0xf3efe430 vring_create_virtqueue +EXPORT_SYMBOL_GPL vmlinux 0xf3effd36 genphy_c45_restart_aneg +EXPORT_SYMBOL_GPL vmlinux 0xf411c611 pcie_update_link_speed +EXPORT_SYMBOL_GPL vmlinux 0xf4299100 trace_event_buffer_commit +EXPORT_SYMBOL_GPL vmlinux 0xf44157d7 _copy_mc_to_iter +EXPORT_SYMBOL_GPL vmlinux 0xf45367ef synth_event_create +EXPORT_SYMBOL_GPL vmlinux 0xf454b648 class_for_each_device +EXPORT_SYMBOL_GPL vmlinux 0xf45b056b bsg_unregister_queue +EXPORT_SYMBOL_GPL vmlinux 0xf45f8ca2 sysfs_create_bin_file +EXPORT_SYMBOL_GPL vmlinux 0xf4646afe device_get_phy_mode +EXPORT_SYMBOL_GPL vmlinux 0xf4689d50 linkmode_set_pause +EXPORT_SYMBOL_GPL vmlinux 0xf479c294 shash_register_instance +EXPORT_SYMBOL_GPL vmlinux 0xf485d7a6 ring_buffer_swap_cpu +EXPORT_SYMBOL_GPL vmlinux 0xf492c5d6 wm831x_device_shutdown +EXPORT_SYMBOL_GPL vmlinux 0xf4998976 apei_get_debugfs_dir +EXPORT_SYMBOL_GPL vmlinux 0xf49cd6c3 ip6_route_lookup +EXPORT_SYMBOL_GPL vmlinux 0xf4ad8d35 pin_user_pages_fast_only +EXPORT_SYMBOL_GPL vmlinux 0xf4af35c2 rcu_gp_is_normal +EXPORT_SYMBOL_GPL vmlinux 0xf4b17e8b skb_segment_list +EXPORT_SYMBOL_GPL vmlinux 0xf4c254ce usb_unpoison_urb +EXPORT_SYMBOL_GPL vmlinux 0xf4cbbe68 ata_pci_shutdown_one +EXPORT_SYMBOL_GPL vmlinux 0xf4da47d9 spi_sync_locked +EXPORT_SYMBOL_GPL vmlinux 0xf4da71b3 public_key_verify_signature +EXPORT_SYMBOL_GPL vmlinux 0xf4f69d1f clk_hw_unregister_gate +EXPORT_SYMBOL_GPL vmlinux 0xf4fedd11 device_match_fwnode +EXPORT_SYMBOL_GPL vmlinux 0xf504003a firmware_request_cache +EXPORT_SYMBOL_GPL vmlinux 0xf50e911e copy_reserved_iova +EXPORT_SYMBOL_GPL vmlinux 0xf532ffa2 thermal_zone_get_zone_by_name +EXPORT_SYMBOL_GPL vmlinux 0xf53ddff2 icc_node_add +EXPORT_SYMBOL_GPL vmlinux 0xf54bd49b lcm +EXPORT_SYMBOL_GPL vmlinux 0xf54c1fb6 crypto_alloc_kpp +EXPORT_SYMBOL_GPL vmlinux 0xf54e0034 iommu_dev_enable_feature +EXPORT_SYMBOL_GPL vmlinux 0xf553318d cpuidle_pause_and_lock +EXPORT_SYMBOL_GPL vmlinux 0xf55e21b7 regulator_unregister_supply_alias +EXPORT_SYMBOL_GPL vmlinux 0xf55f75f8 bpf_prog_inc +EXPORT_SYMBOL_GPL vmlinux 0xf562a5fc fat_search_long +EXPORT_SYMBOL_GPL vmlinux 0xf58a1ea4 ata_sff_drain_fifo +EXPORT_SYMBOL_GPL vmlinux 0xf598c8fa ncsi_register_dev +EXPORT_SYMBOL_GPL vmlinux 0xf5a3ba99 linear_range_values_in_range +EXPORT_SYMBOL_GPL vmlinux 0xf5a691cd invalidate_bh_lrus +EXPORT_SYMBOL_GPL vmlinux 0xf5d7eb5a register_ftrace_export +EXPORT_SYMBOL_GPL vmlinux 0xf5ea3197 dax_attribute_group +EXPORT_SYMBOL_GPL vmlinux 0xf5ebd910 regulator_get_exclusive +EXPORT_SYMBOL_GPL vmlinux 0xf5f370e0 async_schedule_node +EXPORT_SYMBOL_GPL vmlinux 0xf616ba96 l3mdev_fib_table_rcu +EXPORT_SYMBOL_GPL vmlinux 0xf6230e49 fpregs_mark_activate +EXPORT_SYMBOL_GPL vmlinux 0xf62a8821 da9052_disable_irq +EXPORT_SYMBOL_GPL vmlinux 0xf6467bd5 regulator_set_bypass_regmap +EXPORT_SYMBOL_GPL vmlinux 0xf652d563 spi_async +EXPORT_SYMBOL_GPL vmlinux 0xf65461f8 lwtunnel_valid_encap_type_attr +EXPORT_SYMBOL_GPL vmlinux 0xf6615b31 rt_mutex_timed_lock +EXPORT_SYMBOL_GPL vmlinux 0xf663ee2f pcap_adc_sync +EXPORT_SYMBOL_GPL vmlinux 0xf67d0f82 scsi_get_vpd_page +EXPORT_SYMBOL_GPL vmlinux 0xf6979ef8 sk_msg_memcopy_from_iter +EXPORT_SYMBOL_GPL vmlinux 0xf6a28554 region_intersects +EXPORT_SYMBOL_GPL vmlinux 0xf6a94ee5 pinctrl_utils_add_config +EXPORT_SYMBOL_GPL vmlinux 0xf6ab8689 __devm_spi_alloc_controller +EXPORT_SYMBOL_GPL vmlinux 0xf6afbe3e cgroup_path_ns +EXPORT_SYMBOL_GPL vmlinux 0xf6b16b2c xdp_attachment_setup +EXPORT_SYMBOL_GPL vmlinux 0xf6b3f602 scsi_flush_work +EXPORT_SYMBOL_GPL vmlinux 0xf6b5fd6c device_add_groups +EXPORT_SYMBOL_GPL vmlinux 0xf6b84519 ata_link_abort +EXPORT_SYMBOL_GPL vmlinux 0xf6be08cc devm_regulator_unregister +EXPORT_SYMBOL_GPL vmlinux 0xf6bf8bba pci_common_swizzle +EXPORT_SYMBOL_GPL vmlinux 0xf6c71a25 cper_severity_str +EXPORT_SYMBOL_GPL vmlinux 0xf6c8dc62 cpu_hotplug_enable +EXPORT_SYMBOL_GPL vmlinux 0xf6c9228c sbitmap_queue_wake_all +EXPORT_SYMBOL_GPL vmlinux 0xf6ca2963 bpf_trace_run1 +EXPORT_SYMBOL_GPL vmlinux 0xf6df174d dev_pm_genpd_set_performance_state +EXPORT_SYMBOL_GPL vmlinux 0xf6e593cc bus_get_kset +EXPORT_SYMBOL_GPL vmlinux 0xf6e6616c sched_trace_rq_avg_rt +EXPORT_SYMBOL_GPL vmlinux 0xf6e772c3 irq_bypass_unregister_producer +EXPORT_SYMBOL_GPL vmlinux 0xf6e874f5 ata_timing_merge +EXPORT_SYMBOL_GPL vmlinux 0xf6f16c56 rcu_barrier_tasks +EXPORT_SYMBOL_GPL vmlinux 0xf6fa12cf usb_anchor_urb +EXPORT_SYMBOL_GPL vmlinux 0xf721847c bpf_prog_create +EXPORT_SYMBOL_GPL vmlinux 0xf722dd28 crypto_req_done +EXPORT_SYMBOL_GPL vmlinux 0xf72728fb housekeeping_affine +EXPORT_SYMBOL_GPL vmlinux 0xf729a9d0 disk_part_iter_init +EXPORT_SYMBOL_GPL vmlinux 0xf73902fe usb_put_hcd +EXPORT_SYMBOL_GPL vmlinux 0xf73cef5d pci_iomap_wc_range +EXPORT_SYMBOL_GPL vmlinux 0xf74137eb device_get_next_child_node +EXPORT_SYMBOL_GPL vmlinux 0xf7455c16 input_event_to_user +EXPORT_SYMBOL_GPL vmlinux 0xf749debc md5_zero_message_hash +EXPORT_SYMBOL_GPL vmlinux 0xf74bb274 mod_delayed_work_on +EXPORT_SYMBOL_GPL vmlinux 0xf74e7c93 jump_label_rate_limit +EXPORT_SYMBOL_GPL vmlinux 0xf767ca35 fixed_percpu_data +EXPORT_SYMBOL_GPL vmlinux 0xf777212d spi_bus_unlock +EXPORT_SYMBOL_GPL vmlinux 0xf7849c2c pinctrl_find_and_add_gpio_range +EXPORT_SYMBOL_GPL vmlinux 0xf7a2687e user_free_preparse +EXPORT_SYMBOL_GPL vmlinux 0xf7b13fb3 pm_runtime_forbid +EXPORT_SYMBOL_GPL vmlinux 0xf7bb9f18 blk_mq_unquiesce_queue +EXPORT_SYMBOL_GPL vmlinux 0xf7bc95b0 devlink_fmsg_pair_nest_start +EXPORT_SYMBOL_GPL vmlinux 0xf7bdce62 ip_tunnel_ctl +EXPORT_SYMBOL_GPL vmlinux 0xf7c5151e genphy_c45_aneg_done +EXPORT_SYMBOL_GPL vmlinux 0xf7d961d8 clk_hw_unregister_composite +EXPORT_SYMBOL_GPL vmlinux 0xf7e6f1a4 cpufreq_dbs_governor_exit +EXPORT_SYMBOL_GPL vmlinux 0xf80db0d7 gpiod_get_index_optional +EXPORT_SYMBOL_GPL vmlinux 0xf8132acb scsi_ioctl_block_when_processing_errors +EXPORT_SYMBOL_GPL vmlinux 0xf82f3657 work_on_cpu +EXPORT_SYMBOL_GPL vmlinux 0xf834c26d housekeeping_test_cpu +EXPORT_SYMBOL_GPL vmlinux 0xf841e61d ata_scsi_ioctl +EXPORT_SYMBOL_GPL vmlinux 0xf8441920 kernel_read_file +EXPORT_SYMBOL_GPL vmlinux 0xf8486664 xhci_dbg_trace +EXPORT_SYMBOL_GPL vmlinux 0xf84d6692 iomap_readahead +EXPORT_SYMBOL_GPL vmlinux 0xf84ed30c phy_gbit_all_ports_features +EXPORT_SYMBOL_GPL vmlinux 0xf8590e32 device_match_name +EXPORT_SYMBOL_GPL vmlinux 0xf86cc226 task_cgroup_path +EXPORT_SYMBOL_GPL vmlinux 0xf87704fb lwtunnel_cmp_encap +EXPORT_SYMBOL_GPL vmlinux 0xf87ee834 net_dm_hw_report +EXPORT_SYMBOL_GPL vmlinux 0xf880cf6b sk_psock_destroy +EXPORT_SYMBOL_GPL vmlinux 0xf8814f95 bus_sort_breadthfirst +EXPORT_SYMBOL_GPL vmlinux 0xf881c165 mnt_clone_write +EXPORT_SYMBOL_GPL vmlinux 0xf881cecd load_fixmap_gdt +EXPORT_SYMBOL_GPL vmlinux 0xf897a4c3 virtio_add_status +EXPORT_SYMBOL_GPL vmlinux 0xf8a4551b bus_get_device_klist +EXPORT_SYMBOL_GPL vmlinux 0xf8a786c9 dev_pm_opp_remove_table +EXPORT_SYMBOL_GPL vmlinux 0xf8b1ee19 wm5110_i2c_regmap +EXPORT_SYMBOL_GPL vmlinux 0xf8b699c6 iommu_sva_unbind_device +EXPORT_SYMBOL_GPL vmlinux 0xf8bc1ffc led_trigger_unregister +EXPORT_SYMBOL_GPL vmlinux 0xf8bc326c dm_internal_resume +EXPORT_SYMBOL_GPL vmlinux 0xf8c20371 hwpoison_filter +EXPORT_SYMBOL_GPL vmlinux 0xf8c3315b spi_mem_exec_op +EXPORT_SYMBOL_GPL vmlinux 0xf8d9b231 spi_mem_dirmap_write +EXPORT_SYMBOL_GPL vmlinux 0xf8f3a0fb ata_ratelimit +EXPORT_SYMBOL_GPL vmlinux 0xf8f41df8 dev_attr_link_power_management_policy +EXPORT_SYMBOL_GPL vmlinux 0xf8fe3986 pat_pfn_immune_to_uc_mtrr +EXPORT_SYMBOL_GPL vmlinux 0xf8ff732a pci_epc_get_features +EXPORT_SYMBOL_GPL vmlinux 0xf9165624 regulator_put +EXPORT_SYMBOL_GPL vmlinux 0xf91ab2ed __tracepoint_arm_event +EXPORT_SYMBOL_GPL vmlinux 0xf9265f2f crypto_register_scomps +EXPORT_SYMBOL_GPL vmlinux 0xf932015f __raw_notifier_call_chain +EXPORT_SYMBOL_GPL vmlinux 0xf93e4ba8 crypto_aead_decrypt +EXPORT_SYMBOL_GPL vmlinux 0xf9513fa8 ata_platform_remove_one +EXPORT_SYMBOL_GPL vmlinux 0xf95322f4 kthread_parkme +EXPORT_SYMBOL_GPL vmlinux 0xf955e9c5 bprintf +EXPORT_SYMBOL_GPL vmlinux 0xf96b91db ip4_datagram_release_cb +EXPORT_SYMBOL_GPL vmlinux 0xf974af88 devres_destroy +EXPORT_SYMBOL_GPL vmlinux 0xf99cba9a irq_domain_pop_irq +EXPORT_SYMBOL_GPL vmlinux 0xf9a054b5 __round_jiffies +EXPORT_SYMBOL_GPL vmlinux 0xf9b470e8 generic_device_group +EXPORT_SYMBOL_GPL vmlinux 0xf9c09595 screen_glyph +EXPORT_SYMBOL_GPL vmlinux 0xf9c68775 nf_route +EXPORT_SYMBOL_GPL vmlinux 0xf9ce2912 serial8250_em485_config +EXPORT_SYMBOL_GPL vmlinux 0xf9d94ecb dma_buf_begin_cpu_access +EXPORT_SYMBOL_GPL vmlinux 0xf9f5e45b synth_event_trace_array +EXPORT_SYMBOL_GPL vmlinux 0xf9f63262 mmu_interval_notifier_insert +EXPORT_SYMBOL_GPL vmlinux 0xf9fc462f shash_no_setkey +EXPORT_SYMBOL_GPL vmlinux 0xfa078c9d dm_internal_suspend_noflush +EXPORT_SYMBOL_GPL vmlinux 0xfa0a8896 acpi_dev_resource_io +EXPORT_SYMBOL_GPL vmlinux 0xfa19aeaa iommu_device_sysfs_remove +EXPORT_SYMBOL_GPL vmlinux 0xfa1eb910 unregister_syscore_ops +EXPORT_SYMBOL_GPL vmlinux 0xfa29bd39 __rio_local_write_config_8 +EXPORT_SYMBOL_GPL vmlinux 0xfa2d8902 fat_fill_super +EXPORT_SYMBOL_GPL vmlinux 0xfa324d4a tty_port_tty_hangup +EXPORT_SYMBOL_GPL vmlinux 0xfa349688 aer_recover_queue +EXPORT_SYMBOL_GPL vmlinux 0xfa35044a alternatives_patched +EXPORT_SYMBOL_GPL vmlinux 0xfa3b56f8 seg6_do_srh_inline +EXPORT_SYMBOL_GPL vmlinux 0xfa3f88b9 fsverity_file_open +EXPORT_SYMBOL_GPL vmlinux 0xfa666974 queue_work_node +EXPORT_SYMBOL_GPL vmlinux 0xfa690589 netdev_cmd_to_name +EXPORT_SYMBOL_GPL vmlinux 0xfa6c211e netdev_is_rx_handler_busy +EXPORT_SYMBOL_GPL vmlinux 0xfa7e6360 platform_get_resource +EXPORT_SYMBOL_GPL vmlinux 0xfa98a6cd nvdimm_security_setup_events +EXPORT_SYMBOL_GPL vmlinux 0xfaa0223e dm_set_target_max_io_len +EXPORT_SYMBOL_GPL vmlinux 0xfab287bc rio_local_set_device_id +EXPORT_SYMBOL_GPL vmlinux 0xfab30dc0 mdio_bus_exit +EXPORT_SYMBOL_GPL vmlinux 0xfab53ed9 pinctrl_gpio_can_use_line +EXPORT_SYMBOL_GPL vmlinux 0xfaba60cc io_cgrp_subsys +EXPORT_SYMBOL_GPL vmlinux 0xfac67e09 __strp_unpause +EXPORT_SYMBOL_GPL vmlinux 0xfad9c827 kill_dax +EXPORT_SYMBOL_GPL vmlinux 0xfadcbd2c sbitmap_queue_show +EXPORT_SYMBOL_GPL vmlinux 0xfae4c384 iommu_present +EXPORT_SYMBOL_GPL vmlinux 0xfb01373f mmput +EXPORT_SYMBOL_GPL vmlinux 0xfb11fa9a dev_pm_opp_init_cpufreq_table +EXPORT_SYMBOL_GPL vmlinux 0xfb23d74d fwnode_create_software_node +EXPORT_SYMBOL_GPL vmlinux 0xfb32b30f ring_buffer_read_prepare_sync +EXPORT_SYMBOL_GPL vmlinux 0xfb3dfe8a page_reporting_unregister +EXPORT_SYMBOL_GPL vmlinux 0xfb468944 alloc_empty_file +EXPORT_SYMBOL_GPL vmlinux 0xfb468d16 devlink_region_snapshot_id_get +EXPORT_SYMBOL_GPL vmlinux 0xfb5d00b5 tcp_twsk_destructor +EXPORT_SYMBOL_GPL vmlinux 0xfb6a5979 irq_gc_mask_set_bit +EXPORT_SYMBOL_GPL vmlinux 0xfb6c2217 fib_add_nexthop +EXPORT_SYMBOL_GPL vmlinux 0xfb6eedf9 power_group_name +EXPORT_SYMBOL_GPL vmlinux 0xfb70967f ata_sff_freeze +EXPORT_SYMBOL_GPL vmlinux 0xfb7c3847 fuse_dev_alloc_install +EXPORT_SYMBOL_GPL vmlinux 0xfb8000ae __intel_scu_ipc_register +EXPORT_SYMBOL_GPL vmlinux 0xfb921e00 hvpci_block_ops +EXPORT_SYMBOL_GPL vmlinux 0xfb93bf44 driver_register +EXPORT_SYMBOL_GPL vmlinux 0xfbbd41ca no_action +EXPORT_SYMBOL_GPL vmlinux 0xfbcb876d __class_create +EXPORT_SYMBOL_GPL vmlinux 0xfbd0a398 uart_console_write +EXPORT_SYMBOL_GPL vmlinux 0xfbd25714 irq_domain_xlate_onetwocell +EXPORT_SYMBOL_GPL vmlinux 0xfbd4c8b5 param_ops_bool_enable_only +EXPORT_SYMBOL_GPL vmlinux 0xfbda4581 bpf_offload_dev_netdev_unregister +EXPORT_SYMBOL_GPL vmlinux 0xfbdfc558 hrtimer_start_range_ns +EXPORT_SYMBOL_GPL vmlinux 0xfbe162c3 ata_timing_compute +EXPORT_SYMBOL_GPL vmlinux 0xfbee72a2 device_find_child +EXPORT_SYMBOL_GPL vmlinux 0xfbee7646 class_dev_iter_exit +EXPORT_SYMBOL_GPL vmlinux 0xfbf73a2c edac_pci_add_device +EXPORT_SYMBOL_GPL vmlinux 0xfbffd601 net_prio_cgrp_subsys_on_dfl_key +EXPORT_SYMBOL_GPL vmlinux 0xfc03d97a page_is_ram +EXPORT_SYMBOL_GPL vmlinux 0xfc0797e4 free_iova_fast +EXPORT_SYMBOL_GPL vmlinux 0xfc097da0 edac_pci_create_generic_ctl +EXPORT_SYMBOL_GPL vmlinux 0xfc14bb2e dm_get_dev_t +EXPORT_SYMBOL_GPL vmlinux 0xfc16adfa ata_sff_error_handler +EXPORT_SYMBOL_GPL vmlinux 0xfc17a7b3 pinctrl_select_default_state +EXPORT_SYMBOL_GPL vmlinux 0xfc19bc45 crypto_dh_encode_key +EXPORT_SYMBOL_GPL vmlinux 0xfc201b66 sprint_oid +EXPORT_SYMBOL_GPL vmlinux 0xfc297310 regulator_notifier_call_chain +EXPORT_SYMBOL_GPL vmlinux 0xfc298053 rtnl_link_unregister +EXPORT_SYMBOL_GPL vmlinux 0xfc3b4246 acpi_bus_update_power +EXPORT_SYMBOL_GPL vmlinux 0xfc46c0ac devm_platform_get_and_ioremap_resource +EXPORT_SYMBOL_GPL vmlinux 0xfc4ed61c iommu_device_unregister +EXPORT_SYMBOL_GPL vmlinux 0xfc5756d3 param_set_bool_enable_only +EXPORT_SYMBOL_GPL vmlinux 0xfc642f04 ip6_redirect +EXPORT_SYMBOL_GPL vmlinux 0xfc69695e split_page +EXPORT_SYMBOL_GPL vmlinux 0xfc783dde blk_mq_flush_busy_ctxs +EXPORT_SYMBOL_GPL vmlinux 0xfc928213 regmap_field_free +EXPORT_SYMBOL_GPL vmlinux 0xfcaa1642 wm8997_patch +EXPORT_SYMBOL_GPL vmlinux 0xfcc1edd3 memory_block_size_bytes +EXPORT_SYMBOL_GPL vmlinux 0xfcc4663f tty_port_link_device +EXPORT_SYMBOL_GPL vmlinux 0xfcf5e5e5 relay_buf_full +EXPORT_SYMBOL_GPL vmlinux 0xfcf727f7 acpi_subsys_prepare +EXPORT_SYMBOL_GPL vmlinux 0xfd0a2041 phy_configure +EXPORT_SYMBOL_GPL vmlinux 0xfd170092 usb_control_msg +EXPORT_SYMBOL_GPL vmlinux 0xfd3ba6e1 acpi_device_update_power +EXPORT_SYMBOL_GPL vmlinux 0xfd3e9889 fat_get_dotdot_entry +EXPORT_SYMBOL_GPL vmlinux 0xfd49a7d0 pinctrl_remove_gpio_range +EXPORT_SYMBOL_GPL vmlinux 0xfd544afa kgdb_unregister_io_module +EXPORT_SYMBOL_GPL vmlinux 0xfd6d2058 gpiod_set_array_value_cansleep +EXPORT_SYMBOL_GPL vmlinux 0xfd6d6c6f crypto_register_acomps +EXPORT_SYMBOL_GPL vmlinux 0xfd7243c7 erst_disable +EXPORT_SYMBOL_GPL vmlinux 0xfd7c6bb0 devm_clk_register +EXPORT_SYMBOL_GPL vmlinux 0xfdb54434 scsi_internal_device_block_nowait +EXPORT_SYMBOL_GPL vmlinux 0xfdbd7a17 crypto_get_attr_type +EXPORT_SYMBOL_GPL vmlinux 0xfdc9e282 usb_find_alt_setting +EXPORT_SYMBOL_GPL vmlinux 0xfdcb8178 kick_process +EXPORT_SYMBOL_GPL vmlinux 0xfdce3125 shash_ahash_update +EXPORT_SYMBOL_GPL vmlinux 0xfdec02e5 device_remove_groups +EXPORT_SYMBOL_GPL vmlinux 0xfdee8f58 iommu_dev_has_feature +EXPORT_SYMBOL_GPL vmlinux 0xfdf637af dm_table_device_name +EXPORT_SYMBOL_GPL vmlinux 0xfdf67ad8 crypto_hash_walk_done +EXPORT_SYMBOL_GPL vmlinux 0xfe0e7cd3 apei_exec_post_unmap_gars +EXPORT_SYMBOL_GPL vmlinux 0xfe2345bd usb_deregister_dev +EXPORT_SYMBOL_GPL vmlinux 0xfe31c6a4 __tracepoint_block_bio_complete +EXPORT_SYMBOL_GPL vmlinux 0xfe3a9dde __tcp_bpf_recvmsg +EXPORT_SYMBOL_GPL vmlinux 0xfe476039 ktime_get_resolution_ns +EXPORT_SYMBOL_GPL vmlinux 0xfe54e72f md_run +EXPORT_SYMBOL_GPL vmlinux 0xfe5990f6 fuse_dev_free +EXPORT_SYMBOL_GPL vmlinux 0xfe69325f percpu_ref_resurrect +EXPORT_SYMBOL_GPL vmlinux 0xfe8cdb84 ring_buffer_alloc_read_page +EXPORT_SYMBOL_GPL vmlinux 0xfe8fc30f ip6_dst_lookup_tunnel +EXPORT_SYMBOL_GPL vmlinux 0xfe990052 gpio_free +EXPORT_SYMBOL_GPL vmlinux 0xfeb33e95 unix_inq_len +EXPORT_SYMBOL_GPL vmlinux 0xfecebdc5 __ip6_local_out +EXPORT_SYMBOL_GPL vmlinux 0xfed25170 device_move +EXPORT_SYMBOL_GPL vmlinux 0xfee9e155 usb_sg_cancel +EXPORT_SYMBOL_GPL vmlinux 0xfeeecd05 apei_read +EXPORT_SYMBOL_GPL vmlinux 0xfef9f737 sysfs_remove_mount_point +EXPORT_SYMBOL_GPL vmlinux 0xff05fa13 vring_interrupt +EXPORT_SYMBOL_GPL vmlinux 0xff0e40d3 watchdog_init_timeout +EXPORT_SYMBOL_GPL vmlinux 0xff189ec9 tpm_chip_start +EXPORT_SYMBOL_GPL vmlinux 0xff1bda74 mddev_resume +EXPORT_SYMBOL_GPL vmlinux 0xff1e67b9 setup_APIC_eilvt +EXPORT_SYMBOL_GPL vmlinux 0xff1f39a8 __synth_event_gen_cmd_start +EXPORT_SYMBOL_GPL vmlinux 0xff291ecf clk_unregister_divider +EXPORT_SYMBOL_GPL vmlinux 0xff3f1ccd device_store_int +EXPORT_SYMBOL_GPL vmlinux 0xff5a8cfe cn_del_callback +EXPORT_SYMBOL_GPL vmlinux 0xff64ad45 regulator_list_voltage_linear +EXPORT_SYMBOL_GPL vmlinux 0xff7412bb phy_remove_lookup +EXPORT_SYMBOL_GPL vmlinux 0xff81487d gpiod_remove_lookup_table +EXPORT_SYMBOL_GPL vmlinux 0xff8e74e2 arch_haltpoll_enable +EXPORT_SYMBOL_GPL vmlinux 0xff915e96 iommu_device_sysfs_add +EXPORT_SYMBOL_GPL vmlinux 0xff96dff7 sk_msg_trim +EXPORT_SYMBOL_GPL vmlinux 0xff9b9923 sched_setattr +EXPORT_SYMBOL_GPL vmlinux 0xff9dc245 iommu_report_device_fault +EXPORT_SYMBOL_GPL vmlinux 0xff9e23d1 hugetlb_cgrp_subsys_on_dfl_key +EXPORT_SYMBOL_GPL vmlinux 0xffae8e8b nsecs_to_jiffies +EXPORT_SYMBOL_GPL vmlinux 0xffb981a8 wait_for_stable_page +EXPORT_SYMBOL_GPL vmlinux 0xffc6b6e6 shmem_file_setup +EXPORT_SYMBOL_GPL vmlinux 0xffd12914 syscon_regmap_lookup_by_phandle +EXPORT_SYMBOL_GPL vmlinux 0xffef1597 pinctrl_register_and_init +EXPORT_SYMBOL_GPL vmlinux 0xfff57f65 proc_mkdir_data +EXPORT_SYMBOL_GPL vmlinux 0xfffb24b0 inet_csk_compat_setsockopt +EXPORT_SYMBOL_GPL vmlinux 0xffffa019 lwtunnel_xmit +FIRMWARE_LOADER_PRIVATE EXPORT_SYMBOL_GPL 0xd3ae7756 fw_fallback_config vmlinux +MCB EXPORT_SYMBOL_GPL 0x072c8916 mcb_get_resource drivers/mcb/mcb +MCB EXPORT_SYMBOL_GPL 0x19c95af9 mcb_release_bus drivers/mcb/mcb +MCB EXPORT_SYMBOL_GPL 0x50dee8d8 mcb_free_dev drivers/mcb/mcb +MCB EXPORT_SYMBOL_GPL 0x52c5e551 mcb_unregister_driver drivers/mcb/mcb +MCB EXPORT_SYMBOL_GPL 0x58e6a166 mcb_alloc_dev drivers/mcb/mcb +MCB EXPORT_SYMBOL_GPL 0x659fbd05 mcb_bus_get drivers/mcb/mcb +MCB EXPORT_SYMBOL_GPL 0x701b9b16 mcb_get_irq drivers/mcb/mcb +MCB EXPORT_SYMBOL_GPL 0x756ac172 mcb_bus_add_devices drivers/mcb/mcb +MCB EXPORT_SYMBOL_GPL 0x8ec93b0a mcb_device_register drivers/mcb/mcb +MCB EXPORT_SYMBOL_GPL 0x9429581e __mcb_register_driver drivers/mcb/mcb +MCB EXPORT_SYMBOL_GPL 0xa5a6be01 mcb_alloc_bus drivers/mcb/mcb +MCB EXPORT_SYMBOL_GPL 0xd2a1e879 mcb_bus_put drivers/mcb/mcb +MCB EXPORT_SYMBOL_GPL 0xe7edf948 chameleon_parse_cells drivers/mcb/mcb +MCB EXPORT_SYMBOL_GPL 0xeb2c8905 mcb_release_mem drivers/mcb/mcb +MCB EXPORT_SYMBOL_GPL 0xfb966bff mcb_request_mem drivers/mcb/mcb --- linux-azure-5.8-5.8.0.orig/debian.azure-5.8/abi/5.8.0-1027.29~20.04.2/amd64/azure.compiler +++ linux-azure-5.8-5.8.0/debian.azure-5.8/abi/5.8.0-1027.29~20.04.2/amd64/azure.compiler @@ -0,0 +1 @@ +GCC: (Ubuntu 9.3.0-17ubuntu1~20.04) 9.3.0 --- linux-azure-5.8-5.8.0.orig/debian.azure-5.8/abi/5.8.0-1027.29~20.04.2/amd64/azure.modules +++ linux-azure-5.8-5.8.0/debian.azure-5.8/abi/5.8.0-1027.29~20.04.2/amd64/azure.modules @@ -0,0 +1,2346 @@ +3w-9xxx +3w-sas +53c700 +6lowpan +8021q +8139cp +8139too +8250_dw +8250_exar +8250_lpss +8250_men_mcb +8250_mid +842 +842_compress +842_decompress +88pg86x +88pm805 +88pm80x +9p +9pnet +9pnet_rdma +9pnet_virtio +BusLogic +a100u2w +aacraid +abituguru +abituguru3 +acer-wireless +acpi_ipmi +acpi_pad +acpi_power_meter +acpiphp_ibm +acquirewdt +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 +ad7314 +ad7414 +ad7418 +ad9389b +adc128d818 +adcxx +adfs +adiantum +adin +adm1021 +adm1025 +adm1026 +adm1029 +adm1031 +adm1177 +adm9240 +adp5061 +ads7828 +ads7871 +adt7310 +adt7410 +adt7411 +adt7462 +adt7470 +adt7475 +adt7x10 +adummy +adv7170 +adv7175 +adv7180 +adv7183 +adv7343 +adv7393 +adv7511-v4l2 +adv7604 +adv7842 +advansys +advantechwdt +aegis128 +aegis128-aesni +aesni-intel +af_alg +af_key +af_packet_diag +affs +ah4 +ah6 +aha1740 +ahci +ahci_platform +aic79xx +aic7xxx +aic94xx +ak881x +alcor_pci +algif_aead +algif_hash +algif_rng +algif_skcipher +alim1535_wdt +alim7101_wdt +altera-msgdma +altera_jtaguart +altera_ps2 +altera_uart +am53c974 +ambassador +amc6821 +amd-rng +amd64_edac_mod +amd_energy +amdgpu +amdtee +amlogic-gxl-crypto +ansi_cprng +anubis +apds9802als +apds990x +apex +apple-mfi-fastcharge +applesmc +applespi +appletalk +applicom +ar9331 +arc-rawmode +arc-rimi +arc4 +arc_ps2 +arc_uart +arcmsr +arcnet +arcxcnn_bl +arizona-i2c +arizona-spi +arp_tables +arpt_mangle +arptable_filter +as370-hwmon +asb100 +asc7621 +ashmem_linux +aspeed-pwm-tacho +aspeed-video +ast +asus-wireless +asus_atk0110 +asym_tpm +async_memcpy +async_pq +async_raid6_recov +async_tx +async_xor +at24 +atlantic +atm +atmel-ecc +atmel-i2c +atmel-sha204a +atmtcp +atomisp +atomisp-gc0310 +atomisp-gc2235 +atomisp-libmsrlisthelper +atomisp-lm3554 +atomisp-mt9m114 +atomisp-ov2680 +atomisp-ov2722 +atomisp-ov5693 +atomisp_gmin_platform +atp +atp870u +atxp1 +aufs +auth_rpcgss +authenc +authencesn +autofs4 +ax25 +ax88796b +axi-fan-control +axp20x +axp20x-i2c +b44 +b53_common +b53_mdio +b53_mmap +b53_serdes +b53_spi +b53_srab +bareudp +batman-adv +bcache +bcm-phy-lib +bcm-sf2 +bcm54140 +bcm590xx +bcm7xxx +bcma +bcmsysport +bd9571mwv +bd9571mwv-regulator +bd99954-charger +be2iscsi +be2net +befs +bfa +bfq +bfs +bh1770glc +binder_linux +binfmt_misc +blake2b_generic +blake2s-x86_64 +blake2s_generic +blocklayoutdriver +blowfish-x86_64 +blowfish_common +blowfish_generic +bnx2 +bnx2x +bnxt_en +bonding +bpfilter +br2684 +br_netfilter +brd +bridge +bsd_comp +bt819 +bt856 +bt866 +btrfs +c_can +c_can_pci +c_can_platform +ca8210 +cachefiles +cadence_wdt +cafe_ccic +caif +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-j1939 +can-raw +capmode +capsule-loader +cast5-avx-x86_64 +cast5_generic +cast6-avx-x86_64 +cast6_generic +cast_common +catapult +ccm +ccp +ccp-crypto +cdc-acm +cdns-csi2rx +cdns-csi2tx +cec +ceph +cfag12864b +cfag12864bfb +cfb +cfbcopyarea +cfbfillrect +cfbimgblt +cfg80211 +ch +chacha-x86_64 +chacha20poly1305 +chacha_generic +charlcd +chcr +chnl_net +cifs +clip +clk-max9485 +clk-si5341 +clk-si544 +cls_basic +cls_bpf +cls_cgroup +cls_flow +cls_flower +cls_fw +cls_matchall +cls_route +cls_rsvp +cls_rsvp6 +cls_tcindex +cls_u32 +cmac +cnic +coda +com20020 +com20020-pci +com90io +com90xx +cops +cordic +coretemp +cortina +counter +cpcihp_generic +cpcihp_zt5550 +cpu5wdt +cpuid +cpuidle-haltpoll +cramfs +crc-itu-t +crc32-pclmul +crc32_generic +crc4 +crc64 +crc7 +crc8 +crct10dif-pclmul +cryptd +crypto_engine +crypto_safexcel +crypto_simd +crypto_user +cryptoloop +cs3308 +cs5345 +cs53l32a +cs89x0 +csiostor +ct82c710 +curve25519-generic +curve25519-x86_64 +cuse +cw2015_battery +cx25840 +cxgb +cxgb3 +cxgb4 +cxgb4vf +cyclades +da9052-hwmon +da9052_wdt +da9063 +da9063_wdt +dax_hmem +dc395x +dca +dccp +dccp_diag +dccp_ipv4 +dccp_ipv6 +decnet +defxx +dell-smbios +dell-smm-hwmon +dell-wmi-descriptor +dell-wmi-led +des3_ede-x86_64 +des_generic +diag +dl2k +dlci +dlink-dir685-touchkeys +dlm +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-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 +dme1737 +dmx3191d +dn_rtmsg +dnet +dp83822 +dp83869 +dp83tc811 +dpt_i2o +dptf_power +drbd +drivetemp +drm +drm_kms_helper +drm_mipi_dbi +drm_panel_orientation_quirks +drm_ttm_helper +drm_vram_helper +ds1621 +ds1682 +ds620 +dsa_core +dummy +dummy-irq +dw-edma +dw-edma-pcie +dw-i3c-master +dw_dmac_core +dw_dmac_pci +dw_wdt +dwc-xlgmac +e100 +e1000 +e1000e +e752x_edac +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 +ec_bhf +ec_sys +ecc +ecdh_generic +echainiv +ecrdsa_generic +ee1004 +eeprom_93cx6 +efa +efi-pstore +efi_test +efibc +efs +em_canid +em_cmp +em_ipset +em_ipt +em_meta +em_nbyte +em_text +em_u32 +emc1403 +emc2103 +emc6w201 +ems_pci +enclosure +ene_ir +eni +enic +eql +erofs +esas2r +esp4 +esp4_offload +esp6 +esp6_offload +esp_scsi +essiv +et131x +ethoc +eurotechwdt +evbug +exfat +f2fs +f71805f +f71808e_wdt +f71882fg +f75375s +f81601 +failover +fam15h_power +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_sys_fops +fb_tinylcd +fb_tls8204 +fb_uc1611 +fb_uc1701 +fb_upd161704 +fb_watterott +fbtft +fcrypt +fdomain +fdomain_pci +fealnx +ff-memless +fieldbus_dev +fintek-cir +firestream +fixed +fm10k +fore_200e +fou +fou6 +freevxfs +fscache +fschmd +fsl_linflexuart +fsl_lpuart +ftsteutates +g760a +g762 +garp +gasket +gdth +genet +geneve +genwqe_card +gfs2 +ghash-clmulni-intel +gl518sm +gl520sm +glue_helper +gma500_gfx +gnss +gpd-pocket-fan +gpio-104-dio-48e +gpio-104-idi-48 +gpio-104-idio-16 +gpio-adp5588 +gpio-aggregator +gpio-amd-fch +gpio-amd8111 +gpio-amdpt +gpio-arizona +gpio-bd9571mwv +gpio-da9052 +gpio-dwapb +gpio-exar +gpio-f7188x +gpio-generic +gpio-gpio-mm +gpio-ich +gpio-it87 +gpio-janz-ttl +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-mockup +gpio-pca953x +gpio-pcf857x +gpio-pci-idio-16 +gpio-pcie-idio-24 +gpio-pisosr +gpio-rdc321x +gpio-sch +gpio-sch311x +gpio-siox +gpio-tpic2810 +gpio-tps65086 +gpio-tps65912 +gpio-tqmx86 +gpio-vibra +gpio-vx855 +gpio-wcove +gpio-winbond +gpio-wm831x +gpio-wm8994 +gpio-ws16c48 +gpio-xra1403 +gpio_keys_polled +gpu-sched +grace +gre +gs1662 +gtp +gve +habanalabs +hamachi +hangcheck-timer +hci +hd44780 +hdlc +hdlc_cisco +hdlc_fr +hdlc_ppp +hdlc_raw +hdlc_raw_eth +hdlc_x25 +he +hfs +hfsplus +hi311x +hid +hid-cougar +hid-generic +hid-glorious +hid-hyperv +hid-ite +hid-jabra +hid-led +hid-macally +hid-maltron +hid-mf +hid-nti +hid-redragon +hid-sensor-custom +hid-sensor-hub +hid-steam +hid-udraw-ps3 +hid-viewsonic +hid-wiimote +hih6130 +hinic +hio +hmc6352 +horizon +hpfs +hpsa +hptiop +hsr +hsu_dma +htc-pasic3 +hv_balloon +hv_netvsc +hv_sock +hv_utils +hwmon-vid +hwpoison-inject +hx8357d +hyperv-keyboard +hyperv_fb +i10nm_edac +i2c-algo-bit +i2c-algo-pca +i2c-ali1535 +i2c-ali1563 +i2c-ali15x3 +i2c-amd756 +i2c-amd756-s4882 +i2c-amd8111 +i2c-cbus-gpio +i2c-core +i2c-designware-core +i2c-designware-pci +i2c-designware-platform +i2c-dev +i2c-gpio +i2c-i801 +i2c-isch +i2c-ismt +i2c-mlxcpld +i2c-multi-instantiate +i2c-mux +i2c-mux-ltc4306 +i2c-nforce2 +i2c-nforce2-s4985 +i2c-nvidia-gpu +i2c-ocores +i2c-parport +i2c-pca-platform +i2c-scmi +i2c-simtec +i2c-sis5595 +i2c-sis630 +i2c-sis96x +i2c-smbus +i2c-stub +i2c-taos-evm +i2c-via +i2c-viapro +i2c-xiic +i3000_edac +i3200_edac +i3c +i3c-master-cdns +i40e +i5000_edac +i5100_edac +i5400_edac +i5500_temp +i5k_amb +i6300esb +i7300_edac +i7core_edac +i82975x_edac +i915 +iTCO_vendor_support +iTCO_wdt +iavf +ib700wdt +ib_cm +ib_core +ib_ipoib +ib_iser +ib_isert +ib_mthca +ib_srp +ib_umad +ib_uverbs +ibmaem +ibmasm +ibmasr +ibmpex +ice +icp +ics932s401 +idma64 +idt77252 +idxd +ie31200_edac +ie6xx_wdt +ieee802154 +ieee802154_6lowpan +ieee802154_socket +ifb +ifcvf +ife +igb +igbvf +igc +ila +ili9225 +ili9341 +ili9486 +img-ascii-lcd +imm +ina209 +ina2xx +ina3221 +inet_diag +initio +input-polldev +intel-cstate +intel-hid +intel-ish-ipc +intel-ishtp +intel-ishtp-hid +intel-ishtp-loader +intel-lpss +intel-lpss-acpi +intel-lpss-pci +intel-rng +intel-rst +intel-smartconnect +intel-uncore-frequency +intel-wmi-sbl-fw-update +intel-wmi-thunderbolt +intel_bxt_pmic_thermal +intel_bxtwc_tmu +intel_chtdc_ti_pwrbtn +intel_int0002_vgpio +intel_ips +intel_mid_powerbtn +intel_mid_thermal +intel_mrfld_pwrbtn +intel_pch_thermal +intel_pmc_bxt +intel_powerclamp +intel_punit_ipc +intel_qat +intel_quark_i2c_gpio +intel_scu_ipcutil +intel_scu_pltdrv +intel_sgx +intel_soc_dts_iosf +intel_soc_dts_thermal +intel_soc_pmic_bxtwc +intel_soc_pmic_chtdc_ti +intel_soc_pmic_mrfld +intel_telemetry_core +intel_telemetry_debugfs +intel_telemetry_pltdrv +intelfb +ioatdma +iommu_v2 +ionic +ip6_gre +ip6_tables +ip6_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_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_wlc +ip_vs_wrr +ip_vti +ipack +ipcomp +ipcomp6 +iphase +ipip +ipmi_devintf +ipmi_msghandler +ipmi_poweroff +ipmi_si +ipmi_ssif +ipmi_watchdog +ipr +ips +ipt_CLUSTERIP +ipt_ECN +ipt_REJECT +ipt_SYNPROXY +ipt_ah +ipt_rpfilter +iptable_filter +iptable_mangle +iptable_nat +iptable_raw +iptable_security +ipu3-imgu +ipvlan +ipvtap +iqs269a +iqs62x +iqs62x-keys +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-xmp-decoder +irq-madera +iscsi_boot_sysfs +iscsi_ibft +iscsi_target_mod +iscsi_tcp +isicom +isl29003 +isl29020 +isofs +isst_if_common +isst_if_mbox_msr +isst_if_mbox_pci +isst_if_mmio +it87 +it8712f_wdt +it87_wdt +ite-cir +iw_cm +ixgb +ixgbe +ixgbevf +janz-cmodio +janz-ican3 +jc42 +jfs +jme +joydev +jsm +k10temp +k8temp +kafs +kcm +keywrap +khazad +kheaders +kmem +kpc2000 +kpc2000_i2c +kpc2000_spi +kpc_dma +ks0108 +ks0127 +ksz8795 +ksz8795_spi +ksz9477 +ksz9477_i2c +ksz9477_spi +ksz_common +kvaser_pci +kvaser_pciefd +kvm +kvm-amd +kvm-intel +kyber-iosched +l2tp_core +l2tp_debugfs +l2tp_eth +l2tp_ip +l2tp_ip6 +l2tp_netlink +l2tp_ppp +lan743x +lan9303-core +lan9303_i2c +lan9303_mdio +lanai +lantiq +lantiq_gswip +lapb +lapbether +lattice-ecp3-config +lec +led-class +leds-apu +leds-gpio +leds-lm3532 +leds-lm36274 +leds-mlxreg +leds-ti-lmu-common +leds-tps6105x +ledtrig-activity +ledtrig-audio +ledtrig-netdev +ledtrig-pattern +lg-laptop +libahci +libahci_platform +libarc4 +libblake2s +libblake2s-generic +libceph +libchacha +libchacha20poly1305 +libcrc32c +libcurve25519 +libcurve25519-generic +libdes +libiscsi +libiscsi_tcp +libpoly1305 +libsas +lineage-pem +linear +ll_temac +llc +llc2 +lm363x-regulator +lm63 +lm70 +lm73 +lm75 +lm77 +lm78 +lm80 +lm83 +lm85 +lm87 +lm90 +lm92 +lm93 +lm95234 +lm95241 +lm95245 +lockd +locktorture +lp +lp3943 +lp873x +lpc_ich +lpc_sch +lpfc +lru_cache +lrw +lt3651-charger +ltc2945 +ltc2947-core +ltc2947-i2c +ltc2947-spi +ltc2990 +ltc4151 +ltc4215 +ltc4222 +ltc4245 +ltc4260 +ltc4261 +ltpc +lz4 +lz4hc +lz4hc_compress +m2m-deinterlace +m52790 +mac-celtic +mac-centeuro +mac-croatian +mac-cyrillic +mac-gaelic +mac-greek +mac-iceland +mac-inuit +mac-roman +mac-romanian +mac-turkish +mac80211 +mac802154 +mac802154_hwsim +machzwd +macsec +macvlan +macvtap +madera +madera-i2c +madera-spi +marvell10g +matrix-keymap +max1111 +max14577 +max16065 +max1619 +max1668 +max197 +max3100 +max31722 +max31730 +max31790 +max63xx_wdt +max6621 +max6639 +max6642 +max6650 +max6697 +max77693 +max77826-regulator +max8907 +mc +mc13783-adc +mc13xxx-core +mc13xxx-i2c +mc13xxx-spi +mcam-core +mcb +mcb-lpc +mcb-pci +mce-inject +mcp3021 +mcr20a +md-cluster +md4 +mdev +mdio +mdio-bcm-unimac +mdio-i2c +mdio-mscc-miim +mdio-mvusb +mdio-xpcs +megaraid +megaraid_mbox +megaraid_mm +megaraid_sas +mei +mei-me +mei_hdcp +mei_phy +mei_wdt +memory-notifier-error-inject +men_z135_uart +mena21_wdt +menf21bmc +menf21bmc_hwmon +menf21bmc_wdt +menz69_wdt +mhi +mi0283qt +michael_mic +microchip_t1 +microread +microread_mei +mii +minix +mip6 +ml86v7667 +mlx-platform +mlx4_core +mlx4_en +mlx4_ib +mlx5_core +mlx5_ib +mlx_wdt +mlxfw +mlxreg-fan +mlxreg-hotplug +mlxreg-io +mlxsw_core +mlxsw_i2c +mlxsw_minimal +mlxsw_pci +mlxsw_spectrum +mlxsw_switchib +mlxsw_switchx2 +most_cdev +most_core +most_i2c +most_net +most_video +moxa +mp2629 +mp8859 +mpls_gso +mpls_iptunnel +mpls_router +mpoa +mpt3sas +mptbase +mptctl +mptfc +mptsas +mptscsih +mptspi +mrp +mscc_ocelot_common +msdos +msp3400 +msr +mt6360-core +mt7530 +multipath +mux-adg792a +mux-adgs1408 +mux-core +mux-gpio +mvmdio +mvsas +mvumi +mxm-wmi +mxser +myrb +myrs +n5pf +n_gsm +n_hdlc +n_tracerouter +n_tracesink +nbd +nci +nci_spi +nci_uart +nct6683 +nct6775 +nct7802 +nct7904 +nd_virtio +net_failover +netconsole +netdevsim +netlink_diag +netrom +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_flow_table_ipv4 +nf_flow_table_ipv6 +nf_log_arp +nf_log_bridge +nf_log_common +nf_log_ipv4 +nf_log_ipv6 +nf_log_netdev +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 +nfnetlink +nfnetlink_acct +nfnetlink_cthelper +nfnetlink_cttimeout +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_counter +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_objref +nft_osf +nft_queue +nft_quota +nft_redir +nft_reject +nft_reject_bridge +nft_reject_inet +nft_reject_ipv4 +nft_reject_ipv6 +nft_socket +nft_synproxy +nft_tproxy +nft_tunnel +nft_xfrm +nhc_dest +nhc_fragment +nhc_hop +nhc_ipv6 +nhc_mobility +nhc_routing +nhc_udp +nhpoly1305 +nhpoly1305-avx2 +nhpoly1305-sse2 +ni903x_wdt +nic7018_wdt +nicstar +nilfs2 +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 +nosy +notifier-error-inject +nozomi +npcm750-pwm-fan +ns +nsh +ntb +ntb_hw_idt +ntb_hw_intel +ntb_hw_switchtec +ntb_netdev +ntb_transport +ntc_thermistor +ntfs +nuvoton-cir +nv_tco +nvme-fabrics +nvme-fc +nvme-rdma +nvme-tcp +nvmet +nvmet-fc +nvmet-tcp +nvram +nxp-tja11xx +objagg +ocfs2 +ocfs2_dlm +ocfs2_dlmfs +ocfs2_nodemanager +ocfs2_stack_o2cb +ocfs2_stack_user +ocfs2_stackglue +of_xilinx_wdt +ofb +omfs +opa_vnic +openvswitch +oprofile +ov7670 +overlay +p8022 +padlock-aes +padlock-sha +panel +panel-raspberrypi-touchscreen +parkbd +parman +parport +parport_ax88796 +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_pdc2027x +pata_pdc202xx_old +pata_piccolo +pata_platform +pata_radisys +pata_rdc +pata_rz1000 +pata_sch +pata_serverworks +pata_sil680 +pata_sl82c105 +pata_triflex +pata_via +pc300too +pc87360 +pc87413_wdt +pc87427 +pcbc +pcengines-apuv2 +pcf50633 +pcf50633-adc +pcf50633-gpio +pcf8591 +pci-pf-stub +pci-stub +pci200syn +pcips2 +pcmcia_core +pcmcia_rsrc +pcrypt +pcwd_pci +pdc_adma +peak_pci +peak_pciefd +peaq-wmi +phantom +phonet +phy-intel-emmc +phylink +pi433 +pinctrl-cannonlake +pinctrl-cedarfork +pinctrl-denverton +pinctrl-icelake +pinctrl-intel +pinctrl-jasperlake +pinctrl-lewisburg +pinctrl-lynxpoint +pinctrl-madera +pinctrl-mcp23s08 +pinctrl-mcp23s08_i2c +pinctrl-mcp23s08_spi +pinctrl-tigerlake +pkcs7_test_key +pkcs8_key_parser +pktcdvd +pktgen +plx_dma +plx_pci +pm-notifier-error-inject +pm80xx +pmcraid +pn544 +pn544_mei +pn_pep +pnd2_edac +poly1305-x86_64 +poly1305_generic +powr1220 +ppa +ppdev +ppp_async +ppp_deflate +ppp_mppe +ppp_synctty +pppoatm +pppoe +pppox +pptp +pretimeout_panic +ps2-gpio +ps2mult +psample +psnap +pstore_blk +pstore_zone +ptp_clockmatrix +ptp_idt82p33 +ptp_kvm +ptp_vmw +pulse8-cec +punit_atom_debug +pvpanic +qat_dh895xcc +qat_dh895xccvf +qcom-cpr +qcom-wled +qcom_glink +qcom_glink_rpm +qla1280 +qla2xxx +qla4xxx +qlge +qnx4 +qnx6 +qrtr +qrtr-mhi +qrtr-smd +qrtr-tun +qt1050 +quota_tree +quota_v1 +quota_v2 +qxl +r8169 +radeon +raid0 +raid1 +raid10 +raid456 +raid6_pq +raid_class +rainshadow-cec +ramoops +rapl +raw +raw_diag +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-behold +rc-behold-columbus +rc-budget-ci-old +rc-cec +rc-cinergy +rc-cinergy-1400 +rc-core +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-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-kworld-315u +rc-kworld-pc150u +rc-kworld-plus-tv-analog +rc-leadtek-y04g0051 +rc-lme2510 +rc-loopback +rc-manli +rc-medion-x10 +rc-medion-x10-digitainer +rc-medion-x10-or2x +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-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-tango +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-dvd +rc-zx-irdec +rcuperf +rdc321x-southbridge +rdma_cm +rdma_ucm +rds +rds_rdma +rds_tcp +realtek +realtek-smi +reed_solomon +regmap-i2c +regmap-slimbus +reiserfs +repaper +reset-ti-syscon +retu-mfd +retu_wdt +rfc1051 +rfc1201 +rfkill-gpio +rio-scan +rio_cm +rio_mport_cdev +rionet +rmd128 +rmd160 +rmd256 +rmd320 +rnbd-client +rnbd-server +rockchip +rocket +romfs +rose +rp2 +rpcrdma +rpcsec_gss_krb5 +rpmsg_char +rpmsg_core +rt5033 +rtc-ab-eoz9 +rtc-ftrtc010 +rtc-pcf85363 +rtc-rv3028 +rtc-sd3078 +rtrs-client +rtrs-core +rtrs-server +rts5208 +rtsx_pci +rxrpc +s2io +saa6588 +saa6752hs +saa7110 +saa7115 +saa7127 +saa717x +saa7185 +salsa20_generic +sata_dwc_460ex +sb1000 +sb_edac +sbc60xxwdt +sbc_epx_c3 +sbc_fitpc2_wdt +sbni +sbs-manager +sc1200wdt +sc16is7xx +sch311x_wdt +sch5627 +sch5636 +sch56xx-common +sch_atm +sch_cake +sch_cbq +sch_cbs +sch_choke +sch_codel +sch_drr +sch_dsmark +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_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_iscsi +scsi_transport_sas +scsi_transport_spi +scsi_transport_srp +sctp +sctp_diag +seco-cec +seed +serial_ir +serio_raw +serpent-avx-x86_64 +serpent-avx2 +serpent-sse2-x86_64 +serpent_generic +serport +ses +sf-pdma +sfc +sfc-falcon +sfp +sha1-ssse3 +sha256-ssse3 +sha3_generic +sha512-ssse3 +shiftfs +sht15 +sht21 +sht3x +shtc1 +sim710 +siox-bus-gpio +siox-core +sir_ir +sis-agp +sis5595 +sit +siw +sja1000 +sja1000_isa +sja1000_platform +sja1105 +skfp +skge +skx_edac +sky2 +sky81452 +slcan +slg51000-regulator +slicoss +slim-qcom-ctrl +slimbus +slip +sm3_generic +sm4_generic +sm501 +sm501fb +sm750fb +smartpqi +smc +smc_diag +smm665 +smsc37b787_wdt +smsc47b397 +smsc47m1 +smsc47m192 +snic +softdog +solos-pci +sony-btf-mpx +soundwire-bus +sp5100_tco +sparse-keymap +spi-altera +spi-amd +spi-axi-spi-engine +spi-bitbang +spi-butterfly +spi-cadence +spi-dw +spi-dw-mmio +spi-dw-pci +spi-gpio +spi-lm70llp +spi-loopback-test +spi-mux +spi-mxic +spi-nxp-fspi +spi-oc-tiny +spi-pxa2xx-pci +spi-pxa2xx-platform +spi-sc18is602 +spi-sifive +spi-slave-system-control +spi-slave-time +spi-tle62x0 +spi-xcomm +spi-zynqmp-gqspi +spidev +spl +sprd_serial +ssb +st +st-mipid02 +st7586 +st7735r +stex +stp +streebog_generic +stts751 +sundance +suni +sunrpc +surface3-wmi +surface3_power +switchtec +sym53c8xx +synclink +synclink_gt +synclinkmp +syscopyarea +sysfillrect +sysimgblt +system76_acpi +sysv +tag_8021q +tag_ar9331 +tag_brcm +tag_dsa +tag_edsa +tag_gswip +tag_ksz +tag_lan9303 +tag_mtk +tag_ocelot +tag_qca +tag_sja1105 +tag_trailer +tap +target_core_file +target_core_iblock +target_core_mod +target_core_pscsi +target_core_user +tc358743 +tc654 +tc74 +tcm_loop +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 +tcrypt +tda7432 +tda9840 +tda9950 +tea +tea6415c +tea6420 +tee +tg3 +tgr192 +thmc50 +ths7303 +ths8200 +thunderbolt +thunderbolt-net +ti-lmu +ti_am335x_tscadc +tifm_7xx1 +tifm_core +timeriomem-rng +tipc +tlclk +tls +tlv320aic23b +tmp102 +tmp103 +tmp108 +tmp401 +tmp421 +tmp513 +torture +tpci200 +tpm_key_parser +tps6105x +tps65010 +tps6507x +tps65086 +tps65132-regulator +tps65912-i2c +tqmx86 +tqmx86_wdt +ts_bm +ts_fsm +ts_kmp +tsi721_mport +tsl2550 +ttm +ttynull +tunnel4 +tunnel6 +tvaudio +tvp514x +tvp5150 +tvp7002 +tw2804 +tw9903 +tw9906 +tw9910 +twofish-avx-x86_64 +twofish-x86_64 +twofish-x86_64-3way +twofish_common +twofish_generic +uPD60620 +uPD98402 +uacce +uartlite +ubuntu-host +uda1342 +udf +udp_diag +ufs +uhid +uio +uio_aec +uio_cif +uio_dmem_genirq +uio_hv_generic +uio_mf624 +uio_netx +uio_pci_generic +uio_pdrv_genirq +uio_pruss +uio_sercos3 +unix_diag +upd64031a +upd64083 +userio +usnic_verbs +v4l2-dv-timings +v4l2-fwnode +v4l2-mem2mem +v4l2-tpg +vboxvideo +vcan +vdpa +veth +vfio_mdev +vhost +vhost_iotlb +vhost_net +vhost_scsi +vhost_vdpa +vhost_vsock +via-camera +via-cputemp +via-rng +via686a +via_wdt +viafb +vicodec +video +video-i2c +videobuf-core +videobuf-vmalloc +videobuf2-common +videobuf2-dma-contig +videobuf2-dma-sg +videobuf2-memops +videobuf2-v4l2 +videobuf2-vmalloc +videodev +vim2m +vimc +virt-dma +virtio-gpu +virtio-rng +virtio_blk +virtio_crypto +virtio_input +virtio_mem +virtio_net +virtio_pmem +virtio_rpmsg_bus +virtio_scsi +virtio_vdpa +virtiofs +vitesse +vitesse-vsc73xx-core +vitesse-vsc73xx-platform +vitesse-vsc73xx-spi +vivid +vkms +vmac +vme_ca91cx42 +vme_fake +vme_tsi148 +vme_vmivme7805 +vmw_vsock_virtio_transport +vmw_vsock_virtio_transport_common +vp27smpx +vport-geneve +vport-gre +vport-vxlan +vpx3220 +vrf +vringh +vsock +vsock_diag +vsock_loopback +vsockmon +vt1211 +vt6655_stage +vt8231 +vx855 +vxcan +vxge +w83627ehf +w83627hf +w83627hf_wdt +w83773g +w83781d +w83791d +w83792d +w83793 +w83795 +w83877f_wdt +w83977f_wdt +w83l785ts +w83l786ng +wafer5823wdt +wanxl +wcd934x +wd719x +wdat_wdt +wdt_pci +wfx +winbond-cir +wireguard +wm831x-hwmon +wm831x_wdt +wm8739 +wm8775 +wm8994 +wmi +wmi-bmof +wp512 +x25 +x25_asy +x38_edac +x86_pkg_temp_thermal +x_tables +xcbc +xfrm4_tunnel +xfrm6_tunnel +xfrm_algo +xfrm_interface +xfrm_ipcomp +xfrm_user +xfs +xgene-hwmon +xhci-plat-hcd +xiaomi-wmi +xilinx_emac +xilinx_sdfec +xlnx_vcu +xor +xr_usb_serial_common +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 +xxhash_generic +xz_dec_test +yellowfin +yenta_socket +z3fold +zatm +zavl +zcommon +zfs +ziirave_wdt +zlua +znvpair +zonefs +zram +zstd +zunicode --- linux-azure-5.8-5.8.0.orig/debian.azure-5.8/abi/5.8.0-1027.29~20.04.2/amd64/azure.retpoline +++ linux-azure-5.8-5.8.0/debian.azure-5.8/abi/5.8.0-1027.29~20.04.2/amd64/azure.retpoline @@ -0,0 +1 @@ +# retpoline v1.0 --- linux-azure-5.8-5.8.0.orig/debian.azure-5.8/abi/5.8.0-1027.29~20.04.2/fwinfo +++ linux-azure-5.8-5.8.0/debian.azure-5.8/abi/5.8.0-1027.29~20.04.2/fwinfo @@ -0,0 +1,724 @@ +firmware: advansys/3550.bin +firmware: advansys/38C0800.bin +firmware: advansys/38C1600.bin +firmware: advansys/mcode.bin +firmware: aic94xx-seq.fw +firmware: amdgpu/arcturus_asd.bin +firmware: amdgpu/arcturus_gpu_info.bin +firmware: amdgpu/arcturus_mec.bin +firmware: amdgpu/arcturus_mec2.bin +firmware: amdgpu/arcturus_rlc.bin +firmware: amdgpu/arcturus_sdma.bin +firmware: amdgpu/arcturus_sos.bin +firmware: amdgpu/arcturus_ta.bin +firmware: amdgpu/banks_k_2_smc.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/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/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/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_gpu_info.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_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_sos.bin +firmware: amdgpu/navi12_ta.bin +firmware: amdgpu/navi14_asd.bin +firmware: amdgpu/navi14_ce.bin +firmware: amdgpu/navi14_ce_wks.bin +firmware: amdgpu/navi14_gpu_info.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/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/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/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_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/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_gpu_info.bin +firmware: amdgpu/renoir_me.bin +firmware: amdgpu/renoir_mec.bin +firmware: amdgpu/renoir_mec2.bin +firmware: amdgpu/renoir_pfp.bin +firmware: amdgpu/renoir_rlc.bin +firmware: amdgpu/renoir_sdma.bin +firmware: amdgpu/renoir_vcn.bin +firmware: amdgpu/si58_mc.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/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/vega10_acg_smc.bin +firmware: amdgpu/vega10_asd.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: ast_dp501_fw.bin +firmware: atmsar11.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-e1h-7.13.15.0.fw +firmware: bnx2x/bnx2x-e2-7.13.15.0.fw +firmware: c218tunx.cod +firmware: c320tunx.cod +firmware: cavium/cnn55xx_se.fw +firmware: cbfw-3.2.5.1.bin +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: cyzfirm.bin +firmware: e100/d101m_ucode.bin +firmware: e100/d101s_ucode.bin +firmware: e100/d102e_ucode.bin +firmware: i915/bxt_dmc_ver1_07.bin +firmware: i915/bxt_guc_33.0.0.bin +firmware: i915/bxt_huc_2.0.0.bin +firmware: i915/cml_guc_33.0.0.bin +firmware: i915/cml_huc_4.0.0.bin +firmware: i915/cnl_dmc_ver1_07.bin +firmware: i915/ehl_guc_33.0.4.bin +firmware: i915/ehl_huc_9.0.0.bin +firmware: i915/glk_dmc_ver1_04.bin +firmware: i915/glk_guc_33.0.0.bin +firmware: i915/glk_huc_4.0.0.bin +firmware: i915/icl_dmc_ver1_09.bin +firmware: i915/icl_guc_33.0.0.bin +firmware: i915/icl_huc_9.0.0.bin +firmware: i915/kbl_dmc_ver1_04.bin +firmware: i915/kbl_guc_33.0.0.bin +firmware: i915/kbl_huc_4.0.0.bin +firmware: i915/skl_dmc_ver1_27.bin +firmware: i915/skl_guc_33.0.0.bin +firmware: i915/skl_huc_2.0.0.bin +firmware: i915/tgl_dmc_ver2_06.bin +firmware: i915/tgl_guc_35.2.0.bin +firmware: i915/tgl_huc_7.0.12.bin +firmware: intel/ice/ddp/ice.pkg +firmware: isi4608.bin +firmware: isi4616.bin +firmware: isi608.bin +firmware: isi608em.bin +firmware: isi616em.bin +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: mellanox/mlxsw_spectrum-13.2000.2714.mfa2 +firmware: mellanox/mlxsw_spectrum2-29.2000.2714.mfa2 +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: pca200e_ecd.bin2 +firmware: qat_895xcc.bin +firmware: qat_895xcc_mmp.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: 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: rp2.fw +firmware: rtl_nic/rtl8105e-1.fw +firmware: rtl_nic/rtl8106e-1.fw +firmware: rtl_nic/rtl8106e-2.fw +firmware: rtl_nic/rtl8107e-1.fw +firmware: rtl_nic/rtl8107e-2.fw +firmware: rtl_nic/rtl8125a-3.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-1.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: slicoss/gbdownload.sys +firmware: slicoss/gbrcvucode.sys +firmware: slicoss/oasisdownload.sys +firmware: slicoss/oasisrcvucode.sys +firmware: solos-FPGA.bin +firmware: solos-Firmware.bin +firmware: solos-db-FPGA.bin +firmware: tigon/tg3.bin +firmware: tigon/tg3_tso.bin +firmware: tigon/tg3_tso5.bin +firmware: v4l-cx231xx-avcore-01.fw +firmware: v4l-cx23885-avcore-01.fw +firmware: v4l-cx25840.fw +firmware: vxge/X3fw-pxe.ncf +firmware: vxge/X3fw.ncf +firmware: wd719x-risc.bin +firmware: wd719x-wcs.bin --- linux-azure-5.8-5.8.0.orig/debian.azure-5.8/changelog +++ linux-azure-5.8-5.8.0/debian.azure-5.8/changelog @@ -0,0 +1,54377 @@ +linux-azure-5.8 (5.8.0-1030.32~20.04.1) focal; urgency=medium + + * focal/linux-azure-5.8: 5.8.0-1030.32~20.04.1 -proposed tracker + (LP: #1923743) + + [ Ubuntu: 5.8.0-1030.32 ] + + * groovy/linux-azure: 5.8.0-1030.32 -proposed tracker (LP: #1923744) + * power off stress test will hang on the TGL machines (LP: #1919930) + - [Config]: linux-azure: Annotate SND_SOC_SOF_HDA_ALWAYS_ENABLE_DMI_L1 + * Groovy update: upstream stable patchset 2021-03-30 (LP: #1921960) + - [Config]: linux-azure: updateconfigs for KCMP + * linux-azure: Enable CONFIG_FPGA_MGR_XILINX_SPI for Azure cloud kernel + (LP: #1922582) + - [Config] azure: CONFIG_FPGA_MGR_XILINX_SPI=m + * groovy/linux: 5.8.0-51.57 -proposed tracker (LP: #1923754) + * CVE-2021-28375 + - misc: fastrpc: restrict user apps from sending kernel RPC messages + * CVE-2021-29646 + - tipc: better validate user input in tipc_nl_retrieve_key() + * SND_PCI_QUIRK for Clevo NH55RZQ and Intel NUC10 (LP: #1922759) + - ALSA: hda/realtek: Add quirk for Intel NUC 10 + - ALSA: hda/realtek: Add quirk for Clevo NH55RZQ + * CVE-2021-29650 + - Revert "netfilter: x_tables: Update remaining dereference to RCU" + - Revert "netfilter: x_tables: Switch synchronization to RCU" + - netfilter: x_tables: Use correct memory barriers. + * LRMv4: switch to signing nvidia modules via the Ubuntu Modules signing key + (LP: #1918134) + - [Packaging] dkms-build{,--nvidia-N} sync back from LRMv4 + * CVE-2021-29266 + - vhost-vdpa: fix use-after-free of v->config_ctx + * CVE-2021-29264 + - gianfar: fix jumbo packets+napi+rx overrun crash + * CVE-2021-29265 + - usbip: fix stub_dev usbip_sockfd_store() races leading to gpf + * Bcache bypasse writeback on caching device with fragmentation (LP: #1900438) + - bcache: consider the fragmentation when update the writeback rate + * Fix implicit declaration warnings for kselftests/memfd test on newer + releases (LP: #1910323) + - selftests/memfd: Fix implicit declaration warnings + * net/mlx5e: Add missing capability check for uplink follow (LP: #1921104) + - net/mlx5e: Add missing capability check for uplink follow + * [UBUNUT 21.04] s390/vtime: fix increased steal time accounting + (LP: #1921498) + - s390/vtime: fix increased steal time accounting + * Groovy update: upstream stable patchset 2021-03-30 (LP: #1921960) + - vmlinux.lds.h: add DWARF v5 sections + - debugfs: be more robust at handling improper input in debugfs_lookup() + - debugfs: do not attempt to create a new file before the filesystem is + initalized + - scsi: libsas: docs: Remove notify_ha_event() + - scsi: qla2xxx: Fix mailbox Ch erroneous error + - kdb: Make memory allocations more robust + - PCI: qcom: Use PHY_REFCLK_USE_PAD only for ipq8064 + - PCI: Decline to resize resources if boot config must be preserved + - virt: vbox: Do not use wait_event_interruptible when called from kernel + context + - bfq: Avoid false bfq queue merging + - ALSA: usb-audio: Fix PCM buffer allocation in non-vmalloc mode + - MIPS: vmlinux.lds.S: add missing PAGE_ALIGNED_DATA() section + - random: fix the RNDRESEEDCRNG ioctl + - ALSA: pcm: Call sync_stop at disconnection + - ALSA: pcm: Assure sync with the pending stop operation at suspend + - ALSA: pcm: Don't call sync_stop if it hasn't been stopped + - drm/i915/gt: One more flush for Baytrail clear residuals + - ath10k: Fix error handling in case of CE pipe init failure + - Bluetooth: btqcomsmd: Fix a resource leak in error handling paths in the + probe function + - Bluetooth: hci_uart: Fix a race for write_work scheduling + - Bluetooth: Fix initializing response id after clearing struct + - ARM: dts: exynos: correct PMIC interrupt trigger level on Artik 5 + - ARM: dts: exynos: correct PMIC interrupt trigger level on Monk + - ARM: dts: exynos: correct PMIC interrupt trigger level on Rinato + - ARM: dts: exynos: correct PMIC interrupt trigger level on Spring + - ARM: dts: exynos: correct PMIC interrupt trigger level on Arndale Octa + - ARM: dts: exynos: correct PMIC interrupt trigger level on Odroid XU3 family + - arm64: dts: exynos: correct PMIC interrupt trigger level on TM2 + - arm64: dts: exynos: correct PMIC interrupt trigger level on Espresso + - memory: mtk-smi: Fix PM usage counter unbalance in mtk_smi ops + - Bluetooth: hci_qca: Fix memleak in qca_controller_memdump + - arm64: dts: qcom: msm8916-samsung-a5u: Fix iris compatible + - net: stmmac: dwmac-meson8b: fix enabling the timing-adjustment clock + - bpf: Add bpf_patch_call_args prototype to include/linux/bpf.h + - bpf: Avoid warning when re-casting __bpf_call_base into __bpf_call_base_args + - arm64: dts: allwinner: A64: properly connect USB PHY to port 0 + - arm64: dts: allwinner: H6: properly connect USB PHY to port 0 + - arm64: dts: allwinner: Drop non-removable from SoPine/LTS SD card + - arm64: dts: allwinner: H6: Allow up to 150 MHz MMC bus frequency + - arm64: dts: allwinner: A64: Limit MMC2 bus frequency to 150 MHz + - cpufreq: brcmstb-avs-cpufreq: Free resources in error path + - cpufreq: brcmstb-avs-cpufreq: Fix resource leaks in ->remove() + - arm64: dts: rockchip: rk3328: Add clock_in_out property to gmac2phy node + - ACPICA: Fix exception code class checks + - usb: gadget: u_audio: Free requests only after callback + - arm64: dts: qcom: sdm845-db845c: Fix reset-pin of ov8856 node + - soc: ti: pm33xx: Fix some resource leak in the error handling paths of the + probe function + - staging: media: atomisp: Fix size_t format specifier in hmm_alloc() debug + statemenet + - Bluetooth: drop HCI device reference before return + - Bluetooth: Put HCI device if inquiry procedure interrupts + - memory: ti-aemif: Drop child node when jumping out loop + - ARM: dts: Configure missing thermal interrupt for 4430 + - usb: dwc2: Do not update data length if it is 0 on inbound transfers + - usb: dwc2: Abort transaction after errors with unknown reason + - usb: dwc2: Make "trimming xfer length" a debug message + - staging: rtl8723bs: wifi_regd.c: Fix incorrect number of regulatory rules + - ARM: dts: armada388-helios4: assign pinctrl to LEDs + - ARM: dts: armada388-helios4: assign pinctrl to each fan + - arm64: dts: armada-3720-turris-mox: rename u-boot mtd partition to + a53-firmware + - opp: Correct debug message in _opp_add_static_v2() + - Bluetooth: btusb: Fix memory leak in btusb_mtk_wmt_recv + - soc: qcom: ocmem: don't return NULL in of_get_ocmem + - arm64: dts: msm8916: Fix reserved and rfsa nodes unit address + - arm64: dts: meson: fix broken wifi node for Khadas VIM3L + - ARM: s3c: fix fiq for clang IAS + - ARM: at91: use proper asm syntax in pm_suspend + - ath10k: Fix suspicious RCU usage warning in + ath10k_wmi_tlv_parse_peer_stats_info() + - ath10k: Fix lockdep assertion warning in ath10k_sta_statistics + - soc: aspeed: snoop: Add clock control logic + - bpf_lru_list: Read double-checked variable once without lock + - ath9k: fix data bus crash when setting nf_override via debugfs + - ibmvnic: Set to CLOSED state even on error + - bnxt_en: reverse order of TX disable and carrier off + - xen/netback: fix spurious event detection for common event case + - net/mlx5e: Don't change interrupt moderation params when DIM is enabled + - net/mlx5e: Change interrupt moderation channel params also when channels are + closed + - net/mlx5e: Replace synchronize_rcu with synchronize_net + - net/mlx5e: kTLS, Use refcounts to free kTLS RX priv context + - net/mlx5: Disable devlink reload for multi port slave device + - net/mlx5: Disallow RoCE on multi port slave device + - net/mlx5: Disallow RoCE on lag device + - net/mlx5: Disable devlink reload for lag devices + - mac80211: fix potential overflow when multiplying to u32 integers + - libbpf: Ignore non function pointer member in struct_ops + - bpf: Fix an unitialized value in bpf_iter + - bpf, devmap: Use GFP_KERNEL for xdp bulk queue allocation + - bpf: Fix bpf_fib_lookup helper MTU check for SKB ctx + - tcp: fix SO_RCVLOWAT related hangs under mem pressure + - net: axienet: Handle deferred probe on clock properly + - cxgb4/chtls/cxgbit: Keeping the max ofld immediate data size same in cxgb4 + and ulds + - b43: N-PHY: Fix the update of coef for the PHY revision >= 3case + - bpf: Clear subreg_def for global function return values + - ibmvnic: add memory barrier to protect long term buffer + - ibmvnic: skip send_request_unmap for timeout reset + - net: dsa: felix: perform teardown in reverse order of setup + - net: phy: mscc: adding LCPLL reset to VSC8514 + - net: amd-xgbe: Reset the PHY rx data path when mailbox command timeout + - net: amd-xgbe: Fix NETDEV WATCHDOG transmit queue timeout warning + - net: amd-xgbe: Reset link when the link never comes back + - net: amd-xgbe: Fix network fluctuations when using 1G BELFUSE SFP + - net: mvneta: Remove per-cpu queue mapping for Armada 3700 + - tty: convert tty_ldisc_ops 'read()' function to take a kernel pointer + - tty: implement read_iter + - fbdev: aty: SPARC64 requires FB_ATY_CT + - drm/gma500: Fix error return code in psb_driver_load() + - gma500: clean up error handling in init + - drm/fb-helper: Add missed unlocks in setcmap_legacy() + - crypto: sun4i-ss - linearize buffers content must be kept + - crypto: sun4i-ss - fix kmap usage + - crypto: arm64/aes-ce - really hide slower algos when faster ones are enabled + - media: allegro: Fix use after free on error + - drm: rcar-du: Fix PM reference leak in rcar_cmm_enable() + - drm: rcar-du: Fix crash when using LVDS1 clock for CRTC + - drm: rcar-du: Fix the return check of of_parse_phandle and + of_find_device_by_node + - drm/amdgpu: Fix macro name _AMDGPU_TRACE_H_ in preprocessor if condition + - MIPS: c-r4k: Fix section mismatch for loongson2_sc_init + - MIPS: lantiq: Explicitly compare LTQ_EBU_PCC_ISTAT against 0 + - drm/virtio: make sure context is created in gem open + - media: ipu3-cio2: Build only for x86 + - media: i2c: ov5670: Fix PIXEL_RATE minimum value + - media: imx: Unregister csc/scaler only if registered + - media: imx: Fix csc/scaler unregister + - media: mtk-vcodec: fix error return code in vdec_vp9_decode() + - media: camss: missing error code in msm_video_register() + - media: vsp1: Fix an error handling path in the probe function + - media: em28xx: Fix use-after-free in em28xx_alloc_urbs + - media: media/pci: Fix memleak in empress_init + - media: tm6000: Fix memleak in tm6000_start_stream + - media: aspeed: fix error return code in aspeed_video_setup_video() + - ASoC: cs42l56: fix up error handling in probe + - ASoC: qcom: qdsp6: Move frontend AIFs to q6asm-dai + - evm: Fix memleak in init_desc + - crypto: bcm - Rename struct device_private to bcm_device_private + - sched/fair: Avoid stale CPU util_est value for schedutil in task dequeue + - drm/sun4i: tcon: fix inverted DCLK polarity + - media: imx7: csi: Fix regression for parallel cameras on i.MX6UL + - media: imx7: csi: Fix pad link validation + - MIPS: properly stop .eh_frame generation + - MIPS: Compare __SYNC_loongson3_war against 0 + - drm/tegra: Fix reference leak when pm_runtime_get_sync() fails + - drm/amdgpu: toggle on DF Cstate after finishing xgmi injection + - bsg: free the request before return error code + - drm/amd/display: Fix 10/12 bpc setup in DCE output bit depth reduction. + - drm/amd/display: Fix HDMI deep color output for DCE 6-11. + - media: software_node: Fix refcounts in software_node_get_next_child() + - media: lmedm04: Fix misuse of comma + - media: atomisp: Fix a buffer overflow in debug code + - media: qm1d1c0042: fix error return code in qm1d1c0042_init() + - media: cx25821: Fix a bug when reallocating some dma memory + - media: pxa_camera: declare variable when DEBUG is defined + - media: uvcvideo: Accept invalid bFormatIndex and bFrameIndex values + - sched/eas: Don't update misfit status if the task is pinned + - f2fs: compress: fix potential deadlock + - ASoC: SOF: Intel: hda: cancel D0i3 work during runtime suspend + - mtd: parser: imagetag: fix error codes in + bcm963xx_parse_imagetag_partitions() + - crypto: talitos - Work around SEC6 ERRATA (AES-CTR mode data size error) + - crypto: talitos - Fix ctr(aes) on SEC1 + - drm/nouveau: bail out of nouveau_channel_new if channel init fails + - mm: proc: Invalidate TLB after clearing soft-dirty page state + - ata: ahci_brcm: Add back regulators management + - ASoC: cpcap: fix microphone timeslot mask + - ASoC: codecs: add missing max_register in regmap config + - mtd: parsers: afs: Fix freeing the part name memory in failure + - f2fs: fix to avoid inconsistent quota data + - drm/amdgpu: Prevent shift wrapping in amdgpu_read_mask() + - f2fs: fix a wrong condition in __submit_bio + - KVM: nSVM: Don't strip host's C-bit from guest's CR3 when reading PDPTRs + - drm/mediatek: Check if fb is null + - Drivers: hv: vmbus: Avoid use-after-free in vmbus_onoffer_rescind() + - ASoC: Intel: sof_sdw: add missing TGL_HDMI quirk for Dell SKU 0A5E + - locking/lockdep: Avoid unmatched unlock + - ASoC: rt5682: Fix panic in rt5682_jack_detect_handler happening during + system shutdown + - ASoC: SOF: debug: Fix a potential issue on string buffer termination + - btrfs: clarify error returns values in __load_free_space_cache + - btrfs: fix double accounting of ordered extent for subpage case in + btrfs_invalidapge + - KVM: x86: Restore all 64 bits of DR6 and DR7 during RSM on x86-64 + - drm/lima: fix reference leak in lima_pm_busy + - drm/dp_mst: Don't cache EDIDs for physical ports + - hwrng: timeriomem - Fix cooldown period calculation + - crypto: ecdh_helper - Ensure 'len >= secret.len' in decode_key() + - nvmet-tcp: fix receive data digest calculation for multiple h2cdata PDUs + - nvmet-tcp: fix potential race of tcp socket closing accept_work + - nvmet: remove extra variable in identify ns + - nvmet: set status to 0 in case for invalid nsid + - ASoC: SOF: sof-pci-dev: add missing Up-Extreme quirk + - ima: Free IMA measurement buffer on error + - ima: Free IMA measurement buffer after kexec syscall + - ASoC: simple-card-utils: Fix device module clock + - fs/jfs: fix potential integer overflow on shift of a int + - jffs2: fix use after free in jffs2_sum_write_data() + - ubifs: Fix memleak in ubifs_init_authentication + - ubifs: replay: Fix high stack usage, again + - ubifs: Fix error return code in alloc_wbufs() + - irqchip/imx: IMX_INTMUX should not default to y, unconditionally + - smp: Process pending softirqs in flush_smp_call_function_from_idle() + - drm/amdgpu/display: remove hdcp_srm sysfs on device removal + - HSI: Fix PM usage counter unbalance in ssi_hw_init + - power: supply: cpcap: Add missing IRQF_ONESHOT to fix regression + - clk: meson: clk-pll: fix initializing the old rate (fallback) for a PLL + - clk: meson: clk-pll: make "ret" a signed integer + - clk: meson: clk-pll: propagate the error from meson_clk_pll_set_rate() + - regulator: qcom-rpmh-regulator: add pm8009-1 chip revision + - quota: Fix memory leak when handling corrupted quota file + - i2c: iproc: handle only slave interrupts which are enabled + - i2c: iproc: update slave isr mask (ISR_MASK_SLAVE) + - i2c: iproc: handle master read request + - spi: cadence-quadspi: Abort read if dummy cycles required are too many + - clk: sunxi-ng: h6: Fix CEC clock + - HID: core: detect and skip invalid inputs to snto32() + - RDMA/siw: Fix handling of zero-sized Read and Receive Queues. + - dmaengine: fsldma: Fix a resource leak in the remove function + - dmaengine: fsldma: Fix a resource leak in an error handling path of the + probe function + - dmaengine: owl-dma: Fix a resource leak in the remove function + - dmaengine: hsu: disable spurious interrupt + - mfd: bd9571mwv: Use devm_mfd_add_devices() + - power: supply: cpcap-charger: Fix missing power_supply_put() + - power: supply: cpcap-battery: Fix missing power_supply_put() + - power: supply: cpcap-charger: Fix power_supply_put on null battery pointer + - fdt: Properly handle "no-map" field in the memory region + - of/fdt: Make sure no-map does not remove already reserved regions + - RDMA/rtrs: Extend ibtrs_cq_qp_create + - RDMA/rtrs-srv: Release lock before call into close_sess + - RDMA/rtrs-srv: Use sysfs_remove_file_self for disconnect + - RDMA/rtrs-clt: Set mininum limit when create QP + - RDMA/rtrs: Call kobject_put in the failure path + - RDMA/rtrs-srv: Fix missing wr_cqe + - RDMA/rtrs-clt: Refactor the failure cases in alloc_clt + - RDMA/rtrs-srv: Init wr_cnt as 1 + - power: reset: at91-sama5d2_shdwc: fix wkupdbc mask + - rtc: s5m: select REGMAP_I2C + - dmaengine: idxd: set DMA channel to be private + - power: supply: fix sbs-charger build, needs REGMAP_I2C + - clocksource/drivers/ixp4xx: Select TIMER_OF when needed + - clocksource/drivers/mxs_timer: Add missing semicolon when DEBUG is defined + - RDMA/mlx5: Use the correct obj_id upon DEVX TIR creation + - IB/mlx5: Add mutex destroy call to cap_mask_mutex mutex + - clk: sunxi-ng: h6: Fix clock divider range on some clocks + - regulator: axp20x: Fix reference cout leak + - watch_queue: Drop references to /dev/watch_queue + - certs: Fix blacklist flag type confusion + - regulator: s5m8767: Fix reference count leak + - spi: atmel: Put allocated master before return + - regulator: s5m8767: Drop regulators OF node reference + - power: supply: axp20x_usb_power: Init work before enabling IRQs + - regulator: core: Avoid debugfs: Directory ... already present! error + - isofs: release buffer head before return + - watchdog: intel-mid_wdt: Postpone IRQ handler registration till SCU is ready + - auxdisplay: ht16k33: Fix refresh rate handling + - objtool: Fix error handling for STD/CLD warnings + - objtool: Fix ".cold" section suffix check for newer versions of GCC + - iommu: Switch gather->end to the inclusive end + - IB/umad: Return EIO in case of when device disassociated + - IB/umad: Return EPOLLERR in case of when device disassociated + - KVM: PPC: Make the VMX instruction emulation routines static + - powerpc/47x: Disable 256k page size + - powerpc/time: Enable sched clock for irqtime + - mmc: owl-mmc: Fix a resource leak in an error handling path and in the + remove function + - mmc: sdhci-sprd: Fix some resource leaks in the remove function + - mmc: usdhi6rol0: Fix a resource leak in the error handling path of the probe + - mmc: renesas_sdhi_internal_dmac: Fix DMA buffer alignment from 8 to + 128-bytes + - ARM: 9046/1: decompressor: Do not clear SCTLR.nTLSMD for ARMv7+ cores + - i2c: qcom-geni: Store DMA mapping data in geni_i2c_dev struct + - amba: Fix resource leak for drivers without .remove + - iommu: Move iotlb_sync_map out from __iommu_map + - iommu: Properly pass gfp_t in _iommu_map() to avoid atomic sleeping + - IB/mlx5: Return appropriate error code instead of ENOMEM + - IB/cm: Avoid a loop when device has 255 ports + - tracepoint: Do not fail unregistering a probe due to memory failure + - rtc: zynqmp: depend on HAS_IOMEM + - perf tools: Fix DSO filtering when not finding a map for a sampled address + - perf vendor events arm64: Fix Ampere eMag event typo + - RDMA/rxe: Fix coding error in rxe_recv.c + - RDMA/rxe: Fix coding error in rxe_rcv_mcast_pkt + - RDMA/rxe: Correct skb on loopback path + - spi: stm32: properly handle 0 byte transfer + - mfd: wm831x-auxadc: Prevent use after free in wm831x_auxadc_read_irq() + - powerpc/pseries/dlpar: handle ibm, configure-connector delay status + - powerpc/8xx: Fix software emulation interrupt + - clk: qcom: gcc-msm8998: Fix Alpha PLL type for all GPLLs + - kunit: tool: fix unit test cleanup handling + - kselftests: dmabuf-heaps: Fix Makefile's inclusion of the kernel's + usr/include dir + - RDMA/hns: Fixed wrong judgments in the goto branch + - RDMA/siw: Fix calculation of tx_valid_cpus size + - RDMA/hns: Fix type of sq_signal_bits + - RDMA/hns: Disable RQ inline by default + - clk: divider: fix initialization with parent_hw + - spi: pxa2xx: Fix the controller numbering for Wildcat Point + - powerpc/uaccess: Avoid might_fault() when user access is enabled + - powerpc/kuap: Restore AMR after replaying soft interrupts + - regulator: qcom-rpmh: fix pm8009 ldo7 + - clk: aspeed: Fix APLL calculate formula from ast2600-A2 + - regulator: bd718x7, bd71828, Fix dvs voltage levels + - nfsd: register pernet ops last, unregister first + - ceph: fix flush_snap logic after putting caps + - RDMA/hns: Fixes missing error code of CMDQ + - RDMA/ucma: Fix use-after-free bug in ucma_create_uevent + - RDMA/rtrs-srv: Fix stack-out-of-bounds + - RDMA/rtrs: Only allow addition of path to an already established session + - RDMA/rtrs-srv: fix memory leak by missing kobject free + - RDMA/rtrs-srv-sysfs: fix missing put_device + - RDMA/rtrs-srv: Do not pass a valid pointer to PTR_ERR() + - Input: sur40 - fix an error code in sur40_probe() + - perf intel-pt: Fix missing CYC processing in PSB + - perf intel-pt: Fix premature IPC + - perf intel-pt: Fix IPC with CYC threshold + - perf test: Fix unaligned access in sample parsing test + - Input: elo - fix an error code in elo_connect() + - sparc64: only select COMPAT_BINFMT_ELF if BINFMT_ELF is set + - sparc: fix led.c driver when PROC_FS is not enabled + - ARM: 9065/1: OABI compat: fix build when EPOLL is not enabled + - misc: eeprom_93xx46: Fix module alias to enable module autoprobe + - phy: rockchip-emmc: emmc_phy_init() always return 0 + - misc: eeprom_93xx46: Add module alias to avoid breaking support for non + device tree users + - PCI: rcar: Always allocate MSI addresses in 32bit space + - soundwire: cadence: fix ACK/NAK handling + - pwm: rockchip: Enable APB clock during register access while probing + - pwm: rockchip: rockchip_pwm_probe(): Remove superfluous clk_unprepare() + - pwm: rockchip: Eliminate potential race condition when probing + - VMCI: Use set_page_dirty_lock() when unregistering guest memory + - PCI: Align checking of syscall user config accessors + - mei: hbm: call mei_set_devstate() on hbm stop response + - drm/msm/dsi: Correct io_start for MSM8994 (20nm PHY) + - drm/msm/mdp5: Fix wait-for-commit for cmd panels + - drm/msm: Fix race of GPU init vs timestamp power management. + - drm/msm: Fix races managing the OOB state for timestamp vs timestamps. + - vfio/iommu_type1: Populate full dirty when detach non-pinned group + - vfio/iommu_type1: Fix some sanity checks in detach group + - ext4: fix potential htree index checksum corruption + - nvmem: core: Fix a resource leak on error in nvmem_add_cells_from_of() + - nvmem: core: skip child nodes not matching binding + - soundwire: bus: use sdw_update_no_pm when initializing a device + - soundwire: export sdw_write/read_no_pm functions + - soundwire: bus: fix confusion on device used by pm_runtime + - misc: fastrpc: fix incorrect usage of dma_map_sgtable + - regmap: sdw: use _no_pm functions in regmap_read/write + - ext: EXT4_KUNIT_TESTS should depend on EXT4_FS instead of selecting it + - mailbox: sprd: correct definition of SPRD_OUTBOX_FIFO_FULL + - PCI: pci-bridge-emul: Fix array overruns, improve safety + - i40e: Fix flow for IPv6 next header (extension header) + - i40e: Add zero-initialization of AQ command structures + - i40e: Fix overwriting flow control settings during driver loading + - i40e: Fix addition of RX filters after enabling FW LLDP agent + - i40e: Fix VFs not created + - Take mmap lock in cacheflush syscall + - i40e: Fix add TC filter for IPv6 + - octeontx2-af: Fix an off by one in rvu_dbg_qsize_write() + - vfio/type1: Use follow_pte() + - ice: report correct max number of TCs + - ice: Account for port VLAN in VF max packet size calculation + - ice: Fix state bits on LLDP mode switch + - ice: update the number of available RSS queues + - net: stmmac: fix CBS idleslope and sendslope calculation + - net/mlx4_core: Add missed mlx4_free_cmd_mailbox() + - vxlan: move debug check after netdev unregister + - wireguard: device: do not generate ICMP for non-IP packets + - wireguard: kconfig: use arm chacha even with no neon + - ocfs2: fix a use after free on error + - mm: memcontrol: fix NR_ANON_THPS accounting in charge moving + - mm/memory.c: fix potential pte_unmap_unlock pte error + - mm/hugetlb: fix potential double free in hugetlb_register_node() error path + - mm/hugetlb: suppress wrong warning info when alloc gigantic page + - mm/compaction: fix misbehaviors of fast_find_migrateblock() + - r8169: fix jumbo packet handling on RTL8168e + - arm64: Add missing ISB after invalidating TLB in __primary_switch + - i2c: brcmstb: Fix brcmstd_send_i2c_cmd condition + - i2c: exynos5: Preserve high speed master code + - mm,thp,shmem: make khugepaged obey tmpfs mount flags + - mm/rmap: fix potential pte_unmap on an not mapped pte + - proc: use kvzalloc for our kernel buffer + - scsi: bnx2fc: Fix Kconfig warning & CNIC build errors + - ide/falconide: Fix module unload + - scsi: sd: Fix Opal support + - blk-settings: align max_sectors on "logical_block_size" boundary + - soundwire: intel: fix possible crash when no device is detected + - ACPI: property: Fix fwnode string properties matching + - ACPI: configfs: add missing check after configfs_register_default_group() + - cpufreq: ACPI: Set cpuinfo.max_freq directly if max boost is known + - HID: logitech-dj: add support for keyboard events in eQUAD step 4 Gaming + - HID: wacom: Ignore attempts to overwrite the touch_max value from HID + - Input: raydium_ts_i2c - do not send zero length + - Input: xpad - add support for PowerA Enhanced Wired Controller for Xbox + Series X|S + - Input: joydev - prevent potential read overflow in ioctl + - Input: i8042 - add ASUS Zenbook Flip to noselftest list + - media: mceusb: Fix potential out-of-bounds shift + - USB: serial: option: update interface mapping for ZTE P685M + - usb: musb: Fix runtime PM race in musb_queue_resume_work + - USB: serial: ftdi_sio: fix FTX sub-integer prescaler + - USB: serial: pl2303: fix line-speed handling on newer chips + - USB: serial: mos7840: fix error code in mos7840_write() + - USB: serial: mos7720: fix error code in mos7720_write() + - phy: lantiq: rcu-usb2: wait after clock enable + - ALSA: fireface: fix to parse sync status register of latter protocol + - ALSA: hda: Add another CometLake-H PCI ID + - ALSA: hda/hdmi: Drop bogus check at closing a stream + - ALSA: hda/realtek: modify EAPD in the ALC886 + - ALSA: hda/realtek: Quirk for HP Spectre x360 14 amp setup + - MIPS: Ingenic: Disable HPTLB for D0 XBurst CPUs too + - MIPS: Support binutils configured with --enable-mips-fix-loongson3-llsc=yes + - MIPS: VDSO: Use CLANG_FLAGS instead of filtering out '--target=' + - Revert "MIPS: Octeon: Remove special handling of + CONFIG_MIPS_ELF_APPENDED_DTB=y" + - Revert "bcache: Kill btree_io_wq" + - bcache: Give btree_io_wq correct semantics again + - bcache: Move journal work to new flush wq + - Revert "drm/amd/display: Update NV1x SR latency values" + - drm/amd/display: Add FPU wrappers to dcn21_validate_bandwidth() + - drm/amd/display: Add vupdate_no_lock interrupts for DCN2.1 + - drm/amdkfd: Fix recursive lock warnings + - drm/amdgpu: Set reference clock to 100Mhz on Renoir (v2) + - drm/nouveau/kms: handle mDP connectors + - drm/modes: Switch to 64bit maths to avoid integer overflow + - drm/sched: Cancel and flush all outstanding jobs before finish. + - drm/panel: kd35t133: allow using non-continuous dsi clock + - drm/rockchip: Require the YTR modifier for AFBC + - ASoC: siu: Fix build error by a wrong const prefix + - selinux: fix inconsistency between inode_getxattr and inode_listsecurity + - erofs: initialized fields can only be observed after bit is set + - tpm_tis: Fix check_locality for correct locality acquisition + - tpm_tis: Clean up locality release + - KEYS: trusted: Fix incorrect handling of tpm_get_random() + - KEYS: trusted: Fix migratable=1 failing + - KEYS: trusted: Reserve TPM for seal and unseal operations + - btrfs: do not cleanup upper nodes in btrfs_backref_cleanup_node + - btrfs: do not warn if we can't find the reloc root when looking up backref + - btrfs: add asserts for deleting backref cache nodes + - btrfs: abort the transaction if we fail to inc ref in btrfs_copy_root + - btrfs: fix reloc root leak with 0 ref reloc roots on recovery + - btrfs: splice remaining dirty_bg's onto the transaction dirty bg list + - btrfs: handle space_info::total_bytes_pinned inside the delayed ref itself + - btrfs: account for new extents being deleted in total_bytes_pinned + - btrfs: fix extent buffer leak on failure to copy root + - drm/i915/gt: Flush before changing register state + - drm/i915/gt: Correct surface base address for renderclear + - crypto: arm64/sha - add missing module aliases + - crypto: aesni - prevent misaligned buffers on the stack + - crypto: michael_mic - fix broken misalignment handling + - crypto: sun4i-ss - checking sg length is not sufficient + - crypto: sun4i-ss - handle BigEndian for cipher + - crypto: sun4i-ss - initialize need_fallback + - soc: samsung: exynos-asv: don't defer early on not-supported SoCs + - soc: samsung: exynos-asv: handle reading revision register error + - seccomp: Add missing return in non-void function + - arm64: ptrace: Fix seccomp of traced syscall -1 (NO_SYSCALL) + - misc: rtsx: init of rts522a add OCP power off when no card is present + - drivers/misc/vmw_vmci: restrict too big queue size in qp_host_alloc_queue + - pstore: Fix typo in compression option name + - dts64: mt7622: fix slow sd card access + - arm64: dts: agilex: fix phy interface bit shift for gmac1 and gmac2 + - staging/mt7621-dma: mtk-hsdma.c->hsdma-mt7621.c + - staging: gdm724x: Fix DMA from stack + - staging: rtl8188eu: Add Edimax EW-7811UN V2 to device table + - media: ipu3-cio2: Fix mbus_code processing in cio2_subdev_set_fmt() + - media: smipcie: fix interrupt handling and IR timeout + - x86/virt: Eat faults on VMXOFF in reboot flows + - x86/reboot: Force all cpus to exit VMX root if VMX is supported + - x86/fault: Fix AMD erratum #91 errata fixup for user code + - x86/entry: Fix instrumentation annotation + - powerpc/prom: Fix "ibm,arch-vec-5-platform-support" scan + - rcu: Pull deferred rcuog wake up to rcu_eqs_enter() callers + - rcu/nocb: Perform deferred wake up before last idle's need_resched() check + - arm64: Extend workaround for erratum 1024718 to all versions of Cortex-A55 + - arm64: kexec_file: fix memory leakage in create_dtb() when fdt_open_into() + fails + - arm64: uprobe: Return EOPNOTSUPP for AARCH32 instruction probing + - arm64 module: set plt* section addresses to 0x0 + - arm64: spectre: Prevent lockdep splat on v4 mitigation enable path + - riscv: Disable KSAN_SANITIZE for vDSO + - watchdog: qcom: Remove incorrect usage of QCOM_WDT_ENABLE_IRQ + - watchdog: mei_wdt: request stop on unregister + - coresight: etm4x: Handle accesses to TRCSTALLCTLR + - mtd: spi-nor: sfdp: Fix last erase region marking + - mtd: spi-nor: sfdp: Fix wrong erase type bitmask for overlaid region + - mtd: spi-nor: core: Fix erase type discovery for overlaid region + - mtd: spi-nor: core: Add erase size check for erase command initialization + - mtd: spi-nor: hisi-sfc: Put child node np on error path + - fs/affs: release old buffer head on error path + - seq_file: document how per-entry resources are managed. + - x86: fix seq_file iteration for pat/memtype.c + - mm: memcontrol: fix swap undercounting in cgroup2 + - hugetlb: fix update_and_free_page contig page struct assumption + - hugetlb: fix copy_huge_page_from_user contig page struct assumption + - mm/vmscan: restore zone_reclaim_mode ABI + - mm, compaction: make fast_isolate_freepages() stay within zone + - nvmem: qcom-spmi-sdam: Fix uninitialized pdev pointer + - module: Ignore _GLOBAL_OFFSET_TABLE_ when warning for undefined symbols + - mmc: sdhci-esdhc-imx: fix kernel panic when remove module + - powerpc/32s: Add missing call to kuep_lock on syscall entry + - spmi: spmi-pmic-arb: Fix hw_irq overflow + - mei: me: emmitsburg workstation DID + - mei: me: add adler lake point S DID + - mei: me: add adler lake point LP DID + - gpio: pcf857x: Fix missing first interrupt + - mfd: gateworks-gsc: Fix interrupt type + - printk: fix deadlock when kernel panic + - exfat: fix shift-out-of-bounds in exfat_fill_super() + - zonefs: Fix file size of zones in full condition + - [Config] updateconfigs for KCMP + - kcmp: Support selection of SYS_kcmp without CHECKPOINT_RESTORE + - thermal: cpufreq_cooling: freq_qos_update_request() returns < 0 on error + - cpufreq: intel_pstate: Change intel_pstate_get_hwp_max() argument + - cpufreq: intel_pstate: Get per-CPU max freq via MSR_HWP_CAPABILITIES if + available + - proc: don't allow async path resolution of /proc/thread-self components + - s390/vtime: fix inline assembly clobber list + - virtio/s390: implement virtio-ccw revision 2 correctly + - um: mm: check more comprehensively for stub changes + - um: defer killing userspace on page table update failures + - irqchip/loongson-pch-msi: Use bitmap_zalloc() to allocate bitmap + - f2fs: fix out-of-repair __setattr_copy() + - f2fs: enforce the immutable flag on open files + - f2fs: flush data when enabling checkpoint back + - sparc32: fix a user-triggerable oops in clear_user() + - spi: fsl: invert spisel_boot signal on MPC8309 + - spi: spi-synquacer: fix set_cs handling + - gfs2: fix glock confusion in function signal_our_withdraw + - gfs2: Don't skip dlm unlock if glock has an lvb + - gfs2: Lock imbalance on error path in gfs2_recover_one + - gfs2: Recursive gfs2_quota_hold in gfs2_iomap_end + - dm: fix deadlock when swapping to encrypted device + - dm writecache: fix performance degradation in ssd mode + - dm writecache: return the exact table values that were set + - dm writecache: fix writing beyond end of underlying device when shrinking + - dm era: Recover committed writeset after crash + - dm era: Update in-core bitset after committing the metadata + - dm era: Verify the data block size hasn't changed + - dm era: Fix bitset memory leaks + - dm era: Use correct value size in equality function of writeset tree + - dm era: Reinitialize bitset cache before digesting a new writeset + - dm era: only resize metadata in preresume + - drm/i915: Reject 446-480MHz HDMI clock on GLK + - kgdb: fix to kill breakpoints on initmem after boot + - wireguard: selftests: test multiple parallel streams + - wireguard: queueing: get rid of per-peer ring buffers + - net: sched: fix police ext initialization + - net: qrtr: Fix memory leak in qrtr_tun_open + - ARM: dts: aspeed: Add LCLK to lpc-snoop + - ipv6: icmp6: avoid indirect call for icmpv6_send() + * Mute/Mic-mute LEDs are not work on HP 850/840/440 G8 Laptops (LP: #1920030) + - ALSA: hda/realtek: fix mute/micmute LEDs for HP 840 G8 + - ALSA: hda/realtek: fix mute/micmute LEDs for HP 440 G8 + - ALSA: hda/realtek: fix mute/micmute LEDs for HP 850 G8 + * Groovy update: upstream stable patchset 2021-03-19 (LP: #1920571) + - af_key: relax availability checks for skb size calculation + - regulator: core: avoid regulator_resolve_supply() race condition + - ASoC: wm_adsp: Fix control name parsing for multi-fw + - mac80211: 160MHz with extended NSS BW in CSA + - ASoC: Intel: Skylake: Zero snd_ctl_elem_value + - chtls: Fix potential resource leak + - pNFS/NFSv4: Try to return invalid layout in pnfs_layout_process() + - pNFS/NFSv4: Improve rejection of out-of-order layouts + - ALSA: hda: intel-dsp-config: add PCI id for TGL-H + - ASoC: ak4458: correct reset polarity + - ASoC: Intel: sof_sdw: set proper flags for Dell TGL-H SKU 0A5E + - iwlwifi: mvm: skip power command when unbinding vif during CSA + - iwlwifi: mvm: take mutex for calling iwl_mvm_get_sync_time() + - iwlwifi: pcie: add a NULL check in iwl_pcie_txq_unmap + - iwlwifi: pcie: fix context info memory leak + - iwlwifi: mvm: invalidate IDs of internal stations at mvm start + - iwlwifi: pcie: add rules to match Qu with Hr2 + - iwlwifi: mvm: guard against device removal in reprobe + - SUNRPC: Move simple_get_bytes and simple_get_netobj into private header + - SUNRPC: Handle 0 length opaque XDR object data properly + - i2c: mediatek: Move suspend and resume handling to NOIRQ phase + - blk-cgroup: Use cond_resched() when destroy blkgs + - regulator: Fix lockdep warning resolving supplies + - bpf: Fix verifier jmp32 pruning decision logic + - bpf: Fix verifier jsgt branch analysis on max bound + - drm/i915: Fix ICL MG PHY vswing handling + - drm/i915: Skip vswing programming for TBT + - nilfs2: make splice write available again + - squashfs: avoid out of bounds writes in decompressors + - squashfs: add more sanity checks in id lookup + - squashfs: add more sanity checks in inode lookup + - squashfs: add more sanity checks in xattr id lookup + - gpio: mxs: GPIO_MXS should not default to y unconditionally + - gpio: ep93xx: fix BUG_ON port F usage + - gpio: ep93xx: Fix single irqchip with multi gpiochips + - tracing: Do not count ftrace events in top level enable output + - tracing: Check length before giving out the filter buffer + - drm/i915: Fix overlay frontbuffer tracking + - arm/xen: Don't probe xenbus as part of an early initcall + - cgroup: fix psi monitor for root cgroup + - drm/i915/tgl+: Make sure TypeC FIA is powered up when initializing it + - drm/dp_mst: Don't report ports connected if nothing is attached to them + - dmaengine: move channel device_node deletion to driver + - soc: ti: omap-prm: Fix boot time errors for rst_map_012 bits 0 and 1 + - arm64: dts: rockchip: Fix PCIe DT properties on rk3399 + - arm64: dts: qcom: sdm845: Reserve LPASS clocks in gcc + - ARM: OMAP2+: Fix suspcious RCU usage splats for omap_enter_idle_coupled + - arm64: dts: rockchip: remove interrupt-names property from rk3399 vdec node + - platform/x86: hp-wmi: Disable tablet-mode reporting by default + - ovl: perform vfs_getxattr() with mounter creds + - cap: fix conversions on getxattr + - ovl: skip getxattr of security labels + - scsi: lpfc: Fix EEH encountering oops with NVMe traffic + - x86/split_lock: Enable the split lock feature on Sapphire Rapids and Alder + Lake CPUs + - x86/split_lock: Enable the split lock feature on another Alder Lake CPU + - nvme-pci: ignore the subsysem NQN on Phison E16 + - drm/amd/display: Fix DPCD translation for LTTPR AUX_RD_INTERVAL + - drm/amd/display: Add more Clock Sources to DCN2.1 + - drm/amd/display: Release DSC before acquiring + - drm/amd/display: Fix dc_sink kref count in emulated_link_detect + - drm/amd/display: Free atomic state after drm_atomic_commit + - drm/amd/display: Decrement refcount of dc_sink before reassignment + - riscv: virt_addr_valid must check the address belongs to linear mapping + - ARM: dts: lpc32xx: Revert set default clock rate of HCLK PLL + - kallsyms: fix nonconverging kallsyms table with lld + - ARM: ensure the signal page contains defined contents + - ARM: kexec: fix oops after TLB are invalidated + - ubsan: implement __ubsan_handle_alignment_assumption + - x86/efi: Remove EFI PGD build time checks + - lkdtm: don't move ctors to .rodata + - cgroup-v1: add disabled controller check in cgroup1_parse_param() + - mt76: dma: fix a possible memory leak in mt76_add_fragment() + - drm/vc4: hvs: Fix buffer overflow with the dlist handling + - bpf: Unbreak BPF_PROG_TYPE_KPROBE when kprobe is called via do_int3 + - bpf: Check for integer overflow when using roundup_pow_of_two() + - netfilter: xt_recent: Fix attempt to update deleted entry + - netfilter: nftables: fix possible UAF over chains from packet path in netns + - netfilter: flowtable: fix tcp and udp header checksum update + - xen/netback: avoid race in xenvif_rx_ring_slots_available() + - net: hdlc_x25: Return meaningful error code in x25_open + - net: ipa: set error code in gsi_channel_setup() + - hv_netvsc: Reset the RSC count if NVSP_STAT_FAIL in netvsc_receive() + - net: enetc: initialize the RFS and RSS memories + - selftests: txtimestamp: fix compilation issue + - net: stmmac: set TxQ mode back to DCB after disabling CBS + - ibmvnic: Clear failover_pending if unable to schedule + - netfilter: conntrack: skip identical origin tuple in same zone only + - scsi: scsi_debug: Fix a memory leak + - x86/build: Disable CET instrumentation in the kernel for 32-bit too + - net: hns3: add a check for queue_id in hclge_reset_vf_queue() + - net: hns3: add a check for tqp_index in hclge_get_ring_chain_from_mbx() + - net: hns3: add a check for index in hclge_get_rss_key() + - firmware_loader: align .builtin_fw to 8 + - drm/sun4i: tcon: set sync polarity for tcon1 channel + - drm/sun4i: dw-hdmi: always set clock rate + - drm/sun4i: Fix H6 HDMI PHY configuration + - drm/sun4i: dw-hdmi: Fix max. frequency for H6 + - clk: sunxi-ng: mp: fix parent rate change flag check + - i2c: stm32f7: fix configuration of the digital filter + - h8300: fix PREEMPTION build, TI_PRE_COUNT undefined + - scripts: set proper OpenSSL include dir also for sign-file + - rxrpc: Fix clearance of Tx/Rx ring when releasing a call + - udp: fix skb_copy_and_csum_datagram with odd segment sizes + - net: dsa: call teardown method on probe failure + - cpufreq: ACPI: Extend frequency tables to cover boost frequencies + - cpufreq: ACPI: Update arch scale-invariance max perf ratio if CPPC is not + there + - net: gro: do not keep too many GRO packets in napi->rx_list + - net: fix iteration for sctp transport seq_files + - net/vmw_vsock: fix NULL pointer dereference + - net/vmw_vsock: improve locking in vsock_connect_timeout() + - net: watchdog: hold device global xmit lock during tx disable + - bridge: mrp: Fix the usage of br_mrp_port_switchdev_set_state + - switchdev: mrp: Remove SWITCHDEV_ATTR_ID_MRP_PORT_STAT + - vsock/virtio: update credit only if socket is not closed + - vsock: fix locking in vsock_shutdown() + - net/rds: restrict iovecs length for RDS_CMSG_RDMA_ARGS + - net/qrtr: restrict user-controlled length in qrtr_tun_write_iter() + - ovl: expand warning in ovl_d_real() + - kcov, usb: only collect coverage from __usb_hcd_giveback_urb in softirq + - usb: dwc3: ulpi: fix checkpatch warning + - net: qrtr: Fix port ID for control messages + - mptcp: skip to next candidate if subflow has unacked data + - mt76: mt7915: fix endian issues + - mt76: mt7615: fix rdd mcu cmd endianness + - net: sched: incorrect Kconfig dependencies on Netfilter modules + - net: openvswitch: fix TTL decrement exception action execution + - net: bridge: Fix a warning when del bridge sysfs + - net: fix proc_fs init handling in af_packet and tls + - Xen/x86: don't bail early from clear_foreign_p2m_mapping() + - Xen/x86: also check kernel mapping in set_foreign_p2m_mapping() + - Xen/gntdev: correct dev_bus_addr handling in gntdev_map_grant_pages() + - Xen/gntdev: correct error checking in gntdev_map_grant_pages() + - xen/arm: don't ignore return errors from set_phys_to_machine + - xen-blkback: don't "handle" error by BUG() + - xen-netback: don't "handle" error by BUG() + - xen-scsiback: don't "handle" error by BUG() + - xen-blkback: fix error handling in xen_blkbk_map() + - tty: protect tty_write from odd low-level tty disciplines + - btrfs: fix backport of 2175bf57dc952 in 5.10.13 + - media: pwc: Use correct device for DMA + - HID: make arrays usage and value to be the same + - RDMA: Lift ibdev_to_node from rds to common code + - nvme-rdma: Use ibdev_to_node instead of dereferencing ->dma_device + - USB: quirks: sort quirk entries + - usb: quirks: add quirk to start video capture on ELMO L-12F document camera + reliable + - ceph: downgrade warning from mdsmap decode to debug + - ntfs: check for valid standard information attribute + - Bluetooth: btusb: Some Qualcomm Bluetooth adapters stop working + - arm64: tegra: Add power-domain for Tegra210 HDA + - hwmon: (dell-smm) Add XPS 15 L502X to fan control blacklist + - mm: unexport follow_pte_pmd + - mm: simplify follow_pte{,pmd} + - KVM: do not assume PTE is writable after follow_pfn + - mm: provide a saner PTE walking API for modules + - KVM: Use kvm_pfn_t for local PFN variable in hva_to_pfn_remapped() + - NET: usb: qmi_wwan: Adding support for Cinterion MV31 + - cxgb4: Add new T6 PCI device id 0x6092 + - kbuild: fix CONFIG_TRIM_UNUSED_KSYMS build for ppc64 + - scripts/recordmcount.pl: support big endian for ARCH sh + * Groovy update: upstream stable patchset 2021-03-12 (LP: #1918987) + - net: fec: put child node on error path + - net: octeontx2: Make sure the buffer is 128 byte aligned + - stmmac: intel: Configure EHL PSE0 GbE and PSE1 GbE to 32 bits DMA addressing + - net: dsa: bcm_sf2: put device node before return + - net: switchdev: don't set port_obj_info->handled true when -EOPNOTSUPP + - ibmvnic: Ensure that CRQ entry read are correctly ordered + - iommu/io-pgtable-arm: Support coherency for Mali LPAE + - drm/panfrost: Support cache-coherent integrations + - arm64: dts: meson: Describe G12b GPU as coherent + - arm64: Fix kernel address detection of __is_lm_address() + - arm64: Do not pass tagged addresses to __is_lm_address() + - ARM: 9025/1: Kconfig: CPU_BIG_ENDIAN depends on !LD_IS_LLD + - iommu/vt-d: Do not use flush-queue when caching-mode is on + - phy: cpcap-usb: Fix warning for missing regulator_disable + - tools/power/x86/intel-speed-select: Set scaling_max_freq to base_frequency + - tools/power/x86/intel-speed-select: Set higher of cpuinfo_max_freq or + base_frequency + - platform/x86: touchscreen_dmi: Add swap-x-y quirk for Goodix touchscreen on + Estar Beauty HD tablet + - platform/x86: intel-vbtn: Support for tablet mode on Dell Inspiron 7352 + - locking/lockdep: Avoid noinstr warning for DEBUG_LOCKDEP + - x86: __always_inline __{rd,wr}msr() + - scsi: scsi_transport_srp: Don't block target in failfast state + - scsi: libfc: Avoid invoking response handler twice if ep is already + completed + - scsi: fnic: Fix memleak in vnic_dev_init_devcmd2 + - ALSA: hda - add Intel DG1 PCI and HDMI ids + - ALSA: hda: Add Alderlake-S PCI ID and HDMI codec vid + - ALSA: hda: Add AlderLake-P PCI ID and HDMI codec vid + - objtool: Don't add empty symbols to the rbtree + - mac80211: fix incorrect strlen of .write in debugfs + - mac80211: fix fast-rx encryption check + - scsi: ibmvfc: Set default timeout to avoid crash during migration + - i2c: tegra: Create i2c_writesl_vi() to use with VI I2C for filling TX FIFO + - udf: fix the problem that the disc content is not displayed + - nvme: check the PRINFO bit before deciding the host buffer length + - nvme-rdma: avoid request double completion for concurrent nvme_rdma_timeout + - nvme-tcp: avoid request double completion for concurrent nvme_tcp_timeout + - nvme-pci: allow use of cmb on v1.4 controllers + - nvmet: set right status on error in id-ns handler + - platform/x86: thinkpad_acpi: Add P53/73 firmware to fan_quirk_table for dual + fan control + - selftests/powerpc: Only test lwm/stmw on big endian + - drm/amd/display: Update dram_clock_change_latency for DCN2.1 + - drm/amd/display: Change function decide_dp_link_settings to avoid infinite + looping + - drm/amd/display: Use hardware sequencer functions for PG control + - objtool: Don't fail the kernel build on fatal errors + - x86/cpu: Add Lakefield, Alder Lake and Rocket Lake models to the to Intel + CPU family + - x86/cpu: Add another Alder Lake CPU to the Intel family + - kthread: Extract KTHREAD_IS_PER_CPU + - workqueue: Restrict affinity change to rescuer + - Revert "Revert "block: end bio with BLK_STS_AGAIN in case of non-mq devs and + REQ_NOWAIT"" + - ACPI: thermal: Do not call acpi_thermal_check() directly + - USB: serial: cp210x: add pid/vid for WSDA-200-USB + - USB: serial: cp210x: add new VID/PID for supporting Teraoka AD2000 + - USB: serial: option: Adding support for Cinterion MV31 + - usb: host: xhci-plat: add priv quirk for skip PHY initialization + - usb: host: xhci: mvebu: make USB 3.0 PHY optional for Armada 3720 + - USB: gadget: legacy: fix an error code in eth_bind() + - usb: gadget: aspeed: add missing of_node_put + - USB: usblp: don't call usb_set_interface if there's a single alt + - usb: renesas_usbhs: Clear pipe running flag in usbhs_pkt_pop() + - usb: dwc2: Fix endpoint direction check in ep_from_windex + - usb: dwc3: fix clock issue during resume in OTG mode + - usb: xhci-mtk: fix unreleased bandwidth data + - usb: xhci-mtk: skip dropping bandwidth of unchecked endpoints + - usb: xhci-mtk: break loop when find the endpoint to drop + - ARM: OMAP1: OSK: fix ohci-omap breakage + - arm64: dts: qcom: c630: keep both touchpad devices enabled + - arm64: dts: amlogic: meson-g12: Set FL-adj property value + - arm64: dts: rockchip: fix vopl iommu irq on px30 + - arm64: dts: rockchip: Use only supported PCIe link speed on Pinebook Pro + - ARM: dts: stm32: Connect card-detect signal on DHCOM + - ARM: dts: stm32: Disable WP on DHCOM uSD slot + - um: virtio: free vu_dev only with the contained struct device + - arm64: dts: meson: switch TFLASH_VDD_EN pin to open drain on Odroid-C4 + - r8169: work around RTL8125 UDP hw bug + - rxrpc: Fix deadlock around release of dst cached on udp tunnel + - arm64: dts: ls1046a: fix dcfg address range + - SUNRPC: Fix NFS READs that start at non-page-aligned offsets + - igc: set the default return value to -IGC_ERR_NVM in igc_write_nvm_srwr + - igc: check return value of ret_val in igc_config_fc_after_link_up + - i40e: Revert "i40e: don't report link up for a VF who hasn't enabled queues" + - ibmvnic: device remove has higher precedence over reset + - net/mlx5: Fix leak upon failure of rule creation + - net/mlx5e: Update max_opened_tc also when channels are closed + - net/mlx5e: Release skb in case of failure in tc update skb + - net: lapb: Copy the skb before sending a packet + - net: mvpp2: TCAM entry enable should be written after SRAM data + - r8169: fix WoL on shutdown if CONFIG_DEBUG_SHIRQ is set + - net: ipa: pass correct dma_handle to dma_free_coherent() + - ARM: dts: sun7i: a20: bananapro: Fix ethernet phy-mode + - nvmet-tcp: fix out-of-bounds access when receiving multiple h2cdata PDUs + - memblock: do not start bottom-up allocations with kernel_end + - ovl: fix dentry leak in ovl_get_redirect + - mac80211: fix station rate table updates on assoc + - gpiolib: free device name on error path to fix kmemleak + - fgraph: Initialize tracing_graph_pause at task creation + - tracing/kprobe: Fix to support kretprobe events on unloaded modules + - kretprobe: Avoid re-registration of the same kretprobe earlier + - tracing: Use pause-on-trace with the latency tracers + - libnvdimm/namespace: Fix visibility of namespace resource attribute + - libnvdimm/dimm: Avoid race between probe and available_slots_show() + - genirq: Prevent [devm_]irq_alloc_desc from returning irq 0 + - genirq/msi: Activate Multi-MSI early when MSI_FLAG_ACTIVATE_EARLY is set + - scripts: use pkg-config to locate libcrypto + - xhci: fix bounce buffer usage for non-sg list case + - RISC-V: Define MAXPHYSMEM_1GB only for RV32 + - cifs: report error instead of invalid when revalidating a dentry fails + - iommu: Check dev->iommu in dev_iommu_priv_get() before dereferencing it + - smb3: Fix out-of-bounds bug in SMB2_negotiate() + - smb3: fix crediting for compounding when only one request in flight + - mmc: sdhci-pltfm: Fix linking err for sdhci-brcmstb + - mmc: core: Limit retries when analyse of SDIO tuples fails + - Fix unsynchronized access to sev members through svm_register_enc_region + - drm/i915/display: Prevent double YUV range correction on HDR planes + - drm/i915: Extract intel_ddi_power_up_lanes() + - drm/i915: Power up combo PHY lanes for for HDMI as well + - drm/amd/display: Revert "Fix EDID parsing after resume from suspend" + - nvme-pci: avoid the deepest sleep state on Kingston A2000 SSDs + - KVM: SVM: Treat SVM as unsupported when running as an SEV guest + - KVM: x86: Allow guests to see MSR_IA32_TSX_CTRL even if tsx=off + - KVM: x86: fix CPUID entries returned by KVM_GET_CPUID2 ioctl + - KVM: x86: Update emulator context mode if SYSENTER xfers to 64-bit mode + - DTS: ARM: gta04: remove legacy spi-cs-high to make display work again + - ARM: dts; gta04: SPI panel chip select is active low + - ARM: footbridge: fix dc21285 PCI configuration accessors + - mm: hugetlbfs: fix cannot migrate the fallocated HugeTLB page + - mm: hugetlb: fix a race between freeing and dissolving the page + - mm: hugetlb: fix a race between isolating and freeing page + - mm: hugetlb: remove VM_BUG_ON_PAGE from page_huge_active + - mm, compaction: move high_pfn to the for loop scope + - mm: thp: fix MADV_REMOVE deadlock on shmem THP + - mm/filemap: add missing mem_cgroup_uncharge() to + __add_to_page_cache_locked() + - x86/build: Disable CET instrumentation in the kernel + - x86/debug: Fix DR6 handling + - x86/debug: Prevent data breakpoints on __per_cpu_offset + - x86/debug: Prevent data breakpoints on cpu_dr7 + - x86/apic: Add extra serialization for non-serializing MSRs + - Input: goodix - add support for Goodix GT9286 chip + - Input: xpad - sync supported devices with fork on GitHub + - Input: ili210x - implement pressure reporting for ILI251x + - md: Set prev_flush_start and flush_bio in an atomic way + - neighbour: Prevent a dead entry from updating gc_list + - net: ip_tunnel: fix mtu calculation + - udp: ipv4: manipulate network header of NATed UDP GRO fraglist + - net: dsa: mv88e6xxx: override existent unicast portvec in port_fdb_add + - net: sched: replaced invalid qdisc tree flush helper in qdisc_replace + - iwlwifi: mvm: don't send RFH_QUEUE_CONFIG_CMD with no queues + * power off stress test will hang on the TGL machines (LP: #1919930) + - [Config] set SND_SOC_SOF_HDA_ALWAYS_ENABLE_DMI_L1 to n + * eeh-basic.sh from powerpc in ubuntu_kernel_selftests failed with unexpected + operator on F-5.8 (LP: #1909428) + - selftests/powerpc: Make the test check in eeh-basic.sh posix compliant + + [ Ubuntu: 5.8.0-1029.31 ] + + * overlayfs calls vfs_setxattr without cap_convert_nscap + - vfs: move cap_convert_nscap() call into vfs_setxattr() + * CVE-2021-3492 + - SAUCE: shiftfs: free allocated memory in shiftfs_btrfs_ioctl_fd_replace() + error paths + - SAUCE: shiftfs: handle copy_to_user() return values correctly + * CVE-2021-29154 + - SAUCE: bpf, x86: Validate computation of branch displacements for x86-64 + - SAUCE: bpf, x86: Validate computation of branch displacements for x86-32 + + -- Tim Gardner Thu, 22 Apr 2021 13:58:09 -0600 + +linux-azure-5.8 (5.8.0-1027.29~20.04.2) focal; urgency=medium + + * focal/linux-azure-5.8: 5.8.0-1027.29~20.04.2 -proposed tracker + (LP: #1921746) + + * Packaging resync (LP: #1786013) + - [Packaging] update update.conf + - [Packaging] update variants + + * Miscellaneous Ubuntu changes + - [Debian] add packaging for linux-azure-5.8 + - [Debian] change package to focal:linux-azure-5.8 + - [Debian] set proper getabis for linux-azure-5.8 + - [Debian] add copy-files helper + - [Debian] add local-mangle helper + - [Debian] adjust indentation in local-mangle to match groovy:linux-azure + - [Config] do not enforce DMESG_RESTRICT + - [Config] disable CONFIG_DEBUG_INFO_BTF + - [Debian] override DMESG_RESTRICT annotation from debian + - [Debian] override DEBUG_INFO_BTF annotation from debian + + [ Ubuntu: 5.8.0-1027.29 ] + + * groovy/linux-azure: 5.8.0-1027.29 -proposed tracker (LP: #1921045) + * Enforce CONFIG_DRM_BOCHS=m (LP: #1916290) + - [Config] azure: Keep CONFIG_DRM_BOCHS disabled + * linux-azure: Install PMEM modules by default (LP: #1921411) + - [Packaging] azure: Move PMEM related modules to linux-modules + * groovy/linux: 5.8.0-49.55 -proposed tracker (LP: #1921053) + * selftests: bpf verifier fails after sanitize_ptr_alu fixes (LP: #1920995) + - bpf: Simplify alu_limit masking for pointer arithmetic + - bpf: Add sanity check for upper ptr_limit + - bpf, selftests: Fix up some test_verifier cases for unprivileged + * Packaging resync (LP: #1786013) + - update dkms package versions + * improper memcg accounting causes NULL pointer derefs (LP: #1918668) + - SAUCE: Revert "mm: memcg/slab: optimize objcg stock draining" + * kernel: Enable CONFIG_BPF_LSM on Ubuntu (LP: #1905975) + - [Config] Enable CONFIG_BPF_LSM + * Groovy update: upstream stable patchset 2021-03-10 (LP: #1918516) + - gpio: mvebu: fix pwm .get_state period calculation + - HID: wacom: Correct NULL dereference on AES pen proximity + - media: v4l2-subdev.h: BIT() is not available in userspace + - RDMA/vmw_pvrdma: Fix network_hdr_type reported in WC + - kernel/io_uring: cancel io_uring before task works + - io_uring: dont kill fasync under completion_lock + - objtool: Don't fail on missing symbol table + - mm/page_alloc: add a missing mm_page_alloc_zone_locked() tracepoint + - mm: fix a race on nr_swap_pages + - tools: Factor HOSTCC, HOSTLD, HOSTAR definitions + - iwlwifi: provide gso_type to GSO packets + - tty: avoid using vfs_iocb_iter_write() for redirected console writes + - ACPI: sysfs: Prefer "compatible" modalias + - kernel: kexec: remove the lock operation of system_transition_mutex + - ALSA: hda/realtek: Enable headset of ASUS B1400CEPE with ALC256 + - ALSA: hda/via: Apply the workaround generically for Clevo machines + - parisc: Enable -mlong-calls gcc option by default when !CONFIG_MODULES + - media: cec: add stm32 driver + - media: hantro: Fix reset_raw_fmt initialization + - media: rc: fix timeout handling after switch to microsecond durations + - media: rc: ite-cir: fix min_timeout calculation + - media: rc: ensure that uevent can be read directly after rc device register + - ARM: dts: tbs2910: rename MMC node aliases + - ARM: dts: ux500: Reserve memory carveouts + - ARM: dts: imx6qdl-gw52xx: fix duplicate regulator naming + - wext: fix NULL-ptr-dereference with cfg80211's lack of commit() + - ASoC: AMD Renoir - refine DMI entries for some Lenovo products + - drm/i915: Always flush the active worker before returning from the wait + - drm/i915/gt: Always try to reserve GGTT address 0x0 + - drivers/nouveau/kms/nv50-: Reject format modifiers for cursor planes + - net: usb: qmi_wwan: added support for Thales Cinterion PLSx3 modem family + - s390: uv: Fix sysfs max number of VCPUs reporting + - s390/vfio-ap: No need to disable IRQ after queue reset + - PM: hibernate: flush swap writer after marking + - x86/entry: Emit a symbol for register restoring thunk + - efi/apple-properties: Reinstate support for boolean properties + - drivers: soc: atmel: Avoid calling at91_soc_init on non AT91 SoCs + - drivers: soc: atmel: add null entry at the end of at91_soc_allowed_list[] + - btrfs: fix possible free space tree corruption with online conversion + - KVM: x86/pmu: Fix HW_REF_CPU_CYCLES event pseudo-encoding in + intel_arch_events[] + - KVM: x86/pmu: Fix UBSAN shift-out-of-bounds warning in intel_pmu_refresh() + - KVM: nVMX: Sync unsync'd vmcs02 state to vmcs12 on migration + - KVM: x86: get smi pending status correctly + - KVM: Forbid the use of tagged userspace addresses for memslots + - xen: Fix XenStore initialisation for XS_LOCAL + - leds: trigger: fix potential deadlock with libata + - arm64: dts: broadcom: Fix USB DMA address translation for Stingray + - mt7601u: fix kernel crash unplugging the device + - mt7601u: fix rx buffer refcounting + - iwlwifi: Fix IWL_SUBDEVICE_NO_160 macro to use the correct bit. + - drm/i915/gt: Clear CACHE_MODE prior to clearing residuals + - drm/i915/pmu: Don't grab wakeref when enabling events + - net/mlx5e: Fix IPSEC stats + - ARM: dts: imx6qdl-kontron-samx6i: fix pwms for lcd-backlight + - drm/nouveau/svm: fail NOUVEAU_SVM_INIT ioctl on unsupported devices + - drm/i915: Check for all subplatform bits + - drm/i915/selftest: Fix potential memory leak + - uapi: fix big endian definition of ipv6_rpl_sr_hdr + - KVM: Documentation: Fix spec for KVM_CAP_ENABLE_CAP_VM + - tee: optee: replace might_sleep with cond_resched + - xen-blkfront: allow discard-* nodes to be optional + - clk: mmp2: fix build without CONFIG_PM + - clk: qcom: gcc-sm250: Use floor ops for sdcc clks + - ARM: imx: build suspend-imx6.S with arm instruction set + - ARM: zImage: atags_to_fdt: Fix node names on added root nodes + - netfilter: nft_dynset: add timeout extension to template + - Revert "RDMA/mlx5: Fix devlink deadlock on net namespace deletion" + - xfrm: Fix oops in xfrm_replay_advance_bmp + - xfrm: fix disable_xfrm sysctl when used on xfrm interfaces + - xfrm: Fix wraparound in xfrm_policy_addr_delta() + - arm64: dts: ls1028a: fix the offset of the reset register + - ARM: dts: imx6qdl-kontron-samx6i: fix i2c_lcd/cam default status + - ARM: dts: imx6qdl-sr-som: fix some cubox-i platforms + - arm64: dts: imx8mp: Correct the gpio ranges of gpio3 + - firmware: imx: select SOC_BUS to fix firmware build + - RDMA/cxgb4: Fix the reported max_recv_sge value + - ASoC: Intel: Skylake: skl-topology: Fix OOPs ib skl_tplg_complete + - pNFS/NFSv4: Fix a layout segment leak in pnfs_layout_process() + - pNFS/NFSv4: Update the layout barrier when we schedule a layoutreturn + - iwlwifi: pcie: set LTR on more devices + - iwlwifi: pcie: use jiffies for memory read spin time limit + - iwlwifi: pcie: reschedule in long-running memory reads + - mac80211: pause TX while changing interface type + - ice: fix FDir IPv6 flexbyte + - ice: Implement flow for IPv6 next header (extension header) + - ice: update dev_addr in ice_set_mac_address even if HW filter exists + - ice: Don't allow more channels than LAN MSI-X available + - ice: Fix MSI-X vector fallback logic + - i40e: acquire VSI pointer only after VF is initialized + - igc: fix link speed advertising + - net/mlx5: Fix memory leak on flow table creation error flow + - net/mlx5e: E-switch, Fix rate calculation for overflow + - net/mlx5e: free page before return + - net/mlx5e: Reduce tc unsupported key print level + - net/mlx5e: Disable hw-tc-offload when MLX5_CLS_ACT config is disabled + - net/mlx5e: Fix CT rule + encap slow path offload and deletion + - net/mlx5e: Correctly handle changing the number of queues when the interface + is down + - net/mlx5e: Revert parameters on errors when changing trust state without + reset + - net/mlx5e: Revert parameters on errors when changing MTU and LRO state + without reset + - can: dev: prevent potential information leak in can_fill_info() + - ACPI/IORT: Do not blindly trust DMA masks from firmware + - iommu/amd: Use IVHD EFR for early initialization of IOMMU features + - iommu/vt-d: Correctly check addr alignment in qi_flush_dev_iotlb_pasid() + - nvme-multipath: Early exit if no path is available + - selftests: forwarding: Specify interface when invoking mausezahn + - rxrpc: Fix memory leak in rxrpc_lookup_local + - NFC: fix resource leak when target index is invalid + - NFC: fix possible resource leak + - ASoC: topology: Properly unregister DAI on removal + - ASoC: topology: Fix memory corruption in soc_tplg_denum_create_values() + - team: protect features update by RCU to avoid deadlock + - tcp: make TCP_USER_TIMEOUT accurate for zero window probes + - tcp: fix TLP timer not set when CA_STATE changes from DISORDER to OPEN + - ICMPv6: Add ICMPv6 Parameter Problem, code 3 definition + - IPv6: reply ICMP error if the first fragment don't include all headers + - iommu/vt-d: Gracefully handle DMAR units with no supported address widths + * xfrm_policy.sh in net from ubuntu_kernel_selftests passed with failed sub- + cases (LP: #1909647) + - selftests: xfrm: fix test return value override issue in xfrm_policy.sh + * CVE-2021-3347 + - futex: Remove put_futex_key() + - futex: Remove needless goto's + - futex: Replace pointless printk in fixup_owner() + - futex: Ensure the correct return value from futex_lock_pi() + - futex: Provide and use pi_state_update_owner() + - rtmutex: Remove unused argument from rt_mutex_proxy_unlock() + - futex: Use pi_state_update_owner() in put_pi_state() + - futex: Simplify fixup_pi_state_owner() + - futex: Handle faults correctly for PI futexes + * CVE-2021-3348 + - nbd: freeze the queue while we're adding connections + * [Regression] ubuntu_bpf failed to build on Groovy (LP: #1917609) + - SAUCE: partially revert "bpf: Zero-fill re-used per-cpu map element" + * alsa/hda: the hdmi audio dosn't work on TGL machines (LP: #1917829) + - ALSA: hda/hdmi: let new platforms assign the pcm slot dynamically + * Groovy update: upstream stable patchset 2021-03-05 (LP: #1917964) + - mtd: rawnand: gpmi: fix dst bit offset when extracting raw payload + - i2c: bpmp-tegra: Ignore unknown I2C_M flags + - platform/x86: i2c-multi-instantiate: Don't create platform device for + INT3515 ACPI nodes + - platform/x86: ideapad-laptop: Disable touchpad_switch for ELAN0634 + - ALSA: seq: oss: Fix missing error check in snd_seq_oss_synth_make_info() + - ALSA: hda/realtek - Limit int mic boost on Acer Aspire E5-575T + - ALSA: hda/via: Add minimum mute flag + - dm crypt: fix copy and paste bug in crypt_alloc_req_aead + - ACPI: scan: Make acpi_bus_get_device() clear return pointer on error + - btrfs: don't get an EINTR during drop_snapshot for reloc + - btrfs: do not double free backref nodes on error + - btrfs: fix lockdep splat in btrfs_recover_relocation + - btrfs: don't clear ret in btrfs_start_dirty_block_groups + - btrfs: send: fix invalid clone operations when cloning from the same file + and root + - writeback: Drop I_DIRTY_TIME_EXPIRE + - fs: fix lazytime expiration handling in __writeback_single_inode() + - pinctrl: ingenic: Fix JZ4760 support + - mmc: core: don't initialize block size from ext_csd if not present + - mmc: sdhci-of-dwcmshc: fix rpmb access + - mmc: sdhci-xenon: fix 1.8v regulator stabilization + - mmc: sdhci-brcmstb: Fix mmc timeout errors on S5 suspend + - dm: avoid filesystem lookup in dm_get_dev_t() + - dm integrity: fix a crash if "recalculate" used without "internal_hash" + - dm integrity: conditionally disable "recalculate" feature + - drm/atomic: put state on error path + - drm/syncobj: Fix use-after-free + - drm/amdgpu: remove gpu info firmware of green sardine + - drm/amd/display: DCN2X Find Secondary Pipe properly in MPO + ODM Case + - drm/i915/gt: Prevent use of engine->wa_ctx after error + - ASoC: Intel: haswell: Add missing pm_ops + - ASoC: rt711: mutex between calibration and power state changes + - SUNRPC: Handle TCP socket sends with kernel_sendpage() again + - HID: sony: select CONFIG_CRC32 + - dm integrity: select CRYPTO_SKCIPHER + - scsi: ufs: Correct the LUN used in eh_device_reset_handler() callback + - scsi: qedi: Correct max length of CHAP secret + - scsi: scsi_debug: Fix memleak in scsi_debug_init() + - scsi: sd: Suppress spurious errors when WRITE SAME is being disabled + - riscv: Fix kernel time_init() + - riscv: Fix sifive serial driver + - riscv: Enable interrupts during syscalls with M-Mode + - HID: logitech-dj: add the G602 receiver + - HID: Ignore battery for Elan touchscreen on ASUS UX550 + - clk: tegra30: Add hda clock default rates to clock driver + - ALSA: hda/tegra: fix tegra-hda on tegra30 soc + - arm64: make atomic helpers __always_inline + - xen: Fix event channel callback via INTX/GSI + - x86/xen: Add xen_no_vector_callback option to test PCI INTX delivery + - dts: phy: fix missing mdio device and probe failure of vsc8541-01 device + - riscv: defconfig: enable gpio support for HiFive Unleashed + - drm/amdgpu/psp: fix psp gfx ctrl cmds + - drm/amd/display: disable dcn10 pipe split by default + - HID: logitech-hidpp: Add product ID for MX Ergo in Bluetooth mode + - drm/amd/display: Fix to be able to stop crc calculation + - drm/nouveau/bios: fix issue shadowing expansion ROMs + - drm/nouveau/privring: ack interrupts the same way as RM + - drm/nouveau/i2c/gm200: increase width of aux semaphore owner fields + - drm/nouveau/mmu: fix vram heap sizing + - drm/nouveau/kms/nv50-: fix case where notifier buffer is at offset 0 + - io_uring: flush timeouts that should already have expired + - libperf tests: If a test fails return non-zero + - libperf tests: Fail when failing to get a tracepoint id + - RISC-V: Set current memblock limit + - RISC-V: Fix maximum allowed phsyical memory for RV32 + - pinctrl: aspeed: g6: Fix PWMG0 pinctrl setting + - pinctrl: mediatek: Fix fallback call path + - scsi: megaraid_sas: Fix MEGASAS_IOC_FIRMWARE regression + - scsi: ufs: ufshcd-pltfrm depends on HAS_IOMEM + - crypto: omap-sham - Fix link error without crypto-engine + - powerpc: Use the common INIT_DATA_SECTION macro in vmlinux.lds.S + - powerpc: Fix alignment bug within the init sections + - arm64: entry: remove redundant IRQ flag tracing + - drm/amdkfd: Fix out-of-bounds read in kdf_create_vcrat_image_cpu() + - i2c: octeon: check correct size of maximum RECV_LEN packet + - platform/x86: intel-vbtn: Drop HP Stream x360 Convertible PC 11 from allow- + list + - platform/x86: hp-wmi: Don't log a warning on HPWMI_RET_UNKNOWN_COMMAND + errors + - gpio: sifive: select IRQ_DOMAIN_HIERARCHY rather than depend on it + - selftests: net: fib_tests: remove duplicate log test + - can: dev: can_restart: fix use after free bug + - can: vxcan: vxcan_xmit: fix use after free bug + - can: peak_usb: fix use after free bugs + - perf evlist: Fix id index for heterogeneous systems + - i2c: sprd: depend on COMMON_CLK to fix compile tests + - iio: common: st_sensors: fix possible infinite loop in st_sensors_irq_thread + - iio: ad5504: Fix setting power-down state + - counter:ti-eqep: remove floor + - cifs: do not fail __smb_send_rqst if non-fatal signals are pending + - irqchip/mips-cpu: Set IPI domain parent chip + - x86/fpu: Add kernel_fpu_begin_mask() to selectively initialize state + - x86/topology: Make __max_die_per_package available unconditionally + - x86/mmx: Use KFPU_387 for MMX string operations + - proc_sysctl: fix oops caused by incorrect command parameters + - mm: memcg/slab: optimize objcg stock draining + - io_uring: fix SQPOLL IORING_OP_CLOSE cancelation state + - intel_th: pci: Add Alder Lake-S support + - intel_th: pci: Add Alder Lake CPU support + - intel_th: pci: Add Alder Lake-P support + - stm class: Fix module init return on allocation failure + - serial: mvebu-uart: fix tx lost characters at power off + - ehci: fix EHCI host controller initialization sequence + - USB: ehci: fix an interrupt calltrace error + - usb: gadget: aspeed: fix stop dma register setting. + - USB: gadget: dummy-hcd: Fix errors in port-reset handling + - usb: udc: core: Use lock when write to soft_connect + - [Config] updateconfigs for USB_BDC_PCI + - usb: bdc: Make bdc pci driver depend on BROKEN + - usb: cdns3: imx: fix writing read-only memory issue + - usb: cdns3: imx: fix can't create core device the second time issue + - xhci: make sure TRB is fully written before giving it to the controller + - xhci: tegra: Delay for disabling LFPS detector + - driver core: Extend device_is_dependent() + - x86/cpu/amd: Set __max_die_per_package on AMD + - cls_flower: call nla_ok() before nla_next() + - netfilter: rpfilter: mask ecn bits before fib lookup + - sh: dma: fix kconfig dependency for G2_DMA + - ASoC: SOF: Intel: fix page fault at probe if i915 init fails + - octeontx2-af: Fix missing check bugs in rvu_cgx.c + - net: dsa: mv88e6xxx: also read STU state in mv88e6250_g1_vtu_getnext + - sh_eth: Fix power down vs. is_opened flag ordering + - cachefiles: Drop superfluous readpages aops NULL check + - lightnvm: fix memory leak when submit fails + - skbuff: back tiny skbs with kmalloc() in __netdev_alloc_skb() too + - kasan: fix unaligned address is unhandled in kasan_remove_zero_shadow + - kasan: fix incorrect arguments passing in kasan_add_zero_shadow + - tcp: fix TCP socket rehash stats mis-accounting + - net_sched: gen_estimator: support large ewma log + - udp: mask TOS bits in udp_v4_early_demux() + - ipv6: create multicast route with RTPROT_KERNEL + - net_sched: avoid shift-out-of-bounds in tcindex_set_parms() + - net_sched: reject silly cell_log in qdisc_get_rtab() + - ipv6: set multicast flag on the multicast route + - net: mscc: ocelot: allow offloading of bridge on top of LAG + - net: Disable NETIF_F_HW_TLS_RX when RXCSUM is disabled + - net: dsa: b53: fix an off by one in checking "vlan->vid" + - tcp: do not mess with cloned skbs in tcp_add_backlog() + - tcp: fix TCP_USER_TIMEOUT with zero window + - net: core: devlink: use right genl user_ptr when handling port param get/set + - pinctrl: qcom: Allow SoCs to specify a GPIO function that's not 0 + - pinctrl: qcom: No need to read-modify-write the interrupt status + - pinctrl: qcom: Properly clear "intr_ack_high" interrupts when unmasking + - pinctrl: qcom: Don't clear pending interrupts when enabling + - tty: implement write_iter + - tty: fix up hung_up_tty_write() conversion + - drm/i915/hdcp: Get conn while content_type changed + - seq_file: add seq_read_iter + - kernfs: implement ->read_iter + - kernfs: implement ->write_iter + - kernfs: wire up ->splice_read and ->splice_write + - fs/pipe: allow sendfile() to pipe again + - Commit 9bb48c82aced ("tty: implement write_iter") converted the tty layer to + use write_iter. Fix the redirected_tty_write declaration also in n_tty and + change the comparisons to use write_iter instead of write. also in n_tty and + change the comparisons to use write_iter instead of write. + * Enforce CONFIG_DRM_BOCHS=m (LP: #1916290) + - [Config] Enforce CONFIG_DRM_BOCHS=m + * Groovy update: upstream stable patchset 2021-02-25 (LP: #1916960) + - btrfs: reloc: fix wrong file extent type check to avoid false ENOENT + - btrfs: prevent NULL pointer dereference in extent_io_tree_panic + - ALSA: doc: Fix reference to mixart.rst + - ASoC: AMD Renoir - add DMI entry for Lenovo ThinkPad X395 + - ASoC: dapm: remove widget from dirty list on free + - x86/hyperv: check cpu mask after interrupt has been disabled + - drm/amdgpu: add green_sardine device id (v2) + - drm/amdgpu: fix DRM_INFO flood if display core is not supported (bug 210921) + - drm/amdgpu: add Green_Sardine APU flag + - drm/amdgpu: add green_sardine support for gpu_info and ip block setting (v2) + - drm/amdgpu: add soc15 common ip block support for green_sardine (v3) + - drm/amdgpu: add new device id for Renior + - drm/i915/gt: Limit VFE threads based on GT + - drm/i915/backlight: fix CPU mode backlight takeover on LPT + - drm/bridge: sii902x: Refactor init code into separate function + - dt-bindings: display: sii902x: Add supply bindings + - tracing/kprobes: Do the notrace functions check without kprobes on ftrace + - ext4: fix bug for rename with RENAME_WHITEOUT + - cifs: check pointer before freeing + - cifs: fix interrupted close commands + - riscv: return -ENOSYS for syscall -1 + - riscv: Fixup CONFIG_GENERIC_TIME_VSYSCALL + - mips: fix Section mismatch in reference + - mips: lib: uncached: fix non-standard usage of variable 'sp' + - MIPS: boot: Fix unaligned access with CONFIG_MIPS_RAW_APPENDED_DTB + - MIPS: Fix malformed NT_FILE and NT_SIGINFO in 32bit coredumps + - MIPS: relocatable: fix possible boot hangup with KASLR enabled + - RDMA/ocrdma: Fix use after free in ocrdma_dealloc_ucontext_pd() + - ACPI: scan: Harden acpi_device_add() against device ID overflows + - xen/privcmd: allow fetching resource sizes + - compiler.h: Raise minimum version of GCC to 5.1 for arm64 + - mm/hugetlb: fix potential missing huge page size info + - mm/process_vm_access.c: include compat.h + - dm raid: fix discard limits for raid1 + - dm snapshot: flush merged data before committing metadata + - dm integrity: fix flush with external metadata device + - dm integrity: fix the maximum number of arguments + - dm crypt: use GFP_ATOMIC when allocating crypto requests from softirq + - stmmac: intel: change all EHL/TGL to auto detect phy addr + - r8152: Add Lenovo Powered USB-C Travel Hub + - btrfs: tree-checker: check if chunk item end overflows + - ext4: don't leak old mountpoint samples + - ARC: build: remove non-existing bootpImage from KBUILD_IMAGE + - ARC: build: add uImage.lzma to the top-level target + - ARC: build: add boot_targets to PHONY + - ARC: build: move symlink creation to arch/arc/Makefile to avoid race + - ARM: omap2: pmic-cpcap: fix maximum voltage to be consistent with defaults + on xt875 + - ath11k: fix crash caused by NULL rx_channel + - netfilter: ipset: fixes possible oops in mtype_resize + - btrfs: fix async discard stall + - btrfs: merge critical sections of discard lock in workfn + - btrfs: fix transaction leak and crash after RO remount caused by qgroup + rescan + - regulator: bd718x7: Add enable times + - ethernet: ucc_geth: fix definition and size of ucc_geth_tx_global_pram + - habanalabs/gaudi: retry loading TPC f/w on -EINTR + - habanalabs: register to pci shutdown callback + - habanalabs: Fix memleak in hl_device_reset + - hwmon: (pwm-fan) Ensure that calculation doesn't discard big period values + - lib/raid6: Let $(UNROLL) rules work with macOS userland + - spi: fix the divide by 0 error when calculating xfer waiting time + - arch/arc: add copy_user_page() to to fix build error on ARC + - misdn: dsp: select CONFIG_BITREVERSE + - net: ethernet: fs_enet: Add missing MODULE_LICENSE + - nvme-pci: mark Samsung PM1725a as IGNORE_DEV_SUBNQN + - nvme: avoid possible double fetch in handling CQE + - nvmet-rdma: Fix list_del corruption on queue establishment failure + - drm/amd/display: fix sysfs amdgpu_current_backlight_pwm NULL pointer issue + - drm/amdgpu: fix a GPU hang issue when remove device + - drm/amd/pm: fix the failure when change power profile for renoir + - drm/amdgpu: fix potential memory leak during navi12 deinitialization + - usb: typec: Fix copy paste error for NVIDIA alt-mode description + - iommu/vt-d: Fix lockdep splat in sva bind()/unbind() + - ACPI: scan: add stub acpi_create_platform_device() for !CONFIG_ACPI + - drm/msm: Call msm_init_vram before binding the gpu + - ARM: picoxcell: fix missing interrupt-parent properties + - poll: fix performance regression due to out-of-line __put_user() + - bpf: Simplify task_file_seq_get_next() + - bpf: Save correct stopping point in file seq iteration + - cfg80211: select CONFIG_CRC32 + - iommu/vt-d: Update domain geometry in iommu_ops.at(de)tach_dev + - net/mlx5: Fix passing zero to 'PTR_ERR' + - net/mlx5: E-Switch, fix changing vf VLANID + - mm: don't put pinned pages into the swap cache + - perf intel-pt: Fix 'CPU too large' error + - dump_common_audit_data(): fix racy accesses to ->d_name + - ASoC: meson: axg-tdm-interface: fix loopback + - ASoC: meson: axg-tdmin: fix axg skew offset + - ASoC: Intel: fix error code cnl_set_dsp_D0() + - nvmet-rdma: Fix NULL deref when setting pi_enable and traddr INADDR_ANY + - nvme: don't intialize hwmon for discovery controllers + - nvme-tcp: fix possible data corruption with bio merges + - nvme-tcp: Fix warning with CONFIG_DEBUG_PREEMPT + - NFS4: Fix use-after-free in trace_event_raw_event_nfs4_set_lock + - pNFS: We want return-on-close to complete when evicting the inode + - pNFS: Mark layout for return if return-on-close was not sent + - pNFS: Stricter ordering of layoutget and layoutreturn + - NFS: Adjust fs_context error logging + - NFS/pNFS: Don't call pnfs_free_bucket_lseg() before removing the request + - NFS/pNFS: Don't leak DS commits in pnfs_generic_retry_commit() + - NFS/pNFS: Fix a leak of the layout 'plh_outstanding' counter + - NFS: nfs_delegation_find_inode_server must first reference the superblock + - NFS: nfs_igrab_and_active must first reference the superblock + - scsi: ufs: Fix possible power drain during system suspend + - ext4: fix superblock checksum failure when setting password salt + - RDMA/restrack: Don't treat as an error allocation ID wrapping + - RDMA/usnic: Fix memleak in find_free_vf_and_create_qp_grp + - bnxt_en: Improve stats context resource accounting with RDMA driver loaded. + - RDMA/mlx5: Fix wrong free of blue flame register on error + - IB/mlx5: Fix error unwinding when set_has_smi_cap fails + - dm zoned: select CONFIG_CRC32 + - drm/i915/dsi: Use unconditional msleep for the panel_on_delay when there is + no reset-deassert MIPI-sequence + - drm/i915/icl: Fix initing the DSI DSC power refcount during HW readout + - drm/i915/gt: Restore clear-residual mitigations for Ivybridge, Baytrail + - mm, slub: consider rest of partial list if acquire_slab() fails + - iommu/vt-d: Fix unaligned addresses for intel_flush_svm_range_dev() + - net: sunrpc: interpret the return value of kstrtou32 correctly + - selftests: netfilter: Pass family parameter "-f" to conntrack tool + - dm: eliminate potential source of excessive kernel log noise + - ALSA: fireface: Fix integer overflow in transmit_midi_msg() + - ALSA: firewire-tascam: Fix integer overflow in midi_port_work() + - netfilter: conntrack: fix reading nf_conntrack_buckets + - netfilter: nf_nat: Fix memleak in nf_nat_init + - netfilter: nft_compat: remove flush counter optimization + - kbuild: enforce -Werror=return-type + - [Config] updateconfigs for KPROBE_EVENTS_ON_NOTRACE + - x86/hyperv: Initialize clockevents after LAPIC is initialized + - bpf: Fix signed_{sub,add32}_overflows type handling + - nfsd4: readdirplus shouldn't return parent of export + - bpf: Don't leak memory in bpf getsockopt when optlen == 0 + - bpf: Support PTR_TO_MEM{,_OR_NULL} register spilling + - bpf: Fix helper bpf_map_peek_elem_proto pointing to wrong callback + - net: ipa: modem: add missing SET_NETDEV_DEV() for proper sysfs links + - net: fix use-after-free when UDP GRO with shared fraglist + - udp: Prevent reuseport_select_sock from reading uninitialized socks + - netxen_nic: fix MSI/MSI-x interrupts + - net: ipv6: Validate GSO SKB before finish IPv6 processing + - tipc: fix NULL deref in tipc_link_xmit() + - mlxsw: core: Add validation of transceiver temperature thresholds + - mlxsw: core: Increase critical threshold for ASIC thermal zone + - net: mvpp2: Remove Pause and Asym_Pause support + - rndis_host: set proper input size for OID_GEN_PHYSICAL_MEDIUM request + - esp: avoid unneeded kmap_atomic call + - net: dcb: Validate netlink message in DCB handler + - net: dcb: Accept RTM_GETDCB messages carrying set-like DCB commands + - rxrpc: Call state should be read with READ_ONCE() under some circumstances + - i40e: fix potential NULL pointer dereferencing + - net: stmmac: Fixed mtu channged by cache aligned + - net: sit: unregister_netdevice on newlink's error path + - net: stmmac: fix taprio schedule configuration + - net: stmmac: fix taprio configuration when base_time is in the past + - net: avoid 32 x truesize under-estimation for tiny skbs + - rxrpc: Fix handling of an unsupported token type in rxrpc_read() + - net: stmmac: use __napi_schedule() for PREEMPT_RT + - drm/panel: otm8009a: allow using non-continuous dsi clock + - mac80211: do not drop tx nulldata packets on encrypted links + - mac80211: check if atf has been disabled in __ieee80211_schedule_txq + - net: dsa: unbind all switches from tree when DSA master unbinds + - cxgb4/chtls: Fix tid stuck due to wrong update of qid + - spi: fsl: Fix driver breakage when SPI_CS_HIGH is not set in spi->mode + - spi: cadence: cache reference clock rate during probe + - usb: ohci: Make distrust_firmware param default to false + - elfcore: fix building with clang + - spi: npcm-fiu: simplify the return expression of npcm_fiu_probe() + - spi: npcm-fiu: Disable clock in probe error path + * CVE-2021-20239 + - net, sctp, filter: remap copy_from_user failure error + + -- Krzysztof Kozlowski Tue, 06 Apr 2021 16:13:53 +0200 + +linux-azure-5.8 (5.8.0-1026.28~20.04.1) focal; urgency=medium + + * Empty entry + + -- Krzysztof Kozlowski Mon, 29 Mar 2021 10:38:34 +0200 + +linux-azure (5.8.0-1026.28) groovy; urgency=medium + + [ Ubuntu: 5.8.0-48.54 ] + + * CVE-2020-27170 + - bpf: Fix off-by-one for area size in creating mask to left + * CVE-2020-27171 + - bpf: Prohibit alu ops for pointer types not defining ptr_limit + + -- Thadeu Lima de Souza Cascardo Fri, 19 Mar 2021 19:28:49 -0300 + +linux-azure (5.8.0-1025.27) groovy; urgency=medium + + [ Ubuntu: 5.8.0-47.53 ] + + * binary assembly failures with CONFIG_MODVERSIONS present (LP: #1919315) + - [Packaging] quiet (nomially) benign errors in BUILD script + * CVE-2021-3444 + - bpf: Fix 32 bit src register truncation on div/mod + - bpf: Fix truncation handling for mod32 dst reg wrt zero + * CVE-2021-27365 + - scsi: iscsi: Verify lengths on passthrough PDUs + - sysfs: Add sysfs_emit and sysfs_emit_at to format sysfs output + - scsi: iscsi: Ensure sysfs attributes are limited to PAGE_SIZE + * CVE-2021-27363 // CVE-2021-27364 + - scsi: iscsi: Restrict sessions and handles to admin capabilities + + -- Stefan Bader Wed, 17 Mar 2021 15:00:15 +0100 + +linux-azure (5.8.0-1024.26) groovy; urgency=medium + + * groovy/linux-azure: 5.8.0-1024.26 -proposed tracker (LP: #1916130) + + * Azure kernel for focal misses binder and ashmem kernel modules + (LP: #1914568) + - [Config] Enable CONFIG_ASHMEM=m, CONFIG_ANDROID_BINDER_IPC=m + - azure: [Config] Disable ION + + * Please trust Canonical Livepatch Service kmod signing key (LP: #1898716) + - azure: [Config] enable CONFIG_MODVERSIONS=y + - azure: [Packaging] build canonical-certs.pem from branch/arch certs + - azure: [Config] Allow ASM_MODVERSIONS + + [ Ubuntu: 5.8.0-45.51 ] + + * groovy/linux: 5.8.0-45.51 -proposed tracker (LP: #1916143) + * Please trust Canonical Livepatch Service kmod signing key (LP: #1898716) + - [Config] enable CONFIG_MODVERSIONS=y + - [Packaging] build canonical-certs.pem from branch/arch certs + - [Config] add Canonical Livepatch Service key to SYSTEM_TRUSTED_KEYS + - [Config] add ubuntu-drivers key to SYSTEM_TRUSTED_KEYS + - [Config] Allow ASM_MODVERSIONS and MODULE_REL_CRCS + * CVE-2021-20194 + - bpf, cgroup: Fix optlen WARN_ON_ONCE toctou + - bpf, cgroup: Fix problematic bounds check + * Missing device id for Intel TGL-H ISH [8086:43fc] in intel-ish-hid driver + (LP: #1914543) + - HID: intel-ish-hid: ipc: Add Tiger Lake H PCI device ID + * Prevent thermal shutdown during boot process (LP: #1906168) + - thermal/core: Emit a warning if the thermal zone is updated without ops + - thermal/core: Add critical and hot ops + - thermal/drivers/acpi: Use hot and critical ops + - thermal/drivers/rcar: Remove notification usage + - thermal: int340x: Fix unexpected shutdown at critical temperature + - thermal: intel: pch: Fix unexpected shutdown at critical temperature + * geneve overlay network on vlan interface broken with offload enabled + (LP: #1914447) + - net/mlx5e: Fix SWP offsets when vlan inserted by driver + * Groovy update: upstream stable patchset 2021-02-11 (LP: #1915473) + - net: cdc_ncm: correct overhead in delayed_ndp_size + - net: hns3: fix the number of queues actually used by ARQ + - net: hns3: fix a phy loopback fail issue + - net: stmmac: dwmac-sun8i: Balance internal PHY resource references + - net: stmmac: dwmac-sun8i: Balance internal PHY power + - net: vlan: avoid leaks on register_vlan_dev() failures + - net/sonic: Fix some resource leaks in error handling paths + - net: ipv6: fib: flush exceptions when purging route + - tools: selftests: add test for changing routes with PTMU exceptions + - net: fix pmtu check in nopmtudisc mode + - net: ip: always refragment ip defragmented packets + - octeontx2-af: fix memory leak of lmac and lmac->name + - nexthop: Fix off-by-one error in error path + - nexthop: Unlink nexthop group entry in error path + - s390/qeth: fix L2 header access in qeth_l3_osa_features_check() + - net: dsa: lantiq_gswip: Exclude RMII from modes that report 1 GbE + - net/mlx5: Use port_num 1 instead of 0 when delete a RoCE address + - net/mlx5e: ethtool, Fix restriction of autoneg with 56G + - chtls: Fix hardware tid leak + - chtls: Remove invalid set_tcb call + - chtls: Fix panic when route to peer not configured + - chtls: Replace skb_dequeue with skb_peek + - chtls: Added a check to avoid NULL pointer dereference + - chtls: Fix chtls resources release sequence + - HID: wacom: Fix memory leakage caused by kfifo_alloc + - ARM: OMAP2+: omap_device: fix idling of devices during probe + - i2c: sprd: use a specific timeout to avoid system hang up issue + - dmaengine: dw-edma: Fix use after free in dw_edma_alloc_chunk() + - can: tcan4x5x: fix bittiming const, use common bittiming from m_can driver + - can: m_can: m_can_class_unregister(): remove erroneous m_can_clk_stop() + - can: kvaser_pciefd: select CONFIG_CRC32 + - cpufreq: powernow-k8: pass policy rather than use cpufreq_cpu_get() + - spi: stm32: FIFO threshold level - fix align packet size + - i2c: i801: Fix the i2c-mux gpiod_lookup_table not being properly terminated + - dmaengine: mediatek: mtk-hsdma: Fix a resource leak in the error handling + path of the probe function + - dmaengine: xilinx_dma: check dma_async_device_register return value + - dmaengine: xilinx_dma: fix incompatible param warning in _child_probe() + - dmaengine: xilinx_dma: fix mixed_enum_type coverity warning + - qed: select CONFIG_CRC32 + - wil6210: select CONFIG_CRC32 + - block: rsxx: select CONFIG_CRC32 + - lightnvm: select CONFIG_CRC32 + - iommu/intel: Fix memleak in intel_irq_remapping_alloc + - bpftool: Fix compilation failure for net.o with older glibc + - net/mlx5e: Fix memleak in mlx5e_create_l2_table_groups + - net/mlx5e: Fix two double free cases + - regmap: debugfs: Fix a memory leak when calling regmap_attach_dev + - wan: ds26522: select CONFIG_BITREVERSE + - regulator: qcom-rpmh-regulator: correct hfsmps515 definition + - net: mvpp2: disable force link UP during port init procedure + - KVM: arm64: Don't access PMCR_EL0 when no PMU is available + - block: fix use-after-free in disk_part_iter_next + - net: drop bogus skb with CHECKSUM_PARTIAL and offset beyond end of trimmed + packet + - regmap: debugfs: Fix a reversed if statement in regmap_debugfs_init() + - drm/panfrost: Don't corrupt the queue mutex on open/close + - scsi: ufs: Fix -Wsometimes-uninitialized warning + - btrfs: skip unnecessary searches for xattrs when logging an inode + - net: stmmac: dwmac-sun8i: Fix probe error handling + - net: stmmac: dwmac-sun8i: Balance syscon (de)initialization + - net: bareudp: add missing error handling for bareudp_link_config() + - ptp: ptp_ines: prevent build when HAS_IOMEM is not set + - chtls: Avoid unnecessary freeing of oreq pointer + - nexthop: Bounce NHA_GATEWAY in FDB nexthop groups + - net/mlx5e: In skb build skip setting mark in switchdev mode + - ionic: start queues before announcing link up + - fanotify: Fix sys_fanotify_mark() on native x86-32 + - spi: spi-geni-qcom: Fix geni_spi_isr() NULL dereference in timeout case + - i2c: mediatek: Fix apdma and i2c hand-shake timeout + - interconnect: imx: Add a missing of_node_put after of_device_is_available + - dmaengine: milbeaut-xdmac: Fix a resource leak in the error handling path of + the probe function + - arm64: mm: Fix ARCH_LOW_ADDRESS_LIMIT when !CONFIG_ZONE_DMA + - phy: dp83640: select CONFIG_CRC32 + - zonefs: select CONFIG_CRC32 + - iommu/vt-d: Fix misuse of ALIGN in qi_flush_piotlb() + - nvme-tcp: Fix possible race of io_work and direct send + - arm64: cpufeature: remove non-exist CONFIG_KVM_ARM_HOST + - drm/i915/dp: Track pm_qos per connector + - net: mvneta: fix error message when MTU too large for XDP + - selftests: fib_nexthops: Fix wrong mausezahn invocation + - block/rnbd-clt: avoid module unload race with close confirmation + - drm/panfrost: Remove unused variables in panfrost_job_close() + - tools headers UAPI: Sync linux/fscrypt.h with the kernel sources + * Fix the video can't output through WD19TB connected on TGL's Type-C port + during cold-boot (LP: #1913372) + - drm/dp/mst: Export drm_dp_get_vc_payload_bw() + - drm/i915: Fix the MST PBN divider calculation + * Fix regression introduced by codec PM change (LP: #1912676) + - ASoC: SOF: Intel: hda: Resume codec to do jack detection + - ASoC: SOF: Intel: hda: Modify existing helper to disable WAKEEN + - ASoC: SOF: Intel: hda: Avoid checking jack on system suspend + - ALSA: hda: Balance runtime/system PM if direct-complete is disabled + * Restore palm ejection on multi-input devices (LP: #1913520) + - HID: multitouch: Apply MT_QUIRK_CONFIDENCE quirk for multi-input devices + * intel-hid is not loaded on new Intel platform (LP: #1907160) + - platform/x86: intel-hid: add Rocket Lake ACPI device ID + * Remove scary stack trace from Realtek WiFi driver (LP: #1913263) + - rtw88: reduce the log level for failure of tx report + * Groovy update: upstream stable patchset 2021-02-05 (LP: #1914832) + - i40e: Fix Error I40E_AQ_RC_EINVAL when removing VFs + - iavf: fix double-release of rtnl_lock + - net/sched: sch_taprio: ensure to reset/destroy all child qdiscs + - net: mvpp2: Add TCAM entry to drop flow control pause frames + - net: mvpp2: prs: fix PPPoE with ipv6 packet parse + - net: systemport: set dev->max_mtu to UMAC_MAX_MTU_SIZE + - ethernet: ucc_geth: fix use-after-free in ucc_geth_remove() + - ethernet: ucc_geth: set dev->max_mtu to 1518 + - ionic: account for vlan tag len in rx buffer len + - atm: idt77252: call pci_disable_device() on error path + - net: mvpp2: Fix GoP port 3 Networking Complex Control configurations + - ibmvnic: fix login buffer memory leak + - ibmvnic: continue fatal error reset after passive init + - net: ethernet: mvneta: Fix error handling in mvneta_probe + - virtio_net: Fix recursive call to cpus_read_lock() + - net/ncsi: Use real net-device for response handler + - net: ethernet: Fix memleak in ethoc_probe + - net-sysfs: take the rtnl lock when storing xps_cpus + - net-sysfs: take the rtnl lock when accessing xps_cpus_map and num_tc + - net-sysfs: take the rtnl lock when storing xps_rxqs + - net-sysfs: take the rtnl lock when accessing xps_rxqs_map and num_tc + - net: ethernet: ti: cpts: fix ethtool output when no ptp_clock registered + - tun: fix return value when the number of iovs exceeds MAX_SKB_FRAGS + - bnxt_en: Check TQM rings for maximum supported value. + - net: mvpp2: fix pkt coalescing int-threshold configuration + - bnxt_en: Fix AER recovery. + - ipv4: Ignore ECN bits for fib lookups in fib_compute_spec_dst() + - net: sched: prevent invalid Scell_log shift count + - net: hns: fix return value check in __lb_other_process() + - erspan: fix version 1 check in gre_parse_header() + - net: hdlc_ppp: Fix issues when mod_timer is called while timer is running + - bareudp: set NETIF_F_LLTX flag + - bareudp: Fix use of incorrect min_headroom size + - vhost_net: fix ubuf refcount incorrectly when sendmsg fails + - r8169: work around power-saving bug on some chip versions + - net: dsa: lantiq_gswip: Enable GSWIP_MII_CFG_EN also for internal PHYs + - net: dsa: lantiq_gswip: Fix GSWIP_MII_CFG(p) register access + - CDC-NCM: remove "connected" log message + - ibmvnic: fix: NULL pointer dereference. + - net: usb: qmi_wwan: add Quectel EM160R-GL + - stmmac: intel: Add PCI IDs for TGL-H platform + - workqueue: Kick a worker based on the actual activation of delayed works + - scsi: ufs: Fix wrong print message in dev_err() + - scsi: ufs-pci: Fix restore from S4 for Intel controllers + - scsi: ufs-pci: Ensure UFS device is in PowerDown mode for suspend-to-disk + ->poweroff() + - scsi: ufs-pci: Fix recovery from hibernate exit errors for Intel controllers + - blk-mq: remove the BLK_MQ_REQ_INTERNAL flag + - scsi: block: Introduce BLK_MQ_REQ_PM + - scsi: ide: Do not set the RQF_PREEMPT flag for sense requests + - scsi: ide: Mark power management requests with RQF_PM instead of RQF_PREEMPT + - scsi: scsi_transport_spi: Set RQF_PM for domain validation commands + - scsi: core: Only process PM requests if rpm_status != RPM_ACTIVE + - local64.h: make mandatory + - lib/genalloc: fix the overflow when size is too big + - depmod: handle the case of /sbin/depmod without /sbin in PATH + - scsi: ufs: Clear UAC for FFU and RPMB LUNs + - kbuild: don't hardcode depmod path + - Bluetooth: revert: hci_h5: close serdev device and free hu in h5_close + - scsi: block: Remove RQF_PREEMPT and BLK_MQ_REQ_PREEMPT + - scsi: block: Do not accept any requests while suspended + - crypto: ecdh - avoid buffer overflow in ecdh_set_secret() + - crypto: asym_tpm: correct zero out potential secrets + - powerpc: Handle .text.{hot,unlikely}.* in linker script + - Staging: comedi: Return -EFAULT if copy_to_user() fails + - staging: mt7621-dma: Fix a resource leak in an error handling path + - usb: gadget: enable super speed plus + - USB: cdc-acm: blacklist another IR Droid device + - USB: cdc-wdm: Fix use after free in service_outstanding_interrupt(). + - usb: dwc3: meson-g12a: disable clk on error handling path in probe + - usb: dwc3: gadget: Clear wait flag on dequeue + - usb: dwc3: ulpi: Use VStsDone to detect PHY regs access completion + - usb: dwc3: ulpi: Replace CPU-based busyloop with Protocol-based one + - usb: dwc3: ulpi: Fix USB2.0 HS/FS/LS PHY suspend regression + - usb: chipidea: ci_hdrc_imx: add missing put_device() call in + usbmisc_get_init_data() + - USB: xhci: fix U1/U2 handling for hardware with XHCI_INTEL_HOST quirk set + - usb: usbip: vhci_hcd: protect shift size + - usb: uas: Add PNY USB Portable SSD to unusual_uas + - USB: serial: iuu_phoenix: fix DMA from stack + - USB: serial: option: add LongSung M5710 module support + - USB: serial: option: add Quectel EM160R-GL + - USB: yurex: fix control-URB timeout handling + - USB: usblp: fix DMA to stack + - ALSA: usb-audio: Fix UBSAN warnings for MIDI jacks + - usb: gadget: select CONFIG_CRC32 + - USB: Gadget: dummy-hcd: Fix shift-out-of-bounds bug + - usb: gadget: f_uac2: reset wMaxPacketSize + - usb: gadget: function: printer: Fix a memory leak for interface descriptor + - usb: gadget: u_ether: Fix MTU size mismatch with RX packet size + - USB: gadget: legacy: fix return error code in acm_ms_bind() + - usb: gadget: Fix spinlock lockup on usb_function_deactivate + - usb: gadget: configfs: Preserve function ordering after bind failure + - usb: gadget: configfs: Fix use-after-free issue with udc_name + - USB: serial: keyspan_pda: remove unused variable + - hwmon: (amd_energy) fix allocation of hwmon_channel_info config + - mm: make wait_on_page_writeback() wait for multiple pending writebacks + - x86/mm: Fix leak of pmd ptlock + - kvm: check tlbs_dirty directly + - task_work: cleanup notification modes + - x86/resctrl: Use an IPI instead of task_work_add() to update PQR_ASSOC MSR + - x86/resctrl: Don't move a task to the same resource group + - blk-iocost: fix NULL iocg deref from racing against initialization + - ALSA: hda/via: Fix runtime PM for Clevo W35xSS + - ALSA: hda/conexant: add a new hda codec CX11970 + - ALSA: hda/realtek - Fix speaker volume control on Lenovo C940 + - ALSA: hda/realtek: Add mute LED quirk for more HP laptops + - ALSA: hda/realtek: Add two "Intel Reference board" SSID in the ALC256. + - iommu/vt-d: Move intel_iommu info from struct intel_svm to struct + intel_svm_dev + - btrfs: send: fix wrong file path when there is an inode with a pending rmdir + - Revert "device property: Keep secondary firmware node secondary by type" + - dmabuf: fix use-after-free of dmabuf's file->f_inode + - arm64: link with -z norelro for LLD or aarch64-elf + - drm/i915: clear the shadow batch + - netfilter: x_tables: Update remaining dereference to RCU + - netfilter: ipset: fix shift-out-of-bounds in htable_bits() + - netfilter: xt_RATEEST: reject non-null terminated string from userspace + - netfilter: nft_dynset: report EOPNOTSUPP on missing set feature + - dmaengine: idxd: off by one in cleanup code + - x86/mtrr: Correct the range check before performing MTRR type lookups + - KVM: x86: fix shift out of bounds reported by UBSAN + - rtlwifi: rise completion at the last step of firmware callback + * Groovy update: upstream stable patchset 2021-02-03 (LP: #1914472) + - net/sched: sch_taprio: reset child qdiscs before freeing them + - mptcp: fix security context on server socket + - ethtool: fix error paths in ethnl_set_channels() + - ethtool: fix string set id check + - md/raid10: initialize r10_bio->read_slot before use. + - drm/amd/display: Add get_dig_frontend implementation for DCEx + - io_uring: close a small race gap for files cancel + - jffs2: Allow setting rp_size to zero during remounting + - jffs2: Fix NULL pointer dereference in rp_size fs option parsing + - scsi: block: Fix a race in the runtime power management code + - mm/hugetlb: fix deadlock in hugetlb_cow error path + - mm: memmap defer init doesn't work as expected + - lib/zlib: fix inflating zlib streams on s390 + - uapi: move constants from to + - tools headers UAPI: Sync linux/const.h with the kernel headers + - cgroup: Fix memory leak when parsing multiple source parameters + - zlib: move EXPORT_SYMBOL() and MODULE_LICENSE() out of dfltcc_syms.c + - scsi: cxgb4i: Fix TLS dependency + - Bluetooth: hci_h5: close serdev device and free hu in h5_close + - fbcon: Disable accelerated scrolling + - reiserfs: add check for an invalid ih_entry_count + - misc: vmw_vmci: fix kernel info-leak by initializing dbells in + vmci_ctx_get_chkpt_doorbells() + - media: gp8psk: initialize stats at power control logic + - f2fs: fix shift-out-of-bounds in sanity_check_raw_super() + - ALSA: seq: Use bool for snd_seq_queue internal flags + - ALSA: rawmidi: Access runtime->avail always in spinlock + - bfs: don't use WARNING: string when it's just info. + - ext4: check for invalid block size early when mounting a file system + - fcntl: Fix potential deadlock in send_sig{io, urg}() + - rtc: sun6i: Fix memleak in sun6i_rtc_clk_init + - module: set MODULE_STATE_GOING state when a module fails to load + - quota: Don't overflow quota file offsets + - rtc: pl031: fix resource leak in pl031_probe + - powerpc: sysdev: add missing iounmap() on error in mpic_msgr_probe() + - i3c master: fix missing destroy_workqueue() on error in i3c_master_register + - NFSv4: Fix a pNFS layout related use-after-free race when freeing the inode + - f2fs: avoid race condition for shrinker count + - module: delay kobject uevent until after module init call + - fs/namespace.c: WARN if mnt_count has become negative + - watchdog: rti-wdt: fix reference leak in rti_wdt_probe + - um: random: Register random as hwrng-core device + - um: ubd: Submit all data segments atomically + - ceph: fix inode refcount leak when ceph_fill_inode on non-I_NEW inode fails + - drm/amd/display: updated wm table for Renoir + - tick/sched: Remove bogus boot "safety" check + - s390: always clear kernel stack backchain before calling functions + - io_uring: remove racy overflow list fast checks + - ALSA: pcm: Clear the full allocated memory at hw_params + - dm verity: skip verity work if I/O error when system is shutting down + - rtc: pcf2127: move watchdog initialisation to a separate function + - rtc: pcf2127: only use watchdog when explicitly available + - dt-bindings: rtc: add reset-source property + - kdev_t: always inline major/minor helper functions + - ALSA: hda/realtek - Modify Dell platform name + - scsi: ufs: Allow an error return value from ->device_reset() + - scsi: ufs: Re-enable WriteBooster after device reset + - RDMA/siw,rxe: Make emulated devices virtual in the device tree + - fuse: fix bad inode + - rwsem: Implement down_read_killable_nested + - rwsem: Implement down_read_interruptible + - exec: Transform exec_update_mutex into a rw_semaphore + - mwifiex: Fix possible buffer overflows in mwifiex_cmd_802_11_ad_hoc_start + + -- William Breathitt Gray Wed, 24 Feb 2021 07:13:34 -0500 + +linux-azure (5.8.0-1023.25) groovy; urgency=medium + + * groovy/linux-azure: 5.8.0-1023.25 -proposed tracker (LP: #1914792) + + * Groovy update: upstream stable patchset 2021-01-12 (LP: #1911235) + - [Config] azure: update config for INFINIBAND_VIRT_DMA + + * Groovy update: upstream stable patchset 2021-01-13 (LP: #1911476) + - [Config] azure: updateconfigs for ZSMALLOC_PGTABLE_MAPPING + + * Revert or drop obsolete patches for PCI (LP: #1911205) + - Revert "UBUNTU: SAUCE: pci-hyperv: Use only 16 bit integer for PCI domain" + - Revert "Revert "PCI: hv: Make sure the bus domain is really unique"" + + * Disable Atari partition support for cloud kernels (LP: #1908264) + - [Config] azure: Disable ATARI_PARTITION + + * Enable boot from NVMe device for all images (LP: #1908571) + - [Config] azure: CONFIG_PCI_HYPERV=y + + [ Ubuntu: 5.8.0-44.50 ] + + * groovy/linux: 5.8.0-44.50 -proposed tracker (LP: #1914805) + * Packaging resync (LP: #1786013) + - update dkms package versions + - update dkms package versions + * Introduce the new NVIDIA 460-server series and update the 460 series + (LP: #1913200) + - [Config] dkms-versions -- drop NVIDIA 435 455 and 440-server + - [Config] dkms-versions -- add the 460-server nvidia driver + * [SRU][G/H/U/OEM-5.10] re-enable s0ix of e1000e (LP: #1910541) + - Revert "UBUNTU: SAUCE: e1000e: bump up timeout to wait when ME un-configure + ULP mode" + - e1000e: Only run S0ix flows if shutdown succeeded + - Revert "e1000e: disable s0ix entry and exit flows for ME systems" + - e1000e: Export S0ix flags to ethtool + * suspend only works once on ThinkPad X1 Carbon gen 7 (LP: #1865570) // + [SRU][G/H/U/OEM-5.10] re-enable s0ix of e1000e (LP: #1910541) + - e1000e: bump up timeout to wait when ME un-configures ULP mode + * Cannot probe sata disk on sata controller behind VMD: ata1.00: failed to + IDENTIFY (I/O error, err_mask=0x4) (LP: #1894778) + - PCI: vmd: Offset Client VMD MSI-X vectors + * Enable mute and micmute LED on HP EliteBook 850 G7 (LP: #1910102) + - ALSA: hda/realtek: Enable mute and micmute LED on HP EliteBook 850 G7 + * SYNA30B4:00 06CB:CE09 Mouse on HP EliteBook 850 G7 not working at all + (LP: #1908992) + - HID: multitouch: Enable multi-input for Synaptics pointstick/touchpad device + * HD Audio Device PCI ID for the Intel Cometlake-R platform (LP: #1912427) + - SAUCE: ALSA: hda: Add Cometlake-R PCI ID + * switch to an autogenerated nvidia series based core via dkms-versions + (LP: #1912803) + - [Packaging] nvidia -- use dkms-versions to define versions built + - [Packaging] update-version-dkms -- maintain flags fields + - [Config] dkms-versions -- add transitional/skip information for nvidia + packages + * udpgro.sh in net from ubuntu_kernel_selftests seems not reflecting sub-test + result (LP: #1908499) + - selftests: fix the return value for UDP GRO test + * [UBUNTU 21.04] vfio: pass DMA availability information to userspace + (LP: #1907421) + - vfio/type1: Refactor vfio_iommu_type1_ioctl() + - vfio iommu: Add dma available capability + * qede: Kubernetes Internal DNS Failure due to QL41xxx NIC not supporting IPIP + tx csum offload (LP: #1909062) + - qede: fix offload for IPIP tunnel packets + * Use DCPD to control HP DreamColor panel (LP: #1911001) + - SAUCE: drm/dp: Another HP DreamColor panel brigntness fix + * Fix right sounds and mute/micmute LEDs for HP ZBook Fury 15/17 G7 Mobile + Workstation (LP: #1910561) + - ALSA: hda/realtek: fix right sounds and mute/micmute LEDs for HP machines + * Ubuntu 20.04 - multicast counter is not increased in ip -s (LP: #1901842) + - net/mlx5e: Fix multicast counter not up-to-date in "ip -s" + * eeh-basic.sh in powerpc from ubuntu_kernel_selftests timeout with 5.4 P8 / + P9 (LP: #1882503) + - selftests/powerpc/eeh: disable kselftest timeout setting for eeh-basic + * DMI entry syntax fix for Pegatron / ByteSpeed C15B (LP: #1910639) + - Input: i8042 - unbreak Pegatron C15B + * update ENA driver, incl. new ethtool stats (LP: #1910291) + - net: ena: ethtool: convert stat_offset to 64 bit resolution + - net: ena: ethtool: Add new device statistics + - net: ena: ethtool: add stats printing to XDP queues + - net: ena: xdp: add queue counters for xdp actions + - net: ena: Change license into format to SPDX in all files + - net: ena: Change log message to netif/dev function + - net: ena: Remove redundant print of placement policy + - net: ena: Change RSS related macros and variables names + - net: ena: Fix all static chekers' warnings + - drivers/net/ethernet: remove incorrectly formatted doc + - net: ena: Capitalize all log strings and improve code readability + * Groovy update: upstream stable patchset 2021-01-15 (LP: #1912027) + - net: ipconfig: Avoid spurious blank lines in boot log + - x86/split-lock: Avoid returning with interrupts enabled + - exfat: Avoid allocating upcase table using kcalloc() + - soc/tegra: fuse: Fix index bug in get_process_id + - usb: mtu3: fix memory corruption in mtu3_debugfs_regset() + - USB: serial: option: add interface-number sanity check to flag handling + - USB: gadget: f_acm: add support for SuperSpeed Plus + - USB: gadget: f_midi: setup SuperSpeed Plus descriptors + - usb: gadget: f_fs: Re-use SS descriptors for SuperSpeedPlus + - USB: gadget: f_rndis: fix bitrate for SuperSpeed and above + - usb: chipidea: ci_hdrc_imx: Pass DISABLE_DEVICE_STREAMING flag to imx6ul + - ARM: dts: exynos: fix roles of USB 3.0 ports on Odroid XU + - ARM: dts: exynos: fix USB 3.0 VBUS control and over-current pins on + Exynos5410 + - ARM: dts: exynos: fix USB 3.0 pins supply being turned off on Odroid XU + - coresight: tmc-etf: Fix NULL ptr dereference in tmc_enable_etf_sink_perf() + - coresight: tmc-etr: Check if page is valid before dma_map_page() + - coresight: tmc-etr: Fix barrier packet insertion for perf buffer + - coresight: etb10: Fix possible NULL ptr dereference in etb_enable_perf() + - f2fs: fix to seek incorrect data offset in inline data file + - scsi: megaraid_sas: Check user-provided offsets + - HID: i2c-hid: add Vero K147 to descriptor override + - serial_core: Check for port state when tty is in error state + - fscrypt: remove kernel-internal constants from UAPI header + - fscrypt: rename DCACHE_ENCRYPTED_NAME to DCACHE_NOKEY_NAME + - fscrypt: add fscrypt_is_nokey_name() + - ubifs: prevent creating duplicate encrypted filenames + - ext4: prevent creating duplicate encrypted filenames + - f2fs: prevent creating duplicate encrypted filenames + - Bluetooth: Fix slab-out-of-bounds read in hci_le_direct_adv_report_evt() + - quota: Sanity-check quota file headers on load + - fs: quota: fix array-index-out-of-bounds bug by passing correct argument to + vfs_cleanup_quota_inode() + - media: msi2500: assign SPI bus number dynamically + - crypto: af_alg - avoid undefined behavior accessing salg_name + - nl80211: validate key indexes for cfg80211_registered_device + - md: fix a warning caused by a race between concurrent md_ioctl()s + - drm/gma500: fix double free of gma_connector + - drm/aspeed: Fix Kconfig warning & subsequent build errors + - drm/mcde: Fix handling of platform_get_irq() error + - drm/tve200: Fix handling of platform_get_irq() error + - arm64: dts: renesas: hihope-rzg2-ex: Drop rxc-skew-ps from ethernet-phy node + - arm64: dts: renesas: cat875: Remove rxc-skew-ps from ethernet-phy node + - soc: renesas: rmobile-sysc: Fix some leaks in rmobile_init_pm_domains() + - soc: mediatek: Check if power domains can be powered on at boot time + - arm64: dts: mediatek: mt8183: fix gce incorrect mbox-cells value + - arm64: dts: ipq6018: update the reserved-memory node + - soc: qcom: geni: More properly switch to DMA mode + - Revert "i2c: i2c-qcom-geni: Fix DMA transfer race" + - RDMA/bnxt_re: Set queue pair state when being queried + - rtc: pcf2127: fix pcf2127_nvmem_read/write() returns + - selinux: fix error initialization in inode_doinit_with_dentry() + - ARM: dts: aspeed-g6: Fix the GPIO memory size + - ARM: dts: aspeed: s2600wf: Fix VGA memory region location + - RDMA/core: Fix error return in _ib_modify_qp() + - RDMA/rxe: Compute PSN windows correctly + - x86/mm/ident_map: Check for errors from ident_pud_init() + - ARM: p2v: fix handling of LPAE translation in BE mode + - RDMA/rtrs-clt: Remove destroy_con_cq_qp in case route resolving failed + - RDMA/rtrs-clt: Missing error from rtrs_rdma_conn_established + - RDMA/rtrs-srv: Don't guard the whole __alloc_srv with srv_mutex + - x86/apic: Fix x2apic enablement without interrupt remapping + - sched/deadline: Fix sched_dl_global_validate() + - sched: Reenable interrupts in do_sched_yield() + - drm/amdgpu: fix incorrect enum type + - crypto: talitos - Endianess in current_desc_hdr() + - crypto: talitos - Fix return type of current_desc_hdr() + - crypto: inside-secure - Fix sizeof() mismatch + - ASoC: sun4i-i2s: Fix lrck_period computation for I2S justified mode + - ARM: dts: aspeed: tiogapass: Remove vuart + - drm/amdgpu: fix build_coefficients() argument + - powerpc/64: Set up a kernel stack for secondaries before cpu_restore() + - spi: img-spfi: fix reference leak in img_spfi_resume + - f2fs: call f2fs_get_meta_page_retry for nat page + - RDMA/mlx5: Fix corruption of reg_pages in mlx5_ib_rereg_user_mr() + - drm/msm/dsi_pll_10nm: restore VCO rate during restore_state + - spi: spi-mem: fix reference leak in spi_mem_access_start + - scsi: aacraid: Improve compat_ioctl handlers + - ASoC: pcm: DRAIN support reactivation + - drm/bridge: tpd12s015: Fix irq registering in tpd12s015_probe + - crypto: arm64/poly1305-neon - reorder PAC authentication with SP update + - selinux: fix inode_doinit_with_dentry() LABEL_INVALID error handling + - spi: stm32: fix reference leak in stm32_spi_resume + - x86/mce: Correct the detection of invalid notifier priorities + - drm/edid: Fix uninitialized variable in drm_cvt_modes() + - ath11k: Initialize complete alpha2 for regulatory change + - ath11k: Fix number of rules in filtered ETSI regdomain + - brcmfmac: Fix memory leak for unpaired brcmf_{alloc/free} + - arm64: dts: exynos: Include common syscon restart/poweroff for Exynos7 + - arm64: dts: exynos: Correct psci compatible used on Exynos7 + - drm/panel: simple: Add flags to boe_nv133fhm_n61 + - Bluetooth: Fix null pointer dereference in hci_event_packet() + - Bluetooth: hci_h5: fix memory leak in h5_close + - spi: stm32-qspi: fix reference leak in stm32 qspi operations + - spi: spi-ti-qspi: fix reference leak in ti_qspi_setup + - spi: mt7621: fix missing clk_disable_unprepare() on error in + mt7621_spi_probe + - spi: tegra20-slink: fix reference leak in slink ops of tegra20 + - spi: tegra20-sflash: fix reference leak in tegra_sflash_resume + - spi: tegra114: fix reference leak in tegra spi ops + - spi: bcm63xx-hsspi: fix missing clk_disable_unprepare() on error in + bcm63xx_hsspi_resume + - ASoC: qcom: common: Fix refcounting in qcom_snd_parse_of() + - mwifiex: fix mwifiex_shutdown_sw() causing sw reset failure + - selftest/bpf: Add missed ip6ip6 test back + - ASoC: wm8994: Fix PM disable depth imbalance on error + - ASoC: wm8998: Fix PM disable depth imbalance on error + - spi: sprd: fix reference leak in sprd_spi_remove + - ASoC: arizona: Fix a wrong free in wm8997_probe + - RDMa/mthca: Work around -Wenum-conversion warning + - ASoC: SOF: Intel: fix Kconfig dependency for SND_INTEL_DSP_CONFIG + - arm64: dts: ti: k3-am65*/j721e*: Fix unit address format error for dss node + - MIPS: BCM47XX: fix kconfig dependency bug for BCM47XX_BCMA + - drm/amdgpu: fix compute queue priority if num_kcq is less than 4 + - soc: ti: omap-prm: Do not check rstst bit on deassert if already deasserted + - crypto: Kconfig - CRYPTO_MANAGER_EXTRA_TESTS requires the manager + - crypto: qat - fix status check in qat_hal_put_rel_rd_xfer() + - drm/udl: Fix missing error code in udl_handle_damage() + - staging: greybus: codecs: Fix reference counter leak in error handling + - staging: gasket: interrupt: fix the missed eventfd_ctx_put() in + gasket_interrupt.c + - drm/amdkfd: Put ACPI table after using it + - media: tm6000: Fix sizeof() mismatches + - media: mtk-vcodec: add missing put_device() call in mtk_vcodec_init_dec_pm() + - media: mtk-vcodec: add missing put_device() call in + mtk_vcodec_release_dec_pm() + - media: mtk-vcodec: add missing put_device() call in mtk_vcodec_init_enc_pm() + - media: v4l2-fwnode: Return -EINVAL for invalid bus-type + - media: staging: rkisp1: cap: fix runtime PM imbalance on error + - media: cedrus: fix reference leak in cedrus_start_streaming + - media: platform: add missing put_device() call in mtk_jpeg_probe() and + mtk_jpeg_remove() + - media: venus: core: change clk enable and disable order in resume and + suspend + - media: venus: core: vote for video-mem path + - media: venus: core: vote with average bandwidth and peak bandwidth as zero + - RDMA/cma: Add missing error handling of listen_id + - ASoC: meson: fix COMPILE_TEST error + - scsi: core: Fix VPD LUN ID designator priorities + - media: venus: put dummy vote on video-mem path after last session release + - media: solo6x10: fix missing snd_card_free in error handling case + - video: fbdev: atmel_lcdfb: fix return error code in atmel_lcdfb_of_init() + - mmc: sdhci: tegra: fix wrong unit with busy_timeout + - drm/omap: dmm_tiler: fix return error code in omap_dmm_probe() + - drm/meson: Free RDMA resources after tearing down DRM + - drm/meson: Unbind all connectors on module removal + - drm/meson: dw-hdmi: Register a callback to disable the regulator + - drm/meson: dw-hdmi: Ensure that clocks are enabled before touching the TOP + registers + - iommu/vt-d: include conditionally on CONFIG_INTEL_IOMMU_SVM + - Input: ads7846 - fix race that causes missing releases + - Input: ads7846 - fix integer overflow on Rt calculation + - Input: ads7846 - fix unaligned access on 7845 + - bus: mhi: core: Remove double locking from mhi_driver_remove() + - bus: mhi: core: Fix null pointer access when parsing MHI configuration + - usb/max3421: fix return error code in max3421_probe() + - spi: mxs: fix reference leak in mxs_spi_probe + - selftests/bpf: Fix broken riscv build + - powerpc: Avoid broken GCC __attribute__((optimize)) + - powerpc/feature: Fix CPU_FTRS_ALWAYS by removing CPU_FTRS_GENERIC_32 + - ARM: dts: tacoma: Fix node vs reg mismatch for flash memory + - Revert "powerpc/pseries/hotplug-cpu: Remove double free in error path" + - mfd: htc-i2cpld: Add the missed i2c_put_adapter() in + htcpld_register_chip_i2c() + - EDAC/mce_amd: Use struct cpuinfo_x86.cpu_die_id for AMD NodeId + - scsi: ufs: Avoid to call REQ_CLKS_OFF to CLKS_OFF + - scsi: ufs: Fix clkgating on/off + - rcu: Allow rcu_irq_enter_check_tick() from NMI + - rcu,ftrace: Fix ftrace recursion + - crypto: crypto4xx - Replace bitwise OR with logical OR in crypto4xx_build_pd + - crypto: omap-aes - Fix PM disable depth imbalance in omap_aes_probe + - spi: fix resource leak for drivers without .remove callback + - drm/meson: dw-hdmi: Disable clocks on driver teardown + - drm/meson: dw-hdmi: Enable the iahb clock early enough + - PCI: Disable MSI for Pericom PCIe-USB adapter + - PCI: brcmstb: Initialize "tmp" before use + - soc: ti: knav_qmss: fix reference leak in knav_queue_probe + - soc: ti: Fix reference imbalance in knav_dma_probe + - drivers: soc: ti: knav_qmss_queue: Fix error return code in knav_queue_probe + - soc: qcom: initialize local variable + - arm64: dts: qcom: sm8250: correct compatible for sm8250-mtp + - arm64: dts: qcom: msm8916-samsung-a2015: Disable muic i2c pin bias + - Input: omap4-keypad - fix runtime PM error handling + - clk: meson: Kconfig: fix dependency for G12A + - ath11k: Fix the rx_filter flag setting for peer rssi stats + - RDMA/cxgb4: Validate the number of CQEs + - soundwire: Fix DEBUG_LOCKS_WARN_ON for uninitialized attribute + - memstick: fix a double-free bug in memstick_check + - ARM: dts: at91: sam9x60: add pincontrol for USB Host + - ARM: dts: at91: sama5d4_xplained: add pincontrol for USB Host + - ARM: dts: at91: sama5d3_xplained: add pincontrol for USB Host + - mmc: pxamci: Fix error return code in pxamci_probe + - brcmfmac: fix error return code in brcmf_cfg80211_connect() + - orinoco: Move context allocation after processing the skb + - qtnfmac: fix error return code in qtnf_pcie_probe() + - rsi: fix error return code in rsi_reset_card() + - cw1200: fix missing destroy_workqueue() on error in cw1200_init_common + - dmaengine: mv_xor_v2: Fix error return code in mv_xor_v2_probe() + - arm64: dts: qcom: sdm845: Limit ipa iommu streams + - leds: netxbig: add missing put_device() call in netxbig_leds_get_of_pdata() + - arm64: tegra: Fix DT binding for IO High Voltage entry + - RDMA/cma: Fix deadlock on &lock in rdma_cma_listen_on_all() error unwind + - media: siano: fix memory leak of debugfs members in smsdvb_hotplug + - platform/x86: mlx-platform: Remove PSU EEPROM from default platform + configuration + - platform/x86: mlx-platform: Remove PSU EEPROM from MSN274x platform + configuration + - arm64: dts: qcom: sc7180: limit IPA iommu streams + - RDMA/hns: Avoid setting loopback indicator when smac is same as dmac + - serial: 8250-mtk: Fix reference leak in mtk8250_probe + - samples: bpf: Fix lwt_len_hist reusing previous BPF map + - media: imx214: Fix stop streaming + - mips: cdmm: fix use-after-free in mips_cdmm_bus_discover + - media: max2175: fix max2175_set_csm_mode() error code + - slimbus: qcom-ngd-ctrl: Avoid sending power requests without QMI + - drm/mediatek: Use correct aliases name for ovl + - HSI: omap_ssi: Don't jump to free ID in ssi_add_controller() + - ARM: dts: Remove non-existent i2c1 from 98dx3236 + - arm64: dts: armada-3720-turris-mox: update ethernet-phy handle name + - power: supply: bq25890: Use the correct range for IILIM register + - arm64: dts: rockchip: Set dr_mode to "host" for OTG on rk3328-roc-cc + - power: supply: max17042_battery: Fix current_{avg,now} hiding with no + current sense + - power: supply: axp288_charger: Fix HP Pavilion x2 10 DMI matching + - power: supply: bq24190_charger: fix reference leak + - genirq/irqdomain: Don't try to free an interrupt that has no mapping + - arm64: dts: ls1028a: fix ENETC PTP clock input + - arm64: dts: ls1028a: fix FlexSPI clock input + - arm64: dts: freescale: sl28: combine SPI MTD partitions + - phy: tegra: xusb: Fix usb_phy device driver field + - arm64: dts: qcom: c630: Polish i2c-hid devices + - arm64: dts: qcom: c630: Fix pinctrl pins properties + - PCI: Bounds-check command-line resource alignment requests + - PCI: Fix overflow in command-line resource alignment requests + - PCI: iproc: Fix out-of-bound array accesses + - PCI: iproc: Invalidate correct PAXB inbound windows + - arm64: dts: meson: fix spi-max-frequency on Khadas VIM2 + - arm64: dts: meson-sm1: fix typo in opp table + - soc: amlogic: canvas: add missing put_device() call in meson_canvas_get() + - scsi: pm80xx: Do not sleep in atomic context + - spi: spi-fsl-dspi: Use max_native_cs instead of num_chipselect to set + SPI_MCR + - ARM: dts: at91: at91sam9rl: fix ADC triggers + - RDMA/hns: Fix 0-length sge calculation error + - RDMA/hns: Bugfix for calculation of extended sge + - platform/x86: dell-smbios-base: Fix error return code in dell_smbios_init + - media: i2c: imx219: Selection compliance fixes + - ath11k: Fix an error handling path + - ath10k: Fix the parsing error in service available event + - ath10k: Fix an error handling path + - ath10k: Release some resources in an error handling path + - SUNRPC: rpc_wake_up() should wake up tasks in the correct order + - NFSv4.2: condition READDIR's mask for security label based on LSM state + - SUNRPC: xprt_load_transport() needs to support the netid "rdma6" + - NFSv4: Fix the alignment of page data in the getdeviceinfo reply + - net: sunrpc: Fix 'snprintf' return value check in 'do_xprt_debugfs' + - lockd: don't use interval-based rebinding over TCP + - NFS: switch nfsiod to be an UNBOUND workqueue. + - selftests/seccomp: Update kernel config + - vfio-pci: Use io_remap_pfn_range() for PCI IO memory + - hwmon: (ina3221) Fix PM usage counter unbalance in ina3221_write_enable + - media: tvp5150: Fix wrong return value of tvp5150_parse_dt() + - media: saa7146: fix array overflow in vidioc_s_audio() + - powerpc/perf: Fix crash with is_sier_available when pmu is not set + - powerpc/64: Fix an EMIT_BUG_ENTRY in head_64.S + - powerpc/xmon: Fix build failure for 8xx + - powerpc/perf: Fix the PMU group constraints for threshold events in power10 + - clocksource/drivers/orion: Add missing clk_disable_unprepare() on error path + - clocksource/drivers/cadence_ttc: Fix memory leak in ttc_setup_clockevent() + - clocksource/drivers/ingenic: Fix section mismatch + - iio: hrtimer-trigger: Mark hrtimer to expire in hard interrupt context + - libbpf: Sanitise map names before pinning + - ARM: dts: at91: sam9x60ek: remove bypass property + - ARM: dts: at91: sama5d2: map securam as device + - bpf: Fix bpf_put_raw_tracepoint()'s use of __module_address() + - selftests/bpf: Fix invalid use of strncat in test_sockmap + - pinctrl: falcon: add missing put_device() call in pinctrl_falcon_probe() + - arm64: dts: rockchip: Fix UART pull-ups on rk3328 + - memstick: r592: Fix error return in r592_probe() + - MIPS: Don't round up kernel sections size for memblock_add() + - mt76: mt7915: set fops_sta_stats.owner to THIS_MODULE + - mt76: set fops_tx_stats.owner to THIS_MODULE + - net/mlx5: Properly convey driver version to firmware + - mt76: fix memory leak if device probing fails + - mt76: fix tkip configuration for mt7615/7663 devices + - ASoC: jz4740-i2s: add missed checks for clk_get() + - dm ioctl: fix error return code in target_message + - ASoC: cros_ec_codec: fix uninitialized memory read + - ASoC: qcom: fix QDSP6 dependencies, attempt #3 + - phy: renesas: rcar-gen3-usb2: disable runtime pm in case of failure + - memory: jz4780_nemc: Fix potential NULL dereference in jz4780_nemc_probe() + - clocksource/drivers/arm_arch_timer: Use stable count reader in erratum sne + - clocksource/drivers/arm_arch_timer: Correct fault programming of + CNTKCTL_EL1.EVNTI + - cpufreq: ap806: Add missing MODULE_DEVICE_TABLE + - cpufreq: highbank: Add missing MODULE_DEVICE_TABLE + - cpufreq: mediatek: Add missing MODULE_DEVICE_TABLE + - cpufreq: qcom: Add missing MODULE_DEVICE_TABLE + - cpufreq: st: Add missing MODULE_DEVICE_TABLE + - cpufreq: sun50i: Add missing MODULE_DEVICE_TABLE + - cpufreq: loongson1: Add missing MODULE_ALIAS + - cpufreq: scpi: Add missing MODULE_ALIAS + - cpufreq: vexpress-spc: Add missing MODULE_ALIAS + - Bluetooth: btusb: Add the missed release_firmware() in + btusb_mtk_setup_firmware() + - Bluetooth: btmtksdio: Add the missed release_firmware() in + mtk_setup_firmware() + - block/rnbd-clt: Dynamically alloc buffer for pathname & blk_symlink_name + - block/rnbd: fix a null pointer dereference on dev->blk_symlink_name + - Bluetooth: btusb: Fix detection of some fake CSR controllers with a + bcdDevice val of 0x0134 + - mtd: spi-nor: sst: fix BPn bits for the SST25VF064C + - mtd: spi-nor: ignore errors in spi_nor_unlock_all() + - mtd: spi-nor: atmel: remove global protection flag + - mtd: spi-nor: atmel: fix unlock_all() for AT25FS010/040 + - arm64: dts: meson: g12b: odroid-n2: fix PHY deassert timing requirements + - arm64: dts: meson: fix PHY deassert timing requirements + - ARM: dts: meson: fix PHY deassert timing requirements + - arm64: dts: meson: g12a: x96-max: fix PHY deassert timing requirements + - arm64: dts: meson: g12b: w400: fix PHY deassert timing requirements + - clk: fsl-sai: fix memory leak + - scsi: qedi: Fix missing destroy_workqueue() on error in __qedi_probe + - scsi: pm80xx: Fix error return in pm8001_pci_probe() + - scsi: iscsi: Fix inappropriate use of put_device() + - seq_buf: Avoid type mismatch for seq_buf_init + - scsi: fnic: Fix error return code in fnic_probe() + - platform/x86: mlx-platform: Fix item counter assignment for MSN2700, MSN24xx + systems + - platform/x86: mlx-platform: Fix item counter assignment for MSN2700/ComEx + system + - ARM: 9030/1: entry: omit FP emulation for UND exceptions taken in kernel + mode + - powerpc/pseries/hibernation: drop pseries_suspend_begin() from suspend ops + - powerpc/pseries/hibernation: remove redundant cacheinfo update + - powerpc/powermac: Fix low_sleep_handler with CONFIG_VMAP_STACK + - drm/mediatek: avoid dereferencing a null hdmi_phy on an error message + - ASoC: amd: change clk_get() to devm_clk_get() and add missed checks + - ASoC: max98390: Fix error codes in max98390_dsm_init() + - powerpc/mm: sanity_check_fault() should work for all, not only BOOK3S + - usb: ehci-omap: Fix PM disable depth umbalance in ehci_hcd_omap_probe + - usb: oxu210hp-hcd: Fix memory leak in oxu_create + - speakup: fix uninitialized flush_lock + - nfsd: Fix message level for normal termination + - NFSD: Fix 5 seconds delay when doing inter server copy + - nfs_common: need lock during iterate through the list + - x86/kprobes: Restore BTF if the single-stepping is cancelled + - scsi: qla2xxx: Fix N2N and NVMe connect retry failure + - platform/chrome: cros_ec_spi: Don't overwrite spi::mode + - misc: pci_endpoint_test: fix return value of error branch + - bus: fsl-mc: fix error return code in fsl_mc_object_allocate() + - s390/cio: fix use-after-free in ccw_device_destroy_console + - iwlwifi: dbg-tlv: fix old length in is_trig_data_contained() + - iwlwifi: mvm: hook up missing RX handlers + - erofs: avoid using generic_block_bmap + - can: m_can: m_can_config_endisable(): remove double clearing of clock stop + request bit + - powerpc/sstep: Emulate prefixed instructions only when CPU_FTR_ARCH_31 is + set + - powerpc/sstep: Cover new VSX instructions under CONFIG_VSX + - slimbus: qcom: fix potential NULL dereference in qcom_slim_prg_slew() + - RDMA/core: Do not indicate device ready when device enablement fails + - remoteproc: q6v5-mss: fix error handling in q6v5_pds_enable + - remoteproc: qcom: fix reference leak in adsp_start + - remoteproc: qcom: pas: fix error handling in adsp_pds_enable + - remoteproc: qcom: Fix potential NULL dereference in adsp_init_mmio() + - clk: qcom: gcc-sc7180: Use floor ops for sdcc clks + - clk: tegra: Fix duplicated SE clock entry + - mtd: rawnand: gpmi: fix reference count leak in gpmi ops + - mtd: rawnand: meson: Fix a resource leak in init + - mtd: rawnand: gpmi: Fix the random DMA timeout issue + - samples/bpf: Fix possible hang in xdpsock with multiple threads + - fs: Handle I_DONTCACHE in iput_final() instead of generic_drop_inode() + - extcon: max77693: Fix modalias string + - crypto: atmel-i2c - select CONFIG_BITREVERSE + - mac80211: don't set set TDLS STA bandwidth wider than possible + - ASoC: wm_adsp: remove "ctl" from list on error in wm_adsp_create_control() + - irqchip/alpine-msi: Fix freeing of interrupts on allocation error path + - RDMA/hns: Limit the length of data copied between kernel and userspace + - gpiolib: irq hooks: fix recursion in gpiochip_irq_unmask + - irqchip/qcom-pdc: Fix phantom irq when changing between rising/falling + - watchdog: armada_37xx: Add missing dependency on HAS_IOMEM + - watchdog: sirfsoc: Add missing dependency on HAS_IOMEM + - watchdog: sprd: remove watchdog disable from resume fail path + - watchdog: sprd: check busy bit before new loading rather than after that + - watchdog: Fix potential dereferencing of null pointer + - ubifs: Fix error return code in ubifs_init_authentication() + - um: Monitor error events in IRQ controller + - um: tty: Fix handling of close in tty lines + - um: chan_xterm: Fix fd leak + - sunrpc: fix xs_read_xdr_buf for partial pages receive + - RDMA/mlx5: Fix MR cache memory leak + - RDMA/cma: Don't overwrite sgid_attr after device is released + - nfc: s3fwrn5: Release the nfc firmware + - powerpc/perf: Fix Threshold Event Counter Multiplier width for P10 + - powerpc/ps3: use dma_mapping_error() + - mm/gup: combine put_compound_head() and unpin_user_page() + - mm/rmap: always do TTU_IGNORE_ACCESS + - sparc: fix handling of page table constructor failure + - mm/vmalloc: Fix unlock order in s_stop() + - mm/vmalloc.c: fix kasan shadow poisoning size + - mm,memory_failure: always pin the page in madvise_inject_error + - hugetlb: fix an error code in hugetlb_reserve_pages() + - mm: don't wake kswapd prematurely when watermark boosting is disabled + - proc: fix lookup in /proc/net subdirectories after setns(2) + - checkpatch: fix unescaped left brace + - s390/test_unwind: fix CALL_ON_STACK tests + - lan743x: fix rx_napi_poll/interrupt ping-pong + - ice, xsk: clear the status bits for the next_to_use descriptor + - i40e, xsk: clear the status bits for the next_to_use descriptor + - net: dsa: qca: ar9331: fix sleeping function called from invalid context bug + - net: bcmgenet: Fix a resource leak in an error handling path in the probe + functin + - net: allwinner: Fix some resources leak in the error handling path of the + probe and in the remove function + - block/rnbd-clt: Get rid of warning regarding size argument in strlcpy + - block/rnbd-clt: Fix possible memleak + - NFS/pNFS: Fix a typo in ff_layout_resend_pnfs_read() + - net: korina: fix return value + - libnvdimm/label: Return -ENXIO for no slot in __blk_label_update + - powerpc/32s: Fix cleanup_cpu_mmu_context() compile bug + - watchdog: qcom: Avoid context switch in restart handler + - watchdog: coh901327: add COMMON_CLK dependency + - clk: ti: Fix memleak in ti_fapll_synth_setup + - pwm: zx: Add missing cleanup in error path + - pwm: lp3943: Dynamically allocate PWM chip base + - pwm: imx27: Fix overflow for bigger periods + - pwm: sun4i: Remove erroneous else branch + - tools build: Add missing libcap to test-all.bin target + - perf record: Fix memory leak when using '--user-regs=?' to list registers + - qlcnic: Fix error code in probe + - nfp: move indirect block cleanup to flower app stop callback + - virtio_ring: Cut and paste bugs in vring_create_virtqueue_packed() + - virtio_net: Fix error code in probe() + - virtio_ring: Fix two use after free bugs + - vhost scsi: fix error return code in vhost_scsi_set_endpoint() + - epoll: check for events when removing a timed out thread from the wait queue + - clk: at91: sam9x60: remove atmel,osc-bypass support + - clk: s2mps11: Fix a resource leak in error handling paths in the probe + function + - clk: sunxi-ng: Make sure divider tables have sentinel + - kconfig: fix return value of do_error_if() + - powerpc/smp: Add __init to init_big_cores() + - ARM: 9044/1: vfp: use undef hook for VFP support detection + - perf probe: Fix memory leak when synthesizing SDT probes + - io_uring: cancel reqs shouldn't kill overflow list + - Smack: Handle io_uring kernel thread privileges + - io_uring: fix io_cqring_events()'s noflush + - vfio/pci: Move dummy_resources_list init in vfio_pci_probe() + - vfio/pci/nvlink2: Do not attempt NPU2 setup on POWER8NVL NPU + - media: gspca: Fix memory leak in probe + - io_uring: fix io_wqe->work_list corruption + - io_uring: fix 0-iov read buffer select + - io_uring: fix ignoring xa_store errors + - io_uring: make ctx cancel on exit targeted to actual ctx + - media: sunxi-cir: ensure IR is handled when it is continuous + - media: netup_unidvb: Don't leak SPI master in probe error path + - media: ipu3-cio2: Remove traces of returned buffers + - media: ipu3-cio2: Return actual subdev format + - media: ipu3-cio2: Serialise access to pad format + - media: ipu3-cio2: Validate mbus format in setting subdev format + - media: ipu3-cio2: Make the field on subdev format V4L2_FIELD_NONE + - Input: cyapa_gen6 - fix out-of-bounds stack access + - ALSA: hda/ca0132 - Change Input Source enum strings. + - Revert "ACPI / resources: Use AE_CTRL_TERMINATE to terminate resources + walks" + - ACPI: PNP: compare the string length in the matching_id() + - ALSA: hda: Fix regressions on clear and reconfig sysfs + - ALSA: hda/ca0132 - Fix AE-5 rear headphone pincfg. + - ALSA: hda/realtek: make bass spk volume adjustable on a yoga laptop + - ALSA: hda/realtek - Enable headset mic of ASUS X430UN with ALC256 + - ALSA: hda/realtek - Enable headset mic of ASUS Q524UQK with ALC255 + - ALSA: hda/realtek - Add supported for more Lenovo ALC285 Headset Button + - ALSA: pcm: oss: Fix a few more UBSAN fixes + - ALSA/hda: apply jack fixup for the Acer Veriton N4640G/N6640G/N2510G + - ALSA: hda/realtek: Add quirk for MSI-GP73 + - ALSA: hda/realtek: Apply jack fixup for Quanta NL3 + - ALSA: hda/realtek: Remove dummy lineout on Acer TravelMate P648/P658 + - ALSA: hda/realtek - Supported Dell fixed type headset + - ALSA: usb-audio: Add VID to support native DSD reproduction on FiiO devices + - ALSA: usb-audio: Disable sample read check if firmware doesn't give back + - ALSA: core: memalloc: add page alignment for iram + - s390/smp: perform initial CPU reset also for SMT siblings + - s390/kexec_file: fix diag308 subcode when loading crash kernel + - s390/idle: add missing mt_cycles calculation + - s390/idle: fix accounting with machine checks + - s390/dasd: fix hanging device offline processing + - s390/dasd: prevent inconsistent LCU device data + - s390/dasd: fix list corruption of pavgroup group list + - s390/dasd: fix list corruption of lcu list + - binder: add flag to clear buffer on txn complete + - ASoC: cx2072x: Fix doubly definitions of Playback and Capture streams + - ASoC: AMD Renoir - add DMI table to avoid the ACP mic probe (broken BIOS) + - ASoC: AMD Raven/Renoir - fix the PCI probe (PCI revision) + - staging: comedi: mf6x4: Fix AI end-of-conversion detection + - z3fold: simplify freeing slots + - z3fold: stricter locking and more careful reclaim + - perf/x86/intel: Add event constraint for CYCLE_ACTIVITY.STALLS_MEM_ANY + - perf/x86/intel: Fix rtm_abort_event encoding on Ice Lake + - powerpc/perf: Exclude kernel samples while counting events in user space. + - cpufreq: intel_pstate: Use most recent guaranteed performance values + - crypto: ecdh - avoid unaligned accesses in ecdh_set_secret() + - crypto: arm/aes-ce - work around Cortex-A57/A72 silion errata + - m68k: Fix WARNING splat in pmac_zilog driver + - EDAC/i10nm: Use readl() to access MMIO registers + - EDAC/amd64: Fix PCI component registration + - cpuset: fix race between hotplug work and later CPU offline + - USB: serial: mos7720: fix parallel-port state restore + - USB: serial: digi_acceleport: fix write-wakeup deadlocks + - USB: serial: keyspan_pda: fix dropped unthrottle interrupts + - USB: serial: keyspan_pda: fix write deadlock + - USB: serial: keyspan_pda: fix stalled writes + - USB: serial: keyspan_pda: fix write-wakeup use-after-free + - USB: serial: keyspan_pda: fix tx-unthrottle use-after-free + - USB: serial: keyspan_pda: fix write unthrottling + - btrfs: do not shorten unpin len for caching block groups + - btrfs: update last_byte_to_unpin in switch_commit_roots + - btrfs: fix race when defragmenting leads to unnecessary IO + - ext4: fix a memory leak of ext4_free_data + - ext4: fix deadlock with fs freezing and EA inodes + - ext4: don't remount read-only with errors=continue on reboot + - arm64: dts: ti: k3-am65: mark dss as dma-coherent + - KVM: arm64: Introduce handling of AArch32 TTBCR2 traps + - KVM: x86: reinstate vendor-agnostic check on SPEC_CTRL cpuid bits + - KVM: SVM: Remove the call to sev_platform_status() during setup + - ARM: dts: pandaboard: fix pinmux for gpio user button of Pandaboard ES + - ARM: dts: at91: sama5d2: fix CAN message ram offset and size + - ARM: tegra: Populate OPP table for Tegra20 Ventana + - xprtrdma: Fix XDRBUF_SPARSE_PAGES support + - powerpc/32: Fix vmap stack - Properly set r1 before activating MMU on + syscall too + - powerpc: Fix incorrect stw{, ux, u, x} instructions in __set_pte_at + - powerpc/rtas: Fix typo of ibm,open-errinjct in RTAS filter + - powerpc/bitops: Fix possible undefined behaviour with fls() and fls64() + - powerpc/feature: Add CPU_FTR_NOEXECUTE to G2_LE + - powerpc/xmon: Change printk() to pr_cont() + - powerpc/8xx: Fix early debug when SMC1 is relocated + - powerpc/mm: Fix verification of MMU_FTR_TYPE_44x + - powerpc/powernv/npu: Do not attempt NPU2 setup on POWER8NVL NPU + - powerpc/powernv/memtrace: Don't leak kernel memory to user space + - powerpc/powernv/memtrace: Fix crashing the kernel when enabling concurrently + - ima: Don't modify file descriptor mode on the fly + - um: Remove use of asprinf in umid.c + - um: Fix time-travel mode + - ceph: fix race in concurrent __ceph_remove_cap invocations + - SMB3: avoid confusing warning message on mount to Azure + - SMB3.1.1: remove confusing mount warning when no SPNEGO info on negprot rsp + - SMB3.1.1: do not log warning message if server doesn't populate salt + - ubifs: wbuf: Don't leak kernel memory to flash + - jffs2: Fix GC exit abnormally + - jffs2: Fix ignoring mounting options problem during remounting + - jfs: Fix array index bounds check in dbAdjTree + - drm/panfrost: Fix job timeout handling + - platform/x86: mlx-platform: remove an unused variable + - drm/dp_aux_dev: check aux_dev before use in drm_dp_aux_dev_get_by_minor() + - drm/i915: Fix mismatch between misplaced vma check and vma insert + - iio: ad_sigma_delta: Don't put SPI transfer buffer on the stack + - spi: pxa2xx: Fix use-after-free on unbind + - spi: spi-sh: Fix use-after-free on unbind + - spi: atmel-quadspi: Fix use-after-free on unbind + - spi: spi-mtk-nor: Don't leak SPI master in probe error path + - spi: ar934x: Don't leak SPI master in probe error path + - spi: davinci: Fix use-after-free on unbind + - spi: fsl: fix use of spisel_boot signal on MPC8309 + - spi: gpio: Don't leak SPI master in probe error path + - spi: mxic: Don't leak SPI master in probe error path + - spi: npcm-fiu: Disable clock in probe error path + - spi: pic32: Don't leak DMA channels in probe error path + - spi: rb4xx: Don't leak SPI master in probe error path + - spi: sc18is602: Don't leak SPI master in probe error path + - spi: spi-geni-qcom: Fix use-after-free on unbind + - spi: spi-qcom-qspi: Fix use-after-free on unbind + - spi: st-ssc4: Fix unbalanced pm_runtime_disable() in probe error path + - spi: synquacer: Disable clock in probe error path + - spi: mt7621: Disable clock in probe error path + - spi: mt7621: Don't leak SPI master in probe error path + - spi: atmel-quadspi: Disable clock in probe error path + - spi: atmel-quadspi: Fix AHB memory accesses + - soc: qcom: smp2p: Safely acquire spinlock without IRQs + - mtd: parser: cmdline: Fix parsing of part-names with colons + - mtd: core: Fix refcounting for unpartitioned MTDs + - mtd: rawnand: qcom: Fix DMA sync on FLASH_STATUS register read + - mtd: rawnand: meson: fix meson_nfc_dma_buffer_release() arguments + - scsi: qla2xxx: Fix crash during driver load on big endian machines + - scsi: lpfc: Fix invalid sleeping context in lpfc_sli4_nvmet_alloc() + - scsi: lpfc: Re-fix use after free in lpfc_rq_buf_free() + - openat2: reject RESOLVE_BENEATH|RESOLVE_IN_ROOT + - iio: buffer: Fix demux update + - iio: adc: rockchip_saradc: fix missing clk_disable_unprepare() on error in + rockchip_saradc_resume + - iio: imu: st_lsm6dsx: fix edge-trigger interrupts + - iio:light:rpr0521: Fix timestamp alignment and prevent data leak. + - iio:light:st_uvis25: Fix timestamp alignment and prevent data leak. + - iio:magnetometer:mag3110: Fix alignment and data leak issues. + - iio:pressure:mpl3115: Force alignment of buffer + - iio:imu:bmi160: Fix too large a buffer. + - iio:imu:bmi160: Fix alignment and data leak issues + - iio:adc:ti-ads124s08: Fix buffer being too long. + - iio:adc:ti-ads124s08: Fix alignment and data leak issues. + - md/cluster: block reshape with remote resync job + - md/cluster: fix deadlock when node is doing resync job + - pinctrl: sunxi: Always call chained_irq_{enter, exit} in + sunxi_pinctrl_irq_handler + - clk: ingenic: Fix divider calculation with div tables + - clk: mvebu: a3700: fix the XTAL MODE pin to MPP1_9 + - clk: tegra: Do not return 0 on failure + - device-dax/core: Fix memory leak when rmmod dax.ko + - dma-buf/dma-resv: Respect num_fences when initializing the shared fence + list. + - driver: core: Fix list corruption after device_del() + - xen-blkback: set ring->xenblkd to NULL after kthread_stop() + - xen/xenbus: Allow watches discard events before queueing + - xen/xenbus: Add 'will_handle' callback support in xenbus_watch_path() + - xen/xenbus/xen_bus_type: Support will_handle watch callback + - xen/xenbus: Count pending messages for each watch + - xenbus/xenbus_backend: Disallow pending watch messages + - libnvdimm/namespace: Fix reaping of invalidated block-window-namespace + labels + - platform/x86: intel-vbtn: Allow switch events on Acer Switch Alpha 12 + - tracing: Disable ftrace selftests when any tracer is running + - mt76: add back the SUPPORTS_REORDERING_BUFFER flag + - of: fix linker-section match-table corruption + - PCI: Fix pci_slot_release() NULL pointer dereference + - regulator: axp20x: Fix DLDO2 voltage control register mask for AXP22x + - remoteproc: sysmon: Ensure remote notification ordering + - thermal/drivers/cpufreq_cooling: Update cpufreq_state only if state has + changed + - rtc: ep93xx: Fix NULL pointer dereference in ep93xx_rtc_read_time + - Revert: "ring-buffer: Remove HAVE_64BIT_ALIGNED_ACCESS" + - null_blk: Fix zone size initialization + - null_blk: Fail zone append to conventional zones + - drm/edid: fix objtool warning in drm_cvt_modes() + - x86/CPU/AMD: Save AMD NodeId as cpu_die_id + - ARM: dts: sun7i: bananapi: Enable RGMII RX/TX delay on Ethernet PHY + - ARM: dts: sun8i: r40: bananapi-m2-berry: Fix dcdc1 regulator + - ARM: dts: sun8i: v40: bananapi-m2-berry: Fix ethernet node + - pinctrl: merrifield: Set default bias in case no particular value given + - pinctrl: baytrail: Avoid clearing debounce value when turning it off + - ARM: dts: sun8i: v3s: fix GIC node memory range + - ARM: dts: sun7i: pcduino3-nano: enable RGMII RX/TX delay on PHY + - ARM: dts: imx6qdl-wandboard-revd1: Remove PAD_GPIO_6 from enetgrp + - ARM: dts: imx6qdl-kontron-samx6i: fix I2C_PM scl pin + - gpio: zynq: fix reference leak in zynq_gpio functions + - gpio: mvebu: fix potential user-after-free on probe + - scsi: bnx2i: Requires MMU + - xsk: Replace datagram_poll by sock_poll_wait + - can: softing: softing_netdev_open(): fix error handling + - clk: renesas: r9a06g032: Drop __packed for portability + - pinctrl: aspeed: Fix GPIO requests on pass-through banks + - netfilter: x_tables: Switch synchronization to RCU + - netfilter: nft_compat: make sure xtables destructors have run + - netfilter: nft_dynset: fix timeouts later than 23 days + - afs: Fix memory leak when mounting with multiple source parameters + - gpio: eic-sprd: break loop when getting NULL device resource + - netfilter: nft_ct: Remove confirmation check for NFT_CT_ID + - selftests/bpf/test_offload.py: Reset ethtool features after failed setting + - RDMA/cm: Fix an attempt to use non-valid pointer when cleaning timewait + - i40e: optimise prefetch page refcount + - i40e: avoid premature Rx buffer reuse + - ixgbe: avoid premature Rx buffer reuse + - selftests: fix poll error in udpgro.sh + - net: mvpp2: add mvpp2_phylink_to_port() helper + - drm/tegra: replace idr_init() by idr_init_base() + - kernel/cpu: add arch override for clear_tasks_mm_cpumask() mm handling + - drm/tegra: sor: Disable clocks on error in tegra_sor_init() + - habanalabs: put devices before driver removal + - arm64: syscall: exit userspace before unmasking exceptions + - vxlan: Add needed_headroom for lower device + - vxlan: Copy needed_tailroom from lowerdev + - scsi: mpt3sas: Increase IOCInit request timeout to 30s + - dm table: Remove BUG_ON(in_interrupt()) + - iwlwifi: pcie: add one missing entry for AX210 + - drm/amd/display: Init clock value by current vbios CLKs + - perf/x86/intel: Check PEBS status correctly + - kbuild: avoid split lines in .mod files + - ARM: sunxi: Add machine match for the Allwinner V3 SoC + - cfg80211: initialize rekey_data + - fix namespaced fscaps when !CONFIG_SECURITY + - lwt: Disable BH too in run_lwt_bpf() + - drm/amd/display: Prevent bandwidth overflow + - drm/amdkfd: Fix leak in dmabuf import + - Input: cros_ec_keyb - send 'scancodes' in addition to key events + - initramfs: fix clang build failure + - Input: goodix - add upside-down quirk for Teclast X98 Pro tablet + * Groovy update: upstream stable patchset 2021-01-13 (LP: #1911476) + - Kbuild: do not emit debug info for assembly with LLVM_IAS=1 + - mm/zsmalloc.c: drop ZSMALLOC_PGTABLE_MAPPING + - [Config] updateconfigs for ZSMALLOC_PGTABLE_MAPPING + - kprobes: Remove NMI context check + - kprobes: Tell lockdep about kprobe nesting + - ASoC: Intel: bytcr_rt5640: Fix HP Pavilion x2 Detachable quirks + - tools/bootconfig: Fix to check the write failure correctly + - net, xsk: Avoid taking multiple skbuff references + - bpftool: Fix error return value in build_btf_type_table + - vhost-vdpa: fix page pinning leakage in error path (rework) + - powerpc/64s: Fix hash ISA v3.0 TLBIEL instruction generation + - batman-adv: Consider fragmentation for needed_headroom + - batman-adv: Reserve needed_*room for fragments + - batman-adv: Don't always reallocate the fragmentation skb head + - ipvs: fix possible memory leak in ip_vs_control_net_init + - ibmvnic: handle inconsistent login with reset + - ibmvnic: stop free_all_rwi on failed reset + - ibmvnic: avoid memset null scrq msgs + - ibmvnic: delay next reset if hard reset fails + - ibmvnic: track pending login + - ibmvnic: send_login should check for crq errors + - ibmvnic: reduce wait for completion time + - drm/rockchip: Avoid uninitialized use of endpoint id in LVDS + - drm/panel: sony-acx565akm: Fix race condition in probe + - can: m_can: tcan4x5x_can_probe(): fix error path: remove erroneous + clk_disable_unprepare() + - can: sja1000: sja1000_err(): don't count arbitration lose as an error + - can: sun4i_can: sun4i_can_err(): don't count arbitration lose as an error + - can: c_can: c_can_power_up(): fix error handling + - can: kvaser_pciefd: kvaser_pciefd_open(): fix error handling + - samples/ftrace: Mark my_tramp[12]? global + - scsi: storvsc: Fix error return in storvsc_probe() + - net: broadcom CNIC: requires MMU + - iwlwifi: pcie: invert values of NO_160 device config entries + - perf/x86/intel: Fix a warning on x86_pmu_stop() with large PEBS + - zlib: export S390 symbols for zlib modules + - phy: usb: Fix incorrect clearing of tca_drv_sel bit in SETUP reg for 7211 + - arm64: dts: rockchip: Remove system-power-controller from pmic on Odroid Go + Advance + - iwlwifi: pcie: limit memory read spin time + - arm64: dts: rockchip: Assign a fixed index to mmc devices on rk3399 boards. + - arm64: dts: rockchip: Reorder LED triggers from mmc devices on rk3399-roc- + pc. + - iwlwifi: sta: set max HE max A-MPDU according to HE capa + - iwlwifi: pcie: set LTR to avoid completion timeout + - iwlwifi: mvm: fix kernel panic in case of assert during CSA + - powerpc: Drop -me200 addition to build flags + - arm64: dts: broadcom: clear the warnings caused by empty dma-ranges + - ARC: stack unwinding: don't assume non-current task is sleeping + - scsi: ufs: Fix unexpected values from ufshcd_read_desc_param() + - scsi: ufs: Make sure clk scaling happens only when HBA is runtime ACTIVE + - interconnect: qcom: msm8916: Remove rpm-ids from non-RPM nodes + - interconnect: qcom: qcs404: Remove GPU and display RPM IDs + - ibmvnic: skip tx timeout reset while in resetting + - irqchip/gic-v3-its: Unconditionally save/restore the ITS state on suspend + - drm/exynos: depend on COMMON_CLK to fix compile tests + - spi: spi-nxp-fspi: fix fspi panic by unexpected interrupts + - arm-smmu-qcom: Ensure the qcom_scm driver has finished probing + - btrfs: do nofs allocations when adding and removing qgroup relations + - btrfs: fix lockdep splat when enabling and disabling qgroups + - soc: fsl: dpio: Get the cpumask through cpumask_of(cpu) + - intel_idle: Fix intel_idle() vs tracing + - arm64: tegra: Disable the ACONNECT for Jetson TX2 + - platform/x86: thinkpad_acpi: add P1 gen3 second fan support + - platform/x86: thinkpad_acpi: Do not report SW_TABLET_MODE on Yoga 11e + - platform/x86: thinkpad_acpi: Add BAT1 is primary battery quirk for Thinkpad + Yoga 11e 4th gen + - platform/x86: thinkpad_acpi: Whitelist P15 firmware for dual fan control + - platform/x86: acer-wmi: add automatic keyboard background light toggle key + as KEY_LIGHTS_TOGGLE + - platform/x86: intel-vbtn: Support for tablet mode on HP Pavilion 13 x360 PC + - platform/x86: touchscreen_dmi: Add info for the Predia Basic tablet + - platform/x86: touchscreen_dmi: Add info for the Irbis TW118 tablet + - can: m_can: m_can_dev_setup(): add support for bosch mcan version 3.3.0 + - s390: fix irq state tracing + - intel_idle: Build fix + - media: pulse8-cec: fix duplicate free at disconnect or probe error + - media: pulse8-cec: add support for FW v10 and up + - mmc: mediatek: Extend recheck_sdio_irq fix to more variants + - ktest.pl: Fix incorrect reboot for grub2bls + - xen: add helpers for caching grant mapping pages + - Input: cm109 - do not stomp on control URB + - Input: i8042 - add Acer laptops to the i8042 reset list + - pinctrl: jasperlake: Fix HOSTSW_OWN offset + - mmc: sdhci-of-arasan: Fix clock registration error for Keem Bay SOC + - mmc: block: Fixup condition for CMD13 polling for RPMB requests + - drm/amdgpu/disply: set num_crtc earlier + - drm/i915/gem: Propagate error from cancelled submit due to context closure + - drm/i915/display/dp: Compute the correct slice count for VDSC on DP + - drm/i915/gt: Declare gen9 has 64 mocs entries! + - drm/i915/gt: Ignore repeated attempts to suspend request flow across reset + - drm/i915/gt: Cancel the preemption timeout on responding to it + - kbuild: avoid static_assert for genksyms + - proc: use untagged_addr() for pagemap_read addresses + - zonefs: fix page reference and BIO leak + - scsi: be2iscsi: Revert "Fix a theoretical leak in beiscsi_create_eqs()" + - x86/mm/mem_encrypt: Fix definition of PMD_FLAGS_DEC_WP + - x86/membarrier: Get rid of a dubious optimization + - x86/apic/vector: Fix ordering in vector assignment + - x86/kprobes: Fix optprobe to detect INT3 padding correctly + - compiler.h: fix barrier_data() on clang + - ptrace: Prevent kernel-infoleak in ptrace_get_syscall_info() + - net/sched: fq_pie: initialize timer earlier in fq_pie_init() + - net: ipa: pass the correct size when freeing DMA memory + - ipv4: fix error return code in rtm_to_fib_config() + - mac80211: mesh: fix mesh_pathtbl_init() error path + - net: bridge: vlan: fix error return code in __vlan_add() + - vrf: packets with lladdr src needs dst at input with orig_iif when needs + strict + - net: hns3: remove a misused pragma packed + - udp: fix the proto value passed to ip_protocol_deliver_rcu for the segments + - enetc: Fix reporting of h/w packet counters + - bridge: Fix a deadlock when enabling multicast snooping + - mptcp: print new line in mptcp_seq_show() if mptcp isn't in use + - net: stmmac: dwmac-meson8b: fix mask definition of the m250_sel mux + - net: stmmac: start phylink instance before stmmac_hw_setup() + - net: stmmac: free tx skb buffer in stmmac_resume() + - net: stmmac: delete the eee_ctrl_timer after napi disabled + - net: stmmac: overwrite the dma_cap.addr64 according to HW design + - net: ll_temac: Fix potential NULL dereference in temac_probe() + - tcp: select sane initial rcvq_space.space for big MSS + - e1000e: fix S0ix flow to allow S0i3.2 subset entry + - ethtool: fix stack overflow in ethnl_parse_bitset() + - tcp: fix cwnd-limited bug for TSO deferral where we send nothing + - net: flow_offload: Fix memory leak for indirect flow block + - net/mlx4_en: Avoid scheduling restart task if it is already running + - net/mlx4_en: Handle TX error CQE + - net: sched: Fix dump of MPLS_OPT_LSE_LABEL attribute in cls_flower + - ch_ktls: fix build warning for ipv4-only config + - lan743x: fix for potential NULL pointer dereference with bare card + - net: stmmac: increase the timeout for dma reset + - net: tipc: prevent possible null deref of link + - ktest.pl: If size of log is too big to email, email error message + - USB: dummy-hcd: Fix uninitialized array use in init() + - USB: add RESET_RESUME quirk for Snapscan 1212 + - ALSA: usb-audio: Fix potential out-of-bounds shift + - ALSA: usb-audio: Fix control 'access overflow' errors from chmap + - xhci: Give USB2 ports time to enter U3 in bus suspend + - xhci-pci: Allow host runtime PM as default for Intel Alpine Ridge LP + - xhci-pci: Allow host runtime PM as default for Intel Maple Ridge xHCI + - USB: UAS: introduce a quirk to set no_write_same + - USB: sisusbvga: Make console support depend on BROKEN + - [Config] updateconfigs for USB_SISUSBVGA_CON + - ALSA: pcm: oss: Fix potential out-of-bounds shift + - serial: 8250_omap: Avoid FIFO corruption caused by MDR1 access + - KVM: mmu: Fix SPTE encoding of MMIO generation upper half + - membarrier: Explicitly sync remote cores when SYNC_CORE is requested + - x86/resctrl: Remove unused struct mbm_state::chunks_bw + - x86/resctrl: Fix incorrect local bandwidth when mba_sc is enabled + * MSFT Touchpad not working on Lenovo Legion-5 15ARH05 (LP: #1887190) // + Groovy update: upstream stable patchset 2021-01-13 (LP: #1911476) + - pinctrl: amd: remove debounce filter setting in IRQ type setting + * Groovy update: upstream stable patchset 2021-01-12 (LP: #1911235) + - powerpc: Only include kup-radix.h for 64-bit Book3S + - leds: lm3697: Fix out-of-bound access + - Input: sunkbd - avoid use-after-free in teardown paths + - mac80211: always wind down STA state + - can: proc: can_remove_proc(): silence remove_proc_entry warning + - powerpc/smp: Call rcu_cpu_starting() earlier + - KVM: x86: clflushopt should be treated as a no-op by emulation + - ACPI: GED: fix -Wformat + - net: lantiq: Add locking for TX DMA channel + - ah6: fix error return code in ah6_input() + - atm: nicstar: Unmap DMA on send error + - bnxt_en: read EEPROM A2h address using page 0 + - devlink: Add missing genlmsg_cancel() in devlink_nl_sb_port_pool_fill() + - enetc: Workaround for MDIO register access issue + - Exempt multicast addresses from five-second neighbor lifetime + - inet_diag: Fix error path to cancel the meseage in inet_req_diag_fill() + - ipv6: Fix error path to cancel the meseage + - lan743x: fix issue causing intermittent kernel log warnings + - lan743x: prevent entire kernel HANG on open, for some platforms + - mlxsw: core: Use variable timeout for EMAD retries + - net: b44: fix error return code in b44_init_one() + - net: bridge: add missing counters to ndo_get_stats64 callback + - netdevsim: set .owner to THIS_MODULE + - net: dsa: mv88e6xxx: Avoid VTU corruption on 6097 + - net: ethernet: mtk-star-emac: fix error return code in mtk_star_enable() + - net: ethernet: mtk-star-emac: return ok when xmit drops + - net: ethernet: ti: am65-cpts: update ret when ptp_clock is ERROR + - net: ethernet: ti: cpsw: fix cpts irq after suspend + - net: ethernet: ti: cpsw: fix error return code in cpsw_probe() + - net: ftgmac100: Fix crash when removing driver + - net: Have netpoll bring-up DSA management interface + - net: ipa: lock when freeing transaction + - netlabel: fix our progress tracking in netlbl_unlabel_staticlist() + - netlabel: fix an uninitialized warning in netlbl_unlabel_staticlist() + - net: lantiq: Wait for the GPHY firmware to be ready + - net/mlx4_core: Fix init_hca fields offset + - net/mlx5e: Fix refcount leak on kTLS RX resync + - net/ncsi: Fix netlink registration + - net: phy: mscc: remove non-MACSec compatible phy + - net: qualcomm: rmnet: Fix incorrect receive packet handling during cleanup + - net/smc: fix direct access to ib_gid_addr->ndev in smc_ib_determine_gid() + - net: stmmac: Use rtnl_lock/unlock on netif_set_real_num_rx_queues() call + - net/tls: fix corrupted data in recvmsg + - net: x25: Increase refcnt of "struct x25_neigh" in x25_rx_call_request + - page_frag: Recover from memory pressure + - qed: fix error return code in qed_iwarp_ll2_start() + - qed: fix ILT configuration of SRC block + - qlcnic: fix error return code in qlcnic_83xx_restart_hw() + - sctp: change to hold/put transport for proto_unreach_timer + - tcp: only postpone PROBE_RTT if RTT is < current min_rtt estimate + - vsock: forward all packets to the host when no H2G is registered + - net/mlx5e: Fix check if netdev is bond slave + - net/mlx5: Add handling of port type in rule deletion + - net/mlx5: Clear bw_share upon VF disable + - net/mlx5: Disable QoS when min_rates on all VFs are zero + - PM: runtime: Add pm_runtime_resume_and_get to deal with usage counter + - net: fec: Fix reference count leak in fec series ops + - net/tls: Fix wrong record sn in async mode of device resync + - net: usb: qmi_wwan: Set DTR quirk for MR400 + - Revert "Revert "gpio: omap: Fix lost edge wake-up interrupts"" + - tools, bpftool: Avoid array index warnings. + - habanalabs/gaudi: mask WDT error in QMAN + - pinctrl: rockchip: enable gpio pclk for rockchip_gpio_to_irq + - scsi: ufs: Fix unbalanced scsi_block_reqs_cnt caused by ufshcd_hold() + - scsi: ufs: Try to save power mode change and UIC cmd completion timeout + - pinctrl: mcp23s08: Print error message when regmap init fails + - selftests: kvm: Fix the segment descriptor layout to match the actual layout + - ACPI: button: Add DMI quirk for Medion Akoya E2228T + - arm64: errata: Fix handling of 1418040 with late CPU onlining + - arm64: psci: Avoid printing in cpu_psci_cpu_die() + - arm64: smp: Tell RCU about CPUs that fail to come online + - vfs: remove lockdep bogosity in __sb_start_write + - gfs2: fix possible reference leak in gfs2_check_blk_type + - hwmon: (pwm-fan) Fix RPM calculation + - gfs2: Fix case in which ail writes are done to jdata holes + - arm64: Add MIDR value for KRYO2XX gold/silver CPU cores + - arm64: kpti: Add KRYO2XX gold/silver CPU cores to kpti safelist + - arm64: cpu_errata: Apply Erratum 845719 to KRYO2XX Silver + - arm64: dts: allwinner: beelink-gs1: Enable both RGMII RX/TX delay + - arm64: dts: allwinner: Pine H64: Enable both RGMII RX/TX delay + - arm64: dts: allwinner: a64: OrangePi Win: Fix ethernet node + - arm64: dts: allwinner: a64: Pine64 Plus: Fix ethernet node + - arm64: dts: allwinner: h5: OrangePi PC2: Fix ethernet node + - ARM: dts: sun8i: r40: bananapi-m2-ultra: Fix ethernet node + - Revert "arm: sun8i: orangepi-pc-plus: Set EMAC activity LEDs to active high" + - ARM: dts: sun6i: a31-hummingbird: Enable RGMII RX/TX delay on Ethernet PHY + - ARM: dts: sun7i: cubietruck: Enable RGMII RX/TX delay on Ethernet PHY + - ARM: dts: sun7i: bananapi-m1-plus: Enable RGMII RX/TX delay on Ethernet PHY + - ARM: dts: sun8i: h3: orangepi-plus2e: Enable RGMII RX/TX delay on Ethernet + PHY + - ARM: dts: sun8i: a83t: Enable both RGMII RX/TX delay on Ethernet PHY + - ARM: dts: sun9i: Enable both RGMII RX/TX delay on Ethernet PHY + - ARM: dts: sunxi: bananapi-m2-plus: Enable RGMII RX/TX delay on Ethernet PHY + - arm64: dts: allwinner: h5: libretech-all-h5-cc: Enable RGMII RX/TX delay on + PHY + - arm64: dts: allwinner: a64: bananapi-m64: Enable RGMII RX/TX delay on PHY + - Input: adxl34x - clean up a data type in adxl34x_probe() + - MIPS: export has_transparent_hugepage() for modules + - dmaengine: idxd: fix wq config registers offset programming + - arm64: dts: allwinner: h5: OrangePi Prime: Fix ethernet node + - arm64: dts: imx8mm-beacon-som: Fix Choppy BT audio + - arm64: dts imx8mn: Remove non-existent USB OTG2 + - arm: dts: imx6qdl-udoo: fix rgmii phy-mode for ksz9031 phy + - ARM: dts: vf610-zii-dev-rev-b: Fix MDIO over clocking + - swiotlb: using SIZE_MAX needs limits.h included + - tee: amdtee: fix memory leak due to reset of global shm list + - tee: amdtee: synchronize access to shm list + - dmaengine: xilinx_dma: Fix usage of xilinx_aximcdma_tx_segment + - dmaengine: xilinx_dma: Fix SG capability check for MCDMA + - ARM: dts: stm32: Fix TA3-GPIO-C key on STM32MP1 DHCOM PDK2 + - ARM: dts: stm32: Fix LED5 on STM32MP1 DHCOM PDK2 + - ARM: dts: stm32: Define VIO regulator supply on DHCOM + - ARM: dts: stm32: Enable thermal sensor support on stm32mp15xx-dhcor + - ARM: dts: stm32: Keep VDDA LDO1 always on on DHCOM + - arm64: dts: imx8mm: fix voltage for 1.6GHz CPU operating point + - ARM: dts: imx50-evk: Fix the chip select 1 IOMUX + - dmaengine: ti: omap-dma: Block PM if SDMA is busy to fix audio + - kunit: tool: unmark test_data as binary blobs + - rcu: Don't invoke try_invoke_on_locked_down_task() with irqs disabled + - spi: fix client driver breakages when using GPIO descriptors + - Input: resistive-adc-touch - fix kconfig dependency on IIO_BUFFER + - rfkill: Fix use-after-free in rfkill_resume() + - RDMA/pvrdma: Fix missing kfree() in pvrdma_register_device() + - [Config] update config for INFINIBAND_VIRT_DMA + - RMDA/sw: Don't allow drivers using dma_virt_ops on highmem configs + - perf lock: Correct field name "flags" + - perf lock: Don't free "lock_seq_stat" if read_count isn't zero + - SUNRPC: Fix oops in the rpc_xdr_buf event class + - drm: bridge: dw-hdmi: Avoid resetting force in the detect function + - tools, bpftool: Add missing close before bpftool net attach exit + - IB/hfi1: Fix error return code in hfi1_init_dd() + - ip_tunnels: Set tunnel option flag when tunnel metadata is present + - can: af_can: prevent potential access of uninitialized member in can_rcv() + - can: af_can: prevent potential access of uninitialized member in canfd_rcv() + - can: dev: can_restart(): post buffer from the right context + - can: ti_hecc: Fix memleak in ti_hecc_probe + - can: mcba_usb: mcba_usb_start_xmit(): first fill skb, then pass to + can_put_echo_skb() + - can: peak_usb: fix potential integer overflow on shift of a int + - can: flexcan: fix failure handling of pm_runtime_get_sync() + - can: tcan4x5x: replace depends on REGMAP_SPI with depends on SPI + - can: tcan4x5x: tcan4x5x_can_probe(): add missing error checking for + devm_regmap_init() + - can: tcan4x5x: tcan4x5x_can_remove(): fix order of deregistration + - can: m_can: m_can_handle_state_change(): fix state change + - can: m_can: m_can_class_free_dev(): introduce new function + - can: m_can: Fix freeing of can device from peripherials + - can: m_can: m_can_stop(): set device to software init mode before closing + - dmaengine: idxd: fix mapping of portal size + - ASoC: qcom: lpass-platform: Fix memory leak + - selftests/bpf: Fix error return code in run_getsockopt_test() + - MIPS: Alchemy: Fix memleak in alchemy_clk_setup_cpu + - drm/sun4i: dw-hdmi: fix error return code in sun8i_dw_hdmi_bind() + - net/mlx5: E-Switch, Fail mlx5_esw_modify_vport_rate if qos disabled + - bpf, sockmap: Fix partial copy_page_to_iter so progress can still be made + - bpf, sockmap: Ensure SO_RCVBUF memory is observed on ingress redirect + - can: kvaser_pciefd: Fix KCAN bittiming limits + - can: kvaser_usb: kvaser_usb_hydra: Fix KCAN bittiming limits + - dmaengine: fix error codes in channel_register() + - iommu/vt-d: Move intel_iommu_gfx_mapped to Intel IOMMU header + - iommu/vt-d: Avoid panic if iommu init fails in tboot system + - can: flexcan: flexcan_chip_start(): fix erroneous + flexcan_transceiver_enable() during bus-off recovery + - can: m_can: process interrupt only when not runtime suspended + - xfs: fix the minrecs logic when dealing with inode root child blocks + - xfs: strengthen rmap record flags checking + - xfs: directory scrub should check the null bestfree entries too + - xfs: ensure inobt record walks always make forward progress + - xfs: return corresponding errcode if xfs_initialize_perag() fail + - ASOC: Intel: kbl_rt5663_rt5514_max98927: Do not try to disable disabled + clock + - regulator: ti-abb: Fix array out of bound read access on the first + transition + - libbpf: Fix VERSIONED_SYM_COUNT number parsing + - lib/strncpy_from_user.c: Mask out bytes after NUL terminator. + - fail_function: Remove a redundant mutex unlock + - xfs: revert "xfs: fix rmap key and record comparison functions" + - bpf, sockmap: Skb verdict SK_PASS to self already checked rmem limits + - bpf, sockmap: On receive programs try to fast track SK_PASS ingress + - bpf, sockmap: Use truesize with sk_rmem_schedule() + - bpf, sockmap: Avoid returning unneeded EAGAIN when redirecting to self + - efi/arm: set HSCTLR Thumb2 bit correctly for HVC calls from HYP + - counter/ti-eqep: Fix regmap max_register + - efi/x86: Free efi_pgd with free_pages() + - sched/fair: Fix overutilized update in enqueue_task_fair() + - sched: Fix data-race in wakeup + - sched: Fix rq->nr_iowait ordering + - libfs: fix error cast of negative value in simple_attr_write() + - afs: Fix speculative status fetch going out of order wrt to modifications + - HID: logitech-hidpp: Add PID for MX Anywhere 2 + - HID: mcp2221: Fix GPIO output handling + - HID: logitech-dj: Handle quad/bluetooth keyboards with a builtin trackpad + - HID: logitech-dj: Fix Dinovo Mini when paired with a MX5x00 receiver + - speakup: Do not let the line discipline be used several times + - ALSA: firewire: Clean up a locking issue in copy_resp_to_buf() + - ALSA: usb-audio: Add delay quirk for all Logitech USB devices + - ALSA: ctl: fix error path at adding user-defined element set + - ALSA: mixart: Fix mutex deadlock + - ALSA: hda/realtek - Add supported for Lenovo ThinkPad Headset Button + - ALSA: hda/realtek - Add supported mute Led for HP + - ALSA: hda/realtek: Add some Clove SSID in the ALC293(ALC1220) + - ALSA: hda/realtek - HP Headset Mic can't detect after boot + - tty: serial: imx: fix potential deadlock + - tty: serial: imx: keep console clocks always on + - HID: logitech-dj: Fix an error in mse_bluetooth_descriptor + - efivarfs: fix memory leak in efivarfs_create() + - staging: rtl8723bs: Add 024c:0627 to the list of SDIO device-ids + - staging: mt7621-pci: avoid to request pci bus resources + - iio: light: fix kconfig dependency bug for VCNL4035 + - ext4: fix bogus warning in ext4_update_dx_flag() + - xfs: fix forkoff miscalculation related to XFS_LITINO(mp) + - ACPI: fan: Initialize performance state sysfs attribute + - iio: accel: kxcjk1013: Replace is_smo8500_device with an acpi_type enum + - iio: accel: kxcjk1013: Add support for KIOX010A ACPI DSM for setting tablet- + mode + - iio: adc: mediatek: fix unset field + - iio: cros_ec: Use default frequencies when EC returns invalid information + - iio: imu: st_lsm6dsx: set 10ms as min shub slave timeout + - iio/adc: ingenic: Fix battery VREF for JZ4770 SoC + - iio: adc: stm32-adc: fix a regression when using dma and irq + - serial: ar933x_uart: disable clk on error handling path in probe + - arm64: dts: agilex/stratix10: Fix qspi node compatible + - spi: lpspi: Fix use-after-free on unbind + - spi: Introduce device-managed SPI controller allocation + - spi: npcm-fiu: Don't leak SPI master in probe error path + - spi: bcm2835aux: Fix use-after-free on unbind + - regulator: pfuze100: limit pfuze-support-disable-sw to pfuze{100,200} + - regulator: fix memory leak with repeated set_machine_constraints() + - regulator: avoid resolve_supply() infinite recursion + - regulator: workaround self-referent regulators + - gfs2: Fix regression in freeze_go_sync + - xtensa: fix TLBTEMP area placement + - xtensa: disable preemption around cache alias management calls + - mac80211: minstrel: remove deferred sampling code + - mac80211: minstrel: fix tx status processing corner case + - mac80211: free sta in sta_info_insert_finish() on errors + - s390: fix system call exit path + - s390/cpum_sf.c: fix file permission for cpum_sfb_size + - s390/dasd: fix null pointer dereference for ERP requests + - Drivers: hv: vmbus: Allow cleanup of VMBUS_CONNECT_CPU if disconnected + - drm/amd/display: Add missing pflip irq for dcn2.0 + - drm/i915: Handle max_bpc==16 + - mmc: sdhci-pci: Prefer SDR25 timing for High Speed mode for BYT-based Intel + controllers + - mmc: sdhci-of-arasan: Allow configuring zero tap values + - mmc: sdhci-of-arasan: Use Mask writes for Tap delays + - mmc: sdhci-of-arasan: Issue DLL reset explicitly + - ptrace: Set PF_SUPERPRIV when checking capability + - seccomp: Set PF_SUPERPRIV when checking capability + - x86/microcode/intel: Check patch signature before saving microcode for early + loading + - mm: fix readahead_page_batch for retry entries + - mm: memcg/slab: fix root memcg vmstats + - mm/userfaultfd: do not access vma->vm_mm after calling handle_userfault() + - io_uring: get an active ref_node from files_data + - io_uring: order refnode recycling + - spi: bcm-qspi: Fix use-after-free on unbind + - spi: bcm2835: Fix use-after-free on unbind + - ipv4: use IS_ENABLED instead of ifdef + - IB/hfi1: Ensure correct mm is used at all times + - RDMA/i40iw: Address an mmap handler exploit in i40iw + - btrfs: tree-checker: add missing return after error in root_item + - btrfs: tree-checker: add missing returns after data_ref alignment checks + - btrfs: don't access possibly stale fs_info data for printing duplicate + device + - btrfs: fix lockdep splat when reading qgroup config on mount + - mm: fix VM_BUG_ON(PageTail) and BUG_ON(PageWriteback) + - smb3: Call cifs reconnect from demultiplex thread + - smb3: Avoid Mid pending list corruption + - smb3: Handle error case during offload read path + - cifs: fix a memleak with modefromsid + - powerpc/64s: Fix KVM system reset handling when CONFIG_PPC_PSERIES=y + - powerpc/64s/exception: KVM Fix for host DSI being taken in HPT guest MMU + context + - KVM: PPC: Book3S HV: XIVE: Fix possible oops when accessing ESB page + - KVM: arm64: vgic-v3: Drop the reporting of GICR_TYPER.Last for userspace + - KVM: x86: handle !lapic_in_kernel case in kvm_cpu_*_extint + - KVM: x86: Fix split-irqchip vs interrupt injection window request + - iommu/vt-d: Don't read VCCAP register unless it exists + - firmware: xilinx: Use hash-table for api feature check + - trace: fix potenial dangerous pointer + - arm64: pgtable: Fix pte_accessible() + - arm64: pgtable: Ensure dirty bit is preserved across pte_wrprotect() + - drm/amd/amdgpu: fix null pointer in runtime pm + - drm/amd/display: Avoid HDCP initialization in devices without output + - HID: uclogic: Add ID for Trust Flex Design Tablet + - HID: ite: Replace ABS_MISC 120/121 events with touchpad on/off keypresses + - HID: cypress: Support Varmilo Keyboards' media hotkeys + - HID: add support for Sega Saturn + - Input: i8042 - allow insmod to succeed on devices without an i8042 + controller + - HID: hid-sensor-hub: Fix issue with devices with no report ID + - staging: ralink-gdma: fix kconfig dependency bug for DMA_RALINK + - HID: add HID_QUIRK_INCREMENT_USAGE_ON_DUPLICATE for Gamevice devices + - dmaengine: xilinx_dma: use readl_poll_timeout_atomic variant + - x86/xen: don't unbind uninitialized lock_kicker_irq + - kunit: fix display of failed expectations for strings + - HID: logitech-hidpp: Add HIDPP_CONSUMER_VENDOR_KEYS quirk for the Dinovo + Edge + - HID: Add Logitech Dinovo Edge battery quirk + - proc: don't allow async path resolution of /proc/self components + - nvme: free sq/cq dbbuf pointers when dbbuf set fails + - net: stmmac: dwmac_lib: enlarge dma reset timeout + - vdpasim: fix "mac_pton" undefined error + - vhost: add helper to check if a vq has been setup + - vhost scsi: alloc cmds per vq instead of session + - vhost scsi: fix cmd completion race + - cpuidle: tegra: Annotate tegra_pm_set_cpu_in_lp2() with RCU_NONIDLE + - dmaengine: pl330: _prep_dma_memcpy: Fix wrong burst size + - scsi: libiscsi: Fix NOP race condition + - scsi: target: iscsi: Fix cmd abort fabric stop race + - perf/x86: fix sysfs type mismatches + - xtensa: uaccess: Add missing __user to strncpy_from_user() prototype + - x86/dumpstack: Do not try to access user space code of other tasks + - net: dsa: mv88e6xxx: Wait for EEPROM done after HW reset + - bus: ti-sysc: Fix reset status check for modules with quirks + - bus: ti-sysc: Fix bogus resetdone warning on enable for cpsw + - ARM: OMAP2+: Manage MPU state properly for omap_enter_idle_coupled() + - phy: tegra: xusb: Fix dangling pointer on probe failure + - iwlwifi: mvm: use the HOT_SPOT_CMD to cancel an AUX ROC + - iwlwifi: mvm: properly cancel a session protection for P2P + - iwlwifi: mvm: write queue_sync_state only for sync + - KVM: s390: pv: Mark mm as protected after the set secure parameters and + improve cleanup + - batman-adv: set .owner to THIS_MODULE + - usb: cdns3: gadget: fix some endian issues + - usb: cdns3: gadget: calculate TD_SIZE based on TD + - phy: qualcomm: usb: Fix SuperSpeed PHY OF dependency + - phy: qualcomm: Fix 28 nm Hi-Speed USB PHY OF dependency + - arch: pgtable: define MAX_POSSIBLE_PHYSMEM_BITS where needed + - bus: ti-sysc: suppress err msg for timers used as clockevent/source + - ARM: dts: dra76x: m_can: fix order of clocks + - scsi: ufs: Fix race between shutdown and runtime resume flow + - bnxt_en: fix error return code in bnxt_init_one() + - bnxt_en: fix error return code in bnxt_init_board() + - video: hyperv_fb: Fix the cache type when mapping the VRAM + - bnxt_en: Release PCI regions when DMA mask setup fails during probe. + - block/keyslot-manager: prevent crash when num_slots=1 + - cxgb4: fix the panic caused by non smac rewrite + - dpaa2-eth: select XGMAC_MDIO for MDIO bus support + - s390/qeth: make af_iucv TX notification call more robust + - s390/qeth: fix af_iucv notification race + - s390/qeth: fix tear down of async TX buffers + - drm/mediatek: dsi: Modify horizontal front/back porch byte formula + - bonding: wait for sysfs kobject destruction before freeing struct slave + - ibmvnic: fix call_netdevice_notifiers in do_reset + - ibmvnic: notify peers when failover and migration happen + - powerpc/64s: Fix allnoconfig build since uaccess flush + - iommu: Check return of __iommu_attach_device() + - IB/mthca: fix return value of error branch in mthca_init_cq() + - i40e: Fix removing driver while bare-metal VFs pass traffic + - firmware: xilinx: Fix SD DLL node reset issue + - io_uring: fix shift-out-of-bounds when round up cq size + - nfc: s3fwrn5: use signed integer for parsing GPIO numbers + - net: ena: handle bad request id in ena_netdev + - net: ena: set initial DMA width to avoid intel iommu issue + - net: ena: fix packet's addresses for rx_offset feature + - ibmvnic: fix NULL pointer dereference in reset_sub_crq_queues + - ibmvnic: fix NULL pointer dereference in ibmvic_reset_crq + - ibmvnic: enhance resetting status check during module exit + - optee: add writeback to valid memory type + - x86/tboot: Don't disable swiotlb when iommu is forced on + - arm64: tegra: Wrong AON HSP reg property size + - efi/efivars: Set generic ops before loading SSDT + - efivarfs: revert "fix memory leak in efivarfs_create()" + - efi: EFI_EARLYCON should depend on EFI + - riscv: Explicitly specify the build id style in vDSO Makefile again + - RISC-V: Add missing jump label initialization + - RISC-V: fix barrier() use in + - net: stmmac: fix incorrect merge of patch upstream + - enetc: Let the hardware auto-advance the taprio base-time of 0 + - drm/nouveau: fix relocations applying logic and a double-free + - can: gs_usb: fix endianess problem with candleLight firmware + - platform/x86: thinkpad_acpi: Send tablet mode switch at wakeup time + - platform/x86: toshiba_acpi: Fix the wrong variable assignment + - RDMA/hns: Fix wrong field of SRQ number the device supports + - RDMA/hns: Fix retry_cnt and rnr_cnt when querying QP + - RDMA/hns: Bugfix for memory window mtpt configuration + - can: m_can: m_can_open(): remove IRQF_TRIGGER_FALLING from + request_threaded_irq()'s flags + - can: m_can: fix nominal bitiming tseg2 min for version >= 3.1 + - perf record: Synthesize cgroup events only if needed + - perf stat: Use proper cpu for shadow stats + - perf probe: Fix to die_entrypc() returns error correctly + - spi: bcm2835aux: Restore err assignment in bcm2835aux_spi_probe + - USB: core: Change %pK for __user pointers to %px + - usb: gadget: f_midi: Fix memleak in f_midi_alloc + - USB: core: Fix regression in Hercules audio card + - USB: quirks: Add USB_QUIRK_DISCONNECT_SUSPEND quirk for Lenovo A630Z TIO + built-in usb-audio card + - usb: gadget: Fix memleak in gadgetfs_fill_super + - irqchip/exiu: Fix the index of fwspec for IRQ type + - x86/mce: Do not overwrite no_way_out if mce_end() fails + - x86/speculation: Fix prctl() when spectre_v2_user={seccomp,prctl},ibpb + - x86/resctrl: Remove superfluous kernfs_get() calls to prevent refcount leak + - x86/resctrl: Add necessary kernfs_put() calls to prevent refcount leak + - devlink: Hold rtnl lock while reading netdev attributes + - devlink: Make sure devlink instance and port are in same net namespace + - ipv6: addrlabel: fix possible memory leak in ip6addrlbl_net_init + - net/af_iucv: set correct sk_protocol for child sockets + - net: openvswitch: fix TTL decrement action netlink message format + - net/tls: missing received data after fast remote close + - net/tls: Protect from calling tls_dev_del for TLS RX twice + - rose: Fix Null pointer dereference in rose_send_frame() + - sock: set sk_err to ee_errno on dequeue from errq + - tcp: Set INET_ECN_xmit configuration in tcp_reinit_congestion_control + - tun: honor IOCB_NOWAIT flag + - usbnet: ipheth: fix connectivity with iOS 14 + - vsock/virtio: discard packets only when socket is really closed + - net/packet: fix packet receive on L3 devices without visible hard header + - netfilter: bridge: reset skb->pkt_type after NF_INET_POST_ROUTING traversal + - ipv4: Fix tos mask in inet_rtm_getroute() + - dt-bindings: net: correct interrupt flags in examples + - chelsio/chtls: fix panic during unload reload chtls + - ibmvnic: Ensure that SCRQ entry reads are correctly ordered + - ibmvnic: Fix TX completion error handling + - tipc: fix incompatible mtu of transmission + - inet_ecn: Fix endianness of checksum update when setting ECT(1) + - net: ip6_gre: set dev->hard_header_len when using header_ops + - dpaa_eth: copy timestamp fields to new skb in A-050385 workaround + - net/x25: prevent a couple of overflows + - cxgb3: fix error return code in t3_sge_alloc_qset() + - net: pasemi: fix error return code in pasemi_mac_open() + - vxlan: fix error return code in __vxlan_dev_create() + - chelsio/chtls: fix a double free in chtls_setkey() + - net: mvpp2: Fix error return code in mvpp2_open() + - net: skbuff: ensure LSE is pullable before decrementing the MPLS ttl + - net: openvswitch: ensure LSE is pullable before reading it + - net/sched: act_mpls: ensure LSE is pullable before reading it + - net/mlx5: DR, Proper handling of unsupported Connect-X6DX SW steering + - net/mlx5: Fix wrong address reclaim when command interface is down + - net: mlx5e: fix fs_tcp.c build when IPV6 is not enabled + - ALSA: usb-audio: US16x08: fix value count for level meters + - Input: xpad - support Ardwiino Controllers + - tracing: Fix alignment of static buffer + - tracing: Remove WARN_ON in start_thread() + - uapi: fix statx attribute value overlap for DAX & MOUNT_ROOT + - drm/i915/gt: Fixup tgl mocs for PTE tracking + - usb: gadget: f_fs: Use local copy of descriptors for userspace copy + - USB: serial: kl5kusb105: fix memleak on open + - USB: serial: ch341: add new Product ID for CH341A + - USB: serial: ch341: sort device-id entries + - USB: serial: option: add Fibocom NL668 variants + - USB: serial: option: add support for Thales Cinterion EXS82 + - USB: serial: option: fix Quectel BG96 matching + - tty: Fix ->pgrp locking in tiocspgrp() + - tty: Fix ->session locking + - speakup: Reject setting the speakup line discipline outside of speakup + - ALSA: hda/realtek: Fix bass speaker DAC assignment on Asus Zephyrus G14 + - ALSA: hda/realtek: Add mute LED quirk to yet another HP x360 model + - ALSA: hda/realtek: Enable headset of ASUS UX482EG & B9400CEA with ALC294 + - ALSA: hda/realtek - Add new codec supported for ALC897 + - ALSA: hda/realtek - Fixed Dell AIO wrong sound tone + - ALSA: hda/generic: Add option to enforce preferred_dacs pairs + - ftrace: Fix updating FTRACE_FL_TRAMP + - ftrace: Fix DYNAMIC_FTRACE_WITH_DIRECT_CALLS dependency + - cifs: allow syscalls to be restarted in __smb_send_rqst() + - cifs: fix potential use-after-free in cifs_echo_request() + - cifs: refactor create_sd_buf() and and avoid corrupting the buffer + - gfs2: Upgrade shared glocks for atime updates + - gfs2: Fix deadlock between gfs2_{create_inode,inode_lookup} and + delete_work_func + - s390/pci: fix CPU address in MSI for directed IRQ + - i2c: imx: Fix reset of I2SR_IAL flag + - i2c: imx: Check for I2SR_IAL after every byte + - i2c: imx: Don't generate STOP condition if arbitration has been lost + - tracing: Fix userstacktrace option for instances + - thunderbolt: Fix use-after-free in remove_unplugged_switch() + - drm/omap: sdi: fix bridge enable/disable + - drm/i915/gt: Retain default context state across shrinking + - drm/i915/gt: Limit frequency drop to RPe on parking + - drm/i915/gt: Program mocs:63 for cache eviction on gen9 + - KVM: PPC: Book3S HV: XIVE: Fix vCPU id sanity check + - scsi: mpt3sas: Fix ioctl timeout + - io_uring: fix recvmsg setup with compat buf-select + - dm writecache: advance the number of arguments when reporting max_age + - dm writecache: fix the maximum number of arguments + - powerpc/64s/powernv: Fix memory corruption when saving SLB entries on MCE + - genirq/irqdomain: Add an irq_create_mapping_affinity() function + - powerpc/pseries: Pass MSI affinity to irq_create_mapping() + - dm: fix bug with RCU locking in dm_blk_report_zones + - dm: fix double RCU unlock in dm_dax_zero_page_range() error path + - dm: remove invalid sparse __acquires and __releases annotations + - x86/uprobes: Do not use prefixes.nbytes when looping over prefixes.bytes + - coredump: fix core_pattern parse error + - mm: list_lru: set shrinker map bit when child nr_items is not zero + - mm/swapfile: do not sleep with a spin lock held + - hugetlb_cgroup: fix offline of hugetlb cgroup with reservations + - Revert "amd/amdgpu: Disable VCN DPG mode for Picasso" + - iommu/amd: Set DTE[IntTabLen] to represent 512 IRTEs + - lib/syscall: fix syscall registers retrieval on 32-bit platforms + - can: af_can: can_rx_unregister(): remove WARN() statement from list + operation sanity check + - gfs2: check for empty rgrp tree in gfs2_ri_update + - netfilter: ipset: prevent uninit-value in hash_ip6_add + - tipc: fix a deadlock when flushing scheduled work + - ASoC: wm_adsp: fix error return code in wm_adsp_load() + - gfs2: Fix deadlock dumping resource group glocks + - gfs2: Don't freeze the file system during unmount + - rtw88: debug: Fix uninitialized memory in debugfs code + - i2c: qcom: Fix IRQ error misassignement + - i2c: qup: Fix error return code in qup_i2c_bam_schedule_desc() + - dm writecache: remove BUG() and fail gracefully instead + - Input: i8042 - fix error return code in i8042_setup_aux() + - netfilter: nf_tables: avoid false-postive lockdep splat + - netfilter: nftables_offload: set address type in control dissector + - netfilter: nftables_offload: build mask based from the matching bytes + - x86/insn-eval: Use new for_each_insn_prefix() macro to loop over prefixes + bytes + - bpf: Fix propagation of 32-bit signed bounds from 64-bit bounds. + * dep-8 ubuntu-regression-suite tests are not run for all linux-hwe-* kernels + (LP: #1908529) + - [dep-8] Allow all hwe kernels + * disable building bpf selftests (LP: #1908144) + - SAUCE: selftests/bpf: Clarify build error if no vmlinux + - SAUCE: selftests: Skip BPF seftests by default + - disable building bpf selftests (no VMLINUX_BTF) + * selftests: test_vxlan_under_vrf: mute unnecessary error message + (LP: #1908342) + - selftests: test_vxlan_under_vrf: mute unnecessary error message + * Groovy update: upstream stable patchset 2020-12-17 (LP: #1908555) + - drm/i915: Hold onto an explicit ref to i915_vma_work.pinned + - drm/i915/gem: Flush coherency domains on first set-domain-ioctl + - mm: memcg: link page counters to root if use_hierarchy is false + - nbd: don't update block size after device is started + - KVM: arm64: Force PTE mapping on fault resulting in a device mapping + - ASoC: Intel: kbl_rt5663_max98927: Fix kabylake_ssp_fixup function + - genirq: Let GENERIC_IRQ_IPI select IRQ_DOMAIN_HIERARCHY + - hv_balloon: disable warning when floor reached + - net: xfrm: fix a race condition during allocing spi + - ASoC: codecs: wsa881x: add missing stream rates and format + - irqchip/sifive-plic: Fix broken irq_set_affinity() callback + - kunit: Fix kunit.py --raw_output option + - kunit: Don't fail test suites if one of them is empty + - usb: gadget: fsl: fix null pointer checking + - selftests: filter kselftest headers from command in lib.mk + - ASoC: codecs: wcd934x: Set digital gain range correctly + - ASoC: codecs: wcd9335: Set digital gain range correctly + - mtd: spi-nor: Fix address width on flash chips > 16MB + - xfs: set xefi_discard when creating a deferred agfl free log intent item + - mac80211: don't require VHT elements for HE on 2.4 GHz + - netfilter: nftables: fix netlink report logic in flowtable and genid + - netfilter: use actual socket sk rather than skb sk when routing harder + - netfilter: nf_tables: missing validation from the abort path + - netfilter: ipset: Update byte and packet counters regardless of whether they + match + - irqchip/sifive-plic: Fix chip_data access within a hierarchy + - powerpc/eeh_cache: Fix a possible debugfs deadlock + - drm/vc4: bo: Add a managed action to cleanup the cache + - IB/srpt: Fix memory leak in srpt_add_one + - mm: memcontrol: correct the NR_ANON_THPS counter of hierarchical memcg + - drm/panfrost: rename error labels in device_init + - drm/panfrost: move devfreq_init()/fini() in device + - drm/panfrost: Fix module unload + - perf trace: Fix segfault when trying to trace events by cgroup + - perf tools: Add missing swap for ino_generation + - perf tools: Add missing swap for cgroup events + - ALSA: hda: prevent undefined shift in snd_hdac_ext_bus_get_link() + - iommu/vt-d: Fix a bug for PDP check in prq_event_thread + - afs: Fix warning due to unadvanced marshalling pointer + - afs: Fix incorrect freeing of the ACL passed to the YFS ACL store op + - vfio/pci: Implement ioeventfd thread handler for contended memory lock + - can: rx-offload: don't call kfree_skb() from IRQ context + - can: dev: can_get_echo_skb(): prevent call to kfree_skb() in hard IRQ + context + - can: dev: __can_get_echo_skb(): fix real payload length return value for RTR + frames + - can: can_create_echo_skb(): fix echo skb generation: always use skb_clone() + - can: j1939: swap addr and pgn in the send example + - can: j1939: j1939_sk_bind(): return failure if netdev is down + - can: ti_hecc: ti_hecc_probe(): add missed clk_disable_unprepare() in error + path + - can: xilinx_can: handle failure cases of pm_runtime_get_sync + - can: peak_usb: add range checking in decode operations + - can: peak_usb: peak_usb_get_ts_time(): fix timestamp wrapping + - can: peak_canfd: pucan_handle_can_rx(): fix echo management when loopback is + on + - can: flexcan: remove FLEXCAN_QUIRK_DISABLE_MECR quirk for LS1021A + - can: flexcan: flexcan_remove(): disable wakeup completely + - xfs: flush new eof page on truncate to avoid post-eof corruption + - xfs: fix missing CoW blocks writeback conversion retry + - xfs: fix scrub flagging rtinherit even if there is no rt device + - spi: fsl-dspi: fix wrong pointer in suspend/resume + - ceph: add check_session_state() helper and make it global + - ceph: check the sesion state and return false in case it is closed + - ceph: check session state after bumping session->s_seq + - x86/speculation: Allow IBPB to be conditionally enabled on CPUs with always- + on STIBP + - kbuild: explicitly specify the build id style + - RISC-V: Fix the VDSO symbol generaton for binutils-2.35+ + - USB: apple-mfi-fastcharge: fix reference leak in apple_mfi_fc_set_property + - tpm: efi: Don't create binary_bios_measurements file for an empty log + - KVM: arm64: ARM_SMCCC_ARCH_WORKAROUND_1 doesn't return + SMCCC_RET_NOT_REQUIRED + - ath9k_htc: Use appropriate rs_datalen type + - ASoC: qcom: sdm845: set driver name correctly + - ASoC: cs42l51: manage mclk shutdown delay + - ASoC: SOF: loader: handle all SOF_IPC_EXT types + - usb: dwc3: pci: add support for the Intel Alder Lake-S + - opp: Reduce the size of critical section in _opp_table_kref_release() + - usb: gadget: goku_udc: fix potential crashes in probe + - usb: raw-gadget: fix memory leak in gadget_setup + - selftests: pidfd: fix compilation errors due to wait.h + - x86/boot/compressed/64: Introduce sev_status + - gfs2: Free rd_bits later in gfs2_clear_rgrpd to fix use-after-free + - gfs2: Add missing truncate_inode_pages_final for sd_aspace + - gfs2: check for live vs. read-only file system in gfs2_fitrim + - scsi: hpsa: Fix memory leak in hpsa_init_one() + - drm/amdgpu: perform srbm soft reset always on SDMA resume + - drm/amd/pm: correct the baco reset sequence for CI ASICs + - drm/amd/pm: perform SMC reset on suspend/hibernation + - drm/amd/pm: do not use ixFEATURE_STATUS for checking smc running + - mac80211: fix use of skb payload instead of header + - cfg80211: initialize wdev data earlier + - cfg80211: regulatory: Fix inconsistent format argument + - wireguard: selftests: check that route_me_harder packets use the right sk + - tracing: Fix the checking of stackidx in __ftrace_trace_stack + - ARC: [plat-hsdk] Remap CCMs super early in asm boot trampoline + - scsi: scsi_dh_alua: Avoid crash during alua_bus_detach() + - scsi: mpt3sas: Fix timeouts observed while reenabling IRQ + - nvme: introduce nvme_sync_io_queues + - nvme-rdma: avoid race between time out and tear down + - nvme-tcp: avoid race between time out and tear down + - nvme-rdma: avoid repeated request completion + - nvme-tcp: avoid repeated request completion + - iommu/amd: Increase interrupt remapping table limit to 512 entries + - s390/smp: move rcu_cpu_starting() earlier + - vfio: platform: fix reference leak in vfio_platform_open + - vfio/pci: Bypass IGD init in case of -ENODEV + - i2c: mediatek: move dma reset before i2c reset + - iomap: clean up writeback state logic on writepage error + - selftests: proc: fix warning: _GNU_SOURCE redefined + - arm64: kexec_file: try more regions if loading segments fails + - riscv: Set text_offset correctly for M-Mode + - i2c: sh_mobile: implement atomic transfers + - i2c: designware: call i2c_dw_read_clear_intrbits_slave() once + - i2c: designware: slave should do WRITE_REQUESTED before WRITE_RECEIVED + - tpm_tis: Disable interrupts on ThinkPad T490s + - spi: bcm2835: remove use of uninitialized gpio flags variable + - mfd: sprd: Add wakeup capability for PMIC IRQ + - pinctrl: intel: Fix 2 kOhm bias which is 833 Ohm + - pinctrl: intel: Set default bias in case no particular value given + - gpio: aspeed: fix ast2600 bank properties + - ARM: 9019/1: kprobes: Avoid fortify_panic() when copying optprobe template + - bpf: Don't rely on GCC __attribute__((optimize)) to disable GCSE + - libbpf, hashmap: Fix undefined behavior in hash_bits + - pinctrl: mcp23s08: Use full chunk of memory for regmap configuration + - pinctrl: aspeed: Fix GPI only function problem. + - net/mlx5e: Fix modify header actions memory leak + - net/mlx5e: Protect encap route dev from concurrent release + - net/mlx5e: Use spin_lock_bh for async_icosq_lock + - net/mlx5: Fix deletion of duplicate rules + - net/mlx5e: Fix incorrect access of RCU-protected xdp_prog + - SUNRPC: Fix general protection fault in trace_rpc_xdr_overflow() + - NFSD: Fix use-after-free warning when doing inter-server copy + - NFSD: fix missing refcount in nfsd4_copy by nfsd4_do_async_copy + - tools/bpftool: Fix attaching flow dissector + - bpf: Zero-fill re-used per-cpu map element + - r8169: fix potential skb double free in an error path + - r8169: disable hw csum for short packets on all chip versions + - pinctrl: qcom: Move clearing pending IRQ to .irq_request_resources callback + - pinctrl: qcom: sm8250: Specify PDC map + - nbd: fix a block_device refcount leak in nbd_release + - selftest: fix flower terse dump tests + - i40e: Fix MAC address setting for a VF via Host/VM + - igc: Fix returning wrong statistics + - lan743x: correctly handle chips with internal PHY + - net: phy: realtek: support paged operations on RTL8201CP + - xfs: fix flags argument to rmap lookup when converting shared file rmaps + - xfs: set the unwritten bit in rmap lookup flags in xchk_bmap_get_rmapextents + - xfs: fix rmap key and record comparison functions + - xfs: fix brainos in the refcount scrubber's rmap fragment processor + - lan743x: fix "BUG: invalid wait context" when setting rx mode + - xfs: fix a missing unlock on error in xfs_fs_map_blocks + - of/address: Fix of_node memory leak in of_dma_is_coherent + - ch_ktls: Update cheksum information + - ch_ktls: tcb update fails sometimes + - cosa: Add missing kfree in error path of cosa_write + - hwmon: (applesmc) Re-work SMC comms + - vrf: Fix fast path output packet handling with async Netfilter rules + - lan743x: fix use of uninitialized variable + - arm64/mm: Validate hotplug range before creating linear mapping + - kernel/watchdog: fix watchdog_allowed_mask not used warning + - mm: memcontrol: fix missing wakeup polling thread + - afs: Fix afs_write_end() when called with copied == 0 [ver #3] + - perf: Fix get_recursion_context() + - nvme: factor out a nvme_configure_metadata helper + - nvme: freeze the queue over ->lba_shift updates + - nvme: fix incorrect behavior when BLKROSET is called by the user + - perf: Simplify group_sched_in() + - perf: Fix event multiplexing for exclusive groups + - firmware: xilinx: fix out-of-bounds access + - erofs: fix setting up pcluster for temporary pages + - erofs: derive atime instead of leaving it empty + - ext4: correctly report "not supported" for {usr,grp}jquota when + !CONFIG_QUOTA + - ext4: unlock xattr_sem properly in ext4_inline_data_truncate() + - btrfs: fix potential overflow in cluster_pages_for_defrag on 32bit arch + - btrfs: ref-verify: fix memory leak in btrfs_ref_tree_mod + - btrfs: fix min reserved size calculation in merge_reloc_root + - btrfs: dev-replace: fail mount if we don't have replace item with target + device + - KVM: arm64: Don't hide ID registers from userspace + - speakup: Fix var_id_t values and thus keymap + - speakup ttyio: Do not schedule() in ttyio_in_nowait + - speakup: Fix clearing selection in safe context + - thunderbolt: Fix memory leak if ida_simple_get() fails in + enumerate_services() + - thunderbolt: Add the missed ida_simple_remove() in ring_request_msix() + - block: add a return value to set_capacity_revalidate_and_notify + - loop: Fix occasional uevent drop + - uio: Fix use-after-free in uio_unregister_device() + - usb: cdc-acm: Add DISABLE_ECHO for Renesas USB Download mode + - usb: typec: ucsi: Report power supply changes + - xhci: hisilicon: fix refercence leak in xhci_histb_probe + - virtio: virtio_console: fix DMA memory allocation for rproc serial + - mei: protect mei_cl_mtu from null dereference + - futex: Don't enable IRQs unconditionally in put_pi_state() + - jbd2: fix up sparse warnings in checkpoint code + - bootconfig: Extend the magic check range to the preceding 3 bytes + - mm/compaction: count pages and stop correctly during page isolation + - mm/compaction: stop isolation if too many pages are isolated and we have + pages to migrate + - mm/slub: fix panic in slab_alloc_node() + - mm/vmscan: fix NR_ISOLATED_FILE corruption on 64-bit + - mm/gup: use unpin_user_pages() in __gup_longterm_locked() + - Revert "kernel/reboot.c: convert simple_strtoul to kstrtoint" + - reboot: fix overflow parsing reboot cpu number + - hugetlbfs: fix anon huge page migration race + - ocfs2: initialize ip_next_orphan + - selinux: Fix error return code in sel_ib_pkey_sid_slow() + - io_uring: round-up cq size before comparing with rounded sq size + - gpio: sifive: Fix SiFive gpio probe + - gpio: pcie-idio-24: Fix irq mask when masking + - gpio: pcie-idio-24: Fix IRQ Enable Register value + - gpio: pcie-idio-24: Enable PEX8311 interrupts + - mmc: sdhci-of-esdhc: Handle pulse width detection erratum for more SoCs + - mmc: renesas_sdhi_core: Add missing tmio_mmc_host_free() at remove + - don't dump the threads that had been already exiting when zapped. + - drm/i915: Correctly set SFC capability for video engines + - drm/gma500: Fix out-of-bounds access to struct drm_device.vblank[] + - pinctrl: amd: use higher precision for 512 RtcClk + - pinctrl: amd: fix incorrect way to disable debounce filter + - swiotlb: fix "x86: Don't panic if can not alloc buffer for swiotlb" + - cpufreq: Introduce governor flags + - cpufreq: Introduce CPUFREQ_GOV_STRICT_TARGET + - cpufreq: Add strict_target to struct cpufreq_policy + - ethtool: netlink: add missing netdev_features_change() call + - IPv6: Set SIT tunnel hard_header_len to zero + - net/af_iucv: fix null pointer dereference on shutdown + - net: udp: fix IP header access and skb lookup on Fast/frag0 UDP GRO + - net: udp: fix UDP header access on Fast/frag0 UDP GRO + - net: Update window_clamp if SOCK_RCVBUF is set + - net/x25: Fix null-ptr-deref in x25_connect + - tipc: fix memory leak in tipc_topsrv_start() + - powerpc/603: Always fault when _PAGE_ACCESSED is not set + - null_blk: Fix scheduling in atomic with zoned mode + - perf scripting python: Avoid declaring function pointers with a visibility + attribute + - coresight: etm: perf: Sink selection using sysfs is deprecated + - coresight: Fix uninitialised pointer bug in etm_setup_aux() + - Convert trailing spaces and periods in path components + - random32: make prandom_u32() output unpredictable + - amd/amdgpu: Disable VCN DPG mode for Picasso + * [SRU][F/G/H/U/OEM-5.6] Fix i2c report error on elan trackpoint + (LP: #1908335) + - Input: elan_i2c - add support for high resolution reports + - Input: elan_i2c - add new trackpoint report type 0x5F + - Input: elantech - fix protocol errors for some trackpoints in SMBus mode + * [SRU][OEM-5.6] UBUNTU: SAUCE: Fix brightness control on BOE 2270 panel + (LP: #1904991) + - drm/i915: Force DPCD backlight mode for BOE 2270 panel + * rtwpci driver blocks the system to enter PC10, stuck at PC3 (LP: #1907200) + - SAUCE: rtw88: 8723de: let cpu enter c10 + * Touchpad not detected on ByteSpeed C15B laptop (LP: #1906128) + - Input: i8042 - add ByteSpeed touchpad to noloop table + * Fix reading speed and duplex sysfs on igc device (LP: #1906851) + - SAUCE: igc: Report speed and duplex as unknown when device is runtime + suspended + * Groovy update: upstream stable patchset 2020-12-15 (LP: #1908323) + - tipc: fix use-after-free in tipc_bcast_get_mode + - drm/i915/gem: Avoid implicit vmap for highmem on x86-32 + - drm/i915/gem: Prevent using pgprot_writecombine() if PAT is not supported + - drm/i915/gem: Always test execution status on closing the context + - drm/i915/gt: Always send a pulse down the engine after disabling heartbeat + - drm/i915: Break up error capture compression loops with cond_resched() + - drm/i915: Cancel outstanding work after disabling heartbeats on an engine + - drm/i915: Avoid mixing integer types during batch copies + - drm/i915/gt: Initialize reserved and unspecified MOCS indices + - drm/i915/gt: Undo forced context restores after trivial preemptions + - drm/i915: Drop runtime-pm assert from vgpu io accessors + - drm/i915: Exclude low pages (128KiB) of stolen from use + - drm/i915: Use the active reference on the vma while capturing + - drm/i915: Reject 90/270 degree rotated initial fbs + - drm/i915: Restore ILK-M RPS support + - drm/nouveau/device: fix changing endianess code to work on older GPUs + - ptrace: fix task_join_group_stop() for the case when current is traced + - cadence: force nonlinear buffers to be cloned + - chelsio/chtls: fix memory leaks caused by a race + - chelsio/chtls: fix always leaking ctrl_skb + - dpaa_eth: update the buffer layout for non-A050385 erratum scenarios + - dpaa_eth: fix the RX headroom size alignment + - gianfar: Replace skb_realloc_headroom with skb_cow_head for PTP + - gianfar: Account for Tx PTP timestamp in the skb headroom + - ionic: check port ptr before use + - ip_tunnel: fix over-mtu packet send fail without TUNNEL_DONT_FRAGMENT flags + - net: ethernet: ti: cpsw: disable PTPv1 hw timestamping advertisement + - net: usb: qmi_wwan: add Telit LE910Cx 0x1230 composition + - powerpc/vnic: Extend "failover pending" window + - sctp: Fix COMM_LOST/CANT_STR_ASSOC err reporting on big-endian platforms + - sfp: Fix error handing in sfp_probe() + - ip6_tunnel: set inner ipproto before ip6_tnl_encap + - net: fec: fix MDIO probing for some FEC hardware blocks + - r8169: work around short packet hw bug on RTL8125 + - drm/nouveau/kms/nv50-: Get rid of bogus nouveau_conn_mode_valid() + - drm/nouveau/kms/nv50-: Fix clock checking algorithm in nv50_dp_mode_valid() + - Fonts: Replace discarded const qualifier + - ALSA: hda/realtek - Fixed HP headset Mic can't be detected + - ALSA: hda/realtek - Enable headphone for ASUS TM420 + - ALSA: usb-audio: Add implicit feedback quirk for Zoom UAC-2 + - ALSA: usb-audio: add usb vendor id as DSD-capable for Khadas devices + - ALSA: usb-audio: Add implicit feedback quirk for Qu-16 + - ALSA: usb-audio: Add implicit feedback quirk for MODX + - hugetlb_cgroup: fix reservation accounting + - mm: mempolicy: fix potential pte_unmap_unlock pte error + - lib/crc32test: remove extra local_irq_disable/enable + - kthread_worker: prevent queuing delayed work from timer_fn when it is being + canceled + - mm: always have io_remap_pfn_range() set pgprot_decrypted() + - perf hists browser: Increase size of 'buf' in perf_evsel__hists_browse() + - gfs2: Wake up when sd_glock_disposal becomes zero + - gfs2: Don't call cancel_delayed_work_sync from within delete work function + - ring-buffer: Fix recursion protection transitions between interrupt context + - iommu/vt-d: Fix kernel NULL pointer dereference in find_domain() + - mtd: spi-nor: Don't copy self-pointing struct around + - ftrace: Fix recursion check for NMI test + - ftrace: Handle tracing when switching between context + - regulator: defer probe when trying to get voltage from unresolved supply + - spi: bcm2835: fix gpio cs level inversion + - tracing: Fix out of bounds write in get_trace_buf + - futex: Handle transient "ownerless" rtmutex state correctly + - x86/lib: Change .weak to SYM_FUNC_START_WEAK for arch/x86/lib/mem*_64.S + - ARM: dts: sun4i-a10: fix cpu_alert temperature + - arm64: dts: meson: add missing g12 rng clock + - arm64: dts: amlogic: meson-g12: use the G12A specific dwmac compatible + - x86/kexec: Use up-to-dated screen_info copy to fill boot params + - hyperv_fb: Update screen_info after removing old framebuffer + - arm64: dts: amlogic: add missing ethernet reset ID + - io_uring: don't miss setting IO_WQ_WORK_CONCURRENT + - of: Fix reserved-memory overlap detection + - ARM: dts: mmp3: Add power domain for the camera + - drm/sun4i: frontend: Rework a bit the phase data + - drm/sun4i: frontend: Reuse the ch0 phase for RGB formats + - drm/sun4i: frontend: Fix the scaler phase on A33 + - drm/v3d: Fix double free in v3d_submit_cl_ioctl() + - blk-cgroup: Fix memleak on error path + - blk-cgroup: Pre-allocate tree node on blkg_conf_prep + - btrfs: drop the path before adding qgroup items when enabling qgroups + - btrfs: add a helper to read the tree_root commit root for backref lookup + - scsi: core: Don't start concurrent async scan on same host + - drm/amdgpu: disable DCN and VCN for navi10 blockchain SKU(v3) + - drm/amdgpu: add DID for navi10 blockchain SKU + - scsi: ibmvscsi: Fix potential race after loss of transport + - vsock: use ns_capable_noaudit() on socket create + - nvme-rdma: handle unexpected nvme completion data length + - nvmet: fix a NULL pointer dereference when tracing the flush command + - drm/vc4: drv: Add error handding for bind + - ACPI: NFIT: Fix comparison to '-ENXIO' + - usb: cdns3: gadget: suspicious implicit sign extension + - drm/nouveau/nouveau: fix the start/end range for migration + - drm/nouveau/gem: fix "refcount_t: underflow; use-after-free" + - arm64/smp: Move rcu_cpu_starting() earlier + - tty: fix crash in release_tty if tty->port is not set + - fork: fix copy_process(CLONE_PARENT) race with the exiting ->real_parent + - s390/mm: make pmd/pud_deref() large page aware + - s390/pkey: fix paes selftest failure with paes and pkey static build + - powerpc/8xx: Always fault when _PAGE_ACCESSED is not set + - powerpc/40x: Always fault when _PAGE_ACCESSED is not set + - serial: 8250_mtk: Fix uart_get_baud_rate warning + - serial: txx9: add missing platform_driver_unregister() on error in + serial_txx9_init + - USB: serial: cyberjack: fix write-URB completion race + - USB: serial: option: add Quectel EC200T module support + - USB: serial: option: add LE910Cx compositions 0x1203, 0x1230, 0x1231 + - USB: serial: option: add Telit FN980 composition 0x1055 + - usb: dwc3: ep0: Fix delay status handling + - USB: Add NO_LPM quirk for Kingston flash drive + - usb: mtu3: fix panic in mtu3_gadget_stop() + - io_uring: fix link lookup racing with link timeout + - drm/panfrost: Fix a deadlock between the shrinker and madvise path + - ARC: stack unwinding: avoid indefinite looping + - PM: runtime: Drop runtime PM references to supplier on link removal + - PM: runtime: Drop pm_runtime_clean_up_links() + - PM: runtime: Resume the device earlier in __device_release_driver() + - drm/i915/gt: Use the local HWSP offset during submission + - perf/core: Fix a memory leak in perf_event_parse_addr_filter() + - Revert "coresight: Make sysfs functional on topologies with per core sink" + * Groovy update: upstream stable patchset 2020-12-14 (LP: #1908150) + - xen/events: avoid removing an event channel while handling it + - xen/events: add a proper barrier to 2-level uevent unmasking + - xen/events: fix race in evtchn_fifo_unmask() + - xen/events: add a new "late EOI" evtchn framework + - xen/blkback: use lateeoi irq binding + - xen/netback: use lateeoi irq binding + - xen/scsiback: use lateeoi irq binding + - xen/pvcallsback: use lateeoi irq binding + - xen/pciback: use lateeoi irq binding + - xen/events: switch user event channels to lateeoi model + - xen/events: use a common cpu hotplug hook for event channels + - xen/events: defer eoi in case of excessive number of events + - xen/events: block rogue events for some time + - firmware: arm_scmi: Fix ARCH_COLD_RESET + - firmware: arm_scmi: Expand SMC/HVC message pool to more than one + - tee: client UUID: Skip REE kernel login method as well + - firmware: arm_scmi: Add missing Rx size re-initialisation + - x86/unwind/orc: Fix inactive tasks with stack pointer in %sp on GCC 10 + compiled kernels + - x86/alternative: Don't call text_poke() in lazy TLB mode + - ionic: no rx flush in deinit + - RDMA/mlx5: Fix devlink deadlock on net namespace deletion + - mlxsw: core: Fix use-after-free in mlxsw_emad_trans_finish() + - tracing, synthetic events: Replace buggy strcat() with seq_buf operations + - afs: Fix a use after free in afs_xattr_get_acl() + - afs: Fix afs_launder_page to not clear PG_writeback + - RDMA/qedr: Fix memory leak in iWARP CM + - ata: sata_nv: Fix retrieving of active qcs + - arm64: efi: increase EFI PE/COFF header padding to 64 KB + - afs: Fix to take ref on page when PG_private is set + - afs: Fix page leak on afs_write_begin() failure + - afs: Fix where page->private is set during write + - afs: Wrap page->private manipulations in inline functions + - afs: Alter dirty range encoding in page->private + - mm: add thp_order + - mm: add thp_size + - afs: Fix afs_invalidatepage to adjust the dirty region + - afs: Fix dirty-region encoding on ppc32 with 64K pages + - interconnect: qcom: sdm845: Enable keepalive for the MM1 BCM + - usb: host: ehci-tegra: Fix error handling in tegra_ehci_probe() + - futex: Fix incorrect should_fail_futex() handling + - powerpc/vmemmap: Fix memory leak with vmemmap list allocation failures. + - powerpc/powernv/smp: Fix spurious DBG() warning + - RDMA/core: Change how failing destroy is handled during uobj abort + - f2fs: allocate proper size memory for zstd decompress + - powerpc/watchpoint/ptrace: Fix SETHWDEBUG when CONFIG_HAVE_HW_BREAKPOINT=N + - [Config] update config for ARCH_WANT_IRQS_OFF_ACTIVATE_MM + - mm: fix exec activate_mm vs TLB shootdown and lazy tlb switching race + - powerpc: select ARCH_WANT_IRQS_OFF_ACTIVATE_MM + - sparc64: remove mm_cpumask clearing to fix kthread_use_mm race + - f2fs: add trace exit in exception path + - f2fs: do sanity check on zoned block device path + - f2fs: fix uninit-value in f2fs_lookup + - f2fs: fix to check segment boundary during SIT page readahead + - s390/startup: avoid save_area_sync overflow + - f2fs: compress: fix to disallow enabling compress on non-empty file + - um: change sigio_spinlock to a mutex + - f2fs: handle errors of f2fs_get_meta_page_nofail + - afs: Don't assert on unpurgeable server records + - powerpc/64s: handle ISA v3.1 local copy-paste context switches + - ARM: 8997/2: hw_breakpoint: Handle inexact watchpoint addresses + - NFS4: Fix oops when copy_file_range is attempted with NFS4.0 source + - xfs: Set xfs_buf type flag when growing summary/bitmap files + - xfs: Set xfs_buf's b_ops member when zeroing bitmap/summary files + - xfs: log new intent items created as part of finishing recovered intent + items + - power: supply: bq27xxx: report "not charging" on all types + - xfs: change the order in which child and parent defer ops are finished + - xfs: fix realtime bitmap/summary file truncation when growing rt volume + - ath10k: fix retry packets update in station dump + - x86/kaslr: Initialize mem_limit to the real maximum address + - drm/ast: Separate DRM driver from PCI code + - drm/amdgpu: restore ras flags when user resets eeprom(v2) + - video: fbdev: pvr2fb: initialize variables + - ath10k: start recovery process when payload length exceeds max htc length + for sdio + - ath10k: fix VHT NSS calculation when STBC is enabled + - drm/scheduler: Scheduler priority fixes (v2) + - drm/brige/megachips: Add checking if ge_b850v3_lvds_init() is working + correctly + - ASOC: SOF: Intel: hda-codec: move unused label to correct position + - ASoC: SOF: fix a runtime pm issue in SOF when HDMI codec doesn't work + - selftests/x86/fsgsbase: Reap a forgotten child + - drm/bridge_connector: Set default status connected for eDP connectors + - media: videodev2.h: RGB BT2020 and HSV are always full range + - ASoC: AMD: Clean kernel log from deferred probe error messages + - misc: fastrpc: fix common struct sg_table related issues + - staging: wfx: fix potential use before init + - media: platform: Improve queue set up flow for bug fixing + - usb: typec: tcpm: During PR_SWAP, source caps should be sent only after + tSwapSourceStart + - media: tw5864: check status of tw5864_frameinterval_get + - drm/vkms: avoid warning in vkms_get_vblank_timestamp + - media: imx274: fix frame interval handling + - mmc: via-sdmmc: Fix data race bug + - drm/bridge/synopsys: dsi: add support for non-continuous HS clock + - brcmfmac: increase F2 watermark for BCM4329 + - arm64: topology: Stop using MPIDR for topology information + - printk: reduce LOG_BUF_SHIFT range for H8300 + - ia64: kprobes: Use generic kretprobe trampoline handler + - kgdb: Make "kgdbcon" work properly with "kgdb_earlycon" + - bpf: Permit map_ptr arithmetic with opcode add and offset 0 + - drm: exynos: fix common struct sg_table related issues + - xen: gntdev: fix common struct sg_table related issues + - drm: lima: fix common struct sg_table related issues + - drm: panfrost: fix common struct sg_table related issues + - media: uvcvideo: Fix dereference of out-of-bound list iterator + - nfc: s3fwrn5: Add missing CRYPTO_HASH dependency + - selftests/bpf: Define string const as global for test_sysctl_prog.c + - selinux: access policycaps with READ_ONCE/WRITE_ONCE + - samples/bpf: Fix possible deadlock in xdpsock + - drm/amd/display: Check clock table return + - riscv: Define AT_VECTOR_SIZE_ARCH for ARCH_DLINFO + - cpufreq: sti-cpufreq: add stih418 support + - USB: adutux: fix debugging + - uio: free uio id after uio file node is freed + - coresight: Make sysfs functional on topologies with per core sink + - drm/amdgpu: No sysfs, not an error condition + - mac80211: add missing queue/hash initialization to 802.3 xmit + - usb: xhci: omit duplicate actions when suspending a runtime suspended host. + - SUNRPC: Mitigate cond_resched() in xprt_transmit() + - cpuidle: tegra: Correctly handle result of arm_cpuidle_simple_enter() + - arm64/mm: return cpu_all_mask when node is NUMA_NO_NODE + - can: flexcan: disable clocks during stop mode + - habanalabs: remove security from ARB_MST_QUIET register + - xfs: don't free rt blocks when we're doing a REMAP bunmapi call + - xfs: avoid LR buffer overrun due to crafted h_len + - ACPI: Add out of bounds and numa_off protections to pxm_to_node() + - octeontx2-af: fix LD CUSTOM LTYPE aliasing + - brcmfmac: Fix warning message after dongle setup failed + - ath11k: Use GFP_ATOMIC instead of GFP_KERNEL in ath11k_dp_htt_get_ppdu_desc + - ath11k: fix warning caused by lockdep_assert_held + - ath11k: change to disable softirqs for ath11k_regd_update to solve deadlock + - drivers/net/wan/hdlc_fr: Correctly handle special skb->protocol values + - usb: dwc3: core: do not queue work if dr_mode is not USB_DR_MODE_OTG + - bus: mhi: core: Abort suspends due to outgoing pending packets + - bus/fsl_mc: Do not rely on caller to provide non NULL mc_io + - ACPI: HMAT: Fix handling of changes from ACPI 6.2 to ACPI 6.3 + - power: supply: test_power: add missing newlines when printing parameters by + sysfs + - drm/amd/display: HDMI remote sink need mode validation for Linux + - drm/amd/display: Avoid set zero in the requested clk + - ARC: [dts] fix the errors detected by dtbs_check + - block: Consider only dispatched requests for inflight statistic + - btrfs: fix replace of seed device + - md/bitmap: md_bitmap_get_counter returns wrong blocks + - f2fs: fix to set SBI_NEED_FSCK flag for inconsistent inode + - bnxt_en: Log unknown link speed appropriately. + - rpmsg: glink: Use complete_all for open states + - PCI/ACPI: Add Ampere Altra SOC MCFG quirk + - clk: ti: clockdomain: fix static checker warning + - nfsd: rename delegation related tracepoints to make them less confusing + - net: 9p: initialize sun_server.sun_path to have addr's value only when addr + is valid + - ceph: encode inodes' parent/d_name in cap reconnect message + - drivers: watchdog: rdc321x_wdt: Fix race condition bugs + - jbd2: avoid transaction reuse after reformatting + - ext4: Detect already used quota file early + - KVM: PPC: Book3S HV: Do not allocate HPT for a nested guest + - scsi: core: Clean up allocation and freeing of sgtables + - gfs2: call truncate_inode_pages_final for address space glocks + - gfs2: Fix NULL pointer dereference in gfs2_rgrp_dump + - gfs2: use-after-free in sysfs deregistration + - gfs2: add validation checks for size of superblock + - Handle STATUS_IO_TIMEOUT gracefully + - cifs: handle -EINTR in cifs_setattr + - arm64: dts: renesas: ulcb: add full-pwr-cycle-in-suspend into eMMC nodes + - ARM: dts: omap4: Fix sgx clock rate for 4430 + - memory: emif: Remove bogus debugfs error handling + - ARM: dts: s5pv210: Enable audio on Aries boards + - ARM: dts: s5pv210: remove DMA controller bus node name to fix dtschema + warnings + - ARM: dts: s5pv210: move fixed clocks under root node + - ARM: dts: s5pv210: move PMU node out of clock controller + - ARM: dts: s5pv210: remove dedicated 'audio-subsystem' node + - ARM: dts: s5pv210: add RTC 32 KHz clock in Aries family + - ARM: dts: s5pv210: align SPI GPIO node name with dtschema in Aries + - soc: qcom: rpmh-rsc: Sleep waiting for tcs slots to be free + - firmware: arm_scmi: Move scmi bus init and exit calls into the driver + - nbd: make the config put is called before the notifying the waiter + - sgl_alloc_order: fix memory leak + - nvme-rdma: fix crash when connect rejected + - vmlinux.lds.h: Add PGO and AutoFDO input sections + - irqchip/loongson-htvec: Fix initial interrupt clearing + - md: fix the checking of wrong work queue + - md/raid5: fix oops during stripe resizing + - mmc: sdhci: Add LTR support for some Intel BYT based controllers + - mmc: sdhci-acpi: AMDI0040: Set SDHCI_QUIRK2_PRESET_VALUE_BROKEN + - seccomp: Make duplicate listener detection non-racy + - selftests/x86/fsgsbase: Test PTRACE_PEEKUSER for GSBASE with invalid LDT GS + - perf/x86/intel: Fix Ice Lake event constraint table + - perf/x86/amd: Fix sampling Large Increment per Cycle events + - perf/amd/uncore: Set all slices and threads to restore perf stat -a + behaviour + - perf/x86/amd/ibs: Don't include randomized bits in get_ibs_op_count() + - perf/x86/amd/ibs: Fix raw sample data accumulation + - spi: spi-mtk-nor: fix timeout calculation overflow + - spi: sprd: Release DMA channel also on probe deferral + - extcon: ptn5150: Fix usage of atomic GPIO with sleeping GPIO chips + - leds: bcm6328, bcm6358: use devres LED registering function + - hwmon: (pmbus/max34440) Fix OC fault limits + - media: uvcvideo: Fix uvc_ctrl_fixup_xu_info() not having any effect + - fs: Don't invalidate page buffers in block_write_full_page() + - ACPI: configfs: Add missing config_item_put() to fix refcount leak + - NFS: fix nfs_path in case of a rename retry + - ACPI: button: fix handling lid state changes when input device closed + - ACPI / extlog: Check for RDMSR failure + - ACPI: debug: don't allow debugging when ACPI is disabled + - PCI/ACPI: Whitelist hotplug ports for D3 if power managed by ACPI + - ACPI: EC: PM: Flush EC work unconditionally after wakeup + - ACPI: EC: PM: Drop ec_no_wakeup check from acpi_ec_dispatch_gpe() + - acpi-cpufreq: Honor _PSD table setting on new AMD CPUs + - io-wq: assign NUMA node locality if appropriate + - w1: mxc_w1: Fix timeout resolution problem leading to bus error + - fs/kernel_read_file: Remove FIRMWARE_PREALLOC_BUFFER enum + - scsi: mptfusion: Fix null pointer dereferences in mptscsih_remove() + - scsi: qla2xxx: Fix MPI reset needed message + - scsi: qla2xxx: Fix reset of MPI firmware + - scsi: qla2xxx: Fix crash on session cleanup with unload + - PM: runtime: Remove link state checks in rpm_get/put_supplier() + - btrfs: qgroup: fix wrong qgroup metadata reserve for delayed inode + - btrfs: improve device scanning messages + - btrfs: qgroup: fix qgroup meta rsv leak for subvolume operations + - btrfs: sysfs: init devices outside of the chunk_mutex + - btrfs: tracepoints: output proper root owner for trace_find_free_extent() + - btrfs: reschedule if necessary when logging directory items + - btrfs: send, orphanize first all conflicting inodes when processing + references + - btrfs: send, recompute reference path after orphanization of a directory + - btrfs: use kvzalloc() to allocate clone_roots in btrfs_ioctl_send() + - btrfs: tree-checker: fix false alert caused by legacy btrfs root item + - btrfs: reschedule when cloning lots of extents + - btrfs: cleanup cow block on error + - btrfs: skip devices without magic signature when mounting + - btrfs: tree-checker: validate number of chunk stripes and parity + - btrfs: fix use-after-free on readahead extent after failure to create it + - btrfs: fix readahead hang and use-after-free after removing a device + - btrfs: drop the path before adding block group sysfs files + - usb: dwc3: pci: Allow Elkhart Lake to utilize DSM method for PM + functionality + - usb: dwc3: ep0: Fix ZLP for OUT ep0 requests + - usb: dwc3: gadget: Check MPS of the request length + - usb: dwc3: gadget: Reclaim extra TRBs after request completion + - usb: dwc3: core: add phy cleanup for probe error handling + - usb: dwc3: core: don't trigger runtime pm when remove driver + - usb: dwc3: gadget: Resume pending requests after CLEAR_STALL + - usb: dwc3: gadget: END_TRANSFER before CLEAR_STALL command + - usb: cdns3: gadget: improve the set_configuration handling + - usb: cdns3: Fix on-chip memory overflow issue + - usb: cdc-acm: fix cooldown mechanism + - usb: typec: tcpm: reset hard_reset_count for any disconnect + - usb: host: fsl-mph-dr-of: check return of dma_set_mask() + - usbcore: Check both id_table and match() when both available + - USB: apple-mfi-fastcharge: don't probe unhandled devices + - drm/i915: Force VT'd workarounds when running as a guest OS + - vt: keyboard, simplify vt_kdgkbsent + - vt: keyboard, extend func_buf_lock to readers + - HID: wacom: Avoid entering wacom_wac_pen_report for pad / battery + - x86/mce: Allow for copy_mc_fragile symbol checksum to be generated + - tty: serial: 21285: fix lockup on open + - tty: serial: fsl_lpuart: LS1021A has a FIFO size of 16 words, like LS1028A + - Revert "vhost-vdpa: fix page pinning leakage in error path" + - powerpc: Fix random segfault when freeing hugetlb range + - udf: Fix memory leak when mounting + - dmaengine: dma-jz4780: Fix race in jz4780_dma_tx_status + - vdpa_sim: Fix DMA mask + - iio: ltc2983: Fix of_node refcounting + - iio: adc: at91-sama5d2_adc: fix DMA conversion crash + - iio:imu:inv_mpu6050 Fix dma and ts alignment and data leak issues. + - iio:imu:st_lsm6dsx: check st_lsm6dsx_shub_read_output return + - iio:light:si1145: Fix timestamp alignment and prevent data leak. + - iio: adc: gyroadc: fix leak of device node iterator + - iio: ad7292: Fix of_node refcounting + - iio:adc:ti-adc0832 Fix alignment issue with timestamp + - iio:adc:ti-adc12138 Fix alignment issue with timestamp + - iio:imu:st_lsm6dsx Fix alignment and data leak issues + - iio:gyro:itg3200: Fix timestamp alignment and prevent data leak. + - powerpc/drmem: Make lmb_size 64 bit + - rcu-tasks: Fix grace-period/unlock race in RCU Tasks Trace + - rcu-tasks: Fix low-probability task_struct leak + - rcu-tasks: Enclose task-list scan in rcu_read_lock() + - MIPS: DEC: Restore bootmem reservation for firmware working memory area + - MIPS: configs: lb60: Fix defconfig not selecting correct board + - s390/stp: add locking to sysfs functions + - powerpc: Warn about use of smt_snooze_delay + - powerpc/memhotplug: Make lmb size 64bit + - powerpc/powernv/elog: Fix race while processing OPAL error log event. + - powerpc/powermac: Fix low_sleep_handler with KUAP and KUEP + - powerpc/mce: Avoid nmi_enter/exit in real mode on pseries hash + - powerpc/32: Fix vmap stack - Do not activate MMU before reading task struct + - powerpc/32: Fix vmap stack - Properly set r1 before activating MMU + - block: advance iov_iter on bio_add_hw_page failure + - io_uring: use type appropriate io_kiocb handler for double poll + - gfs2: Make sure we don't miss any delayed withdraws + - gfs2: Only access gl_delete for iopen glocks + - NFSv4: Wait for stateid updates after CLOSE/OPEN_DOWNGRADE + - NFSv4.2: support EXCHGID4_FLAG_SUPP_FENCE_OPS 4.2 EXCHANGE_ID flag + - NFSD: Add missing NFSv2 .pc_func methods + - ubifs: dent: Fix some potential memory leaks while iterating entries + - ubifs: xattr: Fix some potential memory leaks while iterating entries + - ubifs: journal: Make sure to not dirty twice for auth nodes + - ubifs: Fix a memleak after dumping authentication mount options + - ubifs: Don't parse authentication mount options in remount process + - ubifs: mount_ubifs: Release authentication resource in error handling path + - perf vendor events amd: Add L2 Prefetch events for zen1 + - perf python scripting: Fix printable strings in python3 scripts + - ARC: perf: redo the pct irq missing in device-tree handling + - ubi: check kthread_should_stop() after the setting of task state + - ia64: fix build error with !COREDUMP + - rtc: rx8010: don't modify the global rtc ops + - i2c: imx: Fix external abort on interrupt in exit paths + - drm/amdgpu: don't map BO in reserved region + - drm/amd/display: Fix incorrect backlight register offset for DCN + - drm/amd/display: Increase timeout for DP Disable + - drm/amdgpu/vcn1.0: fix no previous prototype for functions + - drm/amdgpu: vcn and jpeg ring synchronization + - drm/amdgpu: correct the gpu reset handling for job != NULL case + - drm/amdkfd: Use same SQ prefetch setting as amdgpu + - drm/amd/display: Avoid MST manager resource leak. + - drm/amdgpu: increase the reserved VM size to 2MB + - drm/amd/display: Don't invoke kgdb_breakpoint() unconditionally + - drm/amd/display: Fix kernel panic by dal_gpio_open() error + - ceph: promote to unsigned long long before shifting + - libceph: clear con->out_msg on Policy::stateful_server faults + - 9P: Cast to loff_t before multiplying + - net/sunrpc: Fix return value for sysctl sunrpc.transports + - PCI: qcom: Make sure PCIe is reset before init for rev 2.1.0 + - ring-buffer: Return 0 on success from ring_buffer_resize() + - intel_idle: Ignore _CST if control cannot be taken from the platform + - intel_idle: Fix max_cstate for processor models without C-state tables + - cpufreq: Introduce CPUFREQ_NEED_UPDATE_LIMITS driver flag + - vringh: fix __vringh_iov() when riov and wiov are different + - ext4: fix leaking sysfs kobject after failed mount + - ext4: fix error handling code in add_new_gdb + - ext4: fix invalid inode checksum + - ext4: clear buffer verified flag if read meta block from disk + - ext4: fix bdev write error check failed when mount fs with ro + - ext4: fix bs < ps issue reported with dioread_nolock mount opt + - ext4: do not use extent after put_bh + - drm/ttm: fix eviction valuable range check. + - mmc: sdhci-of-esdhc: make sure delay chain locked for HS400 + - mmc: sdhci-of-esdhc: set timeout to max before tuning + - mmc: sdhci: Use Auto CMD Auto Select only when v4_mode is true + - memory: tegra: Remove GPU from DRM IOMMU group + - memory: brcmstb_dpfe: Fix memory leak + - futex: Adjust absolute futex timeouts with per time namespace offset + - drm/amd/pm: increase mclk switch threshold to 200 us + - tty: make FONTX ioctl use the tty pointer they were actually passed + - arm64: berlin: Select DW_APB_TIMER_OF + - [Config] update annotations for DW_APB_TIMER + - cachefiles: Handle readpage error correctly + - hil/parisc: Disable HIL driver when it gets stuck + - arm: dts: mt7623: add missing pause for switchport + - ARM: aspeed: g5: Do not set sirq polarity + - ARM: dts: s5pv210: fix pinctrl property of "vibrator-en" regulator in Aries + - ARM: config: aspeed: Fix selection of media drivers + - ARM: samsung: fix PM debug build with DEBUG_LL but !MMU + - ARM: s3c24xx: fix missing system reset + - arm64: Change .weak to SYM_FUNC_START_WEAK_PI for arch/arm64/lib/mem*.S + - arm64: dts: marvell: espressobin: Add ethernet switch aliases + - null_blk: synchronization fix for zoned device + - coresight: cti: Initialize dynamic sysfs attributes + - device property: Keep secondary firmware node secondary by type + - device property: Don't clear secondary pointer for shared primary firmware + node + - KVM: arm64: Fix AArch32 handling of DBGD{CCINT,SCRext} and DBGVCR + - staging: fieldbus: anybuss: jump to correct label in an error path + - staging: comedi: cb_pcidas: Allow 2-channel commands for AO subdevice + - staging: octeon: repair "fixed-link" support + - staging: octeon: Drop on uncorrectable alignment or FCS error + - cpufreq: Introduce cpufreq_driver_test_flags() + - cpufreq: schedutil: Always call driver if CPUFREQ_NEED_UPDATE_LIMITS is set + - time: Prevent undefined behaviour in timespec64_to_ns() + - block: add capacity field to zone descriptors + - null_blk: introduce zone capacity for zoned device + - null_blk: Fix zone reset all tracing + - null_blk: Fix locking in zoned mode + - usb: dwc2: Avoid leaving the error_debugfs label unused + * [HP 635] Radeon 6310 brightness control does not work (LP: #1894667) // + Groovy update: upstream stable patchset 2020-12-14 (LP: #1908150) + - ACPI: video: use ACPI backlight for HP 635 Notebook + * CVE-2020-28974 + - vt: Disable KD_FONT_OP_COPY + * stack trace in kernel (LP: #1903596) + - net: napi: remove useless stack trace + * Refresh ACPI wakeup power to make Thunderbolt hotplug detection work + (LP: #1906229) + - PM: ACPI: PCI: Drop acpi_pm_set_bridge_wakeup() + - PM: ACPI: Refresh wakeup device power configuration every time + * CVE-2020-27777 + - powerpc/rtas: Restrict RTAS requests from userspace + - [Config]: Set CONFIG_PPC_RTAS_FILTER + * NULL pointer dereference when configuring multi-function with devfn != 0 + before devfn == 0 (LP: #1903682) + - s390/pci: fix hot-plug of PCI function missing bus + * [UBUNTU 20.10] Applications runing in QEMU/KVM get translation faults + (LP: #1906255) + - s390: fix fpu restore in entry.S + * Add dpcd backlight control for 0x4c83 0x4f41 (LP: #1905663) + - SAUCE: drm/dp: Add dpcd backlight control for 0x4c83 0x4f41 + + -- Ian May Tue, 09 Feb 2021 17:39:18 -0600 + +linux-azure (5.8.0-1022.24) groovy; urgency=medium + + * groovy/linux-azure: 5.8.0-1022.24 -proposed tracker (LP: #1914675) + + [ Ubuntu: 5.8.0-43.49 ] + + * groovy/linux: 5.8.0-43.49 -proposed tracker (LP: #1914689) + * Packaging resync (LP: #1786013) + - update dkms package versions + * Exploitable vulnerabilities in AF_VSOCK implementation (LP: #1914668) + - vsock: fix the race conditions in multi-transport support + + -- Khalid Elmously Thu, 04 Feb 2021 23:10:23 -0500 + +linux-azure (5.8.0-1020.22) groovy; urgency=medium + + * groovy/linux-azure: 5.8.0-1020.22 -proposed tracker (LP: #1912236) + + * [linux-azure] Batch hibernate and resume IO requests (LP: #1904458) + - PM: hibernate: Batch hibernate and resume IO requests + + [ Ubuntu: 5.8.0-41.46 ] + + * groovy/linux: 5.8.0-41.46 -proposed tracker (LP: #1912219) + * Groovy update: upstream stable patchset 2020-12-17 (LP: #1908555) // nvme + drive fails after some time (LP: #1910866) + - Revert "nvme-pci: remove last_sq_tail" + * initramfs unpacking failed (LP: #1835660) + - SAUCE: lib/decompress_unlz4.c: correctly handle zero-padding around initrds. + * overlay: permission regression in 5.4.0-51.56 due to patches related to + CVE-2020-16120 (LP: #1900141) + - ovl: do not fail because of O_NOATIME + + -- Kleber Sacilotto de Souza Tue, 19 Jan 2021 10:09:49 +0100 + +linux-azure (5.8.0-1019.21) groovy; urgency=medium + + [ Ubuntu: 5.8.0-40.45 ] + + * Packaging resync (LP: #1786013) + - update dkms package versions + + [ Ubuntu: 5.8.0-38.43 ] + + * groovy/linux: 5.8.0-38.43 -proposed tracker (LP: #1911143) + * CVE-2020-28374 + - SAUCE: target: fix XCOPY NAA identifier lookup + * Packaging resync (LP: #1786013) + - update dkms package versions + + -- Kleber Sacilotto de Souza Fri, 15 Jan 2021 14:58:40 +0100 + +linux-azure (5.8.0-1017.19) groovy; urgency=medium + + [ Ubuntu: 5.8.0-36.40 ] + + * debian/scripts/file-downloader does not handle positive failures correctly + (LP: #1878897) + - [Packaging] file-downloader not handling positive failures correctly + + [ Ubuntu: 5.8.0-35.39 ] + + * Packaging resync (LP: #1786013) + - update dkms package versions + * CVE-2021-1052 // CVE-2021-1053 + - [Packaging] NVIDIA -- Add the NVIDIA 460 driver + + -- Thadeu Lima de Souza Cascardo Wed, 06 Jan 2021 12:08:19 -0300 + +linux-azure (5.8.0-1016.17) groovy; urgency=medium + + * groovy/linux-azure: 5.8.0-1016.17 -proposed tracker (LP: #1907566) + + * Groovy update: v5.8.18 upstream stable release (LP: #1904941) + - [Config] linux-azure: update config for ARCH_HAS_COPY_MC + + [ Ubuntu: 5.8.0-34.37 ] + + * groovy/linux: 5.8.0-34.37 -proposed tracker (LP: #1907576) + * Packaging resync (LP: #1786013) + - update dkms package versions + * [Ubuntu 21.04 FEAT] mpt3sas: Request to include the patch set which supports + topology where zoning is enabled in expander (LP: #1899802) + - scsi: mpt3sas: Define hba_port structure + - scsi: mpt3sas: Allocate memory for hba_port objects + - scsi: mpt3sas: Rearrange _scsih_mark_responding_sas_device() + - scsi: mpt3sas: Update hba_port's sas_address & phy_mask + - scsi: mpt3sas: Get device objects using sas_address & portID + - scsi: mpt3sas: Rename transport_del_phy_from_an_existing_port() + - scsi: mpt3sas: Get sas_device objects using device's rphy + - scsi: mpt3sas: Update hba_port objects after host reset + - scsi: mpt3sas: Set valid PhysicalPort in SMPPassThrough + - scsi: mpt3sas: Handling HBA vSES device + - scsi: mpt3sas: Add bypass_dirty_port_flag parameter + - scsi: mpt3sas: Handle vSES vphy object during HBA reset + - scsi: mpt3sas: Add module parameter multipath_on_hba + - scsi: mpt3sas: Bump driver version to 35.101.00.00 + * CVE-2020-12912 + - hwmon: (amd_energy) modify the visibility of the counters + * Intel Tiger Lake IDs supplement (LP: #1904521) + - mtd: spi-nor: intel-spi: Add support for Intel Tiger Lake-H SPI serial flash + - pinctrl: tigerlake: Add support for Tiger Lake-H + * [i915] Noise-like lines of graphics corruption when moving windows in Xorg + sessions (LP: #1896091) + - Revert "UBUNTU: SAUCE: drm/i915: Synchronize active and retire callbacks" + * Fix no headset sound after S3 on Intel HDA (LP: #1904595) + - ALSA: hda: Refactor codec PM to use direct-complete optimization + - ALSA: hda: Separate runtime and system suspend + - ALSA: hda: Reinstate runtime_allow() for all hda controllers + * Ask 8821C Bluetooth controller to drop old firmware (LP: #1904221) + - Bluetooth: btrtl: Ask 8821C to drop old firmware + - Bluetooth: btrtl: fix incorrect skb allocation failure check + * Use ACPI S5 for reboot (LP: #1904225) + - PM: ACPI: reboot: Use S5 for reboot + * Groovy update: v5.8.18 upstream stable release (LP: #1904941) + - netfilter: nftables_offload: KASAN slab-out-of-bounds Read in + nft_flow_rule_create + - io_uring: don't run task work on an exiting task + - io_uring: allow timeout/poll/files killing to take task into account + - io_uring: move dropping of files into separate helper + - io_uring: stash ctx task reference for SQPOLL + - io_uring: unconditionally grab req->task + - io_uring: return cancelation status from poll/timeout/files handlers + - io_uring: enable task/files specific overflow flushing + - io_uring: don't rely on weak ->files references + - io_uring: reference ->nsproxy for file table commands + - io_wq: Make io_wqe::lock a raw_spinlock_t + - io-wq: fix use-after-free in io_wq_worker_running + - io_uring: no need to call xa_destroy() on empty xarray + - io_uring: Fix use of XArray in __io_uring_files_cancel + - io_uring: Fix XArray usage in io_uring_add_task_file + - io_uring: Convert advanced XArray uses to the normal API + - scripts/setlocalversion: make git describe output more reliable + - efi/arm64: libstub: Deal gracefully with EFI_RNG_PROTOCOL failure + - fs/kernel_read_file: Remove FIRMWARE_EFI_EMBEDDED enum + - arm64: Run ARCH_WORKAROUND_1 enabling code on all CPUs + - arm64: Run ARCH_WORKAROUND_2 enabling code on all CPUs + - arm64: link with -z norelro regardless of CONFIG_RELOCATABLE + - x86/PCI: Fix intel_mid_pci.c build error when ACPI is not enabled + - x86, powerpc: Rename memcpy_mcsafe() to copy_mc_to_{user, kernel}() + - [Config] update config for ARCH_HAS_COPY_MC + - x86/copy_mc: Introduce copy_mc_enhanced_fast_string() + - bnxt_en: Check abort error state in bnxt_open_nic(). + - bnxt_en: Fix regression in workqueue cleanup logic in bnxt_remove_one(). + - bnxt_en: Invoke cancel_delayed_work_sync() for PFs also. + - bnxt_en: Re-write PCI BARs after PCI fatal error. + - bnxt_en: Send HWRM_FUNC_RESET fw command unconditionally. + - chelsio/chtls: fix deadlock issue + - chelsio/chtls: fix memory leaks in CPL handlers + - chelsio/chtls: fix tls record info to user + - cxgb4: set up filter action after rewrites + - gtp: fix an use-before-init in gtp_newlink() + - ibmveth: Fix use of ibmveth in a bridge. + - ibmvnic: fix ibmvnic_set_mac + - mlxsw: core: Fix memory leak on module removal + - netem: fix zero division in tabledist + - net: hns3: Clear the CMDQ registers before unmapping BAR region + - net: ipa: command payloads already mapped + - net/sched: act_mpls: Add softdep on mpls_gso.ko + - r8169: fix issue with forced threading in combination with shared interrupts + - ravb: Fix bit fields checking in ravb_hwtstamp_get() + - tcp: Prevent low rmem stalls with SO_RCVLOWAT. + - tipc: fix memory leak caused by tipc_buf_append() + - net: protect tcf_block_unbind with block lock + - erofs: avoid duplicated permission check for "trusted." xattrs + - arch/x86/amd/ibs: Fix re-arming IBS Fetch + - x86/traps: Fix #DE Oops message regression + - x86/xen: disable Firmware First mode for correctable memory errors + - PCI: aardvark: Fix initialization with old Marvell's Arm Trusted Firmware + - ata: ahci: mvebu: Make SATA PHY optional for Armada 3720 + - fuse: fix page dereference after free + - bpf: Fix comment for helper bpf_current_task_under_cgroup() + - evm: Check size of security.evm before using it + - p54: avoid accessing the data mapped to streaming DMA + - cxl: Rework error message for incompatible slots + - RDMA/addr: Fix race with netevent_callback()/rdma_addr_cancel() + - mtd: lpddr: Fix bad logic in print_drs_error + - drm/i915/gem: Serialise debugfs i915_gem_objects with ctx->mutex + - serial: qcom_geni_serial: To correct QUP Version detection logic + - serial: pl011: Fix lockdep splat when handling magic-sysrq interrupt + - PM: runtime: Fix timer_expires data type on 32-bit arches + - ata: sata_rcar: Fix DMA boundary mask + - xen/gntdev.c: Mark pages as dirty + - openrisc: Fix issue with get_user for 64-bit values + - misc: rtsx: do not setting OC_POWER_DOWN reg in rtsx_pci_init_ocp() + - phy: marvell: comphy: Convert internal SMCC firmware return codes to errno + - Linux 5.8.18 + * linux-riscv 5.8.0-9-generic (all 5.8 kernels) fail to boot in qemu + (LP: #1904912) + - riscv: Fixup bootup failure with HARDENED_USERCOPY + * Bionic: btrfs: kernel BUG at /build/linux- + eTBZpZ/linux-4.15.0/fs/btrfs/ctree.c:3233! (LP: #1902254) + - btrfs: tree-checker: fix incorrect printk format + + -- Kleber Sacilotto de Souza Tue, 15 Dec 2020 18:29:30 +0100 + +linux-azure (5.8.0-1015.16) groovy; urgency=medium + + * groovy/linux-azure: 5.8.0-1015.16 -proposed tracker (LP: #1907398) + + [ Ubuntu: 5.8.0-33.36 ] + + * groovy/linux: 5.8.0-33.36 -proposed tracker (LP: #1907408) + * raid10: discard leads to corrupted file system (LP: #1907262) + - Revert "dm raid: remove unnecessary discard limits for raid10" + - Revert "dm raid: fix discard limits for raid1 and raid10" + - Revert "md/raid10: improve discard request for far layout" + - Revert "md/raid10: improve raid10 discard request" + - Revert "md/raid10: pull codes that wait for blocked dev into one function" + - Revert "md/raid10: extend r10bio devs to raid disks" + - Revert "md: add md_submit_discard_bio() for submitting discard bio" + + [ Ubuntu: 5.8.0-31.33 ] + + * groovy/linux: 5.8.0-31.33 -proposed tracker (LP: #1905299) + * Groovy 5.8 kernel hangs on boot on CPUs with eLLC (LP: #1903397) + - drm/i915: Mark ininitial fb obj as WT on eLLC machines to avoid rcu lockup + during fbdev init + * CVE-2020-4788 + - selftests/powerpc: rfi_flush: disable entry flush if present + - powerpc/64s: flush L1D on kernel entry + - powerpc/64s: flush L1D after user accesses + - selftests/powerpc: entry flush test + + -- Marcelo Henrique Cerri Wed, 09 Dec 2020 11:09:15 -0300 + +linux-azure (5.8.0-1013.14) groovy; urgency=medium + + * groovy/linux-azure: 5.8.0-1013.14 -proposed tracker (LP: #1903184) + + * linux-azure: build and include the tcm_loop module to the main kernel + package (LP: #1791794) + - [Config] linux-azure: CONFIG_LOOPBACK_TARGET=m (tcm_loop) + + [ Ubuntu: 5.8.0-30.32 ] + + * groovy/linux: 5.8.0-30.32 -proposed tracker (LP: #1903194) + * Update kernel packaging to support forward porting kernels (LP: #1902957) + - [Debian] Update for leader included in BACKPORT_SUFFIX + * Avoid double newline when running insertchanges (LP: #1903293) + - [Packaging] insertchanges: avoid double newline + * EFI: Fails when BootCurrent entry does not exist (LP: #1899993) + - efivarfs: Replace invalid slashes with exclamation marks in dentries. + * raid10: Block discard is very slow, causing severe delays for mkfs and + fstrim operations (LP: #1896578) + - md: add md_submit_discard_bio() for submitting discard bio + - md/raid10: extend r10bio devs to raid disks + - md/raid10: pull codes that wait for blocked dev into one function + - md/raid10: improve raid10 discard request + - md/raid10: improve discard request for far layout + - dm raid: fix discard limits for raid1 and raid10 + - dm raid: remove unnecessary discard limits for raid10 + * Bionic: btrfs: kernel BUG at /build/linux- + eTBZpZ/linux-4.15.0/fs/btrfs/ctree.c:3233! (LP: #1902254) + - btrfs: extent_io: do extra check for extent buffer read write functions + - btrfs: extent-tree: kill BUG_ON() in __btrfs_free_extent() + - btrfs: extent-tree: kill the BUG_ON() in insert_inline_extent_backref() + - btrfs: ctree: check key order before merging tree blocks + * Tiger Lake PMC core driver fixes (LP: #1899883) + - platform/x86: intel_pmc_core: update TGL's LPM0 reg bit map name + - platform/x86: intel_pmc_core: fix bound check in pmc_core_mphy_pg_show() + - platform/x86: pmc_core: Use descriptive names for LPM registers + - platform/x86: intel_pmc_core: Fix TigerLake power gating status map + - platform/x86: intel_pmc_core: Fix the slp_s0 counter displayed value + * drm/i915/dp_mst - System would hang during the boot up. (LP: #1902469) + - Revert "UBUNTU: SAUCE: drm/i915/display: Fix null deref in + intel_psr_atomic_check()" + - drm/i915: Fix encoder lookup during PSR atomic check + * Undetected Data corruption in MPI workloads that use VSX for reductions on + POWER9 DD2.1 systems (LP: #1902694) + - powerpc: Fix undetected data corruption with P9N DD2.1 VSX CI load emulation + - selftests/powerpc: Make alignment handler test P9N DD2.1 vector CI load + workaround + * [20.04 FEAT] Support/enhancement of NVMe IPL (LP: #1902179) + - s390/ipl: support NVMe IPL kernel parameters + * uvcvideo: add mapping for HEVC payloads (LP: #1895803) + - media: uvcvideo: Add mapping for HEVC payloads + * risc-v 5.8 kernel oops on ftrace tests (LP: #1894613) + - stop_machine, rcu: Mark functions as notrace + * Groovy update: v5.8.17 upstream stable release (LP: #1902137) + - xgb4: handle 4-tuple PEDIT to NAT mode translation + - ibmveth: Switch order of ibmveth_helper calls. + - ibmveth: Identify ingress large send packets. + - ipv4: Restore flowi4_oif update before call to xfrm_lookup_route + - mlx4: handle non-napi callers to napi_poll + - net: dsa: microchip: fix race condition + - net: fec: Fix phy_device lookup for phy_reset_after_clk_enable() + - net: fec: Fix PHY init after phy_reset_after_clk_enable() + - net: fix pos incrementment in ipv6_route_seq_next + - net: ipa: skip suspend/resume activities if not set up + - net: mptcp: make DACK4/DACK8 usage consistent among all subflows + - net: sched: Fix suspicious RCU usage while accessing tcf_tunnel_info + - net/smc: fix use-after-free of delayed events + - net/smc: fix valid DMBE buffer sizes + - net/tls: sendfile fails with ktls offload + - net: usb: qmi_wwan: add Cellient MPL200 card + - tipc: fix the skb_unshare() in tipc_buf_append() + - socket: fix option SO_TIMESTAMPING_NEW + - socket: don't clear SOCK_TSTAMP_NEW when SO_TIMESTAMPNS is disabled + - can: m_can_platform: don't call m_can_class_suspend in runtime suspend + - can: j1935: j1939_tp_tx_dat_new(): fix missing initialization of skbcnt + - net: j1939: j1939_session_fresh_new(): fix missing initialization of skbcnt + - net/ipv4: always honour route mtu during forwarding + - net_sched: remove a redundant goto chain check + - r8169: fix data corruption issue on RTL8402 + - binder: fix UAF when releasing todo list + - ALSA: bebob: potential info leak in hwdep_read() + - ALSA: hda/hdmi: fix incorrect locking in hdmi_pcm_close + - tipc: re-configure queue limit for broadcast link + - tipc: fix incorrect setting window for bcast link + - chelsio/chtls: fix socket lock + - chelsio/chtls: correct netdevice for vlan interface + - chelsio/chtls: fix panic when server is on ipv6 + - chelsio/chtls: Fix panic when listen on multiadapter + - chelsio/chtls: correct function return and return type + - chelsio/chtls: fix writing freed memory + - ibmvnic: save changed mac address to adapter->mac_addr + - icmp: randomize the global rate limiter + - mptcp: initialize mptcp_options_received's ahmac + - net: ftgmac100: Fix Aspeed ast2600 TX hang issue + - net: hdlc: In hdlc_rcv, check to make sure dev is an HDLC device + - net: hdlc_raw_eth: Clear the IFF_TX_SKB_SHARING flag after calling + ether_setup + - net: Properly typecast int values to set sk_max_pacing_rate + - net/sched: act_ct: Fix adding udp port mangle operation + - net/sched: act_tunnel_key: fix OOB write in case of IPv6 ERSPAN tunnels + - nexthop: Fix performance regression in nexthop deletion + - nfc: Ensure presence of NFC_ATTR_FIRMWARE_NAME attribute in + nfc_genl_fw_download() + - r8169: fix operation under forced interrupt threading + - selftests: forwarding: Add missing 'rp_filter' configuration + - tcp: fix to update snd_wl1 in bulk receiver fast path + - net: ethernet: mtk-star-emac: select REGMAP_MMIO + - net/sched: act_gate: Unlock ->tcfa_lock in tc_setup_flow_action() + - ALSA: hda - Don't register a cb func if it is registered already + - ALSA: hda - Fix the return value if cb func is already registered + - ALSA: usb-audio: Line6 Pod Go interface requires static clock rate quirk + - ALSA: hda/realtek - set mic to auto detect on a HP AIO machine + - ALSA: hda/realtek - Add mute Led support for HP Elitebook 845 G7 + - ALSA: hda/realtek: Enable audio jacks of ASUS D700SA with ALC887 + - cifs: remove bogus debug code + - cifs: Return the error from crypt_message when enc/dec key not found. + - SMB3: Resolve data corruption of TCP server info fields + - SMB3.1.1: Fix ids returned in POSIX query dir + - smb3: do not try to cache root directory if dir leases not supported + - smb3: fix stat when special device file and mounted with modefromsid + - arm64: Make use of ARCH_WORKAROUND_1 even when KVM is not enabled + - KVM: nVMX: Morph notification vector IRQ on nested VM-Enter to pending PI + - KVM: nVMX: Reset the segment cache when stuffing guest segs + - KVM: nVMX: Reload vmcs01 if getting vmcs12's pages fails + - KVM: x86/mmu: Commit zap of remaining invalid pages when recovering lpages + - KVM: x86: Intercept LA57 to inject #GP fault when it's reserved + - KVM: SVM: Initialize prev_ga_tag before use + - ima: Don't ignore errors from crypto_shash_update() + - crypto: algif_aead - Do not set MAY_BACKLOG on the async path + - crypto: caam/qi - add fallback for XTS with more than 8B IV + - crypto: caam/qi - add support for more XTS key lengths + - RAS/CEC: Fix cec_init() prototype + - sched/fair: Fix wrong negative conversion in find_energy_efficient_cpu() + - microblaze: fix kbuild redundant file warning + - EDAC/i5100: Fix error handling order in i5100_init_one() + - EDAC/aspeed: Fix handling of platform_get_irq() error + - EDAC/ti: Fix handling of platform_get_irq() error + - perf/x86/intel/ds: Fix x86_pmu_stop warning for large PEBS + - x86/fpu: Allow multiple bits in clearcpuid= parameter + - arm64: kprobe: add checks for ARMv8.3-PAuth combined instructions + - drivers/perf: xgene_pmu: Fix uninitialized resource struct + - drivers/perf: thunderx2_pmu: Fix memory resource error handling + - sched/fair: Fix wrong cpu selecting from isolated domain + - sched/fair: Use dst group while checking imbalance for NUMA balancer + - arm64: perf: Add missing ISB in armv8pmu_enable_counter() + - perf/x86/intel/uncore: Update Ice Lake uncore units + - perf/x86/intel/uncore: Reduce the number of CBOX counters + - perf/x86/intel/uncore: Fix the scale of the IMC free-running events + - x86/nmi: Fix nmi_handle() duration miscalculation + - x86/events/amd/iommu: Fix sizeof mismatch + - pinctrl: qcom: Set IRQCHIP_SET_TYPE_MASKED and IRQCHIP_MASK_ON_SUSPEND flags + - pinctrl: qcom: Use return value from irq_set_wake() call + - perf/x86: Fix n_pair for cancelled txn + - perf/core: Fix race in the perf_mmap_close() function + - crypto: algif_skcipher - EBUSY on aio should be an error + - crypto: mediatek - Fix wrong return value in mtk_desc_ring_alloc() + - crypto: ixp4xx - Fix the size used in a 'dma_free_coherent()' call + - crypto: picoxcell - Fix potential race condition bug + - media: vivid: Fix global-out-of-bounds read in precalculate_color() + - media: tuner-simple: fix regression in simple_set_radio_freq + - crypto: ccree - fix runtime PM imbalance on error + - media: Revert "media: exynos4-is: Add missed check for + pinctrl_lookup_state()" + - media: hantro: h264: Get the correct fallback reference buffer + - media: hantro: postproc: Fix motion vector space allocation + - media: ov5640: Correct Bit Div register in clock tree diagram + - media: m5mols: Check function pointer in m5mols_sensor_power + - fscrypt: restrict IV_INO_LBLK_32 to ino_bits <= 32 + - media: uvcvideo: Set media controller entity functions + - media: uvcvideo: Silence shift-out-of-bounds warning + - media: staging/intel-ipu3: css: Correctly reset some memory + - media: omap3isp: Fix memleak in isp_probe + - media: i2c: ov5640: Remain in power down for DVP mode unless streaming + - media: i2c: ov5640: Separate out mipi configuration from s_power + - media: i2c: ov5640: Enable data pins on poweron for DVP mode + - media: rcar_drif: Fix fwnode reference leak when parsing DT + - media: rcar_drif: Allocate v4l2_async_subdev dynamically + - media: rcar-csi2: Allocate v4l2_async_subdev dynamically + - spi: fsi: Handle 9 to 15 byte transfers lengths + - spi: fsi: Fix use of the bneq+ sequencer instruction + - spi: fsi: Implement restricted size for certain controllers + - spi: dw-pci: free previously allocated IRQs if desc->setup() fails + - crypto: omap-sham - fix digcnt register handling with export/import + - hwmon: (pmbus/max34440) Fix status register reads for MAX344{51,60,61} + - hwmon: (w83627ehf) Fix a resource leak in probe + - cypto: mediatek - fix leaks in mtk_desc_ring_alloc + - crypto: stm32/crc32 - Avoid lock if hardware is already used + - crypto: sun8i-ce - handle endianness of t_common_ctl + - media: mx2_emmaprp: Fix memleak in emmaprp_probe + - media: tc358743: initialize variable + - media: tc358743: cleanup tc358743_cec_isr + - media: rcar-vin: Fix a reference count leak. + - media: rockchip/rga: Fix a reference count leak. + - media: platform: fcp: Fix a reference count leak. + - media: camss: Fix a reference count leak. + - media: s5p-mfc: Fix a reference count leak + - media: stm32-dcmi: Fix a reference count leak + - media: ti-vpe: Fix a missing check and reference count leak + - regulator: resolve supply after creating regulator + - pinctrl: bcm: fix kconfig dependency warning when !GPIOLIB + - spi: spi-s3c64xx: swap s3c64xx_spi_set_cs() and s3c64xx_enable_datapath() + - spi: spi-s3c64xx: Check return values + - hwmon: (bt1-pvt) Test sensor power supply on probe + - hwmon: (bt1-pvt) Cache current update timeout + - hwmon: (bt1-pvt) Wait for the completion with timeout + - btrfs: add owner and fs_info to alloc_state io_tree + - blk-mq: move cancel of hctx->run_work to the front of blk_exit_queue + - ath10k: provide survey info as accumulated data + - drm/vkms: fix xrgb on compute crc + - Bluetooth: hci_uart: Cancel init work before unregistering + - drm/amd/display: Fix wrong return value in dm_update_plane_state() + - drm/vgem: add missing platform_device_unregister() in vgem_init() + - drm/vkms: add missing platform_device_unregister() in vkms_init() + - drm: panel: Fix bus format for OrtusTech COM43H4M85ULC panel + - ath6kl: prevent potential array overflow in ath6kl_add_new_sta() + - ath9k: Fix potential out of bounds in ath9k_htc_txcompletion_cb() + - ath10k: Fix the size used in a 'dma_free_coherent()' call in an error + handling path + - wcn36xx: Fix reported 802.11n rx_highest rate wcn3660/wcn3680 + - ASoC: qcom: lpass-platform: fix memory leak + - ASoC: qcom: lpass-cpu: fix concurrency issue + - ath11k: Fix possible memleak in ath11k_qmi_init_service + - brcmfmac: check ndev pointer + - mwifiex: Do not use GFP_KERNEL in atomic context + - staging: rtl8192u: Do not use GFP_KERNEL in atomic context + - drm/amd/display: fix potential integer overflow when shifting 32 bit + variable bl_pwm + - selftests/bpf: Fix test_vmlinux test to use bpf_probe_read_user() + - drm/gma500: fix error check + - scsi: qla4xxx: Fix an error handling path in 'qla4xxx_get_host_stats()' + - scsi: qla2xxx: Fix the size used in a 'dma_free_coherent()' call + - scsi: qla2xxx: Fix wrong return value in qlt_chk_unresolv_exchg() + - scsi: qla2xxx: Fix wrong return value in qla_nvme_register_hba() + - scsi: csiostor: Fix wrong return value in csio_hw_prep_fw() + - libbpf: Fix unintentional success return code in bpf_object__load + - wilc1000: Fix memleak in wilc_sdio_probe + - wilc1000: Fix memleak in wilc_bus_probe + - rtw88: don't treat NULL pointer as an array + - backlight: sky81452-backlight: Fix refcount imbalance on error + - staging: emxx_udc: Fix passing of NULL to dma_alloc_coherent() + - VMCI: check return value of get_user_pages_fast() for errors + - mm/error_inject: Fix allow_error_inject function signatures. + - drm: panel: Fix bpc for OrtusTech COM43H4M85ULC panel + - samples/bpf: Fix to xdpsock to avoid recycling frames + - drm/crc-debugfs: Fix memleak in crc_control_write + - Bluetooth: Clear suspend tasks on unregister + - selftests: vm: add fragment CONFIG_GUP_BENCHMARK + - scsi: ufs: Make ufshcd_print_trs() consider UFSHCD_QUIRK_PRDT_BYTE_GRAN + - binder: Remove bogus warning on failed same-process transaction + - tty: serial: earlycon dependency + - pty: do tty_flip_buffer_push without port->lock in pty_write + - pwm: lpss: Fix off by one error in base_unit math in pwm_lpss_prepare() + - pwm: lpss: Add range limit check for the base_unit register value + - drivers/virt/fsl_hypervisor: Fix error handling path + - ath11k: fix a double free and a memory leak + - video: fbdev: vga16fb: fix setting of pixclock because a pass-by-value error + - video: fbdev: sis: fix null ptr dereference + - video: fbdev: radeon: Fix memleak in radeonfb_pci_register + - ASoC: fsl: imx-es8328: add missing put_device() call in imx_es8328_probe() + - scsi: ufs: ufs-mediatek: Fix HOST_PA_TACTIVATE quirk + - HID: roccat: add bounds checking in kone_sysfs_write_settings() + - drm/msm: Avoid div-by-zero in dpu_crtc_atomic_check() + - drm/panfrost: Ensure GPU quirks are always initialised + - iomap: Clear page error before beginning a write + - iomap: Mark read blocks uptodate in write_begin + - selftests/lkdtm: Use "comm" instead of "diff" for dmesg + - Bluetooth: Re-order clearing suspend tasks + - pinctrl: mcp23s08: Fix mcp23x17_regmap initialiser + - pinctrl: mcp23s08: Fix mcp23x17 precious range + - pinctrl: devicetree: Keep deferring even on timeout + - drm/msm/adreno: fix probe without iommu + - net/mlx5: Fix uninitialized variable warning + - net/mlx5: Don't call timecounter cyc2time directly from 1PPS flow + - scsi: mpt3sas: Fix sync irqs + - net: stmmac: Fix incorrect location to set real_num_rx|tx_queues + - net: stmmac: use netif_tx_start|stop_all_queues() function + - xfs: force the log after remapping a synchronous-writes file + - cpufreq: armada-37xx: Add missing MODULE_DEVICE_TABLE + - drm: mxsfb: check framebuffer pitch + - ima: Fix NULL pointer dereference in ima_file_hash + - ASoC: topology: disable size checks for bytes_ext controls if needed + - ASoC: tlv320adcx140: Fix digital gain range + - coresight: etm4x: Fix etm4_count race by moving cpuhp callbacks to init + - coresight: fix offset by one error in counting ports + - coresight: cti: disclaim device only when it's claimed + - coresight: cti: remove pm_runtime_get_sync() from CPU hotplug + - coresight: etm4x: Ensure default perf settings filter user/kernel + - coresight: etm4x: Fix issues within reset interface of sysfs + - coresight: cti: Write regsiters directly in cti_enable_hw() + - coresight: etm4x: Handle unreachable sink in perf mode + - coresight: etm4x: Fix issues on trcseqevr access + - nvmem: core: fix missing of_node_put() in of_nvmem_device_get() + - selftests: mptcp: interpret \n as a new line + - selftests/bpf: Fix endianness issue in sk_assign + - selftests/bpf: Fix endianness issue in test_sockopt_sk + - xhci: don't create endpoint debugfs entry before ring buffer is set. + - net: dsa: rtl8366: Check validity of passed VLANs + - net: dsa: rtl8366: Refactor VLAN/PVID init + - net: dsa: rtl8366: Skip PVID setting if not requested + - net: wilc1000: clean up resource in error path of init mon interface + - ASoC: tas2770: Fix calling reset in probe + - ASoC: tas2770: Add missing bias level power states + - ASoC: tas2770: Fix required DT properties in the code + - ASoC: tas2770: Fix error handling with update_bits + - ASoC: tlv320aic32x4: Fix bdiv clock rate derivation + - net: dsa: rtl8366rb: Support all 4096 VLANs + - ASoC: SOF: control: add size checks for ext_bytes control .put() + - ASoC: tas2770: Fix unbalanced calls to pm_runtime + - spi: omap2-mcspi: Improve performance waiting for CHSTAT + - ath11k: Add checked value for ath11k_ahb_remove + - ath6kl: wmi: prevent a shift wrapping bug in ath6kl_wmi_delete_pstream_cmd() + - drm: rcar-du: Put reference to VSP device + - phy: rockchip-dphy-rx0: Include linux/delay.h + - dmaengine: dmatest: Check list for emptiness before access its last entry + - ASoC: cros_ec_codec: fix kconfig dependency warning for + SND_SOC_CROS_EC_CODEC + - misc: mic: scif: Fix error handling path + - ALSA: seq: oss: Avoid mutex lock for a long-time ioctl + - usb: dwc2: Fix parameter type in function pointer prototype + - usb: dwc3: core: Properly default unspecified speed + - usb: dwc2: Add missing cleanups when usb_add_gadget_udc() fails + - rtw88: Fix probe error handling race with firmware loading + - rtw88: Fix potential probe error handling race with wow firmware loading + - mt76: mt7915: fix possible memory leak in mt7915_mcu_add_beacon + - quota: clear padding in v2r1_mem2diskdqb() + - slimbus: core: check get_addr before removing laddr ida + - slimbus: core: do not enter to clock pause mode in core + - slimbus: qcom-ngd-ctrl: disable ngd in qmi server down callback + - ASoC: fsl_sai: Instantiate snd_soc_dai_driver + - HID: hid-input: fix stylus battery reporting + - tty: hvc: fix link error with CONFIG_SERIAL_CORE_CONSOLE=n + - nvmem: core: fix possibly memleak when use nvmem_cell_info_to_nvmem_cell() + - hv: clocksource: Add notrace attribute to read_hv_sched_clock_*() functions + - nl80211: fix OBSS PD min and max offset validation + - iomap: Use kzalloc to allocate iomap_page + - coresight: etm: perf: Fix warning caused by etm_setup_aux failure + - coresight: cti: Fix remove sysfs link error + - coresight: cti: Fix bug clearing sysfs links on callback + - coresight: etm4x: Fix save and restore of TRCVMIDCCTLR1 register + - ibmvnic: set up 200GBPS speed + - bpf: disallow attaching modify_return tracing functions to other BPF + programs + - selftests: Remove fmod_ret from test_overhead + - qtnfmac: fix resource leaks on unsupported iftype error return path + - pinctrl: aspeed: Use the right pinconf mask + - iommu/qcom: add missing put_device() call in qcom_iommu_of_xlate() + - iio: adc: stm32-adc: fix runtime autosuspend delay when slow polling + - net: enic: Cure the enic api locking trainwreck + - mfd: sm501: Fix leaks in probe() + - ASoC: wm_adsp: Pass full name to snd_ctl_notify + - iwlwifi: mvm: split a print to avoid a WARNING in ROC + - iwlwifi: dbg: remove no filter condition + - iwlwifi: dbg: run init_cfg function once per driver load + - usb: gadget: f_ncm: fix ncm_bitrate for SuperSpeed and above. + - usb: gadget: u_serial: clear suspended flag when disconnecting + - usb: gadget: u_ether: enable qmult on SuperSpeed Plus as well + - bus: mhi: core: Fix the building of MHI module + - ocxl: fix kconfig dependency warning for OCXL + - nl80211: fix non-split wiphy information + - usb: dwc2: Fix INTR OUT transfers in DDMA mode. + - scsi: target: tcmu: Fix warning: 'page' may be used uninitialized + - scsi: be2iscsi: Fix a theoretical leak in beiscsi_create_eqs() + - dmaengine: ioat: Allocate correct size for descriptor chunk + - ipmi_si: Fix wrong return value in try_smi_init() + - tracing: Fix parse_synth_field() error handling + - platform/x86: mlx-platform: Remove PSU EEPROM configuration + - mwifiex: fix double free + - drm/panfrost: increase readl_relaxed_poll_timeout values + - ipvs: clear skb->tstamp in forwarding path + - bpf, sockmap: Remove skb_orphan and let normal skb_kfree do cleanup + - net: korina: fix kfree of rx/tx descriptor array + - netfilter: nf_log: missing vlan offload tag and proto + - mm/swapfile.c: fix potential memory leak in sys_swapon + - mm/memcg: fix device private memcg accounting + - mm, oom_adj: don't loop through tasks in __set_oom_adj when not necessary + - fs: fix NULL dereference due to data race in prepend_path() + - selftests/ftrace: Change synthetic event name for inter-event-combined test + - tracing: Handle synthetic event array field type checking correctly + - i3c: master add i3c_master_attach_boardinfo to preserve boardinfo + - IB/mlx4: Fix starvation in paravirt mux/demux + - IB/mlx4: Adjust delayed work when a dup is observed + - powerpc/pseries: Fix missing of_node_put() in rng_init() + - powerpc/icp-hv: Fix missing of_node_put() in success path + - rcu/tree: Force quiescent state on callback overload + - rcutorture: Properly set rcu_fwds for OOM handling + - RDMA/ucma: Fix locking for ctx->events_reported + - RDMA/ucma: Add missing locking around rdma_leave_multicast() + - mtd: lpddr: fix excessive stack usage with clang + - RDMA/hns: Add a check for current state before modifying QP + - RDMA/umem: Fix signature of stub ib_umem_find_best_pgsz() + - powerpc/pseries: explicitly reschedule during drmem_lmb list traversal + - pseries/drmem: don't cache node id in drmem_lmb struct + - RDMA/mlx5: Fix potential race between destroy and CQE poll + - mtd: mtdoops: Don't write panic data twice + - perf tools: Make GTK2 support opt-in + - tools feature: Add missing -lzstd to the fast path feature detection + - ARM: 9007/1: l2c: fix prefetch bits init in L2X0_AUX_CTRL using DT values + - xfs: fix finobt btree block recovery ordering + - m68knommu: include SDHC support only when hardware has it + - arc: plat-hsdk: fix kconfig dependency warning when !RESET_CONTROLLER + - ida: Free allocated bitmap in error path + - xfs: limit entries returned when counting fsmap records + - xfs: fix deadlock and streamline xfs_getfsmap performance + - nfs: add missing "posix" local_lock constant table definition + - xfs: fix high key handling in the rt allocator's query_range function + - RDMA/rtrs-srv: Incorporate ib_register_client into rtrs server init + - RDMA/core: Delete function indirection for alloc/free kernel CQ + - RDMA: Allow fail of destroy CQ + - RDMA/umem: Fix ib_umem_find_best_pgsz() for mappings that cross a page + boundary + - RDMA/umem: Prevent small pages from being returned by + ib_umem_find_best_pgsz() + - RDMA/qedr: Fix qp structure memory leak + - RDMA/qedr: Fix doorbell setting + - RDMA/qedr: Fix use of uninitialized field + - RDMA/qedr: Fix return code if accept is called on a destroyed qp + - RDMA/qedr: Fix inline size returned for iWARP + - powerpc/pseries/svm: Allocate SWIOTLB buffer anywhere in memory + - powerpc/watchpoint: Fix quadword instruction handling on p10 predecessors + - powerpc/watchpoint: Fix handling of vector instructions + - powerpc/watchpoint: Add hw_len wherever missing + - powerpc/book3s64/hash/4k: Support large linear mapping range with 4K + - powerpc/tau: Use appropriate temperature sample interval + - powerpc/tau: Convert from timer to workqueue + - powerpc/tau: Remove duplicated set_thresholds() call + - powerpc/tau: Check processor type before enabling TAU interrupt + - powerpc/tau: Disable TAU between measurements + - powerpc/kasan: Fix CONFIG_KASAN_VMALLOC for 8xx + - powerpc/64s/radix: Fix mm_cpumask trimming race vs kthread_use_mm + - RDMA/cma: Combine cma_ndev_work with cma_work + - RDMA/cma: Remove dead code for kernel rdmacm multicast + - RDMA/cma: Consolidate the destruction of a cma_multicast in one place + - RDMA/cma: Fix use after free race in roce multicast join + - perf intel-pt: Fix "context_switch event has no tid" error + - RDMA/qedr: Fix resource leak in qedr_create_qp + - RDMA/hns: Set the unsupported wr opcode + - RDMA/mlx5: Use set_mkc_access_pd_addr_fields() in reg_create() + - RDMA/mlx5: Make mkeys always owned by the kernel's PD when not enabled + - RDMA/mlx5: Disable IB_DEVICE_MEM_MGT_EXTENSIONS if IB_WR_REG_MR can't work + - i40iw: Add support to make destroy QP synchronous + - perf stat: Skip duration_time in setup_system_wide + - RDMA/hns: Add check for the validity of sl configuration + - RDMA/hns: Solve the overflow of the calc_pg_sz() + - RDMA/hns: Fix the wrong value of rnr_retry when querying qp + - RDMA/hns: Fix configuration of ack_req_freq in QPC + - RDMA/hns: Fix missing sq_sig_type when querying QP + - mtd: hyperbus: hbmc-am654: Fix direct mapping setup flash access + - mtd: rawnand: stm32_fmc2: fix a buffer overflow + - mtd: rawnand: vf610: disable clk on error handling path in probe + - mtd: spinand: gigadevice: Only one dummy byte in QUADIO + - mtd: spinand: gigadevice: Add QE Bit + - mtd: rawnand: ams-delta: Fix non-OF build warning + - kdb: Fix pager search for multi-line strings + - overflow: Include header file with SIZE_MAX declaration + - RDMA/ipoib: Set rtnl_link_ops for ipoib interfaces + - powerpc/64: fix irq replay missing preempt + - powerpc/64: fix irq replay pt_regs->softe value + - powerpc/perf: Exclude pmc5/6 from the irrelevant PMU group constraints + - powerpc/perf/hv-gpci: Fix starting index value + - perf stat: Fix out of bounds CPU map access when handling armv8_pmu events + - i3c: master: Fix error return in cdns_i3c_master_probe() + - powerpc/papr_scm: Add PAPR command family to pass-through command-set + - cpufreq: powernv: Fix frame-size-overflow in powernv_cpufreq_reboot_notifier + - IB/rdmavt: Fix sizeof mismatch + - RDMA/rxe: Fix skb lifetime in rxe_rcv_mcast_pkt() + - f2fs: reject CASEFOLD inode flag without casefold feature + - um: vector: Use GFP_ATOMIC under spin lock + - um: time-travel: Fix IRQ handling in time_travel_handle_message() + - maiblox: mediatek: Fix handling of platform_get_irq() error + - perf trace: Fix off by ones in memset() after realloc() in arches using + libaudit + - selftests/powerpc: Fix eeh-basic.sh exit codes + - f2fs: wait for sysfs kobject removal before freeing f2fs_sb_info + - afs: Fix rapid cell addition/removal by not using RCU on cells tree + - afs: Fix cell refcounting by splitting the usage counter + - afs: Fix cell purging with aliases + - afs: Fix cell removal + - RDMA/rxe: Handle skb_clone() failure in rxe_recv.c + - mm/page_owner: change split_page_owner to take a count + - lib/crc32.c: fix trivial typo in preprocessor condition + - ramfs: fix nommu mmap with gaps in the page cache + - rapidio: fix error handling path + - rapidio: fix the missed put_device() for rio_mport_add_riodev + - mailbox: avoid timer start from callback + - clk: meson: axg-audio: separate axg and g12a regmap tables + - rtc: ds1307: Clear OSF flag on DS1388 when setting time + - i2c: rcar: Auto select RESET_CONTROLLER + - clk: meson: g12a: mark fclk_div2 as critical + - PCI: designware-ep: Fix the Header Type check + - PCI: aardvark: Fix compilation on s390 + - PCI: aardvark: Check for errors from pci_bridge_emul_init() call + - PCI: iproc: Set affinity mask on MSI interrupts + - rpmsg: smd: Fix a kobj leak in in qcom_smd_parse_edge() + - rpmsg: Avoid double-free in mtk_rpmsg_register_device + - PCI/IOV: Mark VFs as not implementing PCI_COMMAND_MEMORY + - vfio: add a singleton check for vfio_group_pin_pages + - s390/pci: Mark all VFs as not implementing PCI_COMMAND_MEMORY + - vfio/pci: Decouple PCI_COMMAND_MEMORY bit checks from is_virtfn + - vfio: fix a missed vfio group put in vfio_pin_pages + - vfio/type1: fix dirty bitmap calculation in vfio_dma_rw + - clk: qcom: gcc-sdm660: Fix wrong parent_map + - clk: keystone: sci-clk: fix parsing assigned-clock data during probe + - pwm: rockchip: Keep enabled PWMs running while probing + - pwm: img: Fix null pointer access in probe + - remoteproc/mediatek: fix null pointer dereference on null scp pointer + - PCI: hv: Fix hibernation in case interrupts are not re-created + - clk: rockchip: Initialize hw to error to avoid undefined behavior + - clk: mediatek: add UART0 clock support + - module: statically initialize init section freeing data + - clk: at91: clk-main: update key before writing AT91_CKGR_MOR + - clk: bcm2835: add missing release if devm_clk_hw_register fails + - kbuild: deb-pkg: do not build linux-headers package if CONFIG_MODULES=n + - watchdog: Fix memleak in watchdog_cdev_register + - watchdog: Use put_device on error + - watchdog: sp5100: Fix definition of EFCH_PM_DECODEEN3 + - svcrdma: fix bounce buffers for unaligned offsets and multiple pages + - ext4: fix dead loop in ext4_mb_new_blocks + - ext4: discard preallocations before releasing group lock + - ext4: disallow modifying DAX inode flag if inline_data has been set + - ext4: limit entries returned when counting fsmap records + - vfio/pci: Clear token on bypass registration failure + - vfio iommu type1: Fix memory leak in vfio_iommu_type1_pin_pages + - clk: imx8mq: Fix usdhc parents order + - SUNRPC: fix copying of multiple pages in gss_read_proxy_verf() + - platform/chrome: cros_ec_lightbar: Reduce ligthbar get version command + - Input: elants_i2c - fix typo for an attribute to show calibration count + - Input: imx6ul_tsc - clean up some errors in imx6ul_tsc_resume() + - Input: stmfts - fix a & vs && typo + - Input: ep93xx_keypad - fix handling of platform_get_irq() error + - Input: omap4-keypad - fix handling of platform_get_irq() error + - Input: twl4030_keypad - fix handling of platform_get_irq() error + - Input: sun4i-ps2 - fix handling of platform_get_irq() error + - KVM: x86: emulating RDPID failure shall return #UD rather than #GP + - scsi: bfa: Fix error return in bfad_pci_init() + - arm64: mm: use single quantity to represent the PA to VA translation + - netfilter: conntrack: connection timeout after re-register + - netfilter: ebtables: Fixes dropping of small packets in bridge nat + - netsec: ignore 'phy-mode' device property on ACPI systems + - netfilter: nf_fwd_netdev: clear timestamp in forwarding path + - soc: xilinx: Fix error code in zynqmp_pm_probe() + - arm64: dts: meson: vim3: correct led polarity + - ARM: dts: imx6sl: fix rng node + - ARM: at91: pm: of_node_put() after its usage + - ARM: s3c24xx: fix mmc gpio lookup tables + - ARM: dts: sun8i: r40: bananapi-m2-ultra: Fix dcdc1 regulator + - arm64: dts: allwinner: h5: remove Mali GPU PMU module + - memory: omap-gpmc: Fix a couple off by ones + - memory: omap-gpmc: Fix build error without CONFIG_OF + - arm64: dts: qcom: sc7180: Fix the LLCC base register size + - memory: fsl-corenet-cf: Fix handling of platform_get_irq() error + - firmware: arm_scmi: Fix NULL pointer dereference in mailbox_chan_free + - arm64: dts: imx8mq: Add missing interrupts to GPC + - arm64: dts: qcom: sc7180: Drop flags on mdss irqs + - soc: qcom: pdr: Fixup array type of get_domain_list_resp message + - arm64: dts: qcom: msm8916: Remove one more thermal trip point unit name + - arm64: dts: qcom: pm8916: Remove invalid reg size from wcd_codec + - arm64: dts: qcom: msm8916: Fix MDP/DSI interrupts + - soc: qcom: apr: Fixup the error displayed on lookup failure + - dt-bindings: crypto: Specify that allwinner, sun8i-a33-crypto needs reset + - arm64: dts: renesas: r8a77990: Fix MSIOF1 DMA channels + - arm64: dts: renesas: r8a774c0: Fix MSIOF1 DMA channels + - arm64: dts: mt8173: elm: Fix nor_flash node property + - arm64: dts: actions: limit address range for pinctrl node + - ARM: dts: owl-s500: Fix incorrect PPI interrupt specifiers + - soc: fsl: qbman: Fix return value on success + - ARM: OMAP2+: Restore MPU power domain if cpu_cluster_pm_enter() fails + - ARM: dts: stm32: Fix sdmmc2 pins on AV96 + - ARM: dts: stm32: lxa-mc1: Fix kernel warning about PHY delays + - ARM: dts: stm32: Move ethernet PHY into DH SoM DT + - ARM: dts: stm32: Swap PHY reset GPIO and TSC2004 IRQ on DHCOM SOM + - ARM: dts: stm32: Fix DH PDK2 display PWM channel + - ARM: dts: iwg20d-q7-common: Fix touch controller probe failure + - soc: mediatek: cmdq: add clear option in cmdq_pkt_wfe api + - drm/mediatek: reduce clear event + - arm64: dts: zynqmp: Remove additional compatible string for i2c IPs + - ARM: dts: meson8: remove two invalid interrupt lines from the GPU node + - lightnvm: fix out-of-bounds write to array devices->info[] + - powerpc/powernv/dump: Fix race while processing OPAL dump + - powerpc/pseries: Avoid using addr_to_pfn in real mode + - nvmet: fix uninitialized work for zero kato + - KVM: ioapic: break infinite recursion on lazy EOI + - NTB: hw: amd: fix an issue about leak system resources + - ntb: intel: Fix memleak in intel_ntb_pci_probe + - sched/features: Fix !CONFIG_JUMP_LABEL case + - perf: correct SNOOPX field offset + - i2c: core: Restore acpi_walk_dep_device_list() getting called after + registering the ACPI i2c devs + - md/bitmap: fix memory leak of temporary bitmap + - block: ratelimit handle_bad_sector() message + - x86/dumpstack: Fix misleading instruction pointer error message + - crypto: ccp - fix error handling + - x86/asm: Replace __force_order with a memory clobber + - x86/mce: Add Skylake quirk for patrol scrub reported errors + - media: firewire: fix memory leak + - media: ati_remote: sanity check for both endpoints + - media: st-delta: Fix reference count leak in delta_run_work + - media: sti: Fix reference count leaks + - media: exynos4-is: Fix several reference count leaks due to + pm_runtime_get_sync + - media: exynos4-is: Fix a reference count leak due to pm_runtime_get_sync + - media: exynos4-is: Fix a reference count leak + - media: vsp1: Fix runtime PM imbalance on error + - media: platform: s3c-camif: Fix runtime PM imbalance on error + - media: platform: sti: hva: Fix runtime PM imbalance on error + - media: bdisp: Fix runtime PM imbalance on error + - media: media/pci: prevent memory leak in bttv_probe + - x86/mce: Annotate mce_rd/wrmsrl() with noinstr + - crypto: hisilicon - fixed memory allocation error + - spi: fsi: Fix clock running too fast + - x86/mce: Make mce_rdmsrl() panic on an inaccessible MSR + - media: uvcvideo: Ensure all probed info is returned to v4l2 + - mmc: sdio: Check for CISTPL_VERS_1 buffer size + - media: saa7134: avoid a shift overflow + - media: atomisp: fix memleak in ia_css_stream_create + - media: venus: fixes for list corruption + - fs: dlm: fix configfs memory leak + - media: venus: core: Fix error handling in probe + - media: venus: core: Fix runtime PM imbalance in venus_probe + - ntfs: add check for mft record size in superblock + - ip_gre: set dev->hard_header_len and dev->needed_headroom properly + - mac80211: handle lack of sband->bitrates in rates + - staging: wfx: fix handling of MMIC error + - libbpf: Close map fd if init map slots failed + - bpf: Use raw_spin_trylock() for pcpu_freelist_push/pop in NMI + - PM: hibernate: remove the bogus call to get_gendisk() in software_resume() + - scsi: mvumi: Fix error return in mvumi_io_attach() + - scsi: target: core: Add CONTROL field for trace events + - mic: vop: copy data to kernel space then write to io memory + - misc: vop: add round_up(x,4) for vring_size to avoid kernel panic + - usb: dwc3: Add splitdisable quirk for Hisilicon Kirin Soc + - usb: gadget: function: printer: fix use-after-free in __lock_acquire + - udf: Limit sparing table size + - udf: Avoid accessing uninitialized data on failed inode read + - rtw88: increse the size of rx buffer size + - USB: cdc-acm: handle broken union descriptors + - usb: dwc3: simple: add support for Hikey 970 + - habanalabs: cast to u64 before shift > 31 bits + - can: flexcan: flexcan_chip_stop(): add error handling and propagate error + value + - HID: multitouch: Lenovo X1 Tablet Gen3 trackpoint and buttons + - ath9k: hif_usb: fix race condition between usb_get_urb() and + usb_kill_anchored_urbs() + - drm/panfrost: add Amlogic GPU integration quirks + - drm/panfrost: add amlogic reset quirk callback + - drm/panfrost: add support for vendor quirk + - bpf: Limit caller's stack depth 256 for subprogs with tailcalls + - misc: rtsx: Fix memory leak in rtsx_pci_probe + - reiserfs: only call unlock_new_inode() if I_NEW + - opp: Prevent memory leak in dev_pm_opp_attach_genpd() + - xfs: make sure the rt allocator doesn't run off the end + - usb: ohci: Default to per-port over-current protection + - drm: fix double free for gbo in drm_gem_vram_init and drm_gem_vram_create + - Bluetooth: Only mark socket zapped after unlocking + - drm/msm/a6xx: fix a potential overflow issue + - iomap: fix WARN_ON_ONCE() from unprivileged users + - scsi: ibmvfc: Fix error return in ibmvfc_probe() + - scsi: qla2xxx: Warn if done() or free() are called on an already freed srb + - selftests/bpf: Fix test_sysctl_loop{1, 2} failure due to clang change + - brcmsmac: fix memory leak in wlc_phy_attach_lcnphy + - rtl8xxxu: prevent potential memory leak + - Fix use after free in get_capset_info callback. + - HID: ite: Add USB id match for Acer One S1003 keyboard dock + - scsi: qedf: Return SUCCESS if stale rport is encountered + - scsi: qedi: Mark all connections for recovery on link down event + - scsi: qedi: Protect active command list to avoid list corruption + - scsi: qedi: Fix list_del corruption while removing active I/O + - fbmem: add margin check to fb_check_caps() + - tty: ipwireless: fix error handling + - Bluetooth: btusb: Fix memleak in btusb_mtk_submit_wmt_recv_urb + - ipvs: Fix uninit-value in do_ip_vs_set_ctl() + - reiserfs: Fix memory leak in reiserfs_parse_options() + - s390/qeth: strictly order bridge address events + - mwifiex: don't call del_timer_sync() on uninitialized timer + - ALSA: hda/ca0132 - Add AE-7 microphone selection commands. + - ALSA: hda/ca0132 - Add new quirk ID for SoundBlaster AE-7. + - ASoC: SOF: Add topology filename override based on dmi data match + - ASoC: Intel: sof_rt5682: override quirk data for tgl_max98373_rt5682 + - scsi: smartpqi: Avoid crashing kernel for controller issues + - brcm80211: fix possible memleak in brcmf_proto_msgbuf_attach + - usb: core: Solve race condition in anchor cleanup functions + - scsi: ufs: ufs-qcom: Fix race conditions caused by ufs_qcom_testbus_config() + - drm/amd/display: Screen corruption on dual displays (DP+USB-C) + - dmaengine: dw: Add DMA-channels mask cell support + - dmaengine: dw: Activate FIFO-mode for memory peripherals only + - ath10k: check idx validity in __ath10k_htt_rx_ring_fill_n() + - net: korina: cast KSEG0 address to pointer in kfree + - s390/qeth: don't let HW override the configured port role + - tty: serial: lpuart: fix lpuart32_write usage + - tty: serial: fsl_lpuart: fix lpuart32_poll_get_char + - usb: gadget: bcm63xx_udc: fix up the error of undeclared usb_debug_root + - usb: cdc-acm: add quirk to blacklist ETAS ES58X devices + - USB: cdc-wdm: Make wdm_flush() interruptible and add wdm_fsync(). + - usb: cdns3: gadget: free interrupt after gadget has deleted + - eeprom: at25: set minimum read/write access stride to 1 + - usb: gadget: f_ncm: allow using NCM in SuperSpeed Plus gadgets. + - Linux 5.8.17 + * RTL8822BE [10ec:b822] network driver rtl_wifi crashes on boot in Focal Fossa + 20.04 - 5.4.0-21-generic and mainline 5.7.0-050700rc1-generic + (LP: #1872984) // Groovy update: v5.8.17 upstream stable release + (LP: #1902137) + - rtw88: pci: Power cycle device during shutdown + * Groovy update: v5.8.16 upstream stable release (LP: #1902132) + - crypto: bcm - Verify GCM/CCM key length in setkey + - crypto: qat - check cipher length for aead AES-CBC-HMAC-SHA + - Bluetooth: Disconnect if E0 is used for Level 4 + - media: usbtv: Fix refcounting mixup + - USB: serial: option: add Cellient MPL200 card + - USB: serial: option: Add Telit FT980-KS composition + - staging: comedi: check validity of wMaxPacketSize of usb endpoints found + - USB: serial: pl2303: add device-id for HP GC device + - USB: serial: ftdi_sio: add support for FreeCalypso JTAG+UART adapters + - reiserfs: Initialize inode keys properly + - reiserfs: Fix oops during mount + - Linux 5.8.16 + * Groovy update: v5.8.15 upstream stable release (LP: #1902130) + - fbdev, newport_con: Move FONT_EXTRA_WORDS macros into linux/font.h + - Fonts: Support FONT_EXTRA_WORDS macros for built-in fonts + - fbcon: Fix global-out-of-bounds read in fbcon_get_font() + - Revert "ravb: Fixed to be able to unload modules" + - crypto: arm64: Use x16 with indirect branch to bti_c + - exfat: fix use of uninitialized spinlock on error path + - net: wireless: nl80211: fix out-of-bounds access in nl80211_del_key() + - drm/nouveau/mem: guard against NULL pointer access in mem_del + - partitions/ibm: fix non-DASD devices + - block/scsi-ioctl: Fix kernel-infoleak in scsi_put_cdrom_generic_arg() + - vhost: Don't call access_ok() when using IOTLB + - vhost: Use vhost_get_used_size() in vhost_vring_set_addr() + - usermodehelper: reset umask to default before executing user process + - splice: teach splice pipe reading about empty pipe buffers + - Platform: OLPC: Fix memleak in olpc_ec_probe + - platform/x86: intel-vbtn: Fix SW_TABLET_MODE always reporting 1 on the HP + Pavilion 11 x360 + - platform/x86: thinkpad_acpi: initialize tp_nvram_state variable + - platform/x86: asus-wmi: Fix SW_TABLET_MODE always reporting 1 on many + different models + - bpf: Fix sysfs export of empty BTF section + - bpf: Prevent .BTF section elimination + - r8169: consider that PHY reset may still be in progress after applying + firmware + - platform/x86: intel-vbtn: Switch to an allow-list for SW_TABLET_MODE + reporting + - platform/x86: thinkpad_acpi: re-initialize ACPI buffer size when reuse + - nvme-core: put ctrl ref when module ref get fail + - macsec: avoid use-after-free in macsec_handle_frame() + - RISC-V: Make sure memblock reserves the memory containing DT + - gpiolib: Disable compat ->read() code in UML case + - mm/khugepaged: fix filemap page_to_pgoff(page) != offset + - net: introduce helper sendpage_ok() in include/linux/net.h + - tcp: use sendpage_ok() to detect misused .sendpage + - nvme-tcp: check page by sendpage_ok() before calling kernel_sendpage() + - xfrmi: drop ignore_df check before updating pmtu + - espintcp: restore IP CB before handing the packet to xfrm + - cifs: Fix incomplete memory allocation on setxattr path + - i2c: meson: fix clock setting overwrite + - i2c: meson: keep peripheral clock enabled + - i2c: meson: fixup rate calculation with filter delay + - i2c: owl: Clear NACK and BUS error bits + - sctp: fix sctp_auth_init_hmacs() error path + - team: set dev->needed_headroom in team_setup_by_port() + - net: team: fix memory leak in __team_options_register + - openvswitch: handle DNAT tuple collision + - drm/amdgpu: prevent double kfree ttm->sg + - btrfs: move btrfs_scratch_superblocks into btrfs_dev_replace_finishing + - io_uring: fix potential ABBA deadlock in ->show_fdinfo() + - drm/amd/pm: Removed fixed clock in auto mode DPM + - drm/amd/display: fix return value check for hdcp_work + - btrfs: move btrfs_rm_dev_replace_free_srcdev outside of all locks + - iommu/vt-d: Fix lockdep splat in iommu_flush_dev_iotlb() + - xfrm: clone XFRMA_SET_MARK in xfrm_do_migrate + - xfrm: clone XFRMA_REPLAY_ESN_VAL in xfrm_do_migrate + - xfrm: clone XFRMA_SEC_CTX in xfrm_do_migrate + - xfrm: clone whole liftime_cur structure in xfrm_do_migrate + - xsk: Do not discard packet when NETDEV_TX_BUSY + - net: stmmac: removed enabling eee in EEE set callback + - platform/x86: fix kconfig dependency warning for LG_LAPTOP + - platform/x86: fix kconfig dependency warning for FUJITSU_LAPTOP + - hinic: add log in exception handling processes + - hinic: fix wrong return value of mac-set cmd + - net: dsa: felix: convert TAS link speed based on phylink speed + - xfrm: Use correct address family in xfrm_state_find + - iavf: use generic power management + - iavf: Fix incorrect adapter get in iavf_resume + - ice: fix memory leak if register_netdev_fails + - ice: fix memory leak in ice_vsi_setup + - vmxnet3: fix cksum offload issues for non-udp tunnels + - net: stmmac: Fix clock handling on remove path + - net: ethernet: cavium: octeon_mgmt: use phy_start and phy_stop + - bonding: set dev->needed_headroom in bond_setup_by_slave() + - mdio: fix mdio-thunder.c dependency & build error + - mlxsw: spectrum_acl: Fix mlxsw_sp_acl_tcam_group_add()'s error path + - r8169: fix RTL8168f/RTL8411 EPHY config + - net: usb: ax88179_178a: fix missing stop entry in driver_info + - virtio-net: don't disable guest csum when disable LRO + - net: phy: realtek: fix rtl8211e rx/tx delay config + - octeontx2-af: Fix enable/disable of default NPC entries + - octeontx2-pf: Fix TCP/UDP checksum offload for IPv6 frames + - octeontx2-pf: Fix the device state on error + - octeontx2-pf: Fix synchnorization issue in mbox + - pipe: Fix memory leaks in create_pipe_files() + - net/mlx5: Fix a race when moving command interface to polling mode + - net/mlx5: Avoid possible free of command entry while timeout comp handler + - net/mlx5: poll cmd EQ in case of command timeout + - net/mlx5: Add retry mechanism to the command entry index allocation + - net/mlx5: Fix request_irqs error flow + - net/mlx5e: Add resiliency in Striding RQ mode for packets larger than MTU + - net/mlx5e: Fix return status when setting unsupported FEC mode + - net/mlx5e: Fix VLAN cleanup flow + - net/mlx5e: Fix VLAN create flow + - net/mlx5e: Fix race condition on nhe->n pointer in neigh update + - net: stmmac: Modify configuration method of EEE timers + - net: hinic: fix DEVLINK build errors + - vhost-vdpa: fix vhost_vdpa_map() on error condition + - vhost-vdpa: fix page pinning leakage in error path + - net: mvneta: fix double free of txq->buf + - rxrpc: Fix rxkad token xdr encoding + - rxrpc: Downgrade the BUG() for unsupported token type in rxrpc_read() + - rxrpc: Fix some missing _bh annotations on locking conn->state_lock + - rxrpc: The server keyring isn't network-namespaced + - rxrpc: Fix server keyring leak + - net: mscc: ocelot: rename ocelot_board.c to ocelot_vsc7514.c + - [Packaging] module ocelot_board rename + - net: mscc: ocelot: split writes to pause frame enable bit and to thresholds + - net: mscc: ocelot: extend watermark encoding function + - net: mscc: ocelot: divide watermark value by 60 when writing to SYS_ATOP + - afs: Fix deadlock between writeback and truncate + - perf: Fix task_function_call() error handling + - mmc: core: don't set limits.discard_granularity as 0 + - mm: validate inode in mapping_set_error() + - mm: khugepaged: recalculate min_free_kbytes after memory hotplug as expected + by khugepaged + - tcp: fix receive window update in tcp_add_backlog() + - netlink: fix policy dump leak + - net/core: check length before updating Ethertype in skb_mpls_{push,pop} + - net: bridge: fdb: don't flush ext_learn entries + - net/tls: race causes kernel panic + - net/mlx5e: Fix driver's declaration to support GRE offload + - tty/vt: Do not warn when huge selection requested + - Input: ati_remote2 - add missing newlines when printing module parameters + - net: usb: rtl8150: set random MAC address when set_ethernet_addr() fails + - net: qrtr: ns: Protect radix_tree_deref_slot() using rcu read locks + - net_sched: defer tcf_idr_insert() in tcf_action_init_1() + - net_sched: commit action insertions together + - Linux 5.8.15 + * Fix non-working Intel NVMe after S3 (LP: #1900847) + - SAUCE: PCI: Enable ACS quirk on all CML root ports + * Improve descriptions for XFAIL cases in kselftests/net/psock_snd + (LP: #1900088) + - selftests/net: improve descriptions for XFAIL cases in psock_snd.sh + * alsa/hda/realtek - The front Mic on a HP machine doesn't work (LP: #1899508) + - ALSA: hda/realtek - The front Mic on a HP machine doesn't work + * kci_test_encap_fou() in rtnetlink.sh from kselftests/net failed with "FAIL: + can't add fou port 7777, skipping test" (LP: #1891421) + - selftests: rtnetlink: load fou module for kci_test_encap_fou() test + * linux-aws: fold test_bpf SAUCE to linux/master (LP: #1900855) + - SAUCE: selftests: net: don't fail test_bpf when module is not present + * Fix broken MSI interrupt after HDA controller was suspended (LP: #1899586) + - ALSA: hda: fix jack detection with Realtek codecs when in D3 + + [ Ubuntu: 5.8.0-29.31 ] + + * Packaging resync (LP: #1786013) + - update dkms package versions + + -- Kleber Sacilotto de Souza Mon, 16 Nov 2020 14:12:10 +0100 + +linux-azure (5.8.0-1012.13) groovy; urgency=medium + + [ Ubuntu: 5.8.0-28.30 ] + + * CVE-2020-27194 + - bpf: Fix scalar32_min_max_or bounds tracking + + [ Ubuntu: 5.8.0-27.29 ] + + * CVE-2020-8694 + - powercap: make attributes only readable by root + + -- Kleber Sacilotto de Souza Thu, 05 Nov 2020 15:55:21 +0100 + +linux-azure (5.8.0-1011.11) groovy; urgency=medium + + * groovy/linux-azure: 5.8.0-1011.11 -proposed tracker (LP: #1900893) + + [ Ubuntu: 5.8.0-26.27 ] + + * groovy/linux: 5.8.0-26.27 -proposed tracker (LP: #1900896) + * Packaging resync (LP: #1786013) + - update dkms package versions + * Introduce the new NVIDIA 455 series (LP: #1897751) + - [Packaging] NVIDIA -- Add signed modules for the 455 driver + + -- Paolo Pisati Thu, 22 Oct 2020 10:32:02 +0200 + +linux-azure (5.8.0-1010.10) groovy; urgency=medium + + * groovy/linux-azure: 5.8.0-1010.10 -proposed tracker (LP: #1899930) + + * Miscellaneous Ubuntu changes + - [Config] annotations: update CONFIG_BT_HS policy + + [ Ubuntu: 5.8.0-25.26 ] + + * groovy/linux: 5.8.0-25.26 -proposed tracker (LP: #1899940) + * CVE-2020-12351 + - Bluetooth: L2CAP: Fix calling sk_filter on non-socket based channel + * CVE-2020-12352 + - Bluetooth: A2MP: Fix not initializing all members + * CVE-2020-12351 // CVE-2020-12352 // CVE-2020-24490 + - Bluetooth: Disable High Speed by default + - Bluetooth: MGMT: Fix not checking if BT_HS is enabled + - [Config] Disable BlueZ highspeed support + * ec2-hibinit-agent needs to properly initialize swap file (LP: #1892728) + - ext4: implement swap_activate aops using iomap + + [ Ubuntu: 5.8.0-24.25 ] + + * groovy/linux: 5.8.0-24.25 -proposed tracker (LP: #1899804) + * Fix system reboot when disconnecting WiFi (LP: #1899726) + - iwlwifi: msix: limit max RX queues for 9000 family + * ceph: fix inode number handling on arches with 32-bit ino_t (LP: #1899582) + - ceph: fix inode number handling on arches with 32-bit ino_t + * booting linux-generic-lpae armhf kernel under qemu results in relocation out + of range, and thus no modules can be loaded (LP: #1899519) + - [Config] armhf: ARM_MODULE_PLTS=y + + -- Paolo Pisati Thu, 15 Oct 2020 13:38:48 +0200 + +linux-azure (5.8.0-1009.9) groovy; urgency=medium + + + [ Ubuntu: 5.8.0-23.24 ] + + * CVE-2020-16119 + - SAUCE: dccp: avoid double free of ccid on child socket + + -- Seth Forshee Fri, 09 Oct 2020 11:04:49 -0500 + +linux-azure (5.8.0-1008.8) groovy; urgency=medium + + * groovy/linux-azure: 5.8.0-1008.8 -proposed tracker (LP: #1899093) + + * Miscellaneous Ubuntu changes + - [Config] CONFIG_UBUNTU_HOST=m + + [ Ubuntu: 5.8.0-22.23 ] + + * groovy/linux: 5.8.0-22.23 -proposed tracker (LP: #1899099) + * Packaging resync (LP: #1786013) + - update dkms package versions + * oops in nvkm_udevice_info() [nouveau] (LP: #1898130) + - drm/nouveau/device: return error for unknown chipsets + * python3-venv is gone (LP: #1896801) + - SAUCE: doc: remove python3-venv dependency + * *-tools-common packages descriptions have typo "PGKVER" (LP: #1898903) + - [Packaging] Fix typo in -tools template s/PGKVER/PKGVER/ + * Enable brightness control on HP DreamColor panel (LP: #1898865) + - SAUCE: drm/i915/dpcd_bl: Skip testing control capability with force DPCD + quirk + - SAUCE: drm/dp: HP DreamColor panel brigntness fix + * Groovy update: v5.8.14 upstream stable release (LP: #1898853) + - io_uring: always delete double poll wait entry on match + - btrfs: fix filesystem corruption after a device replace + - mmc: sdhci: Workaround broken command queuing on Intel GLK based IRBIS + models + - USB: gadget: f_ncm: Fix NDP16 datagram validation + - Revert "usbip: Implement a match function to fix usbip" + - usbcore/driver: Fix specific driver selection + - usbcore/driver: Fix incorrect downcast + - usbcore/driver: Accommodate usbip + - gpio: siox: explicitly support only threaded irqs + - gpio: mockup: fix resource leak in error path + - gpio: tc35894: fix up tc35894 interrupt configuration + - gpio: amd-fch: correct logic of GPIO_LINE_DIRECTION + - clk: samsung: Keep top BPLL mux on Exynos542x enabled + - clk: socfpga: stratix10: fix the divider for the emac_ptp_free_clk + - scsi: iscsi: iscsi_tcp: Avoid holding spinlock while calling getpeername() + - i2c: i801: Exclude device from suspend direct complete optimization + - Input: i8042 - add nopnp quirk for Acer Aspire 5 A515 + - iio: adc: qcom-spmi-adc5: fix driver name + - ftrace: Move RCU is watching check after recursion check + - tracing: Fix trace_find_next_entry() accounting of temp buffer size + - memstick: Skip allocating card when removing host + - drm/amdgpu: restore proper ref count in amdgpu_display_crtc_set_config + - xen/events: don't use chip_data for legacy IRQs + - clocksource/drivers/timer-gx6605s: Fixup counter reload + - vboxsf: Fix the check for the old binary mount-arguments struct + - mt76: mt7915: use ieee80211_free_txskb to free tx skbs + - libbpf: Remove arch-specific include path in Makefile + - drivers/net/wan/hdlc_fr: Add needed_headroom for PVC devices + - Revert "wlcore: Adding suppoprt for IGTK key in wlcore driver" + - drm/sun4i: mixer: Extend regmap max_register + - hv_netvsc: Cache the current data path to avoid duplicate call and message + - net: dec: de2104x: Increase receive ring size for Tulip + - rndis_host: increase sleep time in the query-response loop + - nvme-pci: disable the write zeros command for Intel 600P/P3100 + - nvme-core: get/put ctrl and transport module in nvme_dev_open/release() + - fuse: fix the ->direct_IO() treatment of iov_iter + - drivers/net/wan/lapbether: Make skb->protocol consistent with the header + - drivers/net/wan/hdlc: Set skb->protocol before transmitting + - mac80211: Fix radiotap header channel flag for 6GHz band + - mac80211: do not allow bigger VHT MPDUs than the hardware supports + - tracing: Make the space reserved for the pid wider + - tools/io_uring: fix compile breakage + - io_uring: mark statx/files_update/epoll_ctl as non-SQPOLL + - cpuidle: psci: Fix suspicious RCU usage + - spi: fsl-espi: Only process interrupts for expected events + - net: dsa: felix: fix some key offsets for IP4_TCP_UDP VCAP IS2 entries + - nvme-pci: fix NULL req in completion handler + - nvme-fc: fail new connections to a deleted host or remote port + - scripts/kallsyms: skip ppc compiler stub *.long_branch.* / *.plt_branch.* + - gpio: sprd: Clear interrupt when setting the type as edge + - phy: ti: am654: Fix a leak in serdes_am654_probe() + - pinctrl: mvebu: Fix i2c sda definition for 98DX3236 + - nfs: Fix security label length not being reset + - NFSv4.2: fix client's attribute cache management for copy_file_range + - pNFS/flexfiles: Ensure we initialise the mirror bsizes correctly on read + - clk: tegra: Always program PLL_E when enabled + - clk: tegra: Fix missing prototype for tegra210_clk_register_emc() + - dmaengine: dmatest: Prevent to run on misconfigured channel + - clk: samsung: exynos4: mark 'chipid' clock as CLK_IGNORE_UNUSED + - scsi: target: Fix lun lookup for TARGET_SCF_LOOKUP_LUN_FROM_TAG case + - iommu/exynos: add missing put_device() call in exynos_iommu_of_xlate() + - gpio: pca953x: Fix uninitialized pending variable + - gpio/aspeed-sgpio: enable access to all 80 input & output sgpios + - gpio/aspeed-sgpio: don't enable all interrupts by default + - gpio: aspeed: fix ast2600 bank properties + - i2c: cpm: Fix i2c_ram structure + - i2c: npcm7xx: Clear LAST bit after a failed transaction. + - Input: trackpoint - enable Synaptics trackpoints + - blk-mq: call commit_rqs while list empty but error happen + - scripts/dtc: only append to HOST_EXTRACFLAGS instead of overwriting + - autofs: use __kernel_write() for the autofs pipe writing + - pinctrl: qcom: sm8250: correct sdc2_clk + - pinctrl: mediatek: check mtk_is_virt_gpio input parameter + - gpio: pca953x: Correctly initialize registers 6 and 7 for PCA957x + - iommu/amd: Fix the overwritten field in IVMD header + - pipe: remove pipe_wait() and fix wakeup race with splice + - random32: Restore __latent_entropy attribute on net_rand_state + - gpiolib: Fix line event handling in syscall compatible mode + - drm/i915/gvt: Fix port number for BDW on EDID region setup + - scsi: sd: sd_zbc: Fix handling of host-aware ZBC disks + - scsi: sd: sd_zbc: Fix ZBC disk initialization + - epoll: do not insert into poll queues until all sanity checks are done + - epoll: replace ->visited/visited_list with generation count + - epoll: EPOLL_CTL_ADD: close the race in decision to take fast path + - ep_create_wakeup_source(): dentry name can change under you... + - Linux 5.8.14 + * Miscellaneous Ubuntu changes + - SAUCE: selftests/ftrace: check for do_sys_openat2 in user-memory test + - SAUCE: doc: Disable extension incompatible with Sphinx 3 + - Add ubuntu-host module + - CONFIG_UBUNTU_HOST=m + - SAUCE: Revert "UBUNTU: SAUCE: IB/umem: Fix the Peer flow to handle pinned + pages properly" + - SAUCE: Revert "UBUNTU: SAUCE: IB/mlx5: Use peer client page_shift" + - SAUCE: Revert "UBUNTU: SAUCE: fixup! RDMA/core: Introduce peer memory + interface" + - SAUCE: Revert "UBUNTU: SAUCE: RDMA/core: Introduce peer memory interface" + - SAUCE: apparmor: drop prefixing abs root labels with '=' + - SAUCE: apparmor: disable showing the mode as part of a secid to secctx + - SAUCE: apparmor: rename aa_sock() to aa_unix_sk() + - SAUCE: apparmor: LSM stacking: switch from SK_CTX() to aa_sock() + - SAUCE: LSM: Infrastructure management of the sock security + - SAUCE: LSM: Create and manage the lsmblob data structure. + - SAUCE: LSM: Use lsmblob in security_audit_rule_match + - SAUCE: LSM: Use lsmblob in security_kernel_act_as + - SAUCE: net: Prepare UDS for security module stacking + - SAUCE: LSM: Use lsmblob in security_secctx_to_secid + - SAUCE: LSM: Use lsmblob in security_secid_to_secctx + - SAUCE: LSM: Use lsmblob in security_ipc_getsecid + - SAUCE: LSM: Use lsmblob in security_task_getsecid + - SAUCE: LSM: Use lsmblob in security_inode_getsecid + - SAUCE: LSM: Use lsmblob in security_cred_getsecid + - SAUCE: IMA: Change internal interfaces to use lsmblobs + - SAUCE: LSM: Specify which LSM to display + - SAUCE: LSM: Ensure the correct LSM context releaser + - SAUCE: LSM: Use lsmcontext in security_secid_to_secctx + - SAUCE: LSM: Use lsmcontext in security_inode_getsecctx + - SAUCE: LSM: security_secid_to_secctx in netlink netfilter + - SAUCE: NET: Store LSM netlabel data in a lsmblob + - SAUCE: LSM: Verify LSM display sanity in binder + - SAUCE: Audit: Add new record for multiple process LSM attributes + - SAUCE: Audit: Add a new record for multiple object LSM + - SAUCE: LSM: Add /proc attr entry for full LSM context + - SAUCE: AppArmor: Remove the exclusive flag + - SAUCE: Audit: Fix for missing NULL check + * Miscellaneous upstream changes + - Revert "UBUNTU: [Packaging] Temporarily disable building doc package + contents" + - Revert "UBUNTU: SAUCE: Revert "apparmor: add support for mapping secids and + using secctxes"" + - Revert "UBUNTU: SAUCE: Revert "apparmor: Use an IDR to allocate apparmor + secids"" + - Revert "UBUNTU: SAUCE: Revert "apparmor: fixup secid map conversion to using + IDR"" + - Revert "UBUNTU: SAUCE: Revert "apparmor: Add a wildcard secid"" + - Revert "UBUNTU: SAUCE: Revert "apparmor: Parse secmark policy"" + - Revert "UBUNTU: SAUCE: Revert "apparmor: Allow filtering based on secmark + policy"" + - Revert "UBUNTU: SAUCE: Fix-up af_unix mediation for sock infrastructure + management" + - Revert "UBUNTU: SAUCE: LSM: Infrastructure management of the sock security" + - Revert "UBUNTU: SAUCE: apparmor: update flags to no longer be exclusive" + - Revert "UBUNTU: SAUCE: apparmor: add an apparmorfs entry to access current + attrs" + - Revert "UBUNTU: SAUCE: Revert "apparmor: add the ability to get a task's + secid"" + - Revert "UBUNTU: SAUCE: Revert "apparmor: Add support for audit rule + filtering"" + - Revert "UBUNTU: SAUCE: Revert "apparmor: modify audit rule support to + support profile stacks"" + - Revert "UBUNTU: SAUCE: Revert "apparmor: fix bad debug check in + apparmor_secid_to_secctx()"" + - Revert "UBUNTU: SAUCE: Revert "apparmor: add #ifdef checks for secmark + filtering"" + - Revert "UBUNTU: SAUCE: Revert "apparmor: fix checkpatch error in Parse + secmark policy"" + - Revert "UBUNTU: SAUCE: Revert "apparmor: Fix warning about unused function + apparmor_ipv6_postroute"" + + -- Paolo Pisati Fri, 09 Oct 2020 10:04:37 +0200 + +linux-azure (5.8.0-1007.7) groovy; urgency=medium + + * groovy/linux-azure: 5.8.0-1007.7 -proposed tracker (LP: #1898144) + + * linux-azure: Enable FSGSBASE instructions to support SGX (LP: #1877425) + - x86/ptrace: Prevent ptrace from clearing the FS/GS selector + - x86/cpu: Add 'unsafe_fsgsbase' to enable CR4.FSGSBASE + - x86/fsgsbase/64: Add intrinsics for FSGSBASE instructions + - x86/fsgsbase/64: Enable FSGSBASE instructions in helper functions + - x86/process/64: Make save_fsgs_for_kvm() ready for FSGSBASE + - x86/process/64: Use FSBSBASE in switch_to() if available + - x86/process/64: Use FSGSBASE instructions on thread copy and ptrace + - x86/speculation/swapgs: Check FSGSBASE in enabling SWAPGS mitigation + - x86/entry/64: Switch CR3 before SWAPGS in paranoid entry + - x86/entry/64: Introduce the FIND_PERCPU_BASE macro + - x86/entry/64: Handle FSGSBASE enabled paranoid entry/exit + - x86/cpu: Enable FSGSBASE on 64bit by default and add a chicken bit + - x86/elf: Enumerate kernel FSGSBASE capability in AT_HWCAP2 + - Documentation/x86/64: Add documentation for GS/FS addressing mode + - selftests/x86/fsgsbase: Test GS selector on ptracer-induced GS base write + - selftests/x86/fsgsbase: Test ptracer-induced GS base write with FSGSBASE + - x86/ptrace: Fix 32-bit PTRACE_SETREGS vs fsbase and gsbase + - x86/fsgsbase: Fix Xen PV support + + * Miscellaneous Ubuntu changes + - [Config] GCC version update + + [ Ubuntu: 5.8.0-21.22 ] + + * groovy/linux: 5.8.0-21.22 -proposed tracker (LP: #1898150) + * Packaging resync (LP: #1786013) + - update dkms package versions + * Fix broken e1000e device after S3 (LP: #1897755) + - SAUCE: e1000e: Increase polling timeout on MDIC ready bit + * EFA: add support for 0xefa1 devices (LP: #1896791) + - RDMA/efa: Expose maximum TX doorbell batch + - RDMA/efa: Expose minimum SQ size + - RDMA/efa: User/kernel compatibility handshake mechanism + - RDMA/efa: Add EFA 0xefa1 PCI ID + * Groovy update: v5.8.13 upstream stable release (LP: #1898076) + - device_cgroup: Fix RCU list debugging warning + - ASoC: pcm3168a: ignore 0 Hz settings + - ASoC: wm8994: Skip setting of the WM8994_MICBIAS register for WM1811 + - ASoC: wm8994: Ensure the device is resumed in wm89xx_mic_detect functions + - ASoC: Intel: bytcr_rt5640: Add quirk for MPMAN Converter9 2-in-1 + - clk: versatile: Add of_node_put() before return statement + - RISC-V: Take text_mutex in ftrace_init_nop() + - i2c: aspeed: Mask IRQ status to relevant bits + - s390/init: add missing __init annotations + - lockdep: fix order in trace_hardirqs_off_caller() + - EDAC/ghes: Check whether the driver is on the safe list correctly + - drm/amdkfd: fix a memory leak issue + - drm/amd/display: Don't use DRM_ERROR() for DTM add topology + - drm/amd/display: update nv1x stutter latencies + - drm/amdgpu/dc: Require primary plane to be enabled whenever the CRTC is + - drm/amd/display: Don't log hdcp module warnings in dmesg + - objtool: Fix noreturn detection for ignored functions + - i2c: mediatek: Send i2c master code at more than 1MHz + - riscv: Fix Kendryte K210 device tree + - ieee802154: fix one possible memleak in ca8210_dev_com_init + - ieee802154/adf7242: check status of adf7242_read_reg + - clocksource/drivers/h8300_timer8: Fix wrong return value in + h8300_8timer_init() + - batman-adv: bla: fix type misuse for backbone_gw hash indexing + - libbpf: Fix build failure from uninitialized variable warning + - atm: eni: fix the missed pci_disable_device() for eni_init_one() + - batman-adv: mcast/TT: fix wrongly dropped or rerouted packets + - netfilter: ctnetlink: add a range check for l3/l4 protonum + - netfilter: ctnetlink: fix mark based dump filtering regression + - netfilter: conntrack: nf_conncount_init is failing with IPv6 disabled + - netfilter: nft_meta: use socket user_ns to retrieve skuid and skgid + - mac802154: tx: fix use-after-free + - bpf: Fix clobbering of r2 in bpf_gen_ld_abs + - tools/libbpf: Avoid counting local symbols in ABI check + - drm/vc4/vc4_hdmi: fill ASoC card owner + - net: qed: Disable aRFS for NPAR and 100G + - net: qede: Disable aRFS for NPAR and 100G + - net: qed: RDMA personality shouldn't fail VF load + - igc: Fix wrong timestamp latency numbers + - igc: Fix not considering the TX delay for timestamps + - drm/sun4i: sun8i-csc: Secondary CSC register correction + - hv_netvsc: Switch the data path at the right time during hibernation + - spi: spi-fsl-dspi: use XSPI mode instead of DMA for DPAA2 SoCs + - RDMA/core: Fix ordering of CQ pool destruction + - batman-adv: Add missing include for in_interrupt() + - xsk: Fix number of pinned pages/umem size discrepancy + - nvme-tcp: fix kconfig dependency warning when !CRYPTO + - batman-adv: mcast: fix duplicate mcast packets in BLA backbone from LAN + - batman-adv: mcast: fix duplicate mcast packets in BLA backbone from mesh + - batman-adv: mcast: fix duplicate mcast packets from BLA backbone to mesh + - bpf: Fix a rcu warning for bpffs map pretty-print + - lib80211: fix unmet direct dependendices config warning when !CRYPTO + - mac80211: do not disable HE if HT is missing on 2.4 GHz + - cfg80211: fix 6 GHz channel conversion + - mac80211: fix 80 MHz association to 160/80+80 AP on 6 GHz + - ALSA: asihpi: fix iounmap in error handler + - io_uring: fix openat/openat2 unified prep handling + - SUNRPC: Fix svc_flush_dcache() + - regmap: fix page selection for noinc reads + - regmap: fix page selection for noinc writes + - net/mlx5e: mlx5e_fec_in_caps() returns a boolean + - MIPS: Loongson-3: Fix fp register access if MSA enabled + - PM / devfreq: tegra30: Disable clock on error in probe + - MIPS: Add the missing 'CPU_1074K' into __get_cpu_type() + - regulator: axp20x: fix LDO2/4 description + - spi: bcm-qspi: Fix probe regression on iProc platforms + - KVM: x86: Reset MMU context if guest toggles CR4.SMAP or CR4.PKE + - KVM: SVM: Add a dedicated INVD intercept routine + - mm: validate pmd after splitting + - arch/x86/lib/usercopy_64.c: fix __copy_user_flushcache() cache writeback + - x86/irq: Make run_on_irqstack_cond() typesafe + - x86/ioapic: Unbreak check_timer() + - scsi: lpfc: Fix initial FLOGI failure due to BBSCN not supported + - ALSA: usb-audio: Add delay quirk for H570e USB headsets + - ALSA: hda/realtek - Couldn't detect Mic if booting with headset plugged + - ALSA: hda/realtek: Enable front panel headset LED on Lenovo ThinkStation + P520 + - lib/string.c: implement stpcpy + - tracing: fix double free + - s390/dasd: Fix zero write for FBA devices + - mt76: mt7615: use v1 MCU API on MT7615 to fix issues with adding/removing + stations + - lib/bootconfig: Fix a bug of breaking existing tree nodes + - lib/bootconfig: Fix to remove tailing spaces after value + - kprobes: Fix to check probe enabled before disarm_kprobe_ftrace() + - kprobes: tracing/kprobes: Fix to kill kprobes on initmem after boot + - btrfs: fix put of uninitialized kobject after seed device delete + - btrfs: fix overflow when copying corrupt csums for a message + - media: cec-adap.c: don't use flush_scheduled_work() + - MIPS: Loongson2ef: Disable Loongson MMI instructions + - dmabuf: fix NULL pointer dereference in dma_buf_release() + - mm, THP, swap: fix allocating cluster for swapfile by mistake + - mm: replace memmap_context by meminit_context + - mm: don't rely on system state to detect hot-plug operations + - s390/zcrypt: Fix ZCRYPT_PERDEV_REQCNT ioctl + - io_uring: ensure open/openat2 name is cleaned on cancelation + - KVM: arm64: Assume write fault on S1PTW permission fault on instruction + fetch + - dm: fix bio splitting and its bio completion order for regular IO + - clocksource/drivers/timer-ti-dm: Do reset before enable + - Linux 5.8.13 + * HP Zbook Studio G7 boots into corrupted screen with PSR featured panel + (LP: #1897501) + - SAUCE: drm/i915/psr: allow overriding PSR disable param by quirk + - SAUCE: drm/dp: add DP_QUIRK_FORCE_PSR_CHIP_DEFAULT quirk to CMN prod-ID + 19-15 + * mwifiex stops working after kernel upgrade (LP: #1897299) + - mwifiex: Increase AES key storage size to 256 bits + * Oops and hang when starting LVM snapshots on 5.4.0-47 (LP: #1894780) + - SAUCE: Revert "mm: memcg/slab: fix memory leak at non-root kmem_cache + destroy" + * mm/slub kernel oops on focal kernel 5.4.0-45 (LP: #1895109) + - SAUCE: Revert "mm/slub: fix a memory leak in sysfs_slab_add()" + * Remove NVMe suspend-to-idle workaround (LP: #1897227) + - Revert "UBUTU: SAUCE: pci: prevent Intel NVMe SSDPEKKF from entering D3" + - Revert "UBUNTU: SAUCE: pci: prevent sk hynix nvme from entering D3" + * [UBUNTU 20.04.1] qemu (secure guest) crash due to gup_fast / dynamic page + table folding issue (LP: #1896726) + - mm/gup: fix gup_fast with dynamic page table folding + * backport tls-rx to ubuntu 5.8 (LP: #1895947) + - net/mlx5: kTLS, Improve TLS params layout structures + - net/mlx5e: Turn XSK ICOSQ into a general asynchronous one + - net/mlx5e: Refactor build channel params + - net/mlx5e: API to manipulate TTC rules destinations + - net/mlx5e: Receive flow steering framework for accelerated TCP flows + - net/mlx5e: Accel, Expose flow steering API for rules add/del + - net/mlx5e: kTLS, Improve TLS feature modularity + - net/mlx5e: kTLS, Use kernel API to extract private offload context + - net/mlx5e: kTLS, Add kTLS RX HW offload support + - Revert "net/tls: Add force_resync for driver resync" + - net/tls: Add asynchronous resync + - net/mlx5e: kTLS, Add kTLS RX resync support + - net/mlx5e: kTLS, Add kTLS RX stats + - net/mlx5e: Increase Async ICO SQ size + - net/mlx5e: kTLS, Cleanup redundant capability check + - net/mlx5e: kTLS, Improve rx handler function call + - net/mlx5e: kTLS, Fix napi sync and possible use-after-free + - net/mlx5e: fix memory leak of tls + - net/mlx5e: Fix build break when CONFIG_XPS is not set + - net/mlx5e: kTLS, Add missing dma_unmap in RX resync + - net/mlx5e: kTLS, Fix leak on resync error flow + - net/mlx5e: kTLS, Avoid kzalloc(GFP_KERNEL) under spinlock + * Groovy update: v5.8.12 upstream stable release (LP: #1897550) + - ibmvnic fix NULL tx_pools and rx_tools issue at do_reset + - ibmvnic: add missing parenthesis in do_reset() + - act_ife: load meta modules before tcf_idr_check_alloc() + - bnxt_en: Avoid sending firmware messages when AER error is detected. + - bnxt_en: Fix NULL ptr dereference crash in bnxt_fw_reset_task() + - cxgb4: fix memory leak during module unload + - cxgb4: Fix offset when clearing filter byte counters + - geneve: add transport ports in route lookup for geneve + - hdlc_ppp: add range checks in ppp_cp_parse_cr() + - hinic: bump up the timeout of SET_FUNC_STATE cmd + - ip: fix tos reflection in ack and reset packets + - ipv4: Initialize flowi4_multipath_hash in data path + - ipv4: Update exception handling for multipath routes via same device + - ipv6: avoid lockdep issue in fib6_del() + - net: bridge: br_vlan_get_pvid_rcu() should dereference the VLAN group under + RCU + - net: DCB: Validate DCB_ATTR_DCB_BUFFER argument + - net: dsa: rtl8366: Properly clear member config + - net: Fix bridge enslavement failure + - net: ipv6: fix kconfig dependency warning for IPV6_SEG6_HMAC + - net/mlx5: Fix FTE cleanup + - net: phy: call phy_disable_interrupts() in phy_attach_direct() instead + - net: sched: initialize with 0 before setting erspan md->u + - net: sch_generic: aviod concurrent reset and enqueue op for lockless qdisc + - net: sctp: Fix IPv6 ancestor_size calc in sctp_copy_descendant + - nfp: use correct define to return NONE fec + - taprio: Fix allowing too small intervals + - tipc: Fix memory leak in tipc_group_create_member() + - tipc: fix shutdown() of connection oriented socket + - tipc: use skb_unshare() instead in tipc_buf_append() + - net/mlx5e: Enable adding peer miss rules only if merged eswitch is supported + - net/mlx5e: TLS, Do not expose FPGA TLS counter if not supported + - bnxt_en: Use memcpy to copy VPD field info. + - bnxt_en: return proper error codes in bnxt_show_temp + - bnxt_en: Protect bnxt_set_eee() and bnxt_set_pauseparam() with mutex. + - net: lantiq: Wake TX queue again + - net: lantiq: use netif_tx_napi_add() for TX NAPI + - net: lantiq: Use napi_complete_done() + - net: lantiq: Disable IRQs only if NAPI gets scheduled + - net: phy: Avoid NPD upon phy_detach() when driver is unbound + - net: phy: Do not warn in phy_stop() on PHY_DOWN + - net: qrtr: check skb_put_padto() return value + - net: add __must_check to skb_put_padto() + - net: ethernet: ti: cpsw_new: fix suspend/resume + - wireguard: noise: take lock when removing handshake entry from table + - wireguard: peerlookup: take lock before checking hash in replace operation + - net: ipa: fix u32_replace_bits by u32p_xxx version + - net/mlx5e: Fix memory leak of tunnel info when rule under multipath not + ready + - hinic: fix rewaking txq after netif_tx_disable + - hv_netvsc: Fix hibernation for mlx5 VF driver + - net: dsa: link interfaces with the DSA master to get rid of lockdep warnings + - net: dsa: microchip: ksz8795: really set the correct number of ports + - net: macb: fix for pause frame receive enable bit + - Revert "netns: don't disable BHs when locking "nsid_lock"" + - net/mlx5e: Use RCU to protect rq->xdp_prog + - net/mlx5e: Use synchronize_rcu to sync with NAPI + - net/mlx5e: Fix endianness when calculating pedit mask first bit + - Linux 5.8.12 + * Groovy update: v5.8.11 upstream stable release (LP: #1896795) + - RDMA/bnxt_re: Restrict the max_gids to 256 + - dt-bindings: spi: Fix spi-bcm-qspi compatible ordering + - mptcp: sendmsg: reset iter on error + - net: handle the return value of pskb_carve_frag_list() correctly + - dt-bindings: PCI: intel,lgm-pcie: Fix matching on all snps,dw-pcie instances + - hv_netvsc: Remove "unlikely" from netvsc_select_queue + - loop: Set correct device size when using LOOP_CONFIGURE + - firmware_loader: fix memory leak for paged buffer + - xprtrdma: Release in-flight MRs on disconnect + - NFSv4.1 handle ERR_DELAY error reclaiming locking state on delegation recall + - phy: omap-usb2-phy: disable PHY charger detect + - habanalabs: prevent user buff overflow + - habanalabs: fix report of RAZWI initiator coordinates + - scsi: pm8001: Fix memleak in pm8001_exec_internal_task_abort + - scsi: libfc: Fix for double free() + - scsi: lpfc: Fix FLOGI/PLOGI receive race condition in pt2pt discovery + - scsi: lpfc: Extend the RDF FPIN Registration descriptor for additional + events + - regulator: pwm: Fix machine constraints application + - spi: spi-loopback-test: Fix out-of-bounds read + - interconnect: Show bandwidth for disabled paths as zero in debugfs + - NFS: Zero-stateid SETATTR should first return delegation + - SUNRPC: stop printk reading past end of string + - rapidio: Replace 'select' DMAENGINES 'with depends on' + - cifs: fix DFS mount with cifsacl/modefromsid + - openrisc: Fix cache API compile issue when not inlining + - nvme-fc: cancel async events before freeing event struct + - nvme-rdma: cancel async events before freeing event struct + - nvme-tcp: cancel async events before freeing event struct + - block: only call sched requeue_request() for scheduled requests + - f2fs: fix indefinite loop scanning for free nid + - f2fs: Return EOF on unaligned end of file DIO read + - i2c: algo: pca: Reapply i2c bus settings after reset + - spi: Fix memory leak on splited transfers + - KVM: MIPS: Change the definition of kvm type + - clk: davinci: Use the correct size when allocating memory + - clk: rockchip: Fix initialization of mux_pll_src_4plls_p + - ASoC: Intel: skl_hda_dsp_generic: Fix NULLptr dereference in autosuspend + delay + - ASoC: qcom: Set card->owner to avoid warnings + - ASoC: rt1308-sdw: Fix return check for devm_regmap_init_sdw() + - ASoC: rt711: Fix return check for devm_regmap_init_sdw() + - ASoC: rt715: Fix return check for devm_regmap_init_sdw() + - ASoC: rt700: Fix return check for devm_regmap_init_sdw() + - ASoC: qcom: common: Fix refcount imbalance on error + - drm/mediatek: dsi: Fix scrolling of panel with small hfp or hbp + - powerpc/book3s64/radix: Fix boot failure with large amount of guest memory + - ASoC: soc-core: add snd_soc_find_dai_with_mutex() + - ASoC: meson: axg-toddr: fix channel order on g12 platforms + - ASoC: tlv320adcx140: Fix accessing uninitialized adcx140->dev + - ASoC: Intel: haswell: Fix power transition refactor + - ASoC: core: Do not cleanup uninitialized dais on soc_pcm_open failure + - Drivers: hv: vmbus: hibernation: do not hang forever in vmbus_bus_resume() + - scsi: libsas: Fix error path in sas_notify_lldd_dev_found() + - arm64: Allow CPUs unffected by ARM erratum 1418040 to come in late + - Drivers: hv: vmbus: Add timeout to vmbus_wait_for_unload + - perf test: Fix the "signal" test inline assembly + - perf record: Don't clear event's period if set by a term + - MIPS: SNI: Fix MIPS_L1_CACHE_SHIFT + - perf test: Free aliases for PMU event map aliases test + - perf metric: Fix some memory leaks + - perf evlist: Fix cpu/thread map leak + - perf parse-event: Fix memory leak in evsel->unit + - perf test: Free formats for perf pmu parse test + - drm/i915/gem: Reduce context termination list iteration guard to RCU + - fbcon: Fix user font detection test at fbcon_resize(). + - MIPS: SNI: Fix spurious interrupts + - drm/mediatek: Use CPU when fail to get cmdq event + - drm/mediatek: Add missing put_device() call in mtk_ddp_comp_init() + - drm/mediatek: Add exception handing in mtk_drm_probe() if component init + fail + - drm/mediatek: Add missing put_device() call in mtk_drm_kms_init() + - drm/mediatek: Add missing put_device() call in mtk_hdmi_dt_parse_pdata() + - arm64: bpf: Fix branch offset in JIT + - iommu/amd: Fix potential @entry null deref + - iommu/amd: Restore IRTE.RemapEn bit for amd_iommu_activate_guest_mode + - kconfig: qconf: use delete[] instead of delete to free array (again) + - i2c: mediatek: Fix generic definitions for bus frequency + - i2c: mxs: use MXS_DMA_CTRL_WAIT4END instead of DMA_CTRL_ACK + - riscv: Add sfence.vma after early page table changes + - locking/lockdep: Fix "USED" <- "IN-NMI" inversions + - efi: efibc: check for efivars write capability + - locking/percpu-rwsem: Use this_cpu_{inc,dec}() for read_count + - x86/unwind/fp: Fix FP unwinding in ret_from_fork + - drm/kfd: fix a system crash issue during GPU recovery + - drm/i915/gem: Delay tracking the GEM context until it is registered + - drm/i915: Filter wake_flags passed to default_wake_function + - USB: quirks: Add USB_QUIRK_IGNORE_REMOTE_WAKEUP quirk for BYD zhaoxin + notebook + - USB: UAS: fix disconnect by unplugging a hub + - usblp: fix race between disconnect() and read() + - usb: typec: ucsi: acpi: Increase command completion timeout value + - usb: typec: ucsi: Prevent mode overrun + - i2c: i801: Fix resume bug + - Revert "ALSA: hda - Fix silent audio output and corrupted input on MSI + X570-A PRO" + - ALSA: hda: fixup headset for ASUS GX502 laptop + - ALSA: hda/realtek - The Mic on a RedmiBook doesn't work + - percpu: fix first chunk size calculation for populated bitmap + - Input: trackpoint - add new trackpoint variant IDs + - Input: i8042 - add Entroware Proteus EL07R4 to nomux and reset lists + - serial: 8250_pci: Add Realtek 816a and 816b + - serial: core: fix port-lock initialisation + - serial: core: fix console port-lock regression + - x86/boot/compressed: Disable relocation relaxation + - ksm: reinstate memcg charge on copied pages + - kprobes: fix kill kprobe which has been marked as gone + - mm/thp: fix __split_huge_pmd_locked() for migration PMD + - s390: add 3f program exception handler + - s390/zcrypt: fix kmalloc 256k failure + - ehci-hcd: Move include to keep CRC stable + - arm64: paravirt: Initialize steal time when cpu is online + - powerpc/dma: Fix dma_map_ops::get_required_mask + - selftests/vm: fix display of page size in map_hugetlb + - dm/dax: Fix table reference counts + - mm/memory_hotplug: drain per-cpu pages again during memory offline + - dm: Call proper helper to determine dax support + - dax: Fix compilation for CONFIG_DAX && !CONFIG_FS_DAX + - mm: memcg: fix memcg reclaim soft lockup + - nvme-loop: set ctrl state connecting after init + - Linux 5.8.11 + * Miscellaneous Ubuntu changes + - SAUCE: drm/i915/display: Fix null deref in intel_psr_atomic_check() + - SAUCE: RDMA/core: Introduce peer memory interface + - SAUCE: fixup! RDMA/core: Introduce peer memory interface + - SAUCE: IB/mlx5: Use peer client page_shift + - SAUCE: IB/umem: Fix the Peer flow to handle pinned pages properly + - [Config] GCC version update + + -- Paolo Pisati Fri, 02 Oct 2020 12:11:07 +0200 + +linux-azure (5.8.0-1006.6) groovy; urgency=medium + + * groovy/linux-azure: 5.8.0-1006.6 -proposed tracker (LP: #1896662) + + * Miscellaneous Ubuntu changes + - [Config] Update configs following 5.8.0-20.21 rebase + + [ Ubuntu: 5.8.0-20.21 ] + + * groovy/linux: 5.8.0-20.21 -proposed tracker (LP: #1896668) + * Lenovo ThinkBook 14-IML Touchpad not showing up in /proc/bus/input/devices + (LP: #1853277) + - i2c: core: Call i2c_acpi_install_space_handler() before + i2c_acpi_register_devices() + * Enable LTR for endpoints behind VMD (LP: #1896598) + - SAUCE: PCI/ASPM: Enable LTR for endpoints behind VMD + * Remove duplicated code in ip_defrag.sh of kselftests/net (LP: #1894062) + - Revert "UBUNTU: SAUCE: selftests: net: ip_defrag: modprobe missing + nf_defrag_ipv6 support" + * [SRU] [Focal/OEM-5.6/Groovy]Fix AMD usb host controller lost after stress S3 + (LP: #1893914) + - SAUCE: xhci: workaround for S3 issue on AMD SNPS 3.0 xHC + * debian/rules editconfigs does not work on s390x to change s390x only configs + (LP: #1863116) + - [Packaging] kernelconfig -- only update/edit configurations on architectures + we have compiler support + * [Ubuntu 20.10] zPCI DMA tables and bitmap leak on hard unplug (PCI Event + 0x0304) (LP: #1896216) + - s390/pci: fix leak of DMA tables on hard unplug + * md: improve IO accounting (LP: #1891151) + - md: improve io stats accounting + * Groovy update: v5.8.10 upstream stable release (LP: #1896078) + - ARM: OMAP2+: Fix an IS_ERR() vs NULL check in _get_pwrdm() + - ARM: dts: logicpd-torpedo-baseboard: Fix broken audio + - ARM: dts: logicpd-som-lv-baseboard: Fix broken audio + - ARM: dts: logicpd-som-lv-baseboard: Fix missing video + - regulator: push allocation in regulator_ena_gpio_request() out of lock + - regulator: remove superfluous lock in regulator_resolve_coupling() + - ARM: dts: socfpga: fix register entry for timer3 on Arria10 + - ARM: dts: omap5: Fix DSI base address and clocks + - ARM: dts: ls1021a: fix QuadSPI-memory reg range + - ARM: dts: imx7ulp: Correct gpio ranges + - arm64: dts: imx: Add missing imx8mm-beacon-kit.dtb to build + - ARM: dts: imx7d-zii-rmu2: fix rgmii phy-mode for ksz9031 phy + - RDMA/rtrs-srv: Replace device_register with device_initialize and device_add + - RDMA/rxe: Fix memleak in rxe_mem_init_user + - RDMA/rxe: Drop pointless checks in rxe_init_ports + - RDMA/rxe: Fix panic when calling kmem_cache_create() + - RDMA/bnxt_re: Do not report transparent vlan from QP1 + - RDMA/bnxt_re: Fix the qp table indexing + - RDMA/bnxt_re: Static NQ depth allocation + - RDMA/bnxt_re: Fix driver crash on unaligned PSN entry address + - RDMA/bnxt_re: Remove the qp from list only if the qp destroy succeeds + - drm/sun4i: add missing put_device() call in sun8i_r40_tcon_tv_set_mux() + - arm64: dts: imx8mq: Fix TMU interrupt property + - drm/sun4i: Fix dsi dcs long write function + - scsi: qla2xxx: Fix regression on sparc64 + - scsi: libsas: Set data_dir as DMA_NONE if libata marks qc as NODATA + - drm/virtio: fix unblank + - RDMA/core: Fix unsafe linked list traversal after failing to allocate CQ + - RDMA/core: Fix reported speed and width + - scsi: megaraid_sas: Don't call disable_irq from process IRQ poll + - scsi: mpt3sas: Don't call disable_irq from IRQ poll handler + - soundwire: fix double free of dangling pointer + - Revert "kbuild: use -flive-patching when CONFIG_LIVEPATCH is enabled" + - interconnect: qcom: Fix small BW votes being truncated to zero + - padata: fix possible padata_works_lock deadlock + - drm/sun4i: Fix DE2 YVU handling + - drm/sun4i: backend: Support alpha property on lowest plane + - drm/sun4i: backend: Disable alpha on the lowest plane on the A20 + - KVM: arm64: Update page shift if stage 2 block mapping not supported + - ARM: dts: imx6sx: fix the pad QSPI1B_SCLK mux mode for uart3 + - mmc: sdhci-acpi: Clear amd_sdhci_host on reset + - mmc: sdhci-msm: Add retries when all tuning phases are found valid + - spi: stm32: Rate-limit the 'Communication suspended' message + - btrfs: fix NULL pointer dereference after failure to create snapshot + - i2c: npcm7xx: Fix timeout calculation + - block: restore a specific error code in bdev_del_partition + - seccomp: don't leak memory when filter install races + - nvme-fabrics: allow to queue requests for live queues + - spi: stm32: fix pm_runtime_get_sync() error checking + - block: Set same_page to false in __bio_try_merge_page if ret is false + - RDMA/rtrs-srv: Set .release function for rtrs srv device during device init + - IB/isert: Fix unaligned immediate-data handling + - ARM: dts: bcm: HR2: Fixed QSPI compatible string + - ARM: dts: NSP: Fixed QSPI compatible string + - ARM: dts: BCM5301X: Fixed QSPI compatible string + - arm64: dts: ns2: Fixed QSPI compatible string + - KVM: nVMX: Fix the update value of nested load IA32_PERF_GLOBAL_CTRL control + - KVM: x86: always allow writing '0' to MSR_KVM_ASYNC_PF_EN + - ARC: HSDK: wireup perf irq + - dmaengine: acpi: Put the CSRT table after using it + - MIPS: Loongson64: Do not override watch and ejtag feature + - netfilter: conntrack: allow sctp hearbeat after connection re-use + - netfilter: nft_set_rbtree: Detect partial overlap with start endpoint match + - drivers/net/wan/lapbether: Added needed_tailroom + - NFC: st95hf: Fix memleak in st95hf_in_send_cmd + - firestream: Fix memleak in fs_open + - scsi: qedf: Fix null ptr reference in qedf_stag_change_work + - ALSA: hda: Fix 2 channel swapping for Tegra + - ALSA: hda/tegra: Program WAKEEN register for Tegra + - drivers/dma/dma-jz4780: Fix race condition between probe and irq handler + - net: hns3: Fix for geneve tx checksum bug + - xfs: fix off-by-one in inode alloc block reservation calculation + - drivers/net/wan/lapbether: Set network_header before transmitting + - wireless: fix wrong 160/80+80 MHz setting + - mac80211: reduce packet loss event false positives + - cfg80211: Adjust 6 GHz frequency to channel conversion + - xfs: initialize the shortform attr header padding entry + - ARC: show_regs: fix r12 printing and simplify + - irqchip/eznps: Fix build error for !ARC700 builds + - media: gpio-ir-tx: spinlock is not needed to disable interrupts + - nvmet-tcp: Fix NULL dereference when a connect data comes in h2cdata pdu + - nvme-fabrics: don't check state NVME_CTRL_NEW for request acceptance + - nvme: have nvme_wait_freeze_timeout return if it timed out + - nvme-tcp: serialize controller teardown sequences + - nvme-tcp: fix timeout handler + - nvme-tcp: fix reset hang if controller died in the middle of a reset + - nvme-rdma: serialize controller teardown sequences + - nvme-rdma: fix timeout handler + - nvme-rdma: fix reset hang if controller died in the middle of a reset + - nvme-pci: cancel nvme device request before disabling + - HID: quirks: Set INCREMENT_USAGE_ON_DUPLICATE for all Saitek X52 devices + - HID: microsoft: Add rumble support for the 8bitdo SN30 Pro+ controller + - drivers/net/wan/hdlc_cisco: Add hard_header_len + - HID: elan: Fix memleak in elan_input_configured + - ARC: [plat-hsdk]: Switch ethernet phy-mode to rgmii-id + - cpufreq: intel_pstate: Refuse to turn off with HWP enabled + - cpufreq: intel_pstate: Fix intel_pstate_get_hwp_max() for turbo disabled + - arm64/module: set trampoline section flags regardless of + CONFIG_DYNAMIC_FTRACE + - ALSA: hda: hdmi - add Rocketlake support + - ALSA: hda: fix a runtime pm issue in SOF when integrated GPU is disabled + - ALSA: hda: use consistent HDAudio spelling in comments/docs + - drivers/net/wan/hdlc: Change the default of hard_header_len to 0 + - drm/amdgpu: Fix bug in reporting voltage for CIK + - iommu/amd: Do not force direct mapping when SME is active + - iommu/amd: Do not use IOMMUv2 functionality when SME is active + - gcov: Disable gcov build with GCC 10 + - iio: adc: mcp3422: fix locking scope + - iio: adc: mcp3422: fix locking on error path + - iio: adc: ti-ads1015: fix conversion when CONFIG_PM is not set + - iio: cros_ec: Set Gyroscope default frequency to 25Hz + - iio:light:ltr501 Fix timestamp alignment issue. + - iio:proximity:mb1232: Fix timestamp alignment and prevent data leak. + - iio:accel:bmc150-accel: Fix timestamp alignment and prevent data leak. + - iio:adc:ti-adc084s021 Fix alignment and data leak issues. + - iio:adc:ina2xx Fix timestamp alignment issue. + - iio:adc:max1118 Fix alignment of timestamp and data leak issues + - iio:adc:ti-adc081c Fix alignment and data leak issues + - iio:magnetometer:ak8975 Fix alignment and data leak issues. + - iio:light:max44000 Fix timestamp alignment and prevent data leak. + - iio:chemical:ccs811: Fix timestamp alignment and prevent data leak. + - iio: accel: kxsd9: Fix alignment of local buffer. + - iio:accel:mma7455: Fix timestamp alignment and prevent data leak. + - iio:accel:mma8452: Fix timestamp alignment and prevent data leak. + - staging: wlan-ng: fix out of bounds read in prism2sta_probe_usb() + - btrfs: require only sector size alignment for parent eb bytenr + - btrfs: fix lockdep splat in add_missing_dev + - btrfs: free data reloc tree on failed mount + - btrfs: fix wrong address when faulting in pages in the search ioctl + - thunderbolt: Disable ports that are not implemented + - kobject: Restore old behaviour of kobject_del(NULL) + - regulator: push allocation in regulator_init_coupling() outside of lock + - regulator: push allocations in create_regulator() outside of lock + - regulator: push allocation in set_consumer_device_supply() out of lock + - regulator: plug of_node leak in regulator_register()'s error path + - regulator: core: Fix slab-out-of-bounds in regulator_unlock_recursive() + - misc: eeprom: at24: register nvmem only after eeprom is ready to use + - scsi: target: iscsi: Fix data digest calculation + - scsi: lpfc: Fix setting IRQ affinity with an empty CPU mask + - scsi: target: iscsi: Fix hang in iscsit_access_np() when getting + tpg->np_login_sem + - drm/tve200: Stabilize enable/disable + - drm/msm: Split the a5xx preemption record + - drm/msm: Disable preemption on all 5xx targets + - drm/msm: Disable the RPTR shadow + - mmc: sdio: Use mmc_pre_req() / mmc_post_req() + - mmc: sdhci-of-esdhc: Don't walk device-tree on every interrupt + - nvme: Revert: Fix controller creation races with teardown flow + - rbd: require global CAP_SYS_ADMIN for mapping and unmapping + - RDMA/rxe: Fix the parent sysfs read when the interface has 15 chars + - RDMA/mlx4: Read pkey table length instead of hardcoded value + - fbcon: remove soft scrollback code + - fbcon: remove now unusued 'softback_lines' cursor() argument + - vgacon: remove software scrollback support + - KVM: VMX: Don't freeze guest when event delivery causes an APIC-access exit + - KVM: arm64: Do not try to map PUDs when they are folded into PMD + - kvm x86/mmu: use KVM_REQ_MMU_SYNC to sync when needed + - KVM: fix memory leak in kvm_io_bus_unregister_dev() + - Revert "usb: dwc3: meson-g12a: fix shared reset control use" + - debugfs: Fix module state check condition + - test_firmware: Test platform fw loading on non-EFI systems + - arm64: dts: imx8mp: correct sdma1 clk setting + - ARM: dts: vfxxx: Add syscon compatible with OCOTP + - video: fbdev: fix OOB read in vga_8planes_imageblit() + - staging: greybus: audio: fix uninitialized value issue + - phy: qcom-qmp: Use correct values for ipq8074 PCIe Gen2 PHY init + - usb: core: fix slab-out-of-bounds Read in read_descriptors + - USB: serial: ftdi_sio: add IDs for Xsens Mti USB converter + - USB: serial: option: support dynamic Quectel USB compositions + - USB: serial: option: add support for SIM7070/SIM7080/SIM7090 modules + - usb: Fix out of sync data toggle if a configured device is reconfigured + - usb: typec: ucsi: acpi: Check the _DEP dependencies + - usb: typec: intel_pmc_mux: Un-register the USB role switch + - usb: typec: intel_pmc_mux: Do not configure Altmode HPD High + - usb: typec: intel_pmc_mux: Do not configure SBU and HSL Orientation in + Alternate modes + - drm/msm/gpu: make ringbuffer readonly + - gcov: add support for GCC 10.1 + - Linux 5.8.10 + - [Config] GCC version update + - [Config] updateconfigs following v5.8.10 import + * Wakeup the system by touching the touchpad (LP: #1888331) + - HID: i2c-hid: Enable wakeup capability from Suspend-to-Idle + * Fix non-working NVMe after S3 (LP: #1895718) + - SAUCE: PCI: Enable ACS quirk on CML root port + * Thunderbolt3 daisy chain sometimes doesn't work (LP: #1895606) + - thunderbolt: Retry DROM read once if parsing fails + * Groovy update: v5.8.9 upstream stable release (LP: #1895634) + - io_uring: fix cancel of deferred reqs with ->files + - io_uring: fix linked deferred ->files cancellation + - RDMA/cma: Simplify DEVICE_REMOVAL for internal_id + - RDMA/cma: Using the standard locking pattern when delivering the removal + event + - RDMA/cma: Remove unneeded locking for req paths + - RDMA/cma: Execute rdma_cm destruction from a handler properly + - ipv4: Silence suspicious RCU usage warning + - ipv6: Fix sysctl max for fib_multipath_hash_policy + - netlabel: fix problems with mapping removal + - net: usb: dm9601: Add USB ID of Keenetic Plus DSL + - sctp: not disable bh in the whole sctp_get_port_local() + - taprio: Fix using wrong queues in gate mask + - tipc: fix shutdown() of connectionless socket + - tipc: fix using smp_processor_id() in preemptible + - net: disable netpoll on fresh napis + - mptcp: free acked data before waiting for more memory + - Linux 5.8.9 + * Miscellaneous Ubuntu changes + - SAUCE: Revert "selftests/bpf: Fix btf_dump test cases on 32-bit arches" + - [Config] annotations: remove VGACON_SOFT_SCROLLBACK + - packaging: arm64: add a 64KB mem pages flavour called 'generic-64k' + - packaging: arm64: generic-64k: skip ABI, modules and retpoline checks + * Miscellaneous upstream changes + - tty: hvcs: Don't NULL tty->driver_data until hvcs_cleanup() + + -- Paolo Pisati Wed, 23 Sep 2020 10:42:28 +0200 + +linux-azure (5.8.0-1005.5) groovy; urgency=medium + + * groovy/linux-azure: 5.8.0-1005.5 -proposed tracker (LP: #1895114) + + * Only notify Hyper-V for die events that are oops (LP: #1891222) + - Drivers: hv: vmbus: Only notify Hyper-V for die events that are oops + + [ Ubuntu: 5.8.0-19.20 ] + + * groovy/linux: 5.8.0-19.20 -proposed tracker (LP: #1895120) + * Please switch default, hwe, oem kernel flavours governor to + CONFIG_CPU_FREQ_DEFAULT_GOV_ONDEMAND=y , such that advanced userspace + utilities such as game-mode can be later used to rev-up to to performance, + or rev-down to powersave. (LP: #1885730) + - [Config] Set the default CPU governor to ONDEMAND + * Packaging resync (LP: #1786013) + - update dkms package versions + - [Packaging] update variants + * [WD19TB] external DP failed with DRM error message (LP: #1886165) + - drm/i915/tgl+: Use the correct DP_TP_* register instances in MST encoders + - drm/i915/tgl+: Fix TBT DPLL fractional divider for 38.4MHz ref clock + * Groovy update: v5.8.8 upstream stable release (LP: #1895097) + - hwmon: (pmbus/isl68137) remove READ_TEMPERATURE_1 telemetry for RAA228228 + - HID: quirks: Always poll three more Lenovo PixArt mice + - drm/msm/dpu: Fix reservation failures in modeset + - drm/msm/dpu: Fix scale params in plane validation + - drm/msm/dpu: fix unitialized variable error + - tty: serial: qcom_geni_serial: Drop __init from qcom_geni_console_setup + - drm/msm: add shutdown support for display platform_driver + - hwmon: (applesmc) check status earlier. + - nvmet: Disable keep-alive timer when kato is cleared to 0h + - drm/msm: enable vblank during atomic commits + - habanalabs: unmap PCI bars upon iATU failure + - habanalabs: validate packet id during CB parse + - habanalabs: set clock gating according to mask + - habanalabs: proper handling of alloc size in coresight + - habanalabs: set max power according to card type + - habanalabs: validate FW file size + - habanalabs: check correct vmalloc return code + - drm/msm/a6xx: fix gmu start on newer firmware + - gfs2: add some much needed cleanup for log flushes that fail + - hv_utils: return error if host timesysnc update is stale + - hv_utils: drain the timesync packets on onchannelcallback + - ceph: don't allow setlease on cephfs + - i2c: iproc: Fix shifting 31 bits + - drm/omap: fix incorrect lock state + - irqchip/ingenic: Leave parent IRQ unmasked on suspend + - cpuidle: Fixup IRQ state + - nbd: restore default timeout when setting it to zero + - s390: don't trace preemption in percpu macros + - drm/amd/display: should check error using DC_OK + - drm/amd/display: Reject overlay plane configurations in multi-display + scenarios + - drivers: gpu: amd: Initialize amdgpu_dm_backlight_caps object to 0 in + amdgpu_dm_update_backlight_caps + - drm/amd/display: Revert HDCP disable sequence change + - drm/amd/display: Fix passive dongle mistaken as active dongle in EDID + emulation + - drm/amd/display: Keep current gain when ABM disable immediately + - drm/amd/display: Retry AUX write when fail occurs + - drm/amd/display: Fix memleak in amdgpu_dm_mode_config_init + - xen/xenbus: Fix granting of vmalloc'd memory + - fsldma: fix very broken 32-bit ppc ioread64 functionality + - dmaengine: of-dma: Fix of_dma_router_xlate's of_dma_xlate handling + - batman-adv: Avoid uninitialized chaddr when handling DHCP + - batman-adv: Fix own OGM check in aggregated OGMs + - batman-adv: bla: use netif_rx_ni when not in interrupt context + - dmaengine: at_hdmac: check return value of of_find_device_by_node() in + at_dma_xlate() + - dmaengine: at_hdmac: add missing put_device() call in at_dma_xlate() + - dmaengine: at_hdmac: add missing kfree() call in at_dma_xlate() + - rxrpc: Keep the ACK serial in a var in rxrpc_input_ack() + - rxrpc: Fix loss of RTT samples due to interposed ACK + - rxrpc: Make rxrpc_kernel_get_srtt() indicate validity + - MIPS: mm: BMIPS5000 has inclusive physical caches + - MIPS: BMIPS: Also call bmips_cpu_setup() for secondary cores + - mmc: sdhci-acpi: Fix HS400 tuning for AMDI0040 + - perf sched timehist: Fix use of CPU list with summary option + - perf top: Skip side-band event setup if HAVE_LIBBPF_SUPPORT is not set + - netfilter: nf_tables: add NFTA_SET_USERDATA if not null + - netfilter: nf_tables: incorrect enum nft_list_attributes definition + - netfilter: nf_tables: fix destination register zeroing + - net: hns: Fix memleak in hns_nic_dev_probe + - net: systemport: Fix memleak in bcm_sysport_probe + - ravb: Fixed to be able to unload modules + - net: arc_emac: Fix memleak in arc_mdio_probe + - bpf: Fix a buffer out-of-bound access when filling raw_tp link_info + - dmaengine: pl330: Fix burst length if burst size is smaller than bus width + - dmaengine: ti: k3-udma: Fix the TR initialization for prep_slave_sg + - gtp: add GTPA_LINK info to msg sent to userspace + - net: ethernet: ti: cpsw: fix clean up of vlan mc entries for host port + - net: ethernet: ti: cpsw_new: fix clean up of vlan mc entries for host port + - bnxt_en: Don't query FW when netif_running() is false. + - bnxt_en: Check for zero dir entries in NVRAM. + - bnxt_en: Fix ethtool -S statitics with XDP or TCs enabled. + - bnxt_en: Fix PCI AER error recovery flow + - bnxt_en: Fix possible crash in bnxt_fw_reset_task(). + - bnxt_en: fix HWRM error when querying VF temperature + - xfs: finish dfops on every insert range shift iteration + - xfs: fix boundary test in xfs_attr_shortform_verify + - bnxt: don't enable NAPI until rings are ready + - media: vicodec: add missing v4l2_ctrl_request_hdl_put() + - media: cedrus: Add missing v4l2_ctrl_request_hdl_put() + - net: ethernet: ti: cpsw_new: fix error handling in + cpsw_ndo_vlan_rx_kill_vid() + - media: i2c: imx214: select V4L2_FWNODE + - selftests/bpf: Fix massive output from test_maps + - net: dsa: mt7530: fix advertising unsupported 1000baseT_Half + - netfilter: nfnetlink: nfnetlink_unicast() reports EAGAIN instead of ENOBUFS + - nvmet-fc: Fix a missed _irqsave version of spin_lock in + 'nvmet_fc_fod_op_done()' + - nvme: fix controller instance leak + - netfilter: conntrack: do not auto-delete clash entries on reply + - opp: Don't drop reference for an OPP table that was never parsed + - cxgb4: fix thermal zone device registration + - net: ethernet: ti: am65-cpsw: fix rmii 100Mbit link mode + - MIPS: perf: Fix wrong check condition of Loongson event IDs + - block: fix locking in bdev_del_partition + - perf top/report: Fix infinite loop in the TUI for grouped events + - perf cs-etm: Fix corrupt data after perf inject from + - perf intel-pt: Fix corrupt data after perf inject from + - perf tools: Correct SNOOPX field offset + - net: ethernet: mlx4: Fix memory allocation in mlx4_buddy_init() + - fix regression in "epoll: Keep a reference on files added to the check list" + - net: bcmgenet: fix mask check in bcmgenet_validate_flow() + - net: gemini: Fix another missing clk_disable_unprepare() in probe + - nfp: flower: fix ABI mismatch between driver and firmware + - net: dp83867: Fix WoL SecureOn password + - MIPS: add missing MSACSR and upper MSA initialization + - MIPS: SNI: Fix SCSI interrupt + - xfs: fix xfs_bmap_validate_extent_raw when checking attr fork of rt files + - perf jevents: Fix suspicious code in fixregex() + - perf stat: Turn off summary for interval mode by default + - perf bench: The do_run_multi_threaded() function must use + IS_ERR(perf_session__new()) + - tg3: Fix soft lockup when tg3_reset_task() fails. + - x86, fakenuma: Fix invalid starting node ID + - iommu/vt-d: Serialize IOMMU GCMD register modifications + - thermal: ti-soc-thermal: Fix bogus thermal shutdowns for omap4430 + - thermal: qcom-spmi-temp-alarm: Don't suppress negative temp + - iommu/amd: Restore IRTE.RemapEn bit after programming IRTE + - iommu/amd: Use cmpxchg_double() when updating 128-bit IRTE + - include/linux/log2.h: add missing () around n in roundup_pow_of_two() + - iommu/vt-d: Handle 36bit addressing for x86-32 + - tracing/kprobes, x86/ptrace: Fix regs argument order for i386 + - x86/entry: Fix AC assertion + - x86/debug: Allow a single level of #DB recursion + - ext2: don't update mtime on COW faults + - xfs: don't update mtime on COW faults + - ARC: perf: don't bail setup if pct irq missing in device-tree + - arc: fix memory initialization for systems with two memory banks + - btrfs: drop path before adding new uuid tree entry + - btrfs: fix potential deadlock in the search ioctl + - btrfs: allocate scrub workqueues outside of locks + - btrfs: set the correct lockdep class for new nodes + - btrfs: set the lockdep class for log tree extent buffers + - btrfs: block-group: fix free-space bitmap threshold + - btrfs: tree-checker: fix the error message for transid error + - Bluetooth: Return NOTIFY_DONE for hci_suspend_notifier + - x86/mm/32: Bring back vmalloc faulting on x86_32 + - Revert "ALSA: hda: Add support for Loongson 7A1000 controller" + - ALSA: ca0106: fix error code handling + - ALSA: usb-audio: Add basic capture support for Pioneer DJ DJM-250MK2 + - ALSA: usb-audio: Add implicit feedback quirk for UR22C + - ALSA: pcm: oss: Remove superfluous WARN_ON() for mulaw sanity check + - ALSA: hda/hdmi: always check pin power status in i915 pin fixup + - ALSA: firewire-digi00x: exclude Avid Adrenaline from detection + - ALSA: hda - Fix silent audio output and corrupted input on MSI X570-A PRO + - ALSA; firewire-tascam: exclude Tascam FE-8 from detection + - ALSA: hda/realtek: Add quirk for Samsung Galaxy Book Ion NT950XCJ-X716A + - ALSA: hda/realtek - Improved routing for Thinkpad X1 7th/8th Gen + - arm64: dts: mt7622: add reset node for mmc device + - mmc: mediatek: add optional module reset property + - mmc: dt-bindings: Add resets/reset-names for Mediatek MMC bindings + - mmc: sdhci-pci: Fix SDHCI_RESET_ALL for CQHCI for Intel GLK-based + controllers + - media: rc: do not access device via sysfs after rc_unregister_device() + - media: rc: uevent sysfs file races with rc_unregister_device() + - affs: fix basic permission bits to actually work + - block: allow for_each_bvec to support zero len bvec + - block: ensure bdi->io_pages is always initialized + - io_uring: set table->files[i] to NULL when io_sqe_file_register failed + - io_uring: fix removing the wrong file in __io_sqe_files_update() + - s390: fix GENERIC_LOCKBREAK dependency typo in Kconfig + - libata: implement ATA_HORKAGE_MAX_TRIM_128M and apply to Sandisks + - mips/oprofile: Fix fallthrough placement + - blk-iocost: ioc_pd_free() shouldn't assume irq disabled + - blk-stat: make q->stats->lock irqsafe + - dmaengine: dw-edma: Fix scatter-gather address calculation + - drm/i915: Fix sha_text population code + - drm/amd/pm: avoid false alarm due to confusing softwareshutdowntemp setting + - drm/amdgpu: Specify get_argument function for ci_smu_funcs + - dm writecache: handle DAX to partitions on persistent memory correctly + - dm mpath: fix racey management of PG initialization + - dm integrity: fix error reporting in bitmap mode after creation + - dm crypt: Initialize crypto wait structures + - dm cache metadata: Avoid returning cmd->bm wild pointer on error + - dm thin metadata: Avoid returning cmd->bm wild pointer on error + - dm thin metadata: Fix use-after-free in dm_bm_set_read_only + - mm: slub: fix conversion of freelist_corrupted() + - mm: track page table modifications in __apply_to_page_range() + - mm: madvise: fix vma user-after-free + - mm/rmap: fixup copying of soft dirty and uffd ptes + - io_uring: no read/write-retry on -EAGAIN error and O_NONBLOCK marked file + - perf record: Correct the help info of option "--no-bpf-event" + - kconfig: streamline_config.pl: check defined(ENV variable) before using it + - sdhci: tegra: Add missing TMCLK for data timeout + - checkpatch: fix the usage of capture group ( ... ) + - mm/migrate: fixup setting UFFD_WP flag + - mm/hugetlb: try preferred node first when alloc gigantic page from cma + - mm/hugetlb: fix a race between hugetlb sysctl handlers + - mm/khugepaged.c: fix khugepaged's request size in collapse_file + - cfg80211: regulatory: reject invalid hints + - net: usb: Fix uninit-was-stored issue in asix_read_phy_addr() + - Linux 5.8.8 + * Groovy update: v5.8.7 upstream stable release (LP: #1894959) + - HID: core: Correctly handle ReportSize being zero + - HID: core: Sanitize event code and type when mapping input + - netfilter: nft_set_rbtree: Handle outcomes of tree rotations in overlap + detection + - mm: fix pin vs. gup mismatch with gate pages + - selftests/x86/test_vsyscall: Improve the process_vm_readv() test + - perf record/stat: Explicitly call out event modifiers in the documentation + - media: media/v4l2-core: Fix kernel-infoleak in video_put_user() + - KVM: arm64: Add kvm_extable for vaxorcism code + - KVM: arm64: Survive synchronous exceptions caused by AT instructions + - dt-bindings: mmc: tegra: Add tmclk for Tegra210 and later + - arm64: tegra: Add missing timeout clock to Tegra194 SDMMC nodes + - arm64: tegra: Add missing timeout clock to Tegra186 SDMMC nodes + - arm64: tegra: Add missing timeout clock to Tegra210 SDMMC + - sdhci: tegra: Remove SDHCI_QUIRK_DATA_TIMEOUT_USES_SDCLK for Tegra210 + - sdhci: tegra: Remove SDHCI_QUIRK_DATA_TIMEOUT_USES_SDCLK for Tegra186 + - nl80211: fix NL80211_ATTR_HE_6GHZ_CAPABILITY usage + - scsi: target: tcmu: Optimize use of flush_dcache_page + - Linux 5.8.7 + * Groovy update: v5.8.6 upstream stable release (LP: #1894956) + - Revert "UBUNTU: SAUCE: Revert "ARM64: vdso32: Install vdso32 from + vdso_install"" + - khugepaged: khugepaged_test_exit() check mmget_still_valid() + - ASoC: intel/skl/hda - fix probe regression on systems without i915 + - ALSA: pci: delete repeated words in comments + - drm/amdgpu: fix RAS memory leak in error case + - EDAC/mc: Call edac_inc_ue_error() before panic + - ASoC: img: Fix a reference count leak in img_i2s_in_set_fmt + - ASoC: img-parallel-out: Fix a reference count leak + - ASoC: tegra: Fix reference count leaks. + - mfd: intel-lpss: Add Intel Emmitsburg PCH PCI IDs + - arm64: dts: qcom: msm8916: Pull down PDM GPIOs during sleep + - powerpc/xive: Ignore kmemleak false positives + - media: pci: ttpci: av7110: fix possible buffer overflow caused by bad DMA + value in debiirq() + - gcc-plugins/stackleak: Don't instrument itself + - blktrace: ensure our debugfs dir exists + - staging: rts5208: fix memleaks on error handling paths in probe + - scsi: target: tcmu: Fix crash on ARM during cmd completion + - mfd: intel-lpss: Add Intel Tiger Lake PCH-H PCI IDs + - iommu/iova: Don't BUG on invalid PFNs + - platform/chrome: cros_ec_sensorhub: Fix EC timestamp overflow + - drm/amdkfd: Fix reference count leaks. + - drm/radeon: fix multiple reference count leak + - drm/amdgpu: fix ref count leak in amdgpu_driver_open_kms + - drm/amd/display: fix ref count leak in amdgpu_drm_ioctl + - drm/amdgpu: fix ref count leak in amdgpu_display_crtc_set_config + - drm/amdgpu/display: fix ref count leak when pm_runtime_get_sync fails + - drm/amdgpu/fence: fix ref count leak when pm_runtime_get_sync fails + - drm/amdkfd: fix ref count leak when pm_runtime_get_sync fails + - drm/amdgpu/pm: fix ref count leak when pm_runtime_get_sync fails + - scsi: lpfc: Fix shost refcount mismatch when deleting vport + - xfs: Don't allow logging of XFS_ISTALE inodes + - scsi: target: Fix xcopy sess release leak + - selftests/powerpc: Purge extra count_pmc() calls of ebb selftests + - f2fs: remove write attribute of main_blkaddr sysfs node + - f2fs: fix error path in do_recover_data() + - MIPS: KVM: Limit Trap-and-Emulate to MIPS32R2 only + - omapfb: fix multiple reference count leaks due to pm_runtime_get_sync + - PCI: Fix pci_create_slot() reference count leak + - ARM: dts: ls1021a: output PPS signal on FIPER2 + - rtlwifi: rtl8192cu: Prevent leaking urb + - mips/vdso: Fix resource leaks in genvdso.c + - ALSA: hda: Add support for Loongson 7A1000 controller + - gpu: host1x: Put gather's BO on pinning error + - cec-api: prevent leaking memory through hole in structure + - ASoC: Intel: sof_sdw_rt711: remove properties in card remove + - HID: quirks: add NOGET quirk for Logitech GROUP + - f2fs: fix use-after-free issue + - drm/nouveau/drm/noveau: fix reference count leak in nouveau_fbcon_open + - drm/nouveau: fix reference count leak in nv50_disp_atomic_commit + - drm/nouveau: Fix reference count leak in nouveau_connector_detect + - locking/lockdep: Fix overflow in presentation of average lock-time + - btrfs: file: reserve qgroup space after the hole punch range is locked + - btrfs: make btrfs_qgroup_check_reserved_leak take btrfs_inode + - scsi: iscsi: Do not put host in iscsi_set_flashnode_param() + - netfilter: nf_tables: report EEXIST on overlaps + - ceph: fix potential mdsc use-after-free crash + - ceph: do not access the kiocb after aio requests + - scsi: fcoe: Memory leak fix in fcoe_sysfs_fcf_del() + - i2c: i801: Add support for Intel Tiger Lake PCH-H + - EDAC/ie31200: Fallback if host bridge device is already initialized + - hugetlbfs: prevent filesystem stacking of hugetlbfs + - media: davinci: vpif_capture: fix potential double free + - media: i2c: imx290: fix reset GPIO pin handling + - drm/amd/display: change global buffer to local buffer + - drm/amd/display: fix compilation error on allmodconfig + - KVM: arm64: Fix symbol dependency in __hyp_call_panic_nvhe + - powerpc/spufs: add CONFIG_COREDUMP dependency + - dmaengine: idxd: fix PCI_MSI build errors + - USB: sisusbvga: Fix a potential UB casued by left shifting a negative value + - mmc: sdhci-of-arasan: fix timings allocation code + - brcmfmac: Set timeout value when configuring power save + - pinctrl: mediatek: avoid virtual gpio trying to set reg + - pinctrl: mediatek: fix build for tristate changes + - efi: provide empty efi_enter_virtual_mode implementation + - arm64: Fix __cpu_logical_map undefined issue + - net: openvswitch: introduce common code for flushing flows + - PCI: qcom: Add missing ipq806x clocks in PCIe driver + - PCI: qcom: Change duplicate PCI reset to phy reset + - PCI: qcom: Add missing reset for ipq806x + - PM / devfreq: Fix the wrong end with semicolon + - cpufreq: intel_pstate: Fix EPP setting via sysfs in active mode + - ALSA: usb-audio: Add capture support for Saffire 6 (USB 1.1) + - nfsd: fix oops on mixed NFSv4/NFSv3 client access + - block: respect queue limit of max discard segment + - block: virtio_blk: fix handling single range discard request + - drm/msm/adreno: fix updating ring fence + - block: Fix page_is_mergeable() for compound pages + - bfq: fix blkio cgroup leakage v4 + - hwmon: (nct7904) Correct divide by 0 + - blk-mq: insert request not through ->queue_rq into sw/scheduler queue + - blkcg: fix memleak for iolatency + - nvmet: fix a memory leak + - nvme-fc: Fix wrong return value in __nvme_fc_init_request() + - nvme: multipath: round-robin: fix single non-optimized path case + - null_blk: fix passing of REQ_FUA flag in null_handle_rq + - habanalabs: Fix memory corruption in debugfs + - drm/etnaviv: always start/stop scheduler in timeout processing + - i2c: core: Don't fail PRP0001 enumeration when no ID table exist + - i2c: rcar: in slave mode, clear NACK earlier + - vdpa: ifcvf: return err when fail to request config irq + - vdpa: ifcvf: free config irq in ifcvf_free_irq() + - usb: gadget: f_tcm: Fix some resource leaks in some error paths + - video: fbdev: controlfb: Fix build for COMPILE_TEST=y && PPC_PMAC=n + - spi: stm32: clear only asserted irq flags on interrupt + - jbd2: make sure jh have b_transaction set in refile/unfile_buffer + - ext4: don't BUG on inconsistent journal feature + - ext4: handle read only external journal device + - ext4: skip non-loaded groups at cr=0/1 when scanning for good groups + - drm/virtio: fix memory leak in virtio_gpu_cleanup_object() + - ext4: abort the filesystem if failed to async write metadata buffer + - jbd2: abort journal if free a async write error metadata buffer + - ext4: handle option set by mount flags correctly + - ext4: handle error of ext4_setup_system_zone() on remount + - ext4: correctly restore system zone info when remount fails + - fs: prevent BUG_ON in submit_bh_wbc() + - spi: stm32h7: fix race condition at end of transfer + - spi: stm32: fix fifo threshold level in case of short transfer + - spi: stm32: fix stm32_spi_prepare_mbr in case of odd clk_rate + - spi: stm32: always perform registers configuration prior to transfer + - drm/amd/powerplay: correct Vega20 cached smu feature state + - drm/amd/powerplay: correct UVD/VCE PG state on custom pptable uploading + - drm/amd/display: Fix LFC multiplier changing erratically + - drm/amd/display: Switch to immediate mode for updating infopackets + - selftests/bpf: Fix segmentation fault in test_progs + - netfilter: avoid ipv6 -> nf_defrag_ipv6 module dependency + - libbpf: Prevent overriding errno when logging errors + - tools/bpftool: Fix compilation warnings in 32-bit mode + - selftest/bpf: Fix compilation warnings in 32-bit mode + - selftests/bpf: Fix btf_dump test cases on 32-bit arches + - selftests/bpf: Correct various core_reloc 64-bit assumptions + - can: j1939: transport: j1939_xtp_rx_dat_one(): compare own packets to detect + corruptions + - dma-pool: fix coherent pool allocations for IOMMU mappings + - dma-pool: Only allocate from CMA when in same memory zone + - drivers/net/wan/hdlc_x25: Added needed_headroom and a skb->len check + - ALSA: hda/realtek: Add model alc298-samsung-headphone + - s390/cio: add cond_resched() in the slow_eval_known_fn() loop + - ASoC: wm8994: Avoid attempts to read unreadable registers + - ALSA: usb-audio: ignore broken processing/extension unit + - selftests: disable rp_filter for icmp_redirect.sh + - scsi: fcoe: Fix I/O path allocation + - scsi: ufs: Fix possible infinite loop in ufshcd_hold + - scsi: ufs: Improve interrupt handling for shared interrupts + - scsi: ufs: Clean up completed request without interrupt notification + - scsi: scsi_debug: Fix scp is NULL errors + - scsi: qla2xxx: Flush all sessions on zone disable + - scsi: qla2xxx: Flush I/O on zone disable + - scsi: qla2xxx: Indicate correct supported speeds for Mezz card + - scsi: qla2xxx: Fix login timeout + - scsi: qla2xxx: Check if FW supports MQ before enabling + - scsi: qla2xxx: Fix null pointer access during disconnect from subsystem + - Revert "scsi: qla2xxx: Fix crash on qla2x00_mailbox_command" + - macvlan: validate setting of multiple remote source MAC addresses + - net: gianfar: Add of_node_put() before goto statement + - drm/amdgpu: fix NULL pointer access issue when unloading driver + - drm/amdkfd: fix the wrong sdma instance query for renoir + - bpf: Fix a rcu_sched stall issue with bpf task/task_file iterator + - bpf: Avoid visit same object multiple times + - ext4: limit the length of per-inode prealloc list + - powerpc/perf: Fix soft lockups due to missed interrupt accounting + - libbpf: Fix map index used in error message + - bpf: selftests: global_funcs: Check err_str before strstr + - arm64: Move handling of erratum 1418040 into C code + - arm64: Allow booting of late CPUs affected by erratum 1418040 + - hwmon: (gsc-hwmon) Scale temperature to millidegrees + - block: fix get_max_io_size() + - block: loop: set discard granularity and alignment for block device backed + loop + - blk-mq: order adding requests to hctx->dispatch and checking SCHED_RESTART + - btrfs: reset compression level for lzo on remount + - btrfs: check the right error variable in btrfs_del_dir_entries_in_log + - btrfs: fix space cache memory leak after transaction abort + - btrfs: detect nocow for swap after snapshot delete + - fbcon: prevent user font height or width change from causing potential out- + of-bounds access + - USB: lvtest: return proper error code in probe + - vt: defer kfree() of vc_screenbuf in vc_do_resize() + - vt_ioctl: change VT_RESIZEX ioctl to check for error return from vc_resize() + - serial: samsung: Removes the IRQ not found warning + - serial: pl011: Fix oops on -EPROBE_DEFER + - serial: pl011: Don't leak amba_ports entry on driver register error + - serial: stm32: avoid kernel warning on absence of optional IRQ + - serial: 8250_exar: Fix number of ports for Commtech PCIe cards + - serial: 8250: change lock order in serial8250_do_startup() + - io_uring: clear req->result on IOPOLL re-issue + - writeback: Protect inode->i_io_list with inode->i_lock + - writeback: Avoid skipping inode writeback + - writeback: Fix sync livelock due to b_dirty_time processing + - XEN uses irqdesc::irq_data_common::handler_data to store a per interrupt XEN + data pointer which contains XEN specific information. + - usb: renesas-xhci: remove version check + - usb: host: xhci-tegra: otg usb2/usb3 port init + - usb: host: xhci-tegra: fix tegra_xusb_get_phy() + - usb: host: xhci: fix ep context print mismatch in debugfs + - xhci: Always restore EP_SOFT_CLEAR_TOGGLE even if ep reset failed + - io-wq: fix hang after cancelling pending hashed work + - KVM: arm64: Set HCR_EL2.PTW to prevent AT taking synchronous exception + - arm64: vdso32: make vdso32 install conditional + - PM: sleep: core: Fix the handling of pending runtime resume requests + - powerpc/32s: Disable VMAP stack which CONFIG_ADB_PMU + - powerpc/perf: Fix crashes with generic_compat_pmu & BHRB + - device property: Fix the secondary firmware node handling in + set_primary_fwnode() + - crypto: af_alg - Work around empty control messages without MSG_MORE + - usbip: Implement a match function to fix usbip + - genirq/matrix: Deal with the sillyness of for_each_cpu() on UP + - irqchip/stm32-exti: Avoid losing interrupts due to clearing pending bits by + mistake + - x86/irq: Unbreak interrupt affinity setting + - x86/hotplug: Silence APIC only after all interrupts are migrated + - drm/i915: Fix cmd parser desc matching with masks + - drm/etnaviv: fix external abort seen on GC600 rev 0x19 + - drm/dp_mst: Don't return error code when crtc is null + - drm/modeset-lock: Take the modeset BKL for legacy drivers + - drm/amdgpu: Fix buffer overflow in INFO ioctl + - drm/amd/display: use correct scale for actual_brightness + - drm/amdgpu/gfx10: refine mgcg setting + - drm/amd/powerplay: Fix hardmins not being sent to SMU for RV + - drm/amd/pm: correct Vega10 swctf limit setting + - drm/amd/pm: correct Vega12 swctf limit setting + - drm/amd/pm: correct Vega20 swctf limit setting + - drm/amd/pm: correct the thermal alert temperature limit settings + - USB: yurex: Fix bad gfp argument + - usb: uas: Add quirk for PNY Pro Elite + - USB: quirks: Ignore duplicate endpoint on Sound Devices MixPre-D + - USB: Ignore UAS for JMicron JMS567 ATA/ATAPI Bridge + - usb: host: ohci-exynos: Fix error handling in exynos_ohci_probe() + - USB: gadget: u_f: add overflow checks to VLA macros + - USB: gadget: f_ncm: add bounds checks to ncm_unwrap_ntb() + - USB: gadget: u_f: Unbreak offset calculation in VLAs + - usb: dwc3: gadget: Don't setup more than requested + - usb: dwc3: gadget: Fix handling ZLP + - usb: dwc3: gadget: Handle ZLP for sg requests + - USB: cdc-acm: rework notification_buffer resizing + - usb: storage: Add unusual_uas entry for Sony PSZ drives + - USB: Also match device drivers using the ->match vfunc + - USB: Fix device driver race + - usb: typec: ucsi: Fix AB BA lock inversion + - usb: typec: ucsi: Fix 2 unlocked ucsi_run_command calls + - usb: typec: ucsi: Rework ppm_lock handling + - usb: typec: ucsi: Hold con->lock for the entire duration of + ucsi_register_port() + - usb: typec: tcpm: Fix Fix source hard reset response for TDA 2.3.1.1 and TDA + 2.3.1.2 failures + - io_uring: don't recurse on tsk->sighand->siglock with signalfd + - io_uring: don't use poll handler if file can't be nonblocking read/written + - io_uring: make offset == -1 consistent with preadv2/pwritev2 + - drm/atomic-helper: reset vblank on crtc reset + - fbmem: pull fbcon_update_vcs() out of fb_set_var() + - mm/page_counter: fix various data races at memsw + - HID: hiddev: Fix slab-out-of-bounds write in hiddev_ioctl_usage() + - drm/vmwgfx/stdu: Use drm_mode_config_reset + - drm/vmwgfx/sou: Use drm_mode_config_reset + - drm/vmwgfx/ldu: Use drm_mode_config_reset + - dma-pool: Fix an uninitialized variable bug in atomic_pool_expand() + - ALSA: usb-audio: Update documentation comment for MS2109 quirk + - Linux 5.8.6 + - [Config] GCC version update + * DELL LATITUDE 5491 touchscreen doesn't work (LP: #1889446) // Groovy update: + v5.8.6 upstream stable release (LP: #1894956) + - USB: quirks: Add no-lpm quirk for another Raydium touchscreen + * [NUC8CCHK][HDA-Intel - HDA Intel PCH, playback] No sound at all + (LP: #1875199) // Groovy update: v5.8.6 upstream stable release + (LP: #1894956) + - ALSA: hda/realtek: Fix pin default on Intel NUC 8 Rugged + * CVE-2020-14386 + - net/packet: fix overflow in tpacket_rcv + * dkms-build: downloads fail in private PPAs (LP: #1883874) + - dkms-build: apt-cache policy elides username:password information + * Groovy update: v5.8.5 upstream stable release (LP: #1893237) + - gre6: Fix reception with IP6_TNL_F_RCV_DSCP_COPY + - net: Fix potential wrong skb->protocol in skb_vlan_untag() + - net: nexthop: don't allow empty NHA_GROUP + - net: qrtr: fix usage of idr in port assignment to socket + - net/sched: act_ct: Fix skb double-free in tcf_ct_handle_fragments() error + flow + - net: sctp: Fix negotiation of the number of data streams. + - net/smc: Prevent kernel-infoleak in __smc_diag_dump() + - tipc: call rcu_read_lock() in tipc_aead_encrypt_done() + - tipc: fix uninit skb->data in tipc_nl_compat_dumpit() + - net: ena: Make missed_tx stat incremental + - ethtool: Fix preserving of wanted feature bits in netlink interface + - ethtool: Account for hw_features in netlink interface + - ethtool: Don't omit the netlink reply if no features were changed + - netlink: fix state reallocation in policy export + - io_uring: fix missing ->mm on exit + - binfmt_flat: revert "binfmt_flat: don't offset the data start" + - Linux 5.8.5 + * Miscellaneous Ubuntu changes + - [Config] Re-enable UEFI signing for arm64 + - SAUCE: Revert "UBUNTU: SAUCE: export __get_vm_area_caller() and + map_kernel_range()" + + -- Paolo Pisati Fri, 11 Sep 2020 14:01:28 +0200 + +linux-azure (5.8.0-1004.4) groovy; urgency=medium + + * groovy/linux-azure: 5.8.0-1004.4 -proposed tracker (LP: #1893046) + + * Miscellaneous Ubuntu changes + - [packaging] add dwarves dependency + - [Config] Remove variables for wireguard dkms build + - [Config] Enable nvidia server dkms build + - [Config] updateconfigs following 5.8.0-18.19 rebase + - [Config] linux-azure: move wireguard to the main modules package + + [ Ubuntu: 5.8.0-18.19 ] + + * groovy/linux: 5.8.0-18.19 -proposed tracker (LP: #1893047) + * Packaging resync (LP: #1786013) + - update dkms package versions + * Groovy update: v5.8.4 upstream stable release (LP: #1893048) + - drm/vgem: Replace opencoded version of drm_gem_dumb_map_offset() + - drm/panel-simple: Fix inverted V/H SYNC for Frida FRD350H54004 panel + - drm/ast: Remove unused code paths for AST 1180 + - drm/ast: Initialize DRAM type before posting GPU + - khugepaged: adjust VM_BUG_ON_MM() in __khugepaged_enter() + - ALSA: hda: avoid reset of sdo_limit + - ALSA: hda/realtek: Add quirk for Samsung Galaxy Flex Book + - ALSA: hda/realtek: Add quirk for Samsung Galaxy Book Ion + - can: j1939: transport: j1939_session_tx_dat(): fix use-after-free read in + j1939_tp_txtimer() + - can: j1939: socket: j1939_sk_bind(): make sure ml_priv is allocated + - spi: Prevent adding devices below an unregistering controller + - io_uring: find and cancel head link async work on files exit + - mm/vunmap: add cond_resched() in vunmap_pmd_range + - romfs: fix uninitialized memory leak in romfs_dev_read() + - kernel/relay.c: fix memleak on destroy relay channel + - uprobes: __replace_page() avoid BUG in munlock_vma_page() + - squashfs: avoid bio_alloc() failure with 1Mbyte blocks + - mm: include CMA pages in lowmem_reserve at boot + - mm, page_alloc: fix core hung in free_pcppages_bulk() + - ASoC: amd: renoir: restore two more registers during resume + - RDMA/hfi1: Correct an interlock issue for TID RDMA WRITE request + - opp: Enable resources again if they were disabled earlier + - opp: Put opp table in dev_pm_opp_set_rate() for empty tables + - opp: Put opp table in dev_pm_opp_set_rate() if _set_opp_bw() fails + - ext4: do not block RWF_NOWAIT dio write on unallocated space + - ext4: fix checking of directory entry validity for inline directories + - jbd2: add the missing unlock_buffer() in the error path of + jbd2_write_superblock() + - scsi: zfcp: Fix use-after-free in request timeout handlers + - selftests: kvm: Use a shorter encoding to clear RAX + - s390/pci: fix zpci_bus_link_virtfn() + - s390/pci: re-introduce zpci_remove_device() + - s390/pci: fix PF/VF linking on hot plug + - s390/pci: ignore stale configuration request event + - mm/memory.c: skip spurious TLB flush for retried page fault + - drm: amdgpu: Use the correct size when allocating memory + - drm/amdgpu/display: use GFP_ATOMIC in dcn20_validate_bandwidth_internal + - drm/amd/display: Fix incorrect backlight register offset for DCN + - drm/amd/display: Fix EDID parsing after resume from suspend + - drm/amd/display: Blank stream before destroying HDCP session + - drm/amd/display: Fix DFPstate hang due to view port changed + - drm/amd/display: fix pow() crashing when given base 0 + - drm/i915/pmu: Prefer drm_WARN_ON over WARN_ON + - drm/i915: Provide the perf pmu.module + - scsi: ufs: Add DELAY_BEFORE_LPM quirk for Micron devices + - scsi: target: tcmu: Fix crash in tcmu_flush_dcache_range on ARM + - media: budget-core: Improve exception handling in budget_register() + - media: coda: jpeg: add NULL check after kmalloc + - f2fs: fix to check page dirty status before writeback + - rtc: goldfish: Enable interrupt in set_alarm() when necessary + - media: vpss: clean up resources in init + - f2fs: should avoid inode eviction in synchronous path + - Input: psmouse - add a newline when printing 'proto' by sysfs + - MIPS: Fix unable to reserve memory for Crash kernel + - m68knommu: fix overwriting of bits in ColdFire V3 cache control + - svcrdma: Fix another Receive buffer leak + - xfs: fix inode quota reservation checks + - drm/ttm: fix offset in VMAs with a pg_offs in ttm_bo_vm_access + - riscv: Fixup static_obj() fail + - jffs2: fix UAF problem + - ceph: fix use-after-free for fsc->mdsc + - swiotlb-xen: use vmalloc_to_page on vmalloc virt addresses + - cpufreq: intel_pstate: Fix cpuinfo_max_freq when MSR_TURBO_RATIO_LIMIT is 0 + - scsi: libfc: Free skb in fc_disc_gpn_id_resp() for valid cases + - virtio_ring: Avoid loop when vq is broken in virtqueue_poll + - media: camss: fix memory leaks on error handling paths in probe + - tools/testing/selftests/cgroup/cgroup_util.c: cg_read_strcmp: fix null + pointer dereference + - xfs: Fix UBSAN null-ptr-deref in xfs_sysfs_init + - alpha: fix annotation of io{read,write}{16,32}be() + - fat: fix fat_ra_init() for data clusters == 0 + - fs/signalfd.c: fix inconsistent return codes for signalfd4 + - ext4: fix potential negative array index in do_split() + - drm/virtio: fix missing dma_fence_put() in virtio_gpu_execbuffer_ioctl() + - ext4: don't allow overlapping system zones + - ext4: check journal inode extents more carefully + - netfilter: nf_tables: nft_exthdr: the presence return value should be + little-endian + - spi: stm32: fixes suspend/resume management + - ASoC: q6afe-dai: mark all widgets registers as SND_SOC_NOPM + - ASoC: q6routing: add dummy register read/write function + - tools/bpftool: Make skeleton code C++17-friendly by dropping typeof() + - bpf: sock_ops ctx access may stomp registers in corner case + - bpf: sock_ops sk access may stomp registers when dst_reg = src_reg + - libbpf: Fix BTF-defined map-in-map initialization on 32-bit host arches + - can: j1939: fix kernel-infoleak in j1939_sk_sock2sockaddr_can() + - can: j1939: transport: j1939_simple_recv(): ignore local J1939 messages send + not by J1939 stack + - can: j1939: transport: add j1939_session_skb_find_by_offset() function + - igc: Fix PTP initialization + - i40e: Set RX_ONLY mode for unicast promiscuous on VLAN + - i40e: Fix crash during removing i40e driver + - net: fec: correct the error path for regulator disable in probe + - bonding: show saner speed for broadcast mode + - can: j1939: fix support for multipacket broadcast message + - can: j1939: cancel rxtimer on multipacket broadcast session complete + - can: j1939: abort multipacket broadcast session when timeout occurs + - can: j1939: add rxtimer for multipacket broadcast session + - bonding: fix a potential double-unregister + - ipvlan: fix device features + - s390/runtime_instrumentation: fix storage key handling + - s390/ptrace: fix storage key handling + - ASoC: msm8916-wcd-analog: fix register Interrupt offset + - ASoC: intel: Fix memleak in sst_media_open + - watch_queue: Limit the number of watches a user can hold + - vfio-pci: Avoid recursive read-lock usage + - vfio/type1: Add proper error unwind for vfio_iommu_replay() + - arch/ia64: Restore arch-specific pgd_offset_k implementation + - kvm: x86: Toggling CR4.SMAP does not load PDPTEs in PAE mode + - kvm: x86: Toggling CR4.PKE does not load PDPTEs in PAE mode + - scsi: ufs: ti-j721e-ufs: Fix error return in ti_j721e_ufs_probe() + - scsi: ufs: Add quirk to fix mishandling utrlclr/utmrlclr + - scsi: ufs: Add quirk to disallow reset of interrupt aggregation + - scsi: ufs: Add quirk to enable host controller without hce + - scsi: ufs: Introduce UFSHCD_QUIRK_PRDT_BYTE_GRAN quirk + - scsi: ufs: Add quirk to fix abnormal ocs fatal error + - scsi: ufs-pci: Add quirk for broken auto-hibernate for Intel EHL + - scsi: ufs: Fix interrupt error message for shared interrupts + - Revert "scsi: qla2xxx: Disable T10-DIF feature with FC-NVMe during probe" + - kconfig: qconf: do not limit the pop-up menu to the first row + - kconfig: qconf: fix signal connection to invalid slots + - efi: avoid error message when booting under Xen + - Fix build error when CONFIG_ACPI is not set/enabled: + - RDMA/bnxt_re: Do not add user qps to flushlist + - Revert "RDMA/hns: Reserve one sge in order to avoid local length error" + - afs: Fix key ref leak in afs_put_operation() + - kconfig: qconf: remove qInfo() to get back Qt4 support + - afs: Fix NULL deref in afs_dynroot_depopulate() + - ARM64: vdso32: Install vdso32 from vdso_install + - powerpc/fixmap: Fix the size of the early debug area + - bpf: Use get_file_rcu() instead of get_file() for task_file iterator + - powerpc/pseries/hotplug-cpu: wait indefinitely for vCPU death + - bonding: fix active-backup failover for current ARP slave + - net: ena: Prevent reset after device destruction + - net: ena: Change WARN_ON expression in ena_del_napi_in_range() + - net: gemini: Fix missing free_netdev() in error path of + gemini_ethernet_port_probe() + - selftests/bpf: Remove test_align leftovers + - hv_netvsc: Fix the queue_mapping in netvsc_vf_xmit() + - net: dsa: b53: check for timeout + - epoll: Keep a reference on files added to the check list + - powerpc: Fix P10 PVR revision in /proc/cpuinfo for SMT4 cores + - powerpc/pseries: Do not initiate shutdown when system is running on UPS + - EDAC/{i7core,sb,pnd2,skx}: Fix error event severity + - efi/x86: Mark kernel rodata non-executable for mixed mode + - efi: add missed destroy_workqueue when efisubsys_init fails + - efi/libstub: Stop parsing arguments at "--" + - efi/libstub: Handle NULL cmdline + - efi/libstub: Handle unterminated cmdline + - do_epoll_ctl(): clean the failure exits up a bit + - KVM: Pass MMU notifier range flags to kvm_unmap_hva_range() + - KVM: arm64: Only reschedule if MMU_NOTIFIER_RANGE_BLOCKABLE is not set + - Revert "drm/amd/display: Improve DisplayPort monitor interop" + - Linux 5.8.4 + - [Config] Update configs following 5.8.4 stable update + * Miscellaneous Ubuntu changes + - SAUCE: Revert "ARM64: vdso32: Install vdso32 from vdso_install" + + -- Paolo Pisati Thu, 27 Aug 2020 19:23:03 +0200 + +linux-azure (5.8.0-1003.3) groovy; urgency=medium + + * groovy/linux-azure: 5.8.0-1003.3 -proposed tracker (LP: #1892954) + + * Packaging resync (LP: #1786013) + - [Packaging] update variants + - [Packaging] update update.conf + + [ Ubuntu: 5.8.0-17.18 ] + + * groovy/linux: 5.8.0-17.18 -proposed tracker (LP: #1892959) + * Packaging resync (LP: #1786013) + - [Packaging] update helper scripts + - update dkms package versions + * [Hyper-V] VSS and File Copy daemons intermittently fails to start + (LP: #1891224) + - [Packaging] Bind hv_vss_daemon startup to hv_vss device + - [Packaging] bind hv_fcopy_daemon startup to hv_fcopy device + * Fix non-working USB devices plugged during system sleep (LP: #1892678) + - xhci: Do warm-reset when both CAS and XDEV_RESUME are set + * ASPM not enabled on child devices behind VMD controller (LP: #1889384) + - SAUCE: PCI/ASPM: Enable ASPM for links under VMD domain + * Groovy update: v5.8.3 upstream stable release (LP: #1892774) + - [Config] update config for ARMADA_AP_CPU_CLK + - ALSA: hda/realtek - Fix unused variable warning + - smb3: warn on confusing error scenario with sec=krb5 + - SMB3: Fix mkdir when idsfromsid configured on mount + - genirq/affinity: Make affinity setting if activated opt-in + - genirq: Unlock irq descriptor after errors + - genirq/PM: Always unlock IRQ descriptor in rearm_wake_irq() + - PCI: hotplug: ACPI: Fix context refcounting in acpiphp_grab_context() + - PCI/ATS: Add pci_pri_supported() to check device or associated PF + - PCI: Add device even if driver attach failed + - PCI: qcom: Define some PARF params needed for ipq8064 SoC + - PCI: qcom: Add support for tx term offset for rev 2.1.0 + - btrfs: allow use of global block reserve for balance item deletion + - btrfs: free anon block device right after subvolume deletion + - btrfs: don't allocate anonymous block device for user invisible roots + - btrfs: preallocate anon block device at first phase of snapshot creation + - btrfs: ref-verify: fix memory leak in add_block_entry + - btrfs: only commit the delayed inode when doing a full fsync + - btrfs: stop incremening log_batch for the log root tree when syncing log + - btrfs: only commit delayed items at fsync if we are logging a directory + - btrfs: remove no longer needed use of log_writers for the log root tree + - btrfs: don't traverse into the seed devices in show_devname + - btrfs: pass checksum type via BTRFS_IOC_FS_INFO ioctl + - btrfs: open device without device_list_mutex + - btrfs: move the chunk_mutex in btrfs_read_chunk_tree + - btrfs: relocation: review the call sites which can be interrupted by signal + - btrfs: add missing check for nocow and compression inode flags + - btrfs: avoid possible signal interruption of btrfs_drop_snapshot() on + relocation tree + - btrfs: return EROFS for BTRFS_FS_STATE_ERROR cases + - btrfs: sysfs: use NOFS for device creation + - btrfs: don't WARN if we abort a transaction with EROFS + - btrfs: fix race between page release and a fast fsync + - btrfs: don't show full path of bind mounts in subvol= + - btrfs: fix messages after changing compression level by remount + - btrfs: only search for left_info if there is no right_info in + try_merge_free_space + - btrfs: inode: fix NULL pointer dereference if inode doesn't need compression + - btrfs: fix memory leaks after failure to lookup checksums during inode + logging + - btrfs: trim: fix underflow in trim length to prevent access beyond device + boundary + - btrfs: make sure SB_I_VERSION doesn't get unset by remount + - btrfs: fix return value mixup in btrfs_get_extent + - btrfs: check correct variable after allocation in btrfs_backref_iter_alloc + - arm64: dts: qcom: sc7180: Drop the unused non-MSA SID + - arm64: perf: Correct the event index in sysfs + - dt-bindings: iio: io-channel-mux: Fix compatible string in example code + - iio: dac: ad5592r: fix unbalanced mutex unlocks in ad5592r_read_raw() + - iio: imu: st_lsm6dsx: reset hw ts after resume + - xtensa: add missing exclusive access state management + - xtensa: fix xtensa_pmu_setup prototype + - cifs: Fix leak when handling lease break for cached root fid + - powerpc/ptdump: Fix build failure in hashpagetable.c + - powerpc: Allow 4224 bytes of stack expansion for the signal frame + - powerpc: Fix circular dependency between percpu.h and mmu.h + - pinctrl: ingenic: Enhance support for IRQ_TYPE_EDGE_BOTH + - pinctrl: ingenic: Properly detect GPIO direction when configured for IRQ + - media: venus: fix multiple encoder crash + - media: vsp1: dl: Fix NULL pointer dereference on unbind + - net: ethernet: stmmac: Disable hardware multicast filter + - net: stmmac: dwmac1000: provide multicast filter fallback + - irqchip/loongson-liointc: Fix misuse of gc->mask_cache + - irqchip/gic-v4.1: Ensure accessing the correct RD when writing INVALLR + - pidfd: Add missing sock updates for pidfd_getfd() + - net/compat: Add missing sock updates for SCM_RIGHTS + - selftests/seccomp: Set NNP for TSYNC ESRCH flag test + - md/raid5: Fix Force reconstruct-write io stuck in degraded raid5 + - bcache: allocate meta data pages as compound pages + - bcache: fix overflow in offset_to_stripe() + - bcache: avoid nr_stripes overflow in bcache_device_init() + - bcache: fix bio_{start,end}_io_acct with proper device + - bcache: use disk_{start,end}_io_acct() to count I/O for bcache device + - mac80211: fix misplaced while instead of if + - appletalk: Fix atalk_proc_init() return path + - driver core: Avoid binding drivers to dead devices + - MIPS: CPU#0 is not hotpluggable + - MIPS: qi_lb60: Fix routing to audio amplifier + - MIPS: SGI-IP27: always enable NUMA in Kconfig + - ext2: fix missing percpu_counter_inc + - khugepaged: collapse_pte_mapped_thp() flush the right range + - mm/hugetlb: fix calculation of adjust_range_if_pmd_sharing_possible + - khugepaged: collapse_pte_mapped_thp() protect the pmd lock + - khugepaged: retract_page_tables() remember to test exit + - hugetlbfs: remove call to huge_pte_alloc without i_mmap_rwsem + - mm/shuffle: don't move pages between zones and don't read garbage memmaps + - mm: fix kthread_use_mm() vs TLB invalidate + - ocfs2: change slot number type s16 to u16 + - mm/page_counter.c: fix protection usage propagation + - cma: don't quit at first error when activating reserved areas + - mm/memory_hotplug: fix unpaired mem_hotplug_begin/done + - ftrace: Setup correct FTRACE_FL_REGS flags for module + - kprobes: Fix NULL pointer dereference at kprobe_ftrace_handler + - tracing/hwlat: Honor the tracing_cpumask + - tracing: Use trace_sched_process_free() instead of exit() for pid tracing + - watchdog: f71808e_wdt: indicate WDIOF_CARDRESET support in + watchdog_info.options + - watchdog: f71808e_wdt: remove use of wrong watchdog_info option + - watchdog: f71808e_wdt: clear watchdog timeout occurred flag + - ceph: set sec_context xattr on symlink creation + - ceph: handle zero-length feature mask in session messages + - pseries: Fix 64 bit logical memory block panic + - dm ebs: Fix incorrect checking for REQ_OP_FLUSH + - dm: don't call report zones for more than the user requested + - module: Correctly truncate sysfs sections output + - bootconfig: Fix to find the initargs correctly + - perf probe: Fix wrong variable warning when the probe point is not found + - perf probe: Fix memory leakage when the probe point is not found + - perf intel-pt: Fix FUP packet state + - perf intel-pt: Fix duplicate branch after CBR + - gfs2: Fix refcount leak in gfs2_glock_poke + - gfs2: Never call gfs2_block_zero_range with an open transaction + - remoteproc: qcom: q6v5: Update running state before requesting stop + - remoteproc: qcom_q6v5_mss: Validate MBA firmware size before load + - remoteproc: qcom_q6v5_mss: Validate modem blob firmware size before load + - libnvdimm: Validate command family indices + - drm/imx: imx-ldb: Disable both channels for split mode in enc->disable() + - drm/ingenic: Fix incorrect assumption about plane->index + - crypto: algif_aead - Only wake up when ctx->more is zero + - mfd: arizona: Ensure 32k clock is put on driver unbind and error + - octeontx2-af: change (struct qmem)->entry_sz from u8 to u16 + - mtd: rawnand: fsl_upm: Remove unused mtd var + - mtd: rawnand: brcmnand: ECC error handling on EDU transfers + - platform/chrome: cros_ec_ishtp: Fix a double-unlock issue + - drm/amdgpu/debugfs: fix memory leak when pm_runtime_get_sync failed + - RDMA/ipoib: Return void from ipoib_ib_dev_stop() + - RDMA/ipoib: Fix ABBA deadlock with ipoib_reap_ah() + - rtc: cpcap: fix range + - media: staging: rkisp1: remove macro RKISP1_DIR_SINK_SRC + - media: staging: rkisp1: rename macros 'RKISP1_DIR_*' to 'RKISP1_ISP_SD_*' + - media: staging: rkisp1: rsz: set default format if the given format is not + RKISP1_ISP_SD_SRC + - media: rockchip: rga: Introduce color fmt macros and refactor CSC mode logic + - media: rockchip: rga: Only set output CSC mode for RGB input + - IB/uverbs: Set IOVA on IB MR in uverbs layer + - sched/uclamp: Protect uclamp fast path code with static key + - selftests/bpf: Test_progs indicate to shell on non-actions + - bpf: selftests: Restore netns after each test + - selftests/bpf: test_progs use another shell exit on non-actions + - selftests/bpf: test_progs avoid minus shell exit codes + - USB: serial: ftdi_sio: make process-packet buffer unsigned + - USB: serial: ftdi_sio: clean up receive processing + - crypto: af_alg - Fix regression on empty requests + - devres: keep both device name and resource name in pretty name + - RDMA/counter: Only bind user QPs in auto mode + - RDMA/counter: Allow manually bind QPs with different pids to same counter + - mmc: renesas_sdhi_internal_dmac: clean up the code for dma complete + - rtw88: pci: disable aspm for platform inter-op with module parameter + - rtc: pl031: fix set_alarm by adding back call to alarm_irq_enable + - crypto: caam - Remove broken arc4 support + - gpu: ipu-v3: image-convert: Combine rotate/no-rotate irq handlers + - gpu: ipu-v3: image-convert: Wait for all EOFs before completing a tile + - dm rq: don't call blk_mq_queue_stopped() in dm_stop_queue() + - ima: Fail rule parsing when appraise_flag=blacklist is unsupportable + - f2fs: compress: fix to avoid memory leak on cc->cpages + - clk: actions: Fix h_clk for Actions S500 SoC + - selftests/powerpc: ptrace-pkey: Rename variables to make it easier to follow + code + - selftests/powerpc: ptrace-pkey: Update the test to mark an invalid pkey + correctly + - selftests/powerpc: ptrace-pkey: Don't update expected UAMOR value + - iommu/omap: Check for failure of a call to omap_iommu_dump_ctx + - clk: qcom: gcc: fix sm8150 GPU and NPU clocks + - clk: qcom: clk-alpha-pll: remove unused/incorrect PLL_CAL_VAL + - iommu/vt-d: Handle non-page aligned address + - iommu/vt-d: Enforce PASID devTLB field mask + - iommu/vt-d: Warn on out-of-range invalidation address + - iommu/vt-d: Disable multiple GPASID-dev bind + - i2c: rcar: slave: only send STOP event when we have been addressed + - f2fs: compress: fix to update isize when overwriting compressed file + - clk: qcom: gcc-sdm660: Fix up gcc_mss_mnoc_bimc_axi_clk + - clk: clk-atlas6: fix return value check in atlas6_clk_init() + - nvme: fix deadlock in disconnect during scan_work and/or ana_work + - sched/uclamp: Fix a deadlock when enabling uclamp static key + - pwm: bcm-iproc: handle clk_get_rate() return + - perf tools: Fix term parsing for raw syntax + - tools build feature: Use CC and CXX from parent + - i2c: rcar: avoid race when unregistering slave + - nfs: ensure correct writeback errors are returned on close() + - ubi: fastmap: Don't produce the initial next anchor PEB when fastmap is + disabled + - ubi: fastmap: Free fastmap next anchor peb during detach + - ubifs: Fix wrong orphan node deletion in ubifs_jnl_update|rename + - [Config] update config for CLK_HSDK + - clk: hsdk: Fix bad dependency on IOMEM + - clk: bcm2835: Do not use prediv with bcm2711's PLLs + - libnvdimm/security: fix a typo + - libnvdimm/security: ensure sysfs poll thread woke up and fetch updated attr + - openrisc: Fix oops caused when dumping stack + - perf evsel: Don't set sample_regs_intr/sample_regs_user for dummy event + - scsi: lpfc: nvmet: Avoid hang / use-after-free again when destroying + targetport + - nfs: nfs_file_write() should check for writeback errors + - watchdog: initialize device before misc_register + - watchdog: rti-wdt: balance pm runtime enable calls + - md-cluster: Fix potential error pointer dereference in resize_bitmaps() + - kprobes: Fix compiler warning for !CONFIG_KPROBES_ON_FTRACE + - x86/tsr: Fix tsc frequency enumeration bug on Lightning Mountain SoC + - x86/bugs/multihit: Fix mitigation reporting when VMX is not in use + - selftests/bpf: Prevent runqslower from racing on building bpftool + - Input: sentelic - fix error return when fsp_reg_write fails + - perf record: Skip side-band event setup if HAVE_LIBBPF_SUPPORT is not set + - selftests/bpf: Fix silent Makefile output + - vdpa_sim: init iommu lock + - recordmcount: Fix build failure on non arm64 + - vdpa: Fix pointer math bug in vdpasim_get_config() + - drm/vmwgfx: Use correct vmw_legacy_display_unit pointer + - drm/vmwgfx: Fix two list_for_each loop exit tests + - s390/test_unwind: fix possible memleak in test_unwind() + - s390/Kconfig: add missing ZCRYPT dependency to VFIO_AP + - net: qcom/emac: add missed clk_disable_unprepare in error path of + emac_clks_phase1_init + - nfs: Fix getxattr kernel panic and memory overflow + - NFS: Fix flexfiles read failover + - lib/test_lockup.c: fix return value of test_lockup_init() + - fs/minix: set s_maxbytes correctly + - fs/minix: fix block limit check for V1 filesystems + - fs/minix: remove expected error message in block_to_path() + - fs/ufs: avoid potential u32 multiplication overflow + - test_kmod: avoid potential double free in trigger_config_run_type() + - i2c: iproc: fix race between client unreg and isr + - mfd: dln2: Run event handler loop under spinlock + - crypto: algif_aead - fix uninitialized ctx->init + - ALSA: echoaudio: Fix potential Oops in snd_echo_resume() + - perf bench mem: Always memset source before memcpy + - tools build feature: Quote CC and CXX for their arguments + - perf/x86/rapl: Fix missing psys sysfs attributes + - sh: landisk: Add missing initialization of sh_io_port_base + - sh: fault: Fix duplicate printing of "PC:" + - drm/i915/gt: Force the GT reset on shutdown + - drm/panfrost: Use kvfree() to free bo->sgts + - drm/dp_mst: Fix the DDC I2C device registration of an MST port + - drm/dp_mst: Fix timeout handling of MST down messages + - drm/dp_mst: Fix the DDC I2C device unregistration of an MST port + - drm/omap: force runtime PM suspend on system suspend + - drm/tidss: fix modeset init for DPI panels + - drm: Added orientation quirk for ASUS tablet model T103HAF + - drm: fix drm_dp_mst_port refcount leaks in drm_dp_mst_allocate_vcpi + - drm/amdgpu: Fix bug where DPM is not enabled after hibernate and resume + - drm/amd/display: Fix dmesg warning from setting abm level + - drm/amd/display: dchubbub p-state warning during surface planes switch + - Linux 5.8.3 + * update ENA driver for LLQ acceleration mode, new hw support (LP: #1890845) + - ena_netdev: use generic power management + - net: ena: Fix using plain integer as NULL pointer in ena_init_napi_in_range + - net: ena: avoid unnecessary rearming of interrupt vector when busy-polling + - net: ena: add reserved PCI device ID + - net: ena: cosmetic: satisfy gcc warning + - net: ena: cosmetic: change ena_com_stats_admin stats to u64 + - net: ena: add support for traffic mirroring + - net: ena: enable support of rss hash key and function changes + - net: ena: move llq configuration from ena_probe to ena_device_init() + - net: ena: support new LLQ acceleration mode + * DMA config issues on Synquacer ARM64 platform cause SATA configuration + failures on boot (LP: #1892138) + - of/address: check for invalid range.cpu_addr + * [SRU] Fix acpi backlight issue on some thinkpads (LP: #1892010) + - platform/x86: thinkpad_acpi: not loading brightness_init when _BCL invalid + * Fix non-working Goodix touchpad after system sleep (LP: #1891998) + - HID: i2c-hid: Always sleep 60ms after I2C_HID_PWR_ON commands + * Groovy update: v5.8.2 upstream stable release (LP: #1892215) + - tracepoint: Mark __tracepoint_string's __used + - kunit: capture stderr on all make subprocess calls + - io_uring: abstract out task work running + - HID: input: Fix devices that return multiple bytes in battery report + - ARM: dts: stm32: fix uart nodes ordering in stm32mp15-pinctrl + - ARM: dts: stm32: fix uart7_pins_a comments in stm32mp15-pinctrl + - x86/mce/inject: Fix a wrong assignment of i_mce.status + - perf/x86/intel/uncore: Fix oops when counting IMC uncore events on some TGL + - x86, sched: check for counters overflow in frequency invariant accounting + - x86, sched: Bail out of frequency invariance if turbo frequency is unknown + - x86, sched: Bail out of frequency invariance if turbo_freq/base_freq gives 0 + - sched/fair: Fix NOHZ next idle balance + - sched: correct SD_flags returned by tl->sd_flags() + - arm64: dts: rockchip: fix rk3368-lion gmac reset gpio + - arm64: dts: rockchip: fix rk3399-puma vcc5v0-host gpio + - arm64: dts: rockchip: fix rk3399-puma gmac reset gpio + - EDAC: Fix reference count leaks + - crc-t10dif: Fix potential crypto notify dead-lock + - arm64: dts: qcom: msm8916: Replace invalid bias-pull-none property + - memory: tegra: Fix an error handling path in tegra186_emc_probe() + - soc: qcom: rpmh-rsc: Don't use ktime for timeout in write_tcs_reg_sync() + - crypto: ccree - fix resource leak on error path + - ARM: exynos: MCPM: Restore big.LITTLE cpuidle support + - rcu/tree: Repeat the monitor if any free channel is busy + - firmware: arm_scmi: Fix SCMI genpd domain probing + - arm64: dts: sun50i-pinephone: dldo4 must not be >= 1.8V + - arm64: dts: exynos: Fix silent hang after boot on Espresso + - sched/uclamp: Fix initialization of struct uclamp_rq + - crypto: qat - allow xts requests not multiple of block + - clk: scmi: Fix min and max rate when registering clocks with discrete rates + - m68k: mac: Don't send IOP message until channel is idle + - m68k: mac: Fix IOP status/control register writes + - platform/x86: intel-hid: Fix return value check in check_acpi_dev() + - platform/x86: intel-vbtn: Fix return value check in check_acpi_dev() + - ARM: dts: gose: Fix ports node name for adv7180 + - arm64: dts: renesas: Fix SD Card/eMMC interface device node names + - ARM: dts: gose: Fix ports node name for adv7612 + - ARM: at91: pm: add missing put_device() call in at91_pm_sram_init() + - ARM: dts: exynos: Disable frequency scaling for FSYS bus on Odroid XU3 + family + - reset: intel: fix a compile warning about REG_OFFSET redefined + - ARM: dts: at91: sama5d3_xplained: change phy-mode + - ARM: dts: sunxi: bananapi-m2-plus-v1.2: Add regulator supply to all CPU + cores + - ARM: dts: sunxi: bananapi-m2-plus-v1.2: Fix CPU supply voltages + - ARM: dts: stm32: Fix spi4 pins in stm32mp15-pinctrl + - spi: dw-dma: Fix Tx DMA channel working too fast + - spi: lantiq: fix: Rx overflow error in full duplex mode + - crypto: x86/crc32c - fix building with clang ias + - tpm: Require that all digests are present in TCG_PCR_EVENT2 structures + - recordmcount: only record relocation of type R_AARCH64_CALL26 on arm64. + - regulator: fix memory leak on error path of regulator_register() + - io_uring: fix sq array offset calculation + - arm64: dts: meson: misc fixups for w400 dtsi + - arm64: dts: meson: fix mmc0 tuning error on Khadas VIM3 + - soc: qcom: pdr: Reorder the PD state indication ack + - spi: rockchip: Fix error in SPI slave pio read + - ARM: socfpga: PM: add missing put_device() call in + socfpga_setup_ocram_self_refresh() + - iocost: Fix check condition of iocg abs_vdebt + - scripts/selinux/mdp: fix initial SID handling + - irqchip/ti-sci-inta: Fix return value about devm_ioremap_resource() + - seccomp: Fix ioctl number for SECCOMP_IOCTL_NOTIF_ID_VALID + - md: raid0/linear: fix dereference before null check on pointer mddev + - irqchip/loongson-htvec: Fix potential resource leak + - irqchip/loongson-htvec: Check return value of irq_domain_translate_onecell() + - irqchip/loongson-pch-pic: Check return value of + irq_domain_translate_twocell() + - irqchip/loongson-liointc: Fix potential dead lock + - kunit: tool: fix broken default args in unit tests + - kunit: tool: fix improper treatment of file location + - irqchip/irq-bcm7038-l1: Guard uses of cpu_logical_map + - irqchip/gic-v4.1: Use GFP_ATOMIC flag in allocate_vpe_l1_table() + - nvme-tcp: fix controller reset hang during traffic + - nvme-rdma: fix controller reset hang during traffic + - nvme-multipath: fix logic for non-optimized paths + - nvme-multipath: do not fall back to __nvme_find_path() for non-optimized + paths + - irqchip/loongson-pch-pic: Fix the misused irq flow handler + - block: don't do revalidate zones on invalid devices + - drm/tilcdc: fix leak & null ref in panel_connector_get_modes + - soc: qcom: rpmh-rsc: Set suppress_bind_attrs flag + - net: mscc: ocelot: fix encoding destination ports into multicast IPv4 + address + - ARM: exynos: clear L310_AUX_CTRL_FULL_LINE_ZERO in default l2c_aux_val + - Bluetooth: add a mutex lock to avoid UAF in do_enale_set + - loop: be paranoid on exit and prevent new additions / removals + - io_uring: fix req->work corruption + - fs/btrfs: Add cond_resched() for try_release_extent_mapping() stalls + - drm/amdgpu: avoid dereferencing a NULL pointer + - drm/radeon: Fix reference count leaks caused by pm_runtime_get_sync + - crypto: aesni - Fix build with LLVM_IAS=1 + - video: fbdev: savage: fix memory leak on error handling path in probe + - video: fbdev: neofb: fix memory leak in neo_scan_monitor() + - bus: ti-sysc: Add missing quirk flags for usb_host_hs + - md-cluster: fix wild pointer of unlock_all_bitmaps() + - rtw88: 8822ce: add support for device ID 0xc82f + - drm/nouveau/kms/nv50-: Fix disabling dithering + - arm64: dts: hisilicon: hikey: fixes to comply with adi, adv7533 DT binding + - drm/etnaviv: fix ref count leak via pm_runtime_get_sync + - ionic: rearrange reset and bus-master control + - memory: samsung: exynos5422-dmc: Do not ignore return code of regmap_read() + - drm/nouveau: fix reference count leak in nouveau_debugfs_strap_peek + - drm/nouveau: fix multiple instances of reference count leaks + - mmc: sdhci-cadence: do not use hardware tuning for SD mode + - btrfs: fix lockdep splat from btrfs_dump_space_info + - usb: mtu3: clear dual mode of u3port when disable device + - drm: msm: a6xx: fix gpu failure after system resume + - drm/msm: Fix a null pointer access in msm_gem_shrinker_count() + - drm/debugfs: fix plain echo to connector "force" attribute + - drm/radeon: disable AGP by default + - net: phy: mscc: restore the base page in vsc8514/8584_config_init + - irqchip/irq-mtk-sysirq: Replace spinlock with raw_spinlock + - mm/mmap.c: Add cond_resched() for exit_mmap() CPU stalls + - drm/amd/display: Improve DisplayPort monitor interop + - drm/amdgpu/debugfs: fix ref count leak when pm_runtime_get_sync fails + - drm/amdgpu/display bail early in dm_pp_get_static_clocks + - drm/amdgpu/display: properly guard the calls to swSMU functions + - drm/amd/display: allow query ddc data over aux to be read only operation + - drm/amd/powerplay: fix compile error with ARCH=arc + - bpf: Fix fds_example SIGSEGV error + - Bluetooth: hci_qca: Bug fixes for SSR + - brcmfmac: keep SDIO watchdog running when console_interval is non-zero + - brcmfmac: To fix Bss Info flag definition Bug + - brcmfmac: set state of hanger slot to FREE when flushing PSQ + - platform/x86: asus-nb-wmi: add support for ASUS ROG Zephyrus G14 and G15 + - iwlegacy: Check the return value of pcie_capability_read_*() + - gpu: host1x: debug: Fix multiple channels emitting messages simultaneously + - drm/amd/powerplay: suppress compile error around BUG_ON + - ionic: update eid test for overflow + - x86/uaccess: Make __get_user_size() Clang compliant on 32-bit + - mmc: sdhci-pci-o2micro: Bug fix for O2 host controller Seabird1 + - usb: gadget: net2280: fix memory leak on probe error handling paths + - bdc: Fix bug causing crash after multiple disconnects + - usb: bdc: Halt controller on suspend + - dyndbg: fix a BUG_ON in ddebug_describe_flags + - bcache: fix super block seq numbers comparision in register_cache_set() + - btrfs: allow btrfs_truncate_block() to fallback to nocow for data space + reservation + - btrfs: qgroup: free per-trans reserved space when a subvolume gets dropped + - ACPICA: Do not increment operation_region reference counts for field units + - io_uring: fix racy overflow count reporting + - io_uring: fix stalled deferred requests + - crypto: caam - silence .setkey in case of bad key length + - drm/msm: ratelimit crtc event overflow error + - drm/gem: Fix a leak in drm_gem_objects_lookup() + - drm/bridge: ti-sn65dsi86: Clear old error bits before AUX transfers + - drm/bridge: ti-sn65dsi86: Fix off-by-one error in clock choice + - drm/amdgpu: use the unlocked drm_gem_object_put + - agp/intel: Fix a memory leak on module initialisation failure + - mwifiex: Fix firmware filename for sd8977 chipset + - mwifiex: Fix firmware filename for sd8997 chipset + - btmrvl: Fix firmware filename for sd8977 chipset + - btmrvl: Fix firmware filename for sd8997 chipset + - video: fbdev: sm712fb: fix an issue about iounmap for a wrong address + - console: newport_con: fix an issue about leak related system resources + - video: pxafb: Fix the function used to balance a 'dma_alloc_coherent()' call + - Bluetooth: hci_qca: Fix an error pointer dereference + - drm/mm: fix hole size comparison + - Bluetooth: hci_qca: Only remove TX clock vote after TX is completed + - Bluetooth: Allow suspend even when preparation has failed + - ath10k: Acquire tx_lock in tx error paths + - Bluetooth: hci_qca: Bug fix during SSR timeout + - Bluetooth: hci_qca: Increase SoC idle timeout to 200ms + - iio: improve IIO_CONCENTRATION channel type description + - iio: amplifiers: ad8366: Change devm_gpiod_get() to optional and add the + missed check + - scsi: ufs: Fix imprecise load calculation in devfreq window + - drm/etnaviv: Fix error path on failure to enable bus clk + - drm/panfrost: Fix inbalance of devfreq record_busy/idle() + - drm/arm: fix unintentional integer overflow on left shift + - clk: bcm63xx-gate: fix last clock availability + - powerpc/mm: Fix typo in IS_ENABLED() + - powerpc/fixmap: Fix FIX_EARLY_DEBUG_BASE when page size is 256k + - leds: lm355x: avoid enum conversion warning + - ASoC: fsl_easrc: Fix uninitialized scalar variable in + fsl_easrc_set_ctx_format + - Bluetooth: btusb: fix up firmware download sequence + - Bluetooth: btmtksdio: fix up firmware download sequence + - media: cxusb-analog: fix V4L2 dependency + - media: marvell-ccic: Add missed v4l2_async_notifier_cleanup() + - media: omap3isp: Add missed v4l2_ctrl_handler_free() for + preview_init_entities() + - staging: most: avoid null pointer dereference when iface is null + - dpaa2-eth: fix condition for number of buffer acquire retries + - ASoC: SOF: nocodec: add missing .owner field + - ASoC: Intel: cml_rt1011_rt5682: add missing .owner field + - ASoC: Intel: sof_sdw: add missing .owner field + - ASoC: Intel: bxt_rt298: add missing .owner field + - ASoC: Intel: Boards: cml_rt1011_rt5682: use statically define codec config + - net: atlantic: MACSec offload statistics checkpatch fix + - scsi: cumana_2: Fix different dev_id between request_irq() and free_irq() + - scsi: ufs: Disable WriteBooster capability for non-supported UFS devices + - drm/mipi: use dcs write for mipi_dsi_dcs_set_tear_scanline + - cxl: Fix kobject memleak + - lkdtm: Avoid more compiler optimizations for bad writes + - selftests/lkdtm: Reset WARN_ONCE to avoid false negatives + - lkdtm: Make arch-specific tests always available + - net: ethernet: ti: am65-cpsw-nuss: restore vlan configuration while down/up + - tracing: Move pipe reference to trace array instead of current_tracer + - scsi: qla2xxx: Make __qla2x00_alloc_iocbs() initialize 32 bits of + request_t.handle + - drm/amdgpu/debugfs: fix memory leak when amdgpu_virt_enable_access_debugfs + failed + - drm/amdgpu: ensure 0 is returned for success in jpeg_v2_5_wait_for_idle + - drm/radeon: fix array out-of-bounds read and write issues + - staging: vchiq_arm: Add a matching unregister call + - iavf: fix error return code in iavf_init_get_resources() + - iavf: Fix updating statistics + - dma-buf: fix dma-fence-chain out of order test + - RDMA/core: Fix bogus WARN_ON during ib_unregister_device_queued() + - scsi: powertec: Fix different dev_id between request_irq() and free_irq() + - scsi: eesox: Fix different dev_id between request_irq() and free_irq() + - ipvs: allow connection reuse for unconfirmed conntrack + - media: firewire: Using uninitialized values in node_probe() + - media: allegro: Fix some NULL vs IS_ERR() checks in probe + - media: staging: rkisp1: rsz: supported formats are the isp's src formats, + not sink formats + - media: staging: rkisp1: rsz: fix resolution limitation on sink pad + - media: tvp5150: Add missed media_entity_cleanup() + - media: exynos4-is: Add missed check for pinctrl_lookup_state() + - media: cros-ec-cec: do not bail on device_init_wakeup failure + - xfs: preserve rmapbt swapext block reservation from freed blocks + - xfs: don't eat an EIO/ENOSPC writeback error when scrubbing data fork + - xfs: fix reflink quota reservation accounting error + - RDMA/rxe: Skip dgid check in loopback mode + - PCI: Fix pci_cfg_wait queue locking problem + - samples: bpf: Fix bpf programs with kprobe/sys_connect event + - drm/stm: repair runtime power management + - kobject: Avoid premature parent object freeing in kobject_cleanup() + - leds: core: Flush scheduled work for system suspend + - drm: panel: simple: Fix bpc for LG LB070WV8 panel + - phy: cadence: salvo: fix wrong bit definition + - dt-bindings: phy: uniphier: Fix incorrect clocks and clock-names for PXs3 + usb3-hsphy + - phy: exynos5-usbdrd: Calibrating makes sense only for USB2.0 PHY + - mmc: sdhci-of-arasan: Add missed checks for devm_clk_register() + - drm/bridge: sil_sii8620: initialize return of sii8620_readb + - scsi: scsi_debug: Add check for sdebug_max_queue during module init + - bpfilter: Initialize pos variable + - mwifiex: Prevent memory corruption handling keys + - kernfs: do not call fsnotify() with name without a parent + - powerpc/pseries: remove cede offline state for CPUs + - powerpc/rtas: don't online CPUs for partition suspend + - powerpc/vdso: Fix vdso cpu truncation + - Bluetooth: Fix update of connection state in `hci_encrypt_cfm` + - RDMA/qedr: SRQ's bug fixes + - RDMA/qedr: Add EDPM mode type for user-fw compatibility + - RDMA/qedr: Add EDPM max size to alloc ucontext response + - RDMA/rxe: Prevent access to wr->next ptr afrer wr is posted to send queue + - ima: Have the LSM free its audit rule + - ima: Free the entire rule when deleting a list of rules + - ima: Free the entire rule if it fails to parse + - ima: Fail rule parsing when buffer hook functions have an invalid action + - ima: Fail rule parsing when the KEXEC_CMDLINE hook is combined with an + invalid cond + - ima: Fail rule parsing when the KEY_CHECK hook is combined with an invalid + cond + - staging: rtl8192u: fix a dubious looking mask before a shift + - ASoC: meson: fixes the missed kfree() for axg_card_add_tdm_loopback + - PCI/ASPM: Add missing newline in sysfs 'policy' + - go7007: add sanity checking for endpoints + - media: s5p-g2d: Fix a memory leak in an error handling path in 'g2d_probe()' + - phy: renesas: rcar-gen3-usb2: move irq registration to init + - powerpc/mm/radix: Free PUD table when freeing pagetable + - powerpc/book3s64/pkeys: Use PVR check instead of cpu feature + - drm/imx: fix use after free + - drm/imx: tve: fix regulator_disable error path + - gpu: ipu-v3: Restore RGB32, BGR32 + - spi: lantiq-ssc: Fix warning by using WQ_MEM_RECLAIM + - PCI: loongson: Use DECLARE_PCI_FIXUP_EARLY for bridge_class_quirk() + - USB: serial: iuu_phoenix: fix led-activity helpers + - clk: qcom: gcc: Make disp gpll0 branch aon for sc7180/sdm845 + - usb: core: fix quirks_param_set() writing to a const pointer + - thermal: ti-soc-thermal: Fix reversed condition in + ti_thermal_expose_sensor() + - coresight: etmv4: Fix resource selector constant + - coresight: etmv4: Counter values not saved on disable + - coresight: tmc: Fix TMC mode read in tmc_read_unprepare_etb() + - coresight: etm4x: Fix save/restore during cpu idle + - powerpc/perf: Fix missing is_sier_aviable() during build + - mt76: mt7663u: fix memory leak in set key + - mt76: mt7663u: fix potential memory leak in mcu message handler + - mt76: mt7615: fix potential memory leak in mcu message handler + - mt76: mt7915: potential array overflow in mt7915_mcu_tx_rate_report() + - mt76: mt7915: add missing CONFIG_MAC80211_DEBUGFS + - mt76: mt7615: fix possible memory leak in mt7615_mcu_wtbl_sta_add + - phy: armada-38x: fix NETA lockup when repeatedly switching speeds + - s390/bpf: Use brcl for jumping to exit_ip if necessary + - s390/bpf: Tolerate not converging code shrinking + - tools/bpftool: Fix error handing in do_skeleton() + - ASoC: tas2770: Fix reset gpio property name + - qed: Fix ILT and XRCD bitmap memory leaks + - ASoC: hdac_hda: fix deadlock after PCM open error + - powerpc/spufs: Fix the type of ret in spufs_arch_write_note + - PCI: rcar: Fix runtime PM imbalance on error + - MIPS: OCTEON: add missing put_device() call in dwc3_octeon_device_init() + - thermal: int340x: processor_thermal: fix: update Jasper Lake PCI id + - usb: dwc3: meson-g12a: fix shared reset control use + - usb: dwc2: Fix error path in gadget registration + - usb: gadget: f_uac2: fix AC Interface Header Descriptor wTotalLength + - scsi: megaraid_sas: Clear affinity hint + - scsi: mesh: Fix panic after host or bus reset + - scsi: core: Add missing scsi_device_put() in scsi_host_block() + - net: dsa: mv88e6xxx: MV88E6097 does not support jumbo configuration + - bpf: Fix pos computation for bpf_iter seq_ops->start() + - powerpc/watchpoint: Fix 512 byte boundary limit + - powerpc/watchpoint: Fix DAWR exception constraint + - powerpc/watchpoint: Fix DAWR exception for CACHEOP + - macintosh/via-macii: Access autopoll_devs when inside lock + - gpio: regmap: fix type clash + - PCI: cadence: Fix cdns_pcie_{host|ep}_setup() error path + - PCI: cadence: Fix updating Vendor ID and Subsystem Vendor ID register + - RDMA/core: Fix return error value in _ib_modify_qp() to negative + - Smack: fix another vsscanf out of bounds + - Smack: prevent underflow in smk_set_cipso() + - power: supply: check if calc_soc succeeded in pm860x_init_battery + - Bluetooth: btusb: Fix and detect most of the Chinese Bluetooth controllers + - Bluetooth: hci_h5: Set HCI_UART_RESET_ON_INIT to correct flags + - Bluetooth: hci_serdev: Only unregister device if it was registered + - bpf: Fix bpf_ringbuf_output() signature to return long + - Bluetooth: Fix suspend notifier race + - Bluetooth: hci_qca: Stop collecting memdump again for command timeout during + SSR + - net: dsa: rtl8366: Fix VLAN semantics + - net: dsa: rtl8366: Fix VLAN set-up + - xfs: fix inode allocation block res calculation precedence + - xfs: clear XFS_DQ_FREEING if we can't lock the dquot buffer to flush + - selftests/powerpc: Squash spurious errors due to device removal + - powerpc/32s: Fix CONFIG_BOOK3S_601 uses + - powerpc/boot: Fix CONFIG_PPC_MPC52XX references + - selftests/powerpc: Fix CPU affinity for child process + - nvmem: sprd: Fix return value of sprd_efuse_probe() + - RDMA/rtrs-clt: add an additional random 8 seconds before reconnecting + - RDMA/rtrs: remove WQ_MEM_RECLAIM for rtrs_wq + - RDMA/netlink: Remove CAP_NET_RAW check when dump a raw QP + - PCI: Release IVRS table in AMD ACS quirk + - cpufreq: ap806: fix cpufreq driver needs ap cpu clk + - powerpc/pseries/hotplug-cpu: Remove double free in error path + - selftests/powerpc: Fix online CPU selection + - RDMA/hns: Fix error during modify qp RTS2RTS + - RDMA/hns: Fix the unneeded process when getting a general type of CQE error + - ASoC: meson: axg-tdm-interface: fix link fmt setup + - ASoC: meson: axg-tdmin: fix g12a skew + - ASoC: meson: axg-tdm-formatters: fix sclk inversion + - ASoC: soc-core: Fix regression causing sysfs entries to disappear + - net: ll_temac: Use devm_platform_ioremap_resource_byname() + - drm/msm/dpu: don't use INTF_INPUT_CTRL feature on sdm845 + - libbpf: Fix register in PT_REGS MIPS macros + - MIPS: only register FTLBPar exception handler for supported models + - ASoC: core: use less strict tests for dailink capabilities + - ASoC: meson: cards: deal dpcm flag change + - ASoC: fsl_sai: Fix value of FSL_SAI_CR1_RFW_MASK + - s390/qeth: tolerate pre-filled RX buffer + - s390/qeth: don't process empty bridge port events + - ice: Clear and free XLT entries on reset + - ice: Graceful error handling in HW table calloc failure + - netfilter: nft_meta: fix iifgroup matching + - rtw88: fix LDPC field for RA info + - rtw88: fix short GI capability based on current bandwidth + - rtw88: coex: only skip coex triggered by BT info + - qtnfmac: Missing platform_device_unregister() on error in + qtnf_core_mac_alloc() + - wl1251: fix always return 0 error + - tools, build: Propagate build failures from tools/build/Makefile.build + - tools, bpftool: Fix wrong return value in do_dump() + - net/mlx5: DR, Change push vlan action sequence + - net/mlx5: Delete extra dump stack that gives nothing + - net: mvpp2: fix memory leak in mvpp2_rx + - net: ethernet: aquantia: Fix wrong return value + - liquidio: Fix wrong return value in cn23xx_get_pf_num() + - net: sgi: ioc3-eth: Fix the size used in some 'dma_free_coherent()' calls + - net: spider_net: Fix the size used in a 'dma_free_coherent()' call + - fsl/fman: use 32-bit unsigned integer + - fsl/fman: fix dereference null return value + - fsl/fman: fix unreachable code + - fsl/fman: check dereferencing null pointer + - fsl/fman: fix eth hash table allocation + - gpio: don't use same lockdep class for all devm_gpiochip_add_data users + - net: thunderx: use spin_lock_bh in nicvf_set_rx_mode_task() + - net: macb: Properly handle phylink on at91sam9x + - dpaa2-eth: Fix passing zero to 'PTR_ERR' warning + - hv_netvsc: do not use VF device if link is down + - Revert "vxlan: fix tos value before xmit" + - net: thunderx: initialize VF's mailbox mutex before first usage + - media: mtk-mdp: Fix a refcounting bug on error in init + - dlm: Fix kobject memleak + - ocfs2: fix unbalanced locking + - pinctrl-single: fix pcs_parse_pinconf() return value + - mtd: rawnand: brcmnand: Don't default to edu transfer + - svcrdma: Fix page leak in svc_rdma_recv_read_chunk() + - nfsd: avoid a NULL dereference in __cld_pipe_upcall() + - x86/fsgsbase/64: Fix NULL deref in 86_fsgsbase_read_task + - crypto: aesni - add compatibility with IAS + - af_packet: TPACKET_V3: fix fill status rwlock imbalance + - drivers/net/wan/lapbether: Added needed_headroom and a skb->len check + - net: Fix potential memory leak in proto_register() + - net/nfc/rawsock.c: add CAP_NET_RAW check. + - net: phy: fix memory leak in device-create error path + - net: Set fput_needed iff FDPUT_FPUT is set + - net/tls: Fix kmap usage + - vmxnet3: use correct tcp hdr length when packet is encapsulated + - net: refactor bind_bucket fastreuse into helper + - net: initialize fastreuse on inet_inherit_port + - vsock: fix potential null pointer dereference in vsock_poll() + - net: phy: marvell10g: fix null pointer dereference + - r8152: Use MAC address from correct device tree node + - USB: serial: cp210x: re-enable auto-RTS on open + - USB: serial: cp210x: enable usb generic throttle/unthrottle + - usb: cdns3: gadget: always zeroed TRB buffer when enable endpoint + - iommu/vt-d: Skip TE disabling on quirky gfx dedicated iommu + - vdpasim: protect concurrent access to iommu iotlb + - ALSA: hda - fix the micmute led status for Lenovo ThinkCentre AIO + - ALSA: hda - reverse the setting value in the micmute_led_set + - ALSA: usb-audio: Creative USB X-Fi Pro SB1095 volume knob support + - ALSA: usb-audio: fix overeager device match for MacroSilicon MS2109 + - ALSA: usb-audio: work around streaming quirk for MacroSilicon MS2109 + - ALSA: usb-audio: add quirk for Pioneer DDJ-RB + - tpm: Unify the mismatching TPM space buffer sizes + - pstore: Fix linking when crypto API disabled + - crypto: hisilicon - don't sleep of CRYPTO_TFM_REQ_MAY_SLEEP was not + specified + - crypto: qat - fix double free in qat_uclo_create_batch_init_list + - crypto: ccp - Fix use of merged scatterlists + - crypto: cpt - don't sleep of CRYPTO_TFM_REQ_MAY_SLEEP was not specified + - tick/nohz: Narrow down noise while setting current task's tick dependency + - bitfield.h: don't compile-time validate _val in FIELD_FIT + - fs/minix: check return value of sb_getblk() + - fs/minix: don't allow getting deleted inodes + - fs/minix: reject too-large maximum file size + - kvm: x86: replace kvm_spec_ctrl_test_value with runtime test on the host + - 9p: Fix memory leak in v9fs_mount + - driver core: Fix probe_count imbalance in really_probe() + - media: media-request: Fix crash if memory allocation fails + - drm/ttm/nouveau: don't call tt destroy callback on alloc failure. + - io_uring: set ctx sq/cq entry count earlier + - io_uring: use TWA_SIGNAL for task_work uncondtionally + - io_uring: fail poll arm on queue proc failure + - io_uring: sanitize double poll handling + - NFS: Don't move layouts to plh_return_segs list while in use + - NFS: Don't return layout segments that are in use + - cpufreq: Fix locking issues with governors + - cpufreq: dt: fix oops on armada37xx + - MIPS: VZ: Only include loongson_regs.h for CPU_LOONGSON64 + - include/asm-generic/vmlinux.lds.h: align ro_after_init + - PM / devfreq: rk3399_dmc: Fix kernel oops when rockchip,pmu is absent + - PM / devfreq: Fix indentaion of devfreq_summary debugfs node + - spi: spidev: Align buffers for DMA + - mtd: rawnand: qcom: avoid write to unavailable register + - mtd: spi-nor: intel-spi: Simulate WRDI command + - erofs: fix extended inode could cross boundary + - Revert "mm/vmstat.c: do not show lowmem reserve protection information of + empty zone" + - Revert "parisc: Improve interrupt handling in arch_spin_lock_flags()" + - Revert "parisc: Drop LDCW barrier in CAS code when running UP" + - Revert "parisc: Use ldcw instruction for SMP spinlock release barrier" + - Revert "parisc: Revert "Release spinlocks using ordered store"" + - parisc: Do not use an ordered store in pa_tlb_lock() + - parisc: Implement __smp_store_release and __smp_load_acquire barriers + - parisc: mask out enable and reserved bits from sba imask + - ARM: dts: exynos: Extend all Exynos5800 A15's OPPs with max voltage data + - ARM: 8992/1: Fix unwind_frame for clang-built kernels + - firmware: qcom_scm: Fix legacy convention SCM accessors + - irqdomain/treewide: Free firmware node after domain removal + - firmware_loader: EFI firmware loader must handle pre-allocated buffer + - xen/balloon: fix accounting in alloc_xenballooned_pages error path + - xen/balloon: make the balloon wait interruptible + - xen/gntdev: Fix dmabuf import with non-zero sgt offset + - drm/xen-front: Fix misused IS_ERR_OR_NULL checks + - s390/dasd: fix inability to use DASD with DIAG driver + - s390/numa: set node distance to LOCAL_DISTANCE + - s390/gmap: improve THP splitting + - io_uring: Fix NULL pointer dereference in loop_rw_iter() + - io_uring: hold 'ctx' reference around task_work queue + execute + - io_uring: add missing REQ_F_COMP_LOCKED for nested requests + - io_uring: enable lookup of links holding inflight files + - task_work: only grab task signal lock when needed + - Linux 5.8.2 + * Regression on NFS: unable to handle page fault in mempool_alloc_slab + (LP: #1886277) // Groovy update: v5.8.2 upstream stable release + (LP: #1892215) + - SUNRPC: Fix ("SUNRPC: Add "@len" parameter to gss_unwrap()") + * Groovy update: v5.8.2 upstream stable release (LP: #1892215) // + CVE-2019-19770 which shows this issue is not a core debugfs issue, but + - blktrace: fix debugfs use after free + * Fix missing HDMI Audio on another HP Desktop (LP: #1891617) + - ALSA: hda/hdmi: Use force connectivity quirk on another HP desktop + * alsa/sof: support 1 and 3 dmics (LP: #1891585) + - SAUCE: ASoC: SOF: intel: hda: support also devices with 1 and 3 dmics + * fix ftrace pid filtering on linux 5.8 (LP: #1891528) + - ftrace: Fix ftrace_trace_task return value + * Fix false-negative return value for rtnetlink.sh in kselftests/net + (LP: #1890136) + - selftests: rtnetlink: correct the final return value for the test + - selftests: rtnetlink: make kci_test_encap() return sub-test result + * Disable Lenovo P620 Rear line-in volume control (LP: #1891281) + - ALSA: usb-audio: Disable Lenovo P620 Rear line-in volume control + * tcp_fastopen_backup_key.sh from net in ubuntu_kernel_selftests failed on + Eoan LPAR (LP: #1869134) + - tcp: correct read of TFO keys on big endian systems + * Groovy update: v5.8.1 upstream stable release (LP: #1891647) + - scsi: ufs: Fix and simplify setup_xfer_req variant operation + - USB: serial: qcserial: add EM7305 QDL product ID + - USB: iowarrior: fix up report size handling for some devices + - usb: xhci: define IDs for various ASMedia host controllers + - usb: xhci: Fix ASMedia ASM1142 DMA addressing + - Revert "ALSA: hda: call runtime_allow() for all hda controllers" + - ALSA: hda/realtek: Add alc269/alc662 pin-tables for Loongson-3 laptops + - ALSA: hda/ca0132 - Add new quirk ID for Recon3D. + - ALSA: hda/ca0132 - Fix ZxR Headphone gain control get value. + - ALSA: hda/ca0132 - Fix AE-5 microphone selection commands. + - ALSA: seq: oss: Serialize ioctls + - staging: android: ashmem: Fix lockdep warning for write operation + - staging: rtl8712: handle firmware load failure + - Staging: rtl8188eu: rtw_mlme: Fix uninitialized variable authmode + - Bluetooth: Fix slab-out-of-bounds read in hci_extended_inquiry_result_evt() + - Bluetooth: Prevent out-of-bounds read in hci_inquiry_result_evt() + - Bluetooth: Prevent out-of-bounds read in hci_inquiry_result_with_rssi_evt() + - omapfb: dss: Fix max fclk divider for omap36xx + - binder: Prevent context manager from incrementing ref 0 + - Smack: fix use-after-free in smk_write_relabel_self() + - scripts: add dummy report mode to add_namespace.cocci + - lkdtm/heap: Avoid edge and middle of slabs + - vgacon: Fix for missing check in scrollback handling + - mtd: properly check all write ioctls for permissions + - leds: wm831x-status: fix use-after-free on unbind + - leds: lm36274: fix use-after-free on unbind + - leds: da903x: fix use-after-free on unbind + - leds: lm3533: fix use-after-free on unbind + - leds: 88pm860x: fix use-after-free on unbind + - gpio: max77620: Fix missing release of interrupt + - xattr: break delegations in {set,remove}xattr + - Revert "powerpc/kasan: Fix shadow pages allocation failure" + - powerpc/kasan: Fix shadow pages allocation failure + - PCI: tegra: Revert tegra124 raw_violation_fixup + - ima: move APPRAISE_BOOTPARAM dependency on ARCH_POLICY to runtime + - random32: move the pseudo-random 32-bit definitions to prandom.h + - random: random.h should include archrandom.h, not the other way around + - arm64: kaslr: Use standard early random function + - Linux 5.8.1 + - [Config] Update annotations for changes in v5.8.1 + * bcache by-uuid links disappear after mounting bcache0 (LP: #1861941) + - SAUCE: Revert "UBUNTU: SAUCE: (no-up) bcache: decouple emitting a cached_dev + CHANGE uevent" + * Miscellaneous upstream changes + - Revert "ALSA: hda - Disable audio component for legacy Nvidia HDMI codecs" + + -- Paolo Pisati Wed, 26 Aug 2020 09:56:48 +0200 + +linux-azure (5.8.0-1002.2) groovy; urgency=medium + + * Packaging resync (LP: #1786013) + - [Packaging] update helper scripts + - [Packaging] update update.conf + + [ Ubuntu: 5.8.0-16.17 ] + + * groovy/linux: 5.8.0-16.17 -proposed tracker (LP: #1891233) + * Miscellaneous Ubuntu changes + - hio -- Update to use bio_{start,end}_io_acct with 5.8+ + - Enable hio driver + - [Packaging] Temporarily disable building doc package contents + + [ Ubuntu: 5.8.0-15.16 ] + + * groovy/linux: 5.8.0-15.16 -proposed tracker (LP: #1891177) + * Miscellaneous Ubuntu changes + - SAUCE: Documentation: import error c_funcptr_sig_re, c_sig_re (sphinx- + doc/sphinx@0f49e30c) + + [ Ubuntu: 5.8.0-14.15 ] + + * groovy/linux: 5.8.0-14.15 -proposed tracker (LP: #1891085) + * Packaging resync (LP: #1786013) + - [Packaging] update helper scripts + * msg_zerocopy.sh in net from ubuntu_kernel_selftests failed (LP: #1812620) + - selftests/net: relax cpu affinity requirement in msg_zerocopy test + * Fix missing HDMI/DP Audio on an HP Desktop (LP: #1890441) + - ALSA: hda/hdmi: Add quirk to force connectivity + * Add initial audio support for Lenovo ThinkStation P620 (LP: #1890317) + - ALSA: usb-audio: Add support for Lenovo ThinkStation P620 + * Fix IOMMU error on AMD Radeon Pro W5700 (LP: #1890306) + - PCI: Mark AMD Navi10 GPU rev 0x00 ATS as broken + * Enlarge hisi_sec2 capability (LP: #1890222) + - crypto: hisilicon - update SEC driver module parameter + * Miscellaneous Ubuntu changes + - [Config] Re-enable signing for ppc64el + + [ Ubuntu: 5.8.0-13.14 ] + + * Miscellaneous Ubuntu changes + - [Config] Remove i386 configs + - SAUCE: apply a workaround to re-enable CONFIG_CRYPTO_AEGIS128_SIMD + - SAUCE: export __get_vm_area_caller() and map_kernel_range() + - [Config] drop CONFIG_BINFMT_AOUT enforcement + * Miscellaneous upstream changes + - Revert "UBUNTU: [Config] disable CONFIG_CRYPTO_AEGIS128_SIMD" + * Rebase to v5.8 + + -- Paolo Pisati Tue, 25 Aug 2020 16:47:29 +0200 + +linux-azure (5.8.0-1001.1) groovy; urgency=medium + + * Miscellaneous Ubuntu changes + - [packaging] debhelper-compat (= 10) + - [Config] reset to groovy/generic config + - [Config] # X86_UV is not set + - [Config] # XEN is not set + - [Config] # ACPI_DEBUGGER is not set + - [Config] # ACPI_REV_OVERRIDE_POSSIBLE is not set + - [Config] # ACPI_AC is not set + - [Config] # ACPI_BATTERY is not set + - [Config] # ACPI_TAD is not set + - [Config] # ACPI_DOCK is not set + - [Config] # ACPI_THERMAL is not set + - [Config] # ACPI_TABLE_UPGRADE is not set + - [Config] # ACPI_DEBUG is not set + - [Config] # ACPI_PCI_SLOT is not set + - [Config] # ACPI_HOTPLUG_MEMORY is not set + - [Config] # ACPI_SBS is not set + - [Config] # ACPI_BGRT is not set + - [Config] # ACPI_APEI_GHES is not set + - [Config] # ACPI_APEI_EINJ is not set + - [Config] # ACPI_EXTLOG is not set + - [Config] # ACPI_CONFIGFS is not set + - [Config] # X86_AMD_FREQ_SENSITIVITY is not set + - [Config] # X86_P4_CLOCKMOD is not set + - [Config] # DMI_SYSFS is not set + - [Config] # FW_CFG_SYSFS is not set + - [Config] # IP_MROUTE_MULTIPLE_TABLES is not set + - [Config] # NETWORK_PHY_TIMESTAMPING is not set + - [Config] # TIPC_MEDIA_IB is not set + - [Config] # MKISS is not set + - [Config] # 6PACK is not set + - [Config] # BPQETHER is not set + - [Config] # BAYCOM_SER_FDX is not set + - [Config] # BAYCOM_SER_HDX is not set + - [Config] # BAYCOM_PAR is not set + - [Config] # YAM is not set + - [Config] # CAN_CC770 is not set + - [Config] # CAN_IFI_CANFD is not set + - [Config] # CAN_M_CAN is not set + - [Config] # CAN_SOFTING is not set + - [Config] # CAN_MCP251X is not set + - [Config] # CAN_8DEV_USB is not set + - [Config] # CAN_EMS_USB is not set + - [Config] # CAN_ESD_USB2 is not set + - [Config] # CAN_GS_USB is not set + - [Config] # CAN_KVASER_USB is not set + - [Config] # CAN_MCBA_USB is not set + - [Config] # CAN_PEAK_USB is not set + - [Config] # CAN_UCAN is not set + - [Config] # BT is not set + - [Config] # WIMAX is not set + - [Config] # NFC_TRF7970A is not set + - [Config] # NFC_SIM is not set + - [Config] # NFC_PORT100 is not set + - [Config] # NFC_FDP is not set + - [Config] # NFC_PN544_I2C is not set + - [Config] # NFC_PN533_USB is not set + - [Config] # NFC_PN533_I2C is not set + - [Config] # NFC_MICROREAD_I2C is not set + - [Config] # NFC_MRVL_USB is not set + - [Config] # NFC_MRVL_UART is not set + - [Config] # NFC_ST21NFCA_I2C is not set + - [Config] # NFC_ST_NCI_I2C is not set + - [Config] # NFC_ST_NCI_SPI is not set + - [Config] # NFC_NXP_NCI is not set + - [Config] # NFC_S3FWRN5_I2C is not set + - [Config] # NFC_ST95HF is not set + - [Config] # VMD is not set + - [Config] # PCMCIA is not set + - [Config] # RAPIDIO_TSI57X is not set + - [Config] # RAPIDIO_CPS_XX is not set + - [Config] # RAPIDIO_TSI568 is not set + - [Config] # RAPIDIO_CPS_GEN2 is not set + - [Config] # RAPIDIO_RXS_GEN3 is not set + - [Config] # MTD is not set + - [Config] # BLK_DEV_NULL_BLK is not set + - [Config] # BLK_DEV_FD is not set + - [Config] # PARIDE is not set + - [Config] # BLK_DEV_PCIESSD_MTIP32XX is not set + - [Config] # BLK_DEV_UMEM is not set + - [Config] # BLK_DEV_SKD is not set + - [Config] # BLK_DEV_SX8 is not set + - [Config] # ATA_OVER_ETH is not set + - [Config] # BLK_DEV_RSXX is not set + - [Config] # NVME_TARGET_LOOP is not set + - [Config] # NVME_TARGET_RDMA is not set + - [Config] # AD525X_DPOT is not set + - [Config] # HP_ILO is not set + - [Config] # C2PORT is not set + - [Config] # EEPROM_AT25 is not set + - [Config] # EEPROM_LEGACY is not set + - [Config] # EEPROM_MAX6875 is not set + - [Config] # EEPROM_93XX46 is not set + - [Config] # EEPROM_IDT_89HPESX is not set + - [Config] # TI_ST is not set + - [Config] # SENSORS_LIS3_I2C is not set + - [Config] # INTEL_MEI_TXE is not set + - [Config] # VMWARE_VMCI is not set + - [Config] # INTEL_MIC_BUS is not set + - [Config] # SCIF_BUS is not set + - [Config] # VOP_BUS is not set + - [Config] # ECHO is not set + - [Config] # MISC_RTSX_USB is not set + - [Config] # SCSI_CXGB3_ISCSI is not set + - [Config] # SCSI_CXGB4_ISCSI is not set + - [Config] # SCSI_BNX2_ISCSI is not set + - [Config] # BLK_DEV_3W_XXXX_RAID is not set + - [Config] # SCSI_UFSHCD is not set + - [Config] # VMWARE_PVSCSI is not set + - [Config] # LIBFC is not set + - [Config] # SCSI_ISCI is not set + - [Config] # SATA_ZPODD is not set + - [Config] # SATA_INIC162X is not set + - [Config] # SATA_ACARD_AHCI is not set + - [Config] # SATA_SIL24 is not set + - [Config] # SATA_QSTOR is not set + - [Config] # SATA_SX4 is not set + - [Config] # SATA_MV is not set + - [Config] # SATA_NV is not set + - [Config] # SATA_PROMISE is not set + - [Config] # SATA_SIL is not set + - [Config] # SATA_SIS is not set + - [Config] # SATA_SVW is not set + - [Config] # SATA_ULI is not set + - [Config] # SATA_VIA is not set + - [Config] # SATA_VITESSE is not set + - [Config] # LOOPBACK_TARGET is not set + - [Config] # ISCSI_TARGET_CXGB4 is not set + - [Config] # FIREWIRE is not set + - [Config] # MACINTOSH_DRIVERS is not set + - [Config] # NET_FC is not set + - [Config] # NET_TEAM is not set + - [Config] # CAIF_TTY is not set + - [Config] # CAIF_SPI_SLAVE is not set + - [Config] # CAIF_HSI is not set + - [Config] # NET_DSA_MV88E6060 is not set + - [Config] # NET_DSA_MV88E6XXX is not set + - [Config] # NET_DSA_QCA8K is not set + - [Config] # NET_VENDOR_3COM is not set + - [Config] # NET_VENDOR_ADAPTEC is not set + - [Config] # NET_VENDOR_ALTEON is not set + - [Config] # ALTERA_TSE is not set + - [Config] # NET_VENDOR_AMAZON is not set + - [Config] # NET_VENDOR_AMD is not set + - [Config] # NET_VENDOR_ARC is not set + - [Config] # NET_VENDOR_ATHEROS is not set + - [Config] # NET_VENDOR_AURORA is not set + - [Config] # NET_VENDOR_BROCADE is not set + - [Config] # MACB is not set + - [Config] # NET_VENDOR_CAVIUM is not set + - [Config] # NET_VENDOR_DEC is not set + - [Config] # NET_VENDOR_EZCHIP is not set + - [Config] # NET_VENDOR_MICREL is not set + - [Config] # ENC28J60 is not set + - [Config] # ENCX24J600 is not set + - [Config] # NET_VENDOR_MYRI is not set + - [Config] # NET_VENDOR_NATSEMI is not set + - [Config] # NET_VENDOR_NVIDIA is not set + - [Config] # NET_VENDOR_OKI is not set + - [Config] # NET_VENDOR_QLOGIC is not set + - [Config] # NET_VENDOR_QUALCOMM is not set + - [Config] # NET_VENDOR_RDC is not set + - [Config] # NET_VENDOR_RENESAS is not set + - [Config] # NET_VENDOR_ROCKER is not set + - [Config] # NET_VENDOR_SAMSUNG is not set + - [Config] # NET_VENDOR_SEEQ is not set + - [Config] # NET_VENDOR_SILAN is not set + - [Config] # NET_VENDOR_SIS is not set + - [Config] # NET_VENDOR_SMSC is not set + - [Config] # NET_VENDOR_SOCIONEXT is not set + - [Config] # NET_VENDOR_STMICRO is not set + - [Config] # NET_VENDOR_SUN is not set + - [Config] # NET_VENDOR_TEHUTI is not set + - [Config] # NET_VENDOR_TI is not set + - [Config] # NET_VENDOR_VIA is not set + - [Config] # NET_VENDOR_WIZNET is not set + - [Config] # MDIO_BITBANG is not set + - [Config] # MDIO_THUNDER is not set + - [Config] # LED_TRIGGER_PHY is not set + - [Config] # AMD_PHY is not set + - [Config] # AQUANTIA_PHY is not set + - [Config] # AT803X_PHY is not set + - [Config] # BCM87XX_PHY is not set + - [Config] # BROADCOM_PHY is not set + - [Config] # CICADA_PHY is not set + - [Config] # DAVICOM_PHY is not set + - [Config] # DP83848_PHY is not set + - [Config] # DP83867_PHY is not set + - [Config] # ICPLUS_PHY is not set + - [Config] # INTEL_XWAY_PHY is not set + - [Config] # LSI_ET1011C_PHY is not set + - [Config] # LXT_PHY is not set + - [Config] # MARVELL_PHY is not set + - [Config] # MICREL_PHY is not set + - [Config] # MICROSEMI_PHY is not set + - [Config] # NATIONAL_PHY is not set + - [Config] # QSEMI_PHY is not set + - [Config] # SMSC_PHY is not set + - [Config] # STE10XP is not set + - [Config] # TERANETICS_PHY is not set + - [Config] # XILINX_GMII2RGMII is not set + - [Config] # MICREL_KS8995MA is not set + - [Config] # PLIP is not set + - [Config] # WLAN is not set + - [Config] # LANMEDIA is not set + - [Config] # IEEE802154_FAKELB is not set + - [Config] # IEEE802154_AT86RF230 is not set + - [Config] # IEEE802154_MRF24J40 is not set + - [Config] # IEEE802154_CC2520 is not set + - [Config] # IEEE802154_ATUSB is not set + - [Config] # IEEE802154_ADF7242 is not set + - [Config] # VMXNET3 is not set + - [Config] # FUJITSU_ES is not set + - [Config] # ISDN is not set + - [Config] # NVM is not set + - [Config] # INPUT_LEDS is not set + - [Config] # KEYBOARD_ADP5588 is not set + - [Config] # KEYBOARD_ADP5589 is not set + - [Config] # KEYBOARD_QT1070 is not set + - [Config] # KEYBOARD_QT2160 is not set + - [Config] # KEYBOARD_LKKBD is not set + - [Config] # KEYBOARD_GPIO is not set + - [Config] # KEYBOARD_TCA6416 is not set + - [Config] # KEYBOARD_TCA8418 is not set + - [Config] # KEYBOARD_MATRIX is not set + - [Config] # KEYBOARD_LM8323 is not set + - [Config] # KEYBOARD_LM8333 is not set + - [Config] # KEYBOARD_MAX7359 is not set + - [Config] # KEYBOARD_MCS is not set + - [Config] # KEYBOARD_MPR121 is not set + - [Config] # KEYBOARD_NEWTON is not set + - [Config] # KEYBOARD_OPENCORES is not set + - [Config] # KEYBOARD_SAMSUNG is not set + - [Config] # KEYBOARD_STOWAWAY is not set + - [Config] # KEYBOARD_SUNKBD is not set + - [Config] # KEYBOARD_TM2_TOUCHKEY is not set + - [Config] # KEYBOARD_XTKBD is not set + - [Config] # INPUT_MOUSE is not set + - [Config] # INPUT_JOYSTICK is not set + - [Config] # TABLET_USB_ACECAD is not set + - [Config] # TABLET_USB_AIPTEK is not set + - [Config] # TABLET_USB_GTCO is not set + - [Config] # TABLET_USB_HANWANG is not set + - [Config] # TABLET_USB_KBTAB is not set + - [Config] # TABLET_USB_PEGASUS is not set + - [Config] # TABLET_SERIAL_WACOM4 is not set + - [Config] # INPUT_TOUCHSCREEN is not set + - [Config] # INPUT_AD714X is not set + - [Config] # INPUT_BMA150 is not set + - [Config] # INPUT_E3X0_BUTTON is not set + - [Config] # INPUT_PCSPKR is not set + - [Config] # INPUT_MC13783_PWRBUTTON is not set + - [Config] # INPUT_MMA8450 is not set + - [Config] # INPUT_APANEL is not set + - [Config] # INPUT_GPIO_BEEPER is not set + - [Config] # INPUT_GPIO_DECODER is not set + - [Config] # INPUT_ATLAS_BTNS is not set + - [Config] # INPUT_ATI_REMOTE2 is not set + - [Config] # INPUT_KEYSPAN_REMOTE is not set + - [Config] # INPUT_KXTJ9 is not set + - [Config] # INPUT_POWERMATE is not set + - [Config] # INPUT_YEALINK is not set + - [Config] # INPUT_CM109 is not set + - [Config] # INPUT_REGULATOR_HAPTIC is not set + - [Config] # INPUT_RETU_PWRBUTTON is not set + - [Config] # INPUT_AXP20X_PEK is not set + - [Config] # INPUT_PCF50633_PMU is not set + - [Config] # INPUT_PCF8574 is not set + - [Config] # INPUT_GPIO_ROTARY_ENCODER is not set + - [Config] # INPUT_DA9052_ONKEY is not set + - [Config] # INPUT_DA9063_ONKEY is not set + - [Config] # INPUT_WM831X_ON is not set + - [Config] # INPUT_PCAP is not set + - [Config] # INPUT_ADXL34X is not set + - [Config] # INPUT_IMS_PCU is not set + - [Config] # INPUT_CMA3000 is not set + - [Config] # INPUT_IDEAPAD_SLIDEBAR is not set + - [Config] # INPUT_DRV260X_HAPTICS is not set + - [Config] # INPUT_DRV2665_HAPTICS is not set + - [Config] # INPUT_DRV2667_HAPTICS is not set + - [Config] # GAMEPORT is not set + - [Config] # SERIAL_DEV_BUS is not set + - [Config] # MWAVE is not set + - [Config] # TCG_TIS_SPI is not set + - [Config] # TCG_TIS_I2C_ATMEL is not set + - [Config] # TCG_TIS_I2C_INFINEON is not set + - [Config] # TCG_TIS_I2C_NUVOTON is not set + - [Config] # TCG_NSC is not set + - [Config] # TCG_ATMEL is not set + - [Config] # TCG_INFINEON is not set + - [Config] # TCG_VTPM_PROXY is not set + - [Config] # TCG_TIS_ST33ZP24_I2C is not set + - [Config] # TCG_TIS_ST33ZP24_SPI is not set + - [Config] # XILLYBUS is not set + - [Config] # I2C_MUX_GPIO is not set + - [Config] # I2C_MUX_PCA9541 is not set + - [Config] # I2C_MUX_PCA954x is not set + - [Config] # I2C_MUX_REG is not set + - [Config] # I2C_MUX_MLXCPLD is not set + - [Config] # I2C_AMD_MP2 is not set + - [Config] # I2C_PIIX4 is not set + - [Config] # I2C_DIOLAN_U2C is not set + - [Config] # I2C_ROBOTFUZZ_OSIF is not set + - [Config] # I2C_TINY_USB is not set + - [Config] # SPMI is not set + - [Config] # HSI is not set + - [Config] # PPS_CLIENT_LDISC is not set + - [Config] # PPS_CLIENT_PARPORT is not set + - [Config] # PPS_CLIENT_GPIO is not set + - [Config] # PINCTRL_AMD is not set + - [Config] # PINCTRL_BROXTON is not set + - [Config] # PINCTRL_GEMINILAKE is not set + - [Config] # PINCTRL_SUNRISEPOINT is not set + - [Config] # PDA_POWER is not set + - [Config] # WM831X_BACKUP is not set + - [Config] # WM831X_POWER is not set + - [Config] # TEST_POWER is not set + - [Config] # BATTERY_DS2780 is not set + - [Config] # BATTERY_DS2781 is not set + - [Config] # BATTERY_DS2782 is not set + - [Config] # BATTERY_SBS is not set + - [Config] # CHARGER_SBS is not set + - [Config] # BATTERY_BQ27XXX is not set + - [Config] # BATTERY_DA9052 is not set + - [Config] # BATTERY_MAX17040 is not set + - [Config] # BATTERY_MAX17042 is not set + - [Config] # CHARGER_PCF50633 is not set + - [Config] # CHARGER_MAX8903 is not set + - [Config] # CHARGER_LP8727 is not set + - [Config] # CHARGER_GPIO is not set + - [Config] # CHARGER_MANAGER is not set + - [Config] # CHARGER_MAX14577 is not set + - [Config] # CHARGER_MAX77693 is not set + - [Config] # CHARGER_BQ2415X is not set + - [Config] # CHARGER_BQ24257 is not set + - [Config] # CHARGER_BQ24735 is not set + - [Config] # CHARGER_BQ25890 is not set + - [Config] # CHARGER_SMB347 is not set + - [Config] # BATTERY_GAUGE_LTC2941 is not set + - [Config] # BATTERY_RT5033 is not set + - [Config] # CHARGER_RT9455 is not set + - [Config] # PMBUS is not set + - [Config] # INT340X_THERMAL is not set + - [Config] # HP_WATCHDOG is not set + - [Config] # USBPCWATCHDOG is not set + - [Config] # MFD_DA9062 is not set + - [Config] # MFD_DA9150 is not set + - [Config] # MFD_DLN2 is not set + - [Config] # MFD_KEMPLD is not set + - [Config] # MFD_88PM800 is not set + - [Config] # MFD_MT6397 is not set + - [Config] # MFD_VIPERBOARD is not set + - [Config] # MFD_SI476X_CORE is not set + - [Config] # ABX500_CORE is not set + - [Config] # MFD_LM3533 is not set + - [Config] # REGULATOR_VIRTUAL_CONSUMER is not set + - [Config] # REGULATOR_USERSPACE_CONSUMER is not set + - [Config] # REGULATOR_ACT8865 is not set + - [Config] # REGULATOR_AD5398 is not set + - [Config] # REGULATOR_AXP20X is not set + - [Config] # REGULATOR_BCM590XX is not set + - [Config] # REGULATOR_DA9052 is not set + - [Config] # REGULATOR_DA9210 is not set + - [Config] # REGULATOR_DA9211 is not set + - [Config] # REGULATOR_FAN53555 is not set + - [Config] # REGULATOR_GPIO is not set + - [Config] # REGULATOR_ISL9305 is not set + - [Config] # REGULATOR_ISL6271A is not set + - [Config] # REGULATOR_LP3971 is not set + - [Config] # REGULATOR_LP3972 is not set + - [Config] # REGULATOR_LP872X is not set + - [Config] # REGULATOR_LP8755 is not set + - [Config] # REGULATOR_LTC3589 is not set + - [Config] # REGULATOR_LTC3676 is not set + - [Config] # REGULATOR_MAX14577 is not set + - [Config] # REGULATOR_MAX1586 is not set + - [Config] # REGULATOR_MAX8649 is not set + - [Config] # REGULATOR_MAX8660 is not set + - [Config] # REGULATOR_MAX8907 is not set + - [Config] # REGULATOR_MAX8952 is not set + - [Config] # REGULATOR_MAX77693 is not set + - [Config] # REGULATOR_MC13783 is not set + - [Config] # REGULATOR_MC13892 is not set + - [Config] # REGULATOR_MT6311 is not set + - [Config] # REGULATOR_PCAP is not set + - [Config] # REGULATOR_PCF50633 is not set + - [Config] # REGULATOR_PFUZE100 is not set + - [Config] # REGULATOR_PV88060 is not set + - [Config] # REGULATOR_PV88080 is not set + - [Config] # REGULATOR_PV88090 is not set + - [Config] # REGULATOR_RT5033 is not set + - [Config] # REGULATOR_SKY81452 is not set + - [Config] # REGULATOR_TPS51632 is not set + - [Config] # REGULATOR_TPS6105X is not set + - [Config] # REGULATOR_TPS62360 is not set + - [Config] # REGULATOR_TPS65023 is not set + - [Config] # REGULATOR_TPS6507X is not set + - [Config] # REGULATOR_TPS65086 is not set + - [Config] # REGULATOR_TPS6524X is not set + - [Config] # REGULATOR_TPS65912 is not set + - [Config] # REGULATOR_WM831X is not set + - [Config] # REGULATOR_WM8994 is not set + - [Config] # RC_ATI_REMOTE is not set + - [Config] # IR_IMON is not set + - [Config] # IR_IMON_RAW is not set + - [Config] # IR_MCEUSB is not set + - [Config] # IR_REDRAT3 is not set + - [Config] # IR_STREAMZAP is not set + - [Config] # IR_IGORPLUGUSB is not set + - [Config] # IR_IGUANA is not set + - [Config] # IR_TTUSBIR is not set + - [Config] # RC_XBOX_DVD is not set + - [Config] # MEDIA_CAMERA_SUPPORT is not set + - [Config] # MEDIA_ANALOG_TV_SUPPORT is not set + - [Config] # MEDIA_DIGITAL_TV_SUPPORT is not set + - [Config] # MEDIA_RADIO_SUPPORT is not set + - [Config] # MEDIA_SDR_SUPPORT is not set + - [Config] # MEDIA_USB_SUPPORT is not set + - [Config] # MEDIA_PCI_SUPPORT is not set + - [Config] # DRM_I2C_CH7006 is not set + - [Config] # DRM_I2C_SIL164 is not set + - [Config] # DRM_I2C_NXP_TDA998X is not set + - [Config] # HSA_AMD is not set + - [Config] # DRM_NOUVEAU is not set + - [Config] # DRM_I915_GVT_KVMGT is not set + - [Config] # DRM_VGEM is not set + - [Config] # DRM_VMWGFX is not set + - [Config] # DRM_UDL is not set + - [Config] # DRM_MGAG200 is not set + - [Config] # DRM_CIRRUS_QEMU is not set + - [Config] # DRM_BOCHS is not set + - [Config] # DRM_ANALOGIX_ANX78XX is not set + - [Config] # DRM_GM12U320 is not set + - [Config] # FB_CIRRUS is not set + - [Config] # FB_PM2 is not set + - [Config] # FB_CYBER2000 is not set + - [Config] # FB_ARC is not set + - [Config] # FB_ASILIANT is not set + - [Config] # FB_IMSTT is not set + - [Config] # FB_VGA16 is not set + - [Config] # FB_UVESA is not set + - [Config] # FB_VESA is not set + - [Config] # FB_EFI is not set + - [Config] # FB_N411 is not set + - [Config] # FB_HGA is not set + - [Config] # FB_OPENCORES is not set + - [Config] # FB_S1D13XXX is not set + - [Config] # FB_NVIDIA is not set + - [Config] # FB_RIVA is not set + - [Config] # FB_I740 is not set + - [Config] # FB_LE80578 is not set + - [Config] # FB_MATROX is not set + - [Config] # FB_RADEON is not set + - [Config] # FB_ATY128 is not set + - [Config] # FB_ATY is not set + - [Config] # FB_S3 is not set + - [Config] # FB_SAVAGE is not set + - [Config] # FB_SIS is not set + - [Config] # FB_NEOMAGIC is not set + - [Config] # FB_KYRO is not set + - [Config] # FB_3DFX is not set + - [Config] # FB_VOODOO1 is not set + - [Config] # FB_VT8623 is not set + - [Config] # FB_TRIDENT is not set + - [Config] # FB_ARK is not set + - [Config] # FB_PM3 is not set + - [Config] # FB_CARMINE is not set + - [Config] # FB_SMSCUFX is not set + - [Config] # FB_UDL is not set + - [Config] # FB_METRONOME is not set + - [Config] # FB_MB862XX is not set + - [Config] # FB_SIMPLE is not set + - [Config] # FB_SM712 is not set + - [Config] # LCD_CLASS_DEVICE is not set + - [Config] # BACKLIGHT_GENERIC is not set + - [Config] # BACKLIGHT_DA9052 is not set + - [Config] # BACKLIGHT_APPLE is not set + - [Config] # BACKLIGHT_SAHARA is not set + - [Config] # BACKLIGHT_WM831X is not set + - [Config] # BACKLIGHT_ADP8860 is not set + - [Config] # BACKLIGHT_ADP8870 is not set + - [Config] # BACKLIGHT_PCF50633 is not set + - [Config] # BACKLIGHT_LM3639 is not set + - [Config] # BACKLIGHT_SKY81452 is not set + - [Config] # BACKLIGHT_GPIO is not set + - [Config] # BACKLIGHT_LV5207LP is not set + - [Config] # BACKLIGHT_BD6107 is not set + - [Config] # FRAMEBUFFER_CONSOLE_DEFERRED_TAKEOVER is not set + - [Config] # SOUND is not set + - [Config] # HID_BATTERY_STRENGTH is not set + - [Config] # HID_A4TECH is not set + - [Config] # HID_ACRUX is not set + - [Config] # HID_APPLE is not set + - [Config] # HID_AUREAL is not set + - [Config] # HID_BELKIN is not set + - [Config] # HID_CHERRY is not set + - [Config] # HID_CHICONY is not set + - [Config] # HID_CORSAIR is not set + - [Config] # HID_CMEDIA is not set + - [Config] # HID_CYPRESS is not set + - [Config] # HID_DRAGONRISE is not set + - [Config] # HID_EMS_FF is not set + - [Config] # HID_ELECOM is not set + - [Config] # HID_EZKEY is not set + - [Config] # HID_GEMBIRD is not set + - [Config] # HID_GFRM is not set + - [Config] # HID_KEYTOUCH is not set + - [Config] # HID_KYE is not set + - [Config] # HID_WALTOP is not set + - [Config] # HID_GYRATION is not set + - [Config] # HID_ICADE is not set + - [Config] # HID_TWINHAN is not set + - [Config] # HID_KENSINGTON is not set + - [Config] # HID_LCPOWER is not set + - [Config] # HID_LENOVO is not set + - [Config] # HID_LOGITECH is not set + - [Config] # HID_MAGICMOUSE is not set + - [Config] # HID_MICROSOFT is not set + - [Config] # HID_MONTEREY is not set + - [Config] # HID_MULTITOUCH is not set + - [Config] # HID_ORTEK is not set + - [Config] # HID_PANTHERLORD is not set + - [Config] # HID_PETALYNX is not set + - [Config] # HID_PICOLCD is not set + - [Config] # HID_PLANTRONICS is not set + - [Config] # HID_PRIMAX is not set + - [Config] # HID_SAITEK is not set + - [Config] # HID_SAMSUNG is not set + - [Config] # HID_SPEEDLINK is not set + - [Config] # HID_STEELSERIES is not set + - [Config] # HID_SUNPLUS is not set + - [Config] # HID_RMI is not set + - [Config] # HID_GREENASIA is not set + - [Config] # HID_SMARTJOYPLUS is not set + - [Config] # HID_TIVO is not set + - [Config] # HID_TOPSEED is not set + - [Config] # HID_THRUSTMASTER is not set + - [Config] # HID_XINMO is not set + - [Config] # HID_ZEROPLUS is not set + - [Config] # HID_ZYDACRON is not set + - [Config] # HID_ALPS is not set + - [Config] # USB_HID is not set + - [Config] # HID_PID is not set + - [Config] # USB_KBD is not set + - [Config] # USB_MOUSE is not set + - [Config] # I2C_HID is not set + - [Config] # USB_LED_TRIG is not set + - [Config] # USB_CONN_GPIO is not set + - [Config] # USB_ANNOUNCE_NEW_DEVICES is not set + - [Config] # USB_DEFAULT_PERSIST is not set + - [Config] # USB_DYNAMIC_MINORS is not set + - [Config] # USB_LEDS_TRIGGER_USBPORT is not set + - [Config] # USB_MON is not set + - [Config] # USB_C67X00_HCD is not set + - [Config] # USB_EHCI_HCD is not set + - [Config] # USB_OXU210HP_HCD is not set + - [Config] # USB_ISP116X_HCD is not set + - [Config] # USB_FOTG210_HCD is not set + - [Config] # USB_MAX3421_HCD is not set + - [Config] # USB_OHCI_HCD is not set + - [Config] # USB_UHCI_HCD is not set + - [Config] # USB_SL811_HCD is not set + - [Config] # USB_R8A66597_HCD is not set + - [Config] # USB_HCD_BCMA is not set + - [Config] # USB_HCD_SSB is not set + - [Config] # USB_PRINTER is not set + - [Config] # USB_TMC is not set + - [Config] # USB_STORAGE is not set + - [Config] # USB_MDC800 is not set + - [Config] # USB_MICROTEK is not set + - [Config] # USBIP_CORE is not set + - [Config] # USB_CDNS3 is not set + - [Config] # USB_MUSB_HDRC is not set + - [Config] # USB_DWC3 is not set + - [Config] # USB_DWC2 is not set + - [Config] # USB_ISP1760 is not set + - [Config] # USB_USS720 is not set + - [Config] # USB_SERIAL is not set + - [Config] # USB_EMI62 is not set + - [Config] # USB_EMI26 is not set + - [Config] # USB_ADUTUX is not set + - [Config] # USB_SEVSEG is not set + - [Config] # USB_LEGOTOWER is not set + - [Config] # USB_LCD is not set + - [Config] # USB_CYPRESS_CY7C63 is not set + - [Config] # USB_CYTHERM is not set + - [Config] # USB_IDMOUSE is not set + - [Config] # USB_FTDI_ELAN is not set + - [Config] # USB_APPLEDISPLAY is not set + - [Config] # USB_LD is not set + - [Config] # USB_TRANCEVIBRATOR is not set + - [Config] # USB_IOWARRIOR is not set + - [Config] # USB_TEST is not set + - [Config] # USB_EHSET_TEST_FIXTURE is not set + - [Config] # USB_ISIGHTFW is not set + - [Config] # USB_YUREX is not set + - [Config] # USB_EZUSB_FX2 is not set + - [Config] # USB_HUB_USB251XB is not set + - [Config] # USB_HSIC_USB3503 is not set + - [Config] # USB_HSIC_USB4604 is not set + - [Config] # USB_LINK_LAYER_TEST is not set + - [Config] # USB_CHAOSKEY is not set + - [Config] # USB_ATM is not set + - [Config] # NOP_USB_XCEIV is not set + - [Config] # USB_GPIO_VBUS is not set + - [Config] # TAHVO_USB is not set + - [Config] # USB_ISP1301 is not set + - [Config] # USB_GADGET is not set + - [Config] # TYPEC is not set + - [Config] # MMC is not set + - [Config] # MEMSTICK is not set + - [Config] # LEDS_CLASS_FLASH is not set + - [Config] # LEDS_LM3530 is not set + - [Config] # LEDS_LM3642 is not set + - [Config] # LEDS_PCA9532 is not set + - [Config] # LEDS_LP3944 is not set + - [Config] # LEDS_LP3952 is not set + - [Config] # LEDS_LP5521 is not set + - [Config] # LEDS_LP5523 is not set + - [Config] # LEDS_LP5562 is not set + - [Config] # LEDS_LP8501 is not set + - [Config] # LEDS_CLEVO_MAIL is not set + - [Config] # LEDS_PCA955X is not set + - [Config] # LEDS_PCA963X is not set + - [Config] # LEDS_WM831X_STATUS is not set + - [Config] # LEDS_DA9052 is not set + - [Config] # LEDS_DAC124S085 is not set + - [Config] # LEDS_REGULATOR is not set + - [Config] # LEDS_BD2802 is not set + - [Config] # LEDS_INTEL_SS4200 is not set + - [Config] # LEDS_MC13783 is not set + - [Config] # LEDS_TCA6507 is not set + - [Config] # LEDS_TLC591XX is not set + - [Config] # LEDS_LM355x is not set + - [Config] # LEDS_MENF21BMC is not set + - [Config] # LEDS_BLINKM is not set + - [Config] # LEDS_MLXCPLD is not set + - [Config] # LEDS_USER is not set + - [Config] # LEDS_NIC78BX is not set + - [Config] # LEDS_TRIGGER_TIMER is not set + - [Config] # LEDS_TRIGGER_ONESHOT is not set + - [Config] # LEDS_TRIGGER_DISK is not set + - [Config] # LEDS_TRIGGER_HEARTBEAT is not set + - [Config] # LEDS_TRIGGER_BACKLIGHT is not set + - [Config] # LEDS_TRIGGER_CPU is not set + - [Config] # LEDS_TRIGGER_GPIO is not set + - [Config] # LEDS_TRIGGER_DEFAULT_ON is not set + - [Config] # LEDS_TRIGGER_TRANSIENT is not set + - [Config] # LEDS_TRIGGER_CAMERA is not set + - [Config] # LEDS_TRIGGER_PANIC is not set + - [Config] # INFINIBAND_CXGB4 is not set + - [Config] # INFINIBAND_I40IW is not set + - [Config] # INFINIBAND_OCRDMA is not set + - [Config] # INFINIBAND_BNXT_RE is not set + - [Config] # INFINIBAND_RDMAVT is not set + - [Config] # RDMA_RXE is not set + - [Config] # INFINIBAND_IPOIB_CM is not set + - [Config] # INFINIBAND_SRPT is not set + - [Config] # RTC_DRV_ABB5ZES3 is not set + - [Config] # RTC_DRV_ABX80X is not set + - [Config] # RTC_DRV_DS1307 is not set + - [Config] # RTC_DRV_DS1374 is not set + - [Config] # RTC_DRV_DS1672 is not set + - [Config] # RTC_DRV_MAX6900 is not set + - [Config] # RTC_DRV_MAX8907 is not set + - [Config] # RTC_DRV_RS5C372 is not set + - [Config] # RTC_DRV_ISL1208 is not set + - [Config] # RTC_DRV_ISL12022 is not set + - [Config] # RTC_DRV_X1205 is not set + - [Config] # RTC_DRV_PCF8523 is not set + - [Config] # RTC_DRV_PCF85063 is not set + - [Config] # RTC_DRV_PCF8563 is not set + - [Config] # RTC_DRV_PCF8583 is not set + - [Config] # RTC_DRV_M41T80 is not set + - [Config] # RTC_DRV_BQ32K is not set + - [Config] # RTC_DRV_S35390A is not set + - [Config] # RTC_DRV_FM3130 is not set + - [Config] # RTC_DRV_RX8010 is not set + - [Config] # RTC_DRV_RX8581 is not set + - [Config] # RTC_DRV_RX8025 is not set + - [Config] # RTC_DRV_EM3027 is not set + - [Config] # RTC_DRV_RV8803 is not set + - [Config] # RTC_DRV_M41T93 is not set + - [Config] # RTC_DRV_M41T94 is not set + - [Config] # RTC_DRV_DS1302 is not set + - [Config] # RTC_DRV_DS1305 is not set + - [Config] # RTC_DRV_DS1343 is not set + - [Config] # RTC_DRV_DS1347 is not set + - [Config] # RTC_DRV_DS1390 is not set + - [Config] # RTC_DRV_MAX6916 is not set + - [Config] # RTC_DRV_R9701 is not set + - [Config] # RTC_DRV_RX4581 is not set + - [Config] # RTC_DRV_RX6110 is not set + - [Config] # RTC_DRV_RS5C348 is not set + - [Config] # RTC_DRV_MAX6902 is not set + - [Config] # RTC_DRV_PCF2123 is not set + - [Config] # RTC_DRV_MCP795 is not set + - [Config] # RTC_DRV_DS3232 is not set + - [Config] # RTC_DRV_PCF2127 is not set + - [Config] # RTC_DRV_RV3029C2 is not set + - [Config] # RTC_DRV_DS1286 is not set + - [Config] # RTC_DRV_DS1511 is not set + - [Config] # RTC_DRV_DS1553 is not set + - [Config] # RTC_DRV_DS1685_FAMILY is not set + - [Config] # RTC_DRV_DS1742 is not set + - [Config] # RTC_DRV_DS2404 is not set + - [Config] # RTC_DRV_DA9052 is not set + - [Config] # RTC_DRV_DA9063 is not set + - [Config] # RTC_DRV_STK17TA8 is not set + - [Config] # RTC_DRV_M48T86 is not set + - [Config] # RTC_DRV_M48T35 is not set + - [Config] # RTC_DRV_M48T59 is not set + - [Config] # RTC_DRV_MSM6242 is not set + - [Config] # RTC_DRV_BQ4802 is not set + - [Config] # RTC_DRV_RP5C01 is not set + - [Config] # RTC_DRV_V3020 is not set + - [Config] # RTC_DRV_WM831X is not set + - [Config] # RTC_DRV_PCF50633 is not set + - [Config] # RTC_DRV_PCAP is not set + - [Config] # RTC_DRV_MC13XXX is not set + - [Config] # QCOM_HIDMA_MGMT is not set + - [Config] # QCOM_HIDMA is not set + - [Config] # DW_DMAC is not set + - [Config] # GREYBUS is not set + - [Config] # COMEDI is not set + - [Config] # SPEAKUP is not set + - [Config] # LTE_GDM724X is not set + - [Config] # GS_FPGABOOT is not set + - [Config] # WILC1000_SPI is not set + - [Config] # MOST_USB is not set + - [Config] # ACER_WMI is not set + - [Config] # ACERHDF is not set + - [Config] # ALIENWARE_WMI is not set + - [Config] # ASUS_LAPTOP is not set + - [Config] # DCDBAS is not set + - [Config] # DELL_LAPTOP is not set + - [Config] # DELL_WMI is not set + - [Config] # DELL_WMI_AIO is not set + - [Config] # DELL_SMO8800 is not set + - [Config] # DELL_RBTN is not set + - [Config] # DELL_RBU is not set + - [Config] # DELL_UART_BACKLIGHT is not set + - [Config] # FUJITSU_LAPTOP is not set + - [Config] # FUJITSU_TABLET is not set + - [Config] # AMILO_RFKILL is not set + - [Config] # HP_ACCEL is not set + - [Config] # HP_WIRELESS is not set + - [Config] # HP_WMI is not set + - [Config] # MSI_LAPTOP is not set + - [Config] # PANASONIC_LAPTOP is not set + - [Config] # COMPAL_LAPTOP is not set + - [Config] # SONY_LAPTOP is not set + - [Config] # IDEAPAD_LAPTOP is not set + - [Config] # SENSORS_HDAPS is not set + - [Config] # EEEPC_LAPTOP is not set + - [Config] # MSI_WMI is not set + - [Config] # TOPSTAR_LAPTOP is not set + - [Config] # TOSHIBA_BT_RFKILL is not set + - [Config] # TOSHIBA_HAPS is not set + - [Config] # ACPI_CMPC is not set + - [Config] # INTEL_VBTN is not set + - [Config] # IBM_RTL is not set + - [Config] # SAMSUNG_LAPTOP is not set + - [Config] # INTEL_OAKTRAIL is not set + - [Config] # SAMSUNG_Q10 is not set + - [Config] # APPLE_GMUX is not set + - [Config] # SURFACE_PRO3_BUTTON is not set + - [Config] # MFD_CROS_EC is not set + - [Config] # CHROME_PLATFORMS is not set + - [Config] # COMMON_CLK_WM831X is not set + - [Config] # COMMON_CLK_SI5351 is not set + - [Config] # COMMON_CLK_CDCE706 is not set + - [Config] # COMMON_CLK_CS2000_CP is not set + - [Config] # ALTERA_MBOX is not set + - [Config] # REMOTEPROC is not set + - [Config] # IIO is not set + - [Config] # NTB_PINGPONG is not set + - [Config] # NTB_TOOL is not set + - [Config] # NTB_PERF is not set + - [Config] # VME_USER is not set + - [Config] # PWM is not set + - [Config] # SERIAL_IPOCTAL is not set + - [Config] # BCM_KONA_USB2_PHY is not set + - [Config] # PHY_PXA_28NM_HSIC is not set + - [Config] # PHY_PXA_28NM_USB2 is not set + - [Config] # POWERCAP is not set + - [Config] # ANDROID is not set + - [Config] # STM is not set + - [Config] # INTEL_TH is not set + - [Config] # FPGA is not set + - [Config] # UNISYS_VISORBUS is not set + - [Config] # ORANGEFS_FS is not set + - [Config] # EROFS_FS_ZIP is not set + - [Config] # CRYPTO_AES_TI is not set + - [Config] # CRYPTO_DEV_QAT_C3XXX is not set + - [Config] # CRYPTO_DEV_QAT_C62X is not set + - [Config] # CRYPTO_DEV_QAT_C3XXXVF is not set + - [Config] # CRYPTO_DEV_QAT_C62XVF is not set + - [Config] # FONTS is not set + - [Config] # RUNTIME_TESTING_MENU is not set + - [Config] # SAMPLES is not set + - [Config] # EARLY_PRINTK_USB_XDBC is not set + - [Config] # ACPI_FAN is not set + - [Config] # CB710_CORE is not set + - [Config] # ALTERA_STAPL is not set + - [Config] # USB_NET_DRIVERS is not set + - [Config] # RMI4_CORE is not set + - [Config] # W1 is not set + - [Config] # MFD_WL1273_CORE is not set + - [Config] # USB_ULPI_BUS is not set + - [Config] # USB_WDM is not set + - [Config] # EXTCON is not set + - [Config] # MICROCHIP_PHY is not set + - [Config] # USB_ROLE_SWITCH is not set + - [Config] KERNEL_GZIP=y + - [Config] NO_HZ_FULL=y + - [Config] LEGACY_VSYSCALL_EMULATE=y + - [Config] ACPI_NFIT=y + - [Config] TRANSPARENT_HUGEPAGE_ALWAYS=y + - [Config] PCI_MESON=y + - [Config] BLK_DEV_NVME=y + - [Config] SCSI_FC_ATTRS=y + - [Config] VXLAN=y + - [Config] I2C=m + - [Config] GPIO_MOCKUP=m + - [Config] LEDS_CLASS=m + - [Config] INFINIBAND_IPOIB_DEBUG=y + - [Config] EDAC_DECODE_MCE=y + - [Config] HYPERV=y + - [Config] BLK_DEV_PMEM=y + - [Config] ND_BLK=y + - [Config] DEV_DAX=y + - [Config] DEV_DAX_PMEM=y + - [Config] OVERLAY_FS_REDIRECT_DIR=y + - [Config] SECURITY_APPARMOR_DEBUG=y + - [Config] LOCK_TORTURE_TEST=m + - [Config] HYPERV_STORAGE=y + - [Config] # SECURITY_APPARMOR_DEBUG_ASSERTS is not set + - [Config] # CONFIG_VBOXGUEST is not set + - [Config] CONFIG_USB_XHCI_PCI=y + - SAUCE: ubuntu/sgx: rename mmap_sem to mmap_lock + - [Config] GCC version update + + [ Ubuntu: 5.8.0-12.13 ] + + * groovy/linux: 5.8.0-12.13 -proposed tracker (LP: #1889481) + * Fix right speaker of HP laptop (LP: #1889375) + - SAUCE: hda/realtek: Fix right speaker of HP laptop + * blk_update_request error when mount nvme partition (LP: #1872383) + - SAUCE: nvme-pci: prevent SK hynix PC400 from using Write Zeroes command + * Add support for Atlantic NIC firmware v4 (LP: #1886908) + - Revert "UBUNTU: SAUCE: net: atlantic: Add support for firmware v4" + - net: atlantic: align return value of ver_match function with function name + - net: atlantic: add support for FW 4.x + * Miscellaneous Ubuntu changes + - [Debian] Fix debian/tests for linux-5.8 -> linux rename + - SAUCE: selftests/powerpc: return skip code for spectre_v2 + + [ Ubuntu: 5.8.0-11.12 ] + + * groovy/linux: 5.8.0-11.12 -proposed tracker (LP: #1889336) + * Miscellaneous Ubuntu changes + - [Packaging] dwarves is not required for linux-libc-dev or stage1 + + [ Ubuntu: 5.8.0-10.11 ] + + * groovy/linux: 5.8.0-10.11 -proposed tracker (LP: #1889316) + * Miscellaneous Ubuntu changes + - [Packaging] Add more packages to Build-Depends-Indep for docs + - [Debian] Specify python executable in kmake + - [Debian] Don't treat warnings as errors during perf builds + - [Config] Disable signing for ppc64el + + [ Ubuntu: 5.8.0-9.10 ] + + * groovy/linux: 5.8.0-9.10 -proposed tracker (LP: #1889140) + * Packaging resync (LP: #1786013) + - [Packaging] update helper scripts + * Miscellaneous Ubuntu changes + - SAUCE: Fix s390x compile error on F32 utils/stat-display.c + - [Packaging] Add python3-venv to Build-Depends-Indep + + [ Ubuntu: 5.8.0-8.9 ] + + * groovy/linux: 5.8.0-8.9 -proposed tracker (LP: #1889104) + * Packaging resync (LP: #1786013) + - [Packaging] update helper scripts + - update dkms package versions + - [Packaging] update variants + * Introduce the new NVIDIA 450-server and the 450 UDA series (LP: #1887674) + - [Packaging] NVIDIA -- Add signed modules for 450 450-server + * Introduce the new NVIDIA 418-server and 440-server series, and update the + current NVIDIA drivers (LP: #1881137) + - [packaging] add signed modules for the 418-server and the 440-server + flavours + * Miscellaneous Ubuntu changes + - SAUCE: Revert "radix-tree: Use local_lock for protection" + - [Config] CONFIG_DEBUG_INFO_COMPRESSED=n + - [Config] disable CONFIG_CRYPTO_AEGIS128_SIMD + - [Config] Enable nvidia dkms build + * Miscellaneous upstream changes + - usbip: tools: fix build error for multiple definition + * Rebase to v5.8-rc7 + + [ Ubuntu: 5.8.0-7.8 ] + + * Empty entry + + [ Ubuntu: 5.8.0-7.8 ] + + * soc/amd/renoir: detect dmic from acpi table (LP: #1887734) + - ASoC: amd: add logic to check dmic hardware runtime + - ASoC: amd: add ACPI dependency check + - ASoC: amd: fixed kernel warnings + * linux 4.15.0-109-generic network DoS regression vs -108 (LP: #1886668) + - SAUCE: Revert "netprio_cgroup: Fix unlimited memory leak of v2 cgroups" + * Add support for Atlantic NIC firmware v4 (LP: #1886908) + - SAUCE: net: atlantic: Add support for firmware v4 + * MGA G200e doesn't work under GDM Wayland (LP: #1886140) + - drm/mgag200: Remove HW cursor + - drm/mgag200: Clean up mga_set_start_address() + - drm/mgag200: Clean up mga_crtc_do_set_base() + - drm/mgag200: Move mode-setting code into separate helper function + - drm/mgag200: Split MISC register update into PLL selection, SYNC and I/O + - drm/mgag200: Update mode registers after plane registers + - drm/mgag200: Set pitch in a separate helper function + - drm/mgag200: Set primary plane's format in separate helper function + - drm/mgag200: Move TAGFIFO reset into separate function + - drm/mgag200: Move hiprilvl setting into separate functions + - drm/mgag200: Move register initialization into separate function + - drm/mgag200: Remove out-commented suspend/resume helpers + - drm/mgag200: Use simple-display data structures + - drm/mgag200: Convert to simple KMS helper + - drm/mgag200: Replace VRAM helpers with SHMEM helpers + * Miscellaneous Ubuntu changes + - SAUCE: s390/bpf: fix sign extension in branch_ku + - SAUCE: selftests: net: ip_defrag: modprobe missing nf_defrag_ipv6 support + - SAUCE: selftests: fib_nexthop_multiprefix: fix cleanup() netns deletion + - [packaging] debhelper-compat (= 10) (and retire debian/compat) + - [Config] Update configs after rebase to 5.8-rc6 + * Rebase to v5.8-rc6 + + [ Ubuntu: 5.8.0-6.7 ] + + * Packaging resync (LP: #1786013) + - update dkms package versions + * perf build broken after updating to bintuils 2.34.90.20200706-1ubuntu1 + (LP: #1887397) + - SAUCE: libtraceevent: Strip symbol version from nm output + + [ Ubuntu: 5.8.0-5.6 ] + + * linux-libc-dev broken for crossbuilding, Multi-Arch:same violation + (LP: #1886188) + - [Packaging] Produce linux-libc-deb package for riscv64 + - [Debian] Disallow building linux-libc-dev from linux-riscv + * Miscellaneous Ubuntu changes + - SAUCE: Revert "UBUNTU: SAUCE: test_bpf: remove expected fail for Ctx heavy + transformations test on s390" + - SAUCE: Revert "test_bpf: flag tests that cannot be jited on s390" + - [Config] Update configs (gcc update) + * Rebase to v5.8-rc5 + + [ Ubuntu: 5.8.0-4.5 ] + + * Add generic LED class support for audio LED (LP: #1885896) + - ALSA: hda: generic: Always call led-trigger for mic mute LED + - ALSA: hda: generic: Add a helper for mic-mute LED with LED classdev + - ALSA: hda/realtek: Convert to cdev-variant of mic-mute LED controls + - ALSA: hda/conexant: Convert to cdev-variant of mic-mute LED controls + - ALSA: hda/sigmatel: Convert to cdev-variant of mic-mute LED controls + - ALSA: hda: generic: Drop unused snd_hda_gen_fixup_micmute_led() + - ALSA: hda: generic: Drop the old mic-mute LED hook + - ALSA: hda: generic: Add vmaster mute LED helper + - ALSA: hda/realtek: Use the new vmaster mute LED helper + - ALSA: hda/conexant: Use the new vmaster mute LED helper + - ALSA: hda/sigmatel: Use the new vmaster mute LED helper + - ALSA: hda/realtek: Unify LED helper code + - ALSA: hda: Let LED cdev handling suspend/resume + * seccomp_bpf fails on powerpc (LP: #1885757) + - SAUCE: selftests/seccomp: fix ptrace tests on powerpc + * CVE-2020-11935 + - SAUCE: aufs: do not call i_readcount_inc() + * Miscellaneous Ubuntu changes + - SAUCE: Update aufs to 5.x-rcN 20200622 + - [Config] Update configs to set CONFIG_SND_HDA_GENERIC_LEDS value + - [Config] CONFIG_SECURITY_DMESG_RESTRICT=y + * Rebase to v5.8-rc4 + + [ Ubuntu: 5.8.0-3.4 ] + + * Packaging resync (LP: #1786013) + - [Packaging] update helper scripts + - update dkms package versions + * lxc 1:4.0.2-0ubuntu1 ADT test failure with linux-5.8 5.8.0-1.2 + (LP: #1884635) + - SAUCE: overlayfs: fix faulty rebase + * shiftfs: O_TMPFILE reports ESTALE (LP: #1872757) + - SAUCE: shiftfs: prevent ESTALE for LOOKUP_JUMP lookups + * shiftfs: fix btrfs regression (LP: #1884767) + - SAUCE: Revert "UBUNTU: SAUCE: shiftfs: fix dentry revalidation" + * Miscellaneous Ubuntu changes + - [Config] CONFIG_DEBUG_INFO_COMPRESSED=y + - SAUCE: regulator: rename da903x to da903x-regulator + - [Config] Add da903x to modules.ignore + - [Config] Update configs for rebase to 5.8-rc3 + * Rebase to v5.8-rc3 + + [ Ubuntu: 5.8.0-2.3 ] + + * Support Audio Mute LED for two new HP laptops (LP: #1884251) + - ALSA: hda/realtek: Add mute LED and micmute LED support for HP systems + * CVE-2019-16089 + - SAUCE: nbd_genl_status: null check for nla_nest_start + * tpm: fix TIS locality timeout problems (LP: #1881710) + - SAUCE: tpm: fix TIS locality timeout problems + * Packaging resync (LP: #1786013) + - update dkms package versions + * Miscellaneous Ubuntu changes + - SAUCE: security,perf: Allow further restriction of perf_event_open + - [Config] CONFIG_SECURITY_PERF_EVENTS_RESTRICT=y + - [Config] Update configs and annotations for 5.8-rc2 + - [Config] Enable zfs + - [Config] Enable CONFIG_DEBUG_INFO_BTF + * Rebase to v5.8-rc2 + + [ Ubuntu: 5.8.0-1.2 ] + + * Miscellaneous Ubuntu changes + - [Debian] Support linux-x.y in udeb package names + - [Packaging] Use SRCPKGNAME for udeb packages + + [ Ubuntu: 5.8.0-0.1 ] + + * Docker registry doesn't stay up and keeps restarting (LP: #1879690) + - Revert "UBUNTU: SAUCE: overlayfs: use shiftfs hacks only with shiftfs as underlay" + * Packaging resync (LP: #1786013) + - [Packaging] update variants + * Miscellaneous Ubuntu changes + - [Packaging] Update source package name to linux-5.8 + - SAUCE: (lockdown) Add efi_status_to_str() and rework efi_status_to_err(). + - SAUCE: (lockdown) Make get_cert_list() use efi_status_to_str() to print error messages. + - SAUCE: (lockdown) security: lockdown: expose a hook to lock the kernel down + - SAUCE: (lockdown) efi: Add an EFI_SECURE_BOOT flag to indicate secure boot mode + - SAUCE: (lockdown) efi: Lock down the kernel if booted in secure boot mode + - SAUCE: (lockdown) s390: Lock down the kernel when the IPL secure flag is set + - SAUCE: (lockdown) KEYS: Make use of platform keyring for module signature verify + - SAUCE: (lockdown) arm64: Allow locking down the kernel under EFI secure boot + - SAUCE: (lockdown) security: lockdown: Make CONFIG_LOCK_DOWN_IN_EFI_SECURE_BOOT more generic + - SAUCE: (lockdown) powerpc: lock down kernel in secure boot mode + - SAUCE: Import aufs driver + - [Config] Update configs for v5.8-rc1 + - [Config] Update annotations for v5.8-rc1 config changes + - SAUCE: shiftfs -- Fix build errors from missing fiemap definitions + - Disable hio driver + * Miscellaneous upstream changes + - acpi: disallow loading configfs acpi tables when locked down + * Rebase to v5.8-rc1 + + [ Ubuntu: 5.8.0-0.0 ] + + * Empty entry + + [ Ubuntu: 5.7.0-8.9 ] + + * Packaging resync (LP: #1786013) + - update dkms package versions + * Enforce all config annotations (LP: #1879327) + - [Config]: do not enforce CONFIG_VERSION_SIGNATURE + - [Config]: prepare to enforce all + - [Config]: enforce all config options + * Miscellaneous Ubuntu changes + - [Config]: annotations review after 5.7 rebase + - [Config] annotations: IXP4XX* depends on ARCH_IXP4XX + - [Config] THERMAL_GOV_POWER_ALLOCATOR=y + - [Config] annotations: SOC_CAMERA is marked as BROKEN + - [Config] annotations: NFSD_V4_2_INTER_SSC depends on NFS_FS=y + - [Config] annotations: CRYPTO_DEV_CHELSIO_TLS depends on legacy (and largely + unmantained) TLS_TOE + - [Config] annotations: SERIO_OLPC_APSP depends on ARCH_MMP + - [Config] RTW88_DEBUG=y + - [Config] annotations: ISDN_CAPI is a bool, and BT_CMTP depends on it + - [Config] annotations SND_SOC_SOF_DEVELOPER_SUPPORT depends on + SND_SOC_SOF_DEVELOPER_SUPPORT + - [Config] annotations: SND_SOC_SOF_BAYTRAIL_SUPPORT is mutually exclusive + with SND_SST_ATOM_HIFI2_PLATFORM_ACPI + - [Config] annotations: DEBUG_IMX_UART_PORT is defined only any + DEBUG_IMX*_UART is enabled + - [Config] annotations: HW_RANDOM_IMX_RNGC depends on SOC_IMX25 + - [Config] annotations: armhf: VIRTUALIZATION support was removed for arm32 + - [Config] annotations: arm64: remove DEBUG_ALIGN_RODATA + - [Config] annotations: ppc64: DATA_SHIFT defaults to PPC_PAGE_SHIFT + - [Config] arm64: enforce ARM64_USE_LSE_ATOMICS + - [Config] s390x: MOST is not set + - [Config] s390x: BCM84881_PHY is not set + - [Config] s390x: XILINX_LL_TEMAC is not set + - [Config] s390x: PHY_INTEL_EMMC requires GENERIC_PHY (off by default on + s390x) + - [Config] s390x: CHECK_STACK conflicts with VMAP_STACK + - [Config] annotations: s390x: NODES_SHIFT=1 + - [Config] annotations: import new symbols + - [Config] annotations: remove unmatched menu and options + + [ Ubuntu: 5.7.0-7.8 ] + + * Packaging resync (LP: #1786013) + - update dkms package versions + - [Packaging] update helper scripts + * [UBUNTU 20.04] s390x/pci: fix linking between PF and VF for multifunction + devices (LP: #1879704) + - PCI/IOV: Introduce pci_iov_sysfs_link() function + - s390/pci: create links between PFs and VFs + * Miscellaneous Ubuntu changes + - [Config] Disable UEFI signing for arm64 + - Rebase to v5.7.1 + * Rebase to v5.7.1 + + [ Ubuntu: 5.7.0-6.7 ] + + * Packaging resync (LP: #1786013) + - [Packaging] update helper scripts + - update dkms package versions + * shiftfs: fix btrfs snapshot deletion (LP: #1879688) + - SAUCE: shiftfs: let userns root destroy subvolumes from other users + * seccomp_benchmark times out on eoan (LP: #1881576) + - SAUCE: selftests/seccomp: use 90s as timeout + * Realtek 8723DE [10ec:d723] subsystem [10ec:d738] disconnects unsolicitedly + when Bluetooth is paired: Reason: 23=IEEE8021X_FAILED (LP: #1878147) + - SAUCE: Revert "UBUNTU: SAUCE: rtw88: Move driver IQK to set channel before + association for 11N chip" + - SAUCE: Revert "UBUNTU: SAUCE: rtw88: fix rate for a while after being + connected" + - SAUCE: Revert "UBUNTU: SAUCE: rtw88: No retry and report for auth and assoc" + - SAUCE: Revert "UBUNTU: SAUCE: rtw88: 8723d: Add coex support" + - rtw88: 8723d: Add coex support + - SAUCE: rtw88: coex: 8723d: set antanna control owner + - SAUCE: rtw88: coex: 8723d: handle BT inquiry cases + - SAUCE: rtw88: fix EAPOL 4-way failure by finish IQK earlier + * ASoC/amd: add audio driver for amd renoir (LP: #1881046) + - ASoC: amd: add Renoir ACP3x IP register header + - ASoC: amd: add Renoir ACP PCI driver + - ASoC: amd: add acp init/de-init functions + - ASoC: amd: create acp3x pdm platform device + - ASoC: amd: add ACP3x PDM platform driver + - ASoC: amd: irq handler changes for ACP3x PDM dma driver + - ASoC: amd: add acp3x pdm driver dma ops + - ASoC: amd: add ACP PDM DMA driver dai ops + - ASoC: amd: add Renoir ACP PCI driver PM ops + - ASoC: amd: add ACP PDM DMA driver pm ops + - ASoC: amd: enable Renoir acp3x drivers build + - ASoC: amd: create platform devices for Renoir + - ASoC: amd: RN machine driver using dmic + - ASoC: amd: enable build for RN machine driver + - ASoC: amd: fix kernel warning + - ASoC: amd: refactoring dai_hw_params() callback + - ASoC: amd: return error when acp de-init fails + - [Config]: enable amd renoir ASoC audio + * Slow send speed with Intel I219-V on Ubuntu 18.04.1 (LP: #1802691) + - e1000e: Disable TSO for buffer overrun workaround + * Fix incorrect speed/duplex when I210 device is runtime suspended + (LP: #1880656) + - igb: Report speed and duplex as unknown when device is runtime suspended + * Fix Pericom USB controller OHCI/EHCI PME# defect (LP: #1879321) + - serial: 8250_pci: Move Pericom IDs to pci_ids.h + - PCI: Avoid Pericom USB controller OHCI/EHCI PME# defect + * [UBUNTU 20.04] s390x/pci: enumerate pci functions per physical adapter + (LP: #1874056) + - s390/pci: Expose new port attribute for PCIe functions + - s390/pci: adaptation of iommu to multifunction + - s390/pci: define kernel parameters for PCI multifunction + - s390/pci: define RID and RID available + - s390/pci: create zPCI bus + - s390/pci: adapt events for zbus + - s390/pci: Handling multifunctions + - s390/pci: Do not disable PF when VFs exist + - s390/pci: Documentation for zPCI + - s390/pci: removes wrong PCI multifunction assignment + * add 16-bit width registers support for EEPROM at24 device (LP: #1876699) + - regmap-i2c: add 16-bit width registers support + * Miscellaneous Ubuntu changes + - [Config] Enable virtualbox guest and shared-folder modules + * Rebase to v5.7 + + [ Ubuntu: 5.7.0-5.6 ] + + * Packaging resync (LP: #1786013) + - update dkms package versions + * [UBUNTU 20.04] PSI generates overhead on s390x (LP: #1876044) + - Ubuntu: [Config] CONFIG_PSI is enabled by default, but creates additional + overhead on s390x, hence should be disabled by default on s390x only. + * Miscellaneous Ubuntu changes + - Rebase to v5.7-rc7 + - [Config] ppc64el: disable STRICT_KERNEL_RWX + * Rebase to v5.7-rc7 + + [ Ubuntu: 5.7.0-4.5 ] + + * Packaging resync (LP: #1786013) + - update dkms package versions + * update-initramfs complains of missing amdgpu firmware files (LP: #1873325) + - SAUCE: drm/amdgpu: Remove unreleased arcturus and navi12 firmware from + modinfo + * Support DMIC micmute LED on HP platforms (LP: #1876859) + - ALSA: hda/realtek - Introduce polarity for micmute LED GPIO + - ALSA: hda/realtek - Enable micmute LED on and HP system + - ALSA: hda/realtek - Add LED class support for micmute LED + - ALSA: hda/realtek - Fix unused variable warning w/o + CONFIG_LEDS_TRIGGER_AUDIO + - ASoC: SOF: Update correct LED status at the first time usage of + update_mute_led() + * Killer(R) Wi-Fi 6 AX1650i 160MHz Wireless Network Adapter (201NGW), + REV=0x354 [8086:a0f0] subsystem id [1a56:1651] wireless adapter not found + due to firmware crash (LP: #1874685) + - SAUCE: iwlwifi: pcie: handle QuZ configs with killer NICs as well + * rtkit-daemon[*]: Failed to make ourselves RT: Operation not permitted after + upgrade to 20.04 (LP: #1875665) + - [Config] Turn off CONFIG_RT_GROUP_SCHED everywhere + * Unable to handle kernel pointer dereference in virtual kernel address space + on Eoan (LP: #1876645) + - SAUCE: overlayfs: fix shitfs special-casing + * Miscellaneous Ubuntu changes + - SAUCE: skip building selftest 'runqslower' if kernel not built + - Rebase to v5.7-rc6 + - [Config] updateconfigs after 5.7-rc6 rebase + * Rebase to v5.7-rc6 + + [ Ubuntu: 5.7.0-3.4 ] + + * Rebase to v5.7-rc5 + * Packaging resync (LP: #1786013) + - update dkms package versions + * getitimer returns it_value=0 erroneously (LP: #1349028) + - [Config] CONTEXT_TRACKING_FORCE policy should be unset + * lockdown on power (LP: #1855668) // Ubuntu Kernel Support for OpenPOWER NV + Secure & Trusted Boot (LP: #1866909) + - [Config] Enable configs for OpenPOWER NV Secure & Trusted Boot + * Miscellaneous Ubuntu changes + - SAUCE: Import aufs driver + - [Config] Enable aufs + - [Config] annotations: remove SND_SOC_SOF_HDA_COMMON_HDMI_CODEC + - [Config] Remove CONFIG_SND_HDA_INTEL_DETECT_DMIC from annotations + - [Debian] final-checks -- Do not remove ~* from abi + - [Config] Enable 5-level page table support for x86 + - [Config] updateconfigs after 5.7-rc5 rebase + + [ Ubuntu: 5.7.0-2.3 ] + + * Packaging resync (LP: #1786013) + - [Packaging] update helper scripts + - update dkms package versions + - [Packaging] update helper scripts + * ASUS T100HAN boots to a blank screen with a cursor [i965: Failed to submit + batchbuffer: Input/output error] (LP: #1860754) + - [Config] CONFIG_PMIC_OPREGION=y and CONFIG_GPIO_CRYSTAL_COVE=y for amd64 + * ubuntu/focal64 fails to mount Vagrant shared folders (LP: #1873506) + - [Packaging] Move virtualbox modules to linux-modules + - [Packaging] Remove vbox and zfs modules from generic.inclusion-list + * built-using constraints preventing uploads (LP: #1875601) + - temporarily drop Built-Using data + * dkms artifacts may expire from the pool (LP: #1850958) + - [Packaging] autoreconstruct -- manage executable debian files + - [packaging] handle downloads from the librarian better + * Add signed modules for the 435 NVIDIA driver (LP: #1875888) + - [Packaging] NVIDIA -- add signed modules for the 435 NVIDIA driver + * [Selftests] Apply various fixes and improvements (LP: #1870543) + - SAUCE: selftests/seccomp -- Disable timeout for seccomp tests + * [17.04 FEAT] Integrate kernel message catalogue for s390x into Ubuntu + distribution (LP: #1628889) + - SAUCE: s390: kernel message catalog + * Overlayfs in user namespace leaks directory content of inaccessible + directories (LP: #1793458) // CVE-2018-6559 + - SAUCE: overlayfs: ensure mounter privileges when reading directories + * suspend only works once on ThinkPad X1 Carbon gen 7 (LP: #1865570) + - SAUCE: e1000e: Disable s0ix flow for X1 Carbon 7th + * [ICL] TC port in legacy/static mode can't be detected due TCCOLD + (LP: #1868936) + - drm/i915/display: Move out code to return the digital_port of the aux ch + - drm/i915/display: Add intel_legacy_aux_to_power_domain() + - drm/i915/display: Split hsw_power_well_enable() into two + - drm/i915/tc/icl: Implement TC cold sequences + - drm/i915/tc: Skip ref held check for TC legacy aux power wells + - drm/i915/tc/tgl: Implement TC cold sequences + - drm/i915/tc: Catch TC users accessing FIA registers without enable aux + - drm/i915/tc: Do not warn when aux power well of static TC ports timeout + * Touchpad doesn't work on Dell Inspiron 7000 2-in-1 (LP: #1851901) + - Revert "UBUNTU: SAUCE: mfd: intel-lpss: add quirk for Dell XPS 13 7390 + 2-in-1" + * 'Elan touchpad' not detected on 'Lenovo ThinkBook 15 IIL' (LP: #1861610) + - SAUCE: Input: elan_i2c - add more hardware ID for Lenovo laptop + * linux-image-5.0.0-35-generic breaks checkpointing of container + (LP: #1857257) + - SAUCE: overlayfs: use shiftfs hacks only with shiftfs as underlay + * alsa/sof: kernel oops on the machine without Intel hdmi audio codec (a + regression in the asoc machine driver) (LP: #1874359) + - ASoC: intel/skl/hda - fix oops on systems without i915 audio codec + * Add debian/rules targets to compile/run kernel selftests (LP: #1874286) + - [Packaging] add support to compile/run selftests + * 5.4.0-24.28 does not seem to apply rtprio, whereas -21 does. (LP: #1873315) + - [Config] lowlatency: turn off RT_GROUP_SCHED + * alsa/sof: external mic can't be deteced on Lenovo and HP laptops + (LP: #1872569) + - SAUCE: ASoC: intel/skl/hda - set autosuspend timeout for hda codecs + * shiftfs: O_TMPFILE reports ESTALE (LP: #1872757) + - SAUCE: shiftfs: fix dentry revalidation + * shiftfs: broken shiftfs nesting (LP: #1872094) + - SAUCE: shiftfs: record correct creator credentials + * lockdown on power (LP: #1855668) + - SAUCE: (lockdown) powerpc: lock down kernel in secure boot mode + * Add support for Realtek 8723DE wireless adapter (LP: #1780590) + - SAUCE: rtw88: add adaptivity support for EU/JP regulatory + - SAUCE: rtw88: update tx descriptor of mgmt and rsvd page packets + - SAUCE: rtw88: sar: dump sar information via debugfs + - SAUCE: rtw88: 8723d: add IQ calibration + - SAUCE: rtw88: 8723d: Add power tracking + - SAUCE: rtw88: 8723d: implement flush queue + - SAUCE: rtw88: 8723d: set ltecoex register address in chip_info + - SAUCE: rtw88: 8723d: Add coex support + - SAUCE: rtw88: 8723d: Add shutdown callback to disable BT USB suspend + * Fix authentication fail on Realtek WiFi 8723de (LP: #1871300) + - SAUCE: rtw88: No retry and report for auth and assoc + - SAUCE: rtw88: fix rate for a while after being connected + - SAUCE: rtw88: Move driver IQK to set channel before association for 11N chip + * Miscellaneous Ubuntu changes + - SAUCE: rtw88: fix 'const' mismatch in power suequence hooks + - SAUCE: rtw88: fix 'const' mismatch in + __priority_queue_cfg_legacy()/__priority_queue_cfg() + - [Config] RTW88=m + - SAUCE: (lockdown) Revert carried-forward lockdown patches + - SAUCE: (lockdown) Add efi_status_to_str() and rework efi_status_to_err(). + - SAUCE: (lockdown) Make get_cert_list() use efi_status_to_str() to print + error messages. + - SAUCE: (lockdown) security: lockdown: expose a hook to lock the kernel down + - SAUCE: (lockdown) efi: Add an EFI_SECURE_BOOT flag to indicate secure boot + mode + - SAUCE: (lockdown) efi: Lock down the kernel if booted in secure boot mode + - SAUCE: (lockdown) s390: Lock down the kernel when the IPL secure flag is set + - SAUCE: (lockdown) KEYS: Make use of platform keyring for module signature + verify + - SAUCE: (lockdown) arm64: Allow locking down the kernel under EFI secure boot + - SAUCE: (lockdown) security: lockdown: Make + CONFIG_LOCK_DOWN_IN_EFI_SECURE_BOOT more generic + - [Config] Add back CONFIG_LOCK_DOWN_IN_SECURE_BOOT annotation for ppc64el + - [Config] CONFIG_RT_GROUP_SCHED=y + - [Packaging] Include modules.builtin.modinfo in linux-modules + - SAUCE: LSM: Infrastructure management of the sock security + - SAUCE: Fix-up af_unix mediation for sock infrastructure management + - SAUCE: Revert "apparmor: Allow filtering based on secmark policy" + - SAUCE: Revert "apparmor: Parse secmark policy" + - SAUCE: Revert "apparmor: Add a wildcard secid" + - SAUCE: Revert "apparmor: fixup secid map conversion to using IDR" + - SAUCE: Revert "apparmor: Use an IDR to allocate apparmor secids" + - SAUCE: Revert "apparmor: add support for mapping secids and using secctxes" + - Update dropped.txt for restored apparmor patches + - Remove lockdown patches from dropped.txt + - SAUCE: powerpc/ima: require IMA module signatures only if MODULE_SIG is not + enabled + - SAUCE: selftests/ftrace: Use printf instead of echo in kprobe syntax error + tests + - SAUCE: selftests/net -- disable l2tp.sh test + - SAUCE: selftests/net -- disable timeout + - SAUCE: tools: hv: Update shebang to use python3 instead of python + - Remove dropped.txt + - [Packaging] move linux-doc and linux-libc-dev stubs to debian.master + - [Debian] Support generating configs for riscv64 + - [Config] CONFIG_KMSG_IDS=y for s390x + - [Packaging] add libcap-dev dependency + - [Config] CONFIG_AD5770R=m + - [Config] CONFIG_AL3010=m + - [Config] CONFIG_APPLE_MFI_FASTCHARGE=m + - [Config] CONFIG_BAREUDP=m + - [Config] CONFIG_CRYPTO_DEV_OCTEONTX_CPT=m + - [Config] CONFIG_CRYPTO_DEV_ZYNQMP_AES=m + - [Config] CONFIG_DRM_DISPLAY_CONNECTOR=m + - [Config] CONFIG_DRM_PANEL_BOE_TV101WUM_NL6=m + - [Config] CONFIG_DRM_PANEL_ELIDA_KD35T133=m + - [Config] CONFIG_DRM_PANEL_FEIXIN_K101_IM2BA02=m + - [Config] CONFIG_DRM_PANEL_NOVATEK_NT35510=m + - [Config] CONFIG_DRM_PANEL_SAMSUNG_S6E88A0_AMS452EF01=m + - [Config] CONFIG_DRM_PARADE_PS8640=m + - [Config] CONFIG_DRM_SIMPLE_BRIDGE=m + - [Config] CONFIG_DRM_TIDSS=m + - [Config] CONFIG_DRM_TI_TPD12S015=m + - [Config] CONFIG_DRM_TOSHIBA_TC358768=m + - [Config] CONFIG_EDAC_DMC520=m + - [Config] CONFIG_EXFAT_FS=m + - [Config] CONFIG_GP2AP002=m + - [Config] CONFIG_GPIO_MLXBF2=m + - [Config] CONFIG_HID_GLORIOUS=m + - [Config] CONFIG_HID_MCP2221=m + - [Config] CONFIG_HMC425=m + - [Config] CONFIG_ICP10100=m + - [Config] CONFIG_IMX8MM_THERMAL=m + - [Config] CONFIG_IMX_SC_THERMAL=m + - [Config] CONFIG_INTERCONNECT_QCOM_OSM_L3=m + - [Config] CONFIG_INTERCONNECT_QCOM_SC7180=m + - [Config] CONFIG_K3_RTI_WATCHDOG=m + - [Config] CONFIG_MDIO_IPQ8064=m + - [Config] CONFIG_MDIO_MVUSB=m + - [Config] CONFIG_MHI_BUS=m + - [Config] CONFIG_OCTEONTX2_VF=m + - [Config] CONFIG_PHY_CADENCE_TORRENT=m + - [Config] CONFIG_PHY_QCOM_USB_HS_28NM=m + - [Config] CONFIG_PHY_QCOM_USB_SS=m + - [Config] CONFIG_PINCTRL_DA9062=m + - [Config] CONFIG_PINCTRL_IPQ6018=m + - [Config] CONFIG_PTP_1588_CLOCK_IDT82P33=m + - [Config] CONFIG_PTP_1588_CLOCK_VMW=m + - [Config] CONFIG_QCOM_IPA=m + - [Config] CONFIG_REGULATOR_MP5416=m + - [Config] CONFIG_REGULATOR_MP886X=m + - [Config] CONFIG_RN5T618_ADC=m + - [Config] CONFIG_RTC_DRV_MT2712=m + - [Config] CONFIG_RTC_DRV_RC5T619=m + - [Config] CONFIG_SC_MSS_7180=m + - [Config] CONFIG_SENSORS_AXI_FAN_CONTROL=m + - [Config] CONFIG_SM_GCC_8250=m + - [Config] CONFIG_SND_BCM63XX_I2S_WHISTLER=m + - [Config] CONFIG_SND_MESON_AIU=m + - [Config] CONFIG_SND_MESON_G12A_TOACODEC=m + - [Config] CONFIG_SND_MESON_GX_SOUND_CARD=m + - [Config] CONFIG_SND_SOC_AMD_RV_RT5682_MACH=m + - [Config] CONFIG_SND_SOC_INTEL_SOF_PCM512x_MACH=m + - [Config] CONFIG_SND_SOC_MESON_T9015=m + - [Config] CONFIG_SND_SOC_RT5682_SDW=m + - [Config] CONFIG_SND_SOC_TLV320ADCX140=m + - [Config] CONFIG_SPI_FSI=m + - [Config] CONFIG_SPI_MTK_NOR=m + - [Config] CONFIG_SPI_MUX=m + - [Config] CONFIG_SPRD_THERMAL=m + - [Config] CONFIG_SURFACE_3_POWER_OPREGION=m + - [Config] CONFIG_TINYDRM_ILI9486=m + - [Config] CONFIG_TI_K3_AM65_CPSW_NUSS=m + - [Config] CONFIG_TYPEC_MUX_INTEL_PMC=m + - [Config] CONFIG_UACCE=m + - [Config] CONFIG_UNIPHIER_XDMAC=m + - [Config] CONFIG_USB_MAX3420_UDC=m + - [Config] CONFIG_USB_RAW_GADGET=m + - [Config] CONFIG_VHOST_VDPA=m + - [Config] CONFIG_VIDEO_IMX219=m + - [Config] CONFIG_VIDEO_SUN8I_ROTATE=m + - [Config] CONFIG_VIRTIO_VDPA=m + - [Config] CONFIG_MOST_COMPONENTS=m + - [Config] CONFIG_MFD_IQS62X=m + - packaging: getabis: switch to ckt-ppa:bootstrap/linux-5.7 + * Miscellaneous upstream changes + - Revert "UBUNTU: SAUCE: rtw88: add rtw_read8_mask and rtw_read16_mask" + - Revert "UBUNTU: SAUCE: drm/i915/fbc: disable framebuffer compression on + IceLake" + - Revert "UBUNTU: SAUCE: platform/x86: dell-uart-backlight: move retry block" + + [ Ubuntu: 5.7.0-1.2 ] + + * Packaging resync (LP: #1786013) + - [Packaging] update helper scripts + * Miscellaneous Ubuntu changes + - SAUCE: hio: pass make_request ptr directly to blk_alloc_queue() + - SAUCE: hio: locally define disk_map_sector_rcu() + - SAUCE: hio: Revert "block: unexport disk_map_sector_rcu" + - SAUCE: hio: include + - [Config] amd64: i386: HIO=m + - [Config] updateconfigs after 5.7-rc3 rebase + + [ Ubuntu: 5.7.0-0.1 ] + + * Miscellaneous Ubuntu changes + - [Config] updateconfigs after rebase to 5.7-rc1 + * Rebase to v5.7-rc1 + * Rebase to v5.7-rc2 + + [ Ubuntu: 5.7.0-0.0 ] + + * Dummy entry + + [ Ubuntu: 5.6.0-7.7 ] + + * Packaging resync (LP: #1786013) + - update dkms package versions + * Kernel Oops - general protection fault: 0000 [#1] SMP PTI after + disconnecting thunderbolt docking station (LP: #1864754) + - SAUCE: ptp: free ptp clock properly + * swap storms kills interactive use (LP: #1861359) + - SAUCE: mm/page_alloc.c: disable memory reclaim watermark boosting by default + * sysfs: incorrect network device permissions on network namespace change + (LP: #1865359) + - sysfs: add sysfs_file_change_owner() + - sysfs: add sysfs_link_change_owner() + - sysfs: add sysfs_group{s}_change_owner() + - sysfs: add sysfs_change_owner() + - device: add device_change_owner() + - drivers/base/power: add dpm_sysfs_change_owner() + - net-sysfs: add netdev_change_owner() + - net-sysfs: add queue_change_owner() + - net: fix sysfs permssions when device changes network namespace + - sysfs: fix static inline declaration of sysfs_groups_change_owner() + * Miscellaneous Ubuntu changes + - [Config] updateconfigs after rebase to 5.6 + * Rebase to v5.6 + + [ Ubuntu: 5.6.0-6.6 ] + + * suspend only works once on ThinkPad X1 Carbon gen 7 (LP: #1865570) + - SAUCE: e1000e: Disable s0ix flow for X1 Carbon 7th + * Make Dell WD19 dock more reliable after suspend (LP: #1868217) + - xhci: Ensure link state is U3 after setting USB_SS_PORT_LS_U3 + - xhci: Wait until link state trainsits to U0 after setting USB_SS_PORT_LS_U0 + - xhci: Finetune host initiated USB3 rootport link suspend and resume + * update-version-dkms doesn't add a BugLink (LP: #1867790) + - [Packaging] Add BugLink to update-version-dkms commit + * Add support for Realtek 8723DE wireless adapter (LP: #1780590) + - SAUCE: rtw88: add regulatory process strategy for different chipset + - SAUCE: rtw88: support dynamic user regulatory setting + - SAUCE: rtw88: Use secondary channel offset enumeration + - SAUCE: rtw88: 8822c: modify rf protection setting + - SAUCE: rtw88: disable TX-AMSDU on 2.4G band + - SAUCE: Revert "rtw88: disable TX-AMSDU on 2.4G band" + - SAUCE: rtw88: disable TX-AMSDU on 2.4G band + - SAUCE: rtw88: remove unused parameter vif in rtw_lps_pg_info_get() + - SAUCE: rtw88: add rtw_read8_mask and rtw_read16_mask + - SAUCE: rtw88: pci: 8822c should set clock delay to zero + - SAUCE: rtw88: move rtw_enter_ips() to the last when config + - SAUCE: rtw88: avoid holding mutex for cancel_delayed_work_sync() + - SAUCE: rtw88: add ciphers to suppress error message + - SAUCE: rtw88: 8822c: update power sequence to v16 + - SAUCE: rtw88: Fix incorrect beamformee role setting + - SAUCE: rtw88: don't hold all IRQs disabled for PS operations + - SAUCE: rtw88: extract alloc rsvd_page and h2c skb routines + - SAUCE: rtw88: associate reserved pages with each vif + - SAUCE: rtw88: add adaptivity support for EU/JP regulatory + - SAUCE: rtw88: 8723d: Add basic chip capabilities + - SAUCE: rtw88: 8723d: add beamform wrapper functions + - SAUCE: rtw88: 8723d: Add power sequence + - SAUCE: rtw88: 8723d: Add RF read/write ops + - SAUCE: rtw88: 8723d: Add mac/bb/rf/agc/power_limit tables + - SAUCE: rtw88: 8723d: Add cfg_ldo25 to control LDO25 + - SAUCE: rtw88: 8723d: Add new chip op efuse_grant() to control efuse access + - SAUCE: rtw88: 8723d: Add read_efuse to recognize efuse info from map + - SAUCE: rtw88: add legacy firmware download for 8723D devices + - SAUCE: rtw88: no need to send additional information to legacy firmware + - SAUCE: rtw88: 8723d: Add mac power-on/-off function + - SAUCE: rtw88: decompose while(1) loop of power sequence polling command + - SAUCE: rtw88: 8723d: 11N chips don't support H2C queue + - SAUCE: rtw88: 8723d: implement set_tx_power_index ops + - SAUCE: rtw88: 8723d: Organize chip TX/RX FIFO + - SAUCE: rtw88: 8723d: initialize mac/bb/rf basic functions + - SAUCE: rtw88: 8723d: Add DIG parameter + - SAUCE: rtw88: 8723d: Add query_rx_desc + - SAUCE: rtw88: 8723d: Add set_channel + - SAUCE: rtw88: handle C2H_CCX_TX_RPT to know if packet TX'ed successfully + - SAUCE: rtw88: 8723d: 11N chips don't support LDPC + - SAUCE: rtw88: set default port to firmware + - SAUCE: rtw88: update tx descriptor of mgmt and rsvd page packets + - SAUCE: rtw88: sar: add SAR of TX power limit + - SAUCE: rtw88: sar: Load static SAR table from ACPI WRDS method + - SAUCE: rtw88: sar: Load dynamic SAR table from ACPI methods + - SAUCE: rtw88: sar: apply dynamic SAR table to tx power limit + - SAUCE: rtw88: sar: add sar_work to poll if dynamic SAR table is changed + - SAUCE: rtw88: sar: dump sar information via debugfs + - SAUCE: rtw88: 8723d: Add chip_ops::false_alarm_statistics + - SAUCE: rtw88: 8723d: Set IG register for CCK rate + - SAUCE: rtw88: 8723d: add interface configurations table + - SAUCE: rtw88: 8723d: Add LC calibration + - SAUCE: rtw88: 8723d: add IQ calibration + - SAUCE: rtw88: 8723d: Add power tracking + - SAUCE: rtw88: 8723d: Add shutdown callback to disable BT USB suspend + - SAUCE: rtw88: 8723d: implement flush queue + - SAUCE: rtw88: 8723d: set ltecoex register address in chip_info + - SAUCE: rtw88: 8723d: Add coex support + - SAUCE: rtw88: fill zeros to words 0x06 and 0x07 of security cam entry + - SAUCE: rtw88: 8723d: Add 8723DE to Kconfig and Makefile + - [Config] CONFIG_RTW88_8723DE=y + * [Ubuntu 20.04] Unset HIBERNATION and PM kernel config options for focal + (LP: #1867753) + - [Config] CONFIG_HIBERNATION=n and CONFIG_PM=n for s390x + * [20.04 FEAT] Base KVM setup for secure guests - kernel part (LP: #1835531) + - s390/protvirt: introduce host side setup + - s390/protvirt: add ultravisor initialization + - s390/mm: provide memory management functions for protected KVM guests + - s390/mm: add (non)secure page access exceptions handlers + - s390/protvirt: Add sysfs firmware interface for Ultravisor information + - KVM: s390/interrupt: do not pin adapter interrupt pages + - KVM: s390: protvirt: Add UV debug trace + - KVM: s390: add new variants of UV CALL + - KVM: s390: protvirt: Add initial vm and cpu lifecycle handling + - KVM: s390: protvirt: Secure memory is not mergeable + - KVM: s390/mm: Make pages accessible before destroying the guest + - KVM: s390: protvirt: Handle SE notification interceptions + - KVM: s390: protvirt: Instruction emulation + - KVM: s390: protvirt: Implement interrupt injection + - KVM: s390: protvirt: Add SCLP interrupt handling + - KVM: s390: protvirt: Handle spec exception loops + - KVM: s390: protvirt: Add new gprs location handling + - KVM: S390: protvirt: Introduce instruction data area bounce buffer + - KVM: s390: protvirt: handle secure guest prefix pages + - KVM: s390/mm: handle guest unpin events + - KVM: s390: protvirt: Write sthyi data to instruction data area + - KVM: s390: protvirt: STSI handling + - KVM: s390: protvirt: disallow one_reg + - KVM: s390: protvirt: Do only reset registers that are accessible + - KVM: s390: protvirt: Only sync fmt4 registers + - KVM: s390: protvirt: Add program exception injection + - KVM: s390: protvirt: UV calls in support of diag308 0, 1 + - KVM: s390: protvirt: Report CPU state to Ultravisor + - KVM: s390: protvirt: Support cmd 5 operation state + - KVM: s390: protvirt: Mask PSW interrupt bits for interception 104 and 112 + - KVM: s390: protvirt: do not inject interrupts after start + - KVM: s390: protvirt: Add UV cpu reset calls + - DOCUMENTATION: Protected virtual machine introduction and IPL + - KVM: s390: protvirt: introduce and enable KVM_CAP_S390_PROTECTED + - KVM: s390: protvirt: Add KVM api documentation + - mm/gup/writeback: add callbacks for inaccessible pages + * All PS/2 ports on PS/2 Serial add-in bracket are not working after S3 + (LP: #1866734) + - SAUCE: Input: i8042 - fix the selftest retry logic + * Sys oopsed with sysfs test in ubuntu_stress_smoke_test on X-hwe ARM64 + (LP: #1866772) + - ACPI: sysfs: copy ACPI data using io memory copying + * Miscellaneous Ubuntu changes + - hio -- remove duplicated MODULE_DEVICE_TABLE declaration + - SAUCE: r8169: disable ASPM L1.1 + - [Config] update annotations from configs + - [Config] update configs after annotation file review + - SAUCE: Revert "tools/power turbostat: Fix 32-bit capabilities warning" + * Miscellaneous upstream changes + - drm/i915: Fix eDP DPCD aux max backlight calculations + - drm/dp: Introduce EDID-based quirks + - drm/i915: Force DPCD backlight mode on X1 Extreme 2nd Gen 4K AMOLED panel + - drm/i915: Force DPCD backlight mode for some Dell CML 2020 panels + * Rebase to v5.6-rc7 + + [ Ubuntu: 5.6.0-5.5 ] + + * please help enable CONFIG_EROFS_FS_ZIP (LP: #1867099) + - [Config] CONFIG_EROFS_FS_ZIP=y + - [Config] CONFIG_EROFS_FS_CLUSTER_PAGE_LIMIT=1 + * Miscellaneous Ubuntu changes + - Config: Fix SND_HDA_PREALLOC_SIZE annotations + - Config: Fix DATA_SHIFT annotations + - Config: remove ANDROID_VSOC from annotations + - Config: remove arm arch from annotations + - Config: Update SOC_R8A7796X annotations + - Config: Update CLK_R8A7796X annotations + - update dkms package versions + - [Config] updateconfigs after rebase to 5.6-rc6 + * Rebase to v5.6-rc6 + + [ Ubuntu: 5.6.0-4.4 ] + + * Packaging resync (LP: #1786013) + - [Packaging] resync getabis + - [Packaging] update helper scripts + * Add sysfs attribute to show remapped NVMe (LP: #1863621) + - SAUCE: ata: ahci: Add sysfs attribute to show remapped NVMe device count + * [20.04 FEAT] Compression improvements in Linux kernel (LP: #1830208) + - [Config] Introducing s390x specific kernel config option CONFIG_ZLIB_DFLTCC + * [UBUNTU 20.04] s390x/pci: increase CONFIG_PCI_NR_FUNCTIONS to 512 in kernel + config (LP: #1866056) + - [Config] Increase CONFIG_PCI_NR_FUNCTIONS from 64 to 512 starting with focal + on s390x + * CONFIG_IP_MROUTE_MULTIPLE_TABLES is not set (LP: #1865332) + - [Config] CONFIG_IP_MROUTE_MULTIPLE_TABLES=y + * [UBUNTU 20.04] Enable CONFIG_NET_SWITCHDEV in kernel config for s390x + starting with focal (LP: #1865452) + - [Config] Enable CONFIG_NET_SWITCHDEV in kernel config for s390x starting + with focal + * Miscellaneous Ubuntu changes + - SAUCE: Revert "UBUNTU: SAUCE: blk/core: Gracefully handle unset + make_request_fn" + - [Packaging] prevent duplicated entries in modules.ignore + - update dkms package versions + - [Config] updateconfigs after rebase to 5.6-rc5 + * Rebase to v5.6-rc5 + + [ Ubuntu: 5.6.0-3.3 ] + + * nsleep-lat / set-timer-lat / inconsistency-check / raw_skew from timer in + ubuntu_kernel_selftests timeout on 5.3 / 5.4 (LP: #1864626) + - selftests/timers: Turn off timeout setting + * Update kernel options CONFIG_NR_CPUS and CONFIG_NUMA_EMU for focal + (LP: #1864198) + - Ubuntu: [Config] Update kernel options CONFIG_NR_CPUS and CONFIG_NUMA_EMU + * alsa/hda/realtek: fix a mute led regression on Lenovo X1 Carbon + (LP: #1864576) + - SAUCE: ALSA: hda/realtek - Fix a regression for mute led on Lenovo Carbon X1 + * r8152 init may take up to 40 seconds at initialization with Dell WD19/WD19DC + during hotplug (LP: #1864284) + - UBUNTU SAUCE: r8151: check disconnect status after long sleep + * Another Dell AIO backlight issue (LP: #1863880) + - SAUCE: platform/x86: dell-uart-backlight: move retry block + * Backport GetFB2 ioctl (LP: #1863874) + - SAUCE: drm: Add getfb2 ioctl + * Focal Fossa (20.04) feature request - Enable CONFIG_X86_UV (LP: #1863810) + - [Config] CONFIG_X86_UV=y + * Miscellaneous Ubuntu changes + - debian: remove snapdragon config, rules and flavour + - remove snapdragon abi files + - update dkms package versions + - [Config] updateconfigs after rebase to 5.6-rc4 + * Miscellaneous upstream changes + - updateconfigs following snapdragon removal + * Rebase to v5.6-rc4 + + [ Ubuntu: 5.6.0-2.2 ] + + * Sometimes can't adjust brightness on Dell AIO (LP: #1862885) + - SAUCE: platform/x86: dell-uart-backlight: increase retry times + * Dell XPS 13 (7390) Display Flickering - 19.10 (LP: #1849947) + - SAUCE: drm/i915: Disable PSR by default on all platforms + * Miscellaneous Ubuntu changes + - [debian] ignore missing wireguard module + - SAUCE: (lockdown) Add efi_status_to_str() and rework efi_status_to_err(). + - SAUCE: (lockdown) security: lockdown: expose a hook to lock the kernel down + - SAUCE: (lockdown) efi: Add an EFI_SECURE_BOOT flag to indicate secure boot + mode + - SAUCE: (lockdown) efi: Lock down the kernel if booted in secure boot mode + - SAUCE: (lockdown) s390: Lock down the kernel when the IPL secure flag is set + - SAUCE: (lockdown) KEYS: Make use of platform keyring for module signature + verify + - SAUCE: (lockdown) arm64: Allow locking down the kernel under EFI secure boot + - SAUCE: (lockdown) security: lockdown: Make + CONFIG_LOCK_DOWN_IN_EFI_SECURE_BOOT more generic + - [Config] CONFIG_LOCK_DOWN_IN_SECURE_BOOT=y + - update dkms package versions + - [Config] updateconfigs after rebase to 5.6-rc3 + * Miscellaneous upstream changes + - Revert "UBUNTU: SAUCE: (lockdown) s390/ipl: lockdown kernel when booted + secure" + - Revert "UBUNTU: SAUCE: (lockdown) KEYS: Make use of platform keyring for + module signature verify" + - Revert "UBUNTU: SAUCE: (lockdown) Add a SysRq option to lift kernel + lockdown" + - Revert "UBUNTU: SAUCE: (lockdown) security: lockdown: expose a hook to lock + the kernel down" + - Revert "UBUNTU: SAUCE: (lockdown) Add efi_status_to_str() and rework + efi_status_to_err()." + + [ Ubuntu: 5.6.0-1.1 ] + + * Integrate Intel SGX driver into linux-azure (LP: #1844245) + - [Packaging] Add systemd service to load intel_sgx + * QAT drivers for C3XXX and C62X not included as modules (LP: #1845959) + - [Config] CRYPTO_DEV_QAT_C3XXX=m, CRYPTO_DEV_QAT_C62X=m and + CRYPTO_DEV_QAT_DH895xCC=m + * 5.4.0-11 crash on cryptsetup open (LP: #1860231) + - SAUCE: blk/core: Gracefully handle unset make_request_fn + * multi-zone raid0 corruption (LP: #1850540) + - SAUCE: md/raid0: Use kernel specific layout + * Miscellaneous Ubuntu changes + - update dkms package versions + - update dropped.txt after rebase to v5.6-rc1 + - [Config] updateconfigs after rebase to 5.6-rc1 + - hio -- proc_create() requires a "struct proc_ops" in 5.6 + - SAUCE: arm: fix build error in kvm tracepoint + * Miscellaneous upstream changes + - Revert "UBUNTU: [Config] Disable the uselib system call" + - Revert "UBUNTU: [Config] Disable legacy PTY naming" + - Revert "UBUNTU: [Config] Enforce filtered access to iomem" + - Revert "UBUNTU: [Config] Enable notifier call chain validations" + - Revert "UBUNTU: [Config] Enable scatterlist validation" + - Revert "UBUNTU: [Config] Enable cred sanity checks" + - Revert "UBUNTU: [Config] Enable linked list manipulation checks" + * Rebase to v5.6-rc1 + + [ Ubuntu: 5.6.0-0.0 ] + + * Dummy entry + + [ Ubuntu: 5.5.0-7.8 ] + + * CONFIG_USELIB should be disabled (LP: #1855341) + - [Config] Disable the uselib system call + * CONFIG_LEGACY_PTYS should be disabled (LP: #1855339) + - [Config] Disable legacy PTY naming + * CONFIG_IO_STRICT_DEVMEM should be enabled (LP: #1855338) + - [Config] Enforce filtered access to iomem + * CONFIG_DEBUG_NOTIFIERS should be enabled (LP: #1855337) + - [Config] Enable notifier call chain validations + * CONFIG_DEBUG_SG should be enabled (LP: #1855336) + - [Config] Enable scatterlist validation + * CONFIG_DEBUG_CREDENTIALS should be enabled (LP: #1855335) + - [Config] Enable cred sanity checks + * CONFIG_DEBUG_LIST should be enabled (LP: #1855334) + - [Config] Enable linked list manipulation checks + * shiftfs: prevent lower dentries from going negative during unlink + (LP: #1860041) + - SAUCE: shiftfs: prevent lower dentries from going negative during unlink + * [SRU][B/OEM-B/OEM-OSP1/D/E/Unstable] UBUNTU: SAUCE: Use native backlight on + Lenovo E41-25/45 (LP: #1859561) + - SAUCE: ACPI: video: Use native backlight on Lenovo E41-25/45 + * USB key cannot be detected by hotplug on Sunix USB Type-A 3.1 Gen 2 card + [1b21:2142] (LP: #1858988) + - SAUCE: PCI: Avoid ASMedia XHCI USB PME# from D0 defect + * Dell AIO can't adjust brightness (LP: #1858761) + - SAUCE: platform/x86: dell-uart-backlight: add retry for get scalar status + * Miscellaneous Ubuntu changes + - [Config] Fix typo in annotations file + - update dkms package versions + * Rebase to v5.5 + + [ Ubuntu: 5.5.0-6.7 ] + + * Miscellaneous Ubuntu changes + - [Packaging] Update ubuntu-regression-suite dependency to python2 + - [Packaging] Fix ubuntu-regression-suite python dependency for hwe kernel + - update dkms package versions + * Rebase to v5.5-rc7 + + [ Ubuntu: 5.5.0-5.6 ] + + * Miscellaneous Ubuntu changes + - update dkms package versions + * Rebase to v5.5-rc6 + + [ Ubuntu: 5.5.0-4.5 ] + + * linux build and autopkg tests need to use python2 instead of python + (LP: #1858487) + - [Packaging] Remove python-dev build dependency + + [ Ubuntu: 5.5.0-3.4 ] + + * [SRU][B/OEM-B/OEM-OSP1/D/E/F] Add LG I2C touchscreen multitouch support + (LP: #1857541) + - SAUCE: HID: multitouch: Add LG MELF0410 I2C touchscreen support + * Make vfio-pci built-in or xhci_hcd optional (LP: #1770845) + - [Config]: built-in VFIO_PCI for amd64 + * multi-zone raid0 corruption (LP: #1850540) + - SAUCE: md/raid0: Link to wiki with guidance on multi-zone RAID0 layout + migration + * Packaging resync (LP: #1786013) + - [Packaging] update variants + * Miscellaneous Ubuntu changes + - [Packaging] Change source package to linux-5.5 + - [Packaging] Don't use SRCPKGNAME for linux-libc-dev + - [Packaging] Remove linux-source-3 Provides: from linux-source + - [Packaging] Fix linux-doc in linux-image Suggests: + - [Debian] Read variants list into a variable + - [Packaging] Generate linux-libc-dev package only for primary variant + - [Packaging] Generate linux-doc for only the primary variant + - [Debian] Update linux source package name in debian/tests/* + - update dkms package versions + - [Config] updateconfigs after rebase to 5.5-rc3 + - [Config] disable PCI_MESON + - [Config] Add pinctrl-equilibrium to modules.ignore + * Rebase to v5.5-rc5 + + [ Ubuntu: 5.5.0-2.3 ] + + * Empty entry. + + [ Ubuntu: 5.5.0-2.3 ] + + * Support DPCD aux brightness control (LP: #1856134) + - SAUCE: drm/i915: Fix eDP DPCD aux max backlight calculations + - SAUCE: drm/i915: Assume 100% brightness when not in DPCD control mode + - SAUCE: drm/i915: Fix DPCD register order in intel_dp_aux_enable_backlight() + - SAUCE: drm/i915: Auto detect DPCD backlight support by default + - SAUCE: drm/i915: Force DPCD backlight mode on X1 Extreme 2nd Gen 4K AMOLED + panel + - USUNTU: SAUCE: drm/i915: Force DPCD backlight mode on Dell Precision 4K sku + * change kconfig of the soundwire bus driver from y to m (LP: #1855685) + - [Config]: SOUNDWIRE=m + * 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 + * Miscellaneous Ubuntu changes + - [Debian] add python depends to ubuntu-regression-suite + - SAUCE: selftests: net: tls: remove recv_rcvbuf test + - update dkms package versions + * Miscellaneous upstream changes + - [Config] updateconfigs after rebase to 5.5-rc2 + + [ Ubuntu: 5.5.0-1.2 ] + + * Miscellaneous Ubuntu changes + - [Config] disable nvidia dkms build + - [Config] disable virtualbox dkms build + - [Config] disable zfs dkms build + - update dropped.txt after rebase to v5.5-rc1 + - SAUCE: (lockdown) Make get_cert_list() not complain about cert lists that + aren't present. + - SAUCE: (lockdown) Add efi_status_to_str() and rework efi_status_to_err(). + - SAUCE: (lockdown) Make get_cert_list() use efi_status_to_str() to print + error messages. + - SAUCE: (lockdown) security: lockdown: expose a hook to lock the kernel down + - SAUCE: (lockdown) efi: Add an EFI_SECURE_BOOT flag to indicate secure boot + mode + - SAUCE: (lockdown) efi: Lock down the kernel if booted in secure boot mode + - SAUCE: (lockdown) Add a SysRq option to lift kernel lockdown + - SAUCE: (lockdown) KEYS: Make use of platform keyring for module signature + verify + - SAUCE: (lockdown) arm64: Allow locking down the kernel under EFI secure boot + - SAUCE: (lockdown) security: lockdown: Make + CONFIG_LOCK_DOWN_IN_EFI_SECURE_BOOT more generic + - SAUCE: (lockdown) s390/ipl: lockdown kernel when booted secure + - [Config] Enable lockdown under secure boot + - update dkms package versions + + [ Ubuntu: 5.5.0-0.1 ] + + * Miscellaneous Ubuntu changes + - [Config] updateconfigs after rebase to 5.5-rc1 + [ Upstream Kernel Changes ] + * Rebase to v5.5-rc1 + + [ Ubuntu: 5.5.0-0.0 ] + + * Dummy entry. + + -- Paolo Pisati Mon, 10 Aug 2020 12:27:33 +0200 + +linux-azure (5.8.0-1000.0) groovy; urgency=medium + + * Dummy entry. + + -- Paolo Pisati Mon, 10 Aug 2020 12:18:34 +0200 + +linux-azure (5.4.0-1022.22) focal; urgency=medium + + * focal/linux-azure: 5.4.0-1022.22 -proposed tracker (LP: #1887060) + + [ Ubuntu: 5.4.0-42.46 ] + + * focal/linux: 5.4.0-42.46 -proposed tracker (LP: #1887069) + * linux 4.15.0-109-generic network DoS regression vs -108 (LP: #1886668) + - SAUCE: Revert "netprio_cgroup: Fix unlimited memory leak of v2 cgroups" + + -- Khalid Elmously Fri, 10 Jul 2020 01:51:58 -0400 + +linux-azure (5.4.0-1021.21) focal; urgency=medium + + * focal/linux-azure: 5.4.0-1021.21 -proposed tracker (LP: #1885845) + + * module intel_sgx appears to be blacklisted by the kernel. (LP: #1862201) + - Revert "UBUNTU: [Packaging] linux-azure: Prevent intel_sgx from being + automatically loaded" + - [Packaging] linux-azure: Divert conf files blacklisting intel_sgx + + * Add XDP support to hv_netvsc driver (LP: #1877654) + - hv_netvsc: Add XDP support + - hv_netvsc: Update document for XDP support + - hv_netvsc: Fix XDP refcnt for synthetic and VF NICs + + * Request to include two NUMA related commits in Azure kernels (LP: #1880975) + - PCI: hv: Decouple the func definition in hv_dr_state from VSP message + - PCI: hv: Add support for protocol 1.3 and support PCI_BUS_RELATIONS2 + + [ Ubuntu: 5.4.0-41.45 ] + + * focal/linux: 5.4.0-41.45 -proposed tracker (LP: #1885855) + * Packaging resync (LP: #1786013) + - update dkms package versions + * CVE-2019-19642 + - kernel/relay.c: handle alloc_percpu returning NULL in relay_open + * CVE-2019-16089 + - SAUCE: nbd_genl_status: null check for nla_nest_start + * CVE-2020-11935 + - aufs: do not call i_readcount_inc() + * ip_defrag.sh in net from ubuntu_kernel_selftests failed with 5.0 / 5.3 / 5.4 + kernel (LP: #1826848) + - selftests: net: ip_defrag: ignore EPERM + * Update lockdown patches (LP: #1884159) + - SAUCE: acpi: disallow loading configfs acpi tables when locked down + * seccomp_bpf fails on powerpc (LP: #1885757) + - SAUCE: selftests/seccomp: fix ptrace tests on powerpc + * Introduce the new NVIDIA 418-server and 440-server series, and update the + current NVIDIA drivers (LP: #1881137) + - [packaging] add signed modules for the 418-server and the 440-server + flavours + + -- Marcelo Henrique Cerri Wed, 08 Jul 2020 17:24:21 -0300 + +linux-azure (5.4.0-1020.20) focal; urgency=medium + + * focal/linux-azure: 5.4.0-1020.20 -proposed tracker (LP: #1885048) + + * linux-azure: Update SGX version to version LD_1.33 (LP: #1881338) + - SAUCE: linux-azure: Update SGX to version LD_1.33 + - SAUCE: ubuntu/sgx: Add module alias for ACPI device INT0E0C + + * [linux-azure] Enable Hibernation on The 18.04 and 20.04 5.4 Kernels + (LP: #1880032) + - x86/hyperv: Initialize clockevents earlier in CPU onlining + - scsi: storvsc: Add the support of hibernation + - video: hyperv_fb: Add the support of hibernation + - hv_sock: Add the support of hibernation + - hv_netvsc: Add the support of hibernation + - x86/hyperv: Implement hv_is_hibernation_supported() + - hv_balloon: Add the support of hibernation + - HID: hyperv: Add the support of hibernation + - PCI: hv: Reorganize the code in preparation of hibernation + - PCI: hv: Add hibernation support + - clocksource/drivers/hyper-v: Suspend/resume Hyper-V clocksource for + hibernation + - Input: hyperv-keyboard: Add the support of hibernation + - video: hyperv_fb: Fix hibernation for the deferred IO feature + - Tools: hv: Reopen the devices if read() or write() returns errors + - hv_utils: Support host-initiated restart request + - hv_utils: Support host-initiated hibernation request + - hv_utils: Add the support of hibernation + - x86/hyperv: Suspend/resume the hypercall page for hibernation + - PM: hibernate: Propagate the return value of hibernation_restore() + - x86/hyperv: Suspend/resume the VP assist page for hibernation + - net/mlx5: Fix crash upon suspend/resume + + [ Ubuntu: 5.4.0-40.44 ] + + * linux-oem-5.6-tools-common and -tools-host should be dropped (LP: #1881120) + - [Packaging] Add Conflicts/Replaces to remove linux-oem-5.6-tools-common and + -tools-host + * Packaging resync (LP: #1786013) + - [Packaging] update helper scripts + * Slow send speed with Intel I219-V on Ubuntu 18.04.1 (LP: #1802691) + - e1000e: Disable TSO for buffer overrun workaround + * CVE-2020-0543 + - UBUNTU/SAUCE: x86/speculation/srbds: do not try to turn mitigation off when + not supported + * Realtek 8723DE [10ec:d723] subsystem [10ec:d738] disconnects unsolicitedly + when Bluetooth is paired: Reason: 23=IEEE8021X_FAILED (LP: #1878147) + - SAUCE: Revert "UBUNTU: SAUCE: rtw88: Move driver IQK to set channel before + association for 11N chip" + - SAUCE: Revert "UBUNTU: SAUCE: rtw88: fix rate for a while after being + connected" + - SAUCE: Revert "UBUNTU: SAUCE: rtw88: No retry and report for auth and assoc" + - SAUCE: Revert "UBUNTU: SAUCE: rtw88: 8723d: Add coex support" + - rtw88: add a debugfs entry to dump coex's info + - rtw88: add a debugfs entry to enable/disable coex mechanism + - rtw88: 8723d: Add coex support + - SAUCE: rtw88: coex: 8723d: set antanna control owner + - SAUCE: rtw88: coex: 8723d: handle BT inquiry cases + - SAUCE: rtw88: fix EAPOL 4-way failure by finish IQK earlier + * CPU stress test fails with focal kernel (LP: #1867900) + - [Config] Disable hisi_sec2 temporarily + * Enforce all config annotations (LP: #1879327) + - [Config]: do not enforce CONFIG_VERSION_SIGNATURE + - [Config]: prepare to enforce all + - [Config]: enforce all config options + * Focal update: v5.4.44 upstream stable release (LP: #1881927) + - ax25: fix setsockopt(SO_BINDTODEVICE) + - dpaa_eth: fix usage as DSA master, try 3 + - net: don't return invalid table id error when we fall back to PF_UNSPEC + - net: dsa: mt7530: fix roaming from DSA user ports + - net: ethernet: ti: cpsw: fix ASSERT_RTNL() warning during suspend + - __netif_receive_skb_core: pass skb by reference + - net: inet_csk: Fix so_reuseport bind-address cache in tb->fast* + - net: ipip: fix wrong address family in init error path + - net/mlx5: Add command entry handling completion + - net: mvpp2: fix RX hashing for non-10G ports + - net: nlmsg_cancel() if put fails for nhmsg + - net: qrtr: Fix passing invalid reference to qrtr_local_enqueue() + - net: revert "net: get rid of an signed integer overflow in + ip_idents_reserve()" + - net sched: fix reporting the first-time use timestamp + - net/tls: fix race condition causing kernel panic + - nexthop: Fix attribute checking for groups + - r8152: support additional Microsoft Surface Ethernet Adapter variant + - sctp: Don't add the shutdown timer if its already been added + - sctp: Start shutdown on association restart if in SHUTDOWN-SENT state and + socket is closed + - tipc: block BH before using dst_cache + - net/mlx5e: kTLS, Destroy key object after destroying the TIS + - net/mlx5e: Fix inner tirs handling + - net/mlx5: Fix memory leak in mlx5_events_init + - net/mlx5e: Update netdev txq on completions during closure + - net/mlx5: Fix error flow in case of function_setup failure + - net/mlx5: Annotate mutex destroy for root ns + - net/tls: fix encryption error checking + - net/tls: free record only on encryption error + - net: sun: fix missing release regions in cas_init_one(). + - net/mlx4_core: fix a memory leak bug. + - mlxsw: spectrum: Fix use-after-free of split/unsplit/type_set in case reload + fails + - ARM: dts: rockchip: fix phy nodename for rk3228-evb + - ARM: dts: rockchip: fix phy nodename for rk3229-xms6 + - arm64: dts: rockchip: fix status for &gmac2phy in rk3328-evb.dts + - arm64: dts: rockchip: swap interrupts interrupt-names rk3399 gpu node + - ARM: dts: rockchip: swap clock-names of gpu nodes + - ARM: dts: rockchip: fix pinctrl sub nodename for spi in rk322x.dtsi + - gpio: tegra: mask GPIO IRQs during IRQ shutdown + - ALSA: usb-audio: add mapping for ASRock TRX40 Creator + - net: microchip: encx24j600: add missed kthread_stop + - gfs2: move privileged user check to gfs2_quota_lock_check + - gfs2: Grab glock reference sooner in gfs2_add_revoke + - drm/amdgpu: drop unnecessary cancel_delayed_work_sync on PG ungate + - drm/amd/powerplay: perform PG ungate prior to CG ungate + - drm/amdgpu: Use GEM obj reference for KFD BOs + - cachefiles: Fix race between read_waiter and read_copier involving op->to_do + - usb: dwc3: pci: Enable extcon driver for Intel Merrifield + - usb: phy: twl6030-usb: Fix a resource leak in an error handling path in + 'twl6030_usb_probe()' + - usb: gadget: legacy: fix redundant initialization warnings + - net: freescale: select CONFIG_FIXED_PHY where needed + - IB/i40iw: Remove bogus call to netdev_master_upper_dev_get() + - riscv: stacktrace: Fix undefined reference to `walk_stackframe' + - clk: ti: am33xx: fix RTC clock parent + - csky: Fixup msa highest 3 bits mask + - csky: Fixup perf callchain unwind + - csky: Fixup remove duplicate irq_disable + - hwmon: (nct7904) Fix incorrect range of temperature limit registers + - cifs: Fix null pointer check in cifs_read + - csky: Fixup raw_copy_from_user() + - samples: bpf: Fix build error + - drivers: net: hamradio: Fix suspicious RCU usage warning in bpqether.c + - Input: usbtouchscreen - add support for BonXeon TP + - Input: evdev - call input_flush_device() on release(), not flush() + - Input: xpad - add custom init packet for Xbox One S controllers + - Input: dlink-dir685-touchkeys - fix a typo in driver name + - Input: i8042 - add ThinkPad S230u to i8042 reset list + - Input: synaptics-rmi4 - really fix attn_data use-after-free + - Input: synaptics-rmi4 - fix error return code in rmi_driver_probe() + - ARM: 8970/1: decompressor: increase tag size + - ARM: uaccess: consolidate uaccess asm to asm/uaccess-asm.h + - ARM: uaccess: integrate uaccess_save and uaccess_restore + - ARM: uaccess: fix DACR mismatch with nested exceptions + - gpio: exar: Fix bad handling for ida_simple_get error path + - arm64: dts: mt8173: fix vcodec-enc clock + - soc: mediatek: cmdq: return send msg error code + - gpu/drm: Ingenic: Fix opaque pointer casted to wrong type + - IB/qib: Call kobject_put() when kobject_init_and_add() fails + - ARM: dts/imx6q-bx50v3: Set display interface clock parents + - ARM: dts: bcm2835-rpi-zero-w: Fix led polarity + - ARM: dts: bcm: HR2: Fix PPI interrupt types + - mmc: block: Fix use-after-free issue for rpmb + - gpio: pxa: Fix return value of pxa_gpio_probe() + - gpio: bcm-kona: Fix return value of bcm_kona_gpio_probe() + - RDMA/pvrdma: Fix missing pci disable in pvrdma_pci_probe() + - ALSA: hwdep: fix a left shifting 1 by 31 UB bug + - ALSA: hda/realtek - Add a model for Thinkpad T570 without DAC workaround + - ALSA: usb-audio: mixer: volume quirk for ESS Technology Asus USB DAC + - exec: Always set cap_ambient in cap_bprm_set_creds + - clk: qcom: gcc: Fix parent for gpll0_out_even + - ALSA: usb-audio: Quirks for Gigabyte TRX40 Aorus Master onboard audio + - ALSA: hda/realtek - Add new codec supported for ALC287 + - libceph: ignore pool overlay and cache logic on redirects + - ceph: flush release queue when handling caps for unknown inode + - RDMA/core: Fix double destruction of uobject + - drm/amd/display: drop cursor position check in atomic test + - IB/ipoib: Fix double free of skb in case of multicast traffic in CM mode + - mm,thp: stop leaking unreleased file pages + - mm: remove VM_BUG_ON(PageSlab()) from page_mapcount() + - fs/binfmt_elf.c: allocate initialized memory in fill_thread_core_info() + - include/asm-generic/topology.h: guard cpumask_of_node() macro argument + - Revert "block: end bio with BLK_STS_AGAIN in case of non-mq devs and + REQ_NOWAIT" + - gpio: fix locking open drain IRQ lines + - iommu: Fix reference count leak in iommu_group_alloc. + - parisc: Fix kernel panic in mem_init() + - cfg80211: fix debugfs rename crash + - x86/syscalls: Revert "x86/syscalls: Make __X32_SYSCALL_BIT be unsigned long" + - mac80211: mesh: fix discovery timer re-arming issue / crash + - x86/dma: Fix max PFN arithmetic overflow on 32 bit systems + - copy_xstate_to_kernel(): don't leave parts of destination uninitialized + - xfrm: allow to accept packets with ipv6 NEXTHDR_HOP in xfrm_input + - xfrm: do pskb_pull properly in __xfrm_transport_prep + - xfrm: remove the xfrm_state_put call becofe going to out_reset + - xfrm: call xfrm_output_gso when inner_protocol is set in xfrm_output + - xfrm interface: fix oops when deleting a x-netns interface + - xfrm: fix a warning in xfrm_policy_insert_list + - xfrm: fix a NULL-ptr deref in xfrm_local_error + - xfrm: fix error in comment + - ip_vti: receive ipip packet by calling ip_tunnel_rcv + - netfilter: nft_reject_bridge: enable reject with bridge vlan + - netfilter: ipset: Fix subcounter update skip + - netfilter: conntrack: make conntrack userspace helpers work again + - netfilter: nfnetlink_cthelper: unbreak userspace helper support + - netfilter: nf_conntrack_pptp: prevent buffer overflows in debug code + - esp6: get the right proto for transport mode in esp6_gso_encap + - bnxt_en: Fix accumulation of bp->net_stats_prev. + - ieee80211: Fix incorrect mask for default PE duration + - xsk: Add overflow check for u64 division, stored into u32 + - qlcnic: fix missing release in qlcnic_83xx_interrupt_test. + - crypto: chelsio/chtls: properly set tp->lsndtime + - nexthops: Move code from remove_nexthop_from_groups to remove_nh_grp_entry + - nexthops: don't modify published nexthop groups + - nexthop: Expand nexthop_is_multipath in a few places + - ipv4: nexthop version of fib_info_nh_uses_dev + - net: dsa: declare lockless TX feature for slave ports + - bonding: Fix reference count leak in bond_sysfs_slave_add. + - netfilter: conntrack: comparison of unsigned in cthelper confirmation + - netfilter: conntrack: Pass value of ctinfo to __nf_conntrack_update + - netfilter: nf_conntrack_pptp: fix compilation warning with W=1 build + - perf: Make perf able to build with latest libbfd + - Linux 5.4.44 + * Focal update: v5.4.43 upstream stable release (LP: #1881178) + - i2c: dev: Fix the race between the release of i2c_dev and cdev + - KVM: SVM: Fix potential memory leak in svm_cpu_init() + - ima: Set file->f_mode instead of file->f_flags in ima_calc_file_hash() + - evm: Check also if *tfm is an error pointer in init_desc() + - ima: Fix return value of ima_write_policy() + - ubifs: fix wrong use of crypto_shash_descsize() + - ACPI: EC: PM: Avoid flushing EC work when EC GPE is inactive + - mtd: spinand: Propagate ECC information to the MTD structure + - fix multiplication overflow in copy_fdtable() + - ubifs: remove broken lazytime support + - i2c: fix missing pm_runtime_put_sync in i2c_device_probe + - iommu/amd: Fix over-read of ACPI UID from IVRS table + - evm: Fix a small race in init_desc() + - i2c: mux: demux-pinctrl: Fix an error handling path in + 'i2c_demux_pinctrl_probe()' + - ubi: Fix seq_file usage in detailed_erase_block_info debugfs file + - afs: Don't unlock fetched data pages until the op completes successfully + - mtd: Fix mtd not registered due to nvmem name collision + - kbuild: avoid concurrency issue in parallel building dtbs and dtbs_check + - net: drop_monitor: use IS_REACHABLE() to guard net_dm_hw_report() + - gcc-common.h: Update for GCC 10 + - HID: multitouch: add eGalaxTouch P80H84 support + - HID: alps: Add AUI1657 device ID + - HID: alps: ALPS_1657 is too specific; use U1_UNICORN_LEGACY instead + - scsi: qla2xxx: Fix hang when issuing nvme disconnect-all in NPIV + - scsi: qla2xxx: Delete all sessions before unregister local nvme port + - configfs: fix config_item refcnt leak in configfs_rmdir() + - vhost/vsock: fix packet delivery order to monitoring devices + - aquantia: Fix the media type of AQC100 ethernet controller in the driver + - component: Silence bind error on -EPROBE_DEFER + - net/ena: Fix build warning in ena_xdp_set() + - scsi: ibmvscsi: Fix WARN_ON during event pool release + - HID: i2c-hid: reset Synaptics SYNA2393 on resume + - x86/mm/cpa: Flush direct map alias during cpa + - ibmvnic: Skip fatal error reset after passive init + - x86/apic: Move TSC deadline timer debug printk + - gtp: set NLM_F_MULTI flag in gtp_genl_dump_pdp() + - HID: quirks: Add HID_QUIRK_NO_INIT_REPORTS quirk for Dell K12A keyboard-dock + - ceph: fix double unlock in handle_cap_export() + - stmmac: fix pointer check after utilization in stmmac_interrupt + - USB: core: Fix misleading driver bug report + - platform/x86: asus-nb-wmi: Do not load on Asus T100TA and T200TA + - iommu/amd: Call domain_flush_complete() in update_domain() + - drm/amd/display: Prevent dpcd reads with passive dongles + - KVM: selftests: Fix build for evmcs.h + - ARM: futex: Address build warning + - scripts/gdb: repair rb_first() and rb_last() + - ALSA: hda - constify and cleanup static NodeID tables + - ALSA: hda: patch_realtek: fix empty macro usage in if block + - ALSA: hda: Manage concurrent reg access more properly + - ALSA: hda/realtek - Add supported new mute Led for HP + - ALSA: hda/realtek - Add HP new mute led supported for ALC236 + - ALSA: hda/realtek: Add quirk for Samsung Notebook + - ALSA: hda/realtek - Enable headset mic of ASUS GL503VM with ALC295 + - ALSA: hda/realtek - Enable headset mic of ASUS UX550GE with ALC295 + - ALSA: hda/realtek: Enable headset mic of ASUS UX581LV with ALC295 + - KVM: x86: Fix pkru save/restore when guest CR4.PKE=0, move it to x86.c + - ALSA: iec1712: Initialize STDSP24 properly when using the model=staudio + option + - ALSA: pcm: fix incorrect hw_base increase + - ALSA: hda/realtek - Fix silent output on Gigabyte X570 Aorus Xtreme + - ALSA: hda/realtek - Add more fixup entries for Clevo machines + - scsi: qla2xxx: Do not log message when reading port speed via sysfs + - scsi: target: Put lun_ref at end of tmr processing + - arm64: Fix PTRACE_SYSEMU semantics + - drm/etnaviv: fix perfmon domain interation + - apparmor: Fix aa_label refcnt leak in policy_update + - dmaengine: tegra210-adma: Fix an error handling path in 'tegra_adma_probe()' + - drm/etnaviv: Fix a leak in submit_pin_objects() + - dmaengine: dmatest: Restore default for channel + - dmaengine: owl: Use correct lock in owl_dma_get_pchan() + - vsprintf: don't obfuscate NULL and error pointers + - drm/i915/gvt: Init DPLL/DDI vreg for virtual display instead of inheritance. + - drm/i915: Propagate error from completed fences + - powerpc: Remove STRICT_KERNEL_RWX incompatibility with RELOCATABLE + - powerpc/64s: Disable STRICT_KERNEL_RWX + - bpf: Avoid setting bpf insns pages read-only when prog is jited + - kbuild: Remove debug info from kallsyms linking + - Revert "gfs2: Don't demote a glock until its revokes are written" + - media: fdp1: Fix R-Car M3-N naming in debug message + - staging: iio: ad2s1210: Fix SPI reading + - staging: kpc2000: fix error return code in kp2000_pcie_probe() + - staging: greybus: Fix uninitialized scalar variable + - iio: sca3000: Remove an erroneous 'get_device()' + - iio: dac: vf610: Fix an error handling path in 'vf610_dac_probe()' + - iio: adc: ti-ads8344: Fix channel selection + - misc: rtsx: Add short delay after exit from ASPM + - tty: serial: add missing spin_lock_init for SiFive serial console + - mei: release me_cl object reference + - ipack: tpci200: fix error return code in tpci200_register() + - s390/kaslr: add support for R_390_JMP_SLOT relocation type + - device-dax: don't leak kernel memory to user space after unloading kmem + - rapidio: fix an error in get_user_pages_fast() error handling + - kasan: disable branch tracing for core runtime + - rxrpc: Fix the excessive initial retransmission timeout + - rxrpc: Fix a memory leak in rxkad_verify_response() + - s390/kexec_file: fix initrd location for kdump kernel + - flow_dissector: Drop BPF flow dissector prog ref on netns cleanup + - x86/unwind/orc: Fix unwind_get_return_address_ptr() for inactive tasks + - iio: adc: stm32-adc: Use dma_request_chan() instead + dma_request_slave_channel() + - iio: adc: stm32-adc: fix device used to request dma + - iio: adc: stm32-dfsdm: Use dma_request_chan() instead + dma_request_slave_channel() + - iio: adc: stm32-dfsdm: fix device used to request dma + - rxrpc: Trace discarded ACKs + - rxrpc: Fix ack discard + - tpm: check event log version before reading final events + - sched/fair: Reorder enqueue/dequeue_task_fair path + - sched/fair: Fix reordering of enqueue/dequeue_task_fair() + - sched/fair: Fix enqueue_task_fair() warning some more + - Linux 5.4.43 + * Focal update: v5.4.42 upstream stable release (LP: #1879759) + - net: dsa: Do not make user port errors fatal + - shmem: fix possible deadlocks on shmlock_user_lock + - net: phy: microchip_t1: add lan87xx_phy_init to initialize the lan87xx phy. + - KVM: arm: vgic: Synchronize the whole guest on GIC{D,R}_I{S,C}ACTIVER read + - gpio: pca953x: Fix pca953x_gpio_set_config + - SUNRPC: Add "@len" parameter to gss_unwrap() + - SUNRPC: Fix GSS privacy computation of auth->au_ralign + - net/sonic: Fix a resource leak in an error handling path in + 'jazz_sonic_probe()' + - net: moxa: Fix a potential double 'free_irq()' + - ftrace/selftests: workaround cgroup RT scheduling issues + - drop_monitor: work around gcc-10 stringop-overflow warning + - virtio-blk: handle block_device_operations callbacks after hot unplug + - sun6i: dsi: fix gcc-4.8 + - net_sched: fix tcm_parent in tc filter dump + - scsi: sg: add sg_remove_request in sg_write + - mmc: sdhci-acpi: Add SDHCI_QUIRK2_BROKEN_64_BIT_DMA for AMDI0040 + - dpaa2-eth: properly handle buffer size restrictions + - net: fix a potential recursive NETDEV_FEAT_CHANGE + - netlabel: cope with NULL catmap + - net: phy: fix aneg restart in phy_ethtool_set_eee + - net: stmmac: fix num_por initialization + - pppoe: only process PADT targeted at local interfaces + - Revert "ipv6: add mtu lock check in __ip6_rt_update_pmtu" + - tcp: fix error recovery in tcp_zerocopy_receive() + - tcp: fix SO_RCVLOWAT hangs with fat skbs + - virtio_net: fix lockdep warning on 32 bit + - dpaa2-eth: prevent array underflow in update_cls_rule() + - hinic: fix a bug of ndo_stop + - net: dsa: loop: Add module soft dependency + - net: ipv4: really enforce backoff for redirects + - netprio_cgroup: Fix unlimited memory leak of v2 cgroups + - net: tcp: fix rx timestamp behavior for tcp_recvmsg + - nfp: abm: fix error return code in nfp_abm_vnic_alloc() + - r8169: re-establish support for RTL8401 chip version + - umh: fix memory leak on execve failure + - riscv: fix vdso build with lld + - dmaengine: pch_dma.c: Avoid data race between probe and irq handler + - dmaengine: mmp_tdma: Do not ignore slave config validation errors + - dmaengine: mmp_tdma: Reset channel error on release + - selftests/ftrace: Check the first record for kprobe_args_type.tc + - cpufreq: intel_pstate: Only mention the BIOS disabling turbo mode once + - ALSA: hda/hdmi: fix race in monitor detection during probe + - drm/amd/powerplay: avoid using pm_en before it is initialized revised + - drm/amd/display: check if REFCLK_CNTL register is present + - drm/amd/display: Update downspread percent to match spreadsheet for DCN2.1 + - drm/qxl: lost qxl_bo_kunmap_atomic_page in qxl_image_init_helper() + - drm/amdgpu: simplify padding calculations (v2) + - drm/amdgpu: invalidate L2 before SDMA IBs (v2) + - ipc/util.c: sysvipc_find_ipc() incorrectly updates position index + - gfs2: Another gfs2_walk_metadata fix + - mmc: sdhci-pci-gli: Fix no irq handler from suspend + - IB/hfi1: Fix another case where pq is left on waitlist + - ACPI: EC: PM: Avoid premature returns from acpi_s2idle_wake() + - pinctrl: sunrisepoint: Fix PAD lock register offset for SPT-H + - pinctrl: baytrail: Enable pin configuration setting for GPIO chip + - pinctrl: qcom: fix wrong write in update_dual_edge + - pinctrl: cherryview: Add missing spinlock usage in chv_gpio_irq_handler + - bpf: Fix error return code in map_lookup_and_delete_elem() + - ALSA: firewire-lib: fix 'function sizeof not defined' error of tracepoints + format + - i40iw: Fix error handling in i40iw_manage_arp_cache() + - drm/i915: Don't enable WaIncreaseLatencyIPCEnabled when IPC is disabled + - bpf, sockmap: msg_pop_data can incorrecty set an sge length + - bpf, sockmap: bpf_tcp_ingress needs to subtract bytes from sg.size + - mmc: alcor: Fix a resource leak in the error path for ->probe() + - mmc: sdhci-pci-gli: Fix can not access GL9750 after reboot from Windows 10 + - mmc: core: Check request type before completing the request + - mmc: core: Fix recursive locking issue in CQE recovery path + - mmc: block: Fix request completion in the CQE timeout path + - gfs2: More gfs2_find_jhead fixes + - fork: prevent accidental access to clone3 features + - drm/amdgpu: force fbdev into vram + - NFS: Fix fscache super_cookie index_key from changing after umount + - nfs: fscache: use timespec64 in inode auxdata + - NFSv4: Fix fscache cookie aux_data to ensure change_attr is included + - netfilter: conntrack: avoid gcc-10 zero-length-bounds warning + - drm/i915/gvt: Fix kernel oops for 3-level ppgtt guest + - arm64: fix the flush_icache_range arguments in machine_kexec + - nfs: fix NULL deference in nfs4_get_valid_delegation + - SUNRPC: Signalled ASYNC tasks need to exit + - netfilter: nft_set_rbtree: Introduce and use nft_rbtree_interval_start() + - netfilter: nft_set_rbtree: Add missing expired checks + - RDMA/rxe: Always return ERR_PTR from rxe_create_mmap_info() + - IB/mlx4: Test return value of calls to ib_get_cached_pkey + - IB/core: Fix potential NULL pointer dereference in pkey cache + - RDMA/core: Fix double put of resource + - RDMA/iw_cxgb4: Fix incorrect function parameters + - hwmon: (da9052) Synchronize access with mfd + - s390/ism: fix error return code in ism_probe() + - mm, memcg: fix inconsistent oom event behavior + - NFSv3: fix rpc receive buffer size for MOUNT call + - pnp: Use list_for_each_entry() instead of open coding + - net/rds: Use ERR_PTR for rds_message_alloc_sgs() + - Stop the ad-hoc games with -Wno-maybe-initialized + - [Config] updateconfigs for CC_HAS_WARN_MAYBE_UNINITIALIZED + - gcc-10: disable 'zero-length-bounds' warning for now + - gcc-10: disable 'array-bounds' warning for now + - gcc-10: disable 'stringop-overflow' warning for now + - gcc-10: disable 'restrict' warning for now + - gcc-10 warnings: fix low-hanging fruit + - gcc-10: mark more functions __init to avoid section mismatch warnings + - gcc-10: avoid shadowing standard library 'free()' in crypto + - usb: usbfs: correct kernel->user page attribute mismatch + - USB: usbfs: fix mmap dma mismatch + - ALSA: hda/realtek - Limit int mic boost for Thinkpad T530 + - ALSA: hda/realtek - Add COEF workaround for ASUS ZenBook UX431DA + - ALSA: rawmidi: Fix racy buffer resize under concurrent accesses + - ALSA: usb-audio: Add control message quirk delay for Kingston HyperX headset + - usb: core: hub: limit HUB_QUIRK_DISABLE_AUTOSUSPEND to USB5534B + - usb: host: xhci-plat: keep runtime active when removing host + - usb: cdns3: gadget: prev_req->trb is NULL for ep0 + - usb: xhci: Fix NULL pointer dereference when enqueuing trbs from urb sg list + - Make the "Reducing compressed framebufer size" message be DRM_INFO_ONCE() + - ARM: dts: dra7: Fix bus_dma_limit for PCIe + - ARM: dts: imx27-phytec-phycard-s-rdk: Fix the I2C1 pinctrl entries + - ARM: dts: imx6dl-yapp4: Fix Ursa board Ethernet connection + - drm/amd/display: add basic atomic check for cursor plane + - powerpc/32s: Fix build failure with CONFIG_PPC_KUAP_DEBUG + - cifs: fix leaked reference on requeued write + - x86: Fix early boot crash on gcc-10, third try + - x86/unwind/orc: Fix error handling in __unwind_start() + - exec: Move would_dump into flush_old_exec + - clk: rockchip: fix incorrect configuration of rk3228 aclk_gpu* clocks + - dwc3: Remove check for HWO flag in dwc3_gadget_ep_reclaim_trb_sg() + - fanotify: fix merging marks masks with FAN_ONDIR + - usb: gadget: net2272: Fix a memory leak in an error handling path in + 'net2272_plat_probe()' + - usb: gadget: audio: Fix a missing error return value in audio_bind() + - usb: gadget: legacy: fix error return code in gncm_bind() + - usb: gadget: legacy: fix error return code in cdc_bind() + - clk: Unlink clock if failed to prepare or enable + - arm64: dts: meson-g12b-khadas-vim3: add missing frddr_a status property + - arm64: dts: meson-g12-common: fix dwc2 clock names + - arm64: dts: rockchip: Replace RK805 PMIC node name with "pmic" on rk3328 + boards + - arm64: dts: rockchip: Rename dwc3 device nodes on rk3399 to make dtc happy + - arm64: dts: imx8mn: Change SDMA1 ahb clock for imx8mn + - ARM: dts: r8a73a4: Add missing CMT1 interrupts + - arm64: dts: renesas: r8a77980: Fix IPMMU VIP[01] nodes + - ARM: dts: r8a7740: Add missing extal2 to CPG node + - SUNRPC: Revert 241b1f419f0e ("SUNRPC: Remove xdr_buf_trim()") + - bpf: Fix sk_psock refcnt leak when receiving message + - KVM: x86: Fix off-by-one error in kvm_vcpu_ioctl_x86_setup_mce + - Makefile: disallow data races on gcc-10 as well + - Linux 5.4.42 + * upgrading to 4.15.0-99-generic breaks the sound and the trackpad + (LP: #1875916) // Focal update: v5.4.42 upstream stable release + (LP: #1879759) + - Revert "ALSA: hda/realtek: Fix pop noise on ALC225" + * Pop sound from build-in speaker during cold boot and resume from S3 + (LP: #1866357) // Focal update: v5.4.42 upstream stable release + (LP: #1879759) + - ALSA: hda/realtek - Fix S3 pop noise on Dell Wyse + * tpm: fix TIS locality timeout problems (LP: #1881710) + - SAUCE: tpm: fix TIS locality timeout problems + * [UBUNTU 20.04] s390x/pci: fix linking between PF and VF for multifunction + devices (LP: #1879704) + - PCI/IOV: Introduce pci_iov_sysfs_link() function + - s390/pci: create links between PFs and VFs + * Performing function level reset of AMD onboard USB and audio devices causes + system lockup (LP: #1865988) + - SAUCE: PCI: Avoid FLR for AMD Matisse HD Audio & USB 3.0 + - SAUCE: PCI: Avoid FLR for AMD Starship USB 3.0 + * seccomp_benchmark times out on eoan (LP: #1881576) + - SAUCE: selftests/seccomp: use 90s as timeout + * ASoC/amd: add audio driver for amd renoir (LP: #1881046) + - ASoC: amd: add Renoir ACP3x IP register header + - ASoC: amd: add Renoir ACP PCI driver + - ASoC: amd: add acp init/de-init functions + - ASoC: amd: create acp3x pdm platform device + - ASoC: amd: add ACP3x PDM platform driver + - ASoC: amd: irq handler changes for ACP3x PDM dma driver + - ASoC: amd: add acp3x pdm driver dma ops + - ASoC: amd: add ACP PDM DMA driver dai ops + - ASoC: amd: add Renoir ACP PCI driver PM ops + - ASoC: amd: add ACP PDM DMA driver pm ops + - ASoC: amd: enable Renoir acp3x drivers build + - ASoC: amd: create platform devices for Renoir + - ASoC: amd: RN machine driver using dmic + - ASoC: amd: enable build for RN machine driver + - ASoC: amd: fix kernel warning + - ASoC: amd: refactoring dai_hw_params() callback + - ASoC: amd: return error when acp de-init fails + - [Config]: enable amd renoir ASoC audio + * Fix for secure boot rules in IMA arch policy on powerpc (LP: #1877955) + - powerpc/ima: Fix secure boot rules in ima arch policy + * [UBUNTU 20.04] s390x/pci: s390_pci_mmio_write/read fail when MIO + instructions are available (LP: #1874055) + - s390/pci: Fix s390_mmio_read/write with MIO + * security: lockdown: remove trailing semicolon before function body + (LP: #1880660) + - SAUCE: (lockdown) security: lockdown: remove trailing semicolon before + function body + * Fix incorrect speed/duplex when I210 device is runtime suspended + (LP: #1880656) + - igb: Report speed and duplex as unknown when device is runtime suspended + * [OMEN by HP Laptop 15-dh0xxx, Realtek ALC285, Black Mic, Left] Recording + problem (LP: #1874698) + - ASoC: SOF: Intel: hda: allow operation without i915 gfx + - ASoC: intel/skl/hda - add no-HDMI cases to generic HDA driver + * CVE-2020-13143 + - USB: gadget: fix illegal array access in binding with UDC + * rtl8723bu wifi issue after being turned off (LP: #1878296) + - rtl8xxxu: Improve TX performance of RTL8723BU on rtl8xxxu driver + - rtl8xxxu: add bluetooth co-existence support for single antenna + - rtl8xxxu: remove set but not used variable 'rate_mask' + - rtl8xxxu: Remove set but not used variable 'vif', 'dev', 'len' + * Fix Pericom USB controller OHCI/EHCI PME# defect (LP: #1879321) + - serial: 8250_pci: Move Pericom IDs to pci_ids.h + - PCI: Avoid Pericom USB controller OHCI/EHCI PME# defect + * shiftfs: fix btrfs snapshot deletion (LP: #1879688) + - SAUCE: shiftfs: let userns root destroy subvolumes from other users + * [UBUNTU 20.04] s390x/pci: enumerate pci functions per physical adapter + (LP: #1874056) + - s390/pci: Improve handling of unset UID + - s390/pci: embedding hotplug_slot in zdev + - s390/pci: Expose new port attribute for PCIe functions + - s390/pci: adaptation of iommu to multifunction + - s390/pci: define kernel parameters for PCI multifunction + - s390/pci: define RID and RID available + - s390/pci: create zPCI bus + - s390/pci: adapt events for zbus + - s390/pci: Handling multifunctions + - s390/pci: Do not disable PF when VFs exist + - s390/pci: Documentation for zPCI + - s390/pci: removes wrong PCI multifunction assignment + * update-initramfs complains of missing amdgpu firmware files (LP: #1873325) + - SAUCE: drm/amdgpu: Remove unreleased arcturus and navi12 firmware from + modinfo + + -- Marcelo Henrique Cerri Thu, 25 Jun 2020 16:37:28 -0300 + +linux-azure (5.4.0-1019.19) focal; urgency=medium + + + [ Ubuntu: 5.4.0-39.43 ] + + * dkms-build: downloads fail in private PPAs (LP: #1883874) + - dkms-build: apt-cache policy elides username:password information + * Packaging resync (LP: #1786013) + - update dkms package versions + + -- Kleber Sacilotto de Souza Fri, 19 Jun 2020 19:07:16 +0200 + +linux-azure (5.4.0-1016.16) focal; urgency=medium + + + [ Ubuntu: 5.4.0-37.41 ] + + * CVE-2020-0543 + - SAUCE: x86/speculation/spectre_v2: Exclude Zhaoxin CPUs from SPECTRE_V2 + - SAUCE: x86/cpu: Add a steppings field to struct x86_cpu_id + - SAUCE: x86/cpu: Add 'table' argument to cpu_matches() + - SAUCE: x86/speculation: Add Special Register Buffer Data Sampling (SRBDS) + mitigation + - SAUCE: x86/speculation: Add SRBDS vulnerability and mitigation documentation + - SAUCE: x86/speculation: Add Ivy Bridge to affected list + + -- Thadeu Lima de Souza Cascardo Thu, 04 Jun 2020 19:11:17 -0300 + +linux-azure (5.4.0-1013.13) focal; urgency=medium + + * focal/linux-azure: 5.4.0-1013.13 -proposed tracker (LP: #1878793) + + * Add support for Ambiq micro AM1805 RTC chip (LP: #1876667) + - SAUCE: rtc: add am-1805 RTC driver + + * linux-azure: Enable FSGSBASE instructions to support SGX (LP: #1877425) + - SAUCE: x86/ptrace: Prevent ptrace from clearing the FS/GS selector + - SAUCE: selftests/x86/fsgsbase: Test GS selector on ptracer-induced GS base + write + - SAUCE: x86/cpu: Add 'unsafe_fsgsbase' to enable CR4.FSGSBASE + - SAUCE: x86/entry/64: Clean up paranoid exit + - SAUCE: x86/entry/64: Switch CR3 before SWAPGS in paranoid entry + - SAUCE: x86/entry/64: Introduce the FIND_PERCPU_BASE macro + - SAUCE: x86/entry/64: Handle FSGSBASE enabled paranoid entry/exit + - SAUCE: x86/entry/64: Document GSBASE handling in the paranoid path + - SAUCE: x86/fsgsbase/64: Add intrinsics for FSGSBASE instructions + - SAUCE: x86/fsgsbase/64: Enable FSGSBASE instructions in helper functions + - SAUCE: x86/fsgsbase/64: Use FSGSBASE in switch_to() if available + - SAUCE: x86/fsgsbase/64: Use FSGSBASE instructions on thread copy and ptrace + - SAUCE: x86/speculation/swapgs: Check FSGSBASE in enabling SWAPGS mitigation + - SAUCE: selftests/x86/fsgsbase: Test ptracer-induced GS base write with + FSGSBASE + - SAUCE: x86/fsgsbase/64: Enable FSGSBASE on 64bit by default and add a + chicken bit + - SAUCE: x86/elf: Enumerate kernel FSGSBASE capability in AT_HWCAP2 + - SAUCE: Documentation/x86/64: Add documentation for GS/FS addressing mode + + * rtkit-daemon[*]: Failed to make ourselves RT: Operation not permitted after + upgrade to 20.04 (LP: #1875665) + - [Config] Turn off CONFIG_RT_GROUP_SCHED + + [ Ubuntu: 5.4.0-34.38 ] + + * focal/linux: 5.4.0-34.38 -proposed tracker (LP: #1880118) + * debian/scripts/file-downloader does not handle positive failures correctly + (LP: #1878897) + - [Packaging] file-downloader not handling positive failures correctly + * Focal update: v5.4.41 upstream stable release (LP: #1878649) + - USB: serial: qcserial: Add DW5816e support + - nvme: refactor nvme_identify_ns_descs error handling + - nvme: fix possible hang when ns scanning fails during error recovery + - tracing/kprobes: Fix a double initialization typo + - net: macb: Fix runtime PM refcounting + - drm/amdgpu: move kfd suspend after ip_suspend_phase1 + - drm/amdgpu: drop redundant cg/pg ungate on runpm enter + - vt: fix unicode console freeing with a common interface + - tty: xilinx_uartps: Fix missing id assignment to the console + - devlink: fix return value after hitting end in region read + - dp83640: reverse arguments to list_add_tail + - fq_codel: fix TCA_FQ_CODEL_DROP_BATCH_SIZE sanity checks + - ipv6: Use global sernum for dst validation with nexthop objects + - mlxsw: spectrum_acl_tcam: Position vchunk in a vregion list properly + - neigh: send protocol value in neighbor create notification + - net: dsa: Do not leave DSA master with NULL netdev_ops + - net: macb: fix an issue about leak related system resources + - net: macsec: preserve ingress frame ordering + - net/mlx4_core: Fix use of ENOSPC around mlx4_counter_alloc() + - net_sched: sch_skbprio: add message validation to skbprio_change() + - net: stricter validation of untrusted gso packets + - net: tc35815: Fix phydev supported/advertising mask + - net/tls: Fix sk_psock refcnt leak in bpf_exec_tx_verdict() + - net/tls: Fix sk_psock refcnt leak when in tls_data_ready() + - net: usb: qmi_wwan: add support for DW5816e + - nfp: abm: fix a memory leak bug + - sch_choke: avoid potential panic in choke_reset() + - sch_sfq: validate silly quantum values + - tipc: fix partial topology connection closure + - tunnel: Propagate ECT(1) when decapsulating as recommended by RFC6040 + - bnxt_en: Fix VF anti-spoof filter setup. + - bnxt_en: Reduce BNXT_MSIX_VEC_MAX value to supported CQs per PF. + - bnxt_en: Improve AER slot reset. + - bnxt_en: Return error when allocating zero size context memory. + - bnxt_en: Fix VLAN acceleration handling in bnxt_fix_features(). + - net/mlx5: DR, On creation set CQ's arm_db member to right value + - net/mlx5: Fix forced completion access non initialized command entry + - net/mlx5: Fix command entry leak in Internal Error State + - net: mvpp2: prevent buffer overflow in mvpp22_rss_ctx() + - net: mvpp2: cls: Prevent buffer overflow in mvpp2_ethtool_cls_rule_del() + - HID: wacom: Read HID_DG_CONTACTMAX directly for non-generic devices + - sctp: Fix bundling of SHUTDOWN with COOKIE-ACK + - Revert "HID: wacom: generic: read the number of expected touches on a per + collection basis" + - HID: usbhid: Fix race between usbhid_close() and usbhid_stop() + - HID: wacom: Report 2nd-gen Intuos Pro S center button status over BT + - USB: uas: add quirk for LaCie 2Big Quadra + - usb: chipidea: msm: Ensure proper controller reset using role switch API + - USB: serial: garmin_gps: add sanity checking for data length + - tracing: Add a vmalloc_sync_mappings() for safe measure + - crypto: arch/nhpoly1305 - process in explicit 4k chunks + - KVM: s390: Remove false WARN_ON_ONCE for the PQAP instruction + - KVM: VMX: Explicitly clear RFLAGS.CF and RFLAGS.ZF in VM-Exit RSB path + - KVM: arm: vgic: Fix limit condition when writing to GICD_I[CS]ACTIVER + - KVM: arm64: Fix 32bit PC wrap-around + - arm64: hugetlb: avoid potential NULL dereference + - drm: ingenic-drm: add MODULE_DEVICE_TABLE + - ipc/mqueue.c: change __do_notify() to bypass check_kill_permission() + - epoll: atomically remove wait entry on wake up + - eventpoll: fix missing wakeup for ovflist in ep_poll_callback + - mm/page_alloc: fix watchdog soft lockups during set_zone_contiguous() + - mm: limit boost_watermark on small zones + - ceph: demote quotarealm lookup warning to a debug message + - staging: gasket: Check the return value of gasket_get_bar_index() + - coredump: fix crash when umh is disabled + - iocost: protect iocg->abs_vdebt with iocg->waitq.lock + - batman-adv: fix batadv_nc_random_weight_tq + - batman-adv: Fix refcnt leak in batadv_show_throughput_override + - batman-adv: Fix refcnt leak in batadv_store_throughput_override + - batman-adv: Fix refcnt leak in batadv_v_ogm_process + - x86/entry/64: Fix unwind hints in register clearing code + - x86/entry/64: Fix unwind hints in kernel exit path + - x86/entry/64: Fix unwind hints in rewind_stack_do_exit() + - x86/unwind/orc: Don't skip the first frame for inactive tasks + - x86/unwind/orc: Prevent unwinding before ORC initialization + - x86/unwind/orc: Fix error path for bad ORC entry type + - x86/unwind/orc: Fix premature unwind stoppage due to IRET frames + - KVM: x86: Fixes posted interrupt check for IRQs delivery modes + - arch/x86/kvm/svm/sev.c: change flag passed to GUP fast in sev_pin_memory() + - netfilter: nat: never update the UDP checksum when it's 0 + - netfilter: nf_osf: avoid passing pointer to local var + - objtool: Fix stack offset tracking for indirect CFAs + - iommu/virtio: Reverse arguments to list_add + - scripts/decodecode: fix trapping instruction formatting + - mm, memcg: fix error return value of mem_cgroup_css_alloc() + - bdi: move bdi_dev_name out of line + - bdi: add a ->dev_name field to struct backing_dev_info + - fsnotify: replace inode pointer with an object id + - fanotify: merge duplicate events on parent and child + - Linux 5.4.41 + * Intel GPU Hangs : random screen freezing w/ Ubuntu 20.04 (Linux 5.4) + i915_active_acquire (LP: #1868551) + - drm/i915: Hold reference to intel_frontbuffer as we track activity + - drm/i915: fix uninitialized pointer reads on pointers to and from + * Kernel panic due to NULL ringbuffer vaddr dereference in i915 (LP: #1877394) + - Revert "UBUNTU: SAUCE: drm/i915: Synchronize active and retire callbacks" + - drm/i915/gt: Make intel_ring_unpin() safe for concurrent pint + * add 16-bit width registers support for EEPROM at24 device (LP: #1876699) + - regmap-i2c: add 16-bit width registers support + * [UBUNTU 20.04] PSI generates overhead on s390x (LP: #1876044) + - Ubuntu: [Config] Set CONFIG_PSI_DEFAULT_DISABLED=y on s390x + * Focal update: v5.4.40 upstream stable release (LP: #1878040) + - vhost: vsock: kick send_pkt worker once device is started + - drm/bridge: analogix_dp: Split bind() into probe() and real bind() + - ASoC: topology: Check return value of soc_tplg_create_tlv + - ASoC: topology: Check return value of soc_tplg_*_create + - ASoC: topology: Check soc_tplg_add_route return value + - ASoC: topology: Check return value of pcm_new_ver + - ASoC: topology: Check return value of soc_tplg_dai_config + - selftests/ipc: Fix test failure seen after initial test run + - ASoC: sgtl5000: Fix VAG power-on handling + - ASoC: topology: Fix endianness issue + - usb: dwc3: gadget: Properly set maxpacket limit + - ASoC: rsnd: Fix parent SSI start/stop in multi-SSI mode + - ASoC: rsnd: Fix HDMI channel mapping for multi-SSI mode + - ASoC: codecs: hdac_hdmi: Fix incorrect use of list_for_each_entry + - remoteproc: qcom_q6v5_mss: fix a bug in q6v5_probe() + - drm/amdgpu: Correctly initialize thermal controller for GPUs with Powerplay + table v0 (e.g Hawaii) + - wimax/i2400m: Fix potential urb refcnt leak + - net: stmmac: fix enabling socfpga's ptp_ref_clock + - net: stmmac: Fix sub-second increment + - ASoC: rsnd: Don't treat master SSI in multi SSI setup as parent + - ASoC: rsnd: Fix "status check failed" spam for multi-SSI + - cifs: protect updating server->dstaddr with a spinlock + - scripts/config: allow colons in option strings for sed + - cifs: do not share tcons with DFS + - tracing: Fix memory leaks in trace_events_hist.c + - lib/mpi: Fix building for powerpc with clang + - mac80211: sta_info: Add lockdep condition for RCU list usage + - net: bcmgenet: suppress warnings on failed Rx SKB allocations + - net: systemport: suppress warnings on failed Rx SKB allocations + - drm/i915: Extend WaDisableDARBFClkGating to icl,ehl,tgl + - sctp: Fix SHUTDOWN CTSN Ack in the peer restart case + - Revert "software node: Simplify software_node_release() function" + - hexagon: clean up ioremap + - hexagon: define ioremap_uc + - ALSA: hda: Match both PCI ID and SSID for driver blacklist + - x86/kvm: fix a missing-prototypes "vmread_error" + - platform/x86: GPD pocket fan: Fix error message when temp-limits are out of + range + - ACPI: PM: s2idle: Fix comment in acpi_s2idle_prepare_late() + - mac80211: add ieee80211_is_any_nullfunc() + - cgroup, netclassid: remove double cond_resched + - libbpf: Fix readelf output parsing for Fedora + - mm/mremap: Add comment explaining the untagging behaviour of mremap() + - Revert "drm/amd/display: setting the DIG_MODE to the correct value." + - tools headers UAPI: Sync copy of arm64's asm/unistd.h with the kernel + sources + - udp: document udp_rcv_segment special case for looped packets + - PM / devfreq: Add missing locking while setting suspend_freq + - Linux 5.4.40 + * Focal update: v5.4.39 upstream stable release (LP: #1877592) + - dma-buf: Fix SET_NAME ioctl uapi + - drm/edid: Fix off-by-one in DispID DTD pixel clock + - drm/amd/display: Fix green screen issue after suspend + - drm/qxl: qxl_release leak in qxl_draw_dirty_fb() + - drm/qxl: qxl_release leak in qxl_hw_surface_alloc() + - drm/qxl: qxl_release use after free + - NFSv4.1: fix handling of backchannel binding in BIND_CONN_TO_SESSION + - btrfs: fix transaction leak in btrfs_recover_relocation + - btrfs: fix block group leak when removing fails + - btrfs: fix partial loss of prealloc extent past i_size after fsync + - btrfs: transaction: Avoid deadlock due to bad initialization timing of + fs_info::journal_info + - mmc: cqhci: Avoid false "cqhci: CQE stuck on" by not open-coding timeout + loop + - mmc: sdhci-xenon: fix annoying 1.8V regulator warning + - mmc: sdhci-pci: Fix eMMC driver strength for BYT-based controllers + - mmc: sdhci-msm: Enable host capabilities pertains to R1b response + - mmc: meson-mx-sdio: Set MMC_CAP_WAIT_WHILE_BUSY + - mmc: meson-mx-sdio: remove the broken ->card_busy() op + - crypto: caam - fix the address of the last entry of S/G + - ALSA: hda/realtek - Two front mics on a Lenovo ThinkCenter + - ALSA: usb-audio: Correct a typo of NuPrime DAC-10 USB ID + - ALSA: hda/hdmi: fix without unlocked before return + - ALSA: line6: Fix POD HD500 audio playback + - ALSA: pcm: oss: Place the plugin buffer overflow checks correctly + - i2c: amd-mp2-pci: Fix Oops in amd_mp2_pci_init() error handling + - Drivers: hv: vmbus: Fix Suspend-to-Idle for Generation-2 VM + - dlmfs_file_write(): fix the bogosity in handling non-zero *ppos + - IB/rdmavt: Always return ERR_PTR from rvt_create_mmap_info() + - PM: ACPI: Output correct message on target power state + - PM: hibernate: Freeze kernel threads in software_resume() + - dm verity fec: fix hash block number in verity_fec_decode + - dm writecache: fix data corruption when reloading the target + - dm multipath: use updated MPATHF_QUEUE_IO on mapping for bio-based mpath + - ARM: dts: imx6qdl-sr-som-ti: indicate powering off wifi is safe + - scsi: qla2xxx: set UNLOADING before waiting for session deletion + - scsi: qla2xxx: check UNLOADING before posting async work + - RDMA/mlx5: Set GRH fields in query QP on RoCE + - RDMA/mlx4: Initialize ib_spec on the stack + - RDMA/siw: Fix potential siw_mem refcnt leak in siw_fastreg_mr() + - RDMA/core: Prevent mixed use of FDs between shared ufiles + - RDMA/core: Fix race between destroy and release FD object + - RDMA/cm: Fix ordering of xa_alloc_cyclic() in ib_create_cm_id() + - RDMA/cm: Fix an error check in cm_alloc_id_priv() + - i2c: iproc: generate stop event for slave writes + - vfio: avoid possible overflow in vfio_iommu_type1_pin_pages + - vfio/type1: Fix VA->PA translation for PFNMAP VMAs in vaddr_get_pfn() + - iommu/qcom: Fix local_base status check + - scsi: target/iblock: fix WRITE SAME zeroing + - iommu/amd: Fix legacy interrupt remapping for x2APIC-enabled system + - i2c: aspeed: Avoid i2c interrupt status clear race condition. + - ALSA: opti9xx: shut up gcc-10 range warning + - Fix use after free in get_tree_bdev() + - nvme: prevent double free in nvme_alloc_ns() error handling + - nfs: Fix potential posix_acl refcnt leak in nfs3_set_acl + - dmaengine: dmatest: Fix iteration non-stop logic + - dmaengine: dmatest: Fix process hang when reading 'wait' parameter + - arm64: vdso: Add -fasynchronous-unwind-tables to cflags + - selinux: properly handle multiple messages in selinux_netlink_send() + - Linux 5.4.39 + * Focal update: v5.4.38 upstream stable release (LP: #1876767) + - Linux 5.4.38 + * Focal update: v5.4.37 upstream stable release (LP: #1876765) + - remoteproc: Fix wrong rvring index computation + - ubifs: Fix ubifs_tnc_lookup() usage in do_kill_orphans() + - printk: queue wake_up_klogd irq_work only if per-CPU areas are ready + - ASoC: stm32: sai: fix sai probe + - usb: dwc3: gadget: Do link recovery for SS and SSP + - kbuild: fix DT binding schema rule again to avoid needless rebuilds + - usb: gadget: udc: bdc: Remove unnecessary NULL checks in bdc_req_complete + - usb: gadget: udc: atmel: Fix vbus disconnect handling + - afs: Make record checking use TASK_UNINTERRUPTIBLE when appropriate + - afs: Fix to actually set AFS_SERVER_FL_HAVE_EPOCH + - iio:ad7797: Use correct attribute_group + - propagate_one(): mnt_set_mountpoint() needs mount_lock + - counter: 104-quad-8: Add lock guards - generic interface + - s390/ftrace: fix potential crashes when switching tracers + - ASoC: q6dsp6: q6afe-dai: add missing channels to MI2S DAIs + - ASoC: tas571x: disable regulators on failed probe + - ASoC: wm8960: Fix wrong clock after suspend & resume + - drivers: soc: xilinx: fix firmware driver Kconfig dependency + - nfsd: memory corruption in nfsd4_lock() + - bpf: Forbid XADD on spilled pointers for unprivileged users + - i2c: altera: use proper variable to hold errno + - rxrpc: Fix DATA Tx to disable nofrag for UDP on AF_INET6 socket + - net/cxgb4: Check the return from t4_query_params properly + - xfs: acquire superblock freeze protection on eofblocks scans + - svcrdma: Fix trace point use-after-free race + - svcrdma: Fix leak of svc_rdma_recv_ctxt objects + - net/mlx5e: Don't trigger IRQ multiple times on XSK wakeup to avoid WQ + overruns + - net/mlx5e: Get the latest values from counters in switchdev mode + - PCI: Add ACS quirk for Zhaoxin multi-function devices + - PCI: Make ACS quirk implementations more uniform + - PCI: Unify ACS quirk desired vs provided checking + - PCI: Add Zhaoxin Vendor ID + - PCI: Add ACS quirk for Zhaoxin Root/Downstream Ports + - PCI: Move Apex Edge TPU class quirk to fix BAR assignment + - ARM: dts: bcm283x: Disable dsi0 node + - cpumap: Avoid warning when CONFIG_DEBUG_PER_CPU_MAPS is enabled + - s390/pci: do not set affinity for floating irqs + - net/mlx5: Fix failing fw tracer allocation on s390 + - sched/core: Fix reset-on-fork from RT with uclamp + - perf/core: fix parent pid/tid in task exit events + - netfilter: nat: fix error handling upon registering inet hook + - PM: sleep: core: Switch back to async_schedule_dev() + - blk-iocost: Fix error on iocost_ioc_vrate_adj + - um: ensure `make ARCH=um mrproper` removes + arch/$(SUBARCH)/include/generated/ + - bpf, x86_32: Fix incorrect encoding in BPF_LDX zero-extension + - bpf, x86_32: Fix clobbering of dst for BPF_JSET + - bpf, x86_32: Fix logic error in BPF_LDX zero-extension + - mm: shmem: disable interrupt when acquiring info->lock in userfaultfd_copy + path + - xfs: clear PF_MEMALLOC before exiting xfsaild thread + - bpf, x86: Fix encoding for lower 8-bit registers in BPF_STX BPF_B + - libbpf: Initialize *nl_pid so gcc 10 is happy + - net: fec: set GPR bit on suspend by DT configuration. + - x86: hyperv: report value of misc_features + - signal: check sig before setting info in kill_pid_usb_asyncio + - afs: Fix length of dump of bad YFSFetchStatus record + - xfs: fix partially uninitialized structure in xfs_reflink_remap_extent + - ALSA: hda: Release resources at error in delayed probe + - ALSA: hda: Keep the controller initialization even if no codecs found + - ALSA: hda: Explicitly permit using autosuspend if runtime PM is supported + - scsi: target: fix PR IN / READ FULL STATUS for FC + - scsi: target: tcmu: reset_ring should reset TCMU_DEV_BIT_BROKEN + - objtool: Fix CONFIG_UBSAN_TRAP unreachable warnings + - objtool: Support Clang non-section symbols in ORC dump + - xen/xenbus: ensure xenbus_map_ring_valloc() returns proper grant status + - ALSA: hda: call runtime_allow() for all hda controllers + - net: stmmac: socfpga: Allow all RGMII modes + - mac80211: fix channel switch trigger from unknown mesh peer + - arm64: Delete the space separator in __emit_inst + - ext4: use matching invalidatepage in ext4_writepage + - ext4: increase wait time needed before reuse of deleted inode numbers + - ext4: convert BUG_ON's to WARN_ON's in mballoc.c + - blk-mq: Put driver tag in blk_mq_dispatch_rq_list() when no budget + - hwmon: (jc42) Fix name to have no illegal characters + - taprio: do not use BIT() in TCA_TAPRIO_ATTR_FLAG_* definitions + - qed: Fix race condition between scheduling and destroying the slowpath + workqueue + - Crypto: chelsio - Fixes a hang issue during driver registration + - net: use indirect call wrappers for skb_copy_datagram_iter() + - qed: Fix use after free in qed_chain_free + - ext4: check for non-zero journal inum in ext4_calculate_overhead + - ASoC: soc-core: disable route checks for legacy devices + - ASoC: stm32: spdifrx: fix regmap status check + - Linux 5.4.37 + * Focal update: v5.4.36 upstream stable release (LP: #1876361) + - ext4: fix extent_status fragmentation for plain files + - f2fs: fix to avoid memory leakage in f2fs_listxattr + - net, ip_tunnel: fix interface lookup with no key + - [Config] updateconfigs for ARM64_ERRATUM_1542419 + - arm64: errata: Hide CTR_EL0.DIC on systems affected by Neoverse-N1 #1542419 + - arm64: Fake the IminLine size on systems affected by Neoverse-N1 #1542419 + - arm64: compat: Workaround Neoverse-N1 #1542419 for compat user-space + - arm64: Silence clang warning on mismatched value/register sizes + - tools/testing/nvdimm: Fix compilation failure without + CONFIG_DEV_DAX_PMEM_COMPAT + - watchdog: reset last_hw_keepalive time at start + - scsi: lpfc: Fix kasan slab-out-of-bounds error in lpfc_unreg_login + - scsi: lpfc: Fix crash after handling a pci error + - scsi: lpfc: Fix crash in target side cable pulls hitting WAIT_FOR_UNREG + - scsi: libfc: If PRLI rejected, move rport to PLOGI state + - ceph: return ceph_mdsc_do_request() errors from __get_parent() + - ceph: don't skip updating wanted caps when cap is stale + - pwm: rcar: Fix late Runtime PM enablement + - nvme-tcp: fix possible crash in write_zeroes processing + - scsi: iscsi: Report unbind session event when the target has been removed + - tools/test/nvdimm: Fix out of tree build + - ASoC: Intel: atom: Take the drv->lock mutex before calling + sst_send_slot_map() + - nvme: fix deadlock caused by ANA update wrong locking + - drm/amd/display: Update stream adjust in dc_stream_adjust_vmin_vmax + - dma-direct: fix data truncation in dma_direct_get_required_mask() + - kernel/gcov/fs.c: gcov_seq_next() should increase position index + - selftests: kmod: fix handling test numbers above 9 + - ipc/util.c: sysvipc_find_ipc() should increase position index + - kconfig: qconf: Fix a few alignment issues + - lib/raid6/test: fix build on distros whose /bin/sh is not bash + - s390/cio: generate delayed uevent for vfio-ccw subchannels + - s390/cio: avoid duplicated 'ADD' uevents + - loop: Better discard support for block devices + - Revert "powerpc/64: irq_work avoid interrupt when called with hardware irqs + enabled" + - powerpc/pseries: Fix MCE handling on pseries + - nvme: fix compat address handling in several ioctls + - pwm: renesas-tpu: Fix late Runtime PM enablement + - pwm: bcm2835: Dynamically allocate base + - perf/core: Disable page faults when getting phys address + - drm/amd/display: Calculate scaling ratios on every medium/full update + - ASoC: Intel: bytcr_rt5640: Add quirk for MPMAN MPWIN895CL tablet + - ALSA: usb-audio: Add Pioneer DJ DJM-250MK2 quirk + - drm/amd/display: Not doing optimize bandwidth if flip pending. + - cxgb4: fix adapter crash due to wrong MC size + - cxgb4: fix large delays in PTP synchronization + - ipv4: Update fib_select_default to handle nexthop objects + - ipv6: fix restrict IPV6_ADDRFORM operation + - macsec: avoid to set wrong mtu + - macvlan: fix null dereference in macvlan_device_event() + - mlxsw: Fix some IS_ERR() vs NULL bugs + - net: bcmgenet: correct per TX/RX ring statistics + - net/mlx4_en: avoid indirect call in TX completion + - net: netrom: Fix potential nr_neigh refcnt leak in nr_add_node + - net: openvswitch: ovs_ct_exit to be done under ovs_lock + - net: stmmac: dwmac-meson8b: Add missing boundary to RGMII TX clock array + - net/x25: Fix x25_neigh refcnt leak when receiving frame + - sched: etf: do not assume all sockets are full blown + - selftests: Fix suppress test in fib_tests.sh + - tcp: cache line align MAX_TCP_HEADER + - team: fix hang in team_mode_get() + - vrf: Fix IPv6 with qdisc and xfrm + - net: dsa: b53: Lookup VID in ARL searches when VLAN is enabled + - net: dsa: b53: Fix valid setting for MDB entries + - net: dsa: b53: Fix ARL register definitions + - net: dsa: b53: Rework ARL bin logic + - net: dsa: b53: b53_arl_rw_op() needs to select IVL or SVL + - vxlan: use the correct nlattr array in NL_SET_ERR_MSG_ATTR + - geneve: use the correct nlattr array in NL_SET_ERR_MSG_ATTR + - xfrm: Always set XFRM_TRANSFORMED in xfrm{4,6}_output_finish + - vrf: Check skb for XFRM_TRANSFORMED flag + - KEYS: Avoid false positive ENOMEM error on key read + - ALSA: hda: Remove ASUS ROG Zenith from the blacklist + - ALSA: usb-audio: Add static mapping table for ALC1220-VB-based mobos + - ALSA: usb-audio: Add connector notifier delegation + - iio: core: remove extra semi-colon from devm_iio_device_register() macro + - iio: st_sensors: rely on odr mask to know if odr can be set + - iio: adc: stm32-adc: fix sleep in atomic context + - iio: adc: ti-ads8344: properly byte swap value + - iio: xilinx-xadc: Fix ADC-B powerdown + - iio: xilinx-xadc: Fix clearing interrupt when enabling trigger + - iio: xilinx-xadc: Fix sequencer configuration for aux channels in + simultaneous mode + - iio: xilinx-xadc: Make sure not exceed maximum samplerate + - USB: sisusbvga: Change port variable from signed to unsigned + - USB: Add USB_QUIRK_DELAY_CTRL_MSG and USB_QUIRK_DELAY_INIT for Corsair K70 + RGB RAPIDFIRE + - USB: early: Handle AMD's spec-compliant identifiers, too + - USB: core: Fix free-while-in-use bug in the USB S-Glibrary + - USB: hub: Fix handling of connect changes during sleep + - USB: hub: Revert commit bd0e6c9614b9 ("usb: hub: try old enumeration scheme + first for high speed devices") + - tty: serial: owl: add "much needed" clk_prepare_enable() + - vmalloc: fix remap_vmalloc_range() bounds checks + - staging: gasket: Fix incongruency in handling of sysfs entries creation + - coredump: fix null pointer dereference on coredump + - mm/hugetlb: fix a addressing exception caused by huge_pte_offset + - mm/ksm: fix NULL pointer dereference when KSM zero page is enabled + - tools/vm: fix cross-compile build + - ALSA: usx2y: Fix potential NULL dereference + - ALSA: hda/realtek - Fix unexpected init_amp override + - ALSA: hda/realtek - Add new codec supported for ALC245 + - ALSA: hda/hdmi: Add module option to disable audio component binding + - ALSA: usb-audio: Fix usb audio refcnt leak when getting spdif + - ALSA: usb-audio: Filter out unsupported sample rates on Focusrite devices + - tpm/tpm_tis: Free IRQ if probing fails + - tpm: fix wrong return value in tpm_pcr_extend + - tpm: ibmvtpm: retry on H_CLOSED in tpm_ibmvtpm_send() + - KVM: s390: Return last valid slot if approx index is out-of-bounds + - KVM: Check validity of resolved slot when searching memslots + - KVM: VMX: Enable machine check support for 32bit targets + - tty: hvc: fix buffer overflow during hvc_alloc(). + - tty: rocket, avoid OOB access + - usb-storage: Add unusual_devs entry for JMicron JMS566 + - signal: Avoid corrupting si_pid and si_uid in do_notify_parent + - audit: check the length of userspace generated audit records + - ASoC: dapm: fixup dapm kcontrol widget + - mac80211: populate debugfs only after cfg80211 init + - SUNRPC: Fix backchannel RPC soft lockups + - iwlwifi: pcie: actually release queue memory in TVQM + - iwlwifi: mvm: beacon statistics shouldn't go backwards + - iwlwifi: mvm: limit maximum queue appropriately + - iwlwifi: mvm: Do not declare support for ACK Enabled Aggregation + - iwlwifi: mvm: fix inactive TID removal return value usage + - cifs: fix uninitialised lease_key in open_shroot() + - ARM: imx: provide v7_cpu_resume() only on ARM_CPU_SUSPEND=y + - powerpc/setup_64: Set cache-line-size based on cache-block-size + - staging: comedi: dt2815: fix writing hi byte of analog output + - staging: comedi: Fix comedi_device refcnt leak in comedi_open + - vt: don't hardcode the mem allocation upper bound + - vt: don't use kmalloc() for the unicode screen buffer + - staging: vt6656: Don't set RCR_MULTICAST or RCR_BROADCAST by default. + - staging: vt6656: Fix calling conditions of vnt_set_bss_mode + - staging: vt6656: Fix drivers TBTT timing counter. + - staging: vt6656: Fix pairwise key entry save. + - staging: vt6656: Power save stop wake_up_count wrap around. + - cdc-acm: close race betrween suspend() and acm_softint + - cdc-acm: introduce a cool down + - UAS: no use logging any details in case of ENODEV + - UAS: fix deadlock in error handling and PM flushing work + - fpga: dfl: pci: fix return value of cci_pci_sriov_configure + - usb: dwc3: gadget: Fix request completion check + - usb: f_fs: Clear OS Extended descriptor counts to zero in ffs_data_reset() + - usb: typec: tcpm: Ignore CC and vbus changes in PORT_RESET change + - usb: typec: altmode: Fix typec_altmode_get_partner sometimes returning an + invalid pointer + - xhci: Fix handling halted endpoint even if endpoint ring appears empty + - xhci: prevent bus suspend if a roothub port detected a over-current + condition + - xhci: Don't clear hub TT buffer on ep0 protocol stall + - serial: sh-sci: Make sure status register SCxSR is read in correct sequence + - Revert "serial: uartps: Fix uartps_major handling" + - Revert "serial: uartps: Use the same dynamic major number for all ports" + - Revert "serial: uartps: Fix error path when alloc failed" + - Revert "serial: uartps: Do not allow use aliases >= MAX_UART_INSTANCES" + - Revert "serial: uartps: Change uart ID port allocation" + - Revert "serial: uartps: Move Port ID to device data structure" + - Revert "serial: uartps: Register own uart console and driver structures" + - powerpc/kuap: PPC_KUAP_DEBUG should depend on PPC_KUAP + - powerpc/mm: Fix CONFIG_PPC_KUAP_DEBUG on PPC32 + - compat: ARM64: always include asm-generic/compat.h + - Linux 5.4.36 + * Focal update: v5.4.35 upstream stable release (LP: #1875660) + - ext4: use non-movable memory for superblock readahead + - watchdog: sp805: fix restart handler + - xsk: Fix out of boundary write in __xsk_rcv_memcpy + - arm, bpf: Fix bugs with ALU64 {RSH, ARSH} BPF_K shift by 0 + - arm, bpf: Fix offset overflow for BPF_MEM BPF_DW + - objtool: Fix switch table detection in .text.unlikely + - scsi: sg: add sg_remove_request in sg_common_write + - ALSA: hda: Honor PM disablement in PM freeze and thaw_noirq ops + - ARM: dts: imx6: Use gpc for FEC interrupt controller to fix wake on LAN. + - kbuild, btf: Fix dependencies for DEBUG_INFO_BTF + - netfilter: nf_tables: report EOPNOTSUPP on unsupported flags/object type + - irqchip/mbigen: Free msi_desc on device teardown + - ALSA: hda: Don't release card at firmware loading error + - xsk: Add missing check on user supplied headroom size + - of: unittest: kmemleak on changeset destroy + - of: unittest: kmemleak in of_unittest_platform_populate() + - of: unittest: kmemleak in of_unittest_overlay_high_level() + - of: overlay: kmemleak in dup_and_fixup_symbol_prop() + - x86/Hyper-V: Unload vmbus channel in hv panic callback + - x86/Hyper-V: Trigger crash enlightenment only once during system crash. + - x86/Hyper-V: Report crash register data or kmsg before running crash kernel + - x86/Hyper-V: Report crash register data when sysctl_record_panic_msg is not + set + - x86/Hyper-V: Report crash data in die() when panic_on_oops is set + - afs: Fix missing XDR advance in xdr_decode_{AFS,YFS}FSFetchStatus() + - afs: Fix decoding of inline abort codes from version 1 status records + - afs: Fix rename operation status delivery + - afs: Fix afs_d_validate() to set the right directory version + - afs: Fix race between post-modification dir edit and readdir/d_revalidate + - block, bfq: turn put_queue into release_process_ref in + __bfq_bic_change_cgroup + - block, bfq: make reparent_leaf_entity actually work only on leaf entities + - block, bfq: invoke flush_idle_tree after reparent_active_queues in + pd_offline + - rbd: avoid a deadlock on header_rwsem when flushing notifies + - rbd: call rbd_dev_unprobe() after unwatching and flushing notifies + - x86/Hyper-V: Free hv_panic_page when fail to register kmsg dump + - drm/ttm: flush the fence on the bo after we individualize the reservation + object + - clk: Don't cache errors from clk_ops::get_phase() + - clk: at91: usb: continue if clk_hw_round_rate() return zero + - net/mlx5e: Enforce setting of a single FEC mode + - f2fs: fix the panic in do_checkpoint() + - ARM: dts: rockchip: fix vqmmc-supply property name for rk3188-bqedison2qc + - arm64: dts: allwinner: a64: Fix display clock register range + - power: supply: bq27xxx_battery: Silence deferred-probe error + - clk: tegra: Fix Tegra PMC clock out parents + - arm64: tegra: Add PCIe endpoint controllers nodes for Tegra194 + - arm64: tegra: Fix Tegra194 PCIe compatible string + - arm64: dts: clearfog-gt-8k: set gigabit PHY reset deassert delay + - soc: imx: gpc: fix power up sequencing + - dma-coherent: fix integer overflow in the reserved-memory dma allocation + - rtc: 88pm860x: fix possible race condition + - NFS: alloc_nfs_open_context() must use the file cred when available + - NFSv4/pnfs: Return valid stateids in nfs_layout_find_inode_by_stateid() + - NFSv4.2: error out when relink swapfile + - ARM: dts: rockchip: fix lvds-encoder ports subnode for rk3188-bqedison2qc + - KVM: PPC: Book3S HV: Fix H_CEDE return code for nested guests + - f2fs: fix to show norecovery mount option + - phy: uniphier-usb3ss: Add Pro5 support + - NFS: direct.c: Fix memory leak of dreq when nfs_get_lock_context fails + - f2fs: Fix mount failure due to SPO after a successful online resize FS + - f2fs: Add a new CP flag to help fsck fix resize SPO issues + - s390/cpuinfo: fix wrong output when CPU0 is offline + - hibernate: Allow uswsusp to write to swap + - btrfs: add RCU locks around block group initialization + - powerpc/prom_init: Pass the "os-term" message to hypervisor + - powerpc/maple: Fix declaration made after definition + - s390/cpum_sf: Fix wrong page count in error message + - ext4: do not commit super on read-only bdev + - um: ubd: Prevent buffer overrun on command completion + - cifs: Allocate encryption header through kmalloc + - mm/hugetlb: fix build failure with HUGETLB_PAGE but not HUGEBTLBFS + - drm/nouveau/svm: check for SVM initialized before migrating + - drm/nouveau/svm: fix vma range check for migration + - include/linux/swapops.h: correct guards for non_swap_entry() + - percpu_counter: fix a data race at vm_committed_as + - compiler.h: fix error in BUILD_BUG_ON() reporting + - KVM: s390: vsie: Fix possible race when shadowing region 3 tables + - drm/nouveau: workaround runpm fail by disabling PCI power management on + certain intel bridges + - leds: core: Fix warning message when init_data + - x86: ACPI: fix CPU hotplug deadlock + - csky: Fixup cpu speculative execution to IO area + - drm/amdkfd: kfree the wrong pointer + - NFS: Fix memory leaks in nfs_pageio_stop_mirroring() + - csky: Fixup get wrong psr value from phyical reg + - f2fs: fix NULL pointer dereference in f2fs_write_begin() + - ACPICA: Fixes for acpiExec namespace init file + - um: falloc.h needs to be directly included for older libc + - drm/vc4: Fix HDMI mode validation + - iommu/virtio: Fix freeing of incomplete domains + - iommu/vt-d: Fix mm reference leak + - ext2: fix empty body warnings when -Wextra is used + - iommu/vt-d: Silence RCU-list debugging warning in dmar_find_atsr() + - iommu/vt-d: Fix page request descriptor size + - ext2: fix debug reference to ext2_xattr_cache + - sunrpc: Fix gss_unwrap_resp_integ() again + - csky: Fixup init_fpu compile warning with __init + - power: supply: axp288_fuel_gauge: Broaden vendor check for Intel Compute + Sticks. + - libnvdimm: Out of bounds read in __nd_ioctl() + - iommu/amd: Fix the configuration of GCR3 table root pointer + - f2fs: fix to wait all node page writeback + - drm/nouveau/gr/gp107,gp108: implement workaround for HW hanging during init + - net: dsa: bcm_sf2: Fix overflow checks + - dma-debug: fix displaying of dma allocation type + - fbdev: potential information leak in do_fb_ioctl() + - ARM: dts: sunxi: Fix DE2 clocks register range + - iio: si1133: read 24-bit signed integer for measurement + - fbmem: Adjust indentation in fb_prepare_logo and fb_blank + - tty: evh_bytechan: Fix out of bounds accesses + - locktorture: Print ratio of acquisitions, not failures + - mtd: rawnand: free the nand_device object + - mtd: spinand: Explicitly use MTD_OPS_RAW to write the bad block marker to + OOB + - docs: Fix path to MTD command line partition parser + - mtd: lpddr: Fix a double free in probe() + - mtd: phram: fix a double free issue in error path + - KEYS: Don't write out to userspace while holding key semaphore + - bpf: fix buggy r0 retval refinement for tracing helpers + - bpf: Test_verifier, bpf_get_stack return value add <0 + - bpf: Test_progs, add test to catch retval refine error handling + - SAUCE: bpf: Test_progs, fix test_get_stack_rawtp_err.c build + - bpf, test_verifier: switch bpf_get_stack's 0 s> r8 test + - Linux 5.4.35 + * Killer(R) Wi-Fi 6 AX1650i 160MHz Wireless Network Adapter (201NGW), + REV=0x354 [8086:a0f0] subsystem id [1a56:1651] wireless adapter not found + due to firmware crash (LP: #1874685) + - iwlwifi: pcie: handle QuZ configs with killer NICs as well + * Support DMIC micmute LED on HP platforms (LP: #1876859) + - ALSA: hda/realtek - Introduce polarity for micmute LED GPIO + - ALSA: hda/realtek - Enable micmute LED on and HP system + - ALSA: hda/realtek - Add LED class support for micmute LED + - ALSA: hda/realtek - Fix unused variable warning w/o + CONFIG_LEDS_TRIGGER_AUDIO + - ASoC: SOF: Update correct LED status at the first time usage of + update_mute_led() + * linux: riscv: set max_pfn to the PFN of the last page (LP: #1876885) + - riscv: set max_pfn to the PFN of the last page + * Dell XPS 13 9300 mirror mode doesn't work sometimes with WD19TB + (LP: #1877013) + - drm/i915/perf: Do not clear pollin for small user read buffers + * [UBUNTU 20.04] s390x/pci: do not allow to create more pci functions than + configured via CONFIG_PCI_NR_FUNCTIONS (LP: #1874057) + - s390/pci: Fix zpci_alloc_domain() over allocation + * [Ubuntu 20.04] net/mlx5e: Fix endianness handling in pedit mask + (LP: #1872726) + - net/mlx5e: Fix endianness handling in pedit mask + * rtkit-daemon[*]: Failed to make ourselves RT: Operation not permitted after + upgrade to 20.04 (LP: #1875665) + - [Config] Turn off CONFIG_RT_GROUP_SCHED everywhere + * ceph -- Unable to mount ceph volume on s390x (LP: #1875863) + - ceph: fix endianness bug when handling MDS session feature bits + * Do not treat unresolved test case in ftrace from ubuntu_kernel_selftests as + failure (LP: #1877958) + - ftrace/selftest: make unresolved cases cause failure if --fail-unresolved + set + * Add support for Ambiq micro AM1805 RTC chip (LP: #1876667) + - SAUCE: rtc: add am-1805 RTC driver + * alsa/sof: kernel oops on the machine without Intel hdmi audio codec (a + regression in the asoc machine driver) (LP: #1874359) + - SAUCE: ASoC: intel/skl/hda - fix oops on systems without i915 audio codec + * 'Elan touchpad' not detected on 'Lenovo ThinkBook 15 IIL' (LP: #1861610) + - SAUCE: Input: elan_i2c - add more hardware ID for Lenovo laptop + + [ Ubuntu: 5.4.0-33.37 ] + + * focal/linux: 5.4.0-33.37 -proposed tracker (LP: #1879926) + * Docker registry doesn't stay up and keeps restarting (LP: #1879690) + - Revert "UBUNTU: SAUCE: overlayfs: fix shitfs special-casing" + - Revert "UBUNTU: SAUCE: overlayfs: use shiftfs hacks only with shiftfs as + underlay" + + -- Marcelo Henrique Cerri Wed, 27 May 2020 15:18:18 -0300 + +linux-azure (5.4.0-1012.12) focal; urgency=medium + + * focal/linux-azure: 5.4.0-1012.12 -proposed tracker (LP: #1877998) + + [ Ubuntu: 5.4.0-31.35 ] + + * focal/linux: 5.4.0-31.35 -proposed tracker (LP: #1877253) + * Intermittent display blackouts on event (LP: #1875254) + - drm/i915: Limit audio CDCLK>=2*BCLK constraint back to GLK only + * Unable to handle kernel pointer dereference in virtual kernel address space + on Eoan (LP: #1876645) + - SAUCE: overlayfs: fix shitfs special-casing + + -- Stefan Bader Mon, 11 May 2020 15:19:48 +0200 + +linux-azure (5.4.0-1011.11) focal; urgency=medium + + * focal/linux-azure: 5.4.0-1011.11 -proposed tracker (LP: #1875380) + + * Packaging resync (LP: #1786013) + - [Packaging] add libcap-dev dependency + + [ Ubuntu: 5.4.0-30.34 ] + + * focal/linux: 5.4.0-30.34 -proposed tracker (LP: #1875385) + * ubuntu/focal64 fails to mount Vagrant shared folders (LP: #1873506) + - [Packaging] Move virtualbox modules to linux-modules + - [Packaging] Remove vbox and zfs modules from generic.inclusion-list + * linux-image-5.0.0-35-generic breaks checkpointing of container + (LP: #1857257) + - SAUCE: overlayfs: use shiftfs hacks only with shiftfs as underlay + * shiftfs: broken shiftfs nesting (LP: #1872094) + - SAUCE: shiftfs: record correct creator credentials + * Add debian/rules targets to compile/run kernel selftests (LP: #1874286) + - [Packaging] add support to compile/run selftests + * shiftfs: O_TMPFILE reports ESTALE (LP: #1872757) + - SAUCE: shiftfs: fix dentry revalidation + * LIO hanging in iscsit_free_session and iscsit_stop_session (LP: #1871688) + - scsi: target: iscsi: calling iscsit_stop_session() inside + iscsit_close_session() has no effect + * [ICL] TC port in legacy/static mode can't be detected due TCCOLD + (LP: #1868936) + - SAUCE: drm/i915: Align power domain names with port names + - SAUCE: drm/i915/display: Move out code to return the digital_port of the aux + ch + - SAUCE: drm/i915/display: Add intel_legacy_aux_to_power_domain() + - SAUCE: drm/i915/display: Split hsw_power_well_enable() into two + - SAUCE: drm/i915/tc/icl: Implement TC cold sequences + - SAUCE: drm/i915/tc: Skip ref held check for TC legacy aux power wells + - SAUCE: drm/i915/tc/tgl: Implement TC cold sequences + - SAUCE: drm/i915/tc: Catch TC users accessing FIA registers without enable + aux + - SAUCE: drm/i915/tc: Do not warn when aux power well of static TC ports + timeout + * alsa/sof: external mic can't be deteced on Lenovo and HP laptops + (LP: #1872569) + - SAUCE: ASoC: intel/skl/hda - set autosuspend timeout for hda codecs + * amdgpu kernel errors in Linux 5.4 (LP: #1871248) + - drm/amd/display: Stop if retimer is not available + * Focal update: v5.4.34 upstream stable release (LP: #1874111) + - amd-xgbe: Use __napi_schedule() in BH context + - hsr: check protocol version in hsr_newlink() + - l2tp: Allow management of tunnels and session in user namespace + - net: dsa: mt7530: fix tagged frames pass-through in VLAN-unaware mode + - net: ipv4: devinet: Fix crash when add/del multicast IP with autojoin + - net: ipv6: do not consider routes via gateways for anycast address check + - net: phy: micrel: use genphy_read_status for KSZ9131 + - net: qrtr: send msgs from local of same id as broadcast + - net: revert default NAPI poll timeout to 2 jiffies + - net: tun: record RX queue in skb before do_xdp_generic() + - net: dsa: mt7530: move mt7623 settings out off the mt7530 + - net: ethernet: mediatek: move mt7623 settings out off the mt7530 + - net/mlx5: Fix frequent ioread PCI access during recovery + - net/mlx5e: Add missing release firmware call + - net/mlx5e: Fix nest_level for vlan pop action + - net/mlx5e: Fix pfnum in devlink port attribute + - net: stmmac: dwmac-sunxi: Provide TX and RX fifo sizes + - ovl: fix value of i_ino for lower hardlink corner case + - scsi: ufs: Fix ufshcd_hold() caused scheduling while atomic + - platform/chrome: cros_ec_rpmsg: Fix race with host event + - jbd2: improve comments about freeing data buffers whose page mapping is NULL + - acpi/nfit: improve bounds checking for 'func' + - perf report: Fix no branch type statistics report issue + - pwm: pca9685: Fix PWM/GPIO inter-operation + - ext4: fix incorrect group count in ext4_fill_super error message + - ext4: fix incorrect inodes per group in error message + - clk: at91: sam9x60: fix usb clock parents + - clk: at91: usb: use proper usbs_mask + - ARM: dts: imx7-colibri: fix muxing of usbc_det pin + - arm64: dts: librem5-devkit: add a vbus supply to usb0 + - usb: dwc3: gadget: Don't clear flags before transfer ended + - ASoC: Intel: mrfld: fix incorrect check on p->sink + - ASoC: Intel: mrfld: return error codes when an error occurs + - ALSA: hda/realtek - Enable the headset mic on Asus FX505DT + - ALSA: usb-audio: Filter error from connector kctl ops, too + - ALSA: usb-audio: Don't override ignore_ctl_error value from the map + - ALSA: usb-audio: Don't create jack controls for PCM terminals + - ALSA: usb-audio: Check mapping at creating connector controls, too + - arm64: vdso: don't free unallocated pages + - keys: Fix proc_keys_next to increase position index + - tracing: Fix the race between registering 'snapshot' event trigger and + triggering 'snapshot' operation + - btrfs: check commit root generation in should_ignore_root + - nl80211: fix NL80211_ATTR_FTM_RESPONDER policy + - mac80211: fix race in ieee80211_register_hw() + - mac80211_hwsim: Use kstrndup() in place of kasprintf() + - net/mlx5e: Encapsulate updating netdev queues into a function + - net/mlx5e: Rename hw_modify to preactivate + - net/mlx5e: Use preactivate hook to set the indirection table + - drm/amd/powerplay: force the trim of the mclk dpm_levels if OD is enabled + - drm/amdgpu: fix the hw hang during perform system reboot and reset + - i2c: designware: platdrv: Remove DPM_FLAG_SMART_SUSPEND flag on BYT and CHT + - ext4: do not zeroout extents beyond i_disksize + - irqchip/ti-sci-inta: Fix processing of masked irqs + - x86/resctrl: Preserve CDP enable over CPU hotplug + - x86/resctrl: Fix invalid attempt at removing the default resource group + - scsi: target: remove boilerplate code + - scsi: target: fix hang when multiple threads try to destroy the same iscsi + session + - x86/microcode/AMD: Increase microcode PATCH_MAX_SIZE + - Linux 5.4.34 + * Focal update: v5.4.33 upstream stable release (LP: #1873481) + - ARM: dts: sun8i-a83t-tbs-a711: HM5065 doesn't like such a high voltage + - bus: sunxi-rsb: Return correct data when mixing 16-bit and 8-bit reads + - ARM: dts: Fix dm814x Ethernet by changing to use rgmii-id mode + - bpf: Fix deadlock with rq_lock in bpf_send_signal() + - iwlwifi: mvm: Fix rate scale NSS configuration + - Input: tm2-touchkey - add support for Coreriver TC360 variant + - soc: fsl: dpio: register dpio irq handlers after dpio create + - rxrpc: Abstract out the calculation of whether there's Tx space + - rxrpc: Fix call interruptibility handling + - net: stmmac: platform: Fix misleading interrupt error msg + - net: vxge: fix wrong __VA_ARGS__ usage + - hinic: fix a bug of waitting for IO stopped + - hinic: fix the bug of clearing event queue + - hinic: fix out-of-order excution in arm cpu + - hinic: fix wrong para of wait_for_completion_timeout + - hinic: fix wrong value of MIN_SKB_LEN + - selftests/net: add definition for SOL_DCCP to fix compilation errors for old + libc + - cxgb4/ptp: pass the sign of offset delta in FW CMD + - drm/scheduler: fix rare NULL ptr race + - cfg80211: Do not warn on same channel at the end of CSA + - qlcnic: Fix bad kzalloc null test + - i2c: st: fix missing struct parameter description + - i2c: pca-platform: Use platform_irq_get_optional + - media: rc: add keymap for Videostrong KII Pro + - cpufreq: imx6q: Fixes unwanted cpu overclocking on i.MX6ULL + - staging: wilc1000: avoid double unlocking of 'wilc->hif_cs' mutex + - media: venus: hfi_parser: Ignore HEVC encoding for V1 + - firmware: arm_sdei: fix double-lock on hibernate with shared events + - null_blk: Fix the null_add_dev() error path + - null_blk: Handle null_add_dev() failures properly + - null_blk: fix spurious IO errors after failed past-wp access + - media: imx: imx7_mipi_csis: Power off the source when stopping streaming + - media: imx: imx7-media-csi: Fix video field handling + - xhci: bail out early if driver can't accress host in resume + - x86: Don't let pgprot_modify() change the page encryption bit + - dma-mapping: Fix dma_pgprot() for unencrypted coherent pages + - block: keep bdi->io_pages in sync with max_sectors_kb for stacked devices + - debugfs: Check module state before warning in {full/open}_proxy_open() + - irqchip/versatile-fpga: Handle chained IRQs properly + - time/sched_clock: Expire timer in hardirq context + - media: allegro: fix type of gop_length in channel_create message + - sched: Avoid scale real weight down to zero + - selftests/x86/ptrace_syscall_32: Fix no-vDSO segfault + - PCI/switchtec: Fix init_completion race condition with poll_wait() + - block, bfq: move forward the getting of an extra ref in bfq_bfqq_move + - media: i2c: video-i2c: fix build errors due to 'imply hwmon' + - libata: Remove extra scsi_host_put() in ata_scsi_add_hosts() + - pstore/platform: fix potential mem leak if pstore_init_fs failed + - gfs2: Do log_flush in gfs2_ail_empty_gl even if ail list is empty + - gfs2: Don't demote a glock until its revokes are written + - cpufreq: imx6q: fix error handling + - x86/boot: Use unsigned comparison for addresses + - efi/x86: Ignore the memory attributes table on i386 + - genirq/irqdomain: Check pointer in irq_domain_alloc_irqs_hierarchy() + - block: Fix use-after-free issue accessing struct io_cq + - media: i2c: ov5695: Fix power on and off sequences + - usb: dwc3: core: add support for disabling SS instances in park mode + - irqchip/gic-v4: Provide irq_retrigger to avoid circular locking dependency + - md: check arrays is suspended in mddev_detach before call quiesce operations + - firmware: fix a double abort case with fw_load_sysfs_fallback + - spi: spi-fsl-dspi: Replace interruptible wait queue with a simple completion + - locking/lockdep: Avoid recursion in lockdep_count_{for,back}ward_deps() + - block, bfq: fix use-after-free in bfq_idle_slice_timer_body + - btrfs: qgroup: ensure qgroup_rescan_running is only set when the worker is + at least queued + - btrfs: remove a BUG_ON() from merge_reloc_roots() + - btrfs: restart relocate_tree_blocks properly + - btrfs: track reloc roots based on their commit root bytenr + - ASoC: fix regwmask + - ASoC: dapm: connect virtual mux with default value + - ASoC: dpcm: allow start or stop during pause for backend + - ASoC: topology: use name_prefix for new kcontrol + - usb: gadget: f_fs: Fix use after free issue as part of queue failure + - usb: gadget: composite: Inform controller driver of self-powered + - ALSA: usb-audio: Add mixer workaround for TRX40 and co + - ALSA: hda: Add driver blacklist + - ALSA: hda: Fix potential access overflow in beep helper + - ALSA: ice1724: Fix invalid access for enumerated ctl items + - ALSA: pcm: oss: Fix regression by buffer overflow fix + - ALSA: hda/realtek - a fake key event is triggered by running shutup + - ALSA: doc: Document PC Beep Hidden Register on Realtek ALC256 + - ALSA: hda/realtek - Set principled PC Beep configuration for ALC256 + - ALSA: hda/realtek - Remove now-unnecessary XPS 13 headphone noise fixups + - ALSA: hda/realtek - Add quirk for Lenovo Carbon X1 8th gen + - ALSA: hda/realtek - Add quirk for MSI GL63 + - media: venus: firmware: Ignore secure call error on first resume + - media: hantro: Read be32 words starting at every fourth byte + - media: ti-vpe: cal: fix disable_irqs to only the intended target + - media: ti-vpe: cal: fix a kernel oops when unloading module + - seccomp: Add missing compat_ioctl for notify + - acpi/x86: ignore unspecified bit positions in the ACPI global lock field + - ACPICA: Allow acpi_any_gpe_status_set() to skip one GPE + - ACPI: PM: s2idle: Refine active GPEs check + - thermal: devfreq_cooling: inline all stubs for CONFIG_DEVFREQ_THERMAL=n + - nvmet-tcp: fix maxh2cdata icresp parameter + - efi/x86: Add TPM related EFI tables to unencrypted mapping checks + - PCI: pciehp: Fix indefinite wait on sysfs requests + - PCI/ASPM: Clear the correct bits when enabling L1 substates + - PCI: Add boot interrupt quirk mechanism for Xeon chipsets + - PCI: qcom: Fix the fixup of PCI_VENDOR_ID_QCOM + - PCI: endpoint: Fix for concurrent memory allocation in OB address region + - sched/fair: Fix enqueue_task_fair warning + - tpm: Don't make log failures fatal + - tpm: tpm1_bios_measurements_next should increase position index + - tpm: tpm2_bios_measurements_next should increase position index + - cpu/hotplug: Ignore pm_wakeup_pending() for disable_nonboot_cpus() + - genirq/debugfs: Add missing sanity checks to interrupt injection + - irqchip/versatile-fpga: Apply clear-mask earlier + - io_uring: remove bogus RLIMIT_NOFILE check in file registration + - pstore: pstore_ftrace_seq_next should increase position index + - MIPS/tlbex: Fix LDDIR usage in setup_pw() for Loongson-3 + - MIPS: OCTEON: irq: Fix potential NULL pointer dereference + - PM / Domains: Allow no domain-idle-states DT property in genpd when parsing + - PM: sleep: wakeup: Skip wakeup_source_sysfs_remove() if device is not there + - ath9k: Handle txpower changes even when TPC is disabled + - signal: Extend exec_id to 64bits + - x86/tsc_msr: Use named struct initializers + - x86/tsc_msr: Fix MSR_FSB_FREQ mask for Cherry Trail devices + - x86/tsc_msr: Make MSR derived TSC frequency more accurate + - x86/entry/32: Add missing ASM_CLAC to general_protection entry + - platform/x86: asus-wmi: Support laptops where the first battery is named + BATT + - KVM: nVMX: Properly handle userspace interrupt window request + - KVM: s390: vsie: Fix region 1 ASCE sanity shadow address checks + - KVM: s390: vsie: Fix delivery of addressing exceptions + - KVM: x86: Allocate new rmap and large page tracking when moving memslot + - KVM: VMX: Always VMCLEAR in-use VMCSes during crash with kexec support + - KVM: x86: Gracefully handle __vmalloc() failure during VM allocation + - KVM: VMX: Add a trampoline to fix VMREAD error handling + - KVM: VMX: fix crash cleanup when KVM wasn't used + - smb3: fix performance regression with setting mtime + - CIFS: Fix bug which the return value by asynchronous read is error + - mtd: spinand: Stop using spinand->oobbuf for buffering bad block markers + - mtd: spinand: Do not erase the block before writing a bad block marker + - btrfs: Don't submit any btree write bio if the fs has errors + - Btrfs: fix crash during unmount due to race with delayed inode workers + - btrfs: reloc: clean dirty subvols if we fail to start a transaction + - btrfs: set update the uuid generation as soon as possible + - btrfs: drop block from cache on error in relocation + - btrfs: fix missing file extent item for hole after ranged fsync + - btrfs: unset reloc control if we fail to recover + - btrfs: fix missing semaphore unlock in btrfs_sync_file + - btrfs: use nofs allocations for running delayed items + - remoteproc: qcom_q6v5_mss: Don't reassign mpss region on shutdown + - remoteproc: qcom_q6v5_mss: Reload the mba region on coredump + - remoteproc: Fix NULL pointer dereference in rproc_virtio_notify + - crypto: rng - Fix a refcounting bug in crypto_rng_reset() + - crypto: mxs-dcp - fix scatterlist linearization for hash + - erofs: correct the remaining shrink objects + - io_uring: honor original task RLIMIT_FSIZE + - mmc: sdhci-of-esdhc: fix esdhc_reset() for different controller versions + - powerpc/pseries: Drop pointless static qualifier in vpa_debugfs_init() + - tools: gpio: Fix out-of-tree build regression + - net: qualcomm: rmnet: Allow configuration updates to existing devices + - arm64: dts: allwinner: h6: Fix PMU compatible + - sched/core: Remove duplicate assignment in sched_tick_remote() + - arm64: dts: allwinner: h5: Fix PMU compatible + - mm, memcg: do not high throttle allocators based on wraparound + - dm writecache: add cond_resched to avoid CPU hangs + - dm integrity: fix a crash with unusually large tag size + - dm verity fec: fix memory leak in verity_fec_dtr + - dm clone: Add overflow check for number of regions + - dm clone metadata: Fix return type of dm_clone_nr_of_hydrated_regions() + - XArray: Fix xas_pause for large multi-index entries + - xarray: Fix early termination of xas_for_each_marked + - crypto: caam/qi2 - fix chacha20 data size error + - crypto: caam - update xts sector size for large input length + - crypto: ccree - protect against empty or NULL scatterlists + - crypto: ccree - only try to map auth tag if needed + - crypto: ccree - dec auth tag size from cryptlen map + - scsi: zfcp: fix missing erp_lock in port recovery trigger for point-to-point + - scsi: ufs: fix Auto-Hibern8 error detection + - ARM: dts: exynos: Fix polarity of the LCD SPI bus on UniversalC210 board + - arm64: dts: ti: k3-am65: Add clocks to dwc3 nodes + - arm64: armv8_deprecated: Fix undef_hook mask for thumb setend + - selftests: vm: drop dependencies on page flags from mlock2 tests + - selftests/vm: fix map_hugetlb length used for testing read and write + - selftests/powerpc: Add tlbie_test in .gitignore + - vfio: platform: Switch to platform_get_irq_optional() + - drm/i915/gem: Flush all the reloc_gpu batch + - drm/etnaviv: rework perfmon query infrastructure + - drm: Remove PageReserved manipulation from drm_pci_alloc + - drm/amdgpu/powerplay: using the FCLK DPM table to set the MCLK + - drm/amdgpu: unify fw_write_wait for new gfx9 asics + - powerpc/pseries: Avoid NULL pointer dereference when drmem is unavailable + - nfsd: fsnotify on rmdir under nfsd/clients/ + - NFS: Fix use-after-free issues in nfs_pageio_add_request() + - NFS: Fix a page leak in nfs_destroy_unlinked_subrequests() + - ext4: fix a data race at inode->i_blocks + - fs/filesystems.c: downgrade user-reachable WARN_ONCE() to pr_warn_once() + - ocfs2: no need try to truncate file beyond i_size + - perf tools: Support Python 3.8+ in Makefile + - s390/diag: fix display of diagnose call statistics + - Input: i8042 - add Acer Aspire 5738z to nomux list + - ftrace/kprobe: Show the maxactive number on kprobe_events + - clk: ingenic/jz4770: Exit with error if CGU init failed + - clk: ingenic/TCU: Fix round_rate returning error + - kmod: make request_module() return an error when autoloading is disabled + - cpufreq: powernv: Fix use-after-free + - hfsplus: fix crash and filesystem corruption when deleting files + - ipmi: fix hung processes in __get_guid() + - xen/blkfront: fix memory allocation flags in blkfront_setup_indirect() + - powerpc/64/tm: Don't let userspace set regs->trap via sigreturn + - powerpc/fsl_booke: Avoid creating duplicate tlb1 entry + - powerpc/hash64/devmap: Use H_PAGE_THP_HUGE when setting up huge devmap PTE + entries + - powerpc/xive: Use XIVE_BAD_IRQ instead of zero to catch non configured IPIs + - powerpc/64: Setup a paca before parsing device tree etc. + - powerpc/xive: Fix xmon support on the PowerNV platform + - powerpc/kprobes: Ignore traps that happened in real mode + - powerpc/64: Prevent stack protection in early boot + - scsi: mpt3sas: Fix kernel panic observed on soft HBA unplug + - powerpc: Make setjmp/longjmp signature standard + - arm64: Always force a branch protection mode when the compiler has one + - dm zoned: remove duplicate nr_rnd_zones increase in dmz_init_zone() + - dm clone: replace spin_lock_irqsave with spin_lock_irq + - dm clone: Fix handling of partial region discards + - dm clone: Add missing casts to prevent overflows and data corruption + - Revert "drm/dp_mst: Remove VCPI while disabling topology mgr" + - drm/dp_mst: Fix clearing payload state on topology disable + - drm/amdgpu: fix gfx hang during suspend with video playback (v2) + - drm/i915/icl+: Don't enable DDI IO power on a TypeC port in TBT mode + - powerpc/kasan: Fix kasan_remap_early_shadow_ro() + - mmc: sdhci: Convert sdhci_set_timeout_irq() to non-static + - mmc: sdhci: Refactor sdhci_set_timeout() + - bpf: Fix tnum constraints for 32-bit comparisons + - mfd: dln2: Fix sanity checking for endpoints + - efi/x86: Fix the deletion of variables in mixed mode + - ASoC: stm32: sai: Add missing cleanup + - Linux 5.4.33 + - SUNRPC: fix krb5p mount to provide large enough buffer in rq_rcvsize + * Panic on suspend/resume Kernel panic - not syncing: stack-protector: Kernel + stack is corrupted in: sata_pmp_eh_recover+0xa2b/0xa40 (LP: #1821434) // + Focal update: v5.4.33 upstream stable release (LP: #1873481) + - libata: Return correct status in sata_pmp_eh_recover_pm() when + ATA_DFLAG_DETACH is set + * Focal update: v5.4.32 upstream stable release (LP: #1873292) + - cxgb4: fix MPS index overwrite when setting MAC address + - ipv6: don't auto-add link-local address to lag ports + - net: dsa: bcm_sf2: Do not register slave MDIO bus with OF + - net: dsa: bcm_sf2: Ensure correct sub-node is parsed + - net: dsa: mt7530: fix null pointer dereferencing in port5 setup + - net: phy: micrel: kszphy_resume(): add delay after genphy_resume() before + accessing PHY registers + - net_sched: add a temporary refcnt for struct tcindex_data + - net_sched: fix a missing refcnt in tcindex_init() + - net: stmmac: dwmac1000: fix out-of-bounds mac address reg setting + - tun: Don't put_page() for all negative return values from XDP program + - mlxsw: spectrum_flower: Do not stop at FLOW_ACTION_VLAN_MANGLE + - r8169: change back SG and TSO to be disabled by default + - s390: prevent leaking kernel address in BEAR + - random: always use batched entropy for get_random_u{32,64} + - usb: dwc3: gadget: Wrap around when skip TRBs + - uapi: rename ext2_swab() to swab() and share globally in swab.h + - slub: improve bit diffusion for freelist ptr obfuscation + - tools/accounting/getdelays.c: fix netlink attribute length + - hwrng: imx-rngc - fix an error path + - ACPI: PM: Add acpi_[un]register_wakeup_handler() + - platform/x86: intel_int0002_vgpio: Use acpi_register_wakeup_handler() + - ASoC: jz4740-i2s: Fix divider written at incorrect offset in register + - IB/hfi1: Call kobject_put() when kobject_init_and_add() fails + - IB/hfi1: Fix memory leaks in sysfs registration and unregistration + - IB/mlx5: Replace tunnel mpls capability bits for tunnel_offloads + - ARM: imx: Enable ARM_ERRATA_814220 for i.MX6UL and i.MX7D + - ARM: imx: only select ARM_ERRATA_814220 for ARMv7-A + - ceph: remove the extra slashes in the server path + - ceph: canonicalize server path in place + - include/uapi/linux/swab.h: fix userspace breakage, use __BITS_PER_LONG for + swap + - RDMA/ucma: Put a lock around every call to the rdma_cm layer + - RDMA/cma: Teach lockdep about the order of rtnl and lock + - RDMA/siw: Fix passive connection establishment + - Bluetooth: RFCOMM: fix ODEBUG bug in rfcomm_dev_ioctl + - RDMA/cm: Update num_paths in cma_resolve_iboe_route error flow + - blk-mq: Keep set->nr_hw_queues and set->map[].nr_queues in sync + - fbcon: fix null-ptr-deref in fbcon_switch + - iommu/vt-d: Allow devices with RMRRs to use identity domain + - Linux 5.4.32 + * Focal update: v5.4.31 upstream stable release (LP: #1871651) + - nvme-rdma: Avoid double freeing of async event data + - kconfig: introduce m32-flag and m64-flag + - drm/amd/display: Add link_rate quirk for Apple 15" MBP 2017 + - drm/bochs: downgrade pci_request_region failure from error to warning + - initramfs: restore default compression behavior + - drm/amdgpu: fix typo for vcn1 idle check + - [Packaging] add libcap-dev dependency + - tools/power turbostat: Fix gcc build warnings + - tools/power turbostat: Fix missing SYS_LPI counter on some Chromebooks + - tools/power turbostat: Fix 32-bit capabilities warning + - net/mlx5e: kTLS, Fix TCP seq off-by-1 issue in TX resync flow + - XArray: Fix xa_find_next for large multi-index entries + - padata: fix uninitialized return value in padata_replace() + - brcmfmac: abort and release host after error + - misc: rtsx: set correct pcr_ops for rts522A + - misc: pci_endpoint_test: Fix to support > 10 pci-endpoint-test devices + - misc: pci_endpoint_test: Avoid using module parameter to determine irqtype + - PCI: sysfs: Revert "rescan" file renames + - coresight: do not use the BIT() macro in the UAPI header + - mei: me: add cedar fork device ids + - nvmem: check for NULL reg_read and reg_write before dereferencing + - extcon: axp288: Add wakeup support + - power: supply: axp288_charger: Add special handling for HP Pavilion x2 10 + - Revert "dm: always call blk_queue_split() in dm_process_bio()" + - ALSA: hda/ca0132 - Add Recon3Di quirk to handle integrated sound on EVGA X99 + Classified motherboard + - soc: mediatek: knows_txdone needs to be set in Mediatek CMDQ helper + - net/mlx5e: kTLS, Fix wrong value in record tracker enum + - iwlwifi: consider HE capability when setting LDPC + - iwlwifi: yoyo: don't add TLV offset when reading FIFOs + - iwlwifi: dbg: don't abort if sending DBGC_SUSPEND_RESUME fails + - rxrpc: Fix sendmsg(MSG_WAITALL) handling + - IB/hfi1: Ensure pq is not left on waitlist + - tcp: fix TFO SYNACK undo to avoid double-timestamp-undo + - watchdog: iTCO_wdt: Export vendorsupport + - watchdog: iTCO_wdt: Make ICH_RES_IO_SMI optional + - i2c: i801: Do not add ICH_RES_IO_SMI for the iTCO_wdt device + - net: Fix Tx hash bound checking + - padata: always acquire cpu_hotplug_lock before pinst->lock + - mm: mempolicy: require at least one nodeid for MPOL_PREFERRED + - Linux 5.4.31 + * Add hw timestamps to received skbs in peak_canfd (LP: #1874124) + - can: peak_canfd: provide hw timestamps in rx skbs + * kselftest: seccomp kill_after_ptrace() timeout (LP: #1872047) + - SAUCE: kselftest/runner: allow to properly deliver signals to tests + + [ Ubuntu: 5.4.0-29.33 ] + + * focal/linux: 5.4.0-29.33 -proposed tracker (LP: #1875858) + * Packaging resync (LP: #1786013) + - update dkms package versions + * Add signed modules for the 435 NVIDIA driver (LP: #1875888) + - [Packaging] NVIDIA -- add signed modules for the 435 NVIDIA driver + * built-using constraints preventing uploads (LP: #1875601) + - temporarily drop Built-Using data + + [ Ubuntu: 5.4.0-28.32 ] + + * CVE-2020-11884 + - SAUCE: s390/mm: fix page table upgrade vs 2ndary address mode accesses + + [ Ubuntu: 5.4.0-26.30 ] + + * focal/linux: 5.4.0-26.30 -proposed tracker (LP: #1873882) + * Packaging resync (LP: #1786013) + - update dkms package versions + * swap storms kills interactive use (LP: #1861359) + - SAUCE: drm/i915: prevent direct writeback from the shrinker + * 5.4.0-24.28 does not seem to apply rtprio, whereas -21 does. (LP: #1873315) + - [Config] lowlatency: turn off RT_GROUP_SCHED + * [RTL810xE] No ethernet connection (LP: #1871182) + - net: phy: realtek: fix handling of RTL8105e-integrated PHY + + [ Ubuntu: 5.4.0-25.29 ] + + * focal/linux: 5.4.0-25.29 -proposed tracker (LP: #1873459) + * [TGL] VMD support in TGL (LP: #1855954) + - PCI: vmd: Add bus 224-255 restriction decode + - PCI: vmd: Add device id for VMD device 8086:9A0B + * Can not see the storage with Intel RAID On mode enabled on Intel Comet Lake + (LP: #1871812) + - ahci: Add Intel Comet Lake PCH RAID PCI ID + + -- Stefan Bader Tue, 05 May 2020 16:09:34 +0200 + +linux-azure (5.4.0-1010.10) focal; urgency=medium + + * focal/linux-azure: 5.4.0-1010.10 -proposed tracker (LP: #1871934) + + * Miscellaneous Ubuntu changes + - [Config] CONFIG_RT_GROUP_SCHED=y + + [ Ubuntu: 5.4.0-24.28 ] + + * focal/linux: 5.4.0-24.28 -proposed tracker (LP: #1871939) + * getitimer returns it_value=0 erroneously (LP: #1349028) + - [Config] CONTEXT_TRACKING_FORCE policy should be unset + * 12d1:1038 Dual-Role OTG device on non-HNP port - unable to enumerate USB + device on port 1 (LP: #1047527) + - [Config] USB_OTG_FSM policy not needed + * Add DCPD backlight support for HP CML system (LP: #1871589) + - SAUCE: drm/i915: Force DPCD backlight mode for HP CML 2020 system + * Backlight brightness cannot be adjusted using keys (LP: #1860303) + - SAUCE drm/i915: Force DPCD backlight mode for HP Spectre x360 Convertible + 13t-aw100 + * CVE-2020-11494 + - slcan: Don't transmit uninitialized stack data in padding + * Ubuntu Kernel Support for OpenPOWER NV Secure & Trusted Boot (LP: #1866909) + - powerpc: Detect the secure boot mode of the system + - powerpc/ima: Add support to initialize ima policy rules + - powerpc: Detect the trusted boot state of the system + - powerpc/ima: Define trusted boot policy + - ima: Make process_buffer_measurement() generic + - certs: Add wrapper function to check blacklisted binary hash + - ima: Check against blacklisted hashes for files with modsig + - powerpc/ima: Update ima arch policy to check for blacklist + - powerpc/ima: Indicate kernel modules appended signatures are enforced + - powerpc/powernv: Add OPAL API interface to access secure variable + - powerpc: expose secure variables to userspace via sysfs + - x86/efi: move common keyring handler functions to new file + - powerpc: Load firmware trusted keys/hashes into kernel keyring + - x86/efi: remove unused variables + * [roce-0227]sync mainline kernel 5.6rc3 roce patchset into ubuntu HWE kernel + branch (LP: #1864950) + - RDMA/hns: Cleanups of magic numbers + - RDMA/hns: Optimize eqe buffer allocation flow + - RDMA/hns: Add the workqueue framework for flush cqe handler + - RDMA/hns: Delayed flush cqe process with workqueue + - RDMA/hns: fix spelling mistake: "attatch" -> "attach" + - RDMA/hns: Initialize all fields of doorbells to zero + - RDMA/hns: Treat revision HIP08_A as a special case + - RDMA/hns: Use flush framework for the case in aeq + - RDMA/hns: Stop doorbell update while qp state error + - RDMA/hns: Optimize qp destroy flow + - RDMA/hns: Optimize qp context create and destroy flow + - RDMA/hns: Optimize qp number assign flow + - RDMA/hns: Optimize qp buffer allocation flow + - RDMA/hns: Optimize qp param setup flow + - RDMA/hns: Optimize kernel qp wrid allocation flow + - RDMA/hns: Optimize qp doorbell allocation flow + - RDMA/hns: Check if depth of qp is 0 before configure + * [hns3-0316]sync mainline kernel 5.6rc4 hns3 patchset into ubuntu HWE kernel + branch (LP: #1867586) + - net: hns3: modify an unsuitable print when setting unknown duplex to fibre + - net: hns3: add enabled TC numbers and DWRR weight info in debugfs + - net: hns3: add support for dump MAC ID and loopback status in debugfs + - net: hns3: add missing help info for QS shaper in debugfs + - net: hns3: fix some mixed type assignment + - net: hns3: rename macro HCLGE_MAX_NCL_CONFIG_LENGTH + - net: hns3: remove an unnecessary resetting check in + hclge_handle_hw_ras_error() + - net: hns3: delete some reduandant code + - net: hns3: add a check before PF inform VF to reset + - net: hns3: print out status register when VF receives unknown source + interrupt + - net: hns3: print out command code when dump fails in debugfs + - net: hns3: synchronize some print relating to reset issue + - net: hns3: delete unnecessary logs after kzalloc fails + * [SRU][F/U/OEM-5.6] UBUNTU: SAUCE: Fix amdgpu hang during acpi event + (LP: #1871316) + - SAUCE: drm/amdgpu: Fix oops when pp_funcs is unset in ACPI event + * alsa: make the dmic detection align to the mainline kernel-5.6 + (LP: #1871284) + - ALSA: hda: add Intel DSP configuration / probe code + - ALSA: hda: fix intel DSP config + - ALSA: hda: Allow non-Intel device probe gracefully + - ALSA: hda: More constifications + - ALSA: hda: Rename back to dmic_detect option + - [Config] SND_INTEL_DSP_CONFIG=m + * add_key05 from ubuntu_ltp_syscalls failed (LP: #1869644) + - KEYS: reaching the keys quotas correctly + * Fix authentication fail on Realtek WiFi 8723de (LP: #1871300) + - SAUCE: rtw88: No retry and report for auth and assoc + - SAUCE: rtw88: fix rate for a while after being connected + - SAUCE: rtw88: Move driver IQK to set channel before association for 11N chip + * Add Mute LED support for an HP laptop (LP: #1871090) + - ALSA: hda/realtek: Enable mute LED on an HP system + * dscr_sysfs_test / futex_bench / tm-unavailable in powerpc from + ubuntu_kernel_selftests timeout on PowerPC nodes with B-5.3 (LP: #1864642) + - Revert "UBUNTU: SAUCE: selftests/powerpc -- Disable timeout for benchmark + and tm tests" + - selftests/powerpc: Turn off timeout setting for benchmarks, dscr, signal, tm + * Update 20.0.4 NVMe Core, NVMe FC Transport and nvme-cli for Broadcom Emulex + lpfc driver 12.6.0.x dependencies (LP: #1856340) + - nvme-fc: Sync nvme-fc header to FC-NVME-2 + - nvme-fc and nvmet-fc: sync with FC-NVME-2 header changes + - nvme-fc: Set new cmd set indicator in nvme-fc cmnd iu + - nvme-fc: clarify error messages + - nvme-fc: ensure association_id is cleared regardless of a Disconnect LS + - nvme: resync include/linux/nvme.h with nvmecli + - nvme: Fix parsing of ANA log page + * Update Broadcom Emulex lpfc driver in 5.4 to 12.6.0.x from 5.5 + (LP: #1855303) + - scsi: lpfc: Fix pt2pt discovery on SLI3 HBAs + - scsi: lpfc: Fix premature re-enabling of interrupts in lpfc_sli_host_down + - scsi: lpfc: Fix miss of register read failure check + - scsi: lpfc: Fix NVME io abort failures causing hangs + - scsi: lpfc: Fix device recovery errors after PLOGI failures + - scsi: lpfc: Fix GPF on scsi command completion + - scsi: lpfc: Fix NVMe ABTS in response to receiving an ABTS + - scsi: lpfc: Fix coverity errors on NULL pointer checks + - scsi: lpfc: Fix host hang at boot or slow boot + - scsi: lpfc: Update async event logging + - scsi: lpfc: Complete removal of FCoE T10 PI support on SLI-4 adapters + - scsi: lpfc: cleanup: remove unused fcp_txcmlpq_cnt + - scsi: lpfc: Update lpfc version to 12.4.0.1 + - scsi: lpfc: Make function lpfc_defer_pt2pt_acc static + - scsi: lpfc: fix lpfc_nvmet_mrq to be bound by hdw queue count + - scsi: lpfc: Fix reporting of read-only fw error errors + - scsi: lpfc: Fix lockdep errors in sli_ringtx_put + - scsi: lpfc: fix coverity error of dereference after null check + - scsi: lpfc: Slight fast-path performance optimizations + - scsi: lpfc: Remove lock contention target write path + - scsi: lpfc: Revise interrupt coalescing for missing scenarios + - scsi: lpfc: Make FW logging dynamically configurable + - scsi: lpfc: Add log macros to allow print by serverity or verbosity setting + - scsi: lpfc: Add FA-WWN Async Event reporting + - scsi: lpfc: Add FC-AL support to lpe32000 models + - scsi: lpfc: Add additional discovery log messages + - scsi: lpfc: Update lpfc version to 12.6.0.0 + - scsi: lpfc: lpfc_attr: Fix Use plain integer as NULL pointer + - scsi: lpfc: lpfc_nvmet: Fix Use plain integer as NULL pointer + - scsi: lpfc: fix build error of lpfc_debugfs.c for vfree/vmalloc + - scsi: lpfc: fix spelling error in MAGIC_NUMER_xxx + - scsi: lpfc: Fix NULL check before mempool_destroy is not needed + - scsi: lpfc: Make lpfc_debugfs_ras_log_data static + - scsi: lpfc: Fix configuration of BB credit recovery in service parameters + - scsi: lpfc: Fix kernel crash at lpfc_nvme_info_show during remote port + bounce + - scsi: lpfc: Fix dynamic fw log enablement check + - scsi: lpfc: Sync with FC-NVMe-2 SLER change to require Conf with SLER + - scsi: lpfc: Clarify FAWNN error message + - scsi: lpfc: Add registration for CPU Offline/Online events + - scsi: lpfc: Change default IRQ model on AMD architectures + - scsi: lpfc: Add enablement of multiple adapter dumps + - scsi: lpfc: Update lpfc version to 12.6.0.1 + - scsi: lpfc: Fix a kernel warning triggered by lpfc_sli4_enable_intr() + - scsi: lpfc: Fix lpfc_cpumask_of_node_init() + - scsi: lpfc: fix inlining of lpfc_sli4_cleanup_poll_list() + - scsi: lpfc: Initialize cpu_map for not present cpus + - scsi: lpfc: revise nvme max queues to be hdwq count + - scsi: lpfc: Update lpfc version to 12.6.0.2 + - scsi: lpfc: size cpu map by last cpu id set + - scsi: lpfc: Fix incomplete NVME discovery when target + - scsi: lpfc: Fix missing check for CSF in Write Object Mbox Rsp + - scsi: lpfc: Fix Fabric hostname registration if system hostname changes + - scsi: lpfc: Fix ras_log via debugfs + - scsi: lpfc: Fix disablement of FC-AL on lpe35000 models + - scsi: lpfc: Fix unmap of dpp bars affecting next driver load + - scsi: lpfc: Fix MDS Latency Diagnostics Err-drop rates + - scsi: lpfc: Fix improper flag check for IO type + - scsi: lpfc: Update lpfc version to 12.6.0.3 + - scsi: lpfc: Fix RQ buffer leakage when no IOCBs available + - scsi: lpfc: Fix lpfc_io_buf resource leak in lpfc_get_scsi_buf_s4 error path + - scsi: lpfc: Fix broken Credit Recovery after driver load + - scsi: lpfc: Fix registration of ELS type support in fdmi + - scsi: lpfc: Fix release of hwq to clear the eq relationship + - scsi: lpfc: Fix compiler warning on frame size + - scsi: lpfc: Fix coverity errors in fmdi attribute handling + - scsi: lpfc: Remove handler for obsolete ELS - Read Port Status (RPS) + - scsi: lpfc: Clean up hba max_lun_queue_depth checks + - scsi: lpfc: Update lpfc version to 12.6.0.4 + - scsi: lpfc: Copyright updates for 12.6.0.4 patches + - scsi: fc: Update Descriptor definition and add RDF and Link Integrity FPINs + - scsi: lpfc: add RDF registration and Link Integrity FPIN logging + * lockdown on power (LP: #1855668) // Ubuntu Kernel Support for OpenPOWER NV + Secure & Trusted Boot (LP: #1866909) + - [Config] Enable configs for OpenPOWER NV Secure & Trusted Boot + * lockdown on power (LP: #1855668) + - SAUCE: (lockdown) powerpc: lock down kernel in secure boot mode + * Focal update: v5.4.30 upstream stable release (LP: #1870571) + - mac80211: Check port authorization in the ieee80211_tx_dequeue() case + - mac80211: fix authentication with iwlwifi/mvm + - serial: sprd: Fix a dereference warning + - vt: selection, introduce vc_is_sel + - vt: ioctl, switch VT_IS_IN_USE and VT_BUSY to inlines + - vt: switch vt_dont_switch to bool + - vt: vt_ioctl: remove unnecessary console allocation checks + - vt: vt_ioctl: fix VT_DISALLOCATE freeing in-use virtual console + - vt: vt_ioctl: fix use-after-free in vt_in_use() + - platform/x86: pmc_atom: Add Lex 2I385SW to critclk_systems DMI table + - bpf: Explicitly memset the bpf_attr structure + - bpf: Explicitly memset some bpf info structures declared on the stack + - gpiolib: acpi: Add quirk to ignore EC wakeups on HP x2 10 CHT + AXP288 model + - net: ks8851-ml: Fix IO operations, again + - clk: imx: Align imx sc clock msg structs to 4 + - clk: imx: Align imx sc clock parent msg structs to 4 + - clk: ti: am43xx: Fix clock parent for RTC clock + - libceph: fix alloc_msg_with_page_vector() memory leaks + - arm64: alternative: fix build with clang integrated assembler + - perf map: Fix off by one in strncpy() size argument + - ARM: dts: oxnas: Fix clear-mask property + - ARM: bcm2835-rpi-zero-w: Add missing pinctrl name + - ARM: dts: imx6: phycore-som: fix arm and soc minimum voltage + - ARM: dts: N900: fix onenand timings + - ARM: dts: sun8i: r40: Move AHCI device node based on address order + - arm64: dts: ls1043a-rdb: correct RGMII delay mode to rgmii-id + - arm64: dts: ls1046ardb: set RGMII interfaces to RGMII_ID mode + - Linux 5.4.30 + * Miscellaneous Ubuntu changes + - [Config] CONFIG_RT_GROUP_SCHED=y + - SAUCE: powerpc/ima: require IMA module signatures only if MODULE_SIG is not + enabled + - SAUCE: Update aufs to 5.4.3 20200302 + - SAUCE: drm/amdgpu: Remove missing firmware files from modinfo + - SAUCE: drm/i915: Fix ref->mutex deadlock in i915_active_wait() + - SAUCE: drm/i915: Synchronize active and retire callbacks + - SAUCE: apparmor: add a valid state flags check + - SAUCE: aapparmor: add consistency check between state and dfa diff encode + flags + - SAUCE: aapparmor: remove useless aafs_create_symlink + - SAUCE: aapparmor: fail unpack if profile mode is unknown + - SAUCE: apparmor: ensure that dfa state tables have entries + - SAUCE: apparmor: fix potential label refcnt leak in aa_change_profile + - SAUCE: security/apparmor/label.c: Clean code by removing redundant + instructions + - [Config] Remove PCIEASPM_DEBUG from annotations + - [Config] Remove HEADER_TEST from annotations + - SAUCE: selftests/seccomp: allow clock_nanosleep instead of nanosleep + - [Debian] Allow building linux-libc-dev from linux-riscv + - [Packaging] Remove riscv64 packaging from master kernel + - [Config] Remove CONFIG_SND_HDA_INTEL_DETECT_DMIC from annotations + * Miscellaneous upstream changes + - net/bpfilter: remove superfluous testing message + - apparmor: increase left match history buffer size + + [ Ubuntu: 5.4.0-23.27 ] + + * Miscellaneous Ubuntu changes + - [Packaging] Enable riscv64 build + + -- Seth Forshee Fri, 10 Apr 2020 11:19:48 -0500 + +linux-azure (5.4.0-1009.9) focal; urgency=medium + + * focal/linux-azure: 5.4.0-1009.9 -proposed tracker (LP: #1870498) + + * Focal update: v5.4.29 upstream stable release (LP: #1870142) + - [Config] azure: Update config for NET_REDIRECT + + * Packaging resync (LP: #1786013) + - [Packaging] update helper scripts + + * [linux-azure] overlayfs regression - internal getxattr operations without + sepolicy checking (LP: #1864669) + - SAUCE: overlayfs: internal getxattr operations without sepolicy checking + + [ Ubuntu: 5.4.0-22.26 ] + + * focal/linux: 5.4.0-22.26 -proposed tracker (LP: #1870502) + * Packaging resync (LP: #1786013) + - [Packaging] update variants + - [Packaging] update helper scripts + - update dkms package versions + * [SFC-0316]sync mainline kernel 5.7rc1 SFC patchset into ubuntu HWE kernel + branch (LP: #1867588) + - spi: Allow SPI controller override device buswidth + - spi: HiSilicon v3xx: Properly set CMD_CONFIG for Dual/Quad modes + - spi: HiSilicon v3xx: Use DMI quirk to set controller buswidth override bits + * [hns3-0316]sync mainline kernel 5.6rc4 hns3 patchset into ubuntu HWE kernel + branch (LP: #1867586) + - net: hns3: fix VF VLAN table entries inconsistent issue + - net: hns3: fix RMW issue for VLAN filter switch + - net: hns3: clear port base VLAN when unload PF + * [sas-0316]sync mainline kernel 5.6rc1 roce patchset into ubuntu HWE kernel + branch (LP: #1867587) + - scsi: hisi_sas: use threaded irq to process CQ interrupts + - scsi: hisi_sas: replace spin_lock_irqsave/spin_unlock_restore with + spin_lock/spin_unlock + - scsi: hisi_sas: Replace magic number when handle channel interrupt + - scsi: hisi_sas: Modify the file permissions of trigger_dump to write only + - scsi: hisi_sas: Add prints for v3 hw interrupt converge and automatic + affinity + - scsi: hisi_sas: Rename hisi_sas_cq.pci_irq_mask + * Revert "nvme_fc: add module to ops template to allow module references" + (LP: #1869947) + - SAUCE: Revert "nvme_fc: add module to ops template to allow module + references" + * suspend only works once on ThinkPad X1 Carbon gen 7 (LP: #1865570) + - Revert "UBUNTU: SAUCE: e1000e: Disable s0ix flow for X1 Carbon 7th" + - SAUCE: e1000e: bump up timeout to wait when ME un-configure ULP mode + * Focal update: v5.4.29 upstream stable release (LP: #1870142) + - mmc: core: Allow host controllers to require R1B for CMD6 + - mmc: core: Respect MMC_CAP_NEED_RSP_BUSY for erase/trim/discard + - mmc: core: Respect MMC_CAP_NEED_RSP_BUSY for eMMC sleep command + - mmc: sdhci-omap: Fix busy detection by enabling MMC_CAP_NEED_RSP_BUSY + - mmc: sdhci-tegra: Fix busy detection by enabling MMC_CAP_NEED_RSP_BUSY + - ACPI: PM: s2idle: Rework ACPI events synchronization + - cxgb4: fix throughput drop during Tx backpressure + - cxgb4: fix Txq restart check during backpressure + - geneve: move debug check after netdev unregister + - hsr: fix general protection fault in hsr_addr_is_self() + - ipv4: fix a RCU-list lock in inet_dump_fib() + - macsec: restrict to ethernet devices + - mlxsw: pci: Only issue reset when system is ready + - mlxsw: spectrum_mr: Fix list iteration in error path + - net/bpfilter: fix dprintf usage for /dev/kmsg + - net: cbs: Fix software cbs to consider packet sending time + - net: dsa: Fix duplicate frames flooded by learning + - net: dsa: mt7530: Change the LINK bit to reflect the link status + - net: dsa: tag_8021q: replace dsa_8021q_remove_header with __skb_vlan_pop + - net: ena: Add PCI shutdown handler to allow safe kexec + - net: mvneta: Fix the case where the last poll did not process all rx + - net/packet: tpacket_rcv: avoid a producer race condition + - net: phy: dp83867: w/a for fld detect threshold bootstrapping issue + - net: phy: mdio-bcm-unimac: Fix clock handling + - net: phy: mdio-mux-bcm-iproc: check clk_prepare_enable() return value + - net: qmi_wwan: add support for ASKEY WWHC050 + - net/sched: act_ct: Fix leak of ct zone template on replace + - net_sched: cls_route: remove the right filter from hashtable + - net_sched: hold rtnl lock in tcindex_partial_destroy_work() + - net_sched: keep alloc_hash updated after hash allocation + - net: stmmac: dwmac-rk: fix error path in rk_gmac_probe + - NFC: fdp: Fix a signedness bug in fdp_nci_send_patch() + - r8169: re-enable MSI on RTL8168c + - slcan: not call free_netdev before rtnl_unlock in slcan_open + - tcp: also NULL skb->dev when copy was needed + - tcp: ensure skb->dev is NULL before leaving TCP stack + - tcp: repair: fix TCP_QUEUE_SEQ implementation + - vxlan: check return value of gro_cells_init() + - bnxt_en: Fix Priority Bytes and Packets counters in ethtool -S. + - bnxt_en: fix memory leaks in bnxt_dcbnl_ieee_getets() + - bnxt_en: Return error if bnxt_alloc_ctx_mem() fails. + - bnxt_en: Free context memory after disabling PCI in probe error path. + - bnxt_en: Reset rings if ring reservation fails during open() + - net: ip_gre: Separate ERSPAN newlink / changelink callbacks + - net: ip_gre: Accept IFLA_INFO_DATA-less configuration + - hsr: use rcu_read_lock() in hsr_get_node_{list/status}() + - hsr: add restart routine into hsr_get_node_list() + - hsr: set .netnsok flag + - net/mlx5: DR, Fix postsend actions write length + - net/mlx5e: Enhance ICOSQ WQE info fields + - net/mlx5e: Fix missing reset of SW metadata in Striding RQ reset + - net/mlx5e: Fix ICOSQ recovery flow with Striding RQ + - net/mlx5e: Do not recover from a non-fatal syndrome + - cgroup-v1: cgroup_pidlist_next should update position index + - nfs: add minor version to nfs_server_key for fscache + - cpupower: avoid multiple definition with gcc -fno-common + - drivers/of/of_mdio.c:fix of_mdiobus_register() + - cgroup1: don't call release_agent when it is "" + - [Config] updateconfigs for DPAA_ERRATUM_A050385 + - dt-bindings: net: FMan erratum A050385 + - arm64: dts: ls1043a: FMan erratum A050385 + - fsl/fman: detect FMan erratum A050385 + - drm/amd/display: update soc bb for nv14 + - drm/amdgpu: correct ROM_INDEX/DATA offset for VEGA20 + - drm/exynos: Fix cleanup of IOMMU related objects + - iommu/vt-d: Silence RCU-list debugging warnings + - s390/qeth: don't reset default_out_queue + - s390/qeth: handle error when backing RX buffer + - scsi: ipr: Fix softlockup when rescanning devices in petitboot + - mac80211: Do not send mesh HWMP PREQ if HWMP is disabled + - dpaa_eth: Remove unnecessary boolean expression in dpaa_get_headroom + - sxgbe: Fix off by one in samsung driver strncpy size arg + - net: hns3: fix "tc qdisc del" failed issue + - iommu/vt-d: Fix debugfs register reads + - iommu/vt-d: Populate debugfs if IOMMUs are detected + - iwlwifi: mvm: fix non-ACPI function + - i2c: hix5hd2: add missed clk_disable_unprepare in remove + - Input: raydium_i2c_ts - fix error codes in raydium_i2c_boot_trigger() + - Input: fix stale timestamp on key autorepeat events + - Input: synaptics - enable RMI on HP Envy 13-ad105ng + - Input: avoid BIT() macro usage in the serio.h UAPI header + - IB/rdmavt: Free kernel completion queue when done + - RDMA/core: Fix missing error check on dev_set_name() + - gpiolib: Fix irq_disable() semantics + - RDMA/nl: Do not permit empty devices names during RDMA_NLDEV_CMD_NEWLINK/SET + - RDMA/mad: Do not crash if the rdma device does not have a umad interface + - ceph: check POOL_FLAG_FULL/NEARFULL in addition to OSDMAP_FULL/NEARFULL + - ceph: fix memory leak in ceph_cleanup_snapid_map() + - ARM: dts: dra7: Add bus_dma_limit for L3 bus + - ARM: dts: omap5: Add bus_dma_limit for L3 bus + - x86/ioremap: Fix CONFIG_EFI=n build + - perf probe: Fix to delete multiple probe event + - perf probe: Do not depend on dwfl_module_addrsym() + - rtlwifi: rtl8188ee: Fix regression due to commit d1d1a96bdb44 + - tools: Let O= makes handle a relative path with -C option + - scripts/dtc: Remove redundant YYLOC global declaration + - scsi: sd: Fix optimal I/O size for devices that change reported values + - nl80211: fix NL80211_ATTR_CHANNEL_WIDTH attribute type + - mac80211: drop data frames without key on encrypted links + - mac80211: mark station unauthorized before key removal + - mm/swapfile.c: move inode_lock out of claim_swapfile + - drivers/base/memory.c: indicate all memory blocks as removable + - mm/sparse: fix kernel crash with pfn_section_valid check + - mm: fork: fix kernel_stack memcg stats for various stack implementations + - gpiolib: acpi: Correct comment for HP x2 10 honor_wakeup quirk + - gpiolib: acpi: Rework honor_wakeup option into an ignore_wake option + - gpiolib: acpi: Add quirk to ignore EC wakeups on HP x2 10 BYT + AXP288 model + - bpf: Fix cgroup ref leak in cgroup_bpf_inherit on out-of-memory + - RDMA/core: Ensure security pkey modify is not lost + - afs: Fix handling of an abort from a service handler + - genirq: Fix reference leaks on irq affinity notifiers + - xfrm: handle NETDEV_UNREGISTER for xfrm device + - vti[6]: fix packet tx through bpf_redirect() in XinY cases + - RDMA/mlx5: Fix the number of hwcounters of a dynamic counter + - RDMA/mlx5: Fix access to wrong pointer while performing flush due to error + - RDMA/mlx5: Block delay drop to unprivileged users + - xfrm: fix uctx len check in verify_sec_ctx_len + - xfrm: add the missing verify_sec_ctx_len check in xfrm_add_acquire + - xfrm: policy: Fix doulbe free in xfrm_policy_timer + - afs: Fix client call Rx-phase signal handling + - afs: Fix some tracing details + - afs: Fix unpinned address list during probing + - ieee80211: fix HE SPR size calculation + - mac80211: set IEEE80211_TX_CTRL_PORT_CTRL_PROTO for nl80211 TX + - netfilter: flowtable: reload ip{v6}h in nf_flow_tuple_ip{v6} + - netfilter: nft_fwd_netdev: validate family and chain type + - netfilter: nft_fwd_netdev: allow to redirect to ifb via ingress + - i2c: nvidia-gpu: Handle timeout correctly in gpu_i2c_check_status() + - bpf, x32: Fix bug with JMP32 JSET BPF_X checking upper bits + - bpf: Initialize storage pointers to NULL to prevent freeing garbage pointer + - bpf/btf: Fix BTF verification of enum members in struct/union + - bpf, sockmap: Remove bucket->lock from sock_{hash|map}_free + - ARM: dts: sun8i-a83t-tbs-a711: Fix USB OTG mode detection + - vti6: Fix memory leak of skb if input policy check fails + - r8169: fix PHY driver check on platforms w/o module softdeps + - clocksource/drivers/hyper-v: Untangle stimers and timesync from clocksources + - USB: serial: option: add support for ASKEY WWHC050 + - USB: serial: option: add BroadMobi BM806U + - USB: serial: option: add Wistron Neweb D19Q1 + - USB: cdc-acm: restore capability check order + - USB: serial: io_edgeport: fix slab-out-of-bounds read in + edge_interrupt_callback + - usb: musb: fix crash with highmen PIO and usbmon + - media: flexcop-usb: fix endpoint sanity check + - media: usbtv: fix control-message timeouts + - staging: kpc2000: prevent underflow in cpld_reconfigure() + - staging: rtl8188eu: Add ASUS USB-N10 Nano B1 to device table + - staging: wlan-ng: fix ODEBUG bug in prism2sta_disconnect_usb + - staging: wlan-ng: fix use-after-free Read in hfa384x_usbin_callback + - ahci: Add Intel Comet Lake H RAID PCI ID + - libfs: fix infoleak in simple_attr_read() + - media: ov519: add missing endpoint sanity checks + - media: dib0700: fix rc endpoint lookup + - media: stv06xx: add missing descriptor sanity checks + - media: xirlink_cit: add missing descriptor sanity checks + - media: v4l2-core: fix a use-after-free bug of sd->devnode + - update wireguard dkms package version + - [Config] updateconfigs for NET_REDIRECT + - net: Fix CONFIG_NET_CLS_ACT=n and CONFIG_NFT_FWD_NETDEV={y, m} build + - Linux 5.4.29 + * Restore kernel control of PCIe DPC via option (LP: #1869423) + - PCI/DPC: Add "pcie_ports=dpc-native" to allow DPC without AER control + * swap storms kills interactive use (LP: #1861359) + - SAUCE: mm/page_alloc.c: disable memory reclaim watermark boosting by default + * sysfs: incorrect network device permissions on network namespace change + (LP: #1865359) + - sysfs: add sysfs_file_change_owner() + - sysfs: add sysfs_link_change_owner() + - sysfs: add sysfs_group{s}_change_owner() + - sysfs: add sysfs_change_owner() + - device: add device_change_owner() + - drivers/base/power: add dpm_sysfs_change_owner() + - net-sysfs: add netdev_change_owner() + - net-sysfs: add queue_change_owner() + - net: fix sysfs permssions when device changes network namespace + - sysfs: fix static inline declaration of sysfs_groups_change_owner() + * Kernel Oops - general protection fault: 0000 [#1] SMP PTI after + disconnecting thunderbolt docking station (LP: #1864754) + - SAUCE: ptp: free ptp clock properly + * [Selftests] Apply various fixes and improvements (LP: #1870543) + - SAUCE: selftests: net: ip_defrag: limit packet to 1000 fragments + - SAUCE: kselftest/runner: avoid using timeout if timeout is disabled + - SAUCE: selftests/seccomp -- Disable timeout for seccomp tests + * Focal update: v5.4.28 upstream stable release (LP: #1869061) + - locks: fix a potential use-after-free problem when wakeup a waiter + - locks: reinstate locks_delete_block optimization + - spi: spi-omap2-mcspi: Support probe deferral for DMA channels + - drm/mediatek: Find the cursor plane instead of hard coding it + - phy: ti: gmii-sel: fix set of copy-paste errors + - phy: ti: gmii-sel: do not fail in case of gmii + - ARM: dts: dra7-l4: mark timer13-16 as pwm capable + - spi: qup: call spi_qup_pm_resume_runtime before suspending + - powerpc: Include .BTF section + - cifs: fix potential mismatch of UNC paths + - cifs: add missing mount option to /proc/mounts + - ARM: dts: dra7: Add "dma-ranges" property to PCIe RC DT nodes + - spi: pxa2xx: Add CS control clock quirk + - spi/zynqmp: remove entry that causes a cs glitch + - drm/exynos: dsi: propagate error value and silence meaningless warning + - drm/exynos: dsi: fix workaround for the legacy clock name + - drm/exynos: hdmi: don't leak enable HDMI_EN regulator if probe fails + - drivers/perf: fsl_imx8_ddr: Correct the CLEAR bit definition + - drivers/perf: arm_pmu_acpi: Fix incorrect checking of gicc pointer + - altera-stapl: altera_get_note: prevent write beyond end of 'key' + - dm bio record: save/restore bi_end_io and bi_integrity + - dm integrity: use dm_bio_record and dm_bio_restore + - riscv: avoid the PIC offset of static percpu data in module beyond 2G limits + - ASoC: stm32: sai: manage rebind issue + - spi: spi_register_controller(): free bus id on error paths + - riscv: Force flat memory model with no-mmu + - riscv: Fix range looking for kernel image memblock + - drm/amdgpu: clean wptr on wb when gpu recovery + - drm/amd/display: Clear link settings on MST disable connector + - drm/amd/display: fix dcc swath size calculations on dcn1 + - xenbus: req->body should be updated before req->state + - xenbus: req->err should be updated before req->state + - block, bfq: fix overwrite of bfq_group pointer in bfq_find_set_group() + - parse-maintainers: Mark as executable + - binderfs: use refcount for binder control devices too + - Revert "drm/fbdev: Fallback to non tiled mode if all tiles not present" + - usb: quirks: add NO_LPM quirk for RTL8153 based ethernet adapters + - USB: serial: option: add ME910G1 ECM composition 0x110b + - usb: host: xhci-plat: add a shutdown + - USB: serial: pl2303: add device-id for HP LD381 + - usb: xhci: apply XHCI_SUSPEND_DELAY to AMD XHCI controller 1022:145c + - usb: typec: ucsi: displayport: Fix NULL pointer dereference + - usb: typec: ucsi: displayport: Fix a potential race during registration + - USB: cdc-acm: fix close_delay and closing_wait units in TIOCSSERIAL + - USB: cdc-acm: fix rounding error in TIOCSSERIAL + - ALSA: line6: Fix endless MIDI read loop + - ALSA: hda/realtek - Enable headset mic of Acer X2660G with ALC662 + - ALSA: hda/realtek - Enable the headset of Acer N50-600 with ALC662 + - ALSA: seq: virmidi: Fix running status after receiving sysex + - ALSA: seq: oss: Fix running status after receiving sysex + - ALSA: pcm: oss: Avoid plugin buffer overflow + - ALSA: pcm: oss: Remove WARNING from snd_pcm_plug_alloc() checks + - tty: fix compat TIOCGSERIAL leaking uninitialized memory + - tty: fix compat TIOCGSERIAL checking wrong function ptr + - iio: chemical: sps30: fix missing triggered buffer dependency + - iio: st_sensors: remap SMO8840 to LIS2DH12 + - iio: trigger: stm32-timer: disable master mode when stopping + - iio: accel: adxl372: Set iio_chan BE + - iio: magnetometer: ak8974: Fix negative raw values in sysfs + - iio: adc: stm32-dfsdm: fix sleep in atomic context + - iio: adc: at91-sama5d2_adc: fix differential channels in triggered mode + - iio: light: vcnl4000: update sampling periods for vcnl4200 + - iio: light: vcnl4000: update sampling periods for vcnl4040 + - mmc: rtsx_pci: Fix support for speed-modes that relies on tuning + - mmc: sdhci-of-at91: fix cd-gpios for SAMA5D2 + - mmc: sdhci-cadence: set SDHCI_QUIRK2_PRESET_VALUE_BROKEN for UniPhier + - CIFS: fiemap: do not return EINVAL if get nothing + - kbuild: Disable -Wpointer-to-enum-cast + - staging: rtl8188eu: Add device id for MERCUSYS MW150US v2 + - staging: greybus: loopback_test: fix poll-mask build breakage + - staging/speakup: fix get_word non-space look-ahead + - intel_th: msu: Fix the unexpected state warning + - intel_th: Fix user-visible error codes + - intel_th: pci: Add Elkhart Lake CPU support + - modpost: move the namespace field in Module.symvers last + - rtc: max8907: add missing select REGMAP_IRQ + - arm64: compat: Fix syscall number of compat_clock_getres + - xhci: Do not open code __print_symbolic() in xhci trace events + - btrfs: fix log context list corruption after rename whiteout error + - drm/amd/amdgpu: Fix GPR read from debugfs (v2) + - drm/lease: fix WARNING in idr_destroy + - stm class: sys-t: Fix the use of time_after() + - memcg: fix NULL pointer dereference in __mem_cgroup_usage_unregister_event + - mm, memcg: fix corruption on 64-bit divisor in memory.high throttling + - mm, memcg: throttle allocators based on ancestral memory.high + - mm/hotplug: fix hot remove failure in SPARSEMEM|!VMEMMAP case + - mm: do not allow MADV_PAGEOUT for CoW pages + - epoll: fix possible lost wakeup on epoll_ctl() path + - mm: slub: be more careful about the double cmpxchg of freelist + - mm, slub: prevent kmalloc_node crashes and memory leaks + - page-flags: fix a crash at SetPageError(THP_SWAP) + - x86/mm: split vmalloc_sync_all() + - futex: Fix inode life-time issue + - futex: Unbreak futex hashing + - arm64: smp: fix smp_send_stop() behaviour + - arm64: smp: fix crash_smp_send_stop() behaviour + - nvmet-tcp: set MSG_MORE only if we actually have more to send + - drm/bridge: dw-hdmi: fix AVI frame colorimetry + - staging: greybus: loopback_test: fix potential path truncation + - staging: greybus: loopback_test: fix potential path truncations + - Linux 5.4.28 + * Pop sound from build-in speaker during cold boot and resume from S3 + (LP: #1866357) // Focal update: v5.4.28 upstream stable release + (LP: #1869061) + - ALSA: hda/realtek: Fix pop noise on ALC225 + * Focal update: v5.4.28 upstream stable release (LP: #1869061) + - perf/x86/amd: Add support for Large Increment per Cycle Events + - EDAC/amd64: Add family ops for Family 19h Models 00h-0Fh + - x86/MCE/AMD, EDAC/mce_amd: Add new Load Store unit McaType + - EDAC/mce_amd: Always load on SMCA systems + - x86/amd_nb: Add Family 19h PCI IDs + - EDAC/amd64: Drop some family checks for newer systems + * Update mpt3sas Driver to 33.100.00.00 for Ubuntu 20.04 (LP: #1863574) + - scsi: mpt3sas: Register trace buffer based on NVDATA settings + - scsi: mpt3sas: Display message before releasing diag buffer + - scsi: mpt3sas: Free diag buffer without any status check + - scsi: mpt3sas: Maintain owner of buffer through UniqueID + - scsi: mpt3sas: clear release bit when buffer reregistered + - scsi: mpt3sas: Reuse diag buffer allocated at load time + - scsi: mpt3sas: Add app owned flag support for diag buffer + - scsi: mpt3sas: Fail release cmnd if diag buffer is released + - scsi: mpt3sas: Use Component img header to get Package ver + - scsi: mpt3sas: Fix module parameter max_msix_vectors + - scsi: mpt3sas: Bump mpt3sas driver version to 32.100.00.00 + - scsi: mpt3sas: Clean up some indenting + - scsi: mpt3sas: change allocation option + - scsi: mpt3sas: Update MPI Headers to v02.00.57 + - scsi: mpt3sas: Add support for NVMe shutdown + - scsi: mpt3sas: renamed _base_after_reset_handler function + - scsi: mpt3sas: Add support IOCs new state named COREDUMP + - scsi: mpt3sas: Handle CoreDump state from watchdog thread + - scsi: mpt3sas: print in which path firmware fault occurred + - scsi: mpt3sas: Optimize mpt3sas driver logging + - scsi: mpt3sas: Print function name in which cmd timed out + - scsi: mpt3sas: Remove usage of device_busy counter + - scsi: mpt3sas: Update drive version to 33.100.00.00 + * Ubuntu 20.04: megaraid_sas driver update to version 07.713.01.00-rc1 + (LP: #1863581) + - scsi: megaraid_sas: Unique names for MSI-X vectors + - scsi: megaraid_sas: remove unused variables 'debugBlk','fusion' + - compat_ioctl: use correct compat_ptr() translation in drivers + - scsi: megaraid_sas: Make poll_aen_lock static + - scsi: megaraid_sas: Reset adapter if FW is not in READY state after device + resume + - scsi: megaraid_sas: Set no_write_same only for Virtual Disk + - scsi: megaraid_sas: Update optimal queue depth for SAS and NVMe devices + - scsi: megaraid_sas: Do not kill host bus adapter, if adapter is already dead + - scsi: megaraid_sas: Do not kill HBA if JBOD Seqence map or RAID map is + disabled + - scsi: megaraid_sas: Do not set HBA Operational if FW is not in operational + state + - scsi: megaraid_sas: Re-Define enum DCMD_RETURN_STATUS + - scsi: megaraid_sas: Limit the number of retries for the IOCTLs causing + firmware fault + - scsi: megaraid_sas: Use Block layer API to check SCSI device in-flight IO + requests + - scsi: megaraid_sas: Update driver version to 07.713.01.00-rc1 + - scsi: megaraid_sas: fixup MSIx interrupt setup during resume + + -- Stefan Bader Fri, 03 Apr 2020 18:52:00 +0200 + +linux-azure (5.4.0-1008.8) focal; urgency=medium + + + [ Ubuntu: 5.4.0-21.25 ] + + * CVE-2020-8835 + - SAUCE: bpf: undo incorrect __reg_bound_offset32 handling + + -- Thadeu Lima de Souza Cascardo Fri, 27 Mar 2020 17:57:04 -0300 + +linux-azure (5.4.0-1007.7) focal; urgency=medium + + * focal/linux-azure: 5.4.0-1007.7 -proposed tracker (LP: #1868343) + + * Packaging resync (LP: #1786013) + - [Packaging] update helper scripts + + * [linux-azure] Missing user mode io driver - uio_pci_generic (LP: #1863951) + - [Config] linux-azure: Move uio_pci_generic to the main modu + + * linux-azure: Update SGX version and udev rules (LP: #1867820) + - SAUCE: linux-azure: Update SGX to version LD_1.22 + - [Packaging] linux-azure: Add dependency to linux-base-sgx + + * Add XHCI/USB support to linux-azure (LP: #1867002) + - [Config] linux-azure: Enable xHCI for PCI passthrough + + * Miscellaneous Ubuntu changes + - [Config] updateconfigs following Ubuntu-5.4.0-19.23 rebase + + [ Ubuntu: 5.4.0-20.24 ] + + * Miscellaneous Ubuntu changes + - SAUCE: (lockdown) Reduce lockdown level to INTEGRITY for secure boot + + [ Ubuntu: 5.4.0-19.23 ] + + * focal/linux: 5.4.0-19.23 -proposed tracker (LP: #1868347) + * Packaging resync (LP: #1786013) + - [Packaging] update helper scripts + - update dkms package versions + * Focal update: v5.4.27 upstream stable release (LP: #1868538) + - netfilter: hashlimit: do not use indirect calls during gc + - netfilter: xt_hashlimit: unregister proc file before releasing mutex + - drm/amdgpu: Fix TLB invalidation request when using semaphore + - ACPI: watchdog: Allow disabling WDAT at boot + - HID: apple: Add support for recent firmware on Magic Keyboards + - ACPI: watchdog: Set default timeout in probe + - HID: hid-bigbenff: fix general protection fault caused by double kfree + - HID: hid-bigbenff: call hid_hw_stop() in case of error + - HID: hid-bigbenff: fix race condition for scheduled work during removal + - selftests/rseq: Fix out-of-tree compilation + - tracing: Fix number printing bug in print_synth_event() + - cfg80211: check reg_rule for NULL in handle_channel_custom() + - scsi: libfc: free response frame from GPN_ID + - net: usb: qmi_wwan: restore mtu min/max values after raw_ip switch + - net: ks8851-ml: Fix IRQ handling and locking + - mac80211: rx: avoid RCU list traversal under mutex + - net: ll_temac: Fix race condition causing TX hang + - net: ll_temac: Add more error handling of dma_map_single() calls + - net: ll_temac: Fix RX buffer descriptor handling on GFP_ATOMIC pressure + - net: ll_temac: Handle DMA halt condition caused by buffer underrun + - blk-mq: insert passthrough request into hctx->dispatch directly + - drm/amdgpu: fix memory leak during TDR test(v2) + - kbuild: add dtbs_check to PHONY + - kbuild: add dt_binding_check to PHONY in a correct place + - signal: avoid double atomic counter increments for user accounting + - slip: not call free_netdev before rtnl_unlock in slip_open + - net: phy: mscc: fix firmware paths + - hinic: fix a irq affinity bug + - hinic: fix a bug of setting hw_ioctxt + - hinic: fix a bug of rss configuration + - net: rmnet: fix NULL pointer dereference in rmnet_newlink() + - net: rmnet: fix NULL pointer dereference in rmnet_changelink() + - net: rmnet: fix suspicious RCU usage + - net: rmnet: remove rcu_read_lock in rmnet_force_unassociate_device() + - net: rmnet: do not allow to change mux id if mux id is duplicated + - net: rmnet: use upper/lower device infrastructure + - net: rmnet: fix bridge mode bugs + - net: rmnet: fix packet forwarding in rmnet bridge mode + - sfc: fix timestamp reconstruction at 16-bit rollover points + - jbd2: fix data races at struct journal_head + - blk-mq: insert flush request to the front of dispatch queue + - net: qrtr: fix len of skb_put_padto in qrtr_node_enqueue + - ARM: 8957/1: VDSO: Match ARMv8 timer in cntvct_functional() + - ARM: 8958/1: rename missed uaccess .fixup section + - mm: slub: add missing TID bump in kmem_cache_alloc_bulk() + - HID: google: add moonball USB id + - HID: add ALWAYS_POLL quirk to lenovo pixart mouse + - ARM: 8961/2: Fix Kbuild issue caused by per-task stack protector GCC plugin + - ipv4: ensure rcu_read_lock() in cipso_v4_error() + - Linux 5.4.27 + * This laptop contains a touchpadwhich is not recognized. (LP: #1858299) // + Focal update: v5.4.27 upstream stable release (LP: #1868538) + - HID: i2c-hid: add Trekstor Surfbook E11B to descriptor override + * suspend only works once on ThinkPad X1 Carbon gen 7 (LP: #1865570) + - SAUCE: e1000e: Disable s0ix flow for X1 Carbon 7th + * Make Dell WD19 dock more reliable after suspend (LP: #1868217) + - xhci: Ensure link state is U3 after setting USB_SS_PORT_LS_U3 + - xhci: Wait until link state trainsits to U0 after setting USB_SS_PORT_LS_U0 + - xhci: Finetune host initiated USB3 rootport link suspend and resume + - USB: Disable LPM on WD19's Realtek Hub + * update-version-dkms doesn't add a BugLink (LP: #1867790) + - [Packaging] Add BugLink to update-version-dkms commit + * enable realtek ethernet device ASPM function (LP: #1836030) + - PCI/ASPM: Add L1 PM substate support to pci_disable_link_state() + - PCI/ASPM: Allow re-enabling Clock PM + - PCI/ASPM: Remove pcie_aspm_enabled() unnecessary locking + - PCI/ASPM: Add pcie_aspm_get_link() + - PCI/ASPM: Add sysfs attributes for controlling ASPM link states + * Update SmartPQI driver in Focal to 1.2.10-025 (LP: #1864484) + - scsi: smartpqi: clean up indentation of a statement + - scsi: smartpqi: remove set but not used variable 'ctrl_info' + - scsi: smartpqi: clean up an indentation issue + - scsi: smartpqi: fix controller lockup observed during force reboot + - scsi: smartpqi: fix call trace in device discovery + - scsi: smartpqi: add inquiry timeouts + - scsi: smartpqi: fix LUN reset when fw bkgnd thread is hung + - scsi: smartpqi: change TMF timeout from 60 to 30 seconds + - scsi: smartpqi: correct syntax issue + - scsi: smartpqi: fix problem with unique ID for physical device + - scsi: smartpqi: remove unused manifest constants + - scsi: smartpqi: Align driver syntax with oob + - scsi: smartpqi: bump version + * [roce-0111]sync mainline kernel 5.5rc6 roce patchset into ubuntu HWE kernel + branch (LP: #1859269) + - RDMA/hns: Modify variable/field name from vlan to vlan_id + - RDMA/hns: Fix a spelling mistake in a macro + - RDMA/hns: Delete BITS_PER_BYTE redefinition + - RDMA/core: Move core content from ib_uverbs to ib_core + - RDMA/core: Create mmap database and cookie helper functions + - RDMA: Connect between the mmap entry and the umap_priv structure + - RDMA/hns: Remove unsupported modify_port callback + - RDMA/hns: Delete unnecessary variable max_post + - RDMA/hns: Remove unnecessary structure hns_roce_sqp + - RDMA/hns: Delete unnecessary uar from hns_roce_cq + - RDMA/hns: Modify fields of struct hns_roce_srq + - RDMA/hns: Replace not intuitive function/macro names + - RDMA/hns: Simplify doorbell initialization code + - RDMA/hns: Modify hns_roce_hw_v2_get_cfg to simplify the code + - RDMA/hns: Fix non-standard error codes + - RDMA/hns: Modify appropriate printings + - dma-mapping: remove the DMA_ATTR_WRITE_BARRIER flag + - IB/umem: remove the dmasync argument to ib_umem_get + - RDMA/hns: Redefine interfaces used in creating cq + - RDMA/hns: Redefine the member of hns_roce_cq struct + - RDMA/hns: Rename the functions used inside creating cq + - RDMA/hns: Delete unnecessary callback functions for cq + - RDMA/hns: Remove unused function hns_roce_init_eq_table() + - RDMA/hns: Update the value of qp type + - RDMA/hns: Delete unnessary parameters in hns_roce_v2_qp_modify() + - RDMA/hns: Remove redundant print information + - RDMA/hns: Replace custom macros HNS_ROCE_ALIGN_UP + - RDMA/hns: Fix coding style issues + - RDMA/hns: Add support for reporting wc as software mode + - RDMA/hns: Remove some redundant variables related to capabilities + - RDMA/hns: Add interfaces to get pf capabilities from firmware + - RDMA/hns: Get pf capabilities from firmware + - RDMA/hns: Add support for extended atomic in userspace + * dmaengine: hisilicon: Add Kunpeng DMA engine support (LP: #1864442) + - dmaengine: hisilicon: Add Kunpeng DMA engine support + - [Config] CONFIG_HISI_DMA=m + * Add support for Realtek 8723DE wireless adapter (LP: #1780590) + - rtw88: 8822c: fix boolreturn.cocci warnings + - rtw88: remove redundant flag check helper function + - rtw88: pci: reset H2C queue indexes in a single write + - rtw88: not to enter or leave PS under IRQ + - rtw88: not to control LPS by each vif + - rtw88: remove unused lps state check helper + - rtw88: LPS enter/leave should be protected by lock + - rtw88: leave PS state for dynamic mechanism + - rtw88: add deep power save support + - rtw88: not to enter LPS by coex strategy + - rtw88: select deep PS mode when module is inserted + - rtw88: add deep PS PG mode for 8822c + - rtw88: remove misleading module parameter rtw_fw_support_lps + - mac80211: simplify TX aggregation start + - rtw88: check firmware leave lps successfully + - rtw88: allows to set RTS in TX descriptor + - rtw88: add driver TX queue support + - rtw88: take over rate control from mac80211 + - rtw88: report tx rate to mac80211 stack + - rtw88: add TX-AMSDU support + - rtw88: flush hardware tx queues + - rtw88: Don't set RX_FLAG_DECRYPTED if packet has no encryption + - rtw88: configure TX queue EDCA parameters + - rtw88: raise firmware version debug level + - rtw88: use struct rtw_fw_hdr to access firmware header + - rtw88: Fix an error message + - rtw88: config 8822c multicast address in MAC init flow + - rtw88: add NL80211_EXT_FEATURE_CAN_REPLACE_PTK0 support + - rtw88: Use rtw_write8_set to set SYS_FUNC + - rtw88: pci: config phy after chip info is setup + - rtw88: use a for loop in rtw_power_mode_change(), not goto + - rtw88: include interrupt.h for tasklet_struct + - rtw88: mark rtw_fw_hdr __packed + - rtw88: use macro to check the current band + - rtw88: add power tracking support + - rtw88: Enable 802.11ac beamformee support + - rtw88: add set_bitrate_mask support + - rtw88: add phy_info debugfs to show Tx/Rx physical status + - rtw88: fix GENMASK_ULL for u64 + - rtw88: fix sparse warnings for DPK + - rtw88: fix sparse warnings for power tracking + - rtw88: 8822b: add RFE type 3 support + - rtw88: use rtw_phy_pg_cfg_pair struct, not arrays + - rtw88: rearrange if..else statements for rx rate indexes + - rtw88: avoid FW info flood + - rtw88: remove redundant null pointer check on arrays + - rtw88: raise LPS threshold to 50, for less power consumption + - rtw88: fix potential NULL pointer access for firmware + - rtw88: signal completion even on firmware-request failure + - rtw88: remove duplicated include from ps.c + - rtw88: pci: use macros to access PCI DBI/MDIO registers + - rtw88: pci: use for loop instead of while loop for DBI/MDIO + - rtw88: pci: enable CLKREQ function if host supports it + - rtw88: allows to enable/disable HCI link PS mechanism + - rtw88: pci: reset ring index when release skbs in tx ring + - rtw88: pci: reset dma when reset pci trx ring + - rtw88: add interface config for 8822c + - rtw88: load wowlan firmware if wowlan is supported + - rtw88: support wowlan feature for 8822c + - rtw88: Add wowlan pattern match support + - rtw88: Add wowlan net-detect support + - rtw88: fix TX secondary channel offset of 40M if current bw is 20M or 40M + - rtw88: 8822c: update power sequence to v15 + - rtw88: remove unused spinlock + - rtw88: remove unused variable 'in_lps' + - rtw88: remove unused vif pointer in struct rtw_vif + - rtw88: use rtw_hci_stop() instead of rtwdev->hci.ops->stop() + - rtw88: assign NULL to skb after being kfree()'ed + - rtw88: change max_num_of_tx_queue() definition to inline in pci.h + - rtw88: use true,false for bool variable + - rtw88: use shorter delay time to poll PS state + - rtw88: Fix return value of rtw_wow_check_fw_status + - SAUCE: rtw88: add regulatory process strategy for different chipset + - SAUCE: rtw88: support dynamic user regulatory setting + - SAUCE: rtw88: Use secondary channel offset enumeration + - SAUCE: rtw88: 8822c: modify rf protection setting + - SAUCE: rtw88: disable TX-AMSDU on 2.4G band + - SAUCE: Revert "rtw88: disable TX-AMSDU on 2.4G band" + - SAUCE: rtw88: disable TX-AMSDU on 2.4G band + - SAUCE: rtw88: remove unused parameter vif in rtw_lps_pg_info_get() + - SAUCE: rtw88: add rtw_read8_mask and rtw_read16_mask + - SAUCE: rtw88: pci: 8822c should set clock delay to zero + - SAUCE: rtw88: move rtw_enter_ips() to the last when config + - SAUCE: rtw88: avoid holding mutex for cancel_delayed_work_sync() + - SAUCE: rtw88: add ciphers to suppress error message + - SAUCE: rtw88: 8822c: update power sequence to v16 + - SAUCE: rtw88: Fix incorrect beamformee role setting + - SAUCE: rtw88: don't hold all IRQs disabled for PS operations + - SAUCE: rtw88: extract alloc rsvd_page and h2c skb routines + - SAUCE: rtw88: associate reserved pages with each vif + - SAUCE: rtw88: add adaptivity support for EU/JP regulatory + - SAUCE: rtw88: 8723d: Add basic chip capabilities + - SAUCE: rtw88: 8723d: add beamform wrapper functions + - SAUCE: rtw88: 8723d: Add power sequence + - SAUCE: rtw88: 8723d: Add RF read/write ops + - SAUCE: rtw88: 8723d: Add mac/bb/rf/agc/power_limit tables + - SAUCE: rtw88: 8723d: Add cfg_ldo25 to control LDO25 + - SAUCE: rtw88: 8723d: Add new chip op efuse_grant() to control efuse access + - SAUCE: rtw88: 8723d: Add read_efuse to recognize efuse info from map + - SAUCE: rtw88: add legacy firmware download for 8723D devices + - SAUCE: rtw88: no need to send additional information to legacy firmware + - SAUCE: rtw88: 8723d: Add mac power-on/-off function + - SAUCE: rtw88: decompose while(1) loop of power sequence polling command + - SAUCE: rtw88: 8723d: 11N chips don't support H2C queue + - SAUCE: rtw88: 8723d: implement set_tx_power_index ops + - SAUCE: rtw88: 8723d: Organize chip TX/RX FIFO + - SAUCE: rtw88: 8723d: initialize mac/bb/rf basic functions + - SAUCE: rtw88: 8723d: Add DIG parameter + - SAUCE: rtw88: 8723d: Add query_rx_desc + - SAUCE: rtw88: 8723d: Add set_channel + - SAUCE: rtw88: handle C2H_CCX_TX_RPT to know if packet TX'ed successfully + - SAUCE: rtw88: 8723d: 11N chips don't support LDPC + - SAUCE: rtw88: set default port to firmware + - SAUCE: rtw88: update tx descriptor of mgmt and rsvd page packets + - SAUCE: rtw88: sar: add SAR of TX power limit + - SAUCE: rtw88: sar: Load static SAR table from ACPI WRDS method + - SAUCE: rtw88: sar: Load dynamic SAR table from ACPI methods + - SAUCE: rtw88: sar: apply dynamic SAR table to tx power limit + - SAUCE: rtw88: sar: add sar_work to poll if dynamic SAR table is changed + - SAUCE: rtw88: sar: dump sar information via debugfs + - SAUCE: rtw88: 8723d: Add chip_ops::false_alarm_statistics + - SAUCE: rtw88: 8723d: Set IG register for CCK rate + - SAUCE: rtw88: 8723d: add interface configurations table + - SAUCE: rtw88: 8723d: Add LC calibration + - SAUCE: rtw88: 8723d: add IQ calibration + - SAUCE: rtw88: 8723d: Add power tracking + - SAUCE: rtw88: 8723d: Add shutdown callback to disable BT USB suspend + - SAUCE: rtw88: 8723d: implement flush queue + - SAUCE: rtw88: 8723d: set ltecoex register address in chip_info + - SAUCE: rtw88: 8723d: Add coex support + - SAUCE: rtw88: fill zeros to words 0x06 and 0x07 of security cam entry + - SAUCE: rtw88: 8723d: Add 8723DE to Kconfig and Makefile + - [Config] CONFIG_RTW88_8723DE=y + * [Ubuntu 20.04] Unset HIBERNATION and PM kernel config options for focal + (LP: #1867753) + - [Config] CONFIG_HIBERNATION=n and CONFIG_PM=n for s390x + * [20.04 FEAT] Base KVM setup for secure guests - kernel part (LP: #1835531) + - KVM: s390: Cleanup kvm_arch_init error path + - KVM: s390: Cleanup initial cpu reset + - KVM: s390: Add new reset vcpu API + - s390/protvirt: introduce host side setup + - s390/protvirt: add ultravisor initialization + - s390/mm: provide memory management functions for protected KVM guests + - s390/mm: add (non)secure page access exceptions handlers + - s390/protvirt: Add sysfs firmware interface for Ultravisor information + - KVM: s390/interrupt: do not pin adapter interrupt pages + - KVM: s390: protvirt: Add UV debug trace + - KVM: s390: add new variants of UV CALL + - KVM: s390: protvirt: Add initial vm and cpu lifecycle handling + - KVM: s390: protvirt: Secure memory is not mergeable + - KVM: s390/mm: Make pages accessible before destroying the guest + - KVM: s390: protvirt: Handle SE notification interceptions + - KVM: s390: protvirt: Instruction emulation + - KVM: s390: protvirt: Implement interrupt injection + - KVM: s390: protvirt: Add SCLP interrupt handling + - KVM: s390: protvirt: Handle spec exception loops + - KVM: s390: protvirt: Add new gprs location handling + - KVM: S390: protvirt: Introduce instruction data area bounce buffer + - KVM: s390: protvirt: handle secure guest prefix pages + - KVM: s390/mm: handle guest unpin events + - KVM: s390: protvirt: Write sthyi data to instruction data area + - KVM: s390: protvirt: STSI handling + - KVM: s390: protvirt: disallow one_reg + - KVM: s390: protvirt: Do only reset registers that are accessible + - KVM: s390: protvirt: Only sync fmt4 registers + - KVM: s390: protvirt: Add program exception injection + - KVM: s390: protvirt: UV calls in support of diag308 0, 1 + - KVM: s390: protvirt: Report CPU state to Ultravisor + - KVM: s390: protvirt: Support cmd 5 operation state + - KVM: s390: protvirt: Mask PSW interrupt bits for interception 104 and 112 + - KVM: s390: protvirt: do not inject interrupts after start + - KVM: s390: protvirt: Add UV cpu reset calls + - DOCUMENTATION: Protected virtual machine introduction and IPL + - KVM: s390: protvirt: introduce and enable KVM_CAP_S390_PROTECTED + - KVM: s390: protvirt: Add KVM api documentation + - mm/gup/writeback: add callbacks for inaccessible pages + * Sys oopsed with sysfs test in ubuntu_stress_smoke_test on X-hwe ARM64 + (LP: #1866772) + - ACPI: sysfs: copy ACPI data using io memory copying + * Focal update: v5.4.26 upstream stable release (LP: #1867903) + - virtio_balloon: Adjust label in virtballoon_probe + - ALSA: hda/realtek - More constifications + - cgroup, netclassid: periodically release file_lock on classid updating + - gre: fix uninit-value in __iptunnel_pull_header + - inet_diag: return classid for all socket types + - ipv6/addrconf: call ipv6_mc_up() for non-Ethernet interface + - ipvlan: add cond_resched_rcu() while processing muticast backlog + - ipvlan: do not add hardware address of master to its unicast filter list + - ipvlan: do not use cond_resched_rcu() in ipvlan_process_multicast() + - ipvlan: don't deref eth hdr before checking it's set + - macvlan: add cond_resched() during multicast processing + - net: dsa: fix phylink_start()/phylink_stop() calls + - net: dsa: mv88e6xxx: fix lockup on warm boot + - net: fec: validate the new settings in fec_enet_set_coalesce() + - net: hns3: fix a not link up issue when fibre port supports autoneg + - net/ipv6: use configured metric when add peer route + - netlink: Use netlink header as base to calculate bad attribute offset + - net: macsec: update SCI upon MAC address change. + - net: nfc: fix bounds checking bugs on "pipe" + - net/packet: tpacket_rcv: do not increment ring index on drop + - net: phy: bcm63xx: fix OOPS due to missing driver name + - net: stmmac: dwmac1000: Disable ACS if enhanced descs are not used + - net: systemport: fix index check to avoid an array out of bounds access + - sfc: detach from cb_page in efx_copy_channel() + - slip: make slhc_compress() more robust against malicious packets + - taprio: Fix sending packets without dequeueing them + - bonding/alb: make sure arp header is pulled before accessing it + - bnxt_en: reinitialize IRQs when MTU is modified + - bnxt_en: fix error handling when flashing from file + - cgroup: memcg: net: do not associate sock with unrelated cgroup + - net: memcg: late association of sock to memcg + - net: memcg: fix lockdep splat in inet_csk_accept() + - devlink: validate length of param values + - devlink: validate length of region addr/len + - fib: add missing attribute validation for tun_id + - nl802154: add missing attribute validation + - nl802154: add missing attribute validation for dev_type + - can: add missing attribute validation for termination + - macsec: add missing attribute validation for port + - net: fq: add missing attribute validation for orphan mask + - net: taprio: add missing attribute validation for txtime delay + - team: add missing attribute validation for port ifindex + - team: add missing attribute validation for array index + - tipc: add missing attribute validation for MTU property + - nfc: add missing attribute validation for SE API + - nfc: add missing attribute validation for deactivate target + - nfc: add missing attribute validation for vendor subcommand + - net: phy: avoid clearing PHY interrupts twice in irq handler + - net: phy: fix MDIO bus PM PHY resuming + - net/ipv6: need update peer route when modify metric + - net/ipv6: remove the old peer route if change it to a new one + - selftests/net/fib_tests: update addr_metric_test for peer route testing + - net: dsa: Don't instantiate phylink for CPU/DSA ports unless needed + - net: phy: Avoid multiple suspends + - cgroup: cgroup_procs_next should increase position index + - cgroup: Iterate tasks that did not finish do_exit() + - netfilter: nf_tables: fix infinite loop when expr is not available + - iwlwifi: mvm: Do not require PHY_SKU NVM section for 3168 devices + - iommu/vt-d: quirk_ioat_snb_local_iommu: replace WARN_TAINT with pr_warn + + add_taint + - netfilter: nf_conntrack: ct_cpu_seq_next should increase position index + - netfilter: synproxy: synproxy_cpu_seq_next should increase position index + - netfilter: xt_recent: recent_seq_next should increase position index + - netfilter: x_tables: xt_mttg_seq_next should increase position index + - workqueue: don't use wq_select_unbound_cpu() for bound works + - drm/amd/display: remove duplicated assignment to grph_obj_type + - drm/i915: be more solid in checking the alignment + - drm/i915: Defer semaphore priority bumping to a workqueue + - mmc: sdhci-pci-gli: Enable MSI interrupt for GL975x + - pinctrl: falcon: fix syntax error + - ktest: Add timeout for ssh sync testing + - cifs_atomic_open(): fix double-put on late allocation failure + - gfs2_atomic_open(): fix O_EXCL|O_CREAT handling on cold dcache + - KVM: x86: clear stale x86_emulate_ctxt->intercept value + - KVM: nVMX: avoid NULL pointer dereference with incorrect EVMCS GPAs + - ARC: define __ALIGN_STR and __ALIGN symbols for ARC + - fuse: fix stack use after return + - s390/dasd: fix data corruption for thin provisioned devices + - ipmi_si: Avoid spurious errors for optional IRQs + - blk-iocost: fix incorrect vtime comparison in iocg_is_idle() + - fscrypt: don't evict dirty inodes after removing key + - macintosh: windfarm: fix MODINFO regression + - x86/ioremap: Map EFI runtime services data as encrypted for SEV + - efi: Fix a race and a buffer overflow while reading efivars via sysfs + - efi: Add a sanity check to efivar_store_raw() + - i2c: designware-pci: Fix BUG_ON during device removal + - mt76: fix array overflow on receiving too many fragments for a packet + - perf/amd/uncore: Replace manual sampling check with CAP_NO_INTERRUPT flag + - x86/mce: Fix logic and comments around MSR_PPIN_CTL + - iommu/dma: Fix MSI reservation allocation + - iommu/vt-d: dmar: replace WARN_TAINT with pr_warn + add_taint + - iommu/vt-d: Fix RCU list debugging warnings + - iommu/vt-d: Fix a bug in intel_iommu_iova_to_phys() for huge page + - batman-adv: Don't schedule OGM for disabled interface + - clk: imx8mn: Fix incorrect clock defines + - pinctrl: meson-gxl: fix GPIOX sdio pins + - pinctrl: imx: scu: Align imx sc msg structs to 4 + - virtio_ring: Fix mem leak with vring_new_virtqueue() + - drm/i915/gvt: Fix dma-buf display blur issue on CFL + - pinctrl: core: Remove extra kref_get which blocks hogs being freed + - drm/i915/gvt: Fix unnecessary schedule timer when no vGPU exits + - driver code: clarify and fix platform device DMA mask allocation + - iommu/vt-d: Fix RCU-list bugs in intel_iommu_init() + - i2c: gpio: suppress error on probe defer + - nl80211: add missing attribute validation for critical protocol indication + - nl80211: add missing attribute validation for beacon report scanning + - nl80211: add missing attribute validation for channel switch + - perf bench futex-wake: Restore thread count default to online CPU count + - netfilter: cthelper: add missing attribute validation for cthelper + - netfilter: nft_payload: add missing attribute validation for payload csum + flags + - netfilter: nft_tunnel: add missing attribute validation for tunnels + - netfilter: nf_tables: dump NFTA_CHAIN_FLAGS attribute + - netfilter: nft_chain_nat: inet family is missing module ownership + - iommu/vt-d: Fix the wrong printing in RHSA parsing + - iommu/vt-d: Ignore devices with out-of-spec domain number + - i2c: acpi: put device when verifying client fails + - iommu/amd: Fix IOMMU AVIC not properly update the is_run bit in IRTE + - ipv6: restrict IPV6_ADDRFORM operation + - net/smc: check for valid ib_client_data + - net/smc: cancel event worker during device removal + - Linux 5.4.26 + * please help enable CONFIG_EROFS_FS_ZIP (LP: #1867099) + - [Config] CONFIG_EROFS_FS_ZIP=y + - [Config] CONFIG_EROFS_FS_CLUSTER_PAGE_LIMIT=1 + * All PS/2 ports on PS/2 Serial add-in bracket are not working after S3 + (LP: #1866734) + - SAUCE: Input: i8042 - fix the selftest retry logic + * [UBUNTU 20.04] virtio-blk disks can go dissfunctional when swiotlb fills up + (LP: #1867109) + - virtio-blk: fix hw_queue stopped on arbitrary error + - virtio-blk: improve virtqueue error to BLK_STS + * Focal update: v5.4.25 upstream stable release (LP: #1867178) + - block, bfq: get extra ref to prevent a queue from being freed during a group + move + - block, bfq: do not insert oom queue into position tree + - net: dsa: bcm_sf2: Forcibly configure IMP port for 1Gb/sec + - net: stmmac: fix notifier registration + - dm thin metadata: fix lockdep complaint + - RDMA/core: Fix pkey and port assignment in get_new_pps + - RDMA/core: Fix use of logical OR in get_new_pps + - kbuild: fix 'No such file or directory' warning when cleaning + - kprobes: Fix optimize_kprobe()/unoptimize_kprobe() cancellation logic + - blktrace: fix dereference after null check + - ALSA: hda: do not override bus codec_mask in link_get() + - serial: ar933x_uart: set UART_CS_{RX,TX}_READY_ORIDE + - selftests: fix too long argument + - usb: gadget: composite: Support more than 500mA MaxPower + - usb: gadget: ffs: ffs_aio_cancel(): Save/restore IRQ flags + - usb: gadget: serial: fix Tx stall after buffer overflow + - habanalabs: halt the engines before hard-reset + - habanalabs: do not halt CoreSight during hard reset + - habanalabs: patched cb equals user cb in device memset + - drm/msm/mdp5: rate limit pp done timeout warnings + - drm: msm: Fix return type of dsi_mgr_connector_mode_valid for kCFI + - drm/modes: Make sure to parse valid rotation value from cmdline + - drm/modes: Allow DRM_MODE_ROTATE_0 when applying video mode parameters + - scsi: megaraid_sas: silence a warning + - drm/msm/dsi: save pll state before dsi host is powered off + - drm/msm/dsi/pll: call vco set rate explicitly + - selftests: forwarding: use proto icmp for {gretap, ip6gretap}_mac testing + - selftests: forwarding: vxlan_bridge_1d: fix tos value + - net: atlantic: check rpc result and wait for rpc address + - net: ks8851-ml: Remove 8-bit bus accessors + - net: ks8851-ml: Fix 16-bit data access + - net: ks8851-ml: Fix 16-bit IO operation + - net: ethernet: dm9000: Handle -EPROBE_DEFER in dm9000_parse_dt() + - watchdog: da9062: do not ping the hw during stop() + - s390/cio: cio_ignore_proc_seq_next should increase position index + - s390: make 'install' not depend on vmlinux + - efi: Only print errors about failing to get certs if EFI vars are found + - net/mlx5: DR, Fix matching on vport gvmi + - nvme/pci: Add sleep quirk for Samsung and Toshiba drives + - nvme-pci: Use single IRQ vector for old Apple models + - x86/boot/compressed: Don't declare __force_order in kaslr_64.c + - s390/qdio: fill SL with absolute addresses + - nvme: Fix uninitialized-variable warning + - ice: Don't tell the OS that link is going down + - x86/xen: Distribute switch variables for initialization + - net: thunderx: workaround BGX TX Underflow issue + - csky/mm: Fixup export invalid_pte_table symbol + - csky: Set regs->usp to kernel sp, when the exception is from kernel + - csky/smp: Fixup boot failed when CONFIG_SMP + - csky: Fixup ftrace modify panic + - csky: Fixup compile warning for three unimplemented syscalls + - arch/csky: fix some Kconfig typos + - selftests: forwarding: vxlan_bridge_1d: use more proper tos value + - firmware: imx: scu: Ensure sequential TX + - binder: prevent UAF for binderfs devices + - binder: prevent UAF for binderfs devices II + - ALSA: hda/realtek - Add Headset Mic supported + - ALSA: hda/realtek - Add Headset Button supported for ThinkPad X1 + - ALSA: hda/realtek - Fix silent output on Gigabyte X570 Aorus Master + - ALSA: hda/realtek - Enable the headset of ASUS B9450FA with ALC294 + - cifs: don't leak -EAGAIN for stat() during reconnect + - cifs: fix rename() by ensuring source handle opened with DELETE bit + - usb: storage: Add quirk for Samsung Fit flash + - usb: quirks: add NO_LPM quirk for Logitech Screen Share + - usb: dwc3: gadget: Update chain bit correctly when using sg list + - usb: cdns3: gadget: link trb should point to next request + - usb: cdns3: gadget: toggle cycle bit before reset endpoint + - usb: core: hub: fix unhandled return by employing a void function + - usb: core: hub: do error out if usb_autopm_get_interface() fails + - usb: core: port: do error out if usb_autopm_get_interface() fails + - vgacon: Fix a UAF in vgacon_invert_region + - mm, numa: fix bad pmd by atomically check for pmd_trans_huge when marking + page tables prot_numa + - mm: fix possible PMD dirty bit lost in set_pmd_migration_entry() + - mm, hotplug: fix page online with DEBUG_PAGEALLOC compiled but not enabled + - fat: fix uninit-memory access for partial initialized inode + - btrfs: fix RAID direct I/O reads with alternate csums + - arm64: dts: socfpga: agilex: Fix gmac compatible + - arm: dts: dra76x: Fix mmc3 max-frequency + - tty:serial:mvebu-uart:fix a wrong return + - tty: serial: fsl_lpuart: free IDs allocated by IDA + - serial: 8250_exar: add support for ACCES cards + - vt: selection, close sel_buffer race + - vt: selection, push console lock down + - vt: selection, push sel_lock up + - media: hantro: Fix broken media controller links + - media: mc-entity.c: use & to check pad flags, not == + - media: vicodec: process all 4 components for RGB32 formats + - media: v4l2-mem2mem.c: fix broken links + - perf intel-pt: Fix endless record after being terminated + - perf intel-bts: Fix endless record after being terminated + - perf cs-etm: Fix endless record after being terminated + - perf arm-spe: Fix endless record after being terminated + - spi: spidev: Fix CS polarity if GPIO descriptors are used + - x86/pkeys: Manually set X86_FEATURE_OSPKE to preserve existing changes + - s390/pci: Fix unexpected write combine on resource + - s390/mm: fix panic in gup_fast on large pud + - dmaengine: imx-sdma: fix context cache + - dmaengine: imx-sdma: Fix the event id check to include RX event for UART6 + - dmaengine: tegra-apb: Fix use-after-free + - dmaengine: tegra-apb: Prevent race conditions of tasklet vs free list + - dm integrity: fix recalculation when moving from journal mode to bitmap mode + - dm integrity: fix a deadlock due to offloading to an incorrect workqueue + - dm integrity: fix invalid table returned due to argument count mismatch + - dm cache: fix a crash due to incorrect work item cancelling + - dm: report suspended device during destroy + - dm writecache: verify watermark during resume + - dm zoned: Fix reference counter initial value of chunk works + - dm: fix congested_fn for request-based device + - arm64: dts: meson-sm1-sei610: add missing interrupt-names + - ARM: dts: ls1021a: Restore MDIO compatible to gianfar + - spi: bcm63xx-hsspi: Really keep pll clk enabled + - drm/virtio: make resource id workaround runtime switchable. + - drm/virtio: fix resource id creation race + - ASoC: topology: Fix memleak in soc_tplg_link_elems_load() + - ASoC: topology: Fix memleak in soc_tplg_manifest_load() + - ASoC: SOF: Fix snd_sof_ipc_stream_posn() + - ASoC: intel: skl: Fix pin debug prints + - ASoC: intel: skl: Fix possible buffer overflow in debug outputs + - powerpc: define helpers to get L1 icache sizes + - powerpc: Convert flush_icache_range & friends to C + - powerpc/mm: Fix missing KUAP disable in flush_coherent_icache() + - ASoC: pcm: Fix possible buffer overflow in dpcm state sysfs output + - ASoC: pcm512x: Fix unbalanced regulator enable call in probe error path + - ASoC: Intel: Skylake: Fix available clock counter incrementation + - ASoC: dapm: Correct DAPM handling of active widgets during shutdown + - spi: atmel-quadspi: fix possible MMIO window size overrun + - drm/panfrost: Don't try to map on error faults + - drm: kirin: Revert "Fix for hikey620 display offset problem" + - drm/sun4i: Add separate DE3 VI layer formats + - drm/sun4i: Fix DE2 VI layer format support + - drm/sun4i: de2/de3: Remove unsupported VI layer formats + - drm/i915: Program MBUS with rmw during initialization + - drm/i915/selftests: Fix return in assert_mmap_offset() + - phy: mapphone-mdm6600: Fix timeouts by adding wake-up handling + - phy: mapphone-mdm6600: Fix write timeouts with shorter GPIO toggle interval + - ARM: dts: imx6: phycore-som: fix emmc supply + - arm64: dts: imx8qxp-mek: Remove unexisting Ethernet PHY + - firmware: imx: misc: Align imx sc msg structs to 4 + - firmware: imx: scu-pd: Align imx sc msg structs to 4 + - firmware: imx: Align imx_sc_msg_req_cpu_start to 4 + - soc: imx-scu: Align imx sc msg structs to 4 + - Revert "RDMA/cma: Simplify rdma_resolve_addr() error flow" + - RDMA/rw: Fix error flow during RDMA context initialization + - RDMA/nldev: Fix crash when set a QP to a new counter but QPN is missing + - RDMA/siw: Fix failure handling during device creation + - RDMA/iwcm: Fix iwcm work deallocation + - RDMA/core: Fix protection fault in ib_mr_pool_destroy + - regulator: stm32-vrefbuf: fix a possible overshoot when re-enabling + - RMDA/cm: Fix missing ib_cm_destroy_id() in ib_cm_insert_listen() + - IB/hfi1, qib: Ensure RCU is locked when accessing list + - ARM: imx: build v7_cpu_resume() unconditionally + - ARM: dts: am437x-idk-evm: Fix incorrect OPP node names + - ARM: dts: dra7xx-clocks: Fixup IPU1 mux clock parent source + - ARM: dts: imx7-colibri: Fix frequency for sd/mmc + - hwmon: (adt7462) Fix an error return in ADT7462_REG_VOLT() + - dma-buf: free dmabuf->name in dma_buf_release() + - dmaengine: coh901318: Fix a double lock bug in dma_tc_handle() + - arm64: dts: meson: fix gxm-khadas-vim2 wifi + - bus: ti-sysc: Fix 1-wire reset quirk + - EDAC/synopsys: Do not print an error with back-to-back snprintf() calls + - powerpc: fix hardware PMU exception bug on PowerVM compatibility mode + systems + - efi/x86: Align GUIDs to their size in the mixed mode runtime wrapper + - efi/x86: Handle by-ref arguments covering multiple pages in mixed mode + - efi: READ_ONCE rng seed size before munmap + - block, bfq: get a ref to a group when adding it to a service tree + - block, bfq: remove ifdefs from around gets/puts of bfq groups + - csky: Implement copy_thread_tls + - drm/virtio: module_param_named() requires linux/moduleparam.h + - Linux 5.4.25 + * Miscellaneous Ubuntu changes + - hio -- remove duplicated MODULE_DEVICE_TABLE declaration + - [Config] Add initial riscv64 config + - [Config] Bring riscv64 in line with other arches + - [Packaging] Add riscv64 arch support + - [Packaging] Add initial riscv64 abi + - [Config] updateconfigs for riscv64 + - [Config] Update annotations for riscv64 + - SAUCE: r8169: disable ASPM L1.1 + - update wireguard dkms package version + - [Config] garbage collect PCIEASPM_DEBUG + - [Config] gcc version updateconfigs + * Miscellaneous upstream changes + - Revert "UBUNTU: SAUCE: platform/x86: dell-uart-backlight: move retry block" + - RISC-V: Do not invoke SBI call if cpumask is empty + - RISC-V: Issue a local tlbflush if possible. + - RISC-V: Issue a tlb page flush if possible + - riscv: add support for SECCOMP and SECCOMP_FILTER + - riscv: reject invalid syscalls below -1 + - mtd: spi-nor: Add support for is25wp256 + - PCI/ASPM: Remove PCIEASPM_DEBUG Kconfig option and related code + + -- Paolo Pisati Tue, 24 Mar 2020 15:30:05 +0100 + +linux-azure (5.4.0-1006.6) focal; urgency=medium + + * focal/linux-azure: 5.4.0-1006.6 -proposed tracker (LP: #1866484) + + * Packaging resync (LP: #1786013) + - [Packaging] update helper scripts + + * Miscellaneous Ubuntu changes + - [Config] Update configs for 5.4 + + [ Ubuntu: 5.4.0-18.22 ] + + * focal/linux: 5.4.0-18.22 -proposed tracker (LP: #1866488) + * Packaging resync (LP: #1786013) + - [Packaging] resync getabis + - [Packaging] update helper scripts + * Add sysfs attribute to show remapped NVMe (LP: #1863621) + - SAUCE: ata: ahci: Add sysfs attribute to show remapped NVMe device count + * [20.04 FEAT] Compression improvements in Linux kernel (LP: #1830208) + - lib/zlib: add s390 hardware support for kernel zlib_deflate + - s390/boot: rename HEAP_SIZE due to name collision + - lib/zlib: add s390 hardware support for kernel zlib_inflate + - s390/boot: add dfltcc= kernel command line parameter + - lib/zlib: add zlib_deflate_dfltcc_enabled() function + - btrfs: use larger zlib buffer for s390 hardware compression + - [Config] Introducing s390x specific kernel config option CONFIG_ZLIB_DFLTCC + * [UBUNTU 20.04] s390x/pci: increase CONFIG_PCI_NR_FUNCTIONS to 512 in kernel + config (LP: #1866056) + - [Config] Increase CONFIG_PCI_NR_FUNCTIONS from 64 to 512 starting with focal + on s390x + * CONFIG_IP_MROUTE_MULTIPLE_TABLES is not set (LP: #1865332) + - [Config] CONFIG_IP_MROUTE_MULTIPLE_TABLES=y + * Dell XPS 13 9300 Intel 1650S wifi [34f0:1651] fails to load firmware + (LP: #1865962) + - iwlwifi: remove IWL_DEVICE_22560/IWL_DEVICE_FAMILY_22560 + - iwlwifi: 22000: fix some indentation + - iwlwifi: pcie: rx: use rxq queue_size instead of constant + - iwlwifi: allocate more receive buffers for HE devices + - iwlwifi: remove some outdated iwl22000 configurations + - iwlwifi: assume the driver_data is a trans_cfg, but allow full cfg + * [FOCAL][REGRESSION] Intel Gen 9 brightness cannot be controlled + (LP: #1861521) + - Revert "USUNTU: SAUCE: drm/i915: Force DPCD backlight mode on Dell Precision + 4K sku" + - Revert "UBUNTU: SAUCE: drm/i915: Force DPCD backlight mode on X1 Extreme 2nd + Gen 4K AMOLED panel" + - SAUCE: drm/dp: Introduce EDID-based quirks + - SAUCE: drm/i915: Force DPCD backlight mode on X1 Extreme 2nd Gen 4K AMOLED + panel + - SAUCE: drm/i915: Force DPCD backlight mode for some Dell CML 2020 panels + * [20.04 FEAT] Enable proper kprobes on ftrace support (LP: #1865858) + - s390/ftrace: save traced function caller + - s390: support KPROBES_ON_FTRACE + * alsa/sof: load different firmware on different platforms (LP: #1857409) + - ASoC: SOF: Intel: hda: use fallback for firmware name + - ASoC: Intel: acpi-match: split CNL tables in three + - ASoC: SOF: Intel: Fix CFL and CML FW nocodec binary names. + * [UBUNTU 20.04] Enable CONFIG_NET_SWITCHDEV in kernel config for s390x + starting with focal (LP: #1865452) + - [Config] Enable CONFIG_NET_SWITCHDEV in kernel config for s390x starting + with focal + * Focal update: v5.4.24 upstream stable release (LP: #1866333) + - io_uring: grab ->fs as part of async offload + - EDAC: skx_common: downgrade message importance on missing PCI device + - net: dsa: b53: Ensure the default VID is untagged + - net: fib_rules: Correctly set table field when table number exceeds 8 bits + - net: macb: ensure interface is not suspended on at91rm9200 + - net: mscc: fix in frame extraction + - net: phy: restore mdio regs in the iproc mdio driver + - net: sched: correct flower port blocking + - net/tls: Fix to avoid gettig invalid tls record + - nfc: pn544: Fix occasional HW initialization failure + - qede: Fix race between rdma destroy workqueue and link change event + - Revert "net: dev: introduce support for sch BYPASS for lockless qdisc" + - udp: rehash on disconnect + - sctp: move the format error check out of __sctp_sf_do_9_1_abort + - bnxt_en: Improve device shutdown method. + - bnxt_en: Issue PCIe FLR in kdump kernel to cleanup pending DMAs. + - bonding: add missing netdev_update_lockdep_key() + - net: export netdev_next_lower_dev_rcu() + - bonding: fix lockdep warning in bond_get_stats() + - ipv6: Fix route replacement with dev-only route + - ipv6: Fix nlmsg_flags when splitting a multipath route + - ipmi:ssif: Handle a possible NULL pointer reference + - drm/msm: Set dma maximum segment size for mdss + - sched/core: Don't skip remote tick for idle CPUs + - timers/nohz: Update NOHZ load in remote tick + - sched/fair: Prevent unlimited runtime on throttled group + - dax: pass NOWAIT flag to iomap_apply + - mac80211: consider more elements in parsing CRC + - cfg80211: check wiphy driver existence for drvinfo report + - s390/zcrypt: fix card and queue total counter wrap + - qmi_wwan: re-add DW5821e pre-production variant + - qmi_wwan: unconditionally reject 2 ep interfaces + - NFSv4: Fix races between open and dentry revalidation + - perf/smmuv3: Use platform_get_irq_optional() for wired interrupt + - perf/x86/intel: Add Elkhart Lake support + - perf/x86/cstate: Add Tremont support + - perf/x86/msr: Add Tremont support + - ceph: do not execute direct write in parallel if O_APPEND is specified + - ARM: dts: sti: fixup sound frame-inversion for stihxxx-b2120.dtsi + - drm/amd/display: Do not set optimized_require to false after plane disable + - RDMA/siw: Remove unwanted WARN_ON in siw_cm_llp_data_ready() + - drm/amd/display: Check engine is not NULL before acquiring + - drm/amd/display: Limit minimum DPPCLK to 100MHz. + - drm/amd/display: Add initialitions for PLL2 clock source + - amdgpu: Prevent build errors regarding soft/hard-float FP ABI tags + - soc/tegra: fuse: Fix build with Tegra194 configuration + - i40e: Fix the conditional for i40e_vc_validate_vqs_bitmaps + - net: ena: fix potential crash when rxfh key is NULL + - net: ena: fix uses of round_jiffies() + - net: ena: add missing ethtool TX timestamping indication + - net: ena: fix incorrect default RSS key + - net: ena: rss: do not allocate key when not supported + - net: ena: rss: fix failure to get indirection table + - net: ena: rss: store hash function as values and not bits + - net: ena: fix incorrectly saving queue numbers when setting RSS indirection + table + - net: ena: fix corruption of dev_idx_to_host_tbl + - net: ena: ethtool: use correct value for crc32 hash + - net: ena: ena-com.c: prevent NULL pointer dereference + - ice: update Unit Load Status bitmask to check after reset + - cifs: Fix mode output in debugging statements + - cfg80211: add missing policy for NL80211_ATTR_STATUS_CODE + - mac80211: fix wrong 160/80+80 MHz setting + - nvme/tcp: fix bug on double requeue when send fails + - nvme: prevent warning triggered by nvme_stop_keep_alive + - nvme/pci: move cqe check after device shutdown + - ext4: potential crash on allocation error in ext4_alloc_flex_bg_array() + - audit: fix error handling in audit_data_to_entry() + - audit: always check the netlink payload length in audit_receive_msg() + - ACPICA: Introduce ACPI_ACCESS_BYTE_WIDTH() macro + - ACPI: watchdog: Fix gas->access_width usage + - KVM: VMX: check descriptor table exits on instruction emulation + - HID: ite: Only bind to keyboard USB interface on Acer SW5-012 keyboard dock + - HID: core: fix off-by-one memset in hid_report_raw_event() + - HID: core: increase HID report buffer size to 8KiB + - drm/amdgpu: Drop DRIVER_USE_AGP + - drm/radeon: Inline drm_get_pci_dev + - macintosh: therm_windtunnel: fix regression when instantiating devices + - tracing: Disable trace_printk() on post poned tests + - Revert "PM / devfreq: Modify the device name as devfreq(X) for sysfs" + - amdgpu/gmc_v9: save/restore sdpif regs during S3 + - cpufreq: Fix policy initialization for internal governor drivers + - io_uring: fix 32-bit compatability with sendmsg/recvmsg + - netfilter: ipset: Fix "INFO: rcu detected stall in hash_xxx" reports + - net/smc: transfer fasync_list in case of fallback + - vhost: Check docket sk_family instead of call getname + - netfilter: ipset: Fix forceadd evaluation path + - netfilter: xt_hashlimit: reduce hashlimit_mutex scope for htable_put() + - HID: alps: Fix an error handling path in 'alps_input_configured()' + - HID: hiddev: Fix race in in hiddev_disconnect() + - MIPS: VPE: Fix a double free and a memory leak in 'release_vpe()' + - i2c: altera: Fix potential integer overflow + - i2c: jz4780: silence log flood on txabrt + - drm/i915/gvt: Fix orphan vgpu dmabuf_objs' lifetime + - drm/i915/gvt: Separate display reset from ALL_ENGINES reset + - nl80211: fix potential leak in AP start + - mac80211: Remove a redundant mutex unlock + - kbuild: fix DT binding schema rule to detect command line changes + - hv_netvsc: Fix unwanted wakeup in netvsc_attach() + - usb: charger: assign specific number for enum value + - nvme-pci: Hold cq_poll_lock while completing CQEs + - s390/qeth: vnicc Fix EOPNOTSUPP precedence + - net: netlink: cap max groups which will be considered in netlink_bind() + - net: atlantic: fix use after free kasan warn + - net: atlantic: fix potential error handling + - net: atlantic: fix out of range usage of active_vlans array + - net/smc: no peer ID in CLC decline for SMCD + - net: ena: make ena rxfh support ETH_RSS_HASH_NO_CHANGE + - selftests: Install settings files to fix TIMEOUT failures + - kbuild: remove header compile test + - kbuild: move headers_check rule to usr/include/Makefile + - kbuild: remove unneeded variable, single-all + - kbuild: make single target builds even faster + - namei: only return -ECHILD from follow_dotdot_rcu() + - mwifiex: drop most magic numbers from mwifiex_process_tdls_action_frame() + - mwifiex: delete unused mwifiex_get_intf_num() + - KVM: SVM: Override default MMIO mask if memory encryption is enabled + - KVM: Check for a bad hva before dropping into the ghc slow path + - sched/fair: Optimize select_idle_cpu + - f2fs: fix to add swap extent correctly + - RDMA/hns: Simplify the calculation and usage of wqe idx for post verbs + - RDMA/hns: Bugfix for posting a wqe with sge + - drivers: net: xgene: Fix the order of the arguments of + 'alloc_etherdev_mqs()' + - ima: ima/lsm policy rule loading logic bug fixes + - kprobes: Set unoptimized flag after unoptimizing code + - lib/vdso: Make __arch_update_vdso_data() logic understandable + - lib/vdso: Update coarse timekeeper unconditionally + - pwm: omap-dmtimer: put_device() after of_find_device_by_node() + - perf hists browser: Restore ESC as "Zoom out" of DSO/thread/etc + - perf ui gtk: Add missing zalloc object + - x86/resctrl: Check monitoring static key in the MBM overflow handler + - KVM: x86: Remove spurious kvm_mmu_unload() from vcpu destruction path + - KVM: x86: Remove spurious clearing of async #PF MSR + - rcu: Allow only one expedited GP to run concurrently with wakeups + - ubifs: Fix ino_t format warnings in orphan_delete() + - thermal: db8500: Depromote debug print + - thermal: brcmstb_thermal: Do not use DT coefficients + - netfilter: nft_tunnel: no need to call htons() when dumping ports + - netfilter: nf_flowtable: fix documentation + - bus: tegra-aconnect: Remove PM_CLK dependency + - xfs: clear kernel only flags in XFS_IOC_ATTRMULTI_BY_HANDLE + - locking/lockdep: Fix lockdep_stats indentation problem + - mm/debug.c: always print flags in dump_page() + - mm/gup: allow FOLL_FORCE for get_user_pages_fast() + - mm/huge_memory.c: use head to check huge zero page + - mm, thp: fix defrag setting if newline is not used + - kvm: nVMX: VMWRITE checks VMCS-link pointer before VMCS field + - kvm: nVMX: VMWRITE checks unsupported field before read-only field + - blktrace: Protect q->blk_trace with RCU + - Linux 5.4.24 + * Focal update: v5.4.23 upstream stable release (LP: #1866165) + - iommu/qcom: Fix bogus detach logic + - ALSA: hda: Use scnprintf() for printing texts for sysfs/procfs + - ALSA: hda/realtek - Apply quirk for MSI GP63, too + - ALSA: hda/realtek - Apply quirk for yet another MSI laptop + - ASoC: codec2codec: avoid invalid/double-free of pcm runtime + - ASoC: sun8i-codec: Fix setting DAI data format + - tpm: Initialize crypto_id of allocated_banks to HASH_ALGO__LAST + - ecryptfs: fix a memory leak bug in parse_tag_1_packet() + - ecryptfs: fix a memory leak bug in ecryptfs_init_messaging() + - btrfs: handle logged extent failure properly + - thunderbolt: Prevent crash if non-active NVMem file is read + - USB: misc: iowarrior: add support for 2 OEMed devices + - USB: misc: iowarrior: add support for the 28 and 28L devices + - USB: misc: iowarrior: add support for the 100 device + - e1000e: Use rtnl_lock to prevent race conditions between net and pci/pm + - floppy: check FDC index for errors before assigning it + - vt: fix scrollback flushing on background consoles + - vt: selection, handle pending signals in paste_selection + - vt: vt_ioctl: fix race in VT_RESIZEX + - staging: android: ashmem: Disallow ashmem memory from being remapped + - staging: vt6656: fix sign of rx_dbm to bb_pre_ed_rssi. + - xhci: Force Maximum Packet size for Full-speed bulk devices to valid range. + - xhci: fix runtime pm enabling for quirky Intel hosts + - xhci: apply XHCI_PME_STUCK_QUIRK to Intel Comet Lake platforms + - xhci: Fix memory leak when caching protocol extended capability PSI tables - + take 2 + - usb: host: xhci: update event ring dequeue pointer on purpose + - USB: core: add endpoint-blacklist quirk + - USB: quirks: blacklist duplicate ep on Sound Devices USBPre2 + - usb: uas: fix a plug & unplug racing + - USB: Fix novation SourceControl XL after suspend + - USB: hub: Don't record a connect-change event during reset-resume + - USB: hub: Fix the broken detection of USB3 device in SMSC hub + - usb: dwc2: Fix SET/CLEAR_FEATURE and GET_STATUS flows + - usb: dwc3: gadget: Check for IOC/LST bit in TRB->ctrl fields + - usb: dwc3: debug: fix string position formatting mixup with ret and len + - scsi: Revert "target/core: Inline transport_lun_remove_cmd()" + - staging: rtl8188eu: Fix potential security hole + - staging: rtl8188eu: Fix potential overuse of kernel memory + - staging: rtl8723bs: Fix potential security hole + - staging: rtl8723bs: Fix potential overuse of kernel memory + - drm/panfrost: perfcnt: Reserve/use the AS attached to the perfcnt MMU + context + - powerpc/8xx: Fix clearing of bits 20-23 in ITLB miss + - powerpc/eeh: Fix deadlock handling dead PHB + - powerpc/tm: Fix clearing MSR[TS] in current when reclaiming on signal + delivery + - powerpc/entry: Fix an #if which should be an #ifdef in entry_32.S + - powerpc/hugetlb: Fix 512k hugepages on 8xx with 16k page size + - powerpc/hugetlb: Fix 8M hugepages on 8xx + - arm64: memory: Add missing brackets to untagged_addr() macro + - jbd2: fix ocfs2 corrupt when clearing block group bits + - x86/ima: use correct identifier for SetupMode variable + - x86/mce/amd: Publish the bank pointer only after setup has succeeded + - x86/mce/amd: Fix kobject lifetime + - x86/cpu/amd: Enable the fixed Instructions Retired counter IRPERF + - serial: 8250: Check UPF_IRQ_SHARED in advance + - tty/serial: atmel: manage shutdown in case of RS485 or ISO7816 mode + - tty: serial: imx: setup the correct sg entry for tx dma + - tty: serial: qcom_geni_serial: Fix RX cancel command failure + - serdev: ttyport: restore client ops on deregistration + - MAINTAINERS: Update drm/i915 bug filing URL + - ACPI: PM: s2idle: Check fixed wakeup events in acpi_s2idle_wake() + - mm/memcontrol.c: lost css_put in memcg_expand_shrinker_maps() + - nvme-multipath: Fix memory leak with ana_log_buf + - genirq/irqdomain: Make sure all irq domain flags are distinct + - mm/vmscan.c: don't round up scan size for online memory cgroup + - mm/sparsemem: pfn_to_page is not valid yet on SPARSEMEM + - lib/stackdepot.c: fix global out-of-bounds in stack_slabs + - mm: Avoid creating virtual address aliases in brk()/mmap()/mremap() + - drm/amdgpu/soc15: fix xclk for raven + - drm/amdgpu/gfx9: disable gfxoff when reading rlc clock + - drm/amdgpu/gfx10: disable gfxoff when reading rlc clock + - drm/nouveau/kms/gv100-: Re-set LUT after clearing for modesets + - drm/i915: Wean off drm_pci_alloc/drm_pci_free + - drm/i915: Update drm/i915 bug filing URL + - sched/psi: Fix OOB write when writing 0 bytes to PSI files + - KVM: nVMX: Don't emulate instructions in guest mode + - KVM: x86: don't notify userspace IOAPIC on edge-triggered interrupt EOI + - ext4: fix a data race in EXT4_I(inode)->i_disksize + - ext4: add cond_resched() to __ext4_find_entry() + - ext4: fix potential race between online resizing and write operations + - ext4: fix potential race between s_group_info online resizing and access + - ext4: fix potential race between s_flex_groups online resizing and access + - ext4: fix mount failure with quota configured as module + - ext4: rename s_journal_flag_rwsem to s_writepages_rwsem + - ext4: fix race between writepages and enabling EXT4_EXTENTS_FL + - KVM: nVMX: Refactor IO bitmap checks into helper function + - KVM: nVMX: Check IO instruction VM-exit conditions + - KVM: nVMX: clear PIN_BASED_POSTED_INTR from nested pinbased_ctls only when + apicv is globally disabled + - KVM: nVMX: handle nested posted interrupts when apicv is disabled for L1 + - KVM: apic: avoid calculating pending eoi from an uninitialized val + - btrfs: destroy qgroup extent records on transaction abort + - btrfs: fix bytes_may_use underflow in prealloc error condtition + - btrfs: reset fs_root to NULL on error in open_ctree + - btrfs: do not check delayed items are empty for single transaction cleanup + - Btrfs: fix btrfs_wait_ordered_range() so that it waits for all ordered + extents + - Btrfs: fix race between shrinking truncate and fiemap + - btrfs: don't set path->leave_spinning for truncate + - Btrfs: fix deadlock during fast fsync when logging prealloc extents beyond + eof + - Revert "dmaengine: imx-sdma: Fix memory leak" + - drm/i915/gvt: more locking for ppgtt mm LRU list + - drm/bridge: tc358767: fix poll timeouts + - drm/i915/gt: Protect defer_request() from new waiters + - drm/msm/dpu: fix BGR565 vs RGB565 confusion + - scsi: Revert "RDMA/isert: Fix a recently introduced regression related to + logout" + - scsi: Revert "target: iscsi: Wait for all commands to finish before freeing + a session" + - usb: gadget: composite: Fix bMaxPower for SuperSpeedPlus + - usb: dwc2: Fix in ISOC request length checking + - staging: rtl8723bs: fix copy of overlapping memory + - staging: greybus: use after free in gb_audio_manager_remove_all() + - ASoC: atmel: fix atmel_ssc_set_audio link failure + - ASoC: fsl_sai: Fix exiting path on probing failure + - ecryptfs: replace BUG_ON with error handling code + - iommu/vt-d: Fix compile warning from intel-svm.h + - crypto: rename sm3-256 to sm3 in hash_algo_name + - genirq/proc: Reject invalid affinity masks (again) + - bpf, offload: Replace bitwise AND by logical AND in + bpf_prog_offload_info_fill + - arm64: lse: Fix LSE atomics with LLVM + - io_uring: fix __io_iopoll_check deadlock in io_sq_thread + - ALSA: rawmidi: Avoid bit fields for state flags + - ALSA: seq: Avoid concurrent access to queue flags + - ALSA: seq: Fix concurrent access to queue current tick/time + - netfilter: xt_hashlimit: limit the max size of hashtable + - rxrpc: Fix call RCU cleanup using non-bh-safe locks + - io_uring: prevent sq_thread from spinning when it should stop + - ata: ahci: Add shutdown to freeze hardware resources of ahci + - xen: Enable interrupts when calling _cond_resched() + - net/mlx5e: Reset RQ doorbell counter before moving RQ state from RST to RDY + - net/mlx5: Fix sleep while atomic in mlx5_eswitch_get_vepa + - net/mlx5e: Fix crash in recovery flow without devlink reporter + - s390/kaslr: Fix casts in get_random + - s390/mm: Explicitly compare PAGE_DEFAULT_KEY against zero in + storage_key_init_range + - bpf: Selftests build error in sockmap_basic.c + - ASoC: SOF: Intel: hda: Add iDisp4 DAI + - Linux 5.4.23 + * Miscellaneous Ubuntu changes + - SAUCE: selftests/net -- disable timeout + - SAUCE: selftests/net -- disable l2tp.sh test + - SAUCE: selftests/ftrace: Use printf instead of echo in kprobe syntax error + tests + - SAUCE: selftests/powerpc -- Disable timeout for benchmark and tm tests + - SAUCE: selftests/ftrace: Escape additional strings in kprobe syntax error + tests + - SAUCE: Revert "UBUNTU: SAUCE: blk/core: Gracefully handle unset + make_request_fn" + - [Packaging] prevent duplicated entries in modules.ignore + - update dkms package versions + + [ Ubuntu: 5.4.0-17.21 ] + + * focal/linux: 5.4.0-17.20 -proposed tracker (LP: #1865025) + * Packaging resync (LP: #1786013) + - [Packaging] update helper scripts + * Miscellaneous Ubuntu changes + - SAUCE: drm/i915/execlists: fix off by one in execlists_update_context() + + -- Andrea Righi Mon, 09 Mar 2020 17:05:02 +0100 + +linux-azure (5.4.0-1005.5) focal; urgency=medium + + * focal/linux-azure: 5.4.0-1005.5 -proposed tracker (LP: #1865021) + + * Packaging resync (LP: #1786013) + - [Packaging] update helper scripts + + [ Ubuntu: 5.4.0-17.20 ] + + * focal/linux: 5.4.0-17.20 -proposed tracker (LP: #1865025) + * Packaging resync (LP: #1786013) + - [Packaging] update helper scripts + * Miscellaneous Ubuntu changes + - SAUCE: drm/i915/execlists: fix off by one in execlists_update_context() + + -- Seth Forshee Thu, 27 Feb 2020 14:55:20 -0600 + +linux-azure (5.4.0-1004.4) focal; urgency=medium + + * focal/linux-azure: 5.4.0-1004.4 -proposed tracker (LP: #1864884) + + [ Ubuntu: 5.4.0-16.19 ] + + * focal/linux: 5.4.0-16.19 -proposed tracker (LP: #1864889) + * system hang: i915 Resetting rcs0 for hang on rcs0 (LP: #1861395) + - drm/i915/execlists: Always force a context reload when rewinding RING_TAIL + * nsleep-lat / set-timer-lat / inconsistency-check / raw_skew from timer in + ubuntu_kernel_selftests timeout on 5.3 / 5.4 (LP: #1864626) + - selftests/timers: Turn off timeout setting + * [sfc-0121]enable the HiSilicon v3xx SFC driver (LP: #1860401) + - spi: Add HiSilicon v3xx SPI NOR flash controller driver + - MAINTAINERS: Add a maintainer for the HiSilicon v3xx SFC driver + - [Config] CONFIG_SPI_HISI_SFC_V3XX=m + * [hns3-0217]sync mainline kernel 5.6rc1 hns3 patchset into ubuntu HWE kernel + branch (LP: #1863575) + - net: hns3: add management table after IMP reset + - net: hns3: fix VF bandwidth does not take effect in some case + - net: hns3: fix a copying IPv6 address error in hclge_fd_get_flow_tuples() + * [hns3-0111]sync mainline kernel 5.5rc6 hns3 patchset into ubuntu HWE kernel + branch Edit (LP: #1859261) + - net: hns3: schedule hclgevf_service by using delayed workqueue + - net: hns3: remove mailbox and reset work in hclge_main + - net: hns3: remove unnecessary work in hclgevf_main + - net: hns3: allocate WQ with WQ_MEM_RECLAIM flag + - net: hns3: do not schedule the periodic task when reset fail + - net: hns3: check FE bit before calling hns3_add_frag() + - net: hns3: remove useless mutex vport_cfg_mutex in the struct hclge_dev + - net: hns3: optimization for CMDQ uninitialization + - net: hns3: get FD rules location before dump in debugfs + - net: hns3: implement ndo_features_check ops for hns3 driver + - net: hns3: add some VF VLAN information for command "ip link show" + - net: hns3: add a log for getting chain failure in + hns3_nic_uninit_vector_data() + - net: hns3: only print misc interrupt status when handling fails + - net: hns3: add trace event support for HNS3 driver + - net: hns3: re-organize vector handle + - net: hns3: modify the IRQ name of TQP vector + - net: hns3: modify an unsuitable log in hclge_map_ring_to_vector() + - net: hns3: modify the IRQ name of misc vectors + - net: hns3: add protection when get SFP speed as 0 + - net: hns3: replace an unsuitable variable type in + hclge_inform_reset_assert_to_vf() + - net: hns3: modify an unsuitable reset level for hardware error + - net: hns3: split hclge_reset() into preparing and rebuilding part + - net: hns3: split hclgevf_reset() into preparing and rebuilding part + - net: hns3: refactor the precedure of PF FLR + - net: hns3: refactor the procedure of VF FLR + - net: hns3: enlarge HCLGE_RESET_WAIT_CNT + - net: hns3: modify hclge_func_reset_sync_vf()'s return type to void + - net: hns3: refactor the notification scheme of PF reset + * alsa/hda/realtek: fix a mute led regression on Lenovo X1 Carbon + (LP: #1864576) + - SAUCE: ALSA: hda/realtek - Fix a regression for mute led on Lenovo Carbon X1 + * ipc/sem.c : process loops infinitely in exit_sem() (LP: #1858834) + - Revert "ipc, sem: remove uneeded sem_undo_list lock usage in exit_sem()" + * r8152 init may take up to 40 seconds at initialization with Dell WD19/WD19DC + during hotplug (LP: #1864284) + - UBUNTU SAUCE: r8151: check disconnect status after long sleep + * Update kernel options CONFIG_NR_CPUS and CONFIG_NUMA_EMU for focal + (LP: #1864198) + - Ubuntu: [Config] Update kernel options CONFIG_NR_CPUS and CONFIG_NUMA_EMU + * ftrace test in ubuntu_kernel_selftests will timeout randomly (LP: #1864172) + - tracing/selftests: Turn off timeout setting + * Another Dell AIO backlight issue (LP: #1863880) + - SAUCE: platform/x86: dell-uart-backlight: move retry block + * Backport GetFB2 ioctl (LP: #1863874) + - SAUCE: drm: Add getfb2 ioctl + * [20.04] Allow to reset an opencapi adapter (LP: #1862121) + - powerpc/powernv/ioda: Fix ref count for devices with their own PE + - powerpc/powernv/ioda: Protect PE list + - powerpc/powernv/ioda: set up PE on opencapi device when enabling + - powerpc/powernv/ioda: Release opencapi device + - powerpc/powernv/ioda: Find opencapi slot for a device node + - pci/hotplug/pnv-php: Remove erroneous warning + - pci/hotplug/pnv-php: Improve error msg on power state change failure + - pci/hotplug/pnv-php: Register opencapi slots + - pci/hotplug/pnv-php: Relax check when disabling slot + - pci/hotplug/pnv-php: Wrap warnings in macro + - ocxl: Add PCI hotplug dependency to Kconfig + * alsa/asoc: export the number of dmic to userspace to work with the latest + ucm2 (focal) (LP: #1864400) + - ASoC: add control components management + - ASoC: intel/skl/hda - export number of digital microphones via control + components + * alsa/sof: let sof driver work with topology with volume and led control + (focal) (LP: #1864398) + - ASoC: SOF: enable dual control for pga + - AsoC: SOF: refactor control load code + - ASoC: SOF: acpi led support for switch controls + - ASoC: SOF: topology: check errors when parsing LED tokens + * machine doesn't come up after suspend and re-opening the lid (LP: #1861837) + - ASoC: SOF: trace: fix unconditional free in trace release + * 5.3.0-23-generic causes fans to spin when idle (LP: #1853044) + - drm/i915/gt: Close race between engine_park and intel_gt_retire_requests + - drm/i915/gt: Adapt engine_park synchronisation rules for engine_retire + - drm/i915/gt: Schedule request retirement when timeline idles + * Focal update: 5.4.22 upstream stable release (LP: #1864488) + - core: Don't skip generic XDP program execution for cloned SKBs + - enic: prevent waking up stopped tx queues over watchdog reset + - net/smc: fix leak of kernel memory to user space + - net: dsa: tag_qca: Make sure there is headroom for tag + - net/sched: matchall: add missing validation of TCA_MATCHALL_FLAGS + - net/sched: flower: add missing validation of TCA_FLOWER_FLAGS + - drm/gma500: Fixup fbdev stolen size usage evaluation + - ath10k: Fix qmi init error handling + - wil6210: fix break that is never reached because of zero'ing of a retry + counter + - drm/qxl: Complete exception handling in qxl_device_init() + - rcu/nocb: Fix dump_tree hierarchy print always active + - rcu: Fix missed wakeup of exp_wq waiters + - rcu: Fix data-race due to atomic_t copy-by-value + - f2fs: preallocate DIO blocks when forcing buffered_io + - f2fs: call f2fs_balance_fs outside of locked page + - media: meson: add missing allocation failure check on new_buf + - clk: meson: pll: Fix by 0 division in __pll_params_to_rate() + - cpu/hotplug, stop_machine: Fix stop_machine vs hotplug order + - brcmfmac: Fix memory leak in brcmf_p2p_create_p2pdev() + - brcmfmac: Fix use after free in brcmf_sdio_readframes() + - PCI: Fix pci_add_dma_alias() bitmask size + - drm/amd/display: Map ODM memory correctly when doing ODM combine + - leds: pca963x: Fix open-drain initialization + - ext4: fix ext4_dax_read/write inode locking sequence for IOCB_NOWAIT + - ALSA: ctl: allow TLV read operation for callback type of element in locked + case + - gianfar: Fix TX timestamping with a stacked DSA driver + - pinctrl: sh-pfc: sh7264: Fix CAN function GPIOs + - printk: fix exclusive_console replaying + - drm/mipi_dbi: Fix off-by-one bugs in mipi_dbi_blank() + - drm/msm/adreno: fix zap vs no-zap handling + - pxa168fb: Fix the function used to release some memory in an error handling + path + - media: ov5640: Fix check for PLL1 exceeding max allowed rate + - media: i2c: mt9v032: fix enum mbus codes and frame sizes + - media: sun4i-csi: Deal with DRAM offset + - media: sun4i-csi: Fix data sampling polarity handling + - media: sun4i-csi: Fix [HV]sync polarity handling + - clk: at91: sam9x60: fix programmable clock prescaler + - powerpc/powernv/iov: Ensure the pdn for VFs always contains a valid PE + number + - clk: meson: meson8b: make the CCF use the glitch-free mali mux + - gpio: gpio-grgpio: fix possible sleep-in-atomic-context bugs in + grgpio_irq_map/unmap() + - iommu/vt-d: Fix off-by-one in PASID allocation + - x86/fpu: Deactivate FPU state after failure during state load + - char/random: silence a lockdep splat with printk() + - media: sti: bdisp: fix a possible sleep-in-atomic-context bug in + bdisp_device_run() + - kernel/module: Fix memleak in module_add_modinfo_attrs() + - IB/core: Let IB core distribute cache update events + - pinctrl: baytrail: Do not clear IRQ flags on direct-irq enabled pins + - efi/x86: Map the entire EFI vendor string before copying it + - MIPS: Loongson: Fix potential NULL dereference in loongson3_platform_init() + - sparc: Add .exit.data section. + - net: ethernet: ixp4xx: Standard module init + - raid6/test: fix a compilation error + - uio: fix a sleep-in-atomic-context bug in uio_dmem_genirq_irqcontrol() + - drm/amdgpu/sriov: workaround on rev_id for Navi12 under sriov + - spi: fsl-lpspi: fix only one cs-gpio working + - drm/nouveau/nouveau: fix incorrect sizeof on args.src an args.dst + - usb: gadget: udc: fix possible sleep-in-atomic-context bugs in gr_probe() + - usb: dwc2: Fix IN FIFO allocation + - clocksource/drivers/bcm2835_timer: Fix memory leak of timer + - drm/amd/display: Clear state after exiting fixed active VRR state + - kselftest: Minimise dependency of get_size on C library interfaces + - jbd2: clear JBD2_ABORT flag before journal_reset to update log tail info + when load journal + - ext4: fix deadlock allocating bio_post_read_ctx from mempool + - clk: ti: dra7: fix parent for gmac_clkctrl + - x86/sysfb: Fix check for bad VRAM size + - pwm: omap-dmtimer: Simplify error handling + - udf: Allow writing to 'Rewritable' partitions + - dmaengine: fsl-qdma: fix duplicated argument to && + - wan/hdlc_x25: fix skb handling + - powerpc/iov: Move VF pdev fixup into pcibios_fixup_iov() + - tracing: Fix tracing_stat return values in error handling paths + - tracing: Fix very unlikely race of registering two stat tracers + - ARM: 8952/1: Disable kmemleak on XIP kernels + - ext4, jbd2: ensure panic when aborting with zero errno + - ath10k: Correct the DMA direction for management tx buffers + - rtw88: fix rate mask for 1SS chip + - brcmfmac: sdio: Fix OOB interrupt initialization on brcm43362 + - selftests: settings: tests can be in subsubdirs + - rtc: i2c/spi: Avoid inclusion of REGMAP support when not needed + - drm/amd/display: Retrain dongles when SINK_COUNT becomes non-zero + - tracing: Simplify assignment parsing for hist triggers + - nbd: add a flush_workqueue in nbd_start_device + - KVM: s390: ENOTSUPP -> EOPNOTSUPP fixups + - Btrfs: keep pages dirty when using btrfs_writepage_fixup_worker + - drivers/block/zram/zram_drv.c: fix error return codes not being returned in + writeback_store + - block, bfq: do not plug I/O for bfq_queues with no proc refs + - kconfig: fix broken dependency in randconfig-generated .config + - clk: qcom: Don't overwrite 'cfg' in clk_rcg2_dfs_populate_freq() + - clk: qcom: rcg2: Don't crash if our parent can't be found; return an error + - drm/amdkfd: Fix a bug in SDMA RLC queue counting under HWS mode + - bpf, sockhash: Synchronize_rcu before free'ing map + - drm/amdgpu: remove 4 set but not used variable in + amdgpu_atombios_get_connector_info_from_object_table + - ath10k: correct the tlv len of ath10k_wmi_tlv_op_gen_config_pno_start + - drm/amdgpu: Ensure ret is always initialized when using SOC15_WAIT_ON_RREG + - drm/panel: simple: Add Logic PD Type 28 display support + - arm64: dts: rockchip: Fix NanoPC-T4 cooling maps + - modules: lockdep: Suppress suspicious RCU usage warning + - ASoC: intel: sof_rt5682: Add quirk for number of HDMI DAI's + - ASoC: intel: sof_rt5682: Add support for tgl-max98357a-rt5682 + - regulator: rk808: Lower log level on optional GPIOs being not available + - net/wan/fsl_ucc_hdlc: reject muram offsets above 64K + - NFC: port100: Convert cpu_to_le16(le16_to_cpu(E1) + E2) to use + le16_add_cpu(). + - arm64: dts: allwinner: H6: Add PMU mode + - arm64: dts: allwinner: H5: Add PMU node + - arm: dts: allwinner: H3: Add PMU node + - opp: Free static OPPs on errors while adding them + - selinux: ensure we cleanup the internal AVC counters on error in + avc_insert() + - arm64: dts: qcom: msm8996: Disable USB2 PHY suspend by core + - padata: validate cpumask without removed CPU during offline + - clk: imx: Add correct failure handling for clk based helpers + - ARM: exynos_defconfig: Bring back explicitly wanted options + - ARM: dts: imx6: rdu2: Disable WP for USDHC2 and USDHC3 + - ARM: dts: imx6: rdu2: Limit USBH1 to Full Speed + - bus: ti-sysc: Implement quirk handling for CLKDM_NOAUTO + - PCI: iproc: Apply quirk_paxc_bridge() for module as well as built-in + - media: cx23885: Add support for AVerMedia CE310B + - PCI: Add generic quirk for increasing D3hot delay + - PCI: Increase D3 delay for AMD Ryzen5/7 XHCI controllers + - gpu/drm: ingenic: Avoid null pointer deference in plane atomic update + - selftests/net: make so_txtime more robust to timer variance + - media: v4l2-device.h: Explicitly compare grp{id,mask} to zero in v4l2_device + macros + - reiserfs: Fix spurious unlock in reiserfs_fill_super() error handling + - samples/bpf: Set -fno-stack-protector when building BPF programs + - r8169: check that Realtek PHY driver module is loaded + - fore200e: Fix incorrect checks of NULL pointer dereference + - netfilter: nft_tunnel: add the missing ERSPAN_VERSION nla_policy + - ALSA: usx2y: Adjust indentation in snd_usX2Y_hwdep_dsp_status + - PCI: Add nr_devfns parameter to pci_add_dma_alias() + - PCI: Add DMA alias quirk for PLX PEX NTB + - b43legacy: Fix -Wcast-function-type + - ipw2x00: Fix -Wcast-function-type + - iwlegacy: Fix -Wcast-function-type + - rtlwifi: rtl_pci: Fix -Wcast-function-type + - orinoco: avoid assertion in case of NULL pointer + - drm/amdgpu: fix KIQ ring test fail in TDR of SRIOV + - clk: qcom: smd: Add missing bimc clock + - ACPICA: Disassembler: create buffer fields in ACPI_PARSE_LOAD_PASS1 + - nfsd: Clone should commit src file metadata too + - scsi: ufs: Complete pending requests in host reset and restore path + - scsi: aic7xxx: Adjust indentation in ahc_find_syncrate + - crypto: inside-secure - add unspecified HAS_IOMEM dependency + - drm/mediatek: handle events when enabling/disabling crtc + - clk: renesas: rcar-gen3: Allow changing the RPC[D2] clocks + - ARM: dts: r8a7779: Add device node for ARM global timer + - selinux: ensure we cleanup the internal AVC counters on error in + avc_update() + - scsi: lpfc: Fix: Rework setting of fdmi symbolic node name registration + - arm64: dts: qcom: db845c: Enable ath10k 8bit host-cap quirk + - iommu/amd: Check feature support bit before accessing MSI capability + registers + - iommu/amd: Only support x2APIC with IVHD type 11h/40h + - iommu/iova: Silence warnings under memory pressure + - clk: actually call the clock init before any other callback of the clock + - dmaengine: Store module owner in dma_device struct + - dmaengine: imx-sdma: Fix memory leak + - bpf: Print error message for bpftool cgroup show + - net: phy: realtek: add logging for the RGMII TX delay configuration + - crypto: chtls - Fixed memory leak + - x86/vdso: Provide missing include file + - PM / devfreq: exynos-ppmu: Fix excessive stack usage + - PM / devfreq: rk3399_dmc: Add COMPILE_TEST and HAVE_ARM_SMCCC dependency + - drm/fbdev: Fallback to non tiled mode if all tiles not present + - pinctrl: sh-pfc: sh7269: Fix CAN function GPIOs + - reset: uniphier: Add SCSSI reset control for each channel + - ASoC: soc-topology: fix endianness issues + - fbdev: fix numbering of fbcon options + - RDMA/rxe: Fix error type of mmap_offset + - clk: sunxi-ng: add mux and pll notifiers for A64 CPU clock + - ALSA: sh: Fix unused variable warnings + - clk: Use parent node pointer during registration if necessary + - clk: uniphier: Add SCSSI clock gate for each channel + - ALSA: hda/realtek - Apply mic mute LED quirk for Dell E7xx laptops, too + - ALSA: sh: Fix compile warning wrt const + - net: phy: fixed_phy: fix use-after-free when checking link GPIO + - tools lib api fs: Fix gcc9 stringop-truncation compilation error + - vfio/spapr/nvlink2: Skip unpinning pages on error exit + - ASoC: Intel: sof_rt5682: Ignore the speaker amp when there isn't one. + - ACPI: button: Add DMI quirk for Razer Blade Stealth 13 late 2019 lid switch + - iommu/vt-d: Match CPU and IOMMU paging mode + - iommu/vt-d: Avoid sending invalid page response + - drm/amdkfd: Fix permissions of hang_hws + - mlx5: work around high stack usage with gcc + - RDMA/hns: Avoid printing address of mtt page + - drm: remove the newline for CRC source name. + - usb: dwc3: use proper initializers for property entries + - ARM: dts: stm32: Add power-supply for DSI panel on stm32f469-disco + - usbip: Fix unsafe unaligned pointer usage + - udf: Fix free space reporting for metadata and virtual partitions + - drm/mediatek: Add gamma property according to hardware capability + - staging: rtl8188: avoid excessive stack usage + - IB/hfi1: Add software counter for ctxt0 seq drop + - IB/hfi1: Add RcvShortLengthErrCnt to hfi1stats + - soc/tegra: fuse: Correct straps' address for older Tegra124 device trees + - efi/x86: Don't panic or BUG() on non-critical error conditions + - rcu: Use WRITE_ONCE() for assignments to ->pprev for hlist_nulls + - Input: edt-ft5x06 - work around first register access error + - bnxt: Detach page from page pool before sending up the stack + - x86/nmi: Remove irq_work from the long duration NMI handler + - wan: ixp4xx_hss: fix compile-testing on 64-bit + - clocksource: davinci: only enable clockevents once tim34 is initialized + - arm64: dts: rockchip: fix dwmmc clock name for px30 + - arm64: dts: rockchip: add reg property to brcmf sub-nodes + - ARM: dts: rockchip: add reg property to brcmf sub node for + rk3188-bqedison2qc + - ALSA: usb-audio: Add boot quirk for MOTU M Series + - ASoC: atmel: fix build error with CONFIG_SND_ATMEL_SOC_DMA=m + - raid6/test: fix a compilation warning + - tty: synclinkmp: Adjust indentation in several functions + - tty: synclink_gt: Adjust indentation in several functions + - misc: xilinx_sdfec: fix xsdfec_poll()'s return type + - visorbus: fix uninitialized variable access + - driver core: platform: Prevent resouce overflow from causing infinite loops + - driver core: Print device when resources present in really_probe() + - ASoC: SOF: Intel: hda-dai: fix compilation warning in pcm_prepare + - bpf: Return -EBADRQC for invalid map type in __bpf_tx_xdp_map + - vme: bridges: reduce stack usage + - drm/nouveau/secboot/gm20b: initialize pointer in gm20b_secboot_new() + - drm/nouveau/gr/gk20a,gm200-: add terminators to method lists read from fw + - drm/nouveau: Fix copy-paste error in nouveau_fence_wait_uevent_handler + - drm/nouveau/drm/ttm: Remove set but not used variable 'mem' + - drm/nouveau/fault/gv100-: fix memory leak on module unload + - dm thin: don't allow changing data device during thin-pool reload + - gpiolib: Set lockdep class for hierarchical irq domains + - drm/vmwgfx: prevent memory leak in vmw_cmdbuf_res_add + - perf/imx_ddr: Fix cpu hotplug state cleanup + - usb: musb: omap2430: Get rid of musb .set_vbus for omap2430 glue + - kbuild: remove *.tmp file when filechk fails + - iommu/arm-smmu-v3: Use WRITE_ONCE() when changing validity of an STE + - ALSA: usb-audio: unlock on error in probe + - f2fs: set I_LINKABLE early to avoid wrong access by vfs + - f2fs: free sysfs kobject + - scsi: ufs: pass device information to apply_dev_quirks + - scsi: ufs-mediatek: add apply_dev_quirks variant operation + - scsi: iscsi: Don't destroy session if there are outstanding connections + - crypto: essiv - fix AEAD capitalization and preposition use in help text + - ALSA: usb-audio: add implicit fb quirk for MOTU M Series + - RDMA/mlx5: Don't fake udata for kernel path + - arm64: lse: fix LSE atomics with LLVM's integrated assembler + - arm64: fix alternatives with LLVM's integrated assembler + - drm/amd/display: fixup DML dependencies + - EDAC/sifive: Fix return value check in ecc_register() + - KVM: PPC: Remove set but not used variable 'ra', 'rs', 'rt' + - arm64: dts: ti: k3-j721e-main: Add missing power-domains for smmu + - sched/core: Fix size of rq::uclamp initialization + - sched/topology: Assert non-NUMA topology masks don't (partially) overlap + - perf/x86/amd: Constrain Large Increment per Cycle events + - watchdog/softlockup: Enforce that timestamp is valid on boot + - debugobjects: Fix various data races + - ASoC: SOF: Intel: hda: Fix SKL dai count + - regulator: vctrl-regulator: Avoid deadlock getting and setting the voltage + - f2fs: fix memleak of kobject + - x86/mm: Fix NX bit clearing issue in kernel_map_pages_in_pgd + - pwm: omap-dmtimer: Remove PWM chip in .remove before making it unfunctional + - cmd64x: potential buffer overflow in cmd64x_program_timings() + - ide: serverworks: potential overflow in svwks_set_pio_mode() + - pwm: Remove set but not set variable 'pwm' + - btrfs: fix possible NULL-pointer dereference in integrity checks + - btrfs: safely advance counter when looking up bio csums + - btrfs: device stats, log when stats are zeroed + - module: avoid setting info->name early in case we can fall back to + info->mod->name + - remoteproc: Initialize rproc_class before use + - regulator: core: Fix exported symbols to the exported GPL version + - irqchip/mbigen: Set driver .suppress_bind_attrs to avoid remove problems + - ALSA: hda/hdmi - add retry logic to parse_intel_hdmi() + - spi: spi-fsl-qspi: Ensure width is respected in spi-mem operations + - kbuild: use -S instead of -E for precise cc-option test in Kconfig + - objtool: Fix ARCH=x86_64 build error + - x86/decoder: Add TEST opcode to Group3-2 + - s390: adjust -mpacked-stack support check for clang 10 + - s390/ftrace: generate traced function stack frame + - driver core: platform: fix u32 greater or equal to zero comparison + - bpf, btf: Always output invariant hit in pahole DWARF to BTF transform + - ALSA: hda - Add docking station support for Lenovo Thinkpad T420s + - sunrpc: Fix potential leaks in sunrpc_cache_unhash() + - drm/nouveau/mmu: fix comptag memory leak + - powerpc/sriov: Remove VF eeh_dev state when disabling SR-IOV + - media: uvcvideo: Add a quirk to force GEO GC6500 Camera bits-per-pixel value + - btrfs: separate definition of assertion failure handlers + - btrfs: Fix split-brain handling when changing FSID to metadata uuid + - bcache: cached_dev_free needs to put the sb page + - bcache: rework error unwinding in register_bcache + - bcache: fix use-after-free in register_bcache() + - iommu/vt-d: Remove unnecessary WARN_ON_ONCE() + - alarmtimer: Make alarmtimer platform device child of RTC device + - selftests: bpf: Reset global state between reuseport test runs + - jbd2: switch to use jbd2_journal_abort() when failed to submit the commit + record + - jbd2: make sure ESHUTDOWN to be recorded in the journal superblock + - powerpc/pseries/lparcfg: Fix display of Maximum Memory + - selftests/eeh: Bump EEH wait time to 60s + - ARM: 8951/1: Fix Kexec compilation issue. + - ALSA: usb-audio: add quirks for Line6 Helix devices fw>=2.82 + - hostap: Adjust indentation in prism2_hostapd_add_sta + - rtw88: fix potential NULL skb access in TX ISR + - iwlegacy: ensure loop counter addr does not wrap and cause an infinite loop + - cifs: fix unitialized variable poential problem with network I/O cache lock + patch + - cifs: Fix mount options set in automount + - cifs: fix NULL dereference in match_prepath + - bpf: map_seq_next should always increase position index + - powerpc/mm: Don't log user reads to 0xffffffff + - ceph: check availability of mds cluster on mount after wait timeout + - rbd: work around -Wuninitialized warning + - drm/amd/display: do not allocate display_mode_lib unnecessarily + - irqchip/gic-v3: Only provision redistributors that are enabled in ACPI + - drm/nouveau/disp/nv50-: prevent oops when no channel method map provided + - char: hpet: Fix out-of-bounds read bug + - ftrace: fpid_next() should increase position index + - trigger_next should increase position index + - radeon: insert 10ms sleep in dce5_crtc_load_lut + - powerpc: Do not consider weak unresolved symbol relocations as bad + - btrfs: do not do delalloc reservation under page lock + - ocfs2: make local header paths relative to C files + - ocfs2: fix a NULL pointer dereference when call + ocfs2_update_inode_fsync_trans() + - lib/scatterlist.c: adjust indentation in __sg_alloc_table + - reiserfs: prevent NULL pointer dereference in reiserfs_insert_item() + - bcache: fix memory corruption in bch_cache_accounting_clear() + - bcache: explicity type cast in bset_bkey_last() + - bcache: fix incorrect data type usage in btree_flush_write() + - irqchip/gic-v3-its: Reference to its_invall_cmd descriptor when building + INVALL + - nvmet: Pass lockdep expression to RCU lists + - nvme-pci: remove nvmeq->tags + - iwlwifi: mvm: Fix thermal zone registration + - iwlwifi: mvm: Check the sta is not NULL in iwl_mvm_cfg_he_sta() + - asm-generic/tlb: add missing CONFIG symbol + - microblaze: Prevent the overflow of the start + - brd: check and limit max_part par + - drm/amdgpu/smu10: fix smu10_get_clock_by_type_with_latency + - drm/amdgpu/smu10: fix smu10_get_clock_by_type_with_voltage + - NFS: Fix memory leaks + - help_next should increase position index + - i40e: Relax i40e_xsk_wakeup's return value when PF is busy + - cifs: log warning message (once) if out of disk space + - virtio_balloon: prevent pfn array overflow + - fuse: don't overflow LLONG_MAX with end offset + - mlxsw: spectrum_dpipe: Add missing error path + - drm/amdgpu/display: handle multiple numbers of fclks in dcn_calcs.c (v2) + - bcache: properly initialize 'path' and 'err' in register_bcache() + - rtc: Kconfig: select REGMAP_I2C when necessary + - Linux 5.4.22 + * Focal update: 5.4.22 upstream stable release (LP: #1864488) // + CVE-2019-19076. + - Revert "nfp: abm: fix memory leak in nfp_abm_u32_knode_replace" + * Miscellaneous Ubuntu changes + - [Debian] Revert "UBUNTU: [Debian] Update linux source package name in + debian/tests/*" + - SAUCE: selftests: fix undefined lable cleanup build error + - SAUCE: selftests: fix undefined macro RET_IF() build error + - [Packaging] Include modules.builtin.modinfo in linux-modules + - update dkms package versions + - Revert "UBUNTU: [Debian] Update package name in getabis repo list" + * Miscellaneous upstream changes + - libbpf: Extract and generalize CPU mask parsing logic + + -- Seth Forshee Wed, 26 Feb 2020 13:47:15 -0600 + +linux-azure (5.4.0-1003.3) focal; urgency=medium + + * focal/linux-azure: 5.4.0-1003.3 -proposed tracker (LP: #1864081) + + * Integrate Intel SGX driver into linux-azure (LP: #1844245) + - SAUCE: linux-azure: Include Intel SGX driver to the main modules package + + * Miscellaneous Ubuntu changes + - SAUCE: intel_sgx: use mmu_notifier_unregister w/o "no_release" + - [Config] updateconfigs following rebase to 5.4.0-15.18 + + [ Ubuntu: 5.4.0-15.18 ] + + * focal/linux: 5.4.0-15.18 -proposed tracker (LP: #1864085) + * Focal update: v5.4.21 upstream stable release (LP: #1864046) + - Input: synaptics - switch T470s to RMI4 by default + - Input: synaptics - enable SMBus on ThinkPad L470 + - Input: synaptics - remove the LEN0049 dmi id from topbuttonpad list + - ALSA: usb-audio: Fix UAC2/3 effect unit parsing + - ALSA: hda/realtek - Add more codec supported Headset Button + - ALSA: hda/realtek - Fix silent output on MSI-GL73 + - ALSA: usb-audio: Apply sample rate quirk for Audioengine D1 + - ACPI: EC: Fix flushing of pending work + - ACPI: PM: s2idle: Avoid possible race related to the EC GPE + - ACPICA: Introduce acpi_any_gpe_status_set() + - ACPI: PM: s2idle: Prevent spurious SCIs from waking up the system + - ALSA: usb-audio: sound: usb: usb true/false for bool return type + - ALSA: usb-audio: Add clock validity quirk for Denon MC7000/MCX8000 + - ext4: don't assume that mmp_nodename/bdevname have NUL + - ext4: fix support for inode sizes > 1024 bytes + - ext4: fix checksum errors with indexed dirs + - ext4: add cond_resched() to ext4_protect_reserved_inode + - ext4: improve explanation of a mount failure caused by a misconfigured + kernel + - Btrfs: fix race between using extent maps and merging them + - btrfs: ref-verify: fix memory leaks + - btrfs: print message when tree-log replay starts + - btrfs: log message when rw remount is attempted with unclean tree-log + - ARM: npcm: Bring back GPIOLIB support + - gpio: xilinx: Fix bug where the wrong GPIO register is written to + - arm64: ssbs: Fix context-switch when SSBS is present on all CPUs + - xprtrdma: Fix DMA scatter-gather list mapping imbalance + - cifs: make sure we do not overflow the max EA buffer size + - EDAC/sysfs: Remove csrow objects on errors + - EDAC/mc: Fix use-after-free and memleaks during device removal + - KVM: nVMX: Use correct root level for nested EPT shadow page tables + - perf/x86/amd: Add missing L2 misses event spec to AMD Family 17h's event map + - s390/pkey: fix missing length of protected key on return + - s390/uv: Fix handling of length extensions + - drm/vgem: Close use-after-free race in vgem_gem_create + - drm/panfrost: Make sure the shrinker does not reclaim referenced BOs + - bus: moxtet: fix potential stack buffer overflow + - nvme: fix the parameter order for nvme_get_log in nvme_get_fw_slot_info + - drivers: ipmi: fix off-by-one bounds check that leads to a out-of-bounds + write + - IB/mlx5: Return failure when rts2rts_qp_counters_set_id is not supported + - IB/hfi1: Acquire lock to release TID entries when user file is closed + - IB/hfi1: Close window for pq and request coliding + - IB/rdmavt: Reset all QPs when the device is shut down + - IB/umad: Fix kernel crash while unloading ib_umad + - RDMA/core: Fix invalid memory access in spec_filter_size + - RDMA/iw_cxgb4: initiate CLOSE when entering TERM + - RDMA/hfi1: Fix memory leak in _dev_comp_vect_mappings_create + - RDMA/rxe: Fix soft lockup problem due to using tasklets in softirq + - RDMA/core: Fix protection fault in get_pkey_idx_qp_list + - s390/time: Fix clk type in get_tod_clock + - sched/uclamp: Reject negative values in cpu_uclamp_write() + - spmi: pmic-arb: Set lockdep class for hierarchical irq domains + - perf/x86/intel: Fix inaccurate period in context switch for auto-reload + - hwmon: (pmbus/ltc2978) Fix PMBus polling of MFR_COMMON definitions. + - mac80211: fix quiet mode activation in action frames + - cifs: fix mount option display for sec=krb5i + - arm64: dts: fast models: Fix FVP PCI interrupt-map property + - KVM: x86: Mask off reserved bit from #DB exception payload + - perf stat: Don't report a null stalled cycles per insn metric + - NFSv4.1 make cachethis=no for writes + - Revert "drm/sun4i: drv: Allow framebuffer modifiers in mode config" + - jbd2: move the clearing of b_modified flag to the journal_unmap_buffer() + - jbd2: do not clear the BH_Mapped flag when forgetting a metadata buffer + - ext4: choose hardlimit when softlimit is larger than hardlimit in + ext4_statfs_project() + - KVM: x86/mmu: Fix struct guest_walker arrays for 5-level paging + - gpio: add gpiod_toggle_active_low() + - mmc: core: Rework wp-gpio handling + - Linux 5.4.21 + * Fix AMD Stoney Ridge screen flickering under 4K resolution (LP: #1864005) + - iommu/amd: Disable IOMMU on Stoney Ridge systems + * Focal Fossa (20.04) feature request - Enable CONFIG_X86_UV (LP: #1863810) + - [Config] CONFIG_X86_UV=y + * [UBUNTU 20.04] Enable proper reset/recovery of s390x/pci functions in error + state (LP: #1863768) + - s390/pci: Recover handle in clp_set_pci_fn() + - s390/pci: Fix possible deadlock in recover_store() + * [20.04 FEAT] Enhanced handling of secure keys and protected keys + (LP: #1853303) + - s390/zcrypt: enable card/domain autoselect on ep11 cprbs + - s390/zcrypt: ep11 structs rework, export zcrypt_send_ep11_cprb + - s390/zcrypt: add new low level ep11 functions support file + - s390/zcrypt: extend EP11 card and queue sysfs attributes + - s390/pkey/zcrypt: Support EP11 AES secure keys + * [20.04 FEAT] paes self test (LP: #1854948) + - s390/pkey: use memdup_user() to simplify code + - s390/pkey: Add support for key blob with clear key value + - s390/crypto: Rework on paes implementation + - s390/crypto: enable clear key values for paes ciphers + - crypto/testmgr: enable selftests for paes-s390 ciphers + * Sometimes can't adjust brightness on Dell AIO (LP: #1862885) + - SAUCE: platform/x86: dell-uart-backlight: increase retry times + * change the ASoC card name and card longname to meet the requirement of alsa- + lib-1.2.1 (Focal) (LP: #1862712) + - ASoC: improve the DMI long card code in asoc-core + - ASoC: DMI long name - avoid to add board name if matches with product name + - ASoC: intel - fix the card names + * Support Headset Mic on HP cPC (LP: #1862313) + - ALSA: hda/realtek - Add Headset Mic supported for HP cPC + - ALSA: hda/realtek - Fixed one of HP ALC671 platform Headset Mic supported + * [hns3-0205]sync mainline kernel 5.5rc7 hns3 patchset into ubuntu HWE kernel + branch (LP: #1861972) + - net: hns3: replace snprintf with scnprintf in hns3_dbg_cmd_read + - net: hns3: replace snprintf with scnprintf in hns3_update_strings + - net: hns3: limit the error logging in the hns3_clean_tx_ring() + - net: hns3: do not reuse pfmemalloc pages + - net: hns3: set VF's default reset_type to HNAE3_NONE_RESET + - net: hns3: move duplicated macro definition into header + - net: hns3: refine the input parameter 'size' for snprintf() + - net: hns3: rewrite a log in hclge_put_vector() + - net: hns3: delete unnecessary blank line and space for cleanup + - net: hns3: remove redundant print on ENOMEM + * [acc-0205]sync mainline kernel 5.5rc6 acc patchset into ubuntu HWE kernel + branch (LP: #1861976) + - crypto: hisilicon/sec2 - Use atomics instead of __sync + - crypto: hisilicon - still no need to check return value of debugfs_create + functions + - crypto: hisilicon - Update debugfs usage of SEC V2 + - crypto: hisilicon - fix print/comment of SEC V2 + - crypto: hisilicon - Update some names on SEC V2 + - crypto: hisilicon - Update QP resources of SEC V2 + - crypto: hisilicon - Adjust some inner logic + - crypto: hisilicon - Add callback error check + - crypto: hisilicon - Add branch prediction macro + - crypto: hisilicon - redefine skcipher initiation + - crypto: hisilicon - Add aead support on SEC2 + - crypto: hisilicon - Bugfixed tfm leak + - crypto: hisilicon - Fixed some tiny bugs of HPRE + - crypto: hisilicon - adjust hpre_crt_para_get + - crypto: hisilicon - add branch prediction macro + - crypto: hisilicon - fix spelling mistake "disgest" -> "digest" + * [spi-0115]spi: dw: use "smp_mb()" to avoid sending spi data error + (LP: #1859744) + - spi: dw: use "smp_mb()" to avoid sending spi data error + * [tpm-0115]EFI/stub: tpm: enable tpm eventlog function for ARM64 platform + (LP: #1859743) + - efi: libstub/tpm: enable tpm eventlog function for ARM platforms + * Restrict xmon to read-only-mode if kernel is locked down (LP: #1863562) + - powerpc/xmon: Restrict when kernel is locked down + * [CML-H] Add intel_thermal_pch driver support Comet Lake -H (LP: #1853219) + - thermal: intel: intel_pch_thermal: Add Comet Lake (CML) platform support + * Root can lift kernel lockdown via USB/IP (LP: #1861238) + - Revert "UBUNTU: SAUCE: (lockdown) Add a SysRq option to lift kernel + lockdown" + * Dell XPS 13 (7390) Display Flickering - 19.10 (LP: #1849947) + - SAUCE: drm/i915: Disable PSR by default on all platforms + * Focal update: v5.4.20 upstream stable release (LP: #1863589) + - ASoC: pcm: update FE/BE trigger order based on the command + - hv_sock: Remove the accept port restriction + - IB/mlx4: Fix memory leak in add_gid error flow + - IB/srp: Never use immediate data if it is disabled by a user + - IB/mlx4: Fix leak in id_map_find_del + - RDMA/netlink: Do not always generate an ACK for some netlink operations + - RDMA/i40iw: fix a potential NULL pointer dereference + - RDMA/core: Fix locking in ib_uverbs_event_read + - RDMA/uverbs: Verify MR access flags + - RDMA/cma: Fix unbalanced cm_id reference count during address resolve + - RDMA/umem: Fix ib_umem_find_best_pgsz() + - scsi: ufs: Fix ufshcd_probe_hba() reture value in case + ufshcd_scsi_add_wlus() fails + - PCI/IOV: Fix memory leak in pci_iov_add_virtfn() + - ath10k: pci: Only dump ATH10K_MEM_REGION_TYPE_IOREG when safe + - PCI/switchtec: Use dma_set_mask_and_coherent() + - PCI/switchtec: Fix vep_vector_number ioread width + - PCI: tegra: Fix afi_pex2_ctrl reg offset for Tegra30 + - PCI: Don't disable bridge BARs when assigning bus resources + - PCI/AER: Initialize aer_fifo + - iwlwifi: mvm: avoid use after free for pmsr request + - bpftool: Don't crash on missing xlated program instructions + - bpf, sockmap: Don't sleep while holding RCU lock on tear-down + - bpf, sockhash: Synchronize_rcu before free'ing map + - selftests/bpf: Test freeing sockmap/sockhash with a socket in it + - bpf: Improve bucket_log calculation logic + - bpf, sockmap: Check update requirements after locking + - nfs: NFS_SWAP should depend on SWAP + - NFS: Revalidate the file size on a fatal write error + - NFS/pnfs: Fix pnfs_generic_prepare_to_resend_writes() + - NFS: Fix fix of show_nfs_errors + - NFSv4: pnfs_roc() must use cred_fscmp() to compare creds + - NFSv4: try lease recovery on NFS4ERR_EXPIRED + - NFSv4.0: nfs4_do_fsinfo() should not do implicit lease renewals + - x86/boot: Handle malformed SRAT tables during early ACPI parsing + - rtc: hym8563: Return -EINVAL if the time is known to be invalid + - rtc: cmos: Stop using shared IRQ + - watchdog: qcom: Use platform_get_irq_optional() for bark irq + - ARC: [plat-axs10x]: Add missing multicast filter number to GMAC node + - platform/x86: intel_mid_powerbtn: Take a copy of ddata + - arm64: dts: qcom: msm8998: Fix tcsr syscon size + - arm64: dts: uDPU: fix broken ethernet + - ARM: dts: at91: Reenable UART TX pull-ups + - ARM: dts: am43xx: add support for clkout1 clock + - arm64: dts: renesas: r8a77990: ebisu: Remove clkout-lr-synchronous from + sound + - arm64: dts: marvell: clearfog-gt-8k: fix switch cpu port node + - ARM: dts: meson8: use the actual frequency for the GPU's 182.1MHz OPP + - ARM: dts: meson8b: use the actual frequency for the GPU's 364MHz OPP + - ARM: dts: at91: sama5d3: fix maximum peripheral clock rates + - ARM: dts: at91: sama5d3: define clock rate range for tcb1 + - tools/power/acpi: fix compilation error + - soc: qcom: rpmhpd: Set 'active_only' for active only power domains + - Revert "powerpc/pseries/iommu: Don't use dma_iommu_ops on secure guests" + - powerpc/ptdump: Fix W+X verification call in mark_rodata_ro() + - powerpc/ptdump: Only enable PPC_CHECK_WX with STRICT_KERNEL_RWX + - powerpc/papr_scm: Fix leaking 'bus_desc.provider_name' in some paths + - powerpc/pseries/vio: Fix iommu_table use-after-free refcount warning + - powerpc/pseries: Allow not having ibm, hypertas-functions::hcall-multi-tce + for DDW + - iommu/arm-smmu-v3: Populate VMID field for CMDQ_OP_TLBI_NH_VA + - ARM: at91: pm: use SAM9X60 PMC's compatible + - ARM: at91: pm: use of_device_id array to find the proper shdwc node + - KVM: arm/arm64: vgic-its: Fix restoration of unmapped collections + - ARM: 8949/1: mm: mark free_memmap as __init + - sched/uclamp: Fix a bug in propagating uclamp value in new cgroups + - arm64: cpufeature: Fix the type of no FP/SIMD capability + - arm64: cpufeature: Set the FP/SIMD compat HWCAP bits properly + - arm64: ptrace: nofpsimd: Fail FP/SIMD regset operations + - KVM: arm/arm64: Fix young bit from mmu notifier + - KVM: arm: Fix DFSR setting for non-LPAE aarch32 guests + - KVM: arm: Make inject_abt32() inject an external abort instead + - KVM: arm64: pmu: Don't increment SW_INCR if PMCR.E is unset + - KVM: arm64: pmu: Fix chained SW_INCR counters + - KVM: arm64: Treat emulated TVAL TimerValue as a signed 32-bit integer + - arm64: nofpsmid: Handle TIF_FOREIGN_FPSTATE flag cleanly + - mtd: onenand_base: Adjust indentation in onenand_read_ops_nolock + - mtd: sharpslpart: Fix unsigned comparison to zero + - crypto: testmgr - don't try to decrypt uninitialized buffers + - crypto: artpec6 - return correct error code for failed setkey() + - crypto: atmel-sha - fix error handling when setting hmac key + - crypto: caam/qi2 - fix typo in algorithm's driver name + - drivers: watchdog: stm32_iwdg: set WDOG_HW_RUNNING at probe + - media: i2c: adv748x: Fix unsafe macros + - dt-bindings: iio: adc: ad7606: Fix wrong maxItems value + - bcache: avoid unnecessary btree nodes flushing in btree_flush_write() + - selinux: revert "stop passing MAY_NOT_BLOCK to the AVC upon follow_link" + - selinux: fix regression introduced by move_mount(2) syscall + - pinctrl: sh-pfc: r8a77965: Fix DU_DOTCLKIN3 drive/bias control + - pinctrl: sh-pfc: r8a7778: Fix duplicate SDSELF_B and SD1_CLK_B + - regmap: fix writes to non incrementing registers + - mfd: max77650: Select REGMAP_IRQ in Kconfig + - clk: meson: g12a: fix missing uart2 in regmap table + - dmaengine: axi-dmac: add a check for devm_regmap_init_mmio + - mwifiex: Fix possible buffer overflows in mwifiex_ret_wmm_get_status() + - mwifiex: Fix possible buffer overflows in mwifiex_cmd_append_vsie_tlv() + - libertas: don't exit from lbs_ibss_join_existing() with RCU read lock held + - libertas: make lbs_ibss_join_existing() return error code on rates overflow + - selinux: fall back to ref-walk if audit is required + - Linux 5.4.20 + * Focal update: v5.4.19 upstream stable release (LP: #1863588) + - sparc32: fix struct ipc64_perm type definition + - bnxt_en: Move devlink_register before registering netdev + - cls_rsvp: fix rsvp_policy + - gtp: use __GFP_NOWARN to avoid memalloc warning + - l2tp: Allow duplicate session creation with UDP + - net: hsr: fix possible NULL deref in hsr_handle_frame() + - net_sched: fix an OOB access in cls_tcindex + - net: stmmac: Delete txtimer in suspend() + - bnxt_en: Fix TC queue mapping. + - rxrpc: Fix use-after-free in rxrpc_put_local() + - rxrpc: Fix insufficient receive notification generation + - rxrpc: Fix missing active use pinning of rxrpc_local object + - rxrpc: Fix NULL pointer deref due to call->conn being cleared on disconnect + - tcp: clear tp->total_retrans in tcp_disconnect() + - tcp: clear tp->delivered in tcp_disconnect() + - tcp: clear tp->data_segs{in|out} in tcp_disconnect() + - tcp: clear tp->segs_{in|out} in tcp_disconnect() + - ionic: fix rxq comp packet type mask + - MAINTAINERS: correct entries for ISDN/mISDN section + - netdevsim: fix stack-out-of-bounds in nsim_dev_debugfs_init() + - bnxt_en: Fix logic that disables Bus Master during firmware reset. + - media: uvcvideo: Avoid cyclic entity chains due to malformed USB descriptors + - mfd: dln2: More sanity checking for endpoints + - netfilter: ipset: fix suspicious RCU usage in find_set_and_id + - ipc/msg.c: consolidate all xxxctl_down() functions + - tracing/kprobes: Have uname use __get_str() in print_fmt + - tracing: Fix sched switch start/stop refcount racy updates + - rcu: Use *_ONCE() to protect lockless ->expmask accesses + - rcu: Avoid data-race in rcu_gp_fqs_check_wake() + - srcu: Apply *_ONCE() to ->srcu_last_gp_end + - rcu: Use READ_ONCE() for ->expmask in rcu_read_unlock_special() + - nvmet: Fix error print message at nvmet_install_queue function + - nvmet: Fix controller use after free + - Bluetooth: btusb: fix memory leak on fw + - Bluetooth: btusb: Disable runtime suspend on Realtek devices + - brcmfmac: Fix memory leak in brcmf_usbdev_qinit + - usb: dwc3: gadget: Check END_TRANSFER completion + - usb: dwc3: gadget: Delay starting transfer + - usb: typec: tcpci: mask event interrupts when remove driver + - objtool: Silence build output + - usb: gadget: f_fs: set req->num_sgs as 0 for non-sg transfer + - usb: gadget: legacy: set max_speed to super-speed + - usb: gadget: f_ncm: Use atomic_t to track in-flight request + - usb: gadget: f_ecm: Use atomic_t to track in-flight request + - ALSA: usb-audio: Fix endianess in descriptor validation + - ALSA: usb-audio: Annotate endianess in Scarlett gen2 quirk + - ALSA: dummy: Fix PCM format loop in proc output + - memcg: fix a crash in wb_workfn when a device disappears + - mm/sparse.c: reset section's mem_map when fully deactivated + - mmc: sdhci-pci: Make function amd_sdhci_reset static + - utimes: Clamp the timestamps in notify_change() + - mm/memory_hotplug: fix remove_memory() lockdep splat + - mm: thp: don't need care deferred split queue in memcg charge move path + - mm: move_pages: report the number of non-attempted pages + - media/v4l2-core: set pages dirty upon releasing DMA buffers + - media: v4l2-core: compat: ignore native command codes + - media: v4l2-rect.h: fix v4l2_rect_map_inside() top/left adjustments + - lib/test_kasan.c: fix memory leak in kmalloc_oob_krealloc_more() + - irqdomain: Fix a memory leak in irq_domain_push_irq() + - x86/cpu: Update cached HLE state on write to TSX_CTRL_CPUID_CLEAR + - platform/x86: intel_scu_ipc: Fix interrupt support + - ALSA: hda: Apply aligned MMIO access only conditionally + - ALSA: hda: Add Clevo W65_67SB the power_save blacklist + - ALSA: hda: Add JasperLake PCI ID and codec vid + - arm64: acpi: fix DAIF manipulation with pNMI + - KVM: arm64: Correct PSTATE on exception entry + - KVM: arm/arm64: Correct CPSR on exception entry + - KVM: arm/arm64: Correct AArch32 SPSR on exception entry + - KVM: arm64: Only sign-extend MMIO up to register width + - MIPS: syscalls: fix indentation of the 'SYSNR' message + - MIPS: fix indentation of the 'RELOCS' message + - MIPS: boot: fix typo in 'vmlinux.lzma.its' target + - s390/mm: fix dynamic pagetable upgrade for hugetlbfs + - powerpc/mmu_gather: enable RCU_TABLE_FREE even for !SMP case + - powerpc/ptdump: Fix W+X verification + - powerpc/xmon: don't access ASDR in VMs + - powerpc/pseries: Advance pfn if section is not present in lmb_is_removable() + - powerpc/32s: Fix bad_kuap_fault() + - powerpc/32s: Fix CPU wake-up from sleep mode + - tracing: Fix now invalid var_ref_vals assumption in trace action + - PCI: tegra: Fix return value check of pm_runtime_get_sync() + - PCI: keystone: Fix outbound region mapping + - PCI: keystone: Fix link training retries initiation + - PCI: keystone: Fix error handling when "num-viewport" DT property is not + populated + - mmc: spi: Toggle SPI polarity, do not hardcode it + - ACPI: video: Do not export a non working backlight interface on MSI MS-7721 + boards + - ACPI / battery: Deal with design or full capacity being reported as -1 + - ACPI / battery: Use design-cap for capacity calculations if full-cap is not + available + - ACPI / battery: Deal better with neither design nor full capacity not being + reported + - alarmtimer: Unregister wakeup source when module get fails + - fscrypt: don't print name of busy file when removing key + - ubifs: don't trigger assertion on invalid no-key filename + - ubifs: Fix wrong memory allocation + - ubifs: Fix FS_IOC_SETFLAGS unexpectedly clearing encrypt flag + - ubifs: Fix deadlock in concurrent bulk-read and writepage + - mmc: sdhci-of-at91: fix memleak on clk_get failure + - ASoC: SOF: core: free trace on errors + - hv_balloon: Balloon up according to request page number + - mfd: axp20x: Mark AXP20X_VBUS_IPSOUT_MGMT as volatile + - nvmem: core: fix memory abort in cleanup path + - crypto: api - Check spawn->alg under lock in crypto_drop_spawn + - crypto: ccree - fix backlog memory leak + - crypto: ccree - fix AEAD decrypt auth fail + - crypto: ccree - fix pm wrongful error reporting + - crypto: ccree - fix FDE descriptor sequence + - crypto: ccree - fix PM race condition + - padata: Remove broken queue flushing + - fs: allow deduplication of eof block into the end of the destination file + - scripts/find-unused-docs: Fix massive false positives + - erofs: fix out-of-bound read for shifted uncompressed block + - scsi: megaraid_sas: Do not initiate OCR if controller is not in ready state + - scsi: qla2xxx: Fix mtcp dump collection failure + - cpupower: Revert library ABI changes from commit ae2917093fb60bdc1ed3e + - power: supply: axp20x_ac_power: Fix reporting online status + - power: supply: ltc2941-battery-gauge: fix use-after-free + - ovl: fix wrong WARN_ON() in ovl_cache_update_ino() + - ovl: fix lseek overflow on 32bit + - f2fs: choose hardlimit when softlimit is larger than hardlimit in + f2fs_statfs_project() + - f2fs: fix miscounted block limit in f2fs_statfs_project() + - f2fs: code cleanup for f2fs_statfs_project() + - f2fs: fix dcache lookup of !casefolded directories + - f2fs: fix race conditions in ->d_compare() and ->d_hash() + - PM: core: Fix handling of devices deleted during system-wide resume + - cpufreq: Avoid creating excessively large stack frames + - of: Add OF_DMA_DEFAULT_COHERENT & select it on powerpc + - ARM: dma-api: fix max_pfn off-by-one error in __dma_supported() + - dm zoned: support zone sizes smaller than 128MiB + - dm space map common: fix to ensure new block isn't already in use + - dm writecache: fix incorrect flush sequence when doing SSD mode commit + - dm crypt: fix GFP flags passed to skcipher_request_alloc() + - dm crypt: fix benbi IV constructor crash if used in authenticated mode + - dm thin metadata: use pool locking at end of dm_pool_metadata_close + - scsi: qla2xxx: Fix stuck login session using prli_pend_timer + - ASoC: SOF: Introduce state machine for FW boot + - ASoC: SOF: core: release resources on errors in probe_continue + - tracing: Annotate ftrace_graph_hash pointer with __rcu + - tracing: Annotate ftrace_graph_notrace_hash pointer with __rcu + - ftrace: Add comment to why rcu_dereference_sched() is open coded + - ftrace: Protect ftrace_graph_hash with ftrace_sync + - crypto: pcrypt - Avoid deadlock by using per-instance padata queues + - btrfs: fix improper setting of scanned for range cyclic write cache pages + - btrfs: Handle another split brain scenario with metadata uuid feature + - riscv, bpf: Fix broken BPF tail calls + - selftests/bpf: Fix perf_buffer test on systems w/ offline CPUs + - bpf, devmap: Pass lockdep expression to RCU lists + - libbpf: Fix realloc usage in bpf_core_find_cands + - tc-testing: fix eBPF tests failure on linux fresh clones + - samples/bpf: Don't try to remove user's homedir on clean + - samples/bpf: Xdp_redirect_cpu fix missing tracepoint attach + - selftests/bpf: Fix test_attach_probe + - selftests/bpf: Skip perf hw events test if the setup disabled it + - selftests: bpf: Use a temporary file in test_sockmap + - selftests: bpf: Ignore FIN packets for reuseport tests + - crypto: api - fix unexpectedly getting generic implementation + - crypto: hisilicon - Use the offset fields in sqe to avoid need to split + scatterlists + - crypto: ccp - set max RSA modulus size for v3 platform devices as well + - crypto: arm64/ghash-neon - bump priority to 150 + - crypto: pcrypt - Do not clear MAY_SLEEP flag in original request + - crypto: atmel-aes - Fix counter overflow in CTR mode + - crypto: api - Fix race condition in crypto_spawn_alg + - crypto: picoxcell - adjust the position of tasklet_init and fix missed + tasklet_kill + - powerpc/futex: Fix incorrect user access blocking + - scsi: qla2xxx: Fix unbound NVME response length + - NFS: Fix memory leaks and corruption in readdir + - NFS: Directory page cache pages need to be locked when read + - nfsd: fix filecache lookup + - jbd2_seq_info_next should increase position index + - ext4: fix deadlock allocating crypto bounce page from mempool + - ext4: fix race conditions in ->d_compare() and ->d_hash() + - Btrfs: fix missing hole after hole punching and fsync when using NO_HOLES + - Btrfs: make deduplication with range including the last block work + - Btrfs: fix infinite loop during fsync after rename operations + - btrfs: set trans->drity in btrfs_commit_transaction + - btrfs: drop log root for dropped roots + - Btrfs: fix race between adding and putting tree mod seq elements and nodes + - btrfs: flush write bio if we loop in extent_write_cache_pages + - btrfs: Correctly handle empty trees in find_first_clear_extent_bit + - ARM: tegra: Enable PLLP bypass during Tegra124 LP1 + - iwlwifi: don't throw error when trying to remove IGTK + - mwifiex: fix unbalanced locking in mwifiex_process_country_ie() + - sunrpc: expiry_time should be seconds not timeval + - gfs2: fix gfs2_find_jhead that returns uninitialized jhead with seq 0 + - gfs2: move setting current->backing_dev_info + - gfs2: fix O_SYNC write handling + - drm: atmel-hlcdc: use double rate for pixel clock only if supported + - drm: atmel-hlcdc: enable clock before configuring timing engine + - drm: atmel-hlcdc: prefer a lower pixel-clock than requested + - drm/rect: Avoid division by zero + - media: iguanair: fix endpoint sanity check + - media: rc: ensure lirc is initialized before registering input device + - tools/kvm_stat: Fix kvm_exit filter name + - xen/balloon: Support xend-based toolstack take two + - watchdog: fix UAF in reboot notifier handling in watchdog core code + - bcache: add readahead cache policy options via sysfs interface + - eventfd: track eventfd_signal() recursion depth + - aio: prevent potential eventfd recursion on poll + - KVM: x86: Refactor picdev_write() to prevent Spectre-v1/L1TF attacks + - KVM: x86: Refactor prefix decoding to prevent Spectre-v1/L1TF attacks + - KVM: x86: Protect pmu_intel.c from Spectre-v1/L1TF attacks + - KVM: x86: Protect DR-based index computations from Spectre-v1/L1TF attacks + - KVM: x86: Protect kvm_lapic_reg_write() from Spectre-v1/L1TF attacks + - KVM: x86: Protect kvm_hv_msr_[get|set]_crash_data() from Spectre-v1/L1TF + attacks + - KVM: x86: Protect ioapic_write_indirect() from Spectre-v1/L1TF attacks + - KVM: x86: Protect MSR-based index computations in pmu.h from Spectre-v1/L1TF + attacks + - KVM: x86: Protect ioapic_read_indirect() from Spectre-v1/L1TF attacks + - KVM: x86: Protect MSR-based index computations from Spectre-v1/L1TF attacks + in x86.c + - KVM: x86: Protect x86_decode_insn from Spectre-v1/L1TF attacks + - KVM: x86: Protect MSR-based index computations in fixed_msr_to_seg_unit() + from Spectre-v1/L1TF attacks + - KVM: x86: Fix potential put_fpu() w/o load_fpu() on MPX platform + - KVM: PPC: Book3S HV: Uninit vCPU if vcore creation fails + - KVM: PPC: Book3S PR: Free shared page if mmu initialization fails + - kvm/svm: PKU not currently supported + - KVM: VMX: Add non-canonical check on writes to RTIT address MSRs + - KVM: x86: Don't let userspace set host-reserved cr4 bits + - KVM: x86: Free wbinvd_dirty_mask if vCPU creation fails + - KVM: x86: Handle TIF_NEED_FPU_LOAD in kvm_{load,put}_guest_fpu() + - KVM: x86: Ensure guest's FPU state is loaded when accessing for emulation + - KVM: x86: Revert "KVM: X86: Fix fpu state crash in kvm guest" + - KVM: s390: do not clobber registers during guest reset/store status + - ocfs2: fix oops when writing cloned file + - mm/page_alloc.c: fix uninitialized memmaps on a partially populated last + section + - arm64: dts: qcom: qcs404-evb: Set vdd_apc regulator in high power mode + - mm/mmu_gather: invalidate TLB correctly on batch allocation failure and + flush + - clk: tegra: Mark fuse clock as critical + - drm/amd/dm/mst: Ignore payload update failures + - virtio-balloon: initialize all vq callbacks + - virtio-pci: check name when counting MSI-X vectors + - fix up iter on short count in fuse_direct_io() + - broken ping to ipv6 linklocal addresses on debian buster + - percpu: Separate decrypted varaibles anytime encryption can be enabled + - ASoC: meson: axg-fifo: fix fifo threshold setup + - scsi: qla2xxx: Fix the endianness of the qla82xx_get_fw_size() return type + - scsi: csiostor: Adjust indentation in csio_device_reset + - scsi: qla4xxx: Adjust indentation in qla4xxx_mem_free + - scsi: ufs: Recheck bkops level if bkops is disabled + - mtd: spi-nor: Split mt25qu512a (n25q512a) entry into two + - phy: qualcomm: Adjust indentation in read_poll_timeout + - ext2: Adjust indentation in ext2_fill_super + - powerpc/44x: Adjust indentation in ibm4xx_denali_fixup_memsize + - drm: msm: mdp4: Adjust indentation in mdp4_dsi_encoder_enable + - NFC: pn544: Adjust indentation in pn544_hci_check_presence + - ppp: Adjust indentation into ppp_async_input + - net: smc911x: Adjust indentation in smc911x_phy_configure + - net: tulip: Adjust indentation in {dmfe, uli526x}_init_module + - IB/mlx5: Fix outstanding_pi index for GSI qps + - IB/core: Fix ODP get user pages flow + - nfsd: fix delay timer on 32-bit architectures + - nfsd: fix jiffies/time_t mixup in LRU list + - nfsd: Return the correct number of bytes written to the file + - virtio-balloon: Fix memory leak when unloading while hinting is in progress + - virtio_balloon: Fix memory leaks on errors in virtballoon_probe() + - ubi: fastmap: Fix inverted logic in seen selfcheck + - ubi: Fix an error pointer dereference in error handling code + - ubifs: Fix memory leak from c->sup_node + - regulator: core: Add regulator_is_equal() helper + - ASoC: sgtl5000: Fix VDDA and VDDIO comparison + - bonding/alb: properly access headers in bond_alb_xmit() + - devlink: report 0 after hitting end in region read + - dpaa_eth: support all modes with rate adapting PHYs + - net: dsa: b53: Always use dev->vlan_enabled in b53_configure_vlan() + - net: dsa: bcm_sf2: Only 7278 supports 2Gb/sec IMP port + - net: dsa: microchip: enable module autoprobe + - net: mvneta: move rx_dropped and rx_errors in per-cpu stats + - net_sched: fix a resource leak in tcindex_set_parms() + - net: stmmac: fix a possible endless loop + - net: systemport: Avoid RBUF stuck in Wake-on-LAN mode + - net/mlx5: IPsec, Fix esp modify function attribute + - net/mlx5: IPsec, fix memory leak at mlx5_fpga_ipsec_delete_sa_ctx + - net: macb: Remove unnecessary alignment check for TSO + - net: macb: Limit maximum GEM TX length in TSO + - taprio: Fix enabling offload with wrong number of traffic classes + - taprio: Fix still allowing changing the flags during runtime + - taprio: Add missing policy validation for flags + - taprio: Use taprio_reset_tc() to reset Traffic Classes configuration + - taprio: Fix dropping packets when using taprio + ETF offloading + - ipv6/addrconf: fix potential NULL deref in inet6_set_link_af() + - qed: Fix timestamping issue for L2 unicast ptp packets. + - drop_monitor: Do not cancel uninitialized work item + - net/mlx5: Fix deadlock in fs_core + - net/mlx5: Deprecate usage of generic TLS HW capability bit + - ASoC: Intel: skl_hda_dsp_common: Fix global-out-of-bounds bug + - mfd: da9062: Fix watchdog compatible string + - mfd: rn5t618: Mark ADC control register volatile + - mfd: bd70528: Fix hour register mask + - x86/timer: Don't skip PIT setup when APIC is disabled or in legacy mode + - btrfs: use bool argument in free_root_pointers() + - btrfs: free block groups after free'ing fs trees + - drm/dp_mst: Remove VCPI while disabling topology mgr + - KVM: x86/mmu: Apply max PA check for MMIO sptes to 32-bit KVM + - KVM: x86: use CPUID to locate host page table reserved bits + - KVM: x86: Use gpa_t for cr2/gpa to fix TDP support on 32-bit KVM + - KVM: x86: fix overlap between SPTE_MMIO_MASK and generation + - KVM: nVMX: vmread should not set rflags to specify success in case of #PF + - KVM: Use vcpu-specific gva->hva translation when querying host page size + - KVM: Play nice with read-only memslots when querying host page size + - cifs: fail i/o on soft mounts if sessionsetup errors out + - x86/apic/msi: Plug non-maskable MSI affinity race + - clocksource: Prevent double add_timer_on() for watchdog_timer + - perf/core: Fix mlock accounting in perf_mmap() + - rxrpc: Fix service call disconnection + - regulator fix for "regulator: core: Add regulator_is_equal() helper" + - powerpc/kuap: Fix set direction in allow/prevent_user_access() + - Linux 5.4.19 + - [Config] updateconfigs following v5.4.19 stable update + * 5.4.0-11 crash on cryptsetup open (LP: #1860231) // Focal update: v5.4.19 + upstream stable release (LP: #1863588) + - dm: fix potential for q->make_request_fn NULL pointer + * Miscellaneous Ubuntu changes + - update dkms package versions + - [debian] ignore missing wireguard module + - debian: remove snapdragon config, rules and flavour + - [Config] updateconfigs following snapdragon removal + - remove snapdragon abi files + + -- Seth Forshee Fri, 21 Feb 2020 08:52:59 -0600 + +linux-azure (5.4.0-1002.2) focal; urgency=medium + + * Change package name to linux-azure. + + -- Seth Forshee Fri, 21 Feb 2020 08:31:29 -0600 + +linux-azure-5.4 (5.4.0-1002.2) focal; urgency=medium + + * focal/linux-azure-5.4: 5.4.0-1002.2 -proposed tracker (LP: #1862250) + + * installing linux-modules-nvidia does not remove nvidia-dkms, and the kernel + prioritizes the wrong version of the module from disk (LP: #1856414) + - Revert "UBUNTU: [Packaging] dkms -- add Provides: specifiers" + + * Miscellaneous Ubuntu changes + - [Debian] Add upstream version to packagenames in getabis + + [ Ubuntu: 5.4.0-14.17 ] + + * focal/linux-5.4: 5.4.0-14.17 -proposed tracker (LP: #1862255) + * Packaging resync (LP: #1786013) + - [Packaging] update helper scripts + * Boot log is swamped with "debugfs: Directory 'imc' with parent 'powerpc' + already present" messages on kernel 5.4 (LP: #1861379) + - powerpc/powernv: Avoid re-registration of imc debugfs directory + * CVE-2019-3016 + - SAUCE: x86/kvm: Be careful not to clear KVM_VCPU_FLUSH_TLB bit + - SAUCE: x86/kvm: Introduce kvm_(un)map_gfn() + - SAUCE: x86/kvm: Cache gfn to pfn translation + - SAUCE: x86/KVM: Make sure KVM_VCPU_FLUSH_TLB flag is not missed + - SAUCE: x86/KVM: Clean up host's steal time structure + * installing linux-modules-nvidia does not remove nvidia-dkms, and the kernel + prioritizes the wrong version of the module from disk (LP: #1856414) + - Revert "UBUNTU: [Packaging] dkms -- switch basic provides to *-modules" + - Revert "UBUNTU: [Packaging] dkms -- add Provides: specifiers for existing + zfs/nvidia/vbox" + - Revert "UBUNTU: [packaging] dkms-build -- include versioned provides" + - [Packaging] wireguard -- drop provides + * Focal update: v5.4.18 upstream stable release (LP: #1862203) + - vfs: fix do_last() regression + - cifs: fix soft mounts hanging in the reconnect code + - x86/resctrl: Fix a deadlock due to inaccurate reference + - x86/resctrl: Fix use-after-free when deleting resource groups + - x86/resctrl: Fix use-after-free due to inaccurate refcount of rdtgroup + - e1000e: Drop unnecessary __E1000_DOWN bit twiddling + - e1000e: Revert "e1000e: Make watchdog use delayed work" + - gfs2: Another gfs2_find_jhead fix + - perf c2c: Fix return type for histogram sorting comparision functions + - PM / devfreq: Add new name attribute for sysfs + - tools lib: Fix builds when glibc contains strlcpy() + - arm64: kbuild: remove compressed images on 'make ARCH=arm64 (dist)clean' + - mm/mempolicy.c: fix out of bounds write in mpol_parse_str() + - reiserfs: Fix memory leak of journal device string + - media: digitv: don't continue if remote control state can't be read + - media: af9005: uninitialized variable printked + - media: vp7045: do not read uninitialized values if usb transfer fails + - media: gspca: zero usb_buf + - media: dvb-usb/dvb-usb-urb.c: initialize actlen to 0 + - tomoyo: Use atomic_t for statistics counter + - ttyprintk: fix a potential deadlock in interrupt context issue + - Bluetooth: Fix race condition in hci_release_sock() + - cgroup: Prevent double killing of css when enabling threaded cgroup + - clk: sunxi-ng: v3s: Fix incorrect number of hw_clks. + - arm64: dts: meson-sm1-sei610: add gpio bluetooth interrupt + - ARM: dts: sun8i: a83t: Correct USB3503 GPIOs polarity + - ARM: dts: am57xx-beagle-x15/am57xx-idk: Remove "gpios" for endpoint dt nodes + - ARM: dts: beagle-x15-common: Model 5V0 regulator + - soc: ti: wkup_m3_ipc: Fix race condition with rproc_boot + - tools lib traceevent: Fix memory leakage in filter_event + - rseq: Unregister rseq for clone CLONE_VM + - clk: sunxi-ng: sun8i-r: Fix divider on APB0 clock + - clk: sunxi-ng: h6-r: Fix AR100/R_APB2 parent order + - mac80211: mesh: restrict airtime metric to peered established plinks + - clk: mmp2: Fix the order of timer mux parents + - ASoC: rt5640: Fix NULL dereference on module unload + - s390/zcrypt: move ap device reset from bus to driver code + - i40e: Fix virtchnl_queue_select bitmap validation + - ixgbevf: Remove limit of 10 entries for unicast filter list + - ixgbe: Fix calculation of queue with VFs and flow director on interface flap + - igb: Fix SGMII SFP module discovery for 100FX/LX. + - iavf: remove current MAC address filter on VF reset + - platform/x86: GPD pocket fan: Allow somewhat lower/higher temperature limits + - platform/x86: intel_pmc_core: update Comet Lake platform driver + - ASoC: hdac_hda: Fix error in driver removal after failed probe + - ASoC: sti: fix possible sleep-in-atomic + - qmi_wwan: Add support for Quectel RM500Q + - parisc: Use proper printk format for resource_size_t + - lkdtm/bugs: fix build error in lkdtm_UNSET_SMEP + - wireless: fix enabling channel 12 for custom regulatory domain + - cfg80211: Fix radar event during another phy CAC + - mac80211: Fix TKIP replay protection immediately after key setup + - wireless: wext: avoid gcc -O3 warning + - perf/x86/intel/uncore: Add PCI ID of IMC for Xeon E3 V5 Family + - perf/x86/intel/uncore: Remove PCIe3 unit for SNR + - riscv: delete temporary files + - XArray: Fix xas_pause at ULONG_MAX + - iwlwifi: pcie: allocate smaller dev_cmd for TX headers + - iwlwifi: Don't ignore the cap field upon mcc update + - iwlwifi: dbg: force stop the debug monitor HW + - Input: evdev - convert kzalloc()/vzalloc() to kvzalloc() + - ARM: dts: am335x-boneblack-common: fix memory size + - xfrm: interface: do not confirm neighbor when do pmtu update + - Input: max77650-onkey - add of_match table + - scsi: fnic: do not queue commands during fwreset + - ARM: 8955/1: virt: Relax arch timer version check during early boot + - led: max77650: add of_match table + - tee: optee: Fix compilation issue with nommu + - r8152: get default setting of WOL before initializing + - r8152: disable U2P3 for RTL8153B + - r8152: Disable PLA MCU clock speed down + - r8152: disable test IO for RTL8153B + - r8152: avoid the MCU to clear the lanwake + - r8152: disable DelayPhyPwrChg + - ARM: dts: am43x-epos-evm: set data pin directions for spi0 and spi1 + - qlcnic: Fix CPU soft lockup while collecting firmware dump + - powerpc/fsl/dts: add fsl,erratum-a011043 + - net/fsl: treat fsl,erratum-a011043 + - net: fsl/fman: rename IF_MODE_XGMII to IF_MODE_10G + - seq_tab_next() should increase position index + - l2t_seq_next should increase position index + - netfilter: conntrack: sctp: use distinct states for new SCTP connections + - netfilter: nf_tables_offload: fix check the chain offload flag + - net: Fix skb->csum update in inet_proto_csum_replace16(). + - btrfs: do not zero f_bavail if we have available space + - cpuidle: teo: Avoid using "early hits" incorrectly + - flow_dissector: Fix to use new variables for port ranges in bpf hook + - dm thin: fix use-after-free in metadata_pre_commit_callback + - perf report: Fix no libunwind compiled warning break s390 issue + - mm/migrate.c: also overwrite error when it is bigger than zero + - ASoC: topology: fix soc_tplg_fe_link_create() - link->dobj initialization + order + - Revert "rsi: fix potential null dereference in rsi_probe()" + - tracing/uprobe: Fix to make trace_uprobe_filter alignment safe + - Linux 5.4.18 + * Integrate Intel SGX driver into linux-azure (LP: #1844245) + - [Packaging] Add systemd service to load intel_sgx + * Focal update: v5.4.17 upstream stable release (LP: #1861784) + - Bluetooth: btusb: fix non-atomic allocation in completion handler + - orinoco_usb: fix interface sanity check + - rsi_91x_usb: fix interface sanity check + - usb: dwc3: pci: add ID for the Intel Comet Lake -V variant + - usb: host: xhci-tegra: set MODULE_FIRMWARE for tegra186 + - USB: serial: ir-usb: add missing endpoint sanity check + - USB: serial: ir-usb: fix link-speed handling + - USB: serial: ir-usb: fix IrLAP framing + - usb: dwc3: turn off VBUS when leaving host mode + - usb: typec: wcove: fix "op-sink-microwatt" default that was in mW + - usb: typec: fusb302: fix "op-sink-microwatt" default that was in mW + - staging: most: net: fix buffer overflow + - staging: wlan-ng: ensure error return is actually returned + - staging: vt6656: correct packet types for CTS protect, mode. + - staging: vt6656: use NULLFUCTION stack on mac80211 + - staging: vt6656: Fix false Tx excessive retries reporting. + - serial: 8250_bcm2835aux: Fix line mismatch on driver unbind + - serial: imx: fix a race condition in receive path + - debugfs: Return -EPERM when locked down + - component: do not dereference opaque pointer in debugfs + - binder: fix log spam for existing debugfs file creation. + - mei: hdcp: bind only with i915 on the same PCH + - mei: me: add comet point (lake) H device ids + - iio: adc: stm32-dfsdm: fix single conversion + - iio: st_gyro: Correct data for LSM9DS0 gyro + - driver core: Fix test_async_driver_probe if NUMA is disabled + - crypto: chelsio - fix writing tfm flags to wrong place + - CIFS: Fix task struct use-after-free on reconnect + - cifs: set correct max-buffer-size for smb2_ioctl_init() + - cifs: Fix memory allocation in __smb2_handle_cancelled_cmd() + - ath9k: fix storage endpoint lookup + - brcmfmac: fix interface sanity check + - rtl8xxxu: fix interface sanity check + - zd1211rw: fix storage endpoint lookup + - net_sched: ematch: reject invalid TCF_EM_SIMPLE + - net_sched: fix ops->bind_class() implementations + - net_sched: walk through all child classes in tc_bind_tclass() + - net: socionext: fix possible user-after-free in netsec_process_rx + - net: socionext: fix xdp_result initialization in netsec_process_rx + - udp: segment looped gso packets correctly + - mlxsw: minimal: Fix an error handling path in 'mlxsw_m_port_create()' + - net: include struct nhmsg size in nh nlmsg size + - rxrpc: Fix use-after-free in rxrpc_receive_data() + - arc: eznps: fix allmodconfig kconfig warning + - HID: Add quirk for Xin-Mo Dual Controller + - HID: ite: Add USB id match for Acer SW5-012 keyboard dock + - HID: asus: Ignore Asus vendor-page usage-code 0xff events + - HID: Add quirk for incorrect input length on Lenovo Y720 + - HID: intel-ish-hid: ipc: add CMP device id + - HID: wacom: Recognize new MobileStudio Pro PID + - ASoC: SOF: fix fault at driver unload after failed probe + - ASoC: SOF: Intel: hda: hda-dai: fix oops on hda_link .hw_free + - drivers/hid/hid-multitouch.c: fix a possible null pointer access. + - phy: qcom-qmp: Increase PHY ready timeout + - ASoC: fsl_audmix: add missed pm_runtime_disable + - ASoC: topology: Prevent use-after-free in snd_soc_get_pcm_runtime() + - phy: cpcap-usb: Prevent USB line glitches from waking up modem + - HID: intel-ish-hid: ipc: Add Tiger Lake PCI device ID + - watchdog: max77620_wdt: fix potential build errors + - watchdog: rn5t618_wdt: fix module aliases + - watchdog: orion: fix platform_get_irq() complaints + - usb: musb: jz4740: Silence error if code is -EPROBE_DEFER + - can: tcan4x5x: tcan4x5x_parse_config(): reset device before register access + - spi: spi-dw: Add lock protect dw_spi rx/tx to prevent concurrent calls + - net: Google gve: Remove dma_wmb() before ringing doorbell + - drivers/net/b44: Change to non-atomic bit operations on pwol_mask + - net: wan: sdla: Fix cast from pointer to integer of different size + - gpio: max77620: Add missing dependency on GPIOLIB_IRQCHIP + - iommu/dma: fix variable 'cookie' set but not used + - drm/amd/display: Reduce HDMI pixel encoding if max clock is exceeded + - stmmac: debugfs entry name is not be changed when udev rename device name. + - atm: eni: fix uninitialized variable warning + - HID: steam: Fix input device disappearing + - extcon-intel-cht-wc: Don't reset USB data connection at probe + - ASoC: Intel: cht_bsw_rt5645: Add quirk for boards using pmc_plt_clk_0 + - drm/amdgpu/SRIOV: add navi12 pci id for SRIOV (v2) + - libbpf: Fix BTF-defined map's __type macro handling of arrays + - staging: mt7621-pci: add quirks for 'E2' revision using + 'soc_device_attribute' + - platform/x86: dell-laptop: disable kbd backlight on Inspiron 10xx + - PCI: Add DMA alias quirk for Intel VCA NTB + - media: dvbsky: add support for eyeTV Geniatech T2 lite + - bus: ti-sysc: Handle mstandby quirk and use it for musb + - bus: ti-sysc: Use swsup quirks also for am335x musb + - spi: pxa2xx: Add support for Intel Comet Lake-H + - iommu/amd: Support multiple PCI DMA aliases in device table + - iommu/amd: Support multiple PCI DMA aliases in IRQ Remapping + - perf/imx_ddr: Add enhanced AXI ID filter support + - ARM: config: aspeed-g5: Enable 8250_DW quirks + - ARM: OMAP2+: SmartReflex: add omap_sr_pdata definition + - mmc: sdhci-pci: Quirk for AMD SDHC Device 0x7906 + - mmc: sdhci-pci: Add support for Intel JSL + - bus: ti-sysc: Add module enable quirk for audio AESS + - usb-storage: Disable UAS on JMicron SATA enclosure + - ALSA: hda/realtek - Move some alc236 pintbls to fallback table + - Bluetooth: Allow combination of BDADDR_PROPERTY and INVALID_BDADDR quirks + - Bluetooth: btbcm: Use the BDADDR_PROPERTY quirk + - bus: ti-sysc: Fix missing force mstandby quirk handling + - rsi: fix use-after-free on failed probe and unbind + - rsi: fix use-after-free on probe errors + - rsi: fix memory leak on failed URB submission + - rsi: fix non-atomic allocation in completion handler + - crypto: af_alg - Use bh_lock_sock in sk_destruct + - crypto: vmx - reject xts inputs that are too short + - crypto: caam - do not reset pointer size from MCFGR register + - crypto: pcrypt - Fix user-after-free on module unload + - KVM: arm64: Write arch.mdcr_el2 changes since last vcpu_load on VHE + - Revert "um: Enable CONFIG_CONSTRUCTORS" + - power/supply: ingenic-battery: Don't change scale if there's only one + - Linux 5.4.17 + * Miscellaneous Ubuntu changes + - [Packaging] dkms -- switch basic provides to *-modules + - update dkms package versions + + -- Seth Forshee Wed, 12 Feb 2020 15:50:12 -0600 + +linux-azure-5.4 (5.4.0-1001.1) focal; urgency=medium + + * Packaging resync (LP: #1786013) + - [Packaging] update variants + - [Packaging] update update.conf + - [Packaging] update helper scripts + + * Miscellaneous Ubuntu changes + - [Packaging] Change package name to linux-azure-5.4 + - [Packaging] Remove i386 arch from control stubs + - [Packaging] Remove python-dev build-depends + - [Packaging] dkms -- add Provides: specifiers + - [Packaging] Replace wget with curl in build-depends + - [Config] Enable wireguard dkms build + - [Config] Update configs and annotations for 5.4 + - Revert "UBUNTU: SAUCE: linux-azure: Include Intel SGX driver to the main + modules package" + + -- Seth Forshee Thu, 30 Jan 2020 16:54:31 -0600 + +linux-azure-5.4 (5.4.0-1000.0) focal; urgency=medium + + * Empty entry. + + -- Seth Forshee Thu, 30 Jan 2020 13:59:12 -0600 + +linux-azure (5.3.0-1010.11) eoan; urgency=medium + + * eoan/linux-azure: 5.3.0-1010.11 -proposed tracker (LP: #1859820) + + * Integrate Intel SGX driver into linux-azure (LP: #1844245) + - SAUCE: linux-azure: Include Intel SGX driver to the main modules package + - [Packaging] linux-azure: Prevent intel_sgx from being automatically loaded + + [ Ubuntu: 5.3.0-28.30 ] + + * eoan/linux: 5.3.0-28.30 -proposed tracker (LP: #1859694) + * CVE-2019-14615 + - drm/i915/gen9: Clear residual context state on context switch + * PAN is broken for execute-only user mappings on ARMv8 (LP: #1858815) + - arm64: Revert support for execute-only user mappings + * Miscellaneous Ubuntu changes + - update dkms package versions + + [ Ubuntu: 5.3.0-27.29 ] + + * eoan/linux: 5.3.0-27.29 -proposed tracker (LP: #1858943) + * [Regression] usb usb2-port2: Cannot enable. Maybe the USB cable is bad? + (LP: #1856608) + - SAUCE: Revert "usb: handle warm-reset port requests on hub resume" + + [ Ubuntu: 5.3.0-26.28 ] + + * eoan/linux: 5.3.0-26.28 -proposed tracker (LP: #1856807) + * nvidia-435 is in eoan, linux-restricted-modules only builds against 430, + ubiquity gives me the self-signed modules experience instead of using the + Canonical-signed modules (LP: #1856407) + - Add nvidia-435 dkms build + + -- Connor Kuehl Wed, 15 Jan 2020 10:34:34 -0800 + +linux-azure (5.3.0-1009.10) eoan; urgency=medium + + * eoan/linux-azure: 5.3.0-1009.10 -proposed tracker (LP: #1854749) + + [ Ubuntu: 5.3.0-25.27 ] + + * eoan/linux: 5.3.0-25.27 -proposed tracker (LP: #1854762) + * CVE-2019-14901 + - SAUCE: mwifiex: Fix heap overflow in mmwifiex_process_tdls_action_frame() + * CVE-2019-14896 // CVE-2019-14897 + - SAUCE: libertas: Fix two buffer overflows at parsing bss descriptor + * CVE-2019-14895 + - SAUCE: mwifiex: fix possible heap overflow in mwifiex_process_country_ie() + * [CML] New device id's for CMP-H (LP: #1846335) + - mmc: sdhci-pci: Add another Id for Intel CML + - i2c: i801: Add support for Intel Comet Lake PCH-H + - mtd: spi-nor: intel-spi: Add support for Intel Comet Lake-H SPI serial flash + - mfd: intel-lpss: Add Intel Comet Lake PCH-H PCI IDs + * i915: Display flickers (monitor loses signal briefly) during "flickerfree" + boot, while showing the BIOS logo on a black background (LP: #1836858) + - [Config] FRAMEBUFFER_CONSOLE_DEFERRED_TAKEOVER=y + * Please add patch fixing RK818 ID detection (LP: #1853192) + - SAUCE: mfd: rk808: Fix RK818 ID template + * Kernel build log filled with "/bin/bash: line 5: warning: command + substitution: ignored null byte in input" (LP: #1853843) + - [Debian] Fix warnings when checking for modules signatures + * Lenovo dock MAC Address pass through doesn't work in Ubuntu (LP: #1827961) + - r8152: Add macpassthru support for ThinkPad Thunderbolt 3 Dock Gen 2 + * Dell XPS 13 9350/9360 headphone audio hiss (LP: #1654448) // [XPS 13 9360, + Realtek ALC3246, Black Headphone Out, Front] High noise floor (LP: #1845810) + - ALSA: hda/realtek: Reduce the Headphone static noise on XPS 9350/9360 + * no HDMI video output since GDM greeter after linux-oem-osp1 version + 5.0.0-1026 (LP: #1852386) + - drm/i915: Add new CNL PCH ID seen on a CML platform + - SAUCE: drm/i915: Fix detection for a CMP-V PCH + * [broadwell-rt286, playback] Since Linux 5.2rc2 audio playback no longer + works on Dell Venue 11 Pro 7140 (LP: #1846539) + - [Config] Drop snd-sof-intel-bdw build + - SAUCE: ASoC: SOF: Intel: Broadwell: clarify mutual exclusion with legacy + driver + * [CML-S62] Need enable turbostat patch support for Comet lake- S 6+2 + (LP: #1847451) + - SAUCE: tools/power turbostat: Add Cometlake support + * External microphone can't work on some dell machines with the codec alc256 + or alc236 (LP: #1853791) + - SAUCE: ALSA: hda/realtek - Move some alc256 pintbls to fallback table + - SAUCE: ALSA: hda/realtek - Move some alc236 pintbls to fallback table + * Memory leak in net/xfrm/xfrm_state.c - 8 pages per ipsec connection + (LP: #1853197) + - xfrm: Fix memleak on xfrm state destroy + * CVE-2019-18660: patches for Ubuntu (LP: #1853142) // CVE-2019-18660 + - powerpc/64s: support nospectre_v2 cmdline option + - powerpc/book3s64: Fix link stack flush on context switch + - KVM: PPC: Book3S HV: Flush link stack on guest exit to host kernel + * Raydium Touchscreen on ThinkPad L390 does not work (LP: #1849721) + - HID: i2c-hid: fix no irq after reset on raydium 3118 + * Make Goodix I2C touchpads work (LP: #1853842) + - HID: i2c-hid: Remove runtime power management + - HID: i2c-hid: Send power-on command after reset + * Touchpad doesn't work on Dell Inspiron 7000 2-in-1 (LP: #1851901) + - Revert "UBUNTU: SAUCE: mfd: intel-lpss: add quirk for Dell XPS 13 7390 + 2-in-1" + - lib: devres: add a helper function for ioremap_uc + - mfd: intel-lpss: Use devm_ioremap_uc for MMIO + * CVE-2019-19055 + - nl80211: fix memory leak in nl80211_get_ftm_responder_stats + * CML: perf enabling for core (LP: #1848978) + - perf/x86/intel: Add Comet Lake CPU support + - perf/x86/msr: Add Comet Lake CPU support + - perf/x86/cstate: Add Comet Lake CPU support + - perf/x86/msr: Add new CPU model numbers for Ice Lake + - perf/x86/cstate: Update C-state counters for Ice Lake + * Boot hangs after "Loading initial ramdisk ..." (LP: #1852586) + - SAUCE: Revert "tpm_tis_core: Set TPM_CHIP_FLAG_IRQ before probing for + interrupts" + - SAUCE: Revert "tpm_tis_core: Turn on the TPM before probing IRQ's" + * [CML-S62] Need enable intel_rapl patch support for Comet lake- S 6+2 + (LP: #1847454) + - powercap/intel_rapl: add support for CometLake Mobile + - powercap/intel_rapl: add support for Cometlake desktop + * [CML-S62] Need enable intel_pmc_core driver patch for Comet lake- S 6+2 + (LP: #1847450) + - SAUCE: platform/x86: intel_pmc_core: Add Comet Lake (CML) platform support + to intel_pmc_core driver + * update ENA driver for DIMLIB dynamic interrupt moderation (LP: #1853180) + - net: ena: add intr_moder_rx_interval to struct ena_com_dev and use it + - net: ena: switch to dim algorithm for rx adaptive interrupt moderation + - net: ena: reimplement set/get_coalesce() + - net: ena: enable the interrupt_moderation in driver_supported_features + - net: ena: remove code duplication in + ena_com_update_nonadaptive_moderation_interval _*() + - net: ena: remove old adaptive interrupt moderation code from ena_netdev + - net: ena: remove ena_restore_ethtool_params() and relevant fields + - net: ena: remove all old adaptive rx interrupt moderation code from ena_com + - net: ena: fix update of interrupt moderation register + - net: ena: fix retrieval of nonadaptive interrupt moderation intervals + - net: ena: fix incorrect update of intr_delay_resolution + - net: ena: Select DIMLIB for ENA_ETHERNET + - SAUCE: net: ena: fix issues in setting interrupt moderation params in + ethtool + - SAUCE: net: ena: fix too long default tx interrupt moderation interval + * CONFIG_ARCH_ROCKCHIP is not set in ubuntu 18.04 aarch64,arm64 (LP: #1825222) + - [Config] Enable ROCKCHIP support for arm64 + * remount of multilower moved pivoted-root overlayfs root, results in I/O + errors on some modified files (LP: #1824407) + - SAUCE: ovl: fix lookup failure on multi lower squashfs + * Eoan update: 5.3.13 upstream stable release (LP: #1853882) + - net: cdc_ncm: Signedness bug in cdc_ncm_set_dgram_size() + - block, bfq: deschedule empty bfq_queues not referred by any process + - mm/memory_hotplug: don't access uninitialized memmaps in shrink_pgdat_span() + - mm/memory_hotplug: fix updating the node span + - arm64: uaccess: Ensure PAN is re-enabled after unhandled uaccess fault + - fbdev: Ditch fb_edid_add_monspecs + - Linux 5.3.13 + * Eoan update: 5.3.12 upstream stable release (LP: #1853475) + - scsi: core: Handle drivers which set sg_tablesize to zero + - ax88172a: fix information leak on short answers + - devlink: disallow reload operation during device cleanup + - ipmr: Fix skb headroom in ipmr_get_route(). + - mlxsw: core: Enable devlink reload only on probe + - net: gemini: add missed free_netdev + - net/smc: fix fastopen for non-blocking connect() + - net: usb: qmi_wwan: add support for Foxconn T77W968 LTE modules + - slip: Fix memory leak in slip_open error path + - tcp: remove redundant new line from tcp_event_sk_skb + - dpaa2-eth: free already allocated channels on probe defer + - devlink: Add method for time-stamp on reporter's dump + - net/smc: fix refcount non-blocking connect() -part 2 + - ALSA: usb-audio: Fix missing error check at mixer resolution test + - ALSA: usb-audio: not submit urb for stopped endpoint + - ALSA: usb-audio: Fix incorrect NULL check in create_yamaha_midi_quirk() + - ALSA: usb-audio: Fix incorrect size check for processing/extension units + - Btrfs: fix log context list corruption after rename exchange operation + - cgroup: freezer: call cgroup_enter_frozen() with preemption disabled in + ptrace_stop() + - Input: ff-memless - kill timer in destroy() + - Input: synaptics-rmi4 - fix video buffer size + - Input: synaptics-rmi4 - disable the relative position IRQ in the F12 driver + - Input: synaptics-rmi4 - do not consume more data than we have (F11, F12) + - Input: synaptics-rmi4 - clear IRQ enables for F54 + - Input: synaptics-rmi4 - destroy F54 poller workqueue when removing + - KVM: MMU: Do not treat ZONE_DEVICE pages as being reserved + - IB/hfi1: Ensure r_tid_ack is valid before building TID RDMA ACK packet + - IB/hfi1: Calculate flow weight based on QP MTU for TID RDMA + - IB/hfi1: TID RDMA WRITE should not return IB_WC_RNR_RETRY_EXC_ERR + - IB/hfi1: Ensure full Gen3 speed in a Gen4 system + - IB/hfi1: Use a common pad buffer for 9B and 16B packets + - i2c: acpi: Force bus speed to 400KHz if a Silead touchscreen is present + - SAUCE: Revert "UBUNTU: SAUCE: x86/intel: Disable HPET on Intel Coffe Lake + platforms" + - x86/quirks: Disable HPET on Intel Coffe Lake platforms + - ecryptfs_lookup_interpose(): lower_dentry->d_inode is not stable + - ecryptfs_lookup_interpose(): lower_dentry->d_parent is not stable either + - io_uring: ensure registered buffer import returns the IO length + - drm/i915: update rawclk also on resume + - Revert "drm/i915/ehl: Update MOCS table for EHL" + - ntp/y2038: Remove incorrect time_t truncation + - net: ethernet: dwmac-sun8i: Use the correct function in exit path + - iommu/vt-d: Fix QI_DEV_IOTLB_PFSID and QI_DEV_EIOTLB_PFSID macros + - mm: mempolicy: fix the wrong return value and potential pages leak of mbind + - mm: memcg: switch to css_tryget() in get_mem_cgroup_from_mm() + - mm: hugetlb: switch to css_tryget() in hugetlb_cgroup_charge_cgroup() + - mm: slub: really fix slab walking for init_on_free + - mm/memory_hotplug: fix try_offline_node() + - mm/page_io.c: do not free shared swap slots + - mmc: sdhci-of-at91: fix quirk2 overwrite + - slcan: Fix memory leak in error path + - Linux 5.3.12 + * Eoan update: 5.3.11 upstream stable release (LP: #1852338) + - bonding: fix state transition issue in link monitoring + - CDC-NCM: handle incomplete transfer of MTU + - ipv4: Fix table id reference in fib_sync_down_addr + - net: ethernet: octeon_mgmt: Account for second possible VLAN header + - net: fix data-race in neigh_event_send() + - net: qualcomm: rmnet: Fix potential UAF when unregistering + - net/tls: fix sk_msg trim on fallback to copy mode + - net: usb: qmi_wwan: add support for DW5821e with eSIM support + - NFC: fdp: fix incorrect free object + - nfc: netlink: fix double device reference drop + - NFC: st21nfca: fix double free + - qede: fix NULL pointer deref in __qede_remove() + - net: mscc: ocelot: don't handle netdev events for other netdevs + - net: mscc: ocelot: fix NULL pointer on LAG slave removal + - net/tls: don't pay attention to sk_write_pending when pushing partial + records + - net/tls: add a TX lock + - selftests/tls: add test for concurrent recv and send + - ipv6: fixes rt6_probe() and fib6_nh->last_probe init + - net: hns: Fix the stray netpoll locks causing deadlock in NAPI path + - net: prevent load/store tearing on sk->sk_stamp + - net: sched: prevent duplicate flower rules from tcf_proto destroy race + - net/smc: fix ethernet interface refcounting + - vsock/virtio: fix sock refcnt holding during the shutdown + - r8169: fix page read in r8168g_mdio_read + - ALSA: timer: Fix incorrectly assigned timer instance + - ALSA: bebob: fix to detect configured source of sampling clock for Focusrite + Saffire Pro i/o series + - ALSA: hda/ca0132 - Fix possible workqueue stall + - mm: memcontrol: fix NULL-ptr deref in percpu stats flush + - mm: memcontrol: fix network errors from failing __GFP_ATOMIC charges + - mm, meminit: recalculate pcpu batch and high limits after init completes + - mm: thp: handle page cache THP correctly in PageTransCompoundMap + - mm, vmstat: hide /proc/pagetypeinfo from normal users + - dump_stack: avoid the livelock of the dump_lock + - mm: slab: make page_cgroup_ino() to recognize non-compound slab pages + properly + - btrfs: Consider system chunk array size for new SYSTEM chunks + - btrfs: tree-checker: Fix wrong check on max devid + - btrfs: save i_size to avoid double evaluation of i_size_read in + compress_file_range + - tools: gpio: Use !building_out_of_srctree to determine srctree + - pinctrl: intel: Avoid potential glitches if pin is in GPIO mode + - perf tools: Fix time sorting + - perf map: Use zalloc for map_groups + - drm/radeon: fix si_enable_smc_cac() failed issue + - HID: wacom: generic: Treat serial number and related fields as unsigned + - mm/khugepaged: fix might_sleep() warn with CONFIG_HIGHPTE=y + - soundwire: depend on ACPI + - soundwire: depend on ACPI || OF + - soundwire: bus: set initial value to port_status + - blkcg: make blkcg_print_stat() print stats only for online blkgs + - arm64: Do not mask out PTE_RDONLY in pte_same() + - ASoC: rsnd: dma: fix SSI9 4/5/6/7 busif dma address + - ceph: fix use-after-free in __ceph_remove_cap() + - ceph: fix RCU case handling in ceph_d_revalidate() + - ceph: add missing check in d_revalidate snapdir handling + - ceph: don't try to handle hashed dentries in non-O_CREAT atomic_open + - ceph: don't allow copy_file_range when stripe_count != 1 + - iio: adc: stm32-adc: fix stopping dma + - iio: imu: adis16480: make sure provided frequency is positive + - iio: imu: inv_mpu6050: fix no data on MPU6050 + - iio: srf04: fix wrong limitation in distance measuring + - ARM: sunxi: Fix CPU powerdown on A83T + - ARM: dts: imx6-logicpd: Re-enable SNVS power key + - cpufreq: intel_pstate: Fix invalid EPB setting + - clone3: validate stack arguments + - netfilter: nf_tables: Align nft_expr private data to 64-bit + - netfilter: ipset: Fix an error code in ip_set_sockfn_get() + - intel_th: gth: Fix the window switching sequence + - intel_th: pci: Add Comet Lake PCH support + - intel_th: pci: Add Jasper Lake PCH support + - x86/dumpstack/64: Don't evaluate exception stacks before setup + - x86/apic/32: Avoid bogus LDR warnings + - SMB3: Fix persistent handles reconnect + - can: usb_8dev: fix use-after-free on disconnect + - can: flexcan: disable completely the ECC mechanism + - can: c_can: c_can_poll(): only read status register after status IRQ + - can: peak_usb: fix a potential out-of-sync while decoding packets + - can: rx-offload: can_rx_offload_queue_sorted(): fix error handling, avoid + skb mem leak + - can: gs_usb: gs_can_open(): prevent memory leak + - can: dev: add missing of_node_put() after calling of_get_child_by_name() + - can: mcba_usb: fix use-after-free on disconnect + - can: peak_usb: fix slab info leak + - configfs: fix a deadlock in configfs_symlink() + - ALSA: usb-audio: More validations of descriptor units + - ALSA: usb-audio: Simplify parse_audio_unit() + - ALSA: usb-audio: Unify the release of usb_mixer_elem_info objects + - ALSA: usb-audio: Remove superfluous bLength checks + - ALSA: usb-audio: Clean up check_input_term() + - ALSA: usb-audio: Fix possible NULL dereference at create_yamaha_midi_quirk() + - ALSA: usb-audio: remove some dead code + - ALSA: usb-audio: Fix copy&paste error in the validator + - usbip: Implement SG support to vhci-hcd and stub driver + - HID: google: add magnemite/masterball USB ids + - dmaengine: sprd: Fix the link-list pointer register configuration issue + - bpf: lwtunnel: Fix reroute supplying invalid dst + - dmaengine: xilinx_dma: Fix 64-bit simple AXIDMA transfer + - dmaengine: xilinx_dma: Fix control reg update in vdma_channel_set_config + - dmaengine: sprd: Fix the possible memory leak issue + - HID: intel-ish-hid: fix wrong error handling in ishtp_cl_alloc_tx_ring() + - powerpc/32s: fix allow/prevent_user_access() when crossing segment + boundaries. + - RDMA/mlx5: Clear old rate limit when closing QP + - iw_cxgb4: fix ECN check on the passive accept + - RDMA/siw: free siw_base_qp in kref release routine + - RDMA/qedr: Fix reported firmware version + - IB/core: Use rdma_read_gid_l2_fields to compare GID L2 fields + - net/mlx5e: Tx, Fix assumption of single WQEBB of NOP in cleanup flow + - net/mlx5e: kTLS, Release reference on DUMPed fragments in shutdown flow + - net/mlx5e: TX, Fix consumer index of error cqe dump + - net/mlx5: prevent memory leak in mlx5_fpga_conn_create_cq + - net/mlx5: fix memory leak in mlx5_fw_fatal_reporter_dump + - selftests/bpf: More compatible nc options in test_tc_edt + - scsi: qla2xxx: fixup incorrect usage of host_byte + - scsi: lpfc: Check queue pointer before use + - scsi: ufs-bsg: Wake the device before sending raw upiu commands + - ARC: [plat-hsdk]: Enable on-board SPI NOR flash IC + - RDMA/uverbs: Prevent potential underflow + - bpf: Fix use after free in subprog's jited symbol removal + - net: stmmac: Fix the problem of tso_xmit + - net: openvswitch: free vport unless register_netdevice() succeeds + - scsi: lpfc: Honor module parameter lpfc_use_adisc + - scsi: qla2xxx: Initialized mailbox to prevent driver load failure + - bpf: Fix use after free in bpf_get_prog_name + - iwlwifi: pcie: fix PCI ID 0x2720 configs that should be soc + - iwlwifi: pcie: fix all 9460 entries for qnj + - iwlwifi: pcie: 0x2720 is qu and 0x30DC is not + - netfilter: nf_flow_table: set timeout before insertion into hashes + - drm/v3d: Fix memory leak in v3d_submit_cl_ioctl + - xsk: Fix registration of Rx-only sockets + - net: phy: smsc: LAN8740: add PHY_RST_AFTER_CLK_EN flag + - ipvs: don't ignore errors in case refcounting ip_vs module fails + - ipvs: move old_secure_tcp into struct netns_ipvs + - netfilter: nft_payload: fix missing check for matching length in offloads + - RDMA/nldev: Skip counter if port doesn't match + - bonding: fix unexpected IFF_BONDING bit unset + - bonding: use dynamic lockdep key instead of subclass + - macsec: fix refcnt leak in module exit routine + - virt_wifi: fix refcnt leak in module exit routine + - scsi: sd: define variable dif as unsigned int instead of bool + - usb: dwc3: select CONFIG_REGMAP_MMIO + - usb: fsl: Check memory resource before releasing it + - usb: gadget: udc: atmel: Fix interrupt storm in FIFO mode. + - usb: gadget: composite: Fix possible double free memory bug + - usb: dwc3: pci: prevent memory leak in dwc3_pci_probe + - usb: gadget: configfs: fix concurrent issue between composite APIs + - usb: dwc3: remove the call trace of USBx_GFLADJ + - perf/x86/amd/ibs: Fix reading of the IBS OpData register and thus precise + RIP validity + - perf/x86/amd/ibs: Handle erratum #420 only on the affected CPU family (10h) + - perf/x86/uncore: Fix event group support + - USB: Skip endpoints with 0 maxpacket length + - USB: ldusb: use unsigned size format specifiers + - usbip: tools: Fix read_usb_vudc_device() error path handling + - RDMA/iw_cxgb4: Avoid freeing skb twice in arp failure case + - RDMA/hns: Prevent memory leaks of eq->buf_list + - hwmon: (ina3221) Fix read timeout issue + - scsi: qla2xxx: stop timer in shutdown path + - sched/topology: Don't try to build empty sched domains + - sched/topology: Allow sched_asym_cpucapacity to be disabled + - nvme-multipath: fix possible io hang after ctrl reconnect + - fjes: Handle workqueue allocation failure + - net: hisilicon: Fix "Trying to free already-free IRQ" + - wimax: i2400: Fix memory leak in i2400m_op_rfkill_sw_toggle + - net: mscc: ocelot: fix vlan_filtering when enslaving to bridge before link + is up + - net: mscc: ocelot: refuse to overwrite the port's native vlan + - iommu/amd: Apply the same IVRS IOAPIC workaround to Acer Aspire A315-41 + - mt76: dma: fix buffer unmap with non-linear skbs + - drm/amdgpu/sdma5: do not execute 0-sized IBs (v2) + - drm/sched: Set error to s_fence if HW job submission failed. + - drm/amdgpu: If amdgpu_ib_schedule fails return back the error. + - drm/amd/display: do not synchronize "drr" displays + - drm/amd/display: add 50us buffer as WA for pstate switch in active + - drm/amd/display: Passive DP->HDMI dongle detection fix + - dc.c:use kzalloc without test + - SUNRPC: The TCP back channel mustn't disappear while requests are + outstanding + - SUNRPC: The RDMA back channel mustn't disappear while requests are + outstanding + - SUNRPC: Destroy the back channel when we destroy the host transport + - hv_netvsc: Fix error handling in netvsc_attach() + - efi/tpm: Return -EINVAL when determining tpm final events log size fails + - efi: libstub/arm: Account for firmware reserved memory at the base of RAM + - x86, efi: Never relocate kernel below lowest acceptable address + - arm64: cpufeature: Enable Qualcomm Falkor errata 1009 for Kryo + - usb: dwc3: gadget: fix race when disabling ep with cancelled xfers + - arm64: apply ARM64_ERRATUM_845719 workaround for Brahma-B53 core + - arm64: Brahma-B53 is SSB and spectre v2 safe + - arm64: apply ARM64_ERRATUM_843419 workaround for Brahma-B53 core + - NFSv4: Don't allow a cached open with a revoked delegation + - net: ethernet: arc: add the missed clk_disable_unprepare + - igb: Fix constant media auto sense switching when no cable is connected + - e1000: fix memory leaks + - gve: Fixes DMA synchronization. + - ocfs2: protect extent tree in ocfs2_prepare_inode_for_write() + - pinctrl: cherryview: Fix irq_valid_mask calculation + - clk: imx8m: Use SYS_PLL1_800M as intermediate parent of CLK_ARM + - timekeeping/vsyscall: Update VDSO data unconditionally + - mm/filemap.c: don't initiate writeback if mapping has no dirty pages + - cgroup,writeback: don't switch wbs immediately on dead wbs if the memcg is + dead + - ARM: dts: stm32: change joystick pinctrl definition on stm32mp157c-ev1 + - ASoC: SOF: Intel: hda-stream: fix the CONFIG_ prefix missing + - usbip: Fix free of unallocated memory in vhci tx + - bonding: fix using uninitialized mode_lock + - netfilter: ipset: Copy the right MAC address in hash:ip,mac IPv6 sets + - arm64: errata: Update stale comment + - net/ibmvnic: unlock rtnl_lock in reset so linkwatch_event can run + - SAUCE: Revert "UBUNTU: SAUCE: kvm: x86: mmu: Recovery of shattered NX large + pages" + - SAUCE: Revert "UBUNTU: SAUCE: kvm: Add helper function for creating VM + worker threads" + - SAUCE: Revert "UBUNTU: SAUCE: kvm: mmu: ITLB_MULTIHIT mitigation" + - SAUCE: Revert "kvm: x86, powerpc: do not allow clearing largepages debugfs + entry" + - SAUCE: Revert "UBUNTU: SAUCE: cpu/speculation: Uninline and export CPU + mitigations helpers" + - SAUCE: Revert "UBUNTU: SAUCE: x86: Add ITLB_MULTIHIT bug infrastructure" + - SAUCE: Revert "x86/tsx: Add config options to set tsx=on|off|auto" + - SAUCE: Revert "x86/speculation/taa: Add documentation for TSX Async Abort" + - SAUCE: Revert "x86/tsx: Add "auto" option to the tsx= cmdline parameter" + - SAUCE: Revert "kvm/x86: Export MDS_NO=0 to guests when TSX is enabled" + - SAUCE: Revert "x86/speculation/taa: Add sysfs reporting for TSX Async Abort" + - SAUCE: Revert "x86/speculation/taa: Add mitigation for TSX Async Abort" + - SAUCE: Revert "x86/cpu: Add a "tsx=" cmdline option with TSX disabled by + default" + - SAUCE: Revert "x86/cpu: Add a helper function x86_read_arch_cap_msr()" + - SAUCE: Revert "x86/msr: Add the IA32_TSX_CTRL MSR" + - SAUCE: Revert "UBUNTU: SAUCE: drm/i915/cmdparser: Fix jump whitelist + clearing" + - SAUCE: Revert "UBUNTU: SAUCE: drm/i915/gen8+: Add RC6 CTX corruption WA" + - SAUCE: Revert "UBUNTU: SAUCE: drm/i915: Lower RM timeout to avoid DSI hard + hangs" + - SAUCE: Revert "UBUNTU: SAUCE: drm/i915/cmdparser: Ignore Length operands + during command matching" + - SAUCE: Revert "UBUNTU: SAUCE: drm/i915/cmdparser: Add support for backward + jumps" + - SAUCE: Revert "UBUNTU: SAUCE: drm/i915/cmdparser: Use explicit goto for + error paths" + - SAUCE: Revert "UBUNTU: SAUCE: drm/i915: Add gen9 BCS cmdparsing" + - SAUCE: Revert "UBUNTU: SAUCE: drm/i915: Allow parsing of unsized batches" + - SAUCE: Revert "UBUNTU: SAUCE: drm/i915: Support ro ppgtt mapped cmdparser + shadow buffers" + - SAUCE: Revert "UBUNTU: SAUCE: drm/i915: Add support for mandatory + cmdparsing" + - SAUCE: Revert "UBUNTU: SAUCE: drm/i915: Remove Master tables from cmdparser" + - SAUCE: Revert "UBUNTU: SAUCE: drm/i915: Disable Secure Batches for gen6+" + - SAUCE: Revert "UBUNTU: SAUCE: drm/i915: Rename gen7 cmdparser tables" + - drm/i915: Rename gen7 cmdparser tables + - drm/i915: Disable Secure Batches for gen6+ + - drm/i915: Remove Master tables from cmdparser + - drm/i915: Add support for mandatory cmdparsing + - drm/i915: Support ro ppgtt mapped cmdparser shadow buffers + - drm/i915: Allow parsing of unsized batches + - drm/i915: Add gen9 BCS cmdparsing + - drm/i915/cmdparser: Use explicit goto for error paths + - drm/i915/cmdparser: Add support for backward jumps + - drm/i915/cmdparser: Ignore Length operands during command matching + - drm/i915: Lower RM timeout to avoid DSI hard hangs + - drm/i915/gen8+: Add RC6 CTX corruption WA + - drm/i915/cmdparser: Fix jump whitelist clearing + - x86/msr: Add the IA32_TSX_CTRL MSR + - x86/cpu: Add a helper function x86_read_arch_cap_msr() + - x86/cpu: Add a "tsx=" cmdline option with TSX disabled by default + - x86/speculation/taa: Add mitigation for TSX Async Abort + - x86/speculation/taa: Add sysfs reporting for TSX Async Abort + - kvm/x86: Export MDS_NO=0 to guests when TSX is enabled + - x86/tsx: Add "auto" option to the tsx= cmdline parameter + - x86/speculation/taa: Add documentation for TSX Async Abort + - x86/tsx: Add config options to set tsx=on|off|auto + - x86/speculation/taa: Fix printing of TAA_MSG_SMT on IBRS_ALL CPUs + - x86/bugs: Add ITLB_MULTIHIT bug infrastructure + - x86/cpu: Add Tremont to the cpu vulnerability whitelist + - cpu/speculation: Uninline and export CPU mitigations helpers + - Documentation: Add ITLB_MULTIHIT documentation + - kvm: x86, powerpc: do not allow clearing largepages debugfs entry + - kvm: mmu: ITLB_MULTIHIT mitigation + - kvm: Add helper function for creating VM worker threads + - kvm: x86: mmu: Recovery of shattered NX large pages + - Linux 5.3.11 + * The alsa hda driver is not loaded due to the missing of PCIID for Comet + Lake-S [8086:a3f0] (LP: #1852070) + - SAUCE: ALSA: hda: Add Cometlake-S PCI ID + * Can't adjust brightness on DELL UHD dGPU AIO (LP: #1813877) + - SAUCE: platform/x86: dell-uart-backlight: add missing status command + - SAUCE: platform/x86: dell-uart-backlight: load driver by scalar status + - SAUCE: platform/x86: dell-uart-backlight: add force parameter + - SAUCE: platform/x86: dell-uart-backlight: add quirk for old platforms + * Disable unreliable HPET on CFL-H system (LP: #1852216) + - SAUCE: x86/intel: Disable HPET on Intel Coffe Lake H platforms + * i40e: Setting VF MAC address causes General Protection Fault (LP: #1852432) + - i40e: Fix crash caused by stress setting of VF MAC addresses + * CVE-2019-19072 + - tracing: Have error path in predicate_parse() free its allocated memory + * i40e: general protection fault in i40e_config_vf_promiscuous_mode + (LP: #1852663) + - SAUCE: i40e Fix GPF when deleting VMs + * hwe-edge kernel 5.3.0-23.25 kernel does not boot on Precision 5720 AIO + (LP: #1852581) + - [Packaging] Fix module signing with older modinfo + + -- Sultan Alsawaf Wed, 04 Dec 2019 15:54:06 -0800 + +linux-azure (5.3.0-1008.9) eoan; urgency=medium + + * eoan/linux-azure: 5.3.0-1008.9 -proposed tracker (LP: #1852225) + + [ Ubuntu: 5.3.0-24.26 ] + + * eoan/linux: 5.3.0-24.26 -proposed tracker (LP: #1852232) + * Eoan update: 5.3.9 upstream stable release (LP: #1851550) + - io_uring: fix up O_NONBLOCK handling for sockets + - dm snapshot: introduce account_start_copy() and account_end_copy() + - dm snapshot: rework COW throttling to fix deadlock + - Btrfs: fix inode cache block reserve leak on failure to allocate data space + - btrfs: qgroup: Always free PREALLOC META reserve in + btrfs_delalloc_release_extents() + - iio: adc: meson_saradc: Fix memory allocation order + - iio: fix center temperature of bmc150-accel-core + - libsubcmd: Make _FORTIFY_SOURCE defines dependent on the feature + - perf tests: Avoid raising SEGV using an obvious NULL dereference + - perf map: Fix overlapped map handling + - perf script brstackinsn: Fix recovery from LBR/binary mismatch + - perf jevents: Fix period for Intel fixed counters + - perf tools: Propagate get_cpuid() error + - perf annotate: Propagate perf_env__arch() error + - perf annotate: Fix the signedness of failure returns + - perf annotate: Propagate the symbol__annotate() error return + - perf annotate: Fix arch specific ->init() failure errors + - perf annotate: Return appropriate error code for allocation failures + - perf annotate: Don't return -1 for error when doing BPF disassembly + - staging: rtl8188eu: fix null dereference when kzalloc fails + - RDMA/siw: Fix serialization issue in write_space() + - RDMA/hfi1: Prevent memory leak in sdma_init + - RDMA/iw_cxgb4: fix SRQ access from dump_qp() + - RDMA/iwcm: Fix a lock inversion issue + - HID: hyperv: Use in-place iterator API in the channel callback + - kselftest: exclude failed TARGETS from runlist + - selftests/kselftest/runner.sh: Add 45 second timeout per test + - nfs: Fix nfsi->nrequests count error on nfs_inode_remove_request + - arm64: cpufeature: Effectively expose FRINT capability to userspace + - arm64: Fix incorrect irqflag restore for priority masking for compat + - arm64: ftrace: Ensure synchronisation in PLT setup for Neoverse-N1 #1542419 + - tty: serial: owl: Fix the link time qualifier of 'owl_uart_exit()' + - tty: serial: rda: Fix the link time qualifier of 'rda_uart_exit()' + - serial/sifive: select SERIAL_EARLYCON + - tty: n_hdlc: fix build on SPARC + - misc: fastrpc: prevent memory leak in fastrpc_dma_buf_attach + - RDMA/core: Fix an error handling path in 'res_get_common_doit()' + - RDMA/cm: Fix memory leak in cm_add/remove_one + - RDMA/nldev: Reshuffle the code to avoid need to rebind QP in error path + - RDMA/mlx5: Do not allow rereg of a ODP MR + - RDMA/mlx5: Order num_pending_prefetch properly with synchronize_srcu + - RDMA/mlx5: Add missing synchronize_srcu() for MW cases + - gpio: max77620: Use correct unit for debounce times + - fs: cifs: mute -Wunused-const-variable message + - arm64: vdso32: Fix broken compat vDSO build warnings + - arm64: vdso32: Detect binutils support for dmb ishld + - serial: mctrl_gpio: Check for NULL pointer + - serial: 8250_omap: Fix gpio check for auto RTS/CTS + - arm64: Default to building compat vDSO with clang when CONFIG_CC_IS_CLANG + - arm64: vdso32: Don't use KBUILD_CPPFLAGS unconditionally + - efi/cper: Fix endianness of PCIe class code + - efi/x86: Do not clean dummy variable in kexec path + - MIPS: include: Mark __cmpxchg as __always_inline + - riscv: avoid kernel hangs when trapped in BUG() + - riscv: avoid sending a SIGTRAP to a user thread trapped in WARN() + - riscv: Correct the handling of unexpected ebreak in do_trap_break() + - x86/xen: Return from panic notifier + - ocfs2: clear zero in unaligned direct IO + - fs: ocfs2: fix possible null-pointer dereferences in + ocfs2_xa_prepare_entry() + - fs: ocfs2: fix a possible null-pointer dereference in + ocfs2_write_end_nolock() + - fs: ocfs2: fix a possible null-pointer dereference in + ocfs2_info_scan_inode_alloc() + - btrfs: silence maybe-uninitialized warning in clone_range + - arm64: armv8_deprecated: Checking return value for memory allocation + - sched/fair: Scale bandwidth quota and period without losing quota/period + ratio precision + - sched/vtime: Fix guest/system mis-accounting on task switch + - perf/core: Rework memory accounting in perf_mmap() + - perf/core: Fix corner case in perf_rotate_context() + - perf/x86/amd: Change/fix NMI latency mitigation to use a timestamp + - drm/amdgpu: fix memory leak + - iio: imu: adis16400: release allocated memory on failure + - iio: imu: adis16400: fix memory leak + - iio: imu: st_lsm6dsx: fix waitime for st_lsm6dsx i2c controller + - MIPS: include: Mark __xchg as __always_inline + - MIPS: fw: sni: Fix out of bounds init of o32 stack + - s390/cio: fix virtio-ccw DMA without PV + - virt: vbox: fix memory leak in hgcm_call_preprocess_linaddr + - nbd: fix possible sysfs duplicate warning + - NFSv4: Fix leak of clp->cl_acceptor string + - SUNRPC: fix race to sk_err after xs_error_report + - s390/uaccess: avoid (false positive) compiler warnings + - tracing: Initialize iter->seq after zeroing in tracing_read_pipe() + - perf annotate: Fix multiple memory and file descriptor leaks + - perf/aux: Fix tracking of auxiliary trace buffer allocation + - USB: legousbtower: fix a signedness bug in tower_probe() + - nbd: verify socket is supported during setup + - fuse: flush dirty data/metadata before non-truncate setattr + - fuse: truncate pending writes on O_TRUNC + - ALSA: bebob: Fix prototype of helper function to return negative value + - ALSA: timer: Fix mutex deadlock at releasing card + - ath10k: fix latency issue for QCA988x + - UAS: Revert commit 3ae62a42090f ("UAS: fix alignment of scatter/gather + segments") + - nl80211: fix validation of mesh path nexthop + - USB: gadget: Reject endpoints with 0 maxpacket value + - usb-storage: Revert commit 747668dbc061 ("usb-storage: Set + virt_boundary_mask to avoid SG overflows") + - USB: ldusb: fix ring-buffer locking + - USB: ldusb: fix control-message timeout + - usb: xhci: fix Immediate Data Transfer endianness + - usb: xhci: fix __le32/__le64 accessors in debugfs code + - USB: serial: whiteheat: fix potential slab corruption + - USB: serial: whiteheat: fix line-speed endianness + - xhci: Fix use-after-free regression in xhci clear hub TT implementation + - scsi: qla2xxx: Fix partial flash write of MBI + - scsi: target: cxgbit: Fix cxgbit_fw4_ack() + - HID: i2c-hid: add Trekstor Primebook C11B to descriptor override + - HID: Fix assumption that devices have inputs + - HID: fix error message in hid_open_report() + - HID: logitech-hidpp: split g920_get_config() + - HID: logitech-hidpp: rework device validation + - HID: logitech-hidpp: do all FF cleanup in hidpp_ff_destroy() + - um-ubd: Entrust re-queue to the upper layers + - s390/unwind: fix mixing regs and sp + - s390/cmm: fix information leak in cmm_timeout_handler() + - s390/idle: fix cpu idle time calculation + - ARC: perf: Accommodate big-endian CPU + - IB/hfi1: Avoid excessive retry for TID RDMA READ request + - arm64: Ensure VM_WRITE|VM_SHARED ptes are clean by default + - arm64: cpufeature: Enable Qualcomm Falkor/Kryo errata 1003 + - virtio_ring: fix stalls for packed rings + - rtlwifi: rtl_pci: Fix problem of too small skb->len + - dmaengine: qcom: bam_dma: Fix resource leak + - dmaengine: tegra210-adma: fix transfer failure + - dmaengine: imx-sdma: fix size check for sdma script_number + - dmaengine: cppi41: Fix cppi41_dma_prep_slave_sg() when idle + - drm/amdgpu/gmc10: properly set BANK_SELECT and FRAGMENT_SIZE + - drm/i915: Fix PCH reference clock for FDI on HSW/BDW + - drm/amdgpu/gfx10: update gfx golden settings + - drm/amdgpu/powerplay/vega10: allow undervolting in p7 + - drm/amdgpu: Fix SDMA hang when performing VKexample test + - NFS: Fix an RCU lock leak in nfs4_refresh_delegation_stateid() + - io_uring: ensure we clear io_kiocb->result before each issue + - iommu/vt-d: Fix panic after kexec -p for kdump + - batman-adv: Avoid free/alloc race when handling OGM buffer + - llc: fix sk_buff leak in llc_sap_state_process() + - llc: fix sk_buff leak in llc_conn_service() + - rxrpc: Fix call ref leak + - rxrpc: rxrpc_peer needs to hold a ref on the rxrpc_local record + - rxrpc: Fix trace-after-put looking at the put peer record + - NFC: pn533: fix use-after-free and memleaks + - bonding: fix potential NULL deref in bond_update_slave_arr + - netfilter: conntrack: avoid possible false sharing + - net: usb: sr9800: fix uninitialized local variable + - sch_netem: fix rcu splat in netem_enqueue() + - net: sched: sch_sfb: don't call qdisc_put() while holding tree lock + - iwlwifi: exclude GEO SAR support for 3168 + - sched/fair: Fix low cpu usage with high throttling by removing expiration of + cpu-local slices + - ALSA: usb-audio: DSD auto-detection for Playback Designs + - ALSA: usb-audio: Update DSD support quirks for Oppo and Rotel + - ALSA: usb-audio: Add DSD support for Gustard U16/X26 USB Interface + - RDMA/mlx5: Use irq xarray locking for mkey_table + - sched/fair: Fix -Wunused-but-set-variable warnings + - powerpc/powernv: Fix CPU idle to be called with IRQs disabled + - Revert "nvme: allow 64-bit results in passthru commands" + - Revert "ALSA: hda: Flush interrupts on disabling" + - Linux 5.3.9 + - [Config] Remove CONFIG_GENERIC_COMPAT_VDSO and + CONFIG_CROSS_COMPILE_COMPAT_VDSO + * Eoan update: v5.3.8 upstream stable release (LP: #1850456) + - drm: Free the writeback_job when it with an empty fb + - drm: Clear the fence pointer when writeback job signaled + - clk: ti: dra7: Fix mcasp8 clock bits + - ARM: dts: Fix wrong clocks for dra7 mcasp + - nvme-pci: Fix a race in controller removal + - scsi: ufs: skip shutdown if hba is not powered + - scsi: megaraid: disable device when probe failed after enabled device + - scsi: qla2xxx: Silence fwdump template message + - scsi: qla2xxx: Fix unbound sleep in fcport delete path. + - scsi: qla2xxx: Fix stale mem access on driver unload + - scsi: qla2xxx: Fix N2N link reset + - scsi: qla2xxx: Fix N2N link up fail + - ARM: dts: Fix gpio0 flags for am335x-icev2 + - ARM: OMAP2+: Fix missing reset done flag for am3 and am43 + - ARM: OMAP2+: Add missing LCDC midlemode for am335x + - ARM: OMAP2+: Fix warnings with broken omap2_set_init_voltage() + - nvme-tcp: fix wrong stop condition in io_work + - nvme-pci: Save PCI state before putting drive into deepest state + - nvme: fix an error code in nvme_init_subsystem() + - nvme-rdma: Fix max_hw_sectors calculation + - Added QUIRKs for ADATA XPG SX8200 Pro 512GB + - nvme: Add quirk for Kingston NVME SSD running FW E8FK11.T + - nvme: allow 64-bit results in passthru commands + - drm/komeda: prevent memory leak in komeda_wb_connector_add + - nvme-rdma: fix possible use-after-free in connect timeout + - blk-mq: honor IO scheduler for multiqueue devices + - ieee802154: ca8210: prevent memory leak + - ARM: dts: am4372: Set memory bandwidth limit for DISPC + - net: dsa: qca8k: Use up to 7 ports for all operations + - MIPS: dts: ar9331: fix interrupt-controller size + - xen/efi: Set nonblocking callbacks + - loop: change queue block size to match when using DIO + - nl80211: fix null pointer dereference + - mac80211: fix txq null pointer dereference + - netfilter: nft_connlimit: disable bh on garbage collection + - net: mscc: ocelot: add missing of_node_put after calling + of_get_child_by_name + - net: dsa: rtl8366rb: add missing of_node_put after calling + of_get_child_by_name + - net: stmmac: xgmac: Not all Unicast addresses may be available + - net: stmmac: dwmac4: Always update the MAC Hash Filter + - net: stmmac: Correctly take timestamp for PTPv2 + - net: stmmac: Do not stop PHY if WoL is enabled + - net: ag71xx: fix mdio subnode support + - RISC-V: Clear load reservations while restoring hart contexts + - riscv: Fix memblock reservation for device tree blob + - drm/amdgpu: fix multiple memory leaks in acp_hw_init + - drm/amd/display: memory leak + - mips: Loongson: Fix the link time qualifier of 'serial_exit()' + - net: hisilicon: Fix usage of uninitialized variable in function + mdio_sc_cfg_reg_write() + - net: stmmac: Avoid deadlock on suspend/resume + - selftests: kvm: Fix libkvm build error + - lib: textsearch: fix escapes in example code + - s390/mm: fix -Wunused-but-set-variable warnings + - net: phy: allow for reset line to be tied to a sleepy GPIO controller + - net: phy: fix write to mii-ctrl1000 register + - namespace: fix namespace.pl script to support relative paths + - Convert filldir[64]() from __put_user() to unsafe_put_user() + - elf: don't use MAP_FIXED_NOREPLACE for elf executable mappings + - Make filldir[64]() verify the directory entry filename is valid + - uaccess: implement a proper unsafe_copy_to_user() and switch filldir over to + it + - filldir[64]: remove WARN_ON_ONCE() for bad directory entries + - net_sched: fix backward compatibility for TCA_KIND + - net_sched: fix backward compatibility for TCA_ACT_KIND + - libata/ahci: Fix PCS quirk application + - Revert "drm/radeon: Fix EEH during kexec" + - ocfs2: fix panic due to ocfs2_wq is null + - nvme-pci: Set the prp2 correctly when using more than 4k page + - ipv4: fix race condition between route lookup and invalidation + - ipv4: Return -ENETUNREACH if we can't create route but saddr is valid + - net: avoid potential infinite loop in tc_ctl_action() + - net: bcmgenet: Fix RGMII_MODE_EN value for GENET v1/2/3 + - net: bcmgenet: Set phydev->dev_flags only for internal PHYs + - net: i82596: fix dma_alloc_attr for sni_82596 + - net/ibmvnic: Fix EOI when running in XIVE mode. + - net: ipv6: fix listify ip6_rcv_finish in case of forwarding + - net: stmmac: disable/enable ptp_ref_clk in suspend/resume flow + - rxrpc: Fix possible NULL pointer access in ICMP handling + - sched: etf: Fix ordering of packets with same txtime + - sctp: change sctp_prot .no_autobind with true + - net: aquantia: temperature retrieval fix + - net: aquantia: when cleaning hw cache it should be toggled + - net: aquantia: do not pass lro session with invalid tcp checksum + - net: aquantia: correctly handle macvlan and multicast coexistence + - net: phy: micrel: Discern KSZ8051 and KSZ8795 PHYs + - net: phy: micrel: Update KSZ87xx PHY name + - net: avoid errors when trying to pop MLPS header on non-MPLS packets + - net/sched: fix corrupted L2 header with MPLS 'push' and 'pop' actions + - netdevsim: Fix error handling in nsim_fib_init and nsim_fib_exit + - net: ethernet: broadcom: have drivers select DIMLIB as needed + - net: phy: Fix "link partner" information disappear issue + - rxrpc: use rcu protection while reading sk->sk_user_data + - io_uring: fix bad inflight accounting for SETUP_IOPOLL|SETUP_SQTHREAD + - io_uring: Fix corrupted user_data + - USB: legousbtower: fix memleak on disconnect + - ALSA: hda/realtek - Add support for ALC711 + - ALSA: hda/realtek - Enable headset mic on Asus MJ401TA + - ALSA: usb-audio: Disable quirks for BOSS Katana amplifiers + - ALSA: hda - Force runtime PM on Nvidia HDMI codecs + - usb: udc: lpc32xx: fix bad bit shift operation + - USB: serial: ti_usb_3410_5052: fix port-close races + - USB: ldusb: fix memleak on disconnect + - USB: usblp: fix use-after-free on disconnect + - USB: ldusb: fix read info leaks + - binder: Don't modify VMA bounds in ->mmap handler + - MIPS: tlbex: Fix build_restore_pagemask KScratch restore + - staging: wlan-ng: fix exit return when sme->key_idx >= NUM_WEPKEYS + - scsi: zfcp: fix reaction on bit error threshold notification + - scsi: sd: Ignore a failure to sync cache due to lack of authorization + - scsi: core: save/restore command resid for error handling + - scsi: core: try to get module before removing device + - scsi: ch: Make it possible to open a ch device multiple times again + - Revert "Input: elantech - enable SMBus on new (2018+) systems" + - Input: da9063 - fix capability and drop KEY_SLEEP + - Input: synaptics-rmi4 - avoid processing unknown IRQs + - Input: st1232 - fix reporting multitouch coordinates + - ASoC: rsnd: Reinitialize bit clock inversion flag for every format setting + - ACPI: CPPC: Set pcc_data[pcc_ss_id] to NULL in acpi_cppc_processor_exit() + - ACPI: NFIT: Fix unlock on error in scrub_show() + - iwlwifi: pcie: change qu with jf devices to use qu configuration + - cfg80211: wext: avoid copying malformed SSIDs + - mac80211: Reject malformed SSID elements + - drm/ttm: Restore ttm prefaulting + - drm/panfrost: Handle resetting on timeout better + - drm/amdgpu: Bail earlier when amdgpu.cik_/si_support is not set to 1 + - drm/amdgpu/sdma5: fix mask value of POLL_REGMEM packet for pipe sync + - drm/i915/userptr: Never allow userptr into the mappable GGTT + - drm/i915: Favor last VBT child device with conflicting AUX ch/DDC pin + - drm/amdgpu/vce: fix allocation size in enc ring test + - drm/amdgpu/vcn: fix allocation size in enc ring test + - drm/amdgpu/uvd6: fix allocation size in enc ring test (v2) + - drm/amdgpu/uvd7: fix allocation size in enc ring test (v2) + - drm/amdgpu: user pages array memory leak fix + - drivers/base/memory.c: don't access uninitialized memmaps in + soft_offline_page_store() + - fs/proc/page.c: don't access uninitialized memmaps in fs/proc/page.c + - io_uring: Fix broken links with offloading + - io_uring: Fix race for sqes with userspace + - io_uring: used cached copies of sq->dropped and cq->overflow + - mmc: mxs: fix flags passed to dmaengine_prep_slave_sg + - mmc: cqhci: Commit descriptors before setting the doorbell + - mmc: sdhci-omap: Fix Tuning procedure for temperatures < -20C + - mm/memory-failure.c: don't access uninitialized memmaps in memory_failure() + - mm/slub: fix a deadlock in show_slab_objects() + - mm/page_owner: don't access uninitialized memmaps when reading + /proc/pagetypeinfo + - mm/memunmap: don't access uninitialized memmap in memunmap_pages() + - mm: memcg/slab: fix panic in __free_slab() caused by premature memcg pointer + release + - mm, compaction: fix wrong pfn handling in __reset_isolation_pfn() + - mm: memcg: get number of pages on the LRU list in memcgroup base on + lru_zone_size + - mm: memblock: do not enforce current limit for memblock_phys* family + - hugetlbfs: don't access uninitialized memmaps in pfn_range_valid_gigantic() + - mm/memory-failure: poison read receives SIGKILL instead of SIGBUS if mmaped + more than once + - zram: fix race between backing_dev_show and backing_dev_store + - xtensa: drop EXPORT_SYMBOL for outs*/ins* + - xtensa: fix change_bit in exclusive access option + - s390/zcrypt: fix memleak at release + - s390/kaslr: add support for R_390_GLOB_DAT relocation type + - lib/vdso: Make clock_getres() POSIX compliant again + - parisc: Fix vmap memory leak in ioremap()/iounmap() + - EDAC/ghes: Fix Use after free in ghes_edac remove path + - arm64: KVM: Trap VM ops when ARM64_WORKAROUND_CAVIUM_TX2_219_TVM is set + - arm64: Avoid Cavium TX2 erratum 219 when switching TTBR + - arm64: Enable workaround for Cavium TX2 erratum 219 when running SMT + - arm64: Allow CAVIUM_TX2_ERRATUM_219 to be selected + - CIFS: avoid using MID 0xFFFF + - cifs: Fix missed free operations + - CIFS: Fix use after free of file info structures + - perf/aux: Fix AUX output stopping + - tracing: Fix race in perf_trace_buf initialization + - fs/dax: Fix pmd vs pte conflict detection + - dm cache: fix bugs when a GFP_NOWAIT allocation fails + - irqchip/sifive-plic: Switch to fasteoi flow + - x86/boot/64: Make level2_kernel_pgt pages invalid outside kernel area + - x86/apic/x2apic: Fix a NULL pointer deref when handling a dying cpu + - x86/hyperv: Make vapic support x2apic mode + - pinctrl: cherryview: restore Strago DMI workaround for all versions + - pinctrl: armada-37xx: fix control of pins 32 and up + - pinctrl: armada-37xx: swap polarity on LED group + - btrfs: block-group: Fix a memory leak due to missing btrfs_put_block_group() + - Btrfs: add missing extents release on file extent cluster relocation error + - btrfs: don't needlessly create extent-refs kernel thread + - Btrfs: fix qgroup double free after failure to reserve metadata for delalloc + - Btrfs: check for the full sync flag while holding the inode lock during + fsync + - btrfs: tracepoints: Fix wrong parameter order for qgroup events + - btrfs: tracepoints: Fix bad entry members of qgroup events + - KVM: PPC: Book3S HV: XIVE: Ensure VP isn't already in use + - memstick: jmb38x_ms: Fix an error handling path in 'jmb38x_ms_probe()' + - cpufreq: Avoid cpufreq_suspend() deadlock on system shutdown + - ceph: just skip unrecognized info in ceph_reply_info_extra + - xen/netback: fix error path of xenvif_connect_data() + - PCI: PM: Fix pci_power_up() + - opp: of: drop incorrect lockdep_assert_held() + - of: reserved_mem: add missing of_node_put() for proper ref-counting + - blk-rq-qos: fix first node deletion of rq_qos_del() + - RDMA/cxgb4: Do not dma memory off of the stack + - Linux 5.3.8 + - [Config] CONFIG_CAVIUM_TX2_ERRATUM_219=y + * Eoan update: 5.3.10 upstream stable release (LP: #1852111) + - regulator: of: fix suspend-min/max-voltage parsing + - ASoC: samsung: arndale: Add missing OF node dereferencing + - ASoC: wm8994: Do not register inapplicable controls for WM1811 + - regulator: da9062: fix suspend_enable/disable preparation + - ASoC: topology: Fix a signedness bug in soc_tplg_dapm_widget_create() + - arm64: dts: allwinner: a64: pine64-plus: Add PHY regulator delay + - arm64: dts: allwinner: a64: Drop PMU node + - arm64: dts: allwinner: a64: sopine-baseboard: Add PHY regulator delay + - arm64: dts: Fix gpio to pinmux mapping + - regulator: ti-abb: Fix timeout in ti_abb_wait_txdone/ti_abb_clear_all_txdone + - pinctrl: intel: Allocate IRQ chip dynamic + - ASoC: SOF: loader: fix kernel oops on firmware boot failure + - ASoC: SOF: topology: fix parse fail issue for byte/bool tuple types + - ASoC: SOF: Intel: hda: fix warnings during FW load + - ASoC: SOF: Intel: initialise and verify FW crash dump data. + - ASoC: SOF: Intel: hda: Disable DMI L1 entry during capture + - ASoC: rt5682: add NULL handler to set_jack function + - ASoC: intel: sof_rt5682: add remove function to disable jack + - ASoC: intel: bytcr_rt5651: add null check to support_button_press + - regulator: pfuze100-regulator: Variable "val" in pfuze100_regulator_probe() + could be uninitialized + - ASoC: wm_adsp: Don't generate kcontrols without READ flags + - ASoc: rockchip: i2s: Fix RPM imbalance + - arm64: dts: rockchip: fix Rockpro64 RK808 interrupt line + - ARM: dts: logicpd-torpedo-som: Remove twl_keypad + - arm64: dts: rockchip: fix RockPro64 vdd-log regulator settings + - arm64: dts: rockchip: fix RockPro64 sdhci settings + - pinctrl: ns2: Fix off by one bugs in ns2_pinmux_enable() + - pinctrl: stmfx: fix null pointer on remove + - arm64: dts: zii-ultra: fix ARM regulator states + - ARM: dts: am3874-iceboard: Fix 'i2c-mux-idle-disconnect' usage + - ASoC: msm8916-wcd-digital: add missing MIX2 path for RX1/2 + - ASoC: simple_card_utils.h: Fix potential multiple redefinition error + - ARM: dts: Use level interrupt for omap4 & 5 wlcore + - ARM: mm: fix alignment handler faults under memory pressure + - scsi: qla2xxx: fix a potential NULL pointer dereference + - scsi: scsi_dh_alua: handle RTPG sense code correctly during state + transitions + - scsi: sni_53c710: fix compilation error + - scsi: fix kconfig dependency warning related to 53C700_LE_ON_BE + - ARM: 8908/1: add __always_inline to functions called from __get_user_check() + - ARM: 8914/1: NOMMU: Fix exc_ret for XIP + - arm64: dts: rockchip: fix RockPro64 sdmmc settings + - arm64: dts: rockchip: Fix usb-c on Hugsun X99 TV Box + - arm64: dts: lx2160a: Correct CPU core idle state name + - ARM: dts: imx6q-logicpd: Re-Enable SNVS power key + - ARM: dts: vf610-zii-scu4-aib: Specify 'i2c-mux-idle-disconnect' + - ARM: dts: imx7s: Correct GPT's ipg clock source + - arm64: dts: imx8mq: Use correct clock for usdhc's ipg clk + - arm64: dts: imx8mm: Use correct clock for usdhc's ipg clk + - perf tools: Fix resource leak of closedir() on the error paths + - perf c2c: Fix memory leak in build_cl_output() + - 8250-men-mcb: fix error checking when get_num_ports returns -ENODEV + - perf kmem: Fix memory leak in compact_gfp_flags() + - ARM: davinci: dm365: Fix McBSP dma_slave_map entry + - drm/amdgpu: fix potential VM faults + - drm/amdgpu: fix error handling in amdgpu_bo_list_create + - scsi: target: core: Do not overwrite CDB byte 1 + - scsi: hpsa: add missing hunks in reset-patch + - ASoC: Intel: sof-rt5682: add a check for devm_clk_get + - ASoC: SOF: control: return true when kcontrol values change + - tracing: Fix "gfp_t" format for synthetic events + - ARM: dts: bcm2837-rpi-cm3: Avoid leds-gpio probing issue + - i2c: aspeed: fix master pending state handling + - drm/komeda: Don't flush inactive pipes + - ARM: 8926/1: v7m: remove register save to stack before svc + - selftests: kvm: vmx_set_nested_state_test: don't check for VMX support twice + - selftests: kvm: fix sync_regs_test with newer gccs + - ALSA: hda: Add Tigerlake/Jasperlake PCI ID + - of: unittest: fix memory leak in unittest_data_add + - MIPS: bmips: mark exception vectors as char arrays + - irqchip/gic-v3-its: Use the exact ITSList for VMOVP + - i2c: mt65xx: fix NULL ptr dereference + - i2c: stm32f7: fix first byte to send in slave mode + - i2c: stm32f7: fix a race in slave mode with arbitration loss irq + - i2c: stm32f7: remove warning when compiling with W=1 + - cifs: Fix cifsInodeInfo lock_sem deadlock when reconnect occurs + - irqchip/sifive-plic: Skip contexts except supervisor in plic_init() + - nbd: protect cmd->status with cmd->lock + - nbd: handle racing with error'ed out commands + - cxgb4: fix panic when attaching to ULD fail + - cxgb4: request the TX CIDX updates to status page + - dccp: do not leak jiffies on the wire + - erspan: fix the tun_info options_len check for erspan + - inet: stop leaking jiffies on the wire + - net: annotate accesses to sk->sk_incoming_cpu + - net: annotate lockless accesses to sk->sk_napi_id + - net: dsa: bcm_sf2: Fix IMP setup for port different than 8 + - net: ethernet: ftgmac100: Fix DMA coherency issue with SW checksum + - net: fix sk_page_frag() recursion from memory reclaim + - net: hisilicon: Fix ping latency when deal with high throughput + - net/mlx4_core: Dynamically set guaranteed amount of counters per VF + - netns: fix GFP flags in rtnl_net_notifyid() + - net: rtnetlink: fix a typo fbd -> fdb + - net: usb: lan78xx: Disable interrupts before calling generic_handle_irq() + - SAUCE: Revert "UBUNTU: SAUCE: (no-up) net: Zeroing the structure + ethtool_wolinfo in ethtool_get_wol()" + - net: Zeroing the structure ethtool_wolinfo in ethtool_get_wol() + - selftests: net: reuseport_dualstack: fix uninitalized parameter + - udp: fix data-race in udp_set_dev_scratch() + - vxlan: check tun_info options_len properly + - net: add skb_queue_empty_lockless() + - udp: use skb_queue_empty_lockless() + - net: use skb_queue_empty_lockless() in poll() handlers + - net: use skb_queue_empty_lockless() in busy poll contexts + - net: add READ_ONCE() annotation in __skb_wait_for_more_packets() + - ipv4: fix route update on metric change. + - selftests: fib_tests: add more tests for metric update + - net/smc: fix closing of fallback SMC sockets + - net/smc: keep vlan_id for SMC-R in smc_listen_work() + - keys: Fix memory leak in copy_net_ns + - net: phylink: Fix phylink_dbg() macro + - rxrpc: Fix handling of last subpacket of jumbo packet + - net/mlx5e: Determine source port properly for vlan push action + - net/mlx5e: Remove incorrect match criteria assignment line + - net/mlx5e: Initialize on stack link modes bitmap + - net/mlx5: Fix flow counter list auto bits struct + - net/smc: fix refcounting for non-blocking connect() + - net/mlx5: Fix rtable reference leak + - mlxsw: core: Unpublish devlink parameters during reload + - r8169: fix wrong PHY ID issue with RTL8168dp + - net/mlx5e: Fix ethtool self test: link speed + - net/mlx5e: Fix handling of compressed CQEs in case of low NAPI budget + - ipv4: fix IPSKB_FRAG_PMTU handling with fragmentation + - net: bcmgenet: don't set phydev->link from MAC + - net: dsa: b53: Do not clear existing mirrored port mask + - net: dsa: fix switch tree list + - net: ensure correct skb->tstamp in various fragmenters + - net: hns3: fix mis-counting IRQ vector numbers issue + - net: netem: fix error path for corrupted GSO frames + - net: reorder 'struct net' fields to avoid false sharing + - net: usb: lan78xx: Connect PHY before registering MAC + - r8152: add device id for Lenovo ThinkPad USB-C Dock Gen 2 + - net: netem: correct the parent's backlog when corrupted packet was dropped + - net: phy: bcm7xxx: define soft_reset for 40nm EPHY + - net: bcmgenet: reset 40nm EPHY on energy detect + - net/flow_dissector: switch to siphash + - platform/x86: pmc_atom: Add Siemens SIMATIC IPC227E to critclk_systems DMI + table + - CIFS: Fix retry mid list corruption on reconnects + - selftests/powerpc: Add test case for tlbie vs mtpidr ordering issue + - selftests/powerpc: Fix compile error on tlbie_test due to newer gcc + - ASoC: pcm3168a: The codec does not support S32_LE + - arm64: dts: ti: k3-am65-main: Fix gic-its node unit-address + - usb: gadget: udc: core: Fix segfault if udc_bind_to_driver() for pending + driver fails + - Linux 5.3.10 + - [Config] SND_SOC_SOF_HDA_ALWAYS_ENABLE_DMI_L1=n + * Some EFI systems fail to boot in efi_init() when booted via maas + (LP: #1851810) + - efi: efi_get_memory_map -- increase map headroom + * dkms artifacts may expire from the pool (LP: #1850958) + - [Packaging] dkms -- try launchpad librarian for pool downloads + - [Packaging] dkms -- dkms-build quieten wget verbiage + * update ENA driver to version 2.1.0 (LP: #1850175) + - net: ena: don't wake up tx queue when down + - net: ena: clean up indentation issue + * drm/i915: Add support for another CMP-H PCH (LP: #1848491) + - drm/i915/cml: Add second PCH ID for CMP + * Add Intel Comet Lake ethernet support (LP: #1848555) + - SAUCE: e1000e: Add support for Comet Lake + * seccomp: fix SECCOMP_USER_NOTIF_FLAG_CONTINUE test (LP: #1849281) + - SAUCE: seccomp: rework define for SECCOMP_USER_NOTIF_FLAG_CONTINUE + - SAUCE: seccomp: avoid overflow in implicit constant conversion + - SAUCE: seccomp: fix SECCOMP_USER_NOTIF_FLAG_CONTINUE test + * tsc marked unstable after entered PC10 on Intel CoffeeLake (LP: #1840239) + - SAUCE: x86/intel: Disable HPET on Intel Coffe Lake platforms + - SAUCE: x86/intel: Disable HPET on Intel Ice Lake platforms + * cloudimg: no iavf/i40evf module so no network available with SR-IOV enabled + cloud (LP: #1848481) + - [Packaging] include iavf/i40evf in generic + * High power consumption using 5.0.0-25-generic (LP: #1840835) + - PCI: Add a helper to check Power Resource Requirements _PR3 existence + - ALSA: hda: Allow HDA to be runtime suspended when dGPU is not bound to a + driver + - PCI: Fix missing inline for pci_pr3_present() + * CML CPUIDs (LP: #1843794) + - x86/cpu: Add Comet Lake to the Intel CPU models header + * shiftfs: prevent exceeding project quotas (LP: #1849483) + - SAUCE: shiftfs: drop CAP_SYS_RESOURCE from effective capabilities + * shiftfs: fix fallocate() (LP: #1849482) + - SAUCE: shiftfs: setup correct s_maxbytes limit + * Bluetooth: hidp: Fix assumptions on the return value of hidp_send_message + (LP: #1850443) + - Bluetooth: hidp: Fix assumptions on the return value of hidp_send_message + * [SRU][B/OEM-B/OEM-OSP1/D/E] UBUNTU: SAUCE: add rtl623 codec support and fix + mic issues (LP: #1850599) + - SAUCE: ALSA: hda/realtek - Add support for ALC623 + - SAUCE: ALSA: hda/realtek - Fix 2 front mics of codec 0x623 + * Suppress "hid_field_extract() called with n (192) > 32!" message floods + (LP: #1850600) + - HID: core: reformat and reduce hid_printk macros + - HID: core: Add printk_once variants to hid_warn() etc + - HID: core: fix dmesg flooding if report field larger than 32bit + * ubuntu-aufs-modified mmap_region() breaks refcounting in overlayfs/shiftfs + error path (LP: #1850994) // CVE-2019-15794 + - SAUCE: shiftfs: Restore vm_file value when lower fs mmap fails + - SAUCE: ovl: Restore vm_file value when lower fs mmap fails + * s_iflags overlap prevents unprivileged overlayfs mounts (LP: #1851677) + - SAUCE: fs: Move SB_I_NOSUID to the top of s_iflags + * root can lift kernel lockdown (LP: #1851380) + - SAUCE: (efi-lockdown) Really don't allow lifting lockdown from userspace + * Colour banding in Lenovo G50-80 laptop display (i915) (LP: #1819968) // Eoan + update: v5.3.8 upstream stable release (LP: #1850456) + - drm/edid: Add 6 bpc quirk for SDC panel in Lenovo G50 + + [ Ubuntu: 5.3.0-23.25 ] + + * Incomplete i915 fix for 64-bit x86 kernels (LP: #1852141) // CVE-2019-0155 + - SAUCE: drm/i915/cmdparser: Fix jump whitelist clearing + + -- Kleber Sacilotto de Souza Thu, 14 Nov 2019 16:49:20 +0100 + +linux-azure (5.3.0-1007.8) eoan; urgency=medium + + * CVE-2019-11135 + - [Config] azure: Disable TSX by default when possible + + [ Ubuntu: 5.3.0-22.24 ] + + * [REGRESSION] md/raid0: cannot assemble multi-zone RAID0 with default_layout + setting (LP: #1849682) + - Revert "md/raid0: avoid RAID0 data corruption due to layout confusion." + * refcount underflow and type confusion in shiftfs (LP: #1850867) // CVE-2019-15793 + - SAUCE: shiftfs: Correct id translation for lower fs operations + - SAUCE: shiftfs: prevent type confusion + - SAUCE: shiftfs: Fix refcount underflow in btrfs ioctl handling + * CVE-2018-12207 + - kvm: x86, powerpc: do not allow clearing largepages debugfs entry + - SAUCE: KVM: vmx, svm: always run with EFER.NXE=1 when shadow paging is + active + - SAUCE: x86: Add ITLB_MULTIHIT bug infrastructure + - SAUCE: kvm: mmu: ITLB_MULTIHIT mitigation + - SAUCE: kvm: Add helper function for creating VM worker threads + - SAUCE: kvm: x86: mmu: Recovery of shattered NX large pages + - SAUCE: cpu/speculation: Uninline and export CPU mitigations helpers + - SAUCE: kvm: x86: mmu: Apply global mitigations knob to ITLB_MULTIHIT + * CVE-2019-11135 + - x86/msr: Add the IA32_TSX_CTRL MSR + - x86/cpu: Add a helper function x86_read_arch_cap_msr() + - x86/cpu: Add a "tsx=" cmdline option with TSX disabled by default + - x86/speculation/taa: Add mitigation for TSX Async Abort + - x86/speculation/taa: Add sysfs reporting for TSX Async Abort + - kvm/x86: Export MDS_NO=0 to guests when TSX is enabled + - x86/tsx: Add "auto" option to the tsx= cmdline parameter + - x86/speculation/taa: Add documentation for TSX Async Abort + - x86/tsx: Add config options to set tsx=on|off|auto + - [Config] Disable TSX by default when possible + * CVE-2019-0154 + - SAUCE: drm/i915: Lower RM timeout to avoid DSI hard hangs + - SAUCE: drm/i915/gen8+: Add RC6 CTX corruption WA + * CVE-2019-0155 + - SAUCE: drm/i915: Rename gen7 cmdparser tables + - SAUCE: drm/i915: Disable Secure Batches for gen6+ + - SAUCE: drm/i915: Remove Master tables from cmdparser + - SAUCE: drm/i915: Add support for mandatory cmdparsing + - SAUCE: drm/i915: Support ro ppgtt mapped cmdparser shadow buffers + - SAUCE: drm/i915: Allow parsing of unsized batches + - SAUCE: drm/i915: Add gen9 BCS cmdparsing + - SAUCE: drm/i915/cmdparser: Use explicit goto for error paths + - SAUCE: drm/i915/cmdparser: Add support for backward jumps + - SAUCE: drm/i915/cmdparser: Ignore Length operands during command matching + + -- Stefan Bader Mon, 11 Nov 2019 10:04:26 +0100 + +linux-azure (5.3.0-1006.6) eoan; urgency=medium + + * eoan/linux-azure: 5.3.0-1006.6 -proposed tracker (LP: #1850480) + + [ Ubuntu: 5.3.0-21.22 ] + + * eoan/linux: 5.3.0-21.22 -proposed tracker (LP: #1850486) + * Fix signing of staging modules in eoan (LP: #1850234) + - [Packaging] Leave unsigned modules unsigned after adding .gnu_debuglink + + -- Sultan Alsawaf Tue, 29 Oct 2019 16:34:47 -0700 + +linux-azure (5.3.0-1005.5) eoan; urgency=medium + + * eoan/linux-azure: 5.3.0-1005.5 -proposed tracker (LP: #1849058) + + * eoan: alsa/sof: Enable SOF_HDA link and codec (LP: #1848490) + - [Config] linux-azure: ignore SOF_HDA link and codec + + * Eoan update: v5.3.5 upstream stable release (LP: #1848047) + - [Config] disable CONFIG_RTC_DRV_BD70528 + + * Eoan update: 5.3.7 upstream stable release (LP: #1848750) + - [Config] disable CONFIG_FB_TFT + + [ Ubuntu: 5.3.0-20.21 ] + + * eoan/linux: 5.3.0-20.21 -proposed tracker (LP: #1849064) + * eoan: alsa/sof: Enable SOF_HDA link and codec (LP: #1848490) + - [Config] Enable SOF_HDA link and codec + * Eoan update: 5.3.7 upstream stable release (LP: #1848750) + - panic: ensure preemption is disabled during panic() + - [Config] updateconfigs for USB_RIO500 + - USB: rio500: Remove Rio 500 kernel driver + - USB: yurex: Don't retry on unexpected errors + - USB: yurex: fix NULL-derefs on disconnect + - USB: usb-skeleton: fix runtime PM after driver unbind + - USB: usb-skeleton: fix NULL-deref on disconnect + - xhci: Fix false warning message about wrong bounce buffer write length + - xhci: Prevent device initiated U1/U2 link pm if exit latency is too long + - xhci: Check all endpoints for LPM timeout + - xhci: Fix USB 3.1 capability detection on early xHCI 1.1 spec based hosts + - usb: xhci: wait for CNR controller not ready bit in xhci resume + - xhci: Prevent deadlock when xhci adapter breaks during init + - xhci: Fix NULL pointer dereference in xhci_clear_tt_buffer_complete() + - USB: adutux: fix use-after-free on disconnect + - USB: adutux: fix NULL-derefs on disconnect + - USB: adutux: fix use-after-free on release + - USB: iowarrior: fix use-after-free on disconnect + - USB: iowarrior: fix use-after-free on release + - USB: iowarrior: fix use-after-free after driver unbind + - USB: usblp: fix runtime PM after driver unbind + - USB: chaoskey: fix use-after-free on release + - USB: ldusb: fix NULL-derefs on driver unbind + - serial: uartlite: fix exit path null pointer + - serial: uartps: Fix uartps_major handling + - USB: serial: keyspan: fix NULL-derefs on open() and write() + - USB: serial: ftdi_sio: add device IDs for Sienna and Echelon PL-20 + - USB: serial: option: add Telit FN980 compositions + - USB: serial: option: add support for Cinterion CLS8 devices + - USB: serial: fix runtime PM after driver unbind + - USB: usblcd: fix I/O after disconnect + - USB: microtek: fix info-leak at probe + - USB: dummy-hcd: fix power budget for SuperSpeed mode + - usb: renesas_usbhs: gadget: Do not discard queues in + usb_ep_set_{halt,wedge}() + - usb: renesas_usbhs: gadget: Fix usb_ep_set_{halt,wedge}() behavior + - usb: typec: tcpm: usb: typec: tcpm: Fix a signedness bug in + tcpm_fw_get_caps() + - usb: typec: ucsi: ccg: Remove run_isr flag + - usb: typec: ucsi: displayport: Fix for the mode entering routine + - USB: legousbtower: fix slab info leak at probe + - USB: legousbtower: fix deadlock on disconnect + - USB: legousbtower: fix potential NULL-deref on disconnect + - USB: legousbtower: fix open after failed reset request + - USB: legousbtower: fix use-after-free on release + - mei: me: add comet point (lake) LP device ids + - mei: avoid FW version request on Ibex Peak and earlier + - gpio: eic: sprd: Fix the incorrect EIC offset when toggling + - staging/fbtft: Depend on OF + - staging: bcm2835-audio: Fix draining behavior regression + - Staging: fbtft: fix memory leak in fbtft_framebuffer_alloc + - staging: rtl8188eu: fix HighestRate check in odm_ARFBRefresh_8188E() + - staging: vt6655: Fix memory leak in vt6655_probe + - iio: adc: hx711: fix bug in sampling of data + - iio: adc: ad799x: fix probe error handling + - iio: adc: axp288: Override TS pin bias current for some models + - iio: adc: stm32-adc: move registers definitions + - iio: adc: stm32-adc: fix a race when using several adcs with dma and irq + - iio: light: opt3001: fix mutex unlock race + - iio: light: add missing vcnl4040 of_compatible + - iio: accel: adxl372: Fix/remove limitation for FIFO samples + - iio: accel: adxl372: Fix push to buffers lost samples + - iio: accel: adxl372: Perform a reset at start up + - efivar/ssdt: Don't iterate over EFI vars if no SSDT override was specified + - perf llvm: Don't access out-of-scope array + - perf inject jit: Fix JIT_CODE_MOVE filename + - drm/i915: Perform GGTT restore much earlier during resume + - selinux: fix context string corruption in convert_context() + - CIFS: Gracefully handle QueryInfo errors during open + - CIFS: Force revalidate inode when dentry is stale + - CIFS: Force reval dentry if LOOKUP_REVAL flag is set + - cifs: use cifsInodeInfo->open_file_lock while iterating to avoid a panic + - kernel/sysctl.c: do not override max_threads provided by userspace + - mm/z3fold.c: claim page in the beginning of free + - mm/page_alloc.c: fix a crash in free_pages_prepare() + - mm/vmpressure.c: fix a signedness bug in vmpressure_register_event() + - IB/core: Fix wrong iterating on ports + - firmware: google: increment VPD key_len properly + - gpio: fix getting nonexclusive gpiods from DT + - gpiolib: don't clear FLAG_IS_OUT when emulating open-drain/open-source + - btrfs: relocation: fix use-after-free on dead relocation roots + - btrfs: allocate new inode in NOFS context + - btrfs: fix balance convert to single on 32-bit host CPUs + - Btrfs: fix memory leak due to concurrent append writes with fiemap + - btrfs: fix incorrect updating of log root tree + - btrfs: fix uninitialized ret in ref-verify + - NFS: Fix O_DIRECT accounting of number of bytes read/written + - MIPS: Disable Loongson MMI instructions for kernel build + - MIPS: elf_hwcap: Export userspace ASEs + - RDMA/vmw_pvrdma: Free SRQ only once + - ACPI/PPTT: Add support for ACPI 6.3 thread flag + - arm64: topology: Use PPTT to determine if PE is a thread + - iio: light: fix vcnl4000 devicetree hooks + - Fix the locking in dcache_readdir() and friends + - drm/i915: Bump skl+ max plane width to 5k for linear/x-tiled + - drm/i915: Whitelist COMMON_SLICE_CHICKEN2 + - drm/i915: Mark contents as dirty on a write fault + - drm/msm: Use the correct dma_sync calls harder + - media: stkwebcam: fix runtime PM after driver unbind + - arm64/sve: Fix wrong free for task->thread.sve_state + - tracing/hwlat: Report total time spent in all NMIs during the sample + - tracing/hwlat: Don't ignore outer-loop duration when calculating max_latency + - ftrace: Get a reference counter for the trace_array on filter files + - tracing: Get trace_array reference for available_tracers files + - hwmon: Fix HWMON_P_MIN_ALARM mask + - mtd: rawnand: au1550nd: Fix au_read_buf16() prototype + - x86/asm: Fix MWAITX C-state hint value + - io_uring: only flush workqueues on fileset removal + - efi/tpm: Fix sanity check of unsigned tbl_size being less than zero + - Linux 5.3.7 + - [Packaging] Remove now un-used modules for amd64 + - [Config] Remove Rio500 + - [Config] Remove deselected modules + * Eoan update: v5.3.5 upstream stable release (LP: #1848047) + - drm/vkms: Fix crc worker races + - drm/mcde: Fix uninitialized variable + - drm/bridge: tc358767: Increase AUX transfer length limit + - drm/vkms: Avoid assigning 0 for possible_crtc + - drm/panel: simple: fix AUO g185han01 horizontal blanking + - drm/amd/display: add monitor patch to add T7 delay + - drm/amd/display: Power-gate all DSCs at driver init time + - drm/amd/display: fix not calling ppsmu to trigger PME + - drm/amd/display: Clear FEC_READY shadow register if DPCD write fails + - drm/amd/display: Copy GSL groups when committing a new context + - video: ssd1307fb: Start page range at page_offset + - drm/tinydrm/Kconfig: drivers: Select BACKLIGHT_CLASS_DEVICE + - drm/stm: attach gem fence to atomic state + - drm/bridge: sii902x: fix missing reference to mclk clock + - drm/panel: check failure cases in the probe func + - drm/rockchip: Check for fast link training before enabling psr + - drm/amdgpu: Fix hard hang for S/G display BOs. + - drm/amd/display: Use proper enum conversion functions + - drm/radeon: Fix EEH during kexec + - gpu: drm: radeon: Fix a possible null-pointer dereference in + radeon_connector_set_property() + - clk: imx8mq: Mark AHB clock as critical + - PCI: rpaphp: Avoid a sometimes-uninitialized warning + - pinctrl: stmfx: update pinconf settings + - ipmi_si: Only schedule continuously in the thread in maintenance mode + - clk: qoriq: Fix -Wunused-const-variable + - clk: ingenic/jz4740: Fix "pll half" divider not read/written properly + - clk: sunxi-ng: v3s: add missing clock slices for MMC2 module clocks + - drm/amd/display: fix issue where 252-255 values are clipped + - drm/amd/display: Fix frames_to_insert math + - drm/amd/display: reprogram VM config when system resume + - drm/amd/display: Register VUPDATE_NO_LOCK interrupts for DCN2 + - powerpc/powernv/ioda2: Allocate TCE table levels on demand for default DMA + window + - clk: actions: Don't reference clk_init_data after registration + - clk: sirf: Don't reference clk_init_data after registration + - clk: meson: axg-audio: Don't reference clk_init_data after registration + - clk: sprd: Don't reference clk_init_data after registration + - clk: zx296718: Don't reference clk_init_data after registration + - clk: sunxi: Don't call clk_hw_get_name() on a hw that isn't registered + - powerpc/xmon: Check for HV mode when dumping XIVE info from OPAL + - powerpc/rtas: use device model APIs and serialization during LPM + - powerpc/ptdump: fix walk_pagetables() address mismatch + - powerpc/futex: Fix warning: 'oldval' may be used uninitialized in this + function + - powerpc/64s/radix: Fix memory hotplug section page table creation + - powerpc/pseries/mobility: use cond_resched when updating device tree + - powerpc/perf: fix imc allocation failure handling + - pinctrl: tegra: Fix write barrier placement in pmx_writel + - powerpc/eeh: Clear stale EEH_DEV_NO_HANDLER flag + - vfio_pci: Restore original state on release + - drm/amdgpu/sdma5: fix number of sdma5 trap irq types for navi1x + - drm/nouveau/kms/tu102-: disable input lut when input is already FP16 + - drm/nouveau/volt: Fix for some cards having 0 maximum voltage + - pinctrl: amd: disable spurious-firing GPIO IRQs + - clk: renesas: mstp: Set GENPD_FLAG_ALWAYS_ON for clock domain + - clk: renesas: cpg-mssr: Set GENPD_FLAG_ALWAYS_ON for clock domain + - drm/amd/display: support spdif + - drm/amd/powerpaly: fix navi series custom peak level value error + - drm/amd/display: fix MPO HUBP underflow with Scatter Gather + - drm/amd/display: fix trigger not generated for freesync + - selftests/powerpc: Retry on host facility unavailable + - kbuild: Do not enable -Wimplicit-fallthrough for clang for now + - drm/amdgpu/si: fix ASIC tests + - powerpc/64s/exception: machine check use correct cfar for late handler + - pstore: fs superblock limits + - powerpc/eeh: Clean up EEH PEs after recovery finishes + - clk: qcom: gcc-sdm845: Use floor ops for sdcc clks + - powerpc/pseries: correctly track irq state in default idle + - pinctrl: meson-gxbb: Fix wrong pinning definition for uart_c + - mailbox: mediatek: cmdq: clear the event in cmdq initial flow + - ARM: dts: dir685: Drop spi-cpol from the display + - arm64: fix unreachable code issue with cmpxchg + - clk: at91: select parent if main oscillator or bypass is enabled + - clk: imx: pll14xx: avoid glitch when set rate + - clk: imx: clk-pll14xx: unbypass PLL by default + - clk: Make clk_bulk_get_all() return a valid "id" + - powerpc: dump kernel log before carrying out fadump or kdump + - mbox: qcom: add APCS child device for QCS404 + - clk: sprd: add missing kfree + - scsi: core: Reduce memory required for SCSI logging + - dma-buf/sw_sync: Synchronize signal vs syncpt free + - f2fs: fix to drop meta/node pages during umount + - ext4: fix potential use after free after remounting with noblock_validity + - MIPS: Ingenic: Disable broken BTB lookup optimization. + - MIPS: Don't use bc_false uninitialized in __mm_isBranchInstr + - MIPS: tlbex: Explicitly cast _PAGE_NO_EXEC to a boolean + - i2c-cht-wc: Fix lockdep warning + - PCI: tegra: Fix OF node reference leak + - HID: wacom: Fix several minor compiler warnings + - rtc: bd70528: fix driver dependencies + - mips/atomic: Fix loongson_llsc_mb() wreckage + - PCI: pci-hyperv: Fix build errors on non-SYSFS config + - PCI: layerscape: Add the bar_fixed_64bit property to the endpoint driver + - livepatch: Nullify obj->mod in klp_module_coming()'s error path + - mips/atomic: Fix smp_mb__{before,after}_atomic() + - ARM: 8898/1: mm: Don't treat faults reported from cache maintenance as + writes + - soundwire: intel: fix channel number reported by hardware + - PCI: mobiveil: Fix the CPU base address setup in inbound window + - ARM: 8875/1: Kconfig: default to AEABI w/ Clang + - rtc: snvs: fix possible race condition + - rtc: pcf85363/pcf85263: fix regmap error in set_time + - power: supply: register HWMON devices with valid names + - selinux: fix residual uses of current_security() for the SELinux blob + - PCI: Add pci_info_ratelimited() to ratelimit PCI separately + - HID: apple: Fix stuck function keys when using FN + - PCI: rockchip: Propagate errors for optional regulators + - PCI: histb: Propagate errors for optional regulators + - PCI: imx6: Propagate errors for optional regulators + - PCI: exynos: Propagate errors for optional PHYs + - security: smack: Fix possible null-pointer dereferences in + smack_socket_sock_rcv_skb() + - PCI: Use static const struct, not const static struct + - ARM: 8905/1: Emit __gnu_mcount_nc when using Clang 10.0.0 or newer + - ARM: 8903/1: ensure that usable memory in bank 0 starts from a PMD-aligned + address + - i2c: tegra: Move suspend handling to NOIRQ phase + - block, bfq: push up injection only after setting service time + - fat: work around race with userspace's read via blockdev while mounting + - pktcdvd: remove warning on attempting to register non-passthrough dev + - hypfs: Fix error number left in struct pointer member + - tools/power/x86/intel-speed-select: Fix high priority core mask over count + - crypto: hisilicon - Fix double free in sec_free_hw_sgl() + - mm: add dummy can_do_mlock() helper + - kbuild: clean compressed initramfs image + - ocfs2: wait for recovering done after direct unlock request + - kmemleak: increase DEBUG_KMEMLEAK_EARLY_LOG_SIZE default to 16K + - arm64: consider stack randomization for mmap base only when necessary + - mips: properly account for stack randomization and stack guard gap + - arm: properly account for stack randomization and stack guard gap + - arm: use STACK_TOP when computing mmap base address + - cxgb4:Fix out-of-bounds MSI-X info array access + - erspan: remove the incorrect mtu limit for erspan + - hso: fix NULL-deref on tty open + - ipv6: drop incoming packets having a v4mapped source address + - ipv6: Handle missing host route in __ipv6_ifa_notify + - net: ipv4: avoid mixed n_redirects and rate_tokens usage + - net: qlogic: Fix memory leak in ql_alloc_large_buffers + - net: sched: taprio: Fix potential integer overflow in + taprio_set_picos_per_byte + - net: Unpublish sk from sk_reuseport_cb before call_rcu + - nfc: fix memory leak in llcp_sock_bind() + - qmi_wwan: add support for Cinterion CLS8 devices + - rxrpc: Fix rxrpc_recvmsg tracepoint + - sch_cbq: validate TCA_CBQ_WRROPT to avoid crash + - sch_dsmark: fix potential NULL deref in dsmark_init() + - tipc: fix unlimited bundling of small messages + - udp: fix gso_segs calculations + - vsock: Fix a lockdep warning in __vsock_release() + - net: dsa: rtl8366: Check VLAN ID and not ports + - tcp: adjust rto_base in retransmits_timed_out() + - udp: only do GSO if # of segs > 1 + - net/rds: Fix error handling in rds_ib_add_one() + - net: dsa: sja1105: Initialize the meta_lock + - xen-netfront: do not use ~0U as error return value for xennet_fill_frags() + - net: dsa: sja1105: Fix sleeping while atomic in .port_hwtstamp_set + - ptp_qoriq: Initialize the registers' spinlock before calling + ptp_qoriq_settime + - net: dsa: sja1105: Ensure PTP time for rxtstamp reconstruction is not in the + past + - net: dsa: sja1105: Prevent leaking memory + - net: socionext: netsec: always grab descriptor lock + - net: sched: cbs: Avoid division by zero when calculating the port rate + - net: sched: taprio: Avoid division by zero on invalid link speed + - Smack: Don't ignore other bprm->unsafe flags if LSM_UNSAFE_PTRACE is set + - smack: use GFP_NOFS while holding inode_smack::smk_lock + - dm raid: fix updating of max_discard_sectors limit + - dm zoned: fix invalid memory access + - NFC: fix attrs checks in netlink interface + - kexec: bail out upon SIGKILL when allocating memory. + - KVM: hyperv: Fix Direct Synthetic timers assert an interrupt w/o + lapic_in_kernel + - 9p/cache.c: Fix memory leak in v9fs_cache_session_get_cookie + - vfs: set fs_context::user_ns for reconfigure + - Linux 5.3.5 + - [Config] add rtc-bd70528 to modules.ignore + - [Packaging] remove rtc-bd70528 from modules + * Suspend stopped working from 4.4.0-157 onwards (LP: #1844021) // Eoan + update: 5.3.7 upstream stable release (LP: #1848750) + - xhci: Increase STS_SAVE timeout in xhci_suspend() + * CVE-2019-17666 + - SAUCE: rtlwifi: Fix potential overflow on P2P code + * md raid0/linear doesn't show error state if an array member is removed and + allows successful writes (LP: #1847773) + - md raid0/linear: Mark array as 'broken' and fail BIOs if a member is gone + * linux won't build when new virtualbox version is present on the archive + (LP: #1848788) + - [Packaging]: download virtualbox from sources + * seccomp: add SECCOMP_USER_NOTIF_FLAG_CONTINUE (LP: #1847744) + - SAUCE: seccomp: add SECCOMP_USER_NOTIF_FLAG_CONTINUE + - SAUCE: seccomp: test SECCOMP_USER_NOTIF_FLAG_CONTINUE + * Change Config Option CONFIG_MEMORY_HOTPLUG_DEFAULT_ONLINE for s390x from yes + to no (LP: #1848492) + - [Config] Change Config Option CONFIG_MEMORY_HOTPLUG_DEFAULT_ONLINE for s390x + from yes to no + * shiftfs: rework how shiftfs opens files (LP: #1846265) + - SAUCE: shiftfs: rework how shiftfs opens files + * fdatasync performance regression on 5.0 kernels (LP: #1847641) + - blk-wbt: fix performance regression in wbt scale_up/scale_down + * bcache: Performance degradation when querying priority_stats (LP: #1840043) + - bcache: add cond_resched() in __bch_cache_cmp() + * drm/i915: Fix the issue of "azx_get_response timeout" for hdmi audio on ICL + platforms (LP: #1847192) + - SAUCE: drm/i915: Fix audio power up sequence for gen10+ display + - SAUCE: drm/i915: extend audio CDCLK>=2*BCLK constraint to more platforms + * Add installer support for iwlmvm adapters (LP: #1848236) + - d-i: Add iwlmvm to nic-modules + * Eoan update: v5.3.6 upstream stable release (LP: #1848039) + - s390/process: avoid potential reading of freed stack + - KVM: s390: Test for bad access register and size at the start of S390_MEM_OP + - s390/topology: avoid firing events before kobjs are created + - s390/cio: avoid calling strlen on null pointer + - s390/cio: exclude subchannels with no parent from pseudo check + - KVM: s390: fix __insn32_query() inline assembly + - KVM: PPC: Book3S: Enable XIVE native capability only if OPAL has required + functions + - KVM: PPC: Book3S HV: XIVE: Free escalation interrupts before disabling the + VP + - KVM: PPC: Book3S HV: Don't push XIVE context when not using XIVE device + - KVM: PPC: Book3S HV: Fix race in re-enabling XIVE escalation interrupts + - KVM: PPC: Book3S HV: Check for MMU ready on piggybacked virtual cores + - KVM: PPC: Book3S HV: Don't lose pending doorbell request on migration on P9 + - KVM: X86: Fix userspace set invalid CR4 + - nbd: fix max number of supported devs + - PM / devfreq: tegra: Fix kHz to Hz conversion + - ASoC: Define a set of DAPM pre/post-up events + - ASoC: sgtl5000: Improve VAG power and mute control + - powerpc/xive: Implement get_irqchip_state method for XIVE to fix shutdown + race + - powerpc/mce: Fix MCE handling for huge pages + - powerpc/mce: Schedule work from irq_work + - powerpc/603: Fix handling of the DIRTY flag + - powerpc/32s: Fix boot failure with DEBUG_PAGEALLOC without KASAN. + - powerpc/ptdump: Fix addresses display on PPC32 + - powerpc/powernv: Restrict OPAL symbol map to only be readable by root + - powerpc/pseries: Fix cpu_hotplug_lock acquisition in resize_hpt() + - powerpc/powernv/ioda: Fix race in TCE level allocation + - powerpc/kasan: Fix parallel loading of modules. + - powerpc/kasan: Fix shadow area set up for modules. + - powerpc/book3s64/mm: Don't do tlbie fixup for some hardware revisions + - powerpc/book3s64/radix: Rename CPU_FTR_P9_TLBIE_BUG feature flag + - powerpc/mm: Add a helper to select PAGE_KERNEL_RO or PAGE_READONLY + - powerpc/mm: Fix an Oops in kasan_mmu_init() + - powerpc/mm: Fixup tlbie vs mtpidr/mtlpidr ordering issue on POWER9 + - can: mcp251x: mcp251x_hw_reset(): allow more time after a reset + - tools lib traceevent: Fix "robust" test of do_generate_dynamic_list_file + - tools lib traceevent: Do not free tep->cmdlines in add_new_comm() on failure + - crypto: qat - Silence smp_processor_id() warning + - crypto: skcipher - Unmap pages after an external error + - crypto: cavium/zip - Add missing single_release() + - crypto: caam/qi - fix error handling in ERN handler + - crypto: caam - fix concurrency issue in givencrypt descriptor + - crypto: ccree - account for TEE not ready to report + - crypto: ccree - use the full crypt length value + - MIPS: Treat Loongson Extensions as ASEs + - power: supply: sbs-battery: use correct flags field + - power: supply: sbs-battery: only return health when battery present + - tracing: Make sure variable reference alias has correct var_ref_idx + - usercopy: Avoid HIGHMEM pfn warning + - timer: Read jiffies once when forwarding base clk + - PCI: vmd: Fix config addressing when using bus offsets + - PCI: hv: Avoid use of hv_pci_dev->pci_slot after freeing it + - PCI: vmd: Fix shadow offsets to reflect spec changes + - selftests/tpm2: Add the missing TEST_FILES assignment + - selftests: pidfd: Fix undefined reference to pthread_create() + - watchdog: imx2_wdt: fix min() calculation in imx2_wdt_set_timeout + - perf tools: Fix segfault in cpu_cache_level__read() + - perf stat: Fix a segmentation fault when using repeat forever + - drm/i915/dp: Fix dsc bpp calculations, v5. + - drm/atomic: Reject FLIP_ASYNC unconditionally + - drm/atomic: Take the atomic toys away from X + - drm: mali-dp: Mark expected switch fall-through + - drm/omap: fix max fclk divider for omap36xx + - drm/msm/dsi: Fix return value check for clk_get_parent + - drm/nouveau/kms/nv50-: Don't create MSTMs for eDP connectors + - drm/amd/powerplay: change metrics update period from 1ms to 100ms + - drm/i915/gvt: update vgpu workload head pointer correctly + - drm/i915: to make vgpu ppgtt notificaiton as atomic operation + - mac80211: keep BHs disabled while calling drv_tx_wake_queue() + - mmc: tegra: Implement ->set_dma_mask() + - mmc: sdhci: improve ADMA error reporting + - mmc: sdhci-of-esdhc: set DMA snooping based on DMA coherence + - mmc: sdhci: Let drivers define their DMA mask + - Revert "locking/pvqspinlock: Don't wait if vCPU is preempted" + - libnvdimm/altmap: Track namespace boundaries in altmap + - DTS: ARM: gta04: introduce legacy spi-cs-high to make display work again + - xen/balloon: Set pages PageOffline() in balloon_add_region() + - xen/xenbus: fix self-deadlock after killing user process + - ieee802154: atusb: fix use-after-free at disconnect + - nl80211: validate beacon head + - cfg80211: validate SSID/MBSSID element ordering assumption + - cfg80211: initialize on-stack chandefs + - drivers: thermal: qcom: tsens: Fix memory leak from qfprom read + - ima: always return negative code for error + - ima: fix freeing ongoing ahash_request + - fs: nfs: Fix possible null-pointer dereferences in encode_attrs() + - xprtrdma: Toggle XPRT_CONGESTED in xprtrdma's slot methods + - xprtrdma: Send Queue size grows after a reconnect + - 9p: Transport error uninitialized + - 9p: avoid attaching writeback_fid on mmap with type PRIVATE + - xen/pci: reserve MCFG areas earlier + - fuse: fix request limit + - ceph: fix directories inode i_blkbits initialization + - ceph: fetch cap_gen under spinlock in ceph_add_cap + - ceph: reconnect connection if session hang in opening state + - SUNRPC: RPC level errors should always set task->tk_rpc_status + - watchdog: aspeed: Add support for AST2600 + - netfilter: nf_tables: allow lookups in dynamic sets + - drm/amdgpu: Fix KFD-related kernel oops on Hawaii + - drm/amdgpu: Check for valid number of registers to read + - perf probe: Fix to clear tev->nargs in clear_probe_trace_event() + - pNFS: Ensure we do clear the return-on-close layout stateid on fatal errors + - SUNRPC: Don't try to parse incomplete RPC messages + - pwm: stm32-lp: Add check in case requested period cannot be achieved + - selftests/seccomp: fix build on older kernels + - x86/purgatory: Disable the stackleak GCC plugin for the purgatory + - ntb: point to right memory window index + - thermal: Fix use-after-free when unregistering thermal zone device + - thermal_hwmon: Sanitize thermal_zone type + - iommu/amd: Fix downgrading default page-sizes in alloc_pte() + - libnvdimm/region: Initialize bad block for volatile namespaces + - libnvdimm: Fix endian conversion issues + - fuse: fix memleak in cuse_channel_open + - libnvdimm/nfit_test: Fix acpi_handle redefinition + - sched/membarrier: Call sync_core only before usermode for same mm + - sched/membarrier: Fix private expedited registration check + - sched/core: Fix migration to invalid CPU in __set_cpus_allowed_ptr() + - perf build: Add detection of java-11-openjdk-devel package + - include/trace/events/writeback.h: fix -Wstringop-truncation warnings + - selftests/bpf: adjust strobemeta loop to satisfy latest clang + - kernel/elfcore.c: include proper prototypes + - libbpf: fix false uninitialized variable warning + - blk-mq: move lockdep_assert_held() into elevator_exit + - bpf: Fix bpf_event_output re-entry issue + - net: dsa: microchip: Always set regmap stride to 1 + - perf unwind: Fix libunwind build failure on i386 systems + - mlxsw: spectrum_flower: Fail in case user specifies multiple mirror actions + - nfp: abm: fix memory leak in nfp_abm_u32_knode_replace + - drm/radeon: Bail earlier when radeon.cik_/si_support=0 is passed + - Btrfs: fix selftests failure due to uninitialized i_mode in test inodes + - KVM: nVMX: Fix consistency check on injected exception error code + - tick: broadcast-hrtimer: Fix a race in bc_set_next + - perf stat: Reset previous counts on repeat with interval + - riscv: Avoid interrupts being erroneously enabled in handle_exception() + - vfs: Fix EOVERFLOW testing in put_compat_statfs64 + - coresight: etm4x: Use explicit barriers on enable/disable + - staging: erofs: fix an error handling in erofs_readdir() + - staging: erofs: some compressed cluster should be submitted for corrupted + images + - staging: erofs: add two missing erofs_workgroup_put for corrupted images + - staging: erofs: avoid endless loop of invalid lookback distance 0 + - staging: erofs: detect potential multiref due to corrupted images + - libnvdimm: prevent nvdimm from requesting key when security is disabled + - Linux 5.3.6 + * Eoan update: v5.3.4 upstream stable release (LP: #1848046) + - arcnet: provide a buffer big enough to actually receive packets + - cdc_ncm: fix divide-by-zero caused by invalid wMaxPacketSize + - macsec: drop skb sk before calling gro_cells_receive + - net/phy: fix DP83865 10 Mbps HDX loopback disable function + - net: qrtr: Stop rx_worker before freeing node + - net/sched: act_sample: don't push mac header on ip6gre ingress + - net_sched: add max len check for TCA_KIND + - net: stmmac: Fix page pool size + - nfp: flower: fix memory leak in nfp_flower_spawn_vnic_reprs + - nfp: flower: prevent memory leak in nfp_flower_spawn_phy_reprs + - openvswitch: change type of UPCALL_PID attribute to NLA_UNSPEC + - ppp: Fix memory leak in ppp_write + - sch_netem: fix a divide by zero in tabledist() + - selftests: Update fib_tests to handle missing ping6 + - skge: fix checksum byte order + - tcp_bbr: fix quantization code to not raise cwnd if not probing bandwidth + - usbnet: ignore endpoints with invalid wMaxPacketSize + - usbnet: sanity checking of packet sizes and device mtu + - net/rds: Check laddr_check before calling it + - net/mlx5e: Fix matching on tunnel addresses type + - ipv6: fix a typo in fib6_rule_lookup() + - selftests: Update fib_nexthop_multiprefix to handle missing ping6 + - net: phy: micrel: add Asym Pause workaround for KSZ9021 + - net/sched: cbs: Fix not adding cbs instance to list + - ipv4: Revert removal of rt_uses_gateway + - net_sched: add policy validation for action attributes + - vrf: Do not attempt to create IPv6 mcast rule if IPv6 is disabled + - net/mlx5e: Fix traffic duplication in ethtool steering + - net: sched: fix possible crash in tcf_action_destroy() + - tcp: better handle TCP_USER_TIMEOUT in SYN_SENT state + - net/mlx5: Add device ID of upcoming BlueField-2 + - ALSA: hda: Flush interrupts on disabling + - ASoC: SOF: Intel: hda: Make hdac_device device-managed + - cpufreq: ap806: Add NULL check after kcalloc + - ALSA: hda/hdmi - Don't report spurious jack state changes + - regulator: lm363x: Fix off-by-one n_voltages for lm3632 ldo_vpos/ldo_vneg + - regulator: lm363x: Fix n_voltages setting for lm36274 + - spi: dw-mmio: Clock should be shut when error occurs + - ASoC: tlv320aic31xx: suppress error message for EPROBE_DEFER + - ASoC: sgtl5000: Fix of unmute outputs on probe + - ASoC: sgtl5000: Fix charge pump source assignment + - firmware: qcom_scm: Use proper types for dma mappings + - dmaengine: bcm2835: Print error in case setting DMA mask fails + - leds: leds-lp5562 allow firmware files up to the maximum length + - ASoC: SOF: reset DMA state in prepare + - media: dib0700: fix link error for dibx000_i2c_set_speed + - media: mtk-cir: lower de-glitch counter for rc-mm protocol + - ASoC: SOF: pci: mark last_busy value at runtime PM init + - media: exynos4-is: fix leaked of_node references + - media: vivid:add sanity check to avoid divide error and set value to 1 if 0. + - media: vb2: reorder checks in vb2_poll() + - media: vivid: work around high stack usage with clang + - media: hdpvr: Add device num check and handling + - media: i2c: ov5640: Check for devm_gpiod_get_optional() error + - time/tick-broadcast: Fix tick_broadcast_offline() lockdep complaint + - sched/fair: Fix imbalance due to CPU affinity + - sched/core: Fix CPU controller for !RT_GROUP_SCHED + - x86/apic: Make apic_pending_intr_clear() more robust + - sched/deadline: Fix bandwidth accounting at all levels after offline + migration + - x86/reboot: Always use NMI fallback when shutdown via reboot vector IPI + fails + - rcu/tree: Call setschedule() gp ktread to SCHED_FIFO outside of atomic + region + - x86/apic: Soft disable APIC before initializing it + - ALSA: hda - Show the fatal CORB/RIRB error more clearly + - ALSA: i2c: ak4xxx-adda: Fix a possible null pointer dereference in + build_adc_controls() + - rcu: Add destroy_work_on_stack() to match INIT_WORK_ONSTACK() + - EDAC/mc: Fix grain_bits calculation + - arm64: dts: imx8mq: Correct OPP table according to latest datasheet + - media: iguanair: add sanity checks + - cpuidle: teo: Allow tick to be stopped if PM QoS is used + - gpio: madera: Add support for Cirrus Logic CS47L15 + - gpio: madera: Add support for Cirrus Logic CS47L92 + - arm64: mm: free the initrd reserved memblock in a aligned manner + - soc: amlogic: meson-clk-measure: protect measure with a mutex + - base: soc: Export soc_device_register/unregister APIs + - ALSA: usb-audio: Skip bSynchAddress endpoint check if it is invalid + - ia64:unwind: fix double free for mod->arch.init_unw_table + - EDAC/altera: Use the proper type for the IRQ status bits + - ASoC: rsnd: don't call clk_get_rate() under atomic context + - arm64/prefetch: fix a -Wtype-limits warning + - md/raid1: end bio when the device faulty + - md: don't call spare_active in md_reap_sync_thread if all member devices + can't work + - md: don't set In_sync if array is frozen + - media: media/platform: fsl-viu.c: fix build for MICROBLAZE + - media: staging: tegra-vde: Fix build error + - RAS: Build debugfs.o only when enabled in Kconfig + - ASoC: hdac_hda: fix page fault issue by removing race + - ACPI / processor: don't print errors for processorIDs == 0xff + - loop: Add LOOP_SET_DIRECT_IO to compat ioctl + - perf tools: Fix paths in include statements + - EDAC, pnd2: Fix ioremap() size in dnv_rd_reg() + - efi: cper: print AER info of PCIe fatal error + - firmware: arm_scmi: Check if platform has released shmem before using + - sched/fair: Use rq_lock/unlock in online_fair_sched_group + - idle: Prevent late-arriving interrupts from disrupting offline + - blk-mq: Fix memory leak in blk_mq_init_allocated_queue error handling + - media: gspca: zero usb_buf on error + - perf config: Honour $PERF_CONFIG env var to specify alternate .perfconfig + - perf test vfs_getname: Disable ~/.perfconfig to get default output + - media: mtk-mdp: fix reference count on old device tree + - media: i2c: tda1997x: prevent potential NULL pointer access + - media: fdp1: Reduce FCP not found message level to debug + - media: em28xx: modules workqueue not inited for 2nd device + - arm64/efi: Move variable assignments after SECTIONS + - perf unwind: Fix libunwind when tid != pid + - media: rc: imon: Allow iMON RC protocol for ffdc 7e device + - dmaengine: iop-adma: use correct printk format strings + - ARM: xscale: fix multi-cpu compilation + - perf record: Support aarch64 random socket_id assignment + - media: vsp1: fix memory leak of dl on error return path + - media: i2c: ov5645: Fix power sequence + - media: omap3isp: Don't set streaming state on random subdevs + - media: imx: mipi csi-2: Don't fail if initial state times-out + - kasan/arm64: fix CONFIG_KASAN_SW_TAGS && KASAN_INLINE + - net: lpc-enet: fix printk format strings + - m68k: Prevent some compiler warnings in Coldfire builds + - ARM: dts: imx7d: cl-som-imx7: make ethernet work again + - arm64: dts: qcom: qcs404-evb: Mark WCSS clocks protected + - ARM: dts: imx7-colibri: disable HS400 + - x86/platform/intel/iosf_mbi Rewrite locking + - media: radio/si470x: kill urb on error + - media: hdpvr: add terminating 0 at end of string + - ASoC: uniphier: Fix double reset assersion when transitioning to suspend + state + - powerpc/Makefile: Always pass --synthetic to nm if supported + - tools headers: Fixup bitsperlong per arch includes + - ASoC: sun4i-i2s: Don't use the oversample to calculate BCLK + - ASoC: mchp-i2s-mcc: Wait for RX/TX RDY only if controller is running + - led: triggers: Fix a memory leak bug + - ASoC: mchp-i2s-mcc: Fix unprepare of GCLK + - nbd: add missing config put + - ACPI / APEI: Release resources if gen_pool_add() fails + - arm64: entry: Move ct_user_exit before any other exception + - s390/kasan: provide uninstrumented __strlen + - media: mceusb: fix (eliminate) TX IR signal length limit + - media: dvb-frontends: use ida for pll number + - posix-cpu-timers: Sanitize bogus WARNONS + - media: dvb-core: fix a memory leak bug + - EDAC/amd64: Support more than two controllers for chip selects handling + - cpufreq: imx-cpufreq-dt: Add i.MX8MN support + - libperf: Fix alignment trap with xyarray contents in 'perf stat' + - EDAC/amd64: Recognize DRAM device type ECC capability + - EDAC/amd64: Decode syndrome before translating address + - ARM: at91: move platform-specific asm-offset.h to arch/arm/mach-at91 + - soc: renesas: rmobile-sysc: Set GENPD_FLAG_ALWAYS_ON for always-on domain + - soc: renesas: Enable ARM_ERRATA_754322 for affected Cortex-A9 + - PM / devfreq: Fix kernel oops on governor module load + - ARM: OMAP2+: move platform-specific asm-offset.h to arch/arm/mach-omap2 + - PM / devfreq: passive: Use non-devm notifiers + - PM / devfreq: exynos-bus: Correct clock enable sequence + - media: cec-notifier: clear cec_adap in cec_notifier_unregister + - media: saa7146: add cleanup in hexium_attach() + - media: cpia2_usb: fix memory leaks + - media: saa7134: fix terminology around saa7134_i2c_eeprom_md7134_gate() + - perf trace beauty ioctl: Fix off-by-one error in cmd->string table + - perf report: Fix --ns time sort key output + - perf script: Fix memory leaks in list_scripts() + - media: aspeed-video: address a protential usage of an unitialized var + - media: ov9650: add a sanity check + - leds: lm3532: Fixes for the driver for stability + - ASoC: es8316: fix headphone mixer volume table + - ACPI / CPPC: do not require the _PSD method + - sched/cpufreq: Align trace event behavior of fast switching + - arm64: dts: meson: fix boards regulators states format + - x86/apic/vector: Warn when vector space exhaustion breaks affinity + - arm64: kpti: ensure patched kernel text is fetched from PoU + - perf evlist: Use unshare(CLONE_FS) in sb threads to let setns(CLONE_NEWNS) + work + - arm64: Use correct ll/sc atomic constraints + - jump_label: Don't warn on __exit jump entries + - x86/mm/pti: Do not invoke PTI functions when PTI is disabled + - ASoC: fsl_ssi: Fix clock control issue in master mode + - x86/mm/pti: Handle unaligned address gracefully in pti_clone_pagetable() + - nvmet: fix data units read and written counters in SMART log + - nvme-multipath: fix ana log nsid lookup when nsid is not found + - ALSA: firewire-motu: add support for MOTU 4pre + - iommu/amd: Silence warnings under memory pressure + - ASoC: Intel: Haswell: Adjust machine device private context + - libata/ahci: Drop PCS quirk for Denverton and beyond + - iommu/iova: Avoid false sharing on fq_timer_on + - libtraceevent: Change users plugin directory + - ASoC: dt-bindings: sun4i-spdif: Fix dma-names warning + - ARM: dts: exynos: Mark LDO10 as always-on on Peach Pit/Pi Chromebooks + - x86/amd_nb: Add PCI device IDs for family 17h, model 70h + - ACPI: custom_method: fix memory leaks + - ACPI / PCI: fix acpi_pci_irq_enable() memory leak + - closures: fix a race on wakeup from closure_sync + - hwmon: (k10temp) Add support for AMD family 17h, model 70h CPUs + - hwmon: (acpi_power_meter) Change log level for 'unsafe software power cap' + - md/raid1: fail run raid1 array when active disk less than one + - dmaengine: ti: edma: Do not reset reserved paRAM slots + - kprobes: Prohibit probing on BUG() and WARN() address + - x86/mm: Fix cpumask_of_node() error condition + - irqchip/sifive-plic: set max threshold for ignored handlers + - s390/crypto: xts-aes-s390 fix extra run-time crypto self tests finding + - irqchip/gic-v3-its: Fix LPI release for Multi-MSI devices + - x86/cpu: Add Tiger Lake to Intel family + - platform/x86: intel_pmc_core: Do not ioremap RAM + - platform/x86: intel_pmc_core_pltdrv: Module removal warning fix + - ASoC: dmaengine: Make the pcm->name equal to pcm->id if the name is not set + - tools/power/x86/intel-speed-select: Fix memory leak + - spi: bcm2835: Work around DONE bit erratum + - io_uring: fix wrong sequence setting logic + - block: make rq sector size accessible for block stats + - raid5: don't set STRIPE_HANDLE to stripe which is in batch list + - mmc: core: Clarify sdio_irq_pending flag for MMC_CAP2_SDIO_IRQ_NOTHREAD + - sched/psi: Correct overly pessimistic size calculation + - mmc: sdhci: Fix incorrect switch to HS mode + - mmc: core: Add helper function to indicate if SDIO IRQs is enabled + - mmc: dw_mmc: Re-store SDIO IRQs mask at system resume + - raid5: don't increment read_errors on EILSEQ return + - mmc: mtk-sd: Re-store SDIO IRQs mask at system resume + - libertas: Add missing sentinel at end of if_usb.c fw_table + - ALSA: hda - Add a quirk model for fixing Huawei Matebook X right speaker + - ALSA: hda - Drop unsol event handler for Intel HDMI codecs + - drm/amd/powerplay/smu7: enforce minimal VBITimeout (v2) + - media: ttusb-dec: Fix info-leak in ttusb_dec_send_command() + - drm: fix module name in edid_firmware log message + - ALSA: hda/realtek - Blacklist PC beep for Lenovo ThinkCentre M73/93 + - zd1211rw: remove false assertion from zd_mac_clear() + - btrfs: delayed-inode: Kill the BUG_ON() in btrfs_delete_delayed_dir_index() + - btrfs: extent-tree: Make sure we only allocate extents from block groups + with the same type + - btrfs: tree-checker: Add ROOT_ITEM check + - btrfs: Detect unbalanced tree with empty leaf before crashing btree + operations + - kvm: Nested KVM MMUs need PAE root too + - media: omap3isp: Set device on omap3isp subdevs + - PM / devfreq: passive: fix compiler warning + - ARM: dts: logicpd-torpedo-baseboard: Fix missing video + - ARM: omap2plus_defconfig: Fix missing video + - iwlwifi: fw: don't send GEO_TX_POWER_LIMIT command to FW version 36 + - ALSA: firewire-tascam: handle error code when getting current source of + clock + - ALSA: firewire-tascam: check intermediate state of clock status and retry + - scsi: scsi_dh_rdac: zero cdb in send_mode_select() + - scsi: qla2xxx: Fix Relogin to prevent modifying scan_state flag + - printk: Do not lose last line in kmsg buffer dump + - IB/mlx5: Free mpi in mp_slave mode + - IB/hfi1: Define variables as unsigned long to fix KASAN warning + - IB/hfi1: Do not update hcrc for a KDETH packet during fault injection + - RDMA: Fix double-free in srq creation error flow + - randstruct: Check member structs in is_pure_ops_struct() + - ARM: dts: am3517-evm: Fix missing video + - rcu/tree: Fix SCHED_FIFO params + - ALSA: hda/realtek - PCI quirk for Medion E4254 + - blk-mq: add callback of .cleanup_rq + - scsi: implement .cleanup_rq callback + - powerpc/imc: Dont create debugfs files for cpu-less nodes + - tpm_tis_core: Turn on the TPM before probing IRQ's + - tpm_tis_core: Set TPM_CHIP_FLAG_IRQ before probing for interrupts + - tpm: Wrap the buffer from the caller to tpm_buf in tpm_send() + - fuse: fix deadlock with aio poll and fuse_iqueue::waitq.lock + - fuse: fix missing unlock_page in fuse_writepage() + - fuse: fix beyond-end-of-page access in fuse_parse_cache() + - parisc: Disable HP HSC-PCI Cards to prevent kernel crash + - platform/x86: intel_int0002_vgpio: Fix wakeups not working on Cherry Trail + - KVM: x86: always stop emulation on page fault + - KVM: x86: set ctxt->have_exception in x86_decode_insn() + - KVM: x86: Manually calculate reserved bits when loading PDPTRS + - KVM: x86: Disable posted interrupts for non-standard IRQs delivery modes + - kvm: x86: Add "significant index" flag to a few CPUID leaves + - KVM: x86/mmu: Use fast invalidate mechanism to zap MMIO sptes + - media: videobuf-core.c: poll_wait needs a non-NULL buf pointer + - media: sn9c20x: Add MSI MS-1039 laptop to flip_dmi_table + - media: hantro: Set DMA max segment size + - media: don't drop front-end reference count for ->detach + - media: vivid: fix device init when no_error_inj=1 and fb disabled + - spi: ep93xx: Repair SPI CS lookup tables + - spi: spi-fsl-dspi: Exit the ISR with IRQ_NONE when it's not ours + - binfmt_elf: Do not move brk for INTERP-less ET_EXEC + - ASoC: Intel: NHLT: Fix debug print format + - ASoC: Intel: Skylake: Use correct function to access iomem space + - ASoC: Intel: Fix use of potentially uninitialized variable + - staging: erofs: cannot set EROFS_V_Z_INITED_BIT if fill_inode_lazy fails + - ARM: samsung: Fix system restart on S3C6410 + - ARM: zynq: Use memcpy_toio instead of memcpy on smp bring-up + - arm64: tlb: Ensure we execute an ISB following walk cache invalidation + - arm64: dts: rockchip: limit clock rate of MMC controllers for RK3328 + - iommu/arm-smmu-v3: Disable detection of ATS and PRI + - alarmtimer: Use EOPNOTSUPP instead of ENOTSUPP + - iommu/vt-d: Fix wrong analysis whether devices share the same bus + - regulator: Defer init completion for a while after late_initcall + - efifb: BGRT: Improve efifb_bgrt_sanity_check + - gfs2: clear buf_in_tr when ending a transaction in sweep_bh_for_rgrps + - z3fold: fix retry mechanism in page reclaim + - z3fold: fix memory leak in kmem cache + - mm/compaction.c: clear total_{migrate,free}_scanned before scanning a new + zone + - memcg, oom: don't require __GFP_FS when invoking memcg OOM killer + - memcg, kmem: do not fail __GFP_NOFAIL charges + - lib/lzo/lzo1x_compress.c: fix alignment bug in lzo-rle + - mt76: round up length on mt76_wr_copy + - KEYS: trusted: correctly initialize digests and fix locking issue + - ath10k: fix channel info parsing for non tlv target + - i40e: check __I40E_VF_DISABLE bit in i40e_sync_filters_subtask + - block: mq-deadline: Fix queue restart handling + - block: fix null pointer dereference in blk_mq_rq_timed_out() + - smb3: allow disabling requesting leases + - smb3: fix unmount hang in open_shroot + - smb3: fix leak in "open on server" perf counter + - ovl: Fix dereferencing possible ERR_PTR() + - ovl: filter of trusted xattr results in audit + - btrfs: fix allocation of free space cache v1 bitmap pages + - Btrfs: fix use-after-free when using the tree modification log + - btrfs: Relinquish CPUs in btrfs_compare_trees + - btrfs: adjust dirty_metadata_bytes after writeback failure of extent buffer + - btrfs: qgroup: Fix the wrong target io_tree when freeing reserved data space + - btrfs: qgroup: Fix reserved data space leak if we have multiple reserve + calls + - Btrfs: fix race setting up and completing qgroup rescan workers + - btrfs: Fix a regression which we can't convert to SINGLE profile + - SUNRPC: Dequeue the request from the receive queue while we're re-encoding + - SUNRPC: Fix buffer handling of GSS MIC without slack + - ACPI / LPSS: Save/restore LPSS private registers also on Lynxpoint + - md/raid6: Set R5_ReadError when there is read failure on parity disk + - md: don't report active array_state until after revalidate_disk() completes. + - md: only call set_in_sync() when it is expected to succeed. + - cfg80211: Purge frame registrations on iftype change + - /dev/mem: Bail out upon SIGKILL. + - fs: Export generic_fadvise() + - mm: Handle MADV_WILLNEED through vfs_fadvise() + - xfs: Fix stale data exposure when readahead races with hole punch + - ipmi: move message error checking to avoid deadlock + - mtd: rawnand: stm32_fmc2: avoid warnings when building with W=1 option + - ext4: fix warning inside ext4_convert_unwritten_extents_endio + - ext4: fix punch hole for inline_data file systems + - quota: fix wrong condition in is_quota_modification() + - hwrng: core - don't wait on add_early_randomness() + - i2c: riic: Clear NACK in tend isr + - CIFS: fix max ea value size + - CIFS: Fix oplock handling for SMB 2.1+ protocols + - drm/amd/display: Restore backlight brightness after system resume + - drm/amd/display: dce11.x /dce12 update formula input + - drm/amd/display: Add missing HBM support and raise Vega20's uclk. + - drm/amdgpu/display: fix 64 bit divide + - md/raid0: avoid RAID0 data corruption due to layout confusion. + - mt76: mt7615: always release sem in mt7615_load_patch + - mt76: mt7615: fix mt7615 firmware path definitions + - platform/chrome: cros_ec_rpmsg: Fix race with host command when probe failed + - Linux 5.3.4 + * ELAN469D touch pad not working (LP: #1795292) // Ubuntu won't boot on Dell + Inspiron 7375 (LP: #1837688) // Eoan update: v5.3.4 upstream stable release + (LP: #1848046) + - iommu/amd: Override wrong IVRS IOAPIC on Raven Ridge systems + * Eoan update: v5.3.3 upstream stable release (LP: #1848045) + - Linux 5.3.2 + - Revert "Linux 5.3.2" + - Linux 5.3.3 + * Eoan update: v5.3.2 upstream stable release (LP: #1848042) + - netfilter: add missing IS_ENABLED(CONFIG_NF_TABLES) check to header-file. + - clocksource/drivers/timer-of: Do not warn on deferred probe + - clocksource/drivers: Do not warn on probe defer + - drm/amd/display: Allow cursor async updates for framebuffer swaps + - drm/amd/display: Skip determining update type for async updates + - drm/amd/display: Don't replace the dc_state for fast updates + - drm/amd/display: readd -msse2 to prevent Clang from emitting libcalls to + undefined SW FP routines + - powerpc/xive: Fix bogus error code returned by OPAL + - HID: prodikeys: Fix general protection fault during probe + - HID: sony: Fix memory corruption issue on cleanup. + - HID: logitech: Fix general protection fault caused by Logitech driver + - HID: logitech-dj: Fix crash when initial logi_dj_recv_query_paired_devices + fails + - HID: hidraw: Fix invalid read in hidraw_ioctl + - HID: Add quirk for HP X500 PIXART OEM mouse + - mtd: cfi_cmdset_0002: Use chip_good() to retry in do_write_oneword() + - crypto: talitos - fix missing break in switch statement + - clk: imx: imx8mm: fix audio pll setting + - Revert "mm/z3fold.c: fix race between migration and destruction" + - ALSA: usb-audio: Add Hiby device family to quirks for native DSD support + - ALSA: usb-audio: Add DSD support for EVGA NU Audio + - ALSA: dice: fix wrong packet parameter for Alesis iO26 + - ALSA: hda - Add laptop imic fixup for ASUS M9V laptop + - ALSA: hda - Apply AMD controller workaround for Raven platform + - platform/x86: i2c-multi-instantiate: Derive the device name from parent + - objtool: Clobber user CFLAGS variable + - Linux 5.3.2 + * Check for CPU Measurement sampling (LP: #1847590) + - s390/cpumsf: Check for CPU Measurement sampling + * revert the revert of ext4: make __ext4_get_inode_loc plug (LP: #1846486) + - random: try to actively add entropy rather than passively wait for it + - Revert "Revert "ext4: make __ext4_get_inode_loc plug"" + * Fix non-working Realtek USB ethernet after system resume (LP: #1847063) + - r8152: Set macpassthru in reset_resume callback + * overlayfs: allow with shiftfs as underlay (LP: #1846272) + - SAUCE: overlayfs: allow with shiftfs as underlay + * [regression] NoNewPrivileges incompatible with Apparmor (LP: #1844186) + - SAUCE: apparmor: fix nnp subset test for unconfined + * PM / hibernate: fix potential memory corruption (LP: #1847118) + - PM / hibernate: memory_bm_find_bit(): Tighten node optimisation + * Miscellaneous Ubuntu changes + - update dkms package versions + + -- Andrea Righi Thu, 24 Oct 2019 17:05:41 +0200 + +linux-azure (5.3.0-1004.4) eoan; urgency=medium + + * eoan/linux-azure: 5.3.0-1004.4 -proposed tracker (LP: #1848632) + + [ Ubuntu: 5.3.0-19.20 ] + + * eoan/linux: 5.3.0-19.20 -proposed tracker (LP: #1848648) + * eoan kernel does not contain "ipv6: do not free rt if FIB_LOOKUP_NOREF is + set on suppress rule" (LP: #1847478) + - ipv6: do not free rt if FIB_LOOKUP_NOREF is set on suppress rule + + -- Kleber Sacilotto de Souza Fri, 18 Oct 2019 13:33:57 +0200 + +linux-azure (5.3.0-1003.3) eoan; urgency=medium + + * eoan/linux-azure: 5.3.0-1003.3 -proposed tracker (LP: #1847292) + + * Use pyhon3-sphinx instead of python-sphinx for building html docs + (LP: #1845808) + - [Packaging] Update sphinx build dependencies to python3 packages + + * Add bpftool to linux-tools-common (LP: #1774815) + - [Debian] Enable bpftool in linux-tools + + * Miscellaneous Ubuntu changes + - update dkms package versions + + [ Ubuntu: 5.3.0-18.19 ] + + * eoan/linux: 5.3.0-18.19 -proposed tracker (LP: #1847298) + * Enable the Dragonboards out of Eoan/master arm64 kernel (LP: #1846704) + - [Packaging] arm64: snapdragon: introduce a snapdragon flavour + - [Packaging] arm64: snapdragon: switch kernel format to Image + - [Config] arm64: snapdragon: CONFIG_PINCTRL_MSM8916=y + - [Config] arm64: snapdragon: CONFIG_PINCTRL_MSM8994=y + - [Config] arm64: snapdragon: CONFIG_PINCTRL_MSM8996=y + - [Config] arm64: snapdragon: CONFIG_PINCTRL_MSM8998=y + - [Config] arm64: snapdragon: CONFIG_REGULATOR_QCOM_RPMH=y + - [Config] arm64: snapdragon: CONFIG_QCOM_BAM_DMA=y + - [Config] arm64: snapdragon: CONFIG_QCOM_HIDMA_MGMT=y + - [Config] arm64: snapdragon: CONFIG_QCOM_HIDMA=y + - [Config] arm64: snapdragon: CONFIG_COMMON_CLK_QCOM=y + - [Config] arm64: snapdragon: CONFIG_QCOM_CLK_RPMH=y + - [Config] arm64: snapdragon: CONFIG_MSM_GCC_8916=y + - [Config] arm64: snapdragon: CONFIG_MSM_GCC_8994=y + - [Config] arm64: snapdragon: CONFIG_MSM_MMCC_8996=y + - [Config] arm64: snapdragon: CONFIG_MSM_GCC_8998=y + - [Config] arm64: snapdragon: CONFIG_HWSPINLOCK_QCOM=y + - [Config] arm64: snapdragon: CONFIG_QCOM_APCS_IPC=y + - [Config] arm64: snapdragon: CONFIG_RPMSG_QCOM_GLINK_RPM=y + - [Config] arm64: snapdragon: CONFIG_QCOM_GENI_SE=y + - [Config] arm64: snapdragon: CONFIG_QCOM_SMEM=y + - [Config] arm64: snapdragon: CONFIG_QCOM_SMD_RPM=y + - [Config] arm64: snapdragon: CONFIG_QCOM_SMP2P=y + - [Config] arm64: snapdragon: CONFIG_QCOM_SMSM=y + - [Config] arm64: snapdragon: CONFIG_QCOM_QFPROM=y + - [Config] arm64: snapdragon: CONFIG_SERIAL_QCOM_GENI=y + - [Config] arm64: snapdragon: CONFIG_QCOM_TSENS=y + - [Config] arm64: snapdragon: CONFIG_REGULATOR_QCOM_SMD_RPM=y + - [Config] arm64: snapdragon: CONFIG_QCOM_CLK_SMD_RPM=y + - [Config] arm64: snapdragon: CONFIG_RPMSG_QCOM_SMD=y + - [Config] arm64: snapdragon: CONFIG_MFD_QCOM_RPM=y + - [Config] arm64: snapdragon: CONFIG_SCSI_UFSHCD=y + - [Config] arm64: snapdragon: CONFIG_SCSI_UFSHCD_PLATFORM=y + - [Config] arm64: snapdragon: CONFIG_SCSI_UFS_HISI=y + - [Config] arm64: snapdragon: CONFIG_MMC_SDHCI=y + - [Config] arm64: snapdragon: CONFIG_MMC_SDHCI_PLTFM=y + - [Config] arm64: snapdragon: CONFIG_MMC_SDHCI_MSM=y + - [Config] arm64: snapdragon: CONFIG_REGULATOR_QCOM_SPMI=y + - [Config] arm64: snapdragon: CONFIG_PINCTRL_QCOM_SPMI_PMIC=y + - [Config] arm64: snapdragon: CONFIG_PHY_QCOM_USB_HS=y + - [Config] arm64: snapdragon: CONFIG_PHY_QCOM_QMP=y + - [Config] arm64: snapdragon: CONFIG_PHY_QCOM_UFS=y + - [Config] arm64: snapdragon: CONFIG_PHY_QCOM_USB_HSIC=y + - [Config] arm64: snapdragon: CONFIG_USB_CHIPIDEA_OF=y + - [Config] arm64: snapdragon: CONFIG_USB_EHCI_HCD_PLATFORM=y + - [Config] arm64: snapdragon: CONFIG_EXTCON_USB_GPIO=y + - [Config] arm64: snapdragon: CONFIG_REGULATOR_FIXED_VOLTAGE=y + - [Config] arm64: snapdragon: CONFIG_LEDS_GPIO=y + - [Config] arm64: snapdragon: CONFIG_USB_HSIC_USB3503=y + - [Config] arm64: snapdragon: CONFIG_USB_NET_DRIVERS=y + - [Config] arm64: snapdragon: CONFIG_USB_OTG=y + - [Config] arm64: snapdragon: CONFIG_USB_XHCI_PLATFORM=y + - [Config] arm64: snapdragon: CONFIG_USB_OHCI_HCD_PLATFORM=y + - [Config] arm64: snapdragon: CONFIG_USB_MUSB_HDRC=y + - [Config] arm64: snapdragon: CONFIG_USB_DWC3=y + - [Config] arm64: snapdragon: CONFIG_USB_DWC3_PCI=y + - [Config] arm64: snapdragon: CONFIG_USB_DWC3_OF_SIMPLE=y + - [Config] arm64: snapdragon: CONFIG_USB_DWC3_QCOM=y + - [Config] arm64: snapdragon: CONFIG_LEDS_PWM=y + - [Config] arm64: snapdragon: CONFIG_LEDS_TRIGGER_HEARTBEAT=y + - [Config] arm64: snapdragon: CONFIG_LEDS_TRIGGER_DEFAULT_ON=y + - [Config] arm64: snapdragon: CONFIG_QCOM_A53PLL=y + - [Config] arm64: snapdragon: CONFIG_QCOM_CLK_APCS_MSM8916=y + - [Config] arm64: snapdragon: CONFIG_NLS_ISO8859_1=y + - [Config] arm64: snapdragon: CONFIG_USB_USBNET=y + - [Config] arm64: snapdragon: CONFIG_CRYPTO_DEV_QCOM_RNG=y + - [Config] arm64: snapdragon: CONFIG_POWER_RESET_QCOM_PON=y + - [Config] arm64: snapdragon: CONFIG_INPUT_PM8941_PWRKEY=y + - [Config] arm64: snapdragon: CONFIG_KEYBOARD_GPIO=y + - [Config] arm64: snapdragon: CONFIG_RTC_DRV_PM8XXX=y + + -- Paolo Pisati Thu, 10 Oct 2019 11:14:34 +0200 + +linux-azure (5.3.0-1002.2) eoan; urgency=medium + + * Miscellaneous Ubuntu changes + - [Packaging]: really ignore modules + + -- Thadeu Lima de Souza Cascardo Fri, 04 Oct 2019 15:50:48 -0300 + +linux-azure (5.3.0-1001.1) eoan; urgency=medium + + * eoan/linux-azure: 5.3.0-1001.1 -proposed tracker (LP: #1846616) + + * CONFIG_LSM should not specify loadpin since it is not built (LP: #1845383) + - [Config] loadpin shouldn't be in CONFIG_LSM + + * Packaging resync (LP: #1786013) + - [Packaging] update update.conf + + * Miscellaneous Ubuntu changes + - [Config]: Update config based on master + - [Config]: CONFIG_INTEGRITY_PLATFORM_KEYRING=y + - SAUCE: temporarily disable vmbus-rdma + + [ Ubuntu: 5.3.0-17.18 ] + + * eoan/linux: 5.3.0-17.18 -proposed tracker (LP: #1846641) + * CVE-2019-17056 + - nfc: enforce CAP_NET_RAW for raw sockets + * CVE-2019-17055 + - mISDN: enforce CAP_NET_RAW for raw sockets + * CVE-2019-17054 + - appletalk: enforce CAP_NET_RAW for raw sockets + * CVE-2019-17053 + - ieee802154: enforce CAP_NET_RAW for raw sockets + * CVE-2019-17052 + - ax25: enforce CAP_NET_RAW for raw sockets + * CVE-2019-15098 + - ath6kl: fix a NULL-ptr-deref bug in ath6kl_usb_alloc_urb_from_pipe() + * xHCI on AMD Stoney Ridge cannot detect USB 2.0 or 1.1 devices. + (LP: #1846470) + - x86/PCI: Avoid AMD FCH XHCI USB PME# from D0 defect + * Re-enable linux-libc-dev build on i386 (LP: #1846508) + - [Packaging] Build only linux-libc-dev for i386 + - [Debian] final-checks -- ignore archtictures with no binaries + * arm64: loop on boot after installing linux-generic-hwe-18.04-edge/bionic- + proposed (LP: #1845820) + - [Config] Disable CONFIG_ARM_SMMU_DISABLE_BYPASS_BY_DEFAULT + * Revert ESE DASD discard support (LP: #1846219) + - SAUCE: Revert "s390/dasd: Add discard support for ESE volumes" + * Miscellaneous Ubuntu changes + - update dkms package versions + + [ Ubuntu: 5.3.0-16.17 ] + + * eoan/linux: 5.3.0-16.17 -proposed tracker (LP: #1846204) + * zfs fails to build on s390x with debug symbols enabled (LP: #1846143) + - SAUCE: s390: Mark atomic const ops always inline + + [ Ubuntu: 5.3.0-15.16 ] + + * eoan/linux: 5.3.0-15.16 -proposed tracker (LP: #1845987) + * Drop i386 build for 19.10 (LP: #1845714) + - [Packaging] Remove x32 arch references from control files + - [Debian] final-checks -- Get arch list from debian/control + * ZFS kernel modules lack debug symbols (LP: #1840704) + - [Debian] Fix conditional for setting zfs debug package path + * Use pyhon3-sphinx instead of python-sphinx for building html docs + (LP: #1845808) + - [Packaging] Update sphinx build dependencies to python3 packages + * Kernel panic with 19.10 beta image (LP: #1845454) + - efi/tpm: Don't access event->count when it isn't mapped. + - efi/tpm: don't traverse an event log with no events + - efi/tpm: only set efi_tpm_final_log_size after successful event log parsing + + [ Ubuntu: 5.3.0-14.15 ] + + * eoan/linux: 5.3.0-14.15 -proposed tracker (LP: #1845728) + * Drop i386 build for 19.10 (LP: #1845714) + - [Debian] Remove support for producing i386 kernels + - [Debian] Don't use CROSS_COMPILE for i386 configs + * udevadm trigger will fail when trying to add /sys/devices/vio/ + (LP: #1845572) + - SAUCE: powerpc/vio: drop bus_type from parent device + * Trying to online dasd drive results in invalid input/output from the kernel + on z/VM (LP: #1845323) + - SAUCE: s390/dasd: Fix error handling during online processing + * intel-lpss driver conflicts with write-combining MTRR region (LP: #1845584) + - SAUCE: mfd: intel-lpss: add quirk for Dell XPS 13 7390 2-in-1 + * Support Hi1620 zip hw accelerator (LP: #1845355) + - [Config] Enable HiSilicon QM/ZIP as modules + - crypto: hisilicon - add queue management driver for HiSilicon QM module + - crypto: hisilicon - add hardware SGL support + - crypto: hisilicon - add HiSilicon ZIP accelerator support + - crypto: hisilicon - add SRIOV support for ZIP + - Documentation: Add debugfs doc for hisi_zip + - crypto: hisilicon - add debugfs for ZIP and QM + - MAINTAINERS: add maintainer for HiSilicon QM and ZIP controller driver + - crypto: hisilicon - fix kbuild warnings + - crypto: hisilicon - add dependency for CRYPTO_DEV_HISI_ZIP + - crypto: hisilicon - init curr_sgl_dma to fix compile warning + - crypto: hisilicon - add missing single_release + - crypto: hisilicon - fix error handle in hisi_zip_create_req_q + - crypto: hisilicon - Fix warning on printing %p with dma_addr_t + - crypto: hisilicon - Fix return value check in hisi_zip_acompress() + - crypto: hisilicon - avoid unused function warning + * SafeSetID LSM should be built but disabled by default (LP: #1845391) + - LSM: SafeSetID: Stop releasing uninitialized ruleset + - [Config] Build SafeSetID LSM but don't enable it by default + * CONFIG_LSM should not specify loadpin since it is not built (LP: #1845383) + - [Config] loadpin shouldn't be in CONFIG_LSM + * Add new pci-id's for CML-S, ICL (LP: #1845317) + - drm/i915/icl: Add missing device ID + - drm/i915/cml: Add Missing PCI IDs + * Thunderbolt support for ICL (LP: #1844680) + - thunderbolt: Correct path indices for PCIe tunnel + - thunderbolt: Move NVM upgrade support flag to struct icm + - thunderbolt: Use 32-bit writes when writing ring producer/consumer + - thunderbolt: Do not fail adding switch if some port is not implemented + - thunderbolt: Hide switch attributes that are not set + - thunderbolt: Expose active parts of NVM even if upgrade is not supported + - thunderbolt: Add support for Intel Ice Lake + - ACPI / property: Add two new Thunderbolt property GUIDs to the list + * Ubuntu 19.10 - Additional PCI patch and fix (LP: #1844668) + - s390/pci: fix MSI message data + * Enhanced Hardware Support - Finalize Naming (LP: #1842774) + - s390: add support for IBM z15 machines + - [Config] CONFIG_MARCH_Z15=n, CONFIG_TUNE_Z15=n + * Eoan update: v5.3.1 upstream stable release (LP: #1845642) + - USB: usbcore: Fix slab-out-of-bounds bug during device reset + - media: tm6000: double free if usb disconnect while streaming + - phy: renesas: rcar-gen3-usb2: Disable clearing VBUS in over-current + - ip6_gre: fix a dst leak in ip6erspan_tunnel_xmit + - net/sched: fix race between deactivation and dequeue for NOLOCK qdisc + - net_sched: let qdisc_put() accept NULL pointer + - udp: correct reuseport selection with connected sockets + - xen-netfront: do not assume sk_buff_head list is empty in error handling + - net: dsa: Fix load order between DSA drivers and taggers + - net: stmmac: Hold rtnl lock in suspend/resume callbacks + - KVM: coalesced_mmio: add bounds checking + - Documentation: sphinx: Add missing comma to list of strings + - firmware: google: check if size is valid when decoding VPD data + - serial: sprd: correct the wrong sequence of arguments + - tty/serial: atmel: reschedule TX after RX was started + - nl80211: Fix possible Spectre-v1 for CQM RSSI thresholds + - Revert "arm64: Remove unnecessary ISBs from set_{pte,pmd,pud}" + - ovl: fix regression caused by overlapping layers detection + - phy: qcom-qmp: Correct ready status, again + - floppy: fix usercopy direction + - media: technisat-usb2: break out of loop at end of buffer + - Linux 5.3.1 + * ZFS kernel modules lack debug symbols (LP: #1840704) + - [Debian]: Remove hardcoded $(pkgdir) in debug symbols handling + - [Debian]: Handle debug symbols for modules in extras too + - [Debian]: Check/link modules with debug symbols after DKMS modules + - [Debian]: Warn about modules without debug symbols + - [Debian]: dkms-build: new parameter for debug package directory + - [Debian]: dkms-build: zfs: support for debug symbols + - [Debian]: dkms-build: Avoid executing post-processor scripts twice + - [Debian]: dkms-build: Move zfs special-casing into configure script + * /proc/self/maps paths missing on live session (was vlc won't start; eoan + 19.10 & bionic 18.04 ubuntu/lubuntu/kubuntu/xubuntu/ubuntu-mate dailies) + (LP: #1842382) + - SAUCE: Revert "UBUNTU: SAUCE: shiftfs: enable overlayfs on shiftfs" + + [ Ubuntu: 5.3.0-13.14 ] + + * eoan/linux: 5.3.0-13.14 -proposed tracker (LP: #1845105) + * Packaging resync (LP: #1786013) + - [Packaging] update helper scripts + * Miscellaneous Ubuntu changes + - [Debian] Remove binutils-dev build dependency + + [ Ubuntu: 5.3.0-12.13 ] + + * Change kernel compression method to improve boot speed (LP: #1840934) + - [Packaging] Add lz4 build dependency for s390x + * Miscellaneous Ubuntu changes + - SAUCE: Remove spl and zfs source + + [ Ubuntu: 5.3.0-11.12 ] + + * eoan/linux: 5.3.0-11.12 -proposed tracker (LP: #1844144) + * Suspend to RAM(S3) does not wake up for latest megaraid and mpt3sas + adapters(SAS3.5 onwards) (LP: #1838751) + - PCI: Restore Resizable BAR size bits correctly for 1MB BARs + * s390/setup: Actually init kernel lock down (LP: #1843961) + - SAUCE: (lockdown) s390/setup: Actually init kernel lock down + * cherrypick has_sipl fix (LP: #1843960) + - SAUCE: s390/sclp: Fix bit checked for has_sipl + * Change kernel compression method to improve boot speed (LP: #1840934) + - [Config]: Switch kernel compression from LZO to LZ4 on s390x + * Installation fails on eoan/PowerVM : missing /dev/nvram (LP: #1837726) + - [Config] CONFIG_NVRAM=y for ppc64el + * Miscellaneous Ubuntu changes + - [Config]: remove nvram from ppc64el modules ABI + - [Config] Update annotations for recent config changes + - SAUCE: sched: Add __ASSEMBLY__ guards around struct clone_args + - SAUCE: i2c: qcom-geni: Disable DMA processing on the Lenovo Yoga C630 + - SAUCE: arm64: dts: qcom: Add Lenovo Yoga C630 + - update dkms package versions + * Rebase to v5.3 + + [ Ubuntu: 5.3.0-10.11 ] + + * eoan/linux: 5.3.0-10.11 -proposed tracker (LP: #1843232) + * No sound inputs from the external microphone and headset on a Dell machine + (LP: #1842265) + - SAUCE: ALSA: hda - Expand pin_match function to match upcoming new tbls + - SAUCE: ALSA: hda - Define a fallback_pin_fixup_tbl for alc269 family + * Horizontal corrupted line at top of screen caused by framebuffer compression + (LP: #1840236) + - SAUCE: drm/i915/fbc: disable framebuffer compression on IceLake + * Add bpftool to linux-tools-common (LP: #1774815) + - [Debian] package bpftool in linux-tools-common + * Miscellaneous Ubuntu changes + - update dkms package versions + * Rebase to v5.3-rc8 + + [ Ubuntu: 5.3.0-9.10 ] + + * eoan/linux: 5.3.0-9.10 -proposed tracker (LP: #1842393) + * shiftfs: mark kmem_cache as reclaimable (LP: #1842059) + - SAUCE: shiftfs: mark slab objects SLAB_RECLAIM_ACCOUNT + * shiftfs: drop entries from cache on unlink (LP: #1841977) + - SAUCE: shiftfs: fix buggy unlink logic + * Fix touchpad IRQ storm after S3 (LP: #1841396) + - pinctrl: intel: remap the pin number to gpio offset for irq enabled pin + * Please include DTBs for arm64 laptops (LP: #1842050) + - arm64: dts: qcom: Add Lenovo Miix 630 + - arm64: dts: qcom: Add HP Envy x2 + - arm64: dts: qcom: Add Asus NovaGo TP370QL + * Miscellaneous Ubuntu changes + - SAUCE: import aufs driver + - [Packaging]: ignore vbox modules when vbox is disabled + * Rebase to v5.3-rc7 + + [ Ubuntu: 5.3.0-8.9 ] + + * Packaging resync (LP: #1786013) + - [Packaging] resync getabis + * Change kernel compression method to improve boot speed (LP: #1840934) + - [Config] change kernel compression method to improve boot speed + - [Packaging] add build dependencies for compression algorithms + * realtek r8822be kernel module fails after update to linux kernel-headers + 5.0.0-21 (LP: #1838133) + - rtw88: Fix misuse of GENMASK macro + - rtw88: pci: Rearrange the memory usage for skb in RX ISR + - rtw88: pci: Use DMA sync instead of remapping in RX ISR + - rtw88: debug: dump tx power indexes in use + - rtw88: use txpwr_lmt_cfg_pair struct, not arrays + - rtw88: pci: remove set but not used variable 'ip_sel' + - rtw88: allow c2h operation in irq context + - rtw88: enclose c2h cmd handle with mutex + - rtw88: add BT co-existence support + - SAUCE: rtw88: pci: enable MSI interrupt + * VIMC module not available (CONFIG_VIDEO_VIMC not set) (LP: #1831482) + - [Config] Enable VIMC module + * Goodix touchpad may drop first input event (LP: #1840075) + - Revert "UBUNTU: SAUCE: i2c: designware: add G3 3590 into i2c quirk" + - Revert "UBUNTU: SAUCE: i2c: designware: add Inpiron 7591 into i2c quirk" + - Revert "UBUNTU: SAUCE: i2c: designware: add Inpiron/Vostro 7590 into i2c + quirk" + - Revert "UBUNTU: SAUCE: i2c: designware: Add disable runtime pm quirk" + - mfd: intel-lpss: Remove D3cold delay + * Include Sunix serial/parallel driver (LP: #1826716) + - serial: 8250_pci: Add support for Sunix serial boards + - parport: parport_serial: Add support for Sunix Multi I/O boards + * enable lockdown on s390x when Secure IPL is performed (LP: #1839622) + - SAUCE: (lockdown) s390/ipl: lockdown kernel when booted secure + - Ubuntu: [Config] Enable CONFIG_LOCK_DOWN_KERNEL on s390x. + * UBUNTU: SAUCE: shiftfs: pass correct point down (LP: #1837231) + - SAUCE: shiftfs: pass correct point down + * shiftfs: add O_DIRECT support (LP: #1837223) + - SAUCE: shiftfs: add O_DIRECT support + * Miscellaneous Ubuntu changes + - [Config] enable secureboot signing on s390x + - [Config] CONFIG_TEST_BLACKHOLE_DEV=m + - SAUCE: selftests: fib_tests: assign address to dummy1 for rp_filter tests + - [Debian] disable dkms builds for autopktest rebuilds + - update dkms package versions + - [Config] updateconfigs after v5.3-rc6 rebase + * Rebase to v5.3-rc5 + + [ Ubuntu: 5.3.0-7.8 ] + + * Packaging resync (LP: #1786013) + - [Packaging] resync getabis + * Miscellaneous Ubuntu changes + - [Config] updateconfigs after v5.3-rc5 rebase + - remove missing module after updateconfigs + * Rebase to v5.3-rc5 + + [ Ubuntu: 5.3.0-6.7 ] + + * Miscellaneous Ubuntu changes + - SAUCE: selftests/bpf: prevent headers to be compiled as C code + + [ Ubuntu: 5.3.0-5.6 ] + + * Miscellaneous Ubuntu changes + - update dkms package versions + - [Config] enable zfs build + + [ Ubuntu: 5.3.0-4.5 ] + + * Packaging resync (LP: #1786013) + - [Packaging] resync getabis + - [Packaging] update helper scripts + * bcache: bch_allocator_thread(): hung task timeout (LP: #1784665) // Tight + timeout for bcache removal causes spurious failures (LP: #1796292) + - SAUCE: bcache: fix deadlock in bcache_allocator + * shiftfs: allow overlayfs (LP: #1838677) + - SAUCE: shiftfs: enable overlayfs on shiftfs + * Miscellaneous Ubuntu changes + - SAUCE: Revert "kbuild: modpost: do not parse unnecessary rules for vmlinux + modpost" + - update dkms package versions + - enable nvidia dkms build + * Rebase to v5.3-rc4 + + [ Ubuntu: 5.3.0-3.4 ] + + * Miscellaneous Ubuntu changes + - update dkms package versions + - SAUCE: aufs: add "WITH Linux-syscall-note" to SPDX tag of uapi headers + - [Config] add mux-* to modules.ignore + * Rebase to v5.3-rc3 + + [ Ubuntu: 5.3.0-2.3 ] + + * Miscellaneous Ubuntu changes + - [Packaging] add build dependincy on fontconfig + + [ Ubuntu: 5.3.0-1.2 ] + + * System does not auto detect disconnection of external monitor (LP: #1835001) + - SAUCE: drm/i915: Add support for retrying hotplug + - SAUCE: drm/i915: Enable hotplug retry + * Please enable CONFIG_SCSI_UFS_QCOM as a module on arm64 (LP: #1837332) + - [Config] Enable CONFIG_SCSI_UFS_QCOM as a module on arm64. + * Add arm64 CONFIG_ARCH_MESON=y and related configs Edit (LP: #1820530) + - [Config] enable ARCH_MESON + - remove missing module + - [Config] update annotations after enabling ARCH_MESON for arm64 + * Miscellaneous Ubuntu changes + - SAUCE: KVM: PPC: comment implicit fallthrough + - update dkms package versions + - [Config] enable vbox dkms build + * Rebase to v5.3-rc2 + + [ Ubuntu: 5.3.0-0.1 ] + + * Packaging resync (LP: #1786013) + - [Packaging] resync git-ubuntu-log + * Miscellaneous Ubuntu changes + - SAUCE: (efi-lockdown) Add the ability to lock down access to the running + kernel image + - SAUCE: (efi-lockdown) Enforce module signatures if the kernel is locked down + - SAUCE: (efi-lockdown) Restrict /dev/{mem,kmem,port} when the kernel is + locked down + - SAUCE: (efi-lockdown) kexec_load: Disable at runtime if the kernel is locked + down + - SAUCE: (efi-lockdown) Copy secure_boot flag in boot params across kexec + reboot + - SAUCE: (efi-lockdown) kexec_file: split KEXEC_VERIFY_SIG into KEXEC_SIG and + KEXEC_SIG_FORCE + - SAUCE: (efi-lockdown) kexec_file: Restrict at runtime if the kernel is + locked down + - SAUCE: (efi-lockdown) hibernate: Disable when the kernel is locked down + - SAUCE: (efi-lockdown) uswsusp: Disable when the kernel is locked down + - SAUCE: (efi-lockdown) PCI: Lock down BAR access when the kernel is locked + down + - SAUCE: (efi-lockdown) x86: Lock down IO port access when the kernel is + locked down + - SAUCE: (efi-lockdown) x86/msr: Restrict MSR access when the kernel is locked + down + - SAUCE: (efi-lockdown) ACPI: Limit access to custom_method when the kernel is + locked down + - SAUCE: (efi-lockdown) acpi: Ignore acpi_rsdp kernel param when the kernel + has been locked down + - SAUCE: (efi-lockdown) acpi: Disable ACPI table override if the kernel is + locked down + - SAUCE: (efi-lockdown) acpi: Disable APEI error injection if the kernel is + locked down + - SAUCE: (efi-lockdown) Prohibit PCMCIA CIS storage when the kernel is locked + down + - SAUCE: (efi-lockdown) Lock down TIOCSSERIAL + - SAUCE: (efi-lockdown) Lock down module params that specify hardware + parameters (eg. ioport) + - SAUCE: (efi-lockdown) x86/mmiotrace: Lock down the testmmiotrace module + - SAUCE: (efi-lockdown) Lock down /proc/kcore + - SAUCE: (efi-lockdown) Lock down kprobes + - SAUCE: (efi-lockdown) bpf: Restrict kernel image access functions when the + kernel is locked down + - SAUCE: (efi-lockdown) Lock down perf + - SAUCE: (efi-lockdown) debugfs: Restrict debugfs when the kernel is locked + down + - SAUCE: (efi-lockdown) lockdown: Print current->comm in restriction messages + - SAUCE: (efi-lockdown) kexec: Allow kexec_file() with appropriate IMA policy + when locked down + - SAUCE: (efi-lockdown) Add a SysRq option to lift kernel lockdown + - SAUCE: (efi-lockdown) debugfs: avoid EPERM when no open file operation + defined + - SAUCE: (efi-lockdown) Make get_cert_list() not complain about cert lists + that aren't present. + - SAUCE: (efi-lockdown) Add efi_status_to_str() and rework + efi_status_to_err(). + - SAUCE: (efi-lockdown) Make get_cert_list() use efi_status_to_str() to print + error messages. + - SAUCE: (efi-lockdown) efi: Add an EFI_SECURE_BOOT flag to indicate secure + boot mode + - SAUCE: (efi-lockdown) efi: Lock down the kernel if booted in secure boot + mode + - SAUCE: (efi-lockdown) KEYS: Make use of platform keyring for module + signature verify + - SAUCE: (efi-lockdown) efi: Sanitize boot_params in efi stub + - SAUCE: (efi-lockdown) furter KEXEC_VERIFY_SIG -> KEXEC_SIG updates + - SAUCE: (efi-lockdown) arm64: add kernel config option to lock down when in + Secure Boot mode + - SAUCE: import aufs driver + - SAUCE: aufs: rwsem owner changed to atmoic_long_t in 5.3 + - [Config] disable zfs dkms build + - [Config] disable nvidia dkms build + - [Config] disable vbox dkms build + - SAUCE: perf diff: use llabs for s64 vaules + * Rebase to v5.3-rc1 + + [ Ubuntu: 5.3.0-0.0 ] + + * Dummy entry. + + [ Ubuntu: 5.2.0-9.10 ] + + * Packaging resync (LP: #1786013) + - [Packaging] update helper scripts + * input/mouse: alps trackpoint-only device doesn't work (LP: #1836752) + - SAUCE: Input: alps - don't handle ALPS cs19 trackpoint-only device + - SAUCE: Input: alps - fix a mismatch between a condition check and its + comment + * System does not auto detect disconnection of external monitor (LP: #1835001) + - SAUCE: drm/i915: Add support for retrying hotplug + - SAUCE: drm/i915: Enable hotplug retry + * alsa/hdmi: add icelake hdmi audio support for a Dell machine (LP: #1836916) + - SAUCE: ALSA: hda/hdmi - Remove duplicated define + - SAUCE: ALSA: hda/hdmi - Fix i915 reverse port/pin mapping + * First click on Goodix touchpad doesn't be recognized after runtime suspended + (LP: #1836836) + - SAUCE: i2c: designware: add G3 3590 into i2c quirk + * ixgbe{vf} - Physical Function gets IRQ when VF checks link state + (LP: #1836760) + - ixgbevf: Use cached link state instead of re-reading the value for ethtool + * Doing multiple squashfs (and other loop?) mounts in parallel breaks + (LP: #1836914) + - SAUCE: Revert "loop: Don't change loop device under exclusive opener" + * hibmc-drm Causes Unreadable Display for Huawei amd64 Servers (LP: #1762940) + - SAUCE: Make CONFIG_DRM_HISI_HIBMC depend on ARM64 + - [Config] Set CONFIG_DRM_HISI_HIBMC to arm64 only + - [Config] add hibmc-drm to modules.ignore + * hda/realtek: can't detect external mic on a Dell machine (LP: #1836755) + - ALSA: hda/realtek: apply ALC891 headset fixup to one Dell machine + * Enable Armada SOCs and MVPP2 NIC driver for disco/generic arm64 + (LP: #1835054) + - [Config] Enable Armada SOCs and MVPP2 NIC driver for disco/generic arm64 + * Unhide Nvidia HDA audio controller (LP: #1836308) + - PCI: Enable NVIDIA HDA controllers + * Intel ethernet I219 may wrongly detect connection speed as 10Mbps + (LP: #1836177) + - e1000e: Make watchdog use delayed work + * Sometimes touchpad(goodix) can't use tap function (LP: #1836020) + - SAUCE: i2c: designware: add Inpiron/Vostro 7590 into i2c quirk + - SAUCE: i2c: designware: add Inpiron 7591 into i2c quirk + * Intel ethernet I219 has slow RX speed (LP: #1836152) + - e1000e: add workaround for possible stalled packet + - e1000e: disable force K1-off feature + * bcache: risk of data loss on I/O errors in backing or caching devices + (LP: #1829563) + - Revert "bcache: set CACHE_SET_IO_DISABLE in bch_cached_dev_error()" + * bnx2x driver causes 100% CPU load (LP: #1832082) + - bnx2x: Prevent ptp_task to be rescheduled indefinitely + * fcf-protection=none patch with new version + - Revert "UBUNTU: SAUCE: kbuild: add -fcf-protection=none to retpoline flags" + - SAUCE: kbuild: add -fcf-protection=none when using retpoline flags + * CVE-2019-12614 + - powerpc/pseries/dlpar: Fix a missing check in dlpar_parse_cc_property() + * Eoan update: v5.2.1 upstream stable release (LP: #1836622) + - crypto: lrw - use correct alignmask + - crypto: talitos - rename alternative AEAD algos. + - fscrypt: don't set policy for a dead directory + - udf: Fix incorrect final NOT_ALLOCATED (hole) extent length + - media: stv0297: fix frequency range limit + - ALSA: usb-audio: Fix parse of UAC2 Extension Units + - ALSA: hda/realtek - Headphone Mic can't record after S3 + - tpm: Actually fail on TPM errors during "get random" + - tpm: Fix TPM 1.2 Shutdown sequence to prevent future TPM operations + - block: fix .bi_size overflow + - block, bfq: NULL out the bic when it's no longer valid + - perf intel-pt: Fix itrace defaults for perf script + - perf auxtrace: Fix itrace defaults for perf script + - perf intel-pt: Fix itrace defaults for perf script intel-pt documentation + - perf pmu: Fix uncore PMU alias list for ARM64 + - perf thread-stack: Fix thread stack return from kernel for kernel-only case + - perf header: Assign proper ff->ph in perf_event__synthesize_features() + - x86/ptrace: Fix possible spectre-v1 in ptrace_get_debugreg() + - x86/tls: Fix possible spectre-v1 in do_get_thread_area() + - Documentation: Add section about CPU vulnerabilities for Spectre + - Documentation/admin: Remove the vsyscall=native documentation + - mwifiex: Don't abort on small, spec-compliant vendor IEs + - USB: serial: ftdi_sio: add ID for isodebug v1 + - USB: serial: option: add support for GosunCn ME3630 RNDIS mode + - Revert "serial: 8250: Don't service RX FIFO if interrupts are disabled" + - p54usb: Fix race between disconnect and firmware loading + - usb: gadget: f_fs: data_len used before properly set + - usb: gadget: ether: Fix race between gether_disconnect and rx_submit + - usb: dwc2: use a longer AHB idle timeout in dwc2_core_reset() + - usb: renesas_usbhs: add a workaround for a race condition of workqueue + - drivers/usb/typec/tps6598x.c: fix portinfo width + - drivers/usb/typec/tps6598x.c: fix 4CC cmd write + - p54: fix crash during initialization + - staging: comedi: dt282x: fix a null pointer deref on interrupt + - staging: wilc1000: fix error path cleanup in wilc_wlan_initialize() + - staging: bcm2835-camera: Restore return behavior of ctrl_set_bitrate() + - staging: comedi: amplc_pci230: fix null pointer deref on interrupt + - staging: mt7621-pci: fix PCIE_FTS_NUM_LO macro + - HID: Add another Primax PIXART OEM mouse quirk + - lkdtm: support llvm-objcopy + - binder: fix memory leak in error path + - binder: return errors from buffer copy functions + - iio: adc: stm32-adc: add missing vdda-supply + - coresight: Potential uninitialized variable in probe() + - coresight: etb10: Do not call smp_processor_id from preemptible + - coresight: tmc-etr: Do not call smp_processor_id() from preemptible + - coresight: tmc-etr: alloc_perf_buf: Do not call smp_processor_id from + preemptible + - coresight: tmc-etf: Do not call smp_processor_id from preemptible + - carl9170: fix misuse of device driver API + - Revert "x86/build: Move _etext to actual end of .text" + - VMCI: Fix integer overflow in VMCI handle arrays + - staging: vchiq_2835_arm: revert "quit using custom down_interruptible()" + - staging: vchiq: make wait events interruptible + - staging: vchiq: revert "switch to wait_for_completion_killable" + - staging: fsl-dpaa2/ethsw: fix memory leak of switchdev_work + - staging: bcm2835-camera: Replace spinlock protecting context_map with mutex + - staging: bcm2835-camera: Ensure all buffers are returned on disable + - staging: bcm2835-camera: Remove check of the number of buffers supplied + - staging: bcm2835-camera: Handle empty EOS buffers whilst streaming + - staging: rtl8712: reduce stack usage, again + - Linux 5.2.1 + - [Config] updateconfigs after v5.2.1 stable update + * fcf-protection=none patch with upstream version + - Revert "UBUNTU: SAUCE: add -fcf-protection=none to retpoline flags" + - SAUCE: kbuild: add -fcf-protection=none to retpoline flags + * Miscellaneous Ubuntu changes + - SAUCE: selftests/ftrace: avoid failure when trying to probe a notrace + function + - SAUCE: selftests/powerpc/ptrace: fix build failure + - update dkms package versions + - [Packaging] add zlua to zfs-modules.ignore + - update dkms package versions + + [ Ubuntu: 5.2.0-8.9 ] + + * linux: 5.2.0-8.9 -proposed tracker (LP: #1835700) + * Miscellaneous Ubuntu changes + - [Packaging] replace zfs and spl build with zfs 0.8.1-1ubuntu1 + - SAUCE: test_bpf: remove expected fail for Ctx heavy transformations test on + s390 + - SAUCE: add -fcf-protection=none to retpoline flags + - SAUCE: usbip: ensure strings copied using strncpy are null-terminated + - SAUCE: usbip: add -Wno-address-of-packed-member to EXTRA_CFLAGS + - SAUCE: perf jvmti: ensure strncpy result is null-terminated + - update dkms package versions + - add removed zfs modules to modules.ignore + * Rebase to v5.2 + + [ Ubuntu: 5.2.0-7.8 ] + + * Kernel panic upon resetting ixgbe SR-IOV VFIO virtual function using 5.0 + kernel (LP: #1829652) + - SAUCE: ixgbe: Avoid NULL pointer dereference with VF on non-IPsec hw + * Hi1620 driver updates from upstream 5.2 merge window (LP: #1830815) + - net: hns3: initialize CPU reverse mapping + - net: hns3: refine the flow director handle + - net: hns3: add aRFS support for PF + - net: hns3: fix for FEC configuration + - RDMA/hns: Remove unnecessary print message in aeq + - RDMA/hns: Update CQE specifications + - RDMA/hns: Move spin_lock_irqsave to the correct place + - RDMA/hns: Remove jiffies operation in disable interrupt context + - RDMA/hns: Replace magic numbers with #defines + - net: hns3: fix compile warning without CONFIG_RFS_ACCEL + - net: hns3: fix for HNS3_RXD_GRO_SIZE_M macro + - net: hns3: add support for dump firmware statistics by debugfs + - net: hns3: use HCLGE_STATE_NIC_REGISTERED to indicate PF NIC client has + registered + - net: hns3: use HCLGE_STATE_ROCE_REGISTERED to indicate PF ROCE client has + registered + - net: hns3: use HCLGEVF_STATE_NIC_REGISTERED to indicate VF NIC client has + registered + - net: hns3: modify hclge_init_client_instance() + - net: hns3: modify hclgevf_init_client_instance() + - net: hns3: add handshake with hardware while doing reset + - net: hns3: stop schedule reset service while unloading driver + - net: hns3: adjust hns3_uninit_phy()'s location in the hns3_client_uninit() + - net: hns3: fix a memory leak issue for hclge_map_unmap_ring_to_vf_vector + - RDMA/hns: Bugfix for posting multiple srq work request + - net: hns3: remove redundant core reset + - net: hns3: don't configure new VLAN ID into VF VLAN table when it's full + - net: hns3: fix VLAN filter restore issue after reset + - net: hns3: set the port shaper according to MAC speed + - net: hns3: add a check to pointer in error_detected and slot_reset + - net: hns3: set ops to null when unregister ad_dev + - net: hns3: add handling of two bits in MAC tunnel interrupts + - net: hns3: remove setting bit of reset_requests when handling mac tunnel + interrupts + - net: hns3: add opcode about query and clear RAS & MSI-X to special opcode + - net: hns3: delay and separate enabling of NIC and ROCE HW errors + - RDMA/hns: fix inverted logic of readl read and shift + - RDMA/hns: Bugfix for filling the sge of srq + - net: hns3: log detail error info of ROCEE ECC and AXI errors + - net: hns3: fix wrong size of mailbox responding data + - net: hns3: make HW GRO handling compliant with SW GRO + - net: hns3: replace numa_node_id with numa_mem_id for buffer reusing + - net: hns3: refactor hns3_get_new_int_gl function + - net: hns3: trigger VF reset if a VF has an over_8bd_nfe_err + - net: hns3: delete the redundant user NIC codes + - net: hns3: small changes for magic numbers + - net: hns3: use macros instead of magic numbers + - net: hns3: refactor PF/VF RSS hash key configuration + - net: hns3: some modifications to simplify and optimize code + - net: hns3: fix some coding style issues + - net: hns3: delay setting of reset level for hw errors until slot_reset is + called + - net: hns3: fix avoid unnecessary resetting for the H/W errors which do not + require reset + - net: hns3: process H/W errors occurred before HNS dev initialization + - net: hns3: add recovery for the H/W errors occurred before the HNS dev + initialization + - net: hns3: some changes of MSI-X bits in PPU(RCB) + - net: hns3: extract handling of mpf/pf msi-x errors into functions + - net: hns3: clear restting state when initializing HW device + - net: hns3: free irq when exit from abnormal branch + - net: hns3: fix for dereferencing before null checking + - net: hns3: fix for skb leak when doing selftest + - net: hns3: delay ring buffer clearing during reset + - net: hns3: some variable modification + - net: hns3: fix dereference of ae_dev before it is null checked + - scsi: hisi_sas: Delete PHY timers when rmmod or probe failed + - scsi: hisi_sas: Fix the issue of argument mismatch of printing ecc errors + - scsi: hisi_sas: Reduce HISI_SAS_SGE_PAGE_CNT in size + - scsi: hisi_sas: Change the type of some numbers to unsigned + - scsi: hisi_sas: Ignore the error code between phy down to phy up + - scsi: hisi_sas: Disable stash for v3 hw + - net: hns3: Add missing newline at end of file + - RDMa/hns: Don't stuck in endless timeout loop + * Sometimes touchpad automatically trigger double click (LP: #1833484) + - SAUCE: i2c: designware: Add disable runtime pm quirk + * Add pointstick support on HP ZBook 17 G5 (LP: #1833387) + - Revert "HID: multitouch: Support ALPS PTP stick with pid 0x120A" + * depmod may prefer unsigned l-r-m nvidia modules to signed modules + (LP: #1834479) + - [Packaging] dkms-build--nvidia-N -- clean up unsigned ko files + * Miscellaneous Ubuntu changes + - SAUCE: selftests/powerpc: disable signal_fuzzer test + * Rebase to v5.2-rc7 + + [ Ubuntu: 5.2.0-6.7 ] + + * hinic: fix oops due to race in set_rx_mode (LP: #1832048) + - hinic: fix a bug in set rx mode + * Miscellaneous Ubuntu changes + - rebase to v5.2-rc6 + * Rebase to v5.2-rc6 + + [ Ubuntu: 5.2.0-5.6 ] + + * QCA9377 isn't being recognized sometimes (LP: #1757218) + - SAUCE: USB: Disable USB2 LPM at shutdown + * shiftfs: allow changing ro/rw for subvolumes (LP: #1832316) + - SAUCE: shiftfs: allow changing ro/rw for subvolumes + * Miscellaneous Ubuntu changes + - update dkms package versions + - [Packaging] replace nvidia-418 dkms build with nvidia-430 + - SAUCE: import aufs driver + * Rebase to v5.2-rc5 + + [ Ubuntu: 5.2.0-4.5 ] + + * arm64: cma_alloc errors at boot (LP: #1823753) + - [Config] Bump CMA_SIZE_MBYTES to 32 on arm64 + - dma-contiguous: add dma_{alloc,free}_contiguous() helpers + - dma-contiguous: use fallback alloc_pages for single pages + - dma-contiguous: fix !CONFIG_DMA_CMA version of dma_{alloc, + free}_contiguous() + * Miscellaneous Ubuntu changes + - [Config] CONFIG_MFD_TQMX86=n for s390x + - [Config] CONFIG_GPIO_AMD_FCH=n for s390x + - [Config] CONFIG_BACKLIGHT_CLASS_DEVICE=n on s390x + - [Config] CONFIG_LCD_CLASS_DEVICE=n for s390x + - [Config] CONFIG_DRM_ETNAVIV=m for armhf generic-lpae + - [Config] CONFIG_DRM_NOUVEAU_SVM=n + - [Config] CONFIG_HWMON=n for s390x + - [Config] CONFIG_NEW_LEDS=n for s390x + - [Config] CONFIG_MTD_NAND_OMAP2=y for armhf + - [Config] CONFIG_VOP_BUS=n for non-amd64 arches + - [Config] CONFIG_TI_CPSW_PHY_SEL=n + - [Config] CONFIG_INTERCONNECT=n for s390x + - [Config] CONFIG_SCSI_GDTH=n for s390x + - [Config] CONFIG_PACKING=n for s390x + - [Config] CONFIG_ARCH_MILBEAUT=y for armhf + - [Config] update annotations following config review + - update dkms package versions + - [Config] enable nvidia dkms build + * Rebase to v5.2-rc4 + + [ Ubuntu: 5.2.0-3.4 ] + + * [18.04/18.10] File libperf-jvmti.so is missing in linux-tools-common deb on + Ubuntu (LP: #1761379) + - [Packaging] Support building libperf-jvmti.so + * Miscellaneous Ubuntu changes + - SAUCE: Revert "bpf, selftest: test global data/bss/rodata sections" + - update dkms package versions + - [Config] enable zfs + - rebase to v5.2-rc3 + * Rebase to v5.2-rc3 + + [ Ubuntu: 5.2.0-2.3 ] + + * Miscellaneous Ubuntu changes + - SAUCE: perf arm64: Fix mksyscalltbl when system kernel headers are ahead of + the kernel + + [ Ubuntu: 5.2.0-1.2 ] + + * Miscellaneous Ubuntu changes + - [Config] CONFIG_INTEGRITY_PLATFORM_KEYRING=y + - update dkms package versions + - [Config] enable vbox dkms build + - update dkms package versions + * Rebase to v5.2-rc2 + + [ Ubuntu: 5.2.0-0.1 ] + + * Miscellaneous Ubuntu changes + - SAUCE: import aufs driver + - [Packaging] disable ZFS + - [Packaging] disable nvidia + - [Packaging] dkms-build -- expand paths searched for make.log files + - add virtualbox-guest-dkms dkms package build + - enable vbox dkms build for amd64 and i386 + - update dkms package versions + - SAUCE: (efi-lockdown) Add the ability to lock down access to the running + kernel image + - SAUCE: (efi-lockdown) Enforce module signatures if the kernel is locked down + - SAUCE: (efi-lockdown) Restrict /dev/{mem,kmem,port} when the kernel is + locked down + - SAUCE: (efi-lockdown) kexec_load: Disable at runtime if the kernel is locked + down + - SAUCE: (efi-lockdown) Copy secure_boot flag in boot params across kexec + reboot + - SAUCE: (efi-lockdown) kexec_file: split KEXEC_VERIFY_SIG into KEXEC_SIG and + KEXEC_SIG_FORCE + - SAUCE: (efi-lockdown) kexec_file: Restrict at runtime if the kernel is + locked down + - SAUCE: (efi-lockdown) hibernate: Disable when the kernel is locked down + - SAUCE: (efi-lockdown) uswsusp: Disable when the kernel is locked down + - SAUCE: (efi-lockdown) PCI: Lock down BAR access when the kernel is locked + down + - SAUCE: (efi-lockdown) x86: Lock down IO port access when the kernel is + locked down + - SAUCE: (efi-lockdown) x86/msr: Restrict MSR access when the kernel is locked + down + - SAUCE: (efi-lockdown) ACPI: Limit access to custom_method when the kernel is + locked down + - SAUCE: (efi-lockdown) acpi: Ignore acpi_rsdp kernel param when the kernel + has been locked down + - SAUCE: (efi-lockdown) acpi: Disable ACPI table override if the kernel is + locked down + - SAUCE: (efi-lockdown) acpi: Disable APEI error injection if the kernel is + locked down + - SAUCE: (efi-lockdown) Prohibit PCMCIA CIS storage when the kernel is locked + down + - SAUCE: (efi-lockdown) Lock down TIOCSSERIAL + - SAUCE: (efi-lockdown) Lock down module params that specify hardware + parameters (eg. ioport) + - SAUCE: (efi-lockdown) x86/mmiotrace: Lock down the testmmiotrace module + - SAUCE: (efi-lockdown) Lock down /proc/kcore + - SAUCE: (efi-lockdown) Lock down kprobes + - SAUCE: (efi-lockdown) bpf: Restrict kernel image access functions when the + kernel is locked down + - SAUCE: (efi-lockdown) Lock down perf + - SAUCE: (efi-lockdown) debugfs: Restrict debugfs when the kernel is locked + down + - SAUCE: (efi-lockdown) lockdown: Print current->comm in restriction messages + - SAUCE: (efi-lockdown) kexec: Allow kexec_file() with appropriate IMA policy + when locked down + - SAUCE: (efi-lockdown) Make get_cert_list() not complain about cert lists + that aren't present. + - SAUCE: (efi-lockdown) Add efi_status_to_str() and rework + efi_status_to_err(). + - SAUCE: (efi-lockdown) Make get_cert_list() use efi_status_to_str() to print + error messages. + - SAUCE: (efi-lockdown) efi: Add an EFI_SECURE_BOOT flag to indicate secure + boot mode + - SAUCE: (efi-lockdown) efi: Lock down the kernel if booted in secure boot + mode + - SAUCE: (efi-lockdown) KEYS: Make use of platform keyring for module + signature verify + - SAUCE: (efi-lockdown) debugfs: avoid EPERM when no open file operation + defined + - SAUCE: (efi-lockdown) efi: Sanitize boot_params in efi stub + - SAUCE: (efi-lockdown) furter KEXEC_VERIFY_SIG -> KEXEC_SIG updates + - SAUCE: (efi-lockdown) arm64: add kernel config option to lock down when in + Secure Boot mode + - update dkms package versions + - [Config] disable vbox build + - SAUCE: s390: mark __cpacf_check_opcode() and cpacf_query_func() as + __always_inline + - SAUCE: IB/mlx5: use size_t instead of u64 when dividing + * Rebase to v5.2-rc1 + + [ Ubuntu: 5.2.0-0.0 ] + + * Dummy entry. + + [ Ubuntu: 5.1.0-2.2 ] + + * Packaging resync (LP: #1786013) + - [Packaging] resync git-ubuntu-log + * Eoan update: v5.1.2 upstream stable release (LP: #1829050) + - x86/msr-index: Cleanup bit defines + - x86/speculation: Consolidate CPU whitelists + - x86/speculation/mds: Add basic bug infrastructure for MDS + - x86/speculation/mds: Add BUG_MSBDS_ONLY + - x86/kvm: Expose X86_FEATURE_MD_CLEAR to guests + - x86/speculation/mds: Add mds_clear_cpu_buffers() + - x86/speculation/mds: Clear CPU buffers on exit to user + - x86/kvm/vmx: Add MDS protection when L1D Flush is not active + - x86/speculation/mds: Conditionally clear CPU buffers on idle entry + - x86/speculation/mds: Add mitigation control for MDS + - x86/speculation/mds: Add sysfs reporting for MDS + - x86/speculation/mds: Add mitigation mode VMWERV + - Documentation: Move L1TF to separate directory + - Documentation: Add MDS vulnerability documentation + - x86/speculation/mds: Add mds=full,nosmt cmdline option + - x86/speculation: Move arch_smt_update() call to after mitigation decisions + - x86/speculation/mds: Add SMT warning message + - x86/speculation/mds: Fix comment + - x86/speculation/mds: Print SMT vulnerable on MSBDS with mitigations off + - cpu/speculation: Add 'mitigations=' cmdline option + - x86/speculation: Support 'mitigations=' cmdline option + - powerpc/speculation: Support 'mitigations=' cmdline option + - s390/speculation: Support 'mitigations=' cmdline option + - x86/speculation/mds: Add 'mitigations=' support for MDS + - x86/mds: Add MDSUM variant to the MDS documentation + - Documentation: Correct the possible MDS sysfs values + - x86/speculation/mds: Fix documentation typo + - Linux 5.1.2 + * Eoan update: v5.1.1 upstream stable release (LP: #1829046) + - Drivers: hv: vmbus: Remove the undesired put_cpu_ptr() in hv_synic_cleanup() + - ubsan: Fix nasty -Wbuiltin-declaration-mismatch GCC-9 warnings + - staging: greybus: power_supply: fix prop-descriptor request size + - staging: wilc1000: Avoid GFP_KERNEL allocation from atomic context. + - staging: most: cdev: fix chrdev_region leak in mod_exit + - staging: most: sound: pass correct device when creating a sound card + - usb: dwc3: Allow building USB_DWC3_QCOM without EXTCON + - usb: dwc3: Fix default lpm_nyet_threshold value + - USB: serial: f81232: fix interrupt worker not stop + - USB: cdc-acm: fix unthrottle races + - usb-storage: Set virt_boundary_mask to avoid SG overflows + - genirq: Prevent use-after-free and work list corruption + - intel_th: pci: Add Comet Lake support + - iio: adc: qcom-spmi-adc5: Fix of-based module autoloading + - cpufreq: armada-37xx: fix frequency calculation for opp + - ACPI / LPSS: Use acpi_lpss_* instead of acpi_subsys_* functions for + hibernate + - soc: sunxi: Fix missing dependency on REGMAP_MMIO + - scsi: lpfc: change snprintf to scnprintf for possible overflow + - scsi: qla2xxx: Fix incorrect region-size setting in optrom SYSFS routines + - scsi: qla2xxx: Set remote port devloss timeout to 0 + - scsi: qla2xxx: Fix device staying in blocked state + - Bluetooth: hidp: fix buffer overflow + - Bluetooth: Align minimum encryption key size for LE and BR/EDR connections + - Bluetooth: Fix not initializing L2CAP tx_credits + - Bluetooth: hci_bcm: Fix empty regulator supplies for Intel Macs + - UAS: fix alignment of scatter/gather segments + - ASoC: Intel: avoid Oops if DMA setup fails + - i3c: Fix a shift wrap bug in i3c_bus_set_addr_slot_status() + - locking/futex: Allow low-level atomic operations to return -EAGAIN + - arm64: futex: Bound number of LDXR/STXR loops in FUTEX_WAKE_OP + - Linux 5.1.1 + * shiftfs: lock security sensitive superblock flags (LP: #1827122) + - SAUCE: shiftfs: lock down certain superblock flags + * Please package libbpf (which is done out of the kernel src) in Debian [for + 19.10] (LP: #1826410) + - SAUCE: tools -- fix add ability to disable libbfd + * ratelimit cma_alloc messages (LP: #1828092) + - SAUCE: cma: ratelimit cma_alloc error messages + * Headphone jack switch sense is inverted: plugging in headphones disables + headphone output (LP: #1824259) + - ASoC: rt5645: Headphone Jack sense inverts on the LattePanda board + * There are 4 HDMI/Displayport audio output listed in sound setting without + attach any HDMI/DP monitor (LP: #1827967) + - ALSA: hda/hdmi - Read the pin sense from register when repolling + - ALSA: hda/hdmi - Consider eld_valid when reporting jack event + * CONFIG_LOG_BUF_SHIFT set to 14 is too low on arm64 (LP: #1824864) + - [Config] CONFIG_LOG_BUF_SHIFT=18 on all 64bit arches + * CTAUTO:DevOps:860.50:devops4fp1:Error occurred during LINUX Dmesg error + Checking for all LINUX clients for devops4p10 (LP: #1766201) + - SAUCE: integrity: downgrade error to warning + * linux-buildinfo: pull out ABI information into its own package + (LP: #1806380) + - [Packaging] autoreconstruct -- base tag is always primary mainline version + * [SRU] Please sync vbox modules from virtualbox 6.0.6 on next kernel update + (LP: #1825210) + - vbox-update: updates for renamed makefiles + - ubuntu: vbox -- update to 6.0.6-dfsg-1 + * autofs kernel module missing (LP: #1824333) + - [Config] Update autofs4 path in inclusion list + * The Realtek card reader does not enter PCIe 1.1/1.2 (LP: #1825487) + - SAUCE: misc: rtsx: Fixed rts5260 power saving parameter and sd glitch + * CVE-2019-3874 + - sctp: implement memory accounting on tx path + - sctp: implement memory accounting on rx path + * apparmor does not start in Disco LXD containers (LP: #1824812) + - SAUCE: shiftfs: use separate llseek method for directories + * Miscellaneous Ubuntu changes + - [Packaging] autoreconstruct -- remove for -rc kernels + - SAUCE: (efi-lockdown) debugfs: avoid EPERM when no open file operation + defined + - SAUCE: (efi-lockdown) efi: Sanitize boot_params in efi stub + - SAUCE: (efi-lockdown) furter KEXEC_VERIFY_SIG -> KEXEC_SIG updates + - [Config] (efi-lockdown): update configs after efi lockdown patch refresh + - [Packaging] don't delete efi_parser.c + - vbox-update -- do not fix up KERN_DIR or KBUILD_EXTMOD + - ubuntu: vbox -- update to 6.0.6-dfsg-2 + - add nvidia-418 dkms build + - remove virtualbox guest drivers + - [Packaging] dkms-build -- expand paths searched for make.log files + - add virtualbox-guest-dkms dkms package build + - enable vbox dkms build for amd64 and i386 + - [Config] update configs for v5.1(-rc7)? rebase + - update dkms package versions + - Add the ability to lock down access to the running kernel image + - Enforce module signatures if the kernel is locked down + - Restrict /dev/{mem,kmem,port} when the kernel is locked down + - kexec_load: Disable at runtime if the kernel is locked down + - Copy secure_boot flag in boot params across kexec reboot + - kexec_file: split KEXEC_VERIFY_SIG into KEXEC_SIG and KEXEC_SIG_FORCE + - kexec_file: Restrict at runtime if the kernel is locked down + - hibernate: Disable when the kernel is locked down + - uswsusp: Disable when the kernel is locked down + - PCI: Lock down BAR access when the kernel is locked down + - x86: Lock down IO port access when the kernel is locked down + - x86/msr: Restrict MSR access when the kernel is locked down + - ACPI: Limit access to custom_method when the kernel is locked down + - acpi: Ignore acpi_rsdp kernel param when the kernel has been locked down + - acpi: Disable ACPI table override if the kernel is locked down + - acpi: Disable APEI error injection if the kernel is locked down + - Prohibit PCMCIA CIS storage when the kernel is locked down + - Lock down TIOCSSERIAL + - Lock down module params that specify hardware parameters (eg. ioport) + - x86/mmiotrace: Lock down the testmmiotrace module + - Lock down /proc/kcore + - Lock down kprobes + - bpf: Restrict kernel image access functions when the kernel is locked down + - Lock down perf + - debugfs: Restrict debugfs when the kernel is locked down + - lockdown: Print current->comm in restriction messages + - kexec: Allow kexec_file() with appropriate IMA policy when locked down + - Make get_cert_list() not complain about cert lists that aren't present. + - Add efi_status_to_str() and rework efi_status_to_err(). + - Make get_cert_list() use efi_status_to_str() to print error messages. + - efi: Add an EFI_SECURE_BOOT flag to indicate secure boot mode + - efi: Lock down the kernel if booted in secure boot mode + - KEYS: Make use of platform keyring for module signature verify + * Miscellaneous upstream changes + - ALSA: hdea/realtek - Headset fixup for System76 Gazelle (gaze14) + + [ Ubuntu: 5.1.0-1.1 ] + + * bionic: fork out linux-snapdragon into its own topic kernel (LP: #1820868) + - [Packaging]: really drop snapdragon + * Miscellaneous Ubuntu changes + - SAUCE: fix vbox use of MAP_SHARED + - SAUCE: fix vbox use of vm_fault_t + - [Packaging] disable ZFS + - [Packaging] disable nvidia + - SAUCE: perf annotate: Fix build on 32 bit for BPF annotation + - [Config]: updateconfig after rebase to v5.1-rc + - [Config]: build ETNAVIV only on arm platforms + - [Config]: Disable CMA on non-arm platforms + - [Config]: MMC_CQHCI is needed by some built-in drivers + - [Config]: a.out support has been deprecated + - [Config]: R3964 was marked as BROKEN + - [Config]: Add SENSIRION_SGP30 module + * Miscellaneous upstream changes + - Revert "UBUNTU: SAUCE: tools: lib/bpf -- add generated headers to search + path" + - Revert "UBUNTU: SAUCE: btqcomsmd: introduce BT_QCOMSMD_HACK" + + [ Ubuntu: 5.1.0-0.0 ] + + * Dummy entry. + + -- Thadeu Lima de Souza Cascardo Fri, 04 Oct 2019 12:16:16 -0300 + +linux-azure (5.3.0-1000.0) eoan; urgency=medium + + * Empty entry + + -- Thadeu Lima de Souza Cascardo Thu, 03 Oct 2019 16:34:07 -0300 + +linux-azure (5.0.0-1018.19) disco; urgency=medium + + * disco/linux-azure: 5.0.0-1018.19 -proposed tracker (LP: #1840803) + + [ Ubuntu: 5.0.0-27.28 ] + + * disco/linux: 5.0.0-27.28 -proposed tracker (LP: #1840816) + * [Potential Regression] System crashes when running ftrace test in + ubuntu_kernel_selftests (LP: #1840750) + - x86/kprobes: Set instruction page as executable + + -- Khalid Elmously Tue, 20 Aug 2019 17:01:28 -0400 + +linux-azure (5.0.0-1017.18) disco; urgency=medium + + * disco/linux-azure: 5.0.0-1017.18 -proposed tracker (LP: #1840326) + + * [linux-azure] Important InfiniBand patches for Ubuntu 18.04 (LP: #1839673) + - SAUCE: Don't wait in hvnd_query_gid after interface is already bound to ND + - SAUCE: Expose extended attributes for user IB verbs QUERY_DEVICE, CREATE_CQ + and CREATE_QP + + * [linux-azure] CRI-RDOS | Live migration only takes 10 seconds, but the VM + was unavailable for 2 hours (LP: #1837661) + - PCI: hv: Fix a use-after-free bug in hv_eject_device_work() + - SAUCE: PCI: hv: Fix panic by calling hv_pci_remove_slots() earlier + + [ Ubuntu: 5.0.0-26.27 ] + + * disco/linux: 5.0.0-26.27 -proposed tracker (LP: #1839972) + * Packaging resync (LP: #1786013) + - [Packaging] update helper scripts + * alsa/hdmi: add icelake hdmi audio support for a Dell machine (LP: #1836916) + - ALSA: hda: hdmi - add Icelake support + - ALSA: hda/hdmi - Remove duplicated define + - ALSA: hda/hdmi - Fix i915 reverse port/pin mapping + * input/mouse: alps trackpoint-only device doesn't work (LP: #1836752) + - Input: alps - don't handle ALPS cs19 trackpoint-only device + - Input: alps - fix a mismatch between a condition check and its comment + * [18.04 FEAT] Enhanced hardware support (LP: #1836857) + - s390: report new CPU capabilities + - s390: add alignment hints to vector load and store + * System does not auto detect disconnection of external monitor (LP: #1835001) + - drm/i915: Add support for retrying hotplug + - drm/i915: Enable hotplug retry + * [18.04 FEAT] Enhanced CPU-MF hardware counters - kernel part (LP: #1836860) + - s390/cpum_cf: Add support for CPU-MF SVN 6 + - s390/cpumf: Add extended counter set definitions for model 8561 and 8562 + * EeePC 1005px laptop backlight is off after system boot up (LP: #1837117) + - platform/x86: asus-wmi: Only Tell EC the OS will handle display hotkeys from + asus_nb_wmi + * br_netfilter: namespace sysctl operations (LP: #1836910) + - netfilter: bridge: port sysctls to use brnf_net + - netfilter: bridge: namespace bridge netfilter sysctls + - netfilter: bridge: prevent UAF in brnf_exit_net() + * ideapad_laptop disables WiFi/BT radios on Lenovo Y540 (LP: #1837136) + - platform/x86: ideapad-laptop: Remove no_hw_rfkill_list + * shiftfs: allow overlayfs (LP: #1838677) + - SAUCE: shiftfs: enable overlayfs on shiftfs + * bcache: bch_allocator_thread(): hung task timeout (LP: #1784665) + - bcache: never writeback a discard operation + - bcache: improve bcache_reboot() + - SAUCE: bcache: fix deadlock in bcache_allocator + * Regressions in CMA allocation rework (LP: #1839395) + - dma-contiguous: do not overwrite align in dma_alloc_contiguous() + - dma-contiguous: page-align the size in dma_free_contiguous() + * CVE-2019-3900 + - vhost: introduce vhost_exceeds_weight() + - vhost_net: fix possible infinite loop + - vhost: vsock: add weight support + - vhost: scsi: add weight support + * Disco update: 5.0.21 upstream stable release (LP: #1837518) + - bonding/802.3ad: fix slave link initialization transition states + - cxgb4: offload VLAN flows regardless of VLAN ethtype + - inet: switch IP ID generator to siphash + - ipv4/igmp: fix another memory leak in igmpv3_del_delrec() + - ipv4/igmp: fix build error if !CONFIG_IP_MULTICAST + - ipv6: Consider sk_bound_dev_if when binding a raw socket to an address + - ipv6: Fix redirect with VRF + - llc: fix skb leak in llc_build_and_send_ui_pkt() + - mlxsw: spectrum_acl: Avoid warning after identical rules insertion + - net: dsa: mv88e6xxx: fix handling of upper half of STATS_TYPE_PORT + - net: fec: fix the clk mismatch in failed_reset path + - net-gro: fix use-after-free read in napi_gro_frags() + - net: mvneta: Fix err code path of probe + - net: mvpp2: fix bad MVPP2_TXQ_SCHED_TOKEN_CNTR_REG queue value + - net: phy: marvell10g: report if the PHY fails to boot firmware + - net: sched: don't use tc_action->order during action dump + - net: stmmac: fix reset gpio free missing + - r8169: fix MAC address being lost in PCI D3 + - usbnet: fix kernel crash after disconnect + - net/mlx5: Avoid double free in fs init error unwinding path + - tipc: Avoid copying bytes beyond the supplied data + - net/mlx5: Allocate root ns memory using kzalloc to match kfree + - net/mlx5e: Disable rxhash when CQE compress is enabled + - net: stmmac: fix ethtool flow control not able to get/set + - net: stmmac: dma channel control register need to be init first + - bnxt_en: Fix aggregation buffer leak under OOM condition. + - bnxt_en: Fix possible BUG() condition when calling pci_disable_msix(). + - bnxt_en: Reduce memory usage when running in kdump kernel. + - net/tls: fix state removal with feature flags off + - net/tls: don't ignore netdev notifications if no TLS features + - cxgb4: Revert "cxgb4: Remove SGE_HOST_PAGE_SIZE dependency on page size" + - net: correct zerocopy refcnt with udp MSG_MORE + - crypto: vmx - ghash: do nosimd fallback manually + - xen/pciback: Don't disable PCI_COMMAND on PCI device reset. + - Revert "tipc: fix modprobe tipc failed after switch order of device + registration" + - tipc: fix modprobe tipc failed after switch order of device registration + - Linux 5.0.21 + * Disco update: 5.0.20 upstream stable release (LP: #1837517) + - x86: Hide the int3_emulate_call/jmp functions from UML + - ext4: do not delete unlinked inode from orphan list on failed truncate + - ext4: wait for outstanding dio during truncate in nojournal mode + - KVM: x86: fix return value for reserved EFER + - bio: fix improper use of smp_mb__before_atomic() + - sbitmap: fix improper use of smp_mb__before_atomic() + - Revert "scsi: sd: Keep disk read-only when re-reading partition" + - crypto: hash - fix incorrect HASH_MAX_DESCSIZE + - crypto: vmx - CTR: always increment IV as quadword + - mmc: sdhci-iproc: cygnus: Set NO_HISPD bit to fix HS50 data hold time + problem + - mmc: sdhci-iproc: Set NO_HISPD bit to fix HS50 data hold time problem + - kvm: svm/avic: fix off-by-one in checking host APIC ID + - libnvdimm/pmem: Bypass CONFIG_HARDENED_USERCOPY overhead + - arm64/kernel: kaslr: reduce module randomization range to 2 GB + - arm64/iommu: handle non-remapped addresses in ->mmap and ->get_sgtable + - gfs2: Fix sign extension bug in gfs2_update_stats + - btrfs: don't double unlock on error in btrfs_punch_hole + - Btrfs: do not abort transaction at btrfs_update_root() after failure to COW + path + - Btrfs: avoid fallback to transaction commit during fsync of files with holes + - Btrfs: fix race between ranged fsync and writeback of adjacent ranges + - btrfs: sysfs: Fix error path kobject memory leak + - btrfs: sysfs: don't leak memory when failing add fsid + - fbdev: fix divide error in fb_var_to_videomode + - cifs: fix credits leak for SMB1 oplock breaks + - arm64: errata: Add workaround for Cortex-A76 erratum #1463225 + - [Config] Add CONFIG_ARM64_ERRATUM_1463225 + - btrfs: honor path->skip_locking in backref code + - ovl: relax WARN_ON() for overlapping layers use case + - fbdev: fix WARNING in __alloc_pages_nodemask bug + - media: cpia2: Fix use-after-free in cpia2_exit + - media: serial_ir: Fix use-after-free in serial_ir_init_module + - media: vb2: add waiting_in_dqbuf flag + - media: vivid: use vfree() instead of kfree() for dev->bitmap_cap + - ssb: Fix possible NULL pointer dereference in ssb_host_pcmcia_exit + - bpf: devmap: fix use-after-free Read in __dev_map_entry_free + - batman-adv: mcast: fix multicast tt/tvlv worker locking + - at76c50x-usb: Don't register led_trigger if usb_register_driver failed + - acct_on(): don't mess with freeze protection + - netfilter: ctnetlink: Resolve conntrack L3-protocol flush regression + - Revert "btrfs: Honour FITRIM range constraints during free space trim" + - gfs2: Fix lru_count going negative + - cxgb4: Fix error path in cxgb4_init_module + - afs: Fix getting the afs.fid xattr + - NFS: make nfs_match_client killable + - gfs2: fix race between gfs2_freeze_func and unmount + - IB/hfi1: Fix WQ_MEM_RECLAIM warning + - gfs2: Fix occasional glock use-after-free + - mmc: core: Verify SD bus width + - tools/bpf: fix perf build error with uClibc (seen on ARC) + - selftests/bpf: set RLIMIT_MEMLOCK properly for test_libbpf_open.c + - bpftool: exclude bash-completion/bpftool from .gitignore pattern + - ice: Separate if conditions for ice_set_features() + - blk-mq: split blk_mq_alloc_and_init_hctx into two parts + - blk-mq: grab .q_usage_counter when queuing request from plug code path + - dmaengine: tegra210-dma: free dma controller in remove() + - net: ena: gcc 8: fix compilation warning + - net: ena: fix: set freed objects to NULL to avoid failing future allocations + - hv_netvsc: fix race that may miss tx queue wakeup + - Bluetooth: Ignore CC events not matching the last HCI command + - pinctrl: zte: fix leaked of_node references + - ASoC: Intel: kbl_da7219_max98357a: Map BTN_0 to KEY_PLAYPAUSE + - usb: dwc2: gadget: Increase descriptors count for ISOC's + - usb: dwc3: move synchronize_irq() out of the spinlock protected block + - usb: gadget: f_fs: don't free buffer prematurely + - ASoC: hdmi-codec: unlock the device on startup errors + - powerpc/perf: Return accordingly on invalid chip-id in + - powerpc/boot: Fix missing check of lseek() return value + - powerpc/perf: Fix loop exit condition in nest_imc_event_init + - spi: atmel-quadspi: fix crash while suspending + - ASoC: imx: fix fiq dependencies + - spi: pxa2xx: fix SCR (divisor) calculation + - brcm80211: potential NULL dereference in + brcmf_cfg80211_vndr_cmds_dcmd_handler() + - ACPI / property: fix handling of data_nodes in acpi_get_next_subnode() + - drm/nouveau/bar/nv50: ensure BAR is mapped + - media: stm32-dcmi: return appropriate error codes during probe + - ARM: vdso: Remove dependency with the arch_timer driver internals + - arm64: Fix compiler warning from pte_unmap() with -Wunused-but-set-variable + - x86/ftrace: Set trampoline pages as executable + - powerpc/watchdog: Use hrtimers for per-CPU heartbeat + - sched/cpufreq: Fix kobject memleak + - scsi: qla2xxx: Fix a qla24xx_enable_msix() error path + - scsi: qla2xxx: Fix abort handling in tcm_qla2xxx_write_pending() + - scsi: qla2xxx: Avoid that lockdep complains about unsafe locking in + tcm_qla2xxx_close_session() + - scsi: qla2xxx: Fix hardirq-unsafe locking + - x86/modules: Avoid breaking W^X while loading modules + - Btrfs: fix data bytes_may_use underflow with fallocate due to failed quota + reserve + - btrfs: fix panic during relocation after ENOSPC before writeback happens + - btrfs: Don't panic when we can't find a root key + - iwlwifi: pcie: don't crash on invalid RX interrupt + - rtc: 88pm860x: prevent use-after-free on device remove + - rtc: stm32: manage the get_irq probe defer case + - scsi: qedi: Abort ep termination if offload not scheduled + - s390/kexec_file: Fix detection of text segment in ELF loader + - ALSA: hda: fix unregister device twice on ASoC driver + - sched/nohz: Run NOHZ idle load balancer on HK_FLAG_MISC CPUs + - net: ethernet: ti: cpsw: fix allmulti cfg in dual_mac mode + - w1: fix the resume command API + - net: phy: improve genphy_soft_reset + - s390: qeth: address type mismatch warning + - dmaengine: pl330: _stop: clear interrupt status + - mac80211/cfg80211: update bss channel on channel switch + - libbpf: fix samples/bpf build failure due to undefined UINT32_MAX + - slimbus: fix a potential NULL pointer dereference in + of_qcom_slim_ngd_register + - ASoC: fsl_sai: Update is_slave_mode with correct value + - Fix nfs4.2 return -EINVAL when do dedupe operation + - mwifiex: prevent an array overflow + - rsi: Fix NULL pointer dereference in kmalloc + - net: cw1200: fix a NULL pointer dereference + - nvme: set 0 capacity if namespace block size exceeds PAGE_SIZE + - nvme-rdma: fix a NULL deref when an admin connect times out + - nvme-tcp: fix a NULL deref when an admin connect times out + - crypto: sun4i-ss - Fix invalid calculation of hash end + - bcache: avoid potential memleak of list of journal_replay(s) in the + CACHE_SYNC branch of run_cache_set + - bcache: return error immediately in bch_journal_replay() + - bcache: fix failure in journal relplay + - bcache: add failure check to run_cache_set() for journal replay + - bcache: avoid clang -Wunintialized warning + - RDMA/cma: Consider scope_id while binding to ipv6 ll address + - vfio-ccw: Do not call flush_workqueue while holding the spinlock + - vfio-ccw: Release any channel program when releasing/removing vfio-ccw mdev + - x86/build: Move _etext to actual end of .text + - smpboot: Place the __percpu annotation correctly + - x86/uaccess: Dont leak the AC flag into __put_user() argument evaluation + - x86/mm: Remove in_nmi() warning from 64-bit implementation of + vmalloc_fault() + - mm/uaccess: Use 'unsigned long' to placate UBSAN warnings on older GCC + versions + - Bluetooth: hci_qca: Give enough time to ROME controller to bootup. + - Bluetooth: btbcm: Add default address for BCM43341B + - HID: logitech-hidpp: use RAP instead of FAP to get the protocol version + - pinctrl: pistachio: fix leaked of_node references + - pinctrl: st: fix leaked of_node references + - pinctrl: samsung: fix leaked of_node references + - clk: rockchip: undo several noc and special clocks as critical on rk3288 + - perf/arm-cci: Remove broken race mitigation + - dmaengine: at_xdmac: remove BUG_ON macro in tasklet + - media: coda: clear error return value before picture run + - media: ov6650: Move v4l2_clk_get() to ov6650_video_probe() helper + - media: au0828: stop video streaming only when last user stops + - media: ov2659: make S_FMT succeed even if requested format doesn't match + - audit: fix a memory leak bug + - media: stm32-dcmi: fix crash when subdev do not expose any formats + - media: au0828: Fix NULL pointer dereference in au0828_analog_stream_enable() + - media: pvrusb2: Prevent a buffer overflow + - iio: adc: stm32-dfsdm: fix unmet direct dependencies detected + - block: fix use-after-free on gendisk + - powerpc/numa: improve control of topology updates + - powerpc/64: Fix booting large kernels with STRICT_KERNEL_RWX + - random: fix CRNG initialization when random.trust_cpu=1 + - random: add a spinlock_t to struct batched_entropy + - cgroup: protect cgroup->nr_(dying_)descendants by css_set_lock + - sched/core: Check quota and period overflow at usec to nsec conversion + - sched/rt: Check integer overflow at usec to nsec conversion + - sched/core: Handle overflow in cpu_shares_write_u64 + - staging: vc04_services: handle kzalloc failure + - drm/msm/dpu: release resources on modeset failure + - drm/msm: a5xx: fix possible object reference leak + - drm/msm: dpu: Don't set frame_busy_mask for async updates + - drm/msm: Fix NULL pointer dereference + - irq_work: Do not raise an IPI when queueing work on the local CPU + - thunderbolt: Take domain lock in switch sysfs attribute callbacks + - s390/qeth: handle error from qeth_update_from_chp_desc() + - USB: core: Don't unbind interfaces following device reset failure + - x86/irq/64: Limit IST stack overflow check to #DB stack + - drm: etnaviv: avoid DMA API warning when importing buffers + - dt-bindings: phy-qcom-qmp: Add UFS PHY reset + - phy: sun4i-usb: Make sure to disable PHY0 passby for peripheral mode + - phy: mapphone-mdm6600: add gpiolib dependency + - dpaa2-eth: Fix Rx classification status + - i40e: Able to add up to 16 MAC filters on an untrusted VF + - i40e: don't allow changes to HW VLAN stripping on active port VLANs + - ACPI/IORT: Reject platform device creation on NUMA node mapping failure + - arm64: vdso: Fix clock_getres() for CLOCK_REALTIME + - RDMA/cxgb4: Fix null pointer dereference on alloc_skb failure + - perf/x86/msr: Add Icelake support + - perf/x86/intel/rapl: Add Icelake support + - perf/x86/intel/cstate: Add Icelake support + - PM / devfreq: Fix static checker warning in try_then_request_governor + - hwmon: (vt1211) Use request_muxed_region for Super-IO accesses + - hwmon: (smsc47m1) Use request_muxed_region for Super-IO accesses + - hwmon: (smsc47b397) Use request_muxed_region for Super-IO accesses + - hwmon: (pc87427) Use request_muxed_region for Super-IO accesses + - hwmon: (f71805f) Use request_muxed_region for Super-IO accesses + - mmc: core: make pwrseq_emmc (partially) support sleepy GPIO controllers + - mmc_spi: add a status check for spi_sync_locked + - mmc: sdhci-of-esdhc: add erratum eSDHC5 support + - mmc: sdhci-of-esdhc: add erratum A-009204 support + - mmc: sdhci-of-esdhc: add erratum eSDHC-A001 and A-008358 support + - drm/amdgpu: fix old fence check in amdgpu_fence_emit + - PM / core: Propagate dev->power.wakeup_path when no callbacks + - clk: rockchip: Fix video codec clocks on rk3288 + - extcon: arizona: Disable mic detect if running when driver is removed + - clk: rockchip: Make rkpwm a critical clock on rk3288 + - clk: zynqmp: fix check for fractional clock + - s390: zcrypt: initialize variables before_use + - x86/microcode: Fix the ancient deprecated microcode loading method + - s390/mm: silence compiler warning when compiling without CONFIG_PGSTE + - s390: cio: fix cio_irb declaration + - selftests: cgroup: fix cleanup path in test_memcg_subtree_control() + - qmi_wwan: Add quirk for Quectel dynamic config + - cpufreq: ppc_cbe: fix possible object reference leak + - cpufreq/pasemi: fix possible object reference leak + - cpufreq: pmac32: fix possible object reference leak + - cpufreq: kirkwood: fix possible object reference leak + - cpufreq: imx6q: fix possible object reference leak + - block: sed-opal: fix IOC_OPAL_ENABLE_DISABLE_MBR + - samples/bpf: fix build with new clang + - x86/build: Keep local relocations with ld.lld + - regulator: core: Avoid potential deadlock on regulator_unregister + - drm/pl111: fix possible object reference leak + - iio: ad_sigma_delta: Properly handle SPI bus locking vs CS assertion + - iio: hmc5843: fix potential NULL pointer dereferences + - iio: common: ssp_sensors: Initialize calculated_time in + ssp_common_process_data + - iio: adc: ti-ads7950: Fix improper use of mlock + - selftests/bpf: ksym_search won't check symbols exists + - rtlwifi: fix a potential NULL pointer dereference + - mwifiex: Fix mem leak in mwifiex_tm_cmd + - brcmfmac: fix missing checks for kmemdup + - b43: shut up clang -Wuninitialized variable warning + - brcmfmac: convert dev_init_lock mutex to completion + - brcmfmac: fix WARNING during USB disconnect in case of unempty psq + - brcmfmac: fix race during disconnect when USB completion is in progress + - brcmfmac: fix Oops when bringing up interface during USB disconnect + - rtc: xgene: fix possible race condition + - rtlwifi: fix potential NULL pointer dereference + - scsi: ufs: Fix regulator load and icc-level configuration + - scsi: ufs: Avoid configuring regulator with undefined voltage range + - drm/panel: otm8009a: Add delay at the end of initialization + - drm/amd/display: Prevent cursor hotspot overflow for RV overlay planes + - arm64: cpu_ops: fix a leaked reference by adding missing of_node_put + - locking/static_key: Fix false positive warnings on concurrent dec/inc + - wil6210: fix return code of wmi_mgmt_tx and wmi_mgmt_tx_ext + - x86/uaccess, ftrace: Fix ftrace_likely_update() vs. SMAP + - x86/uaccess, signal: Fix AC=1 bloat + - x86/ia32: Fix ia32_restore_sigcontext() AC leak + - x86/uaccess: Fix up the fixup + - chardev: add additional check for minor range overlap + - sh: sh7786: Add explicit I/O cast to sh7786_mm_sel() + - HID: core: move Usage Page concatenation to Main item + - ASoC: eukrea-tlv320: fix a leaked reference by adding missing of_node_put + - ASoC: fsl_utils: fix a leaked reference by adding missing of_node_put + - cxgb3/l2t: Fix undefined behaviour + - clk: renesas: rcar-gen3: Correct parent clock of SYS-DMAC + - block: pass page to xen_biovec_phys_mergeable + - clk: renesas: rcar-gen3: Correct parent clock of Audio-DMAC + - HID: logitech-hidpp: change low battery level threshold from 31 to 30 + percent + - spi: tegra114: reset controller on probe + - kobject: Don't trigger kobject_uevent(KOBJ_REMOVE) twice. + - media: video-mux: fix null pointer dereferences + - media: wl128x: prevent two potential buffer overflows + - media: gspca: Kill URBs on USB device disconnect + - efifb: Omit memory map check on legacy boot + - thunderbolt: property: Fix a missing check of kzalloc + - thunderbolt: Fix to check the return value of kmemdup + - drm: rcar-du: lvds: Set LVEN and LVRES bits together on D3 + - timekeeping: Force upper bound for setting CLOCK_REALTIME + - scsi: qedf: Add missing return in qedf_post_io_req() in the fcport offload + check + - virtio_console: initialize vtermno value for ports + - tty: ipwireless: fix missing checks for ioremap + - staging: mt7621-mmc: Initialize completions a single time during probe + - overflow: Fix -Wtype-limits compilation warnings + - x86/mce: Fix machine_check_poll() tests for error types + - rcutorture: Fix cleanup path for invalid torture_type strings + - x86/mce: Handle varying MCA bank counts + - rcuperf: Fix cleanup path for invalid perf_type strings + - rcu: Do a single rhp->func read in rcu_head_after_call_rcu() + - spi: stm32-qspi: add spi_master_put in release function + - usb: core: Add PM runtime calls to usb_hcd_platform_shutdown + - scsi: qla4xxx: avoid freeing unallocated dma memory + - scsi: lpfc: avoid uninitialized variable warning + - ice: Prevent unintended multiple chain resets + - selinux: avoid uninitialized variable warning + - batman-adv: allow updating DAT entry timeouts on incoming ARP Replies + - dmaengine: tegra210-adma: use devm_clk_*() helpers + - x86/CPU/hygon: Fix phys_proc_id calculation logic for multi-die processors + - staging: mt7621-mmc: Check for nonzero number of scatterlist entries + - hwrng: omap - Set default quality + - thunderbolt: Fix to check return value of ida_simple_get + - thunderbolt: Fix to check for kmemdup failure + - drm/amd/display: fix releasing planes when exiting odm + - drm/amd/display: Link train only when link is DP and backend is enabled + - drm/amd/display: Reset alpha state for planes to the correct values + - thunderbolt: property: Fix a NULL pointer dereference + - media: v4l2-fwnode: The first default data lane is 0 on C-PHY + - media: staging/intel-ipu3: mark PM function as __maybe_unused + - tinydrm/mipi-dbi: Use dma-safe buffers for all SPI transfers + - igb: Exclude device from suspend direct complete optimization + - media: si2165: fix a missing check of return value + - media: dvbsky: Avoid leaking dvb frontend + - media: m88ds3103: serialize reset messages in m88ds3103_set_frontend + - drm/amd/display: add pipe lock during stream update + - media: staging: davinci_vpfe: disallow building with COMPILE_TEST + - drm/amd/display: Fix Divide by 0 in memory calculations + - drm/amd/display: Set stream->mode_changed when connectors change + - scsi: ufs: fix a missing check of devm_reset_control_get + - media: vimc: stream: fix thread state before sleep + - media: gspca: do not resubmit URBs when streaming has stopped + - media: go7007: avoid clang frame overflow warning with KASAN + - media: vimc: zero the media_device on probe + - media: vim2m: replace devm_kzalloc by kzalloc + - media: cedrus: Add a quirk for not setting DMA offset + - scsi: lpfc: Fix FDMI manufacturer attribute value + - scsi: lpfc: Fix fc4type information for FDMI + - media: saa7146: avoid high stack usage with clang + - scsi: lpfc: Fix SLI3 commands being issued on SLI4 devices + - scsi: lpfc: Fix use-after-free mailbox cmd completion + - audit: fix a memleak caused by auditing load module + - spi : spi-topcliff-pch: Fix to handle empty DMA buffers + - drm: writeback: Fix leak of writeback job + - drm/omap: dsi: Fix PM for display blank with paired dss_pll calls + - drm/omap: Notify all devices in the pipeline of output disconnection + - spi: rspi: Fix sequencer reset during initialization + - regulator: wm831x ldo: Fix notifier mutex lock warning + - regulator: wm831x isink: Fix notifier mutex lock warning + - regulator: ltc3676: Fix notifier mutex lock warning + - regulator: ltc3589: Fix notifier mutex lock warning + - regulator: pv88060: Fix notifier mutex lock warning + - spi: imx: stop buffer overflow in RX FIFO flush + - regulator: lp8755: Fix notifier mutex lock warning + - regulator: da9211: Fix notifier mutex lock warning + - regulator: da9063: Fix notifier mutex lock warning + - regulator: pv88080: Fix notifier mutex lock warning + - regulator: wm831x: Fix notifier mutex lock warning + - regulator: pv88090: Fix notifier mutex lock warning + - regulator: da9062: Fix notifier mutex lock warning + - regulator: da9055: Fix notifier mutex lock warning + - spi: Fix zero length xfer bug + - ASoC: davinci-mcasp: Fix clang warning without CONFIG_PM + - ASoC: ti: fix davinci_mcasp_probe dependencies + - drm/v3d: Handle errors from IRQ setup. + - drm/drv: Hold ref on parent device during drm_device lifetime + - drm: Wake up next in drm_read() chain if we are forced to putback the event + - drm/sun4i: dsi: Change the start delay calculation + - vfio-ccw: Prevent quiesce function going into an infinite loop + - ice: Put __ICE_PREPARED_FOR_RESET check in ice_prepare_for_reset + - drm/sun4i: dsi: Enforce boundaries on the start delay + - NFS: Fix a double unlock from nfs_match,get_client + - Linux 5.0.20 + * Disco update: 5.0.19 upstream stable release (LP: #1837516) + - ipv6: fix src addr routing with the exception table + - ipv6: prevent possible fib6 leaks + - net: Always descend into dsa/ + - net: avoid weird emergency message + - net/mlx4_core: Change the error print to info print + - net: test nouarg before dereferencing zerocopy pointers + - net: usb: qmi_wwan: add Telit 0x1260 and 0x1261 compositions + - nfp: flower: add rcu locks when accessing netdev for tunnels + - ppp: deflate: Fix possible crash in deflate_init + - rtnetlink: always put IFLA_LINK for links with a link-netnsid + - tipc: switch order of device registration to fix a crash + - vsock/virtio: free packets during the socket release + - tipc: fix modprobe tipc failed after switch order of device registration + - vsock/virtio: Initialize core virtio vsock before registering the driver + - net/mlx5e: Add missing ethtool driver info for representors + - net/mlx5e: Additional check for flow destination comparison + - net/mlx5: Imply MLXFW in mlx5_core + - net/mlx5e: Fix ethtool rxfh commands when CONFIG_MLX5_EN_RXNFC is disabled + - blk-mq: free hw queue's resource in hctx's release handler + - regulator: core: fix error path for regulator_set_voltage_unlocked + - parisc: Export running_on_qemu symbol for modules + - parisc: Add memory clobber to TLB purges + - parisc: Skip registering LED when running in QEMU + - parisc: Add memory barrier to asm pdc and sync instructions + - parisc: Allow live-patching of __meminit functions + - parisc: Use PA_ASM_LEVEL in boot code + - parisc: Rename LEVEL to PA_ASM_LEVEL to avoid name clash with DRBD code + - stm class: Fix channel free in stm output free path + - stm class: Fix channel bitmap on 32-bit systems + - brd: re-enable __GFP_HIGHMEM in brd_insert_page() + - proc: prevent changes to overridden credentials + - Revert "MD: fix lock contention for flush bios" + - md: batch flush requests. + - md: add mddev->pers to avoid potential NULL pointer dereference + - md: add a missing endianness conversion in check_sb_changes + - dcache: sort the freeing-without-RCU-delay mess for good. + - intel_th: msu: Fix single mode with IOMMU + - p54: drop device reference count if fails to enable device + - of: fix clang -Wunsequenced for be32_to_cpu() + - brcmfmac: Add DMI nvram filename quirk for ACEPC T8 and T11 mini PCs + - phy: ti-pipe3: fix missing bit-wise or operator when assigning val + - media: ov6650: Fix sensor possibly not detected on probe + - media: imx: csi: Allow unknown nearest upstream entities + - media: imx: Clear fwnode link struct for each endpoint iteration + - RDMA/mlx5: Use get_zeroed_page() for clock_info + - RDMA/ipoib: Allow user space differentiate between valid dev_port + - NFS4: Fix v4.0 client state corruption when mount + - PNFS fallback to MDS if no deviceid found + - clk: hi3660: Mark clk_gate_ufs_subsys as critical + - clk: tegra: Fix PLLM programming on Tegra124+ when PMC overrides divider + - clk: mediatek: Disable tuner_en before change PLL rate + - clk: rockchip: fix wrong clock definitions for rk3328 + - udlfb: delete the unused parameter for dlfb_handle_damage + - udlfb: fix sleeping inside spinlock + - udlfb: introduce a rendering mutex + - fuse: fix writepages on 32bit + - fuse: honor RLIMIT_FSIZE in fuse_file_fallocate + - ovl: fix missing upper fs freeze protection on copy up for ioctl + - gcc-plugins: arm_ssp_per_task_plugin: Fix for older GCC < 6 + - iommu/tegra-smmu: Fix invalid ASID bits on Tegra30/114 + - ceph: flush dirty inodes before proceeding with remount + - x86_64: Add gap to int3 to allow for call emulation + - x86_64: Allow breakpoints to emulate call instructions + - ftrace/x86_64: Emulate call function while updating in breakpoint handler + - tracing: Fix partial reading of trace event's id file + - tracing: probeevent: Fix to make the type of $comm string + - memory: tegra: Fix integer overflow on tick value calculation + - perf intel-pt: Fix instructions sampling rate + - perf intel-pt: Fix improved sample timestamp + - perf intel-pt: Fix sample timestamp wrt non-taken branches + - MIPS: perf: Fix build with CONFIG_CPU_BMIPS5000 enabled + - objtool: Allow AR to be overridden with HOSTAR + - x86/mpx, mm/core: Fix recursive munmap() corruption + - fbdev/efifb: Ignore framebuffer memmap entries that lack any memory types + - fbdev: sm712fb: fix brightness control on reboot, don't set SR30 + - fbdev: sm712fb: fix VRAM detection, don't set SR70/71/74/75 + - fbdev: sm712fb: fix white screen of death on reboot, don't set CR3B-CR3F + - fbdev: sm712fb: fix boot screen glitch when sm712fb replaces VGA + - fbdev: sm712fb: fix crashes during framebuffer writes by correctly mapping + VRAM + - fbdev: sm712fb: fix support for 1024x768-16 mode + - fbdev: sm712fb: use 1024x768 by default on non-MIPS, fix garbled display + - fbdev: sm712fb: fix crashes and garbled display during DPMS modesetting + - PCI: Mark AMD Stoney Radeon R7 GPU ATS as broken + - PCI: Mark Atheros AR9462 to avoid bus reset + - PCI: Reset Lenovo ThinkPad P50 nvgpu at boot if necessary + - PCI: Init PCIe feature bits for managed host bridge alloc + - PCI/AER: Change pci_aer_init() stub to return void + - PCI: rcar: Add the initialization of PCIe link in resume_noirq() + - PCI: Factor out pcie_retrain_link() function + - PCI: Work around Pericom PCIe-to-PCI bridge Retrain Link erratum + - dm cache metadata: Fix loading discard bitset + - dm zoned: Fix zone report handling + - dm delay: fix a crash when invalid device is specified + - dm crypt: move detailed message into debug level + - dm integrity: correctly calculate the size of metadata area + - dm mpath: always free attached_handler_name in parse_path() + - fuse: Add FOPEN_STREAM to use stream_open() + - xfrm: policy: Fix out-of-bound array accesses in __xfrm_policy_unlink + - xfrm: Reset secpath in xfrm failure + - xfrm6_tunnel: Fix potential panic when unloading xfrm6_tunnel module + - vti4: ipip tunnel deregistration fixes. + - xfrm: clean up xfrm protocol checks + - esp4: add length check for UDP encapsulation + - xfrm: Honor original L3 slave device in xfrmi policy lookup + - xfrm4: Fix uninitialized memory read in _decode_session4 + - ARC: PAE40: don't panic and instead turn off hw ioc + - clk: sunxi-ng: nkmp: Avoid GENMASK(-1, 0) + - KVM: PPC: Book3S HV: Perserve PSSCR FAKE_SUSPEND bit on guest exit + - KVM: PPC: Book3S: Protect memslots while validating user address + - power: supply: cpcap-battery: Fix division by zero + - securityfs: fix use-after-free on symlink traversal + - apparmorfs: fix use-after-free on symlink traversal + - PCI: Fix issue with "pci=disable_acs_redir" parameter being ignored + - x86: kvm: hyper-v: deal with buggy TLB flush requests from WS2012 + - mac80211: Fix kernel panic due to use of txq after free + - net: ieee802154: fix missing checks for regmap_update_bits + - KVM: arm/arm64: Ensure vcpu target is unset on reset failure + - power: supply: sysfs: prevent endless uevent loop with + CONFIG_POWER_SUPPLY_DEBUG + - tools: bpftool: fix infinite loop in map create + - bpf: Fix preempt_enable_no_resched() abuse + - qmi_wwan: new Wistron, ZTE and D-Link devices + - iwlwifi: mvm: check for length correctness in iwl_mvm_create_skb() + - sched/cpufreq: Fix kobject memleak + - x86/mm/mem_encrypt: Disable all instrumentation for early SME setup + - KVM: fix KVM_CLEAR_DIRTY_LOG for memory slots of unaligned size + - KVM: selftests: make hyperv_cpuid test pass on AMD + - ufs: fix braino in ufs_get_inode_gid() for solaris UFS flavour + - i2c: designware: ratelimit 'transfer when suspended' errors + - perf bench numa: Add define for RUSAGE_THREAD if not present + - perf cs-etm: Always allocate memory for cs_etm_queue::prev_packet + - perf/x86/intel: Fix race in intel_pmu_disable_event() + - Revert "Don't jump to compute_result state from check_result state" + - md/raid: raid5 preserve the writeback action after the parity check + - driver core: Postpone DMA tear-down until after devres release for probe + failure + - bpf: relax inode permission check for retrieving bpf program + - bpf: add map_lookup_elem_sys_only for lookups from syscall side + - bpf, lru: avoid messing with eviction heuristics upon syscall lookup + - fbdev: sm712fb: fix memory frequency by avoiding a switch/case fallthrough + - Linux 5.0.19 + * CVE-2019-13648 + - powerpc/tm: Fix oops on sigreturn on systems without TM + * bcache kernel warning when attaching device (LP: #1837788) + - bcache: only set BCACHE_DEV_WB_RUNNING when cached device attached + * CVE-2019-14283 + - floppy: fix out-of-bounds read in copy_buffer + * CVE-2019-14284 + - floppy: fix div-by-zero in setup_format_params + * alsa/hda: neither mute led nor mic-mute led work on several Lenovo laptops + (LP: #1837963) + - SAUCE: ALSA: hda - Add a conexant codec entry to let mute led work + + -- Marcelo Henrique Cerri Thu, 15 Aug 2019 16:42:52 -0300 + +linux-azure (5.0.0-1016.17) disco; urgency=medium + + * disco/linux-azure: 5.0.0-1016.17 -proposed tracker (LP: #1840275) + + * Azure: Backport vIOMMU driver (increase vCPU limits) (LP: #1826447) + - x86/Hyper-V: Set x2apic destination mode to physical when x2apic is + available + - iommu/hyper-v: Add Hyper-V stub IOMMU driver + - PCI: hv: Replace hv_vp_set with hv_vpset + - PCI: hv: Refactor hv_irq_unmask() to use cpumask_to_vpset() + - [Config] linux-azure: CONFIG_HYPERV_IOMMU=y + + * Packaging resync (LP: #1786013) + - [Packaging] update helper scripts + + -- Marcelo Henrique Cerri Thu, 15 Aug 2019 12:07:56 -0300 + +linux-azure (5.0.0-1014.14) disco; urgency=medium + + * hibmc-drm Causes Unreadable Display for Huawei amd64 Servers (LP: #1762940) + - [Config] Unset CONFIG_DRM_HISI_HIBMC + + * Make possible to load Mellanox OFED modules (LP: #1837397) + - [Config] linux-azure: CONFIG_MLX{4,5}_INFINIBAND=m + + [ Ubuntu: 5.0.0-25.26 ] + + * CVE-2019-1125 + - x86/cpufeatures: Carve out CQM features retrieval + - x86/cpufeatures: Combine word 11 and 12 into a new scattered features word + - x86/speculation: Prepare entry code for Spectre v1 swapgs mitigations + - x86/speculation: Enable Spectre v1 swapgs mitigations + - x86/entry/64: Use JMP instead of JMPQ + - x86/speculation/swapgs: Exclude ATOMs from speculation through SWAPGS + + [ Ubuntu: 5.0.0-24.25 ] + + * disco/linux: 5.0.0-24.25 -proposed tracker (LP: #1838395) + * Packaging resync (LP: #1786013) + - [Packaging] resync git-ubuntu-log + * hibmc-drm Causes Unreadable Display for Huawei amd64 Servers (LP: #1762940) + - [Config] Set CONFIG_DRM_HISI_HIBMC to arm64 only + - SAUCE: Make CONFIG_DRM_HISI_HIBMC depend on ARM64 + * [18.04 FEAT] zKVM: Add hardware CPU Model - kernel part (LP: #1836153) + - KVM: s390: add debug logging for cpu model subfunctions + - KVM: s390: implement subfunction processor calls + - KVM: s390: add vector enhancements facility 2 to cpumodel + - KVM: s390: add vector BCD enhancements facility to cpumodel + - KVM: s390: add MSA9 to cpumodel + - KVM: s390: provide query function for instructions returning 32 byte + - KVM: s390: add enhanced sort facilty to cpu model + - KVM: s390: add deflate conversion facilty to cpu model + - KVM: s390: enable MSA9 keywrapping functions depending on cpu model + * bcache: risk of data loss on I/O errors in backing or caching devices + (LP: #1829563) + - Revert "bcache: set CACHE_SET_IO_DISABLE in bch_cached_dev_error()" + * Intel ethernet I219 has slow RX speed (LP: #1836152) + - SAUCE: e1000e: add workaround for possible stalled packet + - SAUCE: e1000e: disable force K1-off feature + * Intel ethernet I219 may wrongly detect connection speed as 10Mbps + (LP: #1836177) + - SAUCE: e1000e: Make watchdog use delayed work + * Unhide Nvidia HDA audio controller (LP: #1836308) + - PCI: Enable NVIDIA HDA controllers + * Enable Armada SOCs and MVPP2 NIC driver for disco/generic arm64 + (LP: #1835054) + - [Config] Enable Armada SOCs and MVPP2 NIC driver for disco/generic arm64 + * ixgbe{vf} - Physical Function gets IRQ when VF checks link state + (LP: #1836760) + - ixgbevf: Use cached link state instead of re-reading the value for ethtool + * Two crashes on raid0 error path (during a member device removal) + (LP: #1836806) + - block: Fix a NULL pointer dereference in generic_make_request() + - md/raid0: Do not bypass blocking queue entered for raid0 bios + * CVE-2019-13233 + - x86/insn-eval: Fix use-after-free access to LDT entry + * cifs set_oplock buffer overflow in strcat (LP: #1824981) + - cifs: fix strcat buffer overflow and reduce raciness in + smb21_set_oplock_level() + * CVE-2019-13272 + - ptrace: Fix ->ptracer_cred handling for PTRACE_TRACEME + * hda/realtek: can't detect external mic on a Dell machine (LP: #1836755) + - ALSA: hda/realtek: apply ALC891 headset fixup to one Dell machine + * CVE-2019-12614 + - powerpc/pseries/dlpar: Fix a missing check in dlpar_parse_cc_property() + * bnx2x driver causes 100% CPU load (LP: #1832082) + - bnx2x: Prevent ptp_task to be rescheduled indefinitely + * Sometimes touchpad detected as mouse(i2c designware fails to get adapter + number) (LP: #1835150) + - i2c: i2c-designware-platdrv: Cleanup setting of the adapter number + - i2c: i2c-designware-platdrv: Always use a dynamic adapter number + * Disco update: 5.0.18 upstream stable release (LP: #1836614) + - locking/rwsem: Prevent decrement of reader count before increment + - x86/speculation/mds: Revert CPU buffer clear on double fault exit + - x86/speculation/mds: Improve CPU buffer clear documentation + - objtool: Fix function fallthrough detection + - arm64: dts: rockchip: fix IO domain voltage setting of APIO5 on rockpro64 + - arm64: dts: rockchip: Disable DCMDs on RK3399's eMMC controller. + - ARM: dts: qcom: ipq4019: enlarge PCIe BAR range + - ARM: dts: exynos: Fix interrupt for shared EINTs on Exynos5260 + - ARM: dts: exynos: Fix audio (microphone) routing on Odroid XU3 + - mmc: sdhci-of-arasan: Add DTS property to disable DCMDs. + - ARM: exynos: Fix a leaked reference by adding missing of_node_put + - power: supply: axp288_charger: Fix unchecked return value + - power: supply: axp288_fuel_gauge: Add ACEPC T8 and T11 mini PCs to the + blacklist + - arm64: mmap: Ensure file offset is treated as unsigned + - arm64: arch_timer: Ensure counter register reads occur with seqlock held + - arm64: compat: Reduce address limit + - arm64: Clear OSDLR_EL1 on CPU boot + - arm64: Save and restore OSDLR_EL1 across suspend/resume + - sched/x86: Save [ER]FLAGS on context switch + - x86/MCE: Add an MCE-record filtering function + - x86/MCE/AMD: Turn off MC4_MISC thresholding on all family 0x15 models + - x86/MCE/AMD: Carve out the MC4_MISC thresholding quirk + - x86/MCE: Group AMD function prototypes in + - x86/MCE/AMD: Don't report L1 BTB MCA errors on some family 17h models + - crypto: crypto4xx - fix ctr-aes missing output IV + - crypto: crypto4xx - fix cfb and ofb "overran dst buffer" issues + - crypto: salsa20 - don't access already-freed walk.iv + - crypto: lrw - don't access already-freed walk.iv + - crypto: chacha-generic - fix use as arm64 no-NEON fallback + - crypto: chacha20poly1305 - set cra_name correctly + - crypto: ccp - Do not free psp_master when PLATFORM_INIT fails + - crypto: vmx - fix copy-paste error in CTR mode + - crypto: skcipher - don't WARN on unprocessed data after slow walk step + - crypto: crct10dif-generic - fix use via crypto_shash_digest() + - crypto: x86/crct10dif-pcl - fix use via crypto_shash_digest() + - crypto: arm64/gcm-aes-ce - fix no-NEON fallback code + - crypto: gcm - fix incompatibility between "gcm" and "gcm_base" + - crypto: rockchip - update IV buffer to contain the next IV + - crypto: caam/qi2 - fix zero-length buffer DMA mapping + - crypto: caam/qi2 - fix DMA mapping of stack memory + - crypto: caam/qi2 - generate hash keys in-place + - crypto: arm/aes-neonbs - don't access already-freed walk.iv + - crypto: arm64/aes-neonbs - don't access already-freed walk.iv + - mmc: tegra: fix ddr signaling for non-ddr modes + - mmc: core: Fix tag set memory leak + - mmc: sdhci-pci: Fix BYT OCP setting + - ALSA: line6: toneport: Fix broken usage of timer for delayed execution + - ALSA: usb-audio: Fix a memory leak bug + - ALSA: hda/realtek - EAPD turn on later + - ASoC: max98090: Fix restore of DAPM Muxes + - ASoC: RT5677-SPI: Disable 16Bit SPI Transfers + - ASoC: fsl_esai: Fix missing break in switch statement + - ASoC: codec: hdac_hdmi add device_link to card device + - bpf, arm64: remove prefetch insn in xadd mapping + - crypto: ccree - remove special handling of chained sg + - crypto: ccree - fix mem leak on error path + - crypto: ccree - don't map MAC key on stack + - crypto: ccree - use correct internal state sizes for export + - crypto: ccree - don't map AEAD key and IV on stack + - crypto: ccree - pm resume first enable the source clk + - crypto: ccree - HOST_POWER_DOWN_EN should be the last CC access during + suspend + - crypto: ccree - add function to handle cryptocell tee fips error + - crypto: ccree - handle tee fips error during power management resume + - mm/mincore.c: make mincore() more conservative + - mm/huge_memory: fix vmf_insert_pfn_{pmd, pud}() crash, handle unaligned + addresses + - mm/hugetlb.c: don't put_page in lock of hugetlb_lock + - hugetlb: use same fault hash key for shared and private mappings + - ocfs2: fix ocfs2 read inode data panic in ocfs2_iget + - userfaultfd: use RCU to free the task struct when fork fails + - ACPI: PM: Set enable_for_wake for wakeup GPEs during suspend-to-idle + - mfd: da9063: Fix OTP control register names to match datasheets for + DA9063/63L + - mfd: max77620: Fix swapped FPS_PERIOD_MAX_US values + - mtd: spi-nor: intel-spi: Avoid crossing 4K address boundary on read/write + - mtd: maps: physmap: Store gpio_values correctly + - mtd: maps: Allow MTD_PHYSMAP with MTD_RAM + - tty: vt.c: Fix TIOCL_BLANKSCREEN console blanking if blankinterval == 0 + - tty/vt: fix write/write race in ioctl(KDSKBSENT) handler + - jbd2: check superblock mapped prior to committing + - ext4: make sanity check in mballoc more strict + - ext4: ignore e_value_offs for xattrs with value-in-ea-inode + - ext4: avoid drop reference to iloc.bh twice + - ext4: fix use-after-free race with debug_want_extra_isize + - ext4: actually request zeroing of inode table after grow + - ext4: fix ext4_show_options for file systems w/o journal + - btrfs: Check the first key and level for cached extent buffer + - btrfs: Correctly free extent buffer in case btree_read_extent_buffer_pages + fails + - btrfs: Honour FITRIM range constraints during free space trim + - Btrfs: send, flush dellaloc in order to avoid data loss + - Btrfs: do not start a transaction during fiemap + - Btrfs: do not start a transaction at iterate_extent_inodes() + - Btrfs: fix race between send and deduplication that lead to failures and + crashes + - bcache: fix a race between cache register and cacheset unregister + - bcache: never set KEY_PTRS of journal key to 0 in journal_reclaim() + - ipmi:ssif: compare block number correctly for multi-part return messages + - crypto: ccm - fix incompatibility between "ccm" and "ccm_base" + - fs/writeback.c: use rcu_barrier() to wait for inflight wb switches going + into workqueue when umount + - tty: Don't force RISCV SBI console as preferred console + - ext4: fix data corruption caused by overlapping unaligned and aligned IO + - ext4: fix use-after-free in dx_release() + - ext4: avoid panic during forced reboot due to aborted journal + - ALSA: hda/realtek - Fix for Lenovo B50-70 inverted internal microphone bug + - jbd2: fix potential double free + - KVM: Fix the bitmap range to copy during clear dirty + - KVM: x86: Skip EFER vs. guest CPUID checks for host-initiated writes + - KVM: lapic: Busy wait for timer to expire when using hv_timer + - kbuild: turn auto.conf.cmd into a mandatory include file + - xen/pvh: set xen_domain_type to HVM in xen_pvh_init + - xen/pvh: correctly setup the PV EFI interface for dom0 + - libnvdimm/namespace: Fix label tracking error + - iov_iter: optimize page_copy_sane() + - mm/gup: Remove the 'write' parameter from gup_fast_permitted() + - s390/mm: make the pxd_offset functions more robust + - s390/mm: convert to the generic get_user_pages_fast code + - ext4: fix compile error when using BUFFER_TRACE + - ext4: don't update s_rev_level if not required + - Linux 5.0.18 + * Disco update: 5.0.17 upstream stable release (LP: #1836577) + - bfq: update internal depth state when queue depth changes + - platform/x86: sony-laptop: Fix unintentional fall-through + - platform/x86: thinkpad_acpi: Disable Bluetooth for some machines + - platform/x86: dell-laptop: fix rfkill functionality + - hwmon: (pwm-fan) Disable PWM if fetching cooling data fails + - hwmon: (occ) Fix extended status bits + - selftests/seccomp: Handle namespace failures gracefully + - kernfs: fix barrier usage in __kernfs_new_node() + - virt: vbox: Sanity-check parameter types for hgcm-calls coming from + userspace + - USB: serial: fix unthrottle races + - iio: adc: xilinx: fix potential use-after-free on remove + - iio: adc: xilinx: fix potential use-after-free on probe + - iio: adc: xilinx: prevent touching unclocked h/w on remove + - acpi/nfit: Always dump _DSM output payload + - libnvdimm/namespace: Fix a potential NULL pointer dereference + - HID: input: add mapping for Expose/Overview key + - HID: input: add mapping for keyboard Brightness Up/Down/Toggle keys + - HID: input: add mapping for "Toggle Display" key + - libnvdimm/btt: Fix a kmemdup failure check + - s390/dasd: Fix capacity calculation for large volumes + - mac80211: fix unaligned access in mesh table hash function + - mac80211: Increase MAX_MSG_LEN + - cfg80211: Handle WMM rules in regulatory domain intersection + - mac80211: fix memory accounting with A-MSDU aggregation + - nl80211: Add NL80211_FLAG_CLEAR_SKB flag for other NL commands + - libnvdimm/security: provide fix for secure-erase to use zero-key + - libnvdimm/pmem: fix a possible OOB access when read and write pmem + - tools/testing/nvdimm: Retain security state after overwrite + - s390/3270: fix lockdep false positive on view->lock + - drm/ttm: fix dma_fence refcount imbalance on error path + - drm/amd/display: extending AUX SW Timeout + - clocksource/drivers/npcm: select TIMER_OF + - clocksource/drivers/oxnas: Fix OX820 compatible + - selftests: fib_tests: Fix 'Command line is not complete' errors + - drm/amdgpu: shadow in shadow_list without tbo.mem.start cause page fault in + sriov TDR + - mISDN: Check address length before reading address family + - vxge: fix return of a free'd memblock on a failed dma mapping + - qede: fix write to free'd pointer error and double free of ptp + - afs: Unlock pages for __pagevec_release() + - afs: Fix in-progess ops to ignore server-level callback invalidation + - qed: Delete redundant doorbell recovery types + - qed: Fix the doorbell address sanity check + - qed: Fix missing DORQ attentions + - qed: Fix the DORQ's attentions handling + - drm/amd/display: If one stream full updates, full update all planes + - s390/pkey: add one more argument space for debug feature entry + - x86/build/lto: Fix truncated .bss with -fdata-sections + - x86/mm: Prevent bogus warnings with "noexec=off" + - x86/reboot, efi: Use EFI reboot for Acer TravelMate X514-51T + - KVM: nVMX: always use early vmcs check when EPT is disabled + - KVM: fix spectrev1 gadgets + - KVM: x86: avoid misreporting level-triggered irqs as edge-triggered in + tracing + - tools lib traceevent: Fix missing equality check for strcmp + - perf top: Always sample time to satisfy needs of use of ordered queuing + - ipmi: ipmi_si_hardcode.c: init si_type array to fix a crash + - ocelot: Don't sleep in atomic context (irqs_disabled()) + - perf tools: Fix map reference counting + - scsi: aic7xxx: fix EISA support + - slab: store tagged freelist for off-slab slabmgmt + - mm/hotplug: treat CMA pages as unmovable + - mm: fix inactive list balancing between NUMA nodes and cgroups + - init: initialize jump labels before command line option parsing + - drm: bridge: dw-hdmi: Fix overflow workaround for Rockchip SoCs + - selftests: netfilter: check icmp pkttoobig errors are set as related + - ipvs: do not schedule icmp errors from tunnels + - netfilter: ctnetlink: don't use conntrack/expect object addresses as id + - netfilter: nf_tables: prevent shift wrap in nft_chain_parse_hook() + - netfilter: nat: fix icmp id randomization + - MIPS: perf: ath79: Fix perfcount IRQ assignment + - IB/mlx5: Fix scatter to CQE in DCT QP creation + - s390: ctcm: fix ctcm_new_device error return code + - drm/sun4i: Set device driver data at bind time for use in unbind + - drm/sun4i: Fix component unbinding and component master deletion + - of_net: Fix residues after of_get_nvmem_mac_address removal + - selftests/net: correct the return value for run_afpackettests + - netfilter: never get/set skb->tstamp + - netfilter: fix nf_l4proto_log_invalid to log invalid packets + - dmaengine: bcm2835: Avoid GFP_KERNEL in device_prep_slave_sg + - gpu: ipu-v3: dp: fix CSC handling + - drm/imx: don't skip DP channel disable for background plane + - ARM: fix function graph tracer and unwinder dependencies + - ARM: 8856/1: NOMMU: Fix CCR register faulty initialization when MPU is + disabled + - spi: Micrel eth switch: declare missing of table + - spi: ST ST95HF NFC: declare missing of table + - ceph: handle the case where a dentry has been renamed on outstanding req + - Revert "drm/virtio: drop prime import/export callbacks" + - drm/sun4i: Unbind components before releasing DRM and memory + - Input: snvs_pwrkey - make it depend on ARCH_MXC + - Input: synaptics-rmi4 - fix possible double free + - net: vrf: Fix operation not supported when set vrf mac + - gpio: Fix gpiochip_add_data_with_key() error path + - mm/memory_hotplug.c: drop memory device reference after find_memory_block() + - mm/page_alloc.c: avoid potential NULL pointer dereference + - bpf: only test gso type on gso packets + - net: sched: fix cleanup NULL pointer exception in act_mirr + - net: mvpp2: fix validate for PPv2.1 + - drm/rockchip: fix for mailbox read validation. + - cw1200: fix missing unlock on error in cw1200_hw_scan() + - mwl8k: Fix rate_idx underflow + - rtlwifi: rtl8723ae: Fix missing break in switch statement + - Don't jump to compute_result state from check_result state + - bonding: fix arp_validate toggling in active-backup mode + - bridge: Fix error path for kobject_init_and_add() + - dpaa_eth: fix SG frame cleanup + - fib_rules: return 0 directly if an exactly same rule exists when NLM_F_EXCL + not supplied + - ipv4: Fix raw socket lookup for local traffic + - net: dsa: Fix error cleanup path in dsa_init_module + - net: ethernet: stmmac: dwmac-sun8i: enable support of unicast filtering + - net: macb: Change interrupt and napi enable order in open + - net: seeq: fix crash caused by not set dev.parent + - net: ucc_geth - fix Oops when changing number of buffers in the ring + - packet: Fix error path in packet_init + - selinux: do not report error on connect(AF_UNSPEC) + - tipc: fix hanging clients using poll with EPOLLOUT flag + - vlan: disable SIOCSHWTSTAMP in container + - vrf: sit mtu should not be updated when vrf netdev is the link + - tuntap: fix dividing by zero in ebpf queue selection + - tuntap: synchronize through tfiles array instead of tun->numqueues + - net: phy: fix phy_validate_pause + - flow_dissector: disable preemption around BPF calls + - isdn: bas_gigaset: use usb_fill_int_urb() properly + - drivers/virt/fsl_hypervisor.c: dereferencing error pointers in ioctl + - drivers/virt/fsl_hypervisor.c: prevent integer overflow in ioctl + - powerpc/book3s/64: check for NULL pointer in pgd_alloc() + - powerpc/powernv/idle: Restore IAMR after idle + - powerpc/booke64: set RI in default MSR + - virtio_ring: Fix potential mem leak in virtqueue_add_indirect_packed + - PCI: hv: Fix a memory leak in hv_eject_device_work() + - PCI: hv: Add hv_pci_remove_slots() when we unload the driver + - PCI: hv: Add pci_destroy_slot() in pci_devices_present_work(), if necessary + - f2fs: Fix use of number of devices + - Linux 5.0.17 + - [Config] update configs after update to 5.0.17 + * Disco update: 5.0.16 upstream stable release (LP: #1835580) + - Linux 5.0.16 + * CVE-2019-10126 + - mwifiex: Fix heap overflow in mwifiex_uap_parse_tail_ies() + * CVE-2019-3846 + - mwifiex: Fix possible buffer overflows at parsing bss descriptor + * CVE-2019-12984 + - nfc: Ensure presence of required attributes in the deactivate_target handler + * Sometimes touchpad(goodix) can't use tap function (LP: #1836020) + - SAUCE: i2c: designware: add Inpiron/Vostro 7590 into i2c quirk + * proc_thermal flooding dmesg (LP: #1824690) + - drivers: thermal: processor_thermal: Downgrade error message + + [ Ubuntu: 5.0.0-23.24 ] + + * disco/linux: 5.0.0-23.24 -proposed tracker (LP: #1838271) + * linux hwe i386 kernel 5.0.0-21.22~18.04.1 crashes on Lenovo x220 + (LP: #1838115) + - x86/mm: Check for pfn instead of page in vmalloc_sync_one() + - x86/mm: Sync also unmappings in vmalloc_sync_all() + - mm/vmalloc.c: add priority threshold to __purge_vmap_area_lazy() + - mm/vmalloc: Sync unmappings in __purge_vmap_area_lazy() + + -- Kleber Sacilotto de Souza Thu, 01 Aug 2019 16:14:53 +0200 + +linux-azure (5.0.0-1012.12) disco; urgency=medium + + * linux-azure: 5.0.0-1012.12 -proposed tracker (LP: #1834888) + + * Disco update: 5.0.12 upstream stable release (LP: #1830934) + - [Config] Document drop of axis-fifo for amd64/i386 + + * AX88772A USB to Ethernet dongle doesn't work (LP: #1834114) + - [Config] update configs and annotations for ASIX renamed + + [ Ubuntu: 5.0.0-21.22 ] + + * linux: 5.0.0-21.22 -proposed tracker (LP: #1834902) + * Disco update: 5.0.15 upstream stable release (LP: #1834529) + - net: stmmac: Use bfsize1 in ndesc_init_rx_desc + - Drivers: hv: vmbus: Remove the undesired put_cpu_ptr() in hv_synic_cleanup() + - ubsan: Fix nasty -Wbuiltin-declaration-mismatch GCC-9 warnings + - staging: greybus: power_supply: fix prop-descriptor request size + - staging: wilc1000: Avoid GFP_KERNEL allocation from atomic context. + - staging: most: cdev: fix chrdev_region leak in mod_exit + - staging: most: sound: pass correct device when creating a sound card + - ASoC: tlv320aic3x: fix reset gpio reference counting + - ASoC: hdmi-codec: fix S/PDIF DAI + - ASoC: stm32: sai: fix iec958 controls indexation + - ASoC: stm32: sai: fix exposed capabilities in spdif mode + - ASoC: stm32: sai: fix race condition in irq handler + - ASoC:soc-pcm:fix a codec fixup issue in TDM case + - ASoC:hdac_hda:use correct format to setup hda codec + - ASoC:intel:skl:fix a simultaneous playback & capture issue on hda platform + - ASoC: dpcm: prevent snd_soc_dpcm use after free + - ASoC: nau8824: fix the issue of the widget with prefix name + - ASoC: nau8810: fix the issue of widget with prefixed name + - ASoC: samsung: odroid: Fix clock configuration for 44100 sample rate + - ASoC: rt5682: Check JD status when system resume + - ASoC: rt5682: fix jack type detection issue + - ASoC: rt5682: recording has no sound after booting + - ASoC: wm_adsp: Add locking to wm_adsp2_bus_error + - clk: meson-gxbb: round the vdec dividers to closest + - ASoC: stm32: dfsdm: manage multiple prepare + - ASoC: stm32: dfsdm: fix debugfs warnings on entry creation + - ASoC: cs4270: Set auto-increment bit for register writes + - ASoC: dapm: Fix NULL pointer dereference in snd_soc_dapm_free_kcontrol + - drm/omap: hdmi4_cec: Fix CEC clock handling for PM + - IB/hfi1: Clear the IOWAIT pending bits when QP is put into error state + - IB/hfi1: Eliminate opcode tests on mr deref + - IB/hfi1: Fix the allocation of RSM table + - MIPS: KGDB: fix kgdb support for SMP platforms. + - ASoC: tlv320aic32x4: Fix Common Pins + - drm/mediatek: Fix an error code in mtk_hdmi_dt_parse_pdata() + - perf/x86/intel: Fix handling of wakeup_events for multi-entry PEBS + - perf/x86/intel: Initialize TFA MSR + - linux/kernel.h: Use parentheses around argument in u64_to_user_ptr() + - iov_iter: Fix build error without CONFIG_CRYPTO + - xtensa: fix initialization of pt_regs::syscall in start_thread + - ASoC: rockchip: pdm: fix regmap_ops hang issue + - drm/amdkfd: Add picasso pci id + - drm/amdgpu: Adjust IB test timeout for XGMI configuration + - drm/amdgpu: amdgpu_device_recover_vram always failed if only one node in + shadow_list + - drm/amd/display: fix cursor black issue + - ASoC: cs35l35: Disable regulators on driver removal + - objtool: Add rewind_stack_do_exit() to the noreturn list + - slab: fix a crash by reading /proc/slab_allocators + - drm/sun4i: tcon top: Fix NULL/invalid pointer dereference in + sun8i_tcon_top_un/bind + - virtio_pci: fix a NULL pointer reference in vp_del_vqs + - RDMA/vmw_pvrdma: Fix memory leak on pvrdma_pci_remove + - RDMA/hns: Fix bug that caused srq creation to fail + - KEYS: trusted: fix -Wvarags warning + - scsi: csiostor: fix missing data copy in csio_scsi_err_handler() + - drm/mediatek: fix possible object reference leak + - drm/mediatek: fix the rate and divder of hdmi phy for MT2701 + - drm/mediatek: make implementation of recalc_rate() for MT2701 hdmi phy + - drm/mediatek: remove flag CLK_SET_RATE_PARENT for MT2701 hdmi phy + - drm/mediatek: using new factor for tvdpll for MT2701 hdmi phy + - drm/mediatek: no change parent rate in round_rate() for MT2701 hdmi phy + - ASoC: Intel: kbl: fix wrong number of channels + - ASoC: stm32: sai: fix master clock management + - ALSA: hda: Fix racy display power access + - virtio-blk: limit number of hw queues by nr_cpu_ids + - blk-mq: introduce blk_mq_complete_request_sync() + - nvme: cancel request synchronously + - nvme-fc: correct csn initialization and increments on error + - nvmet: fix discover log page when offsets are used + - platform/x86: pmc_atom: Drop __initconst on dmi table + - NFSv4.1 fix incorrect return value in copy_file_range + - perf/core: Fix perf_event_disable_inatomic() race + - genirq: Prevent use-after-free and work list corruption + - usb: dwc3: Allow building USB_DWC3_QCOM without EXTCON + - usb: dwc3: Fix default lpm_nyet_threshold value + - USB: serial: f81232: fix interrupt worker not stop + - USB: cdc-acm: fix unthrottle races + - usb-storage: Set virt_boundary_mask to avoid SG overflows + - intel_th: pci: Add Comet Lake support + - iio: adc: qcom-spmi-adc5: Fix of-based module autoloading + - cpufreq: armada-37xx: fix frequency calculation for opp + - ACPI / LPSS: Use acpi_lpss_* instead of acpi_subsys_* functions for + hibernate + - soc: sunxi: Fix missing dependency on REGMAP_MMIO + - scsi: lpfc: change snprintf to scnprintf for possible overflow + - scsi: qla2xxx: Fix incorrect region-size setting in optrom SYSFS routines + - scsi: qla2xxx: Fix device staying in blocked state + - Bluetooth: Align minimum encryption key size for LE and BR/EDR connections + - Bluetooth: Fix not initializing L2CAP tx_credits + - Bluetooth: hci_bcm: Fix empty regulator supplies for Intel Macs + - UAS: fix alignment of scatter/gather segments + - ASoC: Intel: avoid Oops if DMA setup fails + - i3c: Fix a shift wrap bug in i3c_bus_set_addr_slot_status() + - locking/futex: Allow low-level atomic operations to return -EAGAIN + - arm64: futex: Bound number of LDXR/STXR loops in FUTEX_WAKE_OP + - Linux 5.0.15 + - Revert "Bluetooth: Align minimum encryption key size for LE and BR/EDR + connections" + * QCA9377 isn't being recognized sometimes (LP: #1757218) + - SAUCE: USB: Disable USB2 LPM at shutdown + * Cache line contention prevents scaling of 100Gbps performance (LP: #1832909) + - iommu/iova: Separate atomic variables to improve performance + * net: hns: Fix loopback test failed at copper ports (LP: #1833132) + - net: hns: Fix loopback test failed at copper ports + * hns: fix ICMP6 neighbor solicitation messages discard problem (LP: #1833140) + - net: hns: fix unsigned comparison to less than zero + * [UBUNTU] pkey: Indicate old mkvp only if old and curr. mkvp are different + (LP: #1832625) + - pkey: Indicate old mkvp only if old and current mkvp are different + * [UBUNTU] kernel: Fix gcm-aes-s390 wrong scatter-gather list processing + (LP: #1832623) + - s390/crypto: fix gcm-aes-s390 selftest failures + * AX88772A USB to Ethernet dongle doesn't work (LP: #1834114) + - net: phy: rename Asix Electronics PHY driver + - [Config] update configs and annotations for ASIX renamed + * Add nvidia-418 dkms build support to disco (LP: #1834476) + - add nvidia-418 dkms build + * depmod may prefer unsigned l-r-m nvidia modules to signed modules + (LP: #1834479) + - [Packaging] dkms-build--nvidia-N -- clean up unsigned ko files + * Hi1620 driver updates from upstream 5.2 merge window (LP: #1830815) + - ethtool: Added support for 50Gbps per lane link modes + - net: hns3: Make hclgevf_update_link_mode static + - net: hns3: Make hclge_destroy_cmd_queue static + - RDMA/hns: Only assign the relatived fields of psn if IB_QP_SQ_PSN is set + - RDMA/hns: Only assign the fields of the rq psn if IB_QP_RQ_PSN is set + - RDMA/hns: Update the range of raq_psn field of qp context + - RDMA/hns: Only assgin some fields if the relatived attr_mask is set + - RDMA/hns: Hide error print information with roce vf device + - RDMA/hns: Bugfix for sending with invalidate + - RDMA/hns: Delete unused variable in hns_roce_v2_modify_qp function + - RDMA/hns: Limit scope of hns_roce_cmq_send() + - RDMA/hns: Convert cq_table to XArray + - RDMA/hns: Convert qp_table_tree to XArray + - RDMA/hns: Fix bad endianess of port_pd variable + - net: hns3: check 1000M half for hns3_ethtool_ops.set_link_ksettings + - net: hns3: reduce resources use in kdump kernel + - net: hns3: modify the VF network port media type acquisition method + - net: hns3: return 0 and print warning when hit duplicate MAC + - net: hns3: minor optimization for ring_space + - net: hns3: minor optimization for datapath + - net: hns3: simplify hclgevf_cmd_csq_clean + - net: hns3: add protect when handling mac addr list + - net: hns3: check resetting status in hns3_get_stats() + - net: hns3: prevent change MTU when resetting + - net: hns3: modify HNS3_NIC_STATE_INITED flag in + hns3_reset_notify_uninit_enet + - net: hns3: split function hnae3_match_n_instantiate() + - RDMA/hns: Dump detailed driver-specific CQ + - RDMA/hns: Support to create 1M srq queue + - RDMA/hns: Bugfix for SCC hem free + - net: hns3: set vport alive state to default while resetting + - net: hns3: set up the vport alive state while reinitializing + - net: hns3: not reset vport who not alive when PF reset + - net: hns3: adjust the timing of hns3_client_stop when unloading + - net: hns3: deactive the reset timer when reset successfully + - net: hns3: ignore lower-level new coming reset + - net: hns3: do not request reset when hardware resetting + - net: hns3: handle pending reset while reset fail + - net: hns3: stop mailbox handling when command queue need re-init + - net: hns3: add error handler for initializing command queue + - net: hns3: remove resetting check in hclgevf_reset_task_schedule + - net: hns3: fix keep_alive_timer not stop problem + - scsi: hisi_sas: add host reset interface for test + - scsi: hisi_sas: Remedy inconsistent PHY down state in software + - scsi: hisi_sas: Fix for setting the PHY linkrate when disconnected + - scsi: hisi_sas: Adjust the printk format of functions hisi_sas_init_device() + - scsi: hisi_sas: allocate different SAS address for directly attached + situation + - scsi: hisi_sas: Support all RAS events with MSI interrupts + - scsi: hisi_sas: Don't hard reset disk during controller reset + - scsi: hisi_sas: Don't fail IT nexus reset for Open Reject timeout + - scsi: hisi_sas: Some misc tidy-up + - net: hns3: modify VLAN initialization to be compatible with port based VLAN + - net: hns3: fix VLAN offload handle for VLAN inserted by port + - net: hns3: fix set port based VLAN for PF + - net: hns3: fix set port based VLAN issue for VF + - net: hns3: minor refactor for hns3_rx_checksum + - net: hns3: add hns3_gro_complete for HW GRO process + - net: hns3: always assume no drop TC for performance reason + - net: hns3: divide shared buffer between TC + - net: hns3: set dividual reset level for all RAS and MSI-X errors + - net: hns3: do not initialize MDIO bus when PHY is inexistent + - net: hns3: free the pending skb when clean RX ring + - net: hns3: code optimization for command queue' spin lock + - net: hns3: fix sparse: warning when calling hclge_set_vlan_filter_hw() + - net: hns3: fix for vport->bw_limit overflow problem + - net: hns3: add reset statistics info for PF + - net: hns3: add reset statistics for VF + - net: hns3: add some debug information for hclge_check_event_cause + - net: hns3: add some debug info for hclgevf_get_mbx_resp() + - net: hns3: refine tx timeout count handle + - net: hns3: fix loop condition of hns3_get_tx_timeo_queue_info() + - net: hns3: dump more information when tx timeout happens + - net: hns3: Add support for netif message level settings + - net: hns3: add support for dump ncl config by debugfs + - net: hns3: Add handling of MAC tunnel interruption + - net: hns3: add queue's statistics update to service task + - net: hns3: add function type check for debugfs help information + - RDMA/hns: Bugfix for mapping user db + - net: hns3: fix data race between ring->next_to_clean + - net: hns3: fix for TX clean num when cleaning TX BD + - net: hns3: handle the BD info on the last BD of the packet + - net: hns3: stop sending keep alive msg when VF command queue needs reinit + - net: hns3: use atomic_t replace u32 for arq's count + - net: hns3: use a reserved byte to identify need_resp flag + - net: hns3: not reset TQP in the DOWN while VF resetting + - net: hns3: fix pause configure fail problem + - net: hns3: extend the loopback state acquisition time + - net: hns3: prevent double free in hns3_put_ring_config() + - net: hns3: remove reset after command send failed + - net: hns3: add support for multiple media type + - net: hns3: add autoneg and change speed support for fibre port + - net: hns3: add support for FEC encoding control + - net: hns3: unify maybe_stop_tx for TSO and non-TSO case + - net: hns3: use napi_schedule_irqoff in hard interrupts handlers + - net: hns3: add counter for times RX pages gets allocated + - net: hns3: add linearizing checking for TSO case + - net: hns3: fix for tunnel type handling in hns3_rx_checksum + - net: hns3: refactor BD filling for l2l3l4 info + - net: hns3: combine len and checksum handling for inner and outer header. + - net: hns3: fix error handling for desc filling + - net: hns3: optimize the barrier using when cleaning TX BD + - net: hns3: unify the page reusing for page size 4K and 64K + - net: hns3: some cleanup for struct hns3_enet_ring + - net: hns3: use devm_kcalloc when allocating desc_cb + - net: hns3: remove redundant assignment of l2_hdr to itself + - net: hns3: initialize CPU reverse mapping + - net: hns3: refine the flow director handle + - net: hns3: add aRFS support for PF + - net: hns3: fix for FEC configuration + - RDMA/hns: Remove unnecessary print message in aeq + - RDMA/hns: Update CQE specifications + - RDMA/hns: Move spin_lock_irqsave to the correct place + - RDMA/hns: Remove jiffies operation in disable interrupt context + - RDMA/hns: Replace magic numbers with #defines + - net: hns3: fix compile warning without CONFIG_RFS_ACCEL + - net: hns3: fix for HNS3_RXD_GRO_SIZE_M macro + - net: hns3: add support for dump firmware statistics by debugfs + - net: hns3: use HCLGE_STATE_NIC_REGISTERED to indicate PF NIC client has + registered + - net: hns3: use HCLGE_STATE_ROCE_REGISTERED to indicate PF ROCE client has + registered + - net: hns3: use HCLGEVF_STATE_NIC_REGISTERED to indicate VF NIC client has + registered + - net: hns3: modify hclge_init_client_instance() + - net: hns3: modify hclgevf_init_client_instance() + - net: hns3: add handshake with hardware while doing reset + - net: hns3: stop schedule reset service while unloading driver + - net: hns3: adjust hns3_uninit_phy()'s location in the hns3_client_uninit() + - net: hns3: fix a memory leak issue for hclge_map_unmap_ring_to_vf_vector + - RDMA/hns: Bugfix for posting multiple srq work request + - net: hns3: remove redundant core reset + - net: hns3: don't configure new VLAN ID into VF VLAN table when it's full + - net: hns3: fix VLAN filter restore issue after reset + - net: hns3: set the port shaper according to MAC speed + - net: hns3: add a check to pointer in error_detected and slot_reset + - net: hns3: set ops to null when unregister ad_dev + - net: hns3: add handling of two bits in MAC tunnel interrupts + - net: hns3: remove setting bit of reset_requests when handling mac tunnel + interrupts + - net: hns3: add opcode about query and clear RAS & MSI-X to special opcode + - net: hns3: delay and separate enabling of NIC and ROCE HW errors + - RDMA/hns: fix inverted logic of readl read and shift + - RDMA/hns: Bugfix for filling the sge of srq + - net: hns3: log detail error info of ROCEE ECC and AXI errors + - net: hns3: fix wrong size of mailbox responding data + - net: hns3: make HW GRO handling compliant with SW GRO + - net: hns3: replace numa_node_id with numa_mem_id for buffer reusing + - net: hns3: refactor hns3_get_new_int_gl function + - net: hns3: trigger VF reset if a VF has an over_8bd_nfe_err + - net: hns3: delete the redundant user NIC codes + - net: hns3: small changes for magic numbers + - net: hns3: use macros instead of magic numbers + - net: hns3: refactor PF/VF RSS hash key configuration + - net: hns3: some modifications to simplify and optimize code + - net: hns3: fix some coding style issues + - net: hns3: delay setting of reset level for hw errors until slot_reset is + called + - net: hns3: fix avoid unnecessary resetting for the H/W errors which do not + require reset + - net: hns3: process H/W errors occurred before HNS dev initialization + - net: hns3: add recovery for the H/W errors occurred before the HNS dev + initialization + - net: hns3: some changes of MSI-X bits in PPU(RCB) + - net: hns3: extract handling of mpf/pf msi-x errors into functions + - net: hns3: clear restting state when initializing HW device + - net: hns3: free irq when exit from abnormal branch + - net: hns3: fix for dereferencing before null checking + - net: hns3: fix for skb leak when doing selftest + - net: hns3: delay ring buffer clearing during reset + - net: hns3: some variable modification + - net: hns3: fix dereference of ae_dev before it is null checked + - scsi: hisi_sas: Delete PHY timers when rmmod or probe failed + - scsi: hisi_sas: Fix the issue of argument mismatch of printing ecc errors + - scsi: hisi_sas: Reduce HISI_SAS_SGE_PAGE_CNT in size + - scsi: hisi_sas: Change the type of some numbers to unsigned + - scsi: hisi_sas: Ignore the error code between phy down to phy up + - scsi: hisi_sas: Disable stash for v3 hw + - net: hns3: Add missing newline at end of file + - net: hns3: Fix inconsistent indenting + - RDMa/hns: Don't stuck in endless timeout loop + * Kernel modules generated incorrectly when system is localized to a non- + English language (LP: #1828084) + - scripts: override locale from environment when running recordmcount.pl + * [UBUNTU] kernel: Fix wrong dispatching for control domain CPRBs + (LP: #1832624) + - s390/zcrypt: Fix wrong dispatching for control domain CPRBs + * shiftfs: allow changing ro/rw for subvolumes (LP: #1832316) + - SAUCE: shiftfs: allow changing ro/rw for subvolumes + * Sound device not detected after resume from hibernate (LP: #1826868) + - drm/i915: Force 2*96 MHz cdclk on glk/cnl when audio power is enabled + - drm/i915: Save the old CDCLK atomic state + - drm/i915: Remove redundant store of logical CDCLK state + - drm/i915: Skip modeset for cdclk changes if possible + * [raven] fix screen corruption on modprobe (LP: #1831846) + - drm/amdgpu: keep stolen memory on picasso + - drm/amdgpu: reserve stollen vram for raven series + * Handle overflow in proc_get_long of sysctl (LP: #1833935) + - sysctl: handle overflow in proc_get_long + * Oops during sas expander hotplugging (LP: #1831799) + - scsi: libsas: delete sas port if expander discover failed + * [SRU][B/B-OEM/C/D/OEM-OSP1] Add RTL8822 wifi driver rtw88 (LP: #1831828) + - rtw88: new Realtek 802.11ac driver + - rtw88: fix shift of more than 32 bits of a integer + - rtw88: phy: mark expected switch fall-throughs + - rtw88: Make RA_MASK macros ULL + - [Config] Add realtek wifi RTW88 support + * Dell XPS 13 (9370) defaults to s2idle sleep/suspend instead of deep, NVMe + drains lots of power under s2idle (LP: #1808957) + - Revert "UBUNTU: SAUCE: pci/nvme: prevent WDC PC SN720 NVMe from entering D3 + and being disabled" + - Revert "UBUNTU: SAUCE: nvme: add quirk to not call disable function when + suspending" + - Revert "UBUTU: SAUCE: pci: prevent Intel NVMe SSDPEKKF from entering D3" + - Revert "UBUNTU: SAUCE: nvme: add quirk to not call disable function when + suspending" + - Revert "UBUNTU: SAUCE: pci: prevent sk hynix nvme from entering D3" + - PCI: PM: Avoid possible suspend-to-idle issue + - PCI: PM: Skip devices in D0 for suspend-to-idle + - nvme-pci: Sync queues on reset + - nvme: Export get and set features + - nvme-pci: Use host managed power state for suspend + * arm64: cma_alloc errors at boot (LP: #1823753) + - [Config] Bump CMA_SIZE_MBYTES to 32 on arm64 + - dma-contiguous: add dma_{alloc, free}_contiguous() helpers + - dma-contiguous: use fallback alloc_pages for single pages + - dma-contiguous: fix !CONFIG_DMA_CMA version of dma_{alloc, + free}_contiguous() + * libsas: old linkrate advertised after phy disabled (LP: #1830435) + - scsi: libsas: Inject revalidate event for root port event + - scsi: libsas: Do discovery on empty PHY to update PHY info + * fanotify06 from ubuntu_ltp_syscalls failed (LP: #1833028) + - ovl: do not generate duplicate fsnotify events for "fake" path + * hinic: fix oops due to race in set_rx_mode (LP: #1832048) + - hinic: fix a bug in set rx mode + * ubuntu 18.04 flickering screen with Radeon X1600 (LP: #1791312) + - drm/radeon: prefer lower reference dividers + * [ALSA] [PATCH] Headset fixup for System76 Gazelle (gaze14) (LP: #1827555) + - ALSA: hda/realtek - Headset fixup for System76 Gazelle (gaze14) + - ALSA: hda/realtek - Corrected fixup for System76 Gazelle (gaze14) + * ftrace in ubuntu_kernel_selftests complains "Illegal number" because of the + absence of tput (LP: #1828989) + - selftests/ftrace: Handle the absence of tput + * CVE-2019-11833 + - ext4: zero out the unused memory region in the extent tree block + * Disco update: 5.0.14 upstream stable release (LP: #1832775) + - selftests/seccomp: Prepare for exclusive seccomp flags + - seccomp: Make NEW_LISTENER and TSYNC flags exclusive + - ARC: memset: fix build with L1_CACHE_SHIFT != 6 + - iwlwifi: fix driver operation for 5350 + - mwifiex: Make resume actually do something useful again on SDIO cards + - mtd: rawnand: marvell: Clean the controller state before each operation + - mac80211: don't attempt to rename ERR_PTR() debugfs dirs + - i2c: synquacer: fix enumeration of slave devices + - i2c: imx: correct the method of getting private data in notifier_call + - i2c: Prevent runtime suspend of adapter when Host Notify is required + - ALSA: hda/realtek - Add new Dell platform for headset mode + - USB: yurex: Fix protection fault after device removal + - USB: w1 ds2490: Fix bug caused by improper use of altsetting array + - USB: dummy-hcd: Fix failure to give back unlinked URBs + - usb: usbip: fix isoc packet num validation in get_pipe + - USB: core: Fix unterminated string returned by usb_string() + - USB: core: Fix bug caused by duplicate interface PM usage counter + - KVM: lapic: Disable timer advancement if adaptive tuning goes haywire + - KVM: x86: Consider LAPIC TSC-Deadline timer expired if deadline too short + - KVM: lapic: Track lapic timer advance per vCPU + - KVM: lapic: Allow user to disable adaptive tuning of timer advancement + - KVM: lapic: Convert guest TSC to host time domain if necessary + - arm64: dts: rockchip: fix rk3328-roc-cc gmac2io tx/rx_delay + - HID: logitech: check the return value of create_singlethread_workqueue + - HID: debug: fix race condition with between rdesc_show() and device removal + - rtc: cros-ec: Fail suspend/resume if wake IRQ can't be configured + - rtc: sh: Fix invalid alarm warning for non-enabled alarm + - ARM: OMAP2+: add missing of_node_put after of_device_is_available + - batman-adv: Reduce claim hash refcnt only for removed entry + - batman-adv: Reduce tt_local hash refcnt only for removed entry + - batman-adv: Reduce tt_global hash refcnt only for removed entry + - batman-adv: fix warning in function batadv_v_elp_get_throughput + - ARM: dts: rockchip: Fix gpu opp node names for rk3288 + - reset: meson-audio-arb: Fix missing .owner setting of reset_controller_dev + - ARM: dts: Fix dcan clkctrl clock for am3 + - i40e: fix i40e_ptp_adjtime when given a negative delta + - ixgbe: fix mdio bus registration + - i40e: fix WoL support check + - riscv: fix accessing 8-byte variable from RV32 + - HID: quirks: Fix keyboard + touchpad on Lenovo Miix 630 + - net: hns3: fix compile error + - xdp: fix cpumap redirect SKB creation bug + - net/mlx5: E-Switch, Protect from invalid memory access in offload fdb table + - net/mlx5: E-Switch, Fix esw manager vport indication for more vport commands + - bonding: show full hw address in sysfs for slave entries + - net: stmmac: use correct DMA buffer size in the RX descriptor + - net: stmmac: ratelimit RX error logs + - net: stmmac: don't stop NAPI processing when dropping a packet + - net: stmmac: don't overwrite discard_frame status + - net: stmmac: fix dropping of multi-descriptor RX frames + - net: stmmac: don't log oversized frames + - jffs2: fix use-after-free on symlink traversal + - debugfs: fix use-after-free on symlink traversal + - mfd: twl-core: Disable IRQ while suspended + - block: use blk_free_flush_queue() to free hctx->fq in blk_mq_init_hctx + - rtc: da9063: set uie_unsupported when relevant + - HID: input: add mapping for Assistant key + - vfio/pci: use correct format characters + - scsi: core: add new RDAC LENOVO/DE_Series device + - scsi: storvsc: Fix calculation of sub-channel count + - arm/mach-at91/pm : fix possible object reference leak + - blk-mq: do not reset plug->rq_count before the list is sorted + - arm64: fix wrong check of on_sdei_stack in nmi context + - net: hns: fix KASAN: use-after-free in hns_nic_net_xmit_hw() + - net: hns: Fix probabilistic memory overwrite when HNS driver initialized + - net: hns: fix ICMP6 neighbor solicitation messages discard problem + - net: hns: Fix WARNING when remove HNS driver with SMMU enabled + - libcxgb: fix incorrect ppmax calculation + - KVM: SVM: prevent DBG_DECRYPT and DBG_ENCRYPT overflow + - kmemleak: powerpc: skip scanning holes in the .bss section + - hugetlbfs: fix memory leak for resv_map + - sh: fix multiple function definition build errors + - null_blk: prevent crash from bad home_node value + - xsysace: Fix error handling in ace_setup + - fs: stream_open - opener for stream-like files so that read and write can + run simultaneously without deadlock + - ARM: orion: don't use using 64-bit DMA masks + - ARM: iop: don't use using 64-bit DMA masks + - perf/x86/amd: Update generic hardware cache events for Family 17h + - Bluetooth: btusb: request wake pin with NOAUTOEN + - Bluetooth: mediatek: fix up an error path to restore bdev->tx_state + - clk: qcom: Add missing freq for usb30_master_clk on 8998 + - usb: dwc3: Reset num_trbs after skipping + - staging: iio: adt7316: allow adt751x to use internal vref for all dacs + - staging: iio: adt7316: fix the dac read calculation + - staging: iio: adt7316: fix handling of dac high resolution option + - staging: iio: adt7316: fix the dac write calculation + - scsi: RDMA/srpt: Fix a credit leak for aborted commands + - ASoC: Intel: bytcr_rt5651: Revert "Fix DMIC map headsetmic mapping" + - ASoC: rsnd: gen: fix SSI9 4/5/6/7 busif related register address + - ASoC: sunxi: sun50i-codec-analog: Rename hpvcc regulator supply to cpvdd + - ASoC: wm_adsp: Correct handling of compressed streams that restart + - ASoC: dpcm: skip missing substream while applying symmetry + - ASoC: stm32: fix sai driver name initialisation + - KVM: VMX: Save RSI to an unused output in the vCPU-run asm blob + - KVM: nVMX: Remove a rogue "rax" clobber from nested_vmx_check_vmentry_hw() + - kvm: vmx: Fix typos in vmentry/vmexit control setting + - KVM: lapic: Check for in-kernel LAPIC before deferencing apic pointer + - platform/x86: intel_pmc_core: Fix PCH IP name + - platform/x86: intel_pmc_core: Handle CFL regmap properly + - IB/core: Unregister notifier before freeing MAD security + - IB/core: Fix potential memory leak while creating MAD agents + - IB/core: Destroy QP if XRC QP fails + - Input: snvs_pwrkey - initialize necessary driver data before enabling IRQ + - Input: stmfts - acknowledge that setting brightness is a blocking call + - gpio: mxc: add check to return defer probe if clock tree NOT ready + - selinux: avoid silent denials in permissive mode under RCU walk + - selinux: never allow relabeling on context mounts + - mac80211: Honor SW_CRYPTO_CONTROL for unicast keys in AP VLAN mode + - powerpc/mm/hash: Handle mmap_min_addr correctly in get_unmapped_area topdown + search + - x86/mce: Improve error message when kernel cannot recover, p2 + - clk: x86: Add system specific quirk to mark clocks as critical + - x86/mm/KASLR: Fix the size of the direct mapping section + - x86/mm: Fix a crash with kmemleak_scan() + - x86/mm/tlb: Revert "x86/mm: Align TLB invalidation info" + - i2c: i2c-stm32f7: Fix SDADEL minimum formula + - media: v4l2: i2c: ov7670: Fix PLL bypass register values + - ASoC: wm_adsp: Check for buffer in trigger stop + - mm/kmemleak.c: fix unused-function warning + - Linux 5.0.14 + * [ZenBook S UX391UA, Realtek ALC294, Mic, Internal] No sound at all + (LP: #1784485) // Disco update: 5.0.14 upstream stable release + (LP: #1832775) + - ALSA: hda/realtek - Apply the fixup for ASUS Q325UAR + * Support new ums-realtek device (LP: #1831840) + - USB: usb-storage: Add new ID to ums-realtek + * amd_iommu possible data corruption (LP: #1823037) + - iommu/amd: Set exclusion range correctly + * Add new sound card PCIID into the alsa driver (LP: #1832299) + - ALSA: hda/intel: add CometLake PCI IDs + * idle-page oopses when accessing page frames that are out of range + (LP: #1833410) + - mm/page_idle.c: fix oops because end_pfn is larger than max_pfn + * Sometimes touchpad automatically trigger double click (LP: #1833484) + - SAUCE: i2c: designware: Add disable runtime pm quirk + * Disco update: 5.0.13 upstream stable release (LP: #1832749) + - ipv4: ip_do_fragment: Preserve skb_iif during fragmentation + - ipv6: A few fixes on dereferencing rt->from + - ipv6: fix races in ip6_dst_destroy() + - ipv6/flowlabel: wait rcu grace period before put_pid() + - ipv6: invert flowlabel sharing check in process and user mode + - l2ip: fix possible use-after-free + - l2tp: use rcu_dereference_sk_user_data() in l2tp_udp_encap_recv() + - net: dsa: bcm_sf2: fix buffer overflow doing set_rxnfc + - net: phy: marvell: Fix buffer overrun with stats counters + - net/tls: avoid NULL pointer deref on nskb->sk in fallback + - rxrpc: Fix net namespace cleanup + - sctp: avoid running the sctp state machine recursively + - selftests: fib_rule_tests: print the result and return 1 if any tests failed + - packet: validate msg_namelen in send directly + - packet: in recvmsg msg_name return at least sizeof sockaddr_ll + - selftests: fib_rule_tests: Fix icmp proto with ipv6 + - tcp: add sanity tests in tcp_add_backlog() + - udp: fix GRO reception in case of length mismatch + - udp: fix GRO packet of death + - bnxt_en: Improve multicast address setup logic. + - bnxt_en: Free short FW command HWRM memory in error path in bnxt_init_one() + - bnxt_en: Fix possible crash in bnxt_hwrm_ring_free() under error conditions. + - bnxt_en: Pass correct extended TX port statistics size to firmware. + - bnxt_en: Fix statistics context reservation logic. + - bnxt_en: Fix uninitialized variable usage in bnxt_rx_pkt(). + - net/tls: don't copy negative amounts of data in reencrypt + - net/tls: fix copy to fragments in reencrypt + - KVM: x86: Whitelist port 0x7e for pre-incrementing %rip + - KVM: nVMX: Fix size checks in vmx_set_nested_state + - ALSA: line6: use dynamic buffers + - iwlwifi: mvm: properly check debugfs dentry before using it + - ath10k: Drop WARN_ON()s that always trigger during system resume + - Linux 5.0.13 + * Add pointstick support on HP ZBook 17 G5 (LP: #1833387) + - Revert "HID: multitouch: Support ALPS PTP stick with pid 0x120A" + - SAUCE: HID: multitouch: Add pointstick support for ALPS Touchpad + * [SRU][B/B-OEM/B-OEM-OSP-1/C/D/E] Add trackpoint middle button support of 2 + new thinpads (LP: #1833637) + - Input: elantech - enable middle button support on 2 ThinkPads + * Kernel panic upon resetting ixgbe SR-IOV VFIO virtual function using 5.0 + kernel (LP: #1829652) + - SAUCE: ixgbe: Avoid NULL pointer dereference with VF on non-IPsec hw + * CVE-2019-11884 + - Bluetooth: hidp: fix buffer overflow + * TPM module can not initial (LP: #1826142) + - spi: Optionally use GPIO descriptors for CS GPIOs + - spi: dw: Convert to use CS GPIO descriptors + - spi: dw: fix warning unused variable 'ret' + - spi: Support high CS when using descriptors + - spi: dw: Fix default polarity of native chipselect + - gpio: of: Fix logic inversion + - spi: Add missing error handling for CS GPIOs + * CVE-2018-12126 // CVE-2018-12127 // CVE-2018-12130 // CVE-2019-11091 + - SAUCE: Synchronize MDS mitigations with upstream + - Documentation: Correct the possible MDS sysfs values + - x86/speculation/mds: Fix documentation typo + * CVE-2019-11091 + - x86/mds: Add MDSUM variant to the MDS documentation + * Regression for ubuntu_kernel_selftests [net] ubuntu_bpf test case fails to + build on disco (LP: #1829812) + - tools: bpftool: add basic probe capability, probe syscall availability + - tools: bpftool: add probes for eBPF program types + * POSIX fix for ftrace test in ubuntu_kernel_selftests (LP: #1828995) + - selftests/ftrace: Replace \e with \033 + - selftests/ftrace: Replace echo -e with printf + * Disco update: 5.0.12 upstream stable release (LP: #1830934) + - selinux: use kernel linux/socket.h for genheaders and mdp + - Revert "ACPICA: Clear status of GPEs before enabling them" + - drm/i915: Do not enable FEC without DSC + - mm: make page ref count overflow check tighter and more explicit + - mm: add 'try_get_page()' helper function + - mm: prevent get_user_pages() from overflowing page refcount + - fs: prevent page refcount overflow in pipe_buf_get + - arm64: dts: renesas: r8a77990: Fix SCIF5 DMA channels + - ARM: dts: bcm283x: Fix hdmi hpd gpio pull + - s390: limit brk randomization to 32MB + - mt76x02: fix hdr pointer in write txwi for USB + - mt76: mt76x2: fix external LNA gain settings + - mt76: mt76x2: fix 2.4 GHz channel gain settings + - net: ieee802154: fix a potential NULL pointer dereference + - ieee802154: hwsim: propagate genlmsg_reply return code + - Btrfs: fix file corruption after snapshotting due to mix of buffered/DIO + writes + - net: stmmac: don't set own bit too early for jumbo frames + - net: stmmac: fix jumbo frame sending with non-linear skbs + - qlcnic: Avoid potential NULL pointer dereference + - xsk: fix umem memory leak on cleanup + - staging: axis-fifo: add CONFIG_OF dependency + - staging, mt7621-pci: fix build without pci support + - netfilter: nft_set_rbtree: check for inactive element after flag mismatch + - netfilter: bridge: set skb transport_header before entering + NF_INET_PRE_ROUTING + - netfilter: fix NETFILTER_XT_TARGET_TEE dependencies + - netfilter: ip6t_srh: fix NULL pointer dereferences + - s390/qeth: fix race when initializing the IP address table + - ARM: imx51: fix a leaked reference by adding missing of_node_put + - sc16is7xx: missing unregister/delete driver on error in sc16is7xx_init() + - serial: ar933x_uart: Fix build failure with disabled console + - KVM: arm64: Reset the PMU in preemptible context + - arm64: KVM: Always set ICH_HCR_EL2.EN if GICv4 is enabled + - KVM: arm/arm64: vgic-its: Take the srcu lock when writing to guest memory + - KVM: arm/arm64: vgic-its: Take the srcu lock when parsing the memslots + - usb: dwc3: pci: add support for Comet Lake PCH ID + - usb: gadget: net2280: Fix overrun of OUT messages + - usb: gadget: net2280: Fix net2280_dequeue() + - usb: gadget: net2272: Fix net2272_dequeue() + - ARM: dts: pfla02: increase phy reset duration + - i2c: i801: Add support for Intel Comet Lake + - KVM: arm/arm64: Fix handling of stage2 huge mappings + - net: ks8851: Dequeue RX packets explicitly + - net: ks8851: Reassert reset pin if chip ID check fails + - net: ks8851: Delay requesting IRQ until opened + - net: ks8851: Set initial carrier state to down + - staging: rtl8188eu: Fix potential NULL pointer dereference of kcalloc + - staging: rtlwifi: rtl8822b: fix to avoid potential NULL pointer dereference + - staging: rtl8712: uninitialized memory in read_bbreg_hdl() + - staging: rtlwifi: Fix potential NULL pointer dereference of kzalloc + - net: phy: Add DP83825I to the DP83822 driver + - net: macb: Add null check for PCLK and HCLK + - net/sched: don't dereference a->goto_chain to read the chain index + - ARM: dts: imx6qdl: Fix typo in imx6qdl-icore-rqs.dtsi + - drm/tegra: hub: Fix dereference before check + - NFS: Fix a typo in nfs_init_timeout_values() + - net: xilinx: fix possible object reference leak + - net: ibm: fix possible object reference leak + - net: ethernet: ti: fix possible object reference leak + - drm: Fix drm_release() and device unplug + - gpio: aspeed: fix a potential NULL pointer dereference + - drm/meson: Fix invalid pointer in meson_drv_unbind() + - drm/meson: Uninstall IRQ handler + - ARM: davinci: fix build failure with allnoconfig + - sbitmap: order READ/WRITE freed instance and setting clear bit + - staging: vc04_services: Fix an error code in vchiq_probe() + - scsi: mpt3sas: Fix kernel panic during expander reset + - scsi: aacraid: Insure we don't access PCIe space during AER/EEH + - scsi: qla4xxx: fix a potential NULL pointer dereference + - usb: usb251xb: fix to avoid potential NULL pointer dereference + - leds: trigger: netdev: fix refcnt leak on interface rename + - SUNRPC: fix uninitialized variable warning + - x86/realmode: Don't leak the trampoline kernel address + - usb: u132-hcd: fix resource leak + - ceph: fix use-after-free on symlink traversal + - scsi: zfcp: reduce flood of fcrscn1 trace records on multi-element RSCN + - x86/mm: Don't exceed the valid physical address space + - libata: fix using DMA buffers on stack + - kbuild: skip parsing pre sub-make code for recursion + - afs: Fix StoreData op marshalling + - gpio: of: Check propname before applying "cs-gpios" quirks + - gpio: of: Check for "spi-cs-high" in child instead of parent node + - KVM: nVMX: Do not inherit quadrant and invalid for the root shadow EPT + - KVM: SVM: Workaround errata#1096 (insn_len maybe zero on SMAP violation) + - kvm/x86: Move MSR_IA32_ARCH_CAPABILITIES to array emulated_msrs + - x86/kvm/hyper-v: avoid spurious pending stimer on vCPU init + - KVM: selftests: assert on exit reason in CR4/cpuid sync test + - KVM: selftests: explicitly disable PIE for tests + - KVM: selftests: disable stack protector for all KVM tests + - KVM: selftests: complete IO before migrating guest state + - gpio: of: Fix of_gpiochip_add() error path + - nvme-multipath: relax ANA state check + - nvmet: fix building bvec from sg list + - nvmet: fix error flow during ns enable + - perf cs-etm: Add missing case value + - perf machine: Update kernel map address and re-order properly + - kconfig/[mn]conf: handle backspace (^H) key + - iommu/amd: Reserve exclusion range in iova-domain + - kasan: fix variable 'tag' set but not used warning + - ptrace: take into account saved_sigmask in PTRACE{GET,SET}SIGMASK + - leds: pca9532: fix a potential NULL pointer dereference + - leds: trigger: netdev: use memcpy in device_name_store + - Linux 5.0.12 + - [Config] Document drop of axis-fifo for amd64/i386 + * Disco update: 5.0.11 upstream stable release (LP: #1830929) + - netfilter: nf_tables: bogus EBUSY when deleting set after flush + - netfilter: nf_tables: bogus EBUSY in helper removal from transaction + - intel_th: gth: Fix an off-by-one in output unassigning + - powerpc/vdso32: fix CLOCK_MONOTONIC on PPC64 + - ALSA: hda/realtek - Move to ACT_INIT state + - fs/proc/proc_sysctl.c: Fix a NULL pointer dereference + - block, bfq: fix use after free in bfq_bfqq_expire + - cifs: fix memory leak in SMB2_read + - cifs: fix page reference leak with readv/writev + - cifs: do not attempt cifs operation on smb2+ rename error + - tracing: Fix a memory leak by early error exit in trace_pid_write() + - tracing: Fix buffer_ref pipe ops + - crypto: xts - Fix atomic sleep when walking skcipher + - crypto: lrw - Fix atomic sleep when walking skcipher + - gpio: eic: sprd: Fix incorrect irq type setting for the sync EIC + - zram: pass down the bvec we need to read into in the work struct + - lib/Kconfig.debug: fix build error without CONFIG_BLOCK + - MIPS: scall64-o32: Fix indirect syscall number load + - trace: Fix preempt_enable_no_resched() abuse + - mm: do not boost watermarks to avoid fragmentation for the DISCONTIG memory + model + - arm64: mm: Ensure tail of unaligned initrd is reserved + - IB/rdmavt: Fix frwr memory registration + - RDMA/mlx5: Do not allow the user to write to the clock page + - RDMA/mlx5: Use rdma_user_map_io for mapping BAR pages + - RDMA/ucontext: Fix regression with disassociate + - sched/numa: Fix a possible divide-by-zero + - ceph: only use d_name directly when parent is locked + - ceph: ensure d_name stability in ceph_dentry_hash() + - ceph: fix ci->i_head_snapc leak + - nfsd: Don't release the callback slot unless it was actually held + - nfsd: wake waiters blocked on file_lock before deleting it + - nfsd: wake blocked file lock waiters before sending callback + - sunrpc: don't mark uninitialised items as VALID. + - perf/x86/intel: Update KBL Package C-state events to also include + PC8/PC9/PC10 counters + - Input: synaptics-rmi4 - write config register values to the right offset + - dmaengine: sh: rcar-dmac: With cyclic DMA residue 0 is valid + - dmaengine: sh: rcar-dmac: Fix glitch in dmaengine_tx_status + - dmaengine: mediatek-cqdma: fix wrong register usage in mtk_cqdma_start + - ARM: 8857/1: efi: enable CP15 DMB instructions before cleaning the cache + - powerpc/mm/radix: Make Radix require HUGETLB_PAGE + - drm/vc4: Fix memory leak during gpu reset. + - drm/ttm: fix re-init of global structures + - drm/vc4: Fix compilation error reported by kbuild test bot + - ext4: fix some error pointer dereferences + - loop: do not print warn message if partition scan is successful + - tipc: handle the err returned from cmd header function + - slip: make slhc_free() silently accept an error pointer + - workqueue: Try to catch flush_work() without INIT_WORK(). + - sched/deadline: Correctly handle active 0-lag timers + - mac80211_hwsim: calculate if_combination.max_interfaces + - NFS: Forbid setting AF_INET6 to "struct sockaddr_in"->sin_family. + - netfilter: ebtables: CONFIG_COMPAT: drop a bogus WARN_ON + - fm10k: Fix a potential NULL pointer dereference + - tipc: check bearer name with right length in tipc_nl_compat_bearer_enable + - tipc: check link name with right length in tipc_nl_compat_link_set + - net: netrom: Fix error cleanup path of nr_proto_init + - net/rds: Check address length before reading address family + - rxrpc: fix race condition in rxrpc_input_packet() + - pin iocb through aio. + - aio: fold lookup_kiocb() into its sole caller + - aio: keep io_event in aio_kiocb + - aio: store event at final iocb_put() + - Fix aio_poll() races + - x86, retpolines: Raise limit for generating indirect calls from switch-case + - x86/retpolines: Disable switch jump tables when retpolines are enabled + - rdma: fix build errors on s390 and MIPS due to bad ZERO_PAGE use + - ipv4: add sanity checks in ipv4_link_failure() + - ipv4: set the tcp_min_rtt_wlen range from 0 to one day + - mlxsw: spectrum: Fix autoneg status in ethtool + - net/mlx5e: ethtool, Remove unsupported SFP EEPROM high pages query + - net: rds: exchange of 8K and 1M pool + - net/rose: fix unbound loop in rose_loopback_timer() + - net: stmmac: move stmmac_check_ether_addr() to driver probe + - net/tls: fix refcount adjustment in fallback + - stmmac: pci: Adjust IOT2000 matching + - team: fix possible recursive locking when add slaves + - net: socionext: replace napi_alloc_frag with the netdev variant on init + - net/ncsi: handle overflow when incrementing mac address + - mlxsw: pci: Reincrease PCI reset timeout + - mlxsw: spectrum: Put MC TCs into DWRR mode + - net/mlx5e: Fix the max MTU check in case of XDP + - net/mlx5e: Fix use-after-free after xdp_return_frame + - net/tls: avoid potential deadlock in tls_set_device_offload_rx() + - net/tls: don't leak IV and record seq when offload fails + - Linux 5.0.11 + * Disco update: 5.0.10 upstream stable release (LP: #1830922) + - bonding: fix event handling for stacked bonds + - failover: allow name change on IFF_UP slave interfaces + - net: atm: Fix potential Spectre v1 vulnerabilities + - net: bridge: fix per-port af_packet sockets + - net: bridge: multicast: use rcu to access port list from + br_multicast_start_querier + - net: fec: manage ahb clock in runtime pm + - net: Fix missing meta data in skb with vlan packet + - net: fou: do not use guehdr after iptunnel_pull_offloads in gue_udp_recv + - tcp: tcp_grow_window() needs to respect tcp_space() + - team: set slave to promisc if team is already in promisc mode + - tipc: missing entries in name table of publications + - vhost: reject zero size iova range + - ipv4: recompile ip options in ipv4_link_failure + - ipv4: ensure rcu_read_lock() in ipv4_link_failure() + - mlxsw: spectrum_switchdev: Add MDB entries in prepare phase + - mlxsw: core: Do not use WQ_MEM_RECLAIM for EMAD workqueue + - mlxsw: core: Do not use WQ_MEM_RECLAIM for mlxsw ordered workqueue + - mlxsw: core: Do not use WQ_MEM_RECLAIM for mlxsw workqueue + - mlxsw: spectrum_router: Do not check VRF MAC address + - net: thunderx: raise XDP MTU to 1508 + - net: thunderx: don't allow jumbo frames with XDP + - net/tls: fix the IV leaks + - net/tls: don't leak partially sent record in device mode + - net: strparser: partially revert "strparser: Call skb_unclone conditionally" + - net/tls: fix build without CONFIG_TLS_DEVICE + - net: bridge: fix netlink export of vlan_stats_per_port option + - net/mlx5e: XDP, Avoid checksum complete when XDP prog is loaded + - net/mlx5e: Protect against non-uplink representor for encap + - net/mlx5e: Switch to Toeplitz RSS hash by default + - net/mlx5e: Rx, Fixup skb checksum for packets with tail padding + - net/mlx5e: Rx, Check ip headers sanity + - Revert "net/mlx5e: Enable reporting checksum unnecessary also for L3 + packets" + - net/mlx5: FPGA, tls, hold rcu read lock a bit longer + - net/tls: prevent bad memory access in tls_is_sk_tx_device_offloaded() + - net/mlx5: FPGA, tls, idr remove on flow delete + - route: Avoid crash from dereferencing NULL rt->from + - nfp: flower: replace CFI with vlan present + - nfp: flower: remove vlan CFI bit from push vlan action + - sch_cake: Use tc_skb_protocol() helper for getting packet protocol + - sch_cake: Make sure we can write the IP header before changing DSCP bits + - NFC: nci: Add some bounds checking in nci_hci_cmd_received() + - nfc: nci: Potential off by one in ->pipes[] array + - sch_cake: Simplify logic in cake_select_tin() + - CIFS: keep FileInfo handle live during oplock break + - cifs: Fix lease buffer length error + - cifs: Fix use-after-free in SMB2_write + - cifs: Fix use-after-free in SMB2_read + - cifs: fix handle leak in smb2_query_symlink() + - fs/dax: Deposit pagetable even when installing zero page + - KVM: x86: Don't clear EFER during SMM transitions for 32-bit vCPU + - KVM: x86: svm: make sure NMI is injected after nmi_singlestep + - Staging: iio: meter: fixed typo + - staging: iio: ad7192: Fix ad7193 channel address + - iio: gyro: mpu3050: fix chip ID reading + - iio/gyro/bmg160: Use millidegrees for temperature scale + - iio:chemical:bme680: Fix, report temperature in millidegrees + - iio:chemical:bme680: Fix SPI read interface + - iio: cros_ec: Fix the maths for gyro scale calculation + - iio: ad_sigma_delta: select channel when reading register + - iio: dac: mcp4725: add missing powerdown bits in store eeprom + - iio: Fix scan mask selection + - iio: adc: at91: disable adc channel interrupt in timeout case + - iio: core: fix a possible circular locking dependency + - io: accel: kxcjk1013: restore the range after resume. + - staging: most: core: use device description as name + - staging: comedi: vmk80xx: Fix use of uninitialized semaphore + - staging: comedi: vmk80xx: Fix possible double-free of ->usb_rx_buf + - staging: comedi: ni_usb6501: Fix use of uninitialized mutex + - staging: comedi: ni_usb6501: Fix possible double-free of ->usb_rx_buf + - ALSA: core: Fix card races between register and disconnect + - Input: elan_i2c - add hardware ID for multiple Lenovo laptops + - serial: sh-sci: Fix HSCIF RX sampling point adjustment + - serial: sh-sci: Fix HSCIF RX sampling point calculation + - vt: fix cursor when clearing the screen + - scsi: core: set result when the command cannot be dispatched + - Revert "scsi: fcoe: clear FC_RP_STARTED flags when receiving a LOGO" + - i3c: dw: Fix dw_i3c_master_disable controller by using correct mask + - i3c: Fix the verification of random PID + - Revert "svm: Fix AVIC incomplete IPI emulation" + - coredump: fix race condition between mmget_not_zero()/get_task_mm() and core + dumping + - x86/kvm: move kvm_load/put_guest_xcr0 into atomic context + - ipmi: fix sleep-in-atomic in free_user at cleanup SRCU user->release_barrier + - crypto: x86/poly1305 - fix overflow during partial reduction + - drm/ttm: fix out-of-bounds read in ttm_put_pages() v2 + - arm64: futex: Restore oldval initialization to work around buggy compilers + - x86/kprobes: Verify stack frame on kretprobe + - kprobes: Mark ftrace mcount handler functions nokprobe + - x86/kprobes: Avoid kretprobe recursion bug + - kprobes: Fix error check when reusing optimized probes + - rt2x00: do not increment sequence number while re-transmitting + - mac80211: do not call driver wake_tx_queue op during reconfig + - s390/mem_detect: Use IS_ENABLED(CONFIG_BLK_DEV_INITRD) + - drm/amdgpu/gmc9: fix VM_L2_CNTL3 programming + - perf/x86/amd: Add event map for AMD Family 17h + - x86/cpu/bugs: Use __initconst for 'const' init data + - perf/x86: Fix incorrect PEBS_REGS + - x86/speculation: Prevent deadlock on ssb_state::lock + - timers/sched_clock: Prevent generic sched_clock wrap caused by tick_freeze() + - nfit/ars: Remove ars_start_flags + - nfit/ars: Introduce scrub_flags + - nfit/ars: Allow root to busy-poll the ARS state machine + - nfit/ars: Avoid stale ARS results + - tpm/tpm_i2c_atmel: Return -E2BIG when the transfer is incomplete + - tpm: Fix the type of the return value in calc_tpm2_event_size() + - Revert "kbuild: use -Oz instead of -Os when using clang" + - sched/fair: Limit sched_cfs_period_timer() loop to avoid hard lockup + - tpm: fix an invalid condition in tpm_common_poll + - mt76x02: avoid status_list.lock and sta->rate_ctrl_lock dependency + - device_cgroup: fix RCU imbalance in error case + - perf/ring_buffer: Fix AUX record suppression + - mm/memory_hotplug: do not unlock after failing to take the + device_hotplug_lock + - mm/vmstat.c: fix /proc/vmstat format for CONFIG_DEBUG_TLBFLUSH=y + CONFIG_SMP=n + - ALSA: info: Fix racy addition/deletion of nodes + - percpu: stop printing kernel addresses + - kernel/sysctl.c: fix out-of-bounds access when setting file-max + - Linux 5.0.10 + * Disco update: 5.0.9 upstream stable release (LP: #1830906) + - ARC: u-boot args: check that magic number is correct + - arc: hsdk_defconfig: Enable CONFIG_BLK_DEV_RAM + - perf/core: Restore mmap record type correctly + - mips: bcm47xx: Enable USB power on Netgear WNDR3400v2 + - ext4: avoid panic during forced reboot + - ext4: add missing brelse() in add_new_gdb_meta_bg() + - ext4: report real fs size after failed resize + - ALSA: echoaudio: add a check for ioremap_nocache + - ALSA: sb8: add a check for request_region + - auxdisplay: hd44780: Fix memory leak on ->remove() + - drm/udl: use drm_gem_object_put_unlocked. + - IB/mlx4: Fix race condition between catas error reset and aliasguid flows + - i40iw: Avoid panic when handling the inetdev event + - mmc: davinci: remove extraneous __init annotation + - ALSA: opl3: fix mismatch between snd_opl3_drum_switch definition and + declaration + - paride/pf: cleanup queues when detection fails + - paride/pcd: cleanup queues when detection fails + - thermal/intel_powerclamp: fix __percpu declaration of worker_data + - thermal: samsung: Fix incorrect check after code merge + - thermal: bcm2835: Fix crash in bcm2835_thermal_debugfs + - thermal/int340x_thermal: Add additional UUIDs + - thermal/int340x_thermal: fix mode setting + - thermal/intel_powerclamp: fix truncated kthread name + - scsi: iscsi: flush running unbind operations when removing a session + - sched/cpufreq: Fix 32-bit math overflow + - sched/core: Fix buffer overflow in cgroup2 property cpu.max + - x86/mm: Don't leak kernel addresses + - tools/power turbostat: return the exit status of a command + - scsi: core: Also call destroy_rcu_head() for passthrough requests + - scsi: qla2xxx: Fix NULL pointer crash due to stale CPUID + - perf stat: Fix --no-scale + - perf list: Don't forget to drop the reference to the allocated thread_map + - perf tools: Fix errors under optimization level '-Og' + - perf config: Fix an error in the config template documentation + - perf config: Fix a memory leak in collect_config() + - perf build-id: Fix memory leak in print_sdt_events() + - perf top: Fix error handling in cmd_top() + - perf hist: Add missing map__put() in error case + - perf map: Remove map from 'names' tree in __maps__remove() + - perf maps: Purge all maps from the 'names' tree + - perf top: Fix global-buffer-overflow issue + - perf evsel: Free evsel->counts in perf_evsel__exit() + - perf tests: Fix a memory leak of cpu_map object in the + openat_syscall_event_on_all_cpus test + - perf tests: Fix memory leak by expr__find_other() in test__expr() + - perf tests: Fix a memory leak in test__perf_evsel__tp_sched_test() + - ACPI / utils: Drop reference in test for device presence + - PM / Domains: Avoid a potential deadlock + - blk-iolatency: #include "blk.h" + - drm/exynos/mixer: fix MIXER shadow registry synchronisation code + - irqchip/stm32: Don't clear rising/falling config registers at init + - irqchip/stm32: Don't set rising configuration registers at init + - irqchip/mbigen: Don't clear eventid when freeing an MSI + - x86/hpet: Prevent potential NULL pointer dereference + - x86/hyperv: Prevent potential NULL pointer dereference + - x86/cpu/cyrix: Use correct macros for Cyrix calls on Geode processors + - drm/nouveau/debugfs: Fix check of pm_runtime_get_sync failure + - iommu/vt-d: Check capability before disabling protected memory + - iommu/vt-d: Save the right domain ID used by hardware + - x86/hw_breakpoints: Make default case in hw_breakpoint_arch_parse() return + an error + - cifs: fix that return -EINVAL when do dedupe operation + - fix incorrect error code mapping for OBJECTID_NOT_FOUND + - cifs: Fix slab-out-of-bounds when tracing SMB tcon + - x86/gart: Exclude GART aperture from kcore + - ext4: prohibit fstrim in norecovery mode + - lkdtm: Print real addresses + - lkdtm: Add tests for NULL pointer dereference + - drm/amdgpu: psp_ring_destroy cause psp->km_ring.ring_mem NULL + - drm/panel: panel-innolux: set display off in innolux_panel_unprepare + - crypto: axis - fix for recursive locking from bottom half + - Revert "ACPI / EC: Remove old CLEAR_ON_RESUME quirk" + - coresight: cpu-debug: Support for CA73 CPUs + - PCI: Blacklist power management of Gigabyte X299 DESIGNARE EX PCIe ports + - PCI/ASPM: Save LTR Capability for suspend/resume + - f2fs: sync filesystem after roll-forward recovery + - drm/nouveau/volt/gf117: fix speedo readout register + - platform/x86: intel_pmc_core: Quirk to ignore XTAL shutdown + - ARM: 8839/1: kprobe: make patch_lock a raw_spinlock_t + - drm/amdkfd: use init_mqd function to allocate object for hid_mqd (CI) + - appletalk: Fix use-after-free in atalk_proc_exit + - cifs: return -ENODATA when deleting an xattr that does not exist + - lib/div64.c: off by one in shift + - rxrpc: Fix client call connect/disconnect race + - f2fs: fix to dirty inode for i_mode recovery + - f2fs: fix to use kvfree instead of kzfree + - f2fs: fix to add refcount once page is tagged PG_private + - include/linux/swap.h: use offsetof() instead of custom __swapoffset macro + - bpf: fix use after free in bpf_evict_inode + - IB/hfi1: Failed to drain send queue when QP is put into error state + - paride/pf: Fix potential NULL pointer dereference + - paride/pcd: Fix potential NULL pointer dereference and mem leak + - Linux 5.0.9 + * crashdump fails on HiSilicon D06 (LP: #1828868) + - iommu/arm-smmu-v3: Don't disable SMMU in kdump kernel + * Eletrical noise occurred when external headset enter powersaving mode on a + DEll machine (LP: #1828798) + - ALSA: hda/realtek - Fixup headphone noise via runtime suspend + * [18.04/18.10] File libperf-jvmti.so is missing in linux-tools-common deb on + Ubuntu (LP: #1761379) + - [Packaging] Support building libperf-jvmti.so + * ethtool identify command doesn't blink LED on Hi1620 NICs (LP: #1829306) + - net: phy: marvell: add new default led configure for m88e151x + * Add support to Comet Lake LPSS (LP: #1830175) + - mfd: intel-lpss: Add Intel Comet Lake PCI IDs + * Reduce NAPI weight in hns driver from 256 to 64 (LP: #1830587) + - net: hns: Use NAPI_POLL_WEIGHT for hns driver + + -- Khalid Elmously Thu, 04 Jul 2019 03:39:18 -0400 + +linux-azure (5.0.0-1011.11) disco; urgency=medium + + * linux-azure: 5.0.0-1011.11 -proposed tracker (LP: #1834706) + + * linux-azure: mlx4, mlx5, ibverbs, ib_umad are not being loaded by default + (LP: #1834696) + - Revert "UBUNTU: [Config] linux-azure: CONFIG_MLX{4,5}_INFINIBAND=m" + + -- Marcelo Henrique Cerri Fri, 28 Jun 2019 22:13:08 -0300 + +linux-azure (5.0.0-1010.10) disco; urgency=medium + + * linux-azure: 5.0.0-1010.10 -proposed tracker (LP: #1833924) + + * Enable eBPF JIT in the linux-azure kernels (LP: #1827916) + - [Config] linux-azure: CONFIG_MLX{4,5}_INFINIBAND=m + + * linux-azure: Add the Catapult FPGA Driver (LP: #1824879) + - SAUCE: linux-azure: Include Catapult FPGA PCI driver + - [Config] linux-azure: CONFIG_CATAPULT_PCI=m + + * [Packaging] Improve config annotations check on custom kernels + (LP: #1820075) + - [Config] linux-azure: Include custom annotations files + + [ Ubuntu: 5.0.0-20.21 ] + + * linux: 5.0.0-20.21 -proposed tracker (LP: #1833934) + * CVE-2019-11479 + - SAUCE: tcp: add tcp_min_snd_mss sysctl + - SAUCE: tcp: enforce tcp_min_snd_mss in tcp_mtu_probing() + * Remote denial of service (resource exhaustion) caused by TCP SACK scoreboard + manipulation (LP: #1831638) // CVE-2019-11478 + - tcp: refine memory limit test in tcp_fragment() + + [ Ubuntu: 5.0.0-19.20 ] + + * CVE-2019-12817 + - SAUCE: powerpc/mm/64s/hash: Reallocate context ids on fork + + -- Marcelo Henrique Cerri Tue, 25 Jun 2019 10:36:47 -0300 + +linux-azure (5.0.0-1008.8) disco; urgency=medium + + + [ Ubuntu: 5.0.0-17.18 ] + + * Remote denial of service (resource exhaustion) caused by TCP SACK scoreboard + manipulation (LP: #1831638) + - SAUCE: tcp: tcp_fragment() should apply sane memory limits + * Remote denial of service (system crash) caused by integer overflow in TCP + SACK handling (LP: #1831637) + - SAUCE: tcp: limit payload size of sacked skbs + + -- Marcelo Henrique Cerri Tue, 04 Jun 2019 22:43:16 -0300 + +linux-azure (5.0.0-1007.7) disco; urgency=medium + + * linux-azure: 5.0.0-1007.7 -proposed tracker (LP: #1829166) + + * Disco update: 5.0.8 upstream stable release (LP: #1828415) + - [Config]: remove CONFIG_R3964 + - [Config]: add CONFIG_LDISC_AUTOLOAD=y + + [ Ubuntu: 5.0.0-16.17 ] + + * linux: 5.0.0-16.17 -proposed tracker (LP: #1829173) + * shiftfs: lock security sensitive superblock flags (LP: #1827122) + - SAUCE: shiftfs: lock down certain superblock flags + * Please package libbpf (which is done out of the kernel src) in Debian [for + 19.10] (LP: #1826410) + - SAUCE: tools -- fix add ability to disable libbfd + * Disco update: 5.0.8 upstream stable release (LP: #1828415) + - drm/i915/gvt: do not let pin count of shadow mm go negative + - kbuild: pkg: use -f $(srctree)/Makefile to recurse to top Makefile + - netfilter: nft_compat: use .release_ops and remove list of extension + - netfilter: nf_tables: use-after-free in dynamic operations + - netfilter: nf_tables: add missing ->release_ops() in error path of newrule() + - hv_netvsc: Fix unwanted wakeup after tx_disable + - ibmvnic: Fix completion structure initialization + - ip6_tunnel: Match to ARPHRD_TUNNEL6 for dev type + - ipv6: Fix dangling pointer when ipv6 fragment + - ipv6: sit: reset ip header pointer in ipip6_rcv + - kcm: switch order of device registration to fix a crash + - net: ethtool: not call vzalloc for zero sized memory request + - net-gro: Fix GRO flush when receiving a GSO packet. + - net/mlx5: Decrease default mr cache size + - netns: provide pure entropy for net_hash_mix() + - net: rds: force to destroy connection if t_sock is NULL in + rds_tcp_kill_sock(). + - net/sched: act_sample: fix divide by zero in the traffic path + - net/sched: fix ->get helper of the matchall cls + - qmi_wwan: add Olicard 600 + - r8169: disable ASPM again + - sctp: initialize _pad of sockaddr_in before copying to user memory + - tcp: Ensure DCTCP reacts to losses + - tcp: fix a potential NULL pointer dereference in tcp_sk_exit + - vrf: check accept_source_route on the original netdevice + - net/mlx5e: Fix error handling when refreshing TIRs + - net/mlx5e: Add a lock on tir list + - nfp: validate the return code from dev_queue_xmit() + - nfp: disable netpoll on representors + - bnxt_en: Improve RX consumer index validity check. + - bnxt_en: Reset device on RX buffer errors. + - net: ip_gre: fix possible use-after-free in erspan_rcv + - net: ip6_gre: fix possible use-after-free in ip6erspan_rcv + - net: bridge: always clear mcast matching struct on reports and leaves + - net: thunderx: fix NULL pointer dereference in nicvf_open/nicvf_stop + - net: vrf: Fix ping failed when vrf mtu is set to 0 + - net: core: netif_receive_skb_list: unlist skb before passing to pt->func + - r8169: disable default rx interrupt coalescing on RTL8168 + - net: mlx5: Add a missing check on idr_find, free buf + - net/mlx5e: Update xoff formula + - net/mlx5e: Update xon formula + - kbuild: clang: choose GCC_TOOLCHAIN_DIR not on LD + - lib/string.c: implement a basic bcmp + - Revert "clk: meson: clean-up clock registration" + - tty: mark Siemens R3964 line discipline as BROKEN + - [Config]: remove CONFIG_R3964 + - [Config]: add CONFIG_LDISC_AUTOLOAD=y + - tty: ldisc: add sysctl to prevent autoloading of ldiscs + - hwmon: (w83773g) Select REGMAP_I2C to fix build error + - hwmon: (occ) Fix power sensor indexing + - SMB3: Allow persistent handle timeout to be configurable on mount + - HID: logitech: Handle 0 scroll events for the m560 + - ACPICA: Clear status of GPEs before enabling them + - ACPICA: Namespace: remove address node from global list after method + termination + - ALSA: seq: Fix OOB-reads from strlcpy + - ALSA: hda/realtek: Enable headset MIC of Acer TravelMate B114-21 with ALC233 + - ALSA: hda/realtek - Add quirk for Tuxedo XC 1509 + - ALSA: xen-front: Do not use stream buffer size before it is set + - mm/huge_memory.c: fix modifying of page protection by insert_pfn_pmd() + - arm64: dts: rockchip: fix rk3328 sdmmc0 write errors + - mmc: alcor: don't write data before command has completed + - mmc: sdhci-omap: Don't finish_mrq() on a command error during tuning + - parisc: Detect QEMU earlier in boot process + - parisc: regs_return_value() should return gpr28 + - parisc: also set iaoq_b in instruction_pointer_set() + - alarmtimer: Return correct remaining time + - drm/i915/gvt: do not deliver a workload if its creation fails + - drm/sun4i: DW HDMI: Lower max. supported rate for H6 + - drm/udl: add a release method and delay modeset teardown + - kvm: svm: fix potential get_num_contig_pages overflow + - include/linux/bitrev.h: fix constant bitrev + - mm: writeback: use exact memcg dirty counts + - ASoC: intel: Fix crash at suspend/resume after failed codec registration + - ASoC: fsl_esai: fix channel swap issue when stream starts + - Btrfs: do not allow trimming when a fs is mounted with the nologreplay + option + - btrfs: prop: fix zstd compression parameter validation + - btrfs: prop: fix vanished compression property after failed set + - riscv: Fix syscall_get_arguments() and syscall_set_arguments() + - block: Revert v5.0 blk_mq_request_issue_directly() changes + - block: do not leak memory in bio_copy_user_iov() + - block: fix the return errno for direct IO + - genirq: Respect IRQCHIP_SKIP_SET_WAKE in irq_chip_set_wake_parent() + - genirq: Initialize request_mutex if CONFIG_SPARSE_IRQ=n + - virtio: Honour 'may_reduce_num' in vring_create_virtqueue + - ARM: OMAP1: ams-delta: Fix broken GPIO ID allocation + - ARM: dts: rockchip: fix rk3288 cpu opp node reference + - ARM: dts: am335x-evmsk: Correct the regulators for the audio codec + - ARM: dts: am335x-evm: Correct the regulators for the audio codec + - ARM: dts: rockchip: Fix SD card detection on rk3288-tinker + - ARM: dts: at91: Fix typo in ISC_D0 on PC9 + - arm64: futex: Fix FUTEX_WAKE_OP atomic ops with non-zero result value + - arm64: dts: rockchip: Fix vcc_host1_5v GPIO polarity on rk3328-rock64 + - arm64: dts: rockchip: fix rk3328 rgmii high tx error rate + - arm64: backtrace: Don't bother trying to unwind the userspace stack + - IB/mlx5: Reset access mask when looping inside page fault handler + - xen: Prevent buffer overflow in privcmd ioctl + - sched/fair: Do not re-read ->h_load_next during hierarchical load + calculation + - xtensa: fix return_address + - csky: Fix syscall_get_arguments() and syscall_set_arguments() + - x86/asm: Remove dead __GNUC__ conditionals + - x86/asm: Use stricter assembly constraints in bitops + - x86/perf/amd: Resolve race condition when disabling PMC + - x86/perf/amd: Resolve NMI latency issues for active PMCs + - x86/perf/amd: Remove need to check "running" bit in NMI handler + - PCI: Add function 1 DMA alias quirk for Marvell 9170 SATA controller + - PCI: pciehp: Ignore Link State Changes after powering off a slot + - xprtrdma: Fix helper that drains the transport + - powerpc/64s/radix: Fix radix segment exception handling + - dm integrity: change memcmp to strncmp in dm_integrity_ctr + - dm: revert 8f50e358153d ("dm: limit the max bio size as BIO_MAX_PAGES * + PAGE_SIZE") + - dm table: propagate BDI_CAP_STABLE_WRITES to fix sporadic checksum errors + - dm: disable DISCARD if the underlying storage no longer supports it + - dm integrity: fix deadlock with overlapping I/O + - drm/virtio: do NOT reuse resource ids + - Linux 5.0.8 + * Disco update: 5.0.7 upstream stable release (LP: #1828410) + - ext4: cleanup bh release code in ext4_ind_remove_space() + - CIFS: fix POSIX lock leak and invalid ptr deref + - nvme-fc: fix numa_node when dev is null + - nvme-loop: init nvmet_ctrl fatal_err_work when allocate + - h8300: use cc-cross-prefix instead of hardcoding h8300-unknown-linux- + - f2fs: fix to adapt small inline xattr space in __find_inline_xattr() + - f2fs: fix to avoid deadlock in f2fs_read_inline_dir() + - tracing: kdb: Fix ftdump to not sleep + - net/mlx5e: Fix access to non-existing receive queue + - net/mlx5: Avoid panic when setting vport rate + - net/mlx5: Avoid panic when setting vport mac, getting vport config + - xsk: fix to reject invalid flags in xsk_bind + - clk: ti: clkctrl: Fix clkdm_name regression for TI_CLK_CLKCTRL_COMPAT + - gpio: gpio-omap: fix level interrupt idling + - include/linux/relay.h: fix percpu annotation in struct rchan + - sysctl: handle overflow for file-max + - net: stmmac: Avoid sometimes uninitialized Clang warnings + - enic: fix build warning without CONFIG_CPUMASK_OFFSTACK + - libbpf: force fixdep compilation at the start of the build + - iio: adc: fix warning in Qualcomm PM8xxx HK/XOADC driver + - x86/hyperv: Fix kernel panic when kexec on HyperV + - perf c2c: Fix c2c report for empty numa node + - mm/sparse: fix a bad comparison + - mm/cma.c: cma_declare_contiguous: correct err handling + - mm/page_ext.c: fix an imbalance with kmemleak + - mm, swap: bounds check swap_info array accesses to avoid NULL derefs + - docs/core-api/mm: fix user memory accessors formatting + - mm,oom: don't kill global init via memory.oom.group + - memcg: killed threads should not invoke memcg OOM killer + - mm, mempolicy: fix uninit memory access + - mm/vmalloc.c: fix kernel BUG at mm/vmalloc.c:512! + - mm/slab.c: kmemleak no scan alien caches + - ocfs2: fix a panic problem caused by o2cb_ctl + - f2fs: do not use mutex lock in atomic context + - f2fs: fix to data block override node segment by mistake + - fs/file.c: initialize init_files.resize_wait + - page_poison: play nicely with KASAN + - kasan: fix kasan_check_read/write definitions + - cifs: use correct format characters + - dm thin: add sanity checks to thin-pool and external snapshot creation + - f2fs: fix to check inline_xattr_size boundary correctly + - cifs: Accept validate negotiate if server return NT_STATUS_NOT_SUPPORTED + - cifs: Fix NULL pointer dereference of devname + - perf beauty msg_flags: Add missing %s lost when adding prefix suppression + logic + - netfilter: nf_tables: check the result of dereferencing base_chain->stats + - PCI: mediatek: Fix memory mapped IO range size computation + - netfilter: conntrack: tcp: only close if RST matches exact sequence + - iommu/vt-d: Disable ATS support on untrusted devices + - jbd2: fix invalid descriptor block checksum + - ext4: fix bigalloc cluster freeing when hole punching under load + - fs: fix guard_bio_eod to check for real EOD errors + - tools lib traceevent: Fix buffer overflow in arg_eval + - mm/resource: Return real error codes from walk failures + - PCI/PME: Fix hotplug/sysfs remove deadlock in pcie_pme_remove() + - wil6210: check null pointer in _wil_cfg80211_merge_extra_ies + - mt76: fix a leaked reference by adding a missing of_node_put + - ath10k: Fix the wrong updation of BW in tx_stats debugfs entry + - lockdep/lib/tests: Fix run_tests.sh + - crypto: crypto4xx - add missing of_node_put after of_device_is_available + - crypto: cavium/zip - fix collision with generic cra_driver_name + - tools/bpf: selftests: add map lookup to test_map_in_map bpf prog + - usb: chipidea: Grab the (legacy) USB PHY by phandle first + - powerpc/powernv/ioda: Fix locked_vm counting for memory used by IOMMU tables + - scsi: core: replace GFP_ATOMIC with GFP_KERNEL in scsi_scan.c + - kbuild: invoke syncconfig if include/config/auto.conf.cmd is missing + - kbuild: make -r/-R effective in top Makefile for old Make versions + - btrfs: save drop_progress if we drop refs at all + - drm/amd/display: Fix reference counting for struct dc_sink. + - ath10k: don't report unset rssi values to mac80211 + - powerpc/xmon: Fix opcode being uninitialized in print_insn_powerpc + - coresight: etm4x: Add support to enable ETMv4.2 + - serial: 8250_pxa: honor the port number from devicetree + - ARM: 8840/1: use a raw_spinlock_t in unwind + - ARM: 8845/1: use unified assembler in c files + - iommu/io-pgtable-arm-v7s: Only kmemleak_ignore L2 tables + - powerpc/hugetlb: Handle mmap_min_addr correctly in get_unmapped_area + callback + - net: dsa: mv88e6xxx: Default CMODE to 1000BaseX only on 6390X + - ice: fix ice_remove_rule_internal vsi_list handling + - perf script: Handle missing fields with -F +.. + - btrfs: qgroup: Make qgroup async transaction commit more aggressive + - btrfs: don't enospc all tickets on flush failure + - mmc: omap: fix the maximum timeout setting + - net: dsa: mv88e6xxx: Add lockdep classes to fix false positive splat + - veth: Fix -Wformat-truncation + - e1000e: Fix -Wformat-truncation warnings + - mlxsw: spectrum: Avoid -Wformat-truncation warnings + - i2c: Allow recovery of the initial IRQ by an I2C client device. + - platform/x86: ideapad-laptop: Fix no_hw_rfkill_list for Lenovo RESCUER + R720-15IKBN + - platform/mellanox: mlxreg-hotplug: Fix KASAN warning + - loop: set GENHD_FL_NO_PART_SCAN after blkdev_reread_part() + - i2c: designware: Do not allow i2c_dw_xfer() calls while suspended + - IB/mlx4: Increase the timeout for CM cache + - clk: fractional-divider: check parent rate only if flag is set + - perf annotate: Fix getting source line failure + - powerpc/44x: Force PCI on for CURRITUCK + - ASoC: qcom: Fix of-node refcount unbalance in qcom_snd_parse_of() + - cpufreq: acpi-cpufreq: Report if CPU doesn't support boost technologies + - efi: cper: Fix possible out-of-bounds access + - s390/ism: ignore some errors during deregistration + - scsi: megaraid_sas: return error when create DMA pool failed + - scsi: fcoe: make use of fip_mode enum complete + - drm/amd/display: Clear stream->mode_changed after commit + - perf test: Fix failure of 'evsel-tp-sched' test on s390 + - mwifiex: don't advertise IBSS features without FW support + - perf report: Don't shadow inlined symbol with different addr range + - SoC: imx-sgtl5000: add missing put_device() + - media: ov7740: fix runtime pm initialization + - media: sh_veu: Correct return type for mem2mem buffer helpers + - media: s5p-jpeg: Correct return type for mem2mem buffer helpers + - media: rockchip/rga: Correct return type for mem2mem buffer helpers + - media: s5p-g2d: Correct return type for mem2mem buffer helpers + - media: mx2_emmaprp: Correct return type for mem2mem buffer helpers + - media: mtk-jpeg: Correct return type for mem2mem buffer helpers + - media: rockchip/vpu: Correct return type for mem2mem buffer helpers + - mt76: usb: do not run mt76u_queues_deinit twice + - gpio: of: Apply regulator-gpio quirk only to enable-gpios + - xen/gntdev: Do not destroy context while dma-bufs are in use + - vfs: fix preadv64v2 and pwritev64v2 compat syscalls with offset == -1 + - HID: intel-ish-hid: avoid binding wrong ishtp_cl_device + - cgroup, rstat: Don't flush subtree root unless necessary + - efi: Fix build error due to enum collision between efi.h and ima.h + - drm/sched: Fix entities with 0 rqs. + - regulator: core: Take lock before applying system load + - jbd2: fix race when writing superblock + - leds: lp55xx: fix null deref on firmware load failure + - tools build: Add -lrt to FEATURE_CHECK_LDFLAGS-libaio + - tools build: Add test-reallocarray.c to test-all.c to fix the build + - perf beauty waitid options: Fix up prefix showing logic + - perf trace: Check if the 'fd' is negative when mapping it to pathname + - perf report: Add s390 diagnosic sampling descriptor size + - perf coresight: Do not test for libopencsd by default + - iwlwifi: pcie: fix emergency path + - ACPI / video: Refactor and fix dmi_is_desktop() + - selftests: ir: fix warning: "%s" directive output may be truncated ’ + directive output may be truncated + - selftests: skip seccomp get_metadata test if not real root + - kprobes: Prohibit probing on bsearch() + - kprobes: Prohibit probing on RCU debug routine + - netfilter: conntrack: fix cloned unconfirmed skb->_nfct race in + __nf_conntrack_confirm + - ARM: 8833/1: Ensure that NEON code always compiles with Clang + - ARM: dts: meson8b: fix the Ethernet data line signals in eth_rgmii_pins + - ALSA: PCM: check if ops are defined before suspending PCM + - ath10k: fix shadow register implementation for WCN3990 + - usb: f_fs: Avoid crash due to out-of-scope stack ptr access + - sched/topology: Fix percpu data types in struct sd_data & struct s_data + - bcache: fix input overflow to cache set sysfs file io_error_halflife + - bcache: fix input overflow to sequential_cutoff + - bcache: fix potential div-zero error of writeback_rate_i_term_inverse + - bcache: improve sysfs_strtoul_clamp() + - genirq: Avoid summation loops for /proc/stat + - net: marvell: mvpp2: fix stuck in-band SGMII negotiation + - iw_cxgb4: fix srqidx leak during connection abort + - net: phy: consider latched link-down status in polling mode + - fbdev: fbmem: fix memory access if logo is bigger than the screen + - cdrom: Fix race condition in cdrom_sysctl_register + - drm: rcar-du: add missing of_node_put + - drm/amd/display: Don't re-program planes for DPMS changes + - bpf: test_maps: fix possible out of bound access warning + - x86/kexec: Fill in acpi_rsdp_addr from the first kernel + - powerpc/ptrace: Mitigate potential Spectre v1 + - drm/amd/display: Disconnect mpcc when changing tg + - perf/aux: Make perf_event accessible to setup_aux() + - e1000e: fix cyclic resets at link up with active tx + - e1000e: Exclude device from suspend direct complete optimization + - platform/x86: intel_pmc_core: Fix PCH IP sts reading + - i2c: of: Try to find an I2C adapter matching the parent + - staging: spi: mt7621: Add return code check on device_reset() + - iwlwifi: mvm: fix RFH config command with >=10 CPUs + - ASoC: fsl-asoc-card: fix object reference leaks in fsl_asoc_card_probe + - sched/debug: Initialize sd_sysctl_cpus if !CONFIG_CPUMASK_OFFSTACK + - efi/memattr: Don't bail on zero VA if it equals the region's PA + - sched/core: Use READ_ONCE()/WRITE_ONCE() in + move_queued_task()/task_rq_lock() + - drm/vkms: Bugfix racing hrtimer vblank handle + - drm/vkms: Bugfix extra vblank frame + - ARM: dts: lpc32xx: Remove leading 0x and 0s from bindings notation + - soc: qcom: gsbi: Fix error handling in gsbi_probe() + - drm/msm/dpu: Convert to a chained irq chip + - mt7601u: bump supported EEPROM version + - ARM: 8830/1: NOMMU: Toggle only bits in EXC_RETURN we are really care of + - ARM: avoid Cortex-A9 livelock on tight dmb loops + - block, bfq: fix in-service-queue check for queue merging + - block, bfq: fix queue removal from weights tree + - bpf: fix missing prototype warnings + - selftests/bpf: skip verifier tests for unsupported program types + - powerpc/64s: Clear on-stack exception marker upon exception return + - cgroup/pids: turn cgroup_subsys->free() into cgroup_subsys->release() to fix + the accounting + - backlight: pwm_bl: Use gpiod_get_value_cansleep() to get initial state + - tty: increase the default flip buffer limit to 2*640K + - powerpc/pseries: Perform full re-add of CPU for topology update post- + migration + - drm/amd/display: Enable vblank interrupt during CRC capture + - ALSA: dice: add support for Solid State Logic Duende Classic/Mini + - regulator: mcp16502: Include linux/gpio/consumer.h to fix build error + - usb: dwc3: gadget: Fix OTG events when gadget driver isn't loaded + - platform/x86: intel-hid: Missing power button release on some Dell models + - perf trace: Fixup etcsnoop example + - perf script python: Use PyBytes for attr in trace-event-python + - perf script python: Add trace_context extension module to sys.modules + - media: mt9m111: set initial frame size other than 0x0 + - hwrng: virtio - Avoid repeated init of completion + - soc/tegra: fuse: Fix illegal free of IO base address + - selftests/bpf: suppress readelf stderr when probing for BTF support + - HID: intel-ish: ipc: handle PIMR before ish_wakeup also clear PISR + busy_clear bit + - f2fs: UBSAN: set boolean value iostat_enable correctly + - f2fs: fix to initialize variable to avoid UBSAN/smatch warning + - hpet: Fix missing '=' character in the __setup() code of hpet_mmap_enable + - pinctrl: meson: fix G12A ao pull registers base address + - pinctrl: sh-pfc: r8a77990: Fix MOD_SEL bit numbering + - pinctrl: sh-pfc: r8a77995: Fix MOD_SEL bit numbering + - cpu/hotplug: Mute hotplug lockdep during init + - dmaengine: imx-dma: fix warning comparison of distinct pointer types + - dmaengine: qcom_hidma: assign channel cookie correctly + - dmaengine: qcom_hidma: initialize tx flags in hidma_prep_dma_* + - netfilter: physdev: relax br_netfilter dependency + - media: rcar-vin: Allow independent VIN link enablement + - media: s5p-jpeg: Check for fmt_ver_flag when doing fmt enumeration + - PCI: pciehp: Assign ctrl->slot_ctrl before writing it to hardware + - audit: hand taken context to audit_kill_trees for syscall logging + - regulator: act8865: Fix act8600_sudcdc_voltage_ranges setting + - pinctrl: meson: meson8b: add the eth_rxd2 and eth_rxd3 pins + - drm: Auto-set allow_fb_modifiers when given modifiers at plane init + - drm/nouveau: Stop using drm_crtc_force_disable + - x86/build: Specify elf_i386 linker emulation explicitly for i386 objects + - selinux: do not override context on context mounts + - brcmfmac: Use firmware_request_nowarn for the clm_blob + - wlcore: Fix memory leak in case wl12xx_fetch_firmware failure + - x86/build: Mark per-CPU symbols as absolute explicitly for LLD + - drm/fb-helper: fix leaks in error path of drm_fb_helper_fbdev_setup + - clk: meson: clean-up clock registration + - ARM: shmobile: Fix R-Car Gen2 regulator quirk + - clk: rockchip: fix frac settings of GPLL clock for rk3328 + - dmaengine: tegra: avoid overflow of byte tracking + - staging: iio: adt7316: fix dac_bits assignment + - Input: soc_button_array - fix mapping of the 5th GPIO in a PNP0C40 device + - ASoC: simple-card-utils: check "reg" property on + asoc_simple_card_get_dai_id() + - drm: Reorder set_property_atomic to avoid returning with an active ww_ctx + - drm/dp/mst: Configure no_stop_bit correctly for remote i2c xfers + - net: stmmac: Avoid one more sometimes uninitialized Clang warning + - appletalk: Fix compile regression + - gpio: of: Restrict enable-gpio quirk to regulator-gpio + - ACPI / video: Extend chassis-type detection with a "Lunch Box" check + - bcache: fix potential div-zero error of writeback_rate_p_term_inverse + - kbuild: add workaround for Debian make-kpkg + - kbuild: skip sub-make for in-tree build with GNU Make 4.x + - Linux 5.0.7 + * enabling ftrace on Hi1620 CS causes an Oops (LP: #1822871) + - arm64/ftrace: fix inadvertent BUG() in trampoline check + - arm64/module: ftrace: deal with place relative nature of PLTs + * The noise keeps occurring when Headset is plugged in on a Dell machine + (LP: #1827972) + - ALSA: hda/realtek - Fixed Dell AIO speaker noise + * CONFIG_LOG_BUF_SHIFT set to 14 is too low on arm64 (LP: #1824864) + - [Config] CONFIG_LOG_BUF_SHIFT=18 on all 64bit arches + * There are 4 HDMI/Displayport audio output listed in sound setting without + attach any HDMI/DP monitor (LP: #1827967) + - ALSA: hda/hdmi - Read the pin sense from register when repolling + - ALSA: hda/hdmi - Consider eld_valid when reporting jack event + * Headphone jack switch sense is inverted: plugging in headphones disables + headphone output (LP: #1824259) + - ASoC: rt5645: Headphone Jack sense inverts on the LattePanda board + * ratelimit cma_alloc messages (LP: #1828092) + - SAUCE: cma: ratelimit cma_alloc error messages + * linux-buildinfo: pull out ABI information into its own package + (LP: #1806380) + - [Packaging] autoreconstruct -- base tag is always primary mainline version + * CTAUTO:DevOps:860.50:devops4fp1:Error occurred during LINUX Dmesg error + Checking for all LINUX clients for devops4p10 (LP: #1766201) + - SAUCE: integrity: downgrade error to warning + * False positive test result in run_netsocktests from net in + ubuntu_kernel_selftest (LP: #1825777) + - selftests/net: correct the return value for run_netsocktests + + -- Andrea Righi Thu, 16 May 2019 15:27:23 +0200 + +linux-azure (5.0.0-1006.6) disco; urgency=medium + + + [ Ubuntu: 5.0.0-15.16 ] + + * CVE-2019-11683 + - udp: fix GRO reception in case of length mismatch + - udp: fix GRO packet of death + * CVE-2018-12126 // CVE-2018-12127 // CVE-2018-12130 + - x86/msr-index: Cleanup bit defines + - x86/speculation: Consolidate CPU whitelists + - x86/speculation/mds: Add basic bug infrastructure for MDS + - x86/speculation/mds: Add BUG_MSBDS_ONLY + - x86/kvm: Expose X86_FEATURE_MD_CLEAR to guests + - x86/speculation/mds: Add mds_clear_cpu_buffers() + - x86/speculation/mds: Clear CPU buffers on exit to user + - x86/kvm/vmx: Add MDS protection when L1D Flush is not active + - x86/speculation/mds: Conditionally clear CPU buffers on idle entry + - x86/speculation/mds: Add mitigation control for MDS + - x86/speculation/mds: Add sysfs reporting for MDS + - x86/speculation/mds: Add mitigation mode VMWERV + - Documentation: Move L1TF to separate directory + - Documentation: Add MDS vulnerability documentation + - x86/speculation/mds: Add mds=full,nosmt cmdline option + - x86/speculation: Move arch_smt_update() call to after mitigation decisions + - x86/speculation/mds: Add SMT warning message + - x86/speculation/mds: Fix comment + - x86/speculation/mds: Print SMT vulnerable on MSBDS with mitigations off + - x86/speculation/mds: Add 'mitigations=' support for MDS + * CVE-2017-5715 // CVE-2017-5753 + - s390/speculation: Support 'mitigations=' cmdline option + * CVE-2017-5715 // CVE-2017-5753 // CVE-2017-5754 // CVE-2018-3639 + - powerpc/speculation: Support 'mitigations=' cmdline option + * CVE-2017-5715 // CVE-2017-5754 // CVE-2018-3620 // CVE-2018-3639 // + CVE-2018-3646 + - cpu/speculation: Add 'mitigations=' cmdline option + - x86/speculation: Support 'mitigations=' cmdline option + * Packaging resync (LP: #1786013) + - [Packaging] resync git-ubuntu-log + + -- Stefan Bader Tue, 07 May 2019 11:45:56 +0200 + +linux-azure (5.0.0-1005.5) disco; urgency=medium + + * linux-azure: 5.0.0-1005.5 -proposed tracker (LP: #1826143) + + [ Ubuntu: 5.0.0-14.15 ] + + * linux: 5.0.0-14.15 -proposed tracker (LP: #1826150) + * [SRU] Please sync vbox modules from virtualbox 6.0.6 on next kernel update + (LP: #1825210) + - vbox-update: updates for renamed makefiles + - ubuntu: vbox -- update to 6.0.6-dfsg-1 + * Intel I210 Ethernet card not working after hotplug [8086:1533] + (LP: #1818490) + - igb: Fix WARN_ONCE on runtime suspend + * [regression][snd_hda_codec_realtek] repeating crackling noise after 19.04 + upgrade (LP: #1821663) + - ALSA: hda - Add two more machines to the power_save_blacklist + * CVE-2019-9500 + - brcmfmac: assure SSID length from firmware is limited + * CVE-2019-9503 + - brcmfmac: add subtype check for event handling in data path + * CVE-2019-3882 + - vfio/type1: Limit DMA mappings per container + * autofs kernel module missing (LP: #1824333) + - [Config] Update autofs4 path in inclusion list + * The Realtek card reader does not enter PCIe 1.1/1.2 (LP: #1825487) + - misc: rtsx: Enable OCP for rts522a rts524a rts525a rts5260 + - SAUCE: misc: rtsx: Fixed rts5260 power saving parameter and sd glitch + * headset-mic doesn't work on two Dell laptops. (LP: #1825272) + - ALSA: hda/realtek - add two more pin configuration sets to quirk table + * CVE-2019-3887 + - KVM: x86: nVMX: close leak of L0's x2APIC MSRs (CVE-2019-3887) + - KVM: x86: nVMX: fix x2APIC VTPR read intercept + * CVE-2019-3874 + - sctp: implement memory accounting on tx path + - sctp: implement memory accounting on rx path + * CVE-2019-1999 + - binder: fix race between munmap() and direct reclaim + * apparmor does not start in Disco LXD containers (LP: #1824812) + - SAUCE: shiftfs: use separate llseek method for directories + + -- Stefan Bader Thu, 25 Apr 2019 17:00:04 +0200 + +linux-azure (5.0.0-1004.4) disco; urgency=medium + + * linux-azure: 5.0.0-1004.4 -proposed tracker (LP: #1824834) + + [ Ubuntu: 5.0.0-13.14 ] + + * linux: 5.0.0-13.14 -proposed tracker (LP: #1824819) + * Display only has 640x480 (LP: #1824677) + - Revert "UBUNTU: SAUCE: drm/nouveau: Disable nouveau driver by default" + * shiftfs: use after free when checking mount options (LP: #1824735) + - SAUCE: shiftfs: prevent use-after-free when verifying mount options + + [ Ubuntu: 5.0.0-12.13 ] + + * linux: 5.0.0-12.13 -proposed tracker (LP: #1824726) + * Linux 5.0 black screen on boot, display flickers (i915 regression with + certain laptop panels) (LP: #1824216) + - drm/i915/dp: revert back to max link rate and lane count on eDP + * kernel BUG at fs/attr.c:287 when using shiftfs (LP: #1824717) + - SAUCE: shiftfs: fix passing of attrs to underaly for setattr + + -- Seth Forshee Mon, 15 Apr 2019 10:32:08 -0500 + +linux-azure (5.0.0-1003.3) disco; urgency=medium + + * linux-azure: 5.0.0-1003.3 -proposed tracker (LP: #1824376) + + [ Ubuntu: 5.0.0-11.12 ] + + * linux: 5.0.0-11.12 -proposed tracker (LP: #1824383) + * hns3: PPU_PF_ABNORMAL_INT_ST over_8bd_no_fe found [error status=0x1] + (LP: #1824194) + - net: hns3: fix for not calculating tx bd num correctly + * disco: unable to use iptables/enable ufw under -virtual kernel + (LP: #1823862) + - [Packaging] add bpfilter to linux-modules + * Make shiftfs a module rather than built-in (LP: #1824354) + - [Config] CONFIG_SHIFT_FS=m + * shiftfs: chown sets untranslated ids in lower fs (LP: #1824350) + - SAUCE: shiftfs: use translated ids when chaning lower fs attrs + * [Hyper-V] KVP daemon fails to start on first boot of disco VM (LP: #1820063) + - [Packaging] bind hv_kvp_daemon startup to hv_kvp device + + -- Seth Forshee Thu, 11 Apr 2019 12:28:21 -0500 + +linux-azure (5.0.0-1002.2) disco; urgency=medium + + * linux-azure: 5.0.0-1002.2 -proposed tracker (LP: #1823220) + + * Set CONFIG_RANDOM_TRUST_CPU=y (LP: #1823754) + - [Config] CONFIG_RANDOM_TRUST_CPU=y + + * PAGE_POISONING / PAGE_POISONING_NO_SANITY / PAGE_POISONING_ZERO option was + expected to be set in C-KVM (LP: #1812624) + - [Config]: enable PAGE_POISONING, PAGE_POISONING_NO_SANITY, + PAGE_POISONING_ZERO + + * Add CONFIG_NO_HZ_FULL=y to linux-azure kernels (LP: #1818138) + - [Config] linux-azure: CONFIG_NO_HZ_FULL=y + + * Miscellaneous Ubuntu changes + - [Config] update configs after rebase to 5.0.0-10.11 + - Revert "UBUNTU: [Config] azure: CONFIG_HOTPLUG_CPU=n" + + [ Ubuntu: 5.0.0-10.11 ] + + * linux: 5.0.0-10.11 -proposed tracker (LP: #1823936) + * Apparmor enforcement failure in lxc selftests (LP: #1823379) + - SAUCE: apparmor: Restore Y/N in /sys for apparmor's "enabled" + * systemd cause kernel trace "BUG: unable to handle kernel paging request at + 6db23a14" on Cosmic i386 (LP: #1813244) + - openvswitch: fix flow actions reallocation + + [ Ubuntu: 5.0.0-9.10 ] + + * linux: 5.0.0-9.10 -proposed tracker (LP: #1823228) + * Packaging resync (LP: #1786013) + - [Packaging] resync git-ubuntu-log + - [Packaging] update helper scripts + - [Packaging] resync retpoline extraction + * Huawei Hi1822 NIC has poor performance (LP: #1820187) + - net-next/hinic: replace disable_irq_nosync/enable_irq + * Add uid shifting overlay filesystem (shiftfs) (LP: #1823186) + - shiftfs: uid/gid shifting bind mount + - shiftfs: rework and extend + - shiftfs: support some btrfs ioctls + - [Config] enable shiftfs + * Cannot boot or install - have to use nomodeset (LP: #1821820) + - Revert "drm/i915/fbdev: Actually configure untiled displays" + * Disco update: v5.0.6 upstream stable release (LP: #1823060) + - netfilter: nf_tables: fix set double-free in abort path + - dccp: do not use ipv6 header for ipv4 flow + - genetlink: Fix a memory leak on error path + - gtp: change NET_UDP_TUNNEL dependency to select + - ipv6: make ip6_create_rt_rcu return ip6_null_entry instead of NULL + - mac8390: Fix mmio access size probe + - mISDN: hfcpci: Test both vendor & device ID for Digium HFC4S + - net: aquantia: fix rx checksum offload for UDP/TCP over IPv6 + - net: datagram: fix unbounded loop in __skb_try_recv_datagram() + - net/packet: Set __GFP_NOWARN upon allocation in alloc_pg_vec + - net: phy: meson-gxl: fix interrupt support + - net: rose: fix a possible stack overflow + - net: stmmac: fix memory corruption with large MTUs + - net-sysfs: call dev_hold if kobject_init_and_add success + - net: usb: aqc111: Extend HWID table by QNAP device + - packets: Always register packet sk in the same order + - rhashtable: Still do rehash when we get EEXIST + - sctp: get sctphdr by offset in sctp_compute_cksum + - sctp: use memdup_user instead of vmemdup_user + - tcp: do not use ipv6 header for ipv4 flow + - tipc: allow service ranges to be connect()'ed on RDM/DGRAM + - tipc: change to check tipc_own_id to return in tipc_net_stop + - tipc: fix cancellation of topology subscriptions + - tun: properly test for IFF_UP + - vrf: prevent adding upper devices + - vxlan: Don't call gro_cells_destroy() before device is unregistered + - thunderx: enable page recycling for non-XDP case + - thunderx: eliminate extra calls to put_page() for pages held for recycling + - net: dsa: mv88e6xxx: fix few issues in mv88e6390x_port_set_cmode + - net: mii: Fix PAUSE cap advertisement from linkmode_adv_to_lcl_adv_t() + helper + - net: phy: don't clear BMCR in genphy_soft_reset + - r8169: fix cable re-plugging issue + - ila: Fix rhashtable walker list corruption + - tun: add a missing rcu_read_unlock() in error path + - powerpc/fsl: Fix the flush of branch predictor. + - Btrfs: fix incorrect file size after shrinking truncate and fsync + - btrfs: remove WARN_ON in log_dir_items + - btrfs: don't report readahead errors and don't update statistics + - btrfs: Fix bound checking in qgroup_trace_new_subtree_blocks + - btrfs: Avoid possible qgroup_rsv_size overflow in + btrfs_calculate_inode_block_rsv_size + - Btrfs: fix assertion failure on fsync with NO_HOLES enabled + - locks: wake any locks blocked on request before deadlock check + - tracing: initialize variable in create_dyn_event() + - ARM: imx6q: cpuidle: fix bug that CPU might not wake up at expected time + - powerpc: bpf: Fix generation of load/store DW instructions + - vfio: ccw: only free cp on final interrupt + - NFS: Fix nfs4_lock_state refcounting in nfs4_alloc_{lock,unlock}data() + - NFS: fix mount/umount race in nlmclnt. + - NFSv4.1 don't free interrupted slot on open + - net: dsa: qca8k: remove leftover phy accessors + - ALSA: rawmidi: Fix potential Spectre v1 vulnerability + - ALSA: seq: oss: Fix Spectre v1 vulnerability + - ALSA: pcm: Fix possible OOB access in PCM oss plugins + - ALSA: pcm: Don't suspend stream in unrecoverable PCM state + - ALSA: hda/realtek - Fixed Headset Mic JD not stable + - ALSA: hda/realtek: merge alc_fixup_headset_jack to alc295_fixup_chromebook + - ALSA: hda/realtek - Add support headset mode for DELL WYSE AIO + - ALSA: hda/realtek - Add support headset mode for New DELL WYSE NB + - ALSA: hda/realtek: Enable headset MIC of Acer AIO with ALC286 + - ALSA: hda/realtek: Enable headset MIC of Acer Aspire Z24-890 with ALC286 + - ALSA: hda/realtek - Add support for Acer Aspire E5-523G/ES1-432 headset mic + - ALSA: hda/realtek: Enable ASUS X441MB and X705FD headset MIC with ALC256 + - ALSA: hda/realtek: Enable headset mic of ASUS P5440FF with ALC256 + - ALSA: hda/realtek: Enable headset MIC of ASUS X430UN and X512DK with ALC256 + - ALSA: hda/realtek - Fix speakers on Acer Predator Helios 500 Ryzen laptops + - kbuild: modversions: Fix relative CRC byte order interpretation + - fs/open.c: allow opening only regular files during execve() + - ocfs2: fix inode bh swapping mixup in ocfs2_reflink_inodes_lock + - scsi: sd: Fix a race between closing an sd device and sd I/O + - scsi: sd: Quiesce warning if device does not report optimal I/O size + - scsi: zfcp: fix rport unblock if deleted SCSI devices on Scsi_Host + - scsi: zfcp: fix scsi_eh host reset with port_forced ERP for non-NPIV FCP + devices + - drm/rockchip: vop: reset scale mode when win is disabled + - tty/serial: atmel: Add is_half_duplex helper + - tty/serial: atmel: RS485 HD w/DMA: enable RX after TX is stopped + - tty: mxs-auart: fix a potential NULL pointer dereference + - tty: atmel_serial: fix a potential NULL pointer dereference + - tty: serial: qcom_geni_serial: Initialize baud in qcom_geni_console_setup + - staging: comedi: ni_mio_common: Fix divide-by-zero for DIO cmdtest + - staging: olpc_dcon_xo_1: add missing 'const' qualifier + - staging: speakup_soft: Fix alternate speech with other synths + - staging: vt6655: Remove vif check from vnt_interrupt + - staging: vt6655: Fix interrupt race condition on device start up. + - staging: erofs: fix to handle error path of erofs_vmap() + - staging: erofs: fix error handling when failed to read compresssed data + - staging: erofs: keep corrupted fs from crashing kernel in erofs_readdir() + - serial: max310x: Fix to avoid potential NULL pointer dereference + - serial: mvebu-uart: Fix to avoid a potential NULL pointer dereference + - serial: sh-sci: Fix setting SCSCR_TIE while transferring data + - USB: serial: cp210x: add new device id + - USB: serial: ftdi_sio: add additional NovaTech products + - USB: serial: mos7720: fix mos_parport refcount imbalance on error path + - USB: serial: option: set driver_info for SIM5218 and compatibles + - USB: serial: option: add support for Quectel EM12 + - USB: serial: option: add Olicard 600 + - ACPI / CPPC: Fix guaranteed performance handling + - Disable kgdboc failed by echo space to /sys/module/kgdboc/parameters/kgdboc + - fs/proc/proc_sysctl.c: fix NULL pointer dereference in put_links + - drivers/block/zram/zram_drv.c: fix idle/writeback string compare + - blk-mq: fix sbitmap ws_active for shared tags + - cpufreq: intel_pstate: Also use CPPC nominal_perf for base_frequency + - cpufreq: scpi: Fix use after free + - drm/vgem: fix use-after-free when drm_gem_handle_create() fails + - drm/vkms: fix use-after-free when drm_gem_handle_create() fails + - drm/i915: Mark AML 0x87CA as ULX + - drm/i915/gvt: Fix MI_FLUSH_DW parsing with correct index check + - drm/i915/icl: Fix the TRANS_DDI_FUNC_CTL2 bitfield macro + - gpio: exar: add a check for the return value of ida_simple_get fails + - gpio: adnp: Fix testing wrong value in adnp_gpio_direction_input + - phy: sun4i-usb: Support set_mode to USB_HOST for non-OTG PHYs + - usb: mtu3: fix EXTCON dependency + - USB: gadget: f_hid: fix deadlock in f_hidg_write() + - usb: common: Consider only available nodes for dr_mode + - mm/memory.c: fix modifying of page protection by insert_pfn() + - usb: host: xhci-rcar: Add XHCI_TRUST_TX_LENGTH quirk + - xhci: Fix port resume done detection for SS ports with LPM enabled + - usb: xhci: dbc: Don't free all memory with spinlock held + - xhci: Don't let USB3 ports stuck in polling state prevent suspend + - usb: cdc-acm: fix race during wakeup blocking TX traffic + - usb: typec: tcpm: Try PD-2.0 if sink does not respond to 3.0 source-caps + - usb: typec: Fix unchecked return value + - mm/hotplug: fix offline undo_isolate_page_range() + - mm: add support for kmem caches in DMA32 zone + - iommu/io-pgtable-arm-v7s: request DMA32 memory, and improve debugging + - mm: mempolicy: make mbind() return -EIO when MPOL_MF_STRICT is specified + - mm/debug.c: fix __dump_page when mapping->host is not set + - mm/memory_hotplug.c: fix notification in offline error path + - mm/page_isolation.c: fix a wrong flag in set_migratetype_isolate() + - mm/migrate.c: add missing flush_dcache_page for non-mapped page migrate + - perf pmu: Fix parser error for uncore event alias + - perf intel-pt: Fix TSC slip + - objtool: Query pkg-config for libelf location + - powerpc/pseries/energy: Use OF accessor functions to read ibm,drc-indexes + - powerpc/64: Fix memcmp reading past the end of src/dest + - powerpc/pseries/mce: Fix misleading print for TLB mutlihit + - watchdog: Respect watchdog cpumask on CPU hotplug + - cpu/hotplug: Prevent crash when CPU bringup fails on CONFIG_HOTPLUG_CPU=n + - x86/smp: Enforce CONFIG_HOTPLUG_CPU when SMP=y + - KVM: Reject device ioctls from processes other than the VM's creator + - KVM: x86: Emulate MSR_IA32_ARCH_CAPABILITIES on AMD hosts + - KVM: x86: update %rip after emulating IO + - bpf: do not restore dst_reg when cur_state is freed + - mt76x02u: use usb_bulk_msg to upload firmware + - Linux 5.0.6 + * RDMA/hns updates for disco (LP: #1822897) + - RDMA/hns: Fix the bug with updating rq head pointer when flush cqe + - RDMA/hns: Bugfix for the scene without receiver queue + - RDMA/hns: Add constraint on the setting of local ACK timeout + - RDMA/hns: Modify the pbl ba page size for hip08 + - RDMA/hns: RDMA/hns: Assign rq head pointer when enable rq record db + - RDMA/hns: Add the process of AEQ overflow for hip08 + - RDMA/hns: Add SCC context allocation support for hip08 + - RDMA/hns: Add SCC context clr support for hip08 + - RDMA/hns: Add timer allocation support for hip08 + - RDMA/hns: Remove set but not used variable 'rst' + - RDMA/hns: Make some function static + - RDMA/hns: Fix the Oops during rmmod or insmod ko when reset occurs + - RDMA/hns: Fix the chip hanging caused by sending mailbox&CMQ during reset + - RDMA/hns: Fix the chip hanging caused by sending doorbell during reset + - RDMA/hns: Limit minimum ROCE CQ depth to 64 + - RDMA/hns: Fix the state of rereg mr + - RDMA/hns: Set allocated memory to zero for wrid + - RDMA/hns: Delete useful prints for aeq subtype event + - RDMA/hns: Configure capacity of hns device + - RDMA/hns: Modify qp&cq&pd specification according to UM + - RDMA/hns: Bugfix for set hem of SCC + - RDMA/hns: Use GFP_ATOMIC in hns_roce_v2_modify_qp + * autopkgtests run too often, too much and don't skip enough (LP: #1823056) + - Set +x on rebuild testcase. + - Skip rebuild test, for regression-suite deps. + - Make ubuntu-regression-suite skippable on unbootable kernels. + - make rebuild use skippable error codes when skipping. + - Only run regression-suite, if requested to. + * touchpad not working on lenovo yoga 530 (LP: #1787775) + - Revert "UBUNTU: SAUCE: i2c:amd Depends on ACPI" + - Revert "UBUNTU: SAUCE: i2c:amd move out pointer in union i2c_event_base" + - i2c: add extra check to safe DMA buffer helper + - i2c: Add drivers for the AMD PCIe MP2 I2C controller + - [Config] Update config for AMD MP2 I2C driver + * Detect SMP PHY control command errors (LP: #1822680) + - scsi: libsas: Check SMP PHY control function result + * disable a.out support (LP: #1818552) + - [Config] Disable a.out support + - [Config] remove binfmt_aout from abi for i386 lowlatency + * bionic: fork out linux-snapdragon into its own topic kernel (LP: #1820868) + - [Packaging] remove snapdragon flavour support + - Revert "UBUNTU: SAUCE: (snapdragon) drm/msm/adv7511: wrap hacks under + CONFIG_ADV7511_SNAPDRAGON_HACKS #ifdefs" + - Revert "UBUNTU: SAUCE: (snapdragon) media: ov5645: skip address change if dt + addr == default addr" + - Revert "UBUNTU: SAUCE: (snapdragon) DT: leds: Add Qualcomm Light Pulse + Generator binding" + - Revert "UBUNTU: SAUCE: (snapdragon) MAINTAINERS: Add Qualcomm Camera Control + Interface driver" + - Revert "UBUNTU: SAUCE: (snapdragon) dt-bindings: media: Binding document for + Qualcomm Camera Control Interface driver" + - Revert "UBUNTU: SAUCE: (snapdragon) leds: Add driver for Qualcomm LPG" + - Revert "UBUNTU: SAUCE: (snapdragon) HACK: drm/msm/adv7511: Don't rely on + interrupts for EDID parsing" + - Revert "UBUNTU: SAUCE: (snapdragon) drm/bridge/adv7511: Delay clearing of + HPD interrupt status" + - Revert "UBUNTU: SAUCE: (snapdragon) media: ov5645: Fix I2C address" + - Revert "UBUNTU: SAUCE: (snapdragon) i2c-qcom-cci: Fix I2C address bug" + - Revert "UBUNTU: SAUCE: (snapdragon) i2c-qcom-cci: Fix run queue completion + timeout" + - Revert "UBUNTU: SAUCE: (snapdragon) camss: Do not register if no cameras are + present" + - Revert "UBUNTU: SAUCE: (snapdragon) i2c: Add Qualcomm Camera Control + Interface driver" + - Revert "UBUNTU: SAUCE: (snapdragon) ov5645: I2C address change" + - Revert "UBUNTU: SAUCE: (snapdragon) regulator: smd: Allow + REGULATOR_QCOM_SMD_RPM=m" + - Revert "UBUNTU: SAUCE: (snapdragon) cpufreq: Add apq8016 to cpufreq-dt- + platdev blacklist" + - Revert "UBUNTU: SAUCE: (snapdragon) PM / OPP: Add a helper to get an opp + regulator for device" + - Revert "UBUNTU: SAUCE: (snapdragon) PM / OPP: HACK: Allow to set regulator + without opp_list" + - Revert "UBUNTU: SAUCE: (snapdragon) PM / OPP: Drop RCU usage in + dev_pm_opp_adjust_voltage()" + - Revert "UBUNTU: SAUCE: (snapdragon) PM / OPP: Support adjusting OPP voltages + at runtime" + - Revert "UBUNTU: SAUCE: (snapdragon) regulator: smd: Add floor and corner + operations" + - Revert "UBUNTU: SAUCE: (snapdragon) power: avs: cpr: Register with cpufreq- + dt" + - Revert "UBUNTU: SAUCE: (snapdragon) power: avs: cpr: fix with new + reg_sequence structures" + - Revert "UBUNTU: SAUCE: (snapdragon) power: avs: cpr: Use raw mem access for + qfprom" + - Revert "UBUNTU: SAUCE: (snapdragon) power: avs: Add support for CPR (Core + Power Reduction)" + - Revert "UBUNTU: SAUCE: (snapdragon) HACK: drm/msm/iommu: Remove runtime_put + calls in map/unmap" + - Revert "UBUNTU: SAUCE: (snapdragon) arm64: defconfig: enable LEDS_QCOM_LPG" + - Revert "UBUNTU: SAUCE: (snapdragon) kernel: distro.config: enable 'BBR' TCP + congestion algorithm" + - Revert "UBUNTU: SAUCE: (snapdragon) kernel: distro.config: enable 'fq' and + 'fq_codel' qdiscs" + - Revert "UBUNTU: SAUCE: (snapdragon) kernel: distro.config: enable + 'schedutil' CPUfreq governor" + - Revert "UBUNTU: SAUCE: (snapdragon) kernel: configs: set USB_CONFIG_F_FS in + distro.config" + - Revert "UBUNTU: SAUCE: (snapdragon) arm64: defconfig: enable + CONFIG_USB_CONFIGFS_F_FS by default" + - Revert "UBUNTU: SAUCE: (snapdragon) kernel: configs: add freq stat to sysfs" + - Revert "UBUNTU: SAUCE: (snapdragon) arm64: configs: Enable camera drivers" + - Revert "UBUNTU: SAUCE: (snapdragon) arm64: defconfig: disable ANALOG_TV and + DIGITAL_TV" + - Revert "UBUNTU: SAUCE: (snapdragon) kernel: configs: add more USB net + drivers" + - Revert "UBUNTU: SAUCE: (snapdragon) arm64: configs: enable BT_QCOMSMD" + - Revert "UBUNTU: SAUCE: (snapdragon) arm64: defconfig: enable + CFG80211_DEFAULT_PS by default" + - Revert "UBUNTU: SAUCE: (snapdragon) Force the SMD regulator driver to be + compiled-in" + - Revert "UBUNTU: SAUCE: (snapdragon) kernel: configs: enable dm_mod and + dm_crypt" + - Revert "UBUNTU: SAUCE: (snapdragon) arm64: defconfig: Enable a53/apcs and + avs" + - Revert "UBUNTU: SAUCE: (snapdragon) arm64: configs: enable QCOM Venus" + - Revert "UBUNTU: SAUCE: (snapdragon) kernel: distro.config: enable debug + friendly USB network adpater" + - Revert "UBUNTU: SAUCE: (snapdragon) arm64: configs: enable WCN36xx" + - Revert "UBUNTU: SAUCE: (snapdragon) kernel: configs; add distro.config" + - Revert "UBUNTU: SAUCE: (snapdragon) arm64: defconfig: enable QCOM audio + drivers for APQ8016 and DB410c" + - Revert "UBUNTU: SAUCE: (snapdragon) arm64: defconfig: enable REMOTEPROC" + - [Config] fix abi for remove i2c-qcom-cci module + - [Config] update annotations + - [Config] update configs following snapdragon removal + * Disco update: v5.0.5 upstream stable release (LP: #1822671) + - Revert "ALSA: hda - Enforces runtime_resume after S3 and S4 for each codec" + - ALSA: hda - add Lenovo IdeaCentre B550 to the power_save_blacklist + - ALSA: firewire-motu: use 'version' field of unit directory to identify model + - mmc: pxamci: fix enum type confusion + - mmc: alcor: fix DMA reads + - mmc: mxcmmc: "Revert mmc: mxcmmc: handle highmem pages" + - mmc: renesas_sdhi: limit block count to 16 bit for old revisions + - drm/amdgpu: fix invalid use of change_bit + - drm/vmwgfx: Don't double-free the mode stored in par->set_mode + - drm/vmwgfx: Return 0 when gmrid::get_node runs out of ID's + - iommu/amd: fix sg->dma_address for sg->offset bigger than PAGE_SIZE + - iommu/iova: Fix tracking of recently failed iova address + - libceph: wait for latest osdmap in ceph_monc_blacklist_add() + - udf: Fix crash on IO error during truncate + - mips: loongson64: lemote-2f: Add IRQF_NO_SUSPEND to "cascade" irqaction. + - MIPS: Ensure ELF appended dtb is relocated + - MIPS: Fix kernel crash for R6 in jump label branch function + - powerpc/vdso64: Fix CLOCK_MONOTONIC inconsistencies across Y2038 + - powerpc/security: Fix spectre_v2 reporting + - net/mlx5: Fix DCT creation bad flow + - scsi: core: Avoid that a kernel warning appears during system resume + - scsi: qla2xxx: Fix FC-AL connection target discovery + - scsi: ibmvscsi: Protect ibmvscsi_head from concurrent modificaiton + - scsi: ibmvscsi: Fix empty event pool access during host removal + - futex: Ensure that futex address is aligned in handle_futex_death() + - perf probe: Fix getting the kernel map + - objtool: Move objtool_file struct off the stack + - irqchip/gic-v3-its: Fix comparison logic in lpi_range_cmp + - clocksource/drivers/riscv: Fix clocksource mask + - ALSA: ac97: Fix of-node refcount unbalance + - ext4: fix NULL pointer dereference while journal is aborted + - ext4: fix data corruption caused by unaligned direct AIO + - ext4: brelse all indirect buffer in ext4_ind_remove_space() + - media: v4l2-ctrls.c/uvc: zero v4l2_event + - Bluetooth: hci_uart: Check if socket buffer is ERR_PTR in h4_recv_buf() + - Bluetooth: Fix decrementing reference count twice in releasing socket + - Bluetooth: hci_ldisc: Initialize hci_dev before open() + - Bluetooth: hci_ldisc: Postpone HCI_UART_PROTO_READY bit set in + hci_uart_set_proto() + - drm/vkms: Fix flush_work() without INIT_WORK(). + - RDMA/cma: Rollback source IP address if failing to acquire device + - f2fs: fix to avoid deadlock of atomic file operations + - aio: simplify - and fix - fget/fput for io_submit() + - netfilter: ebtables: remove BUGPRINT messages + - loop: access lo_backing_file only when the loop device is Lo_bound + - x86/unwind: Handle NULL pointer calls better in frame unwinder + - x86/unwind: Add hardcoded ORC entry for NULL + - locking/lockdep: Add debug_locks check in __lock_downgrade() + - ALSA: hda - Record the current power state before suspend/resume calls + - ALSA: hda - Enforces runtime_resume after S3 and S4 for each codec + - Linux 5.0.5 + * hisi_sas updates for disco (LP: #1822385) + - scsi: hisi_sas: send primitive NOTIFY to SSP situation only + - scsi: hisi_sas: shutdown axi bus to avoid exception CQ returned + - scsi: hisi_sas: remove the check of sas_dev status in + hisi_sas_I_T_nexus_reset() + - scsi: hisi_sas: Remove unused parameter of function hisi_sas_alloc() + - scsi: hisi_sas: Reject setting programmed minimum linkrate > 1.5G + - scsi: hisi_sas: Fix losing directly attached disk when hot-plug + - scsi: hisi_sas: Correct memory allocation size for DQ debugfs + - scsi: hisi_sas: Some misc tidy-up + - scsi: hisi_sas: Fix to only call scsi_get_prot_op() for non-NULL scsi_cmnd + - scsi: hisi_sas: Add missing seq_printf() call in hisi_sas_show_row_32() + - scsi: hisi_sas: Add support for DIX feature for v3 hw + - scsi: hisi_sas: Add manual trigger for debugfs dump + - scsi: hisi_sas: change queue depth from 512 to 4096 + - scsi: hisi_sas: Issue internal abort on all relevant queues + - scsi: hisi_sas: Use pci_irq_get_affinity() for v3 hw as experimental + - scsi: hisi_sas: Do some more tidy-up + - scsi: hisi_sas: Change return variable type in phy_up_v3_hw() + - scsi: hisi_sas: Fix a timeout race of driver internal and SMP IO + - scsi: hisi_sas: print PHY RX errors count for later revision of v3 hw + - scsi: hisi_sas: Set PHY linkrate when disconnected + - scsi: hisi_sas: Send HARD RESET to clear the previous affiliation of STP + target port + - scsi: hisi_sas: Change SERDES_CFG init value to increase reliability of + HiLink + - scsi: hisi_sas: Add softreset in hisi_sas_I_T_nexus_reset() + * [Patch][Raven 2] kernel 5.0.0 cannot boot because of psp response + (LP: #1822267) + - drm/amdgpu/psp: Fix can't detect psp INVOKE command failed + - drm/amdgpu/psp: ignore psp response status + * 3b080b2564287be91605bfd1d5ee985696e61d3c in ubuntu_btrfs_kernel_fixes + triggers system hang on i386 (LP: #1812845) + - btrfs: raid56: properly unmap parity page in finish_parity_scrub() + * enable CONFIG_DRM_BOCHS (LP: #1795857) + - [Config] Reenable DRM_BOCHS as module + * [Dell Precision 7530/5530 with Nvidia Quadro P1000] Live USB freezes or + cannot complete install when nouveau driver is loaded (crashing in GP100 + code) (LP: #1822026) + - SAUCE: drm/nouveau: Disable nouveau driver by default + * Need to add Intel CML related pci-id's (LP: #1821863) + - drm/i915/cml: Add CML PCI IDS + - drm/i915/cml: Introduce Comet Lake PCH + * ARM: Add support for the SDEI interface (LP: #1822005) + - ACPI / APEI: Don't wait to serialise with oops messages when panic()ing + - ACPI / APEI: Remove silent flag from ghes_read_estatus() + - ACPI / APEI: Switch estatus pool to use vmalloc memory + - ACPI / APEI: Make hest.c manage the estatus memory pool + - ACPI / APEI: Make estatus pool allocation a static size + - ACPI / APEI: Don't store CPER records physical address in struct ghes + - ACPI / APEI: Remove spurious GHES_TO_CLEAR check + - ACPI / APEI: Don't update struct ghes' flags in read/clear estatus + - ACPI / APEI: Generalise the estatus queue's notify code + - ACPI / APEI: Don't allow ghes_ack_error() to mask earlier errors + - ACPI / APEI: Move NOTIFY_SEA between the estatus-queue and NOTIFY_NMI + - ACPI / APEI: Switch NOTIFY_SEA to use the estatus queue + - KVM: arm/arm64: Add kvm_ras.h to collect kvm specific RAS plumbing + - arm64: KVM/mm: Move SEA handling behind a single 'claim' interface + - ACPI / APEI: Move locking to the notification helper + - ACPI / APEI: Let the notification helper specify the fixmap slot + - ACPI / APEI: Pass ghes and estatus separately to avoid a later copy + - ACPI / APEI: Make GHES estatus header validation more user friendly + - ACPI / APEI: Split ghes_read_estatus() to allow a peek at the CPER length + - ACPI / APEI: Only use queued estatus entry during in_nmi_queue_one_entry() + - ACPI / APEI: Use separate fixmap pages for arm64 NMI-like notifications + - firmware: arm_sdei: Add ACPI GHES registration helper + - ACPI / APEI: Add support for the SDEI GHES Notification type + * CVE-2019-9857 + - inotify: Fix fsnotify_mark refcount leak in inotify_update_existing_watch() + * scsi: libsas: Support SATA PHY connection rate unmatch fixing during + discovery (LP: #1821408) + - scsi: libsas: Support SATA PHY connection rate unmatch fixing during + discovery + * Qualcomm Atheros QCA9377 wireless does not work (LP: #1818204) + - platform/x86: ideapad-laptop: Add Ideapad 530S-14ARR to no_hw_rfkill list + * Lenovo ideapad 330-15ICH Wifi rfkill hard blocked (LP: #1811815) + - platform/x86: ideapad: Add ideapad 330-15ICH to no_hw_rfkill + * hid-sensor-hub spamming dmesg in 4.20 (LP: #1818547) + - HID: Increase maximum report size allowed by hid_field_extract() + * [disco] [5.0.0-7.8] can't mount guest cifs share (LP: #1821053) + - cifs: allow guest mounts to work for smb3.11 + - SMB3: Fix SMB3.1.1 guest mounts to Samba + * Add HiSilicon SoC quirk for cpufreq (LP: #1821620) + - ACPI / CPPC: Add a helper to get desired performance + - cpufreq / cppc: Work around for Hisilicon CPPC cpufreq + * Disco update: v5.0.4 upstream stable release (LP: #1821607) + - 9p: use inode->i_lock to protect i_size_write() under 32-bit + - 9p/net: fix memory leak in p9_client_create + - ASoC: fsl_esai: fix register setting issue in RIGHT_J mode + - ASoC: codecs: pcm186x: fix wrong usage of DECLARE_TLV_DB_SCALE() + - ASoC: codecs: pcm186x: Fix energysense SLEEP bit + - iio: adc: exynos-adc: Fix NULL pointer exception on unbind + - iio: adc: exynos-adc: Use proper number of channels for Exynos4x12 + - mei: hbm: clean the feature flags on link reset + - mei: bus: move hw module get/put to probe/release + - stm class: Prevent division by zero + - stm class: Fix an endless loop in channel allocation + - crypto: caam - fix hash context DMA unmap size + - crypto: ccree - fix missing break in switch statement + - crypto: caam - fixed handling of sg list + - crypto: caam - fix DMA mapping of stack memory + - crypto: ccree - fix free of unallocated mlli buffer + - crypto: ccree - unmap buffer before copying IV + - crypto: ccree - don't copy zero size ciphertext + - crypto: cfb - add missing 'chunksize' property + - crypto: cfb - remove bogus memcpy() with src == dest + - crypto: ofb - fix handling partial blocks and make thread-safe + - crypto: ahash - fix another early termination in hash walk + - crypto: rockchip - fix scatterlist nents error + - crypto: rockchip - update new iv to device in multiple operations + - dax: Flush partial PMDs correctly + - nfit: Fix nfit_intel_shutdown_status() command submission + - nfit: acpi_nfit_ctl(): Check out_obj->type in the right place + - acpi/nfit: Fix bus command validation + - nfit/ars: Attempt a short-ARS whenever the ARS state is idle at boot + - nfit/ars: Attempt short-ARS even in the no_init_ars case + - libnvdimm/label: Clear 'updating' flag after label-set update + - libnvdimm, pfn: Fix over-trim in trim_pfn_device() + - libnvdimm/pmem: Honor force_raw for legacy pmem regions + - libnvdimm: Fix altmap reservation size calculation + - fix cgroup_do_mount() handling of failure exits + - crypto: aead - set CRYPTO_TFM_NEED_KEY if ->setkey() fails + - crypto: aegis - fix handling chunked inputs + - crypto: arm/crct10dif - revert to C code for short inputs + - crypto: arm64/aes-neonbs - fix returning final keystream block + - crypto: arm64/crct10dif - revert to C code for short inputs + - crypto: hash - set CRYPTO_TFM_NEED_KEY if ->setkey() fails + - crypto: morus - fix handling chunked inputs + - crypto: pcbc - remove bogus memcpy()s with src == dest + - crypto: skcipher - set CRYPTO_TFM_NEED_KEY if ->setkey() fails + - crypto: testmgr - skip crc32c context test for ahash algorithms + - crypto: x86/aegis - fix handling chunked inputs and MAY_SLEEP + - crypto: x86/aesni-gcm - fix crash on empty plaintext + - crypto: x86/morus - fix handling chunked inputs and MAY_SLEEP + - crypto: arm64/aes-ccm - fix logical bug in AAD MAC handling + - crypto: arm64/aes-ccm - fix bugs in non-NEON fallback routine + - CIFS: Fix leaking locked VFS cache pages in writeback retry + - CIFS: Do not reset lease state to NONE on lease break + - CIFS: Do not skip SMB2 message IDs on send failures + - CIFS: Fix read after write for files with read caching + - smb3: make default i/o size for smb3 mounts larger + - tracing: Use strncpy instead of memcpy for string keys in hist triggers + - tracing: Do not free iter->trace in fail path of tracing_open_pipe() + - tracing/perf: Use strndup_user() instead of buggy open-coded version + - vmw_balloon: release lock on error in vmballoon_reset() + - xen: fix dom0 boot on huge systems + - ACPI / device_sysfs: Avoid OF modalias creation for removed device + - mmc: sdhci-esdhc-imx: fix HS400 timing issue + - mmc: renesas_sdhi: Fix card initialization failure in high speed mode + - mmc:fix a bug when max_discard is 0 + - spi: ti-qspi: Fix mmap read when more than one CS in use + - spi: pxa2xx: Setup maximum supported DMA transfer length + - spi: omap2-mcspi: Fix DMA and FIFO event trigger size mismatch + - spi: spi-gpio: fix SPI_CS_HIGH capability + - regulator: s2mps11: Fix steps for buck7, buck8 and LDO35 + - regulator: max77620: Initialize values for DT properties + - regulator: s2mpa01: Fix step values for some LDOs + - mt76: fix corrupted software generated tx CCMP PN + - clocksource/drivers/exynos_mct: Move one-shot check from tick clear to ISR + - clocksource/drivers/exynos_mct: Clear timer interrupt when shutdown + - clocksource/drivers/arch_timer: Workaround for Allwinner A64 timer + instability + - s390: vfio_ap: link the vfio_ap devices to the vfio_ap bus subsystem + - s390/setup: fix early warning messages + - s390/virtio: handle find on invalid queue gracefully + - scsi: virtio_scsi: don't send sc payload with tmfs + - scsi: aacraid: Fix performance issue on logical drives + - scsi: sd: Optimal I/O size should be a multiple of physical block size + - scsi: target/iscsi: Avoid iscsit_release_commands_from_conn() deadlock + - scsi: qla2xxx: Fix LUN discovery if loop id is not assigned yet by firmware + - scsi: qla2xxx: Avoid PCI IRQ affinity mapping when multiqueue is not + supported + - scsi: qla2xxx: Use complete switch scan for RSCN events + - fs/devpts: always delete dcache dentry-s in dput() + - splice: don't merge into linked buffers + - ovl: During copy up, first copy up data and then xattrs + - ovl: Do not lose security.capability xattr over metadata file copy-up + - m68k: Add -ffreestanding to CFLAGS + - Btrfs: setup a nofs context for memory allocation at btrfs_create_tree() + - Btrfs: setup a nofs context for memory allocation at __btrfs_set_acl + - btrfs: scrub: fix circular locking dependency warning + - btrfs: drop the lock on error in btrfs_dev_replace_cancel + - btrfs: ensure that a DUP or RAID1 block group has exactly two stripes + - btrfs: init csum_list before possible free + - Btrfs: fix corruption reading shared and compressed extents after hole + punching + - Btrfs: fix deadlock between clone/dedupe and rename + - soc: qcom: rpmh: Avoid accessing freed memory from batch API + - libertas_tf: don't set URB_ZERO_PACKET on IN USB transfer + - irqchip/gic-v3-its: Avoid parsing _indirect_ twice for Device table + - irqchip/brcmstb-l2: Use _irqsave locking variants in non-interrupt code + - x86/kprobes: Prohibit probing on optprobe template code + - cpufreq: kryo: Release OPP tables on module removal + - cpufreq: tegra124: add missing of_node_put() + - cpufreq: pxa2xx: remove incorrect __init annotation + - ext4: fix check of inode in swap_inode_boot_loader + - ext4: cleanup pagecache before swap i_data + - mm: hwpoison: fix thp split handing in soft_offline_in_use_page() + - mm/vmalloc: fix size check for remap_vmalloc_range_partial() + - mm/memory.c: do_fault: avoid usage of stale vm_area_struct + - kernel/sysctl.c: add missing range check in do_proc_dointvec_minmax_conv + - nvmem: core: don't check the return value of notifier chain call + - device property: Fix the length used in PROPERTY_ENTRY_STRING() + - intel_th: Don't reference unassigned outputs + - parport_pc: fix find_superio io compare code, should use equal test. + - i2c: tegra: fix maximum transfer size + - i2c: tegra: update maximum transfer size + - media: i2c: ov5640: Fix post-reset delay + - gpio: pca953x: Fix dereference of irq data in shutdown + - ext4: update quota information while swapping boot loader inode + - ext4: add mask of ext4 flags to swap + - ext4: fix crash during online resizing + - dma: Introduce dma_max_mapping_size() + - swiotlb: Introduce swiotlb_max_mapping_size() + - swiotlb: Add is_swiotlb_active() function + - PCI/ASPM: Use LTR if already enabled by platform + - PCI/DPC: Fix print AER status in DPC event handling + - PCI: qcom: Don't deassert reset GPIO during probe + - PCI: dwc: skip MSI init if MSIs have been explicitly disabled + - PCI: pci-bridge-emul: Create per-bridge copy of register behavior + - PCI: pci-bridge-emul: Extend pci_bridge_emul_init() with flags + - IB/hfi1: Close race condition on user context disable and close + - IB/rdmavt: Fix loopback send with invalidate ordering + - IB/rdmavt: Fix concurrency panics in QP post_send and modify to error + - cxl: Wrap iterations over afu slices inside 'afu_list_lock' + - ext2: Fix underflow in ext2_max_size() + - clk: uniphier: Fix update register for CPU-gear + - clk: clk-twl6040: Fix imprecise external abort for pdmclk + - clk: samsung: exynos5: Fix possible NULL pointer exception on + platform_device_alloc() failure + - clk: samsung: exynos5: Fix kfree() of const memory on setting + driver_override + - clk: ingenic: Fix round_rate misbehaving with non-integer dividers + - clk: ingenic: Fix doc of ingenic_cgu_div_info + - usb: chipidea: tegra: Fix missed ci_hdrc_remove_device() + - usb: typec: tps6598x: handle block writes separately with plain-I2C adapters + - dmaengine: usb-dmac: Make DMAC system sleep callbacks explicit + - serial: uartps: Fix stuck ISR if RX disabled with non-empty FIFO + - serial: 8250_of: assume reg-shift of 2 for mrvl,mmp-uart + - serial: 8250_pci: Fix number of ports for ACCES serial cards + - serial: 8250_pci: Have ACCES cards that use the four port Pericom PI7C9X7954 + chip use the pci_pericom_setup() + - jbd2: clear dirty flag when revoking a buffer from an older transaction + - jbd2: fix compile warning when using JBUFFER_TRACE + - selinux: add the missing walk_size + len check in selinux_sctp_bind_connect + - security/selinux: fix SECURITY_LSM_NATIVE_LABELS on reused superblock + - powerpc/32: Clear on-stack exception marker upon exception return + - powerpc/wii: properly disable use of BATs when requested. + - powerpc/powernv: Make opal log only readable by root + - powerpc/83xx: Also save/restore SPRG4-7 during suspend + - powerpc/kvm: Save and restore host AMR/IAMR/UAMOR + - powerpc/powernv: Don't reprogram SLW image on every KVM guest entry/exit + - powerpc/64s/hash: Fix assert_slb_presence() use of the slbfee. instruction + - powerpc: Fix 32-bit KVM-PR lockup and host crash with MacOS guest + - powerpc/ptrace: Simplify vr_get/set() to avoid GCC warning + - powerpc/hugetlb: Don't do runtime allocation of 16G pages in LPAR + configuration + - powerpc/smp: Fix NMI IPI timeout + - powerpc/smp: Fix NMI IPI xmon timeout + - powerpc/traps: fix recoverability of machine check handling on book3s/32 + - powerpc/traps: Fix the message printed when stack overflows + - ARM: s3c24xx: Fix boolean expressions in osiris_dvs_notify + - arm64: Fix HCR.TGE status for NMI contexts + - arm64: debug: Don't propagate UNKNOWN FAR into si_code for debug signals + - arm64: debug: Ensure debug handlers check triggering exception level + - arm64: KVM: Fix architecturally invalid reset value for FPEXC32_EL2 + - Revert "KVM/MMU: Flush tlb directly in the kvm_zap_gfn_range()" + - ipmi_si: Fix crash when using hard-coded device + - ipmi_si: fix use-after-free of resource->name + - dm: fix to_sector() for 32bit + - dm integrity: limit the rate of error messages + - media: cx25840: mark pad sig_types to fix cx231xx init + - mfd: sm501: Fix potential NULL pointer dereference + - cpcap-charger: generate events for userspace + - cpuidle: governor: Add new governors to cpuidle_governors again + - NFS: Fix I/O request leakages + - NFS: Fix an I/O request leakage in nfs_do_recoalesce + - NFS: Don't recoalesce on error in nfs_pageio_complete_mirror() + - nfsd: fix performance-limiting session calculation + - nfsd: fix memory corruption caused by readdir + - nfsd: fix wrong check in write_v4_end_grace() + - NFSv4.1: Reinitialise sequence results before retransmitting a request + - svcrpc: fix UDP on servers with lots of threads + - PM / wakeup: Rework wakeup source timer cancellation + - PM / OPP: Update performance state when freq == old_freq + - bcache: treat stale && dirty keys as bad keys + - bcache: use (REQ_META|REQ_PRIO) to indicate bio for metadata + - stable-kernel-rules.rst: add link to networking patch queue + - vt: perform safe console erase in the right order + - x86/unwind/orc: Fix ORC unwind table alignment + - perf intel-pt: Fix CYC timestamp calculation after OVF + - perf tools: Fix split_kallsyms_for_kcore() for trampoline symbols + - perf auxtrace: Define auxtrace record alignment + - perf intel-pt: Fix overlap calculation for padding + - perf/x86/intel/uncore: Fix client IMC events return huge result + - perf intel-pt: Fix divide by zero when TSC is not available + - md: Fix failed allocation of md_register_thread + - x86/kvmclock: set offset for kvm unstable clock + - x86/ftrace: Fix warning and considate ftrace_jmp_replace() and + ftrace_call_replace() + - tpm/tpm_crb: Avoid unaligned reads in crb_recv() + - tpm: Unify the send callback behaviour + - rcu: Do RCU GP kthread self-wakeup from softirq and interrupt + - media: imx: prpencvf: Stop upstream before disabling IDMA channel + - media: lgdt330x: fix lock status reporting + - media: sun6i: Fix CSI regmap's max_register + - media: uvcvideo: Avoid NULL pointer dereference at the end of streaming + - media: vimc: Add vimc-streamer for stream control + - media: imx-csi: Input connections to CSI should be optional + - media: imx: csi: Disable CSI immediately after last EOF + - media: imx: csi: Stop upstream before disabling IDMA channel + - drm/fb-helper: generic: Fix drm_fbdev_client_restore() + - drm/radeon/evergreen_cs: fix missing break in switch statement + - drm/amd/powerplay: correct power reading on fiji + - drm/amd/display: don't call dm_pp_ function from an fpu block + - KVM: Call kvm_arch_memslots_updated() before updating memslots + - KVM: VMX: Compare only a single byte for VMCS' "launched" in vCPU-run + - KVM: VMX: Zero out *all* general purpose registers after VM-Exit + - KVM: x86/mmu: Detect MMIO generation wrap in any address space + - KVM: x86/mmu: Do not cache MMIO accesses while memslots are in flux + - KVM: nVMX: Sign extend displacements of VMX instr's mem operands + - KVM: nVMX: Apply addr size mask to effective address for VMX instructions + - KVM: nVMX: Ignore limit checks on VMX instructions using flat segments + - KVM: nVMX: Check a single byte for VMCS "launched" in nested early checks + - net: dsa: lantiq_gswip: fix use-after-free on failed probe + - net: dsa: lantiq_gswip: fix OF child-node lookups + - s390/setup: fix boot crash for machine without EDAT-1 + - SUNRPC: Prevent thundering herd when the socket is not connected + - SUNRPC: Fix up RPC back channel transmission + - SUNRPC: Respect RPC call timeouts when retrying transmission + - Linux 5.0.4 + - [Config] update configs for 5.0.4 stable update + * New Intel Wireless-AC 9260 [8086:2526] card not correctly probed in Ubuntu + system (LP: #1821271) + - iwlwifi: add new card for 9260 series + * [CONFIG] please enable highdpi font FONT_TER16x32 (LP: #1819881) + - [Config]: enable highdpi Terminus 16x32 font support + * [SRU][B/B-OEM/C/D] Fix AMD IOMMU NULL dereference (LP: #1820990) + - iommu/amd: Fix NULL dereference bug in match_hid_uid + * some codecs stop working after S3 (LP: #1820930) + - ALSA: hda - Enforces runtime_resume after S3 and S4 for each codec + - ALSA: hda - Don't trigger jackpoll_work in azx_resume + * tcm_loop.ko: move from modules-extra into main modules package + (LP: #1817786) + - [Packaging] move tcm_loop.lo to main linux-modules package + * C++ demangling support missing from perf (LP: #1396654) + - [Packaging] fix a mistype + * r8169 doesn't get woken up by ethernet cable plugging, no PME generated + (LP: #1817676) + - PCI: pciehp: Disable Data Link Layer State Changed event on suspend + * Disco update: v5.0.3 upstream stable release (LP: #1821074) + - connector: fix unsafe usage of ->real_parent + - fou, fou6: avoid uninit-value in gue_err() and gue6_err() + - gro_cells: make sure device is up in gro_cells_receive() + - ipv4/route: fail early when inet dev is missing + - l2tp: fix infoleak in l2tp_ip6_recvmsg() + - lan743x: Fix RX Kernel Panic + - lan743x: Fix TX Stall Issue + - net: hsr: fix memory leak in hsr_dev_finalize() + - net/hsr: fix possible crash in add_timer() + - net: sit: fix UBSAN Undefined behaviour in check_6rd + - net/x25: fix use-after-free in x25_device_event() + - net/x25: reset state in x25_connect() + - pptp: dst_release sk_dst_cache in pptp_sock_destruct + - ravb: Decrease TxFIFO depth of Q3 and Q2 to one + - route: set the deleted fnhe fnhe_daddr to 0 in ip_del_fnhe to fix a race + - rxrpc: Fix client call queueing, waiting for channel + - sctp: remove sched init from sctp_stream_init + - tcp: do not report TCP_CM_INQ of 0 for closed connections + - tcp: Don't access TCP_SKB_CB before initializing it + - tcp: handle inet_csk_reqsk_queue_add() failures + - vxlan: Fix GRO cells race condition between receive and link delete + - vxlan: test dev->flags & IFF_UP before calling gro_cells_receive() + - net/mlx4_core: Fix reset flow when in command polling mode + - net/mlx4_core: Fix locking in SRIOV mode when switching between events and + polling + - net/mlx4_core: Fix qp mtt size calculation + - net: dsa: mv88e6xxx: Set correct interface mode for CPU/DSA ports + - vsock/virtio: fix kernel panic from virtio_transport_reset_no_sock + - net: sched: flower: insert new filter to idr after setting its mask + - f2fs: wait on atomic writes to count F2FS_CP_WB_DATA + - perf/x86: Fixup typo in stub functions + - ALSA: bebob: use more identical mod_alias for Saffire Pro 10 I/O against + Liquid Saffire 56 + - ALSA: firewire-motu: fix construction of PCM frame for capture direction + - ALSA: hda: Extend i915 component bind timeout + - ALSA: hda - add more quirks for HP Z2 G4 and HP Z240 + - ALSA: hda/realtek: Enable audio jacks of ASUS UX362FA with ALC294 + - ALSA: hda/realtek - Reduce click noise on Dell Precision 5820 headphone + - ALSA: hda/realtek: Enable headset MIC of Acer TravelMate X514-51T with + ALC255 + - perf/x86/intel: Fix memory corruption + - perf/x86/intel: Make dev_attr_allow_tsx_force_abort static + - It's wrong to add len to sector_nr in raid10 reshape twice + - drm: Block fb changes for async plane updates + - Linux 5.0.3 + * Disco update: v5.0.2 upstream stable release (LP: #1820318) + - media: uvcvideo: Fix 'type' check leading to overflow + - Input: wacom_serial4 - add support for Wacom ArtPad II tablet + - Input: elan_i2c - add id for touchpad found in Lenovo s21e-20 + - iscsi_ibft: Fix missing break in switch statement + - scsi: aacraid: Fix missing break in switch statement + - x86/PCI: Fixup RTIT_BAR of Intel Denverton Trace Hub + - arm64: dts: zcu100-revC: Give wifi some time after power-on + - arm64: dts: hikey: Give wifi some time after power-on + - arm64: dts: hikey: Revert "Enable HS200 mode on eMMC" + - ARM: dts: exynos: Fix pinctrl definition for eMMC RTSN line on Odroid X2/U3 + - ARM: dts: exynos: Add minimal clkout parameters to Exynos3250 PMU + - ARM: dts: exynos: Fix max voltage for buck8 regulator on Odroid XU3/XU4 + - drm: disable uncached DMA optimization for ARM and arm64 + - media: Revert "media: rc: some events are dropped by userspace" + - Revert "PCI/PME: Implement runtime PM callbacks" + - bpf: Stop the psock parser before canceling its work + - gfs2: Fix missed wakeups in find_insert_glock + - staging: erofs: keep corrupted fs from crashing kernel in erofs_namei() + - staging: erofs: compressed_pages should not be accessed again after freed + - scripts/gdb: replace flags (MS_xyz -> SB_xyz) + - ath9k: Avoid OF no-EEPROM quirks without qca,no-eeprom + - perf/x86/intel: Make cpuc allocations consistent + - perf/x86/intel: Generalize dynamic constraint creation + - x86: Add TSX Force Abort CPUID/MSR + - perf/x86/intel: Implement support for TSX Force Abort + - Linux 5.0.2 + * Linux security module stacking support + - LSM: Introduce LSM_FLAG_LEGACY_MAJOR + - LSM: Provide separate ordered initialization + - LSM: Plumb visibility into optional "enabled" state + - LSM: Lift LSM selection out of individual LSMs + - LSM: Build ordered list of LSMs to initialize + - LSM: Introduce CONFIG_LSM + - LSM: Introduce "lsm=" for boottime LSM selection + - LSM: Tie enabling logic to presence in ordered list + - LSM: Prepare for reorganizing "security=" logic + - LSM: Refactor "security=" in terms of enable/disable + - LSM: Separate idea of "major" LSM from "exclusive" LSM + - apparmor: Remove SECURITY_APPARMOR_BOOTPARAM_VALUE + - selinux: Remove SECURITY_SELINUX_BOOTPARAM_VALUE + - LSM: Add all exclusive LSMs to ordered initialization + - LSM: Split LSM preparation from initialization + - LoadPin: Initialize as ordered LSM + - Yama: Initialize as ordered LSM + - LSM: Introduce enum lsm_order + - capability: Initialize as LSM_ORDER_FIRST + - procfs: add smack subdir to attrs + - Smack: Abstract use of cred security blob + - SELinux: Abstract use of cred security blob + - SELinux: Remove cred security blob poisoning + - SELinux: Remove unused selinux_is_enabled + - AppArmor: Abstract use of cred security blob + - TOMOYO: Abstract use of cred security blob + - Infrastructure management of the cred security blob + - SELinux: Abstract use of file security blob + - Smack: Abstract use of file security blob + - LSM: Infrastructure management of the file security + - SELinux: Abstract use of inode security blob + - Smack: Abstract use of inode security blob + - LSM: Infrastructure management of the inode security + - LSM: Infrastructure management of the task security + - SELinux: Abstract use of ipc security blobs + - Smack: Abstract use of ipc security blobs + - LSM: Infrastructure management of the ipc security blob + - TOMOYO: Update LSM flags to no longer be exclusive + - LSM: generalize flag passing to security_capable + - LSM: Make lsm_early_cred() and lsm_early_task() local functions. + - LSM: Make some functions static + - apparmor: Adjust offset when accessing task blob. + - LSM: Ignore "security=" when "lsm=" is specified + - LSM: Update list of SECURITYFS users in Kconfig + - apparmor: delete the dentry in aafs_remove() to avoid a leak + - apparmor: fix double free when unpack of secmark rules fails + - SAUCE: LSM: Infrastructure management of the sock security + - SAUCE: LSM: Limit calls to certain module hooks + - SAUCE: LSM: Special handling for secctx lsm hooks + - SAUCE: LSM: Specify which LSM to display with /proc/self/attr/display + - SAUCE: Fix-up af_unix mediation for sock infrastructure management + - SAUCE: Revert "apparmor: Fix warning about unused function + apparmor_ipv6_postroute" + - SAUCE: Revert "apparmor: fix checkpatch error in Parse secmark policy" + - SAUCE: Revert "apparmor: add #ifdef checks for secmark filtering" + - SAUCE: Revert "apparmor: Allow filtering based on secmark policy" + - SAUCE: Revert "apparmor: Parse secmark policy" + - SAUCE: Revert "apparmor: Add a wildcard secid" + - SAUCE: Revert "apparmor: fix bad debug check in apparmor_secid_to_secctx()" + - SAUCE: Revert "apparmor: fixup secid map conversion to using IDR" + - SAUCE: Revert "apparmor: Use an IDR to allocate apparmor secids" + - SAUCE: Revert "apparmor: Fix memory leak of rule on error exit path" + - SAUCE: Revert "apparmor: modify audit rule support to support profile + stacks" + - SAUCE: Revert "apparmor: Add support for audit rule filtering" + - SAUCE: Revert "apparmor: add the ability to get a task's secid" + - SAUCE: Revert "apparmor: add support for mapping secids and using secctxes" + - SAUCE: apparmor: add proc subdir to attrs + - SAUCE: apparmor: add an apparmorfs entry to access current attrs + - SAUCE: apparmor: update flags to no longer be exclusive + - SAUCE: update configs and annotations for LSM stacking + * Miscellaneous Ubuntu changes + - [Config] CONFIG_EARLY_PRINTK_USB_XDBC=y + - SAUCE: (efi-lockdown) bpf: Restrict kernel image access functions when the + kernel is locked down + - [Config] CONFIG_RANDOM_TRUST_CPU=y + - [Config] refresh annotations for recent config changes + - ubuntu: vbox -- update to 6.0.4-dfsg-7 + - Revert "UBUNTU: SAUCE: i2c:amd I2C Driver based on PCI Interface for + upcoming platform" + + -- Seth Forshee Tue, 09 Apr 2019 13:47:42 -0500 + +linux-azure (5.0.0-1001.1) disco; urgency=medium + + * linux-azure: 5.0.0-1001.1 -proposed tracker (LP: #1820605) + + * Packaging resync (LP: #1786013) + - [Packaging] update update.conf + + * Miscellaneous Ubuntu changes + - [Config] update configs following rebase to 5.0.0-8.9 + - [Packaging] sync packaging updates from master + - [Packaging] enable nvidia dkms build + - [Packaging] add linux-modules-extra to getabis + - SAUCE: vbus-rdma: forward port to 5.0 + + -- Seth Forshee Mon, 18 Mar 2019 14:36:27 -0500 + +linux-azure (5.0.0-1000.0) disco; urgency=medium + + * Emtpy entry + + -- Seth Forshee Mon, 18 Mar 2019 07:16:53 -0500 + +linux-azure (4.18.0-1013.13) cosmic; urgency=medium + + * linux-azure: 4.18.0-1013.13 -proposed tracker (LP: #1818128) + + * linux-azure - Add the same 4.15 InfiniBand configuration settings to the + 4.18 kernel (LP: #1818141) + - [Config] linux-azure: CONFIG_INFINIBAND_{USER_MAD,IPOIB,IPOIB_DEBUG}=y + + * Packaging resync (LP: #1786013) + - [Packaging] resync getabis + - [Packaging] update helper scripts + + * [Hyper-V][SAUCE] pci-hyperv: Use only 16 bit integer for PCI domain + (LP: #1684971) + - SAUCE: pci-hyperv: Use only 16 bit integer for PCI domain + + -- Marcelo Henrique Cerri Thu, 28 Feb 2019 19:09:26 -0300 + +linux-azure (4.18.0-1012.12) cosmic; urgency=medium + + * linux-azure: 4.18.0-1012.12 -proposed tracker (LP: #1816783) + + * Packaging resync (LP: #1786013) + - [Packaging] update helper scripts + + [ Ubuntu: 4.18.0-16.17 ] + + * linux: 4.18.0-16.17 -proposed tracker (LP: #1814749) + * Packaging resync (LP: #1786013) + - [Packaging] update helper scripts + * CVE-2018-16880 + - vhost: fix OOB in get_rx_bufs() + * RTL8822BE WiFi Disabled in Kernel 4.18.0-12 (LP: #1806472) + - SAUCE: staging: rtlwifi: allow RTLWIFI_DEBUG_ST to be disabled + - [Config] CONFIG_RTLWIFI_DEBUG_ST=n + - SAUCE: Add r8822be to signature inclusion list + * kernel oops in bcache module (LP: #1793901) + - SAUCE: bcache: never writeback a discard operation + * CVE-2018-18397 + - userfaultfd: use ENOENT instead of EFAULT if the atomic copy user fails + - userfaultfd: shmem: allocate anonymous memory for MAP_PRIVATE shmem + - userfaultfd: shmem/hugetlbfs: only allow to register VM_MAYWRITE vmas + - userfaultfd: shmem: add i_size checks + - userfaultfd: shmem: UFFDIO_COPY: set the page dirty if VM_WRITE is not set + * Ignore "incomplete report" from Elan touchpanels (LP: #1813733) + - HID: i2c-hid: Ignore input report if there's no data present on Elan + touchpanels + * Vsock connect fails with ENODEV for large CID (LP: #1813934) + - vhost/vsock: fix vhost vsock cid hashing inconsistent + * Fix non-working pinctrl-intel (LP: #1811777) + - pinctrl: intel: Do pin translation in other GPIO operations as well + * ip6_gre: fix tunnel list corruption for x-netns (LP: #1812875) + - ip6_gre: fix tunnel list corruption for x-netns + * Backported commit breaks audio (fixed upstream) (LP: #1811566) + - ASoC: intel: cht_bsw_max98090_ti: Add quirk for boards using pmc_plt_clk_0 + - ASoC: intel: cht_bsw_max98090_ti: Add pmc_plt_clk_0 quirk for Chromebook + Clapper + - ASoC: intel: cht_bsw_max98090_ti: Add pmc_plt_clk_0 quirk for Chromebook + Gnawty + * kvm_stat : missing python dependency (LP: #1798776) + - tools/kvm_stat: switch to python3 + * [SRU] Fix Xorg crash with nomodeset when BIOS enable 64-bit fb addr + (LP: #1812797) + - vgaarb: Add support for 64-bit frame buffer address + - vgaarb: Keep adding VGA device in queue + * Fix non-working QCA Rome Bluetooth after S3 (LP: #1812812) + - USB: Add new USB LPM helpers + - USB: Consolidate LPM checks to avoid enabling LPM twice + * [SRU] IO's are issued with incorrect Scatter Gather Buffer (LP: #1795453) + - scsi: megaraid_sas: Use 63-bit DMA addressing + * x86/mm: Found insecure W+X mapping at address (ptrval)/0xc00a0000 + (LP: #1813532) + - x86/mm: Do not warn about PCI BIOS W+X mappings + * CVE-2019-6133 + - fork: record start_time late + * Fix not working Goodix touchpad (LP: #1811929) + - HID: i2c-hid: Disable runtime PM on Goodix touchpad + * bluetooth controller not detected with 4.15 kernel (LP: #1810797) + - SAUCE: btqcomsmd: introduce BT_QCOMSMD_HACK + - [Config] arm64: snapdragon: BT_QCOMSMD_HACK=y + * X1 Extreme: only one of the two SSDs is loaded (LP: #1811755) + - nvme-core: rework a NQN copying operation + - nvme: pad fake subsys NQN vid and ssvid with zeros + - nvme: introduce NVME_QUIRK_IGNORE_DEV_SUBNQN + * Crash on "ip link add foo type ipip" (LP: #1811803) + - SAUCE: fan: Fix NULL pointer dereference + + -- Kleber Sacilotto de Souza Thu, 21 Feb 2019 11:52:18 +0100 + +linux-azure (4.18.0-1011.11) cosmic; urgency=medium + + * linux-azure: 4.18.0-1011.11 -proposed tracker (LP: #1816081) + + * 4.15.0-1037 does not see all PCI devices on GPU VMs (LP: #1816106) + - Revert "PCI: hv: Make sure the bus domain is really unique" + + -- Stefan Bader Fri, 15 Feb 2019 17:16:24 +0100 + +linux-azure (4.18.0-1009.9) cosmic; urgency=medium + + * Allow I/O schedulers to be loaded with modprobe in linux-azure + (LP: #1813211) + - [Config] linux-azure: Enable all IO schedulers as modules + + * [Hyper-V] srcu: Lock srcu_data structure in srcu_gp_start() (LP: #1802021) + - srcu: Lock srcu_data structure in srcu_gp_start() + + * CONFIG_SECURITY_SELINUX_DISABLE should be disabled on 4.15/4.18 Azure + (LP: #1813866) + - [Config]: disable CONFIG_SECURITY_SELINUX_DISABLE + + [ Ubuntu: 4.18.0-15.16 ] + + * Ubuntu boot failure. 4.18.0-14 boot stalls. (does not boot) (LP: #1814555) + - Revert "drm/i915/ringbuffer: Delay after EMIT_INVALIDATE for gen4/gen5" + * Userspace break as a result of missing patch backport (LP: #1813873) + - tty: Don't hold ldisc lock in tty_reopen() if ldisc present + + -- Stefan Bader Fri, 08 Feb 2019 12:49:37 +0100 + +linux-azure (4.18.0-1008.8) cosmic; urgency=medium + + * linux-azure: 4.18.0-1008.8 -proposed tracker (LP: #1811415) + + * Cosmic update: 4.18.19 upstream stable release (LP: #1810820) + - [Config] Update config after 4.18.0-14.15 rebase + + * Packaging resync (LP: #1786013) + - [Packaging] update helper scripts + + [ Ubuntu: 4.18.0-14.15 ] + + * linux: 4.18.0-14.15 -proposed tracker (LP: #1811406) + * CPU hard lockup with rigorous writes to NVMe drive (LP: #1810998) + - blk-wbt: Avoid lock contention and thundering herd issue in wbt_wait + - blk-wbt: move disable check into get_limit() + - blk-wbt: use wq_has_sleeper() for wq active check + - blk-wbt: fix has-sleeper queueing check + - blk-wbt: abstract out end IO completion handler + - blk-wbt: improve waking of tasks + * To reduce the Realtek USB cardreader power consumption (LP: #1811337) + - mmc: core: Introduce MMC_CAP_SYNC_RUNTIME_PM + - mmc: rtsx_usb_sdmmc: Don't runtime resume the device while changing led + - mmc: rtsx_usb_sdmmc: Re-work runtime PM support + - mmc: rtsx_usb_sdmmc: Re-work card detection/removal support + - memstick: rtsx_usb_ms: Add missing pm_runtime_disable() in probe function + - misc: rtsx_usb: Use USB remote wakeup signaling for card insertion detection + - memstick: Prevent memstick host from getting runtime suspended during card + detection + - memstick: rtsx_usb_ms: Use ms_dev() helper + - memstick: rtsx_usb_ms: Support runtime power management + * Support non-strict iommu mode on arm64 (LP: #1806488) + - iommu/io-pgtable-arm: Fix race handling in split_blk_unmap() + - iommu/arm-smmu-v3: Implement flush_iotlb_all hook + - iommu/dma: Add support for non-strict mode + - iommu: Add "iommu.strict" command line option + - iommu/io-pgtable-arm: Add support for non-strict mode + - iommu/arm-smmu-v3: Add support for non-strict mode + - iommu/io-pgtable-arm-v7s: Add support for non-strict mode + - iommu/arm-smmu: Support non-strict mode + * [Regression] crashkernel fails on HiSilicon D05 (LP: #1806766) + - efi: honour memory reservations passed via a linux specific config table + - efi/arm: libstub: add a root memreserve config table + - efi: add API to reserve memory persistently across kexec reboot + - irqchip/gic-v3-its: Change initialization ordering for LPIs + - irqchip/gic-v3-its: Simplify LPI_PENDBASE_SZ usage + - irqchip/gic-v3-its: Split property table clearing from allocation + - irqchip/gic-v3-its: Move pending table allocation to init time + - irqchip/gic-v3-its: Keep track of property table's PA and VA + - irqchip/gic-v3-its: Allow use of pre-programmed LPI tables + - irqchip/gic-v3-its: Use pre-programmed redistributor tables with kdump + kernels + - irqchip/gic-v3-its: Check that all RDs have the same property table + - irqchip/gic-v3-its: Register LPI tables with EFI config table + - irqchip/gic-v3-its: Allow use of LPI tables in reserved memory + - arm64: memblock: don't permit memblock resizing until linear mapping is up + - efi/arm: Defer persistent reservations until after paging_init() + - efi: Permit calling efi_mem_reserve_persistent() from atomic context + - efi: Prevent GICv3 WARN() by mapping the memreserve table before first use + * ELAN900C:00 04F3:2844 touchscreen doesn't work (LP: #1811335) + - pinctrl: cannonlake: Fix community ordering for H variant + - pinctrl: cannonlake: Fix HOSTSW_OWN register offset of H variant + * Add Cavium ThunderX2 SoC UNCORE PMU driver (LP: #1811200) + - Documentation: perf: Add documentation for ThunderX2 PMU uncore driver + - drivers/perf: Add Cavium ThunderX2 SoC UNCORE PMU driver + - [Config] New config CONFIG_THUNDERX2_PMU=m + * iptables connlimit allows more connections than the limit when using + multiple CPUs (LP: #1811094) + - netfilter: nf_conncount: don't skip eviction when age is negative + * CVE-2018-16882 + - KVM: Fix UAF in nested posted interrupt processing + * Cannot initialize ATA disk if IDENTIFY command fails (LP: #1809046) + - scsi: libsas: check the ata device status by ata_dev_enabled() + * scsi: libsas: fix a race condition when smp task timeout (LP: #1808912) + - scsi: libsas: fix a race condition when smp task timeout + * CVE-2018-14625 + - vhost/vsock: fix use-after-free in network stack callers + * Fix and issue that LG I2C touchscreen stops working after reboot + (LP: #1805085) + - HID: i2c-hid: Disable runtime PM for LG touchscreen + * Drivers: hv: vmbus: Offload the handling of channels to two workqueues + (LP: #1807757) + - Drivers: hv: vmbus: check the creation_status in vmbus_establish_gpadl() + - Drivers: hv: vmbus: Offload the handling of channels to two workqueues + * Disable LPM for Raydium Touchscreens (LP: #1802248) + - USB: quirks: Add no-lpm quirk for Raydium touchscreens + * Power leakage at S5 with Qualcomm Atheros QCA9377 802.11ac Wireless Network + Adapter (LP: #1805607) + - SAUCE: ath10k: provide reset function for QCA9377 chip + * CVE-2018-19407 + - KVM: X86: Fix scan ioapic use-before-initialization + * Fix USB2 device wrongly detected as USB1 (LP: #1806534) + - xhci: Add quirk to workaround the errata seen on Cavium Thunder-X2 Soc + * Add support for ALC3277 codec on new Dell edge gateways (LP: #1807334) + - SAUCE: ASoC: rt5660: (no-up) Move platform code to board file + - ASoC: Intel: kbl_rt5660: Add a new machine driver for kbl with rt5660 + - [Config] CONFIG_SND_SOC_INTEL_KBL_RT5660_MACH=m + * armhf guests fail to boot in EFI mode (LP: #1809488) + - efi/arm: Revert deferred unmap of early memmap mapping + * audio output has constant noise on a Dell machine (LP: #1810891) + - ALSA: hda/realtek - Fixed headphone issue for ALC700 + * ldisc crash on reopened tty (LP: #1791758) + - tty: Hold tty_ldisc_lock() during tty_reopen() + - tty: Don't block on IO when ldisc change is pending + - tty: Simplify tty->count math in tty_reopen() + * efi-lockdown patch causes -EPERM for some debugfs files even though + CONFIG_LOCK_DOWN_KERNEL is not set (LP: #1807686) + - SAUCE: debugfs: avoid EPERM when no open file operation defined + * SATA device is not going to DEVSLP (LP: #1781533) + - ata: ahci: Support state with min power but Partial low power state + - ata: ahci: Enable DEVSLP by default on x86 with SLP_S0 + * Console got stuck using serial tty after logout (LP: #1808097) + - tty: do not set TTY_IO_ERROR flag if console port + * Workaround CSS timeout on AMD SNPS 3.0 xHC (LP: #1806838) + - xhci: workaround CSS timeout on AMD SNPS 3.0 xHC + * Add pointstick support for Cirque Touchpad (LP: #1805081) + - HID: multitouch: Add pointstick support for Cirque Touchpad + * Update hisilicon SoC-specific drivers (LP: #1810457) + - SAUCE: Revert "net: hns3: Updates RX packet info fetch in case of multi BD" + - net: hns3: remove redundant variable 'protocol' + - scsi: hisi_sas: Drop hisi_sas_slot_abort() + - net: hns: Make many functions static + - net: hns: make hns_dsaf_roce_reset non static + - net: hisilicon: hns: Replace mdelay() with msleep() + - net: hns3: fix return value error while hclge_cmd_csq_clean failed + - net: hns: remove redundant variables 'max_frm' and 'tmp_mac_key' + - net: hns: Mark expected switch fall-through + - net: hns3: Mark expected switch fall-through + - net: hns3: Remove tx ring BD len register in hns3_enet + - net: hns: modify variable type in hns_nic_reuse_page + - net: hns: use eth_get_headlen interface instead of hns_nic_get_headlen + - net: hns3: modify variable type in hns3_nic_reuse_page + - net: hns3: Fix for multicast failure + - net: hns3: Fix error of checking used vlan id + - net: hns3: Implement shutdown ops in hns3 pci driver + - net: hns3: Fix for loopback selftest failed problem + - net: hns3: Only update mac configuation when necessary + - net: hns3: Change the dst mac addr of loopback packet + - net: hns3: Remove redundant codes of query advertised flow control abilitiy + - net: hns3: Refine hns3_get_link_ksettings() + - net: hns: make function hns_gmac_wait_fifo_clean() static + - net: hns3: Add default irq affinity + - net: hns3: Add unlikely for buf_num check + - net: hns3: Remove tx budget to clean more TX descriptors in a napi + - net: hns3: Remove packet statistics of public + - net: hns3: Add support for hns3_nic_netdev_ops.ndo_do_ioctl + - net: hns3: Fix for setting speed for phy failed problem + - net: hns3: Fix cmdq registers initialization issue for vf + - net: hns3: Clear client pointer when initialize client failed or unintialize + finished + - net: hns3: Fix client initialize state issue when roce client initialize + failed + - net: hns3: Fix parameter type for q_id in hclge_tm_q_to_qs_map_cfg() + - net: hns3: Unify the type convert for desc.data + - net: hns3: Adjust prefix of tx/rx statistic names + - net: hns3: Fix tqp array traversal condition for vf + - net: hns3: Unify the prefix of vf functions + - net: hns3: Add handle for default case + - net: hns3: Add unlikely for dma_mapping_error check + - net: hns3: Remove print messages for error packet + - net: hns3: Add get_media_type ops support for VF + - net: hns3: Fix speed/duplex information loss problem when executing ethtool + ethx cmd of VF + - net: hns3: Remove redundant hclge_get_port_type() + - net: hns3: Add support for sctp checksum offload + - net: hns3: Set extra mac address of pause param for HW + - net: hns3: Rename loop mode + - net: hns3: Rename mac loopback to app loopback + - net: hns3: Add serdes parallel inner loopback support + - net: hns3: Fix for netdev not up problem when setting mtu + - net: hns3: Change return type of hclge_tm_schd_info_update() + - net: hns3: Modify hns3_get_max_available_channels + - net: hns3: Fix loss of coal configuration while doing reset + - net: hns: remove ndo_poll_controller + - hns3: Fix the build. + - hns3: Another build fix. + - net: hns3: Add flow director initialization + - net: hns3: Add input key and action config support for flow director + - net: hns3: Add support for rule add/delete for flow director + - net: hns3: Add support for rule query of flow director + - net: hns3: Add reset handle for flow director + - net: hns3: Remove all flow director rules when unload hns3 driver + - net: hns3: Add support for enable/disable flow director + - net: hns3: Remove the default mask configuration for mac vlan table + - net: hns3: Clear mac vlan table entries when unload driver or function reset + - net: hns3: Optimize for unicast mac vlan table + - net: hns3: Drop depricated mta table support + - net: hns3: Add egress/ingress vlan filter for revision 0x21 + - net: hns3: Fix for rx vlan id handle to support Rev 0x21 hardware + - net: hns3: Add new RSS hash algorithm support for PF + - net: hns3: Add RSS general configuration support for VF + - net: hns3: Add RSS tuples support for VF + - net: hns3: Add HW RSS hash information to RX skb + - net: hns3: Enable promisc mode when mac vlan table is full + - net: hns3: Resume promisc mode and vlan filter status after reset + - net: hns3: Resume promisc mode and vlan filter status after loopback test + - scsi: hisi_sas: Feed back linkrate(max/min) when re-attached + - scsi: hisi_sas: Move evaluation of hisi_hba in hisi_sas_task_prep() + - scsi: hisi_sas: Fix the race between IO completion and timeout for + SMP/internal IO + - scsi: hisi_sas: Free slot later in slot_complete_vx_hw() + - scsi: hisi_sas: unmask interrupts ent72 and ent74 + - scsi: hisi_sas: Use block layer tag instead for IPTT + - scsi: hisi_sas: Update v3 hw AIP_LIMIT and CFG_AGING_TIME register values + - net: hns3: remove hns3_fill_desc_tso + - net: hns3: move DMA map into hns3_fill_desc + - net: hns3: add handling for big TX fragment + - net: hns3: rename hns_nic_dma_unmap + - net: hns3: fix for multiple unmapping DMA problem + - scsi: hisi_sas: Fix spin lock management in slot_index_alloc_quirk_v2_hw() + - scsi: hisi_sas: Fix NULL pointer dereference + - net: hns3: Add PCIe AER callback error_detected + - net: hns3: Add PCIe AER error recovery + - net: hns3: Add support to enable and disable hw errors + - net: hns3: Add enable and process common ecc errors + - net: hns3: Add enable and process hw errors from IGU, EGU and NCSI + - net: hns3: Add enable and process hw errors from PPP + - net: hns3: Add enable and process hw errors of TM scheduler + - net: hns3: Fix for warning uninitialized symbol hw_err_lst3 + - net: hns3: fix spelling mistake "intrerrupt" -> "interrupt" + - net: hns3: add error handler for hns3_nic_init_vector_data() + - net: hns3: bugfix for buffer not free problem during resetting + - net: hns3: bugfix for reporting unknown vector0 interrupt repeatly problem + - net: hns3: bugfix for the initialization of command queue's spin lock + - net: hns3: remove unnecessary queue reset in the hns3_uninit_all_ring() + - net: hns3: bugfix for is_valid_csq_clean_head() + - net: hns3: bugfix for hclge_mdio_write and hclge_mdio_read + - net: hns3: fix incorrect return value/type of some functions + - net: hns3: bugfix for handling mailbox while the command queue reinitialized + - net: hns3: bugfix for rtnl_lock's range in the hclge_reset() + - net: hns3: bugfix for rtnl_lock's range in the hclgevf_reset() + - net: hns3: Fix for out-of-bounds access when setting pfc back pressure + - scsi: hisi_sas: Remove set but not used variable 'dq_list' + - net: hns3: bugfix for not checking return value + - net: hns: Incorrect offset address used for some registers. + - net: hns: All ports can not work when insmod hns ko after rmmod. + - net: hns: Some registers use wrong address according to the datasheet. + - net: hns: Fixed bug that netdev was opened twice + - net: hns: Clean rx fbd when ae stopped. + - net: hns: Free irq when exit from abnormal branch + - net: hns: Avoid net reset caused by pause frames storm + - net: hns: Fix ntuple-filters status error. + - net: hns: Add mac pcs config when enable|disable mac + - net: hns: Fix ping failed when use net bridge and send multicast + - net: hns3: use HNS3_NIC_STATE_INITED to indicate the initialization state of + enet + - net: hns3: add set_default_reset_request in the hnae3_ae_ops + - net: hns3: provide some interface & information for the client + - net: hns3: adjust the location of clearing the table when doing reset + - net: hns3: enable/disable ring in the enet while doing UP/DOWN + - net: hns3: use HNS3_NIC_STATE_RESETTING to indicate resetting + - net: hns3: ignore new coming low-level reset while doing high-level reset + - net: hns3: move some reset information from hnae3_handle into + hclge_dev/hclgevf_dev + - net: hns3: adjust the process of PF reset + - net: hns3: call roce's reset notify callback when resetting + - net: hns3: add error handler for hclge_reset() + - net: hns3: fix for cmd queue memory not freed problem during reset + - net: hns3: Remove set but not used variable 'reset_level' + - net: hns3: fix spelling mistake, "assertting" -> "asserting" + - net: hns3: add reset_hdev to reinit the hdev in VF's reset process + - net: hns3: adjust VF's reset process + - net: hns3: add reset handling for VF when doing PF reset + - net: hns3: add reset handling for VF when doing Core/Global/IMP reset + - net: hns3: stop handling command queue while resetting VF + - net: hns3: add error handler for hclgevf_reset() + - net: hns3: stop napi polling when HNS3_NIC_STATE_DOWN is set + - net: hns3: implement the IMP reset processing for PF + - net: hns3: add PCIe FLR support for PF + - net: hns3: do VF's pci re-initialization while PF doing FLR + - net: hns3: add PCIe FLR support for VF + - net: hns3: Enable HW GRO for Rev B(=0x21) HNS3 hardware + - net: hns3: Add handling of GRO Pkts not fully RX'ed in NAPI poll + - net: hns3: Add support for ethtool -K to enable/disable HW GRO + - net: hns3: Add skb chain when num of RX buf exceeds MAX_SKB_FRAGS + - net: hns3: Adds GRO params to SKB for the stack + - scsi: hisi_sas: use dma_set_mask_and_coherent + - scsi: hisi_sas: Create separate host attributes per HBA + - scsi: hisi_sas: Add support for interrupt converge for v3 hw + - scsi: hisi_sas: Add support for interrupt coalescing for v3 hw + - scsi: hisi_sas: Relocate some codes to avoid an unused check + - scsi: hisi_sas: change the time of SAS SSP connection + - net: hns3: fix spelling mistake "failded" -> "failed" + - net: hns3: Support two vlan header when setting mtu + - net: hns3: Refactor mac mtu setting related functions + - net: hns3: Add vport alive state checking support + - net: hns3: Add mtu setting support for vf + - net: hns3: up/down netdev in hclge module when setting mtu + - net: hns3: add common validation in hclge_dcb + - net: hns3: Add debugfs framework registration + - net: hns3: Add "queue info" query function + - net: hns3: Add "FD flow table" info query function + - net: hns3: Add "tc config" info query function + - net: hns3: Add "tm config" info query function + - net: hns3: Add "qos pause" config info query function + - net: hns3: Add "qos prio map" info query function + - net: hns3: Add "qos buffer" config info query function + - net: hns3: Support "ethtool -d" for HNS3 VF driver + - net: hns3: Adds support to dump(using ethool-d) PCIe regs in HNS3 PF driver + - net: hns3: remove existing process error functions and reorder hw_blk table + - net: hns3: rename enable error interrupt functions + - net: hns3: re-enable error interrupts on hw reset + - net: hns3: deletes unnecessary settings of the descriptor data + - net: hns3: rename process_hw_error function + - net: hns3: add optimization in the hclge_hw_error_set_state + - net: hns3: add handling of hw ras errors using new set of commands + - net: hns3: deleted logging 1 bit errors + - net: hns3: add handling of hw errors reported through MSIX + - net: hns3: add handling of hw errors of MAC + - net: hns3: handle hw errors of PPP PF + - net: hns3: handle hw errors of PPU(RCB) + - net: hns3: handle hw errors of SSU + - net: hns3: add handling of RDMA RAS errors + - net: hns3: fix spelling mistake "offser" -> "offset" + - scsi: hisi_sas: Fix warnings detected by sparse + - scsi: hisi_sas: Relocate some code to reduce complexity + - scsi: hisi_sas: Make sg_tablesize consistent value + - hns3: prevent building without CONFIG_INET + - net: hns3: Add "bd info" query function + - net: hns3: Add "manager table" information query function + - net: hns3: Add "status register" information query function + - net: hns3: Add "dcb register" status information query function + - net: hns3: Add "queue map" information query function + - net: hns3: Add "tm map" status information query function + - net: hns3: fix error handling int the hns3_get_vector_ring_chain + - net: hns3: uninitialize pci in the hclgevf_uninit + - net: hns3: fix napi_disable not return problem + - net: hns3: update some variables while hclge_reset()/hclgevf_reset() done + - net: hns3: remove unnecessary configuration recapture while resetting + - net: hns3: fix incomplete uninitialization of IRQ in the + hns3_nic_uninit_vector_data() + - net: hns3: update coalesce param per second + - net: hns3: remove 1000M/half support of phy + - net: hns3: synchronize speed and duplex from phy when phy link up + - net: hns3: getting tx and dv buffer size through firmware + - net: hns3: aligning buffer size in SSU to 256 bytes + - net: hns3: fix a SSU buffer checking bug + - scsi: hisi_sas: Add support for DIF feature for v2 hw + - net: hns3: refine the handle for hns3_nic_net_open/stop() + - net: hns3: change default tc state to close + - net: hns3: fix a bug caused by udelay + - net: hns3: add max vector number check for pf + - net: hns3: reset tqp while doing DOWN operation + - net: hns3: fix vf id check issue when add flow director rule + - net: hns3: don't restore rules when flow director is disabled + - net: hns3: fix the descriptor index when get rss type + - net: hns3: remove redundant variable initialization + - net: hns3: call hns3_nic_net_open() while doing HNAE3_UP_CLIENT + * Cosmic update: 4.18.20 upstream stable release (LP: #1810821) + - powerpc/traps: restore recoverability of machine_check interrupts + - powerpc/64/module: REL32 relocation range check + - powerpc/mm: Fix page table dump to work on Radix + - powerpc/mm: fix always true/false warning in slice.c + - drm/amd/display: fix bug of accessing invalid memory + - Input: wm97xx-ts - fix exit path + - powerpc/Makefile: Fix PPC_BOOK3S_64 ASFLAGS + - powerpc/eeh: Fix possible null deref in eeh_dump_dev_log() + - tty: check name length in tty_find_polling_driver() + - tracing/kprobes: Check the probe on unloaded module correctly + - drm/amdgpu/powerplay: fix missing break in switch statements + - ARM: imx_v6_v7_defconfig: Select CONFIG_TMPFS_POSIX_ACL + - powerpc/nohash: fix undefined behaviour when testing page size support + - powerpc/mm: Don't report hugepage tables as memory leaks when using kmemleak + - drm/omap: fix memory barrier bug in DMM driver + - drm/amd/display: fix gamma not being applied + - drm/hisilicon: hibmc: Do not carry error code in HiBMC framebuffer pointer + - media: pci: cx23885: handle adding to list failure + - media: coda: don't overwrite h.264 profile_idc on decoder instance + - MIPS: kexec: Mark CPU offline before disabling local IRQ + - powerpc/boot: Ensure _zimage_start is a weak symbol + - powerpc/memtrace: Remove memory in chunks + - MIPS/PCI: Call pcie_bus_configure_settings() to set MPS/MRRS + - sc16is7xx: Fix for multi-channel stall + - media: tvp5150: fix width alignment during set_selection() + - powerpc/selftests: Wait all threads to join + - staging:iio:ad7606: fix voltage scales + - drm: rcar-du: Update Gen3 output limitations + - drm/amdgpu: Fix SDMA TO after GPU reset v3 + - staging: most: video: fix registration of an empty comp core_component + - 9p locks: fix glock.client_id leak in do_lock + - udf: Prevent write-unsupported filesystem to be remounted read-write + - ARM: dts: imx6ull: keep IMX6UL_ prefix for signals on both i.MX6UL and + i.MX6ULL + - 9p: clear dangling pointers in p9stat_free + - ovl: fix error handling in ovl_verify_set_fh() + - ovl: check whiteout in ovl_create_over_whiteout() + - serial: sh-sci: Fix could not remove dev_attr_rx_fifo_timeout + - scsi: qla2xxx: Fix incorrect port speed being set for FC adapters + - scsi: qla2xxx: Fix process response queue for ISP26XX and above + - scsi: qla2xxx: Remove stale debug trace message from tcm_qla2xxx + - scsi: qla2xxx: shutdown chip if reset fail + - scsi: qla2xxx: Fix duplicate switch database entries + - scsi: qla2xxx: Fix driver hang when FC-NVMe LUNs are configured + - fuse: Fix use-after-free in fuse_dev_do_read() + - fuse: Fix use-after-free in fuse_dev_do_write() + - fuse: fix blocked_waitq wakeup + - fuse: set FR_SENT while locked + - ovl: fix recursive oi->lock in ovl_link() + - scsi: qla2xxx: Fix re-using LoopID when handle is in use + - scsi: qla2xxx: Fix NVMe session hang on unload + - arm64: dts: stratix10: Support Ethernet Jumbo frame + - arm64: dts: stratix10: fix multicast filtering + - clk: meson-gxbb: set fclk_div3 as CLK_IS_CRITICAL + - clk: meson: axg: mark fdiv2 and fdiv3 as critical + - zram: close udev startup race condition as default groups + - MIPS: Loongson-3: Fix CPU UART irq delivery problem + - MIPS: Loongson-3: Fix BRIDGE irq delivery problem + - xtensa: add NOTES section to the linker script + - xtensa: make sure bFLT stack is 16 byte aligned + - xtensa: fix boot parameters address translation + - um: Drop own definition of PTRACE_SYSEMU/_SINGLESTEP + - clk: s2mps11: Fix matching when built as module and DT node contains + compatible + - clk: at91: Fix division by zero in PLL recalc_rate() + - clk: sunxi-ng: h6: fix bus clocks' divider position + - clk: rockchip: fix wrong mmc sample phase shift for rk3328 + - clk: rockchip: Fix static checker warning in rockchip_ddrclk_get_parent call + - libceph: bump CEPH_MSG_MAX_DATA_LEN + - Revert "ceph: fix dentry leak in splice_dentry()" + - thermal: core: Fix use-after-free in thermal_cooling_device_destroy_sysfs + - mach64: fix display corruption on big endian machines + - mach64: fix image corruption due to reading accelerator registers + - acpi/nfit, x86/mce: Handle only uncorrectable machine checks + - acpi/nfit, x86/mce: Validate a MCE's address before using it + - acpi, nfit: Fix ARS overflow continuation + - reset: hisilicon: fix potential NULL pointer dereference + - vhost/scsi: truncate T10 PI iov_iter to prot_bytes + - scsi: qla2xxx: Initialize port speed to avoid setting lower speed + - SCSI: fix queue cleanup race before queue initialization is done + - Revert "powerpc/8xx: Use L1 entry APG to handle _PAGE_ACCESSED for + CONFIG_SWAP" + - soc: ti: QMSS: Fix usage of irq_set_affinity_hint + - ocfs2: fix a misuse a of brelse after failing ocfs2_check_dir_entry + - ocfs2: free up write context when direct IO failed + - mm: thp: relax __GFP_THISNODE for MADV_HUGEPAGE mappings + - memory_hotplug: cond_resched in __remove_pages + - netfilter: conntrack: fix calculation of next bucket number in early_drop + - ARM: 8809/1: proc-v7: fix Thumb annotation of cpu_v7_hvc_switch_mm + - bonding/802.3ad: fix link_failure_count tracking + - mtd: spi-nor: cadence-quadspi: Return error code in + cqspi_direct_read_execute() + - mtd: nand: Fix nanddev_neraseblocks() + - mtd: docg3: don't set conflicting BCH_CONST_PARAMS option + - hwmon: (core) Fix double-free in __hwmon_device_register() + - perf stat: Handle different PMU names with common prefix + - of, numa: Validate some distance map rules + - x86/cpu/vmware: Do not trace vmware_sched_clock() + - x86/hyper-v: Enable PIT shutdown quirk + - termios, tty/tty_baudrate.c: fix buffer overrun + - arch/alpha, termios: implement BOTHER, IBSHIFT and termios2 + - watchdog/core: Add missing prototypes for weak functions + - btrfs: fix pinned underflow after transaction aborted + - Btrfs: fix cur_offset in the error case for nocow + - Btrfs: fix infinite loop on inode eviction after deduplication of eof block + - Btrfs: fix data corruption due to cloning of eof block + - clockevents/drivers/i8253: Add support for PIT shutdown quirk + - ext4: add missing brelse() update_backups()'s error path + - ext4: add missing brelse() in set_flexbg_block_bitmap()'s error path + - ext4: add missing brelse() add_new_gdb_meta_bg()'s error path + - ext4: avoid potential extra brelse in setup_new_flex_group_blocks() + - ext4: missing !bh check in ext4_xattr_inode_write() + - ext4: fix possible inode leak in the retry loop of ext4_resize_fs() + - ext4: avoid buffer leak on shutdown in ext4_mark_iloc_dirty() + - ext4: avoid buffer leak in ext4_orphan_add() after prior errors + - ext4: fix missing cleanup if ext4_alloc_flex_bg_array() fails while resizing + - ext4: avoid possible double brelse() in add_new_gdb() on error path + - ext4: fix possible leak of sbi->s_group_desc_leak in error path + - ext4: fix possible leak of s_journal_flag_rwsem in error path + - ext4: fix buffer leak in ext4_xattr_get_block() on error path + - ext4: release bs.bh before re-using in ext4_xattr_block_find() + - ext4: fix buffer leak in ext4_xattr_move_to_block() on error path + - ext4: fix buffer leak in ext4_expand_extra_isize_ea() on error path + - ext4: fix buffer leak in __ext4_read_dirblock() on error path + - mount: Prevent MNT_DETACH from disconnecting locked mounts + - mnt: fix __detach_mounts infinite loop + - kdb: use correct pointer when 'btc' calls 'btt' + - kdb: print real address of pointers instead of hashed addresses + - sunrpc: correct the computation for page_ptr when truncating + - NFSv4: Don't exit the state manager without clearing + NFS4CLNT_MANAGER_RUNNING + - nfsd: COPY and CLONE operations require the saved filehandle to be set + - rtc: hctosys: Add missing range error reporting + - fuse: fix use-after-free in fuse_direct_IO() + - fuse: fix leaked notify reply + - selinux: check length properly in SCTP bind hook + - configfs: replace strncpy with memcpy + - gfs2: Put bitmap buffers in put_super + - gfs2: Fix metadata read-ahead during truncate (2) + - libata: blacklist SAMSUNG MZ7TD256HAFV-000L9 SSD + - crypto: user - fix leaking uninitialized memory to userspace + - lib/ubsan.c: don't mark __ubsan_handle_builtin_unreachable as noreturn + - hugetlbfs: fix kernel BUG at fs/hugetlbfs/inode.c:444! + - mm/swapfile.c: use kvzalloc for swap_info_struct allocation + - efi/arm/libstub: Pack FDT after populating it + - drm/rockchip: Allow driver to be shutdown on reboot/kexec + - drm/msm: fix OF child-node lookup + - drm/amdgpu: Fix typo in amdgpu_vmid_mgr_init + - drm/amdgpu: add missing CHIP_HAINAN in amdgpu_ucode_get_load_type + - drm/nouveau: Check backlight IDs are >= 0, not > 0 + - drm/nouveau: Fix nv50_mstc->best_encoder() + - drm/amd/powerplay: Enable/Disable NBPSTATE on On/OFF of UVD + - drm/etnaviv: fix bogus fence complete check in timeout handler + - drm/dp_mst: Check if primary mstb is null + - drm: panel-orientation-quirks: Add quirk for Acer One 10 (S1003) + - drm/i915/dp: Link train Fallback on eDP only if fallback link BW can fit + panel's native mode + - drm/i915: Restore vblank interrupts earlier + - drm/i915: Don't unset intel_connector->mst_port + - drm/i915: Skip vcpi allocation for MSTB ports that are gone + - drm/i915: Large page offsets for pread/pwrite + - drm/i915/dp: Fix link retraining comment in intel_dp_long_pulse() + - drm/i915/dp: Restrict link retrain workaround to external monitors + - drm/i915/hdmi: Add HDMI 2.0 audio clock recovery N values + - drm/i915: Fix error handling for the NV12 fb dimensions check + - drm/i915: Fix ilk+ watermarks when disabling pipes + - drm/i915: Compare user's 64b GTT offset even on 32b + - drm/i915: Don't oops during modeset shutdown after lpe audio deinit + - drm/i915: Mark pin flags as u64 + - drm/i915/ringbuffer: Delay after EMIT_INVALIDATE for gen4/gen5 + - drm/i915/execlists: Force write serialisation into context image vs + execution + - drm/i915: Fix possible race in intel_dp_add_mst_connector() + - CONFIG_XEN_PV breaks xen_create_contiguous_region on ARM + - Linux 4.18.20 + * Cosmic update: 4.18.19 upstream stable release (LP: #1810820) + - mtd: rawnand: marvell: fix the IRQ handler complete() condition + - mtd: spi-nor: fsl-quadspi: fix read error for flash size larger than 16MB + - mtd: spi-nor: intel-spi: Add support for Intel Ice Lake SPI serial flash + - mtd: spi-nor: fsl-quadspi: Don't let -EINVAL on the bus + - spi: spi-mem: Adjust op len based on message/transfer size limitations + - spi: bcm-qspi: switch back to reading flash using smaller chunks + - spi: bcm-qspi: fix calculation of address length + - bcache: trace missed reading by cache_missed + - bcache: correct dirty data statistics + - bcache: fix miss key refill->end in writeback + - hwmon: (pmbus) Fix page count auto-detection. + - jffs2: free jffs2_sb_info through jffs2_kill_sb() + - block: setup bounce bio_sets properly + - block: don't deal with discard limit in blkdev_issue_discard() + - block: make sure discard bio is aligned with logical block size + - block: make sure writesame bio is aligned with logical block size + - cpufreq: conservative: Take limits changes into account properly + - dma-mapping: fix panic caused by passing empty cma command line argument + - pcmcia: Implement CLKRUN protocol disabling for Ricoh bridges + - ACPI / OSL: Use 'jiffies' as the time bassis for acpi_os_get_timer() + - ACPICA: AML Parser: fix parse loop to correctly skip erroneous extended + opcodes + - kprobes/x86: Use preempt_enable() in optimized_callback() + - mailbox: PCC: handle parse error + - acpi, nfit: Fix Address Range Scrub completion tracking + - parisc: Fix address in HPMC IVA + - parisc: Fix map_pages() to not overwrite existing pte entries + - parisc: Fix exported address of os_hpmc handler + - ALSA: hda - Add quirk for ASUS G751 laptop + - ALSA: hda - Fix headphone pin config for ASUS G751 + - ALSA: hda - Add mic quirk for the Lenovo G50-30 (17aa:3905) + - ALSA: hda: Add 2 more models to the power_save blacklist + - ALSA: ca0106: Disable IZD on SB0570 DAC to fix audio pops + - x86/speculation: Enable cross-hyperthread spectre v2 STIBP mitigation + - x86/xen: Fix boot loader version reported for PVH guests + - x86/corruption-check: Fix panic in memory_corruption_check() when boot + option without value is provided + - x86/mm/pat: Disable preemption around __flush_tlb_all() + - ARM: dts: exynos: Disable pull control for MAX8997 interrupts on Origen + - drm: fix use of freed memory in drm_mode_setcrtc + - bpf: do not blindly change rlimit in reuseport net selftest + - nvme: remove ns sibling before clearing path + - Revert "perf tools: Fix PMU term format max value calculation" + - selftests: usbip: add wait after attach and before checking port status + - xsk: do not call synchronize_net() under RCU read lock + - xfrm: policy: use hlist rcu variants on insert + - perf vendor events intel: Fix wrong filter_band* values for uncore events + - nfp: flower: fix pedit set actions for multiple partial masks + - nfp: flower: use offsets provided by pedit instead of index for ipv6 + - sched/fair: Fix the min_vruntime update logic in dequeue_entity() + - perf evsel: Store ids for events with their own cpus + perf_event__synthesize_event_update_cpus + - perf tools: Fix use of alternatives to find JDIR + - perf cpu_map: Align cpu map synthesized events properly. + - perf report: Don't crash on invalid inline debug information + - x86/fpu: Remove second definition of fpu in __fpu__restore_sig() + - net: qla3xxx: Remove overflowing shift statement + - drm: Get ref on CRTC commit object when waiting for flip_done + - selftests: ftrace: Add synthetic event syntax testcase + - i2c: rcar: cleanup DMA for all kinds of failure + - net: socionext: Reset tx queue in ndo_stop + - locking/lockdep: Fix debug_locks off performance problem + - netfilter: xt_nat: fix DNAT target for shifted portmap ranges + - ataflop: fix error handling during setup + - swim: fix cleanup on setup error + - arm64: cpufeature: ctr: Fix cpu capability check for late CPUs + - nfp: devlink port split support for 1x100G CXP NIC + - tun: Consistently configure generic netdev params via rtnetlink + - s390/sthyi: Fix machine name validity indication + - hwmon: (pwm-fan) Set fan speed to 0 on suspend + - lightnvm: pblk: fix race on sysfs line state + - lightnvm: pblk: fix two sleep-in-atomic-context bugs + - lightnvm: pblk: fix race condition on metadata I/O + - spi: spi-ep93xx: Use dma_data_direction for ep93xx_spi_dma_{finish,prepare} + - perf tools: Free temporary 'sys' string in read_event_files() + - perf tools: Cleanup trace-event-info 'tdata' leak + - perf strbuf: Match va_{add,copy} with va_end + - cpupower: Fix coredump on VMWare + - bcache: Populate writeback_rate_minimum attribute + - mmc: sdhci-pci-o2micro: Add quirk for O2 Micro dev 0x8620 rev 0x01 + - sdhci: acpi: add free_slot callback + - mtd: rawnand: denali: set SPARE_AREA_SKIP_BYTES register to 8 if unset + - iwlwifi: pcie: avoid empty free RB queue + - iwlwifi: mvm: clear HW_RESTART_REQUESTED when stopping the interface + - iwlwifi: mvm: check for n_profiles validity in EWRD ACPI + - x86/olpc: Indicate that legacy PC XO-1 platform should not register RTC + - ACPI/PPTT: Handle architecturally unknown cache types + - ACPI / PM: LPIT: Register sysfs attributes based on FADT + - ACPI / processor: Fix the return value of acpi_processor_ids_walk() + - cpufreq: dt: Try freeing static OPPs only if we have added them + - x86/intel_rdt: Show missing resctrl mount options + - mtd: rawnand: atmel: Fix potential NULL pointer dereference + - signal: Introduce COMPAT_SIGMINSTKSZ for use in compat_sys_sigaltstack + - ice: fix changing of ring descriptor size (ethtool -G) + - ice: update fw version check logic + - net: hns3: Fix for packet buffer setting bug + - Bluetooth: btbcm: Add entry for BCM4335C0 UART bluetooth + - x86: boot: Fix EFI stub alignment + - net: hns3: Add nic state check before calling netif_tx_wake_queue + - net: hns3: Fix ets validate issue + - pinctrl: sunxi: fix 'pctrl->functions' allocation in + sunxi_pinctrl_build_state + - pinctrl: qcom: spmi-mpp: Fix err handling of pmic_mpp_set_mux + - brcmfmac: fix for proper support of 160MHz bandwidth + - net: hns3: Check hdev state when getting link status + - net: hns3: Set STATE_DOWN bit of hdev state when stopping net + - net: phy: phylink: ensure the carrier is off when starting phylink + - block, bfq: correctly charge and reset entity service in all cases + - arm64: entry: Allow handling of undefined instructions from EL1 + - kprobes: Return error if we fail to reuse kprobe instead of BUG_ON() + - spi: gpio: No MISO does not imply no RX + - ACPI / LPSS: Add alternative ACPI HIDs for Cherry Trail DMA controllers + - pinctrl: qcom: spmi-mpp: Fix drive strength setting + - bpf/verifier: fix verifier instability + - failover: Add missing check to validate 'slave_dev' in + net_failover_slave_unregister + - perf tests: Fix record+probe_libc_inet_pton.sh without ping's debuginfo + - pinctrl: spmi-mpp: Fix pmic_mpp_config_get() to be compliant + - pinctrl: ssbi-gpio: Fix pm8xxx_pin_config_get() to be compliant + - net: hns3: Preserve vlan 0 in hardware table + - net: hns3: Fix ping exited problem when doing lp selftest + - net: hns3: Fix for vf vlan delete failed problem + - net: dsa: mv88e6xxx: Fix writing to a PHY page. + - rsi: fix memory alignment issue in ARM32 platforms + - iwlwifi: mvm: fix BAR seq ctrl reporting + - gpio: brcmstb: allow 0 width GPIO banks + - ixgbe: disallow IPsec Tx offload when in SR-IOV mode + - ixgbevf: VF2VF TCP RSS + - ath10k: schedule hardware restart if WMI command times out + - libata: Apply NOLPM quirk for SAMSUNG MZ7TD256HAFV-000L9 + - thermal: rcar_thermal: Prevent doing work after unbind + - thermal: da9062/61: Prevent hardware access during system suspend + - cgroup, netclassid: add a preemption point to write_classid + - net: stmmac: dwmac-sun8i: fix OF child-node lookup + - f2fs: fix to account IO correctly for cgroup writeback + - MD: Memory leak when flush bio size is zero + - md: fix memleak for mempool + - scsi: esp_scsi: Track residual for PIO transfers + - scsi: ufs: Schedule clk gating work on correct queue + - UAPI: ndctl: Fix g++-unsupported initialisation in headers + - KVM: nVMX: Clear reserved bits of #DB exit qualification + - scsi: megaraid_sas: fix a missing-check bug + - RDMA/core: Do not expose unsupported counters + - IB/ipoib: Clear IPCB before icmp_send + - RDMA/bnxt_re: Avoid accessing nq->bar_reg_iomem in failure case + - RDMA/bnxt_re: Fix recursive lock warning in debug kernel + - usb: host: ohci-at91: fix request of irq for optional gpio + - PCI: mediatek: Fix mtk_pcie_find_port() endpoint/port matching logic + - PCI: cadence: Use AXI region 0 to signal interrupts from EP + - usb: typec: tcpm: Report back negotiated PPS voltage and current + - tpm: suppress transmit cmd error logs when TPM 1.2 is disabled/deactivated + - f2fs: clear PageError on the read path + - Drivers: hv: vmbus: Use cpumask_var_t for on-stack cpu mask + - VMCI: Resource wildcard match fixed + - PCI / ACPI: Enable wake automatically for power managed bridges + - xprtrdma: Reset credit grant properly after a disconnect + - irqchip/pdc: Setup all edge interrupts as rising edge at GIC + - usb: dwc2: fix a race with external vbus supply + - usb: gadget: udc: atmel: handle at91sam9rl PMC + - ext4: fix argument checking in EXT4_IOC_MOVE_EXT + - MD: fix invalid stored role for a disk + - nvmem: check the return value of nvmem_add_cells() + - xhci: Avoid USB autosuspend when resuming USB2 ports. + - f2fs: fix to recover inode's crtime during POR + - f2fs: fix to recover inode's i_flags during POR + - PCI/MSI: Warn and return error if driver enables MSI/MSI-X twice + - coresight: etb10: Fix handling of perf mode + - PCI: dwc: pci-dra7xx: Enable errata i870 for both EP and RC mode + - crypto: caam - fix implicit casts in endianness helpers + - usb: chipidea: Prevent unbalanced IRQ disable + - Smack: ptrace capability use fixes + - driver/dma/ioat: Call del_timer_sync() without holding prep_lock + - firmware: coreboot: Unmap ioregion after device population + - IB/mlx5: Allow transition of DCI QP to reset + - uio: ensure class is registered before devices + - scsi: lpfc: Correct soft lockup when running mds diagnostics + - scsi: lpfc: Correct race with abort on completion path + - f2fs: avoid sleeping under spin_lock + - f2fs: report error if quota off error during umount + - signal: Always deliver the kernel's SIGKILL and SIGSTOP to a pid namespace + init + - mfd: menelaus: Fix possible race condition and leak + - dmaengine: dma-jz4780: Return error if not probed from DT + - IB/rxe: fix for duplicate request processing and ack psns + - ALSA: hda: Check the non-cached stream buffers more explicitly + - cpupower: Fix AMD Family 0x17 msr_pstate size + - Revert "f2fs: fix to clear PG_checked flag in set_page_dirty()" + - f2fs: fix to recover cold bit of inode block during POR + - f2fs: fix to account IO correctly + - OPP: Free OPP table properly on performance state irregularities + - arm: dts: exynos: Add missing cooling device properties for CPUs + - ARM: dts: exynos: Convert exynos5250.dtsi to opp-v2 bindings + - ARM: dts: exynos: Mark 1 GHz CPU OPP as suspend OPP on Exynos5250 + - xen-swiotlb: use actually allocated size on check physical continuous + - tpm: Restore functionality to xen vtpm driver. + - xen/blkfront: avoid NULL blkfront_info dereference on device removal + - xen/balloon: Support xend-based toolstack + - xen: fix race in xen_qlock_wait() + - xen: make xen_qlock_wait() nestable + - xen/pvh: increase early stack size + - xen/pvh: don't try to unplug emulated devices + - libertas: don't set URB_ZERO_PACKET on IN USB transfer + - usbip:vudc: BUG kmalloc-2048 (Not tainted): Poison overwritten + - usb: typec: tcpm: Fix APDO PPS order checking to be based on voltage + - usb: gadget: udc: renesas_usb3: Fix b-device mode for "workaround" + - mt76: mt76x2: fix multi-interface beacon configuration + - iwlwifi: mvm: check return value of rs_rate_from_ucode_rate() + - net/ipv4: defensive cipso option parsing + - dmaengine: ppc4xx: fix off-by-one build failure + - libnvdimm: Hold reference on parent while scheduling async init + - libnvdimm, region: Fail badblocks listing for inactive regions + - libnvdimm, pmem: Fix badblocks population for 'raw' namespaces + - ASoC: intel: skylake: Add missing break in skl_tplg_get_token() + - ASoC: sta32x: set ->component pointer in private struct + - IB/mlx5: Fix MR cache initialization + - IB/rxe: Revise the ib_wr_opcode enum + - jbd2: fix use after free in jbd2_log_do_checkpoint() + - gfs2_meta: ->mount() can get NULL dev_name + - ext4: fix EXT4_IOC_SWAP_BOOT + - ext4: initialize retries variable in ext4_da_write_inline_data_begin() + - ext4: fix setattr project check in fssetxattr ioctl + - ext4: propagate error from dquot_initialize() in EXT4_IOC_FSSETXATTR + - ext4: fix use-after-free race in ext4_remount()'s error path + - selinux: fix mounting of cgroup2 under older policies + - HID: wacom: Work around HID descriptor bug in DTK-2451 and DTH-2452 + - HID: hiddev: fix potential Spectre v1 + - EDAC, amd64: Add Family 17h, models 10h-2fh support + - EDAC, {i7core,sb,skx}_edac: Fix uncorrected error counting + - EDAC, skx_edac: Fix logical channel intermediate decoding + - ARM: dts: dra7: Fix up unaligned access setting for PCIe EP + - PCI/ASPM: Fix link_state teardown on device removal + - PCI: Add Device IDs for Intel GPU "spurious interrupt" quirk + - PCI: vmd: White list for fast interrupt handlers + - signal/GenWQE: Fix sending of SIGKILL + - signal: Guard against negative signal numbers in copy_siginfo_from_user32 + - crypto: lrw - Fix out-of bounds access on counter overflow + - crypto: tcrypt - fix ghash-generic speed test + - crypto: aesni - don't use GFP_ATOMIC allocation if the request doesn't cross + a page in gcm + - crypto: morus/generic - fix for big endian systems + - crypto: aegis/generic - fix for big endian systems + - [config] remove deprecated CRYPTO_SPECK, CRYPTO_SPECK_NEON + - crypto: speck - remove Speck + - mm: /proc/pid/smaps_rollup: fix NULL pointer deref in smaps_pte_range() + - ima: fix showing large 'violations' or 'runtime_measurements_count' + - hugetlbfs: dirty pages as they are added to pagecache + - mm/rmap: map_pte() was not handling private ZONE_DEVICE page properly + - mm/hmm: fix race between hmm_mirror_unregister() and mmu_notifier callback + - KVM: arm/arm64: Ensure only THP is candidate for adjustment + - KVM: arm64: Fix caching of host MDCR_EL2 value + - kbuild: fix kernel/bounds.c 'W=1' warning + - iio: ad5064: Fix regulator handling + - iio: adc: imx25-gcq: Fix leak of device_node in mx25_gcq_setup_cfgs() + - iio: adc: at91: fix acking DRDY irq on simple conversions + - iio: adc: at91: fix wrong channel number in triggered buffer mode + - w1: omap-hdq: fix missing bus unregister at removal + - smb3: allow stats which track session and share reconnects to be reset + - smb3: do not attempt cifs operation in smb3 query info error path + - smb3: on kerberos mount if server doesn't specify auth type use krb5 + - printk: Fix panic caused by passing log_buf_len to command line + - genirq: Fix race on spurious interrupt detection + - NFC: nfcmrvl_uart: fix OF child-node lookup + - NFSv4.1: Fix the r/wsize checking + - nfs: Fix a missed page unlock after pg_doio() + - nfsd: correctly decrement odstate refcount in error path + - nfsd: Fix an Oops in free_session() + - lockd: fix access beyond unterminated strings in prints + - dm ioctl: harden copy_params()'s copy_from_user() from malicious users + - dm zoned: fix metadata block ref counting + - dm zoned: fix various dmz_get_mblock() issues + - media: ov7670: make "xclk" clock optional + - fsnotify: Fix busy inodes during unmount + - powerpc/msi: Fix compile error on mpc83xx + - powerpc/tm: Fix HFSCR bit for no suspend case + - powerpc/64s/hash: Do not use PPC_INVALIDATE_ERAT on CPUs before POWER9 + - MIPS: memset: Fix CPU_DADDI_WORKAROUNDS `small_fixup' regression + - MIPS: OCTEON: fix out of bounds array access on CN68XX + - rtc: ds1307: fix ds1339 wakealarm support + - rtc: cmos: Fix non-ACPI undefined reference to `hpet_rtc_interrupt' + - rtc: cmos: Remove the `use_acpi_alarm' module parameter for !ACPI + - power: supply: twl4030-charger: fix OF sibling-node lookup + - ocxl: Fix access to the AFU Descriptor Data + - iommu/arm-smmu: Ensure that page-table updates are visible before TLBI + - TC: Set DMA masks for devices + - net: bcmgenet: fix OF child-node lookup + - media: v4l2-tpg: fix kernel oops when enabling HFLIP and OSD + - Revert "media: dvbsky: use just one mutex for serializing device R/W ops" + - kgdboc: Passing ekgdboc to command line causes panic + - media: cec: make cec_get_edid_spa_location() an inline function + - media: cec: integrate cec_validate_phys_addr() in cec-api.c + - xen: fix xen_qlock_wait() + - xen: remove size limit of privcmd-buf mapping interface + - xen-blkfront: fix kernel panic with negotiate_mq error path + - media: cec: add new tx/rx status bits to detect aborts/timeouts + - media: cec: fix the Signal Free Time calculation + - media: cec: forgot to cancel delayed work + - media: em28xx: use a default format if TRY_FMT fails + - media: tvp5150: avoid going past array on v4l2_querymenu() + - media: em28xx: fix input name for Terratec AV 350 + - media: em28xx: make v4l2-compliance happier by starting sequence on zero + - media: em28xx: fix handler for vidioc_s_input() + - media: adv7604: when the EDID is cleared, unconfigure CEC as well + - media: adv7842: when the EDID is cleared, unconfigure CEC as well + - drm/mediatek: fix OF sibling-node lookup + - media: media colorspaces*.rst: rename AdobeRGB to opRGB + - media: replace ADOBERGB by OPRGB + - media: hdmi.h: rename ADOBE_RGB to OPRGB and ADOBE_YCC to OPYCC + - arm64: lse: remove -fcall-used-x0 flag + - rpmsg: smd: fix memory leak on channel create + - Cramfs: fix abad comparison when wrap-arounds occur + - ARM: dts: socfpga: Fix SDRAM node address for Arria10 + - arm64: dts: stratix10: Correct System Manager register size + - soc: qcom: rmtfs-mem: Validate that scm is available + - soc/tegra: pmc: Fix child-node lookup + - selftests/ftrace: Fix synthetic event test to delete event correctly + - selftests/powerpc: Fix ptrace tm failure + - tracing: Return -ENOENT if there is no target synthetic event + - btrfs: qgroup: Avoid calling qgroup functions if qgroup is not enabled + - btrfs: Handle owner mismatch gracefully when walking up tree + - btrfs: locking: Add extra check in btrfs_init_new_buffer() to avoid deadlock + - btrfs: fix error handling in free_log_tree + - btrfs: fix error handling in btrfs_dev_replace_start + - btrfs: Enhance btrfs_trim_fs function to handle error better + - btrfs: Ensure btrfs_trim_fs can trim the whole filesystem + - btrfs: iterate all devices during trim, instead of fs_devices::alloc_list + - btrfs: don't attempt to trim devices that don't support it + - btrfs: keep trim from interfering with transaction commits + - btrfs: wait on caching when putting the bg cache + - Btrfs: don't clean dirty pages during buffered writes + - btrfs: release metadata before running delayed refs + - btrfs: protect space cache inode alloc with GFP_NOFS + - btrfs: reset max_extent_size on clear in a bitmap + - btrfs: make sure we create all new block groups + - Btrfs: fix warning when replaying log after fsync of a tmpfile + - Btrfs: fix wrong dentries after fsync of file that got its parent replaced + - btrfs: qgroup: Dirty all qgroups before rescan + - Btrfs: fix null pointer dereference on compressed write path error + - Btrfs: fix assertion on fsync of regular file when using no-holes feature + - Btrfs: fix deadlock when writing out free space caches + - btrfs: reset max_extent_size properly + - btrfs: set max_extent_size properly + - btrfs: don't use ctl->free_space for max_extent_size + - btrfs: only free reserved extent if we didn't insert it + - btrfs: fix insert_reserved error handling + - btrfs: don't run delayed_iputs in commit + - btrfs: move the dio_sem higher up the callchain + - Btrfs: fix use-after-free during inode eviction + - Btrfs: fix use-after-free when dumping free space + - net: sched: Remove TCA_OPTIONS from policy + - bpf: wait for running BPF programs when updating map-in-map + - MD: fix invalid stored role for a disk - try2 + - Linux 4.18.19 + * Cosmic update: 4.18.18 upstream stable release (LP: #1810818) + - eeprom: at24: Add support for address-width property + - vfs: swap names of {do,vfs}_clone_file_range() + - bpf: fix partial copy of map_ptr when dst is scalar + - gpio: mxs: Get rid of external API call + - clk: sunxi-ng: sun4i: Set VCO and PLL bias current to lowest setting + - fscache: Fix incomplete initialisation of inline key space + - cachefiles: fix the race between cachefiles_bury_object() and rmdir(2) + - fscache: Fix out of bound read in long cookie keys + - ptp: fix Spectre v1 vulnerability + - drm/edid: VSDB yCBCr420 Deep Color mode bit definitions + - drm: fb-helper: Reject all pixel format changing requests + - RDMA/ucma: Fix Spectre v1 vulnerability + - IB/ucm: Fix Spectre v1 vulnerability + - cdc-acm: do not reset notification buffer index upon urb unlinking + - cdc-acm: correct counting of UART states in serial state notification + - cdc-acm: fix race between reset and control messaging + - usb: usbip: Fix BUG: KASAN: slab-out-of-bounds in vhci_hub_control() + - usb: gadget: storage: Fix Spectre v1 vulnerability + - usb: roles: intel_xhci: Fix Unbalanced pm_runtime_enable + - usb: xhci: pci: Enable Intel USB role mux on Apollo Lake platforms + - USB: fix the usbfs flag sanitization for control transfers + - tracing: Fix synthetic event to accept unsigned modifier + - tracing: Fix synthetic event to allow semicolon at end + - Input: elan_i2c - add ACPI ID for Lenovo IdeaPad 330-15IGM + - drm/sun4i: Fix an ulong overflow in the dotclock driver + - sched/fair: Fix throttle_list starvation with low CFS quota + - x86/tsc: Force inlining of cyc2ns bits + - x86, hibernate: Fix nosave_regions setup for hibernation + - x86/percpu: Fix this_cpu_read() + - x86/time: Correct the attribute on jiffies' definition + - x86/swiotlb: Enable swiotlb for > 4GiG RAM on 32-bit kernels + - x86/fpu: Fix i486 + no387 boot crash by only saving FPU registers on context + switch if there is an FPU + - Linux 4.18.18 + * Colour banding in HP Pavilion 15-n233sl integrated display (LP: #1794387) // + Cosmic update: 4.18.18 upstream stable release (LP: #1810818) + - drm/edid: Add 6 bpc quirk for BOE panel in HP Pavilion 15-n233sl + * lineout jack can't work on a Dell machine (LP: #1810892) + - ALSA: hda/realtek - Support Dell headset mode for New AIO platform + * Ethernet[10ec:8136] doesn't work after S3 with kernel 4.15.0.43.64 + (LP: #1809847) + - r8169: Enable MSI-X on RTL8106e + - r8169: re-enable MSI-X on RTL8168g + * Support new Realtek ethernet chips (LP: #1811055) + - r8169: Add support for new Realtek Ethernet + * PC SN720 NVMe WDC 256GB consumes more power in S2Idle than during long idle + (LP: #1805775) + - SAUCE: pci/nvme: prevent WDC PC SN720 NVMe from entering D3 and being + disabled + * Power consumption during s2idle is higher than long idle (Intel SSDPEKKF) + (LP: #1804588) + - SAUCE: pci: prevent Intel NVMe SSDPEKKF from entering D3 + - SAUCE: nvme: add quirk to not call disable function when suspending + * mpt3sas - driver using the wrong register to update a queue index in FW + (LP: #1810781) + - scsi: mpt3sas: As per MPI-spec, use combined reply queue for SAS3.5 + controllers when HBA supports more than 16 MSI-x vectors. + * Enable new Realtek card reader (LP: #1806335) + - USB: usb-storage: Add new IDs to ums-realtek + - SAUCE: (noup) USB: usb-storage: Make MMC support optional on ums-realtek + * The line-out on the Dell Dock station can't work (LP: #1806532) + - ALSA: usb-audio: Add vendor and product name for Dell WD19 Dock + * linux-buildinfo: pull out ABI information into its own package + (LP: #1806380) + - [Packaging] getabis -- handle all known package combinations + - [Packaging] getabis -- support parsing a simple version + * Fix Intel I210 doesn't work when ethernet cable gets plugged (LP: #1806818) + - igb: Fix an issue that PME is not enabled during runtime suspend + * Fix Terminus USB hub that may breaks connected USB devices after S3 + (LP: #1806850) + - USB: Wait for extra delay time after USB_PORT_FEAT_RESET for quirky hub + * Add support for 0cf3:535b QCA_ROME device (LP: #1807333) + - Bluetooth: btusb: Add support for 0cf3:535b QCA_ROME device + * the new Steam Controller driver breaks it on Steam (LP: #1798583) + - HID: steam: remove input device when a hid client is running. + * The mute led can't work anymore on the lenovo x1 carbon (LP: #1808465) + - ALSA: hda/realtek - Fix the mute LED regresion on Lenovo X1 Carbon + * click/pop noise in the headphone on several lenovo laptops (LP: #1805079) // + click/pop noise in the headphone on several lenovo laptops (LP: #1805079) + - ALSA: hda/realtek - fix the pop noise on headphone for lenovo laptops + * MAC address pass through on RTL8153-BND for docking station (LP: #1808729) + - r8152: Add support for MAC address pass through on RTL8153-BND + * powerpc test in ubuntu_kernel_selftest failed on Cosmic P8/P9 (LP: #1808318) + - selftests/powerpc: Fix Makefiles for headers_install change + * [Ubuntu] kernel: zcrypt: reinit ap queue state machine (LP: #1805414) + - s390/zcrypt: reinit ap queue state machine during device probe + * [UBUNTU] qeth: fix length check in SNMP processing (LP: #1805802) + - s390/qeth: fix length check in SNMP processing + * ASPEED server console output extremely slow after upgrade to 18.04 + (LP: #1808183) + - drm/ast: Remove existing framebuffers before loading driver + + -- Stefan Bader Mon, 14 Jan 2019 16:28:20 +0100 + +linux-azure (4.18.0-1007.7) cosmic; urgency=medium + + * linux-azure: 4.18.0-1007.7 -proposed tracker (LP: #1806422) + + * Packaging resync (LP: #1786013) + - [Packaging] update helper scripts + - [Packaging] update update.conf + + [ Ubuntu: 4.18.0-13.14 ] + + * linux: 4.18.0-13.14 -proposed tracker (LP: #1806409) + * linux-buildinfo: pull out ABI information into its own package + (LP: #1806380) + - [Packaging] limit preparation to linux-libc-dev in headers + - [Packaging] commonise debhelper invocation + - [Packaging] ABI -- accumulate abi information at the end of the build + - [Packaging] buildinfo -- add basic build information + - [Packaging] buildinfo -- add firmware information to the flavour ABI + - [Packaging] buildinfo -- add compiler information to the flavour ABI + - [Packaging] buildinfo -- add buildinfo support to getabis + * linux packages should own /usr/lib/linux/triggers (LP: #1770256) + - [Packaging] own /usr/lib/linux/triggers + * Regression: hinic performance degrades over time (LP: #1805248) + - Revert "net-next/hinic: add checksum offload and TSO support" + * CVE-2018-18710 + - cdrom: fix improper type cast, which can leat to information leak. + + -- Marcelo Henrique Cerri Thu, 06 Dec 2018 18:04:26 +0000 + +linux-azure (4.18.0-1006.6) cosmic; urgency=medium + + * linux-azure: 4.18.0-1006.6 -proposed tracker (LP: #1805244) + + * Accelerated networking (SR-IOV VF) broken in 18.10 daily (LP: #1794477) + - [Packaging] Move pci-hyperv and autofs4 back to linux-modules + + -- Marcelo Henrique Cerri Mon, 26 Nov 2018 21:48:04 +0000 + +linux-azure (4.18.0-1005.5) cosmic; urgency=medium + + * linux-azure: 4.18.0-1005.5 -proposed tracker (LP: #1802752) + + * [Hyper-V] Fix IRQ spreading on NVMe devices with lower numbers of channels + (LP: #1802358) + - SAUCE: genirq/affinity: Spread IRQs to all available NUMA nodes + - SAUCE: irq/matrix: Split out the CPU selection code into a helper + - SAUCE: irq/matrix: Spread managed interrupts on allocation + - SAUCE: genirq/matrix: Improve target CPU selection for managed interrupts. + + [ Ubuntu: 4.18.0-12.13 ] + + * linux: 4.18.0-12.13 -proposed tracker (LP: #1802743) + * [FEAT] Guest-dedicated Crypto Adapters (LP: #1787405) + - s390/zcrypt: Add ZAPQ inline function. + - s390/zcrypt: Review inline assembler constraints. + - s390/zcrypt: Integrate ap_asm.h into include/asm/ap.h. + - s390/zcrypt: fix ap_instructions_available() returncodes + - KVM: s390: vsie: simulate VCPU SIE entry/exit + - KVM: s390: introduce and use KVM_REQ_VSIE_RESTART + - KVM: s390: refactor crypto initialization + - s390: vfio-ap: base implementation of VFIO AP device driver + - s390: vfio-ap: register matrix device with VFIO mdev framework + - s390: vfio-ap: sysfs interfaces to configure adapters + - s390: vfio-ap: sysfs interfaces to configure domains + - s390: vfio-ap: sysfs interfaces to configure control domains + - s390: vfio-ap: sysfs interface to view matrix mdev matrix + - KVM: s390: interface to clear CRYCB masks + - s390: vfio-ap: implement mediated device open callback + - s390: vfio-ap: implement VFIO_DEVICE_GET_INFO ioctl + - s390: vfio-ap: zeroize the AP queues + - s390: vfio-ap: implement VFIO_DEVICE_RESET ioctl + - KVM: s390: Clear Crypto Control Block when using vSIE + - KVM: s390: vsie: Do the CRYCB validation first + - KVM: s390: vsie: Make use of CRYCB FORMAT2 clear + - KVM: s390: vsie: Allow CRYCB FORMAT-2 + - KVM: s390: vsie: allow CRYCB FORMAT-1 + - KVM: s390: vsie: allow CRYCB FORMAT-0 + - KVM: s390: vsie: allow guest FORMAT-0 CRYCB on host FORMAT-1 + - KVM: s390: vsie: allow guest FORMAT-1 CRYCB on host FORMAT-2 + - KVM: s390: vsie: allow guest FORMAT-0 CRYCB on host FORMAT-2 + - KVM: s390: device attrs to enable/disable AP interpretation + - KVM: s390: CPU model support for AP virtualization + - s390: doc: detailed specifications for AP virtualization + - KVM: s390: fix locking for crypto setting error path + - KVM: s390: Tracing APCB changes + - s390: vfio-ap: setup APCB mask using KVM dedicated function + - [Config:] Enable CONFIG_S390_AP_IOMMU and set CONFIG_VFIO_AP to module. + * Bypass of mount visibility through userns + mount propagation (LP: #1789161) + - mount: Retest MNT_LOCKED in do_umount + - mount: Don't allow copying MNT_UNBINDABLE|MNT_LOCKED mounts + * CVE-2018-18955: nested user namespaces with more than five extents + incorrectly grant privileges over inode (LP: #1801924) // CVE-2018-18955 + - userns: also map extents in the reverse map to kernel IDs + * kdump fail due to an IRQ storm (LP: #1797990) + - SAUCE: x86/PCI: Export find_cap() to be used in early PCI code + - SAUCE: x86/quirks: Add parameter to clear MSIs early on boot + - SAUCE: x86/quirks: Scan all busses for early PCI quirks + * crash in ENA driver on removing an interface (LP: #1802341) + - SAUCE: net: ena: fix crash during ena_remove() + * Ubuntu 18.04.1 - [s390x] Kernel panic while stressing network bonding + (LP: #1797367) + - s390/qeth: reduce hard-coded access to ccw channels + - s390/qeth: sanitize strings in debug messages + * Add checksum offload and TSO support for HiNIC adapters (LP: #1800664) + - net-next/hinic: add checksum offload and TSO support + * smartpqi updates for ubuntu 18.04.2 (LP: #1798208) + - scsi: smartpqi: improve handling for sync requests + - scsi: smartpqi: improve error checking for sync requests + - scsi: smartpqi: add inspur advantech ids + - scsi: smartpqi: fix critical ARM issue reading PQI index registers + - scsi: smartpqi: bump driver version to 1.1.4-130 + * [GLK/CLX] Enhanced IBRS (LP: #1786139) + - x86/speculation: Remove SPECTRE_V2_IBRS in enum spectre_v2_mitigation + - x86/speculation: Support Enhanced IBRS on future CPUs + * Enable keyboard wakeup for S2Idle laptops (LP: #1798552) + - Input: i8042 - enable keyboard wakeups by default when s2idle is used + * Overlayfs in user namespace leaks directory content of inaccessible + directories (LP: #1793458) // CVE-2018-6559 + - SAUCE: overlayfs: ensure mounter privileges when reading directories + * Update ENA driver to version 2.0.1K (LP: #1798182) + - net: ena: remove ndo_poll_controller + - net: ena: fix auto casting to boolean + - net: ena: minor performance improvement + - net: ena: complete host info to match latest ENA spec + - net: ena: introduce Low Latency Queues data structures according to ENA spec + - net: ena: add functions for handling Low Latency Queues in ena_com + - net: ena: add functions for handling Low Latency Queues in ena_netdev + - net: ena: use CSUM_CHECKED device indication to report skb's checksum status + - net: ena: explicit casting and initialization, and clearer error handling + - net: ena: limit refill Rx threshold to 256 to avoid latency issues + - net: ena: change rx copybreak default to reduce kernel memory pressure + - net: ena: remove redundant parameter in ena_com_admin_init() + - net: ena: update driver version to 2.0.1 + - net: ena: fix indentations in ena_defs for better readability + - net: ena: Fix Kconfig dependency on X86 + - net: ena: enable Low Latency Queues + - net: ena: fix compilation error in xtensa architecture + * Cosmic update: 4.18.17 upstream stable release (LP: #1802119) + - xfrm: Validate address prefix lengths in the xfrm selector. + - xfrm6: call kfree_skb when skb is toobig + - xfrm: reset transport header back to network header after all input + transforms ahave been applied + - xfrm: reset crypto_done when iterating over multiple input xfrms + - mac80211: Always report TX status + - cfg80211: reg: Init wiphy_idx in regulatory_hint_core() + - mac80211: fix pending queue hang due to TX_DROP + - cfg80211: Address some corner cases in scan result channel updating + - mac80211: TDLS: fix skb queue/priority assignment + - mac80211: fix TX status reporting for ieee80211s + - ARM: 8799/1: mm: fix pci_ioremap_io() offset check + - xfrm: validate template mode + - drm/i2c: tda9950: fix timeout counter check + - drm/i2c: tda9950: set MAX_RETRIES for errors only + - netfilter: bridge: Don't sabotage nf_hook calls from an l3mdev + - netfilter: conntrack: get rid of double sizeof + - arm64: hugetlb: Fix handling of young ptes + - ARM: dts: BCM63xx: Fix incorrect interrupt specifiers + - net: macb: Clean 64b dma addresses if they are not detected + - soc: fsl: qbman: qman: avoid allocating from non existing gen_pool + - soc: fsl: qe: Fix copy/paste bug in ucc_get_tdm_sync_shift() + - nl80211: Fix possible Spectre-v1 for NL80211_TXRATE_HT + - mac80211_hwsim: fix locking when iterating radios during ns exit + - mac80211_hwsim: fix race in radio destruction from netlink notifier + - mac80211_hwsim: do not omit multicast announce of first added radio + - Bluetooth: SMP: fix crash in unpairing + - pxa168fb: prepare the clock + - qed: Avoid implicit enum conversion in qed_set_tunn_cls_info + - qed: Fix mask parameter in qed_vf_prep_tunn_req_tlv + - qed: Avoid implicit enum conversion in qed_roce_mode_to_flavor + - qed: Avoid constant logical operation warning in qed_vf_pf_acquire + - qed: Avoid implicit enum conversion in qed_iwarp_parse_rx_pkt + - nl80211: Fix possible Spectre-v1 for CQM RSSI thresholds + - scsi: qedi: Initialize the stats mutex lock + - rxrpc: Fix checks as to whether we should set up a new call + - rxrpc: Fix RTT gathering + - rxrpc: Fix transport sockopts to get IPv4 errors on an IPv6 socket + - rxrpc: Fix error distribution + - netfilter: nft_set_rbtree: add missing rb_erase() in GC routine + - netfilter: avoid erronous array bounds warning + - asix: Check for supported Wake-on-LAN modes + - ax88179_178a: Check for supported Wake-on-LAN modes + - lan78xx: Check for supported Wake-on-LAN modes + - sr9800: Check for supported Wake-on-LAN modes + - r8152: Check for supported Wake-on-LAN Modes + - smsc75xx: Check for Wake-on-LAN modes + - smsc95xx: Check for Wake-on-LAN modes + - cfg80211: fix use-after-free in reg_process_hint() + - KVM: nVMX: Do not expose MPX VMX controls when guest MPX disabled + - KVM: x86: Do not use kvm_x86_ops->mpx_supported() directly + - KVM: nVMX: Fix emulation of VM_ENTRY_LOAD_BNDCFGS + - perf/core: Fix perf_pmu_unregister() locking + - perf/x86/intel/uncore: Use boot_cpu_data.phys_proc_id instead of hardcorded + physical package ID 0 + - perf/ring_buffer: Prevent concurent ring buffer access + - perf/x86/intel/uncore: Fix PCI BDF address of M3UPI on SKX + - perf/x86/amd/uncore: Set ThreadMask and SliceMask for L3 Cache perf events + - thunderbolt: Do not handle ICM events after domain is stopped + - thunderbolt: Initialize after IOMMUs + - net: fec: fix rare tx timeout + - declance: Fix continuation with the adapter identification message + - RISCV: Fix end PFN for low memory + - Revert "serial: 8250_dw: Fix runtime PM handling" + - locking/ww_mutex: Fix runtime warning in the WW mutex selftest + - drm/amd/display: Signal hw_done() after waiting for flip_done() + - be2net: don't flip hw_features when VXLANs are added/deleted + - powerpc/numa: Skip onlining a offline node in kdump path + - net: cxgb3_main: fix a missing-check bug + - yam: fix a missing-check bug + - ocfs2: fix crash in ocfs2_duplicate_clusters_by_page() + - mm/gup_benchmark: fix unsigned comparison to zero in __gup_benchmark_ioctl + - mm/migrate.c: split only transparent huge pages when allocation fails + - x86/paravirt: Fix some warning messages + - clk: mvebu: armada-37xx-periph: Remove unused var num_parents + - libertas: call into generic suspend code before turning off power + - perf report: Don't try to map ip to invalid map + - tls: Fix improper revert in zerocopy_from_iter + - HID: i2c-hid: Remove RESEND_REPORT_DESCR quirk and its handling + - compiler.h: Allow arch-specific asm/compiler.h + - ARM: dts: imx53-qsb: disable 1.2GHz OPP + - perf python: Use -Wno-redundant-decls to build with PYTHON=python3 + - perf record: Use unmapped IP for inline callchain cursors + - rxrpc: Don't check RXRPC_CALL_TX_LAST after calling rxrpc_rotate_tx_window() + - rxrpc: Carry call state out of locked section in rxrpc_rotate_tx_window() + - rxrpc: Only take the rwind and mtu values from latest ACK + - rxrpc: Fix connection-level abort handling + - KVM: x86: support CONFIG_KVM_AMD=y with CONFIG_CRYPTO_DEV_CCP_DD=m + - net: ena: fix warning in rmmod caused by double iounmap + - net: ena: fix rare bug when failed restart/resume is followed by driver + removal + - net: ena: fix NULL dereference due to untimely napi initialization + - gpio: Assign gpio_irq_chip::parents to non-stack pointer + - IB/mlx5: Unmap DMA addr from HCA before IOMMU + - rds: RDS (tcp) hangs on sendto() to unresponding address + - selftests: rtnetlink.sh explicitly requires bash. + - selftests: udpgso_bench.sh explicitly requires bash + - vmlinux.lds.h: Fix incomplete .text.exit discards + - vmlinux.lds.h: Fix linker warnings about orphan .LPBX sections + - afs: Fix cell proc list + - fs/fat/fatent.c: add cond_resched() to fat_count_free_clusters() + - Revert "mm: slowly shrink slabs with a relatively small number of objects" + - Revert "netfilter: ipv6: nf_defrag: drop skb dst before queueing" + - perf tools: Disable parallelism for 'make clean' + - bridge: do not add port to router list when receives query with source + 0.0.0.0 + - ipv6: mcast: fix a use-after-free in inet6_mc_check + - ipv6/ndisc: Preserve IPv6 control buffer if protocol error handlers are + called + - ipv6: rate-limit probes for neighbourless routes + - llc: set SOCK_RCU_FREE in llc_sap_add_socket() + - net: fec: don't dump RX FIFO register when not available + - net/ipv6: Fix index counter for unicast addresses in in6_dump_addrs + - net/mlx5e: fix csum adjustments caused by RXFCS + - net: sched: gred: pass the right attribute to gred_change_table_def() + - net: socket: fix a missing-check bug + - net: stmmac: Fix stmmac_mdio_reset() when building stmmac as modules + - net: udp: fix handling of CHECKSUM_COMPLETE packets + - r8169: fix NAPI handling under high load + - rtnetlink: Disallow FDB configuration for non-Ethernet device + - sctp: fix race on sctp_id2asoc + - tipc: fix unsafe rcu locking when accessing publication list + - udp6: fix encap return code for resubmitting + - vhost: Fix Spectre V1 vulnerability + - virtio_net: avoid using netif_tx_disable() for serializing tx routine + - ethtool: fix a privilege escalation bug + - bonding: fix length of actor system + - ip6_tunnel: Fix encapsulation layout + - openvswitch: Fix push/pop ethernet validation + - net: ipmr: fix unresolved entry dumps + - net/mlx5: Take only bit 24-26 of wqe.pftype_wq for page fault type + - net: bcmgenet: Poll internal PHY for GENETv5 + - net: sched: Fix for duplicate class dump + - net/sched: cls_api: add missing validation of netlink attributes + - net/ipv6: Allow onlink routes to have a device mismatch if it is the default + route + - sctp: fix the data size calculation in sctp_data_size + - sctp: not free the new asoc when sctp_wait_for_connect returns err + - net/mlx5: Fix memory leak when setting fpga ipsec caps + - net/smc: fix smc_buf_unuse to use the lgr pointer + - mlxsw: spectrum_switchdev: Don't ignore deletions of learned MACs + - net: bpfilter: use get_pid_task instead of pid_task + - net: drop skb on failure in ip_check_defrag() + - net: fix pskb_trim_rcsum_slow() with odd trim offset + - mlxsw: core: Fix devlink unregister flow + - sparc64: Export __node_distance. + - sparc64: Make corrupted user stacks more debuggable. + - sparc64: Make proc_id signed. + - sparc64: Set %l4 properly on trap return after handling signals. + - sparc64: Wire up compat getpeername and getsockname. + - sparc: Fix single-pcr perf event counter management. + - sparc: Fix syscall fallback bugs in VDSO. + - sparc: Throttle perf events properly. + - net: bridge: remove ipv6 zero address check in mcast queries + - Linux 4.18.17 + * Cosmic update: 4.18.16 upstream stable release (LP: #1802100) + - soundwire: Fix duplicate stream state assignment + - soundwire: Fix incorrect exit after configuring stream + - soundwire: Fix acquiring bus lock twice during master release + - media: af9035: prevent buffer overflow on write + - spi: gpio: Fix copy-and-paste error + - batman-adv: Avoid probe ELP information leak + - batman-adv: Fix segfault when writing to throughput_override + - batman-adv: Fix segfault when writing to sysfs elp_interval + - batman-adv: Prevent duplicated gateway_node entry + - batman-adv: Prevent duplicated nc_node entry + - batman-adv: Prevent duplicated softif_vlan entry + - batman-adv: Prevent duplicated global TT entry + - batman-adv: Prevent duplicated tvlv handler + - batman-adv: fix backbone_gw refcount on queue_work() failure + - batman-adv: fix hardif_neigh refcount on queue_work() failure + - cxgb4: fix abort_req_rss6 struct + - clocksource/drivers/ti-32k: Add CLOCK_SOURCE_SUSPEND_NONSTOP flag for non- + am43 SoCs + - scsi: ibmvscsis: Fix a stringop-overflow warning + - scsi: ibmvscsis: Ensure partition name is properly NUL terminated + - intel_th: pci: Add Ice Lake PCH support + - Input: atakbd - fix Atari keymap + - Input: atakbd - fix Atari CapsLock behaviour + - selftests: pmtu: properly redirect stderr to /dev/null + - net: emac: fix fixed-link setup for the RTL8363SB switch + - ravb: do not write 1 to reserved bits + - net/smc: fix non-blocking connect problem + - net/smc: fix sizeof to int comparison + - qed: Fix populating the invalid stag value in multi function mode. + - qed: Do not add VLAN 0 tag to untagged frames in multi-function mode. + - PCI: dwc: Fix scheduling while atomic issues + - RDMA/uverbs: Fix validity check for modify QP + - scsi: lpfc: Synchronize access to remoteport via rport + - drm: mali-dp: Call drm_crtc_vblank_reset on device init + - scsi: ipr: System hung while dlpar adding primary ipr adapter back + - scsi: sd: don't crash the host on invalid commands + - bpf: sockmap only allow ESTABLISHED sock state + - bpf: sockmap, fix transition through disconnect without close + - bpf: test_maps, only support ESTABLISHED socks + - net/mlx4: Use cpumask_available for eq->affinity_mask + - clocksource/drivers/fttmr010: Fix set_next_event handler + - RDMA/bnxt_re: Fix system crash during RDMA resource initialization + - RISC-V: include linux/ftrace.h in asm-prototypes.h + - iommu/rockchip: Free irqs in shutdown handler + - pinctrl/amd: poll InterruptEnable bits in amd_gpio_irq_set_type + - powerpc/tm: Fix userspace r13 corruption + - powerpc/tm: Avoid possible userspace r1 corruption on reclaim + - powerpc/numa: Use associativity if VPHN hcall is successful + - iommu/amd: Return devid as alias for ACPI HID devices + - x86/boot: Fix kexec booting failure in the SEV bit detection code + - Revert "vfs: fix freeze protection in mnt_want_write_file() for overlayfs" + - mremap: properly flush TLB before releasing the page + - ARC: build: Get rid of toolchain check + - ARC: build: Don't set CROSS_COMPILE in arch's Makefile + - Linux 4.18.16 + * Cosmic update: 4.18.15 upstream stable release (LP: #1802082) + - bnxt_en: Fix TX timeout during netpoll. + - bnxt_en: free hwrm resources, if driver probe fails. + - bonding: avoid possible dead-lock + - ip6_tunnel: be careful when accessing the inner header + - ip_tunnel: be careful when accessing the inner header + - ipv4: fix use-after-free in ip_cmsg_recv_dstaddr() + - ipv6: take rcu lock in rawv6_send_hdrinc() + - net: dsa: bcm_sf2: Call setup during switch resume + - net: hns: fix for unmapping problem when SMMU is on + - net: ipv4: update fnhe_pmtu when first hop's MTU changes + - net/ipv6: Display all addresses in output of /proc/net/if_inet6 + - netlabel: check for IPV4MASK in addrinfo_get + - net: mvpp2: Extract the correct ethtype from the skb for tx csum offload + - net: mvpp2: fix a txq_done race condition + - net: sched: Add policy validation for tc attributes + - net: sched: cls_u32: fix hnode refcounting + - net: systemport: Fix wake-up interrupt race during resume + - net/usb: cancel pending work when unbinding smsc75xx + - qlcnic: fix Tx descriptor corruption on 82xx devices + - qmi_wwan: Added support for Gemalto's Cinterion ALASxx WWAN interface + - rtnl: limit IFLA_NUM_TX_QUEUES and IFLA_NUM_RX_QUEUES to 4096 + - sctp: update dst pmtu with the correct daddr + - team: Forbid enslaving team device to itself + - tipc: fix flow control accounting for implicit connect + - udp: Unbreak modules that rely on external __skb_recv_udp() availability + - net: qualcomm: rmnet: Skip processing loopback packets + - net: qualcomm: rmnet: Fix incorrect allocation flag in transmit + - net: qualcomm: rmnet: Fix incorrect allocation flag in receive path + - tun: remove unused parameters + - tun: initialize napi_mutex unconditionally + - tun: napi flags belong to tfile + - net: stmmac: Fixup the tail addr setting in xmit path + - net/packet: fix packet drop as of virtio gso + - net: dsa: bcm_sf2: Fix unbind ordering + - net/mlx5e: Set vlan masks for all offloaded TC rules + - net: aquantia: memory corruption on jumbo frames + - net/mlx5: E-Switch, Fix out of bound access when setting vport rate + - bonding: pass link-local packets to bonding master also. + - bonding: fix warning message + - net: stmmac: Rework coalesce timer and fix multi-queue races + - nfp: avoid soft lockups under control message storm + - bnxt_en: don't try to offload VLAN 'modify' action + - net-ethtool: ETHTOOL_GUFO did not and should not require CAP_NET_ADMIN + - net: phy: phylink: fix SFP interface autodetection + - sfp: fix oops with ethtool -m + - tcp/dccp: fix lockdep issue when SYN is backlogged + - inet: make sure to grab rcu_read_lock before using ireq->ireq_opt + - net: dsa: b53: Keep CPU port as tagged in all VLANs + - rtnetlink: Fail dump if target netnsid is invalid + - bnxt_en: Fix VNIC reservations on the PF. + - net: ipv4: don't let PMTU updates increase route MTU + - net/mlx5: Check for SQ and not RQ state when modifying hairpin SQ + - bnxt_en: Fix enables field in HWRM_QUEUE_COS2BW_CFG request + - bnxt_en: get the reduced max_irqs by the ones used by RDMA + - net/ipv6: Remove extra call to ip6_convert_metrics for multipath case + - net/ipv6: stop leaking percpu memory in fib6 info + - net: mscc: fix the frame extraction into the skb + - qed: Fix shmem structure inconsistency between driver and the mfw. + - r8169: fix network stalls due to missing bit TXCFG_AUTO_FIFO + - r8169: set RX_MULTI_EN bit in RxConfig for 8168F-family chips + - vxlan: fill ttl inherit info + - ASoC: dapm: Fix NULL pointer deference on CODEC to CODEC DAIs + - ASoC: max98373: Added speaker FS gain cotnrol register to volatile. + - ASoC: rt5514: Fix the issue of the delay volume applied again + - selftests: android: move config up a level + - selftests: kselftest: Remove outdated comment + - ASoC: max98373: Added 10ms sleep after amp software reset + - ASoC: wm8804: Add ACPI support + - ASoC: sigmadsp: safeload should not have lower byte limit + - ASoC: q6routing: initialize data correctly + - selftests: add headers_install to lib.mk + - selftests/efivarfs: add required kernel configs + - selftests: memory-hotplug: add required configs + - ASoC: rsnd: adg: care clock-frequency size + - ASoC: rsnd: don't fallback to PIO mode when -EPROBE_DEFER + - hwmon: (nct6775) Fix access to fan pulse registers + - Fix cg_read_strcmp() + - ASoC: AMD: Ensure reset bit is cleared before configuring + - drm/pl111: Make sure of_device_id tables are NULL terminated + - Bluetooth: SMP: Fix trying to use non-existent local OOB data + - Bluetooth: Use correct tfm to generate OOB data + - Bluetooth: hci_ldisc: Free rw_semaphore on close + - mfd: omap-usb-host: Fix dts probe of children + - KVM: PPC: Book3S HV: Don't use compound_order to determine host mapping size + - scsi: iscsi: target: Don't use stack buffer for scatterlist + - scsi: qla2xxx: Fix an endian bug in fcpcmd_is_corrupted() + - sound: enable interrupt after dma buffer initialization + - sound: don't call skl_init_chip() to reset intel skl soc + - bpf: btf: Fix end boundary calculation for type section + - bpf: use __GFP_COMP while allocating page + - hwmon: (nct6775) Fix virtual temperature sources for NCT6796D + - hwmon: (nct6775) Fix RPM output for fan7 on NCT6796D + - stmmac: fix valid numbers of unicast filter entries + - hwmon: (nct6775) Use different register to get fan RPM for fan7 + - net: ethernet: ti: add missing GENERIC_ALLOCATOR dependency + - net: macb: disable scatter-gather for macb on sama5d3 + - ARM: dts: at91: add new compatibility string for macb on sama5d3 + - PCI: hv: support reporting serial number as slot information + - clk: x86: add "ether_clk" alias for Bay Trail / Cherry Trail + - clk: x86: Stop marking clocks as CLK_IS_CRITICAL + - pinctrl: cannonlake: Fix gpio base for GPP-E + - x86/kvm/lapic: always disable MMIO interface in x2APIC mode + - drm/amdgpu: Fix SDMA HQD destroy error on gfx_v7 + - drm/amdkfd: Change the control stack MTYPE from UC to NC on GFX9 + - drm/amdkfd: Fix ATS capablity was not reported correctly on some APUs + - mm: slowly shrink slabs with a relatively small number of objects + - mm/vmstat.c: fix outdated vmstat_text + - afs: Fix afs_server struct leak + - afs: Fix clearance of reply + - MIPS: Fix CONFIG_CMDLINE handling + - MIPS: VDSO: Always map near top of user memory + - mach64: detect the dot clock divider correctly on sparc + - vsprintf: Fix off-by-one bug in bstr_printf() processing dereferenced + pointers + - percpu: stop leaking bitmap metadata blocks + - perf script python: Fix export-to-postgresql.py occasional failure + - perf script python: Fix export-to-sqlite.py sample columns + - s390/cio: Fix how vfio-ccw checks pinned pages + - dm cache: destroy migration_cache if cache target registration failed + - dm: fix report zone remapping to account for partition offset + - dm linear: eliminate linear_end_io call if CONFIG_DM_ZONED disabled + - dm linear: fix linear_end_io conditional definition + - cgroup: Fix dom_cgrp propagation when enabling threaded mode + - Input: xpad - add support for Xbox1 PDP Camo series gamepad + - drm/nouveau/drm/nouveau: Grab runtime PM ref in nv50_mstc_detect() + - mmc: block: avoid multiblock reads for the last sector in SPI mode + - pinctrl: mcp23s08: fix irq and irqchip setup order + - arm64: perf: Reject stand-alone CHAIN events for PMUv3 + - mm/mmap.c: don't clobber partially overlapping VMA with MAP_FIXED_NOREPLACE + - mm/thp: fix call to mmu_notifier in set_pmd_migration_entry() v2 + - filesystem-dax: Fix dax_layout_busy_page() livelock + - mm: Preserve _PAGE_DEVMAP across mprotect() calls + - i2c: i2c-scmi: fix for i2c_smbus_write_block_data + - KVM: PPC: Book3S HV: Avoid crash from THP collapse during radix page fault + - Linux 4.18.15 + * Cosmic update: 4.18.14 upstream stable release (LP: #1801986) + - perf/core: Add sanity check to deal with pinned event failure + - mm: migration: fix migration of huge PMD shared pages + - mm, thp: fix mlocking THP page with migration enabled + - mm/vmstat.c: skip NR_TLB_REMOTE_FLUSH* properly + - KVM: VMX: check for existence of secondary exec controls before accessing + - blk-mq: I/O and timer unplugs are inverted in blktrace + - pstore/ram: Fix failure-path memory leak in ramoops_init + - clocksource/drivers/timer-atmel-pit: Properly handle error cases + - fbdev/omapfb: fix omapfb_memory_read infoleak + - mmc: core: Fix debounce time to use microseconds + - mmc: slot-gpio: Fix debounce time to use miliseconds again + - mac80211: allocate TXQs for active monitor interfaces + - drm/amdgpu: Fix vce work queue was not cancelled when suspend + - drm: fix use-after-free read in drm_mode_create_lease_ioctl() + - x86/vdso: Fix asm constraints on vDSO syscall fallbacks + - selftests/x86: Add clock_gettime() tests to test_vdso + - x86/vdso: Only enable vDSO retpolines when enabled and supported + - x86/vdso: Fix vDSO syscall fallback asm constraint regression + - Revert "UBUNTU: SAUCE: PCI: Reprogram bridge prefetch registers on resume" + - PCI: Reprogram bridge prefetch registers on resume + - mac80211: fix setting IEEE80211_KEY_FLAG_RX_MGMT for AP mode keys + - PM / core: Clear the direct_complete flag on errors + - dm mpath: fix attached_handler_name leak and dangling hw_handler_name + pointer + - dm cache metadata: ignore hints array being too small during resize + - dm cache: fix resize crash if user doesn't reload cache table + - xhci: Add missing CAS workaround for Intel Sunrise Point xHCI + - usb: xhci-mtk: resume USB3 roothub first + - USB: serial: simple: add Motorola Tetra MTP6550 id + - USB: serial: option: improve Quectel EP06 detection + - USB: serial: option: add two-endpoints device-id flag + - usb: cdc_acm: Do not leak URB buffers + - tty: Drop tty->count on tty_reopen() failure + - of: unittest: Disable interrupt node tests for old world MAC systems + - powerpc: Avoid code patching freed init sections + - powerpc/lib: fix book3s/32 boot failure due to code patching + - ARC: clone syscall to setp r25 as thread pointer + - f2fs: fix invalid memory access + - tipc: call start and done ops directly in __tipc_nl_compat_dumpit() + - ucma: fix a use-after-free in ucma_resolve_ip() + - ubifs: Check for name being NULL while mounting + - rds: rds_ib_recv_alloc_cache() should call alloc_percpu_gfp() instead + - ath10k: fix scan crash due to incorrect length calculation + - Linux 4.18.14 + * Cosmic update: 4.18.13 upstream stable release (LP: #1801931) + - rseq/selftests: fix parametrized test with -fpie + - mac80211: Run TXQ teardown code before de-registering interfaces + - mac80211_hwsim: require at least one channel + - Btrfs: fix unexpected failure of nocow buffered writes after snapshotting + when low on space + - KVM: PPC: Book3S HV: Don't truncate HPTE index in xlate function + - cfg80211: remove division by size of sizeof(struct ieee80211_wmm_rule) + - btrfs: btrfs_shrink_device should call commit transaction at the end + - scsi: csiostor: add a check for NULL pointer after kmalloc() + - scsi: csiostor: fix incorrect port capabilities + - scsi: libata: Add missing newline at end of file + - scsi: aacraid: fix a signedness bug + - bpf, sockmap: fix potential use after free in bpf_tcp_close + - bpf, sockmap: fix psock refcount leak in bpf_tcp_recvmsg + - bpf: sockmap, decrement copied count correctly in redirect error case + - mac80211: correct use of IEEE80211_VHT_CAP_RXSTBC_X + - mac80211_hwsim: correct use of IEEE80211_VHT_CAP_RXSTBC_X + - cfg80211: make wmm_rule part of the reg_rule structure + - mac80211_hwsim: Fix possible Spectre-v1 for hwsim_world_regdom_custom + - nl80211: Fix nla_put_u8 to u16 for NL80211_WMMR_TXOP + - nl80211: Pass center frequency in kHz instead of MHz + - bpf: fix several offset tests in bpf_msg_pull_data + - gpio: adp5588: Fix sleep-in-atomic-context bug + - mac80211: mesh: fix HWMP sequence numbering to follow standard + - mac80211: avoid kernel panic when building AMSDU from non-linear SKB + - gpiolib: acpi: Switch to cansleep version of GPIO library call + - gpiolib-acpi: Register GpioInt ACPI event handlers from a late_initcall + - gpio: dwapb: Fix error handling in dwapb_gpio_probe() + - bpf: fix msg->data/data_end after sg shift repair in bpf_msg_pull_data + - bpf: fix shift upon scatterlist ring wrap-around in bpf_msg_pull_data + - bpf: fix sg shift repair start offset in bpf_msg_pull_data + - tipc: switch to rhashtable iterator + - sh_eth: Add R7S9210 support + - net: mvpp2: initialize port of_node pointer + - tc-testing: add test-cases for numeric and invalid control action + - cfg80211: nl80211_update_ft_ies() to validate NL80211_ATTR_IE + - mac80211: do not convert to A-MSDU if frag/subframe limited + - mac80211: always account for A-MSDU header changes + - tools/kvm_stat: fix python3 issues + - tools/kvm_stat: fix handling of invalid paths in debugfs provider + - tools/kvm_stat: fix updates for dead guests + - gpio: Fix crash due to registration race + - ARC: atomics: unbork atomic_fetch_##op() + - Revert "blk-throttle: fix race between blkcg_bio_issue_check() and + cgroup_rmdir()" + - md/raid5-cache: disable reshape completely + - RAID10 BUG_ON in raise_barrier when force is true and conf->barrier is 0 + - selftests: pmtu: maximum MTU for vti4 is 2^16-1-20 + - selftests: pmtu: detect correct binary to ping ipv6 addresses + - ibmvnic: Include missing return code checks in reset function + - bpf: Fix bpf_msg_pull_data() + - bpf: avoid misuse of psock when TCP_ULP_BPF collides with another ULP + - i2c: uniphier: issue STOP only for last message or I2C_M_STOP + - i2c: uniphier-f: issue STOP only for last message or I2C_M_STOP + - net: cadence: Fix a sleep-in-atomic-context bug in macb_halt_tx() + - fs/cifs: don't translate SFM_SLASH (U+F026) to backslash + - mac80211: fix an off-by-one issue in A-MSDU max_subframe computation + - cfg80211: fix a type issue in ieee80211_chandef_to_operating_class() + - mac80211: fix WMM TXOP calculation + - mac80211: fix a race between restart and CSA flows + - mac80211: Fix station bandwidth setting after channel switch + - mac80211: don't Tx a deauth frame if the AP forbade Tx + - mac80211: shorten the IBSS debug messages + - fsnotify: fix ignore mask logic in fsnotify() + - net/ibm/emac: wrong emac_calc_base call was used by typo + - nds32: fix logic for module + - nds32: add NULL entry to the end of_device_id array + - nds32: Fix empty call trace + - nds32: Fix get_user/put_user macro expand pointer problem + - nds32: fix build error because of wrong semicolon + - tools/vm/slabinfo.c: fix sign-compare warning + - tools/vm/page-types.c: fix "defined but not used" warning + - nds32: linker script: GCOV kernel may refers data in __exit + - ceph: avoid a use-after-free in ceph_destroy_options() + - firmware: arm_scmi: fix divide by zero when sustained_perf_level is zero + - afs: Fix cell specification to permit an empty address list + - mm: madvise(MADV_DODUMP): allow hugetlbfs pages + - bpf: 32-bit RSH verification must truncate input before the ALU op + - netfilter: xt_cluster: add dependency on conntrack module + - netfilter: xt_checksum: ignore gso skbs + - HID: intel-ish-hid: Enable Sunrise Point-H ish driver + - HID: add support for Apple Magic Keyboards + - usb: gadget: fotg210-udc: Fix memory leak of fotg210->ep[i] + - HID: hid-saitek: Add device ID for RAT 7 Contagion + - scsi: iscsi: target: Set conn->sess to NULL when iscsi_login_set_conn_values + fails + - scsi: iscsi: target: Fix conn_ops double free + - scsi: qedi: Add the CRC size within iSCSI NVM image + - perf annotate: Properly interpret indirect call + - perf evsel: Fix potential null pointer dereference in perf_evsel__new_idx() + - perf util: Fix bad memory access in trace info. + - perf probe powerpc: Ignore SyS symbols irrespective of endianness + - perf annotate: Fix parsing aarch64 branch instructions after objdump update + - netfilter: kconfig: nat related expression depend on nftables core + - netfilter: nf_tables: release chain in flushing set + - Revert "iio: temperature: maxim_thermocouple: add MAX31856 part" + - iio: imu: st_lsm6dsx: take into account ts samples in wm configuration + - RDMA/ucma: check fd type in ucma_migrate_id() + - riscv: Do not overwrite initrd_start and initrd_end + - HID: sensor-hub: Restore fixup for Lenovo ThinkPad Helix 2 sensor hub report + - usb: host: xhci-plat: Iterate over parent nodes for finding quirks + - USB: yurex: Check for truncation in yurex_read() + - nvmet-rdma: fix possible bogus dereference under heavy load + - bnxt_re: Fix couple of memory leaks that could lead to IOMMU call traces + - net/mlx5: Consider PCI domain in search for next dev + - dm raid: fix reshape race on small devices + - drm/nouveau: fix oops in client init failure path + - drm/nouveau/mmu: don't attempt to dereference vmm without valid instance + pointer + - drm/nouveau/TBDdevinit: don't fail when PMU/PRE_OS is missing from VBIOS + - drm/nouveau/disp: fix DP disable race + - drm/nouveau/disp/gm200-: enforce identity-mapped SOR assignment for LVDS/eDP + panels + - dm raid: fix stripe adding reshape deadlock + - dm raid: fix rebuild of specific devices by updating superblock + - dm raid: fix RAID leg rebuild errors + - r8169: set TxConfig register after TX / RX is enabled, just like RxConfig + - fs/cifs: suppress a string overflow warning + - perf/x86/intel: Add support/quirk for the MISPREDICT bit on Knights Landing + CPUs + - sched/topology: Set correct NUMA topology type + - dm thin metadata: try to avoid ever aborting transactions + - netfilter: nfnetlink_queue: Solve the NFQUEUE/conntrack clash for NF_REPEAT + - netfilter: xt_hashlimit: use s->file instead of s->private + - arch/hexagon: fix kernel/dma.c build warning + - hexagon: modify ffs() and fls() to return int + - drm/amdgpu: Fix SDMA hang in prt mode v2 + - arm64: jump_label.h: use asm_volatile_goto macro instead of "asm goto" + - drm/amdgpu: fix error handling in amdgpu_cs_user_fence_chunk + - r8169: Clear RTL_FLAG_TASK_*_PENDING when clearing RTL_FLAG_TASK_ENABLED + - s390/qeth: don't dump past end of unknown HW header + - cifs: read overflow in is_valid_oplock_break() + - asm-generic: io: Fix ioport_map() for !CONFIG_GENERIC_IOMAP && + CONFIG_INDIRECT_PIO + - xen/manage: don't complain about an empty value in control/sysrq node + - xen: avoid crash in disable_hotplug_cpu + - xen: fix GCC warning and remove duplicate EVTCHN_ROW/EVTCHN_COL usage + - x86/APM: Fix build warning when PROC_FS is not enabled + - new primitive: discard_new_inode() + - vfs: don't evict uninitialized inode + - ovl: set I_CREATING on inode being created + - ovl: fix access beyond unterminated strings + - ovl: fix memory leak on unlink of indexed file + - ovl: fix format of setxattr debug + - sysfs: Do not return POSIX ACL xattrs via listxattr + - b43: fix DMA error related regression with proprietary firmware + - firmware: Fix security issue with request_firmware_into_buf() + - firmware: Always initialize the fw_priv list object + - cpufreq: qcom-kryo: Fix section annotations + - smb2: fix missing files in root share directory listing + - iommu/amd: Clear memory encryption mask from physical address + - crypto: qat - Fix KASAN stack-out-of-bounds bug in adf_probe() + - crypto: chelsio - Fix memory corruption in DMA Mapped buffers. + - crypto: mxs-dcp - Fix wait logic on chan threads + - crypto: caam/jr - fix ablkcipher_edesc pointer arithmetic + - gpiolib: Free the last requested descriptor + - Drivers: hv: vmbus: Use get/put_cpu() in vmbus_connect() + - tools: hv: fcopy: set 'error' in case an unknown operation was requested + - proc: restrict kernel stack dumps to root + - ocfs2: fix locking for res->tracking and dlm->tracking_list + - HID: i2c-hid: disable runtime PM operations on hantick touchpad + - ixgbe: check return value of napi_complete_done() + - dm thin metadata: fix __udivdi3 undefined on 32-bit + - Revert "drm/amd/pp: Send khz clock values to DC for smu7/8" + - Linux 4.18.13 + * Volume control not working Dell XPS 27 (7760) (LP: #1775068) // Cosmic + update: 4.18.13 upstream stable release (LP: #1801931) + - ALSA: hda/realtek - Cannot adjust speaker's volume on Dell XPS 27 7760 + * [Bionic][Cosmic] ipmi: Fix timer race with module unload (LP: #1799281) + - ipmi: Fix timer race with module unload + * [Bionic][Cosmic] Fix to ipmi to support vendor specific messages greater + than 255 bytes (LP: #1799794) + - ipmi:ssif: Add support for multi-part transmit messages > 2 parts + * 18.10 kernel does not appear to validate kernel module signatures correctly + (LP: #1798863) // CVE-2018-18653 + - SAUCE: (efi-lockdown) module: remove support for deferring module signature + verification to IMA + * 18.10 kernel does not appear to validate kernel module signatures correctly + (LP: #1798863) + - SAUCE: (efi-lockdown) module: trust keys from secondary keyring for module + signing + * [Ubuntu] net/af_iucv: fix skb leaks for HiperTransport (LP: #1800639) + - net/af_iucv: drop inbound packets with invalid flags + - net/af_iucv: fix skb handling on HiperTransport xmit error + * Power consumption during s2idle is higher than long idle(sk hynix) + (LP: #1801875) + - SAUCE: pci: prevent sk hynix nvme from entering D3 + - SAUCE: nvme: add quirk to not call disable function when suspending + * NULL pointer dereference at 0000000000000020 when access + dst_orig->ops->family in function xfrm_lookup_with_ifid() (LP: #1801878) + - xfrm: Fix NULL pointer dereference when skb_dst_force clears the dst_entry. + * hns3: map tx ring to tc (LP: #1802023) + - net: hns3: Set tx ring' tc info when netdev is up + * [Ubuntu] qeth: Fix potential array overrun in cmd/rc lookup (LP: #1800641) + - s390: qeth_core_mpc: Use ARRAY_SIZE instead of reimplementing its function + - s390: qeth: Fix potential array overrun in cmd/rc lookup + * Mellanox CX5 stops pinging with rx_wqe_err (mlx5_core) (LP: #1799393) + - net/mlx5: WQ, fixes for fragmented WQ buffers API + * Vulkan applications cause permanent memory leak with Intel GPU + (LP: #1798165) + - drm/syncobj: Don't leak fences when WAIT_FOR_SUBMIT is set + * Packaging resync (LP: #1786013) + - [Package] add support for specifying the primary makefile + + -- Khalid Elmously Thu, 15 Nov 2018 21:20:34 -0500 + +linux-azure (4.18.0-1004.4) cosmic; urgency=medium + + * linux-azure: 4.18.0-1004.4 -proposed tracker (LP: #1799451) + + * Shared folders cannot be mounted in ubuntu/cosmic64 due to missing vbox + modules (LP: #1796647) + - [Config] azure: CONFIG_VBOXGUEST=n + + * netfilter: nf_conntrack: resolve clash for matching conntracks + (LP: #1795493) + - SAUCE: netfilter: nf_conntrack: resolve clash for matching conntracks + - SAUCE: netfilter: nf_nat: return the same reply tuple for matching CTs + + * [Hyper-V] Enable NVME devices (LP: #1793386) + - [Config] linux-azure: CONFIG_BLK_DEV_NVME=y + + * linux-azure: fix getabis information (LP: #1793462) + - [Packaging] linux-azure: fix getabis + + [ Ubuntu: 4.18.0-11.12 ] + + * linux: 4.18.0-11.12 -proposed tracker (LP: #1799445) + * arm64: snapdragon: WARNING: CPU: 0 PID: 1 arch/arm64/kernel/setup.c:271 + reserve_memblock_reserved_regions (LP: #1797139) + - SAUCE: arm64: Fix /proc/iomem for reserved but not memory regions + * arm64: snapdragon: WARNING: CPU: 0 PID: 1 at drivers/irqchip/irq-gic.c:1016 + gic_irq_domain_translate (LP: #1797143) + - SAUCE: arm64: dts: msm8916: camms: fix gic_irq_domain_translate warnings + * The front MIC can't work on the Lenovo M715 (LP: #1797292) + - ALSA: hda/realtek - Fix the problem of the front MIC on the Lenovo M715 + * Provide mode where all vCPUs on a core must be the same VM (LP: #1792957) + - KVM: PPC: Book3S HV: Provide mode where all vCPUs on a core must be the same + VM + * fscache: bad refcounting in fscache_op_complete leads to OOPS (LP: #1797314) + - SAUCE: fscache: Fix race in decrementing refcount of op->npages + * hns3: autoneg settings get lost on down/up (LP: #1797654) + - net: hns3: Fix for information of phydev lost problem when down/up + * not able to unwind the stack from within __kernel_clock_gettime in the Linux + vDSO (LP: #1797963) + - powerpc/vdso: Correct call frame information + * Signal 7 error when running GPFS tracing in cluster (LP: #1792195) + - powerpc/mm/books3s: Add new pte bit to mark pte temporarily invalid. + - powerpc/mm/radix: Only need the Nest MMU workaround for R -> RW transition + * Support Edge Gateway's WIFI LED (LP: #1798330) + - SAUCE: mwifiex: Switch WiFi LED state according to the device status + * Support Edge Gateway's Bluetooth LED (LP: #1798332) + - SAUCE: Bluetooth: Support for LED on Edge Gateways + * kvm doesn't work on 36 physical bits systems (LP: #1798427) + - KVM: x86: fix L1TF's MMIO GFN calculation + * CVE-2018-15471 + - xen-netback: fix input validation in xenvif_set_hash_mapping() + * regression in 'ip --family bridge neigh' since linux v4.12 (LP: #1796748) + - rtnetlink: fix rtnl_fdb_dump() for ndmsg header + + [ Ubuntu: 4.18.0-10.11 ] + + * linux: 4.18.0-10.11 -proposed tracker (LP: #1797379) + * the machine of lenovo M715 with the AMD GPU (Radeon Vega 8 Mobile, rev ca, + 1002:15dd) often hangs randomly (LP: #1796789) + - drm/amd: Add missing fields in atom_integrated_system_info_v1_11 + * Miscellaneous Ubuntu changes + - [Config] CONFIG_VBOXGUEST=n + - ubuntu: vbox -- update to 5.2.18-dfsg-2 + - ubuntu: enable vbox build + + -- Stefan Bader Wed, 24 Oct 2018 14:21:28 +0200 + +linux-azure (4.18.0-1003.3) cosmic; urgency=medium + + * linux-azure: 4.18.0-1003.3 -proposed tracker (LP: #1796350) + + * iptables --list --numeric fails on -virtual kernel / -virtual missing + bpfilter (LP: #1795036) + - [Config] add bpfilter.ko to generic inclusion list + + [ Ubuntu: 4.18.0-9.10 ] + + * linux: 4.18.0-9.10 -proposed tracker (LP: #1796346) + * Cosmic update: v4.18.12 upstream stable release (LP: #1796139) + - crypto: skcipher - Fix -Wstringop-truncation warnings + - iio: adc: ina2xx: avoid kthread_stop() with stale task_struct + - tsl2550: fix lux1_input error in low light + - misc: ibmvmc: Use GFP_ATOMIC under spin lock + - vmci: type promotion bug in qp_host_get_user_memory() + - siox: don't create a thread without starting it + - x86/numa_emulation: Fix emulated-to-physical node mapping + - staging: rts5208: fix missing error check on call to rtsx_write_register + - power: supply: axp288_charger: Fix initial constant_charge_current value + - misc: sram: enable clock before registering regions + - serial: sh-sci: Stop RX FIFO timer during port shutdown + - uwb: hwa-rc: fix memory leak at probe + - power: vexpress: fix corruption in notifier registration + - iommu/amd: make sure TLB to be flushed before IOVA freed + - Bluetooth: Add a new Realtek 8723DE ID 0bda:b009 + - USB: serial: kobil_sct: fix modem-status error handling + - 6lowpan: iphc: reset mac_header after decompress to fix panic + - iommu/msm: Don't call iommu_device_{,un}link from atomic context + - s390/mm: correct allocate_pgste proc_handler callback + - power: remove possible deadlock when unregistering power_supply + - drm/amd/display/dc/dce: Fix multiple potential integer overflows + - drm/amd/display: fix use of uninitialized memory + - md-cluster: clear another node's suspend_area after the copy is finished + - cxgb4: Fix the condition to check if the card is T5 + - RDMA/bnxt_re: Fix a couple off by one bugs + - RDMA/i40w: Hold read semaphore while looking after VMA + - RDMA/bnxt_re: Fix a bunch of off by one bugs in qplib_fp.c + - IB/core: type promotion bug in rdma_rw_init_one_mr() + - media: exynos4-is: Prevent NULL pointer dereference in __isp_video_try_fmt() + - IB/mlx4: Test port number before querying type. + - powerpc/kdump: Handle crashkernel memory reservation failure + - media: fsl-viu: fix error handling in viu_of_probe() + - vhost_net: Avoid tx vring kicks during busyloop + - media: staging/imx: fill vb2_v4l2_buffer field entry + - IB/mlx5: Fix GRE flow specification + - include/rdma/opa_addr.h: Fix an endianness issue + - x86/tsc: Add missing header to tsc_msr.c + - ARM: hwmod: RTC: Don't assume lock/unlock will be called with irq enabled + - x86/entry/64: Add two more instruction suffixes + - ARM: dts: ls1021a: Add missing cooling device properties for CPUs + - scsi: target/iscsi: Make iscsit_ta_authentication() respect the output + buffer size + - thermal: i.MX: Allow thermal probe to fail gracefully in case of bad + calibration. + - scsi: klist: Make it safe to use klists in atomic context + - scsi: ibmvscsi: Improve strings handling + - scsi: target: Avoid that EXTENDED COPY commands trigger lock inversion + - usb: wusbcore: security: cast sizeof to int for comparison + - ath10k: sdio: use same endpoint id for all packets in a bundle + - ath10k: sdio: set skb len for all rx packets + - powerpc/powernv/ioda2: Reduce upper limit for DMA window size + - platform/x86: asus-wireless: Fix uninitialized symbol usage + - ACPI / button: increment wakeup count only when notified + - s390/sysinfo: add missing #ifdef CONFIG_PROC_FS + - alarmtimer: Prevent overflow for relative nanosleep + - s390/dasd: correct numa_node in dasd_alloc_queue + - s390/scm_blk: correct numa_node in scm_blk_dev_setup + - s390/extmem: fix gcc 8 stringop-overflow warning + - mtd: rawnand: atmel: add module param to avoid using dma + - iio: accel: adxl345: convert address field usage in iio_chan_spec + - posix-timers: Make forward callback return s64 + - posix-timers: Sanitize overrun handling + - ALSA: snd-aoa: add of_node_put() in error path + - selftests: forwarding: Tweak tc filters for mirror-to-gretap tests + - ath10k: use locked skb_dequeue for rx completions + - media: s3c-camif: ignore -ENOIOCTLCMD from v4l2_subdev_call for s_power + - media: soc_camera: ov772x: correct setting of banding filter + - media: omap3isp: zero-initialize the isp cam_xclk{a,b} initial data + - media: ov772x: add checks for register read errors + - staging: android: ashmem: Fix mmap size validation + - media: ov772x: allow i2c controllers without I2C_FUNC_PROTOCOL_MANGLING + - staging: mt7621-eth: Fix memory leak in mtk_add_mac() error path + - drivers/tty: add error handling for pcmcia_loop_config + - arm64: dts: renesas: salvator-common: Fix adv7482 decimal unit addresses + - serial: pxa: Fix an error handling path in 'serial_pxa_probe()' + - staging: mt7621-dts: Fix remaining pcie warnings + - media: tm6000: add error handling for dvb_register_adapter + - ASoC: qdsp6: qdafe: fix some off by one bugs + - net: phy: xgmiitorgmii: Check read_status results + - ath10k: protect ath10k_htt_rx_ring_free with rx_ring.lock + - drm/sun4i: Enable DW HDMI PHY clock + - net: phy: xgmiitorgmii: Check phy_driver ready before accessing + - drm/sun4i: Fix releasing node when enumerating enpoints + - ath10k: transmit queued frames after processing rx packets + - mt76x2: fix mrr idx/count estimation in mt76x2_mac_fill_tx_status() + - rndis_wlan: potential buffer overflow in rndis_wlan_auth_indication() + - brcmsmac: fix wrap around in conversion from constant to s16 + - bitfield: fix *_encode_bits() + - wlcore: Add missing PM call for wlcore_cmd_wait_for_event_or_timeout() + - drm/omap: gem: Fix mm_list locking + - ARM: mvebu: declare asm symbols as character arrays in pmsu.c + - RDMA/uverbs: Don't overwrite NULL pointer with ZERO_SIZE_PTR + - Documentation/process: fix reST table border error + - perf/hw_breakpoint: Split attribute parse and commit + - arm: dts: mediatek: Add missing cooling device properties for CPUs + - HID: hid-ntrig: add error handling for sysfs_create_group + - HID: i2c-hid: Use devm to allocate i2c_hid struct + - MIPS: boot: fix build rule of vmlinux.its.S + - arm64: dts: renesas: Fix VSPD registers range + - drm/v3d: Take a lock across GPU scheduler job creation and queuing. + - perf/x86/intel/lbr: Fix incomplete LBR call stack + - scsi: bnx2i: add error handling for ioremap_nocache + - iomap: complete partial direct I/O writes synchronously + - spi: orion: fix CS GPIO handling again + - scsi: megaraid_sas: Update controller info during resume + - ASoC: Intel: bytcr_rt5640: Fix Acer Iconia 8 over-current detect threshold + - ASoC: rt1305: Use ULL suffixes for 64-bit constants + - ASoC: rsnd: SSI parent cares SWSP bit + - EDAC, i7core: Fix memleaks and use-after-free on probe and remove + - ASoC: dapm: Fix potential DAI widget pointer deref when linking DAIs + - module: exclude SHN_UNDEF symbols from kallsyms api + - gpio: Fix wrong rounding in gpio-menz127 + - nfsd: fix corrupted reply to badly ordered compound + - EDAC: Fix memleak in module init error path + - EDAC, altera: Fix an error handling path in altr_s10_sdram_probe() + - staging: pi433: fix race condition in pi433_ioctl + - ath10k: fix incorrect size of dma_free_coherent in + ath10k_ce_alloc_src_ring_64 + - ath10k: snoc: use correct bus-specific pointer in RX retry + - fs/lock: skip lock owner pid translation in case we are in init_pid_ns + - ath10k: fix memory leak of tpc_stats + - Input: xen-kbdfront - fix multi-touch XenStore node's locations + - iio: 104-quad-8: Fix off-by-one error in register selection + - drm/vc4: Add missing formats to vc4_format_mod_supported(). + - ARM: dts: dra7: fix DCAN node addresses + - drm/vc4: plane: Expand the lower bits by repeating the higher bits + - perf tests: Fix indexing when invoking subtests + - gpio: tegra: Fix tegra_gpio_irq_set_type() + - block: fix deadline elevator drain for zoned block devices + - x86/mm: Expand static page table for fixmap space + - tty: serial: lpuart: avoid leaking struct tty_struct + - serial: imx: restore handshaking irq for imx1 + - serial: mvebu-uart: Fix reporting of effective CSIZE to userspace + - serial: cpm_uart: return immediately from console poll + - intel_th: Fix device removal logic + - intel_th: Fix resource handling for ACPI glue layer + - spi: tegra20-slink: explicitly enable/disable clock + - spi: sh-msiof: Fix invalid SPI use during system suspend + - spi: sh-msiof: Fix handling of write value for SISTR register + - spi: rspi: Fix invalid SPI use during system suspend + - spi: rspi: Fix interrupted DMA transfers + - regulator: fix crash caused by null driver data + - regulator: Fix 'do-nothing' value for regulators without suspend state + - USB: fix error handling in usb_driver_claim_interface() + - USB: handle NULL config in usb_find_alt_setting() + - usb: roles: Take care of driver module reference counting + - usb: musb: dsps: do not disable CPPI41 irq in driver teardown + - USB: usbdevfs: sanitize flags more + - USB: usbdevfs: restore warning for nonsensical flags + - Revert "usb: cdc-wdm: Fix a sleep-in-atomic-context bug in + service_outstanding_interrupt()" + - USB: remove LPM management from usb_driver_claim_interface() + - uaccess: Fix is_source param for check_copy_size() in copy_to_iter_mcsafe() + - ext2, dax: set ext2_dax_aops for dax files + - filesystem-dax: Fix use of zero page + - IB/srp: Avoid that sg_reset -d ${srp_device} triggers an infinite loop + - IB/hfi1: Fix SL array bounds check + - IB/hfi1: Invalid user input can result in crash + - IB/hfi1: Fix context recovery when PBC has an UnsupportedVL + - IB/hfi1: Fix destroy_qp hang after a link down + - ACPI / hotplug / PCI: Don't scan for non-hotplug bridges if slot is not + bridge + - RDMA/uverbs: Atomically flush and mark closed the comp event queue + - arm64: KVM: Tighten guest core register access from userspace + - ARM: OMAP2+: Fix null hwmod for ti-sysc debug + - ARM: OMAP2+: Fix module address for modules using mpu_rt_idx + - bus: ti-sysc: Fix module register ioremap for larger offsets + - qed: Wait for ready indication before rereading the shmem + - qed: Wait for MCP halt and resume commands to take place + - qed: Prevent a possible deadlock during driver load and unload + - qed: Avoid sending mailbox commands when MFW is not responsive + - thermal: of-thermal: disable passive polling when thermal zone is disabled + - isofs: reject hardware sector size > 2048 bytes + - mmc: atmel-mci: fix bad logic of sg_copy_{from,to}_buffer conversion + - mmc: android-goldfish: fix bad logic of sg_copy_{from,to}_buffer conversion + - bus: ti-sysc: Fix no_console_suspend handling + - ARM: dts: omap4-droid4: fix vibrations on Droid 4 + - bpf, sockmap: fix sock_hash_alloc and reject zero-sized keys + - bpf, sockmap: fix sock hash count in alloc_sock_hash_elem + - tls: possible hang when do_tcp_sendpages hits sndbuf is full case + - bpf: sockmap: write_space events need to be passed to TCP handler + - drm/amdgpu: fix VM clearing for the root PD + - drm/amdgpu: fix preamble handling + - amdgpu: fix multi-process hang issue + - net/ncsi: Fixup .dumpit message flags and ID check in Netlink handler + - tcp_bbr: add bbr_check_probe_rtt_done() helper + - tcp_bbr: in restart from idle, see if we should exit PROBE_RTT + - net: hns: fix length and page_offset overflow when CONFIG_ARM64_64K_PAGES + - net: hns: fix skb->truesize underestimation + - net: hns3: fix page_offset overflow when CONFIG_ARM64_64K_PAGES + - ice: Fix multiple static analyser warnings + - ice: Report stats for allocated queues via ethtool stats + - ice: Clean control queues only when they are initialized + - ice: Fix bugs in control queue processing + - ice: Use order_base_2 to calculate higher power of 2 + - ice: Set VLAN flags correctly + - tools: bpftool: return from do_event_pipe() on bad arguments + - ice: Fix a few null pointer dereference issues + - ice: Fix potential return of uninitialized value + - e1000: check on netif_running() before calling e1000_up() + - e1000: ensure to free old tx/rx rings in set_ringparam() + - ixgbe: fix driver behaviour after issuing VFLR + - i40e: Fix for Tx timeouts when interface is brought up if DCB is enabled + - i40e: fix condition of WARN_ONCE for stat strings + - crypto: chtls - fix null dereference chtls_free_uld() + - crypto: cavium/nitrox - fix for command corruption in queue full case with + backlog submissions. + - hwmon: (ina2xx) fix sysfs shunt resistor read access + - hwmon: (adt7475) Make adt7475_read_word() return errors + - Revert "ARM: dts: imx7d: Invert legacy PCI irq mapping" + - drm/amdgpu: Enable/disable gfx PG feature in rlc safe mode + - drm/amdgpu: Update power state at the end of smu hw_init. + - ata: ftide010: Add a quirk for SQ201 + - nvme-fcloop: Fix dropped LS's to removed target port + - ARM: dts: omap4-droid4: Fix emmc errors seen on some devices + - drm/amdgpu: Need to set moved to true when evict bo + - arm/arm64: smccc-1.1: Make return values unsigned long + - arm/arm64: smccc-1.1: Handle function result as parameters + - i2c: i801: Allow ACPI AML access I/O ports not reserved for SMBus + - clk: x86: Set default parent to 48Mhz + - x86/pti: Fix section mismatch warning/error + - KVM: PPC: Book3S HV: Fix guest r11 corruption with POWER9 TM workarounds + - powerpc: fix csum_ipv6_magic() on little endian platforms + - powerpc/pkeys: Fix reading of ibm, processor-storage-keys property + - powerpc/pseries: Fix unitialized timer reset on migration + - arm64: KVM: Sanitize PSTATE.M when being set from userspace + - media: v4l: event: Prevent freeing event subscriptions while accessed + - Linux 4.18.12 + * Fix usbcore.quirks when used at boot (LP: #1795784) + - usb: core: safely deal with the dynamic quirk lists + * Dell new AIO requires a new uart backlight driver (LP: #1727235) + - SAUCE: platform/x86: dell-uart-backlight: new backlight driver for DELL AIO + - updateconfigs for Dell UART backlight driver + * Please make CONFIG_PWM_LPSS_PCI and CONFIG_PWM_LPSS_PLATFORM built in to + make brightness adjustment working on various BayTrail/CherryTrail-based + devices (LP: #1783964) + - [Config]: Make PWM_LPSS_* built-in + * CVE-2018-5391 + - SAUCE: Revert "net: increase fragment memory usage limits" + * check and fix zkey required kernel modules locations in debs, udebs, and + initramfs (LP: #1794346) + - [Config] add s390 crypto modules to crypt-modules udeb + * iptables --list --numeric fails on -virtual kernel / -virtual missing + bpfilter (LP: #1795036) + - [Config] add bpfilter.ko to generic inclusion list + * fails to build on armhf because of module rename (LP: #1795665) + - [Config] omapfb was renamed to omap2fb + * qeth: use vzalloc for QUERY OAT buffer (LP: #1793086) + - s390/qeth: use vzalloc for QUERY OAT buffer + * Cosmic update to 4.18.11 stable release (LP: #1795486) + - gso_segment: Reset skb->mac_len after modifying network header + - ipv6: fix possible use-after-free in ip6_xmit() + - net/appletalk: fix minor pointer leak to userspace in SIOCFINDIPDDPRT + - net: hp100: fix always-true check for link up state + - pppoe: fix reception of frames with no mac header + - qmi_wwan: set DTR for modems in forced USB2 mode + - udp4: fix IP_CMSG_CHECKSUM for connected sockets + - tls: don't copy the key out of tls12_crypto_info_aes_gcm_128 + - tls: zero the crypto information from tls_context before freeing + - tls: clear key material from kernel memory when do_tls_setsockopt_conf fails + - neighbour: confirm neigh entries when ARP packet is received + - udp6: add missing checks on edumux packet processing + - net/sched: act_sample: fix NULL dereference in the data path + - hv_netvsc: fix schedule in RCU context + - net: dsa: mv88e6xxx: Fix ATU Miss Violation + - socket: fix struct ifreq size in compat ioctl + - tls: fix currently broken MSG_PEEK behavior + - ipv6: use rt6_info members when dst is set in rt6_fill_node + - net/ipv6: do not copy dst flags on rt init + - net: mvpp2: let phylink manage the carrier state + - net: rtnl_configure_link: fix dev flags changes arg to __dev_notify_flags + - NFC: Fix possible memory corruption when handling SHDLC I-Frame commands + - NFC: Fix the number of pipes + - ASoC: wm9712: fix replace codec to component + - ASoC: cs4265: fix MMTLR Data switch control + - ASoC: tas6424: Save last fault register even when clear + - ASoC: rsnd: fixup not to call clk_get/set under non-atomic + - ASoC: uapi: fix sound/skl-tplg-interface.h userspace compilation errors + - ALSA: bebob: fix memory leak for M-Audio FW1814 and ProjectMix I/O at error + path + - ALSA: bebob: use address returned by kmalloc() instead of kernel stack for + streaming DMA mapping + - ALSA: emu10k1: fix possible info leak to userspace on + SNDRV_EMU10K1_IOCTL_INFO + - ALSA: fireface: fix memory leak in ff400_switch_fetching_mode() + - ALSA: firewire-digi00x: fix memory leak of private data + - ALSA: firewire-tascam: fix memory leak of private data + - ALSA: fireworks: fix memory leak of response buffer at error path + - ALSA: oxfw: fix memory leak for model-dependent data at error path + - ALSA: oxfw: fix memory leak of discovered stream formats at error path + - ALSA: oxfw: fix memory leak of private data + - mtd: devices: m25p80: Make sure the buffer passed in op is DMA-able + - mtd: rawnand: denali: fix a race condition when DMA is kicked + - platform/x86: dell-smbios-wmi: Correct a memory leak + - platform/x86: alienware-wmi: Correct a memory leak + - xen/netfront: don't bug in case of too many frags + - xen/x86/vpmu: Zero struct pt_regs before calling into sample handling code + - spi: fix IDR collision on systems with both fixed and dynamic SPI bus + numbers + - Revert "PCI: Add ACS quirk for Intel 300 series" + - ring-buffer: Allow for rescheduling when removing pages + - crypto: x86/aegis,morus - Do not require OSXSAVE for SSE2 + - fork: report pid exhaustion correctly + - mm: disable deferred struct page for 32-bit arches + - mm: shmem.c: Correctly annotate new inodes for lockdep + - Revert "rpmsg: core: add support to power domains for devices" + - bpf/verifier: disallow pointer subtraction + - Revert "uapi/linux/keyctl.h: don't use C++ reserved keyword as a struct + member name" + - scsi: target: iscsi: Use bin2hex instead of a re-implementation + - Revert "ubifs: xattr: Don't operate on deleted inodes" + - libata: mask swap internal and hardware tag + - ocfs2: fix ocfs2 read block panic + - drm/i915/bdw: Increase IPS disable timeout to 100ms + - drm/nouveau: Reset MST branching unit before enabling + - drm/nouveau: Only write DP_MSTM_CTRL when needed + - drm/nouveau: Remove duplicate poll_enable() in pmops_runtime_suspend() + - drm/nouveau: Fix deadlocks in nouveau_connector_detect() + - drm/nouveau/drm/nouveau: Don't forget to cancel hpd_work on suspend/unload + - drm/nouveau/drm/nouveau: Fix bogus drm_kms_helper_poll_enable() placement + - drm/nouveau/drm/nouveau: Fix deadlock with fb_helper with async RPM requests + - drm/nouveau/drm/nouveau: Use pm_runtime_get_noresume() in connector_detect() + - drm/nouveau/drm/nouveau: Prevent handling ACPI HPD events too early + - drm/vc4: Fix the "no scaling" case on multi-planar YUV formats + - drm: udl: Destroy framebuffer only if it was initialized + - drm/amdgpu: add new polaris pci id + - tty: vt_ioctl: fix potential Spectre v1 + - ext4: check to make sure the rename(2)'s destination is not freed + - ext4: avoid divide by zero fault when deleting corrupted inline directories + - ext4: avoid arithemetic overflow that can trigger a BUG + - ext4: recalucate superblock checksum after updating free blocks/inodes + - ext4: fix online resize's handling of a too-small final block group + - ext4: fix online resizing for bigalloc file systems with a 1k block size + - ext4: don't mark mmp buffer head dirty + - ext4: show test_dummy_encryption mount option in /proc/mounts + - ext4, dax: add ext4_bmap to ext4_dax_aops + - ext4, dax: set ext4_dax_aops for dax files + - sched/fair: Fix vruntime_normalized() for remote non-migration wakeup + - vmw_balloon: include asm/io.h + - iw_cxgb4: only allow 1 flush on user qps + - spi: Fix double IDR allocation with DT aliases + - Linux 4.18.11 + * CVE-2018-14633 + - scsi: target: iscsi: Use hex2bin instead of a re-implementation + * Cosmic update to 4.18.10 stable release (LP: #1794597) + - be2net: Fix memory leak in be_cmd_get_profile_config() + - net/mlx5: Fix use-after-free in self-healing flow + - net: qca_spi: Fix race condition in spi transfers + - rds: fix two RCU related problems + - tipc: orphan sock in tipc_release() + - net/mlx5: E-Switch, Fix memory leak when creating switchdev mode FDB tables + - net/tls: Set count of SG entries if sk_alloc_sg returns -ENOSPC + - net/mlx5: Check for error in mlx5_attach_interface + - net/mlx5: Fix debugfs cleanup in the device init/remove flow + - erspan: fix error handling for erspan tunnel + - erspan: return PACKET_REJECT when the appropriate tunnel is not found + - tcp: really ignore MSG_ZEROCOPY if no SO_ZEROCOPY + - net/mlx5: Fix not releasing read lock when adding flow rules + - net/mlx5: Fix possible deadlock from lockdep when adding fte to fg + - net/mlx5: Use u16 for Work Queue buffer fragment size + - usb: dwc3: change stream event enable bit back to 13 + - iommu/arm-smmu-v3: sync the OVACKFLG to PRIQ consumer register + - iommu/io-pgtable-arm-v7s: Abort allocation when table address overflows the + PTE + - iommu/io-pgtable-arm: Fix pgtable allocation in selftest + - ALSA: msnd: Fix the default sample sizes + - ALSA: usb-audio: Add support for Encore mDSD USB DAC + - ALSA: usb-audio: Fix multiple definitions in AU0828_DEVICE() macro + - xfrm: fix 'passing zero to ERR_PTR()' warning + - amd-xgbe: use dma_mapping_error to check map errors + - nfp: don't fail probe on pci_sriov_set_totalvfs() errors + - iwlwifi: cancel the injective function between hw pointers to tfd entry + index + - gfs2: Special-case rindex for gfs2_grow + - clk: imx6ul: fix missing of_node_put() + - clk: imx6sll: fix missing of_node_put() + - clk: mvebu: armada-37xx-periph: Fix wrong return value in get_parent + - Input: pxrc - fix freeing URB on device teardown + - clk: core: Potentially free connection id + - clk: clk-fixed-factor: Clear OF_POPULATED flag in case of failure + - kbuild: add .DELETE_ON_ERROR special target + - kbuild: do not update config when running install targets + - media: tw686x: Fix oops on buffer alloc failure + - dmaengine: pl330: fix irq race with terminate_all + - MIPS: ath79: fix system restart + - media: videobuf2-core: check for q->error in vb2_core_qbuf() + - IB/rxe: Drop QP0 silently + - block: allow max_discard_segments to be stacked + - IB/ipoib: Fix error return code in ipoib_dev_init() + - mtd/maps: fix solutionengine.c printk format warnings + - media: ov5645: Supported external clock is 24MHz + - perf test: Fix subtest number when showing results + - gfs2: Don't reject a supposedly full bitmap if we have blocks reserved + - perf tools: Synthesize GROUP_DESC feature in pipe mode + - perf tests: Fix record+probe_libc_inet_pton.sh for powerpc64 + - perf tests: Fix record+probe_libc_inet_pton.sh when event exists + - perf tests: Fix record+probe_libc_inet_pton.sh to ensure cleanups + - fbdev: omapfb: off by one in omapfb_register_client() + - perf tools: Fix struct comm_str removal crash + - video: goldfishfb: fix memory leak on driver remove + - fbdev/via: fix defined but not used warning + - perf powerpc: Fix callchain ip filtering when return address is in a + register + - video: fbdev: pxafb: clear allocated memory for video modes + - fbdev: Distinguish between interlaced and progressive modes + - omapfb: rename omap2 module to omap2fb.ko + - ARM: exynos: Clear global variable on init error path + - perf powerpc: Fix callchain ip filtering + - nvmet: fix file discard return status + - nvme-rdma: unquiesce queues when deleting the controller + - KVM: arm/arm64: vgic: Fix possible spectre-v1 write in vgic_mmio_write_apr() + - powerpc/powernv: opal_put_chars partial write fix + - perf script: Show correct offsets for DWARF-based unwinding + - staging: bcm2835-camera: fix timeout handling in wait_for_completion_timeout + - staging: bcm2835-camera: handle wait_for_completion_timeout return properly + - ASoC: rt5514: Fix the issue of the delay volume applied + - MIPS: jz4740: Bump zload address + - mac80211: restrict delayed tailroom needed decrement + - Smack: Fix handling of IPv4 traffic received by PF_INET6 sockets + - wan/fsl_ucc_hdlc: use IS_ERR_VALUE() to check return value of qe_muram_alloc + - arm64: fix possible spectre-v1 write in ptrace_hbp_set_event() + - reset: imx7: Fix always writing bits as 0 + - ALSA: usb-audio: Generic DSD detection for Thesycon-based implementations + - nfp: avoid buffer leak when FW communication fails + - xen-netfront: fix queue name setting + - arm64: dts: qcom: db410c: Fix Bluetooth LED trigger + - ARM: dts: qcom: msm8974-hammerhead: increase load on l20 for sdhci + - soc: qcom: smem: Correct check for global partition + - s390/qeth: fix race in used-buffer accounting + - s390/qeth: reset layer2 attribute on layer switch + - platform/x86: toshiba_acpi: Fix defined but not used build warnings + - KVM: arm/arm64: Fix vgic init race + - drivers/base: stop new probing during shutdown + - i2c: aspeed: Fix initial values of master and slave state + - drm/amd/pp: Set Max clock level to display by default + - regulator: qcom_spmi: Use correct regmap when checking for error + - regulator: qcom_spmi: Fix warning Bad of_node_put() + - iommu/ipmmu-vmsa: IMUCTRn.TTSEL needs a special usage on R-Car Gen3 + - dmaengine: mv_xor_v2: kill the tasklets upon exit + - crypto: sharah - Unregister correct algorithms for SAHARA 3 + - x86/pti: Check the return value of pti_user_pagetable_walk_p4d() + - x86/pti: Check the return value of pti_user_pagetable_walk_pmd() + - x86/mm/pti: Add an overflow check to pti_clone_pmds() + - PCI/AER: Honor "pcie_ports=native" even if HEST sets FIRMWARE_FIRST + - xen-netfront: fix warn message as irq device name has '/' + - RDMA/cma: Protect cma dev list with lock + - pstore: Fix incorrect persistent ram buffer mapping + - xen/netfront: fix waiting for xenbus state change + - IB/ipoib: Avoid a race condition between start_xmit and cm_rep_handler + - mmc: omap_hsmmc: fix wakeirq handling on removal + - ipmi: Rework SMI registration failure + - ipmi: Move BT capabilities detection to the detect call + - ipmi: Fix I2C client removal in the SSIF driver + - ovl: fix oopses in ovl_fill_super() failure paths + - vmbus: don't return values for uninitalized channels + - Tools: hv: Fix a bug in the key delete code + - misc: ibmvsm: Fix wrong assignment of return code + - misc: hmc6352: fix potential Spectre v1 + - xhci: Fix use after free for URB cancellation on a reallocated endpoint + - usb: Don't die twice if PCI xhci host is not responding in resume + - usb: xhci: fix interrupt transfer error happened on MTK platforms + - usb: mtu3: fix error of xhci port id when enable U3 dual role + - mei: ignore not found client in the enumeration + - mei: bus: fix hw module get/put balance + - mei: bus: need to unlink client before freeing + - dm verity: fix crash on bufio buffer that was allocated with vmalloc + - USB: Add quirk to support DJI CineSSD + - usb: uas: add support for more quirk flags + - usb: Avoid use-after-free by flushing endpoints early in usb_set_interface() + - usb: host: u132-hcd: Fix a sleep-in-atomic-context bug in u132_get_frame() + - USB: add quirk for WORLDE Controller KS49 or Prodipe MIDI 49C USB controller + - usb: gadget: udc: renesas_usb3: fix maxpacket size of ep0 + - USB: net2280: Fix erroneous synchronization change + - USB: serial: io_ti: fix array underflow in completion handler + - usb: misc: uss720: Fix two sleep-in-atomic-context bugs + - USB: serial: ti_usb_3410_5052: fix array underflow in completion handler + - USB: yurex: Fix buffer over-read in yurex_write() + - usb: cdc-wdm: Fix a sleep-in-atomic-context bug in + service_outstanding_interrupt() + - Revert "cdc-acm: implement put_char() and flush_chars()" + - cifs: prevent integer overflow in nxt_dir_entry() + - CIFS: fix wrapping bugs in num_entries() + - cifs: integer overflow in in SMB2_ioctl() + - xtensa: ISS: don't allocate memory in platform_setup + - perf/core: Force USER_DS when recording user stack data + - perf tools: Fix maps__find_symbol_by_name() + - of: fix phandle cache creation for DTs with no phandles + - x86/EISA: Don't probe EISA bus for Xen PV guests + - NFSv4: Fix a tracepoint Oops in initiate_file_draining() + - NFSv4.1 fix infinite loop on I/O. + - of: add helper to lookup compatible child node + - mmc: meson-mx-sdio: fix OF child-node lookup + - binfmt_elf: Respect error return from `regset->active' + - net/mlx5: Add missing SET_DRIVER_VERSION command translation + - arm64: dts: uniphier: Add missing cooling device properties for CPUs + - audit: fix use-after-free in audit_add_watch + - mtdchar: fix overflows in adjustment of `count` + - vfs: fix freeze protection in mnt_want_write_file() for overlayfs + - bpf: fix rcu annotations in compute_effective_progs() + - spi: dw: fix possible race condition + - Bluetooth: Use lock_sock_nested in bt_accept_enqueue + - evm: Don't deadlock if a crypto algorithm is unavailable + - KVM: PPC: Book3S HV: Add of_node_put() in success path + - security: check for kstrdup() failure in lsm_append() + - PM / devfreq: use put_device() instead of kfree() + - KVM: PPC: Book3S: Fix matching of hardware and emulated TCE tables + - MIPS: loongson64: cs5536: Fix PCI_OHCI_INT_REG reads + - configfs: fix registered group removal + - pinctrl: mt7622: Fix probe fail by misuse the selector + - pinctrl: rza1: Fix selector use for groups and functions + - arm64: dts: mt7622: update a clock property for UART0 + - sched/core: Use smp_mb() in wake_woken_function() + - efi/esrt: Only call efi_mem_reserve() for boot services memory + - ARM: hisi: handle of_iomap and fix missing of_node_put + - ARM: hisi: fix error handling and missing of_node_put + - ARM: hisi: check of_iomap and fix missing of_node_put + - liquidio: fix hang when re-binding VF host drv after running DPDK VF driver + - gpu: ipu-v3: csi: pass back mbus_code_to_bus_cfg error codes + - ASoC: hdmi-codec: fix routing + - serial: 8250: of: Correct of_platform_serial_setup() error handling + - tty: fix termios input-speed encoding when using BOTHER + - tty: fix termios input-speed encoding + - mmc: sdhci-of-esdhc: set proper dma mask for ls104x chips + - mmc: tegra: prevent HS200 on Tegra 3 + - mmc: sdhci: do not try to use 3.3V signaling if not supported + - drm/nouveau: Fix runtime PM leak in drm_open() + - drm/nouveau/debugfs: Wake up GPU before doing any reclocking + - drm/nouveau: tegra: Detach from ARM DMA/IOMMU mapping + - tls: Fix zerocopy_from_iter iov handling + - parport: sunbpp: fix error return code + - sched/fair: Fix util_avg of new tasks for asymmetric systems + - coresight: Handle errors in finding input/output ports + - coresight: tpiu: Fix disabling timeouts + - coresight: ETM: Add support for Arm Cortex-A73 and Cortex-A35 + - f2fs: do checkpoint in kill_sb + - tools/testing/nvdimm: Fix support for emulating controller temperature + - drm/amd/display: support access ddc for mst branch + - ASoC: qdsp6: q6afe-dai: fix a range check in of_q6afe_parse_dai_data() + - lightnvm: pblk: assume that chunks are closed on 1.2 devices + - lightnvm: pblk: enable line minor version detection + - staging: bcm2835-audio: Don't leak workqueue if open fails + - gpio: pxa: Fix potential NULL dereference + - gpiolib: Mark gpio_suffixes array with __maybe_unused + - net: gemini: Allow multiple ports to instantiate + - net: mvpp2: make sure we use single queue mode on PPv2.1 + - rcutorture: Use monotonic timestamp for stall detection + - mfd: 88pm860x-i2c: switch to i2c_lock_bus(..., I2C_LOCK_SEGMENT) + - input: rohm_bu21023: switch to i2c_lock_bus(..., I2C_LOCK_SEGMENT) + - drm/amdkfd: Fix kernel queue 64 bit doorbell offset calculation + - drm/amdkfd: Fix error codes in kfd_get_process + - rtc: bq4802: add error handling for devm_ioremap + - selftests: vDSO - fix to return KSFT_SKIP when test couldn't be run + - selftests/android: initialize heap_type to avoid compiling warning + - ALSA: pcm: Fix snd_interval_refine first/last with open min/max + - scsi: libfc: fixup 'sleeping function called from invalid context' + - scsi: lpfc: Fix NVME Target crash in defer rcv logic + - scsi: lpfc: Fix panic if driver unloaded when port is offline + - remoteproc: qcom: q6v5-pil: fix modem hang on SDM845 after axis2 clk unvote + - selftest: timers: Tweak raw_skew to SKIP when ADJ_OFFSET/other clock + adjustments are in progress + - ASoC: rt5651: Fix workqueue cancel vs irq free race on remove + - drm/panel: type promotion bug in s6e8aa0_read_mtp_id() + - arm64: perf: Disable PMU while processing counter overflows + - drm/amd/pp: Send khz clock values to DC for smu7/8 + - dmaengine: sh: rcar-dmac: avoid to write CHCR.TE to 1 if TCR is set to 0 + - staging: fsl-dpaa2/eth: Fix DMA mapping direction + - block/DAC960.c: fix defined but not used build warnings + - IB/mlx5: fix uaccess beyond "count" in debugfs read/write handlers + - blk-mq: only attempt to merge bio if there is rq in sw queue + - blk-mq: avoid to synchronize rcu inside blk_cleanup_queue() + - pinctrl: msm: Fix msm_config_group_get() to be compliant + - pinctrl: qcom: spmi-gpio: Fix pmic_gpio_config_get() to be compliant + - clk: tegra: bpmp: Don't crash when a clock fails to register + - mei: bus: type promotion bug in mei_nfc_if_version() + - crypto: ccp - add timeout support in the SEV command + - Linux 4.18.10 + * Fix MCE handling for user access of poisoned device-dax mapping + (LP: #1774366) + - x86/mce: Fix set_mce_nospec() to avoid #GP fault + * [Ubuntu] s390/crypto: Fix return code checking in cbc_paes_crypt. + (LP: #1794294) + - s390/crypto: Fix return code checking in cbc_paes_crypt() + * Oracle cosmic image does not find broadcom network device in Shape + VMStandard2.1 (LP: #1790652) + - SAUCE: bnxt_en: Fix VF mac address regression. + * Page leaking in cachefiles_read_backing_file while vmscan is active + (LP: #1793430) + - SAUCE: cachefiles: Page leaking in cachefiles_read_backing_file while vmscan + is active + * hns3: enable ethtool rx-vlan-filter on supported hw (LP: #1793394) + - net: hns3: Add vlan filter setting by ethtool command -K + * hns3: Modifying channel parameters will reset ring parameters back to + defaults (LP: #1793404) + - net: hns3: Fix desc num set to default when setting channel + * hisi_sas: Add SATA FIX check for v3 hw (LP: #1794151) + - scsi: hisi_sas: Add SATA FIS check for v3 hw + * Fix potential corruption using SAS controller on HiSilicon arm64 boards + (LP: #1794156) + - scsi: hisi_sas: add memory barrier in task delivery function + * hisi_sas: Reduce unnecessary spin lock contention (LP: #1794165) + - scsi: hisi_sas: Tidy hisi_sas_task_prep() + * Add functional level reset support for the SAS controller on HiSilicon D06 + systems (LP: #1794166) + - scsi: hisi_sas: tidy host controller reset function a bit + - scsi: hisi_sas: relocate some common code for v3 hw + - scsi: hisi_sas: Implement handlers of PCIe FLR for v3 hw + * HiSilicon SAS controller doesn't recover from PHY STP link timeout + (LP: #1794172) + - scsi: hisi_sas: tidy channel interrupt handler for v3 hw + - scsi: hisi_sas: Fix the failure of recovering PHY from STP link timeout + * Cosmic update to 4.18.9 stable release (LP: #1793682) + - i2c: xiic: Make the start and the byte count write atomic + - i2c: i801: fix DNV's SMBCTRL register offset + - HID: multitouch: fix Elan panels with 2 input modes declaration + - HID: core: fix grouping by application + - HID: input: fix leaking custom input node name + - mm/hugetlb: filter out hugetlb pages if HUGEPAGE migration is not supported. + - memory_hotplug: fix kernel_panic on offline page processing + - mac80211: don't update the PM state of a peer upon a multicast frame + - scsi: lpfc: Correct MDS diag and nvmet configuration + - nbd: don't allow invalid blocksize settings + - block: don't warn when doing fsync on read-only devices + - block: bfq: swap puts in bfqg_and_blkg_put + - android: binder: fix the race mmap and alloc_new_buf_locked + - MIPS: VDSO: Match data page cache colouring when D$ aliases + - SMB3: Backup intent flag missing for directory opens with backupuid mounts + - smb3: check for and properly advertise directory lease support + - cifs: connect to servername instead of IP for IPC$ share + - btrfs: fix qgroup_free wrong num_bytes in btrfs_subvolume_reserve_metadata + - Btrfs: fix data corruption when deduplicating between different files + - arm64: KVM: Only force FPEXC32_EL2.EN if trapping FPSIMD + - KVM: arm/arm64: Clean dcache to PoC when changing PTE due to CoW + - KVM: PPC: Book3S HV: Use correct pagesize in kvm_unmap_radix() + - KVM: s390: vsie: copy wrapping keys to right place + - KVM: x86: SVM: Set EMULTYPE_NO_REEXECUTE for RSM emulation + - KVM: VMX: Do not allow reexecute_instruction() when skipping MMIO instr + - KVM: x86: Invert emulation re-execute behavior to make it opt-in + - KVM: x86: Merge EMULTYPE_RETRY and EMULTYPE_ALLOW_REEXECUTE + - KVM: x86: Default to not allowing emulation retry in kvm_mmu_page_fault + - KVM: x86: Do not re-{try,execute} after failed emulation in L2 + - ARC: [plat-axs*/plat-hsdk]: Allow U-Boot to pass MAC-address to the kernel + - ACPI / LPSS: Force LPSS quirks on boot + - memory: ti-aemif: fix a potential NULL-pointer dereference + - ALSA: hda - Fix cancel_work_sync() stall from jackpoll work + - cpu/hotplug: Adjust misplaced smb() in cpuhp_thread_fun() + - cpu/hotplug: Prevent state corruption on error rollback + - x86/microcode: Make sure boot_cpu_data.microcode is up-to-date + - x86/microcode: Update the new microcode revision unconditionally + - x86/process: Don't mix user/kernel regs in 64bit __show_regs() + - x86/apic/vector: Make error return value negative + - switchtec: Fix Spectre v1 vulnerability + - ARC: [plat-axs*]: Enable SWAP + - tc-testing: flush gact actions on test teardown + - tc-testing: remove duplicate spaces in connmark match patterns + - misc: mic: SCIF Fix scif_get_new_port() error handling + - ALSA: hda/realtek - Add mute LED quirk for HP Spectre x360 + - ethtool: Remove trailing semicolon for static inline + - i2c: aspeed: Add an explicit type casting for *get_clk_reg_val + - Bluetooth: h5: Fix missing dependency on BT_HCIUART_SERDEV + - pinctrl: berlin: fix 'pctrl->functions' allocation in + berlin_pinctrl_build_state + - gpio: tegra: Move driver registration to subsys_init level + - powerpc/4xx: Fix error return path in ppc4xx_msi_probe() + - selftests/bpf: fix a typo in map in map test + - media: davinci: vpif_display: Mix memory leak on probe error path + - media: dw2102: Fix memleak on sequence of probes + - net: phy: Fix the register offsets in Broadcom iProc mdio mux driver + - scsi: qla2xxx: Fix unintended Logout + - scsi: qla2xxx: Fix session state stuck in Get Port DB + - scsi: qla2xxx: Silent erroneous message + - clk: scmi: Fix the rounding of clock rate + - blk-mq: fix updating tags depth + - scsi: lpfc: Fix driver crash when re-registering NVME rports. + - scsi: target: fix __transport_register_session locking + - md/raid5: fix data corruption of replacements after originals dropped + - timers: Clear timer_base::must_forward_clk with timer_base::lock held + - media: camss: csid: Configure data type and decode format properly + - gpu: ipu-v3: default to id 0 on missing OF alias + - misc: ti-st: Fix memory leak in the error path of probe() + - uio: potential double frees if __uio_register_device() fails + - firmware: vpd: Fix section enabled flag on vpd_section_destroy + - Drivers: hv: vmbus: Cleanup synic memory free path + - tty: rocket: Fix possible buffer overwrite on register_PCI + - uio: fix possible circular locking dependency + - iwlwifi: pcie: don't access periphery registers when not available + - IB/IPoIB: Set ah valid flag in multicast send flow + - f2fs: fix to active page in lru list for read path + - f2fs: do not set free of current section + - f2fs: Keep alloc_valid_block_count in sync + - f2fs: issue discard align to section in LFS mode + - f2fs: fix defined but not used build warnings + - f2fs: fix to detect looped node chain correctly + - ASoC: soc-pcm: Use delay set in component pointer function + - perf tools: Allow overriding MAX_NR_CPUS at compile time + - device-dax: avoid hang on error before devm_memremap_pages() + - NFSv4.0 fix client reference leak in callback + - perf c2c report: Fix crash for empty browser + - perf evlist: Fix error out while applying initial delay and LBR + - powerpc/pseries: fix EEH recovery of some IOV devices + - macintosh/via-pmu: Add missing mmio accessors + - perf build: Fix installation directory for eBPF + - ath9k: report tx status on EOSP + - ath9k_hw: fix channel maximum power level test + - ath10k: prevent active scans on potential unusable channels + - wlcore: Set rx_status boottime_ns field on rx + - rpmsg: core: add support to power domains for devices + - mtd: rawnand: make subop helpers return unsigned values + - scsi: tcmu: do not set max_blocks if data_bitmap has been setup + - MIPS: Fix ISA virt/bus conversion for non-zero PHYS_OFFSET + - ata: libahci: Allow reconfigure of DEVSLP register + - ata: libahci: Correct setting of DEVSLP register + - nfs: Referrals not inheriting proto setting from parent + - scsi: 3ware: fix return 0 on the error path of probe + - tools/testing/nvdimm: kaddr and pfn can be NULL to ->direct_access() + - ath10k: disable bundle mgmt tx completion event support + - media: em28xx: explicitly disable TS packet filter + - PCI: mobiveil: Add missing ../pci.h include + - PCI: mobiveil: Fix struct mobiveil_pcie.pcie_reg_base address type + - powerpc/mm: Don't report PUDs as memory leaks when using kmemleak + - Bluetooth: hidp: Fix handling of strncpy for hid->name information + - x86/mm: Remove in_nmi() warning from vmalloc_fault() + - regulator: tps65217: Fix NULL pointer dereference on probe + - pinctrl: imx: off by one in imx_pinconf_group_dbg_show() + - gpio: pxa: disable pinctrl calls for PXA3xx + - gpio: ml-ioh: Fix buffer underwrite on probe error path + - pinctrl/amd: only handle irq if it is pending and unmasked + - net: mvneta: fix mtu change on port without link + - f2fs: try grabbing node page lock aggressively in sync scenario + - pktcdvd: Fix possible Spectre-v1 for pkt_devs + - f2fs: fix to skip GC if type in SSA and SIT is inconsistent + - tpm_tis_spi: Pass the SPI IRQ down to the driver + - tpm/tpm_i2c_infineon: switch to i2c_lock_bus(..., I2C_LOCK_SEGMENT) + - f2fs: fix to do sanity check with reserved blkaddr of inline inode + - MIPS: Octeon: add missing of_node_put() + - MIPS: generic: fix missing of_node_put() + - thermal: rcar_thermal: avoid NULL dereference in absence of IRQ resources + - thermal_hwmon: Sanitize attribute name passed to hwmon + - net: dcb: For wild-card lookups, use priority -1, not 0 + - dm cache: only allow a single io_mode cache feature to be requested + - Input: atmel_mxt_ts - only use first T9 instance + - media: s5p-mfc: Fix buffer look up in s5p_mfc_handle_frame_{new, copy_time} + functions + - media: rcar-csi2: update stream start for V3M + - media: helene: fix xtal frequency setting at power on + - drm/amd/display: Prevent PSR from being enabled if initialization fails + - media: em28xx: Fix dual transport stream operation + - iommu/arm-smmu-v3: Abort all transactions if SMMU is enabled in kdump kernel + - f2fs: fix to wait on page writeback before updating page + - f2fs: Fix uninitialized return in f2fs_ioc_shutdown() + - media: em28xx: Fix DualHD disconnect oops + - f2fs: avoid potential deadlock in f2fs_sbi_store + - f2fs: fix to do sanity check with secs_per_zone + - mfd: rave-sp: Initialize flow control and parity of the port + - iommu/ipmmu-vmsa: Fix allocation in atomic context + - mfd: ti_am335x_tscadc: Fix struct clk memory leak + - f2fs: fix to do sanity check with {sit,nat}_ver_bitmap_bytesize + - f2fs: fix to propagate return value of scan_nat_page() + - f2fs: fix to do sanity check with extra_attr feature + - RDMA/hns: Add illegal hop_num judgement + - NFSv4.1: Fix a potential layoutget/layoutrecall deadlock + - RDMA/hns: Update the data type of immediate data + - MIPS: WARN_ON invalid DMA cache maintenance, not BUG_ON + - MIPS: mscc: ocelot: fix length of memory address space for MIIM + - RDMA/cma: Do not ignore net namespace for unbound cm_id + - clocksource: Revert "Remove kthread" + - autofs: fix autofs_sbi() does not check super block type + - mm: get rid of vmacache_flush_all() entirely + - Linux 4.18.9 + * SRU: Enable middle button of touchpad on ThinkPad P72 (LP: #1793463) + - Input: elantech - enable middle button of touchpad on ThinkPad P72 + * Improvements to the kernel source package preparation (LP: #1793461) + - [Packaging] startnewrelease: add support for backport kernels + * hns3: Retrieve RoCE MSI-X config from firmware (LP: #1793221) + - net: hns3: Fix MSIX allocation issue for VF + - net: hns3: Refine the MSIX allocation for PF + * Fix unusable NVIDIA GPU after S3 (LP: #1793338) + - SAUCE: PCI: Reprogram bridge prefetch registers on resume + * net: hns: Avoid hang when link is changed while handling packets + (LP: #1792209) + - net: hns: add the code for cleaning pkt in chip + - net: hns: add netif_carrier_off before change speed and duplex + * Cosmic update to v4.18.8 stable release (LP: #1793069) + - act_ife: fix a potential use-after-free + - ipv4: tcp: send zero IPID for RST and ACK sent in SYN-RECV and TIME-WAIT + state + - net: bcmgenet: use MAC link status for fixed phy + - net: macb: do not disable MDIO bus at open/close time + - net: sched: Fix memory exposure from short TCA_U32_SEL + - qlge: Fix netdev features configuration. + - r8169: add support for NCube 8168 network card + - tcp: do not restart timewait timer on rst reception + - vti6: remove !skb->ignore_df check from vti6_xmit() + - act_ife: move tcfa_lock down to where necessary + - act_ife: fix a potential deadlock + - net: sched: action_ife: take reference to meta module + - bnxt_en: Clean up unused functions. + - bnxt_en: Do not adjust max_cp_rings by the ones used by RDMA. + - net/sched: act_pedit: fix dump of extended layered op + - tipc: fix a missing rhashtable_walk_exit() + - hv_netvsc: Fix a deadlock by getting rtnl lock earlier in netvsc_probe() + - tipc: fix the big/little endian issue in tipc_dest + - sctp: remove useless start_fail from sctp_ht_iter in proc + - erspan: set erspan_ver to 1 by default when adding an erspan dev + - net: macb: Fix regression breaking non-MDIO fixed-link PHYs + - ipv6: don't get lwtstate twice in ip6_rt_copy_init() + - net/ipv6: init ip6 anycast rt->dst.input as ip6_input + - net/ipv6: Only update MTU metric if it set + - net/ipv6: Put lwtstate when destroying fib6_info + - net/mlx5: Fix SQ offset in QPs with small RQ + - r8169: set RxConfig after tx/rx is enabled for RTL8169sb/8110sb devices + - Revert "net: stmmac: Do not keep rearming the coalesce timer in stmmac_xmit" + - ip6_vti: fix creating fallback tunnel device for vti6 + - ip6_vti: fix a null pointer deference when destroy vti6 tunnel + - nfp: wait for posted reconfigs when disabling the device + - sctp: hold transport before accessing its asoc in sctp_transport_get_next + - mlxsw: spectrum_switchdev: Do not leak RIFs when removing bridge + - vhost: correctly check the iova range when waking virtqueue + - hv_netvsc: ignore devices that are not PCI + - cifs: check if SMB2 PDU size has been padded and suppress the warning + - hfsplus: don't return 0 when fill_super() failed + - hfs: prevent crash on exit from failed search + - sunrpc: Don't use stack buffer with scatterlist + - fork: don't copy inconsistent signal handler state to child + - fs/proc/vmcore.c: hide vmcoredd_mmap_dumps() for nommu builds + - reiserfs: change j_timestamp type to time64_t + - iommu/rockchip: Handle errors returned from PM framework + - hfsplus: fix NULL dereference in hfsplus_lookup() + - iommu/rockchip: Move irq request past pm_runtime_enable + - fs/proc/kcore.c: use __pa_symbol() for KCORE_TEXT list entries + - fat: validate ->i_start before using + - workqueue: skip lockdep wq dependency in cancel_work_sync() + - workqueue: re-add lockdep dependencies for flushing + - scripts: modpost: check memory allocation results + - apparmor: fix an error code in __aa_create_ns() + - virtio: pci-legacy: Validate queue pfn + - x86/mce: Add notifier_block forward declaration + - i2c: core: ACPI: Make acpi_gsb_i2c_read_bytes() check i2c_transfer return + value + - IB/hfi1: Invalid NUMA node information can cause a divide by zero + - pwm: meson: Fix mux clock names + - powerpc/topology: Get topology for shared processors at boot + - mm/fadvise.c: fix signed overflow UBSAN complaint + - mm: make DEFERRED_STRUCT_PAGE_INIT explicitly depend on SPARSEMEM + - fs/dcache.c: fix kmemcheck splat at take_dentry_name_snapshot() + - platform/x86: intel_punit_ipc: fix build errors + - bpf, sockmap: fix map elem deletion race with smap_stop_sock + - tcp, ulp: fix leftover icsk_ulp_ops preventing sock from reattach + - bpf, sockmap: fix sock_map_ctx_update_elem race with exist/noexist + - net/xdp: Fix suspicious RCU usage warning + - bpf, sockmap: fix leakage of smap_psock_map_entry + - samples/bpf: all XDP samples should unload xdp/bpf prog on SIGTERM + - netfilter: ip6t_rpfilter: set F_IFACE for linklocal addresses + - s390/kdump: Fix memleak in nt_vmcoreinfo + - ipvs: fix race between ip_vs_conn_new() and ip_vs_del_dest() + - mfd: sm501: Set coherent_dma_mask when creating subdevices + - netfilter: x_tables: do not fail xt_alloc_table_info too easilly + - platform/x86: asus-nb-wmi: Add keymap entry for lid flip action on UX360 + - netfilter: fix memory leaks on netlink_dump_start error + - tcp, ulp: add alias for all ulp modules + - ubi: Initialize Fastmap checkmapping correctly + - RDMA/hns: Fix usage of bitmap allocation functions return values + - ACPICA: ACPICA: add status check for acpi_hw_read before assigning return + value + - perf arm spe: Fix uninitialized record error variable + - net: hns3: Fix for command format parsing error in + hclge_is_all_function_id_zero + - block: don't warn for flush on read-only device + - PCI: Match Root Port's MPS to endpoint's MPSS as necessary + - drm/amd/display: Guard against null crtc in CRC IRQ + - coccicheck: return proper error code on fail + - perf tools: Check for null when copying nsinfo. + - f2fs: avoid race between zero_range and background GC + - f2fs: fix avoid race between truncate and background GC + - RISC-V: Use KBUILD_CFLAGS instead of KCFLAGS when building the vDSO + - irqchip/stm32: Fix init error handling + - irqchip/bcm7038-l1: Hide cpu offline callback when building for !SMP + - net/9p/trans_fd.c: fix race by holding the lock + - net/9p: fix error path of p9_virtio_probe + - f2fs: fix to clear PG_checked flag in set_page_dirty() + - pinctrl: axp209: Fix NULL pointer dereference after allocation + - bpf: fix bpffs non-array map seq_show issue + - powerpc/uaccess: Enable get_user(u64, *p) on 32-bit + - powerpc: Fix size calculation using resource_size() + - perf probe powerpc: Fix trace event post-processing + - block: bvec_nr_vecs() returns value for wrong slab + - brcmfmac: fix brcmf_wiphy_wowl_params() NULL pointer dereference + - s390/dasd: fix hanging offline processing due to canceled worker + - s390/dasd: fix panic for failed online processing + - ACPI / scan: Initialize status to ACPI_STA_DEFAULT + - blk-mq: count the hctx as active before allocating tag + - scsi: aic94xx: fix an error code in aic94xx_init() + - NFSv4: Fix error handling in nfs4_sp4_select_mode() + - Input: do not use WARN() in input_alloc_absinfo() + - xen/balloon: fix balloon initialization for PVH Dom0 + - PCI: mvebu: Fix I/O space end address calculation + - dm kcopyd: avoid softlockup in run_complete_job + - staging: comedi: ni_mio_common: fix subdevice flags for PFI subdevice + - ASoC: rt5677: Fix initialization of rt5677_of_match.data + - iommu/omap: Fix cache flushes on L2 table entries + - selftests/powerpc: Kill child processes on SIGINT + - selinux: cleanup dentry and inodes on error in selinuxfs + - RDS: IB: fix 'passing zero to ERR_PTR()' warning + - cfq: Suppress compiler warnings about comparisons + - smb3: fix reset of bytes read and written stats + - CIFS: fix memory leak and remove dead code + - SMB3: Number of requests sent should be displayed for SMB3 not just CIFS + - smb3: if server does not support posix do not allow posix mount option + - powerpc/platforms/85xx: fix t1042rdb_diu.c build errors & warning + - powerpc/64s: Make rfi_flush_fallback a little more robust + - um: fix parallel building with O= option + - powerpc/pseries: Avoid using the size greater than RTAS_ERROR_LOG_MAX. + - clk: rockchip: Add pclk_rkpwm_pmu to PMU critical clocks in rk3399 + - drm/amd/display: Read back max backlight value at boot + - KVM: vmx: track host_state.loaded using a loaded_vmcs pointer + - kvm: nVMX: Fix fault vector for VMX operation at CPL > 0 + - drm/etnaviv: fix crash in GPU suspend when init failed due to buffer + placement + - btrfs: Exit gracefully when chunk map cannot be inserted to the tree + - btrfs: replace: Reset on-disk dev stats value after replace + - btrfs: fix in-memory value of total_devices after seed device deletion + - btrfs: relocation: Only remove reloc rb_trees if reloc control has been + initialized + - btrfs: tree-checker: Detect invalid and empty essential trees + - btrfs: check-integrity: Fix NULL pointer dereference for degraded mount + - btrfs: lift uuid_mutex to callers of btrfs_open_devices + - btrfs: Don't remove block group that still has pinned down bytes + - btrfs: Fix a C compliance issue + - arm64: rockchip: Force CONFIG_PM on Rockchip systems + - ARM: rockchip: Force CONFIG_PM on Rockchip systems + - btrfs: do btrfs_free_stale_devices outside of device_list_add + - btrfs: extend locked section when adding a new device in device_list_add + - btrfs: rename local devices for fs_devices in btrfs_free_stale_devices( + - btrfs: use device_list_mutex when removing stale devices + - btrfs: lift uuid_mutex to callers of btrfs_scan_one_device + - btrfs: lift uuid_mutex to callers of btrfs_parse_early_options + - btrfs: reorder initialization before the mount locks uuid_mutex + - btrfs: fix mount and ioctl device scan ioctl race + - drm/i915/lpe: Mark LPE audio runtime pm as "no callbacks" + - drm/i915: Nuke the LVDS lid notifier + - drm/i915: Increase LSPCON timeout + - drm/i915: Free write_buf that we allocated with kzalloc. + - drm/amdgpu: update uvd_v6_0_ring_vm_funcs to use new nop packet + - drm/amdgpu: fix a reversed condition + - drm/amdgpu: Fix RLC safe mode test in gfx_v9_0_enter_rlc_safe_mode + - drm/amd/pp: Convert voltage unit in mV*4 to mV on CZ/ST + - drm/amd/powerplay: fixed uninitialized value + - drm/amd/pp/Polaris12: Fix a chunk of registers missed to program + - drm/edid: Quirk Vive Pro VR headset non-desktop. + - drm/amd/display: fix type of variable + - drm/amd/display: Don't share clk source between DP and HDMI + - drm/amd/display: update clk for various HDMI color depths + - drm/amd/display: Use requested HDMI aspect ratio + - drm/amd/display: Report non-DP display as disconnected without EDID + - drm/rockchip: lvds: add missing of_node_put + - drm/rockchip: vop: split out core clock enablement into separate functions + - drm/rockchip: vop: fix irq disabled after vop driver probed + - drm/amd/display: Pass connector id when executing VBIOS CT + - drm/amd/display: Check if clock source in use before disabling + - drm/amdgpu: update tmr mc address + - drm/amdgpu:add tmr mc address into amdgpu_firmware_info + - drm/amdgpu:add new firmware id for VCN + - drm/amdgpu:add VCN support in PSP driver + - drm/amdgpu:add VCN booting with firmware loaded by PSP + - drm/amdgpu: fix incorrect use of fcheck + - drm/amdgpu: fix incorrect use of drm_file->pid + - drm/i915: Re-apply "Perform link quality check, unconditionally during long + pulse" + - uapi/linux/keyctl.h: don't use C++ reserved keyword as a struct member name + - mm: respect arch_dup_mmap() return value + - drm/i915: set DP Main Stream Attribute for color range on DDI platforms + - x86/tsc: Prevent result truncation on 32bit + - drm/amdgpu: Keep track of amount of pinned CPU visible VRAM + - drm/amdgpu: Make pin_size values atomic + - drm/amdgpu: Warn and update pin_size values when destroying a pinned BO + - drm/amdgpu: Don't warn on destroying a pinned BO + - debugobjects: Make stack check warning more informative + - x86/pae: use 64 bit atomic xchg function in native_ptep_get_and_clear + - x86/xen: don't write ptes directly in 32-bit PV guests + - kbuild: make missing $DEPMOD a Warning instead of an Error + - kvm: x86: Set highest physical address bits in non-present/reserved SPTEs + - x86: kvm: avoid unused variable warning + - HID: redragon: fix num lock and caps lock LEDs + - ASoC: wm8994: Fix missing break in switch + - Linux 4.18.8 + * [Regression] Colour banding appears on Lenovo B50-80 integrated display + (LP: #1788308) // Cosmic update to v4.18.8 stable release (LP: #1793069) + - drm/edid: Add 6 bpc quirk for SDC panel in Lenovo B50-80 + * Fix I2C touchpanels' interrupt storms after system suspend (LP: #1792309) + - HID: i2c-hid: Fix flooded incomplete report after S3 on Rayd touchscreen + - HID: i2c-hid: Don't reset device upon system resume + * Error reported when creating ZFS pool with "-t" option, despite successful + pool creation (LP: #1769937) + - SAUCE: (noup) Update zfs to 0.7.9-3ubuntu6 + * update ENA driver to latest mainline version (LP: #1792044) + - net: ena: fix surprise unplug NULL dereference kernel crash + - net: ena: fix driver when PAGE_SIZE == 64kB + - net: ena: fix device destruction to gracefully free resources + - net: ena: fix potential double ena_destroy_device() + - net: ena: fix missing lock during device destruction + - net: ena: fix missing calls to READ_ONCE + - net: ena: fix incorrect usage of memory barriers + * device hotplug of vfio devices can lead to deadlock in vfio_pci_release + (LP: #1792099) + - SAUCE: vfio -- release device lock before userspace requests + * [AEP-bug] ext4: more rare direct I/O vs unmap failures (LP: #1787089) + - dax: dax_layout_busy_page() warn on !exceptional + - ext4: handle layout changes to pinned DAX mappings + - xfs: Close race between direct IO and xfs_break_layouts() + * [Bug][CLX]assertion failure with util_range_rw using libpmemlog, possible + kernel DAX bug (LP: #1789146) + - dax: remove VM_MIXEDMAP for fsdax and device dax + * [Feature] Optimize huge page clear/copy cache behavior (LP: #1730836) + - mm, clear_huge_page: move order algorithm into a separate function + - mm, huge page: copy target sub-page last when copy huge page + - mm, hugetlbfs: rename address to haddr in hugetlb_cow() + - mm, hugetlbfs: pass fault address to cow handler + * [ICL] Touch support (LP: #1771245) + - mfd: intel-lpss: Add Ice Lake PCI IDs + * Miscellaneous Ubuntu changes + - [Packaging] retpoline -- fix temporary filenaming + - SAUCE: update aufs to aufs4.18 20180910 + - CONFIG_BCH_CONST_PARAMS=n + - Packaging: final-checks: remove trailing backport suffix + + -- Marcelo Henrique Cerri Tue, 09 Oct 2018 14:07:50 -0300 + +linux-azure (4.18.0-1002.2) cosmic; urgency=medium + + * linux-azure: 4.18.0-1002.2 -proposed tracker (LP: #1791664) + + * Miscellaneous Ubuntu changes + - [Config] updateconfigs after rebase to Ubuntu-4.18.0-8.9 + + [ Ubuntu: 4.18.0-8.9 ] + + * linux: 4.18.0-8.9 -proposed tracker (LP: #1791663) + * Cosmic update to v4.18.7 stable release (LP: #1791660) + - rcu: Make expedited GPs handle CPU 0 being offline + - net: 6lowpan: fix reserved space for single frames + - net: mac802154: tx: expand tailroom if necessary + - 9p/net: Fix zero-copy path in the 9p virtio transport + - spi: davinci: fix a NULL pointer dereference + - spi: pxa2xx: Add support for Intel Ice Lake + - spi: spi-fsl-dspi: Fix imprecise abort on VF500 during probe + - spi: cadence: Change usleep_range() to udelay(), for atomic context + - mmc: block: Fix unsupported parallel dispatch of requests + - mmc: renesas_sdhi_internal_dmac: mask DMAC interrupts + - mmc: renesas_sdhi_internal_dmac: fix #define RST_RESERVED_BITS + - readahead: stricter check for bdi io_pages + - block: fix infinite loop if the device loses discard capability + - block: blk_init_allocated_queue() set q->fq as NULL in the fail case + - block: really disable runtime-pm for blk-mq + - blkcg: Introduce blkg_root_lookup() + - block: Introduce blk_exit_queue() + - block: Ensure that a request queue is dissociated from the cgroup controller + - apparmor: fix bad debug check in apparmor_secid_to_secctx() + - dma-buf: Move BUG_ON from _add_shared_fence to _add_shared_inplace + - libertas: fix suspend and resume for SDIO connected cards + - media: Revert "[media] tvp5150: fix pad format frame height" + - mailbox: xgene-slimpro: Fix potential NULL pointer dereference + - Replace magic for trusting the secondary keyring with #define + - Fix kexec forbidding kernels signed with keys in the secondary keyring to + boot + - powerpc/fadump: handle crash memory ranges array index overflow + - powerpc/64s: Fix page table fragment refcount race vs speculative references + - powerpc/pseries: Fix endianness while restoring of r3 in MCE handler. + - powerpc/pkeys: Give all threads control of their key permissions + - powerpc/pkeys: Deny read/write/execute by default + - powerpc/pkeys: key allocation/deallocation must not change pkey registers + - powerpc/pkeys: Save the pkey registers before fork + - powerpc/pkeys: Fix calculation of total pkeys. + - powerpc/pkeys: Preallocate execute-only key + - powerpc/nohash: fix pte_access_permitted() + - powerpc64/ftrace: Include ftrace.h needed for enable/disable calls + - powerpc/powernv/pci: Work around races in PCI bridge enabling + - cxl: Fix wrong comparison in cxl_adapter_context_get() + - IB/mlx5: Honor cnt_set_id_valid flag instead of set_id + - IB/mlx5: Fix leaking stack memory to userspace + - IB/srpt: Fix srpt_cm_req_recv() error path (1/2) + - IB/srpt: Fix srpt_cm_req_recv() error path (2/2) + - IB/srpt: Support HCAs with more than two ports + - overflow.h: Add arithmetic shift helper + - RDMA/mlx5: Fix shift overflow in mlx5_ib_create_wq + - ib_srpt: Fix a use-after-free in srpt_close_ch() + - ib_srpt: Fix a use-after-free in __srpt_close_all_ch() + - RDMA/rxe: Set wqe->status correctly if an unexpected response is received + - 9p: fix multiple NULL-pointer-dereferences + - fs/9p/xattr.c: catch the error of p9_client_clunk when setting xattr failed + - 9p/virtio: fix off-by-one error in sg list bounds check + - net/9p/client.c: version pointer uninitialized + - net/9p/trans_fd.c: fix race-condition by flushing workqueue before the + kfree() + - dm integrity: change 'suspending' variable from bool to int + - dm thin: stop no_space_timeout worker when switching to write-mode + - dm cache metadata: save in-core policy_hint_size to on-disk superblock + - dm cache metadata: set dirty on all cache blocks after a crash + - dm crypt: don't decrease device limits + - dm writecache: fix a crash due to reading past end of dirty_bitmap + - uart: fix race between uart_put_char() and uart_shutdown() + - Drivers: hv: vmbus: Fix the offer_in_progress in vmbus_process_offer() + - Drivers: hv: vmbus: Reset the channel callback in vmbus_onoffer_rescind() + - iio: sca3000: Fix missing return in switch + - iio: ad9523: Fix displayed phase + - iio: ad9523: Fix return value for ad952x_store() + - extcon: Release locking when sending the notification of connector state + - eventpoll.h: wrap casts in () properly + - vmw_balloon: fix inflation of 64-bit GFNs + - vmw_balloon: do not use 2MB without batching + - vmw_balloon: VMCI_DOORBELL_SET does not check status + - vmw_balloon: fix VMCI use when balloon built into kernel + - rtc: omap: fix resource leak in registration error path + - rtc: omap: fix potential crash on power off + - tracing: Do not call start/stop() functions when tracing_on does not change + - tracing/blktrace: Fix to allow setting same value + - printk/tracing: Do not trace printk_nmi_enter() + - livepatch: Validate module/old func name length + - uprobes: Use synchronize_rcu() not synchronize_sched() + - mfd: hi655x: Fix regmap area declared size for hi655x + - ovl: fix wrong use of impure dir cache in ovl_iterate() + - ACPICA: AML Parser: skip opcodes that open a scope upon parse failure + - ACPICA: Clear status of all events when entering sleep states + - drivers/block/zram/zram_drv.c: fix bug storing backing_dev + - sched: idle: Avoid retaining the tick when it has been stopped + - cpuidle: menu: Handle stopped tick more aggressively + - cpufreq: governor: Avoid accessing invalid governor_data + - PM / sleep: wakeup: Fix build error caused by missing SRCU support + - ALSA: ac97: fix device initialization in the compat layer + - ALSA: ac97: fix check of pm_runtime_get_sync failure + - ALSA: ac97: fix unbalanced pm_runtime_enable + - i2c: designware: Re-init controllers with pm_disabled set on resume + - KVM: VMX: fixes for vmentry_l1d_flush module parameter + - KVM: PPC: Book3S: Fix guest DMA when guest partially backed by THP pages + - xtensa: limit offsets in __loop_cache_{all,page} + - xtensa: increase ranges in ___invalidate_{i,d}cache_all + - block, bfq: return nbytes and not zero from struct cftype .write() method + - pnfs/blocklayout: off by one in bl_map_stripe() + - nfsd: fix leaked file lock with nfs exported overlayfs + - NFSv4 client live hangs after live data migration recovery + - NFSv4: Fix locking in pnfs_generic_recover_commit_reqs + - NFSv4: Fix a sleep in atomic context in nfs4_callback_sequence() + - ARM: tegra: Fix Tegra30 Cardhu PCA954x reset + - ARM: dts: am57xx-idk: Enable dual role for USB2 port + - pwm: omap-dmtimer: Return -EPROBE_DEFER if no dmtimer platform data + - mm/tlb: Remove tlb_remove_table() non-concurrent condition + - iommu/ipmmu-vmsa: Don't register as BUS IOMMU if machine doesn't have IPMMU- + VMSA + - iommu/vt-d: Add definitions for PFSID + - iommu/vt-d: Fix dev iotlb pfsid use + - sys: don't hold uts_sem while accessing userspace memory + - userns: move user access out of the mutex + - ubifs: Fix memory leak in lprobs self-check + - Revert "UBIFS: Fix potential integer overflow in allocation" + - ubifs: Check data node size before truncate + - ubifs: xattr: Don't operate on deleted inodes + - ubifs: Fix directory size calculation for symlinks + - ubifs: Fix synced_i_size calculation for xattr inodes + - pwm: tiehrpwm: Don't use emulation mode bits to control PWM output + - pwm: tiehrpwm: Fix disabling of output of PWMs + - fb: fix lost console when the user unplugs a USB adapter + - udlfb: fix semaphore value leak + - udlfb: fix display corruption of the last line + - udlfb: don't switch if we are switching to the same videomode + - udlfb: set optimal write delay + - udlfb: make a local copy of fb_ops + - udlfb: handle allocation failure + - udlfb: set line_length in dlfb_ops_set_par + - getxattr: use correct xattr length + - libnvdimm: Use max contiguous area for namespace size + - libnvdimm: fix ars_status output length calculation + - bcache: release dc->writeback_lock properly in bch_writeback_thread() + - kconfig: fix "Can't open ..." in parallel build + - perf auxtrace: Fix queue resize + - crypto: vmx - Fix sleep-in-atomic bugs + - crypto: aesni - Use unaligned loads from gcm_context_data + - crypto: arm64/sm4-ce - check for the right CPU feature bit + - crypto: caam - fix DMA mapping direction for RSA forms 2 & 3 + - crypto: caam/jr - fix descriptor DMA unmapping + - crypto: caam/qi - fix error path in xts setkey + - fs/quota: Fix spectre gadget in do_quotactl + - udf: Fix mounting of Win7 created UDF filesystems + - cpuidle: menu: Retain tick when shallow state is selected + - arm64: mm: always enable CONFIG_HOLES_IN_ZONE + - Linux 4.18.7 + * CVE-2017-5715 + - s390: detect etoken facility + - KVM: s390: add etoken support for guests + * Missing Intel GPU pci-id's (LP: #1789924) + - drm/i915/whl: Introducing Whiskey Lake platform + - drm/i915/aml: Introducing Amber Lake platform + - drm/i915/cfl: Add a new CFL PCI ID. + * [18.10 FEAT] Add kernel config options for SMC-R/D (LP: #1789934) + - s390/ism: add device driver for internal shared memory + - CONFIG_ISM=y for s390 + * Cosmic update to v4.18.6 stable release (LP: #1791105) + - PATCH scripts/kernel-doc + - scripts/kernel-doc: Escape all literal braces in regexes + - scsi: libsas: dynamically allocate and free ata host + - xprtrdma: Fix disconnect regression + - mei: don't update offset in write + - cifs: add missing support for ACLs in SMB 3.11 + - CIFS: fix uninitialized ptr deref in smb2 signing + - cifs: add missing debug entries for kconfig options + - cifs: use a refcount to protect open/closing the cached file handle + - cifs: check kmalloc before use + - smb3: enumerating snapshots was leaving part of the data off end + - smb3: Do not send SMB3 SET_INFO if nothing changed + - smb3: don't request leases in symlink creation and query + - smb3: fill in statfs fsid and correct namelen + - btrfs: use correct compare function of dirty_metadata_bytes + - btrfs: don't leak ret from do_chunk_alloc + - Btrfs: fix mount failure after fsync due to hard link recreation + - Btrfs: fix btrfs_write_inode vs delayed iput deadlock + - Btrfs: fix send failure when root has deleted files still open + - Btrfs: send, fix incorrect file layout after hole punching beyond eof + - hwmon: (k10temp) 27C Offset needed for Threadripper2 + - bpf, arm32: fix stack var offset in jit + - regulator: arizona-ldo1: Use correct device to get enable GPIO + - iommu/arm-smmu: Error out only if not enough context interrupts + - printk: Split the code for storing a message into the log buffer + - printk: Create helper function to queue deferred console handling + - printk/nmi: Prevent deadlock when accessing the main log buffer in NMI + - kprobes/arm64: Fix %p uses in error messages + - arm64: Fix mismatched cache line size detection + - arm64: Handle mismatched cache type + - arm64: mm: check for upper PAGE_SHIFT bits in pfn_valid() + - arm64: dts: rockchip: corrected uart1 clock-names for rk3328 + - KVM: arm/arm64: Fix potential loss of ptimer interrupts + - KVM: arm/arm64: Fix lost IRQs from emulated physcial timer when blocked + - KVM: arm/arm64: Skip updating PMD entry if no change + - KVM: arm/arm64: Skip updating PTE entry if no change + - s390/kvm: fix deadlock when killed by oom + - perf kvm: Fix subcommands on s390 + - stop_machine: Reflow cpu_stop_queue_two_works() + - stop_machine: Atomically queue and wake stopper threads + - ext4: check for NUL characters in extended attribute's name + - ext4: use ext4_warning() for sb_getblk failure + - ext4: sysfs: print ext4_super_block fields as little-endian + - ext4: reset error code in ext4_find_entry in fallback + - ext4: fix race when setting the bitmap corrupted flag + - x86/gpu: reserve ICL's graphics stolen memory + - platform/x86: wmi: Do not mix pages and kmalloc + - platform/x86: ideapad-laptop: Apply no_hw_rfkill to Y20-15IKBM, too + - mm: move tlb_table_flush to tlb_flush_mmu_free + - mm/tlb, x86/mm: Support invalidating TLB caches for RCU_TABLE_FREE + - x86/speculation/l1tf: Fix overflow in l1tf_pfn_limit() on 32bit + - x86/speculation/l1tf: Fix off-by-one error when warning that system has too + much RAM + - x86/speculation/l1tf: Suggest what to do on systems with too much RAM + - x86/vdso: Fix vDSO build if a retpoline is emitted + - x86/process: Re-export start_thread() + - KVM: x86: ensure all MSRs can always be KVM_GET/SET_MSR'd + - KVM: x86: SVM: Call x86_spec_ctrl_set_guest/host() with interrupts disabled + - fuse: Don't access pipe->buffers without pipe_lock() + - fuse: fix initial parallel dirops + - fuse: fix double request_end() + - fuse: fix unlocked access to processing queue + - fuse: umount should wait for all requests + - fuse: Fix oops at process_init_reply() + - fuse: Add missed unlock_page() to fuse_readpages_fill() + - lib/vsprintf: Do not handle %pO[^F] as %px + - udl-kms: change down_interruptible to down + - udl-kms: handle allocation failure + - udl-kms: fix crash due to uninitialized memory + - udl-kms: avoid division + - b43legacy/leds: Ensure NUL-termination of LED name string + - b43/leds: Ensure NUL-termination of LED name string + - ASoC: dpcm: don't merge format from invalid codec dai + - ASoC: zte: Fix incorrect PCM format bit usages + - ASoC: sirf: Fix potential NULL pointer dereference + - ASoC: wm_adsp: Correct DSP pointer for preloader control + - soc: qcom: rmtfs-mem: fix memleak in probe error paths + - pinctrl: freescale: off by one in imx1_pinconf_group_dbg_show() + - scsi: qla2xxx: Fix stalled relogin + - x86/vdso: Fix lsl operand order + - x86/nmi: Fix NMI uaccess race against CR3 switching + - x86/irqflags: Mark native_restore_fl extern inline + - x86/spectre: Add missing family 6 check to microcode check + - x86/speculation/l1tf: Increase l1tf memory limit for Nehalem+ + - hwmon: (nct6775) Fix potential Spectre v1 + - x86/entry/64: Wipe KASAN stack shadow before rewind_stack_do_exit() + - x86: Allow generating user-space headers without a compiler + - s390/mm: fix addressing exception after suspend/resume + - s390/lib: use expoline for all bcr instructions + - s390: fix br_r1_trampoline for machines without exrl + - s390/qdio: reset old sbal_state flags + - s390/numa: move initial setup of node_to_cpumask_map + - s390/purgatory: Fix crash with expoline enabled + - s390/purgatory: Add missing FORCE to Makefile targets + - kprobes: Show blacklist addresses as same as kallsyms does + - kprobes: Replace %p with other pointer types + - kprobes/arm: Fix %p uses in error messages + - kprobes: Make list and blacklist root user read only + - MIPS: Correct the 64-bit DSP accumulator register size + - MIPS: memset.S: Fix byte_fixup for MIPSr6 + - MIPS: Always use -march=, not - shortcuts + - MIPS: Change definition of cpu_relax() for Loongson-3 + - MIPS: lib: Provide MIPS64r6 __multi3() for GCC < 7 + - tpm: Return the actual size when receiving an unsupported command + - tpm: separate cmd_ready/go_idle from runtime_pm + - scsi: mpt3sas: Fix calltrace observed while running IO & reset + - scsi: mpt3sas: Fix _transport_smp_handler() error path + - scsi: sysfs: Introduce sysfs_{un,}break_active_protection() + - scsi: core: Avoid that SCSI device removal through sysfs triggers a deadlock + - iscsi target: fix session creation failure handling + - mtd: rawnand: hynix: Use ->exec_op() in hynix_nand_reg_write_op() + - mtd: rawnand: fsmc: Stop using chip->read_buf() + - mtd: rawnand: marvell: add suspend and resume hooks + - mtd: rawnand: qcom: wait for desc completion in all BAM channels + - clk: rockchip: fix clk_i2sout parent selection bits on rk3399 + - clk: npcm7xx: fix memory allocation + - PM / clk: signedness bug in of_pm_clk_add_clks() + - power: generic-adc-battery: fix out-of-bounds write when copying channel + properties + - power: generic-adc-battery: check for duplicate properties copied from iio + channels + - watchdog: Mark watchdog touch functions as notrace + - cdrom: Fix info leak/OOB read in cdrom_ioctl_drive_status + - x86/dumpstack: Don't dump kernel memory based on usermode RIP + - Linux 4.18.6 + - updateconfigs after v4.18.6 stable update + * random oopses on s390 systems using NVMe devices (LP: #1790480) + - s390/pci: fix out of bounds access during irq setup + * [18.10 FEAT] zcrypt DD: introduce APQN tags to support deterministic driver + binding (LP: #1784331) + - s390/zcrypt: code beautify + - s390/zcrypt: AP bus support for alternate driver(s) + - s390/zcrypt: hex string mask improvements for apmask and aqmask. + * performance drop with ATS enabled (LP: #1788097) + - powerpc/powernv: Fix concurrency issue with npu->mmio_atsd_usage + * Fix MCE handling for user access of poisoned device-dax mapping + (LP: #1774366) + - device-dax: Convert to vmf_insert_mixed and vm_fault_t + - device-dax: Enable page_mapping() + - device-dax: Set page->index + - filesystem-dax: Set page->index + - mm, madvise_inject_error: Disable MADV_SOFT_OFFLINE for ZONE_DEVICE pages + - mm, dev_pagemap: Do not clear ->mapping on final put + - mm, madvise_inject_error: Let memory_failure() optionally take a page + reference + - mm, memory_failure: Collect mapping size in collect_procs() + - filesystem-dax: Introduce dax_lock_mapping_entry() + - mm, memory_failure: Teach memory_failure() about dev_pagemap pages + - x86/mm/pat: Prepare {reserve, free}_memtype() for "decoy" addresses + - x86/memory_failure: Introduce {set, clear}_mce_nospec() + - libnvdimm, pmem: Restore page attributes when clearing errors + * Reconcile hns3 SAUCE patches with upstream (LP: #1787477) + - Revert "UBUNTU: SAUCE: {topost} net: hns3: fix comments for + hclge_get_ring_chain_from_mbx" + - Revert "UBUNTU: SAUCE: {topost} net: hns3: fix for using wrong mask and + shift in hclge_get_ring_chain_from_mbx" + - Revert "UBUNTU: SAUCE: {topost} net: hns3: fix for reset_level default + assignment probelm" + - Revert "UBUNTU: SAUCE: {topost} net: hns3: remove unnecessary ring + configuration operation while resetting" + - Revert "UBUNTU: SAUCE: {topost} net: hns3: fix return value error in + hns3_reset_notify_down_enet" + - Revert "UBUNTU: SAUCE: net: hns3: Fix for phy link issue when using marvell + phy driver" + - Revert "UBUNTU: SAUCE: {topost} net: hns3: separate roce from nic when + resetting" + - Revert "UBUNTU: SAUCE: {topost} net: hns3: correct reset event status + register" + - Revert "UBUNTU: SAUCE: {topost} net: hns3: prevent to request reset + frequently" + - Revert "UBUNTU: SAUCE: {topost} net: hns3: reset net device with rtnl_lock" + - Revert "UBUNTU: SAUCE: {topost} net: hns3: modify the order of initializeing + command queue register" + - Revert "UBUNTU: SAUCE: {topost} net: hns3: prevent sending command during + global or core reset" + - Revert "UBUNTU: SAUCE: {topost} net: hns3: Use roce handle when calling roce + callback function" + - Revert "UBUNTU: SAUCE: {topost} net: hns3: remove the warning when clear + reset cause" + - Revert "UBUNTU: SAUCE: {topost} net: hns3: fix get_vector ops in + hclgevf_main module" + - Revert "UBUNTU: SAUCE: {topost} net: hns3: fix warning bug when doing lp + selftest" + - Revert "UBUNTU: SAUCE: {topost} net: hns3: Add configure for mac minimal + frame size" + - Revert "UBUNTU: SAUCE: {topost} net: hns3: fix for mailbox message truncated + problem" + - Revert "UBUNTU: SAUCE: {topost} net: hns3: fix for l4 checksum offload bug" + - Revert "UBUNTU: SAUCE: {topost} net: hns3: fix for waterline not setting + correctly" + - Revert "UBUNTU: SAUCE: {topost} net: hns3: fix for mac pause not disable in + pfc mode" + - Revert "UBUNTU: SAUCE: {topost} net: hns3: fix tc setup when netdev is first + up" + - Revert "UBUNTU: SAUCE: {topost} net: hns3: Add calling roce callback + function when link status change" + - Revert "UBUNTU: SAUCE: {topost} net: hns3: optimize the process of notifying + roce client" + - Revert "UBUNTU: SAUCE: {topost} net: hns3: Add pf reset for hip08 RoCE" + - Revert "UBUNTU: SAUCE: {topost} net: hns3: Add SPDX tags to hns3 driver" + - Revert "UBUNTU: SAUCE: {topost} net: hns3: remove unused struct member and + definition" + - Revert "UBUNTU: SAUCE: {topost} net: hns3: fix mislead parameter name" + - Revert "UBUNTU: SAUCE: {topost} net: hns3: modify inconsistent bit mask + macros" + - Revert "UBUNTU: SAUCE: {topost} net: hns3: use decimal for bit offset + macros" + - Revert "UBUNTU: SAUCE: {topost} net: hns3: fix unreasonable code comments" + - Revert "UBUNTU: SAUCE: {topost} net: hns3: remove extra space and brackets" + - Revert "UBUNTU: SAUCE: {topost} net: hns3: standardize the handle of return + value" + - Revert "UBUNTU: SAUCE: {topost} net: hns3: remove some redundant + assignments" + - Revert "UBUNTU: SAUCE: {topost} net: hns3: modify hnae_ to hnae3_" + - Revert "UBUNTU: SAUCE: {topost} net: hns3: use dma_zalloc_coherent instead + of kzalloc/dma_map_single" + - Revert "UBUNTU: SAUCE: {topost} net: hns3: give default option while + dependency HNS3 set" + - Revert "UBUNTU: SAUCE: {topost} net: hns3: remove some unused members of + some structures" + - Revert "UBUNTU: SAUCE: {topost} net: hns3: remove a redundant + hclge_cmd_csq_done" + - Revert "UBUNTU: SAUCE: {topost} net: hns3: using modulo for cyclic counters + in hclge_cmd_send" + - Revert "UBUNTU: SAUCE: {topost} net: hns3: simplify hclge_cmd_csq_clean" + - Revert "UBUNTU: SAUCE: {topost} net: hns3: remove some redundant + assignments" + - Revert "UBUNTU: SAUCE: {topost} net: hns3: remove useless code in + hclge_cmd_send" + - Revert "UBUNTU: SAUCE: {topost} net: hns3: remove unused + hclge_ring_to_dma_dir" + - Revert "UBUNTU: SAUCE: {topost} net: hns3: use lower_32_bits and + upper_32_bits" + - Revert "UBUNTU: SAUCE: {topost} net: hns3: remove back in struct hclge_hw" + - Revert "UBUNTU: SAUCE: {topost} net: hns3: add unlikely for error check" + - Revert "UBUNTU: SAUCE: {topost} net: hns3: remove the Redundant put_vector + in hns3_client_uninit" + - Revert "UBUNTU: SAUCE: {topost} net: hns3: print the ret value in error + information" + - Revert "UBUNTU: SAUCE: {topost} net: hns3: extraction an interface for state + state init|uninit" + - Revert "UBUNTU: SAUCE: {topost} net: hns3: remove unused head file in + hnae3.c" + - Revert "UBUNTU: SAUCE: {topost} net: hns3: add l4_type check for both ipv4 + and ipv6" + - Revert "UBUNTU: SAUCE: {topost} net: hns3: add vector status check before + free vector" + - Revert "UBUNTU: SAUCE: {topost} net: hns3: rename the interface for + init_client_instance and uninit_client_instance" + - Revert "UBUNTU: SAUCE: {topost} net: hns3: remove hclge_get_vector_index + from hclge_bind_ring_with_vector" + - Revert "UBUNTU: SAUCE: {topost} net: hns3: RX BD information valid only in + last BD except VLD bit and buffer size" + - Revert "UBUNTU: SAUCE: {topost} net: hns3: add support for serdes loopback + selftest" + - net: hns3: Updates RX packet info fetch in case of multi BD + - net: hns3: remove hclge_get_vector_index from hclge_bind_ring_with_vector + - net: hns3: rename the interface for init_client_instance and + uninit_client_instance + - net: hns3: add vector status check before free vector + - net: hns3: add l4_type check for both ipv4 and ipv6 + - net: hns3: add unlikely for error check + - net: hns3: remove unused head file in hnae3.c + - net: hns3: extraction an interface for state init|uninit + - net: hns3: print the ret value in error information + - net: hns3: remove the Redundant put_vector in hns3_client_uninit + - net: hns3: remove back in struct hclge_hw + - net: hns3: use lower_32_bits and upper_32_bits + - net: hns3: remove unused hclge_ring_to_dma_dir + - net: hns3: remove useless code in hclge_cmd_send + - net: hns3: remove some redundant assignments + - net: hns3: simplify hclge_cmd_csq_clean + - net: hns3: remove a redundant hclge_cmd_csq_done + - net: hns3: remove some unused members of some structures + - net: hns3: give default option while dependency HNS3 set + - net: hns3: use dma_zalloc_coherent instead of kzalloc/dma_map_single + - net: hns3: modify hnae_ to hnae3_ + - net: hns3: Fix tc setup when netdev is first up + - net: hns3: Fix for mac pause not disable in pfc mode + - net: hns3: Fix for waterline not setting correctly + - net: hns3: Fix for l4 checksum offload bug + - net: hns3: Fix for mailbox message truncated problem + - net: hns3: Add configure for mac minimal frame size + - net: hns3: Fix warning bug when doing lp selftest + - net: hns3: Fix get_vector ops in hclgevf_main module + - net: hns3: Remove the warning when clear reset cause + - net: hns3: Prevent sending command during global or core reset + - net: hns3: Modify the order of initializing command queue register + - net: hns3: Reset net device with rtnl_lock + - net: hns3: Prevent to request reset frequently + - net: hns3: Correct reset event status register + - net: hns3: Fix return value error in hns3_reset_notify_down_enet + - net: hns3: remove unnecessary ring configuration operation while resetting + - net: hns3: Fix for reset_level default assignment probelm + - net: hns3: Fix for using wrong mask and shift in + hclge_get_ring_chain_from_mbx + - net: hns3: Fix comments for hclge_get_ring_chain_from_mbx + - net: hns3: Remove some redundant assignments + - net: hns3: Standardize the handle of return value + - net: hns3: Remove extra space and brackets + - net: hns3: Correct unreasonable code comments + - net: hns3: Use decimal for bit offset macros + - net: hns3: Modify inconsistent bit mask macros + - net: hns3: Fix misleading parameter name + - net: hns3: Remove unused struct member and definition + - net: hns3: Add SPDX tags to HNS3 PF driver + - net: hns3: Add support for serdes loopback selftest + - net: hns3: Fix for phy link issue when using marvell phy driver + * [Regression] kernel crashdump fails on arm64 (LP: #1786878) + - arm64: export memblock_reserve()d regions via /proc/iomem + - drivers: acpi: add dependency of EFI for arm64 + - efi/arm: preserve early mapping of UEFI memory map longer for BGRT + - efi/arm: map UEFI memory map even w/o runtime services enabled + - arm64: acpi: fix alignment fault in accessing ACPI + - [Config] CONFIG_ARCH_SUPPORTS_ACPI=y + - arm64: fix ACPI dependencies + - ACPI: fix menuconfig presentation of ACPI submenu + * TB 16 issue on Dell Lattitude 7490 with large amount of data (LP: #1785780) + - r8152: disable RX aggregation on new Dell TB16 dock + * Support Power Management for Thunderbolt Controller (LP: #1789358) + - thunderbolt: Use 64-bit DMA mask if supported by the platform + - thunderbolt: Do not unnecessarily call ICM get route + - thunderbolt: No need to take tb->lock in domain suspend/complete + - thunderbolt: Use correct ICM commands in system suspend + - thunderbolt: Add support for runtime PM + * Enable AMD PCIe MP2 for AMDI0011 (LP: #1773940) + - SAUCE: i2c:amd I2C Driver based on PCI Interface for upcoming platform + - SAUCE: i2c:amd move out pointer in union i2c_event_base + - SAUCE: i2c:amd Depends on ACPI + - [Config] i2c: CONFIG_I2C_AMD_MP2=y on x86 + * Microphone cannot be detected with front panel audio combo jack on HP Z8-G4 + machine (LP: #1789145) + - ALSA: hda/realtek - Fix HP Headset Mic can't record + * Please enable CONFIG_PAGE_POISONING (LP: #1783651) + - [Config] Enable CONFIG_PAGE_POISONING configs + * Tango platform uses __initcall without further checks (LP: #1787945) + - [Config] disable ARCH_TANGO + * [18.10 FEAT] SMC-Direct (LP: #1786902) + - net/smc: determine port attributes independent from pnet table + - net/smc: add pnetid support + - net/smc: add base infrastructure for SMC-D and ISM + - net/smc: add pnetid support for SMC-D and ISM + - net/smc: add SMC-D support in CLC messages + - net/smc: add SMC-D support in data transfer + - net/smc: add SMC-D support in af_smc + - net/smc: add SMC-D diag support + - net/smc: provide smc mode in smc_diag.c + - net/smc: eliminate cursor read and write calls + - net/smc: add function to get link group from link + - net/smc: use DECLARE_BITMAP for rtokens_used_mask + - net/smc: remove local variable page in smc_rx_splice() + - net/smc: Remove a WARN_ON() statement + - net/smc: Simplify ib_post_(send|recv|srq_recv)() calls + - net/smc: fewer parameters for smc_llc_send_confirm_link() + - net/smc: use correct vlan gid of RoCE device + - net/smc: provide fallback reason code + - net/smc: improve delete link processing + - net: simplify sock_poll_wait + - net/smc: send response to test link signal + * Miscellaneous Ubuntu changes + - [Config] update annotations for CONFIG_CRYPTO_SPECK_NEON + - [Config] fix up annotatios for CONFIG_CRYPTO_SPECK + + -- Marcelo Henrique Cerri Mon, 17 Sep 2018 10:52:13 -0300 + +linux-azure (4.18.0-1001.1) cosmic; urgency=medium + + * linux-azure: 4.18.0-1001.1 -proposed tracker (LP: #1791377) + + * linux-azure: make sure CONFIG_MLX{4,5}_INFINIBAND stays as "y" + (LP: #1785822) + - [Config] azure: Ensure CONFIG_MLX5_INFINIBAND=y + + * Miscellaneous Ubuntu changes + - SAUCE: vmbus-rdma: do not use rdma_addr_{un,}register_client anymore + - [Config] updateconfigs after rebase to Ubuntu-4.18.0-7.8 + + [ Ubuntu: 4.18.0-7.8 ] + + * linux: 4.18.0-7.8 -proposed tracker (LP: #1789459) + * pmtu.sh fails on 4.18 kernel (LP: #1789436) + - SAUCE: Revert "vti6: fix PMTU caching and reporting on xmit" + + [ Ubuntu: 4.18.0-6.7 ] + + * linux: 4.18.0-6.7 -proposed tracker (LP: #1788881) + * systemd 237-3ubuntu10 ADT test failure with linux 4.18.0-5.6 (LP: #1787440) + - Config: Disable BPF_JIT_ALWAYS_ON on i386 + * execveat03 in ubuntu_ltp_syscalls failed on X/B (LP: #1786729) + - cap_inode_getsecurity: use d_find_any_alias() instead of d_find_alias() + * Cosmic update to v4.18.5 stable release (LP: #1788874) + - EDAC: Add missing MEM_LRDDR4 entry in edac_mem_types[] + - pty: fix O_CLOEXEC for TIOCGPTPEER + - mm: Allow non-direct-map arguments to free_reserved_area() + - x86/mm/init: Pass unconverted symbol addresses to free_init_pages() + - x86/mm/init: Add helper for freeing kernel image pages + - x86/mm/init: Remove freed kernel image areas from alias mapping + - powerpc64s: Show ori31 availability in spectre_v1 sysfs file not v2 + - ext4: fix spectre gadget in ext4_mb_regular_allocator() + - drm/i915/kvmgt: Fix potential Spectre v1 + - drm/amdgpu/pm: Fix potential Spectre v1 + - parisc: Remove unnecessary barriers from spinlock.h + - parisc: Remove ordered stores from syscall.S + - PCI: Restore resized BAR state on resume + - PCI / ACPI / PM: Resume all bridges on suspend-to-RAM + - PCI: hotplug: Don't leak pci_slot on registration failure + - PCI: aardvark: Size bridges before resources allocation + - PCI: Skip MPS logic for Virtual Functions (VFs) + - PCI: pciehp: Fix use-after-free on unplug + - PCI: pciehp: Fix unprotected list iteration in IRQ handler + - i2c: core: ACPI: Properly set status byte to 0 for multi-byte writes + - i2c: imx: Fix race condition in dma read + - reiserfs: fix broken xattr handling (heap corruption, bad retval) + - Linux 4.18.5 + * [18.10 FEAT] Add kernel config option "CONFIG_SCLP_OFB" (LP: #1787898) + - [Config] CONFIG_SCLP_OFB=y for s390x + * errors when scanning partition table of corrupted AIX disk (LP: #1787281) + - partitions/aix: fix usage of uninitialized lv_info and lvname structures + - partitions/aix: append null character to print data from disk + * Apply NVMe bugfix from Google that bjf asked for (LP: #1787635) + - nvme-pci: add a memory barrier to nvme_dbbuf_update_and_check_event + * ThinkPad systems have no HDMI sound when using the nvidia GPU (LP: #1787058) + - ACPI / OSI: Add OEM _OSI string to enable NVidia HDMI audio + * Cosmic update to v4.18.4 stable release (LP: #1788454) + - l2tp: use sk_dst_check() to avoid race on sk->sk_dst_cache + - net_sched: fix NULL pointer dereference when delete tcindex filter + - net_sched: Fix missing res info when create new tc_index filter + - r8169: don't use MSI-X on RTL8168g + - ALSA: hda - Sleep for 10ms after entering D3 on Conexant codecs + - ALSA: hda - Turn CX8200 into D3 as well upon reboot + - ALSA: vx222: Fix invalid endian conversions + - ALSA: virmidi: Fix too long output trigger loop + - ALSA: cs5535audio: Fix invalid endian conversion + - ALSA: dice: fix wrong copy to rx parameters for Alesis iO26 + - ALSA: hda: Correct Asrock B85M-ITX power_save blacklist entry + - ALSA: memalloc: Don't exceed over the requested size + - ALSA: vxpocket: Fix invalid endian conversions + - ALSA: seq: Fix poll() error return + - media: gl861: fix probe of dvb_usb_gl861 + - USB: serial: sierra: fix potential deadlock at close + - USB: serial: pl2303: add a new device id for ATEN + - USB: option: add support for DW5821e + - ACPI / PM: save NVS memory for ASUS 1025C laptop + - tty: serial: 8250: Revert NXP SC16C2552 workaround + - serial: 8250_exar: Read INT0 from slave device, too + - serial: 8250_dw: always set baud rate in dw8250_set_termios + - serial: 8250_dw: Add ACPI support for uart on Broadcom SoC + - uio: fix wrong return value from uio_mmap() + - misc: sram: fix resource leaks in probe error path + - Revert "uio: use request_threaded_irq instead" + - Bluetooth: avoid killing an already killed socket + - isdn: Disable IIOCDBGVAR + - net: sock_diag: Fix spectre v1 gadget in __sock_diag_cmd() + - hv/netvsc: Fix NULL dereference at single queue mode fallback + - r8169: don't use MSI-X on RTL8106e + - ip_vti: fix a null pointer deferrence when create vti fallback tunnel + - net: ethernet: mvneta: Fix napi structure mixup on armada 3700 + - net: mvneta: fix mvneta_config_rss on armada 3700 + - cls_matchall: fix tcf_unbind_filter missing + - Linux 4.18.4 + * Cosmic update to v4.18.3 stable release (LP: #1788453) + - x86/speculation/l1tf: Exempt zeroed PTEs from inversion + - Linux 4.18.3 + * Cosmic update to v4.18.2 stable release (LP: #1788452) + - x86/l1tf: Fix build error seen if CONFIG_KVM_INTEL is disabled + - x86: i8259: Add missing include file + - x86/hyper-v: Check for VP_INVAL in hyperv_flush_tlb_others() + - x86/platform/UV: Mark memblock related init code and data correctly + - x86/mm/pti: Clear Global bit more aggressively + - xen/pv: Call get_cpu_address_sizes to set x86_virt/phys_bits + - x86/mm: Disable ioremap free page handling on x86-PAE + - kbuild: verify that $DEPMOD is installed + - crypto: ccree - fix finup + - crypto: ccree - fix iv handling + - crypto: ccp - Check for NULL PSP pointer at module unload + - crypto: ccp - Fix command completion detection race + - crypto: x86/sha256-mb - fix digest copy in sha256_mb_mgr_get_comp_job_avx2() + - crypto: vmac - require a block cipher with 128-bit block size + - crypto: vmac - separate tfm and request context + - crypto: blkcipher - fix crash flushing dcache in error path + - crypto: ablkcipher - fix crash flushing dcache in error path + - crypto: skcipher - fix aligning block size in skcipher_copy_iv() + - crypto: skcipher - fix crash flushing dcache in error path + - ioremap: Update pgtable free interfaces with addr + - x86/mm: Add TLB purge to free pmd/pte page interfaces + - Linux 4.18.2 + * Cosmic update to v4.18.2 stable release (LP: #1788452) // CVE-2018-9363 + - Bluetooth: hidp: buffer overflow in hidp_process_report + * linux-cloud-tools-common: Ensure hv-kvp-daemon.service starts before + walinuxagent.service (LP: #1739107) + - [Debian] hyper-v -- Ensure that hv-kvp-daemon.service starts before + walinuxagent.service + * Miscellaneous Ubuntu changes + - SAUCE: ipvs: remove nbsp characters from Kconfig + - [Config] CONFIG_MPROFILE_KERNEL=y for ppc64el + - [Config] CONFIG_DRM_RCAR_LVDS=m for snapdragon + - [Config] CONFIG_MDIO_MSCC_MIIM=n for s390x + - [Config] CONFIG_NET_VENDOR_MICROSEMI=n, CONFIG_NET_VENDOR_NI=n for s390x + - [Config] update annotations following config review + - [Debian] set CROSS_COMPILE when generating kernel configs + - [Config] Disable the Speck cipher + + [ Ubuntu: 4.18.0-5.6 ] + + * Cosmic update to v4.18.1 stable release (LP: #1787264) + - x86/paravirt: Fix spectre-v2 mitigations for paravirt guests + - x86/speculation: Protect against userspace-userspace spectreRSB + - kprobes/x86: Fix %p uses in error messages + - x86/irqflags: Provide a declaration for native_save_fl + - x86/speculation/l1tf: Increase 32bit PAE __PHYSICAL_PAGE_SHIFT + - x86/speculation/l1tf: Change order of offset/type in swap entry + - x86/speculation/l1tf: Protect swap entries against L1TF + - x86/speculation/l1tf: Protect PROT_NONE PTEs against speculation + - x86/speculation/l1tf: Make sure the first page is always reserved + - x86/speculation/l1tf: Add sysfs reporting for l1tf + - x86/speculation/l1tf: Disallow non privileged high MMIO PROT_NONE mappings + - x86/speculation/l1tf: Limit swap file size to MAX_PA/2 + - x86/bugs: Move the l1tf function and define pr_fmt properly + - sched/smt: Update sched_smt_present at runtime + - x86/smp: Provide topology_is_primary_thread() + - x86/topology: Provide topology_smt_supported() + - cpu/hotplug: Make bringup/teardown of smp threads symmetric + - cpu/hotplug: Split do_cpu_down() + - cpu/hotplug: Provide knobs to control SMT + - x86/cpu: Remove the pointless CPU printout + - x86/cpu/AMD: Remove the pointless detect_ht() call + - x86/cpu/common: Provide detect_ht_early() + - x86/cpu/topology: Provide detect_extended_topology_early() + - x86/cpu/intel: Evaluate smp_num_siblings early + - x86/CPU/AMD: Do not check CPUID max ext level before parsing SMP info + - x86/cpu/AMD: Evaluate smp_num_siblings early + - x86/apic: Ignore secondary threads if nosmt=force + - x86/speculation/l1tf: Extend 64bit swap file size limit + - x86/cpufeatures: Add detection of L1D cache flush support. + - x86/CPU/AMD: Move TOPOEXT reenablement before reading smp_num_siblings + - x86/speculation/l1tf: Protect PAE swap entries against L1TF + - x86/speculation/l1tf: Fix up pte->pfn conversion for PAE + - Revert "x86/apic: Ignore secondary threads if nosmt=force" + - cpu/hotplug: Boot HT siblings at least once + - x86/KVM: Warn user if KVM is loaded SMT and L1TF CPU bug being present + - x86/KVM/VMX: Add module argument for L1TF mitigation + - x86/KVM/VMX: Add L1D flush algorithm + - x86/KVM/VMX: Add L1D MSR based flush + - x86/KVM/VMX: Add L1D flush logic + - x86/KVM/VMX: Split the VMX MSR LOAD structures to have an host/guest numbers + - x86/KVM/VMX: Add find_msr() helper function + - x86/KVM/VMX: Separate the VMX AUTOLOAD guest/host number accounting + - x86/KVM/VMX: Extend add_atomic_switch_msr() to allow VMENTER only MSRs + - x86/KVM/VMX: Use MSR save list for IA32_FLUSH_CMD if required + - cpu/hotplug: Online siblings when SMT control is turned on + - x86/litf: Introduce vmx status variable + - x86/kvm: Drop L1TF MSR list approach + - x86/l1tf: Handle EPT disabled state proper + - x86/kvm: Move l1tf setup function + - x86/kvm: Add static key for flush always + - x86/kvm: Serialize L1D flush parameter setter + - x86/kvm: Allow runtime control of L1D flush + - cpu/hotplug: Expose SMT control init function + - cpu/hotplug: Set CPU_SMT_NOT_SUPPORTED early + - x86/bugs, kvm: Introduce boot-time control of L1TF mitigations + - Documentation: Add section about CPU vulnerabilities + - x86/speculation/l1tf: Unbreak !__HAVE_ARCH_PFN_MODIFY_ALLOWED architectures + - x86/KVM/VMX: Initialize the vmx_l1d_flush_pages' content + - Documentation/l1tf: Fix typos + - cpu/hotplug: detect SMT disabled by BIOS + - x86/KVM/VMX: Don't set l1tf_flush_l1d to true from vmx_l1d_flush() + - x86/KVM/VMX: Replace 'vmx_l1d_flush_always' with 'vmx_l1d_flush_cond' + - x86/KVM/VMX: Move the l1tf_flush_l1d test to vmx_l1d_flush() + - x86/irq: Demote irq_cpustat_t::__softirq_pending to u16 + - x86/KVM/VMX: Introduce per-host-cpu analogue of l1tf_flush_l1d + - x86: Don't include linux/irq.h from asm/hardirq.h + - x86/irq: Let interrupt handlers set kvm_cpu_l1tf_flush_l1d + - x86/KVM/VMX: Don't set l1tf_flush_l1d from vmx_handle_external_intr() + - Documentation/l1tf: Remove Yonah processors from not vulnerable list + - x86/speculation: Simplify sysfs report of VMX L1TF vulnerability + - x86/speculation: Use ARCH_CAPABILITIES to skip L1D flush on vmentry + - KVM: VMX: Tell the nested hypervisor to skip L1D flush on vmentry + - cpu/hotplug: Fix SMT supported evaluation + - x86/speculation/l1tf: Invert all not present mappings + - x86/speculation/l1tf: Make pmd/pud_mknotpresent() invert + - x86/mm/pat: Make set_memory_np() L1TF safe + - x86/mm/kmmio: Make the tracer robust against L1TF + - tools headers: Synchronise x86 cpufeatures.h for L1TF additions + - x86/microcode: Allow late microcode loading with SMT disabled + - x86/smp: fix non-SMP broken build due to redefinition of + apic_id_is_primary_thread + - cpu/hotplug: Non-SMP machines do not make use of booted_once + - x86/init: fix build with CONFIG_SWAP=n + - Linux 4.18.1 + - [Config] updateconfigs after v4.18.1 stable update + * Consider enabling CONFIG_NETWORK_PHY_TIMESTAMPING (LP: #1785816) + - [Config] Enable timestamping in network PHY devices + * Miscellaneous Ubuntu changes + - [Config] CONFIG_SYSCTL_SYSCALL=n + * Rebase to v4.18 + + [ Ubuntu: 4.18.0-4.5 ] + + * Rebase to v4.18-rc8 + + [ Ubuntu: 4.18.0-3.4 ] + + * Suspend fails in Ubuntu and Kubuntu 18.04 but works fine in Ubuntu and + Kubuntu 17.10 (and on Kubuntu 18.04 using kernel 4.14.47) (LP: #1774950) + - ACPI / LPSS: Avoid PM quirks on suspend and resume from hibernation + * hinic interfaces aren't getting predictable names (LP: #1783138) + - hinic: Link the logical network device to the pci device in sysfs + * libvirtd is unable to configure bridge devices inside of LXD containers + (LP: #1784501) + - kernfs: allow creating kernfs objects with arbitrary uid/gid + - sysfs, kobject: allow creating kobject belonging to arbitrary users + - kobject: kset_create_and_add() - fetch ownership info from parent + - driver core: set up ownership of class devices in sysfs + - net-sysfs: require net admin in the init ns for setting tx_maxrate + - net-sysfs: make sure objects belong to container's owner + - net: create reusable function for getting ownership info of sysfs inodes + - bridge: make sure objects belong to container's owner + - sysfs: Fix regression when adding a file to an existing group + * locking sockets broken due to missing AppArmor socket mediation patches + (LP: #1780227) + - UBUNTU SAUCE: apparmor: fix apparmor mediating locking non-fs, unix sockets + * Update2 for ocxl driver (LP: #1781436) + - ocxl: Fix page fault handler in case of fault on dying process + * HDMI/DP audio can't work on the laptop of Dell Latitude 5495 (LP: #1782689) + - ALSA: hda: use PCI_BASE_CLASS_DISPLAY to replace PCI_CLASS_DISPLAY_VGA + - vga_switcheroo: set audio client id according to bound GPU id + * Allow Raven Ridge's audio controller to be runtime suspended (LP: #1782540) + - ALSA: hda: Add AZX_DCAPS_PM_RUNTIME for AMD Raven Ridge + * Invoking obsolete 'firmware_install' target breaks snap build (LP: #1782166) + - snapcraft.yaml: stop invoking the obsolete (and non-existing) + 'firmware_install' target + * snapcraft.yaml: missing ubuntu-retpoline-extract-one script breaks the build + (LP: #1782116) + - snapcraft.yaml: copy retpoline-extract-one to scripts before build + * Rebase to v4.18-rc7 + + [ Ubuntu: 4.18.0-2.3 ] + + * Kernel error "task zfs:pid blocked for more than 120 seconds" (LP: #1781364) + - SAUCE: (noup) zfs to 0.7.9-3ubuntu4 + * [Regression] EXT4-fs error (device sda1): ext4_validate_inode_bitmap:99: + comm stress-ng: Corrupt inode bitmap (LP: #1780137) + - SAUCE: ext4: fix ext4_validate_inode_bitmap: comm stress-ng: Corrupt inode + bitmap + * Cloud-init causes potentially huge boot delays with 4.15 kernels + (LP: #1780062) + - random: Make getrandom() ready earlier + * hisi_sas_v3_hw: internal task abort: timeout and not done. (LP: #1777736) + - scsi: hisi_sas: Update a couple of register settings for v3 hw + * hisi_sas: Add missing PHY spinlock init (LP: #1777734) + - scsi: hisi_sas: Add missing PHY spinlock init + * hisi_sas: improve read performance by pre-allocating slot DMA buffers + (LP: #1777727) + - scsi: hisi_sas: Use dmam_alloc_coherent() + - scsi: hisi_sas: Pre-allocate slot DMA buffers + * hisi_sas: Failures during host reset (LP: #1777696) + - scsi: hisi_sas: Only process broadcast change in phy_bcast_v3_hw() + - scsi: hisi_sas: Fix the conflict between dev gone and host reset + - scsi: hisi_sas: Adjust task reject period during host reset + - scsi: hisi_sas: Add a flag to filter PHY events during reset + - scsi: hisi_sas: Release all remaining resources in clear nexus ha + * Miscellaneous Ubuntu changes + - SAUCE: (noup) Update spl to 0.7.9-3ubuntu2, zfs to 0.7.9-3ubuntu3 + - SAUCE: mm: Fix exports that inadvertently make put_page() EXPORT_SYMBOL_GPL + - Enable zfs build + - SAUCE: Import aufs driver + - Revert "UBUNTU: [Config]: set CONFIG_EDAC_DEBUG=y for ARM64" + - [Config] retpoline -- review and accept retpoline changes + * Rebase to v4.18-rc5 + * Rebase to v4.18-rc6 + + [ Ubuntu: 4.18.0-1.2 ] + + * Rebase to v4.18-rc4 + + [ Ubuntu: 4.18.0-0.1 ] + + * Miscellaneous Ubuntu changes + - ubuntu -- disable vbox build + - Disable zfs build + - SAUCE: (efi-lockdown) Add the ability to lock down access to the running + kernel image + - SAUCE: (efi-lockdown) Add a SysRq option to lift kernel lockdown + - SAUCE: (efi-lockdown) ima: require secure_boot rules in lockdown mode + - SAUCE: (efi-lockdown) Enforce module signatures if the kernel is locked down + - SAUCE: (efi-lockdown) Restrict /dev/{mem,kmem,port} when the kernel is + locked down + - SAUCE: (efi-lockdown) kexec_load: Disable at runtime if the kernel is locked + down + - SAUCE: (efi-lockdown) hibernate: Disable when the kernel is locked down + - SAUCE: (efi-lockdown) uswsusp: Disable when the kernel is locked down + - SAUCE: (efi-lockdown) PCI: Lock down BAR access when the kernel is locked + down + - SAUCE: (efi-lockdown) x86: Lock down IO port access when the kernel is + locked down + - SAUCE: (efi-lockdown) x86/msr: Restrict MSR access when the kernel is locked + down + - SAUCE: (efi-lockdown) ACPI: Limit access to custom_method when the kernel is + locked down + - SAUCE: (efi-lockdown) acpi: Ignore acpi_rsdp kernel param when the kernel + has been locked down + - SAUCE: (efi-lockdown) acpi: Disable ACPI table override if the kernel is + locked down + - SAUCE: (efi-lockdown) acpi: Disable APEI error injection if the kernel is + locked down + - SAUCE: (efi-lockdown) Prohibit PCMCIA CIS storage when the kernel is locked + down + - SAUCE: (efi-lockdown) Lock down TIOCSSERIAL + - SAUCE: (efi-lockdown) Lock down module params that specify hardware + parameters (eg. ioport) + - SAUCE: (efi-lockdown) x86/mmiotrace: Lock down the testmmiotrace module + - SAUCE: (efi-lockdown) Lock down /proc/kcore + - SAUCE: (efi-lockdown) Lock down kprobes + - SAUCE: (efi-lockdown) bpf: Restrict kernel image access functions when the + kernel is locked down + - SAUCE: (efi-lockdown) Lock down perf + - SAUCE: (efi-lockdown) debugfs: Restrict debugfs when the kernel is locked + down + - SAUCE: (efi-lockdown) Copy secure_boot flag in boot params across kexec + reboot + - SAUCE: (efi-lockdown) efi: Add an EFI_SECURE_BOOT flag to indicate secure + boot mode + - SAUCE: (efi-lockdown) efi: Lock down the kernel if booted in secure boot + mode + - SAUCE: (efi-lockdown) KEYS: Allow unrestricted boot-time addition of keys to + secondary keyring + - SAUCE: (efi-lockdown) efi: Add EFI signature data types + - SAUCE: (efi-lockdown) efi: Add an EFI signature blob parser + - SAUCE: (efi-lockdown) MODSIGN: Import certificates from UEFI Secure Boot + - SAUCE: (efi-lockdown) MODSIGN: Allow the "db" UEFI variable to be suppressed + - SAUCE: (efi-lockdown) Make get_cert_list() not complain about cert lists + that aren't present. + - SAUCE: (efi-lockdown) Add efi_status_to_str() and rework + efi_status_to_err(). + - SAUCE: (efi-lockdown) Make get_cert_list() use efi_status_to_str() to print + error messages. + - SAUCE: (efi-lockdown) lockdown: fix coordination of kernel module signature + verification + - SAUCE: (efi-lockdown) efi: Sanitize boot_params in efi stub + - SAUCE: (efi-lockdown) efi: Don't print secure boot state from the efi stub + - SAUCE: (namespace) block_dev: Support checking inode permissions in + lookup_bdev() + - SAUCE: (namespace) block_dev: Check permissions towards block device inode + when mounting + - SAUCE: (namespace) mtd: Check permissions towards mtd block device inode + when mounting + - SAUCE: (namespace) ext4: Add support for unprivileged mounts from user + namespaces + - SAUCE: (namespace) ext4: Add module parameter to enable user namespace + mounts + - SAUCE: (namespace) block_dev: Forbid unprivileged mounting when device is + opened for writing + - SAUCE: Import aufs driver + - Update dropped.txt + - [Config] updateconfigs after 4.18-rc3 rebase + - SAUCE: (no-up): ASoC: Intel: bytcr-rt5660: Remove snd_soc_codec use for 4.18 + * Rebase to v4.18-rc3 + + [ Ubuntu: 4.18.0-0.0 ] + + * Dummy entry. + + -- Marcelo Henrique Cerri Fri, 07 Sep 2018 18:01:04 -0300 + +linux-azure (4.18.0-1000.0) cosmic; urgency=medium + + * Kernel 4.18. + + -- Marcelo Henrique Cerri Fri, 07 Sep 2018 14:41:00 -0300 + +linux-azure (4.17.0-1001.1) cosmic; urgency=medium + + * linux-azure: 4.17.0-1001.1 -proposed tracker (LP: #1783766) + + * Miscellaneous Ubuntu changes + - [Config] updateconfigs after rebase to Ubuntu-4.17.0-4.5 + - [Config] updateconfigs after rebase to Ubuntu-4.17.0-6.7 + + [ Ubuntu: 4.17.0-6.7 ] + + * linux: 4.17.0-6.7 -proposed tracker (LP: #1783396) + * [Regression] EXT4-fs error (device sda2): ext4_validate_block_bitmap:383: + comm stress-ng: bg 4705: bad block bitmap checksum (LP: #1781709) + - SAUCE: Revert "UBUNTU: SAUCE: ext4: fix ext4_validate_inode_bitmap: comm + stress-ng: Corrupt inode bitmap" + - SAUCE: ext4: check for allocation block validity with block group locked + * Cosmic update to 4.17.9 stable release (LP: #1783201) + - userfaultfd: hugetlbfs: fix userfaultfd_huge_must_wait() pte access + - mm: hugetlb: yield when prepping struct pages + - mm: teach dump_page() to correctly output poisoned struct pages + - PCI / ACPI / PM: Resume bridges w/o drivers on suspend-to-RAM + - ACPICA: Drop leading newlines from error messages + - ACPI / battery: Safe unregistering of hooks + - drm/amdgpu: Make struct amdgpu_atif private to amdgpu_acpi.c + - tracing: Avoid string overflow + - tracing: Fix missing return symbol in function_graph output + - scsi: sg: mitigate read/write abuse + - scsi: aacraid: Fix PD performance regression over incorrect qd being set + - scsi: target: Fix truncated PR-in ReadKeys response + - s390: Correct register corruption in critical section cleanup + - drbd: fix access after free + - vfio: Use get_user_pages_longterm correctly + - ARM: dts: imx51-zii-rdu1: fix touchscreen pinctrl + - ARM: dts: omap3: Fix am3517 mdio and emac clock references + - ARM: dts: dra7: Disable metastability workaround for USB2 + - cifs: Fix use after free of a mid_q_entry + - cifs: Fix memory leak in smb2_set_ea() + - cifs: Fix slab-out-of-bounds in send_set_info() on SMB2 ACE setting + - cifs: Fix infinite loop when using hard mount option + - drm: Use kvzalloc for allocating blob property memory + - drm/udl: fix display corruption of the last line + - drm/amdgpu: Add amdgpu_atpx_get_dhandle() + - drm/amdgpu: Dynamically probe for ATIF handle (v2) + - jbd2: don't mark block as modified if the handle is out of credits + - ext4: add corruption check in ext4_xattr_set_entry() + - ext4: always verify the magic number in xattr blocks + - ext4: make sure bitmaps and the inode table don't overlap with bg + descriptors + - ext4: always check block group bounds in ext4_init_block_bitmap() + - ext4: only look at the bg_flags field if it is valid + - ext4: verify the depth of extent tree in ext4_find_extent() + - ext4: include the illegal physical block in the bad map ext4_error msg + - ext4: clear i_data in ext4_inode_info when removing inline data + - ext4: never move the system.data xattr out of the inode body + - ext4: avoid running out of journal credits when appending to an inline file + - ext4: add more inode number paranoia checks + - ext4: add more mount time checks of the superblock + - ext4: check superblock mapped prior to committing + - HID: i2c-hid: Fix "incomplete report" noise + - HID: hiddev: fix potential Spectre v1 + - HID: debug: check length before copy_to_user() + - HID: core: allow concurrent registration of drivers + - i2c: core: smbus: fix a potential missing-check bug + - i2c: smbus: kill memory leak on emulated and failed DMA SMBus xfers + - fs: allow per-device dax status checking for filesystems + - dax: change bdev_dax_supported() to support boolean returns + - dax: check for QUEUE_FLAG_DAX in bdev_dax_supported() + - dm: prevent DAX mounts if not supported + - mtd: cfi_cmdset_0002: Change definition naming to retry write operation + - mtd: cfi_cmdset_0002: Change erase functions to retry for error + - mtd: cfi_cmdset_0002: Change erase functions to check chip good only + - netfilter: nf_log: don't hold nf_log_mutex during user access + - staging: comedi: quatech_daqp_cs: fix no-op loop daqp_ao_insn_write() + - Revert mm/vmstat.c: fix vmstat_update() preemption BUG + - Linux 4.17.6 + - bpf: reject passing modified ctx to helper functions + - MIPS: Call dump_stack() from show_regs() + - MIPS: Use async IPIs for arch_trigger_cpumask_backtrace() + - MIPS: Fix ioremap() RAM check + - drm/etnaviv: Check for platform_device_register_simple() failure + - drm/etnaviv: Fix driver unregistering + - drm/etnaviv: bring back progress check in job timeout handler + - ACPICA: Clear status of all events when entering S5 + - mmc: sdhci-esdhc-imx: allow 1.8V modes without 100/200MHz pinctrl states + - mmc: dw_mmc: fix card threshold control configuration + - mmc: renesas_sdhi_internal_dmac: Cannot clear the RX_IN_USE in abort + - ibmasm: don't write out of bounds in read handler + - staging: rtl8723bs: Prevent an underflow in rtw_check_beacon_data(). + - staging: r8822be: Fix RTL8822be can't find any wireless AP + - ata: Fix ZBC_OUT command block check + - ata: Fix ZBC_OUT all bit handling + - mei: discard messages from not connected client during power down. + - mtd: spi-nor: cadence-quadspi: Fix direct mode write timeouts + - tracing/kprobe: Release kprobe print_fmt properly + - vmw_balloon: fix inflation with batching + - ahci: Add Intel Ice Lake LP PCI ID + - ahci: Disable LPM on Lenovo 50 series laptops with a too old BIOS + - thunderbolt: Notify userspace when boot_acl is changed + - USB: serial: ch341: fix type promotion bug in ch341_control_in() + - USB: serial: cp210x: add another USB ID for Qivicon ZigBee stick + - USB: serial: keyspan_pda: fix modem-status error handling + - USB: yurex: fix out-of-bounds uaccess in read handler + - USB: serial: mos7840: fix status-register error handling + - usb: quirks: add delay quirks for Corsair Strafe + - xhci: xhci-mem: off by one in xhci_stream_id_to_ring() + - Fix up non-directory creation in SGID directories + - mm: zero unavailable pages before memmap init + - ALSA: hda/realtek - two more lenovo models need fixup of MIC_LOCATION + - ALSA: hda - Handle pm failure during hotplug + - mm: do not drop unused pages when userfaultd is running + - fs/proc/task_mmu.c: fix Locked field in /proc/pid/smaps* + - x86/purgatory: add missing FORCE to Makefile target + - fs, elf: make sure to page align bss in load_elf_library + - mm: do not bug_on on incorrect length in __mm_populate() + - tracing: Reorder display of TGID to be after PID + - kbuild: delete INSTALL_FW_PATH from kbuild documentation + - acpi, nfit: Fix scrub idle detection + - arm64: neon: Fix function may_use_simd() return error status + - tools build: fix # escaping in .cmd files for future Make + - IB/hfi1: Fix incorrect mixing of ERR_PTR and NULL return values + - i2c: tegra: Fix NACK error handling + - i2c: recovery: if possible send STOP with recovery pulses + - iw_cxgb4: correctly enforce the max reg_mr depth + - xen: remove global bit from __default_kernel_pte_mask for pv guests + - xen: setup pv irq ops vector earlier + - bsg: fix bogus EINVAL on non-data commands + - crypto: x86/salsa20 - remove x86 salsa20 implementations + - uprobes/x86: Remove incorrect WARN_ON() in uprobe_init_insn() + - netfilter: nf_queue: augment nfqa_cfg_policy + - crypto: don't optimize keccakf() + - netfilter: x_tables: initialise match/target check parameter struct + - loop: add recursion validation to LOOP_CHANGE_FD + - xfs: fix inobt magic number check + - PM / hibernate: Fix oops at snapshot_write() + - RDMA/ucm: Mark UCM interface as BROKEN + - loop: remember whether sysfs_create_group() was done + - kvm: vmx: Nested VM-entry prereqs for event inj. + - f2fs: give message and set need_fsck given broken node id + - f2fs: avoid bug_on on corrupted inode + - f2fs: sanity check on sit entry + - f2fs: sanity check for total valid node blocks + - ARM: dts: armada-38x: use the new thermal binding + - Linux 4.17.7 + - mm: don't do zero_resv_unavail if memmap is not allocated + - Linux 4.17.8 + - compiler-gcc.h: Add __attribute__((gnu_inline)) to all inline declarations + - x86/asm: Add _ASM_ARG* constants for argument registers to + - x86/paravirt: Make native_save_fl() extern inline + - pinctrl: sh-pfc: r8a77970: remove SH_PFC_PIN_CFG_DRIVE_STRENGTH flag + - pinctrl: mt7622: fix error path on failing at groups building + - pinctrl: mt7622: stop using the deprecated pinctrl_add_gpio_range + - pinctrl: mt7622: fix a kernel panic when gpio-hog is being applied + - alx: take rtnl before calling __alx_open from resume + - atm: Preserve value of skb->truesize when accounting to vcc + - atm: zatm: Fix potential Spectre v1 + - hv_netvsc: split sub-channel setup into async and sync + - ipv6: sr: fix passing wrong flags to crypto_alloc_shash() + - ipvlan: fix IFLA_MTU ignored on NEWLINK + - ixgbe: split XDP_TX tail and XDP_REDIRECT map flushing + - net: dccp: avoid crash in ccid3_hc_rx_send_feedback() + - net: dccp: switch rx_tstamp_last_feedback to monotonic clock + - net: fix use-after-free in GRO with ESP + - net: macb: Fix ptp time adjustment for large negative delta + - net/mlx5e: Avoid dealing with vport representors if not being e-switch + manager + - net/mlx5e: Don't attempt to dereference the ppriv struct if not being + eswitch manager + - net/mlx5: E-Switch, Avoid setup attempt if not being e-switch manager + - net/mlx5: Fix command interface race in polling mode + - net/mlx5: Fix incorrect raw command length parsing + - net/mlx5: Fix required capability for manipulating MPFS + - net/mlx5: Fix wrong size allocation for QoS ETC TC regitster + - net: mvneta: fix the Rx desc DMA address in the Rx path + - net/packet: fix use-after-free + - net/sched: act_ife: fix recursive lock and idr leak + - net/sched: act_ife: preserve the action control in case of error + - net_sched: blackhole: tell upper qdisc about dropped packets + - net: sungem: fix rx checksum support + - net/tcp: Fix socket lookups with SO_BINDTODEVICE + - qede: Adverstise software timestamp caps when PHC is not available. + - qed: Fix setting of incorrect eswitch mode. + - qed: Fix use of incorrect size in memcpy call. + - qed: Limit msix vectors in kdump kernel to the minimum required count. + - qmi_wwan: add support for the Dell Wireless 5821e module + - r8152: napi hangup fix after disconnect + - s390/qeth: don't clobber buffer on async TX completion + - stmmac: fix DMA channel hang in half-duplex mode + - strparser: Remove early eaten to fix full tcp receive buffer stall + - tcp: fix Fast Open key endianness + - tcp: prevent bogus FRTO undos with non-SACK flows + - vhost_net: validate sock before trying to put its fd + - VSOCK: fix loopback on big-endian systems + - hinic: reset irq affinity before freeing irq + - nfp: flower: fix mpls ether type detection + - net: macb: initialize bp->queues[0].bp for at91rm9200 + - net: use dev_change_tx_queue_len() for SIOCSIFTXQLEN + - nfp: reject binding to shared blocks + - xen-netfront: Fix mismatched rtnl_unlock + - xen-netfront: Update features after registering netdev + - enic: do not overwrite error code + - i40e: split XDP_TX tail and XDP_REDIRECT map flushing + - IB/mlx5: Avoid dealing with vport representors if not being e-switch manager + - Revert "s390/qeth: use Read device to query hypervisor for MAC" + - s390/qeth: avoid using is_multicast_ether_addr_64bits on (u8 *)[6] + - s390/qeth: fix race when setting MAC address + - sfc: correctly initialise filter rwsem for farch + - virtio_net: split XDP_TX kick and XDP_REDIRECT map flushing + - x86/kvm/Kconfig: Ensure CRYPTO_DEV_CCP_DD state at minimum matches KVM_AMD + - net: cxgb3_main: fix potential Spectre v1 + - rtlwifi: Fix kernel Oops "Fw download fail!!" + - rtlwifi: rtl8821ae: fix firmware is not ready to run + - net: lan78xx: Fix race in tx pending skb size calculation + - crypto: af_alg - Initialize sg_num_bytes in error code path + - PCI: hv: Disable/enable IRQs rather than BH in hv_compose_msi_msg() + - netfilter: ebtables: reject non-bridge targets + - reiserfs: fix buffer overflow with long warning messages + - KEYS: DNS: fix parsing multiple options + - tls: Stricter error checking in zerocopy sendmsg path + - autofs: fix slab out of bounds read in getname_kernel() + - nsh: set mac len based on inner packet + - netfilter: ipv6: nf_defrag: drop skb dst before queueing + - bdi: Fix another oops in wb_workfn() + - bpf: reject any prog that failed read-only lock + - rds: avoid unenecessary cong_update in loop transport + - block: don't use blocking queue entered for recursive bio submits + - bpf: sockmap, fix crash when ipv6 sock is added + - bpf: sockmap, consume_skb in close path + - bpf: don't leave partial mangled prog in jit_subprogs error path + - net/nfc: Avoid stalls when nfc_alloc_send_skb() returned NULL. + - ipvs: initialize tbl->entries after allocation + - ipvs: initialize tbl->entries in ip_vs_lblc_init_svc() + - arm/arm64: smccc: Add SMCCC-specific return codes + - arm64: Call ARCH_WORKAROUND_2 on transitions between EL0 and EL1 + - arm64: Add per-cpu infrastructure to call ARCH_WORKAROUND_2 + - arm64: Add ARCH_WORKAROUND_2 probing + - arm64: Add 'ssbd' command-line option + - arm64: ssbd: Add global mitigation state accessor + - arm64: ssbd: Skip apply_ssbd if not using dynamic mitigation + - arm64: ssbd: Restore mitigation status on CPU resume + - arm64: ssbd: Introduce thread flag to control userspace mitigation + - arm64: ssbd: Add prctl interface for per-thread mitigation + - arm64: KVM: Add HYP per-cpu accessors + - arm64: KVM: Add ARCH_WORKAROUND_2 support for guests + - arm64: KVM: Handle guest's ARCH_WORKAROUND_2 requests + - arm64: KVM: Add ARCH_WORKAROUND_2 discovery through ARCH_FEATURES_FUNC_ID + - bpf: enforce correct alignment for instructions + - bpf, arm32: fix to use bpf_jit_binary_lock_ro api + - bpf: undo prog rejection on read-only lock failure + - Linux 4.17.9 + * linux 4.17.0-5 fails to build on ppc64el with gcc-8 (LP: #1783167) + - kbuild: add macro for controlling warnings to linux/compiler.h + - disable -Wattribute-alias warning for SYSCALL_DEFINEx() + - powerpc/64: Fix strncpy() related build failures with GCC 8.1 + * Kernel error "task zfs:pid blocked for more than 120 seconds" (LP: #1781364) + - SAUCE: (noup) zfs to 0.7.9-3ubuntu4 + * [Regression] EXT4-fs error (device sda1): ext4_validate_inode_bitmap:99: + comm stress-ng: Corrupt inode bitmap (LP: #1780137) + - SAUCE: ext4: fix ext4_validate_inode_bitmap: comm stress-ng: Corrupt inode + bitmap + * Miscellaneous Ubuntu changes + - SAUCE: (noup) Update spl to 0.7.9-3ubuntu2, zfs to 0.7.9-3ubuntu3 + - ABI: ib_ucm is being dropped upstream + - ABI: salsa20-{x86_64,i586} modules are no longer upstream + - [Config] updateconfigs after applying stable fixes + - [Config] retpoline -- review and accept retpoline changes + * Miscellaneous upstream changes + - Revert "UBUNTU: [Config]: set CONFIG_EDAC_DEBUG=y for ARM64" + + [ Ubuntu: 4.17.0-5.6 ] + + * linux: 4.17.0-5.6 -proposed tracker (LP: #1780956) + * Cloud-init causes potentially huge boot delays with 4.15 kernels + (LP: #1780062) + - random: Make getrandom() ready earlier + * xhci_hcd 0000:00:14.0: Root hub is not suspended (LP: #1779823) + - usb: xhci: dbc: Don't decrement runtime PM counter if DBC is not started + * hisi_sas_v3_hw: internal task abort: timeout and not done. (LP: #1777736) + - scsi: hisi_sas: Update a couple of register settings for v3 hw + * hisi_sas: Add missing PHY spinlock init (LP: #1777734) + - scsi: hisi_sas: Add missing PHY spinlock init + * hisi_sas: improve read performance by pre-allocating slot DMA buffers + (LP: #1777727) + - scsi: hisi_sas: use dma_zalloc_coherent() + - scsi: hisi_sas: Use dmam_alloc_coherent() + - scsi: hisi_sas: Pre-allocate slot DMA buffers + * hisi_sas: Failures during host reset (LP: #1777696) + - scsi: hisi_sas: Only process broadcast change in phy_bcast_v3_hw() + - scsi: hisi_sas: Fix the conflict between dev gone and host reset + - scsi: hisi_sas: Adjust task reject period during host reset + - scsi: hisi_sas: Add a flag to filter PHY events during reset + - scsi: hisi_sas: Release all remaining resources in clear nexus ha + * Cosmic update to v4.17.5 stable release (LP: #1780833) + - usb: cdc_acm: Add quirk for Uniden UBC125 scanner + - USB: serial: cp210x: add CESINEL device ids + - USB: serial: cp210x: add Silicon Labs IDs for Windows Update + - usb: dwc2: fix the incorrect bitmaps for the ports of multi_tt hub + - usb: typec: tcpm: fix logbuffer index is wrong if _tcpm_log is re-entered + - acpi: Add helper for deactivating memory region + - usb: typec: ucsi: acpi: Workaround for cache mode issue + - usb: typec: ucsi: Fix for incorrect status data issue + - xhci: Fix kernel oops in trace_xhci_free_virt_device + - n_tty: Fix stall at n_tty_receive_char_special(). + - n_tty: Access echo_* variables carefully. + - staging: android: ion: Return an ERR_PTR in ion_map_kernel + - iio: mma8452: Fix ignoring MMA8452_INT_DRDY + - serial: 8250_pci: Remove stalled entries in blacklist + - serdev: fix memleak on module unload + - vt: prevent leaking uninitialized data to userspace via /dev/vcs* + - drm/amdgpu: Add APU support in vi_set_uvd_clocks + - drm/amdgpu: Add APU support in vi_set_vce_clocks + - drm/amdgpu: fix the missed vcn fw version report + - drm/amdgpu: Grab/put runtime PM references in atomic_commit_tail() + - drm/amdgpu: fix clear_all and replace handling in the VM (v2) + - drm/sti: Depend on OF rather than selecting it + - drm/amd/display: Clear connector's edid pointer + - drm/i915/dp: Send DPCD ON for MST before phy_up + - drm/qxl: Call qxl_bo_unref outside atomic context + - drm/atmel-hlcdc: check stride values in the first plane + - Revert "drm/sun4i: Handle DRM_BUS_FLAG_PIXDATA_*EDGE" + - drm/amdgpu: Don't default to DC support for Kaveri and older + - drm/amdgpu: Use kvmalloc_array for allocating VRAM manager nodes array + - drm/amdgpu: Refactor amdgpu_vram_mgr_bo_invisible_size helper + - drm/amdgpu: Make amdgpu_vram_mgr_bo_invisible_size always accurate + - drm/amdgpu: Update pin_size values before unpinning BO + - drm/amdgpu: GPU vs CPU page size fixes in amdgpu_vm_bo_split_mapping + - drm/amdgpu: Count disabled CRTCs in commit tail earlier + - drm/amd/display: release spinlock before committing updates to stream + - drm/i915: Allow DBLSCAN user modes with eDP/LVDS/DSI + - drm/i915: Fix PIPESTAT irq ack on i965/g4x + - drm/i915: Disallow interlaced modes on g4x DP outputs + - drm/i915: Turn off g4x DP port in .post_disable() + - drm/i915: Enable provoking vertex fix on Gen9 systems. + - netfilter: ip6t_rpfilter: provide input interface for route lookup + - netfilter: xt_connmark: fix list corruption on rmmod + - netfilter: nf_tables: use WARN_ON_ONCE instead of BUG_ON in nft_do_chain() + - ARM64: dts: meson-gxl-s905x-p212: Add phy-supply for usb0 + - x86/mm: Don't free P4D table when it is folded at runtime + - ARM: dts: imx6q: Use correct SDMA script for SPI5 core + - Linux 4.17.5 + * Cosmic update to v4.17.4 stable release (LP: #1780832) + - x86/spectre_v1: Disable compiler optimizations over + array_index_mask_nospec() + - x86/xen: Add call of speculative_store_bypass_ht_init() to PV paths + - x86/platform/UV: Add adjustable set memory block size function + - x86/platform/UV: Use new set memory block size function + - x86/platform/UV: Add kernel parameter to set memory block size + - x86/mce: Improve error message when kernel cannot recover + - x86/mce: Check for alternate indication of machine check recovery on Skylake + - x86/mce: Fix incorrect "Machine check from unknown source" message + - x86/mce: Do not overwrite MCi_STATUS in mce_no_way_out() + - x86: Call fixup_exception() before notify_die() in math_error() + - m68k/mm: Adjust VM area to be unmapped by gap size for __iounmap() + - m68k/mac: Fix SWIM memory resource end address + - platform/chrome: cros_ec_lpc: do not try DMI match when ACPI device found + - hwmon: (k10temp) Add support for Stoney Ridge and Bristol Ridge CPUs + - mtd: spi-nor: intel-spi: Fix atomic sequence handling + - serial: sh-sci: Use spin_{try}lock_irqsave instead of open coding version + - signal/xtensa: Consistenly use SIGBUS in do_unaligned_user + - PM / Domains: Fix error path during attach in genpd + - PCI / PM: Do not clear state_saved for devices that remain suspended + - ACPI / LPSS: Avoid PM quirks on suspend and resume from S3 + - PM / core: Fix supplier device runtime PM usage counter imbalance + - PM / OPP: Update voltage in case freq == old_freq + - mmc: renesas_sdhi: really fix WP logic regressions + - usb: do not reset if a low-speed or full-speed device timed out + - 1wire: family module autoload fails because of upper/lower case mismatch. + - ASoC: dapm: delete dapm_kcontrol_data paths list before freeing it + - ASoC: cs35l35: Add use_single_rw to regmap config + - ASoC: mediatek: preallocate pages use platform device + - ASoC: cirrus: i2s: Fix LRCLK configuration + - ASoC: cirrus: i2s: Fix {TX|RX}LinCtrlData setup + - thermal: bcm2835: Stop using printk format %pCr + - clk: renesas: cpg-mssr: Stop using printk format %pCr + - lib/vsprintf: Remove atomic-unsafe support for %pCr + - ftrace/selftest: Have the reset_trigger code be a bit more careful + - mips: ftrace: fix static function graph tracing + - branch-check: fix long->int truncation when profiling branches + - ipmi:bt: Set the timeout before doing a capabilities check + - Bluetooth: hci_qca: Avoid missing rampatch failure with userspace fw loader + - printk: fix possible reuse of va_list variable + - fuse: fix congested state leak on aborted connections + - fuse: atomic_o_trunc should truncate pagecache + - fuse: don't keep dead fuse_conn at fuse_fill_super(). + - fuse: fix control dir setup and teardown + - powerpc/mm/hash: Add missing isync prior to kernel stack SLB switch + - powerpc/pkeys: Detach execute_only key on !PROT_EXEC + - powerpc/ptrace: Fix setting 512B aligned breakpoints with + PTRACE_SET_DEBUGREG + - powerpc/ptrace: Fix enforcement of DAWR constraints + - powerpc/powernv/ioda2: Remove redundant free of TCE pages + - powerpc/powernv: copy/paste - Mask SO bit in CR + - cpuidle: powernv: Fix promotion from snooze if next state disabled + - powerpc/fadump: Unregister fadump on kexec down path. + - libnvdimm, pmem: Do not flush power-fail protected CPU caches + - soc: rockchip: power-domain: Fix wrong value when power up pd with writemask + - powerpc/64s/radix: Fix radix_kvm_prefetch_workaround paca access of not + possible CPU + - powerpc/e500mc: Set assembler machine type to e500mc + - powerpc/64s: Fix DT CPU features Power9 DD2.1 logic + - ARM: 8764/1: kgdb: fix NUMREGBYTES so that gdb_regs[] is the correct size + - ARM: dts: sun8i: h3: fix ALL-H3-CC H3 ver VDD-CPUX voltage + - ARM: dts: sun8i: h3: fix ALL-H3-CC H3 ver VCC-1V2 regulator voltage + - ARM: dts: Fix SPI node for Arria10 + - ARM: dts: socfpga: Fix NAND controller node compatible + - ARM: dts: socfpga: Fix NAND controller clock supply + - ARM: dts: socfpga: Fix NAND controller node compatible for Arria10 + - hwrng: core - Always drop the RNG in hwrng_unregister() + - softirq: Reorder trace_softirqs_on to prevent lockdep splat + - arm64: Fix syscall restarting around signal suppressed by tracer + - crypto: arm64/aes-blk - fix and move skcipher_walk_done out of + kernel_neon_begin, _end + - arm64: kpti: Use early_param for kpti= command-line option + - arm64: mm: Ensure writes to swapper are ordered wrt subsequent cache + maintenance + - arm64: dts: marvell: fix CP110 ICU node size + - arm64: dts: stratix10: Fix SPI nodes for Stratix10 + - ARM64: dts: meson: disable sd-uhs modes on the libretech-cc + - ARM64: dts: meson-gx: fix ATF reserved memory region + - of: overlay: validate offset from property fixups + - of: unittest: for strings, account for trailing \0 in property length field + - of: platform: stop accessing invalid dev in of_platform_device_destroy + - tpm: fix use after free in tpm2_load_context() + - tpm: fix race condition in tpm_common_write() + - efi/libstub/tpm: Initialize efi_physical_addr_t vars to zero for mixed mode + - IB/qib: Fix DMA api warning with debug kernel + - IB/{hfi1, qib}: Add handling of kernel restart + - IB/mlx4: Mark user MR as writable if actual virtual memory is writable + - IB/core: Make testing MR flags for writability a static inline function + - IB/mlx5: Fetch soft WQE's on fatal error state + - IB/isert: Fix for lib/dma_debug check_sync warning + - IB/isert: fix T10-pi check mask setting + - IB/hfi1: Fix fault injection init/exit issues + - IB/hfi1: Reorder incorrect send context disable + - IB/hfi1: Optimize kthread pointer locking when queuing CQ entries + - IB/hfi1: Fix user context tail allocation for DMA_RTAIL + - IB/uverbs: Fix ordering of ucontext check in ib_uverbs_write + - RDMA/mlx4: Discard unknown SQP work requests + - xprtrdma: Return -ENOBUFS when no pages are available + - RDMA/core: Save kernel caller name when creating CQ using ib_create_cq() + - mtd: rawnand: Do not check FAIL bit when executing a SET_FEATURES op + - mtd: cfi_cmdset_0002: Change write buffer to check correct value + - mtd: rawnand: denali_dt: set clk_x_rate to 200 MHz unconditionally + - mtd: rawnand: fix return value check for bad block status + - mtd: rawnand: mxc: set spare area size register explicitly + - mtd: rawnand: micron: add ONFI_FEATURE_ON_DIE_ECC to supported features + - mtd: rawnand: All AC chips have a broken GET_FEATURES(TIMINGS). + - mtd: cfi_cmdset_0002: Use right chip in do_ppb_xxlock() + - mtd: cfi_cmdset_0002: fix SEGV unlocking multiple chips + - mtd: cfi_cmdset_0002: Fix unlocking requests crossing a chip boudary + - mtd: cfi_cmdset_0002: Avoid walking all chips when unlocking. + - MIPS: BCM47XX: Enable 74K Core ExternalSync for PCIe erratum + - clk:aspeed: Fix reset bits for PCI/VGA and PECI + - PCI: hv: Make sure the bus domain is really unique + - PCI: Add ACS quirk for Intel 7th & 8th Gen mobile + - PCI: Add ACS quirk for Intel 300 series + - PCI: pciehp: Clear Presence Detect and Data Link Layer Status Changed on + resume + - PCI: Account for all bridges on bus when distributing bus numbers + - auxdisplay: fix broken menu + - pinctrl: armada-37xx: Fix spurious irq management + - pinctrl: samsung: Correct EINTG banks order + - pinctrl: devicetree: Fix pctldev pointer overwrite + - cpufreq: intel_pstate: Fix scaling max/min limits with Turbo 3.0 + - MIPS: pb44: Fix i2c-gpio GPIO descriptor table + - MIPS: io: Add barrier after register read in inX() + - time: Make sure jiffies_to_msecs() preserves non-zero time periods + - irqchip/gic-v3-its: Don't bind LPI to unavailable NUMA node + - locking/rwsem: Fix up_read_non_owner() warning with DEBUG_RWSEMS + - X.509: unpack RSA signatureValue field from BIT STRING + - Btrfs: fix return value on rename exchange failure + - iio: adc: ad7791: remove sample freq sysfs attributes + - iio: sca3000: Fix an error handling path in 'sca3000_probe()' + - mm: fix __gup_device_huge vs unmap + - scsi: scsi_debug: Fix memory leak on module unload + - scsi: hpsa: disable device during shutdown + - scsi: qla2xxx: Delete session for nport id change + - scsi: qla2xxx: Fix setting lower transfer speed if GPSC fails + - scsi: qla2xxx: Mask off Scope bits in retry delay + - scsi: qla2xxx: Spinlock recursion in qla_target + - scsi: zfcp: fix missing SCSI trace for result of eh_host_reset_handler + - scsi: zfcp: fix missing SCSI trace for retry of abort / scsi_eh TMF + - scsi: zfcp: fix misleading REC trigger trace where erp_action setup failed + - scsi: zfcp: fix missing REC trigger trace on terminate_rport_io early return + - scsi: zfcp: fix missing REC trigger trace on terminate_rport_io for + ERP_FAILED + - scsi: zfcp: fix missing REC trigger trace for all objects in ERP_FAILED + - scsi: zfcp: fix missing REC trigger trace on enqueue without ERP thread + - linvdimm, pmem: Preserve read-only setting for pmem devices + - libnvdimm, pmem: Unconditionally deep flush on *sync + - clk: meson: meson8b: mark fclk_div2 gate clocks as CLK_IS_CRITICAL + - clk: at91: PLL recalc_rate() now using cached MUL and DIV values + - rtc: sun6i: Fix bit_idx value for clk_register_gate + - md: fix two problems with setting the "re-add" device state. + - rpmsg: smd: do not use mananged resources for endpoints and channels + - ubi: fastmap: Cancel work upon detach + - ubi: fastmap: Correctly handle interrupted erasures in EBA + - UBIFS: Fix potential integer overflow in allocation + - backlight: as3711_bl: Fix Device Tree node lookup + - backlight: max8925_bl: Fix Device Tree node lookup + - backlight: tps65217_bl: Fix Device Tree node lookup + - Revert "iommu/amd_iommu: Use CONFIG_DMA_DIRECT_OPS=y and + dma_direct_{alloc,free}()" + - f2fs: don't use GFP_ZERO for page caches + - um: Fix initialization of vector queues + - um: Fix raw interface options + - mfd: twl-core: Fix clock initialization + - mfd: intel-lpss: Program REMAP register in PIO mode + - mfd: intel-lpss: Fix Intel Cannon Lake LPSS I2C input clock + - remoteproc: Prevent incorrect rproc state on xfer mem ownership failure + - arm: dts: mt7623: fix invalid memory node being generated + - perf tools: Fix symbol and object code resolution for vdso32 and vdsox32 + - perf intel-pt: Fix sync_switch INTEL_PT_SS_NOT_TRACING + - perf intel-pt: Fix decoding to accept CBR between FUP and corresponding TIP + - perf intel-pt: Fix MTC timing after overflow + - perf intel-pt: Fix "Unexpected indirect branch" error + - perf intel-pt: Fix packet decoding of CYC packets + - media: vsp1: Release buffers for each video node + - Revert "UBUNTU: SAUCE: media: uvcvideo: Support realtek's UVC 1.5 device" + - media: cx231xx: Ignore an i2c mux adapter + - media: v4l2-compat-ioctl32: prevent go past max size + - media: rc: mce_kbd decoder: fix stuck keys + - media: dvb_frontend: fix locking issues at dvb_frontend_get_event() + - nfsd: restrict rd_maxcount to svc_max_payload in nfsd_encode_readdir + - NFSv4: Fix possible 1-byte stack overflow in + nfs_idmap_read_and_verify_message + - NFSv4: Revert commit 5f83d86cf531d ("NFSv4.x: Fix wraparound issues..") + - NFSv4: Fix a typo in nfs41_sequence_process + - video: uvesafb: Fix integer overflow in allocation + - ACPI / LPSS: Add missing prv_offset setting for byt/cht PWM devices + - Input: silead - add MSSL0002 ACPI HID + - Input: elan_i2c - add ELAN0618 (Lenovo v330 15IKB) ACPI ID + - pwm: lpss: platform: Save/restore the ctrl register over a suspend/resume + - rbd: flush rbd_dev->watch_dwork after watch is unregistered + - mm/ksm.c: ignore STABLE_FLAG of rmap_item->address in rmap_walk_ksm() + - mm: fix devmem_is_allowed() for sub-page System RAM intersections + - tracing: Check for no filter when processing event filters + - xen: Remove unnecessary BUG_ON from __unbind_from_irq() + - net: ethernet: fix suspend/resume in davinci_emac + - udf: Detect incorrect directory size + - Input: xpad - fix GPD Win 2 controller name + - Input: psmouse - fix button reporting for basic protocols + - Input: elan_i2c_smbus - fix more potential stack buffer overflows + - Input: elantech - enable middle button of touchpads on ThinkPad P52 + - Input: elantech - fix V4 report decoding for module with middle key + - ALSA: timer: Fix UBSAN warning at SNDRV_TIMER_IOCTL_NEXT_DEVICE ioctl + - ALSA: hda - Force to link down at runtime suspend on ATI/AMD HDMI + - ALSA: hda/realtek - Fix pop noise on Lenovo P50 & co + - ALSA: hda/realtek - Add a quirk for FSC ESPRIMO U9210 + - ALSA: hda/realtek - Fix the problem of two front mics on more machines + - Revert "i2c: algo-bit: init the bus to a known state" + - i2c: gpio: initialize SCL to HIGH again + - slub: fix failure when we delete and create a slab cache + - kasan: depend on CONFIG_SLUB_DEBUG + - dm: use bio_split() when splitting out the already processed bio + - pmem: only set QUEUE_FLAG_DAX for fsdax mode + - block: Fix transfer when chunk sectors exceeds max + - block: Fix cloning of requests with a special payload + - x86/e820: put !E820_TYPE_RAM regions into memblock.reserved + - selinux: move user accesses in selinuxfs out of locked regions + - x86/entry/64/compat: Fix "x86/entry/64/compat: Preserve r8-r11 in int $0x80" + - x86/efi: Fix efi_call_phys_epilog() with CONFIG_X86_5LEVEL=y + - dm zoned: avoid triggering reclaim from inside dmz_map() + - dm thin: handle running out of data space vs concurrent discard + - virt: vbox: Only copy_from_user the request-header once + - Linux 4.17.4 + * Support AverMedia DVD EZMaker 7 USB video capture dongle (LP: #1620762) // + Cosmic update to v4.17.4 stable release (LP: #1780832) + - media: cx231xx: Add support for AverMedia DVD EZMaker 7 + + [ Ubuntu: 4.17.0-4.5 ] + + * linux: 4.17.0-4.5 -proposed tracker (LP: #1779399) + * Update to ocxl driver for 18.04.1 (LP: #1775786) + - powerpc: Add TIDR CPU feature for POWER9 + - powerpc: Use TIDR CPU feature to control TIDR allocation + - powerpc: use task_pid_nr() for TID allocation + - ocxl: Rename pnv_ocxl_spa_remove_pe to clarify it's action + - ocxl: Expose the thread_id needed for wait on POWER9 + - ocxl: Add an IOCTL so userspace knows what OCXL features are available + - ocxl: Document new OCXL IOCTLs + - ocxl: Fix missing unlock on error in afu_ioctl_enable_p9_wait() + * Please include ax88179_178a and r8152 modules in d-i udeb (LP: #1771823) + - [Config:] d-i: Add ax88179_178a and r8152 to nic-modules + * glibc pkeys test fail on powerpc (LP: #1776967) + - [Config] Temporarily disable CONFIG_PPC_MEM_KEYS + * After update to 4.13-43 Intel Graphics are Laggy (LP: #1773520) + - Revert "drm/i915/edp: Allow alternate fixed mode for eDP if available." + * Miscellaneous Ubuntu changes + - SAUCE: (noup) Update spl to 0.7.9-3ubuntu1, zfs to 0.7.9-3ubuntu1 + + [ Ubuntu: 4.17.0-3.4 ] + + * linux: 4.17.0-3.4 -proposed tracker (LP: #1779124) + * Cosmic update to v4.17.3 stable release (LP: #1778997) + - net: aquantia: fix unsigned numvecs comparison with less than zero + - bonding: re-evaluate force_primary when the primary slave name changes + - cdc_ncm: avoid padding beyond end of skb + - ipv6: allow PMTU exceptions to local routes + - net: dsa: add error handling for pskb_trim_rcsum + - net: phy: dp83822: use BMCR_ANENABLE instead of BMSR_ANEGCAPABLE for DP83620 + - net/sched: act_simple: fix parsing of TCA_DEF_DATA + - tcp: verify the checksum of the first data segment in a new connection + - tls: fix use-after-free in tls_push_record + - tls: fix waitall behavior in tls_sw_recvmsg + - socket: close race condition between sock_close() and sockfs_setattr() + - udp: fix rx queue len reported by diag and proc interface + - net: in virtio_net_hdr only add VLAN_HLEN to csum_start if payload holds + vlan + - hv_netvsc: Fix a network regression after ifdown/ifup + - ACPICA: AML parser: attempt to continue loading table after error + - ext4: fix hole length detection in ext4_ind_map_blocks() + - ext4: update mtime in ext4_punch_hole even if no blocks are released + - ext4: do not allow external inodes for inline data + - ext4: bubble errors from ext4_find_inline_data_nolock() up to ext4_iget() + - ext4: correctly handle a zero-length xattr with a non-zero e_value_offs + - ext4: fix fencepost error in check for inode count overflow during resize + - driver core: Don't ignore class_dir_create_and_add() failure. + - Btrfs: allow empty subvol= again + - Btrfs: fix clone vs chattr NODATASUM race + - Btrfs: fix memory and mount leak in btrfs_ioctl_rm_dev_v2() + - btrfs: return error value if create_io_em failed in cow_file_range + - btrfs: scrub: Don't use inode pages for device replace + - ALSA: usb-audio: Disable the quirk for Nura headset + - ALSA: hda/conexant - Add fixup for HP Z2 G4 workstation + - ALSA: hda - Handle kzalloc() failure in snd_hda_attach_pcm_stream() + - ALSA: hda: add dock and led support for HP EliteBook 830 G5 + - ALSA: hda: add dock and led support for HP ProBook 640 G4 + - x86/MCE: Fix stack out-of-bounds write in mce-inject.c: Flags_read() + - smb3: fix various xid leaks + - smb3: on reconnect set PreviousSessionId field + - CIFS: 511c54a2f69195b28afb9dd119f03787b1625bb4 adds a check for session + expiry + - cifs: For SMB2 security informaion query, check for minimum sized security + descriptor instead of sizeof FileAllInformation class + - nbd: fix nbd device deletion + - nbd: update size when connected + - nbd: use bd_set_size when updating disk size + - blk-mq: reinit q->tag_set_list entry only after grace period + - bdi: Move cgroup bdi_writeback to a dedicated low concurrency workqueue + - cpufreq: Fix new policy initialization during limits updates via sysfs + - cpufreq: ti-cpufreq: Fix an incorrect error return value + - cpufreq: governors: Fix long idle detection logic in load calculation + - libata: zpodd: small read overflow in eject_tray() + - libata: Drop SanDisk SD7UB3Q*G1001 NOLPM quirk + - nvme/pci: Sync controller reset for AER slot_reset + - w1: mxc_w1: Enable clock before calling clk_get_rate() on it + - x86/vector: Fix the args of vector_alloc tracepoint + - x86/apic/vector: Prevent hlist corruption and leaks + - x86/apic: Provide apic_ack_irq() + - x86/ioapic: Use apic_ack_irq() + - x86/platform/uv: Use apic_ack_irq() + - irq_remapping: Use apic_ack_irq() + - genirq/generic_pending: Do not lose pending affinity update + - genirq/affinity: Defer affinity setting if irq chip is busy + - genirq/migration: Avoid out of line call if pending is not set + - x86/intel_rdt: Enable CMT and MBM on new Skylake stepping + - media: uvcvideo: Prevent setting unavailable flags + - media: rc: ensure input/lirc device can be opened after register + - iwlwifi: fw: harden page loading code + - orangefs: set i_size on new symlink + - orangefs: report attributes_mask and attributes for statx + - HID: intel_ish-hid: ipc: register more pm callbacks to support hibernation + - HID: wacom: Correct logical maximum Y for 2nd-gen Intuos Pro large + - vhost: fix info leak due to uninitialized memory + - mm, page_alloc: do not break __GFP_THISNODE by zonelist reset + - Linux 4.17.3 + * Use-after-free in sk_peer_label (LP: #1778646) + - SAUCE: apparmor: fix use after free in sk_peer_label + * kernel: Fix memory leak on CCA and EP11 CPRB processing. (LP: #1775390) + - s390/zcrypt: Fix CCA and EP11 CPRB processing failure memory leak. + * Various fixes for CXL kernel module (LP: #1774471) + - cxl: Configure PSL to not use APC virtual machines + - cxl: Disable prefault_mode in Radix mode + * Bluetooth not working (LP: #1764645) + - Bluetooth: btusb: Apply QCA Rome patches for some ATH3012 models + * Fake SAS addresses for SATA disks on HiSilicon D05 are non-unique + (LP: #1776750) + - scsi: hisi_sas: make SAS address of SATA disks unique + * linux-snapdragon: wcn36xx: mac address generation on boot (LP: #1776491) + - [Config] arm64: snapdragon: WCN36XX_SNAPDRAGON_HACKS=y + - SAUCE: wcn36xx: read MAC from file or randomly generate one + * Lenovo V330 needs patch in ideapad_laptop module for rfkill (LP: #1774636) + - SAUCE: Add Lenovo V330 to the ideapad_laptop rfkill blacklist + * register on binfmt_misc may overflow and crash the system (LP: #1775856) + - fs/binfmt_misc.c: do not allow offset overflow + * Network installs fail on SocioNext board (LP: #1775884) + - net: socionext: reset hardware in ndo_stop + - net: netsec: enable tx-irq during open callback + * Fix several bugs in RDMA/hns driver (LP: #1770974) + - RDMA/hns: Drop local zgid in favor of core defined variable + - RDMA/hns: Add 64KB page size support for hip08 + - RDMA/hns: Rename the idx field of db + - RDMA/hns: Modify uar allocation algorithm to avoid bitmap exhaust + - RDMA/hns: Increase checking CMQ status timeout value + - RDMA/hns: Add reset process for RoCE in hip08 + - RDMA/hns: Fix the illegal memory operation when cross page + - RDMA/hns: Implement the disassociate_ucontext API + * powerpc/livepatch: Implement reliable stack tracing for the consistency + model (LP: #1771844) + - powerpc/livepatch: Implement reliable stack tracing for the consistency + model + * Adding back alx WoL feature (LP: #1772610) + - SAUCE: Revert "alx: remove WoL support" + - SAUCE: alx: add enable_wol paramenter + * Lancer A0 Asic HBA's won't boot with 18.04 (LP: #1768103) + - scsi: lpfc: Fix WQ/CQ creation for older asic's. + - scsi: lpfc: Fix 16gb hbas failing cq create. + * [LTCTest][OPAL][OP920] cpupower idle-info is not listing stop4 and stop5 + idle states when all CORES are guarded (LP: #1771780) + - powerpc/powernv/cpuidle: Init all present cpus for deep states + * Huawei 25G/100G Network Adapters Unsupported (LP: #1770970) + - net-next/hinic: add pci device ids for 25ge and 100ge card + * Expose arm64 CPU topology to userspace (LP: #1770231) + - drivers: base: cacheinfo: move cache_setup_of_node() + - drivers: base: cacheinfo: setup DT cache properties early + - cacheinfo: rename of_node to fw_token + - arm64/acpi: Create arch specific cpu to acpi id helper + - ACPI/PPTT: Add Processor Properties Topology Table parsing + - [Config] CONFIG_ACPI_PPTT=y + - ACPI: Enable PPTT support on ARM64 + - drivers: base cacheinfo: Add support for ACPI based firmware tables + - arm64: Add support for ACPI based firmware tables + - arm64: topology: rename cluster_id + - arm64: topology: enable ACPI/PPTT based CPU topology + - ACPI: Add PPTT to injectable table list + - arm64: topology: divorce MC scheduling domain from core_siblings + * Vcs-Git header on bionic linux source package points to zesty git tree + (LP: #1766055) + - [Packaging]: Update Vcs-Git + * Request to revert SAUCE patches in the 18.04 SRU and update with upstream + version (LP: #1768431) + - scsi: cxlflash: Handle spurious interrupts + - scsi: cxlflash: Remove commmands from pending list on timeout + - scsi: cxlflash: Synchronize reset and remove ops + - SAUCE: (no-up) cxlflash: OCXL diff between v2 and v3 + * hisi_sas robustness fixes (LP: #1774466) + - scsi: hisi_sas: delete timer when removing hisi_sas driver + - scsi: hisi_sas: print device id for errors + - scsi: hisi_sas: Add some checks to avoid free'ing a sas_task twice + - scsi: hisi_sas: check host frozen before calling "done" function + - scsi: hisi_sas: check sas_dev gone earlier in hisi_sas_abort_task() + - scsi: hisi_sas: stop controller timer for reset + - scsi: hisi_sas: update PHY linkrate after a controller reset + - scsi: hisi_sas: change slot index allocation mode + - scsi: hisi_sas: Change common allocation mode of device id + - scsi: hisi_sas: Reset disks when discovered + - scsi: hisi_sas: Create a scsi_host_template per HW module + - scsi: hisi_sas: Init disks after controller reset + - scsi: hisi_sas: Try wait commands before before controller reset + - scsi: hisi_sas: Include TMF elements in struct hisi_sas_slot + - scsi: hisi_sas: Add v2 hw force PHY function for internal ATA command + - scsi: hisi_sas: Terminate STP reject quickly for v2 hw + - scsi: hisi_sas: Fix return value when get_free_slot() failed + - scsi: hisi_sas: Mark PHY as in reset for nexus reset + * hisi_sas: Support newer v3 hardware (LP: #1774467) + - scsi: hisi_sas: update RAS feature for later revision of v3 HW + - scsi: hisi_sas: check IPTT is valid before using it for v3 hw + - scsi: hisi_sas: fix PI memory size + - scsi: hisi_sas: config ATA de-reset as an constrained command for v3 hw + - scsi: hisi_sas: remove redundant handling to event95 for v3 + - scsi: hisi_sas: add readl poll timeout helper wrappers + - scsi: hisi_sas: workaround a v3 hw hilink bug + - scsi: hisi_sas: Add LED feature for v3 hw + * hisi_sas: improve performance by optimizing DQ locking (LP: #1774472) + - scsi: hisi_sas: optimise the usage of DQ locking + - scsi: hisi_sas: relocate smp sg map + - scsi: hisi_sas: make return type of prep functions void + - scsi: hisi_sas: allocate slot buffer earlier + - scsi: hisi_sas: Don't lock DQ for complete task sending + - scsi: hisi_sas: Use device lock to protect slot alloc/free + - scsi: hisi_sas: add check of device in hisi_sas_task_exec() + - scsi: hisi_sas: fix a typo in hisi_sas_task_prep() + * FS-Cache: Assertion failed: FS-Cache: 6 == 5 is false (LP: #1774336) + - SAUCE: CacheFiles: fix a read_waiter/read_copier race + * enable mic-mute hotkey and led on Lenovo M820z and M920z (LP: #1774306) + - ALSA: hda/realtek - Enable mic-mute hotkey for several Lenovo AIOs + * hns3 driver updates (LP: #1768670) + - net: hns3: Remove error log when getting pfc stats fails + - net: hns3: fix to correctly fetch l4 protocol outer header + - net: hns3: Fixes the out of bounds access in hclge_map_tqp + - net: hns3: Fixes the error legs in hclge_init_ae_dev function + - net: hns3: fix for phy_addr error in hclge_mac_mdio_config + - net: hns3: Fix to support autoneg only for port attached with phy + - net: hns3: fix a dead loop in hclge_cmd_csq_clean + - net: hns3: Fix for packet loss due wrong filter config in VLAN tbls + - net: hns3: Remove packet statistics in the range of 8192~12287 + - net: hns3: Add support of hardware rx-vlan-offload to HNS3 VF driver + - net: hns3: Fix for setting mac address when resetting + - net: hns3: remove add/del_tunnel_udp in hns3_enet module + - net: hns3: fix for cleaning ring problem + - net: hns3: refactor the loopback related function + - net: hns3: Fix for deadlock problem occurring when unregistering ae_algo + - net: hns3: Fix for the null pointer problem occurring when initializing + ae_dev failed + - net: hns3: Add a check for client instance init state + - net: hns3: Change return type of hnae3_register_ae_dev + - net: hns3: Change return type of hnae3_register_ae_algo + - net: hns3: Change return value in hnae3_register_client + - net: hns3: Fixes the back pressure setting when sriov is enabled + - net: hns3: Fix for fiber link up problem + - net: hns3: Add support of .sriov_configure in HNS3 driver + - net: hns3: Fixes the missing PCI iounmap for various legs + - net: hns3: Fixes error reported by Kbuild and internal review + - net: hns3: Fixes API to fetch ethernet header length with kernel default + - net: hns3: cleanup of return values in hclge_init_client_instance() + - net: hns3: Fix the missing client list node initialization + - net: hns3: Fix for hns3 module is loaded multiple times problem + - net: hns3: Use enums instead of magic number in hclge_is_special_opcode + - net: hns3: Fix for netdev not running problem after calling net_stop and + net_open + - net: hns3: Fixes kernel panic issue during rmmod hns3 driver + - net: hns3: Fix for CMDQ and Misc. interrupt init order problem + - net: hns3: Updates RX packet info fetch in case of multi BD + - net: hns3: Add support for tx_accept_tag2 and tx_accept_untag2 config + - net: hns3: Add STRP_TAGP field support for hardware revision 0x21 + - net: hns3: Add support to enable TX/RX promisc mode for H/W rev(0x21) + - net: hns3: Fix for PF mailbox receving unknown message + - net: hns3: Fixes the state to indicate client-type initialization + - net: hns3: Fixes the init of the VALID BD info in the descriptor + - net: hns3: Removes unnecessary check when clearing TX/RX rings + - net: hns3: Clear TX/RX rings when stopping port & un-initializing client + - net: hns3: Remove unused led control code + - net: hns3: Adds support for led locate command for copper port + - net: hns3: Fixes initalization of RoCE handle and makes it conditional + - net: hns3: Disable vf vlan filter when vf vlan table is full + - net: hns3: Add support for IFF_ALLMULTI flag + - net: hns3: Add repeat address checking for setting mac address + - net: hns3: Fix setting mac address error + - net: hns3: Fix for service_task not running problem after resetting + - net: hns3: Fix for hclge_reset running repeatly problem + - net: hns3: Fix for phy not link up problem after resetting + - net: hns3: Add missing break in misc_irq_handle + - net: hns3: Fix for vxlan tx checksum bug + - net: hns3: Optimize the PF's process of updating multicast MAC + - net: hns3: Optimize the VF's process of updating multicast MAC + - SAUCE: {topost} net: hns3: add support for serdes loopback selftest + - SAUCE: {topost} net: hns3: RX BD information valid only in last BD except + VLD bit and buffer size + - SAUCE: {topost} net: hns3: remove hclge_get_vector_index from + hclge_bind_ring_with_vector + - SAUCE: {topost} net: hns3: rename the interface for init_client_instance and + uninit_client_instance + - SAUCE: {topost} net: hns3: add vector status check before free vector + - SAUCE: {topost} net: hns3: add l4_type check for both ipv4 and ipv6 + - SAUCE: {topost} net: hns3: remove unused head file in hnae3.c + - SAUCE: {topost} net: hns3: extraction an interface for state state + init|uninit + - SAUCE: {topost} net: hns3: print the ret value in error information + - SAUCE: {topost} net: hns3: remove the Redundant put_vector in + hns3_client_uninit + - SAUCE: {topost} net: hns3: add unlikely for error check + - SAUCE: {topost} net: hns3: remove back in struct hclge_hw + - SAUCE: {topost} net: hns3: use lower_32_bits and upper_32_bits + - SAUCE: {topost} net: hns3: remove unused hclge_ring_to_dma_dir + - SAUCE: {topost} net: hns3: remove useless code in hclge_cmd_send + - SAUCE: {topost} net: hns3: remove some redundant assignments + - SAUCE: {topost} net: hns3: simplify hclge_cmd_csq_clean + - SAUCE: {topost} net: hns3: using modulo for cyclic counters in + hclge_cmd_send + - SAUCE: {topost} net: hns3: remove a redundant hclge_cmd_csq_done + - SAUCE: {topost} net: hns3: remove some unused members of some structures + - SAUCE: {topost} net: hns3: give default option while dependency HNS3 set + - SAUCE: {topost} net: hns3: use dma_zalloc_coherent instead of + kzalloc/dma_map_single + - SAUCE: {topost} net: hns3: modify hnae_ to hnae3_ + - SAUCE: {topost} net: hns3: fix unused function warning in VF driver + - SAUCE: {topost} net: hns3: remove some redundant assignments + - SAUCE: {topost} net: hns3: standardize the handle of return value + - SAUCE: {topost} net: hns3: remove extra space and brackets + - SAUCE: {topost} net: hns3: fix unreasonable code comments + - SAUCE: {topost} net: hns3: use decimal for bit offset macros + - SAUCE: {topost} net: hns3: modify inconsistent bit mask macros + - SAUCE: {topost} net: hns3: fix mislead parameter name + - SAUCE: {topost} net: hns3: remove unused struct member and definition + - SAUCE: {topost} net: hns3: Add SPDX tags to hns3 driver + - SAUCE: {topost} net: hns3: Add pf reset for hip08 RoCE + - SAUCE: {topost} net: hns3: optimize the process of notifying roce client + - SAUCE: {topost} net: hns3: Add calling roce callback function when link + status change + - SAUCE: {topost} net: hns3: fix tc setup when netdev is first up + - SAUCE: {topost} net: hns3: fix for mac pause not disable in pfc mode + - SAUCE: {topost} net: hns3: fix for waterline not setting correctly + - SAUCE: {topost} net: hns3: fix for l4 checksum offload bug + - SAUCE: {topost} net: hns3: fix for mailbox message truncated problem + - SAUCE: {topost} net: hns3: Add configure for mac minimal frame size + - SAUCE: {topost} net: hns3: fix warning bug when doing lp selftest + - SAUCE: {topost} net: hns3: fix get_vector ops in hclgevf_main module + - SAUCE: {topost} net: hns3: remove the warning when clear reset cause + - SAUCE: {topost} net: hns3: Use roce handle when calling roce callback + function + - SAUCE: {topost} net: hns3: prevent sending command during global or core + reset + - SAUCE: {topost} net: hns3: modify the order of initializeing command queue + register + - SAUCE: {topost} net: hns3: reset net device with rtnl_lock + - SAUCE: {topost} net: hns3: prevent to request reset frequently + - SAUCE: {topost} net: hns3: correct reset event status register + - SAUCE: {topost} net: hns3: separate roce from nic when resetting + - SAUCE: net: hns3: Fix for phy link issue when using marvell phy driver + - SAUCE: {topost} net: hns3: fix return value error in + hns3_reset_notify_down_enet + - SAUCE: {topost} net: hns3: remove unnecessary ring configuration operation + while resetting + - SAUCE: {topost} net: hns3: fix for reset_level default assignment probelm + - SAUCE: {topost} net: hns3: fix for using wrong mask and shift in + hclge_get_ring_chain_from_mbx + - SAUCE: {topost} net: hns3: fix comments for hclge_get_ring_chain_from_mbx + - SAUCE: net: hns3: Fix for VF mailbox cannot receiving PF response + - SAUCE: net: hns3: Fix for VF mailbox receiving unknown message + - SAUCE: net: hns3: Optimize PF CMDQ interrupt switching process + * CVE-2018-7755 + - SAUCE: floppy: Do not copy a kernel pointer to user memory in FDGETPRM ioctl + * Incorrect blacklist of bcm2835_wdt (LP: #1766052) + - [Packaging] Fix missing watchdog for Raspberry Pi + * kernel: Fix arch random implementation (LP: #1775391) + - s390/archrandom: Rework arch random implementation. + * [Ubuntu 1804][boston][ixgbe] EEH causes kernel BUG at /build/linux- + jWa1Fv/linux-4.15.0/drivers/pci/msi.c:352 (i2S) (LP: #1776389) + - ixgbe/ixgbevf: Free IRQ when PCI error recovery removes the device + * Cosmic update to v4.17.2 stable release (LP: #1779117) + - crypto: chelsio - request to HW should wrap + - blkdev_report_zones_ioctl(): Use vmalloc() to allocate large buffers + - KVM: X86: Fix reserved bits check for MOV to CR3 + - KVM: x86: introduce linear_{read,write}_system + - kvm: fix typo in flag name + - kvm: nVMX: Enforce cpl=0 for VMX instructions + - KVM: x86: pass kvm_vcpu to kvm_read_guest_virt and + kvm_write_guest_virt_system + - kvm: x86: use correct privilege level for sgdt/sidt/fxsave/fxrstor access + - staging: android: ion: Switch to pr_warn_once in ion_buffer_destroy + - NFC: pn533: don't send USB data off of the stack + - usbip: vhci_sysfs: fix potential Spectre v1 + - usb-storage: Add support for FL_ALWAYS_SYNC flag in the UAS driver + - usb-storage: Add compatibility quirk flags for G-Technologies G-Drive + - Input: xpad - add GPD Win 2 Controller USB IDs + - phy: qcom-qusb2: Fix crash if nvmem cell not specified + - usb: core: message: remove extra endianness conversion in + usb_set_isoch_delay + - usb: typec: wcove: Remove dependency on HW FSM + - usb: gadget: function: printer: avoid wrong list handling in printer_write() + - usb: gadget: udc: renesas_usb3: fix double phy_put() + - usb: gadget: udc: renesas_usb3: should remove debugfs + - usb: gadget: udc: renesas_usb3: should call pm_runtime_enable() before add + udc + - usb: gadget: udc: renesas_usb3: should call devm_phy_get() before add udc + - usb: gadget: udc: renesas_usb3: should fail if devm_phy_get() returns error + - usb: gadget: udc: renesas_usb3: disable the controller's irqs for + reconnecting + - serial: sh-sci: Stop using printk format %pCr + - tty/serial: atmel: use port->name as name in request_irq() + - serial: samsung: fix maxburst parameter for DMA transactions + - serial: 8250: omap: Fix idling of clocks for unused uarts + - vmw_balloon: fixing double free when batching mode is off + - doc: fix sysfs ABI documentation + - arm64: defconfig: Enable CONFIG_PINCTRL_MT7622 by default + - tty: pl011: Avoid spuriously stuck-off interrupts + - crypto: ccree - correct host regs offset + - Input: goodix - add new ACPI id for GPD Win 2 touch screen + - Input: elan_i2c - add ELAN0612 (Lenovo v330 14IKB) ACPI ID + - crypto: caam - strip input zeros from RSA input buffer + - crypto: caam - fix DMA mapping dir for generated IV + - crypto: caam - fix IV DMA mapping and updating + - crypto: caam/qi - fix IV DMA mapping and updating + - crypto: caam - fix size of RSA prime factor q + - crypto: cavium - Fix fallout from CONFIG_VMAP_STACK + - crypto: cavium - Limit result reading attempts + - crypto: vmx - Remove overly verbose printk from AES init routines + - crypto: vmx - Remove overly verbose printk from AES XTS init + - crypto: omap-sham - fix memleak + - Linux 4.17.2 + * Cosmic update to v4.17.1 stable release (LP: #1779116) + - netfilter: nf_flow_table: attach dst to skbs + - bnx2x: use the right constant + - ip6mr: only set ip6mr_table from setsockopt when ip6mr_new_table succeeds + - ipv6: omit traffic class when calculating flow hash + - l2tp: fix refcount leakage on PPPoL2TP sockets + - netdev-FAQ: clarify DaveM's position for stable backports + - net: metrics: add proper netlink validation + - net/packet: refine check for priv area size + - rtnetlink: validate attributes in do_setlink() + - sctp: not allow transport timeout value less than HZ/5 for hb_timer + - team: use netdev_features_t instead of u32 + - vrf: check the original netdevice for generating redirect + - net: dsa: b53: Fix for brcm tag issue in Cygnus SoC + - ipmr: fix error path when ipmr_new_table fails + - PCI: hv: Do not wait forever on a device that has disappeared + - Linux 4.17.1 + * Miscellaneous Ubuntu changes + - Revert "UBUNTU: SAUCE: crypto: thunderx_zip: Fix fallout from + CONFIG_VMAP_STACK" + - Revert "UBUNTU: SAUCE: cred: Add clone_cred() interface" + - SAUCE: apparmor: userspace queries + - SAUCE: apparmor: patch to provide compatibility with v2.x net rules + - SAUCE: apparmor: af_unix mediation + + [ Ubuntu: 4.17.0-2.3 ] + + * linux: 4.17.0-2.3 -proposed tracker (LP: #1776276) + * Miscellaneous Ubuntu changes + - Config: remove IrDA from annotations + - Config: remove scsi drivers from annotations + - Config: remove BT_HCIBTUART from annotations + - Config: pstore zlib support was renamed + - Config: disable NVRAM for armhf on annotations + - Config: Disable VT on s390x + - Config: Update SSB and B43/B44 options + - Config: some options not supported on some arches anymore + - Config: renamed and removed options + - Config: TCG_CRB is required for IMA on ACPI systems + - Config: EXTCON_AXP288 depends on X86 + - Config: CONFIG_FSI depends on OF + - Config: DRM_RCAR_LVDS now depends on DRM + - CONFIG: Allow CONFIG_LEDS_MLXCPLD for i386 + - Config: Enable HINIC on arm64 + - Config: Set PPS and PTP_1588_CLOCK as y + - Config: Some NF_TABLES options are built-in now + - Config: GENERIC_CPU for ppc64el + - Config: KEXEC_FILE=n for s390x + - Config: CRYPTO_DEFLATE is needed by PSTORE_DEFLATE_COMPRESS + - Config: Disable STM32 support + - Config: Enable FORTIFY_SOURCE for armhf + - Config: use STRONG instead of AUTO for CC_STACKPROTECTOR + * Rebase to v4.17 + + [ Ubuntu: 4.17.0-1.2 ] + + * [Config] enable EDAC_DEBUG on ARM64 (LP: #1772516) + - [Config]: set CONFIG_EDAC_DEBUG=y for ARM64 + * Ubuntu 18.04 kernel crashed while in degraded mode (LP: #1770849) + - SAUCE: powerpc/perf: Fix memory allocation for core-imc based on + num_possible_cpus() + * Integrated Webcam Realtek Integrated_Webcam_HD (0bda:58f4) not working in + DELL XPS 13 9370 with firmware 1.50 (LP: #1763748) + - SAUCE: media: uvcvideo: Support realtek's UVC 1.5 device + * Switch Build-Depends: transfig to fig2dev (LP: #1770770) + - [Config] update Build-Depends: transfig to fig2dev + * update-initramfs not adding i915 GuC firmware for Kaby Lake, firmware fails + to load (LP: #1728238) + - Revert "UBUNTU: SAUCE: (no-up) i915: Remove MODULE_FIRMWARE statements for + unreleased firmware" + * No driver for Huawei network adapters on arm64 (LP: #1769899) + - net-next/hinic: add arm64 support + * linux-snapdragon: reduce EPROBEDEFER noise during boot (LP: #1768761) + - [Config] snapdragon: DRM_I2C_ADV7511=y + * Add d-i support for Huawei NICs (LP: #1767490) + - d-i: add hinic to nic-modules udeb + * Acer Swift sf314-52 power button not managed (LP: #1766054) + - SAUCE: platform/x86: acer-wmi: add another KEY_POWER keycode + * Include nfp driver in linux-modules (LP: #1768526) + - [Config] Add nfp.ko to generic inclusion list + * Miscellaneous Ubuntu changes + - SAUCE: Import aufs driver + - [Config] Enable AUFS config options + - SAUCE: (efi-lockdown) Fix for module sig verification + - SAUCE: (efi-lockdown) Copy secure_boot flag in boot params across kexec + reboot + - SAUCE: (efi-lockdown) efi: Add an EFI_SECURE_BOOT flag to indicate secure + boot mode + - SAUCE: (efi-lockdown) efi: Lock down the kernel if booted in secure boot + mode + - SAUCE: (efi-lockdown) efi: Sanitize boot_params in efi stub + - SAUCE: (efi-lockdown) efi: Don't print secure boot state from the efi stub + - [Config] CONFIG_LOCK_DOWN_IN_EFI_SECURE_BOOT=y + - SAUCE: (efi-lockdown) really lock down kernel under EFI secure boot + - SAUCE: (noup) Update spl to 0.7.5-1ubuntu3, zfs to 0.7.5-1ubuntu17 + - enable zfs build + * Miscellaneous upstream changes + - Revert "UBUNTU: SAUCE: (efi-lockdown) ima: require secure_boot rules in + lockdown mode" + - Rebased to v4.17-rc6 + + [ Ubuntu: 4.17.0-0.1 ] + + * Rebase to v4.17-rc4 + + [ Ubuntu: 4.17.0-0.0 ] + + * Dummy entry. + + [ Ubuntu: 4.16.0-4.5 ] + + * [18.04 FEAT] Add kvm_stat from kernel tree (LP: #1734130) + - tools/kvm_stat: Fix python3 syntax + - tools/kvm_stat: Don't use deprecated file() + - tools/kvm_stat: Remove unused function + - [Packaging] Add linux-tools-host package for VM host tools + - [Config] do_tools_host=true for amd64 + * [Featire] CNL: Enable RAPL support (LP: #1685712) + - powercap: RAPL: Add support for Cannon Lake + * Bionic update to v4.16.2 stable release (LP: #1763388) + - sparc64: Oracle DAX driver depends on SPARC64 + - arp: fix arp_filter on l3slave devices + - net: dsa: Discard frames from unused ports + - net/ipv6: Increment OUTxxx counters after netfilter hook + - net/sched: fix NULL dereference in the error path of tcf_bpf_init() + - pptp: remove a buggy dst release in pptp_connect() + - sctp: do not leak kernel memory to user space + - sctp: sctp_sockaddr_af must check minimal addr length for AF_INET6 + - vlan: also check phy_driver ts_info for vlan's real device + - net: fool proof dev_valid_name() + - ip_tunnel: better validate user provided tunnel names + - ipv6: sit: better validate user provided tunnel names + - ip6_gre: better validate user provided tunnel names + - ip6_tunnel: better validate user provided tunnel names + - vti6: better validate user provided tunnel names + - net_sched: fix a missing idr_remove() in u32_delete_key() + - nfp: use full 40 bits of the NSP buffer address + - Linux 4.16.2 + * sky2 gigabit ethernet driver sometimes stops working after lid-open resume + from sleep (88E8055) (LP: #1758507) // Bionic update to v4.16.2 stable + release (LP: #1763388) + - sky2: Increase D3 delay to sky2 stops working after suspend + * Merge the linux-snapdragon kernel into bionic master/snapdragon + (LP: #1763040) + - arm64: defconfig: enable REMOTEPROC + - arm64: defconfig: enable QCOM audio drivers for APQ8016 and DB410c + - kernel: configs; add distro.config + - arm64: configs: enable WCN36xx + - kernel: distro.config: enable debug friendly USB network adpater + - arm64: configs: enable QCOM Venus + - arm64: defconfig: Enable a53/apcs and avs + - arm64: defconfig: enable ondemand governor as default + - arm64: defconfig: enable QCOM_TSENS + - kernel: configs: enable dm_mod and dm_crypt + - Force the SMD regulator driver to be compiled-in + - arm64: defconfig: enable CFG80211_DEFAULT_PS by default + - arm64: configs: enable BT_QCOMSMD + - kernel: configs: add more USB net drivers + - arm64: defconfig: disable ANALOG_TV and DIGITAL_TV + - arm64: configs: Enable camera drivers + - kernel: configs: add freq stat to sysfs + - arm64: defconfig: enable CONFIG_USB_CONFIGFS_F_FS by default + - arm64: defconfig: Enable QRTR features + - kernel: configs: set USB_CONFIG_F_FS in distro.config + - kernel: distro.config: enable 'schedutil' CPUfreq governor + - kernel: distro.config: enable 'fq' and 'fq_codel' qdiscs + - kernel: distro.config: enable 'BBR' TCP congestion algorithm + - arm64: defconfig: enable LEDS_QCOM_LPG + - HACK: drm/msm/iommu: Remove runtime_put calls in map/unmap + - power: avs: Add support for CPR (Core Power Reduction) + - power: avs: cpr: Use raw mem access for qfprom + - power: avs: cpr: fix with new reg_sequence structures + - power: avs: cpr: Register with cpufreq-dt + - regulator: smd: Add floor and corner operations + - PM / OPP: Support adjusting OPP voltages at runtime + - PM / OPP: Drop RCU usage in dev_pm_opp_adjust_voltage() + - PM / OPP: HACK: Allow to set regulator without opp_list + - PM / OPP: Add a helper to get an opp regulator for device + - cpufreq: Add apq8016 to cpufreq-dt-platdev blacklist + - regulator: smd: Allow REGULATOR_QCOM_SMD_RPM=m + - ov5645: I2C address change + - i2c: Add Qualcomm Camera Control Interface driver + - camss: vfe: Skip first four frames from sensor + - camss: Do not register if no cameras are present + - i2c-qcom-cci: Fix run queue completion timeout + - i2c-qcom-cci: Fix I2C address bug + - media: ov5645: Fix I2C address + - drm/bridge/adv7511: Delay clearing of HPD interrupt status + - HACK: drm/msm/adv7511: Don't rely on interrupts for EDID parsing + - leds: Add driver for Qualcomm LPG + - wcn36xx: Fix warning due to duplicate scan_completed notification + - arm64: dts: Add CPR DT node for msm8916 + - arm64: dts: add spmi-regulator nodes + - arm64: dts: msm8916: Add cpufreq support + - arm64: dts: msm8916: Add a shared CPU opp table + - arm64: dts: msm8916: Add cpu cooling maps + - arm64: dts: pm8916: Mark the s2 regulator as always-on + - arm64: dts: qcom: msm8916: Add msm8916 A53 PLL DT node + - arm64: dts: qcom: msm8916: Use the new APCS mailbox driver + - arm64: dts: qcom: msm8916: Add clock properties to the APCS node + - dt-bindings: media: Binding document for Qualcomm Camera Control Interface + driver + - MAINTAINERS: Add Qualcomm Camera Control Interface driver + - DT: leds: Add Qualcomm Light Pulse Generator binding + - arm64: dts: qcom: msm8996: Add mpp and lpg blocks + - arm64: dts: qcom: Add pwm node for pm8916 + - arm64: dts: qcom: Add user LEDs on db820c + - arm64: dts: qcom: Add WiFI/BT LEDs on db820c + - ARM: dts: qcom: Add LPG node to pm8941 + - ARM: dts: qcom: honami: Add LPG node and RGB LED + - arm64: dts: qcom: Add Camera Control Interface support + - arm64: dts: qcom: Add apps_iommu vfe child node + - arm64: dts: qcom: Add camss device node + - arm64: dts: qcom: Add ov5645 device nodes + - arm64: dts: msm8916: Fix camera sensors I2C addresses + - arm: dts: qcom: db410c: Enable PWM signal on MPP4 + - packaging: arm64: add a uboot flavour - part1 + - packaging: arm64: add a uboot flavour - part2 + - packaging: arm64: add a uboot flavour - part3 + - packaging: arm64: add a uboot flavour - part4 + - packaging: arm64: add a uboot flavour - part5 + - packaging: arm64: rename uboot flavour to snapdragon + - [Config] updateconfigs after qcomlt import + - [Config] arm64: snapdragon: COMMON_CLK_QCOM=y + - [Config] arm64: snapdragon: MSM_GCC_8916=y + - [Config] arm64: snapdragon: REGULATOR_FIXED_VOLTAGE=y + - [Config] arm64: snapdragon: PINCTRL_MSM8916=y + - [Config] arm64: snapdragon: HWSPINLOCK_QCOM=y + - [Config] arm64: snapdragon: SPMI=y, SPMI_MSM_PMIC_ARB=y + - [Config] arm64: snapdragon: REGMAP_SPMI=y, PINCTRL_QCOM_SPMI_PMIC=y + - [Config] arm64: snapdragon: REGULATOR_QCOM_SPMI=y + - [Config] arm64: snapdragon: MFD_SPMI_PMIC=y + - [Config] arm64: snapdragon: QCOM_SMEM=y + - [Config] arm64: snapdragon: RPMSG=y, RPMSG_QCOM_SMD=y + - [Config] arm64: snapdragon: QCOM_SMD_RPM=y, REGULATOR_QCOM_SMD_RPM=y + - [Config] arm64: snapdragon: QCOM_CLK_SMD_RPM=y + - [Config] arm64: snapdragon: QCOM_BAM_DMA=y + - [Config] arm64: snapdragon: QCOM_HIDMA=y, QCOM_HIDMA_MGMT=y + - [Config] arm64: snapdragon: QCOM_CPR=y + - [Config] arm64: snapdragon: QCOM_QFPROM=y, QCOM_TSENS=y + - [Config] arm64: snapdragon: MMC_SDHCI=y, MMC_SDHCI_PLTFM=y, MMC_SDHCI_MSM=y + - [Config] turn off DRM_MSM_REGISTER_LOGGING + - [Config] arm64: snapdragon: I2C_QUP=y + - [Config] arm64: snapdragon: SPI_QUP=y + - [Config] arm64: snapdragon: USB_ULPI_BUS=y, PHY_QCOM_USB_HS=y + - [Config] arm64: snapdragon: QCOM_APCS_IPC=y + - [Config] arm64: snapdragon: QCOM_WCNSS_CTRL=y + - [Config] arm64: snapdragon: QCOM_SMSM=y + - [Config] arm64: snapdragon: QCOM_SMP2P=y + - [Config] arm64: snapdragon: DRM_MSM=y + - [Config] arm64: snapdragon: SND_SOC=y + - [Config] arm64: snapdragon: QCOM_WCNSS_PIL=m + - [Config] arm64: snapdragon: INPUT_PM8941_PWRKEY=y + - [Config] arm64: snapdragon: MEDIA_SUBDRV_AUTOSELECT=y, VIDEO_OV5645=m + - [Config] arm64: snapdragon: SND_SOC_APQ8016_SBC=y, SND_SOC_LPASS_APQ8016=y + - [Config] arm64: snapdragon: SND_SOC_MSM8916_WCD_ANALOG=y, + SND_SOC_MSM8916_WCD_DIGITAL=y + - SAUCE: media: ov5645: skip address change if dt addr == default addr + - SAUCE: drm/msm/adv7511: wrap hacks under CONFIG_ADV7511_SNAPDRAGON_HACKS + #ifdefs + - [Config] arm64: snapdragon: ADV7511_SNAPDRAGON_HACKS=y + - [Packaging] fix up snapdragon abi paths + * LSM stacking patches for bionic (LP: #1763062) + - SAUCE: LSM stacking: procfs: add smack subdir to attrs + - SAUCE: LSM stacking: LSM: Manage credential security blobs + - SAUCE: LSM stacking: LSM: Manage file security blobs + - SAUCE: LSM stacking: LSM: Manage task security blobs + - SAUCE: LSM stacking: LSM: Manage remaining security blobs + - SAUCE: LSM stacking: LSM: General stacking + - SAUCE: LSM stacking: fixup initialize task->security + - SAUCE: LSM stacking: fixup: alloc_task_ctx is dead code + - SAUCE: LSM stacking: add support for stacking getpeersec_stream + - SAUCE: LSM stacking: add stacking support to apparmor network hooks + - SAUCE: LSM stacking: fixup apparmor stacking enablement + - SAUCE: LSM stacking: fixup stacking kconfig + - SAUCE: LSM stacking: allow selecting multiple LSMs using kernel boot params + - SAUCE: LSM stacking: provide prctl interface for setting context + - SAUCE: LSM stacking: inherit current display LSM + - SAUCE: LSM stacking: keep an index for each registered LSM + - SAUCE: LSM stacking: verify display LSM + - SAUCE: LSM stacking: provide a way to specify the default display lsm + - SAUCE: LSM stacking: make sure LSM blob align on 64 bit boundaries + - SAUCE: LSM stacking: add /proc//attr/display_lsm + - SAUCE: LSM stacking: add Kconfig to set default display LSM + - SAUCE: LSM stacking: add configs for LSM stacking + - SAUCE: LSM stacking: add apparmor and selinux proc dirs + - SAUCE: LSM stacking: remove procfs context interface + * linux 4.13.0-13.14 ADT test failure with linux 4.13.0-13.14 + (LP: #1720779) // LSM stacking patches for bionic (LP: #1763062) + - SAUCE: LSM stacking: check for invalid zero sized writes + * Support cq/rq record doorbell for RDMA on HSilicon hip08 systems + (LP: #1762755) + - RDMA/hns: Support rq record doorbell for the user space + - RDMA/hns: Support cq record doorbell for the user space + - RDMA/hns: Support rq record doorbell for kernel space + - RDMA/hns: Support cq record doorbell for kernel space + - RDMA/hns: Fix cqn type and init resp + - RDMA/hns: Fix init resp when alloc ucontext + - RDMA/hns: Fix cq record doorbell enable in kernel + * Replace LPC patchset with upstream version (LP: #1762758) + - Revert "UBUNTU: SAUCE: MAINTAINERS: Add maintainer for HiSilicon LPC driver" + - Revert "UBUNTU: SAUCE: HISI LPC: Add ACPI support" + - Revert "UBUNTU: SAUCE: ACPI / scan: do not enumerate Indirect IO host + children" + - Revert "UBUNTU: SAUCE: HISI LPC: Support the LPC host on Hip06/Hip07 with DT + bindings" + - Revert "UBUNTU: SAUCE: OF: Add missing I/O range exception for indirect-IO + devices" + - Revert "UBUNTU: SAUCE: PCI: Apply the new generic I/O management on PCI IO + hosts" + - Revert "UBUNTU: SAUCE: PCI: Add fwnode handler as input param of + pci_register_io_range()" + - Revert "UBUNTU: SAUCE: PCI: Remove unused __weak attribute in + pci_register_io_range()" + - Revert "UBUNTU: SAUCE: LIB: Introduce a generic PIO mapping method" + - lib: Add generic PIO mapping method + - PCI: Remove __weak tag from pci_register_io_range() + - PCI: Add fwnode handler as input param of pci_register_io_range() + - PCI: Apply the new generic I/O management on PCI IO hosts + - of: Add missing I/O range exception for indirect-IO devices + - HISI LPC: Support the LPC host on Hip06/Hip07 with DT bindings + - ACPI / scan: Rename acpi_is_serial_bus_slave() for more general use + - ACPI / scan: Do not enumerate Indirect IO host children + - HISI LPC: Add ACPI support + - MAINTAINERS: Add John Garry as maintainer for HiSilicon LPC driver + * Enable Tunneled Operations on POWER9 (LP: #1762448) + - powerpc/powernv: Enable tunneled operations + - cxl: read PHB indications from the device tree + * PSL traces reset after PERST for debug AFU image (LP: #1762462) + - cxl: Enable NORST bit in PSL_DEBUG register for PSL9 + * NFS + sec=krb5 is broken (LP: #1759791) + - sunrpc: remove incorrect HMAC request initialization + * Raspberry Pi 3 microSD support missing from the installer (LP: #1729128) + - d-i: add bcm2835 to block-modules + * Backport USB core quirks (LP: #1762695) + - usb: core: Add "quirks" parameter for usbcore + - usb: core: Copy parameter string correctly and remove superfluous null check + - usb: core: Add USB_QUIRK_DELAY_CTRL_MSG to usbcore quirks + * [Ubuntu 18.04] cryptsetup: 'device-mapper: reload ioctl on failed' when + setting up a second end-to-end encrypted disk (LP: #1762353) + - SAUCE: s390/crypto: Adjust s390 aes and paes cipher + * System Z {kernel} UBUNTU18.04 wrong kernel config (LP: #1762719) + - s390: move nobp parameter functions to nospec-branch.c + - s390: add automatic detection of the spectre defense + - s390: report spectre mitigation via syslog + - s390: add sysfs attributes for spectre + - [Config] CONFIG_EXPOLINE_AUTO=y, CONFIG_KERNEL_NOBP=n for s390 + - s390: correct nospec auto detection init order + * Additional spectre and meltdown patches (LP: #1760099) // CVE-2017-5715 + - powerpc/64s: Wire up cpu_show_spectre_v2() + * Additional spectre and meltdown patches (LP: #1760099) // CVE-2017-5753 + - powerpc/64s: Wire up cpu_show_spectre_v1() + * Additional spectre and meltdown patches (LP: #1760099) // CVE-2017-5754 + - powerpc/rfi-flush: Move the logic to avoid a redo into the debugfs code + - powerpc/rfi-flush: Make it possible to call setup_rfi_flush() again + - powerpc/rfi-flush: Always enable fallback flush on pseries + - powerpc/rfi-flush: Differentiate enabled and patched flush types + - powerpc/rfi-flush: Call setup_rfi_flush() after LPM migration + - powerpc/64s: Move cpu_show_meltdown() + - powerpc/64s: Enhance the information in cpu_show_meltdown() + - powerpc/powernv: Use the security flags in pnv_setup_rfi_flush() + - powerpc/pseries: Use the security flags in pseries_setup_rfi_flush() + * Additional spectre and meltdown patches (LP: #1760099) // CVE-2017-5715 // + CVE-2017-5753 // CVE-2017-5754 + - powerpc/pseries: Add new H_GET_CPU_CHARACTERISTICS flags + - powerpc: Add security feature flags for Spectre/Meltdown + - powerpc/pseries: Set or clear security feature flags + - powerpc/powernv: Set or clear security feature flags + * Hisilicon network subsystem 3 support (LP: #1761610) + - net: hns3: export pci table of hclge and hclgevf to userspace + - d-i: Add hns3 drivers to nic-modules + * "ip a" command on a guest VM shows UNKNOWN status (LP: #1761534) + - virtio-net: Fix operstate for virtio when no VIRTIO_NET_F_STATUS + * perf vendor events arm64: Enable JSON events for ThunderX2 B0 (LP: #1760712) + - perf vendor events: Drop incomplete multiple mapfile support + - perf vendor events: Fix error code in json_events() + - perf vendor events: Drop support for unused topic directories + - perf vendor events: Add support for pmu events vendor subdirectory + - perf vendor events arm64: Relocate ThunderX2 JSON to cavium subdirectory + - perf vendor events arm64: Relocate Cortex A53 JSONs to arm subdirectory + - perf vendor events: Add support for arch standard events + - perf vendor events arm64: Add armv8-recommended.json + - perf vendor events arm64: Fixup ThunderX2 to use recommended events + - perf vendor events arm64: fixup A53 to use recommended events + - perf vendor events arm64: add HiSilicon hip08 JSON file + - perf vendor events arm64: Enable JSON events for ThunderX2 B0 + * Warning "cache flush timed out!" seen when unloading the cxl driver + (LP: #1762367) + - cxl: Check if PSL data-cache is available before issue flush request + * Bionic update to v4.16.1 stable release (LP: #1763170) + - bitmap: fix memset optimization on big-endian systems + - USB: serial: ftdi_sio: add RT Systems VX-8 cable + - USB: serial: ftdi_sio: add support for Harman FirmwareHubEmulator + - USB: serial: cp210x: add ELDAT Easywave RX09 id + - serial: 8250: Add Nuvoton NPCM UART + - mei: remove dev_err message on an unsupported ioctl + - /dev/mem: Avoid overwriting "err" in read_mem() + - media: usbtv: prevent double free in error case + - parport_pc: Add support for WCH CH382L PCI-E single parallel port card. + - crypto: lrw - Free rctx->ext with kzfree + - crypto: ccp - Fill the result buffer only on digest, finup, and final ops + - crypto: talitos - don't persistently map req_ctx->hw_context and + req_ctx->buf + - crypto: inside-secure - fix clock management + - crypto: testmgr - Fix incorrect values in PKCS#1 test vector + - crypto: talitos - fix IPsec cipher in length + - crypto: ahash - Fix early termination in hash walk + - crypto: caam - Fix null dereference at error path + - crypto: ccp - return an actual key size from RSA max_size callback + - crypto: arm,arm64 - Fix random regeneration of S_shipped + - crypto: x86/cast5-avx - fix ECB encryption when long sg follows short one + - Bluetooth: hci_bcm: Add 6 new ACPI HIDs + - Btrfs: fix unexpected cow in run_delalloc_nocow + - siox: fix possible buffer overflow in device_add_store + - staging: comedi: ni_mio_common: ack ai fifo error interrupts. + - Revert "base: arch_topology: fix section mismatch build warnings" + - Input: ALPS - fix TrackStick detection on Thinkpad L570 and Latitude 7370 + - Input: i8042 - add Lenovo ThinkPad L460 to i8042 reset list + - Input: i8042 - enable MUX on Sony VAIO VGN-CS series to fix touchpad + - vt: change SGR 21 to follow the standards + - Fix slab name "biovec-(1<<(21-12))" + - signal: Correct the offset of si_pkey and si_lower in struct siginfo on m68k + - Linux 4.16.1 + * [18.04][config] regression: nvme and nvme_core couldn't be built as modules + starting 4.15-rc2 (LP: #1759893) + - SAUCE: Revert "lightnvm: include NVM Express driver if OCSSD is selected for + build" + - [Config] CONFIG_BLK_DEV_NMVE=m + * FFe: Enable configuring resume offset via sysfs (LP: #1760106) + - PM / hibernate: Make passing hibernate offsets more friendly + * Ubuntu18.04:POWER9:DD2.2 - Unable to start a KVM guest with default machine + type(pseries-bionic) complaining "KVM implementation does not support + Transactional Memory, try cap-htm=off" (kvm) (LP: #1752026) + - powerpc: Use feature bit for RTC presence rather than timebase presence + - powerpc: Book E: Remove unused CPU_FTR_L2CSR bit + - powerpc: Free up CPU feature bits on 64-bit machines + - powerpc: Add CPU feature bits for TM bug workarounds on POWER9 v2.2 + - powerpc/powernv: Provide a way to force a core into SMT4 mode + - KVM: PPC: Book3S HV: Work around transactional memory bugs in POWER9 + - KVM: PPC: Book3S HV: Work around XER[SO] bug in fake suspend mode + - KVM: PPC: Book3S HV: Work around TEXASR bug in fake suspend state + * [Feature][CFL][ICL] [CNL]Thunderbolt support (Titan Ridge) (LP: #1730775) + - thunderbolt: Resume control channel after hibernation image is created + - thunderbolt: Serialize PCIe tunnel creation with PCI rescan + - thunderbolt: Handle connecting device in place of host properly + - thunderbolt: Do not overwrite error code when domain adding fails + - thunderbolt: Wait a bit longer for root switch config space + - thunderbolt: Wait a bit longer for ICM to authenticate the active NVM + - thunderbolt: Handle rejected Thunderbolt devices + - thunderbolt: Factor common ICM add and update operations out + - thunderbolt: Correct function name in kernel-doc comment + - thunderbolt: Add tb_switch_get() + - thunderbolt: Add tb_switch_find_by_route() + - thunderbolt: Add tb_xdomain_find_by_route() + - thunderbolt: Add constant for approval timeout + - thunderbolt: Move driver ready handling to struct icm + - thunderbolt: Add 'boot' attribute for devices + - thunderbolt: Add support for preboot ACL + - thunderbolt: Introduce USB only (SL4) security level + - thunderbolt: Add support for Intel Titan Ridge + * QCA9377 requires more IRAM banks for its new firmware (LP: #1748345) + - ath10k: update the IRAM bank number for QCA9377 + * Fix an issue that when system in S3, USB keyboard can't wake up the system. + (LP: #1759511) + - ACPI / PM: Allow deeper wakeup power states with no _SxD nor _SxW + * cxl: Fix timebase synchronization status on POWER9 missing (CAPI) + (LP: #1757228) + - cxl: Fix timebase synchronization status on P9 + * [Feature]Update Ubuntu 18.04 lpfc FC driver with 32/64GB HBA support and bug + fixes (LP: #1752182) + - scsi: lpfc: Fix frequency of Release WQE CQEs + - scsi: lpfc: Increase CQ and WQ sizes for SCSI + - scsi: lpfc: move placement of target destroy on driver detach + - scsi: lpfc: correct debug counters for abort + - scsi: lpfc: Add WQ Full Logic for NVME Target + - scsi: lpfc: Fix PRLI handling when topology type changes + - scsi: lpfc: Fix IO failure during hba reset testing with nvme io. + - scsi: lpfc: Fix RQ empty firmware trap + - scsi: lpfc: Allow set of maximum outstanding SCSI cmd limit for a target + - scsi: lpfc: Fix soft lockup in lpfc worker thread during LIP testing + - scsi: lpfc: Fix issue_lip if link is disabled + - scsi: lpfc: Indicate CONF support in NVMe PRLI + - scsi: lpfc: Fix SCSI io host reset causing kernel crash + - scsi: lpfc: Validate adapter support for SRIU option + - scsi: lpfc: Fix header inclusion in lpfc_nvmet + - scsi: lpfc: Treat SCSI Write operation Underruns as an error + - scsi: lpfc: Fix nonrecovery of NVME controller after cable swap. + - scsi: lpfc: update driver version to 11.4.0.7 + - scsi: lpfc: Update 11.4.0.7 modified files for 2018 Copyright + - scsi: lpfc: Rework lpfc to allow different sli4 cq and eq handlers + - scsi: lpfc: Rework sli4 doorbell infrastructure + - scsi: lpfc: Add SLI-4 if_type=6 support to the code base + - scsi: lpfc: Add push-to-adapter support to sli4 + - scsi: lpfc: Add PCI Ids for if_type=6 hardware + - scsi: lpfc: Add 64G link speed support + - scsi: lpfc: Add if_type=6 support for cycling valid bits + - scsi: lpfc: Enable fw download on if_type=6 devices + - scsi: lpfc: Add embedded data pointers for enhanced performance + - scsi: lpfc: Fix nvme embedded io length on new hardware + - scsi: lpfc: Work around NVME cmd iu SGL type + - scsi: lpfc: update driver version to 12.0.0.0 + - scsi: lpfc: Change Copyright of 12.0.0.0 modified files to 2018 + - scsi: lpfc: use __raw_writeX on DPP copies + - scsi: lpfc: Add missing unlock in WQ full logic + * /dev/bcache/by-uuid links not created after reboot (LP: #1729145) + - SAUCE: (no-up) bcache: decouple emitting a cached_dev CHANGE uevent + * DKMS driver builds fail with: Cannot use CONFIG_STACK_VALIDATION=y, please + install libelf-dev, libelf-devel or elfutils-libelf-devel (LP: #1760876) + - [Packaging] include the retpoline extractor in the headers + * Use med_with_dipm SATA LPM to save more power for mobile platforms + (LP: #1759547) + - [Config] CONFIG_SATA_MOBILE_LPM_POLICY=3 + * Miscellaneous Ubuntu changes + - [Packaging] Only install cloud init files when do_tools_common=true + - SAUCE: Import aufs driver + - [Config] Enable AUFS config options + + [ Ubuntu: 4.16.0-3.4 ] + + * Allow multiple mounts of zfs datasets (LP: #1759848) + - SAUCE: Allow mounting datasets more than once (LP: #1759848) + * zfs system process hung on container stop/delete (LP: #1754584) + - SAUCE: Fix non-prefaulted page deadlock (LP: #1754584) + - Revert "UBUNTU: SAUCE: Fix non-prefaulted page deadlock (LP: #1754584)" + - SAUCE: Fix non-prefaulted page deadlock (LP: #1754584) + * ubuntu_zram_smoke test will cause soft lockup on Artful ThunderX ARM64 + (LP: #1755073) + - SAUCE: crypto: thunderx_zip: Fix fallout from CONFIG_VMAP_STACK + * CAPI Flash (cxlflash) update (LP: #1752672) + - SAUCE: cxlflash: Preserve number of interrupts for master contexts + - SAUCE: cxlflash: Avoid clobbering context control register value + - SAUCE: cxlflash: Add argument identifier names + - SAUCE: cxlflash: Introduce OCXL backend + - SAUCE: cxlflash: Hardware AFU for OCXL + - SAUCE: cxlflash: Read host function configuration + - SAUCE: cxlflash: Setup function acTag range + - SAUCE: cxlflash: Read host AFU configuration + - SAUCE: cxlflash: Setup AFU acTag range + - SAUCE: cxlflash: Setup AFU PASID + - SAUCE: cxlflash: Adapter context support for OCXL + - SAUCE: cxlflash: Use IDR to manage adapter contexts + - SAUCE: cxlflash: Support adapter file descriptors for OCXL + - SAUCE: cxlflash: Support adapter context discovery + - SAUCE: cxlflash: Support image reload policy modification + - SAUCE: cxlflash: MMIO map the AFU + - SAUCE: cxlflash: Support starting an adapter context + - SAUCE: cxlflash: Support process specific mappings + - SAUCE: cxlflash: Support AFU state toggling + - SAUCE: cxlflash: Support reading adapter VPD data + - SAUCE: cxlflash: Setup function OCXL link + - SAUCE: cxlflash: Setup OCXL transaction layer + - SAUCE: cxlflash: Support process element lifecycle + - SAUCE: cxlflash: Support AFU interrupt management + - SAUCE: cxlflash: Support AFU interrupt mapping and registration + - SAUCE: cxlflash: Support starting user contexts + - SAUCE: cxlflash: Support adapter context polling + - SAUCE: cxlflash: Support adapter context reading + - SAUCE: cxlflash: Support adapter context mmap and release + - SAUCE: cxlflash: Support file descriptor mapping + - SAUCE: cxlflash: Introduce object handle fop + - SAUCE: cxlflash: Setup LISNs for user contexts + - SAUCE: cxlflash: Setup LISNs for master contexts + - SAUCE: cxlflash: Update synchronous interrupt status bits + - SAUCE: cxlflash: Introduce OCXL context state machine + - SAUCE: cxlflash: Register for translation errors + - SAUCE: cxlflash: Support AFU reset + - SAUCE: cxlflash: Enable OCXL operations + * [Artful][Wyse 3040] System hang when trying to enable an offlined CPU core + (LP: #1736393) + - SAUCE: drm/i915:Don't set chip specific data + - SAUCE: drm/i915: make previous commit affects Wyse 3040 only + * zed process consuming 100% cpu (LP: #1751796) + - SAUCE: Fix ioctl loop-spin in zed (LP: #1751796) + * Ubuntu18.04:PowerPC - Set Transparent Huge Pages (THP) by default to + "always" (LP: #1753708) + - Config: Set TRANSPARENT_HUGEPAGE_ALWAYS=y on ppc64el + * retpoline hints: primary infrastructure and initial hints (LP: #1758856) + - [Packaging] retpoline -- add safe usage hint support + - [Packaging] retpoline-check -- only report additions + - [Packaging] retpoline -- widen indirect call/jmp detection + - [Packaging] retpoline -- elide %rip relative indirections + - [Packaging] retpoline -- clear hint information from packages + - SAUCE: apm -- annotate indirect calls within + firmware_restrict_branch_speculation_{start,end} + - SAUCE: EFI -- annotate indirect calls within + firmware_restrict_branch_speculation_{start,end} + - SAUCE: early/late -- annotate indirect calls in early/late initialisation + code + - SAUCE: vga_set_mode -- avoid jump tables + - [Config] retpoine -- switch to new format + * Miscellaneous Ubuntu changes + - [Packaging] final-checks -- remove check for empty retpoline files + - [Packaging] skip cloud tools packaging when not building package + * Rebase to v4.16 + + [ Ubuntu: 4.16.0-2.3 ] + + * devpts: handle bind-mounts (LP: #1755857) + - SAUCE: devpts: hoist out check for DEVPTS_SUPER_MAGIC + - SAUCE: devpts: resolve devpts bind-mounts + - SAUCE: devpts: comment devpts_mntget() + - SAUCE: selftests: add devpts selftests + * [bionic][arm64] d-i: add hisi_sas_v3_hw to scsi-modules (LP: #1756103) + - d-i: add hisi_sas_v3_hw to scsi-modules + * [Bionic][ARM64] PCI and SAS driver patches for hip08 SoCs (LP: #1756094) + - SAUCE: scsi: hisi_sas: config for hip08 ES + - SAUCE: scsi: hisi_sas: export device table of v3 hw to userspace + * s390/crypto: Fix kernel crash on aes_s390 module remove (LP: #1753424) + - SAUCE: s390/crypto: Fix kernel crash on aes_s390 module remove. + * Fix ARC hit rate (LP: #1755158) + - SAUCE: Fix ARC hit rate (LP: #1755158) + * ZFS setgid broken on 0.7 (LP: #1753288) + - SAUCE: Fix ZFS setgid + * CONFIG_EFI=y on armhf (LP: #1726362) + - [Config] CONFIG_EFI=y on armhf, reconcile secureboot EFI settings + * [Feature] Add xHCI debug device support in the driver (LP: #1730832) + - [Config] CONFIG_USB_XHCI_DBGCAP=y + * retpoline: ignore %cs:0xNNN constant indirections (LP: #1752655) + - [Packaging] retpoline -- elide %cs:0xNNNN constants on i386 + - [Config] retpoline -- clean up i386 retpoline files + * Miscellaneous Ubuntu changes + - [Packaging] retpoline-extract: flag *0xNNN(%reg) branches + - [Config] fix up retpoline abi files + - [Config] fix up retpoline abi files + - d-i: Add netsec to nic-modules + * Rebase to v4.16-rc6 + + [ Ubuntu: 4.16.0-1.2 ] + + * Driver not found in Ubuntu kernel does not detect interface (LP: #1745927) + - d-i: add cxgb4 to nic-modules + * Support low-pin-count devices on Hisilicon SoCs (LP: #1677319) + - [Config] CONFIG_INDIRECT_PIO=y + - SAUCE: LIB: Introduce a generic PIO mapping method + - SAUCE: PCI: Remove unused __weak attribute in pci_register_io_range() + - SAUCE: PCI: Add fwnode handler as input param of pci_register_io_range() + - SAUCE: PCI: Apply the new generic I/O management on PCI IO hosts + - SAUCE: OF: Add missing I/O range exception for indirect-IO devices + - [Config] CONFIG_HISILICON_LPC=y + - SAUCE: HISI LPC: Support the LPC host on Hip06/Hip07 with DT bindings + - SAUCE: ACPI / scan: do not enumerate Indirect IO host children + - SAUCE: HISI LPC: Add ACPI support + - SAUCE: MAINTAINERS: Add maintainer for HiSilicon LPC driver + * Miscellaneous Ubuntu changes + - SAUCE: tools: use CC for linking acpi tools + * Rebase to v4.16-rc3 + + [ Ubuntu: 4.16.0-0.1 ] + + * retpoline abi files are empty on i386 (LP: #1751021) + - [Packaging] retpoline-extract -- instantiate retpoline files for i386 + - [Packaging] final-checks -- sanity checking ABI contents + - [Packaging] final-checks -- check for empty retpoline files + * Miscellaneous upstream changes + - disable vbox build + - Disable zfs build + * Rebase to v4.16-rc2 + + [ Ubuntu: 4.16.0-0.0 ] + + * Dummy entry + + -- Marcelo Henrique Cerri Thu, 26 Jul 2018 09:49:11 -0300 + +linux-azure (4.17.0-1000.0) cosmic; urgency=medium + + * Empty. + + -- Marcelo Henrique Cerri Mon, 23 Jul 2018 11:16:46 -0300 + +linux-azure (4.15.0-1018.18) bionic; urgency=medium + + * linux-azure: 4.15.0-1018.18 -proposed tracker (LP: #1782178) + + + [ Ubuntu: 4.15.0-29.31 ] + + * linux: 4.15.0-29.31 -proposed tracker (LP: #1782173) + * [SRU Bionic][Cosmic] kernel panic in ipmi_ssif at msg_done_handler + (LP: #1777716) + - ipmi_ssif: Fix kernel panic at msg_done_handler + * Update to ocxl driver for 18.04.1 (LP: #1775786) + - misc: ocxl: use put_device() instead of device_unregister() + - powerpc: Add TIDR CPU feature for POWER9 + - powerpc: Use TIDR CPU feature to control TIDR allocation + - powerpc: use task_pid_nr() for TID allocation + - ocxl: Rename pnv_ocxl_spa_remove_pe to clarify it's action + - ocxl: Expose the thread_id needed for wait on POWER9 + - ocxl: Add an IOCTL so userspace knows what OCXL features are available + - ocxl: Document new OCXL IOCTLs + - ocxl: Fix missing unlock on error in afu_ioctl_enable_p9_wait() + * Critical upstream bugfix missing in Ubuntu 18.04 - frequent Xorg crash after + suspend (LP: #1776887) + - ocxl: Document the OCXL_IOCTL_GET_METADATA IOCTL + * Hard LOCKUP observed on stressing Ubuntu 18 04 (LP: #1777194) + - powerpc: use NMI IPI for smp_send_stop + - powerpc: Fix smp_send_stop NMI IPI handling + * IPL: ppc64_cpu --frequency hang with INFO: rcu_sched detected stalls on + CPUs/tasks on w34 and wsbmc016 with 920.1714.20170330n (LP: #1773964) + - rtc: opal: Fix OPAL RTC driver OPAL_BUSY loops + * [Regression] EXT4-fs error (device sda2): ext4_validate_block_bitmap:383: + comm stress-ng: bg 4705: bad block bitmap checksum (LP: #1781709) + - SAUCE: Revert "UBUNTU: SAUCE: ext4: fix ext4_validate_inode_bitmap: comm + stress-ng: Corrupt inode bitmap" + - SAUCE: ext4: check for allocation block validity with block group locked + + [ Ubuntu: 4.15.0-28.30 ] + + * linux: 4.15.0-28.30 -proposed tracker (LP: #1781433) + * Cannot set MTU higher than 1500 in Xen instance (LP: #1781413) + - xen-netfront: Fix mismatched rtnl_unlock + - xen-netfront: Update features after registering netdev + + -- Marcelo Henrique Cerri Thu, 19 Jul 2018 09:03:45 -0300 + +linux-azure (4.15.0-1017.17) bionic; urgency=medium + + * linux-azure: 4.15.0-1017.17 -proposed tracker (LP: #1781066) + + * [Hyper-V] Please set CONFIG_BLK_DEV_DRBD to "m" (LP: #1780309) + - [Config] linux-azure: CONFIG_BLK_DEV_DRBD=m + + [ Ubuntu: 4.15.0-27.29 ] + + * linux: 4.15.0-27.29 -proposed tracker (LP: #1781062) + * [Regression] EXT4-fs error (device sda1): ext4_validate_inode_bitmap:99: + comm stress-ng: Corrupt inode bitmap (LP: #1780137) + - SAUCE: ext4: fix ext4_validate_inode_bitmap: comm stress-ng: Corrupt inode + bitmap + + -- Marcelo Henrique Cerri Wed, 11 Jul 2018 18:53:37 -0300 + +linux-azure (4.15.0-1016.16) bionic; urgency=medium + + * linux-azure: 4.15.0-1016.16 -proposed tracker (LP: #1780117) + + + [ Ubuntu: 4.15.0-26.28 ] + + * linux: 4.15.0-26.28 -proposed tracker (LP: #1780112) + * failure to boot with linux-image-4.15.0-24-generic (LP: #1779827) // Cloud- + init causes potentially huge boot delays with 4.15 kernels (LP: #1780062) + - random: Make getrandom() ready earlier + + -- Marcelo Henrique Cerri Wed, 04 Jul 2018 14:17:07 -0300 + +linux-azure (4.15.0-1015.15) bionic; urgency=medium + + * linux-azure: 4.15.0-1015.15 -proposed tracker (LP: #1779360) + + * linux-azure: fix Vcs-Git tag (LP: #1779929) + - [Packaging]: Update Vcs-Git + + [ Ubuntu: 4.15.0-25.27 ] + + * linux: 4.15.0-25.27 -proposed tracker (LP: #1779354) + * hisi_sas_v3_hw: internal task abort: timeout and not done. (LP: #1777736) + - scsi: hisi_sas: Update a couple of register settings for v3 hw + * hisi_sas: Add missing PHY spinlock init (LP: #1777734) + - scsi: hisi_sas: Add missing PHY spinlock init + * hisi_sas: improve read performance by pre-allocating slot DMA buffers + (LP: #1777727) + - scsi: hisi_sas: use dma_zalloc_coherent() + - scsi: hisi_sas: Use dmam_alloc_coherent() + - scsi: hisi_sas: Pre-allocate slot DMA buffers + * hisi_sas: Failures during host reset (LP: #1777696) + - scsi: hisi_sas: Only process broadcast change in phy_bcast_v3_hw() + - scsi: hisi_sas: Fix the conflict between dev gone and host reset + - scsi: hisi_sas: Adjust task reject period during host reset + - scsi: hisi_sas: Add a flag to filter PHY events during reset + - scsi: hisi_sas: Release all remaining resources in clear nexus ha + * Fake SAS addresses for SATA disks on HiSilicon D05 are non-unique + (LP: #1776750) + - scsi: hisi_sas: make SAS address of SATA disks unique + * Vcs-Git header on bionic linux source package points to zesty git tree + (LP: #1766055) + - [Packaging]: Update Vcs-Git + * large KVM instances run out of IRQ routes (LP: #1778261) + - SAUCE: kvm -- increase KVM_MAX_IRQ_ROUTES to 2048 on x86 + + -- Marcelo Henrique Cerri Tue, 03 Jul 2018 16:17:05 -0300 + +linux-azure (4.15.0-1014.14) bionic; urgency=medium + + * linux-azure: 4.15.0-1014.14 -proposed tracker (LP: #1776342) + + * [Hyper-V] Disable CONFIG_HOTPLUG_CPU in linux-azure (LP: #1776293) + - [Config] azure: CONFIG_HOTPLUG_CPU=n + + * [Hyper-V] IB/mlx5: Respect new UMR capabilities (LP: #1762554) + - IB/mlx5: Enable ECN capable bits for UD RoCE v2 QPs + - IB/mlx5: Respect new UMR capabilities + + [ Ubuntu: 4.15.0-24.26 ] + + * linux: 4.15.0-24.26 -proposed tracker (LP: #1776338) + * Bionic update: upstream stable patchset 2018-06-06 (LP: #1775483) + - drm: bridge: dw-hdmi: Fix overflow workaround for Amlogic Meson GX SoCs + - i40e: Fix attach VF to VM issue + - tpm: cmd_ready command can be issued only after granting locality + - tpm: tpm-interface: fix tpm_transmit/_cmd kdoc + - tpm: add retry logic + - Revert "ath10k: send (re)assoc peer command when NSS changed" + - bonding: do not set slave_dev npinfo before slave_enable_netpoll in + bond_enslave + - ipv6: add RTA_TABLE and RTA_PREFSRC to rtm_ipv6_policy + - ipv6: sr: fix NULL pointer dereference in seg6_do_srh_encap()- v4 pkts + - KEYS: DNS: limit the length of option strings + - l2tp: check sockaddr length in pppol2tp_connect() + - net: validate attribute sizes in neigh_dump_table() + - llc: delete timers synchronously in llc_sk_free() + - tcp: don't read out-of-bounds opsize + - net: af_packet: fix race in PACKET_{R|T}X_RING + - tcp: md5: reject TCP_MD5SIG or TCP_MD5SIG_EXT on established sockets + - net: fix deadlock while clearing neighbor proxy table + - team: avoid adding twice the same option to the event list + - net/smc: fix shutdown in state SMC_LISTEN + - team: fix netconsole setup over team + - packet: fix bitfield update race + - tipc: add policy for TIPC_NLA_NET_ADDR + - pppoe: check sockaddr length in pppoe_connect() + - vlan: Fix reading memory beyond skb->tail in skb_vlan_tagged_multi + - amd-xgbe: Add pre/post auto-negotiation phy hooks + - sctp: do not check port in sctp_inet6_cmp_addr + - amd-xgbe: Improve KR auto-negotiation and training + - strparser: Do not call mod_delayed_work with a timeout of LONG_MAX + - amd-xgbe: Only use the SFP supported transceiver signals + - strparser: Fix incorrect strp->need_bytes value. + - net: sched: ife: signal not finding metaid + - tcp: clear tp->packets_out when purging write queue + - net: sched: ife: handle malformed tlv length + - net: sched: ife: check on metadata length + - llc: hold llc_sap before release_sock() + - llc: fix NULL pointer deref for SOCK_ZAPPED + - net: ethernet: ti: cpsw: fix tx vlan priority mapping + - virtio_net: split out ctrl buffer + - virtio_net: fix adding vids on big-endian + - KVM: s390: force bp isolation for VSIE + - s390: correct module section names for expoline code revert + - microblaze: Setup dependencies for ASM optimized lib functions + - commoncap: Handle memory allocation failure. + - scsi: mptsas: Disable WRITE SAME + - cdrom: information leak in cdrom_ioctl_media_changed() + - m68k/mac: Don't remap SWIM MMIO region + - block/swim: Check drive type + - block/swim: Don't log an error message for an invalid ioctl + - block/swim: Remove extra put_disk() call from error path + - block/swim: Rename macros to avoid inconsistent inverted logic + - block/swim: Select appropriate drive on device open + - block/swim: Fix array bounds check + - block/swim: Fix IO error at end of medium + - tracing: Fix missing tab for hwlat_detector print format + - s390/cio: update chpid descriptor after resource accessibility event + - s390/dasd: fix IO error for newly defined devices + - s390/uprobes: implement arch_uretprobe_is_alive() + - ACPI / video: Only default only_lcd to true on Win8-ready _desktops_ + - docs: ip-sysctl.txt: fix name of some ipv6 variables + - net: mvpp2: Fix DMA address mask size + - net: stmmac: Disable ACS Feature for GMAC >= 4 + - l2tp: hold reference on tunnels in netlink dumps + - l2tp: hold reference on tunnels printed in pppol2tp proc file + - l2tp: hold reference on tunnels printed in l2tp/tunnels debugfs file + - l2tp: fix {pppol2tp, l2tp_dfs}_seq_stop() in case of seq_file overflow + - s390/qeth: fix error handling in adapter command callbacks + - s390/qeth: avoid control IO completion stalls + - s390/qeth: handle failure on workqueue creation + - bnxt_en: Fix memory fault in bnxt_ethtool_init() + - virtio-net: add missing virtqueue kick when flushing packets + - VSOCK: make af_vsock.ko removable again + - hwmon: (k10temp) Add temperature offset for Ryzen 2700X + - hwmon: (k10temp) Add support for AMD Ryzen w/ Vega graphics + - s390/cpum_cf: rename IBM z13/z14 counter names + - kprobes: Fix random address output of blacklist file + - Revert "pinctrl: intel: Initialize GPIO properly when used through irqchip" + * Lenovo V330 needs patch in ideapad_laptop module for rfkill (LP: #1774636) + - SAUCE: Add Lenovo V330 to the ideapad_laptop rfkill blacklist + * bluetooth controller fail after suspend with USB autosuspend on XPS 13 9360 + (LP: #1775217) + - Bluetooth: btusb: Add Dell XPS 13 9360 to btusb_needs_reset_resume_table + * [Hyper-V] PCI: hv: Fix 2 hang issues in hv_compose_msi_msg (LP: #1758378) + - PCI: hv: Only queue new work items in hv_pci_devices_present() if necessary + - PCI: hv: Remove the bogus test in hv_eject_device_work() + - PCI: hv: Fix a comment typo in _hv_pcifront_read_config() + * register on binfmt_misc may overflow and crash the system (LP: #1775856) + - fs/binfmt_misc.c: do not allow offset overflow + * CVE-2018-11508 + - compat: fix 4-byte infoleak via uninitialized struct field + * Network installs fail on SocioNext board (LP: #1775884) + - net: netsec: reduce DMA mask to 40 bits + - net: socionext: reset hardware in ndo_stop + - net: netsec: enable tx-irq during open callback + * r8169 ethernet card don't work after returning from suspension + (LP: #1752772) + - PCI: Add pcim_set_mwi(), a device-managed pci_set_mwi() + - r8169: switch to device-managed functions in probe + - r8169: remove netif_napi_del in probe error path + - r8169: remove some WOL-related dead code + - r8169: disable WOL per default + - r8169: improve interrupt handling + - r8169: fix interrupt number after adding support for MSI-X interrupts + * ISST-LTE:KVM:Ubuntu18.04:BostonLC:boslcp3:boslcp3g3:Guest conosle hangs + after hotplug CPU add operation. (LP: #1759723) + - genirq/affinity: assign vectors to all possible CPUs + - genirq/affinity: Don't return with empty affinity masks on error + - genirq/affinity: Rename *node_to_possible_cpumask as *node_to_cpumask + - genirq/affinity: Move actual irq vector spreading into a helper function + - genirq/affinity: Allow irq spreading from a given starting point + - genirq/affinity: Spread irq vectors among present CPUs as far as possible + - blk-mq: simplify queue mapping & schedule with each possisble CPU + - blk-mq: make sure hctx->next_cpu is set correctly + - blk-mq: Avoid that blk_mq_delay_run_hw_queue() introduces unintended delays + - blk-mq: make sure that correct hctx->next_cpu is set + - blk-mq: avoid to write intermediate result to hctx->next_cpu + - blk-mq: introduce blk_mq_hw_queue_first_cpu() to figure out first cpu + - blk-mq: don't check queue mapped in __blk_mq_delay_run_hw_queue() + - nvme: pci: pass max vectors as num_possible_cpus() to pci_alloc_irq_vectors + - scsi: hpsa: fix selection of reply queue + - scsi: megaraid_sas: fix selection of reply queue + - scsi: core: introduce force_blk_mq + - scsi: virtio_scsi: fix IO hang caused by automatic irq vector affinity + - scsi: virtio_scsi: unify scsi_host_template + * Fix several bugs in RDMA/hns driver (LP: #1770974) + - RDMA/hns: Use structs to describe the uABI instead of opencoding + - RDMA/hns: Remove unnecessary platform_get_resource() error check + - RDMA/hns: Remove unnecessary operator + - RDMA/hns: Add names to function arguments in function pointers + - RDMA/hns: Fix misplaced call to hns_roce_cleanup_hem_table + - RDMA/hns: Fix a bug with modifying mac address + - RDMA/hns: Use free_pages function instead of free_page + - RDMA/hns: Replace __raw_write*(cpu_to_le*()) with LE write*() + - RDMA/hns: Bugfix for init hem table + - RDMA/hns: Intercept illegal RDMA operation when use inline data + - RDMA/hns: Fix the qp context state diagram + - RDMA/hns: Only assign mtu if IB_QP_PATH_MTU bit is set + - RDMA/hns: Remove some unnecessary attr_mask judgement + - RDMA/hns: Only assign dqpn if IB_QP_PATH_DEST_QPN bit is set + - RDMA/hns: Adjust the order of cleanup hem table + - RDMA/hns: Update assignment method for owner field of send wqe + - RDMA/hns: Submit bad wr + - RDMA/hns: Fix a couple misspellings + - RDMA/hns: Add rq inline flags judgement + - RDMA/hns: Bugfix for rq record db for kernel + - RDMA/hns: Load the RoCE dirver automatically + - RDMA/hns: Update convert function of endian format + - RDMA/hns: Add return operation when configured global param fail + - RDMA/hns: Not support qp transition from reset to reset for hip06 + - RDMA/hns: Fix the bug with rq sge + - RDMA/hns: Set desc_dma_addr for zero when free cmq desc + - RDMA/hns: Enable inner_pa_vld filed of mpt + - RDMA/hns: Set NULL for __internal_mr + - RDMA/hns: Fix the bug with NULL pointer + - RDMA/hns: Bugfix for cq record db for kernel + - RDMA/hns: Move the location for initializing tmp_len + - RDMA/hns: Drop local zgid in favor of core defined variable + - RDMA/hns: Add 64KB page size support for hip08 + - RDMA/hns: Rename the idx field of db + - RDMA/hns: Modify uar allocation algorithm to avoid bitmap exhaust + - RDMA/hns: Increase checking CMQ status timeout value + - RDMA/hns: Add reset process for RoCE in hip08 + - RDMA/hns: Fix the illegal memory operation when cross page + - RDMA/hns: Implement the disassociate_ucontext API + * powerpc/livepatch: Implement reliable stack tracing for the consistency + model (LP: #1771844) + - powerpc/livepatch: Implement reliable stack tracing for the consistency + model + * vmxnet3: update to latest ToT (LP: #1768143) + - vmxnet3: avoid xmit reset due to a race in vmxnet3 + - vmxnet3: use correct flag to indicate LRO feature + - vmxnet3: fix incorrect dereference when rxvlan is disabled + * 4.15.0-22-generic fails to boot on IBM S822LC (POWER8 (raw), altivec + supported) (LP: #1773162) + - Revert "powerpc/64s: Add support for a store forwarding barrier at kernel + entry/exit" + - powerpc/64s: Add support for a store forwarding barrier at kernel entry/exit + * Decode ARM CPER records in kernel (LP: #1770244) + - [Config] CONFIG_UEFI_CPER_ARM=y + - efi: Move ARM CPER code to new file + - efi: Parse ARM error information value + * Adding back alx WoL feature (LP: #1772610) + - SAUCE: Revert "alx: remove WoL support" + - SAUCE: alx: add enable_wol paramenter + * Lancer A0 Asic HBA's won't boot with 18.04 (LP: #1768103) + - scsi: lpfc: Fix WQ/CQ creation for older asic's. + - scsi: lpfc: Fix 16gb hbas failing cq create. + * [LTCTest][OPAL][OP920] cpupower idle-info is not listing stop4 and stop5 + idle states when all CORES are guarded (LP: #1771780) + - SAUCE: cpuidle/powernv : init all present cpus for deep states + * Huawei 25G/100G Network Adapters Unsupported (LP: #1770970) + - net-next/hinic: add pci device ids for 25ge and 100ge card + * [Ubuntu 18.04.1] POWER9 - Nvidia Volta - Kernel changes to enable Nvidia + driver on bare metal (LP: #1772991) + - powerpc/powernv/npu: Fix deadlock in mmio_invalidate() + - powerpc/powernv/mce: Don't silently restart the machine + - powerpc/npu-dma.c: Fix crash after __mmu_notifier_register failure + - powerpc/mm: Flush cache on memory hot(un)plug + - powerpc/powernv/memtrace: Let the arch hotunplug code flush cache + - powerpc/powernv/npu: Add lock to prevent race in concurrent context + init/destroy + - powerpc/powernv/npu: Prevent overwriting of pnv_npu2_init_contex() callback + parameters + - powerpc/powernv/npu: Do a PID GPU TLB flush when invalidating a large + address range + - powerpc/mce: Fix a bug where mce loops on memory UE. + * cpum_sf: ensure sample freq is non-zero (LP: #1772593) + - s390/cpum_sf: ensure sample frequency of perf event attributes is non-zero + * PCIe link speeds of 16 GT/s are shown as "Unknown speed" (LP: #1773243) + - PCI: Add decoding for 16 GT/s link speed + * False positive ACPI _PRS error messages (LP: #1773295) + - ACPI / PCI: pci_link: Allow the absence of _PRS and change log level + * Dell systems crash when disabling Nvidia dGPU (LP: #1773299) + - ACPI / OSI: Add OEM _OSI strings to disable NVidia RTD3 + * wlp3s0: failed to remove key (1, ff:ff:ff:ff:ff:ff) from hardware (-22) + (LP: #1720930) + - iwlwifi: mvm: fix "failed to remove key" message + * Expose arm64 CPU topology to userspace (LP: #1770231) + - ACPICA: ACPI 6.2: Additional PPTT flags + - drivers: base: cacheinfo: move cache_setup_of_node() + - drivers: base: cacheinfo: setup DT cache properties early + - cacheinfo: rename of_node to fw_token + - arm64/acpi: Create arch specific cpu to acpi id helper + - ACPI/PPTT: Add Processor Properties Topology Table parsing + - [Config] CONFIG_ACPI_PPTT=y + - ACPI: Enable PPTT support on ARM64 + - drivers: base cacheinfo: Add support for ACPI based firmware tables + - arm64: Add support for ACPI based firmware tables + - arm64: topology: rename cluster_id + - arm64: topology: enable ACPI/PPTT based CPU topology + - ACPI: Add PPTT to injectable table list + - arm64: topology: divorce MC scheduling domain from core_siblings + * hisi_sas robustness fixes (LP: #1774466) + - scsi: hisi_sas: delete timer when removing hisi_sas driver + - scsi: hisi_sas: print device id for errors + - scsi: hisi_sas: Add some checks to avoid free'ing a sas_task twice + - scsi: hisi_sas: check host frozen before calling "done" function + - scsi: hisi_sas: check sas_dev gone earlier in hisi_sas_abort_task() + - scsi: hisi_sas: stop controller timer for reset + - scsi: hisi_sas: update PHY linkrate after a controller reset + - scsi: hisi_sas: change slot index allocation mode + - scsi: hisi_sas: Change common allocation mode of device id + - scsi: hisi_sas: Reset disks when discovered + - scsi: hisi_sas: Create a scsi_host_template per HW module + - scsi: hisi_sas: Init disks after controller reset + - scsi: hisi_sas: Try wait commands before before controller reset + - scsi: hisi_sas: Include TMF elements in struct hisi_sas_slot + - scsi: hisi_sas: Add v2 hw force PHY function for internal ATA command + - scsi: hisi_sas: Terminate STP reject quickly for v2 hw + - scsi: hisi_sas: Fix return value when get_free_slot() failed + - scsi: hisi_sas: Mark PHY as in reset for nexus reset + * hisi_sas: Support newer v3 hardware (LP: #1774467) + - scsi: hisi_sas: update RAS feature for later revision of v3 HW + - scsi: hisi_sas: check IPTT is valid before using it for v3 hw + - scsi: hisi_sas: fix PI memory size + - scsi: hisi_sas: config ATA de-reset as an constrained command for v3 hw + - scsi: hisi_sas: remove redundant handling to event95 for v3 + - scsi: hisi_sas: add readl poll timeout helper wrappers + - scsi: hisi_sas: workaround a v3 hw hilink bug + - scsi: hisi_sas: Add LED feature for v3 hw + * hisi_sas: improve performance by optimizing DQ locking (LP: #1774472) + - scsi: hisi_sas: initialize dq spinlock before use + - scsi: hisi_sas: optimise the usage of DQ locking + - scsi: hisi_sas: relocate smp sg map + - scsi: hisi_sas: make return type of prep functions void + - scsi: hisi_sas: allocate slot buffer earlier + - scsi: hisi_sas: Don't lock DQ for complete task sending + - scsi: hisi_sas: Use device lock to protect slot alloc/free + - scsi: hisi_sas: add check of device in hisi_sas_task_exec() + - scsi: hisi_sas: fix a typo in hisi_sas_task_prep() + * Request to revert SAUCE patches in the 18.04 SRU and update with upstream + version (LP: #1768431) + - scsi: cxlflash: Handle spurious interrupts + - scsi: cxlflash: Remove commmands from pending list on timeout + - scsi: cxlflash: Synchronize reset and remove ops + - SAUCE: (no-up) cxlflash: OCXL diff between v2 and v3 + * After update to 4.13-43 Intel Graphics are Laggy (LP: #1773520) + - SAUCE: Revert "drm/i915/edp: Allow alternate fixed mode for eDP if + available." + * ELANPAD ELAN0612 does not work, patch available (LP: #1773509) + - SAUCE: Input: elan_i2c - add ELAN0612 to the ACPI table + * FS-Cache: Assertion failed: FS-Cache: 6 == 5 is false (LP: #1774336) + - SAUCE: CacheFiles: fix a read_waiter/read_copier race + * hns3 driver updates (LP: #1768670) + - net: hns3: VF should get the real rss_size instead of rss_size_max + - net: hns3: set the cmdq out_vld bit to 0 after used + - net: hns3: fix endian issue when PF get mbx message flag + - net: hns3: fix the queue id for tqp enable&&reset + - net: hns3: set the max ring num when alloc netdev + - net: hns3: add support for VF driver inner interface + hclgevf_ops.get_tqps_and_rss_info + - net: hns3: refactor the hclge_get/set_rss function + - net: hns3: refactor the hclge_get/set_rss_tuple function + - net: hns3: fix for RSS configuration loss problem during reset + - net: hns3: fix for pause configuration lost during reset + - net: hns3: fix for use-after-free when setting ring parameter + - net: hns3: refactor the get/put_vector function + - net: hns3: fix for coalesce configuration lost during reset + - net: hns3: refactor the coalesce related struct + - net: hns3: fix for coal configuation lost when setting the channel + - net: hns3: add existence check when remove old uc mac address + - net: hns3: fix for netdev not running problem after calling net_stop and + net_open + - net: hns3: fix for ipv6 address loss problem after setting channels + - net: hns3: unify the pause params setup function + - net: hns3: fix rx path skb->truesize reporting bug + - net: hns3: add support for querying pfc puase packets statistic + - net: hns3: fix for loopback failure when vlan filter is enable + - net: hns3: fix for buffer overflow smatch warning + - net: hns3: fix error type definition of return value + - net: hns3: fix return value error of hclge_get_mac_vlan_cmd_status() + - net: hns3: add existence checking before adding unicast mac address + - net: hns3: add result checking for VF when modify unicast mac address + - net: hns3: reallocate tx/rx buffer after changing mtu + - net: hns3: fix the VF queue reset flow error + - net: hns3: fix for vlan table lost problem when resetting + - net: hns3: increase the max time for IMP handle command + - net: hns3: change GL update rate + - net: hns3: change the time interval of int_gl calculating + - net: hns3: fix for getting wrong link mode problem + - net: hns3: add get_link support to VF + - net: hns3: add querying speed and duplex support to VF + - net: hns3: fix for not returning problem in get_link_ksettings when phy + exists + - net: hns3: Changes to make enet watchdog timeout func common for PF/VF + - net: hns3: Add VF Reset Service Task to support event handling + - net: hns3: Add VF Reset device state and its handling + - net: hns3: Add support to request VF Reset to PF + - net: hns3: Add support to reset the enet/ring mgmt layer + - net: hns3: Add support to re-initialize the hclge device + - net: hns3: Changes to support ARQ(Asynchronous Receive Queue) + - net: hns3: Add *Asserting Reset* mailbox message & handling in VF + - net: hns3: Changes required in PF mailbox to support VF reset + - net: hns3: hclge_inform_reset_assert_to_vf() can be static + - net: hns3: fix for returning wrong value problem in hns3_get_rss_key_size + - net: hns3: fix for returning wrong value problem in hns3_get_rss_indir_size + - net: hns3: fix for the wrong shift problem in hns3_set_txbd_baseinfo + - net: hns3: fix for not initializing VF rss_hash_key problem + - net: hns3: never send command queue message to IMP when reset + - net: hns3: remove unnecessary pci_set_drvdata() and devm_kfree() + - net: hns3: fix length overflow when CONFIG_ARM64_64K_PAGES + - net: hns3: Remove error log when getting pfc stats fails + - net: hns3: fix to correctly fetch l4 protocol outer header + - net: hns3: Fixes the out of bounds access in hclge_map_tqp + - net: hns3: Fixes the error legs in hclge_init_ae_dev function + - net: hns3: fix for phy_addr error in hclge_mac_mdio_config + - net: hns3: Fix to support autoneg only for port attached with phy + - net: hns3: fix a dead loop in hclge_cmd_csq_clean + - net: hns3: Fix for packet loss due wrong filter config in VLAN tbls + - net: hns3: Remove packet statistics in the range of 8192~12287 + - net: hns3: Add support of hardware rx-vlan-offload to HNS3 VF driver + - net: hns3: Fix for setting mac address when resetting + - net: hns3: remove add/del_tunnel_udp in hns3_enet module + - net: hns3: fix for cleaning ring problem + - net: hns3: refactor the loopback related function + - net: hns3: Fix for deadlock problem occurring when unregistering ae_algo + - net: hns3: Fix for the null pointer problem occurring when initializing + ae_dev failed + - net: hns3: Add a check for client instance init state + - net: hns3: Change return type of hnae3_register_ae_dev + - net: hns3: Change return type of hnae3_register_ae_algo + - net: hns3: Change return value in hnae3_register_client + - net: hns3: Fixes the back pressure setting when sriov is enabled + - net: hns3: Fix for fiber link up problem + - net: hns3: Add support of .sriov_configure in HNS3 driver + - net: hns3: Fixes the missing PCI iounmap for various legs + - net: hns3: Fixes error reported by Kbuild and internal review + - net: hns3: Fixes API to fetch ethernet header length with kernel default + - net: hns3: cleanup of return values in hclge_init_client_instance() + - net: hns3: Fix the missing client list node initialization + - net: hns3: Fix for hns3 module is loaded multiple times problem + - net: hns3: Use enums instead of magic number in hclge_is_special_opcode + - net: hns3: Fix for netdev not running problem after calling net_stop and + net_open + - net: hns3: Fixes kernel panic issue during rmmod hns3 driver + - net: hns3: Fix for CMDQ and Misc. interrupt init order problem + - net: hns3: Updates RX packet info fetch in case of multi BD + - net: hns3: Add support for tx_accept_tag2 and tx_accept_untag2 config + - net: hns3: Add STRP_TAGP field support for hardware revision 0x21 + - net: hns3: Add support to enable TX/RX promisc mode for H/W rev(0x21) + - net: hns3: Fix for PF mailbox receving unknown message + - net: hns3: Fixes the state to indicate client-type initialization + - net: hns3: Fixes the init of the VALID BD info in the descriptor + - net: hns3: Removes unnecessary check when clearing TX/RX rings + - net: hns3: Clear TX/RX rings when stopping port & un-initializing client + - net: hns3: Remove unused led control code + - net: hns3: Adds support for led locate command for copper port + - net: hns3: Fixes initalization of RoCE handle and makes it conditional + - net: hns3: Disable vf vlan filter when vf vlan table is full + - net: hns3: Add support for IFF_ALLMULTI flag + - net: hns3: Add repeat address checking for setting mac address + - net: hns3: Fix setting mac address error + - net: hns3: Fix for service_task not running problem after resetting + - net: hns3: Fix for hclge_reset running repeatly problem + - net: hns3: Fix for phy not link up problem after resetting + - net: hns3: Add missing break in misc_irq_handle + - net: hns3: Fix for vxlan tx checksum bug + - net: hns3: Optimize the PF's process of updating multicast MAC + - net: hns3: Optimize the VF's process of updating multicast MAC + - SAUCE: {topost} net: hns3: add support for serdes loopback selftest + - SAUCE: {topost} net: hns3: RX BD information valid only in last BD except + VLD bit and buffer size + - SAUCE: {topost} net: hns3: remove hclge_get_vector_index from + hclge_bind_ring_with_vector + - SAUCE: {topost} net: hns3: rename the interface for init_client_instance and + uninit_client_instance + - SAUCE: {topost} net: hns3: add vector status check before free vector + - SAUCE: {topost} net: hns3: add l4_type check for both ipv4 and ipv6 + - SAUCE: {topost} net: hns3: remove unused head file in hnae3.c + - SAUCE: {topost} net: hns3: extraction an interface for state state + init|uninit + - SAUCE: {topost} net: hns3: print the ret value in error information + - SAUCE: {topost} net: hns3: remove the Redundant put_vector in + hns3_client_uninit + - SAUCE: {topost} net: hns3: add unlikely for error check + - SAUCE: {topost} net: hns3: remove back in struct hclge_hw + - SAUCE: {topost} net: hns3: use lower_32_bits and upper_32_bits + - SAUCE: {topost} net: hns3: remove unused hclge_ring_to_dma_dir + - SAUCE: {topost} net: hns3: remove useless code in hclge_cmd_send + - SAUCE: {topost} net: hns3: remove some redundant assignments + - SAUCE: {topost} net: hns3: simplify hclge_cmd_csq_clean + - SAUCE: {topost} net: hns3: using modulo for cyclic counters in + hclge_cmd_send + - SAUCE: {topost} net: hns3: remove a redundant hclge_cmd_csq_done + - SAUCE: {topost} net: hns3: remove some unused members of some structures + - SAUCE: {topost} net: hns3: give default option while dependency HNS3 set + - SAUCE: {topost} net: hns3: use dma_zalloc_coherent instead of + kzalloc/dma_map_single + - SAUCE: {topost} net: hns3: modify hnae_ to hnae3_ + - SAUCE: {topost} net: hns3: fix unused function warning in VF driver + - SAUCE: {topost} net: hns3: remove some redundant assignments + - SAUCE: {topost} net: hns3: standardize the handle of return value + - SAUCE: {topost} net: hns3: remove extra space and brackets + - SAUCE: {topost} net: hns3: fix unreasonable code comments + - SAUCE: {topost} net: hns3: use decimal for bit offset macros + - SAUCE: {topost} net: hns3: modify inconsistent bit mask macros + - SAUCE: {topost} net: hns3: fix mislead parameter name + - SAUCE: {topost} net: hns3: remove unused struct member and definition + - SAUCE: {topost} net: hns3: Add SPDX tags to hns3 driver + - SAUCE: {topost} net: hns3: Add pf reset for hip08 RoCE + - SAUCE: {topost} net: hns3: optimize the process of notifying roce client + - SAUCE: {topost} net: hns3: Add calling roce callback function when link + status change + - SAUCE: {topost} net: hns3: fix tc setup when netdev is first up + - SAUCE: {topost} net: hns3: fix for mac pause not disable in pfc mode + - SAUCE: {topost} net: hns3: fix for waterline not setting correctly + - SAUCE: {topost} net: hns3: fix for l4 checksum offload bug + - SAUCE: {topost} net: hns3: fix for mailbox message truncated problem + - SAUCE: {topost} net: hns3: Add configure for mac minimal frame size + - SAUCE: {topost} net: hns3: fix warning bug when doing lp selftest + - SAUCE: {topost} net: hns3: fix get_vector ops in hclgevf_main module + - SAUCE: {topost} net: hns3: remove the warning when clear reset cause + - SAUCE: {topost} net: hns3: Use roce handle when calling roce callback + function + - SAUCE: {topost} net: hns3: prevent sending command during global or core + reset + - SAUCE: {topost} net: hns3: modify the order of initializeing command queue + register + - SAUCE: {topost} net: hns3: reset net device with rtnl_lock + - SAUCE: {topost} net: hns3: prevent to request reset frequently + - SAUCE: {topost} net: hns3: correct reset event status register + - SAUCE: {topost} net: hns3: separate roce from nic when resetting + - SAUCE: net: hns3: Fix for phy link issue when using marvell phy driver + - SAUCE: {topost} net: hns3: fix return value error in + hns3_reset_notify_down_enet + - SAUCE: {topost} net: hns3: remove unnecessary ring configuration operation + while resetting + - SAUCE: {topost} net: hns3: fix for reset_level default assignment probelm + - SAUCE: {topost} net: hns3: fix for using wrong mask and shift in + hclge_get_ring_chain_from_mbx + - SAUCE: {topost} net: hns3: fix comments for hclge_get_ring_chain_from_mbx + - SAUCE: net: hns3: Fix for VF mailbox cannot receiving PF response + - SAUCE: net: hns3: Fix for VF mailbox receiving unknown message + - SAUCE: net: hns3: Optimize PF CMDQ interrupt switching process + * enable mic-mute hotkey and led on Lenovo M820z and M920z (LP: #1774306) + - ALSA: hda/realtek - Enable mic-mute hotkey for several Lenovo AIOs + * Bionic update: upstream stable patchset 2018-05-29 (LP: #1774063) + - cifs: do not allow creating sockets except with SMB1 posix exensions + - btrfs: fix unaligned access in readdir + - x86/acpi: Prevent X2APIC id 0xffffffff from being accounted + - clocksource/imx-tpm: Correct -ETIME return condition check + - x86/tsc: Prevent 32bit truncation in calc_hpet_ref() + - drm/vc4: Fix memory leak during BO teardown + - drm/i915/gvt: throw error on unhandled vfio ioctls + - drm/i915/audio: Fix audio detection issue on GLK + - drm/i915: Do no use kfree() to free a kmem_cache_alloc() return value + - drm/i915: Fix LSPCON TMDS output buffer enabling from low-power state + - drm/i915/bxt, glk: Increase PCODE timeouts during CDCLK freq changing + - usb: musb: fix enumeration after resume + - usb: musb: call pm_runtime_{get,put}_sync before reading vbus registers + - usb: musb: Fix external abort in musb_remove on omap2430 + - firewire-ohci: work around oversized DMA reads on JMicron controllers + - x86/tsc: Allow TSC calibration without PIT + - NFSv4: always set NFS_LOCK_LOST when a lock is lost. + - ACPI / LPSS: Do not instiate platform_dev for devs without MMIO resources + - ALSA: hda - Use IS_REACHABLE() for dependency on input + - ASoC: au1x: Fix timeout tests in au1xac97c_ac97_read() + - kvm: x86: fix KVM_XEN_HVM_CONFIG ioctl + - RDMA/core: Clarify rdma_ah_find_type + - KVM: PPC: Book3S HV: Enable migration of decrementer register + - netfilter: ipv6: nf_defrag: Pass on packets to stack per RFC2460 + - tracing/hrtimer: Fix tracing bugs by taking all clock bases and modes into + account + - KVM: s390: use created_vcpus in more places + - platform/x86: dell-laptop: Filter out spurious keyboard backlight change + events + - xprtrdma: Fix backchannel allocation of extra rpcrdma_reps + - selftest: ftrace: Fix to pick text symbols for kprobes + - PCI: Add function 1 DMA alias quirk for Marvell 9128 + - Input: psmouse - fix Synaptics detection when protocol is disabled + - libbpf: Makefile set specified permission mode + - Input: synaptics - reset the ABS_X/Y fuzz after initializing MT axes + - i40iw: Free IEQ resources + - i40iw: Zero-out consumer key on allocate stag for FMR + - perf unwind: Do not look just at the global callchain_param.record_mode + - tools lib traceevent: Simplify pointer print logic and fix %pF + - perf callchain: Fix attr.sample_max_stack setting + - tools lib traceevent: Fix get_field_str() for dynamic strings + - perf record: Fix failed memory allocation for get_cpuid_str + - iommu/exynos: Don't unconditionally steal bus ops + - powerpc: System reset avoid interleaving oops using die synchronisation + - iommu/vt-d: Use domain instead of cache fetching + - dm thin: fix documentation relative to low water mark threshold + - dm mpath: return DM_MAPIO_REQUEUE on blk-mq rq allocation failure + - ubifs: Fix uninitialized variable in search_dh_cookie() + - net: stmmac: dwmac-meson8b: fix setting the RGMII TX clock on Meson8b + - net: stmmac: dwmac-meson8b: propagate rate changes to the parent clock + - spi: a3700: Clear DATA_OUT when performing a read + - IB/cq: Don't force IB_POLL_DIRECT poll context for ib_process_cq_direct + - nfs: Do not convert nfs_idmap_cache_timeout to jiffies + - MIPS: Fix clean of vmlinuz.{32,ecoff,bin,srec} + - PCI: Add dummy pci_irqd_intx_xlate() for CONFIG_PCI=n build + - watchdog: sp5100_tco: Fix watchdog disable bit + - kconfig: Don't leak main menus during parsing + - kconfig: Fix automatic menu creation mem leak + - kconfig: Fix expr_free() E_NOT leak + - ipmi/powernv: Fix error return code in ipmi_powernv_probe() + - Btrfs: set plug for fsync + - btrfs: Fix out of bounds access in btrfs_search_slot + - Btrfs: fix scrub to repair raid6 corruption + - btrfs: fail mount when sb flag is not in BTRFS_SUPER_FLAG_SUPP + - Btrfs: fix unexpected EEXIST from btrfs_get_extent + - Btrfs: raid56: fix race between merge_bio and rbio_orig_end_io + - RDMA/cma: Check existence of netdevice during port validation + - f2fs: avoid hungtask when GC encrypted block if io_bits is set + - scsi: devinfo: fix format of the device list + - scsi: fas216: fix sense buffer initialization + - Input: stmfts - set IRQ_NOAUTOEN to the irq flag + - HID: roccat: prevent an out of bounds read in kovaplus_profile_activated() + - nfp: fix error return code in nfp_pci_probe() + - block: Set BIO_TRACE_COMPLETION on new bio during split + - bpf: test_maps: cleanup sockmaps when test ends + - i40evf: Don't schedule reset_task when device is being removed + - i40evf: ignore link up if not running + - platform/x86: thinkpad_acpi: suppress warning about palm detection + - KVM: s390: vsie: use READ_ONCE to access some SCB fields + - blk-mq-debugfs: don't allow write on attributes with seq_operations set + - ASoC: rockchip: Use dummy_dai for rt5514 dsp dailink + - igb: Allow to remove administratively set MAC on VFs + - igb: Clear TXSTMP when ptp_tx_work() is timeout + - fm10k: fix "failed to kill vid" message for VF + - x86/hyperv: Stop suppressing X86_FEATURE_PCID + - tty: serial: exar: Relocate sleep wake-up handling + - device property: Define type of PROPERTY_ENRTY_*() macros + - crypto: artpec6 - remove select on non-existing CRYPTO_SHA384 + - RDMA/uverbs: Use an unambiguous errno for method not supported + - jffs2: Fix use-after-free bug in jffs2_iget()'s error handling path + - ixgbe: don't set RXDCTL.RLPML for 82599 + - i40e: program fragmented IPv4 filter input set + - i40e: fix reported mask for ntuple filters + - samples/bpf: Partially fixes the bpf.o build + - powerpc/numa: Use ibm,max-associativity-domains to discover possible nodes + - powerpc/numa: Ensure nodes initialized for hotplug + - RDMA/mlx5: Avoid memory leak in case of XRCD dealloc failure + - ntb_transport: Fix bug with max_mw_size parameter + - gianfar: prevent integer wrapping in the rx handler + - x86/hyperv: Check for required priviliges in hyperv_init() + - netfilter: x_tables: fix pointer leaks to userspace + - tcp_nv: fix potential integer overflow in tcpnv_acked + - kvm: Map PFN-type memory regions as writable (if possible) + - x86/kvm/vmx: do not use vm-exit instruction length for fast MMIO when + running nested + - fs/dax.c: release PMD lock even when there is no PMD support in DAX + - ocfs2: return -EROFS to mount.ocfs2 if inode block is invalid + - ocfs2/acl: use 'ip_xattr_sem' to protect getting extended attribute + - ocfs2: return error when we attempt to access a dirty bh in jbd2 + - mm/mempolicy: fix the check of nodemask from user + - mm/mempolicy: add nodes_empty check in SYSC_migrate_pages + - asm-generic: provide generic_pmdp_establish() + - sparc64: update pmdp_invalidate() to return old pmd value + - mm: thp: use down_read_trylock() in khugepaged to avoid long block + - mm: pin address_space before dereferencing it while isolating an LRU page + - mm/fadvise: discard partial page if endbyte is also EOF + - openvswitch: Remove padding from packet before L3+ conntrack processing + - blk-mq: fix discard merge with scheduler attached + - IB/hfi1: Re-order IRQ cleanup to address driver cleanup race + - IB/hfi1: Fix for potential refcount leak in hfi1_open_file() + - IB/ipoib: Fix for potential no-carrier state + - IB/core: Map iWarp AH type to undefined in rdma_ah_find_type + - drm/nouveau/pmu/fuc: don't use movw directly anymore + - s390/eadm: fix CONFIG_BLOCK include dependency + - netfilter: ipv6: nf_defrag: Kill frag queue on RFC2460 failure + - x86/power: Fix swsusp_arch_resume prototype + - x86/dumpstack: Avoid uninitlized variable + - firmware: dmi_scan: Fix handling of empty DMI strings + - ACPI: processor_perflib: Do not send _PPC change notification if not ready + - ACPI / bus: Do not call _STA on battery devices with unmet dependencies + - ACPI / scan: Use acpi_bus_get_status() to initialize ACPI_TYPE_DEVICE devs + - MIPS: TXx9: use IS_BUILTIN() for CONFIG_LEDS_CLASS + - perf record: Fix period option handling + - MIPS: Generic: Support GIC in EIC mode + - perf evsel: Fix period/freq terms setup + - xen-netfront: Fix race between device setup and open + - xen/grant-table: Use put_page instead of free_page + - bpf: sockmap, fix leaking maps with attached but not detached progs + - RDS: IB: Fix null pointer issue + - arm64: spinlock: Fix theoretical trylock() A-B-A with LSE atomics + - proc: fix /proc/*/map_files lookup + - PM / domains: Fix up domain-idle-states OF parsing + - cifs: silence compiler warnings showing up with gcc-8.0.0 + - bcache: properly set task state in bch_writeback_thread() + - bcache: fix for allocator and register thread race + - bcache: fix for data collapse after re-attaching an attached device + - bcache: return attach error when no cache set exist + - cpufreq: intel_pstate: Enable HWP during system resume on CPU0 + - selftests/ftrace: Add some missing glob checks + - rxrpc: Don't put crypto buffers on the stack + - svcrdma: Fix Read chunk round-up + - net: Extra '_get' in declaration of arch_get_platform_mac_address + - tools/libbpf: handle issues with bpf ELF objects containing .eh_frames + - SUNRPC: Don't call __UDPX_INC_STATS() from a preemptible context + - net: stmmac: discard disabled flags in interrupt status register + - bpf: fix rlimit in reuseport net selftest + - ACPI / EC: Restore polling during noirq suspend/resume phases + - PM / wakeirq: Fix unbalanced IRQ enable for wakeirq + - vfs/proc/kcore, x86/mm/kcore: Fix SMAP fault when dumping vsyscall user page + - powerpc/mm/hash64: Zero PGD pages on allocation + - x86/platform/UV: Fix GAM Range Table entries less than 1GB + - locking/qspinlock: Ensure node->count is updated before initialising node + - powerpc/powernv: IMC fix out of bounds memory access at shutdown + - perf test: Fix test trace+probe_libc_inet_pton.sh for s390x + - irqchip/gic-v3: Ignore disabled ITS nodes + - cpumask: Make for_each_cpu_wrap() available on UP as well + - irqchip/gic-v3: Change pr_debug message to pr_devel + - RDMA/core: Reduce poll batch for direct cq polling + - alarmtimer: Init nanosleep alarm timer on stack + - netfilter: x_tables: cap allocations at 512 mbyte + - netfilter: x_tables: add counters allocation wrapper + - netfilter: compat: prepare xt_compat_init_offsets to return errors + - netfilter: compat: reject huge allocation requests + - netfilter: x_tables: limit allocation requests for blob rule heads + - perf: Fix sample_max_stack maximum check + - perf: Return proper values for user stack errors + - RDMA/mlx5: Fix NULL dereference while accessing XRC_TGT QPs + - Revert "KVM: X86: Fix SMRAM accessing even if VM is shutdown" + - mac80211_hwsim: fix use-after-free bug in hwsim_exit_net + - btrfs: Fix race condition between delayed refs and blockgroup removal + - mm,vmscan: Allow preallocating memory for register_shrinker(). + * Bionic update: upstream stable patchset 2018-05-24 (LP: #1773233) + - tty: make n_tty_read() always abort if hangup is in progress + - cpufreq: CPPC: Use transition_delay_us depending transition_latency + - ubifs: Check ubifs_wbuf_sync() return code + - ubi: fastmap: Don't flush fastmap work on detach + - ubi: Fix error for write access + - ubi: Reject MLC NAND + - mm/ksm.c: fix inconsistent accounting of zero pages + - mm/hmm: hmm_pfns_bad() was accessing wrong struct + - task_struct: only use anon struct under randstruct plugin + - fs/reiserfs/journal.c: add missing resierfs_warning() arg + - resource: fix integer overflow at reallocation + - ipc/shm: fix use-after-free of shm file via remap_file_pages() + - mm, slab: reschedule cache_reap() on the same CPU + - usb: musb: gadget: misplaced out of bounds check + - phy: allwinner: sun4i-usb: poll vbus changes on A23/A33 when driving VBUS + - usb: gadget: udc: core: update usb_ep_queue() documentation + - ARM64: dts: meson: reduce odroid-c2 eMMC maximum rate + - KVM: arm/arm64: vgic-its: Fix potential overrun in vgic_copy_lpi_list + - ARM: EXYNOS: Fix coupled CPU idle freeze on Exynos4210 + - arm: dts: mt7623: fix USB initialization fails on bananapi-r2 + - ARM: dts: at91: at91sam9g25: fix mux-mask pinctrl property + - ARM: dts: exynos: Fix IOMMU support for GScaler devices on Exynos5250 + - ARM: dts: at91: sama5d4: fix pinctrl compatible string + - spi: atmel: init FIFOs before spi enable + - spi: Fix scatterlist elements size in spi_map_buf + - spi: Fix unregistration of controller with fixed SPI bus number + - media: atomisp_fops.c: disable atomisp_compat_ioctl32 + - media: vivid: check if the cec_adapter is valid + - media: vsp1: Fix BRx conditional path in WPF + - x86/xen: Delay get_cpu_cap until stack canary is established + - regmap: Fix reversed bounds check in regmap_raw_write() + - ACPI / video: Add quirk to force acpi-video backlight on Samsung 670Z5E + - ACPI / hotplug / PCI: Check presence of slot itself in get_slot_status() + - USB: gadget: f_midi: fixing a possible double-free in f_midi + - USB:fix USB3 devices behind USB3 hubs not resuming at hibernate thaw + - usb: dwc3: prevent setting PRTCAP to OTG from debugfs + - usb: dwc3: pci: Properly cleanup resource + - usb: dwc3: gadget: never call ->complete() from ->ep_queue() + - cifs: fix memory leak in SMB2_open() + - fix smb3-encryption breakage when CONFIG_DEBUG_SG=y + - smb3: Fix root directory when server returns inode number of zero + - HID: i2c-hid: fix size check and type usage + - i2c: i801: Save register SMBSLVCMD value only once + - i2c: i801: Restore configuration at shutdown + - CIFS: refactor crypto shash/sdesc allocation&free + - CIFS: add sha512 secmech + - CIFS: fix sha512 check in cifs_crypto_secmech_release + - powerpc/64s: Fix dt_cpu_ftrs to have restore_cpu clear unwanted LPCR bits + - powerpc/64: Call H_REGISTER_PROC_TBL when running as a HPT guest on POWER9 + - powerpc/64: Fix smp_wmb barrier definition use use lwsync consistently + - powerpc/kprobes: Fix call trace due to incorrect preempt count + - powerpc/kexec_file: Fix error code when trying to load kdump kernel + - powerpc/powernv: define a standard delay for OPAL_BUSY type retry loops + - powerpc/powernv: Fix OPAL NVRAM driver OPAL_BUSY loops + - HID: Fix hid_report_len usage + - HID: core: Fix size as type u32 + - soc: mediatek: fix the mistaken pointer accessed when subdomains are added + - ASoC: ssm2602: Replace reg_default_raw with reg_default + - ASoC: topology: Fix kcontrol name string handling + - irqchip/gic: Take lock when updating irq type + - random: use a tighter cap in credit_entropy_bits_safe() + - extcon: intel-cht-wc: Set direction and drv flags for V5 boost GPIO + - block: use 32-bit blk_status_t on Alpha + - jbd2: if the journal is aborted then don't allow update of the log tail + - ext4: shutdown should not prevent get_write_access + - ext4: eliminate sleep from shutdown ioctl + - ext4: pass -ESHUTDOWN code to jbd2 layer + - ext4: don't update checksum of new initialized bitmaps + - ext4: protect i_disksize update by i_data_sem in direct write path + - ext4: limit xattr size to INT_MAX + - ext4: always initialize the crc32c checksum driver + - ext4: don't allow r/w mounts if metadata blocks overlap the superblock + - ext4: move call to ext4_error() into ext4_xattr_check_block() + - ext4: add bounds checking to ext4_xattr_find_entry() + - ext4: add extra checks to ext4_xattr_block_get() + - dm crypt: limit the number of allocated pages + - RDMA/ucma: Don't allow setting RDMA_OPTION_IB_PATH without an RDMA device + - RDMA/mlx5: Protect from NULL pointer derefence + - RDMA/rxe: Fix an out-of-bounds read + - ALSA: pcm: Fix UAF at PCM release via PCM timer access + - IB/srp: Fix srp_abort() + - IB/srp: Fix completion vector assignment algorithm + - dmaengine: at_xdmac: fix rare residue corruption + - cxl: Fix possible deadlock when processing page faults from cxllib + - tpm: self test failure should not cause suspend to fail + - libnvdimm, dimm: fix dpa reservation vs uninitialized label area + - libnvdimm, namespace: use a safe lookup for dimm device name + - nfit, address-range-scrub: fix scrub in-progress reporting + - nfit: skip region registration for incomplete control regions + - ring-buffer: Check if memory is available before allocation + - um: Compile with modern headers + - um: Use POSIX ucontext_t instead of struct ucontext + - iommu/vt-d: Fix a potential memory leak + - mmc: jz4740: Fix race condition in IRQ mask update + - mmc: tmio: Fix error handling when issuing CMD23 + - PCI: Mark Broadcom HT1100 and HT2000 Root Port Extended Tags as broken + - clk: mvebu: armada-38x: add support for missing clocks + - clk: fix false-positive Wmaybe-uninitialized warning + - clk: mediatek: fix PWM clock source by adding a fixed-factor clock + - clk: bcm2835: De-assert/assert PLL reset signal when appropriate + - pwm: rcar: Fix a condition to prevent mismatch value setting to duty + - thermal: imx: Fix race condition in imx_thermal_probe() + - dt-bindings: clock: mediatek: add binding for fixed-factor clock axisel_d4 + - watchdog: f71808e_wdt: Fix WD_EN register read + - ALSA: pcm: Use ERESTARTSYS instead of EINTR in OSS emulation + - ALSA: pcm: Avoid potential races between OSS ioctls and read/write + - ALSA: pcm: Return -EBUSY for OSS ioctls changing busy streams + - ALSA: pcm: Fix mutex unbalance in OSS emulation ioctls + - ALSA: pcm: Fix endless loop for XRUN recovery in OSS emulation + - drm/amdgpu: Add an ATPX quirk for hybrid laptop + - drm/amdgpu: Fix always_valid bos multiple LRU insertions. + - drm/amdgpu/sdma: fix mask in emit_pipeline_sync + - drm/amdgpu: Fix PCIe lane width calculation + - drm/amdgpu/si: implement get/set pcie_lanes asic callback + - drm/rockchip: Clear all interrupts before requesting the IRQ + - drm/radeon: add PX quirk for Asus K73TK + - drm/radeon: Fix PCIe lane width calculation + - ALSA: line6: Use correct endpoint type for midi output + - ALSA: rawmidi: Fix missing input substream checks in compat ioctls + - ALSA: hda - New VIA controller suppor no-snoop path + - random: fix crng_ready() test + - random: use a different mixing algorithm for add_device_randomness() + - random: crng_reseed() should lock the crng instance that it is modifying + - random: add new ioctl RNDRESEEDCRNG + - HID: input: fix battery level reporting on BT mice + - HID: hidraw: Fix crash on HIDIOCGFEATURE with a destroyed device + - HID: wacom: bluetooth: send exit report for recent Bluetooth devices + - MIPS: uaccess: Add micromips clobbers to bzero invocation + - MIPS: memset.S: EVA & fault support for small_memset + - MIPS: memset.S: Fix return of __clear_user from Lpartial_fixup + - MIPS: memset.S: Fix clobber of v1 in last_fixup + - powerpc/eeh: Fix enabling bridge MMIO windows + - powerpc/lib: Fix off-by-one in alternate feature patching + - udf: Fix leak of UTF-16 surrogates into encoded strings + - fanotify: fix logic of events on child + - mmc: sdhci-pci: Only do AMD tuning for HS200 + - drm/i915: Correctly handle limited range YCbCr data on VLV/CHV + - jffs2_kill_sb(): deal with failed allocations + - hypfs_kill_super(): deal with failed allocations + - orangefs_kill_sb(): deal with allocation failures + - rpc_pipefs: fix double-dput() + - Don't leak MNT_INTERNAL away from internal mounts + - autofs: mount point create should honour passed in mode + - mm/filemap.c: fix NULL pointer in page_cache_tree_insert() + - Revert "media: lirc_zilog: driver only sends LIRCCODE" + - media: staging: lirc_zilog: incorrect reference counting + - writeback: safer lock nesting + - Bluetooth: hci_bcm: Add irq_polarity module option + - mm: hwpoison: disable memory error handling on 1GB hugepage + - media: rc: oops in ir_timer_keyup after device unplug + - acpi, nfit: rework NVDIMM leaf method detection + - ceph: always update atime/mtime/ctime for new inode + - ext4: fix offset overflow on 32-bit archs in ext4_iomap_begin() + - ext4: force revalidation of directory pointer after seekdir(2) + - RDMA/core: Avoid that ib_drain_qp() triggers an out-of-bounds stack access + - xprtrdma: Fix latency regression on NUMA NFS/RDMA clients + - xprtrdma: Fix corner cases when handling device removal + - IB/srpt: Fix an out-of-bounds stack access in srpt_zerolength_write() + - drivers/infiniband/core/verbs.c: fix build with gcc-4.4.4 + - drivers/infiniband/ulp/srpt/ib_srpt.c: fix build with gcc-4.4.4 + - mmc: core: Prevent bus reference leak in mmc_blk_init() + - drm/amd/display: HDMI has no sound after Panel power off/on + - trace_uprobe: Use %lx to display offset + - clk: tegra: Mark HCLK, SCLK and EMC as critical + - pwm: mediatek: Fix up PWM4 and PWM5 malfunction on MT7623 + - pwm: mediatek: Improve precision in rate calculation + - HID: i2c-hid: Fix resume issue on Raydium touchscreen device + - s390: add support for IBM z14 Model ZR1 + - drm/i915: Fix hibernation with ACPI S0 target state + - libnvdimm, dimm: handle EACCES failures from label reads + - device-dax: allow MAP_SYNC to succeed + - HID: i2c-hid: fix inverted return value from i2c_hid_command() + * CVE-2018-7755 + - SAUCE: floppy: Do not copy a kernel pointer to user memory in FDGETPRM ioctl + + -- Marcelo Henrique Cerri Thu, 14 Jun 2018 10:55:10 -0300 + +linux-azure (4.15.0-1013.13) bionic; urgency=medium + + * linux-azure: 4.15.0-1013.13 -proposed tracker (LP: #1772930) + + * Switch Build-Depends: transfig to fig2dev (LP: #1770770) + - [Config] update Build-Depends: transfig to fig2dev + + [ Ubuntu: 4.15.0-23.25 ] + + * linux: 4.15.0-23.25 -proposed tracker (LP: #1772927) + * arm64 SDEI support needs trampoline code for KPTI (LP: #1768630) + - arm64: mmu: add the entry trampolines start/end section markers into + sections.h + - arm64: sdei: Add trampoline code for remapping the kernel + * Some PCIe errors not surfaced through rasdaemon (LP: #1769730) + - ACPI: APEI: handle PCIe AER errors in separate function + - ACPI: APEI: call into AER handling regardless of severity + * qla2xxx: Fix page fault at kmem_cache_alloc_node() (LP: #1770003) + - scsi: qla2xxx: Fix session cleanup for N2N + - scsi: qla2xxx: Remove unused argument from qlt_schedule_sess_for_deletion() + - scsi: qla2xxx: Serialize session deletion by using work_lock + - scsi: qla2xxx: Serialize session free in qlt_free_session_done + - scsi: qla2xxx: Don't call dma_free_coherent with IRQ disabled. + - scsi: qla2xxx: Fix warning in qla2x00_async_iocb_timeout() + - scsi: qla2xxx: Prevent relogin trigger from sending too many commands + - scsi: qla2xxx: Fix double free bug after firmware timeout + - scsi: qla2xxx: Fixup locking for session deletion + * Several hisi_sas bug fixes (LP: #1768974) + - scsi: hisi_sas: dt-bindings: add an property of signal attenuation + - scsi: hisi_sas: support the property of signal attenuation for v2 hw + - scsi: hisi_sas: fix the issue of link rate inconsistency + - scsi: hisi_sas: fix the issue of setting linkrate register + - scsi: hisi_sas: increase timer expire of internal abort task + - scsi: hisi_sas: remove unused variable hisi_sas_devices.running_req + - scsi: hisi_sas: fix return value of hisi_sas_task_prep() + - scsi: hisi_sas: Code cleanup and minor bug fixes + * [bionic] machine stuck and bonding not working well when nvmet_rdma module + is loaded (LP: #1764982) + - nvmet-rdma: Don't flush system_wq by default during remove_one + - nvme-rdma: Don't flush delete_wq by default during remove_one + * Warnings/hang during error handling of SATA disks on SAS controller + (LP: #1768971) + - scsi: libsas: defer ata device eh commands to libata + * Hotplugging a SATA disk into a SAS controller may cause crash (LP: #1768948) + - ata: do not schedule hot plug if it is a sas host + * ISST-LTE:pKVM:Ubuntu1804: rcu_sched self-detected stall on CPU follow by CPU + ATTEMPT TO RE-ENTER FIRMWARE! (LP: #1767927) + - powerpc/powernv: Handle unknown OPAL errors in opal_nvram_write() + - powerpc/64s: return more carefully from sreset NMI + - powerpc/64s: sreset panic if there is no debugger or crash dump handlers + * fsnotify: Fix fsnotify_mark_connector race (LP: #1765564) + - fsnotify: Fix fsnotify_mark_connector race + * Hang on network interface removal in Xen virtual machine (LP: #1771620) + - xen-netfront: Fix hang on device removal + * HiSilicon HNS NIC names are truncated in /proc/interrupts (LP: #1765977) + - net: hns: Avoid action name truncation + * Ubuntu 18.04 kernel crashed while in degraded mode (LP: #1770849) + - SAUCE: powerpc/perf: Fix memory allocation for core-imc based on + num_possible_cpus() + * Switch Build-Depends: transfig to fig2dev (LP: #1770770) + - [Config] update Build-Depends: transfig to fig2dev + * smp_call_function_single/many core hangs with stop4 alone (LP: #1768898) + - cpufreq: powernv: Fix hardlockup due to synchronous smp_call in timer + interrupt + * Add d-i support for Huawei NICs (LP: #1767490) + - d-i: add hinic to nic-modules udeb + * unregister_netdevice: waiting for eth0 to become free. Usage count = 5 + (LP: #1746474) + - xfrm: reuse uncached_list to track xdsts + * Include nfp driver in linux-modules (LP: #1768526) + - [Config] Add nfp.ko to generic inclusion list + * Kernel panic on boot (m1.small in cn-north-1) (LP: #1771679) + - x86/xen: Reset VCPU0 info pointer after shared_info remap + * CVE-2018-3639 (x86) + - x86/bugs: Fix the parameters alignment and missing void + - KVM: SVM: Move spec control call after restore of GS + - x86/speculation: Use synthetic bits for IBRS/IBPB/STIBP + - x86/cpufeatures: Disentangle MSR_SPEC_CTRL enumeration from IBRS + - x86/cpufeatures: Disentangle SSBD enumeration + - x86/cpufeatures: Add FEATURE_ZEN + - x86/speculation: Handle HT correctly on AMD + - x86/bugs, KVM: Extend speculation control for VIRT_SPEC_CTRL + - x86/speculation: Add virtualized speculative store bypass disable support + - x86/speculation: Rework speculative_store_bypass_update() + - x86/bugs: Unify x86_spec_ctrl_{set_guest,restore_host} + - x86/bugs: Expose x86_spec_ctrl_base directly + - x86/bugs: Remove x86_spec_ctrl_set() + - x86/bugs: Rework spec_ctrl base and mask logic + - x86/speculation, KVM: Implement support for VIRT_SPEC_CTRL/LS_CFG + - KVM: SVM: Implement VIRT_SPEC_CTRL support for SSBD + - x86/bugs: Rename SSBD_NO to SSB_NO + - bpf: Prevent memory disambiguation attack + - KVM: VMX: Expose SSBD properly to guests. + * Suspend to idle: Open lid didn't resume (LP: #1771542) + - ACPI / PM: Do not reconfigure GPEs for suspend-to-idle + * Fix initialization failure detection in SDEI for device-tree based systems + (LP: #1768663) + - firmware: arm_sdei: Fix return value check in sdei_present_dt() + * No driver for Huawei network adapters on arm64 (LP: #1769899) + - net-next/hinic: add arm64 support + * CVE-2018-1092 + - ext4: fail ext4_iget for root directory if unallocated + * kernel 4.15 breaks nouveau on Lenovo P50 (LP: #1763189) + - drm/nouveau: Fix deadlock in nv50_mstm_register_connector() + * update-initramfs not adding i915 GuC firmware for Kaby Lake, firmware fails + to load (LP: #1728238) + - Revert "UBUNTU: SAUCE: (no-up) i915: Remove MODULE_FIRMWARE statements for + unreleased firmware" + * Battery drains when laptop is off (shutdown) (LP: #1745646) + - PCI / PM: Check device_may_wakeup() in pci_enable_wake() + * Dell Latitude 5490/5590 BIOS update 1.1.9 causes black screen at boot + (LP: #1764194) + - drm/i915/bios: filter out invalid DDC pins from VBT child devices + * Intel 9462 A370:42A4 doesn't work (LP: #1748853) + - iwlwifi: add shared clock PHY config flag for some devices + - iwlwifi: add a bunch of new 9000 PCI IDs + * Fix an issue that some PCI devices get incorrectly suspended (LP: #1764684) + - PCI / PM: Always check PME wakeup capability for runtime wakeup support + * [SRU][Bionic/Artful] fix false positives in W+X checking (LP: #1769696) + - init: fix false positives in W+X checking + * Bionic update to v4.15.18 stable release (LP: #1769723) + - netfilter: ipset: Missing nfnl_lock()/nfnl_unlock() is added to + ip_set_net_exit() + - cdc_ether: flag the Cinterion AHS8 modem by gemalto as WWAN + - rds: MP-RDS may use an invalid c_path + - slip: Check if rstate is initialized before uncompressing + - vhost: fix vhost_vq_access_ok() log check + - l2tp: fix races in tunnel creation + - l2tp: fix race in duplicate tunnel detection + - ip_gre: clear feature flags when incompatible o_flags are set + - vhost: Fix vhost_copy_to_user() + - lan78xx: Correctly indicate invalid OTP + - media: v4l2-compat-ioctl32: don't oops on overlay + - media: v4l: vsp1: Fix header display list status check in continuous mode + - ipmi: Fix some error cleanup issues + - parisc: Fix out of array access in match_pci_device() + - parisc: Fix HPMC handler by increasing size to multiple of 16 bytes + - Drivers: hv: vmbus: do not mark HV_PCIE as perf_device + - PCI: hv: Serialize the present and eject work items + - PCI: hv: Fix 2 hang issues in hv_compose_msi_msg() + - KVM: PPC: Book3S HV: trace_tlbie must not be called in realmode + - perf/core: Fix use-after-free in uprobe_perf_close() + - x86/mce/AMD: Get address from already initialized block + - hwmon: (ina2xx) Fix access to uninitialized mutex + - ath9k: Protect queue draining by rcu_read_lock() + - x86/apic: Fix signedness bug in APIC ID validity checks + - f2fs: fix heap mode to reset it back + - block: Change a rcu_read_{lock,unlock}_sched() pair into + rcu_read_{lock,unlock}() + - nvme: Skip checking heads without namespaces + - lib: fix stall in __bitmap_parselist() + - blk-mq: order getting budget and driver tag + - blk-mq: don't keep offline CPUs mapped to hctx 0 + - ovl: fix lookup with middle layer opaque dir and absolute path redirects + - xen: xenbus_dev_frontend: Fix XS_TRANSACTION_END handling + - hugetlbfs: fix bug in pgoff overflow checking + - nfsd: fix incorrect umasks + - scsi: qla2xxx: Fix small memory leak in qla2x00_probe_one on probe failure + - block/loop: fix deadlock after loop_set_status + - nfit: fix region registration vs block-data-window ranges + - s390/qdio: don't retry EQBS after CCQ 96 + - s390/qdio: don't merge ERROR output buffers + - s390/ipl: ensure loadparm valid flag is set + - get_user_pages_fast(): return -EFAULT on access_ok failure + - mm/gup_benchmark: handle gup failures + - getname_kernel() needs to make sure that ->name != ->iname in long case + - Bluetooth: Fix connection if directed advertising and privacy is used + - Bluetooth: hci_bcm: Treat Interrupt ACPI resources as always being active- + low + - rtl8187: Fix NULL pointer dereference in priv->conf_mutex + - ovl: set lower layer st_dev only if setting lower st_ino + - Linux 4.15.18 + * Kernel bug when unplugging Thunderbolt 3 cable, leaves xHCI host controller + dead (LP: #1768852) + - xhci: Fix Kernel oops in xhci dbgtty + * Incorrect blacklist of bcm2835_wdt (LP: #1766052) + - [Packaging] Fix missing watchdog for Raspberry Pi + * CVE-2018-8087 + - mac80211_hwsim: fix possible memory leak in hwsim_new_radio_nl() + * Integrated Webcam Realtek Integrated_Webcam_HD (0bda:58f4) not working in + DELL XPS 13 9370 with firmware 1.50 (LP: #1763748) + - SAUCE: media: uvcvideo: Support realtek's UVC 1.5 device + * [ALSA] [PATCH] Clevo P950ER ALC1220 Fixup (LP: #1769721) + - SAUCE: ALSA: hda/realtek - Clevo P950ER ALC1220 Fixup + * Bionic: Intermittently sent to Emergency Mode on boot with unhandled kernel + NULL pointer dereference at 0000000000000980 (LP: #1768292) + - thunderbolt: Prevent crash when ICM firmware is not running + * linux-snapdragon: reduce EPROBEDEFER noise during boot (LP: #1768761) + - [Config] snapdragon: DRM_I2C_ADV7511=y + * regression Aquantia Corp. AQC107 4.15.0-13-generic -> 4.15.0-20-generic ? + (LP: #1767088) + - net: aquantia: Regression on reset with 1.x firmware + - net: aquantia: oops when shutdown on already stopped device + * e1000e msix interrupts broken in linux-image-4.15.0-15-generic + (LP: #1764892) + - e1000e: Remove Other from EIAC + * Acer Swift sf314-52 power button not managed (LP: #1766054) + - SAUCE: platform/x86: acer-wmi: add another KEY_POWER keycode + * set PINCFG_HEADSET_MIC to parse_flags for Dell precision 3630 (LP: #1766398) + - ALSA: hda/realtek - set PINCFG_HEADSET_MIC to parse_flags + * Change the location for one of two front mics on a lenovo thinkcentre + machine (LP: #1766477) + - ALSA: hda/realtek - adjust the location of one mic + * SRU: bionic: apply 50 ZFS upstream bugfixes (LP: #1764690) + - SAUCE: (noup) Update zfs to 0.7.5-1ubuntu15 (LP: #1764690) + * [8086:3e92] display becomes blank after S3 (LP: #1763271) + - drm/i915/edp: Do not do link training fallback or prune modes on EDP + + -- Marcelo Henrique Cerri Thu, 24 May 2018 10:44:42 -0300 + +linux-azure (4.15.0-1012.12) bionic; urgency=medium + + * linux-image-4.15.0-20-generic install after upgrade from xenial breaks + (LP: #1767133) + - Packaging: Add versioned dependency for linux-base + + [ Ubuntu: 4.15.0-22.24 ] + + * CVE-2018-3639 (powerpc) + - powerpc/64s: Add support for a store forwarding barrier at kernel entry/exit + - stf-barrier: set eieio instruction bit 6 for future optimisations + * CVE-2018-3639 (x86) + - x86/nospec: Simplify alternative_msr_write() + - x86/bugs: Concentrate bug detection into a separate function + - x86/bugs: Concentrate bug reporting into a separate function + - x86/bugs: Read SPEC_CTRL MSR during boot and re-use reserved bits + - x86/bugs, KVM: Support the combination of guest and host IBRS + - x86/bugs: Expose /sys/../spec_store_bypass + - x86/cpufeatures: Add X86_FEATURE_RDS + - x86/bugs: Provide boot parameters for the spec_store_bypass_disable + mitigation + - x86/bugs/intel: Set proper CPU features and setup RDS + - x86/bugs: Whitelist allowed SPEC_CTRL MSR values + - x86/bugs/AMD: Add support to disable RDS on Fam[15,16,17]h if requested + - x86/KVM/VMX: Expose SPEC_CTRL Bit(2) to the guest + - x86/speculation: Create spec-ctrl.h to avoid include hell + - prctl: Add speculation control prctls + - x86/process: Allow runtime control of Speculative Store Bypass + - x86/speculation: Add prctl for Speculative Store Bypass mitigation + - nospec: Allow getting/setting on non-current task + - proc: Provide details on speculation flaw mitigations + - seccomp: Enable speculation flaw mitigations + - x86/bugs: Make boot modes __ro_after_init + - prctl: Add force disable speculation + - seccomp: Use PR_SPEC_FORCE_DISABLE + - seccomp: Add filter flag to opt-out of SSB mitigation + - seccomp: Move speculation migitation control to arch code + - x86/speculation: Make "seccomp" the default mode for Speculative Store + Bypass + - x86/bugs: Rename _RDS to _SSBD + - proc: Use underscores for SSBD in 'status' + - Documentation/spec_ctrl: Do some minor cleanups + - x86/bugs: Fix __ssb_select_mitigation() return type + - x86/bugs: Make cpu_show_common() static + * LSM Stacking prctl values should be redefined as to not collide with + upstream prctls (LP: #1769263) // CVE-2018-3639 + - SAUCE: LSM stacking: adjust prctl values + + [ Ubuntu: 4.15.0-21.22 ] + + * linux: 4.15.0-21.22 -proposed tracker (LP: #1767397) + * initramfs-tools exception during pm.DoInstall with do-release-upgrade from + 16.04 to 18.04 (LP: #1766727) + - Add linux-image-* Breaks on s390-tools (<< 2.3.0-0ubuntu3) + * linux-image-4.15.0-20-generic install after upgrade from xenial breaks + (LP: #1767133) + - Packaging: Depends on linux-base that provides the necessary tools + * linux-image packages need to Breaks flash-kernel << 3.90ubuntu2 + (LP: #1766629) + - linux-image-* breaks on flash-kernel (<< 3.90ubuntu2) + + -- Stefan Bader Wed, 16 May 2018 18:31:36 +0200 + +linux-azure (4.15.0-1011.11) bionic; urgency=medium + + * linux-azure: 4.15.0-1011.11 -proposed tracker (LP: #1770294) + + * fsnotify: Fix fsnotify_mark_connector race (LP: #1765564) + - fsnotify: Fix fsnotify_mark_connector race + + -- Kamal Mostafa Wed, 09 May 2018 18:43:32 -0700 + +linux-azure (4.15.0-1009.9) bionic; urgency=medium + + * linux-azure: 4.15.0-1009.9 -proposed tracker (LP: #1766467) + + [ Ubuntu: 4.15.0-20.21 ] + + * linux: 4.15.0-20.21 -proposed tracker (LP: #1766452) + * package shim-signed (not installed) failed to install/upgrade: installed + shim-signed package post-installation script subprocess returned error exit + status 5 (LP: #1766391) + - [Packaging] fix invocation of header postinst hooks + + -- Kleber Sacilotto de Souza Tue, 24 Apr 2018 12:19:14 +0200 + +linux-azure (4.15.0-1008.8) bionic; urgency=medium + + * linux-azure: 4.15.0-1008.8 -proposed tracker (LP: #1766025) + + [ Ubuntu: 4.15.0-19.20 ] + + * linux: 4.15.0-19.20 -proposed tracker (LP: #1766021) + * Kernel 4.15.0-15 breaks Dell PowerEdge 12th Gen servers (LP: #1765232) + - Revert "blk-mq: simplify queue mapping & schedule with each possisble CPU" + - Revert "genirq/affinity: assign vectors to all possible CPUs" + + -- Seth Forshee Sat, 21 Apr 2018 20:11:42 -0500 + +linux-azure (4.15.0-1007.7) bionic; urgency=medium + + * linux-azure: 4.15.0-1007.7 -proposed tracker (LP: #1765495) + + * Miscellaneous Ubuntu changes + - [Config] updateconfigs after rebase to Ubuntu-4.15.0-18.19 + - [Packaging] update flavour-control.stub for signing changes + + [ Ubuntu: 4.15.0-18.19 ] + + * linux: 4.15.0-18.19 -proposed tracker (LP: #1765490) + * [regression] Ubuntu 18.04:[4.15.0-17-generic #18] KVM Guest Kernel: + meltdown: rfi/fallback displacement flush not enabled bydefault (kvm) + (LP: #1765429) + - powerpc/pseries: Fix clearing of security feature flags + * signing: only install a signed kernel (LP: #1764794) + - [Packaging] update to Debian like control scripts + - [Packaging] switch to triggers for postinst.d postrm.d handling + - [Packaging] signing -- switch to raw-signing tarballs + - [Packaging] signing -- switch to linux-image as signed when available + - [Config] signing -- enable Opal signing for ppc64el + - [Packaging] printenv -- add signing options + * [18.04 FEAT] Sign POWER host/NV kernels (LP: #1696154) + - [Packaging] signing -- add support for signing Opal kernel binaries + * Please cherrypick s390 unwind fix (LP: #1765083) + - s390/compat: fix setup_frame32 + * Ubuntu 18.04 installer does not detect any IPR based HDD/RAID array [S822L] + [ipr] (LP: #1751813) + - d-i: move ipr to storage-core-modules on ppc64el + * drivers/gpu/drm/bridge/adv7511/adv7511.ko missing (LP: #1764816) + - SAUCE: (no-up) rename the adv7511 drm driver to adv7511_drm + * Miscellaneous Ubuntu changes + - [Packaging] Add linux-oem to rebuild test blacklist. + + [ Ubuntu: 4.15.0-17.18 ] + + * linux: 4.15.0-17.18 -proposed tracker (LP: #1764498) + * Eventual OOM with profile reloads (LP: #1750594) + - SAUCE: apparmor: fix memory leak when duplicate profile load + + [ Ubuntu: 4.15.0-16.17 ] + + * linux: 4.15.0-16.17 -proposed tracker (LP: #1763785) + * [18.04] [bug] CFL-S(CNP)/CNL GPIO testing failed (LP: #1757346) + - [Config]: Set CONFIG_PINCTRL_CANNONLAKE=y + * [Ubuntu 18.04] USB Type-C test failed on GLK (LP: #1758797) + - SAUCE: usb: typec: ucsi: Increase command completion timeout value + * Fix trying to "push" an already active pool VP (LP: #1763386) + - SAUCE: powerpc/xive: Fix trying to "push" an already active pool VP + * hisi_sas: Revert and replace SAUCE patches w/ upstream (LP: #1762824) + - Revert "UBUNTU: SAUCE: scsi: hisi_sas: export device table of v3 hw to + userspace" + - Revert "UBUNTU: SAUCE: scsi: hisi_sas: config for hip08 ES" + - scsi: hisi_sas: modify some register config for hip08 + - scsi: hisi_sas: add v3 hw MODULE_DEVICE_TABLE() + * Realtek card reader - RTS5243 [VEN_10EC&DEV_5260] (LP: #1737673) + - misc: rtsx: Move Realtek Card Reader Driver to misc + - updateconfigs for Realtek Card Reader Driver + - misc: rtsx: Add support for RTS5260 + - misc: rtsx: Fix symbol clashes + * Mellanox [mlx5] [bionic] UBSAN: Undefined behaviour in + ./include/linux/net_dim.h (LP: #1763269) + - net/mlx5e: Fix int overflow + * apparmor bug fixes for bionic (LP: #1763427) + - apparmor: fix logging of the existence test for signals + - apparmor: make signal label match work when matching stacked labels + - apparmor: audit unknown signal numbers + - apparmor: fix memory leak on buffer on error exit path + - apparmor: fix mediation of prlimit + * dangling symlinks to loaded apparmor policy (LP: #1755563) // apparmor bug + fixes for bionic (LP: #1763427) + - apparmor: fix dangling symlinks to policy rawdata after replacement + * [OPAL] Assert fail: + core/mem_region.c:447:lock_held_by_me(®ion->free_list_lock) + (LP: #1762913) + - powerpc/watchdog: remove arch_trigger_cpumask_backtrace + * [LTC Test] Ubuntu 18.04: tm_trap_test failed on P8 compat mode guest + (LP: #1762928) + - powerpc/tm: Fix endianness flip on trap + * Add support for RT5660 codec based sound cards on Baytrail (LP: #1657674) + - SAUCE: (no-up) ASoC: Intel: Support machine driver for RT5660 on Baytrail + - SAUCE: (no-up) ASoC: rt5660: Add ACPI support + - SAUCE: (no-up): ASoC: Intel: bytcr-rt5660: Add MCLK, quirks + - [Config] CONFIG_SND_SOC_INTEL_BYTCR_RT5660_MACH=m, CONFIG_SND_SOC_RT5660=m + * /dev/ipmi enumeration flaky on Cavium Sabre nodes (LP: #1762812) + - i2c: xlp9xx: return ENXIO on slave address NACK + - i2c: xlp9xx: Handle transactions with I2C_M_RECV_LEN properly + - i2c: xlp9xx: Check for Bus state before every transfer + - i2c: xlp9xx: Handle NACK on DATA properly + * [18.04 FEAT] Add kvm_stat from kernel tree (LP: #1734130) + - tools/kvm_stat: simplify the sortkey function + - tools/kvm_stat: use a namedtuple for storing the values + - tools/kvm_stat: use a more pythonic way to iterate over dictionaries + - tools/kvm_stat: avoid 'is' for equality checks + - tools/kvm_stat: fix crash when filtering out all non-child trace events + - tools/kvm_stat: print error on invalid regex + - tools/kvm_stat: fix debugfs handling + - tools/kvm_stat: mark private methods as such + - tools/kvm_stat: eliminate extra guest/pid selection dialog + - tools/kvm_stat: separate drilldown and fields filtering + - tools/kvm_stat: group child events indented after parent + - tools/kvm_stat: print 'Total' line for multiple events only + - tools/kvm_stat: Fix python3 syntax + - tools/kvm_stat: Don't use deprecated file() + - tools/kvm_stat: Remove unused function + - [Packaging] Add linux-tools-host package for VM host tools + - [Config] do_tools_host=true for amd64 + * Bionic update to v4.15.17 stable release (LP: #1763366) + - i40iw: Fix sequence number for the first partial FPDU + - i40iw: Correct Q1/XF object count equation + - i40iw: Validate correct IRD/ORD connection parameters + - clk: meson: mpll: use 64-bit maths in params_from_rate + - ARM: dts: ls1021a: add "fsl,ls1021a-esdhc" compatible string to esdhc node + - Bluetooth: Add a new 04ca:3015 QCA_ROME device + - ipv6: Reinject IPv6 packets if IPsec policy matches after SNAT + - thermal: power_allocator: fix one race condition issue for thermal_instances + list + - perf probe: Find versioned symbols from map + - perf probe: Add warning message if there is unexpected event name + - perf evsel: Fix swap for samples with raw data + - perf evsel: Enable ignore_missing_thread for pid option + - l2tp: fix missing print session offset info + - rds; Reset rs->rs_bound_addr in rds_add_bound() failure path + - ACPI / video: Default lcd_only to true on Win8-ready and newer machines + - IB/mlx5: Report inner RSS capability + - VFS: close race between getcwd() and d_move() + - watchdog: dw_wdt: add stop watchdog operation + - clk: divider: fix incorrect usage of container_of + - PM / devfreq: Fix potential NULL pointer dereference in governor_store + - gpiolib: don't dereference a desc before validation + - net_sch: red: Fix the new offload indication + - selftests/net: fix bugs in address and port initialization + - thermal/drivers/hisi: Remove bogus const from function return type + - RDMA/cma: Mark end of CMA ID messages + - hwmon: (ina2xx) Make calibration register value fixed + - f2fs: fix lock dependency in between dio_rwsem & i_mmap_sem + - clk: sunxi-ng: a83t: Add M divider to TCON1 clock + - media: videobuf2-core: don't go out of the buffer range + - ASoC: Intel: Skylake: Disable clock gating during firmware and library + download + - ASoC: Intel: cht_bsw_rt5645: Analog Mic support + - drm/msm: Fix NULL deref in adreno_load_gpu + - IB/ipoib: Fix for notify send CQ failure messages + - spi: sh-msiof: Fix timeout failures for TX-only DMA transfers + - scsi: mpt3sas: Proper handling of set/clear of "ATA command pending" flag. + - irqchip/ompic: fix return value check in ompic_of_init() + - irqchip/gic-v3: Fix the driver probe() fail due to disabled GICC entry + - ACPI: EC: Fix debugfs_create_*() usage + - mac80211: Fix setting TX power on monitor interfaces + - vfb: fix video mode and line_length being set when loaded + - crypto: crypto4xx - perform aead icv check in the driver + - gpio: label descriptors using the device name + - arm64: asid: Do not replace active_asids if already 0 + - powernv-cpufreq: Add helper to extract pstate from PMSR + - IB/rdmavt: Allocate CQ memory on the correct node + - blk-mq: avoid to map CPU into stale hw queue + - blk-mq: fix race between updating nr_hw_queues and switching io sched + - backlight: tdo24m: Fix the SPI CS between transfers + - nvme-fabrics: protect against module unload during create_ctrl + - nvme-fabrics: don't check for non-NULL module in nvmf_register_transport + - pinctrl: baytrail: Enable glitch filter for GPIOs used as interrupts + - nvme_fcloop: disassocate local port structs + - nvme_fcloop: fix abort race condition + - tpm: return a TPM_RC_COMMAND_CODE response if command is not implemented + - perf report: Fix a no annotate browser displayed issue + - staging: lustre: disable preempt while sampling processor id. + - ASoC: Intel: sst: Fix the return value of 'sst_send_byte_stream_mrfld()' + - power: supply: axp288_charger: Properly stop work on probe-error / remove + - rt2x00: do not pause queue unconditionally on error path + - wl1251: check return from call to wl1251_acx_arp_ip_filter + - net/mlx5: Fix race for multiple RoCE enable + - bcache: ret IOERR when read meets metadata error + - bcache: stop writeback thread after detaching + - bcache: segregate flash only volume write streams + - net: Fix netdev_WARN_ONCE macro + - net/mlx5e: IPoIB, Use correct timestamp in child receive flow + - blk-mq: fix kernel oops in blk_mq_tag_idle() + - tty: n_gsm: Allow ADM response in addition to UA for control dlci + - block, bfq: put async queues for root bfq groups too + - serdev: Fix serdev_uevent failure on ACPI enumerated serdev-controllers + - EDAC, mv64x60: Fix an error handling path + - uio_hv_generic: check that host supports monitor page + - Bluetooth: hci_bcm: Mandate presence of shutdown and device wake GPIO + - Bluetooth: hci_bcm: Validate IRQ before using it + - Bluetooth: hci_bcm: Make shutdown and device wake GPIO optional + - i40evf: don't rely on netif_running() outside rtnl_lock() + - drm/amd/powerplay: fix memory leakage when reload (v2) + - cxgb4vf: Fix SGE FL buffer initialization logic for 64K pages + - PM / domains: Don't skip driver's ->suspend|resume_noirq() callbacks + - scsi: megaraid_sas: Error handling for invalid ldcount provided by firmware + in RAID map + - scsi: megaraid_sas: unload flag should be set after scsi_remove_host is + called + - RDMA/cma: Fix rdma_cm path querying for RoCE + - gpio: thunderx: fix error return code in thunderx_gpio_probe() + - x86/gart: Exclude GART aperture from vmcore + - sdhci: Advertise 2.0v supply on SDIO host controller + - Input: goodix - disable IRQs while suspended + - mtd: mtd_oobtest: Handle bitflips during reads + - crypto: aes-generic - build with -Os on gcc-7+ + - perf tools: Fix copyfile_offset update of output offset + - tcmu: release blocks for partially setup cmds + - thermal: int3400_thermal: fix error handling in int3400_thermal_probe() + - drm/i915/cnp: Ignore VBT request for know invalid DDC pin. + - drm/i915/cnp: Properly handle VBT ddc pin out of bounds. + - x86/microcode: Propagate return value from updating functions + - x86/CPU: Add a microcode loader callback + - x86/CPU: Check CPU feature bits after microcode upgrade + - x86/microcode: Get rid of struct apply_microcode_ctx + - x86/microcode/intel: Check microcode revision before updating sibling + threads + - x86/microcode/intel: Writeback and invalidate caches before updating + microcode + - x86/microcode: Do not upload microcode if CPUs are offline + - x86/microcode/intel: Look into the patch cache first + - x86/microcode: Request microcode on the BSP + - x86/microcode: Synchronize late microcode loading + - x86/microcode: Attempt late loading only when new microcode is present + - x86/microcode: Fix CPU synchronization routine + - arp: fix arp_filter on l3slave devices + - ipv6: the entire IPv6 header chain must fit the first fragment + - lan78xx: Crash in lan78xx_writ_reg (Workqueue: events + lan78xx_deferred_multicast_write) + - net: dsa: Discard frames from unused ports + - net: fix possible out-of-bound read in skb_network_protocol() + - net/ipv6: Fix route leaking between VRFs + - net/ipv6: Increment OUTxxx counters after netfilter hook + - netlink: make sure nladdr has correct size in netlink_connect() + - net/mlx5e: Verify coalescing parameters in range + - net sched actions: fix dumping which requires several messages to user space + - net/sched: fix NULL dereference in the error path of tcf_bpf_init() + - pptp: remove a buggy dst release in pptp_connect() + - r8169: fix setting driver_data after register_netdev + - sctp: do not leak kernel memory to user space + - sctp: sctp_sockaddr_af must check minimal addr length for AF_INET6 + - vhost: correctly remove wait queue during poll failure + - vlan: also check phy_driver ts_info for vlan's real device + - vrf: Fix use after free and double free in vrf_finish_output + - bonding: fix the err path for dev hwaddr sync in bond_enslave + - bonding: move dev_mc_sync after master_upper_dev_link in bond_enslave + - bonding: process the err returned by dev_set_allmulti properly in + bond_enslave + - net: fool proof dev_valid_name() + - ip_tunnel: better validate user provided tunnel names + - ipv6: sit: better validate user provided tunnel names + - ip6_gre: better validate user provided tunnel names + - ip6_tunnel: better validate user provided tunnel names + - vti6: better validate user provided tunnel names + - net/mlx5e: Set EQE based as default TX interrupt moderation mode + - net_sched: fix a missing idr_remove() in u32_delete_key() + - net/sched: fix NULL dereference in the error path of tcf_vlan_init() + - net/mlx5e: Avoid using the ipv6 stub in the TC offload neigh update path + - net/mlx5e: Fix memory usage issues in offloading TC flows + - net/sched: fix NULL dereference in the error path of tcf_sample_init() + - nfp: use full 40 bits of the NSP buffer address + - ipv6: sr: fix seg6 encap performances with TSO enabled + - net/mlx5e: Don't override vport admin link state in switchdev mode + - net/mlx5e: Sync netdev vxlan ports at open + - net/sched: fix NULL dereference in the error path of tunnel_key_init() + - net/sched: fix NULL dereference on the error path of tcf_skbmod_init() + - strparser: Fix sign of err codes + - net/mlx4_en: Fix mixed PFC and Global pause user control requests + - net/mlx5e: Fix traffic being dropped on VF representor + - vhost: validate log when IOTLB is enabled + - route: check sysctl_fib_multipath_use_neigh earlier than hash + - team: move dev_mc_sync after master_upper_dev_link in team_port_add + - vhost_net: add missing lock nesting notation + - net/mlx4_core: Fix memory leak while delete slave's resources + - Linux 4.15.17 + * sky2 gigabit ethernet driver sometimes stops working after lid-open resume + from sleep (88E8055) (LP: #1758507) // Bionic update to v4.15.17 stable + release (LP: #1763366) + - sky2: Increase D3 delay to sky2 stops working after suspend + * [Featire] CNL: Enable RAPL support (LP: #1685712) + - powercap: RAPL: Add support for Cannon Lake + * System Z {kernel} UBUNTU18.04 wrong kernel config (LP: #1762719) + - s390: move nobp parameter functions to nospec-branch.c + - s390: add automatic detection of the spectre defense + - s390: report spectre mitigation via syslog + - s390: add sysfs attributes for spectre + - [Config] CONFIG_EXPOLINE_AUTO=y, CONFIG_KERNEL_NOBP=n for s390 + - s390: correct nospec auto detection init order + * Merge the linux-snapdragon kernel into bionic master/snapdragon + (LP: #1763040) + - drm/msm: fix spelling mistake: "ringubffer" -> "ringbuffer" + - drm/msm: fix msm_rd_dump_submit prototype + - drm/msm: gpu: Only sync fences on rings that exist + - wcn36xx: set default BTLE coexistence config + - wcn36xx: Add hardware scan offload support + - wcn36xx: Reduce spinlock in indication handler + - wcn36xx: fix incorrect assignment to msg_body.min_ch_time + - wcn36xx: release DMA memory in case of error + - mailbox: qcom: Convert APCS IPC driver to use regmap + - mailbox: qcom: Create APCS child device for clock controller + - clk: qcom: Add A53 PLL support + - clk: qcom: Add regmap mux-div clocks support + - clk: qcom: Add APCS clock controller support + - clk: qcom: msm8916: Fix return value check in qcom_apcs_msm8916_clk_probe() + - media: venus: venc: set correctly GOP size and number of B-frames + - media: venus: venc: configure entropy mode + - media: venus: venc: Apply inloop deblocking filter + - media: venus: cleanup set_property controls + - arm64: defconfig: enable REMOTEPROC + - arm64: defconfig: enable QCOM audio drivers for APQ8016 and DB410c + - kernel: configs; add distro.config + - arm64: configs: enable WCN36xx + - kernel: distro.config: enable debug friendly USB network adpater + - arm64: configs: enable QCOM Venus + - arm64: defconfig: Enable a53/apcs and avs + - arm64: defconfig: enable ondemand governor as default + - arm64: defconfig: enable QCOM_TSENS + - arm64: defconfig: enable new trigger modes for leds + - kernel: configs: enable dm_mod and dm_crypt + - Force the SMD regulator driver to be compiled-in + - arm64: defconfig: enable CFG80211_DEFAULT_PS by default + - arm64: configs: enable BT_QCOMSMD + - kernel: configs: add more USB net drivers + - arm64: defconfig: disable ANALOG_TV and DIGITAL_TV + - arm64: configs: Enable camera drivers + - kernel: configs: add freq stat to sysfs + - arm64: defconfig: enable CONFIG_USB_CONFIGFS_F_FS by default + - arm64: defconfig: Enable QRTR features + - kernel: configs: set USB_CONFIG_F_FS in distro.config + - kernel: distro.config: enable 'schedutil' CPUfreq governor + - kernel: distro.config: enable 'fq' and 'fq_codel' qdiscs + - kernel: distro.config: enable 'BBR' TCP congestion algorithm + - arm64: defconfig: enable LEDS_QCOM_LPG + - HACK: drm/msm/iommu: Remove runtime_put calls in map/unmap + - power: avs: Add support for CPR (Core Power Reduction) + - power: avs: cpr: Use raw mem access for qfprom + - power: avs: cpr: fix with new reg_sequence structures + - power: avs: cpr: Register with cpufreq-dt + - regulator: smd: Add floor and corner operations + - PM / OPP: Support adjusting OPP voltages at runtime + - PM / OPP: Drop RCU usage in dev_pm_opp_adjust_voltage() + - PM / OPP: HACK: Allow to set regulator without opp_list + - PM / OPP: Add a helper to get an opp regulator for device + - cpufreq: Add apq8016 to cpufreq-dt-platdev blacklist + - regulator: smd: Allow REGULATOR_QCOM_SMD_RPM=m + - ov5645: I2C address change + - i2c: Add Qualcomm Camera Control Interface driver + - camss: vfe: Skip first four frames from sensor + - camss: Do not register if no cameras are present + - i2c-qcom-cci: Fix run queue completion timeout + - i2c-qcom-cci: Fix I2C address bug + - media: ov5645: Fix I2C address + - drm/bridge/adv7511: Delay clearing of HPD interrupt status + - HACK: drm/msm/adv7511: Don't rely on interrupts for EDID parsing + - leds: Add driver for Qualcomm LPG + - wcn36xx: Fix warning due to duplicate scan_completed notification + - arm64: dts: Add CPR DT node for msm8916 + - arm64: dts: add spmi-regulator nodes + - arm64: dts: msm8916: Add cpufreq support + - arm64: dts: msm8916: Add a shared CPU opp table + - arm64: dts: msm8916: Add cpu cooling maps + - arm64: dts: pm8916: Mark the s2 regulator as always-on + - dt-bindings: mailbox: qcom: Document the APCS clock binding + - arm64: dts: qcom: msm8916: Add msm8916 A53 PLL DT node + - arm64: dts: qcom: msm8916: Use the new APCS mailbox driver + - arm64: dts: qcom: msm8916: Add clock properties to the APCS node + - arm64: dts: qcom: apq8016-sbc: Allow USR4 LED to notify kernel panic + - dt-bindings: media: Binding document for Qualcomm Camera Control Interface + driver + - MAINTAINERS: Add Qualcomm Camera Control Interface driver + - DT: leds: Add Qualcomm Light Pulse Generator binding + - arm64: dts: qcom: msm8996: Add mpp and lpg blocks + - arm64: dts: qcom: Add pwm node for pm8916 + - arm64: dts: qcom: Add user LEDs on db820c + - arm64: dts: qcom: Add WiFI/BT LEDs on db820c + - ARM: dts: qcom: Add LPG node to pm8941 + - ARM: dts: qcom: honami: Add LPG node and RGB LED + - arm64: dts: qcom: Add Camera Control Interface support + - arm64: dts: qcom: Add apps_iommu vfe child node + - arm64: dts: qcom: Add camss device node + - arm64: dts: qcom: Add ov5645 device nodes + - arm64: dts: msm8916: Fix camera sensors I2C addresses + - arm: dts: qcom: db410c: Enable PWM signal on MPP4 + - packaging: arm64: add a uboot flavour - part1 + - packaging: arm64: add a uboot flavour - part2 + - packaging: arm64: add a uboot flavour - part3 + - packaging: arm64: add a uboot flavour - part4 + - packaging: arm64: add a uboot flavour - part5 + - packaging: arm64: rename uboot flavour to snapdragon + - [Config] updateconfigs after qcomlt import + - [Config] arm64: snapdragon: COMMON_CLK_QCOM=y + - [Config] arm64: snapdragon: MSM_GCC_8916=y + - [Config] arm64: snapdragon: REGULATOR_FIXED_VOLTAGE=y + - [Config] arm64: snapdragon: PINCTRL_MSM8916=y + - [Config] arm64: snapdragon: HWSPINLOCK_QCOM=y + - [Config] arm64: snapdragon: SPMI=y, SPMI_MSM_PMIC_ARB=y + - [Config] arm64: snapdragon: REGMAP_SPMI=y, PINCTRL_QCOM_SPMI_PMIC=y + - [Config] arm64: snapdragon: REGULATOR_QCOM_SPMI=y + - [Config] arm64: snapdragon: MFD_SPMI_PMIC=y + - [Config] arm64: snapdragon: QCOM_SMEM=y + - [Config] arm64: snapdragon: RPMSG=y, RPMSG_QCOM_SMD=y + - [Config] arm64: snapdragon: QCOM_SMD_RPM=y, REGULATOR_QCOM_SMD_RPM=y + - [Config] arm64: snapdragon: QCOM_CLK_SMD_RPM=y + - [Config] arm64: snapdragon: QCOM_BAM_DMA=y + - [Config] arm64: snapdragon: QCOM_HIDMA=y, QCOM_HIDMA_MGMT=y + - [Config] arm64: snapdragon: QCOM_CPR=y + - [Config] arm64: snapdragon: QCOM_QFPROM=y, QCOM_TSENS=y + - [Config] arm64: snapdragon: MMC_SDHCI=y, MMC_SDHCI_PLTFM=y, MMC_SDHCI_MSM=y + - [Config] turn off DRM_MSM_REGISTER_LOGGING + - [Config] arm64: snapdragon: I2C_QUP=y + - [Config] arm64: snapdragon: SPI_QUP=y + - [Config] arm64: snapdragon: USB_ULPI_BUS=y, PHY_QCOM_USB_HS=y + - [Config] arm64: snapdragon: QCOM_APCS_IPC=y + - [Config] arm64: snapdragon: QCOM_WCNSS_CTRL=y + - [Config] arm64: snapdragon: QCOM_SMSM=y + - [Config] arm64: snapdragon: QCOM_SMP2P=y + - [Config] arm64: snapdragon: DRM_MSM=y + - [Config] arm64: snapdragon: SND_SOC=y + - [Config] arm64: snapdragon: QCOM_WCNSS_PIL=m + - [Config] arm64: snapdragon: QCOM_A53PLL=y, QCOM_CLK_APCS_MSM8916=y + - [Config] arm64: snapdragon: INPUT_PM8941_PWRKEY=y + - [Config] arm64: snapdragon: MEDIA_SUBDRV_AUTOSELECT=y, VIDEO_OV5645=m + - [Config] arm64: snapdragon: SND_SOC_APQ8016_SBC=y, SND_SOC_LPASS_APQ8016=y + - [Config] arm64: snapdragon: SND_SOC_MSM8916_WCD_ANALOG=y, + SND_SOC_MSM8916_WCD_DIGITAL=y + - SAUCE: media: ov5645: skip address change if dt addr == default addr + - SAUCE: drm/msm/adv7511: wrap hacks under CONFIG_ADV7511_SNAPDRAGON_HACKS + #ifdefs + - [Config] arm64: snapdragon: ADV7511_SNAPDRAGON_HACKS=y + - packaging: snapdragon: fixup ABI paths + * LSM stacking patches for bionic (LP: #1763062) + - SAUCE: LSM stacking: procfs: add smack subdir to attrs + - SAUCE: LSM stacking: LSM: Manage credential security blobs + - SAUCE: LSM stacking: LSM: Manage file security blobs + - SAUCE: LSM stacking: LSM: Manage task security blobs + - SAUCE: LSM stacking: LSM: Manage remaining security blobs + - SAUCE: LSM stacking: LSM: General stacking + - SAUCE: LSM stacking: fixup initialize task->security + - SAUCE: LSM stacking: fixup: alloc_task_ctx is dead code + - SAUCE: LSM stacking: add support for stacking getpeersec_stream + - SAUCE: LSM stacking: add stacking support to apparmor network hooks + - SAUCE: LSM stacking: fixup apparmor stacking enablement + - SAUCE: LSM stacking: fixup stacking kconfig + - SAUCE: LSM stacking: allow selecting multiple LSMs using kernel boot params + - SAUCE: LSM stacking: provide prctl interface for setting context + - SAUCE: LSM stacking: inherit current display LSM + - SAUCE: LSM stacking: keep an index for each registered LSM + - SAUCE: LSM stacking: verify display LSM + - SAUCE: LSM stacking: provide a way to specify the default display lsm + - SAUCE: LSM stacking: make sure LSM blob align on 64 bit boundaries + - SAUCE: LSM stacking: add /proc//attr/display_lsm + - SAUCE: LSM stacking: add Kconfig to set default display LSM + - SAUCE: LSM stacking: add configs for LSM stacking + - SAUCE: LSM stacking: add apparmor and selinux proc dirs + - SAUCE: LSM stacking: remove procfs context interface + * linux 4.13.0-13.14 ADT test failure with linux 4.13.0-13.14 + (LP: #1720779) // LSM stacking patches for bionic (LP: #1763062) + - SAUCE: LSM stacking: check for invalid zero sized writes + * RDMA/hns: ensure for-loop actually iterates and free's buffers + (LP: #1762757) + - RDMA/hns: ensure for-loop actually iterates and free's buffers + * Support cq/rq record doorbell for RDMA on HSilicon hip08 systems + (LP: #1762755) + - RDMA/hns: Fix the endian problem for hns + - RDMA/hns: Support rq record doorbell for the user space + - RDMA/hns: Support cq record doorbell for the user space + - RDMA/hns: Support rq record doorbell for kernel space + - RDMA/hns: Support cq record doorbell for kernel space + - RDMA/hns: Fix cqn type and init resp + - RDMA/hns: Fix init resp when alloc ucontext + - RDMA/hns: Fix cq record doorbell enable in kernel + * Replace LPC patchset with upstream version (LP: #1762758) + - Revert "UBUNTU: SAUCE: MAINTAINERS: Add maintainer for HiSilicon LPC driver" + - Revert "UBUNTU: SAUCE: HISI LPC: Add ACPI support" + - Revert "UBUNTU: SAUCE: ACPI / scan: do not enumerate Indirect IO host + children" + - Revert "UBUNTU: SAUCE: HISI LPC: Support the LPC host on Hip06/Hip07 with DT + bindings" + - Revert "UBUNTU: SAUCE: OF: Add missing I/O range exception for indirect-IO + devices" + - Revert "UBUNTU: SAUCE: PCI: Apply the new generic I/O management on PCI IO + hosts" + - Revert "UBUNTU: SAUCE: PCI: Add fwnode handler as input param of + pci_register_io_range()" + - Revert "UBUNTU: SAUCE: PCI: Remove unused __weak attribute in + pci_register_io_range()" + - Revert "UBUNTU: SAUCE: LIB: Introduce a generic PIO mapping method" + - lib: Add generic PIO mapping method + - PCI: Remove __weak tag from pci_register_io_range() + - PCI: Add fwnode handler as input param of pci_register_io_range() + - PCI: Apply the new generic I/O management on PCI IO hosts + - of: Add missing I/O range exception for indirect-IO devices + - HISI LPC: Support the LPC host on Hip06/Hip07 with DT bindings + - ACPI / scan: Rename acpi_is_serial_bus_slave() for more general use + - ACPI / scan: Do not enumerate Indirect IO host children + - HISI LPC: Add ACPI support + - MAINTAINERS: Add John Garry as maintainer for HiSilicon LPC driver + * Enable Tunneled Operations on POWER9 (LP: #1762448) + - powerpc/powernv: Enable tunneled operations + - cxl: read PHB indications from the device tree + * PSL traces reset after PERST for debug AFU image (LP: #1762462) + - cxl: Enable NORST bit in PSL_DEBUG register for PSL9 + * NFS + sec=krb5 is broken (LP: #1759791) + - sunrpc: remove incorrect HMAC request initialization + * Raspberry Pi 3 microSD support missing from the installer (LP: #1729128) + - d-i: add bcm2835 to block-modules + * Backport USB core quirks (LP: #1762695) + - usb: core: Add "quirks" parameter for usbcore + - usb: core: Copy parameter string correctly and remove superfluous null check + - usb: core: Add USB_QUIRK_DELAY_CTRL_MSG to usbcore quirks + * [Ubuntu 18.04] cryptsetup: 'device-mapper: reload ioctl on failed' when + setting up a second end-to-end encrypted disk (LP: #1762353) + - SAUCE: s390/crypto: Adjust s390 aes and paes cipher + * Additional spectre and meltdown patches (LP: #1760099) // CVE-2017-5715 + - powerpc/64s: Wire up cpu_show_spectre_v2() + * Additional spectre and meltdown patches (LP: #1760099) // CVE-2017-5753 + - powerpc/64s: Wire up cpu_show_spectre_v1() + * Additional spectre and meltdown patches (LP: #1760099) // CVE-2017-5754 + - powerpc/rfi-flush: Move the logic to avoid a redo into the debugfs code + - powerpc/rfi-flush: Make it possible to call setup_rfi_flush() again + - powerpc/rfi-flush: Always enable fallback flush on pseries + - powerpc/rfi-flush: Differentiate enabled and patched flush types + - powerpc/rfi-flush: Call setup_rfi_flush() after LPM migration + - powerpc/64s: Move cpu_show_meltdown() + - powerpc/64s: Enhance the information in cpu_show_meltdown() + - powerpc/powernv: Use the security flags in pnv_setup_rfi_flush() + - powerpc/pseries: Use the security flags in pseries_setup_rfi_flush() + * Additional spectre and meltdown patches (LP: #1760099) // CVE-2017-5715 // + CVE-2017-5753 // CVE-2017-5754 + - powerpc/pseries: Add new H_GET_CPU_CHARACTERISTICS flags + - powerpc: Add security feature flags for Spectre/Meltdown + - powerpc/pseries: Set or clear security feature flags + - powerpc/powernv: Set or clear security feature flags + * Hisilicon network subsystem 3 support (LP: #1761610) + - net: hns3: export pci table of hclge and hclgevf to userspace + - d-i: Add hns3 drivers to nic-modules + * "ip a" command on a guest VM shows UNKNOWN status (LP: #1761534) + - virtio-net: Fix operstate for virtio when no VIRTIO_NET_F_STATUS + * perf vendor events arm64: Enable JSON events for ThunderX2 B0 (LP: #1760712) + - perf vendor events aarch64: Add JSON metrics for ARM Cortex-A53 Processor + - perf vendor events: Drop incomplete multiple mapfile support + - perf vendor events: Fix error code in json_events() + - perf vendor events: Drop support for unused topic directories + - perf vendor events: Add support for pmu events vendor subdirectory + - perf vendor events arm64: Relocate ThunderX2 JSON to cavium subdirectory + - perf vendor events arm64: Relocate Cortex A53 JSONs to arm subdirectory + - perf vendor events: Add support for arch standard events + - perf vendor events arm64: Add armv8-recommended.json + - perf vendor events arm64: Fixup ThunderX2 to use recommended events + - perf vendor events arm64: fixup A53 to use recommended events + - perf vendor events arm64: add HiSilicon hip08 JSON file + - perf vendor events arm64: Enable JSON events for ThunderX2 B0 + * Warning "cache flush timed out!" seen when unloading the cxl driver + (LP: #1762367) + - cxl: Check if PSL data-cache is available before issue flush request + * Bionic update to 4.15.16 stable release (LP: #1762370) + - ARM: OMAP: Fix SRAM W+X mapping + - ARM: 8746/1: vfp: Go back to clearing vfp_current_hw_state[] + - ARM: dts: sun6i: a31s: bpi-m2: improve pmic properties + - ARM: dts: sun6i: a31s: bpi-m2: add missing regulators + - mtd: jedec_probe: Fix crash in jedec_read_mfr() + - mtd: nand: atmel: Fix get_sectorsize() function + - ALSA: usb-audio: Add native DSD support for TEAC UD-301 + - ALSA: pcm: Use dma_bytes as size parameter in dma_mmap_coherent() + - ALSA: pcm: potential uninitialized return values + - x86/platform/uv/BAU: Add APIC idt entry + - perf/hwbp: Simplify the perf-hwbp code, fix documentation + - ceph: only dirty ITER_IOVEC pages for direct read + - ipc/shm.c: add split function to shm_vm_ops + - i2c: i2c-stm32f7: fix no check on returned setup + - powerpc/mm: Add tracking of the number of coprocessors using a context + - powerpc/mm: Workaround Nest MMU bug with TLB invalidations + - powerpc/64s: Fix i-side SLB miss bad address handler saving nonvolatile GPRs + - partitions/msdos: Unable to mount UFS 44bsd partitions + - xfrm_user: uncoditionally validate esn replay attribute struct + - RDMA/ucma: Check AF family prior resolving address + - RDMA/ucma: Fix use-after-free access in ucma_close + - RDMA/ucma: Ensure that CM_ID exists prior to access it + - RDMA/rdma_cm: Fix use after free race with process_one_req + - RDMA/ucma: Check that device is connected prior to access it + - RDMA/ucma: Check that device exists prior to accessing it + - RDMA/ucma: Introduce safer rdma_addr_size() variants + - ipv6: fix possible deadlock in rt6_age_examine_exception() + - net: xfrm: use preempt-safe this_cpu_read() in ipcomp_alloc_tfms() + - xfrm: Refuse to insert 32 bit userspace socket policies on 64 bit systems + - percpu: add __GFP_NORETRY semantics to the percpu balancing path + - netfilter: x_tables: make allocation less aggressive + - netfilter: bridge: ebt_among: add more missing match size checks + - l2tp: fix races with ipv4-mapped ipv6 addresses + - netfilter: drop template ct when conntrack is skipped. + - netfilter: x_tables: add and use xt_check_proc_name + - phy: qcom-ufs: add MODULE_LICENSE tag + - Bluetooth: Fix missing encryption refresh on Security Request + - drm/i915/dp: Write to SET_POWER dpcd to enable MST hub. + - bitmap: fix memset optimization on big-endian systems + - USB: serial: ftdi_sio: add RT Systems VX-8 cable + - USB: serial: ftdi_sio: add support for Harman FirmwareHubEmulator + - USB: serial: cp210x: add ELDAT Easywave RX09 id + - serial: 8250: Add Nuvoton NPCM UART + - mei: remove dev_err message on an unsupported ioctl + - /dev/mem: Avoid overwriting "err" in read_mem() + - media: usbtv: prevent double free in error case + - parport_pc: Add support for WCH CH382L PCI-E single parallel port card. + - crypto: lrw - Free rctx->ext with kzfree + - crypto: talitos - don't persistently map req_ctx->hw_context and + req_ctx->buf + - crypto: inside-secure - fix clock management + - crypto: testmgr - Fix incorrect values in PKCS#1 test vector + - crypto: talitos - fix IPsec cipher in length + - crypto: ahash - Fix early termination in hash walk + - crypto: caam - Fix null dereference at error path + - crypto: ccp - return an actual key size from RSA max_size callback + - crypto: arm,arm64 - Fix random regeneration of S_shipped + - crypto: x86/cast5-avx - fix ECB encryption when long sg follows short one + - Btrfs: fix unexpected cow in run_delalloc_nocow + - staging: comedi: ni_mio_common: ack ai fifo error interrupts. + - Revert "base: arch_topology: fix section mismatch build warnings" + - Input: ALPS - fix TrackStick detection on Thinkpad L570 and Latitude 7370 + - Input: i8042 - add Lenovo ThinkPad L460 to i8042 reset list + - Input: i8042 - enable MUX on Sony VAIO VGN-CS series to fix touchpad + - vt: change SGR 21 to follow the standards + - ARM: dts: DRA76-EVM: Set powerhold property for tps65917 + - net: hns: Fix ethtool private flags + - Fix slab name "biovec-(1<<(21-12))" + - Revert "ARM: dts: am335x-pepper: Fix the audio CODEC's reset pin" + - Revert "ARM: dts: omap3-n900: Fix the audio CODEC's reset pin" + - Revert "cpufreq: Fix governor module removal race" + - Revert "ip6_vti: adjust vti mtu according to mtu of lower device" + - Linux 4.15.16 + * [18.04][config] regression: nvme and nvme_core couldn't be built as modules + starting 4.15-rc2 (LP: #1759893) + - SAUCE: Revert "lightnvm: include NVM Express driver if OCSSD is selected for + build" + - [Config] CONFIG_BLK_DEV_NMVE=m + * Miscellaneous Ubuntu changes + - [Packaging] Only install cloud init files when do_tools_common=true + + -- Seth Forshee Fri, 20 Apr 2018 11:29:31 -0500 + +linux-azure (4.15.0-1006.6) bionic; urgency=medium + + * linux-azure: 4.15.0-1006.6 -proposed tracker (LP: #1763772) + + * zram module is missing in linux-azure (LP: #1762756) + - [Config] linux-azure: CONFIG_ZRAM=m + + * Disable nouveau driver in linux-azure kernel (LP: #1763456) + - [Config] linux-azure: CONFIG_DRM_NOUVEAU=n + + * linux-azure-edge should follow bionic/linux-azure in a similar way to linux- + hwe (LP: #1763494) + - [Packaging] Increase version + + -- Marcelo Henrique Cerri Fri, 13 Apr 2018 13:33:53 -0300 + +linux-azure (4.15.0-1004.4) bionic; urgency=medium + + * linux-azure: 4.15.0-1004.4 -proposed tracker (LP: #1761181) + + * [Hyper-V] hv_netvsc: enable multicast if necessary (LP: #1759885) + - hv_netvsc: fix filter flags + - SAUCE: hv_netvsc: enable multicast if necessary + + * [Hyper-V][linux-azure] Change config for MLX4 and MLX5 (LP: #1759656) + - [Config] azure: CONFIG_MLX{4,5}_INFINIBAND=y + + * [Hyper-V] Improvements for UDP on SRIOV (LP: #1756414) + - SAUCE: hv_netvsc: avoid retry on send during shutdown + - SAUCE: hv_netvsc: only wake transmit queue if link is up + - SAUCE: hv_netvsc: fix error unwind handling if vmbus_open fails + - SAUCE: hv_netvsc: cancel subchannel setup before halting device + - SAUCE: hv_netvsc: fix race in napi poll when rescheduling + - SAUCE: hv_netvsc: use napi_schedule_irqoff + - SAUCE: hv_netvsc: defer queue selection to VF + - SAUCE: hv_netvsc: filter multicast/broadcast + - SAUCE: hv_netvsc: propagate rx filters to VF + + * [Hyper-V] PCI: hv: Fix 2 hang issues in hv_compose_msi_msg (LP: #1758378) + - SAUCE: PCI: hv: Serialize the present and eject work items + - SAUCE: PCI: hv: Fix 2 hang issues in hv_compose_msi_msg() + - SAUCE: PCI: hv: Fix a comment typo in _hv_pcifront_read_config() + - SAUCE: PCI: hv: Remove the bogus test in hv_eject_device_work() + - SAUCE: PCI: hv: Only queue new work items in hv_pci_devices_present() if + necessary + + * Miscellaneous Ubuntu changes + - [Packaging] Only install cloud init files when do_tools_common=true + + [ Ubuntu: 4.15.0-15.16 ] + + * linux: 4.15.0-15.16 -proposed tracker (LP: #1761177) + * FFe: Enable configuring resume offset via sysfs (LP: #1760106) + - PM / hibernate: Make passing hibernate offsets more friendly + * /dev/bcache/by-uuid links not created after reboot (LP: #1729145) + - SAUCE: (no-up) bcache: decouple emitting a cached_dev CHANGE uevent + * Ubuntu18.04:POWER9:DD2.2 - Unable to start a KVM guest with default machine + type(pseries-bionic) complaining "KVM implementation does not support + Transactional Memory, try cap-htm=off" (kvm) (LP: #1752026) + - powerpc: Use feature bit for RTC presence rather than timebase presence + - powerpc: Book E: Remove unused CPU_FTR_L2CSR bit + - powerpc: Free up CPU feature bits on 64-bit machines + - powerpc: Add CPU feature bits for TM bug workarounds on POWER9 v2.2 + - powerpc/powernv: Provide a way to force a core into SMT4 mode + - KVM: PPC: Book3S HV: Work around transactional memory bugs in POWER9 + - KVM: PPC: Book3S HV: Work around XER[SO] bug in fake suspend mode + - KVM: PPC: Book3S HV: Work around TEXASR bug in fake suspend state + * Important Kernel fixes to be backported for Power9 (kvm) (LP: #1758910) + - powerpc/mm: Fixup tlbie vs store ordering issue on POWER9 + * Ubuntu 18.04 - IO Hang on some namespaces when running HTX with 16 + namespaces (Bolt / NVMe) (LP: #1757497) + - powerpc/64s: Fix lost pending interrupt due to race causing lost update to + irq_happened + * fwts-efi-runtime-dkms 18.03.00-0ubuntu1: fwts-efi-runtime-dkms kernel module + failed to build (LP: #1760876) + - [Packaging] include the retpoline extractor in the headers + + [ Ubuntu: 4.15.0-14.15 ] + + * linux: 4.15.0-14.15 -proposed tracker (LP: #1760678) + * [Bionic] mlx4 ETH - mlnx_qos failed when set some TC to vendor + (LP: #1758662) + - net/mlx4_en: Change default QoS settings + * AT_BASE_PLATFORM in AUXV is absent on kernels available on Ubuntu 17.10 + (LP: #1759312) + - powerpc/64s: Fix NULL AT_BASE_PLATFORM when using DT CPU features + * Bionic update to 4.15.15 stable release (LP: #1760585) + - net: dsa: Fix dsa_is_user_port() test inversion + - openvswitch: meter: fix the incorrect calculation of max delta_t + - qed: Fix MPA unalign flow in case header is split across two packets. + - tcp: purge write queue upon aborting the connection + - qed: Fix non TCP packets should be dropped on iWARP ll2 connection + - sysfs: symlink: export sysfs_create_link_nowarn() + - net: phy: relax error checking when creating sysfs link netdev->phydev + - devlink: Remove redundant free on error path + - macvlan: filter out unsupported feature flags + - net: ipv6: keep sk status consistent after datagram connect failure + - ipv6: old_dport should be a __be16 in __ip6_datagram_connect() + - ipv6: sr: fix NULL pointer dereference when setting encap source address + - ipv6: sr: fix scheduling in RCU when creating seg6 lwtunnel state + - mlxsw: spectrum_buffers: Set a minimum quota for CPU port traffic + - net: phy: Tell caller result of phy_change() + - ipv6: Reflect MTU changes on PMTU of exceptions for MTU-less routes + - net sched actions: return explicit error when tunnel_key mode is not + specified + - ppp: avoid loop in xmit recursion detection code + - rhashtable: Fix rhlist duplicates insertion + - test_rhashtable: add test case for rhltable with duplicate objects + - kcm: lock lower socket in kcm_attach + - sch_netem: fix skb leak in netem_enqueue() + - ieee802154: 6lowpan: fix possible NULL deref in lowpan_device_event() + - net: use skb_to_full_sk() in skb_update_prio() + - net: Fix hlist corruptions in inet_evict_bucket() + - s390/qeth: free netdevice when removing a card + - s390/qeth: when thread completes, wake up all waiters + - s390/qeth: lock read device while queueing next buffer + - s390/qeth: on channel error, reject further cmd requests + - soc/fsl/qbman: fix issue in qman_delete_cgr_safe() + - dpaa_eth: fix error in dpaa_remove() + - dpaa_eth: remove duplicate initialization + - dpaa_eth: increment the RX dropped counter when needed + - dpaa_eth: remove duplicate increment of the tx_errors counter + - dccp: check sk for closed state in dccp_sendmsg() + - ipv6: fix access to non-linear packet in ndisc_fill_redirect_hdr_option() + - l2tp: do not accept arbitrary sockets + - net: ethernet: arc: Fix a potential memory leak if an optional regulator is + deferred + - net: ethernet: ti: cpsw: add check for in-band mode setting with RGMII PHY + interface + - net: fec: Fix unbalanced PM runtime calls + - net/iucv: Free memory obtained by kzalloc + - netlink: avoid a double skb free in genlmsg_mcast() + - net: Only honor ifindex in IP_PKTINFO if non-0 + - net: systemport: Rewrite __bcm_sysport_tx_reclaim() + - qede: Fix qedr link update + - skbuff: Fix not waking applications when errors are enqueued + - team: Fix double free in error path + - Linux 4.15.15 + * Ubuntu 18.04 [ WSP DD2.2 with stop4 and stop5 enabled ]: kdump fails to + capture dump when smt=2 or off. (LP: #1758206) + - powerpc/crash: Remove the test for cpu_online in the IPI callback + - powernv/kdump: Fix cases where the kdump kernel can get HMI's + - powerpc/kdump: Fix powernv build break when KEXEC_CORE=n + * [Intel Ubuntu 18.04 Bug] Null pointer dereference, when disconnecting RAID + rebuild target (LP: #1759279) + - md: document lifetime of internal rdev pointer. + * [Feature]Crystal Ridge:add support for the platform capabilities NFIT sub- + table in ACPI 6.2A (LP: #1730829) + - ACPICA: ACPI 6.0A: Changes to the NFIT ACPI table + - acpi: nfit: Add support for detect platform CPU cache flush on power loss + - acpi: nfit: add persistent memory control flag for nd_region + - libnvdimm: expose platform persistence attribute for nd_region + - libnvdimm: re-enable deep flush for pmem devices via fsync() + - libnvdimm, nfit: fix persistence domain reporting + * Allow multiple mounts of zfs datasets (LP: #1759848) + - SAUCE: Allow mounting datasets more than once (LP: #1759848) + * Update Aquantia driver to fix various issues (LP: #1759303) + - net: aquantia: Eliminate AQ_DIMOF, replace with ARRAY_SIZE + - net: aquantia: Cleanup status flags accesses + - net: aquantia: Cleanup hardware access modules + - net: aquantia: Remove duplicate hardware descriptors declarations + - net: aquantia: Add const qualifiers for hardware ops tables + - net: aquantia: Simplify dependencies between pci modules + - net: aquantia: Eliminate aq_nic structure abstraction + - net: aquantia: Fix register definitions to linux style + - net: aquantia: Prepend hw access functions declarations with prefix + - net: aquantia: Fix internal stats calculation on rx + - net: aquantia: Introduce new device ids and constants + - net: aquantia: Introduce new AQC devices and capabilities + - net: aquantia: Convert hw and caps structures to const static pointers + - net: aquantia: Cleanup pci functions module + - net: aquantia: Remove create/destroy from hw ops + - net: aquantia: Change confusing no_ff_addr to more meaningful name + - net: aquantia: Introduce firmware ops callbacks + - net: aquantia: Introduce support for new firmware on AQC cards + - net: aquantia: Introduce global AQC hardware reset sequence + - net: aquantia: Report correct mediatype via ethtool + - net: aquantia: bump driver version to match aquantia internal numbering + - net: aquantia: Fix hardware reset when SPI may rarely hangup + - net: aquantia: Fix a regression with reset on old firmware + - net: aquantia: Change inefficient wait loop on fw data reads + - net: aquantia: Add tx clean budget and valid budget handling logic + - net: aquantia: Allow live mac address changes + - net: aquantia: Implement pci shutdown callback + - net: aquantia: driver version bump + * ISST-LTE:KVM:Ubuntu1804:BostonLC:boslcp3: cpu hotplug on boslcp3g4 guest + dumping call traces continuously. (LP: #1759722) + - blk-mq: turn WARN_ON in __blk_mq_run_hw_queue into printk + * ISST-LTE:KVM:Ubuntu18.04:BostonLC:boslcp3:boslcp3g3:Guest conosle hangs + after hotplug CPU add operation. (LP: #1759723) + - genirq/affinity: assign vectors to all possible CPUs + - blk-mq: simplify queue mapping & schedule with each possisble CPU + * test_bpf fails (LP: #1756150) + - test_bpf: Fix testing with CONFIG_BPF_JIT_ALWAYS_ON=y on other arches + * Bionic update to v4.15.14 stable release (LP: #1759655) + - MIPS: ralink: Remove ralink_halt() + - MIPS: ralink: Fix booting on MT7621 + - MIPS: lantiq: Fix Danube USB clock + - MIPS: lantiq: Enable AHB Bus for USB + - MIPS: lantiq: ase: Enable MFD_SYSCON + - iio: chemical: ccs811: Corrected firmware boot/application mode transition + - iio: st_pressure: st_accel: pass correct platform data to init + - iio: adc: meson-saradc: unlock on error in meson_sar_adc_lock() + - ALSA: usb-audio: Fix parsing descriptor of UAC2 processing unit + - ALSA: aloop: Sync stale timer before release + - ALSA: aloop: Fix access to not-yet-ready substream via cable + - ALSA: hda - Force polling mode on CFL for fixing codec communication + - ALSA: hda/realtek - Fix speaker no sound after system resume + - ALSA: hda/realtek - Fix Dell headset Mic can't record + - ALSA: hda/realtek - Always immediately update mute LED with pin VREF + - mmc: core: Fix tracepoint print of blk_addr and blksz + - mmc: core: Disable HPI for certain Micron (Numonyx) eMMC cards + - mmc: block: fix updating ext_csd caches on ioctl call + - mmc: dw_mmc: Fix the DTO/CTO timeout overflow calculation for 32-bit systems + - mmc: dw_mmc: exynos: fix the suspend/resume issue for exynos5433 + - mmc: dw_mmc: fix falling from idmac to PIO mode when dw_mci_reset occurs + - PCI: Add function 1 DMA alias quirk for Highpoint RocketRAID 644L + - ahci: Add PCI-id for the Highpoint Rocketraid 644L card + - lockdep: fix fs_reclaim warning + - clk: bcm2835: Fix ana->maskX definitions + - clk: bcm2835: Protect sections updating shared registers + - clk: sunxi-ng: a31: Fix CLK_OUT_* clock ops + - RDMA/mlx5: Fix crash while accessing garbage pointer and freed memory + - Drivers: hv: vmbus: Fix ring buffer signaling + - pinctrl: samsung: Validate alias coming from DT + - Bluetooth: btusb: Remove Yoga 920 from the btusb_needs_reset_resume_table + - Bluetooth: btusb: Add Dell OptiPlex 3060 to btusb_needs_reset_resume_table + - Bluetooth: btusb: Fix quirk for Atheros 1525/QCA6174 + - libata: fix length validation of ATAPI-relayed SCSI commands + - libata: remove WARN() for DMA or PIO command without data + - libata: don't try to pass through NCQ commands to non-NCQ devices + - libata: Apply NOLPM quirk to Crucial MX100 512GB SSDs + - libata: Enable queued TRIM for Samsung SSD 860 + - libata: Apply NOLPM quirk to Crucial M500 480 and 960GB SSDs + - libata: Make Crucial BX100 500GB LPM quirk apply to all firmware versions + - libata: Modify quirks for MX100 to limit NCQ_TRIM quirk to MU01 version + - sched, cgroup: Don't reject lower cpu.max on ancestors + - cgroup: fix rule checking for threaded mode switching + - nfsd: remove blocked locks on client teardown + - media: tegra-cec: reset rx_buf_cnt when start bit detected + - hugetlbfs: check for pgoff value overflow + - h8300: remove extraneous __BIG_ENDIAN definition + - mm/vmalloc: add interfaces to free unmapped page table + - x86/mm: implement free pmd/pte page interfaces + - mm/khugepaged.c: convert VM_BUG_ON() to collapse fail + - mm/thp: do not wait for lock_page() in deferred_split_scan() + - mm/shmem: do not wait for lock_page() in shmem_unused_huge_shrink() + - Revert "mm: page_alloc: skip over regions of invalid pfns where possible" + - drm/vmwgfx: Fix black screen and device errors when running without fbdev + - drm/vmwgfx: Fix a destoy-while-held mutex problem. + - drm/radeon: Don't turn off DP sink when disconnected + - drm/amd/display: We shouldn't set format_default on plane as atomic driver + - drm/amd/display: Add one to EDID's audio channel count when passing to DC + - drm: Reject getfb for multi-plane framebuffers + - drm: udl: Properly check framebuffer mmap offsets + - mm/vmscan: wake up flushers for legacy cgroups too + - module: propagate error in modules_open() + - acpi, numa: fix pxm to online numa node associations + - ACPI / watchdog: Fix off-by-one error at resource assignment + - libnvdimm, {btt, blk}: do integrity setup before add_disk() + - brcmfmac: fix P2P_DEVICE ethernet address generation + - rtlwifi: rtl8723be: Fix loss of signal + - tracing: probeevent: Fix to support minus offset from symbol + - mtdchar: fix usage of mtd_ooblayout_ecc() + - mtd: nand: fsl_ifc: Fix nand waitfunc return value + - mtd: nand: fsl_ifc: Fix eccstat array overflow for IFC ver >= 2.0.0 + - mtd: nand: fsl_ifc: Read ECCSTAT0 and ECCSTAT1 registers for IFC 2.0 + - staging: ncpfs: memory corruption in ncp_read_kernel() + - can: peak/pcie_fd: fix echo_skb is occupied! bug + - can: peak/pcie_fd: remove useless code when interface starts + - can: ifi: Repair the error handling + - can: ifi: Check core revision upon probe + - can: cc770: Fix stalls on rt-linux, remove redundant IRQ ack + - can: cc770: Fix queue stall & dropped RTR reply + - can: cc770: Fix use after free in cc770_tx_interrupt() + - tty: vt: fix up tabstops properly + - x86/entry/64: Don't use IST entry for #BP stack + - selftests/x86/ptrace_syscall: Fix for yet more glibc interference + - x86/vsyscall/64: Use proper accessor to update P4D entry + - x86/efi: Free efi_pgd with free_pages() + - posix-timers: Protect posix clock array access against speculation + - kvm/x86: fix icebp instruction handling + - x86/build/64: Force the linker to use 2MB page size + - x86/boot/64: Verify alignment of the LOAD segment + - hwmon: (k10temp) Only apply temperature offset if result is positive + - hwmon: (k10temp) Add temperature offset for Ryzen 1900X + - perf/x86/intel/uncore: Fix Skylake UPI event format + - perf stat: Fix CVS output format for non-supported counters + - perf/core: Fix ctx_event_type in ctx_resched() + - trace/bpf: remove helper bpf_perf_prog_read_value from tracepoint type + programs + - perf/x86/intel: Don't accidentally clear high bits in bdw_limit_period() + - perf/x86/intel/uncore: Fix multi-domain PCI CHA enumeration bug on Skylake + servers + - iio: ABI: Fix name of timestamp sysfs file + - iio: imu: st_lsm6dsx: fix endianness in st_lsm6dsx_read_oneshot() + - iio: imu: st_lsm6dsx: introduce conf_lock mutex + - staging: android: ion: Zero CMA allocated memory + - kbuild: disable clang's default use of -fmerge-all-constants + - bpf: skip unnecessary capability check + - bpf, x64: increase number of passes + - Linux 4.15.14 + * System fails to start (boot) on battery due to read-only root file-system + (LP: #1726930) // Bionic update to v4.15.14 stable release (LP: #1759655) + - libata: disable LPM for Crucial BX100 SSD 500GB drive + * [Feature][CFL][ICL] [CNL]Thunderbolt support (Titan Ridge) (LP: #1730775) + - thunderbolt: Resume control channel after hibernation image is created + - thunderbolt: Serialize PCIe tunnel creation with PCI rescan + - thunderbolt: Handle connecting device in place of host properly + - thunderbolt: Do not overwrite error code when domain adding fails + - thunderbolt: Wait a bit longer for root switch config space + - thunderbolt: Wait a bit longer for ICM to authenticate the active NVM + - thunderbolt: Handle rejected Thunderbolt devices + - thunderbolt: Factor common ICM add and update operations out + - thunderbolt: Correct function name in kernel-doc comment + - thunderbolt: Add tb_switch_get() + - thunderbolt: Add tb_switch_find_by_route() + - thunderbolt: Add tb_xdomain_find_by_route() + - thunderbolt: Add constant for approval timeout + - thunderbolt: Move driver ready handling to struct icm + - thunderbolt: Add 'boot' attribute for devices + - thunderbolt: Add support for preboot ACL + - Documentation/admin-guide: fixes for thunderbolt.rst + - thunderbolt: Introduce USB only (SL4) security level + - thunderbolt: Add support for Intel Titan Ridge + * QCA9377 requires more IRAM banks for its new firmware (LP: #1748345) + - ath10k: update the IRAM bank number for QCA9377 + * nfp: fix disabling on hw-tc-offload in flower (LP: #1752828) + - nfp: bpf: require ETH table + - nfp: don't advertise hw-tc-offload on non-port netdevs + - nfp: forbid disabling hw-tc-offload on representors while offload active + * Fix an issue that when system in S3, USB keyboard can't wake up the system. + (LP: #1759511) + - ACPI / PM: Allow deeper wakeup power states with no _SxD nor _SxW + * retpoline hints: primary infrastructure and initial hints (LP: #1758856) + - [Packaging] retpoline -- add safe usage hint support + - [Packaging] retpoline-check -- only report additions + - [Packaging] retpoline -- widen indirect call/jmp detection + - [Packaging] retpoline -- elide %rip relative indirections + - [Packaging] retpoline -- clear hint information from packages + - SAUCE: apm -- annotate indirect calls within + firmware_restrict_branch_speculation_{start,end} + - SAUCE: EFI -- annotate indirect calls within + firmware_restrict_branch_speculation_{start,end} + - SAUCE: early/late -- annotate indirect calls in early/late initialisation + code + - SAUCE: vga_set_mode -- avoid jump tables + - [Config] retpoine -- switch to new format + * zfs system process hung on container stop/delete (LP: #1754584) + - SAUCE: Fix non-prefaulted page deadlock (LP: #1754584) + - Revert "UBUNTU: SAUCE: Fix non-prefaulted page deadlock (LP: #1754584)" + - SAUCE: Fix non-prefaulted page deadlock (LP: #1754584) + * Important KVM fixes for ppc64el (LP: #1759045) + - KVM: PPC: Book3S HV: Do SLB load/unload with guest LPCR value loaded + - KVM: PPC: Book3S HV: Fix handling of secondary HPTEG in HPT resizing code + - KVM: PPC: Book3S HV: Make HPT resizing work on POWER9 + - KVM: PPC: Book3S: Add MMIO emulation for VMX instructions + - KVM: PPC: Book3S: Fix compile error that occurs with some gcc versions + - KVM: PPC: Book3S HV: Fix trap number return from __kvmppc_vcore_entry + - KVM: PPC: Book3S HV: Fix duplication of host SLB entries + * ubuntu_zram_smoke test will cause soft lockup on Artful ThunderX ARM64 + (LP: #1755073) + - SAUCE: crypto: thunderx_zip: Fix fallout from CONFIG_VMAP_STACK + * Update to ocxl driver (LP: #1755161) + - ocxl: fix signed comparison with less than zero + - ocxl: Fix potential bad errno on irq allocation + - ocxl: Add get_metadata IOCTL to share OCXL information to userspace + * CAPI Flash (cxlflash) update (LP: #1752672) + - scsi: cxlflash: Update cxl-specific arguments to generic cookie + - scsi: cxlflash: Explicitly cache number of interrupts per context + - scsi: cxlflash: Remove embedded CXL work structures + - scsi: cxlflash: Adapter context init can return error + - scsi: cxlflash: Staging to support future accelerators + - SAUCE: cxlflash: Preserve number of interrupts for master contexts + - SAUCE: cxlflash: Avoid clobbering context control register value + - SAUCE: cxlflash: Add argument identifier names + - SAUCE: cxlflash: Introduce OCXL backend + - SAUCE: cxlflash: Hardware AFU for OCXL + - SAUCE: cxlflash: Read host function configuration + - SAUCE: cxlflash: Setup function acTag range + - SAUCE: cxlflash: Read host AFU configuration + - SAUCE: cxlflash: Setup AFU acTag range + - SAUCE: cxlflash: Setup AFU PASID + - SAUCE: cxlflash: Adapter context support for OCXL + - SAUCE: cxlflash: Use IDR to manage adapter contexts + - SAUCE: cxlflash: Support adapter file descriptors for OCXL + - SAUCE: cxlflash: Support adapter context discovery + - SAUCE: cxlflash: Support image reload policy modification + - SAUCE: cxlflash: MMIO map the AFU + - SAUCE: cxlflash: Support starting an adapter context + - SAUCE: cxlflash: Support process specific mappings + - SAUCE: cxlflash: Support AFU state toggling + - SAUCE: cxlflash: Support reading adapter VPD data + - SAUCE: cxlflash: Setup function OCXL link + - SAUCE: cxlflash: Setup OCXL transaction layer + - SAUCE: cxlflash: Support process element lifecycle + - SAUCE: cxlflash: Support AFU interrupt management + - SAUCE: cxlflash: Support AFU interrupt mapping and registration + - SAUCE: cxlflash: Support starting user contexts + - SAUCE: cxlflash: Support adapter context polling + - SAUCE: cxlflash: Support adapter context reading + - SAUCE: cxlflash: Support adapter context mmap and release + - SAUCE: cxlflash: Support file descriptor mapping + - SAUCE: cxlflash: Introduce object handle fop + - SAUCE: cxlflash: Setup LISNs for user contexts + - SAUCE: cxlflash: Setup LISNs for master contexts + - SAUCE: cxlflash: Update synchronous interrupt status bits + - SAUCE: cxlflash: Introduce OCXL context state machine + - SAUCE: cxlflash: Register for translation errors + - SAUCE: cxlflash: Support AFU reset + - SAUCE: cxlflash: Enable OCXL operations + * [Feature][CFL] Enable pmc_core driver for H, S, and U SKUs (LP: #1730770) + - platform/x86: intel_pmc_core: Remove unused EXPORTED API + - platform/x86: intel_pmc_core: Change driver to a module + - platform/x86: intel_pmc_core: Fix file permission warnings + - platform/x86: intel_pmc_core: Refactor debugfs entries + - platform/x86: intel_pmc_core: Substitute PCI with CPUID enumeration + - platform/x86: intel_pmc_core: Convert to ICPU macro + - platform/x86: intel_pmc_core: Remove unused header file + - ACPI / LPIT: Export lpit_read_residency_count_address() + - platform/x86: intel_pmc_core: Read base address from LPIT + - x86/cpu: Add Cannonlake to Intel family + - platform/x86: intel_pmc_core: Add CannonLake PCH support + - platform/x86: intel_pmc_core: Special case for Coffeelake + * Cpu utilization showing system time for kvm guests (performance) (sysstat) + (LP: #1755979) + - KVM: PPC: Book3S HV: Fix guest time accounting with VIRT_CPU_ACCOUNTING_GEN + * [Artful][Wyse 3040] System hang when trying to enable an offlined CPU core + (LP: #1736393) + - SAUCE: drm/i915:Don't set chip specific data + - SAUCE: drm/i915: make previous commit affects Wyse 3040 only + * [Bug] ISH support for CFL-H (LP: #1739522) + - HID: intel-ish-hid: Enable Cannon Lake and Coffee Lake laptop/desktop + * ath9k can't connect to wifi AP (LP: #1727228) + - ath9k: add MSI support + - ath9k: add a quirk to set use_msi automatically + * [P9,Power NV][Witherspoon][Ubuntu 18.04][Perf] : PMU events by name it is + not listed under perf list (LP: #1755470) + - iperf vendor events: Use more flexible pattern matching for CPU + identification for mapfile.csv + * zed process consuming 100% cpu (LP: #1751796) + - SAUCE: Fix ioctl loop-spin in zed (LP: #1751796) + * Bionic update to 4.15.13 stable release (LP: #1758886) + - scsi: megaraid_sas: Do not use 32-bit atomic request descriptor for Ventura + controllers + - staging: android: ashmem: Fix possible deadlock in ashmem_ioctl + - drm/amdgpu: use polling mem to set SDMA3 wptr for VF + - Bluetooth: hci_qca: Avoid setup failure on missing rampatch + - Bluetooth: btqcomsmd: Fix skb double free corruption + - cpufreq: longhaul: Revert transition_delay_us to 200 ms + - media: c8sectpfe: fix potential NULL pointer dereference in + c8sectpfe_timer_interrupt + - drm/msm: fix leak in failed get_pages + - IB/ipoib: Warn when one port fails to initialize + - RDMA/iwpm: Fix uninitialized error code in iwpm_send_mapinfo() + - hv_netvsc: Fix the receive buffer size limit + - hv_netvsc: Fix the TX/RX buffer default sizes + - tcp: allow TLP in ECN CWR + - spi: sh-msiof: Avoid writing to registers from spi_master.setup() + - libbpf: prefer global symbols as bpf program name source + - rtlwifi: rtl_pci: Fix the bug when inactiveps is enabled. + - rtlwifi: always initialize variables given to RT_TRACE() + - media: bt8xx: Fix err 'bt878_probe()' + - ath10k: handling qos at STA side based on AP WMM enable/disable + - media: [RESEND] media: dvb-frontends: Add delay to Si2168 restart + - qmi_wwan: set FLAG_SEND_ZLP to avoid network initiated disconnect + - tty: goldfish: Enable 'earlycon' only if built-in + - serial: 8250_dw: Disable clock on error + - cros_ec: fix nul-termination for firmware build info + - watchdog: Fix potential kref imbalance when opening watchdog + - watchdog: Fix kref imbalance seen if handle_boot_enabled=0 + - platform/chrome: Use proper protocol transfer function + - dmaengine: zynqmp_dma: Fix race condition in the probe + - drm/tilcdc: ensure nonatomic iowrite64 is not used + - mmc: avoid removing non-removable hosts during suspend + - mmc: block: fix logical error to avoid memory leak + - /dev/mem: Add bounce buffer for copy-out + - net: phy: meson-gxl: check phy_write return value + - sfp: fix EEPROM reading in the case of non-SFF8472 SFPs + - sfp: fix non-detection of PHY + - media: s5p-mfc: Fix lock contention - request_firmware() once + - rtc: ac100: Fix multiple race conditions + - IB/ipoib: Avoid memory leak if the SA returns a different DGID + - RDMA/cma: Use correct size when writing netlink stats + - IB/umem: Fix use of npages/nmap fields + - iser-target: avoid reinitializing rdma contexts for isert commands + - bpf/cgroup: fix a verification error for a CGROUP_DEVICE type prog + - vgacon: Set VGA struct resource types + - omapdrm: panel: fix compatible vendor string for td028ttec1 + - mmc: sdhci-xenon: wait 5ms after set 1.8V signal enable + - drm/omap: DMM: Check for DMM readiness after successful transaction commit + - pty: cancel pty slave port buf's work in tty_release + - coresight: Fix disabling of CoreSight TPIU + - PCI: designware-ep: Fix ->get_msi() to check MSI_EN bit + - PCI: endpoint: Fix find_first_zero_bit() usage + - PCI: rcar: Handle rcar_pcie_parse_request_of_pci_ranges() failures + - media: davinci: fix a debug printk + - clk: check ops pointer on clock register + - dt-bindings: display: panel: Fix compatible string for Toshiba LT089AC29000 + - clk: use round rate to bail out early in set_rate + - pinctrl: Really force states during suspend/resume + - pinctrl: rockchip: enable clock when reading pin direction register + - iommu/vt-d: clean up pr_irq if request_threaded_irq fails + - ip6_vti: adjust vti mtu according to mtu of lower device + - ip_gre: fix error path when erspan_rcv failed + - ip_gre: fix potential memory leak in erspan_rcv + - soc: qcom: smsm: fix child-node lookup + - RDMA/ocrdma: Fix permissions for OCRDMA_RESET_STATS + - ARM: dts: aspeed-evb: Add unit name to memory node + - nfsd4: permit layoutget of executable-only files + - clk: at91: pmc: Wait for clocks when resuming + - clk: Don't touch hardware when reparenting during registration + - clk: axi-clkgen: Correctly handle nocount bit in recalc_rate() + - clk: si5351: Rename internal plls to avoid name collisions + - crypto: artpec6 - set correct iv size for gcm(aes) + - hwrng: core - Clean up RNG list when last hwrng is unregistered + - dmaengine: ti-dma-crossbar: Fix event mapping for TPCC_EVT_MUX_60_63 + - IB/mlx5: Fix integer overflows in mlx5_ib_create_srq + - IB/mlx5: Fix out-of-bounds read in create_raw_packet_qp_rq + - RDMA/vmw_pvrdma: Fix usage of user response structures in ABI file + - serial: 8250_pci: Don't fail on multiport card class + - RDMA/core: Do not use invalid destination in determining port reuse + - clk: migrate the count of orphaned clocks at init + - RDMA/ucma: Fix access to non-initialized CM_ID object + - RDMA/ucma: Don't allow join attempts for unsupported AF family + - Linux 4.15.13 + * Ubuntu18.04:PowerPC - Set Transparent Huge Pages (THP) by default to + "always" (LP: #1753708) + - Config: Set TRANSPARENT_HUGEPAGE_ALWAYS=y on ppc64el + * Bionic update to 4.15.12 stable release (LP: #1757465) + - x86/cpufeatures: Add Intel Total Memory Encryption cpufeature + - x86/cpufeatures: Add Intel PCONFIG cpufeature + - selftests/x86/entry_from_vm86: Exit with 1 if we fail + - selftests/x86/entry_from_vm86: Add test cases for POPF + - x86/vm86/32: Fix POPF emulation + - x86/speculation, objtool: Annotate indirect calls/jumps for objtool on + 32-bit kernels + - x86/speculation: Remove Skylake C2 from Speculation Control microcode + blacklist + - KVM: x86: Fix device passthrough when SME is active + - x86/mm: Fix vmalloc_fault to use pXd_large + - parisc: Handle case where flush_cache_range is called with no context + - ALSA: pcm: Fix UAF in snd_pcm_oss_get_formats() + - ALSA: hda - Revert power_save option default value + - ALSA: seq: Fix possible UAF in snd_seq_check_queue() + - ALSA: seq: Clear client entry before deleting else at closing + - drm/nouveau/bl: Fix oops on driver unbind + - drm/nouveau/mmu: ALIGN_DOWN correct variable + - drm/amdgpu: fix prime teardown order + - drm/radeon: fix prime teardown order + - drm/amdgpu/dce: Don't turn off DP sink when disconnected + - fs: Teach path_connected to handle nfs filesystems with multiple roots. + - KVM: arm/arm64: Reduce verbosity of KVM init log + - KVM: arm/arm64: Reset mapped IRQs on VM reset + - kvm: arm/arm64: vgic-v3: Tighten synchronization for guests using v2 on v3 + - KVM: arm/arm64: vgic: Don't populate multiple LRs with the same vintid + - lock_parent() needs to recheck if dentry got __dentry_kill'ed under it + - fs/aio: Add explicit RCU grace period when freeing kioctx + - fs/aio: Use RCU accessors for kioctx_table->table[] + - RDMAVT: Fix synchronization around percpu_ref + - irqchip/gic-v3-its: Ensure nr_ites >= nr_lpis + - nvme: fix subsystem multiple controllers support check + - xfs: preserve i_rdev when recycling a reclaimable inode + - btrfs: Fix NULL pointer exception in find_bio_stripe + - btrfs: add missing initialization in btrfs_check_shared + - btrfs: alloc_chunk: fix DUP stripe size handling + - btrfs: Fix use-after-free when cleaning up fs_devs with a single stale + device + - btrfs: remove spurious WARN_ON(ref->count < 0) in find_parent_nodes + - btrfs: Fix memory barriers usage with device stats counters + - scsi: qla2xxx: Fix smatch warning in qla25xx_delete_{rsp|req}_que + - scsi: qla2xxx: Fix NULL pointer access for fcport structure + - scsi: qla2xxx: Fix logo flag for qlt_free_session_done() + - scsi: qla2xxx: Fix crashes in qla2x00_probe_one on probe failure + - usb: dwc2: fix STM32F7 USB OTG HS compatible + - dt-bindings: usb: fix the STM32F7 DWC2 OTG HS core binding + - USB: gadget: udc: Add missing platform_device_put() on error in + bdc_pci_probe() + - usb: dwc3: Fix GDBGFIFOSPACE_TYPE values + - usb: dwc3: core: Power-off core/PHYs on system_suspend in host mode + - usb: dwc3: of-simple: fix oops by unbalanced clk disable call + - usb: gadget: udc: renesas_usb3: fix oops in renesas_usb3_remove() + - phy: phy-brcm-usb: Fix two DT properties to match bindings doc + - phy: phy-brcm-usb-init: Some Low Speed keyboards fail on 7271 + - phy: phy-brcm-usb-init: DRD mode can cause crash on startup + - phy: phy-brcm-usb-init: Power down USB 3.0 PHY when XHCI disabled + - Linux 4.15.12 + * cxl: Fix timebase synchronization status on POWER9 missing (CAPI) + (LP: #1757228) + - cxl: Fix timebase synchronization status on P9 + * [Feature][GLK] Enable L2 CDP (Code and Data Prioritization) (LP: #1737873) + - x86/intel_rdt: Enumerate L2 Code and Data Prioritization (CDP) feature + - x86/intel_rdt: Add command line parameter to control L2_CDP + * [Feature] Crystal Ridge-Restrict DAX to configurations with struct page + (LP: #1751724) + - mm, dax: introduce pfn_t_special() + - ext2: auto disable dax instead of failing mount + - ext4: auto disable dax instead of failing mount + - dax: require 'struct page' by default for filesystem dax + - Config: Enable CONFIG_FS_DAX_LIMITED + * Bionic update to 4.15.11 stable release (LP: #1756978) + - x86: Treat R_X86_64_PLT32 as R_X86_64_PC32 + - ASoC: sun4i-i2s: Fix RX slot number of SUN8I + - ASoC: sgtl5000: Fix suspend/resume + - ASoC: wm_adsp: For TLV controls only register TLV get/set + - ASoC: rt5651: Fix regcache sync errors on resume + - usb: host: xhci-rcar: add support for r8a77965 + - xhci: Fix front USB ports on ASUS PRIME B350M-A + - xhci: fix endpoint context tracer output + - serial: sh-sci: prevent lockup on full TTY buffers + - tty/serial: atmel: add new version check for usart + - uas: fix comparison for error code + - staging: comedi: fix comedi_nsamples_left. + - staging: android: ashmem: Fix lockdep issue during llseek + - scsi: sd_zbc: Fix potential memory leak + - USB: storage: Add JMicron bridge 152d:2567 to unusual_devs.h + - usbip: vudc: fix null pointer dereference on udc->lock + - usb: quirks: add control message delay for 1b1c:1b20 + - usb: usbmon: Read text within supplied buffer size + - usb: gadget: f_fs: Fix use-after-free in ffs_fs_kill_sb() + - usb: dwc3: Fix lock-up on ID change during system suspend/resume + - serial: 8250_pci: Add Brainboxes UC-260 4 port serial device + - serial: core: mark port as initialized in autoconfig + - earlycon: add reg-offset to physical address before mapping + - dm mpath: fix passing integrity data + - Revert "btrfs: use proper endianness accessors for super_copy" + - gfs2: Clean up {lookup,fillup}_metapath + - gfs2: Fixes to "Implement iomap for block_map" (2) + - drm/panel: rpi-touchscreen: propagate errors in rpi_touchscreen_i2c_read() + - spi: imx: Fix failure path leak on GPIO request error correctly + - HID: multitouch: Only look at non touch fields in first packet of a frame + - KVM: PPC: Book3S HV: Avoid shifts by negative amounts + - drm/edid: set ELD connector type in drm_edid_to_eld() + - dma-buf/fence: Fix lock inversion within dma-fence-array + - video/hdmi: Allow "empty" HDMI infoframes + - KVM: PPC: Book3S HV: Fix typo in kvmppc_hv_get_dirty_log_radix() + - HID: elo: clear BTN_LEFT mapping + - iwlwifi: mvm: rs: don't override the rate history in the search cycle + - ARM: dts: koelsch: Move cec_clock to root node + - clk: meson: gxbb: fix wrong clock for SARADC/SANA + - ARM: dts: exynos: Correct Trats2 panel reset line + - drm/amdgpu: fix get_max_engine_clock_in_mhz + - staging: rtl8822be: fix missing null check on dev_alloc_skb return + - typec: tcpm: fusb302: Resolve out of order messaging events + - USB: ledtrig-usbport: fix of-node leak + - dt-bindings: serial: Add common rs485 binding for RTS polarity + - sched: Stop switched_to_rt() from sending IPIs to offline CPUs + - sched: Stop resched_cpu() from sending IPIs to offline CPUs + - crypto: chelsio - Fix an error code in chcr_hash_dma_map() + - crypto: ecc - Fix NULL pointer deref. on no default_rng + - crypto: keywrap - Add missing ULL suffixes for 64-bit constants + - crypto: cavium - fix memory leak on info + - test_firmware: fix setting old custom fw path back on exit + - drm/vblank: Fix vblank timestamp debugs + - net: ieee802154: adf7242: Fix bug if defined DEBUG + - rtc: brcmstb-waketimer: fix error handling in brcmstb_waketmr_probe() + - perf report: Fix -D output for user metadata events + - net: xfrm: allow clearing socket xfrm policies. + - gpiolib: don't allow OPEN_DRAIN & OPEN_SOURCE flags simultaneously + - mtd: nand: fix interpretation of NAND_CMD_NONE in nand_command[_lp]() + - net: thunderx: Set max queue count taking XDP_TX into account + - ARM: dts: am335x-pepper: Fix the audio CODEC's reset pin + - ARM: dts: omap3-n900: Fix the audio CODEC's reset pin + - mtd: nand: ifc: update bufnum mask for ver >= 2.0.0 + - userns: Don't fail follow_automount based on s_user_ns + - xfrm: Fix xfrm_replay_overflow_offload_esn + - leds: pm8058: Silence pointer to integer size warning + - bpf: fix stack state printing in verifier log + - power: supply: sbs-message: double left shift bug in sbsm_select() + - power: supply: ab8500_charger: Fix an error handling path + - power: supply: ab8500_charger: Bail out in case of error in + 'ab8500_charger_init_hw_registers()' + - drm/etnaviv: make THERMAL selectable + - iio: adc: ina2xx: Shift bus voltage register to mask flag bits + - iio: health: max30102: Add power enable parameter to get_temp function + - ath10k: update tdls teardown state to target + - cpufreq: Fix governor module removal race + - KVM: X86: Restart the guest when insn_len is zero and SEV is enabled + - drm/amdgpu:fix random missing of FLR NOTIFY + - scsi: ses: don't ask for diagnostic pages repeatedly during probe + - pwm: stmpe: Fix wrong register offset for hwpwm=2 case + - drm/sun4i: Fix format mask in DE2 driver + - pinctrl: sh-pfc: r8a7791: Add can_clk function + - pinctrl: sh-pfc: r8a7795-es1: Fix MOD_SEL1 bit[25:24] to 0x3 when using + STP_ISEN_1_D + - perf annotate: Fix unnecessary memory allocation for s390x + - perf annotate: Fix objdump comment parsing for Intel mov dissassembly + - iwlwifi: mvm: avoid dumping assert log when device is stopped + - drm/amdgpu:fix virtual dce bug + - drm/amdgpu: fix amdgpu_sync_resv v2 + - bnxt_en: Uninitialized variable in bnxt_tc_parse_actions() + - clk: qcom: msm8916: fix mnd_width for codec_digcodec + - mwifiex: cfg80211: do not change virtual interface during scan processing + - ath10k: fix invalid STS_CAP_OFFSET_MASK + - tools/usbip: fixes build with musl libc toolchain + - spi: sun6i: disable/unprepare clocks on remove + - bnxt_en: Don't print "Link speed -1 no longer supported" messages. + - scsi: core: scsi_get_device_flags_keyed(): Always return device flags + - scsi: devinfo: apply to HP XP the same flags as Hitachi VSP + - scsi: dh: add new rdac devices + - clk: renesas: r8a77970: Add LVDS clock + - staging: fsl-dpaa2/eth: Fix access to FAS field + - media: vsp1: Prevent suspending and resuming DRM pipelines + - dm raid: fix raid set size revalidation + - media: cpia2: Fix a couple off by one bugs + - media: davinci: vpif_capture: add NULL check on devm_kzalloc return value + - virtio_net: Disable interrupts if napi_complete_done rescheduled napi + - net: sched: drop qdisc_reset from dev_graft_qdisc + - veth: set peer GSO values + - drm/amdkfd: Fix memory leaks in kfd topology + - powerpc/64: Don't trace irqs-off at interrupt return to soft-disabled + context + - arm64: dts: renesas: salvator-common: Add EthernetAVB PHY reset + - agp/intel: Flush all chipset writes after updating the GGTT + - mac80211_hwsim: enforce PS_MANUAL_POLL to be set after PS_ENABLED + - mac80211: remove BUG() when interface type is invalid + - crypto: caam/qi - use correct print specifier for size_t + - ASoC: nuc900: Fix a loop timeout test + - mmc: mmc_test: Ensure command queue is disabled for testing + - Fix misannotated out-of-line _copy_to_user() + - ipvlan: add L2 check for packets arriving via virtual devices + - rcutorture/configinit: Fix build directory error message + - locking/locktorture: Fix num reader/writer corner cases + - ima: relax requiring a file signature for new files with zero length + - IB/mlx5: revisit -Wmaybe-uninitialized warning + - dmaengine: qcom_hidma: check pending interrupts + - drm/i915/glk: Disable Guc and HuC on GLK + - Linux 4.15.11 + - Config: Enable CONFIG_DRM_ETNAVIV_THERMAL=y + * [FFE][Feature] KVM CLX avx512_vnni (LP: #1739665) + - KVM: x86: add support for UMIP + - KVM: Expose new cpu features to guest + * Ubuntu18.04[P9 DD2.2 Boston]:Unable to boot power8 compat mode + guests(ubuntu14.04.5) (kvm) (LP: #1756254) + - KVM: PPC: Book3S HV: Allow HPT and radix on the same core for POWER9 v2.2 + * Allow hugepage backing for "p8compat" mode kvm guests (LP: #1754206) + - KVM: PPC: Book3S HV: Fix VRMA initialization with 2MB or 1GB memory backing + * [Bug][KVM][Crystal Ridge] Terrible performance of vNVDIMM on QEMU with + device DAX backend (LP: #1745899) + - x86/mm: add a function to check if a pfn is UC/UC-/WC + - KVM: MMU: consider host cache mode in MMIO page check + * nfp: read ME frequency from vNIC ctrl memory (LP: #1752818) + - nfp: add TLV capabilities to the BAR + - nfp: read ME frequency from vNIC ctrl memory + - nfp: fix TLV offset calculation + * Miscellaneous Ubuntu changes + - [Packaging] skip cloud tools packaging when not building package + - [Packaging] final-checks -- remove check for empty retpoline files + + -- Marcelo Henrique Cerri Wed, 04 Apr 2018 18:08:55 -0300 + +linux-azure (4.15.0-1003.3) bionic; urgency=medium + + * linux-azure: 4.15.0-1003.3 -proposed tracker (LP: #1757167) + + * Enable secure boot on linux-azure (LP: #1754042) + - Revert "UBUNTU: [debian] azure: do not build uefi signed binary" + + * [Hyper-v] Set CONFIG_I2C_PIIX4 to "n" (LP: #1752999) + - [Config] azure: CONFIG_I2C_PIIX4=n + + * [Hyper-V] set config: CONFIG_EDAC_DECODE_MCE=y (LP: #1751123) + - [Config] azure: CONFIG_EDAC_DECODE_MCE=y + + * Miscellaneous Ubuntu changes + - [Config] updateconfigs after rebase to Ubuntu-4.15.0-13.14 + - [Config] fix up retpoline abi files + + [ Ubuntu: 4.15.0-13.14 ] + + * linux: 4.15.0-13.14 -proposed tracker (LP: #1756408) + * devpts: handle bind-mounts (LP: #1755857) + - SAUCE: devpts: hoist out check for DEVPTS_SUPER_MAGIC + - SAUCE: devpts: resolve devpts bind-mounts + - SAUCE: devpts: comment devpts_mntget() + - SAUCE: selftests: add devpts selftests + * [bionic][arm64] d-i: add hisi_sas_v3_hw to scsi-modules (LP: #1756103) + - d-i: add hisi_sas_v3_hw to scsi-modules + * [Bionic][ARM64] enable ROCE and HNS3 driver support for hip08 SoC + (LP: #1756097) + - RDMA/hns: Refactor eq code for hip06 + - RDMA/hns: Add eq support of hip08 + - RDMA/hns: Add detailed comments for mb() call + - RDMA/hns: Add rq inline data support for hip08 RoCE + - RDMA/hns: Update the usage of sr_max and rr_max field + - RDMA/hns: Set access flags of hip08 RoCE + - RDMA/hns: Filter for zero length of sge in hip08 kernel mode + - RDMA/hns: Fix QP state judgement before sending work requests + - RDMA/hns: Assign dest_qp when deregistering mr + - RDMA/hns: Fix endian problems around imm_data and rkey + - RDMA/hns: Assign the correct value for tx_cqn + - RDMA/hns: Create gsi qp in hip08 + - RDMA/hns: Add gsi qp support for modifying qp in hip08 + - RDMA/hns: Fill sq wqe context of ud type in hip08 + - RDMA/hns: Assign zero for pkey_index of wc in hip08 + - RDMA/hns: Update the verbs of polling for completion + - RDMA/hns: Set the guid for hip08 RoCE device + - net: hns3: Refactor of the reset interrupt handling logic + - net: hns3: Add reset service task for handling reset requests + - net: hns3: Refactors the requested reset & pending reset handling code + - net: hns3: Add HNS3 VF IMP(Integrated Management Proc) cmd interface + - net: hns3: Add mailbox support to VF driver + - net: hns3: Add HNS3 VF HCL(Hardware Compatibility Layer) Support + - net: hns3: Add HNS3 VF driver to kernel build framework + - net: hns3: Unified HNS3 {VF|PF} Ethernet Driver for hip08 SoC + - net: hns3: Add mailbox support to PF driver + - net: hns3: Change PF to add ring-vect binding & resetQ to mailbox + - net: hns3: Add mailbox interrupt handling to PF driver + - net: hns3: add support to query tqps number + - net: hns3: add support to modify tqps number + - net: hns3: change the returned tqp number by ethtool -x + - net: hns3: free the ring_data structrue when change tqps + - net: hns3: get rss_size_max from configuration but not hardcode + - net: hns3: add a mask initialization for mac_vlan table + - net: hns3: add vlan offload config command + - net: hns3: add ethtool related offload command + - net: hns3: add handling vlan tag offload in bd + - net: hns3: cleanup mac auto-negotiation state query + - net: hns3: fix for getting auto-negotiation state in hclge_get_autoneg + - net: hns3: add support for set_pauseparam + - net: hns3: add support to update flow control settings after autoneg + - net: hns3: add Asym Pause support to phy default features + - net: hns3: add support for querying advertised pause frame by ethtool ethx + - net: hns3: Increase the default depth of bucket for TM shaper + - net: hns3: change TM sched mode to TC-based mode when SRIOV enabled + - net: hns3: hns3_get_channels() can be static + - net: hns3: Add ethtool interface for vlan filter + - net: hns3: Disable VFs change rxvlan offload status + - net: hns3: Unify the strings display of packet statistics + - net: hns3: Fix spelling errors + - net: hns3: Remove repeat statistic of rx_errors + - net: hns3: Modify the update period of packet statistics + - net: hns3: Mask the packet statistics query when NIC is down + - net: hns3: Fix an error of total drop packet statistics + - net: hns3: Fix a loop index error of tqp statistics query + - net: hns3: Fix an error macro definition of HNS3_TQP_STAT + - net: hns3: Remove a useless member of struct hns3_stats + - net: hns3: Add packet statistics of netdev + - net: hns3: Fix a response data read error of tqp statistics query + - net: hns3: fix for updating fc_mode_last_time + - net: hns3: fix for setting MTU + - net: hns3: fix for changing MTU + - net: hns3: add MTU initialization for hardware + - net: hns3: fix for not setting pause parameters + - net: hns3: remove redundant semicolon + - net: hns3: Add more packet size statisctics + - Revert "net: hns3: Add packet statistics of netdev" + - net: hns3: report the function type the same line with hns3_nic_get_stats64 + - net: hns3: add ethtool_ops.get_channels support for VF + - net: hns3: remove TSO config command from VF driver + - net: hns3: add ethtool_ops.get_coalesce support to PF + - net: hns3: add ethtool_ops.set_coalesce support to PF + - net: hns3: refactor interrupt coalescing init function + - net: hns3: refactor GL update function + - net: hns3: remove unused GL setup function + - net: hns3: change the unit of GL value macro + - net: hns3: add int_gl_idx setup for TX and RX queues + - net: hns3: add feature check when feature changed + - net: hns3: check for NULL function pointer in hns3_nic_set_features + - net: hns: Fix for variable may be used uninitialized warnings + - net: hns3: add support for get_regs + - net: hns3: add manager table initialization for hardware + - net: hns3: add ethtool -p support for fiber port + - net: hns3: add net status led support for fiber port + - net: hns3: converting spaces into tabs to avoid checkpatch.pl warning + - net: hns3: add get/set_coalesce support to VF + - net: hns3: add int_gl_idx setup for VF + - [Config]: enable CONFIG_HNS3_HCLGEVF as module. + * [Bionic][ARM64] add RAS extension and SDEI features (LP: #1756096) + - KVM: arm64: Store vcpu on the stack during __guest_enter() + - KVM: arm/arm64: Convert kvm_host_cpu_state to a static per-cpu allocation + - KVM: arm64: Change hyp_panic()s dependency on tpidr_el2 + - arm64: alternatives: use tpidr_el2 on VHE hosts + - KVM: arm64: Stop save/restoring host tpidr_el1 on VHE + - Docs: dt: add devicetree binding for describing arm64 SDEI firmware + - firmware: arm_sdei: Add driver for Software Delegated Exceptions + - arm64: Add vmap_stack header file + - arm64: uaccess: Add PAN helper + - arm64: kernel: Add arch-specific SDEI entry code and CPU masking + - firmware: arm_sdei: Add support for CPU and system power states + - firmware: arm_sdei: add support for CPU private events + - arm64: acpi: Remove __init from acpi_psci_use_hvc() for use by SDEI + - firmware: arm_sdei: Discover SDEI support via ACPI + - arm64: sysreg: Move to use definitions for all the SCTLR bits + - arm64: cpufeature: Detect CPU RAS Extentions + - arm64: kernel: Survive corrected RAS errors notified by SError + - arm64: Unconditionally enable IESB on exception entry/return for firmware- + first + - arm64: kernel: Prepare for a DISR user + - KVM: arm/arm64: mask/unmask daif around VHE guests + - KVM: arm64: Set an impdef ESR for Virtual-SError using VSESR_EL2. + - KVM: arm64: Save/Restore guest DISR_EL1 + - KVM: arm64: Save ESR_EL2 on guest SError + - KVM: arm64: Handle RAS SErrors from EL1 on guest exit + - KVM: arm64: Handle RAS SErrors from EL2 on guest exit + - KVM: arm64: Emulate RAS error registers and set HCR_EL2's TERR & TEA + - [Config]: enable RAS_EXTN and ARM_SDE_INTERFACE + * [Bionic][ARM64] PCI and SAS driver patches for hip08 SoCs (LP: #1756094) + - scsi: hisi_sas: fix dma_unmap_sg() parameter + - scsi: ata: enhance the definition of SET MAX feature field value + - scsi: hisi_sas: relocate clearing ITCT and freeing device + - scsi: hisi_sas: optimise port id refresh function + - scsi: hisi_sas: some optimizations of host controller reset + - scsi: hisi_sas: modify hisi_sas_dev_gone() for reset + - scsi: hisi_sas: add an mechanism to do reset work synchronously + - scsi: hisi_sas: change ncq process for v3 hw + - scsi: hisi_sas: add RAS feature for v3 hw + - scsi: hisi_sas: add some print to enhance debugging + - scsi: hisi_sas: improve int_chnl_int_v2_hw() consistency with v3 hw + - scsi: hisi_sas: add v2 hw port AXI error handling support + - scsi: hisi_sas: use an general way to delay PHY work + - scsi: hisi_sas: do link reset for some CHL_INT2 ints + - scsi: hisi_sas: judge result of internal abort + - scsi: hisi_sas: add internal abort dev in some places + - scsi: hisi_sas: fix SAS_QUEUE_FULL problem while running IO + - scsi: hisi_sas: re-add the lldd_port_deformed() + - scsi: hisi_sas: add v3 hw suspend and resume + - scsi: hisi_sas: Change frame type for SET MAX commands + - scsi: hisi_sas: make local symbol host_attrs static + - scsi: hisi_sas: fix a bug in hisi_sas_dev_gone() + - SAUCE: scsi: hisi_sas: config for hip08 ES + - SAUCE: scsi: hisi_sas: export device table of v3 hw to userspace + - PM / core: Add LEAVE_SUSPENDED driver flag + - PCI / PM: Support for LEAVE_SUSPENDED driver flag + - PCI/AER: Skip recovery callbacks for correctable errors from ACPI APEI + - PCI/ASPM: Calculate LTR_L1.2_THRESHOLD from device characteristics + - PCI/ASPM: Enable Latency Tolerance Reporting when supported + - PCI/ASPM: Unexport internal ASPM interfaces + - PCI: Make PCI_SCAN_ALL_PCIE_DEVS work for Root as well as Downstream Ports + - PCI/AER: Return error if AER is not supported + - PCI/DPC: Enable DPC only if AER is available + * [CVE] Spectre: System Z {kernel} UBUNTU18.04 (LP: #1754580) + - s390: scrub registers on kernel entry and KVM exit + - s390: add optimized array_index_mask_nospec + - s390/alternative: use a copy of the facility bit mask + - s390: add options to change branch prediction behaviour for the kernel + - s390: run user space and KVM guests with modified branch prediction + - s390: introduce execute-trampolines for branches + - s390: Replace IS_ENABLED(EXPOLINE_*) with IS_ENABLED(CONFIG_EXPOLINE_*) + - s390: do not bypass BPENTER for interrupt system calls + - s390/entry.S: fix spurious zeroing of r0 + * s390/crypto: Fix kernel crash on aes_s390 module remove (LP: #1753424) + - SAUCE: s390/crypto: Fix kernel crash on aes_s390 module remove. + * [Feature]Update Ubuntu 18.04 lpfc FC driver with 32/64GB HBA support and bug + fixes (LP: #1752182) + - scsi: lpfc: FLOGI failures are reported when connected to a private loop. + - scsi: lpfc: Expand WQE capability of every NVME hardware queue + - scsi: lpfc: Handle XRI_ABORTED_CQE in soft IRQ + - scsi: lpfc: Fix NVME LS abort_xri + - scsi: lpfc: Raise maximum NVME sg list size for 256 elements + - scsi: lpfc: Driver fails to detect direct attach storage array + - scsi: lpfc: Fix display for debugfs queInfo + - scsi: lpfc: Adjust default value of lpfc_nvmet_mrq + - scsi: lpfc: Fix ndlp ref count for pt2pt mode issue RSCN + - scsi: lpfc: Linux LPFC driver does not process all RSCNs + - scsi: lpfc: correct port registrations with nvme_fc + - scsi: lpfc: Correct driver deregistrations with host nvme transport + - scsi: lpfc: Fix crash during driver unload with running nvme traffic + - scsi: lpfc: Fix driver handling of nvme resources during unload + - scsi: lpfc: small sg cnt cleanup + - scsi: lpfc: Fix random heartbeat timeouts during heavy IO + - scsi: lpfc: update driver version to 11.4.0.5 + - scsi: lpfc: Fix -EOVERFLOW behavior for NVMET and defer_rcv + - scsi: lpfc: Fix receive PRLI handling + - scsi: lpfc: Increase SCSI CQ and WQ sizes. + - scsi: lpfc: Fix SCSI LUN discovery when SCSI and NVME enabled + - scsi: lpfc: Fix issues connecting with nvme initiator + - scsi: lpfc: Fix infinite wait when driver unregisters a remote NVME port. + - scsi: lpfc: Beef up stat counters for debug + - scsi: lpfc: update driver version to 11.4.0.6 + - scsi: lpfc: correct sg_seg_cnt attribute min vs default + - scsi: scsi_transport_fc: fix typos on 64/128 GBit define names + - scsi: lpfc: don't dereference localport before it has been null checked + - scsi: lpfc: fix a couple of minor indentation issues + - treewide: Use DEVICE_ATTR_RW + - treewide: Use DEVICE_ATTR_RO + - treewide: Use DEVICE_ATTR_WO + - scsi: lpfc: Fix frequency of Release WQE CQEs + - scsi: lpfc: Increase CQ and WQ sizes for SCSI + - scsi: lpfc: move placement of target destroy on driver detach + - scsi: lpfc: correct debug counters for abort + - scsi: lpfc: Add WQ Full Logic for NVME Target + - scsi: lpfc: Fix PRLI handling when topology type changes + - scsi: lpfc: Fix IO failure during hba reset testing with nvme io. + - scsi: lpfc: Fix RQ empty firmware trap + - scsi: lpfc: Allow set of maximum outstanding SCSI cmd limit for a target + - scsi: lpfc: Fix soft lockup in lpfc worker thread during LIP testing + - scsi: lpfc: Fix issue_lip if link is disabled + - scsi: lpfc: Indicate CONF support in NVMe PRLI + - scsi: lpfc: Fix SCSI io host reset causing kernel crash + - scsi: lpfc: Validate adapter support for SRIU option + - scsi: lpfc: Fix header inclusion in lpfc_nvmet + - scsi: lpfc: Treat SCSI Write operation Underruns as an error + - scsi: lpfc: Fix nonrecovery of NVME controller after cable swap. + - scsi: lpfc: update driver version to 11.4.0.7 + - scsi: lpfc: Update 11.4.0.7 modified files for 2018 Copyright + - scsi: lpfc: Rework lpfc to allow different sli4 cq and eq handlers + - scsi: lpfc: Rework sli4 doorbell infrastructure + - scsi: lpfc: Add SLI-4 if_type=6 support to the code base + - scsi: lpfc: Add push-to-adapter support to sli4 + - scsi: lpfc: Add PCI Ids for if_type=6 hardware + - scsi: lpfc: Add 64G link speed support + - scsi: lpfc: Add if_type=6 support for cycling valid bits + - scsi: lpfc: Enable fw download on if_type=6 devices + - scsi: lpfc: Add embedded data pointers for enhanced performance + - scsi: lpfc: Fix nvme embedded io length on new hardware + - scsi: lpfc: Work around NVME cmd iu SGL type + - scsi: lpfc: update driver version to 12.0.0.0 + - scsi: lpfc: Change Copyright of 12.0.0.0 modified files to 2018 + - scsi: lpfc: use __raw_writeX on DPP copies + - scsi: lpfc: Add missing unlock in WQ full logic + * CVE-2018-8043 + - net: phy: mdio-bcm-unimac: fix potential NULL dereference in + unimac_mdio_probe() + * Bionic update to 4.15.10 stable release (LP: #1756100) + - Revert "UBUNTU: SAUCE: ALSA: hda/realtek - Add support headset mode for DELL + WYSE" + - RDMA/ucma: Limit possible option size + - RDMA/ucma: Check that user doesn't overflow QP state + - RDMA/mlx5: Fix integer overflow while resizing CQ + - bpf: cpumap: use GFP_KERNEL instead of GFP_ATOMIC in __cpu_map_entry_alloc() + - IB/uverbs: Improve lockdep_check + - mac80211_hwsim: don't use WQ_MEM_RECLAIM + - net/smc: fix NULL pointer dereference on sock_create_kern() error path + - regulator: stm32-vrefbuf: fix check on ready flag + - drm/i915: Check for fused or unused pipes + - drm/i915/audio: fix check for av_enc_map overflow + - drm/i915: Fix rsvd2 mask when out-fence is returned + - drm/i915: Clear the in-use marker on execbuf failure + - drm/i915: Disable DC states around GMBUS on GLK + - drm/i915: Update watermark state correctly in sanitize_watermarks + - drm/i915: Try EDID bitbanging on HDMI after failed read + - drm/i915/perf: fix perf stream opening lock + - scsi: core: Avoid that ATA error handling can trigger a kernel hang or oops + - scsi: qla2xxx: Fix NULL pointer crash due to active timer for ABTS + - drm/i915: Always call to intel_display_set_init_power() in resume_early. + - workqueue: Allow retrieval of current task's work struct + - drm: Allow determining if current task is output poll worker + - drm/nouveau: Fix deadlock on runtime suspend + - drm/radeon: Fix deadlock on runtime suspend + - drm/amdgpu: Fix deadlock on runtime suspend + - drm/nouveau: prefer XBGR2101010 for addfb ioctl + - drm/amd/powerplay/smu7: allow mclk switching with no displays + - drm/amd/powerplay/vega10: allow mclk switching with no displays + - Revert "drm/radeon/pm: autoswitch power state when in balanced mode" + - drm/amd/display: check for ipp before calling cursor operations + - drm/radeon: insist on 32-bit DMA for Cedar on PPC64/PPC64LE + - drm/amd/powerplay: fix power over limit on Fiji + - drm/amd/display: Default HDMI6G support to true. Log VBIOS table error. + - drm/amdgpu: used cached pcie gen info for SI (v2) + - drm/amdgpu: Notify sbios device ready before send request + - drm/radeon: fix KV harvesting + - drm/amdgpu: fix KV harvesting + - drm/amdgpu:Correct max uvd handles + - drm/amdgpu:Always save uvd vcpu_bo in VM Mode + - ovl: redirect_dir=nofollow should not follow redirect for opaque lower + - MIPS: BMIPS: Do not mask IPIs during suspend + - MIPS: ath25: Check for kzalloc allocation failure + - MIPS: OCTEON: irq: Check for null return on kzalloc allocation + - PCI: dwc: Fix enumeration end when reaching root subordinate + - Input: matrix_keypad - fix race when disabling interrupts + - Revert "Input: synaptics - Lenovo Thinkpad T460p devices should use RMI" + - bug: use %pB in BUG and stack protector failure + - lib/bug.c: exclude non-BUG/WARN exceptions from report_bug() + - mm/memblock.c: hardcode the end_pfn being -1 + - Documentation/sphinx: Fix Directive import error + - loop: Fix lost writes caused by missing flag + - virtio_ring: fix num_free handling in error case + - KVM: s390: fix memory overwrites when not using SCA entries + - arm64: mm: fix thinko in non-global page table attribute check + - IB/core: Fix missing RDMA cgroups release in case of failure to register + device + - Revert "nvme: create 'slaves' and 'holders' entries for hidden controllers" + - kbuild: Handle builtin dtb file names containing hyphens + - dm bufio: avoid false-positive Wmaybe-uninitialized warning + - IB/mlx5: Fix incorrect size of klms in the memory region + - bcache: fix crashes in duplicate cache device register + - bcache: don't attach backing with duplicate UUID + - x86/MCE: Save microcode revision in machine check records + - x86/MCE: Serialize sysfs changes + - perf tools: Fix trigger class trigger_on() + - x86/spectre_v2: Don't check microcode versions when running under + hypervisors + - ALSA: hda/realtek - Add support headset mode for DELL WYSE + - ALSA: hda/realtek - Add headset mode support for Dell laptop + - ALSA: hda/realtek: Limit mic boost on T480 + - ALSA: hda/realtek - Fix dock line-out volume on Dell Precision 7520 + - ALSA: hda/realtek - Make dock sound work on ThinkPad L570 + - ALSA: seq: More protection for concurrent write and ioctl races + - ALSA: hda: add dock and led support for HP EliteBook 820 G3 + - ALSA: hda: add dock and led support for HP ProBook 640 G2 + - scsi: qla2xxx: Fix NULL pointer crash due to probe failure + - scsi: qla2xxx: Fix recursion while sending terminate exchange + - dt-bindings: Document mti,mips-cpc binding + - MIPS: CPC: Map registers using DT in mips_cpc_default_phys_base() + - nospec: Kill array_index_nospec_mask_check() + - nospec: Include dependency + - x86/entry: Reduce the code footprint of the 'idtentry' macro + - x86/entry/64: Use 'xorl' for faster register clearing + - x86/mm: Remove stale comment about KMEMCHECK + - x86/asm: Improve how GEN_*_SUFFIXED_RMWcc() specify clobbers + - x86/IO-APIC: Avoid warning in 32-bit builds + - x86/LDT: Avoid warning in 32-bit builds with older gcc + - x86-64/realmode: Add instruction suffix + - Revert "x86/retpoline: Simplify vmexit_fill_RSB()" + - x86/speculation: Use IBRS if available before calling into firmware + - x86/retpoline: Support retpoline builds with Clang + - x86/speculation, objtool: Annotate indirect calls/jumps for objtool + - x86/speculation: Move firmware_restrict_branch_speculation_*() from C to CPP + - x86/paravirt, objtool: Annotate indirect calls + - x86/boot, objtool: Annotate indirect jump in secondary_startup_64() + - x86/mm/sme, objtool: Annotate indirect call in sme_encrypt_execute() + - objtool: Use existing global variables for options + - objtool: Add retpoline validation + - objtool: Add module specific retpoline rules + - objtool, retpolines: Integrate objtool with retpoline support more closely + - objtool: Fix another switch table detection issue + - objtool: Fix 32-bit build + - x86/kprobes: Fix kernel crash when probing .entry_trampoline code + - watchdog: hpwdt: SMBIOS check + - watchdog: hpwdt: Check source of NMI + - watchdog: hpwdt: fix unused variable warning + - watchdog: hpwdt: Remove legacy NMI sourcing. + - netfilter: add back stackpointer size checks + - netfilter: ipt_CLUSTERIP: fix a race condition of proc file creation + - netfilter: xt_hashlimit: fix lock imbalance + - netfilter: x_tables: fix missing timer initialization in xt_LED + - netfilter: nat: cope with negative port range + - netfilter: IDLETIMER: be syzkaller friendly + - netfilter: ebtables: CONFIG_COMPAT: don't trust userland offsets + - netfilter: bridge: ebt_among: add missing match size checks + - netfilter: ipv6: fix use-after-free Write in nf_nat_ipv6_manip_pkt + - netfilter: use skb_to_full_sk in ip6_route_me_harder + - tpm_tis: Move ilb_base_addr to tpm_tis_data + - tpm: Keep CLKRUN enabled throughout the duration of transmit_cmd() + - tpm: delete the TPM_TIS_CLK_ENABLE flag + - tpm: remove unused variables + - tpm: only attempt to disable the LPC CLKRUN if is already enabled + - x86/xen: Calculate __max_logical_packages on PV domains + - scsi: qla2xxx: Fix system crash for Notify ack timeout handling + - scsi: qla2xxx: Fix gpnid error processing + - scsi: qla2xxx: Move session delete to driver work queue + - scsi: qla2xxx: Skip IRQ affinity for Target QPairs + - scsi: qla2xxx: Fix re-login for Nport Handle in use + - scsi: qla2xxx: Retry switch command on time out + - scsi: qla2xxx: Serialize GPNID for multiple RSCN + - scsi: qla2xxx: Fix login state machine stuck at GPDB + - scsi: qla2xxx: Fix NPIV host cleanup in target mode + - scsi: qla2xxx: Relogin to target port on a cable swap + - scsi: qla2xxx: Fix Relogin being triggered too fast + - scsi: qla2xxx: Fix PRLI state check + - scsi: qla2xxx: Fix abort command deadlock due to spinlock + - scsi: qla2xxx: Replace fcport alloc with qla2x00_alloc_fcport + - scsi: qla2xxx: Fix scan state field for fcport + - scsi: qla2xxx: Clear loop id after delete + - scsi: qla2xxx: Defer processing of GS IOCB calls + - scsi: qla2xxx: Remove aborting ELS IOCB call issued as part of timeout. + - scsi: qla2xxx: Fix system crash in qlt_plogi_ack_unref + - scsi: qla2xxx: Fix memory leak in dual/target mode + - NFS: Fix an incorrect type in struct nfs_direct_req + - pNFS: Prevent the layout header refcount going to zero in pnfs_roc() + - NFS: Fix unstable write completion + - Linux 4.15.10 + * Bionic update to 4.15.10 stable release (LP: #1756100) // CVE-2018-1000004. + - ALSA: seq: Don't allow resizing pool in use + * nfp: prioritize stats updates (LP: #1752061) + - nfp: flower: prioritize stats updates + * Ubuntu 18.04 - Kernel crash on nvme subsystem-reset /dev/nvme0 (Bolt / NVMe) + (LP: #1753371) + - nvme-pci: Fix EEH failure on ppc + * sbsa watchdog crashes thunderx2 system (LP: #1755595) + - watchdog: sbsa: use 32-bit read for WCV + * KVM: s390: add vcpu stat counters for many instruction (LP: #1755132) + - KVM: s390: diagnoses are instructions as well + - KVM: s390: add vcpu stat counters for many instruction + * CIFS SMB2/SMB3 does not work for domain based DFS (LP: #1747572) + - CIFS: make IPC a regular tcon + - CIFS: use tcon_ipc instead of use_ipc parameter of SMB2_ioctl + - CIFS: dump IPC tcon in debug proc file + * i2c-thunderx: erroneous error message "unhandled state: 0" (LP: #1754076) + - i2c: octeon: Prevent error message on bus error + * Boston-LC:bos1u1: Stress test on Qlogic Fibre Channel on Ubuntu KVM guest + that caused KVM host crashed in qlt_free_session_done call (LP: #1750441) + - scsi: qla2xxx: Fix memory corruption during hba reset test + * Ubuntu 18.04 - Performance: Radix page fault handler bug in KVM + (LP: #1752236) + - KVM: PPC: Book3S HV: Fix handling of large pages in radix page fault handler + * Fix ARC hit rate (LP: #1755158) + - SAUCE: Fix ARC hit rate (LP: #1755158) + * Bionic update to 4.15.9 stable release (LP: #1755275) + - bpf: fix mlock precharge on arraymaps + - bpf: fix memory leak in lpm_trie map_free callback function + - bpf: fix rcu lockdep warning for lpm_trie map_free callback + - bpf, x64: implement retpoline for tail call + - bpf, arm64: fix out of bounds access in tail call + - bpf: add schedule points in percpu arrays management + - bpf: allow xadd only on aligned memory + - bpf, ppc64: fix out of bounds access in tail call + - scsi: mpt3sas: fix oops in error handlers after shutdown/unload + - scsi: mpt3sas: wait for and flush running commands on shutdown/unload + - KVM: x86: fix backward migration with async_PF + - Linux 4.15.9 + * Bionic update to 4.15.8 stable release (LP: #1755179) + - hrtimer: Ensure POSIX compliance (relative CLOCK_REALTIME hrtimers) + - ipmi_si: Fix error handling of platform device + - platform/x86: dell-laptop: Allocate buffer on heap rather than globally + - powerpc/pseries: Enable RAS hotplug events later + - Bluetooth: btusb: Use DMI matching for QCA reset_resume quirking + - ixgbe: fix crash in build_skb Rx code path + - tpm: st33zp24: fix potential buffer overruns caused by bit glitches on the + bus + - tpm: fix potential buffer overruns caused by bit glitches on the bus + - tpm_i2c_infineon: fix potential buffer overruns caused by bit glitches on + the bus + - tpm_i2c_nuvoton: fix potential buffer overruns caused by bit glitches on the + bus + - tpm_tis: fix potential buffer overruns caused by bit glitches on the bus + - ALSA: usb-audio: Add a quirck for B&W PX headphones + - ALSA: control: Fix memory corruption risk in snd_ctl_elem_read + - ALSA: x86: Fix missing spinlock and mutex initializations + - ALSA: hda: Add a power_save blacklist + - ALSA: hda - Fix pincfg at resume on Lenovo T470 dock + - mmc: sdhci-pci: Fix S0i3 for Intel BYT-based controllers + - mmc: dw_mmc-k3: Fix out-of-bounds access through DT alias + - mmc: dw_mmc: Avoid accessing registers in runtime suspended state + - mmc: dw_mmc: Factor out dw_mci_init_slot_caps + - mmc: dw_mmc: Fix out-of-bounds access for slot's caps + - timers: Forward timer base before migrating timers + - parisc: Use cr16 interval timers unconditionally on qemu + - parisc: Reduce irq overhead when run in qemu + - parisc: Fix ordering of cache and TLB flushes + - parisc: Hide virtual kernel memory layout + - btrfs: use proper endianness accessors for super_copy + - block: fix the count of PGPGOUT for WRITE_SAME + - block: kyber: fix domain token leak during requeue + - block: pass inclusive 'lend' parameter to truncate_inode_pages_range + - vfio: disable filesystem-dax page pinning + - cpufreq: s3c24xx: Fix broken s3c_cpufreq_init() + - dax: fix vma_is_fsdax() helper + - direct-io: Fix sleep in atomic due to sync AIO + - x86/xen: Zero MSR_IA32_SPEC_CTRL before suspend + - x86/platform/intel-mid: Handle Intel Edison reboot correctly + - x86/cpu_entry_area: Sync cpu_entry_area to initial_page_table + - bridge: check brport attr show in brport_show + - fib_semantics: Don't match route with mismatching tclassid + - hdlc_ppp: carrier detect ok, don't turn off negotiation + - ipv6 sit: work around bogus gcc-8 -Wrestrict warning + - net: amd-xgbe: fix comparison to bitshift when dealing with a mask + - net: ethernet: ti: cpsw: fix net watchdog timeout + - net: fix race on decreasing number of TX queues + - net: ipv4: don't allow setting net.ipv4.route.min_pmtu below 68 + - netlink: ensure to loop over all netns in genlmsg_multicast_allns() + - net: sched: report if filter is too large to dump + - ppp: prevent unregistered channels from connecting to PPP units + - sctp: verify size of a new chunk in _sctp_make_chunk() + - udplite: fix partial checksum initialization + - net/mlx5e: Fix TCP checksum in LRO buffers + - sctp: fix dst refcnt leak in sctp_v4_get_dst + - mlxsw: spectrum_switchdev: Check success of FDB add operation + - net/mlx5e: Specify numa node when allocating drop rq + - net: phy: fix phy_start to consider PHY_IGNORE_INTERRUPT + - tcp: Honor the eor bit in tcp_mtu_probe + - rxrpc: Fix send in rxrpc_send_data_packet() + - tcp_bbr: better deal with suboptimal GSO + - doc: Change the min default value of tcp_wmem/tcp_rmem. + - net/mlx5e: Fix loopback self test when GRO is off + - net_sched: gen_estimator: fix broken estimators based on percpu stats + - net/sched: cls_u32: fix cls_u32 on filter replace + - sctp: do not pr_err for the duplicated node in transport rhlist + - mlxsw: spectrum_router: Fix error path in mlxsw_sp_vr_create + - net: ipv4: Set addr_type in hash_keys for forwarded case + - sctp: fix dst refcnt leak in sctp_v6_get_dst() + - bridge: Fix VLAN reference count problem + - net/mlx5e: Verify inline header size do not exceed SKB linear size + - tls: Use correct sk->sk_prot for IPV6 + - amd-xgbe: Restore PCI interrupt enablement setting on resume + - cls_u32: fix use after free in u32_destroy_key() + - mlxsw: spectrum_router: Do not unconditionally clear route offload + indication + - netlink: put module reference if dump start fails + - tcp: purge write queue upon RST + - tuntap: correctly add the missing XDP flush + - tuntap: disable preemption during XDP processing + - virtio-net: disable NAPI only when enabled during XDP set + - cxgb4: fix trailing zero in CIM LA dump + - net/mlx5: Fix error handling when adding flow rules + - net: phy: Restore phy_resume() locking assumption + - tcp: tracepoint: only call trace_tcp_send_reset with full socket + - l2tp: don't use inet_shutdown on tunnel destroy + - l2tp: don't use inet_shutdown on ppp session destroy + - l2tp: fix races with tunnel socket close + - l2tp: fix race in pppol2tp_release with session object destroy + - l2tp: fix tunnel lookup use-after-free race + - s390/qeth: fix underestimated count of buffer elements + - s390/qeth: fix SETIP command handling + - s390/qeth: fix overestimated count of buffer elements + - s390/qeth: fix IP removal on offline cards + - s390/qeth: fix double-free on IP add/remove race + - Revert "s390/qeth: fix using of ref counter for rxip addresses" + - s390/qeth: fix IP address lookup for L3 devices + - s390/qeth: fix IPA command submission race + - tcp: revert F-RTO middle-box workaround + - tcp: revert F-RTO extension to detect more spurious timeouts + - blk-mq: don't call io sched's .requeue_request when requeueing rq to + ->dispatch + - media: m88ds3103: don't call a non-initalized function + - EDAC, sb_edac: Fix out of bound writes during DIMM configuration on KNL + - KVM: s390: take care of clock-comparator sign control + - KVM: s390: provide only a single function for setting the tod (fix SCK) + - KVM: s390: consider epoch index on hotplugged CPUs + - KVM: s390: consider epoch index on TOD clock syncs + - nospec: Allow index argument to have const-qualified type + - x86/mm: Fix {pmd,pud}_{set,clear}_flags() + - ARM: orion: fix orion_ge00_switch_board_info initialization + - ARM: dts: rockchip: Remove 1.8 GHz operation point from phycore som + - ARM: mvebu: Fix broken PL310_ERRATA_753970 selects + - ARM: kvm: fix building with gcc-8 + - KVM: X86: Fix SMRAM accessing even if VM is shutdown + - KVM: mmu: Fix overlap between public and private memslots + - KVM/x86: Remove indirect MSR op calls from SPEC_CTRL + - KVM: x86: move LAPIC initialization after VMCS creation + - KVM/VMX: Optimize vmx_vcpu_run() and svm_vcpu_run() by marking the RDMSR + path as unlikely() + - KVM: x86: fix vcpu initialization with userspace lapic + - KVM/x86: remove WARN_ON() for when vm_munmap() fails + - ACPI / bus: Parse tables as term_list for Dell XPS 9570 and Precision M5530 + - ARM: dts: LogicPD SOM-LV: Fix I2C1 pinmux + - ARM: dts: LogicPD Torpedo: Fix I2C1 pinmux + - powerpc/64s/radix: Boot-time NULL pointer protection using a guard-PID + - md: only allow remove_and_add_spares when no sync_thread running. + - platform/x86: dell-laptop: fix kbd_get_state's request value + - Linux 4.15.8 + * ZFS setgid broken on 0.7 (LP: #1753288) + - SAUCE: Fix ZFS setgid + * /proc/kallsyms prints "(null)" for null addresses in 4.15 (LP: #1754297) + - vsprintf: avoid misleading "(null)" for %px + * Miscellaneous Ubuntu changes + - d-i: Add netsec to nic-modules + - [Config] fix up retpoline abi files + - [Config] set NOBP and expoline options for s390 + + [ Ubuntu: 4.15.0-12.13 ] + + * linux: 4.15.0-12.13 -proposed tracker (LP: #1754059) + * CONFIG_EFI=y on armhf (LP: #1726362) + - [Config] CONFIG_EFI=y on armhf, reconcile secureboot EFI settings + * ppc64el: Support firmware disable of RFI flush (LP: #1751994) + - powerpc/pseries: Support firmware disable of RFI flush + - powerpc/powernv: Support firmware disable of RFI flush + * [Feature] CFL/CNL (PCH:CNP-H): New GPIO Commit added (GPIO Driver needed) + (LP: #1751714) + - gpio / ACPI: Drop unnecessary ACPI GPIO to Linux GPIO translation + - pinctrl: intel: Allow custom GPIO base for pad groups + - pinctrl: cannonlake: Align GPIO number space with Windows + * [Feature] Add xHCI debug device support in the driver (LP: #1730832) + - usb: xhci: Make some static functions global + - usb: xhci: Add DbC support in xHCI driver + - [Config] USB_XHCI_DBGCAP=y for commit mainline dfba2174dc42. + * [SRU] Lenovo E41 Mic mute hotkey is not responding (LP: #1753347) + - platform/x86: ideapad-laptop: Increase timeout to wait for EC answer + * headset mic can't be detected on two Dell machines (LP: #1748807) + - ALSA: hda - Fix a wrong FIXUP for alc289 on Dell machines + * hisi_sas: Add disk LED support (LP: #1752695) + - scsi: hisi_sas: directly attached disk LED feature for v2 hw + * [Feature] [Graphics]Whiskey Lake (Coffelake-U 4+2) new PCI Device ID adds + (LP: #1742561) + - drm/i915/cfl: Adding more Coffee Lake PCI IDs. + * [Bug] [USB Function][CFL-CNL PCH]Stall Error and USB Transaction Error in + trace, Disable of device-initiated U1/U2 failed and rebind failed: -517 + during suspend/resume with usb storage. (LP: #1730599) + - usb: Don't print a warning if interface driver rebind is deferred at resume + * retpoline: ignore %cs:0xNNN constant indirections (LP: #1752655) + - [Packaging] retpoline -- elide %cs:0xNNNN constants on i386 + - [Config] retpoline -- clean up i386 retpoline files + * hisilicon hibmc regression due to ea642c3216cb ("drm/ttm: add io_mem_pfn + callback") (LP: #1738334) + - drm/ttm: add ttm_bo_io_mem_pfn to check io_mem_pfn + * [Asus UX360UA] battery status in unity-panel is not changing when battery is + being charged (LP: #1661876) // AC adapter status not detected on Asus + ZenBook UX410UAK (LP: #1745032) + - ACPI / battery: Add quirk for Asus UX360UA and UX410UAK + * ASUS UX305LA - Battery state not detected correctly (LP: #1482390) + - ACPI / battery: Add quirk for Asus GL502VSK and UX305LA + * [18.04 FEAT] Automatically detect layer2 setting in the qeth device driver + (LP: #1747639) + - s390/diag: add diag26c support for VNIC info + - s390/qeth: support early setup for z/VM NICs + * Bionic update to v4.15.7 stable release (LP: #1752317) + - netfilter: drop outermost socket lock in getsockopt() + - arm64: mm: don't write garbage into TTBR1_EL1 register + - kconfig.h: Include compiler types to avoid missed struct attributes + - MIPS: boot: Define __ASSEMBLY__ for its.S build + - xtensa: fix high memory/reserved memory collision + - scsi: ibmvfc: fix misdefined reserved field in ibmvfc_fcp_rsp_info + - MIPS: Drop spurious __unused in struct compat_flock + - cfg80211: fix cfg80211_beacon_dup + - i2c: designware: must wait for enable + - i2c: bcm2835: Set up the rising/falling edge delays + - X.509: fix BUG_ON() when hash algorithm is unsupported + - X.509: fix NULL dereference when restricting key with unsupported_sig + - PKCS#7: fix certificate chain verification + - PKCS#7: fix certificate blacklisting + - extcon: int3496: process id-pin first so that we start with the right status + - genirq/matrix: Handle CPU offlining proper + - RDMA/uverbs: Protect from races between lookup and destroy of uobjects + - RDMA/uverbs: Protect from command mask overflow + - RDMA/uverbs: Fix bad unlock balance in ib_uverbs_close_xrcd + - RDMA/uverbs: Fix circular locking dependency + - RDMA/uverbs: Sanitize user entered port numbers prior to access it + - iio: adc: stm32: fix stm32h7_adc_enable error handling + - iio: srf08: fix link error "devm_iio_triggered_buffer_setup" undefined + - iio: buffer: check if a buffer has been set up when poll is called + - iio: adis_lib: Initialize trigger before requesting interrupt + - Kbuild: always define endianess in kconfig.h + - x86/apic/vector: Handle vector release on CPU unplug correctly + - x86/oprofile: Fix bogus GCC-8 warning in nmi_setup() + - mm, swap, frontswap: fix THP swap if frontswap enabled + - mm: don't defer struct page initialization for Xen pv guests + - uapi/if_ether.h: move __UAPI_DEF_ETHHDR libc define + - irqchip/gic-v3: Use wmb() instead of smb_wmb() in gic_raise_softirq() + - irqchip/mips-gic: Avoid spuriously handling masked interrupts + - PCI/cxgb4: Extend T3 PCI quirk to T4+ devices + - net: thunderbolt: Tear down connection properly on suspend + - net: thunderbolt: Run disconnect flow asynchronously when logout is received + - ohci-hcd: Fix race condition caused by ohci_urb_enqueue() and + io_watchdog_func() + - usb: ohci: Proper handling of ed_rm_list to handle race condition between + usb_kill_urb() and finish_unlinks() + - arm64: Remove unimplemented syscall log message + - arm64: Disable unhandled signal log messages by default + - arm64: cpufeature: Fix CTR_EL0 field definitions + - Add delay-init quirk for Corsair K70 RGB keyboards + - usb: host: ehci: use correct device pointer for dma ops + - usb: dwc3: gadget: Set maxpacket size for ep0 IN + - usb: dwc3: ep0: Reset TRB counter for ep0 IN + - usb: phy: mxs: Fix NULL pointer dereference on i.MX23/28 + - usb: ldusb: add PIDs for new CASSY devices supported by this driver + - Revert "usb: musb: host: don't start next rx urb if current one failed" + - usb: gadget: f_fs: Process all descriptors during bind + - usb: gadget: f_fs: Use config_ep_by_speed() + - usb: renesas_usbhs: missed the "running" flag in usb_dmac with rx path + - drm/cirrus: Load lut in crtc_commit + - drm/atomic: Fix memleak on ERESTARTSYS during non-blocking commits + - drm: Handle unexpected holes in color-eviction + - drm/amdgpu: disable MMHUB power gating on raven + - drm/amdgpu: fix VA hole handling on Vega10 v3 + - drm/amdgpu: Add dpm quirk for Jet PRO (v2) + - drm/amdgpu: only check mmBIF_IOV_FUNC_IDENTIFIER on tonga/fiji + - drm/amdgpu: Avoid leaking PM domain on driver unbind (v2) + - drm/amdgpu: add new device to use atpx quirk + - arm64: __show_regs: Only resolve kernel symbols when running at EL1 + - drm/i915/breadcrumbs: Ignore unsubmitted signalers + - microblaze: fix endian handling + - Linux 4.15.7 + * [regression] Colour banding and artefacts appear system-wide on an Asus + Zenbook UX303LA with Intel HD 4400 graphics (LP: #1749420) // Bionic update + to v4.15.7 stable release (LP: #1752317) + - drm/edid: Add 6 bpc quirk for CPT panel in Asus UX303LA + * errors with sas hotplug (LP: #1752146) + - scsi: libsas: fix memory leak in sas_smp_get_phy_events() + - scsi: libsas: fix error when getting phy events + - scsi: libsas: initialize sas_phy status according to response of DISCOVER + - scsi: libsas: Use dynamic alloced work to avoid sas event lost + - scsi: libsas: shut down the PHY if events reached the threshold + - scsi: libsas: make the event threshold configurable + - scsi: libsas: Use new workqueue to run sas event and disco event + - scsi: libsas: use flush_workqueue to process disco events synchronously + - scsi: libsas: direct call probe and destruct + - scsi: libsas: notify event PORTE_BROADCAST_RCVD in sas_enable_revalidation() + * rtnetlink: enable namespace identifying properties in rtnetlink requests + (LP: #1748232) + - rtnetlink: enable IFLA_IF_NETNSID in do_setlink() + - rtnetlink: enable IFLA_IF_NETNSID for RTM_SETLINK + - rtnetlink: enable IFLA_IF_NETNSID for RTM_DELLINK + - rtnetlink: enable IFLA_IF_NETNSID for RTM_NEWLINK + - rtnetlink: remove check for IFLA_IF_NETNSID + - rtnetlink: require unique netns identifier + * Bionic update to v4.15.6 stable release (LP: #1752119) + - tun: fix tun_napi_alloc_frags() frag allocator + - ptr_ring: fail early if queue occupies more than KMALLOC_MAX_SIZE + - ptr_ring: try vmalloc() when kmalloc() fails + - selinux: ensure the context is NUL terminated in + security_context_to_sid_core() + - selinux: skip bounded transition processing if the policy isn't loaded + - media: pvrusb2: properly check endpoint types + - crypto: x86/twofish-3way - Fix %rbp usage + - staging: android: ion: Add __GFP_NOWARN for system contig heap + - staging: android: ion: Switch from WARN to pr_warn + - blk_rq_map_user_iov: fix error override + - KVM: x86: fix escape of guest dr6 to the host + - kcov: detect double association with a single task + - netfilter: x_tables: fix int overflow in xt_alloc_table_info() + - netfilter: x_tables: avoid out-of-bounds reads in + xt_request_find_{match|target} + - netfilter: ipt_CLUSTERIP: fix out-of-bounds accesses in clusterip_tg_check() + - netfilter: on sockopt() acquire sock lock only in the required scope + - netfilter: xt_cgroup: initialize info->priv in cgroup_mt_check_v1() + - netfilter: xt_RATEEST: acquire xt_rateest_mutex for hash insert + - rds: tcp: correctly sequence cleanup on netns deletion. + - rds: tcp: atomically purge entries from rds_tcp_conn_list during netns + delete + - net: avoid skb_warn_bad_offload on IS_ERR + - net_sched: gen_estimator: fix lockdep splat + - soc: qcom: rmtfs_mem: add missing MODULE_DESCRIPTION/AUTHOR/LICENSE + - ASoC: ux500: add MODULE_LICENSE tag + - video: fbdev/mmp: add MODULE_LICENSE + - ARM: 8743/1: bL_switcher: add MODULE_LICENSE tag + - arm64: dts: add #cooling-cells to CPU nodes + - dn_getsockoptdecnet: move nf_{get/set}sockopt outside sock lock + - ANDROID: binder: remove WARN() for redundant txn error + - ANDROID: binder: synchronize_rcu() when using POLLFREE. + - staging: android: ashmem: Fix a race condition in pin ioctls + - binder: check for binder_thread allocation failure in binder_poll() + - binder: replace "%p" with "%pK" + - staging: fsl-mc: fix build testing on x86 + - staging: iio: adc: ad7192: fix external frequency setting + - staging: iio: ad5933: switch buffer mode to software + - xhci: Fix NULL pointer in xhci debugfs + - xhci: Fix xhci debugfs devices node disappearance after hibernation + - xhci: xhci debugfs device nodes weren't removed after device plugged out + - xhci: fix xhci debugfs errors in xhci_stop + - usbip: keep usbip_device sockfd state in sync with tcp_socket + - crypto: s5p-sss - Fix kernel Oops in AES-ECB mode + - mei: me: add cannon point device ids + - mei: me: add cannon point device ids for 4th device + - vmalloc: fix __GFP_HIGHMEM usage for vmalloc_32 on 32b systems + - Linux 4.15.6 + * Unable to insert test_bpf module on Bionic s390x (LP: #1751234) + - bpf: fix selftests/bpf test_kmod.sh failure when CONFIG_BPF_JIT_ALWAYS_ON=y + * [Ubuntu 18.04 FEAT] OpenCAPI enabling (LP: #1746988) + - powerpc/powernv: Introduce new PHB type for opencapi links + - powerpc/powernv: Set correct configuration space size for opencapi devices + - powerpc/powernv: Add opal calls for opencapi + - powerpc/powernv: Add platform-specific services for opencapi + - powerpc/powernv: Capture actag information for the device + - ocxl: Driver code for 'generic' opencapi devices + - ocxl: Add AFU interrupt support + - ocxl: Add a kernel API for other opencapi drivers + - ocxl: Add trace points + - ocxl: Add Makefile and Kconfig + - [Config] CONFIG_OCXL=m for ppc64el + - cxl: Remove support for "Processing accelerators" class + - ocxl: Documentation + - ocxl: add MAINTAINERS entry + - cxl: Add support for ASB_Notify on POWER9 + * Request to update 18.04 kernel aacraid to upstream 4.16 version + (LP: #1746801) + - scsi: aacraid: remove unused variable managed_request_id + - scsi: aacraid: Do not attempt abort when Fw panicked + - scsi: aacraid: Do not remove offlined devices + - scsi: aacraid: Fix ioctl reset hang + - scsi: aacraid: Allow reset_host sysfs var to recover Panicked Fw + - scsi: aacraid: Refactor reset_host store function + - scsi: aacraid: Move code to wait for IO completion to shutdown func + - scsi: aacraid: Create bmic submission function from bmic identify + - scsi: aacraid: Change phy luns function to use common bmic function + - scsi: aacraid: Refactor and rename to make mirror existing changes + - scsi: aacraid: Add target setup helper function + - scsi: aacraid: Untangle targets setup from report phy luns + - scsi: aacraid: Move function around to match existing code + - scsi: aacraid: Create helper functions to get lun info + - scsi: aacraid: Save bmic phy information for each phy + - scsi: aacraid: Add helper function to set queue depth + - scsi: aacraid: Merge func to get container information + - scsi: aacraid: Process hba and container hot plug events in single function + - scsi: aacraid: Added macros to help loop through known buses and targets + - scsi: aacraid: Refactor resolve luns code and scsi functions + - scsi: aacraid: Merge adapter setup with resolve luns + - scsi: aacraid: Block concurrent hotplug event handling + - scsi: aacraid: Use hotplug handling function in place of scsi_scan_host + - scsi: aacraid: Reschedule host scan in case of failure + - scsi: aacraid: Fix hang while scanning in eh recovery + - scsi: aacraid: Skip schedule rescan in case of kdump + - scsi: aacraid: Remove unused rescan variable + - scsi: aacraid: Remove AAC_HIDE_DISK check in queue command + - scsi: aacraid: Update driver version to 50877 + - scsi: aacraid: Fix driver oops with dead battery + - scsi: aacraid: remove redundant setting of variable c + - scsi: aacraid: Get correct lun count + - scsi: aacraid: Delay for rescan worker needs to be 10 seconds + * [18.04] kpatch - Add livepatch hook support for ppc64le (LP: #1741992) + - powerpc/modules: Add REL24 relocation support of livepatch symbols + - powerpc/modules: Don't try to restore r2 after a sibling call + - powerpc/modules: Improve restore_r2() error message + * Ubuntu 18.04 - Include latest ibmvnic fixes in Ubuntu kernel (LP: #1748517) + - ibmvnic: Rename IBMVNIC_MAX_TX_QUEUES to IBMVNIC_MAX_QUEUES + - ibmvnic: Increase maximum number of RX/TX queues + - ibmvnic: Include header descriptor support for ARP packets + - ibmvnic: Don't handle RX interrupts when not up. + - ibmvnic: Wait for device response when changing MAC + - ibmvnic: fix firmware version when no firmware level has been provided by + the VIOS server + - ibmvnic: fix empty firmware version and errors cleanup + - ibmvnic: Fix rx queue cleanup for non-fatal resets + - ibmvnic: Ensure that buffers are NULL after free + - ibmvnic: queue reset when CRQ gets closed during reset + - ibmvnic: Reset long term map ID counter + - ibmvnic: Remove skb->protocol checks in ibmvnic_xmit + - ibmvnic: Wait until reset is complete to set carrier on + - ibmvnic: Fix login buffer memory leaks + - ibmvnic: Fix NAPI structures memory leak + - ibmvnic: Free RX socket buffer in case of adapter error + - ibmvnic: Clean RX pool buffers during device close + - ibmvnic: Check for NULL skb's in NAPI poll routine + - ibmvnic: Fix early release of login buffer + * Power9 DD 2.2 needs HMI fixup backport of upstream + patch(d075745d893c78730e4a3b7a60fca23c2f764081) into kernel (LP: #1751834) + - KVM: PPC: Book3S HV: Improve handling of debug-trigger HMIs on POWER9 + * Driver not found in Ubuntu kernel does not detect interface (LP: #1745927) + - d-i: add cxgb4 to nic-modules + * BCM5719/tg3 loses connectivity due to missing heartbeats between fw and + driver (LP: #1751337) + - tg3: APE heartbeat changes + * Miscellaneous Ubuntu changes + - ubuntu: vbox -- update to 5.2.6-dfsg-5 + - Revert "UBUNTU: SAUCE: Import aufs driver" + - SAUCE: Import aufs driver + - Revert "UBUNTU: SAUCE: (no-up) Convert bnx2x firmware files to ihex format" + - [Packaging] retpoline-extract: flag *0xNNN(%reg) branches + - [Config] fix up retpoline abi files + - ubuntu: vbox -- update to 5.2.8-dfsg-2 + + [ Ubuntu: 4.15.0-11.12 ] + + * linux: 4.15.0-11.12 -proposed tracker (LP: #1751285) + * Support low-pin-count devices on Hisilicon SoCs (LP: #1677319) + - [Config] CONFIG_INDIRECT_PIO=y + - SAUCE: LIB: Introduce a generic PIO mapping method + - SAUCE: PCI: Remove unused __weak attribute in pci_register_io_range() + - SAUCE: PCI: Add fwnode handler as input param of pci_register_io_range() + - SAUCE: PCI: Apply the new generic I/O management on PCI IO hosts + - SAUCE: OF: Add missing I/O range exception for indirect-IO devices + - [Config] CONFIG_HISILICON_LPC=y + - SAUCE: HISI LPC: Support the LPC host on Hip06/Hip07 with DT bindings + - SAUCE: ACPI / scan: do not enumerate Indirect IO host children + - SAUCE: HISI LPC: Add ACPI support + - SAUCE: MAINTAINERS: Add maintainer for HiSilicon LPC driver + * Bionic update to v4.15.5 stable release (LP: #1751131) + - scsi: smartpqi: allow static build ("built-in") + - IB/umad: Fix use of unprotected device pointer + - IB/qib: Fix comparison error with qperf compare/swap test + - IB/mlx4: Fix incorrectly releasing steerable UD QPs when have only ETH ports + - IB/core: Fix two kernel warnings triggered by rxe registration + - IB/core: Fix ib_wc structure size to remain in 64 bytes boundary + - IB/core: Avoid a potential OOPs for an unused optional parameter + - selftests: seccomp: fix compile error seccomp_bpf + - kselftest: fix OOM in memory compaction test + - RDMA/rxe: Fix a race condition related to the QP error state + - RDMA/rxe: Fix a race condition in rxe_requester() + - RDMA/rxe: Fix rxe_qp_cleanup() + - cpufreq: powernv: Dont assume distinct pstate values for nominal and pmin + - PM / devfreq: Propagate error from devfreq_add_device() + - mwifiex: resolve reset vs. remove()/shutdown() deadlocks + - ocfs2: try a blocking lock before return AOP_TRUNCATED_PAGE + - trace_uprobe: Display correct offset in uprobe_events + - powerpc/radix: Remove trace_tlbie call from radix__flush_tlb_all + - powerpc/kernel: Block interrupts when updating TIDR + - powerpc/vas: Don't set uses_vas for kernel windows + - powerpc/numa: Invalidate numa_cpu_lookup_table on cpu remove + - powerpc/mm: Flush radix process translations when setting MMU type + - powerpc/xive: Use hw CPU ids when configuring the CPU queues + - dma-buf: fix reservation_object_wait_timeout_rcu once more v2 + - s390: fix handling of -1 in set{,fs}[gu]id16 syscalls + - arm64: dts: msm8916: Correct ipc references for smsm + - ARM: lpc3250: fix uda1380 gpio numbers + - ARM: dts: STi: Add gpio polarity for "hdmi,hpd-gpio" property + - ARM: dts: nomadik: add interrupt-parent for clcd + - arm: dts: mt7623: fix card detection issue on bananapi-r2 + - arm: spear600: Add missing interrupt-parent of rtc + - arm: spear13xx: Fix dmas cells + - arm: spear13xx: Fix spics gpio controller's warning + - x86/gpu: add CFL to early quirks + - x86/kexec: Make kexec (mostly) work in 5-level paging mode + - x86/xen: init %gs very early to avoid page faults with stack protector + - x86: PM: Make APM idle driver initialize polling state + - mm, memory_hotplug: fix memmap initialization + - x86/entry/64: Clear extra registers beyond syscall arguments, to reduce + speculation attack surface + - x86/entry/64/compat: Clear registers for compat syscalls, to reduce + speculation attack surface + - compiler-gcc.h: Introduce __optimize function attribute + - compiler-gcc.h: __nostackprotector needs gcc-4.4 and up + - crypto: sun4i_ss_prng - fix return value of sun4i_ss_prng_generate + - crypto: sun4i_ss_prng - convert lock to _bh in sun4i_ss_prng_generate + - powerpc/mm/radix: Split linear mapping on hot-unplug + - x86/mm/pti: Fix PTI comment in entry_SYSCALL_64() + - x86/speculation: Update Speculation Control microcode blacklist + - x86/speculation: Correct Speculation Control microcode blacklist again + - Revert "x86/speculation: Simplify indirect_branch_prediction_barrier()" + - KVM/x86: Reduce retpoline performance impact in slot_handle_level_range(), + by always inlining iterator helper methods + - X86/nVMX: Properly set spec_ctrl and pred_cmd before merging MSRs + - KVM/nVMX: Set the CPU_BASED_USE_MSR_BITMAPS if we have a valid L02 MSR + bitmap + - x86/speculation: Clean up various Spectre related details + - PM / runtime: Update links_count also if !CONFIG_SRCU + - PM: cpuidle: Fix cpuidle_poll_state_init() prototype + - platform/x86: wmi: fix off-by-one write in wmi_dev_probe() + - x86/entry/64: Clear registers for exceptions/interrupts, to reduce + speculation attack surface + - x86/entry/64: Merge SAVE_C_REGS and SAVE_EXTRA_REGS, remove unused + extensions + - x86/entry/64: Merge the POP_C_REGS and POP_EXTRA_REGS macros into a single + POP_REGS macro + - x86/entry/64: Interleave XOR register clearing with PUSH instructions + - x86/entry/64: Introduce the PUSH_AND_CLEAN_REGS macro + - x86/entry/64: Use PUSH_AND_CLEAN_REGS in more cases + - x86/entry/64: Get rid of the ALLOC_PT_GPREGS_ON_STACK and + SAVE_AND_CLEAR_REGS macros + - x86/entry/64: Indent PUSH_AND_CLEAR_REGS and POP_REGS properly + - x86/entry/64: Fix paranoid_entry() frame pointer warning + - x86/entry/64: Remove the unused 'icebp' macro + - selftests/x86: Fix vDSO selftest segfault for vsyscall=none + - selftests/x86: Clean up and document sscanf() usage + - selftests/x86/pkeys: Remove unused functions + - selftests/x86: Fix build bug caused by the 5lvl test which has been moved to + the VM directory + - selftests/x86: Do not rely on "int $0x80" in test_mremap_vdso.c + - gfs2: Fixes to "Implement iomap for block_map" + - selftests/x86: Do not rely on "int $0x80" in single_step_syscall.c + - selftests/x86: Disable tests requiring 32-bit support on pure 64-bit systems + - objtool: Fix segfault in ignore_unreachable_insn() + - x86/debug, objtool: Annotate WARN()-related UD2 as reachable + - x86/debug: Use UD2 for WARN() + - x86/speculation: Fix up array_index_nospec_mask() asm constraint + - nospec: Move array_index_nospec() parameter checking into separate macro + - x86/speculation: Add dependency + - x86/mm: Rename flush_tlb_single() and flush_tlb_one() to + __flush_tlb_one_[user|kernel]() + - selftests/x86/mpx: Fix incorrect bounds with old _sigfault + - x86/cpu: Rename cpu_data.x86_mask to cpu_data.x86_stepping + - x86/spectre: Fix an error message + - x86/cpu: Change type of x86_cache_size variable to unsigned int + - x86/entry/64: Fix CR3 restore in paranoid_exit() + - drm/ttm: Don't add swapped BOs to swap-LRU list + - drm/ttm: Fix 'buf' pointer update in ttm_bo_vm_access_kmap() (v2) + - drm/qxl: unref cursor bo when finished with it + - drm/qxl: reapply cursor after resetting primary + - drm/amd/powerplay: Fix smu_table_entry.handle type + - drm/ast: Load lut in crtc_commit + - drm: Check for lessee in DROP_MASTER ioctl + - arm64: Add missing Falkor part number for branch predictor hardening + - drm/radeon: Add dpm quirk for Jet PRO (v2) + - drm/radeon: adjust tested variable + - x86/smpboot: Fix uncore_pci_remove() indexing bug when hot-removing a + physical CPU + - rtc-opal: Fix handling of firmware error codes, prevent busy loops + - mbcache: initialize entry->e_referenced in mb_cache_entry_create() + - mmc: sdhci: Implement an SDHCI-specific bounce buffer + - mmc: bcm2835: Don't overwrite max frequency unconditionally + - Revert "mmc: meson-gx: include tx phase in the tuning process" + - mlx5: fix mlx5_get_vector_affinity to start from completion vector 0 + - Revert "apple-gmux: lock iGP IO to protect from vgaarb changes" + - jbd2: fix sphinx kernel-doc build warnings + - ext4: fix a race in the ext4 shutdown path + - ext4: save error to disk in __ext4_grp_locked_error() + - ext4: correct documentation for grpid mount option + - mm: hide a #warning for COMPILE_TEST + - mm: Fix memory size alignment in devm_memremap_pages_release() + - MIPS: Fix typo BIG_ENDIAN to CPU_BIG_ENDIAN + - MIPS: CPS: Fix MIPS_ISA_LEVEL_RAW fallout + - MIPS: Fix incorrect mem=X@Y handling + - PCI: Disable MSI for HiSilicon Hip06/Hip07 only in Root Port mode + - PCI: iproc: Fix NULL pointer dereference for BCMA + - PCI: pciehp: Assume NoCompl+ for Thunderbolt ports + - PCI: keystone: Fix interrupt-controller-node lookup + - video: fbdev: atmel_lcdfb: fix display-timings lookup + - console/dummy: leave .con_font_get set to NULL + - rbd: whitelist RBD_FEATURE_OPERATIONS feature bit + - xen: Fix {set,clear}_foreign_p2m_mapping on autotranslating guests + - xenbus: track caller request id + - seq_file: fix incomplete reset on read from zero offset + - tracing: Fix parsing of globs with a wildcard at the beginning + - mpls, nospec: Sanitize array index in mpls_label_ok() + - rtlwifi: rtl8821ae: Fix connection lost problem correctly + - arm64: proc: Set PTE_NG for table entries to avoid traversing them twice + - xprtrdma: Fix calculation of ri_max_send_sges + - xprtrdma: Fix BUG after a device removal + - blk-wbt: account flush requests correctly + - target/iscsi: avoid NULL dereference in CHAP auth error path + - iscsi-target: make sure to wake up sleeping login worker + - dm: correctly handle chained bios in dec_pending() + - Btrfs: fix deadlock in run_delalloc_nocow + - Btrfs: fix crash due to not cleaning up tree log block's dirty bits + - Btrfs: fix extent state leak from tree log + - Btrfs: fix btrfs_evict_inode to handle abnormal inodes correctly + - Btrfs: fix use-after-free on root->orphan_block_rsv + - Btrfs: fix unexpected -EEXIST when creating new inode + - 9p/trans_virtio: discard zero-length reply + - mtd: nand: vf610: set correct ooblayout + - ALSA: usb-audio: Fix UAC2 get_ctl request with a RANGE attribute + - ALSA: hda/realtek - Add headset mode support for Dell laptop + - ALSA: hda/realtek - Enable Thinkpad Dock device for ALC298 platform + - ALSA: hda/realtek: PCI quirk for Fujitsu U7x7 + - ALSA: usb-audio: add implicit fb quirk for Behringer UFX1204 + - ALSA: usb: add more device quirks for USB DSD devices + - ALSA: seq: Fix racy pool initializations + - mvpp2: fix multicast address filter + - usb: Move USB_UHCI_BIG_ENDIAN_* out of USB_SUPPORT + - x86/mm, mm/hwpoison: Don't unconditionally unmap kernel 1:1 pages + - ARM: dts: exynos: fix RTC interrupt for exynos5410 + - ARM: pxa/tosa-bt: add MODULE_LICENSE tag + - arm64: dts: msm8916: Add missing #phy-cells + - ARM: dts: s5pv210: add interrupt-parent for ohci + - arm: dts: mt7623: Update ethsys binding + - arm: dts: mt2701: Add reset-cells + - ARM: dts: Delete bogus reference to the charlcd + - media: r820t: fix r820t_write_reg for KASAN + - mmc: sdhci-of-esdhc: fix eMMC couldn't work after kexec + - mmc: sdhci-of-esdhc: fix the mmc error after sleep on ls1046ardb + - Linux 4.15.5 + * retpoline abi files are empty on i386 (LP: #1751021) + - [Packaging] retpoline-extract -- instantiate retpoline files for i386 + - [Packaging] final-checks -- sanity checking ABI contents + - [Packaging] final-checks -- check for empty retpoline files + - [Config] Disable i386 retpoline check for next upload + * Bionic update to v4.15.4 stable release (LP: #1751064) + - watchdog: indydog: Add dependency on SGI_HAS_INDYDOG + - cifs: Fix missing put_xid in cifs_file_strict_mmap + - cifs: Fix autonegotiate security settings mismatch + - CIFS: zero sensitive data when freeing + - cpufreq: mediatek: add mediatek related projects into blacklist + - dmaengine: dmatest: fix container_of member in dmatest_callback + - ssb: Do not disable PCI host on non-Mips + - watchdog: gpio_wdt: set WDOG_HW_RUNNING in gpio_wdt_stop + - Revert "drm/i915: mark all device info struct with __initconst" + - sched/rt: Use container_of() to get root domain in rto_push_irq_work_func() + - sched/rt: Up the root domain ref count when passing it around via IPIs + - media: dvb-usb-v2: lmedm04: Improve logic checking of warm start + - media: dvb-usb-v2: lmedm04: move ts2020 attach to dm04_lme2510_tuner + - media: hdpvr: Fix an error handling path in hdpvr_probe() + - arm64: mm: Use non-global mappings for kernel space + - arm64: mm: Temporarily disable ARM64_SW_TTBR0_PAN + - arm64: mm: Move ASID from TTBR0 to TTBR1 + - arm64: mm: Remove pre_ttbr0_update_workaround for Falkor erratum #E1003 + - arm64: mm: Rename post_ttbr0_update_workaround + - arm64: mm: Fix and re-enable ARM64_SW_TTBR0_PAN + - arm64: mm: Allocate ASIDs in pairs + - arm64: mm: Add arm64_kernel_unmapped_at_el0 helper + - arm64: mm: Invalidate both kernel and user ASIDs when performing TLBI + - arm64: entry: Add exception trampoline page for exceptions from EL0 + - arm64: mm: Map entry trampoline into trampoline and kernel page tables + - arm64: entry: Explicitly pass exception level to kernel_ventry macro + - arm64: entry: Hook up entry trampoline to exception vectors + - arm64: erratum: Work around Falkor erratum #E1003 in trampoline code + - arm64: cpu_errata: Add Kryo to Falkor 1003 errata + - arm64: tls: Avoid unconditional zeroing of tpidrro_el0 for native tasks + - arm64: entry: Add fake CPU feature for unmapping the kernel at EL0 + - arm64: kaslr: Put kernel vectors address in separate data page + - arm64: use RET instruction for exiting the trampoline + - arm64: Kconfig: Add CONFIG_UNMAP_KERNEL_AT_EL0 + - arm64: Kconfig: Reword UNMAP_KERNEL_AT_EL0 kconfig entry + - arm64: Take into account ID_AA64PFR0_EL1.CSV3 + - arm64: capabilities: Handle duplicate entries for a capability + - arm64: mm: Introduce TTBR_ASID_MASK for getting at the ASID in the TTBR + - arm64: kpti: Fix the interaction between ASID switching and software PAN + - arm64: cputype: Add MIDR values for Cavium ThunderX2 CPUs + - arm64: kpti: Make use of nG dependent on arm64_kernel_unmapped_at_el0() + - arm64: mm: Permit transitioning from Global to Non-Global without BBM + - arm64: kpti: Add ->enable callback to remap swapper using nG mappings + - arm64: Force KPTI to be disabled on Cavium ThunderX + - arm64: entry: Reword comment about post_ttbr_update_workaround + - arm64: idmap: Use "awx" flags for .idmap.text .pushsection directives + - perf: arm_spe: Fail device probe when arm64_kernel_unmapped_at_el0() + - arm64: barrier: Add CSDB macros to control data-value prediction + - arm64: Implement array_index_mask_nospec() + - arm64: Make USER_DS an inclusive limit + - arm64: Use pointer masking to limit uaccess speculation + - arm64: entry: Ensure branch through syscall table is bounded under + speculation + - arm64: uaccess: Prevent speculative use of the current addr_limit + - arm64: uaccess: Don't bother eliding access_ok checks in __{get, put}_user + - arm64: uaccess: Mask __user pointers for __arch_{clear, copy_*}_user + - arm64: futex: Mask __user pointers prior to dereference + - arm64: cpufeature: __this_cpu_has_cap() shouldn't stop early + - arm64: Run enable method for errata work arounds on late CPUs + - arm64: cpufeature: Pass capability structure to ->enable callback + - drivers/firmware: Expose psci_get_version through psci_ops structure + - arm64: Move post_ttbr_update_workaround to C code + - arm64: Add skeleton to harden the branch predictor against aliasing attacks + - arm64: Move BP hardening to check_and_switch_context + - arm64: KVM: Use per-CPU vector when BP hardening is enabled + - arm64: entry: Apply BP hardening for high-priority synchronous exceptions + - arm64: entry: Apply BP hardening for suspicious interrupts from EL0 + - arm64: cputype: Add missing MIDR values for Cortex-A72 and Cortex-A75 + - arm64: Implement branch predictor hardening for affected Cortex-A CPUs + - arm64: Implement branch predictor hardening for Falkor + - arm64: Branch predictor hardening for Cavium ThunderX2 + - arm64: KVM: Increment PC after handling an SMC trap + - arm/arm64: KVM: Consolidate the PSCI include files + - arm/arm64: KVM: Add PSCI_VERSION helper + - arm/arm64: KVM: Add smccc accessors to PSCI code + - arm/arm64: KVM: Implement PSCI 1.0 support + - arm/arm64: KVM: Advertise SMCCC v1.1 + - arm64: KVM: Make PSCI_VERSION a fast path + - arm/arm64: KVM: Turn kvm_psci_version into a static inline + - arm64: KVM: Report SMCCC_ARCH_WORKAROUND_1 BP hardening support + - arm64: KVM: Add SMCCC_ARCH_WORKAROUND_1 fast handling + - firmware/psci: Expose PSCI conduit + - firmware/psci: Expose SMCCC version through psci_ops + - arm/arm64: smccc: Make function identifiers an unsigned quantity + - arm/arm64: smccc: Implement SMCCC v1.1 inline primitive + - arm64: Add ARM_SMCCC_ARCH_WORKAROUND_1 BP hardening support + - arm64: Kill PSCI_GET_VERSION as a variant-2 workaround + - mtd: cfi: convert inline functions to macros + - mtd: nand: brcmnand: Disable prefetch by default + - mtd: nand: Fix nand_do_read_oob() return value + - mtd: nand: sunxi: Fix ECC strength choice + - ubi: Fix race condition between ubi volume creation and udev + - ubi: fastmap: Erase outdated anchor PEBs during attach + - ubi: block: Fix locking for idr_alloc/idr_remove + - ubifs: free the encrypted symlink target + - nfs/pnfs: fix nfs_direct_req ref leak when i/o falls back to the mds + - nfs41: do not return ENOMEM on LAYOUTUNAVAILABLE + - NFS: Add a cond_resched() to nfs_commit_release_pages() + - NFS: Fix nfsstat breakage due to LOOKUPP + - NFS: commit direct writes even if they fail partially + - NFS: reject request for id_legacy key without auxdata + - NFS: Fix a race between mmap() and O_DIRECT + - nfsd: Detect unhashed stids in nfsd4_verify_open_stid() + - kernfs: fix regression in kernfs_fop_write caused by wrong type + - ahci: Annotate PCI ids for mobile Intel chipsets as such + - ahci: Add PCI ids for Intel Bay Trail, Cherry Trail and Apollo Lake AHCI + - ahci: Add Intel Cannon Lake PCH-H PCI ID + - crypto: hash - introduce crypto_hash_alg_has_setkey() + - crypto: cryptd - pass through absence of ->setkey() + - crypto: mcryptd - pass through absence of ->setkey() + - crypto: poly1305 - remove ->setkey() method + - crypto: hash - annotate algorithms taking optional key + - crypto: hash - prevent using keyed hashes without setting key + - media: v4l2-ioctl.c: use check_fmt for enum/g/s/try_fmt + - media: v4l2-ioctl.c: don't copy back the result for -ENOTTY + - media: v4l2-compat-ioctl32.c: add missing VIDIOC_PREPARE_BUF + - media: v4l2-compat-ioctl32.c: fix the indentation + - media: v4l2-compat-ioctl32.c: move 'helper' functions to + __get/put_v4l2_format32 + - media: v4l2-compat-ioctl32.c: avoid sizeof(type) + - media: v4l2-compat-ioctl32.c: copy m.userptr in put_v4l2_plane32 + - media: v4l2-compat-ioctl32.c: fix ctrl_is_pointer + - media: v4l2-compat-ioctl32.c: copy clip list in put_v4l2_window32 + - media: v4l2-compat-ioctl32.c: drop pr_info for unknown buffer type + - media: v4l2-compat-ioctl32.c: don't copy back the result for certain errors + - media: v4l2-compat-ioctl32.c: refactor compat ioctl32 logic + - media: v4l2-compat-ioctl32.c: make ctrl_is_pointer work for subdevs + - crypto: caam - fix endless loop when DECO acquire fails + - crypto: sha512-mb - initialize pending lengths correctly + - crypto: talitos - fix Kernel Oops on hashing an empty file + - arm: KVM: Fix SMCCC handling of unimplemented SMC/HVC calls + - KVM: nVMX: Fix races when sending nested PI while dest enters/leaves L2 + - KVM: nVMX: Fix bug of injecting L2 exception into L1 + - KVM: PPC: Book3S HV: Make sure we don't re-enter guest without XIVE loaded + - KVM: PPC: Book3S HV: Drop locks before reading guest memory + - KVM: arm/arm64: Handle CPU_PM_ENTER_FAILED + - KVM: PPC: Book3S PR: Fix broken select due to misspelling + - ASoC: acpi: fix machine driver selection based on quirk + - ASoC: rockchip: i2s: fix playback after runtime resume + - ASoC: skl: Fix kernel warning due to zero NHTL entry + - ASoC: compress: Correct handling of copy callback + - watchdog: imx2_wdt: restore previous timeout after suspend+resume + - afs: Add missing afs_put_cell() + - afs: Need to clear responded flag in addr cursor + - afs: Fix missing cursor clearance + - afs: Fix server list handling + - btrfs: Handle btrfs_set_extent_delalloc failure in fixup worker + - Btrfs: raid56: iterate raid56 internal bio with bio_for_each_segment_all + - kasan: don't emit builtin calls when sanitization is off + - kasan: rework Kconfig settings + - media: dvb_frontend: be sure to init dvb_frontend_handle_ioctl() return code + - media: dvb-frontends: fix i2c access helpers for KASAN + - media: dt-bindings/media/cec-gpio.txt: mention the CEC/HPD max voltages + - media: ts2020: avoid integer overflows on 32 bit machines + - media: vivid: fix module load error when enabling fb and no_error_inj=1 + - media: cxusb, dib0700: ignore XC2028_I2C_FLUSH + - fs/proc/kcore.c: use probe_kernel_read() instead of memcpy() + - kernel/async.c: revert "async: simplify lowest_in_progress()" + - kernel/relay.c: revert "kernel/relay.c: fix potential memory leak" + - pipe: actually allow root to exceed the pipe buffer limits + - pipe: fix off-by-one error when checking buffer limits + - HID: quirks: Fix keyboard + touchpad on Toshiba Click Mini not working + - Bluetooth: btsdio: Do not bind to non-removable BCM43341 + - ipmi: use dynamic memory for DMI driver override + - signal/openrisc: Fix do_unaligned_access to send the proper signal + - signal/sh: Ensure si_signo is initialized in do_divide_error + - alpha: fix crash if pthread_create races with signal delivery + - alpha: osf_sys.c: fix put_tv32 regression + - alpha: Fix mixed up args in EXC macro in futex operations + - alpha: fix reboot on Avanti platform + - alpha: fix formating of stack content + - xtensa: fix futex_atomic_cmpxchg_inatomic + - EDAC, octeon: Fix an uninitialized variable warning + - genirq: Make legacy autoprobing work again + - pinctrl: intel: Initialize GPIO properly when used through irqchip + - pinctrl: mcp23s08: fix irq setup order + - pinctrl: sx150x: Unregister the pinctrl on release + - pinctrl: sx150x: Register pinctrl before adding the gpiochip + - pinctrl: sx150x: Add a static gpio/pinctrl pin range mapping + - pktcdvd: Fix pkt_setup_dev() error path + - pktcdvd: Fix a recently introduced NULL pointer dereference + - blk-mq: quiesce queue before freeing queue + - clocksource/drivers/stm32: Fix kernel panic with multiple timers + - lib/ubsan.c: s/missaligned/misaligned/ + - lib/ubsan: add type mismatch handler for new GCC/Clang + - objtool: Fix switch-table detection + - arm64: dts: marvell: add Ethernet aliases + - drm/i915: Avoid PPS HW/SW state mismatch due to rounding + - ACPI: sbshc: remove raw pointer from printk() message + - acpi, nfit: fix register dimm error handling + - ovl: force r/o mount when index dir creation fails + - ovl: fix failure to fsync lower dir + - ovl: take mnt_want_write() for work/index dir setup + - ovl: take mnt_want_write() for removing impure xattr + - ovl: hash directory inodes for fsnotify + - mn10300/misalignment: Use SIGSEGV SEGV_MAPERR to report a failed user copy + - devpts: fix error handling in devpts_mntget() + - ftrace: Remove incorrect setting of glob search field + - scsi: core: Ensure that the SCSI error handler gets woken up + - scsi: lpfc: Fix crash after bad bar setup on driver attachment + - scsi: cxlflash: Reset command ioasc + - rcu: Export init_rcu_head() and destroy_rcu_head() to GPL modules + - Linux 4.15.4 + - updateconfigs after v4.14.4 stable updates + * Bionic update to v4.15.4 stable release (LP: #1751064) // CVE-2017-5754 and + do not need KPTI when KASLR is off. + - arm64: Turn on KPTI only on CPUs that need it + * Miscellaneous Ubuntu changes + - [Config] fix up removed retpoline call sites + + -- Marcelo Henrique Cerri Wed, 21 Mar 2018 18:25:41 -0300 + +linux-azure (4.15.0-1002.2) bionic; urgency=medium + + * linux-azure: 4.15.0-1002.2 -proposed tracker (LP: #1749771) + + * CVE-2017-5715 (Spectre v2 retpoline) + - [Config] azure: disable retpoline checks for another upload + + * [Hyper-V] Fixes for Network Direct InfiniBand/RDMA driver (LP: #1749332) + - SAUCE: vmbus-rdma: ND142: don't wait forever for disconnection from remote + connector + - SAUCE: vmbus-rdma: ND142: remove idr handle before calling ND on freeing CQ + and QP + - SAUCE: vmbus-rdma: ND142: do not crash on idr allocation failure - warn + instead + - SAUCE: vmbus-rdma: ND144: don't wait forever for disconnection from remote + connector + - SAUCE: vmbus-rdma: ND144: remove idr handle before calling ND on freeing CQ + and QP + - SAUCE: vmbus-rdma: ND144: do not crash on idr allocation failure - warn + instead + + * [Hyper-V] Drivers: hv: vmbus: Fix ring buffer signaling (LP: #1748662) + - Revert "UBUNTU: SAUCE: vmbus: fix performance regression" + - SAUCE: hv: vmbus: Fix ring buffer signaling + + * Update the source code location in the debian package for cloud kernels + (LP: #1747890) + - [Debian] Update git repository URI + + * Miscellaneous upstream changes + - [Config] updateconfigs after rebase to Ubuntu-4.15.0-10.11 + + [ Ubuntu: 4.15.0-10.11 ] + + * linux: 4.15.0-10.11 -proposed tracker (LP: #1749250) + * "swiotlb: coherent allocation failed" dmesg spam with linux 4.15.0-9.10 + (LP: #1749202) + - swiotlb: suppress warning when __GFP_NOWARN is set + - drm/ttm: specify DMA_ATTR_NO_WARN for huge page pools + * linux-tools: perf incorrectly linking libbfd (LP: #1748922) + - SAUCE: tools -- add ability to disable libbfd + - [Packaging] correct disablement of libbfd + * [Artful] Realtek ALC225: 2 secs noise when a headset plugged in + (LP: #1744058) + - ALSA: hda/realtek - update ALC225 depop optimize + * [Artful] Support headset mode for DELL WYSE (LP: #1723913) + - SAUCE: ALSA: hda/realtek - Add support headset mode for DELL WYSE + * headset mic can't be detected on two Dell machines (LP: #1748807) + - ALSA: hda/realtek - Support headset mode for ALC215/ALC285/ALC289 + - ALSA: hda - Fix headset mic detection problem for two Dell machines + * Bionic update to v4.15.3 stable release (LP: #1749191) + - ip6mr: fix stale iterator + - net: igmp: add a missing rcu locking section + - qlcnic: fix deadlock bug + - qmi_wwan: Add support for Quectel EP06 + - r8169: fix RTL8168EP take too long to complete driver initialization. + - tcp: release sk_frag.page in tcp_disconnect + - vhost_net: stop device during reset owner + - ipv6: addrconf: break critical section in addrconf_verify_rtnl() + - ipv6: change route cache aging logic + - Revert "defer call to mem_cgroup_sk_alloc()" + - net: ipv6: send unsolicited NA after DAD + - rocker: fix possible null pointer dereference in + rocker_router_fib_event_work + - tcp_bbr: fix pacing_gain to always be unity when using lt_bw + - cls_u32: add missing RCU annotation. + - ipv6: Fix SO_REUSEPORT UDP socket with implicit sk_ipv6only + - soreuseport: fix mem leak in reuseport_add_sock() + - net_sched: get rid of rcu_barrier() in tcf_block_put_ext() + - net: sched: fix use-after-free in tcf_block_put_ext + - media: mtk-vcodec: add missing MODULE_LICENSE/DESCRIPTION + - media: soc_camera: soc_scale_crop: add missing + MODULE_DESCRIPTION/AUTHOR/LICENSE + - media: tegra-cec: add missing MODULE_DESCRIPTION/AUTHOR/LICENSE + - gpio: uniphier: fix mismatch between license text and MODULE_LICENSE + - crypto: tcrypt - fix S/G table for test_aead_speed() + - Linux 4.15.3 + * bnx2x_attn_int_deasserted3:4323 MC assert! (LP: #1715519) // + CVE-2018-1000026 + - net: create skb_gso_validate_mac_len() + - bnx2x: disable GSO where gso_size is too big for hardware + * ethtool -p fails to light NIC LED on HiSilicon D05 systems (LP: #1748567) + - net: hns: add ACPI mode support for ethtool -p + * CVE-2017-5715 (Spectre v2 Intel) + - [Packaging] retpoline files must be sorted + - [Packaging] pull in retpoline files + * [Feature] PXE boot with Intel Omni-Path (LP: #1712031) + - d-i: Add hfi1 to nic-modules + * CVE-2017-5715 (Spectre v2 retpoline) + - [Packaging] retpoline -- add call site validation + - [Config] disable retpoline checks for first upload + * Do not duplicate changelog entries assigned to more than one bug or CVE + (LP: #1743383) + - [Packaging] git-ubuntu-log -- handle multiple bugs/cves better + + [ Ubuntu: 4.15.0-9.10 ] + + * linux: 4.15.0-9.10 -proposed tracker (LP: #1748244) + * Miscellaneous Ubuntu changes + - [Debian] tests -- remove gcc-multilib dependency for arm64 + + [ Ubuntu: 4.15.0-8.9 ] + + * linux: 4.15.0-8.9 -proposed tracker (LP: #1748075) + * Bionic update to v4.15.2 stable release (LP: #1748072) + - KVM: x86: Make indirect calls in emulator speculation safe + - KVM: VMX: Make indirect call speculation safe + - module/retpoline: Warn about missing retpoline in module + - x86/cpufeatures: Add CPUID_7_EDX CPUID leaf + - x86/cpufeatures: Add Intel feature bits for Speculation Control + - x86/cpufeatures: Add AMD feature bits for Speculation Control + - x86/msr: Add definitions for new speculation control MSRs + - x86/pti: Do not enable PTI on CPUs which are not vulnerable to Meltdown + - x86/cpufeature: Blacklist SPEC_CTRL/PRED_CMD on early Spectre v2 microcodes + - x86/speculation: Add basic IBPB (Indirect Branch Prediction Barrier) support + - x86/alternative: Print unadorned pointers + - x86/nospec: Fix header guards names + - x86/bugs: Drop one "mitigation" from dmesg + - x86/cpu/bugs: Make retpoline module warning conditional + - x86/cpufeatures: Clean up Spectre v2 related CPUID flags + - x86/retpoline: Simplify vmexit_fill_RSB() + - x86/speculation: Simplify indirect_branch_prediction_barrier() + - auxdisplay: img-ascii-lcd: add missing MODULE_DESCRIPTION/AUTHOR/LICENSE + - iio: adc/accel: Fix up module licenses + - pinctrl: pxa: pxa2xx: add missing MODULE_DESCRIPTION/AUTHOR/LICENSE + - ASoC: pcm512x: add missing MODULE_DESCRIPTION/AUTHOR/LICENSE + - KVM: nVMX: Eliminate vmcs02 pool + - KVM: VMX: introduce alloc_loaded_vmcs + - objtool: Improve retpoline alternative handling + - objtool: Add support for alternatives at the end of a section + - objtool: Warn on stripped section symbol + - x86/mm: Fix overlap of i386 CPU_ENTRY_AREA with FIX_BTMAP + - x86/spectre: Check CONFIG_RETPOLINE in command line parser + - x86/entry/64: Remove the SYSCALL64 fast path + - x86/entry/64: Push extra regs right away + - x86/asm: Move 'status' from thread_struct to thread_info + - Documentation: Document array_index_nospec + - array_index_nospec: Sanitize speculative array de-references + - x86: Implement array_index_mask_nospec + - x86: Introduce barrier_nospec + - x86: Introduce __uaccess_begin_nospec() and uaccess_try_nospec + - x86/usercopy: Replace open coded stac/clac with __uaccess_{begin, end} + - x86/uaccess: Use __uaccess_begin_nospec() and uaccess_try_nospec + - x86/get_user: Use pointer masking to limit speculation + - x86/syscall: Sanitize syscall table de-references under speculation + - vfs, fdtable: Prevent bounds-check bypass via speculative execution + - nl80211: Sanitize array index in parse_txq_params + - x86/spectre: Report get_user mitigation for spectre_v1 + - x86/spectre: Fix spelling mistake: "vunerable"-> "vulnerable" + - x86/cpuid: Fix up "virtual" IBRS/IBPB/STIBP feature bits on Intel + - x86/speculation: Use Indirect Branch Prediction Barrier in context switch + - x86/paravirt: Remove 'noreplace-paravirt' cmdline option + - KVM: VMX: make MSR bitmaps per-VCPU + - x86/kvm: Update spectre-v1 mitigation + - x86/retpoline: Avoid retpolines for built-in __init functions + - x86/spectre: Simplify spectre_v2 command line parsing + - x86/pti: Mark constant arrays as __initconst + - x86/speculation: Fix typo IBRS_ATT, which should be IBRS_ALL + - KVM/x86: Update the reverse_cpuid list to include CPUID_7_EDX + - KVM/x86: Add IBPB support + - KVM/VMX: Emulate MSR_IA32_ARCH_CAPABILITIES + - KVM/VMX: Allow direct access to MSR_IA32_SPEC_CTRL + - KVM/SVM: Allow direct access to MSR_IA32_SPEC_CTRL + - serial: core: mark port as initialized after successful IRQ change + - fpga: region: release of_parse_phandle nodes after use + - Linux 4.15.2 + * Add support for the NIC on SynQuacer E-Series boards (LP: #1747792) + - net: phy: core: remove now uneeded disabling of interrupts + - [Config] CONFIG_NET_VENDOR_SOCIONEXT=y & CONFIG_SNI_NETSEC=m + - net: socionext: Add Synquacer NetSec driver + - net: socionext: include linux/io.h to fix build + - net: socionext: Fix error return code in netsec_netdev_open() + * [Artful/Bionic] [Config] enable EDAC_GHES for ARM64 (LP: #1747746) + - [Config] CONFIG_EDAC_GHES=y + * support thunderx2 vendor pmu events (LP: #1747523) + - perf pmu: Pass pmu as a parameter to get_cpuid_str() + - perf tools arm64: Add support for get_cpuid_str function. + - perf pmu: Add helper function is_pmu_core to detect PMU CORE devices + - perf vendor events arm64: Add ThunderX2 implementation defined pmu core + events + - perf pmu: Add check for valid cpuid in perf_pmu__find_map() + * linux 4.14.0-7.9 ADT test failure with linux 4.14.0-7.9 (LP: #1732463) + - SAUCE: mm: disable vma based swap readahead by default + - SAUCE: mm: fix memory hotplug in ZONE_HIGHMEM + * Miscellaneous Ubuntu changes + - [Config] Fix CONFIG_PROFILE_ALL_BRANCHES annotations + + [ Ubuntu: 4.15.0-7.8 ] + + * Bionic update to v4.15.1 stable release (LP: #1747169) + - Bluetooth: hci_serdev: Init hci_uart proto_lock to avoid oops + - tools/gpio: Fix build error with musl libc + - gpio: stmpe: i2c transfer are forbiden in atomic context + - gpio: Fix kernel stack leak to userspace + - ALSA: hda - Reduce the suspend time consumption for ALC256 + - crypto: ecdh - fix typo in KPP dependency of CRYPTO_ECDH + - crypto: aesni - handle zero length dst buffer + - crypto: aesni - fix typo in generic_gcmaes_decrypt + - crypto: aesni - add wrapper for generic gcm(aes) + - crypto: aesni - Fix out-of-bounds access of the data buffer in generic-gcm- + aesni + - crypto: aesni - Fix out-of-bounds access of the AAD buffer in generic-gcm- + aesni + - crypto: inside-secure - fix hash when length is a multiple of a block + - crypto: inside-secure - avoid unmapping DMA memory that was not mapped + - crypto: sha3-generic - fixes for alignment and big endian operation + - crypto: af_alg - whitelist mask and type + - HID: wacom: EKR: ensure devres groups at higher indexes are released + - HID: wacom: Fix reporting of touch toggle (WACOM_HID_WD_MUTE_DEVICE) events + - power: reset: zx-reboot: add missing MODULE_DESCRIPTION/AUTHOR/LICENSE + - gpio: iop: add missing MODULE_DESCRIPTION/AUTHOR/LICENSE + - gpio: ath79: add missing MODULE_DESCRIPTION/LICENSE + - mtd: nand: denali_pci: add missing MODULE_DESCRIPTION/AUTHOR/LICENSE + - igb: Free IRQs when device is hotplugged + - ima/policy: fix parsing of fsuuid + - scsi: aacraid: Fix udev inquiry race condition + - scsi: aacraid: Fix hang in kdump + - scsi: storvsc: missing error code in storvsc_probe() + - staging: lustre: separate a connection destroy from free struct kib_conn + - staging: ccree: NULLify backup_info when unused + - staging: ccree: fix fips event irq handling build + - tty: fix data race between tty_init_dev and flush of buf + - usb: option: Add support for FS040U modem + - USB: serial: pl2303: new device id for Chilitag + - USB: cdc-acm: Do not log urb submission errors on disconnect + - CDC-ACM: apply quirk for card reader + - USB: serial: io_edgeport: fix possible sleep-in-atomic + - usbip: prevent bind loops on devices attached to vhci_hcd + - usbip: list: don't list devices attached to vhci_hcd + - USB: serial: simple: add Motorola Tetra driver + - usb: f_fs: Prevent gadget unbind if it is already unbound + - usb: uas: unconditionally bring back host after reset + - usb/gadget: Fix "high bandwidth" check in usb_gadget_ep_match_desc() + - ANDROID: binder: remove waitqueue when thread exits. + - android: binder: use VM_ALLOC to get vm area + - mei: me: allow runtime pm for platform with D0i3 + - serial: 8250_of: fix return code when probe function fails to get reset + - serial: 8250_uniphier: fix error return code in uniphier_uart_probe() + - serial: 8250_dw: Revert "Improve clock rate setting" + - serial: imx: Only wakeup via RTSDEN bit if the system has RTS/CTS + - spi: imx: do not access registers while clocks disabled + - iio: adc: stm32: fix scan of multiple channels with DMA + - iio: chemical: ccs811: Fix output of IIO_CONCENTRATION channels + - test_firmware: fix missing unlock on error in config_num_requests_store() + - Input: synaptics-rmi4 - unmask F03 interrupts when port is opened + - Input: synaptics-rmi4 - do not delete interrupt memory too early + - x86/efi: Clarify that reset attack mitigation needs appropriate userspace + - Linux 4.15.1 + * Dell XPS 13 9360 bluetooth (Atheros) won't connect after resume + (LP: #1744712) + - Revert "Bluetooth: btusb: fix QCA Rome suspend/resume" + - Bluetooth: btusb: Restore QCA Rome suspend/resume fix with a "rewritten" + version + * apparmor profile load in stacked policy container fails (LP: #1746463) + - SAUCE: apparmor: fix display of .ns_name for containers + + -- Marcelo Henrique Cerri Thu, 15 Feb 2018 16:19:59 -0200 + +linux-azure (4.15.0-1001.1) bionic; urgency=low + + * linux-azure: 4.15.0-1001.1 -proposed tracker (LP: #1746739) + + * ubuntu/xr-usb-serial didn't get built in zesty and artful (LP: #1733281) + - ubuntu: Only build ubuntu/xr-usb-serial when USB is enabled + + * Miscellaneous Ubuntu changes + - [Config] updateconfigs after rebase to Ubuntu-4.15.0-5.6 + + [ Ubuntu: 4.15.0-6.7 ] + + * upload urgency should be medium by default (LP: #1745338) + - [Packaging] update urgency to medium by default + * Shutdown hang on 16.04 with iscsi targets (LP: #1569925) + - scsi: libiscsi: Allow sd_shutdown on bad transport + * Miscellaneous Ubuntu changes + - SAUCE: (noup) Update spl to 0.7.5-1ubuntu1, zfs to 0.7.5-1ubuntu1 + - Revert "UBUNTU: SAUCE: mm: fix memory hotplug in ZONE_HIGHMEM" + - Revert "UBUNTU: SAUCE: mm: disable vma based swap readahead by default" + * Rebase to v4.15 + + [ Ubuntu: 4.15.0-5.6 ] + + * $(LOCAL_ENV_CC) and $(LOCAL_ENV_DISTCC_HOSTS) should be properly quoted + (LP: #1744077) + - [Debian] pass LOCAL_ENV_CC and LOCAL_ENV_DISTCC_HOSTS properly + * Missing install-time driver for QLogic QED 25/40/100Gb Ethernet NIC + (LP: #1743638) + - [d-i] Add qede to nic-modules udeb + * boot failure on AMD Raven + WesternXT (LP: #1742759) + - SAUCE: drm/amdgpu: add atpx quirk handling (v2) + * Unable to handle kernel NULL pointer dereference at isci_task_abort_task + (LP: #1726519) + - SAUCE: Revert "scsi: libsas: allow async aborts" + * Update Ubuntu-4.15.0 config to support Intel Atom devices (LP: #1739939) + - [Config] CONFIG_SERIAL_DEV_BUS=y, CONFIG_SERIAL_DEV_CTRL_TTYPORT=y + * Miscellaneous Ubuntu changes + - Rebase to v4.15-rc7 + - [Config] CONFIG_CPU_ISOLATION=y + - [Config] Update annotations following config review + - Revert "UBUNTU: SAUCE: Import aufs driver" + - SAUCE: Import aufs driver + - ubuntu: vbox -- update to 5.2.6-dfsg-1 + - ubuntu: vbox: build fixes for 4.15 + - ubuntu: vbox -- update to 5.2.6-dfsg-2 + - hio: updates for timer api changes in 4.15 + - enable hio build + - Rebase to v4.15-rc9 + * Rebase to v4.15-rc9 + + [ Ubuntu: 4.15.0-4.5 ] + + * [0cf3:e010] QCA6174A XR failed to pair with bt 4.0 device (LP: #1741166) + - SAUCE: Bluetooth: btusb: Add support for 0cf3:e010 + * External HDMI monitor failed to show screen on Lenovo X1 series + (LP: #1738523) + - SAUCE: drm/i915: Disable writing of TMDS_OE on Lenovo ThinkPad X1 series + * Miscellaneous Ubuntu changes + - [Debian] autoreconstruct - add resoration of execute permissions + * Rebase to v4.15-rc4 + + [ Ubuntu: 4.15.0-3.4 ] + + * ubuntu/xr-usb-serial didn't get built in zesty and artful (LP: #1733281) + - SAUCE: make sure ubuntu/xr-usb-serial builds for x86 + * Rebase to v4.15-rc6 + + [ Ubuntu: 4.15.0-2.3 ] + + * nvidia-graphics-drivers-384 384.90-0ubuntu6 ADT test failure with linux + 4.15.0-1.2 (LP: #1737752) + - x86/mm: Unbreak modules that use the DMA API + * Ubuntu 17.10 corrupting BIOS - many LENOVO laptops models (LP: #1734147) + - [Config] CONFIG_SPI_INTEL_SPI_*=n + * power: commonise configs IBMVETH/IBMVSCSI and ensure both are in linux-image + and udebs (LP: #1521712) + - [Config] Include ibmvnic in nic-modules + * Enable arm64 emulation of removed ARMv7 instructions (LP: #1545542) + - [Config] Enable support for emulation of deprecated ARMv8 instructions + * Miscellaneous Ubuntu changes + - SAUCE: (noup) Update spl with 4.15 compat fix (LP:#1737761) + - Enable zfs build + - [Debian] add icp to zfs-modules.ignore + * Rebase to v4.15-rc4 + + [ Ubuntu: 4.15.0-1.2 ] + + * Disabling zfs does not always disable module checks for the zfs modules + (LP: #1737176) + - [Packaging] disable zfs module checks when zfs is disabled + * Miscellaneous Ubuntu changes + - [Config] CONFIG_UNWINDER_FRAME_POINTER=y for amd64 + * Rebase to v4.15-rc3 + + [ Ubuntu: 4.15.0-0.1 ] + + * Miscellaneous Ubuntu changes + - ubuntu: vbox -- update to 5.2.2-dfsg-2 + - ubuntu: vbox: build fixes for 4.15 + - disable hio build + - [Config] Update kernel lockdown options to fix build errors + - Disable zfs build + - SAUCE: Import aufs driver + - [Config] Enable AUFS config options + * Rebase to v4.15-rc2 + + [ Ubuntu: 4.14.0-11.13 ] + + * linux: 4.14.0-11.13 -proposed tracker (LP: #1736168) + * CVE-2017-1000405 + - mm, thp: Do not make page table dirty unconditionally in touch_p[mu]d() + * linux 4.14.0-7.9 ADT test failure with linux 4.14.0-7.9 (LP: #1732463) + - SAUCE: mm: disable vma based swap readahead by default + - SAUCE: mm: fix memory hotplug in ZONE_HIGHMEM + * Bionic update to v4.14.3 stable release (LP: #1735843) + - s390: fix transactional execution control register handling + - s390/noexec: execute kexec datamover without DAT + - s390/runtime instrumention: fix possible memory corruption + - s390/guarded storage: fix possible memory corruption + - s390/disassembler: add missing end marker for e7 table + - s390/disassembler: increase show_code buffer size + - ACPI / PM: Fix acpi_pm_notifier_lock vs flush_workqueue() deadlock + - ACPI / EC: Fix regression related to triggering source of EC event handling + - cpufreq: schedutil: Reset cached_raw_freq when not in sync with next_freq + - serdev: fix registration of second slave + - sched: Make resched_cpu() unconditional + - lib/mpi: call cond_resched() from mpi_powm() loop + - x86/boot: Fix boot failure when SMP MP-table is based at 0 + - x86/decoder: Add new TEST instruction pattern + - x86/entry/64: Fix entry_SYSCALL_64_after_hwframe() IRQ tracing + - x86/entry/64: Add missing irqflags tracing to native_load_gs_index() + - perf/x86/intel: Hide TSX events when RTM is not supported + - arm64: Implement arch-specific pte_access_permitted() + - ARM: 8722/1: mm: make STRICT_KERNEL_RWX effective for LPAE + - ARM: 8721/1: mm: dump: check hardware RO bit for LPAE + - uapi: fix linux/tls.h userspace compilation error + - uapi: fix linux/rxrpc.h userspace compilation errors + - MIPS: cmpxchg64() and HAVE_VIRT_CPU_ACCOUNTING_GEN don't work for 32-bit SMP + - MIPS: ralink: Fix MT7628 pinmux + - MIPS: ralink: Fix typo in mt7628 pinmux function + - net: mvneta: fix handling of the Tx descriptor counter + - nbd: wait uninterruptible for the dead timeout + - nbd: don't start req until after the dead connection logic + - PM / OPP: Add missing of_node_put(np) + - PCI/ASPM: Account for downstream device's Port Common_Mode_Restore_Time + - PCI/ASPM: Use correct capability pointer to program LTR_L1.2_THRESHOLD + - PCI: hv: Use effective affinity mask + - PCI: Set Cavium ACS capability quirk flags to assert RR/CR/SV/UF + - PCI: Apply Cavium ThunderX ACS quirk to more Root Ports + - ALSA: hda: Add Raven PCI ID + - dm integrity: allow unaligned bv_offset + - dm cache: fix race condition in the writeback mode overwrite_bio + optimisation + - dm crypt: allow unaligned bv_offset + - dm zoned: ignore last smaller runt zone + - dm mpath: remove annoying message of 'blk_get_request() returned -11' + - dm bufio: fix integer overflow when limiting maximum cache size + - ovl: Put upperdentry if ovl_check_origin() fails + - dm: allocate struct mapped_device with kvzalloc + - sched/rt: Simplify the IPI based RT balancing logic + - MIPS: pci: Remove KERN_WARN instance inside the mt7620 driver + - dm: fix race between dm_get_from_kobject() and __dm_destroy() + - dm: discard support requires all targets in a table support discards + - MIPS: Fix odd fp register warnings with MIPS64r2 + - MIPS: Fix MIPS64 FP save/restore on 32-bit kernels + - MIPS: dts: remove bogus bcm96358nb4ser.dtb from dtb-y entry + - MIPS: Fix an n32 core file generation regset support regression + - MIPS: BCM47XX: Fix LED inversion for WRT54GSv1 + - MIPS: math-emu: Fix final emulation phase for certain instructions + - rt2x00usb: mark device removed when get ENOENT usb error + - mm/z3fold.c: use kref to prevent page free/compact race + - autofs: don't fail mount for transient error + - nilfs2: fix race condition that causes file system corruption + - fscrypt: lock mutex before checking for bounce page pool + - eCryptfs: use after free in ecryptfs_release_messaging() + - libceph: don't WARN() if user tries to add invalid key + - bcache: check ca->alloc_thread initialized before wake up it + - fs: guard_bio_eod() needs to consider partitions + - fanotify: fix fsnotify_prepare_user_wait() failure + - isofs: fix timestamps beyond 2027 + - btrfs: change how we decide to commit transactions during flushing + - f2fs: expose some sectors to user in inline data or dentry case + - NFS: Fix typo in nomigration mount option + - NFS: Revert "NFS: Move the flock open mode check into nfs_flock()" + - nfs: Fix ugly referral attributes + - NFS: Avoid RCU usage in tracepoints + - NFS: revalidate "." etc correctly on "open". + - nfsd: deal with revoked delegations appropriately + - rtlwifi: rtl8192ee: Fix memory leak when loading firmware + - rtlwifi: fix uninitialized rtlhal->last_suspend_sec time + - iwlwifi: fix firmware names for 9000 and A000 series hw + - md: fix deadlock error in recent patch. + - md: don't check MD_SB_CHANGE_CLEAN in md_allow_write + - Bluetooth: btqcomsmd: Add support for BD address setup + - md/bitmap: revert a patch + - fsnotify: clean up fsnotify_prepare/finish_user_wait() + - fsnotify: pin both inode and vfsmount mark + - fsnotify: fix pinning group in fsnotify_prepare_user_wait() + - ata: fixes kernel crash while tracing ata_eh_link_autopsy event + - ext4: fix interaction between i_size, fallocate, and delalloc after a crash + - ext4: prevent data corruption with inline data + DAX + - ext4: prevent data corruption with journaling + DAX + - ALSA: pcm: update tstamp only if audio_tstamp changed + - ALSA: usb-audio: Add sanity checks to FE parser + - ALSA: usb-audio: Fix potential out-of-bound access at parsing SU + - ALSA: usb-audio: Add sanity checks in v2 clock parsers + - ALSA: timer: Remove kernel warning at compat ioctl error paths + - ALSA: hda/realtek - Fix ALC275 no sound issue + - ALSA: hda: Fix too short HDMI/DP chmap reporting + - ALSA: hda - Fix yet remaining issue with vmaster 0dB initialization + - ALSA: hda/realtek - Fix ALC700 family no sound issue + - ASoC: sun8i-codec: Invert Master / Slave condition + - ASoC: sun8i-codec: Fix left and right channels inversion + - ASoC: sun8i-codec: Set the BCLK divider + - mfd: lpc_ich: Avoton/Rangeley uses SPI_BYT method + - fix a page leak in vhost_scsi_iov_to_sgl() error recovery + - 9p: Fix missing commas in mount options + - fs/9p: Compare qid.path in v9fs_test_inode + - net/9p: Switch to wait_event_killable() + - scsi: qla2xxx: Suppress a kernel complaint in qla_init_base_qpair() + - scsi: sd_zbc: Fix sd_zbc_read_zoned_characteristics() + - scsi: lpfc: fix pci hot plug crash in timer management routines + - scsi: lpfc: fix pci hot plug crash in list_add call + - scsi: lpfc: Fix crash receiving ELS while detaching driver + - scsi: lpfc: Fix FCP hba_wqidx assignment + - scsi: lpfc: Fix oops if nvmet_fc_register_targetport fails + - iscsi-target: Make TASK_REASSIGN use proper se_cmd->cmd_kref + - iscsi-target: Fix non-immediate TMR reference leak + - target: fix null pointer regression in core_tmr_drain_tmr_list + - target: fix buffer offset in core_scsi3_pri_read_full_status + - target: Fix QUEUE_FULL + SCSI task attribute handling + - target: Fix caw_sem leak in transport_generic_request_failure + - target: Fix quiese during transport_write_pending_qf endless loop + - target: Avoid early CMD_T_PRE_EXECUTE failures during ABORT_TASK + - mtd: Avoid probe failures when mtd->dbg.dfs_dir is invalid + - mtd: nand: Export nand_reset() symbol + - mtd: nand: atmel: Actually use the PM ops + - mtd: nand: omap2: Fix subpage write + - mtd: nand: Fix writing mtdoops to nand flash. + - mtd: nand: mtk: fix infinite ECC decode IRQ issue + - mailbox: bcm-flexrm-mailbox: Fix FlexRM ring flush sequence + - p54: don't unregister leds when they are not initialized + - block: Fix a race between blk_cleanup_queue() and timeout handling + - raid1: prevent freeze_array/wait_all_barriers deadlock + - genirq: Track whether the trigger type has been set + - irqchip/gic-v3: Fix ppi-partitions lookup + - lockd: double unregister of inetaddr notifiers + - KVM: PPC: Book3S HV: Don't call real-mode XICS hypercall handlers if not + enabled + - KVM: nVMX: set IDTR and GDTR limits when loading L1 host state + - KVM: SVM: obey guest PAT + - kvm: vmx: Reinstate support for CPUs without virtual NMI + - dax: fix PMD faults on zero-length files + - dax: fix general protection fault in dax_alloc_inode + - SUNRPC: Fix tracepoint storage issues with svc_recv and svc_rqst_status + - clk: ti: dra7-atl-clock: fix child-node lookups + - libnvdimm, dimm: clear 'locked' status on successful DIMM enable + - libnvdimm, pfn: make 'resource' attribute only readable by root + - libnvdimm, namespace: fix label initialization to use valid seq numbers + - libnvdimm, region : make 'resource' attribute only readable by root + - libnvdimm, namespace: make 'resource' attribute only readable by root + - svcrdma: Preserve CB send buffer across retransmits + - IB/srpt: Do not accept invalid initiator port names + - IB/cm: Fix memory corruption in handling CM request + - IB/hfi1: Fix incorrect available receive user context count + - IB/srp: Avoid that a cable pull can trigger a kernel crash + - IB/core: Avoid crash on pkey enforcement failed in received MADs + - IB/core: Only maintain real QPs in the security lists + - NFC: fix device-allocation error return + - spi-nor: intel-spi: Fix broken software sequencing codes + - i40e: Use smp_rmb rather than read_barrier_depends + - igb: Use smp_rmb rather than read_barrier_depends + - igbvf: Use smp_rmb rather than read_barrier_depends + - ixgbevf: Use smp_rmb rather than read_barrier_depends + - i40evf: Use smp_rmb rather than read_barrier_depends + - fm10k: Use smp_rmb rather than read_barrier_depends + - ixgbe: Fix skb list corruption on Power systems + - parisc: Fix validity check of pointer size argument in new CAS + implementation + - powerpc: Fix boot on BOOK3S_32 with CONFIG_STRICT_KERNEL_RWX + - powerpc/mm/radix: Fix crashes on Power9 DD1 with radix MMU and STRICT_RWX + - powerpc/perf/imc: Use cpu_to_node() not topology_physical_package_id() + - powerpc/signal: Properly handle return value from uprobe_deny_signal() + - powerpc/64s: Fix masking of SRR1 bits on instruction fault + - powerpc/64s/radix: Fix 128TB-512TB virtual address boundary case allocation + - powerpc/64s/hash: Fix 512T hint detection to use >= 128T + - powerpc/64s/hash: Fix 128TB-512TB virtual address boundary case allocation + - powerpc/64s/hash: Fix fork() with 512TB process address space + - powerpc/64s/hash: Allow MAP_FIXED allocations to cross 128TB boundary + - media: Don't do DMA on stack for firmware upload in the AS102 driver + - media: rc: check for integer overflow + - media: rc: nec decoder should not send both repeat and keycode + - cx231xx-cards: fix NULL-deref on missing association descriptor + - media: v4l2-ctrl: Fix flags field on Control events + - media: venus: fix wrong size on dma_free + - media: venus: venc: fix bytesused v4l2_plane field + - media: venus: reimplement decoder stop command + - ARM64: dts: meson-gxl: Add alternate ARM Trusted Firmware reserved memory + zone + - iwlwifi: fix wrong struct for a000 device + - iwlwifi: add a new a000 device + - iwlwifi: pcie: sort IDs for the 9000 series for easier comparisons + - iwlwifi: add new cards for a000 series + - iwlwifi: add new cards for 8265 series + - iwlwifi: add new cards for 8260 series + - iwlwifi: fix PCI IDs and configuration mapping for 9000 series + - iwlwifi: mvm: support version 7 of the SCAN_REQ_UMAC FW command + - e1000e: Fix error path in link detection + - e1000e: Fix return value test + - e1000e: Separate signaling for link check/link up + - e1000e: Avoid receiver overrun interrupt bursts + - e1000e: fix buffer overrun while the I219 is processing DMA transactions + - Linux 4.14.3 + * Miscellaneous Ubuntu changes + - SAUCE: s390/topology: don't inline cpu_to_node + - SAUCE: (noup) Update spl to 0.7.3-1ubuntu1, zfs to 0.7.3-1ubuntu1 + + [ Ubuntu: 4.14.0-10.12 ] + + * linux: 4.14.0-10.12 -proposed tracker (LP: #1734901) + * Miscellaneous Ubuntu changes + - SAUCE: Enable the ACPI kernel debugger and acpidbg tool + - [Packaging] Include arch/arm64/kernel/ftrace-mod.o in headers package + + [ Ubuntu: 4.14.0-9.11 ] + + * linux: 4.14.0-9.11 -proposed tracker (LP: #1734728) + * Miscellaneous Ubuntu changes + - Revert "UBUNTU: SAUCE: (noup) Update spl to 0.7.3-1ubuntu1, zfs to + 0.7.3-1ubuntu1" + + [ Ubuntu: 4.14.0-8.10 ] + + * linux: 4.14.0-8.10 -proposed tracker (LP: #1734695) + * Bionic update to v4.14.2 stable release (LP: #1734694) + - bio: ensure __bio_clone_fast copies bi_partno + - af_netlink: ensure that NLMSG_DONE never fails in dumps + - vxlan: fix the issue that neigh proxy blocks all icmpv6 packets + - net: cdc_ncm: GetNtbFormat endian fix + - fealnx: Fix building error on MIPS + - net/sctp: Always set scope_id in sctp_inet6_skb_msgname + - ima: do not update security.ima if appraisal status is not INTEGRITY_PASS + - serial: omap: Fix EFR write on RTS deassertion + - serial: 8250_fintek: Fix finding base_port with activated SuperIO + - tpm-dev-common: Reject too short writes + - rcu: Fix up pending cbs check in rcu_prepare_for_idle + - mm/pagewalk.c: report holes in hugetlb ranges + - ocfs2: fix cluster hang after a node dies + - ocfs2: should wait dio before inode lock in ocfs2_setattr() + - ipmi: fix unsigned long underflow + - mm/page_alloc.c: broken deferred calculation + - mm/page_ext.c: check if page_ext is not prepared + - coda: fix 'kernel memory exposure attempt' in fsync + - ipmi: Prefer ACPI system interfaces over SMBIOS ones + - Linux 4.14.2 + * Bionic update to v4.14.1 stable release (LP: #1734693) + - EDAC, sb_edac: Don't create a second memory controller if HA1 is not present + - dmaengine: dmatest: warn user when dma test times out + - media: imon: Fix null-ptr-deref in imon_probe + - media: dib0700: fix invalid dvb_detach argument + - crypto: dh - Fix double free of ctx->p + - crypto: dh - Don't permit 'p' to be 0 + - crypto: dh - Don't permit 'key' or 'g' size longer than 'p' + - crypto: brcm - Explicity ACK mailbox message + - USB: early: Use new USB product ID and strings for DbC device + - USB: usbfs: compute urb->actual_length for isochronous + - USB: Add delay-init quirk for Corsair K70 LUX keyboards + - usb: gadget: f_fs: Fix use-after-free in ffs_free_inst + - USB: serial: metro-usb: stop I/O after failed open + - USB: serial: Change DbC debug device binding ID + - USB: serial: qcserial: add pid/vid for Sierra Wireless EM7355 fw update + - USB: serial: garmin_gps: fix I/O after failed probe and remove + - USB: serial: garmin_gps: fix memory leak on probe errors + - selftests/x86/protection_keys: Fix syscall NR redefinition warnings + - x86/MCE/AMD: Always give panic severity for UC errors in kernel context + - platform/x86: peaq-wmi: Add DMI check before binding to the WMI interface + - platform/x86: peaq_wmi: Fix missing terminating entry for peaq_dmi_table + - HID: cp2112: add HIDRAW dependency + - HID: wacom: generic: Recognize WACOM_HID_WD_PEN as a type of pen collection + - rpmsg: glink: Add missing MODULE_LICENSE + - staging: wilc1000: Fix bssid buffer offset in Txq + - staging: sm750fb: Fix parameter mistake in poke32 + - staging: ccree: fix 64 bit scatter/gather DMA ops + - staging: greybus: spilib: fix use-after-free after deregistration + - staging: rtl8188eu: Revert 4 commits breaking ARP + - spi: fix use-after-free at controller deregistration + - sparc32: Add cmpxchg64(). + - sparc64: mmu_context: Add missing include files + - sparc64: Fix page table walk for PUD hugepages + - Linux 4.14.1 + * Set PANIC_TIMEOUT=10 on Power Systems (LP: #1730660) + - [Config]: Set PANIC_TIMEOUT=10 on ppc64el + * enable CONFIG_SND_SOC_INTEL_BYT_CHT_NOCODEC_MACH easily confuse users + (LP: #1732627) + - [Config] CONFIG_SND_SOC_INTEL_BYT_CHT_NOCODEC_MACH=n + * Miscellaneous Ubuntu changes + - SAUCE: (noup) Update spl to 0.7.3-1ubuntu1, zfs to 0.7.3-1ubuntu1 + + [ Ubuntu: 4.14.0-7.9 ] + + * Miscellaneous Ubuntu changes + - SAUCE: apparmor: add base infastructure for socket mediation + - SAUCE: apparmor: af_unix mediation + - SAUCE: LSM stacking: procfs: add smack subdir to attrs + - SAUCE: LSM stacking: LSM: manage credential security blobs + - SAUCE: LSM stacking: LSM: Manage file security blobs + - SAUCE: LSM stacking: LSM: manage task security blobs + - SAUCE: LSM stacking: LSM: Infrastructure management of the remaining blobs + - SAUCE: LSM stacking: LSM: general but not extreme module stacking + - SAUCE: LSM stacking: LSM: Complete task_alloc hook + - SAUCE: LSM stacking: fixup procsfs: add smack subdir to attrs + - SAUCE: LSM stacking: fixup initialize task->security + - SAUCE: LSM stacking: fixup: alloc_task_ctx is dead code + - SAUCE: LSM stacking: add support for stacking getpeersec_stream + - SAUCE: LSM stacking: add stacking support to apparmor network hooks + - SAUCE: LSM stacking: fixup apparmor stacking enablement + - SAUCE: LSM stacking: fixup stacking kconfig + - SAUCE: LSM stacking: allow selecting multiple LSMs using kernel boot params + - SAUCE: LSM stacking: provide prctl interface for setting context + - SAUCE: LSM stacking: inherit current display LSM + - SAUCE: LSM stacking: keep an index for each registered LSM + - SAUCE: LSM stacking: verify display LSM + - SAUCE: LSM stacking: provide a way to specify the default display lsm + - SAUCE: LSM stacking: make sure LSM blob align on 64 bit boundaries + - SAUCE: LSM stacking: add /proc//attr/display_lsm + - SAUCE: LSM stacking: add Kconfig to set default display LSM + - SAUCE: LSM stacking: add configs for LSM stacking + - SAUCE: LSM stacking: check for invalid zero sized writes + - [Config] Run updateconfigs after merging LSM stacking + - [Config] CONFIG_AMD_MEM_ENCRYPT=y + * Rebase to v4.14 + + [ Ubuntu: 4.14.0-6.8 ] + + * Miscellaneous Ubuntu changes + - SAUCE: add workarounds to enable ZFS for 4.14 + * Rebase to v4.14-rc8 + + [ Ubuntu: 4.14.0-5.7 ] + + * Miscellaneous Ubuntu changes + - [Debian] Fix invocation of dh_prep for dbgsym packages + + [ Ubuntu: 4.14.0-4.5 ] + + * Miscellaneous Ubuntu changes + - [Packaging] virtualbox -- reduce in kernel module versions + - vbox-update: Fix up KERN_DIR definitions + - ubuntu: vbox -- update to 5.2.0-dfsg-2 + - [Config] CONFIG_AMD_MEM_ENCRYPT=n + * Rebase to v4.14-rc7 + + [ Ubuntu: 4.14.0-3.4 ] + + * Touchpad and TrackPoint Dose Not Work on Lenovo X1C6 and X280 (LP: #1723986) + - SAUCE: Input: synaptics-rmi4 - RMI4 can also use SMBUS version 3 + - SAUCE: Input: synaptics - Lenovo X1 Carbon 5 should use SMBUS/RMI + - SAUCE: Input: synaptics - add Intertouch support on X1 Carbon 6th and X280 + * powerpc/64s: Add workaround for P9 vector CI load issuenext (LP: #1721070) + - powerpc/64s: Add workaround for P9 vector CI load issue + * Miscellaneous Ubuntu changes + - SAUCE: staging: vboxvideo: Fix reporting invalid suggested-offset-properties + - [Config] CONFIG_DRM_VBOXVIDEO=m + - SAUCE: Import aufs driver + - [Config] Enable aufs + - [Config] Reorder annotations file after enabling aufs + - vbox-update: Disable imported vboxvideo module + - ubuntu: vbox -- update to 5.1.30-dfsg-1 + - Enable vbox + - hio: Use correct sizes when initializing ssd_index_bits* arrays + - hio: Update io stat accounting for 4.14 + - Enable hio + * Rebase to v4.14-rc5 + * Rebase to v4.14-rc6 + + [ Ubuntu: 4.14.0-2.3 ] + + * [Bug] USB controller failed to respond on Denverton after loading + intel_th_pci module (LP: #1715833) + - SAUCE: PCI: Disable broken RTIT_BAR of Intel TH + * CONFIG_DEBUG_FS is not enabled by "make zfcpdump_defconfig" with Ubuntu + 17.10 (kernel 4.13) (LP: #1719290) + - SAUCE: s390: update zfcpdump_defconfig + * Add installer support for Broadcom BCM573xx network drivers. (LP: #1720466) + - d-i: Add bnxt_en to nic-modules. + * Miscellaneous Ubuntu changes + - [Config] Update annotations for 4.14-rc2 + * Rebase to v4.14-rc3 + * Rebase to v4.14-rc4 + + [ Ubuntu: 4.14.0-1.2 ] + + * [Bug] USB 3.1 Gen2 works as 5Gbps (LP: #1720045) + - xhci: set missing SuperSpeedPlus Link Protocol bit in roothub descriptor + * Please make linux-libc-dev Provide: aufs-dev (LP: #1716091) + - [Packaging] Add aufs-dev to the Provides: for linux-libc-dev + * Upgrade to 4.13.0-11.12 in artful amd64 VM breaks display on wayland + (LP: #1718679) + - [Config] CONFIG_DRM_VBOXVIDEO=n + * ipmmu-vmsa driver breaks arm64 boots (LP: #1718734) + - [Config] Disable CONFIG_IPMMU_VMSA on arm64 + * autopkgtest profile fails to build on armhf (LP: #1717920) + - [Packaging] autopkgtest -- disable d-i when dropping flavours + * Miscellaneous Ubuntu changes + - [Config] CONFIG_I2C_XLP9XX=m + - [Packaging] Use SRCPKGNAME rather than hard-coding the source package name + * Rebase to v4.14-rc2 + + [ Ubuntu: 4.14.0-0.1 ] + + * Miscellaneous Ubuntu changes + - Disable vbox build + - Disable hio build + - Disable zfs build + * Rebase to v4.14-rc1 + + -- Marcelo Henrique Cerri Thu, 01 Feb 2018 11:56:07 -0200 + +linux-azure (4.15.0-1000.0) bionic; urgency=low + + * Empty. + + -- Marcelo Henrique Cerri Wed, 31 Jan 2018 15:15:26 -0200 + +linux-azure (4.13.0-1008.11) xenial; urgency=low + + * linux-azure: 4.13.0-1008.11 -proposed tracker (LP: #1745669) + + * [Hyper-V] x86/hyperv: Stop suppressing X86_FEATURE_PCID (LP: #1745247) + - x86/hyperv: Stop suppressing X86_FEATURE_PCID + + * [Hyper-V] scsi: storvsc: Spread interrupts when picking a channel for I/O + requests (LP: #1745260) + - SAUCE: scsi: storvsc: Spread interrupts when picking a channel for I/O + requests + + * [Hyper-V] scsi: storvsc: Increase cmd_per_lun for higher speed devices + (LP: #1745261) + - SAUCE: scsi: storvsc: Increase cmd_per_lun for higher speed devices + - [Config] CONFIG_SCSI_MQ_DEFAULT=y + + -- Marcelo Henrique Cerri Mon, 29 Jan 2018 10:58:22 -0200 + +linux-azure (4.13.0-1007.9) xenial; urgency=low + + [ Ubuntu: 4.13.0-32.35 ] + + * CVE-2017-5715 // CVE-2017-5753 + - SAUCE: x86/entry: Fix up retpoline assembler labels + + [ Ubuntu: 4.13.0-31.34 ] + + * linux: 4.13.0-31.34 -proposed tracker (LP: #1744294) + * CVE-2017-5715 // CVE-2017-5753 + - SAUCE: s390: improve cpu alternative handling for gmb and nobp + - SAUCE: s390: print messages for gmb and nobp + - [Config] KERNEL_NOBP=y + + [ Ubuntu: 4.13.0-30.33 ] + + * linux: 4.13.0-30.33 -proposed tracker (LP: #1743412) + * Do not duplicate changelog entries assigned to more than one bug or CVE + (LP: #1743383) + - [Packaging] git-ubuntu-log -- handle multiple bugs/cves better + * Unable to handle kernel NULL pointer dereference at isci_task_abort_task + (LP: #1726519) + - Revert "scsi: libsas: allow async aborts" + * CVE-2017-5715 // CVE-2017-5753 + - SAUCE: x86/microcode: Extend post microcode reload to support IBPB feature + -- repair missmerge + - Revert "x86/svm: Add code to clear registers on VM exit" + - kvm: vmx: Scrub hardware GPRs at VM-exit + + -- Stefan Bader Thu, 25 Jan 2018 11:18:29 +0100 + +linux-azure (4.13.0-1006.8) xenial; urgency=low + + * linux-azure: 4.13.0-1006.8 -proposed tracker (LP: #1742723) + + + [ Ubuntu: 4.13.0-29.32 ] + + * linux: 4.13.0-29.32 -proposed tracker (LP: #1742722) + * CVE-2017-5754 + - Revert "x86/cpu: Implement CPU vulnerabilites sysfs functions" + - Revert "sysfs/cpu: Fix typos in vulnerability documentation" + - Revert "sysfs/cpu: Add vulnerability folder" + - Revert "UBUNTU: [Config] updateconfigs to enable + GENERIC_CPU_VULNERABILITIES" + + [ Ubuntu: 4.13.0-28.31 ] + + * CVE-2017-5753 + - SAUCE: x86/kvm: Fix stuff_RSB() for 32-bit + * CVE-2017-5715 + - SAUCE: x86/kvm: Fix stuff_RSB() for 32-bit + + [ Ubuntu: 4.13.0-27.30 ] + + * CVE-2017-5753 + - locking/barriers: introduce new memory barrier gmb() + - bpf: prevent speculative execution in eBPF interpreter + - x86, bpf, jit: prevent speculative execution when JIT is enabled + - uvcvideo: prevent speculative execution + - carl9170: prevent speculative execution + - p54: prevent speculative execution + - qla2xxx: prevent speculative execution + - cw1200: prevent speculative execution + - Thermal/int340x: prevent speculative execution + - userns: prevent speculative execution + - ipv6: prevent speculative execution + - fs: prevent speculative execution + - net: mpls: prevent speculative execution + - udf: prevent speculative execution + - x86/feature: Enable the x86 feature to control Speculation + - x86/feature: Report presence of IBPB and IBRS control + - x86/enter: MACROS to set/clear IBRS and set IBPB + - x86/enter: Use IBRS on syscall and interrupts + - x86/idle: Disable IBRS entering idle and enable it on wakeup + - x86/idle: Disable IBRS when offlining cpu and re-enable on wakeup + - x86/mm: Set IBPB upon context switch + - x86/mm: Only set IBPB when the new thread cannot ptrace current thread + - x86/entry: Stuff RSB for entry to kernel for non-SMEP platform + - x86/kvm: add MSR_IA32_SPEC_CTRL and MSR_IA32_PRED_CMD to kvm + - x86/kvm: Set IBPB when switching VM + - x86/kvm: Toggle IBRS on VM entry and exit + - x86/kvm: Pad RSB on VM transition + - x86/spec_ctrl: Add sysctl knobs to enable/disable SPEC_CTRL feature + - x86/spec_ctrl: Add lock to serialize changes to ibrs and ibpb control + - x86/syscall: Clear unused extra registers on syscall entrance + - x86/syscall: Clear unused extra registers on 32-bit compatible syscall + entrance + - x86/entry: Use retpoline for syscall's indirect calls + - x86/cpu/AMD: Add speculative control support for AMD + - x86/microcode: Extend post microcode reload to support IBPB feature + - KVM: SVM: Do not intercept new speculative control MSRs + - x86/svm: Set IBRS value on VM entry and exit + - x86/svm: Set IBPB when running a different VCPU + - KVM: x86: Add speculative control CPUID support for guests + - x86/svm: Add code to clobber the RSB on VM exit + - x86/svm: Add code to clear registers on VM exit + - x86/cpu/AMD: Remove now unused definition of MFENCE_RDTSC feature + - powerpc: add gmb barrier + - s390/spinlock: add gmb memory barrier + - x86/microcode/AMD: Add support for fam17h microcode loading + * CVE-2017-5715 + - locking/barriers: introduce new memory barrier gmb() + - bpf: prevent speculative execution in eBPF interpreter + - x86, bpf, jit: prevent speculative execution when JIT is enabled + - uvcvideo: prevent speculative execution + - carl9170: prevent speculative execution + - p54: prevent speculative execution + - qla2xxx: prevent speculative execution + - cw1200: prevent speculative execution + - Thermal/int340x: prevent speculative execution + - userns: prevent speculative execution + - ipv6: prevent speculative execution + - fs: prevent speculative execution + - net: mpls: prevent speculative execution + - udf: prevent speculative execution + - x86/feature: Enable the x86 feature to control Speculation + - x86/feature: Report presence of IBPB and IBRS control + - x86/enter: MACROS to set/clear IBRS and set IBPB + - x86/enter: Use IBRS on syscall and interrupts + - x86/idle: Disable IBRS entering idle and enable it on wakeup + - x86/idle: Disable IBRS when offlining cpu and re-enable on wakeup + - x86/mm: Set IBPB upon context switch + - x86/mm: Only set IBPB when the new thread cannot ptrace current thread + - x86/entry: Stuff RSB for entry to kernel for non-SMEP platform + - x86/kvm: add MSR_IA32_SPEC_CTRL and MSR_IA32_PRED_CMD to kvm + - x86/kvm: Set IBPB when switching VM + - x86/kvm: Toggle IBRS on VM entry and exit + - x86/kvm: Pad RSB on VM transition + - x86/spec_ctrl: Add sysctl knobs to enable/disable SPEC_CTRL feature + - x86/spec_ctrl: Add lock to serialize changes to ibrs and ibpb control + - x86/syscall: Clear unused extra registers on syscall entrance + - x86/syscall: Clear unused extra registers on 32-bit compatible syscall + entrance + - x86/entry: Use retpoline for syscall's indirect calls + - x86/cpu/AMD: Add speculative control support for AMD + - x86/microcode: Extend post microcode reload to support IBPB feature + - KVM: SVM: Do not intercept new speculative control MSRs + - x86/svm: Set IBRS value on VM entry and exit + - x86/svm: Set IBPB when running a different VCPU + - KVM: x86: Add speculative control CPUID support for guests + - x86/svm: Add code to clobber the RSB on VM exit + - x86/svm: Add code to clear registers on VM exit + - x86/cpu/AMD: Remove now unused definition of MFENCE_RDTSC feature + - powerpc: add gmb barrier + - s390/spinlock: add gmb memory barrier + - x86/microcode/AMD: Add support for fam17h microcode loading + * CVE-2017-5754 + - x86/pti: Enable PTI by default + - x86/pti: Make sure the user/kernel PTEs match + - x86/dumpstack: Fix partial register dumps + - x86/dumpstack: Print registers for first stack frame + - x86/process: Define cpu_tss_rw in same section as declaration + - x86/mm: Set MODULES_END to 0xffffffffff000000 + - x86/mm: Map cpu_entry_area at the same place on 4/5 level + - x86/kaslr: Fix the vaddr_end mess + - x86/events/intel/ds: Use the proper cache flush method for mapping ds + buffers + - x86/tlb: Drop the _GPL from the cpu_tlbstate export + - x86/alternatives: Add missing '\n' at end of ALTERNATIVE inline asm + - x86/pti: Rename BUG_CPU_INSECURE to BUG_CPU_MELTDOWN + - x86/pti: Unbreak EFI old_memmap + - x86/Documentation: Add PTI description + - x86/cpufeatures: Add X86_BUG_SPECTRE_V[12] + - sysfs/cpu: Add vulnerability folder + - x86/cpu: Implement CPU vulnerabilites sysfs functions + - x86/tboot: Unbreak tboot with PTI enabled + - x86/mm/pti: Remove dead logic in pti_user_pagetable_walk*() + - x86/cpu/AMD: Make LFENCE a serializing instruction + - x86/cpu/AMD: Use LFENCE_RDTSC in preference to MFENCE_RDTSC + - sysfs/cpu: Fix typos in vulnerability documentation + - x86/alternatives: Fix optimize_nops() checking + - x86/pti: Make unpoison of pgd for trusted boot work for real + - s390: introduce CPU alternatives + - s390: add ppa to kernel entry / exit + - SAUCE: powerpc: Secure memory rfi flush + - SAUCE: rfi-flush: Make DEBUG_RFI a CONFIG option + - SAUCE: rfi-flush: Add HRFI_TO_UNKNOWN and use it in denorm + - SAUCE: rfi-flush: kvmppc_skip_(H)interrupt returns to host kernel + - SAUCE: KVM: Revert the implementation of H_GET_CPU_CHARACTERISTICS + - SAUCE: rfi-flush: Implement congruence-first fallback flush + - SAUCE: rfi-flush: Make l1d_flush_type bit flags + - SAUCE: rfi-flush: Push the instruction selection down to the patching + routine + - SAUCE: rfi-flush: Expand the RFI section to two nop slots + - SAUCE: rfi-flush: Support more than one flush type at once + - SAUCE: rfi-flush: Allow HV to advertise multiple flush types + - SAUCE: rfi-flush: Add speculation barrier before ori 30,30,0 flush + - SAUCE: rfi-flush: Add barriers to the fallback L1D flushing + - SAUCE: rfi-flush: Rework powernv logic to be more cautious + - SAUCE: rfi-flush: Rework pseries logic to be more cautious + - SAUCE: rfi-flush: Put the fallback flushes in the real trampoline section + - SAUCE: rfi-flush: Fix the fallback flush to actually activate + - SAUCE: rfi-flush: Fix HRFI_TO_UNKNOWN + - SAUCE: rfi-flush: Refactor the macros so the nops are defined once + - SAUCE: rfi-flush: Add no_rfi_flush and nopti comandline options + - SAUCE: rfi-flush: Use rfi-flush in printks + - SAUCE: rfi-flush: Fallback flush add load dependency + - SAUCE: rfi-flush: Fix the 32-bit KVM build + - SAUCE: rfi-flush: Fix some RFI conversions in the KVM code + - SAUCE: rfi-flush: Make the fallback robust against memory corruption + - [Config] Disable CONFIG_PPC_DEBUG_RFI + - [Config] updateconfigs to enable GENERIC_CPU_VULNERABILITIES + * powerpc: flush L1D on return to use (LP: #1742772) + - SAUCE: powerpc: Secure memory rfi flush + - SAUCE: rfi-flush: Make DEBUG_RFI a CONFIG option + - SAUCE: rfi-flush: Add HRFI_TO_UNKNOWN and use it in denorm + - SAUCE: rfi-flush: kvmppc_skip_(H)interrupt returns to host kernel + - SAUCE: KVM: Revert the implementation of H_GET_CPU_CHARACTERISTICS + - SAUCE: rfi-flush: Implement congruence-first fallback flush + - SAUCE: rfi-flush: Make l1d_flush_type bit flags + - SAUCE: rfi-flush: Push the instruction selection down to the patching + routine + - SAUCE: rfi-flush: Expand the RFI section to two nop slots + - SAUCE: rfi-flush: Support more than one flush type at once + - SAUCE: rfi-flush: Allow HV to advertise multiple flush types + - SAUCE: rfi-flush: Add speculation barrier before ori 30,30,0 flush + - SAUCE: rfi-flush: Add barriers to the fallback L1D flushing + - SAUCE: rfi-flush: Rework powernv logic to be more cautious + - SAUCE: rfi-flush: Rework pseries logic to be more cautious + - SAUCE: rfi-flush: Put the fallback flushes in the real trampoline section + - SAUCE: rfi-flush: Fix the fallback flush to actually activate + - SAUCE: rfi-flush: Fix HRFI_TO_UNKNOWN + - SAUCE: rfi-flush: Refactor the macros so the nops are defined once + - SAUCE: rfi-flush: Add no_rfi_flush and nopti comandline options + - SAUCE: rfi-flush: Use rfi-flush in printks + - SAUCE: rfi-flush: Fallback flush add load dependency + - SAUCE: rfi-flush: Fix the 32-bit KVM build + - SAUCE: rfi-flush: Fix some RFI conversions in the KVM code + - SAUCE: rfi-flush: Make the fallback robust against memory corruption + - [Config] Disable CONFIG_PPC_DEBUG_RFI + * s390: add ppa to kernel entry/exit (LP: #1742771) + - s390: introduce CPU alternatives + - s390: add ppa to kernel entry / exit + + -- Marcelo Henrique Cerri Fri, 12 Jan 2018 10:09:43 -0200 + +linux-azure (4.13.0-1005.7) xenial; urgency=low + + * linux-azure: 4.13.0-1005.7 -proposed tracker (LP: #1741957) + + * CVE-2017-5754 + - Revert "UBUNTU: [Config] azure: updateconfigs to enable PTI" + - [Config] azure: Enable PTI with UNWINDER_FRAME_POINTER + + [ Ubuntu: 4.13.0-25.29 ] + + * linux: 4.13.0-25.29 -proposed tracker (LP: #1741955) + * CVE-2017-5754 + - Revert "UBUNTU: [Config] updateconfigs to enable PTI" + - [Config] Enable PTI with UNWINDER_FRAME_POINTER + + -- Marcelo Henrique Cerri Mon, 08 Jan 2018 19:15:21 -0200 + +linux-azure (4.13.0-1004.6) xenial; urgency=low + + * linux-azure: 4.13.0-1004.6 -proposed tracker (LP: #1741747) + + + [ Ubuntu: 4.13.0-24.28 ] + + * linux: 4.13.0-24.28 -proposed tracker (LP: #1741745) + * CVE-2017-5754 + - x86/cpu, x86/pti: Do not enable PTI on AMD processors + + -- Marcelo Henrique Cerri Sun, 07 Jan 2018 14:35:50 -0200 + +linux-azure (4.13.0-1003.5) xenial; urgency=low + + * linux-azure: 4.13.0-1003.5 -proposed tracker (LP: #1741557) + + * CVE-2017-5754 + - [Config] azure: updateconfigs to enable PTI + + [ Ubuntu: 4.13.0-23.27 ] + + * linux: 4.13.0-23.27 -proposed tracker (LP: #1741556) + * CVE-2017-5754 + - x86/mm: Add the 'nopcid' boot option to turn off PCID + - x86/mm: Enable CR4.PCIDE on supported systems + - x86/mm: Document how CR4.PCIDE restore works + - x86/entry/64: Refactor IRQ stacks and make them NMI-safe + - x86/entry/64: Initialize the top of the IRQ stack before switching stacks + - x86/entry/64: Add unwind hint annotations + - xen/x86: Remove SME feature in PV guests + - x86/xen/64: Rearrange the SYSCALL entries + - irq: Make the irqentry text section unconditional + - x86/xen/64: Fix the reported SS and CS in SYSCALL + - x86/paravirt/xen: Remove xen_patch() + - x86/traps: Simplify pagefault tracing logic + - x86/idt: Unify gate_struct handling for 32/64-bit kernels + - x86/asm: Replace access to desc_struct:a/b fields + - x86/xen: Get rid of paravirt op adjust_exception_frame + - x86/paravirt: Remove no longer used paravirt functions + - x86/entry: Fix idtentry unwind hint + - x86/mm/64: Initialize CR4.PCIDE early + - objtool: Add ORC unwind table generation + - objtool, x86: Add facility for asm code to provide unwind hints + - x86/unwind: Add the ORC unwinder + - x86/kconfig: Consolidate unwinders into multiple choice selection + - objtool: Upgrade libelf-devel warning to error for CONFIG_ORC_UNWINDER + - x86/ldt/64: Refresh DS and ES when modify_ldt changes an entry + - x86/mm: Give each mm TLB flush generation a unique ID + - x86/mm: Track the TLB's tlb_gen and update the flushing algorithm + - x86/mm: Rework lazy TLB mode and TLB freshness tracking + - x86/mm: Implement PCID based optimization: try to preserve old TLB entries + using PCID + - x86/mm: Factor out CR3-building code + - x86/mm/64: Stop using CR3.PCID == 0 in ASID-aware code + - x86/mm: Flush more aggressively in lazy TLB mode + - Revert "x86/mm: Stop calling leave_mm() in idle code" + - kprobes/x86: Set up frame pointer in kprobe trampoline + - x86/tracing: Introduce a static key for exception tracing + - x86/boot: Add early cmdline parsing for options with arguments + - mm, x86/mm: Fix performance regression in get_user_pages_fast() + - x86/asm: Remove unnecessary \n\t in front of CC_SET() from asm templates + - objtool: Don't report end of section error after an empty unwind hint + - x86/head: Remove confusing comment + - x86/head: Remove unused 'bad_address' code + - x86/head: Fix head ELF function annotations + - x86/boot: Annotate verify_cpu() as a callable function + - x86/xen: Fix xen head ELF annotations + - x86/xen: Add unwind hint annotations + - x86/head: Add unwind hint annotations + - ACPI / APEI: adjust a local variable type in ghes_ioremap_pfn_irq() + - x86/unwinder: Make CONFIG_UNWINDER_ORC=y the default in the 64-bit defconfig + - x86/fpu/debug: Remove unused 'x86_fpu_state' and 'x86_fpu_deactivate_state' + tracepoints + - x86/unwind: Rename unwinder config options to 'CONFIG_UNWINDER_*' + - x86/unwind: Make CONFIG_UNWINDER_ORC=y the default in kconfig for 64-bit + - bitops: Add clear/set_bit32() to linux/bitops.h + - x86/cpuid: Add generic table for CPUID dependencies + - x86/fpu: Parse clearcpuid= as early XSAVE argument + - x86/fpu: Make XSAVE check the base CPUID features before enabling + - x86/fpu: Remove the explicit clearing of XSAVE dependent features + - x86/platform/UV: Convert timers to use timer_setup() + - objtool: Print top level commands on incorrect usage + - x86/cpuid: Prevent out of bound access in do_clear_cpu_cap() + - x86/entry: Use SYSCALL_DEFINE() macros for sys_modify_ldt() + - mm/sparsemem: Allocate mem_section at runtime for CONFIG_SPARSEMEM_EXTREME=y + - x86/kasan: Use the same shadow offset for 4- and 5-level paging + - x86/xen: Provide pre-built page tables only for CONFIG_XEN_PV=y and + CONFIG_XEN_PVH=y + - x86/xen: Drop 5-level paging support code from the XEN_PV code + - ACPI / APEI: remove the unused dead-code for SEA/NMI notification type + - x86/asm: Don't use the confusing '.ifeq' directive + - x86/build: Beautify build log of syscall headers + - x86/mm/64: Rename the register_page_bootmem_memmap() 'size' parameter to + 'nr_pages' + - x86/cpufeatures: Enable new SSE/AVX/AVX512 CPU features + - x86/mm: Relocate page fault error codes to traps.h + - x86/boot: Relocate definition of the initial state of CR0 + - ptrace,x86: Make user_64bit_mode() available to 32-bit builds + - x86/entry/64: Remove the restore_c_regs_and_iret label + - x86/entry/64: Split the IRET-to-user and IRET-to-kernel paths + - x86/entry/64: Move SWAPGS into the common IRET-to-usermode path + - x86/entry/64: Simplify reg restore code in the standard IRET paths + - x86/entry/64: Shrink paranoid_exit_restore and make labels local + - x86/entry/64: Use pop instead of movq in syscall_return_via_sysret + - x86/entry/64: Merge the fast and slow SYSRET paths + - x86/entry/64: Use POP instead of MOV to restore regs on NMI return + - x86/entry/64: Remove the RESTORE_..._REGS infrastructure + - xen, x86/entry/64: Add xen NMI trap entry + - x86/entry/64: De-Xen-ify our NMI code + - x86/entry/32: Pull the MSR_IA32_SYSENTER_CS update code out of + native_load_sp0() + - x86/entry/64: Pass SP0 directly to load_sp0() + - x86/entry: Add task_top_of_stack() to find the top of a task's stack + - x86/xen/64, x86/entry/64: Clean up SP code in cpu_initialize_context() + - x86/entry/64: Stop initializing TSS.sp0 at boot + - x86/entry/64: Remove all remaining direct thread_struct::sp0 reads + - x86/entry/32: Fix cpu_current_top_of_stack initialization at boot + - x86/entry/64: Remove thread_struct::sp0 + - x86/traps: Use a new on_thread_stack() helper to clean up an assertion + - x86/entry/64: Shorten TEST instructions + - x86/cpuid: Replace set/clear_bit32() + - bitops: Revert cbe96375025e ("bitops: Add clear/set_bit32() to + linux/bitops.h") + - x86/mm: Define _PAGE_TABLE using _KERNPG_TABLE + - x86/cpufeatures: Re-tabulate the X86_FEATURE definitions + - x86/cpufeatures: Fix various details in the feature definitions + - selftests/x86/protection_keys: Fix syscall NR redefinition warnings + - selftests/x86/ldt_gdt: Robustify against set_thread_area() and LAR oddities + - selftests/x86/ldt_gdt: Add infrastructure to test set_thread_area() + - selftests/x86/ldt_gdt: Run most existing LDT test cases against the GDT as + well + - selftests/x86/ldt_get: Add a few additional tests for limits + - ACPI / APEI: Replace ioremap_page_range() with fixmap + - x86/virt, x86/platform: Merge 'struct x86_hyper' into 'struct x86_platform' + and 'struct x86_init' + - x86/virt: Add enum for hypervisors to replace x86_hyper + - drivers/misc/intel/pti: Rename the header file to free up the namespace + - x86/cpufeature: Add User-Mode Instruction Prevention definitions + - x86: Make X86_BUG_FXSAVE_LEAK detectable in CPUID on AMD + - perf/x86: Enable free running PEBS for REGS_USER/INTR + - bpf: fix build issues on um due to mising bpf_perf_event.h + - locking/barriers: Add implicit smp_read_barrier_depends() to READ_ONCE() + - locking/barriers: Convert users of lockless_dereference() to READ_ONCE() + - x86/mm/kasan: Don't use vmemmap_populate() to initialize shadow + - mm/sparsemem: Fix ARM64 boot crash when CONFIG_SPARSEMEM_EXTREME=y + - objtool: Move synced files to their original relative locations + - objtool: Move kernel headers/code sync check to a script + - objtool: Fix cross-build + - tools/headers: Sync objtool UAPI header + - objtool: Fix 64-bit build on 32-bit host + - x86/decoder: Fix and update the opcodes map + - x86/decoder: Add new TEST instruction pattern + - x86/insn-eval: Add utility functions to get segment selector + - x86/entry/64/paravirt: Use paravirt-safe macro to access eflags + - x86/unwinder/orc: Dont bail on stack overflow + - x86/unwinder: Handle stack overflows more gracefully + - x86/irq: Remove an old outdated comment about context tracking races + - x86/irq/64: Print the offending IP in the stack overflow warning + - x86/entry/64: Allocate and enable the SYSENTER stack + - x86/dumpstack: Add get_stack_info() support for the SYSENTER stack + - x86/entry/gdt: Put per-CPU GDT remaps in ascending order + - x86/mm/fixmap: Generalize the GDT fixmap mechanism, introduce struct + cpu_entry_area + - x86/kasan/64: Teach KASAN about the cpu_entry_area + - x86/entry: Fix assumptions that the HW TSS is at the beginning of cpu_tss + - x86/dumpstack: Handle stack overflow on all stacks + - x86/entry: Move SYSENTER_stack to the beginning of struct tss_struct + - x86/entry: Remap the TSS into the CPU entry area + - x86/entry/64: Separate cpu_current_top_of_stack from TSS.sp0 + - x86/espfix/64: Stop assuming that pt_regs is on the entry stack + - x86/entry/64: Use a per-CPU trampoline stack for IDT entries + - x86/entry/64: Return to userspace from the trampoline stack + - x86/entry/64: Create a per-CPU SYSCALL entry trampoline + - x86/entry/64: Move the IST stacks into struct cpu_entry_area + - x86/entry/64: Remove the SYSENTER stack canary + - x86/entry: Clean up the SYSENTER_stack code + - x86/entry/64: Make cpu_entry_area.tss read-only + - x86/paravirt: Dont patch flush_tlb_single + - x86/paravirt: Provide a way to check for hypervisors + - x86/cpufeatures: Make CPU bugs sticky + - x86/Kconfig: Limit NR_CPUS on 32-bit to a sane amount + - x86/mm/dump_pagetables: Check PAGE_PRESENT for real + - x86/mm/dump_pagetables: Make the address hints correct and readable + - x86/vsyscall/64: Explicitly set _PAGE_USER in the pagetable hierarchy + - x86/vsyscall/64: Warn and fail vsyscall emulation in NATIVE mode + - arch, mm: Allow arch_dup_mmap() to fail + - x86/ldt: Rework locking + - x86/ldt: Prevent LDT inheritance on exec + - x86/mm/64: Improve the memory map documentation + - x86/doc: Remove obvious weirdnesses from the x86 MM layout documentation + - x86/entry: Rename SYSENTER_stack to CPU_ENTRY_AREA_entry_stack + - x86/uv: Use the right TLB-flush API + - x86/microcode: Dont abuse the TLB-flush interface + - x86/mm: Use __flush_tlb_one() for kernel memory + - x86/mm: Remove superfluous barriers + - x86/mm: Add comments to clarify which TLB-flush functions are supposed to + flush what + - x86/mm: Move the CR3 construction functions to tlbflush.h + - x86/mm: Remove hard-coded ASID limit checks + - x86/mm: Put MMU to hardware ASID translation in one place + - x86/mm: Create asm/invpcid.h + - x86/cpu_entry_area: Move it to a separate unit + - x86/cpu_entry_area: Move it out of the fixmap + - init: Invoke init_espfix_bsp() from mm_init() + - x86/cpu_entry_area: Prevent wraparound in setup_cpu_entry_area_ptes() on + 32bit + - x86/cpufeatures: Add X86_BUG_CPU_INSECURE + - x86/mm/pti: Disable global pages if PAGE_TABLE_ISOLATION=y + - x86/mm/pti: Prepare the x86/entry assembly code for entry/exit CR3 switching + - x86/mm/pti: Add infrastructure for page table isolation + - x86/pti: Add the pti= cmdline option and documentation + - x86/mm/pti: Add mapping helper functions + - x86/mm/pti: Allow NX poison to be set in p4d/pgd + - x86/mm/pti: Allocate a separate user PGD + - x86/mm/pti: Populate user PGD + - x86/mm/pti: Add functions to clone kernel PMDs + - x86/mm/pti: Force entry through trampoline when PTI active + - x86/mm/pti: Share cpu_entry_area with user space page tables + - x86/entry: Align entry text section to PMD boundary + - x86/mm/pti: Share entry text PMD + - x86/mm/pti: Map ESPFIX into user space + - x86/cpu_entry_area: Add debugstore entries to cpu_entry_area + - x86/events/intel/ds: Map debug buffers in cpu_entry_area + - x86/mm/64: Make a full PGD-entry size hole in the memory map + - x86/pti: Put the LDT in its own PGD if PTI is on + - x86/pti: Map the vsyscall page if needed + - x86/mm: Allow flushing for future ASID switches + - x86/mm: Abstract switching CR3 + - x86/mm: Use/Fix PCID to optimize user/kernel switches + - x86/mm: Optimize RESTORE_CR3 + - x86/mm: Use INVPCID for __native_flush_tlb_single() + - x86/mm: Clarify the whole ASID/kernel PCID/user PCID naming + - x86/dumpstack: Indicate in Oops whether PTI is configured and enabled + - x86/mm/pti: Add Kconfig + - x86/mm/dump_pagetables: Add page table directory to the debugfs VFS + hierarchy + - x86/mm/dump_pagetables: Check user space page table for WX pages + - x86/mm/dump_pagetables: Allow dumping current pagetables + - x86/ldt: Make the LDT mapping RO + - x86/smpboot: Remove stale TLB flush invocations + - x86/mm: Remove preempt_disable/enable() from __native_flush_tlb() + - x86/ldt: Plug memory leak in error path + - x86/ldt: Make LDT pgtable free conditional + - [Config] updateconfigs to enable PTI + - kvm: x86: fix RSM when PCID is non-zero + - x86/pti: Switch to kernel CR3 at early in entry_SYSCALL_compat() + - SAUCE: only attempt to use PCID in 64 bit builds + - SAUCE: BODGE: temporarily disable some kprobe trace points which are + cratering + - s390/mm: use generic mm_hooks + - objtool: use sh to invoke sync-check.sh in the Makefile + * CVE-2017-17862 + - bpf: fix branch pruning logic + * CVE-2017-17864 + - SAUCE: bpf/verifier: Fix states_equal() comparison of pointer and UNKNOWN + * CVE-2017-16995 + - bpf: fix incorrect sign extension in check_alu_op() + * CVE-2017-17863 + - SAUCE: bpf: reject out-of-bounds stack pointer calculation + + [ Ubuntu: 4.13.0-21.24 ] + + * linux: 4.13.0-21.24 -proposed tracker (LP: #1738823) + * Ubuntu 17.10 corrupting BIOS - many LENOVO laptops models (LP: #1734147) + - [Config] CONFIG_SPI_INTEL_SPI_PLATFORM=n + + -- Marcelo Henrique Cerri Sat, 06 Jan 2018 19:32:50 -0200 + +linux-azure (4.13.0-1002.3) xenial; urgency=low + + * linux-azure: 4.13.0-1002.3 -proposed tracker (LP: #1737951) + + * [hyper-v] reloading netvsc issue on linux-azure 4.13.0-1001.1 (LP: #1735546) + - hv_netvsc: netvsc_teardown_gpadl() split + + * linux-azure-edge: [Ubuntu-azure-edge-4.13.0-1005.5]: refresh the rescind- + handling, hv_sock and vPCI drivers (LP: #1736283) + - Revert "UBUNTU: SAUCE: hv-sock: avoid double FINs if shutdown() is called" + - Revert "UBUNTU: SAUCE: hv-sock: a temporary workaround for the + pending_send_size issue" + - Revert "UBUNTU: SAUCE: hvsock: fix a race in hvs_stream_dequeue()" + - Revert "UBUNTU: SAUCE: hv_sock: add the support of auto-loading" + - Revert "UBUNTU: SAUCE: hv_sock: implements Hyper-V transport for Virtual + Sockets (AF_VSOCK)" + - Revert "UBUNTU: SAUCE: vmbus: dynamically enqueue/dequeue a channel on + vmbus_open/close" + - Revert "UBUNTU: SAUCE: vmbus: remove "goto error_clean_msglist" in + vmbus_open()" + - Revert "UBUNTU: SAUCE: vmbus: vmbus_open(): reset onchannel_callback on + error" + - Revert "UBUNTU: SAUCE: tools: hv_sock: 2 simple test cases." + - Revert "UBUNTU: SAUCE: hvsock: fix vsock_dequeue/enqueue_accept race" + - Revert "UBUNTU:SAUCE: vmbus: suppress uevents for hv_sock devices" + - Revert "UBUNTU: SAUCE: vmbus: add vmbus onoffer/onoffer_rescind sync." + - Revert "UBUNTU: SAUCE: vmbus: fix hv_percpu_channel_deq/enq race" + - SAUCE: vmbus: unregister device_obj->channels_kset + - Drivers: hv: vmbus: Fix a rescind issue + - vmbus: hvsock: add proper sync for vmbus_hvsock_device_unregister() + - hv_sock: implements Hyper-V transport for Virtual Sockets (AF_VSOCK) + - hv_sock: add locking in the open/close/release code paths + - PCI: hv: Use effective affinity mask + + [ Ubuntu: 4.13.0-19.22 ] + + * linux: 4.13.0-19.22 -proposed tracker (LP: #1736118) + * CVE-2017-1000405 + - mm, thp: Do not make page table dirty unconditionally in touch_p[mu]d() + + -- Marcelo Henrique Cerri Wed, 13 Dec 2017 09:00:12 -0200 + +linux-azure (4.13.0-1001.1) xenial; urgency=low + + * linux-azure: 4.13.0-1001.1 -proposed tracker (LP: #1733535) + + * TLB updates from 4.14 for linux-azure (LP: #1729412) + - x86/hyperv: Clear vCPU banks between calls to avoid flushing unneeded vCPUs + - x86/hyperv: Don't use percpu areas for pcpu_flush/pcpu_flush_ex structures + - x86/hyperv: Fix hypercalls with extended CPU ranges for TLB flushing + + * Update linux-azure and linux-azure-edge kernels with 4.13 patches + (LP: #1731994) + - SAUCE: Adding file to support building user level daemon + - vmbus: remove unused vmbus_sendpacket_multipagebuffer + - vmbus: remove unused vmbus_sendpacket_ctl + - SAUCE: x86/hyper-v: sync fast hypercall implementation with 4.14 + - x86/hyper-v: Use hypercall for remote TLB flush + - x86/hyper-v: Support extended CPU ranges for TLB flush hypercalls + - tracing/hyper-v: Trace hyperv_mmu_flush_tlb_others() + - netvsc: force link update after MTU change + - netvsc: need rcu_derefence when accessing internal device info + - netvsc: save pointer to parent netvsc_device in channel table + - netvsc: add rtnl annotations in rndis + - netvsc: fix ptr_ret.cocci warnings + - netvsc: remove bogus rtnl_unlock + - netvsc: Remove redundant use of ipv6_hdr() + - netvsc: fix netvsc_set_channels + - netvsc: remove no longer used max_num_rss queues + - netvsc: fix return value for set_channels + - netvsc: fix warnings reported by lockdep + - netvsc: don't print pointer value in error message + - netvsc: remove unnecessary indirection of page_buffer + - netvsc: fix error unwind on device setup failure + - netvsc: signal host if receive ring is emptied + - hyperv: netvsc: Neaten netvsc_send_pkt by using a temporary + - netvsc: check error return when restoring channels and mtu + - netvsc: no need to allocate send/receive on numa node + - netvsc: keep track of some non-fatal overload conditions + - Tools: hv: vss: Skip freezing filesystems backed by loop + - Drivers: hv: balloon: Correctly update onlined page count + - Drivers: hv: balloon: Show the max dynamic memory assigned + - Drivers: hv: balloon: Initialize last_post_time on startup + - Drivers: hv: kvp: Use MAX_ADAPTER_ID_SIZE for translating adapter id + - netvsc: don't signal host twice if empty + - SAUCE: vmbus: simplify packet iterator + - SAUCE: vmbus: fix performance regression + - netvsc: whitespace cleanup + - netvsc: remove unnecessary cast of void pointer + - netvsc: remove unnecessary check for NULL hdr + - Tools: hv: fix snprintf warning in kvp_daemon + - Tools: hv: update buffer handling in hv_fcopy_daemon + - SAUCE: vmbus: suppress uevents for hv_sock devices + - hv_netvsc: Clean up unused parameter from netvsc_get_hash() + - hv_netvsc: Clean up unused parameter from netvsc_get_rss_hash_opts() + - hv_netvsc: Add ethtool handler to set and get UDP hash levels + - SAUCE: vmbus: add per-channel sysfs info + - SAUCE: vmbus: expose per-channel interrupts and events counters + - SAUCE: vmbus: make vmbus_set_event local + - hv_netvsc: Fix rndis_filter_close error during netvsc_remove + - netvsc: cleanup datapath switch + - netvsc: allow driver to be removed even if VF is present + - hv_netvsc: Clean up an unused parameter in rndis_filter_set_rss_param() + - hv_netvsc: Simplify num_chn checking in rndis_filter_device_add() + - hv_netvsc: Simplify the limit check in netvsc_set_channels() + - hv_netvsc: Fix the channel limit in netvsc_set_rxfh() + - SAUCE: netvsc: defer initializing sub-channels + - hv_netvsc: avoid unnecessary wakeups on subchannel creation + - netvsc: pass net_device to netvsc_init_buf and netvsc_connect_vsp + + * linux-azure-edge: Rebase to Artful Ubuntu-4.13.0-17.20 (LP: #1730444) + - [Debian] Sync debian/control templates with Artful + - [Config] updateconfigs after rebase to Ubuntu-4.13.0-17.20 + + * Rebase linux-azure to 4.13 (LP: #1719610) + - SAUCE: netvsc: do not use get_outbound_net_device() + - SAUCE: vmbus-rdma: rename struct ib_ah_attr to rdma_ah_attr + - [Config] updateconfigs for 4.13 + + [ Ubuntu: 4.13.0-18.21 ] + + * linux: 4.13.0-18.21 -proposed tracker (LP: #1733530) + * NVMe timeout is too short (LP: #1729119) + - nvme: update timeout module parameter type + * CPU call trace on AMD Raven Ridge after S3 (LP: #1732894) + - x86/mce/AMD: Allow any CPU to initialize the smca_banks array + * Set PANIC_TIMEOUT=10 on Power Systems (LP: #1730660) + - [Config]: Set PANIC_TIMEOUT=10 on ppc64el + * Cannot pair BLE remote devices when using combo BT SoC (LP: #1731467) + - Bluetooth: increase timeout for le auto connections + * enable CONFIG_SND_SOC_INTEL_BYT_CHT_NOCODEC_MACH easily confuse users + (LP: #1732627) + - [Config] CONFIG_SND_SOC_INTEL_BYT_CHT_NOCODEC_MACH=n + * Plantronics P610 does not support sample rate reading (LP: #1719853) + - ALSA: usb-audio: Add sample rate quirk for Plantronics P610 + * Allow drivers to use Relaxed Ordering on capable root ports (LP: #1721365) + - Revert commit 1a8b6d76dc5b ("net:add one common config...") + - net: ixgbe: Use new PCI_DEV_FLAGS_NO_RELAXED_ORDERING flag + * support GICv3 ITS save/restore & migration (LP: #1710019) + - KVM: arm/arm64: vgic-its: Fix return value for device table restore + * Device hotplugging with MPT SAS cannot work for VMWare ESXi (LP: #1730852) + - scsi: mptsas: Fixup device hotplug for VMWare ESXi + * Artful update to 4.13.13 stable release (LP: #1732726) + - netfilter: nat: Revert "netfilter: nat: convert nat bysrc hash to + rhashtable" + - netfilter: nft_set_hash: disable fast_ops for 2-len keys + - workqueue: Fix NULL pointer dereference + - crypto: ccm - preserve the IV buffer + - crypto: x86/sha1-mb - fix panic due to unaligned access + - crypto: x86/sha256-mb - fix panic due to unaligned access + - KEYS: fix NULL pointer dereference during ASN.1 parsing [ver #2] + - ACPI / PM: Blacklist Low Power S0 Idle _DSM for Dell XPS13 9360 + - ARM: 8720/1: ensure dump_instr() checks addr_limit + - ALSA: timer: Limit max instances per timer + - ALSA: usb-audio: support new Amanero Combo384 firmware version + - ALSA: hda - fix headset mic problem for Dell machines with alc274 + - ALSA: seq: Fix OSS sysex delivery in OSS emulation + - ALSA: seq: Avoid invalid lockdep class warning + - MIPS: Fix CM region target definitions + - MIPS: BMIPS: Fix missing cbr address + - MIPS: AR7: Defer registration of GPIO + - MIPS: AR7: Ensure that serial ports are properly set up + - KVM: PPC: Book3S HV: Fix exclusion between HPT resizing and other HPT + updates + - Input: elan_i2c - add ELAN060C to the ACPI table + - rbd: use GFP_NOIO for parent stat and data requests + - drm/vmwgfx: Fix Ubuntu 17.10 Wayland black screen issue + - Revert "x86: CPU: Fix up "cpu MHz" in /proc/cpuinfo" + - can: sun4i: handle overrun in RX FIFO + - can: peak: Add support for new PCIe/M2 CAN FD interfaces + - can: ifi: Fix transmitter delay calculation + - can: c_can: don't indicate triple sampling support for D_CAN + - x86/debug: Handle warnings before the notifier chain, to fix KGDB crash + - x86/smpboot: Make optimization of delay calibration work correctly + - x86/oprofile/ppro: Do not use __this_cpu*() in preemptible context + - Linux 4.13.13 + * ELANTECH Touchpad is not detected in 'Lenovo Ideapad 320 14AST' after fresh + install (LP: #1727544) + - Input: elan_i2c - add ELAN060C to the ACPI table + * Power8 Nest PMU Instrumentation support (LP: #1481347) + - powerpc/powernv: Add IMC OPAL APIs + - powerpc/powernv: Detect and create IMC device + - powerpc/perf: Add nest IMC PMU support + - powerpc/perf: Add core IMC PMU support + - powerpc/perf: Add thread IMC PMU support + - powerpc/perf: Fix double unlock in imc_common_cpuhp_mem_free() + - powerpc/perf/imc: Fix nest events on muti socket system + - powerpc/powernv: Fix build error in opal-imc.c when NUMA=n + - powerpc/perf: Fix usage of nest_imc_refc + - powerpc/perf: Fix for core/nest imc call trace on cpuhotplug + - powerpc/perf: Add ___GFP_NOWARN flag to alloc_pages_node() + - powerpc/perf: Fix IMC initialization crash + * Artful update to 4.13.12 stable release (LP: #1731971) + - ALSA: timer: Add missing mutex lock for compat ioctls + - ALSA: seq: Fix nested rwsem annotation for lockdep splat + - cifs: check MaxPathNameComponentLength != 0 before using it + - KEYS: return full count in keyring_read() if buffer is too small + - KEYS: trusted: fix writing past end of buffer in trusted_read() + - KEYS: fix out-of-bounds read during ASN.1 parsing + - ASoC: adau17x1: Workaround for noise bug in ADC + - virtio_blk: Fix an SG_IO regression + - arm64: ensure __dump_instr() checks addr_limit + - KVM: arm64: its: Fix missing dynamic allocation check in scan_its_table + - arm/arm64: KVM: set right LR register value for 32 bit guest when inject + abort + - arm/arm64: kvm: Disable branch profiling in HYP code + - ARM: dts: mvebu: pl310-cache disable double-linefill + - ARM: 8715/1: add a private asm/unaligned.h + - drm/amdgpu: return -ENOENT from uvd 6.0 early init for harvesting + - drm/amdgpu: allow harvesting check for Polaris VCE + - userfaultfd: hugetlbfs: prevent UFFDIO_COPY to fill beyond the end of i_size + - ocfs2: fstrim: Fix start offset of first cluster group during fstrim + - fs/hugetlbfs/inode.c: fix hwpoison reserve accounting + - mm, swap: fix race between swap count continuation operations + - drm/i915: Do not rely on wm preservation for ILK watermarks + - drm/i915/edp: read edp display control registers unconditionally + - Revert "powerpc64/elfv1: Only dereference function descriptor for non-text + symbols" + - MIPS: bpf: Fix a typo in build_one_insn() + - MIPS: smp-cmp: Use right include for task_struct + - MIPS: microMIPS: Fix incorrect mask in insn_table_MM + - MIPS: SMP: Fix deadlock & online race + - Revert "x86: do not use cpufreq_quick_get() for /proc/cpuinfo "cpu MHz"" + - x86: CPU: Fix up "cpu MHz" in /proc/cpuinfo + - powerpc/kprobes: Dereference function pointers only if the address does not + belong to kernel text + - futex: Fix more put_pi_state() vs. exit_pi_state_list() races + - perf/cgroup: Fix perf cgroup hierarchy support + - x86/mcelog: Get rid of RCU remnants + - irqchip/irq-mvebu-gicp: Add missing spin_lock init + - Linux 4.13.12 + * Artful update to 4.13.11 stable release (LP: #1731961) + - workqueue: replace pool->manager_arb mutex with a flag + - nvme-fc: fix iowait hang + - ALSA: hda/realtek - Add support for ALC236/ALC3204 + - ALSA: hda - fix headset mic problem for Dell machines with alc236 + - ceph: unlock dangling spinlock in try_flush_caps() + - Fix tracing sample code warning. + - KVM: PPC: Fix oops when checking KVM_CAP_PPC_HTM + - KVM: PPC: Book3S HV: POWER9 more doorbell fixes + - KVM: PPC: Book3S: Protect kvmppc_gpa_to_ua() with SRCU + - s390/kvm: fix detection of guest machine checks + - nbd: handle interrupted sendmsg with a sndtimeo set + - spi: uapi: spidev: add missing ioctl header + - spi: a3700: Return correct value on timeout detection + - spi: bcm-qspi: Fix use after free in bcm_qspi_probe() in error path + - spi: armada-3700: Fix failing commands with quad-SPI + - ovl: add NULL check in ovl_alloc_inode + - ovl: fix EIO from lookup of non-indexed upper + - ovl: handle ENOENT on index lookup + - ovl: do not cleanup unsupported index entries + - fuse: fix READDIRPLUS skipping an entry + - xen/gntdev: avoid out of bounds access in case of partial gntdev_mmap() + - xen: fix booting ballooned down hvm guest + - cifs: Select all required crypto modules + - CIFS: Fix NULL pointer deref on SMB2_tcon() failure + - Input: elan_i2c - add ELAN0611 to the ACPI table + - Input: gtco - fix potential out-of-bound access + - Fix encryption labels and lengths for SMB3.1.1 + - SMB3: Validate negotiate request must always be signed + - assoc_array: Fix a buggy node-splitting case + - scsi: zfcp: fix erp_action use-before-initialize in REC action trace + - scsi: aacraid: Fix controller initialization failure + - scsi: qla2xxx: Initialize Work element before requesting IRQs + - scsi: sg: Re-fix off by one in sg_fill_request_table() + - x86/cpu/AMD: Apply the Erratum 688 fix when the BIOS doesn't + - drm/amd/powerplay: fix uninitialized variable + - drm/i915/perf: fix perf enable/disable ioctls with 32bits userspace + - can: sun4i: fix loopback mode + - can: kvaser_usb: Correct return value in printout + - can: kvaser_usb: Ignore CMD_FLUSH_QUEUE_REPLY messages + - cfg80211: fix connect/disconnect edge cases + - ipsec: Fix aborted xfrm policy dump crash + - regulator: fan53555: fix I2C device ids + - powerpc/xive: Fix the size of the cpumask used in xive_find_target_in_mask() + - Linux 4.13.11 + * Touchpad not detected - Lenovo ideapad 320-15IKB (LP: #1723736) + - Input: elan_i2c - add ELAN0611 to the ACPI table + * Artful update to 4.13.10 stable release (LP: #1731951) + - staging: bcm2835-audio: Fix memory corruption + - USB: devio: Revert "USB: devio: Don't corrupt user memory" + - USB: core: fix out-of-bounds access bug in usb_get_bos_descriptor() + - USB: serial: metro-usb: add MS7820 device id + - usb: cdc_acm: Add quirk for Elatec TWN3 + - usb: quirks: add quirk for WORLDE MINI MIDI keyboard + - usb: hub: Allow reset retry for USB2 devices on connect bounce + - ALSA: usb-audio: Add native DSD support for Pro-Ject Pre Box S2 Digital + - can: gs_usb: fix busy loop if no more TX context is available + - scsi: qla2xxx: Fix uninitialized work element + - nbd: don't set the device size until we're connected + - s390/cputime: fix guest/irq/softirq times after CPU hotplug + - parisc: Fix double-word compare and exchange in LWS code on 32-bit kernels + - parisc: Fix detection of nonsynchronous cr16 cycle counters + - iio: dummy: events: Add missing break + - usb: musb: sunxi: Explicitly release USB PHY on exit + - USB: musb: fix session-bit runtime-PM quirk + - USB: musb: fix late external abort on suspend + - usb: musb: musb_cppi41: Fix the address of teardown and autoreq registers + - usb: musb: musb_cppi41: Fix cppi41_set_dma_mode() for DA8xx + - usb: musb: musb_cppi41: Configure the number of channels for DA8xx + - usb: musb: Check for host-mode using is_host_active() on reset interrupt + - xhci: Identify USB 3.1 capable hosts by their port protocol capability + - xhci: Cleanup current_cmd in xhci_cleanup_command_queue() + - usb: xhci: Reset halted endpoint if trb is noop + - usb: xhci: Handle error condition in xhci_stop_device() + - can: esd_usb2: Fix can_dlc value for received RTR, frames + - can: af_can: can_pernet_init(): add missing error handling for kzalloc + returning NULL + - can: flexcan: fix state transition regression + - can: flexcan: rename legacy error state quirk + - can: flexcan: implement error passive state quirk + - can: flexcan: fix i.MX6 state transition issue + - can: flexcan: fix i.MX28 state transition issue + - can: flexcan: fix p1010 state transition issue + - KEYS: encrypted: fix dereference of NULL user_key_payload + - mmc: sdhci-pci: Fix default d3_retune for Intel host controllers + - drm/i915: Use bdw_ddi_translations_fdi for Broadwell + - drm/nouveau/kms/nv50: fix oops during DP IRQ handling on non-MST boards + - drm/nouveau/bsp/g92: disable by default + - drm/nouveau/mmu: flush tlbs before deleting page tables + - media: s5p-cec: add NACK detection support + - media: cec: Respond to unregistered initiators, when applicable + - media: dvb: i2c transfers over usb cannot be done from stack + - tracing/samples: Fix creation and deletion of simple_thread_fn creation + - ALSA: seq: Enable 'use' locking in all configurations + - ALSA: hda: Remove superfluous '-' added by printk conversion + - ALSA: hda: Abort capability probe at invalid register read + - i2c: ismt: Separate I2C block read from SMBus block read + - i2c: piix4: Fix SMBus port selection for AMD Family 17h chips + - Revert "tools/power turbostat: stop migrating, unless '-m'" + - Input: stmfts - fix setting ABS_MT_POSITION_* maximum size + - brcmfmac: Add check for short event packets + - brcmsmac: make some local variables 'static const' to reduce stack size + - ARM: dts: sun6i: Fix endpoint IDs in second display pipeline + - bus: mbus: fix window size calculation for 4GB windows + - clockevents/drivers/cs5535: Improve resilience to spurious interrupts + - rtlwifi: rtl8821ae: Fix connection lost problem + - x86/microcode/intel: Disable late loading on model 79 + - lib/digsig: fix dereference of NULL user_key_payload + - fscrypt: fix dereference of NULL user_key_payload + - ecryptfs: fix dereference of NULL user_key_payload + - KEYS: Fix race between updating and finding a negative key + - FS-Cache: fix dereference of NULL user_key_payload + - KEYS: don't let add_key() update an uninstantiated key + - pkcs7: Prevent NULL pointer dereference, since sinfo is not always set. + - arm64: dts: rockchip: correct vqmmc voltage for rk3399 platforms + - ALSA: hda - Fix incorrect TLV callback check introduced during set_fs() + removal + - iomap_dio_rw: Allocate AIO completion queue before submitting dio + - xfs: don't unconditionally clear the reflink flag on zero-block files + - xfs: evict CoW fork extents when performing finsert/fcollapse + - fs/xfs: Use %pS printk format for direct addresses + - xfs: report zeroed or not correctly in xfs_zero_range() + - xfs: update i_size after unwritten conversion in dio completion + - xfs: perag initialization should only touch m_ag_max_usable for AG 0 + - xfs: Capture state of the right inode in xfs_iflush_done + - xfs: always swap the cow forks when swapping extents + - xfs: handle racy AIO in xfs_reflink_end_cow + - xfs: Don't log uninitialised fields in inode structures + - xfs: move more RT specific code under CONFIG_XFS_RT + - xfs: don't change inode mode if ACL update fails + - xfs: reinit btree pointer on attr tree inactivation walk + - xfs: handle error if xfs_btree_get_bufs fails + - xfs: cancel dirty pages on invalidation + - xfs: trim writepage mapping to within eof + - xfs: move two more RT specific functions into CONFIG_XFS_RT + - Linux 4.13.10 + * Artful update to 4.13.9 stable release (LP: #1731926) + - perf pmu: Unbreak perf record for arm/arm64 with events with explicit PMU + - mm: page_vma_mapped: ensure pmd is loaded with READ_ONCE outside of lock + - HID: hid-elecom: extend to fix descriptor for HUGE trackball + - Drivers: hv: vmbus: Fix rescind handling issues + - Drivers: hv: vmbus: Fix bugs in rescind handling + - vmbus: simplify hv_ringbuffer_read + - vmbus: refactor hv_signal_on_read + - vmbus: eliminate duplicate cached index + - vmbus: more host signalling avoidance + - Linux 4.13.9 + + [ Ubuntu: 4.13.0-17.20 ] + + * linux: 4.13.0-17.20 -proposed tracker (LP: #1728927) + * thunderx2 ahci errata workaround needs additional delays (LP: #1724117) + - SAUCE: ahci: thunderx2: stop engine fix update + * usb 3-1: 2:1: cannot get freq at ep 0x1 (LP: #1708499) + - ALSA: usb-audio: Add sample rate quirk for Plantronics C310/C520-M + * Plantronics Blackwire C520-M - Cannot get freq at ep 0x1, 0x81 + (LP: #1709282) + - ALSA: usb-audio: Add sample rate quirk for Plantronics C310/C520-M + * TSC_DEADLINE incorrectly disabled inside virtual guests (LP: #1724912) + - x86/apic: Silence "FW_BUG TSC_DEADLINE disabled due to Errata" on CPUs + without the feature + - x86/apic: Silence "FW_BUG TSC_DEADLINE disabled due to Errata" on + hypervisors + * x86/apic: Update TSC_DEADLINE quirk with additional SKX stepping + (LP: #1724612) + - x86/apic: Update TSC_DEADLINE quirk with additional SKX stepping + * [Artful] Add support for Dell/Wyse 3040 audio codec (LP: #1723916) + - SAUCE: ASoC: rt5670: Add support for Wyse 3040 + * [Artful] Some Dell Monitors Doesn't Work Well with Dell/Wyse 3040 + (LP: #1723915) + - SAUCE: drm/i915: Workaround for DP DPMS D3 on Dell monitor + * [Artful] Support headset mode for DELL WYSE (LP: #1723913) + - SAUCE: ALSA: hda/realtek - Add support headset mode for DELL WYSE + * Touchpad and TrackPoint Dose Not Work on Lenovo X1C6 and X280 (LP: #1723986) + - SAUCE: Input: synaptics-rmi4 - RMI4 can also use SMBUS version 3 + - SAUCE: Input: synaptics - Lenovo X1 Carbon 5 should use SMBUS/RMI + - SAUCE: Input: synaptics - add Intertouch support on X1 Carbon 6th and X280 + * Artful update to v4.13.8 stable release (LP: #1724669) + - USB: dummy-hcd: Fix deadlock caused by disconnect detection + - MIPS: math-emu: Remove pr_err() calls from fpu_emu() + - MIPS: bpf: Fix uninitialised target compiler error + - mei: always use domain runtime pm callbacks. + - dmaengine: edma: Align the memcpy acnt array size with the transfer + - dmaengine: ti-dma-crossbar: Fix possible race condition with dma_inuse + - NFS: Fix uninitialized rpc_wait_queue + - nfs/filelayout: fix oops when freeing filelayout segment + - HID: usbhid: fix out-of-bounds bug + - crypto: skcipher - Fix crash on zero-length input + - crypto: shash - Fix zero-length shash ahash digest crash + - KVM: MMU: always terminate page walks at level 1 + - KVM: nVMX: fix guest CR4 loading when emulating L2 to L1 exit + - usb: renesas_usbhs: Fix DMAC sequence for receiving zero-length packet + - pinctrl/amd: Fix build dependency on pinmux code + - iommu/amd: Finish TLB flush in amd_iommu_unmap() + - device property: Track owner device of device property + - Revert "vmalloc: back off when the current task is killed" + - fs/mpage.c: fix mpage_writepage() for pages with buffers + - ALSA: usb-audio: Kill stray URB at exiting + - ALSA: seq: Fix use-after-free at creating a port + - ALSA: seq: Fix copy_from_user() call inside lock + - ALSA: caiaq: Fix stray URB at probe error path + - ALSA: line6: Fix NULL dereference at podhd_disconnect() + - ALSA: line6: Fix missing initialization before error path + - ALSA: line6: Fix leftover URB at error-path during probe + - drm/atomic: Unref duplicated drm_atomic_state in drm_atomic_helper_resume() + - drm/i915/edp: Get the Panel Power Off timestamp after panel is off + - drm/i915: Read timings from the correct transcoder in intel_crtc_mode_get() + - drm/i915/bios: parse DDI ports also for CHV for HDMI DDC pin and DP AUX + channel + - drm/i915: Use crtc_state_is_legacy_gamma in intel_color_check + - usb: gadget: configfs: Fix memory leak of interface directory data + - usb: gadget: composite: Fix use-after-free in + usb_composite_overwrite_options + - PCI: aardvark: Move to struct pci_host_bridge IRQ mapping functions + - Revert "PCI: tegra: Do not allocate MSI target memory" + - direct-io: Prevent NULL pointer access in submit_page_section + - fix unbalanced page refcounting in bio_map_user_iov + - more bio_map_user_iov() leak fixes + - bio_copy_user_iov(): don't ignore ->iov_offset + - perf script: Add missing separator for "-F ip,brstack" (and brstackoff) + - genirq/cpuhotplug: Enforce affinity setting on startup of managed irqs + - genirq/cpuhotplug: Add sanity check for effective affinity mask + - USB: serial: ftdi_sio: add id for Cypress WICED dev board + - USB: serial: cp210x: fix partnum regression + - USB: serial: cp210x: add support for ELV TFD500 + - USB: serial: option: add support for TP-Link LTE module + - USB: serial: qcserial: add Dell DW5818, DW5819 + - USB: serial: console: fix use-after-free on disconnect + - USB: serial: console: fix use-after-free after failed setup + - RAS/CEC: Use the right length for "cec_disable" + - x86/microcode: Do the family check first + - x86/alternatives: Fix alt_max_short macro to really be a max() + - KVM: nVMX: update last_nonleaf_level when initializing nested EPT + - Linux 4.13.8 + * Artful update to v4.13.7 stable release (LP: #1724668) + - watchdog: Revert "iTCO_wdt: all versions count down twice" + - Linux 4.13.7 + * libvirt - vnc port selection regression with newer kernels (LP: #1722702) + - net: set tb->fast_sk_family + - net: use inet6_rcv_saddr to compare sockets + - inet: fix improper empty comparison + * powerpc/64s: Add workaround for P9 vector CI load issue (LP: #1721070) + - powerpc/mce: Move 64-bit machine check code into mce.c + - powerpc/64s: Add workaround for P9 vector CI load issue + * Artful update to v4.13.6 stable release (LP: #1723145) + - imx-media-of: avoid uninitialized variable warning + - usb: dwc3: ep0: fix DMA starvation by assigning req->trb on ep0 + - mlxsw: spectrum: Fix EEPROM access in case of SFP/SFP+ + - net: bonding: Fix transmit load balancing in balance-alb mode if specified + by sysfs + - openvswitch: Fix an error handling path in 'ovs_nla_init_match_and_action()' + - mlxsw: spectrum: Prevent mirred-related crash on removal + - net: bonding: fix tlb_dynamic_lb default value + - net_sched: gen_estimator: fix scaling error in bytes/packets samples + - net: sched: fix use-after-free in tcf_action_destroy and tcf_del_walker + - sctp: potential read out of bounds in sctp_ulpevent_type_enabled() + - tcp: update skb->skb_mstamp more carefully + - bpf/verifier: reject BPF_ALU64|BPF_END + - tcp: fix data delivery rate + - udpv6: Fix the checksum computation when HW checksum does not apply + - ip6_gre: skb_push ipv6hdr before packing the header in ip6gre_header + - net: phy: Fix mask value write on gmii2rgmii converter speed register + - ip6_tunnel: do not allow loading ip6_tunnel if ipv6 is disabled in cmdline + - net/sched: cls_matchall: fix crash when used with classful qdisc + - 8139too: revisit napi_complete_done() usage + - bpf: do not disable/enable BH in bpf_map_free_id() + - tcp: fastopen: fix on syn-data transmit failure + - net: emac: Fix napi poll list corruption + - net: ipv6: fix regression of no RTM_DELADDR sent after DAD failure + - packet: hold bind lock when rebinding to fanout hook + - bpf: one perf event close won't free bpf program attached by another perf + event + - net: change skb->mac_header when Generic XDP calls adjust_head + - isdn/i4l: fetch the ppp_write buffer in one shot + - net_sched: always reset qdisc backlog in qdisc_reset() + - net: stmmac: Cocci spatch "of_table" + - net: qcom/emac: specify the correct size when mapping a DMA buffer + - vti: fix use after free in vti_tunnel_xmit/vti6_tnl_xmit + - l2tp: fix race condition in l2tp_tunnel_delete + - tun: bail out from tun_get_user() if the skb is empty + - net: dsa: mv88e6xxx: Allow dsa and cpu ports in multiple vlans + - net: dsa: Fix network device registration order + - packet: in packet_do_bind, test fanout with bind_lock held + - packet: only test po->has_vnet_hdr once in packet_snd + - net: dsa: mv88e6xxx: lock mutex when freeing IRQs + - net: Set sk_prot_creator when cloning sockets to the right proto + - net/mlx5e: IPoIB, Fix access to invalid memory address + - netlink: do not proceed if dump's start() errs + - ip6_gre: ip6gre_tap device should keep dst + - ip6_tunnel: update mtu properly for ARPHRD_ETHER tunnel device in tx path + - IPv4: early demux can return an error code + - tipc: use only positive error codes in messages + - l2tp: fix l2tp_eth module loading + - socket, bpf: fix possible use after free + - net: rtnetlink: fix info leak in RTM_GETSTATS call + - bpf: fix bpf_tail_call() x64 JIT + - usb: gadget: core: fix ->udc_set_speed() logic + - USB: gadgetfs: Fix crash caused by inadequate synchronization + - USB: gadgetfs: fix copy_to_user while holding spinlock + - usb: gadget: udc: atmel: set vbus irqflags explicitly + - usb: gadget: udc: renesas_usb3: fix for no-data control transfer + - usb: gadget: udc: renesas_usb3: fix Pn_RAMMAP.Pn_MPKT value + - usb: gadget: udc: renesas_usb3: Fix return value of usb3_write_pipe() + - usb-storage: unusual_devs entry to fix write-access regression for Seagate + external drives + - usb-storage: fix bogus hardware error messages for ATA pass-thru devices + - usb: renesas_usbhs: fix the BCLR setting condition for non-DCP pipe + - usb: renesas_usbhs: fix usbhsf_fifo_clear() for RX direction + - ALSA: usb-audio: Check out-of-bounds access by corrupted buffer descriptor + - usb: pci-quirks.c: Corrected timeout values used in handshake + - USB: cdc-wdm: ignore -EPIPE from GetEncapsulatedResponse + - USB: dummy-hcd: fix connection failures (wrong speed) + - USB: dummy-hcd: fix infinite-loop resubmission bug + - USB: dummy-hcd: Fix erroneous synchronization change + - USB: devio: Prevent integer overflow in proc_do_submiturb() + - USB: devio: Don't corrupt user memory + - USB: g_mass_storage: Fix deadlock when driver is unbound + - USB: uas: fix bug in handling of alternate settings + - USB: core: harden cdc_parse_cdc_header + - usb: Increase quirk delay for USB devices + - USB: fix out-of-bounds in usb_set_configuration + - usb: xhci: Free the right ring in xhci_add_endpoint() + - xhci: fix finding correct bus_state structure for USB 3.1 hosts + - xhci: fix wrong endpoint ESIT value shown in tracing + - usb: host: xhci-plat: allow sysdev to inherit from ACPI + - xhci: Fix sleeping with spin_lock_irq() held in ASmedia 1042A workaround + - Revert "xhci: Limit USB2 port wake support for AMD Promontory hosts" + - iio: adc: twl4030: Fix an error handling path in 'twl4030_madc_probe()' + - iio: adc: twl4030: Disable the vusb3v1 rugulator in the error handling path + of 'twl4030_madc_probe()' + - iio: ad_sigma_delta: Implement a dedicated reset function + - staging: iio: ad7192: Fix - use the dedicated reset function avoiding dma + from stack. + - iio: core: Return error for failed read_reg + - IIO: BME280: Updates to Humidity readings need ctrl_reg write! + - iio: trigger: stm32-timer: preset shouldn't be buffered + - iio: trigger: stm32-timer: fix a corner case to write preset + - iio: ad7793: Fix the serial interface reset + - iio: adc: stm32: fix bad error check on max_channels + - iio: adc: mcp320x: Fix readout of negative voltages + - iio: adc: mcp320x: Fix oops on module unload + - uwb: properly check kthread_run return value + - uwb: ensure that endpoint is interrupt + - staging: vchiq_2835_arm: Fix NULL ptr dereference in free_pagelist + - ksm: fix unlocked iteration over vmas in cmp_and_merge_page() + - mm, hugetlb, soft_offline: save compound page order before page migration + - mm, oom_reaper: skip mm structs with mmu notifiers + - mm: fix RODATA_TEST failure "rodata_test: test data was not read only" + - mm: avoid marking swap cached page as lazyfree + - mm: fix data corruption caused by lazyfree page + - userfaultfd: non-cooperative: fix fork use after free + - lib/ratelimit.c: use deferred printk() version + - lsm: fix smack_inode_removexattr and xattr_getsecurity memleak + - ALSA: compress: Remove unused variable + - Revert "ALSA: echoaudio: purge contradictions between dimension matrix + members and total number of members" + - ALSA: usx2y: Suppress kernel warning at page allocation failures + - powerpc/powernv: Increase memory block size to 1GB on radix + - powerpc: Fix action argument for cpufeatures-based TLB flush + - powerpc/64s: Use emergency stack for kernel TM Bad Thing program checks + - powerpc/tm: Fix illegal TM state in signal handler + - percpu: make this_cpu_generic_read() atomic w.r.t. interrupts + - intel_th: pci: Add Lewisburg PCH support + - driver core: platform: Don't read past the end of "driver_override" buffer + - cgroup: Reinit cgroup_taskset structure before cgroup_migrate_execute() + returns + - Drivers: hv: fcopy: restore correct transfer length + - vmbus: don't acquire the mutex in vmbus_hvsock_device_unregister() + - stm class: Fix a use-after-free + - auxdisplay: charlcd: properly restore atomic counter on error path + - ftrace: Fix kmemleak in unregister_ftrace_graph + - ovl: fix error value printed in ovl_lookup_index() + - ovl: fix dput() of ERR_PTR in ovl_cleanup_index() + - ovl: fix dentry leak in ovl_indexdir_cleanup() + - ovl: fix missing unlock_rename() in ovl_do_copy_up() + - ovl: fix regression caused by exclusive upper/work dir protection + - arm64: dt marvell: Fix AP806 system controller size + - arm64: Ensure the instruction emulation is ready for userspace + - HID: rmi: Make sure the HID device is opened on resume + - HID: i2c-hid: allocate hid buffers for real worst case + - HID: wacom: leds: Don't try to control the EKR's read-only LEDs + - HID: wacom: Properly report negative values from Intuos Pro 2 Bluetooth + - HID: wacom: Correct coordinate system of touchring and pen twist + - HID: wacom: generic: Send MSC_SERIAL and ABS_MISC when leaving prox + - HID: wacom: generic: Clear ABS_MISC when tool leaves proximity + - HID: wacom: Always increment hdev refcount within wacom_get_hdev_data + - HID: wacom: bits shifted too much for 9th and 10th buttons + - btrfs: avoid overflow when sector_t is 32 bit + - Btrfs: fix overlap of fs_info::flags values + - rocker: fix rocker_tlv_put_* functions for KASAN + - netlink: fix nla_put_{u8,u16,u32} for KASAN + - dm crypt: reject sector_size feature if device length is not aligned to it + - dm ioctl: fix alignment of event number in the device list + - dm crypt: fix memory leak in crypt_ctr_cipher_old() + - KVM: PPC: Book3S: Fix server always zero from kvmppc_xive_get_xive() + - kvm/x86: Avoid async PF preempting the kernel incorrectly + - iwlwifi: mvm: use IWL_HCMD_NOCOPY for MCAST_FILTER_CMD + - scsi: sd: Implement blacklist option for WRITE SAME w/ UNMAP + - scsi: sd: Do not override max_sectors_kb sysfs setting + - brcmfmac: add length check in brcmf_cfg80211_escan_handler() + - brcmfmac: setup passive scan if requested by user-space + - drm/i915: always update ELD connector type after get modes + - drm/i915/bios: ignore HDMI on port A + - bsg-lib: fix use-after-free under memory-pressure + - nvme-pci: Use PCI bus address for data/queues in CMB + - mmc: core: add driver strength selection when selecting hs400es + - nl80211: Define policy for packet pattern attributes + - clk: samsung: exynos4: Enable VPLL and EPLL clocks for suspend/resume cycle + - udp: perform source validation for mcast early demux + - udp: fix bcast packet reception + - base: arch_topology: fix section mismatch build warnings + - Linux 4.13.6 + * Artful update to v4.13.5 stable release (LP: #1721777) + - cifs: check rsp for NULL before dereferencing in SMB2_open + - cifs: release cifs root_cred after exit_cifs + - cifs: release auth_key.response for reconnect. + - nvme-pci: fix host memory buffer allocation fallback + - nvme-pci: use appropriate initial chunk size for HMB allocation + - nvme-pci: propagate (some) errors from host memory buffer setup + - dax: remove the pmem_dax_ops->flush abstraction + - dm integrity: do not check integrity for failed read operations + - mmc: block: Fix incorrectly initialized requests + - fs/proc: Report eip/esp in /prod/PID/stat for coredumping + - scsi: scsi_transport_fc: fix NULL pointer dereference in fc_bsg_job_timeout + - SMB3: Add support for multidialect negotiate (SMB2.1 and later) + - mac80211: fix VLAN handling with TXQs + - mac80211_hwsim: Use proper TX power + - mac80211: flush hw_roc_start work before cancelling the ROC + - mac80211: fix deadlock in driver-managed RX BA session start + - genirq: Make sparse_irq_lock protect what it should protect + - genirq/msi: Fix populating multiple interrupts + - genirq: Fix cpumask check in __irq_startup_managed() + - KVM: PPC: Book3S HV: Hold kvm->lock around call to kvmppc_update_lpcr + - KVM: PPC: Book3S HV: Fix bug causing host SLB to be restored incorrectly + - KVM: PPC: Book3S HV: Don't access XIVE PIPR register using byte accesses + - tracing: Fix trace_pipe behavior for instance traces + - tracing: Erase irqsoff trace with empty write + - tracing: Remove RCU work arounds from stack tracer + - md/raid5: fix a race condition in stripe batch + - md/raid5: preserve STRIPE_ON_UNPLUG_LIST in break_stripe_batch_list + - scsi: scsi_transport_iscsi: fix the issue that iscsi_if_rx doesn't parse + nlmsg properly + - scsi: aacraid: Fix 2T+ drives on SmartIOC-2000 + - scsi: aacraid: Add a small delay after IOP reset + - drm/exynos: Fix locking in the suspend/resume paths + - drm/i915/gvt: Fix incorrect PCI BARs reporting + - Revert "drm/i915/bxt: Disable device ready before shutdown command" + - drm/amdgpu: revert tile table update for oland + - drm/radeon: disable hard reset in hibernate for APUs + - crypto: drbg - fix freeing of resources + - crypto: talitos - Don't provide setkey for non hmac hashing algs. + - crypto: talitos - fix sha224 + - crypto: talitos - fix hashing + - security/keys: properly zero out sensitive key material in big_key + - security/keys: rewrite all of big_key crypto + - KEYS: fix writing past end of user-supplied buffer in keyring_read() + - KEYS: prevent creating a different user's keyrings + - KEYS: prevent KEYCTL_READ on negative key + - libnvdimm, namespace: fix btt claim class crash + - powerpc/eeh: Create PHB PEs after EEH is initialized + - powerpc/pseries: Fix parent_dn reference leak in add_dt_node() + - powerpc/tm: Flush TM only if CPU has TM feature + - MIPS: Fix perf event init + - s390/perf: fix bug when creating per-thread event + - s390/mm: make pmdp_invalidate() do invalidation only + - s390/mm: fix write access check in gup_huge_pmd() + - PM: core: Fix device_pm_check_callbacks() + - Revert "IB/ipoib: Update broadcast object if PKey value was changed in index + 0" + - Fix SMB3.1.1 guest authentication to Samba + - SMB3: Fix endian warning + - SMB3: Warn user if trying to sign connection that authenticated as guest + - SMB: Validate negotiate (to protect against downgrade) even if signing off + - SMB3: handle new statx fields + - SMB3: Don't ignore O_SYNC/O_DSYNC and O_DIRECT flags + - vfs: Return -ENXIO for negative SEEK_HOLE / SEEK_DATA offsets + - libceph: don't allow bidirectional swap of pg-upmap-items + - nl80211: check for the required netlink attributes presence + - brd: fix overflow in __brd_direct_access + - gfs2: Fix debugfs glocks dump + - bsg-lib: don't free job in bsg_prepare_job + - iw_cxgb4: drop listen destroy replies if no ep found + - iw_cxgb4: remove the stid on listen create failure + - iw_cxgb4: put ep reference in pass_accept_req() + - rcu: Allow for page faults in NMI handlers + - mmc: sdhci-pci: Fix voltage switch for some Intel host controllers + - extable: Consolidate *kernel_text_address() functions + - extable: Enable RCU if it is not watching in kernel_text_address() + - seccomp: fix the usage of get/put_seccomp_filter() in seccomp_get_filter() + - arm64: Make sure SPsel is always set + - arm64: fault: Route pte translation faults via do_translation_fault + - KVM: VMX: extract __pi_post_block + - KVM: VMX: avoid double list add with VT-d posted interrupts + - KVM: VMX: simplify and fix vmx_vcpu_pi_load + - KVM: nVMX: fix HOST_CR3/HOST_CR4 cache + - kvm/x86: Handle async PF in RCU read-side critical sections + - kvm: nVMX: Don't allow L2 to access the hardware CR8 + - xfs: validate bdev support for DAX inode flag + - fix infoleak in waitid(2) + - sched/sysctl: Check user input value of sysctl_sched_time_avg + - irq/generic-chip: Don't replace domain's name + - mtd: Fix partition alignment check on multi-erasesize devices + - mtd: nand: atmel: fix buffer overflow in atmel_pmecc_user + - etnaviv: fix submit error path + - etnaviv: fix gem object list corruption + - futex: Fix pi_state->owner serialization + - md: fix a race condition for flush request handling + - md: separate request handling + - PCI: Fix race condition with driver_override + - btrfs: fix NULL pointer dereference from free_reloc_roots() + - btrfs: clear ordered flag on cleaning up ordered extents + - btrfs: finish ordered extent cleaning if no progress is found + - btrfs: propagate error to btrfs_cmp_data_prepare caller + - btrfs: prevent to set invalid default subvolid + - platform/x86: fujitsu-laptop: Don't oops when FUJ02E3 is not presnt + - PM / OPP: Call notifier without holding opp_table->lock + - x86/mm: Fix fault error path using unsafe vma pointer + - x86/fpu: Don't let userspace set bogus xcomp_bv + - KVM: VMX: do not change SN bit in vmx_update_pi_irte() + - KVM: VMX: remove WARN_ON_ONCE in kvm_vcpu_trigger_posted_interrupt + - KVM: VMX: use cmpxchg64 + - video: fbdev: aty: do not leak uninitialized padding in clk to userspace + - Linux 4.13.5 + - [Config] Update configs for v4.13.5 + + [ Ubuntu: 4.13.0-16.19 ] + + * 20170817 - ISO hangs on boot on qemu with splash screen enabled and qxl + graphics driver (LP: #1711358) + - qxl: fix framebuffer unpinning + * [Bug] USB controller failed to respond on Denverton after loading + intel_th_pci module (LP: #1715833) + - SAUCE: PCI: Disable broken RTIT_BAR of Intel TH + * CVE-2017-5123 + - waitid(): Add missing access_ok() checks + + [ Ubuntu: 4.13.0-15.16 ] + + * linux: 4.13.0-15.16 -proposed tracker (LP: #1721373) + * Boot regression on POWER9 (LP: #1721391) + - Revert "crypto/nx: Add P9 NX support for 842 compression engine" + - Revert "crypto/nx: Add P9 NX specific error codes for 842 engine" + - Revert "crypto/nx: Use kzalloc for workmem allocation" + - Revert "crypto/nx: Add nx842_add_coprocs_list function" + - Revert "crypto/nx: Create nx842_delete_coprocs function" + - Revert "crypto/nx: Create nx842_configure_crb function" + - Revert "crypto/nx: Rename nx842_powernv_function as icswx function" + - Revert "UBUNTU: [Config] CONFIG_PPC_VAS=y" + - Revert "powerpc/powernv/vas: Define copy/paste interfaces" + - Revert "powerpc/powernv/vas: Define vas_tx_win_open()" + - Revert "powerpc/powernv/vas: Define vas_win_close() interface" + - Revert "powerpc/powernv/vas: Define vas_rx_win_open() interface" + - Revert "powerpc/powernv/vas: Define helpers to alloc/free windows" + - Revert "powerpc/powernv/vas: Define helpers to init window context" + - Revert "powerpc/powernv/vas: Define helpers to access MMIO regions" + - Revert "powerpc/powernv/vas: Define vas_init() and vas_exit()" + - Revert "powerpc/powernv: Move GET_FIELD/SET_FIELD to vas.h" + - Revert "powerpc/powernv/vas: Define macros, register fields and structures" + - Revert "powerpc/powernv: Enable PCI peer-to-peer" + - Revert "powerpc/powernv: Add support to set power-shifting-ratio" + - Revert "powerpc/powernv: Add support for powercap framework" + - Revert "powerpc/perf: Add nest IMC PMU support" + - Revert "powerpc/powernv: Detect and create IMC device" + - Revert "powerpc/powernv: Add IMC OPAL APIs" + * smartpqi patches for Artful (LP: #1721381) + - scsi: smartpqi: add pqi reset quiesce support + - scsi: smartpqi: enhance BMIC cache flush + - scsi: smartpqi: update pqi passthru ioctl + - scsi: smartpqi: cleanup doorbell register usage. + - scsi: smartpqi: update kexec and power down support + - scsi: smartpqi: add in new controller ids + - scsi: smartpqi: change driver version to 1.1.2-125 + * CONFIG_DEBUG_FS is not enabled by "make zfcpdump_defconfig" with Ubuntu + 17.10 (kernel 4.13) (LP: #1719290) + - SAUCE: s390: update zfcpdump_defconfig + * [Feature] PXE boot with Intel Omni-Path (LP: #1712031) + - d-i: Add hfi1 to nic-modules + * [Feature]CNL:New device IDs for CNL (LP: #1685729) + - pinctrl: intel: Add Intel Cannon Lake PCH-H pin controller support + + [ Ubuntu: 4.13.0-14.15 ] + + * linux: 4.13.0-14.15 -proposed tracker (LP: #1721122) + * [Artful] ltp rwtest - Unable to handle kernel paging request at virtual + address (LP: #1721067) + - arm64: mm: Use READ_ONCE when dereferencing pointer to pte table + * linux 4.13.0-13.14 ADT test failure with linux 4.13.0-13.14 (LP: #1720779) + - SAUCE: LSM stacking: check for invalid zero sized writes + * Add installer support for Broadcom BCM573xx network drivers. (LP: #1720466) + - d-i: Add bnxt_en to nic-modules. + * Miscellaneous Ubuntu changes + - [Packaging] Include arch/arm64/kernel/ftrace-mod.o in headers package + + [ Ubuntu: 4.13.0-13.14 ] + + * linux: 4.13.0-13.14 -proposed tracker (LP: #1720239) + * [Bug] USB 3.1 Gen2 works as 5Gbps (LP: #1720045) + - xhci: set missing SuperSpeedPlus Link Protocol bit in roothub descriptor + * [Feature]Memory Bandwidth Monitoring(MBM) port to new Cache Quality + Monitoring (CQM) (LP: #1591609) + - x86/perf/cqm: Wipe out perf based cqm + - x86/intel_rdt/cqm: Documentation for resctrl based RDT Monitoring + - x86/intel_rdt: Introduce a common compile option for RDT + - x86/intel_rdt: Change file names to accommodate RDT monitor code + - x86/intel_rdt: Mark rdt_root and closid_alloc as static + - x86/intel_rdt: Cleanup namespace to support RDT monitoring + - x86/intel_rdt: Make rdt_resources_all more readable + - x86/intel_rdt/cqm: Add RDT monitoring initialization + - x86/intel_rdt/cqm: Add RMID (Resource monitoring ID) management + - x86/intel_rdt: Simplify info and base file lists + - x86/intel_rdt/cqm: Add info files for RDT monitoring + - x86/intel_rdt: Prepare for RDT monitoring mkdir support + - x86/intel_rdt/cqm: Add mkdir support for RDT monitoring + - x86/intel_rdt: Change closid type from int to u32 + - x86/intel_rdt/cqm: Add tasks file support + - x86/intel_rdt: Prepare to add RDT monitor cpus file support + - x86/intel_rdt/cqm: Add cpus file support + - x86/intel_rdt: Prepare for RDT monitor data support + - x86/intel_rdt/cqm: Add mon_data + - x86/intel_rdt: Separate the ctrl bits from rmdir + - x86/intel_rdt/cqm: Add rmdir support + - x86/intel_rdt/cqm: Add mount,umount support + - x86/intel_rdt: Introduce rdt_enable_key for scheduling + - x86/intel_rdt/cqm: Add sched_in support + - x86/intel_rdt/cqm: Add CPU hotplug support + - x86/intel_rdt/mbm: Basic counting of MBM events (total and local) + - x86/intel_rdt/mbm: Add mbm counter initialization + - x86/intel_rdt/mbm: Handle counter overflow + - x86/intel_rdt: Show bitmask of shareable resource with other executing units + - x86/intel_rdt/cqm: Clear the default RMID during hotcpu + - x86/intel_rdt: Modify the intel_pqr_state for better performance + - x86/intel_rdt/mbm: Fix MBM overflow handler during CPU hotplug + - x86/intel_rdt/cqm: Improve limbo list processing + - x86/intel_rdt: Remove redundant ternary operator on return + - [Config] CONFIG_INTEL_RDT=y + * [Feature] RDT: Disable most RDT features on Skylake server (LP: #1713619) + - x86/intel_rdt: Move special case code for Haswell to a quirk function + - x86/intel_rdt: Add command line options for resource director technology + - x86/intel_rdt: Turn off most RDT features on Skylake + * CVE-2017-1000252 + - KVM: VMX: Do not BUG() on out-of-bounds guest IRQ + * POWER9: NX842 module changes (LP: #1718292) + - crypto/nx: Rename nx842_powernv_function as icswx function + - crypto/nx: Create nx842_configure_crb function + - crypto/nx: Create nx842_delete_coprocs function + - crypto/nx: Add nx842_add_coprocs_list function + - crypto/nx: Use kzalloc for workmem allocation + - crypto/nx: Add P9 NX specific error codes for 842 engine + - crypto/nx: Add P9 NX support for 842 compression engine + * [Ubuntu 17.10] POWER9 - Base - Integrate P9 VAS (Virtual Accelerator + Switchboard) support in kernel (LP: #1718293) + - powerpc/powernv: Add IMC OPAL APIs + - powerpc/powernv: Detect and create IMC device + - powerpc/perf: Add nest IMC PMU support + - powerpc/powernv: Add support for powercap framework + - powerpc/powernv: Add support to set power-shifting-ratio + - powerpc/powernv: Enable PCI peer-to-peer + - powerpc/powernv/vas: Define macros, register fields and structures + - powerpc/powernv: Move GET_FIELD/SET_FIELD to vas.h + - powerpc/powernv/vas: Define vas_init() and vas_exit() + - powerpc/powernv/vas: Define helpers to access MMIO regions + - powerpc/powernv/vas: Define helpers to init window context + - powerpc/powernv/vas: Define helpers to alloc/free windows + - powerpc/powernv/vas: Define vas_rx_win_open() interface + - powerpc/powernv/vas: Define vas_win_close() interface + - powerpc/powernv/vas: Define vas_tx_win_open() + - powerpc/powernv/vas: Define copy/paste interfaces + - [Config] CONFIG_PPC_VAS=y + * Artful update to v4.13.4 stable release (LP: #1720154) + - orangefs: Don't clear SGID when inheriting ACLs + - : Fix copy_in_user() declaration + - IB/hfi1: Revert egress pkey check enforcement + - IB/{qib, hfi1}: Avoid flow control testing for RDMA write operation + - IB/mlx5: Fix cached MR allocation flow + - srcu: Provide ordering for CPU not involved in grace period + - smp/hotplug: Handle removal correctly in cpuhp_store_callbacks() + - Input: xpad - validate USB endpoint type during probe + - drm/amdgpu: read reg in each iterator of psp_wait_for loop + - tty: improve tty_insert_flip_char() fast path + - tty: improve tty_insert_flip_char() slow path + - tty: fix __tty_insert_flip_char regression + - pinctrl: samsung: Fix invalid register offset used for Exynos5433 external + interrupts + - pinctrl: samsung: Fix NULL pointer exception on external interrupts on + S3C24xx + - pinctrl/amd: save pin registers over suspend/resume + - MIPS: math-emu: .: Fix quiet NaN propagation + - MIPS: math-emu: .: Fix cases of both inputs zero + - MIPS: math-emu: .: Fix cases of both inputs negative + - MIPS: math-emu: .: Fix cases of input values with opposite + signs + - MIPS: math-emu: .: Fix cases of both infinite inputs + - MIPS: math-emu: MINA.: Fix some cases of infinity and zero inputs + - MIPS: math-emu: .: Fix NaN propagation + - MIPS: math-emu: .: Fix some cases of infinite inputs + - MIPS: math-emu: .: Fix some cases of zero inputs + - MIPS: math-emu: .: Clean up "maddf_flags" enumeration + - MIPS: math-emu: .S: Fix accuracy (32-bit case) + - MIPS: math-emu: .D: Fix accuracy (64-bit case) + - docs: disable KASLR when debugging kernel + - crypto: ccp - Fix XTS-AES-128 support on v5 CCPs + - crypto: scompress - don't sleep with preemption disabled + - crypto: caam/qi - fix typo in authenc alg driver name + - crypto: caam/qi - properly set IV after {en,de}crypt + - crypto: AF_ALG - remove SGL terminator indicator when chaining + - regulator: cpcap: Fix standby mode + - wcn36xx: Introduce mutual exclusion of fw configuration + - ext4: in ext4_seek_{hole,data}, return -ENXIO for negative offsets + - ext4: fix incorrect quotaoff if the quota feature is enabled + - ext4: fix quota inconsistency during orphan cleanup for read-only mounts + - cxl: Fix driver use count + - powerpc/powernv/npu: Move tlb flush before launching ATSD + - powerpc/pseries: Don't attempt to acquire drc during memory hot add for + assigned lmbs + - powerpc: Fix DAR reporting when alignment handler faults + - block: Relax a check in blk_start_queue() + - block: directly insert blk-mq request from blk_insert_cloned_request() + - md/bitmap: copy correct data for bitmap super + - md/bitmap: disable bitmap_resize for file-backed bitmaps. + - skd: Avoid that module unloading triggers a use-after-free + - skd: Submit requests to firmware before triggering the doorbell + - scsi: zfcp: fix queuecommand for scsi_eh commands when DIX enabled + - scsi: zfcp: add handling for FCP_RESID_OVER to the fcp ingress path + - scsi: zfcp: fix capping of unsuccessful GPN_FT SAN response trace records + - scsi: zfcp: fix passing fsf_req to SCSI trace on TMF to correlate with HBA + - scsi: zfcp: fix missing trace records for early returns in TMF eh handlers + - scsi: zfcp: fix payload with full FCP_RSP IU in SCSI trace records + - scsi: zfcp: trace HBA FSF response by default on dismiss or timedout late + response + - scsi: zfcp: trace high part of "new" 64 bit SCSI LUN + - scsi: qedi: off by one in qedi_get_cmd_from_tid() + - scsi: aacraid: Fix command send race condition + - scsi: megaraid_sas: mismatch of allocated MFI frame size and length exposed + in MFI MPT pass through command + - scsi: megaraid_sas: set minimum value of resetwaittime to be 1 secs + - scsi: megaraid_sas: Check valid aen class range to avoid kernel panic + - scsi: megaraid_sas: Return pended IOCTLs with cmd_status + MFI_STAT_WRONG_STATE in case adapter is dead + - scsi: storvsc: fix memory leak on ring buffer busy + - scsi: sg: factor out sg_fill_request_table() + - scsi: sg: fixup infoleak when using SG_GET_REQUEST_TABLE + - scsi: qla2xxx: Update fw_started flags at qpair creation. + - scsi: qla2xxx: Correction to vha->vref_count timeout + - scsi: qla2xxx: Fix target multiqueue configuration + - scsi: qla2xxx: Use BIT_6 to acquire FAWWPN from switch + - scsi: qla2xxx: Use fabric name for Get Port Speed command + - scsi: qla2xxx: Fix an integer overflow in sysfs code + - mailbox: bcm-flexrm-mailbox: Fix mask used in CMPL_START_ADDR_VALUE() + - ftrace: Fix debug preempt config name in stack_tracer_{en,dis}able + - ftrace: Fix selftest goto location on error + - ftrace: Fix memleak when unregistering dynamic ops when tracing disabled + - tracing: Add barrier to trace_printk() buffer nesting modification + - tracing: Fix clear of RECORDED_TGID flag when disabling trace event + - tracing: Apply trace_clock changes to instance max buffer + - ARC: Re-enable MMU upon Machine Check exception + - PCI: shpchp: Enable bridge bus mastering if MSI is enabled + - PCI: pciehp: Report power fault only once until we clear it + - net/netfilter/nf_conntrack_core: Fix net_conntrack_lock() + - media: v4l2-compat-ioctl32: Fix timespec conversion + - media: Revert "[media] lirc_dev: remove superfluous get/put_device() calls" + - media: venus: fix copy/paste error in return_buf_error + - media: uvcvideo: Prevent heap overflow when accessing mapped controls + - media: adv7180: add missing adv7180cp, adv7180st i2c device IDs + - PM / devfreq: Fix memory leak when fail to register device + - ALSA: seq: Cancel pending autoload work at unbinding device + - bcache: initialize dirty stripes in flash_dev_run() + - bcache: Fix leak of bdev reference + - bcache: do not subtract sectors_to_gc for bypassed IO + - bcache: correct cache_dirty_target in __update_writeback_rate() + - bcache: Correct return value for sysfs attach errors + - bcache: fix sequential large write IO bypass + - bcache: fix for gc and write-back race + - bcache: fix bch_hprint crash and improve output + - sched/cpuset/pm: Fix cpuset vs. suspend-resume bugs + - iwlwifi: add workaround to disable wide channels in 5GHz + - Linux 4.13.4 + * [17.10 FEAT] KVM: CPU Model z14 (LP: #1719297) + - KVM: s390: Support Configuration z/Architecture Mode + * sata reset hangs w/ early cn99xx silicon (LP: #1719031) + - SAUCE: ahci: thunderx2: Fix for errata that affects stop engine + - SAUCE: ahci: thunderx2: stop engine fix update + * PCI quirk required for SATA on early cn99xx silicon (LP: #1718760) + - SAUCE: PCI: Vulcan: AHCI PCI bar fix for Broadcom Vulcan early silicon + * Please make linux-libc-dev Provide: aufs-dev (LP: #1716091) + - [Packaging] Add aufs-dev to the Provides: for linux-libc-dev + * Miscellaneous Ubuntu changes + - [Packaging] Use SRCPKGNAME rather than hard-coding the source package name + - SAUCE: LSM stacking: procfs: add smack subdir to attrs + - SAUCE: LSM stacking: LSM: manage credential security blobs + - SAUCE: LSM stacking: LSM: Manage file security blobs + - SAUCE: LSM stacking: LSM: manage task security blobs + - SAUCE: LSM stacking: LSM: Infrastructure management of the remaining blobs + - SAUCE: LSM stacking: LSM: general but not extreme module stacking + - SAUCE: LSM stacking: LSM: Complete task_alloc hook + - SAUCE: LSM stacking: fixup procsfs: add smack subdir to attrs + - SAUCE: LSM stacking: fixup initialize task->security + - SAUCE: LSM stacking: fixup: alloc_task_ctx is dead code + - SAUCE: LSM stacking: add support for stacking getpeersec_stream + - SAUCE: LSM stacking: add stacking support to apparmor network hooks + - SAUCE: LSM stacking: fixup apparmor stacking enablement + - SAUCE: LSM stacking: fixup stacking kconfig + - SAUCE: LSM stacking: allow selecting multiple LSMs using kernel boot params + - SAUCE: LSM stacking: provide prctl interface for setting context + - SAUCE: LSM stacking: inherit current display LSM + - SAUCE: LSM stacking: keep an index for each registered LSM + - SAUCE: LSM stacking: verify display LSM + - SAUCE: LSM stacking: provide a way to specify the default display lsm + - SAUCE: LSM stacking: make sure LSM blob align on 64 bit boundaries + - SAUCE: LSM stacking: add /proc//attr/display_lsm + - SAUCE: LSM stacking: add Kconfig to set default display LSM + - SAUCE: LSM stacking: add configs for LSM stacking + - [Config] Run updateconfigs after merging LSM stacking + + [ Ubuntu: 4.13.0-12.13 ] + + * linux: 4.13.0-12.13 -proposed tracker (LP: #1718980) + * [Feature] SKX: Support crystall ridge / far / near memory indication in PEBS + (LP: #1591813) + - perf/x86: Move Nehalem PEBS code to flag + - perf/x86: Fix data source decoding for Skylake + * Upgrade to 4.13.0-11.12 in artful amd64 VM breaks display on wayland + (LP: #1718679) + - [Config] CONFIG_DRM_VBOXVIDEO=n + * ipmmu-vmsa driver breaks arm64 boots (LP: #1718734) + - [Config] Disable CONFIG_IPMMU_VMSA on arm64 + * Vlun resize request could fail with cxlflash driver (LP: #1713575) + - scsi: cxlflash: Fix vlun resize failure in the shrink path + * multipath -ll is not showing the disks which are actually multipath + (LP: #1718397) + - fs: aio: fix the increment of aio-nr and counting against aio-max-nr + * [Feature] Crystal Ridge - BTT - Rework error clearing (LP: #1704350) + - libnvdimm, btt: fix a missed NVDIMM_IO_ATOMIC case in the write path + - libnvdimm, btt: refactor map entry operations with macros + - libnvdimm, btt: ensure that flags were also unchanged during a map_read + - libnvdimm, btt: cache sector_size in arena_info + - libnvdimm: fix potential deadlock while clearing errors + - libnvdimm, btt: rework error clearing + * [Feature] Crystal Ridge - have 4k DAX faults use a common zero page + (LP: #1704439) + - mm: add vm_insert_mixed_mkwrite() + - dax: relocate some dax functions + - dax: use common 4k zero page for dax mmap reads + - dax: remove DAX code from page_cache_tree_insert() + - dax: move all DAX radix tree defs to fs/dax.c + * [bug] 17.10: CDP test fail on platform of Purley-2S/4S/Neoncity,BDW- + de/ep/ex, (LP: #1716843) + - SAUCE: (no-up) x86/intel_rdt: Fix cdp info directory files issue + * [featue] GPIO support for Denverton (LP: #1591829) + - pinctrl: intel: Add Intel Denverton pin controller support + * ETPS/2 Elantech Touchpad inconsistently detected (Gigabyte P57W laptop) + (LP: #1594214) + - Input: i8042 - add Gigabyte P57 to the keyboard reset table + * autopkgtest profile fails to build on armhf (LP: #1717920) + - [Packaging] autopkgtest -- disable d-i when dropping flavours + * Artful update to v4.13.3 stable release (LP: #1718412) + - Revert "net: use lib/percpu_counter API for fragmentation mem accounting" + - Revert "net: fix percpu memory leaks" + - gianfar: Fix Tx flow control deactivation + - vhost_net: correctly check tx avail during rx busy polling + - ip6_gre: update mtu properly in ip6gre_err + - udp: drop head states only when all skb references are gone + - ipv6: fix memory leak with multiple tables during netns destruction + - ipv6: fix typo in fib6_net_exit() + - sctp: fix missing wake ups in some situations + - tcp: fix a request socket leak + - ip_tunnel: fix setting ttl and tos value in collect_md mode + - f2fs: let fill_super handle roll-forward errors + - f2fs: check hot_data for roll-forward recovery + - x86/fsgsbase/64: Fully initialize FS and GS state in start_thread_common + - x86/fsgsbase/64: Report FSBASE and GSBASE correctly in core dumps + - x86/switch_to/64: Rewrite FS/GS switching yet again to fix AMD CPUs + - x86/mm, mm/hwpoison: Clear PRESENT bit for kernel 1:1 mappings of poison + pages + - ovl: fix false positive ESTALE on lookup + - fuse: allow server to run in different pid_ns + - idr: remove WARN_ON_ONCE() when trying to replace negative ID + - libnvdimm, btt: check memory allocation failure + - libnvdimm: fix integer overflow static analysis warning + - xfs: write unmount record for ro mounts + - xfs: toggle readonly state around xfs_log_mount_finish + - xfs: Add infrastructure needed for error propagation during buffer IO + failure + - xfs: Properly retry failed inode items in case of error during buffer + writeback + - xfs: fix recovery failure when log record header wraps log end + - xfs: always verify the log tail during recovery + - xfs: fix log recovery corruption error due to tail overwrite + - xfs: handle -EFSCORRUPTED during head/tail verification + - xfs: stop searching for free slots in an inode chunk when there are none + - xfs: evict all inodes involved with log redo item + - xfs: check for race with xfs_reclaim_inode() in xfs_ifree_cluster() + - xfs: open-code xfs_buf_item_dirty() + - xfs: remove unnecessary dirty bli format check for ordered bufs + - xfs: ordered buffer log items are never formatted + - xfs: refactor buffer logging into buffer dirtying helper + - xfs: don't log dirty ranges for ordered buffers + - xfs: skip bmbt block ino validation during owner change + - xfs: move bmbt owner change to last step of extent swap + - xfs: disallow marking previously dirty buffers as ordered + - xfs: relog dirty buffers during swapext bmbt owner change + - xfs: disable per-inode DAX flag + - xfs: fix incorrect log_flushed on fsync + - xfs: don't set v3 xflags for v2 inodes + - xfs: open code end_buffer_async_write in xfs_finish_page_writeback + - xfs: use kmem_free to free return value of kmem_zalloc + - md/raid1/10: reset bio allocated from mempool + - md/raid5: release/flush io in raid5_do_work() + - xfs: fix compiler warnings + - Linux 4.13.3 + * Artful update to v4.13.2 stable release (LP: #1717549) + - mtd: nand: make Samsung SLC NAND usable again + - mtd: nand: hynix: add support for 20nm NAND chips + - mtd: nand: mxc: Fix mxc_v1 ooblayout + - mtd: nand: qcom: fix read failure without complete bootchain + - mtd: nand: qcom: fix config error for BCH + - nvme-fabrics: generate spec-compliant UUID NQNs + - btrfs: resume qgroup rescan on rw remount + - rtlwifi: btcoexist: Fix breakage of ant_sel for rtl8723be + - rtlwifi: btcoexist: Fix antenna selection code + - radix-tree: must check __radix_tree_preload() return value + - brcmfmac: feature check for multi-scheduled scan fails on bcm4345 devices + - kselftests: timers: leap-a-day: Change default arguments to help test runs + - selftests: timers: Fix run_destructive_tests target to handle skipped tests + - selftests/x86/fsgsbase: Test selectors 1, 2, and 3 + - mm: kvfree the swap cluster info if the swap file is unsatisfactory + - mm/swapfile.c: fix swapon frontswap_map memory leak on error + - mm/sparse.c: fix typo in online_mem_sections + - mm/memory.c: fix mem_cgroup_oom_disable() call missing + - KVM: SVM: Limit PFERR_NESTED_GUEST_PAGE error_code check to L1 guest + - Revert "firmware: add sanity check on shutdown/suspend" + - rt2800: fix TX_PIN_CFG setting for non MT7620 chips + - ARM64: dts: marvell: armada-37xx: Fix GIC maintenance interrupt + - ARM: 8692/1: mm: abort uaccess retries upon fatal signal + - NFS: Fix 2 use after free issues in the I/O code + - NFS: Sync the correct byte range during synchronous writes + - NFSv4: Fix up mirror allocation + - xfs: XFS_IS_REALTIME_INODE() should be false if no rt device present + - Linux 4.13.2 + * [Bug] Thunderbolt-patches: Related to the way the key for secure connection + is handled (LP: #1717430) + - thunderbolt: Remove superfluous check + - thunderbolt: Make key root-only accessible + - thunderbolt: Allow clearing the key + * [Bug] Thunderbolt-patches: Fixes the issue regarding the order of ACPI calls + w.r.t. PCI enumeration (LP: #1717431) + - ACPICA: Dispatch active GPEs at init time + - ACPICA: Make it possible to enable runtime GPEs earlier + - ACPI / scan: Enable GPEs before scanning the namespace + * Miscellaneous Ubuntu changes + - ubuntu: vbox -- update to 5.1.28-dfsg-1 + - [Config] CONFIG_PINCTRL_DENVERTON=m + - [Config] CONFIG_I2C_XLP9XX=m + * Miscellaneous upstream changes + - Introduce v3 namespaced file capabilities + + [ Ubuntu: 4.13.0-11.12 ] + + * linux: 4.13.0-11.12 -proposed tracker (LP: #1716699) + * kernel panic -not syncing: Fatal exception: panic_on_oops (LP: #1708399) + - s390/mm: fix local TLB flushing vs. detach of an mm address space + - s390/mm: fix race on mm->context.flush_mm + * CVE-2017-1000251 + - Bluetooth: Properly check L2CAP config option output buffer length + + [ Ubuntu: 4.13.0-10.11 ] + + * linux: 4.13.0-10.11 -proposed tracker (LP: #1716287) + * please add aufs-dkms to the Provides: for the kernel packages (LP: #1716093) + - [Packaging] Add aufs-dkms to the Provides: for kernel packages + * Artful update to v4.13.1 stable release (LP: #1716284) + - usb: quirks: add delay init quirk for Corsair Strafe RGB keyboard + - USB: serial: option: add support for D-Link DWM-157 C1 + - usb: Add device quirk for Logitech HD Pro Webcam C920-C + - usb:xhci:Fix regression when ATI chipsets detected + - USB: musb: fix external abort on suspend + - ANDROID: binder: add padding to binder_fd_array_object. + - ANDROID: binder: add hwbinder,vndbinder to BINDER_DEVICES. + - USB: core: Avoid race of async_completed() w/ usbdev_release() + - staging/rts5208: fix incorrect shift to extract upper nybble + - staging: ccree: save ciphertext for CTS IV + - staging: fsl-dpaa2/eth: fix off-by-one FD ctrl bitmaks + - iio: adc: ti-ads1015: fix incorrect data rate setting update + - iio: adc: ti-ads1015: fix scale information for ADS1115 + - iio: adc: ti-ads1015: enable conversion when CONFIG_PM is not set + - iio: adc: ti-ads1015: avoid getting stale result after runtime resume + - iio: adc: ti-ads1015: don't return invalid value from buffer setup callbacks + - iio: adc: ti-ads1015: add adequate wait time to get correct conversion + - driver core: bus: Fix a potential double free + - HID: wacom: Do not completely map WACOM_HID_WD_TOUCHRINGSTATUS usage + - binder: free memory on error + - crypto: caam/qi - fix compilation with CONFIG_DEBUG_FORCE_WEAK_PER_CPU=y + - crypto: caam/qi - fix compilation with DEBUG enabled + - thunderbolt: Fix reset response_type + - fpga: altera-hps2fpga: fix multiple init of l3_remap_lock + - intel_th: pci: Add Cannon Lake PCH-H support + - intel_th: pci: Add Cannon Lake PCH-LP support + - ath10k: fix memory leak in rx ring buffer allocation + - drm/vgem: Pin our pages for dmabuf exports + - drm/ttm: Fix accounting error when fail to get pages for pool + - drm/dp/mst: Handle errors from drm_atomic_get_private_obj_state() correctly + - rtlwifi: rtl_pci_probe: Fix fail path of _rtl_pci_find_adapter + - Bluetooth: Add support of 13d3:3494 RTL8723BE device + - iwlwifi: pci: add new PCI ID for 7265D + - dlm: avoid double-free on error path in dlm_device_{register,unregister} + - mwifiex: correct channel stat buffer overflows + - MCB: add support for SC31 to mcb-lpc + - s390/mm: avoid empty zero pages for KVM guests to avoid postcopy hangs + - drm/nouveau/pci/msi: disable MSI on big-endian platforms by default + - drm/nouveau: Fix error handling in nv50_disp_atomic_commit + - workqueue: Fix flag collision + - ahci: don't use MSI for devices with the silly Intel NVMe remapping scheme + - cs5536: add support for IDE controller variant + - scsi: sg: protect against races between mmap() and SG_SET_RESERVED_SIZE + - scsi: sg: recheck MMAP_IO request length with lock held + - of/device: Prevent buffer overflow in of_device_modalias() + - rtlwifi: Fix memory leak when firmware request fails + - rtlwifi: Fix fallback firmware loading + - Linux 4.13.1 + * Kernel has trouble recognizing Corsair Strafe RGB keyboard (LP: #1678477) + - usb: quirks: add delay init quirk for Corsair Strafe RGB keyboard + * SRIOV: warning if unload VFs (LP: #1715073) + - PCI: Disable VF decoding before pcibios_sriov_disable() updates resources + * [Patch] network-i40e:NVM bug fixes (cherrypick from 4.14) (LP: #1715578) + - i40e: avoid NVM acquire deadlock during NVM update + - i40e: point wb_desc at the nvm_wb_desc during i40e_read_nvm_aq + * [P9,POwer NV] Perf PMU event : pm_br_2path and pm_ld_miss_l1 is counted + twice when perf stat is done (perf:) (LP: #1714571) + - perf vendor events powerpc: Remove duplicate events + * Unable to install Ubuntu on the NVMe disk under VMD PCI domain + (LP: #1703339) + - [Config] Include vmd in storage-core-modules udeb + * 17.10 fails to boot on POWER9 DD2.0 with Deep stop states (LP: #1715064) + - powerpc/powernv: Save/Restore additional SPRs for stop4 cpuidle + - powerpc/powernv: Clear PECE1 in LPCR via stop-api only on Hotplug + - SAUCE: powerpc/powernv: Clear LPCR[PECE1] via stop-api only for deep state + offline + * Miscellaneous Ubuntu changes + - SAUCE: selftests/seccomp: Support glibc 2.26 siginfo_t.h + - Revert "UBUNTU: SAUCE: Import aufs driver" + - SAUCE: Import aufs driver + + [ Ubuntu: 4.13.0-9.10 ] + + * linux: 4.13.0-9.10 -proposed tracker (LP: #1715145) + * EDAC sbridge: Failed to register device with error -22. (LP: #1714112) + - [Config] CONFIG_EDAC_GHES=n + * Miscellaneous Ubuntu changes + - ubuntu: vbox -- update to 5.1.26-dfsg-2 + * Rebase to v4.13 + + [ Ubuntu: 4.13.0-8.9 ] + + * snapd 2.27.3+17.10 ADT test failure with linux 4.13.0-6.7 (LP: #1713103) + - SAUCE: apparmor: fix apparmorfs DAC access, permissions + * enable ARCH_SUNXI (and friends) in arm64 kernel .config (LP: #1701137) + - [Config] Enable CONFIG_ARCH_SUNXI and related options for arm64 + * [Bug] Harrisonville: pnd2_edac always fail to load on B1 stepping + Harrisonville SDP (LP: #1709257) + - EDAC, pnd2: Build in a minimal sideband driver for Apollo Lake + - EDAC, pnd2: Mask off the lower four bits of a BAR + - EDAC, pnd2: Conditionally unhide/hide the P2SB PCI device to read BAR + - EDAC, pnd2: Properly toggle hidden state for P2SB PCI device + - SAUCE: i2c: i801: Restore the presence state of P2SB PCI device after + reading BAR + * Miscellaneous Ubuntu changes + - Revert "UBUNTU: SAUCE: Import aufs driver" + - SAUCE: Import aufs driver + - SAUCE: selftests/powerpc: Disable some ptrace selftests + - [Config] CONFIG_CRYPTO_DEV_NITROX_CNN55XX=n for s390x + - [Config] CONFIG_I2C_SLAVE=n for amd64, i386, ppc64el + - [Config] Disable CONFIG_MDIO_* options for s390x + - [Config] CONFIG_SCSI_MQ_DEFAULT=n for s390x + - [Config] Update annotations for 4.13 + + [ Ubuntu: 4.13.0-7.8 ] + + * linux 4.12.0-11.12 ADT test failure with linux 4.12.0-11.12 (LP: #1710904) + - SAUCE: selftests/powerpc: Use snprintf to construct DSCR sysfs interface + paths + * Miscellaneous Ubuntu changes + - Revert "UBUNTU: SAUCE: seccomp: log actions even when audit is disabled" + * Miscellaneous upstream changes + - seccomp: Provide matching filter for introspection + - seccomp: Sysctl to display available actions + - seccomp: Operation for checking if an action is available + - seccomp: Sysctl to configure actions that are allowed to be logged + - seccomp: Selftest for detection of filter flag support + - seccomp: Filter flag to log all actions except SECCOMP_RET_ALLOW + - seccomp: Action to log before allowing + * Rebase to v4.13-rc7 + + [ Ubuntu: 4.13.0-6.7 ] + + * HID: multitouch: Support ALPS PTP Stick and Touchpad devices (LP: #1712481) + - SAUCE: HID: multitouch: Support ALPS PTP stick with pid 0x120A + * sort ABI files with C.UTF-8 locale (LP: #1712345) + - [Packaging] sort ABI files with C.UTF-8 locale + * igb: Support using Broadcom 54616 as PHY (LP: #1712024) + - SAUCE: igb: add support for using Broadcom 54616 as PHY + * RPT related fixes missing in Ubuntu 16.04.3 (LP: #1709220) + - powerpc/mm/radix: Improve _tlbiel_pid to be usable for PWC flushes + - powerpc/mm/radix: Improve TLB/PWC flushes + - powerpc/mm/radix: Avoid flushing the PWC on every flush_tlb_range + * Linux 4.12 refuses to load self-signed modules under Secure Boot with + properly enrolled keys (LP: #1712168) + - SAUCE: (efi-lockdown) MODSIGN: Fix module signature verification + * [17.10 FEAT] Enable NVMe driver - kernel (LP: #1708432) + - [Config] CONFIG_BLK_DEV_NVME=m for s390 + * Artful: 4.12.0-11.12: Boot panic in vlv2_plat_configure_clock+0x3b/0xa0 + (LP: #1711298) + - [Config] CONFIG_INTEL_ATOMISP=n + * Miscellaneous Ubuntu changes + - SAUCE: apparmor: af_unix mediation + * Miscellaneous upstream changes + - apparmor: Fix shadowed local variable in unpack_trans_table() + - apparmor: Fix logical error in verify_header() + - apparmor: Fix an error code in aafs_create() + - apparmor: Redundant condition: prev_ns. in [label.c:1498] + - apparmor: add the ability to mediate signals + - apparmor: add mount mediation + - apparmor: cleanup conditional check for label in label_print + - apparmor: add support for absolute root view based labels + - apparmor: make policy_unpack able to audit different info messages + - apparmor: add more debug asserts to apparmorfs + - apparmor: add base infastructure for socket mediation + - apparmor: move new_null_profile to after profile lookup fns() + - apparmor: fix race condition in null profile creation + - apparmor: ensure unconfined profiles have dfas initialized + - apparmor: fix incorrect type assignment when freeing proxies + * Rebase to v4.13-rc6 + + [ Ubuntu: 4.13.0-5.6 ] + + * Ubuntu17.10 - perf: Update Power9 PMU event JSON files (LP: #1708630) + - perf pmu-events: Support additional POWER8+ PVR in mapfile + - perf vendor events: Add POWER9 PMU events + - perf vendor events: Add POWER9 PVRs to mapfile + - SAUCE: perf vendor events powerpc: remove suffix in mapfile + - SAUCE: perf vendor events powerpc: Update POWER9 events + * Disable CONFIG_MEMORY_HOTPLUG_DEFAULT_ONLINE (LP: #1709171) + - [Config] CONFIG_MEMORY_HOTPLUG_DEFAULT_ONLINE=n for ppc64el + * Please only recommend or suggest initramfs-tools | linux-initramfs-tool for + kernels able to boot without initramfs (LP: #1700972) + - [Debian] Don't depend on initramfs-tools + * Miscellaneous Ubuntu changes + - SAUCE: Import aufs driver + - SAUCE: aufs -- Add missing argument to loop_switch() call + - [Config] Enable aufs + - SAUCE: (noup) Update spl to 0.6.5.11-ubuntu1, zfs to 0.6.5.11-1ubuntu3 + - Enable zfs build + - SAUCE: powerpc: Always initialize input array when calling epapr_hypercall() + - [Packaging] switch up to debhelper 9 + * Rebase to v4.13-rc5 + + [ Ubuntu: 4.13.0-4.5 ] + + * Lenovo Yoga 910 Sensors (LP: #1708120) + - SAUCE: (no-up) HID: Add quirk for Lenovo Yoga 910 with ITE Chips + * Unable to install Ubuntu on the NVMe disk under VMD PCI domain + (LP: #1703339) + - [Config] Add vmd driver to generic inclusion list + * Set CONFIG_SATA_HIGHBANK=y on armhf (LP: #1703430) + - [Config] CONFIG_SATA_HIGHBANK=y + * Miscellaneous Ubuntu changes + - ubuntu: vbox -- update to 5.1.26-dfsg-1 + - SAUCE: hio: Build fixes for 4.13 + - Enable hio build + - SAUCE: (noup) Update spl to 0.6.5.11-1, zfs to 0.6.5.11-1ubuntu1 + - [debian] use all rather than amd64 dkms debs for sync + * Rebase to v4.13-rc4 + + [ Ubuntu: 4.13.0-3.4 ] + + * Adt tests of src:linux time out often on armhf lxc containers (LP: #1705495) + - [Packaging] tests -- reduce rebuild test to one flavour + - [Packaging] tests -- reduce rebuild test to one flavour -- use filter + * snapd 2.26.8+17.10 ADT test failure with linux 4.12.0-6.7 (LP: #1704158) + - SAUCE: virtio_net: Revert mergeable buffer handling rework + * Rebase to v4.13-rc3 + + [ Ubuntu: 4.13.0-2.3 ] + + * Change CONFIG_IBMVETH to module (LP: #1704479) + - [Config] CONFIG_IBMVETH=m + * Rebase to v4.13-rc2 + + [ Ubuntu: 4.13.0-1.2 ] + + * Miscellaneous Ubuntu changes + - [Debian] Support sphinx-based kernel documentation + + [ Ubuntu: 4.13.0-0.1 ] + + * Miscellaneous Ubuntu changes + - Disable hio + - Disable zfs build + - ubuntu: vbox -- update to 5.1.24-dfsg-1 + * Rebase to v4.13-rc1 + + [ Ubuntu: 4.12.0-7.8 ] + + * ThunderX: soft lockup on 4.8+ kernels when running qemu-efi with vhost=on + (LP: #1673564) + - arm64: Add a facility to turn an ESR syndrome into a sysreg encoding + - KVM: arm/arm64: vgic-v3: Add accessors for the ICH_APxRn_EL2 registers + - KVM: arm64: Make kvm_condition_valid32() accessible from EL2 + - KVM: arm64: vgic-v3: Add hook to handle guest GICv3 sysreg accesses at EL2 + - KVM: arm64: vgic-v3: Add ICV_BPR1_EL1 handler + - KVM: arm64: vgic-v3: Add ICV_IGRPEN1_EL1 handler + - KVM: arm64: vgic-v3: Add ICV_IAR1_EL1 handler + - KVM: arm64: vgic-v3: Add ICV_EOIR1_EL1 handler + - KVM: arm64: vgic-v3: Add ICV_AP1Rn_EL1 handler + - KVM: arm64: vgic-v3: Add ICV_HPPIR1_EL1 handler + - KVM: arm64: vgic-v3: Enable trapping of Group-1 system registers + - KVM: arm64: Enable GICv3 Group-1 sysreg trapping via command-line + - KVM: arm64: vgic-v3: Add ICV_BPR0_EL1 handler + - KVM: arm64: vgic-v3: Add ICV_IGNREN0_EL1 handler + - KVM: arm64: vgic-v3: Add misc Group-0 handlers + - KVM: arm64: vgic-v3: Enable trapping of Group-0 system registers + - KVM: arm64: Enable GICv3 Group-0 sysreg trapping via command-line + - arm64: Add MIDR values for Cavium cn83XX SoCs + - arm64: Add workaround for Cavium Thunder erratum 30115 + - KVM: arm64: vgic-v3: Add ICV_DIR_EL1 handler + - KVM: arm64: vgic-v3: Add ICV_RPR_EL1 handler + - KVM: arm64: vgic-v3: Add ICV_CTLR_EL1 handler + - KVM: arm64: vgic-v3: Add ICV_PMR_EL1 handler + - KVM: arm64: Enable GICv3 common sysreg trapping via command-line + - KVM: arm64: vgic-v3: Log which GICv3 system registers are trapped + - KVM: arm64: Log an error if trapping a read-from-write-only GICv3 access + - KVM: arm64: Log an error if trapping a write-to-read-only GICv3 access + * hns: under heavy load, NIC may fail and require reboot (LP: #1704146) + - net: hns: Bugfix for Tx timeout handling in hns driver + * New ACPI identifiers for ThunderX SMMU (LP: #1703437) + - iommu/arm-smmu: Plumb in new ACPI identifiers + * Transparent hugepages should default to enabled=madvise (LP: #1703742) + - SAUCE: use CONFIG_TRANSPARENT_HUGEPAGE_MADVISE=y as default + * Artful update to v4.12.1 stable release (LP: #1703858) + - driver core: platform: fix race condition with driver_override + - RDMA/uverbs: Check port number supplied by user verbs cmds + - usb: dwc3: replace %p with %pK + - USB: serial: cp210x: add ID for CEL EM3588 USB ZigBee stick + - usb: usbip: set buffer pointers to NULL after free + - Add USB quirk for HVR-950q to avoid intermittent device resets + - usb: Fix typo in the definition of Endpoint[out]Request + - USB: core: fix device node leak + - USB: serial: option: add two Longcheer device ids + - USB: serial: qcserial: new Sierra Wireless EM7305 device ID + - xhci: Limit USB2 port wake support for AMD Promontory hosts + - gfs2: Fix glock rhashtable rcu bug + - Add "shutdown" to "struct class". + - tpm: Issue a TPM2_Shutdown for TPM2 devices. + - tpm: fix a kernel memory leak in tpm-sysfs.c + - powerpc/powernv: Fix CPU_HOTPLUG=n idle.c compile error + - x86/uaccess: Optimize copy_user_enhanced_fast_string() for short strings + - sched/fair, cpumask: Export for_each_cpu_wrap() + - sched/core: Implement new approach to scale select_idle_cpu() + - sched/numa: Use down_read_trylock() for the mmap_sem + - sched/numa: Override part of migrate_degrades_locality() when idle balancing + - sched/fair: Simplify wake_affine() for the single socket case + - sched/numa: Implement NUMA node level wake_affine() + - sched/fair: Remove effective_load() + - sched/numa: Hide numa_wake_affine() from UP build + - xen: avoid deadlock in xenbus driver + - crypto: drbg - Fixes panic in wait_for_completion call + - Linux 4.12.1 + * cxlflash update request in the Xenial SRU stream (LP: #1702521) + - scsi: cxlflash: Combine the send queue locks + - scsi: cxlflash: Update cxlflash_afu_sync() to return errno + - scsi: cxlflash: Reset hardware queue context via specified register + - scsi: cxlflash: Schedule asynchronous reset of the host + - scsi: cxlflash: Handle AFU sync failures + - scsi: cxlflash: Track pending scsi commands in each hardware queue + - scsi: cxlflash: Flush pending commands in cleanup path + - scsi: cxlflash: Add scsi command abort handler + - scsi: cxlflash: Create character device to provide host management interface + - scsi: cxlflash: Separate AFU internal command handling from AFU sync + specifics + - scsi: cxlflash: Introduce host ioctl support + - scsi: cxlflash: Refactor AFU capability checking + - scsi: cxlflash: Support LUN provisioning + - scsi: cxlflash: Support AFU debug + - scsi: cxlflash: Support WS16 unmap + - scsi: cxlflash: Remove zeroing of private command data + - scsi: cxlflash: Update TMF command processing + - scsi: cxlflash: Avoid double free of character device + - scsi: cxlflash: Update send_tmf() parameters + - scsi: cxlflash: Update debug prints in reset handlers + * make snap-pkg support (LP: #1700747) + - make snap-pkg support + * Quirk for non-compliant PCI bridge on HiSilicon D05 board (LP: #1698706) + - SAUCE: PCI: Support hibmc VGA cards behind a misbehaving HiSilicon bridge + * arm64: fix crash reading /proc/kcore (LP: #1702749) + - fs/proc: kcore: use kcore_list type to check for vmalloc/module address + - arm64: mm: select CONFIG_ARCH_PROC_KCORE_TEXT + * Opal and POWER9 DD2 (LP: #1702159) + - SAUCE: powerpc/powernv: Tell OPAL about our MMU mode on POWER9 + * Data corruption with hio driver (LP: #1701316) + - SAUCE: hio: Fix incorrect use of enum req_opf values + * Miscellaneous Ubuntu changes + - SAUCE: (noup) Update spl to 0.6.5.10-1, zfs to 0.6.5.10-1ubuntu2 + - snapcraft.yaml: Sync with xenial + - [Config] CONFIG_CAVIUM_ERRATUM_30115=y + * Miscellaneous upstream changes + - Revert "UBUNTU: SAUCE: (efi-lockdown) efi: Add sysctls for secureboot and + MokSBState" + + [ Ubuntu: 4.12.0-6.7 ] + + * update ENA driver to 1.2.0k from net-next (LP: #1701575) + - net: ena: change return value for unsupported features unsupported return + value + - net: ena: add hardware hints capability to the driver + - net: ena: change sizeof() argument to be the type pointer + - net: ena: add reset reason for each device FLR + - net: ena: add support for out of order rx buffers refill + - net: ena: allow the driver to work with small number of msix vectors + - net: ena: use napi_schedule_irqoff when possible + - net: ena: separate skb allocation to dedicated function + - net: ena: use lower_32_bits()/upper_32_bits() to split dma address + - net: ena: update driver's rx drop statistics + - net: ena: update ena driver to version 1.2.0 + * APST gets enabled against explicit kernel option (LP: #1699004) + - nvme: explicitly disable APST on quirked devices + * Miscellaneous Ubuntu changes + - SAUCE: hio: Update to Huawei ES3000_V2 (2.1.0.40) + - SAUCE: hio updates for 4.12 + - SAUCE: Enable hio build + + [ Ubuntu: 4.12.0-5.6 ] + + * ERAT invalidate on context switch removal (LP: #1700819) + - powerpc: Only do ERAT invalidate on radix context switch on P9 DD1 + * powerpc: Invalidate ERAT on powersave wakeup for POWER9 (LP: #1700521) + - SAUCE: powerpc: Invalidate ERAT on powersave wakeup for POWER9 + * Miscellaneous Ubuntu changes + - d-i: Move qcom-emac from arm64 to shared nic-modules + * Rebase to v4.12 + + [ Ubuntu: 4.12.0-4.5 ] + + * aacraid driver may return uninitialized stack data to userspace + (LP: #1700077) + - SAUCE: scsi: aacraid: Don't copy uninitialized stack memory to userspace + * KILLER1435-S[0489:e0a2] BT cannot search BT 4.0 device (LP: #1699651) + - Bluetooth: btusb: Add support for 0489:e0a2 QCA_ROME device + * AACRAID for power9 platform (LP: #1689980) + - scsi: aacraid: Remove __GFP_DMA for raw srb memory + - scsi: aacraid: Fix DMAR issues with iommu=pt + - scsi: aacraid: Added 32 and 64 queue depth for arc natives + - scsi: aacraid: Set correct Queue Depth for HBA1000 RAW disks + - scsi: aacraid: Remove reset support from check_health + - scsi: aacraid: Change wait time for fib completion + - scsi: aacraid: Log count info of scsi cmds before reset + - scsi: aacraid: Print ctrl status before eh reset + - scsi: aacraid: Using single reset mask for IOP reset + - scsi: aacraid: Rework IOP reset + - scsi: aacraid: Add periodic checks to see IOP reset status + - scsi: aacraid: Rework SOFT reset code + - scsi: aacraid: Rework aac_src_restart + - scsi: aacraid: Use correct function to get ctrl health + - scsi: aacraid: Make sure ioctl returns on controller reset + - scsi: aacraid: Enable ctrl reset for both hba and arc + - scsi: aacraid: Add reset debugging statements + - scsi: aacraid: Remove reference to Series-9 + - scsi: aacraid: Update driver version to 50834 + * hibmc driver does not include "pci:" prefix in bus ID (LP: #1698700) + - SAUCE: drm: hibmc: Use set_busid function from drm core + * HiSilicon D05: installer doesn't appear on VGA (LP: #1698954) + - d-i: Add hibmc-drm to kernel-image udeb + * Fix /proc/cpuinfo revision for POWER9 DD2 (LP: #1698844) + - SAUCE: powerpc: Fix /proc/cpuinfo revision for POWER9 DD2 + * Miscellaneous Ubuntu changes + - [Config] CONFIG_SATA_MV=n and CONFIG_GENERIC_PHY=n for s390x + - [Config] CONFIG_ATA=n for s390x + - [Config] Update annotations for 4.12 + * Rebase to v4.12-rc7 + + [ Ubuntu: 4.12.0-3.4 ] + + * Miscellaneous upstream changes + - ufs: fix the logics for tail relocation + * Rebase to v4.12-rc6 + + [ Ubuntu: 4.12.0-2.3 ] + + * CVE-2014-9900 + - SAUCE: (no-up) net: Zeroing the structure ethtool_wolinfo in + ethtool_get_wol() + * System doesn't boot properly on Gigabyte AM4 motherboards (AMD Ryzen) + (LP: #1671360) + - pinctrl/amd: Use regular interrupt instead of chained + * extend-diff-ignore should use exact matches (LP: #1693504) + - [Packaging] exact extend-diff-ignore matches + * Miscellaneous Ubuntu changes + - SAUCE: efi: Don't print secure boot state from the efi stub + - ubuntu: vbox -- Update to 5.1.22-dfsg-1 + - SAUCE: vbox fixes for 4.12 + - Re-enable virtualbox build + - [Config] CONFIG_ORANGEFS_FS=m + - SAUCE: (noup) Update spl to 0.6.5.9-1ubuntu2, zfs to 0.6.5.9-5ubuntu7 + - Enable zfs build + * Rebase to v4.12-rc4 + * Rebase to v4.12-rc5 + + [ Ubuntu: 4.12.0-1.2 ] + + * Enable Matrox driver for Ubuntu 16.04.3 (LP: #1693337) + - [Config] Enable CONFIG_DRM_MGAG200 as module + * Support low-pin-count devices on Hisilicon SoCs (LP: #1677319) + - [Config] CONFIG_LIBIO=y on arm64 only + - SAUCE: LIBIO: Introduce a generic PIO mapping method + - SAUCE: OF: Add missing I/O range exception for indirect-IO devices + - [Config] CONFIG_HISILICON_LPC=y + - SAUCE: LPC: Support the device-tree LPC host on Hip06/Hip07 + - SAUCE: LIBIO: Support the dynamically logical PIO registration of ACPI host + I/O + - SAUCE: LPC: Add the ACPI LPC support + - SAUCE: PCI: Apply the new generic I/O management on PCI IO hosts + - SAUCE: PCI: Restore codepath for !CONFIG_LIBIO + * POWER9: Additional patches for TTY and CPU_IDLE (LP: #1674325) + - SAUCE: tty: Fix ldisc crash on reopened tty + * Miscellaneous Ubuntu changes + - [Debian] Add build-dep on libnuma-dev to enable 'perf bench numa' + - Rebase to v4.12-rc3 + * Rebase to v4.12-rc3 + + [ Ubuntu: 4.12.0-0.1 ] + + * please enable CONFIG_ARM64_LSE_ATOMICS (LP: #1691614) + - [Config] CONFIG_ARM64_LSE_ATOMICS=y + * [Regression] NUMA_BALANCING disabled on arm64 (LP: #1690914) + - [Config] CONFIG_NUMA_BALANCING{,_DEFAULT_ENABLED}=y on arm64 + * exec'ing a setuid binary from a threaded program sometimes fails to setuid + (LP: #1672819) + - SAUCE: exec: ensure file system accounting in check_unsafe_exec is correct + * Miscellaneous Ubuntu changes + - Update find-missing-sauce.sh to compare to artful + - Update dropped.txt + - SAUCE: (efi-lockdown) efi: Add EFI_SECURE_BOOT bit + - SAUCE: (efi-lockdown) Add the ability to lock down access to the running + kernel image + - SAUCE: (efi-lockdown) efi: Lock down the kernel if booted in secure boot + mode + - SAUCE: (efi-lockdown) Enforce module signatures if the kernel is locked down + - SAUCE: (efi-lockdown) Restrict /dev/mem and /dev/kmem when the kernel is + locked down + - SAUCE: (efi-lockdown) Add a sysrq option to exit secure boot mode + - SAUCE: (efi-lockdown) kexec: Disable at runtime if the kernel is locked down + - SAUCE: (efi-lockdown) Copy secure_boot flag in boot params across kexec + reboot + - SAUCE: (efi-lockdown) kexec_file: Disable at runtime if securelevel has been + set + - SAUCE: (efi-lockdown) hibernate: Disable when the kernel is locked down + - SAUCE: (efi-lockdown) uswsusp: Disable when the kernel is locked down + - SAUCE: (efi-lockdown) PCI: Lock down BAR access when the kernel is locked + down + - SAUCE: (efi-lockdown) x86: Lock down IO port access when the kernel is + locked down + - SAUCE: (efi-lockdown) x86: Restrict MSR access when the kernel is locked + down + - SAUCE: (efi-lockdown) asus-wmi: Restrict debugfs interface when the kernel + is locked down + - SAUCE: (efi-lockdown) ACPI: Limit access to custom_method when the kernel is + locked down + - SAUCE: (efi-lockdown) acpi: Ignore acpi_rsdp kernel param when the kernel + has been locked down + - SAUCE: (efi-lockdown) acpi: Disable ACPI table override if the kernel is + locked down + - SAUCE: (efi-lockdown) acpi: Disable APEI error injection if the kernel is + locked down + - SAUCE: (efi-lockdown) Enable cold boot attack mitigation + - SAUCE: (efi-lockdown) bpf: Restrict kernel image access functions when the + kernel is locked down + - SAUCE: (efi-lockdown) scsi: Lock down the eata driver + - SAUCE: (efi-lockdown) Prohibit PCMCIA CIS storage when the kernel is locked + down + - SAUCE: (efi-lockdown) Lock down TIOCSSERIAL + - SAUCE: (efi-lockdown) KEYS: Allow unrestricted boot-time addition of keys to + secondary keyring + - SAUCE: (efi-lockdown) efi: Add EFI signature data types + - SAUCE: (efi-lockdown) efi: Add an EFI signature blob parser + - SAUCE: (efi-lockdown) MODSIGN: Import certificates from UEFI Secure Boot + - SAUCE: (efi-lockdown) MODSIGN: Allow the "db" UEFI variable to be suppressed + - SAUCE: (efi-lockdown) efi: Sanitize boot_params in efi stub + - SAUCE: (efi-lockdown) efi: Add secure_boot state and status bit for + MokSBState + - SAUCE: (efi-lockdown) efi: Add sysctls for secureboot and MokSBState + - [Config] Set values for UEFI secure boot lockdown options + - Disable virtualbox build + - Disable hio build + - SAUCE: securityfs: Replace CURRENT_TIME with current_time() + - Disable zfs build + - [Debian] Work out upstream tag for use with gen-auto-reconstruct + - SAUCE: Import aufs driver + - SAUCE: aufs -- Include linux/mm.h in fs/aufs/file.h + - [Config] Enable aufs + - SAUCE: perf callchain: Include errno.h on x86 unconditinally + * Rebase to v4.12-rc2 + + -- Marcelo Henrique Cerri Wed, 22 Nov 2017 13:58:15 -0200 + +linux-azure (4.13.0-1000.0) xenial; urgency=low + + * Empty. + + -- Marcelo Henrique Cerri Wed, 22 Nov 2017 11:17:34 -0200 + +linux-azure (4.11.0-1016.16) xenial; urgency=low + + * linux-azure: 4.11.0-1016.16 -proposed tracker (LP: #1736123) + + * CVE-2017-1000405 + - mm, thp: Do not make page table dirty unconditionally in touch_p[mu]d() + + * CVE-2017-16939 + - ipsec: Fix aborted xfrm policy dump crash + + -- Marcelo Henrique Cerri Tue, 05 Dec 2017 14:20:03 -0200 + +linux-azure (4.11.0-1015.15) xenial; urgency=low + + * linux-azure: 4.11.0-1015.15 -proposed tracker (LP: #1728930) + + * CVE-2017-12188 + - KVM: nVMX: update last_nonleaf_level when initializing nested EPT + - KVM: MMU: always terminate page walks at level 1 + + -- Kleber Sacilotto de Souza Thu, 02 Nov 2017 17:43:02 +0100 + +linux-azure (4.11.0-1014.14) xenial; urgency=low + + * linux-azure: 4.11.0-1014.14 -proposed tracker (LP: #1724060) + + * [Hyper-V] linux-azure cifs mount error caused by missing nls_utf8.ko module + (LP: #1719624) + - [config] azure: move nls_utf8.ko to linux-image package + + -- Thadeu Lima de Souza Cascardo Mon, 16 Oct 2017 17:24:42 -0200 + +linux-azure (4.11.0-1013.13) xenial; urgency=low + + * linux-azure: 4.11.0-1013.13 -proposed tracker (LP: #1720818) + + * [Hyper-V] Docker failures with linux-azure 4.11.0-1011 (LP: #1719045) + - Revert "UBUNTU: SAUCE: tracing/hyper-v: trace hyperv_mmu_flush_tlb_others()" + - Revert "UBUNTU: SAUCE: x86/hyper-v: support extended CPU ranges for TLB + flush hypercalls" + - Revert "UBUNTU: SAUCE: x86/hyper-v: use hypercall for remote TLB flush" + + -- Marcelo Henrique Cerri Mon, 02 Oct 2017 12:20:26 -0300 + +linux-azure (4.11.0-1012.12) xenial; urgency=low + + * linux-azure: 4.11.0-1012.12 -proposed tracker (LP: #1718763) + + * linux-azure: KVM nested virtualization is disabled (LP: #1718740) + - [Config] azure: enable KVM support + + -- Marcelo Henrique Cerri Thu, 21 Sep 2017 16:41:14 -0300 + +linux-azure (4.11.0-1011.11) xenial; urgency=low + + * linux-azure: 4.11.0-1011.11 -proposed tracker (LP: #1718265) + + * KVP scripts location for linux-azure image (LP: #1718264) + - SAUCE: azure: hv_kvp_daemon: search for HV scripts in /usr/sbin/ + + * [linux-azure] RTC options not present in kernel config (LP: #1718262) + - [Config] azure: Enable RTC + + -- Marcelo Henrique Cerri Tue, 19 Sep 2017 15:47:22 -0300 + +linux-azure (4.11.0-1010.10) xenial; urgency=low + + * linux-azure: 4.11.0-1010.10 -proposed tracker (LP: #1717616) + + * linux-azure: persistent memory is not working (LP: #1715755) + - ext4: fix fault handling when mounted with -o dax,ro + - [Config] azure: CONFIG_ND_BLK=y + - [Config] azure: CONFIG_ACPI_NFIT=y + + * [Hyper-V] 16.04 kexec-tools doesn't match linux-azure (LP: #1712867) + - x86/KASLR: Fix kexec kernel boot crash when KASLR randomization fails + + -- Marcelo Henrique Cerri Fri, 15 Sep 2017 20:06:10 -0300 + +linux-azure (4.11.0-1009.9) xenial; urgency=low + + * linux-azure: 4.11.0-1009.9 -proposed tracker (LP: #1715731) + + * [Hyper-V] Read TSC frequency from a synthetic MSR (LP: #1715489) + - x86/hyperv: Check frequency MSRs presence according to the specification + - x86/hyperv: Read TSC frequency from a synthetic MSR + + * [Hyper-V] linux-azure: rdma_ucm should autoload on HPC images (LP: #1712915) + - azure: force rdma_ucm to be loaded when hv_network_direct_* is loaded + + -- Marcelo Henrique Cerri Thu, 07 Sep 2017 16:28:39 -0300 + +linux-azure (4.11.0-1008.8) xenial; urgency=low + + * linux-azure: 4.11.0-1008.8 -proposed tracker (LP: #1713823) + + * linux-azure: add support for opengcs (LP: #1713812) + - SAUCE: Added vsock transport support to 9pfs + - SAUCE: NVDIMM: reducded ND_MIN_NAMESPACE_SIZE from 4MB to 4KB (page size) + + -- Marcelo Henrique Cerri Tue, 29 Aug 2017 18:14:56 -0300 + +linux-azure (4.11.0-1007.7) xenial; urgency=low + + * linux-azure: 4.11.0-1007.7 -proposed tracker (LP: #1712446) + + * [Hyper-V] linux-azure merge netvsc upstream VF & misc patches (LP: #1711243) + - netvsc: delay setup of VF device + - netvsc: Initialize 64-bit stats seqcount + - netvsc: fix race on sub channel creation + - netvsc: propagate MAC address change to VF slave + - netvsc: optimize receive completions + + * linux-azure: Please move the rdma_ucm driver from -extras to the main kernel + package (LP: #1711408) + - azure: move rdma_ucm module to the main kernel package + + * linux-azure: enable DAX config options (LP: #1711230) + - [config] azure: DAX support + + * Miscellaneous upstream changes + - Revert "UBUNTU: [Config] select gcc-6 explicitly" + + [ Ubuntu: 4.11.0-14.22 ] + + * CVE-2017-1000112 + - udp: consistently apply ufo or fragmentation + * CVE-2017-1000111 + - packet: fix tp_reserve race in packet_set_ring + * linux 4.11.0-13.19 ADT test failure with linux 4.11.0-13.19 (LP: #1709590) + - SAUCE: ZFS: Don't take spin lock on rwlock owner + * [Config] select gcc-6 explicitly + + [ Ubuntu: 4.11.0-13.19 ] + + * CVE-2017-7533 + - dentry name snapshots + + [ Ubuntu: 4.11.0-12.18 ] + + * linux: 4.11.0-12.18 -proposed tracker (LP: #1707635) + - no change rebuild to pick up the new binutils. + * Adt tests of src:linux time out often on armhf lxc containers (LP: #1705495) + - [Packaging] tests -- reduce rebuild test to one flavour + - [Packaging] tests -- reduce rebuild test to one flavour -- use filter + * [ARM64] config EDAC_GHES=y depends on EDAC_MM_EDAC=y (LP: #1706141) + - [Config] set EDAC_MM_EDAC=y for ARM64 + * [Hyper-V] hv_netvsc: Exclude non-TCP port numbers from vRSS hashing + (LP: #1690174) + - hv_netvsc: Exclude non-TCP port numbers from vRSS hashing + * ath10k doesn't report full RSSI information (LP: #1706531) + - ath10k: add per chain RSSI reporting + * ideapad_laptop don't support v310-14isk (LP: #1705378) + - platform/x86: ideapad-laptop: Add several models to no_hw_rfkill + * Ubuntu 16.04.3: Qemu fails on P9 (LP: #1686019) + - KVM: PPC: Pass kvm* to kvmppc_find_table() + - KVM: PPC: Use preregistered memory API to access TCE list + - KVM: PPC: VFIO: Add in-kernel acceleration for VFIO + - powerpc/powernv/iommu: Add real mode version of iommu_table_ops::exchange() + - powerpc/iommu/vfio_spapr_tce: Cleanup iommu_table disposal + - powerpc/vfio_spapr_tce: Add reference counting to iommu_table + - powerpc/mmu: Add real mode support for IOMMU preregistered memory + - KVM: PPC: Reserve KVM_CAP_SPAPR_TCE_VFIO capability number + - KVM: PPC: Book3S HV: Add radix checks in real-mode hypercall handlers + * hns: ethtool selftest crashes system (LP: #1705712) + - net/hns:bugfix of ethtool -t phy self_test + * ThunderX: soft lockup on 4.8+ kernels when running qemu-efi with vhost=on + (LP: #1673564) + - KVM: arm/arm64: vgic-v3: Use PREbits to infer the number of ICH_APxRn_EL2 + registers + - KVM: arm/arm64: vgic-v3: Fix nr_pre_bits bitfield extraction + - arm64: Add a facility to turn an ESR syndrome into a sysreg encoding + - KVM: arm/arm64: vgic-v3: Add accessors for the ICH_APxRn_EL2 registers + - KVM: arm64: Make kvm_condition_valid32() accessible from EL2 + - KVM: arm64: vgic-v3: Add hook to handle guest GICv3 sysreg accesses at EL2 + - KVM: arm64: vgic-v3: Add ICV_BPR1_EL1 handler + - KVM: arm64: vgic-v3: Add ICV_IGRPEN1_EL1 handler + - KVM: arm64: vgic-v3: Add ICV_IAR1_EL1 handler + - KVM: arm64: vgic-v3: Add ICV_EOIR1_EL1 handler + - KVM: arm64: vgic-v3: Add ICV_AP1Rn_EL1 handler + - KVM: arm64: vgic-v3: Add ICV_HPPIR1_EL1 handler + - KVM: arm64: vgic-v3: Enable trapping of Group-1 system registers + - KVM: arm64: Enable GICv3 Group-1 sysreg trapping via command-line + - KVM: arm64: vgic-v3: Add ICV_BPR0_EL1 handler + - KVM: arm64: vgic-v3: Add ICV_IGNREN0_EL1 handler + - KVM: arm64: vgic-v3: Add misc Group-0 handlers + - KVM: arm64: vgic-v3: Enable trapping of Group-0 system registers + - KVM: arm64: Enable GICv3 Group-0 sysreg trapping via command-line + - arm64: Add MIDR values for Cavium cn83XX SoCs + - arm64: Add workaround for Cavium Thunder erratum 30115 + - KVM: arm64: vgic-v3: Add ICV_DIR_EL1 handler + - KVM: arm64: vgic-v3: Add ICV_RPR_EL1 handler + - KVM: arm64: vgic-v3: Add ICV_CTLR_EL1 handler + - KVM: arm64: vgic-v3: Add ICV_PMR_EL1 handler + - KVM: arm64: Enable GICv3 common sysreg trapping via command-line + - KVM: arm64: vgic-v3: Log which GICv3 system registers are trapped + - arm64: KVM: Make unexpected reads from WO registers inject an undef + - KVM: arm64: Log an error if trapping a read-from-write-only GICv3 access + - KVM: arm64: Log an error if trapping a write-to-read-only GICv3 access + * ath9k freezes suspend resume Ubuntu 17.04 (LP: #1697027) + - ath9k: fix an invalid pointer dereference in ath9k_rng_stop() + * xhci_hcd: ERROR Transfer event TRB DMA ptr not part of current TD ep_index 2 + comp_code 13 (LP: #1667750) + - xhci: Bad Ethernet performance plugged in ASM1042A host + * Migrating KSM page causes the VM lock up as the KSM page merging list is too + large (LP: #1680513) + - ksm: introduce ksm_max_page_sharing per page deduplication limit + - ksm: fix use after free with merge_across_nodes = 0 + - ksm: cleanup stable_node chain collapse case + - ksm: swap the two output parameters of chain/chain_prune + - ksm: optimize refile of stable_node_dup at the head of the chain + * Artful update to v4.11.12 stable release (LP: #1706067) + - net/phy: micrel: configure intterupts after autoneg workaround + - ipv6: avoid unregistering inet6_dev for loopback + - netvsc: don't access netdev->num_rx_queues directly + - sfc: Fix MCDI command size for filter operations + - net: account for current skb length when deciding about UFO + - net: dp83640: Avoid NULL pointer dereference. + - tcp: reset sk_rx_dst in tcp_disconnect() + - net: prevent sign extension in dev_get_stats() + - virtio-net: serialize tx routine during reset + - net: sched: Fix one possible panic when no destroy callback + - mlxsw: spectrum_router: Fix NULL pointer dereference + - rocker: move dereference before free + - bpf: prevent leaking pointer via xadd on unpriviledged + - net: handle NAPI_GRO_FREE_STOLEN_HEAD case also in napi_frags_finish() + - net/mlx5: Cancel delayed recovery work when unloading the driver + - net/mlx5e: Fix TX carrier errors report in get stats ndo + - ipv6: dad: don't remove dynamic addresses if link is down + - vxlan: fix hlist corruption + - geneve: fix hlist corruption + - net: core: Fix slab-out-of-bounds in netdev_stats_to_stats64 + - liquidio: fix bug in soft reset failure detection + - net: ipv6: Compare lwstate in detecting duplicate nexthops + - vrf: fix bug_on triggered by rx when destroying a vrf + - rds: tcp: use sock_create_lite() to create the accept socket + - net/mlx5e: Initialize CEE's getpermhwaddr address buffer to 0xff + - cxgb4: fix BUG() on interrupt deallocating path of ULD + - tap: convert a mutex to a spinlock + - bridge: mdb: fix leak on complete_info ptr on fail path + - brcmfmac: fix possible buffer overflow in brcmf_cfg80211_mgmt_tx() + - sfc: don't read beyond unicast address list + - Adding asm-prototypes.h for genksyms to generate crc + - sed regex in Makefile.build requires line break between exported symbols + - Adding the type of exported symbols + - sparc64: Fix gup_huge_pmd + - block: Fix a blk_exit_rl() regression + - brcmfmac: Fix a memory leak in error handling path in + 'brcmf_cfg80211_attach' + - brcmfmac: Fix glom_skb leak in brcmf_sdiod_recv_chain + - efi: Process the MEMATTR table only if EFI_MEMMAP is enabled + - cfg80211: Define nla_policy for NL80211_ATTR_LOCAL_MESH_POWER_MODE + - cfg80211: Validate frequencies nested in NL80211_ATTR_SCAN_FREQUENCIES + - cfg80211: Check if PMKID attribute is of expected size + - cfg80211: Check if NAN service ID is of expected size + - drm/amdgpu/gfx6: properly cache mc_arb_ramcfg + - irqchip/gic-v3: Fix out-of-bound access in gic_set_affinity + - parisc: Report SIGSEGV instead of SIGBUS when running out of stack + - parisc: use compat_sys_keyctl() + - parisc: DMA API: return error instead of BUG_ON for dma ops on non dma devs + - parisc/mm: Ensure IRQs are off in switch_mm() + - tools/lib/lockdep: Reduce MAX_LOCK_DEPTH to avoid overflowing lock_chain/: + Depth + - thp, mm: fix crash due race in MADV_FREE handling + - kernel/extable.c: mark core_kernel_text notrace + - mm/list_lru.c: fix list_lru_count_node() to be race free + - fs/dcache.c: fix spin lockup issue on nlru->lock + - checkpatch: silence perl 5.26.0 unescaped left brace warnings + - binfmt_elf: use ELF_ET_DYN_BASE only for PIE + - arm: move ELF_ET_DYN_BASE to 4MB + - arm64: move ELF_ET_DYN_BASE to 4GB / 4MB + - powerpc: move ELF_ET_DYN_BASE to 4GB / 4MB + - s390: reduce ELF_ET_DYN_BASE + - exec: Limit arg stack to at most 75% of _STK_LIM + - powerpc/kexec: Fix radix to hash kexec due to IAMR/AMOR + - ARM64: dts: marvell: armada37xx: Fix timer interrupt specifiers + - arm64: Preventing READ_IMPLIES_EXEC propagation + - vt: fix unchecked __put_user() in tioclinux ioctls + - rcu: Add memory barriers for NOCB leader wakeup + - nvmem: core: fix leaks on registration errors + - Drivers: hv: vmbus: Close timing hole that can corrupt per-cpu page + - mnt: In umount propagation reparent in a separate pass + - mnt: In propgate_umount handle visiting mounts in any order + - mnt: Make propagate_umount less slow for overlapping mount propagation trees + - selftests/capabilities: Fix the test_execve test + - mm: fix overflow check in expand_upwards() + - crypto: talitos - Extend max key length for SHA384/512-HMAC and AEAD + - crypto: atmel - only treat EBUSY as transient if backlog + - crypto: sha1-ssse3 - Disable avx2 + - crypto: caam - properly set IV after {en,de}crypt + - crypto: caam - fix signals handling + - sched/fair, cpumask: Export for_each_cpu_wrap() + - sched/topology: Fix building of overlapping sched-groups + - sched/topology: Optimize build_group_mask() + - sched/topology: Fix overlapping sched_group_mask + - PM / wakeirq: Convert to SRCU + - ALSA: x86: Clear the pdata.notify_lpe_audio pointer before teardown + - PM / QoS: return -EINVAL for bogus strings + - kvm: vmx: Do not disable intercepts for BNDCFGS + - kvm: x86: Guest BNDCFGS requires guest MPX support + - kvm: vmx: Check value written to IA32_BNDCFGS + - kvm: vmx: allow host to access guest MSR_IA32_BNDCFGS + - Linux 4.11.12 + * Artful update to v4.11.11 stable release (LP: #1706066) + - mqueue: fix a use-after-free in sys_mq_notify() + - proc: Fix proc_sys_prune_dcache to hold a sb reference + - locking/rwsem-spinlock: Fix EINTR branch in __down_write_common() + - staging: vt6556: vnt_start Fix missing call to vnt_key_init_table. + - staging: comedi: fix clean-up of comedi_class in comedi_init() + - crypto: caam - fix gfp allocation flags (part I) + - crypto: rsa-pkcs1pad - use constant time memory comparison for MACs + - ext4: check return value of kstrtoull correctly in reserved_clusters_store + - x86/mm/pat: Don't report PAT on CPUs that don't support it + - Linux 4.11.11 + * Change CONFIG_IBMVETH to module (LP: #1704479) + - [Config] CONFIG_IBMVETH=m + * hns: use after free in hns_nic_net_xmit_hw (LP: #1704885) + - net: hns: Fix a skb used after free bug + * Opal and POWER9 DD2 (LP: #1702159) + - powerpc/powernv: Fix boot on Power8 bare metal due to opal_configure_cores() + * CVE-2017-1000364 + - mm/mmap.c: do not blow on PROT_NONE MAP_FIXED holes in the stack + - mm/mmap.c: expand_downwards: don't require the gap if !vm_prev + * [Xenial] nvme: Quirks for PM1725 controllers (LP: #1704435) + - nvme: Quirks for PM1725 controllers + * bonding: stack dump when unregistering a netdev (LP: #1704102) + - bonding: avoid NETDEV_CHANGEMTU event when unregistering slave + * Ubuntu 16.04 IOB Error when the Mustang board rebooted (LP: #1693673) + - drivers: net: xgene: Fix redundant prefetch buffer cleanup + * Ubuntu16.04: NVMe 4K+T10 DIF/DIX format returns I/O error on dd with split + op (LP: #1689946) + - blk-mq: NVMe 512B/4K+T10 DIF/DIX format returns I/O error on dd with split + op + * linux >= 4.2: bonding 802.3ad does not work with 5G, 25G and 50G link speeds + (LP: #1697892) + - bonding: add 802.3ad support for 25G speeds + - bonding: fix 802.3ad support for 5G and 50G speeds + * hns: under heavy load, NIC may fail and require reboot (LP: #1704146) + - net: hns: Bugfix for Tx timeout handling in hns driver + * New ACPI identifiers for ThunderX SMMU (LP: #1703437) + - iommu/arm-smmu: Plumb in new ACPI identifiers + * Transparent hugepages should default to enabled=madvise (LP: #1703742) + - [Config] use CONFIG_TRANSPARENT_HUGEPAGE_MADVISE=y as default + * Miscellaneous Ubuntu changes + - [Config] CONFIG_CAVIUM_ERRATUM_30115=y + * Miscellaneous upstream changes + - platform/x86: thinkpad_acpi: guard generic hotkey case + - platform/x86: thinkpad_acpi: add mapping for new hotkeys + - selftest/memfd/Makefile: Fix build error + + -- Marcelo Henrique Cerri Tue, 22 Aug 2017 20:28:34 -0300 + +linux-azure (4.11.0-1006.6) xenial; urgency=low + + * linux-azure: 4.11.0-1006.6 -proposed tracker (LP: #1710944) + + * Please only recommend or suggest initramfs-tools | linux-initramfs-tool for + kernels able to boot without initramfs (LP: #1700972) + - [Debian] Don't abort installation if update-initramfs is missing + + * linux-azure: vmbus-rdma: Use underscore to separate major and minor host OS + version (LP: #1709101) + - SAUCE: vmbus-rdma: Use _ to separate major and minor host OS version + + * linux-azure: prevent RDMA drivers from being hot plugged (LP: #1708699) + - azure: Prevent hv_network_direct_* drivers from being hot plugged + + * Infiniband: add missing values in queue pair attributes (LP: #1709681) + - RDMA/core: Initialize port_num in qp_attr + + * [Hyper-V] Transparent SR-IOV solves bonding race conditions (LP: #1708469) + - Revert "UBUNTU: SAUCE: netvsc: keep track of vf passthrough statistics" + - Revert "UBUNTU: SAUCE: netvsc: optional transparent fail over" + - Revert "UBUNTU: SAUCE: netvsc: optimize calculation of number of slots" + - hv_netvsc: Fix the carrier state error when data path is off + - SAUCE: netvsc: add some rtnl_dereference annotations + - SAUCE: netvsc: include rtnetlink.h + - SAUCE: netvsc: transparent VF management + - SAUCE: netvsc: add documentation + - netvsc: remove bonding setup script + - SAUCE: netvsc: make sure and unregister datapath + + * [Hyper-V] netvsc: fix rtnl deadlock on unregister of vf (LP: #1708995) + - SAUCE: netvsc: fix rtnl deadlock on unregister of vf + + -- Kamal Mostafa Tue, 15 Aug 2017 11:40:28 -0700 + +linux-azure (4.11.0-1005.5) xenial; urgency=low + + * linux-azure: 4.11.0-1005.5 -proposed tracker (LP: #1708017) + + * linux-azure: Update Hyper-V support (LP: #1707285) + - x86/hyperv: Implement hv_get_tsc_page() + - x86/hyperv: Move TSC reading method to asm/mshyperv.h + - x86/vdso: Add VCLOCK_HVCLOCK vDSO clock read method + - netvsc: fix hang on netvsc module removal + - hyperv: remove unnecessary return variable + - vmbus: simplify hv_ringbuffer_read + - scsi: storvsc: use in place iterator function + - netvsc: Fix a bug in sub-channel handling + - vmbus: refactor hv_signal_on_read + - vmbus: eliminate duplicate cached index + - vmbus: more host signalling avoidance + - tools: hv: properly handle long paths + - HV: properly delay KVP packets when negotiation is in progress + - netvsc: Initialize all channel related state prior to opening the channel + - netvsc: use napi_consume_skb + - netvsc: fix use after free on module removal + - netvsc: pass net_device to netvsc_init_buf and netvsc_connect_vsp + - netvsc: move filter setting to rndis_device + - netvsc: Properly initialize the return value + - netvsc: change order of steps in setting queues + - netvsc: change logic for change mtu and set_queues + - netvsc: use ERR_PTR to avoid dereference issues + - netvsc: prefetch the first incoming ring element + - SAUCE: netvsc: convert ring_size to unsigned + - SAUCE: netvsc: allow overriding send/recv buffer size + - hv_utils: drop .getcrosststamp() support from PTP driver + - vmbus: add prefetch to ring buffer iterator + - netvsc: make sure napi enabled before vmbus_open + - Drivers: hv: util: Make hv_poll_channel() a little more efficient + - hv_utils: fix TimeSync work on pre-TimeSync-v4 hosts + - x86/hyper-v: stash the max number of virtual/logical processor + - SAUCE: x86/hyper-v: make hv_do_hypercall() inline + - SAUCE: x86/hyper-v: fast hypercall implementation + - SAUCE: hyper-v: use fast hypercall for HVCALL_SIGNAL_EVENT + - SAUCE: x86/hyper-v: implement rep hypercalls + - SAUCE: hyper-v: globalize vp_index + - SAUCE: x86/hyper-v: use hypercall for remote TLB flush + - SAUCE: x86/hyper-v: support extended CPU ranges for TLB flush hypercalls + - SAUCE: tracing/hyper-v: trace hyperv_mmu_flush_tlb_others() + - netvsc: fix net poll mode + - netvsc: fix RCU warning in get_stats + - Drivers: hv: vmbus: Close timing hole that can corrupt per-cpu page + - PCI: hv: Convert hv_pci_dev.refs from atomic_t to refcount_t + - PCI: hv: Fix comment formatting and use proper integer fields + - PCI: hv: Use page allocation for hbus structure + - PCI: hv: Temporary own CPU-number-to-vCPU-number infra + - PCI: hv: Add vPCI version protocol negotiation + - PCI: hv: Use vPCI protocol version 1.2 + - Revert "UBUNTU: SAUCE: vmbus: add the matching tasklet_enable() in + vmbus_close_internal()" + - vmbus: re-enable channel tasklet + - SAUCE: vmbus: don't need to check interrupt mask on read side + - netvsc: use hv_get_bytes_to_read + - SAUCE: netvsc: optimize calculation of number of slots + - SAUCE: netvsc: optional transparent fail over + - SAUCE: netvsc: keep track of vf passthrough statistics + - SAUCE: hv-sock: a temporary workaround for the pending_send_size issue + - SAUCE: hv-sock: avoid double FINs if shutdown() is called + + -- Marcelo Henrique Cerri Tue, 01 Aug 2017 17:52:08 -0300 + +linux-azure (4.11.0-1004.4) xenial; urgency=low + + * linux-azure: 4.11.0-1004.4 -proposed tracker (LP: #1707061) + + * Please only recommend or suggest initramfs-tools | linux-initramfs-tool for + kernels able to boot without initramfs (LP: #1700972) + - [Debian] Don't depend on initramfs-tools + + * [Hyper-V] hv_netvsc: Exclude non-TCP port numbers from vRSS hashing + (LP: #1690174) + - hv_netvsc: Exclude non-TCP port numbers from vRSS hashing + + * [Hyper-V] Add infiniband support for Azure HPC (LP: #1701744) + - SAUCE: Add infiniband driver for Azure HPC + - SAUCE: Add driver build configuration to infiniband + - SAUCE: move vmbus-rdma to vmbus-rdma/vmbus-rdma-142 + - SAUCE: vmbus-rdma: add driver for host OS version 144 + - [Config] CONFIG_HYPERV_INFINIBAND_ND=m + - SAUCE: vmbus-rdma: add minor host OS version to modules + + * linux-azure: disable unused modules in the -extra package (LP: #1706165) + - [Config] Remove unused modules from -extra package + + [ Ubuntu: 4.11.0-11.16 ] + + * linux: 4.11.0-11.16 -proposed tracker (LP: #1703901) + * Artful update to v4.11.10 stable release (LP: #1703854) + - fs: add a VALID_OPEN_FLAGS + - fs: completely ignore unknown open flags + - driver core: platform: fix race condition with driver_override + - RDMA/uverbs: Check port number supplied by user verbs cmds + - ceph: choose readdir frag based on previous readdir reply + - tracing/kprobes: Allow to create probe with a module name starting with a + digit + - usb: dwc3: replace %p with %pK + - USB: serial: cp210x: add ID for CEL EM3588 USB ZigBee stick + - Add USB quirk for HVR-950q to avoid intermittent device resets + - usb: usbip: set buffer pointers to NULL after free + - usb: Fix typo in the definition of Endpoint[out]Request + - USB: core: fix device node leak + - arm: remove wrong CONFIG_PROC_SYSCTL ifdef + - pinctrl: sh-pfc: r8a7794: Swap ATA signals + - pinctrl: sh-pfc: r8a7791: Fix SCIF2 pinmux data + - pinctrl: sh-pfc: r8a7791: Add missing DVC_MUTE signal + - pinctrl: sh-pfc: r8a7795: Fix hscif2_clk_b and hscif4_ctrl + - pinctrl: meson: meson8b: fix the NAND DQS pins + - pinctrl: stm32: Fix bad function call + - pinctrl: sunxi: Fix SPDIF function name for A83T + - pinctrl: core: Fix warning by removing bogus code + - pinctrl: mxs: atomically switch mux and drive strength config + - pinctrl: sh-pfc: r8a7791: Add missing HSCIF1 pinmux data + - pinctrl: sh-pfc: Update info pointer after SoC-specific init + - USB: serial: option: add two Longcheer device ids + - USB: serial: qcserial: new Sierra Wireless EM7305 device ID + - xhci: Limit USB2 port wake support for AMD Promontory hosts + - gfs2: Fix glock rhashtable rcu bug + - Add "shutdown" to "struct class". + - tpm: Issue a TPM2_Shutdown for TPM2 devices. + - tpm: fix a kernel memory leak in tpm-sysfs.c + - x86/uaccess: Optimize copy_user_enhanced_fast_string() for short strings + - xen: avoid deadlock in xenbus driver + - crypto: drbg - Fixes panic in wait_for_completion call + - rt286: add Thinkpad Helix 2 to force_combo_jack_table + - Linux 4.11.10 + * CVE-2017-10810 + - drm/virtio: don't leak bo on drm_gem_object_init failure + * cxlflash update request in the Xenial SRU stream (LP: #1702521) + - scsi: cxlflash: Separate RRQ processing from the RRQ interrupt handler + - scsi: cxlflash: Serialize RRQ access and support offlevel processing + - scsi: cxlflash: Implement IRQ polling for RRQ processing + - scsi: cxlflash: Update sysfs helper routines to pass config structure + - scsi: cxlflash: Support dynamic number of FC ports + - scsi: cxlflash: Remove port configuration assumptions + - scsi: cxlflash: Hide FC internals behind common access routine + - scsi: cxlflash: SISlite updates to support 4 ports + - scsi: cxlflash: Support up to 4 ports + - scsi: cxlflash: Fence EEH during probe + - scsi: cxlflash: Remove unnecessary DMA mapping + - scsi: cxlflash: Fix power-of-two validations + - scsi: cxlflash: Fix warnings/errors + - scsi: cxlflash: Improve asynchronous interrupt processing + - scsi: cxlflash: Support multiple hardware queues + - scsi: cxlflash: Add hardware queues attribute + - scsi: cxlflash: Introduce hardware queue steering + - cxl: Enable PCI device IDs for future IBM CXL adapters + - scsi: cxlflash: Select IRQ_POLL + - scsi: cxlflash: Combine the send queue locks + - scsi: cxlflash: Update cxlflash_afu_sync() to return errno + - scsi: cxlflash: Reset hardware queue context via specified register + - scsi: cxlflash: Schedule asynchronous reset of the host + - scsi: cxlflash: Handle AFU sync failures + - scsi: cxlflash: Track pending scsi commands in each hardware queue + - scsi: cxlflash: Flush pending commands in cleanup path + - scsi: cxlflash: Add scsi command abort handler + - scsi: cxlflash: Create character device to provide host management interface + - scsi: cxlflash: Separate AFU internal command handling from AFU sync + specifics + - scsi: cxlflash: Introduce host ioctl support + - scsi: cxlflash: Refactor AFU capability checking + - scsi: cxlflash: Support LUN provisioning + - scsi: cxlflash: Support AFU debug + - scsi: cxlflash: Support WS16 unmap + - scsi: cxlflash: Remove zeroing of private command data + - scsi: cxlflash: Update TMF command processing + - scsi: cxlflash: Avoid double free of character device + - scsi: cxlflash: Update send_tmf() parameters + - scsi: cxlflash: Update debug prints in reset handlers + * make snap-pkg support (LP: #1700747) + - make snap-pkg support + * Quirk for non-compliant PCI bridge on HiSilicon D05 board (LP: #1698706) + - SAUCE: PCI: Support hibmc VGA cards behind a misbehaving HiSilicon bridge + * arm64: fix crash reading /proc/kcore (LP: #1702749) + - fs/proc: kcore: use kcore_list type to check for vmalloc/module address + - arm64: mm: select CONFIG_ARCH_PROC_KCORE_TEXT + * Opal and POWER9 DD2 (LP: #1702159) + - SAUCE: powerpc/powernv: Tell OPAL about our MMU mode on POWER9 + * Data corruption with hio driver (LP: #1701316) + - SAUCE: hio: Fix incorrect use of enum req_opf values + * Artful update to v4.11.9 stable release (LP: #1702515) + - net: don't call strlen on non-terminated string in dev_set_alias() + - net: Fix inconsistent teardown and release of private netdev state. + - net: s390: fix up for "Fix inconsistent teardown and release of private + netdev state" + - mac80211: free netdev on dev_alloc_name() error + - decnet: dn_rtmsg: Improve input length sanitization in + dnrmg_receive_user_skb + - net: Zero ifla_vf_info in rtnl_fill_vfinfo() + - net: ipv6: Release route when device is unregistering + - net: vrf: Make add_fib_rules per network namespace flag + - af_unix: Add sockaddr length checks before accessing sa_family in bind and + connect handlers + - Fix an intermittent pr_emerg warning about lo becoming free. + - sctp: disable BH in sctp_for_each_endpoint + - net: caif: Fix a sleep-in-atomic bug in cfpkt_create_pfx + - net: tipc: Fix a sleep-in-atomic bug in tipc_msg_reverse + - net/mlx5: Remove several module events out of ethtool stats + - net/mlx5e: Added BW check for DIM decision mechanism + - net/mlx5e: Fix wrong indications in DIM due to counter wraparound + - net/mlx5: Enable 4K UAR only when page size is bigger than 4K + - proc: snmp6: Use correct type in memset + - igmp: acquire pmc lock for ip_mc_clear_src() + - igmp: add a missing spin_lock_init() + - qmi_wwan: new Telewell and Sierra device IDs + - net: don't global ICMP rate limit packets originating from loopback + - ipv6: fix calling in6_ifa_hold incorrectly for dad work + - sctp: return next obj by passing pos + 1 into sctp_transport_get_idx + - net/mlx5e: Fix min inline value for VF rep SQs + - net/mlx5e: Avoid doing a cleanup call if the profile doesn't have it + - net/mlx5: Wait for FW readiness before initializing command interface + - net/mlx5e: Fix timestamping capabilities reporting + - decnet: always not take dst->__refcnt when inserting dst into hash table + - net: 8021q: Fix one possible panic caused by BUG_ON in free_netdev + - ipv6: Do not leak throw route references + - rtnetlink: add IFLA_GROUP to ifla_policy + - netfilter: synproxy: fix conntrackd interaction + - NFSv4.x/callback: Create the callback service through svc_create_pooled + - xen/blkback: don't use xen_blkif_get() in xen-blkback kthread + - MIPS: head: Reorder instructions missing a delay slot + - MIPS: Avoid accidental raw backtrace + - MIPS: pm-cps: Drop manual cache-line alignment of ready_count + - MIPS: Fix IRQ tracing & lockdep when rescheduling + - ALSA: hda - Fix endless loop of codec configure + - ALSA: hda - set input_path bitmap to zero after moving it to new place + - NFSv4.2: Don't send mode again in post-EXCLUSIVE4_1 SETATTR with umask + - NFSv4.1: Fix a race in nfs4_proc_layoutget + - Revert "NFS: nfs_rename() handle -ERESTARTSYS dentry left behind" + - ovl: copy-up: don't unlock between lookup and link + - gpiolib: fix filtering out unwanted events + - x86/intel_rdt: Fix memory leak on mount failure + - perf/x86/intel/uncore: Fix wrong box pointer check + - drm/vmwgfx: Free hash table allocated by cmdbuf managed res mgr + - dm thin: do not queue freed thin mapping for next stage processing + - x86/mm: Fix boot crash caused by incorrect loop count calculation in + sync_global_pgds() + - mm/vmalloc.c: huge-vmap: fail gracefully on unexpected huge vmap mappings + - xen/blkback: don't free be structure too early + - xfrm6: Fix IPv6 payload_len in xfrm6_transport_finish + - xfrm: move xfrm_garbage_collect out of xfrm_policy_flush + - xfrm: fix stack access out of bounds with CONFIG_XFRM_SUB_POLICY + - xfrm: NULL dereference on allocation failure + - xfrm: Oops on error in pfkey_msg2xfrm_state() + - watchdog: bcm281xx: Fix use of uninitialized spinlock. + - ARM64: PCI: Fix struct acpi_pci_root_ops allocation failure path + - ARM64/ACPI: Fix BAD_MADT_GICC_ENTRY() macro implementation + - ARM: 8685/1: ensure memblock-limit is pmd-aligned + - ARM: davinci: PM: Free resources in error handling path in 'davinci_pm_init' + - ARM: davinci: PM: Do not free useful resources in normal path in + 'davinci_pm_init' + - tools arch: Sync arch/x86/lib/memcpy_64.S with the kernel + - Revert "x86/entry: Fix the end of the stack for newly forked tasks" + - x86/mshyperv: Remove excess #includes from mshyperv.h + - x86/boot/KASLR: Fix kexec crash due to 'virt_addr' calculation bug + - perf/x86: Fix spurious NMI with PEBS Load Latency event + - x86/mpx: Correctly report do_mpx_bt_fault() failures to user-space + - x86/mm: Fix flush_tlb_page() on Xen + - ocfs2: o2hb: revert hb threshold to keep compatible + - ocfs2: fix deadlock caused by recursive locking in xattr + - iommu/dma: Don't reserve PCI I/O windows + - iommu/amd: Fix incorrect error handling in amd_iommu_bind_pasid() + - iommu/amd: Fix interrupt remapping when disable guest_mode + - infiniband: hns: avoid gcc-7.0.1 warning for uninitialized data + - mtd: nand: brcmnand: Check flash #WP pin status before nand erase/program + - mtd: nand: fsmc: fix NAND width handling + - KVM: x86: fix emulation of RSM and IRET instructions + - KVM: x86/vPMU: fix undefined shift in intel_pmu_refresh() + - KVM: x86: zero base3 of unusable segments + - KVM: nVMX: Fix exception injection + - esp4: Fix udpencap for local TCP packets. + - hsi: Fix build regression due to netdev destructor fix. + - Linux 4.11.9 + * update ENA driver to 1.2.0k from net-next (LP: #1701575) + - net/ena: switch to pci_alloc_irq_vectors + - net: ena: fix rare uncompleted admin command false alarm + - net: ena: fix bug that might cause hang after consecutive open/close + interface. + - net: ena: add missing return when ena_com_get_io_handlers() fails + - net: ena: fix race condition between submit and completion admin command + - net: ena: add missing unmap bars on device removal + - net: ena: fix theoretical Rx hang on low memory systems + - net: ena: disable admin msix while working in polling mode + - net: ena: bug fix in lost tx packets detection mechanism + - net: ena: update ena driver to version 1.1.7 + - net: ena: change return value for unsupported features unsupported return + value + - net: ena: add hardware hints capability to the driver + - net: ena: change sizeof() argument to be the type pointer + - net: ena: add reset reason for each device FLR + - net: ena: add support for out of order rx buffers refill + - net: ena: allow the driver to work with small number of msix vectors + - net: ena: use napi_schedule_irqoff when possible + - net: ena: separate skb allocation to dedicated function + - net: ena: use lower_32_bits()/upper_32_bits() to split dma address + - net: ena: update driver's rx drop statistics + - net: ena: update ena driver to version 1.2.0 + * APST gets enabled against explicit kernel option (LP: #1699004) + - nvme: Display raw APST configuration via DYNAMIC_DEBUG + - nvme: Add nvme_core.force_apst to ignore the NO_APST quirk + - nvme: explicitly disable APST on quirked devices + * New NVLINK2 patches (LP: #1701272) + - powerpc/powernv/npu-dma: Add explicit flush when sending an ATSD + - powerpc/npu-dma: Remove spurious WARN_ON when a PCI device has no of_node + * ERAT invalidate on context switch removal (LP: #1700819) + - powerpc: Only do ERAT invalidate on radix context switch on P9 DD1 + * Miscellaneous Ubuntu changes + - SAUCE: (noup) Update spl to 0.6.5.10-1, zfs to 0.6.5.10-1ubuntu2 + - snapcraft.yaml: Sync with xenial + * Miscellaneous upstream changes + - Revert "UBUNTU: SAUCE: (efi-lockdown) efi: Add sysctls for secureboot and + MokSBState" + + [ Ubuntu: 4.11.0-10.15 ] + + * linux: 4.11.0-10.15 -proposed tracker (LP: #1701271) + * Artful update to v4.11.8 stable release (LP: #1701269) + - clk: sunxi-ng: a31: Correct lcd1-ch1 clock register offset + - clk: sunxi-ng: v3s: Fix usb otg device reset bit + - clk: sunxi-ng: sun5i: Fix ahb_bist_clk definition + - xen/blkback: fix disconnect while I/Os in flight + - xen-blkback: don't leak stack data via response ring + - ALSA: firewire-lib: Fix stall of process context at packet error + - ALSA: pcm: Don't treat NULL chmap as a fatal error + - ALSA: hda - Add Coffelake PCI ID + - ALSA: hda - Apply quirks to Broxton-T, too + - fs/exec.c: account for argv/envp pointers + - powerpc/perf: Fix oops when kthread execs user process + - autofs: sanity check status reported with AUTOFS_DEV_IOCTL_FAIL + - fs/dax.c: fix inefficiency in dax_writeback_mapping_range() + - lib/cmdline.c: fix get_options() overflow while parsing ranges + - perf/x86/intel: Add 1G DTLB load/store miss support for SKL + - perf probe: Fix probe definition for inlined functions + - KVM: x86: fix singlestepping over syscall + - KVM: MIPS: Fix maybe-uninitialized build failure + - KVM: s390: gaccess: fix real-space designation asce handling for gmap + shadows + - KVM: PPC: Book3S HV: Cope with host using large decrementer mode + - KVM: PPC: Book3S HV: Preserve userspace HTM state properly + - KVM: PPC: Book3S HV: Ignore timebase offset on POWER9 DD1 + - KVM: PPC: Book3S HV: Context-switch EBB registers properly + - KVM: PPC: Book3S HV: Restore critical SPRs to host values on guest exit + - KVM: PPC: Book3S HV: Save/restore host values of debug registers + - CIFS: Improve readdir verbosity + - CIFS: Fix some return values in case of error in 'crypt_message' + - cxgb4: notify uP to route ctrlq compl to rdma rspq + - HID: Add quirk for Dell PIXART OEM mouse + - random: silence compiler warnings and fix race + - signal: Only reschedule timers on signals timers have sent + - powerpc/kprobes: Pause function_graph tracing during jprobes handling + - powerpc/64s: Handle data breakpoints in Radix mode + - Input: i8042 - add Fujitsu Lifebook AH544 to notimeout list + - brcmfmac: add parameter to pass error code in firmware callback + - brcmfmac: use firmware callback upon failure to load + - brcmfmac: unbind all devices upon failure in firmware callback + - time: Fix clock->read(clock) race around clocksource changes + - time: Fix CLOCK_MONOTONIC_RAW sub-nanosecond accounting + - arm64/vdso: Fix nsec handling for CLOCK_MONOTONIC_RAW + - target: Fix kref->refcount underflow in transport_cmd_finish_abort + - iscsi-target: Fix delayed logout processing greater than + SECONDS_FOR_LOGOUT_COMP + - iscsi-target: Reject immediate data underflow larger than SCSI transfer + length + - drm/radeon: add a PX quirk for another K53TK variant + - drm/radeon: add a quirk for Toshiba Satellite L20-183 + - drm/amdgpu/atom: fix ps allocation size for EnableDispPowerGating + - drm/amdgpu: adjust default display clock + - drm/amdgpu: add Polaris12 DID + - ACPI / scan: Apply default enumeration to devices with ACPI drivers + - ACPI / scan: Fix enumeration for special SPI and I2C devices + - rxrpc: Fix several cases where a padded len isn't checked in ticket decode + - drm: Fix GETCONNECTOR regression + - usb: gadget: f_fs: avoid out of bounds access on comp_desc + - spi: double time out tolerance + - net: phy: fix marvell phy status reading + - brcmfmac: fix uninitialized warning in brcmf_usb_probe_phase2() + - Linux 4.11.8 + * powerpc: Invalidate ERAT on powersave wakeup for POWER9 (LP: #1700521) + - SAUCE: powerpc: Invalidate ERAT on powersave wakeup for POWER9 + * Miscellaneous Ubuntu changes + - d-i: Move qcom-emac from arm64 to shared nic-modules + + -- Marcelo Henrique Cerri Thu, 27 Jul 2017 17:24:12 -0300 + +linux-azure (4.11.0-1003.3) xenial; urgency=low + + * linux-azure: 4.11.0-1003.3 -proposed tracker (LP: #1700833) + + + [ Ubuntu: 4.11.0-9.14 ] + + * linux: 4.11.0-9.14 -proposed tracker (LP: #1700537) + * Artful update to v4.11.7 stable release (LP: #1700372) + - Revert "Allow stack to grow up to address space limit" + - Revert "UBUNTU: SAUCE: mm: fix new crash in unmapped_area_topdown()" + - Revert "mm: larger stack guard gap, between vmas" + - fs: pass on flags in compat_writev + - configfs: Fix race between create_link and configfs_rmdir + - can: gs_usb: fix memory leak in gs_cmd_reset() + - ila_xlat: add missing hash secret initialization + - cpufreq: conservative: Allow down_threshold to take values from 1 to 10 + - vb2: Fix an off by one error in 'vb2_plane_vaddr' + - cec: race fix: don't return -ENONET in cec_receive() + - selinux: fix double free in selinux_parse_opts_str() + - mac80211: don't look at the PM bit of BAR frames + - mac80211/wpa: use constant time memory comparison for MACs + - drm: mxsfb_crtc: Reset the eLCDIF controller + - drm/amdgpu: Fix overflow of watermark calcs at > 4k resolutions. + - drm/i915: Fix GVT-g PVINFO version compatibility check + - drm/i915: Fix scaling check for 90/270 degree plane rotation + - drm/i915: Do not sync RCU during shrinking + - mac80211: fix IBSS presp allocation size + - mac80211: strictly check mesh address extension mode + - mac80211: fix dropped counter in multiqueue RX + - mac80211: don't send SMPS action frame in AP mode when not needed + - drm/mediatek: fix mtk_hdmi_setup_vendor_specific_infoframe mistake + - drm/vc4: Fix OOPSes from trying to cache a partially constructed BO. + - serial: efm32: Fix parity management in 'efm32_uart_console_get_options()' + - serial: 8250_lpss: Unconditionally set PCI master for Quark + - serial: sh-sci: Fix (AUTO)RTS in sci_init_pins() + - serial: sh-sci: Fix late enablement of AUTORTS + - x86/mm/32: Set the '__vmalloc_start_set' flag in initmem_init() + - mfd: omap-usb-tll: Fix inverted bit use for USB TLL mode + - mfd: axp20x: Add support for dts property "xpowers,master-mode" + - dt-bindings: mfd: axp20x: Add "xpowers,master-mode" property for AXP806 + PMICs + - mfd: cpcap: Fix interrupt to use level interrupt + - mfd: cpcap: Use ack_invert interrupts + - mfd: cpcap: Fix bad use of IRQ sense register + - phy: rcar-gen3-usb2: fix implementation for runtime PM + - mtd: physmap_of: really fix the physmap add-ons + - powerpc/mm: Add physical address to Linux page table dump + - staging: rtl8188eu: prevent an underflow in rtw_check_beacon_data() + - staging: bcm2835-camera: fix error handling in init + - staging: iio: tsl2x7x_core: Fix standard deviation calculation + - iio: imu: st_lsm6dsx: do not apply ODR configuration in write_raw handler + - iio: proximity: as3935: recalibrate RCO after resume + - iio: adc: ti_am335x_adc: allocating too much in probe + - ALSA: hda: Add Geminilake id to SKL_PLUS + - ALSA: usb-audio: fix Amanero Combo384 quirk on big-endian hosts + - usb: gadget: udc: renesas_usb3: fix pm_runtime functions calling + - usb: gadget: udc: renesas_usb3: fix deadlock by spinlock + - usb: gadget: udc: renesas_usb3: lock for PN_ registers access + - USB: hub: fix SS max number of ports + - usb: core: fix potential memory leak in error path during hcd creation + - USB: usbip: fix nonconforming hub descriptor + - usb: dwc3: gadget: Fix ISO transfer performance + - pvrusb2: reduce stack usage pvr2_eeprom_analyze() + - USB: gadget: dummy_hcd: fix hub-descriptor removable fields + - usb: r8a66597-hcd: select a different endpoint on timeout + - usb: r8a66597-hcd: decrease timeout + - coda: restore original firmware locations + - drivers/misc/c2port/c2port-duramar2150.c: checking for NULL instead of + IS_ERR() + - usb: xhci: Fix USB 3.1 supported protocol parsing + - usb: xhci: ASMedia ASM1042A chipset need shorts TX quirk + - USB: gadget: fix GPF in gadgetfs + - USB: gadgetfs, dummy-hcd, net2280: fix locking for callbacks + - mm/memory-failure.c: use compound_head() flags for huge pages + - swap: cond_resched in swap_cgroup_prepare() + - mm: numa: avoid waiting on freed migrated pages + - userfaultfd: shmem: handle coredumping in handle_userfault() + - iio: imu: inv_mpu6050: add accel lpf setting for chip >= MPU6500 + - staging: iio: ad7152: Fix deadlock in ad7152_write_raw_samp_freq() + - iio: adc: meson-saradc: fix potential crash in meson_sar_adc_clear_fifo + - sched/core: Idle_task_exit() shouldn't use switch_mm_irqs_off() + - genirq: Release resources in __setup_irq() error path + - alarmtimer: Prevent overflow of relative timers + - alarmtimer: Rate limit periodic intervals + - virtio_balloon: disable VIOMMU support + - MIPS: Fix bnezc/jialc return address calculation + - MIPS: .its targets depend on vmlinux + - crypto: Work around deallocated stack frame reference gcc bug on sparc. + - ARM: dts: am335x-sl50: Fix card detect pin for mmc1 + - ARM: dts: am335x-sl50: Fix cannot claim requested pins for spi0 + - mm: larger stack guard gap, between vmas + - Allow stack to grow up to address space limit + - mm: fix new crash in unmapped_area_topdown() + - Linux 4.11.7 + * aacraid driver may return uninitialized stack data to userspace + (LP: #1700077) + - SAUCE: scsi: aacraid: Don't copy uninitialized stack memory to userspace + * KILLER1435-S[0489:e0a2] BT cannot search BT 4.0 device (LP: #1699651) + - Bluetooth: btusb: Add support for 0489:e0a2 QCA_ROME device + * arm64 kernel crashdump support (LP: #1694859) + - memblock: add memblock_clear_nomap() + - memblock: add memblock_cap_memory_range() + - arm64: limit memory regions based on DT property, usable-memory-range + - arm64: kdump: reserve memory for crash dump kernel + - arm64: mm: add set_memory_valid() + - arm64: kdump: protect crash dump kernel memory + - arm64: hibernate: preserve kdump image around hibernation + - arm64: kdump: implement machine_crash_shutdown() + - arm64: kdump: add VMCOREINFO's for user-space tools + - [Config] CONFIG_CRASH_DUMP=y on arm64 + - arm64: kdump: provide /proc/vmcore file + - Documentation: kdump: describe arm64 port + - Documentation: dt: chosen properties for arm64 kdump + - efi/libstub/arm*: Set default address and size cells values for an empty dtb + * AACRAID for power9 platform (LP: #1689980) + - scsi: aacraid: pci_alloc_consistent() failures on ARM64 + - scsi: aacraid: Remove __GFP_DMA for raw srb memory + - scsi: aacraid: Fix DMAR issues with iommu=pt + - scsi: aacraid: Added 32 and 64 queue depth for arc natives + - scsi: aacraid: Set correct Queue Depth for HBA1000 RAW disks + - scsi: aacraid: Remove reset support from check_health + - scsi: aacraid: Change wait time for fib completion + - scsi: aacraid: Log count info of scsi cmds before reset + - scsi: aacraid: Print ctrl status before eh reset + - scsi: aacraid: Using single reset mask for IOP reset + - scsi: aacraid: Rework IOP reset + - scsi: aacraid: Add periodic checks to see IOP reset status + - scsi: aacraid: Rework SOFT reset code + - scsi: aacraid: Rework aac_src_restart + - scsi: aacraid: Use correct function to get ctrl health + - scsi: aacraid: Make sure ioctl returns on controller reset + - scsi: aacraid: Enable ctrl reset for both hba and arc + - scsi: aacraid: Add reset debugging statements + - scsi: aacraid: Remove reference to Series-9 + - scsi: aacraid: Update driver version to 50834 + * Miscellaneous upstream changes + - Allow stack to grow up to address space limit + + [ Ubuntu: 4.11.0-8.13 ] + + * Release Tracking Bug + - LP: #1699184 + * hibmc driver does not include "pci:" prefix in bus ID (LP: #1698700) + - SAUCE: drm: hibmc: Use set_busid function from drm core + * HiSilicon D05: installer doesn't appear on VGA (LP: #1698954) + - d-i: Add hibmc-drm to kernel-image udeb + * Fix /proc/cpuinfo revision for POWER9 DD2 (LP: #1698844) + - SAUCE: powerpc: Fix /proc/cpuinfo revision for POWER9 DD2 + * Miscellaneous Ubuntu changes + - SAUCE: mm: fix new crash in unmapped_area_topdown() + + -- Marcelo Henrique Cerri Tue, 27 Jun 2017 17:02:07 -0300 + +linux-azure (4.11.0-1002.2) xenial; urgency=low + + * linux-azure: 4.11.0-1002.2 -proposed tracker (LP: #1699331) + + * Azure: add support for Hyper-V sockets via VSOCK (LP: #1698425) + - SAUCE: vmbus: vmbus_open(): reset onchannel_callback on error + - SAUCE: vmbus: add the matching tasklet_enable() in vmbus_close_internal() + - SAUCE: vmbus: remove "goto error_clean_msglist" in vmbus_open() + - SAUCE: vmbus: dynamically enqueue/dequeue a channel on vmbus_open/close + - SAUCE: hv_sock: implements Hyper-V transport for Virtual Sockets (AF_VSOCK) + - SAUCE: VMCI: only try to load on VMware hypervisor + - SAUCE: hv_sock: add the support of auto-loading + - SAUCE: tools: hv_sock: 2 simple test cases. + - SAUCE: hvsock: fix a race in hvs_stream_dequeue() + - SAUCE: hvsock: fix vsock_dequeue/enqueue_accept race + - SAUCE: Drivers: hv: vmbus: Fix rescind handling + - SAUCE: vmbus: fix hv_percpu_channel_deq/enq race + - SAUCE: vmbus: add vmbus onoffer/onoffer_rescind sync. + - [Config] CONFIG_HYPERV_VSOCKETS=m + + * Re-enable -extra package for linux-azure (LP: #1699157) + - Revert "UBUNTU: [config] azure: ship_extras_package=false" + + -- Marcelo Henrique Cerri Tue, 20 Jun 2017 17:44:18 -0300 + +linux-azure (4.11.0-1001.1) xenial; urgency=low + + * linux-azure: 4.11.0-1001.1 -proposed tracker (LP: #1698442) + + * Azure: throughput performance regression after #1690177 (LP: #1698371) + - Revert "vmbus: only reschedule tasklet if time limit exceeded" + + * Azure: remove AF_HYPERV socket (LP: #1698372) + - Revert "UBUNTU: SAUCE: 9p: net/9p: add hv_sock transport" + - Revert "UBUNTU: SAUCE: azure: hv_sock: 4.11 update" + - Revert "UBUNTU: [Config] azure: CONFIG_HYPERV_SOCK=m" + - Revert "UBUNTU: SAUCE: azure: hv_sock: introduce Hyper-V Sockets" + + * Rebase linux-azure to 4.11 (LP: #1698367) + - [Config] updateconfigs for 4.11 + - SAUCE: Fix check for PF_MAX after rebase to 4.11 + - [Config] update module list for 4.11 + - [Config] CONFIG_LOCK_DOWN_KERNEL=y + + -- Marcelo Henrique Cerri Fri, 16 Jun 2017 15:22:32 -0300 + +linux-azure (4.11.0-1000.0) xenial; urgency=low + + [ Marcelo Henrique Cerri ] + + * empty entry + + -- Marcelo Henrique Cerri Fri, 09 Jun 2017 14:04:22 -0300 + +linux-azure (4.10.0-1006.6) xenial; urgency=low + + [ Marcelo Cerri ] + + * linux-azure: 4.10.0-1006.6 -proposed tracker (LP: #1694731) + + * [Hyper-V][SAUCE] hv_sock for 4.10 (LP: #1690196) + - SAUCE: azure: hv_sock: introduce Hyper-V Sockets + - [Config] azure: CONFIG_HYPERV_SOCK=m + - SAUCE: azure: hv_sock: 4.11 update + - SAUCE: 9p: net/9p: add hv_sock transport + + * Azure kernel fails in ADT tests (LP: #1693494) + - Revert "UBUNTU: [config] azure: disable VIRTIO drivers" + + * linux-azure should be able to boot in a local Hyper-V (LP: #1692920) + - Revert "UBUNTU: [config] azure: disable CONFIG_EFI" + + * [Hyper-V] Rebase Hyper-V to upstream 4.11 kernel plus some cherry-picks from + linux-next (LP: #1690177) + - Input: serio - drop unnecessary calls to device_init_wakeup + - scsi: mvumi: remove fake transport template + - scsi: libsas: remove sas_scsi_timed_out + - scsi: remove eh_timed_out methods in the transport template + - netvsc: negotiate checksum and segmentation parameters + - netvsc: report number of rx queues in ethtool + - netvsc: add ethtool ops to get/set RSS key + - netvsc: allow more flexible setting of number of channels + - netvsc: remove unused variables + - netvsc: remove no longer needed receive staging buffers + - netvsc: enhance transmit select_queue + - netvsc: group all per-channel state together + - netvsc: optimize receive path + - netvsc: don't pass void * to internal device_add + - netvsc: simplify rndis_filter_remove + - netvsc: eliminate per-device outstanding send counter + - netvsc: account for packets/bytes transmitted after completion + - netvsc: call netif_receive_skb + - vmbus: use kernel bitops for traversing interrupt mask + - vmbus: drop no longer used kick_q argument + - vmbus: remove no longer used signal_policy + - vmbus: remove unused kickq argument to sendpacket + - vmbus: put related per-cpu variable together + - vmbus: callback is in softirq not workqueue + - vmbus: change to per channel tasklet + - vmbus: add direct isr callback mode + - vmbus: expose hv_begin/end_read + - vmbus: remove conditional locking of vmbus_write + - vmbus: constify parameters where possible + - net-next: treewide use is_vlan_dev() helper function. + - scripts/spelling.txt: add "intialization" pattern and fix typo instances + - netvsc: handle select_queue when device is being removed + - netvsc: simplify get next send section + - netvsc: fix calculation of available send sections + - PCI: hv: Specify CPU_AFFINITY_ALL for MSI affinity when >= 32 CPUs + - refcount_t: Introduce a special purpose refcount type + - locking/refcounts: Out-of-line everything + - locking/refcounts: Add missing kernel.h header to have UINT_MAX defined + - locking/refcount: Add refcount_t API kernel-doc comments + - netvsc: don't overload variable in same function + - vmbus: introduce in-place packet iterator + - netvsc: implement NAPI + - netvsc: replace netdev_alloc_skb_ip_align with napi_alloc_skb + - net: hyperv: use new api ethtool_{get|set}_link_ksettings + - vmbus: only reschedule tasklet if time limit exceeded + - vmbus: remove useless return's + - vmbus: remove unnecessary initialization + - vmbus: fix spelling errors + - vmbus: make channel_message table constant + - vmbus: cleanup header file style + - vmbus: expose debug info for drivers + - Drivers: hv: Fix a typo + - Drivers: hv: Base autoeoi enablement based on hypervisor hints + - scsi: storvsc: Prefer kcalloc over kzalloc with multiply + - scsi: storvsc: remove return at end of void function + - scsi: scsi_transport_fc: Add dummy initiator role to rport + - scsi: storvsc: Add support for FC rport. + - netvsc: remove unused #define + - netvsc: need napi scheduled during removal + - netvsc: avoid race with callback + - netvsc: add comments about callback's and NAPI + - netvsc: fix NAPI performance regression + - netvsc: allow get/set of RSS indirection table + - netvsc: handle offline mtu and channel change + - netvsc: change max channel calculation + - qed*: Update to dual-license + - qede: Break datapath logic into its own file + - qede: Split filtering logic to its own file + - qed*: Change maximal number of queues + - qede: Postpone reallocation until NAPI end + - qed*: RSS indirection based on queue-handles + - qed*: Add support for ndo_set_vf_trust + - net: make ndo_get_stats64 a void function + - netvsc: report per-channel stats in ethtool statistics + - netvsc: enable GRO + - netvsc: use RCU to protect inner device structure + - netvsc: fix use-after-free in netvsc_change_mtu() + - netvsc: uses RCU instead of removal flag + - SAUCE: include refcount.h in hyperv_net.h + - netvsc: use refcount_t for keeping track of sub channels + - netvsc: remove unnecessary lock on shutdown + - netvsc: eliminate unnecessary skb == NULL checks + - netvsc: fix and cleanup rndis_filter_set_packet_filter + - Drivers: hv: Issue explicit EOI when autoeoi is not enabled + - hv_netvsc: Fix the queue index computation in forwarding case + - hv_netvsc: change netvsc device default duplex to FULL + - netvsc: Deal with rescinded channels correctly + + -- Marcelo Henrique Cerri Wed, 31 May 2017 11:59:08 -0300 + +linux-azure (4.10.0-1005.5) xenial; urgency=low + + [ Marcelo Henrique Cerri ] + * Azure: make it possible to boot without initrd (LP: #1690136) + - [Config] CONFIG_HYPERV_STORAGE=y + + * linux-aws/linux-gke incorrectly producing an empty linux-*-source package-* + (LP: #1690183) + - [Packaging] drop linux-azure-source-* package + + * linux-aws/linux-gke incorrectly producing and using linux-*-tools- + common/linux-*-cloud-tools-common (LP: #1688579) + - [Config] linux-tools-* linux-cloud-tools-* share -common packages with linux + + -- Thadeu Lima de Souza Cascardo Mon, 15 May 2017 22:48:23 -0300 + +linux-azure (4.10.0-1004.4) xenial; urgency=low + + * Azure: update configs based on Zesty 4.10.0-21.23 (LP: #1688296) + - [Config] Sync debian.azure with zesty 4.10.0-21.23 + + * move aufs.ko from -extra to linux-image package (LP: #1673498) + - [config] aufs.ko moved to linux-image package + + [ Ubuntu: 4.10.0-21.23 ] + + * linux: 4.10.0-21.23 -proposed tracker (LP: #1686414) + * Need to stop using bzip2 compression in packages for zesty onward + (LP: #1686782) + - [Debian] Use default compression for all packages + * [Hyper-V][SAUCE] pci-hyperv: Use only 16 bit integer for PCI domain + (LP: #1684971) + - SAUCE: pci-hyperv: Use only 16 bit integer for PCI domain + * CVE-2017-7477: macsec: avoid heap overflow in skb_to_sgvec (LP: #1685892) + - macsec: avoid heap overflow in skb_to_sgvec + - macsec: dynamically allocate space for sglist + * Zesty update to 4.10.11 stable release (LP: #1685140) + - drm/i915: Fix forcewake active domain tracking + - drm/i915: Move updating color management to before vblank evasion + - drm/i915/fbdev: Stop repeating tile configuration on stagnation + - drm/i915: Squelch any ktime/jiffie rounding errors for wait-ioctl + - drm/i915/gen9: Increase PCODE request timeout to 50ms + - drm/i915: Store a permanent error in obj->mm.pages + - drm/i915: Nuke debug messages from the pipe update critical section + - drm/i915: Avoid tweaking evaluation thresholds on Baytrail v3 + - drm/i915: Reject HDMI 12bpc if the sink doesn't indicate support + - drm/i915: Only enable hotplug interrupts if the display interrupts are + enabled + - drm/i915: Drop support for I915_EXEC_CONSTANTS_* execbuf parameters. + - drm/i915: Stop using RP_DOWN_EI on Baytrail + - drm/i915: Avoid rcu_barrier() from reclaim paths (shrinker) + - drm/i915: Do .init_clock_gating() earlier to avoid it clobbering watermarks + - orangefs: Dan Carpenter influenced cleanups... + - orangefs: fix buffer size mis-match between kernel space and user space. + - nfs: flexfiles: fix kernel OOPS if MDS returns unsupported DS type + - rt2x00usb: fix anchor initialization + - rt2x00usb: do not anchor rx and tx urb's + - MIPS: Introduce irq_stack + - MIPS: Stack unwinding while on IRQ stack + - MIPS: Only change $28 to thread_info if coming from user mode + - MIPS: Switch to the irq_stack in interrupts + - MIPS: Select HAVE_IRQ_EXIT_ON_IRQ_STACK + - MIPS: IRQ Stack: Fix erroneous jal to plat_irq_dispatch + - crypto: caam - fix RNG deinstantiation error checking + - crypto: caam - fix invalid dereference in caam_rsa_init_tfm() + - dma-buf: add support for compat ioctl + - Linux 4.10.11 + * Zesty update to v4.10.10 stable release (LP: #1682130) + - drm/vmwgfx: Type-check lookups of fence objects + - drm/vmwgfx: NULL pointer dereference in vmw_surface_define_ioctl() + - drm/vmwgfx: avoid calling vzalloc with a 0 size in vmw_get_cap_3d_ioctl() + - drm/ttm, drm/vmwgfx: Relax permission checking when opening surfaces + - drm/vmwgfx: Remove getparam error message + - drm/vmwgfx: fix integer overflow in vmw_surface_define_ioctl() + - PCI: thunder-pem: Add legacy firmware support for Cavium ThunderX host + controller + - PCI: thunder-pem: Fix legacy firmware PEM-specific resources + - sysfs: be careful of error returns from ops->show() + - staging: android: ashmem: lseek failed due to no FMODE_LSEEK. + - arm/arm64: KVM: Take mmap_sem in stage2_unmap_vm + - arm/arm64: KVM: Take mmap_sem in kvm_arch_prepare_memory_region + - kvm: arm/arm64: Fix locking for kvm_free_stage2_pgd + - iio: core: Fix IIO_VAL_FRACTIONAL_LOG2 for negative values + - iio: st_pressure: initialize lps22hb bootime + - iio: bmg160: reset chip when probing + - arm64: mm: unaligned access by user-land should be received as SIGBUS + - cfg80211: check rdev resume callback only for registered wiphy + - Reset TreeId to zero on SMB2 TREE_CONNECT + - mm/page_alloc.c: fix print order in show_free_areas() + - ptrace: fix PTRACE_LISTEN race corrupting task->state + - dax: fix radix tree insertion race + - dm verity fec: limit error correction recursion + - dm verity fec: fix bufio leaks + - ACPI / gpio: do not fall back to parsing _CRS when we get a deferral + - ACPI / scan: Prefer devices without _HID for _ADR matching + - Kbuild: use cc-disable-warning consistently for maybe-uninitialized + - jump label: fix passing kbuild_cflags when checking for asm goto support + - orangefs: move features validation to fix filesystem hang + - xfs: Honor FALLOC_FL_KEEP_SIZE when punching ends of files + - ring-buffer: Fix return value check in test_ringbuffer() + - mac80211: unconditionally start new netdev queues with iTXQ support + - brcmfmac: use local iftype avoiding use-after-free of virtual interface + - metag/usercopy: Drop unused macros + - metag/usercopy: Fix alignment error checking + - metag/usercopy: Add early abort to copy_to_user + - metag/usercopy: Zero rest of buffer from copy_from_user + - metag/usercopy: Set flags before ADDZ + - metag/usercopy: Fix src fixup in from user rapf loops + - metag/usercopy: Add missing fixups + - drm/msm: adreno: fix build error without debugfs + - powerpc: Disable HFSCR[TM] if TM is not supported + - powerpc/mm: Add missing global TLB invalidate if cxl is active + - powerpc/64: Fix flush_(d|i)cache_range() called from modules + - powerpc: Don't try to fix up misaligned load-with-reservation instructions + - powerpc/crypto/crc32c-vpmsum: Fix missing preempt_disable() + - dm raid: fix NULL pointer dereference for raid1 without bitmap + - x86/mce: Don't print MCEs when mcelog is active + - nios2: reserve boot memory for device tree + - xtensa: make __pa work with uncached KSEG addresses + - s390/decompressor: fix initrd corruption caused by bss clear + - s390/uaccess: get_user() should zero on failure (again) + - MIPS: Force o32 fp64 support on 32bit MIPS64r6 kernels + - MIPS: ralink: Fix typos in rt3883 pinctrl + - MIPS: End spinlocks with .insn + - MIPS: Lantiq: fix missing xbar kernel panic + - MIPS: Check TLB before handle_ri_rdhwr() for Loongson-3 + - MIPS: Add MIPS_CPU_FTLB for Loongson-3A R2 + - MIPS: Flush wrong invalid FTLB entry for huge page + - MIPS: c-r4k: Fix Loongson-3's vcache/scache waysize calculation + - drm/i915/gvt: Fix gvt scheduler interval time + - drm/i915/kvmgt: fix suspicious rcu dereference usage + - usb: dwc3: gadget: delay unmap of bounced requests + - Documentation: stable-kernel-rules: fix stable-tag format + - mm/mempolicy.c: fix error handling in set_mempolicy and mbind. + - random: use chacha20 for get_random_int/long + - kvm: fix page struct leak in handle_vmon + - drm/edid: constify edid quirk list + - drm/i915: fix INTEL_BDW_IDS definition + - drm/i915: more .is_mobile cleanups for BDW + - drm/i915: actually drive the BDW reserved IDs + - ASoC: Intel: bytcr_rt5640: quirks for Insyde devices + - usb: chipidea: msm: Rely on core to override AHBBURST + - serial: 8250_omap: Add OMAP_DMA_TX_KICK quirk for AM437x + - usb: xhci: add quirk flag for broken PED bits + - usb: host: xhci-plat: enable BROKEN_PED quirk if platform requested + - usb: dwc3: host: pass quirk-broken-port-ped property for known broken + revisions + - drm/mga: remove device_is_agp callback + - PCI: Add ACS quirk for Intel Union Point + - PCI: xgene: Fix double free on init error + - sata: ahci-da850: implement a workaround for the softreset quirk + - ACPI / button: Change default behavior to lid_init_state=open + - ASoC: codecs: rt5670: add quirk for Lenovo Thinkpad 10 + - ASoC: Intel: Baytrail: add quirk for Lenovo Thinkpad 10 + - ASoC: Intel: cht_bsw_rt5645: harden ACPI device detection + - ASoC: Intel: cht_bsw_rt5645: add Baytrail MCLK support + - ACPI: save NVS memory for Lenovo G50-45 + - ASoC: sun4i-i2s: Add quirks to handle a31 compatible + - HID: wacom: don't apply generic settings to old devices + - arm: kernel: Add SMC structure parameter + - firmware: qcom: scm: Fix interrupted SCM calls + - ARM: smccc: Update HVC comment to describe new quirk parameter + - PCI: Add Broadcom Northstar2 PAXC quirk for device class and MPSS + - PCI: Disable MSI for HiSilicon Hip06/Hip07 Root Ports + - mmc: sdhci-of-esdhc: remove default broken-cd for ARM + - PCI: Sort the list of devices with D3 delay quirk by ID + - watchdog: s3c2410: Fix infinite interrupt in soft mode + - platform/x86: asus-wmi: Detect quirk_no_rfkill from the DSDT + - x86/reboot/quirks: Add ASUS EeeBook X205TA reboot quirk + - x86/reboot/quirks: Add ASUS EeeBook X205TA/W reboot quirk + - usb-storage: Add ignore-residue quirk for Initio INIC-3619 + - x86/reboot/quirks: Fix typo in ASUS EeeBook X205TA reboot quirk + - Linux 4.10.10 + * Broken PowerNV PCI hotplug driver - Patch backporting to zesty + (LP: #1680328) + - drivers/pci/hotplug: Mask PDC interrupt if required + * Zesty update to v4.10.9 stable release (LP: #1681875) + - libceph: force GFP_NOIO for socket allocations + - KVM: nVMX: fix nested EPT detection + - xfs: pull up iolock from xfs_free_eofblocks() + - xfs: sync eofblocks scans under iolock are livelock prone + - xfs: fix eofblocks race with file extending async dio writes + - xfs: fix toctou race when locking an inode to access the data map + - xfs: fail _dir_open when readahead fails + - xfs: filter out obviously bad btree pointers + - xfs: check for obviously bad level values in the bmbt root + - xfs: verify free block header fields + - xfs: allow unwritten extents in the CoW fork + - xfs: mark speculative prealloc CoW fork extents unwritten + - xfs: reset b_first_retry_time when clear the retry status of xfs_buf_t + - xfs: reject all unaligned direct writes to reflinked files + - xfs: update ctime and mtime on clone destinatation inodes + - xfs: correct null checks and error processing in xfs_initialize_perag + - xfs: don't fail xfs_extent_busy allocation + - xfs: handle indlen shortage on delalloc extent merge + - xfs: split indlen reservations fairly when under reserved + - xfs: fix uninitialized variable in _reflink_convert_cow + - xfs: don't reserve blocks for right shift transactions + - xfs: Use xfs_icluster_size_fsb() to calculate inode chunk alignment + - xfs: tune down agno asserts in the bmap code + - xfs: only reclaim unwritten COW extents periodically + - xfs: fix and streamline error handling in xfs_end_io + - xfs: Use xfs_icluster_size_fsb() to calculate inode alignment mask + - xfs: use iomap new flag for newly allocated delalloc blocks + - xfs: try any AG when allocating the first btree block when reflinking + - scsi: sg: check length passed to SG_NEXT_CMD_LEN + - scsi: libsas: fix ata xfer length + - scsi: scsi_dh_alua: Check scsi_device_get() return value + - scsi: scsi_dh_alua: Ensure that alua_activate() calls the completion + function + - PCI: iproc: Save host bridge window resource in struct iproc_pcie + - PCI: thunder-pem: Use Cavium assigned hardware ID for ThunderX host + controller + - ALSA: seq: Fix race during FIFO resize + - ALSA: hda - fix a problem for lineout on a Dell AIO machine + - ASoC: atmel-classd: fix audio clock rate + - ASoC: Intel: Skylake: fix invalid memory access due to wrong reference of + pointer + - ASoC: rt5665: fix getting wrong work handler container + - HID: wacom: Don't add ghost interface as shared data + - mmc: sdhci: Disable runtime pm when the sdio_irq is enabled + - mmc: sdhci-of-at91: fix MMC_DDR_52 timing selection + - crypto: ccp - Make some CCP DMA channels private + - crypto: xts,lrw - fix out-of-bounds write after kmalloc failure + - ARCv2: SLC: Make sure busy bit is set properly on SLC flushing + - NFSv4.1 fix infinite loop on IO BAD_STATEID error + - nfsd: map the ENOKEY to nfserr_perm for avoiding warning + - dt-bindings: rng: clocks property on omap_rng not always mandatory + - parisc: Clean up fixup routines for get_user()/put_user() + - parisc: Avoid stalled CPU warnings after system shutdown + - parisc: Fix access fault handling in pa_memcpy() + - ACPI: Fix incompatibility with mcount-based function graph tracing + - ACPI: Do not create a platform_device for IOAPIC/IOxAPIC + - tty/serial: atmel: fix race condition (TX+DMA) + - tty/serial: atmel: fix TX path in atmel_console_write() + - xhci: Set URB actual length for stopped control transfers + - USB: fix linked-list corruption in rh_call_control() + - serial: mxs-auart: Fix baudrate calculation + - KVM: x86: clear bus pointer when destroyed + - KVM: kvm_io_bus_unregister_dev() should never fail + - drm/radeon: Override fpfn for all VRAM placements in radeon_evict_flags + - drm/vc4: Allocate the right amount of space for boot-time CRTC state. + - drm/etnaviv: (re-)protect fence allocation with GPU mutex + - drm/i915/kvmgt: Hold struct kvm reference + - x86/mm/KASLR: Exclude EFI region from KASLR VA space randomization + - x86/mce: Fix copy/paste error in exception table entries + - lib/syscall: Clear return values when no stack + - mm: rmap: fix huge file mmap accounting in the memcg stats + - mm: workingset: fix premature shadow node shrinking with cgroups + - mm, hugetlb: use pte_present() instead of pmd_present() in follow_huge_pmd() + - drm/armada: Fix compile fail + - ARM: dts: BCM5301X: Correct GIC_PPI interrupt flags + - MIPS: Lantiq: Fix cascaded IRQ setup + - blk: improve order of bio handling in generic_make_request() + - blk: Ensure users for current->bio_list can see the full list. + - padata: avoid race in reordering + - nvme/core: Fix race kicking freed request_queue + - nvme/pci: Disable on removal when disconnected + - drm/i915: Move the release of PT page to the upper caller + - drm/i915: Let execlist_update_context() cover !FULL_PPGTT mode. + - drm/i915: A hotfix for making aliasing PPGTT work for GVT-g + - Linux 4.10.9 + * POWER9: Improve performance on memory management (LP: #1681429) + - SAUCE: powerpc/mm/radix: Don't do page walk cache flush when doing full mm + flush + - SAUCE: powerpc/mm/radix: Remove unnecessary ptesync + * Disable CONFIG_HVC_UDBG on ppc64el (LP: #1680888) + - [Config] Disable CONFIG_HVC_UDBG on ppc64el + + [ Ubuntu: 4.10.0-20.22 ] + + * linux: 4.10.0-20.22 -proposed tracker (LP: #1684491) + * [Hyper-V] hv: util: move waiting for release to hv_utils_transport itself + (LP: #1682561) + - Drivers: hv: util: move waiting for release to hv_utils_transport itself + + [ Ubuntu: 4.10.0-19.21 ] + + * Release Tracking Bug + - LP: #1680535 + * ADT regressions caused by "audit: fix auditd/kernel connection state + tracking" (LP: #1680532) + - SAUCE: Revert "audit: fix auditd/kernel connection state tracking" + * Miscellaneous Ubuntu changes + - [Config] updateconfigs to update CONFIG_GENERIC_CSUM for ppc64el + This cleans up behind a Kconfig change that went undetected. + + [ Ubuntu: 4.10.0-18.20 ] + + * Release Tracking Bug + - LP: #1680168 + * smartpqi driver needed in initram disk and installer (LP: #1680156) + - UBUNU: [Config] Add smartpqi to d-i + + [ Ubuntu: 4.10.0-17.19 ] + + * Release Tracking Bug + - LP: #1679718 + * Fix CVE-2017-7308 (LP: #1678009) + - net/packet: fix overflow in check for priv area size + - net/packet: fix overflow in check for tp_frame_nr + - net/packet: fix overflow in check for tp_reserve + * apparmor: oops on boot if parameters set on grub command line (LP: #1678048) + - SAUCE: apparmor: fix parameters so that the permission test is bypassed at boot + * apparmor: does not provide a way to detect policy updataes (LP: #1678032) + - SAUCE: apparmor: add policy revision file interface + * apparmor does not make support of query data visible (LP: #1678023) + - SAUCE: apparmor: add label data availability to the feature set + * apparmor query interface does not make supported query info available + (LP: #1678030) + - SAUCE: apparmor: add information about the query inteface to the feature set + * change_profile incorrect when using namespaces with a compound stack + (LP: #1677959) + - SAUCE: apparmor: fix label parse for stacked labels + * Zesty update to v4.10.8 stable release (LP: #1678930) + - xfrm: policy: init locks early + - xfrm_user: validate XFRM_MSG_NEWAE XFRMA_REPLAY_ESN_VAL replay_window + - xfrm_user: validate XFRM_MSG_NEWAE incoming ESN size harder + - KVM: nVMX: Fix nested VPID vmx exec control + - KVM: x86: cleanup the page tracking SRCU instance + - virtio_balloon: init 1st buffer in stats vq + - pinctrl: qcom: Don't clear status bit on irq_unmask + - c6x/ptrace: Remove useless PTRACE_SETREGSET implementation + - h8300/ptrace: Fix incorrect register transfer count + - mips/ptrace: Preserve previous registers for short regset write + - sparc/ptrace: Preserve previous registers for short regset write + - metag/ptrace: Preserve previous registers for short regset write + - metag/ptrace: Provide default TXSTATUS for short NT_PRSTATUS + - metag/ptrace: Reject partial NT_METAG_RPIPE writes + - qla2xxx: Allow vref count to timeout on vport delete. + - sched/rt: Add a missing rescheduling point + - usb: musb: fix possible spinlock deadlock + - Linux 4.10.8 + * [Hyper-V] pci-hyperv: Use device serial number as PCI domain (LP: #1667527) + - net/mlx4_core: Use cq quota in SRIOV when creating completion EQs + - PCI: hv: Use device serial number as PCI domain + * Miscellaneous Ubuntu changes + - [Config] flash-kernel should be a Breaks + - [Config] drop the info directory + - [Config] drop NOTES as obsolete + - [Config] drop changelog.historical as obsolete + + [ Ubuntu: 4.10.0-16.18 ] + + * Release Tracking Bug + - LP: #1677697 + * [Feature] ISH (Intel Sensor Hub) support (LP: #1645521) + - iio: accel: hid-sensor-accel-3d: Add timestamp + * Zesty update to v4.10.7 stable release (LP: #1677589) + - net/openvswitch: Set the ipv6 source tunnel key address attribute correctly + - net: bcmgenet: Do not suspend PHY if Wake-on-LAN is enabled + - net: properly release sk_frag.page + - amd-xgbe: Fix jumbo MTU processing on newer hardware + - openvswitch: Add missing case OVS_TUNNEL_KEY_ATTR_PAD + - net: unix: properly re-increment inflight counter of GC discarded candidates + - qmi_wwan: add Dell DW5811e + - net: vrf: Reset rt6i_idev in local dst after put + - net/mlx5: Add missing entries for set/query rate limit commands + - net/mlx5e: Use the proper UAPI values when offloading TC vlan actions + - net/mlx5: Increase number of max QPs in default profile + - net/mlx5e: Count GSO packets correctly + - net/mlx5e: Count LRO packets correctly + - ipv6: make sure to initialize sockc.tsflags before first use + - net: bcmgenet: remove bcmgenet_internal_phy_setup() + - ipv4: provide stronger user input validation in nl_fib_input() + - socket, bpf: fix sk_filter use after free in sk_clone_lock + - genetlink: fix counting regression on ctrl_dumpfamily() + - tcp: initialize icsk_ack.lrcvtime at session start time + - amd-xgbe: Fix the ECC-related bit position definitions + - net: solve a NAPI race + - HID: sony: Fix input device leak when connecting a DS4 twice using USB/BT + - Input: ALPS - fix V8+ protocol handling (73 03 28) + - Input: ALPS - fix trackstick button handling on V8 devices + - Input: elan_i2c - add ASUS EeeBook X205TA special touchpad fw + - Input: i8042 - add noloop quirk for Dell Embedded Box PC 3000 + - Input: iforce - validate number of endpoints before using them + - Input: ims-pcu - validate number of endpoints before using them + - Input: hanwang - validate number of endpoints before using them + - Input: yealink - validate number of endpoints before using them + - Input: cm109 - validate number of endpoints before using them + - Input: kbtab - validate number of endpoints before using them + - Input: sur40 - validate number of endpoints before using them + - ALSA: seq: Fix racy cell insertions during snd_seq_pool_done() + - ALSA: ctxfi: Fix the incorrect check of dma_set_mask() call + - ALSA: hda - Adding a group of pin definition to fix headset problem + - USB: serial: option: add Quectel UC15, UC20, EC21, and EC25 modems + - USB: serial: qcserial: add Dell DW5811e + - ACM gadget: fix endianness in notifications + - usb: gadget: f_uvc: Fix SuperSpeed companion descriptor's wBytesPerInterval + - dvb-usb-firmware: don't do DMA on stack + - usb-core: Add LINEAR_FRAME_INTR_BINTERVAL USB quirk + - USB: uss720: fix NULL-deref at probe + - USB: lvtest: fix NULL-deref at probe + - USB: idmouse: fix NULL-deref at probe + - USB: wusbcore: fix NULL-deref at probe + - usb: musb: cppi41: don't check early-TX-interrupt for Isoch transfer + - usb: hub: Fix crash after failure to read BOS descriptor + - USB: usbtmc: add missing endpoint sanity check + - USB: usbtmc: fix probe error path + - uwb: i1480-dfu: fix NULL-deref at probe + - uwb: hwa-rc: fix NULL-deref at probe + - mmc: ushc: fix NULL-deref at probe + - nl80211: fix dumpit error path RTNL deadlocks + - mmc: core: Fix access to HS400-ES devices + - iio: adc: ti_am335x_adc: fix fifo overrun recovery + - iio: sw-device: Fix config group initialization + - iio: hid-sensor-trigger: Change get poll value function order to avoid + sensor properties losing after resume from S3 + - iio: magnetometer: ak8974: remove incorrect __exit markups + - mei: fix deadlock on mei reset + - mei: don't wait for os version message reply + - parport: fix attempt to write duplicate procfiles + - ppdev: fix registering same device name + - ext4: mark inode dirty after converting inline directory + - powerpc/64s: Fix idle wakeup potential to clobber registers + - audit: fix auditd/kernel connection state tracking + - mmc: sdhci-of-at91: Support external regulators + - mmc: sdhci-of-arasan: fix incorrect timeout clock + - mmc: sdhci: Do not disable interrupts while waiting for clock + - mmc: sdhci-pci: Do not disable interrupts in sdhci_intel_set_power + - hwrng: amd - Revert managed API changes + - hwrng: geode - Revert managed API changes + - clk: sunxi-ng: sun6i: Fix enable bit offset for hdmi-ddc module clock + - clk: sunxi-ng: mp: Adjust parent rate for pre-dividers + - mwifiex: pcie: don't leak DMA buffers when removing + - ath10k: fix incorrect wlan_mac_base in qca6174_regs + - crypto: ccp - Assign DMA commands to the channel's CCP + - fscrypt: remove broken support for detecting keyring key revocation + - vfio: Rework group release notifier warning + - xen/acpi: upload PM state from init-domain to Xen + - iommu/vt-d: Fix NULL pointer dereference in device_to_iommu + - iommu/exynos: Block SYSMMU while invalidating FLPD cache + - iommu/exynos: Workaround FLPD cache flush issues for SYSMMU v5 + - Revert "ARM: at91/dt: sama5d2: Use new compatible for ohci node" + - ARM: at91: pm: cpu_idle: switch DDR to power-down mode + - arm64: kaslr: Fix up the kernel image alignment + - cpufreq: Restore policy min/max limits on CPU online + - cgroup, net_cls: iterate the fds of only the tasks which are being migrated + - blk-mq: don't complete un-started request in timeout handler + - cpsw/netcp: cpts depends on posix_timers + - drm/amdgpu: reinstate oland workaround for sclk + - drm/amd/amdgpu: add POLARIS12 PCI ID + - auxdisplay: img-ascii-lcd: add missing sentinel entry in + img_ascii_lcd_matches + - jbd2: don't leak memory if setting up journal fails + - intel_th: Don't leak module refcount on failure to activate + - Drivers: hv: vmbus: Don't leak channel ids + - Drivers: hv: vmbus: Don't leak memory when a channel is rescinded + - mmc: block: Fix is_waiting_last_req set incorrectly + - libceph: don't set weight to IN when OSD is destroyed + - device-dax: fix pmd/pte fault fallback handling + - scsi: sd: Check for unaligned partial completion + - cpuidle: Validate cpu_dev in cpuidle_add_sysfs() + - xen: do not re-use pirq number cached in pci device msi msg data + - drm: reference count event->completion + - fbcon: Fix vc attr at deinit + - crypto: algif_hash - avoid zero-sized array + - Linux 4.10.7 + * PS/2 mouse does not work on Dell embedded computer (LP: #1591053) + - Input: i8042 - add noloop quirk for Dell Embedded Box PC 3000 + * [Zesty] mlx5_core Kernel oops with bonding mode 1 and 6 (LP: #1676786) + - SAUCE: (no-up) net/mlx5: Avoid dereferencing uninitialized pointer + * [Hyper-V] Implement Hyper-V PTP Source (LP: #1676635) + - Revert "hv: don't reset hv_context.tsc_page on crash" + - Revert "Drivers: hv: vmbus: Raise retry/wait limits in vmbus_post_msg()" + - Revert "hv: allocate synic pages for all present CPUs" + - Revert "hv: init percpu_list in hv_synic_alloc()" + - Revert "Drivers: hv: vmbus: Prevent sending data on a rescinded channel" + - Revert "Drivers: hv: vmbus: Fix a rescind handling bug" + - Revert "Drivers: hv: util: kvp: Fix a rescind processing issue" + - Revert "Drivers: hv: util: Fcopy: Fix a rescind processing issue" + - Revert "Drivers: hv: util: Backup: Fix a rescind processing issue" + - Revert "drivers: hv: Turn off write permission on the hypercall page" + - Revert "UBUNTU: SAUCE: (no-up) hv: Supply vendor ID and package ABI" + - Drivers: hv: vmbus: Raise retry/wait limits in vmbus_post_msg() + - hv: allocate synic pages for all present CPUs + - hv: init percpu_list in hv_synic_alloc() + - hv: don't reset hv_context.tsc_page on crash + - Drivers: hv: vmbus: Prevent sending data on a rescinded channel + - hv: switch to cpuhp state machine for synic init/cleanup + - hv: make CPU offlining prevention fine-grained + - Drivers: hv: vmbus: Fix a rescind handling bug + - Drivers: hv: util: kvp: Fix a rescind processing issue + - Drivers: hv: util: Fcopy: Fix a rescind processing issue + - Drivers: hv: util: Backup: Fix a rescind processing issue + - Drivers: hv: vmbus: Move the definition of hv_x64_msr_hypercall_contents + - Drivers: hv: vmbus: Move the definition of generate_guest_id() + - Drivers: hv vmbus: Move Hypercall page setup out of common code + - Drivers: hv: vmbus: Move Hypercall invocation code out of common code + - Drivers: hv: vmbus: Consolidate all Hyper-V specific clocksource code + - Drivers: hv: vmbus: Move the extracting of Hypervisor version information + - Drivers: hv: vmbus: Move the crash notification function + - Drivers: hv: vmbus: Move the check for hypercall page setup + - Drivers: hv: vmbus: Move the code to signal end of message + - Drivers: hv: vmbus: Restructure the clockevents code + - Drivers: hv: util: Use hv_get_current_tick() to get current tick + - Drivers: hv: vmbus: Get rid of an unsused variable + - Drivers: hv: vmbus: Define APIs to manipulate the message page + - Drivers: hv: vmbus: Define APIs to manipulate the event page + - Drivers: hv: vmbus: Define APIs to manipulate the synthetic interrupt controller + - Drivers: hv: vmbus: Define an API to retrieve virtual processor index + - Drivers: hv: vmbus: Define an APIs to manage interrupt state + - Drivers: hv: vmbus: Cleanup hyperv_vmbus.h + - hv_util: switch to using timespec64 + - Drivers: hv: restore hypervcall page cleanup before kexec + - Drivers: hv: restore TSC page cleanup before kexec + - Drivers: hv: balloon: add a fall through comment to hv_memory_notifier() + - Drivers: hv: vmbus: Use all supported IC versions to negotiate + - Drivers: hv: Log the negotiated IC versions. + - Drivers: hv: Fix the bug in generating the guest ID + - hv: export current Hyper-V clocksource + - hv_utils: implement Hyper-V PTP source + - SAUCE: (no-up) hv: Supply vendor ID and package ABI + - drivers: hv: Turn off write permission on the hypercall page + * Populating Hyper-V MSR for Ubuntu 13.10 (LP: #1193172) + - SAUCE: (no-up) hv: Supply vendor ID and package ABI + * Ubuntu 16.10: Network checksum fixes needed for IPoIB for Mellanox CX4/CX5 + card (LP: #1670247) + - powerpc/64: Fix checksum folding in csum_tcpudp_nofold and ip_fast_csum_nofold + - powerpc/64: Use optimized checksum routines on little-endian + * Kernel linux-image-4.4.0-67-generic prevent the boot on Microsoft Hyper-v + 2012r2 Gen2 VM (LP: #1674635) + - scsi: storvsc: Workaround for virtual DVD SCSI version + * POWER9 Radix mode KVM (LP: #1675806) + - Revert "powerpc: Update to new option-vector-5 format for CAS" + - Revert "powerpc/powernv: Initialise nest mmu" + - Revert "KVM: PPC: Book 3S: XICS: Don't lock twice when checking for resend" + - KVM: PPC: Book3S: Change interrupt call to reduce scratch space use on HV + - KVM: PPC: Book3S: Move 64-bit KVM interrupt handler out from alt section + - KVM: PPC: Book3S: 64-bit CONFIG_RELOCATABLE support for interrupts + - powerpc/64: More definitions for POWER9 + - powerpc/64: Export pgtable_cache and pgtable_cache_add for KVM + - powerpc/64: Make type of partition table flush depend on partition type + - powerpc/64: Allow for relocation-on interrupts from guest to host + - KVM: PPC: Book3S HV: Add userspace interfaces for POWER9 MMU + - KVM: PPC: Book3S HV: Set process table for HPT guests on POWER9 + - KVM: PPC: Book3S HV: Use ASDR for HPT guests on POWER9 + - KVM: PPC: Book3S HV: Add basic infrastructure for radix guests + - KVM: PPC: Book3S HV: Modify guest entry/exit paths to handle radix guests + - KVM: PPC: Book3S HV: Page table construction and page faults for radix guests + - KVM: PPC: Book3S HV: MMU notifier callbacks for radix guests + - KVM: PPC: Book3S HV: Implement dirty page logging for radix guests + - KVM: PPC: Book3S HV: Make HPT-specific hypercalls return error in radix mode + - KVM: PPC: Book3S HV: Invalidate TLB on radix guest vcpu movement + - KVM: PPC: Book3S HV: Allow guest exit path to have MMU on + - KVM: PPC: Book3S HV: Invalidate ERAT on guest entry/exit for POWER9 DD1 + - KVM: PPC: Book3S HV: Enable radix guest support + - powerpc/64: CONFIG_RELOCATABLE support for hmi interrupts + - KVM: PPC: Book3S HV: Fix software walk of guest process page tables + - KVM: PPC: Book3S HV: Don't use ASDR for real-mode HPT faults on POWER9 + - KVM: PPC: Book3S HV: Don't try to signal cpu -1 + - KVM: PPC: Book 3S: Fix error return in kvm_vm_ioctl_create_spapr_tce() + - powerpc/64: Invalidate process table caching after setting process table + - powerpc: Update to new option-vector-5 format for CAS + - KVM: PPC: Book 3S: XICS: Don't lock twice when checking for resend + - powerpc/powernv: Initialise nest mmu + - powerpc/powernv: Remove separate entry for OPAL real mode calls + * [Hyper-V][Mellanox] net/mlx4_core: Avoid delays during VF driver device shutdown (LP: #1672785) + - net/mlx4_core: Avoid delays during VF driver device shutdown + * [zesty] mlx4_core OOM with 32 bit arch (LP: #1676858) + - mlx4: reduce OOM risk on arches with large pages + * [Feature] GLK Northpeak Enabling (LP: #1645963) + - intel_th: pci: Add Denverton SOC support + - intel_th: pci: Add Gemini Lake support + * [zesty] mlx5e OVS fixes (LP: #1676388) + - net/mlx5: Fix create autogroup prev initializer + - net/mlx5e: Avoid supporting udp tunnel port ndo for VF reps + - net/mlx5e: Avoid wrong identification of rules on deletion + - devlink: fix the name of eswitch commands + - devlink: rename devlink_eswitch_fill to devlink_nl_eswitch_fill + - devlink: use nla_put_failure goto label instead of out + - devlink: allow to fillup eswitch attrs even if mode_get op does not exist + - net/mlx5e: Change the TC offload rule add/del code path to be per NIC or E-Switch + - net/mlx5: E-Switch, Don't allow changing inline mode when flows are configured + * [ARM64] Support systems where the physical memory footprint exceeds the size + of the linear mapping. (LP: #1675046) + - SAUCE: efi: arm-stub: Correct FDT and initrd allocation rules for arm64 + - SAUCE: efi: arm-stub: Round up FDT allocation to mapping size + * AACRAID Driver: Add 3 patch fixes to Kernel release (LP: #1675872) + - scsi: aacraid: remove redundant zero check on ret + - scsi: aacraid: Fix typo in blink status + - scsi: aacraid: Fix potential null access + * stress_smoke_test passing and exiting rc=9 (linux 4.9.0-12.13 ADT test + failure with linux 4.9.0-12.13) (LP: #1658633) + - ext4: lock the xattr block before checksuming it + * ARM arch_timer erratum (LP: #1675509) + - arm64: ptrace: add XZR-safe regs accessors + - SAUCE: arm64: Allow checking of a CPU-local erratum + - SAUCE: arm64: Add CNTVCT_EL0 trap handler + - SAUCE: arm64: Define Cortex-A73 MIDR + - SAUCE: arm64: cpu_errata: Allow an erratum to be match for all revisions of a core + - SAUCE: arm64: cpu_errata: Add capability to advertise Cortex-A73 erratum 858921 + - SAUCE: arm64: arch_timer: Add infrastructure for multiple erratum detection methods + - SAUCE: arm64: arch_timer: Add erratum handler for globally defined capability + - SAUCE: arm64: arch_timer: Add erratum handler for CPU-specific capability + - SAUCE: arm64: arch_timer: Move arch_timer_reg_read/write around + - SAUCE: arm64: arch_timer: Get rid of erratum_workaround_set_sne + - SAUCE: arm64: arch_timer: Rework the set_next_event workarounds + - SAUCE: arm64: arch_timer: Make workaround methods optional + - SAUCE: arm64: arch_timer: Allows a CPU-specific erratum to only affect a subset of CPUs + - SAUCE: arm64: arch_timer: Move clocksource_counter and co around + - SAUCE: arm64: arch_timer: Enable CNTVCT_EL0 trap if workaround is enabled + - SAUCE: arm64: arch_timer: Workaround for Cortex-A73 erratum 858921 + - SAUCE: arm64: arch_timer: Allow erratum matching with ACPI OEM information + - SAUCE: arm64: arch_timer: Add HISILICON_ERRATUM_161010101 ACPI matching data + - SAUCE: arm64: arch_timer: Add check for unknown erratum + * Zesty update to v4.10.6 stable release (LP: #1676429) + - give up on gcc ilog2() constant optimizations + - qla2xxx: Fix memory leak for abts processing + - qla2xxx: Fix request queue corruption. + - parisc: Optimize flush_kernel_vmap_range and invalidate_kernel_vmap_range + - parisc: support R_PARISC_SECREL32 relocation in modules + - parisc: Fix system shutdown halt + - perf/core: Fix use-after-free in perf_release() + - perf/core: Fix event inheritance on fork() + - md/r5cache: fix set_syndrome_sources() for data in cache + - xprtrdma: Squelch kbuild sparse complaint + - NFS prevent double free in async nfs4_exchange_id + - cpufreq: Fix and clean up show_cpuinfo_cur_freq() + - powerpc/boot: Fix zImage TOC alignment + - hwrng: omap - write registers after enabling the clock + - hwrng: omap - use devm_clk_get() instead of of_clk_get() + - hwrng: omap - Do not access INTMASK_REG on EIP76 + - md/raid1/10: fix potential deadlock + - target/pscsi: Fix TYPE_TAPE + TYPE_MEDIMUM_CHANGER export + - scsi: lpfc: Add shutdown method for kexec + - scsi: libiscsi: add lock around task lists to fix list corruption regression + - scsi: mpt3sas: Avoid sleeping in interrupt context + - target: Fix VERIFY_16 handling in sbc_parse_cdb + - isdn/gigaset: fix NULL-deref at probe + - gfs2: Avoid alignment hole in struct lm_lockname + - percpu: acquire pcpu_lock when updating pcpu_nr_empty_pop_pages + - cgroup/pids: remove spurious suspicious RCU usage warning + - drm/amdgpu/si: add dpm quirk for Oland + - Linux 4.10.6 + * Miscellaneous Ubuntu changes + - [Config] CONFIG_ARM64_ERRATUM_858921=y + - [Debian] add rprovides for spl-modules and zfs-modules + + [ Ubuntu: 4.10.0-15.17 ] + + * Release Tracking Bug + - LP: #1675868 + * In ZZ-BML (POWER9):ubuntu17.04 installation Fails (LP: #1675771) + - powerpc/64s: fix handling of non-synchronous machine checks + - powerpc/64s: allow machine check handler to set severity and initiator + - powerpc/64s: POWER9 machine check handler + * [Feature] R3 mwait support for Knights Mill (LP: #1637550) + - x86/cpufeature: Enable RING3MWAIT for Knights Landing + - x86/cpufeature: Enable RING3MWAIT for Knights Mill + - x86/msr: Add MSR_MISC_FEATURE_ENABLES and RING3MWAIT bit + - x86/elf: Add HWCAP2 to expose ring 3 MONITOR/MWAIT + - x86/cpufeature: Add RING3MWAIT to CPU features + * [Feature] GLK:New device IDs (LP: #1645951) + - mfd: intel-lpss: Add Intel Gemini Lake PCI IDs + - pwm: lpss: Add Intel Gemini Lake PCI ID + - i2c: i801: Add support for Intel Gemini Lake + - spi: pxa2xx: Add support for Intel Gemini Lake + - [Config] CONFIG_PINCTRL_GEMINILAKE=m + - pinctrl: intel: Add Intel Gemini Lake pin controller support + * Zesty update to v4.10.5 stable release (LP: #1675032) + - net/mlx5e: Register/unregister vport representors on interface attach/detach + - net/mlx5e: Do not reduce LRO WQE size when not using build_skb + - net/mlx5e: Fix broken CQE compression initialization + - net/mlx5e: Update MPWQE stride size when modifying CQE compress state + - net/mlx5e: Fix wrong CQE decompression + - vxlan: correctly validate VXLAN ID against VXLAN_N_VID + - vti6: return GRE_KEY for vti6 + - vxlan: don't allow overwrite of config src addr + - ipv4: add missing initialization for flowi4_uid + - ipv4: mask tos for input route + - sctp: set sin_port for addr param when checking duplicate address + - net sched actions: decrement module reference count after table flush. + - l2tp: avoid use-after-free caused by l2tp_ip_backlog_recv + - vxlan: lock RCU on TX path + - geneve: lock RCU on TX path + - mlxsw: spectrum_router: Avoid potential packets loss + - net: bridge: allow IPv6 when multicast flood is disabled + - net: don't call strlen() on the user buffer in packet_bind_spkt() + - net: net_enable_timestamp() can be called from irq contexts + - ipv6: orphan skbs in reassembly unit + - dccp: Unlock sock before calling sk_free() + - amd-xgbe: Stop the PHY before releasing interrupts + - amd-xgbe: Be sure to set MDIO modes on device (re)start + - amd-xgbe: Don't overwrite SFP PHY mod_absent settings + - bonding: use ETH_MAX_MTU as max mtu + - strparser: destroy workqueue on module exit + - tcp: fix various issues for sockets morphing to listen state + - net: fix socket refcounting in skb_complete_wifi_ack() + - net: fix socket refcounting in skb_complete_tx_timestamp() + - net/sched: act_skbmod: remove unneeded rcu_read_unlock in tcf_skbmod_dump + - dccp: fix use-after-free in dccp_feat_activate_values + - team: use ETH_MAX_MTU as max mtu + - vrf: Fix use-after-free in vrf_xmit + - net/tunnel: set inner protocol in network gro hooks + - uapi: fix linux/packet_diag.h userspace compilation error + - amd-xgbe: Enable IRQs only if napi_complete_done() is true + - act_connmark: avoid crashing on malformed nlattrs with null parms + - mpls: Send route delete notifications when router module is unloaded + - mpls: Do not decrement alive counter for unregister events + - ipv6: make ECMP route replacement less greedy + - ipv6: avoid write to a possibly cloned skb + - net: use net->count to check whether a netns is alive or not + - dccp/tcp: fix routing redirect race + - tun: fix premature POLLOUT notification on tun devices + - dccp: fix memory leak during tear-down of unsuccessful connection request + - arm64: KVM: VHE: Clear HCR_TGE when invalidating guest TLBs + - drm/i915/lspcon: Enable AUX interrupts for resume time initialization + - drm/i915/gen9+: Enable hotplug detection early + - drm/i915/lspcon: Fix resume time initialization due to unasserted HPD + - x86/unwind: Fix last frame check for aligned function stacks + - x86/tsc: Fix ART for TSC_KNOWN_FREQ + - x86/kasan: Fix boot with KASAN=y and PROFILE_ANNOTATED_BRANCHES=y + - x86/intel_rdt: Put group node in rdtgroup_kn_unlock + - x86/perf: Fix CR4.PCE propagation to use active_mm instead of mm + - futex: Fix potential use-after-free in FUTEX_REQUEUE_PI + - futex: Add missing error handling to FUTEX_REQUEUE_PI + - locking/rwsem: Fix down_write_killable() for CONFIG_RWSEM_GENERIC_SPINLOCK=y + - crypto: powerpc - Fix initialisation of crc32c context + - crypto: s5p-sss - Fix spinlock recursion on LRW(AES) + - Linux 4.10.5 + * Ubuntu server enables screenblanking, concealing crashdumps (DPMS is not + used) (LP: #869017) + - SAUCE: Disable default console blanking interval + * CVE-CVE-2017-5986 + - sctp: deny peeloff operation on asocs with threads sleeping on it + * tty: acpi/spcr: QDF2400 E44 checks for wrong OEM revision (LP: #1674466) + - tty: acpi/spcr: QDF2400 E44 checks for wrong OEM revision + * Ubuntu 17.04: machine crashes with Oops in dccp_v4_ctl_send_reset while + running stress-ng. (LP: #1654073) + - tcp/dccp: block BH for SYN processing + * POWER9: Additional patches for TTY and CPU_IDLE (LP: #1674325) + - tty: Fix ldisc crash on reopened tty + - SAUCE: powerpc/powernv/cpuidle: Pass correct drv->cpumask for registration + * Fix MODULE_FIRMWARE for intel 6030 wireless (LP: #1674334) + - iwlwifi: fix MODULE_FIRMWARE for 6030 + * [zesty] net sched actions - Adding support for user cookies (LP: #1674087) + - net sched actions: Add support for user cookies + - net sched actions: do not overwrite status of action creation. + * Zesty update to v4.10.4 stable release (LP: #1674288) + - iio: 104-quad-8: Fix off-by-one error when addressing flag register + - ARM: qcom_defconfig: Enable RPM/RPM-SMD clocks + - USB: serial: digi_acceleport: fix OOB data sanity check + - USB: serial: digi_acceleport: fix OOB-event processing + - crypto: improve gcc optimization flags for serpent and wp512 + - MIPS: Update defconfigs for NF_CT_PROTO_DCCP/UDPLITE change + - MIPS: VDSO: avoid duplicate CAC_BASE definition + - MIPS: ip27: Disable qlge driver in defconfig + - MIPS: Update ip27_defconfig for SCSI_DH change + - MIPS: ip22: Fix ip28 build for modern gcc + - MIPS: Update lemote2f_defconfig for CPU_FREQ_STAT change + - mtd: pmcmsp: use kstrndup instead of kmalloc+strncpy + - MIPS: ralink: Cosmetic change to prom_init(). + - MIPS: ralink: Remove unused timer functions + - MIPS: ralink: Remove unused rt*_wdt_reset functions + - i2c: bcm2835: Avoid possible NULL ptr dereference + - tracing: Add #undef to fix compile error + - ucount: Remove the atomicity from ucount->count + - efi/arm: Fix boot crash with CONFIG_CPUMASK_OFFSTACK=y + - dw2102: don't do DMA on stack + - i2c: add missing of_node_put in i2c_mux_del_adapters + - powerpc: Emulation support for load/store instructions on LE + - powerpc/booke: Fix boot crash due to null hugepd + - powerpc/xics: Work around limitations of OPAL XICS priority handling + - PCI: Prevent VPD access for QLogic ISP2722 + - usb: gadget: dummy_hcd: clear usb_gadget region before registration + - usb: dwc3: gadget: make Set Endpoint Configuration macros safe + - usb: dwc3-omap: Fix missing break in dwc3_omap_set_mailbox() + - usb: ohci-at91: Do not drop unhandled USB suspend control requests + - usb: gadget: function: f_fs: pass companion descriptor along + - Revert "usb: gadget: uvc: Add missing call for additional setup data" + - usb: host: xhci-dbg: HCIVERSION should be a binary number + - usb: host: xhci-plat: Fix timeout on removal of hot pluggable xhci controllers + - USB: serial: safe_serial: fix information leak in completion handler + - USB: serial: omninet: fix reference leaks at open + - USB: iowarrior: fix NULL-deref at probe + - USB: iowarrior: fix NULL-deref in write + - USB: serial: io_ti: fix NULL-deref in interrupt callback + - USB: serial: io_ti: fix information leak in completion handler + - serial: samsung: Continue to work if DMA request fails + - KVM: s390: Fix guest migration for huge guests resulting in panic + - KVM: arm/arm64: Let vcpu thread modify its own active state + - drm/i915/gvt: Fix superfluous newline in GVT_DISPLAY_READY env var + - serial_ir: ensure we're ready to receive interrupts + - dm: flush queued bios when process blocks to avoid deadlock + - rc: raw decoder for keymap protocol is not loaded on register + - ext4: don't BUG when truncating encrypted inodes on the orphan list + - IB/mlx5: Verify that Q counters are supported + - Linux 4.10.4 + * ip_rcv_finish() NULL pointer kernel panic (LP: #1672470) + - bridge: drop netfilter fake rtable unconditionally + * Miscellaneous Ubuntu changes + - [Config] Remove powerpc architecture build + - [Config] updateconfigs after removing powerpc builds + - [Config] Update annotations after removing powerpc configs + + [ Ubuntu: 4.10.0-14.16 ] + + * Release Tracking Bug + - LP: #1673805 + * msleep() bug causes Nuvoton I2C TPM device driver delays (LP: #1667567) + - tpm: msleep() delays - replace with usleep_range() in i2c nuvoton driver + - SAUCE: tpm: add sleep only for retry in i2c_nuvoton_write_status() + * C++ demangling support missing from perf (LP: #1396654) + - [Config] added binutils-dev to Build-deps + * dm-queue-length module is not included in installer/initramfs (LP: #1673350) + - [Config] d-i: Also add dm-queue-length to multipath modules + * move aufs.ko from -extra to linux-image package (LP: #1673498) + - [config] aufs.ko moved to linux-image package + * Using an NVMe drive causes huge power drain (LP: #1664602) + - nvme: Add a quirk mechanism that uses identify_ctrl + - nvme: Enable autonomous power state transitions + * Broadcom bluetooth modules sometimes fail to initialize (LP: #1483101) + - Bluetooth: btbcm: Add a delay for module reset + * Need support of Broadcom bluetooth device [413c:8143] (LP: #1166113) + - Bluetooth: btusb: Add support for 413c:8143 + * Zesty update to v4.10.3 stable release (LP: #1673118) + - serial: 8250_pci: Add MKS Tenta SCOM-0800 and SCOM-0801 cards + - KVM: s390: Disable dirty log retrieval for UCONTROL guests + - KVM: VMX: use correct vmcs_read/write for guest segment selector/base + - Bluetooth: Add another AR3012 04ca:3018 device + - phy: qcom-ufs: Don't kfree devres resource + - phy: qcom-ufs: Fix misplaced jump label + - s390/qdio: clear DSCI prior to scanning multiple input queues + - s390/dcssblk: fix device size calculation in dcssblk_direct_access() + - s390/kdump: Use "LINUX" ELF note name instead of "CORE" + - s390/chsc: Add exception handler for CHSC instruction + - s390: TASK_SIZE for kernel threads + - s390/topology: correct allocation of topology information + - s390: make setup_randomness work + - s390: use correct input data address for setup_randomness + - net: mvpp2: fix DMA address calculation in mvpp2_txq_inc_put() + - cxl: Prevent read/write to AFU config space while AFU not configured + - cxl: fix nested locking hang during EEH hotplug + - brcmfmac: fix incorrect event channel deduction + - mnt: Tuck mounts under others instead of creating shadow/side mounts. + - IB/ipoib: Fix deadlock between rmmod and set_mode + - IB/IPoIB: Add destination address when re-queue packet + - IB/mlx5: Fix out-of-bound access + - IB/SRP: Avoid using IB_MR_TYPE_SG_GAPS + - IB/srp: Avoid that duplicate responses trigger a kernel bug + - IB/srp: Fix race conditions related to task management + - Btrfs: fix data loss after truncate when using the no-holes feature + - orangefs: Use RCU for destroy_inode + - memory/atmel-ebi: Fix ns <-> cycles conversions + - tracing: Fix return value check in trace_benchmark_reg() + - ktest: Fix child exit code processing + - ceph: remove req from unsafe list when unregistering it + - target: Fix NULL dereference during LUN lookup + active I/O shutdown + - drivers/pci/hotplug: Handle presence detection change properly + - drivers/pci/hotplug: Fix initial state for empty slot + - nlm: Ensure callback code also checks that the files match + - pwm: pca9685: Fix period change with same duty cycle + - xtensa: move parse_tag_fdt out of #ifdef CONFIG_BLK_DEV_INITRD + - nfit, libnvdimm: fix interleave set cookie calculation + - mac80211: flush delayed work when entering suspend + - mac80211: don't reorder frames with SN smaller than SSN + - mac80211: don't handle filtered frames within a BA session + - mac80211: use driver-indicated transmitter STA only for data frames + - drm/amdgpu: add more cases to DCE11 possible crtc mask setup + - drm/amdgpu/pm: check for headless before calling compute_clocks + - Revert "drm/amdgpu: update tile table for oland/hainan" + - drm/ast: Fix AST2400 POST failure without BMC FW or VBIOS + - drm/radeon: handle vfct with multiple vbios images + - drm/edid: Add EDID_QUIRK_FORCE_8BPC quirk for Rotel RSX-1058 + - drm/ttm: Make sure BOs being swapped out are cacheable + - drm/vmwgfx: Work around drm removal of control nodes + - drm/imx: imx-tve: Do not set the regulator voltage + - drm/atomic: fix an error code in mode_fixup() + - drm/i915/gvt: Disable access to stolen memory as a guest + - drm: Cancel drm_fb_helper_dirty_work on unload + - drm: Cancel drm_fb_helper_resume_work on unload + - drm/i915: Recreate internal objects with single page segments if dmar fails + - drm/i915: Avoid spurious WARNs about the wrong pipe in the PPS code + - drm/i915: Check for timeout completion when waiting for the rq to submitted + - drm/i915: Pass timeout==0 on to i915_gem_object_wait_fence() + - drm/i915: Fix not finding the VBT when it overlaps with OPREGION_ASLE_EXT + - libceph: use BUG() instead of BUG_ON(1) + - x86, mm: fix gup_pte_range() vs DAX mappings + - x86/tlb: Fix tlb flushing when lguest clears PGE + - thp: fix another corner case of munlock() vs. THPs + - mm: do not call mem_cgroup_free() from within mem_cgroup_alloc() + - kasan: resched in quarantine_remove_cache() + - fat: fix using uninitialized fields of fat_inode/fsinfo_inode + - drivers: hv: Turn off write permission on the hypercall page + - Linux 4.10.3 + * Zesty update to v4.10.2 stable release (LP: #1672544) + - MIPS: pic32mzda: Fix linker error for pic32_get_pbclk() + - MIPS: Fix special case in 64 bit IP checksumming. + - MIPS: BCM47XX: Fix button inversion for Asus WL-500W + - MIPS: OCTEON: Fix copy_from_user fault handling for large buffers + - MIPS: Lantiq: Keep ethernet enabled during boot + - MIPS: Clear ISA bit correctly in get_frame_info() + - MIPS: Prevent unaligned accesses during stack unwinding + - MIPS: Fix get_frame_info() handling of microMIPS function size + - MIPS: Fix is_jump_ins() handling of 16b microMIPS instructions + - MIPS: Calculate microMIPS ra properly when unwinding the stack + - MIPS: Handle microMIPS jumps in the same way as MIPS32/MIPS64 jumps + - mmc: sdhci-acpi: support deferred probe + - am437x-vpfe: always assign bpp variable + - uvcvideo: Fix a wrong macro + - media: fix dm1105.c build error + - cxd2820r: fix gpio null pointer dereference + - dvb-usb: don't use stack for firmware load + - lirc_dev: LIRC_{G,S}ET_REC_MODE do not work + - media: Properly pass through media entity types in entity enumeration + - ext4: fix deadlock between inline_data and ext4_expand_extra_isize_ea() + - spi: s3c64xx: fix inconsistency between binding and driver + - ARM: at91: define LPDDR types + - ARM: dts: at91: Enable DMA on sama5d4_xplained console + - ARM: dts: at91: Enable DMA on sama5d2_xplained console + - ALSA: hda/realtek - Cannot adjust speaker's volume on a Dell AIO + - ALSA: hda - fix Lewisburg audio issue + - ALSA: timer: Reject user params with too small ticks + - ALSA: ctxfi: Fallback DMA mask to 32bit + - ALSA: seq: Fix link corruption by event error handling + - ALSA: hda - Add subwoofer support for Dell Inspiron 17 7000 Gaming + - ALSA: hda - Fix micmute hotkey problem for a lenovo AIO machine + - hwmon: (it87) Do not overwrite bit 2..6 of pwm control registers + - hwmon: (it87) Ensure that pwm control cache is current before updating values + - staging: greybus: loopback: fix broken udelay + - staging/lustre/lnet: Fix allocation size for sv_cpt_data + - staging: rtl: fix possible NULL pointer dereference + - coresight: STM: Balance enable/disable + - coresight: fix kernel panic caused by invalid CPU + - regulator: Fix regulator_summary for deviceless consumers + - tpm_tis: use default timeout value if chip reports it as zero + - tpm_tis: fix the error handling of init_tis() + - iommu/vt-d: Fix some macros that are incorrectly specified in intel-iommu + - iommu/vt-d: Tylersburg isoch identity map check is done too late. + - CIFS: Fix splice read for non-cached files + - mm, devm_memremap_pages: hold device_hotplug lock over mem_hotplug_{begin, done} + - mm/page_alloc: fix nodes for reclaim in fast path + - mm: vmpressure: fix sending wrong events on underflow + - mm: do not access page->mapping directly on page_endio + - mm balloon: umount balloon_mnt when removing vb device + - mm, vmscan: cleanup lru size claculations + - mm, vmscan: consider eligible zones in get_scan_count + - sigaltstack: support SS_AUTODISARM for CONFIG_COMPAT + - ipc/shm: Fix shmat mmap nil-page protection + - ima: fix ima_d_path() possible race with rename + - PM / devfreq: Fix available_governor sysfs + - PM / devfreq: Fix wrong trans_stat of passive devfreq device + - dm cache: fix corruption seen when using cache > 2TB + - dm stats: fix a leaked s->histogram_boundaries array + - dm round robin: revert "use percpu 'repeat_count' and 'current_path'" + - dm raid: fix data corruption on reshape request + - scsi: qla2xxx: Cleaned up queue configuration code. + - scsi: qla2xxx: Fix response queue count for Target mode. + - scsi: qla2xxx: Fix Regression introduced by pci_alloc_irq_vectors_affinity call. + - Revert "scsi: aacraid: Reorder Adapter status check" + - scsi: aacraid: Reorder Adapter status check + - scsi: use 'scsi_device_from_queue()' for scsi_dh + - power: reset: at91-poweroff: timely shutdown LPDDR memories + - Fix: Disable sys_membarrier when nohz_full is enabled + - jbd2: don't leak modified metadata buffers on an aborted journal + - block/loop: fix race between I/O and set_status + - loop: fix LO_FLAGS_PARTSCAN hang + - ext4: Include forgotten start block on fallocate insert range + - ext4: do not polute the extents cache while shifting extents + - ext4: trim allocation requests to group size + - ext4: fix data corruption in data=journal mode + - ext4: fix use-after-iput when fscrypt contexts are inconsistent + - ext4: fix inline data error paths + - ext4: preserve the needs_recovery flag when the journal is aborted + - ext4: return EROFS if device is r/o and journal replay is needed + - ext4: fix fencepost in s_first_meta_bg validation + - samples/seccomp: fix 64-bit comparison macros + - mei: remove support for broken parallel read + - ath10k: fix boot failure in UTF mode/testmode + - ath5k: drop bogus warning on drv_set_key with unsupported cipher + - ath9k: fix race condition in enabling/disabling IRQs + - ath9k: use correct OTP register offsets for the AR9340 and AR9550 + - PCI: hv: Fix wslot_to_devfn() to fix warnings on device removal + - PCI: altera: Fix TLP_CFG_DW0 for TLP write + - Drivers: hv: vmbus: Raise retry/wait limits in vmbus_post_msg() + - crypto: xts - Add ECB dependency + - crypto: testmgr - Pad aes_ccm_enc_tv_template vector + - crypto: xts - Propagate NEED_FALLBACK bit + - crypto: api - Add crypto_requires_off helper + - fuse: add missing FR_FORCE + - x86/pkeys: Check against max pkey to avoid overflows + - arm/arm64: KVM: Enforce unconditional flush to PoC when mapping to stage-2 + - arm64: dma-mapping: Fix dma_mapping_error() when bypassing SWIOTLB + - arm64: fix erroneous __raw_read_system_reg() cases + - KVM: arm/arm64: vgic: Stop injecting the MSI occurrence twice + - Revert "arm64: mm: set the contiguous bit for kernel mappings where appropriate" + - iio: pressure: mpl115: do not rely on structure field ordering + - iio: pressure: mpl3115: do not rely on structure field ordering + - can: gs_usb: Don't use stack memory for USB transfers + - can: usb_8dev: Fix memory leak of priv->cmd_msg_buffer + - w1: don't leak refcount on slave attach failure in w1_attach_slave_device() + - w1: ds2490: USB transfer buffers need to be DMAable + - usb: musb: da8xx: Remove CPPI 3.0 quirk and methods + - usb: dwc3: gadget: skip Set/Clear Halt when invalid + - usb: host: xhci: plat: check hcc_params after add hcd + - usb: gadget: udc-core: Rescan pending list on driver unbind + - usb: gadget: udc: fsl: Add missing complete function. + - usb: gadget: f_hid: fix: Free out requests + - usb: gadget: f_hid: fix: Prevent accessing released memory + - usb: gadget: f_hid: Use spinlock instead of mutex + - usb: gadget: f_hid: fix: Move IN request allocation to set_alt() + - hv: allocate synic pages for all present CPUs + - hv: init percpu_list in hv_synic_alloc() + - Drivers: hv: vmbus: Prevent sending data on a rescinded channel + - Drivers: hv: vmbus: Fix a rescind handling bug + - Drivers: hv: util: kvp: Fix a rescind processing issue + - Drivers: hv: util: Fcopy: Fix a rescind processing issue + - Drivers: hv: util: Backup: Fix a rescind processing issue + - RDMA/core: Fix incorrect structure packing for booleans + - rdma_cm: fail iwarp accepts w/o connection params + - gfs2: Add missing rcu locking for glock lookup + - remoteproc: qcom: mdt_loader: Don't overwrite firmware object + - rtlwifi: Fix alignment issues + - rtlwifi: rtl8192c-common: Fix "BUG: KASAN: + - VME: restore bus_remove function causing incomplete module unload + - nfsd: minor nfsd_setattr cleanup + - nfsd: special case truncates some more + - NFSv4: Fix memory and state leak in _nfs4_open_and_get_state + - NFSv4: Fix reboot recovery in copy offload + - pNFS/flexfiles: If the layout is invalid, it must be updated before retrying + - Revert "NFSv4.1: Handle NFS4ERR_BADSESSION/NFS4ERR_DEADSESSION replies to OP_SEQUENCE" + - NFSv4: fix getacl head length estimation + - NFSv4: fix getacl ERANGE for some ACL buffer sizes + - f2fs: fix a problem of using memory after free + - f2fs: fix multiple f2fs_add_link() calls having same name + - f2fs: add ovp valid_blocks check for bg gc victim to fg_gc + - f2fs: avoid to issue redundant discard commands + - f2fs: Fix zoned block device support + - rtc: sun6i: Disable the build as a module + - rtc: sun6i: Add some locking + - rtc: sun6i: Switch to the external oscillator + - md linear: fix a race between linear_add() and linear_congested() + - bcma: use (get|put)_device when probing/removing device driver + - mtd: nand: ifc: Fix location of eccstat registers for IFC V1.0 + - dmaengine: ipu: Make sure the interrupt routine checks all interrupts. + - xprtrdma: Fix Read chunk padding + - xprtrdma: Per-connection pad optimization + - xprtrdma: Disable pad optimization by default + - xprtrdma: Reduce required number of send SGEs + - powerpc/xmon: Fix data-breakpoint + - powerpc/mm: Add MMU_FTR_KERNEL_RO to possible feature mask + - module: fix memory leak on early load_module() failures + - MIPS: IP22: Reformat inline assembler code to modern standards. + - MIPS: IP22: Fix build error due to binutils 2.25 uselessnes. + - ceph: update readpages osd request according to size of pages + - Linux 4.10.2 + * kernel selftests ADT failure with linux 4.10.0-13.15 on ppc64el (LP: #1672510) + - SAUCE: Add '-fno-ie -no-pie' to cflags for powerpc ptrace tests + * arm64: Workaround QDF2400 erratum 0065 (LP: #1672486) + - [Config] CONFIG_QCOM_QDF2400_ERRATUM_0065=y + - irqchip/gicv3-its: Add workaround for QDF2400 ITS erratum 0065 + * arm64 MSI/PCIe passthrough patches break build of certain configs (LP: #1672502) + - irqdomain: Add empty irq_domain_check_msi_remap + * pinctrl: qcom: add get_direction function (LP: #1672504) + - pinctrl: qcom: add get_direction function + * perf probes on arm64 don't work with 4.10 kernel b/c of register name issue (LP: #1671917) + - perf probe: Fix wrong register name for arm64 + * cleanup primary tree for linux-hwe layering issues (LP: #1637473) + - [Config] linux-source-* is in the primary linux namespace + * hv_set_ifconfig script parsing fails for certain configuration (LP: #1640109) + - hv_set_ifconfig -- handle DHCP interfaces correctly + - hv_set_ifconfig -- ensure we include the last stanza + * Revert "UBUNTU: SAUCE: Disable timers selftest for now" (LP: #1672372) + - Revert "UBUNTU: SAUCE: Disable timers selftest for now" + * Ubuntu 16.10: Network checksum fixes needed for IPoIB for Mellanox CX4/CX5 card (LP: #1670247) + - powerpc/64: Fix checksum folding in csum_add() + * POWER9: Additional power9 patches (LP: #1671613) + - mm/autonuma: don't use set_pte_at when updating protnone ptes + - mm/autonuma: let architecture override how the write bit should be stashed in a protnone pte. + - powerpc/mm/autonuma: switch ppc64 to its own implementation of saved write + - mm/gup: check for protnone only if it is a PTE entry + - mm/thp/autonuma: use TNF flag instead of vm fault + - SAUCE: powerpc/mm: handle protnone ptes on fork + - SAUCE: power/mm: update pte_write and pte_wrprotect to handle savedwrite + - mm/ksm: improve deduplication of zero pages with colouring + - mm: introduce page_vma_mapped_walk() + - mm, ksm: convert write_protect_page() to use page_vma_mapped_walk() + - mm/ksm: handle protnone saved writes when making page write protect + * POWER9 : Enable Stop 0-2 with ESL=EC=0 (LP: #1666197) + - powerpc/powernv: Fix bug due to labeling ambiguity in power_enter_stop + * Miscellaneous Ubuntu changes + - [Debian] consider renames in gen-auto-reconstruct + + [ Ubuntu: 4.10.0-13.15 ] + + * Release Tracking Bug + - LP: #1671614 + * ehci-platform needed in usb-modules udeb (LP: #1671589) + - d-i: add ehci-platform to usb-modules + * irqchip/gic-v3-its: Enable cacheable attribute Read-allocate hints + (LP: #1671598) + - irqchip/gic-v3-its: Enable cacheable attribute Read-allocate hints + * iommu: Fix static checker warning in iommu_insert_device_resv_regions + (LP: #1671599) + - iommu: Fix static checker warning in iommu_insert_device_resv_regions + * QDF2400: Fix panic introduced by erratum 1003 (LP: #1671602) + - arm64: Avoid clobbering mm in erratum workaround on QDF2400 + * QDF2400 PCI ports require ACS quirk (LP: #1671601) + - PCI: Add ACS quirk for Qualcomm QDF2400 and QDF2432 + * tty: pl011: Work around QDF2400 E44 stuck BUSY bit (LP: #1671600) + - tty: pl011: Work around QDF2400 E44 stuck BUSY bit + * CVE-2017-2636 + - tty: n_hdlc: get rid of racy n_hdlc.tbuf + * Sync virtualbox to 5.1.16-dfsg-1 in zesty (LP: #1671470) + - ubuntu: vbox -- Update to 5.1.16-dfsg-1 + + [ Ubuntu: 4.10.0-12.14 ] + + * Release Tracking Bug + - LP: #1671235 + * POWER9: Improve CAS negotiation (LP: #1671169) + - powerpc: Parse the command line before calling CAS + - powerpc: Update to new option-vector-5 format for CAS + * lowlatency kernel is lacking support for latencytop (LP: #1655986) + - [Config] CONFIG_LATENCYTOP=y for amd64 lowlatency + * Power9 kernel: add virtualization patches (LP: #1670800) + - powerpc: Add POWER9 architected mode to cputable + * h-prod does not function across cores (LP: #1670726) + - KVM: PPC: Book3S HV: Fix H_PROD to actually wake the target vcpu + * CIFS: Enable encryption for SMB3 (LP: #1670508) + - cifs: Simplify SMB2 and SMB311 dependencies + - cifs: Only select the required crypto modules + - cifs: Add soft dependencies + - CIFS: Separate SMB2 header structure + - CIFS: Make SendReceive2() takes resp iov + - CIFS: Make send_cancel take rqst as argument + - CIFS: Send RFC1001 length in a separate iov + - CIFS: Separate SMB2 sync header processing + - CIFS: Separate RFC1001 length processing for SMB2 read + - CIFS: Add capability to transform requests before sending + - CIFS: Enable encryption during session setup phase + - CIFS: Encrypt SMB3 requests before sending + - CIFS: Add transform header handling callbacks + - CIFS: Add mid handle callback + - CIFS: Add copy into pages callback for a read operation + - CIFS: Decrypt and process small encrypted packets + - CIFS: Add capability to decrypt big read responses + - CIFS: Allow to switch on encryption with seal mount option + - CIFS: Fix possible use after free in demultiplex thread + * FC Adapter (LPe32000-based) prints "iotag out of range", goes offline, and + delays boot a lot (Ubuntu17.04/Emulex/lpfc)) (LP: #1670490) + - scsi: lpfc: Correct WQ creation for pagesize + - scsi: lpfc: Add missing memory barrier + * Ubuntu 17.04: Guest does not reflect all the cpus hotplugged (LP: #1670315) + - powerpc/64: Don't try to use radix MMU under a hypervisor + - powerpc/pseries: Fixes for the "ibm,architecture-vec-5" options + - powerpc/64: Enable use of radix MMU under hypervisor on POWER9 + - powerpc/pseries: Advertise HPT resizing support via CAS + - powerpc/pseries: Advertise Hot Plug Event support to firmware + - powerpc/pseries: Report DLPAR capabilities + - powerpc/pseries: Make the acquire/release of the drc for memory a seperate step + - powerpc/pseries: Introduce memory hotplug READD operation + - powerpc/pseries: Fix build break when MEMORY_HOTREMOVE=n + - powerpc/pseries: Implement indexed-count hotplug memory add + - powerpc/pseries: Implement indexed-count hotplug memory remove + - powerpc/pseries: Revert 'Auto-online hotplugged memory' + * Allow Unity8 to run inside Virtualbox (LP: #1669807) + - ubuntu: vbox -- Update to 5.1.14-dfsg-3 + * ecryptfs fails to load block cipher on ppc64el (LP: #1666483) + - crypto: vmx - Use skcipher for cbc fallback + - crypto: vmx - Use skcipher for xts fallback + - [Config] CONFIG_CRYPTO_DEV_VMX=y + * Regression in 4.4.0-65-generic causes very frequent system crashes + (LP: #1669611) + - Revert "UBUNTU: SAUCE: apparmor: fix lock ordering for mkdir" + - Revert "UBUNTU: SAUCE: apparmor: fix leak on securityfs pin count" + - Revert "UBUNTU: SAUCE: apparmor: fix reference count leak when securityfs_setup_d_inode() fails" + - Revert "UBUNTU: SAUCE: apparmor: fix not handling error case when securityfs_pin_fs() fails" + * [ubuntu 16.10] Enable OPTPROBES for powerpc (LP: #1585741) + - powerpc/optprobes: Fix TOC handling in optprobes trampoline + * [Ubuntu 17.04] Kernel panics when large number of hugepages is passed as an + boot argument to kernel. (LP: #1665113) + - SAUCE: mm/cgroup: avoid panic when init with low memory + * bcache device numbers increase by 16 (LP: #1667078) + - SAUCE: bcache: Fix bcache device names + * [Feature] GLK Intel PT write (LP: #1645962) + - perf/x86/intel/pt: Add format strings for PTWRITE and power event tracing + * arm64: ACPI platform MSI support required for new systems (LP: #1669061) + - SAUCE: ACPI: IORT: fix the indentation in iort_scan_node() + - SAUCE: ACPI: IORT: add missing comment for iort_dev_find_its_id() + - SAUCE: ACPI: IORT: minor cleanup for iort_match_node_callback() + - SAUCE: irqchip: gic-v3-its: keep the head file include in alphabetic order + - SAUCE: irqchip: gicv3-its: platform-msi: refactor its_pmsi_prepare() + - SAUCE: irqchip: gicv3-its: platform-msi: refactor its_pmsi_init() to prepare for ACPI + - SAUCE: irqchip: gicv3-its: platform-msi: scan MADT to create platform msi domain + - SAUCE: ACPI: IORT: rename iort_node_map_rid() to make it generic + - SAUCE: ACPI: IORT: introduce iort_node_map_platform_id() to retrieve dev id + - SAUCE: ACPI: platform-msi: retrieve dev id from IORT + - SAUCE: ACPI: platform: setup MSI domain for ACPI based platform device + - SAUCE: msi: platform: make platform_msi_create_device_domain() ACPI aware + - SAUCE: irqchip: mbigen: drop module owner + - SAUCE: irqchip: mbigen: introduce mbigen_of_create_domain() + - SAUCE: irqchip: mbigen: Add ACPI support + * Miscellaneous Ubuntu changes + - [Debian] Don't attempt to sign files if CONFIG_MODULE_SIG=n + + [ Ubuntu: 4.10.0-11.13 ] + + * Release Tracking Bug + - LP: #1669127 + * linux-tools-common should Depends: lsb-release (LP: #1667571) + - [Config] linux-tools-common depends on lsb-release + * Ubuntu (Zesty): When we miss LSI/INTx interrupts on slot, message is too + imprecise (LP: #1668382) + - of/irq: improve error report on irq discovery process failure + * Zesty update to v4.10.1 stable release (LP: #1668993) + - ptr_ring: fix race conditions when resizing + - ip: fix IP_CHECKSUM handling + - net: socket: fix recvmmsg not returning error from sock_error + - tty: serial: msm: Fix module autoload + - USB: serial: mos7840: fix another NULL-deref at open + - USB: serial: cp210x: add new IDs for GE Bx50v3 boards + - USB: serial: ftdi_sio: fix modem-status error handling + - USB: serial: ftdi_sio: fix extreme low-latency setting + - USB: serial: ftdi_sio: fix line-status over-reporting + - USB: serial: spcp8x5: fix modem-status handling + - USB: serial: opticon: fix CTS retrieval at open + - USB: serial: ark3116: fix register-accessor error handling + - USB: serial: console: fix uninitialised spinlock + - x86/platform/goldfish: Prevent unconditional loading + - goldfish: Sanitize the broken interrupt handler + - netfilter: nf_ct_helper: warn when not applying default helper assignment + - ACPICA: Linuxize: Restore and fix Intel compiler build + - block: fix double-free in the failure path of cgwb_bdi_init() + - rtlwifi: rtl_usb: Fix for URB leaking when doing ifconfig up/down + - xfs: clear delalloc and cache on buffered write failure + - Linux 4.10.1 + * [UBUNTU Zesty] mlx5 - Improve OVS offload driver (LP: #1668019) + - net/sched: cls_flower: Disallow duplicate internal elements + - net/sched: cls_flower: Properly handle classifier flags dumping + - net/sched: cls_matchall: Dump the classifier flags + - net/sched: Reflect HW offload status + - net/sched: cls_flower: Reflect HW offload status + - net/sched: cls_matchall: Reflect HW offloading status + - net/sched: cls_u32: Reflect HW offload status + - net/sched: cls_bpf: Reflect HW offload status + - net/mlx5: Push min-inline mode resolution helper into the core + - IB/mlx5: Enable Eth VFs to query their min-inline value for user-space + - net/mlx5: Use exact encap header size for the FW input buffer + - net/mlx5e: Add TC offloads matching on IPv6 encapsulation headers + - net/mlx5e: TC ipv4 tunnel encap offload cosmetic changes + - net/mlx5e: Use the full tunnel key info for encapsulation offload house- keeping + - net/mlx5e: Maximize ip tunnel key usage on the TC offloading path + - net/mlx5e: Support SRIOV TC encapsulation offloads for IPv6 tunnels + - net/mlx5: E-Switch, Enlarge the FDB size for the switchdev mode + - net/mlx5: Fix static checker warnings + * [Hyper-V] Ubuntu 14.04.2 LTS Generation 2 SCSI Errors on VSS Based Backups + (LP: #1470250) + - SAUCE: Tools: hv: vss: Thaw the filesystem and continue after freeze fails + * Ubuntu17.04: Need more patches for aacraid to bring up Boston System + (LP: #1668726) + - scsi: aacraid: Remove duplicate irq management code + - scsi: aacraid: Added aacraid.h include guard + - scsi: aacraid: added support for init_struct_8 + - scsi: aacraid: Added sa firmware support + - scsi: aacraid: Retrieve and update the device types + - scsi: aacraid: Reworked scsi command submission path + - scsi: aacraid: Process Error for response I/O + - scsi: aacraid: Added support for response path + - scsi: aacraid: Added support for read medium error + - scsi: aacraid: Reworked aac_command_thread + - scsi: aacraid: Added support for periodic wellness sync + - scsi: aacraid: Retrieve Queue Depth from Adapter FW + - scsi: aacraid: Added support to set QD of attached drives + - scsi: aacraid: Added support for hotplug + - scsi: aacraid: Include HBA direct interface + - scsi: aacraid: Add task management functionality + - scsi: aacraid: Added support to abort cmd and reset lun + - scsi: aacraid: VPD 83 type3 support + - scsi: aacraid: Added new IWBR reset + - scsi: aacraid: Added ioctl to trigger IOP/IWBR reset + - scsi: aacraid: Retrieve HBA host information ioctl + - scsi: aacraid: Update copyrights + - scsi: aacraid: Change Driver Version Prefix + - scsi: aacraid: update version + - scsi: aacraid: rcode is unsigned and should be signed int + - scsi: aacraid: avoid open-coded upper_32_bits + - scsi: aacraid: Fix camel case + - scsi: aacraid: Use correct channel number for raw srb + - scsi: aacraid: Fix for excessive prints on EEH + - scsi: aacraid: Prevent E3 lockup when deleting units + - scsi: aacraid: Fix memory leak in fib init path + - scsi: aacraid: Added sysfs for driver version + - scsi: aacraid: Fix sync fibs time out on controller reset + - scsi: aacraid: Skip wellness sync on controller failure + - scsi: aacraid: Reload offlined drives after controller reset + - scsi: aacraid: Decrease adapter health check interval + - scsi: aacraid: Skip IOP reset on controller panic(SMART Family) + - scsi: aacraid: Reorder Adapter status check + - scsi: aacraid: Save adapter fib log before an IOP reset + - scsi: aacraid: Fix a potential spinlock double unlock bug + - scsi: aacraid: Update driver version + - scsi: aacraid: Fixed expander hotplug for SMART family + * Ubuntu 17.04: "Oops: Exception in kernel mode, sig: 5 [#1]" seen during + fadump over ssh on Alpine machine. (LP: #1655241) + - Revert "UBUNTU: SAUCE: powerpc/fadump: set an upper limit for boot memory size" + - SAUCE: powerpc/fadump: set an upper limit for boot memory size (V2) + * CAPI:Ubuntu: Kernel panic while rebooting (LP: #1667599) + - pci/hotplug/pnv-php: Remove WARN_ON() in pnv_php_put_slot() + - pci/hotplug/pnv-php: Disable surprise hotplug capability on conflicts + - pci/hotplug/pnv-php: Disable MSI and PCI device properly + * Nvlink2: Additional patches (LP: #1667081) + - powerpc/powernv: Initialise nest mmu + - powerpc/powernv: Use OPAL call for TCE kill on NVLink2 + - powerpc/mm: refactor radix physical page mapping + - powerpc/mm: add radix__create_section_mapping() + - powerpc/mm: add radix__remove_section_mapping() + - powerpc/mm: unstub radix__vmemmap_remove_mapping() + - [Config] Enforce CONFIG_MOVABLE_NODE=y for ppc64el + * PowerNV: No rate limit for kernel error "KVM can't copy data from" + (LP: #1667416) + - SAUCE: KVM: PPC: Book3S: Ratelimit copy data failure error messages + * Please disable unnecessary config options in the Ubuntu 17.04 kernel config + (LP: #1667490) + - [Config] Disable experimental IMA options + * POWER9: AST: Improve AST 2500 support (LP: #1667424) + - SAUCE: drm/ast: Handle configuration without P2A bridge + - SAUCE: drm/ast: const'ify mode setting tables + - SAUCE: drm/ast: Remove spurrious include + - SAUCE: drm/ast: Fix calculation of MCLK + - SAUCE: drm/ast: Base support for AST2500 + - SAUCE: drm/ast: Fixed vram size incorrect issue on POWER + - SAUCE: drm/ast: Factor mmc_test code in POST code + - SAUCE: drm/ast: Rename ast_init_dram_2300 to ast_post_chip_2300 + - SAUCE: drm/ast: POST code for the new AST2500 + - SAUCE: drm/ast: Fix test for VGA enabled + - SAUCE: drm/ast: Call open_key before enable_mmio in POST code + * POWER9: Additional patches for 17.04 and 16.04.2 (LP: #1667116) + - powerpc/mm: Update PROTFAULT handling in the page fault path + - powerpc/mm/radix: Update pte update sequence for pte clear case + - powerpc/mm/radix: Use ptep_get_and_clear_full when clearing pte for full mm + - powerpc/mm/radix: Skip ptesync in pte update helpers + - SAUCE: powerpc/mm/hash: Always clear UPRT and Host Radix bits when setting up CPU + * POWER9: Improve PMU capabilites (LP: #1667413) + - powerpc/perf: use is_kernel_addr macro in perf_get_misc_flags() + - powerpc/perf: Avoid FAB_*_MATCH checks for power9 + - powerpc/perf: Add restrictions to PMC5 in power9 DD1 + - powerpc/perf: Use Instruction Counter value + - powerpc/perf: Use PM_INST_DISP for generic instructions sample + - powerpc/perf: Add alternative event table and function for power9 + - powerpc/perf: Add PM_INST_DISP event to Power9 event list + - powerpc/perf: Factor out event_alternative function + * Miscellaneous Ubuntu changes + - [Config] CONFIG_QCOM_FALKOR_ERRATUM_1009=y + - [Config] CONFIG_QCOM_L2_PMU=y + - [Config] CONFIG_QCOM_FALKOR_ERRATUM_1003=y + - ubuntu: vbox -- Update to 5.1.14-dfsg-2 + * Miscellaneous upstream changes + - arm64: errata: Provide macro for major and minor cpu revisions + - arm64: Define Falkor v1 CPU + - arm64: Use __tlbi() macros in KVM code + - arm64: Work around Falkor erratum 1009 + - perf: add qcom l2 cache perf events driver + - arm64: arch_timer: document Hisilicon erratum 161010101 + - arm64: Work around Falkor erratum 1003 + - ACPI/IORT: Fix iort_node_get_id() mapping entries indexing + - net: qcom/emac: add ethtool support + - Revert "net: qcom/emac: configure the external phy to allow pause frames" + - net: qcom/emac: rename emac_phy to emac_sgmii and move it + - net: qcom/emac: claim the irq only when the device is opened + - net: qcom/emac: display the phy driver info after we connect + - net: qcom/emac: always use autonegotiation to configure the SGMII link + - net: qcom/emac: do not call emac_mac_start twice + - net: qcom/emac: remove extraneous wake-on-lan code + - net: qcom/emac: add an error interrupt handler for the sgmii + - net: qcom/emac: add ethool support for setting pause parameters + - net: qcom/emac: fix semicolon.cocci warnings + - net: qcom/emac: add ethtool support for reading hardware registers + - net: qcom/emac: add ethtool support for setting ring parameters + - net: qcom/emac: fix a sizeof() typo + + [ Ubuntu: 4.10.0-10.12 ] + + * Release Tracking Bug + - LP: #1666636 + * POWER9 : Enable Stop 0-2 with ESL=EC=0 (LP: #1666197) + - powernv:idle: Add IDLE_STATE_ENTER_SEQ_NORET macro + - powernv:stop: Rename pnv_arch300_idle_init to pnv_power9_idle_init + - cpuidle:powernv: Add helper function to populate powernv idle states. + - powernv: Pass PSSCR value and mask to power9_idle_stop + - Documentation:powerpc: Add device-tree bindings for power-mgt + * ecryptfs fails to load block cipher on ppc64el (LP: #1666483) + - [Config] CONFIG_CRYPTO_DEV_VMX=n + * [ubuntu 16.10] Enable OPTPROBES for powerpc (LP: #1585741) + - powerpc/bpf: Introduce __PPC_SH64() + - powerpc: Add helper to check if offset is within relative branch range + - powerpc/kprobes: Fixes for kprobe_lookup_name() on BE + - powerpc/kprobes: Implement Optprobes + - powerpc/kprobes: Optimize kprobe in kretprobe_trampoline() + * Miscellaneous Ubuntu changes + - [Config] CONFIG_QCOM_IRQ_COMBINER=y + - [Config] CONFIG_ARM_ARCH_TIMER_OOL_WORKAROUND=y + - [Config] CONFIG_HISILICON_ERRATUM_161010101=y + * Miscellaneous upstream changes + - ACPI: Generic GSI: Do not attempt to map non-GSI IRQs during bus scan + - ACPI: Add support for ResourceSource/IRQ domain mapping + - irqchip/qcom: Add IRQ combiner driver + - clocksource/drivers/arm_arch_timer: Add dt binding for hisilicon-161010101 erratum + - clocksource/drivers/arm_arch_timer: Remove fsl-a008585 parameter + - clocksource/drivers/arm_arch_timer: Introduce generic errata handling infrastructure + - clocksource/drivers/arm_arch_timer: Work around Hisilicon erratum 161010101 + - iommu/dma: Allow MSI-only cookies + - iommu: Rename iommu_dm_regions into iommu_resv_regions + - iommu: Add a new type field in iommu_resv_region + - iommu: iommu_alloc_resv_region + - iommu: Only map direct mapped regions + - iommu: iommu_get_group_resv_regions + - iommu: Implement reserved_regions iommu-group sysfs file + - iommu/vt-d: Implement reserved region get/put callbacks + - iommu/amd: Declare MSI and HT regions as reserved IOVA regions + - iommu/arm-smmu: Implement reserved region get/put callbacks + - iommu/arm-smmu-v3: Implement reserved region get/put callbacks + - irqdomain: Add irq domain MSI and MSI_REMAP flags + - genirq/msi: Set IRQ_DOMAIN_FLAG_MSI on MSI domain creation + - irqdomain: irq_domain_check_msi_remap + - irqchip/gicv3-its: Sets IRQ_DOMAIN_FLAG_MSI_REMAP + - vfio/type1: Allow transparent MSI IOVA allocation + - vfio/type1: Check MSI remapping at irq domain level + - iommu/arm-smmu: Do not advertise IOMMU_CAP_INTR_REMAP anymore + - iommu/arm-smmu-v3: Clear prior settings when updating STEs + - iommu/arm-smmu-v3: limit use of 2-level stream tables + - iommu/arm-smmu: Support for Extended Stream ID (16 bit) + - iommu/arm-smmu: Fix for ThunderX erratum #27704 + + -- Stefan Bader Thu, 27 Apr 2017 17:53:22 +0200 + +linux-azure (4.10.0-1003.3) xenial; urgency=low + + * CVE-2017-7184 + - xfrm_user: validate XFRM_MSG_NEWAE XFRMA_REPLAY_ESN_VAL replay_window + - xfrm_user: validate XFRM_MSG_NEWAE incoming ESN size harder + + * Miscellaneous Ubuntu changes + - getabis: fix source and package list + + -- Stefan Bader Fri, 24 Mar 2017 15:42:16 +0100 + +linux-azure (4.10.0-1002.2) xenial; urgency=low + + * [Hyper-V][Mellanox] net/mlx4_core: Avoid delays during VF driver device + shutdown (LP: #1672785) + - SAUCE: net/mlx4_core: Avoid delays during VF driver device shutdown + + * CIFS: Enable encryption for SMB3 (LP: #1670508) + - cifs: Simplify SMB2 and SMB311 dependencies + - cifs: Only select the required crypto modules + - cifs: Add soft dependencies + - CIFS: Separate SMB2 header structure + - CIFS: Make SendReceive2() takes resp iov + - CIFS: Make send_cancel take rqst as argument + - CIFS: Send RFC1001 length in a separate iov + - CIFS: Separate SMB2 sync header processing + - CIFS: Separate RFC1001 length processing for SMB2 read + - CIFS: Add capability to transform requests before sending + - CIFS: Enable encryption during session setup phase + - CIFS: Encrypt SMB3 requests before sending + - CIFS: Add transform header handling callbacks + - CIFS: Add mid handle callback + - CIFS: Add copy into pages callback for a read operation + - CIFS: Decrypt and process small encrypted packets + - CIFS: Add capability to decrypt big read responses + - CIFS: Allow to switch on encryption with seal mount option + - CIFS: Fix possible use after free in demultiplex thread + + * [Hyper-V] pci-hyperv: Use device serial number as PCI domain (LP: #1667527) + - net/mlx4_core: Use cq quota in SRIOV when creating completion EQs + - PCI: hv: Use device serial number as PCI domain + + * linux-azure: disable unused hypervisors and misc configs (LP: #1671203) + - [config] azure: disable CONFIG_KVM + - [config] azure: disable VMware drivers + - [config] azure: disable VIRTIO drivers + - [config] azure: disable USB + - [config] azure: disable CONFIG_EFI + - [config] azure: limit elevator to noop + - [config] azure: disable CONFIG_ACPI_HOTPLUG_MEMORY + - [config] azure: disable CONFIG_NET_FC + - [config] azure: disable CONFIG_LIBFC + + -- Marcelo Henrique Cerri Thu, 16 Mar 2017 12:28:53 -0300 + +linux-azure (4.10.0-1001.1) xenial; urgency=low + + * [Hyper-V] SAUCE: pci-hyperv fixes for SR-IOV on Azure (LP: #1665097) + - SAUCE: pci-hyperv: properly handle pci bus remove + - SAUCE: pci-hyperv: lock pci bus on device eject + - SAUCE: PCI: hv: Fix wslot_to_devfn() to fix warnings on device removal + + * Miscellaneous Ubuntu changes + - linux-azure packaging + - [config] azure: ship_extras_package=false + - SAUCE: Increase the ext4 default commit age + - [config] disable CONFIG_POWERCAP as azure does not make use of this + - [config] disable CONFIG_FUJITSU_ES driver, it is not used by azure + - [config] Disable CONFIG_INPUT_LEDS for azure + - [config] Disable ATA drivers that azure does not use + - [config] azure: Disable x86 platform drivers where appropriate + - [config] disable sound for azure + - [config] azure: disable unnecessary ACPI features + - [config] azure: Disable joystick drivers + - [config] azure: Disable touchscreen drivers + - [config] azure: disable CONFIG_MEDIA_RADIO_SUPPORT + - [config] azure: Disable Blue Tooth support + - [config] azure: disable CONFIG_MEDIA_CAMERA_SUPPORT + - [config] azure: disable MEDIA_ANALOG_TV_SUPPORT + - [config] azure: disable MEDIA_DIGITAL_TV_SUPPORT + - [config] azure: disable MEDIA_RC_SUPPORT + - [config] azure: disable MEDIA_SDR_SUPPORT + - [config] azure: disable MEDIA_PCI_SUPPORT + - [config] azure disable CONFIG_SPEAKUP synth + - [config] azure: disable LED support + - [config] azure: disable comedi data acquisition support + - [config] azure: disable charger configs + - [config] azure: disable firewire + - [config] azure: disable gameport + - [config] azure: disable CONFIG_MOUSE + - [config] azure: disable CONFIG_ISDN + - [config] azure: disable various misc LCD drivers + - [config] azure disable CONFIG_MACINTOSH_DRIVERS + - [config] azure: disable CONFIG_PCMCIA + - [config] azure: disable misc backlight drivers + - [config] disable CONFIG_MTD for azure + - [config] azure: disable some battery drivers + - [config] azure: disable WLAN wireless + - [config] azure: disable WIMAX support + - [config] azure: disable Dallas 1 wire support + - [config] azure: disable Ultra Wideband devices + - [config] azure disable FPGA support + - [Config] azure: Move some drivers to the main kernel package + - [config] azure: disable CONFIG_MMC + - [config] azure: disable CONFIG_THUNDERBOLT + - [config] azure: disable CONFIG_FMC (FPGA Mezzanine Carrier) + - [config] azure: disable Chrome OS support + - [config] azure: disable CONFIG_XEN + - [config] azure: disable CONFIG_AUXDISPLAY + - [config] azure: disable CONFIG_MEMSTICK + - [config] azure: disable additional ACPI configs + - [config] azure: disable some ADC/DAC drivers + - [config] azure: disable some block devices + - [config] azure: disable some ambient light drivers + - [config] azure: disable some graphic drivers + - [config] azure: disable some HID drivers + - [config] azure: disable CONFIG_NET_VENDOR_* + + -- Brad Figg Mon, 27 Feb 2017 12:33:00 -0800 + +linux-azure (4.10.0-1000.0) xenial; urgency=low + + [ Marcelo Henrique Cerri ] + + * empty entry + + -- Marcelo Henrique Cerri Tue, 14 Feb 2017 15:04:42 -0200 + +linux (4.10.0-8.10) zesty; urgency=low + + [ Tim Gardner ] + + * Release Tracking Bug + - LP: #1664217 + + * [Hyper-V] Bug fixes for storvsc (tagged queuing, error conditions) + (LP: #1663687) + - scsi: storvsc: Enable tracking of queue depth + - scsi: storvsc: Remove the restriction on max segment size + - scsi: storvsc: Enable multi-queue support + - scsi: storvsc: use tagged SRB requests if supported by the device + - scsi: storvsc: properly handle SRB_ERROR when sense message is present + - scsi: storvsc: properly set residual data length on errors + + * Ubuntu16.10-KVM:Big configuration with multiple guests running SRIOV VFs + caused KVM host hung and all KVM guests down. (LP: #1651248) + - KVM: PPC: Book 3S: XICS cleanup: remove XICS_RM_REJECT + - KVM: PPC: Book 3S: XICS: correct the real mode ICP rejecting counter + - KVM: PPC: Book 3S: XICS: Fix potential issue with duplicate IRQ resends + - KVM: PPC: Book 3S: XICS: Implement ICS P/Q states + - KVM: PPC: Book 3S: XICS: Don't lock twice when checking for resend + + * overlay: mkdir fails if directory exists in lowerdir in a user namespace + (LP: #1531747) + - SAUCE: overlayfs: Skip permission checking for trusted.overlayfs.* xattrs + + * CVE-2016-1575 (LP: #1534961) + - SAUCE: overlayfs: Skip permission checking for trusted.overlayfs.* xattrs + + * CVE-2016-1576 (LP: #1535150) + - SAUCE: overlayfs: Skip permission checking for trusted.overlayfs.* xattrs + + * Miscellaneous Ubuntu changes + - SAUCE: md/raid6 algorithms: scale test duration for speedier boots + - SAUCE: Import aufs driver + - d-i: Build message-modules udeb for arm64 + - rebase to v4.10-rc8 + + * Miscellaneous upstream changes + - Revert "UBUNTU: SAUCE: aufs -- remove .readlink assignment" + - Revert "UBUNTU: SAUCE: (no-up) aufs: for v4.9-rc1, support setattr_prepare()" + - Revert "UBUNTU: SAUCE: aufs -- Add flags argument to aufs_rename()" + - Revert "UBUNTU: SAUCE: aufs -- Convert to use xattr handlers" + - Revert "UBUNTU: SAUCE: Import aufs driver" + + [ Upstream Kernel Changes ] + + * rebase to v4.10-rc8 + + -- Tim Gardner Mon, 06 Feb 2017 08:34:24 -0700 + +linux (4.10.0-7.9) zesty; urgency=low + + [ Tim Gardner ] + + * Release Tracking Bug + - LP: #1662201 + + * AMDGPU support for CIK parts in kernel config? (LP: #1661887) + - [Config] CONFIG_DRM_AMDGPU_CIK=y + + * regession tests failing after stackprofile test is run (LP: #1661030) + - fix regression with domain change in complain mode + + * Permission denied and inconsistent behavior in complain mode with 'ip netns + list' command (LP: #1648903) + - fix regression with domain change in complain mode + + * flock not mediated by 'k' (LP: #1658219) + - SAUCE: apparmor: flock mediation is not being enforced on cache check + + * unexpected errno=13 and disconnected path when trying to open /proc/1/ns/mnt + from a unshared mount namespace (LP: #1656121) + - SAUCE: apparmor: null profiles should inherit parent control flags + + * apparmor refcount leak of profile namespace when removing profiles + (LP: #1660849) + - SAUCE: apparmor: fix ns ref count link when removing profiles from policy + + * tor in lxd: apparmor="DENIED" operation="change_onexec" + namespace="root//CONTAINERNAME_" profile="unconfined" + name="system_tor" (LP: #1648143) + - SAUCE: apparmor: Fix no_new_privs blocking change_onexec when using stacked + namespaces + + * apparmor_parser hangs indefinitely when called by multiple threads + (LP: #1645037) + - SAUCE: apparmor: fix lock ordering for mkdir + + * apparmor leaking securityfs pin count (LP: #1660846) + - SAUCE: apparmor: fix leak on securityfs pin count + + * apparmor reference count leak when securityfs_setup_d_inode\ () fails + (LP: #1660845) + - SAUCE: apparmor: fix reference count leak when securityfs_setup_d_inode() + fails + + * apparmor not checking error if security_pin_fs() fails (LP: #1660842) + - SAUCE: apparmor: fix not handling error case when securityfs_pin_fs() fails + + * apparmor oops in bind_mnt when dev_path lookup fails (LP: #1660840) + - SAUCE: apparmor: fix oops in bind_mnt when dev_path lookup fails + + * apparmor auditing denied access of special apparmor .null fi\ le + (LP: #1660836) + - SAUCE: apparmor: Don't audit denied access of special apparmor .null file + + * apparmor label leak when new label is unused (LP: #1660834) + - SAUCE: apparmor: fix label leak when new label is unused + + * apparmor reference count bug in label_merge_insert() (LP: #1660833) + - SAUCE: apparmor: fix reference count bug in label_merge_insert() + + * apparmor's raw_data file in securityfs is sometimes truncated (LP: #1638996) + - SAUCE: apparmor: fix replacement race in reading rawdata + + * unix domain socket cross permission check failing with nested namespaces + (LP: #1660832) + - SAUCE: apparmor: fix cross ns perm of unix domain sockets + + * Regression tests can not detect binfmt_elf mmpa semantic change + (LP: #1630069) + - SAUCE: apparmor: add flag to detect semantic change, to binfmt_elf mmap + + * Support snaps inside of lxd containers (LP: #1611078) + - apparmor: add interface to be able to grab loaded policy + - apparmor: refactor aa_prepare_ns into prepare_ns and create_ns routines + - apparmor: add __aa_find_ns fn + - apparmor: add mkdir/rmdir interface to manage policy namespaces + - apparmor: fix oops in pivot_root mediation + - apparmor: fix warning that fn build_pivotroot discards const + - apparmor: add interface to advertise status of current task stacking + - apparmor: update policy permissions to consider ns being viewed/managed + - apparmor: add per ns policy management interface + - apparmor: bump domain stacking version to 1.2 + + * change_hat is logging failures during expected hat probing (LP: #1615893) + - SAUCE: apparmor: Fix auditing behavior for change_hat probing + + * deleted files outside of the namespace are not being treated as disconnected + (LP: #1615892) + - SAUCE: apparmor: deleted dentries can be disconnected + + * stacking to unconfined in a child namespace confuses mediation + (LP: #1615890) + - SAUCE: apparmor: special case unconfined when determining the mode + + * apparmor module parameters can be changed after the policy is locked + (LP: #1615895) + - SAUCE: apparmor: fix: parameters can be changed after policy is locked + + * AppArmor profile reloading causes an intermittent kernel BUG (LP: #1579135) + - SAUCE: apparmor: fix vec_unique for vectors larger than 8 + + * label vec reductions can result in reference labels instead of direct access + to labels (LP: #1615889) + - SAUCE: apparmor: reduction of vec to single entry is just that entry + + * profiles from different namespaces can block other namespaces from being + able to load a profile (LP: #1615887) + - SAUCE: apparmor: profiles in one ns can affect mediation in another ns + + * The label build for onexec when stacking is wrong (LP: #1615881) + - SAUCE: apparmor: Fix label build for onexec stacking. + + * The inherit check for new to old label comparison for domain transitions is + wrong (LP: #1615880) + - SAUCE: apparmor: Fix new to old label comparison for domain transitions + + * warning stack trace while playing with apparmor namespaces (LP: #1593874) + - SAUCE: apparmor: fix stack trace when removing namespace with profiles + + * __label_update proxy comparison test is wrong (LP: #1615878) + - SAUCE: apparmor: Fix __label_update proxy comparison test + + * reading /sys/kernel/security/apparmor/profiles requires CAP_MAC_ADMIN + (LP: #1560583) + - SAUCE: apparmor: Allow ns_root processes to open profiles file + - SAUCE: apparmor: Consult sysctl when reading profiles in a user ns + + * policy namespace stacking (LP: #1379535) + - SAUCE: (no-up) apparmor: rebase of apparmor3.5-beta1 snapshot for 4.8 + - SAUCE: add a sysctl to enable unprivileged user ns AppArmor policy loading + + * brd module compiled as built-in (LP: #1593293) + - [Config] CONFIG_BLK_DEV_RAM=m + + * Miscellaneous Ubuntu changes + - SAUCE: apparmor: Fix FTBFS due to bad include path + - SAUCE: apparmor: add data query support + - rebase to v4.10-rc7 + + * Miscellaneous upstream changes + - fixup backout policy view capable for forward port + - apparmor: fix: Rework the iter loop for label_update + - apparmor: add more assertions for updates/merges to help catch errors + - apparmor: Make pivot root transitions work with stacking + - apparmor: convert delegating deleted files to mediate deleted files + - apparmor: add missing parens. not a bug fix but highly recommended + - apparmor: add a stack_version file to allow detection of bug fixes + - apparmor: push path lookup into mediation loop + - apparmor: default to allowing unprivileged userns policy + - apparmor: fix: permissions test to view and manage policy + - apparmor: Add Basic ns cross check condition for ipc + + [ Upstream Kernel Changes ] + + * rebase to v4.10-rc7 + + -- Tim Gardner Thu, 02 Feb 2017 10:48:30 -0700 + +linux (4.10.0-6.8) zesty; urgency=low + + [ Tim Gardner ] + + * Release Tracking Bug + - LP: #1661300 + + * flock not mediated by 'k' (LP: #1658219) + - SAUCE: apparmor: flock mediation is not being enforced on cache check + + * unexpected errno=13 and disconnected path when trying to open /proc/1/ns/mnt + from a unshared mount namespace (LP: #1656121) + - SAUCE: apparmor: null profiles should inherit parent control flags + + * apparmor refcount leak of profile namespace when removing profiles + (LP: #1660849) + - SAUCE: apparmor: fix ns ref count link when removing profiles from policy + + * tor in lxd: apparmor="DENIED" operation="change_onexec" + namespace="root//CONTAINERNAME_" profile="unconfined" + name="system_tor" (LP: #1648143) + - SAUCE: apparmor: Fix no_new_privs blocking change_onexec when using stacked + namespaces + + * apparmor_parser hangs indefinitely when called by multiple threads + (LP: #1645037) + - SAUCE: apparmor: fix lock ordering for mkdir + + * apparmor leaking securityfs pin count (LP: #1660846) + - SAUCE: apparmor: fix leak on securityfs pin count + + * apparmor reference count leak when securityfs_setup_d_inode\ () fails + (LP: #1660845) + - SAUCE: apparmor: fix reference count leak when securityfs_setup_d_inode() + fails + + * apparmor not checking error if security_pin_fs() fails (LP: #1660842) + - SAUCE: apparmor: fix not handling error case when securityfs_pin_fs() fails + + * apparmor oops in bind_mnt when dev_path lookup fails (LP: #1660840) + - SAUCE: apparmor: fix oops in bind_mnt when dev_path lookup fails + + * apparmor auditing denied access of special apparmor .null fi\ le + (LP: #1660836) + - SAUCE: apparmor: Don't audit denied access of special apparmor .null file + + * apparmor label leak when new label is unused (LP: #1660834) + - SAUCE: apparmor: fix label leak when new label is unused + + * apparmor reference count bug in label_merge_insert() (LP: #1660833) + - SAUCE: apparmor: fix reference count bug in label_merge_insert() + + * apparmor's raw_data file in securityfs is sometimes truncated (LP: #1638996) + - SAUCE: apparmor: fix replacement race in reading rawdata + + * unix domain socket cross permission check failing with nested namespaces + (LP: #1660832) + - SAUCE: apparmor: fix cross ns perm of unix domain sockets + + * Kdump through NMI SMP and single core not working on Ubuntu16.10 + (LP: #1630924) + - hv: don't reset hv_context.tsc_page on crash + + * [17.04 FEAT] Integrate kernel message catalogue for s390x into Ubuntu + distribution (LP: #1628889) + - SAUCE: s390: kernel message catalog + + * Miscellaneous Ubuntu changes + - [Config] Drop powerpc ABI files + + -- Tim Gardner Wed, 01 Feb 2017 15:21:35 -0700 + +linux (4.10.0-5.7) zesty; urgency=low + + * [regression 4.8.0-14 -> 4.8.0-17] keyboard and touchscreen lost on Acer + Chromebook R11 (LP: #1630238) + - [Config] CONFIG_TOUCHSCREEN_ELAN=y,CONFIG_PINCTRL_CHERRYVIEW=y for amd64 + + * Enable CONFIG_NET_DROP_MONITOR=m in Ubuntu Kernel (LP: #1660634) + - [Config] Update annotations for CONFIG_NET_DROP_MONITOR + + * Miscellaneous Ubuntu changes + - d-i: initrd needs msm_emac on amberwing platform. + - [Config] Remove powerpc architecture builds + - [Config] updateconfigs after removing powerpc configs + - [Config] Update annotations after removing powerpc configs + - SAUCE: Disable timers selftest for now + - Rebase to v4.10-rc6 + - SAUCE: (no-up) Update zfs to 0.6.5.8-0ubuntu9 + - Enable zfs build + - [Config] CONFIG_NET_DROP_MONITOR=m + + [ Upstream Kernel Changes ] + + * rebase to v4.10-rc6 + + -- Seth Forshee Wed, 01 Feb 2017 12:26:09 -0600 + +linux (4.10.0-4.6) zesty; urgency=low + + * Miscellaneous upstream changes + - Revert "UBUNTU: Disable all flavors for the powerpc architecture" + + -- Seth Forshee Tue, 24 Jan 2017 07:13:15 -0600 + +linux (4.10.0-3.5) zesty; urgency=low + + * KVM module handling different per Architecture - ppc64el (LP: #1657734) + - [Config] powerpc: Add kvm-hv and kvm-pr to the generic inclusion list + + * ENA network driver moved to -extra (LP: #1657767) + - [Config] Move Amazon ENA network driver to the main kernel package + + * [Hyper-V] mkfs regression in 4.10 fixed by patch in "for-4.11" + (LP: #1657539) + - block: relax check on sg gap + + * i915 module requests unreleased GUC firmware files (LP: #1626740) + - SAUCE: (no-up) i915: Remove MODULE_FIRMWARE statements for unreleased + firmware + + * [17.04 FEAT] Integrate kernel message catalogue for s390x into Ubuntu + distribution (LP: #1628889) + - [Config] CONFIG_KMSG_IDS=y for s390 + - SAUCE: s390 Kernel message catalog + + * Miscellaneous Ubuntu changes + - ubuntu: vbox -- Update to 5.1.14-dfsg-1 + - SAUCE: vbox -- remove .readlink assignment + - Enable vbox build + - [Config] CONFIG_DEFAULT_IOSCHED=cfq + - [Config] Bump CONFIG_NR_CPUS up to 256 on arm64 + - [Config] Fix up s390x config options changed during 4.10 rebase + - [Config] Update annotations for 4.10 + - Disable all flavors for the powerpc architecture + + [ Upstream Kernel Changes ] + + * rebase to v4.10-rc5 + + -- Seth Forshee Mon, 23 Jan 2017 15:48:35 -0600 + +linux (4.10.0-2.4) zesty; urgency=low + + * Move some kernel modules to the main kernel package (part 2) (LP: #1655002) + - [Config] Add IBM power drivers to the inclusion list + + * Miscellaneous Ubuntu changes + - [Config] linux-source Provides should not be a macro + - [Config] Correct the note URL for LATENCYTOP + - rebase to v4.10-rc4 + + [ Upstream Kernel Changes ] + + * rebase to v4.10-rc4 + + -- Tim Gardner Wed, 11 Jan 2017 07:17:34 -0700 + +linux (4.10.0-1.3) zesty; urgency=low + + [ Upstream Kernel Changes ] + + * rebase to v4.10-rc3 + + -- Seth Forshee Mon, 09 Jan 2017 11:41:13 -0600 + +linux (4.10.0-0.2) zesty; urgency=low + + * [17.04 FEAT] Build IMA and the TPM device drivers into the KVM on POWER + host/NV kernel (LP: #1643652) + - [Config] Update and enforce IMA options + + * Miscellaneous Ubuntu changes + - [Config] Disble stack protector for powerpc-smp + + -- Seth Forshee Sat, 07 Jan 2017 19:07:55 -0600 + +linux (4.10.0-0.1) zesty; urgency=low + + * IP-over-DDP packets dropped (LP: #1559772) + - [Config] CONFIG_IPDDP=n + + * Miscellaneous Ubuntu changes + - [Config] Update annotations with recent config changes + - SAUCE: aufs -- remove .readlink assignment + - disable vbox build + - disable ZFS build + + [ Upstream Kernel Changes ] + + * rebase to v4.10-rc2 + + -- Seth Forshee Fri, 06 Jan 2017 07:55:57 -0600 + +linux (4.9.0-11.12) zesty; urgency=low + + * Miscellaneous Ubuntu changes + - UBUNTU: SAUCE: Add '-fno-pie -no-pie' to cflags for x86 selftests + - UBUNTU: SAUCE: (no-up) aufs: for v4.9-rc1, support setattr_prepare() + + [ Upstream Kernel Changes ] + + * rebase to v4.9 + + -- Tim Gardner Mon, 12 Dec 2016 06:40:40 -0700 + +linux (4.9.0-10.11) zesty; urgency=low + + * d-i is missing usb support for platforms that use the xhci-platform driver + (LP: #1625222) + - d-i initrd needs additional usb modules to support the merlin platform + + * Miscellaneous Ubuntu changes + - SAUCE: Import aufs driver + - SAUCE: aufs -- Convert to use xattr handlers + - SAUCE: aufs -- Add flags argument to aufs_rename() + - [Config] Enable aufs + - [Config] CONFIG_FSL_FMAN=y for powerpc + - SAUCE: powerpc64: Fix legacy cmpi mneomonic assumption + - [Config] Restore powerpc64-emb + + -- Tim Gardner Thu, 08 Dec 2016 20:38:12 -0700 + +linux (4.9.0-9.10) zesty; urgency=low + + * Kernel Fixes to get TCMU File Backed Optical to work (LP: #1646204) + - SAUCE: target/user: Fix use-after-free of tcmu_cmds if they are expired + + * Yakkety: arm64: CONFIG_ARM64_ERRATUM_845719 isn't enabled (LP: #1647793) + - [Config] CONFIG_ARM64_ERRATUM_845719=y + + * Update hio driver to 2.1.0.28 (LP: #1646643) + - SAUCE: hio: update to Huawei ES3000_V2 (2.1.0.28) + + * Miscellaneous Ubuntu changes + - ubuntu: vbox -- Update to 5.1.10-dfsg-2 + - Build vbox for ARCH=x86 + - SAUCE: Add aufs driver + - SAUCE: aufs -- Convert to use xattr handlers + - SAUCE: aufs -- Updates for rename2 + - SAUCE: Export symbols used by aufs + - [Config] Enable aufs + + -- Tim Gardner Mon, 05 Dec 2016 13:02:18 -0700 + +linux (4.9.0-8.9) zesty; urgency=low + + * Miscellaneous Ubuntu changes + - SAUCE: xr-usb-serial: only build for x86 + Fixes s390x FTBS + + -- Tim Gardner Mon, 05 Dec 2016 12:35:33 -0700 + +linux (4.9.0-7.8) zesty; urgency=low + + * Driver for Exar USB UART (LP: #1645591) + - SAUCE: xr-usb-serial: Driver for Exar USB serial ports + - SAUCE: xr-usb-serial: interface for switching modes + - SAUCE: cdc-acm: Exclude Exar USB serial ports + + [ Upstream Kernel Changes ] + + * rebase to v4.9-rc8 + + -- Tim Gardner Mon, 05 Dec 2016 07:41:58 -0700 + +linux (4.9.0-6.7) zesty; urgency=low + + * Miscellaneous Ubuntu changes + - Set build_arch=x86 for i386 + + -- Tim Gardner Thu, 01 Dec 2016 21:00:11 -0700 + +linux (4.9.0-5.6) zesty; urgency=low + + * Miscellaneous Ubuntu changes + - [Debian] restore tools build + - Set build_arch=x86 for amd64 and x32 + + -- Tim Gardner Thu, 01 Dec 2016 07:06:20 -0700 + +linux (4.9.0-4.5) zesty; urgency=low + + * linux: Staging modules should be unsigned (LP: #1642368) + - [Debian] Suppress module signing for staging drivers + - SAUCE: Add rtl drivers to signature inclusion list + + * [17.04 FEAT] Build IMA and the TPM device drivers into the KVM on POWER + host/NV kernel (LP: #1643652) + - [Config] CONFIG_IMA=y + + * Miscellaneous Ubuntu changes + - [Debian] config-check -- Make it easier to find annotations syntax errors + - [Config] Enable various drivers for ARM platforms + - [Config] Fix s390x config carnage + - [Config] Set CONFIG_KEXEC=y for all architectures + - [Config] Fix up CONFIG_I2C_SLAVE values + - [Config] Set CONFIG_WLAN_VENDOR_TI=y for all supported kernels + - [Config] Set CONFIG_PWM_PCA9685=m for amd64 and i386 + - [Config] Set CONFIG_ZONE_DMA=m for amd64-generic + - [Config] Update annotations + - [Config] CONFIG_NR_CPUS=8192 for amd64 + + -- Tim Gardner Mon, 28 Nov 2016 12:57:09 -0700 + +linux (4.9.0-3.4) zesty; urgency=low + + * Miscellaneous Ubuntu changes + - SAUCE: (namespace) security/integrity: Harden against malformed xattrs + - SAUCE: (namespace) block_dev: Support checking inode permissions in lookup_bdev() + - SAUCE: (namespace) block_dev: Check permissions towards block device inode when mounting + - SAUCE: (namespace) mtd: Check permissions towards mtd block device inode when mounting + - SAUCE: (namespace) fs: Allow superblock owner to change ownership of inodes + - SAUCE: (namespace) fs: Don't remove suid for CAP_FSETID for userns root + - SAUCE: (namespace) fs: Allow superblock owner to access do_remount_sb() + - SAUCE: (namespace) capabilities: Allow privileged user in s_user_ns to set security.* xattrs + - SAUCE: (namespace) fs: Allow CAP_SYS_ADMIN in s_user_ns to freeze and thaw filesystems + - SAUCE: (namespace) posix_acl: Export posix_acl_fix_xattr_userns() to modules + - SAUCE: (namespace) fuse: Add support for pid namespaces + - SAUCE: (namespace) fuse: Support fuse filesystems outside of init_user_ns + - SAUCE: (namespace) fuse: Translate ids in posix acl xattrs + - SAUCE: (namespace) fuse: Restrict allow_other to the superblock's namespace or a descendant + - SAUCE: (namespace) fuse: Allow user namespace mounts + - SAUCE: (namespace) ext4: Add support for unprivileged mounts from user namespaces + - SAUCE: (namespace) ext4: Add module parameter to enable user namespace mounts + - SAUCE: (namespace) block_dev: Forbid unprivileged mounting when device is opened for writing + - SAUCE: (noup) Update spl to 0.6.5.8-0ubuntu7, zfs to 0.6.5.8-2ubuntu1 + + * Miscellaneous upstream changes + - Revert "UBUNTU: SAUCE: overlayfs: Skip permission checking for trusted.overlayfs.* xattrs" + + [ Upstream Kernel Changes ] + + * rebase to v4.9-rc7 + + -- Tim Gardner Tue, 22 Nov 2016 07:51:48 -0700 + +linux (4.9.0-2.3) zesty; urgency=low + + * Fix Kernel Crashing under IBM Virtual Scsi Driver (LP: #1642299) + - SAUCE: ibmvscsis: Rearrange functions for future patches + - SAUCE: ibmvscsis: Synchronize cmds at tpg_enable_store time + - SAUCE: ibmvscsis: Synchronize cmds at remove time + - SAUCE: ibmvscsis: Clean up properly if target_submit_cmd/tmr fails + - SAUCE: ibmvscsis: Return correct partition name/# to client + - SAUCE: ibmvscsis: Issues from Dan Carpenter/Smatch + + * Move some kernel modules to the main kernel package (LP: #1642228) + - [Config] Move some powerpc kernel modules to the main kernel package + + * linux: Staging modules should be unsigned (LP: #1642368) + - [Debian] Suppress module signing for staging drivers + + * Miscellaneous Ubuntu changes + - SAUCE: UEFI: bpf: disable bpf when module security is enabled + + [ Upstream Kernel Changes ] + + * rebase to v4.9-rc6 + + -- Tim Gardner Tue, 15 Nov 2016 10:59:54 -0700 + +linux (4.9.0-1.2) zesty; urgency=low + + * hio: SSD data corruption under stress test (LP: #1638700) + - SAUCE: hio: set bi_error field to signal an I/O error on a BIO + - SAUCE: hio: splitting bio in the entry of .make_request_fn + + * hio Ubuntu sauce driver needs porting to 4.8 (LP: #1635594) + - SAUCE: import Huawei ES3000_V2 (2.1.0.23) + - SAUCE: hio: bio_endio() no longer takes errors arg + - SAUCE: hio: blk_queue make_request_fn now returns a blk_qc_t + - SAUCE: hio: use alloc_cpumask_var to avoid -Wframe-larger-than + - SAUCE: hio: fix mask maybe-uninitialized warning + - SAUCE: hio: port to v4.8 base + - [config] enable CONFIG_HIO (Huawei ES3000_V2 PCIe SSD driver) + - SAUCE: hio: Makefile and Kconfig + - [Config] Enforce CONFIG_HIO + + * Miscellaneous Ubuntu changes + - rebase to v4.9-rc5 + - zfs: remove the never implemented aio_fsync file operation + - [Config] Disable powerpc64-emb for FTBS + + [ Upstream Kernel Changes ] + + * rebase to v4.9-rc5 + + -- Tim Gardner Tue, 08 Nov 2016 08:02:32 -0700 + +linux (4.9.0-0.1) zesty; urgency=low + + [ Upstream Kernel Changes ] + + * rebase to v4.9-rc4 + - LP: #1465724 + - LP: #1535802 + + -- Tim Gardner Sun, 16 Oct 2016 21:46:31 -0600 + +linux (4.9.0-0.0) yakkety; urgency=low + + [ Seth Forshee ] + + * Release Tracking Bug + - LP: #1632918 + + * Revert "If zone is so small that watermarks are the same, stop zone balance" + in yakkety (LP: #1632894) + - Revert "UBUNTU: SAUCE: (no-up) If zone is so small that watermarks are the + same, stop zone balance." + + -- Seth Forshee Wed, 12 Oct 2016 21:57:07 -0500 + +linux (4.8.0-24.26) yakkety; urgency=low + + [ Seth Forshee ] + + * Release Tracking Bug + - LP: #1632749 + + * lts-yakkety 4.8 cannot mount lvm raid1 (LP: #1631298) + - SAUCE: (no-up) dm raid: fix compat_features validation + + * kswapd0 100% CPU usage (LP: #1518457) + - SAUCE: (no-up) If zone is so small that watermarks are the same, stop zone + balance. + + -- Seth Forshee Wed, 12 Oct 2016 10:21:44 -0500 + +linux (4.8.0-23.25) yakkety; urgency=low + + [ Seth Forshee ] + + * Release Tracking Bug + - LP: #1632484 + + * [Trusty->Yakkety] powerpc/64: Fix incorrect return value from + __copy_tofrom_user (LP: #1632462) + - SAUCE: (no-up) powerpc/64: Fix incorrect return value from + __copy_tofrom_user + + * Ubuntu 16.10: Oops panic in move_page_tables/page_remove_rmap after running + memory_stress_ng. (LP: #1628976) + - SAUCE: (no-up) powerpc/pseries: Fix stack corruption in htpe code + + * Paths not failed properly when unmapping virtual FC ports in VIOS (using + ibmvfc) (LP: #1632116) + - scsi: ibmvfc: Fix I/O hang when port is not mapped + + * [Ubuntu16.10]KV4.8: kernel livepatch config options are not set + (LP: #1626983) + - [Config] Enable live patching on powerpc/ppc64el + + * CONFIG_AUFS_XATTR is not set (LP: #1557776) + - [Config] CONFIG_AUFS_XATTR=y + + * Yakkety update to 4.8.1 stable release (LP: #1632445) + - arm64: debug: avoid resetting stepping state machine when TIF_SINGLESTEP + - Using BUG_ON() as an assert() is _never_ acceptable + - usb: misc: legousbtower: Fix NULL pointer deference + - Staging: fbtft: Fix bug in fbtft-core + - usb: usbip: vudc: fix left shift overflow + - USB: serial: cp210x: Add ID for a Juniper console + - Revert "usbtmc: convert to devm_kzalloc" + - ALSA: hda - Adding one more ALC255 pin definition for headset problem + - ALSA: hda - Fix headset mic detection problem for several Dell laptops + - ALSA: hda - Add the top speaker pin config for HP Spectre x360 + - Linux 4.8.1 + + * PSL data cache should be flushed before resetting CAPI adapter + (LP: #1632049) + - cxl: Flush PSL cache before resetting the adapter + + * thunder nic: avoid link delays due to RX_PACKET_DIS (LP: #1630038) + - net: thunderx: Don't set RX_PACKET_DIS while initializing + + * crypto/vmx/p8_ghash memory corruption (LP: #1630970) + - crypto: ghash-generic - move common definitions to a new header file + - crypto: vmx - Fix memory corruption caused by p8_ghash + - crypto: vmx - Ensure ghash-generic is enabled + + * arm64: SPCR console not autodetected (LP: #1630311) + - of/serial: move earlycon early_param handling to serial + - [Config] CONFIG_ACPI_SPCR_TABLE=y + - ACPI: parse SPCR and enable matching console + - ARM64: ACPI: enable ACPI_SPCR_TABLE + - serial: pl011: add console matching function + + * include/linux/security.h header syntax error with !CONFIG_SECURITYFS + (LP: #1630990) + - SAUCE: (no-up) include/linux/security.h -- fix syntax error with + CONFIG_SECURITYFS=n + + * sha1-powerpc returning wrong results (LP: #1629977) + - crypto: sha1-powerpc - little-endian support + + -- Seth Forshee Tue, 11 Oct 2016 16:38:45 -0500 + +linux (4.8.0-22.24) yakkety; urgency=low + + * CVE-2016-7039 (LP: #1631287) + - SAUCE: net: add recursion limit to GRO + + -- Andy Whitcroft Fri, 07 Oct 2016 22:46:28 +0100 + +linux (4.8.0-21.23) yakkety; urgency=low + + [ Tim Gardner ] + + * Release Tracking Bug + - LP: #1630279 + + * powerpc 4.8.0-17 fails to boot on PowerMac G5 (LP: #1628968) + - Revert "Revert "powerpc: Simplify module TOC handling"" + + * Regression tests can not detect binfmt_elf mmpa semantic change + (LP: #1630069) + - SAUCE: apparmor: add flag to detect semantic change, to binfmt_elf mmap + + * Autofs parameter substitution broken in kernel 4.4.0-38 and 4.4.0-40 + (LP: #1629204) + - SAUCE: (namespace) autofs4: Use real_cred for requestor's ids + + -- Tim Gardner Tue, 04 Oct 2016 08:01:21 -0600 + +linux (4.8.0-20.22) yakkety; urgency=low + + [ Tim Gardner ] + + * Release Tracking Bug + - LP: #1629730 + + [ Upstream Kernel Changes ] + + * rebase to v4.8 + + -- Tim Gardner Sun, 02 Oct 2016 19:10:40 -0600 + +linux (4.8.0-19.21) yakkety; urgency=low + + [ Tim Gardner ] + + * Release Tracking Bug + - LP: #1629057 + + * 4.8.0 kernels do not complete boot process on VM (LP: #1627198) + - [Config] CONFIG_HARDENED_USERCOPY_PAGESPAN=n + + * mount-image-callback cannot mount partitioned disk image (LP: #1628336) + - SAUCE: nbd: Only delay uevent until connected + + * Support snaps inside of lxd containers (LP: #1611078) + - apparmor: add interface to be able to grab loaded policy + - securityfs: update interface to allow inode_ops, and setup from vfs fns + - apparmor: refactor aa_prepare_ns into prepare_ns and create_ns routines + - apparmor: add __aa_find_ns fn + - apparmor: add mkdir/rmdir interface to manage policy namespaces + - apparmor: fix oops in pivot_root mediation + - apparmor: fix warning that fn build_pivotroot discards const + - apparmor: add interface to advertise status of current task stacking + - apparmor: update policy permissions to consider ns being viewed/managed + - apparmor: add per ns policy management interface + - apparmor: bump domain stacking version to 1.2 + + * linux-image-extra-4.8.0-17-generic does not provide many sound card modules + (LP: #1628523) + - [Config] CONFIG_ZONE_DMA=y for generic + + * Yakkety - disable ARCH_ZX (LP: #1628503) + - [Config] armhf: disable ARCH_ZX + + * Enable switchdev config parameter for Yakkety (LP: #1628241) + - [Config] CONFIG_NET_SWITCHDEV=y for amd64/arm64 + + * Ubuntu 16.10 kernel v4.8: Installation failing on Habanero with Shiner card + (LP: #1628009) + - firmware: Update bnx2x to 7.13.1.0 + + * vNIC driver missing in 4.8 kernel package (LP: #1628187) + - [Config] Enable CONFIG_IBMVNIC=m + + * Yakkety - armhf: MFD_TPS65217 and REGULATOR_TPS65217 are boot essential + (LP: #1628112) + - [Config] armhf: MFD_TPS65217=y && REGULATOR_TPS65217=y + + * Miscellaneous Ubuntu changes + - Rebase to v4.8-rc8 + - [Config] skip Ubuntu-4.8.0-18.20 + - [Config] missing modules in armhf/s390x + + * Miscellaneous Ubuntu changes + - rebase to v4.8-rc8 + + -- Leann Ogasawara Sun, 25 Sep 2016 12:13:35 -0700 + +linux (4.8.0-17.19) yakkety; urgency=low + + * Release Tracking Bug + - LP: #1627387 + + * build squashfs into xenial kernels by default (LP: #1593134) + - Remove squashfs udeb + + * [Yakkety] Fix up ATA_GENERIC to match annotations file. (LP: #1627322) + - Add d-i support for ata_generic + + * [Yakkety] Fix up CONFIG_BLK_DEV_SD to match annotations (LP: #1627330) + - [Config] Enforce CONFIG_BLK_DEV_SD=y,CONFIG_BLK_DEV_SR=y + + * [Yakkety] Fix up ATA_PIIX to match annotations file (LP: #1627324) + - [Config] Enforce CONFIG_ATA_PIIX=y for amd64/i386 + + * Yakkety - USB drivers must be built in (LP: #1627323) + - Update annotation enforcement for CONFIG_USB_[E|O|U|X]HCI_HCD + + * 4.8.0-16.17: genirq: Flags mismatch serial vs goldfish_pdev_bus + (LP: #1627052) + - [Config] CONFIG_GOLDFISH=n + + * yakkety 4.8, remove module noise kernel-4.8 (LP: #1626104) + - Revert "UBUNTU: SAUCE: Clear Linux: bootstats: add printk's to measure boot + time in more detail" + + * Permission denied in CIFS with kernel 4.4.0-38 (LP: #1626112) + - SAUCE: Fix regression which breaks DFS mounting + + * Miscellaneous Ubuntu changes + - [Config] apply xenial configuration annotations + - s390x -- DEBUG_RODATA is now valid + - [Config] s390x -- CONFIG_SQUASHFS=y + - [Config] s390x -- CONFIG_ECRYPT_FS=y + - [Config] Enable CONFIG_ACPI_PCI_SLOT=y for arm64 + - [Config] Enable CONFIG_ACPI_HED=y for arm64 + - [Config] Enable CONFIG_QUICC_ENGINE=y + + * Miscellaneous upstream changes + - annotations: pull back to xenial + + -- Leann Ogasawara Sat, 24 Sep 2016 21:31:31 -0700 + +linux (4.8.0-16.17) yakkety; urgency=low + + [ Tim Gardner ] + + * Release Tracking Bug + - LP: #1626768 + + * Support ARM GIC ITS in ACPI mode (LP: #1626631) + - [Config] CONFIG_ACPI_IORT=y + - SAUCE: ACPI: I/O Remapping Table (IORT) initial support + - SAUCE: ACPI: Add new IORT functions to support MSI domain handling + - SAUCE: irqchip/gicv3-its: Cleanup for ITS domain initialization + - SAUCE: irqchip/gicv3-its: Refactor ITS DT init code to prepare for ACPI + - SAUCE: irqchip/gicv3-its: Probe ITS in the ACPI way + - SAUCE: irqchip/gicv3-its: Factor out PCI-MSI part that might be reused for ACPI + - SAUCE: irqchip/gicv3-its: Use MADT ITS subtable to do PCI/MSI domain initialization + - SAUCE: PCI/MSI: Setup MSI domain on a per-device basis using IORT ACPI table + + * 4.8 dropped CONFIG_ATA=y (breaks systemd's TEST-08-ISSUE-2730 upstream test) + (LP: #1626394) + - [Config] CONFIG_ATA=y + + * Yakkety: Enable drivers with respect to Xenial (LP: #1626543) + - [Config] CONFIG_VMD=m + - [Config] CONFIG_MAC80211_RC_MINSTREL_VHT=y for all arches + - [Config] CONFIG_OF=y for all arches + - [Config] CONFIG_BLK_DEV_NVME_SCSI=y + - [Config] Xenial device settings sync with amd64 + - [Config] Xenial device settings sync with i386 + - [Config] CONFIG_MTD_UBI_GLUEBI=m + - [Config] Xenial device settings sync with armhf + - [Config] Xenial device settings sync with arm64 + + * yakkety 4.8, missing config CONFIG_USERFAULTFD=y (LP: #1626149) + - [Config] CONFIG_USERFAULTFD=y + + * 4.8 regression: SLAB is being used instead of SLUB (LP: #1626564) + - [Config] CONFIG_SLUB=y + + * image won't boot after upgrading to yakkety's 4.8 kernel because efi + (LP: #1626158) + - add nls_cp437 to the generic.inclusion-list + + -- Tim Gardner Thu, 22 Sep 2016 06:51:45 -0600 + +linux (4.8.0-15.16) yakkety; urgency=low + + [ Tim Gardner ] + + * Release Tracking Bug + - LP: #1626239 + + * image won't boot after upgrading to yakkety's 4.8 kernel because efi + (LP: #1626158) + - [Config] CONFIG_FAT_DEFAULT_IOCHARSET=iso8859-1 + - [Config] CONFIG_NLS_CODEPAGE_437=y + - [Config] CONFIG_VFAT_FS=y + + * Miscellaneous Ubuntu changes + - SAUCE: seccomp: log actions even when audit is disabled + + -- Tim Gardner Wed, 21 Sep 2016 06:41:03 -0600 + +linux (4.8.0-14.15) yakkety; urgency=low + + * CVE-2016-1575 (LP: #1534961) + - SAUCE: overlayfs: Skip permission checking for trusted.overlayfs.* xattrs + - SAUCE: overlayfs: Be more careful about copying up sxid files + - SAUCE: overlayfs: Propogate nosuid from lower and upper mounts + + * CVE-2016-1576 (LP: #1535150) + - SAUCE: overlayfs: Skip permission checking for trusted.overlayfs.* xattrs + - SAUCE: overlayfs: Be more careful about copying up sxid files + - SAUCE: overlayfs: Propogate nosuid from lower and upper mounts + + * overlay: mkdir fails if directory exists in lowerdir in a user namespace + (LP: #1531747) + - SAUCE: overlayfs: Skip permission checking for trusted.overlayfs.* xattrs + + * Miscellaneous Ubuntu changes + - [Config] CONFIG_PM_WAKELOCKS=y + - [Config] CONFIG_CLEANCACHE=y + - [Config] CONFIG_WQ_POWER_EFFICIENT_DEFAULT=y + - [Config] CONFIG_PROCESSOR_SELECT=y + - [Config] Enabled some networking options + - SAUCE: overlayfs: Enable user namespace mounts + + -- Leann Ogasawara Tue, 20 Sep 2016 13:56:58 -0700 + +linux (4.8.0-13.14) yakkety; urgency=low + + [ Tim Gardner ] + + * Release Tracking Bug + - LP: #1625733 + + * fails to mount ext4 crypto-crc32 is missing (LP: #1625728) + - [Config] Add some CRC crypto modules to d-i + + * Linux netfilter IPT_SO_SET_REPLACE memory corruption (LP: #1555338) + - SAUCE: [nf,v2] netfilter: x_tables: don't rely on well-behaving userspace + + * Brightness control on Lenovo ThinkPad T430 does not work. (LP: #1183856) + - SAUCE: (no-up) ACPI: Disable Windows 8 compatibility for some Lenovo + ThinkPads + + * Option GE0301 3G modem doesn't work (LP: #348861) + - SAUCE: (no-up) Added quirk to recognize GE0301 3G modem as an interface. + + * [regression 4.4 -> 4.8] Please re-enable CONFIG_TOUCHSCREEN_ELAN + (LP: #1625259) + - [Config] CONFIG_TOUCHSCREEN_ELAN=m for all arches + + * Miscellaneous Ubuntu changes + - SAUCE: (namespace) block_dev: Forbid unprivileged mounting when device is + opened for writing + - SAUCE: fan: add VXLAN implementation + - [Config] CONFIG_VFIO=m for ppc64el + + -- Tim Gardner Mon, 19 Sep 2016 10:50:29 -0600 + +linux (4.8.0-12.13) yakkety; urgency=low + + [ Tim Gardner ] + + * Release Tracking Bug + - LP: #1625233 + + * Miscellaneous Ubuntu changes + - rebase to v4.8-rc7 + - [Config] CONFIG_SCSI_DEBUG=m for all arches + + -- Tim Gardner Mon, 19 Sep 2016 06:35:21 -0600 + +linux (4.8.0-11.12) yakkety; urgency=low + + * change_hat is logging failures during expected hat probing (LP: #1615893) + - SAUCE: apparmor: Fix auditing behavior for change_hat probing + + * deleted files outside of the namespace are not being treated as + disconnected + (LP: #1615892) + - SAUCE: apparmor: deleted dentries can be disconnected + + * stacking to unconfined in a child namespace confuses mediation + (LP: #1615890) + - SAUCE: apparmor: special case unconfined when determining the mode + + * apparmor module parameters can be changed after the policy is locked + (LP: #1615895) + - SAUCE: apparmor: fix: parameters can be changed after policy is locked + + * AppArmor profile reloading causes an intermittent kernel BUG (LP: + #1579135) + - SAUCE: apparmor: fix vec_unique for vectors larger than 8 + + * label vec reductions can result in reference labels instead of direct + access + to labels (LP: #1615889) + - SAUCE: apparmor: reduction of vec to single entry is just that entry + + * profiles from different namespaces can block other namespaces from being + able to load a profile (LP: #1615887) + - SAUCE: apparmor: profiles in one ns can affect mediation in another ns + + * The label build for onexec when stacking is wrong (LP: #1615881) + - SAUCE: apparmor: Fix label build for onexec stacking. + + * The inherit check for new to old label comparison for domain transitions + is + wrong (LP: #1615880) + - SAUCE: apparmor: Fix new to old label comparison for domain transitions + + * warning stack trace while playing with apparmor namespaces (LP: #1593874) + - SAUCE: apparmor: fix stack trace when removing namespace with profiles + + * __label_update proxy comparison test is wrong (LP: #1615878) + - SAUCE: apparmor: Fix __label_update proxy comparison test + + * reading /sys/kernel/security/apparmor/profiles requires CAP_MAC_ADMIN + (LP: #1560583) + - SAUCE: apparmor: Allow ns_root processes to open profiles file + - SAUCE: apparmor: Consult sysctl when reading profiles in a user ns + + * policy namespace stacking (LP: #1379535) + - SAUCE: (no-up) apparmor: rebase of apparmor3.5-beta1 snapshot for 4.8 + - SAUCE: add a sysctl to enable unprivileged user ns AppArmor policy loading + + * Miscellaneous Ubuntu changes + - [Debian] Dynamically determine linux udebs package name + - [Debian] d-i -- fix dtb handling in new kernel-wedge form + - SAUCE: apparmor: Fix FTBFS due to bad include path + - SAUCE: apparmor: add data query support + - [Config] Set CONFIG_SECURITY_APPARMOR_UNCONFINED_INIT=y + + * Miscellaneous upstream changes + - fixup backout policy view capable for forward port + - apparmor: fix: Rework the iter loop for label_update + - apparmor: add more assertions for updates/merges to help catch errors + - apparmor: Make pivot root transitions work with stacking + - apparmor: convert delegating deleted files to mediate deleted files + - apparmor: add missing parens. not a bug fix but highly recommended + - apparmor: add a stack_version file to allow detection of bug fixes + - apparmor: push path lookup into mediation loop + - apparmor: default to allowing unprivileged userns policy + - apparmor: fix: permissions test to view and manage policy + - apparmor: Add Basic ns cross check condition for ipc + + -- Leann Ogasawara Sat, 17 Sep 2016 10:03:16 -0700 + +linux (4.8.0-10.11) yakkety; urgency=low + + * Miscellaneous Ubuntu changes + - ubuntu: vbox -- update to 5.1.6-dfsg-1 + - SAUCE: Enable vbox build + + -- Tim Gardner Thu, 15 Sep 2016 07:10:51 -0600 + +linux (4.8.0-9.10) yakkety; urgency=low + + * Miscellaneous Ubuntu changes + - [Config] arm64: CONFIG_ARCH_THUNDER=y + - [Config] arm64: CONFIG_PCI_HOST_THUNDER_*=y + - [Config] arm64: CONFIG_NUMA_BALANCING_DEFAULT_ENABLED=y + - [Config] arm64: CONFIG_DRM_AST=m + - [Config] arm64: CONFIG_FRAMEBUFFER_CONSOLE=y + - d-i: initrd needs ext4 and scsi modules + - SAUCE: AUFS aufs4.x-rcN 20160912 + - [Config] Enable CONFIG_GPIO_XGENE* + - [Config] Disable CONFIG_POWER_RESET_XGENE + - [Config] CONFIG_EDAC_XGENE=m + - [Config] CONFIG_ARM64_ACPI_PARKING_PROTOCOL=y + - [Config] CONFIG_XGENE_DMA=m + + -- Tim Gardner Mon, 12 Sep 2016 10:26:12 -0600 + +linux (4.8.0-8.9) yakkety; urgency=low + + * New device ID for Kabypoint (LP: #1622469) + - mfd: lpss: Add Intel Kaby Lake PCH-H PCI IDs + - SAUCE: i2c: i801: Add support for Kaby Lake PCH-H + + * Miscellaneous Ubuntu changes + - rebase to v4.8-rc6 + - SAUCE: (noup) Update spl to 0.6.5.8-0ubuntu1, zfs to 0.6.5.8-0ubuntu1 + + [ Upstream Kernel Changes ] + + * rebase to v4.8-rc6 + - LP: #1617900 + + -- Tim Gardner Fri, 09 Sep 2016 10:53:40 -0600 + +linux (4.8.0-7.8) yakkety; urgency=low + + * Miscellaneous Ubuntu changes + - [Debian] Use src_pkg_name when constructing udeb control files + + -- Tim Gardner Fri, 09 Sep 2016 07:26:25 -0600 + +linux (4.8.0-6.7) yakkety; urgency=low + + * Enable virtual scsi server driver for Power (LP: #1615665) + - SAUCE: Ibmvscsis: Properly deregister target sessions + - SAUCE: Return TCMU-generated sense data to fabric module + - SAUCE: Ibmvscsis: Code cleanup of print statements + - SAUCE: Ibmvscsis: Fixed a bug reported by Dan Carpenter + + * Miscellaneous Ubuntu changes + - [Config] CONFIG_XEN_FBDEV_FRONTEND=m + - rebase to v4.8-rc5 + + [ Upstream Kernel Changes ] + + * rebase to v4.8-rc5 + + -- Tim Gardner Thu, 01 Sep 2016 12:09:26 -0600 + +linux (4.8.0-5.6) yakkety; urgency=low + + * support compressed kernels on arm64 (LP: #1384955) + - [Config] Switch to compressed Image on arm64 + + * Miscellaneous Ubuntu changes + - SAUCE: (namespace) security/integrity: Harden against malformed xattrs + - SAUCE: (namespace) block_dev: Support checking inode permissions in + lookup_bdev() + - SAUCE: (namespace) block_dev: Check permissions towards block device inode + when mounting + - SAUCE: (namespace) mtd: Check permissions towards mtd block device inode + when mounting + - SAUCE: (namespace) fs: Allow superblock owner to change ownership of inodes + - SAUCE: (namespace) fs: Don't remove suid for CAP_FSETID for userns root + - SAUCE: (namespace) fs: Allow superblock owner to access do_remount_sb() + - SAUCE: (namespace) capabilities: Allow privileged user in s_user_ns to set + security.* xattrs + - SAUCE: (namespace) fs: Allow CAP_SYS_ADMIN in s_user_ns to freeze and thaw + filesystems + - SAUCE: (namespace) posix_acl: Export posix_acl_fix_xattr_userns() to modules + - SAUCE: (namespace) fuse: Add support for pid namespaces + - SAUCE: (namespace) fuse: Support fuse filesystems outside of init_user_ns + - SAUCE: (namespace) fuse: Translate ids in posix acl xattrs + - SAUCE: (namespace) fuse: Restrict allow_other to the superblock's namespace + or a descendant + - SAUCE: (namespace) fuse: Allow user namespace mounts + - SAUCE: (namespace) ext4: Add support for unprivileged mounts from user + namespaces + - SAUCE: (namespace) ext4: Add module parameter to enable user namespace + mounts + - rebase to v4.8-rc4 + + [ Upstream Kernel Changes ] + + * rebase to v4.8-rc4 + + -- Tim Gardner Thu, 25 Aug 2016 07:13:03 -0600 + +linux (4.8.0-4.5) yakkety; urgency=low + + * Miscellaneous Ubuntu changes + - [Config] CONFIG_AUFS_FS=m + - SAUCE: AUFS 27ef55c6d5f4726b33f60b33a9888963d26fa7fb + + -- Tim Gardner Tue, 23 Aug 2016 12:25:59 -0600 + +linux (4.8.0-3.4) yakkety; urgency=low + + * MacBookPro11,4 fails to poweroff or suspend (LP: #1587714) + - SAUCE: PCI: Workaround to enable poweroff on Mac Pro 11 + + * Miscellaneous Ubuntu changes + - rebase to v4.8-rc3 + + -- Tim Gardner Thu, 18 Aug 2016 10:33:07 -0600 + +linux (4.8.0-2.3) yakkety; urgency=low + + * Miscellaneous Ubuntu changes + - [Config] Add fuse to inclusion list + - SAUCE: update spl/zfs to support v4.8 + + * Miscellaneous upstream changes + - Revert "UBUNTU: [Debian] do_zfs=false" + + -- Tim Gardner Wed, 17 Aug 2016 08:06:33 -0600 + +linux (4.8.0-1.2) yakkety; urgency=low + + * Miscellaneous Ubuntu changes + - [Config] Enabled enforcement for CONFIG_HOTPLUG_PCI_PCIE + - [Config] Enabled enforcement for CONFIG_NVRAM + - [Config] Enabled enforcement for CONFIG_FRAMEBUFFER_CONSOLE + - [Config] Enabled enforcement for CONFIG_DRM_MGAG200 + - [Config] Enabled enforcement for CONFIG_INPUT_UINPUT + - [Config] Enabled enforcement for CONFIG_THERM_ADT746X + - [Config] Enabled enforcement for CONFIG_REGULATOR_TWL4030 + - [Config] Enabled enforcement for CONFIG_SECCOMP + - [Config] Enabled enforcement for + - rebase to v4.8-rc2 + - [Config] Dropped CONFIG_OVERLAY_FS_V1 from annotations + - [Config] CONFIG_SECURITY_PERF_EVENTS_RESTRICT=y + - SAUCE: security,perf: Allow further restriction of perf_event_open + + [ Upstream Kernel Changes ] + + * rebase to v4.8-rc2 + + -- Tim Gardner Thu, 11 Aug 2016 11:08:14 -0600 + +linux (4.8.0-0.1) yakkety; urgency=low + + [ Upstream Kernel Changes ] + + * rebase to v4.8-rc1 + - LP: #1607647 + - LP: #1498667 + - LP: #1592547 + - LP: #1319984 + - LP: #1268727 + - LP: #1600623 + - LP: #1465724 + - LP: #1333569 + + -- Tim Gardner Tue, 02 Aug 2016 14:23:12 -0600 + +linux (4.8.0-0.0) yakkety; urgency=low + + * empty stanza + + -- Tim Gardner Tue, 02 Aug 2016 10:53:17 -0600 + +linux (4.7.0-0.2) yakkety; urgency=low + + * Miscellaneous Ubuntu changes fixing various FTBS issues + - [Config] CONFIG_BLK_DEV_CRYPTOLOOP=m + - [Config] make powerpc udeb block modules optional + - [Config] CONFIG_PLIP=m + - [Config] CONFIG_IRDA=m armhf/arm64 + - [Config] CONFIG_IPMI_HANDLER=m armhf/arm64 + - [Config] CONFIG_MOUSE_PS2=m + - [Config] remove ppc64el fb-modules + + -- Tim Gardner Mon, 01 Aug 2016 10:00:57 -0600 + +linux (4.7.0-0.1) yakkety; urgency=low + + [ Upstream Kernel Changes ] + + * rebase to v4.7 + - LP: #972604 + + -- Tim Gardner Mon, 06 Jun 2016 12:00:45 -0600 + +linux (4.7.0-0.0) yakkety; urgency=low + + [ Tim Gardner ] + + * Release Tracking Bug + - LP: #1588856 + + * linux: 4.6 kernel fails to boot on ppc64el multi-path system (LP: #1588421) + - scsi_dh_alua: do not fail for unknown VPD identification + + * [Hyper-V] Put tools/hv/lsvmbus in /usr/sbin (LP: #1585311) + - [Config] Install lsvmbus in cloud tools + - SAUCE: tools/hv/lsvmbus -- convert to python3 + - SAUCE: tools/hv/lsvmbus -- add manual page + + * boot stalls on USB detection errors (LP: #1437492) + - usb: core: hub: hub_port_init lock controller instead of bus + + * [Bug]KNL:Spread MWAIT cache lines over all nodes (LP: #1585850) + - kernek/fork.c: allocate idle task for a CPU always on its local node + + * VirtIO (and probably other modules as well) is built-in, make it modular... + (LP: #1475078) + - [Config] CONFIG_VIRTIO_*=m for all but s390x + - [Config] CONFIG_USB=m + - [Config] CONFIG_BLK_DEV_*=m + - [Config] CONFIG_ATA=m + - [Config] CONFIG_SCSI=m + - [Config] CONFIG_DEVFREQ_GOV_*=m + - [Config] CONFIG_XEN_NETDEV_*=m + - [Config] CONFIG_AGP=m + - [Config] CONFIG_ECRYPT_FS=m + - [Config] CONFIG_ACPI_*=m + - [Config] CONFIG_CPU_FREQ_GOV_*=m for all but powerpc/ppc64el + - [Config] Modularize some CRYPTO + - [Config] CONFIG_FDDI=m + - [Config] CONFIG_FIXED_PHY=m + - [Config] CONFIG_VFAT_FS=m for all but armhf + - [Config] CONFIG_TUN=m + - [Config] CONFIG_UNIX=m + - [Config] CONFIG_TRUSTED_KEYS=m + - [Config] CONFIG_LEDS_CLASS=m for amd64,i386,ppc64el + + * debian.master/.../getabis bogus warnings "inconsistant compiler versions" + and "not a git repository" (LP: #1584890) + - [debian] getabis: Only git add $abidir if running in local repo + - [debian] getabis: Fix inconsistent compiler versions check + + * conflicting modules in udebs - arc4.ko (LP: #1582991) + - [Config] Remove arc4 from nic-modules + + * arm64: statically link rtc-efi (LP: #1583738) + - [Config] Link rtc-efi statically on arm64 + + * Miscellaneous Ubuntu changes + - [Debian] zfs: transform symlink into referent file/dir + - [Debian] Added tristate.sh + - [Config] CONFIG_FUSE_FS=m + - [Config] CONFIG_ACPI_APEI_ERST_DEBUG=m + - [Config] CONFIG_PSTORE_CONSOLE=y + - Added Snapcraft files + - [Config] Mark CONFIG_UNIX enforced + + * Miscellaneous upstream changes + - Revert "UBUNTU: [Config] CONFIG_UNIX=m" + + -- Tim Gardner Tue, 17 May 2016 11:20:20 -0600 + +linux (4.6.0-6.7) yakkety; urgency=low + + [ Tim Gardner ] + + * Release Tracking Bug + - LP: #1582753 + + * Unsharing user and ipc namespaces simultaneously makes mqueue unmountable + (LP: #1582378) + - SAUCE: (namespace) mqueue: Super blocks must be owned by the user ns which + owns the ipc ns + + * Miscellaneous Ubuntu changes + - [Config] Add Description to kernel-image udeb + - SAUCE: (noup) mm: Use phys_addr_t for reserve_bootmem_region arguments + - SAUCE: (noup) Update spl to 0.6.5.7-0ubuntu1, zfs to 0.6.5.7-0ubuntu1 + + * Miscellaneous upstream changes + - Drivers: hv: vmbus: Introduce functions for estimating room in the ring buffer + - Drivers: hv: vmbus: Use READ_ONCE() to read variables that are volatile + - Drivers: hv: vmbus: Use the new virt_xx barrier code + - Drivers: hv: vmbus: Export the vmbus_set_event() API + - Drivers: hv: vmbus: Move some ring buffer functions to hyperv.h + - Drivers: hv: vmbus: Implement APIs to support "in place" consumption of vmbus packets + - drivers:hv: Lock access to hyperv_mmio resource tree + - drivers:hv: Make a function to free mmio regions through vmbus + - drivers:hv: Reverse order of resources in hyperv_mmio + - drivers:hv: Track allocations of children of hv_vmbus in private resource tree + - drivers:hv: Record MMIO range in use by frame buffer + - drivers:hv: Separate out frame buffer logic when picking MMIO range + - Drivers: hv: kvp: fix IP Failover + - Drivers: hv: vmbus: handle various crash scenarios + - Drivers: hv: balloon: don't crash when memory is added in non-sorted order + - Drivers: hv: balloon: reset host_specified_ha_region + + [ Tim Gardner ] + + * Dropped hv SAUCE patches in favor of linux-next. + + -- Tim Gardner Mon, 16 May 2016 13:50:30 -0600 + +linux (4.6.0-5.6) yakkety; urgency=low + + [ Tim Gardner ] + + * Release Tracking Bug + - LP: #1582351 + + * aufs CONFIG_AUFS_EXPORT build option should be enabled (LP: #1121699) + - [Config] enable CONFIG_AUFS_EXPORT + + * promote *_diag modules from linux-image-extra to linux-image (LP: #1580355) + - [Config] Update inclusion list for CRIU + + * zfs: disable module checks for zfs when cross-compiling (LP: #1581127) + - [Debian] disable zfs module checks when cross-compiling + + * insecure overlayfs xattrs handling in copy_up (LP: #1534961) + - SAUCE: overlayfs: Propogate nosuid from lower and upper mounts + + * overlayfs over fuse should refuse copy_up of files if uid/gid not mapped + (LP: #1535150) + - SAUCE: overlayfs: Propogate nosuid from lower and upper mounts + + * Ubuntu-4.6.0-5.6 configuration has CONFIG_GOLDFISH and CONFIG_GOLDFISH_BUS + enabled, breaking serial support on normal systems (LP: #1580960) + - [Config] disable CONFIG_GOLDFISH + + * Miscellaneous Ubuntu changes + - [Config] d-i -- update local configuration to new form + - [Config] kernel-wedge -- switch to explicit versions + - [Config] powerpc64-smp --> generic + - [Config] CONFIG_AUFS_FS=m + - SAUCE: AUFS + - SAUCE: (namespace) fs: Add user namesapace member to struct super_block + - SAUCE: (namespace) fs: Limit file caps to the user namespace of the super block + - SAUCE: (namespace) Smack: Add support for unprivileged mounts from user namespaces + - SAUCE: (namespace) fs: fix a posible leak of allocated superblock + - SAUCE: (namespace) fs: Allow sysfs and cgroupfs to share super blocks between user namespaces + - SAUCE: (namespace) block_dev: Support checking inode permissions in lookup_bdev() + - SAUCE: (namespace) block_dev: Check permissions towards block device inode when mounting + - SAUCE: (namespace) fs: Treat foreign mounts as nosuid + - SAUCE: (namespace) selinux: Add support for unprivileged mounts from user namespaces + - SAUCE: (namespace) userns: Replace in_userns with current_in_userns + - SAUCE: (namespace) Smack: Handle labels consistently in untrusted mounts + - SAUCE: (namespace) fs: Check for invalid i_uid in may_follow_link() + - SAUCE: (namespace) cred: Reject inodes with invalid ids in set_create_file_as() + - SAUCE: (namespace) fs: Refuse uid/gid changes which don't map into s_user_ns + - SAUCE: (namespace) fs: Update posix_acl support to handle user namespace mounts + - SAUCE: (namespace) fs: Allow superblock owner to change ownership of inodes with unmappable ids + - SAUCE: (namespace) fs: Don't remove suid for CAP_FSETID in s_user_ns + - SAUCE: (namespace) fs: Allow superblock owner to access do_remount_sb() + - SAUCE: (namespace) capabilities: Allow privileged user in s_user_ns to set security.* xattrs + - SAUCE: (namespace) fuse: Add support for pid namespaces + - SAUCE: (namespace) fuse: Support fuse filesystems outside of init_user_ns + - SAUCE: (namespace) fuse: Restrict allow_other to the superblock's namespace or a descendant + - SAUCE: (namespace) fuse: Allow user namespace mounts + - SAUCE: (namespace) mtd: Check permissions towards mtd block device inode when mounting + - SAUCE: (namespace) block_dev: Forbid unprivileged mounting when device is opened for writing + - SAUCE: (namespace) fs: Update i_[ug]id_(read|write) to translate relative to s_user_ns + - SAUCE: (namespace) quota: Add support for user namespace mounts + - SAUCE: (namespace) evm: Translate user/group ids relative to s_user_ns when computing HMAC + - SAUCE: (namespace) fs: Allow CAP_SYS_ADMIN in s_user_ns to freeze and thaw filesystems + - SAUCE: (namespace) ext4: Add support for unprivileged mounts from user namespaces + - SAUCE: (namespace) fuse: Add module parameter to enable user namespace mounts + - SAUCE: (namespace) ext4: Add module parameter to enable user namespace mounts + - rebase to v4.6 + - SAUCE: Powernv: Remove the usage of PACAR1 from opal wrappers + - SAUCE: powerpc/book3s: Fix TB corruption in guest exit path on HMI interrupt. + + * Miscellaneous upstream changes + - Revert "powerpc/eeh: Fix crash in eeh_add_device_early() on Cell" + - powerpc/iommu: Remove the dependency on EEH struct in DDW mechanism + + [ Upstream Kernel Changes ] + + * rebase to v4.6 + + -- Tim Gardner Mon, 09 May 2016 12:08:54 -0600 + +linux (4.6.0-4.5) yakkety; urgency=low + + * Kernel Panic on EC2 After Upgrading from 14.04 to 16.04 via do-release- + upgrade -d (LP: #1573231) + - SAUCE: (no-up) x86/topology: Handle CPUID bogosity gracefully + + * Really cleaned out the last of the i915_bpo SAUCE patches. ricotz on + IRC pointed out some leftover SAUCE patches that were causing issues. + + * Dropped the attempt to convert powerpc64-smb to generic. kernel-wedge + has some issues. + + -- Tim Gardner Mon, 09 May 2016 10:56:54 -0600 + +linux (4.6.0-3.4) xenial; urgency=low + + * Release Tracking Bug + - LP: #1579594 + + * linux-generic: enable linux-extra split on all architectures (LP: #1568832) + - [Config] Generate an -extras package for arm64 and powerpc + + * Missing libunwind support in perf (LP: #1248289) + - [Config] Add liblzma-dev to enable libunwind support in perf + + * ZFS is confused by user namespaces (uid/gid mapping) when used with + acltype=posixac (LP: #1567558) + - zfs: Fix user namespaces uid/gid mapping + + * Miscellaneous Ubuntu changes + - rebase to v4.6-rc7 + + [ Upstream Kernel Changes ] + + * rebase to v4.6-rc7 + + -- Tim Gardner Thu, 05 May 2016 14:03:17 -0600 + +linux (4.6.0-2.3) yakkety; urgency=low + + * Miscellaneous Ubuntu changes + - [Config] CONFIG_AUFS_FS=m + - SAUCE: AUFS + - zfs: gcc build error: -Wbool-compare in metaslab.c + - zfs: Linux 4.6 compat: PAGE_CACHE_SIZE removal + - zfs: Fix ZPL miswrite of default POSIX ACL + - zfs: Linux 4.5 compat: Use xattr_handler->name for acl + - SAUCE: Dropped ubuntu/i915 + - SAUCE: Dropped ubuntu/dm-raid4-5 + + * Miscellaneous upstream changes + - Revert "UBUNTU: [Debian] Disable ZFS until an update catches it up with the + kernel" + + -- Tim Gardner Thu, 05 May 2016 10:41:17 -0600 + +linux (4.6.0-1.2) yakkety; urgency=low + + * Miscellaneous Ubuntu changes + - [Config] CONFIG_NR_CPUS=8192 for amd64 + + -- Tim Gardner Thu, 05 May 2016 07:25:31 -0600 + +linux (4.6.0-0.1) yakkety; urgency=low + + + [ Upstream Kernel Changes ] + + * rebase to v4.6-rc6 + - LP: #1564712 + - LP: #1555912 + - LP: #1552925 + - LP: #1546694 + - LP: #1549660 + - LP: #1549620 + - LP: #1542944 + - LP: #1542564 + - LP: #1533009 + - LP: #1533461 + - LP: #1529624 + - LP: #1522949 + + -- Tim Gardner Mon, 25 Apr 2016 14:24:45 -0600 + +linux (4.6.0-0.0) yakkety; urgency=low + + [ Kamal Mostafa ] + + * Release Tracking Bug + - LP: #1573817 + + * autoreconstruct: need to also generate extend-diff-ignore options for links + (LP: #1574362) + - [Packaging] autoreconstruct -- generate extend-diff-ignore for links + + * tipc: missing linearization of sk_buff (LP: #1567064) + - tipc: move linearization of buffers to generic code + + * [Hyper-V] In-flight PCI Passthrough Patches (LP: #1570124) + - SAUCE:(noup) drivers:hv: Lock access to hyperv_mmio resource tree + - SAUCE:(noup) drivers:hv: Call vmbus_mmio_free() to reverse + vmbus_mmio_allocate() + - SAUCE:(noup) drivers:hv: Reverse order of resources in hyperv_mmio + - SAUCE:(noup) drivers:hv: Track allocations of children of hv_vmbus in + private resource tree + - SAUCE:(noup) drivers:hv: Record MMIO range in use by frame buffer + - SAUCE:(noup) drivers:hv: Separate out frame buffer logic when picking MMIO + range + + * vbox: resync with 5.0.18-dfsg-2build1 (LP: #1571156) + - ubuntu: vbox -- update to 5.0.18-dfsg-2build1 + + * CONFIG_AUFS_XATTR is not set (LP: #1557776) + - [Config] CONFIG_AUFS_XATTR=y + + * CVE-2016-3672 (LP: #1568523) + - x86/mm/32: Enable full randomization on i386 and X86_32 + + * CVE-2016-3955 (LP: #1572666) + - USB: usbip: fix potential out-of-bounds write + + * Xenial update to v4.4.8 stable release (LP: #1573034) + - hwmon: (max1111) Return -ENODEV from max1111_read_channel if not + instantiated + - PKCS#7: pkcs7_validate_trust(): initialize the _trusted output argument + - parisc: Avoid function pointers for kernel exception routines + - parisc: Fix kernel crash with reversed copy_from_user() + - parisc: Unbreak handling exceptions from kernel modules + - ALSA: timer: Use mod_timer() for rearming the system timer + - ALSA: hda - Asus N750JV external subwoofer fixup + - ALSA: hda - Fix white noise on Asus N750JV headphone + - ALSA: hda - Apply fix for white noise on Asus N550JV, too + - mm: fix invalid node in alloc_migrate_target() + - powerpc/mm: Fixup preempt underflow with huge pages + - libnvdimm: fix smart data retrieval + - libnvdimm, pfn: fix uuid validation + - compiler-gcc: disable -ftracer for __noclone functions + - arm64: opcodes.h: Add arm big-endian config options before including arm + header + - drm/dp: move hw_mutex up the call stack + - drm/udl: Use unlocked gem unreferencing + - drm/radeon: add a dpm quirk for sapphire Dual-X R7 370 2G D5 + - drm/radeon: add another R7 370 quirk + - drm/radeon: add a dpm quirk for all R7 370 parts + - drm/amdgpu/gmc: move vram type fetching into sw_init + - drm/amdgpu/gmc: use proper register for vram type on Fiji + - xen/events: Mask a moving irq + - tcp: convert cached rtt from usec to jiffies when feeding initial rto + - tunnel: Clear IPCB(skb)->opt before dst_link_failure called + - net: jme: fix suspend/resume on JMC260 + - net: vrf: Remove direct access to skb->data + - net: qca_spi: Don't clear IFF_BROADCAST + - net: qca_spi: clear IFF_TX_SKB_SHARING + - net: fix bridge multicast packet checksum validation + - sctp: lack the check for ports in sctp_v6_cmp_addr + - mld, igmp: Fix reserved tailroom calculation + - tipc: Revert "tipc: use existing sk_write_queue for outgoing packet chain" + - qmi_wwan: add Sierra Wireless EM74xx device ID + - ipv6: re-enable fragment header matching in ipv6_find_hdr + - vxlan: fix missing options_len update on RX with collect metadata + - cdc_ncm: toggle altsetting to force reset before setup + - udp6: fix UDP/IPv6 encap resubmit path + - tcp: fix tcpi_segs_in after connection establishment + - ppp: release rtnl mutex when interface creation fails + - net: validate variable length ll headers + - ax25: add link layer header validation function + - packet: validate variable length ll headers + - bpf: avoid copying junk bytes in bpf_get_current_comm() + - sh_eth: fix NULL pointer dereference in sh_eth_ring_format() + - sh_eth: advance 'rxdesc' later in sh_eth_ring_format() + - qlcnic: Remove unnecessary usage of atomic_t + - qlcnic: Fix mailbox completion handling during spurious interrupt + - macvtap: always pass ethernet header in linear + - mlxsw: spectrum: Check requested ageing time is valid + - rocker: set FDB cleanup timer according to lowest ageing time + - bridge: allow zero ageing time + - ipv4: Don't do expensive useless work during inetdev destroy. + - net: Fix use after free in the recvmmsg exit path + - mlx4: add missing braces in verify_qp_parameters + - farsync: fix off-by-one bug in fst_add_one + - ath9k: fix buffer overrun for ar9287 + - ppp: ensure file->private_data can't be overridden + - tcp/dccp: remove obsolete WARN_ON() in icmp handlers + - qlge: Fix receive packets drop. + - net: bcmgenet: fix dma api length mismatch + - bonding: fix bond_get_stats() + - ipv4: fix broadcast packets reception + - ipv4: initialize flowi4_flags before calling fib_lookup() + - ppp: take reference on channels netns + - xfrm: Fix crash observed during device unregistration and decryption + - qmi_wwan: add "D-Link DWM-221 B1" device id + - ipv6: udp: fix UDP_MIB_IGNOREDMULTI updates + - bridge: Allow set bridge ageing time when switchdev disabled + - rtnl: fix msg size calculation in if_nlmsg_size() + - tun, bpf: fix suspicious RCU usage in tun_{attach, detach}_filter + - tuntap: restore default qdisc + - ipv4: l2tp: fix a potential issue in l2tp_ip_recv + - ipv6: l2tp: fix a potential issue in l2tp_ip6_recv + - ip6_tunnel: set rtnl_link_ops before calling register_netdevice + - ipv6: Count in extension headers in skb->network_header + - mpls: find_outdev: check for err ptr in addition to NULL check + - USB: uas: Limit qdepth at the scsi-host level + - USB: uas: Add a new NO_REPORT_LUNS quirk + - cdc-acm: fix NULL pointer reference + - KVM: x86: Inject pending interrupt even if pending nmi exist + - KVM: x86: reduce default value of halt_poll_ns parameter + - MIPS: Fix MSA ld unaligned failure cases + - pinctrl: pistachio: fix mfio84-89 function description and pinmux. + - pinctrl: sh-pfc: only use dummy states for non-DT platforms + - pinctrl: sunxi: Fix A33 external interrupts not working + - pinctrl: nomadik: fix pull debug print inversion + - pinctrl: freescale: imx: fix bogus check of of_iomap() return value + - au0828: fix au0828_v4l2_close() dev_state race condition + - au0828: Fix dev_state handling + - coda: fix error path in case of missing pdata on non-DT platform + - v4l: vsp1: Set the SRU CTRL0 register when starting the stream + - pcmcia: db1xxx_ss: fix last irq_to_gpio user + - rbd: use GFP_NOIO consistently for request allocations + - virtio: virtio 1.0 cs04 spec compliance for reset + - mac80211: properly deal with station hashtable insert errors + - mac80211: avoid excessive stack usage in sta_info + - mac80211: fix ibss scan parameters + - mac80211: fix unnecessary frame drops in mesh fwding + - mac80211: fix txq queue related crashes + - usb: renesas_usbhs: avoid NULL pointer derefernce in usbhsf_pkt_handler() + - usb: renesas_usbhs: disable TX IRQ before starting TX DMAC transfer + - usb: renesas_usbhs: fix to avoid using a disabled ep in usbhsg_queue_done() + - iio: st_magn: always define ST_MAGN_TRIGGER_SET_STATE + - iio: accel: bmc150: fix endianness when reading axes + - iio: gyro: bmg160: fix buffer read values + - iio: gyro: bmg160: fix endianness when reading axes + - sd: Fix excessive capacity printing on devices with blocks bigger than 512 + bytes + - fs: add file_dentry() + - nfs: use file_dentry() + - btrfs: fix crash/invalid memory access on fsync when using overlayfs + - ext4: add lockdep annotations for i_data_sem + - ext4: ignore quota mount options if the quota feature is enabled + - iommu: Don't overwrite domain pointer when there is no default_domain + - Btrfs: fix file/data loss caused by fsync after rename and new inode + - arm64: replace read_lock to rcu lock in call_step_hook + - perf: Do not double free + - perf: Cure event->pending_disable race + - mmc: sdhci-pci: Add support and PCI IDs for more Broxton host controllers + - ALSA: hda - Fixup speaker pass-through control for nid 0x14 on ALC225 + - ALSA: hda - Fix headset support and noise on HP EliteBook 755 G2 + - ALSA: hda/realtek - Enable the ALC292 dock fixup on the Thinkpad T460s + - ALSA: usb-audio: Add a sample rate quirk for Phoenix Audio TMX320 + - ALSA: usb-audio: Add a quirk for Plantronics BT300 + - ALSA: usb-audio: Skip volume controls triggers hangup on Dell USB Dock + - HID: wacom: fix Bamboo ONE oops + - HID: usbhid: fix inconsistent reset/resume/reset-resume behavior + - Revert "x86/PCI: Don't alloc pcibios-irq when MSI is enabled" + - Revert "PCI: Add helpers to manage pci_dev->irq and pci_dev->irq_managed" + - Revert "PCI, x86: Implement pcibios_alloc_irq() and pcibios_free_irq()" + - staging: android: ion: Set the length of the DMA sg entries in buffer + - usbvision: fix crash on detecting device with invalid configuration + - Revert "usb: hub: do not clear BOS field during reset device" + - Linux 4.4.8 + + * Fix speaker volume on a Dell machine (LP: #1549660) + - ALSA: hda - Fixup speaker pass-through control for nid 0x14 on ALC225 + + * Xenial update to v4.4.7 stable release (LP: #1572722) + - regulator: core: avoid unused variable warning + - regulator: core: Fix nested locking of supplies + - ASoC: samsung: pass DMA channels as pointers + - mmc: sh_mmcif: rework dma channel handling + - mmc: sh_mmcif: Correct TX DMA channel allocation + - x86/microcode/intel: Make early loader look for builtin microcode too + - x86/microcode: Untangle from BLK_DEV_INITRD + - x86/entry/compat: Keep TS_COMPAT set during signal delivery + - perf/x86/intel: Add definition for PT PMI bit + - x86/PCI: Mark Broadwell-EP Home Agent & PCU as having non-compliant BARs + - KVM: i8254: change PIT discard tick policy + - KVM: fix spin_lock_init order on x86 + - KVM: VMX: avoid guest hang on invalid invept instruction + - KVM: VMX: avoid guest hang on invalid invvpid instruction + - KVM: VMX: fix nested vpid for old KVM guests + - perf/core: Fix perf_sched_count derailment + - perf tools: Dont stop PMU parsing on alias parse error + - perf tools: Fix checking asprintf return value + - perf tools: Fix python extension build + - sched/cputime: Fix steal_account_process_tick() to always return jiffies + - sched/preempt, sh: kmap_coherent relies on disabled preemption + - EDAC, amd64_edac: Shift wrapping issue in f1x_get_norm_dct_addr() + - s390: fix floating pointer register corruption (again) + - s390/cpumf: add missing lpp magic initialization + - pinctrl-bcm2835: Fix cut-and-paste error in "pull" parsing + - PCI: Disable IO/MEM decoding for devices with non-compliant BARs + - PCI: ACPI: IA64: fix IO port generic range check + - x86/irq: Cure live lock in fixup_irqs() + - x86/apic: Fix suspicious RCU usage in smp_trace_call_function_interrupt() + - x86/iopl/64: Properly context-switch IOPL on Xen PV + - x86/iopl: Fix iopl capability check on Xen PV + - x86/mm: TLB_REMOTE_SEND_IPI should count pages + - sg: fix dxferp in from_to case + - aacraid: Fix RRQ overload + - aacraid: Fix memory leak in aac_fib_map_free + - aacraid: Set correct msix count for EEH recovery + - sd: Fix discard granularity when LBPRZ=1 + - scsi: storvsc: fix SRB_STATUS_ABORTED handling + - be2iscsi: set the boot_kset pointer to NULL in case of failure + - aic7xxx: Fix queue depth handling + - libnvdimm: Fix security issue with DSM IOCTL. + - dm snapshot: disallow the COW and origin devices from being identical + - dm: fix excessive dm-mq context switching + - dm thin metadata: don't issue prefetches if a transaction abort has failed + - dm cache: make sure every metadata function checks fail_io + - dm: fix rq_end_stats() NULL pointer in dm_requeue_original_request() + - usb: retry reset if a device times out + - usb: hub: fix a typo in hub_port_init() leading to wrong logic + - USB: uas: Reduce can_queue to MAX_CMNDS + - USB: cdc-acm: more sanity checking + - USB: iowarrior: fix oops with malicious USB descriptors + - USB: usb_driver_claim_interface: add sanity checking + - USB: mct_u232: add sanity checking in probe + - USB: digi_acceleport: do sanity checking for the number of ports + - USB: cypress_m8: add endpoint sanity check + - USB: serial: cp210x: Adding GE Healthcare Device ID + - USB: serial: ftdi_sio: Add support for ICP DAS I-756xU devices + - USB: option: add "D-Link DWM-221 B1" device id + - pwc: Add USB id for Philips Spc880nc webcam + - Input: powermate - fix oops with malicious USB descriptors + - ALSA: usb-audio: Fix NULL dereference in create_fixed_stream_quirk() + - ALSA: usb-audio: Add sanity checks for endpoint accesses + - ALSA: usb-audio: add Microsoft HD-5001 to quirks + - ALSA: usb-audio: Minor code cleanup in create_fixed_stream_quirk() + - ALSA: usb-audio: Fix double-free in error paths after + snd_usb_add_audio_stream() call + - Bluetooth: btusb: Add new AR3012 ID 13d3:3395 + - Bluetooth: btusb: Add a new AR3012 ID 04ca:3014 + - Bluetooth: btusb: Add a new AR3012 ID 13d3:3472 + - crypto: ccp - Add hash state import and export support + - crypto: ccp - Limit the amount of information exported + - crypto: ccp - Don't assume export/import areas are aligned + - crypto: ccp - memset request context to zero during import + - crypto: keywrap - memzero the correct memory + - crypto: atmel - fix checks of error code returned by devm_ioremap_resource() + - crypto: ux500 - fix checks of error code returned by devm_ioremap_resource() + - crypto: marvell/cesa - forward devm_ioremap_resource() error code + - X.509: Fix leap year handling again + - mei: bus: check if the device is enabled before data transfer + - HID: logitech: fix Dual Action gamepad support + - HID: i2c-hid: fix OOB write in i2c_hid_set_or_send_report() + - HID: multitouch: force retrieving of Win8 signature blob + - HID: fix hid_ignore_special_drivers module parameter + - staging: comedi: ni_tiocmd: change mistaken use of start_src for start_arg + - staging: android: ion_test: fix check of platform_device_register_simple() + error code + - staging: comedi: ni_mio_common: fix the ni_write[blw]() functions + - tty: Fix GPF in flush_to_ldisc(), part 2 + - net: irda: Fix use-after-free in irtty_open() + - 8250: use callbacks to access UART_DLL/UART_DLM + - saa7134: Fix bytesperline not being set correctly for planar formats + - adv7511: TX_EDID_PRESENT is still 1 after a disconnect + - bttv: Width must be a multiple of 16 when capturing planar formats + - coda: fix first encoded frame payload + - media: v4l2-compat-ioctl32: fix missing length copy in put_v4l2_buffer32 + - mtip32xx: Avoid issuing standby immediate cmd during FTL rebuild + - mtip32xx: Fix broken service thread handling + - mtip32xx: Remove unwanted code from taskfile error handler + - mtip32xx: Print exact time when an internal command is interrupted + - mtip32xx: Fix for rmmod crash when drive is in FTL rebuild + - mtip32xx: Handle safe removal during IO + - mtip32xx: Handle FTL rebuild failure state during device initialization + - mtip32xx: Implement timeout handler + - mtip32xx: Cleanup queued requests after surprise removal + - ALSA: pcm: Avoid "BUG:" string for warnings again + - ALSA: intel8x0: Add clock quirk entry for AD1981B on IBM ThinkPad X41. + - ALSA: hda - Don't handle ELD notify from invalid port + - ALSA: hda - fix the mic mute button and led problem for a Lenovo AIO + - ALSA: hda - Fix unconditional GPIO toggle via automute + - tools/hv: Use include/uapi with __EXPORTED_HEADERS__ + - jbd2: fix FS corruption possibility in jbd2_journal_destroy() on umount path + - brd: Fix discard request processing + - IB/srpt: Simplify srpt_handle_tsk_mgmt() + - bcache: cleaned up error handling around register_cache() + - bcache: fix race of writeback thread starting before complete initialization + - bcache: fix cache_set_flush() NULL pointer dereference on OOM + - mm: memcontrol: reclaim when shrinking memory.high below usage + - mm: memcontrol: reclaim and OOM kill when shrinking memory.max below usage + - ia64: define ioremap_uc() + - watchdog: don't run proc_watchdog_update if new value is same as old + - watchdog: rc32434_wdt: fix ioctl error handling + - Bluetooth: Add new AR3012 ID 0489:e095 + - Bluetooth: Fix potential buffer overflow with Add Advertising + - cgroup: ignore css_sets associated with dead cgroups during migration + - net: mvneta: enable change MAC address when interface is up + - of: alloc anywhere from memblock if range not specified + - vfs: show_vfsstat: do not ignore errors from show_devname method + - splice: handle zero nr_pages in splice_to_pipe() + - xtensa: ISS: don't hang if stdin EOF is reached + - xtensa: fix preemption in {clear,copy}_user_highpage + - xtensa: clear all DBREAKC registers on start + - ARC: [BE] readl()/writel() to work in Big Endian CPU configuration + - ARC: bitops: Remove non relevant comments + - quota: Fix possible GPF due to uninitialised pointers + - xfs: fix two memory leaks in xfs_attr_list.c error paths + - raid1: include bio_end_io_list in nr_queued to prevent freeze_array hang + - md/raid5: Compare apples to apples (or sectors to sectors) + - RAID5: check_reshape() shouldn't call mddev_suspend + - RAID5: revert e9e4c377e2f563 to fix a livelock + - raid10: include bio_end_io_list in nr_queued to prevent freeze_array hang + - md/raid5: preserve STRIPE_PREREAD_ACTIVE in break_stripe_batch_list + - md: multipath: don't hardcopy bio in .make_request path + - Revert "UBUNTU: SAUCE: (noup) fuse: Add reference counting for fuse_io_priv" + - Revert "UBUNTU: SAUCE: (noup) fuse: do not use iocb after it may have been + freed" + - fuse: do not use iocb after it may have been freed + - fuse: Add reference counting for fuse_io_priv + - fs/coredump: prevent fsuid=0 dumps into user-controlled directories + - rapidio/rionet: fix deadlock on SMP + - ipr: Fix out-of-bounds null overwrite + - ipr: Fix regression when loading firmware + - iwlwifi: mvm: Fix paging memory leak + - drm/radeon: disable runtime pm on PX laptops without dGPU power control + - drm/radeon: Don't drop DP 2.7 Ghz link setup on some cards. + - drm/amdgpu: disable runtime pm on PX laptops without dGPU power control + - drm/amdgpu: include the right version of gmc header files for iceland + - IB/ipoib: fix for rare multicast join race condition + - tracing: Have preempt(irqs)off trace preempt disabled functions + - tracing: Fix crash from reading trace_pipe with sendfile + - tracing: Fix trace_printk() to print when not using bprintk() + - bitops: Do not default to __clear_bit() for __clear_bit_unlock() + - scripts/coccinelle: modernize & + - scripts/kconfig: allow building with make 3.80 again + - kbuild/mkspec: fix grub2 installkernel issue + - MAINTAINERS: Update mailing list and web page for hwmon subsystem + - ideapad-laptop: Add ideapad Y700 (15) to the no_hw_rfkill DMI list + - mmc: block: fix ABI regression of mmc_blk_ioctl + - mmc: mmc_spi: Add Card Detect comments and fix CD GPIO case + - mmc: sdhci: fix data timeout (part 1) + - mmc: sdhci: fix data timeout (part 2) + - mmc: sdhci: Fix override of timeout clk wrt max_busy_timeout + - clk: rockchip: rk3368: fix cpuclk mux bit of big cpu-cluster + - clk: rockchip: rk3368: fix cpuclk core dividers + - clk: rockchip: rk3368: fix parents of video encoder/decoder + - clk: rockchip: rk3368: fix hdmi_cec gate-register + - clk: rockchip: add hclk_cpubus to the list of rk3188 critical clocks + - clk: bcm2835: Fix setting of PLL divider clock rates + - target: Fix target_release_cmd_kref shutdown comp leak + - iser-target: Fix identification of login rx descriptor type + - iser-target: Add new state ISER_CONN_BOUND to isert_conn + - iser-target: Separate flows for np listeners and connections cma events + - iser-target: Rework connection termination + - nfsd4: fix bad bounds checking + - nfsd: fix deadlock secinfo+readdir compound + - ARM: dts: at91: sama5d3 Xplained: don't disable hsmci regulator + - ARM: dts: at91: sama5d4 Xplained: don't disable hsmci regulator + - ACPI / PM: Runtime resume devices when waking from hibernate + - writeback, cgroup: fix premature wb_put() in + locked_inode_to_wb_and_lock_list() + - writeback, cgroup: fix use of the wrong bdi_writeback which mismatches the + inode + - Revert "UBUNTU: SAUCE: (noup) Input: synaptics - handle spurious release of + trackstick buttons, again" + - Input: synaptics - handle spurious release of trackstick buttons, again + - Input: ims-pcu - sanity check against missing interfaces + - Input: ati_remote2 - fix crashes on detecting device with invalid descriptor + - ocfs2/dlm: fix race between convert and recovery + - ocfs2/dlm: fix BUG in dlm_move_lockres_to_recovery_list + - mm/page_alloc: prevent merging between isolated and other pageblocks + - mtd: onenand: fix deadlock in onenand_block_markbad + - PM / sleep: Clear pm_suspend_global_flags upon hibernate + - scsi_common: do not clobber fixed sense information + - sched/cputime: Fix steal time accounting vs. CPU hotplug + - perf/x86/pebs: Add workaround for broken OVFL status on HSW+ + - perf/x86/intel: Fix PEBS warning by only restoring active PMU in pmi + - perf/x86/intel: Fix PEBS data source interpretation on Nehalem/Westmere + - Linux 4.4.7 + + * QCA9565 / AR9565 bluetooth not work (LP: #1542944) + - Bluetooth: Add new AR3012 ID 0489:e095 + + * The mic mute key and led can't work on a Lenovo AIO machine (LP: #1555912) + - ALSA: hda - fix the mic mute button and led problem for a Lenovo AIO + + * 13d3:3472 bluetooth not working, 4.2 low latency kernel 14.04.1 on asus ROG + gl552jx (LP: #1552925) + - Bluetooth: btusb: Add a new AR3012 ID 13d3:3472 + + * Bluetooth cannot detect other devices (Lite-on 3014 + Atheros AR9565) + (LP: #1546694) + - Bluetooth: btusb: Add a new AR3012 ID 04ca:3014 + + * Atheros AR9462 Bluetooth cannot detect other devices (LP: #1542564) + - Bluetooth: btusb: Add new AR3012 ID 13d3:3395 + + * s390/pci: add extra padding to function measurement block (LP: #1572291) + - s390/pci: add extra padding to function measurement block + + * CVE-2016-3951 (LP: #1567191) + - cdc_ncm: do not call usbnet_link_change from cdc_ncm_bind + - usbnet: cleanup after bind() in probe() + + * linux: Add UEFI keyring for externally signed modules (LP: #1569924) + - efi: Remove redundant efi_set_variable_nonblocking() prototype + - efi/runtime-wrappers: Add a nonblocking version of QueryVariableInfo() + - efi: Add nonblocking option to efi_query_variable_store() + - efi: Add NV memory attribute + - efi: Reformat GUID tables to follow the format in UEFI spec + - efi: stub: implement efi_get_random_bytes() based on EFI_RNG_PROTOCOL + - SAUCE: (noup) Add EFI signature data types + - crypto: KEYS: convert public key and digsig asym to the akcipher api + - [Config] CONFIG_EFI_SIGNATURE_LIST_PARSER=y + - SAUCE: (noup) Add an EFI signature blob parser and key loader. + - [Config] CONFIG_IMA_MOK_KEYRING=y + - IMA: create machine owner and blacklist keyrings + - KEYS: Add an alloc flag to convey the builtinness of a key + - [Config] CONFIG_MODULE_SIG_UEFI=y, CONFIG_SYSTEM_BLACKLIST_KEYRING=y + - SAUCE: (noup) KEYS: Add a system blacklist keyring + - SAUCE: (noup) MODSIGN: Support not importing certs from db + + * Miscellaneous Ubuntu changes + - [Config] CONFIG_PUBLIC_KEY_ALGO_RSA=y + + -- Kamal Mostafa Sun, 24 Apr 2016 12:12:13 -0700 + +linux (4.4.0-21.37) xenial; urgency=low + + [ Tim Gardner ] + + * Release Tracking Bug + - LP: #1571791 + + * linux: MokSBState is ignored (LP: #1571691) + - SAUCE: (noup) MODSIGN: Import certificates from UEFI Secure Boot + - SAUCE: (noup) efi: Disable secure boot if shim is in insecure mode + - SAUCE: (noup) Display MOKSBState when disabled + + -- Tim Gardner Mon, 18 Apr 2016 07:00:22 -0600 + +linux (4.4.0-20.36) xenial; urgency=low + + [ Tim Gardner ] + + * Release Tracking Bug + - LP: #1571069 + + * sysfs mount failure during stateful lxd snapshots (LP: #1570906) + - SAUCE: kernfs: Do not match superblock in another user namespace when + mounting + + * Kernel Panic in Ubuntu 16.04 netboot installer (LP: #1570441) + - x86/topology: Fix logical package mapping + - x86/topology: Fix Intel HT disable + - x86/topology: Use total_cpus not nr_cpu_ids for logical packages + - xen/apic: Provide Xen-specific version of cpu_present_to_apicid APIC op + - x86/topology: Fix AMD core count + + * [regression]: Failed to call clock_adjtime(): Invalid argument + (LP: #1566465) + - ntp: Fix ADJ_SETOFFSET being used w/ ADJ_NANO + + -- Tim Gardner Thu, 14 Apr 2016 06:31:56 -0600 + +linux (4.4.0-19.35) xenial; urgency=low + + [ Tim Gardner ] + + * Release Tracking Bug + - LP: #1570348 + + * CVE-2016-2847 (LP: #1554260) + - pipe: limit the per-user amount of pages allocated in pipes + + * xenial kernel crash on HP BL460c G7 (qla24xx problem?) (LP: #1554003) + - SAUCE: (noup) qla2xxx: Add irq affinity notification V2 + + * arm64: guest hangs when ntpd is running (LP: #1549494) + - SAUCE: (noup) KVM: arm/arm64: Handle forward time correction gracefully + + * linux: Enforce signed module loading when UEFI secure boot (LP: #1566221) + - [Config] CONFIG_EFI_SECURE_BOOT_SIG_ENFORCE=y + + * s390/cpumf: Fix lpp detection (LP: #1555344) + - s390/facilities: use stfl mnemonic instead of insn magic + - s390/facilities: always use lowcore's stfle field for storing facility bits + - s390/cpumf: Fix lpp detection + + * s390x kernel image needs weightwatchers (LP: #1536245) + - [Config] s390x: Use compressed kernel bzImage + + * Surelock GA2 SP1: surelock02p05: Not seeing sgX devices for LUNs after + upgrading to Ubuntu 16.04 (LP: #1567581) + - Revert "UBUNTU: SAUCE: (noup) powerpc/pci: Assign fixed PHB number based on + device-tree properties" + + * Backport upstream bugfixes to ubuntu-16.04 (LP: #1555765) + - cpufreq: powernv: Define per_cpu chip pointer to optimize hot-path + - Revert "cpufreq: postfix policy directory with the first CPU in related_cpus" + - cpufreq: powernv: Add sysfs attributes to show throttle stats + + * systemd-modules-load.service: Failing due to missing module 'ib_iser' (LP: #1566468) + - [Config] Add ib_iser to generic inclusion list + + * thunderx nic performance improvements (LP: #1567093) + - net: thunderx: Set recevie buffer page usage count in bulk + - net: thunderx: Adjust nicvf structure to reduce cache misses + + * fixes for thunderx nic in multiqueue mode (LP: #1567091) + - net: thunderx: Fix for multiqset not configured upon interface toggle + - net: thunderx: Fix for HW TSO not enabled for secondary qsets + - net: thunderx: Fix receive packet stats + + * Miscellaneous Ubuntu changes + - [Config] updateconfigs after CONFIG_DRM_I915_BPO_PRELIMINARY_HW_SUPPORT=n + + * Miscellaneous upstream changes (LP: #1564901) + - Input: xpad - correctly handle concurrent LED and FF requests + + -- Tim Gardner Thu, 07 Apr 2016 07:32:16 +0100 + +linux (4.4.0-18.34) xenial; urgency=low + + [ Tim Gardner ] + + * Release Tracking Bug + - LP: #1566868 + + * [i915_bpo] Fix RC6 on SKL GT3 & GT4 (LP: #1564759) + - SAUCE: i915_bpo: drm/i915/skl: Fix rc6 based gpu/system hang + - SAUCE: i915_bpo: drm/i915/skl: Fix spurious gpu hang with gt3/gt4 revs + + * CONFIG_ARCH_ROCKCHIP not enabled in armhf generic kernel (LP: #1566283) + - [Config] CONFIG_ARCH_ROCKCHIP=y + + * [Feature] Memory Bandwidth Monitoring (LP: #1397880) + - perf/x86/cqm: Fix CQM handling of grouping events into a cache_group + - perf/x86/cqm: Fix CQM memory leak and notifier leak + - x86/cpufeature: Carve out X86_FEATURE_* + - Merge branch 'timers-core-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip + - x86/topology: Create logical package id + - perf/x86/mbm: Add Intel Memory B/W Monitoring enumeration and init + - perf/x86/mbm: Add memory bandwidth monitoring event management + - perf/x86/mbm: Implement RMID recycling + - perf/x86/mbm: Add support for MBM counter overflow handling + + * User namespace mount updates (LP: #1566505) + - SAUCE: quota: Require that qids passed to dqget() be valid and map into s_user_ns + - SAUCE: fs: Allow superblock owner to change ownership of inodes with unmappable ids + - SAUCE: fuse: Don't initialize user_id or group_id in mount options + - SAUCE: cgroup: Use a new super block when mounting in a cgroup namespace + - SAUCE: fs: fix a posible leak of allocated superblock + + * [arm64] kernel BUG at /build/linux-StrpB2/linux-4.4.0/fs/ext4/inode.c:2394! + (LP: #1566518) + - arm64: Honour !PTE_WRITE in set_pte_at() for kernel mappings + - arm64: Update PTE_RDONLY in set_pte_at() for PROT_NONE permission + + * [Feature]USB core and xHCI tasks for USB 3.1 SuperSpeedPlus (SSP) support + for Alpine Ridge on SKL (LP: #1519623) + - usb: define USB_SPEED_SUPER_PLUS speed for SuperSpeedPlus USB3.1 devices + - usb: set USB 3.1 roothub device speed to USB_SPEED_SUPER_PLUS + - usb: show speed "10000" in sysfs for USB 3.1 SuperSpeedPlus devices + - usb: add device descriptor for usb 3.1 root hub + - usb: Support USB 3.1 extended port status request + - xhci: Make sure xhci handles USB_SPEED_SUPER_PLUS devices. + - xhci: set roothub speed to USB_SPEED_SUPER_PLUS for USB3.1 capable controllers + - xhci: USB 3.1 add default Speed Attributes to SuperSpeedPlus device capability + - xhci: set slot context speed field to SuperSpeedPlus for USB 3.1 SSP devices + - usb: Add USB3.1 SuperSpeedPlus Isoc Endpoint Companion descriptor + - usb: Parse the new USB 3.1 SuperSpeedPlus Isoc endpoint companion descriptor + - usb: Add USB 3.1 Precision time measurement capability descriptor support + - xhci: refactor and cleanup endpoint initialization. + - xhci: Add SuperSpeedPlus high bandwidth isoc support to xhci endpoints + - xhci: cleanup isoc tranfers queuing code + - xhci: Support extended burst isoc TRB structure used by xhci 1.1 for USB 3.1 + - SAUCE: (noup) usb: fix regression in SuperSpeed endpoint descriptor parsing + + * wrong/missing permissions for device file /dev/prandom (prng.ko) + (LP: #1558275) + - s390/crypto: provide correct file mode at device register. + + * The Front MIC jack can't work on a HP desktop machine (LP: #1564712) + - ALSA: hda - fix front mic problem for a HP desktop + + * HP Notebook Probook 440 G3 HDA Intel PCH horrible sounds while booting + (LP: #1556228) + - ALSA: hda - Apply reboot D3 fix for CX20724 codec, too + + * please provide mmc-modules udeb (LP: #1565765) + - [Config] Add mmc block drivers to d-i + + * linux: Enforce signed module loading when UEFI secure boot (LP: #1566221) + - Add secure_modules() call + - PCI: Lock down BAR access when module security is enabled + - x86: Lock down IO port access when module security is enabled + - ACPI: Limit access to custom_method + - asus-wmi: Restrict debugfs interface when module loading is restricted + - Restrict /dev/mem and /dev/kmem when module loading is restricted + - acpi: Ignore acpi_rsdp kernel parameter when module loading is restricted + - kexec: Disable at runtime if the kernel enforces module loading restrictions + - x86: Restrict MSR access when module loading is restricted + - [Config] CONFIG_EFI_SECURE_BOOT_SIG_ENFORCE=n + - Add option to automatically enforce module signatures when in Secure Boot mode + - efi: Make EFI_SECURE_BOOT_SIG_ENFORCE depend on EFI + - efi: Add EFI_SECURE_BOOT bit + - hibernate: Disable in a signed modules environment + + * [Hyper-V] Additional PCI passthrough commits (LP: #1565967) + - PCI: Add fwnode_handle to x86 pci_sysdata + - PCI: Look up IRQ domain by fwnode_handle + - [Config] CONFIG_PCI_HYPERV=m + - PCI: hv: Add paravirtual PCI front-end for Microsoft Hyper-V VMs + + * [Bug]Lenovo Yoga 260 and Carbon X1 4th gen freeze on HWP enable + (LP: #1559923) + - ACPI / processor: Request native thermal interrupt handling via _OSC + + * Sync kernel zfs 0.6.5.6 - align with zfsutils-linux and spl packages + (LP: #1564591) + - SAUCE: (noup) Update spl to 0.6.5.6-0ubuntu1, zfs to 0.6.5.6-0ubuntu3 + + * [Ubuntu 16.04.1] RELEASE and ACQUIRE atomics on Power (LP: #1556096) + - atomics: Allow architectures to define their own __atomic_op_* helpers + - powerpc: atomic: Implement atomic{, 64}_*_return_* variants + - powerpc: atomic: Implement acquire/release/relaxed variants for xchg + - powerpc: atomic: Implement acquire/release/relaxed variants for cmpxchg + + * fix for do_tools_cpupower when cross-compiling (LP: #1564206) + - [Debian] cpupower uses non-standard CROSS + + * ISST:LTE: Regression: roselp2 Oops in kernel during setup io (LP: #1546439) + - SAUCE: block: partition: initialize percpuref before sending out KOBJ_ADD + + * Unable to migrate container (LP: #1563921) + - SAUCE: cgroup mount: ignore nsroot= + + * [Hyper-V] patch inclusion in 16.04 for NIC hot add/remove (LP: #1563688) + - hv_netvsc: Move subchannel waiting to rndis_filter_device_remove() + + * /proc/$pid/maps performance regression (LP: #1547231) + - proc: revert /proc//maps [stack:TID] annotation + + * TPM2.0 trusted keys fixes (LP: #1398274) + - tpm: remove unneeded include of actbl2.h + - tpm: fix checks for policy digest existence in tpm2_seal_trusted() + - tpm_crb: Use the common ACPI definition of struct acpi_tpm2 + - tpm_tis: Disable interrupt auto probing on a per-device basis + - tpm_tis: Do not fall back to a hardcoded address for TPM2 + - tpm_tis: Use devm_ioremap_resource + - tpm_tis: Clean up the force=1 module parameter + - tpm_crb: Drop le32_to_cpu(ioread32(..)) + - tpm_crb: Use devm_ioremap_resource + - tpm: fix the rollback in tpm_chip_register() + - tpm: fix the cleanup of struct tpm_chip + - tpm: fix: set continueSession attribute for the unseal operation + - tpm: fix: return rc when devm_add_action() fails + - tpm_eventlog.c: fix binary_bios_measurements + - tpm_crb/tis: fix: use dev_name() for /proc/iomem + - tpm_crb: tpm2_shutdown() must be called before tpm_chip_unregister() + - tpm_tis: fix build warning with tpm_tis_resume + + * [Feature]intel_idle driver support for Knights Landing (LP: #1461365) + - intel_idle: Support for Intel Xeon Phi Processor x200 Product Family + + * cxlflash: Backport upstream cxlflash commits and submitting a noup patch to + Xenial (LP: #1563485) + - cxlflash: Fix to avoid unnecessary scan with internal LUNs + - cxlflash: Increase cmd_per_lun for better throughput + - SAUCE: (noup) cxlflash: Move to exponential back-off when cmd_room is not available + + * Miscellaneous Ubuntu changes + - [Config] do_zfs_powerpc64-smp = true + - [Debian] fix linux_tools when cross-compiling + - [Config] do_zfs_powerpc64-smp use default value + - SAUCE: apparmor: Fix FTBFS due to bad include path + - SAUCE: i915_bpo: Disable preliminary hw support + + -- Tim Gardner Tue, 29 Mar 2016 15:31:33 -0600 + +linux (4.4.0-17.33) xenial; urgency=low + + [ Tim Gardner ] + + * Release Tracking Bug + - LP: #1563441 + + * ISST-LTE: pVM:high cpus number need a high crashkernel value in kdump + (LP: #1560552) + - SAUCE: (noup) ppc64 boot: Wait for boot cpu to show up if nr_cpus limit is + about to hit. + + * Predictable naming mechanism is leading to issues in DLPAR operations of + NICs (LP: #1560514) + - SAUCE: (noup) powerpc/pci: Assign fixed PHB number based on device-tree + properties + + * ThunderX: support alternative phy implementations (LP: #1562968) + - net: thunderx: Cleanup PHY probing code. + - [Config] CONFIG_MDIO_CAVIUM=m + - phy: mdio-octeon: Refactor into two files/modules + - [Config] CONFIG_MDIO_THUNDER=m + - phy: mdio-thunder: Add driver for Cavium Thunder SoC MDIO buses. + - phy: mdio-cavium: Add missing MODULE_* annotations. + - net: cavium: For Kconfig THUNDER_NIC_BGX, select MDIO_THUNDER. + - phy: mdio-thunder: Fix some Kconfig typos + - [d-i] Add phy drivers for Cavium ThunderX to nic-modules udeb + + * linux: exclude ZONE_DEVICE from GFP_ZONE_TABLE (LP: #1563293) + - Revert "mm: CONFIG_NR_ZONES_EXTENDED" + - mm: exclude ZONE_DEVICE from GFP_ZONE_TABLE + + * lots of printk to serial console can hang system for long time + (LP: #1534216) + - printk: set may_schedule for some of console_trylock() callers + + * [i915_bpo] Update i915 backport driver (LP: #1560395) + - SAUCE: i915_bpo: Update to drm-intel-next-fixes-2016-03-16 + - PM / runtime: Add new helper for conditional usage count incrementation + - drm/core: Add drm_for_each_encoder_mask, v2. + - drm/atomic-helper: Implement subsystem-level suspend/resume + + * [Hyper-V] VM Sockets (LP: #1541585) + - Drivers: hv: vmbus: Cleanup vmbus_set_event() + - Drivers: hv: vmbus: Add vendor and device atttributes + - Drivers: hv: vmbus: avoid infinite loop in init_vp_index() + - Drivers: hv: vmbus: avoid scheduling in interrupt context in vmbus_initiate_unload() + - Drivers: hv: vmbus: don't manipulate with clocksources on crash + - Drivers: hv: vmbus: add a helper function to set a channel's pending send size + - Drivers: hv: vmbus: define the new offer type for Hyper-V socket (hvsock) + - Drivers: hv: vmbus: vmbus_sendpacket_ctl: hvsock: avoid unnecessary signaling + - Drivers: hv: vmbus: define a new VMBus message type for hvsock + - Drivers: hv: vmbus: add a hvsock flag in struct hv_driver + - Drivers: hv: vmbus: add a per-channel rescind callback + - Drivers: hv: vmbus: add an API vmbus_hvsock_device_unregister() + - Drivers: hv: vmbus: Eliminate the spin lock on the read path + - Drivers: hv: vmbus: Give control over how the ring access is serialized + - drivers/hv: Move VMBus hypercall codes into Hyper-V UAPI header + - Drivers: hv: vmbus: don't loose HVMSG_TIMER_EXPIRED messages + - Drivers: hv: vmbus: avoid wait_for_completion() on crash + - Drivers: hv: vmbus: remove code duplication in message handling + - Drivers: hv: vmbus: avoid unneeded compiler optimizations in vmbus_wait_for_unload() + - Drivers: hv: util: Pass the channel information during the init call + - Drivers: hv: utils: Remove util transport handler from list if registration fails + - Revert "Drivers: hv: vmbus: Support handling messages on multiple CPUs" + - Drivers: hv: vmbus: Support handling messages on multiple CPUs + + * [Bug]SKL-H boot hang when c8+c9+c10 enabled by intel_idle driver + (LP: #1559918) + - intel_idle: prevent SKL-H boot failure when C8+C9+C10 enabled + + * ixgbe: Update to Fortville SW5 release (LP: #1562326) + - net: add tc offload feature flag + - net: tc: helper functions to query action types + - sctp: Rename NETIF_F_SCTP_CSUM to NETIF_F_SCTP_CRC + - net: rework ndo tc op to consume additional qdisc handle parameter + - net: rework setup_tc ndo op to consume general tc operand + - net: sched: add cls_u32 offload hooks for netdevs + - net: ixgbe: add support for tc_u32 offload + - net: ixgbe: abort with cls u32 divisor groups greater than 1 + + * Bring fm10k up to Fortville SW5 (LP: #1562310) + - net: add netif_is_team_master helper + - net: add netif_is_team_port helper + - net: add netif_is_lag_master helper + - net: add netif_is_lag_port helper + - ethtool: correctly ensure {GS}CHANNELS doesn't conflict with GS{RXFH} + - fm10k: don't reinitialize RSS flow table when RXFH configured + + * [Feature]Always Running Timer (ART) to System Time translation + (LP: #1519625) + - time: Verify time values in adjtimex ADJ_SETOFFSET to avoid overflow + - timekeeping: Provide internal function __ktime_get_real_seconds + - timekeeping: Cap adjustments so they don't exceed the maxadj value + - clocksource: Make clocksource validation work for all clocksources + - time: Add cycles to nanoseconds translation + - time: Add timekeeping snapshot code capturing system time and counter + - time: Remove duplicated code in ktime_get_raw_and_real() + - time: Add driver cross timestamp interface for higher precision time synchronization + - time: Add history to cross timestamp interface supporting slower devices + - time/timekeeping: Work around false positive GCC warning + - x86/tsc: Always Running Timer (ART) correlated clocksource + - ptp: Add PTP_SYS_OFFSET_PRECISE for driver crosstimestamping + - [Config] CONFIG_E1000E_HWTS=y + - e1000e: Adds hardware supported cross timestamp on e1000e nic + + * x-gene2: add SoC v2 support to clock (LP: #1561604) + - clk: xgene: Add SoC and PMD PLL clocks with v2 hardware + + * [Bug]Disable multi-record PEBS on Merom (LP: #1559914) + - perf/x86: Move perf_event.c ............... => x86/events/core.c + - perf/x86: Move perf_event_amd.c ........... => x86/events/amd/core.c + - perf/x86: Move perf_event_amd_ibs.c ....... => x86/events/amd/ibs.c + - perf/x86: Move perf_event_amd_iommu.[ch] .. => x86/events/amd/iommu.[ch] + - perf/x86: Move perf_event_amd_uncore.c .... => x86/events/amd/uncore.c + - perf/x86: Move perf_event_intel_bts.c ........ => x86/events/intel/bts.c + - perf/x86: Move perf_event_intel.c ............ => x86/events/intel/core.c + - perf/x86: Move perf_event_intel_cqm.c ........ => x86/events/intel/cqm.c + - perf/x86: Move perf_event_intel_cstate.c ..... => x86/events/intel/cstate.c + - perf/x86: Move perf_event_intel_ds.c ......... => x86/events/intel/ds.c + - perf/x86: Move perf_event_intel_lbr.c ........ => x86/events/intel/lbr.c + - perf/x86: Move perf_event_intel_pt.[ch] ...... => x86/events/intel/pt.[ch] + - perf/x86: Move perf_event_intel_rapl.c ....... => x86/events/intel/rapl.c + - perf/x86: Move perf_event_intel_uncore.[ch] .. => + x86/events/intel/uncore.[ch] + - perf/x86: Move perf_event_intel_uncore_nhmex.c => + x86/events/intel/uncore_nmhex.c + - perf/x86: Move perf_event_intel_uncore_snb.c => + x86/events/intel/uncore_snb.c + - perf/x86: Move perf_event_intel_uncore_snbep.c => + x86/events/intel/uncore_snbep.c + - perf/x86: Move perf_event_knc.c .............. => x86/events/intel/knc.c + - perf/x86: Move perf_event_p4.c ............... => x86/events/intel/p4.c + - perf/x86: Move perf_event_p6.c ............... => x86/events/intel/p6.c + - perf/x86: Move perf_event_msr.c .............. => x86/events/msr.c + - perf/x86: Move perf_event.h to its new home + - perf/x86/intel: Use PAGE_SIZE for PEBS buffer size on Core2 + + * [Feature] Enable I2C on Broxton-P (LP: #1520139) + - mfd: intel-lpss: Pass I2C configuration via properties on BXT + + -- Tim Gardner Thu, 24 Mar 2016 20:40:27 -0600 + +linux (4.4.0-16.32) xenial; urgency=low + + [ Tim Gardner ] + + * Release Tracking Bug + - LP: #1561727 + + * fix thermal throttling due to commit "Thermal: initialize thermal zone + device correctly" (LP: #1561676) + - Thermal: Ignore invalid trip points + + * Thinkpad T460: Trackpoint mouse buttons instantly generate "release" event + on press (LP: #1553811) + - SAUCE: (noup) Input: synaptics - handle spurious release of trackstick + buttons, again + + * reading /sys/kernel/security/apparmor/profiles requires CAP_MAC_ADMIN + (LP: #1560583) + - SAUCE: apparmor: Allow ns_root processes to open profiles file + - SAUCE: apparmor: Consult sysctl when reading profiles in a user ns + + * linux: sync virtualbox drivers to 5.0.16-dfsg-2 (LP: #1561492) + - ubuntu: vbox -- update to 5.0.16-dfsg-2 + + * s390/kconfig: CONFIG_NUMA without CONFIG_NUMA_EMU does not make any sense on + s390x (LP: #1557690) + - [Config] CONFIG_NUMA_BALANCING_DEFAULT_ENABLED=n for s390x + + * spl/zfs fails to build on s390x (LP: #1519814) + - [Config] s390x -- re-enable zfs + - [Config] zfs -- disable powerpc until the test failures can be resolved + + * linux: sync to ZFS 0.6.5.6 stable release (LP: #1561483) + - SAUCE: (noup) Update spl to 0.6.5.6-0ubuntu1, zfs to 0.6.5.6-0ubuntu1 + + * zfs: enable zfs for 64bit powerpc kernels (LP: #1558871) + - [Packaging] zfs -- handle rprovides via dpkg-gencontrol + - [Config] powerpc -- convert zfs configuration to custom_override + + * Memory arena corruption with FUSE (was Memory allocation failure crashes + kernel hard, presumably related to FUSE) (LP: #1505948) + - SAUCE: (noup) fuse: do not use iocb after it may have been freed + - SAUCE: (noup) fuse: Add reference counting for fuse_io_priv + + * cgroup namespaces: add a 'nsroot=' mountinfo field (LP: #1560489) + - SAUCE: (noup) cgroup namespaces: add a 'nsroot=' mountinfo field + + * linux packaging: clear remaining redundant delta (LP: #1560445) + - [Debian] Remove generated intermediate files on clean + + * arm64: guest hangs when ntpd is running (LP: #1549494) + - Revert "hrtimer: Add support for CLOCK_MONOTONIC_RAW" + - Revert "hrtimer: Catch illegal clockids" + - Revert "KVM: arm/arm64: timer: Switch to CLOCK_MONOTONIC_RAW" + + * Need enough contiguous memory to support GICv3 ITS table (LP: #1558828) + - [Config] CONFIG_FORCE_MAX_ZONEORDER=13 on arm64 + - SAUCE: (no-up) arm64: gicv3: its: Increase FORCE_MAX_ZONEORDER for Cavium + ThunderX + + * update arcmsr to version v1.30.00.22-20151126 to fix card timeouts + (LP: #1559609) + - arcmsr: fixed getting wrong configuration data + - arcmsr: fixes not release allocated resource + - arcmsr: make code more readable + - arcmsr: adds code to support new Areca adapter ARC1203 + - arcmsr: changes driver version number + - arcmsr: more readability improvements + - arcmsr: Split dma resource allocation to a new function + - arcmsr: change driver version to v1.30.00.22-20151126 + + * server image has no keyboard, desktop image works (LP: #1559692) + - [Config] Rework input-modules (d-i) list + + * PMU support for Cavium ThunderX (LP: #1559349) + - arm64: perf: Rename Cortex A57 events + - arm64/perf: Add Cavium ThunderX PMU support + - arm64: perf: Enable PMCR long cycle counter bit + - arm64: perf: Extend event mask for ARMv8.1 + - arm64: dts: Add Cavium ThunderX specific PMU + + * Show ARM PMU events in perf stat (LP: #1559350) + - drivers/perf: kill armpmu_register + - arm: perf: Convert event enums to #defines + - arm: perf: Add event descriptions + - arm64: perf: Convert event enums to #defines + - arm64: perf: Add event descriptions + - ARM: perf: add format entry to describe event -> config mapping + - arm64: perf: add format entry to describe event -> config mapping + + * [Bug]HSW/BDW EDAC driver reports wrong DIMM (LP: #1559904) + - EDAC/sb_edac: Fix computation of channel address + + * 5-10 second delay in kernel boot with kernel command line ip= (LP: #1259861) + - [Config] disable CONFIG_IP_PNP + + * Miscellaneous Ubuntu changes + - [Debian] Silence the reconstruct script + + -- Tim Gardner Mon, 21 Mar 2016 10:15:31 -0600 + +linux (4.4.0-15.31) xenial; urgency=low + + [ Tim Gardner ] + + * Release Tracking Bug + - LP: #1559252 + + * Xilinx KU3 Capi card does not show up in Ubuntu 16.04 (LP: #1557001) + - SAUCE: (noup) cxl: Allow initialization on timebase sync failures + + * policy namespace stacking (LP: #1379535) + - Revert "UBUNTU: SAUCE: Move replacedby allocation into label_alloc" + - Revert "UBUNTU: SAUCE: Fixup: __label_update() still doesn't handle some cases correctly." + - Revert "UBUNTU: SAUCE: fix: audit "no_new_privs" case for exec failure" + - Revert "UBUNTU: SAUCE: fixup: warning about aa_label_vec_find_or_create not being static" + - Revert "UBUNTU: SAUCE: apparmor: fix refcount race when finding a child profile" + - Revert "UBUNTU: SAUCE: fixup: cast poison values to remove warnings" + - Revert "UBUNTU: SAUCE: fixup: get rid of unused var build warning" + - Revert "UBUNTU: SAUCE: fixup: 20/23 locking issue around in __label_update" + - Revert "UBUNTU: SAUCE: fixup: make __share_replacedby private to get rid of build warning" + - Revert "UBUNTU: SAUCE: fix: replacedby forwarding is not being properly update when ns is destroyed" + - Revert "UBUNTU: SAUCE: apparmor: fix log of apparmor audit message when kern_path() fails" + - Revert "UBUNTU: SAUCE: fixup: cleanup return handling of labels" + - Revert "UBUNTU: SAUCE: apparmor: fix: ref count leak when profile sha1 hash is read" + - Revert "UBUNTU: SAUCE: apparmor: Fix: query label file permission" + - Revert "UBUNTU: SAUCE: apparmor: Don't remove label on rcu callback if the label has already been removed" + - Revert "UBUNTU: SAUCE: apparmor: Fix: break circular refcount for label that is directly freed." + - Revert "UBUNTU: SAUCE: apparmor: Fix: refcount bug when inserting label update that transitions ns" + - Revert "UBUNTU: SAUCE: apparmor: Fix: now that insert can force replacement use it instead of remove_and_insert" + - Revert "UBUNTU: SAUCE: apparmor Fix: refcount bug in pivotroot mediation" + - Revert "UBUNTU: SAUCE: apparmor: ensure that repacedby sharing is done correctly" + - Revert "UBUNTU: SAUCE: apparmor: Fix: update replacedby allocation to take a gfp parameter" + - Revert "UBUNTU: SAUCE: apparmor: Fix: convert replacedby update to be protected by the labelset lock" + - Revert "UBUNTU: SAUCE: apparmor: Fix: add required locking of __aa_update_replacedby on merge path" + - Revert "UBUNTU: SAUCE: apparmor: Fix: deadlock in aa_put_label() call chain" + - Revert "UBUNTU: SAUCE: apparmor: Fix: label_vec_merge insertion" + - Revert "UBUNTU: SAUCE: apparmor: Fix: ensure new labels resulting from merge have a replacedby" + - Revert "UBUNTU: SAUCE: apparmor: Fix: refcount leak in aa_label_merge" + - Revert "UBUNTU: SAUCE: apparmor: Fix: refcount race between locating in labelset and get" + - Revert "UBUNTU: SAUCE: apparmor: Fix: label merge handling of marking unconfined and stale" + - Revert "UBUNTU: SAUCE: apparmor: add underscores to indicate aa_label_next_not_in_set() use needs locking" + - Revert "UBUNTU: SAUCE: apparmor: debug: POISON label and replaceby pointer on free" + - Revert "UBUNTU: SAUCE: apparmor: Fix: ensure aa_get_newest will trip debugging if the replacedby is not setup" + - Revert "UBUNTU: SAUCE: apparmor: Fix: insert race between label_update and label_merge" + - Revert "UBUNTU: SAUCE: apparmor: rework retrieval of the current label in the profile update case" + - Revert "UBUNTU: SAUCE: apparmor: Disallow update of cred when then subjective != the objective cred" + - Revert "UBUNTU: SAUCE: apparmor: Fix: oops do to invalid null ptr deref in label print fns" + - Revert "UBUNTU: SAUCE: fix-up: kern_mount fail path should not be doing put_buffers()" + - Revert "UBUNTU: SAUCE: apparmor: fix sleep from invalid context" + - Revert "UBUNTU: SAUCE: (no-up): apparmor: fix for failed mediation of socket that is being shutdown" + - Revert "UBUNTU: SAUCE: (no-up) apparmor: Fix incompatible pointer type warnings" + - Revert "UBUNTU: SAUCE: (no-up) apparmor: fix mount not handling disconnected paths" + - Revert "UBUNTU: SAUCE: (no-up): apparmor: fix mediation of fs unix sockets" + - Revert "UBUNTU: apparmor -- follow change to this_cpu_ptr" + - Revert "UBUNTU: SAUCE: (no-up) fix: bad unix_addr_fs macro" + - Revert "UBUNTU: SAUCE: Revert: fix: only allow a single threaded process to ..." + - Revert "UBUNTU: SAUCE: (no-up) apparmor: Sync to apparmor3 - RC1 snapshot" + - Revert "UBUNTU: SAUCE: (no-up) apparmor: add parameter to control whether policy hashing is used" + - SAUCE: (no-up) apparmor: sync of apparmor3.5-beta1 snapshot + - SAUCE: add a sysctl to enable unprivileged user ns AppArmor policy loading + + * Add arm64 NUMA support (LP: #1558765) + - SAUCE: (noup) efi: ARM/arm64: ignore DT memory nodes instead of removing them + - SAUCE: (noup) Documentation, dt, numa: dt bindings for NUMA. + - [Config] CONFIG_OF_NUMA=y + - SAUCE: (noup) of, numa: Add NUMA of binding implementation. + - SAUCE: (noup) arm64: Move unflatten_device_tree() call earlier. + - [Config] CONFIG_NUMA=y and CONFIG_NODES_SHIFT=2 on arm64 + - SAUCE: (noup) arm64, numa: Add NUMA support for arm64 platforms. + - SAUCE: (noup) arm64, mm, numa: Add NUMA balancing support for arm64. + + * vivid/linux: total ADT test failures (LP: #1558447) + - Revert "Revert "af_unix: Revert 'lock_interruptible' in stream receive code"" + + * [Hyper-V] patches to allow kdump crash through NMI (LP: #1558720) + - Drivers: hv: vmbus: Support handling messages on multiple CPUs + - Drivers: hv: vmbus: Support kexec on ws2012 r2 and above + + * s390/pci: enforce fmb page boundary rule (LP: #1558625) + - s390/pci: enforce fmb page boundary rule + + * s390/pci: backport upstream commits since v4.4 (LP: #1558624) + - s390/pci_dma: fix DMA table corruption with > 4 TB main memory + - page_to_phys() always returns a multiple of PAGE_SIZE + - s390/pci: provide ZPCI_ADDR macro + - s390/pci: improve ZPCI_* macros + - s390/pci: resize iomap + - s390/pci: fix bar check + - s390/pci: set error state for unusable functions + - s390/pci: remove iomap sanity checks + - s390/pci: remove pdev pointer from arch data + - s390/pci: add ioctl interface for CLP + + * IMA-appraisal is unusable in Ubuntu 16.04 (LP: #1558553) + - [Config] CONFIG_SYSTEM_EXTRA_CERTIFICATE=y, CONFIG_SYSTEM_EXTRA_CERTIFICATE_SIZE=4096 + - KEYS: Use the symbol value for list size, updated by scripts/insert-sys-cert + - KEYS: Reserve an extra certificate symbol for inserting without recompiling + - SAUCE: (noup) KEYS: Support for inserting a certificate into x86 bzImage + + * skb_warn_bad_offload Crash (LP: #1558025) + - ipv4: only create late gso-skb if skb is already set up with CHECKSUM_PARTIAL + + * Add PCIe root complex to Cavium arm64 (LP: #1558342) + - [Config] CONFIG_PCI_HOST_COMMON=y + - [Config] CONFIG_PCI_HOST_THUNDER_PEM=y + - [Config] CONFIG_PCI_HOST_THUNDER_ECAM=y + - PCI: generic: Move structure definitions to separate header file + - PCI: generic: Add pci_host_common_probe(), based on gen_pci_probe() + - PCI: generic: Expose pci_host_common_probe() for use by other drivers + - PCI: thunder: Add PCIe host driver for ThunderX processors + - PCI: thunder: Add driver for ThunderX-pass{1,2} on-chip devices + + * [Hyper-V] vmbus: Fix a bug in hv_need_to_signal_on_read() (LP: #1556264) + - SAUCE: (noup) Drivers: hv: vmbus: Fix a bug in hv_need_to_signal_on_read() + + * Xenial update to v4.4.6 stable release (LP: #1558330) + - arm64: account for sparsemem section alignment when choosing vmemmap offset + - ARM: mvebu: fix overlap of Crypto SRAM with PCIe memory window + - ARM: dts: dra7: do not gate cpsw clock due to errata i877 + - ARM: OMAP2+: hwmod: Introduce ti,no-idle dt property + - PCI: Allow a NULL "parent" pointer in pci_bus_assign_domain_nr() + - kvm: cap halt polling at exactly halt_poll_ns + - KVM: VMX: disable PEBS before a guest entry + - KVM: s390: correct fprs on SIGP (STOP AND) STORE STATUS + - KVM: PPC: Book3S HV: Sanitize special-purpose register values on guest exit + - KVM: MMU: fix ept=0/pte.u=1/pte.w=0/CR0.WP=0/CR4.SMEP=1/EFER.NX=0 combo + - KVM: MMU: fix reserved bit check for ept=0/CR0.WP=0/CR4.SMEP=1/EFER.NX=0 + - s390/dasd: fix diag 0x250 inline assembly + - tracing: Fix check for cpu online when event is disabled + - dmaengine: at_xdmac: fix residue computation + - jffs2: reduce the breakage on recovery from halfway failed rename() + - ncpfs: fix a braino in OOM handling in ncp_fill_cache() + - ASoC: dapm: Fix ctl value accesses in a wrong type + - ASoC: samsung: Use IRQ safe spin lock calls + - ASoC: wm8994: Fix enum ctl accesses in a wrong type + - ASoC: wm8958: Fix enum ctl accesses in a wrong type + - ovl: ignore lower entries when checking purity of non-directory entries + - ovl: fix working on distributed fs as lower layer + - wext: fix message delay/ordering + - cfg80211/wext: fix message ordering + - can: gs_usb: fixed disconnect bug by removing erroneous use of kfree() + - iwlwifi: mvm: inc pending frames counter also when txing non-sta + - mac80211: minstrel: Change expected throughput unit back to Kbps + - mac80211: fix use of uninitialised values in RX aggregation + - mac80211: minstrel_ht: set default tx aggregation timeout to 0 + - mac80211: minstrel_ht: fix a logic error in RTS/CTS handling + - mac80211: check PN correctly for GCMP-encrypted fragmented MPDUs + - mac80211: Fix Public Action frame RX in AP mode + - gpu: ipu-v3: Do not bail out on missing optional port nodes + - drm/amdgpu: Fix error handling in amdgpu_flip_work_func. + - drm/radeon: Fix error handling in radeon_flip_work_func. + - Revert "drm/radeon/pm: adjust display configuration after powerstate" + - userfaultfd: don't block on the last VM updates at exit time + - ovl: fix getcwd() failure after unsuccessful rmdir + - MIPS: Fix build error when SMP is used without GIC + - MIPS: smp.c: Fix uninitialised temp_foreign_map + - block: don't optimize for non-cloned bio in bio_get_last_bvec() + - target: Drop incorrect ABORT_TASK put for completed commands + - ld-version: Fix awk regex compile failure + - Linux 4.4.6 + + * linux fails to load x.509 built-in certificate (LP: #1557250) + - lib/mpi: Endianness fix + + * s390/kconfig: setting for CONFIG...9P.... (LP: #1557994) + - [Config] CONFIG_NET_9P=m for s390x + + * mlx5_core kernel trace after "ethtool -C eth1 adaptive-rx on" flow + (LP: #1557950) + - net/mlx5e: Don't try to modify CQ moderation if it is not supported + - net/mlx5e: Don't modify CQ before it was created + + * [Feature]SD/SDIO/eMMC support for Broxton-P (LP: #1520454) + - mmc: sdhci: Do not BUG on invalid vdd + - mmc: enable MMC/SD/SDIO device to suspend/resume asynchronously + - mmc: It is not an error for the card to be removed while suspended + + * s390/kconfig: disable CONFIG_VIRTIO_MMIO (LP: #1557689) + - [Config] CONFIG_VIRTIO_MMIO=n for s390x + + * s390/kconfig: CONFIG_NUMA without CONFIG_NUMA_EMU does not make any sense on s390x (LP: #1557690) + - [Config] CONFIG_NUMA_EMU=y for s390x + + * Miscellaneous Ubuntu changes + - [Debian] git-ubuntu-log -- prevent bug references being split + - [Debian] git-ubuntu-log -- git log output is UTF-8 + + -- Tim Gardner Tue, 15 Mar 2016 13:18:58 -0600 + +linux (4.4.0-14.30) xenial; urgency=low + + [ Tim Gardner ] + + * Release Tracking Bug + - LP: #1557508 + + * Current 4.4 kernel won't boot on powerpc (LP: #1557130) + - powerpc: Fix dedotify for binutils >= 2.26 + + * ZFS: send fails to transmit some holes [corruption] (LP: #1557151) + - Illumos 6370 - ZFS send fails to transmit some holes + + * Request to cherry-pick uvcvideo patch for Xenial kernel support of RealSense + camera (LP: #1557138) + - UVC: Add support for ds4 depth camera + + * use after free of task_struct->numa_faults in task_numa_find_cpu (LP: #1527643) + - sched/numa: Fix use-after-free bug in the task_numa_compare + + * overlay fs regression: chmod fails with "Operation not permitted" on chowned + files (LP: #1555997) + - ovl: copy new uid/gid into overlayfs runtime inode + + * Miscellaneous Ubuntu changes + - SAUCE: Dump stack when X.509 certificates cannot be loaded + + -- Tim Gardner Mon, 14 Mar 2016 07:16:19 -0600 + +linux (4.4.0-13.29) xenial; urgency=low + + [ Tim Gardner ] + + * Release Tracking Bug + - LP: #1556247 + + * s390/mm: four page table levels vs. fork (LP: #1556141) + - s390/mm: four page table levels vs. fork + + * [Hyper-V] network performance patches for Xenial 16.04 (LP: #1556037) + - hv_netvsc: use skb_get_hash() instead of a homegrown implementation + - hv_netvsc: cleanup netdev feature flags for netvsc + + * fails to boot on megaraid (LP: #1552903) + - SAUCE: (noup) megaraid_sas: Don't issue kill adapter for MFI controllers in + case of PD list DCMD failure + + * ALSA: hda - add codec support for Kabylake display audio codec (LP: #1556002) + - ALSA: hda - add codec support for Kabylake display audio codec + + * Backport upstream bugfixes to ubuntu-16.04 (LP: #1555765) + - cpufreq: powernv: Free 'chips' on module exit + - cpufreq: powernv: Hot-plug safe the kworker thread + - cpufreq: powernv: Remove cpu_to_chip_id() from hot-path + - cpufreq: powernv/tracing: Add powernv_throttle tracepoint + - cpufreq: powernv: Replace pr_info with trace print for throttle event + - SAUCE: (noup) cpufreq: powernv: Fix bugs in powernv_cpufreq_{init/exit} + + * Linux netfilter IPT_SO_SET_REPLACE memory corruption (LP: #1555338) + - SAUCE: [nf,v2] netfilter: x_tables: don't rely on well-behaving userspace + + * integer overflow in xt_alloc_table_info (LP: #1555353) + - SAUCE: (noup) netfilter: x_tables: check for size overflow + + * linux: auto-generate the reconstruct information from the git tag (LP: #1555543) + - [Packaging] reconstruct -- automatically reconstruct against base tag + - [Config] reconstruct -- update to autoreconstruct output + - [Packaging] reconstruct -- update when inserting final changes + + * Xenial update to v4.4.5 stable release (LP: #1555640) + - use ->d_seq to get coherency between ->d_inode and ->d_flags + - drivers: sh: Restore legacy clock domain on SuperH platforms + - Btrfs: fix deadlock running delayed iputs at transaction commit time + - btrfs: Fix no_space in write and rm loop + - btrfs: async-thread: Fix a use-after-free error for trace + - block: Initialize max_dev_sectors to 0 + - PCI: keystone: Fix MSI code that retrieves struct pcie_port pointer + - parisc: Fix ptrace syscall number and return value modification + - mips/kvm: fix ioctl error handling + - kvm: x86: Update tsc multiplier on change. + - fbcon: set a default value to blink interval + - cifs: fix out-of-bounds access in lease parsing + - CIFS: Fix SMB2+ interim response processing for read requests + - Fix cifs_uniqueid_to_ino_t() function for s390x + - vfio: fix ioctl error handling + - KVM: x86: fix root cause for missed hardware breakpoints + - arm/arm64: KVM: Fix ioctl error handling + - iommu/amd: Apply workaround for ATS write permission check + - iommu/amd: Fix boot warning when device 00:00.0 is not iommu covered + - iommu/vt-d: Use BUS_NOTIFY_REMOVED_DEVICE in hotplug path + - target: Fix WRITE_SAME/DISCARD conversion to linux 512b sectors + - drm/ast: Fix incorrect register check for DRAM width + - drm/radeon/pm: update current crtc info after setting the powerstate + - drm/amdgpu/pm: update current crtc info after setting the powerstate + - drm/amdgpu: apply gfx_v8 fixes to gfx_v7 as well + - drm/amdgpu/gfx8: specify which engine to wait before vm flush + - drm/amdgpu: return from atombios_dp_get_dpcd only when error + - libata: fix HDIO_GET_32BIT ioctl + - libata: Align ata_device's id on a cacheline + - block: bio: introduce helpers to get the 1st and last bvec + - writeback: flush inode cgroup wb switches instead of pinning super_block + - Adding Intel Lewisburg device IDs for SATA + - arm64: vmemmap: use virtual projection of linear region + - PM / sleep / x86: Fix crash on graph trace through x86 suspend + - ata: ahci: don't mark HotPlugCapable Ports as external/removable + - tracing: Do not have 'comm' filter override event 'comm' field + - pata-rb532-cf: get rid of the irq_to_gpio() call + - Btrfs: fix loading of orphan roots leading to BUG_ON + - Revert "jffs2: Fix lock acquisition order bug in jffs2_write_begin" + - jffs2: Fix page lock / f->sem deadlock + - Fix directory hardlinks from deleted directories + - dmaengine: pxa_dma: fix cyclic transfers + - adv7604: fix tx 5v detect regression + - ALSA: usb-audio: Add a quirk for Plantronics DA45 + - ALSA: ctl: Fix ioctls for X32 ABI + - ALSA: hda - Fix mic issues on Acer Aspire E1-472 + - ALSA: rawmidi: Fix ioctls X32 ABI + - ALSA: timer: Fix ioctls for X32 ABI + - ALSA: pcm: Fix ioctls for X32 ABI + - ALSA: seq: oss: Don't drain at closing a client + - ALSA: hdspm: Fix wrong boolean ctl value accesses + - ALSA: hdsp: Fix wrong boolean ctl value accesses + - ALSA: hdspm: Fix zero-division + - ALSA: timer: Fix broken compat timer user status ioctl + - usb: chipidea: otg: change workqueue ci_otg as freezable + - USB: cp210x: Add ID for Parrot NMEA GPS Flight Recorder + - USB: qcserial: add Dell Wireless 5809e Gobi 4G HSPA+ (rev3) + - USB: qcserial: add Sierra Wireless EM74xx device ID + - USB: serial: option: add support for Telit LE922 PID 0x1045 + - USB: serial: option: add support for Quectel UC20 + - MIPS: scache: Fix scache init with invalid line size. + - MIPS: traps: Fix SIGFPE information leak from `do_ov' and `do_trap_or_bp' + - ubi: Fix out of bounds write in volume update code + - i2c: brcmstb: allocate correct amount of memory for regmap + - thermal: cpu_cooling: fix out of bounds access in time_in_idle + - block: check virt boundary in bio_will_gap() + - block: get the 1st and last bvec via helpers + - drm/i915: more virtual south bridge detection + - drm/i915: refine qemu south bridge detection + - modules: fix longstanding /proc/kallsyms vs module insertion race. + - drm/amdgpu: fix topaz/tonga gmc assignment in 4.4 stable + - Linux 4.4.5 + + * QEMU: causes vCPU steal time overflow on live migration (LP: #1494350) + - x86/mm: Fix slow_virt_to_phys() for X86_PAE again + + * TPM2.0 trusted keys fixes (LP: #1398274) + - tpm_tis: further simplify calculation of ordinal duration + - tpm_tis: Use devm_free_irq not free_irq + - tpm_tis: Ensure interrupts are disabled when the driver starts + - tpm: rework tpm_get_timeouts() + - tpm_tis: Get rid of the duplicate IRQ probing code + - tpm_tis: Refactor the interrupt setup + - tpm_tis: Tighten IRQ auto-probing + - tpm_ibmvtpm: properly handle interrupted packet receptions + + * linux: review all versioned depends/conflicts/replaces/breaks for validility (LP: #1555033) + - [Config] control.stub.in -- review versioned Build-Depends: + - [Config] control.stub.in -- review versioned + Depends/Breaks/Conflicts/Replaces + - [Config] flavour-control.stub -- review versioned Breaks/Conflicts/Replaces + - [Config] x86 vars.* -- review versioned Breaks/Conflicts/Replaces + + -- Tim Gardner Wed, 09 Mar 2016 05:11:51 -0700 + +linux (4.4.0-12.28) xenial; urgency=low + + * Miscellaneous Ubuntu changes + - reconstruct: Work around orig tarball packaging limitiations + Fixes FTBS + + -- Tim Gardner Tue, 08 Mar 2016 13:26:08 -0700 + +linux (4.4.0-12.27) xenial; urgency=low + + [ Tim Gardner ] + + * Release Tracking Bug + - LP: #1554704 + + * Fails to detect (second) display (LP: #1543683) + - drm/i915: Fix hpd live status bits for g4x + + * s390x -- various configuration changes (LP: #1543165) + - [Config] s390x -- enable CONFIG_NUMA + - [Config] s390x -- disable CONFIG_NET_VENDOR_EMULEX + - [Config] s390x -- disable CONFIG_NET_VENDOR_SYNOPSYS + - [Config] s390x -- disable CONFIG_NVMEM + - [Config] s390x -- switch preempt mode to none + + * Radeon hybrid graphics problem on resume (LP: #1554608) + - Revert "drm/radeon: call hpd_irq_event on resume" + + * Pull in upstream AMD code (amdgpu) in Xenial (LP: #1546572) + - [Config] CONFIG_DRM_AMD_POWERPLAY=y + - drm/amdgpu: use $(src) in Makefile (v2) + - drm/radeon: constify radeon_asic_ring structures + - drm/amdgpu: add a callback for reading the bios from the rom directly + - drm/amdgpu: add read_bios_from_rom callback for CI parts + - drm/amdgpu: add read_bios_from_rom callback for VI parts + - drm/amdgpu: Use new read bios from rom callback + - drm/amdgpu: Use unlocked gem unreferencing + - drm/radeon: Use unlocked gem unreferencing + - drm/amd: add new gfx8 register definitions for EDC + - drm/amdgpu: add EDC support for CZ (v3) + - drm/amd: abstract kernel rq and normal rq to priority of run queue + - drm/amdgpu/gfx8: Enable interrupt on ME1_PIPE3 + - drm/amdgpu/gfx8: update PA_SC_RASTER_CONFIG:PKR_MAP only + - drm/amdgpu: update rev id register for VI + - drm/amdgpu: add more debugging output for driver failures + - drm/amdgpu: add entity only when first job come + - drm/amdgpu: handle error case for ctx + - drm/amdgpu: unify AMDGPU_CTX_MAX_CS_PENDING and amdgpu_sched_jobs + - drm/amdgpu: change default sched jobs to 32 + - drm/amdgpu: limit visible vram if it's smaller than the BAR + - drm/amdgpu: restrict the sched jobs number to power of two + - drm/amdgpu: put VM page tables directly into duplicates list + - drm/amdgpu: split VM PD and PT handling during CS + - drm/amdgpu: keep the PTs validation list in the VM v2 + - drm/radeon: Update radeon_get_vblank_counter_kms() + - drm/radeon: only increment sync_seq when a fence is really emitted + - drm/fb-helper: Use proper plane mask for fb cleanup + - drm/amdgpu: fix dp link rate selection (v2) + - drm/radeon: fix dp link rate selection (v2) + - drm/amdgpu: share struct amdgpu_pm_state_type with powerplay module + - drm/amdgpu: mv some definition from amdgpu_acpi.c to amdgpu_acpi.h + - drm/amdgpu: mv amdgpu_acpi.h to amd/include/amd_acpi.h + - drm/amdgpu: implement new cgs interface for acpi function + - drm/amdgpu: implement cgs interface to query system info + - drm/amdgpu: add new cgs interface to get display info (v2) + - drm/amd/powerplay: add basic powerplay framework + - drm/amdgpu: disable legacy path of firmware check if powerplay is enabled + - drm/amdgpu: export amd_powerplay_func to amdgpu and other ip block + - drm/amd/powerplay: add SMU manager sub-component + - drm/amd/powerplay: add hardware manager sub-component + - SAUCE: amd: Include errno.h + - drm/amd/powerplay: add Carrizo smu support + - drm/amd/powerplay: add Carrizo dpm support + - drm/amd/powerplay: add CG and PG support for carrizo + - drm/amd/powerplay: add event manager sub-component + - drm/amd/powerplay: implement functions of amd_powerplay_func + - drm/amd/powerplay: Add ixSWRST_COMMAND_1 in bif_5_0_d.h + - drm/amd/powerplay: Move smu7*.h from amdgpu to powerplay. + - drm/amd/powerplay: add header file for tonga smu and dpm + - drm/amd/powerplay: Add Tonga SMU support + - drm/amd/powerplay: add Tonga dpm support (v3) + - drm/amd/powerplay: add/update headers for Fiji SMU and DPM + - drm/amd/powerplay: update atomctrl for fiji + - drm/amd/powerplay: add Fiji SMU support. + - drm/amd/powerplay: add Fiji DPM support. + - drm/amdgpu: add amdgpu.powerplay module option + - drm/amd/amdgpu: enable powerplay and smc firmware loading for Fiji. + - drm/amdgpu/powerplay: add function point in hwmgr_funcs for program display gap + - drm/amdgpu/poweprlay: export program display gap function to eventmgr + - drm/amdgpu/powerplay: implement pem_task for display_configuration_change + - drm/amdgpu/powerplay: program display gap for tonga. + - drm/amdgpu: enable powerplay module by default for tonga. + - drm/amdgpu: enable powerplay module by default for fiji. + - drm/amdgpu/powerplay: add some definition for other ip block to update cg pg. + - drm/amd/powerplay: add new function point in hwmgr_func for CG/PG. + - drm/amd/powerplay: Add CG and PG support for tonga + - drm/amdgpu/powerplay: add new function point in hwmgr_funcs for thermal control + - drm/amdgpu/powerplay: mv ppinterrupt.h to inc folder to share with other submodule. + - drm/amdgpu/powerplay: add thermal control interface in hwmgr. + - drm/amdgpu/powerplay: enable thermal interrupt task in eventmgr. + - drm/amdgpu/powerplay: implement thermal control for tonga. + - drm/amdgpu/powerplay: implement fan control interface in amd_powerplay_funcs + - drm/amdgpu: export fan control functions to amdgpu + - drm/amdgpu: enable sysfs interface for powerplay + - drm/amdgpu: support per device powerplay enablement (v2) + - drm/amd/powerplay: add and export hwmgr interface to eventmgr to check hw states. + - drm/amd/powerplay: implement new funcs to check current states for tonga. + - drm/amd/powerplay: refine the logic of whether need to update power state. + - drm/amd/powerplay/tonga: enable pcie and mclk forcing for low + - drm/amd/powerplay/fiji: enable pcie and mclk forcing for low + - drm/amdgpu: extract pcie helpers to common header + - drm: add drm_pcie_get_max_link_width helper (v2) + - drm/amdgpu: store pcie gen mask and link width + - drm/amdgpu/cgs: add sys info query for pcie gen and link width + - drm/amdgpu/powerplay/tonga: query supported pcie info from cgs (v2) + - drm/amdgpu/powerplay/fiji: query supported pcie info from cgs (v2) + - drm/amd/powerplay: fix boolreturn.cocci warnings + - drm/amd/powerplay/tonga: Add UVD DPM init + - drm/amd/amdgpu: add gfx clock gating support for Fiji. + - drm/amd/amdgpu: add gmc clock gating support for Fiji. + - drm/amdgpu: add sdma clock gating support for Fiji. + - drm/amd/powerplay: add parts of system clock gating support for Fiji. (v2) + - drm/amd/powerplay: enable clock gating for Fiji. + - drm/amd/powerplay: add atomctrl function to calculate CZ sclk dividers + - drm/amd/powerplay: implement smc state upload for CZ + - drm/amd/powerplay: fix warning of cast to pointer from integer of different size. + - drm/amd/powerplay: fix warning of cast to pointer from integer of different size. + - drm/amd/powerplay: add new function point in hwmgr. + - drm/amd/powerplay: add smc msg for NB P-State switch + - drm/amd/powerplay: export interface to DAL to init/change display configuration. + - drm/amd/powerplay: enable set_cpu_power_state task. (v2) + - drm/amd/powerplay: enable/disable NB pstate feature for Carrizo. + - drm/amd/powerplay: Add PPLib debug print macro. + - drm/amdgpu: rename tonga_smumgr.h to tonga_smum.h + - drm/amdgpu: rename fiji_smumgr.h to fiji_smum.h + - drm/amd/powerplay: add multimedia power gating support for Fiji. + - drm/amd/amdgpu: add uvd6.0 clock gating support. (v2) + - drm/amd/amdgpu: add vce3.0 clock gating support. (v2) + - drm/amd/amdgpu: enable uvd&vce clock gating for Fiji. + - drm/amdgpu: Prepare DKMS build for powerplay module. + - drm/amd/powerplay: add display configeration changed function in hwmgr for Fiji. + - drm/amd/powerplay: Add thermal protection support for Fiji. + - drm/amd/powerplay: Fix a bug in fan control setting default mode for Tonga and Fiji. + - drm/amd/powerplay: add functions set/get_fan_control_mode in hwmgr for Tonga. + - drm/amd/powerplay: add functions set/get_fan_control_mode in hwmgr for Fiji. + - drm/amd/powerplay: fix boolreturn.cocci warnings + - drm/amd/powerplay: fix bug that dpm funcs in debugfs/sysfs missing. + - drm/amd/powerplay: check whether enable dpm in powerplay. + - drm/amd/powerplay: move shared function of vi to hwmgr. (v2) + - drm/amdgpu/powerplay: enable sysfs and debugfs interfaces late + - drm/amd/powerplay: display gpu load when print performance for tonga. + - drm/powerplay: add debugging output to tonga_processpptables.c + - drm/powerplay: add debugging output to processpptables.c + - drm/powerplay/hwmgr: log errors in tonga_hwmgr_backend_init + - drm/amd/powerplay: Don't return an error if fan table is missing + - amd\powerplay Implement get dal power level + - amd/powerplay: Fix get dal power level + - amd/powerplay: Add structures required to report configuration change + - drm/amdgpu/powerplay: Program a calculated value as Deep Sleep clock. + - drm/amd/powerplay: add point check to avoid NULL point hang. + - drm/amd/powerplay: check whether need to enable thermal control. (v2) + - drm/amd/powerplay: show gpu load when print gpu performance for Cz. (v2) + - drm: powerplay: use div64_s64 instead of do_div + - drm/amd/powerplay: fix a reversed condition + - drm/amdgpu/cgs: cleanup some indenting + - drm/amd/powerplay: precedence bug in init_non_clock_fields() + - drm/amdgpu: fix NULL in vm_grab_id while S3 back + - drm/amd/powerplay: fix bug that NULL checks are reversed. + - drm/amd/powerplay: fix Smatch static checker warnings with indenting (v2) + - drm/amd/powerplay: fix Smatch static checker warnings + - drm/amd/powerplay: add powerplay valid check to avoid null point. (v2) + - drm/amd/powerplay: Reload and initialize the smc firmware on powerplay resume. + - drm/amdgpu: Show gpu load when display gpu performance for Ci. + - drm/amdgpu: Show gpu load when display gpu performance for Fiji of VI. + - drm/amdgpu: fix hex/decimal bug when show gpu load. + - drm/amd/powerplay: add thermal control task when resume. + - drm/amd/powerplay: enable set boot state task + - drm/amd/powerplay: enable power down asic task. (v2) + - drm/amd/powerplay: implement power down asic task for CZ + - drm/amdgpu: add warning to amdgpu_bo_gpu_offset() v2 + - drm/amdgpu/cgs: add an interface to access PCI resources + - drm/amdgpu: add irq domain support + - drm/amdgpu/powerplay: include asm/div64.h for do_div() + - drm/sysfs: use kobj_to_dev() + - drm/amd/powerplay: fix static checker warning for return meaningless value. + - drm/amdgpu/cz: add code to enable forcing UVD clocks + - drm/amdgpu/cz: add code to enable forcing VCE clocks + - drm/amdgpu/cz: force uvd clocks when sclks are forced + - drm/amdgpu/cz: force vce clocks when sclks are forced + - drm/amdgpu: use kobj_to_dev() + - drm/radeon: use kobj_to_dev() + - drm/ttm: fix adding foreign BOs to the LRU during init v2 + - drm/ttm: fix adding foreign BOs to the swap LRU + - drm/ttm: add ttm_bo_move_to_lru_tail function v2 + - drm/amdgpu: move VM page tables to the LRU end on CS v2 + - drm/amdgpu: validate duplicates first + - drm/amdgpu: add missing irq.h include + - drm/fb_cma_helper: Remove implicit call to disable_unused_functions + - drm/amdgpu: Add some tweaks to gfx 8 soft reset + - amdkfd: don't open-code memdup_user() + - amdkfd: Copy from the proper user command pointer + - drm/amdgpu: Use drm_calloc_large for VM page_tables array + - amd/powerplay: disable powerplay by default initially + - drm/amdgpu: Allow the driver to load if amdgpu.powerplay=1 on asics without powerplay support + - drm/atomic-helper: Export framebuffer_changed() + - drm/amd/amdgpu: Improve amdgpu_dpm* macros to avoid unexpected result (v2) + - drm/amdgpu: add a message to indicate when powerplay is enabled (v2) + - drm/amdgpu: fix next_rptr handling for debugfs + - drm/radeon: Ensure radeon bo is unreserved in radeon_gem_va_ioctl + - drm/radeon: only init fbdev if we have connectors + - drm/amdgpu: don't init fbdev if we don't have any connectors + - drm/amd/powerplay: Update SMU firmware loading for Stoney + - drm/amdgpu: fix non-ANSI declaration of amdgpu_amdkfd_gfx_*_get_functions() + - drm/amdkfd: Remove unnecessary cast in kfree + - drm/amdgpu: only move pt bos in LRU list on success + - drm/amdgpu: mask out WC from BO on unsupported arches + - drm/amdgpu/gfx8: enable cp inst/reg error interrupts + - drm/amdgpu/gfx7: enable cp inst/reg error interrupts + - drm/amdgpu: load MEC ucode manually on iceland + - drm/amdgpu: disable uvd and vce clockgating on Fiji + - drm/amdgpu: add pcie cap module parameters (v2) + - drm/amdgpu/cik: don't mess with aspm if gpu is root bus + - drm/amdgpu/dpm/ci: switch over to the common pcie caps interface + - drm/amdgpu: handle uvd pg flags properly + - drm/amdgpu: handle vce pg flags properly + - drm/amdgpu: clean up vce pg flags for cz/st + - drm/amdgpu: be consistent with uvd cg flags + - drm/amd/powerplay/cz: disable uvd pg + - drm/amd/powerplay/cz: disable vce pg + - drm/amd/powerplay/tonga: disable uvd pg + - drm/amd/powerplay/tonga: disable vce pg + - drm/amdgpu: add a cgs interface to fetch cg and pg flags + - drm/amdgpu: remove unused cg defines + - drma/dmgpu: move cg and pg flags into shared headers + - drm/amdgpu/tonga: plumb pg flags through to powerplay + - drm/amdgpu/cz: plumb pg flags through to powerplay + - SAUCE: drm/amdgpu/cz: enable/disable vce dpm even if vce pg is disabled + + * mlx4_core Set UAR page size to 4KB regardless of system page size (LP: + #1552632) + - net/mlx4_core: Set UAR page size to 4KB regardless of system page size + + * Miscellaneous Ubuntu changes + - [Config] CONFIG_CAVIUM_ERRATUM_27456=y + + * Miscellaneous upstream changes + - net: thunderx: Fix for Qset error due to CQ full + - ahci: Workaround for ThunderX Errata#22536 + - arm64: Add workaround for Cavium erratum 27456 + - tipc: fix nullptr crash during subscription cancel + + -- Tim Gardner Mon, 07 Mar 2016 05:04:22 -0700 + +linux (4.4.0-11.26) xenial; urgency=low + + [ Tim Gardner ] + + * Release Tracking Bug + - LP: #1553391 + + * Xenial update to v4.4.4 stable release (LP: #1553179) + - af_iucv: Validate socket address length in iucv_sock_bind() + - gro: Make GRO aware of lightweight tunnels. + - net: dp83640: Fix tx timestamp overflow handling. + - tunnels: Allow IPv6 UDP checksums to be correctly controlled. + - lwt: fix rx checksum setting for lwt devices tunneling over ipv6 + - tcp: fix NULL deref in tcp_v4_send_ack() + - af_unix: fix struct pid memory leak + - pptp: fix illegal memory access caused by multiple bind()s + - sctp: allow setting SCTP_SACK_IMMEDIATELY by the application + - net: dsa: fix mv88e6xxx switches + - tipc: fix connection abort during subscription cancel + - inet: frag: Always orphan skbs inside ip_defrag() + - switchdev: Require RTNL mutex to be held when sending FDB notifications + - tcp: beware of alignments in tcp_get_info() + - ipv6: enforce flowi6_oif usage in ip6_dst_lookup_tail() + - ipv6/udp: use sticky pktinfo egress ifindex on connect() + - ipv6: addrconf: Fix recursive spin lock call + - ipv6: fix a lockdep splat + - unix: correctly track in-flight fds in sending process user_struct + - tcp: do not drop syn_recv on all icmp reports + - net:Add sysctl_max_skb_frags + - tg3: Fix for tg3 transmit queue 0 timed out when too many gso_segs + - enic: increment devcmd2 result ring in case of timeout + - sctp: translate network order to host order when users get a hmacid + - net: Copy inner L3 and L4 headers as unaligned on GRE TEB + - flow_dissector: Fix unaligned access in __skb_flow_dissector when used by + eth_get_headlen + - bpf: fix branch offset adjustment on backjumps after patching ctx expansion + - bonding: Fix ARP monitor validation + - ipv4: fix memory leaks in ip_cmsg_send() callers + - af_unix: Don't set err in unix_stream_read_generic unless there was an error + - af_unix: Guard against other == sk in unix_dgram_sendmsg + - tipc: fix premature addition of node to lookup table + - tcp: md5: release request socket instead of listener + - qmi_wwan: add "4G LTE usb-modem U901" + - net/mlx4_en: Count HW buffer overrun only once + - net/mlx4_en: Avoid changing dev->features directly in run-time + - l2tp: Fix error creating L2TP tunnels + - pppoe: fix reference counting in PPPoE proxy + - net_sched fix: reclassification needs to consider ether protocol changes + - route: check and remove route cache when we get route + - tcp/dccp: fix another race at listener dismantle + - IFF_NO_QUEUE: Fix for drivers not calling ether_setup() + - rtnl: RTM_GETNETCONF: fix wrong return value + - tipc: unlock in error path + - unix_diag: fix incorrect sign extension in unix_lookup_by_ino + - sctp: Fix port hash table size computation + - ext4: fix bh->b_state corruption + - ARM: debug-ll: fix BCM63xx entry for multiplatform + - arm64: errata: Add -mpc-relative-literal-loads to build flags + - KVM: s390: fix guest fprs memory leak + - devm_memremap: Fix error value when memremap failed + - drm/gma500: Use correct unref in the gem bo create function + - ARM: 8457/1: psci-smp is built only for SMP + - lib/ucs2_string: Add ucs2 -> utf8 helper functions + - efi: Use ucs2_as_utf8 in efivarfs instead of open coding a bad version + - efi: Do variable name validation tests in utf8 + - efi: Make our variable validation list include the guid + - efi: Make efivarfs entries immutable by default + - efi: Add pstore variables to the deletion whitelist + - lib/ucs2_string: Correct ucs2 -> utf8 conversion + - bcache: fix a livelock when we cause a huge number of cache misses + - bcache: Add a cond_resched() call to gc + - bcache: clear BCACHE_DEV_UNLINK_DONE flag when attaching a backing device + - bcache: fix a leak in bch_cached_dev_run() + - bcache: unregister reboot notifier if bcache fails to unregister device + - bcache: allows use of register in udev to avoid "device_busy" error. + - bcache: Change refill_dirty() to always scan entire disk if necessary + - dm thin: fix race condition when destroying thin pool workqueue + - can: ems_usb: Fix possible tx overflow + - usb: dwc3: Fix assignment of EP transfer resources + - USB: cp210x: add IDs for GE B650V3 and B850V3 boards + - USB: option: add support for SIM7100E + - USB: option: add "4G LTE usb-modem U901" + - drivers: android: correct the size of struct binder_uintptr_t for + BC_DEAD_BINDER_DONE + - spi: omap2-mcspi: Prevent duplicate gpio_request + - iw_cxgb3: Fix incorrectly returning error on success + - drm/i915: shut up gen8+ SDE irq dmesg noise + - ocfs2: unlock inode if deleting inode from orphan fails + - mm: thp: fix SMP race condition between THP page fault and MADV_DONTNEED + - mm: numa: quickly fail allocations for NUMA balancing on full nodes + - genirq: Validate action before dereferencing it in handle_irq_event_percpu() + - clocksource/drivers/vt8500: Increase the minimum delta + - s390/kvm: remove dependency on struct save_area definition + - KVM: s390: fix memory overwrites when vx is disabled + - Btrfs: add missing brelse when superblock checksum fails + - Btrfs: igrab inode in writepage + - btrfs: statfs: report zero available if metadata are exhausted + - Btrfs: send, don't BUG_ON() when an empty symlink is found + - Btrfs: fix number of transaction units required to create symlink + - Btrfs: fix transaction handle leak on failure to create hard link + - Btrfs: Initialize btrfs_root->highest_objectid when loading tree root and + subvolume roots + - btrfs: initialize the seq counter in struct btrfs_device + - s390: fix normalization bug in exception table sorting + - s390/dasd: prevent incorrect length error under z/VM after PAV changes + - s390/dasd: fix refcount for PAV reassignment + - s390/dasd: fix performance drop + - uml: flush stdout before forking + - uml: fix hostfs mknod() + - um: link with -lpthread + - locks: fix unlock when fcntl_setlk races with a close + - rtlwifi: rtl_pci: Fix kernel panic + - rtlwifi: rtl8192cu: Add missing parameter setup + - rtlwifi: rtl8192ce: Fix handling of module parameters + - rtlwifi: rtl8192de: Fix incorrect module parameter descriptions + - rtlwifi: rtl8723ae: Fix initialization of module parameters + - rtlwifi: rtl8192se: Fix module parameter initialization + - rtlwifi: rtl8188ee: Fix module parameter initialization + - rtlwifi: rtl8723be: Fix module parameter initialization + - mei: fix fasync return value on error + - mei: validate request value in client notify request ioctl + - namei: ->d_inode of a pinned dentry is stable only for positives + - rc: sunxi-cir: Initialize the spinlock properly + - media: dvb-core: Don't force CAN_INVERSION_AUTO in oneshot mode + - si2157: return -EINVAL if firmware blob is too big + - gspca: ov534/topro: prevent a division by 0 + - vb2: fix a regression in poll() behavior for output,streams + - tda1004x: only update the frontend properties if locked + - dm space map metadata: remove unused variable in brb_pop() + - dm snapshot: fix hung bios when copy error occurs + - dm: fix dm_rq_target_io leak on faults with .request_fn DM w/ blk-mq paths + - coresight: checking for NULL string in coresight_name_match() + - irqchip/omap-intc: Add support for spurious irq handling + - irqchip/mxs: Add missing set_handle_irq() + - irqchip/atmel-aic: Fix wrong bit operation for IRQ priority + - irqchip/gic-v3-its: Fix double ICC_EOIR write for LPI in EOImode==1 + - posix-clock: Fix return code on the poll method's error path + - clockevents/tcb_clksrc: Prevent disabling an already disabled clock + - mmc: usdhi6rol0: handle NULL data in timeout + - mmc: sdhci-pci: Do not default to 33 Ohm driver strength for Intel SPT + - mmc: sdio: Fix invalid vdd in voltage switch power cycle + - mmc: mmc: Fix incorrect use of driver strength switching HS200 and HS400 + - mmc: sdhci: Fix sdhci_runtime_pm_bus_on/off() + - mmc: core: Enable tuning according to the actual timing + - mmc: mmci: fix an ages old detection error + - mmc: sdhci-acpi: Fix card detect race for Intel BXT/APL + - mmc: pxamci: fix again read-only gpio detection polarity + - mmc: sdhci-pci: Fix card detect race for Intel BXT/APL + - mmc: sdhci: Allow override of mmc host operations + - mmc: sdhci: Allow override of get_cd() called from sdhci_request() + - Bluetooth: Use continuous scanning when creating LE connections + - Bluetooth: Add support of Toshiba Broadcom based devices + - Bluetooth: Fix incorrect removing of IRKs + - Bluetooth: 6lowpan: Fix kernel NULL pointer dereferences + - Bluetooth: 6lowpan: Fix handling of uncompressed IPv6 packets + - time: Avoid signed overflow in timekeeping_get_ns() + - cputime: Prevent 32bit overflow in time[val|spec]_to_cputime() + - Revert "MIPS: Fix PAGE_MASK definition" + - MIPS: Loongson-3: Fix SMP_ASK_C0COUNT IPI handler + - MIPS: hpet: Choose a safe value for the ETIME check + - MIPS: Fix some missing CONFIG_CPU_MIPSR6 #ifdefs + - MIPS: Fix buffer overflow in syscall_get_arguments() + - EDAC: Robustify workqueues destruction + - EDAC, mc_sysfs: Fix freeing bus' name + - sparc64: fix incorrect sign extension in sys_sparc64_personality + - clk: exynos: use irqsave version of spin_lock to avoid deadlock with irqs + - regulator: axp20x: Fix GPIO LDO enable value for AXP22x + - regulator: mt6311: MT6311_REGULATOR needs to select REGMAP_I2C + - virtio_balloon: fix race by fill and leak + - virtio_balloon: fix race between migration and ballooning + - virtio_pci: fix use after free on release + - drm/vmwgfx: Fix an incorrect lock check + - drm/vmwgfx: Fix a width / pitch mismatch on framebuffer updates + - drm/vmwgfx: respect 'nomodeset' + - drm/amdgpu: Fix off-by-one errors in amdgpu_vm_bo_map + - drm/amdgpu: call hpd_irq_event on resume + - drm/amdgpu: fix lost sync_to if scheduler is enabled. + - drm/amdgpu: fix tonga smu resume + - drm/amdgpu: fix amdgpu_bo_pin_restricted VRAM placing v2 + - drm/amdgpu: no need to load MC firmware on fiji + - drm/amdgpu: move gmc7 support out of CIK dependency + - drm/amdgpu: iceland use CI based MC IP + - drm/amdgpu: The VI specific EXE bit should only apply to GMC v8.0 above + - drm/amdgpu: pull topaz gmc bits into gmc_v7 + - drm/amdgpu: drop topaz support from gmc8 module + - drm/amdgpu: don't load MEC2 on topaz + - drm/amdgpu: remove exp hardware support from iceland + - drm/amdgpu: fix s4 resume + - drm/amdgpu: remove unnecessary forward declaration + - drm/amdgpu: hold reference to fences in amdgpu_sa_bo_new (v2) + - drm/amdgpu: fix issue with overlapping userptrs + - drm/amdgpu: use post-decrement in error handling + - drm/amdgpu: Don't hang in amdgpu_flip_work_func on disabled crtc. + - drm/amdgpu/pm: adjust display configuration after powerstate + - drm/nouveau/kms: take mode_config mutex in connector hotplug path + - drm/nouveau/display: Enable vblank irqs after display engine is on again. + - drm/nouveau/disp/dp: ensure sink is powered up before attempting link + training + - drm/nouveau: platform: Fix deferred probe + - drm/dp/mst: process broadcast messages correctly + - drm/dp/mst: always send reply for UP request + - drm/dp/mst: fix in MSTB RAD initialization + - drm/dp/mst: fix in RAD element access + - drm: Add drm_fixp_from_fraction and drm_fixp2int_ceil + - drm/dp/mst: Calculate MST PBN with 31.32 fixed point + - drm/dp/mst: move GUID storage from mgr, port to only mst branch + - drm/dp/mst: Reverse order of MST enable and clearing VC payload table. + - drm/dp/mst: deallocate payload on port destruction + - drm/radeon: Fix off-by-one errors in radeon_vm_bo_set_addr + - drm/radeon: call hpd_irq_event on resume + - drm/radeon: Fix "slow" audio over DP on DCE8+ + - drm/radeon: clean up fujitsu quirks + - drm/radeon: properly byte swap vce firmware setup + - drm/radeon: cleaned up VCO output settings for DP audio + - drm/radeon: Add a common function for DFS handling + - drm/radeon: fix DP audio support for APU with DCE4.1 display engine + - drm: add helper to check for wc memory support + - drm/radeon: mask out WC from BO on unsupported arches + - drm/radeon: hold reference to fences in radeon_sa_bo_new + - drm: fix missing reference counting decrease + - drm/i915: Restore inhibiting the load of the default context + - drm/i915: intel_hpd_init(): Fix suspend/resume reprobing + - drm/i915: Init power domains early in driver load + - drm/i915: Make sure DC writes are coherent on flush. + - drm/i915/dp: fall back to 18 bpp when sink capability is unknown + - drm/i915: Don't reject primary plane windowing with color keying enabled on + SKL+ + - drm/i915/skl: Don't skip mst encoders in skl_ddi_pll_select() + - drm/i915/dsi: defend gpio table against out of bounds access + - drm/i915/dsi: don't pass arbitrary data to sideband + - drm/i915: fix error path in intel_setup_gmbus() + - drm/qxl: use kmalloc_array to alloc reloc_info in qxl_process_single_command + - drm/radeon: use post-decrement in error handling + - drm: No-Op redundant calls to drm_vblank_off() (v2) + - drm: Prevent vblank counter bumps > 1 with active vblank clients. (v2) + - drm: Fix drm_vblank_pre/post_modeset regression from Linux 4.4 + - drm: Fix treatment of drm_vblank_offdelay in drm_vblank_on() (v2) + - drm/radeon: Don't hang in radeon_flip_work_func on disabled crtc. (v2) + - drm/radeon/pm: adjust display configuration after powerstate + - make sure that freeing shmem fast symlinks is RCU-delayed + - toshiba_acpi: Fix blank screen at boot if transflective backlight is + supported + - ideapad-laptop: Add Lenovo ideapad Y700-17ISK to no_hw_rfkill dmi list + - ideapad-laptop: Add Lenovo Yoga 700 to no_hw_rfkill dmi list + - uapi: update install list after nvme.h rename + - lib: sw842: select crc32 + - ACPI / video: Add disable_backlight_sysfs_if quirk for the Toshiba Portege + R700 + - ACPI / video: Add disable_backlight_sysfs_if quirk for the Toshiba Satellite + R830 + - ACPI: Revert "ACPI / video: Add Dell Inspiron 5737 to the blacklist" + - ACPI / PCI / hotplug: unlock in error path in acpiphp_enable_slot() + - nfit: fix multi-interface dimm handling, acpi6.1 compatibility + - dmaengine: dw: fix cyclic transfer setup + - dmaengine: dw: fix cyclic transfer callbacks + - dmaengine: at_xdmac: fix resume for cyclic transfers + - dmaengine: dw: disable BLOCK IRQs for non-cyclic xfer + - IB/cm: Fix a recently introduced deadlock + - IB/qib: fix mcast detach when qp not attached + - IB/qib: Support creating qps with GFP_NOIO flag + - IB/mlx5: Expose correct maximum number of CQE capacity + - Thermal: initialize thermal zone device correctly + - Thermal: handle thermal zone device properly during system sleep + - Thermal: do thermal zone update after a cooling device registered + - hwmon: (dell-smm) Blacklist Dell Studio XPS 8000 + - hwmon: (gpio-fan) Remove un-necessary speed_index lookup for thermal hook + - hwmon: (ads1015) Handle negative conversion values correctly + - cpufreq: pxa2xx: fix pxa_cpufreq_change_voltage prototype + - cpufreq: Fix NULL reference crash while accessing policy->governor_data + - seccomp: always propagate NO_NEW_PRIVS on tsync + - libceph: fix ceph_msg_revoke() + - libceph: don't bail early from try_read() when skipping a message + - libceph: use the right footer size when skipping a message + - libceph: don't spam dmesg with stray reply warnings + - sd: Optimal I/O size is in bytes, not sectors + - Staging: speakup: Fix getting port information + - Revert "Staging: panel: usleep_range is preferred over udelay" + - cdc-acm:exclude Samsung phone 04e8:685d + - perf stat: Do not clean event's private stats + - tick/nohz: Set the correct expiry when switching to nohz/lowres mode + - rfkill: fix rfkill_fop_read wait_event usage + - mac80211: Requeue work after scan complete for all VIF types. + - workqueue: handle NUMA_NO_NODE for unbound pool_workqueue lookup + - Revert "workqueue: make sure delayed work run in local cpu" + - ALSA: hda - Apply clock gate workaround to Skylake, too + - ALSA: hda - Fixing background noise on Dell Inspiron 3162 + - target: Fix LUN_RESET active I/O handling for ACK_KREF + - target: Fix LUN_RESET active TMR descriptor handling + - target: Fix TAS handling for multi-session se_node_acls + - target: Fix remote-port TMR ABORT + se_cmd fabric stop + - target: Fix race with SCF_SEND_DELAYED_TAS handling + - spi: atmel: fix gpio chip-select in case of non-DT platform + - libata: fix sff host state machine locking while polling + - ARCv2: STAR 9000950267: Handle return from intr to Delay Slot #2 + - ARCv2: SMP: Emulate IPI to self using software triggered interrupt + - PCI/AER: Flush workqueue on device remove to avoid use-after-free + - cpuset: make mm migration asynchronous + - cgroup: make sure a parent css isn't offlined before its children + - writeback: keep superblock pinned during cgroup writeback association + switches + - phy: core: fix wrong err handle for phy_power_on + - i2c: i801: Adding Intel Lewisburg support for iTCO + - bio: return EINTR if copying to user space got interrupted + - block: fix use-after-free in dio_bio_complete + - nfs: fix nfs_size_to_loff_t + - NFSv4: Fix a dentry leak on alias use + - of/irq: Fix msi-map calculation for nonzero rid-base + - KVM: async_pf: do not warn on page allocation failures + - KVM: arm/arm64: vgic: Ensure bitmaps are long enough + - KVM: x86: fix missed hardware breakpoints + - KVM: x86: MMU: fix ubsan index-out-of-range warning + - powerpc/eeh: Fix partial hotplug criterion + - tracing: Fix showing function event in available_events + - sunrpc/cache: fix off-by-one in qword_get() + - kernel/resource.c: fix muxed resource handling in __request_region() + - do_last(): don't let a bogus return value from ->open() et.al. to confuse us + - ARM: OMAP2+: Fix onenand initialization to avoid filesystem corruption + - ARM: at91/dt: fix typo in sama5d2 pinmux descriptions + - xen/arm: correctly handle DMA mapping of compound pages + - xen/scsiback: correct frontend counting + - xen/pciback: Check PF instead of VF for PCI_COMMAND_MEMORY + - xen/pciback: Save the number of MSI-X entries to be copied later. + - xen/pcifront: Fix mysterious crashes when NUMA locality information was + extracted. + - should_follow_link(): validate ->d_seq after having decided to follow + - do_last(): ELOOP failure exit should be done after leaving RCU mode + - hpfs: don't truncate the file when delete fails + - x86/irq: Call chip->irq_set_affinity in proper context + - x86/irq: Fix a race in x86_vector_free_irqs() + - x86/irq: Validate that irq descriptor is still active + - x86/irq: Do not use apic_chip_data.old_domain as temporary buffer + - x86/irq: Reorganize the return path in assign_irq_vector + - x86/irq: Reorganize the search in assign_irq_vector + - x86/irq: Check vector allocation early + - x86/irq: Copy vectormask instead of an AND operation + - x86/irq: Get rid of code duplication + - x86/irq: Remove offline cpus from vector cleanup + - x86/irq: Clear move_in_progress before sending cleanup IPI + - x86/irq: Remove the cpumask allocation from send_cleanup_vector() + - x86/irq: Remove outgoing CPU from vector cleanup mask + - x86/irq: Call irq_force_move_complete with irq descriptor + - x86/irq: Plug vector cleanup race + - IB/cma: Fix RDMA port validation for iWarp + - iwlwifi: dvm: fix WoWLAN + - iwlwifi: pcie: properly configure the debug buffer size for 8000 + - iwlwifi: update and fix 7265 series PCI IDs + - iwlwifi: mvm: don't allow sched scans without matches to be started + - Revert "UBUNTU: SAUCE: bcache: prevent crash on changing writeback_running" + - bcache: prevent crash on changing writeback_running + - Linux 4.4.4 + + * mlx4_en didn't choose time-stamping shift value according to HW frequency + (LP: #1552627) + - net/mlx4_en: Choose time-stamping shift value according to HW frequency + + * [Ubuntu 16.04] Help to flush kernel panics to console (LP: #1552332) + - target/transport: add flag to indicate CPU Affinity is observed + - powerpc/powernv: Add a kmsg_dumper that flushes console output on panic + - powerpc/powernv: Fix OPAL_CONSOLE_FLUSH prototype and usages + + * [Ubuntu 16.04] Update qla2xxx driver for POWER (QLogic) (LP: #1541456) + - qla2xxx: Fix warning reported by static checker + - qla2xxx: Fix TMR ABORT interaction issue between qla2xxx and TCM + - qla2xxx: Fix stale pointer access. + - qla2xxx: Use ATIO type to send correct tmr response + - qla2xxx: use TARGET_SCF_USE_CPUID flag to indiate CPU Affinity + + * [s390x] zfcp.ko missing from scsi-modules udeb (LP: #1552314) + - [Config] Add s390x zfcp to scsi-modules udeb + + -- Tim Gardner Wed, 02 Mar 2016 08:08:16 -0700 + +linux (4.4.0-10.25) xenial; urgency=low + + [ Tim Gardner ] + + * Release Tracking Bug + - LP: #1552247 + + * linux: 4.4.0-9.X fails yama ptrace restrictions tests (LP: #1551894) + - security: let security modules use PTRACE_MODE_* with bitmasks + + * [wily][regression] systemtap script compilation broken by new kernels (LP: #1545330) + - SAUCE: (noup) locking/qspinlock: Move __ARCH_SPIN_LOCK_UNLOCKED to qspinlock_types.h + + * [Feature]SD/SDIO/eMMC support for Broxton-P (LP: #1520454) + - mmc: sdhci: 64-bit DMA actually has 4-byte alignment + - mmc: sdhci: Fix DMA descriptor with zero data length + + * Miscellaneous Ubuntu changes + - SAUCE: (noup) cgroup: fix and restructure error handling in copy_cgroup_ns() + + -- Tim Gardner Mon, 29 Feb 2016 13:04:14 -0700 + +linux (4.4.0-9.24) xenial; urgency=low + + [ Tim Gardner ] + + * Release Tracking Bug + - LP: #1551319 + + * AppArmor logs denial for when the device path is ENOENT (LP: #1482943) + - SAUCE: apparmor: fix log of apparmor audit message when kern_path() fails + + * BUG: unable to handle kernel NULL pointer dereference (aa_label_merge) (LP: + #1448912) + - SAUCE: apparmor: Fix: insert race between label_update and label_merge + - SAUCE: apparmor: Fix: ensure aa_get_newest will trip debugging if the + replacedby is not setup + - SAUCE: apparmor: Fix: label merge handling of marking unconfined and stale + - SAUCE: apparmor: Fix: refcount race between locating in labelset and get + - SAUCE: apparmor: Fix: ensure new labels resulting from merge have a + replacedby + - SAUCE: apparmor: Fix: label_vec_merge insertion + - SAUCE: apparmor: Fix: deadlock in aa_put_label() call chain + - SAUCE: apparmor: Fix: add required locking of __aa_update_replacedby on + merge path + - SAUCE: apparmor: Fix: convert replacedby update to be protected by the + labelset lock + - SAUCE: apparmor: Fix: update replacedby allocation to take a gfp parameter + + * apparmor kernel BUG kills firefox (LP: #1430546) + - SAUCE: apparmor: Disallow update of cred when then subjective != the + objective cred + - SAUCE: apparmor: rework retrieval of the current label in the profile update + case + + * sleep from invalid context in aa_move_mount (LP: #1539349) + - SAUCE: apparmor: fix sleep from invalid context + + * s390x: correct restore of high gprs on signal return (LP: #1550468) + - s390/compat: correct restore of high gprs on signal return + + * missing SMAP support (LP: #1550517) + - x86/entry/compat: Add missing CLAC to entry_INT80_32 + + * Floating-point exception handler receives empty Data-Exception Code in + Floating Point Control register (LP: #1548414) + - s390/fpu: signals vs. floating point control register + + * kvm fails to boot GNU Hurd kernels with 4.4 Xenial kernel (LP: #1550596) + - KVM: x86: fix conversion of addresses to linear in 32-bit protected mode + + * Surelock GA2 SP1: capiredp01: cxl_init_adapter fails for CAPI devices + 0000:01:00.0 and 0005:01:00.0 after upgrading to 840.10 Platform firmware + build fips840/b1208b_1604.840 (LP: #1532914) + - cxl: Fix PSL timebase synchronization detection + + * [Feature]EDAC support for Knights Landing (LP: #1519631) + - EDAC, sb_edac: Set fixed DIMM width on Xeon Knights Landing + + * Various failures of kernel_security suite on Xenial kernel on s390x arch + (LP: #1531327) + - [config] s390x -- CONFIG_DEFAULT_MMAP_MIN_ADDR=65536 + + * Unable to install VirtualBox Guest Service in 15.04 (LP: #1434579) + - [Config] Provides: virtualbox-guest-modules when appropriate + + * linux is missing provides for virtualbox-guest-modules [i386 amd64 x32] (LP: + #1507588) + - [Config] Provides: virtualbox-guest-modules when appropriate + + * Backport more recent driver for SKL, KBL and BXT graphics (LP: #1540390) + - SAUCE: i915_bpo: Provide a backport driver for SKL, KBL & BXT graphics + - SAUCE: i915_bpo: Update intel_ips.h file location + - SAUCE: i915_bpo: Rename the backport driver to i915_bpo + - SAUCE: i915_bpo: Add i915_bpo_*() calls for ubuntu/i915 + - drm/i915: remove an extra level of indirection in PCI ID list + - drm/i915/kbl: Add Kabylake PCI ID + - drm/i915/kbl: Add Kabylake GT4 PCI ID + - mm: Export nr_swap_pages + - async: export current_is_async() + - drm: fix potential dangling else problems in for_each_ macros + - dp/mst: add SDP stream support + - drm: Implement drm_modeset_lock_all_ctx() + - drm: Add "prefix" parameter to drm_rect_debug_print() + - drm/i915: Set connector_state->connector using the helper. + - drm/atomic: add connector mask to drm_crtc_state. + - drm/i915: Report context GTT size + - drm/i915: Add get_eld audio component + - SAUCE: Backport I915_PARAM_HAS_EXEC_SOFTPIN and EXEC_OBJECT_PINNED + - SAUCE: i915_bpo: Revert passing plane/encoder name + - SAUCE: sound/hda: Load i915_bpo from the hda driver on SKL/KBL/BXT + - SAUCE: i915_bpo: Support only SKL, KBL and BXT with the backport driver + - drm/i915/bxt: update list of PCIIDs + - drm/i915/skl: Add missing SKL ids + - SAUCE: i915_bpo: Revert "drm/i915: Defer probe if gmux is present but its + driver isn't" + - SAUCE: uapi/drm/i915: Backport I915_EXEC_BSD_MASK + - drm/atomic: Do not unset crtc when an encoder is stolen + - drm/i915: Update connector_mask during readout, v2. + - drm/atomic: Add encoder_mask to crtc_state, v3. + - SAUCE: drm/core: Add drm_encoder_index. + - SAUCE: i915_bpo: Revert "drm/i915: Switch DDC when reading the EDID" + - i915_bpo: [Config] Enable CONFIG_DRM_I915_BPO=m + + * arm64: guest hangs when ntpd is running (LP: #1549494) + - hrtimer: Add support for CLOCK_MONOTONIC_RAW + - hrtimer: Catch illegal clockids + - KVM: arm/arm64: timer: Switch to CLOCK_MONOTONIC_RAW + + * Miscellaneous Ubuntu changes + - [Debian] git-ubuntu-log -- wrap long bug and commit titles + - [Config] CONFIG_ARM_SMMU=y on arm64 + - rebase to v4.4.3 + - [Debian] git-ubuntu-log -- ensure we get the last commit + - [Config] fix up spelling of probably again + - [Debian] perf -- build in the context of the full generated local headers + - SAUCE: tools: lib/bpf -- add generated headers to search path + - SAUCE: proc: Always set super block owner to init_user_ns + - SAUCE: fix-up: kern_mount fail path should not be doing put_buffers() + - SAUCE: apparmor: Fix: oops do to invalid null ptr deref in label print fns + - SAUCE: apparmor: debug: POISON label and replaceby pointer on free + - SAUCE: apparmor: add underscores to indicate aa_label_next_not_in_set() use + needs locking + - SAUCE: apparmor: Fix: refcount leak in aa_label_merge + - SAUCE: apparmor: ensure that repacedby sharing is done correctly + - SAUCE: apparmor Fix: refcount bug in pivotroot mediation + - SAUCE: apparmor: Fix: now that insert can force replacement use it instead + of remove_and_insert + - SAUCE: apparmor: Fix: refcount bug when inserting label update that + transitions ns + - SAUCE: apparmor: Fix: break circular refcount for label that is directly + freed. + - SAUCE: apparmor: Don't remove label on rcu callback if the label has already + been removed + - SAUCE: apparmor: Fix: query label file permission + - SAUCE: apparmor: fix: ref count leak when profile sha1 hash is read + - SAUCE: fixup: cleanup return handling of labels + - SAUCE: fix: replacedby forwarding is not being properly update when ns is + destroyed + - SAUCE: fixup: make __share_replacedby private to get rid of build warning + - SAUCE: fixup: 20/23 locking issue around in __label_update + - SAUCE: fixup: get rid of unused var build warning + - SAUCE: fixup: cast poison values to remove warnings + - SAUCE: apparmor: fix refcount race when finding a child profile + - SAUCE: fixup: warning about aa_label_vec_find_or_create not being static + - SAUCE: fix: audit "no_new_privs" case for exec failure + - SAUCE: Fixup: __label_update() still doesn't handle some cases correctly. + - SAUCE: Move replacedby allocation into label_alloc + - [Debian] supply zfs dkms Provides: based on do_zfs + - [Config] supply zfs dkms Provides: based on do_zfs + - [Config] drop linux-image-3.0 provides + + * Miscellaneous upstream changes + - x86/mpx: Fix off-by-one comparison with nr_registers + + [ Upstream Kernel Changes ] + + * rebase to v4.4.3 + + -- Tim Gardner Thu, 25 Feb 2016 19:47:55 -0700 + +linux (4.4.0-8.23) xenial; urgency=low + + * cgroup namespace mounts broken in containers (LP: #1549398) + - SAUCE: kernfs: Always set super block owner to init_user_ns + + * 4.4.0-7.22 no longer boots on arm64 (LP: #1547718) + - arm64: mm: avoid calling apply_to_page_range on empty range + - UBUNTU SAUCE: arm: mm: avoid calling apply_to_page_range on empty range + + * kernel install failed /bin/cp: cannot stat ‘/boot/initrd.img-4.3.0-7-generic’: No such file or directory (LP: #1536810) + - [Config] postinst -- handle recreating symlinks when a real file is present + + * insecure overlayfs xattrs handling in copy_up (LP: #1534961) + - SAUCE: cred: Add clone_cred() interface + - SAUCE: overlayfs: Use mounter's credentials instead of selectively raising caps + - SAUCE: overlayfs: Skip permission checking for trusted.overlayfs.* xattrs + - SAUCE: overlayfs: Be more careful about copying up sxid files + - SAUCE: overlayfs: Propogate nosuid from lower and upper mounts + + * overlayfs over fuse should refuse copy_up of files if uid/gid not mapped (LP: #1535150) + - SAUCE: cred: Add clone_cred() interface + - SAUCE: overlayfs: Use mounter's credentials instead of selectively raising caps + - SAUCE: overlayfs: Skip permission checking for trusted.overlayfs.* xattrs + - SAUCE: overlayfs: Be more careful about copying up sxid files + - SAUCE: overlayfs: Propogate nosuid from lower and upper mounts + + * overlay: mkdir fails if directory exists in lowerdir in a user namespace (LP: #1531747) + - SAUCE: cred: Add clone_cred() interface + - SAUCE: overlayfs: Use mounter's credentials instead of selectively raising caps + - SAUCE: overlayfs: Skip permission checking for trusted.overlayfs.* xattrs + + * Update Intel ethernet drivers to Fortville SW5 (LP: #1547674) + - net: bulk free infrastructure for NAPI context, use napi_consume_skb + - net: Add eth_platform_get_mac_address() helper. + - i40e: Add mac_filter_element at the end of the list instead of HEAD + - i40e/i40evf: Fix RSS rx-flow-hash configuration through ethtool + - i40e: Replace X722 mac check in ethtool get_settings + - i40evf: allow channel bonding of VFs + - i40e: define function capabilities in only one place + - i40evf: null out ring pointers on free + - i40e: Cleanup the code with respect to restarting autoneg + - i40e: update features with right offload + - i40e: bump version to 1.4.10 + - i40e: add new device IDs for X722 + - i40e: Extend ethtool RSS hooks for X722 + - i40e/i40evf: Fix for UDP/TCP RSS for X722 + - i40evf: add new write-back mode + - i40e/i40evf: Use private workqueue + - i40e: add new proxy-wol bit for X722 + - i40e: Limit DCB FW version checks to X710/XL710 devices + - i40e: AQ Add Run PHY Activity struct + - i40e: AQ Geneve cloud tunnel type + - i40e: AQ Add external power class to get link status + - i40e: add 100Mb ethtool reporting + - ixgbe: bulk free SKBs during TX completion cleanup cycle + - igb: Remove unnecessary flag setting in igb_set_flag_queue_pairs() + - igb: Unpair the queues when changing the number of queues + - igb/igbvf: don't give up + - igb: clean up code for setting MAC address + - igb: Refactor VFTA configuration + - igb: Allow asymmetric configuration of MTU versus Rx frame size + - igb: Do not factor VLANs into RLPML calculation + - igb: Always enable VLAN 0 even if 8021q is not loaded + - igb: Merge VLVF configuration into igb_vfta_set + - igb: Clean-up configuration of VF port VLANs + - igb: Add support for VLAN promiscuous with SR-IOV and NTUPLE + - igb: Drop unnecessary checks in transmit path + - igb: Enable use of "bridge fdb add" to set unicast table entries + - igb: Add workaround for VLAN tag stripping on 82576 + - i40e: AQ Shared resource flags + - i40e: AQ Add set_switch_config + - i40e: AQ Add VXLAN-GPE tunnel type + - i40e: AQ thermal sensor control struct + - i40e: Bump AQ minor version to 1.5 for new FW features + - i40e: Store lan_vsi_idx and lan_vsi_id in the right size + - i40e: fix write-back-on-itr to work with legacy itr + - i40e: add counter for arq overflows + - i40e: add 20G speed for Tx bandwidth calculations + - i40e: refactor DCB function + - i40e: add a little more to an NVM update debug message + - i40evf: enable bus master after reset + - i40e: add netdev info to VSI dump + - i40e: remove VF device IDs from PF + - i40e: trivial: remove unnecessary local var + - i40e/i40evf: Bump i40e to 1.4.11 and i40evf to 1.4.7 + - net: ixgbe: add minimal parser details for ixgbe + - i40e: trivial: drop duplicate definition + - i40e: trivial: fix missing space + - i40e: fix bug in dma sync + - i40e: do TSO only if CHECKSUM_PARTIAL is set + - i40e: allocate memory safer + - i40e: fix: do not sleep in netdev_ops + - i40e: APIs to Add/remove port mirroring rules + - i40e: negate PHY int mask bits + - i40e: drop unused function + - i40e: count allocation errors + - i40e: avoid large memcpy by assigning struct + - i40e/i40evf: bump version to 1.4.12/1.4.8 + - i40e: Enable Geneve offload for FW API ver > 1.4 for XL710/X710 devices + - i40e: add priv flag for automatic rule eviction + - i40e: use eth_platform_get_mac_address() + - i40e: move sync_vsi_filters up in service_task + - i40e: Make the DCB firmware checks for X710/XL710 only + - i40e: set shared bit for multicast filters + - i40e: add VEB stat control and remove L2 cloud filter + - i40e: use new add_veb calling with VEB stats control + - i40e: Refactor force_wb and WB_ON_ITR functionality code + - i40evf: Change vf driver string to reflect all products i40evf supports + - i40e/i40evf: don't lose interrupts + - i40e/i40evf: try again after failure + - i40e: dump descriptor indexes in hex + - i40e/i40evf: use __GFP_NOWARN + - i40e/i40evf: use pages correctly in Rx + - i40e/i40evf: use logical operators, not bitwise + - i40e: properly show packet split status in debugfs + - i40e/i40evf: Bump version + - ixgbe: use u32 instead of __u32 in model header + - ixgbe: fix dates on header of ixgbe_model.h + - i40e: get rid of magic number + - i40e: drop unused debugfs file "dump" + - i40evf: support packet split receive + - i40e: trivial: cleanup use of pf->hw + - i40e: Add a SW workaround for lost interrupts + - i40e: Fix PROMISC mode for Multi-function per port (MFP) devices + - i40e: Removal of code which relies on BASE VEB SEID + - i40e/i40evf: avoid atomics + - i40e: Do not disable queues in the Legacy/MSI Interrupt handler + - i40e: expand comment + - i40e: better error reporting for nvmupdate + - i40evf: set adapter state on reset failure + - i40e: clean event descriptor before use + - i40e: When in promisc mode apply promisc mode to Tx Traffic as well + - i40e/i40evf: Bump i40e to 1.4.15 and i40evf to 1.4.11. + - i40e/i40evf: Drop outer checksum offload that was not requested + - i40e/i40evf: Use u64 values instead of casting them in TSO function + - i40e/i40evf: Factor out L4 header and checksum from L3 bits in TSO path + - i40e/i40evf: Consolidate all header changes into TSO function + - i40e/i40evf: Replace header pointers with unions of pointers in Tx checksum path + - i40e/i40evf: Add support for IPv4 encapsulated in IPv6 + - i40e/i40evf: Handle IPv6 extension headers in checksum offload + - i40e/i40evf: Do not write to descriptor unless we complete + - i40e/i40evf: Add exception handling for Tx checksum + - i40e/i40evf: Clean-up Rx packet checksum handling + - i40e/i40evf: Enable support for SKB_GSO_UDP_TUNNEL_CSUM + - i40e: Fix ATR in relation to tunnels + - i40e: Do not drop support for IPv6 VXLAN or GENEVE tunnels + - i40e: Update feature flags to reflect newly enabled features + - i40evf: Update feature flags to reflect newly enabled features + - i40e: Add support for ATR w/ IPv6 extension headers + - i40e/i40evf: Break up xmit_descriptor_count from maybe_stop_tx + - i40e/i40evf: Rewrite logic for 8 descriptor per packet check + - i40e/i40evf: Move Tx checksum closer to TSO + - i40e: Add functions to blink led on 10GBaseT PHY + - i40e: Fix led blink capability for 10GBaseT PHY + - i40e: Increase timeout when checking GLGEN_RSTAT_DEVSTATE bit + - i40e: Do not wait for Rx queue disable in DCB reconfig + - i40e: Fix for unexpected messaging + - i40e: Expose some registers to program parser, FD and RSS logic + - i40e: add check for null VSI + - i40e: add adminq commands for Rx CTL registers + - i40e: implement and use Rx CTL helper functions + - i40e: Use the new rx ctl register helpers. Don't use AQ calls from clear_hw. + - i40e: suspend scheduling during driver unload + - i40e: let go of the past + - i40e/i40evf: Bump i40e to 1.4.25 and i40evf to 1.4.15 + + * MPT3SAS Driver update for next kernel release (LP: #1512221) + - mpt3sas: A correction in unmap_resources + - mpt3sas: Added support for high port count HBA variants. + - mpt3sas: Used IEEE SGL instead of MPI SGL while framing a SMP Passthrough request message. + - mpt3sas: Fix static analyzer(coverity) tool identified defects + - mpt3sas: Never block the Enclosure device + - mpt3sas: Make use of additional HighPriority credit message frames for sending SCSI IO's + - mpt3sas: Added smp_affinity_enable module parameter. + - mpt3sas: Add support for configurable Chain Frame Size + - mpt3sas: Updated MPI Header to 2.00.42 + - mpt3sas: Fix for Asynchronous completion of timedout IO and task abort of timedout IO. + - mpt3sas: Updating mpt3sas driver version to 12.100.00.00 + - mpt3sas: Remove cpumask_clear for zalloc_cpumask_var and don't free free_cpu_mask_var before reply_q + + * /sys/class/scsi_host/hostN/partition_number and .../mad_version showing up BE on LE Ubuntu. (ibmvscsi) (LP: #1547153) + - ibmvscsi: Add endian conversions to sysfs attribute show functions + + * Miscellaneous Ubuntu changes + - [Packaging] git-ubuntu-log -- output should be utf-8 + - [Packaging] git-ubuntu-log -- handle invalid or private bugs + + -- Andy Whitcroft Wed, 24 Feb 2016 20:34:49 +0000 + +linux (4.4.0-7.22) xenial; urgency=low + + [ Tim Gardner ] + + * Release Tracking Bug + - LP: #1547205 + + * need arm64 acpi parking protocol support in xenial (LP: #1547047) + - [Config] Enabled ARM64_ACPI_PARKING_PROTOCOL + - arm64: kernel: implement ACPI parking protocol + + * Please pull cgroup namespaces (LP: #1546775) + - SAUCE: (noup) kernfs: Add API to generate relative kernfs path + - SAUCE: (noup) sched: new clone flag CLONE_NEWCGROUP for cgroup namespace + - SAUCE: (noup) cgroup: introduce cgroup namespaces + - SAUCE: (noup) cgroup: cgroup namespace setns support + - SAUCE: (noup) kernfs: define kernfs_node_dentry + - SAUCE: (noup) cgroup: mount cgroupns-root when inside non-init cgroupns + - SAUCE: (noup) Add FS_USERNS_FLAG to cgroup fs + - SAUCE: (noup) cgroup: Add documentation for cgroup namespaces + + * [Feature]Pulse-Width Modulation enabling on Broxton-P (LP: #1520436) + - [Config] CONFIG_PWM_OMAP_DMTIMER=m + - pwm: lpss: Remove ->free() callback + - pwm: bcm2835: Calculate scaler in ->config() + - pwm: bcm2835: Prevent division by zero + - pwm: bcm2835: Fix email address specification + - pwm: lpss: Update PWM setting for Broxton + - pwm: lpss: Select core part automatically + - pwm: lpss: Rework the sequence of programming PWM_SW_UPDATE + - pwm: fsl-ftm: Fix clock enable/disable when using PM + - pwm: lpc32xx: correct number of PWM channels from 2 to 1 + - pwm: lpc32xx: make device usable with common clock framework + - pwm: lpc32xx: fix and simplify duty cycle and period calculations + - pwm: lpc32xx: return ERANGE, if requested period is not supported + - pwm: rcar: Improve accuracy of frequency division setting + - pwm: Add PWM driver for OMAP using dual-mode timers + - pwm: add HAS_IOMEM dependency to PWM_FSL_FTM + - pwm: omap-dmtimer: Potential NULL dereference on error + - pwm: Mark all devices as "might sleep" + + * [Hyper-V] Netmask value is not parsed by hv_set_ifconfig - IP injection (LP: #1540586) + - [Debian] hv: hv_set_ifconfig -- switch to approved indentation + - [Debian] hv: hv_set_ifconfig -- fix numerous parameter handling issues + + * Update megaraid driver to MR6.10 (LP: #1544679) + - megaraid_sas: Do not allow PCI access during OCR + - megaraid_sas: MFI IO timeout handling + - megaraid_sas: Syncing request flags macro names with firmware + - megaraid_sas: Task management support + - megaraid_sas: Update device queue depth based on interface type + - megaraid_sas: Fastpath region lock bypass + - megaraid_sas: Reply Descriptor Post Queue (RDPQ) support + - megaraid_sas: Code optimization build_and_issue_cmd return-type + - megaraid_sas: Dual queue depth support + - megaraid_sas: IO throttling support + - megaraid_sas: Make adprecovery variable atomic + - megaraid_sas: MFI adapter OCR changes + - megaraid_sas: Introduce module parameter for SCSI command timeout + - megaraid_sas: SPERC OCR changes + - megaraid_sas: driver version upgrade + - megaraid: fix null pointer check in megasas_detach_one(). + - megaraid_sas: Fix for IO failing post OCR in SRIOV environment + - megaraid_sas: Fix SMAP issue + - megaraid_sas: Add an i/o barrier + + * Surelock-GA2:kernel panic @ cxl_configure_adapter+0x418/0x8b0 (LP: #1546145) + - powerpc/powernv: Fix stale PE primary bus + + * In A Single Power VM LPAR : Network Configuration Fails in Ubuntu16.04 while installation (LP: #1544321) + - [Config] Update bnx2x d-i firmware to 7.12.30 + + * Miscellaneous Ubuntu changes + - rebase to v4.4.2 + + * Miscellaneous upstream changes + - openvswitch: allow management from inside user namespaces + - net: thunderx: nicvf_queues: nivc_*_intr: remove duplication + - net, thunderx: Remove unnecessary rcv buffer start address management + - net: thunderx: HW TSO support for pass-2 hardware + - net: thunderx: Enable CQE count threshold interrupt + - net: cavium: liquidio: use helpers ns_to_timespec64() + - irqchip/gic-v3: Make sure read from ICC_IAR1_EL1 is visible on redestributor + - arm64: KVM: Configure TCR_EL2.PS at runtime + - arm64: prefetch: don't provide spin_lock_prefetch with LSE + - arm64: prefetch: add alternative pattern for CPUs without a prefetcher + - arm64: lib: improve copy_page to deal with 128 bytes at a time + - arm64: lib: patch in prfm for copy_page if requested + - arm64: prefetch: add missing #include for spin_lock_prefetch + - net, thunderx: Add TX timeout and RX buffer alloc failure stats. + - net: thunderx: Use napi_schedule_irqoff() + - net: thunderx: Assign affinity hints to vf's interrupts + - net: thunderx: bgx: Use standard firmware node infrastructure. + - net: thunderx: bgx: Add log message when setting mac address + - net: thunderx: Alloc higher order pages when pagesize is small + - net: cavium: liquidio: Return correct error code + - net: cavium: liquidio: fix check for in progress flag + - livepatch: add old_sympos as disambiguator field to klp_func + - livepatch: add sympos as disambiguator field to klp_reloc + - livepatch: function,sympos scheme in livepatch sysfs directory + - module: Use the same logic for setting and unsetting RO/NX + - gcov: use within_module() helper. + - module: use a structure to encapsulate layout. + - module: clean up RO/NX handling. + - module: keep percpu symbols in module's symtab + - livepatch: Cleanup module page permission changes + + [ Upstream Kernel Changes ] + + * rebase to v4.4.2 + + -- Tim Gardner Tue, 16 Feb 2016 14:24:45 -0700 + +linux (4.4.0-6.21) xenial; urgency=low + + [ Tim Gardner ] + + * Release Tracking Bug + - LP: #1546283 + + * Naples/Zen, NTB Driver (LP: #1542071) + - [Config] CONFIG_NTB_AMD=m + - NTB: Add support for AMD PCI-Express Non-Transparent Bridge + + * [Hyper-V] kernel panic occurs when installing Ubuntu Server x32 (LP: #1495983) + - SAUCE: storvsc: use small sg_tablesize on x86 + + * Enable arm64 emulation of removed ARMv7 instructions (LP: #1545542) + - [Config] CONFIG_ARMV8_DEPRECATED=y + + * Surelock-GA2:kernel panic/ exception @ pcibios_set_pcie_reset_state+0x118/0x280 + cxl_reset+0x5c/0xc0 (LP: #1545037) + - powerpc/eeh: Fix stale cached primary bus + + * Miscellaneous Ubuntu changes + - SAUCE: fs: Add user namesapace member to struct super_block + - SAUCE: fs: Limit file caps to the user namespace of the super block + - SAUCE: Smack: Add support for unprivileged mounts from user namespaces + - SAUCE: block_dev: Support checking inode permissions in lookup_bdev() + - SAUCE: block_dev: Check permissions towards block device inode when mounting + - SAUCE: fs: Treat foreign mounts as nosuid + - SAUCE: selinux: Add support for unprivileged mounts from user namespaces + - SAUCE: userns: Replace in_userns with current_in_userns + - SAUCE: Smack: Handle labels consistently in untrusted mounts + - SAUCE: fs: Check for invalid i_uid in may_follow_link() + - SAUCE: cred: Reject inodes with invalid ids in set_create_file_as() + - SAUCE: fs: Refuse uid/gid changes which don't map into s_user_ns + - SAUCE: fs: Update posix_acl support to handle user namespace mounts + - SAUCE: fs: Ensure the mounter of a filesystem is privileged towards its inodes + - SAUCE: fs: Don't remove suid for CAP_FSETID in s_user_ns + - SAUCE: fs: Allow superblock owner to access do_remount_sb() + - SAUCE: capabilities: Allow privileged user in s_user_ns to set security.* xattrs + - SAUCE: fuse: Add support for pid namespaces + - SAUCE: fuse: Support fuse filesystems outside of init_user_ns + - SAUCE: fuse: Restrict allow_other to the superblock's namespace or a descendant + - SAUCE: fuse: Allow user namespace mounts + - SAUCE: mtd: Check permissions towards mtd block device inode when mounting + - SAUCE: fs: Update i_[ug]id_(read|write) to translate relative to s_user_ns + - SAUCE: quota: Convert ids relative to s_user_ns + - SAUCE: evm: Translate user/group ids relative to s_user_ns when computing HMAC + - SAUCE: fs: Allow CAP_SYS_ADMIN in s_user_ns to freeze and thaw filesystems + - SAUCE: quota: Treat superblock owner as privilged + - SAUCE: ima/evm: Allow root in s_user_ns to set xattrs + - SAUCE: block_dev: Forbid unprivileged mounting when device is opened for writing + - SAUCE: ext4: Add support for unprivileged mounts from user namespaces + - SAUCE: ext4: Add module parameter to enable user namespace mounts + - SAUCE: fuse: Add module parameter to enable user namespace mounts + + * Miscellaneous upstream changes + - megaraid: Fix possible NULL pointer deference in mraid_mm_ioctl + - libahci: Implement the capability to override the generic ahci interrupt handler. + - ata: Remove the AHCI_HFLAG_EDGE_IRQ support from libahci. + - ahci_xgene: Implement the workaround to fix the missing of the edge interrupt for the HOST_IRQ_STAT. + + -- Tim Gardner Fri, 12 Feb 2016 09:49:05 -0700 + +linux (4.4.0-5.20) xenial; urgency=low + + [ Tim Gardner ] + + * Release Tracking Bug + - LP: #1544637 + + * s390/cio: update measurement characteristics (LP: #1541534) + - s390/cio: fix measurement characteristics memleak + - s390/cio: ensure consistent measurement state + - s390/cio: update measurement characteristics + + * qeth: layer2 reports unknown state to network tools. (LP: #1541907) + - qeth: initialize net_device with carrier off + + * Collateral damage due to kernel configuration change enabling CONFIG_ZONE_DEVICE (Kernel 4.4 amd64) (LP: #1534647) + - [Config] CONFIG_ZONE_DMA=y + - mm: CONFIG_NR_ZONES_EXTENDED + + * perf enahancements for ppc64 (LP: #1521678) + - perf kvm/{x86,s390}: Remove dependency on uapi/kvm_perf.h + - perf kvm/{x86,s390}: Remove const from kvm_events_tp + - perf kvm/powerpc: Port perf kvm stat to powerpc + - perf kvm/powerpc: Add support for HCALL reasons + + * Soft lockup with "block nbdX: Attempted send on closed socket" spam (LP: #1505564) + - SAUCE: nbd: ratelimit error msgs after socket close + + * sleep from invalid context in aa_move_mount (LP: #1539349) + - SAUCE: apparmor: fix sleep from invalid context + + * Introducing ConnectX-4 Ethernet SRIOV (LP: #1540435) + - net/mlx5_core: Modify enable/disable hca functions + - net/mlx5_core: Add base sriov support + - net/mlx5: Add HW capabilities and structs for SR-IOV E-Switch + - net/mlx5: Update access functions to Query/Modify vport MAC address + - net/mlx5: Introduce access functions to modify/query vport mac lists + - net/mlx5: Introduce access functions to modify/query vport state + - net/mlx5: Introduce access functions to modify/query vport promisc mode + - net/mlx5: Introduce access functions to modify/query vport vlans + - net/mlx5e: Write UC/MC list and promisc mode into vport context + - net/mlx5e: Write vlan list into vport context + - net/mlx5: Introducing E-Switch and l2 table + - net/mlx5: E-Switch, Introduce FDB hardware capabilities + - net/mlx5: E-Switch, Add SR-IOV (FDB) support + - net/mlx5: E-Switch, Introduce Vport administration functions + - net/mlx5: E-Switch, Introduce HCA cap and E-Switch vport context + - net/mlx5: E-Switch, Introduce set vport vlan (VST mode) + - net/mlx5: E-Switch, Introduce get vf statistics + - net/mlx5e: Add support for SR-IOV ndos + - net/mlx5: Fix query E-Switch capabilities + - net/mlx5e: Assign random MAC address if needed + + * make wacom_w8001 work well in xenial (LP: #1542771) + - Input: wacom_w8001 - use __set_bit for evbits + - Input: wacom_w8001 - set BTN_TOOL_DOUBLETAP if we have 2fg support + - Input: wacom_w8001 - handle touch error case correctly + - Input: wacom_w8001 - split pen and touch initialization up + - Input: wacom_w8001 - split the touch and pen devices into two devices + - Input: wacom_w8001 - drop use of ABS_MT_TOOL_TYPE + + * virtualbox: update to 5.0.14-dfsg-2 (LP: #1542728) + - ubuntu: vbox -- update to 5.0.14-dfsg-2 + + * Miscellaneous Ubuntu changes + - [Packaging] git-ubuntu-log -- fix empty section formatting + - SAUCE: (noup) Update spl to 0.6.5.4-0ubuntu2, zfs to 0.6.5.4-0ubuntu2 + + -- Andy Whitcroft Sat, 06 Feb 2016 22:32:10 +0000 + +linux (4.4.0-4.19) xenial; urgency=low + + * update ZFS and SPL to 0.6.5.4 (LP: #1542296) + - [Config] update spl/zfs version + - SAUCE: (noup) Update spl to 0.6.5.4-0ubuntu2, zfs to 0.6.5.4-0ubuntu1 + - [Config] reconstruct -- drop links for zfs userspace components + - [Config] reconstruct -- drop links for zfs userspace components -- restore spec links + + * recvmsg() fails SCM_CREDENTIALS request with EOPNOTSUPP. (LP: #1540731) + - Revert "af_unix: Revert 'lock_interruptible' in stream receive code" + + * lxc: ADT exercise test failing with linux-4.4.0-3.17 (LP: #1542049) + - Revert "UBUNTU: SAUCE: apparmor: fix sleep from invalid context" + + * WARNING: at /build/linux-lts-wily-W0lTWH/linux-lts-wily-4.2.0/net/core/skbuff.c:4174 (Travis IB) (LP: #1541326) + - SAUCE: IB/IPoIB: Do not set skb truesize since using one linearskb + + * backport Microsoft Precision Touchpad palm rejection patch (LP: #1541671) + - HID: multitouch: enable palm rejection if device implements confidence usage + + * [Ubuntu 16.04] Update qla2xxx driver for POWER (QLogic) (LP: #1541456) + - qla2xxx: Remove unavailable firmware files + - qla2xxx: Enable Extended Logins support + - qla2xxx: Enable Exchange offload support. + - qla2xxx: Enable Target counters in DebugFS. + - qla2xxx: Add FW resource count in DebugFS. + - qla2xxx: Added interface to send explicit LOGO. + - qla2xxx: Delete session if initiator is gone from FW + - qla2xxx: Wait for all conflicts before ack'ing PLOGI + - qla2xxx: Replace QLA_TGT_STATE_ABORTED with a bit. + - qla2xxx: Remove dependency on hardware_lock to reduce lock contention. + - qla2xxx: Add irq affinity notification + - qla2xxx: Add selective command queuing + - qla2xxx: Move atioq to a different lock to reduce lock contention + - qla2xxx: Disable ZIO at start time. + - qla2xxx: Set all queues to 4k + - qla2xxx: Check for online flag instead of active reset when transmitting responses + - scsi: qla2xxxx: avoid type mismatch in comparison + + * [Hyper-V] PCI Passthrough (LP: #1541120) + - x86/irq: Export functions to allow MSI domains in modules + - genirq/msi: Export functions to allow MSI domains in modules + + * Update lpfc driver to 11.0.0.10 (LP: #1541592) + - lpfc: Fix FCF Infinite loop in lpfc_sli4_fcf_rr_next_index_get. + - lpfc: Fix the FLOGI discovery logic to comply with T11 standards + - lpfc: Fix RegLogin failed error seen on Lancer FC during port bounce + - lpfc: Fix driver crash when module parameter lpfc_fcp_io_channel set to 16 + - lpfc: Fix crash in fcp command completion path. + - lpfc: Modularize and cleanup FDMI code in driver + - lpfc: Fix RDP Speed reporting. + - lpfc: Fix RDP ACC being too long. + - lpfc: Make write check error processing more resilient + - lpfc: Use new FDMI speed definitions for 10G, 25G and 40G FCoE. + - lpfc: Fix mbox reuse in PLOGI completion + - lpfc: Fix external loopback failure. + - lpfc: Add logging for misconfigured optics. + - lpfc: Delete unnecessary checks before the function call "mempool_destroy" + - lpfc: Use kzalloc instead of kmalloc + - lpfc: Update version to 11.0.0.10 for upstream patch set + + * Miscellaneous Ubuntu changes + - [Config] CONFIG_ARM64_VA_BITS=48 + - [Config] Fixed Vcs-Git + + * Miscellaneous upstream changes + - cxl: Fix possible idr warning when contexts are released + - cxl: use correct operator when writing pcie config space values + - cxlflash: drop unlikely before IS_ERR_OR_NULL + - cxl: Fix DSI misses when the context owning task exits + - cxlflash: Removed driver date print + - cxlflash: Fix to resolve cmd leak after host reset + - cxlflash: Resolve oops in wait_port_offline + - cxlflash: Enable device id for future IBM CXL adapter + - cxl: fix build for GCC 4.6.x + - cxl: use -Werror only with CONFIG_PPC_WERROR + - cxl: Enable PCI device ID for future IBM CXL adapter + + -- Andy Whitcroft Fri, 05 Feb 2016 14:58:51 +0000 + +linux (4.4.0-3.17) xenial; urgency=low + + [ Tim Gardner ] + + * Release Tracking Bug + - LP: #1541058 + * [Config] CONFIG_BLK_DEV_NVME_SCSI=y + - LP: #1531539 + * SAUCE: nvme merge cleanup + - LP: #1531539 + * rebase to v4.4.1 + + [ Andy Whitcroft ] + + * Revert "SAUCE: dm: introduce a target_ioctl op to allow target specific + ioctls" + - LP: #1538618 + * postinst -- detect symlinks correctly + - LP: #1536810 + + [ John Johansen ] + + * SAUCE: apparmor: fix sleep from invalid context + - LP: #1539349 + + [ Upstream Kernel Changes ] + + * powerpc/eeh: Fix PE location code + - LP: #1538909 + * powerpc/pseries: Limit EPOW reset event warnings + - LP: #1539102 + * lightnvm: fix bio submission issue + - LP: #1531539 + * lightnvm: fix incorrect nr_free_blocks stat + - LP: #1531539 + * lightnvm: add check after mempool allocation + - LP: #1531539 + * lightnvm: unlock rq and free ppa_list on submission fail + - LP: #1531539 + * lightnvm: move ppa erase logic to core + - LP: #1531539 + * lightnvm: refactor rqd ppa list into set/free + - LP: #1531539 + * lightnvm: refactor end_io functions for sync + - LP: #1531539 + * lightnvm: return the get_bb_tbl return value + - LP: #1531539 + * lightnvm: check bi_error in gc + - LP: #1531539 + * lightnvm: put block back to gc list on its reclaim fail + - LP: #1531539 + * lightnvm: fix locking and mempool in rrpc_lun_gc + - LP: #1531539 + * lightnvm: sectors first in ppa list + - LP: #1531539 + * lightnvm: move the pages per block check out of the loop + - LP: #1531539 + * lightnvm: support multiple ppas in nvm_erase_ppa + - LP: #1531539 + * lightnvm: move rq->error to nvm_rq->error + - LP: #1531539 + * lightnvm: introduce nvm_submit_ppa + - LP: #1531539 + * lightnvm: reference rrpc lun in rrpc block + - LP: #1531539 + * lightnvm: fix missing grown bad block type + - LP: #1531539 + * lightnvm: manage open and closed blocks separately + - LP: #1531539 + * lightnvm: add mccap support + - LP: #1531539 + * lightnvm: introduce mlc lower page table mappings + - LP: #1531539 + * lightnvm: core on-disk initialization + - LP: #1531539 + * lightnvm: introduce ioctl to initialize device + - LP: #1531539 + * lightnvm: use system block for mm initialization + - LP: #1531539 + * lightnvm: introduce factory reset + - LP: #1531539 + * lightnvm: ensure that nvm_dev_ops can be used without CONFIG_NVM + - LP: #1531539 + * blk-mq: add a flags parameter to blk_mq_alloc_request + - LP: #1531539 + * nvme: move struct nvme_iod to pci.c + - LP: #1531539 + * nvme: split command submission helpers out of pci.c + - LP: #1531539 + * nvme: use offset instead of a struct for registers + - LP: #1531539 + * nvme: split nvme_trans_device_id_page + - LP: #1531539 + * nvme: use vendor it from identify + - LP: #1531539 + * nvme: split a new struct nvme_ctrl out of struct nvme_dev + - LP: #1531539 + * nvme: simplify nvme_setup_prps calling convention + - LP: #1531539 + * nvme: refactor nvme_queue_rq + - LP: #1531539 + * nvme: factor out a nvme_unmap_data helper + - LP: #1531539 + * nvme: move nvme_error_status to common code + - LP: #1531539 + * nvme: move nvme_setup_flush and nvme_setup_rw to common code + - LP: #1531539 + * nvme: split __nvme_submit_sync_cmd + - LP: #1531539 + * nvme: use the block layer for userspace passthrough metadata + - LP: #1531539 + * nvme: move block_device_operations and ns/ctrl freeing to common code + - LP: #1531539 + * nvme: add explicit quirk handling + - LP: #1531539 + * nvme: move remaining CC setup into nvme_enable_ctrl + - LP: #1531539 + * nvme: move nvme_{enable,disable,shutdown}_ctrl to common code + - LP: #1531539 + * nvme: add a common helper to read Identify Controller data + - LP: #1531539 + * nvme: move the call to nvme_init_identify earlier + - LP: #1531539 + * nvme: move namespace scanning to common code + - LP: #1531539 + * nvme: move chardev and sysfs interface to common code + - LP: #1531539 + * nvme: refactor set_queue_count + - LP: #1531539 + * blk-integrity: empty implementation when disabled + - LP: #1531539 + * NVMe: fix build with CONFIG_NVM enabled + - LP: #1531539 + * nvme: fix another 32-bit build warning + - LP: #1531539 + * nvme: precedence bug in nvme_pr_clear() + - LP: #1531539 + * nvme: only ignore hardware errors in nvme_create_io_queues + - LP: #1531539 + * nvme: only add a controller to dev_list after it's been fully + initialized + - LP: #1531539 + * nvme: protect against simultaneous shutdown invocations + - LP: #1531539 + * nvme: don't take the I/O queue q_lock in nvme_timeout + - LP: #1531539 + * nvme: merge nvme_abort_req and nvme_timeout + - LP: #1531539 + * nvme: add NVME_SC_CANCELLED + - LP: #1531539 + * nvme: simplify resets + - LP: #1531539 + * nvme: do not restart the request timeout if we're resetting the + controller + - LP: #1531539 + * nvme: merge probe_work and reset_work + - LP: #1531539 + * nvme: remove dead controllers from a work item + - LP: #1531539 + * nvme: switch abort_limit to an atomic_t + - LP: #1531539 + * NVMe: Implement namespace list scanning + - LP: #1531539 + * NVMe: Use unbounded work queue for all work + - LP: #1531539 + * NVMe: Remove device management handles on remove + - LP: #1531539 + * NVMe: Simplify metadata setup + - LP: #1531539 + * nvme: fix admin queue depth + - LP: #1531539 + * nvme: factor out a few helpers from req_completion + - LP: #1531539 + * nvme: switch delete SQ/CQ to blk_execute_rq_nowait + - LP: #1531539 + * nvme: switch abort to blk_execute_rq_nowait + - LP: #1531539 + * nvme: special case AEN requests + - LP: #1531539 + * nvme: simplify completion handling + - LP: #1531539 + * nvme: properly free resources for cancelled command + - LP: #1531539 + * nvme: meta_sg doesn't have to be an array + - LP: #1531539 + * nvme: merge iod and cmd_info + - LP: #1531539 + * NVMe: Add pci error handlers + - LP: #1531539 + * NVMe: Export namespace attributes to sysfs + - LP: #1531539 + * nvme: Move nvme_freeze/unfreeze_queues to nvme core + - LP: #1531539 + * nvme: synchronize access to ctrl->namespaces + - LP: #1531539 + * nvme: fixes for NVME_IOCTL_IO_CMD on the char device + - LP: #1531539 + * nvme: make SG_IO support optional + - LP: #1531539 + * NVMe: Fix admin queue ring wrap + - LP: #1531539 + * NVMe: Use a retryable error code on reset + - LP: #1531539 + * NVMe: Remove queue freezing on resets + - LP: #1531539 + * NVMe: IO queue deletion re-write + - LP: #1531539 + * NVMe: Shutdown controller only for power-off + - LP: #1531539 + * NVMe: Export NVMe attributes to sysfs group + - LP: #1531539 + * i40e: fix build warnings + * net: i40e: shut up uninitialized variable warnings + * Drivers: hv: vmbus: fix build warning + * Drivers: hv: util: Increase the timeout for util services + * Drivers: hv: utils: run polling callback always in interrupt context + * tools: hv: report ENOSPC errors in hv_fcopy_daemon + * tools: hv: remove repeated HV_FCOPY string + * Drivers: hv: util: catch allocation errors + * Drivers: hv: utils: use memdup_user in hvt_op_write + * drivers/hv: cleanup synic msrs if vmbus connect failed + * drivers:hv: Export a function that maps Linux CPU num onto Hyper-V proc + num + * drivers:hv: Export the API to invoke a hypercall on Hyper-V + * drivers:hv: Define the channel type for Hyper-V PCI Express + pass-through + * Drivers: hv: vss: run only on supported host versions + * Drivers: hv: vmbus: Use uuid_le type consistently + * Drivers: hv: vmbus: Use uuid_le_cmp() for comparing GUIDs + * Drivers: hv: vmbus: Get rid of the unused macro + * Drivers: hv: vmbus: Get rid of the unused irq variable + * Drivers: hv: vmbus: serialize process_chn_event() and + vmbus_close_internal() + * Drivers: hv: vmbus: do sanity check of channel state in + vmbus_close_internal() + * Drivers: hv: vmbus: fix rescind-offer handling for device without a + driver + * Drivers: hv: vmbus: release relid on error in vmbus_process_offer() + * Drivers: hv: vmbus: channge vmbus_connection.channel_lock to mutex + * drivers:hv: Allow for MMIO claims that span ACPI _CRS records + * Drivers: hv: vmbus: Fix a Host signaling bug + * drivers/hv: correct tsc page sequence invalid value + * Drivers: hv: vmbus: Force all channel messages to be delivered on CPU 0 + * Drivers: hv: utils: Invoke the poll function after handshake + * tools: hv: vss: fix the write()'s argument: error -> vss_msg + * Drivers: hv: utils: fix memory leak on on_msg() failure + * Drivers: hv: utils: rename outmsg_lock + * Drivers: hv: utils: introduce HVUTIL_TRANSPORT_DESTROY mode + * Drivers: hv: utils: fix crash when device is removed from host side + * Drivers: hv: ring_buffer.c: fix comment style + * Drivers: hv: ring_buffer: remove stray smp_read_barrier_depends() + * Drivers: hv: ring_buffer: remove code duplication from + hv_ringbuffer_peek/read() + * Drivers: hv: remove code duplication between + vmbus_recvpacket()/vmbus_recvpacket_raw() + * Drivers: hv: ring_buffer: eliminate hv_ringbuffer_peek() + * drivers/hv: replace enum hv_message_type by u32 + * drivers/hv: Move HV_SYNIC_STIMER_COUNT into Hyper-V UAPI x86 header + * drivers/hv: Move struct hv_message into UAPI Hyper-V x86 header + * drivers/hv: Move struct hv_timer_message_payload into UAPI Hyper-V x86 + header + * Drivers: hv: vmbus: fix the building warning with hyperv-keyboard + * Drivers: hv: utils: fix hvt_op_poll() return value on transport destroy + * Drivers: hv: vmbus: Treat Fibre Channel devices as performance critical + + [ Upstream Kernel Changes ] + + * rebase to v4.4.1 + - LP: #1533461 + - LP: #1529624 + + -- Tim Gardner Fri, 29 Jan 2016 08:06:37 -0700 + +linux (4.4.0-2.16) xenial; urgency=low + + [ Andy Whitcroft ] + + * Release Tracking Bug + - LP: #1539090 + * SAUCE: hv: hv_set_ifconfig -- convert to python3 + - LP: #1506521 + * SAUCE: dm: introduce a target_ioctl op to allow target specific ioctls + - LP: #1538618 + + [ Colin Ian King ] + + * SAUCE: ACPI / tables: Add acpi_force_32bit_fadt_addr option to force 32 + bit FADT addresses (LP: #1529381) + - LP: #1529381 + + [ John Johansen ] + + * SAUCE: (no-up): apparmor: fix for failed mediation of socket that is + being shutdown + - LP: #1446906 + + [ Mahesh Salgaonkar ] + + * SAUCE: Powernv: Remove the usage of PACAR1 from opal wrappers + - LP: #1537881 + * SAUCE: powerpc/book3s: Fix TB corruption in guest exit path on HMI + interrupt. + - LP: #1537881 + * SAUCE: KVM: PPC: Book3S HV: Fix soft lockups in KVM on HMI for time + base errors + - LP: #1537881 + + [ Paolo Pisati ] + + * SAUCE: arm64: errata: Add -mpc-relative-literal-loads to erratum + #843419 build flags + - LP: #1533009 + * [Config] MFD_TPS65217=y && REGULATOR_TPS65217=y + * [Config] disable ARCH_ZX (ZTE ZX Soc) + + [ Tim Gardner ] + + * Revert "SAUCE: (noup) cxlflash: a couple off by one bugs" + * SAUCE: (no-up) Update bnx2x firmware to 7.12.30.0 + - LP: #1536719 + * SAUCE: drop obsolete bnx2x firmware + * SAUCE: i40e: Silence 'may be used uninitialized' warnings + - LP: #1536474 + * [Config] CONFIG_ZONE_DMA=y for amd64 lowlatency + - LP: #1534647 + * [Config] Add pvpanic to virtual flavour + - LP: #1537923 + * [Config] CONFIG_INTEL_PUNIT_IPC=m, CONFIG_INTEL_TELEMETRY=m + - LP: #1520457 + + [ Upstream Kernel Changes ] + + * i40evf: fix compiler warning of unused variable + - LP: #1536474 + * intel: i40e: fix confused code + - LP: #1536474 + * i40e/i40evf: remove unused tunnel parameter + - LP: #1536474 + * i40e: Change BUG_ON to WARN_ON in service event complete + - LP: #1536474 + * i40e: remove BUG_ON from feature string building + - LP: #1536474 + * i40e: remove BUG_ON from FCoE setup + - LP: #1536474 + * i40e: Workaround fix for mss < 256 issue + - LP: #1536474 + * i40e/i40evf: Add a stat to track how many times we have to do a force + WB + - LP: #1536474 + * i40e: Move the saving of old link info from handle_link_event to + link_event + - LP: #1536474 + * i40e/i40evf: Add comment to #endif + - LP: #1536474 + * i40e/i40evf: clean up error messages + - LP: #1536474 + * i40evf: handle many MAC filters correctly + - LP: #1536474 + * i40e: return the number of enabled queues for ETHTOOL_GRXRINGS + - LP: #1536474 + * i40e: rework the functions to configure RSS with similar parameters + - LP: #1536474 + * i40e: create a generic configure rss function + - LP: #1536474 + * i40e: Bump version to 1.4.2 + - LP: #1536474 + * i40e: add new fields to store user configuration + - LP: #1536474 + * i40e: rename rss_size to alloc_rss_size in i40e_pf + - LP: #1536474 + * i40e/i40evf: Fix RS bit update in Tx path and disable force WB + workaround + - LP: #1536474 + * i40e/i40evf: prefetch skb data on transmit + - LP: #1536474 + * i40evf: rename VF adapter specific RSS function + - LP: #1536474 + * i40evf: create a generic config RSS function + - LP: #1536474 + * i40evf: create a generic get RSS function + - LP: #1536474 + * i40evf: add new fields to store user configuration of RSS + - LP: #1536474 + * i40e: Update error messaging + - LP: #1536474 + * i40e: fix confusing message + - LP: #1536474 + * i40e: make error message more useful + - LP: #1536474 + * i40evf: quoth the VF driver, Nevermore + - LP: #1536474 + * i40evf: allocate queue vectors dynamically + - LP: #1536474 + * i40evf: allocate ring structs dynamically + - LP: #1536474 + * i40e/i40evf: Bump i40e version to 1.4.4 and i40evf to 1.4.1 + - LP: #1536474 + * i40e: fix: do not sleep in netdev_ops + - LP: #1536474 + * i40e: remove unused argument + - LP: #1536474 + * i40evf: increase max number of queues + - LP: #1536474 + * i40evf: set real num queues + - LP: #1536474 + * i40evf: remove duplicate string + - LP: #1536474 + * i40e: Detection and recovery of TX queue hung logic moved to + service_task from tx_timeout + - LP: #1536474 + * i40e: Fix memory leaks, sideband filter programming + - LP: #1536474 + * i40evf: don't use atomic allocation + - LP: #1536474 + * i40e: propagate properly + - LP: #1536474 + * i40evf: use correct types + - LP: #1536474 + * i40e: use priv flags to control packet split + - LP: #1536474 + * i40e: Remove separate functions gathering XOFF Rx stats + - LP: #1536474 + * i40e: fix whitespace + - LP: #1536474 + * i40e/i40evf: use logical operator + - LP: #1536474 + * i40e/i40evf: Bump version to 1.4.7 for i40e and 1.4.3 for i40evf + - LP: #1536474 + * i40e: trivial fixes + - LP: #1536474 + * i40e: Fix i40e_print_features() VEB mode output + - LP: #1536474 + * i40e: chomp the BIT(_ULL) + - LP: #1536474 + * i40e: properly delete VF MAC filters + - LP: #1536474 + * i40e: don't add zero MAC filter + - LP: #1536474 + * i40evf: check rings before freeing resources + - LP: #1536474 + * i40e: use explicit cast from u16 to u8 + - LP: #1536474 + * i40e: Opcode and structures required by OEM Post Update AQ command and + add new NVM arq message + - LP: #1536474 + * i40e: hush little warnings + - LP: #1536474 + * i40e/i40evf: Add a new offload for RSS PCTYPE V2 for X722 + - LP: #1536474 + * i40e: clean whole mac filter list + - LP: #1536474 + * i40evf: change version string generation + - LP: #1536474 + * i40e/i40evf: Bump i40e to 1.4.8 and i40evf to 1.4.4 + - LP: #1536474 + * geneve: UDP checksum configuration via netlink + - LP: #1536474 + * geneve: Add geneve udp port offload for ethernet devices + - LP: #1536474 + * i40e: geneve tunnel offload support + - LP: #1536474 + * geneve: Add geneve_get_rx_port support + - LP: #1536474 + * i40e: Call geneve_get_rx_port to get the existing Geneve ports + - LP: #1536474 + * i40e: change log messages and error returns + - LP: #1536474 + * i40e: allow zero MAC address for VFs + - LP: #1536474 + * i40e: Look up MAC address in Open Firmware or IDPROM + - LP: #1536474 + * i40e: Fix Rx hash reported to the stack by our driver + - LP: #1536474 + * i40e: remove forever unused ID + - LP: #1536474 + * igb: add 88E1543 initialization code + * igb: don't unmap NULL hw_addr + * igb: use the correct i210 register for EEMNGCTL + * igb: fix NULL derefs due to skipped SR-IOV enabling + * igb: improve handling of disconnected adapters + * igb: Remove GS40G specific defines/functions + * igb: Don't add PHY address to PCDL address + * igb: Improve cable length function for I210, etc. + * igb: Explicitly label self-test result indices + * ixgbe: drop null test before destroy functions + - LP: #1536473 + * ixgbe: Delete redundant include file + - LP: #1536473 + * ixgbe: fix multiple kernel-doc errors + - LP: #1536473 + * ixgbe: Fix handling of NAPI budget when multiple queues are enabled per + vector + - LP: #1536473 + * ixgbe: Add KR mode support for CS4227 chip + - LP: #1536473 + * ixgbevf: Limit lowest interrupt rate for adaptive interrupt moderation + to 12K + - LP: #1536473 + * ixgbe/ixgbevf: use napi_schedule_irqoff() + - LP: #1536473 + * ixgbe: Remove CS4227 diagnostic code + - LP: #1536473 + * ixgbevf: use ether_addr_copy instead of memcpy + - LP: #1536473 + * ixgbevf: fix spoofed packets with random MAC + - LP: #1536473 + * ixgbe: Prevent KR PHY reset in ixgbe_init_phy_ops_x550em + - LP: #1536473 + * ixgbe: Add support for newer thermal alarm + - LP: #1536473 + * ixgbe: Use private workqueue to avoid certain possible hangs + - LP: #1536473 + * ixgbevf: Use a private workqueue to avoid certain possible hangs + - LP: #1536473 + * ixgbevf: Minor cleanups + - LP: #1536473 + * ixgbe: Refactor MAC address configuration code + - LP: #1536473 + * ixgbe: Use __dev_uc_sync and __dev_uc_unsync for unicast addresses + - LP: #1536473 + * ixgbe: Allow FDB entries access to more RAR filters + - LP: #1536473 + * ixgbe: Update PTP to support X550EM_x devices + - LP: #1536473 + * ixgbe: Correct spec violations by waiting after reset + - LP: #1536473 + * ixgbe: Wait for master disable to be set + - LP: #1536473 + * ixgbe: Save VF info and take references + - LP: #1536473 + * ixgbe: Handle extended IPv6 headers in Tx path + - LP: #1536473 + * ixgbe: Always turn PHY power on when requested + - LP: #1536473 + * ixgbevf: Handle extended IPv6 headers in Tx path + - LP: #1536473 + * ixgbe: Return error on failure to allocate mac_table + - LP: #1536473 + * ixgbe: Fix SR-IOV VLAN pool configuration + - LP: #1536473 + * ixgbe: Simplify definitions for regidx and bit in set_vfta + - LP: #1536473 + * ixgbe: Reduce VT code indent in set_vfta by introducing jump label + - LP: #1536473 + * ixgbe: Simplify configuration of setting VLVF and VLVFB + - LP: #1536473 + * ixgbe: Add support for adding/removing VLAN on PF bypassing the VLVF + - LP: #1536473 + * ixgbe: Reorder search to work from the top down instead of bottom up + - LP: #1536473 + * ixgbe: Add support for VLAN promiscuous with SR-IOV + - LP: #1536473 + * ixgbe: Fix VLAN promisc in relation to SR-IOV + - LP: #1536473 + * ixgbe: Clear stale pool mappings + - LP: #1536473 + * ixgbe: Clean stale VLANs when changing port VLAN or resetting + - LP: #1536473 + * ixgbe: do not report 2.5 Gbps as supported + - LP: #1536473 + * ixgbevf: Fix handling of NAPI budget when multiple queues are enabled + per vector + - LP: #1536473 + * ixgbevf: minor cleanups for ixgbevf_set_itr() + - LP: #1536473 + * ixgbe: add support for QSFP PHY types in ixgbe_get_settings() + - LP: #1536473 + * ixgbe: report correct media type for KR, KX and KX4 interfaces + - LP: #1536473 + * ixgbe: Clean up redundancy in hw_enc_features + - LP: #1536473 + * ixgbe: fix RSS limit for X550 + - LP: #1536473 + * ixgbe: Correct X550EM_x revision check + - LP: #1536473 + * ixgbe: Fix bugs in ixgbe_clear_vf_vlans() + - LP: #1536473 + * ixgbe: Fill at least min credits to a TC credit refills + - LP: #1536473 + * ixgbe: use correct FCoE DDP max check + - LP: #1536473 + * ixgbe: fix broken PFC with X550 + - LP: #1536473 + * ixgbe: do not call check_link for ethtool in ixgbe_get_settings() + - LP: #1536473 + * ixgbe: Correct handling of any outer UDP checksum setting + - LP: #1536473 + * ixgbe: Fix to get FDMI HBA attributes information with X550 + - LP: #1536473 + * ixgbe: Fix MDD events generated when FCoE+SRIOV are enabled + - LP: #1536473 + * ixgbe: Make ATR recognize IPv6 extended headers + - LP: #1536473 + * e1000: make eeprom read/write scheduler friendly + * e1000: fix data race between tx_ring->next_to_clean + * e1000: Remove checkpatch coding style errors + * e1000: clean up the checking logic + * e1000: fix a typo in the comment + * e1000e: clean up the local variable + * e1000: fix kernel-doc argument being missing + * e1000: get rid of duplicate exit path + * e1000: Elementary checkpatch warnings and checks removed + * e1000e: fix division by zero on jumbo MTUs + * e1000e: Increase timeout of polling bit RSPCIPHY + * e1000e: initial support for i219-LM (3) + * e1000e: Switch e1000e_up to void, drop code checking for error result + * e1000e: Remove unreachable code + * e1000e: Do not read ICR in Other interrupt + * e1000e: Do not write lsc to ics in msi-x mode + * e1000e: Fix msi-x interrupt automask + * acpi: pci: Setup MSI domain for ACPI based pci devices + * irqdomain: Introduce is_fwnode_irqchip helper + * irqchip/gic-v2m: Refactor to prepare for ACPI support + * irqchip/gic-v2m: acpi: Introducing GICv2m ACPI support + * clk: xgene: Fix divider with non-zero shift value + * i2c: designware: Do not require clock when SSCN and FFCN are provided + * fm10k: do not assume VF always has 1 queue + - LP: #1536475 + * fm10k: Correct MTU for jumbo frames + - LP: #1536475 + * fm10k: Fix handling of NAPI budget when multiple queues are enabled per + vector + - LP: #1536475 + * fm10k: use napi_schedule_irqoff() + - LP: #1536475 + * fm10k: set netdev features in one location + - LP: #1536475 + * fm10k: reset max_queues on init_hw_vf failure + - LP: #1536475 + * fm10k: always check init_hw for errors + - LP: #1536475 + * fm10k: reinitialize queuing scheme after calling init_hw + - LP: #1536475 + * fm10k: Correct typecast in fm10k_update_xc_addr_pf + - LP: #1536475 + * fm10k: explicitly typecast vlan values to u16 + - LP: #1536475 + * fm10k: add statistics for actual DWORD count of mbmem mailbox + - LP: #1536475 + * fm10k: rename mbx_tx_oversized statistic to mbx_tx_dropped + - LP: #1536475 + * fm10k: Add support for ITR scaling based on PCIe link speed + - LP: #1536475 + * fm10k: introduce ITR_IS_ADAPTIVE macro + - LP: #1536475 + * fm10k: Update adaptive ITR algorithm + - LP: #1536475 + * fm10k: use macro for default Tx and Rx ITR values + - LP: #1536475 + * fm10k: change default Tx ITR to 25usec + - LP: #1536475 + * fm10k: TRIVIAL fix typo of hardware + - LP: #1536475 + * fm10k: TRIVIAL cleanup order at top of fm10k_xmit_frame + - LP: #1536475 + * fm10k: use ether_addr_copy to copy MAC address + - LP: #1536475 + * fm10k: do not use CamelCase + - LP: #1536475 + * fm10k: remove unnecessary else block from if statements with return + - LP: #1536475 + * fm10k: remove namespace pollution of fm10k_iov_msg_data_pf + - LP: #1536475 + * fm10k: consistently refer to VLANs and VLAN IDs + - LP: #1536475 + * fm10k: bump driver version + - LP: #1536475 + * fm10k: conditionally compile DCB and DebugFS support + - LP: #1536475 + * fm10k: Cleanup MSI-X interrupts in case of failure + - LP: #1536475 + * fm10k: Cleanup exception handling for mailbox interrupt + - LP: #1536475 + * fm10k: do not inline fm10k_iov_select_vid() + - LP: #1536475 + * fm10k: whitespace cleanups + - LP: #1536475 + * fm10k: use BIT() macro instead of open-coded bit-shifting + - LP: #1536475 + * fm10k: cleanup namespace pollution + - LP: #1536475 + * fm10k: cleanup overly long lines + - LP: #1536475 + * fm10k: initialize xps at driver load + - LP: #1536475 + * fm10k: don't initialize fm10k_workqueue at global level + - LP: #1536475 + * fm10k: correctly pack TLV structures and explain reasoning + - LP: #1536475 + * fm10k: Cleanup exception handling for changing queues + - LP: #1536475 + * fm10k: use ether_addr_equal instead of memcmp + - LP: #1536475 + * fm10k: address operator not needed when declaring function pointers + - LP: #1536475 + * fm10k: constify fm10k_mac_ops, fm10k_iov_ops and fm10k_info structures + - LP: #1536475 + * fm10k: remove unused struct element + - LP: #1536475 + * fm10k: use true/false for boolean get_host_state + - LP: #1536475 + * fm10k: cleanup mailbox code comments etc + - LP: #1536475 + * fm10k: IS_ENABLED() is not appropriate for boolean kconfig option + - LP: #1536475 + * device property: always check for fwnode type + - LP: #1533035 + * device property: rename helper functions + - LP: #1533035 + * device property: refactor built-in properties support + - LP: #1533035 + * device property: keep single value inplace + - LP: #1533035 + * device property: helper macros for property entry creation + - LP: #1533035 + * device property: improve readability of macros + - LP: #1533035 + * device property: return -EINVAL when property isn't found in ACPI + - LP: #1533035 + * device property: Fallback to secondary fwnode if primary misses the + property + - LP: #1533035 + * device property: Take a copy of the property set + - LP: #1533035 + * driver core: platform: Add support for built-in device properties + - LP: #1533035 + * driver core: Do not overwrite secondary fwnode with NULL if it is set + - LP: #1533035 + * mfd: core: propagate device properties to sub devices drivers + - LP: #1533035 + * mfd: intel-lpss: Add support for passing device properties + - LP: #1533035 + * mfd: intel-lpss: Pass SDA hold time to I2C host controller driver + - LP: #1533035 + * mfd: intel-lpss: Pass HSUART configuration via properties + - LP: #1533035 + * i2c: designware: Convert to use unified device property API + - LP: #1533035 + * keys, trusted: fix: *do not* allow duplicate key options + - LP: #1398274 + * keys, trusted: select hash algorithm for TPM2 chips + - LP: #1398274 + * keys, trusted: seal with a TPM2 authorization policy + - LP: #1398274 + * perf/x86/intel: Add perf core PMU support for Intel Knights Landing + - LP: #1461360 + * perf/x86/intel/uncore: Add Knights Landing uncore PMU support + - LP: #1461360 + * perf/x86/intel/uncore: Remove hard coding of PMON box control MSR + offset + - LP: #1461360 + * drm/i915: WaRsDisableCoarsePowerGating + - LP: #1527462 + * drm/i915/skl: Add SKL GT4 PCI IDs + - LP: #1527462 + * drm/i915/skl: Disable coarse power gating up until F0 + - LP: #1527462 + * platform:x86: add Intel P-Unit mailbox IPC driver + - LP: #1520457 + * intel_punit_ipc: add NULL check for input parameters + - LP: #1520457 + * platform/x86: Add Intel Telemetry Core Driver + - LP: #1520457 + * intel_pmc_ipc: update acpi resource structure for Punit + - LP: #1520457 + * platform:x86: Add Intel telemetry platform device + - LP: #1520457 + * platform:x86: Add Intel telemetry platform driver + - LP: #1520457 + * platform:x86: Add Intel Telemetry Debugfs interfaces + - LP: #1520457 + * cxlflash: a couple off by one bugs + + -- Andy Whitcroft Thu, 28 Jan 2016 13:56:00 +0000 + +linux (4.4.0-1.15) xenial; urgency=low + + [ Tim Gardner ] + + * Release Tracking Bug + - LP: #1536803 + + [ Upstream Kernel Changes ] + + * Revert "[SCSI] libiscsi: Reduce locking contention in fast path" + - LP: #1517142 + + -- Tim Gardner Wed, 20 Jan 2016 07:41:40 -0700 + +linux (4.4.0-0.14) xenial; urgency=low + + [ Upstream Kernel Changes ] + + * Revert "powerpc/pci: Remove unused struct pci_dn.pcidev field" + - LP: #1522415 + * powerpc: Add __raw_rm_writeq() function + - LP: #1522415 + + -- Tim Gardner Tue, 19 Jan 2016 11:24:26 -0700 + +linux (4.4.0-0.13) xenial; urgency=low + + [ Andy Whitcroft ] + + * [Config] s390x -- the kernel provides ppp-modules such as there are + * SAUCE: (no-up) add compat_uts_machine= kernel command line override + + [ Tim Gardner ] + + * [Config] Update annotations for VIRTIO_{NET,BLK} + - LP: #1533382 + + [ Upstream Kernel Changes ] + + * powerpc/powernv: Add support for Nvlink NPUs + - LP: #1522415 + * powerpc/powernv: Fix update of NVLink DMA mask + - LP: #1522415 + * powerpc/powernv: Change NPU PE# assignment + - LP: #1522415 + * powerpc/powernv: Reserve PE#0 on NPU + - LP: #1522415 + * KEYS: Fix keyring ref leak in join_session_keyring() + - LP: #1534887 + - CVE-2016-0728 + + -- Tim Gardner Tue, 19 Jan 2016 05:49:09 -0700 + +linux (4.4.0-0.12) xenial; urgency=low + + [ Eric Dumazet ] + + * SAUCE: (no-up) udp: properly support MSG_PEEK with truncated buffers + - LP: #1527902 + + [ Guilherme G. Piccoli ] + + * SAUCE: powerpc/eeh: Validate arch in eeh_add_device_early() + - LP: #1486180 + + [ Tim Gardner ] + + * SAUCE: AUFS - update to aufs4.x-rcN 20160111 + * [Config] CONFIG_VIRTIO_BLK=y, CONFIG_VIRTIO_NET=y for s390 + - LP: #1532886 + * [Config] nvme.ko moved to drivers/nvme/host + * [Config] scsi_dh morphed into 4 modules + * [Config] CONFIG_IBMVNIC=m + * [Config] Add DRM ast driver to udeb installer image + - LP: #1514711 + * [Config] CONFIG_KVM=y for s390x + - LP: #1532886 + * [Config] Install spl/zfs under the kernel modules directory + Fixes some errors in generic.inclusion-list.log + + [ Upstream Kernel Changes ] + + * perf/x86/intel/uncore: Add Broadwell-EP uncore support + - LP: #1524574 + * EDAC: Add DDR4 flag + - LP: #1519631 + * EDAC, sb_edac: Virtualize several hard-coded functions + - LP: #1519631 + * EDAC, sb_edac: Add support for duplicate device IDs + - LP: #1519631 + * EDAC, sb_edac: Add Knights Landing (Xeon Phi gen 2) support + - LP: #1519631 + * Driver for IBM System i/p VNIC protocol + - LP: #1532303 + + -- Tim Gardner Mon, 11 Jan 2016 09:57:16 -0700 + +linux (4.4.0-0.11) xenial; urgency=low + + [ Tim Gardner ] + + * [Config] Fix bogus reconstruct script + + -- Tim Gardner Mon, 11 Jan 2016 07:29:17 -0700 + +linux (4.4.0-0.10) xenial; urgency=low + + [ Haren Myneni ] + + * SAUCE: crypto: nx-842 - Mask XERS0 bit in return value + - LP: #1529666 + + [ Serge Hallyn ] + + * SAUCE: add a sysctl to disable unprivileged user namespace unsharing + + [ Tim Gardner ] + + * [Config] CONFIG_ZONE_DEVICE=y for amd64 + * [Config] CONFIG_BLK_DEV_LOOP=y for s390x + - LP: #1526869 + * SAUCE: (no-up) apparmor: Fix incompatible pointer type warnings + * SAUCE: radeon: r100: Silence 'may be used uninitialized' warnings + * SAUCE: dmaengine: ioatdma: Squelch framesize warnings + * rebase to v4.4 + + [ Upstream Kernel Changes ] + + * rebase to v4.4 + + -- Tim Gardner Mon, 04 Jan 2016 17:43:51 -0700 + +linux (4.4.0-0.9) xenial; urgency=low + + [ Tim Gardner ] + + * rebase to v4.4-rc8 + + [ Upstream Kernel Changes ] + + * rebase to v4.4-rc8 + + -- Tim Gardner Sun, 03 Jan 2016 18:50:33 -0700 + +linux (4.4.0-0.8) xenial; urgency=low + + [ Tim Gardner ] + + * rebase to v4.4-rc7 + + [ Upstream Kernel Changes ] + + * rebase to v4.4-rc7 + + -- Tim Gardner Mon, 28 Dec 2015 16:13:11 -0700 + +linux (4.4.0-0.7) xenial; urgency=low + + [ Hui Wang ] + + * [Config] CONFIG_I2C_DESIGNWARE_BAYTRAIL=y, CONFIG_IOSF_MBI=y + - LP: #1527096 + + [ Jann Horn ] + + * SAUCE: (noup) ptrace: being capable wrt a process requires mapped + uids/gids + - LP: #1527374 + + [ Tim Gardner ] + + * rebase to v4.4-rc6 + + [ Upstream Kernel Changes ] + + * rebase to v4.4-rc6 + - LP: #1526330 + + -- Tim Gardner Thu, 17 Dec 2015 05:28:27 -0700 + +linux (4.4.0-0.6) xenial; urgency=low + + [ Andy Whitcroft ] + + * [Config] disable CONFIG_ARM64_LSE_ATOMICS to avoid issues with ARMv8.1 + support in latest compilers + * [Config] disable CONFIG_CRYPTO_AES_ARM64_CE* to avoid issues with + ARMv8.1 support in latest compilers + + [ Tim Gardner ] + + * [Config] s390 -> s390x + * SAUCE: include/linux/mmdebug.h: #include + + -- Tim Gardner Tue, 15 Dec 2015 06:46:26 -0700 + +linux (4.4.0-0.5) xenial; urgency=low + + [ Andy Whitcroft ] + + * [Config] s390x -- enable tools + - LP: #1524319 + * [Config] s390x -- add architecture to getabis + * [Config] s390x -- add s390x ABI information + * [Config] s390x -- enable ABI checks + + [ Tim Gardner ] + + * [Debian] config-check and prepare using ${DEBIAN}/config/annotations + * [Config] Add s390 modules to nic-modules udeb + - LP: #1525297 + * rebase to v4.4-rc5 + + [ Upstream Kernel Changes ] + + * rebase to v4.4-rc5 + - LP: #1523517 + - LP: #1523232 + + -- Tim Gardner Mon, 14 Dec 2015 05:28:05 -0700 + +linux (4.4.0-0.4) xenial; urgency=low + + [ Upstream Kernel Changes ] + + * cgroup: make css_set pin its css's to avoid use-afer-free + * cgroup_freezer: simplify propagation of CGROUP_FROZEN clearing in + freezer_attach() + * cgroup: fix handling of multi-destination migration from + subtree_control enabling + + -- Tim Gardner Tue, 08 Dec 2015 11:20:41 -0700 + +linux (4.4.0-0.3) xenial; urgency=low + + [ Upstream Kernel Changes ] + + * rebase to v4.4-rc4 + + -- Tim Gardner Sun, 06 Dec 2015 16:50:15 -0700 + +linux (4.4.0-0.2) xenial; urgency=low + + [ Tim Gardner ] + + * [Config] Add spl/zfs provides to generic and powerpc64-smp + * [Config] Add zfs to d-i fs-core-modules + * [Config] Include all s390 specific drivers in linux-image + - LP: #1522210 + + -- Tim Gardner Thu, 03 Dec 2015 07:05:56 -0700 + +linux (4.4.0-0.1) xenial; urgency=low + + [ Andy Whitcroft ] + + * [Tests] gcc-multilib does not exist on ppc64el redux + - LP: #1515541 + * [Config] libunwind8-dev is not available on s390x + * [Debian] Disable SPL/ZFS for cross compiling -- redux + * [Config] s390x -- add dasd udebs + - LP: #1519833 + * [Config] s390x -- include dasd modules in linux-image + - LP: #1519833 + * [Config] s390x -- disable ZFS temporarily + - LP: #1519820 + * [Config] s390s -- disable ABI/module checks + * [Config] make IBMVETH consistent on powerpc/ppc64el + - LP: #1521712 + * [Config] follow ibmvscsi name change + - LP: #1521712 + * [Config] move ibm disk and ethernet drivers to linux-image + - LP: #1521712 + * [Config] include ibmveth in nic-modules for ppc64el + - LP: #1521712 + * [Config] s390x -- disable abi/module checks for s390x + + [ Joseph Salisbury ] + + * SAUCE: scsi_sysfs: protect against double execution of + __scsi_remove_device() + - LP: #1509029 + + [ Seth Forshee ] + + * [Config] CONFIG_DRM_AMDGPU_CIK=n + - LP: #1510405 + + [ Tim Gardner ] + + * [Debian] Disable SPL/ZFS for cross compiling + * [Config] CONFIG_SCSI_IBMVSCSI=m + - LP: #1515872 + * rebase to v4.4-rc2 + * [Config] updateconfigs + * [Config] CONFIG_WILC1000_DRIVER=n for FTBS + * SAUCE: do_zfs=false temporarily + * [Config] CONFIG_LUSTRE_FS=n + * [Debian] Disable udebs when cross compiling + * rebase to v4.4-rc3 + * [Config] CONFIG_AUFS_FS=m + * SAUCE: AUFS + + [ Upstream Kernel Changes ] + + * ZFS: Update with 4.4 support + * SPL: Update with 4.4 support + + [ Upstream Kernel Changes ] + + * rebase to v4.4-rc3 + - LP: #1519168 + * rebase to v4.4-rc2 + - LP: #1506615 + - LP: #1502781 + + -- Tim Gardner Mon, 23 Nov 2015 13:22:37 -0700 + +linux (4.3.0-0.8) xenial; urgency=low + + [ Andy Whitcroft ] + + * [Config] re-enable OSS support and blacklist + - LP: #1434842 + * [Config] enable CONFIG_CC_STACKPROTECTOR_STRONG=y + * [Packaging] config-check -- improve syntax diagnostics + * [Packaging] module-inclusion -- add dependency inclusion for a list + * [Packaging] config-check -- accumulate multi-line annotations correctly + * [Packaging] config-check -- handle V2 annotations format + * [Packaging] s390x -- add architecture to kernelconfig + - LP: #1488653 + * [Config] s390x -- initial configuration + * [Config] s390x -- add initial binary image + * [Config] s390x -- initial configuration update + * [Config] s390x -- produce linux-image + * [Config] s390x -- d-i module exclusions + * [Config] apply Device Drivers >> LED Support >> LED Class Support + * [Config] apply File systems >> Miscellaneous filesystems >> SquashFS 4.0 - Squashed file system support + * [Config] apply Device Drivers >> Generic Driver Options >> Userspace firmware loading support + * SAUCE: leds: lp55xx -- do not force use of the fallback loader + * [Config] -- s390x -- configuration review updates + * [Config] annotations -- add review marks + * [Config] annotations -- config review 4.3 updates + * [Config] annotations -- expose reviews + * [Config] updateconfigs following incoporation of s390x configs + * [Tests] gcc-multilib does not exist on ppc64el + - LP: #1515541 + + [ Dan Carpenter ] + + * SAUCE: (noup) cxlflash: a couple off by one bugs + - LP: #1499849 + + [ Haren Myneni ] + + * Revert "SAUCE: (noup) crypto: 842 - Add CRC and validation support" + + [ Jay Vosburgh ] + + * SAUCE: fan: add VXLAN implementation + + [ Manoj Kumar ] + + * SAUCE: (noup) cxlflash: Fix to escalate LINK_RESET also on port 1 + - LP: #1513583 + + [ Matthew R. Ochs ] + + * SAUCE: (noup) cxlflash: Fix to avoid virtual LUN failover failure + - LP: #1513583 + + [ Tim Gardner ] + + * [Config] CONFIG_AUFS_EXPORT=y + - LP: #1121699 + + [ Upstream Kernel Changes ] + + * misc/genwqe: get rid of atomic allocations + * crypto: 842 - Add CRC and validation support + - LP: #1497878 + * cxlflash: Fix to avoid invalid port_sel value + * cxlflash: Replace magic numbers with literals + * cxlflash: Fix read capacity timeout + * cxlflash: Fix potential oops following LUN removal + * cxlflash: Fix data corruption when vLUN used over multiple cards + * cxlflash: Fix to avoid sizeof(bool) + * cxlflash: Fix context encode mask width + * cxlflash: Fix to avoid CXL services during EEH + * cxlflash: Correct naming of limbo state and waitq + * cxlflash: Make functions static + * cxlflash: Refine host/device attributes + * cxlflash: Fix to avoid spamming the kernel log + * cxlflash: Fix to avoid stall while waiting on TMF + * cxlflash: Fix location of setting resid + * cxlflash: Fix host link up event handling + * cxlflash: Fix async interrupt bypass logic + * cxlflash: Remove dual port online dependency + * cxlflash: Fix AFU version access/storage and add check + * cxlflash: Correct usage of scsi_host_put() + * cxlflash: Fix to prevent workq from accessing freed memory + * cxlflash: Correct behavior in device reset handler following EEH + * cxlflash: Remove unnecessary scsi_block_requests + * cxlflash: Fix function prolog parameters and return codes + * cxlflash: Fix MMIO and endianness errors + * cxlflash: Fix to prevent EEH recovery failure + * cxlflash: Correct spelling, grammar, and alignment mistakes + * cxlflash: Fix to prevent stale AFU RRQ + * cxlflash: Fix to double the delay each time + * cxlflash: Fix to avoid corrupting adapter fops + * cxlflash: Correct trace string + * cxlflash: Fix to avoid potential deadlock on EEH + * cxlflash: Fix to avoid leaving dangling interrupt resources + * cxlflash: Fix to escalate to LINK_RESET on login timeout + * cxlflash: Fix to avoid corrupting port selection mask + * cxlflash: Fix to avoid lock instrumentation rejection + * cxlflash: Fix to avoid bypassing context cleanup + + -- Tim Gardner Fri, 06 Nov 2015 10:15:07 -0600 + +linux (4.3.0-0.7) xenial; urgency=low + + [ Tim Gardner ] + + * Revert "Bypass spl/zfs config" + Causes unresolved symbols on load. + * [Config] Enable ZFS for powerpc64-smp + + -- Tim Gardner Thu, 05 Nov 2015 11:42:37 -0600 + +linux (4.3.0-0.6) xenial; urgency=low + + [ Tim Gardner ] + + * Release Tracking Bug + - LP: #1512704 + * UBUNTU: SAUCE: AUFS aufs4.x-rcN 20151102 + + [ Andy Whitcroft ] + + * [Packaging] add feature interlock with mainline builds + * apparmor -- follow change to this_cpu_ptr + + [ John Johansen ] + + * SAUCE: (no-up) apparmor: add parameter to control whether policy hashing is used + - LP: #1383886 + * SAUCE: (no-up) apparmor: Sync to apparmor3 - RC1 snapshot + - LP: #1362199 + * SAUCE: Revert: fix: only allow a single threaded process to ... + - LP: #1371310 + * SAUCE: (no-up) fix: bad unix_addr_fs macro + - LP: #1390223 + * SAUCE: (no-up): apparmor: fix mediation of fs unix sockets + - LP: #1408833 + * SAUCE: (no-up) apparmor: fix mount not handling disconnected paths + - LP: #1496430 + + [ Tim Gardner ] + + * [Config] Add iscsi_ibft and iscsi_boot_sysfs to generic inclusion list + - LP: #1511006 + * rebase to v4.3 + * Bypass spl/zfs config + * SPL/ZFS: Add Makefiles in order to avoid the lengthy config + * [Config] Default AppArmor settings + + [ Upstream Kernel Changes ] + + * rebase to v4.3 + + -- Tim Gardner Thu, 29 Oct 2015 09:16:26 -0600 + +linux (4.3.0-0.5) xenial; urgency=low + + * Update spl to 0.6.5.3-0ubuntu1, zfs to 0.6.5.3-0ubuntu1 + + [ Upstream Kernel Changes ] + + * rebase to v4.3-rc7 + - LP: #1504778 + + -- Tim Gardner Fri, 23 Oct 2015 13:59:52 -0600 + +linux (4.3.0-0.4) xenial; urgency=low + + [ Tim Gardner ] + + * [Debian] Update to new signing key type and location + + -- Tim Gardner Wed, 21 Oct 2015 13:07:30 -0600 + +linux (4.3.0-0.3) wily; urgency=low + + [ Tim Gardner ] + + * [Debian] sign-file is now compiled + + -- Tim Gardner Wed, 21 Oct 2015 09:26:34 -0600 + +linux (4.3.0-0.2) wily; urgency=low + + [ Tim Gardner ] + + * [Config] Added libssl-dev to Build-Depends + + -- Tim Gardner Tue, 20 Oct 2015 14:01:55 -0600 + +linux (4.3.0-0.1) wily; urgency=low + + [ Upstream Kernel Changes ] + + * rebase to v4.3-rc6 + * rebase to v4.3-rc5 + * rebase to v4.3-rc4 + * rebase to v4.3-rc3 + * rebase to v4.3-rc2 + * rebase to v4.3-rc1 + - LP: #1492132 + - LP: #1481575 + + -- Tim Gardner Mon, 14 Sep 2015 07:30:36 -0600 + +linux (4.2.0-10.11) wily; urgency=low + + [ Andy Whitcroft ] + + * Release Tracking Bug + - LP: #1495208 + * No change rebuild to avoid issues with leading zero bytes on + internal module signing key. (see launchpad bug 1494943) + + [ Ming Lei ] + + * [Config] SERIAL_8250_DW=y for arm64 + + [ Upstream Kernel Changes ] + + * drm/i915: Move WaBarrierPerformanceFixDisable:skl to skl code from chv + code + - LP: #1484486 + * drm/i915/gen8: Add infrastructure to initialize WA batch buffers + - LP: #1484486 + * drm/i915/gen8: Re-order init pipe_control in lrc mode + - LP: #1484486 + * drm/i915/gen8: Add WaDisableCtxRestoreArbitration workaround + - LP: #1484486 + * drm/i915/gen8: Add WaFlushCoherentL3CacheLinesAtContextSwitch + workaround + - LP: #1484486 + * drm/i915: Bail out early if WA batch is not available for given Gen + - LP: #1484486 + * drm/i915/gen8: Add WaClearSlmSpaceAtContextSwitch workaround + - LP: #1484486 + * drm/i915: Update WaFlushCoherentL3CacheLinesAtContextSwitch + - LP: #1484486 + * drm/i915/gen9: Implement WaDisableKillLogic for gen 9 + - LP: #1484486 + * drm/i915: Enable WA batch buffers for Gen9 + - LP: #1484486 + * drm/i915/gen9: Add WaDisableCtxRestoreArbitration workaround + - LP: #1484486 + * drm/i915: Update wa_ctx_emit() macro as per kernel coding guidelines + - LP: #1484486 + * drm/i915/gen9: Add WaFlushCoherentL3CacheLinesAtContextSwitch + workaround + - LP: #1484486 + * drm/i915/gen9: Add + WaSetDisablePixMaskCammingAndRhwoInCommonSliceChicken + - LP: #1484486 + * drm/i915:skl: Add WaEnableGapsTsvCreditFix + - LP: #1484486 + * drm/i915/skl: revert duplicated WaBarrierPerformanceFixDisable:skl + - LP: #1484486 + * drm/i915/skl: Don't expose the top most plane on gen9 display + - LP: #1484486 + * drm/i915/skl WaDisableSbeCacheDispatchPortSharing + - LP: #1484486 + * drm/i915/skl: WaIgnoreDDIAStrap is forever, always init DDI A + - LP: #1484486 + * drm/i915: reduce indent in i9xx_hpd_irq_handler + - LP: #1484531 + * drm/i915: reduce duplicate conditions in i9xx_hpd_irq_handler + - LP: #1484531 + * drm/i915: reduce indent in intel_hpd_irq_handler + - LP: #1484531 + * drm/i915: group all hotplug related fields into a new struct in + dev_priv + - LP: #1484531 + * drm/i915: add for_each_hpd_pin to iterate over hotplug pins + - LP: #1484531 + * drm/i915: simplify conditions for skipping the 2nd hpd loop iterations + - LP: #1484531 + * drm/i915: put back the indent in intel_hpd_irq_handler + - LP: #1484531 + * drm/i915: merge the two hpd loops in intel_hpd_irq_handler to one + - LP: #1484531 + * drm/i915: simplify condition for digital port + - LP: #1484531 + * drm/i915: abstract away platform specific parts from hpd handling + - LP: #1484531 + * drm/i915: Handle HPD when it has actually occurred + - LP: #1484531 + * drm/i915: Set power domain for DDI-E + - LP: #1484531 + * drm/i915: Set alternate aux for DDI-E + - LP: #1484531 + * drm/i915/skl: enable DDI-E hotplug + - LP: #1484531 + * drm/i915/bxt: fix DDI PHY vswing scale value setting + - LP: #1494163 + * drm/i915/skl: Buffer translation improvements + - LP: #1494163 + * drm/i915: Per-DDI I_boost override + - LP: #1494163 + * drm/i915: fix VBT parsing for SDVO child device mapping + - LP: #1494163 + * drm/i915/bxt: edp1.4 Intermediate Freq support + - LP: #1494163 + * drm/i915: fix link rates reported for SKL + - LP: #1494163 + * drm/i915: Allow parsing of variable size child device entries from VBT + - LP: #1494163 + * drm/i915/skl: Update DDI buffer translation programming. + - LP: #1494163 + * drm/i915: Enable HDMI on DDI-E + - LP: #1484531 + * drm/i915/skl: Enable DDI-E + - LP: #1484531 + * drm/i915: eDP can be present on DDI-E + - LP: #1484531 + * drm/i915/skl: Adding DDI_E power well domain + - LP: #1484531 + * drm/i915: set CDCLK if DPLL0 enabled during resuming from S3 + - LP: #1490035 + * drm/i915: Split atomic wm update to pre and post variants + - LP: #1493746 + * drm/i915/skl: Drop the preliminary_hw_support flag + - LP: #1486868 + * drm/i915: set FDI translations to NULL on SKL + - LP: #1494163 + + -- Andy Whitcroft Sun, 13 Sep 2015 11:32:02 +0100 + +linux (4.2.0-9.9) wily; urgency=low + + [ Tim Gardner ] + + * Release Tracking Bug + - LP: #1493970 + * [Config] CONFIG_MFD_INTEL_LPSS=m + - LP: #1397876 + + [ dann frazier ] + + * [Config] Disable CONFIG_IPMI_SI_PROBE_DEFAULTS on armhf and arm64 + - LP: #1388952 + + [ Michael Ellerman ] + + * SAUCE: crypto: vmx - VMX crypto should depend on CONFIG_VSX + Fixes FTBS on 32 bit powerpc, patch sent upstream. + + [ Upstream Kernel Changes ] + + * thermal/powerclamp: add cpu id for skylake h/s + - LP: #1398269 + * perf/x86/intel/uncore: Add Broadwell-DE uncore support + - LP: #1397852 + * mfd: watchdog: iTCO_wdt: Expose watchdog properties using platform data + - LP: #1460905 + * i2c: i801: Create iTCO device on newer Intel PCHs + - LP: #1460905 + * watchdog: iTCO_wdt: Add support for TCO on Intel Sunrisepoint + - LP: #1460905 + * perf/x86: Add a native_perf_sched_clock_from_tsc() + - LP: #1397867 + * perf/x86/intel: Add support for PEBSv3 profiling + - LP: #1397867 + * perf/x86/intel/lbr: Allow time stamp for free running PEBSv3 + - LP: #1397867 + * x86: Add new MSRs and MSR bits used for Intel Skylake PMU support + - LP: #1397867 + * perf: Add cycles to branch_info + - LP: #1397867 + * perf/x86/intel/lbr: Add support for LBRv5 + - LP: #1397867 + * perf/x86/intel: Handle new arch perfmon v4 status bits + - LP: #1397867 + * perf/x86/intel: Move PMU ACK to after LBR read + - LP: #1397867 + * perf/x86/intel/lbr: Optimize v4 LBR unfreezing + - LP: #1397867 + * perf/x86/intel: Add Intel Skylake PMU support + - LP: #1397867 + * perf/x86/intel/lbr: Use correct index to save/restore LBR_INFO with + call stack + - LP: #1397867 + * perf/x86/intel/lbr: Limit LBR accesses to TOS in callstack mode + - LP: #1397867 + * perf/x86: Make merge_attr() global to use from perf_event_intel + - LP: #1397867 + * perf/x86/intel: Use 0x11 as extra reg test value + - LP: #1397867 + * perf tools: Add support for cycles, weight branch_info field + - LP: #1397867 + * perf report: Add flag for non ANY branch mode + - LP: #1397867 + * perf report: Add infrastructure for a cycles histogram + - LP: #1397867 + * perf report: Add processing for cycle histograms + - LP: #1397867 + * perf annotate: Compute IPC and basic block cycles + - LP: #1397867 + * perf annotate: Finally display IPC and cycle accounting + - LP: #1397867 + * perf top: Add branch annotation code to top + - LP: #1397867 + * perf report: Display cycles in branch sort mode + - LP: #1397867 + * perf annotate: Fix 32-bit compilation error in util/annotate.c + - LP: #1397867 + * PM / QoS: Make it possible to expose device latency tolerance to + userspace + - LP: #1460908 + * ACPI / PM: Attach ACPI power domain only once + - LP: #1460908 + * Driver core: wakeup the parent device before trying probe + - LP: #1460908 + * klist: implement klist_prev() + - LP: #1460908 + * driver core: implement device_for_each_child_reverse() + - LP: #1460908 + * mfd: make mfd_remove_devices() iterate in reverse order + - LP: #1460908 + * dmaengine: add a driver for Intel integrated DMA 64-bit + - LP: #1460908 + * mfd: Add support for Intel Sunrisepoint LPSS devices + - LP: #1460908 + * spi: pxa2xx: Add support for Intel Sunrisepoint + - LP: #1397876 + * spi: spi-pxa2xx: Remove unused legacy PXA DMA API channel numbers + - LP: #1397876 + * spi: pxa2xx: Add terminating entry for pxa2xx_spi_pci_compound_match + - LP: #1397876 + * spi: spi-pxa2xx: Remove unused legacy null dma buffer and allocation + for it + - LP: #1397876 + * intel_idle: Skylake Client Support + - LP: #1397877 + * powerpc/kernel: Switch to using MAX_ERRNO + - LP: #1458876 + * powerpc/kernel: Change the do_syscall_trace_enter() API + - LP: #1458876 + * powerpc: Drop unused syscall_get_error() + - LP: #1458876 + * powerpc: Don't negate error in syscall_set_return_value() + - LP: #1458876 + * powerpc: Rework syscall_get_arguments() so there is only one loop + - LP: #1458876 + * powerpc: Use orig_gpr3 in syscall_get_arguments() + - LP: #1458876 + * powerpc: Change syscall_get_nr() to return int + - LP: #1458876 + * powerpc/kernel: Add SIG_SYS support for compat tasks + - LP: #1458876 + * powerpc/kernel: Enable seccomp filter + - LP: #1458876 + * selftests/seccomp: Make seccomp tests work on big endian + - LP: #1458876 + * selftests/seccomp: Add powerpc support + - LP: #1458876 + * eCryptfs: Invalidate dcache entries when lower i_nlink is zero + + -- Tim Gardner Tue, 08 Sep 2015 19:17:57 -0600 + +linux (4.2.0-8.8) wily; urgency=low + + [ Tim Gardner ] + + * Release Tracking Bug + - LP: #1493357 + * [Config] CONFIG_CRYPTO_DEV_NX_COMPRESS_CRYPTO obsolete + - LP: #1488495 + * [Config] CONFIG_CXLFLASH=m + * [Config] CONFIG_CXL_EEH=y for ppc64el, powerpc64-smp + + + [ Andy Whitcroft ] + + * [Packaging] standardise on stage1 for the bootstrap stage in line with debian + * [Packaging] mark up control for stage1 + * [Config] kernel-versions -- clean up deps field + * [Config] s390x -- build linux-libc-dev + - LP: #1488653 + * [Packaging] control -- prepare for new kernel-wedge semantics + + [ Upstream Kernel Changes ] + + * crypto: vmx - Fixing AES-CTR counter bug + - LP: #1484519 + * crypto: vmx - Fixing GHASH Key issue on little endian + - LP: #1484519 + * powerpc: Uncomment and make enable_kernel_vsx() routine available + - LP: #1484519 + * crypto: vmx - Adding enable_kernel_vsx() to access VSX instructions + - LP: #1484519 + * crypto: nx - nx842_OF_upd_status should return ENODEV if device is not + 'okay' + - LP: #1488495 + * crypto: nx - rename nx842_{init, exit} to nx842_pseries_{init, exit} + - LP: #1488495 + * crypto: nx - do not emit extra output if status is disabled + - LP: #1488495 + * crypto: nx - reduce chattiness of platform drivers + - LP: #1488495 + * crypto: nx/842 - Fix context corruption + - LP: #1488495 + * crypto: nx - remove __init/__exit from VIO functions + - LP: #1488495 + * crypto: nx - remove pSeries NX 'status' field + - LP: #1488495 + * crypto: nx - move kzalloc() out of spinlock + - LP: #1488495 + * crypto: nx - don't register pSeries driver if ENODEV + - LP: #1488495 + * crypto: nx - use common code for both NX decompress success cases + - LP: #1488495 + * crypto: nx - merge nx-compress and nx-compress-crypto + - LP: #1488495 + * crypto: nx - rename nx-842-crypto.c to nx-842.c + - LP: #1488495 + * crypto: nx - make platform drivers directly register with crypto + - LP: #1488495 + * cxlflash: Base support for IBM CXL Flash Adapter + - LP: #1449121 + * cxlflash: Base error recovery support + - LP: #1449121 + * cxlflash: Superpipe support + - LP: #1449121 + * cxlflash: Virtual LUN support + - LP: #1449121 + * cxlflash: off by one bug in cxlflash_show_port_status() + - LP: #1449121 + * cxlflash: shift wrapping bug in afu_link_reset() + - LP: #1449121 + * cxlflash: Remove unused variable from queuecommand + - LP: #1449121 + * powerpc/powernv: move dma_get_required_mask from pnv_phb to + pci_controller_ops + * powerpc/eeh: Probe after unbalanced kref check + * misc: cxl: clean up afu_read_config() + * cxl: Add explicit precision specifiers + * cxl: use more common format specifier + * cxl: Destroy cxl_adapter_idr on module_exit + * cxl: Destroy afu->contexts_idr on release of an afu + * cxl: Don't ignore add_process_element() result when attaching context + * cxl: Compile with -Werror + * cxl: sparse: Make declarations static + * cxl: sparse: Silence iomem warning in debugfs file creation + * cxl: Convert MMIO read/write macros to inline functions + * cxl: Drop commands if the PCI channel is not in normal state + * cxl: Allocate and release the SPA with the AFU + * cxl: Make IRQ release idempotent + * cxl: Clean up adapter MMIO unmap path. + * cxl: Refactor adaptor init/teardown + * cxl: Refactor AFU init/teardown + * cxl: Don't remove AFUs/vPHBs in cxl_reset + * cxl: Allow the kernel to trust that an image won't change on PERST. + * cxl: EEH support + * cxl: Add CONFIG_CXL_EEH symbol + * cxl: Plug irq_bitmap getting leaked in cxl_context + * cxl: Add alternate MMIO error handling + * cxl: Allow release of contexts which have been OPENED but not STARTED + * cxl: Remove use of macro DEFINE_PCI_DEVICE_TABLE + * cxl: Release irqs if memory allocation fails + * cxl: Remove racy attempt to force EEH invocation in reset + * cxl: Fix + cleanup error paths in cxl_dev_context_init + * cxl: Fix force unmapping mmaps of contexts allocated through the kernel api + * cxl: Set up and enable PSL Timebase + + -- Tim Gardner Tue, 01 Sep 2015 07:38:43 -0600 + +linux (4.2.0-7.7) wily; urgency=low + + [ Tim Gardner ] + + * Release Tracking Bug + - LP: #1490564 + * rebase to v4.2 + + [ Wen Xiong ] + + * SAUCE: ipr: Byte swapping for device_id attribute in sysfs + - LP: #1453892 + + [ Upstream Kernel Changes ] + + * rebase to v4.2 + - LP: #1487345 + + -- Tim Gardner Wed, 26 Aug 2015 07:06:10 -0600 + +linux (4.2.0-6.6) wily; urgency=low + + [ Tim Gardner ] + + * Release Tracking Bug + - LP: #1488138 + + [ Andy Whitcroft ] + + * rebase to v4.2-rc8 + + [ Shilpasri G Bhat ] + + * SAUCE: cpufreq: powernv: Handle throttling due to Pmax capping at chip + level + - LP: #1480894 + * SAUCE: powerpc/powernv: Add definition of OPAL_MSG_OCC message type + - LP: #1480894 + * SAUCE: cpufreq: powernv: Register for OCC related opal_message + notification + - LP: #1480894 + * SAUCE: cpufreq: powernv: Call throttle_check() on receiving + OCC_THROTTLE + - LP: #1480894 + * SAUCE: cpufreq: powernv: Report Psafe only if PMSR.psafe_mode_active + bit is set + - LP: #1480894 + * SAUCE: cpufreq: powernv: Restore cpu frequency to policy->cur on + unthrottling + - LP: #1480894 + + [ Upstream Kernel Changes ] + + * rebase to v4.2-rc8 + - LP: #1483440 + - LP: #1484334 + + -- Tim Gardner Fri, 21 Aug 2015 07:12:11 -0600 + +linux (4.2.0-5.5) wily; urgency=low + + [ Tim Gardner ] + + * Release Tracking Bug + - LP: #1487173 + + [ Andy Whitcroft ] + + * [Packaging] correct spelling of probabaly on the tools packages + - LP: #1256822 + * rebase to v4.2-rc7 + + [ dann frazier ] + + * d-i: Add nicpf and nicvf to nic-modules + * d-i: Enable usb modules on arm64 + + [ Mahesh Salgaonkar ] + + * SAUCE: powerpc/powernv: display reason for Malfunction Alert HMI. + - LP: #1482343 + * SAUCE: powerpc/powernv: Pull all HMI events before panic. + - LP: #1482343 + * SAUCE: powerpc/powernv: Invoke opal_cec_reboot2() on unrecoverable + machine check errors. + - LP: #1482343 + * SAUCE: powerpc/powernv: Invoke opal_cec_reboot2() on unrecoverable HMI. + - LP: #1482343 + + [ Vipin K Parashar ] + + * SAUCE: powerpc/powernv: Add poweroff (EPOW, DPO) events support for + PowerNV platform + - LP: #1469771 + + [ Upstream Kernel Changes ] + + * rebase to v4.2-rc7 + + -- Tim Gardner Tue, 11 Aug 2015 09:48:40 -0600 + +linux (4.2.0-4.4) wily; urgency=low + + [ Tim Gardner ] + + * Release Tracking Bug + - LP: #1483677 + + [ Achiad Shochat ] + + * SAUCE: net/mlx5e: Support TX packet copy into WQE + * SAUCE: net/mlx5e: TX latency optimization to save DMA reads + * SAUCE: net/mlx5e: Cosmetics: use BIT() instead of "1 <<", and others + * SAUCE: net/mlx5e: Input IPSEC.SPI into the RX RSS hash function + + [ Adam Lee ] + + * SAUCE: serial: 8250_pci: Add support for Pericom PI7C9X795[1248] + - LP: #1480142 + + [ dann frazier ] + + * [Config] CONFIG_NR_CPUS=128 on arm64 + + [ Leann Ogasawara ] + + * [Config] d-i -- Add sfc to nic-modules udeb + - LP: #1481490 + + [ Saeed Mahameed ] + + * SAUCE: net/mlx5e: Support ETH_RSS_HASH_XOR + * SAUCE: net/mlx5e: Allocate DMA coherent memory on reader NUMA node + + [ Tim Gardner ] + + * [Config] CONFIG_X86_INTEL_MPX=y + - LP: #1460902 + * [Debian] change dependency on module-init-tools to kmod + - LP: #1481986 + * rebase to v4.2-rc6 + + [ Upstream Kernel Changes ] + + * rebase to v4.2-rc6 + + -- Tim Gardner Tue, 04 Aug 2015 16:59:45 -0600 + +linux (4.2.0-3.3) wily; urgency=low + + [ Tim Gardner ] + + * Release Tracking Bug + - LP: #1481462 + * SAUCE: workqueue: Make flush_workqueue() available again to non GPL modules + Fixes an FTBS for at least one DKMS package. + + -- Tim Gardner Tue, 04 Aug 2015 11:26:53 -0600 + +linux (4.2.0-2.2) wily; urgency=low + + [ Tim Gardner ] + + * Release Tracking Bug + - LP: #1481067 + * rebase to v4.2-rc5 + + [ Andy Whitcroft ] + + * [Packaging] module-inclusion -- commonise copy code and simplify + * [Packaging] module-inclusion -- add manual command entries + * [Packaging] module blacklists -- add support for manual blacklists + * [Packaging] do_common_tools should always be on + * [Packaging] initscripts need installing when making the package + * [Packaging] initscripts work around bug in debhelper systemd support + * [Config] exclude oss modules from linux-image + - LP: #1434842 + * hyper-v -- add hid and fb drivers to linux-virtual + - LP: #1444179 + * ubuntu: (no-squash) vbox -- infrastructure and updater + * ubuntu: vbox -- elide the new symlinks and reconstruct on clean: + - LP: #1426113 + * ubuntu: vbox -- update to 5.0.0-dfsg-1 + - LP: #1480879 + * SAUCE: vbox: follow v4.2 updates to follow_link()/put_link() API + * [Config] move vbox modules into linux-image + + [ Upstream Kernel Changes ] + + * rebase to v4.2-rc5 + - LP: #1478497 + - LP: #1477900 + + -- Andy Whitcroft Mon, 03 Aug 2015 12:20:10 +0100 + +linux (4.2.0-1.1~rc1) wily; urgency=low + + [ Andy Whitcroft ] + + * Release Tracking Bug + - LP: #1479903 + * Initial upload of v4.2 based kernel (currently v4.-rc4) + + [ Upstream Kernel Changes ] + + * rebase to v4.2-rc4 + - LP: #1476987 + - LP: #1476888 + * rebase to v4.2-rc3 + * rebase to v4.2-rc2 + * rebase to v4.2-rc1 + - LP: #1394368 + - LP: #1427680 + - LP: #1462614 + - LP: #1397021 + + -- Andy Whitcroft Thu, 30 Jul 2015 18:42:46 +0100 + +linux (4.1.0-3.3) wily; urgency=low + + [ Andy Whitcroft ] + + * Release Tracking Bug + - LP: #1478897 + + [ Colin Ian King ] + + * SAUCE: KEYS: ensure we free the assoc array edit if edit is valid + - CVE-2015-1333 + + [ Seth Forshee ] + + * SAUCE: overlayfs: Enable user namespace mounts for the "overlay" fstype + - LP: #1478578 + + [ Upstream Kernel Changes ] + + * sched/stop_machine: Fix deadlock between multiple stop_two_cpus() + - LP: #1461620 + * x86/nmi: Enable nested do_nmi() handling for 64-bit kernels + * x86/nmi/64: Remove asm code that saves cr2 + * x86/nmi/64: Switch stacks on userspace NMI entry + * x86/nmi/64: Reorder nested NMI checks + * x86/nmi/64: Use DF to avoid userspace RSP confusing nested NMI + detection + + -- Andy Whitcroft Tue, 28 Jul 2015 11:59:03 +0100 + +linux (4.1.0-2.4) wily; urgency=low + + [ Andy Whitcroft ] + + * SAUCE: overlayfs: when copying up and reading directories ensure + mounter had permissions V2 + - CVE-2015-1328 + + [ Leann Ogasawara ] + + * Release Tracking Bug + - LP: #1465419 + + -- Leann Ogasawara Mon, 15 Jun 2015 14:09:22 -0700 + +linux (4.1.0-2.2) wily; urgency=low + + [ Tim Gardner ] + + * rebase to v4.1.3 + * [Config] Add i40e[vf] to d-i + - LP: #1476393 + + [ Upstream Kernel Changes ] + + * rebase to v4.1.3 + - LP: #1427680 + - LP: #1462614 + - LP: #1394368 + + -- Tim Gardner Wed, 22 Jul 2015 09:13:02 -0600 + +linux (4.1.0-1.1) wily; urgency=low + + [ Andy Whitcroft ] + + * SAUCE: overlay: add backwards compatible overlayfs format support V3 + - LP: #1395877, #1410480 + * SAUCE: overlayfs: when copying up and reading directories ensure + mounter had permissions V2 + - CVE-2015-1328 + * [Packaging] fix up Vcs-Git: to point to launchpad + * [Config] correct linux-initramfs-tool virtual linkage + - LP: #1474810 + + [ Chris J Arges ] + + * [Config] Add dm-service-time to multipath-modules + - LP: #1469240 + * [Config] Add MTD_POWERNV_FLASH and OPAL_PRD + - LP: #1464560 + + [ Jay Vosburgh ] + + * SAUCE: fan: Proof of concept implementation (v2) + - LP: #1439706 + * SAUCE: fan: tunnel multiple mapping mode (v3) + - LP: #1470091 + + [ Leann Ogasawara ] + + * Revert "SAUCE: ext4: disable ext4_punch_hole for indirect filesystems" + * Revert "SAUCE: intel_pstate: inform user that thermald is worth + considering" + * Revert "SAUCE: Work around broken ACPI backlight on Dell Inspiron 5537" + * Revert "SAUCE: dm-crypt: never use write same" + * Release Tracking Bug + - LP: #1476333 + + [ Tim Gardner ] + + * Rebase to v4.1 + - LP: #1443371 + * [Config] Enable Apparmor + * [Config] CONFIG_OVERLAY_FS_V1=y + * [Config] DEFAULT_IOSCHED="deadline" for ppc64el + - LP: #1469829 + * [Config] CONFIG_VM86=n + - LP: #1473447 + * [Config] ACORN_PARTITION=n + - LP: #1453117 + + [ Timo Aaltonen ] + + * [Config] Disable CONFIG_DRM_I915_PRELIMINARY_HW_SUPPORT + - LP: #1473319 + + [ Upstream Kernel Changes ] + + * efi: efivar_create_sysfs_entry() should return negative error codes + * efi: Add esrt support + * x86, doc: Remove cmdline_size from list of fields to be filled in for + EFI handover + * efi/esrt: Fix some compiler warnings + * efi: dmi: List SMBIOS3 table before SMBIOS table + * efi: Add 'systab' information to Documentation/ABI + * ALSA: hda - restore the MIC FIXUP for some Dell machines + - LP: #1473560 + * mtd: powernv: Add powernv flash MTD abstraction driver + - LP: #1464560 + * powerpc/powernv: Expose OPAL APIs required by PRD interface + - LP: #1464560 + * powerpc/powernv: Add opal-prd channel + - LP: #1464560 + * powerpc/powernv: fix construction of opal PRD messages + - LP: #1464560 + * powerpc/include: Add opal-prd to installed uapi headers + - LP: #1464560 + * powerpc/powernv: Fix vma page prot flags in opal-prd driver + - LP: #1464560 + + -- Leann Ogasawara Mon, 20 Jul 2015 10:16:06 -0700 + +linux (4.0.0-2.4) wily; urgency=low + + [ Andy Whitcroft ] + + * SAUCE: overlayfs: when copying up and reading directories ensure + mounter had permissions V2 + - CVE-2015-1328 + + [ Leann Ogasawara ] + + * Release Tracking Bug + - LP: #1465419 + + -- Leann Ogasawara Mon, 15 Jun 2015 14:09:22 -0700 + +linux (4.0.0-1.2) wily; urgency=low + + [ Andy Whitcroft ] + + * SAUCE: overlay: add backwards compatible overlayfs format support V3 + - LP: #1395877, #1410480 + * [Config] enable CONFIG_OVERLAY_FS_V1 + + [ Tai Nguyen ] + + * SAUCE: power: reset: Add syscon reboot device node for APM X-Gene platform + - LP: #1463211 + + [ Tim Gardner ] + + * [Config] CONFIG_HIBERNATION=n for ppc64el + - LP: #1463836 + + -- Tim Gardner Fri, 12 Jun 2015 06:11:53 -0600 + +linux (4.0.0-1.1) wily; urgency=low + + [ Leann Ogasawara ] + + * Revert "md/raid0: fix bug with chunksize not a power of 2." + - LP: #1457510 + * powerpc/powernv: Check image loaded or not before calling flash + - LP: #1461553 + + [ Tim Gardner ] + + * [Config] armhf: CPUFREQ_DT=y + - LP: #1457781 + + [ Upstream Kernel Changes ] + + * rebase to v4.0.5 + - LP: #1429756 + - LP: #1452175 + - LP: #1454656 + - LP: #1447909 + - LP: #1446517 + - LP: #1428947 + - LP: #1410704 + - LP: #1412800 + - LP: #1400215 + - LP: #1411193 + - LP: #1412800 + - LP: #1408295 + - LP: #1436745 + + -- Leann Ogasawara Tue, 09 Jun 2015 05:58:46 -0700 + +linux (3.19.0-10.10) vivid; urgency=low + + [ Andy Whitcroft ] + + * [Packaging] control -- make element ordering deterministic + * [Config] allow dracult to support initramfs as well + - LP: #1109029 + * [Packaging] generate live watchdog blacklists + - LP: #1432837 + + [ Leann Ogasawara ] + + * [Config] CONFIG_KVM_GENERIC_DIRTYLOG_READ_PROTECT=y + - LP: #1397860 + * rebase to v3.19.2 + + [ Upstream Kernel Changes ] + + * thinkpad_acpi: support new BIOS version string pattern + - LP: #1417915 + * arm64: Invalidate the TLB corresponding to intermediate page table + levels + - LP: #1432546 + * perf tools: Support parsing parameterized events + - LP: #1430341 + * perf tools: Extend format_alias() to include event parameters + - LP: #1430341 + * perf Documentation: Add event parameters + - LP: #1430341 + * perf tools: Document parameterized and symbolic events + - LP: #1430341 + * perf: provide sysfs_show for struct perf_pmu_events_attr + - LP: #1430341 + * perf: add PMU_EVENT_ATTR_STRING() helper + - LP: #1430341 + * perf: define EVENT_DEFINE_RANGE_FORMAT_LITE helper + - LP: #1430341 + * powerpc/perf/hv-24x7: parse catalog and populate sysfs with events + - LP: #1430341 + * powerpc/perf/{hv-gpci, hv-common}: generate requests with counters + annotated + - LP: #1430341 + * powerpc/perf/hv-gpci: add the remaining gpci requests + - LP: #1430341 + * powerpc/perf/hv-24x7: Document sysfs event description entries + - LP: #1430341 + * powerpc/iommu: Remove IOMMU device references via bus notifier + - LP: #1425202 + * powerpc/pseries: Fix endian problems with LE migration + - LP: #1428351 + * intel_idle: support additional Broadwell model + - LP: #1400970 + * tools/power turbostat: support additional Broadwell model + - LP: #1400970 + * KVM: x86: flush TLB when D bit is manually changed. + - LP: #1397860 + * Optimize TLB flush in kvm_mmu_slot_remove_write_access. + - LP: #1397860 + * KVM: Add generic support for dirty page logging + - LP: #1397860 + * KVM: x86: switch to kvm_get_dirty_log_protect + - LP: #1397860 + * KVM: Rename kvm_arch_mmu_write_protect_pt_masked to be more generic for + log dirty + - LP: #1397860 + * KVM: MMU: Add mmu help functions to support PML + - LP: #1397860 + * KVM: MMU: Explicitly set D-bit for writable spte. + - LP: #1397860 + * KVM: x86: Change parameter of kvm_mmu_slot_remove_write_access + - LP: #1397860 + * KVM: x86: Add new dirty logging kvm_x86_ops for PML + - LP: #1397860 + * KVM: VMX: Add PML support in VMX + - LP: #1397860 + * HID: multitouch: add support of clickpads + * HID: multitouch: Add support for button type usage + + [ Upstream Kernel Changes ] + + * rebase to v3.19.2 + - LP: #1428947 + + -- Andy Whitcroft Mon, 23 Mar 2015 15:28:16 +0000 + +linux (3.19.0-9.9) vivid; urgency=low + + [ Leann Ogasawara ] + + * Release Tracking Bug + - LP: #1430930 + + [ Shachar Raindel ] + + * SAUCE: IB/core: Prevent integer overflow in ib_umem_get address + arithmetic + - LP: #1413741 + - CVE-2014-8159 + + -- Leann Ogasawara Wed, 11 Mar 2015 10:29:17 -0700 + +linux (3.19.0-8.8) vivid; urgency=low + + [ Andy Whitcroft ] + + * ubuntu: vbox -- elide the new symlinks and reconstruct on clean: + - LP: #1426113 + * rebase to stable v3.19.1 + + [ John Johansen ] + + * SAUCE: (no-up): apparmor: fix mediation of fs unix sockets + - LP: #1408833 + + [ Leann Ogasawara ] + + * Release Tracking Bug + - LP: #1429940 + + [ Upstream Kernel Changes ] + + * xen: correct bug in p2m list initialization + * net/mlx5_core: Fix configuration of log_uar_page_sz + - LP: #1419938 + * tpm/ibmvtpm: Additional LE support for tpm_ibmvtpm_send + - LP: #1420575 + * net/mlx4_core: Maintain a persistent memory for mlx4 device + - LP: #1422481 + * net/mlx4_core: Set device configuration data to be persistent across + reset + - LP: #1422481 + * net/mlx4_core: Refactor the catas flow to work per device + - LP: #1422481 + * net/mlx4_core: Enhance the catas flow to support device reset + - LP: #1422481 + * net/mlx4_core: Activate reset flow upon fatal command cases + - LP: #1422481 + * net/mlx4_core: Manage interface state for Reset flow cases + - LP: #1422481 + * net/mlx4_core: Handle AER flow properly + - LP: #1422481 + * net/mlx4_core: Enable device recovery flow with SRIOV + - LP: #1422481 + * net/mlx4_core: Reset flow activation upon SRIOV fatal command cases + - LP: #1422481 + * tg3: Hold tp->lock before calling tg3_halt() from tg3_init_one() + - LP: #1428111 + * rebase to v3.19.1 + - LP: #1410704 + - LP: #1411193 + - LP: #1400215 + + -- Leann Ogasawara Mon, 09 Mar 2015 10:08:29 -0700 + +linux (3.19.0-7.7) vivid; urgency=low + + [ Andy Whitcroft ] + + * Release Tracking Bug + - LP: #1426013 + + [ Upstream Kernel Changes ] + + * x86/irq: Fix regression caused by commit b568b8601f05 + * cxl: Fix leaking interrupts if attach process fails + - LP: #1415102 + * cxl: Early return from cxl_handle_fault for a shut down context + - LP: #1415102 + * cxl: Disable AFU debug flag + - LP: #1415102 + * cxl: Disable SPAP register when freeing SPA + - LP: #1415102 + * cxl: remove redundant increment of hwirq + - LP: #1415102 + * cxl: Add tracepoints + - LP: #1415102 + * cxl: Update CXL ABI documentation + - LP: #1415102 + * cxl: Use image state defaults for reloading FPGA + - LP: #1415102 + * cxl: Add image control to sysfs + - LP: #1415102 + * cxl: Enable CAPP recovery + - LP: #1415102 + * cxl: Add ability to reset the card + - LP: #1415102 + * cxl: Fix device_node reference counting + - LP: #1415102 + * cxl: Export optional AFU configuration record in sysfs + - LP: #1415102 + * cxl: Fail AFU initialisation if an invalid configuration record is + found + - LP: #1415102 + * cxl: Add missing return statement after handling AFU errror + - LP: #1415102 + * powerpc/eeh: Introduce flag EEH_PE_REMOVED + - LP: #1415102 + * powerpc/eeh: Allow to set maximal frozen times + - LP: #1415102 + * HID: i2c-hid: Limit reads to wMaxInputLength bytes for input events + + -- Andy Whitcroft Thu, 26 Feb 2015 16:00:18 +0000 + +linux (3.19.0-6.6) vivid; urgency=low + + [ Andy Whitcroft ] + + * systemd -- fix hyper-v units to be non-forking + - LP: #1401525 + * [Config] move vbox modules into linux-image + * ubuntu: vbox -- update to 4.3.22-dfsg-1 + + [ Brad Figg ] + + * SAUCE: DEP8 test to run our regression tests + + [ Paolo Pisati ] + + * [Config] I2C_CHARDEV=y + - LP: #1417032 + + [ Upstream Kernel Changes ] + + * PCI: Fix infinite loop with ROM image of size 0 + * tpm: Fix NULL return in tpm_ibmvtpm_get_desired_dma + * Bluetooth: ath3k: workaround the compatibility issue with xHCI + controller + - LP: #1400215 + + -- Andy Whitcroft Thu, 19 Feb 2015 12:44:43 +0000 + +linux (3.19.0-5.5) vivid; urgency=low + + [ Andy Whitcroft ] + + * [Config] CONFIG_FA_DUMP=y + - LP: #1415562 + * ubuntu: (no-squash) vbox -- infrastructure and updater + * ubuntu: vbox -- update to 4.3.20-dfsg-1ubuntu1 + * rebase to v3.19 final + + [ Chris J Arges ] + + * [Config] Add ibmvfc to d-i + - LP: #1416001 + * SAUCE: ext4: disable ext4_punch_hole for indirect filesystems + - LP: #1292234 + + [ Upstream Kernel Changes ] + + * rebase to v3.19 + + -- Andy Whitcroft Mon, 09 Feb 2015 10:41:11 +0000 + +linux (3.19.0-4.4) vivid; urgency=low + + [ Andy Whitcroft ] + + * [Config] apply Kernel hacking >> Tracers config defaults + * hyper-v -- fix comment handing in /etc/network/interfaces + - LP: #1413020 + * rebase to v3.19-rc7 + * updateconfigs following rebase to v3.19-rc7 + + [ Ben Hutchings ] + + * SAUCE: rtsx_usb_ms: Use msleep_interruptible() in polling loop + - LP: #1413149 + + [ Upstream Kernel Changes ] + + * rebase to v3.19-rc7 + + -- Andy Whitcroft Mon, 02 Feb 2015 17:03:07 +0200 + +linux (3.19.0-3.3) vivid; urgency=low + + [ Andy Whitcroft ] + + * [Debian] arm64 -- build ubuntu drivers + - LP: #1411284 + * [Packaging] config-check -- add support for enforced annotations + * [Config] annotations -- switch to ENFORCED annotations + * [Packaging] config-check -- drop support for enforce file + * [Packaging] enforce -- drop empty enforce file + * rebase to v3.19-rc5 + * [Config] add modules removed due to tighter dependencies + * [Config] updateconfigs following rebase to v3.19-rc5 + * [Config] enforce CONFIG_FHANDLE=y + - LP: #1412543 + * [Packaging] hyper-v -- daemons now require -n for non-forking startup + - LP: #1408355 + * [Config] CONFIG_DEBUG_INFO_SPLIT=n + - LP: #1413646 + * [Config] apply Device Drivers >> Character devices >> IPMI top-level + message handler config defaults + * [Config] apply Device Drivers >> Character devices >> Serial drivers + config defaults + * [Config] apply Device Drivers >> GPIO Support config defaults + * [Config] apply Device Drivers >> Graphics support >> Direct Rendering + Manager >> Direct Rendering Manager (XFree86 4.1.0 and higher DRI + support) config defaults + * [Config] apply Device Drivers >> Graphics support >> Frame buffer + Devices >> Support for frame buffer devices config defaults + * [Config] apply Device Drivers >> HID support >> HID bus support >> + Special HID drivers config defaults + * [Config] apply Device Drivers >> Hardware Monitoring support config + defaults + * [Config] apply Device Drivers >> I2C support >> I2C support >> I2C + Hardware Bus support config defaults + * [Config] apply Device Drivers >> Industrial I/O support >> Analog to + digital converters config defaults + * [Config] apply Device Drivers >> Industrial I/O support >> Humidity + sensors config defaults + * [Config] apply Device Drivers >> Industrial I/O support >> Pressure + sensors config defaults + * [Config] apply Device Drivers >> Input device support >> Generic input + layer (needed for keyboard, mouse, ...) >> Mice config defaults + * [Config] apply Device Drivers >> Input device support >> Generic input + layer (needed for keyboard, mouse, ...) >> Touchscreens config defaults + * [Config] apply Device Drivers >> LED Support >> LED Class Support + config defaults + * [Config] apply Device Drivers >> MMC/SD/SDIO card support config + defaults + * [Config] apply Device Drivers >> Multifunction device drivers config + defaults + * [Config] apply Device Drivers >> Multimedia support >> Cameras/video + grabbers support >> Media test drivers config defaults + * [Config] apply Device Drivers >> Multimedia support >> Media PCI + Adapters config defaults + * [Config] apply Device Drivers >> Multimedia support >> Remote + Controller devices config defaults + * [Config] apply Device Drivers >> Network device support >> Distributed + Switch Architecture drivers config defaults + * [Config] apply Device Drivers >> Network device support >> Network core + driver support config defaults + * [Config] apply Device Drivers >> Network device support >> Wireless LAN + >> Hermes chipset 802.11b support (Orinoco/Prism2/Symbol) config + defaults + * [Config] apply Device Drivers >> Network device support >> Wireless LAN + >> Intel PRO/Wireless 2200BG and 2915ABG Network Connection config + defaults + * [Config] apply Device Drivers >> PHY Subsystem config defaults + * [Config] apply Device Drivers >> Pin controllers config defaults + * [Config] apply Device Drivers >> SPI support config defaults + * [Config] apply Device Drivers >> Sound card support >> Advanced Linux + Sound Architecture >> ALSA for SoC audio support config defaults + * [Config] apply Device Drivers >> Sound card support >> Advanced Linux + Sound Architecture >> FireWire sound devices config defaults + * [Config] apply Device Drivers >> Sound card support >> Advanced Linux + Sound Architecture >> HD-Audio config defaults + * [Config] apply Device Drivers >> Staging drivers >> Lustre file system + client support config defaults + * [Config] apply Device Drivers >> Staging drivers >> Media staging + drivers config defaults + * [Config] apply Device Drivers >> USB support >> USB Gadget Support >> + USB Gadget Drivers >> USB functions configurable through configfs + config defaults + * [Config] apply Device Drivers >> USB support >> USB Gadget Support >> + USB Peripheral Controller config defaults + * [Config] apply Networking support >> NFC subsystem support >> Near + Field Communication (NFC) devices config defaults + * [Config] apply Networking support >> Networking options >> Network + packet filtering framework (Netfilter) >> Core Netfilter Configuration + >> Netfilter nf_tables support config defaults + * [Config] apply Networking support >> Networking options >> QoS and/or + fair queueing >> Actions config defaults + * [Config] apply Networking support >> Networking options >> TCP/IP + networking config defaults + * [Config] apply Networking support >> Wireless >> Generic IEEE 802.11 + Networking Stack (mac80211) config defaults + * [Config] apply Device Drivers >> Input device support >> Generic input + layer (needed for keyboard, mouse, ...) >> Keyboards config defaults + * [Config] apply Device Drivers >> Input device support >> Generic input + layer (needed for keyboard, mouse, ...) >> Mice config defaults + * [Config] apply Device Drivers >> Pulse-Width Modulation (PWM) Support + config defaults + * [Config] apply Networking support >> Networking options >> Network + packet filtering framework (Netfilter) >> IP: Netfilter Configuration + >> IPv4 NAT config defaults + * [Config] apply Networking support >> Networking options >> Network + packet filtering framework (Netfilter) >> IPv6: Netfilter Configuration + >> IPv6 NAT config defaults + * [Config] apply Kernel hacking >> Kernel debugging config defaults + * [Config] apply General setup >> Timers subsystem >> Timer tick handling + config defaults + * SAUCE: arm64 -- psci tell the compiler which registers we are needing + values in + - LP: #1414002 + * [Config] apply Device Drivers >> Network device support >> Wireless LAN + >> Intel Wireless WiFi Next Gen AGN - Wireless-N/Advanced-N/Ultimate-N + (iwlwifi) config defaults + * [Config] apply Device Drivers >> Real Time Clock config defaults + * [Config] apply Device Drivers >> SCSI device support >> SCSI device + support >> SCSI low-level drivers config defaults + * [Config] apply General setup >> CPU/Task time and stats accounting >> + Cputime accounting config defaults + * [Config] apply Device Drivers >> Mailbox Hardware Support config + defaults + * rebase to v3.19-rc6 + * [Config] updateconfigs following rebase to v3.19-rc6 + + [ Kamal Mostafa ] + + * [Packaging] force "dpkg-source -I -i" behavior + + [ Leann Ogasawara ] + + * [Config] Disable CONFIG_USB_OTG + - LP: #1411295 + + [ Upstream Kernel Changes ] + + * overlay: add backwards compatible overlayfs format support (fixes) + - LP: #1410480 + + [ Upstream Kernel Changes ] + + * rebase to v3.19-rc5 + * rebase to v3.19-rc6 + + -- Andy Whitcroft Mon, 26 Jan 2015 11:37:39 +0000 + +linux (3.19.0-2.2) vivid; urgency=low + + [ Andy Whitcroft ] + + * rebase to v3.19-rc4 + * [Config] updateconfigs following rebase to v3.19-rc4 + * [Packaging] install all dtb files + - LP: #1408002 + * [Config] switch on "all" dtbs + - LP: #1408002 + + [ Colin Ian King ] + + * SAUCE: drivers/rtc/interface.c: ignore exprired times when enqueing new + timers + - LP: #1333569 + + [ Joseph Salisbury ] + + * [Config] Enable CONFIG_N_GSM as module. + - LP: #1404670 + + [ K. Y. Srinivasan ] + + * SAUCE: storvsc: force SPC-3 compliance on win8 and win8 r2 hosts + - LP: #1406867 + + [ Steve McIntyre ] + + * SAUCE: efi: Expose underlying UEFI firmware platform size to userland + - LP: #1409750 + + [ Upstream Kernel Changes ] + + * rebase to v3.19-rc4 + + -- Andy Whitcroft Tue, 13 Jan 2015 12:35:58 +0000 + +linux (3.19.0-1.1) vivid; urgency=low + + [ Andy Whitcroft ] + + * Revert "SAUCE: AUFS -- aufs3-standalone.patch" + * Revert "SAUCE: AUFS -- aufs3-mmap.patch" + * Revert "SAUCE: AUFS -- aufs3-base.patch" + * ubuntu: AUFS3 -- follow switch to vfs_fallocate + * rebase to v3.19-rc1 + * rebase to v3.19-rc2 + * [Config] defaultconfigs following rebase to v3.19-rc2 + * ubuntu: aufs3 -- follow rename of d_child + * ubuntu: aufs3 -- follow switch to d_splice_alias + * ubuntu: aufs3 -- follow switch to get_unused_fd_flags() + * ubuntu: aufs3 -- follow rename for d_alias + * apparmor -- follow change to this_cpu_ptr + * disable module checks for rebase + * ubuntu: AUFS -- substrate: aufs3-base.patch + * ubuntu: AUFS -- substrate: aufs3-mmap.patch + * ubuntu: AUFS -- substrate: aufs3-standalone.patch + * ubuntu: AUFS -- update to 92ad9cc8bd289bf8e59b6bd8d83137d8e1a58c1c + * [Configs] updateconfigs following aufs update + * v3.19 series start + * rebase to v3.19-rc3 + * [Configs] updateconfigs following rebase to v3.19-rc3 + * [Packaging] uploadnum should be the remainder of the version + - LP: #1407755 + * [Packaging] handle dts directories + - LP: #1408004 + * [Config] follow move of arm64 dts' into vendor directories + + [ Upstream Kernel Changes ] + + * arm64: optimized copy_to_user and copy_from_user assembly code + - LP: #1400349 + * iommu/ipmmu-vmsa: follow flag switch to IOMMU_NOEXEC + + [ Upstream Kernel Changes ] + + * rebase to v3.19-rc1 + - LP: #1173681 + * rebase to v3.19-rc2 + * rebase to v3.19-rc3 + + -- Andy Whitcroft Tue, 06 Jan 2015 14:30:02 +0000 + +linux (3.18.0-7.8) vivid; urgency=low + + [ Leann Ogasawara ] + + * Release Tracking Bug + - LP: #1401590 + + [ John Johansen ] + + * SAUCE: (no-up) apparmor: Sync to apparmor3 - RC1 snapshot + - LP: #1362199 + * SAUCE: Revert: fix: only allow a single threaded process to ... + - LP: #1371310 + * SAUCE: (no-up) fix: bad unix_addr_fs macro + - LP: #1390223 + * SAUCE: (no-up) apparmor: add parameter to control whether policy + hashing is used + - LP: #1383886 + * [config] set apparmor config options + + [ Seth Forshee ] + + * [Config] CONFIG_FW_LOADER_USER_HELPER_FALLBACK=n + - LP: #1398458 + + [ Upstream Kernel Changes ] + + * mfd: rtsx: Fix PM suspend for 5227 & 5249 + - LP: #1359052 + * mmc: sdhci-pci-o2micro: Fix Dell E5440 issue + - LP: #1346067 + + -- Leann Ogasawara Thu, 11 Dec 2014 08:36:36 -0800 + +linux (3.18.0-6.7) vivid; urgency=low + + [ Andy Whitcroft ] + + * Revert "SAUCE: (no-up) arm64: optimized copy_to_user and copy_from_user + assembly code" + - LP: #1398596 + * rebase to v3.18 + + [ Chris J Arges ] + + * [Config] CONFIG_PCIEASPM_DEBUG=y + - LP: #1398544 + + [ Paolo Pisati ] + + * [Config] armhf: VIRTIO_[BALLOON|MMIO]=y + - LP: #1396470 + + [ Upstream Kernel Changes ] + + * drivers:scsi:storvsc: Fix a bug in handling ring buffer failures that + may result in I/O freeze + - LP: #1400289 + + [ Upstream Kernel Changes ] + + * rebase to v3.18 + + -- Leann Ogasawara Mon, 08 Dec 2014 09:15:17 -0800 + +linux (3.18.0-5.6) vivid; urgency=low + + [ Leann Ogasawara ] + + * Release Tracking Bug + - LP: #1398109 + + [ Andy Whitcroft ] + + * [Config] CONFIG_SCSI_MQ_DEFAULT=n + - LP: #1397061 + * rebase to v3.18-rc7 + + [ Chris J Arges ] + + * [Config] CONFIG_SCOM_DEBUGFS=y for powerpc/powerpc64-smp + ppc64el/generic + - LP: #1395855 + + [ Upstream Kernel Changes ] + + * rebase to v3.18-rc7 + - LP: #1389497 + + -- Leann Ogasawara Mon, 01 Dec 2014 10:09:09 -0800 + +linux (3.18.0-4.5) vivid; urgency=low + + [ Leann Ogasawara ] + + * Release Tracking Bug + - LP: #1395891 + + [ Andy Whitcroft ] + + * rebase to v3.18-rc6 + * [Config] update configs following rebase to v3.18-rc6 + * [Config] enable overlayfs v1 support + + [ Tim Gardner ] + + * rebase to v3.18-rc5 + + [ Upstream Kernel Changes ] + + * overlay: add backwards compatible overlayfs format support + - LP: #1395877 + + [ Upstream Kernel Changes ] + + * rebase to v3.18-rc5 + * rebase to v3.18-rc6 + + -- Leann Ogasawara Mon, 24 Nov 2014 13:12:48 -0800 + +linux (3.18.0-3.4) vivid; urgency=low + + [ Andy Whitcroft ] + + * Revert "[Config] CONFIG_AUFS_FS=n for FTBS" + * Revert "SAUCE: AUFS -- update to + dcf336a754c86d5ee1c3d50699fd75c586d037cb" + * Revert "SAUCE: aufs3 -- (no-up) aufs3-standalone.patch" + * Revert "SAUCE: aufs3 -- (no-up) aufs3-base.patch" + * [Config] amd64 is now the indep architecture + * [Debian] basic hook support + * SAUCE: AUFS -- aufs3-base.patch + * SAUCE: AUFS -- aufs3-mmap.patch + * SAUCE: AUFS -- aufs3-standalone.patch + * ubuntu: AUFS -- update to 9d5c349d5c452170b8e813d86956f896a0aef170 + * [Config] updateconfigs following aufs3 update + * SAUCE: AUFS (no-squash): basic framework and update machinary -- part 2 + + [ dann frazier ] + + * [Config] Disable CONFIG_IPMI_SI_PROBE_DEFAULTS on armhf and arm64 + - LP: #1388952 + * [Config] disable CONFIG_ARM64_RANDOMIZE_TEXT_OFFSET + * [Config] Disable CONFIG_RCU_USER_QS on arm64 + + [ Tim Gardner ] + + * rebase to v3.18-rc4 + + [ Upstream Kernel Changes ] + + * rebase to v3.18-rc4 + - LP: #1389497 + - LP: #1387128 + + -- Andy Whitcroft Tue, 11 Nov 2014 17:16:13 +0000 + +linux (3.18.0-2.2) vivid; urgency=low + + [ Tim Gardner ] + + * SAUCE: nft_reject_bridge.c: Include net/ip6_checksum.h + + [ Upstream Kernel Changes ] + + * rebase to v3.18-rc3 + + -- Tim Gardner Mon, 03 Nov 2014 06:09:06 -0700 + +linux (3.18.0-1.1) vivid; urgency=low + + [ Andy Whitcroft ] + + * Revert "[Config] Switch kernel to vmlinuz (from vmlinux) on ppc64el" + * [Config] tools -- only build common tools when enabled + * [Config] follow rename of DEB_BUILD_PROFILES + * [Config] linux-image-extra is additive to linux-image + - LP: #1375310 + * [Config] linux-image-extra postrm is not needed on purge + * [Config] enable cloud tools on i386 + - LP: #1367399 + + [ Marc Dietrich ] + + * [Config] arm/tegra/d-i: framebuffer and usb support for Tegra SoCs + + [ Paolo Pisati ] + + * [Config] armhf: REGULATOR_TWL4030=y + * [Config] armhf: disable JUMP_LABEL + - LP: #1378856 + + [ Tim Gardner ] + + * rebase to v3.17-rc2 + * updateconfigs + * [Config] CONFIG_NFC_ST21NFCB=n + * [Config] Added net/6lowpan/* to generic inclusion list + * [Config] Add arm64 to enforcer CONFIG_CC_STACKPROTECTOR + * rebase to v3.17-rc3 + * rebase to v3.17-rc4 + * rebase to v3.17-rc5 + * [Config] armhf: USB_[E|O]HCI_EXYNOS=y + * [Config] CONFIG_XMON=y + - LP: #1365655 + * [Config] CONFIG_KVM_BOOK3S_64=m for ppc64el + - LP: #1362514 + * [Config] CONFIG_KVM_BOOK3S_64_HV=m + - LP: #1362514 + * [Config] CONFIG_DMA_CMA=n + - LP: #1362261 + * [Config] Add mpt3sas to d-i + - LP: #1368907 + * [Debian] set do_*_tools after stage1 or bootstrap is determined + - LP: #1370211 + * [Config] CONFIG_USB_OHCI_HCD_PCI=y + - LP: #1244176 + * rebase to v3.17-rc6 + * SAUCE: usbip: Update include path + * [Debian] usbip tools packaging + - LP: #898003 + * [Config] Enable usbip tools + - LP: #898003 + * [Config] CONFIG_CRASH_DUMP=n for powerpc-smp + - LP: #1363180 + * [Config] Correct annotation regarding CONFIG_DMA_CMA + - LP: #1362261 + * [Config] CONFIG_SND_HDA_INTEL=n for ppc64el + - LP: #1374438 + * [Config] CONFIG_HOTPLUG_PCI_SHPC=n for ppc64el + - LP: #1374440 + * [Debian] Don't fail if a symlink already exists + * rebase to v3.17-rc7 + * [Config] CONFIG_HOTPLUG_PCI_PCIE=n for ppc64el + - LP: #1374440 + * rebase to v3.17 + * rebase to v3.18-rc1 + * [Config] CONFIG_AUFS_FS=n for FTBS + * Enable vivid + * [Config] CONFIG_SOUND_OSS_CORE_PRECLAIM=n + - LP: #1385510 + * rebase to v3.18-rc2 + * [Debian] Fix linux-doc dangling symlinks + - LP: #661306 + * CONFIG_MODULE_COMPRESS=n + * [Config] dropped scsi_tgt from generic inclusion list + * [Config] Added drivers/uio to generic inclusion list + * [Config] CONFIG_PATA_MACIO=y + - LP: #1378894 + * [Config] CONFIG_DRM_BOCHS=n + * [Debian] install usbipd + - LP: #898003 + + [ Upstream Kernel Changes ] + + * rebase to v3.18-rc2 + + [ Upstream Kernel Changes ] + + * rebase to v3.18-rc1 + - LP: #1316518 + - LP: #1371591 + - LP: #1357928 + + [ Upstream Kernel Changes ] + + * rebase to v3.17 + + [ Upstream Kernel Changes ] + + * rebase to v3.17-rc7 + + [ Upstream Kernel Changes ] + + * rebase to v3.17-rc6 + + [ Upstream Kernel Changes ] + + * rebase to v3.17-rc5 + + [ Upstream Kernel Changes ] + + * rebase to v3.17-rc4 + + [ Upstream Kernel Changes ] + + * rebase to v3.17-rc3 + + [ Upstream Kernel Changes ] + + * rebase to v3.17-rc2 + - LP: #1358116 + - LP: #1350148 + - LP: #1334950 + - LP: #1329580 + - LP: #1329580 + - LP: #1329580 + + [ Upstream Kernel Changes ] + + * rebase to v3.17-rc2 + + -- Tim Gardner Tue, 26 Aug 2014 10:36:19 -0600 + +linux (3.17.0-0.0) utopic; urgency=medium + + * Empty entry + + -- Tim Gardner Tue, 26 Aug 2014 10:34:44 -0600 + +linux (3.16.0-11.16) utopic; urgency=low + + [ Mauricio Faria de Oliveira ] + + * [Config] Switch kernel to vmlinuz (from vmlinux) on ppc64el + - LP: #1358920 + + [ Peter Zijlstra ] + + * SAUCE: (no-up) mmu_notifier: add call_srcu and sync function for listener to delay call and sync + - LP: #1361300 + + [ Tim Gardner ] + + * [Config] CONFIG_ZPOOL=y + - LP: #1360428 + * Release Tracking Bug + - LP: #1361308 + + [ Upstream Kernel Changes ] + + * Revert "net/mlx4_en: Fix bad use of dev_id" + - LP: #1347012 + * net/mlx4_en: Reduce memory consumption on kdump kernel + - LP: #1347012 + * net/mlx4_en: Fix mac_hash database inconsistency + - LP: #1347012 + * net/mlx4_en: Disable blueflame using ethtool private flags + - LP: #1347012 + * net/mlx4_en: current_mac isn't updated in port up + - LP: #1347012 + * net/mlx4_core: Use low memory profile on kdump kernel + - LP: #1347012 + * Drivers: scsi: storvsc: Change the limits to reflect the values on the host + - LP: #1347169 + * Drivers: scsi: storvsc: Set cmd_per_lun to reflect value supported by the Host + - LP: #1347169 + * Drivers: scsi: storvsc: Filter commands based on the storage protocol version + - LP: #1347169 + * Drivers: scsi: storvsc: Fix a bug in handling VMBUS protocol version + - LP: #1347169 + * Drivers: scsi: storvsc: Implement a eh_timed_out handler + - LP: #1347169 + * drivers: scsi: storvsc: Set srb_flags in all cases + - LP: #1347169 + * drivers: scsi: storvsc: Correctly handle TEST_UNIT_READY failure + - LP: #1347169 + * namespaces: Use task_lock and not rcu to protect nsproxy + - LP: #1328088 + * net: xgene: Check negative return value of xgene_enet_get_ring_size() + * mm/zbud: change zbud_alloc size type to size_t + - LP: #1360428 + * mm/zpool: implement common zpool api to zbud/zsmalloc + - LP: #1360428 + * mm/zpool: zbud/zsmalloc implement zpool + - LP: #1360428 + * mm/zpool: update zswap to use zpool + - LP: #1360428 + * ideapad-laptop: Change Lenovo Yoga 2 series rfkill handling + - LP: #1341296 + * iommu/amd: Fix for pasid initialization + - LP: #1361300 + * iommu/amd: Moving PPR fault flags macros definitions + - LP: #1361300 + * iommu/amd: Drop oprofile dependency + - LP: #1361300 + * iommu/amd: Fix typo in amd_iommu_v2 driver + - LP: #1361300 + * iommu/amd: Don't call mmu_notifer_unregister in __unbind_pasid + - LP: #1361300 + * iommu/amd: Don't free pasid_state in mn_release path + - LP: #1361300 + * iommu/amd: Get rid of __unbind_pasid + - LP: #1361300 + * iommu/amd: Drop pasid_state reference in ppr_notifer error path + - LP: #1361300 + * iommu/amd: Add pasid_state->invalid flag + - LP: #1361300 + * iommu/amd: Don't hold a reference to mm_struct + - LP: #1361300 + * iommu/amd: Don't hold a reference to task_struct + - LP: #1361300 + * iommu/amd: Don't call the inv_ctx_cb when pasid is not set up + - LP: #1361300 + * iommu/amd: Don't set pasid_state->mm to NULL in unbind_pasid + - LP: #1361300 + * iommu/amd: Remove change_pte mmu_notifier call-back + - LP: #1361300 + * iommu/amd: Fix device_state reference counting + - LP: #1361300 + * iommu/amd: Fix 2 typos in comments + - LP: #1361300 + + -- Tim Gardner Fri, 22 Aug 2014 08:45:54 -0400 + +linux (3.16.0-10.15) utopic; urgency=low + + [ dann frazier ] + + * [debian] Fix regression with ABI subversions and backport + + [ Feng Kan ] + + * SAUCE: (no-up) irqchip:gic: change access of gicc_ctrl register to read + modify write. + - LP: #1357527 + * SAUCE: (no-up) arm64: optimized copy_to_user and copy_from_user + assembly code + - LP: #1358949 + + [ Stefan Bader ] + + * SAUCE: bcache: prevent crash on changing writeback_running + - LP: #1357295 + + [ Tim Gardner ] + + * [Config] CONFIG_XFRM_STATISTICS=y + * [Config] CONFIG_SECURITY_NETWORK_XFRM=y + * [Config] CONFIG_SENSORS_IBMPOWERNV=m + - LP: #1353005 + * Release Tracking Bug + - LP: #1359783 + + [ Upstream Kernel Changes ] + + * intel_idle: Broadwell support + - LP: #1256170 + * powerpc/book3s: Add basic infrastructure to handle HMI in Linux. + - LP: #1357108 + * powerpc/powernv: Invoke opal call to handle hmi. + - LP: #1357108 + * powerpc/book3s: handle HMIs for cpus in nap mode. + - LP: #1357108 + * powerpc/book3s: Fix endianess issue for HMI handling on napping cpus. + - LP: #1357108 + * powerpc: Add smp_mb() to arch_spin_is_locked() + - LP: #1358569 + * powerpc: Add smp_mb()s to arch_spin_unlock_wait() + - LP: #1358569 + * hwmon: (powerpc/powernv) hwmon driver for power, fan rpm, voltage and + temperature + - LP: #1353005 + * tools/testing/selftests/ptrace/peeksiginfo.c: add PAGE_SIZE definition + - LP: #1358855 + * printk: Add function to return log buffer address and size + - LP: #1359423 + * powerpc/powernv: Interface to register/unregister opal dump region + - LP: #1359423 + * bcache: fix crash on shutdown in passthrough mode + - LP: #1357295 + * bcache: fix uninterruptible sleep in writeback thread + - LP: #1357295 + + [ Vinayak Kale ] + + * SAUCE: (no-up) dt-bindings: Add Potenza PMU binding + - LP: #1357527 + * SAUCE: (no-up) arm64: dts: Add PMU node for APM X-Gene Storm SOC + - LP: #1357527 + + -- Tim Gardner Fri, 15 Aug 2014 12:34:33 -0600 + +linux (3.16.0-9.14) utopic; urgency=low + + [ Tim Gardner ] + + * Release Tracking Bug + - LP: #1357370 + + [ Serge Hallyn ] + + * SAUCE: Overlayfs: allow unprivileged mounts + - LP: #1357025 + + [ Upstream Kernel Changes ] + + * MAINTAINERS: Add entry for APM X-Gene SoC ethernet driver + * Documentation: dts: Add bindings for APM X-Gene SoC ethernet driver + * dts: Add bindings for APM X-Gene SoC ethernet driver + * drivers: net: Add APM X-Gene SoC ethernet driver support. + * powerpc/thp: Add write barrier after updating the valid bit + - LP: #1357014 + * powerpc/thp: Don't recompute vsid and ssize in loop on invalidate + - LP: #1357014 + * powerpc/thp: Invalidate old 64K based hash page mapping before insert + of 4k pte + - LP: #1357014 + * powerpc/thp: Handle combo pages in invalidate + - LP: #1357014 + * powerpc/thp: Invalidate with vpn in loop + - LP: #1357014 + * powerpc/thp: Use ACCESS_ONCE when loading pmdp + - LP: #1357014 + * powerpc/mm: Use read barrier when creating real_pte + - LP: #1357014 + * powerpc/thp: Add tracepoints to track hugepage invalidate + - LP: #1357014 + * rebase to v3.16.1 + + -- Tim Gardner Thu, 14 Aug 2014 08:18:02 -0400 + +linux (3.16.0-8.13) utopic; urgency=low + + [ Tim Gardner ] + + * Release Tracking Bug + - LP: #1356403 + + [ dann frazier ] + + * [debian] Allow for package revisions condusive for branching + + [ Upstream Kernel Changes ] + + * ahci_xgene: Fix the watermark threshold for the APM X-Gene SATA host controller driver. + - LP: #1350087 + * ahci_xgene: Use correct OOB tunning parameters for APM X-Gene SoC AHCI SATA Host controller driver. + - LP: #1350087 + * powerpc/powernv: Enable M64 aperatus for PHB3 + - LP: #1355469 + * powerpc: Fail remap_4k_pfn() if PFN doesn't fit inside PTE + - LP: #1352994 + * powerpc: Add machine_early_initcall() + - LP: #1352640 + * powerpc/powernv: Switch powernv drivers to use machine_xxx_initcall() + - LP: #1352640 + * powerpc/eeh: Avoid event on passed PE + - LP: #1352640 + * powerpc/eeh: EEH support for VFIO PCI device + - LP: #1352640 + * powerpc/eeh: sysfs entries lost + - LP: #1352640 + * powerpc/powernv: Fix IOMMU table for VFIO dev + - LP: #1352640 + * powerpc/eeh: Fetch IOMMU table in reliable way + - LP: #1352640 + * powerpc/eeh: Refactor EEH flag accessors + - LP: #1352640 + * powerpc/eeh: Selectively enable IO for error log + - LP: #1352640 + * powerpc/eeh: Reduce lines of log dump + - LP: #1352640 + * powerpc/eeh: Replace pr_warning() with pr_warn() + - LP: #1352640 + * powerpc/eeh: Make diag-data not endian dependent + - LP: #1352640 + * powerpc/eeh: Aux PE data for error log + - LP: #1352640 + * PCI: Support BAR sizes up to 128GB + - LP: #1352640 + * powerpc/powernv: Allow to freeze PE + - LP: #1352640 + * powerpc/powernv: Split ioda_eeh_get_state() + - LP: #1352640 + * powerpc/powernv: Handle compound PE + - LP: #1352640 + * powerpc/powernv: Handle compound PE for EEH + - LP: #1352640 + * powerpc/powernv: Handle compound PE in config accessors + - LP: #1352640 + * mnt: Only change user settable mount flags in remount + - LP: #1356318 + - CVE-2014-5206 + * mnt: Move the test for MNT_LOCK_READONLY from change_mount_flags into do_remount + - LP: #1356318 + - CVE-2014-5206 + * mnt: Correct permission checks in do_remount + - LP: #1356323 + - CVE-2014-5207 + * mnt: Change the default remount atime from relatime to the existing value + - LP: #1356323 + - CVE-2014-5207 + + -- Tim Gardner Sun, 10 Aug 2014 09:10:51 -0600 + +linux (3.16.0-7.12) utopic; urgency=low + + [ Andy Whitcroft ] + + * rebase to v3.16 final + * [Config] d-i -- add virtio_scsi to virtio-modules + - LP: #1342000 + + [ dann frazier ] + + * [Packaging] Fix 'printchanges' to work with versions containing '+' + + [ Tim Gardner ] + + * [Config] CONFIG_MICROCODE=y + - LP: #1084373 + * [Config] CONFIG_CONTEXT_TRACKING_FORCE=n + - LP: #1349028 + * [Config] Add hv_balloon to d-i virtio-modules + - LP: #1292216 + * Release Tracking Bug + - LP: #1354530 + + [ Upstream Kernel Changes ] + + * rebase to v3.16 + + -- Tim Gardner Tue, 29 Jul 2014 09:55:15 -0400 + +linux (3.16.0-6.11) utopic; urgency=low + + [ Paolo Pisati ] + + * [Config] armhf: MXS_DMA=y && MTD_NAND_GPMI_NAND=m + * [Config] armhf: KEYBOARD_IMX=m + * [Config] armhf: build cubox & imx6 DTBs + * [Config] armhf: RTC_DRV_PCF8523=y + + [ Tim Gardner ] + + * [Config] CONFIG_KEYS_DEBUG_PROC_KEYS=y + - LP: #1344405 + * [Config] CONFIG_SCSI_IPR_TRACE=y, CONFIG_SCSI_IPR_DUMP=y + - LP: #1343109 + * Release Tracking Bug + - LP: #1349196 + + [ Upstream Kernel Changes ] + + * rebase to v3.16-rc7 + + -- Tim Gardner Thu, 24 Jul 2014 09:08:55 -0400 + +linux (3.16.0-5.10) utopic; urgency=low + + [ Tim Gardner ] + + * Release Tracking Bug + - LP: #1346298 + * [Config] CONFIG_GPIO_SYSFS=y + - LP: #1342153 + * rebase to v3.16-rc6 + + [ Paolo Pisati ] + + * [Config] enable ARCH_MVEBU* + * [Config] AHCI_MVEBU=m + * [Config] ARMADA_THERMAL=y + * [Config] ARM_ARMADA_370_XP_CPUIDLE=y + * [Config] CRYPTO_DEV_MV_CESA=m + * [Config] I2C_MV64XXX=m + * [Config] MMC_MVSDIO=m + * [Config] MMC_SDHCI_DOVE=m + * [Config] MTD_NAND_ORION=m + * [Config] MTD_NAND_PXA3xx=m + * [Config] MVNETA=m + * [Config] MV_XOR=y + * [Config] ORION_WATCHDOG=m + * [Config] PCI_MVEBU=y + * [Config] RTC_DRV_MV=y + * [Config] SND_KIRKWOOD_SOC*=m + * [Config] SPI_ORION=m + * [Config] USB_XHCI_MVEBU=m + * [Config] armhf: build all Armada and Dove DTBs + * [Config] armhf: SERIAL_8250_DW=y + + [ Upstream Kernel Changes ] + + * rebase to v3.16-rc6 + + -- Tim Gardner Tue, 15 Jul 2014 07:49:42 -0400 + +linux (3.16.0-4.9) utopic; urgency=low + + [ Tim Gardner ] + + * Release Tracking Bug + - LP: #1341543 + + [ Upstream Kernel Changes ] + + * rebase to v3.16-rc5 + + -- Tim Gardner Sun, 13 Jul 2014 21:30:27 -0400 + +linux (3.16.0-3.8) utopic; urgency=low + + [ Tim Gardner ] + + * Release Tracking Bug + - LP: #1340091 + + -- Tim Gardner Thu, 10 Jul 2014 10:06:47 +0100 + +linux (3.16.0-2.7) utopic; urgency=low + + [ Andy Whitcroft ] + + * ubuntu: aufs3 -- avoid aufs3-mmap.patch include hell for arm64 + ubuntu: aufs3 -- (no-up) aufs3-mmap.patch + + -- Tim Gardner Wed, 09 Jul 2014 16:16:28 +0100 + +linux (3.16.0-2.6) utopic; urgency=low + + [ Andy Whitcroft ] + + * Revert "ubuntu: aufs3 -- (no-up) aufs3-mmap.patch" + Fixes FTBS. + + -- Tim Gardner Tue, 08 Jul 2014 17:29:26 +0100 + +linux (3.16.0-2.5) utopic; urgency=low + + [ Andy Whitcroft ] + + * ubuntu -- fix basic format for ubuntu/Makefile + * ubuntu: AUFS (no-squash): basic framework and update machinary + * ubuntu: aufs3 -- update update scripting + * ubuntu: aufs3 -- (no-up) aufs3-base.patch + * ubuntu: aufs3 -- (no-up) aufs3-mmap.patch + * ubuntu: aufs3 -- (no-up) aufs3-standalone.patch + * ubuntu: AUFS -- update to dcf336a754c86d5ee1c3d50699fd75c586d037cb + * [Configs] AUFS configs + * ubuntu: aufs3 -- reenable + + [ Tim Gardner ] + + * CONFIG_LATENCYTOP=n + + -- Tim Gardner Tue, 08 Jul 2014 15:27:35 +0100 + +linux (3.16.0-2.4) utopic; urgency=low + + [ Andy Whitcroft ] + + * [Config] flip VIRTIO*=y + * [Config] commonise CONFIG_SWIOTLB=y + * [Config] apply Bus options (PCI etc.) >> PCI support config defaults + * [Config] apply Device Drivers >> ATA/ATAPI/MFM/RLL support (DEPRECATED) + config defaults + * [Config] apply Device Drivers >> Block devices config defaults + * [Config] apply Device Drivers >> Character devices config defaults + * [Config] apply Device Drivers >> DMA Engine support config defaults + * [Config] apply Device Drivers >> EDAC (Error Detection And Correction) + reporting config defaults + * [Config] apply Device Drivers >> Graphics support >> Direct Rendering + Manager >> Direct Rendering Manager (XFree86 4.1.0 and higher DRI + support) config defaults + * [Config] apply Device Drivers >> GPIO Support config defaults + * [Config] apply Device Drivers >> Graphics support >> Console display + driver support config defaults + * [Config] apply Device Drivers >> IIO staging drivers >> Accelerometers + config defaults + * [Config] apply Device Drivers >> IOMMU Hardware Support config defaults + * [Config] apply Device Drivers >> Input device support >> Generic input + layer (needed for keyboard, mouse, ...) >> Miscellaneous devices config + defaults + * [Config] apply Device Drivers >> Input device support >> Hardware I/O + ports config defaults + * [Config] apply Device Drivers >> LED Support >> LED Class Support + config defaults + * [Config] apply Device Drivers >> Hardware Spinlock drivers config + defaults + * [Config] apply Device Drivers >> Multimedia support >> Cameras/video + grabbers support config defaults + * [Config] apply Security options config defaults + * [Config] apply Networking options >> Network packet filtering framework + (Netfilter) >> Core Netfilter Configuration config defaults + * [Config] apply Device Drivers >> MMC/SD/SDIO card support config + defaults + * [Config] apply Device Drivers >> Graphics support >> Frame buffer + Devices >> Support for frame buffer devices config defaults + * [Config] apply Power management and ACPI options >> CPU Frequency + scaling config defaults + * [Config] apply Processor type and features config defaults + * [Config] apply Partition Types config defaults + * [Config] apply Power management and ACPI options config defaults + * [Config] apply Device Drivers >> InfiniBand support config defaults + * [Config] apply Device Drivers >> Misc devices config defaults + * [Config] apply Device Drivers >> Multifunction device drivers config + defaults + * [Config] apply Device Drivers >> SCSI device support >> SCSI device + support >> SCSI low-level drivers config defaults + * [Config] apply Device Drivers >> Network device support >> Ethernet + driver support config defaults + * [Config] apply Device Drivers >> Network device support >> Network core + driver support config defaults + * [Config] apply Device Drivers >> Network device support >> PHY Device + support and infrastructure config defaults + * [Config] apply File systems >> Network File Systems config defaults + * [Config] apply Device Drivers >> Input device support >> Generic input + layer (needed for keyboard, mouse, ...) >> Touchscreens config defaults + * [Config] apply Device Drivers >> Memory Technology Device (MTD) support + >> NAND Device Support config defaults + * [Config] apply Device Drivers >> Network device support >> Wireless LAN + >> Ralink driver support config defaults + * [Config] apply Device Drivers >> Staging drivers config defaults + * [Config] apply Cryptographic API >> Hardware crypto devices config + defaults + * [Config] apply Device Drivers >> Macintosh device drivers config + defaults + * [Config] apply Device Drivers >> Network device support >> Wireless LAN + config defaults + * [Config] apply Device Drivers >> PPS support config defaults + * [Config] apply Device Drivers >> Sound card support config defaults + * [Config] apply Networking support >> RF switch subsystem support config + defaults + * [Config] apply Library routines config defaults + * [Config] apply Device Drivers >> CODEC drivers config defaults + * [Config] apply Device Drivers >> PHY Subsystem config defaults + * [Config] apply Device Drivers >> Pulse-Width Modulation (PWM) Support + config defaults + * [Config] apply Kernel hacking >> Tracers config defaults + * [Config] apply Kernel hacking >> Runtime Testing config defaults + * [Config] apply Kernel hacking >> Architecture: powerpc config defaults + * [Config] apply Device Drivers >> USB support config defaults + * [Config] apply Device Drivers >> Power supply class support config + defaults + * [Config] apply Device Drivers >> USB Network Adapters config defaults + * [Config] apply General setup >> IRQ subsystem config defaults + * [Config] apply General setup config defaults + * [Config] apply File systems >> Miscellaneous filesystems config + defaults + * [Config] apply File systems config defaults + * [Config] apply Device Drivers >> Userspace I/O drivers config defaults + * [Config] apply Device Drivers >> Virtio drivers config defaults + * [Config] apply Device Drivers >> USB Peripheral Controller config + defaults + * [Config] apply Device Drivers >> SCSI device support >> SCSI device + support >> SCSI Transports config defaults + * [Config] apply Device Drivers >> Real Time Clock config defaults + * [Config] apply Device Drivers >> Serial ATA and Parallel ATA drivers + (libata) config defaults + * [Config] apply Device Drivers >> SoC Audio for Freescale CPUs config + defaults + * [Config] apply Device Drivers >> Voltage and Current Regulator Support + config defaults + * [Config] apply Device Drivers >> USB Physical Layer drivers config + defaults + * [Config] apply Device Drivers >> Watchdog Timer Support config defaults + * [Config] powerpc-powerpc-e500mc FTBFS -- CONFIG_CRASH_DUMP=n + * [Config] powerpc-powerpc64-emb FTBFS -- CONFIG_IMA=n + * [Config] powerpc-powerpc64-emb FTBFS -- CONFIG_HIBERNATION=n + CONFIG_HOTPLUG_CPU=n + * [Config] ppc64el-generic FTBFS -- CONFIG_LUSTRE_FS=n + * [Config] drivers/message/fusion needs scsi_transport_spi in virtual + * [Config] drivers/acpi/acpi_ipmi.ko needs + drivers/char/ipmi/ipmi_msghandler.ko in virtual + * [Config] armhf-* FTBFS -- CONFIG_STACK_TRACER=n + CONFIG_FUNCTION_TRACER=n + * [Config] ignore modules changing following major config changes + + [ Tim Gardner ] + + * rebase to v3.16-rc4 + + [ Upstream Kernel Changes ] + + * rebase to v3.16-rc4 + - LP: #1297581 + + -- Andy Whitcroft Thu, 03 Jul 2014 11:00:43 +0100 + +linux (3.16.0-1.3) utopic; urgency=low + + [ Andy Whitcroft ] + + * Revert "Disable do_tools_perf for FTBS" + * SAUCE: fix perf_regs definitions for arm64 + + [ Paolo Pisati ] + + * [Config] armhf: ARCH_EXYNOS5* support + * [Config] armhf: CPU_IDLE=y and ARM_EXYNOS_CPUIDLE=y + * [Config] armhf: EXYNOS_THERMAL=y + * [Config] armhf: EXYNOS_IOMMU=y + * [Config] armhf: EXYNOS_ADC=m + * [Config] armhf: EXYNOS_I2C_EXYNOS5=m + * [Config] armhf: MMC_SDHCI_S3C=m + * [Config] armhf: PCI_EXYNOS=y + * [Config] armhf: PHY_EXYNOS5250_SATA=y + * [Config] armhf: USB_[E|O]HCI_EXYNOS=y && SAMSUNG_USBPHY=y + * [Config] armhf: PWM_SAMSUNG=m + * [Config] armhf: RTC_DRV_S3C=y + * [Config] armhf: S3C2410_WATCHDOG=m + * [Config] armhf: MMC_DW_EXYNOS=m + * [Config] armhf: SERIAL_SAMSUNG=y + * [Config] armhf: SND_SOC_SAMSUNG=m + * [Config] armhf: SPI_S3C64XX=m + * [Config] armhf: EXYNOS_VIDEO=y and VIDEO_SAMSUNG*=m + * [Config] armhf: FB_S3C=m + * [Config] armhf: build all Exynos 5 DTBs + * [Config] armhf: disable CPUFREQ_EXYNOS + + [ Tim Gardner ] + + * rebase to v3.16-rc3 + + [ Upstream Kernel Changes ] + + * rebase to v3.16-rc3 + - LP: #1331915 + + -- Tim Gardner Tue, 24 Jun 2014 08:58:09 -0600 + +linux (3.16.0-0.2) utopic; urgency=low + + [ Tim Gardner ] + + * Revert "SAUCE: intel_pstate -- toggle default to disable" + - LP: #1333322 + * CONFIG_BOOKE_WDT=y + * Disable do_tools_perf for FTBS (just until I can figure it out) + + -- Tim Gardner Mon, 23 Jun 2014 13:37:53 -0600 + +linux (3.16.0-0.1) utopic; urgency=low + + [ Tim Gardner ] + + * Release Tracking Bug + - LP: #1333265 + + [ Andy Whitcroft ] + + * [Config] cloud-tools -- add systemd units + - LP: #1329027 + + [ dann frazier ] + + * [Config] CONFIG_RTC_DRV_XGENE=y for arm64 + * [Config] CONFIG_NET_XGENE=m for arm64 + * [Config] Restrict CONFIG_POWER_RESET_SYSCON to arm64 only + + [ Feng Kan ] + + * SAUCE: (no-up) arm64: dts: Add X-Gene reboot driver dts node + * SAUCE: (no-up) Add documentation for generic SYSCON reboot driver. + * SAUCE: (no-up) Select reboot driver for X-Gene platform. + + [ Iyappan Subramanian ] + + * SAUCE: (no-up) MAINTAINERS: Add entry for APM X-Gene SoC ethernet driver + * SAUCE: (no-up) Documentation: dts: Add bindings for APM X-Gene SoC ethernet driver + * SAUCE: (no-up) dts: Add bindings for APM X-Gene SoC ethernet driver + * SAUCE: (no-up) drivers: net: Add APM X-Gene SoC ethernet driver support. + + [ Tim Gardner ] + + * updateconfigs + * Fix arm64 crypto Makefile + * [Config] CONFIG_BOOKE_WDT=n for FTBS + * [Debian] Add UTS_UBUNTU_RELEASE_ABI to utsrelease.h + - LP: #1327619 + * Disabled powerpc64-emb for FTBS + * [Config] CONFIG_DRM_TEGRA=m + * [Config] CONFIG_CMA_SIZE_MBYTES=64 + * rebase to v3.16-rc2 + * Clean up generic.inclusion-list warnings + + [ Upstream Kernel Changes ] + + * rebase to v3.16-rc2 + - LP: #1328587 + - LP: #1319291 + - LP: #1310512 + - LP: #1310512 + - LP: #1305480 + + -- Tim Gardner Thu, 12 Jun 2014 12:26:09 +0000 + +linux (3.15.0-6.11) utopic; urgency=low + + [ Adam Conrad ] + + * Enable building the sata-modules udeb on ppc64el. + - LP: #1323980 + * [Packaging] Set bootloader and loader on ppc64el to grub + + [ Adam Lee ] + + * SAUCE: (no-up) rtlwifi: rtl8723be: disable MSI interrupts mode + - LP: #1310512, #1320070 + + [ Alex Hung ] + + * SAUCE: (no-up) dell-led: add mic mute led interface + - LP: #1308297 + + [ Andy Whitcroft ] + + * [Config] d-i -- add hyperv_keyboard to serial-modules udeb + - LP: #1285434 + * [Config] tools -- enable cpupower on ppc64el + * [Config] ppc64el -- enable perf tools + * [Config] powerpc -- enable perf tools + * [Config] ppc64el -- reduce MAX_ORDER with 64k pages + * [Config] arm64 -- enable tools + - LP: #1326050 + * [Config] switch hyper-keyboard to virtual + - LP: #1325306 + * [Config] fix up Breaks/Replaces on linux-cloud-tools-common to fix + upgrades + * SAUCE: kvm: BIOS disabled kvm support should be a warning + - LP: #1300247 + * SAUCE: nouveau: missing outputs should be warnings + - LP: #1300244 + * [Config] d-i -- add nvme devices to block-modules udeb + - LP: #1303710 + + [ Anton Blanchard ] + + * SAUCE: (no-up) powerpc: 64bit sendfile is capped at 2GB + - LP: #1328230 + + [ Colin Ian King ] + + * SAUCE: intel_pstate: inform user that thermald is worth considering + + [ Dave Chiluk ] + + * [Config] Enable CONFIG_IP_VS_IPV6=y + - LP: #1300739 + + [ Paolo Pisati ] + + * [Config] build vexpress a9 dtb + - LP: #1303657 + + [ Tetsuo Handa ] + + * SAUCE: kthread: Do not leave kthread_create() immediately upon SIGKILL. + + [ Tim Gardner ] + + * Release Tracking Bug + - LP: #1329045 + * [Debian] Treat vdso install as an environment variable + - LP: #1325713 + * [Config] Treat vdso install as an environment variable + - LP: #1325713 + * [config] Set IPMI suppoort default to "y" + * [Config] powerpc -- CONFIG_SCSI_IBMVSCSI=y + * [Config] CONFIG_RT_GROUP_SCHED=n + - LP: #1284731 + * [Config] ppc64el -- switch to 64K system pages + * [Config] CONFIG_MICROCODE_EARLY=y + * [Config] SND_DAVINCI_SOC && SND_AM33XX_SOC_EVM =m + * [Config] armhf: DRM_TILCDC=m + * SAUCE: (no-up) mei_me: Add module parameter to disable MSI + * [Config] arm64: KVM=y + * [Config] armhf: LEDS_TRIGGER_HEARTBEAT=y + * [Config] armhf: generic: disable CPU_IDLE + * [Config] armhf: CPU_FREQ=y + * [Config] Add new mlx modules to d-i + * [Config] Added Muti-Arch support for linux-headers-PKGVER-ABINUM, linux-tools-common, and linux-cloud-tools-common + - LP: #1295112 + * [Config] CONFIG_EXYNOS_ADC=n, CONFIG_HW_RANDOM_EXYNOS=n, CONFIG_MMC_DW_EXYNOS=n, CONFIG_USB_DWC3_EXYNOS=n + - LP: #1294353 + * [Config] CONFIG_ABX500_CORE=y for ppc64el + * [Config] CONFIG_ALX=m for powerpc + * [Config] CONFIG_ACENIC_OMIT_TIGON_I=n for ppc64el + * [Config] CONFIG_ACORN_PARTITION_*=n for ppc64el + * [Config] CONFIG_ANDROID=n for powerpc + * [Config] CONFIG_ASYNC_RAID6_TEST=m for ppc64el + * [Config] CONFIG_BIG_KEYS=y for ppc64el + * [Config] CONFIG_BSD_PROCESS_ACCT=y for ppc64el + * rebase to v3.15 + * [Config] CONFIG_PHY_XGENE=y + * [Config] CONFIG_MLX4_DEBUG=y + - LP: #1328256 + * [Config] CONFIG_POWERNV_CPUFREQ=y for powerpc, ppc64el + - LP: #1324571 + * [Config] CONFIG_BLK_DEV_SR_VENDOR=n for ppc64el + * [Config] CONFIG_CFG80211=m for ppc64el + * [Config] CONFIG_CHARGER_BQ24190=m for powerpc + * [Config] CONFIG_CHARGER_BQ24735=m for powerpc + * [Config] CONFIG_EXPERT=y for ppc64el + * [Config] CONFIG_ATA_SFF=y on ppc64el + * [Config] CONFIG_ATA_GENERIC=y for ppc64el, powerpc + * [Config] CONFIG_CHR_DEV_ST=m for ppc64el + * [Config] CONFIG_CHECKPOINT_RESTORE=y for ppc64el + * [Config] CONFIG_CHELSIO_T1_1G=y for ppc64el + * [Config] CONFIG_CHR_DEV_OSST=m for ppc64el + * [Config] CONFIG_CHR_DEV_SCH=m for ppc64el + * [Config] CONFIG_CPU_FREQ_STAT=y for powerpc + * [Config] CONFIG_DDR=y for ppc64el + * [Config] CONFIG_DEBUG_BUGVERBOSE=y for powerpc + * [Config] CONFIG_E100=m, CONFIG_E1000=m, CONFIG_E1000E=m for ppc64el + * [Config] CONFIG_EZX_PCAP=n for all arches + * [Config] CONFIG_DYNAMIC_DEBUG=y for powerpc + * [Config] CONFIG_ENABLE_MUST_CHECK=n for ppc64el + * [Config] CONFIG_ENABLE_WARN_DEPRECATED=n for ppc64el + * [Config] CONFIG_FB_3DFX=m for all arches + * [Config] CONFIG_FB_MATROX=m for ppc64el + * [Config] CONFIG_FB_RADEON=m for ppc64el + * [Config] CONFIG_FB_SAVAGE_I2C=y for all arches + * [Config] CONFIG_FIREWIRE=m for ppc64el + * [Config] CONFIG_FTR_FIXUP_SELFTEST=n for ppc64el + * [Config] CONFIG_HAMRADIO=y for ppc64el + * [Config] CONFIG_I2C_CHARDEV=m for ppc64el + * [Config] CONFIG_I2C_MUX=m for ppc64el + * [Config] CONFIG_I2C_STUB=m for ppc64el + * [Config] CONFIG_I2O=m for ppc64el + * [Config] CONFIG_INET_XFRM_MODE_BEET=m, CONFIG_INET_XFRM_MODE_TRANSPORT=m, CONFIG_INET_XFRM_MODE_TUNNEL=m for ppc64el + * [Config] CONFIG_INFINIBAND_IPOIB_DEBUG=n, CONFIG_INFINIBAND_MTHCA_DEBUG=n for ppc64el + * [Config] CONFIG_INFINIBAND_NES=m, CONFIG_INFINIBAND_OCRDMA=m, CONFIG_INFINIBAND_QIB=m for ppc64el + * [Config] CONFIG_INPUT_FF_MEMLESS=m for ppc64el + * [Config] CONFIG_INTERVAL_TREE_TEST=m for ppc64el + * [Config] CONFIG_IPACK_BUS=m for ppc64el + * [Config] CONFIG_ISDN=y for ppc64el + * [Config] CONFIG_ISO9660_FS=m for ppc64el + * [Config] CONFIG_KGDB=y for ppc64el + * [Config] CONFIG_KVM_GUEST=y for ppc64el + * [Config] CONFIG_L2TP_V3=y for powerpc + * [Config] CONFIG_MAILBOX=y for ppc64el + * [Config] CONFIG_MD_LINEAR=m, CONFIG_MD_RAID0=m, CONFIG_MD_RAID1=m for ppc64el + * [Config] CONFIG_MEDIA_SUPPORT=m for ppc64el + * [Config] CONFIG_MEMORY=y for ppc64el + * [Config] CONFIG_MEMSTICK=m for ppc64el + * [Config] CONFIG_MFD_SM501_GPIO=n for ppc64el + * [Config] CONFIG_MMC_BLOCK=m for ppc64el + * [Config] CONFIG_MOUSE_PS2=m for ppc64el + * [Config] CONFIG_NET_9P=m for ppc64el + * [Config] CONFIG_MSDOS_FS=m for ppc64el + * [Config] CONFIG_MSI_BITMAP_SELFTEST=n for ppc64el + * [Config] CONFIG_MTD=m for arm64 + * [Config] CONFIG_NETCONSOLE=m for ppc64el + * [Config] CONFIG_NETFILTER_XT_TARGET_NOTRACK=m for ppc64el + * [Config] CONFIG_NET_IPIP=m for ppc64el + * [Config] CONFIG_NET_TEAM=m for all arches + * [Config] CONFIG_NFC=m for ppc64el + * [Config] CONFIG_NL80211_TESTMODE=n for all arches + * [Config] CONFIG_NLS_CODEPAGE_437=y for powerpc + * [Config] CONFIG_NLS_ASCII=m, CONFIG_NLS_ISO8859_1=m, CONFIG_NLS_UTF8=m for ppc64el + * [Config] CONFIG_NOP_USB_XCEIV=m for ppc64el + * [Config] CONFIG_NOTIFIER_ERROR_INJECTION=m for ppc64el + * [Config] CONFIG_OPROFILE=m for ppc64el + * [Config] CONFIG_PARPORT_1284=y for ppc64el + * [Config] CONFIG_PARPORT_AX88796=m, CONFIG_PARPORT_PC_FIFO=y, CONFIG_PARPORT_SERIAL=m for ppc64el + * [Config] CONFIG_8723AU_P2P=n + * [Config] CONFIG_PCI_IOV=y, CONFIG_PCI_PASID=y, CONFIG_PCI_PRI=y, CONFIG_PCI_REALLOC_ENABLE_AUTO=y, CONFIG_PCI_STUB=m for ppc64el + * [Config] CONFIG_PCNET32=m for ppc64el + * [Config] CONFIG_SCSI_DH_EMC=m for ppc64el + * [Config] CONFIG_SCSI_DH_HP_SW=m for ppc64el + * [Config] CONFIG_SCSI_FC_ATTRS=m for ppc64el + * [Config] CONFIG_SCSI_IPR=m for ppc64el + * [Config] CONFIG_SCSI_LOGGING=y for ppc64el + * [Config] CONFIG_SCSI_OSD_INITIATOR=m for ppc64el + * [Config] CONFIG_SCSI_SCAN_ASYNC=y for ppc64el + * [Config] CONFIG_SCSI_SYM53C8XX_2=m for ppc64el + * [Config] CONFIG_XILINX_LL_TEMAC=m for powerpc + * [Config] CONFIG_WQ_POWER_EFFICIENT_DEFAULT=y for ppc64el + * [Config] CONFIG_WLAN=y for arm64 + * [Config] CONFIG_VORTEX=m for ppc64el + * [Config] CONFIG_WIMAX=m for ppc64el + * [Config] CONFIG_WATCHDOG=y for ppc64el + * [Config] CONFIG_VIRT_DRIVERS=y for ppc64el + * [Config] CONFIG_VERSION_SIGNATURE="" for powerpc64-emb + * [Config] CONFIG_UWB=m for ppc64el + * [Config] CONFIG_USB_STORAGE=y + * [Config] CONFIG_SATA_AHCI_PLATFORM=y for armhf + * [Config] CONFIG_HID_RMI=m + * [Config] CONFIG_HVC_DCC=n + - LP: #1303657 + + [ Upstream Kernel Changes ] + + * mm/numa: Remove BUG_ON() in __handle_mm_fault() + - LP: #1323165 + * powerpc/powernv: Add calls to support little endian host + - LP: #1327400 + * HID: rmi: introduce RMI driver for Synaptics touchpads + * HID: rmi: do not stop the device at the end of probe + * HID: rmi: check for the existence of some optional queries before reading query 12 + * HID: rmi: do not fetch more than 16 bytes in a query + * HID: rmi: fix wrong struct field name + * HID: rmi: fix masks for x and w_x data + * HID: rmi: do not handle touchscreens through hid-rmi + * ALSA: pcm: 'BUG:' message unnecessarily triggers kerneloops + - LP: #1305480 + * rebase to v3.15 + + -- Tim Gardner Tue, 03 Jun 2014 17:02:49 +0000 + +linux (3.15.0-5.10) utopic; urgency=low + + [ Tim Gardner ] + + * Release Tracking Bug + - LP: #1325596 + * [Config] CONFIG_POWERNV_CPUFREQ=y for ppc64el + * rebase to v3.15-rc8 + + [ Upstream Kernel Changes ] + + * rebase to v3.15-rc8 + + -- Tim Gardner Mon, 02 Jun 2014 12:59:34 +0000 + +linux (3.15.0-4.9) utopic; urgency=low + + * no change rebuild to fix embeded debhelper. + + -- Andy Whitcroft Thu, 29 May 2014 12:41:58 +0100 + +linux (3.15.0-4.8) utopic; urgency=low + + [ Andy Whitcroft ] + + * Release Tracking Bug + - LP: #1324107 + * [Config] enable SECURITY_APPARMOR_UNCONFINED_INIT + + [ Javier Martinez Canillas ] + + * SAUCE: (no-up) apparmor: fix bug that constantly spam the console + - LP: #1323526 + + [ John Johansen ] + + * SAUCE: (no-up) apparmor: Sync to apparmor3 - alpha6 snapshot + - LP: #1323528 + * SAUCE: (no-up) apparmor: fix apparmor spams log with warning message + - LP: #1308761 + * SAUCE: (no-up) apparmor: fix refcount bug in apparmor pivotroot + - LP: #1308765 + * SAUCE: (no-up): apparmor: fix apparmor refcount bug in apparmor_kill + - LP: #1308764 + * SAUCE: (no-up): apparmor: use custom write_is_locked macro + - LP: #1323530 + + [ Kamal Mostafa ] + + * [Config] add debian/gbp.conf + + [ Tim Gardner ] + + * [Config] CONFIG_SATA_AHCI=m for ppc64el + - LP: #1323980 + + -- Andy Whitcroft Wed, 28 May 2014 12:47:17 +0100 + +linux (3.15.0-3.7) utopic; urgency=low + + [ Tim Gardner ] + + * Release Tracking Bug + - LP: #1323189 + + [ Andy Whitcroft ] + + * [Config] autopkgtest -- need fakeroot for tests + + [ Upstream Kernel Changes ] + + * rebase to v3.15-rc7 + + -- Tim Gardner Mon, 26 May 2014 08:12:50 +0200 + +linux (3.15.0-2.6) utopic; urgency=low + + [ Andy Whitcroft ] + + * [Config] remove the kernel-image firmware list on clean + + [ Martin Pitt ] + + * [Config] autopkgtest -- switch to significantly faster rebuild + + [ Stefan Bader ] + + * [Config]: Add missing modules to inclusion list + + [ Tim Gardner ] + + * [debian] Dynamically generate the kernel-image udebs firmware list + * [d-i] firmware/kernel-image is generated + * rebase to v3.15-rc6 + * Release Tracking Bug + - LP: #1322251 + + [ Upstream Kernel Changes ] + + * rebase to v3.15-rc6 + - LP: #1297581 + + -- Tim Gardner Wed, 21 May 2014 10:51:29 -0700 + +linux (3.15.0-1.5) utopic; urgency=low + + [ Tim Gardner ] + + * [Config] Add apm-mustang.dtb to kernel-image udeb + + -- Tim Gardner Mon, 19 May 2014 14:47:42 -0700 + +linux (3.15.0-1.4) utopic; urgency=low + + [ Andy Whitcroft ] + + * Revert "SAUCE: (no-up) hv -- bodge hv_vss_daemon so it can use the + local linux/hyperv.h" + * Revert "SAUCE: (no-up) hv -- bodge hv_kvp_daemon so it can use the + local linux/hyperv.h" + * [Packaging] tools -- hv tools build correctly against the built headers + * [Packaging] cloud-tools -- add the hv_fcopy_daemon to the package + * cloud-tools -- pull in init scripts for Hyper-V daemons + * cloud-tools -- detect Hyper-V VM to avoid starting + * cloud-tools -- update IF_NAME to DEVICE in hv_* scripts + - LP: #1295401 + * [Config] cloud-tools: reenable cloud-tools + + -- Andy Whitcroft Sun, 18 May 2014 19:21:04 +0100 + +linux (3.15.0-1.3) utopic; urgency=low + + [ Andy Whitcroft ] + + * [Packaging] ppc64el is a powerpc kernel arch and needs its quirks + - LP: #1318848 + + [ Ben Collins ] + + * [Config] Switch to grub-ieee1275 as recommended on book3e systems + - LP: #1318629 + + [ Tim Gardner ] + + * [Config] CONFIG_FSL_PAMU=n + - LP: #1311738 + * Release Tracking Bug + - LP: #1320239 + + -- Tim Gardner Fri, 16 May 2014 07:37:07 -0600 + +linux (3.15.0-1.2) utopic; urgency=low + + [ Tim Gardner ] + + * Release Tracking Bug + - LP: #1318171 + * Add rpcsec_gss_krb5 to generic inclusion list + - LP: #769527 + * rebase to v3.15-rc5 + + [ Upstream Kernel Changes ] + + * rebase to v3.15-rc5 + - LP: #1297581 + + -- Tim Gardner Tue, 06 May 2014 15:20:10 -0500 + +linux (3.15.0-0.1) utopic; urgency=low + + [ Upstream Kernel Changes ] + + * rebase to v3.15-rc4 + - LP: #1297581 + - LP: #1297581 + - LP: #1305133 + - LP: #1297581 + - LP: #1297581 + - LP: #871808 + - LP: #1260303 + - LP: #1268468 + - LP: #1248116 + - LP: #1211920 + - LP: #1259790 + - LP: #1259437 + - LP: #1259435 + - LP: #1268468 + + -- Tim Gardner Fri, 07 Feb 2014 09:35:13 -0700 + +linux (3.15.0-0.0) utopic; urgency=low + + * Initial version for 3.15. + + -- Andy Whitcroft Fri, 02 May 2014 15:06:39 +0100 + +linux (3.13.0-8.27) trusty; urgency=low + + [ John Johansen ] + + * SAUCE: Add config option to disable new apparmor 3 semantics + -LP: #1270215 + + [ Tim Gardner ] + + * [debian] Fix indep_hdrs_pkg_name + - LP: #1134441 + * Update lttng to 00808267d3ba7cdcddfed7bec7e62a40463c1307 Version 2.4.0-rc3 + * Enabled lttng build + * Don't build lttng for armhf + lttng hates gcc-4.8 for armhf + * Release Tracking Bug + - LP: #1277309 + + [ Upstream Kernel Changes ] + + * rebase to v3.13.2 + - LP: #1260303 + - LP: #1260303 + - LP: #1268468 + + -- Tim Gardner Thu, 06 Feb 2014 09:25:51 -0700 + +linux (3.13.0-7.26) trusty; urgency=low + + [ John Johansen ] + + * SAUCE: apparmor: fix uninitialized lsm_audit membe + - LP: #1268727 + * Add config option to optionally enable new apparmor 3 semantics + + [ Tim Gardner ] + + * [Config] Add lowlatency to getabis + * [Config] CONFIG_SECURITY_APPARMOR_AA3_SEMANTICS=y + - LP: #1270215 + * Release Tracking Bug + - LP: #1276810 + + [ Upstream Kernel Changes ] + + * x86, x32: Correct invalid use of user timespec in the kernel + - LP: #1274349 + - CVE-2014-0038 + + -- Tim Gardner Wed, 05 Feb 2014 15:49:44 -0500 + +linux (3.13.0-7.25) trusty; urgency=low + + [ Andy Whitcroft ] + + * Revert "SAUCE: fix fmd headers" + * SAUCE: fix fmd headers + + -- Andy Whitcroft Tue, 04 Feb 2014 09:36:09 +0000 + +linux (3.13.0-7.24) trusty; urgency=low + + [ Stefan Bader ] + + * [Config] Make vmwgfx driver enable the framebuffer device + + [ Tim Gardner ] + + * rebase to v3.13.1 + * [Config] CONFIG_NFS_FS=m for ppc64el + * [Config] CONFIG_X86_SYSFB=n + https://lists.ubuntu.com/archives/kernel-team/2014-February/038166.html + * Release Tracking Bug + - LP: #1275898 + + [ Upstream Kernel Changes ] + + * i2c: piix4: Add support for AMD ML and CZ SMBus changes + - LP: #1272525 + * i2c: piix4: Use different message for AMD Auxiliary SMBus Controller + - LP: #1272525 + * mm: ignore VM_SOFTDIRTY on VMA merging + - LP: #1274917 + * drm/radeon: disable dpm on BTC + - LP: #1266984 + + [ Upstream Kernel Changes ] + + * rebase to v3.13.1 + + -- Tim Gardner Thu, 30 Jan 2014 15:24:48 +0000 + +linux (3.13.0-6.23) trusty; urgency=low + + [ Andy Whitcroft ] + + * [Config] fix up architecture for linux-tools + + -- Andy Whitcroft Thu, 30 Jan 2014 09:00:41 +0000 + +linux (3.13.0-6.22) trusty; urgency=low + + [ Andy Whitcroft ] + + * [Packaging] limit linux-udebs- to matching arch + * [Config] powerpc -- disable perf to fix FTBFS + * [Config] ppc64el -- fix up missing udebs + + -- Andy Whitcroft Wed, 29 Jan 2014 16:00:28 +0000 + +linux (3.13.0-6.21) trusty; urgency=low + + [ Andy Fleming ] + + * SAUCE: net: Add support for handling queueing in hardware + * SAUCE: of_mdio: Add of_phy_attach function + * SAUCE: phylib: Add generic 10G driver + * SAUCE: phylib: Support attaching to gen10g_driver + * SAUCE: phylib: Add Clause 45 read/write functions + + [ Andy Whitcroft ] + + * SAUCE: fix fmd headers + * [Packaging] lowlatency -- merge out of tree flavours + * SAUCE: allow IRQs to be irq-threaded by default via config + * [Config]: enable CONFIG_IRQ_FORCED_THREADING_DEFAULT for lowlatency + * [Config] powerpc -- fix up Build-depends: + * Release Tracking Bug + - LP: #1273747 + + [ Ben Collins ] + + * SAUCE: PPC: PCI: Fix pcibios_io_space_offset() so it works for 32-bit + ptr/64-bit rsrcs + * SAUCE: Revert "phy: vitesse make vsc824x_add_skew static" + * SAUCE: Fixup freescale usb phy driver to work on ppc64 + * SAUCE: xgmac_mdio: Silence read errors + * SAUCE: Provide booke stub for kvmppc_is_bigendian() + * SAUCE: Fix stack overflow on ppc32 + * SAUCE: Use resource_size_t instead of long for PCI resource address + * SAUCE: net/phy: Export function for use by dpaa_eth + * [Packaging] powerpc -- merge out of tree powerpc arch + + [ Bjorn Helgaas ] + + * SAUCE: Revert "EISA: Log device resources in dmesg" + - LP: #1251816 + * SAUCE: Revert "EISA: Initialize device before its resources" + - LP: #1251816 + + [ Emil Medve ] + + * SAUCE: phylib: Minimum hack to get the generic 10G PHY driver to work + with 10G "fixed-link"s + + [ Kumar Gala ] + + * SAUCE: fsl_qbman: Add drivers for Freescale DPAA Qman & Bman + * SAUCE: fsl_pme2: Add support for DPAA PME + * SAUCE: fmd: FMD14 integration + * SAUCE: dpaa_eth: Ethernet driver for Freescale QorIQ DPA Architecture + * SAUCE: powerpc/85xx: Add DPAA/networking support for CoreNet + + [ Madalin Bucur ] + + * SAUCE: net/flow: remove sleeping and deferral mechanism from + flow_cache_flush + * SAUCE: net/phy: abort genphy_read_status when link changes during speed + and duplex reading + + [ Stefan Bader ] + + * [Config] move some VMWare related modules into main package + - LP: #1271669 + + [ Tim Gardner ] + + * [Config] Add r815x to nic-modules + - LP: #1273735 + * [Config] CONFIG_FRAMEBUFFER_CONSOLE_ROTATION=y + - LP: #239479 + + [ Upstream Kernel Changes ] + + * mmc: sdhci-pci: break out definitions to header file + - LP: #1239938 + * mmc: sdhci-pci: add support of O2Micro/BayHubTech SD hosts + - LP: #1239938 + * powerpc/book3e: rename interrupt_end_book3e with __end_interrupts + * powerpc/book3e: support CONFIG_RELOCATABLE + * book3e/kexec/kdump: enable kexec for kernel + * book3e/kexec/kdump: create a 1:1 TLB mapping + * book3e/kexec/kdump: introduce a kexec kernel flag + * book3e/kexec/kdump: implement ppc64 kexec specfic + * book3e/kexec/kdump: redefine VIRT_PHYS_OFFSET + * book3e/kexec/kdump: recover "r4 = 0" to create the initial TLB + + -- Andy Whitcroft Tue, 28 Jan 2014 22:59:46 +0000 + +linux (3.13.0-5.20) trusty; urgency=low + + [ Andy Whitcroft ] + + * [Packaging] tools -- do not make symlinks when not making packages + * [Packaging] tools -- tidy up control.stub.in ordering + * [Packaging] tools -- tools-common is shared and not conditional + * rebase to v3.13 + + [ Dirk Brandewie ] + + * SAUCE: intel_pstate: Add setting voltage value for baytrail P states. + + [ KY Srinivasan ] + + * SAUCE: Drivers: hv: vmbus: Specify the target CPU that should receive + notification + + [ Upstream Kernel Changes ] + + * rebase to v3.13 + - LP: #1270603 + + -- Andy Whitcroft Fri, 17 Jan 2014 15:45:31 +0000 + +linux (3.13.0-4.19) trusty; urgency=low + + [ Andy Whitcroft ] + + * [Config] libunwind8-dev is now available for ppc64el + * [Packaging] tools -- make cpupower optional + * [Packaging] tools -- enable correctly for x86 + + [ Tim Gardner ] + + * Release Tracking Bug + - LP: #1269872 + + [ Upstream Kernel Changes ] + + * SAUCE: ARM: OMAP: hwmod: Add SYSC offsets for AES IP + * SAUCE: ARM: OMAP4: hwmod: Add hwmod data for AES IP + * SAUCE: OMAP: AM33xx: hwmod: Correct AES module SYSC type + * SAUCE: crypto: omap-aes: add error check for pm_runtime_get_sync + + [ Upstream Kernel Changes ] + + * rebase to 85ce70fdf48aa290b4845311c2dd815d7f8d1fa5 + + -- Tim Gardner Wed, 15 Jan 2014 13:23:05 +0000 + +linux (3.13.0-3.18) trusty; urgency=low + + [ Andy Whitcroft ] + + * rebase to v3.13-rc8 + * [Packaging] efi -- allow EFI signatures on any arch + + [ Tim Gardner ] + + * [Config] Fix vcs-git path + * Release Tracking Bug + - LP: #1268683 + + [ Upstream Kernel Changes ] + + * rebase to v3.13-rc8 + + -- Andy Whitcroft Sun, 12 Jan 2014 11:58:01 +0000 + +linux (3.13.0-2.17) trusty; urgency=low + + [ Andy Whitcroft ] + + * Release Tracking Bug + - LP: #1267809 + * [Config] apply Platform support>>CPUIdle driver>>CPU Idle config + defaults + * [Config] apply Platform support>>CPU Frequency scaling config defaults + * [Config] CONFIG_PARIDE_EPATC8=y + * [Config] apply Device Drivers >> Broadcom specific AMBA config defaults + * [Config] apply Bus options >> PCI support >> RapidIO support >> RapidIO + Switch drivers config defaults + * [Config] apply Cryptographic API config defaults + * [Config] apply Device Drivers >> Common Clock Framework config defaults + * [Config] apply Device Drivers >> Distributed Switch Architecture + drivers config defaults + * [Config] apply Device Drivers >> Graphics support >> Backlight & LCD + device support config defaults + * [Config] apply Device Drivers >> Graphics support >> Support for frame + buffer devices >> Bootup logo config defaults + * annotations -- update in tree annotations + * [Config] apply Bus options >> PCI support >> RapidIO support config + defaults + * [Config] CONFIG_POWER_AVS=y CONFIG_RESET_CONTROLLER=y + * [Config] apply Device Drivers >> 1-wire Bus Masters config defaults + * [Config] apply CAN Device Drivers >> Platform CAN drivers with Netlink + support config defaults + * [Config] apply Device Drivers >> Character devices >> Serial drivers + config defaults + * [Config] apply Device Drivers >> Generic Thermal sysfs driver config + defaults + * [Config] apply Device Drivers >> Character devices >> TPM Hardware + Support config defaults + * [Config] apply Device Drivers >> Character devices config defaults + * [Config] apply Device Drivers >> HID support >> USB HID support >> USB + HID transport layer config defaults + * [Config] apply Device Drivers >> HID support >> HID bus support config + defaults + * [Config] apply Device Drivers >> HID support >> USB HID support config + defaults + * annotations -- update in tree annotations + * [Config] apply Device Drivers >> GPIO Support config defaults + * [Config] update configs for apparmour update + + [ John Johansen ] + + * SAUCE: (no-up) apparmor: Sync to apparmor 3 - alpha 4 snapshot + * SAUCE: apparmor: fix unix domain sockets to be mediated on connection + - LP: #1208988 + * SAUCE: apparmor: allocate path lookup buffers during init + - LP: #1208988 + * SAUCE: (no-up) apparmor: Fix tasks not subject to, reloaded policy + - LP: #1236455 + + [ Tim Gardner ] + + * Revert "[Debian] getabis: Preface module with package name" + * [Config] Added ppc64el to getabis + * [packaging] Bump ABI for every new release + + -- Andy Whitcroft Fri, 10 Jan 2014 11:48:39 +0000 + +linux (3.13.0-1.16) trusty; urgency=low + + * First 3.13 upload. + * Release tracker + - LP: #1266852 + + -- Tim Gardner Tue, 07 Jan 2014 09:21:26 -0700 + +linux (3.13.0-0.15) trusty; urgency=low + + [ Tim Gardner ] + + * rebase to v3.13-rc7 + + [ Upstream Kernel Changes ] + + * rebase to v3.13-rc7 + + -- Tim Gardner Sun, 05 Jan 2014 06:13:33 -0700 + +linux (3.13.0-0.14) trusty; urgency=low + + [ Andy Whitcroft ] + + * rebase to 7a262d2ed9fa42fad8c4f243f8025580b58cf2f6 + + [ Tim Gardner ] + + * Remove ubuntu/dm-raid4-5 in favor of CONFIG_MD_RAID456 + * Update lttng to Version 2.4.0-rc2 + * lttng: Disabled trace_kvm_async_pf_completed + * [Config] CONFIG_IMA=y + - LP: #1244627 + + [ Upstream Kernel Changes ] + + * rebase to 7a262d2ed9fa42fad8c4f243f8025580b58cf2f6 + + -- Tim Gardner Thu, 02 Jan 2014 12:57:13 -0700 + +linux (3.13.0-0.13) trusty; urgency=low + + [ Andy Whitcroft ] + + * ubuntu: aufs3 -- (no-up) aufs3-base.patch + * ubuntu: aufs3 -- (no-up) aufs3-mmap.patch + * ubuntu: aufs3 -- (no-up) aufs3-standalone.patch + * ubuntu: AUFS (no-squash): basic framework and update machinary + * ubuntu: AUFS -- update to 7b136a27b021da9010d8b6c101939dd298e46be7 + * ubuntu: aufs3 -- enable + * ubuntu: aufs3 -- update configs + + -- Andy Whitcroft Thu, 02 Jan 2014 09:41:02 +0000 + +linux (3.13.0-0.12) trusty; urgency=low + + [ Upstream Kernel Changes ] + + * rebase to v3.13-rc6 + + -- Tim Gardner Tue, 31 Dec 2013 06:16:03 -0700 + +linux (3.13.0-0.11) trusty; urgency=low + + [ Andy Whitcroft ] + + * SAUCE: suspicious unlocked ->status reading and writing in ipc/sem.c + * [Config] ppc64el -- initial defconfig based -generic flavour + * [Config] initial defconfig for ppc64el + * [Config] ubuntuise ppc64el config + * [Config] ubuntuise ppc64el config part 2 + * [Config] d-i -- update empty udebs list + * [Config] ppc64el -- split extras package + + [ Anton Blanchard ] + + * SAUCE: KVM: PPC: Book3S HV: Add little-endian guest support + + [ Benjamin Herrenschmidt ] + + * SAUCE: powerpc/powernv: Add calls to support little endian + + [ Cédric Le Goater ] + + * SAUCE: KVM: PPC: Book3S: add helper routine to load guest instructions + * SAUCE: KVM: PPC: Book3S: add helper routines to detect endian order + * SAUCE: KVM: PPC: Book3S: MMIO emulation support for little endian + guests + + [ Paul E. McKenney ] + + * SAUCE: powerpc: Make 64-bit non-VMX copy_tofrom_user() bi-endian + + -- Andy Whitcroft Fri, 27 Dec 2013 16:48:55 +0000 + +linux (3.13.0-0.10) trusty; urgency=low + + [ Andy Whitcroft ] + + * rebase to v3.13-rc5 + * [Config] updateconfigs following rebase to v3.13-rc5 + + [ Upstream Kernel Changes ] + + * rebase to v3.13-rc5 + - LP: #1260303 + - LP: #1260303 + - LP: #1260225 + + -- Andy Whitcroft Mon, 23 Dec 2013 12:48:28 +0000 + +linux (3.13.0-0.9) trusty; urgency=low + + [ Andy Whitcroft ] + + * [Config] d-i -- allow missing firmware + + -- Andy Whitcroft Fri, 20 Dec 2013 17:57:06 +0000 + +linux (3.13.0-0.8) trusty; urgency=low + + [ Andy Whitcroft ] + + * [Config] annotations -- first pass over entire config + * [Config] drop libunwind8-dev from Build-Depends for ppc64el + + [ Tim Gardner ] + + * [Config] Add arm64 device tree files + - LP: #1262901 + + -- Andy Whitcroft Thu, 19 Dec 2013 18:36:43 +0000 + +linux (3.13.0-0.7) trusty; urgency=low + + [ Rajesh B Prathipati ] + + * SAUCE: powerpc: Make unaligned accesses endian-safe for powerpc + + [ Tim Gardner ] + + * [Config] CONFIG_REGULATOR_S2MPS11=n for FTBS + + [ Upstream Kernel Changes ] + + * rebase to v3.13-rc4 + - LP: #1259790 + - LP: #1259437 + - LP: #1259435 + + -- Tim Gardner Fri, 13 Dec 2013 07:56:34 -0700 + +linux (3.13.0-0.6) trusty; urgency=low + + [ Paolo Pisati ] + + * [Config] armhf: arm64: VIRTIO_[BLK|MMIO|NET|CONSOLE|BALLOON]=y + * [Config] i386: amd64: VIRTIO_CONSOLE=y + + [ Tim Gardner ] + + * [Config] CONFIG_TRANSPARENT_HUGEPAGE_ALWAYS=y + + -- Tim Gardner Sun, 08 Dec 2013 09:22:01 -0700 + +linux (3.13.0-0.5) trusty; urgency=low + + [ Andy Whitcroft ] + + * correct bug listing for v3.13-rc2 rebase + * [Config] ppc64el -- create linux-libc-dev + * [Debian] Improve tools version message + - LP: #1257715 + + [ Serge Hallyn ] + + * SAUCE: fork: Allow CLONE_PARENT after setns(CLONE_NEWPID)] + - LP: #1248590 + * SAUCE: vfs: Fix a regression in mounting proc + + [ Tim Gardner ] + + * [Config] Build-in ohci-pci + - LP: #1244176 + * Rebase to v3.13-rc3 + + [ Upstream Kernel Changes ] + + * Revert "Revert "fork: unify and tighten up CLONE_NEWUSER/CLONE_NEWPID + checks"" + - LP: #1248590 + + [ Upstream Kernel Changes ] + + * rebase to v3.13-rc3 + - LP: #1256840 + - LP: #1256212 + + -- Tim Gardner Sat, 07 Dec 2013 07:55:39 -0700 + +linux (3.13.0-0.4) trusty; urgency=low + + [ Tim Gardner ] + + * Rebase to v3.13-rc2 + + [ Upstream Kernel Changes ] + + * rebase to v3.13-rc2 + + -- Tim Gardner Fri, 29 Nov 2013 23:54:05 -0500 + +linux (3.13.0-0.3) trusty; urgency=low + + [ Andy Whitcroft ] + + * Revert "SAUCE: Fix DocBook FTBS" + + [ Tim Gardner ] + + * [Debian] Re-sign modules after debug objcopy + - LP: #1253155 + * [Config] CONFIG_EXT4_USE_FOR_EXT23=y + + [ Upstream Kernel Changes ] + + * doc: fix generation of device-drivers + * rebase to b975dc3689fc6a3718ad288ce080924f9cb7e176 + + -- Tim Gardner Tue, 26 Nov 2013 12:24:42 -0700 + +linux (3.13.0-0.2) trusty; urgency=low + + [ Tim Gardner ] + + * SAUCE: Fix DocBook FTBS + + -- Tim Gardner Mon, 25 Nov 2013 13:24:15 -0700 + +linux (3.13.0-0.1) trusty; urgency=low + + [ Upstream Kernel Changes ] + + * rebase to 7e3528c3660a2e8602abc7858b0994d611f74bc3 + + -- Tim Gardner Tue, 12 Nov 2013 07:28:53 -0700 + +linux (3.13.0-0.0) trusty; urgency=low + + * Major release bump. + + -- Andy Whitcroft Tue, 12 Nov 2013 21:37:52 +0000 + +linux (3.12.0-2.7) trusty; urgency=low + + * Fixed armhf ABI build failure. + * Release tracker + - LP: #1249477 + + -- Tim Gardner Fri, 08 Nov 2013 16:22:45 -0700 + +linux (3.12.0-2.6) trusty; urgency=low + + [ Joseph Salisbury ] + + * SAUCE: tg3: Add support for new 57786 device id. + - LP: #1242610 + + [ Tim Gardner ] + + * [Config] CONFIG_OABI_COMPAT=n + * [Config] add the wandboard to shipped dtb + - LP: #1249421 + * Release tracker + - LP: #1249477 + + -- Tim Gardner Fri, 08 Nov 2013 12:23:18 -0700 + +linux (3.12.0-2.5) trusty; urgency=low + + [ Andy Whitcroft ] + + * rebase to mainline v3.12 + * [Config] updateconfigs following rebase to v3.12 + * postinst -- improve relative symlink detection with missing files + - LP: #1248053 + * postinst -- fix unchanged link detection + * [Config] update configs following addition of apparmor fixes + + [ Anthony Wong ] + + * SAUCE: Work around broken ACPI backlight on Dell Inspiron 5537 + - LP: #1231305 + + [ John Johansen ] + + * SAUCE: (no-up) apparmor: Sync to apparmor 3 - alpha 4 snapshot + * SAUCE: apparmor: fix unix domain sockets to be mediated on connection + - LP: #1208988 + * SAUCE: apparmor: allocate path lookup buffers during init + - LP: #1208988 + + [ Tim Gardner ] + + * [Config] Remove superfluous ubuntu/lttng-modules + + [ Upstream Kernel Changes ] + + * Revert "fork: unify and tighten up CLONE_NEWUSER/CLONE_NEWPID checks" + - LP: #1248590 + + [ Upstream Kernel Changes ] + + * rebase to v3.12 + - LP: #1222850 + + [ Adam Conrad ] + * etc/getabis: Fetch arm64/generic abis as well + + -- Andy Whitcroft Wed, 06 Nov 2013 21:00:21 +0000 + +linux (3.12.0-1.3) trusty; urgency=low + + [ Andy Whitcroft ] + + * [Config] arm64 -- add arch to the configuration handlers + * [Config] arm64 -- add generic flavour + * [Config] arm64 -- default config + * [Config] arm64 -- fix up various FTBFS config options + * SAUCE: arm64: export __copy_in_user to modules + * [Config] arm64 -- disable ABI/module checks + * [Config] arm64 -- enforcer -- add arm64 to the enforcer + * [Config] arm64 -- enable udebs for arm64 + + [ Colin Watson ] + + * [Config] Clean up various udeb Provides + + [ Paolo Pisati ] + + * [Config] AHCI_IMX=y + * [Config] build imx*-wandboard dtbs + + [ Serge Hallyn ] + + * SAUCE: device_cgroup: remove can_attach + + [ Tim Gardner ] + + * rebase to v3.12-rc7 + * SAUCE: KVM: Fix modprobe failure for kvm_intel/kvm_amd + * Release tracker + - LP: #1245932 + + [ Upstream Kernel Changes ] + + * rebase to v3.12-rc7 + - LP: #1180881 + - LP: #1180881 + - LP: #1217957 + + -- Tim Gardner Sun, 27 Oct 2013 22:08:55 -0600 + +linux (3.12.0-0.2) trusty; urgency=low + + [ Andy Whitcroft ] + + * Revert "SAUCE: (no-up) scsi: hyper-v storage -- mark as preferring READ + CAPACITY (16) at SPC-2" + * Revert "SAUCE: (no-up) scsi: hyper-v storage -- mark as VPD capable at + SPC-2" + * Revert "SAUCE: (no-up) scsi: add scsi device flag to request READ + CAPACITY (16) be preferred" + * Revert "SAUCE: (no-up) scsi: add scsi device flag to request VPD pages + be used at SPC-2" + * Revert "overlayfs: Update to v19" + * Revert "ubuntu: overlayfs v18 -- -- overlayfs: implement show_options" + * Revert "ubuntu: overlayfs v18 -- -- overlayfs: add statfs support" + * Revert "ubuntu: overlayfs v18 -- -- overlay filesystem" + * Revert "ubuntu: overlayfs v18 -- -- vfs: introduce + clone_private_mount()" + * Revert "ubuntu: overlayfs v18 -- -- vfs: export do_splice_direct() to + modules" + * Revert "ubuntu: overlayfs v18 -- -- overlay: overlay filesystem + documentation" + * ubuntu: overlayfs v20 -- overlayfs: add statfs support + * [Config] fix linux-libc-dev generation for arm64 + * [Config] fix linux-libc-dev generation for x32 + * [Config] add linux-libc-dev generation for ppc64el + + [ Erez Zadok ] + + * ubuntu: overlayfs v20 -- overlayfs: implement show_options + + [ Miklos Szeredi ] + + * ubuntu: overlayfs v20 -- vfs: add i_op->dentry_open() + * ubuntu: overlayfs v20 -- vfs: export do_splice_direct() to modules + * ubuntu: overlayfs v20 -- vfs: export __inode_permission() to modules + * ubuntu: overlayfs v20 -- vfs: introduce clone_private_mount() + * ubuntu: overlayfs v20 -- overlay filesystem + * ubuntu: overlayfs v20 -- fs: limit filesystem stacking depth + + [ Neil Brown ] + + * ubuntu: overlayfs v20 -- overlay: overlay filesystem documentation + + [ Paolo Pisati ] + + * [Config] arm: VIRTIO_[BLK|NET|MMIO]=y + + [ Seth Forshee ] + + * SAUCE: (no-up) ACPI: Disable Windows 8 compatibility for some Lenovo + ThinkPads + - LP: #1183856 + + [ Tim Gardner ] + + * [Config] CONFIG_CRYPTO_CRCT10DIF=y, CONFIG_CRYPTO_CRCT10DIF_PCLMUL=m + * rebase to v3.12-rc2 + * updateconfigs + * [Config] disable CONFIG_FB_VESA enforcer check + * [Config] Disable lttng for FTBS + * rebase to v3.12-rc3 + * rebase to v3.12-rc4 + * [Config] CONFIG_ANDROID=n + - LP: #1235161 + * [Config] CONFIG_L2TP_V3=y + - LP: #1235914 + * [Config] CONFIG_USB_OTG=n for all arches + * Release tracker + - LP: #1242811 + + [ Upstream Kernel Changes ] + + * scsi: hyper-v storsvc switch up to SPC-3 + + * rebase to v3.12-rc6 + - LP: #1235977 + - LP: #1235523 + - LP: #1239392 + - LP: #1227491 + + * rebase to v3.12-rc3 + - LP: #1231931 + + * rebase to v3.12-rc2 + - LP: #1213820 + - LP: #1213055 + - LP: #1198030 + + -- Tim Gardner Mon, 23 Sep 2013 07:41:07 -0600 + +linux (3.11.0-8.15) saucy; urgency=low + + [ Tim Gardner ] + + * Release tracker + - LP: #1227969 + + * Update lttng + Updated to git://git.lttng.org/lttng-modules.git 9998f5216f4641a79e158135 + Version 2.3.0+ + + [ Upstream Kernel Changes ] + + * igb: Add additional get_phy_id call for i354 devices + - LP: #1219619 + * igb: Read flow control for i350 from correct EEPROM section + - LP: #1219619 + * timekeeping: Fix HRTICK related deadlock from ntp lock changes + Required for lttng update. + + -- Tim Gardner Thu, 19 Sep 2013 07:41:49 -0600 + +linux (3.11.0-7.14) saucy; urgency=low + + [ Andy Whitcroft ] + + * [Packaging] sort out linux-tools naming + - LP: #1205284 + * [Packaging] linux-tools: switch to common generic version helper + + [ Paolo Pisati ] + + * [Config] highbank: ecx1000: CPU_IDLE causes instabilities, disable it + + [ Tim Gardner ] + + * Release tracker + - LP: #1226160 + + [ Tony Lindgren ] + + * SAUCE: ARM: dts: Fix muxing and regulator for wl12xx on the SDIO bus + for pandaboard + + [ Upstream Kernel Changes ] + + * USB: handle LPM errors during device suspend correctly + - LP: #1011415 + * usb: don't check pm qos NO_POWER_OFF flag in usb_port_suspend() + - LP: #1011415 + * usb: Don't fail port power resume on device disconnect. + - LP: #1011415 + + [ Upstream Kernel Changes ] + + * rebase to v3.11.1 + + -- Tim Gardner Wed, 11 Sep 2013 07:30:17 -0600 + +linux (3.11.0-7.13) saucy; urgency=low + + * Release tracker + - LP: #1223545 + + [ Andy Whitcroft ] + + * SAUCE: (no-up) scsi: add scsi device flag to request VPD pages be used at SPC-2 + - LP: #1223499 + * SAUCE: (no-up) scsi: add scsi device flag to request READ CAPACITY (16) be preferred + - LP: #1223499 + * SAUCE: (no-up) scsi: hyper-v storage -- mark as VPD capable at SPC-2 + - LP: #1223499 + * SAUCE: (no-up) scsi: hyper-v storage -- mark as preferring READ CAPACITY (16) at SPC-2 + - LP: #1223499 + + [ Maximiliano Curia ] + + * SAUCE: (no-up) Only let characters through when there are active readers. + - LP: #1208740 + + [ Tim Gardner ] + + * [Debian] getabis: Commit new ABI directory, remove the old + * [Config] CONFIG_EFIVAR_FS=y + - LP: #1223195 + * [Config] CONFIG_EFI_VARS_PSTORE=m, + CONFIG_EFI_VARS_PSTORE_DEFAULT_DISABLE=n + * SAUCE: (no-up) USB: input: cm109.c: Convert high volume dev_err() to dev_err_ratelimited() + - LP: #1222850 + + [ Upstream Kernel Changes ] + + * Intel xhci: refactor EHCI/xHCI port switching + - LP: #1210858 + + -- Tim Gardner Tue, 10 Sep 2013 09:00:19 -0600 + +linux (3.11.0-6.12) saucy; urgency=low + + * Release tracker + - LP: #1222893 + + [ Andy Whitcroft ] + + * Revert "ubuntu: (no-squash) AUFS3 -- aufs3-standalone.patch" + * Revert "ubuntu: (no-squash) AUFS3 -- aufs3-base.patch" + * ubuntu: (no-squash) AUFS3 -- aufs3-base.patch + * ubuntu: (no-squash) AUFS3 -- aufs3-standalone.patch + - LP: #1222407 + + [ Paolo Pisati ] + + * [Config] restore mmc boot on panda + + [ Tyler Hicks ] + + * SAUCE: apparmor: Use shash crypto API interface for profile hashes + - LP: #1216294 + + [ Upstream Kernel Changes ] + + * net: calxedaxgmac: remove NETIF_F_FRAGLIST setting + * net: calxedaxgmac: read correct field in xgmac_desc_get_buf_len + * net: calxedaxgmac: fix race between xgmac_tx_complete and xgmac_tx_err + * net: calxedaxgmac: fix possible skb free before tx complete + * net: calxedaxgmac: update ring buffer tx_head after barriers + * net: calxedaxgmac: fix race with tx queue stop/wake + * net: calxedaxgmac: enable interrupts after napi_enable + * net: calxedaxgmac: fix various errors in xgmac_set_rx_mode + * net: calxedaxgmac: remove some unused statistic counters + * net: calxedaxgmac: fix rx DMA mapping API size mismatches + * net: calxedaxgmac: fix xgmac_xmit DMA mapping error handling + * mfd: rtsx: Read vendor setting from config space + - LP: #1201698 + + -- Tim Gardner Mon, 09 Sep 2013 07:21:06 -0600 + +linux (3.11.0-5.11) saucy; urgency=low + + * Release tracker + - LP: #1221886 + + [ Adam Lee ] + + * SAUCE: Bluetooth: Add support for 04ca:2007 + - LP: #1153448 + * SAUCE: Bluetooth: Add support for 105b:e065 + - LP: #1161261 + + [ Gavin Guo ] + + * SAUCE: Bluetooth: Add support for Broadcom 413c:8143 + - LP: #1166113 + + [ Upstream Kernel Changes ] + + * igb: Reset the link when EEE setting changed + - LP: #1219619 + * igb: Read register for latch_on without return value + - LP: #1219619 + * igb: Added rcu_lock to avoid race + - LP: #1219619 + * igb: don't allow SR-IOV without MSI-X + - LP: #1219619 + * igb: Update MTU so that it is always at least a standard frame size + - LP: #1219619 + * igb: Refactor of init_nvm_params + - LP: #1219619 + * igb: Refactor NVM read functions to accommodate devices with no flash + - LP: #1219619 + * igb: Add device support for flashless SKU of i210 device + - LP: #1219619 + * igb: Fix get_fw_version function for all parts + - LP: #1219619 + * igb: Add macro for size of RETA indirection table + - LP: #1219619 + * igb: Expose RSS indirection table for ethtool + - LP: #1219619 + * igb: Don't look for a PBA in the iNVM when flashless + - LP: #1219619 + * igb: Implementation of 1-sec delay for i210 devices + - LP: #1219619 + * igb: New PHY_ID for i354 device + - LP: #1219619 + * igb: M88E1543 PHY downshift implementation + - LP: #1219619 + * igb: No PHPM support in i354 devices + - LP: #1219619 + * igb: Support to get 2_5G link status for appropriate media type + - LP: #1219619 + * igb: Get speed and duplex for 1G non_copper devices + - LP: #1219619 + * igb: Implementation to report advertised/supported link on i354 devices + - LP: #1219619 + * igb: Update version number + - LP: #1219619 + * Bluetooth: Take proper tty_struct references + - LP: #1189998 + * Bluetooth: Remove the device from the list in the destructor + - LP: #1189998 + * Bluetooth: Move the tty initialization and cleanup out of open/close + - LP: #1189998 + * Bluetooth: Implement .activate, .shutdown and .carrier_raised methods + - LP: #1189998 + * Bluetooth: Fix the reference counting of tty_port + - LP: #1189998 + * Bluetooth: Purge the dlc->tx_queue to avoid circular dependency + - LP: #1189998 + + [ Wen-chien Jesse Sung ] + + * SAUCE: Bluetooth: Support for loading broadcom patchram firmware + - LP: #1065400 + * SAUCE: Bluetooth: Add support for 13d3:3388 and 13d3:3389 + - LP: #1065400 + + -- Tim Gardner Thu, 05 Sep 2013 08:06:17 -0600 + +linux (3.11.0-5.10) saucy; urgency=low + + [ Andy Whitcroft ] + + * Release tracker + - LP: #1220222 + * Revert "[Config] Fix ubuntu directoy Kbuilds" + * Revert "aufs update dropped some Kbuild files" + * Revert "ubuntu: AUFS -- follow rename of loop.h into drivers/block" + * Revert "ubuntu: AUFS -- update to + 8e503d4142c189ed6c47a2177ad2cd058e8d340e" + * Revert "ubuntu: (no-squash) AUFS3 -- aufs3-standalone.patch" + * Revert "ubuntu: (no-squash) AUFS3 -- aufs3-base.patch" + * rebase to v3.11 final + * [Config] clean up ubuntu/Kconfig and ubuntu/Makefile + * ubuntu: AUFS (no-squash): basic framework and update machinary + * ubuntu: (no-squash) AUFS3 -- aufs3-base.patch + * ubuntu: (no-squash) AUFS3 -- aufs3-standalone.patch + * ubuntu: AUFS -- update to 5ac5fe26a90a818218310e208d17688fddb07622 + * ubuntu: (no-squash) AUFS -- enable aufs + * ubuntu: AUFS -- fix remaining d_count references to use accessor + * ubuntu: lttng -- follow rename of pid_ns + * SAUCE: disable stack-protector for ARM compressed bootloader + + [ Paolo Pisati ] + + * [Config] ARM_ATAG_DTB_COMPAT=y + + [ Rob Herring ] + + * [Config] Enable KVM and virtio for armhf generic-lpae + + [ Tim Gardner ] + + * [Config] CONFIG_ARPD=y + * [Config] CONFIG_ZSWAP=y + - LP: #1215379 + + [ Upstream Kernel Changes ] + + * uvcvideo: quirk PROBE_DEF for Dell SP2008WFP monitor. + - LP: #1217957 + * ARM: use phys_addr_t for DMA zone sizes + * ARM: highbank: enable DMA zone for LPAE + * ARM: highbank: select ARCH_HAS_HOLES_MEMORYMODEL + * ARM: highbank: select required errata work-arounds + * DMA: fix AMBA PL08x compilation issue with 64bit DMA address type + * DMA: fix printk warning in AMBA PL08x DMA driver + * ARM: highbank: select ARCH_DMA_ADDR_T_64BIT for LPAE + * ARM: move outer_cache declaration out of ifdef + * ARM: highbank: avoid L2 cache smc calls when PL310 is not present + * ARM: highbank: clean-up some unused includes + * ARM: xen: only set pm function ptrs for Xen guests + + [ Upstream Kernel Changes ] + + * rebase to v3.11 + + -- Andy Whitcroft Tue, 03 Sep 2013 17:08:06 +0100 + +linux (3.11.0-4.9) saucy; urgency=low + + [ Tim Gardner ] + + * rebase to v3.11-rc7 + * Release tracker + - LP: #1216962 + + [ Upstream Kernel Changes ] + + * mwifiex: do not create AP and P2P interfaces upon driver loading + - LP: #1212720 + + -- Tim Gardner Mon, 26 Aug 2013 06:25:35 -0600 + +linux (3.11.0-3.8) saucy; urgency=low + + [ Johannes Berg ] + + * SAUCE: mac80211: ignore (E)CSA in probe response frames + - LP: #1201470 + + -- Tim Gardner Fri, 23 Aug 2013 09:47:36 -0600 + +linux (3.11.0-3.7) saucy; urgency=low + + [ Tim Gardner ] + + * SAUCE: (no-up) hv_vss_daemon -- prevent self-daemonising to allow + upstart to track + * SAUCE: (no-up) hv -- bodge hv_vss_daemon so it can use the local + linux/hyperv.h + * SAUCE: hv: Add vss daemon to Makefile + * [Debian] Add hv_vss_daemon to tools package + - LP: #1213282 + * [Config] Fix ubuntu directoy Kbuilds + - LP: #1181755 + + -- Tim Gardner Tue, 20 Aug 2013 08:34:05 -0600 + +linux (3.11.0-3.6) saucy; urgency=low + + [ Andy Whitcroft ] + + * [Packaging] tools: conditionalise x86 and hyper-v tools sensibly + * [Config] tools: enable x86 and hyper-v + + [ John Johansen ] + + * Revert "SAUCE: (no-up) apparmor: Sync to apparmor 3 dev stable + snapshot" + * Revert "SAUCE: (no-up) apparmor: fix apparmor module status for none + root users" + * SAUCE: (no-up) apparmor: Sync to apparmor 3 - alpha 4 snapshot + + [ Joseph Salisbury ] + + * SAUCE: (no-up) intel_ips: blacklist ASUSTek G60JX laptops + - LP: #1210848 + + [ Kamal Mostafa ] + + * [debian] tools: ship 'cpupower' in linux-tools + - LP: #1158668 + * [Config] Build-dep on libpci-dev for cpu tools + - LP: #1158668 + + [ Tim Gardner ] + + * rebase to v3.11-rc6 + * Release tracker + - LP: #1213941 + + -- Tim Gardner Fri, 16 Aug 2013 07:02:07 -0600 + +linux (3.11.0-2.5) saucy; urgency=low + + [ Tim Gardner ] + + * [Config] CONFIG_PM_DEBUG=y + - LP: #1210539 + * rebase to v3.11-rc5 + * Release tracker + - LP: #1211378 + + -- Tim Gardner Mon, 12 Aug 2013 06:10:39 -0600 + +linux (3.11.0-1.4) saucy; urgency=low + + [ Tim Gardner ] + + * Bump ABI when making changes to the inclusion list lest + you cause conflicts with existing installed kernel + packages. + - LP: #1210331 + + -- Tim Gardner Fri, 09 Aug 2013 03:03:51 +0100 + +linux (3.11.0-0.3) saucy; urgency=low + + [ Tim Gardner ] + + * [Config] Include rbd and kvm in the virtual inclusion list + - LP: #1206961 + * [Config] Removed obsolete inclusion list entries + + -- Tim Gardner Tue, 06 Aug 2013 08:52:14 +0100 + +linux (3.11.0-0.2) saucy; urgency=low + + [ Bruce Allan ] + + * SAUCE: (no-up) e1000e: fix I217/I218 PHY initialization flow + - LP: #1206757 + * SAUCE: (no-up) e1000e: enable support for new device IDs + - LP: #1206757 + + [ John Johansen ] + + * SAUCE: (no-up) apparmor: Sync to apparmor 3 dev stable snapshot + + [ Paolo Pisati ] + + * build vexpress a15 dtb + * [Config] disable Broadcom bcm support (ARCH_BCM) + * [Config] disable Allwinner a1x support (ARCH_SUNXI) + * [Config] disable WonderMedia WM8850 support (ARCH_WM8850) + * [Config] disable Rockchip support (ARCH_ROCKCHIP) + * [Config] disable STMicroelectronics STiH41x SOCs (ARCH_STI) + * [Config] disable TI Keystone, AM43xx and OMAP5 support + * [Config] ARM_APPENDED_DTB=y + + [ Tim Gardner ] + + * rebase to v3.11-rc4 + * overlayfs: Update to v19 + * [Config] Enable overlayfs + * SAUCE: Fix lttng compile errors + + [ Upstream Kernel Changes ] + + * rebase to v3.11-rc4 + - LP: #1163720 + - LP: #1162026 + - LP: #1195636 + - LP: #1195597 + - LP: #1180409 + - LP: #1168430 + + -- Tim Gardner Sun, 04 Aug 2013 03:45:31 -0600 + +linux (3.11.0-0.1) saucy; urgency=low + + [ Upstream Kernel Changes ] + + * rebase to 64ccccf8525fee499625b517c0faadf784c79e93 + - LP: #1163720 + - LP: #1162026 + - LP: #1195636 + - LP: #1195597 + - LP: #1180409 + - LP: #1168430 + + -- Tim Gardner Mon, 08 Jul 2013 08:50:46 -0600 + +linux (3.10.0-2.10) saucy; urgency=low + + [ Andy Whitcroft ] + + * [Config] CONFIG_INTEL_MEI*=m + - LP: #1196155 + * [Config] CONFIG_DEBUG_INFO=y + + [ Stephen Warren ] + + * [Config] fix Calxeda xgmac module filename + + [ Upstream Kernel Changes ] + + * Revert "serial: 8250_pci: add support for another kind of NetMos + Technology PCI 9835 Multi-I/O Controller" + - LP: #1190967 + * mfd: lpc_ich: Add support for Intel Avoton SoC + - LP: #1196658 + + -- Andy Whitcroft Fri, 05 Jul 2013 18:08:02 +0100 + +linux (3.10.0-2.9) saucy; urgency=low + + [ Andy Whitcroft ] + + * rebase to v3.10 + + [ John Johansen ] + + * Revert "SAUCE: (no-up) apparmor: Fix quieting of audit messages for + network mediation" + * Revert "SAUCE: (no-up) apparmor: Fix compile warnings" + * Revert "SAUCE: (no-up) AppArmor: basic networking rules" + * Revert "SAUCE: (no-up) apparmor: Add the ability to mediate mount" + * Revert "SAUCE: (no-up) AppArmor: Add profile introspection file to + interface" + * Revert "SAUCE: (no-up) AppArmor: Disable Add PR_{GET,SET}_NO_NEW_PRIVS + to prevent execve from granting privs" + * SAUCE: (no-up) apparmor: Sync to apparmor 3 dev stable snapshot + + [ Upstream Kernel Changes ] + + * rebase to v3.10 + + -- Andy Whitcroft Mon, 01 Jul 2013 17:42:29 +0100 + +linux (3.10.0-1.8) saucy; urgency=low + + [ Andy Whitcroft ] + + * Release Tracking Bug + - LP: #1195717 + + [ Andy Whitcroft ] + + * Revert "ubuntu: overlayfs -- follow change to do_splice_direct + interface" + * Revert "ubuntu: overlayfs -- expose do_splice_direct prototype" + * Revert "SAUCE: ubuntu: overlayfs -- ovl_path_open should not take path + reference" + * Revert "ubuntu: overlayfs -- add FS_ALIAS" + * Revert "ubuntu: overlayfs -- + overlayfs-copy-up-i_uid-i_gid-from-the-underlying-inode" + * Revert "ubuntu: overlayfs -- ovl-switch-to-inode_permission" + * Revert "ubuntu: overlayfs -- vfs-export-inode_permission-to-modules" + * Revert "ubuntu: overlayfs -- overlayfs-create-new-inode-in-ovl_link" + * Revert "ubuntu: overlayfs -- + overlayfs-fix-possible-leak-in-ovl_new_inode" + * Revert "ubuntu: overlayfs -- fs-limit-filesystem-stacking-depth" + * Revert "ubuntu: overlayfs -- overlay-overlay-filesystem-documentation" + * Revert "ubuntu: overlayfs -- overlayfs-implement-show_options" + * Revert "ubuntu: overlayfs -- overlayfs-add-statfs-support" + * Revert "ubuntu: overlayfs -- overlay filesystem" + * Revert "ubuntu: overlayfs -- vfs-introduce-clone_private_mount" + * Revert "ubuntu: overlayfs -- vfs-export-do_splice_direct-to-modules" + * Revert "ubuntu: overlayfs -- vfs-add-i_op-dentry_open" + * ubuntu: overlayfs v18 -- -- overlayfs: add statfs support + + [ Erez Zadok ] + + * ubuntu: overlayfs v18 -- -- overlayfs: implement show_options + + [ Miklos Szeredi ] + + * ubuntu: overlayfs v18 -- -- vfs: add i_op->dentry_open() + * ubuntu: overlayfs v18 -- -- vfs: export do_splice_direct() to modules + * ubuntu: overlayfs v18 -- -- vfs: export __inode_permission() to modules + * ubuntu: overlayfs v18 -- -- vfs: introduce clone_private_mount() + * ubuntu: overlayfs v18 -- -- overlay filesystem + * ubuntu: overlayfs v18 -- -- fs: limit filesystem stacking depth + + [ Neil Brown ] + + * ubuntu: overlayfs v18 -- -- overlay: overlay filesystem documentation + + [ Tim Gardner ] + + * [Config] CONFIG_SUNRPC_DEBUG=y + - LP: #1127319 + + -- Andy Whitcroft Fri, 28 Jun 2013 10:26:52 +0100 + +linux (3.10.0-0.7) saucy; urgency=low + + [ Andy Whitcroft ] + + * autopkgtest: switch Depends: to build-essential + + -- Andy Whitcroft Tue, 25 Jun 2013 08:40:55 +0100 + +linux (3.10.0-0.6) saucy; urgency=low + + [ Andy Whitcroft ] + + * [Config] enable CONFIG_ARCH_TEGRA to fix FTBFS on armhf + * SAUCE: ubuntu: overlayfs -- ovl_path_open should not take path reference + - LP: #1098378 + * ubuntu: AUFS -- update to 4f14cef47eb7c23eda7198931fbab1040866b6ee + * ubuntu: overlayfs -- expose do_splice_direct prototype + * ubuntu: overlayfs -- follow change to do_splice_direct interface + * [Config] flip CONFIG_NO_HZ_FULL_ALL off as it is overheating machines + - LP: #1192691 + + [ Stefan Bader ] + + * (d-i) Add dm-snapshot to md-modules + - LP: #1191726 + + [ Tim Gardner ] + + * Release tracker + - LP: #1194149 + * [Config] CONFIG_WIL6210=n for armhf + * [Config] d-i: Add calxedaxgmac to nic-modules + - LP: #1192358 + * [debian] Use dh_strip + - LP: #1192759 + * [Config] Enable perf for armhf + * do_tools=false when cross compiling + * [Config] CONFIG_CORE_DUMP_DEFAULT_ELF_HEADERS=y + - LP: #1108082 + + [ Upstream Kernel Changes ] + + * nsp32: switch reset delay to msleep() as it is tooo long + * alx: add a simple AR816x/AR817x device driver + Plucked from linux-next. replaces ubuntu/alx in favor of + 'to be merged' version in 3.11. + * rebase to v3.10-rc7 + - LP: #1189363 + + -- Tim Gardner Sat, 22 Jun 2013 18:10:31 -0600 + +linux (3.10.0-0.5) saucy; urgency=low + + [ Andy Whitcroft ] + + * rebase to v3.10-rc6 + * [Config] updateconfigs following rebase to v3.10-rc6 + + [ Upstream Kernel Changes ] + + * rebase to v3.10-rc6 + + -- Andy Whitcroft Mon, 17 Jun 2013 11:12:39 +0100 + +linux (3.10.0-0.4) saucy; urgency=low + + [ Andy Whitcroft ] + + * [Config] updateconfigs following rebase to v3.10-rc4 + + -- Andy Whitcroft Mon, 10 Jun 2013 11:42:28 +0100 + +linux (3.10.0-0.3) saucy; urgency=low + + [ Andy Whitcroft ] + + * rebase to v3.10-rc5 + + [ Upstream Kernel Changes ] + + * rebase to v3.10-rc5 + - LP: #1186170 + + -- Andy Whitcroft Mon, 10 Jun 2013 09:23:31 +0100 + +linux (3.10.0-0.2) saucy; urgency=low + + [ Andy Whitcroft ] + + * rebase to v3.10-rc4 + * [Config] CONFIG_BINFMT_SCRIPT=y to fix booting initramfs scripts + * [Config] enable SND_PCM_DEBUG SND_PCM_XRUN_DEBUG + - LP: #1187744 + * [Config] enforce CONFIG_BINFMT_SCRIPT=y + + [ Dave Chiluk ] + + * SAUCE: ncpfs: fix rmdir returns Device or resource busy + - LP: #1035226 + + [ Tim Gardner ] + + * rebase to v3.10-rc3 + * [Config] sparc be gone + * [Config] ia64 be gone + * d-i: block-modules provides nbd-modules + + [ Upstream Kernel Changes ] + + * rebase to v3.10-rc4 + * rebase to v3.10-rc3 + + -- Tim Gardner Tue, 28 May 2013 06:16:46 -0600 + +linux (3.10.0-0.1) saucy; urgency=low + + [ Tim Gardner ] + + * UBUNTU: Disabled lttng + * UBUNTU: Disable aufs for FTBS + * UBUNTU: Disabled alx + * UBUNTU: alx: rename NETIF_F_HW_VLAN_* feature flags to NETIF_F_HW_VLAN_CTAG_* + * UBUNTU: rebase to v3.10-rc2 + * UBUNTU: SAUCE: uvcvideo: quirk PROBE_DEF for Alienware X51 OmniVision webcam + + [ Andy Whitcroft ] + + * UBUNTU: [Config] update standards version to 3.9.4.0 + * UBUNTU: [Config] squash duplicate package description (long and short) + * UBUNTU: [Config] fix up Vcs-git: to point to saucy + * UBUNTU: [Config] drop depenancy on util-linux as is Essential + * UBUNTU: [Config] drop redundant Build-Conficts: + + [ Upstream Kernel Changes ] + + * rebase to v3.10-rc2 + - LP: #1180351 + + [ Upstream Kernel Changes ] + + * rebase to v3.10-rc1 + - LP: #1172151 + - LP: #1089795 + - LP: #1167270 + - LP: #1128840 + + -- Tim Gardner Tue, 14 May 2013 13:41:07 -0600 + +linux (3.10.0-0.0) saucy; urgency=low + + * Dummy + + -- Tim Gardner Thu, 09 May 2013 20:30:40 +0100 + +linux (3.9.0-2.6) saucy; urgency=low + + [ Tim Gardner ] + + * rebase to v3.9.2 + + -- Tim Gardner Thu, 09 May 2013 20:30:40 +0100 + +linux (3.9.0-1.5) saucy; urgency=low + + [ Tim Gardner ] + + * rebase to v3.9.1 + + -- Tim Gardner Wed, 08 May 2013 12:49:45 -0400 + +linux (3.9.0-0.4) saucy; urgency=low + + [ Andy Whitcroft ] + + * ubuntu: overlayfs -- add FS_ALIAS + + [ Tim Gardner ] + + * Added lttng + - LP: #1175784 + + -- Tim Gardner Thu, 02 May 2013 17:17:13 -0400 + +linux (3.9.0-0.3) saucy; urgency=low + + [ Upstream Kernel Changes ] + + * rebase to v3.9 + + -- Tim Gardner Mon, 29 Apr 2013 18:20:00 -0400 + +linux (3.9.0-0.2) saucy; urgency=low + + [ Tim Gardner ] + + * Enable extras packaging for amd64/i386. + Fixes build depenencies with brittany and linux-meta. + + -- Tim Gardner Mon, 29 Apr 2013 05:37:01 -0600 + +linux (3.9.0-0.1) saucy; urgency=low + + [ Upstream Kernel Changes ] + + * rebase to v3.9-rc8 + + [ Upstream Kernel Changes ] + + * rebase to v3.9-rc7 + - LP: #1128840 + + [ Upstream Kernel Changes ] + + * rebase to v3.9-rc6 + + [ Upstream Kernel Changes ] + + * rebase to v3.9-rc5 + + [ Upstream Kernel Changes ] + + * rebase to v3.8-rc4 + - LP: #1095315 + - LP: #886975 + - LP: #1086921 + + [ Upstream Kernel Changes ] + + * rebase to v3.9-rc3 + - LP: #1155016 + - LP: #1103594 + + [ Upstream Kernel Changes ] + + * rebase to v3.9-rc2 + + [ Upstream Kernel Changes ] + + * rebase to v3.9-rc1 + - LP: #901105 + - LP: #961286 + - LP: #1011792 + - LP: #1128934 + - LP: #886975 + - LP: #978807 + + -- Tim Gardner Wed, 20 Feb 2013 09:12:39 -0700 + +linux (3.8.0-7.14) raring; urgency=low + + [ Andy Whitcroft ] + + * [Config] CONFIG_RCU_USER_QS=n + * [Config] CONFIG_MTD_ONENAND_SIM=n + * annotations: add annotations for CONFIG_CC_STACKPROTECTOR + + [ Upstream Kernel Changes ] + + * rebase to v3.8 + + [Tim Gardner] + + * Release Tracking Bug + - LP: #1130111 + * UBUNTU: SAUCE: rt2x00: rt2x00pci_regbusy_read() - only print register access failure once + - LP: #1128840 + + -- Tim Gardner Mon, 18 Feb 2013 09:25:56 -0700 + +linux (3.8.0-6.13) raring; urgency=low + + [Tim Gardner] + + * Release Tracking Bug + - LP: #1125364 + * Add ahci modules to d-i + - LP: #1124415 + + + [ Chris Wilson ] + + * SAUCE: drm/i915: Wait for pending flips to complete before tearing down + the encoders + - LP: #1097315 + + -- Tim Gardner Wed, 13 Feb 2013 12:16:48 -0700 + +linux (3.8.0-6.12) raring; urgency=low + + [Tim Gardner] + + * perf: NO_LIBPERL=1 + * Fix linux-headers dependency + * Release Tracking Bug + - LP: #1124362 + + [ Andy Whitcroft ] + + * [Config] enable CONFIG_AUFS_EXPORT to allow nfs exports + - LP: #1121699 + + [ Daniel Vetter ] + + * SAUCE: drm/i915: write backlight harder + - LP: #954661 + + -- Tim Gardner Wed, 13 Feb 2013 10:25:11 -0700 + +linux (3.8.0-6.11) raring; urgency=low + + [Tim Gardner] + + * Release Tracking Bug + - LP: #1122071 + * rebase to v3.8-rc7 + * Add libaudit-dev as a build dependency + * Build perf with NO_LIBPYTHON=1 to avoid a python build dependency. + + [ Leann Ogasawara ] + + * [Config] Remove CONFIG_SATA_AHCI annotation + + -- Tim Gardner Fri, 08 Feb 2013 07:41:13 -0500 + +linux (3.8.0-5.10) raring; urgency=low + + [Tim Gardner] + + * Release Tracking Bug + - LP: #1118568 + + * Bump ABI to fix install issue with 3.8.0-4.8. + Moving drivers/ata/*ahci* to linux-image caused an + install conflict with linux-image-extras without an + ABI bump. + + [ Jan Beulich ] + + * SAUCE: xen-pciback: rate limit error messages from + xen_pcibk_enable_msi{, x}() + - LP: #1117336 + - CVE-2013-0231 + + -- Tim Gardner Thu, 07 Feb 2013 05:38:12 -0700 + +linux (3.8.0-4.9) raring; urgency=low + + [ Herton Ronaldo Krzesinski ] + + * d-i: Add mellanox ethernet drivers to nic-modules + - LP: #1015339 + + [ Joseph Salisbury ] + + * SAUCE: ACPI: Add DMI entry for Sony VGN-FW41E_H + - LP: #1113547 + + [ Kamal Mostafa ] + + * SAUCE: alx driver import script + + [ Qualcomm Atheros, Inc ] + + * SAUCE: alx: Update to heads/master + + [ Tim Gardner ] + + * Release Tracking Bug + - LP: #1117673 + + * [debian] Remove dangling symlink from headers package + - LP: #1112442 + * [config] CONFIG_ALX=m + * [Config] Add alx to d-i nic-modules + * [Config] CONFIG_SATA_AHCI=m + - LP: #1056563 + + -- Leann Ogasawara Tue, 05 Feb 2013 05:54:32 -0800 + +linux (3.8.0-4.8) raring; urgency=low + + [ Allen Ibara ] + + * SAUCE: imx6: dts: Add IMX6Q AHCI support + + [ Andy Whitcroft ] + + * rebase to v3.8-rc6 + * updateconfigs following rebase to v3.8-rc6 + + [Leann Ogasawara] + + * Release Tracking Bug + - LP: #1112573 + + [ Paolo Pisati ] + + * SAUCE: imx6: enable sata clk if SATA_AHCI_PLATFORM + * [Config] SERIAL_AMBA_PL011=y (vexpress serial console) + * [Config] MMC_ARMMMCI=y (vexpress mmc) + * [Config] FB_ARMCLCD=y (vexpress framebuffer) + + [ Seth Forshee ] + + * [Config] CONFIG_MAC80211_MESSAGE_TRACING=y + + [ Upstream Kernel Changes ] + + * rebase to v3.8-rc6 + - LP: #1107477 + + -- Leann Ogasawara Fri, 01 Feb 2013 07:20:59 -0800 + +linux (3.8.0-3.7) raring; urgency=low + + [ Andy Green ] + + * SAUCE: ARM: OMAP2+: add cpu id register to MAC address helper + * SAUCE: ARM: omap2 add mac address allocation register api + * SAUCE: ARM: omap2 panda register ethernet and wlan for automatic mac + allocation + + [ Leann Ogasawara ] + + * rebase to v3.8-rc5 + * Release Tracking Bug + - LP: #1111486 + + [ Paolo Pisati ] + + * SAUCE: davinci: vpss: compilation fix + * [Config] enable TI OMAP4 support (Pandaboard/ES) + * [Config] OMAP_USB2=y (since TWL6030_USB depends on it) + * [Config] enable Freescale IMX6 support (SabreLite) + * [Config] SERIAL_IMX_CONSOLE=y + * [Config] MMC_*_IMX=y + * [Config] disable USB_SUSPEND + * [Config] USB_MXS_PHY=y + * [Config] USB_CHIPIDEA=y + * SAUCE: DTB: add support for multiple DTBs + * SAUCE: DTB: build imx6q-sabrelite + * SAUCE: DTB: build beaglexm + * SAUCE: DTB: build panda/panda es + * [Config] disable CPU_FREQ + * [Config] PANEL_TFP410=y (video DVI output) + * [Config] SND_OMAP_SOC*=y + * [Config] SND_IMX_SOC*=y + * [Config] I2C_IMX=y + * [Config] SPI_IMX=m + + [ Stefan Bader ] + + * [Config] Move 9p modules into generic package + - LP: #1107658 + + [ Tony Lindgren ] + + * SAUCE: ARM: OMAP2+: Limit omap initcalls to omap only on multiplatform + kernels + * SAUCE: ARM: OMAP2+: Use omap initcalls + * SAUCE: ARM: OMAP: Fix i2c cmdline initcall for multiplatform + * SAUCE: ARM: OMAP: Fix dmaengine init for multiplatform + * SAUCE: ARM: OMAP2+: Add multiplatform debug_ll support + * SAUCE: ARM: OMAP2+: Disable code that currently does not work with + multiplaform + * SAUCE: ARM: OMAP2+: Enable ARCH_MULTIPLATFORM support + * SAUCE: ARM: OMAP2+: Add minimal support for booting vexpress + * SAUCE: ARM: OMAP2+: Remove now obsolete uncompress.h and debug-macro.S + + [ Upstream Kernel Changes ] + + * rebase to v3.8-rc5 + - LP: #1096789 + + -- Leann Ogasawara Thu, 31 Jan 2013 06:44:52 -0800 + +linux (3.8.0-2.6) raring; urgency=low + + [ Adam Conrad ] + + * Fix up linux-tools -> SRCPKGNAME-tools rename + + [ Andy Whitcroft ] + + * [Config] re-disable CONFIG_SOUND_OSS + - LP: #1105230 + + [ Arend van Spriel ] + + * SAUCE: brcmsmac: fix tx status processing + + [Leann Ogasawara] + + * Release Tracking Bug + - LP: #1105104 + + -- Leann Ogasawara Fri, 25 Jan 2013 11:56:30 -0800 + +linux (3.8.0-1.5) raring; urgency=low + + [Tim Gardner] + + * Release Tracking Bug + - LP: #1101235 + + [ Dudley Du ] + + * SAUCE: Input: add support for Cypress PS/2 Trackpads + - LP: #978807 + + [ Kamal Mostafa ] + + * SAUCE: Input: increase struct ps2dev cmdbuf[] to 8 bytes + * SAUCE: Input: Cypress PS/2 Trackpad simulated multitouch + * [Config] Add CONFIG_PS2_CYPRESS + + [ Tim Gardner ] + + * rebase to v3.8-rc4 + + [ Upstream Kernel Changes ] + + * rebase to v3.8-rc4 + - LP: #1095315 + - LP: #886975 + - LP: #1086921 + + -- Leann Ogasawara Thu, 17 Jan 2013 10:50:22 -0800 + +linux (3.8.0-0.4) raring; urgency=low + + [ Leann Ogasawara ] + + * [Config] Update CONFIG_TOUCHSCREEN_EGALAX build annotation + * [Config] Update CONFIG_IIO build annotation + * [Config] Update CONFIG_TOUCHSCREEN_EETI annotation + * [Config] Remove CONFIG_SPI_DW_MMIO annotation + * [Config] Remove CONFIG_SPI_PL022 annotation + * [Config] Update CONFIG_EZX_PCAP annotation + * [Config] Update CONFIG_SENSORS_AK8975 annotation + * [Config] Disable CONFIG_DRM_MGAG200 + - LP: #1042903 + + -- Leann Ogasawara Mon, 14 Jan 2013 10:01:50 -0800 + +linux (3.8.0-0.3) raring; urgency=low + + [ Andy Whitcroft ] + + * Revert "SAUCE: (no-up) trace: add trace events for open(), exec() and + uselib()" + + [ Scott James Remnant ] + + * SAUCE: (no-up) trace: add trace events for open(), exec() and uselib() + (for v3.7+) + - LP: #1085766, #462111 + + -- Andy Whitcroft Fri, 11 Jan 2013 16:57:27 +0000 + +linux (3.8.0-0.2) raring; urgency=low + + [ Tim Gardner ] + + * [packaging] Add macro to selectively disable building perf + * [packaging] Cannot depend on universe package libaudit-dev + + -- Tim Gardner Thu, 10 Jan 2013 12:43:24 -0700 + +linux (3.8.0-0.1) raring; urgency=low + + + [ Upstream Kernel Changes ] + + * rebase to v3.8-rc3 + - LP: #1096789 + + [ Upstream Kernel Changes ] + + * rebase to v3.8-rc2 + - LP: #1082357 + - LP: #1075882 + + -- Andy Whitcroft Mon, 17 Dec 2012 10:35:09 +0000 + +linux (3.7.0-7.15) raring; urgency=low + + [ Chris J Arges ] + + * SAUCE: add eeprom_bad_csum_allow module parameter + - LP: #1070182 + + [ Leann Ogasawara ] + + * Add ceph to linux-image for virtual instances + - LP: #1063784 + + [ Serge Hallyn ] + + * SAUCE: net: dev_change_net_namespace: send a KOBJ_REMOVED/KOBJ_ADD + + [ Tim Gardner ] + + * [Config] CONFIG_SLUB_DEBUG=y + - LP: #1090308 + + [ Upstream Kernel Changes ] + + * Revert "[SCSI] sd: Implement support for WRITE SAME" + - LP: #1089818 + + -- Leann Ogasawara Wed, 12 Dec 2012 06:50:20 -0800 + +linux (3.7.0-6.14) raring; urgency=low + + [ Andy Whitcroft ] + + * [Config] annotations: all new annotations scheme including defaults + * [Configs] apply annotation updates to main configs (top section) + + [ Leann Ogasawara ] + + * Revert "SAUCE: include and for mmc_core arm + build" + * Revert "SAUCE: [arm] fixup __aeabi_uldivmod undefined build error" + * Temporarily disable module check for build + + [ Stefan Bader ] + + * ubuntu: dm-raid45: Adapt to upstream interface changes + * Re-enable build of dm-raid45 + + [ Tim Gardner ] + + * SAUCE: Moved scripts/fw-to-ihex.sh to debian/scripts/misc + * SAUCE: ACPICA: Fix ACPI mutex object allocation memory leak on error + * SAUCE: drm: Fix possible EDID memory allocation oops + * SAUCE: ttm: Fix possible _manager memory allocation oops + * SAUCE: iwlwifi: iwlagn_request_scan: Fix check for priv->scan_request + * SAUCE: i915: intel_set_mode: Reduce stack allocation from 500 bytes to + 2 pointers + + [ Tomas Hozza ] + + * SAUCE: tools: hv: Netlink source address validation allows DoS + - LP: #1084777 + - CVE-2012-5532 + + [ Upstream Kernel Changes ] + + * rebase to v3.7 + + -- Leann Ogasawara Wed, 05 Dec 2012 14:11:12 -0800 + +linux (3.7.0-5.13) raring; urgency=low + + [ Lino Sanfilippo ] + + * SAUCE: inotify, fanotify: replace fsnotify_put_group() with + fsnotify_destroy_group() + - LP: #922906 + * SAUCE: fsnotify: introduce fsnotify_get_group() + - LP: #922906 + * SAUCE: fsnotify: use reference counting for groups + - LP: #922906 + * SAUCE: fsnotify: take groups mark_lock before mark lock + - LP: #922906 + * SAUCE: fanotify: add an extra flag to mark_remove_from_mask that + indicates wheather a mark should be destroyed + - LP: #922906 + * SAUCE: fsnotify: use a mutex instead of a spinlock to protect a groups + mark list + - LP: #922906 + * SAUCE: fsnotify: pass group to fsnotify_destroy_mark() + - LP: #922906 + * SAUCE: fsnotify: introduce locked versions of fsnotify_add_mark() and + fsnotify_remove_mark() + - LP: #922906 + * SAUCE: fsnotify: dont put marks on temporary list when clearing marks + by group + - LP: #922906 + * SAUCE: fsnotify: change locking order + - LP: #922906 + + [ Tim Gardner ] + + * [Config] CONFIG_NFC_LLCP=y + * [Config] get-firmware: Filter new files through fwinfo + * [Config] CONFIG_MTD_NAND_DOCG4=m for all arches + * [Config] CONFIG_DRM_EXYNOS_HDMI=y + * [Config] CONFIG_XEN=y for all arches + * [Config] CONFIG_SND_OMAP_SOC_ZOOM2=m + * [Config] CONFIG_MMC_DW_EXYNOS=m + * [Config] CONFIG_GPIO_ADNP=m + * [Config] find-obsolete-firmware: Use correct path + * rebase to v3.7-rc8 + - LP: #1084640 + + [ Upstream Kernel Changes ] + + * Revert "VFS: don't do protected {sym,hard}links by default" + - LP: #1084192 + + -- Tim Gardner Wed, 28 Nov 2012 16:07:08 +0000 + +linux (3.7.0-4.12) raring; urgency=low + + [ Tim Gardner ] + + * Revert "[Config] Use -j1 for headers_install" + * Revert "[Config] install-arch-headers needs a valid config" + Strayed into the weeds in search of the root cause of the periodic + build failure. + Fixes powerpc FTBS introduced in -4.11. + * [Config] hmake -j1 + The kernel makefile appears to have parallel dependency + problems for the install_headers target. This appears to be root + cause for a periodic build failure on N-way machines. + + -- Leann Ogasawara Tue, 27 Nov 2012 12:33:06 -0800 + +linux (3.7.0-4.11) raring; urgency=low + + [ Tim Gardner ] + + * [Config] Use -j1 for headers_install + Also fixes a powerpc FTBS introduced by + "[Config] install-arch-headers needs a valid config". + + -- Tim Gardner Tue, 27 Nov 2012 10:19:30 -0700 + +linux (3.7.0-4.10) raring; urgency=low + + [ Andy Whitcroft ] + + * [Config] add rebuild-test support for autopkgtest + - LP: #1081500 + * [tests] move build tests out of the way + - LP: #1081500 + * [tests] add an autopkgtest rebuild test + - LP: #1081500 + + [ Tim Gardner ] + + * rebase to v3.7-rc7 + * SAUCE: Remove emi62 files duplicated in linux-firmware + * SAUCE: Remove sb16 files duplicated in linux-firmware + * SAUCE: Remove whiteheat files duplicated in linux-firmware + * SAUCE: Remove yamaha files duplicated in linux-firmware + * SAUCE: Remove dsp56k files used only by m68k + * SAUCE: firmware: Remove last vestiges of dabusb + * SAUCE: Remove vicam files duplicated in linux-firmware + * [Config] install-arch-headers needs a valid config + + [ Upstream Kernel Changes ] + + * rebase to v3.7-rc7 + - LP: #1076840 + - LP: #1081466 + + -- Leann Ogasawara Wed, 21 Nov 2012 06:07:23 -0800 + +linux (3.7.0-3.9) raring; urgency=low + + [ Leann Ogasawara ] + + * [Config] Enable CONFIG_X86_CPUFREQ_NFORCE2=y + - LP: #1079900 + * Add nfsv3 to nfs-modules udeb + + [ Paolo Pisati ] + + * [Config] SND_OMAP_SOC*=y + - LP: #1019321 + + [ Stefan Bader ] + + * SAUCE: (no-up) xen/netfront: handle compound page fragments on transmit + - LP: #1078926 + + [ Tim Gardner ] + + * Revert "SAUCE: SECCOMP: audit: always report seccomp violations" + - LP: #1079469 + * Revert "SAUCE: omap3 clocks .dev_id = NULL" + * rebase to v3.7-rc6 + * SAUCE: script to detect obsolete firmware + * SAUCE: Remove yam files duplicated in linux-firmware + * SAUCE: Remove tehuti files duplicated in linux-firmware + * SAUCE: Remove matrox files duplicated in linux-firmware + * SAUCE: Remove cxgb3 files duplicated in linux-firmware + * SAUCE: Remove r128 files duplicated in linux-firmware + * SAUCE: Remove acenic files duplicated in linux-firmware + * SAUCE: Remove keyspan files duplicated in linux-firmware + * SAUCE: Remove sun files duplicated in linux-firmware + * SAUCE: Remove radeon files duplicated in linux-firmware + * SAUCE: Update bnx2x firmware to 7.8.2.0 + * [Config] generic.inclusion-list: econet has disappeared + + [ Upstream Kernel Changes ] + + * seccomp: forcing auditing of kill condition + - LP: #1079469 + * rebase to v3.7-rc6 + + -- Leann Ogasawara Tue, 20 Nov 2012 12:28:55 -0800 + +linux (3.7.0-2.8) raring; urgency=low + + [ Andy Whitcroft ] + + * Revert "overlayfs: disable until FTBS is fixed" + * Revert "ubuntu: overlayfs" + * Revert "ubuntu: AUFS" + * ubuntu: overlayfs -- overlayfs: add statfs support + * ubuntu: overlayfs -- ovl: switch to __inode_permission() + * ubuntu: overlayfs -- overlayfs: copy up i_uid/i_gid from the underlying + inode + - LP: #944386 + * ubuntu: AUFS (no-squash): basic framework and update machinary + * ubuntu: AUFS (no-squash) -- aufs3-base.patch + * ubuntu: AUFS (no-squash) -- aufs3-standalone.patch + * ubuntu: AUFS: aufs-update -- follow the uapi header changes + * ubuntu: AUFS -- update to f2873474324d0a31af4340554b9715f51331bc7f + * ubuntu: AUFS (no-squash) -- reenable + - LP: #1079193 + + [ Erez Zadok ] + + * ubuntu: overlayfs -- overlayfs: implement show_options + + [ Miklos Szeredi ] + + * ubuntu: overlayfs -- vfs: add i_op->dentry_open() + * ubuntu: overlayfs -- vfs: export do_splice_direct() to modules + * ubuntu: overlayfs -- vfs: introduce clone_private_mount() + * ubuntu: overlayfs -- overlay filesystem + * ubuntu: overlayfs -- fs: limit filesystem stacking depth + * ubuntu: overlayfs -- vfs: export __inode_permission() to modules + + [ Neil Brown ] + + * ubuntu: overlayfs -- overlay: overlay filesystem documentation + + [ Robin Dong ] + + * ubuntu: overlayfs -- overlayfs: fix possible leak in ovl_new_inode + * ubuntu: overlayfs -- overlayfs: create new inode in ovl_link + + -- Andy Whitcroft Thu, 15 Nov 2012 13:35:12 +0000 + +linux (3.7.0-1.7) raring; urgency=low + + [ Tim Gardner ] + + * [Config] Drop dependency on libaudit-dev + Its a universe package which causes an FTBS on the builders. + libaudit-dev is not strictly required for the perf tools build. + + -- Tim Gardner Wed, 14 Nov 2012 10:08:13 -0700 + +linux (3.7.0-1.6) raring; urgency=low + + [ Andy Whitcroft ] + + * [Config] enforce -- switch CONFIG_NVRAM to more readable form + * [Config] better encode the CONFIG_NVRAM constaint + * enforcer -- fix debugging output + + [ Ben Collins ] + + * [Config] Add custom_override rule to allow for alternate kernel + file/install + * [Config] Use SRCPKGNAME as prefix for indep linux headers package + + [ Tim Gardner ] + + * [Config] Dropped armel + * Drop highbank from ABI fetch list + * [Config] Use dh_prep instead of 'dh_clean -k' + * [Config] Build depend on libaudit-dev, libunwind8-dev for tools + * [Config] Document binary-indep dependency chain + * rebase to v3.7-rc5 + + [ Upstream Kernel Changes ] + + * rebase to v3.7-rc5 + + -- Tim Gardner Tue, 13 Nov 2012 07:13:37 -0500 + +linux (3.7.0-0.5) raring; urgency=low + + [ Tim Gardner ] + + * [Config] CONFIG_AMD_IOMMU_V2=m + - LP: #1071520 + * [Config] CONFIG_MTD_ONENAND_SIM=n for armel + Fixes FTBS + + -- Tim Gardner Thu, 08 Nov 2012 15:45:39 -0500 + +linux (3.7.0-0.4) raring; urgency=low + + [ Ben Collins ] + + * [Config] Update enforce rule for CONFIG_NVRAM to better suit flavours + + [ Tim Gardner ] + + * [Config] do_tools=false for arm + + -- Tim Gardner Thu, 08 Nov 2012 05:39:51 -0700 + +linux (3.7.0-0.3) raring; urgency=low + + [ Tim Gardner ] + + * [Config] CONFIG_DRM_EXYNOS_HDMI=n for armhf + * [Config] CONFIG_MTD_NAND_DOCG4=n for armel/armhf + * [Config] Drop highbank harder + + -- Tim Gardner Wed, 07 Nov 2012 18:11:45 +0000 + +linux (3.7.0-0.2) raring; urgency=low + + [ Andy Whitcroft ] + + * [Config] add fs/udf to linux-image to support DVD/CD formats in virtual + instances + - LP: #1066921 + * [Config] drop highbank builds + + [ Jeremy Kerr ] + + * SAUCE: efivarfs: Implement exclusive access for {get, set}_variable + - LP: #1063061 + + [ Leann Ogasawara ] + + * Reinstate dropped.txt from Ubuntu-3.7.0-0.1-rc1 + + [ Tim Gardner ] + + * [Config] Dropped powerpc/ppc64 in favour of the community kernel + * [Config] CONFIG_MODULE_SIG=y for amd64,i386, and highbank + * rebase to v3.7-rc4 + * SAUCE: MODSIGN: Emit error for incorrectly signed module + + [ Upstream Kernel Changes ] + + * rebase to v3.7-rc4 + + -- Tim Gardner Mon, 05 Nov 2012 05:35:41 -0700 + +linux (3.7.0-0.1) raring; urgency=low + + + [ Upstream Kernel Changes ] + + * rebase to v3.7-rc3 + - LP: #1056078 + + [ Upstream Kernel Changes ] + + * rebase to v3.7-rc2 + - LP: #1060729 + - LP: #1059523 + - LP: #1006690 + - LP: #1049623 + - LP: #1046512 + - LP: #1052499 + - LP: #1037642 + - LP: #559939 + - LP: #1052460 + - LP: #939161 + - LP: #1046734 + + -- Tim Gardner Tue, 02 Oct 2012 08:13:07 -0600 + +linux (3.6.0-0.1) UNRELEASED; urgency=low + + + [ Upstream Kernel Changes ] + + * rebase to v3.6 + + [ Upstream Kernel Changes ] + + * rebase to v3.6-rc7 + + [ Upstream Kernel Changes ] + + * rebase to v3.6-rc6 + - LP: #1000424 + + [ Upstream Kernel Changes ] + + * rebase to v3.6-rc5 + - LP: #1040077 + + [ Upstream Kernel Changes ] + + * rebase to v3.6-rc4 + + [ Upstream Kernel Changes ] + + * rebase to v3.6-rc3 + - LP: #1038651 + - LP: #1034779 + + -- Leann Ogasawara Tue, 24 Jul 2012 06:37:09 -0700 + +linux (3.5.0-6.6) quantal-proposed; urgency=low + + [ Andy Whitcroft ] + + * [Config] CONFIG_INET6_XFRM_MODE_ROUTEOPTIMIZATION enable IPv6 + experimental features + * SAUCE: highbank -- export clock functions for modules + * [Config] highbank -- reenable CONFIG_TOUCHSCREEN_W90X900 + * [Config] highbank -- renenable CONFIG_SERIO_AMBAKMI + * [Config] highbank -- reenable CONFIG_RFKILL_GPIO + * [Config] highbank -- reenable CONFIG_MMC_SDHCI_PXAV3 + * [Config] highbank -- reenable CONFIG_MMC_SDHCI_PXAV3 + * [Config] highbank -- reenable CONFIG_KEYBOARD_SAMSUNG + * [Config] highbank -- reenable CONFIG_FB_ARMCLCD + * [Config] highbank -- reenable CONFIG_DW_DMAC + * [Config] highbank -- reenable CONFIG_USB_R8A66597_HCD + * [Config] highbank -- reenable CONFIG_USB_MV_UDC + * [Config] highbank -- reenable CONFIG_USB_DWC3 + * [Config] highbank -- reenable CONFIG_SATA_MV + * [Config] highbank -- reenable CONFIG_PATA_ARASAN_CF + * [Config] highbank -- CONFIG_CAN_C_CAN_PLATFORM + * [Config] highbank -- reenable CONFIG_MMC_ARMMMCI + * [Config] highbank -- reenable CONFIG_SERIAL_AMBA_PL010 + * [Config] highbank -- reenable CONFIG_ATMEL_PWM + * [Config] highbank -- enable CONFIG_CHECKPOINT_RESTORE + * [Config] highbank -- enable CONFIG_EXPERT + * [Config] highbank -- enable CONFIG_CHECKPOINT_RESTORE + * [Config] enable CONFIG_USB_DYNAMIC_MINORS + * [Config] enable CONFIG_USB_EHCI_TT_NEWSCHED + * [Config] enable CONFIG_USB_ETH_EEM + * [Config] enable CONFIG_USB_HCD_BCMA/CONFIG_USB_HCD_SSB + * [Config] disable CONFIG_USB_M66592 + * [Config] enable CONFIG_USB_NET2272 + * [Config] enable CONFIG_USB_R8A66597 + * [Config] annotate: CONFIG_USB_OMAP not required for our h/w + * [Config] set CONFIG_USB_MUSB_HDRC=m for omap + * [Config] annotate: CONFIG_USB_G_MULTI fix rule + * [Config] CONFIG_USB_GPIO_VBUS=m for OMAP + * [Config] Enable CONFIG_DRM_AST/_CIRRUS_QEMU/_MGAG200 + * [Config] sync configuration armhf omap -> armel omap + * [Config] annotate: CONFIG_IIO triggers build failures on OMAP4 + * [Config] disable CONFIG_OMAP_IOVMM is deprecated + + [ Bryan Wu ] + + * [Config] change default IO scheduler from CFQ to Deadline + + [ Leann Ogasawara ] + + * Revert "[Config] Temporarily disable CONFIG_MV643XX_ETH on powerpc" + * [Config] Disable CONFIG_MOUSE_INPORT + + [ Tim Gardner ] + + * SAUCE: firmware: Update bnx2x to current firmware version 7.2.51 + * [Config] Add bnx2x firmware to nic-modules udeb + * SAUCE: Add script to convert firmware to ihex format + * SAUCE: firmware: Upgrade bnx2 to current versions + * [Config] Add tigon firmware to nic-modules udeb + * [Config] CONFIG_EARLY_PRINTK_DBGP=y + - LP: #1026761 + * SAUCE: Remove redundant cis firmware + * SAUCE: Remove redundant emi26 firmware + * SAUCE: Remove redundant ttusb-budget firmware + * SAUCE: Remove redundant sun/cassini firmware + * SAUCE: Remove redundant ositech/Xilinx7OD firmware + * SAUCE: Remove redundant 3com/typhoon.bin firmware + * SAUCE: Remove redundant yamaha/ds1 firmware + * SAUCE: Remove redundant keyspan_pda firmware + * rebase to v3.5 + + [ Upstream Kernel Changes ] + + * rebase to v3.5 + - LP: #1027828 + + -- Leann Ogasawara Mon, 23 Jul 2012 05:57:04 -0700 + +linux (3.5.0-5.5) quantal-proposed; urgency=low + + [ Andy Whitcroft ] + + * [Config] annotations: initial import of configuration annotations + + [ Bryan Wu ] + + * [Config] enforcer -- add CONFIG_I2C_DESIGNWARE_PLATFORM enforce checker + + [ Leann Ogasawara ] + + * Rebase to v3.5-rc7 + + [ Manoj Iyer ] + + * SAUCE: Bluetooth: btusb: Add vendor specific ID (0a5c:21f4) BCM20702A0 + - LP: #1010281 + + [ Tim Gardner ] + + * [Config] enable CONFIG_I2C_HELPER_AUTO for all flavours as policy + expects + * [Config] CONFIG_I2O_CONFIG_OLD_IOCTL=n + * [Config] CONFIG_BRIDGE_EBT_ULOG=n + * [Config] CONFIG_IP_NF_QUEUE=n + * [Config] CONFIG_MTD_DOC2000=n + * [Config] CONFIG_PRINT_QUOTA_WARNING=n + * [Config] CONFIG_PRISM54=n + * [Config] CONFIG_SCx200_I2C=n + * [Config] CONFIG_USB_ANNOUNCE_NEW_DEVICES=y + + [ Upstream Kernel Changes ] + + * rebase to v3.5-rc7 + + -- Leann Ogasawara Mon, 16 Jul 2012 15:38:41 -0700 + +linux (3.5.0-4.4) quantal-proposed; urgency=low + + [ Andy Whitcroft ] + + * [Packaging] getabis should be extracting all packages + - LP: #1021174 + * [Config] getabis -- series uses linux-image-extra + - LP: #1021174 + * rebase to v3.5-rc6 + + [ Bryan Wu ] + + * [Config] built-in CONFIG_MICREL_PHY as other PHY drivers for all + flavours + * [Config] sync CONFIG_MOUSE_PS2_ config for all flavours + + [ Leann Ogasawara ] + + * [Config] Enable CONFIG_RT2800USB_RT35XX and CONFIG_RT2800USB_RT53XX + - LP: #1019561 + + [ Paolo Pisati ] + + * [Config] SND_OMAP_SOC, SND_OMAP_SOC_MCBSP and SND_OMAP_SOC_OMAP3_BEAGLE =y + - LP: #1019321 + + [ Stefan Bader ] + + * SAUCE: (pre-up) net: dont use __netdev_alloc_skb for bounce buffer + - LP: #1018456 + * (config) Disable ACPI_PROCFS_POWER + + [ Tim Gardner ] + + * [Config] CONFIG_ACPI_BGRT=y + * Extract firmware module info during getabi + - LP: #1021174 + + [ Upstream Kernel Changes ] + + * rebase to v3.5-rc6 + + -- Leann Ogasawara Mon, 09 Jul 2012 08:50:20 -0700 + +linux (3.5.0-3.3) quantal-proposed; urgency=low + + [ Andy Whitcroft ] + + * [Config] enable CONFIG_MEMTEST=y + - LP: #1004535 + * [Config] config-check: add support for a cut operation + * [Config] enforcer -- switch to cut where appropriate + + [ Leann Ogasawara ] + + * Rebase to v3.5-rc5 + * [Config] Updateconfigs after rebase to v3.5-rc5 + + [ Luis Henriques ] + + * SAUCE: ocfs2: Fix NULL pointer dereferrence in + __ocfs2_change_file_space + - LP: #1006012 + + [ Seth Forshee ] + + * SAUCE: (drop after 3.5) drm/i915: ignore pipe select bit when checking + for LVDS register initialization + - LP: #1012800 + + [ Upstream Kernel Changes ] + + * rebase to v3.5-rc5 + - LP: #1013183 + - LP: #1017017 + - LP: #884652 + + -- Leann Ogasawara Mon, 02 Jul 2012 06:41:58 -0700 + +linux (3.5.0-2.2) quantal-proposed; urgency=low + + [ Andy Whitcroft ] + + * rebase to v3.5-rc4 + + [ Arend van Spriel ] + + * SAUCE: (drop after 3.5) brcmsmac: fix NULL pointer crash in + brcms_c_regd_init() + - LP: #950320 + + [ Bryan Wu ] + + * [Config] Sync CONFIG_CGROUP_MEM_RES_CTLR_SWAP for ARM + + [ Chris J Arges ] + + * PACKAGING: add .gnu_debuglink sections to .ko files + - LP: #669641 + + [ Leann Ogasawara ] + + * d-i: Add hid-generic to input-modules + - LP: #1017879 + + [ Ming Lei ] + + * SAUCE: Revert "mmc: omap_hsmmc: Enable Auto CMD12" + - LP: #1017717, #225 + + [ Paolo Pisati ] + + * SAUCE: Revert "Fix OMAP EHCI suspend/resume failure (i693)" + - LP: #1017718 + * [Config] Disable generic USB_EHCI_HCD_PLATFORM on omap3 + + [ Seth Forshee ] + + * SAUCE: (drop after 3.5) brcm80211: smac: don't set up tx power limits + during initialization + - LP: #950320 + * SAUCE: (drop after 3.5) brcm80211: smac: always set channel specified + by mac80211 + - LP: #950320 + * SAUCE: (drop after 3.5) brcm80211: smac: remove unused code for 40MHz + channels + - LP: #950320 + * SAUCE: (drop after 3.5) brcm80211: smac: clean up channel.c + - LP: #950320 + * SAUCE: (drop after 3.5) brcm80211: smac: inform mac80211 of the X2 + regulatory domain + - LP: #950320 + * SAUCE: (drop after 3.5) brcm80211: smac: enable/disable radio on + regulatory updates + - LP: #950320 + * SAUCE: (drop after 3.5) brcm80211: smac: use mac80211 channel data for + tx power limits + - LP: #950320 + * SAUCE: (drop after 3.5) brcm80211: smac: don't validate channels + against internal regulatory data + - LP: #950320 + * SAUCE: (drop after 3.5) brcm80211: smac: use current regulatory domain + when checking whether OFDM is allowed + - LP: #950320 + + [ Tim Gardner ] + + * [Config] Enable CONFIG_CGROUPS for highbank + - LP: #1014692 + * [Config] FB_OMAP*=y and PANEL_TFP410=y + + [ Upstream Kernel Changes ] + + * rebase to v3.5-rc4 + + -- Leann Ogasawara Tue, 26 Jun 2012 06:21:05 -0700 + +linux (3.5.0-1.1) quantal-proposed; urgency=low + + [ Andy Whitcroft ] + + * [Config] highbank -- enable CONFIG_RFKILL=y and CONFIG_CAN=m + + [ Leann Ogasawara ] + + * Rebase to v3.5-rc1 + * [Config] Remove USB_DEVICEFS from the config enforcer + * [Config] Updateconfigs after rebase to v3.5-rc1 + * [Config] Temporarily disable CONFIG_MACH_NOKIA_RX51 on arm + * [Config] Temporarily disable CONFIG_TOUCHSCREEN_EETI on arm + * [Config] Temporarily disable CONFIG_TOUCHSCREEN_EGALAX on arm + * [Config] Temporarily disable CONFIG_EZX_PCAP on arm + * [Config] Temporarily disable CONFIG_LIS3L02DQ on arm + * [Config] Temporarily disable CONFIG_TI_CPSW on arm + * [Config] Temporarily disable CONFIG_GPIO_EM on arm + * [Config] Temporarily disable CONFIG_SERIAL_8250_EM on armhf + * [Config] Temporarily disable CONFIG_STMMAC_ETH on armhf + * [Config] Temporarily disable CONFIG_HW_RANDOM_ATMEL on armhf + * Rebase to v3.5-rc2 + * [Config] Updateconfigs after rebase to v3.5-rc2 + * [Config] Temporarily disable CONFIG_MV643XX_ETH on powerpc + * Rebase to v3.5-rc3 + * [Config] Updateconfigs after rebase to v3.5-rc3 + + [ Paul Mundt ] + + * SAUCE: fix bug.h's inclusion of kernel.h + + [ Stefan Bader ] + + * SAUCE: Fix compile failures of dm-raid45 + * [Config] Enable dm-raid45 + * Move dependency on crda to extra package + - LP: #657901 + * SAUCE: Mask CR4 writes on older Xen hypervisors + + [ Upstream Kernel Changes ] + + * rebase to v3.5-rc3 + - LP: #993162 + - LP: #925577 + * rebase to v3.5-rc2 + * rebase to v3.5-rc1 + - LP: #955892 + - LP: #978038 + - LP: #987371 + - LP: #929545 + - LP: #942316 + - LP: #903853 + + -- Leann Ogasawara Fri, 08 Jun 2012 14:28:46 -0700 + +linux (3.4.0-5.11) quantal-proposed; urgency=low + + [ Leann Ogasawara ] + + * [Config] Disable CONFIG_ARM_LPAE + - LP: #1009061 + + [ Oleksij Rempel ] + + * SAUCE: b43: do not call ieee80211_unregister_hw if we are not registred + - LP: #1008905 + + [ Paolo Pisati ] + + * [Config] omap3: MFD_OMAP_USB_HOST is usb host in omap2+. + - LP: #1009061 + + -- Leann Ogasawara Tue, 05 Jun 2012 08:06:28 -0700 + +linux (3.4.0-4.10) quantal; urgency=low + + [ Leann Ogasawara ] + + * Temporarily disable ABI and module check + + -- Leann Ogasawara Mon, 04 Jun 2012 20:27:31 -0700 + +linux (3.4.0-4.9) quantal; urgency=low + + [ Andy Whitcroft ] + + * [Config] fix config split to avoid the shared config + * [Config] updateconfigs following split config fix + * [Config] linux-image-extras needs full postinst + * [Config] CONFIG_BLK_DEV_NVME commonise across architectures + * [Config] CONFIG_HP_WATCHDOG enable as module + * [Config] CONFIG_PDC_ADMA is not boot essential + * [Config] CONFIG_XEN_ACPI_PROCESSOR should be enabled on x86 + * [Config] CONFIG_VT6655/CONFIG_VT6656=m + * [Config] CONFIG_TRANZPORT=m commonise + * [Config] CONFIG_R3964=m commonise + * [Config] CONFIG_SCSI_DH=m commonise + * [Config] CONFIG_SCSI_IBMVSCSIS=m commonise + * [Config] CONFIG_AMD_PHY=y phys are not autoloadable + * [Config] CONFIG_SCSI_QLA_ISCSI=m commonise + * [Config] CONFIG_SCSI_SPI_ATTR=m commonise + * [Config] CONFIG_USB_SN9C102 is deprecated disable + * [Config] CONFIG_USB_SI470X=m commonise + * [Config] CONFIG_USB_ET61X251=m commonise + * [Config] CONFIG_RTS_PSTOR=m commonise + * [Config] CONFIG_SCANLOG=m commonise + * [Config] CONFIG_SCSI_SYM53C8XX_2=m commonise + * [Config] CONFIG_SM_FTL=m commonise + * [Config] CONFIG_SOLO6X10=m commonise + * [Config] CONFIG_SND_PCM_OSS=n using pulseaudio emulation instead + * [Config] CONFIG_SPI_DESIGNWARE=m commonise + * [Config] CONFIG_SPI_SPIDEV=m commonise + * [Config] CONFIG_TABLET_USB_WACOM=m commonise + * [Config] CONFIG_TPS65010=m commonise + * [Config] CONFIG_STE10XP=y commonise + * [Config] CONFIG_X25_ASY=m commonise + * [Config] CONFIG_USB_MON=m commonise + * [Config] CONFIG_VME_BUS=m commonise + * [Config] CONFIG_W35UND=m commonise + * [Config] -CONFIG_TCG_TPM=y commonise + * [Config] highbank -- commonise filesystems + * [Config] highbank -- commonise subsystems + * [Config] highbank -- commonise network protocols + * [Config] highbank -- commonise input drivers + * [Config] highbank -- commonise CRYPTO options + * [Config] highbank -- commonise HID options + * [Config] highbank -- commonise sensors options + * [Config] highbank -- commonise EXPORTFS/FHANDLE + * [Config] highbank -- commonise CONFIG_CRYPTO_LZO + * [Config] highbank -- commonise ENCRYPTED_KEYS + * [Config] highbank -- commonise CONFIG_ATALK + * [Config] highbank -- commonise INET/INET6 + * [Config] highbank -- commonise NLS + * [Config] highbank -- commonise BLK/CHR + * [Config] highbank -- CONFIG_EXT2_FS=y boot essential on highbank + * [Config] highbank -- commonise INET/INET6 part 2 + * [Config] highbank -- commonise PHY settings + * [Config] highbank -- commonise CRC settings + * [Config] highbank -- commonise BINFMT settings + * [Config] highbank -- commonise DM settings + * [Config] highbank -- commonise RTC_DRV settings + * [Config] highbank -- commonise KEYBOARD/MOUSE settings + * [Config] highbank -- commonise USB settings + * [Config] highbank -- commonise GPIO settings + * [Config] highbank -- commonise I2C settings + * [Config] highbank -- commonise numerous subsystem selectors + * [Config] highbank -- commonise A-C modules missmatches + * [Config] highbank -- commonise D-F modules missmatches + * [Config] CONFIG_AUDIT_LOGINUID_IMMUTABLE incompatible with upstart + * [Config] highbank -- commonise G-I modules missmatches + * [Config] highbank -- commonise J-L modules missmatches + * [Config] highbank -- commonise M modules missmatches + * [Config] highbank -- commonise N-P modules missmatches + * [Config] highbank -- commonise Q-R modules missmatches + * [Config] highbank -- commonise S modules missmatches -- part 1 + * [Config] highbank -- commonise S modules missmatches -- part 2 + * [Config] highbank -- commonise T modules missmatches + * [Config] highbank -- commonise U-Z modules missmatches + + [ Ike Panhc ] + + * [Config] add highbank flavour + - LP: #1000831 + + [ Mark Langsdorf ] + + * SAUCE: arm highbank: add support for pl320-ipc driver + - LP: #1000831 + + [ Rob Herring ] + + * SAUCE: input: add a key driver for highbank + - LP: #1000831 + * SAUCE: ARM: highbank: Add smc calls to enable/disable the L2 + - LP: #1000831 + * SAUCE: force DMA buffers to non-bufferable on highbank + - LP: #1000831 + * SAUCE: net: calxedaxgmac: fix net timeout recovery + - LP: #1000831 + + [ Tim Gardner ] + + * [Config] CONFIG_IWLWIFI_EXPERIMENTAL_MFP=n + * [Config] CONFIG_PCI_REALLOC_ENABLE_AUTO=y + * [Config] CONFIG_CIFS_EXPERIMENTAL has disappeared + * [Config] Homogenize CIFS configs across all arches + * [Config] armhf should not be skipabi or skipmodules + - LP: #1006913 + + -- Leann Ogasawara Mon, 04 Jun 2012 05:52:49 -0700 + +linux (3.4.0-3.8) quantal; urgency=low + + [ Andy Whitcroft ] + + * [Config] include include/generated/compile.h + - LP: #942569 + * [Config] fix up postinst to ensure we know which error is which + - LP: #1002388 + + [ Herton Ronaldo Krzesinski ] + + * SAUCE: async_populate_rootfs: fix build warnings + - LP: #1003417 + + [ John Johansen ] + + * Revert "SAUCE: AppArmor: Add the ability to mediate mount" + * SAUCE: apparmor: Add the ability to mediate mount + * SAUCE: AppArmor: basic networking rules + * SAUCE: apparmor: fix profile lookup for unconfined + - LP: #978038, #987371 + * SAUCE: apparmor: fix long path failure due to disconnected path + - LP: #955892 + + [ Mario Limonciello ] + + * SAUCE: dell-laptop: rfkill blacklist Dell XPS 13z, 15 + - LP: #901410 + + [ Stefan Bader ] + + * (config) Built-in xen-acpi-processor + + [ Tim Gardner ] + + * [Config] CONFIG_NET_DSA=m + - LP: #1004148 + * [Config] Ensure CONFIG_XEN_ACPI_PROCESSOR=y for amd64 + + -- Leann Ogasawara Fri, 25 May 2012 11:38:33 -0700 + +linux (3.4.0-3.7) quantal; urgency=low + + [ Andy Whitcroft ] + + * [Config] drop the virtual flavour in favour of a split generic et al + * [Config] enforcer -- drop IDLE enforcement + * [Config] enable CONFIG_SCSI_VIRTIO=m for amd64 + * [Config] updateconfigs following removal of -virtual + + [ Leann Ogasawara ] + + * Rebase to v3.4 + + [ Seth Forshee ] + + * [Config] disable CONFIG_B43_BCMA_EXTRA + + [ Tim Gardner ] + + * [Config] Check for extras when building udebs + * [Config] Collapsed generic-pae into generic [i386] + + [ Upstream Kernel Changes ] + + * rebase to v3.4 + + -- Leann Ogasawara Mon, 21 May 2012 07:23:47 -0700 + +linux (3.4.0-2.6) quantal; urgency=low + + [ Andy Whitcroft ] + + * Revert "ubuntu: overlayfs -- overlayfs: update touch_atime() usage" + * Revert "ubuntu: overlayfs -- overlayfs: switch from d_alloc_root() to + d_make_root()" + * Revert "ubuntu: overlayfs -- overlayfs: follow header cleanup" + * Revert "ubuntu: overlayfs -- overlayfs: apply device cgroup and + security permissions to overlay files" + * Revert "ubuntu: overlayfs -- fs: limit filesystem stacking depth" + * Revert "ubuntu: overlayfs -- overlay: overlay filesystem documentation" + * Revert "ubuntu: overlayfs -- overlayfs: implement show_options" + * Revert "ubuntu: overlayfs -- overlayfs: add statfs support" + * Revert "ubuntu: overlayfs -- overlay filesystem" + * Revert "ubuntu: overlayfs -- vfs: introduce clone_private_mount()" + * Revert "ubuntu: overlayfs -- vfs: export do_splice_direct() to modules" + * Revert "ubuntu: overlayfs -- vfs: add i_op->open()" + * Revert "ubuntu: overlayfs -- vfs: pass struct path to __dentry_open()" + * ubuntu: overlayfs -- overlayfs: add statfs support + * ubuntu: overlayfs -- inode_only_permission: export inode level + permissions checks + * ubuntu: overlayfs -- overlayfs: switch to use inode_only_permissions + + [ Erez Zadok ] + + * ubuntu: overlayfs -- overlayfs: implement show_options + + [ Miklos Szeredi ] + + * ubuntu: overlayfs -- vfs: pass struct path to __dentry_open() + * ubuntu: overlayfs -- vfs: add i_op->open() + * ubuntu: overlayfs -- vfs: export do_splice_direct() to modules + * ubuntu: overlayfs -- vfs: introduce clone_private_mount() + * ubuntu: overlayfs -- overlay filesystem + * ubuntu: overlayfs -- fs: limit filesystem stacking depth + + [ Neil Brown ] + + * ubuntu: overlayfs -- overlay: overlay filesystem documentation + + [ Robin Dong ] + + * ubuntu: overlayfs -- overlayfs: fix possible leak in ovl_new_inode + * ubuntu: overlayfs -- overlayfs: create new inode in ovl_link + + [ Tim Gardner ] + + * [Config] perarch and indep tools builds need separate build directories + * Prevent upgrading a non-PAE CPU + * perf is not parallel build safe + + -- Leann Ogasawara Wed, 16 May 2012 08:43:18 -0700 + +linux (3.4.0-2.5) quantal; urgency=low + + [ Andy Whitcroft ] + + * [Config] perarch and indep tools builds need separate build directories + + [ Tim Gardner ] + + * Prevent upgrading a non-PAE CPU + * [Config] build debug + * [Config] perf tools are not parallel build safe + + -- Leann Ogasawara Tue, 15 May 2012 11:37:53 -0700 + +linux (3.4.0-2.4) quantal; urgency=low + + [ Leann Ogasawara ] + + * Revert "SAUCE: fsam7400: use UMH_WAIT_PROC consistently" + * Revert "ubuntu: fsam7400 select CHECK_SIGNATURE and depend on X86" + * Revert "ubuntu: fsam7400: Depend on CHECK_SIGNATURE" + * Revert "ubuntu: fsam7400 -- Cleanup Makefile" + * Revert "ubuntu: fsam7400 -- kill switch for Fujitsu Siemens Amilo M + 7400" + * Revert "ubuntu: omnibook: fix source file newline" + * Revert "ubuntu: omnibook -- update BOM" + * Revert "SAUCE: Make CONFIG_{OMNIBOOK, AVERATEC_5100P, PACKARDBELL_E5} + depend on X86" + * Revert "ubuntu: omnibook -- Added missing BOM file" + * Revert "ubuntu: omnibook -- support Toshiba (HP) netbooks" + * Revert "ubuntu: nx-emu - i386: mmap randomization for executable + mappings" + * Revert "SAUCE: disable_nx should not be in __cpuinitdata section for + X86_32" + * Revert "ubuntu: nx-emu - i386: NX emulation" + * Revert "ubuntu: rfkill drivers -- version 1.3" + * Temporarily disable module check + * [Config] Remove CONFIG_FSAM7400 + * [Config] Remove CONFIG_OMNIBOOK + * [Config] Update configs + * Rebase to v3.4-rc7 + * SAUCE: genirq: export handle_edge_irq() and irq_to_desc() + + [ Tim Gardner ] + + * Updated generic-pae description + * Rebase to v3.4-rc6 + * install-tools depends on build targets + + [ Upstream Kernel Changes ] + + * kconfig: in debug mode some 0 length message prints occur + * rebase to v3.4-rc7 + * rebase to v3.3-rc6 + + -- Leann Ogasawara Mon, 14 May 2012 08:22:56 -0700 + +linux (3.4.0-1.3) quantal; urgency=low + + [ Andy Whitcroft ] + + * [Config] control.stub is an intermediate product not a dependancy + - LP: #992414 + + [ Leann Ogasawara ] + + * remove i386 generic from getabis + + [ Upstream Kernel Changes ] + + * (pre-stable) b43: only reload config after successful initialization + - LP: #950295 + + -- Leann Ogasawara Wed, 02 May 2012 09:48:14 -0700 + +linux (3.4.0-1.2) quantal; urgency=low + + [ Andy Whitcroft ] + + * [Config] add build depends for flex, bison and pkg-config + + -- Andy Whitcroft Tue, 01 May 2012 13:15:41 +0100 + +linux (3.4.0-1.1) quantal; urgency=low + + [ Andy Whitcroft ] + + * ubuntu: overlayfs -- overlayfs: apply device cgroup and security + permissions to overlay files + - LP: #915941, #918212 + - CVE-2012-0055 + + [ Leann Ogasawara ] + + * Open Q + * Rebase to v3.4-rc5 + * [Config] Temporarily disable CONFIG_TOUCHSCREEN_EETI on arm + * [Config] Temporarily disable CONFIG_TOUCHSCREEN_EGALAX on arm + * [Config] Temporarily disable CONFIG_EZX_PCAP on arm + * [Config] Temporarily disable CONFIG_MFD_OMAP_USB_HOST on arm + * [Config] Temporarily disable CONFIG_LIS3L02DQ on arm + * [Config] Temporarily disable CONFIG_USB_EHCI_HCD_PLATFORM on arm + * [Config] Temporarily disable CONFIG_TI_CPSW on arm + * [Config] Temporarily disable CONFIG_AX88796 on arm + + [ Upstream Kernel Changes ] + + * vfs: pass struct path to __dentry_open() + * vfs: add i_op->open() + * vfs: export do_splice_direct() to modules + * vfs: introduce clone_private_mount() + * overlay filesystem + * overlayfs: add statfs support + * overlayfs: implement show_options + * overlay: overlay filesystem documentation + * fs: limit filesystem stacking depth + * overlayfs: follow header cleanup + * overlayfs: switch from d_alloc_root() to d_make_root() + * overlayfs: update touch_atime() usage + * rebase to v3.4-rc5 + - LP: #950490 + * rebase to v3.4-rc4 + * rebase to v3.4-rc3 + * rebase to v3.4-rc2 + * rebase to v3.4-rc1 + * rebase to v3.3 + * rebase to v3.3-rc7 + * rebase to v3.3-rc6 + * rebase to v3.3-rc5 + * rebase to v3.3-rc4 + - LP: #900802 + - LP: #930842 + * rebase to v3.3-rc3 + - LP: #924320 + - LP: #923316 + - LP: #923409 + - LP: #918254 + * rebase to v3.3-rc2 + * rebase to v3.3-rc1 + - LP: #795823 + - LP: #909419 + - LP: #910792 + - LP: #878701 + - LP: #724831 + + -- Leann Ogasawara Wed, 25 Jan 2012 06:50:04 -0800 + +linux (3.2.0-10.18) precise; urgency=low + + [ Tim Gardner ] + + * SAUCE: ecryptfs: Print inode on metadata error + + [ Upstream Kernel Changes ] + + * Revert "proc: enable writing to /proc/pid/mem" + - LP: #919115 + - CVE-2012-0056 + * (pre-stable) ALSA: HDA: Use LPIB position fix for Macbook Pro 7, 1 + - LP: #909419 + + -- Andy Whitcroft Tue, 24 Jan 2012 10:15:12 +0000 + +linux (3.2.0-10.17) precise; urgency=low + + [ Andy Whitcroft ] + + * Revert "SAUCE: overlayfs -- fs: limit filesystem stacking depth" + * Revert "SAUCE: overlayfs -- overlay: overlay filesystem documentation" + * Revert "SAUCE: overlayfs -- overlayfs: implement show_options" + * Revert "SAUCE: overlayfs -- overlayfs: add statfs support" + * Revert "SAUCE: overlayfs -- overlay filesystem" + * Revert "SAUCE: overlayfs -- vfs: introduce clone_private_mount()" + * Revert "SAUCE: overlayfs -- vfs: export do_splice_direct() to modules" + * Revert "SAUCE: overlayfs -- vfs: add i_op->open()" + * ensure debian/ is not excluded from git by default + * add new scripting to handle buglinks in rebases + * ubuntu: overlayfs -- overlayfs: add statfs support + * ubuntu: overlayfs -- overlayfs: apply device cgroup and security + permissions to overlay files + - LP: #915941, #918212 + - CVE-2012-0055 + + [ Erez Zadok ] + + * ubuntu: overlayfs -- overlayfs: implement show_options + + [ Leann Ogasawara ] + + * Revert "SAUCE: dmar: disable if ricoh multifunction detected" + * [Config] Disable CONFIG_INTEL_IOMMU_DEFAULT_ON + - LP: #907377, #911236 + * [Config] Enable CONFIG_IRQ_REMAP + + [ Miklos Szeredi ] + + * ubuntu: overlayfs -- vfs: pass struct path to __dentry_open() + * ubuntu: overlayfs -- vfs: add i_op->open() + * ubuntu: overlayfs -- vfs: export do_splice_direct() to modules + * ubuntu: overlayfs -- vfs: introduce clone_private_mount() + * ubuntu: overlayfs -- overlay filesystem + * ubuntu: overlayfs -- fs: limit filesystem stacking depth + + [ Neil Brown ] + + * ubuntu: overlayfs -- overlay: overlay filesystem documentation + + [ Upstream Kernel Changes ] + + * (pre-stable) x86/PCI: amd: factor out MMCONFIG discovery + - LP: #647043 + * (pre-stable) PNP: work around Dell 1536/1546 BIOS MMCONFIG bug that + breaks USB + - LP: #647043 + + -- Leann Ogasawara Mon, 16 Jan 2012 07:10:08 -0800 + +linux (3.2.0-9.16) precise; urgency=low + + [ Andy Whitcroft ] + + * [Config] Enable numerous CONFIG_VIDEO_* cards on ARM + * [Config] pull ARM sound modules =m + * [Config] CONFIG_RTC_DRV_TEST is for testing only + * [Config] CONFIG_USB_DUMMY_HCD is testing only + * [Config] CONFIG_USB_FILE_STORAGE is deprecated + + [ Leann Ogasawara ] + + * Revert "[Config] Temporarily disable CONFIG_CAN_TI_HECC on armel" + * [Config] Enable CONFIG_HW_RANDOM_PASEMI=m + * [Config] Enable CONFIG_MMC_TMIO=m + * [Config] Enable CONFIG_MTD_NAND_FSL_ELBC=m + * [Config] Enable CONFIG_ISI=m + * [Config] Enable CONFIG_MMC=y + * [Config] Enable CONFIG_LIRC_PARALLEL=m + * [Config] Enable CONFIG_MAC_EMUMOUSEBTN=m + * [Config] Enable CONFIG_CHR_DEV_SG=y + * [Config] Enable CONFIG_GPIO_PCA953X=m + * [Config] Enable CONFIG_GPIO_TWL4030=m + * [Config] Enable CONFIG_INET_DIAG=m + * [Config] Enable CONFIG_NLS_ISO8859_1=m + * [Config] Enable CONFIG_NVRAM=m + * [Config] Enable CONFIG_SLIP=m + * [Config] Enable CONFIG_PC300TOO=m + * [Config] Enable CONFIG_TUN=y + * [Config] Enable CONFIG_NET_CLS_CGROUP=m + * [Config] Enable CONFIG_THERMAL=y + * [Config] Enable CONFIG_PPP=y + * [Config] Enable CONFIG_PCI_STUB=m + * Rebase to v3.2.1 + * [Config] Enable CONFIG_RTL8192E=m + * [Config] Enable CONFIG_RTS5139=m + + [ Stefan Bader ] + + * [Config] Make CONFIG_VIRTIO_(NET|BLK)=y + + [ Upstream Kernel Changes ] + + * ARM: restart: add restart hook to machine_desc record + * ARM: restart: allow platforms more flexibility specifying restart mode + * ARM: restart: move reboot failure handing into machine_restart() + * ARM: restart: remove argument to setup_mm_for_reboot() + * ARM: 7159/1: OMAP: Introduce local common.h files + * ARM: restart: only perform setup for restart when soft-restarting + * ARM: 7189/1: OMAP3: Fix build break in cpuidle34xx.c because of irq + function + * ARM: idmap: populate identity map pgd at init time using .init.text + * ARM: suspend: use idmap_pgd instead of suspend_pgd + * ARM: proc-*.S: place cpu_reset functions into .idmap.text section + * ARM: idmap: use idmap_pgd when setting up mm for reboot + * ARM: head.S: only include __turn_mmu_on in the initial identity mapping + * ARM: SMP: use idmap_pgd for mapping MMU enable during secondary booting + * ARM: 7194/1: OMAP: Fix build after a merge between v3.2-rc4 and ARM + restart changes + * ARM: lib: add call_with_stack function for safely changing stack + * ARM: reset: implement soft_restart for jumping to a physical address + * ARM: stop: execute platform callback from cpu_stop code + * ARM: kexec: use soft_restart for branching to the reboot buffer + * ARM: restart: omap: use new restart hook + * topdown mmap support + - LP: #861296 + + [ Upstream Kernel Changes ] + + * Rebase to v3.2.1 + + -- Leann Ogasawara Fri, 13 Jan 2012 20:32:08 +0100 + +linux (3.2.0-8.15) precise; urgency=low + + [ Leann Ogasawara ] + + * [Config] Disable CONFIG_ACPI_PROCFS + * Remove server from getabis + * Temporarily disable module check + * [Config] Disable CONFIG_MTD_TESTS + * [Config] Disable CONFIG_X86_E_POWERSAVER + * [Config] Set CONFIG_ARCNET=m + * [Config] Enable CONFIG_ATM_DUMMY=m + * [Config] Enable CONFIG_BLK_DEV_MD=y + * ubuntu: fsam7400 select CHECK_SIGNATURE and depend on X86 + * [Config] Enable CONFIG_BLK_DEV_SD=y + * [Config] Enable CONFIG_BLK_DEV_SR=y + * [Config] Enable CONFIG_BLK_DEV_UB=m + * [Config] Enable CONFIG_COPS=m + * [Config] Enable CONFIG_DVB_USB_EC168=m + * [Config] Enable CONFIG_ENC28J60=m + * [Config] Enable CONFIG_FB_UVESA=m + * [Config] Enable CONFIG_FB_ATY=m + * [Config] Enable CONFIG_BROADCOM_PHY=y + * [Config] Enable CONFIG_CICADA_PHY=y + * [Config] Enable CONFIG_DAVICOM_PHY=y + * [Config] Enable CONFIG_ICPLUS_PHY=y + * [Config] Enable CONFIG_LSI_ET1011C_PHY=y + * [Config] Enable CONFIG_LXT_PHY=y + * [Config] Enable CONFIG_MARVELL_PHY=y + * [Config] Enable CONFIG_NATIONAL_PHY=y + * [Config] Enable CONFIG_QSEMI_PHY=y + * [Config] Enable CONFIG_SMSC_PHY=y + * [Config] Enable CONFIG_VITESSE_PHY=y + * Add 3w-sas to scsi-modules + - LP: #776542 + + [ Mathieu Trudel-Lapierre ] + + * SAUCE: ipv6: make the net.ipv6.conf.all.use_tempaddr sysctl propagate + to interface settings + + [ Paolo Pisati ] + + * Revert "SAUCE: omap3: beagle: if rev unknown, assume xM revision C" + - LP: #912199 + * Revert "SAUCE: omap3: beagle: detect new xM revision B" + - LP: #912199 + * Revert "SAUCE: omap3: beaglexm: fix DVI initialization" + - LP: #912199 + + [ Upstream Kernel Changes ] + + * Bluetooth: Add support for BCM20702A0 [0a5c:21e3] + - LP: #906832 + + -- Leann Ogasawara Fri, 06 Jan 2012 10:02:03 -0800 + +linux (3.2.0-8.14) precise; urgency=low + + [ Andy Whitcroft ] + + * [Config] enable CONFIG_SND_USB_6FIRE + - LP: #912197 + * rebase to mainline v3.2 final release + * updateconfigs following rebase to v3.2 final + * ubuntu: AUFS -- add BOM and automated update script + * ubuntu: AUFS -- include the aufs_types.h file in linux-libc-headers + - LP: #684666 + * ubuntu: AUFS -- update aufs-update to track new locations of headers + * ubuntu: AUFS -- clean up the aufs updater and BOM + * ubuntu: AUFS -- documentation on updating aufs2 + * ubuntu: AUFS -- aufs3-base.patch + * ubuntu: AUFS -- aufs3-standalone.patch + * ubuntu: AUFS -- fix undefined __devcgroup_inode_permission + * ubuntu: AUFS -- fix undefined security_path_link + * ubuntu: AUFS -- update to 4cf5db36bcd9748e8e7270022f295f84d1fc2245 + * ubuntu: AUFS -- updateconfigs following update + * ubuntu: AUFS -- suppress benign plink warning messages + - LP: #621195 + * ubuntu: AUFS -- enable in config and makefile + * ubuntu: AUFS -- disable in favor of overlayfs + * [Config] linux-virtual -- should include the extX modules + - LP: #912308 + + [ Tyler Hicks ] + + * SAUCE: eCryptfs: Improve statfs reporting + - LP: #885744 + + [ Upstream Kernel Changes ] + + * rebase to upstream v3.2 + + -- Leann Ogasawara Mon, 26 Dec 2011 20:24:30 -0800 + +linux (3.2.0-7.13) precise; urgency=low + + [ Upstream Kernel Changes ] + + * rebase to upstream 3.2-rc7 + + -- Leann Ogasawara Mon, 19 Dec 2011 09:14:34 -0800 + +linux (3.2.0-6.12) precise; urgency=low + + [ Upstream Kernel Changes ] + + * rebase to upstream v3.2-rc6 + + -- Leann Ogasawara Fri, 16 Dec 2011 10:19:02 -0800 + +linux (3.2.0-5.11) precise; urgency=low + + [ Andy Whitcroft ] + + * enforcer -- allow arch and flavour predicates to take lists + * enforcer -- simplify armel/armhf specific options + * enforcer -- fix incorrectly specified flavour matches + + [ Leann Ogasawara ] + + * [Config] Disable IRQ_REMAP + * [Config] Enable CONFIG_SENSORS_LM95245=m + * [Config] Enable CONFIG_SENSORS_MAX1668=m + * [Config] Enable CONFIG_SENSORS_NTC_THERMISTOR=m + * [Config] Enable CONFIG_SENSORS_MAX6639=m + * [Config] Enable CONFIG_SENSORS_MAX6642=m + * [Config] Enable CONFIG_SENSORS_LINEAGE=m + * [Config] Enable CONFIG_CRYPTO_SALSA20=m + * [Config] Enable CONFIG_PATA_TOSHIBA=m + * [Config] Enable CONFIG_POHMELFS=m + * [Config] Enable CONFIG_NET_PACKET_ENGINE=y + * [Config] Enable CONFIG_PATA_OPTI=m + * add overlayfs to virtual inclusion list + - LP: #903897 + * add veth to virtual inclusion list + - LP: #903897 + * SAUCE: resolve WARNING: at drivers/block/floppy.c:2929 do_fd_request + + [ Paolo Pisati ] + + * [Config] DEFAULT_MMAP_MIN_ADDR=32k on arm + - LP: #903346 + + [ Tim Gardner ] + + * [Config] CONFIG_LOCKUP_DETECTOR=y + - LP: #903615 + + [ Upstream Kernel Changes ] + + * rebase to upstream 55b02d2f + + -- Leann Ogasawara Mon, 12 Dec 2011 07:08:10 -0800 + +linux (3.2.0-4.10) precise; urgency=low + + [ Kyle McMartin ] + + * SAUCE: dmar: disable if ricoh multifunction detected + - LP: #894070 + + [ Seth Forshee ] + + * SAUCE: dell-wmi: Demote unknown WMI event message to pr_debug + - LP: #581312 + + [ Tim Gardner ] + + * Start new release, Bump ABI, rebase to 3.2-rc5 + + [ Leann Ogasawara ] + + * [Config] Enable CONFIG_SENSORS_AK8975=m + + -- Tim Gardner Sat, 10 Dec 2011 08:57:04 -0700 + +linux (3.2.0-3.9) precise; urgency=low + + [ Andy Whitcroft ] + + * SAUCE: ext4: correct partial write discard size calculation + - LP: #894768 + + [ Leann Ogasawara ] + + * Revert "SAUCE: x86, microcode, AMD: Restrict microcode reporting" + - LP: #892615 + + [ Matthew Garrett ] + + * SAUCE: pci: Rework ASPM disable code + + [ Upstream Kernel Changes ] + + * x86: Fix boot failures on older AMD CPU's + - LP: #892615 + * EHCI : Fix a regression in the ISO scheduler + - LP: #899165 + + -- Leann Ogasawara Mon, 05 Dec 2011 10:37:36 -0800 + +linux (3.2.0-3.8) precise; urgency=low + + [ Andy Whitcroft ] + + * armhf -- add d-i configuration + * armhf -- disable ABI checks for armhf + * armhf -- add arch to getabis config + + -- Andy Whitcroft Sat, 03 Dec 2011 14:22:52 +0000 + +linux (3.2.0-3.7) precise; urgency=low + + [ Stefan Bader ] + + * SAUCE: x86/paravirt: PTE updates in k(un)map_atomic need to be + synchronous, regardless of lazy_mmu mode + - LP: #854050 + + [ Tim Gardner ] + + * rebase to v3.2-rc4 + + -- Leann Ogasawara Fri, 02 Dec 2011 11:53:56 -0800 + +linux (3.2.0-2.6) precise; urgency=low + + [ Andy Whitcroft ] + + * armhf -- fix omap flavour to build on armhf + * [Config] CONFIG_PATA_MACIO=y to fix MAC qemu boot + + [ Borislav Petkov ] + + * SAUCE: x86, microcode, AMD: Restrict microcode reporting + - LP: #892615 + + [ Colin Watson ] + + * Add pata_macio to pata-modules + + [ Tim Gardner ] + + * [Config] Prefer crda over wireless-crda + * [Config] Fix virtual inclusion list. + - LP: #897795 + + -- Leann Ogasawara Wed, 30 Nov 2011 06:09:35 -0800 + +linux (3.2.0-2.5) precise; urgency=low + + [ Paolo Pisati ] + + * [Config] PANEL_DVI=y + + -- Leann Ogasawara Mon, 28 Nov 2011 09:13:24 -0800 + +linux (3.2.0-2.4) precise; urgency=low + + [ Andy Whitcroft ] + + * rebase to v3.2-rc3 + + [ Leann Ogasawara ] + + * Revert "SAUCE: xen: Do not use pv spinlocks on HVM" + * Revert "fix ERROR: __devcgroup_inode_permission undefined" + * Revert "olpc_dcon_xo_1_5 needs delay.h" + * Revert "olpc_dcon_xo_1 needs delay.h" + * rebase to 6fe4c6d4 + * [Config] updateconfigs after rebase to 6fe4c6d4 + + [ Tim Gardner ] + + * [Config] Replace wireless-crda with crda,wireless-regdb + - LP: #856421 + * [Config] Relax the dependencies on crda + + [ Upstream Kernel Changes ] + + * (pre-stable) HID: bump maximum global item tag report size to 96 bytes + - LP: #724831 + * Ubuntu: remove coreutils|fileutils package dependency + - LP: #892814 + * iio: iio_event_getfd -- fix ev_int build failure + + [ Upstream Kernel Changes ] + + * Rebase to v3.2-rc3 + + -- Andy Whitcroft Thu, 24 Nov 2011 16:20:45 +0000 + +linux (3.2.0-1.3) precise; urgency=low + + [ Upstream Kernel Changes ] + + * Ubuntu: Add ext2 to fs-core-modules + - LP: #893395 + + -- Leann Ogasawara Mon, 21 Nov 2011 20:42:33 -0800 + +linux (3.2.0-1.2) precise; urgency=low + + [ Andy Whitcroft ] + + * [Config] enable CONFIG_NFC and associated devices + * SAUCE: allow brcmsmac and b43 to both build + + [ Soren Hansen ] + + * Add ixgbe driver to d-i + - LP: #891969 + + -- Leann Ogasawara Mon, 21 Nov 2011 08:33:46 -0800 + +linux (3.2.0-1.1) precise; urgency=low + [ Andy Whitcroft ] + + * armhf -- enable armhf and create the first flavours + * SAUCE: ensure root is ready before running usermodehelpers in it + * [Config] enforcer -- ensure CONFIG_FAT_FS is built-in on arm + + [ Leann Ogasawara ] + + * Temporarily ignore module check + * [Config] Enable PCI_IOV on powerpc + * [Config] Temporarily disable CONFIG_PASEMI_MAC on powerpc + * rebase to v3.2-rc2 + * SAUCE: include for cpuidle34xx arm build + * SAUCE: include for linux/mtd/map.h arm build + * SAUCE: include and for mmc_core arm build + * SAUCE: select ARM_AMBA if OMAP3_EMU + * [Config] updateconfigs after select ARM_AMBA + * [Config] Temporarily disable CONFIG_KVM_BOOK3S_32 on powerpc + * [Config] Enable CONFIG_EXT2_FS=m + * [Config] Build in CONFIG_SATA_AHCI=y + * Resolve linux-image-extra's install dependency + + [ Seth Forshee ] + + * [Config] Enable EVENT_POWER_TRACING_DEPRECATED=y for powertop + * SAUCE: (drop after 3.2) Input: ALPS - move protocol information to + Documentation + * SAUCE: (drop after 3.2) Input: ALPS - add protocol version field in + alps_model_info + * SAUCE: (drop after 3.2) Input: ALPS - remove assumptions about packet + size + * SAUCE: (drop after 3.2) Input: ALPS - add support for protocol versions + 3 and 4 + * SAUCE: (drop after 3.2) Input: ALPS - add semi-MT support for v3 + protocol + * SAUCE: (drop after 3.2) Input: ALPS - add documentation for protocol + versions 3 and 4 + + [ Stefan Bader ] + + * [Config] Built-in xen-netfront and xen-blkfront + * Fix build of dm-raid45 and re-enable it + + [ Tim Gardner ] + + * [Config] CONFIG_USB_XHCI_HCD=y + - LP: #886167 + * [Config] CONFIG_R6040=m + - LP: #650899 + * SAUCE: Add a new entry (413c:8197) to Bluetooth USB device ID table + - LP: #854399 + * [Config] Consolidated amd64 server flavour into generic + * [Config] updateconfigs after rebase to 3.2-rc1 + * [Config] Disabled dm-raid4-5 + * [Config] Disabled ndiswrapper + * [Config] Disable vt6656 + * [Config] exclude ppp-modules for virtual flavour + * [Config] CONFIG_MEMSTICK_R592=m + - LP: #238208 + + [ Upstream Kernel Changes ] + + * CHROMIUM: seccomp_filter: new mode with configurable syscall filters + - LP: #887780 + * CHROMIUM: seccomp_filter: add process state reporting + - LP: #887780 + * CHROMIUM: seccomp_filter: Document what seccomp_filter is and how it + works. + - LP: #887780 + * CHROMIUM: x86: add HAVE_SECCOMP_FILTER and seccomp_execve + - LP: #887780 + * CHROMIUM: arm: select HAVE_SECCOMP_FILTER + - LP: #887780 + * CHROMIUM: seccomp_filters: move to btrees + * CHROMIUM: enable CONFIG_BTREE + * CHROMIUM: seccomp_filter: kill NR_syscall references + * CHROMIUM: seccomp_filters: guard all ftrace wrapper code + * CHROMIUM: seccomp_filters: clean up warnings; kref mistake + * CHROMIUM: seccomp_filter: remove "skip" from copy and add drop helper + * CHROMIUM: seccomp_filter: allow CAP_SYS_ADMIN management of execve + * CHROMIUM: seccomp_filter: inheritance documentation + * CHROMIUM: seccomp_filter: make inherited filters composable + * CHROMIUM: Fix seccomp_t compile error + - LP: #887780 + * CHROMIUM: Fix kref usage + - LP: #887780 + * CHROMIUM: enable CONFIG_SECCOMP_FILTER and CONFIG_HAVE_SECCOMP_FILTER + * rebase to v3.2-rc2 + + -- Leann Ogasawara Mon, 31 Oct 2011 09:24:39 -0400 + +linux (3.1.0-2.3) precise; urgency=low + + [ Tim Gardner ] + + * Add postinit and postrm scripts to the extras package + - LP: #882120 + + -- Leann Ogasawara Fri, 28 Oct 2011 12:48:33 -0700 + +linux (3.1.0-2.2) precise; urgency=low + + [ Andy Whitcroft ] + + * debian: add locking to protect debian/files from parallel update + + [ Leann Ogasawara ] + + * rebase to v3.1 + + [ Upstream Kernel Changes ] + + * rebase to v3.1 + + -- Leann Ogasawara Wed, 19 Oct 2011 07:12:38 -0700 + +linux (3.1.0-1.1) precise; urgency=low + + [ Andiry Xu ] + + * SAUCE: (drop during 3.2 merge) xHCI: AMD isoc link TRB chain bit quirk + - LP: #872811 + + [ Andy Whitcroft ] + + * Revert "ubuntu: compcache -- follow changes to bd_claim/bd_release" + - LP: #832694 + * Revert "ubuntu: compcache -- version 0.5.3" + - LP: #832694 + * [Config] standardise CONFIG_NETFILTER_XT_TARGET_TCPOPTSTRIP=m + * [Config] Enable CONFIG_MACVTAP=m + - LP: #822601 + * record the compiler in the ABI and check for inconsistant builds + * [Config] move ECRYPT_FS back to =y for all architectures + - LP: #827197 + * [Config] enable CONFIG_DRM_VMWGFX=m + - LP: #698009 + * [Config] re-fix ECRYPT_FS=y + - LP: #827197 + * enforcer -- ensure we have CONFIG_ECRYPT_FS=y + - LP: #827197 + * [Config] dropping compcache configuration options + * [Config] standardise on HZ=250 + * SAUCE: headers_install: fix #include "..." usage for userspace + - LP: #824377 + * make module-inclusion selection retain the left overs + * add a new linux-image-extras package for virtual + + [ Colin Watson ] + + * Deliver more Atheros, Ralink, and iwlagn NIC drivers to d-i + + [ edwin_rong ] + + * SAUCE: Staging: add driver for Realtek RTS5139 cardreader + - LP: #824273 + + [ Greg Kroah-Hartman ] + + * SAUCE: staging: rts5139: add vmalloc.h to some files to fix the build. + - LP: #824273 + + [ Jesse Sung ] + + * SAUCE: Unregister input device only if it is registered + - LP: #839238 + + [ Jiri Kosina ] + + * SAUCE: HID: add MacBookAir4, 2 to hid_have_special_driver[] + + [ Joshua V. Dillon ] + + * SAUCE: HID: add support for MacBookAir4,2 keyboard. + + [ Kees Cook ] + + * [Config] enable and enforce SECCOMP_FILTER on x86 + + [ Keng-Yu Lin ] + + * [Config] Enable CONFIG_RTS5139=m on i386/amd64 + - LP: #824273 + + [ Leann Ogasawara ] + + * Revert "ubuntu: overlayfs -- ovl: make lower mount read-only" + * Revert "ubuntu: overlayfs -- fs: limit filesystem stacking depth" + * Revert "ubuntu: overlayfs -- ovl: improve stack use of lookup and + readdir" + * Revert "ubuntu: overlayfs -- ovl: fix overlayfs over overlayfs" + * Revert "ubuntu: overlayfs -- overlayfs: implement show_options" + * Revert "ubuntu: overlayfs -- overlayfs: add statfs support" + * Revert "ubuntu: overlayfs -- overlay filesystem" + * Revert "ubuntu: overlayfs -- overlay: overlay filesystem documentation" + * Revert "SAUCE: ARM: OMAP: Add macros for comparing silicon revision" + * Revert "SAUCE: OMAP: DSS2: check for both cpu type and revision, rather + than just revision" + * Revert "SAUCE: OMAP: DSS2: enable hsclk in dsi_pll_init for OMAP36XX" + * Revert "ubuntu: fsam7400 disable driver" + - LP: #876030 + * rebase to v3.1-rc1 + * [Config] updateconfigs after rebase to v3.1-rc1 + * rebase to v3.1-rc2 + * [Config] Updateconfigs after rebase to v3.1-rc2 + * ubuntu: Yama - update calls to generic_permission() and + inode->i_op->permission() + * ubuntu: ndiswrapper -- remove netdev_priv macro + * ubuntu: aufs -- Temporarily disable due to build failure + * [Config] Diable INTEL_MID_PTI on armel + * [Config] Temporarily disable CONFIG_FTMAC100 on armel + * [Config] Temporarily disable CONFIG_FTGMAC100 on armel + * [Config] Temporarily disable CONFIG_CAN_TI_HECC on armel + * [Config] Temporarily disable CONFIG_VIDEO_OMAP2_VOUT on armel + * [Config] Set CONFIG_DM_MIRROR=m on amd64, i386, and arm + * [Config] Set CONFIG_DM_MULTIPATH=m on amd64, i386, and arm + * [Config] Set CONFIG_DM_SNAPSHOT=m on amd64, i386, and arm + * [Config] Enable CONFIG_EDAC_AMD8111=m on powerpc + * [Config] Enable CONFIG_EDAC_AMD8131=m on powerpc + * [Config] Enable CONFIG_EDAC_CPC925=m on powerpc + * [Config] Enable CONFIG_EDAC_PASEMI=m on powerpc + * [Config] Enable CONFIG_ECHO=m on powerpc + * [Config] Enable CONFIG_ET131X=m on powerpc + * [Config] Set CONFIG_FB_MATROX=m + * [Config] Enable CONFIG_FB_UDL=m on powerpc + * [Config] Set CONFIG_FB_VIRTUAL=n + * [Config] Enable CONFIG_FB_VGA16=m on powerpc + * [Config] Enable CONFIG_GPIO_MAX732X=m on arm + * [Config] Enable CONFIG_GPIO_PCF857X=m on arm + * [Config] Set CONFIG_HOTPLUG_PCI_FAKE=m + * [Config] Enable CONFIG_HOTPLUG_PCI=y on powerpc + * [Config] Enable CONFIG_HOTPLUG_PCI_CPCI=y on powerpc + * [Config] Enable CONFIG_HP_ILO=m on powerpc-smp + * [Config] Enable CONFIG_I2C_PASEMI=m on powerpc + * [Config] Enable CONFIG_IBM_BSR=m on powerpc + * [Config] Enable CONFIG_IBMVETH=m on powerpc + * [Config] Enable CONFIG_IDE_PHISON=m on powerpc + * [Config] Enable CONFIG_IGB=m on powerpc + * [Config] Enable CONFIG_IIO=m on powerpc + * [Config] Enable CONFIG_INFINIBAND_NES=m + * [Config] Enable CONFIG_IPMI_HANDLER=m on arm + * [Config] Enable CONFIG_IWL3945=m on powerpc + * [Config] Disable CONFIG_KVM_BOOK3S_64 + * [Config] Enable CONFIG_LAPBETHER=m on arm + * [Config] Enable CONFIG_LEDS_GPIO=m on powerpc + * [Config] Enable CONFIG_LEDS_CLEVO_MAIL=m all arch's + * [Config] Enable CONFIG_LEDS_PCA9532=m on powerpc + * [Config] Enable CONFIG_LEDS_PCA955X=m on powerpc + * [Config] Enable CONFIG_LEDS_TRIGGER_DEFAULT_ON=m on powerpc + * [Config] Set CONFIG_LEDS_TRIGGER_HEARTBEAT=m on arm and powerpc + * [Config] Set CONFIG_LEDS_TRIGGER_TIMER=m on powerpc + * [Config] Enable CONFIG_LINE6_USB=m on arm and powerpc + * [Config] Enable CONFIG_MEMSTICK=m on arm + * [Config] Enable CONFIG_MTD_AFS_PARTS=m on arm + * [Config] Enable CONFIG_MTD_ALAUDA=m on arm + * [Config] Enable CONFIG_MTD_AR7_PARTS=m on arm + * [Config] Enable CONFIG_MTD_ARM_INTEGRATOR=m on arm + * [Config] Enable CONFIG_MOXA_SMARTIO=m on powerpc + * [Config] Enable CONFIG_MTD_DATAFLASH=m on arm + * [Config] Enable CONFIG_MTD_GPIO_ADDR=m on arm + * [Config] Enable CONFIG_MTD_IMPA7=m on arm + * [Config] Enable CONFIG_MTD_NAND_GPIO=m on arm + * [Config] Enable CONFIG_MTD_NAND_NANDSIM=m on arm + * [Config] Enable CONFIG_MTD_NAND_PASEMI=m on powerpc + * [Config] Enable CONFIG_MTD_NAND_PLATFORM=m on arm + * [Config] Enable CONFIG_MTD_NAND_TMIO=m on arm + * [Config] Enable CONFIG_MTD_SST25L=m on arm + * [Config] Enable CONFIG_NET_CLS_CGROUP=y on arm + * [Config] Enable CONFIG_NET_CLS_FLOW=m on arm + * [Config] Enable CONFIG_NET_CLS_U32=m on arm + * [Config] Enable CONFIG_NET_DCCPPROBE=m on arm + * [Config] Enable CONFIG_NET_SCH_INGRESS=m on arm + * [Config] Enable CONFIG_NET_TCPPROBE=m on arm + * [Config] Enable CONFIG_PASEMI_MAC=m on powerpc + * [Config] Enable CONFIG_PATA_NS87410=m on powerpc + * [Config] Enable CONFIG_I2C_GPIO=m on powerpc64-smp + * [Config] Enable CONFIG_PANEL=m on powerpc + * [Config] Enable CONFIG_PATA_CMD640_PCI=m on powerpc + * SAUCE: x86: reboot: Make Dell Latitude E6520 use reboot=pci + - LP: #833705 + * [Config] Add CONFIG_EFI_VARS=y to the enforcer + - LP: #837332 + * [Config] Update CONFIG_EFI_VARS enforcer check + * [Config] Add aufs to virtual flavor inclusion list + - LP: #844159 + * SAUCE: x86: reboot: Make Dell Optiplex 790 use reboot=pci + - LP: #818933 + * SAUCE: x86: reboot: Make Dell Optiplex 990 use reboot=pci + - LP: #768039 + * SAUCE: x86: reboot: Make Dell Latitude E6220 use reboot=pci + - LP: #838402 + * [Config] Add igbvf to the virtual flavor inclusion list + - LP: #794570 + * [Config] Add ixgbevf to the virtual inclusion list + - LP: #872411 + * [Config] Transition -generic and -server to be identical + * rebase to v3.1-rc10 + + [ Luke Yelavich ] + + * [Config] Disable legacy IDE drivers on powerpc + + [ Ming Lei ] + + * SAUCE: fireware: add NO_MSI quirks for o2micro controller + - LP: #801719 + * SAUCE: ata_piix: make DVD Drive recognisable on systems with Intel + Sandybridge chipsets(v2) + - LP: #737388, #782389, #794642 + + [ Paolo Pisati ] + + * [Config] Compile-in vfat support for armel + - LP: #853783 + + [ Randy Dunlap ] + + * SAUCE: staging: fix rts5139 depends & build + - LP: #824273 + + [ Rene Bolldorf ] + + * SAUCE: (drop after 3.0) ideapad: Check if acpi already handle backlight + power in 'ideapad_backlight_notify_power' to avoid a page fault + + [ Seth Forshee ] + + * SAUCE: (no-up) Input: elantech - Add v3 hardware support + - LP: #681904 + * SAUCE: (drop after 3.1) usb_storage: Don't freeze in usb-stor-scan + - LP: #810020 + + [ Stefan Bader ] + + * (config) Package macvlan and macvtap for virtual + * [Config] Force perf to use libiberty for demangling + - LP: #783660 + * SAUCE: xen: Do not use pv spinlocks on HVM + - LP: #838026 + + [ Tim Gardner ] + + * [Config] Clean up tools rules + * [Config] Package x86_energy_perf_policy and turbostat + - LP: #797556 + * rebase to v3.1-rc3 + * [Config] Simplify binary-udebs dependencies + * [Config] kernel preparation cannot be parallelized + * [Config] Linearize module/abi checks + * [Config] Linearize and simplify tree preparation rules + * [Config] Build kernel image in parallel with modules + * [Config] Set concurrency for kmake invocations + * [Config] Improve install-arch-headers speed + * [Config] Fix binary-perarch dependencies + * [Config] Removed stamp-flavours target + * [Config] Serialize binary indep targets + * [Config] Use build stamp directly + * [Config] Restore prepare-% target + * rebase to v3.1-rc4 + * rebase to v3.1-rc5 + * [Config] Disable makedumpfile for i386/amd64 + * rebase to v3.1-rc6 + * [Config] Fix binary-% build target + * rebase to v3.1-rc7 + * rebase to v3.1-rc8 + * SAUCE: Add a new entry (413c:8197) to Bluetooth USB device ID table + - LP: #854399 + * [Config] Enable ftrace support in the mac80211 layer + - LP: #865171 + * rebase to v3.1-rc9 + * SAUCE: usb/core/devio.c: Check for printer class specific request + - LP: #872711 + + [ Upstream Kernel Changes ] + + * overlay filesystem + * overlayfs: add statfs support + * overlayfs: implement show_options + * overlay: overlay filesystem documentation + * fs: limit filesystem stacking depth + + [ Will Drewry ] + + * SAUCE: seccomp_filter: new mode with configurable syscall filters + * SAUCE: seccomp_filter: add process state reporting + * SAUCE: seccomp_filter: Document what seccomp_filter is and how it + works. + * SAUCE: seccomp_filter: add HAVE_SECCOMP_FILTER and seccomp_execve + + [ Upstream Kernel Changes ] + + * rebase to v3.1-rc1 + * rebase to v3.1-rc2 + * rebase to v3.1-rc3 + +CONFIG_BLK_DEV_BSGLIB=y + +CONFIG_BLK_DEV_LOOP_MIN_COUNT=8 + -CONFIG_VIDEO_OMAP2_VOUT_VRFB=y + * rebase to v3.1-rc4 + * rebase to v3.1-rc5 + * rebase to v3.1-rc6 + * rebase to v3.1-rc7 + * rebase to v3.1-rc8 + * rebase to v3.1-rc9 + * rebase to v3.1-rc10 + + -- Leann Ogasawara Wed, 10 Aug 2011 15:43:38 -0700 + +linux (3.1.0-1.0) oneiric; urgency=low + + [ Leann Ogasawara ] + + * Open P-series + + -- Leann Ogasawara Wed, 10 Aug 2011 13:42:40 -0700 + +linux (3.0.0-8.10) oneiric; urgency=low + + [ Adam Jackson ] + + * SAUCE: drm/i915/pch: Fix integer math bugs in panel fitting + - LP: #753994 + + [ John Johansen ] + + * [Config] Enable missing IPv6 options + + [ Leann Ogasawara ] + + * [Config] Disable config IWLWIFI_DEVICE_SVTOOL + - LP: #819925 + * Rebase to 3.0.1 + + [ Upstream Kernel Changes ] + + * x86, intel, power: Correct the MSR_IA32_ENERGY_PERF_BIAS message + * ALSA: hda - Turn on extra EAPDs on Conexant codecs + - LP: #783582 + * KVM: Remove SMEP bit from CR4_RESERVED_BITS + - LP: #796476 + * KVM: Add SMEP support when setting CR4 + - LP: #796476 + * KVM: Mask function7 ebx against host capability word9 + - LP: #796476 + * KVM: Add instruction fetch checking when walking guest page table + - LP: #796476 + + [ Upstream Kernel Changes ] + + * rebase to v3.0.1 + + -- Leann Ogasawara Fri, 05 Aug 2011 11:32:25 -0700 + +linux (3.0.0-7.9) oneiric; urgency=low + + [ Andy Whitcroft ] + + * Revert "[Upstream] add local prefix to oss local change_bits" + * Revert "SAUCE: add tracing for user initiated readahead requests" + * Revert "SAUCE: vfs: Add a trace point in the mark_inode_dirty function" + * Revert "SAUCE: Input: ALPS - Enable Intellimouse mode for Lenovo + Zhaoyang E47" + * Revert "SAUCE: fix documentation strings for struct input_keymap_entry" + * Revert "SAUCE: vt -- fix handoff numbering to 1..n and add range checks + (grub)" + * Revert "SAUCE: vt -- fix handoff numbering to 1..n and add range + checks" + * Revert "SAUCE: vt -- allow grub to request automatic vt_handoff" + * Revert "SAUCE: vt -- maintain bootloader screen mode and content until + vt switch" + * [Config] enable CONFIG_MTRR_SANITIZER_ENABLE_DEFAULT=1 + - LP: #816035 + * ubuntu: Yama: if an underlying filesystem provides a permissions op use + it + * SAUCE: (no-up) add tracing for user initiated readahead requests + * SAUCE: vt -- maintain bootloader screen mode and content until vt + switch + * SAUCE: vt -- allow grub to request automatic vt_handoff + + [ Arjan van de Ven ] + + * SAUCE: (no-up) vfs: Add a trace point in the mark_inode_dirty function + + [ Kees Cook ] + + * Revert "SAUCE: (no-up) Disable building the ACPI debugfs source" + * [Config] enforce ACPI_CUSTOM_METHOD disabled + + [ Keng-Yu Lin ] + + * SAUCE: (no-up) Input: ALPS - Enable Intellimouse mode for Lenovo + Zhaoyang E47 + - LP: #632884, #803005 + + [ Leann Ogasawara ] + + * [Config] Enable CONFIG_BLK_DEV_CMD64X=m on powerpc + - LP: #513131 + * [Config] Enable CONFIG_RT2800PCI_RT53XX=y + - LP: #815064 + + [ Rezwanul Kabir ] + + * SAUCE: (no-up) Add support for Intellimouse Mode in ALPS touchpad on + Dell E2 series Laptops + - LP: #632884 + + [ Upstream Kernel Changes ] + + * Revert "yama: if an underlying filesystem provides a permissions op use + it" + * Revert "Add support for Intellimouse Mode in ALPS touchpad on Dell E2 + series Laptops" + * Revert "tty: include linux/slab.h for kfree" + * Revert "gpio/ml_ioh_gpio: include linux/slab.h for kfree" + * Revert "pch_dma: add include/slab.h for kfree" + * mmc: Added quirks for Ricoh 1180:e823 lower base clock frequency + - LP: #773524 + * oss: rename local change_bits to avoid powerpc bitsops.h definition + + -- Leann Ogasawara Mon, 25 Jul 2011 09:08:01 -0700 + +linux (3.0.0-7.8) oneiric; urgency=low + + [ Andy Whitcroft ] + + * ubuntu: overlayfs -- overlayfs: add statfs support + * [Config] enable CONFIG_OVERLAYFS + + [ Erez Zadok ] + + * ubuntu: overlayfs -- overlayfs: implement show_options + + [ Leann Ogasawara ] + + * [Config] Enable CONFIG_ALIM7101_WDT=m on powerpc + * [Config] Enable CONFIG_ASUS_OLED=m on powerpc + * [Config] Disable CONFIG_ATM_DUMMY on arm + * [Config] Enable CONFIG_BLK_DEV_DRBD=m on powerpc + * Temporarily disable module check on arm + * Rebase to 3.0 final + * [Config] Enable CONFIG_CAN_TI_HECC=m on arm + * [Config] Set CONFIG_CDROM_PKTCDVD=m on amd64 and i386 + * [Config] Enable CONFIG_CRYPTO_CCM=m on powerpc + * [Config] Enable CONFIG_CRYPTO_DEV_HIFN_795X=m on powerpc + * [Config] Enable CONFIG_CRYPTO_GCM=m on powerpc + * [Config] Set CRYPTO_LZO=m on powerpc64-smp + * [Config] Enable CONFIG_DM9000=m on arm + * [Config] Set CONFIG_DISPLAY_SUPPORT=m on arm + * [Config] Enable CONFIG_DL2K=m on amd64 and i386 + + [ Miklos Szeredi ] + + * ubuntu: overlayfs -- vfs: add i_op->open() + * ubuntu: overlayfs -- vfs: export do_splice_direct() to modules + * ubuntu: overlayfs -- vfs: introduce clone_private_mount() + * ubuntu: overlayfs -- overlay filesystem + * ubuntu: overlayfs -- ovl: fix overlayfs over overlayfs + * ubuntu: overlayfs -- ovl: improve stack use of lookup and readdir + * ubuntu: overlayfs -- fs: limit filesystem stacking depth + * ubuntu: overlayfs -- ovl: make lower mount read-only + + [ Neil Brown ] + + * ubuntu: overlayfs -- overlay: overlay filesystem documentation + + [ Tim Gardner ] + + * [Config] Add enic/fnic to udebs + - LP: #801610 + + [ Upstream Kernel Changes ] + + * yama: if an underlying filesystem provides a permissions op use it + + [ Major Kernel Changes ] + + * Rebase to 3.0 final + + -- Leann Ogasawara Thu, 21 Jul 2011 07:01:32 -0700 + +linux (3.0.0-6.7) oneiric; urgency=low + + [ Eagon Yager ] + + * [Config] Fix misspelled 'skipmodule' in arm makefile. + + [ Keng-Yu Lin ] + + * SAUCE: Input: ALPS - Enable Intellimouse mode for Lenovo Zhaoyang E47 + - LP: #632884, #803005 + + [ Leann Ogasawara ] + + * Revert "[Config] Temporarily disable CONFIG_SMC91X on armel-omap" + * Revert "[Config] Temporarily Disable CONFIG_BRCMSMAC on arm" + * Revert "[Config] Temporarily Disable CONFIG_RTL8192SE on powerpc" + * Revert "[Config] Temporarily Disable CONFIG_RTL8192SE on arm" + * Revert "[Config] Temporarily disable CONFIG_BRCMSMAC on powerpc" + * [Config] Set CONFIG_ACPI_PCI_SLOT=m + * [Config] Set CONFIG_ACPI_SBS=m + * [Config] Set CONFIG_ACPI_WMI=m + * [Config] Set CONFIG_AD7150=m on arm + * [Config] Set CONFIG_AD7152=m on arm + * [Config] Drop CONFIG_GPIO_S5PV210 + * [Config] Drop CONFIG_GPIO_S5PC100 + * [Config] Drop CONFIG_GPIO_PLAT_SAMSUNG + * [Config] Drop CONFIG_GPIO_EXYNOS4 + + [ Stefan Bader ] + + * SAUCE: Re-enable RODATA for i386 virtual + - LP: #809838 + + [ Upstream Kernel Changes ] + + * Revert "Quirk to fix suspend/resume on Lenovo Edge 11,13,14,15" + * (drop after 3.0.0) acer-wmi: Add support for Aspire 1830 wlan hotkey + - LP: #771758 + + -- Leann Ogasawara Wed, 20 Jul 2011 06:36:02 -0700 + +linux (3.0.0-5.6) oneiric; urgency=low + + [ Tim Gardner ] + + * [Config] CONFIG_RTL8192CU=m + * Rebase to -rc7 + + -- Tim Gardner Mon, 11 Jul 2011 22:13:50 +0100 + +linux (3.0.0-4.5) oneiric; urgency=low + + [ Ming Lei ] + + * SAUCE: fix yama_ptracer_del lockdep warning + - LP: #791019 + + [ Seth Forshee ] + + * SAUCE: (drop after 3.0) asus-wmi: Add callback for hotkey filtering + * SAUCE: (drop after 3.0) eeepc-wmi: Add support for T101MT Home/Express Gate key + * SAUCE: (drop after 3.0) asus-wmi: Enable autorepeat for hotkey input device + * [Config] CONFIG_{ASUS,ASUS_NB,EEEPC}_WMI=m + - LP: #805218 + + [ Tim Gardner ] + + * [Config] updateconfigs after rebase to -rc6+ + Rebased against 4dd1b49c6d215dc41ce50c80b4868388b93f31a3 + * Adopt a 3 digit verion, e.g., 3.0.0-x.x + * Revert "UBUNTU: add dependancies for module-init-tools" + This dependency is no longer required for a 3 digit version. + + -- Tim Gardner Tue, 05 Jul 2011 14:03:04 +0100 + +linux (3.0-3.4) oneiric; urgency=low + + [ Keng-Yu Lin ] + + * SAUCE: Revert: "dell-laptop: Toggle the unsupported hardware + killswitch" + - LP: #775281 + + [ Leann Ogasawara ] + + * rebase to v3.0-rc5 + * [Config] updateconfigs after rebase to 3.0-rc5 + + [ Tim Gardner ] + + * [Config] Remove ubuntu/rtl8192se + * [Config] Added armel ABI files + * [Config] Removed armel versatile flavour + * [Config] CONFIG_INTEL_MEI=m + - LP: #716867 + + [ Upstream Kernel Changes ] + + * ALSA: hda - Enable auto-parser as default for Conexant codecs + + [ Upstream Kernel Changes ] + + * rebase to v3.0-rc5 + + -- Leann Ogasawara Thu, 30 Jun 2011 14:27:10 +0100 + +linux (3.0-2.3) oneiric; urgency=low + + [ Andy Whitcroft ] + + * ubuntu: AUFS -- update to 0e2bafab74f0d1463383faeb93f9fc5eb8c2c54e + + [ Leann Ogasawara ] + + * rebase to v3.0-rc4 + * [Config] updateconfigs after rebase to 3.0-rc4 + * fix ERROR: __devcgroup_inode_permission undefined + + [ Stefan Bader ] + + * SAUCE: iscsitarget: Remove driver from the kernel + + [ Tim Gardner ] + + * SAUCE: rtl8192se: Force a build for a 2.6/3.0 kernel + * [Config] Add grub-efi as a recommended bootloader for server and + generic + - LP: #800910 + + [ Upstream Kernel Changes ] + + * Fix node_start/end_pfn() definition for mm/page_cgroup.c + + [ Leann Ogasawara ] + + * rebase to v3.0-rc4 + + -- Leann Ogasawara Fri, 24 Jun 2011 11:51:12 -0700 + +linux (3.0-1.2) oneiric; urgency=low + + [ Andy Whitcroft ] + + * [Config] enable CONFIG_CAN_CALC_BITTIMING + + [ Leann Ogasawara ] + + * rebase to v3.0-rc3 + * [Config] updateconfigs after rebase to 3.0-rc3 + + [ Upstream Kernel Changes ] + + * perf: clear out make flags when calling kernel make kernelver + + [ Leann Ogasawara ] + + * rebase to v3.0-rc3 + + -- Leann Ogasawara Tue, 14 Jun 2011 07:25:35 -0700 + +linux (3.0-0.1) oneiric; urgency=low + + [ Andy Whitcroft ] + + * use the packaging version in the kernel + * use the kernels idea of its version for version_signature + * add dependancies for module-init-tools + * update control files to version 3 + * printchanges/insertchanges allow override of prev_release + * correct Vcs-Git: to point to oneiric + + [ Leann Ogasawara ] + + * rebase to v3.0-rc1 + * [Config] updateconfigs after rebase to 3.0-rc1 + * ubuntu: dm-raid4-5 fix up build failure + * [Config] Temporarily Disable CONFIG_GPIO_EXYNOS4 on arm + * [Config] Temporarily Disable CONFIG_GPIO_PLAT_SAMSUNG on arm + * [Config] Temporarily Disable CONFIG_GPIO_S5PC100 on arm + * [Config] Temporarily Disable CONFIG_GPIO_S5PV210 on arm + * [Config] Temporarily disable CONFIG_BRCMSMAC on powerpc + * [Config] Temporarily Disable CONFIG_BRCMSMAC on arm + * [Config] Temporarily Disable CONFIG_RTL8192SE on arm + * [Config] Temporarily Disable CONFIG_RTL8192SE on powerpc + * [Config] Temporarily disable CONFIG_SMC91X on armel-omap + * rebase to v3.0-rc2 + + [ Manoj Iyer ] + + * SAUCE: mmc: Enable MMC card reader for RICOH [1180:e823] + - LP: #790754 + + [ Upstream Kernel Changes ] + + * Revert "x86 idle: EXPORT_SYMBOL(default_idle, pm_idle) only when APM + demands it" + * drm/i915: fix regression after clock gating init split + + [ Major Kernel Changes ] + + * rebase from v2.6.39 to v3.0-rc1 + * rebase from v3.0-rc1 to v3.0-rc2 + + -- Andy Whitcroft Thu, 09 Jun 2011 15:18:33 +0100 + +linux (2.6.39-3.10) oneiric; urgency=low + + [ Colin Ian King ] + + * SAUCE: S3 early resume debug via keyboard LEDs + + [ Ingo Molnar ] + + * ubuntu: nx-emu - i386: NX emulation + * ubuntu: nx-emu - i386: mmap randomization for executable mappings + + [ Leann Ogasawara ] + + * Revert "[Config] Disable CONFIG_FT1000 on powerpc64-smp" + * Revert "[Config] Disable CONFIG_DM_RAID45" + * [Config] enable CONFIG_BRCMFMAC=y + * [Config] enable CONFIG_MDIO_BITBANG=m across all arch's and flavors + * [Config] enable CONFIG_VIDEO_OUTPUT_CONTROL=m on armel-omap + + [ Robert Nelson ] + + * SAUCE: omap3: beagle: detect new xM revision B + - LP: #770679 + * SAUCE: omap3: beagle: detect new xM revision C + - LP: #770679 + * SAUCE: omap3: beagle: if rev unknown, assume xM revision C + - LP: #770679 + + [ Stefan Bader ] + + * SAUCE: Convert dm-raid45 to new block plugging + + -- Leann Ogasawara Mon, 23 May 2011 11:46:43 -0700 + +linux (2.6.39-3.9) oneiric; urgency=low + + [ Leann Ogasawara ] + + * [Config] Disable CONFIG_SCSI_LPFC_DEBUG_FS + * rebase to v2.6.39 + * [Config] enable CONFIG_LLC2=m across all arch's and flavours + * [Config] enable CONFIG_INPUT_APANEL=m + + [ Thomas Schlichter ] + + * SAUCE: vesafb: mtrr module parameter is uint, not bool + - LP: #778043 + * SAUCE: vesafb: enable mtrr WC by default + - LP: #778043 + + [ Major Kernel Changes ] + + * rebase from v2.6.39-rc7 to v2.6.39 + + -- Andy Whitcroft Fri, 20 May 2011 09:52:32 +0100 + +linux (2.6.39-2.8) oneiric; urgency=low + + [ Andy Whitcroft ] + + * Revert "ubuntu: AUFS -- aufs2-standalone.patch aufs2.1-37" + * Revert "ubuntu: AUFS -- aufs2-base.patch aufs2.1-37" + * Revert "[Config] Disable CONFIG_AUFS_FS" + * ubuntu: AUFS -- aufs2-base.patch aufs2.1-39 + * ubuntu: AUFS -- aufs2-standalone.patch aufs2.1-39 + * ubuntu: AUFS -- update to c6b76974311efc5bf3eddf921cd015b6aae46935 + * ubuntu: AUFS -- clean up the aufs updater and BOM + * ubuntu: AUFS -- documentation on updating aufs2 + + [ Kees Cook ] + + * ubuntu: Yama - LSM hooks + * ubuntu: Yama - create task_free security callback + * ubuntu: Yama - add ptrace relationship tracking interface + * ubuntu: Yama - unconditionally chain to Yama LSM + + [ Leann Ogasawara ] + + * Revert "SAUCE: Fix drivers/staging/easycap FTBS" + * Revert "[Config] Disable CONFIG_EASYCAP" + * ubuntu: fsam7400 disable driver + * ubuntu: omnibook disable driver + * ubuntu: rfkill disable driver + + [ Tim Gardner ] + + * SAUCE: Fix extra reference in fb_open() + + -- Leann Ogasawara Mon, 16 May 2011 09:23:56 -0700 + +linux (2.6.39-2.7) oneiric; urgency=low + + [ Leann Ogasawara ] + + * rebase to v2.6.39-rc7 + + [ Major Kernel Changes ] + + * rebase from v2.6.39-rc6 to v2.6.39-rc7 + + -- Leann Ogasawara Tue, 10 May 2011 10:18:28 +0200 + +linux (2.6.39-1.6) oneiric; urgency=low + + [ Leann Ogasawara ] + + * rebase to v2.6.39-rc6 + * SAUCE: [arm] fixup __aeabi_uldivmod undefined build error + + [ Tim Gardner ] + + * [Config] updateconfigs after rebase to 2.6.39-rc6 + + [ Major Kernel Changes ] + + * rebase from v2.6.39-rc5 to v2.6.39-rc6 + - LP: #740126 + + -- Leann Ogasawara Thu, 05 May 2011 09:46:12 -0700 + +linux (2.6.39-0.5) oneiric; urgency=low + + [ Herton Ronaldo Krzesinski ] + + * SAUCE: Revert "x86, hibernate: Initialize mmu_cr4_features during boot" + - LP: #764758 + + [ Leann Ogasawara ] + + * rebase to v2.6.39-rc5 + * [Config] updateconfigs following rebase to v2.6.39-rc5 + + [ Paolo Pisati ] + + * [Config] s/USB_MUSB_TUSB6010/USB_MUSB_OMAP2PLUS/ on omap3 to get musb + - LP: #759913 + + [ Stefan Bader ] + + * Include nls_iso8859-1 for virtual images + - LP: #732046 + + [ Major Kernel Changes ] + + * rebase from v2.6.39-rc4 to v2.6.39-rc5 + + -- Leann Ogasawara Wed, 27 Apr 2011 06:39:42 -0700 + +linux (2.6.39-0.4) oneiric; urgency=low + + [ Leann Ogasawara ] + + * rebase to v2.6.39-rc4 + * [Config] updateconfigs following rebase to v2.6.39-rc4 + * fixup powerpc implicit declaration of function + 'crash_kexec_wait_realmode' + * [Config] Disable CONFIG_FT1000 on powerpc64-smp + + [ Tim Gardner ] + + * [Config] CONFIG_TRANSPARENT_HUGEPAGE=y + - LP: #769503 + * [Config] Add cachefiles.ko to virtual flavour + - LP: #770430 + + [ Major Kernel Changes ] + + * rebase from v2.6.39-rc3 to v2.6.39-rc4 + + -- Leann Ogasawara Tue, 19 Apr 2011 06:25:20 -0700 + +linux (2.6.39-0.3) oneiric; urgency=low + + [ Leann Ogasawara ] + + * rebase to v2.6.39-rc3 + * crash_kexec_wait_realmode() undefined when !SMP + + [ Tim Gardner ] + + * [Config] CONFIG_PM_ADVANCED_DEBUG=y for i386/amd64 + - LP: #632327 + + [ Major Kernel Changes ] + + * rebase from v2.6.39-rc2 to v2.6.39-rc3 + + -- Leann Ogasawara Tue, 12 Apr 2011 06:52:24 -0700 + +linux (2.6.39-0.2) oneiric; urgency=low + + [ Gustavo F. Padovan ] + + * SAUCE: Revert "Bluetooth: Add new PID for Atheros 3011" + - LP: #720949 + + [ John Johansen ] + + * AppArmor: Fix masking of capabilities in complain mode + - LP: #748656 + + [ Leann Ogasawara ] + + * rebase to v2.6.39-rc2 + * [Config] updateconfigs following rebase to v2.6.39-rc2 + * hv_mouse needs delay.h + * olpc_dcon_xo_1 needs delay.h + * olpc_dcon_xo_1_5 needs delay.h + * Update dropped.txt for Oneiric + + [ Steve Langasek ] + + * [Config] Make linux-libc-dev coinstallable under multiarch + - LP: #750585 + + [ Upstream Kernel Changes ] + + * x86, hibernate: Initialize mmu_cr4_features during boot + - LP: #752870 + + [ Major Kernel Changes ] + + * rebase from v2.6.39-rc1 to v2.6.39-rc2 + + -- Leann Ogasawara Wed, 06 Apr 2011 11:04:15 -0700 + +linux (2.6.39-0.1) oneiric; urgency=low + + [ Brad Figg ] + + * [Config] Set CONFIG_NR_CPUS=256 for amd64 generic + - LP: #737124 + + [ Henrik Rydberg ] + + * SAUCE: HID: hid-ntrig: add support for 1b96:0006 model + * SAUCE: HID: ntrig: fix suspend/resume on recent models + + [ Herton Ronaldo Krzesinski ] + + * SAUCE: (drop after 2.6.39) v4l: make sure drivers supply a zeroed + struct v4l2_subdev + - LP: #745213 + + [ Kees Cook ] + + * [Config] packaging: adjust perms on vmlinuz as well + * SAUCE: nx-emu: further clarify dmesg reporting + - LP: #745181 + + [ Leann Ogasawara ] + + * rebase to v2.6.39-rc1 + * [Config] updateconfigs following rebase to v2.6.39-rc1 + * [Config] Disable CONFIG_DM_RAID45 + * [Config] Disable CONFIG_SCSI_ISCSITARGET + * [Config] Disable CONFIG_EASYCAP + * [Config] Disable CONFIG_AUFS_FS + * update bnx2 firmware files in d-i/firmware/nic-modules + * xhci-pci.c resolve implicit declaration of kzalloc + * [Config] Enable CONFIG_DRM_PSB for only x86 + * [Config] Enable CONFIG_RTS_PSTOR for only x86 + * mfd/asic3: Fix typo, s/irq_data/data/ + + [ Luke Yelavich ] + + * [Config] Disable CONFIG_CRASH_DUMP on 32-bit powerpc kernels + - LP: #745358 + * [Config] Disable CONFIG_DRM_RADEON_KMS on powerpc kernels + * [Config] Build some framebuffer drivers as modules for powerpc kernels. + + [ Manoj Iyer ] + + * SAUCE: thinkpad-acpi: module autoloading for newer Lenovo ThinkPads. + - LP: #745217 + + [ Tim Gardner ] + + * SAUCE: INR_OPEN=4096 + - LP: #663090 + * SAUCE: Increase the default hard limit for open FDs to 4096 + - LP: #663090 + + [ Upstream Kernel Changes ] + + * (drop after 2.6.39-rc1) arm: versatile : Fix typo introduced in irq + namespace cleanup + * (drop after 2.6.39-rc1) [media] staging: altera-jtag needs delay.h + * ALSA: pcm: fix infinite loop in snd_pcm_update_hw_ptr0() + + [ Major Kernel Changes ] + + * rebase from v2.6.38 to v2.6.39-rc1 + + -- Leann Ogasawara Thu, 31 Mar 2011 12:50:10 -0700 + +linux (2.6.39-0.0) oneiric; urgency=low + + [ Leann Ogasawara ] + + * Open Oneiric + + -- Leann Ogasawara Thu, 31 Mar 2011 12:29:23 -0700 + +linux (2.6.38-7.39) natty; urgency=low + + [ Leann Ogasawara ] + + * No change upload. This is just to rebuild with gcc-4.5.2-7ubuntu1. + + -- Leann Ogasawara Thu, 24 Mar 2011 09:27:45 -0700 + +linux (2.6.38-7.38) natty; urgency=low + + [ Leann Ogasawara ] + + * No change upload take 2. 2.6.38-7.37 was accidentally uploaded before + gcc-4.5.2-6ubuntu5 finished building on all arches. + + -- Leann Ogasawara Tue, 22 Mar 2011 06:12:47 -0700 + +linux (2.6.38-7.37) natty; urgency=low + + [ Leann Ogasawara ] + + * No change upload. This is just to rebuild with gcc-4.5.2-6ubuntu5. + + -- Leann Ogasawara Sun, 20 Mar 2011 16:02:48 -0700 + +linux (2.6.38-7.36) natty; urgency=low + + [ Andy Whitcroft ] + + * Revert "SAUCE: KLUDGE: work around failed 'shrink-wrap' compiler + optimisation" + * purge last vestiges of maverick + * [Config] switch CONFIG_FB_VESA back to module + + [ Chris Wilson ] + + * SAUCE: drm/i915: Fix pipelined fencing + - LP: #717114 + + [ Loïc Minier ] + + * Include nls_cp437 module in virtual for fat + - LP: #732046 + * Support arch= cross-compilation for any arch + * Fix couple of typos in 0-common-vars.mk + * Enforce DEFAULT_MMAP_MIN_ADDR on armhf + * Add armhf to Debian -> Linux arch map + * Add initial armhf.mk + * Enable common packages for armhf + + [ Upstream Kernel Changes ] + + * Yama: fix default relationship to check thread group + - LP: #737676 + + -- Andy Whitcroft Fri, 18 Mar 2011 18:18:02 +0000 + +linux (2.6.38-7.35) natty; urgency=low + + [ Andy Whitcroft ] + + * rebase to 2fbfac4e053861925fa3fffcdc327649b09af54c + * rebase fixes bug #715330 + * [Config] disable CONFIG_SCSI_QLA_ISCSI for powerpc 32bit to fix FTBS + * rebase to v2.6.38 final + + [ Herton Ronaldo Krzesinski ] + + * SAUCE: Apply OPTION_BLACKLIST_SENDSETUP also for ZTE MF626 + - LP: #636091 + + [ Tim Gardner ] + + * [Confg] CONFIG_BOOT_PRINTK_DELAY=y + + [ Upstream Kernel Changes ] + + * Yama: use thread group leader when creating match + - LP: #729839 + * (drop after 2.6.38) ahci: AHCI mode SATA patch for Intel Patsburg SATA + RAID controller + - LP: #735240 + * (drop after v2.6.38) x86, quirk: Fix SB600 revision check + + [ Major Kernel Changes ] + + * rebase from v2.6.38-rc8 to v2.6.38 final + - LP: #715330 + + -- Andy Whitcroft Tue, 15 Mar 2011 19:04:19 +0000 + +linux (2.6.38-6.34) natty; urgency=low + + [ Andy Whitcroft ] + + * [Config] normalise CONFIG_INTEL_TXT + * SAUCE: KLUDGE: work around failed 'shrink-wrap' compiler optimisation + - LP: #730860 + * rebase to mainline v2.6.38-rc8 + + [ Major Kernel Changes ] + + * rebase from v2.6.38-rc7 + fb62c00a6d8942775abc23d1621db1252e2d93d1 + to v2.6.38-rc8 + + -- Andy Whitcroft Tue, 08 Mar 2011 11:54:48 +0000 + +linux (2.6.38-6.33) natty; urgency=low + + [ Andy Whitcroft ] + + * d-i -- enable speakup-modules udeb + - LP: #672699 + * rebase to 493f3358cb289ccf716c5a14fa5bb52ab75943e5 + * [Config] debian PPC64 configuration + * [Config] cleanup powerpc config fixing unexpected inconsistancies + * [Config] resync ppc64 configuration + * SAUCE: match up ENTRY/END naming for 32/64 bit + * rebase to fb62c00a6d8942775abc23d1621db1252e2d93d1 + * [Config] update configs after rebase to + fb62c00a6d8942775abc23d1621db1252e2d93d1 + * [Config] pps_gen_parport no longer built + + [ Corentin Chary ] + + * SAUCE: (drop after 2.6.38) eeepc-wmi: reorder keymap + - LP: #689393 + * SAUCE: (drop after 2.6.38) eeepc-wmi: add wlan key found on 1015P + - LP: #689393 + + [ John Johansen ] + + * SAUCE: Fix aufs calling of security_path_mknod + - LP: #724456 + + [ Kees Cook ] + + * SAUCE: proc: hide kernel addresses via %pK in /proc//stack + + [ Tim Gardner ] + + * rebase to 2.6.38-rc7 + + [ Upstream Kernel Changes ] + + * Revert "drm/i915: fix corruptions on i8xx due to relaxed fencing" + + [ Major Kernel Changes ] + + * rebase from v2.6.38-rc6 to v2.6.38-rc7 + + fb62c00a6d8942775abc23d1621db1252e2d93d1 + - LP: #721389 + - LP: #722925 + - LP: #723672 + - LP: #723676 + - LP: #715318 + + -- Andy Whitcroft Mon, 07 Mar 2011 15:33:17 +0000 + +linux (2.6.38-5.32) natty; urgency=low + + [ Andy Whitcroft ] + + * rebase to mainline 6f576d57f1fa0d6026b495d8746d56d949989161 + * [Config] updateconfigs following rebase to v2.6.38-rc6 + * [Config] enable CONFIG_DMAR + - LP: #552311 + + [ Upstream Kernel Changes ] + + * drm/i915: skip FDI & PCH enabling for DP_A + - LP: #561802, #600453, #681877 + + [ Major Kernel Changes ] + + * rebase from v2.6.38-rc5 to v2.6.38-rc6 + - LP: #718402 + - LP: #719524 + - LP: #721126 + - LP: #719691 + - LP: #722689 + - LP: #722310 + + -- Andy Whitcroft Tue, 22 Feb 2011 13:28:39 +0000 + +linux (2.6.38-4.31) natty; urgency=low + + [ Andy Whitcroft ] + + * add in bugs closed by upstream patches pulled in by rebases + * rebase to 795abaf1e4e188c4171e3cd3dbb11a9fcacaf505 + * [Config] enable CONFIG_VSX to allow use of vector instuctions + * resync with maverick 98defa1c5773a3d7e4c524967eb01d5bae035816 + * rebase to mainline v2.6.38-rc5 + * SAUCE: ecryptfs: read on a directory should return EISDIR if not + supported + - LP: #719691 + + [ Colin Ian King ] + + * SAUCE: Dell All-In-One: Remove need for Dell module alias + + [ Manoj Iyer ] + + * SAUCE: (drop after 2.6.38) add ricoh 0xe823 pci id. + - LP: #717435 + + [ Tim Gardner ] + + * [Config] CONFIG_CRYPTO_CRC32C_INTEL=y + + [ Upstream Kernel Changes ] + + * Quirk to fix suspend/resume on Lenovo Edge 11,13,14,15 + - LP: #702434 + * vfs: fix BUG_ON() in fs/namei.c:1461 + + [ Vladislav P ] + + * SAUCE: Release BTM while sleeping to avoid deadlock. + - LP: #713837 + + [ Major Kernel Changes ] + + * rebase from v2.6.38-rc4 to v2.6.38-rc5 + - LP: #579276 + - LP: #715877 + - LP: #713769 + - LP: #716811 + * resync with Maverick Ubuntu-2.6.35-27.47 + + -- Andy Whitcroft Fri, 11 Feb 2011 17:24:09 +0000 + +linux (2.6.38-3.30) natty; urgency=low + + [ Andy Whitcroft ] + + * rebase to v2.6.38-rc4 + * ppc64 -- add basic architecture + * ubuntu: AUFS -- update to 65835da20b77c98fb538c9114fc31f5de1328230 + + [ Colin Ian King ] + + * SAUCE: Add WMI hotkeys support for Dell All-In-One series + - LP: #676997 + * SAUCE: Add WMI hotkeys support for another Dell All-In-One series + - LP: #701530 + * SAUCE: Dell WMI: Use sparse keymaps and tidy up code. + - LP: #701530 + + [ Dan Rosenberg ] + + * SAUCE: (drop after 2.6.38) Convert net %p usage %pK + + [ Kees Cook ] + + * Revert "SAUCE: kernel: make /proc/kallsyms mode 400 to reduce ease of + attacking" + * SAUCE: (drop after 2.6.38) use %pK for /proc/kallsyms and /proc/modules + + [ Tim Gardner ] + + * [Config] CONFIG_BLK_CGROUP=y + - LP: #706394 + * [Config] CONFIG_DELL_WMI_AIO=m + + [ Upstream Kernel Changes ] + + * drm/i915/lvds: Restore dithering on native modes for gen2/3 + - LP: #711568 + + [ Upstream Kernel Changes ] + + * rebase from v2.6.38-rc3 to v2.6.38-rc4. + - LP: #701271 + - LP: #708521 + - LP: #710371 + + -- Andy Whitcroft Tue, 08 Feb 2011 02:07:18 +0000 + +linux (2.6.38-2.29) natty; urgency=low + + [ Andy Whitcroft ] + + * rebase to 1f0324caefd39985e9fe052fac97da31694db31e + * [Config] updateconfigs following rebase to + 1f0324caefd39985e9fe052fac97da31694db31e + * rebase to 70d1f365568e0cdbc9f4ab92428e1830fdb09ab0 + * [Config] reenable HIBERNATE + - LP: #710877 + * rebase to v2.6.38-rc3 + * [Config] reenable CONFIG_CRASH_DUMP + + [ Kamal Mostafa ] + + * SAUCE: rtl8192se: fix source file perms + * SAUCE: rtl8192se: fix source file newline + * SAUCE: omnibook: fix source file newline + + [ Kees Cook ] + + * [Config] packaging: really make System.map mode 0600 + + [ Ricardo Salveti de Araujo ] + + * SAUCE: OMAP3630: PM: don't warn the user with a trace in case of + PM34XX_ERRATUM + + [ Soren Hansen ] + + * SAUCE: nbd: Remove module-level ioctl mutex + + [ Tim Gardner ] + + * SAUCE: Disable building the ACPI debugfs source + + [ Upstream Kernel Changes ] + + * Set physical start and alignment 1M for virtual i386 + - LP: #710754 + + [ Upstream Kernel Changes ] + + * rebase from v2.6.38-rc2 + c723fdab8aa728dc2bf0da6a0de8bb9c3f588d84 + to v2.6.38-rc3 + - LP: #707902 + + -- Andy Whitcroft Fri, 28 Jan 2011 16:30:32 +0000 + +linux (2.6.38-1.28) natty; urgency=low + + [ Andy Whitcroft ] + + * ubuntu: AUFS -- update to b1cee06249dfa0ab30951e7f06490a75c155b620 + + [ Ricardo Salveti de Araujo ] + + * SAUCE: omap3: beaglexm: fix DVI initialization + * [Config] omap: move CONFIG_PANEL_GENERIC_DPI to build in to make + display work at Beagle + + -- Andy Whitcroft Fri, 28 Jan 2011 10:51:57 +0000 + +linux (2.6.38-1.27) natty; urgency=low + + [ Andy Whitcroft ] + + * ubuntu: AUFS -- update aufs-update to track new locations of headers + * ubuntu: AUFS -- update to c5021514085a5d96364e096dbd34cadb2251abfd + * SAUCE: ensure root is ready before running usermodehelpers in it + * correct the Vcs linkage to point to natty + * rebase to linux tip e78bf5e6cbe837daa6ab628a5f679548742994d3 + * [Config] update configs following rebase + e78bf5e6cbe837daa6ab628a5f679548742994d3 + * SAUCE: Yama: follow changes to generic_permission + * ubuntu: compcache -- follow changes to bd_claim/bd_release + * ubuntu: iscsitarget -- follow changes to open_bdev_exclusive + * ubuntu: ndiswrapper -- fix interaction between __packed and packed + * ubuntu: AUFS -- update to 806051bcbeec27748aae2b7957726a4e63ff308e + * update package version to match payload version + * rebase to e6f597a1425b5af64917be3448b29e2d5a585ac8 + * rebase to v2.6.38-rc1 + * [Config] updateconfigs following rebase to v2.6.38-rc1 + * SAUCE: x86 fix up jiffies/jiffies_64 handling + * rebase to linus tip 2b1caf6ed7b888c95a1909d343799672731651a5 + * [Config] updateconfigs following rebase to + 2b1caf6ed7b888c95a1909d343799672731651a5 + * [Config] disable CONFIG_TRANSPARENT_HUGEPAGE to fix i386 boot crashes + * ubuntu: AUFS -- suppress benign plink warning messages + - LP: #621195 + * [Config] CONFIG_NR_CPUS=256 for amd64 -server flavour + * rebase to v2.6.38-rc2 + * rebase to mainline d315777b32a4696feb86f2a0c9e9f39c94683649 + * rebase to c723fdab8aa728dc2bf0da6a0de8bb9c3f588d84 + * [Config] update configs following rebase to + c723fdab8aa728dc2bf0da6a0de8bb9c3f588d84 + * [Config] disable CONFIG_AD7152 to fix FTBS on armel versatile + * [Config] disable CONFIG_AD7150 to fix FTBS on armel versatile + * [Config] disable CONFIG_RTL8192CE to fix FTBS on armel omap + * [Config] disable CONFIG_MANTIS_CORE to fix FTBS on armel versatile + + [ Kees Cook ] + + * SAUCE: kernel: make /proc/kallsyms mode 400 to reduce ease of attacking + + [ Stefan Bader ] + + * Temporarily disable RODATA for virtual i386 + - LP: #699828 + + [ Tim Gardner ] + + * [Config] CONFIG_NLS_DEFAULT=utf8 + - LP: #683690 + * [Config] CONFIG_HIBERNATION=n + * update bnx2 firmware files in d-i/firmware/nic-modules + + [ Upstream Kernel Changes ] + + * Revert "drm/radeon/bo: add some fallback placements for VRAM only + objects." + * packaging: make System.map mode 0600 + * thinkpad_acpi: Always report scancodes for hotkeys + - LP: #702407 + * sched: tg->se->load should be initialised to tg->shares + * Input: sysrq -- ensure sysrq_enabled and __sysrq_enabled are consistent + * brcm80211: include linux/slab.h for kfree + * pch_dma: add include/slab.h for kfree + * i2c-eg20t: include linux/slab.h for kfree + * gpio/ml_ioh_gpio: include linux/slab.h for kfree + * tty: include linux/slab.h for kfree + * winbond: include linux/delay.h for mdelay et al + + [ Upstream Kernel Changes ] + + * mark the start of v2.6.38 versioning + * rebase v2.6.37 to v2.6.38-rc2 + c723fdab8aa728dc2bf0da6a0de8bb9c3f588d84 + - LP: #689886 + - LP: #702125 + - LP: #608775 + - LP: #215802 + - LP: #686333 + - LP: #677830 + - LP: #677652 + - LP: #696493 + - LP: #697240 + - LP: #689036 + - LP: #705323 + - LP: #686692 + + -- Andy Whitcroft Sun, 09 Jan 2011 13:44:52 +0000 + +linux (2.6.37-12.26) natty; urgency=low + + [ Andy Whitcroft ] + + * rebase to v2.6.37-rc8 + * [Config] armel -- reenable omap flavour + * [Config] disable CONFIG_MACH_OMAP3517EVM to fix FTBS on armel omap + * [Config] disable CONFIG_GPIO_VX855 to fix FTBS on omap armel + * [Config] disable CONFIG_WESTBRIDGE_ASTORIA to fix FTBS on omap armel + * [Config] disable CONFIG_TI_DAVINCI_EMAC to fix FTBS on omap armel + * rebase to mainline 989d873fc5b6a96695b97738dea8d9f02a60f8ab + * [Config] track missing modules + * rebase to v2.6.37 final + + [ Chase Douglas ] + + * SAUCE: (drop after 2.6.37) HID: magicmouse: Don't report REL_{X, Y} for + Magic Trackpad + + [ Stefan Bader ] + + * Revert "SAUCE: blkfront: default to sd devices" + - LP: #684875 + + [ Tim Gardner ] + + * Revert "SAUCE: (no-up) libata: Ignore HPA by default." + - LP: #380138 + * [Config] Added autofs4.ko to -virtual flavour + - LP: #692917 + + [ Upstream Kernel Changes ] + + * Add support for Intellimouse Mode in ALPS touchpad on Dell E2 series + Laptops + - LP: #632884 + + [ Upstream Kernel Changes ] + + * rebase to v2.6.37-rc8 + * rebase to mainline 989d873fc5b6a96695b97738dea8d9f02a60f8ab + * rebase to v2.6.37 final + + -- Andy Whitcroft Thu, 23 Dec 2010 18:34:13 +0000 + +linux (2.6.37-11.25) natty; urgency=low + + [ Andy Whitcroft ] + + * [Config] d-i -- add hpsa to the list of block devices + - LP: #684304 + * [Config] add vmw-balloon driver to -virtual flavour + - LP: #592039 + * rebase to v2.6.37-rc7 + + [ Upstream Kernel Changes ] + + * rebase to v2.6.37-rc7 + + -- Andy Whitcroft Tue, 21 Dec 2010 13:35:28 +0000 + +linux (2.6.37-10.24) natty; urgency=low + + [ Andy Whitcroft ] + + * rebase to v2.6.37-rc6 + * updateconfigs following rebase to v2.6.37-rc6 + + [ Upstream Kernel Changes ] + + * rebase to v2.6.37-rc6 + + -- Andy Whitcroft Thu, 16 Dec 2010 12:34:19 +0000 + +linux (2.6.37-9.23) natty; urgency=low + + [ Andy Whitcroft ] + + * SAUCE: vt -- fix handoff numbering to 1..n and add range checks + - LP: #689606 + * SAUCE: vt -- fix handoff numbering to 1..n and add range checks (grub) + - LP: #689606 + + [ Kees Cook ] + + * SAUCE: RO/NX protection for loadable kernel, fix ftrace + - LP: #690190 + + -- Andy Whitcroft Wed, 15 Dec 2010 19:29:57 +0000 + +linux (2.6.37-9.22) natty; urgency=low + + [ Andy Whitcroft ] + + * rebase to v2.6.35-rc5 + * [Config] updateconfigs following rebase to v2.6.37-rc5 + * (no-up) add support for installed header files to ubuntu directory + - LP: #684666 + * ubuntu: AUFS -- include the aufs_types.h file in linux-libc-headers + - LP: #684666 + * ubuntu: dm-raid4-5 -- follow changes to bio flags + * ubuntu: dm-raid4-5 -- re-enable + * ubuntu: omnibook -- update BOM + * ubuntu: ndiswrapper -- update BOM to match actual version + * ubuntu: ndiswrapper -- follow removal of the BKL and locked ioctl + * ubuntu: ndiswrapper -- re-enable + * ubuntu: iscsitarget -- re-instate copy_io_context + * ubuntu: iscsitarget -- follow changes to semaphore initialisation + * ubuntu: iscsitarget -- convert NIPQUAD to %pI4 + * ubuntu: iscsitarget -- re-enable + + [ Kees Cook ] + + * [Config] update config for CONFIG_DEBUG_SET_MODULE_RONX + + [ Manoj Iyer ] + + * SAUCE: Enable jack sense for Thinkpad Edge 13 + - LP: #685015 + + [ Tim Gardner ] + + * [Config] CONFIG_9P_FSCACHE=y,CONFIG_9P_FS_POSIX_ACL=y + * [Config] CONFIG_CRYPTO_CRC32C=y + - LP: #681819 + * [Config] CONFIG_9P_FSCACHE=n + * [Config] Add nfsd modules to -virtual flavour + - LP: #688070 + + [ Upstream Kernel Changes ] + + * Revert "Staging: zram: work around oops due to startup ordering snafu" + * NFS: Fix panic after nfs_umount() + - LP: #683938 + * x86: Add NX protection for kernel data + * x86: Add RO/NX protection for loadable kernel modules + * x86: Resume trampoline must be executable + * x86: RO/NX protection for loadable kernel, jump_table fix + + [ Upstream Kernel Changes ] + + * rebase to v2.6.37-rc5 + + -- Andy Whitcroft Thu, 09 Dec 2010 18:15:35 +0000 + +linux (2.6.37-8.21) natty; urgency=low + + [ Andy Whitcroft ] + + * Revert "ubuntu: AUFS -- include the aufs_types.h file in + linux-libc-headers" + * Revert "(no-up) add support for installed header files to ubuntu + directory" + + -- Andy Whitcroft Sun, 05 Dec 2010 17:33:28 +0000 + +linux (2.6.37-8.20) natty; urgency=low + + [ Andy Whitcroft ] + + * Revert "[Upstream] drivers/serial/mfd.c: Fix ARM compile error" + * Revert "SAUCE: Nouveau: Disable acceleration on MacBook Pros" + * Revert "SAUCE: Nouveau: Add quirk framework to disable acceleration" + * Revert "SAUCE: i915 -- disable powersave by default" + * SAUCE: enable Marvell 9128 PCIe SATA controller + - LP: #658521 + * [Config] evtchn has been renamed + * (no-up) add support for installed header files to ubuntu directory + - LP: #684666 + * ubuntu: AUFS -- include the aufs_types.h file in linux-libc-headers + - LP: #684666 + + [ Tim Gardner ] + + * [Config] MISS: evtchn, NEW : xen-evtchn + * rebase to v2.6.37-rc4 + + [ Upstream Kernel Changes ] + + * drm/i915: Clean conflicting modesetting registers upon init + - LP: #683775 + * rebase to v2.6.37-rc4 + + -- Andy Whitcroft Fri, 03 Dec 2010 18:42:07 +0000 + +linux (2.6.37-7.19) natty; urgency=low + + [ Tim Gardner ] + + * [Config] Add bnx2 firmware to nic-modules udeb + - LP: #676245 + + -- Andy Whitcroft Fri, 26 Nov 2010 17:53:45 +0000 + +linux (2.6.37-7.18) natty; urgency=low + + [ Andy Whitcroft ] + + * Revert "[Upstream] USB: option: Remove duplicate AMOI_VENDOR_ID" + * Revert "SAUCE: Add extra headers to linux-libc-dev" + * Revert "SAUCE: Enable speedstep for sonoma processors." + * [Config] enable CONFIG_BT_HCIUART_ATH3K + * [Config] enable CONFIG_IWLWIFI_DEBUGFS + * [Config] standardise CONFIG_MII + * [Config] standardise CONFIG_PRISM2_USB + * [Config] standardise CONFIG_SCSI_QLA_ISCSI + * [Config] build in CONFIG_AGP + * [Config] build in CONFIG_AGP_INTEL + * [Config] build in CONFIG_AGP_AMD + * [Config] build in CONFIG_AGP_AMD64 + * [Config] build in CONFIG_AGP_NVIDIA + * [Config] build in CONFIG_AGP_VIA + * [Config] disable CONFIG_SCSI_QLA_ISCSI for FTBS (arm) + * (no-up): document the new ## scheme + * [Config] harmonise CONFIG_SERIAL_8250_NR_UARTS + * [Config] update CONFIG_SERIAL_8250_RUNTIME_UARTS=32 + - LP: #675453 + + [ Mathieu J. Poirier ] + + * SAUCE: ARM: Adding vdd_sdi regulator supply to OMAP3EVM + + [ Upstream Kernel Changes ] + + * nx-emu: fix inverted report of disable_nx + + -- Andy Whitcroft Tue, 23 Nov 2010 21:00:39 +0000 + +linux (2.6.37-6.17) natty; urgency=low + + [ Andy Whitcroft ] + + * Revert "ubuntu: AUFS -- aufs2-standalone.patch + aufs2.1-36-UNRELEASED-20101103" + * Revert "ubuntu: AUFS -- aufs2-base.patch + aufs2.1-36-UNRELEASED-20101103" + * [Config] standardise CONFIG_BT + * [Config] standardise CONFIG_IRDA + * [Config] standardise CONFIG_LAPB + * [Config] standardise CONFIG_RDS + * [Config] standardise CONFIG_RFKILL + * [Config] standardise CONFIG_TIPC + * [Config] standardise CONFIG_X25 + * [Config] standardise CONFIG_INPUT_EVDEV + * [Config] standardise CONFIG_INPUT_JOYDEV + * [Config] standardise CONFIG_INPUT_JOYSTICK + * [Config] standardise CONFIG_INPUT_TOUCHSCREEN + * [Config] CONFIG_INPUT_TOUCHSCREEN=n for FTBS (arm) + * [Config] CONFIG_IRDA=n for FTBS (arm) + * ubuntu: AUFS -- aufs2-base.patch aufs2.1-37 + * ubuntu: AUFS -- aufs2-standalone.patch aufs2.1-37 + * ubuntu: AUFS -- update to 097bf62d6f49619359d34bf17f242df38562489a + + [ Tim Gardner ] + + * SAUCE: Fix drivers/staging/easycap FTBS + * [Config] CONFIG_EASYCAP=m after fixing FTBS + + [ Upstream Kernel Changes ] + + * Revert "x86: Add NX protection for kernel data" + + -- Andy Whitcroft Mon, 22 Nov 2010 18:09:10 +0000 + +linux (2.6.37-6.16) natty; urgency=low + + [ Andy Whitcroft ] + + * Revert "[Config] update config for CONFIG_DEBUG_SET_MODULE_RONX" + * rebase to v2.6.37-rc3 + + [ Tim Gardner ] + + * [Config] CONFIG_SCHED_AUTOGROUP=y + + [ Upstream Kernel Changes ] + + * Revert "x86: Add RO/NX protection for loadable kernel modules" + * sched: automated per session task groups + * rebase to v2.6.37-rc3 + + -- Andy Whitcroft Mon, 22 Nov 2010 10:11:13 +0000 + +linux (2.6.37-6.15) natty; urgency=low + + [ Andy Whitcroft ] + + * [Config] standardise CONFIG_CEPH_FS + * [Config] standardise CONFIG_SCSI_LPFC_DEBUG_FS + * [Config] standardise CONFIG_SCSI_PROC_FS + * [Config] standardise CONFIG_UBIFS_FS + * [Config] standardise CONFIG_USB_GADGET_DEBUG_FS + + [ Kees Cook ] + + * [Config] update config for CONFIG_DEBUG_SET_MODULE_RONX + + [ Manoj Iyer ] + + * SAUCE: Enable jack sense for Thinkpad Edge 11 + - LP: #677210 + * SAUCE: enable rfkill for rtl8192se driver + - LP: #640992 + + [ Tim Gardner ] + + * [Config] CONFIG_EASYCAP=n for FTBS + * Rebase to v2.6.32-rc2+git + + [ Upstream Kernel Changes ] + + * x86: Fix improper large page preservation + * x86: Add NX protection for kernel data + * x86: Add RO/NX protection for loadable kernel modules + + [ Upstream Kernel Changes ] + + * Rebase to Linus 2.6.37-rc2+git + + -- Andy Whitcroft Sat, 20 Nov 2010 11:40:00 +0000 + +linux (2.6.37-5.14) natty; urgency=low + + [ Upstream Kernel Changes ] + + * PCI: fix offset check for sysfs mmapped files + - LP: #676963 + + -- Andy Whitcroft Thu, 18 Nov 2010 18:12:27 +0000 + +linux (2.6.37-5.13) natty; urgency=low + + [ Andy Whitcroft ] + + * rebased to v2.6.37-rc2 + * updateconfigs following rebase to v2.6.37-rc2 + + [ Tim Gardner ] + + * [Config] Added NFS and related modules to virtual flavour + - LP: #659084 + + [ Upstream Kernel Changes ] + + * x86, cpu: Rename verify_cpu_64.S to verify_cpu.S + * x86, cpu: Clear XD_DISABLED flag on Intel to regain NX + * x86, cpu: Call verify_cpu during 32bit CPU startup + * x86, cpu: Only CPU features determine NX capabilities + + [ Upstream Changes ] + + * rebased to v2.67.37-rc2 + + -- Andy Whitcroft Tue, 16 Nov 2010 13:13:29 +0000 + +linux (2.6.37-4.12) natty; urgency=low + + [ Andy Whitcroft ] + + * Revert "[Upstream] HID: magicmouse: add param for scroll speed" + * Revert "[Upstream] HID: magicmouse: properly account for scroll + movement in state" + * Revert "[Upstream] HID: magicmouse: disable and add module param for + scroll acceleration" + * Revert "[Upstream] HID: magicmouse: scroll on entire surface, not just + middle of mouse" + + [ Henrik Rydberg ] + + * SAUCE: hid: ntrig: remove sysfs nodes + * SAUCE: hid: ntrig: Setup input filtering manually + * SAUCE: hid: ntrig: New ghost-filtering event logic + + [ Manoj Iyer ] + + * SAUCE: Added quirk to recognize GE0301 3G modem as an interface. + - LP: #348861 + + [ Upstream Kernel Changes ] + + * Revert "mmc: fix all hangs related to mmc/sd card insert/removal during + suspend/resume" + * Revert "[ARM] implement arch_randomize_brk()" + * Revert "ARM: stack protector: change the canary value per task" + * Revert "ARM: initial stack protector (-fstack-protector) support" + * Revert "ALSA: hda - Handle pin NID 0x1a on ALC259/269" + * Revert "ALSA: hda - Handle missing NID 0x1b on ALC259 codec" + * Revert "perf probe: Add kernel source path option" + * hid: ntrig: Support single-touch devices + * hid: ntrig: Mask pen switch events + * net: rtnetlink.h -- only include linux/netdevice.h when used by the + kernel + - LP: #673073 + * Fix userspace build of linux/fs.h + + -- Andy Whitcroft Mon, 15 Nov 2010 19:31:44 +0000 + +linux (2.6.37-3.11) natty; urgency=low + + [ Andy Whitcroft ] + + * Revert "ubuntu: AUFS -- update to + b37c575759dc4535ccc03241c584ad5fe69e3b25" + * Revert "ubuntu: AUFS -- track changes to the arguements to fop fsync()" + * Revert "ubuntu: AUFS -- update to standalone 2.6.35-rcN as at 20100601" + * Revert "ubuntu: AUFS -- update to standalone 2.6.34 as at 20100601" + * Revert "ubuntu: AUFS -- aufs2 base patch for linux-2.6.34" + * [Config] Disable intel_idle for -virtual kernels + - LP: #651370 + * [Config] enforcer -- ensure we never enable CONFIG_IMA + * debian -- pass the correct flavour name when checking configs + * [Config] enforcer -- ensure CONFIG_INTEL_IDLE is off for -virtual + * [Config] ensure CONFIG_IPV6=y for powerpc + * [Config] enforcer -- ensure CONFIG_IPV6=y + * ubuntu: AUFS -- aufs2-base.patch aufs2.1-36-UNRELEASED-20101103 + * ubuntu: AUFS -- aufs2-standalone.patch aufs2.1-36-UNRELEASED-20101103 + * ubuntu: AUFS -- update to aufs2.1-36-UNRELEASED-20101103 + * ubuntu: AUFS -- re-enable + * ubuntu: AUFS -- track changes to work queue initialisation + * ubuntu: AUFS -- track changes to llseek in v2.6.37-rc1 + * SAUCE: fbcon -- fix race between open and removal of framebuffers + * SAUCE: fbcon -- fix OOPs triggered by race prevention fixes + - LP: #614008 + * SAUCE: drm -- stop early access to drm devices + + [ Jeremy Kerr ] + + * [Config] Build-in powermac ZILOG serial driver + - LP: #673346 + + [ Kees Cook ] + + * SAUCE: nx-emu: use upstream ASLR when possible + + [ Tim Gardner ] + + * [Config] Use correct be2iscsi module name in d-i/modules/scsi-modules + - LP: #628776 + + [ Upstream Kernel Changes ] + + * i386: NX emulation + * nx-emu: drop exec-shield sysctl, merge with disable_nx + * nx-emu: standardize boottime message prefix + * mmap randomization for executable mappings on 32-bit + * exec-randomization: brk away from exec rand area + + -- Andy Whitcroft Thu, 11 Nov 2010 23:46:37 +0000 + +linux (2.6.37-2.10) natty; urgency=low + + [ Andy Whitcroft ] + + * reinstate armel config changes: + * [Config] CONFIG_GPIO_PCH=n for armel FTBS + * [Config] CONFIG_GPIO_VX855=n for armel FTBS + + -- Andy Whitcroft Wed, 03 Nov 2010 22:20:35 +0000 + +linux (2.6.37-2.9) natty; urgency=low + + [ Andy Whitcroft ] + + * config -- fix genportsconfig + * [Config] move powerpc over from ports to distro + * bump master version number to match contained kernel + * SAUCE: fix documentation strings for struct input_keymap_entry + * usb: gadget: goku_udc: add registered flag bit + + -- Andy Whitcroft Tue, 02 Nov 2010 15:14:11 +0000 + +linux (2.6.36-2.8) natty; urgency=low + + [ Tim Gardner ] + + * [Config]: fix changed CONFIG_SYSFS_DEPRECATED_V2 enforcement rules + * [Config]: TWL4030_CORE=n for FTBS + * [Config]: CONFIG_ATH6K_LEGACY=n for FTBS + * [Config]: CONFIG_SOLO6X10=n for FTBS + * [Config]: CONFIG_GPIO_PCH=n for armel FTBS + * [Config]: CONFIG_GPIO_VX855=n for armel FTBS + * [Config]: CONFIG_DRM_NOUVEAU=n for armel FTBS + * [Config]: CONFIG_LINE6_USB=n for armel FTBS + * [Config]: CONFIG_SENSORS_AK8975=n for armel FTBS + * [Config]: CONFIG_I2C_I801=n for armel FTBS + * UBUNTU: SAUCE: AppArmor: Fix unpack of network tables. + * AppArmor: compatibility patch for v5 interface + * AppArmor: compatibility patch for v5 network controll + * Dropped (pre-stable): input: Support Clickpad devices in ClickZone mode + * Dropped: UBUNTU: SAUCE: libata: Add ALPM power state accounting to the AHCI driver + * Dropped: UBUNTU: SAUCE: Added quirk to recognize GE0301 3G modem as an interface. + * Dropped: hid: 3m: Convert to MT slots + * Dropped: HID: magicmouse: don't allow hidinput to initialize the device + * Dropped: HID: magicmouse: simplify touch data bit manipulation + * Dropped: HID: magicmouse: simplify touch down logic + * Dropped: HID: magicmouse: enable Magic Trackpad support + * Dropped: UBUNTU: SAUCE: hid: ntrig: remove sysfs nodes + * Dropped: UBUNTU: SAUCE: hid: ntrig: Setup input filtering manually + * Dropped: UBUNTU: SAUCE: hid: ntrig: New ghost-filtering event logic + * Dropped: UBUNTU: SAUCE: hid: ntrig: identify firmware version (wiggled) + * Dropped: UBUNTU: (pre-stable): input: Support Clickpad devices in ClickZone mode + * Dropped: UBUNTU: SAUCE: KMS: cache the EDID information of the LVDS + * Dropped: UBUNTU: SAUCE: fbcon -- fix race between open and removal of framebuffers + * Dropped: UBUNTU: SAUCE: fbcon -- fix OOPs triggered by race prevention fixes + * Dropped: UBUNTU: SAUCE: x86: implement cs-limit nx-emulation for ia32 + * Dropped: UBUNTU: SAUCE: x86: more tightly confine cs-limit nx-emulation to ia32 only + * Dropped: UBUNTU: SAUCE: [um] Don't use nx_enabled under UML + * Dropped: UBUNTU: SAUCE: x86: brk away from exec rand area + + [ Upstream Kernel Changes ] + + * rebased against 2.6.27-rc1 + + -- Tim Gardner Fri, 22 Oct 2010 19:35:05 -0600 + +linux (2.6.36-1.7) natty; urgency=low + + [ Andy Whitcroft ] + + * rebased to v2.6.36 final + * [Config] update configs following rebase to v2.6.36 final + * [Config] update ports configs following rebase to v2.6.36 final + + [ Upstream Kernel Changes ] + + * rebased to v2.6.36 final + + -- Andy Whitcroft Thu, 21 Oct 2010 14:28:57 +0100 + +linux (2.6.36-1.6) natty; urgency=low + + [ Upstream Kernel Changes ] + + * drop broadcom staging driver preview: + * Revert "Staging: Add initial release of brcm80211 - Broadcom 802.11n + wireless LAN driver." + + -- Andy Whitcroft Wed, 20 Oct 2010 10:41:25 +0100 + +linux (2.6.36-1.5) natty; urgency=low + + [ Andy Whitcroft ] + + * rebase to v2.6.36-rc8 + * updateconfigs following rebase to v2.6.36-rc8 + * updateportsconfigs following rebase to v2.6.36-rc8 + * config -- simplify the kernelconfig interface + * config -- add new config mode 'dumpconfigs' + + [ Tim Gardner ] + + * Simplify the use of CROSS_COMPILER + + [ Upstream Kernel Changes ] + + * drop broadcom staging driver preview: + * Revert "staging: brcm80211: Make compiling of brcm80211.ko and + brcmfmac.ko mutually exclusive." + * Revert "staging: brcm80211: Fix compile issue when BRCM80211_PCI is not + set." + * Revert "Staging: brcm80211: remove driver specific -W options" + * Revert "Staging: brcm80211: clean up makefile cflag lines" + * Revert "staging: brcm80211: add fullmac driver" + * Revert "staging: brcm80211: use string native library" + * Revert "staging: brcm80211: use native ctype library" + * Revert "staging: brcm80211: fix remaining checkpatch errors." + * Revert "staging: brcm80211: fix "ERROR: trailing whitespace."" + * Revert "staging: brcm80211: fix "ERROR: spaces required around that + ..."" + * Revert "staging: brcm80211: fix "ERROR: spaces prohibited around that + ':' ..."" + * Revert "staging: brcm80211: fix "ERROR: space required before that + ..."" + * Revert "staging: brcm80211: fix "ERROR: space required after that ..."" + * Revert "staging: brcm80211: fix "ERROR: space required after that close + brace"" + * Revert "staging: brcm80211: fix "ERROR: space prohibited before + ...close square bracket"" + * Revert "staging: brcm80211: fix "ERROR: space prohibited after that + ..."" + * Revert "staging: brcm80211: fix "ERROR: need consistent spacing around + '*'"" + * Revert "staging: brcm80211: fix 'ERROR: "(foo*)" should be "(foo *)"'" + * Revert "staging: brcm80211: fix "ERROR: Macros w/ mult. statements ... + do - while loop"" + * Revert "staging: brcm80211: fix "ERROR: Macros w/ complex values ... + parenthesis"" + * Revert "staging: brcm80211: fix "ERROR: do not initialise statics to 0 + or NULL"" + * Revert "staging: brcm80211: fix "ERROR: do not initialise globals to 0 + or NULL"" + * Revert "staging: brcm80211: fix "ERROR: while should follow close brace + '}'"" + * Revert "staging: brcm80211: fix "ERROR: that open brace { ... prev + line"" + * Revert "staging: brcm80211: fix "ERROR: trailing statements should be + on next line"" + * Revert "staging: brcm80211: fix "ERROR: do not use assignment in if + condition"" + * Revert "staging: brcm80211: fix "ERROR: return is not a function, + paren..."" + * Revert "staging: brcm80211: fix "ERROR: open brace '{' following + function dec..."" + * Revert "staging: brcm80211: fix 'ERROR: "foo * bar" should be "foo + *bar"'" + * Revert "staging: brcm80211: Fix URLs for firmware files." + * Revert "staging: brcm80211: use '%pM' format to print MAC address" + * Revert "staging: brcm80211: Add contact info to TODO list." + * Revert "staging: brcm80211: Fix some initialisation failure paths" + * Export dump_{write,seek} to binary loader modules + * rebase to v2.6.36-rc8. + + -- Andy Whitcroft Tue, 19 Oct 2010 18:58:11 +0100 + +linux (2.6.36-0.4) natty; urgency=low + + [ Andy Whitcroft ] + + * SAUCE: perf: increase stack footprint to avoid stack-protector warning + (fixes FTBS on powerpc) + + -- Andy Whitcroft Thu, 14 Oct 2010 13:16:16 +0100 + +linux (2.6.36-0.3) natty; urgency=low + + [ Andy Whitcroft ] + + * [Config] disable CONFIG_SCSI_QLA_ISCSI to fix FTBS on powerpc + + -- Andy Whitcroft Thu, 14 Oct 2010 03:01:30 +0100 + +linux (2.6.36-0.2) natty; urgency=low + + [ Andy Whitcroft ] + + * [Config] updateportsconfigs following rebase to 2.6.36-rc7 + (fix FTBS on powerpc) + + -- Andy Whitcroft Wed, 13 Oct 2010 23:25:12 +0100 + +linux (2.6.36-0.1) natty; urgency=low + + [ Andy Whitcroft ] + + * reduce disk usage during buildd builds + - LP: #645653 + * [Config] enforcer -- ensure CONFIG_INIT_PASS_ALL_PARAMS is y + * [Config] armel -- drop omap flavour + + [ Tim Gardner ] + + * Added dropped patch list + * more dropped patches + * [Config] Disable aufs, dmraid-4.5, ndis-wrapper + * [Config] Add support for cross compiling armel + * [Config] CONFIG_SCSI_QLA_ISCSI=n for armel + * [Upstream] drivers/serial/mfd.c: Fix ARM compile error + * [Config]: updateconfigs after adding brcm80211 + * staging: brcm80211: Fix Makefile syntax error + * rebased to v2.6.36-rc7 + + [ Upstream Kernel Changes ] + + * (upstream) IPS driver: don't toggle CPU turbo on unsupported CPUs + * (upstream) IPS driver: verify BIOS provided limits + * intel_ips: Print MCP limit exceeded values. + * Staging: Add initial release of brcm80211 - Broadcom 802.11n wireless + LAN driver. + * staging: brcm80211: Fix some initialisation failure paths + * staging: brcm80211: Add contact info to TODO list. + * staging: brcm80211: use '%pM' format to print MAC address + * staging: brcm80211: Fix URLs for firmware files. + * staging: brcm80211: fix 'ERROR: "foo * bar" should be "foo *bar"' + * staging: brcm80211: fix "ERROR: open brace '{' following function + dec..." + * staging: brcm80211: fix "ERROR: return is not a function, paren..." + * staging: brcm80211: fix "ERROR: do not use assignment in if condition" + * staging: brcm80211: fix "ERROR: trailing statements should be on next + line" + * staging: brcm80211: fix "ERROR: that open brace { ... prev line" + * staging: brcm80211: fix "ERROR: while should follow close brace '}'" + * staging: brcm80211: fix "ERROR: do not initialise globals to 0 or NULL" + * staging: brcm80211: fix "ERROR: do not initialise statics to 0 or NULL" + * staging: brcm80211: fix "ERROR: Macros w/ complex values ... + parenthesis" + * staging: brcm80211: fix "ERROR: Macros w/ mult. statements ... do - + while loop" + * staging: brcm80211: fix 'ERROR: "(foo*)" should be "(foo *)"' + * staging: brcm80211: fix "ERROR: need consistent spacing around '*'" + * staging: brcm80211: fix "ERROR: space prohibited after that ..." + * staging: brcm80211: fix "ERROR: space prohibited before ...close square + bracket" + * staging: brcm80211: fix "ERROR: space required after that close brace" + * staging: brcm80211: fix "ERROR: space required after that ..." + * staging: brcm80211: fix "ERROR: space required before that ..." + * staging: brcm80211: fix "ERROR: spaces prohibited around that ':' ..." + * staging: brcm80211: fix "ERROR: spaces required around that ..." + * staging: brcm80211: fix "ERROR: trailing whitespace." + * staging: brcm80211: fix remaining checkpatch errors. + * staging: brcm80211: use native ctype library + * staging: brcm80211: use string native library + * staging: brcm80211: add fullmac driver + * Staging: brcm80211: clean up makefile cflag lines + * Staging: brcm80211: remove driver specific -W options + * staging: brcm80211: Fix compile issue when BRCM80211_PCI is not set. + * staging: brcm80211: Make compiling of brcm80211.ko and brcmfmac.ko + mutually exclusive. + + -- Andy Whitcroft Tue, 12 Oct 2010 16:00:27 +0100 + +linux (2.6.35-22.33) maverick; urgency=low + + [ Andy Whitcroft ] + + * Revert "SAUCE: Add support for Intellimouse Mode in ALPS touchpad on + Dell E2 series Laptops" + - LP: #641320 + + [ Brian Rogers ] + + * SAUCE: ir-core: Fix null dereferences in the protocols sysfs interface + - LP: #624701 + + [ Christopher James Halse Rogers ] + + * SAUCE: Nouveau: Add quirk framework to disable acceleration + - LP: #544088, #546393 + * SAUCE: Nouveau: Disable acceleration on MacBook Pros + - LP: #546393 + + [ John Johansen ] + + * Revert "SAUCE: AppArmor: allow newer tools to load policy on older + kernels" + * SAUCE: AppArmor: allow newer tools to load policy on older kernels + - LP: #639758 + + [ Mathieu J. Poirier ] + + * SAUCE: Adding vdd_sdi regulator supply to OMAP3EVM + + [ Upstream Kernel Changes ] + + * ALSA: HDA: Enable internal speaker on Dell M101z + - LP: #640254 + + -- Leann Ogasawara Fri, 17 Sep 2010 13:21:28 -0700 + +linux (2.6.35-22.32) maverick; urgency=low + + [ Arjan van de Ven ] + + * SAUCE: libata: Add ALPM power state accounting to the AHCI driver + + [ David Henningsson ] + + * SAUCE: ALSA: HDA: Enable internal mic on Dell E6410 and Dell E6510 + - LP: #605047, #628961 + + [ John Johansen ] + + * [Upstream] AppArmor: Fix splitting an fqname into separate namespace + and profile names + - LP: #615947 + * [Upstream] AppArmor: Fix locking from removal of profile namespace + - LP: #615947 + * SAUCE: AppArmor: allow newer tools to load policy on older kernels + - LP: #639758 + * SAUCE: Improve Amazon EBS performance for EC2 + - LP: #634316 + + [ Leann Ogasawara ] + + * Revert "SAUCE: i915 KMS -- blacklist i855" + * Revert "SAUCE: i915 KMS -- blacklist i845g" + * Revert "SAUCE: i915 KMS -- blacklist i830" + * Revert "SAUCE: i915 KMS -- support disabling KMS for known broken + devices" + * execute module-inclusion within a subshell + - LP: #621175 + + [ Upstream Kernel Changes ] + + * (pre-stable) bounce: call flush_dcache_page() after bounce_copy_vec() + - LP: #633227 + * (pre-stable) drm/i915: don't enable self-refresh on Ironlake + - LP: #629711 + * (pre-stable) mm: Move vma_stack_continue into mm.h + * x86, hwmon: Fix unsafe smp_processor_id() in thermal_throttle_add_dev + - LP: #601073 + * PM / Runtime: Make runtime_status attribute not debug-only (v. 2) + * PM / Runtime: Add runtime PM statistics (v3) + * compat: Make compat_alloc_user_space() incorporate the access_ok() + - CVE-2010-3081 + * x86-64, compat: Test %rax for the syscall number, not %eax + - CVE-2010-3301 + * x86-64, compat: Retruncate rax after ia32 syscall entry tracing + - CVE-2010-3301 + + -- Leann Ogasawara Tue, 14 Sep 2010 08:46:49 -0700 + +linux (2.6.35-21.31) maverick; urgency=low + + [ Andy Whitcroft ] + + * bodge linux-libc-dev package version due to ti-omap4 error + * linux-libc-dev -- ensure we can only build this on debian.master + + -- Leann Ogasawara Mon, 13 Sep 2010 09:54:31 -0700 + +linux (2.6.35-21.30) maverick; urgency=low + + [ Andy Whitcroft ] + + * SAUCE: fbcon -- fix OOPs triggered by race prevention fixes + - LP: #614008 + + [ Daniel Lezcano ] + + * SAUCE: fix compilation warning when CONFIG_SECURITY is not set + + [ Henrik Rydberg ] + + * SAUCE: Input: wacom - add fuzz parameters to features + * SAUCE: Input: wacom - collect device quirks into single function + * SAUCE: Input: wacom - add support for the Bamboo Touch trackpad + * SAUCE: Input: wacom - add a quirk for low resolution Bamboo devices + * SAUCE: hid: ntrig: Remove unused device ids + * SAUCE: hid: ntrig: remove sysfs nodes + * SAUCE: hid: ntrig: Correct logic for quirks + * SAUCE: hid: ntrig: zero-initialize ntrig struct + * SAUCE: hid: ntrig: Setup input filtering manually + * SAUCE: hid: ntrig: New ghost-filtering event logic + + [ Leann Ogasawara ] + + * SAUCE: ndiswrapper: Initialize buffer index and check its value + - LP: #613796 + + [ Manoj Iyer ] + + * SAUCE: Add support for Intellimouse Mode in ALPS touchpad on Dell E2 + series Laptops + - LP: #632884 + + [ Ping Cheng ] + + * SAUCE: Input: wacom - parse the Bamboo device family + + [ Rafi Rubin ] + + * SAUCE: hid: ntrig: identify firmware version (wiggled) + + [ Tim Gardner ] + + * [Config] CONFIG_NL80211_TESTMODE=n + + [ Upstream Kernel Changes ] + + * Revert "input: mt: Add support for the Bamboo Touch trackpad" + * e1000e: initial support for 82579 LOMs + * e1000e: correct MAC-PHY interconnect register offset for 82579 + * (pre-stable) ALSA: hda - Add a new hp-laptop model for Conexant 5066, + tested on HP G60 + - LP: #587388 + * DSS2: Don't power off a panel twice + - LP: #588243 + * mmc: build fix: mmc_pm_notify is only available with CONFIG_PM=y + * Input: i8042 - reset keyboard controller wehen resuming from S2R + - LP: #86820 + * ALSA: hda - Fix beep frequency on IDT 92HD73xx and 92HD71Bxx codecs + - LP: #414795 + * agp/intel: Support the extended physical addressing bits on + Sandybridge. + - LP: #632488 + * drm/i915,intel_agp: Add support for Sandybridge D0 + - LP: #632488 + * (pre-stable) intel_agp,i915: Add more sandybridge graphics device ids + - LP: #632488 + * mmc: omap: fix for bus width which improves SD card's peformance. + + -- Leann Ogasawara Tue, 07 Sep 2010 09:58:52 -0700 + +linux (2.6.35-20.29) maverick; urgency=low + + [ Andy Whitcroft ] + + * SAUCE: i915 KMS -- support disabling KMS for known broken devices + - LP: #563277 + * SAUCE: i915 KMS -- blacklist i830 + - LP: #542208, #563277 + * SAUCE: i915 KMS -- blacklist i845g + - LP: #541492, #563277 + * SAUCE: i915 KMS -- blacklist i855 + - LP: #511001, #541511, #563277 + + [ Leann Ogasawara ] + + * [Config] Enable CONFIG_SENSORS_PKGTEMP=m + - LP: #601073 + * ARM: Temporarily disable module check for armel + * rebase to v2.6.35.4 + * [Config] update configs following rebase to v2.6.35.4 + + [ Ricardo Salveti de Araujo ] + + * [Config] Change CONFIG_LEDS_TRIGGER_HEARTBEAT from module to built-in + in Omap + + [ Tim Gardner ] + + * [Config] Added be2net, be2scsi to udebs + - LP: #628776 + + [ Upstream Kernel Changes ] + + * x86, cpu: Package Level Thermal Control, Power Limit Notification + definitions + - LP: #601073 + * x86, hwmon: Package Level Thermal/Power: pkgtemp hwmon driver + - LP: #601073 + * x86, hwmon: Package Level Thermal/Power: thermal throttling handler + - LP: #601073 + * x86, hwmon: Package Level Thermal/Power: power limit + - LP: #601073 + * x86, hwmon: Package Level Thermal/Power: pkgtemp documentation + - LP: #601073 + * hid: 3m: Adjust to sequential MT HID protocol + * hid: 3m: Convert to MT slots + * hid: 3m: Correct touchscreen emulation + * hid: 3m: Adjust major / minor axes to scale + * input: bcm5974: Adjust major / minor to scale + * HID: magicmouse: don't allow hidinput to initialize the device + * HID: magicmouse: simplify multitouch feature request + * HID: magicmouse: simplify touch data bit manipulation + * HID: magicmouse: simplify touch down logic + * HID: magicmouse: remove timestamp logic + * HID: magicmouse: enable Magic Trackpad support + * HID: magicmouse: Adjust major / minor axes to scale + * mmc: fix all hangs related to mmc/sd card insert/removal during + suspend/resume + - LP: #477106 + * drm/i915: fix VGA plane disable for Ironlake+ + - LP: #602281 + + -- Leann Ogasawara Mon, 30 Aug 2010 08:38:01 -0700 + +linux (2.6.35-19.28) maverick; urgency=low + + [ Leann Ogasawara ] + + * No changes from 2.6.35-19.27. Some armel udebs were accidentally deleted + from the archive and a no-change rebuild was attempted. However, the ABI + did not get bumped and resulted in build failures for 2.6.35-19.27. Fix + up the ABI and re-upload. + + -- Leann Ogasawara Sat, 28 Aug 2010 16:42:27 -0700 + +linux (2.6.35-19.27) maverick; urgency=low + + [ Leann Ogasawara ] + + * No changes from 2.6.35-19.26. Some armel udebs were accidentally deleted + from the archive. + + -- Leann Ogasawara Fri, 27 Aug 2010 08:58:35 -0700 + +linux (2.6.35-19.26) maverick; urgency=low + + [ Upstream Kernel Changes ] + + * ARM: OMAP: Beagle: revision detection + * ARM: OMAP: Beagle: only Cx boards use pin 23 for write protect + * ARM: OMAP: Beagle: no gpio_wp pin connection on xM + + -- Leann Ogasawara Thu, 26 Aug 2010 09:15:09 -0700 + +linux (2.6.35-19.25) maverick; urgency=low + + [ Jarod Wilson ] + + * SAUCE: Bring in staging/lirc from 2.6.36 + - LP: #609234 + * SAUCE: Update ir-core to linuxtv/other which should be merged for + 2.6.36. + - LP: #609234 + * SAUCE: Fix memleaks in imon and mceusb drivers + - LP: #609234 + * SAUCE: Bring in streamzap support from linuxtv/other + - LP: #609234 + + [ Mario Limonciello ] + + * Remove ubuntu/lirc in favor of staging/lirc from 2.6.36 + - LP: #609234 + + [ Mathieu J. Poirier ] + + * SAUCE: ARM: adding i2c eeprom driver to read EDID + - LP: #608279 + + [ Upstream Kernel Changes ] + + * intel_idle: disable module support + - LP: #615265 + * (pre-stable) ALSA: hda - Ensure codec patch files are checked for the + correct codec ID + * (pre-stable) ALSA: hda - Rename iMic to Int Mic on Lenovo NB0763 + - LP: #605101 + * (pre-stable) ALSA: HDA: Use model=auto for LG R510 + - LP: #495134 + * (pre-stable) ALSA: HDA: Add Sony VAIO quirk for ALC269 + - LP: #519066 + * (pre-stable) ALSA: HDA: Fix front mic on Dell Precision M6500 + - LP: #519066 + * input: mt: Initialize slots to unused (rev2) + * input: mt: Add support for the Bamboo Touch trackpad + * hid: Add a hid quirk for input sync override + + -- Leann Ogasawara Mon, 23 Aug 2010 12:42:52 -0700 + +linux (2.6.35-18.24) maverick; urgency=low + + [ Colin Watson ] + + * Pass DEB_MAINT_PARAMS to hook scripts + + [ Leann Ogasawara ] + + * [Config] Add CONFIG_INPUT_UINPUT=y to config enforcer + - LP: #584812 + * rebase to v2.6.35.3 + + [ Upstream Kernel Changes ] + + * (pre-stable) dell-wmi: Add support for eject key on Dell Studio 1555 + - LP: #609234 + * can: add limit for nframes and clean up signed/unsigned variables + - CVE-2010-2959 + * drm: Initialize ioctl struct when no user data is present + - CVE-2010-2803 + * ARM: initial stack protector (-fstack-protector) support + * ARM: stack protector: change the canary value per task + * [ARM] implement arch_randomize_brk() + * [ARM] add address randomization to mmap() + * ARM: fix ASLR of PIE executables + + -- Leann Ogasawara Sun, 22 Aug 2010 19:22:04 -0700 + +linux (2.6.35-17.23) maverick; urgency=low + + [ Jeremy Kerr ] + + * [Config] build-in uinput module + - LP: #584812 + + [ Leann Ogasawara ] + + * Revert "[Config] [FTBS] ia64: Temporarily disable CONFIG_CEPH_FS" + * Revert "[Config] [FTBS] ia64: Temporarily disable gpiolib" + * Revert "[Config] [FTBS] sparc: Temporarily disable + CONFIG_MTD_NAND_DENALI" + * Revert "[Config] [FTBS] sparc: Temporarily disable + CONFIG_MFD_JANZ_CMODIO" + * Revert "[Config] [FTBS] sparc: Temporarily disable + CONFIG_INFINIBAND_QIB" + * [Config] Enable INTEL_IPS + - LP: #601057 + * Remove ia64 support + * [Config] Update portsconfigs after removing ia64 support + * Remove sparc support + * [Config] Update portsconfigs after removing sparc support + + [ Linus Torvalds ] + + * (pre-stable) mm: fix page table unmap for stack guard page properly + + [ Mathieu J. Poirier ] + + * SAUCE: (no-up) ARM: Resetting power_mode to its original value. + - LP: #591941 + + [ Upstream Kernel Changes ] + + * timer: add on-stack deferrable timer interfaces + - LP: #601057 + * x86 platform driver: intelligent power sharing driver + - LP: #601057 + * IPS driver: add GPU busy and turbo checking + - LP: #601057 + * X86: intel_ips, check for kzalloc properly + - LP: #601057 + * ips driver: make it less chatty + - LP: #601057 + + -- Leann Ogasawara Tue, 17 Aug 2010 09:38:08 -0700 + +linux (2.6.35-16.22) maverick; urgency=low + + [ Andy Whitcroft ] + + * debian -- more agressivly clean up after depmod on purge + - LP: #618591 + + [ Henrik Rydberg ] + + * SAUCE: hid: 3m: Simplify touchsreen emulation logic + + [ Leann Ogasawara ] + + * ubuntu: iscsitarget -- version 1.4.20.2 + * ubuntu: rtl8192se -- update to version 0017.0507.2010 + * rebase to v2.6.35.2 + * [Config] update configs following rebase to v2.6.35.2 + * [Config] update ports configs following rebase to v2.6.35.2 + + [ Luke Yelavich ] + + * [Config] Enable new firewire stack on powerpc + + [ Mathieu J. Poirier ] + + * SAUCE: (drop after 2.6.35) ARM: Using gpmc function to init nand flash. + - LP: #608266 + + -- Leann Ogasawara Thu, 12 Aug 2010 09:58:01 -0700 + +linux (2.6.35-15.21) maverick; urgency=low + + [ Luke Yelavich ] + + * [Config] CONFIG_SND_USB_UA101=m for all architectures + + [ Upstream Kernel Changes ] + + * Input: introduce MT event slots + * Input: document the MT event slot protocol + * (pre-stable) sched: Revert nohz_ratelimit() for now + * (pre-stable) drm/radeon/kms: add missing copy from user + - LP: #606081 + + [ Leann Ogasawara ] + + * rebase to v2.6.35.1 + + -- Leann Ogasawara Mon, 09 Aug 2010 09:24:04 -0700 + +linux (2.6.35-14.20) maverick; urgency=low + + [ Andy Whitcroft ] + + * update Vcs-Git to point to maverick repo + * debian -- include the debian packaging in the -source package + - LP: #608674 + * select debian source format 1.0 + * add support for building selected stages of kernel + - LP: #603087 + * cleanup conditional dependancy handling + - LP: #603087 + + [ Upstream Kernel Changes ] + + * ALSA: hda - Handle missing NID 0x1b on ALC259 codec + - LP: #582199, #586418, #588031 + * ALSA: hda - Handle pin NID 0x1a on ALC259/269 + - LP: #582199, #586418, #588031 + * sched: Revert nohz_ratelimit() for now + + -- Leann Ogasawara Tue, 03 Aug 2010 08:46:47 -0700 + +linux (2.6.35-14.19) maverick; urgency=low + + [ Leann Ogasawara ] + + * rebase to v2.6.35 + + -- Leann Ogasawara Sun, 01 Aug 2010 10:35:56 -0700 + +linux (2.6.35-13.18) maverick; urgency=low + + [ Andy Whitcroft ] + + * SAUCE: (no-up) Modularize vesafb -- fix initialisation + * SAUCE: add tracing for user initiated readahead requests + * SAUCE: vt -- maintain bootloader screen mode and content until vt + switch + * SAUCE: vt -- allow grub to request automatic vt_handoff + * SAUCE: fbcon -- fix race between open and removal of framebuffers + * SAUCE: drm -- stop early access to drm devices + + [ Bryan Wu ] + + * CONFIG: compile in OTG driver and Transceiver driver + - LP: #566645 + * remove OTG modules from modules list file + + [ John Johansen ] + + * SAUCE: AppArmor: -- sync to AppArmor mainline 2010-07-27 + - LP: #581525, #599450 + * SAUCE: AppArmor: -- sync to AppArmor mainline 2010-07-29 + * SAUCE: AppArmor 2.4 compatibility patch + * SAUCE: AppArmor: Allow dfa backward compatibility with broken userspace + * SAUCE: fix pv-ops for legacy Xen + * SAUCE: blkfront: default to sd devices + * [Config] Build in drivers required for Xen pv-ops + + [ Leann Ogasawara ] + + * Revert "[Upstream] i915: Use the correct mask to detect i830 aperture + size." + + [ Lee Jones ] + + * SAUCE: ARM: OMAP: Add macros for comparing silicon revision + - LP: #608095 + * SAUCE: OMAP: DSS2: check for both cpu type and revision, rather than + just revision + - LP: #608095 + * SAUCE: OMAP: DSS2: enable hsclk in dsi_pll_init for OMAP36XX + - LP: #608095 + * SAUCE: ARM: OMAP: Beagle: support twl gpio differences on xM + - LP: #608095 + + [ Upstream Kernel Changes ] + + * agp/intel: Use the correct mask to detect i830 aperture size. + - LP: #597075 + + -- Leann Ogasawara Fri, 30 Jul 2010 15:46:59 -0700 + +linux (2.6.35-12.17) maverick; urgency=low + + [ Leann Ogasawara ] + + * rebase to v2.6.35-rc6 + * [Config] update configs following rebase to v2.6.35-rc6 + * [Config] update ports configs following rebase to v2.6.35-rc6 + * SAUCE: [FTBS] armel: define KEY_F10 and KEYF11 + + [ Leann Ogasawara ] + + * rebase to v2.6.35-rc6 + + -- Leann Ogasawara Fri, 23 Jul 2010 16:16:38 +0200 + +linux (2.6.35-11.16) maverick; urgency=low + + [ Leann Ogasawara ] + + * Bump ABI for new compiler update + + -- Leann Ogasawara Fri, 23 Jul 2010 10:24:58 +0200 + +linux (2.6.35-10.15) maverick; urgency=low + + [ Leann Ogasawara ] + + * Revert "SAUCE: ensure vga16fb loads if no other driver claims the VGA + device" + * [Config] Enable CONFIG_M686=y + - LP: #592495 + + [ Upstream Kernel Changes ] + + * tracing: Add alignment to syscall metadata declarations + + -- Leann Ogasawara Tue, 20 Jul 2010 18:18:49 +0200 + +linux (2.6.35-9.14) maverick; urgency=low + + [ Andy Whitcroft ] + + * ubuntu: AUFS -- add BOM and automated update script + * ubuntu: AUFS -- update to b37c575759dc4535ccc03241c584ad5fe69e3b25 + + [ John Johansen ] + + * [Config] Enable DRBD as a module + + [ Kees Cook ] + + * SAUCE: Yama: verify inode is symlink to avoid bind mounts + - LP: #604407 + + [ Leann Ogasawara ] + + * [Config] Disable CONFIG_DRM_VMWGFX (staging driver) + - LP: #606139 + * [Config] ports: Disable CONFIG_DRM_VMWGFX (staging driver) + - LP: #606139 + * [Config] Enable CONFIG_DEBUG_STRICT_USER_COPY_CHECKS=y + * [Config] ports: Enable CONFIG_DEBUG_STRICT_USER_COPY_CHECKS=y + + [ Lee Jones ] + + * Stop ARM boards crashing when CUPS is loaded + - LP: #601226 + + [ Upstream Kernel Changes ] + + * perf probe: Support tracing an entry of array + * perf probe: Support static and global variables + + -- Leann Ogasawara Fri, 16 Jul 2010 14:38:17 -0700 + +linux (2.6.35-8.13) maverick; urgency=low + + [ Kees Cook ] + + * SAUCE: Yama: check PTRACE using thread group leader + * SAUCE: Yama: search for PTRACE exceptions via thread group leader + - LP: #603716 + + [ Leann Ogasawara ] + + * rebase to v2.6.35-rc5 + * [Config] update configs following rebase to v2.6.35-rc5 + + [ Nicolas Pitre ] + + * SAUCE: make ndiswrapper available on X86 only + + [ Tim Gardner ] + + * [Config] Added ums-cypress to udeb + - LP: #576066 + * SAUCE: fix build error with CONFIG_BLK_DEV_INITRD=n + * [Config] CONFIG_NDISWRAPPER=m across all configs + + [ Upstream Kernel Changes ] + + * HID: magicmouse: report last touch up + * rebase to 2.6.35-rc5 + + -- Leann Ogasawara Tue, 13 Jul 2010 18:57:59 -0700 + +linux (2.6.35-7.12) maverick; urgency=low + + [ Tim Gardner ] + + * [Upstream] i915: Use the correct mask to detect i830 aperture size. + - LP: #597075 + + [ Upstream Kernel Changes ] + + * (drop after 2.6.35) drm/radeon/kms: add ioport register access + (squashed) + + -- Tim Gardner Thu, 08 Jul 2010 09:53:13 -0600 + +linux (2.6.35-7.11) maverick; urgency=low + + [ Tim Gardner ] + + * [Config] CONFIG_X86_MRST=n + + [ Upstream Kernel Changes ] + + * (drop after 2.6.35-rc5) writeback: remove writeback_inodes_wbc + * (drop after 2.6.35-rc5) writeback: split writeback_inodes_wb + * (drop after 2.6.35-rc5) writeback: simplify the write back thread queue + + -- Tim Gardner Tue, 06 Jul 2010 18:39:08 -0600 + +linux (2.6.35-7.10) maverick; urgency=low + + [ Kees Cook ] + + * SAUCE: security: create task_free security callback + * SAUCE: Yama: add PTRACE exception tracking and interface + * SAUCE: security: unconditionally chain to Yama LSM + * Revert "SAUCE: ptrace: restrict ptrace scope to children" + * Revert "SAUCE: fs: block hardlinks to non-accessible sources" + * Revert "SAUCE: fs: block cross-uid sticky symlinks" + * [Upstream] security: Yama LSM + * [Config] Enable CONFIG_SECURITY_YAMA=y + + [ Tim Gardner ] + + * [Config] updateconfigs/updateportsconfigs after rebase to 2.6.35-rc4 + + [ Upstream Kernel Changes ] + + * rebase to 2.6.35-rc4 + + -- Leann Ogasawara Thu, 01 Jul 2010 08:55:57 -0700 + +linux (2.6.35-6.9) maverick; urgency=low + + [ Tim Gardner ] + + * [Upstream] direct_splice_actor() should not use pos in sd + - LP: #588861 + + -- Leann Ogasawara Mon, 28 Jun 2010 12:35:49 -0700 + +linux (2.6.35-6.8) maverick; urgency=low + + [ Mathieu J. Poirier ] + + * ARM: Adding regulator supply for vdds_sdi. + - LP: #597904 + + -- Leann Ogasawara Sun, 27 Jun 2010 16:34:43 -0700 + +linux (2.6.35-6.7) maverick; urgency=low + + [ Alberto Milone ] + + * [Upstream] Add support for the ATIF ACPI method to the radeon driver + + [ Chase Douglas ] + + * [Upstream] HID: magicmouse: scroll on entire surface, not just middle + of mouse + * [Upstream] HID: magicmouse: disable and add module param for scroll + acceleration + * [Upstream] HID: magicmouse: properly account for scroll movement in + state + * [Upstream] HID: magicmouse: add param for scroll speed + * [Upstream] HID: magicmouse: enable horizontal scrolling + + [ Henrik Rydberg ] + + * [Upstream] Input: evdev - convert to dynamic event buffer + * [Upstream] Input: evdev - use driver hint to compute size of event + buffer + * [Upstream] Input: bcm5974 - set the average number of events per MT + event packet + * [Upstream] Input: hid-input - use a larger event buffer for MT devices + * [Upstream] Input: evdev - never leave the client buffer empty after + write + + [ John Johansen ] + + * SAUCE: AppArmor: -- mainline 2010-06-23 + * SAUCE: AppArmor 2.4 compatibility patch + * SAUCE: fs: block hardlinks to non-accessible sources AppArmor portion + + [ Leann Ogasawara ] + + * [Config] Enable CONFIG_INTR_REMAP=y + - LP: #597091 + * [Config] Enable CONFIG_X86_X2APIC + - LP: #597091 + + [ Mathieu J. Poirier ] + + * [Config] ARM: Turning off CONFIG_CPU_IDLE on omap + - LP: #594382 + + -- Leann Ogasawara Thu, 24 Jun 2010 12:19:48 -0700 + +linux (2.6.35-5.6) maverick; urgency=low + + [ Amit Kucheria ] + + * [Config] update omap flavour description + + [ Andy Whitcroft ] + + * update to ubuntu-debian:508b7aa34b578c0d1e51bfb571f2bfb824dc65ac + - LP: #570500, #576274 + * SAUCE: add option to hand off all kernel parameters to init + - LP: #586386 + * [Config] enable passing all kernel command line to init + - LP: #586386 + * [Config] disable CONFIG_VMI + - LP: #537601 + * [Config] enable CONFIG_IPV6_SIT_6RD + - LP: #591869 + * [Config] enable CONFIG_VMWARE_BALOON as module + - LP: #592039 + + [ Leann Ogasawara ] + + * Revert "SAUCE: pm: Config option to disable handling of console during + suspend/resume" + - LP: #594885 + * [Config] Remove CONFIG_PM_DISABLE_CONSOLE + * [Config] ports: enable passing all kernel command line to init + - LP: #586386 + * [Config] Enable CONFIG_FB_VESA=y for x86 + * [Config] Add CONFIG_FRAMEBUFFER_CONSOLE=y to config enforcer + * [Config] Add CONFIG_FB_VESA=y for x86 to config enforcer + * [Config] Enable CONFIG_TASK_DELAY_ACCT=y + - LP: #493156 + + [ Mathieu Poirier ] + + * ARM: Adding MosChip MCS7830 to nic-usb + - LP: #584920 + + [ Upstream Kernel Changes ] + + * Revert "[Upstream] docbook: need xmldoclinks for all doc types" + * docbook: need xmldoclinks for all doc types + * perf probe: Add kernel source path option + + -- Leann Ogasawara Thu, 17 Jun 2010 08:05:29 -0700 + +linux (2.6.35-4.5) maverick; urgency=low + + [ Leann Ogasawara ] + + * Revert "[Upstream] (evdev) Use driver hint to compute the evdev buffer + size (rev2)" + * Revert "[Upstream] (evdev) Convert to dynamic event buffer (rev4)" + * Revert "[Upstream] (evdev) Use multi-reader buffer to save space + (rev4)" + * Revert "SAUCE: drivers: Remove some duplicate device entries in various + modules" + * [Upstream] USB: option: Remove duplicate AMOI_VENDOR_ID + * [Upstream] Revert "USB: Adding support for HTC Smartphones to ipaq" + * [Upstream] p54usb: Comment out duplicate Medion MD40900 device id + + [ Tim Gardner ] + + * [Config] CONFIG_NFS_FSCACHE=y + - LP: #440522 + * [Config] CONFIG_FSCACHE_STATS=y, CONFIG_FSCACHE_HISTOGRAM=y + - LP: #440522 + + -- Leann Ogasawara Wed, 16 Jun 2010 08:43:07 -0700 + +linux (2.6.35-3.4) maverick; urgency=low + + [ Andy Whitcroft ] + + * debian -- ensure the version number is clean + + [ Henrik Rydberg ] + + * [Upstream] Introduce MT event slots (rev 5) + * [Upstream] Document the MT event slot protocol (rev5) + * [Upstream] (evdev) Use multi-reader buffer to save space (rev4) + * [Upstream] (evdev) Convert to dynamic event buffer (rev4) + * [Upstream] (evdev) Use driver hint to compute the evdev buffer size + (rev2) + + [ Leann Ogasawara ] + + * Revert "SAUCE: Add MODULE_ALIAS for Dell WMI module" + * Revert "SAUCE: hostap: send events on data interface as well as master + interface" + * Revert "Fix webcam having USB ID 0ac8:303b" + * Revert "SAUCE: toshiba_acpi -- pull in current -dev version of driver" + * rebase to v2.6.35-rc3 + + [ Maxim Levitsky ] + + * [Config] Enable new Smartmedia/xD translation layer + - LP: #202490 + + [ Upstream Kernel Changes ] + + * net: fix deliver_no_wcard regression on loopback device + + [ Upstream changes ] + + * rebased to v2.6.35-rc3 + + -- Leann Ogasawara Thu, 10 Jun 2010 16:15:22 -0700 + +linux (2.6.35-2.3) maverick; urgency=low + + [ Bryan Wu ] + + * CONFIG: enforce -- make sure we disable CONFIG_LOCALVERSION_AUTO + + [ Leann Ogasawara ] + + * [Config] armel: Enable CONFIG_BNX2=m + * [Config] ports: Enable CONFIG_BNX2X=m + * SAUCE: armel: define get_dma_ops to fix FTBS + + [ Tim Gardner ] + + * [Upstream] net: Print num_rx_queues imbalance warning only when there + are allocated queues + - LP: #591416 + + -- Leann Ogasawara Wed, 09 Jun 2010 08:27:41 -0700 + +linux (2.6.35-2.2) maverick; urgency=low + + [ Andy Whitcroft ] + + * [Config] d-i: make armel configuration versatile flavour specific + - LP: #588805 + * [Config] d-i: enable .udebs for omap flavour + - LP: #588805 + + [ Kees Cook ] + + * ptrace: limit scope to attach only (allow read) + - LP: #589656 + + [ Leann Ogasawara ] + + * rebase to v2.6.35-rc2 + * [Config] update configs following rebase to v2.6.35-rc2 + * [Config] update port configs following rebase to v2.6.35-rc2 + + [ Lee Jones ] + + * Enable perf to be more helpful when perf_ does not exist. + - LP: #570500 + * 'fdr editconfig' modification. Easily skip over unwanted menuconfigs. + + [ Tim Gardner ] + + * [Config] Update bnx2 udeb firmware files + - LP: #589304 + + [ Upstream changes ] + + * rebased to v2.6.35-rc2 + + -- Leann Ogasawara Mon, 07 Jun 2010 09:45:04 -0700 + +linux (2.6.35-1.1) maverick; urgency=low + + [ Andy Whitcroft ] + + * ubuntu: AUFS -- update to standalone 2.6.35-rcN as at 20100601 + - LP: #587888 + * ubuntu: AUFS -- track changes to the arguements to fop fsync() + + [ Leann Ogasawara ] + + * rebase to v2.6.35-rc1 + * [Config] update configs following rebase to v2.6.35-rc1 + * [Config] update port configs following rebase to v2.6.35-rc1 + * SAUCE: lirc: rename usb_buffer_alloc() and usb_buffer_free() + * SAUCE: ndiswrapper: rename usb_buffer_alloc() and usb_buffer_free() + * SAUCE: ndiswrapper: convert multicast list to list_head + * [Config] [FTBS] armel: Temporarily disable CONFIG_GPIO_JANZ_TTL + * [Config] [FTBS] ia64: Temporarily disable gpiolib + * [Config] [FTBS] ia64: Temporarily disable CONFIG_CEPH_FS + * [Config] [FTBS] sparc: Temporarily disable CONFIG_INFINIBAND_QIB + * [Config] [FTBS] sparc: Temporarily disable CONFIG_MFD_JANZ_CMODIO + * [Config] [FTBS] armel: Temporarily disable CONFIG_MFD_JANZ_CMODIO + * [Config] [FTBS] armel: Temporarily disable CONFIG_DT3155 + * [Config] [FTBS] sparc: Temporarily disable CONFIG_MTD_NAND_DENALI + * [Config] [FTBS] armel: Temporarily disable bnx2 + * [Config] [FTBS] armel: Temporarily disable CONFIG_SERIAL_UARTLITE + * SAUCE: [FTBS] armel: Don't include asm/agp.h for ttm + * SAUCE: [FTBS] armel: include linux/dma-mapping.h + * SAUCE: [FTBS] armel: replace omap_set_gpio_debounce with + gpio_set_debounce + + [ Upstream Kernel Changes ] + + * of/usb: fix build error due to of_node pointer move + * n2_crypto: Fix build after of_device/of_platform_driver changes. + * powerpc/fsl-booke: fix the case where we are not in the first page + * powerpc/fsl-booke: Move the entry setup code into a seperate file + * powerpc/kexec: Add support for FSL-BookE + * greth: Fix build after OF device conversions. + + [ Upstream changes ] + + * rebased to v2.6.35-rc1 + + -- Leann Ogasawara Fri, 04 Jun 2010 23:01:52 -0700 + +linux (2.6.35-1.0) UNRELEASED; urgency=low + + [ Leann Ogasawara ] + + * Null entry. + + -- Leann Ogasawara Wed, 02 Jun 2010 15:17:41 -0700 + +linux (2.6.34-5.14) maverick; urgency=low + + [ Tim Gardner ] + + * [Config] Added module inclusion support + * [Config] Added virtual flavour module inclusion list and d-i package + definitions + + -- Leann Ogasawara Wed, 02 Jun 2010 12:58:14 -0700 + +linux (2.6.34-5.13) maverick; urgency=low + + [ Andy Whitcroft ] + + * Revert "ubuntu: AUFS -- aufs2 20091209" + * Revert "ubuntu: AUFS -- export various core functions + (aufs2-standalone.patch)" + * Revert "ubuntu: AUFS -- export various core functions + (aufs2-base.patch)" + * ubuntu: AUFS -- aufs2 base patch for linux-2.6.34 + - LP: #587888 + * ubuntu: AUFS -- aufs2 standalone patch for linux-2.6.34 + - LP: #587888 + * ubuntu: AUFS -- update to standalone 2.6.34 as at 20100601 + - LP: #587888 + * [Config] AUFS -- enable aufs options + - LP: #587888 + + -- Leann Ogasawara Tue, 01 Jun 2010 08:56:43 -0700 + +linux (2.6.34-5.12) maverick; urgency=low + + [ Andy Whitcroft ] + + * enforce -- ensure SYSFS compatibility is disabled + + [ Chase Douglas ] + + * build with libdw-dev for perf probe symbol support + * maverick ftrace configuration changes + + [ Kees Cook ] + + * Revert "SAUCE: x86: brk away from exec rand area" + * Revert "SAUCE: [um] Don't use nx_enabled under UML" + * Revert "SAUCE: [x86] implement cs-limit nx-emulation for ia32" + * SAUCE: x86: implement cs-limit nx-emulation for ia32 + - LP: #369978 + * SAUCE: x86: more tightly confine cs-limit nx-emulation to ia32 only + * SAUCE: x86: brk away from exec rand area + - LP: #452175 + * SAUCE: ptrace: restrict ptrace scope to children + + [ Leann Ogasawara ] + + * Add new omap flavour to getabis + * [Config] Enable CONFIG_FRAMEBUFFER_CONSOLE=y for all archs + - LP: #585490 + * build/modules: Temorarily add ignore.modules + * ubuntu: iscsitarget -- version 1.4.20.1 + + [ Loïc Minier ] + + * SAUCE: [um] Don't use nx_enabled under UML + - LP: #524849 + + -- Leann Ogasawara Fri, 28 May 2010 08:27:17 -0700 + +linux (2.6.34-4.11) maverick; urgency=low + + [ Amit Kucheria ] + + * SAUCE: omap: remove calls to usb_nop_xceiv_register from board files + * [Config] Add support for OMAP-mainline flavour + + [ Andy Whitcroft ] + + * SAUCE: powerpc: fix compile error when ptrace.h is included from + userspace + - LP: #583733 + + [ Chase Douglas ] + + * Revert "SAUCE: Don't register vga16fb framebuffer if other framebuffers + are present" + * Revert "SAUCE: Disable function tracing after hitting __schedule_bug" + * Revert "SAUCE: drm/i915: don't change DRM configuration when releasing + load detect pipe" + + [ Kees Cook ] + + * SAUCE: fs: block cross-uid sticky symlinks + * SAUCE: fs: block hardlinks to non-accessible sources + + [ Koen Kooi ] + + * SAUCE: board-omap3-beagle: add DSS2 support + + [ Leann Ogasawara ] + + * Revert "staging/go7007 -- disable" + * Revert "[Config] staging/winbond -- disable" + * Revert "Disable 4MB page tables for Atom, work around errata AAE44" + * Revert "SAUCE: sync before umount to reduce time taken by ext4 umount" + * Revert "SAUCE: Enable an e1000e Intel Corporation 82567 Gigabit + controller" + * Revert "SAUCE: Fix MODULE_IMPORT/MODULE_EXPORT" + * Revert "SAUCE: Created MODULE_EXPORT/MODULE_IMPORT macros" + * Revert "SAUCE: input/mouse/alps: Do not call psmouse_reset() for alps" + * Revert "SAUCE: r8169: disable TSO by default for RTL8111/8168B + chipsets." + * Revert "[Upstream] b43: Declare all possible firmware files." + * Revert "add Breaks: against hardy lvm2" + * Revert "SAUCE: Guest OS does not recognize a lun with non zero target + id on Vmware ESX Server" + * Revert "SAUCE: Catch nonsense keycodes and silently ignore" + * [Config] Enable CONFIG_ECRYPT_FS=y for ports + * [Config] Enable CONFIG_USB=y for armel and sparc + * [Config] Enable CONFIG_SCSI=y for ia64 and sparc + * [Config] Enable CONFIG_RFKILL=y for ports + * [Config] Enable CONFIG_ATH9K_DEBUGFS=y + * [Config] Enable CONFIG_IWMC3200TOP_DEBUGFS=y + * [Config] Enable CONFIG_RCU_FAST_NO_HZ=y + * [Config] Enable CONFIG_IWLWIFI_DEVICE_TRACING=y + * [Config] Enable CONFIG_LIBERTAS_MESH=y + * [Config] Enable CONFIG_MMC_RICOH_MMC=y + * [Config] CONFIG_RT2800USB_UNKNOWN=y + * [Config] Enable CONFIG_VGA_SWITCHEROO=y + * [Config] Enable CONFIG_CEPH_FS=m + * [Config] Enable CONFIG_CRYPTO_PCRYPT=m + * [Config] Enable CONFIG_EEEPC_WMI=m + * [Config] Enable CONFIG_RT2800PCI=m + * [Config] Enable CONFIG_SCSI_HPSA=m + * [Config] Enable CONFIG_VHOST_NET=m + * [Config] Disable CONFIG_SND_HDA_INPUT_BEEP_MODE by default + - LP: #582350 + * [Config] Disable CONFIG_SOUND_OSS* and CONFIG_SND_*OSS + - LP: #579300 + * [Config] Enable CONFIG_PCIEASPM=y + - LP: #333990 + * [Config] updateconfigs for OMAP flavour + + [ Loïc Minier ] + + * Enable perf tools on armel + + [ Tim Gardner ] + + * SAUCE: Updated ndiswrapper to 1.56 + - LP: #582555 + * [Config] Added virtual flavour + * [Config] Remove support for sub-flavours + * [Config] Removed amd64 preempt flavour + * [Config] updateconfigs, updateportsconfigs after flavour munging + + -- Leann Ogasawara Tue, 25 May 2010 09:34:55 -0700 + +linux (2.6.34-3.10) maverick; urgency=low + + [ Leann Ogasawara ] + + * rebase to v2.6.34 + + [ Upstream changes ] + + * rebased to v2.6.34 + + -- Leann Ogasawara Tue, 18 May 2010 17:35:35 -0700 + +linux (2.6.34-2.9) maverick; urgency=low + + [ Leann Ogasawara ] + + * [Config] [FTBS] Disable comedi for armel + + -- Leann Ogasawara Thu, 13 May 2010 23:20:55 +0200 + +linux (2.6.34-2.8) maverick; urgency=low + + [ Leann Ogasawara ] + + * Drop lpia + * [Config] [FTBS] disable KVM + * [Config] [FTBS] disable ipr for armel + + -- Leann Ogasawara Thu, 13 May 2010 16:07:52 +0200 + +linux (2.6.34-2.7) maverick; urgency=low + + [ Leann Ogasawara ] + + * [Config] disable CONFIG_SCSI_IPR on powerpc + * [Config] Remove 386 flavour per UDS discussion + + -- Leann Ogasawara Wed, 12 May 2010 18:26:43 +0200 + +linux (2.6.34-1.6) maverick; urgency=low + + [ Chase Douglas ] + + * enforce CONFIG_TMPFS_POSIX_ACL=y + - LP: #575940 + * don't force module dependency checking + - LP: #577029 + + [ Kees Cook ] + + * SAUCE: mmap_min_addr check CAP_SYS_RAWIO only for write + - LP: #568844 + + [ Leann Ogasawara ] + + * Revert "SAUCE: ata: blacklist FUJITSU MHW2160BH PL" + * rebase to v2.6.34-rc7 + * [Config] update configs following rebase to v2.6.34-rc7 + * [Config] update port configs following rebase to v2.6.34-rc7 + * Add btrfs to the udebs + + [ Tim Gardner ] + + * [Config] Add atl1c to nic-modules udeb + - LP: #557130 + + [ Upstream changes ] + + * rebased to v2.6.34-rc7 + + -- Leann Ogasawara Tue, 11 May 2010 11:29:08 +0200 + +linux (2.6.34-1.5) UNRELEASED; urgency=low + + [ Leann Ogasawara ] + + * rebase to v2.6.34-rc6 + * [Config] update configs following rebase to v2.6.34-rc6 + * [Config] update port configs following rebase to v2.6.34-rc6 + + [ Upstream changes ] + + * rebased to v2.6.34-rc6 + + -- Leann Ogasawara Fri, 30 Apr 2010 15:54:05 +0100 + +linux (2.6.34-1.4) UNRELEASED; urgency=low + + [ Leann Ogasawara ] + + * rebase to v2.6.34-rc5 + * [Config] update ports configs following rebase to v2.6.34-rc5 + + [ Upstream changes ] + + * rebased to v2.6.34-rc5 + + -- Leann Ogasawara Thu, 22 Apr 2010 15:36:12 -0700 + +linux (2.6.34-1.3) UNRELEASED; urgency=low + + [ Leann Ogasawara ] + + * rebase to v2.6.34-rc4 + * [Config] update configs following rebase to v2.6.34-rc4 + * [Config] update port configs following rebase to v2.6.34-rc4 + * ubuntu: dm-raid4-5 -- update to compile with 2.6.34-rc4 + + [ Upstream changes ] + + * rebased to v2.6.34-rc4 + + -- Leann Ogasawara Tue, 13 Apr 2010 18:33:44 -0700 + +linux (2.6.34-1.2) UNRELEASED; urgency=low + + [ Leann Ogasawara ] + + * Temorarily disable building linux-doc + * rebase to v2.6.34-rc3 + * [Config] update configs following rebase to v2.6.34-rc3 + * [Config] update port configs following rebase to v2.6.34-rc3 + + [ Upstream changes ] + + * rebased to v2.6.34-rc3 + + -- Leann Ogasawara Tue, 30 Mar 2010 16:55:44 -0700 + +linux (2.6.34-1.1) UNRELEASED; urgency=low + + [ Leann Ogasawara ] + + * rebase to v2.6.34-rc2 + * ubuntu: dm-raid4-5 -- update to compile with 2.6.34-rc2 + * [Config] update port configs following rebase to v2.6.34-rc2 + * [Config] update configs following rebase to v2.6.34-rc2 + + [ Upstream changes ] + + * rebased to v2.6.34-rc2 + + -- Leann Ogasawara Wed, 24 Mar 2010 23:00:39 -0700 + +linux (2.6.33-1.1) UNRELEASED; urgency=low + + [ Leann Ogasawara ] + + * ubuntu: dm-raid4-5 -- update to compile with 2.6.33 + * ubuntu: lirc -- drop explicit include of linux/autoconf.h + * ubuntu: lirc -- pass kfifo to kfifo_alloc and move spinlock + * ubuntu: lirc -- rename kfifo_put and kfifo_get + * ubuntu: iscsitarget -- rename daddr inet_sock field + * rebased to v2.6.33 + * [Config] update configs following rebase to v2.6.33 + * [Config] update ports configs following rebase to v2.6.33 + + [ Upstream changes ] + + * rebased to v2.6.33 + + -- Leann Ogasawara Tue, 23 Mar 2010 03:55:46 -0700 + +linux (2.6.33-0.0) UNRELEASED; urgency=low + + [ Leann Ogasawara ] + + * Null entry. + + -- Leann Ogasawara Wed, 17 Mar 2010 07:48:56 -0700 + +linux (2.6.32-16.25) lucid; urgency=low + + [ Andy Whitcroft ] + + * linux-tools -- move to Suggests: with explicit seeding + - LP: #534635 + + [ Tim Gardner ] + + * [Config] CONFIG_HID=m + + [ Upstream Kernel Changes ] + + * (pre-stable) sched: Fix SMT scheduler regression in + find_busiest_queue() + * KVM: introduce kvm_vcpu_on_spin + * KVM: VMX: Add support for Pause-Loop Exiting + + -- Andy Whitcroft Tue, 09 Mar 2010 14:13:51 +0000 + +linux (2.6.32-16.24) lucid; urgency=low + + [ Andy Whitcroft ] + + * armel -- perf userspace does not support arm + * ia64 -- libelf-dev/binutils-dev to not provide necessary libraries + + -- Andy Whitcroft Sat, 06 Mar 2010 11:42:12 +0000 + +linux (2.6.32-16.23) lucid; urgency=low + + [ Andy Whitcroft ] + + * SAUCE: PM report driver and device suspend/resume times -- move config + * update to standards version 3.8.4.0 + * printenv -- expose all of the package selectors + * source package -- cleanup source content control + * doc package -- ensure we do build package content on buildd + * lintian -- correct the address in the debian/copyright + * lintian -- update debhelper package version dependancy + * lintian -- fix ghostscript dependancy + * lintian -- add required misc:Depends + * lintian -- move our debhelper compat level to debian/compat + * perf -- build the kernel carried tools + * perf -- add linux-tools carrying the version switches and manuals + * SAUCE: fix up Kconfig for staging drivers + * [Config] enable NOUVEAU etc following drm backport + * update DRM to mainline v2.6.33 + * [Config] Remove AppArmor config options that no longer exist (ports) + * [Config] updateportsconfigs following drm update + + [ John Johansen ] + + * ubuntu: AppArmor -- update to mainline 2010-03-04 + * SAUCE: AppArmor: Reintroduce AppArmor 2.4 compatibility + * SAUCE: AppArmor: replace strim with strstrip for 2.6.32 kernels + * [Config] Remove AppArmor config options that no longer exist + + [ Manoj Iyer ] + + * ubuntu: rtl8192se -- version 2010-0115,0014 + - LP: #530275 + * [Config] added CONFIG_RTL8192SE module. + - LP: #530275 + + [ Tim Gardner ] + + * [Config] Added vmw_pvscsi to d-i/scsi-modules + - LP: #531017 + * [Upstream] netfilter: xt_recent: Add an entry reaper + + [ Upstream Kernel Changes ] + + * Revert "KVM: x86 emulator: Check CPL level during privilege instruction + emulation" + * Revert "KVM: x86 emulator: Fix popf emulation" + * Revert "KVM: x86 emulator: Check IOPL level during io instruction + emulation" + * Revert "KVM: x86 emulator: Add Virtual-8086 mode of emulation" + * Revert "KVM: fix memory access during x86 emulation." + * Add vlan (8021.Q) module package for d-i. + * (pre-stable) drm/i915: blacklist lid status: Sony VGN-BX196VP, Dell + Inspiron 700m + - LP: #515246 + * [Upstream] docbook: need xmldoclinks for all doc types + * x86: set_personality_ia32() misses force_personality32 + * lib: Introduce generic list_sort function + * drm/nv50: Implement ctxprog/state generation. + * drm/nv50: Remove redundant/incorrect ctxvals initialisation. + * (pre-stable) drm/i915: blacklist lid status: Sony VGN-BX196VP, Dell + Inspiron 700m + - LP: #515246 + + -- Andy Whitcroft Fri, 05 Mar 2010 15:40:38 +0000 + +linux (2.6.32-15.22) lucid; urgency=low + + [ Andy Whitcroft ] + + * Revert "[Config] added new config option CONFIG_SR_REPORT_TIME_LIMIT" + * Revert "SAUCE: PM report driver and device suspend/resume times." + * [Config] set CONFIG_SR_REPORT_TIME_LIMIT + + [ Manoj Iyer ] + + * SAUCE: PM report driver and device suspend/resume times. + + -- Andy Whitcroft Tue, 02 Mar 2010 01:35:37 +0000 + +linux (2.6.32-15.21) lucid; urgency=low + + [ Andy Whitcroft ] + + * Revert "(pre-stable) drm/i915: Increase fb alignment to 64k" + * Revert "[Config] lenovo-sl-laptop -- enable" + * Revert "ubuntu: lenovo-sl-laptop -- git tip (b19a08f81f)" + * armel -- cramfs module will no longer be built + * d-i -- make all modules optional + * rename the debug packages to match archive standard + - LP: #527837 + * lenovo-sl-laptop is no longer built + + [ Colin Ian King ] + + * Disable 4MB page tables for Atom, work around errata AAE44 + - LP: #523112 + + [ Colin Watson ] + + * ubuntu: dm-raid4-5: Depend on XOR_BLOCKS + * ubuntu: fsam7400: Depend on CHECK_SIGNATURE + + [ Jesse Barnes ] + + * SAUCE: drm/i915: don't change DRM configuration when releasing load + detect pipe + - LP: #488328 + + [ Loïc Minier ] + + * [Config] armel Update versatile initrd configs + - LP: #524893 + * SAUCE: [um] Don't use nx_enabled under UML + - LP: #524849 + + [ Manoj Iyer ] + + * [Config] added new config option CONFIG_SR_REPORT_TIME_LIMIT + + [ Mario Limonciello ] + + * SAUCE: v3 - Add Dell Business Class Netbook LED driver + + [ Rafael J. Wysocki ] + + * SAUCE: PM report driver and device suspend/resume times. + + [ Surbhi Palande ] + + * Revert "[Upstream] e1000e: enhance frame fragment detection" + - CVE-2009-4538 + * Revert "[Upstream] e1000: enhance frame fragment detection" + - CVE-2009-4536 + + [ Tim Gardner ] + + * [Config] Enabled CONFIG_LEDS_DELL_NETBOOKS=m + * SAUCE: (pre-stable) netfilter: xt_recent: fix buffer overflow + * SAUCE: (pre-stable) netfilter: xt_recent: fix false match + + [ Upstream Kernel Changes ] + + * Revert "(pre-stable) eCryptfs: Add getattr function" + * Fix potential crash with sys_move_pages + * futex_lock_pi() key refcnt fix + * futex: Handle user space corruption gracefully + * futex: Handle futex value corruption gracefully + * Fix race in tty_fasync() properly + * hwmon: (w83781d) Request I/O ports individually for probing + * hwmon: (lm78) Request I/O ports individually for probing + * hwmon: (adt7462) Wrong ADT7462_VOLT_COUNT + * ALSA: ctxfi - fix PTP address initialization + * drm/i915: disable hotplug detect before Ironlake CRT detect + * drm/i915: enable self-refresh on 965 + * drm/i915: Disable SR when more than one pipe is enabled + * drm/i915: Fix DDC on some systems by clearing BIOS GMBUS setup. + * drm/i915: Add HP nx9020/SamsungSX20S to ACPI LID quirk list + * drm/i915: Fix the incorrect DMI string for Samsung SX20S laptop + * drm/i915: Add MALATA PC-81005 to ACPI LID quirk list + * usb: r8a66597-hcd: Flush the D-cache for the pipe-in transfer buffers. + * i2c-tiny-usb: Fix on big-endian systems + * drm/i915: handle FBC and self-refresh better + * drm/i915: Increase fb alignment to 64k + * drm/i915: Update write_domains on active list after flush. + * regulator: Fix display of null constraints for regulators + * ALSA: hda-intel: Avoid divide by zero crash + * CPUFREQ: Fix use after free of struct powernow_k8_data + * freeze_bdev: don't deactivate successfully frozen MS_RDONLY sb + * cciss: Make cciss_seq_show handle holes in the h->drv[] array + * ioat: fix infinite timeout checking in ioat2_quiesce + * resource: add helpers for fetching rlimits + * fs/exec.c: restrict initial stack space expansion to rlimit + * cifs: fix length calculation for converted unicode readdir names + * NFS: Fix a reference leak in nfs_wb_cancel_page() + * NFS: Try to commit unstable writes in nfs_release_page() + * NFSv4: Don't allow posix locking against servers that don't support it + * NFSv4: Ensure that the NFSv4 locking can recover from stateid errors + * NFS: Fix an Oops when truncating a file + * NFS: Fix a umount race + * NFS: Fix a bug in nfs_fscache_release_page() + * NFS: Fix the mapping of the NFSERR_SERVERFAULT error + * md: fix 'degraded' calculation when starting a reshape. + * V4L/DVB: dvb-core: fix initialization of feeds list in demux filter + * Export the symbol of getboottime and mmonotonic_to_bootbased + * kvmclock: count total_sleep_time when updating guest clock + * KVM: PIT: control word is write-only + * tpm_infineon: fix suspend/resume handler for pnp_driver + * amd64_edac: Do not falsely trigger kerneloops + * netfilter: nf_conntrack: fix memory corruption with multiple namespaces + * netfilter: nf_conntrack: per netns nf_conntrack_cachep + * netfilter: nf_conntrack: restrict runtime expect hashsize modifications + * netfilter: xtables: compat out of scope fix + * netfilter: nf_conntrack: fix hash resizing with namespaces + * drm/i915: remove full registers dump debug + * drm/i915: add i915_lp_ring_sync helper + * drm/i915: Don't wait interruptible for possible plane buffer flush + * dasd: remove strings from s390dbf + * crypto: padlock-sha - Add import/export support + * wmi: Free the allocated acpi objects through wmi_get_event_data + * dell-wmi, hp-wmi, msi-wmi: check wmi_get_event_data() return value + * /dev/mem: introduce size_inside_page() + * devmem: check vmalloc address on kmem read/write + * devmem: fix kmem write bug on memory holes + * SCSI: mptfusion : mptscsih_abort return value should be SUCCESS instead + of value 0. + * sh: Couple kernel and user write page perm bits for CONFIG_X2TLB + * ALSA: hda - use WARN_ON_ONCE() for zero-division detection + * dst: call cond_resched() in dst_gc_task() + * ALSA: hda - Improved MacBook (Pro) 5,1 / 5,2 support + * befs: fix leak + * rtc-fm3130: add missing braces + * Call flush_dcache_page after PIO data transfers in libata-sff.c + * ahci: add Acer G725 to broken suspend list + * pktgen: Fix freezing problem + * x86/amd-iommu: Fix IOMMU-API initialization for iommu=pt + * x86/amd-iommu: Fix deassignment of a device from the pt_domain + * x86: Re-get cfg_new in case reuse/move irq_desc + * Staging: fix rtl8187se compilation errors with mac80211 + * ALSA: usb-audio - Avoid Oops after disconnect + * serial: 8250: add serial transmitter fully empty test + * sysfs: sysfs_sd_setattr set iattrs unconditionally + * class: Free the class private data in class_release + * USB: usbfs: only copy the actual data received + * USB: usbfs: properly clean up the as structure on error paths + * rtl8187: Add new device ID + * ACPI: Add NULL pointer check in acpi_bus_start + * ACPI: fix High cpu temperature with 2.6.32 + * drm/radeon/kms: use udelay for short delays + * NFS: Too many GETATTR and ACCESS calls after direct I/O + * eCryptfs: Add getattr function + * b43: Fix throughput regression + * ath9k: Fix sequence numbers for PAE frames + * mac80211: Fix probe request filtering in IBSS mode + * iwlwifi: Fix to set correct ht configuration + * dm stripe: avoid divide by zero with invalid stripe count + * dm log: userspace fix overhead_size calcuations + * Linux 2.6.32.9 + * sfc: Fix SFE4002 initialisation + * sfc: Fix sign of efx_mcdi_poll_reboot() error in efx_mcdi_poll() + * sfc: SFE4002/SFN4112F: Widen temperature and voltage tolerances + * (pre-stable) HID: handle joysticks with large number of buttons + - LP: #492056 + * (pre-stable) HID: extend mask for BUTTON usage page + - LP: #492056 + * PM: Measure device suspend and resume times + * e1000: enhance frame fragment detection + - CVE-2009-4536 + * e1000e: enhance frame fragment detection + - CVE-2009-4538 + * KVM: fix memory access during x86 emulation. + - CVE-2010-0306 + * KVM: x86 emulator: Add Virtual-8086 mode of emulation + - CVE-2010-0306 + * KVM: x86 emulator: Check IOPL level during io instruction emulation + - CVE-2010-0306 + * KVM: x86 emulator: Fix popf emulation + - CVE-2010-0306 + * KVM: x86 emulator: Check CPL level during privilege instruction + emulation + - CVE-2010-0306 + * Input: wacom - ensure the device is initialized properly upon resume + * Input: wacom - add defines for packet lengths of various devices + * Input: wacom - add support for new LCD tablets + - LP: #516777 + + -- Andy Whitcroft Mon, 01 Mar 2010 22:56:28 +0000 + +linux (2.6.32-14.20) lucid; urgency=low + + [ Andy Whitcroft ] + + * rebuild following the GCC update to match compiler for out of tree modules + * Revert "[Config] drbd -- enable" + * Revert "ubuntu: drbd -- version 8.3.1" + * SAUCE: khubd -- switch USB product/manufacturer/serial handling to RCU + - LP: #510937 + + -- Andy Whitcroft Fri, 19 Feb 2010 18:47:18 +0000 + +linux (2.6.32-14.19) lucid; urgency=low + + [ Andy Whitcroft ] + + * ensure we build the source package contents when enabled + - LP: #522308 + * [Config] enable CONFIG_X86_MCE_XEON75XX + * SAUCE: AppArmor -- add linux/kref.h for struct kref + * [Config] enable CONFIG_HID_ORTEK + * enable udeb generation for arm versatile flavour + - LP: #522515 + + [ John Johansen ] + + * ubuntu: AppArmor -- update to mainline 2010-02-18 + - LP: #439560, #496110, #507069 + + [ Johnathon Harris ] + + * SAUCE: HID: add support for Ortek WKB-2000 + - LP: #405390 + + [ Upstream Kernel Changes ] + + * tpm_tis: TPM_STS_DATA_EXPECT workaround + - LP: #490487 + * x86, mce: Xeon75xx specific interface to get corrected memory error + information + * x86, mce: Rename cpu_specific_poll to mce_cpu_specific_poll + * x86, mce: Make xeon75xx memory driver dependent on PCI + * drm/edid: Unify detailed block parsing between base and extension + blocks + - LP: #500999 + * (pre-stable) eCryptfs: Add getattr function + - LP: #390833 + + -- Andy Whitcroft Thu, 18 Feb 2010 19:22:02 +0000 + +linux (2.6.32-13.18) lucid; urgency=low + + [ Andy Whitcroft ] + + * Revert "enforcer -- make the enforcement configuration common" + * Revert "(pre-stable) Input: ALPS - add interleaved protocol support + (Dell E6x00 series)" + * Revert "(pre-stable) driver-core: fix devtmpfs crash on s390" + * Revert "(pre-stable) Driver-Core: devtmpfs - set root directory mode to + 0755" + * Revert "SAUCE: Adds support for COMPAL JHL90 webcam" + * Revert "SAUCE: fix kernel oops in VirtualBox during paravirt patching" + * Revert "SAUCE: make fc transport removal of target configurable" + * enforcer -- make the enforcement configuration common + * getabis -- add preempt flavour to the list + * [Config] enforce DEVTMPFS options + * [Config] armel -- cleanup to-be builtin modules + * [Config] cleanup ports configs + * [Config] enable CRYPTO_GHASH_CLMUL_NI_INTEL + - LP: #485536 + * add printdebian target to find branch target + * distclean -- do not remove debian.env + * [Config] generic-pae switch to M586TSC + - LP: #519448 + * git-ubuntu-log -- commonise duplicated log handling + * git-ubuntu-log -- tighten up Bug: NNNN matching + * git-ubuntu-log -- sort the bug numbers + + [ Chris Wilson ] + + * (pre-stable) drm/i915: Increase fb alignment to 64k + - LP: #404064 + + [ Eric Miao ] + + * arm -- enable ubuntu/ directory + + [ Huang Ying ] + + * SAUCE: crypto: ghash - Add PCLMULQDQ accelerated implementation + * SAUCE: crypto: ghash-intel - Fix building failure on x86_32 + + [ Loïc Minier ] + + * [Config] cleanup preempt configuration + * [Config] versatile: Fix video output + - LP: #517594 + * [Config] armel DEFAULT_MMAP_MIN_ADDR=32768 + * [Config] Large update to armel/versatile + * [Config] versatile: Add RTC support + * [Config] armel: Enable NEON + * [Config] versatile: Builtin MMC support + * [Config] versatile Builtin SCSI controller + * [Config] armel Disable dma_cache_sync callers + * [Config] armel Disable asm/time.h users + * [Config] armel Disable out of range udelay() + * [Config] armel Disable flush_cache_range() users + * [Config] armel -- Enable ubuntu/ drivers + + [ Steve Conklin ] + + * SAUCE: drm/i915: Add display hotplug event on Ironlake + * SAUCE: drm/i915: Add ACPI OpRegion support for Ironlake + + [ Upstream Kernel Changes ] + + * Revert "[Upstream]: oprofile/x86: add Xeon 7500 series support" + * Revert "Revert "[Bluetooth] Eliminate checks for impossible conditions + in IRQ handler"" + * clockevent: Don't remove broadcast device when cpu is dead + * clockevents: Add missing include to pacify sparse + * ACPI: don't cond_resched if irq is disabled + * be2net: Add support for next generation of BladeEngine device. + * be2net: Add the new PCI IDs to PCI_DEVICE_TABLE. + * mpt2sas: New device SAS2208 support is added + * ar9170: Add support for D-Link DWA 160 A2 + * powerpc/fsl: Add PCI device ids for new QoirQ chips + * davinci: dm646x: Add support for 3.x silicon revision + * Input: ALPS - add interleaved protocol support (Dell E6x00 series) + * Driver-Core: devtmpfs - set root directory mode to 0755 + * driver-core: fix devtmpfs crash on s390 + * vfs: get_sb_single() - do not pass options twice + * ALSA: hda - Add PCI IDs for Nvidia G2xx-series + * V4L/DVB (13569): smsusb: add autodetection support for five additional + Hauppauge USB IDs + * USB: mos7840: add device IDs for B&B electronics devices + * USB: ftdi_sio: add USB device ID's for B&B Electronics line + * V4L/DVB (13168): Add support for Asus Europa Hybrid DVB-T card (SAA7134 + SubVendor ID: 0x1043 Device ID: 0x4847) + * iTCO_wdt: Add support for Intel Ibex Peak + * atl1c:use common_task instead of reset_task and link_chg_task + * atl1e:disable NETIF_F_TSO6 for hardware limit + * V4L/DVB (13680a): DocBook/media: copy images after building HTML + * V4L/DVB (13680b): DocBook/media: create links for included sources + * netfilter: xtables: fix conntrack match v1 ipt-save output + * partitions: read whole sector with EFI GPT header + * partitions: use sector size for EFI GPT + * ALSA: ice1724 - Patch for suspend/resume for ESI Juli@ + * sched: Fix isolcpus boot option + * sched: Fix missing sched tunable recalculation on cpu add/remove + * nohz: Prevent clocksource wrapping during idle + * nfsd: Fix sort_pacl in fs/nfsd/nf4acl.c to actually sort groups + * timers, init: Limit the number of per cpu calibration bootup messages + * PCI: Always set prefetchable base/limit upper32 registers + * iscsi class: modify handling of replacement timeout + * NFS: Revert default r/wsize behavior + * HID: fixup quirk for NCR devices + * scsi_devinfo: update Hitachi entries (v2) + * scsi_dh: create sysfs file, dh_state for all SCSI disk devices + * scsi_transport_fc: remove invalid BUG_ON + * lpfc: fix hang on SGI ia64 platform + * libfc: fix typo in retry check on received PRLI + * libfc: fix ddp in fc_fcp for 0 xid + * fcoe: remove redundant checking of netdev->netdev_ops + * libfc: Fix wrong scsi return status under FC_DATA_UNDRUN + * libfc: lport: fix minor documentation errors + * libfc: don't WARN_ON in lport_timeout for RESET state + * fcoe: initialize return value in fcoe_destroy + * libfc: Fix frags in frame exceeding SKB_MAX_FRAGS in fc_fcp_send_data + * libfc: fix memory corruption caused by double frees and bad error + handling + * libfc: fix free of fc_rport_priv with timer pending + * libfc: remote port gets stuck in restart state without really + restarting + * fcoe, libfc: fix an libfc issue with queue ramp down in libfc + * fcoe: Fix checking san mac address + * fcoe: Fix getting san mac for VLAN interface + * qlge: Remove explicit setting of PCI Dev CTL reg. + * qlge: Set PCIE max read request size. + * qlge: Don't fail open when port is not initialized. + * qlge: Add handler for DCBX firmware event. + * qlge: Bonding fix for mode 6. + * PCI: AER: fix aer inject result in kernel oops + * DMI: allow omitting ident strings in DMI tables + * Input: i8042 - remove identification strings from DMI tables + * Input: i8042 - add Gigabyte M1022M to the noloop list + * Input: i8042 - add Dritek quirk for Acer Aspire 5610. + * ALSA: hda - select IbexPeak handler for Calpella + * ALSA: hda - Fix quirk for Maxdata obook4-1 + * ALSA: hda - Add missing Line-Out and PCM switches as slave + * iTCO_wdt.c - cleanup chipset documentation + * iTCO_wdt: add PCI ID for the Intel EP80579 (Tolapai) SoC + * iTCO_wdt: Add Intel Cougar Point and PCH DeviceIDs + * ahci: disable SNotification capability for ich8 + * ata_piix: fix MWDMA handling on PIIX3 + * md: fix small irregularity with start_ro module parameter + * V4L/DVB (13826): uvcvideo: Fix controls blacklisting + * cio: fix double free in case of probe failure + * cio: dont panic in non-fatal conditions + * netiucv: displayed TX bytes value much too high + * ipc ns: fix memory leak (idr) + * ALSA: hda - Fix HP T5735 automute + * hwmon: (fschmd) Fix a memleak on multiple opens of /dev/watchdog + * UBI: fix memory leak in update path + * UBI: initialise update marker + * ASoC: fix a memory-leak in wm8903 + * mac80211: check that ieee80211_set_power_mgmt only handles STA + interfaces. + * cfg80211: fix channel setting for wext + * KVM: S390: fix potential array overrun in intercept handling + * KVM: only allow one gsi per fd + * KVM: Fix race between APIC TMR and IRR + * KVM: MMU: bail out pagewalk on kvm_read_guest error + * KVM: x86: Fix host_mapping_level() + * KVM: x86: Fix probable memory leak of vcpu->arch.mce_banks + * KVM: x86: Fix leak of free lapic date in kvm_arch_vcpu_init() + * KVM: fix lock imbalance in kvm_*_irq_source_id() + * KVM: only clear irq_source_id if irqchip is present + * IPoIB: Clear ipoib_neigh.dgid in ipoib_neigh_alloc() + * x86: Reenable TSC sync check at boot, even with NONSTOP_TSC + * ACPI: enable C2 and Turbo-mode on Nehalem notebooks on A/C + - LP: #516325 + * iwlwifi: Fix throughput stall issue in HT mode for 5000 + * fnctl: f_modown should call write_lock_irqsave/restore + * x86, msr/cpuid: Pass the number of minors when unregistering MSR and + CPUID drivers. + * Linux 2.6.32.7 + * scsi_lib: Fix bug in completion of bidi commands + * mptsas: Fix issue with chain pools allocation on katmai + * mm: add new 'read_cache_page_gfp()' helper function + * drm/i915: Selectively enable self-reclaim + * firewire: ohci: fix crashes with TSB43AB23 on 64bit systems + * S390: fix single stepped svcs with TRACE_IRQFLAGS=y + * x86: Set hotpluggable nodes in nodes_possible_map + * x86: Remove "x86 CPU features in debugfs" (CONFIG_X86_CPU_DEBUG) + * libata: retry FS IOs even if it has failed with AC_ERR_INVALID + * zcrypt: Do not remove coprocessor for error 8/72 + * dasd: fix possible NULL pointer errors + * ACPI: Add a generic API for _OSC -v2 + * ACPI: Add platform-wide _OSC support. + * ACPI: fix OSC regression that caused aer and pciehp not to load + * ACPI: Advertise to BIOS in _OSC: _OST on _PPC changes + * UBI: fix volume creation input checking + * e1000/e1000e: don't use small hardware rx buffers + * drm/i915: Reload hangcheck timer too for Ironlake + * Fix a leak in affs_fill_super() + * Fix failure exits in bfs_fill_super() + * fix oops in fs/9p late mount failure + * fix leak in romfs_fill_super() + * Fix remount races with symlink handling in affs + * fix affs parse_options() + * Fix failure exit in ipathfs + * mm: fix migratetype bug which slowed swapping + * FDPIC: Respect PT_GNU_STACK exec protection markings when creating + NOMMU stack + * Split 'flush_old_exec' into two functions + * sparc: TIF_ABI_PENDING bit removal + * x86: get rid of the insane TIF_ABI_PENDING bit + * Input: winbond-cir - remove dmesg spam + * x86: Disable HPET MSI on ATI SB700/SB800 + * iwlwifi: set default aggregation frame count limit to 31 + * drm/i915: only enable hotplug for detected outputs + * firewire: core: add_descriptor size check + * SECURITY: selinux, fix update_rlimit_cpu parameter + * regulator: Specify REGULATOR_CHANGE_STATUS for WM835x LED constraints + * x86: Add Dell OptiPlex 760 reboot quirk + - LP: #488319 + * x86: Add quirk for Intel DG45FC board to avoid low memory corruption + * x86/amd-iommu: Fix possible integer overflow + * clocksource: fix compilation if no GENERIC_TIME + * tcp: update the netstamp_needed counter when cloning sockets + * sky2: Fix oops in sky2_xmit_frame() after TX timeout + * net: restore ip source validation + * af_packet: Don't use skb after dev_queue_xmit() + * ax25: netrom: rose: Fix timer oopses + * KVM: allow userspace to adjust kvmclock offset + * oprofile/x86: add Xeon 7500 series support + * oprofile/x86: fix crash when profiling more than 28 events + * libata: retry link resume if necessary + * mm: percpu-vmap fix RCU list walking + * mm: purge fragmented percpu vmap blocks + * block: fix bio_add_page for non trivial merge_bvec_fn case + * Fix 'flush_old_exec()/setup_new_exec()' split + * random: drop weird m_time/a_time manipulation + * random: Remove unused inode variable + * block: fix bugs in bio-integrity mempool usage + * usb: r8a66597-hdc disable interrupts fix + * connector: Delete buggy notification code. + * be2net: Bug fix to support newer generation of BE ASIC + * be2net: Fix memset() arg ordering. + * mm: flush dcache before writing into page to avoid alias + * mac80211: fix NULL pointer dereference when ftrace is enabled + * imxfb: correct location of callbacks in suspend and resume + * mx3fb: some debug and initialisation fixes + * starfire: clean up properly if firmware loading fails + * kernel/cred.c: use kmem_cache_free + * uartlite: fix crash when using as console + * pktcdvd: removing device does not remove its sysfs dir + * ath9k: fix eeprom INI values override for 2GHz-only cards + * ath9k: fix beacon slot/buffer leak + * powerpc: TIF_ABI_PENDING bit removal + * NET: fix oops at bootime in sysctl code + * Linux 2.6.32.8 + + -- Andy Whitcroft Wed, 10 Feb 2010 18:56:52 +0000 + +linux (2.6.32-12.17) lucid; urgency=low + + [ Andy Whitcroft ] + + * restore linux-image prefix -- master + * enforce -- we require SELINUX enabled -- master + * enforce -- ensure APPARMOR is our default LSM -- master + * make doc package completely optional -- master + * make source package completely optional -- master + * make linux-libc-dev completly optional -- master + * convert package disable to a deps list -- master + * allow common headers to switch from indep to arch -- master + * convert binary package disable to a deps list -- master + * add configuration option for a full source build tree -- master + * add support for uImage kernels in package control scripts + * getabis -- cleanup and parameterise repository list -- master + * getabis -- move configuration to etc/getabi -- master + * kernelconfig -- move configuration to etc -- master + * rules -- make debian/debian.env master for branch name + * set the current branch name -- master + * pull back common debian.master files into debian -- master + * enforcer -- make the enforcement configuration common + * insert-changes -- correctly link to debian/rules in DROOT + + [ Colin Watson ] + + * future-proof ddeb handling against buildd changes + + [ Eric Miao ] + + * SAUCE: Make CONFIG_{OMNIBOOK, AVERATEC_5100P, PACKARDBELL_E5} depend on + X86 + + [ Loïc Minier ] + + * Add modules.builtin.bin to prerm rm list + - LP: #516584 + + [ Tim Gardner ] + + * [Config] Implement the amd64 preempt flavour + + [ Upstream Kernel Changes ] + + * syslog: distinguish between /proc/kmsg and syscalls + - LP: #515623 + * sfc: Fix polling for slow MCDI operations + * sfc: Fix conditions for MDIO self-test + * sfc: QT202x: Remove unreliable MMD check at initialisation + * sfc: Add workspace for GMAC bug workaround to MCDI MAC_STATS buffer + * sfc: Use fixed-size buffers for MCDI NVRAM requests + + -- Andy Whitcroft Fri, 05 Feb 2010 07:09:31 +0000 + +linux (2.6.32-12.16) lucid; urgency=low + + [ Andy Whitcroft ] + + * Revert "SAUCE: acpi battery -- delay first lookup of the battery until + first use" + * SAUCE: acpi battery -- move first lookup asynchronous + - LP: #507211 + * [Config] update configs to cleanup generic configs + * [Config] disable CONFIG_X86_CPU_DEBUG for amd64 + * [Config] enable USER_NS + - LP: #480739, #509808 + + [ Heiko Carstens ] + + * (pre-stable) driver-core: fix devtmpfs crash on s390 + - LP: #512370 + + [ John Johansen ] + + * [Config] for server and virtual flavours make CONFIG_SCSI_SYM53C8XX_2=y + - LP: #494565 + * [Config] VIRTIO=y for server/virtual flavours + - LP: #494565 + + [ Kay Sievers ] + + * (pre-stable) Driver-Core: devtmpfs - set root directory mode to 0755 + - LP: #512370 + + [ Kees Cook ] + + * SAUCE: x86: brk away from exec rand area + - LP: #452175 + + [ Leann Ogasawara ] + + * [Upstream] e1000: enhance frame fragment detection + - CVE-2009-4536 + * [Upstream] e1000e: enhance frame fragment detection + - CVE-2009-4538 + + [ Sebastian Kapfer ] + + * (pre-stable) Input: ALPS - add interleaved protocol support (Dell E6x00 + series) + - LP: #296610 + + [ Upstream Kernel Changes ] + + * inotify: do not reuse watch descriptors + - LP: #485556 + * inotify: only warn once for inotify problems + * revert "drivers/video/s3c-fb.c: fix clock setting for Samsung SoC + Framebuffer" + * memcg: ensure list is empty at rmdir + * drm/i915: remove loop in Ironlake interrupt handler + * block: Fix incorrect reporting of partition alignment + * x86, mce: Thermal monitoring depends on APIC being enabled + * futexes: Remove rw parameter from get_futex_key() + * page allocator: update NR_FREE_PAGES only when necessary + * x86, apic: use physical mode for IBM summit platforms + * edac: i5000_edac critical fix panic out of bounds + * x86: SGI UV: Fix mapping of MMIO registers + * mfd: WM835x GPIO direction register is not locked + * mfd: Correct WM835x ISINK ramp time defines + * ALSA: hda - Fix missing capture mixer for ALC861/660 codecs + * V4L/DVB (13868): gspca - sn9c20x: Fix test of unsigned. + * reiserfs: truncate blocks not used by a write + * HID: add device IDs for new model of Apple Wireless Keyboard + * PCI/cardbus: Add a fixup hook and fix powerpc + * Input: pmouse - move Sentelic probe down the list + * asus-laptop: add Lenovo SL hotkey support + * sched: Fix cpu_clock() in NMIs, on !CONFIG_HAVE_UNSTABLE_SCHED_CLOCK + * sparc64: Fix NMI programming when perf events are active. + * sparc64: Fix Niagara2 perf event handling. + * i2c: Do not use device name after device_unregister + * i2c/pca: Don't use *_interruptible + * serial/8250_pnp: add a new Fujitsu Wacom Tablet PC device + * sched: Fix task priority bug + * vfs: Fix vmtruncate() regression + * Linux 2.6.32.5 + * x86, msr/cpuid: Register enough minors for the MSR and CPUID drivers + * V4L/DVB (13900): gspca - sunplus: Fix bridge exchanges. + * Staging: asus_oled: fix oops in 2.6.32.2 + * Staging: hv: fix smp problems in the hyperv core code + * tty: fix race in tty_fasync + * ecryptfs: use after free + * ecryptfs: initialize private persistent file before dereferencing + pointer + * nozomi: quick fix for the close/close bug + * serial: 8250_pnp: use wildcard for serial Wacom tablets + * usb: serial: fix memory leak in generic driver + * USB: fix bitmask merge error + * USB: Don't use GFP_KERNEL while we cannot reset a storage device + * USB: EHCI: fix handling of unusual interrupt intervals + * USB: EHCI & UHCI: fix race between root-hub suspend and port resume + * USB: add missing delay during remote wakeup + * USB: add speed values for USB 3.0 and wireless controllers + * ACPI: EC: Accelerate query execution + * ACPI: EC: Add wait for irq storm + * SCSI: enclosure: fix oops while iterating enclosure_status array + * drm/i915: Read the response after issuing DDC bus switch command + * drm/i915: try another possible DDC bus for the SDVO device with + multiple outputs + * block: bdev_stack_limits wrapper + * DM: Fix device mapper topology stacking + * x86/PCI/PAT: return EINVAL for pci mmap WC request for !pat_enabled + * USB: fix usbstorage for 2770:915d delivers no FAT + * vmalloc: remove BUG_ON due to racy counting of VM_LAZY_FREE + * perf timechart: Use tid not pid for COMM change + * perf events: Dont report side-band events on each cpu for + per-task-per-cpu events + * perf: Honour event state for aux stream data + * Linux 2.6.32.6 + + -- Andy Whitcroft Wed, 27 Jan 2010 16:40:23 +0000 + +linux (2.6.32-11.15) lucid; urgency=low + + [ Andy Whitcroft ] + + * Revert "(pre-stable) drm/radeon/kms: fix crtc vblank update for r600" + * Revert "(pre-stable) sched: Fix balance vs hotplug race" + * Revert "[Upstream] acerhdf: Limit modalias matching to supported + boards" + * Revert "[Upstream] mmc: prevent dangling block device from accessing + stale queues" + * Revert "SAUCE: Fix nx_enable reporting" + * Revert "SAUCE: [x86] fix report of cs-limit nx-emulation" + * Revert "SAUCE: [x86] implement cs-limit nx-emulation for ia32" + * SAUCE: i915 -- disable powersave by default + - LP: #492392 + + [ Kees Cook ] + + * SAUCE: [x86] implement cs-limit nx-emulation for ia32 + - LP: #369978 + * SAUCE: [x86] fix report of cs-limit nx-emulation + - LP: #454285 + * SAUCE: Fix nx_enable reporting + - LP: #454285 + + [ Tim Gardner ] + + * [Upstream] b43: Declare all possible firmware files. + - LP: #488636 + * [Config] updateconfigs after adding pvscsi + - LP: #497156 + * [Config] CONFIG_BT=m + + [ Upstream Kernel Changes ] + + * Revert "x86: Side-step lguest problem by only building cmpxchg8b_emu + for pre-Pentium" + * SCSI: ipr: fix EEH recovery + * SCSI: qla2xxx: dpc thread can execute before scsi host has been added + * SCSI: st: fix mdata->page_order handling + * SCSI: fc class: fix fc_transport_init error handling + * sched: Fix task_hot() test order + * x86, cpuid: Add "volatile" to asm in native_cpuid() + * sched: Select_task_rq_fair() must honour SD_LOAD_BALANCE + * clockevents: Prevent clockevent_devices list corruption on cpu hotplug + * pata_hpt3x2n: fix clock turnaround + * pata_cmd64x: fix overclocking of UDMA0-2 modes + * ASoC: wm8974: fix a wrong bit definition + * sound: sgio2audio/pdaudiocf/usb-audio: initialize PCM buffer + * ALSA: hda - Fix missing capsrc_nids for ALC88x + * acerhdf: limit modalias matching to supported + - LP: #435958 + * ACPI: EC: Fix MSI DMI detection + * ACPI: Use the return result of ACPI lid notifier chain correctly + * powerpc: Handle VSX alignment faults correctly in little-endian mode + * ASoC: Do not write to invalid registers on the wm9712. + * drm/radeon: fix build on 64-bit with some compilers. + * USB: emi62: fix crash when trying to load EMI 6|2 firmware + * USB: option: support hi speed for modem Haier CE100 + * USB: Fix a bug on appledisplay.c regarding signedness + * USB: musb: gadget_ep0: avoid SetupEnd interrupt + * Bluetooth: Prevent ill-timed autosuspend in USB driver + * USB: rename usb_configure_device + * USB: fix bugs in usb_(de)authorize_device + * drivers/net/usb: Correct code taking the size of a pointer + * x86: SGI UV: Fix writes to led registers on remote uv hubs + * md: Fix unfortunate interaction with evms + * dma: at_hdmac: correct incompatible type for argument 1 of + 'spin_lock_bh' + * dma-debug: Do not add notifier when dma debugging is disabled. + * dma-debug: Fix bug causing build warning + * cifs: NULL out tcon, pSesInfo, and srvTcp pointers when chasing DFS + referrals + * x86/amd-iommu: Fix initialization failure panic + * ioat3: fix p-disabled q-continuation + * ioat2,3: put channel hardware in known state at init + * KVM: MMU: remove prefault from invlpg handler + * KVM: LAPIC: make sure IRR bitmap is scanned after vm load + * Libertas: fix buffer overflow in lbs_get_essid() + * iwmc3200wifi: fix array out-of-boundary access + * mac80211: fix propagation of failed hardware reconfigurations + * mac80211: fix WMM AP settings application + * mac80211: Fix IBSS merge + * cfg80211: fix race between deauth and assoc response + * ath5k: fix SWI calibration interrupt storm + * ath9k: wake hardware for interface IBSS/AP/Mesh removal + * ath9k: Fix TX queue draining + * ath9k: fix missed error codes in the tx status check + * ath9k: wake hardware during AMPDU TX actions + * ath9k: fix suspend by waking device prior to stop + * ath9k_hw: Fix possible OOB array indexing in gen_timer_index[] on + 64-bit + * ath9k_hw: Fix AR_GPIO_INPUT_EN_VAL_BT_PRIORITY_BB and its shift value + in 0x4054 + * iwl3945: disable power save + * iwl3945: fix panic in iwl3945 driver + * iwlwifi: fix EEPROM/OTP reading endian annotations and a bug + * iwlwifi: fix more eeprom endian bugs + * iwlwifi: fix 40MHz operation setting on cards that do not allow it + * mac80211: fix race with suspend and dynamic_ps_disable_work + * NOMMU: Optimise away the {dac_,}mmap_min_addr tests + * 'sysctl_max_map_count' should be non-negative + * kernel/sysctl.c: fix the incomplete part of + sysctl_max_map_count-should-be-non-negative.patch + * V4L/DVB (13596): ov511.c typo: lock => unlock + * x86/ptrace: make genregs[32]_get/set more robust + * memcg: avoid oom-killing innocent task in case of use_hierarchy + * e100: Fix broken cbs accounting due to missing memset. + * ipv6: reassembly: use seperate reassembly queues for conntrack and + local delivery + * netfilter: fix crashes in bridge netfilter caused by fragment jumps + * hwmon: (sht15) Off-by-one error in array index + incorrect constants + * b43: avoid PPC fault during resume + * Keys: KEYCTL_SESSION_TO_PARENT needs TIF_NOTIFY_RESUME architecture + support + * sched: Fix balance vs hotplug race + * drm/radeon/kms: fix crtc vblank update for r600 + * drm: disable all the possible outputs/crtcs before entering KMS mode + * S390: dasd: support DIAG access for read-only devices + * xen: fix is_disconnected_device/exists_disconnected_device + * xen: improvement to wait_for_devices() + * xen: wait up to 5 minutes for device connetion + * orinoco: fix GFP_KERNEL in orinoco_set_key with interrupts disabled + * udf: Try harder when looking for VAT inode + * Add unlocked version of inode_add_bytes() function + * quota: decouple fs reserved space from quota reservation + * ext4: Convert to generic reserved quota's space management. + * ext4: fix sleep inside spinlock issue with quota and dealloc (#14739) + * x86, msr: Unify rdmsr_on_cpus/wrmsr_on_cpus + * cpumask: use modern cpumask style in drivers/edac/amd64_edac.c + * amd64_edac: unify MCGCTL ECC switching + * x86, msr: Add support for non-contiguous cpumasks + * x86, msr: msrs_alloc/free for CONFIG_SMP=n + * amd64_edac: fix driver instance freeing + * amd64_edac: make driver loading more robust + * amd64_edac: fix forcing module load/unload + * sched: Sched_rt_periodic_timer vs cpu hotplug + * ext4: Update documentation to correct the inode_readahead_blks option + name + * lguest: fix bug in setting guest GDT entry + * vmscan: do not evict inactive pages when skipping an active list scan + * ksm: fix mlockfreed to munlocked + * rt2x00: Disable powersaving for rt61pci and rt2800pci. + * generic_permission: MAY_OPEN is not write access + * Linux 2.6.32.3 + * untangle the do_mremap() mess + * fasync: split 'fasync_helper()' into separate add/remove functions + * ASoC: fix params_rate() macro use in several codecs + * modules: Skip empty sections when exporting section notes + * exofs: simple_write_end does not mark_inode_dirty + * nfsd: make sure data is on disk before calling ->fsync + * sunrpc: fix peername failed on closed listener + * SUNRPC: Fix up an error return value in + gss_import_sec_context_kerberos() + * SUNRPC: Fix the return value in gss_import_sec_context() + * sunrpc: on successful gss error pipe write, don't return error + * drm/i915: Update LVDS connector status when receiving ACPI LID event + * drm/i915: fix order of fence release wrt flushing + * drm/i915: Permit pinning whilst the device is 'suspended' + * drm: remove address mask param for drm_pci_alloc() + * drm/i915: Enable/disable the dithering for LVDS based on VBT setting + * drm/i915: Make the BPC in FDI rx/transcoder be consistent with that in + pipeconf on Ironlake + * drm/i915: Select the correct BPC for LVDS on Ironlake + * drm/i915: fix unused var + * rtc_cmos: convert shutdown to new pnp_driver->shutdown + * drivers/cpuidle/governors/menu.c: fix undefined reference to + `__udivdi3' + * cgroups: fix 2.6.32 regression causing BUG_ON() in cgroup_diput() + * lib/rational.c needs module.h + * dma-debug: allow DMA_BIDIRECTIONAL mappings to be synced with + DMA_FROM_DEVICE and + * kernel/signal.c: fix kernel information leak with print-fatal-signals=1 + * mmc_block: add dev_t initialization check + * mmc_block: fix probe error cleanup bug + * mmc_block: fix queue cleanup + * ALSA: hda - Fix ALC861-VD capture source mixer + * ALSA: ac97: Add Dell Dimension 2400 to Headphone/Line Jack Sense + blacklist + * ALSA: atiixp: Specify codec for Foxconn RC4107MA-RS2 + - LP: #498863 + * ASoC: Fix WM8350 DSP mode B configuration + * netfilter: ebtables: enforce CAP_NET_ADMIN + * netfilter: nf_ct_ftp: fix out of bounds read in update_nl_seq() + * hwmon: (coretemp) Fix TjMax for Atom N450/D410/D510 CPUs + * hwmon: (adt7462) Fix pin 28 monitoring + * quota: Fix dquot_transfer for filesystems different from ext4 + * xen: fix hang on suspend. + * iwlwifi: fix iwl_queue_used bug when read_ptr == write_ptr + * ath5k: Fix eeprom checksum check for custom sized eeproms + * cfg80211: fix syntax error on user regulatory hints + * iwl: off by one bug + * mac80211: add missing sanity checks for action frames + * drm/i915: remove render reclock support + * libertas: Remove carrier signaling from the scan code + * kernel/sysctl.c: fix stable merge error in NOMMU mmap_min_addr + * mac80211: fix skb buffering issue (and fixes to that) + * fix braindamage in audit_tree.c untag_chunk() + * fix more leaks in audit_tree.c tag_chunk() + * module: handle ppc64 relocating kcrctabs when CONFIG_RELOCATABLE=y + * ipv6: skb_dst() can be NULL in ipv6_hop_jumbo(). + * agp/intel-agp: Clear entire GTT on startup + * Linux 2.6.32.4 + * ethtool: Add reset operation + * gro: Name the GRO result enumeration type + * gro: Change all receive functions to return GRO result codes + * sfc: 10Xpress: Initialise pause advertising flags + * sfc: 10Xpress: Report support for pause frames + * sfc: Remove redundant header gmii.h + * sfc: Remove redundant hardware initialisation + * sfc: Rename Falcon-specific board code and types + * sfc: Remove boards.h, moving last remaining declaration to falcon.h + * sfc: Remove versioned bitfield macros + * sfc: Move RX data FIFO thresholds out of struct efx_nic_type + * sfc: Update hardware definitions for Siena + * sfc: Rename register I/O header and functions used by both Falcon and + Siena + * sfc: Eliminate indirect lookups of queue size constants + * sfc: Define DMA address mask explicitly in terms of descriptor field + width + * sfc: Move all TX DMA length limiting into tx.c + * sfc: Change order of device removal to reverse of probe order + * sfc: Remove declarations of nonexistent functions + * sfc: Move efx_xmit_done() declaration into correct stanza + * sfc: Move shared members of struct falcon_nic_data into struct efx_nic + * sfc: Maintain interrupt moderation values in ticks, not microseconds + * sfc: Removed kernel-doc for nonexistent member of efx_phy_operations + * sfc: Remove pointless abstraction of memory BAR number + * sfc: Remove incorrect assertion from efx_pci_remove_main() + * sfc: Remove unnecessary tests of efx->membase + * sfc: Move MTD probe after netdev registration and name allocation + * sfc: Remove unused code for non-autoneg speed/duplex switching + * sfc: Rename 'xfp' file and functions to reflect reality + * sfc: Really allow RX checksum offload to be disabled + * sfc: Feed GRO result into RX allocation policy and interrupt moderation + * sfc: Enable heuristic selection between page and skb RX buffers + * sfc: Remove pointless abstraction of memory BAR number (2) + * sfc: Remove redundant gotos from __efx_rx_packet() + * sfc: Remove ridiculously paranoid assertions + * sfc: Move assertions and buffer cleanup earlier in efx_rx_packet_lro() + * sfc: Record RX queue number on GRO path + * sfc: SFT9001: Reset LED configuration correctly after blinking + * sfc: Use a single blink implementation + * sfc: Rename efx_board::init_leds to init_phy and use for SFN4111T + * sfc: Make board information explicitly Falcon-specific + * sfc: Move definition of struct falcon_nic_data into falcon.h + * sfc: Move struct falcon_board into struct falcon_nic_data + * sfc: Move all I2C stuff into struct falcon_board + * sfc: Gather link state fields in struct efx_nic into new struct + efx_link_state + * sfc: Remove unnecessary casts to struct sk_buff * + * sfc: Remove redundant efx_xmit() function + * sfc: Combine high-level header files + * sfc: Log interrupt and reset type names, not numbers + * sfc: Fix descriptor cache sizes + * sfc: Treat all MAC registers as 128-bit + * sfc: Strengthen EFX_ASSERT_RESET_SERIALISED + * sfc: Comment corrections + * sfc: Remove unused constant + * sfc: Clean up struct falcon_board and struct falcon_board_data + * sfc: Fix bugs in RX queue flushing + * sfc: Remove unused function efx_flush_queues() + * sfc: Only switch Falcon MAC clocks as necessary + * sfc: Hold MAC lock for longer in efx_init_port() + * sfc: Split MAC stats DMA initiation and completion + * sfc: Move Falcon board/PHY/MAC monitoring code to falcon.c + * sfc: Simplify XMAC link polling + * sfc: Change MAC promiscuity and multicast hash at the same time + * sfc: Move inline comment into kernel-doc + * sfc: Do not set net_device::trans_start in self-test + * sfc: Simplify PHY polling + * sfc: QT202x: Reset before reading PHY id + * sfc: Replace MDIO spinlock with mutex + * sfc: Always start Falcon using the XMAC + * sfc: Limit some hardware workarounds to Falcon + * sfc: Remove EFX_WORKAROUND_9141 macro + * sfc: Remove another unused workaround macro + * sfc: Remove some redundant whitespace + * sfc: Decouple NIC revision number from Falcon PCI revision number + * sfc: Move descriptor cache base addresses to struct efx_nic_type + * sfc: Clean up RX event handling + * sfc: Remove redundant writes to INT_ADR_KER + * sfc: Remove duplicate hardware structure definitions + * sfc: Turn pause frame generation on and off at the MAC, not the RX FIFO + * sfc: Move Falcon NIC operations to efx_nic_type + * sfc: Refactor link configuration + * sfc: Generalise link state monitoring + * sfc: Add power-management and wake-on-LAN support + * sfc: Implement ethtool reset operation + * sfc: Add efx_nic_type operation for register self-test + * sfc: Add efx_nic_type operation for NVRAM self-test + * sfc: Add efx_nic_type operation for identity LED control + * sfc: Separate shared NIC code from Falcon-specific and rename + accordingly + * sfc: Fold falcon_probe_nic_variant() into falcon_probe_nic() + * sfc: Extend loopback mode enumeration + * sfc: Remove static PHY data and enumerations + * sfc: Extend MTD driver for use with new NICs + * sfc: Allow for additional checksum offload features + * sfc: Rename falcon.h to nic.h + * sfc: Move shared NIC code from falcon.c to new source file nic.c + * sfc: Add firmware protocol definitions (MCDI) + * sfc: Add support for SFC9000 family (1) + * sfc: Add support for SFC9000 family (2) + * sfc: Implement TSO for TCP/IPv6 + * sfc: Update version, copyright dates, authors + * drivers/net/sfc: Correct code taking the size of a pointer + * sfc: Move PHY software state initialisation from init() into probe() + * sfc: Include XGXS in XMAC link status check except in XGMII loopback + * sfc: Fix DMA mapping cleanup in case of an error in TSO + * sfc: QT2025C: Work around PHY bug + * sfc: QT2025C: Switch into self-configure mode when not in loopback + * sfc: QT2025C: Work around PHY firmware initialisation bug + * sfc: QT2025C: Add error message for suspected bad SFP+ cables + * sfc: Disable TX descriptor prefetch watchdog + * [SCSI] vmw_pvscsi: SCSI driver for VMware's virtual HBA. + - LP: #497156 + + -- Andy Whitcroft Tue, 19 Jan 2010 16:12:47 +0000 + +linux (2.6.32-10.14) lucid; urgency=low + + [ Alex Deucher ] + + * SAUCE: drm/radeon/kms: fix LVDS setup on r4xx + - LP: #493795 + + [ Andy Whitcroft ] + + * Revert "(pre-stable) acpi: Use the ARB_DISABLE for the CPU which model + id is less than 0x0f." + * config-check -- ensure the checks get run at build time + * config-check -- check the processed config during updateconfigs + * config-check -- CONFIG_SECCOMP may not be present + * TUN is now built in ignore + * SAUCE: acpi battery -- delay first lookup of the battery until first + use + * SAUCE: async_populate_rootfs: move rootfs init earlier + * ubuntu: AppArmor -- update to mainline 2010-01-06 + * SAUCE: move RLIMIT_CORE pipe dumper marker to 1 + - LP: #498525 + + [ Dave Airlie ] + + * (pre-stable) drm/radeon/kms: fix crtc vblank update for r600 + + [ Leann Ogasawara ] + + * Add asix to nic-usb-modules file + - LP: #499785 + + [ Peter Zijlstra ] + + * (pre-stable) sched: Fix balance vs hotplug race + + [ Tim Gardner ] + + * [Config] Enable CONFIG_FUNCTION_TRACER + - LP: #497989 + * [Config] Drop lpia from getabis + * [Config] Build in TUN/TAP driver + - LP: #499491 + * [Config] DH_COMPAT=5 + + [ Upstream Kernel Changes ] + + * Revert "(pre-stable) drm/i915: Avoid NULL dereference with + component_only tv_modes" + * Revert "(pre-stable) drm/i915: Fix sync to vblank when VGA output is + turned off" + * USB: usb-storage: fix bug in fill_inquiry + * USB: option: add pid for ZTE + * firewire: ohci: handle receive packets with a data length of zero + * rcu: Prepare for synchronization fixes: clean up for non-NO_HZ handling + of ->completed counter + * rcu: Fix synchronization for rcu_process_gp_end() uses of ->completed + counter + * rcu: Fix note_new_gpnum() uses of ->gpnum + * rcu: Remove inline from forward-referenced functions + * perf_event: Fix invalid type in ioctl definition + * perf_event: Initialize data.period in perf_swevent_hrtimer() + * perf: Don't free perf_mmap_data until work has been done + * PM / Runtime: Fix lockdep warning in __pm_runtime_set_status() + * sched: Check for an idle shared cache in select_task_rq_fair() + * sched: Fix affinity logic in select_task_rq_fair() + * sched: Rate-limit newidle + * sched: Fix and clean up rate-limit newidle code + * x86/amd-iommu: attach devices to pre-allocated domains early + * x86/amd-iommu: un__init iommu_setup_msi + * x86, Calgary IOMMU quirk: Find nearest matching Calgary while walking + up the PCI tree + * x86: Fix iommu=nodac parameter handling + * x86: GART: pci-gart_64.c: Use correct length in strncmp + * x86: ASUS P4S800 reboot=bios quirk + - LP: #366682 + * x86, apic: Enable lapic nmi watchdog on AMD Family 11h + * ssb: Fix range check in sprom write + * ath5k: allow setting txpower to 0 + * ath5k: enable EEPROM checksum check + * hrtimer: Fix /proc/timer_list regression + * ALSA: hrtimer - Fix lock-up + * ALSA: hda - Terradici HDA controllers does not support 64-bit mode + * KVM: x86 emulator: limit instructions to 15 bytes + * KVM: s390: Fix prefix register checking in arch/s390/kvm/sigp.c + * KVM: s390: Make psw available on all exits, not just a subset + * KVM: fix irq_source_id size verification + * KVM: x86: include pvclock MSRs in msrs_to_save + * x86: Prevent GCC 4.4.x (pentium-mmx et al) function prologue wreckage + * x86: Use -maccumulate-outgoing-args for sane mcount prologues + * x86, mce: don't restart timer if disabled + * x86/mce: Set up timer unconditionally + * x86: SGI UV: Fix BAU initialization + * x86: Fix duplicated UV BAU interrupt vector + * x86: Add new Intel CPU cache size descriptors + * x86: Fix typo in Intel CPU cache size descriptor + * pata_hpt{37x|3x2n}: fix timing register masks (take 2) + * s390: clear high-order bits of registers after sam64 + * V4L/DVB: Fix test in copy_reg_bits() + * bsdacct: fix uid/gid misreporting + * UBI: flush wl before clearing update marker + * jbd2: don't wipe the journal on a failed journal checksum + * USB: xhci: Add correct email and files to MAINTAINERS entry. + * USB: musb_gadget_ep0: fix unhandled endpoint 0 IRQs, again + * USB: option.c: add support for D-Link DWM-162-U5 + * USB: usbtmc: repeat usb_bulk_msg until whole message is transfered + * USB: usb-storage: add BAD_SENSE flag + * USB: Close usb_find_interface race v3 + * pxa/em-x270: fix usb hub power up/reset sequence + * hfs: fix a potential buffer overflow + * SUNRPC: IS_ERR/PTR_ERR confusion + * NFS: Fix nfs_migrate_page() + * md/bitmap: protect against bitmap removal while being updated. + * futex: Take mmap_sem for get_user_pages in fault_in_user_writeable + * devpts_get_tty() should validate inode + * debugfs: fix create mutex racy fops and private data + * Driver core: fix race in dev_driver_string + * Serial: Do not read IIR in serial8250_start_tx when UART_BUG_TXEN + * mac80211: Fix bug in computing crc over dynamic IEs in beacon + * mac80211: Fixed bug in mesh portal paths + * mac80211: Revert 'Use correct sign for mesh active path refresh' + * mac80211: fix scan abort sanity checks + * wireless: correctly report signal value for IEEE80211_HW_SIGNAL_UNSPEC + * rtl8187: Fix wrong rfkill switch mask for some models + * x86: Fix bogus warning in apic_noop.apic_write() + * mm: hugetlb: fix hugepage memory leak in mincore() + * mm: hugetlb: fix hugepage memory leak in walk_page_range() + * powerpc/windfarm: Add detection for second cpu pump + * powerpc/therm_adt746x: Record pwm invert bit at module load time] + * powerpc: Fix usage of 64-bit instruction in 32-bit altivec code + * drm/radeon/kms: Add quirk for HIS X1300 board + * drm/radeon/kms: handle vblanks properly with dpms on + * drm/radeon/kms: fix legacy crtc2 dpms + * drm/radeon/kms: fix vram setup on rs600 + * drm/radeon/kms: rs6xx/rs740: clamp vram to aperture size + * drm/ttm: Fix build failure due to missing struct page + * drm/i915: Set the error code after failing to insert new offset into mm + ht. + * drm/i915: Add the missing clonemask for display port on Ironlake + * xen/xenbus: make DEVICE_ATTR()s static + * xen: re-register runstate area earlier on resume. + * xen: restore runstate_info even if !have_vcpu_info_placement + * xen: correctly restore pfn_to_mfn_list_list after resume + * xen: register timer interrupt with IRQF_TIMER + * xen: register runstate on secondary CPUs + * xen: don't call dpm_resume_noirq() with interrupts disabled. + * xen: register runstate info for boot CPU early + * xen: call clock resume notifier on all CPUs + * xen: improve error handling in do_suspend. + * xen: don't leak IRQs over suspend/resume. + * xen: use iret for return from 64b kernel to 32b usermode + * xen: explicitly create/destroy stop_machine workqueues outside + suspend/resume region. + * Xen balloon: fix totalram_pages counting. + * xen: try harder to balloon up under memory pressure. + * dm exception store: free tmp_store on persistent flag error + * dm snapshot: only take lock for statustype info not table + * dm crypt: move private iv fields to structs + * dm crypt: restructure essiv error path + * dm: avoid _hash_lock deadlock + * dm snapshot: cope with chunk size larger than origin + * dm crypt: separate essiv allocation from initialisation + * dm crypt: make wipe message also wipe essiv key + * slc90e66: fix UDMA handling + * tcp: Stalling connections: Fix timeout calculation routine + * ip_fragment: also adjust skb->truesize for packets not owned by a + socket + * b44 WOL setup: one-bit-off stack corruption kernel panic fix + * sparc64: Don't specify IRQF_SHARED for LDC interrupts. + * sparc64: Fix overly strict range type matching for PCI devices. + * sparc64: Fix stack debugging IRQ stack regression. + * sparc: Set UTS_MACHINE correctly. + * b43legacy: avoid PPC fault during resume + * tracing: Fix event format export + * ath9k: Fix TX hang poll routine + * ath9k: fix processing of TX PS null data frames + * ath9k: Fix maximum tx fifo settings for single stream devices + * ath9k: fix tx status reporting + * mac80211: Fix dynamic power save for scanning. + * drm/i915: Fix sync to vblank when VGA output is turned off + * memcg: fix memory.memsw.usage_in_bytes for root cgroup + * thinkpad-acpi: fix default brightness_mode for R50e/R51 + * thinkpad-acpi: preserve rfkill state across suspend/resume + * ipw2100: fix rebooting hang with driver loaded + * matroxfb: fix problems with display stability + * acerhdf: add new BIOS versions + * asus-laptop: change light sens default values. + * vmalloc: conditionalize build of pcpu_get_vm_areas() + * ACPI: Use the ARB_DISABLE for the CPU which model id is less than 0x0f. + * net: Fix userspace RTM_NEWLINK notifications. + * ext3: Fix data / filesystem corruption when write fails to copy data + * V4L/DVB (13116): gspca - ov519: Webcam 041e:4067 added. + * bcm63xx_enet: fix compilation failure after get_stats_count removal + * x86: Under BIOS control, restore AP's APIC_LVTTHMR to the BSP value + * drm/i915: Avoid NULL dereference with component_only tv_modes + * drm/i915: PineView only has LVDS and CRT ports + * drm/i915: Fix LVDS stability issue on Ironlake + * mm: sigbus instead of abusing oom + * ipvs: zero usvc and udest + * jffs2: Fix long-standing bug with symlink garbage collection. + * intel-iommu: Detect DMAR in hyperspace at probe time. + * intel-iommu: Apply BIOS sanity checks for interrupt remapping too. + * intel-iommu: Check for an RMRR which ends before it starts. + * intel-iommu: Fix oops with intel_iommu=igfx_off + * intel-iommu: ignore page table validation in pass through mode + * netfilter: xtables: document minimal required version + * perf_event: Fix incorrect range check on cpu number + * implement early_io{re,un}map for ia64 + * Linux 2.6.32.2 + + -- Andy Whitcroft Thu, 07 Jan 2010 15:28:43 +0000 + +linux (2.6.32-9.13) lucid; urgency=low + + [ Andy Whitcroft ] + + * [Config] enable CONFIG_B43_PHY_LP + - LP: #493059 + * include modules.builtin in the binary debs + * config-check -- add a configuration enforcer + * config-check -- add a unit-test suite to the checker + * [Config] Enable CONFIG_SYN_COOKIES for versatile + * [Config] Enable CONFIG_SECURITY_SMACK for ports + * [Config] Enable CONFIG_SECURITY_FILE_CAPABILITIES for ports + * [Config] Disable CONFIG_COMPAT_BRK for ports + * getabis -- add armel versatile to the list + + [ Brad Figg ] + + * SAUCE: Increase the default prealloc buffer for HDA audio devices + (non-modem) + + [ Manoj Iyer ] + + * ubuntu: onmibook -- Added missing BOM file + + [ Tim Gardner ] + + * ubuntu: fsam7400 -- Cleanup Makefile + + [ Upstream Kernel Changes ] + + * Revert "ext4: Fix insufficient checks in EXT4_IOC_MOVE_EXT" + * signal: Fix alternate signal stack check + * SCSI: scsi_lib_dma: fix bug with dma maps on nested scsi objects + * SCSI: osd_protocol.h: Add missing #include + * SCSI: megaraid_sas: fix 64 bit sense pointer truncation + * ext4: fix potential buffer head leak when add_dirent_to_buf() returns + ENOSPC + * ext4: avoid divide by zero when trying to mount a corrupted file system + * ext4: fix the returned block count if EXT4_IOC_MOVE_EXT fails + * ext4: fix lock order problem in ext4_move_extents() + * ext4: fix possible recursive locking warning in EXT4_IOC_MOVE_EXT + * ext4: plug a buffer_head leak in an error path of ext4_iget() + * ext4: make sure directory and symlink blocks are revoked + * ext4: fix i_flags access in ext4_da_writepages_trans_blocks() + * ext4: journal all modifications in ext4_xattr_set_handle + * ext4: don't update the superblock in ext4_statfs() + * ext4: fix uninit block bitmap initialization when s_meta_first_bg is + non-zero + * ext4: fix block validity checks so they work correctly with meta_bg + * ext4: avoid issuing unnecessary barriers + * ext4: fix error handling in ext4_ind_get_blocks() + * ext4: make trim/discard optional (and off by default) + * ext4: make "norecovery" an alias for "noload" + * ext4: Fix double-free of blocks with EXT4_IOC_MOVE_EXT + * ext4: initialize moved_len before calling ext4_move_extents() + * ext4: move_extent_per_page() cleanup + * jbd2: Add ENOMEM checking in and for + jbd2_journal_write_metadata_buffer() + * ext4: Return the PTR_ERR of the correct pointer in + setup_new_group_blocks() + * ext4: Avoid data / filesystem corruption when write fails to copy data + * ext4: wait for log to commit when umounting + * ext4: remove blocks from inode prealloc list on failure + * ext4: ext4_get_reserved_space() must return bytes instead of blocks + * ext4: quota macros cleanup + * ext4: fix incorrect block reservation on quota transfer. + * ext4: Wait for proper transaction commit on fsync + * ext4: Fix insufficient checks in EXT4_IOC_MOVE_EXT + * ext4: Fix potential fiemap deadlock (mmap_sem vs. i_data_sem) + * Linux 2.6.32.1 + * kbuild: generate modules.builtin + * (pre-stable) drm/i915: Fix sync to vblank when VGA output is turned off + - LP: #494461 + * (pre-stable) drm/i915: Avoid NULL dereference with component_only + tv_modes + - LP: #494045 + + [ Zhao Yakui ] + + * (pre-stable) acpi: Use the ARB_DISABLE for the CPU which model id is + less than 0x0f. + - LP: #481765 + + -- Andy Whitcroft Thu, 17 Dec 2009 15:41:21 +0000 + +linux (2.6.32-8.12) lucid; urgency=low + + [ Andy Whitcroft ] + + * SAUCE: AppArmor -- add linux/err.h for ERR_PTR + + -- Andy Whitcroft Sat, 12 Dec 2009 10:56:16 +0000 + +linux (2.6.32-8.11) lucid; urgency=low + + [ Andy Whitcroft ] + + * Revert "SAUCE: default ATI Radeon KMS to off until userspace catches + up" + * Revert "SAUCE: AppArmor: Fix oops there is no tracer and doing unsafe + transition." + * Revert "SAUCE: AppArmor: Fix refcounting bug causing leak of creds" + * Revert "SAUCE: AppArmor: Fix cap audit_caching preemption disabling" + * Revert "SAUCE: AppArmor: Fix Oops when in apparmor_bprm_set_creds" + * Revert "SAUCE: AppArmor: Fix oops after profile removal" + * Revert "SAUCE: AppArmor: AppArmor disallows truncate of deleted files." + * Revert "SAUCE: AppArmor: AppArmor fails to audit change_hat correctly" + * Revert "SAUCE: AppArmor: Policy load and replacement can fail to alloc + mem" + * Revert "SAUCE: AppArmor: AppArmor wrongly reports allow perms as + denied" + * Revert "SAUCE: AppArmor: Fix mediation of "deleted" paths" + * Revert "SAUCE: AppArmor: Fix off by 2 error in getprocattr mem + allocation" + * Revert "SAUCE: AppArmor: Set error code after structure + initialization." + * Revert "AppArmor -- fix pstrace_may_access rename" + * Revert "ubuntu: AppArmor security module" + * Revert "SAUCE: Add config option to set a default LSM" + * Revert "ubuntu: fsam7400 -- sw kill switch driver" + * Revert "[Config] fsam7400 -- enable" + * Revert "[Config] AUFS -- enable" + * Revert "ubuntu: AUFS -- aufs2-30 20090727" + * Revert "ubuntu: AUFS -- export various core functions -- fixes" + * Revert "ubuntu: AUFS -- export various core functions" + * Revert "[Config] ubuntu/iscsitarget -- disable" + * Revert "[Config] iscsitarget -- enable" + * Revert "ubuntu: iscsitarget -- SVN revision r214" + * update Vcs-Git to point to the correct repository + - LP: #493589 + * update build environment overrides to lucid + - LP: #493589 + * [Config] enable CONFIG_DEVTMPFS + * [Config] update all configs following AppArmor 2009-12-08 update + * SAUCE: isapnp_init: make isa PNP scans occur async + * [Config] fsam7400 -- enable + * [Config] omnibook -- enable + * [Config] cleanup CONFIG_AUDIT + * ubuntu: AUFS -- export various core functions (aufs2-base.patch) + * ubuntu: AUFS -- export various core functions (aufs2-standalone.patch) + * ubuntu: AUFS -- aufs2 20091209 + * [Config] AUFS -- enable + * [Config] iscsitarget -- enable + + [ Arjan van de Ven ] + + * SAUCE: KMS: cache the EDID information of the LVDS + + [ Colin Watson ] + + * bnx2: update d-i firmware filenames + - LP: #494052 + * add cdc_ether to nic-usb-modules udeb + - LP: #495060 + + [ John Johansen ] + + * ubuntu: AppArmor -- mainline 2009-10-08 + + [ Manoj Iyer ] + + * ubuntu: fsam7400 -- kill switch for Fujitsu Siemens Amilo M 7400 + * ubuntu: omnibook -- support Toshiba (HP) netbooks + * ubuntu: iscsitarget --- version 1.4.19 + - LP: #494693 + + [ Surbhi Palande ] + + * SAUCE: Make populate_rootfs asynchronous + + [ Tim Gardner ] + + * Parallelize flavour builds and packaging + * [Config] Enable CONFIG_KSM + + [ Upstream Kernel Changes ] + + * Config option to set a default LSM + * LSM: Add security_path_chroot(). + * LSM: Add security_path_chroot(). + * LSM: Move security_path_chmod()/security_path_chown() to after + mutex_lock(). + * ext4: Fix insufficient checks in EXT4_IOC_MOVE_EXT + + -- Andy Whitcroft Fri, 11 Dec 2009 17:45:19 +0000 + +linux (2.6.32-7.10) lucid; urgency=low + + [ Andy Whitcroft ] + + * [Config] disable CONFIG_THUMB2_KERNEL to fix arm FTBFS + + -- Andy Whitcroft Sun, 06 Dec 2009 12:56:48 +0000 + +linux (2.6.32-7.9) lucid; urgency=low + + [ Andy Whitcroft ] + + * SAUCE: set /proc/acpi/video/*/DOS to 4 by default + - LP: #458982 + * SAUCE: ensure vga16fb loads if no other driver claims the VGA device + * [Config] update configs following versatile switch to V7 + * rebased to v2.6.32 + * [Config] update configs following rebase to v2.6.32 + * [Config] update ports configs following rebase to v2.6.32 + * SAUCE: default ATI Radeon KMS to off until userspace catches up + + [ Arjan van de Ven ] + + * SAUCE: vfs: Add a trace point in the mark_inode_dirty function + + [ Leann Ogasawara ] + + * [SCSI] megaraid_sas: remove sysfs poll_mode_io world writeable + permissions + - CVE-2009-3939 + + [ Loic Minier ] + + * SAUCE: select a v7 CPU for versatile + + [ Takashi Iwai ] + + * SAUCE: ALSA: hda - Add power on/off counter + + [ Upstream changes ] + + * rebased to v2.6.32 + + -- Andy Whitcroft Fri, 04 Dec 2009 10:44:50 +0000 + +linux (2.6.32-6.8) lucid; urgency=low + + [ Andy Whitcroft ] + + * [Config] disable SSB devices for armel + + -- Andy Whitcroft Sat, 28 Nov 2009 12:16:40 +0000 + +linux (2.6.32-6.7) lucid; urgency=low + + [ Andy Whitcroft ] + + * Revert "SAUCE: default ATI Radeon KMS to off until userspace catches up" + * Revert "SAUCE: Dell XPS710 reboot quirk" + * Revert "SAUCE: Link acpi-cpufreq.o first" + * Revert "SAUCE: LPIA Logical reset of USB port on resume" + * Revert "SAUCE: LPIA Reboot fix for Intel Crownbeach development boards" + * Revert "SAUCE: Enable HDMI audio codec on Studio XPS 1340" + * Revert "SAUCE: Dell laptop digital mic does not work, PCI 1028:0271" + * Revert "Add Dell Dimension 9200 reboot quirk" + * Revert "SAUCE: Correctly blacklist Thinkpad r40e in ACPI" + * Revert "SAUCE: tulip: Define ULI PCI ID's" + * Revert "SAUCE: Lower warning level of some PCI messages" + * Revert "mac80211: fix two issues in debugfs" + Drop a number of known redundant commits as identified in the Ubuntu + delta review blueprint. + + * reenable armel versatile flavour + * [Config] disable CONFIG_USB_DEVICEFS + + [ Tim Gardner ] + + * [Config] udeb: Add squashfs to fs-core-modules + - LP: #352615 + * [Config] Create a real squashfs udeb + - LP: #352615 + + + -- Andy Whitcroft Fri, 27 Nov 2009 17:31:16 +0000 + +linux (2.6.32-5.6) lucid; urgency=low + + [ Andy Whitcroft ] + + * rebase to v2.6.32-rc8 + * update configs following rebase to v2.6.32-rc8 + * update ports configs since rebase to v2.6.32-rc8 + * [Config] enable cgroup options + - LP: #480739 + + [ Upstream Kernel Changes ] + + * rebase to v2.6.32-rc8 + + -- Andy Whitcroft Mon, 23 Nov 2009 11:16:14 +0000 + +linux (2.6.32-4.5) lucid; urgency=low + + [ Andy Whitcroft ] + + * [Config] SERIO_LIBPS2 and SERIO_I8042 must match + * rebase to v2.6.32-rc7 + * resync with Karmic proposed + + [ John Johansen ] + + * SAUCE: AppArmor: Fix oops after profile removal + - LP: #475619 + * SAUCE: AppArmor: Fix Oops when in apparmor_bprm_set_creds + - LP: #437258 + * SAUCE: AppArmor: Fix cap audit_caching preemption disabling + - LP: #479102 + * SAUCE: AppArmor: Fix refcounting bug causing leak of creds + - LP: #479115 + * SAUCE: AppArmor: Fix oops there is no tracer and doing unsafe + transition. + - LP: #480112 + + [ Ubuntu Changes ] + + * resync with Karmic proposed (ddbc670a86a3dee18541a3734149f250ff307adf) + + [ Upstream Kernel Changes ] + + * rebase to v2.6.32-rc7 + + -- Andy Whitcroft Fri, 13 Nov 2009 11:35:13 +0000 + +linux (2.6.32-3.4) lucid; urgency=low + + [ Andy Whitcroft ] + + * [Config] SERIO_LIBPS2 and SERIO_I8042 must match + * [Upstream] add local prefix to oss local change_bits + + [ Upstream Kernel Changes ] + + * mtd/maps: gpio-addr-flash: pull in linux/ headers rather than asm/ + * mtd/maps: gpio-addr-flash: depend on GPIO arch support + + -- Andy Whitcroft Wed, 11 Nov 2009 14:47:04 +0000 + +linux (2.6.32-3.3) lucid; urgency=low + + [ Andy Whitcroft ] + + * rebase to v2.6.32-rc6 + * [Config] update configs following rebase to v2.6.32-rc6 + * [Config] update ports configs following rebase to v2.6.32-rc6 + * resync with Karmic Ubuntu-2.6.31-15.49 + * [Config] add module ignores for broken drivers + + [ John Johansen ] + + * SAUCE: AppArmor: AppArmor wrongly reports allow perms as denied + - LP: #453335 + * SAUCE: AppArmor: Policy load and replacement can fail to alloc mem + - LP: #458299 + * SAUCE: AppArmor: AppArmor fails to audit change_hat correctly + - LP: #462824 + * SAUCE: AppArmor: AppArmor disallows truncate of deleted files. + - LP: #451375 + + [ Kees Cook ] + + * SAUCE: Fix nx_enable reporting + - LP: #454285 + + [ Scott James Remnant ] + + * Revert "SAUCE: trace: add trace_event for the open() syscall" + * SAUCE: trace: add trace events for open(), exec() and uselib() + - LP: #462111 + + [ Stefan Bader ] + + * SAUCE: Fix sub-flavour script to not stop on missing directories + - LP: #453073 + + [ Ubuntu Changes ] + + * resync with Karmic Ubuntu-2.6.31-15.49 + + [ Upstream Kernel Changes ] + + * rebase to v2.6.32-rc6 + - LP: #464552 + + -- Andy Whitcroft Tue, 10 Nov 2009 15:00:57 +0000 + +linux (2.6.32-2.2) lucid; urgency=low + + [ Andy Whitcroft ] + + * install the full changelog with the binary package + * changelog -- explicitly note rebases and clean history + * reinstate armel.mk with no flavours + - LP: #449637 + * [Upstream] block: silently error unsupported empty barriers too + - LP: #420423 + * [Config] udate configs following karmic resync + * [Config] update ports configs following karmic resync + * [Upstream] lirc -- follow removal of .id element + + [ Colin Watson ] + + * Use section 'admin' rather than 'base' + * Add more e100 firmware to nic-modules + - LP: #451872 + * Add qla1280 firmware to scsi-modules + - LP: #381037 + + [ John Johansen ] + + * SAUCE: AppArmor: Set error code after structure initialization. + - LP: #427948 + * SAUCE: AppArmor: Fix off by 2 error in getprocattr mem allocation + - LP: #446595 + * SAUCE: AppArmor: Fix mediation of "deleted" paths + + [ Kees Cook ] + + * SAUCE: [x86] fix report of cs-limit nx-emulation + - LP: #454285 + + [ Leann Ogasawara ] + + * SAUCE: (drop after 2.6.31) input: Add support for filtering input + events + - LP: #430809 + * SAUCE: (drop after 2.6.31) dell-laptop: Trigger rfkill updates on wifi + toggle switch press + - LP: #430809 + + [ Luke Yelavich ] + + * SAUCE: Add sr_mod to the scsi-modules udeb for powerpc + * [Config] Add sd_mod to scsi-modules udeb for powerpc + + [ Mario Limonciello ] + + * SAUCE: Update to LIRC 0.8.6 + - LP: #432678 + * SAUCE: dell-laptop: Store the HW switch status internally rather than + requerying every time + - LP: #430809 + * SAUCE: dell-laptop: Blacklist machines not supporting dell-laptop + - LP: #430809 + + [ Stefan Bader ] + + * [Upstream] acerhdf: Limit modalias matching to supported boards + - LP: #435958 + + [ Tim Gardner ] + + * [Upstream] i915: Fix i2c init message + - LP: #409361 + * [Config] Add sym53c8xx.ko to virtual sub-flavour + - LP: #439415 + * [Config] Add d101m_ucode.bin to d-i/firmware/nic-modules + - LP: #439456 + * [Config] Set default I/O scheduler back to CFQ for desktop flavours + - LP: #381300 + * SAUCE: Created MODULE_EXPORT/MODULE_IMPORT macros + - LP: #430694 + * SAUCE: Use MODULE_IMPORT macro to tie intel_agp to i915 + - LP: #430694 + * [Config] CONFIG_GFS2_FS_LOCKING_DLM=y + - LP: #416325 + * SAUCE: Fix MODULE_IMPORT/MODULE_EXPORT + - LP: #430694 + * SAUCE: Raise the default console 'quiet' level to 2 + * [Config] CONFIG_X86_PAT=y + * [Config] Add armel arch to linux-libc-dev arches. + - LP: #449637 + * [Config] CONFIG_X86_MCE + * [Upstream] (drop after 2.6.31) Input: synaptics - add another Protege + M300 to rate blacklist + - LP: #433801 + + [ Upstream Kernel Changes ] + + * sgi-gru: Fix kernel stack buffer overrun, CVE-2009-2584 + * drm/i915: Fix FDI M/N setting according with correct color depth + - LP: #416792 + + -- Andy Whitcroft Thu, 22 Oct 2009 16:53:33 +0100 + +linux (2.6.32-1.1) lucid; urgency=low + + [ Andy Whitcroft ] + + * rebase to v2.6.32-rc3 + * [Config] update configs following rebase to 2.6.32-rc3 + * [Config] update ports configs following rebase to 2.6.32-rc3 + * AppArmor -- fix pstrace_may_access rename + * staging/android -- disable + * ubuntu: dm-raid-45 -- update to compile with 2.6.32 + * ubuntu: drbd -- disable + * staging/comdi -- disable + * staging/go7007 -- disable + * [Config] staging/winbond -- disable + * [Config] ubuntu/iscsitarget -- disable + * [d-i] cbc and ecb are builtin make them optional in udebs + * rebase to v2.6.32-rc5 + * [Config] update configs following rebase to v2.6.32-rc5 + * [Config] update ports configs following rebase to v2.6.31-rc5 + + [ Tim Gardner ] + + * [Config] Add cpio as a build dependency. + + [ Upstream Kernel Changes ] + + * rebase to v2.6.32-rc3 + * rebase to v2.6.32-rc5 + + -- Andy Whitcroft Mon, 05 Oct 2009 15:48:58 +0100 + +linux (2.6.31-11.37) karmic; urgency=low + + [ Tim Gardner ] + + * [Config] Increase kernel log buffer to 256K for amd64 flavours + - LP: #424810 + * [Config] Set HZ=100 for amd64 flavours + - LP: #438234 + * [Upstream] e1000e: Emit notice instead of an error when + pci_enable_pcie_error_reporting() fails + - LP: #436370 + + [ Upstream Kernel Changes ] + + * n_tty: honor opost flag for echoes + * n_tty: move echoctl check and clean up logic + - LP: #438310 + + * Revert "[Upstream] drm/i915: Check that the relocation points to within + the target" - Use upstream cherry-pick. + * drm/i915: Check that the relocation points to within the target + - LP: #429241 + + * drm/i915: fix tiling on IGDNG + * drm/i915: add B43 chipset support + * agp/intel: Add B43 chipset support + Intel request from kernel team mailing list. + + * HID: completely remove apple mightymouse from blacklist + - LP: #428111 + + -- Tim Gardner Mon, 28 Sep 2009 11:47:29 -0600 + +linux (2.6.31-11.36) karmic; urgency=low + + [ Brian Rogers ] + + * SAUCE: (drop after 2.6.31) em28xx: ir-kbd-i2c init data needs a + persistent object + * SAUCE: (drop after 2.6.31) saa7134: ir-kbd-i2c init data needs a + persistent object + + [ Takashi Iwai ] + + * [Upstream] ALSA: hda - Add another entry for Nvidia HDMI device + - LP: #416482 + + [ Tyler Hicks ] + + * SAUCE: (drop after 2.6.31) eCryptfs: Prevent lower dentry from going + negative during unlink + + [ Upstream Kernel Changes ] + + * sg: fix oops in the error path in sg_build_indirect() + * mpt2sas : Rescan topology from Interrupt context instead of work thread + * mpt2sas: Prevent sending command to FW while Host Reset + * mpt2sas: setting SDEV into RUNNING state from Interrupt context + * mpt2sas: Raid 10 Volume is showing as Raid 1E in dmesg + * SCSI: fix oops during scsi scanning + * SCSI: libsrp: fix memory leak in srp_ring_free() + * cfg80211: fix looping soft lockup in find_ie() + * ath5k: write PCU registers on initial reset + * binfmt_elf: fix PT_INTERP bss handling + * TPM: Fixup boot probe timeout for tpm_tis driver + * md: Fix "strchr" [drivers/md/dm-log-userspace.ko] undefined! + * x86/amd-iommu: fix broken check in amd_iommu_flush_all_devices + * fix undefined reference to user_shm_unlock + * perf_counter: Fix buffer overflow in perf_copy_attr() + * perf_counter: Start counting time enabled when group leader gets + enabled + * powerpc/perf_counters: Reduce stack usage of power_check_constraints + * powerpc: Fix bug where perf_counters breaks oprofile + * powerpc/ps3: Workaround for flash memory I/O error + * block: don't assume device has a request list backing in nr_requests + store + * agp/intel: remove restore in resume + * ALSA: cs46xx - Fix minimum period size + * ASoC: Fix WM835x Out4 capture enumeration + * sound: oxygen: work around MCE when changing volume + * mlx4_core: Allocate and map sufficient ICM memory for EQ context + * perf stat: Change noise calculation to use stddev + * x86: Fix x86_model test in es7000_apic_is_cluster() + * x86/i386: Make sure stack-protector segment base is cache aligned + * PCI: apply nv_msi_ht_cap_quirk on resume too + * x86, pat: Fix cacheflush address in change_page_attr_set_clr() + * ARM: 5691/1: fix cache aliasing issues between kmap() and kmap_atomic() + with highmem + * KVM guest: do not batch pte updates from interrupt context + * KVM: Fix coalesced interrupt reporting in IOAPIC + * KVM: VMX: Check cpl before emulating debug register access + * KVM guest: fix bogus wallclock physical address calculation + * KVM: x86: Disallow hypercalls for guest callers in rings > 0 + * KVM: VMX: Fix cr8 exiting control clobbering by EPT + * KVM: x86 emulator: Implement zero-extended immediate decoding + * KVM: MMU: make __kvm_mmu_free_some_pages handle empty list + * KVM: x86 emulator: fix jmp far decoding (opcode 0xea) + * KVM: limit lapic periodic timer frequency + * libata: fix off-by-one error in ata_tf_read_block() + * PCI quirk: update 82576 device ids in SR-IOV quirks list + * PCI: Unhide the SMBus on the Compaq Evo D510 USDT + * powerpc/pseries: Fix to handle slb resize across migration + * Linux 2.6.31.1 + + -- Tim Gardner Thu, 24 Sep 2009 13:04:28 -0600 + +linux (2.6.31-10.35) karmic; urgency=low + + [ Amit Kucheria ] + + * Disable CONFIG_UEVENT_HELPER_PATH + + [ Andy Whitcroft ] + + * [Config] Enable CONFIG_USB_GADGET_DUMMY_HCD + * remove the tlsup driver + * remove lmpcm logitech driver support + + [ Bryan Wu ] + + * Add 3 missing files to prerm remove file list + - LP: #345623, #415832 + + [ Chris Wilson ] + + * [Upstream] drm/i915: Check that the relocation points to within the + target + - LP: #429241 + + [ Luke Yelavich ] + + * [Config] Set CONFIG_EXT4_FS=y on ports architectures + + [ Manoj Iyer ] + + * SAUCE: Added quirk to recognize GE0301 3G modem as an interface. + - LP: #348861 + + [ Tim Gardner ] + + * Revert "[Upstream] ACPI: Add Thinkpad W500, W700, & W700ds to OSI(Linux) white-list" + * Revert "[Upstream] ACPI: Add Thinkpad R400 & Thinkpad R500 to OSI(Linux) white-list" + * Revert "[Upstream] ACPI: Add Thinkpad X300 & Thinkpad X301 to OSI(Linux) white-list" + * Revert "[Upstream] ACPI: Add Thinkpad X200, X200s, X200t to OSI(Linux) white-list" + * Revert "[Upstream] ACPI: Add Thinkpad T400 & Thinkpad T500 to OSI(Linux) white-list" + Upstream suggests that this is not the right approach. + + * [Config] Set default I/O scheduler to DEADLINE + CFQ seems to have some load related problems which are often exacerbated by sreadahead. + - LP: #381300 + + [ ubuntu@tjworld.net ] + + * SAUCE: ipw2200: Enable LED by default + - LP: #21367 + + [ Upstream Kernel Changes ] + + * ALSA: hda - Add support for new AMD HD audio devices + - LP: #430564 + + -- Andy Whitcroft Wed, 16 Sep 2009 15:37:49 +0100 + +linux (2.6.31-10.34) karmic; urgency=low + + [ Ted Tso ] + + * [Upstream] ext3: Don't update superblock write time when filesystem is + read-only + - LP: #427822 + + -- Tim Gardner Tue, 15 Sep 2009 16:00:45 -0600 + +linux (2.6.31-10.33) karmic; urgency=low + + [ Leann Ogasawara ] + + * [Upstream] dvb-usb: fix tuning with Cinergy T2 + - LP: #421258 + + [ Tim Gardner ] + + * [Config] Unconditionally copy files from sub-flavours lists. + (really, really fix it this time) + - LP: #423426 + * [Config] Set CONFIG_CACHEFILES=m for all flavours + + [ Upstream Kernel Changes ] + + * ext4: Don't update superblock write time when filesystem is read-only + - LP: #427822 + + -- Tim Gardner Tue, 15 Sep 2009 07:50:21 -0600 + +linux (2.6.31-10.32) karmic; urgency=low + + [ Eric Miao ] + + * [Config] enable module support for memory stick + - LP: #159951 + + [ Tim Gardner ] + + * [Config] Unconditionally copy files from sub-flavours lists. + - LP: #423426 + + -- Tim Gardner Thu, 10 Sep 2009 15:57:55 -0600 + +linux (2.6.31-10.31) karmic; urgency=low + + [ Andy Whitcroft ] + + * rebase to v2.6.31 final + + [ Colin Watson ] + + * [Config] Recommend grub-pc in linux-image + - LP: #385741 + + [ Ike Panhc ] + + * [Upstream] Pull latest update of lenovo-sl-laptop + + [ Peter Feuerer ] + + * [Upstream] (drop after 2.6.31) acerhdf: fix fan control for AOA150 + model + - LP: #426691 + + [ Tim Gardner ] + + * [Config] De-macro some package names. + + [ Upstream Changes ] + + * rebase to 2.6.31 final. + + -- Andy Whitcroft Thu, 10 Sep 2009 09:38:10 +0100 + +linux (2.6.31-10.30) karmic; urgency=low + + [ Amit Kucheria ] + + * [Config] Enable CONFIG_USB_DEVICEFS + - LP: #417748 + * [Config] Populate the config-update template a bit more + + [ Andy Whitcroft ] + + * rebase to v2.6.31-rc9 + * [Config] update configs following rebase to v2.6.31-rc9 + * [Config] update ports configs following rebase to v2.6.31-rc9 + + [ Colin Ian King ] + + * SAUCE: wireless: hostap, fix oops due to early probing interrupt + - LP: #254837 + + [ Jerone Young ] + + * [Upstream] ACPI: Add Thinkpad T400 & Thinkpad T500 to OSI(Linux) + white-list + - LP: #281732 + * [Upstream] ACPI: Add Thinkpad X200, X200s, X200t to OSI(Linux) + white-list + - LP: #281732 + * [Upstream] ACPI: Add Thinkpad X300 & Thinkpad X301 to OSI(Linux) + white-list + - LP: #281732 + * [Upstream] ACPI: Add Thinkpad R400 & Thinkpad R500 to OSI(Linux) + white-list + - LP: #281732 + * [Upstream] ACPI: Add Thinkpad W500, W700, & W700ds to OSI(Linux) + white-list + - LP: #281732 + + [ John Johansen ] + + * SAUCE: AppArmor: Fix profile attachment for regexp based profile names + - LP: #419308 + * SAUCE: AppArmor: Return the correct error codes on profile + addition/removal + - LP: #408473 + * SAUCE: AppArmor: Fix OOPS in profile listing, and display full list + - LP: #408454 + * SAUCE: AppArmor: Fix mapping of pux to new internal permission format + - LP: #419222 + * SAUCE: AppArmor: Fix change_profile failure + - LP: #401931 + * SAUCE: AppArmor: Tell git to ignore generated include files + - LP: #419505 + + [ Stefan Bader ] + + * [Upstream] acpi: video: Loosen strictness of video bus detection code + - LP: #333386 + * SAUCE: Remove ov511 driver from ubuntu subdirectory + + [ Tim Gardner ] + + * [Config] Exclude char-modules from non-x86 udeb creation + * SAUCE: Notify the ACPI call chain of AC events + * [Config] CONFIG_SATA_VIA=m + - LP: #403385 + * [Config] Build in all phylib support modules. + * [Config] Don't fail when sub-flavour files are missing + - LP: #423426 + * [Config] Set CONFIG_LSM_MMAP_MIN_ADDR=0 + - LP: #423513 + + [ Upstream ] + + * Rebased against v2.6.31-rc9 + + -- Andy Whitcroft Mon, 07 Sep 2009 11:33:45 +0100 + +linux (2.6.31-9.29) karmic; urgency=low + + [ Leann Ogasawara ] + + * [Upstream] agp/intel: support for new chip variant of IGDNG mobile + - LP: #419993 + * [Config] d-i/modules: Add new char-modules file, initialize with + intel-agp + - LP: #420605 + + [ Upstream ] + + * Rebased against 2.6.31-rc8 plus some inotify regression patches: + up through git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux-2.6.git + adda766193ea1cf3137484a9521972d080d0b7af. + + -- Tim Gardner Fri, 28 Aug 2009 06:31:30 -0600 + +linux (2.6.31-8.28) karmic; urgency=low + + [ Ike Panhc ] + + * [Config] Let nic-shared-modules depends on crypto-modules + - LP: #360966 + + [ Leann Ogasawara ] + + * [Upstream] (drop after 2.6.31) drm/i915: increase default latency + constant + - LP: #412492 + + [ Mario Limonciello ] + + * [Upstream]: (drop after 2.6.31) dell-laptop: don't change softblock + status if HW switch is disabled + - LP: #418721 + * [Upstream]: (drop after 2.6.31) compal-laptop: Add support for known + Compal made Dell laptops + * [Upstream]: (drop after 2.6.31) compal-laptop: Replace sysfs support + with rfkill support + + [ Tim Gardner ] + + * [Config] Add acpiphp to virtual sub-flavour + - LP: #364916 + * Drop KSM patch set for now because of instabilities with encrypted swap. + - LP: #418781 + + -- Tim Gardner Wed, 26 Aug 2009 08:14:26 -0600 + +linux (2.6.31-7.27) karmic; urgency=low + + [ Tim Gardner ] + + * [Config] updateconfigs updateportsconfigs after 2.6.31-rc7 rebase + * SAUCE: (drop after 2.6.31) Added KSM from mmotm-2009-08-20-19-18 + Replaces previous ksm patches from 2.6.31-6.25 + * [Config] KSM=y + + [ Upstream ] + + * Rebased against v2.6.31-rc7 + + -- Tim Gardner Sat, 22 Aug 2009 20:32:11 -0600 + +linux (2.6.31-6.26) karmic; urgency=low + + [ Andy Whitcroft ] + + * [Config] enable CONFIG_AUFS_BR_RAMFS + - LP: #414738 + * split out debian directory ready for abstraction + * add printdebian target to find branch target + * abstracted debian -- debian/files is not abstracted + * abstracted debian -- packages must be built in debian/ + * abstracted debian -- kernel-wedge needs to work in debian/ + * abstracted debian -- ensure we install the copyright file + * abstracted-debian -- drop the debian directories from headers + * abstracted-debian -- drop the debian directories from headers part 2 + * SAUCE: ubuntu-insert-changes -- follow abstracted debian + * [Upstream] aoe: ensure we initialise the request_queue correctly V2 + - LP: #410198 + + [ Luke Yelavich ] + + * [Config] Ports: Disable CONFIG_CPU_FREQ_DEBUG on powerpc-smp + * [Config] Ports: Re-enable windfarm modules on powerpc64-smp + - LP: #413150 + * [Config] Ports: Build all cpu frequency scaling governors into ports + kernels + * [Config] Ports: Build ext2 and ext3 modules into ports kernels + * [Config] Ports: CONFIG_PACKET=y for all ports kernels + * [Config] Ports: Enable PS3 network driver + + [ Stefan Bader ] + + * abstracted debian -- call $(DEBIAN)/rules using make + + [ Tim Gardner ] + + * [Config] Abstract the debian directory + * SAUCE: Improve error reporting in postinst + - LP: #358564 + + -- Tim Gardner Sun, 16 Aug 2009 20:33:28 -0600 + +linux (2.6.31-6.25) karmic; urgency=low + + [ Andy Whitcroft ] + + * script to generate Ubuntu changes from changelog + * [Config] standardise ANDROID options + * [Config] standardise CONFIG_ATM as module + * [Config] standardise CONFIG_LIB80211 as module + * [Config] disable CONFIG_PRINT_QUOTA_WARNING + * [Config] set CONFIG_CRAMFS as module + * [Config] enable CONFIG_DAB and modules + * [Config] set CONFIG_MAC80211_HWSIM as module + * [Config] set CONFIG_NET_CLS_FLOW as module + * [Config] set CONFIG_NF_CONNTRACK_SANE as module + * [Config] set CONFIG_NF_CT_PROTO_DCCP as module + * [Config] set CONFIG_RTC_DRV_DS1511 as module + * [Config] set CONFIG_RTC_DRV_R9701 as module + * [Config] set CONFIG_RTC_DRV_S35390A as module + * [Config] set CONFIG_TOIM3232_DONGLE as module + * [Config] standardise CONFIG_USB_MIDI_GADGET as module + * [Config] standardise CONFIG_USB_G_PRINTER as module + * [Config] standardise CONFIG_USB_SERIAL_IR as module + * [Config] set CONFIG_USB_SERIAL_IUU as module + * [Config] standardise CONFIG_USB_STORAGE_CYPRESS_ATACB as module + * [Config] standardise CONFIG_USB_STORAGE_ONETOUCH as module + * cleanup remains of dm-loop + * drop thinkpad ec and smapi support + * drop appleir + * [Config] update configs following rebase to v2.6.31-rc6 + * rebase to v2.6.31-rc6 + + [ Hugh Dickins ] + + * SAUCE: ksm patch 1, drop after 2.6.31 + * SAUCE: ksm patch 2, drop after 2.6.31 + * SAUCE: ksm patch 3, drop after 2.6.31 + * SAUCE: ksm patch 4, drop after 2.6.31 + * SAUCE: ksm patch 5, drop after 2.6.31 + * SAUCE: ksm patch 7, drop after 2.6.31 + + [ Izik Eidus ] + + * SAUCE: ksm patch 0, drop after 2.6.31 + * SAUCE: ksm patch 6, drop after 2.6.31 + * SAUCE: ksm patch 8, drop after 2.6.31 + * SAUCE: ksm patch 9, drop after 2.6.31 + + [ Luke Yelavich ] + + * [Config] Ports: Re-add PS3 modules to udebs + + [ Michael Casadevall ] + + * [Config] Update SPARC config and d-i files to reflect what can be built + + [ Tim Gardner ] + + * [Config] Removed armel package support + * [Config] Enabled CONFIG_KSM=y + + [ Upstream Kernel Changes ] + + * Rebased against v2.6.31-rc6 + * ARM: Cleanup: Revert "ARM: Add more cache memory types macros" + * ARM: Cleanup: Revert "Do not use OOB with MLC NAND" + * ARM: Cleanup: Revert "ARM: Make ARM arch aware of ubuntu/ drivers" + * ARM: Cleanup: Revert "ARM: IMX51: Make video capture drivers compile" + * ARM: Cleanup: Revert "ARM: IMX51: Fix isl29003 HWMON driver for i2c + changes" + * ARM: Cleanup: Revert "ARM: IMX51: IPU irq handler deadlock fix" + * ARM: Cleanup: Revert "ARM: IMX51: Babbage 2.5 needs a different system + revision" + * ARM: Cleanup: Revert "ARM: IMX51: Compile-in the IMX51 cpufreq driver + by default" + * ARM: Cleanup: Revert "ARM: IMX51: Enable ZONE_DMA for ARCH_MXC" + * ARM: Cleanup: Revert "ARM: IMX51: Make ARCH_MXC auto-enable + ARCH_MXC_CANONICAL" + * ARM: Cleanup: Revert "ARM: IMX51: Unconditionally disable + CONFIG_GPIOLIB" + * ARM: Cleanup: Revert "ARM: IMX51: Minimal changes for USB to work on + 2.6.31" + * ARM: Cleanup: Revert "ARM: IMX51: Fix plat-mxc/timer.c to handle imx51" + * ARM: Cleanup: Revert "ARM: IMX51: Make it compile." + * ARM: Cleanup: Revert "ARM: IMX51: Clean-up the craziness of including + mxc_uart.h _everywhere_" + * ARM: Cleanup: Revert "ARM: IMX51: Move board-mx51* header files to the + correct location" + * ARM: Cleanup: Revert "ARM: IMX51: Changed from snd_card_new to + snd_card_create" + * ARM: Cleanup: Revert "ARM: IMX51: Fix up merge error in Kconfig" + * ARM: Cleanup: Revert "ARM: IMX51: mxc_timer_init prototype" + * ARM: Cleanup: Revert "ARM: IMX51: Removed the mxc_gpio_port structure." + * ARM: Cleanup: Revert "ARM: IMX51: Added external declaration for + mxc_map_io." + * ARM: Cleanup: Revert "ARM: IMX51: Get to bus_id by calling dev_name." + * ARM: Cleanup: Revert "ARM: IMX51: Get to bus_id by calling dev_name." + * ARM: Cleanup: Revert "ARM: IMX51: snd_soc_machine structure replaced + with snd_soc_card." + * ARM: Cleanup: Revert "ARM: IMX51: codec structure was moved to the card + structure" + * ARM: Cleanup: Revert "ARM: IMX51: Hack to add defines for + DMA_MODE_READ/WRITE/MASK" + * ARM: Cleanup: Revert "ARM: IMX51: Add SoC and board support for + Freescale mx51 platform" + * Driver core: add new device to bus's list before probing + * [Upstream] (drop after 2.6.31) ALSA: hda - Reduce click noise at + power-saving + - LP: #381693, #399750, #380892 + + -- Andy Whitcroft Fri, 14 Aug 2009 11:32:23 +0100 + +linux (2.6.31-5.24) karmic; urgency=low + + [ Amit Kucheria ] + + * ARM: IMX51: Make video capture drivers compile + * [Config] IMX51: Config updates + + [ Andy Whitcroft ] + + * remove leftovers of dm-bbr + + [ Leann Ogasawara ] + + * Add pata_cs5535 to pata-modules + - LP: #318805 + + [ Luke Yelavich ] + + * [Config] CONFIG_PPC64=y for powerpc64-smp + * [Config] Set the maximum number of CPUs to 1024 for powerpc64-smp + * [Config] CONFIG_PPC_PS3=y for powerpc64-smp + * [Config] CONFIG_PPC_MAPLE=y on powerpc64-smp + * [Config] CONFIG_PPC_PASEMI=y on powerpc64-smp + * [Config] CONFIG_CPU_FREQ_PMAC64=y on powerpc64-smp + * [Config] Enable all PS3 drivers in powerpc64-smp + + [ Mario Limonciello ] + + * LIRC -- fix lirc-i2c 2.6.31 compilation + + [ Matthew Garrett ] + + * [Upstream] dell-laptop: Fix rfkill state queries + + [ Tim Gardner ] + + * [Config] Ignore armel ABI and module changes + * [Config] Update configs after rebase against 2.6.31-rc5 + + [ Upstream ] + + * Rebased to 2.6.31-rc5 + + -- Andy Whitcroft Tue, 28 Jul 2009 10:10:09 +0100 + +linux (2.6.31-4.23) karmic; urgency=low + + [ Andy Whitcroft ] + + * AUFS -- update to aufs2-30 20090727 + * [Config] enable AUFS FUSE support + + [ Luke Yelavich ] + + * [Config] CONFIG_JFS_FS=m on sparc + + [ Tim Gardner ] + + * [Upstream] dell-laptop: Fix rfkill state setting. + + -- Andy Whitcroft Mon, 27 Jul 2009 11:11:47 +0100 + +linux (2.6.31-4.22) karmic; urgency=low + + [ Amit Kucheria ] + + * ARM: IMX51: Add SoC and board support for Freescale mx51 platform + * ARM: IMX51: Move board-mx51* header files to the correct location + * ARM: IMX51: Clean-up the craziness of including mxc_uart.h _everywhere_ + * ARM: IMX51: Make it compile. + * ARM: IMX51: Unconditionally disable CONFIG_GPIOLIB + * ARM: IMX51: Make ARCH_MXC auto-enable ARCH_MXC_CANONICAL + * ARM: IMX51: Enable ZONE_DMA for ARCH_MXC + * ARM: IMX51: Compile-in the IMX51 cpufreq driver by default + * ARM: IMX51: Fix isl29003 HWMON driver for i2c changes + * ARM: USB: musb: Refer to musb_otg_timer_func under correct #ifdef + * ARM: staging: udlfb: Add vmalloc.h include + * UBUNTU [Config]: Bring imx51 config upto date with other flavours + + [ Brad Figg ] + + * ARM: IMX51: Hack to add defines for DMA_MODE_READ/WRITE/MASK + * ARM: IMX51: codec structure was moved to the card structure + * ARM: IMX51: snd_soc_machine structure replaced with snd_soc_card. + * ARM: IMX51: Get to bus_id by calling dev_name. + * ARM: IMX51: Get to bus_id by calling dev_name. + * ARM: IMX51: Added external declaration for mxc_map_io. + * ARM: IMX51: Removed the mxc_gpio_port structure. + * ARM: IMX51: mxc_timer_init prototype + * ARM: IMX51: Fix up merge error in Kconfig + * ARM: IMX51: Changed from snd_card_new to snd_card_create + + [ Dinh Nguyen ] + + * ARM: IMX51: Fix plat-mxc/timer.c to handle imx51 + * ARM: IMX51: Minimal changes for USB to work on 2.6.31 + * ARM: IMX51: Babbage 2.5 needs a different system revision + * ARM: IMX51: IPU irq handler deadlock fix + + [ Tim Gardner ] + + * [Config] Enabled CONFIG_CAN=m + - LP: #327243 + * [Config] Enabled CONFIG_SERIAL=m + - LP: #397189 + + -- Tim Gardner Fri, 24 Jul 2009 06:19:10 -0600 + +linux (2.6.31-4.21) karmic; urgency=low + + [ Amit Kucheria ] + + * dm-raid-4-5: Add missing brackets around test_bit() + + [ John Johansen ] + + * AppArmor: Fix change_profile failing lpn401931 + * AppArmor: Fix determination of forced AUDIT messages. + * AppArmor: Fix oops in auditing of the policy interface offset + + -- Andy Whitcroft Thu, 23 Jul 2009 19:18:30 +0100 + +linux (2.6.31-4.20) karmic; urgency=low + + [ Andy Whitcroft ] + + * SAUCE: iscsitarget -- update to SVN revision r214 + * SAUCE: iscsitarget -- renable driver + * [Config] consolidate lpia/lpia and i386/generic configs + * [Config] enable CRYPTO modules for all architectures + * [Config] enable cryptoloop + * [Config] enable various filesystems for armel + * [Config] sync i386 generic and generic-pae + * [Config] add the 386 (486 processors and above) flavour + * [Config] re-set DEFAULT_MMAP_MIN_ADDR + - LP: #399914 + * add genconfigs/genportsconfigs to extract the built configs + * updateconfigs -- alter concatenation order allow easier updates + * intelfb -- INTELFB now conflicts with DRM_I915 + * printchanges -- rebase tree does not have stable tags use changelog + * AppArmor: fix argument size missmatch on 64 bit builds + + [ Ike Panhc ] + + * Ship bnx2x firmware in nic-modules udeb + - LP: #360966 + + [ Jeff Mahoney ] + + * AppArmor: fix build failure on ia64 + + [ John Johansen ] + + * AppArmour: ensure apparmor enabled parmater is off if AppArmor fails to + initialize. + * AppArmour: fix auditing of domain transitions to include target profile + information + * AppArmor: fix C99 violation + * AppArmor: revert reporting of create to write permission. + * SAUCE: Add config option to set a default LSM + * [Config] enable AppArmor by default + * AppArmor: Fix NULL pointer dereference oops in profile attachment. + + [ Keith Packard ] + + * SAUCE: drm/i915: Allow frame buffers up to 4096x4096 on 915/945 class + hardware + - LP: #351756 + + [ Luke Yelavich ] + + * [Config] add .o files found in arch/powerpc/lib to all powerpc kernel + header packages + - LP: #355344 + + [ Michael Casadevall ] + + * [Config] update SPARC config files to allow success build + + [ Scott James Remnant ] + + * SAUCE: trace: add trace_event for the open() syscall + + [ Stefan Bader ] + + * SAUCE: jfs: Fix early release of acl in jfs_get_acl + - LP: #396780 + + [ Tim Gardner ] + + * [Upstream] Fix Soltech TA12 volume hotkeys not sending key release + - LP: #397499 + * [Upstream] USB Option driver - Add USB ID for Novatel MC727/U727/USB727 + refresh + - LP: #365291 + * [Config] SSB/B44 are common across all arches/flavours. + + [ Upstream ] + + * Rebased to 2.6.31-rc4 + + -- Andy Whitcroft Thu, 23 Jul 2009 08:41:39 +0100 + +linux (2.6.31-3.19) karmic; urgency=low + + [ Andy Whitcroft ] + + * Revert "[Config] Disabled NDISWRAPPER" + * ndiswrapper -- fix i386 compilation failures on cmpxchg8b + * AUFS -- export various core functions + * AUFS -- export various core functions -- fixes + * AUFS -- core filesystem + * AUFS -- track changes in v2.6.31 + * [Config] Enable AUFS + * droppped 'iwl3945: do not send scan command if channel count zero' as it + is already upstream but failed to auto-drop on rebase. + + [ Eric Paris ] + + * SAUCE: fsnotify: use def_bool in kconfig instead of letting the user + choose + * SAUCE: inotify: check filename before dropping repeat events + * SAUCE: fsnotify: fix inotify tail drop check with path entries + + -- Andy Whitcroft Tue, 14 Jul 2009 12:52:55 +0100 + +linux (2.6.31-3.18) karmic; urgency=low + + [ Andy Whitcroft ] + + * Revert "Add splice-2.6.23.patch from AUFS to export a symbol needed by + AUFS" + * Revert "Add put_filp.patch from AUFS to export a symbol needed by AUFS" + * Revert "Add sec_perm-2.6.24.patch from AUFS - export + security_inode_permission" + * clear out left over AUFS files and modifications + + [ Luke Yelavich ] + + * [Config] Enable CONFIG_USB_ISP116X_HCD on sparc + * SAUCE: Explicitly include header files to allow apparmor to build on + powerpc + * [Config] Enable CONFIG_BLK_DEV_IDECD on powerpc + + [ Tim Gardner ] + + * [Config] Dropped ubuntu/misc/wireless/acx + * [Config] Disabled NDISWRAPPER until the compile issues are fixed. + + [ Upstream ] + + * Rebased to 2.6.31-rc3 + + -- Andy Whitcroft Fri, 10 Jul 2009 18:59:33 +0100 + +linux (2.6.31-2.17) karmic; urgency=low + + [ Andy Whitcroft ] + + * [Config] CONFIG_BLK_DEV_CRYPTOLOOP=m for sparc + * compcache -- remove redundant Kconfig entries part 2 + * compcache -- clean up CCFLAGS declarations + * [Config] enable AppArmor + * AppArmor: fix operator precidence issue in as_path_link + + [ John Johansen ] + + * AppArmor security module + * AppArmor: Correct mapping of file permissions. + * AppArmor: Turn auditing of ptrace on + + [ Luke Yelavich ] + + * [Config] disable CONFIG_DM_RAID45 on powerpc + + -- Andy Whitcroft Fri, 10 Jul 2009 15:02:05 +0100 + +linux (2.6.31-2.16) karmic; urgency=low + + [ Andy Whitcroft ] + + * compcache -- remove redundant Kconfig entries + added ignore and ignore.modules for all arches since the compcache update + changes the modules names as well as some compcache ABI values. + + [ Manoj Iyer ] + + * SAUCE: updated dm-raid45 module version to 2009.04.24 (2.6.30-rc3) + * SAUCE: update compcache version to 0.5.3 + + [ Tim Gardner ] + + * [Config]: Fix sparc FTBS by adding ignore.modules + + -- Tim Gardner Mon, 06 Jul 2009 13:35:29 -0600 + +linux (2.6.31-2.15) karmic; urgency=low + + [ Andy Whitcroft ] + + * SAUCE: default ATI Radeon KMS to off until userspace catches up + * [Config] Update configs following rebase to 2.6.31-rc2 + * [Config] update ports configs following update to 2.6.31-rc2 + + [ Luke Yelavich ] + + * [Config] powerpc - Disable CONFIG_RDS + + [ Matt Zimmerman ] + + * Rename linux-doc-PKGVER to linux-doc and clean up its description + - LP: #382115 + + [ Upstream Kernel Changes ] + + * rebased to mainline 2.6.31-rc2 + + -- Andy Whitcroft Sat, 04 Jul 2009 17:39:13 +0100 + +linux (2.6.31-1.14) karmic; urgency=low + + [ Andy Whitcroft ] + + * update ndiswrapper to 1.55 + * remove leftovers of gfs + * [Config] powerpc: enable CONFIG_PPC_DISABLE_WERROR + + [ Luke Yelavich ] + + * [Config] re-enable and build the ide-pmac driver into powerpc kernels + * [Config] Build the ServerWorks Frodo / Apple K2 SATA driver into the + kernel + + [ Manoj Iyer ] + + * Remove snd-bt-sco ubuntu driver + + [ Michael Casadevall ] + + * [Config] updates ia64 config and d-i folders to allow succesful build + * [Config] Update powerpc and sparc for 2.6.31 + + [ Upstream Kernel Changes ] + + * intel-iommu: fix Identity Mapping to be arch independent + - LP: #384695 + * ACPI: video: prevent NULL deref in acpi_get_pci_dev() + + -- Andy Whitcroft Tue, 30 Jun 2009 17:47:32 +0100 + +linux (2.6.31-1.13) karmic; urgency=low + + [ Andy Whitcroft ] + + * REBASE: rebased to mainline 2.6.31-rc1 + - "UBUNTU: SAUCE: UHCI USB quirk for resume" + no longer applies, using deprecated interfaces, LPIA only, dropped + - "UBUNTU: SAUCE: Mask off garbage in Dell WMI scan code data" + changes now upstream, dropped + * [Config] Update configs following rebase to 2.6.31-rc1 + * [Config] update ports configs following update to 2.6.31-rc1 + + * [Config] disable broken staging driver CONFIG_STLC45XX + * SAUCE: fix compcache to use updates accessors + * [Config] disable staging driver CONFIG_VT6655 + * SAUCE: fix DRDB to use updates accessors + * [Disable] ndiswrapper needs update + * [Disable] LIRC I2C needs update + * [Disable] CONFIG_LENOVO_SL_LAPTOP needs update + * [Config] disable I2C_DESIGNWARE does not compile + * [Config] disable CONFIG_TLSUP for lpia + * [Config] disable CONFIG_FB_UDL for arm + * SAUCE: disable adding scsi headers to linux-libc-dev + + [ Mario Limonciello ] + + * SAUCE: Add LIRC drivers + + -- Andy Whitcroft Thu, 25 Jun 2009 12:06:22 +0100 + +linux (2.6.30-10.12) karmic; urgency=low + + [ Andy Whitcroft ] + + * [Config] split out the ports configs into their own family + * [Config] update configs following introduction of ports family + + [ Upstream Kernel Changes ] + + * Revert "Rename linux-doc-PKGVER to linux-doc and clean up its + description". Fixes linux-doc package name conflicts for now. + - LP: #382115 + + -- Tim Gardner Mon, 22 Jun 2009 09:17:14 -0600 + +linux (2.6.30-10.11) karmic; urgency=low + + [ Amit Kucheria ] + + * [Config] Comment splitconfig.pl and misc cleanup + * [Config] Rename all configs to the new naming scheme + * [Config] Splitconfig rework + * [Config] Rename scripts/misc/oldconfig to kernelconfig + * [Config] Fix build system for new config split + * [Config] Run updateconfigs after the splitconfig rework + + [ Andy Whitcroft ] + + * Revert "SAUCE: Default to i915.modeset=0 if CONFIG_DRM_I915_KMS=y" + * [Config] standardise CONFIG_STAGING=y + * [Config] standardise CONFIG_RD_LZMA=y + * [Config] CONFIG_PCI_IOV=y + * [Config] CONFIG_PCI_STUB=m + * [Config] merge kernel configs more agressively + + [ Colin Watson ] + + * [Config] Run kernel-wedge in $(builddir) rather than at the top level + * [Config] Add support for including firmware in udebs + * [Config] Ship bnx2 firmware in nic-modules udeb + - LP: #384861 + + [ Luke Yelavich ] + + * [Config] ports - Import of ports architectures into kernel packaging + infrastructure + * [Config] ports - Do not update ports kernel configurations by default + * [Config] ports - Disable ABI checking for ports architectures + * [Config] ports - Build drivers in ubuntu sub-directory on powerpc + * [Config] ports - Add control.d/vars.* files for ports architectures + * [Config] ports - Add ports architectures for linux-libc-dev + * [Config] ports - Create powerpc specific message-modules and + block-modules udebs + * [Config] ports - Add configuration files for ports architectures + + [ Manoj Iyer ] + + * [Config] Enable CONFIG_BLK_DEV_AEC62XX=m for amd64 and i386 + - LP: #329864 + + [ Michael Casadevall ] + + * [Config] ports - Fix compression of kernels + + [ Stefan Bader ] + + * [Upstream] mmc: prevent dangling block device from accessing stale + queues + - LP: #383668 + + [ Tim Gardner ] + + * [Config] Recommend grub-pc in linux-image + - LP: #385741 + * [Config] Implement i386 generic and generic-pae flavours + * [Config] ports - Add control info after integrating ports arches + * [Config] Removed auto-generated files from git + * [Config] Added netxen_nic to nic-modules + - LP: #389603 + + [ Matt Zimmerman ] + + * Rename linux-doc-PKGVER to linux-doc and clean up its description + - LP: #382115 + + -- Tim Gardner Mon, 15 Jun 2009 14:38:26 -0600 + +linux (2.6.30-9.10) karmic; urgency=low + + [ Andy Whitcroft ] + + * [Config] CONFIG_SECURITY_TOMOYO=y (amd64, i386, lpia) + * [Config] CONFIG_KEXEC_JUMP=y (amd64, lpia) + * [Config] CONFIG_LENOVO_SL_LAPTOP=m (amd64, lpia) + * [Config] CONFIG_POHMELFS_CRYPTO=y (i386, amd64) + * [Config] CONFIG_SERIAL_MAX3100=m (i386, amd64, lpia) + * [Config] CONFIG_VIDEO_GO7007=m (amd64, i386) + + [ Upstream Kernel Changes ] + + * rebased to 2.6.30 final + + -- Andy Whitcroft Fri, 05 Jun 2009 11:42:53 +0100 + +linux (2.6.30-8.9) karmic; urgency=low + + [ Andy Whitcroft ] + + * Config update removed the following options: + CONFIG_EDAC_AMD8111=m + CONFIG_EDAC_AMD8131=m + + [ Upstream Kernel Changes ] + + * rebased to 2.6.30-rc8 + + -- Andy Whitcroft Wed, 03 Jun 2009 09:21:13 +0100 + +linux (2.6.30-7.8) karmic; urgency=low + + [ Andy Whitcroft ] + + * Enabled NEW configration options: + Paravirtualization layer for spinlocks (PARAVIRT_SPINLOCKS) [N/y/?] Y + Cisco FNIC Driver (FCOE_FNIC) [N/m/y/?] M + + [ Upstream Kernel Changes ] + + * rebased to 2.6.30-rc7 + + -- Andy Whitcroft Sat, 23 May 2009 23:47:24 +0100 + +linux (2.6.30-6.7) karmic; urgency=low + + [ Andy Whitcroft ] + + * Dropped: UBUNTU: SAUCE: input: Blacklist digitizers from joydev.c (now + upstream) + + [ Upstream Kernel Changes ] + + * rebased to 2.6.30-rc6 + + -- Andy Whitcroft Mon, 18 May 2009 18:05:54 +0100 + +linux (2.6.30-5.6) karmic; urgency=low + + [ Tim Gardner ] + + * [Config] Enable Keyspan USB serial device firmware in kernel module + - LP: #334285 + + [ Upstream Kernel Changes ] + + * rebased to 2.6.30-rc5 + + -- Tim Gardner Mon, 11 May 2009 12:02:16 -0600 + +linux (2.6.30-4.5) karmic; urgency=low + + [ Colin Watson ] + + * Build-Conflict with findutils (= 4.4.1-1ubuntu1), to avoid + /usr/include/asm/* going missing + - LP: #373214 + + -- Stefan Bader Fri, 08 May 2009 11:09:08 +0200 + +linux (2.6.30-3.4) karmic; urgency=low + + [ Kees Cook ] + + * SAUCE: [x86] implement cs-limit nx-emulation for ia32 + - LP: #369978 + + [ Stefan Bader ] + + * SAUCE: input: Blacklist digitizers from joydev.c + - LP: #300143 + + -- Tim Gardner Fri, 01 May 2009 14:00:42 -0600 + +linux (2.6.30-2.3) karmic; urgency=low + + [ Tim Gardner ] + + * [Config] Enabled CC_STACKPROTECTOR=y for all x86en + - LP: #369152 + * SAUCE: Default to i915_modeset=0 if CONFIG_DRM_I915_KMS=y + * [Config] CONFIG_DRM_I915_KMS=y + * [Config] Set CONFIG_SECURITY_DEFAULT_MMAP_MIN_ADDR to appropriate ARCH + minimums + + [ Upstream Kernel Changes ] + + * rebased to 2.6.30-rc4 + + -- Tim Gardner Thu, 30 Apr 2009 09:17:05 -0600 + +linux (2.6.30-1.2) karmic; urgency=low + + [ Tim Gardner ] + + * [Config] armel: disable staging drivers, fixes FTBS + * [Config] armel imx51: Disable CONFIG_MTD_NAND_MXC, fixes FTBS + + [ Upstream Kernel Changes ] + + * mpt2sas: Change reset_type enum to avoid namespace collision. + Submitted upstream. + + -- Tim Gardner Tue, 28 Apr 2009 16:54:41 -0600 + +linux (2.6.30-1.1) karmic; urgency=low + + * Initial release after rebasing against v2.6.30-rc3 + + -- Tim Gardner Thu, 12 Mar 2009 19:16:07 -0600 + --- linux-azure-5.8-5.8.0.orig/debian.azure-5.8/config/amd64/config.common.amd64 +++ linux-azure-5.8-5.8.0/debian.azure-5.8/config/amd64/config.common.amd64 @@ -0,0 +1,3 @@ +# +# Config options for config.common.amd64 automatically generated by splitconfig.pl +# --- linux-azure-5.8-5.8.0.orig/debian.azure-5.8/config/amd64/config.flavour.azure +++ linux-azure-5.8-5.8.0/debian.azure-5.8/config/amd64/config.flavour.azure @@ -0,0 +1,3 @@ +# +# Config options for config.flavour.azure automatically generated by splitconfig.pl +# --- linux-azure-5.8-5.8.0.orig/debian.azure-5.8/config/annotations +++ linux-azure-5.8-5.8.0/debian.azure-5.8/config/annotations @@ -0,0 +1,293 @@ +# Menu: HEADER +# FORMAT: 3 +# ARCH: x86 + +include "../../debian.master/config/annotations" + +CONFIG_FPGA_MGR_XILINX_SPI mark note +CONFIG_FPGA_MGR_XILINX_SPI policy<{'amd64': 'm'}> + +CONFIG_ANDROID policy<{'amd64': 'y'}> +CONFIG_ANDROID mark note + +CONFIG_ASHMEM policy<{'amd64': 'm'}> +CONFIG_ASHMEM mark note + +CONFIG_ANDROID_BINDER_IPC policy<{'amd64': 'm'}> +CONFIG_ANDROID_BINDER_IPC mark note + +CONFIG_MLX5_CORE policy<{'amd64': 'm'}> +CONFIG_MLX5_CORE mark note + +CONFIG_MLX4_CORE policy<{'amd64': 'm'}> +CONFIG_MLX4_CORE mark note + +CONFIG_MLX4_INFINIBAND policy<{'amd64': 'm'}> +CONFIG_MLX4_INFINIBAND mark note + +CONFIG_MLX5_INFINIBAND policy<{'amd64': 'm'}> +CONFIG_MLX5_INFINIBAND mark note + +CONFIG_INFINIBAND_USER_MAD policy<{'amd64': 'm'}> +CONFIG_INFINIBAND_USER_MAD mark note + +CONFIG_INFINIBAND_IPOIB policy<{'amd64': 'm'}> +CONFIG_INFINIBAND_IPOIB mark note + +CONFIG_BLK_DEV_NVME policy<{'amd64': 'y'}> +CONFIG_BLK_DEV_NVME mark note note + +CONFIG_PCI_HYPERV policy<{'amd64': 'y'}> +CONFIG_PCI_HYPERV mark note + +CONFIG_EDAC_DECODE_MCE policy<{'amd64': 'y'}> +CONFIG_EDAC_DECODE_MCE mark note + +CONFIG_EDAC_AMD64 policy<{'amd64': 'm'}> +CONFIG_EDAC_AMD64 mark note + +CONFIG_INFINIBAND_IPOIB_DEBUG policy<{'amd64': 'y'}> +CONFIG_INFINIBAND_IPOIB_DEBUG note note mark + +CONFIG_NO_HZ_FULL policy<{'amd64': 'y'}> +CONFIG_NO_HZ_FULL note mark note + +CONFIG_NO_HZ_IDLE policy<{'amd64': 'n'}> +CONFIG_NO_HZ_IDLE note mark note + +CONFIG_HOTPLUG_CPU policy<{'amd64': 'y'}> +CONFIG_HOTPLUG_CPU note mark + +CONFIG_CATAPULT_PCI policy<{'amd64': 'm'}> +CONFIG_CATAPULT_PCI mark note + +CONFIG_HYPERV policy<{'amd64': 'y'}> +CONFIG_HYPERV mark note + +CONFIG_HYPERV_STORAGE policy<{'amd64': 'y'}> +CONFIG_HYPERV_STORAGE mark note + +CONFIG_EFI_VARS policy<{'amd64': 'y'}> +CONFIG_EFI_VARS mark note + +CONFIG_HYPERV_VSOCKETS policy<{'amd64': 'm'}> +CONFIG_HYPERV_VSOCKETS mark note + +CONFIG_HYPERV_INFINIBAND_ND policy<{'amd64': 'm'}> +CONFIG_HYPERV_INFINIBAND_ND mark note + +CONFIG_DEV_DAX policy<{'amd64': 'y'}> +CONFIG_DEV_DAX mark note + +CONFIG_BLK_DEV_PMEM policy<{'amd64': 'y'}> +CONFIG_BLK_DEV_PMEM mark note + +CONFIG_OVERLAY_FS_REDIRECT_DIR policy<{'amd64': 'y'}> +CONFIG_OVERLAY_FS_REDIRECT_DIR mark note + +CONFIG_ND_BLK policy<{'amd64': 'y'}> +CONFIG_ND_BLK mark note + +CONFIG_ACPI_NFIT policy<{'amd64': 'y'}> +CONFIG_ACPI_NFIT mark note + +CONFIG_RTC_CLASS policy<{'amd64': 'y'}> +CONFIG_RTC_CLASS mark note + +CONFIG_I2C_PIIX4 policy<{'amd64': 'n'}> +CONFIG_I2C_PIIX4 mark note + +CONFIG_DRM_NOUVEAU policy<{'amd64': 'n'}> +CONFIG_DRM_NOUVEAU mark note + +CONFIG_BLK_DEV_DRBD policy<{'amd64': 'm'}> +CONFIG_BLK_DEV_DRBD mark note + +CONFIG_VBOXGUEST policy<{'amd64': 'n'}> +CONFIG_VBOXGUEST mark note + +CONFIG_XEN_ACPI_PROCESSOR policy<{'amd64': '-'}> +CONFIG_XEN_ACPI_PROCESSOR mark note + +CONFIG_USB_XHCI_HCD policy<{'amd64': 'y'}> +CONFIG_USB_XHCI_HCD mark note note + +CONFIG_USB_XHCI_PCI policy<{'amd64': 'y'}> +CONFIG_USB_XHCI_PCI mark note note + +CONFIG_USB_XHCI_PLATFORM policy<{'amd64': 'm'}> +CONFIG_USB_XHCI_PLATFORM mark note note + +CONFIG_CONTEXT_TRACKING_FORCE policy<{'amd64': 'n'}> +CONFIG_CONTEXT_TRACKING_FORCE flag note + +CONFIG_ATARI_PARTITION policy<{'amd64': 'n'}> +CONFIG_ATARI_PARTITION mark note + +# From linux-azure initial packaging + +CONFIG_POWERCAP policy<{'amd64': 'n'}> +CONFIG_POWERCAP mark note + +CONFIG_CHROME_PLATFORMS policy<{'amd64': 'n'}> +CONFIG_CHROME_PLATFORMS mark note + +CONFIG_USB_UHCI_HCD policy<{'amd64': 'n'}> +CONFIG_USB_UHCI_HCD mark note + +CONFIG_USB_EHCI_HCD policy<{'amd64': 'n'}> +CONFIG_USB_EHCI_HCD mark note + +CONFIG_USB_EHCI_HCD_PLATFORM policy<{'amd64': '-'}> +CONFIG_USB_EHCI_HCD_PLATFORM mark note + +CONFIG_TOUCHSCREEN_ELAN policy<{'amd64': '-'}> +CONFIG_TOUCHSCREEN_ELAN mark note + +CONFIG_SOUND policy<{'amd64': 'n'}> +CONFIG_SOUND mark note + +CONFIG_FUJITSU_ES policy<{'amd64': 'n'}> +CONFIG_FUJITSU_ES mark note + +CONFIG_INPUT_LEDS policy<{'amd64': 'n'}> +CONFIG_INPUT_LEDS mark note + +CONFIG_SATA_ACARD_AHCI policy<{'amd64': 'n'}> +CONFIG_SATA_ACARD_AHCI mark note + +CONFIG_SATA_INIC162X policy<{'amd64': 'n'}> +CONFIG_SATA_INIC162X mark note + +CONFIG_SATA_MV policy<{'amd64': 'n'}> +CONFIG_SATA_MV mark note + +CONFIG_SATA_NV policy<{'amd64': 'n'}> +CONFIG_SATA_NV mark note + +CONFIG_SATA_PROMISE policy<{'amd64': 'n'}> +CONFIG_SATA_PROMISE mark note + +CONFIG_SATA_QSTOR policy<{'amd64': 'n'}> +CONFIG_SATA_QSTOR mark note + +CONFIG_SATA_SIL policy<{'amd64': 'n'}> +CONFIG_SATA_SIL mark note + +CONFIG_SATA_SIL24 policy<{'amd64': 'n'}> +CONFIG_SATA_SIL24 mark note + +CONFIG_SATA_SIS policy<{'amd64': 'n'}> +CONFIG_SATA_SIS mark note + +CONFIG_SATA_SVW policy<{'amd64': 'n'}> +CONFIG_SATA_SVW mark note + +CONFIG_SATA_SX4 policy<{'amd64': 'n'}> +CONFIG_SATA_SX4 mark note + +CONFIG_SATA_ULI policy<{'amd64': 'n'}> +CONFIG_SATA_ULI mark note + +CONFIG_SATA_VIA policy<{'amd64': 'n'}> +CONFIG_SATA_VIA mark note + +CONFIG_SATA_VITESSE policy<{'amd64': 'n'}> +CONFIG_SATA_VITESSE mark note + +CONFIG_SATA_ZPODD policy<{'amd64': 'n'}> +CONFIG_SATA_ZPODD mark note + +CONFIG_HYPERV_IOMMU policy<{'amd64': 'y'}> +CONFIG_HYPERV_IOMMU mark note + +CONFIG_LOOPBACK_TARGET policy<{'amd64': 'm'}> +CONFIG_LOOPBACK_TARGET mark note + +# Changes made to the generic kernel that are not necessary in the Azure kernel + +CONFIG_REGULATOR_TWL4030 policy<{'amd64': '-'}> +CONFIG_REGULATOR_TWL4030 note + +CONFIG_GPIO_TWL4030 policy<{'amd64': '-'}> +CONFIG_GPIO_TWL4030 note + +CONFIG_SOUND_OSS_CORE_PRECLAIM policy<{'amd64': '-'}> +CONFIG_SOUND_OSS_CORE_PRECLAIM note + +CONFIG_SND_SOC_SOF_HDA_AUDIO_CODEC policy<{'amd64': '-'}> +CONFIG_SND_SOC_SOF_HDA_AUDIO_CODEC note + +CONFIG_SND_SOC_SOF_HDA_LINK policy<{'amd64': '-'}> +CONFIG_SND_SOC_SOF_HDA_LINK note + +CONFIG_SND_SOC_SOF_NOCODEC_SUPPORT policy<{'amd64': '-'}> +CONFIG_SND_SOC_SOF_NOCODEC_SUPPORT note + +CONFIG_NETWORK_PHY_TIMESTAMPING policy<{'amd64': 'n'}> +CONFIG_NETWORK_PHY_TIMESTAMPING note + +CONFIG_SND_SOC_INTEL_CML_H policy<{'amd64': '-'}> +CONFIG_SND_SOC_INTEL_CML_H note + +CONFIG_SND_SOC_SOF_HDA_COMMON_HDMI_CODEC policy<{'amd64': '-'}> +CONFIG_SND_SOC_SOF_HDA_COMMON_HDMI_CODEC note + +CONFIG_SND_SOC_INTEL_CML_LP policy<{'amd64': '-'}> +CONFIG_SND_SOC_INTEL_CML_LP note + +CONFIG_SND_SOC_INTEL_CFL policy<{'amd64': '-'}> +CONFIG_SND_SOC_INTEL_CFL note + +CONFIG_LATENCYTOP policy<{'amd64': '-'}> +CONFIG_LATENCYTOP note + +CONFIG_USB_OHCI_HCD policy<{'amd64': '-'}> +CONFIG_USB_OHCI_HCD note + +CONFIG_SND_SOC_INTEL_SKYLAKE policy<{'amd64': '-'}> +CONFIG_SND_SOC_INTEL_SKYLAKE note + +CONFIG_SND_SOC_INTEL_SKYLAKE_HDAUDIO_CODEC policy<{'amd64': '-'}> +CONFIG_SND_SOC_INTEL_SKYLAKE_HDAUDIO_CODEC note + +CONFIG_SND_SOC_INTEL_CNL policy<{'amd64': '-'}> +CONFIG_SND_SOC_INTEL_CNL note + +CONFIG_X86_UV policy<{'amd64': 'n'}> +CONFIG_X86_UV note + +CONFIG_SND_SOC_AMD_RENOIR policy<{'amd64': '-'}> +CONFIG_SND_SOC_AMD_RENOIR note + +CONFIG_SND_SOC_AMD_RENOIR_MACH policy<{'amd64': '-'}> +CONFIG_SND_SOC_AMD_RENOIR_MACH note + +CONFIG_BT_HS policy<{'amd64': '-'}> +CONFIG_BT_HS mark note + +CONFIG_DRM_BOCHS policy<{'amd64': 'n'}> +CONFIG_DRM_BOCHS note + +CONFIG_SND_SOC_SOF_HDA_ALWAYS_ENABLE_DMI_L1 policy<{'amd64': '-'}> +CONFIG_SND_SOC_SOF_HDA_ALWAYS_ENABLE_DMI_L1 mark note note + +CONFIG_SPI_INTEL_SPI_PCI policy<{'amd64': '-'}> +CONFIG_SPI_INTEL_SPI_PCI mark note note + +CONFIG_SPI_INTEL_SPI_PLATFORM policy<{'amd64': '-'}> +CONFIG_SPI_INTEL_SPI_PLATFORM mark note note + +CONFIG_MTD_DOCG3 policy<{'amd64': '-'}> +CONFIG_MTD_DOCG3 mark note + +CONFIG_SAMPLE_TRACE_PRINTK policy<{'amd64': '-'}> +CONFIG_SAMPLE_TRACE_PRINTK mark note + +# Menu: Security options +CONFIG_SECURITY_DMESG_RESTRICT policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n', 's390x': 'n'}> +CONFIG_SECURITY_DMESG_RESTRICT mark + +# Menu: Kernel hacking >> Compile-time checks and compiler options >> Compile the kernel with debug info +CONFIG_DEBUG_INFO_BTF policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n', 's390x': 'n'}> +CONFIG_DEBUG_INFO_BTF flag note --- linux-azure-5.8-5.8.0.orig/debian.azure-5.8/config/config.common.ports +++ linux-azure-5.8-5.8.0/debian.azure-5.8/config/config.common.ports @@ -0,0 +1,3 @@ +# +# Common config options automatically generated by splitconfig.pl +# --- linux-azure-5.8-5.8.0.orig/debian.azure-5.8/config/config.common.ubuntu +++ linux-azure-5.8-5.8.0/debian.azure-5.8/config/config.common.ubuntu @@ -0,0 +1,5695 @@ +# +# Common config options automatically generated by splitconfig.pl +# +CONFIG_60XX_WDT=m +CONFIG_64BIT=y +CONFIG_6LOWPAN=m +# CONFIG_6LOWPAN_DEBUGFS is not set +# CONFIG_6LOWPAN_GHC_EXT_HDR_DEST is not set +# CONFIG_6LOWPAN_GHC_EXT_HDR_FRAG is not set +# CONFIG_6LOWPAN_GHC_EXT_HDR_HOP is not set +# CONFIG_6LOWPAN_GHC_EXT_HDR_ROUTE is not set +# CONFIG_6LOWPAN_GHC_ICMPV6 is not set +# CONFIG_6LOWPAN_GHC_UDP is not set +CONFIG_6LOWPAN_NHC=m +CONFIG_6LOWPAN_NHC_DEST=m +CONFIG_6LOWPAN_NHC_FRAGMENT=m +CONFIG_6LOWPAN_NHC_HOP=m +CONFIG_6LOWPAN_NHC_IPV6=m +CONFIG_6LOWPAN_NHC_MOBILITY=m +CONFIG_6LOWPAN_NHC_ROUTING=m +CONFIG_6LOWPAN_NHC_UDP=m +# CONFIG_6PACK is not set +CONFIG_8139CP=m +CONFIG_8139TOO=m +CONFIG_8139TOO_8129=y +CONFIG_8139TOO_PIO=y +# CONFIG_8139TOO_TUNE_TWISTER is not set +# CONFIG_8139_OLD_RX_RESET is not set +CONFIG_842_COMPRESS=m +CONFIG_842_DECOMPRESS=m +CONFIG_9P_FS=m +CONFIG_9P_FSCACHE=y +CONFIG_9P_FS_POSIX_ACL=y +CONFIG_9P_FS_SECURITY=y +# CONFIG_ABX500_CORE is not set +# CONFIG_ACCESSIBILITY is not set +# CONFIG_ACERHDF is not set +CONFIG_ACER_WIRELESS=m +# CONFIG_ACER_WMI is not set +# CONFIG_ACORN_PARTITION is not set +CONFIG_ACPI=y +# CONFIG_ACPI_AC is not set +CONFIG_ACPI_ADXL=y +CONFIG_ACPI_APEI=y +# CONFIG_ACPI_APEI_EINJ is not set +# CONFIG_ACPI_APEI_ERST_DEBUG is not set +# CONFIG_ACPI_APEI_GHES is not set +CONFIG_ACPI_APEI_MEMORY_FAILURE=y +CONFIG_ACPI_APEI_PCIEAER=y +# CONFIG_ACPI_BATTERY is not set +# CONFIG_ACPI_BGRT is not set +CONFIG_ACPI_BUTTON=y +# CONFIG_ACPI_CMPC is not set +# CONFIG_ACPI_CONFIGFS is not set +CONFIG_ACPI_CONTAINER=y +CONFIG_ACPI_CPPC_LIB=y +CONFIG_ACPI_CPU_FREQ_PSS=y +CONFIG_ACPI_CUSTOM_DSDT_FILE="" +# CONFIG_ACPI_CUSTOM_METHOD is not set +# CONFIG_ACPI_DEBUG is not set +# CONFIG_ACPI_DEBUGGER is not set +# CONFIG_ACPI_DOCK is not set +CONFIG_ACPI_EC_DEBUGFS=m +# CONFIG_ACPI_EXTLOG is not set +# CONFIG_ACPI_FAN is not set +CONFIG_ACPI_HED=y +CONFIG_ACPI_HMAT=y +CONFIG_ACPI_HOTPLUG_CPU=y +CONFIG_ACPI_HOTPLUG_IOAPIC=y +# CONFIG_ACPI_HOTPLUG_MEMORY is not set +CONFIG_ACPI_IPMI=m +CONFIG_ACPI_LEGACY_TABLES_LOOKUP=y +CONFIG_ACPI_LPIT=y +CONFIG_ACPI_NFIT=y +CONFIG_ACPI_NUMA=y +# CONFIG_ACPI_PCI_SLOT is not set +CONFIG_ACPI_PROCESSOR=y +CONFIG_ACPI_PROCESSOR_AGGREGATOR=m +CONFIG_ACPI_PROCESSOR_CSTATE=y +CONFIG_ACPI_PROCESSOR_IDLE=y +# CONFIG_ACPI_PROCFS_POWER is not set +# CONFIG_ACPI_REDUCED_HARDWARE_ONLY is not set +# CONFIG_ACPI_REV_OVERRIDE_POSSIBLE is not set +# CONFIG_ACPI_SBS is not set +CONFIG_ACPI_SLEEP=y +CONFIG_ACPI_SPCR_TABLE=y +CONFIG_ACPI_SYSTEM_POWER_STATES_SUPPORT=y +# CONFIG_ACPI_TABLE_UPGRADE is not set +# CONFIG_ACPI_TAD is not set +# CONFIG_ACPI_THERMAL is not set +CONFIG_ACPI_VIDEO=m +CONFIG_ACPI_WATCHDOG=y +CONFIG_ACPI_WMI=m +CONFIG_ACQUIRE_WDT=m +CONFIG_ACRN_GUEST=y +# CONFIG_AD525X_DPOT is not set +CONFIG_ADFS_FS=m +# CONFIG_ADFS_FS_RW is not set +CONFIG_ADIN_PHY=m +CONFIG_ADVANTECH_WDT=m +CONFIG_ADVISE_SYSCALLS=y +CONFIG_AFFS_FS=m +# CONFIG_AFS_DEBUG is not set +# CONFIG_AFS_DEBUG_CURSOR is not set +CONFIG_AFS_FS=m +CONFIG_AFS_FSCACHE=y +CONFIG_AF_KCM=m +CONFIG_AF_RXRPC=m +# CONFIG_AF_RXRPC_DEBUG is not set +# CONFIG_AF_RXRPC_INJECT_LOSS is not set +CONFIG_AF_RXRPC_IPV6=y +CONFIG_AGP=y +CONFIG_AGP_AMD64=y +CONFIG_AGP_INTEL=y +CONFIG_AGP_SIS=m +CONFIG_AGP_VIA=y +CONFIG_AIC79XX_CMDS_PER_DEVICE=32 +# CONFIG_AIC79XX_DEBUG_ENABLE is not set +CONFIG_AIC79XX_DEBUG_MASK=0 +CONFIG_AIC79XX_REG_PRETTY_PRINT=y +CONFIG_AIC79XX_RESET_DELAY_MS=5000 +CONFIG_AIC7XXX_CMDS_PER_DEVICE=8 +# CONFIG_AIC7XXX_DEBUG_ENABLE is not set +CONFIG_AIC7XXX_DEBUG_MASK=0 +CONFIG_AIC7XXX_REG_PRETTY_PRINT=y +CONFIG_AIC7XXX_RESET_DELAY_MS=5000 +# CONFIG_AIC94XX_DEBUG is not set +CONFIG_AIO=y +CONFIG_AIX_PARTITION=y +# CONFIG_ALIENWARE_WMI is not set +CONFIG_ALIM1535_WDT=m +CONFIG_ALIM7101_WDT=m +CONFIG_ALLOW_DEV_COREDUMP=y +# CONFIG_ALTERA_MBOX is not set +CONFIG_ALTERA_MSGDMA=m +# CONFIG_ALTERA_PR_IP_CORE is not set +# CONFIG_ALTERA_STAPL is not set +# CONFIG_ALTERA_TSE is not set +CONFIG_AMDTEE=m +CONFIG_AMD_IOMMU=y +CONFIG_AMD_IOMMU_V2=m +CONFIG_AMD_MEM_ENCRYPT=y +# CONFIG_AMD_MEM_ENCRYPT_ACTIVE_BY_DEFAULT is not set +CONFIG_AMD_NB=y +CONFIG_AMD_NUMA=y +# CONFIG_AMD_PHY is not set +CONFIG_AMIGA_PARTITION=y +# CONFIG_AMILO_RFKILL is not set +CONFIG_ANDROID=y +# CONFIG_ANDROID_BINDERFS is not set +CONFIG_ANDROID_BINDER_DEVICES="binder,hwbinder,vndbinder" +CONFIG_ANDROID_BINDER_IPC=m +# CONFIG_ANDROID_BINDER_IPC_SELFTEST is not set +CONFIG_APDS9802ALS=m +# CONFIG_APPLE_GMUX is not set +CONFIG_APPLE_MFI_FASTCHARGE=m +CONFIG_APPLE_PROPERTIES=y +CONFIG_APPLICOM=m +CONFIG_AQTION=m +# CONFIG_AQUANTIA_PHY is not set +CONFIG_ARCH_CLOCKSOURCE_INIT=y +CONFIG_ARCH_CPUIDLE_HALTPOLL=y +CONFIG_ARCH_DMA_ADDR_T_64BIT=y +CONFIG_ARCH_ENABLE_HUGEPAGE_MIGRATION=y +CONFIG_ARCH_ENABLE_MEMORY_HOTPLUG=y +CONFIG_ARCH_ENABLE_MEMORY_HOTREMOVE=y +CONFIG_ARCH_ENABLE_SPLIT_PMD_PTLOCK=y +CONFIG_ARCH_ENABLE_THP_MIGRATION=y +CONFIG_ARCH_HAS_ACPI_TABLE_UPGRADE=y +CONFIG_ARCH_HAS_ADD_PAGES=y +CONFIG_ARCH_HAS_CACHE_LINE_SIZE=y +CONFIG_ARCH_HAS_COPY_MC=y +CONFIG_ARCH_HAS_CPU_RELAX=y +CONFIG_ARCH_HAS_DEBUG_VIRTUAL=y +CONFIG_ARCH_HAS_DEBUG_VM_PGTABLE=y +CONFIG_ARCH_HAS_DEBUG_WX=y +CONFIG_ARCH_HAS_DEVMEM_IS_ALLOWED=y +CONFIG_ARCH_HAS_EARLY_DEBUG=y +CONFIG_ARCH_HAS_ELF_RANDOMIZE=y +CONFIG_ARCH_HAS_FAST_MULTIPLIER=y +CONFIG_ARCH_HAS_FILTER_PGPROT=y +CONFIG_ARCH_HAS_FORCE_DMA_UNENCRYPTED=y +CONFIG_ARCH_HAS_FORTIFY_SOURCE=y +CONFIG_ARCH_HAS_GCOV_PROFILE_ALL=y +CONFIG_ARCH_HAS_GIGANTIC_PAGE=y +CONFIG_ARCH_HAS_KCOV=y +CONFIG_ARCH_HAS_KEXEC_PURGATORY=y +CONFIG_ARCH_HAS_MEMBARRIER_SYNC_CORE=y +CONFIG_ARCH_HAS_MEM_ENCRYPT=y +CONFIG_ARCH_HAS_NON_OVERLAPPING_ADDRESS_SPACE=y +CONFIG_ARCH_HAS_PKEYS=y +CONFIG_ARCH_HAS_PMEM_API=y +CONFIG_ARCH_HAS_PTE_DEVMAP=y +CONFIG_ARCH_HAS_PTE_SPECIAL=y +CONFIG_ARCH_HAS_SET_DIRECT_MAP=y +CONFIG_ARCH_HAS_SET_MEMORY=y +CONFIG_ARCH_HAS_STRICT_KERNEL_RWX=y +CONFIG_ARCH_HAS_STRICT_MODULE_RWX=y +CONFIG_ARCH_HAS_SYNC_CORE_BEFORE_USERMODE=y +CONFIG_ARCH_HAS_SYSCALL_WRAPPER=y +CONFIG_ARCH_HAS_UACCESS_FLUSHCACHE=y +CONFIG_ARCH_HAS_UBSAN_SANITIZE_ALL=y +CONFIG_ARCH_HAVE_NMI_SAFE_CMPXCHG=y +CONFIG_ARCH_HIBERNATION_HEADER=y +CONFIG_ARCH_HIBERNATION_POSSIBLE=y +CONFIG_ARCH_MAY_HAVE_PC_FDC=y +CONFIG_ARCH_MEMORY_PROBE=y +CONFIG_ARCH_MIGHT_HAVE_ACPI_PDC=y +CONFIG_ARCH_MIGHT_HAVE_PC_PARPORT=y +CONFIG_ARCH_MIGHT_HAVE_PC_SERIO=y +CONFIG_ARCH_MMAP_RND_BITS=28 +CONFIG_ARCH_MMAP_RND_BITS_MAX=32 +CONFIG_ARCH_MMAP_RND_BITS_MIN=28 +CONFIG_ARCH_MMAP_RND_COMPAT_BITS=8 +CONFIG_ARCH_MMAP_RND_COMPAT_BITS_MAX=16 +CONFIG_ARCH_MMAP_RND_COMPAT_BITS_MIN=8 +CONFIG_ARCH_PROC_KCORE_TEXT=y +CONFIG_ARCH_RANDOM=y +CONFIG_ARCH_SELECT_MEMORY_MODEL=y +CONFIG_ARCH_SPARSEMEM_DEFAULT=y +CONFIG_ARCH_SPARSEMEM_ENABLE=y +CONFIG_ARCH_STACKWALK=y +CONFIG_ARCH_SUPPORTS_ACPI=y +CONFIG_ARCH_SUPPORTS_ATOMIC_RMW=y +CONFIG_ARCH_SUPPORTS_DEBUG_PAGEALLOC=y +CONFIG_ARCH_SUPPORTS_INT128=y +CONFIG_ARCH_SUPPORTS_MEMORY_FAILURE=y +CONFIG_ARCH_SUPPORTS_NUMA_BALANCING=y +CONFIG_ARCH_SUPPORTS_UPROBES=y +CONFIG_ARCH_SUSPEND_POSSIBLE=y +CONFIG_ARCH_USES_HIGH_VMA_FLAGS=y +CONFIG_ARCH_USES_PG_UNCACHED=y +CONFIG_ARCH_USE_BUILTIN_BSWAP=y +CONFIG_ARCH_USE_CMPXCHG_LOCKREF=y +CONFIG_ARCH_USE_MEMREMAP_PROT=y +CONFIG_ARCH_USE_QUEUED_RWLOCKS=y +CONFIG_ARCH_USE_QUEUED_SPINLOCKS=y +CONFIG_ARCH_USE_SYM_ANNOTATIONS=y +CONFIG_ARCH_WANTS_DYNAMIC_TASK_STRUCT=y +CONFIG_ARCH_WANTS_THP_SWAP=y +CONFIG_ARCH_WANT_BATCHED_UNMAP_TLB_FLUSH=y +CONFIG_ARCH_WANT_COMPAT_IPC_PARSE_VERSION=y +CONFIG_ARCH_WANT_DEFAULT_BPF_JIT=y +CONFIG_ARCH_WANT_GENERAL_HUGETLB=y +CONFIG_ARCH_WANT_HUGE_PMD_SHARE=y +CONFIG_ARCH_WANT_OLD_COMPAT_IPC=y +CONFIG_ARCNET=m +CONFIG_ARCNET_1051=m +CONFIG_ARCNET_1201=m +CONFIG_ARCNET_CAP=m +CONFIG_ARCNET_COM20020=m +CONFIG_ARCNET_COM20020_PCI=m +CONFIG_ARCNET_COM90xx=m +CONFIG_ARCNET_COM90xxIO=m +CONFIG_ARCNET_RAW=m +CONFIG_ARCNET_RIM_I=m +CONFIG_ASHMEM=m +CONFIG_ASM_MODVERSIONS=y +CONFIG_ASN1=y +CONFIG_ASSOCIATIVE_ARRAY=y +# CONFIG_ASUS_LAPTOP is not set +CONFIG_ASUS_WIRELESS=m +CONFIG_ASYMMETRIC_KEY_TYPE=y +CONFIG_ASYMMETRIC_PUBLIC_KEY_SUBTYPE=y +CONFIG_ASYMMETRIC_TPM_KEY_SUBTYPE=m +CONFIG_ASYNC_CORE=m +CONFIG_ASYNC_MEMCPY=m +CONFIG_ASYNC_PQ=m +CONFIG_ASYNC_RAID6_RECOV=m +CONFIG_ASYNC_TX_DMA=y +CONFIG_ASYNC_XOR=m +CONFIG_AS_AVX512=y +CONFIG_AS_SHA1_NI=y +CONFIG_AS_SHA256_NI=y +CONFIG_AS_TPAUSE=y +# CONFIG_AT803X_PHY is not set +CONFIG_ATA=y +CONFIG_ATALK=m +# CONFIG_ATARI_PARTITION is not set +CONFIG_ATA_ACPI=y +CONFIG_ATA_BMDMA=y +CONFIG_ATA_FORCE=y +CONFIG_ATA_GENERIC=y +# CONFIG_ATA_OVER_ETH is not set +CONFIG_ATA_PIIX=y +CONFIG_ATA_SFF=y +CONFIG_ATA_VERBOSE_ERROR=y +CONFIG_ATM=m +CONFIG_ATM_AMBASSADOR=m +# CONFIG_ATM_AMBASSADOR_DEBUG is not set +CONFIG_ATM_BR2684=m +# CONFIG_ATM_BR2684_IPFILTER is not set +CONFIG_ATM_CLIP=m +# CONFIG_ATM_CLIP_NO_ICMP is not set +CONFIG_ATM_DRIVERS=y +CONFIG_ATM_DUMMY=m +CONFIG_ATM_ENI=m +# CONFIG_ATM_ENI_DEBUG is not set +# CONFIG_ATM_ENI_TUNE_BURST is not set +CONFIG_ATM_FIRESTREAM=m +CONFIG_ATM_FORE200E=m +CONFIG_ATM_FORE200E_DEBUG=0 +CONFIG_ATM_FORE200E_TX_RETRY=16 +# CONFIG_ATM_FORE200E_USE_TASKLET is not set +CONFIG_ATM_HE=m +CONFIG_ATM_HE_USE_SUNI=y +CONFIG_ATM_HORIZON=m +# CONFIG_ATM_HORIZON_DEBUG is not set +CONFIG_ATM_IA=m +# CONFIG_ATM_IA_DEBUG is not set +CONFIG_ATM_IDT77252=m +# CONFIG_ATM_IDT77252_DEBUG is not set +# CONFIG_ATM_IDT77252_RCV_ALL is not set +CONFIG_ATM_IDT77252_USE_SUNI=y +CONFIG_ATM_LANAI=m +CONFIG_ATM_LANE=m +CONFIG_ATM_MPOA=m +CONFIG_ATM_NICSTAR=m +# CONFIG_ATM_NICSTAR_USE_IDT77105 is not set +# CONFIG_ATM_NICSTAR_USE_SUNI is not set +CONFIG_ATM_SOLOS=m +CONFIG_ATM_TCP=m +CONFIG_ATM_ZATM=m +# CONFIG_ATM_ZATM_DEBUG is not set +CONFIG_ATP=m +CONFIG_AUDIT=y +CONFIG_AUDITSYSCALL=y +CONFIG_AUDIT_ARCH=y +CONFIG_AUFS_BDEV_LOOP=y +# CONFIG_AUFS_BRANCH_MAX_1023 is not set +CONFIG_AUFS_BRANCH_MAX_127=y +# CONFIG_AUFS_BRANCH_MAX_32767 is not set +# CONFIG_AUFS_BRANCH_MAX_511 is not set +# CONFIG_AUFS_BR_FUSE is not set +CONFIG_AUFS_BR_HFSPLUS=y +# CONFIG_AUFS_BR_RAMFS is not set +# CONFIG_AUFS_DEBUG is not set +CONFIG_AUFS_DIRREN=y +CONFIG_AUFS_EXPORT=y +# CONFIG_AUFS_FHSM is not set +CONFIG_AUFS_FS=m +# CONFIG_AUFS_HNOTIFY is not set +CONFIG_AUFS_INO_T_64=y +# CONFIG_AUFS_RDU is not set +CONFIG_AUFS_SBILIST=y +# CONFIG_AUFS_SHWH is not set +CONFIG_AUFS_XATTR=y +CONFIG_AUTOFS4_FS=m +CONFIG_AUTOFS_FS=m +CONFIG_AUXDISPLAY=y +CONFIG_AX25=m +CONFIG_AX25_DAMA_SLAVE=y +CONFIG_AX88796B_PHY=m +CONFIG_B44=m +CONFIG_B44_PCI=y +CONFIG_B44_PCICORE_AUTOSELECT=y +CONFIG_B44_PCI_AUTOSELECT=y +CONFIG_B53=m +CONFIG_B53_MDIO_DRIVER=m +CONFIG_B53_MMAP_DRIVER=m +CONFIG_B53_SERDES=m +CONFIG_B53_SPI_DRIVER=m +CONFIG_B53_SRAB_DRIVER=m +# CONFIG_BACKLIGHT_ADP8860 is not set +# CONFIG_BACKLIGHT_ADP8870 is not set +# CONFIG_BACKLIGHT_APPLE is not set +CONFIG_BACKLIGHT_ARCXCNN=m +# CONFIG_BACKLIGHT_BD6107 is not set +CONFIG_BACKLIGHT_CLASS_DEVICE=y +# CONFIG_BACKLIGHT_DA9052 is not set +# CONFIG_BACKLIGHT_GENERIC is not set +# CONFIG_BACKLIGHT_GPIO is not set +# CONFIG_BACKLIGHT_LM3639 is not set +# CONFIG_BACKLIGHT_LV5207LP is not set +# CONFIG_BACKLIGHT_PCF50633 is not set +CONFIG_BACKLIGHT_QCOM_WLED=m +# CONFIG_BACKLIGHT_SAHARA is not set +# CONFIG_BACKLIGHT_SKY81452 is not set +# CONFIG_BACKLIGHT_WM831X is not set +CONFIG_BALLOON_COMPACTION=y +CONFIG_BAREUDP=m +CONFIG_BASE_FULL=y +CONFIG_BASE_SMALL=0 +CONFIG_BATMAN_ADV=m +# CONFIG_BATMAN_ADV_BATMAN_V is not set +CONFIG_BATMAN_ADV_BLA=y +CONFIG_BATMAN_ADV_DAT=y +# CONFIG_BATMAN_ADV_DEBUG is not set +# CONFIG_BATMAN_ADV_DEBUGFS is not set +CONFIG_BATMAN_ADV_MCAST=y +CONFIG_BATMAN_ADV_NC=y +CONFIG_BATMAN_ADV_SYSFS=y +# CONFIG_BATMAN_ADV_TRACING is not set +# CONFIG_BATTERY_BQ27XXX is not set +CONFIG_BATTERY_CW2015=m +# CONFIG_BATTERY_DA9052 is not set +# CONFIG_BATTERY_DS2780 is not set +# CONFIG_BATTERY_DS2781 is not set +# CONFIG_BATTERY_DS2782 is not set +# CONFIG_BATTERY_GAUGE_LTC2941 is not set +# CONFIG_BATTERY_MAX17040 is not set +# CONFIG_BATTERY_MAX17042 is not set +# CONFIG_BATTERY_RT5033 is not set +# CONFIG_BATTERY_SBS is not set +# CONFIG_BAYCOM_PAR is not set +# CONFIG_BAYCOM_SER_FDX is not set +# CONFIG_BAYCOM_SER_HDX is not set +CONFIG_BCACHE=m +CONFIG_BCACHE_ASYNC_REGISTRAION=y +# CONFIG_BCACHE_CLOSURES_DEBUG is not set +# CONFIG_BCACHE_DEBUG is not set +CONFIG_BCM54140_PHY=m +CONFIG_BCM7XXX_PHY=m +CONFIG_BCM84881_PHY=y +# CONFIG_BCM87XX_PHY is not set +CONFIG_BCMA=m +# CONFIG_BCMA_DEBUG is not set +CONFIG_BCMA_DRIVER_GMAC_CMN=y +CONFIG_BCMA_DRIVER_GPIO=y +CONFIG_BCMA_DRIVER_PCI=y +CONFIG_BCMA_HOST_PCI=y +CONFIG_BCMA_HOST_PCI_POSSIBLE=y +CONFIG_BCMA_HOST_SOC=y +CONFIG_BCMA_POSSIBLE=y +CONFIG_BCMA_SFLASH=y +CONFIG_BCMGENET=m +# CONFIG_BCM_KONA_USB2_PHY is not set +CONFIG_BCM_NET_PHYLIB=m +CONFIG_BE2ISCSI=m +CONFIG_BE2NET=m +CONFIG_BE2NET_BE2=y +CONFIG_BE2NET_BE3=y +CONFIG_BE2NET_HWMON=y +CONFIG_BE2NET_LANCER=y +CONFIG_BE2NET_SKYHAWK=y +# CONFIG_BEFS_DEBUG is not set +CONFIG_BEFS_FS=m +# CONFIG_BFQ_CGROUP_DEBUG is not set +CONFIG_BFQ_GROUP_IOSCHED=y +CONFIG_BFS_FS=m +CONFIG_BINARY_PRINTF=y +CONFIG_BINFMT_ELF=y +CONFIG_BINFMT_MISC=m +CONFIG_BINFMT_SCRIPT=y +CONFIG_BITREVERSE=y +CONFIG_BLK_CGROUP=y +CONFIG_BLK_CGROUP_IOCOST=y +# CONFIG_BLK_CGROUP_IOLATENCY is not set +CONFIG_BLK_CGROUP_RWSTAT=y +CONFIG_BLK_CMDLINE_PARSER=y +CONFIG_BLK_DEBUG_FS=y +CONFIG_BLK_DEBUG_FS_ZONED=y +CONFIG_BLK_DEV=y +# CONFIG_BLK_DEV_3W_XXXX_RAID is not set +CONFIG_BLK_DEV_BSG=y +CONFIG_BLK_DEV_BSGLIB=y +CONFIG_BLK_DEV_CRYPTOLOOP=m +CONFIG_BLK_DEV_DM=y +CONFIG_BLK_DEV_DM_BUILTIN=y +CONFIG_BLK_DEV_DRBD=m +# CONFIG_BLK_DEV_FD is not set +CONFIG_BLK_DEV_INITRD=y +CONFIG_BLK_DEV_INTEGRITY=y +CONFIG_BLK_DEV_INTEGRITY_T10=y +CONFIG_BLK_DEV_IO_TRACE=y +CONFIG_BLK_DEV_LOOP=y +CONFIG_BLK_DEV_LOOP_MIN_COUNT=8 +CONFIG_BLK_DEV_MD=y +CONFIG_BLK_DEV_NBD=m +# CONFIG_BLK_DEV_NULL_BLK is not set +CONFIG_BLK_DEV_NVME=y +# CONFIG_BLK_DEV_PCIESSD_MTIP32XX is not set +CONFIG_BLK_DEV_PMEM=y +CONFIG_BLK_DEV_RAM=m +CONFIG_BLK_DEV_RAM_COUNT=16 +CONFIG_BLK_DEV_RAM_SIZE=65536 +CONFIG_BLK_DEV_RBD=m +CONFIG_BLK_DEV_RNBD=y +CONFIG_BLK_DEV_RNBD_CLIENT=m +CONFIG_BLK_DEV_RNBD_SERVER=m +# CONFIG_BLK_DEV_RSXX is not set +CONFIG_BLK_DEV_SD=y +# CONFIG_BLK_DEV_SKD is not set +CONFIG_BLK_DEV_SR=y +# CONFIG_BLK_DEV_SX8 is not set +CONFIG_BLK_DEV_THROTTLING=y +# CONFIG_BLK_DEV_THROTTLING_LOW is not set +# CONFIG_BLK_DEV_UMEM is not set +CONFIG_BLK_DEV_ZONED=y +CONFIG_BLK_INLINE_ENCRYPTION=y +CONFIG_BLK_INLINE_ENCRYPTION_FALLBACK=y +CONFIG_BLK_MQ_PCI=y +CONFIG_BLK_MQ_RDMA=y +CONFIG_BLK_MQ_VIRTIO=y +CONFIG_BLK_PM=y +CONFIG_BLK_RQ_ALLOC_TIME=y +CONFIG_BLK_SCSI_REQUEST=y +CONFIG_BLK_SED_OPAL=y +CONFIG_BLK_WBT=y +CONFIG_BLK_WBT_MQ=y +CONFIG_BLOCK=y +CONFIG_BLOCK_COMPAT=y +CONFIG_BNX2=m +CONFIG_BNX2X=m +CONFIG_BNX2X_SRIOV=y +CONFIG_BNXT=m +CONFIG_BNXT_DCB=y +CONFIG_BNXT_FLOWER_OFFLOAD=y +CONFIG_BNXT_HWMON=y +CONFIG_BNXT_SRIOV=y +CONFIG_BOARD_TPCI200=m +CONFIG_BONDING=m +# CONFIG_BOOTPARAM_HARDLOCKUP_PANIC is not set +CONFIG_BOOTPARAM_HARDLOCKUP_PANIC_VALUE=0 +# CONFIG_BOOTPARAM_HOTPLUG_CPU0 is not set +# CONFIG_BOOTPARAM_HUNG_TASK_PANIC is not set +CONFIG_BOOTPARAM_HUNG_TASK_PANIC_VALUE=0 +# CONFIG_BOOTPARAM_SOFTLOCKUP_PANIC is not set +CONFIG_BOOTPARAM_SOFTLOCKUP_PANIC_VALUE=0 +CONFIG_BOOTTIME_TRACING=y +CONFIG_BOOT_CONFIG=y +CONFIG_BOOT_PRINTK_DELAY=y +CONFIG_BOUNCE=y +CONFIG_BPF=y +CONFIG_BPFILTER=y +CONFIG_BPFILTER_UMH=m +CONFIG_BPF_EVENTS=y +CONFIG_BPF_JIT=y +CONFIG_BPF_JIT_ALWAYS_ON=y +CONFIG_BPF_JIT_DEFAULT_ON=y +CONFIG_BPF_KPROBE_OVERRIDE=y +# CONFIG_BPF_LSM is not set +CONFIG_BPF_STREAM_PARSER=y +CONFIG_BPF_SYSCALL=y +# CONFIG_BPQETHER is not set +CONFIG_BQL=y +CONFIG_BRANCH_PROFILE_NONE=y +CONFIG_BRIDGE=m +CONFIG_BRIDGE_EBT_802_3=m +CONFIG_BRIDGE_EBT_AMONG=m +CONFIG_BRIDGE_EBT_ARP=m +CONFIG_BRIDGE_EBT_ARPREPLY=m +CONFIG_BRIDGE_EBT_BROUTE=m +CONFIG_BRIDGE_EBT_DNAT=m +CONFIG_BRIDGE_EBT_IP=m +CONFIG_BRIDGE_EBT_IP6=m +CONFIG_BRIDGE_EBT_LIMIT=m +CONFIG_BRIDGE_EBT_LOG=m +CONFIG_BRIDGE_EBT_MARK=m +CONFIG_BRIDGE_EBT_MARK_T=m +CONFIG_BRIDGE_EBT_NFLOG=m +CONFIG_BRIDGE_EBT_PKTTYPE=m +CONFIG_BRIDGE_EBT_REDIRECT=m +CONFIG_BRIDGE_EBT_SNAT=m +CONFIG_BRIDGE_EBT_STP=m +CONFIG_BRIDGE_EBT_T_FILTER=m +CONFIG_BRIDGE_EBT_T_NAT=m +CONFIG_BRIDGE_EBT_VLAN=m +CONFIG_BRIDGE_IGMP_SNOOPING=y +CONFIG_BRIDGE_MRP=y +CONFIG_BRIDGE_NETFILTER=m +CONFIG_BRIDGE_NF_EBTABLES=m +CONFIG_BRIDGE_VLAN_FILTERING=y +# CONFIG_BROADCOM_PHY is not set +CONFIG_BSD_DISKLABEL=y +CONFIG_BSD_PROCESS_ACCT=y +CONFIG_BSD_PROCESS_ACCT_V3=y +# CONFIG_BT is not set +CONFIG_BTREE=y +# CONFIG_BTRFS_ASSERT is not set +# CONFIG_BTRFS_DEBUG is not set +CONFIG_BTRFS_FS=m +# CONFIG_BTRFS_FS_CHECK_INTEGRITY is not set +CONFIG_BTRFS_FS_POSIX_ACL=y +# CONFIG_BTRFS_FS_REF_VERIFY is not set +# CONFIG_BTRFS_FS_RUN_SANITY_TESTS is not set +CONFIG_BTT=y +CONFIG_BUG=y +# CONFIG_BUG_ON_DATA_CORRUPTION is not set +CONFIG_BUILDTIME_TABLE_SORT=y +CONFIG_BUILD_BIN2C=y +CONFIG_BUILD_SALT="" +CONFIG_BXT_WC_PMIC_OPREGION=y +# CONFIG_C2PORT is not set +CONFIG_CACHEFILES=m +# CONFIG_CACHEFILES_DEBUG is not set +# CONFIG_CACHEFILES_HISTOGRAM is not set +CONFIG_CADENCE_WATCHDOG=m +CONFIG_CAIF=m +# CONFIG_CAIF_DEBUG is not set +CONFIG_CAIF_DRIVERS=y +# CONFIG_CAIF_HSI is not set +CONFIG_CAIF_NETDEV=m +# CONFIG_CAIF_SPI_SLAVE is not set +# CONFIG_CAIF_TTY is not set +CONFIG_CAIF_USB=m +CONFIG_CAIF_VIRTIO=m +CONFIG_CAN=m +# CONFIG_CAN_8DEV_USB is not set +CONFIG_CAN_BCM=m +CONFIG_CAN_CALC_BITTIMING=y +# CONFIG_CAN_CC770 is not set +CONFIG_CAN_C_CAN=m +CONFIG_CAN_C_CAN_PCI=m +CONFIG_CAN_C_CAN_PLATFORM=m +# CONFIG_CAN_DEBUG_DEVICES is not set +CONFIG_CAN_DEV=m +CONFIG_CAN_EMS_PCI=m +# CONFIG_CAN_EMS_USB is not set +# CONFIG_CAN_ESD_USB2 is not set +CONFIG_CAN_F81601=m +# CONFIG_CAN_GS_USB is not set +CONFIG_CAN_GW=m +CONFIG_CAN_HI311X=m +# CONFIG_CAN_IFI_CANFD is not set +CONFIG_CAN_J1939=m +CONFIG_CAN_JANZ_ICAN3=m +CONFIG_CAN_KVASER_PCI=m +CONFIG_CAN_KVASER_PCIEFD=m +# CONFIG_CAN_KVASER_USB is not set +# CONFIG_CAN_MCBA_USB is not set +# CONFIG_CAN_MCP251X is not set +# CONFIG_CAN_M_CAN is not set +CONFIG_CAN_PEAK_PCI=m +CONFIG_CAN_PEAK_PCIEC=y +CONFIG_CAN_PEAK_PCIEFD=m +# CONFIG_CAN_PEAK_USB is not set +CONFIG_CAN_PLX_PCI=m +CONFIG_CAN_RAW=m +CONFIG_CAN_SJA1000=m +CONFIG_CAN_SJA1000_ISA=m +CONFIG_CAN_SJA1000_PLATFORM=m +CONFIG_CAN_SLCAN=m +# CONFIG_CAN_SOFTING is not set +# CONFIG_CAN_UCAN is not set +CONFIG_CAN_VCAN=m +CONFIG_CAN_VXCAN=m +CONFIG_CARDBUS=y +CONFIG_CATAPULT_PCI=m +# CONFIG_CB710_CORE is not set +CONFIG_CC_CAN_LINK=y +CONFIG_CC_CAN_LINK_STATIC=y +CONFIG_CC_HAS_ASM_GOTO=y +CONFIG_CC_HAS_ASM_INLINE=y +CONFIG_CC_HAS_INT128=y +CONFIG_CC_HAS_KASAN_GENERIC=y +CONFIG_CC_HAS_SANCOV_TRACE_PC=y +CONFIG_CC_HAS_SANE_STACKPROTECTOR=y +CONFIG_CC_HAS_STACKPROTECTOR_NONE=y +CONFIG_CC_HAS_WORKING_NOSANITIZE_ADDRESS=y +CONFIG_CC_IS_GCC=y +CONFIG_CC_OPTIMIZE_FOR_PERFORMANCE=y +# CONFIG_CC_OPTIMIZE_FOR_SIZE is not set +CONFIG_CC_VERSION_TEXT="gcc (Ubuntu 9.3.0-17ubuntu1~20.04) 9.3.0" +CONFIG_CDNS_I3C_MASTER=m +CONFIG_CDROM=y +CONFIG_CDROM_PKTCDVD=m +CONFIG_CDROM_PKTCDVD_BUFFERS=8 +# CONFIG_CDROM_PKTCDVD_WCACHE is not set +CONFIG_CEC_CORE=m +CONFIG_CEC_NOTIFIER=y +CONFIG_CEC_SECO=m +CONFIG_CEC_SECO_RC=y +CONFIG_CEPH_FS=m +CONFIG_CEPH_FSCACHE=y +CONFIG_CEPH_FS_POSIX_ACL=y +CONFIG_CEPH_FS_SECURITY_LABEL=y +CONFIG_CEPH_LIB=m +# CONFIG_CEPH_LIB_PRETTYDEBUG is not set +CONFIG_CEPH_LIB_USE_DNS_RESOLVER=y +CONFIG_CFAG12864B=m +CONFIG_CFAG12864B_RATE=20 +CONFIG_CFG80211=m +# CONFIG_CFG80211_CERTIFICATION_ONUS is not set +CONFIG_CFG80211_CRDA_SUPPORT=y +CONFIG_CFG80211_DEBUGFS=y +CONFIG_CFG80211_DEFAULT_PS=y +# CONFIG_CFG80211_DEVELOPER_WARNINGS is not set +CONFIG_CFG80211_REQUIRE_SIGNED_REGDB=y +CONFIG_CFG80211_USE_KERNEL_REGDB_KEYS=y +CONFIG_CFG80211_WEXT=y +CONFIG_CFS_BANDWIDTH=y +CONFIG_CGROUPS=y +CONFIG_CGROUP_BPF=y +CONFIG_CGROUP_CPUACCT=y +# CONFIG_CGROUP_DEBUG is not set +CONFIG_CGROUP_DEVICE=y +CONFIG_CGROUP_FREEZER=y +CONFIG_CGROUP_HUGETLB=y +CONFIG_CGROUP_NET_CLASSID=y +CONFIG_CGROUP_NET_PRIO=y +CONFIG_CGROUP_PERF=y +CONFIG_CGROUP_PIDS=y +CONFIG_CGROUP_RDMA=y +CONFIG_CGROUP_SCHED=y +CONFIG_CGROUP_WRITEBACK=y +CONFIG_CHARGER_ADP5061=m +CONFIG_CHARGER_BD99954=m +# CONFIG_CHARGER_BQ2415X is not set +# CONFIG_CHARGER_BQ24257 is not set +# CONFIG_CHARGER_BQ24735 is not set +# CONFIG_CHARGER_BQ25890 is not set +# CONFIG_CHARGER_GPIO is not set +# CONFIG_CHARGER_LP8727 is not set +CONFIG_CHARGER_LT3651=m +# CONFIG_CHARGER_MANAGER is not set +# CONFIG_CHARGER_MAX14577 is not set +# CONFIG_CHARGER_MAX77693 is not set +# CONFIG_CHARGER_MAX8903 is not set +# CONFIG_CHARGER_PCF50633 is not set +# CONFIG_CHARGER_RT9455 is not set +# CONFIG_CHARGER_SBS is not set +# CONFIG_CHARGER_SMB347 is not set +CONFIG_CHARLCD=m +CONFIG_CHARLCD_BL_FLASH=y +# CONFIG_CHARLCD_BL_OFF is not set +# CONFIG_CHARLCD_BL_ON is not set +CONFIG_CHECKPOINT_RESTORE=y +CONFIG_CHECK_SIGNATURE=y +CONFIG_CHELSIO_IPSEC_INLINE=y +CONFIG_CHELSIO_T1=m +CONFIG_CHELSIO_T1_1G=y +CONFIG_CHELSIO_T3=m +CONFIG_CHELSIO_T4=m +CONFIG_CHELSIO_T4VF=m +CONFIG_CHELSIO_T4_DCB=y +CONFIG_CHELSIO_TLS_DEVICE=y +# CONFIG_CHROME_PLATFORMS is not set +CONFIG_CHR_DEV_SCH=m +CONFIG_CHR_DEV_SG=y +CONFIG_CHR_DEV_ST=m +CONFIG_CHT_DC_TI_PMIC_OPREGION=y +# CONFIG_CICADA_PHY is not set +CONFIG_CIFS=m +CONFIG_CIFS_ALLOW_INSECURE_LEGACY=y +CONFIG_CIFS_DEBUG=y +# CONFIG_CIFS_DEBUG2 is not set +# CONFIG_CIFS_DEBUG_DUMP_KEYS is not set +CONFIG_CIFS_DFS_UPCALL=y +CONFIG_CIFS_FSCACHE=y +CONFIG_CIFS_POSIX=y +# CONFIG_CIFS_SMB_DIRECT is not set +# CONFIG_CIFS_STATS2 is not set +CONFIG_CIFS_UPCALL=y +CONFIG_CIFS_WEAK_PW_HASH=y +CONFIG_CIFS_XATTR=y +CONFIG_CLANG_VERSION=0 +CONFIG_CLEANCACHE=y +CONFIG_CLKBLD_I8253=y +CONFIG_CLKDEV_LOOKUP=y +CONFIG_CLKEVT_I8253=y +CONFIG_CLOCKSOURCE_VALIDATE_LAST_CYCLE=y +CONFIG_CLOCKSOURCE_WATCHDOG=y +# CONFIG_CLOCK_THERMAL is not set +CONFIG_CLS_U32_MARK=y +# CONFIG_CLS_U32_PERF is not set +CONFIG_CLZ_TAB=y +# CONFIG_CMA is not set +# CONFIG_CMDLINE_BOOL is not set +CONFIG_CMDLINE_PARTITION=y +CONFIG_CNIC=m +CONFIG_CODA_FS=m +# CONFIG_COMEDI is not set +CONFIG_COMMON_CLK=y +# CONFIG_COMMON_CLK_CDCE706 is not set +# CONFIG_COMMON_CLK_CS2000_CP is not set +CONFIG_COMMON_CLK_MAX9485=m +CONFIG_COMMON_CLK_SI5341=m +# CONFIG_COMMON_CLK_SI5351 is not set +CONFIG_COMMON_CLK_SI544=m +# CONFIG_COMMON_CLK_WM831X is not set +CONFIG_COMPACTION=y +# CONFIG_COMPAL_LAPTOP is not set +CONFIG_COMPAT=y +CONFIG_COMPAT_32=y +CONFIG_COMPAT_32BIT_TIME=y +CONFIG_COMPAT_BINFMT_ELF=y +# CONFIG_COMPAT_BRK is not set +CONFIG_COMPAT_FOR_U64_ALIGNMENT=y +CONFIG_COMPAT_NETLINK_MESSAGES=y +CONFIG_COMPAT_OLD_SIGACTION=y +# CONFIG_COMPAT_VDSO is not set +# CONFIG_COMPILE_TEST is not set +CONFIG_CONFIGFS_FS=y +CONFIG_CONNECTOR=y +CONFIG_CONSOLE_LOGLEVEL_DEFAULT=7 +CONFIG_CONSOLE_LOGLEVEL_QUIET=4 +CONFIG_CONSOLE_POLL=y +CONFIG_CONSOLE_TRANSLATIONS=y +CONFIG_CONTEXT_SWITCH_TRACER=y +CONFIG_CONTEXT_TRACKING=y +# CONFIG_CONTEXT_TRACKING_FORCE is not set +CONFIG_CONTIG_ALLOC=y +CONFIG_COPS=m +CONFIG_COPS_DAYNA=y +CONFIG_COPS_TANGENT=y +CONFIG_CORDIC=m +CONFIG_COREDUMP=y +CONFIG_CORE_DUMP_DEFAULT_ELF_HEADERS=y +CONFIG_CORTINA_PHY=m +CONFIG_COUNTER=m +# CONFIG_CPA_DEBUG is not set +CONFIG_CPU5_WDT=m +CONFIG_CPUMASK_OFFSTACK=y +CONFIG_CPUSETS=y +CONFIG_CPU_FREQ=y +# CONFIG_CPU_FREQ_DEFAULT_GOV_CONSERVATIVE is not set +# CONFIG_CPU_FREQ_DEFAULT_GOV_ONDEMAND is not set +CONFIG_CPU_FREQ_DEFAULT_GOV_PERFORMANCE=y +# CONFIG_CPU_FREQ_DEFAULT_GOV_POWERSAVE is not set +# CONFIG_CPU_FREQ_DEFAULT_GOV_SCHEDUTIL is not set +# CONFIG_CPU_FREQ_DEFAULT_GOV_USERSPACE is not set +CONFIG_CPU_FREQ_GOV_ATTR_SET=y +CONFIG_CPU_FREQ_GOV_COMMON=y +CONFIG_CPU_FREQ_GOV_CONSERVATIVE=y +CONFIG_CPU_FREQ_GOV_ONDEMAND=y +CONFIG_CPU_FREQ_GOV_PERFORMANCE=y +CONFIG_CPU_FREQ_GOV_POWERSAVE=y +CONFIG_CPU_FREQ_GOV_SCHEDUTIL=y +CONFIG_CPU_FREQ_GOV_USERSPACE=y +CONFIG_CPU_FREQ_STAT=y +# CONFIG_CPU_HOTPLUG_STATE_CONTROL is not set +CONFIG_CPU_IDLE=y +CONFIG_CPU_IDLE_GOV_HALTPOLL=y +CONFIG_CPU_IDLE_GOV_LADDER=y +CONFIG_CPU_IDLE_GOV_MENU=y +CONFIG_CPU_IDLE_GOV_TEO=y +CONFIG_CPU_ISOLATION=y +CONFIG_CPU_RMAP=y +CONFIG_CPU_SUP_AMD=y +CONFIG_CPU_SUP_CENTAUR=y +CONFIG_CPU_SUP_HYGON=y +CONFIG_CPU_SUP_INTEL=y +CONFIG_CPU_SUP_ZHAOXIN=y +CONFIG_CRAMFS=m +CONFIG_CRAMFS_BLOCKDEV=y +CONFIG_CRASH_CORE=y +CONFIG_CRASH_DUMP=y +CONFIG_CRC16=y +CONFIG_CRC32=y +# CONFIG_CRC32_BIT is not set +# CONFIG_CRC32_SARWATE is not set +# CONFIG_CRC32_SELFTEST is not set +# CONFIG_CRC32_SLICEBY4 is not set +CONFIG_CRC32_SLICEBY8=y +CONFIG_CRC4=m +CONFIG_CRC64=m +CONFIG_CRC7=m +CONFIG_CRC8=m +CONFIG_CRC_CCITT=y +CONFIG_CRC_ITU_T=m +CONFIG_CRC_T10DIF=y +CONFIG_CROSS_MEMORY_ATTACH=y +CONFIG_CRYPTO=y +CONFIG_CRYPTO_842=m +CONFIG_CRYPTO_ACOMP2=y +CONFIG_CRYPTO_ADIANTUM=m +CONFIG_CRYPTO_AEAD=y +CONFIG_CRYPTO_AEAD2=y +CONFIG_CRYPTO_AEGIS128=m +CONFIG_CRYPTO_AEGIS128_AESNI_SSE2=m +CONFIG_CRYPTO_AES=y +CONFIG_CRYPTO_AES_NI_INTEL=m +# CONFIG_CRYPTO_AES_TI is not set +CONFIG_CRYPTO_AKCIPHER=y +CONFIG_CRYPTO_AKCIPHER2=y +CONFIG_CRYPTO_ALGAPI=y +CONFIG_CRYPTO_ALGAPI2=y +CONFIG_CRYPTO_ANSI_CPRNG=m +CONFIG_CRYPTO_ANUBIS=m +CONFIG_CRYPTO_ARC4=m +CONFIG_CRYPTO_ARCH_HAVE_LIB_BLAKE2S=m +CONFIG_CRYPTO_ARCH_HAVE_LIB_CHACHA=m +CONFIG_CRYPTO_ARCH_HAVE_LIB_CURVE25519=m +CONFIG_CRYPTO_ARCH_HAVE_LIB_POLY1305=m +CONFIG_CRYPTO_AUTHENC=m +CONFIG_CRYPTO_BLAKE2B=m +CONFIG_CRYPTO_BLAKE2S=m +CONFIG_CRYPTO_BLAKE2S_X86=m +CONFIG_CRYPTO_BLOWFISH=m +CONFIG_CRYPTO_BLOWFISH_COMMON=m +CONFIG_CRYPTO_BLOWFISH_X86_64=m +CONFIG_CRYPTO_CAMELLIA=m +CONFIG_CRYPTO_CAMELLIA_AESNI_AVX2_X86_64=m +CONFIG_CRYPTO_CAMELLIA_AESNI_AVX_X86_64=m +CONFIG_CRYPTO_CAMELLIA_X86_64=m +CONFIG_CRYPTO_CAST5=m +CONFIG_CRYPTO_CAST5_AVX_X86_64=m +CONFIG_CRYPTO_CAST6=m +CONFIG_CRYPTO_CAST6_AVX_X86_64=m +CONFIG_CRYPTO_CAST_COMMON=m +CONFIG_CRYPTO_CBC=y +CONFIG_CRYPTO_CCM=m +CONFIG_CRYPTO_CFB=m +CONFIG_CRYPTO_CHACHA20=m +CONFIG_CRYPTO_CHACHA20POLY1305=m +CONFIG_CRYPTO_CHACHA20_X86_64=m +CONFIG_CRYPTO_CMAC=m +CONFIG_CRYPTO_CRC32=m +CONFIG_CRYPTO_CRC32C=y +CONFIG_CRYPTO_CRC32C_INTEL=y +CONFIG_CRYPTO_CRC32_PCLMUL=m +CONFIG_CRYPTO_CRCT10DIF=y +CONFIG_CRYPTO_CRCT10DIF_PCLMUL=m +CONFIG_CRYPTO_CRYPTD=m +CONFIG_CRYPTO_CTR=y +CONFIG_CRYPTO_CTS=y +CONFIG_CRYPTO_CURVE25519=m +CONFIG_CRYPTO_CURVE25519_X86=m +CONFIG_CRYPTO_DEFLATE=y +CONFIG_CRYPTO_DES=m +CONFIG_CRYPTO_DES3_EDE_X86_64=m +CONFIG_CRYPTO_DEV_AMLOGIC_GXL=m +# CONFIG_CRYPTO_DEV_AMLOGIC_GXL_DEBUG is not set +CONFIG_CRYPTO_DEV_ATMEL_ECC=m +CONFIG_CRYPTO_DEV_ATMEL_I2C=m +CONFIG_CRYPTO_DEV_ATMEL_SHA204A=m +CONFIG_CRYPTO_DEV_CCP=y +CONFIG_CRYPTO_DEV_CCP_CRYPTO=m +CONFIG_CRYPTO_DEV_CCP_DD=m +# CONFIG_CRYPTO_DEV_CCP_DEBUGFS is not set +CONFIG_CRYPTO_DEV_CHELSIO=m +CONFIG_CRYPTO_DEV_NITROX=m +CONFIG_CRYPTO_DEV_NITROX_CNN55XX=m +CONFIG_CRYPTO_DEV_PADLOCK=y +CONFIG_CRYPTO_DEV_PADLOCK_AES=m +CONFIG_CRYPTO_DEV_PADLOCK_SHA=m +CONFIG_CRYPTO_DEV_QAT=m +# CONFIG_CRYPTO_DEV_QAT_C3XXX is not set +# CONFIG_CRYPTO_DEV_QAT_C3XXXVF is not set +# CONFIG_CRYPTO_DEV_QAT_C62X is not set +# CONFIG_CRYPTO_DEV_QAT_C62XVF is not set +CONFIG_CRYPTO_DEV_QAT_DH895xCC=m +CONFIG_CRYPTO_DEV_QAT_DH895xCCVF=m +CONFIG_CRYPTO_DEV_SAFEXCEL=m +CONFIG_CRYPTO_DEV_SP_CCP=y +CONFIG_CRYPTO_DEV_SP_PSP=y +CONFIG_CRYPTO_DEV_VIRTIO=m +CONFIG_CRYPTO_DH=y +CONFIG_CRYPTO_DRBG=y +CONFIG_CRYPTO_DRBG_CTR=y +CONFIG_CRYPTO_DRBG_HASH=y +CONFIG_CRYPTO_DRBG_HMAC=y +CONFIG_CRYPTO_DRBG_MENU=y +CONFIG_CRYPTO_ECB=y +CONFIG_CRYPTO_ECC=m +CONFIG_CRYPTO_ECDH=m +CONFIG_CRYPTO_ECHAINIV=m +CONFIG_CRYPTO_ECRDSA=m +CONFIG_CRYPTO_ENGINE=m +CONFIG_CRYPTO_ESSIV=m +CONFIG_CRYPTO_FCRYPT=m +CONFIG_CRYPTO_GCM=y +CONFIG_CRYPTO_GF128MUL=y +CONFIG_CRYPTO_GHASH=y +CONFIG_CRYPTO_GHASH_CLMUL_NI_INTEL=m +CONFIG_CRYPTO_GLUE_HELPER_X86=m +CONFIG_CRYPTO_HASH=y +CONFIG_CRYPTO_HASH2=y +CONFIG_CRYPTO_HASH_INFO=y +CONFIG_CRYPTO_HMAC=y +CONFIG_CRYPTO_HW=y +CONFIG_CRYPTO_JITTERENTROPY=y +CONFIG_CRYPTO_KEYWRAP=m +CONFIG_CRYPTO_KHAZAD=m +CONFIG_CRYPTO_KPP=y +CONFIG_CRYPTO_KPP2=y +CONFIG_CRYPTO_LIB_AES=y +CONFIG_CRYPTO_LIB_ARC4=m +CONFIG_CRYPTO_LIB_BLAKE2S=m +CONFIG_CRYPTO_LIB_BLAKE2S_GENERIC=m +CONFIG_CRYPTO_LIB_CHACHA=m +CONFIG_CRYPTO_LIB_CHACHA20POLY1305=m +CONFIG_CRYPTO_LIB_CHACHA_GENERIC=m +CONFIG_CRYPTO_LIB_CURVE25519=m +CONFIG_CRYPTO_LIB_CURVE25519_GENERIC=m +CONFIG_CRYPTO_LIB_DES=m +CONFIG_CRYPTO_LIB_POLY1305=m +CONFIG_CRYPTO_LIB_POLY1305_GENERIC=m +CONFIG_CRYPTO_LIB_POLY1305_RSIZE=11 +CONFIG_CRYPTO_LIB_SHA256=y +CONFIG_CRYPTO_LRW=m +CONFIG_CRYPTO_LZ4=m +CONFIG_CRYPTO_LZ4HC=m +CONFIG_CRYPTO_LZO=y +CONFIG_CRYPTO_MANAGER=y +CONFIG_CRYPTO_MANAGER2=y +CONFIG_CRYPTO_MANAGER_DISABLE_TESTS=y +CONFIG_CRYPTO_MD4=m +CONFIG_CRYPTO_MD5=y +CONFIG_CRYPTO_MICHAEL_MIC=m +CONFIG_CRYPTO_NHPOLY1305=m +CONFIG_CRYPTO_NHPOLY1305_AVX2=m +CONFIG_CRYPTO_NHPOLY1305_SSE2=m +CONFIG_CRYPTO_NULL=y +CONFIG_CRYPTO_NULL2=y +CONFIG_CRYPTO_OFB=m +CONFIG_CRYPTO_PCBC=m +CONFIG_CRYPTO_PCRYPT=m +CONFIG_CRYPTO_POLY1305=m +CONFIG_CRYPTO_POLY1305_X86_64=m +CONFIG_CRYPTO_RMD128=m +CONFIG_CRYPTO_RMD160=m +CONFIG_CRYPTO_RMD256=m +CONFIG_CRYPTO_RMD320=m +CONFIG_CRYPTO_RNG=y +CONFIG_CRYPTO_RNG2=y +CONFIG_CRYPTO_RNG_DEFAULT=y +CONFIG_CRYPTO_RSA=y +CONFIG_CRYPTO_SALSA20=m +CONFIG_CRYPTO_SEED=m +CONFIG_CRYPTO_SEQIV=y +CONFIG_CRYPTO_SERPENT=m +CONFIG_CRYPTO_SERPENT_AVX2_X86_64=m +CONFIG_CRYPTO_SERPENT_AVX_X86_64=m +CONFIG_CRYPTO_SERPENT_SSE2_X86_64=m +CONFIG_CRYPTO_SHA1=y +CONFIG_CRYPTO_SHA1_SSSE3=m +CONFIG_CRYPTO_SHA256=y +CONFIG_CRYPTO_SHA256_SSSE3=m +CONFIG_CRYPTO_SHA3=m +CONFIG_CRYPTO_SHA512=y +CONFIG_CRYPTO_SHA512_SSSE3=m +CONFIG_CRYPTO_SIMD=m +CONFIG_CRYPTO_SKCIPHER=y +CONFIG_CRYPTO_SKCIPHER2=y +CONFIG_CRYPTO_SM3=m +CONFIG_CRYPTO_SM4=m +CONFIG_CRYPTO_STATS=y +CONFIG_CRYPTO_STREEBOG=m +CONFIG_CRYPTO_TEA=m +CONFIG_CRYPTO_TEST=m +CONFIG_CRYPTO_TGR192=m +CONFIG_CRYPTO_TWOFISH=m +CONFIG_CRYPTO_TWOFISH_AVX_X86_64=m +CONFIG_CRYPTO_TWOFISH_COMMON=m +CONFIG_CRYPTO_TWOFISH_X86_64=m +CONFIG_CRYPTO_TWOFISH_X86_64_3WAY=m +CONFIG_CRYPTO_USER=m +CONFIG_CRYPTO_USER_API=m +CONFIG_CRYPTO_USER_API_AEAD=m +CONFIG_CRYPTO_USER_API_HASH=m +CONFIG_CRYPTO_USER_API_RNG=m +CONFIG_CRYPTO_USER_API_SKCIPHER=m +CONFIG_CRYPTO_VMAC=m +CONFIG_CRYPTO_WP512=m +CONFIG_CRYPTO_XCBC=m +CONFIG_CRYPTO_XTS=y +CONFIG_CRYPTO_XXHASH=m +CONFIG_CRYPTO_ZSTD=m +CONFIG_CS89x0=m +CONFIG_CS89x0_PLATFORM=y +CONFIG_CUSE=m +CONFIG_CX_ECAT=m +CONFIG_CYCLADES=m +# CONFIG_CYZ_INTR is not set +CONFIG_DA9052_WATCHDOG=m +CONFIG_DA9063_WATCHDOG=m +# CONFIG_DAVICOM_PHY is not set +CONFIG_DAX=y +CONFIG_DAX_DRIVER=y +CONFIG_DCA=m +CONFIG_DCACHE_WORD_ACCESS=y +CONFIG_DCB=y +# CONFIG_DCDBAS is not set +# CONFIG_DEBUG_ATOMIC_SLEEP is not set +# CONFIG_DEBUG_BLOCK_EXT_DEVT is not set +# CONFIG_DEBUG_BOOT_PARAMS is not set +CONFIG_DEBUG_BUGVERBOSE=y +# CONFIG_DEBUG_CREDENTIALS is not set +# CONFIG_DEBUG_DEVRES is not set +# CONFIG_DEBUG_DRIVER is not set +# CONFIG_DEBUG_ENTRY is not set +# CONFIG_DEBUG_FORCE_WEAK_PER_CPU is not set +CONFIG_DEBUG_FS=y +# CONFIG_DEBUG_GPIO is not set +# CONFIG_DEBUG_HOTPLUG_CPU0 is not set +CONFIG_DEBUG_INFO=y +# CONFIG_DEBUG_INFO_BTF is not set +# CONFIG_DEBUG_INFO_COMPRESSED is not set +CONFIG_DEBUG_INFO_DWARF4=y +# CONFIG_DEBUG_INFO_REDUCED is not set +# CONFIG_DEBUG_INFO_SPLIT is not set +CONFIG_DEBUG_KERNEL=y +# CONFIG_DEBUG_KERNEL_DC is not set +# CONFIG_DEBUG_KMEMLEAK is not set +# CONFIG_DEBUG_KOBJECT is not set +# CONFIG_DEBUG_LIST is not set +# CONFIG_DEBUG_LOCKING_API_SELFTESTS is not set +# CONFIG_DEBUG_LOCK_ALLOC is not set +# CONFIG_DEBUG_MEMORY_INIT is not set +CONFIG_DEBUG_MISC=y +# CONFIG_DEBUG_MUTEXES is not set +# CONFIG_DEBUG_NMI_SELFTEST is not set +# CONFIG_DEBUG_NOTIFIERS is not set +# CONFIG_DEBUG_OBJECTS is not set +# CONFIG_DEBUG_PAGEALLOC is not set +# CONFIG_DEBUG_PAGE_REF is not set +# CONFIG_DEBUG_PERF_USE_VMALLOC is not set +# CONFIG_DEBUG_PER_CPU_MAPS is not set +# CONFIG_DEBUG_PINCTRL is not set +# CONFIG_DEBUG_PLIST is not set +# CONFIG_DEBUG_RODATA_TEST is not set +# CONFIG_DEBUG_RSEQ is not set +# CONFIG_DEBUG_RT_MUTEXES is not set +# CONFIG_DEBUG_RWSEMS is not set +# CONFIG_DEBUG_SECTION_MISMATCH is not set +# CONFIG_DEBUG_SG is not set +# CONFIG_DEBUG_SHIRQ is not set +# CONFIG_DEBUG_SPINLOCK is not set +# CONFIG_DEBUG_STACK_USAGE is not set +# CONFIG_DEBUG_TEST_DRIVER_REMOVE is not set +# CONFIG_DEBUG_TIMEKEEPING is not set +# CONFIG_DEBUG_TLBFLUSH is not set +# CONFIG_DEBUG_VIRTUAL is not set +# CONFIG_DEBUG_VM is not set +# CONFIG_DEBUG_VM_PGTABLE is not set +# CONFIG_DEBUG_WQ_FORCE_RR_CPU is not set +# CONFIG_DEBUG_WW_MUTEX_SLOWPATH is not set +CONFIG_DEBUG_WX=y +CONFIG_DECNET=m +CONFIG_DECNET_NF_GRABULATOR=m +# CONFIG_DECNET_ROUTER is not set +CONFIG_DECOMPRESS_BZIP2=y +CONFIG_DECOMPRESS_GZIP=y +CONFIG_DECOMPRESS_LZ4=y +CONFIG_DECOMPRESS_LZMA=y +CONFIG_DECOMPRESS_LZO=y +CONFIG_DECOMPRESS_XZ=y +CONFIG_DEFAULT_CUBIC=y +CONFIG_DEFAULT_HOSTNAME="(none)" +CONFIG_DEFAULT_HUNG_TASK_TIMEOUT=120 +CONFIG_DEFAULT_INIT="" +CONFIG_DEFAULT_MMAP_MIN_ADDR=65536 +# CONFIG_DEFAULT_RENO is not set +CONFIG_DEFAULT_SECURITY_APPARMOR=y +# CONFIG_DEFAULT_SECURITY_DAC is not set +# CONFIG_DEFAULT_SECURITY_SELINUX is not set +# CONFIG_DEFAULT_SECURITY_SMACK is not set +# CONFIG_DEFAULT_SECURITY_TOMOYO is not set +CONFIG_DEFAULT_TCP_CONG="cubic" +# CONFIG_DEFERRED_STRUCT_PAGE_INIT is not set +CONFIG_DEFXX=m +# CONFIG_DEFXX_MMIO is not set +# CONFIG_DELL_LAPTOP is not set +# CONFIG_DELL_RBTN is not set +# CONFIG_DELL_RBU is not set +CONFIG_DELL_SMBIOS=m +CONFIG_DELL_SMBIOS_WMI=y +# CONFIG_DELL_SMO8800 is not set +# CONFIG_DELL_UART_BACKLIGHT is not set +# CONFIG_DELL_WMI is not set +# CONFIG_DELL_WMI_AIO is not set +CONFIG_DELL_WMI_DESCRIPTOR=m +CONFIG_DELL_WMI_LED=m +CONFIG_DETECT_HUNG_TASK=y +CONFIG_DEVFREQ_GOV_PASSIVE=y +CONFIG_DEVFREQ_GOV_PERFORMANCE=y +CONFIG_DEVFREQ_GOV_POWERSAVE=y +CONFIG_DEVFREQ_GOV_SIMPLE_ONDEMAND=y +CONFIG_DEVFREQ_GOV_USERSPACE=y +CONFIG_DEVFREQ_THERMAL=y +CONFIG_DEVICE_PRIVATE=y +# CONFIG_DEVKMEM is not set +CONFIG_DEVMEM=y +CONFIG_DEVPORT=y +CONFIG_DEVTMPFS=y +CONFIG_DEVTMPFS_MOUNT=y +CONFIG_DEV_APPLETALK=m +CONFIG_DEV_DAX=y +CONFIG_DEV_DAX_HMEM=m +CONFIG_DEV_DAX_KMEM=m +CONFIG_DEV_DAX_PMEM=y +CONFIG_DEV_PAGEMAP_OPS=y +CONFIG_DIMLIB=y +CONFIG_DL2K=m +CONFIG_DLCI=m +CONFIG_DLCI_MAX=8 +CONFIG_DLM=m +# CONFIG_DLM_DEBUG is not set +CONFIG_DMABUF_HEAPS=y +CONFIG_DMABUF_HEAPS_SYSTEM=y +# CONFIG_DMABUF_MOVE_NOTIFY is not set +# CONFIG_DMABUF_SELFTESTS is not set +CONFIG_DMADEVICES=y +# CONFIG_DMADEVICES_DEBUG is not set +CONFIG_DMAR_TABLE=y +# CONFIG_DMATEST is not set +CONFIG_DMA_ACPI=y +# CONFIG_DMA_API_DEBUG is not set +CONFIG_DMA_COHERENT_POOL=y +CONFIG_DMA_ENGINE=y +CONFIG_DMA_ENGINE_RAID=y +# CONFIG_DMA_FENCE_TRACE is not set +CONFIG_DMA_SHARED_BUFFER=y +CONFIG_DMA_VIRTUAL_CHANNELS=m +CONFIG_DMA_VIRT_OPS=y +CONFIG_DMI=y +CONFIG_DMIID=y +CONFIG_DMI_SCAN_MACHINE_NON_EFI_FALLBACK=y +# CONFIG_DMI_SYSFS is not set +CONFIG_DM_BIO_PRISON=m +CONFIG_DM_BUFIO=m +CONFIG_DM_CACHE=m +CONFIG_DM_CACHE_SMQ=m +CONFIG_DM_CLONE=m +CONFIG_DM_CRYPT=m +# CONFIG_DM_DEBUG is not set +# CONFIG_DM_DEBUG_BLOCK_MANAGER_LOCKING is not set +CONFIG_DM_DELAY=m +# CONFIG_DM_DUST is not set +CONFIG_DM_EBS=m +CONFIG_DM_ERA=m +CONFIG_DM_FLAKEY=m +CONFIG_DM_INIT=y +CONFIG_DM_INTEGRITY=m +CONFIG_DM_LOG_USERSPACE=m +CONFIG_DM_LOG_WRITES=m +CONFIG_DM_MIRROR=m +CONFIG_DM_MULTIPATH=m +CONFIG_DM_MULTIPATH_HST=m +CONFIG_DM_MULTIPATH_QL=m +CONFIG_DM_MULTIPATH_ST=m +CONFIG_DM_PERSISTENT_DATA=m +CONFIG_DM_RAID=m +CONFIG_DM_SNAPSHOT=m +CONFIG_DM_SWITCH=m +CONFIG_DM_THIN_PROVISIONING=m +CONFIG_DM_UEVENT=y +CONFIG_DM_UNSTRIPED=m +CONFIG_DM_VERITY=m +# CONFIG_DM_VERITY_FEC is not set +CONFIG_DM_VERITY_VERIFY_ROOTHASH_SIG=y +CONFIG_DM_WRITECACHE=m +CONFIG_DM_ZERO=m +CONFIG_DM_ZONED=m +CONFIG_DNET=m +CONFIG_DNOTIFY=y +CONFIG_DNS_RESOLVER=y +CONFIG_DP83822_PHY=m +# CONFIG_DP83848_PHY is not set +# CONFIG_DP83867_PHY is not set +CONFIG_DP83869_PHY=m +CONFIG_DP83TC811_PHY=m +# CONFIG_DPM_WATCHDOG is not set +CONFIG_DPTF_POWER=m +CONFIG_DQL=y +# CONFIG_DRBD_FAULT_INJECTION is not set +CONFIG_DRM=m +CONFIG_DRM_AMDGPU=m +CONFIG_DRM_AMDGPU_CIK=y +# CONFIG_DRM_AMDGPU_GART_DEBUGFS is not set +CONFIG_DRM_AMDGPU_SI=y +CONFIG_DRM_AMDGPU_USERPTR=y +CONFIG_DRM_AMD_ACP=y +CONFIG_DRM_AMD_DC=y +CONFIG_DRM_AMD_DC_DCN=y +CONFIG_DRM_AMD_DC_HDCP=y +# CONFIG_DRM_ANALOGIX_ANX78XX is not set +CONFIG_DRM_AST=m +# CONFIG_DRM_BOCHS is not set +CONFIG_DRM_BRIDGE=y +# CONFIG_DRM_CIRRUS_QEMU is not set +# CONFIG_DRM_DEBUG_DP_MST_TOPOLOGY_REFS is not set +# CONFIG_DRM_DEBUG_SELFTEST is not set +CONFIG_DRM_DP_AUX_CHARDEV=y +CONFIG_DRM_DP_CEC=y +# CONFIG_DRM_ETNAVIV is not set +CONFIG_DRM_FBDEV_EMULATION=y +# CONFIG_DRM_FBDEV_LEAK_PHYS_SMEM is not set +CONFIG_DRM_FBDEV_OVERALLOC=100 +CONFIG_DRM_GEM_CMA_HELPER=y +CONFIG_DRM_GEM_SHMEM_HELPER=y +# CONFIG_DRM_GM12U320 is not set +CONFIG_DRM_GMA3600=y +CONFIG_DRM_GMA500=m +CONFIG_DRM_GMA600=y +# CONFIG_DRM_I2C_CH7006 is not set +CONFIG_DRM_I2C_NXP_TDA9950=m +# CONFIG_DRM_I2C_NXP_TDA998X is not set +# CONFIG_DRM_I2C_SIL164 is not set +CONFIG_DRM_I915=m +CONFIG_DRM_I915_CAPTURE_ERROR=y +CONFIG_DRM_I915_COMPRESS_ERROR=y +# CONFIG_DRM_I915_DEBUG is not set +# CONFIG_DRM_I915_DEBUG_GUC is not set +# CONFIG_DRM_I915_DEBUG_MMIO is not set +# CONFIG_DRM_I915_DEBUG_RUNTIME_PM is not set +# CONFIG_DRM_I915_DEBUG_VBLANK_EVADE is not set +CONFIG_DRM_I915_FENCE_TIMEOUT=10000 +CONFIG_DRM_I915_FORCE_PROBE="" +CONFIG_DRM_I915_GVT=y +# CONFIG_DRM_I915_GVT_KVMGT is not set +CONFIG_DRM_I915_HEARTBEAT_INTERVAL=2500 +# CONFIG_DRM_I915_LOW_LEVEL_TRACEPOINTS is not set +CONFIG_DRM_I915_MAX_REQUEST_BUSYWAIT=8000 +CONFIG_DRM_I915_PREEMPT_TIMEOUT=640 +# CONFIG_DRM_I915_SELFTEST is not set +CONFIG_DRM_I915_STOP_TIMEOUT=100 +# CONFIG_DRM_I915_SW_FENCE_CHECK_DAG is not set +# CONFIG_DRM_I915_SW_FENCE_DEBUG_OBJECTS is not set +CONFIG_DRM_I915_TIMESLICE_DURATION=1 +CONFIG_DRM_I915_USERFAULT_AUTOSUSPEND=250 +CONFIG_DRM_I915_USERPTR=y +# CONFIG_DRM_I915_WERROR is not set +CONFIG_DRM_KMS_CMA_HELPER=y +CONFIG_DRM_KMS_FB_HELPER=y +CONFIG_DRM_KMS_HELPER=m +# CONFIG_DRM_LEGACY is not set +CONFIG_DRM_LOAD_EDID_FIRMWARE=y +# CONFIG_DRM_MGAG200 is not set +CONFIG_DRM_MIPI_DBI=m +CONFIG_DRM_MIPI_DSI=y +# CONFIG_DRM_NOUVEAU is not set +CONFIG_DRM_PANEL=y +CONFIG_DRM_PANEL_BRIDGE=y +CONFIG_DRM_PANEL_ORIENTATION_QUIRKS=m +CONFIG_DRM_PANEL_RASPBERRYPI_TOUCHSCREEN=m +CONFIG_DRM_QXL=m +CONFIG_DRM_RADEON=m +# CONFIG_DRM_RADEON_USERPTR is not set +CONFIG_DRM_SCHED=m +CONFIG_DRM_TTM=m +CONFIG_DRM_TTM_DMA_PAGE_POOL=y +CONFIG_DRM_TTM_HELPER=m +# CONFIG_DRM_UDL is not set +CONFIG_DRM_VBOXVIDEO=m +# CONFIG_DRM_VGEM is not set +CONFIG_DRM_VIRTIO_GPU=m +CONFIG_DRM_VKMS=m +# CONFIG_DRM_VMWGFX is not set +CONFIG_DRM_VRAM_HELPER=m +CONFIG_DS1682=m +CONFIG_DST_CACHE=y +CONFIG_DUMMY=m +CONFIG_DUMMY_CONSOLE=y +CONFIG_DUMMY_CONSOLE_COLUMNS=80 +CONFIG_DUMMY_CONSOLE_ROWS=25 +CONFIG_DUMMY_IRQ=m +CONFIG_DWC_XLGMAC=m +CONFIG_DWC_XLGMAC_PCI=m +# CONFIG_DW_DMAC is not set +CONFIG_DW_DMAC_CORE=m +CONFIG_DW_DMAC_PCI=m +CONFIG_DW_EDMA=m +CONFIG_DW_EDMA_PCIE=m +CONFIG_DW_I3C_MASTER=m +CONFIG_DW_WATCHDOG=m +CONFIG_DYNAMIC_DEBUG=y +CONFIG_DYNAMIC_DEBUG_CORE=y +CONFIG_DYNAMIC_EVENTS=y +CONFIG_DYNAMIC_FTRACE=y +CONFIG_DYNAMIC_FTRACE_WITH_DIRECT_CALLS=y +CONFIG_DYNAMIC_FTRACE_WITH_REGS=y +CONFIG_DYNAMIC_MEMORY_LAYOUT=y +CONFIG_DYNAMIC_PHYSICAL_MASK=y +CONFIG_E100=m +CONFIG_E1000=m +CONFIG_E1000E=m +CONFIG_E1000E_HWTS=y +CONFIG_EARLY_PRINTK=y +CONFIG_EARLY_PRINTK_DBGP=y +CONFIG_EARLY_PRINTK_USB=y +# CONFIG_EARLY_PRINTK_USB_XDBC is not set +CONFIG_EBC_C384_WDT=m +# CONFIG_ECHO is not set +CONFIG_ECRYPT_FS=y +CONFIG_ECRYPT_FS_MESSAGING=y +CONFIG_EDAC=y +CONFIG_EDAC_AMD64=m +# CONFIG_EDAC_AMD64_ERROR_INJECTION is not set +CONFIG_EDAC_ATOMIC_SCRUB=y +# CONFIG_EDAC_DEBUG is not set +CONFIG_EDAC_DECODE_MCE=y +CONFIG_EDAC_E752X=m +CONFIG_EDAC_I10NM=m +CONFIG_EDAC_I3000=m +CONFIG_EDAC_I3200=m +CONFIG_EDAC_I5000=m +CONFIG_EDAC_I5100=m +CONFIG_EDAC_I5400=m +CONFIG_EDAC_I7300=m +CONFIG_EDAC_I7CORE=m +CONFIG_EDAC_I82975X=m +CONFIG_EDAC_IE31200=m +# CONFIG_EDAC_LEGACY_SYSFS is not set +CONFIG_EDAC_PND2=m +CONFIG_EDAC_SBRIDGE=m +CONFIG_EDAC_SKX=m +CONFIG_EDAC_SUPPORT=y +CONFIG_EDAC_X38=m +CONFIG_EDD=y +CONFIG_EDD_OFF=y +# CONFIG_EEEPC_LAPTOP is not set +CONFIG_EEPROM_93CX6=m +# CONFIG_EEPROM_93XX46 is not set +CONFIG_EEPROM_AT24=m +# CONFIG_EEPROM_AT25 is not set +CONFIG_EEPROM_EE1004=m +# CONFIG_EEPROM_IDT_89HPESX is not set +# CONFIG_EEPROM_LEGACY is not set +# CONFIG_EEPROM_MAX6875 is not set +CONFIG_EFI=y +CONFIG_EFIVAR_FS=y +CONFIG_EFI_BOOTLOADER_CONTROL=m +CONFIG_EFI_CAPSULE_LOADER=m +CONFIG_EFI_CUSTOM_SSDT_OVERLAYS=y +CONFIG_EFI_DEV_PATH_PARSER=y +# CONFIG_EFI_DISABLE_PCI_DMA is not set +CONFIG_EFI_EARLYCON=y +CONFIG_EFI_ESRT=y +# CONFIG_EFI_FAKE_MEMMAP is not set +CONFIG_EFI_GENERIC_STUB_INITRD_CMDLINE_LOADER=y +CONFIG_EFI_MIXED=y +CONFIG_EFI_PARTITION=y +# CONFIG_EFI_PGT_DUMP is not set +CONFIG_EFI_RCI2_TABLE=y +CONFIG_EFI_RUNTIME_MAP=y +CONFIG_EFI_RUNTIME_WRAPPERS=y +CONFIG_EFI_SOFT_RESERVE=y +CONFIG_EFI_STUB=y +CONFIG_EFI_TEST=m +CONFIG_EFI_VARS=y +CONFIG_EFI_VARS_PSTORE=m +# CONFIG_EFI_VARS_PSTORE_DEFAULT_DISABLE is not set +CONFIG_EFS_FS=m +CONFIG_EISA=y +CONFIG_EISA_NAMES=y +CONFIG_EISA_PCI_EISA=y +CONFIG_EISA_VIRTUAL_ROOT=y +CONFIG_EISA_VLB_PRIMING=y +CONFIG_ELFCORE=y +CONFIG_ELF_CORE=y +# CONFIG_EMBEDDED is not set +# CONFIG_ENABLE_MUST_CHECK is not set +# CONFIG_ENC28J60 is not set +CONFIG_ENCLOSURE_SERVICES=m +CONFIG_ENCRYPTED_KEYS=y +# CONFIG_ENCX24J600 is not set +CONFIG_ENERGY_MODEL=y +CONFIG_ENIC=m +CONFIG_EPOLL=y +CONFIG_EQUALIZER=m +CONFIG_EROFS_FS=m +# CONFIG_EROFS_FS_DEBUG is not set +CONFIG_EROFS_FS_POSIX_ACL=y +CONFIG_EROFS_FS_SECURITY=y +CONFIG_EROFS_FS_XATTR=y +# CONFIG_EROFS_FS_ZIP is not set +CONFIG_ET131X=m +CONFIG_ETHERNET=y +CONFIG_ETHOC=m +CONFIG_ETHTOOL_NETLINK=y +CONFIG_EUROTECH_WDT=m +CONFIG_EVENTFD=y +CONFIG_EVENT_TRACING=y +CONFIG_EVM=y +CONFIG_EVM_ADD_XATTRS=y +CONFIG_EVM_ATTR_FSUUID=y +CONFIG_EVM_EXTRA_SMACK_XATTRS=y +# CONFIG_EVM_LOAD_X509 is not set +CONFIG_EXFAT_DEFAULT_IOCHARSET="utf8" +CONFIG_EXFAT_FS=m +CONFIG_EXPERT=y +CONFIG_EXPORTFS=y +CONFIG_EXPORTFS_BLOCK_OPS=y +# CONFIG_EXT2_FS is not set +# CONFIG_EXT3_FS is not set +# CONFIG_EXT4_DEBUG is not set +CONFIG_EXT4_FS=y +CONFIG_EXT4_FS_POSIX_ACL=y +CONFIG_EXT4_FS_SECURITY=y +CONFIG_EXT4_USE_FOR_EXT2=y +# CONFIG_EXTCON is not set +CONFIG_EXTRA_FIRMWARE="" +CONFIG_EZX_PCAP=y +# CONFIG_F2FS_CHECK_FS is not set +# CONFIG_F2FS_FAULT_INJECTION is not set +CONFIG_F2FS_FS=m +CONFIG_F2FS_FS_COMPRESSION=y +CONFIG_F2FS_FS_LZ4=y +CONFIG_F2FS_FS_LZO=y +CONFIG_F2FS_FS_LZORLE=y +CONFIG_F2FS_FS_POSIX_ACL=y +CONFIG_F2FS_FS_SECURITY=y +CONFIG_F2FS_FS_XATTR=y +CONFIG_F2FS_FS_ZSTD=y +# CONFIG_F2FS_IO_TRACE is not set +CONFIG_F2FS_STAT_FS=y +CONFIG_F71808E_WDT=m +CONFIG_FAILOVER=m +CONFIG_FAIR_GROUP_SCHED=y +CONFIG_FANOTIFY=y +CONFIG_FANOTIFY_ACCESS_PERMISSIONS=y +CONFIG_FARSYNC=m +CONFIG_FAT_DEFAULT_CODEPAGE=437 +CONFIG_FAT_DEFAULT_IOCHARSET="iso8859-1" +# CONFIG_FAT_DEFAULT_UTF8 is not set +CONFIG_FAT_FS=y +# CONFIG_FAULT_INJECTION is not set +CONFIG_FB=y +# CONFIG_FB_3DFX is not set +# CONFIG_FB_ARC is not set +# CONFIG_FB_ARK is not set +# CONFIG_FB_ASILIANT is not set +# CONFIG_FB_ATY is not set +# CONFIG_FB_ATY128 is not set +CONFIG_FB_BACKLIGHT=m +# CONFIG_FB_CARMINE is not set +CONFIG_FB_CFB_COPYAREA=m +CONFIG_FB_CFB_FILLRECT=m +CONFIG_FB_CFB_IMAGEBLIT=m +# CONFIG_FB_CIRRUS is not set +CONFIG_FB_CMDLINE=y +# CONFIG_FB_CYBER2000 is not set +CONFIG_FB_DDC=m +CONFIG_FB_DEFERRED_IO=y +# CONFIG_FB_EFI is not set +# CONFIG_FB_FOREIGN_ENDIAN is not set +# CONFIG_FB_HGA is not set +CONFIG_FB_HYPERV=m +# CONFIG_FB_I740 is not set +# CONFIG_FB_IBM_GXT4500 is not set +# CONFIG_FB_IMSTT is not set +CONFIG_FB_INTEL=m +# CONFIG_FB_INTEL_DEBUG is not set +CONFIG_FB_INTEL_I2C=y +# CONFIG_FB_KYRO is not set +# CONFIG_FB_LE80578 is not set +# CONFIG_FB_MATROX is not set +# CONFIG_FB_MB862XX is not set +# CONFIG_FB_METRONOME is not set +CONFIG_FB_MODE_HELPERS=y +# CONFIG_FB_N411 is not set +# CONFIG_FB_NEOMAGIC is not set +CONFIG_FB_NOTIFY=y +# CONFIG_FB_NVIDIA is not set +# CONFIG_FB_OPENCORES is not set +# CONFIG_FB_PM2 is not set +# CONFIG_FB_PM3 is not set +# CONFIG_FB_RADEON is not set +# CONFIG_FB_RIVA is not set +# CONFIG_FB_S1D13XXX is not set +# CONFIG_FB_S3 is not set +# CONFIG_FB_SAVAGE is not set +# CONFIG_FB_SIMPLE is not set +# CONFIG_FB_SIS is not set +CONFIG_FB_SM501=m +# CONFIG_FB_SM712 is not set +CONFIG_FB_SM750=m +# CONFIG_FB_SMSCUFX is not set +CONFIG_FB_SYS_COPYAREA=m +CONFIG_FB_SYS_FILLRECT=m +CONFIG_FB_SYS_FOPS=m +CONFIG_FB_SYS_IMAGEBLIT=m +CONFIG_FB_TFT=m +CONFIG_FB_TFT_AGM1264K_FL=m +CONFIG_FB_TFT_BD663474=m +CONFIG_FB_TFT_HX8340BN=m +CONFIG_FB_TFT_HX8347D=m +CONFIG_FB_TFT_HX8353D=m +CONFIG_FB_TFT_HX8357D=m +CONFIG_FB_TFT_ILI9163=m +CONFIG_FB_TFT_ILI9320=m +CONFIG_FB_TFT_ILI9325=m +CONFIG_FB_TFT_ILI9340=m +CONFIG_FB_TFT_ILI9341=m +CONFIG_FB_TFT_ILI9481=m +CONFIG_FB_TFT_ILI9486=m +CONFIG_FB_TFT_PCD8544=m +CONFIG_FB_TFT_RA8875=m +CONFIG_FB_TFT_S6D02A1=m +CONFIG_FB_TFT_S6D1121=m +CONFIG_FB_TFT_SEPS525=m +CONFIG_FB_TFT_SH1106=m +CONFIG_FB_TFT_SSD1289=m +CONFIG_FB_TFT_SSD1305=m +CONFIG_FB_TFT_SSD1306=m +CONFIG_FB_TFT_SSD1331=m +CONFIG_FB_TFT_SSD1351=m +CONFIG_FB_TFT_ST7735R=m +CONFIG_FB_TFT_ST7789V=m +CONFIG_FB_TFT_TINYLCD=m +CONFIG_FB_TFT_TLS8204=m +CONFIG_FB_TFT_UC1611=m +CONFIG_FB_TFT_UC1701=m +CONFIG_FB_TFT_UPD161704=m +CONFIG_FB_TFT_WATTEROTT=m +CONFIG_FB_TILEBLITTING=y +# CONFIG_FB_TRIDENT is not set +# CONFIG_FB_UDL is not set +# CONFIG_FB_UVESA is not set +# CONFIG_FB_VESA is not set +# CONFIG_FB_VGA16 is not set +CONFIG_FB_VIA=m +# CONFIG_FB_VIA_DIRECT_PROCFS is not set +CONFIG_FB_VIA_X_COMPATIBILITY=y +# CONFIG_FB_VIRTUAL is not set +# CONFIG_FB_VOODOO1 is not set +# CONFIG_FB_VT8623 is not set +CONFIG_FDDI=y +CONFIG_FEALNX=m +CONFIG_FHANDLE=y +CONFIG_FIB_RULES=y +CONFIG_FIELDBUS_DEV=m +CONFIG_FILE_LOCKING=y +# CONFIG_FIREWIRE is not set +CONFIG_FIREWIRE_NOSY=m +CONFIG_FIRMWARE_EDID=y +CONFIG_FIRMWARE_MEMMAP=y +CONFIG_FIXED_PHY=y +CONFIG_FIX_EARLYCON_MEM=y +CONFIG_FM10K=m +# CONFIG_FONTS is not set +CONFIG_FONT_8x16=y +CONFIG_FONT_8x8=y +CONFIG_FONT_SUPPORT=y +CONFIG_FORTIFY_SOURCE=y +CONFIG_FPGA=m +# CONFIG_FPGA_BRIDGE is not set +# CONFIG_FPGA_DFL is not set +# CONFIG_FPGA_MGR_ALTERA_CVP is not set +# CONFIG_FPGA_MGR_ALTERA_PS_SPI is not set +# CONFIG_FPGA_MGR_MACHXO2_SPI is not set +CONFIG_FPGA_MGR_XILINX_SPI=m +CONFIG_FRAMEBUFFER_CONSOLE=y +# CONFIG_FRAMEBUFFER_CONSOLE_DEFERRED_TAKEOVER is not set +CONFIG_FRAMEBUFFER_CONSOLE_DETECT_PRIMARY=y +CONFIG_FRAMEBUFFER_CONSOLE_ROTATION=y +CONFIG_FRAME_POINTER=y +CONFIG_FRAME_VECTOR=y +CONFIG_FRAME_WARN=1024 +CONFIG_FREEZER=y +CONFIG_FRONTSWAP=y +CONFIG_FSCACHE=m +# CONFIG_FSCACHE_DEBUG is not set +# CONFIG_FSCACHE_HISTOGRAM is not set +# CONFIG_FSCACHE_OBJECT_LIST is not set +CONFIG_FSCACHE_STATS=y +CONFIG_FSNOTIFY=y +CONFIG_FS_DAX=y +CONFIG_FS_DAX_PMD=y +CONFIG_FS_ENCRYPTION=y +CONFIG_FS_ENCRYPTION_ALGS=y +CONFIG_FS_IOMAP=y +CONFIG_FS_MBCACHE=y +CONFIG_FS_POSIX_ACL=y +CONFIG_FS_VERITY=y +CONFIG_FS_VERITY_BUILTIN_SIGNATURES=y +# CONFIG_FS_VERITY_DEBUG is not set +CONFIG_FTRACE=y +CONFIG_FTRACE_MCOUNT_RECORD=y +# CONFIG_FTRACE_STARTUP_TEST is not set +CONFIG_FTRACE_SYSCALLS=y +# CONFIG_FUJITSU_ES is not set +# CONFIG_FUJITSU_LAPTOP is not set +# CONFIG_FUJITSU_TABLET is not set +CONFIG_FUNCTION_ERROR_INJECTION=y +CONFIG_FUNCTION_GRAPH_TRACER=y +CONFIG_FUNCTION_PROFILER=y +CONFIG_FUNCTION_TRACER=y +CONFIG_FUSE_FS=y +CONFIG_FUSION=y +CONFIG_FUSION_CTL=m +CONFIG_FUSION_FC=m +CONFIG_FUSION_LOGGING=y +CONFIG_FUSION_MAX_SGE=128 +CONFIG_FUSION_SAS=m +CONFIG_FUSION_SPI=m +CONFIG_FUTEX=y +CONFIG_FUTEX_PI=y +CONFIG_FW_CACHE=y +# CONFIG_FW_CFG_SYSFS is not set +CONFIG_FW_LOADER=y +CONFIG_FW_LOADER_COMPRESS=y +CONFIG_FW_LOADER_PAGED_BUF=y +CONFIG_FW_LOADER_USER_HELPER=y +# CONFIG_FW_LOADER_USER_HELPER_FALLBACK is not set +CONFIG_GACT_PROB=y +# CONFIG_GAMEPORT is not set +CONFIG_GARP=m +CONFIG_GART_IOMMU=y +CONFIG_GCC_VERSION=90300 +# CONFIG_GCOV_KERNEL is not set +CONFIG_GDB_SCRIPTS=y +CONFIG_GENERIC_ALLOCATOR=y +CONFIG_GENERIC_BUG=y +CONFIG_GENERIC_BUG_RELATIVE_POINTERS=y +CONFIG_GENERIC_CALIBRATE_DELAY=y +CONFIG_GENERIC_CLOCKEVENTS=y +CONFIG_GENERIC_CLOCKEVENTS_BROADCAST=y +CONFIG_GENERIC_CLOCKEVENTS_MIN_ADJUST=y +CONFIG_GENERIC_CMOS_UPDATE=y +CONFIG_GENERIC_CPU=y +CONFIG_GENERIC_CPU_AUTOPROBE=y +CONFIG_GENERIC_CPU_VULNERABILITIES=y +CONFIG_GENERIC_EARLY_IOREMAP=y +CONFIG_GENERIC_FIND_FIRST_BIT=y +CONFIG_GENERIC_GETTIMEOFDAY=y +CONFIG_GENERIC_IOMAP=y +CONFIG_GENERIC_IRQ_CHIP=y +# CONFIG_GENERIC_IRQ_DEBUGFS is not set +CONFIG_GENERIC_IRQ_EFFECTIVE_AFF_MASK=y +CONFIG_GENERIC_IRQ_MATRIX_ALLOCATOR=y +CONFIG_GENERIC_IRQ_MIGRATION=y +CONFIG_GENERIC_IRQ_PROBE=y +CONFIG_GENERIC_IRQ_RESERVATION_MODE=y +CONFIG_GENERIC_IRQ_SHOW=y +CONFIG_GENERIC_ISA_DMA=y +CONFIG_GENERIC_MSI_IRQ=y +CONFIG_GENERIC_MSI_IRQ_DOMAIN=y +CONFIG_GENERIC_NET_UTILS=y +CONFIG_GENERIC_PCI_IOMAP=y +CONFIG_GENERIC_PENDING_IRQ=y +CONFIG_GENERIC_PHY=y +CONFIG_GENERIC_PINCONF=y +CONFIG_GENERIC_PTDUMP=y +CONFIG_GENERIC_SMP_IDLE_THREAD=y +CONFIG_GENERIC_STRNCPY_FROM_USER=y +CONFIG_GENERIC_STRNLEN_USER=y +CONFIG_GENERIC_TIME_VSYSCALL=y +CONFIG_GENERIC_TRACER=y +CONFIG_GENERIC_VDSO_TIME_NS=y +CONFIG_GENEVE=m +CONFIG_GENWQE=m +CONFIG_GENWQE_PLATFORM_ERROR_RECOVERY=0 +CONFIG_GFS2_FS=m +CONFIG_GFS2_FS_LOCKING_DLM=y +CONFIG_GLOB=y +# CONFIG_GLOB_SELFTEST is not set +CONFIG_GNSS=m +# CONFIG_GOLDFISH is not set +# CONFIG_GOOGLE_FIRMWARE is not set +CONFIG_GPD_POCKET_FAN=m +CONFIG_GPIOLIB=y +CONFIG_GPIOLIB_FASTPATH_LIMIT=512 +CONFIG_GPIOLIB_IRQCHIP=y +CONFIG_GPIO_104_DIO_48E=m +CONFIG_GPIO_104_IDIO_16=m +CONFIG_GPIO_104_IDI_48=m +CONFIG_GPIO_ACPI=y +CONFIG_GPIO_ADP5588=m +CONFIG_GPIO_AGGREGATOR=m +CONFIG_GPIO_AMD8111=m +CONFIG_GPIO_AMDPT=m +CONFIG_GPIO_AMD_FCH=m +CONFIG_GPIO_ARIZONA=m +CONFIG_GPIO_BD9571MWV=m +# CONFIG_GPIO_BT8XX is not set +CONFIG_GPIO_DA9052=m +CONFIG_GPIO_DWAPB=m +CONFIG_GPIO_EXAR=m +CONFIG_GPIO_F7188X=m +CONFIG_GPIO_GENERIC=m +CONFIG_GPIO_GENERIC_PLATFORM=m +CONFIG_GPIO_GPIO_MM=m +CONFIG_GPIO_ICH=m +CONFIG_GPIO_IT87=m +CONFIG_GPIO_JANZ_TTL=m +CONFIG_GPIO_LP3943=m +CONFIG_GPIO_LP873X=m +CONFIG_GPIO_MADERA=m +CONFIG_GPIO_MAX3191X=m +CONFIG_GPIO_MAX7300=m +CONFIG_GPIO_MAX7301=m +CONFIG_GPIO_MAX730X=m +CONFIG_GPIO_MAX732X=m +CONFIG_GPIO_MB86S7X=m +CONFIG_GPIO_MC33880=m +CONFIG_GPIO_MENZ127=m +CONFIG_GPIO_ML_IOH=m +CONFIG_GPIO_MOCKUP=m +CONFIG_GPIO_MSIC=y +CONFIG_GPIO_PCA953X=m +CONFIG_GPIO_PCA953X_IRQ=y +CONFIG_GPIO_PCF857X=m +CONFIG_GPIO_PCIE_IDIO_24=m +CONFIG_GPIO_PCI_IDIO_16=m +CONFIG_GPIO_PISOSR=m +CONFIG_GPIO_RDC321X=m +CONFIG_GPIO_SCH=m +CONFIG_GPIO_SCH311X=m +CONFIG_GPIO_SIOX=m +CONFIG_GPIO_SYSFS=y +CONFIG_GPIO_TPIC2810=m +CONFIG_GPIO_TPS65086=m +CONFIG_GPIO_TPS65912=m +CONFIG_GPIO_TQMX86=m +CONFIG_GPIO_VX855=m +CONFIG_GPIO_WHISKEY_COVE=m +CONFIG_GPIO_WINBOND=m +CONFIG_GPIO_WM831X=m +CONFIG_GPIO_WM8994=m +CONFIG_GPIO_WS16C48=m +CONFIG_GPIO_XILINX=y +CONFIG_GPIO_XRA1403=m +CONFIG_GRACE_PERIOD=m +# CONFIG_GREYBUS is not set +CONFIG_GRO_CELLS=y +# CONFIG_GS_FPGABOOT is not set +CONFIG_GTP=m +# CONFIG_GUP_BENCHMARK is not set +CONFIG_GVE=m +CONFIG_HABANA_AI=m +CONFIG_HALTPOLL_CPUIDLE=m +CONFIG_HAMACHI=m +CONFIG_HAMRADIO=y +CONFIG_HANGCHECK_TIMER=m +CONFIG_HARDENED_USERCOPY=y +CONFIG_HARDENED_USERCOPY_FALLBACK=y +# CONFIG_HARDENED_USERCOPY_PAGESPAN is not set +CONFIG_HARDIRQS_SW_RESEND=y +CONFIG_HARDLOCKUP_CHECK_TIMESTAMP=y +CONFIG_HARDLOCKUP_DETECTOR=y +CONFIG_HARDLOCKUP_DETECTOR_PERF=y +CONFIG_HAS_DMA=y +CONFIG_HAS_IOMEM=y +CONFIG_HAS_IOPORT_MAP=y +CONFIG_HAVE_ACPI_APEI=y +CONFIG_HAVE_ACPI_APEI_NMI=y +CONFIG_HAVE_ALIGNED_STRUCT_PAGE=y +CONFIG_HAVE_ARCH_AUDITSYSCALL=y +CONFIG_HAVE_ARCH_COMPAT_MMAP_BASES=y +CONFIG_HAVE_ARCH_HUGE_VMAP=y +CONFIG_HAVE_ARCH_JUMP_LABEL=y +CONFIG_HAVE_ARCH_JUMP_LABEL_RELATIVE=y +CONFIG_HAVE_ARCH_KASAN=y +CONFIG_HAVE_ARCH_KASAN_VMALLOC=y +CONFIG_HAVE_ARCH_KCSAN=y +CONFIG_HAVE_ARCH_KGDB=y +CONFIG_HAVE_ARCH_MMAP_RND_BITS=y +CONFIG_HAVE_ARCH_MMAP_RND_COMPAT_BITS=y +CONFIG_HAVE_ARCH_PREL32_RELOCATIONS=y +CONFIG_HAVE_ARCH_SECCOMP_FILTER=y +CONFIG_HAVE_ARCH_SOFT_DIRTY=y +CONFIG_HAVE_ARCH_STACKLEAK=y +CONFIG_HAVE_ARCH_THREAD_STRUCT_WHITELIST=y +CONFIG_HAVE_ARCH_TRACEHOOK=y +CONFIG_HAVE_ARCH_TRANSPARENT_HUGEPAGE=y +CONFIG_HAVE_ARCH_TRANSPARENT_HUGEPAGE_PUD=y +CONFIG_HAVE_ARCH_USERFAULTFD_WP=y +CONFIG_HAVE_ARCH_VMAP_STACK=y +CONFIG_HAVE_ARCH_WITHIN_STACK_FRAMES=y +CONFIG_HAVE_ASM_MODVERSIONS=y +CONFIG_HAVE_BOOTMEM_INFO_NODE=y +CONFIG_HAVE_CLK=y +CONFIG_HAVE_CLK_PREPARE=y +CONFIG_HAVE_CMPXCHG_DOUBLE=y +CONFIG_HAVE_CMPXCHG_LOCAL=y +CONFIG_HAVE_CONTEXT_TRACKING=y +CONFIG_HAVE_COPY_THREAD_TLS=y +CONFIG_HAVE_C_RECORDMCOUNT=y +CONFIG_HAVE_DEBUG_KMEMLEAK=y +CONFIG_HAVE_DMA_CONTIGUOUS=y +CONFIG_HAVE_DYNAMIC_FTRACE=y +CONFIG_HAVE_DYNAMIC_FTRACE_WITH_DIRECT_CALLS=y +CONFIG_HAVE_DYNAMIC_FTRACE_WITH_REGS=y +CONFIG_HAVE_EBPF_JIT=y +CONFIG_HAVE_EFFICIENT_UNALIGNED_ACCESS=y +CONFIG_HAVE_EISA=y +CONFIG_HAVE_EXIT_THREAD=y +CONFIG_HAVE_FAST_GUP=y +CONFIG_HAVE_FENTRY=y +CONFIG_HAVE_FTRACE_MCOUNT_RECORD=y +CONFIG_HAVE_FUNCTION_ARG_ACCESS_API=y +CONFIG_HAVE_FUNCTION_ERROR_INJECTION=y +CONFIG_HAVE_FUNCTION_GRAPH_TRACER=y +CONFIG_HAVE_FUNCTION_TRACER=y +CONFIG_HAVE_GCC_PLUGINS=y +CONFIG_HAVE_GENERIC_VDSO=y +CONFIG_HAVE_HARDENED_USERCOPY_ALLOCATOR=y +CONFIG_HAVE_HARDLOCKUP_DETECTOR_PERF=y +CONFIG_HAVE_HW_BREAKPOINT=y +CONFIG_HAVE_IDE=y +CONFIG_HAVE_INTEL_TXT=y +CONFIG_HAVE_IOREMAP_PROT=y +CONFIG_HAVE_IRQ_TIME_ACCOUNTING=y +CONFIG_HAVE_KERNEL_BZIP2=y +CONFIG_HAVE_KERNEL_GZIP=y +CONFIG_HAVE_KERNEL_LZ4=y +CONFIG_HAVE_KERNEL_LZMA=y +CONFIG_HAVE_KERNEL_LZO=y +CONFIG_HAVE_KERNEL_XZ=y +CONFIG_HAVE_KPROBES=y +CONFIG_HAVE_KPROBES_ON_FTRACE=y +CONFIG_HAVE_KRETPROBES=y +CONFIG_HAVE_KVM=y +CONFIG_HAVE_KVM_CPU_RELAX_INTERCEPT=y +CONFIG_HAVE_KVM_EVENTFD=y +CONFIG_HAVE_KVM_IRQCHIP=y +CONFIG_HAVE_KVM_IRQFD=y +CONFIG_HAVE_KVM_IRQ_BYPASS=y +CONFIG_HAVE_KVM_IRQ_ROUTING=y +CONFIG_HAVE_KVM_MSI=y +CONFIG_HAVE_KVM_NO_POLL=y +CONFIG_HAVE_LIVEPATCH=y +CONFIG_HAVE_MEMORY_PRESENT=y +CONFIG_HAVE_MIXED_BREAKPOINTS_REGS=y +CONFIG_HAVE_MMIOTRACE_SUPPORT=y +CONFIG_HAVE_MOD_ARCH_SPECIFIC=y +CONFIG_HAVE_MOVE_PMD=y +CONFIG_HAVE_NET_DSA=y +CONFIG_HAVE_NMI=y +CONFIG_HAVE_OPROFILE=y +CONFIG_HAVE_OPTPROBES=y +CONFIG_HAVE_PCI=y +CONFIG_HAVE_PCSPKR_PLATFORM=y +CONFIG_HAVE_PERF_EVENTS=y +CONFIG_HAVE_PERF_EVENTS_NMI=y +CONFIG_HAVE_PERF_REGS=y +CONFIG_HAVE_PERF_USER_STACK_DUMP=y +CONFIG_HAVE_REGS_AND_STACK_ACCESS_API=y +CONFIG_HAVE_RELIABLE_STACKTRACE=y +CONFIG_HAVE_RSEQ=y +CONFIG_HAVE_SETUP_PER_CPU_AREA=y +CONFIG_HAVE_STACKPROTECTOR=y +CONFIG_HAVE_STACK_VALIDATION=y +CONFIG_HAVE_SYSCALL_TRACEPOINTS=y +CONFIG_HAVE_UID16=y +CONFIG_HAVE_UNSTABLE_SCHED_CLOCK=y +CONFIG_HAVE_USER_RETURN_NOTIFIER=y +CONFIG_HAVE_VIRT_CPU_ACCOUNTING_GEN=y +CONFIG_HD44780=m +CONFIG_HDLC=m +CONFIG_HDLC_CISCO=m +CONFIG_HDLC_FR=m +CONFIG_HDLC_PPP=m +CONFIG_HDLC_RAW=m +CONFIG_HDLC_RAW_ETH=m +CONFIG_HDLC_X25=m +CONFIG_HDMI=y +# CONFIG_HEADERS_INSTALL is not set +CONFIG_HFSPLUS_FS=m +CONFIG_HFS_FS=m +CONFIG_HIBERNATE_CALLBACKS=y +CONFIG_HIBERNATION=y +CONFIG_HIBERNATION_SNAPSHOT_DEV=y +CONFIG_HID=m +CONFIG_HIDRAW=y +# CONFIG_HID_A4TECH is not set +# CONFIG_HID_ACRUX is not set +# CONFIG_HID_ALPS is not set +# CONFIG_HID_APPLE is not set +# CONFIG_HID_AUREAL is not set +# CONFIG_HID_BATTERY_STRENGTH is not set +# CONFIG_HID_BELKIN is not set +# CONFIG_HID_CHERRY is not set +# CONFIG_HID_CHICONY is not set +# CONFIG_HID_CMEDIA is not set +# CONFIG_HID_CORSAIR is not set +CONFIG_HID_COUGAR=m +# CONFIG_HID_CYPRESS is not set +# CONFIG_HID_DRAGONRISE is not set +# CONFIG_HID_ELECOM is not set +# CONFIG_HID_EMS_FF is not set +# CONFIG_HID_EZKEY is not set +# CONFIG_HID_GEMBIRD is not set +CONFIG_HID_GENERIC=m +# CONFIG_HID_GFRM is not set +CONFIG_HID_GLORIOUS=m +# CONFIG_HID_GREENASIA is not set +# CONFIG_HID_GYRATION is not set +CONFIG_HID_HYPERV_MOUSE=m +# CONFIG_HID_ICADE is not set +CONFIG_HID_ITE=m +CONFIG_HID_JABRA=m +# CONFIG_HID_KENSINGTON is not set +# CONFIG_HID_KEYTOUCH is not set +# CONFIG_HID_KYE is not set +# CONFIG_HID_LCPOWER is not set +CONFIG_HID_LED=m +# CONFIG_HID_LENOVO is not set +# CONFIG_HID_LOGITECH is not set +CONFIG_HID_MACALLY=m +# CONFIG_HID_MAGICMOUSE is not set +CONFIG_HID_MALTRON=m +CONFIG_HID_MAYFLASH=m +# CONFIG_HID_MICROSOFT is not set +# CONFIG_HID_MONTEREY is not set +# CONFIG_HID_MULTITOUCH is not set +CONFIG_HID_NTI=m +# CONFIG_HID_ORTEK is not set +# CONFIG_HID_PANTHERLORD is not set +# CONFIG_HID_PETALYNX is not set +# CONFIG_HID_PICOLCD is not set +# CONFIG_HID_PID is not set +# CONFIG_HID_PLANTRONICS is not set +# CONFIG_HID_PRIMAX is not set +CONFIG_HID_REDRAGON=m +# CONFIG_HID_RMI is not set +# CONFIG_HID_SAITEK is not set +# CONFIG_HID_SAMSUNG is not set +CONFIG_HID_SENSOR_CUSTOM_SENSOR=m +CONFIG_HID_SENSOR_HUB=m +# CONFIG_HID_SMARTJOYPLUS is not set +# CONFIG_HID_SPEEDLINK is not set +CONFIG_HID_STEAM=m +# CONFIG_HID_STEELSERIES is not set +# CONFIG_HID_SUNPLUS is not set +CONFIG_HID_THINGM=m +# CONFIG_HID_THRUSTMASTER is not set +# CONFIG_HID_TIVO is not set +# CONFIG_HID_TOPSEED is not set +# CONFIG_HID_TWINHAN is not set +CONFIG_HID_UDRAW_PS3=m +CONFIG_HID_VIEWSONIC=m +# CONFIG_HID_WALTOP is not set +CONFIG_HID_WIIMOTE=m +# CONFIG_HID_XINMO is not set +# CONFIG_HID_ZEROPLUS is not set +# CONFIG_HID_ZYDACRON is not set +CONFIG_HIGH_RES_TIMERS=y +CONFIG_HINIC=m +CONFIG_HIO=m +# CONFIG_HIPPI is not set +CONFIG_HIST_TRIGGERS=y +# CONFIG_HIST_TRIGGERS_DEBUG is not set +CONFIG_HMC6352=m +CONFIG_HMEM_REPORTING=y +CONFIG_HMM_MIRROR=y +CONFIG_HOTPLUG_CPU=y +CONFIG_HOTPLUG_PCI=y +CONFIG_HOTPLUG_PCI_ACPI=y +CONFIG_HOTPLUG_PCI_ACPI_IBM=m +CONFIG_HOTPLUG_PCI_CPCI=y +CONFIG_HOTPLUG_PCI_CPCI_GENERIC=m +CONFIG_HOTPLUG_PCI_CPCI_ZT5550=m +CONFIG_HOTPLUG_PCI_PCIE=y +CONFIG_HOTPLUG_PCI_SHPC=y +CONFIG_HOTPLUG_SMT=y +CONFIG_HPET=y +CONFIG_HPET_EMULATE_RTC=y +CONFIG_HPET_MMAP=y +CONFIG_HPET_MMAP_DEFAULT=y +CONFIG_HPET_TIMER=y +CONFIG_HPFS_FS=m +# CONFIG_HP_ACCEL is not set +# CONFIG_HP_ILO is not set +# CONFIG_HP_WATCHDOG is not set +# CONFIG_HP_WIRELESS is not set +# CONFIG_HP_WMI is not set +# CONFIG_HSA_AMD is not set +# CONFIG_HSI is not set +CONFIG_HSR=m +CONFIG_HSU_DMA=m +CONFIG_HTC_PASIC3=m +CONFIG_HUGETLBFS=y +CONFIG_HUGETLB_PAGE=y +CONFIG_HVC_DRIVER=y +CONFIG_HWLAT_TRACER=y +CONFIG_HWMON=y +# CONFIG_HWMON_DEBUG_CHIP is not set +CONFIG_HWMON_VID=m +CONFIG_HWPOISON_INJECT=m +CONFIG_HWSPINLOCK=y +CONFIG_HW_CONSOLE=y +CONFIG_HW_RANDOM=y +CONFIG_HW_RANDOM_AMD=m +CONFIG_HW_RANDOM_INTEL=m +CONFIG_HW_RANDOM_TIMERIOMEM=m +CONFIG_HW_RANDOM_TPM=y +CONFIG_HW_RANDOM_VIA=m +CONFIG_HW_RANDOM_VIRTIO=m +CONFIG_HYPERV=y +CONFIG_HYPERVISOR_GUEST=y +CONFIG_HYPERV_BALLOON=m +CONFIG_HYPERV_INFINIBAND_ND=m +CONFIG_HYPERV_IOMMU=y +CONFIG_HYPERV_KEYBOARD=m +CONFIG_HYPERV_NET=m +CONFIG_HYPERV_STORAGE=y +# CONFIG_HYPERV_TESTING is not set +CONFIG_HYPERV_TIMER=y +CONFIG_HYPERV_UTILS=m +CONFIG_HYPERV_VSOCKETS=m +CONFIG_HZ=250 +# CONFIG_HZ_100 is not set +# CONFIG_HZ_1000 is not set +CONFIG_HZ_250=y +# CONFIG_HZ_300 is not set +# CONFIG_HZ_PERIODIC is not set +CONFIG_I2C=m +CONFIG_I2C_ALGOBIT=m +CONFIG_I2C_ALGOPCA=m +CONFIG_I2C_ALI1535=m +CONFIG_I2C_ALI1563=m +CONFIG_I2C_ALI15X3=m +CONFIG_I2C_AMD756=m +CONFIG_I2C_AMD756_S4882=m +CONFIG_I2C_AMD8111=m +# CONFIG_I2C_AMD_MP2 is not set +CONFIG_I2C_BOARDINFO=y +CONFIG_I2C_CBUS_GPIO=m +CONFIG_I2C_CHARDEV=m +CONFIG_I2C_COMPAT=y +# CONFIG_I2C_DEBUG_ALGO is not set +# CONFIG_I2C_DEBUG_BUS is not set +# CONFIG_I2C_DEBUG_CORE is not set +CONFIG_I2C_DESIGNWARE_BAYTRAIL=y +CONFIG_I2C_DESIGNWARE_CORE=m +CONFIG_I2C_DESIGNWARE_PCI=m +CONFIG_I2C_DESIGNWARE_PLATFORM=m +# CONFIG_I2C_DESIGNWARE_SLAVE is not set +# CONFIG_I2C_DIOLAN_U2C is not set +# CONFIG_I2C_EMEV2 is not set +CONFIG_I2C_GPIO=m +# CONFIG_I2C_GPIO_FAULT_INJECTOR is not set +CONFIG_I2C_HELPER_AUTO=y +# CONFIG_I2C_HID is not set +CONFIG_I2C_I801=m +CONFIG_I2C_ISCH=m +CONFIG_I2C_ISMT=m +CONFIG_I2C_MLXCPLD=m +CONFIG_I2C_MULTI_INSTANTIATE=m +CONFIG_I2C_MUX=m +# CONFIG_I2C_MUX_GPIO is not set +CONFIG_I2C_MUX_LTC4306=m +# CONFIG_I2C_MUX_MLXCPLD is not set +# CONFIG_I2C_MUX_PCA9541 is not set +# CONFIG_I2C_MUX_PCA954x is not set +# CONFIG_I2C_MUX_REG is not set +CONFIG_I2C_NFORCE2=m +CONFIG_I2C_NFORCE2_S4985=m +CONFIG_I2C_NVIDIA_GPU=m +CONFIG_I2C_OCORES=m +CONFIG_I2C_PARPORT=m +CONFIG_I2C_PCA_PLATFORM=m +# CONFIG_I2C_PIIX4 is not set +# CONFIG_I2C_ROBOTFUZZ_OSIF is not set +CONFIG_I2C_SCMI=m +CONFIG_I2C_SIMTEC=m +CONFIG_I2C_SIS5595=m +CONFIG_I2C_SIS630=m +CONFIG_I2C_SIS96X=m +# CONFIG_I2C_SLAVE is not set +CONFIG_I2C_SMBUS=m +CONFIG_I2C_STUB=m +CONFIG_I2C_TAOS_EVM=m +# CONFIG_I2C_TINY_USB is not set +CONFIG_I2C_VIA=m +CONFIG_I2C_VIAPRO=m +CONFIG_I2C_XILINX=m +CONFIG_I3C=m +CONFIG_I40E=m +CONFIG_I40EVF=m +CONFIG_I40E_DCB=y +CONFIG_I6300ESB_WDT=m +CONFIG_I8253_LOCK=y +CONFIG_I8K=m +CONFIG_IA32_EMULATION=y +CONFIG_IA32_FEAT_CTL=y +CONFIG_IAVF=m +CONFIG_IB700_WDT=m +CONFIG_IBMASR=m +CONFIG_IBM_ASM=m +# CONFIG_IBM_RTL is not set +CONFIG_ICE=m +# CONFIG_ICPLUS_PHY is not set +CONFIG_ICS932S401=m +# CONFIG_IDE is not set +# CONFIG_IDEAPAD_LAPTOP is not set +CONFIG_IDLE_PAGE_TRACKING=y +CONFIG_IE6XX_WDT=m +CONFIG_IEEE802154=m +CONFIG_IEEE802154_6LOWPAN=m +# CONFIG_IEEE802154_ADF7242 is not set +# CONFIG_IEEE802154_AT86RF230 is not set +# CONFIG_IEEE802154_ATUSB is not set +CONFIG_IEEE802154_CA8210=m +CONFIG_IEEE802154_CA8210_DEBUGFS=y +# CONFIG_IEEE802154_CC2520 is not set +CONFIG_IEEE802154_DRIVERS=m +# CONFIG_IEEE802154_FAKELB is not set +CONFIG_IEEE802154_HWSIM=m +CONFIG_IEEE802154_MCR20A=m +# CONFIG_IEEE802154_MRF24J40 is not set +# CONFIG_IEEE802154_NL802154_EXPERIMENTAL is not set +CONFIG_IEEE802154_SOCKET=m +CONFIG_IFB=m +CONFIG_IFCVF=m +CONFIG_IGB=m +CONFIG_IGBVF=m +CONFIG_IGB_DCA=y +CONFIG_IGB_HWMON=y +CONFIG_IGC=m +# CONFIG_IIO is not set +# CONFIG_IKCONFIG is not set +CONFIG_IKHEADERS=m +CONFIG_ILLEGAL_POINTER_VALUE=0xdead000000000000 +CONFIG_IMA=y +CONFIG_IMA_APPRAISE=y +CONFIG_IMA_APPRAISE_BOOTPARAM=y +# CONFIG_IMA_APPRAISE_BUILD_POLICY is not set +CONFIG_IMA_APPRAISE_MODSIG=y +# CONFIG_IMA_ARCH_POLICY is not set +# CONFIG_IMA_BLACKLIST_KEYRING is not set +CONFIG_IMA_DEFAULT_HASH="sha1" +CONFIG_IMA_DEFAULT_HASH_SHA1=y +# CONFIG_IMA_DEFAULT_HASH_SHA256 is not set +# CONFIG_IMA_DEFAULT_HASH_SHA512 is not set +CONFIG_IMA_DEFAULT_TEMPLATE="ima-ng" +# CONFIG_IMA_KEYRINGS_PERMIT_SIGNED_BY_BUILTIN_OR_SECONDARY is not set +# CONFIG_IMA_LOAD_X509 is not set +CONFIG_IMA_LSM_RULES=y +CONFIG_IMA_MEASURE_ASYMMETRIC_KEYS=y +CONFIG_IMA_MEASURE_PCR_IDX=10 +CONFIG_IMA_NG_TEMPLATE=y +CONFIG_IMA_QUEUE_EARLY_BOOT_KEYS=y +# CONFIG_IMA_READ_POLICY is not set +# CONFIG_IMA_SECURE_AND_OR_TRUSTED_BOOT is not set +# CONFIG_IMA_SIG_TEMPLATE is not set +# CONFIG_IMA_TEMPLATE is not set +CONFIG_IMA_TRUSTED_KEYRING=y +# CONFIG_IMA_WRITE_POLICY is not set +CONFIG_IMG_ASCII_LCD=m +CONFIG_INET=y +CONFIG_INET6_AH=m +CONFIG_INET6_ESP=m +CONFIG_INET6_ESPINTCP=y +CONFIG_INET6_ESP_OFFLOAD=m +CONFIG_INET6_IPCOMP=m +CONFIG_INET6_TUNNEL=m +CONFIG_INET6_XFRM_TUNNEL=m +CONFIG_INET_AH=m +CONFIG_INET_DCCP_DIAG=m +CONFIG_INET_DIAG=m +CONFIG_INET_DIAG_DESTROY=y +CONFIG_INET_ESP=m +CONFIG_INET_ESPINTCP=y +CONFIG_INET_ESP_OFFLOAD=m +CONFIG_INET_IPCOMP=m +CONFIG_INET_RAW_DIAG=m +CONFIG_INET_SCTP_DIAG=m +CONFIG_INET_TCP_DIAG=m +CONFIG_INET_TUNNEL=m +CONFIG_INET_UDP_DIAG=m +CONFIG_INET_XFRM_TUNNEL=m +CONFIG_INFINIBAND=m +CONFIG_INFINIBAND_ADDR_TRANS=y +CONFIG_INFINIBAND_ADDR_TRANS_CONFIGFS=y +# CONFIG_INFINIBAND_BNXT_RE is not set +# CONFIG_INFINIBAND_CXGB4 is not set +CONFIG_INFINIBAND_EFA=m +# CONFIG_INFINIBAND_EXP_LEGACY_VERBS_NEW_UAPI is not set +# CONFIG_INFINIBAND_I40IW is not set +CONFIG_INFINIBAND_IPOIB=m +# CONFIG_INFINIBAND_IPOIB_CM is not set +CONFIG_INFINIBAND_IPOIB_DEBUG=y +# CONFIG_INFINIBAND_IPOIB_DEBUG_DATA is not set +CONFIG_INFINIBAND_ISER=m +CONFIG_INFINIBAND_ISERT=m +CONFIG_INFINIBAND_MTHCA=m +# CONFIG_INFINIBAND_MTHCA_DEBUG is not set +# CONFIG_INFINIBAND_OCRDMA is not set +CONFIG_INFINIBAND_ON_DEMAND_PAGING=y +CONFIG_INFINIBAND_OPA_VNIC=m +# CONFIG_INFINIBAND_RDMAVT is not set +CONFIG_INFINIBAND_RTRS=m +CONFIG_INFINIBAND_RTRS_CLIENT=m +CONFIG_INFINIBAND_RTRS_SERVER=m +CONFIG_INFINIBAND_SRP=m +# CONFIG_INFINIBAND_SRPT is not set +CONFIG_INFINIBAND_USER_ACCESS=m +CONFIG_INFINIBAND_USER_MAD=m +CONFIG_INFINIBAND_USER_MEM=y +CONFIG_INFINIBAND_USNIC=m +CONFIG_INFINIBAND_VIRT_DMA=y +CONFIG_INITRAMFS_SOURCE="" +CONFIG_INIT_ENV_ARG_LIMIT=32 +CONFIG_INIT_ON_ALLOC_DEFAULT_ON=y +# CONFIG_INIT_ON_FREE_DEFAULT_ON is not set +CONFIG_INIT_STACK_NONE=y +CONFIG_INLINE_READ_UNLOCK=y +CONFIG_INLINE_READ_UNLOCK_IRQ=y +CONFIG_INLINE_SPIN_UNLOCK_IRQ=y +CONFIG_INLINE_WRITE_UNLOCK=y +CONFIG_INLINE_WRITE_UNLOCK_IRQ=y +CONFIG_INOTIFY_USER=y +CONFIG_INPUT=y +# CONFIG_INPUT_AD714X is not set +# CONFIG_INPUT_ADXL34X is not set +# CONFIG_INPUT_APANEL is not set +# CONFIG_INPUT_ATI_REMOTE2 is not set +# CONFIG_INPUT_ATLAS_BTNS is not set +# CONFIG_INPUT_AXP20X_PEK is not set +# CONFIG_INPUT_BMA150 is not set +# CONFIG_INPUT_CM109 is not set +# CONFIG_INPUT_CMA3000 is not set +# CONFIG_INPUT_DA9052_ONKEY is not set +# CONFIG_INPUT_DA9063_ONKEY is not set +# CONFIG_INPUT_DRV260X_HAPTICS is not set +# CONFIG_INPUT_DRV2665_HAPTICS is not set +# CONFIG_INPUT_DRV2667_HAPTICS is not set +# CONFIG_INPUT_E3X0_BUTTON is not set +CONFIG_INPUT_EVBUG=m +CONFIG_INPUT_EVDEV=y +CONFIG_INPUT_FF_MEMLESS=m +# CONFIG_INPUT_GPIO_BEEPER is not set +# CONFIG_INPUT_GPIO_DECODER is not set +# CONFIG_INPUT_GPIO_ROTARY_ENCODER is not set +CONFIG_INPUT_GPIO_VIBRA=m +# CONFIG_INPUT_IDEAPAD_SLIDEBAR is not set +# CONFIG_INPUT_IMS_PCU is not set +CONFIG_INPUT_IQS269A=m +CONFIG_INPUT_JOYDEV=m +# CONFIG_INPUT_JOYSTICK is not set +CONFIG_INPUT_KEYBOARD=y +# CONFIG_INPUT_KEYSPAN_REMOTE is not set +# CONFIG_INPUT_KXTJ9 is not set +# CONFIG_INPUT_LEDS is not set +CONFIG_INPUT_MATRIXKMAP=m +# CONFIG_INPUT_MC13783_PWRBUTTON is not set +CONFIG_INPUT_MISC=y +# CONFIG_INPUT_MMA8450 is not set +# CONFIG_INPUT_MOUSE is not set +CONFIG_INPUT_MOUSEDEV=y +CONFIG_INPUT_MOUSEDEV_PSAUX=y +CONFIG_INPUT_MOUSEDEV_SCREEN_X=1024 +CONFIG_INPUT_MOUSEDEV_SCREEN_Y=768 +# CONFIG_INPUT_PCAP is not set +# CONFIG_INPUT_PCF50633_PMU is not set +# CONFIG_INPUT_PCF8574 is not set +# CONFIG_INPUT_PCSPKR is not set +CONFIG_INPUT_POLLDEV=m +# CONFIG_INPUT_POWERMATE is not set +# CONFIG_INPUT_REGULATOR_HAPTIC is not set +# CONFIG_INPUT_RETU_PWRBUTTON is not set +CONFIG_INPUT_SPARSEKMAP=m +CONFIG_INPUT_TABLET=y +# CONFIG_INPUT_TOUCHSCREEN is not set +CONFIG_INPUT_UINPUT=y +# CONFIG_INPUT_WM831X_ON is not set +# CONFIG_INPUT_YEALINK is not set +CONFIG_INSTRUCTION_DECODER=y +# CONFIG_INT340X_THERMAL is not set +CONFIG_INTEGRITY=y +CONFIG_INTEGRITY_ASYMMETRIC_KEYS=y +CONFIG_INTEGRITY_AUDIT=y +CONFIG_INTEGRITY_PLATFORM_KEYRING=y +CONFIG_INTEGRITY_SIGNATURE=y +CONFIG_INTEGRITY_TRUSTED_KEYRING=y +CONFIG_INTEL_ATOMISP=y +CONFIG_INTEL_BXTWC_PMIC_TMU=m +CONFIG_INTEL_BXT_PMIC_THERMAL=m +CONFIG_INTEL_CHTDC_TI_PWRBTN=m +CONFIG_INTEL_GTT=y +CONFIG_INTEL_HID_EVENT=m +CONFIG_INTEL_IDLE=y +CONFIG_INTEL_IDMA64=m +CONFIG_INTEL_IDXD=m +CONFIG_INTEL_INT0002_VGPIO=m +CONFIG_INTEL_IOATDMA=m +CONFIG_INTEL_IOMMU=y +# CONFIG_INTEL_IOMMU_DEFAULT_ON is not set +CONFIG_INTEL_IOMMU_FLOPPY_WA=y +# CONFIG_INTEL_IOMMU_SCALABLE_MODE_DEFAULT_ON is not set +CONFIG_INTEL_IOMMU_SVM=y +CONFIG_INTEL_IPS=m +CONFIG_INTEL_ISH_FIRMWARE_DOWNLOADER=m +CONFIG_INTEL_ISH_HID=m +CONFIG_INTEL_MEI=m +CONFIG_INTEL_MEI_HDCP=m +CONFIG_INTEL_MEI_ME=m +# CONFIG_INTEL_MEI_TXE is not set +CONFIG_INTEL_MEI_WDT=m +CONFIG_INTEL_MFLD_THERMAL=m +# CONFIG_INTEL_MIC_BUS is not set +CONFIG_INTEL_MID_POWER_BUTTON=m +CONFIG_INTEL_MRFLD_PWRBTN=m +# CONFIG_INTEL_OAKTRAIL is not set +CONFIG_INTEL_PCH_THERMAL=m +CONFIG_INTEL_PMC_CORE=y +CONFIG_INTEL_POWERCLAMP=m +CONFIG_INTEL_PUNIT_IPC=m +CONFIG_INTEL_RST=m +CONFIG_INTEL_SCU=y +CONFIG_INTEL_SCU_IPC=y +CONFIG_INTEL_SCU_IPC_UTIL=m +CONFIG_INTEL_SCU_PCI=y +CONFIG_INTEL_SCU_PLATFORM=m +CONFIG_INTEL_SMARTCONNECT=m +CONFIG_INTEL_SOC_DTS_IOSF_CORE=m +CONFIG_INTEL_SOC_DTS_THERMAL=m +CONFIG_INTEL_SOC_PMIC_BXTWC=m +CONFIG_INTEL_SOC_PMIC_CHTDC_TI=m +CONFIG_INTEL_SOC_PMIC_MRFLD=m +CONFIG_INTEL_SPEED_SELECT_INTERFACE=m +CONFIG_INTEL_TELEMETRY=m +# CONFIG_INTEL_TH is not set +CONFIG_INTEL_TURBO_MAX_3=y +CONFIG_INTEL_TXT=y +CONFIG_INTEL_UNCORE_FREQ_CONTROL=m +# CONFIG_INTEL_VBTN is not set +CONFIG_INTEL_WMI_SBL_FW_UPDATE=m +CONFIG_INTEL_WMI_THUNDERBOLT=m +# CONFIG_INTEL_XWAY_PHY is not set +CONFIG_INTERCONNECT=y +CONFIG_INTERVAL_TREE=y +CONFIG_IOASID=y +CONFIG_IOMMU_API=y +# CONFIG_IOMMU_DEBUG is not set +# CONFIG_IOMMU_DEBUGFS is not set +# CONFIG_IOMMU_DEFAULT_PASSTHROUGH is not set +CONFIG_IOMMU_DMA=y +CONFIG_IOMMU_HELPER=y +CONFIG_IOMMU_IOVA=y +CONFIG_IOMMU_SUPPORT=y +# CONFIG_ION is not set +CONFIG_IONIC=m +CONFIG_IOSCHED_BFQ=m +CONFIG_IOSF_MBI=y +CONFIG_IOSF_MBI_DEBUG=y +# CONFIG_IO_DELAY_0X80 is not set +CONFIG_IO_DELAY_0XED=y +# CONFIG_IO_DELAY_NONE is not set +# CONFIG_IO_DELAY_UDELAY is not set +# CONFIG_IO_STRICT_DEVMEM is not set +CONFIG_IO_URING=y +CONFIG_IO_WQ=y +CONFIG_IP6_NF_FILTER=m +CONFIG_IP6_NF_IPTABLES=m +CONFIG_IP6_NF_MANGLE=m +CONFIG_IP6_NF_MATCH_AH=m +CONFIG_IP6_NF_MATCH_EUI64=m +CONFIG_IP6_NF_MATCH_FRAG=m +CONFIG_IP6_NF_MATCH_HL=m +CONFIG_IP6_NF_MATCH_IPV6HEADER=m +CONFIG_IP6_NF_MATCH_MH=m +CONFIG_IP6_NF_MATCH_OPTS=m +CONFIG_IP6_NF_MATCH_RPFILTER=m +CONFIG_IP6_NF_MATCH_RT=m +CONFIG_IP6_NF_MATCH_SRH=m +CONFIG_IP6_NF_NAT=m +CONFIG_IP6_NF_RAW=m +CONFIG_IP6_NF_SECURITY=m +CONFIG_IP6_NF_TARGET_HL=m +CONFIG_IP6_NF_TARGET_MASQUERADE=m +CONFIG_IP6_NF_TARGET_NPT=m +CONFIG_IP6_NF_TARGET_REJECT=m +CONFIG_IP6_NF_TARGET_SYNPROXY=m +CONFIG_IPACK_BUS=m +CONFIG_IPC_NS=y +# CONFIG_IPDDP is not set +CONFIG_IPMI_DEVICE_INTERFACE=m +CONFIG_IPMI_DMI_DECODE=y +CONFIG_IPMI_HANDLER=m +# CONFIG_IPMI_PANIC_EVENT is not set +CONFIG_IPMI_PLAT_DATA=y +CONFIG_IPMI_POWEROFF=m +CONFIG_IPMI_SI=m +CONFIG_IPMI_SSIF=m +CONFIG_IPMI_WATCHDOG=m +CONFIG_IPV6=y +CONFIG_IPV6_FOU=m +CONFIG_IPV6_FOU_TUNNEL=m +CONFIG_IPV6_GRE=m +CONFIG_IPV6_ILA=m +CONFIG_IPV6_MIP6=m +CONFIG_IPV6_MROUTE=y +CONFIG_IPV6_MROUTE_MULTIPLE_TABLES=y +CONFIG_IPV6_MULTIPLE_TABLES=y +CONFIG_IPV6_NDISC_NODETYPE=y +# CONFIG_IPV6_OPTIMISTIC_DAD is not set +CONFIG_IPV6_PIMSM_V2=y +CONFIG_IPV6_ROUTER_PREF=y +CONFIG_IPV6_ROUTE_INFO=y +# CONFIG_IPV6_RPL_LWTUNNEL is not set +CONFIG_IPV6_SEG6_BPF=y +CONFIG_IPV6_SEG6_HMAC=y +CONFIG_IPV6_SEG6_LWTUNNEL=y +CONFIG_IPV6_SIT=m +CONFIG_IPV6_SIT_6RD=y +CONFIG_IPV6_SUBTREES=y +CONFIG_IPV6_TUNNEL=m +CONFIG_IPV6_VTI=m +CONFIG_IPVLAN=m +CONFIG_IPVLAN_L3S=y +CONFIG_IPVTAP=m +CONFIG_IP_ADVANCED_ROUTER=y +CONFIG_IP_DCCP=m +# CONFIG_IP_DCCP_CCID2_DEBUG is not set +# CONFIG_IP_DCCP_CCID3 is not set +# CONFIG_IP_DCCP_DEBUG is not set +CONFIG_IP_FIB_TRIE_STATS=y +CONFIG_IP_MROUTE=y +CONFIG_IP_MROUTE_COMMON=y +# CONFIG_IP_MROUTE_MULTIPLE_TABLES is not set +CONFIG_IP_MULTICAST=y +CONFIG_IP_MULTIPLE_TABLES=y +CONFIG_IP_NF_ARPFILTER=m +CONFIG_IP_NF_ARPTABLES=m +CONFIG_IP_NF_ARP_MANGLE=m +CONFIG_IP_NF_FILTER=m +CONFIG_IP_NF_IPTABLES=m +CONFIG_IP_NF_MANGLE=m +CONFIG_IP_NF_MATCH_AH=m +CONFIG_IP_NF_MATCH_ECN=m +CONFIG_IP_NF_MATCH_RPFILTER=m +CONFIG_IP_NF_MATCH_TTL=m +CONFIG_IP_NF_NAT=m +CONFIG_IP_NF_RAW=m +CONFIG_IP_NF_SECURITY=m +CONFIG_IP_NF_TARGET_CLUSTERIP=m +CONFIG_IP_NF_TARGET_ECN=m +CONFIG_IP_NF_TARGET_MASQUERADE=m +CONFIG_IP_NF_TARGET_NETMAP=m +CONFIG_IP_NF_TARGET_REDIRECT=m +CONFIG_IP_NF_TARGET_REJECT=m +CONFIG_IP_NF_TARGET_SYNPROXY=m +CONFIG_IP_NF_TARGET_TTL=m +CONFIG_IP_PIMSM_V1=y +CONFIG_IP_PIMSM_V2=y +# CONFIG_IP_PNP is not set +CONFIG_IP_ROUTE_CLASSID=y +CONFIG_IP_ROUTE_MULTIPATH=y +CONFIG_IP_ROUTE_VERBOSE=y +CONFIG_IP_SCTP=m +CONFIG_IP_SET=m +CONFIG_IP_SET_BITMAP_IP=m +CONFIG_IP_SET_BITMAP_IPMAC=m +CONFIG_IP_SET_BITMAP_PORT=m +CONFIG_IP_SET_HASH_IP=m +CONFIG_IP_SET_HASH_IPMAC=m +CONFIG_IP_SET_HASH_IPMARK=m +CONFIG_IP_SET_HASH_IPPORT=m +CONFIG_IP_SET_HASH_IPPORTIP=m +CONFIG_IP_SET_HASH_IPPORTNET=m +CONFIG_IP_SET_HASH_MAC=m +CONFIG_IP_SET_HASH_NET=m +CONFIG_IP_SET_HASH_NETIFACE=m +CONFIG_IP_SET_HASH_NETNET=m +CONFIG_IP_SET_HASH_NETPORT=m +CONFIG_IP_SET_HASH_NETPORTNET=m +CONFIG_IP_SET_LIST_SET=m +CONFIG_IP_SET_MAX=256 +CONFIG_IP_VS=m +# CONFIG_IP_VS_DEBUG is not set +CONFIG_IP_VS_DH=m +CONFIG_IP_VS_FO=m +CONFIG_IP_VS_FTP=m +CONFIG_IP_VS_IPV6=y +CONFIG_IP_VS_LBLC=m +CONFIG_IP_VS_LBLCR=m +CONFIG_IP_VS_LC=m +CONFIG_IP_VS_MH=m +CONFIG_IP_VS_MH_TAB_INDEX=12 +CONFIG_IP_VS_NFCT=y +CONFIG_IP_VS_NQ=m +CONFIG_IP_VS_OVF=m +CONFIG_IP_VS_PE_SIP=m +CONFIG_IP_VS_PROTO_AH=y +CONFIG_IP_VS_PROTO_AH_ESP=y +CONFIG_IP_VS_PROTO_ESP=y +CONFIG_IP_VS_PROTO_SCTP=y +CONFIG_IP_VS_PROTO_TCP=y +CONFIG_IP_VS_PROTO_UDP=y +CONFIG_IP_VS_RR=m +CONFIG_IP_VS_SED=m +CONFIG_IP_VS_SH=m +CONFIG_IP_VS_SH_TAB_BITS=8 +CONFIG_IP_VS_TAB_BITS=12 +CONFIG_IP_VS_WLC=m +CONFIG_IP_VS_WRR=m +# CONFIG_IRQSOFF_TRACER is not set +CONFIG_IRQ_BYPASS_MANAGER=y +CONFIG_IRQ_DOMAIN=y +CONFIG_IRQ_DOMAIN_HIERARCHY=y +CONFIG_IRQ_FORCED_THREADING=y +# CONFIG_IRQ_FORCED_THREADING_DEFAULT is not set +CONFIG_IRQ_MSI_IOMMU=y +CONFIG_IRQ_POLL=y +CONFIG_IRQ_REMAP=y +CONFIG_IRQ_SIM=y +# CONFIG_IRQ_TIME_ACCOUNTING is not set +CONFIG_IRQ_WORK=y +CONFIG_IR_ENE=m +CONFIG_IR_FINTEK=m +# CONFIG_IR_IGORPLUGUSB is not set +# CONFIG_IR_IGUANA is not set +# CONFIG_IR_IMON is not set +CONFIG_IR_IMON_DECODER=m +# CONFIG_IR_IMON_RAW is not set +CONFIG_IR_ITE_CIR=m +CONFIG_IR_JVC_DECODER=m +# CONFIG_IR_MCEUSB is not set +CONFIG_IR_MCE_KBD_DECODER=m +CONFIG_IR_NEC_DECODER=m +CONFIG_IR_NUVOTON=m +CONFIG_IR_RC5_DECODER=m +CONFIG_IR_RC6_DECODER=m +CONFIG_IR_RCMM_DECODER=m +# CONFIG_IR_REDRAT3 is not set +CONFIG_IR_SANYO_DECODER=m +CONFIG_IR_SERIAL=m +CONFIG_IR_SERIAL_TRANSMITTER=y +CONFIG_IR_SHARP_DECODER=m +CONFIG_IR_SIR=m +CONFIG_IR_SONY_DECODER=m +# CONFIG_IR_STREAMZAP is not set +# CONFIG_IR_TTUSBIR is not set +CONFIG_IR_WINBOND_CIR=m +CONFIG_IR_XMP_DECODER=m +CONFIG_ISA_BUS=y +CONFIG_ISA_BUS_API=y +CONFIG_ISA_DMA_API=y +CONFIG_ISCSI_BOOT_SYSFS=m +CONFIG_ISCSI_IBFT=m +CONFIG_ISCSI_IBFT_FIND=y +CONFIG_ISCSI_TARGET=m +# CONFIG_ISCSI_TARGET_CXGB4 is not set +CONFIG_ISCSI_TCP=m +# CONFIG_ISDN is not set +CONFIG_ISI=m +CONFIG_ISL29003=m +CONFIG_ISL29020=m +CONFIG_ISO9660_FS=m +CONFIG_IT8712F_WDT=m +CONFIG_IT87_WDT=m +CONFIG_ITCO_VENDOR_SUPPORT=y +CONFIG_ITCO_WDT=m +CONFIG_IXGB=m +CONFIG_IXGBE=m +CONFIG_IXGBEVF=m +CONFIG_IXGBEVF_IPSEC=y +CONFIG_IXGBE_DCA=y +CONFIG_IXGBE_DCB=y +CONFIG_IXGBE_HWMON=y +CONFIG_IXGBE_IPSEC=y +CONFIG_JAILHOUSE_GUEST=y +CONFIG_JBD2=y +# CONFIG_JBD2_DEBUG is not set +# CONFIG_JFS_DEBUG is not set +CONFIG_JFS_FS=m +CONFIG_JFS_POSIX_ACL=y +CONFIG_JFS_SECURITY=y +CONFIG_JFS_STATISTICS=y +CONFIG_JME=m +CONFIG_JOLIET=y +CONFIG_JUMP_LABEL=y +CONFIG_KALLSYMS=y +CONFIG_KALLSYMS_ABSOLUTE_PERCPU=y +CONFIG_KALLSYMS_ALL=y +CONFIG_KALLSYMS_BASE_RELATIVE=y +CONFIG_KARMA_PARTITION=y +# CONFIG_KASAN is not set +CONFIG_KASAN_STACK=1 +CONFIG_KCMP=y +# CONFIG_KCOV is not set +CONFIG_KDB_CONTINUE_CATASTROPHIC=0 +CONFIG_KDB_DEFAULT_ENABLE=0x1 +CONFIG_KDB_KEYBOARD=y +# CONFIG_KERNEL_BZIP2 is not set +CONFIG_KERNEL_GZIP=y +# CONFIG_KERNEL_LZ4 is not set +# CONFIG_KERNEL_LZMA is not set +# CONFIG_KERNEL_LZO is not set +# CONFIG_KERNEL_XZ is not set +CONFIG_KERNFS=y +CONFIG_KEXEC=y +CONFIG_KEXEC_BZIMAGE_VERIFY_SIG=y +CONFIG_KEXEC_CORE=y +CONFIG_KEXEC_FILE=y +CONFIG_KEXEC_JUMP=y +CONFIG_KEXEC_SIG=y +# CONFIG_KEXEC_SIG_FORCE is not set +# CONFIG_KEYBOARD_ADP5588 is not set +# CONFIG_KEYBOARD_ADP5589 is not set +CONFIG_KEYBOARD_APPLESPI=m +CONFIG_KEYBOARD_ATKBD=y +CONFIG_KEYBOARD_DLINK_DIR685=m +# CONFIG_KEYBOARD_GPIO is not set +CONFIG_KEYBOARD_GPIO_POLLED=m +CONFIG_KEYBOARD_IQS62X=m +# CONFIG_KEYBOARD_LKKBD is not set +# CONFIG_KEYBOARD_LM8323 is not set +# CONFIG_KEYBOARD_LM8333 is not set +# CONFIG_KEYBOARD_MATRIX is not set +# CONFIG_KEYBOARD_MAX7359 is not set +# CONFIG_KEYBOARD_MCS is not set +# CONFIG_KEYBOARD_MPR121 is not set +# CONFIG_KEYBOARD_NEWTON is not set +# CONFIG_KEYBOARD_OPENCORES is not set +CONFIG_KEYBOARD_QT1050=m +# CONFIG_KEYBOARD_QT1070 is not set +# CONFIG_KEYBOARD_QT2160 is not set +# CONFIG_KEYBOARD_SAMSUNG is not set +# CONFIG_KEYBOARD_STOWAWAY is not set +# CONFIG_KEYBOARD_SUNKBD is not set +# CONFIG_KEYBOARD_TCA6416 is not set +# CONFIG_KEYBOARD_TCA8418 is not set +# CONFIG_KEYBOARD_TM2_TOUCHKEY is not set +# CONFIG_KEYBOARD_XTKBD is not set +CONFIG_KEYS=y +CONFIG_KEYS_REQUEST_CACHE=y +CONFIG_KEY_DH_OPERATIONS=y +CONFIG_KEY_NOTIFICATIONS=y +CONFIG_KGDB=y +CONFIG_KGDB_KDB=y +CONFIG_KGDB_LOW_LEVEL_TRAP=y +CONFIG_KGDB_SERIAL_CONSOLE=y +# CONFIG_KGDB_TESTS is not set +CONFIG_KPC2000=y +CONFIG_KPC2000_CORE=m +CONFIG_KPC2000_DMA=m +CONFIG_KPC2000_I2C=m +CONFIG_KPC2000_SPI=m +CONFIG_KPROBES=y +CONFIG_KPROBES_ON_FTRACE=y +CONFIG_KPROBE_EVENTS=y +# CONFIG_KPROBE_EVENTS_ON_NOTRACE is not set +# CONFIG_KPROBE_EVENT_GEN_TEST is not set +CONFIG_KRETPROBES=y +CONFIG_KS0108=m +CONFIG_KS0108_DELAY=2 +CONFIG_KS0108_PORT=0x378 +CONFIG_KSM=y +# CONFIG_KUNIT is not set +CONFIG_KVM=m +CONFIG_KVM_AMD=m +CONFIG_KVM_AMD_SEV=y +CONFIG_KVM_ASYNC_PF=y +CONFIG_KVM_COMPAT=y +CONFIG_KVM_GENERIC_DIRTYLOG_READ_PROTECT=y +CONFIG_KVM_GUEST=y +CONFIG_KVM_INTEL=m +CONFIG_KVM_MMIO=y +# CONFIG_KVM_MMU_AUDIT is not set +CONFIG_KVM_VFIO=y +CONFIG_KVM_WERROR=y +CONFIG_L2TP=m +CONFIG_L2TP_DEBUGFS=m +CONFIG_L2TP_ETH=m +CONFIG_L2TP_IP=m +CONFIG_L2TP_V3=y +CONFIG_LAN743X=m +# CONFIG_LANMEDIA is not set +CONFIG_LAPB=m +CONFIG_LAPBETHER=m +# CONFIG_LATENCYTOP is not set +CONFIG_LATTICE_ECP3_CONFIG=m +# CONFIG_LCD_CLASS_DEVICE is not set +CONFIG_LDISC_AUTOLOAD=y +# CONFIG_LDM_DEBUG is not set +CONFIG_LDM_PARTITION=y +CONFIG_LD_VERSION=234000000 +CONFIG_LEDS_APU=m +# CONFIG_LEDS_BD2802 is not set +# CONFIG_LEDS_BLINKM is not set +CONFIG_LEDS_BRIGHTNESS_HW_CHANGED=y +CONFIG_LEDS_CLASS=m +# CONFIG_LEDS_CLASS_FLASH is not set +# CONFIG_LEDS_CLEVO_MAIL is not set +# CONFIG_LEDS_DA9052 is not set +# CONFIG_LEDS_DAC124S085 is not set +CONFIG_LEDS_GPIO=m +# CONFIG_LEDS_INTEL_SS4200 is not set +# CONFIG_LEDS_LM3530 is not set +CONFIG_LEDS_LM3532=m +# CONFIG_LEDS_LM355x is not set +CONFIG_LEDS_LM36274=m +# CONFIG_LEDS_LM3642 is not set +# CONFIG_LEDS_LP3944 is not set +# CONFIG_LEDS_LP3952 is not set +# CONFIG_LEDS_LP5521 is not set +# CONFIG_LEDS_LP5523 is not set +# CONFIG_LEDS_LP5562 is not set +# CONFIG_LEDS_LP8501 is not set +# CONFIG_LEDS_MC13783 is not set +# CONFIG_LEDS_MENF21BMC is not set +# CONFIG_LEDS_MLXCPLD is not set +CONFIG_LEDS_MLXREG=m +# CONFIG_LEDS_NIC78BX is not set +# CONFIG_LEDS_PCA9532 is not set +# CONFIG_LEDS_PCA955X is not set +# CONFIG_LEDS_PCA963X is not set +# CONFIG_LEDS_REGULATOR is not set +# CONFIG_LEDS_TCA6507 is not set +CONFIG_LEDS_TI_LMU_COMMON=m +# CONFIG_LEDS_TLC591XX is not set +CONFIG_LEDS_TPS6105X=m +CONFIG_LEDS_TRIGGERS=y +CONFIG_LEDS_TRIGGER_ACTIVITY=m +CONFIG_LEDS_TRIGGER_AUDIO=m +# CONFIG_LEDS_TRIGGER_BACKLIGHT is not set +# CONFIG_LEDS_TRIGGER_CAMERA is not set +# CONFIG_LEDS_TRIGGER_CPU is not set +# CONFIG_LEDS_TRIGGER_DEFAULT_ON is not set +# CONFIG_LEDS_TRIGGER_DISK is not set +# CONFIG_LEDS_TRIGGER_GPIO is not set +# CONFIG_LEDS_TRIGGER_HEARTBEAT is not set +CONFIG_LEDS_TRIGGER_NETDEV=m +# CONFIG_LEDS_TRIGGER_ONESHOT is not set +# CONFIG_LEDS_TRIGGER_PANIC is not set +CONFIG_LEDS_TRIGGER_PATTERN=m +# CONFIG_LEDS_TRIGGER_TIMER is not set +# CONFIG_LEDS_TRIGGER_TRANSIENT is not set +# CONFIG_LEDS_USER is not set +# CONFIG_LEDS_WM831X_STATUS is not set +# CONFIG_LED_TRIGGER_PHY is not set +CONFIG_LEGACY_PTYS=y +CONFIG_LEGACY_PTY_COUNT=0 +CONFIG_LEGACY_VSYSCALL_EMULATE=y +# CONFIG_LEGACY_VSYSCALL_NONE is not set +# CONFIG_LEGACY_VSYSCALL_XONLY is not set +CONFIG_LG_LAPTOP=m +CONFIG_LIBCRC32C=m +# CONFIG_LIBFC is not set +CONFIG_LIBNVDIMM=y +CONFIG_LINEAR_RANGES=y +CONFIG_LIRC=y +CONFIG_LIVEPATCH=y +CONFIG_LLC=m +CONFIG_LLC2=m +CONFIG_LOAD_UEFI_KEYS=y +CONFIG_LOCALVERSION="" +# CONFIG_LOCALVERSION_AUTO is not set +CONFIG_LOCKD=m +CONFIG_LOCKDEP_SUPPORT=y +CONFIG_LOCKD_V4=y +CONFIG_LOCKUP_DETECTOR=y +CONFIG_LOCK_DEBUGGING_SUPPORT=y +CONFIG_LOCK_DOWN_IN_SECURE_BOOT=y +# CONFIG_LOCK_DOWN_KERNEL_FORCE_CONFIDENTIALITY is not set +# CONFIG_LOCK_DOWN_KERNEL_FORCE_INTEGRITY is not set +CONFIG_LOCK_DOWN_KERNEL_FORCE_NONE=y +# CONFIG_LOCK_EVENT_COUNTS is not set +CONFIG_LOCK_SPIN_ON_OWNER=y +# CONFIG_LOCK_STAT is not set +CONFIG_LOCK_TORTURE_TEST=m +# CONFIG_LOGO is not set +CONFIG_LOG_BUF_SHIFT=18 +CONFIG_LOG_CPU_MAX_BUF_SHIFT=12 +CONFIG_LOOPBACK_TARGET=m +CONFIG_LPC_ICH=m +CONFIG_LPC_SCH=m +# CONFIG_LP_CONSOLE is not set +CONFIG_LRU_CACHE=m +# CONFIG_LSI_ET1011C_PHY is not set +CONFIG_LSM="lockdown,yama,integrity,apparmor" +CONFIG_LSM_MMAP_MIN_ADDR=0 +# CONFIG_LTE_GDM724X is not set +CONFIG_LTPC=m +CONFIG_LWTUNNEL=y +CONFIG_LWTUNNEL_BPF=y +# CONFIG_LXT_PHY is not set +CONFIG_LZ4HC_COMPRESS=m +CONFIG_LZ4_COMPRESS=y +CONFIG_LZ4_DECOMPRESS=y +CONFIG_LZO_COMPRESS=y +CONFIG_LZO_DECOMPRESS=y +CONFIG_MAC80211=m +CONFIG_MAC80211_DEBUGFS=y +# CONFIG_MAC80211_DEBUG_MENU is not set +CONFIG_MAC80211_HAS_RC=y +CONFIG_MAC80211_LEDS=y +CONFIG_MAC80211_MESH=y +CONFIG_MAC80211_MESSAGE_TRACING=y +CONFIG_MAC80211_RC_DEFAULT="minstrel_ht" +CONFIG_MAC80211_RC_DEFAULT_MINSTREL=y +CONFIG_MAC80211_RC_MINSTREL=y +CONFIG_MAC80211_STA_HASH_MAX_SIZE=0 +CONFIG_MAC802154=m +# CONFIG_MACB is not set +CONFIG_MACHZ_WDT=m +# CONFIG_MACINTOSH_DRIVERS is not set +CONFIG_MACSEC=m +CONFIG_MACVLAN=m +CONFIG_MACVTAP=m +CONFIG_MAC_PARTITION=y +CONFIG_MADERA_IRQ=m +CONFIG_MAGIC_SYSRQ=y +CONFIG_MAGIC_SYSRQ_DEFAULT_ENABLE=0x01b6 +CONFIG_MAGIC_SYSRQ_SERIAL=y +CONFIG_MAGIC_SYSRQ_SERIAL_SEQUENCE="" +CONFIG_MAILBOX=y +CONFIG_MANAGER_SBS=m +CONFIG_MANDATORY_FILE_LOCKING=y +CONFIG_MARVELL_10G_PHY=m +# CONFIG_MARVELL_PHY is not set +# CONFIG_MATOM is not set +CONFIG_MAX63XX_WATCHDOG=m +CONFIG_MAXSMP=y +CONFIG_MAX_RAW_DEVS=256 +CONFIG_MCB=m +CONFIG_MCB_LPC=m +CONFIG_MCB_PCI=m +# CONFIG_MCORE2 is not set +CONFIG_MD=y +CONFIG_MDIO=m +CONFIG_MDIO_BCM_UNIMAC=m +# CONFIG_MDIO_BITBANG is not set +CONFIG_MDIO_BUS=y +CONFIG_MDIO_DEVICE=y +CONFIG_MDIO_I2C=m +CONFIG_MDIO_MSCC_MIIM=m +CONFIG_MDIO_MVUSB=m +# CONFIG_MDIO_THUNDER is not set +CONFIG_MDIO_XPCS=m +CONFIG_MD_AUTODETECT=y +CONFIG_MD_CLUSTER=m +CONFIG_MD_FAULTY=m +CONFIG_MD_LINEAR=m +CONFIG_MD_MULTIPATH=m +CONFIG_MD_RAID0=m +CONFIG_MD_RAID1=m +CONFIG_MD_RAID10=m +CONFIG_MD_RAID456=m +# CONFIG_MEDIA_ANALOG_TV_SUPPORT is not set +# CONFIG_MEDIA_CAMERA_SUPPORT is not set +CONFIG_MEDIA_CEC_RC=y +CONFIG_MEDIA_CEC_SUPPORT=y +CONFIG_MEDIA_CONTROLLER=y +CONFIG_MEDIA_CONTROLLER_REQUEST_API=y +# CONFIG_MEDIA_DIGITAL_TV_SUPPORT is not set +# CONFIG_MEDIA_PCI_SUPPORT is not set +CONFIG_MEDIA_PLATFORM_SUPPORT=y +# CONFIG_MEDIA_RADIO_SUPPORT is not set +# CONFIG_MEDIA_SDR_SUPPORT is not set +CONFIG_MEDIA_SUBDRV_AUTOSELECT=y +CONFIG_MEDIA_SUPPORT=m +CONFIG_MEDIA_SUPPORT_FILTER=y +CONFIG_MEDIA_TEST_SUPPORT=y +# CONFIG_MEDIA_USB_SUPPORT is not set +CONFIG_MEGARAID_LEGACY=m +CONFIG_MEGARAID_MAILBOX=m +CONFIG_MEGARAID_MM=m +CONFIG_MEGARAID_NEWGEN=y +CONFIG_MEGARAID_SAS=m +CONFIG_MELLANOX_PLATFORM=y +CONFIG_MEMBARRIER=y +CONFIG_MEMCG=y +CONFIG_MEMCG_KMEM=y +CONFIG_MEMCG_SWAP=y +CONFIG_MEMFD_CREATE=y +CONFIG_MEMORY=y +CONFIG_MEMORY_BALLOON=y +CONFIG_MEMORY_FAILURE=y +CONFIG_MEMORY_HOTPLUG=y +CONFIG_MEMORY_HOTPLUG_DEFAULT_ONLINE=y +CONFIG_MEMORY_HOTPLUG_SPARSE=y +CONFIG_MEMORY_HOTREMOVE=y +CONFIG_MEMORY_ISOLATION=y +CONFIG_MEMORY_NOTIFIER_ERROR_INJECT=m +CONFIG_MEMREGION=y +# CONFIG_MEMSTICK is not set +CONFIG_MEMTEST=y +CONFIG_MEM_SOFT_DIRTY=y +CONFIG_MENF21BMC_WATCHDOG=m +CONFIG_MENZ069_WATCHDOG=m +CONFIG_MEN_A21_WDT=m +CONFIG_MESSAGE_LOGLEVEL_DEFAULT=4 +# CONFIG_MFD_88PM800 is not set +CONFIG_MFD_88PM805=m +CONFIG_MFD_ARIZONA=y +CONFIG_MFD_ARIZONA_I2C=m +CONFIG_MFD_ARIZONA_SPI=m +CONFIG_MFD_AXP20X=m +CONFIG_MFD_AXP20X_I2C=m +CONFIG_MFD_BCM590XX=m +CONFIG_MFD_BD9571MWV=m +CONFIG_MFD_CORE=y +# CONFIG_MFD_CROS_EC is not set +CONFIG_MFD_CS47L15=y +CONFIG_MFD_CS47L24=y +CONFIG_MFD_CS47L35=y +CONFIG_MFD_CS47L85=y +CONFIG_MFD_CS47L90=y +CONFIG_MFD_CS47L92=y +CONFIG_MFD_DA9052_SPI=y +# CONFIG_MFD_DA9062 is not set +CONFIG_MFD_DA9063=m +# CONFIG_MFD_DA9150 is not set +# CONFIG_MFD_DLN2 is not set +CONFIG_MFD_INTEL_LPSS=m +CONFIG_MFD_INTEL_LPSS_ACPI=m +CONFIG_MFD_INTEL_LPSS_PCI=m +CONFIG_MFD_INTEL_MSIC=y +CONFIG_MFD_INTEL_PMC_BXT=m +CONFIG_MFD_INTEL_QUARK_I2C_GPIO=m +CONFIG_MFD_IQS62X=m +CONFIG_MFD_JANZ_CMODIO=m +# CONFIG_MFD_KEMPLD is not set +# CONFIG_MFD_LM3533 is not set +CONFIG_MFD_LP3943=m +CONFIG_MFD_MADERA=m +CONFIG_MFD_MADERA_I2C=m +CONFIG_MFD_MADERA_SPI=m +CONFIG_MFD_MAX14577=m +CONFIG_MFD_MAX77693=m +CONFIG_MFD_MAX8907=m +CONFIG_MFD_MC13XXX=m +CONFIG_MFD_MC13XXX_I2C=m +CONFIG_MFD_MC13XXX_SPI=m +CONFIG_MFD_MENF21BMC=m +CONFIG_MFD_MP2629=m +CONFIG_MFD_MT6360=m +# CONFIG_MFD_MT6397 is not set +CONFIG_MFD_PCF50633=m +CONFIG_MFD_RDC321X=m +CONFIG_MFD_RETU=m +CONFIG_MFD_RT5033=m +# CONFIG_MFD_SI476X_CORE is not set +CONFIG_MFD_SKY81452=m +CONFIG_MFD_SM501=m +CONFIG_MFD_SM501_GPIO=y +CONFIG_MFD_SYSCON=y +CONFIG_MFD_TI_AM335X_TSCADC=m +CONFIG_MFD_TI_LMU=m +CONFIG_MFD_TI_LP873X=m +CONFIG_MFD_TPS65086=m +CONFIG_MFD_TPS65912=y +CONFIG_MFD_TPS65912_I2C=m +CONFIG_MFD_TPS65912_SPI=y +CONFIG_MFD_TQMX86=m +# CONFIG_MFD_VIPERBOARD is not set +CONFIG_MFD_VX855=m +CONFIG_MFD_WCD934X=m +# CONFIG_MFD_WL1273_CORE is not set +CONFIG_MFD_WM5102=y +CONFIG_MFD_WM5110=y +CONFIG_MFD_WM831X=y +CONFIG_MFD_WM831X_SPI=y +CONFIG_MFD_WM8994=m +CONFIG_MFD_WM8997=y +CONFIG_MFD_WM8998=y +CONFIG_MHI_BUS=m +# CONFIG_MICREL_KS8995MA is not set +# CONFIG_MICREL_PHY is not set +# CONFIG_MICROCHIP_PHY is not set +CONFIG_MICROCHIP_T1_PHY=m +CONFIG_MICROCODE=y +CONFIG_MICROCODE_AMD=y +CONFIG_MICROCODE_INTEL=y +CONFIG_MICROCODE_OLD_INTERFACE=y +# CONFIG_MICROSEMI_PHY is not set +CONFIG_MIGRATION=y +CONFIG_MII=m +CONFIG_MINIX_FS=m +CONFIG_MINIX_SUBPARTITION=y +CONFIG_MISC_ALCOR_PCI=m +CONFIG_MISC_FILESYSTEMS=y +CONFIG_MISC_RTSX=m +CONFIG_MISC_RTSX_PCI=m +# CONFIG_MISC_RTSX_USB is not set +# CONFIG_MK8 is not set +# CONFIG_MKISS is not set +CONFIG_MLX4_CORE=m +CONFIG_MLX4_CORE_GEN2=y +CONFIG_MLX4_DEBUG=y +CONFIG_MLX4_EN=m +CONFIG_MLX4_EN_DCB=y +CONFIG_MLX4_INFINIBAND=m +CONFIG_MLX5_ACCEL=y +CONFIG_MLX5_CLS_ACT=y +CONFIG_MLX5_CORE=m +CONFIG_MLX5_CORE_EN=y +CONFIG_MLX5_CORE_EN_DCB=y +CONFIG_MLX5_CORE_IPOIB=y +CONFIG_MLX5_EN_ARFS=y +CONFIG_MLX5_EN_IPSEC=y +CONFIG_MLX5_EN_RXNFC=y +CONFIG_MLX5_EN_TLS=y +CONFIG_MLX5_ESWITCH=y +CONFIG_MLX5_FPGA=y +CONFIG_MLX5_FPGA_IPSEC=y +CONFIG_MLX5_FPGA_TLS=y +CONFIG_MLX5_INFINIBAND=m +CONFIG_MLX5_MPFS=y +CONFIG_MLX5_SW_STEERING=y +CONFIG_MLX5_TC_CT=y +CONFIG_MLX5_TLS=y +CONFIG_MLXFW=m +CONFIG_MLXREG_HOTPLUG=m +CONFIG_MLXREG_IO=m +CONFIG_MLXSW_CORE=m +CONFIG_MLXSW_CORE_HWMON=y +CONFIG_MLXSW_CORE_THERMAL=y +CONFIG_MLXSW_I2C=m +CONFIG_MLXSW_MINIMAL=m +CONFIG_MLXSW_PCI=m +CONFIG_MLXSW_SPECTRUM=m +CONFIG_MLXSW_SPECTRUM_DCB=y +CONFIG_MLXSW_SWITCHIB=m +CONFIG_MLXSW_SWITCHX2=m +CONFIG_MLX_PLATFORM=m +CONFIG_MLX_WDT=m +# CONFIG_MMC is not set +CONFIG_MMCONF_FAM10H=y +CONFIG_MMIOTRACE=y +# CONFIG_MMIOTRACE_TEST is not set +CONFIG_MMU=y +CONFIG_MMU_GATHER_RCU_TABLE_FREE=y +CONFIG_MMU_GATHER_TABLE_FREE=y +CONFIG_MMU_NOTIFIER=y +CONFIG_MODIFY_LDT_SYSCALL=y +CONFIG_MODULES=y +CONFIG_MODULES_TREE_LOOKUP=y +CONFIG_MODULES_USE_ELF_RELA=y +# CONFIG_MODULE_ALLOW_MISSING_NAMESPACE_IMPORTS is not set +# CONFIG_MODULE_COMPRESS is not set +# CONFIG_MODULE_FORCE_LOAD is not set +# CONFIG_MODULE_FORCE_UNLOAD is not set +CONFIG_MODULE_SIG=y +CONFIG_MODULE_SIG_ALL=y +# CONFIG_MODULE_SIG_FORCE is not set +CONFIG_MODULE_SIG_FORMAT=y +CONFIG_MODULE_SIG_HASH="sha512" +CONFIG_MODULE_SIG_KEY="certs/signing_key.pem" +# CONFIG_MODULE_SIG_SHA1 is not set +# CONFIG_MODULE_SIG_SHA224 is not set +# CONFIG_MODULE_SIG_SHA256 is not set +# CONFIG_MODULE_SIG_SHA384 is not set +CONFIG_MODULE_SIG_SHA512=y +CONFIG_MODULE_SRCVERSION_ALL=y +CONFIG_MODULE_UNLOAD=y +CONFIG_MODVERSIONS=y +CONFIG_MOST=m +CONFIG_MOST_CDEV=m +CONFIG_MOST_COMPONENTS=m +CONFIG_MOST_I2C=m +CONFIG_MOST_NET=m +# CONFIG_MOST_USB is not set +CONFIG_MOST_VIDEO=m +CONFIG_MOXA_INTELLIO=m +CONFIG_MOXA_SMARTIO=m +CONFIG_MPILIB=y +CONFIG_MPLS=y +CONFIG_MPLS_IPTUNNEL=m +CONFIG_MPLS_ROUTING=m +# CONFIG_MPSC is not set +CONFIG_MPTCP=y +# CONFIG_MPTCP_HMAC_TEST is not set +CONFIG_MPTCP_IPV6=y +CONFIG_MQ_IOSCHED_DEADLINE=y +CONFIG_MQ_IOSCHED_KYBER=m +CONFIG_MRP=m +CONFIG_MSCC_OCELOT_SWITCH=m +CONFIG_MSDOS_FS=m +CONFIG_MSDOS_PARTITION=y +# CONFIG_MSI_LAPTOP is not set +# CONFIG_MSI_WMI is not set +# CONFIG_MTD is not set +CONFIG_MTRR=y +CONFIG_MTRR_SANITIZER=y +CONFIG_MTRR_SANITIZER_ENABLE_DEFAULT=1 +CONFIG_MTRR_SANITIZER_SPARE_REG_NR_DEFAULT=1 +CONFIG_MULTIPLEXER=m +CONFIG_MULTIUSER=y +CONFIG_MUTEX_SPIN_ON_OWNER=y +CONFIG_MUX_ADG792A=m +CONFIG_MUX_ADGS1408=m +CONFIG_MUX_GPIO=m +CONFIG_MVMDIO=m +# CONFIG_MWAVE is not set +CONFIG_MXM_WMI=m +CONFIG_NAMESPACES=y +# CONFIG_NATIONAL_PHY is not set +CONFIG_NCSI_OEM_CMD_GET_MAC=y +CONFIG_ND_BLK=y +CONFIG_ND_BTT=y +CONFIG_ND_CLAIM=y +CONFIG_ND_PFN=y +CONFIG_NEED_DMA_MAP_STATE=y +CONFIG_NEED_MULTIPLE_NODES=y +CONFIG_NEED_PER_CPU_EMBED_FIRST_CHUNK=y +CONFIG_NEED_PER_CPU_PAGE_FIRST_CHUNK=y +CONFIG_NEED_SG_DMA_LENGTH=y +CONFIG_NET=y +CONFIG_NETCONSOLE=m +CONFIG_NETCONSOLE_DYNAMIC=y +CONFIG_NETDEVICES=y +CONFIG_NETDEVSIM=m +# CONFIG_NETDEV_NOTIFIER_ERROR_INJECT is not set +CONFIG_NETFILTER=y +CONFIG_NETFILTER_ADVANCED=y +CONFIG_NETFILTER_CONNCOUNT=m +CONFIG_NETFILTER_FAMILY_ARP=y +CONFIG_NETFILTER_FAMILY_BRIDGE=y +CONFIG_NETFILTER_INGRESS=y +CONFIG_NETFILTER_NETLINK=m +CONFIG_NETFILTER_NETLINK_ACCT=m +CONFIG_NETFILTER_NETLINK_GLUE_CT=y +CONFIG_NETFILTER_NETLINK_LOG=m +CONFIG_NETFILTER_NETLINK_OSF=m +CONFIG_NETFILTER_NETLINK_QUEUE=m +CONFIG_NETFILTER_SYNPROXY=m +CONFIG_NETFILTER_XTABLES=m +CONFIG_NETFILTER_XT_CONNMARK=m +CONFIG_NETFILTER_XT_MARK=m +CONFIG_NETFILTER_XT_MATCH_ADDRTYPE=m +CONFIG_NETFILTER_XT_MATCH_BPF=m +CONFIG_NETFILTER_XT_MATCH_CGROUP=m +CONFIG_NETFILTER_XT_MATCH_CLUSTER=m +CONFIG_NETFILTER_XT_MATCH_COMMENT=m +CONFIG_NETFILTER_XT_MATCH_CONNBYTES=m +CONFIG_NETFILTER_XT_MATCH_CONNLABEL=m +CONFIG_NETFILTER_XT_MATCH_CONNLIMIT=m +CONFIG_NETFILTER_XT_MATCH_CONNMARK=m +CONFIG_NETFILTER_XT_MATCH_CONNTRACK=m +CONFIG_NETFILTER_XT_MATCH_CPU=m +CONFIG_NETFILTER_XT_MATCH_DCCP=m +CONFIG_NETFILTER_XT_MATCH_DEVGROUP=m +CONFIG_NETFILTER_XT_MATCH_DSCP=m +CONFIG_NETFILTER_XT_MATCH_ECN=m +CONFIG_NETFILTER_XT_MATCH_ESP=m +CONFIG_NETFILTER_XT_MATCH_HASHLIMIT=m +CONFIG_NETFILTER_XT_MATCH_HELPER=m +CONFIG_NETFILTER_XT_MATCH_HL=m +CONFIG_NETFILTER_XT_MATCH_IPCOMP=m +CONFIG_NETFILTER_XT_MATCH_IPRANGE=m +CONFIG_NETFILTER_XT_MATCH_IPVS=m +CONFIG_NETFILTER_XT_MATCH_L2TP=m +CONFIG_NETFILTER_XT_MATCH_LENGTH=m +CONFIG_NETFILTER_XT_MATCH_LIMIT=m +CONFIG_NETFILTER_XT_MATCH_MAC=m +CONFIG_NETFILTER_XT_MATCH_MARK=m +CONFIG_NETFILTER_XT_MATCH_MULTIPORT=m +CONFIG_NETFILTER_XT_MATCH_NFACCT=m +CONFIG_NETFILTER_XT_MATCH_OSF=m +CONFIG_NETFILTER_XT_MATCH_OWNER=m +CONFIG_NETFILTER_XT_MATCH_PHYSDEV=m +CONFIG_NETFILTER_XT_MATCH_PKTTYPE=m +CONFIG_NETFILTER_XT_MATCH_POLICY=m +CONFIG_NETFILTER_XT_MATCH_QUOTA=m +CONFIG_NETFILTER_XT_MATCH_RATEEST=m +CONFIG_NETFILTER_XT_MATCH_REALM=m +CONFIG_NETFILTER_XT_MATCH_RECENT=m +CONFIG_NETFILTER_XT_MATCH_SCTP=m +CONFIG_NETFILTER_XT_MATCH_SOCKET=m +CONFIG_NETFILTER_XT_MATCH_STATE=m +CONFIG_NETFILTER_XT_MATCH_STATISTIC=m +CONFIG_NETFILTER_XT_MATCH_STRING=m +CONFIG_NETFILTER_XT_MATCH_TCPMSS=m +CONFIG_NETFILTER_XT_MATCH_TIME=m +CONFIG_NETFILTER_XT_MATCH_U32=m +CONFIG_NETFILTER_XT_NAT=m +CONFIG_NETFILTER_XT_SET=m +CONFIG_NETFILTER_XT_TARGET_AUDIT=m +CONFIG_NETFILTER_XT_TARGET_CHECKSUM=m +CONFIG_NETFILTER_XT_TARGET_CLASSIFY=m +CONFIG_NETFILTER_XT_TARGET_CONNMARK=m +CONFIG_NETFILTER_XT_TARGET_CONNSECMARK=m +CONFIG_NETFILTER_XT_TARGET_CT=m +CONFIG_NETFILTER_XT_TARGET_DSCP=m +CONFIG_NETFILTER_XT_TARGET_HL=m +CONFIG_NETFILTER_XT_TARGET_HMARK=m +CONFIG_NETFILTER_XT_TARGET_IDLETIMER=m +CONFIG_NETFILTER_XT_TARGET_LED=m +CONFIG_NETFILTER_XT_TARGET_LOG=m +CONFIG_NETFILTER_XT_TARGET_MARK=m +CONFIG_NETFILTER_XT_TARGET_MASQUERADE=m +CONFIG_NETFILTER_XT_TARGET_NETMAP=m +CONFIG_NETFILTER_XT_TARGET_NFLOG=m +CONFIG_NETFILTER_XT_TARGET_NFQUEUE=m +# CONFIG_NETFILTER_XT_TARGET_NOTRACK is not set +CONFIG_NETFILTER_XT_TARGET_RATEEST=m +CONFIG_NETFILTER_XT_TARGET_REDIRECT=m +CONFIG_NETFILTER_XT_TARGET_SECMARK=m +CONFIG_NETFILTER_XT_TARGET_TCPMSS=m +CONFIG_NETFILTER_XT_TARGET_TCPOPTSTRIP=m +CONFIG_NETFILTER_XT_TARGET_TEE=m +CONFIG_NETFILTER_XT_TARGET_TPROXY=m +CONFIG_NETFILTER_XT_TARGET_TRACE=m +CONFIG_NETLABEL=y +CONFIG_NETLINK_DIAG=m +CONFIG_NETPOLL=y +CONFIG_NETROM=m +CONFIG_NETWORK_FILESYSTEMS=y +# CONFIG_NETWORK_PHY_TIMESTAMPING is not set +CONFIG_NETWORK_SECMARK=y +CONFIG_NET_9P=m +# CONFIG_NET_9P_DEBUG is not set +CONFIG_NET_9P_RDMA=m +CONFIG_NET_9P_VIRTIO=m +CONFIG_NET_ACT_BPF=m +CONFIG_NET_ACT_CONNMARK=m +CONFIG_NET_ACT_CSUM=m +CONFIG_NET_ACT_CT=m +CONFIG_NET_ACT_CTINFO=m +CONFIG_NET_ACT_GACT=m +CONFIG_NET_ACT_GATE=m +# CONFIG_NET_ACT_IFE is not set +CONFIG_NET_ACT_IPT=m +CONFIG_NET_ACT_MIRRED=m +CONFIG_NET_ACT_MPLS=m +CONFIG_NET_ACT_NAT=m +CONFIG_NET_ACT_PEDIT=m +CONFIG_NET_ACT_POLICE=m +CONFIG_NET_ACT_SAMPLE=m +CONFIG_NET_ACT_SIMP=m +CONFIG_NET_ACT_SKBEDIT=m +CONFIG_NET_ACT_SKBMOD=m +CONFIG_NET_ACT_TUNNEL_KEY=m +CONFIG_NET_ACT_VLAN=m +CONFIG_NET_CLS=y +CONFIG_NET_CLS_ACT=y +CONFIG_NET_CLS_BASIC=m +CONFIG_NET_CLS_BPF=m +CONFIG_NET_CLS_CGROUP=m +CONFIG_NET_CLS_FLOW=m +CONFIG_NET_CLS_FLOWER=m +CONFIG_NET_CLS_FW=m +CONFIG_NET_CLS_MATCHALL=m +CONFIG_NET_CLS_ROUTE4=m +CONFIG_NET_CLS_RSVP=m +CONFIG_NET_CLS_RSVP6=m +CONFIG_NET_CLS_TCINDEX=m +CONFIG_NET_CLS_U32=m +CONFIG_NET_CORE=y +CONFIG_NET_DEVLINK=y +CONFIG_NET_DROP_MONITOR=y +CONFIG_NET_DSA=m +CONFIG_NET_DSA_AR9331=m +CONFIG_NET_DSA_BCM_SF2=m +CONFIG_NET_DSA_LANTIQ_GSWIP=m +# CONFIG_NET_DSA_LOOP is not set +CONFIG_NET_DSA_MICROCHIP_KSZ8795=m +CONFIG_NET_DSA_MICROCHIP_KSZ8795_SPI=m +CONFIG_NET_DSA_MICROCHIP_KSZ9477=m +CONFIG_NET_DSA_MICROCHIP_KSZ9477_I2C=m +CONFIG_NET_DSA_MICROCHIP_KSZ9477_SPI=m +CONFIG_NET_DSA_MICROCHIP_KSZ_COMMON=m +CONFIG_NET_DSA_MT7530=m +# CONFIG_NET_DSA_MV88E6060 is not set +# CONFIG_NET_DSA_MV88E6XXX is not set +# CONFIG_NET_DSA_QCA8K is not set +CONFIG_NET_DSA_REALTEK_SMI=m +CONFIG_NET_DSA_SJA1105=m +CONFIG_NET_DSA_SJA1105_PTP=y +CONFIG_NET_DSA_SJA1105_TAS=y +CONFIG_NET_DSA_SJA1105_VL=y +CONFIG_NET_DSA_SMSC_LAN9303=m +CONFIG_NET_DSA_SMSC_LAN9303_I2C=m +CONFIG_NET_DSA_SMSC_LAN9303_MDIO=m +CONFIG_NET_DSA_TAG_8021Q=m +CONFIG_NET_DSA_TAG_AR9331=m +CONFIG_NET_DSA_TAG_BRCM=m +CONFIG_NET_DSA_TAG_BRCM_COMMON=m +CONFIG_NET_DSA_TAG_BRCM_PREPEND=m +CONFIG_NET_DSA_TAG_DSA=m +CONFIG_NET_DSA_TAG_EDSA=m +CONFIG_NET_DSA_TAG_GSWIP=m +CONFIG_NET_DSA_TAG_KSZ=m +CONFIG_NET_DSA_TAG_LAN9303=m +CONFIG_NET_DSA_TAG_MTK=m +CONFIG_NET_DSA_TAG_OCELOT=m +CONFIG_NET_DSA_TAG_QCA=m +CONFIG_NET_DSA_TAG_SJA1105=m +CONFIG_NET_DSA_TAG_TRAILER=m +CONFIG_NET_DSA_VITESSE_VSC73XX=m +CONFIG_NET_DSA_VITESSE_VSC73XX_PLATFORM=m +CONFIG_NET_DSA_VITESSE_VSC73XX_SPI=m +CONFIG_NET_EGRESS=y +CONFIG_NET_EMATCH=y +CONFIG_NET_EMATCH_CANID=m +CONFIG_NET_EMATCH_CMP=m +CONFIG_NET_EMATCH_IPSET=m +CONFIG_NET_EMATCH_IPT=m +CONFIG_NET_EMATCH_META=m +CONFIG_NET_EMATCH_NBYTE=m +CONFIG_NET_EMATCH_STACK=32 +CONFIG_NET_EMATCH_TEXT=m +CONFIG_NET_EMATCH_U32=m +CONFIG_NET_FAILOVER=m +# CONFIG_NET_FC is not set +CONFIG_NET_FLOW_LIMIT=y +CONFIG_NET_FOU=m +CONFIG_NET_FOU_IP_TUNNELS=y +CONFIG_NET_IFE=m +CONFIG_NET_INGRESS=y +CONFIG_NET_IPGRE=m +CONFIG_NET_IPGRE_BROADCAST=y +CONFIG_NET_IPGRE_DEMUX=m +CONFIG_NET_IPIP=m +CONFIG_NET_IPVTI=m +CONFIG_NET_IP_TUNNEL=y +CONFIG_NET_KEY=m +# CONFIG_NET_KEY_MIGRATE is not set +CONFIG_NET_L3_MASTER_DEV=y +CONFIG_NET_MPLS_GSO=m +CONFIG_NET_NCSI=y +CONFIG_NET_NS=y +CONFIG_NET_NSH=m +CONFIG_NET_PKTGEN=m +CONFIG_NET_POLL_CONTROLLER=y +CONFIG_NET_PTP_CLASSIFY=y +CONFIG_NET_REDIRECT=y +CONFIG_NET_RX_BUSY_POLL=y +CONFIG_NET_SB1000=m +CONFIG_NET_SCHED=y +CONFIG_NET_SCH_ATM=m +CONFIG_NET_SCH_CAKE=m +CONFIG_NET_SCH_CBQ=m +CONFIG_NET_SCH_CBS=m +CONFIG_NET_SCH_CHOKE=m +CONFIG_NET_SCH_CODEL=m +# CONFIG_NET_SCH_DEFAULT is not set +CONFIG_NET_SCH_DRR=m +CONFIG_NET_SCH_DSMARK=m +CONFIG_NET_SCH_ETF=m +CONFIG_NET_SCH_ETS=m +CONFIG_NET_SCH_FIFO=y +CONFIG_NET_SCH_FQ=m +CONFIG_NET_SCH_FQ_CODEL=m +CONFIG_NET_SCH_FQ_PIE=m +CONFIG_NET_SCH_GRED=m +CONFIG_NET_SCH_HFSC=m +CONFIG_NET_SCH_HHF=m +CONFIG_NET_SCH_HTB=m +CONFIG_NET_SCH_INGRESS=m +CONFIG_NET_SCH_MQPRIO=m +CONFIG_NET_SCH_MULTIQ=m +CONFIG_NET_SCH_NETEM=m +CONFIG_NET_SCH_PIE=m +CONFIG_NET_SCH_PLUG=m +CONFIG_NET_SCH_PRIO=m +CONFIG_NET_SCH_QFQ=m +CONFIG_NET_SCH_RED=m +CONFIG_NET_SCH_SFB=m +CONFIG_NET_SCH_SFQ=m +CONFIG_NET_SCH_SKBPRIO=m +CONFIG_NET_SCH_TAPRIO=m +CONFIG_NET_SCH_TBF=m +CONFIG_NET_SCH_TEQL=m +CONFIG_NET_SOCK_MSG=y +CONFIG_NET_SWITCHDEV=y +CONFIG_NET_TC_SKB_EXT=y +# CONFIG_NET_TEAM is not set +CONFIG_NET_UDP_TUNNEL=y +# CONFIG_NET_VENDOR_3COM is not set +# CONFIG_NET_VENDOR_ADAPTEC is not set +CONFIG_NET_VENDOR_AGERE=y +CONFIG_NET_VENDOR_ALACRITECH=y +# CONFIG_NET_VENDOR_ALTEON is not set +# CONFIG_NET_VENDOR_AMAZON is not set +# CONFIG_NET_VENDOR_AMD is not set +CONFIG_NET_VENDOR_AQUANTIA=y +# CONFIG_NET_VENDOR_ARC is not set +# CONFIG_NET_VENDOR_ATHEROS is not set +# CONFIG_NET_VENDOR_AURORA is not set +CONFIG_NET_VENDOR_BROADCOM=y +# CONFIG_NET_VENDOR_BROCADE is not set +CONFIG_NET_VENDOR_CADENCE=y +# CONFIG_NET_VENDOR_CAVIUM is not set +CONFIG_NET_VENDOR_CHELSIO=y +CONFIG_NET_VENDOR_CIRRUS=y +CONFIG_NET_VENDOR_CISCO=y +CONFIG_NET_VENDOR_CORTINA=y +# CONFIG_NET_VENDOR_DEC is not set +CONFIG_NET_VENDOR_DLINK=y +CONFIG_NET_VENDOR_EMULEX=y +# CONFIG_NET_VENDOR_EZCHIP is not set +CONFIG_NET_VENDOR_GOOGLE=y +CONFIG_NET_VENDOR_HUAWEI=y +CONFIG_NET_VENDOR_I825XX=y +CONFIG_NET_VENDOR_INTEL=y +CONFIG_NET_VENDOR_MARVELL=y +CONFIG_NET_VENDOR_MELLANOX=y +# CONFIG_NET_VENDOR_MICREL is not set +CONFIG_NET_VENDOR_MICROCHIP=y +CONFIG_NET_VENDOR_MICROSEMI=y +# CONFIG_NET_VENDOR_MYRI is not set +# CONFIG_NET_VENDOR_NATSEMI is not set +CONFIG_NET_VENDOR_NETERION=y +CONFIG_NET_VENDOR_NETRONOME=y +CONFIG_NET_VENDOR_NI=y +# CONFIG_NET_VENDOR_NVIDIA is not set +# CONFIG_NET_VENDOR_OKI is not set +CONFIG_NET_VENDOR_PACKET_ENGINES=y +CONFIG_NET_VENDOR_PENSANDO=y +# CONFIG_NET_VENDOR_QLOGIC is not set +# CONFIG_NET_VENDOR_QUALCOMM is not set +# CONFIG_NET_VENDOR_RDC is not set +CONFIG_NET_VENDOR_REALTEK=y +# CONFIG_NET_VENDOR_RENESAS is not set +# CONFIG_NET_VENDOR_ROCKER is not set +# CONFIG_NET_VENDOR_SAMSUNG is not set +# CONFIG_NET_VENDOR_SEEQ is not set +# CONFIG_NET_VENDOR_SILAN is not set +# CONFIG_NET_VENDOR_SIS is not set +# CONFIG_NET_VENDOR_SMSC is not set +# CONFIG_NET_VENDOR_SOCIONEXT is not set +CONFIG_NET_VENDOR_SOLARFLARE=y +# CONFIG_NET_VENDOR_STMICRO is not set +# CONFIG_NET_VENDOR_SUN is not set +CONFIG_NET_VENDOR_SYNOPSYS=y +# CONFIG_NET_VENDOR_TEHUTI is not set +# CONFIG_NET_VENDOR_TI is not set +# CONFIG_NET_VENDOR_VIA is not set +# CONFIG_NET_VENDOR_WIZNET is not set +CONFIG_NET_VENDOR_XILINX=y +CONFIG_NET_VRF=m +CONFIG_NEW_LEDS=y +CONFIG_NFC=m +CONFIG_NFC_DIGITAL=m +# CONFIG_NFC_FDP is not set +CONFIG_NFC_HCI=m +CONFIG_NFC_MEI_PHY=m +CONFIG_NFC_MICROREAD=m +# CONFIG_NFC_MICROREAD_I2C is not set +CONFIG_NFC_MICROREAD_MEI=m +# CONFIG_NFC_MRVL_UART is not set +# CONFIG_NFC_MRVL_USB is not set +CONFIG_NFC_NCI=m +CONFIG_NFC_NCI_SPI=m +CONFIG_NFC_NCI_UART=m +# CONFIG_NFC_NXP_NCI is not set +# CONFIG_NFC_PN533_I2C is not set +# CONFIG_NFC_PN533_USB is not set +CONFIG_NFC_PN544=m +# CONFIG_NFC_PN544_I2C is not set +CONFIG_NFC_PN544_MEI=m +# CONFIG_NFC_PORT100 is not set +# CONFIG_NFC_S3FWRN5_I2C is not set +CONFIG_NFC_SHDLC=y +# CONFIG_NFC_SIM is not set +# CONFIG_NFC_ST21NFCA_I2C is not set +# CONFIG_NFC_ST95HF is not set +# CONFIG_NFC_ST_NCI_I2C is not set +# CONFIG_NFC_ST_NCI_SPI is not set +# CONFIG_NFC_TRF7970A is not set +# CONFIG_NFIT_SECURITY_DEBUG is not set +CONFIG_NFP=m +CONFIG_NFP_APP_ABM_NIC=y +CONFIG_NFP_APP_FLOWER=y +# CONFIG_NFP_DEBUG is not set +CONFIG_NFSD=m +CONFIG_NFSD_BLOCKLAYOUT=y +CONFIG_NFSD_FLEXFILELAYOUT=y +CONFIG_NFSD_PNFS=y +CONFIG_NFSD_SCSILAYOUT=y +CONFIG_NFSD_V2_ACL=y +CONFIG_NFSD_V3=y +CONFIG_NFSD_V3_ACL=y +CONFIG_NFSD_V4=y +CONFIG_NFSD_V4_SECURITY_LABEL=y +CONFIG_NFS_ACL_SUPPORT=m +CONFIG_NFS_COMMON=y +CONFIG_NFS_DEBUG=y +CONFIG_NFS_DISABLE_UDP_SUPPORT=y +CONFIG_NFS_FS=m +CONFIG_NFS_FSCACHE=y +CONFIG_NFS_SWAP=y +CONFIG_NFS_USE_KERNEL_DNS=y +# CONFIG_NFS_USE_LEGACY_DNS is not set +CONFIG_NFS_V2=m +CONFIG_NFS_V3=m +CONFIG_NFS_V3_ACL=y +CONFIG_NFS_V4=m +CONFIG_NFS_V4_1=y +CONFIG_NFS_V4_1_IMPLEMENTATION_ID_DOMAIN="kernel.org" +CONFIG_NFS_V4_1_MIGRATION=y +CONFIG_NFS_V4_2=y +CONFIG_NFS_V4_SECURITY_LABEL=y +CONFIG_NFT_BRIDGE_META=m +CONFIG_NFT_BRIDGE_REJECT=m +CONFIG_NFT_COMPAT=m +CONFIG_NFT_CONNLIMIT=m +CONFIG_NFT_COUNTER=m +CONFIG_NFT_CT=m +CONFIG_NFT_DUP_IPV4=m +CONFIG_NFT_DUP_IPV6=m +CONFIG_NFT_DUP_NETDEV=m +CONFIG_NFT_FIB=m +CONFIG_NFT_FIB_INET=m +CONFIG_NFT_FIB_IPV4=m +CONFIG_NFT_FIB_IPV6=m +CONFIG_NFT_FIB_NETDEV=m +CONFIG_NFT_FLOW_OFFLOAD=m +CONFIG_NFT_FWD_NETDEV=m +CONFIG_NFT_HASH=m +CONFIG_NFT_LIMIT=m +CONFIG_NFT_LOG=m +CONFIG_NFT_MASQ=m +CONFIG_NFT_NAT=m +CONFIG_NFT_NUMGEN=m +CONFIG_NFT_OBJREF=m +CONFIG_NFT_OSF=m +CONFIG_NFT_QUEUE=m +CONFIG_NFT_QUOTA=m +CONFIG_NFT_REDIR=m +CONFIG_NFT_REJECT=m +CONFIG_NFT_REJECT_INET=m +CONFIG_NFT_REJECT_IPV4=m +CONFIG_NFT_REJECT_IPV6=m +CONFIG_NFT_SOCKET=m +CONFIG_NFT_SYNPROXY=m +CONFIG_NFT_TPROXY=m +CONFIG_NFT_TUNNEL=m +CONFIG_NFT_XFRM=m +CONFIG_NF_CONNTRACK=m +CONFIG_NF_CONNTRACK_AMANDA=m +CONFIG_NF_CONNTRACK_BRIDGE=m +CONFIG_NF_CONNTRACK_BROADCAST=m +CONFIG_NF_CONNTRACK_EVENTS=y +CONFIG_NF_CONNTRACK_FTP=m +CONFIG_NF_CONNTRACK_H323=m +CONFIG_NF_CONNTRACK_IRC=m +CONFIG_NF_CONNTRACK_LABELS=y +CONFIG_NF_CONNTRACK_MARK=y +CONFIG_NF_CONNTRACK_NETBIOS_NS=m +CONFIG_NF_CONNTRACK_PPTP=m +# CONFIG_NF_CONNTRACK_PROCFS is not set +CONFIG_NF_CONNTRACK_SANE=m +CONFIG_NF_CONNTRACK_SECMARK=y +CONFIG_NF_CONNTRACK_SIP=m +CONFIG_NF_CONNTRACK_SNMP=m +CONFIG_NF_CONNTRACK_TFTP=m +CONFIG_NF_CONNTRACK_TIMEOUT=y +CONFIG_NF_CONNTRACK_TIMESTAMP=y +CONFIG_NF_CONNTRACK_ZONES=y +CONFIG_NF_CT_NETLINK=m +CONFIG_NF_CT_NETLINK_HELPER=m +CONFIG_NF_CT_NETLINK_TIMEOUT=m +CONFIG_NF_CT_PROTO_DCCP=y +CONFIG_NF_CT_PROTO_GRE=y +CONFIG_NF_CT_PROTO_SCTP=y +CONFIG_NF_CT_PROTO_UDPLITE=y +CONFIG_NF_DEFRAG_IPV4=m +CONFIG_NF_DEFRAG_IPV6=m +CONFIG_NF_DUP_IPV4=m +CONFIG_NF_DUP_IPV6=m +CONFIG_NF_DUP_NETDEV=m +CONFIG_NF_FLOW_TABLE=m +CONFIG_NF_FLOW_TABLE_INET=m +CONFIG_NF_FLOW_TABLE_IPV4=m +CONFIG_NF_FLOW_TABLE_IPV6=m +CONFIG_NF_LOG_ARP=m +CONFIG_NF_LOG_BRIDGE=m +CONFIG_NF_LOG_COMMON=m +CONFIG_NF_LOG_IPV4=m +CONFIG_NF_LOG_IPV6=m +CONFIG_NF_LOG_NETDEV=m +CONFIG_NF_NAT=m +CONFIG_NF_NAT_AMANDA=m +CONFIG_NF_NAT_FTP=m +CONFIG_NF_NAT_H323=m +CONFIG_NF_NAT_IRC=m +CONFIG_NF_NAT_MASQUERADE=y +CONFIG_NF_NAT_PPTP=m +CONFIG_NF_NAT_REDIRECT=y +CONFIG_NF_NAT_SIP=m +CONFIG_NF_NAT_SNMP_BASIC=m +CONFIG_NF_NAT_TFTP=m +CONFIG_NF_REJECT_IPV4=m +CONFIG_NF_REJECT_IPV6=m +CONFIG_NF_SOCKET_IPV4=m +CONFIG_NF_SOCKET_IPV6=m +CONFIG_NF_TABLES=m +CONFIG_NF_TABLES_ARP=y +CONFIG_NF_TABLES_BRIDGE=m +CONFIG_NF_TABLES_INET=y +CONFIG_NF_TABLES_IPV4=y +CONFIG_NF_TABLES_IPV6=y +CONFIG_NF_TABLES_NETDEV=y +CONFIG_NF_TPROXY_IPV4=m +CONFIG_NF_TPROXY_IPV6=m +CONFIG_NI903X_WDT=m +CONFIG_NIC7018_WDT=m +CONFIG_NILFS2_FS=m +CONFIG_NI_XGE_MANAGEMENT_ENET=m +# CONFIG_NL80211_TESTMODE is not set +CONFIG_NLATTR=y +CONFIG_NLMON=m +CONFIG_NLS=y +CONFIG_NLS_ASCII=m +CONFIG_NLS_CODEPAGE_1250=m +CONFIG_NLS_CODEPAGE_1251=m +CONFIG_NLS_CODEPAGE_437=y +CONFIG_NLS_CODEPAGE_737=m +CONFIG_NLS_CODEPAGE_775=m +CONFIG_NLS_CODEPAGE_850=m +CONFIG_NLS_CODEPAGE_852=m +CONFIG_NLS_CODEPAGE_855=m +CONFIG_NLS_CODEPAGE_857=m +CONFIG_NLS_CODEPAGE_860=m +CONFIG_NLS_CODEPAGE_861=m +CONFIG_NLS_CODEPAGE_862=m +CONFIG_NLS_CODEPAGE_863=m +CONFIG_NLS_CODEPAGE_864=m +CONFIG_NLS_CODEPAGE_865=m +CONFIG_NLS_CODEPAGE_866=m +CONFIG_NLS_CODEPAGE_869=m +CONFIG_NLS_CODEPAGE_874=m +CONFIG_NLS_CODEPAGE_932=m +CONFIG_NLS_CODEPAGE_936=m +CONFIG_NLS_CODEPAGE_949=m +CONFIG_NLS_CODEPAGE_950=m +CONFIG_NLS_DEFAULT="utf8" +CONFIG_NLS_ISO8859_1=m +CONFIG_NLS_ISO8859_13=m +CONFIG_NLS_ISO8859_14=m +CONFIG_NLS_ISO8859_15=m +CONFIG_NLS_ISO8859_2=m +CONFIG_NLS_ISO8859_3=m +CONFIG_NLS_ISO8859_4=m +CONFIG_NLS_ISO8859_5=m +CONFIG_NLS_ISO8859_6=m +CONFIG_NLS_ISO8859_7=m +CONFIG_NLS_ISO8859_8=m +CONFIG_NLS_ISO8859_9=m +CONFIG_NLS_KOI8_R=m +CONFIG_NLS_KOI8_U=m +CONFIG_NLS_MAC_CELTIC=m +CONFIG_NLS_MAC_CENTEURO=m +CONFIG_NLS_MAC_CROATIAN=m +CONFIG_NLS_MAC_CYRILLIC=m +CONFIG_NLS_MAC_GAELIC=m +CONFIG_NLS_MAC_GREEK=m +CONFIG_NLS_MAC_ICELAND=m +CONFIG_NLS_MAC_INUIT=m +CONFIG_NLS_MAC_ROMAN=m +CONFIG_NLS_MAC_ROMANIAN=m +CONFIG_NLS_MAC_TURKISH=m +CONFIG_NLS_UTF8=m +CONFIG_NODES_SHIFT=10 +CONFIG_NOP_TRACER=y +# CONFIG_NOP_USB_XCEIV is not set +CONFIG_NOTIFIER_ERROR_INJECTION=m +CONFIG_NOZOMI=m +CONFIG_NO_HZ=y +CONFIG_NO_HZ_COMMON=y +CONFIG_NO_HZ_FULL=y +# CONFIG_NO_HZ_IDLE is not set +CONFIG_NR_CPUS=8192 +CONFIG_NR_CPUS_DEFAULT=8192 +CONFIG_NR_CPUS_RANGE_BEGIN=8192 +CONFIG_NR_CPUS_RANGE_END=8192 +CONFIG_NTB=m +# CONFIG_NTB_AMD is not set +CONFIG_NTB_IDT=m +CONFIG_NTB_INTEL=m +CONFIG_NTB_MSI=y +# CONFIG_NTB_MSI_TEST is not set +CONFIG_NTB_NETDEV=m +# CONFIG_NTB_PERF is not set +# CONFIG_NTB_PINGPONG is not set +CONFIG_NTB_SWITCHTEC=m +# CONFIG_NTB_TOOL is not set +CONFIG_NTB_TRANSPORT=m +# CONFIG_NTFS_DEBUG is not set +CONFIG_NTFS_FS=m +# CONFIG_NTFS_RW is not set +CONFIG_NULL_TTY=m +CONFIG_NUMA=y +CONFIG_NUMA_BALANCING=y +CONFIG_NUMA_BALANCING_DEFAULT_ENABLED=y +# CONFIG_NUMA_EMU is not set +CONFIG_NUMA_KEEP_MEMINFO=y +CONFIG_NVDIMM_DAX=y +CONFIG_NVDIMM_KEYS=y +CONFIG_NVDIMM_PFN=y +# CONFIG_NVM is not set +CONFIG_NVMEM=y +CONFIG_NVMEM_SYSFS=y +CONFIG_NVME_CORE=y +CONFIG_NVME_FABRICS=m +CONFIG_NVME_FC=m +CONFIG_NVME_HWMON=y +CONFIG_NVME_MULTIPATH=y +CONFIG_NVME_RDMA=m +CONFIG_NVME_TARGET=m +CONFIG_NVME_TARGET_FC=m +# CONFIG_NVME_TARGET_FCLOOP is not set +# CONFIG_NVME_TARGET_LOOP is not set +# CONFIG_NVME_TARGET_RDMA is not set +CONFIG_NVME_TARGET_TCP=m +CONFIG_NVME_TCP=m +CONFIG_NVRAM=m +CONFIG_NV_TCO=m +CONFIG_NXP_TJA11XX_PHY=m +CONFIG_N_GSM=m +CONFIG_N_HDLC=m +CONFIG_OBJAGG=m +# CONFIG_OCFS2_DEBUG_FS is not set +CONFIG_OCFS2_DEBUG_MASKLOG=y +CONFIG_OCFS2_FS=m +CONFIG_OCFS2_FS_O2CB=m +CONFIG_OCFS2_FS_STATS=y +CONFIG_OCFS2_FS_USERSPACE_CLUSTER=m +# CONFIG_OF is not set +CONFIG_OID_REGISTRY=y +CONFIG_OLD_SIGSUSPEND3=y +CONFIG_OMFS_FS=m +CONFIG_OPENVSWITCH=m +CONFIG_OPENVSWITCH_GENEVE=m +CONFIG_OPENVSWITCH_GRE=m +CONFIG_OPENVSWITCH_VXLAN=m +CONFIG_OPROFILE=m +# CONFIG_OPROFILE_EVENT_MULTIPLEX is not set +CONFIG_OPROFILE_NMI_TIMER=y +CONFIG_OPTPROBES=y +# CONFIG_ORANGEFS_FS is not set +CONFIG_OSF_PARTITION=y +CONFIG_OUTPUT_FORMAT="elf64-x86-64" +CONFIG_OVERLAY_FS=m +# CONFIG_OVERLAY_FS_INDEX is not set +# CONFIG_OVERLAY_FS_METACOPY is not set +CONFIG_OVERLAY_FS_REDIRECT_ALWAYS_FOLLOW=y +CONFIG_OVERLAY_FS_REDIRECT_DIR=y +CONFIG_OVERLAY_FS_XINO_AUTO=y +CONFIG_PACKET=y +CONFIG_PACKET_DIAG=m +CONFIG_PACKING=y +CONFIG_PADATA=y +CONFIG_PAGE_COUNTER=y +# CONFIG_PAGE_EXTENSION is not set +# CONFIG_PAGE_OWNER is not set +CONFIG_PAGE_POISONING=y +CONFIG_PAGE_POISONING_NO_SANITY=y +CONFIG_PAGE_POISONING_ZERO=y +CONFIG_PAGE_POOL=y +CONFIG_PAGE_REPORTING=y +CONFIG_PAGE_TABLE_ISOLATION=y +# CONFIG_PANASONIC_LAPTOP is not set +CONFIG_PANEL=m +# CONFIG_PANEL_CHANGE_MESSAGE is not set +CONFIG_PANEL_PARPORT=0 +CONFIG_PANEL_PROFILE=5 +# CONFIG_PANIC_ON_OOPS is not set +CONFIG_PANIC_ON_OOPS_VALUE=0 +CONFIG_PANIC_TIMEOUT=0 +CONFIG_PARAVIRT=y +CONFIG_PARAVIRT_CLOCK=y +# CONFIG_PARAVIRT_DEBUG is not set +CONFIG_PARAVIRT_SPINLOCKS=y +# CONFIG_PARAVIRT_TIME_ACCOUNTING is not set +# CONFIG_PARIDE is not set +CONFIG_PARMAN=m +CONFIG_PARPORT=m +CONFIG_PARPORT_1284=y +CONFIG_PARPORT_AX88796=m +CONFIG_PARPORT_NOT_PC=y +CONFIG_PARPORT_PANEL=m +CONFIG_PARPORT_PC=m +CONFIG_PARPORT_PC_FIFO=y +# CONFIG_PARPORT_PC_SUPERIO is not set +CONFIG_PARPORT_SERIAL=m +CONFIG_PARTITION_ADVANCED=y +CONFIG_PATA_ACPI=m +CONFIG_PATA_ALI=m +CONFIG_PATA_AMD=m +CONFIG_PATA_ARTOP=m +CONFIG_PATA_ATIIXP=m +CONFIG_PATA_ATP867X=m +CONFIG_PATA_CMD640_PCI=m +CONFIG_PATA_CMD64X=m +CONFIG_PATA_CYPRESS=m +CONFIG_PATA_EFAR=m +CONFIG_PATA_HPT366=m +CONFIG_PATA_HPT37X=m +CONFIG_PATA_HPT3X2N=m +CONFIG_PATA_HPT3X3=m +# CONFIG_PATA_HPT3X3_DMA is not set +CONFIG_PATA_IT8213=m +CONFIG_PATA_IT821X=m +CONFIG_PATA_JMICRON=m +CONFIG_PATA_LEGACY=m +CONFIG_PATA_MARVELL=m +CONFIG_PATA_MPIIX=m +CONFIG_PATA_NETCELL=m +CONFIG_PATA_NINJA32=m +CONFIG_PATA_NS87410=m +CONFIG_PATA_NS87415=m +CONFIG_PATA_OLDPIIX=m +CONFIG_PATA_OPTI=m +CONFIG_PATA_OPTIDMA=m +CONFIG_PATA_PDC2027X=m +CONFIG_PATA_PDC_OLD=m +CONFIG_PATA_PLATFORM=m +CONFIG_PATA_RADISYS=m +CONFIG_PATA_RDC=m +CONFIG_PATA_RZ1000=m +CONFIG_PATA_SCH=m +CONFIG_PATA_SERVERWORKS=m +CONFIG_PATA_SIL680=m +CONFIG_PATA_SIS=y +CONFIG_PATA_TIMINGS=y +CONFIG_PATA_TOSHIBA=m +CONFIG_PATA_TRIFLEX=m +CONFIG_PATA_VIA=m +CONFIG_PATA_WINBOND=m +CONFIG_PC104=y +CONFIG_PC300TOO=m +CONFIG_PC87413_WDT=m +CONFIG_PCC=y +CONFIG_PCCARD=m +CONFIG_PCENGINES_APU2=m +CONFIG_PCF50633_ADC=m +CONFIG_PCF50633_GPIO=m +CONFIG_PCI=y +CONFIG_PCI200SYN=m +CONFIG_PCIEAER=y +# CONFIG_PCIEAER_INJECT is not set +CONFIG_PCIEASPM=y +CONFIG_PCIEASPM_DEFAULT=y +# CONFIG_PCIEASPM_PERFORMANCE is not set +# CONFIG_PCIEASPM_POWERSAVE is not set +# CONFIG_PCIEASPM_POWER_SUPERSAVE is not set +CONFIG_PCIEPORTBUS=y +# CONFIG_PCIE_BW is not set +CONFIG_PCIE_DPC=y +CONFIG_PCIE_DW=y +CONFIG_PCIE_DW_EP=y +CONFIG_PCIE_DW_HOST=y +CONFIG_PCIE_DW_PLAT=y +CONFIG_PCIE_DW_PLAT_EP=y +CONFIG_PCIE_DW_PLAT_HOST=y +# CONFIG_PCIE_ECRC is not set +# CONFIG_PCIE_EDR is not set +CONFIG_PCIE_PME=y +CONFIG_PCIE_PTM=y +CONFIG_PCIPCWATCHDOG=m +CONFIG_PCI_ATS=y +# CONFIG_PCI_CNB20LE_QUIRK is not set +# CONFIG_PCI_DEBUG is not set +CONFIG_PCI_DIRECT=y +CONFIG_PCI_DOMAINS=y +CONFIG_PCI_ENDPOINT=y +CONFIG_PCI_ENDPOINT_CONFIGFS=y +# CONFIG_PCI_ENDPOINT_TEST is not set +# CONFIG_PCI_EPF_TEST is not set +CONFIG_PCI_HYPERV=y +CONFIG_PCI_HYPERV_INTERFACE=y +CONFIG_PCI_IOV=y +CONFIG_PCI_LABEL=y +CONFIG_PCI_LOCKLESS_CONFIG=y +CONFIG_PCI_MESON=y +CONFIG_PCI_MMCONFIG=y +CONFIG_PCI_MSI=y +CONFIG_PCI_MSI_IRQ_DOMAIN=y +# CONFIG_PCI_P2PDMA is not set +CONFIG_PCI_PASID=y +CONFIG_PCI_PF_STUB=m +CONFIG_PCI_PRI=y +CONFIG_PCI_QUIRKS=y +CONFIG_PCI_REALLOC_ENABLE_AUTO=y +CONFIG_PCI_STUB=m +CONFIG_PCI_SW_SWITCHTEC=m +# CONFIG_PCMCIA is not set +CONFIG_PCSPKR_PLATFORM=y +# CONFIG_PDA_POWER is not set +CONFIG_PDC_ADMA=m +CONFIG_PEAQ_WMI=m +# CONFIG_PERCPU_STATS is not set +CONFIG_PERF_EVENTS=y +# CONFIG_PERF_EVENTS_AMD_POWER is not set +CONFIG_PERF_EVENTS_INTEL_CSTATE=m +CONFIG_PERF_EVENTS_INTEL_RAPL=m +CONFIG_PERF_EVENTS_INTEL_UNCORE=y +CONFIG_PERSISTENT_KEYRINGS=y +CONFIG_PGTABLE_LEVELS=5 +CONFIG_PHANTOM=m +CONFIG_PHONET=m +CONFIG_PHYLIB=y +CONFIG_PHYLINK=m +CONFIG_PHYSICAL_ALIGN=0x200000 +CONFIG_PHYSICAL_START=0x1000000 +CONFIG_PHYS_ADDR_T_64BIT=y +CONFIG_PHY_INTEL_EMMC=m +# CONFIG_PHY_PXA_28NM_HSIC is not set +# CONFIG_PHY_PXA_28NM_USB2 is not set +CONFIG_PI433=m +CONFIG_PID_NS=y +CONFIG_PINCONF=y +CONFIG_PINCTRL=y +# CONFIG_PINCTRL_AMD is not set +CONFIG_PINCTRL_BAYTRAIL=y +# CONFIG_PINCTRL_BROXTON is not set +CONFIG_PINCTRL_CANNONLAKE=m +CONFIG_PINCTRL_CEDARFORK=m +CONFIG_PINCTRL_CHERRYVIEW=y +CONFIG_PINCTRL_CS47L15=y +CONFIG_PINCTRL_CS47L35=y +CONFIG_PINCTRL_CS47L85=y +CONFIG_PINCTRL_CS47L90=y +CONFIG_PINCTRL_CS47L92=y +CONFIG_PINCTRL_DENVERTON=m +# CONFIG_PINCTRL_GEMINILAKE is not set +CONFIG_PINCTRL_ICELAKE=m +CONFIG_PINCTRL_INTEL=m +CONFIG_PINCTRL_JASPERLAKE=m +CONFIG_PINCTRL_LEWISBURG=m +CONFIG_PINCTRL_LYNXPOINT=m +CONFIG_PINCTRL_MADERA=m +CONFIG_PINCTRL_MCP23S08=m +CONFIG_PINCTRL_MCP23S08_I2C=m +CONFIG_PINCTRL_MCP23S08_SPI=m +# CONFIG_PINCTRL_SUNRISEPOINT is not set +CONFIG_PINCTRL_TIGERLAKE=m +CONFIG_PINMUX=y +CONFIG_PKCS7_MESSAGE_PARSER=y +CONFIG_PKCS7_TEST_KEY=m +CONFIG_PKCS8_PRIVATE_KEY_PARSER=m +# CONFIG_PLIP is not set +CONFIG_PLX_DMA=m +CONFIG_PM=y +# CONFIG_PMBUS is not set +CONFIG_PMC_ATOM=y +CONFIG_PMIC_DA9052=y +CONFIG_PMIC_OPREGION=y +CONFIG_PM_ADVANCED_DEBUG=y +# CONFIG_PM_AUTOSLEEP is not set +CONFIG_PM_CLK=y +CONFIG_PM_DEBUG=y +CONFIG_PM_DEVFREQ=y +CONFIG_PM_DEVFREQ_EVENT=y +CONFIG_PM_GENERIC_DOMAINS=y +CONFIG_PM_GENERIC_DOMAINS_SLEEP=y +CONFIG_PM_NOTIFIER_ERROR_INJECT=m +CONFIG_PM_OPP=y +CONFIG_PM_SLEEP=y +CONFIG_PM_SLEEP_DEBUG=y +CONFIG_PM_SLEEP_SMP=y +CONFIG_PM_STD_PARTITION="" +# CONFIG_PM_TEST_SUSPEND is not set +CONFIG_PM_TRACE=y +CONFIG_PM_TRACE_RTC=y +CONFIG_PM_WAKELOCKS=y +CONFIG_PM_WAKELOCKS_GC=y +CONFIG_PM_WAKELOCKS_LIMIT=100 +CONFIG_PNFS_BLOCK=m +CONFIG_PNFS_FILE_LAYOUT=m +CONFIG_PNFS_FLEXFILE_LAYOUT=m +CONFIG_PNP=y +CONFIG_PNPACPI=y +# CONFIG_PNP_DEBUG_MESSAGES is not set +CONFIG_POSIX_MQUEUE=y +CONFIG_POSIX_MQUEUE_SYSCTL=y +CONFIG_POSIX_TIMERS=y +# CONFIG_POWERCAP is not set +CONFIG_POWER_AVS=y +CONFIG_POWER_RESET=y +CONFIG_POWER_RESET_RESTART=y +CONFIG_POWER_SUPPLY=y +# CONFIG_POWER_SUPPLY_DEBUG is not set +CONFIG_POWER_SUPPLY_HWMON=y +CONFIG_PPDEV=m +CONFIG_PPP=y +CONFIG_PPPOATM=m +CONFIG_PPPOE=m +CONFIG_PPPOL2TP=m +CONFIG_PPP_ASYNC=m +CONFIG_PPP_BSDCOMP=m +CONFIG_PPP_DEFLATE=m +CONFIG_PPP_FILTER=y +CONFIG_PPP_MPPE=m +CONFIG_PPP_MULTILINK=y +CONFIG_PPP_SYNC_TTY=m +CONFIG_PPS=y +# CONFIG_PPS_CLIENT_GPIO is not set +# CONFIG_PPS_CLIENT_KTIMER is not set +# CONFIG_PPS_CLIENT_LDISC is not set +# CONFIG_PPS_CLIENT_PARPORT is not set +# CONFIG_PPS_DEBUG is not set +CONFIG_PPTP=m +# CONFIG_PREEMPT is not set +# CONFIG_PREEMPTIRQ_DELAY_TEST is not set +# CONFIG_PREEMPT_NONE is not set +CONFIG_PREEMPT_NOTIFIERS=y +CONFIG_PREEMPT_VOLUNTARY=y +CONFIG_PREVENT_FIRMWARE_BUILD=y +# CONFIG_PRIME_NUMBERS is not set +CONFIG_PRINTER=m +CONFIG_PRINTK=y +# CONFIG_PRINTK_CALLER is not set +CONFIG_PRINTK_NMI=y +CONFIG_PRINTK_SAFE_LOG_BUF_SHIFT=13 +CONFIG_PRINTK_TIME=y +# CONFIG_PRINT_QUOTA_WARNING is not set +CONFIG_PROBE_EVENTS=y +CONFIG_PROCESSOR_SELECT=y +CONFIG_PROC_CHILDREN=y +CONFIG_PROC_CPU_RESCTRL=y +CONFIG_PROC_EVENTS=y +CONFIG_PROC_FS=y +CONFIG_PROC_KCORE=y +CONFIG_PROC_PAGE_MONITOR=y +CONFIG_PROC_PID_ARCH_STATUS=y +CONFIG_PROC_PID_CPUSET=y +CONFIG_PROC_SYSCTL=y +CONFIG_PROC_VMCORE=y +CONFIG_PROC_VMCORE_DEVICE_DUMP=y +# CONFIG_PROFILE_ANNOTATED_BRANCHES is not set +CONFIG_PROFILING=y +# CONFIG_PROVE_LOCKING is not set +# CONFIG_PROVIDE_OHCI1394_DMA_INIT is not set +CONFIG_PSAMPLE=m +CONFIG_PSI=y +# CONFIG_PSI_DEFAULT_DISABLED is not set +CONFIG_PSTORE=y +# CONFIG_PSTORE_842_COMPRESS is not set +CONFIG_PSTORE_BLK=m +CONFIG_PSTORE_BLK_BLKDEV="" +CONFIG_PSTORE_BLK_KMSG_SIZE=64 +CONFIG_PSTORE_BLK_MAX_REASON=2 +CONFIG_PSTORE_COMPRESS=y +CONFIG_PSTORE_COMPRESS_DEFAULT="deflate" +# CONFIG_PSTORE_CONSOLE is not set +CONFIG_PSTORE_DEFLATE_COMPRESS=y +CONFIG_PSTORE_DEFLATE_COMPRESS_DEFAULT=y +# CONFIG_PSTORE_FTRACE is not set +# CONFIG_PSTORE_LZ4HC_COMPRESS is not set +# CONFIG_PSTORE_LZ4_COMPRESS is not set +# CONFIG_PSTORE_LZO_COMPRESS is not set +# CONFIG_PSTORE_PMSG is not set +CONFIG_PSTORE_RAM=m +CONFIG_PSTORE_ZONE=m +# CONFIG_PSTORE_ZSTD_COMPRESS is not set +CONFIG_PTDUMP_CORE=y +# CONFIG_PTDUMP_DEBUGFS is not set +CONFIG_PTP_1588_CLOCK=y +CONFIG_PTP_1588_CLOCK_IDT82P33=m +CONFIG_PTP_1588_CLOCK_IDTCM=m +CONFIG_PTP_1588_CLOCK_KVM=m +CONFIG_PTP_1588_CLOCK_VMW=m +CONFIG_PUNIT_ATOM_DEBUG=m +CONFIG_PVH=y +CONFIG_PVPANIC=m +# CONFIG_PWM is not set +CONFIG_QCOM_CPR=m +# CONFIG_QCOM_HIDMA is not set +# CONFIG_QCOM_HIDMA_MGMT is not set +CONFIG_QFMT_V1=m +CONFIG_QFMT_V2=m +CONFIG_QLGE=m +CONFIG_QNX4FS_FS=m +# CONFIG_QNX6FS_DEBUG is not set +CONFIG_QNX6FS_FS=m +CONFIG_QRTR=m +CONFIG_QRTR_MHI=m +CONFIG_QRTR_SMD=m +CONFIG_QRTR_TUN=m +# CONFIG_QSEMI_PHY is not set +CONFIG_QUEUED_RWLOCKS=y +CONFIG_QUEUED_SPINLOCKS=y +CONFIG_QUOTA=y +CONFIG_QUOTACTL=y +CONFIG_QUOTACTL_COMPAT=y +# CONFIG_QUOTA_DEBUG is not set +CONFIG_QUOTA_NETLINK_INTERFACE=y +CONFIG_QUOTA_TREE=m +CONFIG_R8169=m +CONFIG_RAID6_PQ=m +CONFIG_RAID6_PQ_BENCHMARK=y +CONFIG_RAID_ATTRS=m +# CONFIG_RANDOM32_SELFTEST is not set +CONFIG_RANDOMIZE_BASE=y +CONFIG_RANDOMIZE_MEMORY=y +CONFIG_RANDOMIZE_MEMORY_PHYSICAL_PADDING=0xa +CONFIG_RANDOM_TRUST_BOOTLOADER=y +CONFIG_RANDOM_TRUST_CPU=y +CONFIG_RAPIDIO=y +CONFIG_RAPIDIO_CHMAN=m +# CONFIG_RAPIDIO_CPS_GEN2 is not set +# CONFIG_RAPIDIO_CPS_XX is not set +# CONFIG_RAPIDIO_DEBUG is not set +CONFIG_RAPIDIO_DISC_TIMEOUT=30 +CONFIG_RAPIDIO_DMA_ENGINE=y +# CONFIG_RAPIDIO_ENABLE_RX_TX_PORTS is not set +CONFIG_RAPIDIO_ENUM_BASIC=m +CONFIG_RAPIDIO_MPORT_CDEV=m +# CONFIG_RAPIDIO_RXS_GEN3 is not set +# CONFIG_RAPIDIO_TSI568 is not set +# CONFIG_RAPIDIO_TSI57X is not set +CONFIG_RAPIDIO_TSI721=m +CONFIG_RAS=y +CONFIG_RAS_CEC=y +# CONFIG_RAS_CEC_DEBUG is not set +CONFIG_RATIONAL=y +CONFIG_RAW_DRIVER=m +CONFIG_RCU_CPU_STALL_TIMEOUT=60 +# CONFIG_RCU_EQS_DEBUG is not set +# CONFIG_RCU_EXPERT is not set +CONFIG_RCU_NEED_SEGCBLIST=y +CONFIG_RCU_NOCB_CPU=y +CONFIG_RCU_PERF_TEST=m +CONFIG_RCU_STALL_COMMON=y +# CONFIG_RCU_TORTURE_TEST is not set +# CONFIG_RCU_TRACE is not set +# CONFIG_RC_ATI_REMOTE is not set +CONFIG_RC_CORE=m +CONFIG_RC_DECODERS=y +CONFIG_RC_DEVICES=y +CONFIG_RC_LOOPBACK=m +CONFIG_RC_MAP=m +# CONFIG_RC_XBOX_DVD is not set +# CONFIG_RDMA_RXE is not set +CONFIG_RDMA_SIW=m +CONFIG_RDS=m +# CONFIG_RDS_DEBUG is not set +CONFIG_RDS_RDMA=m +CONFIG_RDS_TCP=m +CONFIG_RD_BZIP2=y +CONFIG_RD_GZIP=y +CONFIG_RD_LZ4=y +CONFIG_RD_LZMA=y +CONFIG_RD_LZO=y +CONFIG_RD_XZ=y +# CONFIG_READABLE_ASM is not set +# CONFIG_READ_ONLY_THP_FOR_FS is not set +CONFIG_REALTEK_PHY=m +CONFIG_REED_SOLOMON=m +CONFIG_REED_SOLOMON_DEC8=y +CONFIG_REED_SOLOMON_ENC8=y +CONFIG_REGMAP=y +CONFIG_REGMAP_I2C=m +CONFIG_REGMAP_IRQ=y +CONFIG_REGMAP_MMIO=y +CONFIG_REGMAP_SLIMBUS=m +CONFIG_REGMAP_SPI=y +CONFIG_REGULATOR=y +CONFIG_REGULATOR_88PG86X=m +# CONFIG_REGULATOR_ACT8865 is not set +# CONFIG_REGULATOR_AD5398 is not set +# CONFIG_REGULATOR_AXP20X is not set +# CONFIG_REGULATOR_BCM590XX is not set +CONFIG_REGULATOR_BD9571MWV=m +# CONFIG_REGULATOR_DA9052 is not set +# CONFIG_REGULATOR_DA9210 is not set +# CONFIG_REGULATOR_DA9211 is not set +# CONFIG_REGULATOR_DEBUG is not set +# CONFIG_REGULATOR_FAN53555 is not set +CONFIG_REGULATOR_FIXED_VOLTAGE=m +# CONFIG_REGULATOR_GPIO is not set +# CONFIG_REGULATOR_ISL6271A is not set +# CONFIG_REGULATOR_ISL9305 is not set +CONFIG_REGULATOR_LM363X=m +# CONFIG_REGULATOR_LP3971 is not set +# CONFIG_REGULATOR_LP3972 is not set +# CONFIG_REGULATOR_LP872X is not set +# CONFIG_REGULATOR_LP8755 is not set +# CONFIG_REGULATOR_LTC3589 is not set +# CONFIG_REGULATOR_LTC3676 is not set +# CONFIG_REGULATOR_MAX14577 is not set +# CONFIG_REGULATOR_MAX1586 is not set +# CONFIG_REGULATOR_MAX77693 is not set +CONFIG_REGULATOR_MAX77826=m +# CONFIG_REGULATOR_MAX8649 is not set +# CONFIG_REGULATOR_MAX8660 is not set +# CONFIG_REGULATOR_MAX8907 is not set +# CONFIG_REGULATOR_MAX8952 is not set +# CONFIG_REGULATOR_MC13783 is not set +# CONFIG_REGULATOR_MC13892 is not set +CONFIG_REGULATOR_MP8859=m +# CONFIG_REGULATOR_MT6311 is not set +# CONFIG_REGULATOR_PCAP is not set +# CONFIG_REGULATOR_PCF50633 is not set +# CONFIG_REGULATOR_PFUZE100 is not set +# CONFIG_REGULATOR_PV88060 is not set +# CONFIG_REGULATOR_PV88080 is not set +# CONFIG_REGULATOR_PV88090 is not set +# CONFIG_REGULATOR_RT5033 is not set +# CONFIG_REGULATOR_SKY81452 is not set +CONFIG_REGULATOR_SLG51000=m +# CONFIG_REGULATOR_TPS51632 is not set +# CONFIG_REGULATOR_TPS6105X is not set +# CONFIG_REGULATOR_TPS62360 is not set +# CONFIG_REGULATOR_TPS65023 is not set +# CONFIG_REGULATOR_TPS6507X is not set +# CONFIG_REGULATOR_TPS65086 is not set +CONFIG_REGULATOR_TPS65132=m +# CONFIG_REGULATOR_TPS6524X is not set +# CONFIG_REGULATOR_TPS65912 is not set +# CONFIG_REGULATOR_USERSPACE_CONSUMER is not set +# CONFIG_REGULATOR_VIRTUAL_CONSUMER is not set +# CONFIG_REGULATOR_WM831X is not set +# CONFIG_REGULATOR_WM8994 is not set +# CONFIG_REISERFS_CHECK is not set +CONFIG_REISERFS_FS=m +CONFIG_REISERFS_FS_POSIX_ACL=y +CONFIG_REISERFS_FS_SECURITY=y +CONFIG_REISERFS_FS_XATTR=y +# CONFIG_REISERFS_PROC_INFO is not set +CONFIG_RELAY=y +CONFIG_RELOCATABLE=y +# CONFIG_REMOTEPROC is not set +CONFIG_RENESAS_PHY=m +CONFIG_RESET_ATTACK_MITIGATION=y +CONFIG_RESET_BRCMSTB_RESCAL=y +CONFIG_RESET_CONTROLLER=y +CONFIG_RESET_TI_SYSCON=m +CONFIG_RETPOLINE=y +CONFIG_RETU_WATCHDOG=m +CONFIG_RFKILL=y +CONFIG_RFKILL_GPIO=m +CONFIG_RFKILL_INPUT=y +CONFIG_RFKILL_LEDS=y +CONFIG_RFS_ACCEL=y +CONFIG_RING_BUFFER=y +CONFIG_RING_BUFFER_ALLOW_SWAP=y +# CONFIG_RING_BUFFER_BENCHMARK is not set +# CONFIG_RING_BUFFER_STARTUP_TEST is not set +CONFIG_RIONET=m +CONFIG_RIONET_RX_SIZE=128 +CONFIG_RIONET_TX_SIZE=128 +# CONFIG_RMI4_CORE is not set +CONFIG_ROCKCHIP_PHY=m +CONFIG_ROCKETPORT=m +CONFIG_ROMFS_BACKED_BY_BLOCK=y +CONFIG_ROMFS_FS=m +CONFIG_ROMFS_ON_BLOCK=y +CONFIG_ROSE=m +CONFIG_RPCSEC_GSS_KRB5=m +CONFIG_RPMSG=m +CONFIG_RPMSG_CHAR=m +CONFIG_RPMSG_QCOM_GLINK=m +CONFIG_RPMSG_QCOM_GLINK_RPM=m +CONFIG_RPMSG_VIRTIO=m +CONFIG_RPS=y +CONFIG_RSEQ=y +CONFIG_RTC_CLASS=y +# CONFIG_RTC_DEBUG is not set +# CONFIG_RTC_DRV_ABB5ZES3 is not set +CONFIG_RTC_DRV_ABEOZ9=m +# CONFIG_RTC_DRV_ABX80X is not set +# CONFIG_RTC_DRV_BQ32K is not set +# CONFIG_RTC_DRV_BQ4802 is not set +CONFIG_RTC_DRV_CMOS=y +# CONFIG_RTC_DRV_DA9052 is not set +# CONFIG_RTC_DRV_DA9063 is not set +# CONFIG_RTC_DRV_DS1286 is not set +# CONFIG_RTC_DRV_DS1302 is not set +# CONFIG_RTC_DRV_DS1305 is not set +# CONFIG_RTC_DRV_DS1307 is not set +# CONFIG_RTC_DRV_DS1343 is not set +# CONFIG_RTC_DRV_DS1347 is not set +# CONFIG_RTC_DRV_DS1374 is not set +# CONFIG_RTC_DRV_DS1390 is not set +# CONFIG_RTC_DRV_DS1511 is not set +# CONFIG_RTC_DRV_DS1553 is not set +# CONFIG_RTC_DRV_DS1672 is not set +# CONFIG_RTC_DRV_DS1685_FAMILY is not set +# CONFIG_RTC_DRV_DS1742 is not set +# CONFIG_RTC_DRV_DS2404 is not set +# CONFIG_RTC_DRV_DS3232 is not set +# CONFIG_RTC_DRV_EM3027 is not set +# CONFIG_RTC_DRV_FM3130 is not set +CONFIG_RTC_DRV_FTRTC010=m +# CONFIG_RTC_DRV_ISL12022 is not set +# CONFIG_RTC_DRV_ISL1208 is not set +# CONFIG_RTC_DRV_M41T80 is not set +# CONFIG_RTC_DRV_M41T93 is not set +# CONFIG_RTC_DRV_M41T94 is not set +# CONFIG_RTC_DRV_M48T35 is not set +# CONFIG_RTC_DRV_M48T59 is not set +# CONFIG_RTC_DRV_M48T86 is not set +# CONFIG_RTC_DRV_MAX6900 is not set +# CONFIG_RTC_DRV_MAX6902 is not set +# CONFIG_RTC_DRV_MAX6916 is not set +# CONFIG_RTC_DRV_MAX8907 is not set +# CONFIG_RTC_DRV_MC13XXX is not set +# CONFIG_RTC_DRV_MCP795 is not set +# CONFIG_RTC_DRV_MSM6242 is not set +# CONFIG_RTC_DRV_PCAP is not set +# CONFIG_RTC_DRV_PCF2123 is not set +# CONFIG_RTC_DRV_PCF2127 is not set +# CONFIG_RTC_DRV_PCF50633 is not set +# CONFIG_RTC_DRV_PCF85063 is not set +# CONFIG_RTC_DRV_PCF8523 is not set +CONFIG_RTC_DRV_PCF85363=m +# CONFIG_RTC_DRV_PCF8563 is not set +# CONFIG_RTC_DRV_PCF8583 is not set +# CONFIG_RTC_DRV_R9701 is not set +# CONFIG_RTC_DRV_RP5C01 is not set +# CONFIG_RTC_DRV_RS5C348 is not set +# CONFIG_RTC_DRV_RS5C372 is not set +CONFIG_RTC_DRV_RV3028=m +# CONFIG_RTC_DRV_RV3029C2 is not set +# CONFIG_RTC_DRV_RV8803 is not set +# CONFIG_RTC_DRV_RX4581 is not set +# CONFIG_RTC_DRV_RX6110 is not set +# CONFIG_RTC_DRV_RX8010 is not set +# CONFIG_RTC_DRV_RX8025 is not set +# CONFIG_RTC_DRV_RX8581 is not set +# CONFIG_RTC_DRV_S35390A is not set +CONFIG_RTC_DRV_SD3078=m +# CONFIG_RTC_DRV_STK17TA8 is not set +# CONFIG_RTC_DRV_TEST is not set +# CONFIG_RTC_DRV_V3020 is not set +# CONFIG_RTC_DRV_WM831X is not set +# CONFIG_RTC_DRV_X1205 is not set +CONFIG_RTC_HCTOSYS=y +CONFIG_RTC_HCTOSYS_DEVICE="rtc0" +CONFIG_RTC_I2C_AND_SPI=m +CONFIG_RTC_INTF_DEV=y +# CONFIG_RTC_INTF_DEV_UIE_EMUL is not set +CONFIG_RTC_INTF_PROC=y +CONFIG_RTC_INTF_SYSFS=y +CONFIG_RTC_LIB=y +CONFIG_RTC_MC146818_LIB=y +CONFIG_RTC_NVMEM=y +CONFIG_RTC_SYSTOHC=y +CONFIG_RTC_SYSTOHC_DEVICE="rtc0" +CONFIG_RTS5208=m +# CONFIG_RT_GROUP_SCHED is not set +CONFIG_RT_MUTEXES=y +# CONFIG_RUNTIME_TESTING_MENU is not set +CONFIG_RWSEM_SPIN_ON_OWNER=y +CONFIG_RXKAD=y +CONFIG_S2IO=m +# CONFIG_SAMPLES is not set +# CONFIG_SAMSUNG_LAPTOP is not set +# CONFIG_SAMSUNG_Q10 is not set +# CONFIG_SATA_ACARD_AHCI is not set +CONFIG_SATA_AHCI=m +CONFIG_SATA_AHCI_PLATFORM=m +CONFIG_SATA_DWC=m +# CONFIG_SATA_DWC_DEBUG is not set +CONFIG_SATA_DWC_OLD_DMA=y +CONFIG_SATA_HOST=y +# CONFIG_SATA_INIC162X is not set +CONFIG_SATA_MOBILE_LPM_POLICY=3 +# CONFIG_SATA_MV is not set +# CONFIG_SATA_NV is not set +CONFIG_SATA_PMP=y +# CONFIG_SATA_PROMISE is not set +# CONFIG_SATA_QSTOR is not set +# CONFIG_SATA_SIL is not set +# CONFIG_SATA_SIL24 is not set +# CONFIG_SATA_SIS is not set +# CONFIG_SATA_SVW is not set +# CONFIG_SATA_SX4 is not set +# CONFIG_SATA_ULI is not set +# CONFIG_SATA_VIA is not set +# CONFIG_SATA_VITESSE is not set +# CONFIG_SATA_ZPODD is not set +CONFIG_SBC_EPX_C3_WATCHDOG=m +CONFIG_SBC_FITPC2_WATCHDOG=m +CONFIG_SBITMAP=y +CONFIG_SBNI=m +# CONFIG_SBNI_MULTILINE is not set +CONFIG_SC1200_WDT=m +CONFIG_SCHEDSTATS=y +CONFIG_SCHED_AUTOGROUP=y +CONFIG_SCHED_DEBUG=y +CONFIG_SCHED_HRTICK=y +CONFIG_SCHED_INFO=y +CONFIG_SCHED_MC=y +CONFIG_SCHED_MC_PRIO=y +CONFIG_SCHED_OMIT_FRAME_POINTER=y +CONFIG_SCHED_SMT=y +CONFIG_SCHED_STACK_END_CHECK=y +# CONFIG_SCHED_THERMAL_PRESSURE is not set +CONFIG_SCHED_TRACER=y +# CONFIG_SCIF_BUS is not set +CONFIG_SCSI=y +CONFIG_SCSI_3W_9XXX=m +CONFIG_SCSI_3W_SAS=m +CONFIG_SCSI_AACRAID=m +CONFIG_SCSI_ACARD=m +CONFIG_SCSI_ADVANSYS=m +CONFIG_SCSI_AHA1740=m +CONFIG_SCSI_AIC79XX=m +CONFIG_SCSI_AIC7XXX=m +CONFIG_SCSI_AIC94XX=m +CONFIG_SCSI_AM53C974=m +CONFIG_SCSI_ARCMSR=m +CONFIG_SCSI_BFA_FC=m +# CONFIG_SCSI_BNX2_ISCSI is not set +CONFIG_SCSI_BUSLOGIC=m +CONFIG_SCSI_CHELSIO_FCOE=m +CONFIG_SCSI_CONSTANTS=y +# CONFIG_SCSI_CXGB3_ISCSI is not set +# CONFIG_SCSI_CXGB4_ISCSI is not set +CONFIG_SCSI_DC395x=m +CONFIG_SCSI_DEBUG=m +CONFIG_SCSI_DH=y +CONFIG_SCSI_DH_ALUA=m +CONFIG_SCSI_DH_EMC=m +CONFIG_SCSI_DH_HP_SW=m +CONFIG_SCSI_DH_RDAC=m +CONFIG_SCSI_DMA=y +CONFIG_SCSI_DMX3191D=m +CONFIG_SCSI_DPT_I2O=m +CONFIG_SCSI_ENCLOSURE=m +CONFIG_SCSI_ESAS2R=m +CONFIG_SCSI_FC_ATTRS=y +CONFIG_SCSI_FDOMAIN=m +CONFIG_SCSI_FDOMAIN_PCI=m +CONFIG_SCSI_FLASHPOINT=y +CONFIG_SCSI_GDTH=m +CONFIG_SCSI_HPSA=m +CONFIG_SCSI_HPTIOP=m +CONFIG_SCSI_IMM=m +CONFIG_SCSI_INIA100=m +CONFIG_SCSI_INITIO=m +CONFIG_SCSI_IPR=m +CONFIG_SCSI_IPR_DUMP=y +CONFIG_SCSI_IPR_TRACE=y +CONFIG_SCSI_IPS=m +# CONFIG_SCSI_ISCI is not set +CONFIG_SCSI_ISCSI_ATTRS=m +# CONFIG_SCSI_IZIP_EPP16 is not set +# CONFIG_SCSI_IZIP_SLOW_CTR is not set +CONFIG_SCSI_LOGGING=y +CONFIG_SCSI_LOWLEVEL=y +CONFIG_SCSI_LPFC=m +# CONFIG_SCSI_LPFC_DEBUG_FS is not set +CONFIG_SCSI_MOD=y +CONFIG_SCSI_MPT2SAS=m +CONFIG_SCSI_MPT2SAS_MAX_SGE=128 +CONFIG_SCSI_MPT3SAS=m +CONFIG_SCSI_MPT3SAS_MAX_SGE=128 +CONFIG_SCSI_MVSAS=m +# CONFIG_SCSI_MVSAS_DEBUG is not set +# CONFIG_SCSI_MVSAS_TASKLET is not set +CONFIG_SCSI_MVUMI=m +CONFIG_SCSI_MYRB=m +CONFIG_SCSI_MYRS=m +CONFIG_SCSI_NETLINK=y +CONFIG_SCSI_PM8001=m +CONFIG_SCSI_PMCRAID=m +CONFIG_SCSI_PPA=m +CONFIG_SCSI_PROC_FS=y +CONFIG_SCSI_QLA_FC=m +CONFIG_SCSI_QLA_ISCSI=m +CONFIG_SCSI_QLOGIC_1280=m +CONFIG_SCSI_SAS_ATA=y +CONFIG_SCSI_SAS_ATTRS=m +CONFIG_SCSI_SAS_HOST_SMP=y +CONFIG_SCSI_SAS_LIBSAS=m +CONFIG_SCSI_SCAN_ASYNC=y +CONFIG_SCSI_SIM710=m +CONFIG_SCSI_SMARTPQI=m +CONFIG_SCSI_SNIC=m +# CONFIG_SCSI_SNIC_DEBUG_FS is not set +CONFIG_SCSI_SPI_ATTRS=m +CONFIG_SCSI_SRP_ATTRS=m +CONFIG_SCSI_STEX=m +CONFIG_SCSI_SYM53C8XX_2=m +CONFIG_SCSI_SYM53C8XX_DEFAULT_TAGS=16 +CONFIG_SCSI_SYM53C8XX_DMA_ADDRESSING_MODE=1 +CONFIG_SCSI_SYM53C8XX_MAX_TAGS=64 +CONFIG_SCSI_SYM53C8XX_MMIO=y +# CONFIG_SCSI_UFSHCD is not set +CONFIG_SCSI_VIRTIO=m +CONFIG_SCSI_WD719X=m +CONFIG_SCTP_COOKIE_HMAC_MD5=y +CONFIG_SCTP_COOKIE_HMAC_SHA1=y +# CONFIG_SCTP_DBG_OBJCNT is not set +# CONFIG_SCTP_DEFAULT_COOKIE_HMAC_MD5 is not set +# CONFIG_SCTP_DEFAULT_COOKIE_HMAC_NONE is not set +CONFIG_SCTP_DEFAULT_COOKIE_HMAC_SHA1=y +CONFIG_SECCOMP=y +CONFIG_SECCOMP_FILTER=y +CONFIG_SECONDARY_TRUSTED_KEYRING=y +CONFIG_SECTION_MISMATCH_WARN_ONLY=y +CONFIG_SECURITY=y +CONFIG_SECURITYFS=y +CONFIG_SECURITY_APPARMOR=y +CONFIG_SECURITY_APPARMOR_DEBUG=y +# CONFIG_SECURITY_APPARMOR_DEBUG_ASSERTS is not set +# CONFIG_SECURITY_APPARMOR_DEBUG_MESSAGES is not set +CONFIG_SECURITY_APPARMOR_HASH=y +CONFIG_SECURITY_APPARMOR_HASH_DEFAULT=y +# CONFIG_SECURITY_DMESG_RESTRICT is not set +CONFIG_SECURITY_INFINIBAND=y +# CONFIG_SECURITY_LOADPIN is not set +CONFIG_SECURITY_LOCKDOWN_LSM=y +CONFIG_SECURITY_LOCKDOWN_LSM_EARLY=y +CONFIG_SECURITY_NETWORK=y +CONFIG_SECURITY_NETWORK_XFRM=y +CONFIG_SECURITY_PATH=y +CONFIG_SECURITY_PERF_EVENTS_RESTRICT=y +CONFIG_SECURITY_SAFESETID=y +CONFIG_SECURITY_SELINUX=y +CONFIG_SECURITY_SELINUX_AVC_STATS=y +CONFIG_SECURITY_SELINUX_BOOTPARAM=y +CONFIG_SECURITY_SELINUX_CHECKREQPROT_VALUE=1 +CONFIG_SECURITY_SELINUX_DEVELOP=y +# CONFIG_SECURITY_SELINUX_DISABLE is not set +CONFIG_SECURITY_SELINUX_SID2STR_CACHE_SIZE=256 +CONFIG_SECURITY_SELINUX_SIDTAB_HASH_BITS=9 +CONFIG_SECURITY_SMACK=y +CONFIG_SECURITY_SMACK_APPEND_SIGNALS=y +# CONFIG_SECURITY_SMACK_BRINGUP is not set +CONFIG_SECURITY_SMACK_NETFILTER=y +CONFIG_SECURITY_TOMOYO=y +CONFIG_SECURITY_TOMOYO_ACTIVATION_TRIGGER="/sbin/init" +# CONFIG_SECURITY_TOMOYO_INSECURE_BUILTIN_SETTING is not set +CONFIG_SECURITY_TOMOYO_MAX_ACCEPT_ENTRY=2048 +CONFIG_SECURITY_TOMOYO_MAX_AUDIT_LOG=1024 +# CONFIG_SECURITY_TOMOYO_OMIT_USERSPACE_LOADER is not set +CONFIG_SECURITY_TOMOYO_POLICY_LOADER="/sbin/tomoyo-init" +CONFIG_SECURITY_YAMA=y +CONFIG_SELECT_MEMORY_MODEL=y +CONFIG_SENSORS_ABITUGURU=m +CONFIG_SENSORS_ABITUGURU3=m +CONFIG_SENSORS_ACPI_POWER=m +CONFIG_SENSORS_AD7314=m +CONFIG_SENSORS_AD7414=m +CONFIG_SENSORS_AD7418=m +CONFIG_SENSORS_ADC128D818=m +CONFIG_SENSORS_ADCXX=m +CONFIG_SENSORS_ADM1021=m +CONFIG_SENSORS_ADM1025=m +CONFIG_SENSORS_ADM1026=m +CONFIG_SENSORS_ADM1029=m +CONFIG_SENSORS_ADM1031=m +CONFIG_SENSORS_ADM1177=m +CONFIG_SENSORS_ADM9240=m +CONFIG_SENSORS_ADS7828=m +CONFIG_SENSORS_ADS7871=m +CONFIG_SENSORS_ADT7310=m +CONFIG_SENSORS_ADT7410=m +CONFIG_SENSORS_ADT7411=m +CONFIG_SENSORS_ADT7462=m +CONFIG_SENSORS_ADT7470=m +CONFIG_SENSORS_ADT7475=m +CONFIG_SENSORS_ADT7X10=m +CONFIG_SENSORS_AMC6821=m +CONFIG_SENSORS_AMD_ENERGY=m +CONFIG_SENSORS_APDS990X=m +CONFIG_SENSORS_APPLESMC=m +CONFIG_SENSORS_AS370=m +CONFIG_SENSORS_ASB100=m +CONFIG_SENSORS_ASC7621=m +CONFIG_SENSORS_ASPEED=m +CONFIG_SENSORS_ATK0110=m +CONFIG_SENSORS_ATXP1=m +CONFIG_SENSORS_AXI_FAN_CONTROL=m +CONFIG_SENSORS_BH1770=m +CONFIG_SENSORS_CORETEMP=m +CONFIG_SENSORS_DA9052_ADC=m +CONFIG_SENSORS_DELL_SMM=m +CONFIG_SENSORS_DME1737=m +CONFIG_SENSORS_DRIVETEMP=m +CONFIG_SENSORS_DS1621=m +CONFIG_SENSORS_DS620=m +CONFIG_SENSORS_EMC1403=m +CONFIG_SENSORS_EMC2103=m +CONFIG_SENSORS_EMC6W201=m +CONFIG_SENSORS_F71805F=m +CONFIG_SENSORS_F71882FG=m +CONFIG_SENSORS_F75375S=m +CONFIG_SENSORS_FAM15H_POWER=m +CONFIG_SENSORS_FSCHMD=m +CONFIG_SENSORS_FTSTEUTATES=m +CONFIG_SENSORS_G760A=m +CONFIG_SENSORS_G762=m +CONFIG_SENSORS_GL518SM=m +CONFIG_SENSORS_GL520SM=m +# CONFIG_SENSORS_HDAPS is not set +CONFIG_SENSORS_HIH6130=m +CONFIG_SENSORS_I5500=m +CONFIG_SENSORS_I5K_AMB=m +CONFIG_SENSORS_IBMAEM=m +CONFIG_SENSORS_IBMPEX=m +CONFIG_SENSORS_INA209=m +CONFIG_SENSORS_INA2XX=m +CONFIG_SENSORS_INA3221=m +CONFIG_SENSORS_IT87=m +CONFIG_SENSORS_JC42=m +CONFIG_SENSORS_K10TEMP=m +CONFIG_SENSORS_K8TEMP=m +CONFIG_SENSORS_LINEAGE=m +# CONFIG_SENSORS_LIS3_I2C is not set +CONFIG_SENSORS_LM63=m +CONFIG_SENSORS_LM70=m +CONFIG_SENSORS_LM73=m +CONFIG_SENSORS_LM75=m +CONFIG_SENSORS_LM77=m +CONFIG_SENSORS_LM78=m +CONFIG_SENSORS_LM80=m +CONFIG_SENSORS_LM83=m +CONFIG_SENSORS_LM85=m +CONFIG_SENSORS_LM87=m +CONFIG_SENSORS_LM90=m +CONFIG_SENSORS_LM92=m +CONFIG_SENSORS_LM93=m +CONFIG_SENSORS_LM95234=m +CONFIG_SENSORS_LM95241=m +CONFIG_SENSORS_LM95245=m +CONFIG_SENSORS_LTC2945=m +CONFIG_SENSORS_LTC2947=m +CONFIG_SENSORS_LTC2947_I2C=m +CONFIG_SENSORS_LTC2947_SPI=m +CONFIG_SENSORS_LTC2990=m +CONFIG_SENSORS_LTC4151=m +CONFIG_SENSORS_LTC4215=m +CONFIG_SENSORS_LTC4222=m +CONFIG_SENSORS_LTC4245=m +CONFIG_SENSORS_LTC4260=m +CONFIG_SENSORS_LTC4261=m +CONFIG_SENSORS_MAX1111=m +CONFIG_SENSORS_MAX16065=m +CONFIG_SENSORS_MAX1619=m +CONFIG_SENSORS_MAX1668=m +CONFIG_SENSORS_MAX197=m +CONFIG_SENSORS_MAX31722=m +CONFIG_SENSORS_MAX31730=m +CONFIG_SENSORS_MAX31790=m +CONFIG_SENSORS_MAX6621=m +CONFIG_SENSORS_MAX6639=m +CONFIG_SENSORS_MAX6642=m +CONFIG_SENSORS_MAX6650=m +CONFIG_SENSORS_MAX6697=m +CONFIG_SENSORS_MC13783_ADC=m +CONFIG_SENSORS_MCP3021=m +CONFIG_SENSORS_MENF21BMC_HWMON=m +CONFIG_SENSORS_MLXREG_FAN=m +CONFIG_SENSORS_NCT6683=m +CONFIG_SENSORS_NCT6775=m +CONFIG_SENSORS_NCT7802=m +CONFIG_SENSORS_NCT7904=m +CONFIG_SENSORS_NPCM7XX=m +CONFIG_SENSORS_NTC_THERMISTOR=m +CONFIG_SENSORS_PC87360=m +CONFIG_SENSORS_PC87427=m +CONFIG_SENSORS_PCF8591=m +CONFIG_SENSORS_POWR1220=m +CONFIG_SENSORS_SCH5627=m +CONFIG_SENSORS_SCH5636=m +CONFIG_SENSORS_SCH56XX_COMMON=m +CONFIG_SENSORS_SHT15=m +CONFIG_SENSORS_SHT21=m +CONFIG_SENSORS_SHT3x=m +CONFIG_SENSORS_SHTC1=m +CONFIG_SENSORS_SIS5595=m +CONFIG_SENSORS_SMM665=m +CONFIG_SENSORS_SMSC47B397=m +CONFIG_SENSORS_SMSC47M1=m +CONFIG_SENSORS_SMSC47M192=m +CONFIG_SENSORS_STTS751=m +CONFIG_SENSORS_TC654=m +CONFIG_SENSORS_TC74=m +CONFIG_SENSORS_THMC50=m +CONFIG_SENSORS_TMP102=m +CONFIG_SENSORS_TMP103=m +CONFIG_SENSORS_TMP108=m +CONFIG_SENSORS_TMP401=m +CONFIG_SENSORS_TMP421=m +CONFIG_SENSORS_TMP513=m +CONFIG_SENSORS_TSL2550=m +CONFIG_SENSORS_VIA686A=m +CONFIG_SENSORS_VIA_CPUTEMP=m +CONFIG_SENSORS_VT1211=m +CONFIG_SENSORS_VT8231=m +CONFIG_SENSORS_W83627EHF=m +CONFIG_SENSORS_W83627HF=m +CONFIG_SENSORS_W83773G=m +CONFIG_SENSORS_W83781D=m +CONFIG_SENSORS_W83791D=m +CONFIG_SENSORS_W83792D=m +CONFIG_SENSORS_W83793=m +CONFIG_SENSORS_W83795=m +# CONFIG_SENSORS_W83795_FANCTRL is not set +CONFIG_SENSORS_W83L785TS=m +CONFIG_SENSORS_W83L786NG=m +CONFIG_SENSORS_WM831X=m +CONFIG_SENSORS_XGENE=m +CONFIG_SERIAL_8250=y +CONFIG_SERIAL_8250_16550A_VARIANTS=y +CONFIG_SERIAL_8250_CONSOLE=y +# CONFIG_SERIAL_8250_DEPRECATED_OPTIONS is not set +# CONFIG_SERIAL_8250_DETECT_IRQ is not set +CONFIG_SERIAL_8250_DMA=y +CONFIG_SERIAL_8250_DW=m +CONFIG_SERIAL_8250_DWLIB=y +CONFIG_SERIAL_8250_EXAR=m +CONFIG_SERIAL_8250_EXTENDED=y +CONFIG_SERIAL_8250_FINTEK=y +CONFIG_SERIAL_8250_LPSS=m +CONFIG_SERIAL_8250_MANY_PORTS=y +CONFIG_SERIAL_8250_MEN_MCB=m +CONFIG_SERIAL_8250_MID=m +CONFIG_SERIAL_8250_NR_UARTS=48 +CONFIG_SERIAL_8250_PCI=y +CONFIG_SERIAL_8250_PNP=y +CONFIG_SERIAL_8250_RSA=y +CONFIG_SERIAL_8250_RT288X=y +CONFIG_SERIAL_8250_RUNTIME_UARTS=32 +CONFIG_SERIAL_8250_SHARE_IRQ=y +CONFIG_SERIAL_ALTERA_JTAGUART=m +CONFIG_SERIAL_ALTERA_UART=m +CONFIG_SERIAL_ALTERA_UART_BAUDRATE=115200 +CONFIG_SERIAL_ALTERA_UART_MAXPORTS=4 +CONFIG_SERIAL_ARC=m +CONFIG_SERIAL_ARC_NR_PORTS=1 +CONFIG_SERIAL_CORE=y +CONFIG_SERIAL_CORE_CONSOLE=y +# CONFIG_SERIAL_DEV_BUS is not set +CONFIG_SERIAL_EARLYCON=y +CONFIG_SERIAL_FSL_LINFLEXUART=m +CONFIG_SERIAL_FSL_LPUART=m +# CONFIG_SERIAL_IFX6X60 is not set +# CONFIG_SERIAL_IPOCTAL is not set +CONFIG_SERIAL_JSM=m +CONFIG_SERIAL_KGDB_NMI=y +CONFIG_SERIAL_LANTIQ=m +CONFIG_SERIAL_MAX3100=m +CONFIG_SERIAL_MAX310X=y +CONFIG_SERIAL_MCTRL_GPIO=y +CONFIG_SERIAL_MEN_Z135=m +CONFIG_SERIAL_NONSTANDARD=y +CONFIG_SERIAL_RP2=m +CONFIG_SERIAL_RP2_NR_UARTS=32 +CONFIG_SERIAL_SC16IS7XX=m +CONFIG_SERIAL_SC16IS7XX_CORE=m +CONFIG_SERIAL_SC16IS7XX_I2C=y +CONFIG_SERIAL_SC16IS7XX_SPI=y +CONFIG_SERIAL_SCCNXP=y +CONFIG_SERIAL_SCCNXP_CONSOLE=y +CONFIG_SERIAL_SPRD=m +CONFIG_SERIAL_UARTLITE=m +CONFIG_SERIAL_UARTLITE_NR_UARTS=1 +CONFIG_SERIO=y +CONFIG_SERIO_ALTERA_PS2=m +CONFIG_SERIO_ARC_PS2=m +CONFIG_SERIO_CT82C710=m +CONFIG_SERIO_GPIO_PS2=m +CONFIG_SERIO_I8042=y +CONFIG_SERIO_LIBPS2=y +CONFIG_SERIO_PARKBD=m +CONFIG_SERIO_PCIPS2=m +CONFIG_SERIO_PS2MULT=m +CONFIG_SERIO_RAW=m +CONFIG_SERIO_SERPORT=m +CONFIG_SFC=m +CONFIG_SFC_FALCON=m +CONFIG_SFC_MCDI_LOGGING=y +CONFIG_SFC_MCDI_MON=y +CONFIG_SFC_SRIOV=y +CONFIG_SFI=y +CONFIG_SFP=m +CONFIG_SF_PDMA=m +CONFIG_SGETMASK_SYSCALL=y +CONFIG_SGI_PARTITION=y +CONFIG_SGL_ALLOC=y +CONFIG_SG_POOL=y +CONFIG_SHIFT_FS=m +CONFIG_SHIFT_FS_POSIX_ACL=y +CONFIG_SHMEM=y +CONFIG_SHUFFLE_PAGE_ALLOCATOR=y +CONFIG_SIGNALFD=y +CONFIG_SIGNATURE=y +CONFIG_SIGNED_PE_FILE_VERIFICATION=y +CONFIG_SIOX=m +CONFIG_SIOX_BUS_GPIO=m +CONFIG_SKB_EXTENSIONS=y +CONFIG_SKFP=m +CONFIG_SKGE=m +# CONFIG_SKGE_DEBUG is not set +CONFIG_SKGE_GENESIS=y +CONFIG_SKY2=m +# CONFIG_SKY2_DEBUG is not set +# CONFIG_SLAB is not set +CONFIG_SLAB_FREELIST_HARDENED=y +CONFIG_SLAB_FREELIST_RANDOM=y +CONFIG_SLAB_MERGE_DEFAULT=y +CONFIG_SLHC=y +CONFIG_SLICOSS=m +CONFIG_SLIMBUS=m +CONFIG_SLIM_QCOM_CTRL=m +CONFIG_SLIP=m +CONFIG_SLIP_COMPRESSED=y +CONFIG_SLIP_MODE_SLIP6=y +CONFIG_SLIP_SMART=y +# CONFIG_SLOB is not set +CONFIG_SLUB=y +CONFIG_SLUB_CPU_PARTIAL=y +CONFIG_SLUB_DEBUG=y +# CONFIG_SLUB_DEBUG_ON is not set +CONFIG_SLUB_MEMCG_SYSFS_ON=y +# CONFIG_SLUB_STATS is not set +CONFIG_SMC=m +CONFIG_SMC_DIAG=m +CONFIG_SMP=y +CONFIG_SMSC37B787_WDT=m +# CONFIG_SMSC_PHY is not set +CONFIG_SMSC_SCH311X_WDT=m +CONFIG_SOCK_CGROUP_DATA=y +CONFIG_SOCK_VALIDATE_XMIT=y +CONFIG_SOC_TI=y +CONFIG_SOFTLOCKUP_DETECTOR=y +CONFIG_SOFT_WATCHDOG=m +CONFIG_SOFT_WATCHDOG_PRETIMEOUT=y +CONFIG_SOLARIS_X86_PARTITION=y +# CONFIG_SONY_LAPTOP is not set +# CONFIG_SOUND is not set +CONFIG_SOUNDWIRE=m +CONFIG_SP5100_TCO=m +CONFIG_SPARSEMEM=y +CONFIG_SPARSEMEM_EXTREME=y +CONFIG_SPARSEMEM_MANUAL=y +CONFIG_SPARSEMEM_VMEMMAP=y +CONFIG_SPARSEMEM_VMEMMAP_ENABLE=y +CONFIG_SPARSE_IRQ=y +# CONFIG_SPEAKUP is not set +CONFIG_SPI=y +CONFIG_SPI_ALTERA=m +CONFIG_SPI_AMD=m +CONFIG_SPI_AXI_SPI_ENGINE=m +CONFIG_SPI_BITBANG=m +CONFIG_SPI_BUTTERFLY=m +CONFIG_SPI_CADENCE=m +# CONFIG_SPI_DEBUG is not set +CONFIG_SPI_DESIGNWARE=m +CONFIG_SPI_DW_DMA=y +CONFIG_SPI_DW_MMIO=m +CONFIG_SPI_DW_PCI=m +CONFIG_SPI_DYNAMIC=y +CONFIG_SPI_GPIO=m +CONFIG_SPI_LM70_LLP=m +CONFIG_SPI_LOOPBACK_TEST=m +CONFIG_SPI_MASTER=y +CONFIG_SPI_MEM=y +CONFIG_SPI_MUX=m +CONFIG_SPI_MXIC=m +CONFIG_SPI_NXP_FLEXSPI=m +CONFIG_SPI_OC_TINY=m +CONFIG_SPI_PXA2XX=m +CONFIG_SPI_PXA2XX_PCI=m +# CONFIG_SPI_ROCKCHIP is not set +CONFIG_SPI_SC18IS602=m +CONFIG_SPI_SIFIVE=m +CONFIG_SPI_SLAVE=y +CONFIG_SPI_SLAVE_SYSTEM_CONTROL=m +CONFIG_SPI_SLAVE_TIME=m +CONFIG_SPI_SPIDEV=m +CONFIG_SPI_TLE62X0=m +CONFIG_SPI_XCOMM=m +# CONFIG_SPI_XILINX is not set +CONFIG_SPI_ZYNQMP_GQSPI=m +CONFIG_SPLIT_PTLOCK_CPUS=4 +# CONFIG_SPMI is not set +CONFIG_SQUASHFS=y +# CONFIG_SQUASHFS_4K_DEVBLK_SIZE is not set +# CONFIG_SQUASHFS_DECOMP_MULTI is not set +# CONFIG_SQUASHFS_DECOMP_MULTI_PERCPU is not set +CONFIG_SQUASHFS_DECOMP_SINGLE=y +# CONFIG_SQUASHFS_EMBEDDED is not set +# CONFIG_SQUASHFS_FILE_CACHE is not set +CONFIG_SQUASHFS_FILE_DIRECT=y +CONFIG_SQUASHFS_FRAGMENT_CACHE_SIZE=3 +CONFIG_SQUASHFS_LZ4=y +CONFIG_SQUASHFS_LZO=y +CONFIG_SQUASHFS_XATTR=y +CONFIG_SQUASHFS_XZ=y +CONFIG_SQUASHFS_ZLIB=y +CONFIG_SQUASHFS_ZSTD=y +CONFIG_SRAM=y +CONFIG_SRCU=y +CONFIG_SSB=m +CONFIG_SSB_DRIVER_GPIO=y +CONFIG_SSB_DRIVER_PCICORE=y +CONFIG_SSB_DRIVER_PCICORE_POSSIBLE=y +CONFIG_SSB_PCIHOST=y +CONFIG_SSB_PCIHOST_POSSIBLE=y +CONFIG_SSB_POSSIBLE=y +CONFIG_SSB_SPROM=y +CONFIG_STACKPROTECTOR=y +CONFIG_STACKPROTECTOR_STRONG=y +CONFIG_STACKTRACE=y +CONFIG_STACKTRACE_SUPPORT=y +CONFIG_STACK_TRACER=y +CONFIG_STACK_VALIDATION=y +CONFIG_STAGING=y +CONFIG_STAGING_APEX_DRIVER=m +CONFIG_STAGING_GASKET_FRAMEWORK=m +CONFIG_STAGING_MEDIA=y +# CONFIG_STANDALONE is not set +# CONFIG_STATIC_KEYS_SELFTEST is not set +# CONFIG_STATIC_USERMODEHELPER is not set +# CONFIG_STE10XP is not set +# CONFIG_STM is not set +CONFIG_STP=m +CONFIG_STREAM_PARSER=y +CONFIG_STRICT_DEVMEM=y +CONFIG_STRICT_KERNEL_RWX=y +CONFIG_STRICT_MODULE_RWX=y +# CONFIG_STRING_SELFTEST is not set +# CONFIG_STRIP_ASM_SYMS is not set +CONFIG_SUNDANCE=m +# CONFIG_SUNDANCE_MMIO is not set +CONFIG_SUNRPC=m +CONFIG_SUNRPC_BACKCHANNEL=y +CONFIG_SUNRPC_DEBUG=y +# CONFIG_SUNRPC_DISABLE_INSECURE_ENCTYPES is not set +CONFIG_SUNRPC_GSS=m +CONFIG_SUNRPC_SWAP=y +CONFIG_SUNRPC_XPRT_RDMA=m +CONFIG_SUN_PARTITION=y +CONFIG_SURFACE3_WMI=m +CONFIG_SURFACE_3_POWER_OPREGION=m +# CONFIG_SURFACE_PRO3_BUTTON is not set +CONFIG_SUSPEND=y +CONFIG_SUSPEND_FREEZER=y +# CONFIG_SUSPEND_SKIP_SYNC is not set +CONFIG_SWAP=y +CONFIG_SWIOTLB=y +CONFIG_SWPHY=y +CONFIG_SW_SYNC=y +CONFIG_SYMBOLIC_ERRNAME=y +CONFIG_SYNCLINK=m +CONFIG_SYNCLINKMP=m +CONFIG_SYNCLINK_GT=m +CONFIG_SYNC_FILE=y +CONFIG_SYNTH_EVENTS=y +# CONFIG_SYNTH_EVENT_GEN_TEST is not set +CONFIG_SYN_COOKIES=y +CONFIG_SYSCTL=y +CONFIG_SYSCTL_EXCEPTION_TRACE=y +CONFIG_SYSFS=y +# CONFIG_SYSFS_DEPRECATED is not set +CONFIG_SYSFS_SYSCALL=y +CONFIG_SYSTEM76_ACPI=m +CONFIG_SYSTEMPORT=m +CONFIG_SYSTEM_BLACKLIST_HASH_LIST="" +CONFIG_SYSTEM_BLACKLIST_KEYRING=y +CONFIG_SYSTEM_DATA_VERIFICATION=y +CONFIG_SYSTEM_EXTRA_CERTIFICATE=y +CONFIG_SYSTEM_EXTRA_CERTIFICATE_SIZE=4096 +CONFIG_SYSTEM_TRUSTED_KEYRING=y +CONFIG_SYSTEM_TRUSTED_KEYS="debian/canonical-certs.pem" +CONFIG_SYSV68_PARTITION=y +CONFIG_SYSVIPC=y +CONFIG_SYSVIPC_COMPAT=y +CONFIG_SYSVIPC_SYSCTL=y +CONFIG_SYSV_FS=m +# CONFIG_TABLET_SERIAL_WACOM4 is not set +# CONFIG_TABLET_USB_ACECAD is not set +# CONFIG_TABLET_USB_AIPTEK is not set +# CONFIG_TABLET_USB_GTCO is not set +# CONFIG_TABLET_USB_HANWANG is not set +# CONFIG_TABLET_USB_KBTAB is not set +# CONFIG_TABLET_USB_PEGASUS is not set +# CONFIG_TAHVO_USB is not set +CONFIG_TAP=m +CONFIG_TARGET_CORE=m +CONFIG_TASKSTATS=y +CONFIG_TASKS_RCU=y +CONFIG_TASKS_RCU_GENERIC=y +CONFIG_TASKS_RUDE_RCU=y +CONFIG_TASKS_TRACE_RCU=y +CONFIG_TASK_DELAY_ACCT=y +CONFIG_TASK_IO_ACCOUNTING=y +CONFIG_TASK_XACCT=y +# CONFIG_TCG_ATMEL is not set +CONFIG_TCG_CRB=y +# CONFIG_TCG_INFINEON is not set +# CONFIG_TCG_NSC is not set +CONFIG_TCG_TIS=y +CONFIG_TCG_TIS_CORE=y +# CONFIG_TCG_TIS_I2C_ATMEL is not set +# CONFIG_TCG_TIS_I2C_INFINEON is not set +# CONFIG_TCG_TIS_I2C_NUVOTON is not set +# CONFIG_TCG_TIS_SPI is not set +# CONFIG_TCG_TIS_ST33ZP24_I2C is not set +# CONFIG_TCG_TIS_ST33ZP24_SPI is not set +CONFIG_TCG_TPM=y +# CONFIG_TCG_VTPM_PROXY is not set +CONFIG_TCM_FILEIO=m +CONFIG_TCM_IBLOCK=m +CONFIG_TCM_PSCSI=m +CONFIG_TCM_USER2=m +CONFIG_TCP_CONG_ADVANCED=y +CONFIG_TCP_CONG_BBR=m +CONFIG_TCP_CONG_BIC=m +CONFIG_TCP_CONG_CDG=m +CONFIG_TCP_CONG_CUBIC=y +CONFIG_TCP_CONG_DCTCP=m +CONFIG_TCP_CONG_HSTCP=m +CONFIG_TCP_CONG_HTCP=m +CONFIG_TCP_CONG_HYBLA=m +CONFIG_TCP_CONG_ILLINOIS=m +CONFIG_TCP_CONG_LP=m +CONFIG_TCP_CONG_NV=m +CONFIG_TCP_CONG_SCALABLE=m +CONFIG_TCP_CONG_VEGAS=m +CONFIG_TCP_CONG_VENO=m +CONFIG_TCP_CONG_WESTWOOD=m +CONFIG_TCP_CONG_YEAH=m +CONFIG_TCP_MD5SIG=y +CONFIG_TEE=m +CONFIG_TELCLOCK=m +# CONFIG_TERANETICS_PHY is not set +# CONFIG_TEST_ASYNC_DRIVER_PROBE is not set +# CONFIG_TEST_LOCKUP is not set +# CONFIG_TEST_POWER is not set +CONFIG_TEXTSEARCH=y +CONFIG_TEXTSEARCH_BM=m +CONFIG_TEXTSEARCH_FSM=m +CONFIG_TEXTSEARCH_KMP=m +CONFIG_THERMAL=y +# CONFIG_THERMAL_DEFAULT_GOV_FAIR_SHARE is not set +# CONFIG_THERMAL_DEFAULT_GOV_POWER_ALLOCATOR is not set +CONFIG_THERMAL_DEFAULT_GOV_STEP_WISE=y +# CONFIG_THERMAL_DEFAULT_GOV_USER_SPACE is not set +CONFIG_THERMAL_EMERGENCY_POWEROFF_DELAY_MS=0 +CONFIG_THERMAL_EMULATION=y +CONFIG_THERMAL_GOV_BANG_BANG=y +CONFIG_THERMAL_GOV_FAIR_SHARE=y +CONFIG_THERMAL_GOV_POWER_ALLOCATOR=y +CONFIG_THERMAL_GOV_STEP_WISE=y +CONFIG_THERMAL_GOV_USER_SPACE=y +CONFIG_THERMAL_HWMON=y +CONFIG_THERMAL_STATISTICS=y +CONFIG_THERMAL_WRITABLE_TRIPS=y +CONFIG_THP_SWAP=y +CONFIG_THREAD_INFO_IN_TASK=y +CONFIG_TICK_ONESHOT=y +CONFIG_TIFM_7XX1=m +CONFIG_TIFM_CORE=m +CONFIG_TIGON3=m +CONFIG_TIGON3_HWMON=y +CONFIG_TIMERFD=y +CONFIG_TIME_NS=y +CONFIG_TINYDRM_HX8357D=m +CONFIG_TINYDRM_ILI9225=m +CONFIG_TINYDRM_ILI9341=m +CONFIG_TINYDRM_ILI9486=m +CONFIG_TINYDRM_MI0283QT=m +CONFIG_TINYDRM_REPAPER=m +CONFIG_TINYDRM_ST7586=m +CONFIG_TINYDRM_ST7735R=m +CONFIG_TIPC=m +CONFIG_TIPC_CRYPTO=y +CONFIG_TIPC_DIAG=m +# CONFIG_TIPC_MEDIA_IB is not set +CONFIG_TIPC_MEDIA_UDP=y +# CONFIG_TI_ST is not set +CONFIG_TLS=m +CONFIG_TLS_DEVICE=y +# CONFIG_TLS_TOE is not set +CONFIG_TMPFS=y +CONFIG_TMPFS_POSIX_ACL=y +CONFIG_TMPFS_XATTR=y +# CONFIG_TOPSTAR_LAPTOP is not set +CONFIG_TORTURE_TEST=m +# CONFIG_TOSHIBA_BT_RFKILL is not set +# CONFIG_TOSHIBA_HAPS is not set +# CONFIG_TOSHIBA_WMI is not set +CONFIG_TPM_KEY_PARSER=m +CONFIG_TPS6105X=m +CONFIG_TPS65010=m +CONFIG_TPS6507X=m +CONFIG_TQMX86_WDT=m +CONFIG_TRACEPOINTS=y +# CONFIG_TRACEPOINT_BENCHMARK is not set +CONFIG_TRACER_MAX_TRACE=y +CONFIG_TRACER_SNAPSHOT=y +# CONFIG_TRACER_SNAPSHOT_PER_CPU_SWAP is not set +CONFIG_TRACE_CLOCK=y +# CONFIG_TRACE_EVAL_MAP_FILE is not set +CONFIG_TRACE_EVENT_INJECT=y +CONFIG_TRACE_IRQFLAGS_SUPPORT=y +CONFIG_TRACE_ROUTER=m +CONFIG_TRACE_SINK=m +CONFIG_TRACING=y +CONFIG_TRACING_MAP=y +CONFIG_TRACING_SUPPORT=y +CONFIG_TRANSPARENT_HUGEPAGE=y +CONFIG_TRANSPARENT_HUGEPAGE_ALWAYS=y +# CONFIG_TRANSPARENT_HUGEPAGE_MADVISE is not set +CONFIG_TREE_RCU=y +CONFIG_TREE_SRCU=y +CONFIG_TRUSTED_KEYS=y +CONFIG_TTY=y +CONFIG_TTY_PRINTK=y +CONFIG_TTY_PRINTK_LEVEL=6 +CONFIG_TUN=y +# CONFIG_TUN_VNET_CROSS_LE is not set +# CONFIG_TYPEC is not set +CONFIG_UACCE=m +# CONFIG_UBSAN is not set +CONFIG_UBUNTU_HOST=m +CONFIG_UCLAMP_BUCKETS_COUNT=5 +CONFIG_UCLAMP_TASK=y +CONFIG_UCLAMP_TASK_GROUP=y +CONFIG_UCS2_STRING=y +CONFIG_UDF_FS=m +CONFIG_UDMABUF=y +CONFIG_UEFI_CPER=y +CONFIG_UEFI_CPER_X86=y +CONFIG_UEVENT_HELPER=y +CONFIG_UEVENT_HELPER_PATH="" +# CONFIG_UFS_DEBUG is not set +CONFIG_UFS_FS=m +# CONFIG_UFS_FS_WRITE is not set +CONFIG_UHID=m +CONFIG_UID16=y +CONFIG_UIO=m +CONFIG_UIO_AEC=m +CONFIG_UIO_CIF=m +CONFIG_UIO_DMEM_GENIRQ=m +CONFIG_UIO_HV_GENERIC=m +CONFIG_UIO_MF624=m +CONFIG_UIO_NETX=m +CONFIG_UIO_PCI_GENERIC=m +CONFIG_UIO_PDRV_GENIRQ=m +CONFIG_UIO_PRUSS=m +CONFIG_UIO_SERCOS3=m +CONFIG_ULTRIX_PARTITION=y +CONFIG_UNICODE=y +# CONFIG_UNICODE_NORMALIZATION_SELFTEST is not set +CONFIG_UNISYSSPAR=y +# CONFIG_UNISYS_VISORBUS is not set +CONFIG_UNIX=y +CONFIG_UNIX98_PTYS=y +CONFIG_UNIXWARE_DISKLABEL=y +CONFIG_UNIX_DIAG=m +CONFIG_UNIX_SCM=y +CONFIG_UNUSED_SYMBOLS=y +CONFIG_UNWINDER_FRAME_POINTER=y +# CONFIG_UNWINDER_GUESS is not set +# CONFIG_UNWINDER_ORC is not set +CONFIG_UPROBES=y +CONFIG_UPROBE_EVENTS=y +CONFIG_USB=y +CONFIG_USB4=m +CONFIG_USB4_NET=m +# CONFIG_USBIP_CORE is not set +# CONFIG_USBPCWATCHDOG is not set +CONFIG_USB_ACM=m +# CONFIG_USB_ADUTUX is not set +# CONFIG_USB_ANNOUNCE_NEW_DEVICES is not set +# CONFIG_USB_APPLEDISPLAY is not set +CONFIG_USB_ARCH_HAS_HCD=y +# CONFIG_USB_ATM is not set +CONFIG_USB_AUTOSUSPEND_DELAY=2 +# CONFIG_USB_C67X00_HCD is not set +# CONFIG_USB_CDNS3 is not set +# CONFIG_USB_CHAOSKEY is not set +CONFIG_USB_COMMON=y +# CONFIG_USB_CONN_GPIO is not set +# CONFIG_USB_CYPRESS_CY7C63 is not set +# CONFIG_USB_CYTHERM is not set +# CONFIG_USB_DEFAULT_PERSIST is not set +# CONFIG_USB_DWC2 is not set +# CONFIG_USB_DWC3 is not set +# CONFIG_USB_DYNAMIC_MINORS is not set +# CONFIG_USB_EHCI_HCD is not set +# CONFIG_USB_EHSET_TEST_FIXTURE is not set +# CONFIG_USB_EMI26 is not set +# CONFIG_USB_EMI62 is not set +# CONFIG_USB_EZUSB_FX2 is not set +# CONFIG_USB_FOTG210_HCD is not set +# CONFIG_USB_FTDI_ELAN is not set +# CONFIG_USB_GADGET is not set +# CONFIG_USB_GPIO_VBUS is not set +# CONFIG_USB_HCD_BCMA is not set +# CONFIG_USB_HCD_SSB is not set +# CONFIG_USB_HCD_TEST_MODE is not set +# CONFIG_USB_HID is not set +# CONFIG_USB_HSIC_USB3503 is not set +# CONFIG_USB_HSIC_USB4604 is not set +# CONFIG_USB_HUB_USB251XB is not set +# CONFIG_USB_IDMOUSE is not set +# CONFIG_USB_IOWARRIOR is not set +# CONFIG_USB_ISIGHTFW is not set +# CONFIG_USB_ISP116X_HCD is not set +# CONFIG_USB_ISP1301 is not set +# CONFIG_USB_ISP1760 is not set +# CONFIG_USB_KBD is not set +# CONFIG_USB_LCD is not set +# CONFIG_USB_LD is not set +# CONFIG_USB_LEDS_TRIGGER_USBPORT is not set +# CONFIG_USB_LED_TRIG is not set +# CONFIG_USB_LEGOTOWER is not set +# CONFIG_USB_LINK_LAYER_TEST is not set +# CONFIG_USB_MAX3421_HCD is not set +# CONFIG_USB_MDC800 is not set +# CONFIG_USB_MICROTEK is not set +# CONFIG_USB_MON is not set +# CONFIG_USB_MOUSE is not set +# CONFIG_USB_MUSB_HDRC is not set +# CONFIG_USB_NET_DRIVERS is not set +# CONFIG_USB_OHCI_HCD is not set +CONFIG_USB_OHCI_LITTLE_ENDIAN=y +# CONFIG_USB_OTG is not set +# CONFIG_USB_OTG_BLACKLIST_HUB is not set +# CONFIG_USB_OTG_WHITELIST is not set +# CONFIG_USB_OXU210HP_HCD is not set +CONFIG_USB_PCI=y +# CONFIG_USB_PRINTER is not set +CONFIG_USB_PULSE8_CEC=m +# CONFIG_USB_R8A66597_HCD is not set +CONFIG_USB_RAINSHADOW_CEC=m +# CONFIG_USB_ROLE_SWITCH is not set +# CONFIG_USB_SERIAL is not set +# CONFIG_USB_SEVSEG is not set +# CONFIG_USB_SL811_HCD is not set +# CONFIG_USB_STORAGE is not set +CONFIG_USB_SUPPORT=y +# CONFIG_USB_TEST is not set +# CONFIG_USB_TMC is not set +# CONFIG_USB_TRANCEVIBRATOR is not set +# CONFIG_USB_UHCI_HCD is not set +# CONFIG_USB_ULPI_BUS is not set +# CONFIG_USB_USS720 is not set +# CONFIG_USB_WDM is not set +CONFIG_USB_XHCI_DBGCAP=y +CONFIG_USB_XHCI_HCD=y +CONFIG_USB_XHCI_PCI=y +# CONFIG_USB_XHCI_PCI_RENESAS is not set +CONFIG_USB_XHCI_PLATFORM=m +# CONFIG_USB_YUREX is not set +CONFIG_USELIB=y +CONFIG_USERFAULTFD=y +CONFIG_USERIO=m +CONFIG_USER_NS=y +CONFIG_USER_RETURN_NOTIFIER=y +CONFIG_USER_STACKTRACE_SUPPORT=y +CONFIG_USE_PERCPU_NUMA_NODE_ID=y +CONFIG_UTS_NS=y +CONFIG_V4L2_FWNODE=m +CONFIG_V4L2_MEM2MEM_DEV=m +CONFIG_V4L_MEM2MEM_DRIVERS=y +CONFIG_V4L_PLATFORM_DRIVERS=y +CONFIG_V4L_TEST_DRIVERS=y +CONFIG_VALIDATE_FS_PARSER=y +# CONFIG_VBOXGUEST is not set +CONFIG_VDPA=m +CONFIG_VERSION_SIGNATURE="" +CONFIG_VETH=m +CONFIG_VFAT_FS=y +CONFIG_VFIO=y +CONFIG_VFIO_IOMMU_TYPE1=y +CONFIG_VFIO_MDEV=m +CONFIG_VFIO_MDEV_DEVICE=m +CONFIG_VFIO_NOIOMMU=y +CONFIG_VFIO_PCI=y +CONFIG_VFIO_PCI_IGD=y +CONFIG_VFIO_PCI_INTX=y +CONFIG_VFIO_PCI_MMAP=y +CONFIG_VFIO_PCI_VGA=y +CONFIG_VFIO_VIRQFD=y +CONFIG_VGA_ARB=y +CONFIG_VGA_ARB_MAX_GPUS=16 +CONFIG_VGA_CONSOLE=y +CONFIG_VGA_SWITCHEROO=y +CONFIG_VHOST=m +# CONFIG_VHOST_CROSS_ENDIAN_LEGACY is not set +CONFIG_VHOST_IOTLB=m +CONFIG_VHOST_MENU=y +CONFIG_VHOST_NET=m +CONFIG_VHOST_RING=m +CONFIG_VHOST_SCSI=m +CONFIG_VHOST_VDPA=m +CONFIG_VHOST_VSOCK=m +CONFIG_VIA_WDT=m +CONFIG_VIDEOBUF2_CORE=m +CONFIG_VIDEOBUF2_DMA_CONTIG=m +CONFIG_VIDEOBUF2_DMA_SG=m +CONFIG_VIDEOBUF2_MEMOPS=m +CONFIG_VIDEOBUF2_V4L2=m +CONFIG_VIDEOBUF2_VMALLOC=m +CONFIG_VIDEOBUF_GEN=m +CONFIG_VIDEOBUF_VMALLOC=m +CONFIG_VIDEO_AD9389B=m +CONFIG_VIDEO_ADV7170=m +CONFIG_VIDEO_ADV7175=m +CONFIG_VIDEO_ADV7180=m +CONFIG_VIDEO_ADV7183=m +CONFIG_VIDEO_ADV7343=m +CONFIG_VIDEO_ADV7393=m +CONFIG_VIDEO_ADV7511=m +CONFIG_VIDEO_ADV7511_CEC=y +CONFIG_VIDEO_ADV7604=m +CONFIG_VIDEO_ADV7604_CEC=y +CONFIG_VIDEO_ADV7842=m +CONFIG_VIDEO_ADV7842_CEC=y +# CONFIG_VIDEO_ADV_DEBUG is not set +CONFIG_VIDEO_AK881X=m +CONFIG_VIDEO_ASPEED=m +CONFIG_VIDEO_ATOMISP=m +CONFIG_VIDEO_ATOMISP_GC0310=m +CONFIG_VIDEO_ATOMISP_GC2235=m +# CONFIG_VIDEO_ATOMISP_ISP2401 is not set +CONFIG_VIDEO_ATOMISP_LM3554=m +CONFIG_VIDEO_ATOMISP_MSRLIST_HELPER=m +CONFIG_VIDEO_ATOMISP_MT9M114=m +CONFIG_VIDEO_ATOMISP_OV2680=m +CONFIG_VIDEO_ATOMISP_OV2722=m +CONFIG_VIDEO_ATOMISP_OV5693=m +CONFIG_VIDEO_BT819=m +CONFIG_VIDEO_BT856=m +CONFIG_VIDEO_BT866=m +CONFIG_VIDEO_CADENCE=y +CONFIG_VIDEO_CADENCE_CSI2RX=m +CONFIG_VIDEO_CADENCE_CSI2TX=m +CONFIG_VIDEO_CAFE_CCIC=m +CONFIG_VIDEO_CS3308=m +CONFIG_VIDEO_CS5345=m +CONFIG_VIDEO_CS53L32A=m +CONFIG_VIDEO_CX25840=m +CONFIG_VIDEO_DEV=m +# CONFIG_VIDEO_FIXED_MINOR_RANGES is not set +CONFIG_VIDEO_GS1662=m +CONFIG_VIDEO_I2C=m +CONFIG_VIDEO_IPU3_IMGU=m +CONFIG_VIDEO_IR_I2C=m +CONFIG_VIDEO_KS0127=m +CONFIG_VIDEO_M52790=m +CONFIG_VIDEO_MEM2MEM_DEINTERLACE=m +CONFIG_VIDEO_ML86V7667=m +CONFIG_VIDEO_MSP3400=m +CONFIG_VIDEO_OV7670=m +CONFIG_VIDEO_SAA6588=m +CONFIG_VIDEO_SAA6752HS=m +CONFIG_VIDEO_SAA7110=m +CONFIG_VIDEO_SAA711X=m +CONFIG_VIDEO_SAA7127=m +CONFIG_VIDEO_SAA717X=m +CONFIG_VIDEO_SAA7185=m +CONFIG_VIDEO_SONY_BTF_MPX=m +CONFIG_VIDEO_ST_MIPID02=m +CONFIG_VIDEO_TC358743=m +CONFIG_VIDEO_TC358743_CEC=y +CONFIG_VIDEO_TDA7432=m +CONFIG_VIDEO_TDA9840=m +CONFIG_VIDEO_TEA6415C=m +CONFIG_VIDEO_TEA6420=m +CONFIG_VIDEO_THS7303=m +CONFIG_VIDEO_THS8200=m +CONFIG_VIDEO_TLV320AIC23B=m +CONFIG_VIDEO_TVAUDIO=m +CONFIG_VIDEO_TVP514X=m +CONFIG_VIDEO_TVP5150=m +CONFIG_VIDEO_TVP7002=m +CONFIG_VIDEO_TW2804=m +CONFIG_VIDEO_TW9903=m +CONFIG_VIDEO_TW9906=m +CONFIG_VIDEO_TW9910=m +CONFIG_VIDEO_UDA1342=m +CONFIG_VIDEO_UPD64031A=m +CONFIG_VIDEO_UPD64083=m +CONFIG_VIDEO_V4L2=m +CONFIG_VIDEO_V4L2_I2C=y +CONFIG_VIDEO_V4L2_SUBDEV_API=y +CONFIG_VIDEO_V4L2_TPG=m +CONFIG_VIDEO_VIA_CAMERA=m +CONFIG_VIDEO_VICODEC=m +CONFIG_VIDEO_VIM2M=m +CONFIG_VIDEO_VIMC=m +CONFIG_VIDEO_VIVID=m +CONFIG_VIDEO_VIVID_CEC=y +CONFIG_VIDEO_VIVID_MAX_DEVS=64 +CONFIG_VIDEO_VP27SMPX=m +CONFIG_VIDEO_VPX3220=m +CONFIG_VIDEO_WM8739=m +CONFIG_VIDEO_WM8775=m +CONFIG_VIRTIO=y +CONFIG_VIRTIO_BALLOON=y +CONFIG_VIRTIO_BLK=m +CONFIG_VIRTIO_CONSOLE=y +CONFIG_VIRTIO_FS=m +CONFIG_VIRTIO_INPUT=m +CONFIG_VIRTIO_MEM=m +CONFIG_VIRTIO_MENU=y +CONFIG_VIRTIO_MMIO=y +CONFIG_VIRTIO_MMIO_CMDLINE_DEVICES=y +CONFIG_VIRTIO_NET=m +CONFIG_VIRTIO_PCI=y +CONFIG_VIRTIO_PCI_LEGACY=y +CONFIG_VIRTIO_PMEM=m +CONFIG_VIRTIO_VDPA=m +CONFIG_VIRTIO_VSOCKETS=m +CONFIG_VIRTIO_VSOCKETS_COMMON=m +CONFIG_VIRTUALIZATION=y +CONFIG_VIRT_CPU_ACCOUNTING=y +CONFIG_VIRT_CPU_ACCOUNTING_GEN=y +CONFIG_VIRT_DRIVERS=y +CONFIG_VIRT_TO_BUS=y +CONFIG_VITESSE_PHY=m +CONFIG_VLAN_8021Q=m +CONFIG_VLAN_8021Q_GVRP=y +CONFIG_VLAN_8021Q_MVRP=y +CONFIG_VMAP_STACK=y +# CONFIG_VMD is not set +CONFIG_VME_BUS=y +CONFIG_VME_CA91CX42=m +CONFIG_VME_FAKE=m +CONFIG_VME_TSI148=m +# CONFIG_VME_USER is not set +CONFIG_VMIVME_7805=m +# CONFIG_VMWARE_PVSCSI is not set +# CONFIG_VMWARE_VMCI is not set +# CONFIG_VMXNET3 is not set +CONFIG_VM_EVENT_COUNTERS=y +# CONFIG_VOP_BUS is not set +CONFIG_VSOCKETS=m +CONFIG_VSOCKETS_DIAG=m +CONFIG_VSOCKETS_LOOPBACK=m +CONFIG_VSOCKMON=m +CONFIG_VT=y +CONFIG_VT6655=m +CONFIG_VT_CONSOLE=y +CONFIG_VT_CONSOLE_SLEEP=y +CONFIG_VT_HW_CONSOLE_BINDING=y +CONFIG_VXFS_FS=m +CONFIG_VXGE=m +# CONFIG_VXGE_DEBUG_TRACE_ALL is not set +CONFIG_VXLAN=y +# CONFIG_W1 is not set +CONFIG_W83627HF_WDT=m +CONFIG_W83877F_WDT=m +CONFIG_W83977F_WDT=m +CONFIG_WAFER_WDT=m +CONFIG_WAN=y +CONFIG_WANXL=m +# CONFIG_WARN_ALL_UNSEEDED_RANDOM is not set +CONFIG_WATCHDOG=y +CONFIG_WATCHDOG_CORE=y +CONFIG_WATCHDOG_HANDLE_BOOT_ENABLED=y +# CONFIG_WATCHDOG_NOWAYOUT is not set +CONFIG_WATCHDOG_OPEN_TIMEOUT=0 +CONFIG_WATCHDOG_PRETIMEOUT_DEFAULT_GOV_NOOP=y +# CONFIG_WATCHDOG_PRETIMEOUT_DEFAULT_GOV_PANIC is not set +CONFIG_WATCHDOG_PRETIMEOUT_GOV=y +CONFIG_WATCHDOG_PRETIMEOUT_GOV_NOOP=y +CONFIG_WATCHDOG_PRETIMEOUT_GOV_PANIC=m +CONFIG_WATCHDOG_PRETIMEOUT_GOV_SEL=m +CONFIG_WATCHDOG_SYSFS=y +CONFIG_WATCH_QUEUE=y +CONFIG_WDAT_WDT=m +CONFIG_WDTPCI=m +CONFIG_WEXT_CORE=y +CONFIG_WEXT_PROC=y +CONFIG_WFX=m +# CONFIG_WILC1000_SPI is not set +# CONFIG_WIMAX is not set +CONFIG_WIREGUARD=m +# CONFIG_WIREGUARD_DEBUG is not set +CONFIG_WIRELESS=y +# CONFIG_WLAN is not set +# CONFIG_WM831X_BACKUP is not set +# CONFIG_WM831X_POWER is not set +CONFIG_WM831X_WATCHDOG=m +CONFIG_WMI_BMOF=m +CONFIG_WQ_POWER_EFFICIENT_DEFAULT=y +# CONFIG_WQ_WATCHDOG is not set +# CONFIG_WW_MUTEX_SELFTEST is not set +CONFIG_X25=m +CONFIG_X25_ASY=m +CONFIG_X509_CERTIFICATE_PARSER=y +CONFIG_X86=y +CONFIG_X86_16BIT=y +CONFIG_X86_5LEVEL=y +CONFIG_X86_64=y +CONFIG_X86_64_ACPI_NUMA=y +CONFIG_X86_64_SMP=y +CONFIG_X86_ACPI_CPUFREQ=y +CONFIG_X86_ACPI_CPUFREQ_CPB=y +# CONFIG_X86_AMD_FREQ_SENSITIVITY is not set +CONFIG_X86_AMD_PLATFORM_DEVICE=y +CONFIG_X86_BOOTPARAM_MEMORY_CORRUPTION_CHECK=y +CONFIG_X86_CHECK_BIOS_CORRUPTION=y +CONFIG_X86_CMOV=y +CONFIG_X86_CMPXCHG64=y +# CONFIG_X86_CPA_STATISTICS is not set +CONFIG_X86_CPUID=m +CONFIG_X86_CPU_RESCTRL=y +CONFIG_X86_DEBUGCTLMSR=y +CONFIG_X86_DEBUG_FPU=y +# CONFIG_X86_DECODER_SELFTEST is not set +CONFIG_X86_DIRECT_GBPAGES=y +CONFIG_X86_ESPFIX64=y +CONFIG_X86_EXTENDED_PLATFORM=y +CONFIG_X86_FEATURE_NAMES=y +# CONFIG_X86_GOLDFISH is not set +CONFIG_X86_HV_CALLBACK_VECTOR=y +CONFIG_X86_INTEL_LPSS=y +CONFIG_X86_INTEL_MEMORY_PROTECTION_KEYS=y +# CONFIG_X86_INTEL_MID is not set +CONFIG_X86_INTEL_PSTATE=y +# CONFIG_X86_INTEL_TSX_MODE_AUTO is not set +CONFIG_X86_INTEL_TSX_MODE_OFF=y +# CONFIG_X86_INTEL_TSX_MODE_ON is not set +CONFIG_X86_INTERNODE_CACHE_SHIFT=6 +CONFIG_X86_IOPL_IOPERM=y +CONFIG_X86_IO_APIC=y +CONFIG_X86_L1_CACHE_SHIFT=6 +CONFIG_X86_LOCAL_APIC=y +CONFIG_X86_MCE=y +CONFIG_X86_MCELOG_LEGACY=y +CONFIG_X86_MCE_AMD=y +CONFIG_X86_MCE_INJECT=m +CONFIG_X86_MCE_INTEL=y +CONFIG_X86_MCE_THRESHOLD=y +CONFIG_X86_MINIMUM_CPU_FAMILY=64 +CONFIG_X86_MPPARSE=y +CONFIG_X86_MSR=m +CONFIG_X86_NEED_RELOCS=y +CONFIG_X86_NUMACHIP=y +# CONFIG_X86_P4_CLOCKMOD is not set +CONFIG_X86_PAT=y +CONFIG_X86_PCC_CPUFREQ=y +CONFIG_X86_PKG_TEMP_THERMAL=m +CONFIG_X86_PLATFORM_DEVICES=y +CONFIG_X86_PMEM_LEGACY=y +CONFIG_X86_PMEM_LEGACY_DEVICE=y +CONFIG_X86_PM_TIMER=y +CONFIG_X86_POWERNOW_K8=y +CONFIG_X86_REROUTE_FOR_BROKEN_BOOT_IRQS=y +CONFIG_X86_RESERVE_LOW=64 +CONFIG_X86_SMAP=y +CONFIG_X86_SPEEDSTEP_CENTRINO=y +CONFIG_X86_SUPPORTS_MEMORY_FAILURE=y +# CONFIG_X86_SYSFB is not set +CONFIG_X86_THERMAL_VECTOR=y +CONFIG_X86_TSC=y +CONFIG_X86_UMIP=y +# CONFIG_X86_UV is not set +# CONFIG_X86_VERBOSE_BOOTUP is not set +CONFIG_X86_VMX_FEATURE_NAMES=y +# CONFIG_X86_VSMP is not set +CONFIG_X86_VSYSCALL_EMULATION=y +CONFIG_X86_X2APIC=y +CONFIG_X86_X32=y +CONFIG_XARRAY_MULTI=y +CONFIG_XDP_SOCKETS=y +CONFIG_XDP_SOCKETS_DIAG=m +# CONFIG_XEN is not set +CONFIG_XFRM=y +CONFIG_XFRM_AH=m +CONFIG_XFRM_ALGO=m +CONFIG_XFRM_ESP=m +CONFIG_XFRM_ESPINTCP=y +CONFIG_XFRM_INTERFACE=m +CONFIG_XFRM_IPCOMP=m +# CONFIG_XFRM_MIGRATE is not set +CONFIG_XFRM_OFFLOAD=y +CONFIG_XFRM_STATISTICS=y +# CONFIG_XFRM_SUB_POLICY is not set +CONFIG_XFRM_USER=m +# CONFIG_XFS_DEBUG is not set +CONFIG_XFS_FS=m +# CONFIG_XFS_ONLINE_SCRUB is not set +CONFIG_XFS_POSIX_ACL=y +CONFIG_XFS_QUOTA=y +CONFIG_XFS_RT=y +# CONFIG_XFS_WARN is not set +CONFIG_XIAOMI_WMI=m +CONFIG_XILINX_AXI_EMAC=m +# CONFIG_XILINX_GMII2RGMII is not set +CONFIG_XILINX_LL_TEMAC=m +CONFIG_XILINX_SDFEC=m +CONFIG_XILINX_VCU=m +CONFIG_XILINX_WATCHDOG=m +# CONFIG_XILLYBUS is not set +CONFIG_XOR_BLOCKS=m +CONFIG_XPOWER_PMIC_OPREGION=y +CONFIG_XPS=y +CONFIG_XXHASH=y +CONFIG_XZ_DEC=y +CONFIG_XZ_DEC_ARM=y +CONFIG_XZ_DEC_ARMTHUMB=y +CONFIG_XZ_DEC_BCJ=y +CONFIG_XZ_DEC_IA64=y +CONFIG_XZ_DEC_POWERPC=y +CONFIG_XZ_DEC_SPARC=y +CONFIG_XZ_DEC_TEST=m +CONFIG_XZ_DEC_X86=y +# CONFIG_YAM is not set +CONFIG_YELLOWFIN=m +CONFIG_YENTA=m +CONFIG_YENTA_ENE_TUNE=y +CONFIG_YENTA_O2=y +CONFIG_YENTA_RICOH=y +CONFIG_YENTA_TI=y +CONFIG_YENTA_TOSHIBA=y +CONFIG_Z3FOLD=m +CONFIG_ZBUD=y +CONFIG_ZIIRAVE_WATCHDOG=m +CONFIG_ZISOFS=y +CONFIG_ZLIB_DEFLATE=y +CONFIG_ZLIB_INFLATE=y +CONFIG_ZONEFS_FS=m +CONFIG_ZONE_DEVICE=y +CONFIG_ZONE_DMA=y +CONFIG_ZONE_DMA32=y +CONFIG_ZPOOL=y +CONFIG_ZRAM=m +CONFIG_ZRAM_MEMORY_TRACKING=y +CONFIG_ZRAM_WRITEBACK=y +CONFIG_ZSMALLOC=y +# CONFIG_ZSMALLOC_STAT is not set +CONFIG_ZSTD_COMPRESS=y +CONFIG_ZSTD_DECOMPRESS=y +CONFIG_ZSWAP=y +CONFIG_ZSWAP_COMPRESSOR_DEFAULT="lzo" +# CONFIG_ZSWAP_COMPRESSOR_DEFAULT_842 is not set +# CONFIG_ZSWAP_COMPRESSOR_DEFAULT_DEFLATE is not set +# CONFIG_ZSWAP_COMPRESSOR_DEFAULT_LZ4 is not set +# CONFIG_ZSWAP_COMPRESSOR_DEFAULT_LZ4HC is not set +CONFIG_ZSWAP_COMPRESSOR_DEFAULT_LZO=y +# CONFIG_ZSWAP_COMPRESSOR_DEFAULT_ZSTD is not set +# CONFIG_ZSWAP_DEFAULT_ON is not set +CONFIG_ZSWAP_ZPOOL_DEFAULT="zbud" +# CONFIG_ZSWAP_ZPOOL_DEFAULT_Z3FOLD is not set +CONFIG_ZSWAP_ZPOOL_DEFAULT_ZBUD=y +# CONFIG_ZSWAP_ZPOOL_DEFAULT_ZSMALLOC is not set --- linux-azure-5.8-5.8.0.orig/debian.azure-5.8/control.d/azure.inclusion-list +++ linux-azure-5.8-5.8.0/debian.azure-5.8/control.d/azure.inclusion-list @@ -0,0 +1,277 @@ +arch/*/{crypto,kernel,oprofile} +arch/*/kvm/kvm.ko +arch/powerpc/kvm/kvm-hv.ko +arch/powerpc/kvm/kvm-pr.ko +arch/powerpc/kvm/vfio.ko +arch/powerpc/platforms/powernv/opal-prd.ko +arch/s390/* +arch/x86/kvm/kvm-amd.ko +arch/x86/kvm/kvm-intel.ko +block/bfq.ko +block/cfq-iosched.ko +block/deadline-iosched.ko +block/kyber-iosched.ko +block/mq-deadline.ko +crypto/* +drivers/acpi/* +drivers/ata/acard-ahci.ko +drivers/ata/ahci.ko +drivers/ata/ahci_platform.ko +drivers/ata/ata_generic.ko +drivers/ata/libahci.ko +drivers/ata/libahci_platform.ko +drivers/ata/pata_acpi.ko +drivers/block/brd.ko +drivers/block/cryptoloop.ko +drivers/block/drbd/drbd.ko +drivers/block/floppy.ko +drivers/block/loop.ko +drivers/block/nbd.ko +drivers/block/rbd.ko +drivers/block/virtio_blk.ko +drivers/block/xen-blkfront.ko +drivers/catapult/catapult.ko +drivers/char/hangcheck-timer.ko +drivers/char/hw_random/powernv-rng.ko +drivers/char/hw_random/virtio-rng.ko +drivers/char/ipmi/* +drivers/char/ipmi/ipmi_msghandler.ko +drivers/char/lp.ko +drivers/char/nvram.ko +drivers/char/ppdev.ko +drivers/char/raw.ko +drivers/char/virtio_console.ko +drivers/crypto/nx/* +drivers/crypto/vmx/vmx-crypto.ko +drivers/dax/* +drivers/firmware/efi/* +drivers/firmware/iscsi_ibft.ko +drivers/fpga/* +drivers/gpu/drm/ast/ast.ko +drivers/gpu/drm/drm_kms_helper.ko +drivers/gpu/drm/drm.ko +drivers/gpu/drm/ttm/ttm.ko +drivers/hid/hid-generic.ko +drivers/hid/hid-hyperv.ko +drivers/hid/hid.ko +drivers/hid/usbhid/usbhid.ko +drivers/hv/* +drivers/hwmon/ibmpowernv.ko +drivers/i2c/busses/i2c-piix4.ko +drivers/infiniband/core/ib_addr.ko +drivers/infiniband/core/ib_cm.ko +drivers/infiniband/core/ib_core.ko +drivers/infiniband/core/ib_mad.ko +drivers/infiniband/core/ib_sa.ko +drivers/infiniband/core/ib_umad.ko +drivers/infiniband/core/iw_cm.ko +drivers/infiniband/core/rdma_cm.ko +drivers/infiniband/core/rdma_ucm.ko +drivers/infiniband/hw/mlx4/* +drivers/infiniband/hw/mlx5/* +drivers/infiniband/hw/vmbus-rdma/* +drivers/infiniband/ulp/ipoib/ib_ipoib.ko +drivers/infiniband/ulp/iser/ib_iser.ko +drivers/infiniband/ulp/isert/ib_isert.ko +drivers/input/evbug.ko +drivers/input/gameport/gameport.ko +drivers/input/input-leds.ko +drivers/input/joydev.ko +drivers/input/misc/xen-kbdfront.ko +drivers/input/mouse/psmouse.ko +drivers/input/serio/hyperv-keyboard.ko +drivers/input/serio/serio_raw.ko +drivers/input/serio/serport.ko +drivers/input/touchscreen/usbtouchscreen.ko +drivers/leds/leds-powernv.ko +drivers/md/* +drivers/message/fusion* +drivers/misc/cxl/* +drivers/misc/eeprom/at24.ko +drivers/misc/vmw_balloon.ko +drivers/misc/vmw_vmci/vmw_vmci.ko +drivers/mtd/cmdlinepart.ko +drivers/mtd/devices/powernv_flash.ko +drivers/mtd/ofpart.ko +drivers/net/appletalk/ipddp.ko +drivers/net/bonding/bonding.ko +drivers/net/caif/caif_virtio.ko +drivers/net/dummy.ko +drivers/net/eql.ko +drivers/net/ethernet/8390/8390.ko +drivers/net/ethernet/8390/ne2k-pci.ko +drivers/net/ethernet/amazon/ena/ena.ko +drivers/net/ethernet/amd/pcnet32.ko +drivers/net/ethernet/broadcom/bnx2x/* +drivers/net/ethernet/broadcom/tg3.ko +drivers/net/ethernet/dec/tulip/* +drivers/net/ethernet/emulex/benet/* +drivers/net/ethernet/ibm/* +drivers/net/ethernet/intel/e1000/e1000.ko +drivers/net/ethernet/intel/e1000e/e1000e.ko +drivers/net/ethernet/intel/i40e/* +drivers/net/ethernet/intel/igb/* +drivers/net/ethernet/intel/igbvf/igbvf.ko +drivers/net/ethernet/intel/ixgbe/* +drivers/net/ethernet/intel/ixgbevf/ixgbevf.ko +drivers/net/ethernet/mellanox/* +drivers/net/ethernet/realtek/8139cp.ko +drivers/net/ethernet/realtek/8139too.ko +drivers/net/fddi/* +drivers/net/geneve.ko +drivers/net/hyperv/hv_netvsc.ko +drivers/net/ifb.ko +drivers/net/ipvlan/* +drivers/net/macvlan.ko +drivers/net/macvtap.ko +drivers/net/mii.ko +drivers/net/netconsole.ko +drivers/net/ppp/* +drivers/net/ppp/bsd_comp.ko +drivers/net/slip/* +drivers/net/veth.ko +drivers/net/virtio_net.ko +drivers/net/vmxnet3/vmxnet3.ko +drivers/net/vxlan.ko +drivers/net/wireguard/wireguard.ko +drivers/net/xen-netback/* +drivers/net/xen-netfront.ko +drivers/nvdimm/* +drivers/nvme/host/nvme.ko +drivers/nvmem/nvmem_core.ko +drivers/parport/parport.ko +drivers/parport/parport_pc.ko +drivers/pci/controller/pci-hyperv.ko +drivers/platform/x86/pvpanic.ko +drivers/pps/pps_core.ko +drivers/ptp/ptp.ko +drivers/s390/* +drivers/s390/block/xpram.ko +drivers/scsi/aacraid/* +drivers/scsi/BusLogic.ko +drivers/scsi/cxlflash/* +drivers/scsi/device_handler/scsi_dh_alua.ko +drivers/scsi/device_handler/scsi_dh_emc.ko +drivers/scsi/device_handler/scsi_dh_hp_sw.ko +drivers/scsi/device_handler/scsi_dh_rdac.ko +drivers/scsi/hv_storvsc.ko +drivers/scsi/ibmvscsi/* +drivers/scsi/ipr.ko +drivers/scsi/iscsi_boot_sysfs.ko +drivers/scsi/iscsi_tcp.ko +drivers/scsi/libiscsi.ko +drivers/scsi/libiscsi_tcp.ko +drivers/scsi/libsas/* +drivers/scsi/lpfc/* +drivers/scsi/megaraid/* +drivers/scsi/mpt3sas/* +drivers/scsi/osd/libosd.ko +drivers/scsi/osd/osd.ko +drivers/scsi/qla1280.ko +drivers/scsi/qla2xxx/* +drivers/scsi/raid_class.ko +drivers/scsi/scsi_transport_fc.ko +drivers/scsi/scsi_transport_iscsi.ko +drivers/scsi/scsi_transport_sas.ko +drivers/scsi/scsi_transport_spi.ko +drivers/scsi/sd_mod.ko +drivers/scsi/sr_mod.ko +drivers/scsi/virtio_scsi.ko +drivers/scsi/vmw_pvscsi.ko +drivers/target/loopback/tcm_loop.ko +drivers/target/target_core*.ko +drivers/tty/serial/jsm/* +drivers/uio/uio_hv_generic.ko +drivers/uio/uio.ko +drivers/uio/uio_pci_generic.ko +drivers/uio/uio_pdrv_genirq.ko +drivers/usb/host/* +drivers/usb/storage/uas.ko +drivers/usb/storage/usb-storage.ko +drivers/vfio/* +drivers/vhost/* +drivers/video/fbdev/* +drivers/video/vgastate.ko +drivers/virtio/* +drivers/watchdog/softdog.ko +drivers/xen/* +! find sound/core -name oss -prune -o -name *.ko -print +fs/9p/* +fs/aufs/aufs.ko +fs/autofs/autofs4.ko +fs/binfmt_misc.ko +fs/btrfs/* +fs/cachefiles/cachefiles.ko +fs/ceph/* +fs/cifs/* +fs/configfs/* +fs/dlm/dlm.ko +fs/ecryptfs/* +fs/efivarfs/* +fs/exofs/libore.ko +fs/ext4/* +fs/fat/* +fs/fscache/* +fs/fuse/* +fs/isofs/* +fs/lockd/* +fs/nfs/* +fs/nfs_common/* +fs/nfsd/* +fs/nls/nls_cp437.ko +fs/nls/nls_iso8859-1.ko +fs/nls/nls_utf8.ko +fs/overlayfs/* +fs/squashfs/* +fs/udf/* +fs/ufs/* +fs/xfs/* +lib/* +net/6lowpan/* +net/802/* +net/8021q/* +net/9p/* +net/appletalk/* +net/atm/* +net/ax25/* +net/bpfilter/bpfilter.ko +net/bridge/* +net/can/* +net/ceph/libceph.ko +net/core/* +net/dccp/* +net/decnet/* +net/ieee802154/* +net/ipv4/* +net/ipv6/* +net/ipx/* +net/irda/* +net/key/* +net/lapb/* +net/llc/* +net/netfilter/* +net/netlink/netlink_diag.ko +net/netrom/* +net/openvswitch/* +net/packet/af_packet_diag.ko +net/phonet/* +net/rose/* +net/rxrpc/* +net/sched/* +net/sctp/* +net/sunrpc/auth_gss/auth_rpcgss.ko +net/sunrpc/auth_gss/rpcsec_gss_krb5.ko +net/sunrpc/sunrpc.ko +net/tipc/* +net/unix/unix_diag.ko +net/vmw_vsock/* +net/x25/* +net/xfrm/* +sound/drivers/pcsp/snd-pcsp.ko +sound/pci/snd-ens1370.ko +sound/soundcore.ko +ubuntu/sgx/* +ubuntu/vbox/vboxguest/vboxguest.ko +ubuntu/vbox/vboxsf/vboxsf.ko +zfs/* +ubuntu/ubuntu-host/ubuntu-host.ko --- linux-azure-5.8-5.8.0.orig/debian.azure-5.8/control.d/flavour-control.stub +++ linux-azure-5.8-5.8.0/debian.azure-5.8/control.d/flavour-control.stub @@ -0,0 +1,152 @@ +# Items that get replaced: +# FLAVOUR +# DESC +# ARCH +# SUPPORTED +# TARGET +# BOOTLOADER +# =PROVIDES= +# +# Items marked with =FOO= are optional +# +# This file describes the template for packages that are created for each flavour +# in debian/control.d/vars.* +# +# This file gets edited in a couple of places. See the debian/control.stub rule in +# debian/rules. PGGVER, ABINUM, and SRCPKGNAME are all converted in the +# process of creating debian/control. +# +# The flavour specific strings (ARCH, DESC, etc) are converted using values from the various +# flavour files in debian/control.d/vars.* +# +# XXX: Leave the blank line before the first package!! + +Package: linux-image=SIGN-ME-PKG=-PKGVER-ABINUM-FLAVOUR +Build-Profiles: +Architecture: ARCH +Section: kernel +Priority: optional +Provides: linux-image, fuse-module, aufs-dkms, =PROVIDES=${linux:rprovides} +Depends: ${misc:Depends}, ${shlibs:Depends}, kmod, linux-base (>= 4.5ubuntu1~16.04.1), linux-modules-PKGVER-ABINUM-FLAVOUR +Recommends: BOOTLOADER +Breaks: flash-kernel (<< 3.0~rc.4ubuntu64) [arm64] +Conflicts: linux-image=SIGN-PEER-PKG=-PKGVER-ABINUM-FLAVOUR +Suggests: fdutils, SRCPKGNAME-doc-PKGVER | SRCPKGNAME-source-PKGVER, SRCPKGNAME-tools, linux-headers-PKGVER-ABINUM-FLAVOUR, initramfs-tools | linux-initramfs-tool +Description: Linux kernel image for version PKGVER on DESC + This package contains the=SIGN-ME-TXT= Linux kernel image for version PKGVER on + DESC. + . + Supports SUPPORTED processors. + . + TARGET + . + You likely do not want to install this package directly. Instead, install + the linux-FLAVOUR meta-package, which will ensure that upgrades work + correctly, and that supporting packages are also installed. + +Package: linux-modules-PKGVER-ABINUM-FLAVOUR +Build-Profiles: +Architecture: ARCH +Section: kernel +Priority: optional +Depends: ${misc:Depends}, ${shlibs:Depends}, linux-base-sgx +Built-Using: ${linux:BuiltUsing} +Description: Linux kernel extra modules for version PKGVER on DESC + Contains the corresponding System.map file, the modules built by the + packager, and scripts that try to ensure that the system is not left in an + unbootable state after an update. + . + Supports SUPPORTED processors. + . + TARGET + . + You likely do not want to install this package directly. Instead, install + the linux-FLAVOUR meta-package, which will ensure that upgrades work + correctly, and that supporting packages are also installed. + +Package: linux-modules-extra-PKGVER-ABINUM-FLAVOUR +Build-Profiles: +Architecture: ARCH +Section: kernel +Priority: optional +Depends: ${misc:Depends}, ${shlibs:Depends}, linux-image-PKGVER-ABINUM-FLAVOUR | linux-image-unsigned-PKGVER-ABINUM-FLAVOUR, crda | wireless-crda +Description: Linux kernel extra modules for version PKGVER on DESC + This package contains the Linux kernel extra modules for version PKGVER on + DESC. + . + Also includes the corresponding System.map file, the modules built by the + packager, and scripts that try to ensure that the system is not left in an + unbootable state after an update. + . + Supports SUPPORTED processors. + . + TARGET + . + You likely do not want to install this package directly. Instead, install + the linux-FLAVOUR meta-package, which will ensure that upgrades work + correctly, and that supporting packages are also installed. + +Package: linux-headers-PKGVER-ABINUM-FLAVOUR +Build-Profiles: +Architecture: ARCH +Section: devel +Priority: optional +Depends: ${misc:Depends}, SRCPKGNAME-headers-PKGVER-ABINUM, ${shlibs:Depends} +Provides: linux-headers, linux-headers-3.0 +Description: Linux kernel headers for version PKGVER on DESC + This package provides kernel header files for version PKGVER on + DESC. + . + This is for sites that want the latest kernel headers. Please read + /usr/share/doc/linux-headers-PKGVER-ABINUM/debian.README.gz for details. + +Package: linux-image=SIGN-ME-PKG=-PKGVER-ABINUM-FLAVOUR-dbgsym +Build-Profiles: +Architecture: ARCH +Section: devel +Priority: optional +Depends: ${misc:Depends} +Provides: linux-debug +Description: Linux kernel debug image for version PKGVER on DESC + This package provides the=SIGN-ME-TXT= kernel debug image for version PKGVER on + DESC. + . + This is for sites that wish to debug the kernel. + . + The kernel image contained in this package is NOT meant to boot from. It + is uncompressed, and unstripped. This package also includes the + unstripped modules. + +Package: linux-tools-PKGVER-ABINUM-FLAVOUR +Build-Profiles: +Architecture: ARCH +Section: devel +Priority: optional +Depends: ${misc:Depends}, SRCPKGNAME-tools-PKGVER-ABINUM +Description: Linux kernel version specific tools for version PKGVER-ABINUM + This package provides the architecture dependant parts for kernel + version locked tools (such as perf and x86_energy_perf_policy) for + version PKGVER-ABINUM on + =HUMAN=. + +Package: linux-cloud-tools-PKGVER-ABINUM-FLAVOUR +Build-Profiles: +Architecture: ARCH +Section: devel +Priority: optional +Depends: ${misc:Depends}, SRCPKGNAME-cloud-tools-PKGVER-ABINUM +Description: Linux kernel version specific cloud tools for version PKGVER-ABINUM + This package provides the architecture dependant parts for kernel + version locked tools for cloud for version PKGVER-ABINUM on + =HUMAN=. + +Package: linux-udebs-FLAVOUR +Build-Profiles: +XC-Package-Type: udeb +Section: debian-installer +Architecture: ARCH +Depends: ${udeb:Depends} +Description: Metapackage depending on kernel udebs + This package depends on the all udebs that the kernel build generated, + for easier version and migration tracking. + --- linux-azure-5.8-5.8.0.orig/debian.azure-5.8/control.d/vars.azure +++ linux-azure-5.8-5.8.0/debian.azure-5.8/control.d/vars.azure @@ -0,0 +1,6 @@ +arch="amd64" +supported="Azure" +target="Geared toward Azure systems." +desc="=HUMAN= SMP" +bootloader="grub-pc [amd64] | grub-efi-amd64 [amd64] | grub-efi-ia32 [amd64] | grub [amd64]" +provides="kvm-api-4, redhat-cluster-modules, ivtv-modules, virtualbox-guest-modules [amd64]" --- linux-azure-5.8-5.8.0.orig/debian.azure-5.8/control.stub.in +++ linux-azure-5.8-5.8.0/debian.azure-5.8/control.stub.in @@ -0,0 +1,90 @@ +Source: SRCPKGNAME +Section: devel +Priority: optional +Maintainer: Ubuntu Kernel Team +Standards-Version: 3.9.4.0 +Build-Depends: + debhelper-compat (= 10), + dh-systemd, + cpio, + kernel-wedge, + kmod , + libcap-dev , + makedumpfile [amd64] , + libelf-dev , + libnewt-dev , + libiberty-dev , + rsync , + libdw-dev , + libpci-dev , + pkg-config , + flex , + bison , + libunwind8-dev [amd64 arm64 armhf ppc64el] , + liblzma-dev , + openssl , + libssl-dev , + libaudit-dev , + bc , + gawk , + libudev-dev , + autoconf , + automake , + libtool , + uuid-dev , + libnuma-dev [amd64 arm64 ppc64el s390x] , + dkms , + curl , + dwarves, +Build-Depends-Indep: + xmlto , + docbook-utils , + ghostscript , + fig2dev , + bzip2 , + sharutils , + asciidoc , + python3-sphinx , + python3-sphinx-rtd-theme , + python3-docutils , +Vcs-Git: git://git.launchpad.net/~canonical-kernel/ubuntu/+source/linux-azure/+git/=SERIES= +XS-Testsuite: autopkgtest +#XS-Testsuite-Depends: gcc-4.7 binutils + +Package: SRCPKGNAME-headers-PKGVER-ABINUM +Build-Profiles: +Architecture: all +Multi-Arch: foreign +Section: devel +Priority: optional +Depends: ${misc:Depends}, coreutils +Description: Header files related to Linux kernel version PKGVER + This package provides kernel header files for version PKGVER, for sites + that want the latest kernel headers. Please read + /usr/share/doc/SRCPKGNAME-headers-PKGVER-ABINUM/debian.README.gz for details + +Package: SRCPKGNAME-tools-PKGVER-ABINUM +Build-Profiles: +Architecture: amd64 +Section: devel +Priority: optional +Depends: ${misc:Depends}, ${shlibs:Depends}, linux-tools-common +Description: Linux kernel version specific tools for version PKGVER-ABINUM + This package provides the architecture dependant parts for kernel + version locked tools (such as perf and x86_energy_perf_policy) for + version PKGVER-ABINUM on + =HUMAN=. + You probably want to install linux-tools-PKGVER-ABINUM-. + +Package: SRCPKGNAME-cloud-tools-PKGVER-ABINUM +Build-Profiles: +Architecture: amd64 +Section: devel +Priority: optional +Depends: ${misc:Depends}, ${shlibs:Depends}, linux-cloud-tools-common +Description: Linux kernel version specific cloud tools for version PKGVER-ABINUM + This package provides the architecture dependant parts for kernel + version locked tools for cloud tools for version PKGVER-ABINUM on + =HUMAN=. + You probably want to install linux-cloud-tools-PKGVER-ABINUM-. + --- linux-azure-5.8-5.8.0.orig/debian.azure-5.8/copyright +++ linux-azure-5.8-5.8.0/debian.azure-5.8/copyright @@ -0,0 +1,29 @@ +This is the Ubuntu prepackaged version of the Linux kernel. +Linux was written by Linus Torvalds +and others. + +This package was put together by the Ubuntu Kernel Team, from +sources retrieved from upstream linux git. +The sources may be found at most Linux ftp sites, including +ftp://ftp.kernel.org/pub/linux/kernel/ + +This package is currently maintained by the +Ubuntu Kernel Team + +Linux is copyrighted by Linus Torvalds and others. + + This program is free software; you can redistribute it and/or modify + it under the terms of the GNU General Public License as published by + the Free Software Foundation; version 2 dated June, 1991. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License + along with this program; if not, write to the Free Software + Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA + +On Ubuntu Linux systems, the complete text of the GNU General +Public License v2 can be found in `/usr/share/common-licenses/GPL-2'. --- linux-azure-5.8-5.8.0.orig/debian.azure-5.8/d-i/firmware/README.txt +++ linux-azure-5.8-5.8.0/debian.azure-5.8/d-i/firmware/README.txt @@ -0,0 +1,4 @@ +# +# Place the names of udeb modules into this directory that require +# runtime firmware. +# --- linux-azure-5.8-5.8.0.orig/debian.azure-5.8/d-i/kernel-versions +++ linux-azure-5.8-5.8.0/debian.azure-5.8/d-i/kernel-versions @@ -0,0 +1,2 @@ +# arch version flavour installedname suffix bdep +amd64 - azure - - - --- linux-azure-5.8-5.8.0.orig/debian.azure-5.8/d-i/package-list +++ linux-azure-5.8-5.8.0/debian.azure-5.8/d-i/package-list @@ -0,0 +1,208 @@ +Package: kernel-image +Provides: ext3-modules, ext4-modules +Provides_amd64: efi-modules, ext3-modules, ext4-modules +Provides_i386: efi-modules, ext3-modules, ext4-modules +Provides_ppc64el: ext3-modules, ext4-modules, fat-modules +Provides_s390x: ext3-modules, ext4-modules, ppp-modules +Description: kernel image and system map + +Package: dasd-modules +Depends: kernel-image, storage-core-modules +Priority: standard +Description: DASD storage support + +Package: dasd-extra-modules +Depends: dasd-modules +Priority: extra +Description: DASD storage support -- extras + +Package: fat-modules +Depends: kernel-image +Priority: standard +Description: FAT filesystem support + This includes Windows FAT and VFAT support. + +Package: fb-modules +Depends: kernel-image +Priority: standard +Description: Framebuffer modules + +Package: firewire-core-modules +Depends: kernel-image, storage-core-modules +Priority: standard +Description: Firewire (IEEE-1394) Support + +Package: floppy-modules +Depends: kernel-image +Priority: standard +Description: Floppy driver support + +Package: fs-core-modules +Depends: kernel-image +Priority: standard +Provides: ext2-modules, jfs-modules, reiserfs-modules, xfs-modules +Description: Base filesystem modules + This includes jfs, reiserfs and xfs. + +Package: fs-secondary-modules +Depends: kernel-image, fat-modules +Priority: standard +Provides: btrfs-modules, ntfs-modules, hfs-modules +Description: Extra filesystem modules + This includes support for Windows NTFS and MacOS HFS/HFSPlus + +Package: input-modules +Depends: kernel-image, usb-modules +Priority: standard +Description: Support for various input methods + +Package: irda-modules +Depends: kernel-image, nic-shared-modules +Priority: standard +Description: Support for Infrared protocols + +Package: md-modules +Depends: kernel-image +Priority: standard +Provides: crypto-dm-modules +Description: Multi-device support (raid, device-mapper, lvm) + +Package: nic-modules +Depends: kernel-image, nic-shared-modules, virtio-modules +Priority: standard +Description: Network interface support + +Package: nic-pcmcia-modules +Depends: kernel-image, nic-shared-modules, nic-modules +Priority: standard +Description: PCMCIA network interface support + +Package: nic-usb-modules +Depends: kernel-image, nic-shared-modules, usb-modules +Priority: standard +Description: USB network interface support + +Package: nic-shared-modules +Depends: kernel-image, crypto-modules +Priority: standard +Description: nic shared modules + This package contains modules which support nic modules + +Package: parport-modules +Depends: kernel-image +Priority: standard +Description: Parallel port support + +Package: pata-modules +Depends: kernel-image, storage-core-modules +Priority: standard +Description: PATA support modules + +Package: pcmcia-modules +Depends: kernel-image +Priority: standard +Description: PCMCIA Modules + +Package: pcmcia-storage-modules +Depends: kernel-image, scsi-modules +Priority: standard +Description: PCMCIA storage support + +Package: plip-modules +Depends: kernel-image, nic-shared-modules, parport-modules +Priority: standard +Description: PLIP (parallel port) networking support + +Package: ppp-modules +Depends: kernel-image, nic-shared-modules, serial-modules +Priority: standard +Description: PPP (serial port) networking support + +Package: sata-modules +Depends: kernel-image, storage-core-modules +Priority: standard +Description: SATA storage support + +Package: scsi-modules +Depends: kernel-image, storage-core-modules +Priority: standard +Description: SCSI storage support + +Package: serial-modules +Depends: kernel-image +Priority: standard +Description: Serial port support + +Package: storage-core-modules +Depends: kernel-image +Priority: standard +Provides: loop-modules +Description: Core storage support + Includes core SCSI, LibATA, USB-Storage. Also includes related block + devices for CD, Disk and Tape medium (and IDE Floppy). + +Package: usb-modules +Depends: kernel-image, storage-core-modules +Priority: standard +Description: Core USB support + +Package: nfs-modules +Priority: standard +Depends: kernel-image +Description: NFS filesystem drivers + Includes the NFS client driver, and supporting modules. + +Package: block-modules +Priority: standard +Provides: nbd-modules +Depends: kernel-image, storage-core-modules, parport-modules, virtio-modules +Description: Block storage devices + This package contains the block storage devices, including DAC960 and + paraide. + +Package: message-modules +Priority: standard +Depends: kernel-image, storage-core-modules, scsi-modules +Description: Fusion and i2o storage modules + This package containes the fusion and i2o storage modules. + +Package: crypto-modules +Priority: extra +Depends: kernel-image +Description: crypto modules + This package contains crypto modules. + +Package: virtio-modules +Priority: standard +Depends: kernel-image +Description: VirtIO Modules + Includes modules for VirtIO (virtual machine, generally kvm guests) + +Package: socket-modules +Depends: kernel-image +Priority: standard +Description: Unix socket support + +Package: mouse-modules +Depends: kernel-image, input-modules, usb-modules +Priority: extra +Description: Mouse support + This package contains mouse drivers for the Linux kernel. + +Package: vlan-modules +Depends: kernel-image +Priority: extra +Description: vlan modules + This package contains vlan (8021.Q) modules. + +Package: ipmi-modules +Depends: kernel-image +Priority: standard +Description: ipmi modules + +Package: multipath-modules +Depends: kernel-image +Priority: extra +Description: DM-Multipath support + This package contains modules for device-mapper multipath support. + --- linux-azure-5.8-5.8.0.orig/debian.azure-5.8/etc/getabis +++ linux-azure-5.8-5.8.0/debian.azure-5.8/etc/getabis @@ -0,0 +1,17 @@ +repo_list=( + "http://ppa.launchpad.net/mhcerri/azure/ubuntu/pool/main/l/linux-azure-5.8" + "http://archive.ubuntu.com/ubuntu/pool/main/l/linux-azure-5.8" + "http://ports.ubuntu.com/ubuntu-ports/pool/main/l/linux-azure-5.8" + "http://archive.ubuntu.com/ubuntu/pool/universe/l/linux-azure-5.8" + "http://ports.ubuntu.com/ubuntu-ports/pool/universe/l/linux-azure-5.8" + "http://ppa.launchpad.net/canonical-kernel-team/ppa/ubuntu/pool/main/l/linux-azure-5.8" + "http://ppa.launchpad.net/canonical-kernel-team/ppa/ubuntu/pool/main/l/linux-signed-azure-5.8" + "http://ppa.launchpad.net/canonical-kernel-team/unstable/ubuntu/pool/main/l/linux-azure-5.8" + "http://ppa.launchpad.net/canonical-kernel-team/bootstrap/ubuntu/pool/main/l/linux-azure-5.8" +) + +package_prefixes linux-image linux-modules linux-modules-extra + +getall amd64 azure + +# Ports arches and flavours. --- linux-azure-5.8-5.8.0.orig/debian.azure-5.8/etc/kernelconfig +++ linux-azure-5.8-5.8.0/debian.azure-5.8/etc/kernelconfig @@ -0,0 +1,7 @@ +if [ "$variant" = "ports" ]; then + archs="" + family='ports' +else + archs="amd64" + family='ubuntu' +fi --- linux-azure-5.8-5.8.0.orig/debian.azure-5.8/etc/update.conf +++ linux-azure-5.8-5.8.0/debian.azure-5.8/etc/update.conf @@ -0,0 +1,8 @@ +# WARNING: we do not create update.conf when we are not a +# derivative. Various cranky components make use of this. +# If we start unconditionally creating update.conf we need +# to fix at least cranky close and cranky rebase. +RELEASE_REPO=git://git.launchpad.net/~canonical-kernel/ubuntu/+source/linux-azure/+git/groovy +SOURCE_RELEASE_BRANCH=master-next +DEBIAN_MASTER=debian.azure +BACKPORT_SUFFIX=~20.04 --- linux-azure-5.8-5.8.0.orig/debian.azure-5.8/modprobe.d/common.conf +++ linux-azure-5.8-5.8.0/debian.azure-5.8/modprobe.d/common.conf @@ -0,0 +1,7 @@ +# LP:1434842 -- disable OSS drivers by default to allow pulseaudio to emulate +blacklist snd-mixer-oss +blacklist snd-pcm-oss +# LP:1708699 -- prevent RDMA drivers from being hot plugged +install vmbus:3daf2e8ca732094bab99bd1f1c86b501 true +# LP:1712915 -- [Hyper-V] linux-azure: rdma_ucm should autoload on HPC images +softdep hv_network_direct_* post: rdma_ucm --- linux-azure-5.8-5.8.0.orig/debian.azure-5.8/reconstruct +++ linux-azure-5.8-5.8.0/debian.azure-5.8/reconstruct @@ -0,0 +1,69 @@ +# Recreate any symlinks created since the orig. +# Remove any files deleted from the orig. +rm -f 'arch/alpha/include/asm/local64.h' +rm -f 'arch/ia64/include/asm/local64.h' +rm -f 'arch/powerpc/lib/memcpy_mcsafe_64.S' +rm -f 'arch/powerpc/platforms/pseries/offline_states.h' +rm -f 'arch/x86/include/asm/local64.h' +rm -f 'arch/x86/include/asm/mcsafe_test.h' +rm -f 'drivers/net/ethernet/mscc/ocelot_board.c' +rm -f 'drivers/staging/mt7621-dma/mtk-hsdma.c' +rm -f 'kernel/elfcore.c' +rm -f 'lib/zlib_dfltcc/dfltcc_syms.c' +rm -f 'tools/arch/x86/include/asm/mcsafe_test.h' +rm -f 'tools/perf/bench/mem-memcpy-x86-64-lib.c' +rm -f 'tools/testing/kunit/.gitattributes' +chmod +x 'arch/riscv/kernel/vdso/so2s.sh' +chmod +x 'debian.azure-5.8/scripts/helpers/copy-files' +chmod +x 'debian.azure-5.8/scripts/helpers/local-mangle' +chmod +x 'debian/cloud-tools/hv_get_dhcp_info' +chmod +x 'debian/cloud-tools/hv_get_dns_info' +chmod +x 'debian/cloud-tools/hv_set_ifconfig' +chmod +x 'debian/rules' +chmod +x 'debian/scripts/abi-check' +chmod +x 'debian/scripts/config-check' +chmod +x 'debian/scripts/control-create' +chmod +x 'debian/scripts/dkms-build' +chmod +x 'debian/scripts/dkms-build--nvidia-N' +chmod +x 'debian/scripts/file-downloader' +chmod +x 'debian/scripts/helpers/close' +chmod +x 'debian/scripts/helpers/open' +chmod +x 'debian/scripts/helpers/rebase' +chmod +x 'debian/scripts/link-headers' +chmod +x 'debian/scripts/misc/final-checks' +chmod +x 'debian/scripts/misc/find-missing-sauce.sh' +chmod +x 'debian/scripts/misc/find-obsolete-firmware' +chmod +x 'debian/scripts/misc/fw-to-ihex.sh' +chmod +x 'debian/scripts/misc/gen-auto-reconstruct' +chmod +x 'debian/scripts/misc/get-firmware' +chmod +x 'debian/scripts/misc/getabis' +chmod +x 'debian/scripts/misc/git-ubuntu-log' +chmod +x 'debian/scripts/misc/insert-changes.pl' +chmod +x 'debian/scripts/misc/insert-mainline-changes' +chmod +x 'debian/scripts/misc/insert-ubuntu-changes' +chmod +x 'debian/scripts/misc/kernel-wedge-arch.pl' +chmod +x 'debian/scripts/misc/kernelconfig' +chmod +x 'debian/scripts/misc/retag' +chmod +x 'debian/scripts/misc/splitconfig.pl' +chmod +x 'debian/scripts/misc/tristate.sh' +chmod +x 'debian/scripts/misc/update-aufs.sh' +chmod +x 'debian/scripts/module-check' +chmod +x 'debian/scripts/module-inclusion' +chmod +x 'debian/scripts/retpoline-check' +chmod +x 'debian/scripts/retpoline-extract' +chmod +x 'debian/scripts/retpoline-extract-one' +chmod +x 'debian/templates/extra.postinst.in' +chmod +x 'debian/templates/extra.postrm.in' +chmod +x 'debian/templates/headers.postinst.in' +chmod +x 'debian/templates/image.postinst.in' +chmod +x 'debian/templates/image.postrm.in' +chmod +x 'debian/templates/image.preinst.in' +chmod +x 'debian/templates/image.prerm.in' +chmod +x 'debian/tests-build/check-aliases' +chmod +x 'debian/tests/rebuild' +chmod +x 'debian/tests/ubuntu-regression-suite' +chmod +x 'samples/bpf/lwt_len_hist.sh' +chmod +x 'samples/bpf/test_lwt_bpf.sh' +chmod +x 'scripts/kmsg-doc' +chmod +x 'update-version-dkms' +exit 0 --- linux-azure-5.8-5.8.0.orig/debian.azure-5.8/rules.d/amd64.mk +++ linux-azure-5.8-5.8.0/debian.azure-5.8/rules.d/amd64.mk @@ -0,0 +1,27 @@ +human_arch = 64 bit x86 +build_arch = x86 +header_arch = $(build_arch) +defconfig = defconfig +flavours = azure +build_image = bzImage +kernel_file = arch/$(build_arch)/boot/bzImage +install_file = vmlinuz +loader = grub +vdso = vdso_install +no_dumpfile = true +uefi_signed = true +do_tools_usbip = true +do_tools_cpupower = true +do_tools_perf = true +do_tools_bpftool = true +do_tools_x86 = true +do_tools_hyperv = true +do_extras_package = true +do_tools_common = false +do_zfs = true +do_libc_dev_package=false +disable_d_i=true +do_source_package = false +do_doc_package = false +do_dkms_nvidia = true +do_dkms_nvidia_server = true --- linux-azure-5.8-5.8.0.orig/debian.azure-5.8/rules.d/hooks.mk +++ linux-azure-5.8-5.8.0/debian.azure-5.8/rules.d/hooks.mk @@ -0,0 +1,8 @@ +do_libc_dev_package = false +do_doc_package = false +do_tools_common = false +do_tools_host = false +do_libc_dev_package = false +do_doc_package = false +do_tools_common = false +do_tools_host = false --- linux-azure-5.8-5.8.0.orig/debian.azure-5.8/scripts/helpers/copy-files +++ linux-azure-5.8-5.8.0/debian.azure-5.8/scripts/helpers/copy-files @@ -0,0 +1,67 @@ +#!/bin/bash -eu + +if [ -f debian/debian.env ]; then + # shellcheck disable=SC1091 + . debian/debian.env +fi + +if [ ! -d "${DEBIAN}" ]; then + echo You must run this script from the top directory of this repository. + exit 1 +fi + +CONF="${DEBIAN}"/etc/update.conf +if [ -f "${CONF}" ]; then + # shellcheck disable=SC1090 + . "${CONF}" +fi + +FOREIGN_ARCHES="" +LOCAL_CONF="${DEBIAN}/etc/local.conf" +if [ -f "${LOCAL_CONF}" ]; then + # shellcheck disable=SC1090 + . "${LOCAL_CONF}" +fi + +SKIP_RULES_D=${SKIP_RULES_D:-} + +# +# Pick up any master branch changes to udeb modules or firmware. +# +rsync -avc --delete "${DEBIAN_MASTER}/d-i/" "${DEBIAN}/d-i" + +# +# Update configs from master +# +rsync -avc --delete "${DEBIAN_MASTER}/config/" "${DEBIAN}/config" + +# +# Update package and DTB settings from master. +# +if [ -z "${SKIP_RULES_D}" ] ; then + rsync -avc "${DEBIAN_MASTER}/rules.d/"*.mk "${DEBIAN}/rules.d/" +fi + +# Remove the .mk files from the arch's that are not supported +for i in ${FOREIGN_ARCHES} +do + rm -f "${DEBIAN}/rules.d/${i}.mk" + git rm -f --ignore-unmatch "${DEBIAN}/rules.d/${i}.mk" || true +done + +# +# Update modprobe.d from master +# +# Some releases (trusty) don't have this directory, and rsync would fail +# without this check. +if [ -d "${DEBIAN}/modprobe.d/" ]; then + rsync -avc --delete "${DEBIAN_MASTER}/modprobe.d/" "${DEBIAN}/modprobe.d" +fi + +cp -p "${DEBIAN_MASTER}/control.d/"*.inclusion-list "${DEBIAN}/control.d" + +cp -p "${DEBIAN_MASTER}/reconstruct" "${DEBIAN}/reconstruct" + +if [ -x "${DEBIAN}/scripts/helpers/local-mangle" ]; then + "./${DEBIAN}/scripts/helpers/local-mangle" +fi --- linux-azure-5.8-5.8.0.orig/debian.azure-5.8/scripts/helpers/local-mangle +++ linux-azure-5.8-5.8.0/debian.azure-5.8/scripts/helpers/local-mangle @@ -0,0 +1,43 @@ +#!/bin/bash -eu + +. debian/debian.env + +# Do not enforce DMESG_RESTRICT in focal +sed -i 's/CONFIG_SECURITY_DMESG_RESTRICT=y/# CONFIG_SECURITY_DMESG_RESTRICT is not set/' ${DEBIAN}/config/config.common.ubuntu +sed -i "s/CONFIG_SECURITY_DMESG_RESTRICT policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}>/CONFIG_SECURITY_DMESG_RESTRICT policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n', 's390x': 'n'}>/" ${DEBIAN}/config/annotations +# The base kernel might not have above annotation at all +if ! `grep -qF 'CONFIG_SECURITY_DMESG_RESTRICT ' ${DEBIAN}/config/annotations` ; then + cat <>${DEBIAN}/config/annotations + +# Menu: Security options +CONFIG_SECURITY_DMESG_RESTRICT policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n', 's390x': 'n'}> +CONFIG_SECURITY_DMESG_RESTRICT mark +EOD +fi + +# Disable DEBUG_INFO_BTF (pahole version is too old in focal) +sed -i 's/CONFIG_DEBUG_INFO_BTF=y/# CONFIG_DEBUG_INFO_BTF is not set/' ${DEBIAN}/config/config.common.ubuntu +sed -i "s/CONFIG_DEBUG_INFO_BTF policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}>/CONFIG_DEBUG_INFO_BTF policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n', 's390x': 'n'}>/" ${DEBIAN}/config/annotations +# The base kernel might not have above annotation at all +if ! `grep -qF 'CONFIG_DEBUG_INFO_BTF ' ${DEBIAN}/config/annotations` ; then + cat <>${DEBIAN}/config/annotations + +# Menu: Kernel hacking >> Compile-time checks and compiler options >> Compile the kernel with debug info +CONFIG_DEBUG_INFO_BTF policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n', 's390x': 'n'}> +CONFIG_DEBUG_INFO_BTF flag note +EOD +fi + +# Focal does not build for i386 and thus not care. This option was made only available for +# 64bit/amd64 builds. +sed -i "s/CONFIG_INTEL_IOMMU_SVM policy<{'amd64': 'y', 'i386': 'y'}>/CONFIG_INTEL_IOMMU_SVM policy<{'amd64': 'y'}>/" ${DEBIAN}/config/annotations + +# Override options in rules.d/hooks.mk (normally master does not have this +# file but it got added for generic annotations enforcement. +cat <>${DEBIAN}/rules.d/hooks.mk +do_libc_dev_package = false +do_doc_package = false +do_tools_common = false +do_tools_host = false +EOD + --- linux-azure-5.8-5.8.0.orig/debian.azure-5.8/tracking-bug +++ linux-azure-5.8-5.8.0/debian.azure-5.8/tracking-bug @@ -0,0 +1 @@ +1923743 --- linux-azure-5.8-5.8.0.orig/debian.azure-5.8/variants +++ linux-azure-5.8-5.8.0/debian.azure-5.8/variants @@ -0,0 +1 @@ +-edge --- linux-azure-5.8-5.8.0.orig/debian.azure/abi/5.8.0-1029.31/abiname +++ linux-azure-5.8-5.8.0/debian.azure/abi/5.8.0-1029.31/abiname @@ -0,0 +1 @@ +1029 --- linux-azure-5.8-5.8.0.orig/debian.azure/abi/5.8.0-1029.31/amd64/azure +++ linux-azure-5.8-5.8.0/debian.azure/abi/5.8.0-1029.31/amd64/azure @@ -0,0 +1,18103 @@ +EXPORT_SYMBOL arch/x86/crypto/blake2s-x86_64 0x23aa18fe blake2s_compress_arch +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 0x7c904efe poly1305_init_arch +EXPORT_SYMBOL arch/x86/crypto/poly1305-x86_64 0xd9ec23eb poly1305_update_arch +EXPORT_SYMBOL arch/x86/crypto/poly1305-x86_64 0xfaeb41b2 poly1305_final_arch +EXPORT_SYMBOL arch/x86/kvm/kvm 0x6a690159 kvm_cpu_has_pending_timer +EXPORT_SYMBOL crypto/ecc 0x16e410ff vli_from_be64 +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 0x9263b417 ecc_point_mult_shamir +EXPORT_SYMBOL crypto/ecc 0x92668805 vli_cmp +EXPORT_SYMBOL crypto/ecc 0x9f6efabd vli_sub +EXPORT_SYMBOL crypto/ecc 0xa76b31a2 crypto_ecdh_shared_secret +EXPORT_SYMBOL crypto/ecc 0xd6315f31 ecc_gen_privkey +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 0x0869b245 crypto_nhpoly1305_final +EXPORT_SYMBOL crypto/nhpoly1305 0x3d8ec978 crypto_nhpoly1305_final_helper +EXPORT_SYMBOL crypto/nhpoly1305 0x50382db4 crypto_nhpoly1305_update_helper +EXPORT_SYMBOL crypto/nhpoly1305 0x5a8c0f0d crypto_nhpoly1305_setkey +EXPORT_SYMBOL crypto/nhpoly1305 0x82784099 crypto_nhpoly1305_init +EXPORT_SYMBOL crypto/nhpoly1305 0x9a95365d crypto_nhpoly1305_update +EXPORT_SYMBOL crypto/sha3_generic 0x48f5c437 crypto_sha3_init +EXPORT_SYMBOL crypto/sha3_generic 0xb2ca9df2 crypto_sha3_update +EXPORT_SYMBOL crypto/sha3_generic 0xca7c7e66 crypto_sha3_final +EXPORT_SYMBOL crypto/sm3_generic 0x3102e11f crypto_sm3_update +EXPORT_SYMBOL crypto/sm3_generic 0x988ec331 crypto_sm3_finup +EXPORT_SYMBOL crypto/xor 0x5b6c00e6 xor_blocks +EXPORT_SYMBOL drivers/acpi/video 0x507a7752 acpi_video_get_edid +EXPORT_SYMBOL drivers/acpi/video 0x6de7f7ff acpi_video_get_backlight_type +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 0x8826c13b acpi_video_register +EXPORT_SYMBOL drivers/acpi/video 0xb9203d98 acpi_video_get_levels +EXPORT_SYMBOL drivers/acpi/video 0xe92ca535 acpi_video_set_dmi_backlight_type +EXPORT_SYMBOL drivers/atm/suni 0xfe7488c9 suni_init +EXPORT_SYMBOL drivers/atm/uPD98402 0x089002b5 uPD98402_init +EXPORT_SYMBOL drivers/bcma/bcma 0x3fac88c5 bcma_core_irq +EXPORT_SYMBOL drivers/bcma/bcma 0x73201398 bcma_core_dma_translation +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/core/mhi 0xe9df6f87 mhi_sync_power_up +EXPORT_SYMBOL drivers/char/ipmi/ipmi_msghandler 0x03bc993e ipmi_set_my_LUN +EXPORT_SYMBOL drivers/char/ipmi/ipmi_msghandler 0x0683c285 ipmi_smi_watcher_unregister +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 0x230094ac ipmi_smi_watchdog_pretimeout +EXPORT_SYMBOL drivers/char/ipmi/ipmi_msghandler 0x31cab048 ipmi_smi_msg_received +EXPORT_SYMBOL drivers/char/ipmi/ipmi_msghandler 0x3a4c6280 ipmi_smi_watcher_register +EXPORT_SYMBOL drivers/char/ipmi/ipmi_msghandler 0x40f2b10c ipmi_alloc_smi_msg +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 0x663f6fce ipmi_add_smi +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 0x82db0c5a ipmi_get_smi_info +EXPORT_SYMBOL drivers/char/ipmi/ipmi_msghandler 0x89a5279a ipmi_get_version +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 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/crypto/atmel-i2c 0x348755c9 atmel_i2c_probe +EXPORT_SYMBOL drivers/crypto/atmel-i2c 0x57f7c3f9 atmel_i2c_send_receive +EXPORT_SYMBOL drivers/crypto/atmel-i2c 0x75661352 atmel_i2c_enqueue +EXPORT_SYMBOL drivers/crypto/atmel-i2c 0x80a11b1d atmel_i2c_init_read_cmd +EXPORT_SYMBOL drivers/crypto/atmel-i2c 0xc71ed50c atmel_i2c_init_genkey_cmd +EXPORT_SYMBOL drivers/crypto/atmel-i2c 0xf283e995 atmel_i2c_init_random_cmd +EXPORT_SYMBOL drivers/crypto/atmel-i2c 0xfaab573f atmel_i2c_init_ecdh_cmd +EXPORT_SYMBOL drivers/crypto/ccp/ccp 0x47d3c97f psp_check_tee_status +EXPORT_SYMBOL drivers/crypto/ccp/ccp 0xaa04056c psp_tee_process_cmd +EXPORT_SYMBOL drivers/gpu/drm/drm 0x0198b9db drm_connector_attach_edid_property +EXPORT_SYMBOL drivers/gpu/drm/drm 0x02245d03 drm_crtc_wait_one_vblank +EXPORT_SYMBOL drivers/gpu/drm/drm 0x029eb0d4 drm_plane_create_zpos_immutable_property +EXPORT_SYMBOL drivers/gpu/drm/drm 0x02e8aab2 drm_gem_prime_import +EXPORT_SYMBOL drivers/gpu/drm/drm 0x0363b613 drm_vblank_restore +EXPORT_SYMBOL drivers/gpu/drm/drm 0x03c63897 __drm_get_edid_firmware_path +EXPORT_SYMBOL drivers/gpu/drm/drm 0x03ceb3e1 drm_agp_init +EXPORT_SYMBOL drivers/gpu/drm/drm 0x044ca342 drm_mode_validate_ycbcr420 +EXPORT_SYMBOL drivers/gpu/drm/drm 0x04fbf1d9 drm_gtf_mode +EXPORT_SYMBOL drivers/gpu/drm/drm 0x05155a55 drm_dev_unregister +EXPORT_SYMBOL drivers/gpu/drm/drm 0x05d2cf4a drm_plane_create_rotation_property +EXPORT_SYMBOL drivers/gpu/drm/drm 0x05dd6c36 drm_gem_private_object_init +EXPORT_SYMBOL drivers/gpu/drm/drm 0x070b28aa drm_ht_remove_item +EXPORT_SYMBOL drivers/gpu/drm/drm 0x070ebaac drm_atomic_state_clear +EXPORT_SYMBOL drivers/gpu/drm/drm 0x0712e21d drm_edid_get_monitor_name +EXPORT_SYMBOL drivers/gpu/drm/drm 0x07f88521 drm_edid_is_valid +EXPORT_SYMBOL drivers/gpu/drm/drm 0x07fb449a drm_vma_offset_manager_destroy +EXPORT_SYMBOL drivers/gpu/drm/drm 0x0937c444 drm_read +EXPORT_SYMBOL drivers/gpu/drm/drm 0x0a1687e3 drm_gem_cma_print_info +EXPORT_SYMBOL drivers/gpu/drm/drm 0x0a721775 drm_mode_plane_set_obj_prop +EXPORT_SYMBOL drivers/gpu/drm/drm 0x0a72f765 drm_clflush_virt_range +EXPORT_SYMBOL drivers/gpu/drm/drm 0x0c992d72 drm_client_release +EXPORT_SYMBOL drivers/gpu/drm/drm 0x0d4f1847 drmm_kfree +EXPORT_SYMBOL drivers/gpu/drm/drm 0x0dee1c9a drm_match_cea_mode +EXPORT_SYMBOL drivers/gpu/drm/drm 0x0e0394c2 drm_gem_unmap_dma_buf +EXPORT_SYMBOL drivers/gpu/drm/drm 0x0e0eb666 drm_dev_enter +EXPORT_SYMBOL drivers/gpu/drm/drm 0x0e69d8a0 drm_modeset_lock_init +EXPORT_SYMBOL drivers/gpu/drm/drm 0x0f6a3b87 drmm_add_final_kfree +EXPORT_SYMBOL drivers/gpu/drm/drm 0x0fd60df2 drm_get_connector_status_name +EXPORT_SYMBOL drivers/gpu/drm/drm 0x107742a9 drm_get_subpixel_order_name +EXPORT_SYMBOL drivers/gpu/drm/drm 0x109dd500 drm_writeback_connector_init +EXPORT_SYMBOL drivers/gpu/drm/drm 0x10c62b61 __drm_printfn_debug +EXPORT_SYMBOL drivers/gpu/drm/drm 0x10c88be8 drm_connector_init +EXPORT_SYMBOL drivers/gpu/drm/drm 0x10e2c32c drm_property_add_enum +EXPORT_SYMBOL drivers/gpu/drm/drm 0x116a01af drm_gtf_mode_complex +EXPORT_SYMBOL drivers/gpu/drm/drm 0x11b9567a drm_vma_node_is_allowed +EXPORT_SYMBOL drivers/gpu/drm/drm 0x127a8c6b drm_flip_work_queue +EXPORT_SYMBOL drivers/gpu/drm/drm 0x12a594ff drm_gem_dmabuf_vunmap +EXPORT_SYMBOL drivers/gpu/drm/drm 0x12fc3886 drm_i2c_encoder_mode_fixup +EXPORT_SYMBOL drivers/gpu/drm/drm 0x136a297b drm_put_dev +EXPORT_SYMBOL drivers/gpu/drm/drm 0x13d3eb1b drm_modeset_unlock_all +EXPORT_SYMBOL drivers/gpu/drm/drm 0x13e14103 drm_mode_equal_no_clocks_no_stereo +EXPORT_SYMBOL drivers/gpu/drm/drm 0x1463eb06 drm_mode_create_hdmi_colorspace_property +EXPORT_SYMBOL drivers/gpu/drm/drm 0x14a49246 drm_panel_unprepare +EXPORT_SYMBOL drivers/gpu/drm/drm 0x14ac3782 drm_event_reserve_init_locked +EXPORT_SYMBOL drivers/gpu/drm/drm 0x1540e71a __drmm_add_action +EXPORT_SYMBOL drivers/gpu/drm/drm 0x15687847 drm_framebuffer_init +EXPORT_SYMBOL drivers/gpu/drm/drm 0x15750b1e drm_mode_object_find +EXPORT_SYMBOL drivers/gpu/drm/drm 0x15d8aa41 __drm_printfn_seq_file +EXPORT_SYMBOL drivers/gpu/drm/drm 0x16ac2597 drm_printf +EXPORT_SYMBOL drivers/gpu/drm/drm 0x170d5325 drm_atomic_bridge_chain_disable +EXPORT_SYMBOL drivers/gpu/drm/drm 0x182651cc drm_crtc_vblank_helper_get_vblank_timestamp +EXPORT_SYMBOL drivers/gpu/drm/drm 0x182b500c drm_connector_unregister +EXPORT_SYMBOL drivers/gpu/drm/drm 0x18a2e2c0 drm_connector_list_iter_begin +EXPORT_SYMBOL drivers/gpu/drm/drm 0x190fce16 drm_gem_vm_open +EXPORT_SYMBOL drivers/gpu/drm/drm 0x1923c650 drm_release_noglobal +EXPORT_SYMBOL drivers/gpu/drm/drm 0x19c2016e drm_modeset_backoff +EXPORT_SYMBOL drivers/gpu/drm/drm 0x1a411479 drm_syncobj_free +EXPORT_SYMBOL drivers/gpu/drm/drm 0x1a47dddd drm_mode_create_tv_margin_properties +EXPORT_SYMBOL drivers/gpu/drm/drm 0x1a7244d5 drm_crtc_vblank_count +EXPORT_SYMBOL drivers/gpu/drm/drm 0x1b9622d7 drm_master_internal_release +EXPORT_SYMBOL drivers/gpu/drm/drm 0x1b99a495 drm_client_framebuffer_create +EXPORT_SYMBOL drivers/gpu/drm/drm 0x1bcb67ab drm_property_create_enum +EXPORT_SYMBOL drivers/gpu/drm/drm 0x1c054daf drm_connector_init_with_ddc +EXPORT_SYMBOL drivers/gpu/drm/drm 0x1d414a25 drm_master_internal_acquire +EXPORT_SYMBOL drivers/gpu/drm/drm 0x1d47ffe3 drm_property_create_signed_range +EXPORT_SYMBOL drivers/gpu/drm/drm 0x1decbdec drm_dev_init +EXPORT_SYMBOL drivers/gpu/drm/drm 0x1f88a570 drm_modeset_unlock +EXPORT_SYMBOL drivers/gpu/drm/drm 0x1fbe8d12 drm_hdcp_update_content_protection +EXPORT_SYMBOL drivers/gpu/drm/drm 0x2014e237 drm_dev_register +EXPORT_SYMBOL drivers/gpu/drm/drm 0x21642508 drm_gem_prime_import_dev +EXPORT_SYMBOL drivers/gpu/drm/drm 0x2183c08c drm_mm_scan_add_block +EXPORT_SYMBOL drivers/gpu/drm/drm 0x21a94484 drm_mode_create_tile_group +EXPORT_SYMBOL drivers/gpu/drm/drm 0x21d541eb drm_flip_work_queue_task +EXPORT_SYMBOL drivers/gpu/drm/drm 0x22e719b2 drm_gem_dma_resv_wait +EXPORT_SYMBOL drivers/gpu/drm/drm 0x22ea0b95 drm_gem_dmabuf_vmap +EXPORT_SYMBOL drivers/gpu/drm/drm 0x23385062 drm_property_blob_get +EXPORT_SYMBOL drivers/gpu/drm/drm 0x23fcaad8 drm_hdmi_vendor_infoframe_from_display_mode +EXPORT_SYMBOL drivers/gpu/drm/drm 0x25326629 drm_atomic_set_crtc_for_connector +EXPORT_SYMBOL drivers/gpu/drm/drm 0x2532689b drm_mode_is_420 +EXPORT_SYMBOL drivers/gpu/drm/drm 0x258d20c3 drm_gem_shmem_unpin +EXPORT_SYMBOL drivers/gpu/drm/drm 0x25aec1d4 drm_crtc_vblank_on +EXPORT_SYMBOL drivers/gpu/drm/drm 0x25d9367d drm_mode_crtc_set_gamma_size +EXPORT_SYMBOL drivers/gpu/drm/drm 0x25daad93 __drm_mm_interval_first +EXPORT_SYMBOL drivers/gpu/drm/drm 0x269496e6 drm_mode_create_tv_properties +EXPORT_SYMBOL drivers/gpu/drm/drm 0x2754dad8 drm_mm_reserve_node +EXPORT_SYMBOL drivers/gpu/drm/drm 0x2898272a drm_object_attach_property +EXPORT_SYMBOL drivers/gpu/drm/drm 0x29a076a8 drm_client_init +EXPORT_SYMBOL drivers/gpu/drm/drm 0x29c42057 drm_bridge_chain_mode_fixup +EXPORT_SYMBOL drivers/gpu/drm/drm 0x29d8a11b __drm_atomic_helper_set_config +EXPORT_SYMBOL drivers/gpu/drm/drm 0x29f078d1 drm_mode_legacy_fb_format +EXPORT_SYMBOL drivers/gpu/drm/drm 0x2a32c320 drm_property_create_bool +EXPORT_SYMBOL drivers/gpu/drm/drm 0x2a962499 drm_mm_scan_init_with_range +EXPORT_SYMBOL drivers/gpu/drm/drm 0x2aa1b113 drm_gem_mmap +EXPORT_SYMBOL drivers/gpu/drm/drm 0x2aced7fd drm_client_modeset_commit_locked +EXPORT_SYMBOL drivers/gpu/drm/drm 0x2ae0bfea drm_vma_offset_lookup_locked +EXPORT_SYMBOL drivers/gpu/drm/drm 0x2c414a0a drm_calc_timestamping_constants +EXPORT_SYMBOL drivers/gpu/drm/drm 0x2c576c7c drm_modeset_lock_single_interruptible +EXPORT_SYMBOL drivers/gpu/drm/drm 0x2cae94b5 drm_atomic_bridge_chain_post_disable +EXPORT_SYMBOL drivers/gpu/drm/drm 0x2cbcb8aa drm_property_blob_put +EXPORT_SYMBOL drivers/gpu/drm/drm 0x2d50570f drm_rect_calc_hscale +EXPORT_SYMBOL drivers/gpu/drm/drm 0x2e7fc614 drm_connector_list_iter_next +EXPORT_SYMBOL drivers/gpu/drm/drm 0x30adc8fb drm_crtc_vblank_helper_get_vblank_timestamp_internal +EXPORT_SYMBOL drivers/gpu/drm/drm 0x31b8a5e3 __drm_set_edid_firmware_path +EXPORT_SYMBOL drivers/gpu/drm/drm 0x3277abdd drm_irq_install +EXPORT_SYMBOL drivers/gpu/drm/drm 0x330a5bb5 drm_crtc_vblank_restore +EXPORT_SYMBOL drivers/gpu/drm/drm 0x3342e9a1 drm_i2c_encoder_restore +EXPORT_SYMBOL drivers/gpu/drm/drm 0x34e8eb66 drm_connector_set_vrr_capable_property +EXPORT_SYMBOL drivers/gpu/drm/drm 0x3503d682 drm_mode_vrefresh +EXPORT_SYMBOL drivers/gpu/drm/drm 0x352b9066 drm_connector_register +EXPORT_SYMBOL drivers/gpu/drm/drm 0x35afae24 __drm_puts_seq_file +EXPORT_SYMBOL drivers/gpu/drm/drm 0x35cf6c9d drm_panel_of_backlight +EXPORT_SYMBOL drivers/gpu/drm/drm 0x35ee9aba drm_gem_get_pages +EXPORT_SYMBOL drivers/gpu/drm/drm 0x36633743 drm_hdmi_avi_infoframe_from_display_mode +EXPORT_SYMBOL drivers/gpu/drm/drm 0x36e72b3b drm_panel_disable +EXPORT_SYMBOL drivers/gpu/drm/drm 0x37821126 drm_hdmi_avi_infoframe_bars +EXPORT_SYMBOL drivers/gpu/drm/drm 0x378d294c drm_mode_is_420_also +EXPORT_SYMBOL drivers/gpu/drm/drm 0x391840d9 drm_panel_init +EXPORT_SYMBOL drivers/gpu/drm/drm 0x3aec1bec drm_vma_node_allow +EXPORT_SYMBOL drivers/gpu/drm/drm 0x3b04e2a7 drm_property_create_object +EXPORT_SYMBOL drivers/gpu/drm/drm 0x3ba17eab drm_ht_insert_item +EXPORT_SYMBOL drivers/gpu/drm/drm 0x3ba85cfc drm_sysfs_hotplug_event +EXPORT_SYMBOL drivers/gpu/drm/drm 0x3c22a4d8 drm_vma_offset_manager_init +EXPORT_SYMBOL drivers/gpu/drm/drm 0x3c68d4c0 drm_bridge_chain_mode_valid +EXPORT_SYMBOL drivers/gpu/drm/drm 0x3e412255 drm_state_dump +EXPORT_SYMBOL drivers/gpu/drm/drm 0x3e50b109 drm_gem_fence_array_add +EXPORT_SYMBOL drivers/gpu/drm/drm 0x3f1386f0 drm_bridge_add +EXPORT_SYMBOL drivers/gpu/drm/drm 0x40372e29 drmm_mode_config_init +EXPORT_SYMBOL drivers/gpu/drm/drm 0x40964d60 drm_atomic_nonblocking_commit +EXPORT_SYMBOL drivers/gpu/drm/drm 0x411e1f14 drm_atomic_add_affected_connectors +EXPORT_SYMBOL drivers/gpu/drm/drm 0x41685ac2 drm_gem_shmem_madvise +EXPORT_SYMBOL drivers/gpu/drm/drm 0x42e82b21 drm_crtc_vblank_put +EXPORT_SYMBOL drivers/gpu/drm/drm 0x4354eaf1 drm_gem_fence_array_add_implicit +EXPORT_SYMBOL drivers/gpu/drm/drm 0x44774b31 drmm_kmalloc +EXPORT_SYMBOL drivers/gpu/drm/drm 0x449cea11 drm_mode_object_get +EXPORT_SYMBOL drivers/gpu/drm/drm 0x450f274d drm_atomic_get_old_bridge_state +EXPORT_SYMBOL drivers/gpu/drm/drm 0x45764f0a drm_property_create_blob +EXPORT_SYMBOL drivers/gpu/drm/drm 0x474156b5 drm_mode_equal +EXPORT_SYMBOL drivers/gpu/drm/drm 0x47f985aa drm_edid_duplicate +EXPORT_SYMBOL drivers/gpu/drm/drm 0x48202a3f drm_invalid_op +EXPORT_SYMBOL drivers/gpu/drm/drm 0x4828c5bc drm_dev_get +EXPORT_SYMBOL drivers/gpu/drm/drm 0x49969749 drm_ioctl_permit +EXPORT_SYMBOL drivers/gpu/drm/drm 0x49bb1ce9 drm_client_modeset_commit +EXPORT_SYMBOL drivers/gpu/drm/drm 0x4a6410b5 drm_i2c_encoder_destroy +EXPORT_SYMBOL drivers/gpu/drm/drm 0x4b54781e drm_warn_on_modeset_not_all_locked +EXPORT_SYMBOL drivers/gpu/drm/drm 0x4b58e7b1 drm_plane_cleanup +EXPORT_SYMBOL drivers/gpu/drm/drm 0x4b7ebf95 drm_mm_remove_node +EXPORT_SYMBOL drivers/gpu/drm/drm 0x4bbed026 drm_crtc_send_vblank_event +EXPORT_SYMBOL drivers/gpu/drm/drm 0x4bc348cb drm_mode_duplicate +EXPORT_SYMBOL drivers/gpu/drm/drm 0x4c500e16 drm_display_info_set_bus_formats +EXPORT_SYMBOL drivers/gpu/drm/drm 0x4d6481a5 drm_gem_handle_delete +EXPORT_SYMBOL drivers/gpu/drm/drm 0x4d7b1fe4 drm_prime_gem_destroy +EXPORT_SYMBOL drivers/gpu/drm/drm 0x4d982bf9 drm_gem_object_put +EXPORT_SYMBOL drivers/gpu/drm/drm 0x4e095f11 drm_get_format_name +EXPORT_SYMBOL drivers/gpu/drm/drm 0x4e9ab25b drm_crtc_vblank_get +EXPORT_SYMBOL drivers/gpu/drm/drm 0x4ed8839a drm_atomic_set_mode_prop_for_crtc +EXPORT_SYMBOL drivers/gpu/drm/drm 0x4edffe0f drm_atomic_get_connector_state +EXPORT_SYMBOL drivers/gpu/drm/drm 0x4eefeef2 drm_atomic_state_default_clear +EXPORT_SYMBOL drivers/gpu/drm/drm 0x4f0653e1 drm_connector_list_iter_end +EXPORT_SYMBOL drivers/gpu/drm/drm 0x4f18a150 __drm_debug +EXPORT_SYMBOL drivers/gpu/drm/drm 0x50010db8 drm_panel_remove +EXPORT_SYMBOL drivers/gpu/drm/drm 0x503fe38f drm_atomic_add_encoder_bridges +EXPORT_SYMBOL drivers/gpu/drm/drm 0x5045e465 drm_agp_unbind +EXPORT_SYMBOL drivers/gpu/drm/drm 0x504fd725 drm_client_buffer_vunmap +EXPORT_SYMBOL drivers/gpu/drm/drm 0x50674de7 drm_timeout_abs_to_jiffies +EXPORT_SYMBOL drivers/gpu/drm/drm 0x507a94f2 drm_is_current_master +EXPORT_SYMBOL drivers/gpu/drm/drm 0x50b12b60 drm_set_preferred_mode +EXPORT_SYMBOL drivers/gpu/drm/drm 0x50e0fb2c drm_crtc_vblank_off +EXPORT_SYMBOL drivers/gpu/drm/drm 0x52157640 drm_send_event_locked +EXPORT_SYMBOL drivers/gpu/drm/drm 0x5236cdf4 drm_gem_shmem_create_with_handle +EXPORT_SYMBOL drivers/gpu/drm/drm 0x52e28791 drm_legacy_ioremap +EXPORT_SYMBOL drivers/gpu/drm/drm 0x542ea146 drm_bridge_chain_enable +EXPORT_SYMBOL drivers/gpu/drm/drm 0x548dd44d drm_handle_vblank +EXPORT_SYMBOL drivers/gpu/drm/drm 0x54a2c27a drm_connector_set_panel_orientation_with_quirk +EXPORT_SYMBOL drivers/gpu/drm/drm 0x5542443b drm_flip_work_init +EXPORT_SYMBOL drivers/gpu/drm/drm 0x554dfdd5 drm_gem_create_mmap_offset_size +EXPORT_SYMBOL drivers/gpu/drm/drm 0x56c6e828 drm_mode_get_hv_timing +EXPORT_SYMBOL drivers/gpu/drm/drm 0x57698a50 drm_mm_takedown +EXPORT_SYMBOL drivers/gpu/drm/drm 0x57b6efe3 drm_ioctl_flags +EXPORT_SYMBOL drivers/gpu/drm/drm 0x5814899b drm_agp_info +EXPORT_SYMBOL drivers/gpu/drm/drm 0x5823671e drm_get_edid_switcheroo +EXPORT_SYMBOL drivers/gpu/drm/drm 0x58842118 drm_gem_objects_lookup +EXPORT_SYMBOL drivers/gpu/drm/drm 0x59056243 drm_mm_replace_node +EXPORT_SYMBOL drivers/gpu/drm/drm 0x5a326cbb drm_mode_create_scaling_mode_property +EXPORT_SYMBOL drivers/gpu/drm/drm 0x5b5b4b4f drm_plane_create_alpha_property +EXPORT_SYMBOL drivers/gpu/drm/drm 0x5bfa06fd drm_crtc_vblank_count_and_time +EXPORT_SYMBOL drivers/gpu/drm/drm 0x5c4eab20 drm_noop +EXPORT_SYMBOL drivers/gpu/drm/drm 0x5e913cab drm_dev_put +EXPORT_SYMBOL drivers/gpu/drm/drm 0x5f096225 drm_vma_offset_remove +EXPORT_SYMBOL drivers/gpu/drm/drm 0x5f7985a5 drm_mm_scan_remove_block +EXPORT_SYMBOL drivers/gpu/drm/drm 0x602c74d4 drm_client_register +EXPORT_SYMBOL drivers/gpu/drm/drm 0x6182abe2 drm_property_create +EXPORT_SYMBOL drivers/gpu/drm/drm 0x61b00bef drm_atomic_get_old_private_obj_state +EXPORT_SYMBOL drivers/gpu/drm/drm 0x61dbd965 drm_atomic_bridge_chain_pre_enable +EXPORT_SYMBOL drivers/gpu/drm/drm 0x63510e42 drm_gem_cma_prime_import_sg_table_vmap +EXPORT_SYMBOL drivers/gpu/drm/drm 0x637cac19 drm_mode_set_crtcinfo +EXPORT_SYMBOL drivers/gpu/drm/drm 0x65c5d6d9 drm_modeset_acquire_init +EXPORT_SYMBOL drivers/gpu/drm/drm 0x66551bc7 drm_detect_monitor_audio +EXPORT_SYMBOL drivers/gpu/drm/drm 0x6658d95f drm_connector_set_path_property +EXPORT_SYMBOL drivers/gpu/drm/drm 0x6698ecb3 drm_atomic_get_new_private_obj_state +EXPORT_SYMBOL drivers/gpu/drm/drm 0x6750296d drm_syncobj_replace_fence +EXPORT_SYMBOL drivers/gpu/drm/drm 0x677395b8 drm_cma_gem_create_object_default_funcs +EXPORT_SYMBOL drivers/gpu/drm/drm 0x67ad841d drm_hdmi_infoframe_set_hdr_metadata +EXPORT_SYMBOL drivers/gpu/drm/drm 0x686a1129 drm_agp_free +EXPORT_SYMBOL drivers/gpu/drm/drm 0x69c371b7 drm_gem_prime_handle_to_fd +EXPORT_SYMBOL drivers/gpu/drm/drm 0x6a77bada drm_bridge_chain_mode_set +EXPORT_SYMBOL drivers/gpu/drm/drm 0x6bf585b5 drm_modeset_drop_locks +EXPORT_SYMBOL drivers/gpu/drm/drm 0x6c1613f0 drm_i2c_encoder_save +EXPORT_SYMBOL drivers/gpu/drm/drm 0x6c30e50d drm_agp_alloc +EXPORT_SYMBOL drivers/gpu/drm/drm 0x6ca24c36 drm_legacy_ioremap_wc +EXPORT_SYMBOL drivers/gpu/drm/drm 0x6cbba138 drm_connector_attach_encoder +EXPORT_SYMBOL drivers/gpu/drm/drm 0x6ce0bc05 drm_syncobj_get_fd +EXPORT_SYMBOL drivers/gpu/drm/drm 0x6d6bfd5e drm_gem_object_lookup +EXPORT_SYMBOL drivers/gpu/drm/drm 0x6dc428a6 drm_mode_find_dmt +EXPORT_SYMBOL drivers/gpu/drm/drm 0x6dd7d69a drm_dev_printk +EXPORT_SYMBOL drivers/gpu/drm/drm 0x6e2c6323 drm_compat_ioctl +EXPORT_SYMBOL drivers/gpu/drm/drm 0x6e30ba8e drm_rect_rotate_inv +EXPORT_SYMBOL drivers/gpu/drm/drm 0x6e516e37 drm_bridge_chain_pre_enable +EXPORT_SYMBOL drivers/gpu/drm/drm 0x6e671ad6 drm_client_modeset_dpms +EXPORT_SYMBOL drivers/gpu/drm/drm 0x6e76c22e drm_print_regset32 +EXPORT_SYMBOL drivers/gpu/drm/drm 0x6f07c140 drm_atomic_state_default_release +EXPORT_SYMBOL drivers/gpu/drm/drm 0x6f2925e0 drm_gem_vm_close +EXPORT_SYMBOL drivers/gpu/drm/drm 0x6f3a6399 drm_crtc_from_index +EXPORT_SYMBOL drivers/gpu/drm/drm 0x70555db4 drm_mode_set_config_internal +EXPORT_SYMBOL drivers/gpu/drm/drm 0x70e435fa drm_gem_map_detach +EXPORT_SYMBOL drivers/gpu/drm/drm 0x712b1f4d drm_encoder_init +EXPORT_SYMBOL drivers/gpu/drm/drm 0x71acd327 drm_mode_get_tile_group +EXPORT_SYMBOL drivers/gpu/drm/drm 0x7238f7d4 drm_dev_has_vblank +EXPORT_SYMBOL drivers/gpu/drm/drm 0x74b14b4c drm_vma_offset_add +EXPORT_SYMBOL drivers/gpu/drm/drm 0x76a8e7ea drm_property_replace_global_blob +EXPORT_SYMBOL drivers/gpu/drm/drm 0x76abff27 drm_gem_dmabuf_export +EXPORT_SYMBOL drivers/gpu/drm/drm 0x788daa51 drm_gem_map_attach +EXPORT_SYMBOL drivers/gpu/drm/drm 0x79013b5e drm_mode_config_reset +EXPORT_SYMBOL drivers/gpu/drm/drm 0x79518580 drm_framebuffer_plane_height +EXPORT_SYMBOL drivers/gpu/drm/drm 0x795e4c46 drm_syncobj_get_handle +EXPORT_SYMBOL drivers/gpu/drm/drm 0x795e8c8e drm_mode_create_dvi_i_properties +EXPORT_SYMBOL drivers/gpu/drm/drm 0x799a2391 drm_plane_force_disable +EXPORT_SYMBOL drivers/gpu/drm/drm 0x7a62440f drm_connector_attach_vrr_capable_property +EXPORT_SYMBOL drivers/gpu/drm/drm 0x7c573f34 drm_modeset_acquire_fini +EXPORT_SYMBOL drivers/gpu/drm/drm 0x7c846f7b drm_atomic_set_crtc_for_plane +EXPORT_SYMBOL drivers/gpu/drm/drm 0x7d405b49 drm_atomic_commit +EXPORT_SYMBOL drivers/gpu/drm/drm 0x7d580ed1 drm_gem_object_put_unlocked +EXPORT_SYMBOL drivers/gpu/drm/drm 0x7e374fb7 drm_panel_prepare +EXPORT_SYMBOL drivers/gpu/drm/drm 0x7edc546f drm_mm_print +EXPORT_SYMBOL drivers/gpu/drm/drm 0x80951dab drm_mode_probed_add +EXPORT_SYMBOL drivers/gpu/drm/drm 0x8108949d drm_mode_equal_no_clocks +EXPORT_SYMBOL drivers/gpu/drm/drm 0x8131c54e drm_probe_ddc +EXPORT_SYMBOL drivers/gpu/drm/drm 0x81992424 drm_edid_header_is_valid +EXPORT_SYMBOL drivers/gpu/drm/drm 0x81c7309f drm_property_lookup_blob +EXPORT_SYMBOL drivers/gpu/drm/drm 0x8247618d drm_atomic_normalize_zpos +EXPORT_SYMBOL drivers/gpu/drm/drm 0x83293ed0 drm_gem_object_release +EXPORT_SYMBOL drivers/gpu/drm/drm 0x8385e45b drm_atomic_get_private_obj_state +EXPORT_SYMBOL drivers/gpu/drm/drm 0x842dd90c drm_flip_work_commit +EXPORT_SYMBOL drivers/gpu/drm/drm 0x846ef9ec drm_master_put +EXPORT_SYMBOL drivers/gpu/drm/drm 0x84ce1a10 drm_gem_shmem_vmap +EXPORT_SYMBOL drivers/gpu/drm/drm 0x84cefc19 drm_wait_one_vblank +EXPORT_SYMBOL drivers/gpu/drm/drm 0x8563a554 drm_ht_remove +EXPORT_SYMBOL drivers/gpu/drm/drm 0x866fccb3 drm_gem_lock_reservations +EXPORT_SYMBOL drivers/gpu/drm/drm 0x86e5e325 drm_agp_enable +EXPORT_SYMBOL drivers/gpu/drm/drm 0x86ea2f21 drm_dev_set_unique +EXPORT_SYMBOL drivers/gpu/drm/drm 0x8717b9e7 drm_i2c_encoder_mode_set +EXPORT_SYMBOL drivers/gpu/drm/drm 0x871ab41a drm_rect_intersect +EXPORT_SYMBOL drivers/gpu/drm/drm 0x87578352 drm_vblank_init +EXPORT_SYMBOL drivers/gpu/drm/drm 0x88bff8aa devm_drm_dev_init +EXPORT_SYMBOL drivers/gpu/drm/drm 0x8916c460 drm_release +EXPORT_SYMBOL drivers/gpu/drm/drm 0x8935d2ad drm_crtc_check_viewport +EXPORT_SYMBOL drivers/gpu/drm/drm 0x8972e65c drm_event_reserve_init +EXPORT_SYMBOL drivers/gpu/drm/drm 0x89ec7ba0 drm_plane_create_zpos_property +EXPORT_SYMBOL drivers/gpu/drm/drm 0x8a2ad058 drm_atomic_set_fence_for_plane +EXPORT_SYMBOL drivers/gpu/drm/drm 0x8a799a8a drm_syncobj_find_fence +EXPORT_SYMBOL drivers/gpu/drm/drm 0x8ac02e0c drm_connector_attach_content_type_property +EXPORT_SYMBOL drivers/gpu/drm/drm 0x8bf89353 drm_poll +EXPORT_SYMBOL drivers/gpu/drm/drm 0x8bfbd0f2 drm_i2c_encoder_commit +EXPORT_SYMBOL drivers/gpu/drm/drm 0x8c4fd37c drm_mode_set_name +EXPORT_SYMBOL drivers/gpu/drm/drm 0x9029d61c drm_client_rotation +EXPORT_SYMBOL drivers/gpu/drm/drm 0x919206f3 drm_gem_mmap_obj +EXPORT_SYMBOL drivers/gpu/drm/drm 0x91ab444b drm_plane_from_index +EXPORT_SYMBOL drivers/gpu/drm/drm 0x91fec1cc drm_rect_calc_vscale +EXPORT_SYMBOL drivers/gpu/drm/drm 0x920a070a drm_atomic_add_affected_planes +EXPORT_SYMBOL drivers/gpu/drm/drm 0x9213f5c3 drm_edid_to_speaker_allocation +EXPORT_SYMBOL drivers/gpu/drm/drm 0x934af53c drm_gem_shmem_get_pages +EXPORT_SYMBOL drivers/gpu/drm/drm 0x9457daec drm_dev_dbg +EXPORT_SYMBOL drivers/gpu/drm/drm 0x9466f2db drm_i2c_encoder_prepare +EXPORT_SYMBOL drivers/gpu/drm/drm 0x95dbc76d drm_ht_create +EXPORT_SYMBOL drivers/gpu/drm/drm 0x9689721f drm_panel_detach +EXPORT_SYMBOL drivers/gpu/drm/drm 0x972e4665 drm_send_event +EXPORT_SYMBOL drivers/gpu/drm/drm 0x982698bd drm_mode_match +EXPORT_SYMBOL drivers/gpu/drm/drm 0x9876b74a drm_gem_shmem_print_info +EXPORT_SYMBOL drivers/gpu/drm/drm 0x99eb8bf5 drm_prime_pages_to_sg +EXPORT_SYMBOL drivers/gpu/drm/drm 0x99fd20aa drm_rect_clip_scaled +EXPORT_SYMBOL drivers/gpu/drm/drm 0x9a9cad56 drm_crtc_cleanup +EXPORT_SYMBOL drivers/gpu/drm/drm 0x9b250c16 drm_hdmi_avi_infoframe_content_type +EXPORT_SYMBOL drivers/gpu/drm/drm 0x9b8a53f5 drm_ht_just_insert_please +EXPORT_SYMBOL drivers/gpu/drm/drm 0x9c351ae1 drm_gem_shmem_pin +EXPORT_SYMBOL drivers/gpu/drm/drm 0x9c9bcc6f drm_atomic_set_fb_for_plane +EXPORT_SYMBOL drivers/gpu/drm/drm 0x9d9642ee drm_ioctl_kernel +EXPORT_SYMBOL drivers/gpu/drm/drm 0x9db2188a drm_panel_enable +EXPORT_SYMBOL drivers/gpu/drm/drm 0x9eb77960 drm_framebuffer_remove +EXPORT_SYMBOL drivers/gpu/drm/drm 0x9fa94ce5 drm_atomic_get_new_bridge_state +EXPORT_SYMBOL drivers/gpu/drm/drm 0x9fd47b74 drm_connector_set_link_status_property +EXPORT_SYMBOL drivers/gpu/drm/drm 0xa0713087 drm_ht_find_item +EXPORT_SYMBOL drivers/gpu/drm/drm 0xa1743155 drm_mode_create_aspect_ratio_property +EXPORT_SYMBOL drivers/gpu/drm/drm 0xa243e6a8 drm_bridge_attach +EXPORT_SYMBOL drivers/gpu/drm/drm 0xa31da83c drm_connector_attach_scaling_mode_property +EXPORT_SYMBOL drivers/gpu/drm/drm 0xa4806b84 drm_atomic_state_alloc +EXPORT_SYMBOL drivers/gpu/drm/drm 0xa4a3d8a2 drm_master_get +EXPORT_SYMBOL drivers/gpu/drm/drm 0xa4c53d2c drm_property_destroy +EXPORT_SYMBOL drivers/gpu/drm/drm 0xa6f6cbfe drm_plane_create_blend_mode_property +EXPORT_SYMBOL drivers/gpu/drm/drm 0xa7687d72 drm_prime_sg_to_page_addr_arrays +EXPORT_SYMBOL drivers/gpu/drm/drm 0xa893c8a8 drm_atomic_private_obj_init +EXPORT_SYMBOL drivers/gpu/drm/drm 0xa8ad5d01 drm_detect_hdmi_monitor +EXPORT_SYMBOL drivers/gpu/drm/drm 0xaa54cf93 drm_atomic_get_old_connector_for_encoder +EXPORT_SYMBOL drivers/gpu/drm/drm 0xaac39ff3 __drm_printfn_info +EXPORT_SYMBOL drivers/gpu/drm/drm 0xab90fd1f drm_crtc_accurate_vblank_count +EXPORT_SYMBOL drivers/gpu/drm/drm 0xabab5d21 drm_client_dev_hotplug +EXPORT_SYMBOL drivers/gpu/drm/drm 0xac56b14a drm_gem_dumb_destroy +EXPORT_SYMBOL drivers/gpu/drm/drm 0xad1bd506 drm_gem_object_init +EXPORT_SYMBOL drivers/gpu/drm/drm 0xad2a4ae4 drm_crtc_init_with_planes +EXPORT_SYMBOL drivers/gpu/drm/drm 0xad4e902b drm_color_ctm_s31_32_to_qm_n +EXPORT_SYMBOL drivers/gpu/drm/drm 0xad7c28cf drm_atomic_get_new_connector_for_encoder +EXPORT_SYMBOL drivers/gpu/drm/drm 0xae277372 __drm_crtc_commit_free +EXPORT_SYMBOL drivers/gpu/drm/drm 0xae5ec5b0 drm_gem_free_mmap_offset +EXPORT_SYMBOL drivers/gpu/drm/drm 0xb04fedb4 drm_gem_shmem_put_pages +EXPORT_SYMBOL drivers/gpu/drm/drm 0xb05169f9 drm_crtc_handle_vblank +EXPORT_SYMBOL drivers/gpu/drm/drm 0xb053adda drm_rect_rotate +EXPORT_SYMBOL drivers/gpu/drm/drm 0xb0b05ff5 drm_clflush_sg +EXPORT_SYMBOL drivers/gpu/drm/drm 0xb11ac7a7 __drm_err +EXPORT_SYMBOL drivers/gpu/drm/drm 0xb174d46e drm_connector_has_possible_encoder +EXPORT_SYMBOL drivers/gpu/drm/drm 0xb28cec4f drm_framebuffer_plane_width +EXPORT_SYMBOL drivers/gpu/drm/drm 0xb37fb6d8 drm_dev_unplug +EXPORT_SYMBOL drivers/gpu/drm/drm 0xb4032484 drm_mm_insert_node_in_range +EXPORT_SYMBOL drivers/gpu/drm/drm 0xb447512f drm_atomic_check_only +EXPORT_SYMBOL drivers/gpu/drm/drm 0xb6127243 drm_need_swiotlb +EXPORT_SYMBOL drivers/gpu/drm/drm 0xb7316c35 drm_universal_plane_init +EXPORT_SYMBOL drivers/gpu/drm/drm 0xb750532d drm_object_property_get_value +EXPORT_SYMBOL drivers/gpu/drm/drm 0xb853833f drm_mode_validate_size +EXPORT_SYMBOL drivers/gpu/drm/drm 0xb8bdb3f5 drm_puts +EXPORT_SYMBOL drivers/gpu/drm/drm 0xb8ce5763 drm_color_lut_check +EXPORT_SYMBOL drivers/gpu/drm/drm 0xb8f28004 drm_panel_add +EXPORT_SYMBOL drivers/gpu/drm/drm 0xb8f9f297 drm_bridge_remove +EXPORT_SYMBOL drivers/gpu/drm/drm 0xb90e6e70 drm_hdmi_avi_infoframe_colorspace +EXPORT_SYMBOL drivers/gpu/drm/drm 0xb9cad492 __drm_atomic_state_free +EXPORT_SYMBOL drivers/gpu/drm/drm 0xb9f56e22 drm_format_info_block_width +EXPORT_SYMBOL drivers/gpu/drm/drm 0xba1cf072 __drmm_add_action_or_reset +EXPORT_SYMBOL drivers/gpu/drm/drm 0xbaca8da8 drm_cvt_mode +EXPORT_SYMBOL drivers/gpu/drm/drm 0xbb33ee7b drm_default_rgb_quant_range +EXPORT_SYMBOL drivers/gpu/drm/drm 0xbb5c0f69 __drm_atomic_helper_disable_plane +EXPORT_SYMBOL drivers/gpu/drm/drm 0xbcf48f6d drm_property_create_range +EXPORT_SYMBOL drivers/gpu/drm/drm 0xbd476c89 drm_add_override_edid_modes +EXPORT_SYMBOL drivers/gpu/drm/drm 0xbd5ededa drm_crtc_set_max_vblank_count +EXPORT_SYMBOL drivers/gpu/drm/drm 0xbe0f2408 drm_driver_legacy_fb_format +EXPORT_SYMBOL drivers/gpu/drm/drm 0xbe3b5412 drm_modeset_lock_all +EXPORT_SYMBOL drivers/gpu/drm/drm 0xbeeacea9 drm_agp_acquire +EXPORT_SYMBOL drivers/gpu/drm/drm 0xc06c8a52 drm_crtc_vblank_reset +EXPORT_SYMBOL drivers/gpu/drm/drm 0xc10d0478 drm_object_property_set_value +EXPORT_SYMBOL drivers/gpu/drm/drm 0xc1c4dada drm_modeset_lock_all_ctx +EXPORT_SYMBOL drivers/gpu/drm/drm 0xc2c36138 drm_mode_is_420_only +EXPORT_SYMBOL drivers/gpu/drm/drm 0xc2ee2f85 drm_gem_map_dma_buf +EXPORT_SYMBOL drivers/gpu/drm/drm 0xc324efb9 drm_edid_to_sad +EXPORT_SYMBOL drivers/gpu/drm/drm 0xc35152b4 drm_gem_dmabuf_mmap +EXPORT_SYMBOL drivers/gpu/drm/drm 0xc3515a62 drm_plane_init +EXPORT_SYMBOL drivers/gpu/drm/drm 0xc39a58f1 drm_open +EXPORT_SYMBOL drivers/gpu/drm/drm 0xc3a0426e drm_crtc_enable_color_mgmt +EXPORT_SYMBOL drivers/gpu/drm/drm 0xc503316f drm_plane_create_color_properties +EXPORT_SYMBOL drivers/gpu/drm/drm 0xc52795ff drm_agp_bind +EXPORT_SYMBOL drivers/gpu/drm/drm 0xc5992401 __drm_puts_coredump +EXPORT_SYMBOL drivers/gpu/drm/drm 0xc6323239 drm_flip_work_cleanup +EXPORT_SYMBOL drivers/gpu/drm/drm 0xc70de6c2 drm_gem_put_pages +EXPORT_SYMBOL drivers/gpu/drm/drm 0xc7c3b8ae drm_gem_shmem_purge +EXPORT_SYMBOL drivers/gpu/drm/drm 0xc7f0f027 drm_format_info_min_pitch +EXPORT_SYMBOL drivers/gpu/drm/drm 0xc91a2afa drm_writeback_signal_completion +EXPORT_SYMBOL drivers/gpu/drm/drm 0xc97b2c3e drm_connector_cleanup +EXPORT_SYMBOL drivers/gpu/drm/drm 0xc9fd6654 drm_panel_get_modes +EXPORT_SYMBOL drivers/gpu/drm/drm 0xcae8df80 drm_gem_prime_mmap +EXPORT_SYMBOL drivers/gpu/drm/drm 0xcb2340b8 drm_rect_debug_print +EXPORT_SYMBOL drivers/gpu/drm/drm 0xcb5b21a1 drm_get_edid +EXPORT_SYMBOL drivers/gpu/drm/drm 0xcb9e3b92 drm_atomic_get_bridge_state +EXPORT_SYMBOL drivers/gpu/drm/drm 0xcc0c6c83 drm_ioctl +EXPORT_SYMBOL drivers/gpu/drm/drm 0xcc5895bb drm_connector_update_edid_property +EXPORT_SYMBOL drivers/gpu/drm/drm 0xccf8e421 drm_atomic_state_init +EXPORT_SYMBOL drivers/gpu/drm/drm 0xcdb32dd6 drm_connector_attach_tv_margin_properties +EXPORT_SYMBOL drivers/gpu/drm/drm 0xce4c4240 drm_irq_uninstall +EXPORT_SYMBOL drivers/gpu/drm/drm 0xcf11a549 drm_flip_work_allocate_task +EXPORT_SYMBOL drivers/gpu/drm/drm 0xd0043db4 drm_gem_shmem_purge_locked +EXPORT_SYMBOL drivers/gpu/drm/drm 0xd13f9985 drm_edid_block_valid +EXPORT_SYMBOL drivers/gpu/drm/drm 0xd213b14a drm_modeset_lock +EXPORT_SYMBOL drivers/gpu/drm/drm 0xd360108a drm_av_sync_delay +EXPORT_SYMBOL drivers/gpu/drm/drm 0xd364bfd7 drm_property_create_bitmask +EXPORT_SYMBOL drivers/gpu/drm/drm 0xd36e7611 drm_i2c_encoder_detect +EXPORT_SYMBOL drivers/gpu/drm/drm 0xd3db7100 drm_clflush_pages +EXPORT_SYMBOL drivers/gpu/drm/drm 0xd4505b10 drm_encoder_cleanup +EXPORT_SYMBOL drivers/gpu/drm/drm 0xd4571156 drm_framebuffer_cleanup +EXPORT_SYMBOL drivers/gpu/drm/drm 0xd59d1fb2 drm_mode_prune_invalid +EXPORT_SYMBOL drivers/gpu/drm/drm 0xd662b803 __devm_drm_dev_alloc +EXPORT_SYMBOL drivers/gpu/drm/drm 0xd680a377 drm_gem_object_free +EXPORT_SYMBOL drivers/gpu/drm/drm 0xd6aae07c drm_mode_parse_command_line_for_connector +EXPORT_SYMBOL drivers/gpu/drm/drm 0xd766c6b4 drm_writeback_get_out_fence +EXPORT_SYMBOL drivers/gpu/drm/drm 0xd8dd2a2d drm_atomic_set_mode_for_crtc +EXPORT_SYMBOL drivers/gpu/drm/drm 0xd91736ce drm_atomic_get_plane_state +EXPORT_SYMBOL drivers/gpu/drm/drm 0xd944cad2 drm_panel_attach +EXPORT_SYMBOL drivers/gpu/drm/drm 0xd96b425a __drm_printfn_coredump +EXPORT_SYMBOL drivers/gpu/drm/drm 0xd9b261d0 drm_event_cancel_free +EXPORT_SYMBOL drivers/gpu/drm/drm 0xda595f14 drm_crtc_vblank_waitqueue +EXPORT_SYMBOL drivers/gpu/drm/drm 0xdac1f95e drm_i2c_encoder_init +EXPORT_SYMBOL drivers/gpu/drm/drm 0xdac3fbce drm_gem_prime_fd_to_handle +EXPORT_SYMBOL drivers/gpu/drm/drm 0xdb2ef7e2 drm_connector_list_update +EXPORT_SYMBOL drivers/gpu/drm/drm 0xdb576a8e drm_hdmi_avi_infoframe_quant_range +EXPORT_SYMBOL drivers/gpu/drm/drm 0xdba2d633 drm_connector_set_panel_orientation +EXPORT_SYMBOL drivers/gpu/drm/drm 0xdbda2127 drm_i2c_encoder_dpms +EXPORT_SYMBOL drivers/gpu/drm/drm 0xddc01878 drm_debugfs_remove_files +EXPORT_SYMBOL drivers/gpu/drm/drm 0xddd1f64e drm_bridge_chain_disable +EXPORT_SYMBOL drivers/gpu/drm/drm 0xde287f11 drm_property_replace_blob +EXPORT_SYMBOL drivers/gpu/drm/drm 0xdf3f760d drm_mm_scan_color_evict +EXPORT_SYMBOL drivers/gpu/drm/drm 0xdf4a50e0 drm_sysfs_connector_status_event +EXPORT_SYMBOL drivers/gpu/drm/drm 0xdf666902 drm_rotation_simplify +EXPORT_SYMBOL drivers/gpu/drm/drm 0xe116d3a4 drm_vma_node_revoke +EXPORT_SYMBOL drivers/gpu/drm/drm 0xe1691992 drm_bridge_chain_post_disable +EXPORT_SYMBOL drivers/gpu/drm/drm 0xe1ca8685 drm_legacy_ioremapfree +EXPORT_SYMBOL drivers/gpu/drm/drm 0xe24d332d drm_add_modes_noedid +EXPORT_SYMBOL drivers/gpu/drm/drm 0xe25d0e17 drm_add_edid_modes +EXPORT_SYMBOL drivers/gpu/drm/drm 0xe31f608b drm_client_modeset_probe +EXPORT_SYMBOL drivers/gpu/drm/drm 0xe34e381a drm_crtc_arm_vblank_event +EXPORT_SYMBOL drivers/gpu/drm/drm 0xe3f9d289 drm_gem_create_mmap_offset +EXPORT_SYMBOL drivers/gpu/drm/drm 0xe4133565 drm_client_buffer_vmap +EXPORT_SYMBOL drivers/gpu/drm/drm 0xe48c1f09 drm_mode_create_dp_colorspace_property +EXPORT_SYMBOL drivers/gpu/drm/drm 0xe4a7d1d1 drm_writeback_queue_job +EXPORT_SYMBOL drivers/gpu/drm/drm 0xe54e11a8 drm_atomic_get_crtc_state +EXPORT_SYMBOL drivers/gpu/drm/drm 0xe5e29e21 drm_connector_attach_content_protection_property +EXPORT_SYMBOL drivers/gpu/drm/drm 0xe667c80d drm_gem_prime_export +EXPORT_SYMBOL drivers/gpu/drm/drm 0xe6fbaa8b drm_mode_config_cleanup +EXPORT_SYMBOL drivers/gpu/drm/drm 0xe74e7720 drm_gem_dmabuf_release +EXPORT_SYMBOL drivers/gpu/drm/drm 0xe771be93 drm_mode_create_from_cmdline_mode +EXPORT_SYMBOL drivers/gpu/drm/drm 0xe7e7c05d drm_syncobj_find +EXPORT_SYMBOL drivers/gpu/drm/drm 0xe817eb01 __drm_printfn_err +EXPORT_SYMBOL drivers/gpu/drm/drm 0xe8a034df drm_dev_exit +EXPORT_SYMBOL drivers/gpu/drm/drm 0xe9366013 drm_connector_set_tile_property +EXPORT_SYMBOL drivers/gpu/drm/drm 0xea328d40 drm_mode_object_put +EXPORT_SYMBOL drivers/gpu/drm/drm 0xea5867e4 drm_dev_alloc +EXPORT_SYMBOL drivers/gpu/drm/drm 0xeb4a4294 drm_mode_destroy +EXPORT_SYMBOL drivers/gpu/drm/drm 0xec12af74 __drm_dbg +EXPORT_SYMBOL drivers/gpu/drm/drm 0xec9f565a drm_mode_create_suggested_offset_properties +EXPORT_SYMBOL drivers/gpu/drm/drm 0xecda3906 drm_writeback_prepare_job +EXPORT_SYMBOL drivers/gpu/drm/drm 0xed4f0051 drm_gem_handle_create +EXPORT_SYMBOL drivers/gpu/drm/drm 0xed87a35f drm_atomic_bridge_chain_enable +EXPORT_SYMBOL drivers/gpu/drm/drm 0xedd351bd drm_connector_attach_max_bpc_property +EXPORT_SYMBOL drivers/gpu/drm/drm 0xeea43837 drm_writeback_cleanup_job +EXPORT_SYMBOL drivers/gpu/drm/drm 0xeef14d8c drm_format_info_block_height +EXPORT_SYMBOL drivers/gpu/drm/drm 0xf009c8b0 drm_atomic_private_obj_fini +EXPORT_SYMBOL drivers/gpu/drm/drm 0xf0517d7a drm_mm_init +EXPORT_SYMBOL drivers/gpu/drm/drm 0xf125b9b7 drm_framebuffer_unregister_private +EXPORT_SYMBOL drivers/gpu/drm/drm 0xf1421d13 drm_mode_sort +EXPORT_SYMBOL drivers/gpu/drm/drm 0xf19e1969 drm_gem_shmem_vunmap +EXPORT_SYMBOL drivers/gpu/drm/drm 0xf2587336 drm_atomic_bridge_chain_check +EXPORT_SYMBOL drivers/gpu/drm/drm 0xf2990869 drm_syncobj_create +EXPORT_SYMBOL drivers/gpu/drm/drm 0xf3086b0c drm_client_framebuffer_delete +EXPORT_SYMBOL drivers/gpu/drm/drm 0xf316e041 drm_gem_unlock_reservations +EXPORT_SYMBOL drivers/gpu/drm/drm 0xf406e46a drm_get_connector_type_name +EXPORT_SYMBOL drivers/gpu/drm/drm 0xf4c39aad drm_agp_release +EXPORT_SYMBOL drivers/gpu/drm/drm 0xf74e0553 drm_mode_create_content_type_property +EXPORT_SYMBOL drivers/gpu/drm/drm 0xf78ab344 drm_syncobj_add_point +EXPORT_SYMBOL drivers/gpu/drm/drm 0xf826786c drm_format_info +EXPORT_SYMBOL drivers/gpu/drm/drm 0xfa04d29a drm_mode_create +EXPORT_SYMBOL drivers/gpu/drm/drm 0xfb0e2ae2 drm_framebuffer_lookup +EXPORT_SYMBOL drivers/gpu/drm/drm 0xfc39877c drm_get_format_info +EXPORT_SYMBOL drivers/gpu/drm/drm 0xfc93306a drm_mode_put_tile_group +EXPORT_SYMBOL drivers/gpu/drm/drm 0xfe4df192 drm_mode_validate_driver +EXPORT_SYMBOL drivers/gpu/drm/drm 0xfe9ca022 drm_debugfs_create_files +EXPORT_SYMBOL drivers/gpu/drm/drm 0xfed795af drm_mode_debug_printmodeline +EXPORT_SYMBOL drivers/gpu/drm/drm 0xff8732fd drm_any_plane_has_format +EXPORT_SYMBOL drivers/gpu/drm/drm 0xff8de91d drm_print_bits +EXPORT_SYMBOL drivers/gpu/drm/drm 0xff90a292 drm_mode_copy +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x0016b7b7 drm_mode_config_helper_suspend +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x01a01a8a drm_fb_swab16 +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x02373b98 drm_gem_fb_create_handle +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x028f03ed drm_fb_xrgb8888_to_rgb565_dstclip +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x02f0c839 drm_atomic_helper_legacy_gamma_set +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x03c1d033 __drm_atomic_helper_crtc_destroy_state +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x06c49551 drm_dp_dsc_sink_line_buf_depth +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x078778f8 drm_fb_helper_alloc_fbi +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x07a32bab drm_dp_find_vcpi_slots +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x084108c4 drm_atomic_helper_page_flip +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x0a1ecb02 drm_self_refresh_helper_alter_state +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x0a4148ee drm_atomic_helper_commit_cleanup_done +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x0aac75df drm_scdc_set_scrambling +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x0cc184b3 drm_dp_dual_mode_set_tmds_output +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x0d1c2350 drm_self_refresh_helper_cleanup +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x0ed1cdef drm_kms_helper_poll_fini +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x0f094afc drm_helper_crtc_in_use +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x0f17e2c7 drm_fb_helper_initial_config +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x0f8ae5fd drm_atomic_helper_prepare_planes +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x11c9ad03 drm_dp_mst_topology_mgr_set_mst +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x129d16ba drm_gem_fb_simple_display_pipe_prepare_fb +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x1435f17e drm_fb_helper_ioctl +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x17aee351 drm_helper_connector_dpms +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x18d98eeb drm_helper_probe_single_connector_modes +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x1a1194e9 drm_fb_helper_cfb_fillrect +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x1b5d4217 drm_dp_mst_topology_mgr_resume +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x1e0ba0df drm_atomic_helper_swap_state +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x1e590566 __drm_atomic_helper_crtc_state_reset +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x1ec4b846 drm_helper_move_panel_connectors_to_head +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x1f0c1ab9 drm_dp_dpcd_read +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x1f37f1b4 drm_helper_mode_fill_fb_struct +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x1fe7a8b6 drm_dp_vsc_sdp_log +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x20cf8a6c drm_panel_bridge_remove +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x2182f60a drm_fb_helper_hotplug_event +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x22856778 drm_dp_mst_topology_mgr_destroy +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x22b8a796 drm_self_refresh_helper_update_avg_times +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x24bc4fcb drm_fb_helper_debug_leave +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x24db74c1 drm_fb_helper_deferred_io +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x2577a316 drm_simple_encoder_init +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x26815dbc drm_dp_link_rate_to_bw_code +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x2759f292 drm_dp_mst_dsc_aux_for_port +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x27bca774 drm_atomic_helper_connector_destroy_state +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x27cea7a2 drm_mode_config_helper_resume +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x2813ee7a drm_atomic_helper_commit_modeset_disables +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x28535335 drm_atomic_helper_commit_tail +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x28ee8343 drm_dp_set_phy_test_pattern +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x2a5ace37 drm_dp_mst_get_port_malloc +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x2a7942a5 __drm_atomic_helper_connector_duplicate_state +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x2b7c74ee drm_fb_helper_output_poll_changed +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x2be48607 drm_dp_mst_reset_vcpi_slots +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x2cfc4160 drm_atomic_helper_commit_planes +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x2d0fde14 drm_helper_force_disable_all +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x2e5ee6ad drm_atomic_helper_check_modeset +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x2ebdd5bd drm_dp_mst_get_edid +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x34a3dce0 drm_atomic_helper_bridge_propagate_bus_fmt +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x37dd397f drm_atomic_helper_resume +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x39d40764 drm_dp_mst_detect_port +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x3a8063f3 drm_dp_dsc_sink_supported_input_bpcs +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x3e8678b4 drm_atomic_helper_disable_planes_on_crtc +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x3f534bff __drm_atomic_helper_bridge_reset +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x3f5a972c drm_dp_read_desc +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x3ff8a38e drm_atomic_helper_connector_tv_reset +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x418827c7 __drm_atomic_helper_plane_duplicate_state +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x430ebf03 drm_kms_helper_poll_disable +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x4473e4f5 drm_atomic_helper_bridge_destroy_state +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x44d463ef drm_helper_encoder_in_use +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x48b62a57 drm_dp_link_train_channel_eq_delay +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x4ab685f7 __drm_atomic_helper_connector_destroy_state +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x4c4e490c drm_dp_aux_init +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x4feda14c drm_atomic_helper_commit_hw_done +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x52f79e1a drm_atomic_helper_crtc_duplicate_state +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x5407ae9e drm_dp_get_dual_mode_type_name +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x54719046 drm_atomic_helper_async_check +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x5484030b drm_dp_mst_connector_early_unregister +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x5532fa1b drm_dp_mst_topology_mgr_init +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x56019170 drm_fb_helper_sys_copyarea +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x562121dc drm_kms_helper_poll_enable +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x56c3999a drm_scdc_set_high_tmds_clock_ratio +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x57c0aa5f drm_fb_helper_prepare +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x582f248e drm_dp_get_adjust_request_pre_emphasis +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x58d8fcaa drm_dsc_pps_payload_pack +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x5921b621 drm_atomic_helper_update_legacy_modeset_state +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x59dc4ec8 drm_fb_memcpy +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x5a4734d1 drm_kms_helper_is_poll_worker +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x5b986f0e drm_atomic_helper_setup_commit +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x5bd7fa2e drm_dp_cec_set_edid +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x5bfade5c drm_panel_bridge_add +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x5c4a5d3a drm_fb_helper_pan_display +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x5e1e183b drm_atomic_helper_bridge_duplicate_state +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x5e24c1f4 drm_dp_dual_mode_write +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x5e34e17c drm_atomic_helper_wait_for_flip_done +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x5e56bcda drm_atomic_helper_crtc_destroy_state +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x5fbd6873 drm_atomic_helper_check_plane_state +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x6010da5b drm_atomic_helper_plane_duplicate_state +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x62a2307d drm_dp_mst_connector_late_register +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x63fc053a drm_lspcon_get_mode +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x64805082 drm_fb_helper_blank +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x648d953b drm_dsc_dp_pps_header_init +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x64b5456a drm_atomic_helper_plane_destroy_state +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x6522fb28 __drm_atomic_helper_plane_state_reset +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x6615069e drm_dp_dsc_sink_max_slice_count +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x667a2098 drm_atomic_helper_commit_modeset_enables +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x6a4ecc67 drm_gem_fb_destroy +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x6b5c2b06 drm_atomic_helper_damage_iter_next +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x6d21c849 __drm_atomic_helper_plane_destroy_state +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x6f41399a drm_dp_mst_add_affected_dsc_crtcs +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x73011db0 drm_dp_bw_code_to_link_rate +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x73eaf7ab drm_dp_mst_deallocate_vcpi +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x74bb621d drm_atomic_helper_damage_merged +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x750540ef drm_panel_bridge_add_typed +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x750b2729 drm_fb_helper_cfb_imageblit +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x75b00ed0 drm_fb_helper_fini +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x769ec917 drm_dp_aux_register +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x76e86174 drm_fb_memcpy_dstclip +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x7779afe0 drm_crtc_helper_set_config +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x77f39d1e drm_dp_send_real_edid_checksum +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x78023a0d drm_fb_helper_lastclose +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x78524c01 drm_dp_mst_atomic_check +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x7aea0bc1 drm_dp_mst_topology_state_funcs +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x7c8d2ddc drm_fb_helper_restore_fbdev_mode_unlocked +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x7d395953 drm_simple_display_pipe_init +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x7dd954d6 drm_atomic_get_mst_topology_state +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x7eb9ccb3 drm_fb_helper_sys_read +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x7ed030f6 drm_fb_helper_setcmap +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x7f70a679 drm_fb_helper_debug_enter +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x828b7e27 drm_fb_helper_sys_imageblit +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x82958631 drm_atomic_helper_crtc_reset +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x831f6340 __drm_atomic_helper_bridge_duplicate_state +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x835761a0 drm_dp_atomic_release_vcpi_slots +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x83dc66d1 drm_atomic_helper_set_config +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x8412a741 drm_dp_dual_mode_detect +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x876ac959 drm_dp_mst_hpd_irq +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x885a22ba drm_atomic_helper_disable_plane +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x894b1f57 drm_dp_get_adjust_request_post_cursor +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x8adf785b devm_drm_panel_bridge_add +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x8b5310da drm_dp_mst_get_vcpi_slots +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x8c2856d6 drm_self_refresh_helper_init +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x8ca2d9e4 drm_dp_calc_pbn_mode +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x8d701329 drm_dp_clock_recovery_ok +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x8ecf4732 drm_atomic_helper_disable_all +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x8f089765 drm_atomic_helper_wait_for_dependencies +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x91f9f518 drm_fb_helper_check_var +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x92340566 drm_fb_xrgb8888_to_rgb565 +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x92d6455a drm_fb_xrgb8888_to_gray8 +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x92f480e1 drm_atomic_helper_commit_tail_rpm +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x93c6a875 drm_atomic_helper_bridge_reset +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x94415265 drm_dp_cec_irq +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x9462f60a drm_atomic_helper_connector_reset +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x9480aad6 drm_dp_cec_register_connector +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x95d9869a drm_dp_downstream_debug +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x9625a7b7 drm_fb_helper_sys_fillrect +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x973e74be drm_atomic_helper_check_planes +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x9751dc8b drm_dp_aux_unregister +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x98219b64 drm_atomic_helper_check_plane_damage +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x9849225b drm_kms_helper_hotplug_event +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x9958fe2c __drm_atomic_helper_private_obj_duplicate_state +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x99c0ec80 __drm_atomic_helper_connector_state_reset +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x9c18384a drm_atomic_helper_fake_vblank +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x9df73b0c drm_dp_mst_atomic_enable_dsc +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x9e169fbb drm_dp_get_phy_test_pattern +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x9e3a0638 drm_helper_hpd_irq_event +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x9eacb5db drm_crtc_init +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xa09d2c57 drm_dp_remote_aux_init +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xa153a5f7 drm_dp_dpcd_read_link_status +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xa1fefe6a drm_dp_psr_setup_time +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xa2f5c65b drm_dp_get_edid_quirks +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xa6ff9496 drm_dp_link_train_clock_recovery_delay +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xa7295627 drm_scdc_get_scrambling_status +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xa73a333b drm_dp_check_act_status +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xa8a766b5 __drm_atomic_helper_crtc_reset +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xa8f70627 drm_atomic_helper_wait_for_vblanks +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xa93fe517 drm_crtc_helper_set_mode +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xaa47fbc2 drm_atomic_helper_async_commit +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xab0e7cd4 drm_fb_helper_modinit +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xab584900 drm_dp_stop_crc +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xabbf80a7 drm_dp_get_vc_payload_bw +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xadbc6f3f drm_fb_helper_set_suspend_unlocked +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xaf9e5a7d drm_dp_dual_mode_get_tmds_output +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xb0e2f3c8 drm_fb_helper_set_suspend +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xb160c55a drm_atomic_helper_commit +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xb261f190 drm_atomic_helper_cleanup_planes +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xb7051180 drm_kms_helper_poll_init +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xb9f79514 drm_atomic_helper_damage_iter_init +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xbf4a3ac2 drm_helper_resume_force_mode +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xc1d3a722 drm_dp_mst_topology_mgr_suspend +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xc4928665 drm_lspcon_set_mode +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xc5c99a79 drm_dp_get_adjust_request_voltage +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xc7174137 drm_dp_downstream_id +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xc8bd40ea drm_fb_helper_set_par +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xc92379bb drm_dp_mst_dump_topology +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xcc888e85 drm_atomic_helper_plane_reset +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xcd628769 drm_dp_update_payload_part2 +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xd08e2e78 drm_dp_dual_mode_read +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xd11cd4ab drm_dp_send_power_updown_phy +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xd1c18d52 drm_atomic_helper_suspend +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xd2917bf6 drm_dp_update_payload_part1 +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xd2fce14c drm_dp_cec_unset_edid +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xd4f08c70 drm_scdc_write +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xd5717f98 drm_helper_disable_unused_functions +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xd5ee5e8b drm_fb_xrgb8888_to_rgb888_dstclip +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xd6219cef drm_panel_bridge_connector +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xd62c5a49 drm_plane_enable_fb_damage_clips +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xd69f2ce6 drm_scdc_read +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xda35a22e drm_fb_helper_cfb_copyarea +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xda5307cd drm_primary_helper_destroy +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xdb7df3d5 drm_atomic_helper_update_plane +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xdce8736b drm_atomic_helper_dirtyfb +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xdd786cfa __drm_atomic_helper_connector_reset +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xe02abfbb drm_dp_downstream_max_bpc +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xe2868890 drm_atomic_helper_commit_planes_on_crtc +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xe3f10b63 drm_dp_dual_mode_max_tmds_clock +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xe6edc8a5 drm_fb_helper_fill_info +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xe8a8c9a3 drm_atomic_helper_shutdown +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xe8df26af drm_dp_mst_allocate_vcpi +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xe934a5a3 drm_atomic_helper_wait_for_fences +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xea0b82ed drm_helper_probe_detect +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xeb2a4875 drm_primary_helper_funcs +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xebf91589 drm_atomic_helper_page_flip_target +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xeca174d6 drm_atomic_helper_commit_duplicated_state +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xedcf81ce drm_dp_channel_eq_ok +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xef8a5167 drm_atomic_helper_check +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xefbe284b drm_dp_atomic_find_vcpi_slots +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xeffbe75e drm_atomic_helper_connector_duplicate_state +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xf09ddfbf drm_dp_mst_put_port_malloc +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xf2329e89 drm_dp_downstream_max_clock +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xf3159427 drm_simple_display_pipe_attach_bridge +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xf667098b drm_dp_cec_unregister_connector +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xf7c988bb devm_drm_panel_bridge_add_typed +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xf98dec26 drm_dp_start_crc +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xfabc5bb4 __drm_atomic_helper_crtc_duplicate_state +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xfbfffdf6 drm_fb_helper_unregister_fbi +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xfccd3498 drm_fb_helper_init +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xfd471d1d __drm_atomic_helper_plane_reset +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xfe00c67c drm_fb_helper_sys_write +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xfe12bcb9 drm_dsc_compute_rc_parameters +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xfe493264 drm_dp_dpcd_write +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xfe50620b drm_atomic_helper_duplicate_state +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xff1c5d66 drm_fbdev_generic_setup +EXPORT_SYMBOL drivers/gpu/drm/drm_mipi_dbi 0x30c11ebf mipi_dbi_command_stackbuf +EXPORT_SYMBOL drivers/gpu/drm/drm_mipi_dbi 0x32934216 mipi_dbi_display_is_on +EXPORT_SYMBOL drivers/gpu/drm/drm_mipi_dbi 0x3e988700 mipi_dbi_spi_init +EXPORT_SYMBOL drivers/gpu/drm/drm_mipi_dbi 0x4ba690fe mipi_dbi_buf_copy +EXPORT_SYMBOL drivers/gpu/drm/drm_mipi_dbi 0x4e0addfc mipi_dbi_command_buf +EXPORT_SYMBOL drivers/gpu/drm/drm_mipi_dbi 0x54984d49 mipi_dbi_debugfs_init +EXPORT_SYMBOL drivers/gpu/drm/drm_mipi_dbi 0x5816e761 mipi_dbi_dev_init +EXPORT_SYMBOL drivers/gpu/drm/drm_mipi_dbi 0x593d2a2d mipi_dbi_spi_transfer +EXPORT_SYMBOL drivers/gpu/drm/drm_mipi_dbi 0x765d3e9e mipi_dbi_hw_reset +EXPORT_SYMBOL drivers/gpu/drm/drm_mipi_dbi 0x77be9b5c mipi_dbi_poweron_reset +EXPORT_SYMBOL drivers/gpu/drm/drm_mipi_dbi 0xa3edbeee mipi_dbi_command_read +EXPORT_SYMBOL drivers/gpu/drm/drm_mipi_dbi 0xa8bf4b9e mipi_dbi_dev_init_with_formats +EXPORT_SYMBOL drivers/gpu/drm/drm_mipi_dbi 0xc31324d1 mipi_dbi_pipe_update +EXPORT_SYMBOL drivers/gpu/drm/drm_mipi_dbi 0xcaeff23f mipi_dbi_pipe_disable +EXPORT_SYMBOL drivers/gpu/drm/drm_mipi_dbi 0xd645da59 mipi_dbi_spi_cmd_max_speed +EXPORT_SYMBOL drivers/gpu/drm/drm_mipi_dbi 0xd7b2c09e mipi_dbi_enable_flush +EXPORT_SYMBOL drivers/gpu/drm/drm_mipi_dbi 0xe35b7109 mipi_dbi_poweron_conditional_reset +EXPORT_SYMBOL drivers/gpu/drm/drm_panel_orientation_quirks 0x2e439142 drm_get_panel_orientation_quirk +EXPORT_SYMBOL drivers/gpu/drm/drm_ttm_helper 0x3e477ad7 drm_gem_ttm_print_info +EXPORT_SYMBOL drivers/gpu/drm/drm_ttm_helper 0x7cf3222f drm_gem_ttm_mmap +EXPORT_SYMBOL drivers/gpu/drm/drm_vram_helper 0x01c4239e drm_gem_vram_driver_dumb_create +EXPORT_SYMBOL drivers/gpu/drm/drm_vram_helper 0x03eb38a8 drm_gem_vram_vunmap +EXPORT_SYMBOL drivers/gpu/drm/drm_vram_helper 0x083a1ebc drm_gem_vram_simple_display_pipe_cleanup_fb +EXPORT_SYMBOL drivers/gpu/drm/drm_vram_helper 0x0887a62d drm_gem_vram_create +EXPORT_SYMBOL drivers/gpu/drm/drm_vram_helper 0x1d47a9f8 drm_gem_vram_plane_helper_cleanup_fb +EXPORT_SYMBOL drivers/gpu/drm/drm_vram_helper 0x2cf81d8b drm_gem_vram_simple_display_pipe_prepare_fb +EXPORT_SYMBOL drivers/gpu/drm/drm_vram_helper 0x46e1f074 drm_gem_vram_pin +EXPORT_SYMBOL drivers/gpu/drm/drm_vram_helper 0x5d5e5ec7 drm_gem_vram_vmap +EXPORT_SYMBOL drivers/gpu/drm/drm_vram_helper 0x65290ea7 drm_gem_vram_fill_create_dumb +EXPORT_SYMBOL drivers/gpu/drm/drm_vram_helper 0x6d2559a5 drm_gem_vram_driver_dumb_mmap_offset +EXPORT_SYMBOL drivers/gpu/drm/drm_vram_helper 0x75a7c6c6 drm_vram_helper_mode_valid +EXPORT_SYMBOL drivers/gpu/drm/drm_vram_helper 0x85b605d6 drm_vram_helper_alloc_mm +EXPORT_SYMBOL drivers/gpu/drm/drm_vram_helper 0x91c97da1 drm_gem_vram_put +EXPORT_SYMBOL drivers/gpu/drm/drm_vram_helper 0xb0f9dbba drm_vram_helper_release_mm +EXPORT_SYMBOL drivers/gpu/drm/drm_vram_helper 0xbbf9d5e0 drm_gem_vram_kmap +EXPORT_SYMBOL drivers/gpu/drm/drm_vram_helper 0xc310b736 drm_gem_vram_mmap_offset +EXPORT_SYMBOL drivers/gpu/drm/drm_vram_helper 0xd6a73a69 drm_gem_vram_kunmap +EXPORT_SYMBOL drivers/gpu/drm/drm_vram_helper 0xd929fcf6 drm_gem_vram_offset +EXPORT_SYMBOL drivers/gpu/drm/drm_vram_helper 0xe97e1db7 drm_gem_vram_plane_helper_prepare_fb +EXPORT_SYMBOL drivers/gpu/drm/drm_vram_helper 0xf02e9d70 drm_vram_mm_debugfs_init +EXPORT_SYMBOL drivers/gpu/drm/drm_vram_helper 0xf60116b3 drm_gem_vram_unpin +EXPORT_SYMBOL drivers/gpu/drm/scheduler/gpu-sched 0x0a917e3f drm_sched_fault +EXPORT_SYMBOL drivers/gpu/drm/scheduler/gpu-sched 0x0c6a3338 drm_sched_entity_set_priority +EXPORT_SYMBOL drivers/gpu/drm/scheduler/gpu-sched 0x0f89f10c drm_sched_job_cleanup +EXPORT_SYMBOL drivers/gpu/drm/scheduler/gpu-sched 0x24358954 drm_sched_increase_karma +EXPORT_SYMBOL drivers/gpu/drm/scheduler/gpu-sched 0x2f99f308 drm_sched_pick_best +EXPORT_SYMBOL drivers/gpu/drm/scheduler/gpu-sched 0x348e4510 to_drm_sched_fence +EXPORT_SYMBOL drivers/gpu/drm/scheduler/gpu-sched 0x39c34b2f drm_sched_entity_init +EXPORT_SYMBOL drivers/gpu/drm/scheduler/gpu-sched 0x519a8b2c drm_sched_entity_fini +EXPORT_SYMBOL drivers/gpu/drm/scheduler/gpu-sched 0x58354122 drm_sched_entity_push_job +EXPORT_SYMBOL drivers/gpu/drm/scheduler/gpu-sched 0x5e64b5ce drm_sched_start +EXPORT_SYMBOL drivers/gpu/drm/scheduler/gpu-sched 0x72a04f45 drm_sched_resubmit_jobs +EXPORT_SYMBOL drivers/gpu/drm/scheduler/gpu-sched 0x9573a7c6 drm_sched_suspend_timeout +EXPORT_SYMBOL drivers/gpu/drm/scheduler/gpu-sched 0x9b6031a0 drm_sched_entity_flush +EXPORT_SYMBOL drivers/gpu/drm/scheduler/gpu-sched 0x9ba4d13f drm_sched_init +EXPORT_SYMBOL drivers/gpu/drm/scheduler/gpu-sched 0xaede6b86 drm_sched_dependency_optimized +EXPORT_SYMBOL drivers/gpu/drm/scheduler/gpu-sched 0xbf765b6f drm_sched_entity_destroy +EXPORT_SYMBOL drivers/gpu/drm/scheduler/gpu-sched 0xcb1dd16a drm_sched_stop +EXPORT_SYMBOL drivers/gpu/drm/scheduler/gpu-sched 0xd6e7e333 drm_sched_resume_timeout +EXPORT_SYMBOL drivers/gpu/drm/scheduler/gpu-sched 0xe0b2ca5d drm_sched_entity_modify_sched +EXPORT_SYMBOL drivers/gpu/drm/scheduler/gpu-sched 0xec08f76f drm_sched_job_init +EXPORT_SYMBOL drivers/gpu/drm/scheduler/gpu-sched 0xf6c45fd1 drm_sched_fini +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x015af6c1 ttm_bo_kmap +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x080ab47a ttm_bo_unlock_delayed_workqueue +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x0d910b11 ttm_bo_move_to_lru_tail +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x1162c224 ttm_bo_bulk_move_lru_tail +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x171bcf2b ttm_mem_glob +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x18a40d99 ttm_bo_kunmap +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x1c1b0585 ttm_io_prot +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x1ed4c390 ttm_pool_populate +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x1fa486e0 ttm_bo_move_ttm +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x22c700f1 ttm_bo_swapout_all +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x2413c803 ttm_bo_vm_close +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x26cb83b1 ttm_bo_clean_mm +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x2913b1fb ttm_bo_wait +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x2b1bb780 ttm_eu_reserve_buffers +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x2c26ec36 ttm_bo_vm_fault_reserved +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x36672cfc ttm_bo_lock_delayed_workqueue +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x41f9be95 ttm_bo_manager_func +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x43c6112d ttm_tt_fini +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x4debc6e5 ttm_dma_tt_init +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x4e0a71db ttm_pool_unpopulate +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x5169054a ttm_eu_backoff_reservation +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x55baee66 ttm_bo_evict_mm +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x5783d00b ttm_mem_global_free +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x5cd926d4 ttm_bo_move_memcpy +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x6052860c ttm_round_pot +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x6402aed3 ttm_bo_glob +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x6404dc1a ttm_eu_fence_buffer_objects +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x648f0621 ttm_agp_tt_unpopulate +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x6a89746f ttm_bo_mem_compat +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x6ec6df71 ttm_sg_tt_init +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x80def979 ttm_bo_vm_access +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x8e7a2a88 ttm_bo_validate +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x93587ecb ttm_populate_and_map_pages +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x9b067a2a ttm_mem_global_alloc +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x9b1dddf6 ttm_bo_vm_open +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x9d6a6f38 ttm_bo_swapout +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x9dc08697 ttm_bo_create +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x9de551c5 ttm_bo_init_reserved +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x9e69372a ttm_bo_eviction_valuable +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xa187fba1 ttm_bo_put +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xa4f7ffb9 ttm_bo_move_accel_cleanup +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xa542efae ttm_bo_dma_acc_size +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xad52f414 ttm_bo_mem_space +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xadc951a2 ttm_bo_unmap_virtual +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xaedd84ef ttm_bo_init +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xb514b50a ttm_bo_vm_reserve +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xb82b2d12 ttm_bo_mem_put +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xc6b3e501 ttm_bo_device_init +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xcc9cb617 ttm_tt_bind +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xcdd39c1e ttm_dma_tt_fini +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xd1e31304 ttm_bo_mmap_obj +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xd37c1d73 ttm_check_under_lowerlimit +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xd3cb60cb ttm_agp_tt_create +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xd7b59654 ttm_bo_pipeline_move +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xe57e07cf ttm_get_kernel_zone_memory_size +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xe71b6fcf ttm_page_alloc_debugfs +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xe75e4dfb ttm_tt_set_placement_caching +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xe882f058 ttm_agp_tt_populate +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xe89e7329 ttm_bo_init_mm +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xe8aa6209 ttm_unmap_and_unpopulate_pages +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xec315d9c ttm_bo_device_release +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xee5f9b1b ttm_bo_mmap +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xf13fbded ttm_tt_init +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xf3812a0c ttm_bo_acc_size +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xf435701c ttm_bo_vm_fault +EXPORT_SYMBOL drivers/hid/hid 0x29e4098c hid_bus_type +EXPORT_SYMBOL drivers/hid/intel-ish-hid/intel-ishtp 0x01a1ff10 ishtp_fw_cl_by_uuid +EXPORT_SYMBOL drivers/hid/intel-ish-hid/intel-ishtp 0x0c7a6749 ishtp_cl_flush_queues +EXPORT_SYMBOL drivers/hid/intel-ish-hid/intel-ishtp 0x0f929583 ishtp_get_client_data +EXPORT_SYMBOL drivers/hid/intel-ish-hid/intel-ishtp 0x12d1e83f ishtp_cl_disconnect +EXPORT_SYMBOL drivers/hid/intel-ish-hid/intel-ishtp 0x219dde81 ishtp_reset_compl_handler +EXPORT_SYMBOL drivers/hid/intel-ish-hid/intel-ishtp 0x256c1ed0 ishtp_cl_driver_register +EXPORT_SYMBOL drivers/hid/intel-ish-hid/intel-ishtp 0x2beddcbc ishtp_cl_send +EXPORT_SYMBOL drivers/hid/intel-ish-hid/intel-ishtp 0x332850ed ishtp_recv +EXPORT_SYMBOL drivers/hid/intel-ish-hid/intel-ishtp 0x361a55d5 ish_hw_reset +EXPORT_SYMBOL drivers/hid/intel-ish-hid/intel-ishtp 0x37cd2b41 ishtp_start +EXPORT_SYMBOL drivers/hid/intel-ish-hid/intel-ishtp 0x38d98f3a ishtp_dev_to_cl_device +EXPORT_SYMBOL drivers/hid/intel-ish-hid/intel-ishtp 0x3c2d9b15 ishtp_device_init +EXPORT_SYMBOL drivers/hid/intel-ish-hid/intel-ishtp 0x3e256e60 ishtp_send_suspend +EXPORT_SYMBOL drivers/hid/intel-ish-hid/intel-ishtp 0x3eecb094 ishtp_trace_callback +EXPORT_SYMBOL drivers/hid/intel-ish-hid/intel-ishtp 0x4017ff0e ishtp_get_ishtp_device +EXPORT_SYMBOL drivers/hid/intel-ish-hid/intel-ishtp 0x459ae264 ishtp_cl_set_fw_client_id +EXPORT_SYMBOL drivers/hid/intel-ish-hid/intel-ishtp 0x495cdfe9 ishtp_set_drvdata +EXPORT_SYMBOL drivers/hid/intel-ish-hid/intel-ishtp 0x49aae566 ishtp_set_tx_ring_size +EXPORT_SYMBOL drivers/hid/intel-ish-hid/intel-ishtp 0x4f534b59 ishtp_device +EXPORT_SYMBOL drivers/hid/intel-ish-hid/intel-ishtp 0x5c69a2b8 ishtp_get_device +EXPORT_SYMBOL drivers/hid/intel-ish-hid/intel-ishtp 0x5e72a154 ishtp_cl_free +EXPORT_SYMBOL drivers/hid/intel-ish-hid/intel-ishtp 0x5f9b0501 ishtp_get_fw_client_id +EXPORT_SYMBOL drivers/hid/intel-ish-hid/intel-ishtp 0x70591ffb ishtp_fw_cl_get_client +EXPORT_SYMBOL drivers/hid/intel-ish-hid/intel-ishtp 0x79cfaa4d ishtp_reset_handler +EXPORT_SYMBOL drivers/hid/intel-ish-hid/intel-ishtp 0x8e7c3473 ishtp_cl_get_tx_free_buffer_size +EXPORT_SYMBOL drivers/hid/intel-ish-hid/intel-ishtp 0x9989083c ishtp_cl_allocate +EXPORT_SYMBOL drivers/hid/intel-ish-hid/intel-ishtp 0x9aef3104 ishtp_register_event_cb +EXPORT_SYMBOL drivers/hid/intel-ish-hid/intel-ishtp 0x9c20117f ishtp_cl_io_rb_recycle +EXPORT_SYMBOL drivers/hid/intel-ish-hid/intel-ishtp 0xa23027ee ishtp_put_device +EXPORT_SYMBOL drivers/hid/intel-ish-hid/intel-ishtp 0xa3c12ae3 ishtp_set_rx_ring_size +EXPORT_SYMBOL drivers/hid/intel-ish-hid/intel-ishtp 0xaa15d687 ishtp_set_connection_state +EXPORT_SYMBOL drivers/hid/intel-ish-hid/intel-ishtp 0xac0d525f ishtp_cl_unlink +EXPORT_SYMBOL drivers/hid/intel-ish-hid/intel-ishtp 0xb003a529 ishtp_set_client_data +EXPORT_SYMBOL drivers/hid/intel-ish-hid/intel-ishtp 0xb0f0e5c7 ishtp_cl_get_tx_free_rings +EXPORT_SYMBOL drivers/hid/intel-ish-hid/intel-ishtp 0xb61d4968 ishtp_cl_connect +EXPORT_SYMBOL drivers/hid/intel-ish-hid/intel-ishtp 0xbbaaa1d5 ishtp_get_pci_device +EXPORT_SYMBOL drivers/hid/intel-ish-hid/intel-ishtp 0xca8098fd ishtp_send_resume +EXPORT_SYMBOL drivers/hid/intel-ish-hid/intel-ishtp 0xcd56f02a ishtp_get_drvdata +EXPORT_SYMBOL drivers/hid/intel-ish-hid/intel-ishtp 0xdeefc05e ishtp_cl_driver_unregister +EXPORT_SYMBOL drivers/hid/intel-ish-hid/intel-ishtp 0xe7e4dbf6 ishtp_cl_link +EXPORT_SYMBOL drivers/hid/intel-ish-hid/intel-ishtp 0xe95a326f ishtp_bus_remove_all_clients +EXPORT_SYMBOL drivers/hid/intel-ish-hid/intel-ishtp 0xeadb7934 ishtp_cl_tx_empty +EXPORT_SYMBOL drivers/hid/intel-ish-hid/intel-ishtp 0xecf23874 ishtp_cl_rx_get_rb +EXPORT_SYMBOL drivers/hwmon/hwmon-vid 0x2f9e7f8e vid_which_vrm +EXPORT_SYMBOL drivers/hwmon/hwmon-vid 0x446615bd vid_from_reg +EXPORT_SYMBOL drivers/hwmon/sch56xx-common 0x01568393 sch56xx_read_virtual_reg +EXPORT_SYMBOL drivers/hwmon/sch56xx-common 0x34257f35 sch56xx_watchdog_unregister +EXPORT_SYMBOL drivers/hwmon/sch56xx-common 0x54cb5f04 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 0x15e28824 i2c_bit_add_numbered_bus +EXPORT_SYMBOL drivers/i2c/algos/i2c-algo-bit 0x9073f4f4 i2c_bit_algo +EXPORT_SYMBOL drivers/i2c/algos/i2c-algo-bit 0xf4aaf3db i2c_bit_add_bus +EXPORT_SYMBOL drivers/i2c/algos/i2c-algo-pca 0x86994268 i2c_pca_add_numbered_bus +EXPORT_SYMBOL drivers/i2c/algos/i2c-algo-pca 0x94bfaa50 i2c_pca_add_bus +EXPORT_SYMBOL drivers/i2c/busses/i2c-amd756 0x95e9c393 amd756_smbus +EXPORT_SYMBOL drivers/i2c/i2c-core 0x04af68a3 i2c_verify_client +EXPORT_SYMBOL drivers/i2c/i2c-core 0x1a9e7dc6 i2c_clients_command +EXPORT_SYMBOL drivers/i2c/i2c-core 0x1c4e5653 i2c_smbus_read_i2c_block_data +EXPORT_SYMBOL drivers/i2c/i2c-core 0x241c342d i2c_smbus_write_byte +EXPORT_SYMBOL drivers/i2c/i2c-core 0x3455754c i2c_smbus_read_byte_data +EXPORT_SYMBOL drivers/i2c/i2c-core 0x34c24554 i2c_verify_adapter +EXPORT_SYMBOL drivers/i2c/i2c-core 0x3c105aa3 i2c_add_adapter +EXPORT_SYMBOL drivers/i2c/i2c-core 0x48e0714c i2c_smbus_read_byte +EXPORT_SYMBOL drivers/i2c/i2c-core 0x4e1cdaf0 i2c_transfer_buffer_flags +EXPORT_SYMBOL drivers/i2c/i2c-core 0x5a6fb59d __i2c_smbus_xfer +EXPORT_SYMBOL drivers/i2c/i2c-core 0x5c9afa14 __i2c_transfer +EXPORT_SYMBOL drivers/i2c/i2c-core 0x6d6e0848 i2c_smbus_write_block_data +EXPORT_SYMBOL drivers/i2c/i2c-core 0x74d0711a i2c_transfer +EXPORT_SYMBOL drivers/i2c/i2c-core 0x82ed07a7 i2c_smbus_xfer +EXPORT_SYMBOL drivers/i2c/i2c-core 0x894e8304 i2c_smbus_read_i2c_block_data_or_emulated +EXPORT_SYMBOL drivers/i2c/i2c-core 0x8da7887f i2c_smbus_write_i2c_block_data +EXPORT_SYMBOL drivers/i2c/i2c-core 0x8db74e8a i2c_del_driver +EXPORT_SYMBOL drivers/i2c/i2c-core 0xa3b46689 i2c_smbus_write_byte_data +EXPORT_SYMBOL drivers/i2c/i2c-core 0xa7a640b4 i2c_del_adapter +EXPORT_SYMBOL drivers/i2c/i2c-core 0xaa6e8f1c i2c_register_driver +EXPORT_SYMBOL drivers/i2c/i2c-core 0xb662a629 i2c_smbus_read_word_data +EXPORT_SYMBOL drivers/i2c/i2c-core 0xc2fb3ec5 i2c_smbus_write_word_data +EXPORT_SYMBOL drivers/i2c/i2c-core 0xcec7507b i2c_put_adapter +EXPORT_SYMBOL drivers/i2c/i2c-core 0xe1128f00 i2c_get_adapter +EXPORT_SYMBOL drivers/i2c/i2c-core 0xee25c952 i2c_smbus_read_block_data +EXPORT_SYMBOL drivers/infiniband/core/ib_cm 0x087411e4 ib_cm_insert_listen +EXPORT_SYMBOL drivers/infiniband/core/ib_cm 0x0e443100 ib_cm_listen +EXPORT_SYMBOL drivers/infiniband/core/ib_cm 0x264bf072 ib_send_cm_mra +EXPORT_SYMBOL drivers/infiniband/core/ib_cm 0x39361927 ib_send_cm_sidr_rep +EXPORT_SYMBOL drivers/infiniband/core/ib_cm 0x3c33df94 ib_send_cm_drep +EXPORT_SYMBOL drivers/infiniband/core/ib_cm 0x4285441a ib_send_cm_req +EXPORT_SYMBOL drivers/infiniband/core/ib_cm 0x4d1769d7 ib_create_cm_id +EXPORT_SYMBOL drivers/infiniband/core/ib_cm 0x5412d066 ib_cm_notify +EXPORT_SYMBOL drivers/infiniband/core/ib_cm 0x56518e27 ib_send_cm_dreq +EXPORT_SYMBOL drivers/infiniband/core/ib_cm 0x69824a14 ibcm_reject_msg +EXPORT_SYMBOL drivers/infiniband/core/ib_cm 0x88f7bb28 ib_send_cm_rej +EXPORT_SYMBOL drivers/infiniband/core/ib_cm 0xac977685 ib_destroy_cm_id +EXPORT_SYMBOL drivers/infiniband/core/ib_cm 0xad231073 ib_cm_init_qp_attr +EXPORT_SYMBOL drivers/infiniband/core/ib_cm 0xbc1b9127 ib_send_cm_rep +EXPORT_SYMBOL drivers/infiniband/core/ib_cm 0xd2bb7143 ib_send_cm_sidr_req +EXPORT_SYMBOL drivers/infiniband/core/ib_cm 0xdaba4d9a ib_send_cm_rtu +EXPORT_SYMBOL drivers/infiniband/core/ib_cm 0xf8201093 cm_class +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x004831e9 ib_sa_sendonly_fullmem_support +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x01685124 ib_dispatch_event +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x01c11aec ib_get_vf_stats +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x024ac62e rdma_nl_put_driver_string +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x044a118c ib_device_get_by_name +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x04c90920 rdma_put_gid_attr +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x04cce106 ib_modify_device +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x051a47a8 ib_get_eth_speed +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x06a14a76 ib_mr_pool_put +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x0b0b5a32 __ib_alloc_cq +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x0c04c40c rdma_user_mmap_entry_remove +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x0c86f5cb ib_sa_register_client +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x131639db rdma_modify_ah +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x134482e0 ib_create_qp_security +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x14d03dff ib_register_mad_agent +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x17969742 rdma_restrack_uadd +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x184621a4 ib_get_rdma_header_version +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x1957f0cb rdma_restrack_kadd +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x1b037462 __rdma_block_iter_start +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x1c4dd26f ib_rdmacg_uncharge +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x1d52a451 ib_create_send_mad +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x20880b43 ib_get_net_dev_by_params +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x22f3cf93 ib_pack +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x24d9904b __ib_alloc_cq_any +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x25bfaaa2 ibdev_alert +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x267b2ff1 ib_init_ah_attr_from_path +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x273ae423 rdma_create_ah +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x282673da ib_attach_mcast +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x29845002 rdma_restrack_put +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x2a91bb33 ib_cache_gid_type_str +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x2ad37735 ibnl_put_attr +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x2c6f1757 rdma_translate_ip +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x2d0564d5 ib_cancel_mad +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x2ddefe70 ib_unregister_device_queued +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x2ee318b8 ib_create_wq +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x2eec5bd7 ibdev_notice +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x2fbac585 ib_sa_service_rec_query +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x305e5701 rdma_addr_size_kss +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x30660ec0 ib_get_device_fw_str +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x30e76935 rdma_restrack_get +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x315a3068 rdma_restrack_del +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x32cf6436 ib_mr_pool_get +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x340e5730 ib_process_cq_direct +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x36e4167c ib_free_recv_mad +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x37c55265 ibdev_printk +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x3a0fea49 ib_init_ah_attr_from_wc +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x3b3186bf ib_advise_mr +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x3b3c4953 rdma_move_grh_sgid_attr +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x3bc2c7d3 rdma_restrack_count +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x3c060107 ib_destroy_rwq_ind_table +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x3c5a69ca ib_get_vf_config +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x3d0b3455 ibdev_emerg +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x3d66f647 rdma_user_mmap_io +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x3ed4bfd2 rdma_nl_multicast +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x3f993d58 rdma_addr_cancel +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x3fc2387c ib_ud_header_unpack +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x42ab4517 rdma_user_mmap_entry_get_pgoff +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 0x4498b4ef ib_get_cached_subnet_prefix +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x45fb8985 rdma_nl_chk_listeners +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x49e86a0e ib_get_gids_from_rdma_hdr +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x4a13f2f9 ib_drain_qp +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x4ad2e3a9 ib_unregister_event_handler +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x4b759d18 ib_detach_mcast +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x4bebe382 rdma_find_gid +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x4c6a92d7 ib_find_pkey +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x4e155af0 ib_response_mad +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x4e69a2bf ib_dereg_mr_user +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x4e90435c ib_sa_free_multicast +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x4eeae137 rdma_rw_ctx_post +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x510e90cc __ib_alloc_pd +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x57cc0c0b rdma_alloc_netdev +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x5a69682e ib_port_register_module_stat +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x5f760f12 ib_modify_wq +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x613b1e2e ib_is_mad_class_rmpp +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x61c7a9a5 rdma_destroy_ah_attr +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x61d24c52 ib_rate_to_mbps +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x62748b9f rdma_nl_put_driver_u32_hex +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x628df943 ib_destroy_srq_user +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x645b4627 rdma_destroy_ah_user +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x6651eeb1 ib_query_srq +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x66673996 rdma_dev_access_netns +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x6684e11d rdma_nl_unicast_wait +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x699fa973 ib_resize_cq +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x6b958320 ib_ud_ip4_csum +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x6bf6a10f rdma_link_unregister +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x6ea2ec46 ib_create_srq_user +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x6f3614b6 rdma_is_zero_gid +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x701ab7b2 rdma_umap_priv_init +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x7050e7c6 ib_create_ah_from_wc +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x72d55d3b rdma_nl_put_driver_u64 +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x75472fd3 ib_query_pkey +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x75a729a0 rdma_nl_unregister +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x787ccc4c ib_get_mad_data_offset +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x78c9dcd3 rdma_nl_register +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x7a95f27a ib_get_cached_port_state +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x7b56b034 ib_unregister_driver +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x7b899435 ib_create_rwq_ind_table +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x7ca00fe8 ib_destroy_cq_user +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x7f7ed8bd roce_gid_type_mask_support +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x8045ceed rdma_read_gid_l2_fields +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x809cc1d6 _ib_alloc_device +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x80bd880e ib_device_put +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x8396c24c ib_sa_guid_info_rec_query +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x83f7e805 ibnl_put_msg +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x86cef180 rdma_addr_size +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x872eb285 ibdev_err +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x87cfed5b rdma_find_gid_by_port +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x87e5e443 ib_unregister_mad_agent +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x87ffbbda rdma_rw_ctx_init +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x8918de99 ib_map_mr_sg_pi +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x89755091 rdma_rw_ctx_destroy_signature +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x89aef4f1 __ib_create_cq +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x8a06d741 ib_get_vf_guid +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x8c90b902 rdma_restrack_set_task +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x8e03dff7 ib_sa_get_mcmember_rec +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x8e7528da __rdma_block_iter_next +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x8f0a5022 ib_dealloc_pd_user +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x90137903 ib_get_cached_lmc +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x90e807c7 ib_cache_gid_parse_type_str +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x94205da7 rdma_rw_ctx_destroy +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x950ea933 rdma_rw_mr_factor +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x95e54f6b ib_dealloc_xrcd +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x97878de5 ib_rdmacg_try_charge +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x97c563f3 ib_free_cq +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x98e714b0 ibdev_crit +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x99e1220a ib_find_cached_pkey +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x9c522cbe ib_init_ah_from_mcmember +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x9caccd03 ib_cq_pool_get +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x9db8c4d7 ib_device_set_netdev +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x9dfee521 ib_modify_qp +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x9e3da99f rdma_user_mmap_entry_insert_range +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x9e4ef894 ib_mr_pool_destroy +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xa1f1f715 ib_find_gid +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xa432baf6 ib_unpack +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xa5a9b236 ib_query_qp +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xa68da299 rdma_resolve_ip +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xa6f29905 ib_get_rmpp_segment +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xa73935cd ib_dealloc_device +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xa7715794 ib_create_qp +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xa9a86329 ib_register_device +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xab12af32 ib_set_vf_link_state +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xadcff364 rdma_query_ah +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xae956dce ib_rate_to_mult +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xafce3982 ib_port_unregister_module_stat +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xb02b96c5 ib_reg_user_mr +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xb1ae7e2b rdma_roce_rescan_device +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xb239cc13 rdma_user_mmap_entry_insert +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xb32feaad rdma_hold_gid_attr +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xb36e4148 ib_sa_pack_path +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xb3839649 ib_sa_path_rec_get +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xb3cb8fc6 rdma_rw_ctx_signature_init +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xb58ccb61 rdma_read_gid_hw_context +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xb703293f ib_get_cached_pkey +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xb73261a5 ib_register_client +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xb7852a05 ib_ud_header_init +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xb93172de rdma_user_mmap_entry_put +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xba157068 ib_modify_srq +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xbdfe9816 ib_destroy_wq +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xbed66696 ib_free_send_mad +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xbf642681 ib_register_event_handler +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xc0f14e81 rdma_link_register +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xc124ea09 rdma_nl_stat_hwcounter_entry +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xc1b0e05a rdma_create_user_ah +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xc1fb69f6 rdma_nl_unicast +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xc2ab42e9 ib_unregister_device +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xc6387b6d ib_alloc_mr_integrity +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xc7ca237e ib_unregister_device_and_put +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xc7ef037f ib_drain_rq +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xcbb44f31 ib_map_mr_sg +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xcbc66f8b rdma_nl_put_driver_u32 +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xcc751e32 rdma_rw_ctx_wrs +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xccaed9a6 rdma_user_mmap_entry_get +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xcd7de687 ib_drain_sq +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xd0b922c7 ib_sg_to_pages +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xd39cd874 ib_modify_mad +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xd46e6090 ib_sa_join_multicast +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xd5bf23ac ib_set_device_ops +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xd635ab30 ib_query_port +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xd645c164 ib_close_qp +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xd6636ca6 rdma_addr_size_in6 +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xd6e65d77 ib_modify_qp_is_ok +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xd6fb57b4 ib_find_exact_cached_pkey +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xd804dfc8 rdma_set_cq_moderation +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xd8a80764 ib_alloc_mr_user +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xd93becf5 rdma_replace_ah_attr +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xd946f4b9 rdma_move_ah_attr +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xd9fcdc3a rdma_restrack_get_byid +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xda0d50ec ib_sa_cancel_query +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xda1af522 ib_post_send_mad +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xda352082 ib_unregister_client +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xde8436da ibdev_info +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xe180722c rdma_copy_src_l2_addr +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xe28b953a ib_modify_qp_with_udata +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xe34d1fb7 ib_check_mr_status +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xe3f1de6f rdma_query_gid +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xe550a81c ib_open_qp +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xe5840ec6 ib_wc_status_msg +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xe5a78c1e ib_sa_unpack_path +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xe7b52e5f mult_to_ib_rate +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xe8d92c7a ibdev_warn +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xe99868a7 rdma_init_netdev +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xe9e799fc ib_ud_header_pack +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xeac82225 rdma_nl_put_driver_u64_hex +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xebc029b6 ib_set_client_data +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xed6f621c ib_destroy_qp_user +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xee180efd __ib_alloc_xrcd +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xefb49b7c ib_cq_pool_put +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xf0a92485 ib_modify_port +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xf0f3ee64 ib_mad_kernel_rmpp_agent +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xf3bddd1f rdma_port_get_link_layer +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xf3d4ddc1 ib_device_get_by_netdev +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xf468b914 rdma_copy_ah_attr +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xf5dedb30 rdma_node_get_transport +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xf5e3c5e6 rdma_read_gid_attr_ndev_rcu +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xf6ed3334 ib_event_msg +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xfac78de6 ib_mr_pool_init +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xfe6aa966 rdma_get_gid_attr +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xff5967a8 ib_set_vf_guid +EXPORT_SYMBOL drivers/infiniband/core/ib_uverbs 0x05b94e36 flow_resources_alloc +EXPORT_SYMBOL drivers/infiniband/core/ib_uverbs 0x12cf9020 ib_umem_odp_get +EXPORT_SYMBOL drivers/infiniband/core/ib_uverbs 0x1432dd92 ib_umem_find_best_pgsz +EXPORT_SYMBOL drivers/infiniband/core/ib_uverbs 0x157957a6 _uverbs_alloc +EXPORT_SYMBOL drivers/infiniband/core/ib_uverbs 0x18b7e7e5 ib_umem_odp_unmap_dma_pages +EXPORT_SYMBOL drivers/infiniband/core/ib_uverbs 0x19009bde uverbs_finalize_uobj_create +EXPORT_SYMBOL drivers/infiniband/core/ib_uverbs 0x1b54bd5d ib_copy_path_rec_from_user +EXPORT_SYMBOL drivers/infiniband/core/ib_uverbs 0x2aa9ae10 ib_umem_odp_release +EXPORT_SYMBOL drivers/infiniband/core/ib_uverbs 0x2b0f82c6 ib_umem_get +EXPORT_SYMBOL drivers/infiniband/core/ib_uverbs 0x33244bde ib_uverbs_flow_resources_free +EXPORT_SYMBOL drivers/infiniband/core/ib_uverbs 0x346b5a44 uverbs_destroy_def_handler +EXPORT_SYMBOL drivers/infiniband/core/ib_uverbs 0x35e496aa uverbs_uobject_fd_release +EXPORT_SYMBOL drivers/infiniband/core/ib_uverbs 0x501fb5f9 ib_umem_odp_alloc_child +EXPORT_SYMBOL drivers/infiniband/core/ib_uverbs 0x570d7c18 ib_umem_odp_alloc_implicit +EXPORT_SYMBOL drivers/infiniband/core/ib_uverbs 0x57a87b72 uverbs_get_flags64 +EXPORT_SYMBOL drivers/infiniband/core/ib_uverbs 0x5bb93edb uverbs_get_flags32 +EXPORT_SYMBOL drivers/infiniband/core/ib_uverbs 0x63057f4b ib_copy_path_rec_to_user +EXPORT_SYMBOL drivers/infiniband/core/ib_uverbs 0x63721c36 uverbs_copy_to +EXPORT_SYMBOL drivers/infiniband/core/ib_uverbs 0x79e9d325 ib_umem_page_count +EXPORT_SYMBOL drivers/infiniband/core/ib_uverbs 0x950db236 uverbs_uobject_put +EXPORT_SYMBOL drivers/infiniband/core/ib_uverbs 0x96028fb4 uverbs_fd_class +EXPORT_SYMBOL drivers/infiniband/core/ib_uverbs 0x9ddebed8 ib_umem_copy_from +EXPORT_SYMBOL drivers/infiniband/core/ib_uverbs 0xa86b069b ib_umem_odp_map_dma_pages +EXPORT_SYMBOL drivers/infiniband/core/ib_uverbs 0xa96885a7 ib_umem_release +EXPORT_SYMBOL drivers/infiniband/core/ib_uverbs 0xb40b0d96 _uverbs_get_const +EXPORT_SYMBOL drivers/infiniband/core/ib_uverbs 0xbb0dbe94 uverbs_idr_class +EXPORT_SYMBOL drivers/infiniband/core/ib_uverbs 0xcd695e49 ib_uverbs_get_ucontext_file +EXPORT_SYMBOL drivers/infiniband/core/ib_uverbs 0xd7cd1aba ib_copy_ah_attr_to_user +EXPORT_SYMBOL drivers/infiniband/core/ib_uverbs 0xe141c6e6 ib_copy_qp_attr_to_user +EXPORT_SYMBOL drivers/infiniband/core/ib_uverbs 0xe6f41312 flow_resources_add +EXPORT_SYMBOL drivers/infiniband/core/iw_cm 0x045596b3 iw_cm_disconnect +EXPORT_SYMBOL drivers/infiniband/core/iw_cm 0x1ab33890 iw_cm_connect +EXPORT_SYMBOL drivers/infiniband/core/iw_cm 0x1d0c8a34 iw_cm_reject +EXPORT_SYMBOL drivers/infiniband/core/iw_cm 0x2df9dfb5 iw_cm_accept +EXPORT_SYMBOL drivers/infiniband/core/iw_cm 0x67273f83 iw_create_cm_id +EXPORT_SYMBOL drivers/infiniband/core/iw_cm 0xc2da1e11 iw_destroy_cm_id +EXPORT_SYMBOL drivers/infiniband/core/iw_cm 0xd855bcbf iw_cm_init_qp_attr +EXPORT_SYMBOL drivers/infiniband/core/iw_cm 0xf3df871f iwcm_reject_msg +EXPORT_SYMBOL drivers/infiniband/core/iw_cm 0xfa789259 iw_cm_listen +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0x01094d38 rdma_set_reuseaddr +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0x0c0efb12 rdma_set_afonly +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0x158243ef rdma_iw_cm_id +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0x3a62b118 rdma_join_multicast +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0x3d1895b5 rdma_res_to_id +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0x49633a95 __rdma_accept +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0x4f64dcba rdma_resolve_route +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0x5e3df22f rdma_set_ack_timeout +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0x64891297 rdma_connect_ece +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0x67d5e200 rdma_leave_multicast +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0x705b8da1 rdma_reject +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0x70f30634 rdma_create_qp +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0x733e8d73 rdma_get_service_id +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0x834674b4 rdma_set_service_type +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0x86c8fb6a rdma_listen +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0x8f92b19f rdma_init_qp_attr +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0x907df803 rdma_event_msg +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0xa2172909 __rdma_accept_ece +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0xa7236513 __rdma_create_id +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0xaa612a48 rdma_set_ib_path +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0xab1e74cd rdma_connect +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0xadaf43fe rdma_destroy_qp +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0xc707641c rdma_notify +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0xc83ccf1e rdma_reject_msg +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0xc8d635c8 rdma_bind_addr +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0xdbd920ca rdma_disconnect +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0xdd22fda7 rdma_destroy_id +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0xe92c4f9f rdma_consumer_reject_data +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0xee3d7514 rdma_resolve_addr +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0xff28b8ab rdma_read_gids +EXPORT_SYMBOL drivers/infiniband/ulp/rtrs/rtrs-client 0x01066089 rtrs_clt_close +EXPORT_SYMBOL drivers/infiniband/ulp/rtrs/rtrs-client 0x1ed4e478 rtrs_clt_query +EXPORT_SYMBOL drivers/infiniband/ulp/rtrs/rtrs-client 0x267cf596 rtrs_clt_open +EXPORT_SYMBOL drivers/infiniband/ulp/rtrs/rtrs-client 0x501f598d rtrs_permit_to_pdu +EXPORT_SYMBOL drivers/infiniband/ulp/rtrs/rtrs-client 0x5e2e6a46 rtrs_clt_get_permit +EXPORT_SYMBOL drivers/infiniband/ulp/rtrs/rtrs-client 0x5ec91774 rtrs_clt_put_permit +EXPORT_SYMBOL drivers/infiniband/ulp/rtrs/rtrs-client 0xeee25ade rtrs_clt_request +EXPORT_SYMBOL drivers/infiniband/ulp/rtrs/rtrs-core 0x56636a82 rtrs_rdma_dev_pd_init +EXPORT_SYMBOL drivers/infiniband/ulp/rtrs/rtrs-core 0x5b01e41d sockaddr_to_str +EXPORT_SYMBOL drivers/infiniband/ulp/rtrs/rtrs-core 0x887302f3 rtrs_addr_to_sockaddr +EXPORT_SYMBOL drivers/infiniband/ulp/rtrs/rtrs-core 0x94932cc5 rtrs_ib_dev_put +EXPORT_SYMBOL drivers/infiniband/ulp/rtrs/rtrs-core 0xb4192cd6 rtrs_rdma_dev_pd_deinit +EXPORT_SYMBOL drivers/infiniband/ulp/rtrs/rtrs-core 0xc8ac8a2a rtrs_ib_dev_find_or_add +EXPORT_SYMBOL drivers/infiniband/ulp/rtrs/rtrs-server 0x03a9090e rtrs_srv_set_sess_priv +EXPORT_SYMBOL drivers/infiniband/ulp/rtrs/rtrs-server 0x297ad50d rtrs_srv_get_queue_depth +EXPORT_SYMBOL drivers/infiniband/ulp/rtrs/rtrs-server 0xd0b26ee1 rtrs_srv_resp_rdma +EXPORT_SYMBOL drivers/infiniband/ulp/rtrs/rtrs-server 0xdc6ae90e rtrs_srv_open +EXPORT_SYMBOL drivers/infiniband/ulp/rtrs/rtrs-server 0xe7501ef6 rtrs_srv_get_sess_name +EXPORT_SYMBOL drivers/infiniband/ulp/rtrs/rtrs-server 0xff6da8f0 rtrs_srv_close +EXPORT_SYMBOL drivers/input/input-polldev 0x0a28577d input_free_polled_device +EXPORT_SYMBOL drivers/input/input-polldev 0x0dee1882 input_register_polled_device +EXPORT_SYMBOL drivers/input/input-polldev 0x809bc081 input_unregister_polled_device +EXPORT_SYMBOL drivers/input/input-polldev 0x81b8715d devm_input_allocate_polled_device +EXPORT_SYMBOL drivers/input/input-polldev 0xe5c8c143 input_allocate_polled_device +EXPORT_SYMBOL drivers/input/matrix-keymap 0x6d9ab77c matrix_keypad_build_keymap +EXPORT_SYMBOL drivers/input/sparse-keymap 0x2d5566f2 sparse_keymap_setup +EXPORT_SYMBOL drivers/input/sparse-keymap 0x522bd9f8 sparse_keymap_report_entry +EXPORT_SYMBOL drivers/input/sparse-keymap 0x895061d2 sparse_keymap_entry_from_scancode +EXPORT_SYMBOL drivers/input/sparse-keymap 0x8d5cb4bd sparse_keymap_entry_from_keycode +EXPORT_SYMBOL drivers/input/sparse-keymap 0xa23598c3 sparse_keymap_report_event +EXPORT_SYMBOL drivers/iommu/amd/iommu_v2 0x1034aba8 amd_iommu_bind_pasid +EXPORT_SYMBOL drivers/iommu/amd/iommu_v2 0x12ee7673 amd_iommu_unbind_pasid +EXPORT_SYMBOL drivers/iommu/amd/iommu_v2 0x22781213 amd_iommu_free_device +EXPORT_SYMBOL drivers/iommu/amd/iommu_v2 0xbeee017d amd_iommu_init_device +EXPORT_SYMBOL drivers/iommu/amd/iommu_v2 0xd1c44350 amd_iommu_set_invalidate_ctx_cb +EXPORT_SYMBOL drivers/iommu/amd/iommu_v2 0xf8b024f0 amd_iommu_set_invalid_ppr_cb +EXPORT_SYMBOL drivers/leds/leds-ti-lmu-common 0x54a12ec4 ti_lmu_common_set_ramp +EXPORT_SYMBOL drivers/leds/leds-ti-lmu-common 0x58f8e8e9 ti_lmu_common_get_ramp_params +EXPORT_SYMBOL drivers/leds/leds-ti-lmu-common 0x618c6173 ti_lmu_common_get_brt_res +EXPORT_SYMBOL drivers/leds/leds-ti-lmu-common 0xced72aae ti_lmu_common_set_brightness +EXPORT_SYMBOL drivers/md/dm-log 0x1471c50c dm_dirty_log_type_register +EXPORT_SYMBOL drivers/md/dm-log 0x1c1dce7c dm_dirty_log_type_unregister +EXPORT_SYMBOL drivers/md/dm-log 0x3217a2ea dm_dirty_log_destroy +EXPORT_SYMBOL drivers/md/dm-log 0xe0ded756 dm_dirty_log_create +EXPORT_SYMBOL drivers/md/dm-snapshot 0x3df110e5 dm_exception_store_create +EXPORT_SYMBOL drivers/md/dm-snapshot 0x4fbc4dbf dm_exception_store_type_unregister +EXPORT_SYMBOL drivers/md/dm-snapshot 0x85adba0e dm_exception_store_destroy +EXPORT_SYMBOL drivers/md/dm-snapshot 0xd60a988d dm_snap_origin +EXPORT_SYMBOL drivers/md/dm-snapshot 0xdbb4b3aa dm_snap_cow +EXPORT_SYMBOL drivers/md/dm-snapshot 0xdeb4e39f dm_exception_store_type_register +EXPORT_SYMBOL drivers/md/raid456 0x8125883b raid5_set_cache_size +EXPORT_SYMBOL drivers/md/raid456 0xe30748f6 r5c_journal_mode_set +EXPORT_SYMBOL drivers/media/common/videobuf2/videobuf2-common 0xc6b2a453 vb2_verify_memory_type +EXPORT_SYMBOL drivers/media/common/videobuf2/videobuf2-common 0xea3b0e49 vb2_buffer_in_use +EXPORT_SYMBOL drivers/media/common/videobuf2/videobuf2-memops 0xa21fa765 vb2_create_framevec +EXPORT_SYMBOL drivers/media/common/videobuf2/videobuf2-memops 0xccd197c7 vb2_destroy_framevec +EXPORT_SYMBOL drivers/media/common/videobuf2/videobuf2-v4l2 0xb20ed8bd vb2_querybuf +EXPORT_SYMBOL drivers/media/rc/rc-core 0x2ad91f6e ir_raw_gen_pl +EXPORT_SYMBOL drivers/media/rc/rc-core 0x3131b773 ir_raw_encode_scancode +EXPORT_SYMBOL drivers/media/rc/rc-core 0x4725eda1 ir_raw_encode_carrier +EXPORT_SYMBOL drivers/media/rc/rc-core 0x78b6fda1 ir_raw_handler_register +EXPORT_SYMBOL drivers/media/rc/rc-core 0x7cf52901 ir_raw_gen_manchester +EXPORT_SYMBOL drivers/media/rc/rc-core 0x9a51dfba ir_raw_handler_unregister +EXPORT_SYMBOL drivers/media/rc/rc-core 0x9e12e343 ir_raw_gen_pd +EXPORT_SYMBOL drivers/media/v4l2-core/v4l2-mem2mem 0x1abcc21e v4l2_m2m_get_vq +EXPORT_SYMBOL drivers/media/v4l2-core/v4l2-mem2mem 0x459e133f v4l2_m2m_get_curr_priv +EXPORT_SYMBOL drivers/media/v4l2-core/v4l2-mem2mem 0x496fc76c v4l2_m2m_job_finish +EXPORT_SYMBOL drivers/media/v4l2-core/v4l2-mem2mem 0xb3036e08 v4l2_m2m_mmap +EXPORT_SYMBOL drivers/media/v4l2-core/v4l2-mem2mem 0xf9adc588 v4l2_m2m_buf_done_and_job_finish +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x023787f9 __v4l2_ctrl_grab +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 0x0a5c5862 v4l2_async_notifier_register +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x123959a1 v4l2_type_names +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x12afba1b v4l2_async_notifier_init +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x12cec4c5 v4l2_ctrl_find +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x1333dcc0 v4l2_async_unregister_subdev +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x15d4ced7 video_device_release +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x16244fe5 v4l2_prio_check +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x18242f37 v4l2_g_ext_ctrls +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x1a8c0fa1 v4l2_clk_unregister +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x1ec02e2a v4l2_ctrl_poll +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x2342f1ae v4l2_prio_open +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x2675cab9 v4l2_ctrl_handler_init_class +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x28b12cc9 v4l2_format_info +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x2be0c205 v4l2_ctrl_log_status +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x315de2cf v4l2_ctrl_get_menu +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x325858f4 v4l2_ctrl_request_complete +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x32d43420 v4l2_ctrl_get_name +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x374c6e60 video_ioctl2 +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x3a7fadcf v4l2_clk_set_rate +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x3abc1bd9 video_devdata +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x3adbd595 v4l2_field_names +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x3bdd0f94 v4l2_prio_change +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x3f0f67f3 v4l2_async_notifier_unregister +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x41afbe48 video_unregister_device +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x4d4d61b3 v4l2_s_ext_ctrls +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x4d759f1a v4l2_clk_put +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x544ca13e v4l2_ctrl_handler_setup +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x55324778 v4l2_ctrl_subdev_log_status +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x555bbf39 v4l2_clk_disable +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x558c631c v4l2_ctrl_new_custom +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x5d671ac4 v4l2_ctrl_subscribe_event +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x5f954b6b v4l2_querymenu +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x60227a7f v4l2_ctrl_new_int_menu +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x61c63b12 v4l2_ctrl_new_fwnode_properties +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x61f6de2c v4l2_ctrl_handler_log_status +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x639c59c5 video_device_alloc +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x63dfa55c v4l2_clk_get_rate +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x63e9c8c5 v4l2_ctrl_add_handler +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x64e10451 v4l2_ctrl_g_ctrl +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x68f6e560 video_device_release_empty +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x6c40e9ec v4l2_ctrl_new_std_menu +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x6c45721a v4l2_subdev_init +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x71178ed8 v4l2_ctrl_request_setup +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x72d7708d __video_register_device +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x7f1088e6 v4l2_ctrl_handler_free +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x7fcb2f57 __v4l2_ctrl_s_ctrl_int64 +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x7ffe6cc6 v4l2_g_ctrl +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x8106095a v4l2_prio_max +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x8280534c v4l2_ctrl_fill +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x858acd67 v4l2_ctrl_cluster +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x89e3897d v4l2_ctrl_query_fill +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x8b1fec93 __v4l2_ctrl_modify_range +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x91021276 v4l2_s_ctrl +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x9cd4c32b v4l2_async_subdev_notifier_register +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xa2b855d0 v4l2_ctrl_radio_filter +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xa7abe321 v4l2_try_ext_ctrls +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xaef87723 __v4l2_clk_register_fixed +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xb77b0159 v4l2_prio_init +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xb7aba6c1 v4l2_ctrl_auto_cluster +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xb895e15c v4l2_clk_unregister_fixed +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xbb0649b4 v4l2_queryctrl +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xbc5671dc v4l_printk_ioctl +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xc1109b11 v4l2_clk_enable +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xc357dd8c v4l2_query_ext_ctrl +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xc39e3e14 v4l2_ctrl_g_ctrl_int64 +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xc5f8d0ad v4l2_ctrl_subdev_subscribe_event +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xcda04a5b v4l2_prio_close +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xce398c57 v4l2_ctrl_new_std +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xd16d9c01 v4l2_ctrl_get_int_menu +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xd22d18de v4l2_ctrl_sub_ev_ops +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xd825b6ea v4l2_ctrl_activate +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xd90da888 v4l2_ctrl_new_std_menu_items +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xdb603dcc v4l2_ctrl_notify +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xde37e8f4 v4l2_clk_register +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xe2b92059 v4l2_video_std_construct +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xe2d8c1da v4l2_async_register_subdev +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xee5f515c v4l2_ctrl_new_std_compound +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xf04dd21f __v4l2_ctrl_s_ctrl_string +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xf3251e7b v4l2_norm_to_name +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xf35f5998 v4l2_subdev_call_wrappers +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xf50fecbc v4l2_ctrl_replace +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xf69ac1a7 v4l2_clk_get +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xfbf516e0 __v4l2_ctrl_s_ctrl +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xfbfb6bfa __v4l2_ctrl_s_ctrl_compound +EXPORT_SYMBOL drivers/message/fusion/mptbase 0x209e40ed mpt_raid_phys_disk_pg1 +EXPORT_SYMBOL drivers/message/fusion/mptbase 0x322771f0 mpt_get_msg_frame +EXPORT_SYMBOL drivers/message/fusion/mptbase 0x3b2f9004 mpt_raid_phys_disk_pg0 +EXPORT_SYMBOL drivers/message/fusion/mptbase 0x4379900b mpt_HardResetHandler +EXPORT_SYMBOL drivers/message/fusion/mptbase 0x43bc287f mpt_config +EXPORT_SYMBOL drivers/message/fusion/mptbase 0x502108d0 mpt_fwfault_debug +EXPORT_SYMBOL drivers/message/fusion/mptbase 0x5682ad46 mpt_attach +EXPORT_SYMBOL drivers/message/fusion/mptbase 0x610b257e mpt_reset_deregister +EXPORT_SYMBOL drivers/message/fusion/mptbase 0x74a0134a mpt_device_driver_deregister +EXPORT_SYMBOL drivers/message/fusion/mptbase 0x92627e70 mpt_resume +EXPORT_SYMBOL drivers/message/fusion/mptbase 0x97dc4cc9 mpt_detach +EXPORT_SYMBOL drivers/message/fusion/mptbase 0x981efe92 mpt_deregister +EXPORT_SYMBOL drivers/message/fusion/mptbase 0x9e909a4e mpt_verify_adapter +EXPORT_SYMBOL drivers/message/fusion/mptbase 0xa40af20f mpt_suspend +EXPORT_SYMBOL drivers/message/fusion/mptbase 0xa5348bef mptbase_sas_persist_operation +EXPORT_SYMBOL drivers/message/fusion/mptbase 0xb3478534 mpt_reset_register +EXPORT_SYMBOL drivers/message/fusion/mptbase 0xb3bc3d74 mpt_clear_taskmgmt_in_progress_flag +EXPORT_SYMBOL drivers/message/fusion/mptbase 0xb4866bb5 mpt_device_driver_register +EXPORT_SYMBOL drivers/message/fusion/mptbase 0xc4a3b443 mpt_free_msg_frame +EXPORT_SYMBOL drivers/message/fusion/mptbase 0xc804abd0 mpt_findImVolumes +EXPORT_SYMBOL drivers/message/fusion/mptbase 0xc99be17e mpt_GetIocState +EXPORT_SYMBOL drivers/message/fusion/mptbase 0xcbe9e977 mpt_halt_firmware +EXPORT_SYMBOL drivers/message/fusion/mptbase 0xd0e4a0b7 mpt_put_msg_frame_hi_pri +EXPORT_SYMBOL drivers/message/fusion/mptbase 0xd39aafa0 mpt_put_msg_frame +EXPORT_SYMBOL drivers/message/fusion/mptbase 0xdd805159 ioc_list +EXPORT_SYMBOL drivers/message/fusion/mptbase 0xe0de54c8 mpt_alloc_fw_memory +EXPORT_SYMBOL drivers/message/fusion/mptbase 0xe6c1e126 mpt_event_deregister +EXPORT_SYMBOL drivers/message/fusion/mptbase 0xe7655403 mpt_free_fw_memory +EXPORT_SYMBOL drivers/message/fusion/mptbase 0xec54f8e0 mpt_print_ioc_summary +EXPORT_SYMBOL drivers/message/fusion/mptbase 0xf1b4c062 mpt_set_taskmgmt_in_progress_flag +EXPORT_SYMBOL drivers/message/fusion/mptbase 0xf1d2e915 mpt_raid_phys_disk_get_num_paths +EXPORT_SYMBOL drivers/message/fusion/mptbase 0xf1fc044a mpt_send_handshake_request +EXPORT_SYMBOL drivers/message/fusion/mptbase 0xf6392ff7 mpt_Soft_Hard_ResetHandler +EXPORT_SYMBOL drivers/message/fusion/mptbase 0xfaf0f132 mpt_event_register +EXPORT_SYMBOL drivers/message/fusion/mptbase 0xfe31f235 mpt_register +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0x00ccf628 mptscsih_taskmgmt_response_code +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0x103077a4 mptscsih_resume +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0x1ec89ea5 mptscsih_remove +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0x388330fc mptscsih_dev_reset +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0x3e9d3d0e mptscsih_host_attrs +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0x44289d70 mptscsih_slave_configure +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0x6424179a mptscsih_scandv_complete +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0x70d6e7a9 mptscsih_abort +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0x858636a9 mptscsih_get_scsi_lookup +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0x880584ce mptscsih_is_phys_disk +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0x8d7402c3 mptscsih_show_info +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0x9404c1c9 mptscsih_taskmgmt_complete +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0x94be131b mptscsih_suspend +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0x966d5d96 mptscsih_shutdown +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0x976d5e03 mptscsih_host_reset +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0x98a9ac9f mptscsih_info +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0x9c378183 mptscsih_event_process +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0xa49a788f mptscsih_io_done +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0xaf751819 mptscsih_change_queue_depth +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0xbb286995 mptscsih_ioc_reset +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0xdf9cbd4e mptscsih_qcmd +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0xe5962d59 mptscsih_bios_param +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0xe87d8534 mptscsih_bus_reset +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0xe9b88842 mptscsih_slave_destroy +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0xf082c3d5 mptscsih_flush_running_cmds +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0xf22e073e mptscsih_IssueTaskMgmt +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0xf769985f mptscsih_raid_id_to_num +EXPORT_SYMBOL drivers/mfd/axp20x 0xd49a3419 axp20x_device_probe +EXPORT_SYMBOL drivers/mfd/axp20x 0xd8216e11 axp20x_device_remove +EXPORT_SYMBOL drivers/mfd/axp20x 0xee5e584a axp20x_match_device +EXPORT_SYMBOL drivers/mfd/htc-pasic3 0x80498b05 pasic3_write_register +EXPORT_SYMBOL drivers/mfd/htc-pasic3 0x93cecb1c pasic3_read_register +EXPORT_SYMBOL drivers/mfd/mc13xxx-core 0x21b7ba22 mc13xxx_irq_request +EXPORT_SYMBOL drivers/mfd/mc13xxx-core 0x5314b759 mc13xxx_irq_status +EXPORT_SYMBOL drivers/mfd/mc13xxx-core 0x532c96ad mc13xxx_reg_rmw +EXPORT_SYMBOL drivers/mfd/mc13xxx-core 0x625be049 mc13xxx_reg_write +EXPORT_SYMBOL drivers/mfd/mc13xxx-core 0x6d867ef8 mc13xxx_irq_mask +EXPORT_SYMBOL drivers/mfd/mc13xxx-core 0x854b42d0 mc13xxx_irq_unmask +EXPORT_SYMBOL drivers/mfd/mc13xxx-core 0x89f095b0 mc13xxx_get_flags +EXPORT_SYMBOL drivers/mfd/mc13xxx-core 0xdb677b8a mc13xxx_reg_read +EXPORT_SYMBOL drivers/mfd/mc13xxx-core 0xe8d10c0b mc13xxx_lock +EXPORT_SYMBOL drivers/mfd/mc13xxx-core 0xf8f2acdd mc13xxx_irq_free +EXPORT_SYMBOL drivers/mfd/mc13xxx-core 0xfa2c609e mc13xxx_unlock +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 0x7dccf894 wm1811_regmap_config +EXPORT_SYMBOL drivers/mfd/wm8994 0xb4695d4e wm8994_irq_init +EXPORT_SYMBOL drivers/mfd/wm8994 0xd0944120 wm8994_regmap_config +EXPORT_SYMBOL drivers/mfd/wm8994 0xe2aefab9 wm8958_regmap_config +EXPORT_SYMBOL drivers/mfd/wm8994 0xea37d7da wm8994_irq_exit +EXPORT_SYMBOL drivers/mfd/wm8994 0xff9661ef wm8994_base_regmap_config +EXPORT_SYMBOL drivers/misc/mei/mei 0x1545cfd0 __tracepoint_mei_reg_read +EXPORT_SYMBOL drivers/misc/mei/mei 0xa5bff49d __tracepoint_mei_pci_cfg_read +EXPORT_SYMBOL drivers/misc/mei/mei 0xb93bb2a0 __tracepoint_mei_reg_write +EXPORT_SYMBOL drivers/misc/tifm_core 0x0ffb277f tifm_queue_work +EXPORT_SYMBOL drivers/misc/tifm_core 0x144fa64e tifm_add_adapter +EXPORT_SYMBOL drivers/misc/tifm_core 0x161954cc tifm_unregister_driver +EXPORT_SYMBOL drivers/misc/tifm_core 0x20a8f292 tifm_has_ms_pif +EXPORT_SYMBOL drivers/misc/tifm_core 0x4de5594b tifm_unmap_sg +EXPORT_SYMBOL drivers/misc/tifm_core 0x690173a7 tifm_map_sg +EXPORT_SYMBOL drivers/misc/tifm_core 0x7506785c tifm_free_adapter +EXPORT_SYMBOL drivers/misc/tifm_core 0x78c314ff tifm_alloc_device +EXPORT_SYMBOL drivers/misc/tifm_core 0x8791a0f6 tifm_eject +EXPORT_SYMBOL drivers/misc/tifm_core 0xb9adb61a tifm_register_driver +EXPORT_SYMBOL drivers/misc/tifm_core 0xbae8ba87 tifm_free_device +EXPORT_SYMBOL drivers/misc/tifm_core 0xf72c7762 tifm_alloc_adapter +EXPORT_SYMBOL drivers/misc/tifm_core 0xf9cd3cca tifm_remove_adapter +EXPORT_SYMBOL drivers/net/arcnet/arcnet 0x0594f2c7 arcnet_timeout +EXPORT_SYMBOL drivers/net/arcnet/arcnet 0x1d958a00 arc_proto_default +EXPORT_SYMBOL drivers/net/arcnet/arcnet 0x2371d830 alloc_arcdev +EXPORT_SYMBOL drivers/net/arcnet/arcnet 0x369a39a7 arcnet_close +EXPORT_SYMBOL drivers/net/arcnet/arcnet 0x60c862e7 arcnet_open +EXPORT_SYMBOL drivers/net/arcnet/arcnet 0x6534792a arcnet_debug +EXPORT_SYMBOL drivers/net/arcnet/arcnet 0x72d9f1c5 arcnet_send_packet +EXPORT_SYMBOL drivers/net/arcnet/arcnet 0xabdf8092 arc_proto_map +EXPORT_SYMBOL drivers/net/arcnet/arcnet 0xcb9621ac arc_bcast_proto +EXPORT_SYMBOL drivers/net/arcnet/arcnet 0xec346a8b arc_raw_proto +EXPORT_SYMBOL drivers/net/arcnet/arcnet 0xecb730b0 arcnet_interrupt +EXPORT_SYMBOL drivers/net/arcnet/arcnet 0xff3d2094 arcnet_unregister_proto +EXPORT_SYMBOL drivers/net/arcnet/com20020 0x0f3feaab com20020_netdev_ops +EXPORT_SYMBOL drivers/net/arcnet/com20020 0x604e40c4 com20020_check +EXPORT_SYMBOL drivers/net/arcnet/com20020 0xb811acbf com20020_found +EXPORT_SYMBOL drivers/net/dsa/b53/b53_common 0x04d7a836 b53_get_ethtool_phy_stats +EXPORT_SYMBOL drivers/net/dsa/b53/b53_common 0x05425829 b53_mirror_del +EXPORT_SYMBOL drivers/net/dsa/b53/b53_common 0x105cc996 b53_vlan_filtering +EXPORT_SYMBOL drivers/net/dsa/b53/b53_common 0x1dcadddb b53_br_egress_floods +EXPORT_SYMBOL drivers/net/dsa/b53/b53_common 0x2836d8f9 b53_mdb_prepare +EXPORT_SYMBOL drivers/net/dsa/b53/b53_common 0x2b4d2179 b53_fdb_del +EXPORT_SYMBOL drivers/net/dsa/b53/b53_common 0x2ebff7d8 b53_get_strings +EXPORT_SYMBOL drivers/net/dsa/b53/b53_common 0x48105919 b53_enable_port +EXPORT_SYMBOL drivers/net/dsa/b53/b53_common 0x4aedf999 b53_phylink_mac_link_up +EXPORT_SYMBOL drivers/net/dsa/b53/b53_common 0x4d07858a b53_imp_vlan_setup +EXPORT_SYMBOL drivers/net/dsa/b53/b53_common 0x5848ef9f b53_switch_register +EXPORT_SYMBOL drivers/net/dsa/b53/b53_common 0x63669156 b53_br_join +EXPORT_SYMBOL drivers/net/dsa/b53/b53_common 0x734df88f b53_vlan_del +EXPORT_SYMBOL drivers/net/dsa/b53/b53_common 0x821f05d0 b53_phylink_mac_config +EXPORT_SYMBOL drivers/net/dsa/b53/b53_common 0x85dba721 b53_phylink_validate +EXPORT_SYMBOL drivers/net/dsa/b53/b53_common 0x87ce77d3 b53_get_sset_count +EXPORT_SYMBOL drivers/net/dsa/b53/b53_common 0x8b1a8c4e b53_br_fast_age +EXPORT_SYMBOL drivers/net/dsa/b53/b53_common 0x91aed7ae b53_phylink_mac_link_down +EXPORT_SYMBOL drivers/net/dsa/b53/b53_common 0x920cf6a0 b53_vlan_add +EXPORT_SYMBOL drivers/net/dsa/b53/b53_common 0x9413dba6 b53_disable_port +EXPORT_SYMBOL drivers/net/dsa/b53/b53_common 0x9d1ff5dd b53_phylink_mac_an_restart +EXPORT_SYMBOL drivers/net/dsa/b53/b53_common 0x9e4f4e02 b53_mirror_add +EXPORT_SYMBOL drivers/net/dsa/b53/b53_common 0xac00fa29 b53_br_leave +EXPORT_SYMBOL drivers/net/dsa/b53/b53_common 0xb4c7eede b53_get_tag_protocol +EXPORT_SYMBOL drivers/net/dsa/b53/b53_common 0xb61f5827 b53_fdb_add +EXPORT_SYMBOL drivers/net/dsa/b53/b53_common 0xb7570402 b53_switch_detect +EXPORT_SYMBOL drivers/net/dsa/b53/b53_common 0xb9fa8f95 b53_get_mac_eee +EXPORT_SYMBOL drivers/net/dsa/b53/b53_common 0xc13f2e82 b53_phylink_mac_link_state +EXPORT_SYMBOL drivers/net/dsa/b53/b53_common 0xc1b99822 b53_fdb_dump +EXPORT_SYMBOL drivers/net/dsa/b53/b53_common 0xc20a459e b53_eee_enable_set +EXPORT_SYMBOL drivers/net/dsa/b53/b53_common 0xc93d9d56 b53_eee_init +EXPORT_SYMBOL drivers/net/dsa/b53/b53_common 0xc9567167 b53_port_event +EXPORT_SYMBOL drivers/net/dsa/b53/b53_common 0xce0c5e8f b53_vlan_prepare +EXPORT_SYMBOL drivers/net/dsa/b53/b53_common 0xcf0bb13d b53_mdb_add +EXPORT_SYMBOL drivers/net/dsa/b53/b53_common 0xdc15d1fb b53_brcm_hdr_setup +EXPORT_SYMBOL drivers/net/dsa/b53/b53_common 0xdf42c416 b53_set_mac_eee +EXPORT_SYMBOL drivers/net/dsa/b53/b53_common 0xe0042a33 b53_get_ethtool_stats +EXPORT_SYMBOL drivers/net/dsa/b53/b53_common 0xeabd3dc4 b53_switch_alloc +EXPORT_SYMBOL drivers/net/dsa/b53/b53_common 0xf1c78f30 b53_br_set_stp_state +EXPORT_SYMBOL drivers/net/dsa/b53/b53_common 0xf83265f0 b53_mdb_del +EXPORT_SYMBOL drivers/net/dsa/b53/b53_common 0xfb13c6f3 b53_configure_vlan +EXPORT_SYMBOL drivers/net/dsa/b53/b53_serdes 0x0164f9ff b53_serdes_link_state +EXPORT_SYMBOL drivers/net/dsa/b53/b53_serdes 0x231c0c84 b53_serdes_link_set +EXPORT_SYMBOL drivers/net/dsa/b53/b53_serdes 0x2fede735 b53_serdes_an_restart +EXPORT_SYMBOL drivers/net/dsa/b53/b53_serdes 0x3b94ea5f b53_serdes_config +EXPORT_SYMBOL drivers/net/dsa/b53/b53_serdes 0xb1f8309d b53_serdes_phylink_validate +EXPORT_SYMBOL drivers/net/dsa/b53/b53_serdes 0xc62b400d b53_serdes_init +EXPORT_SYMBOL drivers/net/dsa/lan9303-core 0x569a34a9 lan9303_probe +EXPORT_SYMBOL drivers/net/dsa/lan9303-core 0xada83f40 lan9303_register_set +EXPORT_SYMBOL drivers/net/dsa/lan9303-core 0xded91eaa lan9303_remove +EXPORT_SYMBOL drivers/net/dsa/microchip/ksz8795 0x90208079 ksz8795_switch_register +EXPORT_SYMBOL drivers/net/dsa/microchip/ksz9477 0x6787f031 ksz9477_switch_register +EXPORT_SYMBOL drivers/net/dsa/microchip/ksz_common 0x55b42e11 ksz_switch_alloc +EXPORT_SYMBOL drivers/net/dsa/microchip/ksz_common 0x6cee398c ksz_switch_register +EXPORT_SYMBOL drivers/net/dsa/microchip/ksz_common 0xabe79292 ksz_switch_remove +EXPORT_SYMBOL drivers/net/dsa/vitesse-vsc73xx-core 0x62c4ccf8 vsc73xx_remove +EXPORT_SYMBOL drivers/net/dsa/vitesse-vsc73xx-core 0x99d242fe vsc73xx_is_addr_valid +EXPORT_SYMBOL drivers/net/dsa/vitesse-vsc73xx-core 0xf9581af2 vsc73xx_probe +EXPORT_SYMBOL drivers/net/ethernet/broadcom/cnic 0x409704e1 cnic_register_driver +EXPORT_SYMBOL drivers/net/ethernet/broadcom/cnic 0x636af174 cnic_unregister_driver +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb3/cxgb3 0x10652076 cxgb3_remove_tid +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb3/cxgb3 0x27f22928 t3_l2t_send_event +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb3/cxgb3 0x34fdd477 cxgb3_free_stid +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb3/cxgb3 0x3c729141 cxgb3_insert_tid +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb3/cxgb3 0x41e98777 t3_l2t_send_slow +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb3/cxgb3 0x5ede22c3 cxgb3_register_client +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb3/cxgb3 0x6fcf6125 cxgb3_unregister_client +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb3/cxgb3 0x9456ca8a cxgb3_ofld_send +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb3/cxgb3 0x985759fa cxgb3_alloc_atid +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb3/cxgb3 0xa1946c5c t3_l2t_get +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb3/cxgb3 0xa492cf68 dev2t3cdev +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb3/cxgb3 0xbe3465bc t3_l2e_free +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb3/cxgb3 0xdf128281 cxgb3_queue_tid_release +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb3/cxgb3 0xf3e4c973 t3_register_cpl_handler +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb3/cxgb3 0xf65f3d2c cxgb3_free_atid +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb3/cxgb3 0xfcdaa86d cxgb3_alloc_stid +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0x082f1837 cxgb4_l2t_send +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0x09b956a9 cxgb4_get_tcp_stats +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0x0b236077 cxgb4_select_ntuple +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0x0fcff92f cxgb4_port_chan +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0x110c19fd cxgb4_remove_server +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0x1818248c cxgb4_immdata_send +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0x18bfc77a cxgb4_port_e2cchan +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0x1b0f5996 cxgb4_port_idx +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0x3a790946 cxgb4_get_srq_entry +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0x40655c44 cxgb4_dbfifo_count +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0x43822ec1 cxgb4_check_l2t_valid +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0x442ff3e2 cxgb4_free_atid +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0x443ca36b cxgb4_crypto_send +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0x4ed564b6 cxgb4_flush_eq_cache +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0x4fbb0b2a cxgb4_pktgl_to_skb +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0x50ee5c07 cxgb4_best_aligned_mtu +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0x52f9441a cxgb4_create_server_filter +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0x53f8c94f cxgb4_alloc_atid +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0x5ab75117 cxgb4_ofld_send +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0x60727205 cxgb4_remove_server_filter +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0x61c75b1c cxgb4_sync_txq_pidx +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0x676a11a9 cxgb4_unregister_uld +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0x7b29fc34 cxgb4_alloc_sftid +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0x8fdf6ea9 cxgb4_register_uld +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0x91453f1b cxgb4_l2t_alloc_switching +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0x9b807eb3 cxgb4_read_tpte +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0x9c8d0b42 cxgb4_map_skb +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0xa1550ed0 cxgb4_create_server +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0xa161bad7 cxgb4_clip_get +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0xa5cc7d46 cxgb4_l2t_release +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0xa682e7ca cxgb4_create_server6 +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0xa8db193f cxgb4_smt_release +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0xae8813e6 cxgb4_l2t_get +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0xafb1f294 cxgb4_alloc_stid +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0xafdb8260 cxgb4_reclaim_completed_tx +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0xb26410a2 cxgb4_update_root_dev_clip +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0xb4716900 cxgb4_read_sge_timestamp +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0xb6239238 cxgb4_free_stid +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0xba5b411e cxgb4_bar2_sge_qregs +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0xbf54dbd4 t4_cleanup_clip_tbl +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0xcaa5157b cxgb4_ring_tx_db +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0xcd56cb7f cxgb4_clip_release +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0xd1f13d26 cxgb4_inline_tx_skb +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0xd69a0294 cxgb4_best_mtu +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0xd7357db8 cxgb4_remove_tid +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0xe7262791 cxgb4_write_sgl +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0xe9a86912 cxgb4_port_viid +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0xefe50c0d cxgb4_iscsi_init +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0xf43bdfe8 cxgb4_smt_alloc_switching +EXPORT_SYMBOL drivers/net/ethernet/cisco/enic/enic 0x12810b1e vnic_dev_register +EXPORT_SYMBOL drivers/net/ethernet/cisco/enic/enic 0x73b6cd7a vnic_dev_unregister +EXPORT_SYMBOL drivers/net/ethernet/cisco/enic/enic 0x866c4adc vnic_dev_get_pdev +EXPORT_SYMBOL drivers/net/ethernet/cisco/enic/enic 0x9e0ca43a vnic_dev_get_res +EXPORT_SYMBOL drivers/net/ethernet/cisco/enic/enic 0xc5bbe3ad vnic_dev_get_res_count +EXPORT_SYMBOL drivers/net/ethernet/cisco/enic/enic 0xc9f567bf 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 0xa434c4a2 be_roce_register_driver +EXPORT_SYMBOL drivers/net/ethernet/emulex/benet/be2net 0xf354d21e be_roce_unregister_driver +EXPORT_SYMBOL drivers/net/ethernet/intel/i40e/i40e 0x95435a55 i40e_unregister_client +EXPORT_SYMBOL drivers/net/ethernet/intel/i40e/i40e 0xbdc627c7 i40e_register_client +EXPORT_SYMBOL drivers/net/ethernet/intel/iavf/iavf 0xc6bf2a9a iavf_register_client +EXPORT_SYMBOL drivers/net/ethernet/intel/iavf/iavf 0xfab58afd iavf_unregister_client +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x01d0f66e mlx4_test_async +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x02007591 mlx4_SET_PORT_VXLAN +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x022d0f54 mlx4_SET_VPORT_QOS_set +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x0668bed1 mlx4_ALLOCATE_VPP_set +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x0d0d7bb7 set_phv_bit +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x0f88657e mlx4_SET_PORT_user_mtu +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x16bedc83 mlx4_eq_get_irq +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x1c35061b mlx4_get_slave_node_guid +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x20f91b44 mlx4_get_is_vlan_offload_disabled +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x2603ecfa mlx4_SET_VPORT_QOS_get +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x28a368f8 mlx4_get_parav_qkey +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x2cab2f5b mlx4_SET_PORT_SCHEDULER +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x2d5c8cfd get_phv_bit +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x3628045d mlx4_SET_PORT_BEACON +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x3e735a39 mlx4_get_roce_gid_from_slave +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x410d8822 mlx4_query_diag_counters +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x417c034f set_and_calc_slave_port_state +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x4a3c7c61 mlx4_assign_eq +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x4c26be0e mlx4_gen_port_state_change_eqe +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x4d3398aa mlx4_get_slave_pkey_gid_tbl_len +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x54c27406 mlx4_get_cpu_rmap +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x565ef25f mlx4_is_eq_vector_valid +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x65386fa6 mlx4_SET_MCAST_FLTR +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x6ce6686f mlx4_ALLOCATE_VPP_get +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x7e0ae9d9 mlx4_SET_PORT_fcs_check +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 0x826093bd mlx4_max_tc +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x838ce8df mlx4_SET_PORT_user_mac +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x8d77b774 mlx4_gen_guid_change_eqe +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x8fbc24e2 mlx4_tunnel_steer_add +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x92e8dba5 mlx4_get_slave_from_roce_gid +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x942c1014 mlx4_release_eq +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xa3e40019 mlx4_gen_pkey_eqe +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xa4ca5b42 mlx4_is_eq_shared +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xa589f6ba mlx4_put_slave_node_guid +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xbbe790d6 mlx4_SET_PORT_PRIO2TC +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xc6180c4b mlx4_gen_slaves_port_mgt_ev +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xcedbf39d mlx4_test_interrupt +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xd2013374 mlx4_is_slave_active +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xd5b8c2d3 mlx4_sync_pkey_table +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xd5d6baef mlx4_SET_PORT_qpn_calc +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xe854c88d mlx4_get_eqs_per_port +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xec16b657 mlx4_get_module_info +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xeee033f1 mlx4_SET_PORT_general +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xf785e804 mlx4_get_slave_port_state +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x003bdb2c mlx5_eswitch_vport_rep +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x03390fb9 mlx5_query_port_ib_proto_oper +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x05958797 mlx5_buf_alloc +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x06efc2e2 mlx5_packet_reformat_dealloc +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x07ccd017 mlx5_modify_header_dealloc +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x087d841c mlx5_put_uars_page +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x0e382779 mlx5_fpga_sbu_conn_destroy +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x0efc62a4 mlx5_core_query_vendor_id +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x0f10361b mlx5_register_interface +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x12041571 mlx5_core_modify_tis +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x1300ad69 mlx5_core_query_sq +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x161f6dd9 mlx5_core_destroy_rqt +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x16ae8727 mlx5_core_create_tis +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x1831c3fc mlx5_core_modify_cq_moderation +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x1835b6b8 mlx5_cmd_exec_polling +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x18738f53 mlx5_core_roce_gid_set +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x18ff516b mlx5_fs_add_rx_underlay_qpn +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x1e3eac2b mlx5_lag_get_roce_netdev +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x1e4c9620 mlx5_debugfs_root +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x22b12f26 mlx5_core_create_rqt +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x24057761 mlx5_core_create_rq +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x24ceda4c mlx5_eswitch_unregister_vport_reps +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x250f93f6 mlx5_notifier_unregister +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x275118cd mlx5_modify_header_alloc +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x27fa4d63 __tracepoint_mlx5_fs_del_fg +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x2a688b52 mlx5_qp_debugfs_init +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x2baf9978 mlx5_fc_query +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x2c93bf4c mlx5_eq_create_generic +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x310931a2 mlx5_cmd_cleanup +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x32705594 __tracepoint_mlx5_fs_del_rule +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x37651b47 __tracepoint_mlx5_fs_set_fte +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x377ce2db mlx5_qp_debugfs_cleanup +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x38b39e44 mlx5_eswitch_vport_match_metadata_enabled +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x3e960390 __tracepoint_mlx5_fw +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x3fb9179e mlx5_create_auto_grouped_flow_table +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x404e9627 mlx5_debug_qp_add +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x46150cf1 __tracepoint_mlx5_fs_del_ft +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x48662e81 mlx5_fpga_get_sbu_caps +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x48733b63 mlx5_core_destroy_rq +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x49859553 mlx5_notifier_register +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x4d397a1a mlx5_cmd_init_async_ctx +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x4fe33933 mlx5_core_create_psv +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x50c9e41e mlx5_lag_is_active +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x54b6bf72 mlx5_eswitch_uplink_get_proto_dev +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x56158db2 mlx5_core_destroy_cq +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x5827de66 mlx5_free_bfreg +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x5c7f343a mlx5_cmd_set_state +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x5e0a147e mlx5_fc_create +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x5e61b5db mlx5_core_dealloc_transport_domain +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x604ac5c5 mlx5_eq_update_ci +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x61363397 mlx5_packet_reformat_alloc +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 0x62b86338 mlx5_get_fdb_sub_ns +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x64c6c1ad mlx5_eq_disable +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x65481bbc mlx5_cmd_exec +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x65de88ce mlx5_eswitch_get_encap_mode +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x65ef1699 mlx5_eq_enable +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x678eb3f3 mlx5_core_detach_mcg +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x67977ef2 mlx5_rl_add_rate +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x67a1953a mlx5_rl_remove_rate +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x6b390ae6 mlx5_vector2eqn +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x6c258e40 mlx5_core_modify_cq +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x6c7f4950 mlx5_eswitch_get_vport_metadata_for_match +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x6c7fd4fb mlx5_comp_vectors_count +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x6ff54437 mlx5_core_modify_rq +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x714e71e4 mlx5_cmd_cleanup_async_ctx +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x75fb1b8f mlx5_core_query_cq +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x7623ee0b mlx5_get_flow_namespace +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x791efcd2 mlx5_eq_notifier_register +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x7b996a91 mlx5_eswitch_register_vport_reps +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x830724fe mlx5_core_modify_sq +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x83a418d2 mlx5_core_destroy_psv +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x8464d517 mlx5_unregister_interface +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x87a25e22 __tracepoint_mlx5_fs_add_rule +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x889b37bb mlx5_cmd_alloc_uar +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x8a52f16b mlx5_cmd_free_uar +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x8dde331d mlx5_lag_get_slave_port +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x8eeefaa0 __tracepoint_mlx5_fs_add_fg +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x8f0429a9 mlx5_fpga_mem_write +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x90e9cb3e mlx5_core_destroy_mkey +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x92e68811 mlx5_cmd_exec_cb +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x92ed2298 mlx5_rdma_rn_get_params +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x963efbb2 mlx5_core_destroy_tis +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x96eb2c99 mlx5_fc_id +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x9884865a mlx5_del_flow_rules +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x98ab7cc6 mlx5_destroy_flow_table +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x9a11ad67 mlx5_debug_qp_remove +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x9cee2032 mlx5_lag_is_sriov +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x9e6c36ce mlx5_eq_get_eqe +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xa5d35725 mlx5_core_query_mkey +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xa5dfdcad mlx5_cmd_init +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xaa607f16 mlx5_core_alloc_transport_domain +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xad78b1e0 mlx5_rl_is_in_range +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xad8ac5b1 mlx5_fs_remove_rx_underlay_qpn +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xae9ea383 __tracepoint_mlx5_fs_del_fte +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xaeabbcbe mlx5_fpga_sbu_conn_sendmsg +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xaf2032b8 mlx5_eq_destroy_generic +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xb00cb3f6 mlx5_lag_query_cong_counters +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xb339cdce mlx5_core_dealloc_pd +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xb471aedc mlx5_eswitch_get_proto_dev +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xb720abdb mlx5_eq_notifier_unregister +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xbbdee52e mlx5_core_create_cq +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xbc0bab9e mlx5_fpga_sbu_conn_create +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xbf4de61d mlx5_cmd_destroy_vport_lag +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xca0b5a67 mlx5_comp_irq_get_affinity_mask +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xcc0018aa mlx5_alloc_bfreg +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xcce9ea0b mlx5_rl_add_rate_raw +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xce1490e1 mlx5_lag_is_roce +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xce38dc66 mlx5_rl_remove_rate_raw +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xd1328b2d mlx5_core_create_mkey +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xd1c593e1 mlx5_eswitch_reg_c1_loopback_enabled +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xd53991b0 mlx5_eswitch_add_send_to_vport_rule +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xd5950f9a mlx5_cmd_create_vport_lag +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xddd0ba96 mlx5_add_flow_rules +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xde1809c8 mlx5_nic_vport_disable_roce +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xdec6fbda mlx5_get_uars_page +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xdfd461c8 mlx5_core_alloc_pd +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xef01bb32 __tracepoint_mlx5_fs_add_ft +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xf120e368 mlx5_create_lag_demux_flow_table +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xf358ff79 mlx5_core_attach_mcg +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xf4e11f13 mlx5_core_destroy_tir +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xf4fa0f53 mlx5_core_create_tir +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xf8921692 mlx5_fc_destroy +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xff52a990 mlx5_fpga_mem_read +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xfff2cda0 mlx5_core_query_rq +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxfw/mlxfw 0x6b595d08 mlxfw_firmware_flash +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0x013a596a mlxsw_core_driver_register +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0x02998acf mlxsw_afa_block_append_counter +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0x02db5c3f mlxsw_core_trap_state_set +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 0x07abcc0c mlxsw_afa_block_append_trap +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0x0ca34ccf mlxsw_core_max_ports +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0x0e2b5842 mlxsw_afa_block_append_vlan_modify +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0x0e81c09c mlxsw_afk_destroy +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0x13ad0a45 mlxsw_core_skb_transmit +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0x15801382 mlxsw_afk_key_info_put +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 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 0x27b6f344 mlxsw_core_port_eth_set +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0x2c68ced3 mlxsw_core_read_frc_h +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0x2decde87 mlxsw_core_fw_flash_start +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0x2f2c4887 mlxsw_afa_block_append_qos_switch_prio +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0x35ba2254 mlxsw_afk_values_add_u32 +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0x3f123442 mlxsw_core_kvd_sizes_get +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0x41055a45 mlxsw_core_event_listener_unregister +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0x41da900b mlxsw_env_get_module_eeprom +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 0x47fd6eee mlxsw_core_fw_flash_end +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0x484489a4 mlxsw_cmd_exec +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0x4a24ca55 mlxsw_afa_block_append_mirror +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0x4a6ed376 mlxsw_core_port_fini +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0x4d33c574 mlxsw_core_port_devlink_port_get +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0x58030066 mlxsw_core_driver_unregister +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0x5cf3dd79 mlxsw_core_bus_device_unregister +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0x5ff17b5c mlxsw_afa_block_destroy +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0x615ef5fc mlxsw_afa_block_append_qos_dscp +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 0x65e16da4 mlxsw_afk_key_info_get +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0x692ac04e mlxsw_afk_create +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0x71e1d813 mlxsw_core_port_clear +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0x73cf1d7a mlxsw_core_res_get +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0x749556a2 mlxsw_afk_key_info_subset +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0x76a65e3b mlxsw_core_port_init +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0x77768221 mlxsw_core_module_max_width +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0x77d83398 mlxsw_core_read_frc_l +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 0x858c30d0 mlxsw_afa_block_create +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0x8854d198 mlxsw_reg_write +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0x8863a4f7 mlxsw_core_bus_device_register +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0x8ba5fa7e mlxsw_core_lag_mapping_set +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0x902c3533 mlxsw_core_schedule_dw +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0x963cfb6a mlxsw_core_resources_query +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 0x9e41f494 mlxsw_afk_encode +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0xa3d0d2b6 mlxsw_afa_block_append_fwd +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0xa7765e88 mlxsw_reg_query +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0xa7ccb62a mlxsw_afa_block_append_qos_dsfield +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0xa7f8978d mlxsw_core_trap_unregister +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0xa9d85c42 mlxsw_core_ptp_transmitted +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0xb0717797 mlxsw_afa_block_append_fid_set +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0xb2f24677 mlxsw_core_res_valid +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0xb416b050 mlxsw_core_skb_receive +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0xb5e762fa mlxsw_afk_values_add_buf +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 0xba05b3b0 mlxsw_core_emad_string_tlv_enable +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0xbc222a8d mlxsw_afk_clear +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0xbe82d6cc mlxsw_env_get_module_info +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0xbfb7df3c mlxsw_core_driver_priv +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0xbfd01f33 mlxsw_core_port_ib_set +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0xc9c2e4cc mlxsw_core_lag_mapping_clear +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 0xcd9a40a4 mlxsw_afa_block_append_drop +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0xce3539c9 mlxsw_core_rx_listener_register +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0xd1a82f0b mlxsw_core_lag_mapping_get +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0xd252e62d mlxsw_core_skb_transmit_busy +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 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 0xdeb1dc2e mlxsw_afa_block_first_kvdl_index +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0xdeff4950 mlxsw_core_event_listener_register +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0xe16986dd mlxsw_afa_block_activity_get +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0xecab212a mlxsw_afa_cookie_lookup +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0xf2ca3bae mlxsw_core_res_query_enabled +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0xf4909bea mlxsw_core_port_type_get +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0xf4ee6852 mlxsw_core_rx_listener_unregister +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0xf7fbba9f mlxsw_afa_block_append_qos_ecn +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0xfb04852c mlxsw_afa_create +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0xfbf8e0dc mlxsw_core_trap_register +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0xff007c25 mlxsw_core_cpu_port_fini +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_i2c 0x98281a33 mlxsw_i2c_driver_register +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_i2c 0xbde57cd6 mlxsw_i2c_driver_unregister +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_pci 0x7e875251 mlxsw_pci_driver_unregister +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_pci 0x9957acc6 mlxsw_pci_driver_register +EXPORT_SYMBOL drivers/net/ethernet/mscc/mscc_ocelot_common 0x01f7aa66 ocelot_port_readl +EXPORT_SYMBOL drivers/net/ethernet/mscc/mscc_ocelot_common 0x0b150222 ocelot_netdevice_nb +EXPORT_SYMBOL drivers/net/ethernet/mscc/mscc_ocelot_common 0x0cacef6d ocelot_hwstamp_set +EXPORT_SYMBOL drivers/net/ethernet/mscc/mscc_ocelot_common 0x130d0223 ocelot_get_ethtool_stats +EXPORT_SYMBOL drivers/net/ethernet/mscc/mscc_ocelot_common 0x1ba7e6d9 ocelot_fdb_del +EXPORT_SYMBOL drivers/net/ethernet/mscc/mscc_ocelot_common 0x1f6d39c4 ocelot_adjust_link +EXPORT_SYMBOL drivers/net/ethernet/mscc/mscc_ocelot_common 0x20e6457e ocelot_ptp_settime64 +EXPORT_SYMBOL drivers/net/ethernet/mscc/mscc_ocelot_common 0x246cbb9f ocelot_vlan_add +EXPORT_SYMBOL drivers/net/ethernet/mscc/mscc_ocelot_common 0x2778b8a9 ocelot_port_writel +EXPORT_SYMBOL drivers/net/ethernet/mscc/mscc_ocelot_common 0x34100e35 ocelot_fdb_add +EXPORT_SYMBOL drivers/net/ethernet/mscc/mscc_ocelot_common 0x3485615c __ocelot_rmw_ix +EXPORT_SYMBOL drivers/net/ethernet/mscc/mscc_ocelot_common 0x3a7e7b42 ocelot_ptp_adjfine +EXPORT_SYMBOL drivers/net/ethernet/mscc/mscc_ocelot_common 0x4100cb08 ocelot_deinit_timestamp +EXPORT_SYMBOL drivers/net/ethernet/mscc/mscc_ocelot_common 0x4b1b78e3 ocelot_ptp_verify +EXPORT_SYMBOL drivers/net/ethernet/mscc/mscc_ocelot_common 0x50a2b3ae __ocelot_write_ix +EXPORT_SYMBOL drivers/net/ethernet/mscc/mscc_ocelot_common 0x511c9ea1 ocelot_ptp_enable +EXPORT_SYMBOL drivers/net/ethernet/mscc/mscc_ocelot_common 0x52dba7b0 ocelot_port_bridge_leave +EXPORT_SYMBOL drivers/net/ethernet/mscc/mscc_ocelot_common 0x540f744a ocelot_init +EXPORT_SYMBOL drivers/net/ethernet/mscc/mscc_ocelot_common 0x5e5a9a8f ocelot_get_txtstamp +EXPORT_SYMBOL drivers/net/ethernet/mscc/mscc_ocelot_common 0x6725a9eb __ocelot_read_ix +EXPORT_SYMBOL drivers/net/ethernet/mscc/mscc_ocelot_common 0x6a21497a ocelot_set_ageing_time +EXPORT_SYMBOL drivers/net/ethernet/mscc/mscc_ocelot_common 0x73dffd80 ocelot_regmap_init +EXPORT_SYMBOL drivers/net/ethernet/mscc/mscc_ocelot_common 0x754e4ecb ocelot_ptp_adjtime +EXPORT_SYMBOL drivers/net/ethernet/mscc/mscc_ocelot_common 0x7757b732 ocelot_hwstamp_get +EXPORT_SYMBOL drivers/net/ethernet/mscc/mscc_ocelot_common 0x7db68d88 ocelot_port_policer_del +EXPORT_SYMBOL drivers/net/ethernet/mscc/mscc_ocelot_common 0x81cd42be ocelot_init_timestamp +EXPORT_SYMBOL drivers/net/ethernet/mscc/mscc_ocelot_common 0x8464356a ocelot_port_disable +EXPORT_SYMBOL drivers/net/ethernet/mscc/mscc_ocelot_common 0x8ea4d9e6 ocelot_port_enable +EXPORT_SYMBOL drivers/net/ethernet/mscc/mscc_ocelot_common 0x910f2fef ocelot_get_max_mtu +EXPORT_SYMBOL drivers/net/ethernet/mscc/mscc_ocelot_common 0x973d852a ocelot_ptp_gettime64 +EXPORT_SYMBOL drivers/net/ethernet/mscc/mscc_ocelot_common 0x9e23f399 ocelot_port_add_txtstamp_skb +EXPORT_SYMBOL drivers/net/ethernet/mscc/mscc_ocelot_common 0xa10798bc ocelot_bridge_stp_state_set +EXPORT_SYMBOL drivers/net/ethernet/mscc/mscc_ocelot_common 0xa1867a98 ocelot_regfields_init +EXPORT_SYMBOL drivers/net/ethernet/mscc/mscc_ocelot_common 0xa22b0043 ocelot_probe_port +EXPORT_SYMBOL drivers/net/ethernet/mscc/mscc_ocelot_common 0xae08a76d ocelot_port_bridge_join +EXPORT_SYMBOL drivers/net/ethernet/mscc/mscc_ocelot_common 0xaeabe529 ocelot_port_policer_add +EXPORT_SYMBOL drivers/net/ethernet/mscc/mscc_ocelot_common 0xb507317b ocelot_get_ts_info +EXPORT_SYMBOL drivers/net/ethernet/mscc/mscc_ocelot_common 0xb5551af4 ocelot_chip_init +EXPORT_SYMBOL drivers/net/ethernet/mscc/mscc_ocelot_common 0xc4447726 ocelot_deinit +EXPORT_SYMBOL drivers/net/ethernet/mscc/mscc_ocelot_common 0xccae3197 ocelot_configure_cpu +EXPORT_SYMBOL drivers/net/ethernet/mscc/mscc_ocelot_common 0xcfbd5de2 ocelot_port_vlan_filtering +EXPORT_SYMBOL drivers/net/ethernet/mscc/mscc_ocelot_common 0xd0348add ocelot_switchdev_nb +EXPORT_SYMBOL drivers/net/ethernet/mscc/mscc_ocelot_common 0xdd6733aa ocelot_vlan_del +EXPORT_SYMBOL drivers/net/ethernet/mscc/mscc_ocelot_common 0xe54a91e8 ocelot_switchdev_blocking_nb +EXPORT_SYMBOL drivers/net/ethernet/mscc/mscc_ocelot_common 0xe78b0b61 ocelot_port_set_maxlen +EXPORT_SYMBOL drivers/net/ethernet/mscc/mscc_ocelot_common 0xf5088106 ocelot_get_sset_count +EXPORT_SYMBOL drivers/net/ethernet/mscc/mscc_ocelot_common 0xf71839a0 ocelot_fdb_dump +EXPORT_SYMBOL drivers/net/ethernet/mscc/mscc_ocelot_common 0xf724e085 ocelot_get_strings +EXPORT_SYMBOL drivers/net/ethernet/mscc/mscc_ocelot_common 0xf7966cf7 ocelot_init_port +EXPORT_SYMBOL drivers/net/mdio 0x3e17f466 mdio_set_flag +EXPORT_SYMBOL drivers/net/mdio 0x60443957 mdio45_probe +EXPORT_SYMBOL drivers/net/mdio 0x63e0fee5 mdio45_links_ok +EXPORT_SYMBOL drivers/net/mdio 0x652fb0b6 mdio45_ethtool_ksettings_get_npage +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/mii 0x346430e5 mii_check_gmii_support +EXPORT_SYMBOL drivers/net/mii 0x5a1b6249 generic_mii_ioctl +EXPORT_SYMBOL drivers/net/mii 0x6f523fef mii_ethtool_set_link_ksettings +EXPORT_SYMBOL drivers/net/mii 0x861e5202 mii_check_link +EXPORT_SYMBOL drivers/net/mii 0x91191973 mii_ethtool_sset +EXPORT_SYMBOL drivers/net/mii 0xaf896b3b mii_ethtool_get_link_ksettings +EXPORT_SYMBOL drivers/net/mii 0xb658b426 mii_nway_restart +EXPORT_SYMBOL drivers/net/mii 0xbac287e4 mii_check_media +EXPORT_SYMBOL drivers/net/mii 0xf2dd0afc mii_ethtool_gset +EXPORT_SYMBOL drivers/net/mii 0xff71d1a9 mii_link_ok +EXPORT_SYMBOL drivers/net/phy/bcm-phy-lib 0x9403174b bcm54xx_auxctl_write +EXPORT_SYMBOL drivers/net/ppp/pppox 0x10df6adb pppox_ioctl +EXPORT_SYMBOL drivers/net/ppp/pppox 0x159385c2 pppox_compat_ioctl +EXPORT_SYMBOL drivers/net/ppp/pppox 0x5f5e523d register_pppox_proto +EXPORT_SYMBOL drivers/net/ppp/pppox 0xc74743de pppox_unbind_sock +EXPORT_SYMBOL drivers/net/ppp/pppox 0xe0ff7a18 unregister_pppox_proto +EXPORT_SYMBOL drivers/net/wan/hdlc 0x0ec3ea11 hdlc_start_xmit +EXPORT_SYMBOL drivers/net/wan/hdlc 0x2eee14c8 detach_hdlc_protocol +EXPORT_SYMBOL drivers/net/wan/hdlc 0x39cea5a2 alloc_hdlcdev +EXPORT_SYMBOL drivers/net/wan/hdlc 0x4cca0257 unregister_hdlc_device +EXPORT_SYMBOL drivers/net/wan/hdlc 0x4d15861f hdlc_ioctl +EXPORT_SYMBOL drivers/net/wan/hdlc 0x587964a3 hdlc_open +EXPORT_SYMBOL drivers/net/wan/hdlc 0x698ae66f unregister_hdlc_protocol +EXPORT_SYMBOL drivers/net/wan/hdlc 0x81111e0b hdlc_close +EXPORT_SYMBOL drivers/net/wan/hdlc 0x8566c4e9 attach_hdlc_protocol +EXPORT_SYMBOL drivers/net/wan/hdlc 0x86b5dcba register_hdlc_protocol +EXPORT_SYMBOL drivers/nfc/microread/microread 0x1c9f7e8e microread_probe +EXPORT_SYMBOL drivers/nfc/microread/microread 0xf914506b microread_remove +EXPORT_SYMBOL drivers/nfc/pn544/pn544 0x31ace5d8 pn544_hci_probe +EXPORT_SYMBOL drivers/nfc/pn544/pn544 0xd07a5b66 pn544_hci_remove +EXPORT_SYMBOL drivers/ntb/ntb 0x0edb17bd ntb_msg_event +EXPORT_SYMBOL drivers/ntb/ntb 0x252d8a84 ntb_link_event +EXPORT_SYMBOL drivers/ntb/ntb 0x2652fd61 ntb_msi_peer_trigger +EXPORT_SYMBOL drivers/ntb/ntb 0x343faa4a ntb_msi_init +EXPORT_SYMBOL drivers/ntb/ntb 0x3a55effb ntb_set_ctx +EXPORT_SYMBOL drivers/ntb/ntb 0x44006a44 ntb_msi_setup_mws +EXPORT_SYMBOL drivers/ntb/ntb 0x4d722079 ntb_default_peer_port_number +EXPORT_SYMBOL drivers/ntb/ntb 0x51e21bfb ntb_msi_peer_addr +EXPORT_SYMBOL drivers/ntb/ntb 0x5c52b5b7 ntbm_msi_request_threaded_irq +EXPORT_SYMBOL drivers/ntb/ntb 0x601e52a0 ntb_unregister_device +EXPORT_SYMBOL drivers/ntb/ntb 0x7151298f ntb_default_peer_port_idx +EXPORT_SYMBOL drivers/ntb/ntb 0x81809b38 ntb_clear_ctx +EXPORT_SYMBOL drivers/ntb/ntb 0x9a23244a ntb_db_event +EXPORT_SYMBOL drivers/ntb/ntb 0x9d41176c ntb_default_peer_port_count +EXPORT_SYMBOL drivers/ntb/ntb 0x9f7a6b92 __ntb_register_client +EXPORT_SYMBOL drivers/ntb/ntb 0x9f94a27f ntb_unregister_client +EXPORT_SYMBOL drivers/ntb/ntb 0xa583df6c ntb_msi_clear_mws +EXPORT_SYMBOL drivers/ntb/ntb 0xc70755a4 ntb_register_device +EXPORT_SYMBOL drivers/ntb/ntb 0xf855be6b ntb_default_port_number +EXPORT_SYMBOL drivers/ntb/ntb 0xfa4e693d ntbm_msi_free_irq +EXPORT_SYMBOL drivers/parport/parport 0x02205d4b parport_wait_event +EXPORT_SYMBOL drivers/parport/parport 0x027189e0 parport_put_port +EXPORT_SYMBOL drivers/parport/parport 0x0717033b parport_register_dev_model +EXPORT_SYMBOL drivers/parport/parport 0x0c8ea2f6 parport_wait_peripheral +EXPORT_SYMBOL drivers/parport/parport 0x1190c00a parport_ieee1284_read_byte +EXPORT_SYMBOL drivers/parport/parport 0x1e99d3f6 parport_ieee1284_ecp_write_data +EXPORT_SYMBOL drivers/parport/parport 0x2dce4eb8 parport_get_port +EXPORT_SYMBOL drivers/parport/parport 0x3b54e49f parport_register_port +EXPORT_SYMBOL drivers/parport/parport 0x3f01d34b parport_remove_port +EXPORT_SYMBOL drivers/parport/parport 0x415fd966 parport_write +EXPORT_SYMBOL drivers/parport/parport 0x4d2a941b parport_ieee1284_interrupt +EXPORT_SYMBOL drivers/parport/parport 0x4da482a3 parport_announce_port +EXPORT_SYMBOL drivers/parport/parport 0x4faaeaf6 __parport_register_driver +EXPORT_SYMBOL drivers/parport/parport 0x56804ca0 parport_read +EXPORT_SYMBOL drivers/parport/parport 0x5b438c50 parport_ieee1284_epp_write_addr +EXPORT_SYMBOL drivers/parport/parport 0x5e3a3912 parport_irq_handler +EXPORT_SYMBOL drivers/parport/parport 0x63c76cfc parport_negotiate +EXPORT_SYMBOL drivers/parport/parport 0x752dba47 parport_find_base +EXPORT_SYMBOL drivers/parport/parport 0x7c592721 parport_claim +EXPORT_SYMBOL drivers/parport/parport 0x9202b015 parport_del_port +EXPORT_SYMBOL drivers/parport/parport 0x94f26774 parport_ieee1284_ecp_read_data +EXPORT_SYMBOL drivers/parport/parport 0xa38f2d21 parport_set_timeout +EXPORT_SYMBOL drivers/parport/parport 0xb363ae11 parport_ieee1284_epp_write_data +EXPORT_SYMBOL drivers/parport/parport 0xb86baaee parport_ieee1284_write_compat +EXPORT_SYMBOL drivers/parport/parport 0xd9efac32 parport_ieee1284_epp_read_data +EXPORT_SYMBOL drivers/parport/parport 0xddcb6492 parport_ieee1284_epp_read_addr +EXPORT_SYMBOL drivers/parport/parport 0xde174a99 parport_claim_or_block +EXPORT_SYMBOL drivers/parport/parport 0xde38242b parport_unregister_driver +EXPORT_SYMBOL drivers/parport/parport 0xe022ac67 parport_ieee1284_read_nibble +EXPORT_SYMBOL drivers/parport/parport 0xe36234fe parport_unregister_device +EXPORT_SYMBOL drivers/parport/parport 0xf0157463 parport_release +EXPORT_SYMBOL drivers/parport/parport 0xf4037466 parport_find_number +EXPORT_SYMBOL drivers/parport/parport 0xf6b9f1b7 parport_ieee1284_ecp_write_addr +EXPORT_SYMBOL drivers/parport/parport_pc 0x5c89e033 parport_pc_probe_port +EXPORT_SYMBOL drivers/parport/parport_pc 0x6f7d701c parport_pc_unregister_port +EXPORT_SYMBOL drivers/pcmcia/pcmcia_core 0x212db8d2 pcmcia_socket_list +EXPORT_SYMBOL drivers/pcmcia/pcmcia_core 0x377d3fa9 pcmcia_parse_uevents +EXPORT_SYMBOL drivers/pcmcia/pcmcia_core 0x3d7a9295 pcmcia_unregister_socket +EXPORT_SYMBOL drivers/pcmcia/pcmcia_core 0x45b6d40b pcmcia_reset_card +EXPORT_SYMBOL drivers/pcmcia/pcmcia_core 0x5f6df251 pcmcia_register_socket +EXPORT_SYMBOL drivers/pcmcia/pcmcia_core 0x62a5680f pccard_register_pcmcia +EXPORT_SYMBOL drivers/pcmcia/pcmcia_core 0x6d5bc74e pcmcia_get_socket_by_nr +EXPORT_SYMBOL drivers/pcmcia/pcmcia_core 0xa5854bbd pcmcia_parse_events +EXPORT_SYMBOL drivers/pcmcia/pcmcia_core 0xce76950f pcmcia_get_socket +EXPORT_SYMBOL drivers/pcmcia/pcmcia_core 0xcf97f3bd dead_socket +EXPORT_SYMBOL drivers/pcmcia/pcmcia_core 0xd6a375e6 pcmcia_put_socket +EXPORT_SYMBOL drivers/pcmcia/pcmcia_core 0xf86c5cbb pcmcia_socket_class +EXPORT_SYMBOL drivers/pcmcia/pcmcia_core 0xf942709b pcmcia_socket_list_rwsem +EXPORT_SYMBOL drivers/pcmcia/pcmcia_rsrc 0x155a70bc pccard_static_ops +EXPORT_SYMBOL drivers/platform/x86/intel_punit_ipc 0x3a0b563a intel_punit_ipc_simple_command +EXPORT_SYMBOL drivers/platform/x86/wmi 0x0e50b107 __wmi_driver_register +EXPORT_SYMBOL drivers/platform/x86/wmi 0xa446745c wmi_driver_unregister +EXPORT_SYMBOL drivers/rpmsg/rpmsg_core 0x125ddf5c unregister_rpmsg_driver +EXPORT_SYMBOL drivers/rpmsg/rpmsg_core 0x256e42b8 rpmsg_send +EXPORT_SYMBOL drivers/rpmsg/rpmsg_core 0x2d6630b6 rpmsg_send_offchannel +EXPORT_SYMBOL drivers/rpmsg/rpmsg_core 0x2e08555d rpmsg_trysend_offchannel +EXPORT_SYMBOL drivers/rpmsg/rpmsg_core 0x3299af8e rpmsg_trysendto +EXPORT_SYMBOL drivers/rpmsg/rpmsg_core 0x47b1fd52 rpmsg_create_ept +EXPORT_SYMBOL drivers/rpmsg/rpmsg_core 0x682918b6 rpmsg_unregister_device +EXPORT_SYMBOL drivers/rpmsg/rpmsg_core 0x78650461 rpmsg_sendto +EXPORT_SYMBOL drivers/rpmsg/rpmsg_core 0x90eaf6a9 rpmsg_register_device +EXPORT_SYMBOL drivers/rpmsg/rpmsg_core 0x9ca1f721 rpmsg_destroy_ept +EXPORT_SYMBOL drivers/rpmsg/rpmsg_core 0xe7db4fc6 rpmsg_poll +EXPORT_SYMBOL drivers/rpmsg/rpmsg_core 0xec255d57 rpmsg_trysend +EXPORT_SYMBOL drivers/rpmsg/rpmsg_core 0xf2ef6c81 __register_rpmsg_driver +EXPORT_SYMBOL drivers/rpmsg/rpmsg_core 0xfeb765d6 rpmsg_find_device +EXPORT_SYMBOL drivers/scsi/53c700 0x3d9cece0 NCR_700_intr +EXPORT_SYMBOL drivers/scsi/53c700 0x834bdb66 NCR_700_detect +EXPORT_SYMBOL drivers/scsi/53c700 0xfa478c85 NCR_700_release +EXPORT_SYMBOL drivers/scsi/esp_scsi 0x016b9ac2 scsi_esp_register +EXPORT_SYMBOL drivers/scsi/esp_scsi 0x33399a27 scsi_esp_template +EXPORT_SYMBOL drivers/scsi/esp_scsi 0x40be954b scsi_esp_unregister +EXPORT_SYMBOL drivers/scsi/esp_scsi 0x4a29ab38 scsi_esp_intr +EXPORT_SYMBOL drivers/scsi/esp_scsi 0x7db99b6d scsi_esp_cmd +EXPORT_SYMBOL drivers/scsi/libsas/libsas 0x1955cbe5 sas_prep_resume_ha +EXPORT_SYMBOL drivers/scsi/libsas/libsas 0x4a8e3d34 try_test_sas_gpio_gp_bit +EXPORT_SYMBOL drivers/scsi/libsas/libsas 0x621f6e98 sas_suspend_ha +EXPORT_SYMBOL drivers/scsi/libsas/libsas 0x636b3a76 sas_resume_ha +EXPORT_SYMBOL drivers/scsi/megaraid/megaraid_mm 0x8d5a2635 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 0x03e12b7d qlt_free_cmd +EXPORT_SYMBOL drivers/scsi/qla2xxx/qla2xxx 0x0f4ed1de qlt_lport_deregister +EXPORT_SYMBOL drivers/scsi/qla2xxx/qla2xxx 0x1451bb16 qlt_lport_register +EXPORT_SYMBOL drivers/scsi/qla2xxx/qla2xxx 0x20a31e4f qlt_abort_cmd +EXPORT_SYMBOL drivers/scsi/qla2xxx/qla2xxx 0x53e4ecd4 qlt_free_mcmd +EXPORT_SYMBOL drivers/scsi/qla2xxx/qla2xxx 0x7517fec3 qlt_xmit_tm_rsp +EXPORT_SYMBOL drivers/scsi/qla2xxx/qla2xxx 0x81126187 qlt_stop_phase1 +EXPORT_SYMBOL drivers/scsi/qla2xxx/qla2xxx 0xa466200a qlt_stop_phase2 +EXPORT_SYMBOL drivers/scsi/qla2xxx/qla2xxx 0xb6f9496c qlt_xmit_response +EXPORT_SYMBOL drivers/scsi/qla2xxx/qla2xxx 0xc6609371 qlt_rdy_to_xfer +EXPORT_SYMBOL drivers/scsi/qla2xxx/qla2xxx 0xdfbfdc50 qlt_enable_vha +EXPORT_SYMBOL drivers/scsi/qla2xxx/qla2xxx 0xec971904 qlt_unreg_sess +EXPORT_SYMBOL drivers/scsi/raid_class 0x4eedda1b raid_class_release +EXPORT_SYMBOL drivers/scsi/raid_class 0xc5bab06e raid_class_attach +EXPORT_SYMBOL drivers/scsi/raid_class 0xfb94196f raid_component_add +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0x01e8297e sas_release_transport +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0x03fe496f sas_port_add +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0x0eacce6d sas_phy_alloc +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0x1645c11d scsi_is_sas_port +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0x30b49075 sas_port_alloc +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0x312bca5c sas_port_add_phy +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0x3425d4cd sas_port_delete_phy +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0x377d3c6d sas_read_port_mode_page +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0x44e011c0 sas_rphy_remove +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0x47f0777b sas_remove_children +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0x49ed73e2 sas_rphy_unlink +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0x4a318651 sas_port_get_phy +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0x4ccc03c5 sas_phy_add +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0x637d6b22 sas_port_delete +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0x63da60c0 sas_rphy_delete +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0x696ad961 sas_phy_free +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0x6e21b7e9 sas_get_address +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0x72edabf1 sas_port_mark_backlink +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0x74bbc919 sas_rphy_free +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0x7b106df6 sas_expander_alloc +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0x7ea1c920 sas_port_free +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0x7eb09992 sas_remove_host +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0x97eead72 sas_phy_delete +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0xa006442e sas_end_device_alloc +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0xb31575f6 sas_rphy_add +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0xc397f86a sas_port_alloc_num +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0xe06920c4 sas_attach_transport +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0xedd5a3c0 scsi_is_sas_rphy +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0xfaa9d027 scsi_is_sas_phy +EXPORT_SYMBOL drivers/scsi/scsi_transport_spi 0x2f6f8a34 spi_attach_transport +EXPORT_SYMBOL drivers/scsi/scsi_transport_spi 0x35fdae36 spi_display_xfer_agreement +EXPORT_SYMBOL drivers/scsi/scsi_transport_spi 0x3686ea09 spi_print_msg +EXPORT_SYMBOL drivers/scsi/scsi_transport_spi 0x468de0cb spi_dv_device +EXPORT_SYMBOL drivers/scsi/scsi_transport_spi 0x6daa0a38 spi_release_transport +EXPORT_SYMBOL drivers/scsi/scsi_transport_spi 0xbca3fe59 spi_schedule_dv_device +EXPORT_SYMBOL drivers/scsi/scsi_transport_srp 0x27cfb709 srp_rport_get +EXPORT_SYMBOL drivers/scsi/scsi_transport_srp 0x405b6e05 srp_parse_tmo +EXPORT_SYMBOL drivers/scsi/scsi_transport_srp 0x72c6cb50 srp_timed_out +EXPORT_SYMBOL drivers/scsi/scsi_transport_srp 0xa27ab7be srp_reconnect_rport +EXPORT_SYMBOL drivers/scsi/scsi_transport_srp 0xaa440ec1 srp_start_tl_fail_timers +EXPORT_SYMBOL drivers/scsi/scsi_transport_srp 0xc41aa4a4 srp_rport_put +EXPORT_SYMBOL drivers/soundwire/soundwire-bus 0x16d1706b sdw_prepare_stream +EXPORT_SYMBOL drivers/soundwire/soundwire-bus 0x17db3036 sdw_nread +EXPORT_SYMBOL drivers/soundwire/soundwire-bus 0x1a765daf sdw_nwrite +EXPORT_SYMBOL drivers/soundwire/soundwire-bus 0x1deee061 sdw_find_row_index +EXPORT_SYMBOL drivers/soundwire/soundwire-bus 0x1e89d99e sdw_stream_add_slave +EXPORT_SYMBOL drivers/soundwire/soundwire-bus 0x208e5c54 sdw_stream_remove_master +EXPORT_SYMBOL drivers/soundwire/soundwire-bus 0x4c0fe49c sdw_clear_slave_status +EXPORT_SYMBOL drivers/soundwire/soundwire-bus 0x4cde88bf sdw_disable_stream +EXPORT_SYMBOL drivers/soundwire/soundwire-bus 0x4ddaa175 sdw_bus_exit_clk_stop +EXPORT_SYMBOL drivers/soundwire/soundwire-bus 0x60e31fbb sdw_find_col_index +EXPORT_SYMBOL drivers/soundwire/soundwire-bus 0x65b7103a sdw_slave_read_prop +EXPORT_SYMBOL drivers/soundwire/soundwire-bus 0x66714477 sdw_bus_master_delete +EXPORT_SYMBOL drivers/soundwire/soundwire-bus 0x71891d59 sdw_deprepare_stream +EXPORT_SYMBOL drivers/soundwire/soundwire-bus 0x815b01bb sdw_bus_prep_clk_stop +EXPORT_SYMBOL drivers/soundwire/soundwire-bus 0x9e122d79 sdw_alloc_stream +EXPORT_SYMBOL drivers/soundwire/soundwire-bus 0xa1de83d7 sdw_master_read_prop +EXPORT_SYMBOL drivers/soundwire/soundwire-bus 0xad64b147 sdw_handle_slave_status +EXPORT_SYMBOL drivers/soundwire/soundwire-bus 0xb9fd2eee sdw_bus_clk_stop +EXPORT_SYMBOL drivers/soundwire/soundwire-bus 0xbbec2c2e sdw_enable_stream +EXPORT_SYMBOL drivers/soundwire/soundwire-bus 0xbf5ce94c sdw_stream_add_master +EXPORT_SYMBOL drivers/soundwire/soundwire-bus 0xd04bf127 sdw_bus_master_add +EXPORT_SYMBOL drivers/soundwire/soundwire-bus 0xd1a3373a sdw_write +EXPORT_SYMBOL drivers/soundwire/soundwire-bus 0xda5bce09 sdw_release_stream +EXPORT_SYMBOL drivers/soundwire/soundwire-bus 0xe8c862a5 sdw_stream_remove_slave +EXPORT_SYMBOL drivers/soundwire/soundwire-bus 0xebc80535 sdw_read +EXPORT_SYMBOL drivers/ssb/ssb 0x01eacce5 ssb_commit_settings +EXPORT_SYMBOL drivers/ssb/ssb 0x0b4d40aa ssb_bus_suspend +EXPORT_SYMBOL drivers/ssb/ssb 0x2bd3e6d3 ssb_pcicore_dev_irqvecs_enable +EXPORT_SYMBOL drivers/ssb/ssb 0x41f58c50 ssb_set_devtypedata +EXPORT_SYMBOL drivers/ssb/ssb 0x46f66acc ssb_pmu_set_ldo_paref +EXPORT_SYMBOL drivers/ssb/ssb 0x48b66f25 ssb_device_disable +EXPORT_SYMBOL drivers/ssb/ssb 0x4fac2710 ssb_bus_powerup +EXPORT_SYMBOL drivers/ssb/ssb 0x51867c63 ssb_driver_unregister +EXPORT_SYMBOL drivers/ssb/ssb 0x5bfbff0c ssb_device_is_enabled +EXPORT_SYMBOL drivers/ssb/ssb 0x6c6725e9 ssb_clockspeed +EXPORT_SYMBOL drivers/ssb/ssb 0x741208a5 ssb_pcihost_register +EXPORT_SYMBOL drivers/ssb/ssb 0x74b5f887 ssb_device_enable +EXPORT_SYMBOL drivers/ssb/ssb 0x75f58eb5 ssb_bus_may_powerdown +EXPORT_SYMBOL drivers/ssb/ssb 0x912a21ab ssb_bus_unregister +EXPORT_SYMBOL drivers/ssb/ssb 0x94a38130 ssb_dma_translation +EXPORT_SYMBOL drivers/ssb/ssb 0xafbd9618 ssb_chipco_gpio_control +EXPORT_SYMBOL drivers/ssb/ssb 0xc0b46827 ssb_pmu_set_ldo_voltage +EXPORT_SYMBOL drivers/ssb/ssb 0xc2dc54ae ssb_bus_resume +EXPORT_SYMBOL drivers/ssb/ssb 0xcb17f1cb ssb_admatch_base +EXPORT_SYMBOL drivers/ssb/ssb 0xd10eee47 __ssb_driver_register +EXPORT_SYMBOL drivers/ssb/ssb 0xdfc7c6ef ssb_admatch_size +EXPORT_SYMBOL drivers/staging/fbtft/fbtft 0x046cd601 fbtft_register_backlight +EXPORT_SYMBOL drivers/staging/fbtft/fbtft 0x04f7c5bf fbtft_write_gpio16_wr +EXPORT_SYMBOL drivers/staging/fbtft/fbtft 0x07fc5794 fbtft_write_reg16_bus16 +EXPORT_SYMBOL drivers/staging/fbtft/fbtft 0x21f3d4f2 fbtft_register_framebuffer +EXPORT_SYMBOL drivers/staging/fbtft/fbtft 0x2eff94e2 fbtft_write_spi_emulate_9 +EXPORT_SYMBOL drivers/staging/fbtft/fbtft 0x345375fd fbtft_write_vmem16_bus9 +EXPORT_SYMBOL drivers/staging/fbtft/fbtft 0x38cb7bbb fbtft_unregister_backlight +EXPORT_SYMBOL drivers/staging/fbtft/fbtft 0x41936085 fbtft_framebuffer_release +EXPORT_SYMBOL drivers/staging/fbtft/fbtft 0x7649cf76 fbtft_write_reg8_bus9 +EXPORT_SYMBOL drivers/staging/fbtft/fbtft 0x7a619f4d fbtft_unregister_framebuffer +EXPORT_SYMBOL drivers/staging/fbtft/fbtft 0x80a2a947 fbtft_write_vmem16_bus8 +EXPORT_SYMBOL drivers/staging/fbtft/fbtft 0x86a471e0 fbtft_read_spi +EXPORT_SYMBOL drivers/staging/fbtft/fbtft 0x87eac90f fbtft_remove_common +EXPORT_SYMBOL drivers/staging/fbtft/fbtft 0x89f93470 fbtft_write_vmem16_bus16 +EXPORT_SYMBOL drivers/staging/fbtft/fbtft 0x8ac4d698 fbtft_write_gpio16_wr_latched +EXPORT_SYMBOL drivers/staging/fbtft/fbtft 0x95204036 fbtft_framebuffer_alloc +EXPORT_SYMBOL drivers/staging/fbtft/fbtft 0x97c5960e fbtft_dbg_hex +EXPORT_SYMBOL drivers/staging/fbtft/fbtft 0x9d0af478 fbtft_probe_common +EXPORT_SYMBOL drivers/staging/fbtft/fbtft 0xa805cc3c fbtft_write_buf_dc +EXPORT_SYMBOL drivers/staging/fbtft/fbtft 0xb8b32c1c fbtft_write_reg8_bus8 +EXPORT_SYMBOL drivers/staging/fbtft/fbtft 0xbae562d7 fbtft_write_gpio8_wr +EXPORT_SYMBOL drivers/staging/fbtft/fbtft 0xe3a7ed0e fbtft_write_spi +EXPORT_SYMBOL drivers/staging/fbtft/fbtft 0xf2f89b6e fbtft_init_display +EXPORT_SYMBOL drivers/staging/fbtft/fbtft 0xf3b04169 fbtft_write_reg16_bus8 +EXPORT_SYMBOL drivers/staging/fbtft/fbtft 0xf5c29bb8 fbtft_write_vmem8_bus8 +EXPORT_SYMBOL drivers/staging/gasket/gasket 0x065f9c9d gasket_page_table_max_size +EXPORT_SYMBOL drivers/staging/gasket/gasket 0x339c2b95 gasket_page_table_map +EXPORT_SYMBOL drivers/staging/gasket/gasket 0x372973e0 gasket_page_table_are_addrs_bad +EXPORT_SYMBOL drivers/staging/gasket/gasket 0x38c3d415 gasket_page_table_num_active_pages +EXPORT_SYMBOL drivers/staging/gasket/gasket 0x39623111 gasket_sysfs_get_device_data +EXPORT_SYMBOL drivers/staging/gasket/gasket 0x3be54987 gasket_unregister_device +EXPORT_SYMBOL drivers/staging/gasket/gasket 0x4109757c gasket_page_table_partition +EXPORT_SYMBOL drivers/staging/gasket/gasket 0x4292ff96 gasket_page_table_is_dev_addr_bad +EXPORT_SYMBOL drivers/staging/gasket/gasket 0x4c4ff973 gasket_sysfs_get_attr +EXPORT_SYMBOL drivers/staging/gasket/gasket 0x5088675c gasket_get_ioctl_permissions_cb +EXPORT_SYMBOL drivers/staging/gasket/gasket 0x62216ac7 gasket_reset_nolock +EXPORT_SYMBOL drivers/staging/gasket/gasket 0x6abfb07a gasket_disable_device +EXPORT_SYMBOL drivers/staging/gasket/gasket 0x6f17fae4 gasket_sysfs_create_entries +EXPORT_SYMBOL drivers/staging/gasket/gasket 0x77311f6a gasket_page_table_unmap_all +EXPORT_SYMBOL drivers/staging/gasket/gasket 0x7e3326d1 gasket_enable_device +EXPORT_SYMBOL drivers/staging/gasket/gasket 0x8c92da47 gasket_page_table_num_simple_entries +EXPORT_SYMBOL drivers/staging/gasket/gasket 0x91659d9e gasket_sysfs_put_device_data +EXPORT_SYMBOL drivers/staging/gasket/gasket 0x97f304fd gasket_sysfs_put_attr +EXPORT_SYMBOL drivers/staging/gasket/gasket 0x9fa6c9cc gasket_sysfs_register_store +EXPORT_SYMBOL drivers/staging/gasket/gasket 0xb73eacac gasket_reset +EXPORT_SYMBOL drivers/staging/gasket/gasket 0xbaa2668a gasket_num_name_lookup +EXPORT_SYMBOL drivers/staging/gasket/gasket 0xbaf2f8cd gasket_page_table_unmap +EXPORT_SYMBOL drivers/staging/gasket/gasket 0xc225208c gasket_page_table_num_entries +EXPORT_SYMBOL drivers/staging/gasket/gasket 0xca8ac248 gasket_register_device +EXPORT_SYMBOL drivers/staging/gasket/gasket 0xe851b463 gasket_pci_remove_device +EXPORT_SYMBOL drivers/staging/gasket/gasket 0xeaffae48 gasket_mm_unmap_region +EXPORT_SYMBOL drivers/staging/gasket/gasket 0xf136b5ef gasket_wait_with_reschedule +EXPORT_SYMBOL drivers/staging/gasket/gasket 0xfafb0365 gasket_pci_add_device +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x048ff931 iscsit_build_logout_rsp +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x04d36dd3 iscsit_handle_logout_cmd +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x071fb218 iscsit_handle_task_mgt_cmd +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x0ae09e54 iscsit_process_scsi_cmd +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x142a8222 iscsit_cause_connection_reinstatement +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x14a53156 iscsit_increment_maxcmdsn +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x1ea0efbd iscsit_response_queue +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x21e298f4 iscsit_register_transport +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x352e85ba iscsit_queue_rsp +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x3cabb007 iscsit_build_datain_pdu +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x3cfcf9ea iscsit_add_reject +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x3dc05ba0 iscsit_set_unsolicited_dataout +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x3f8df8d4 iscsit_setup_nop_out +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x4a748334 iscsit_build_nopin_rsp +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x4a792a94 iscsit_find_cmd_from_itt +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x4d87cac2 iscsit_free_cmd +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x5533e9e3 iscsit_build_r2ts_for_cmd +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x587319d6 iscsit_setup_scsi_cmd +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x5a80be8e iscsit_unregister_transport +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x60a7227c iscsit_release_cmd +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x6178b829 iscsit_sequence_cmd +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x69178ada iscsit_handle_snack +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x6d7729ab iscsit_process_text_cmd +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x725516b3 iscsit_setup_text_cmd +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x725da084 iscsit_tmr_post_handler +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x797a905e iscsit_process_nop_out +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x8c86991b __iscsit_check_dataout_hdr +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x9128eb47 iscsit_check_dataout_hdr +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x9169da68 iscsit_reject_cmd +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x94d50297 iscsit_logout_post_handler +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x9b8ac259 iscsit_add_cmd_to_immediate_queue +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0xa0eb3b39 iscsit_stop_dataout_timer +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0xa24ec494 iscsit_aborted_task +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0xa3d7306f iscsit_build_task_mgt_rsp +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0xab27b6f7 iscsit_build_rsp_pdu +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0xac9a2261 iscsi_change_param_sprintf +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0xb84474aa iscsit_build_reject +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0xbec23612 iscsi_target_check_login_request +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0xbee9b338 iscsit_build_text_rsp +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0xc4d64d6d iscsit_immediate_queue +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0xce3bdbf1 iscsit_check_dataout_payload +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0xde84e284 iscsit_allocate_cmd +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0xde90e9c3 iscsit_get_datain_values +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0xf2e8350d iscsit_find_cmd_from_itt_or_dump +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0xf34332f0 iscsi_find_param_from_key +EXPORT_SYMBOL drivers/target/target_core_mod 0x051f7187 target_show_dynamic_sessions +EXPORT_SYMBOL drivers/target/target_core_mod 0x079e17f7 target_sess_cmd_list_set_waiting +EXPORT_SYMBOL drivers/target/target_core_mod 0x0871ffd6 transport_set_vpd_ident +EXPORT_SYMBOL drivers/target/target_core_mod 0x101a33c0 target_depend_item +EXPORT_SYMBOL drivers/target/target_core_mod 0x142072c0 transport_set_vpd_assoc +EXPORT_SYMBOL drivers/target/target_core_mod 0x23c85df1 core_tpg_set_initiator_node_queue_depth +EXPORT_SYMBOL drivers/target/target_core_mod 0x2689759c target_lun_is_rdonly +EXPORT_SYMBOL drivers/target/target_core_mod 0x2793fd90 target_backend_unregister +EXPORT_SYMBOL drivers/target/target_core_mod 0x2b4299cd transport_kmap_data_sg +EXPORT_SYMBOL drivers/target/target_core_mod 0x2c4859f8 target_get_sess_cmd +EXPORT_SYMBOL drivers/target/target_core_mod 0x2ed55e3f __transport_register_session +EXPORT_SYMBOL drivers/target/target_core_mod 0x323c6b08 transport_backend_register +EXPORT_SYMBOL drivers/target/target_core_mod 0x35f908a7 transport_generic_handle_tmr +EXPORT_SYMBOL drivers/target/target_core_mod 0x369f5200 sbc_dif_copy_prot +EXPORT_SYMBOL drivers/target/target_core_mod 0x38ba2cf6 transport_lookup_cmd_lun +EXPORT_SYMBOL drivers/target/target_core_mod 0x3a20a9d7 transport_set_vpd_ident_type +EXPORT_SYMBOL drivers/target/target_core_mod 0x4d2ac138 passthrough_parse_cdb +EXPORT_SYMBOL drivers/target/target_core_mod 0x5059043d transport_wait_for_tasks +EXPORT_SYMBOL drivers/target/target_core_mod 0x516758fd sbc_attrib_attrs +EXPORT_SYMBOL drivers/target/target_core_mod 0x52eb961c core_tpg_register +EXPORT_SYMBOL drivers/target/target_core_mod 0x563a7242 sbc_get_write_same_sectors +EXPORT_SYMBOL drivers/target/target_core_mod 0x5690a6da target_register_template +EXPORT_SYMBOL drivers/target/target_core_mod 0x5c548344 target_tpg_has_node_acl +EXPORT_SYMBOL drivers/target/target_core_mod 0x5eadc668 transport_init_session +EXPORT_SYMBOL drivers/target/target_core_mod 0x5ff3129d target_configure_unmap_from_queue +EXPORT_SYMBOL drivers/target/target_core_mod 0x619d51dc target_submit_cmd_map_sgls +EXPORT_SYMBOL drivers/target/target_core_mod 0x636b3a2d sbc_dif_verify +EXPORT_SYMBOL drivers/target/target_core_mod 0x638bffb7 target_free_sgl +EXPORT_SYMBOL drivers/target/target_core_mod 0x6a1d6605 transport_alloc_session +EXPORT_SYMBOL drivers/target/target_core_mod 0x6b4dc360 target_cmd_parse_cdb +EXPORT_SYMBOL drivers/target/target_core_mod 0x6d7502d7 sbc_get_device_type +EXPORT_SYMBOL drivers/target/target_core_mod 0x6ecd92da transport_register_session +EXPORT_SYMBOL drivers/target/target_core_mod 0x6f36da6f spc_emulate_evpd_83 +EXPORT_SYMBOL drivers/target/target_core_mod 0x70b1f11d core_tpg_get_initiator_node_acl +EXPORT_SYMBOL drivers/target/target_core_mod 0x7344703a transport_lookup_tmr_lun +EXPORT_SYMBOL drivers/target/target_core_mod 0x754743b9 core_alua_check_nonop_delay +EXPORT_SYMBOL drivers/target/target_core_mod 0x7a1d0d3c target_alloc_sgl +EXPORT_SYMBOL drivers/target/target_core_mod 0x8f0d852a target_remove_session +EXPORT_SYMBOL drivers/target/target_core_mod 0x90adc4f6 target_complete_cmd_with_length +EXPORT_SYMBOL drivers/target/target_core_mod 0x93929352 passthrough_pr_attrib_attrs +EXPORT_SYMBOL drivers/target/target_core_mod 0x973f43d7 transport_deregister_session +EXPORT_SYMBOL drivers/target/target_core_mod 0x9a25d6b3 target_put_sess_cmd +EXPORT_SYMBOL drivers/target/target_core_mod 0x9c755e58 spc_emulate_report_luns +EXPORT_SYMBOL drivers/target/target_core_mod 0x9d9076b4 target_complete_cmd +EXPORT_SYMBOL drivers/target/target_core_mod 0x9f32e0ec core_tpg_set_initiator_node_tag +EXPORT_SYMBOL drivers/target/target_core_mod 0x9f3a065d sbc_parse_cdb +EXPORT_SYMBOL drivers/target/target_core_mod 0x9fda6919 target_nacl_find_deve +EXPORT_SYMBOL drivers/target/target_core_mod 0xa3cc6ccd spc_emulate_inquiry_std +EXPORT_SYMBOL drivers/target/target_core_mod 0xa5fc3926 core_tpg_deregister +EXPORT_SYMBOL drivers/target/target_core_mod 0xa6d7e3b3 transport_generic_free_cmd +EXPORT_SYMBOL drivers/target/target_core_mod 0xaa5625ba core_tpg_check_initiator_node_acl +EXPORT_SYMBOL drivers/target/target_core_mod 0xacc63912 transport_init_se_cmd +EXPORT_SYMBOL drivers/target/target_core_mod 0xad6bdb76 target_undepend_item +EXPORT_SYMBOL drivers/target/target_core_mod 0xae9b644c transport_deregister_session_configfs +EXPORT_SYMBOL drivers/target/target_core_mod 0xb08ae6d4 core_tmr_alloc_req +EXPORT_SYMBOL drivers/target/target_core_mod 0xb213cd07 target_execute_cmd +EXPORT_SYMBOL drivers/target/target_core_mod 0xbd5c976d target_wait_for_sess_cmds +EXPORT_SYMBOL drivers/target/target_core_mod 0xbdef017e target_to_linux_sector +EXPORT_SYMBOL drivers/target/target_core_mod 0xc468a82b transport_kunmap_data_sg +EXPORT_SYMBOL drivers/target/target_core_mod 0xc5e829d3 transport_alloc_session_tags +EXPORT_SYMBOL drivers/target/target_core_mod 0xc8b81fb1 target_put_nacl +EXPORT_SYMBOL drivers/target/target_core_mod 0xca047ef0 target_send_busy +EXPORT_SYMBOL drivers/target/target_core_mod 0xcdb629a6 transport_generic_request_failure +EXPORT_SYMBOL drivers/target/target_core_mod 0xd296a55d spc_parse_cdb +EXPORT_SYMBOL drivers/target/target_core_mod 0xd5e20f71 core_allocate_nexus_loss_ua +EXPORT_SYMBOL drivers/target/target_core_mod 0xd608fd00 target_unregister_template +EXPORT_SYMBOL drivers/target/target_core_mod 0xd85bdae7 transport_handle_cdb_direct +EXPORT_SYMBOL drivers/target/target_core_mod 0xe2f1a5b5 target_submit_tmr +EXPORT_SYMBOL drivers/target/target_core_mod 0xe484e8f1 transport_send_check_condition_and_sense +EXPORT_SYMBOL drivers/target/target_core_mod 0xe5501806 target_setup_session +EXPORT_SYMBOL drivers/target/target_core_mod 0xea8187ab target_cmd_init_cdb +EXPORT_SYMBOL drivers/target/target_core_mod 0xee449acb passthrough_attrib_attrs +EXPORT_SYMBOL drivers/target/target_core_mod 0xf37023da transport_free_session +EXPORT_SYMBOL drivers/target/target_core_mod 0xf3c2dfe0 transport_set_vpd_proto_id +EXPORT_SYMBOL drivers/target/target_core_mod 0xf62a3f8c transport_copy_sense_to_cmd +EXPORT_SYMBOL drivers/target/target_core_mod 0xf7db5f1d transport_generic_new_cmd +EXPORT_SYMBOL drivers/target/target_core_mod 0xfb4ffe0a target_submit_cmd +EXPORT_SYMBOL drivers/target/target_core_mod 0xfb5f9a7f target_show_cmd +EXPORT_SYMBOL drivers/vfio/mdev/mdev 0x01993060 mdev_parent_dev +EXPORT_SYMBOL drivers/vfio/mdev/mdev 0x032b28de mdev_set_drvdata +EXPORT_SYMBOL drivers/vfio/mdev/mdev 0x175e307c mdev_set_iommu_device +EXPORT_SYMBOL drivers/vfio/mdev/mdev 0x254c8655 mdev_unregister_device +EXPORT_SYMBOL drivers/vfio/mdev/mdev 0x2f7018ce mdev_register_driver +EXPORT_SYMBOL drivers/vfio/mdev/mdev 0x5cefee5a mdev_unregister_driver +EXPORT_SYMBOL drivers/vfio/mdev/mdev 0x60adb184 mdev_from_dev +EXPORT_SYMBOL drivers/vfio/mdev/mdev 0x63994997 mdev_uuid +EXPORT_SYMBOL drivers/vfio/mdev/mdev 0x9c892021 mdev_get_drvdata +EXPORT_SYMBOL drivers/vfio/mdev/mdev 0x9e551e5e mdev_get_iommu_device +EXPORT_SYMBOL drivers/vfio/mdev/mdev 0xef898026 mdev_register_device +EXPORT_SYMBOL drivers/vfio/mdev/mdev 0xfccfb5d2 mdev_dev +EXPORT_SYMBOL drivers/vhost/vhost 0x0670431e vhost_chr_poll +EXPORT_SYMBOL drivers/vhost/vhost 0x8079c71f vhost_chr_write_iter +EXPORT_SYMBOL drivers/vhost/vringh 0x3b304ebb vringh_iov_push_user +EXPORT_SYMBOL drivers/vhost/vringh 0x3ecc1eea vringh_getdesc_kern +EXPORT_SYMBOL drivers/vhost/vringh 0x4311cd91 vringh_iov_pull_user +EXPORT_SYMBOL drivers/vhost/vringh 0x44d6f41b vringh_notify_enable_kern +EXPORT_SYMBOL drivers/vhost/vringh 0x4b6a6e23 vringh_iov_pull_iotlb +EXPORT_SYMBOL drivers/vhost/vringh 0x4d0529ee vringh_complete_multi_user +EXPORT_SYMBOL drivers/vhost/vringh 0x56f694fc vringh_abandon_kern +EXPORT_SYMBOL drivers/vhost/vringh 0x58bc86ac vringh_complete_user +EXPORT_SYMBOL drivers/vhost/vringh 0x5aa88061 vringh_init_user +EXPORT_SYMBOL drivers/vhost/vringh 0x5e47ee29 vringh_notify_enable_user +EXPORT_SYMBOL drivers/vhost/vringh 0x6d95262b vringh_getdesc_user +EXPORT_SYMBOL drivers/vhost/vringh 0x80ad788a vringh_notify_disable_user +EXPORT_SYMBOL drivers/vhost/vringh 0x85665842 vringh_notify_enable_iotlb +EXPORT_SYMBOL drivers/vhost/vringh 0x8701069c vringh_abandon_iotlb +EXPORT_SYMBOL drivers/vhost/vringh 0x8bfb5a2b vringh_complete_iotlb +EXPORT_SYMBOL drivers/vhost/vringh 0x8d40c6f4 vringh_getdesc_iotlb +EXPORT_SYMBOL drivers/vhost/vringh 0x8e78a074 vringh_need_notify_user +EXPORT_SYMBOL drivers/vhost/vringh 0x91b5a92c vringh_abandon_user +EXPORT_SYMBOL drivers/vhost/vringh 0x97fa07e9 vringh_iov_push_kern +EXPORT_SYMBOL drivers/vhost/vringh 0xac2d6746 vringh_init_kern +EXPORT_SYMBOL drivers/vhost/vringh 0xaf01a583 vringh_set_iotlb +EXPORT_SYMBOL drivers/vhost/vringh 0xbf4f4fbd vringh_need_notify_iotlb +EXPORT_SYMBOL drivers/vhost/vringh 0xd3a14d7d vringh_complete_kern +EXPORT_SYMBOL drivers/vhost/vringh 0xde804bb9 vringh_iov_pull_kern +EXPORT_SYMBOL drivers/vhost/vringh 0xe544457e vringh_notify_disable_iotlb +EXPORT_SYMBOL drivers/vhost/vringh 0xee1c7df3 vringh_init_iotlb +EXPORT_SYMBOL drivers/vhost/vringh 0xf1bbb2ad vringh_need_notify_kern +EXPORT_SYMBOL drivers/vhost/vringh 0xf6784994 vringh_iov_push_iotlb +EXPORT_SYMBOL drivers/vhost/vringh 0xff6e6a53 vringh_notify_disable_kern +EXPORT_SYMBOL drivers/video/fbdev/core/cfbcopyarea 0x06b76d78 cfb_copyarea +EXPORT_SYMBOL drivers/video/fbdev/core/cfbfillrect 0x3c1cae1a cfb_fillrect +EXPORT_SYMBOL drivers/video/fbdev/core/cfbimgblt 0x0fa8c0a0 cfb_imageblit +EXPORT_SYMBOL drivers/video/fbdev/core/syscopyarea 0x44c0ef25 sys_copyarea +EXPORT_SYMBOL drivers/video/fbdev/core/sysfillrect 0x7e6b2c47 sys_fillrect +EXPORT_SYMBOL drivers/video/fbdev/core/sysimgblt 0xafa25718 sys_imageblit +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 0x003e74e7 fscache_init_cache +EXPORT_SYMBOL fs/fscache/fscache 0x01e8a703 fscache_object_retrying_stale +EXPORT_SYMBOL fs/fscache/fscache 0x0cea3c9f fscache_mark_page_cached +EXPORT_SYMBOL fs/fscache/fscache 0x0e0716b1 fscache_op_complete +EXPORT_SYMBOL fs/fscache/fscache 0x11e94e49 __fscache_relinquish_cookie +EXPORT_SYMBOL fs/fscache/fscache 0x16c021ac __fscache_update_cookie +EXPORT_SYMBOL fs/fscache/fscache 0x187a9c73 __fscache_wait_on_page_write +EXPORT_SYMBOL fs/fscache/fscache 0x21dc0844 fscache_object_init +EXPORT_SYMBOL fs/fscache/fscache 0x2de8bb8f __fscache_write_page +EXPORT_SYMBOL fs/fscache/fscache 0x343dced8 fscache_object_lookup_negative +EXPORT_SYMBOL fs/fscache/fscache 0x36fbad68 __fscache_read_or_alloc_page +EXPORT_SYMBOL fs/fscache/fscache 0x3aee75aa fscache_check_aux +EXPORT_SYMBOL fs/fscache/fscache 0x3bded580 __fscache_enable_cookie +EXPORT_SYMBOL fs/fscache/fscache 0x3d760097 fscache_io_error +EXPORT_SYMBOL fs/fscache/fscache 0x44af55f6 __fscache_maybe_release_page +EXPORT_SYMBOL fs/fscache/fscache 0x46046833 fscache_enqueue_operation +EXPORT_SYMBOL fs/fscache/fscache 0x549325af __fscache_attr_changed +EXPORT_SYMBOL fs/fscache/fscache 0x59700fdd __fscache_wait_on_invalidate +EXPORT_SYMBOL fs/fscache/fscache 0x5f57bce6 __fscache_register_netfs +EXPORT_SYMBOL fs/fscache/fscache 0x619b2705 __fscache_check_consistency +EXPORT_SYMBOL fs/fscache/fscache 0x6a9d0348 __fscache_check_page_write +EXPORT_SYMBOL fs/fscache/fscache 0x6acefa42 fscache_cache_cleared_wq +EXPORT_SYMBOL fs/fscache/fscache 0x6e8ae6ac fscache_obtained_object +EXPORT_SYMBOL fs/fscache/fscache 0x730a8df5 __fscache_alloc_page +EXPORT_SYMBOL fs/fscache/fscache 0x74530ecd fscache_op_debug_id +EXPORT_SYMBOL fs/fscache/fscache 0x7a52f83c __fscache_invalidate +EXPORT_SYMBOL fs/fscache/fscache 0x807b6db0 __fscache_uncache_page +EXPORT_SYMBOL fs/fscache/fscache 0x817ed79b fscache_fsdef_index +EXPORT_SYMBOL fs/fscache/fscache 0xa08032fb fscache_put_operation +EXPORT_SYMBOL fs/fscache/fscache 0xa1593988 fscache_withdraw_cache +EXPORT_SYMBOL fs/fscache/fscache 0xa1739940 __fscache_disable_cookie +EXPORT_SYMBOL fs/fscache/fscache 0xc3b4d91b __fscache_unregister_netfs +EXPORT_SYMBOL fs/fscache/fscache 0xcd8d8df5 __fscache_acquire_cookie +EXPORT_SYMBOL fs/fscache/fscache 0xce06ca86 fscache_mark_pages_cached +EXPORT_SYMBOL fs/fscache/fscache 0xda1ebc4c fscache_object_mark_killed +EXPORT_SYMBOL fs/fscache/fscache 0xdb52a1cf fscache_operation_init +EXPORT_SYMBOL fs/fscache/fscache 0xe4971315 __fscache_uncache_all_inode_pages +EXPORT_SYMBOL fs/fscache/fscache 0xe56e038c fscache_object_destroy +EXPORT_SYMBOL fs/fscache/fscache 0xe677455d __fscache_readpages_cancel +EXPORT_SYMBOL fs/fscache/fscache 0xf078ebd2 fscache_add_cache +EXPORT_SYMBOL fs/fscache/fscache 0xff83130b __fscache_read_or_alloc_pages +EXPORT_SYMBOL fs/ocfs2/cluster/ocfs2_nodemanager 0xbfd7d7a2 o2hb_global_heartbeat_active +EXPORT_SYMBOL fs/quota/quota_tree 0x8366e125 qtree_entry_unused +EXPORT_SYMBOL fs/quota/quota_tree 0x8bdc4368 qtree_delete_dquot +EXPORT_SYMBOL fs/quota/quota_tree 0x9bc6a0f8 qtree_release_dquot +EXPORT_SYMBOL fs/quota/quota_tree 0xd5460431 qtree_get_next_id +EXPORT_SYMBOL fs/quota/quota_tree 0xdd2fb267 qtree_write_dquot +EXPORT_SYMBOL fs/quota/quota_tree 0xdf5d9da9 qtree_read_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 0xaa8106bc crc8_populate_msb +EXPORT_SYMBOL lib/crc8 0xc3cd034d crc8_populate_lsb +EXPORT_SYMBOL lib/crc8 0xe2aae5cc crc8 +EXPORT_SYMBOL lib/crypto/libarc4 0x2bb32ad1 arc4_setkey +EXPORT_SYMBOL lib/crypto/libarc4 0xcd47fcc4 arc4_crypt +EXPORT_SYMBOL lib/crypto/libblake2s 0x7bcc24fd blake2s256_hmac +EXPORT_SYMBOL lib/crypto/libblake2s 0xa3cefaa0 blake2s_update +EXPORT_SYMBOL lib/crypto/libblake2s 0xadae6df8 blake2s_final +EXPORT_SYMBOL lib/crypto/libblake2s-generic 0x755f4ba3 blake2s_compress_generic +EXPORT_SYMBOL lib/crypto/libchacha 0xcec122d7 chacha_crypt_generic +EXPORT_SYMBOL lib/crypto/libchacha20poly1305 0x147c3f2e chacha20poly1305_encrypt +EXPORT_SYMBOL lib/crypto/libchacha20poly1305 0x1c679fe2 chacha20poly1305_decrypt +EXPORT_SYMBOL lib/crypto/libchacha20poly1305 0x37b34b92 chacha20poly1305_encrypt_sg_inplace +EXPORT_SYMBOL lib/crypto/libchacha20poly1305 0x5b19e187 chacha20poly1305_decrypt_sg_inplace +EXPORT_SYMBOL lib/crypto/libchacha20poly1305 0xbaf4d923 xchacha20poly1305_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 0x4dba97c6 poly1305_core_setkey +EXPORT_SYMBOL lib/crypto/libpoly1305 0xbcb90cb3 poly1305_core_emit +EXPORT_SYMBOL lib/libcrc32c 0x89a0cd52 crc32c_impl +EXPORT_SYMBOL lib/libcrc32c 0xb15b4109 crc32c +EXPORT_SYMBOL lib/lru_cache 0x0641307b lc_destroy +EXPORT_SYMBOL lib/lru_cache 0x098d2ed9 lc_try_get +EXPORT_SYMBOL lib/lru_cache 0x2d47ac83 lc_committed +EXPORT_SYMBOL lib/lru_cache 0x2f3dcecb lc_index_of +EXPORT_SYMBOL lib/lru_cache 0x33d62c28 lc_seq_dump_details +EXPORT_SYMBOL lib/lru_cache 0x4522d82a lc_reset +EXPORT_SYMBOL lib/lru_cache 0x4cf5f5a8 lc_is_used +EXPORT_SYMBOL lib/lru_cache 0x50bfb251 lc_seq_printf_stats +EXPORT_SYMBOL lib/lru_cache 0x5752f31b lc_del +EXPORT_SYMBOL lib/lru_cache 0x7257beee lc_element_by_index +EXPORT_SYMBOL lib/lru_cache 0x9134feb7 lc_get +EXPORT_SYMBOL lib/lru_cache 0xb672aa97 lc_create +EXPORT_SYMBOL lib/lru_cache 0xbfbe53d5 lc_get_cumulative +EXPORT_SYMBOL lib/lru_cache 0xc3a98c1d lc_try_lock +EXPORT_SYMBOL lib/lru_cache 0xcc979a91 lc_set +EXPORT_SYMBOL lib/lru_cache 0xefec290a lc_find +EXPORT_SYMBOL lib/lru_cache 0xfd525ec7 lc_put +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 0x92fa27b6 lowpan_nhc_del +EXPORT_SYMBOL net/6lowpan/6lowpan 0xc8c10369 lowpan_unregister_netdevice +EXPORT_SYMBOL net/6lowpan/6lowpan 0xd2838240 lowpan_nhc_add +EXPORT_SYMBOL net/6lowpan/6lowpan 0xd30e334c lowpan_unregister_netdev +EXPORT_SYMBOL net/6lowpan/6lowpan 0xd4c070d8 lowpan_register_netdev +EXPORT_SYMBOL net/6lowpan/6lowpan 0xe00b229a lowpan_register_netdevice +EXPORT_SYMBOL net/802/p8022 0x6e282a39 register_8022_client +EXPORT_SYMBOL net/802/p8022 0xfc2b5a63 unregister_8022_client +EXPORT_SYMBOL net/802/psnap 0xebddd0f2 unregister_snap_client +EXPORT_SYMBOL net/802/psnap 0xfecc3d1a register_snap_client +EXPORT_SYMBOL net/9p/9pnet 0x119c37f0 p9_client_getlock_dotl +EXPORT_SYMBOL net/9p/9pnet 0x1430723c p9_req_put +EXPORT_SYMBOL net/9p/9pnet 0x1843ecdc p9_client_mknod_dotl +EXPORT_SYMBOL net/9p/9pnet 0x2407c7ae p9_show_client_options +EXPORT_SYMBOL net/9p/9pnet 0x2c26b9c5 p9_client_begin_disconnect +EXPORT_SYMBOL net/9p/9pnet 0x2eefbab8 p9_client_write +EXPORT_SYMBOL net/9p/9pnet 0x2f9d48a3 p9_client_readlink +EXPORT_SYMBOL net/9p/9pnet 0x3026d67c p9_client_symlink +EXPORT_SYMBOL net/9p/9pnet 0x34022e69 p9_client_read +EXPORT_SYMBOL net/9p/9pnet 0x3d73a797 p9_errstr2errno +EXPORT_SYMBOL net/9p/9pnet 0x41ce9823 p9stat_read +EXPORT_SYMBOL net/9p/9pnet 0x452a1375 p9_client_walk +EXPORT_SYMBOL net/9p/9pnet 0x4590278a p9_client_read_once +EXPORT_SYMBOL net/9p/9pnet 0x499cab15 p9_client_create_dotl +EXPORT_SYMBOL net/9p/9pnet 0x536f64e9 p9_client_destroy +EXPORT_SYMBOL net/9p/9pnet 0x54c0dc76 v9fs_get_default_trans +EXPORT_SYMBOL net/9p/9pnet 0x5e9344bb p9_client_setattr +EXPORT_SYMBOL net/9p/9pnet 0x62955a9e p9_client_rename +EXPORT_SYMBOL net/9p/9pnet 0x668c4ee5 p9_tag_lookup +EXPORT_SYMBOL net/9p/9pnet 0x67043bcc p9_client_link +EXPORT_SYMBOL net/9p/9pnet 0x7348ef66 p9_client_fsync +EXPORT_SYMBOL net/9p/9pnet 0x78cd6ec5 p9_client_stat +EXPORT_SYMBOL net/9p/9pnet 0x810da401 v9fs_register_trans +EXPORT_SYMBOL net/9p/9pnet 0x8262d966 p9_client_readdir +EXPORT_SYMBOL net/9p/9pnet 0x8b78194d p9_release_pages +EXPORT_SYMBOL net/9p/9pnet 0x95bd8f96 p9dirent_read +EXPORT_SYMBOL net/9p/9pnet 0x963fb8c5 v9fs_unregister_trans +EXPORT_SYMBOL net/9p/9pnet 0x984c5e73 p9_fcall_fini +EXPORT_SYMBOL net/9p/9pnet 0x9df022f4 p9_client_attach +EXPORT_SYMBOL net/9p/9pnet 0xa0544895 v9fs_get_trans_by_name +EXPORT_SYMBOL net/9p/9pnet 0xa58be265 p9_client_cb +EXPORT_SYMBOL net/9p/9pnet 0xa5c006ad p9_client_remove +EXPORT_SYMBOL net/9p/9pnet 0xa8f08678 p9_is_proto_dotu +EXPORT_SYMBOL net/9p/9pnet 0xb3cdf3b8 p9_client_lock_dotl +EXPORT_SYMBOL net/9p/9pnet 0xb79f25fd p9_parse_header +EXPORT_SYMBOL net/9p/9pnet 0xb832f275 p9_client_wstat +EXPORT_SYMBOL net/9p/9pnet 0xb84d18d5 p9_client_renameat +EXPORT_SYMBOL net/9p/9pnet 0xbaed13f9 p9_client_mkdir_dotl +EXPORT_SYMBOL net/9p/9pnet 0xc00f9510 p9_is_proto_dotl +EXPORT_SYMBOL net/9p/9pnet 0xc0e06642 p9_client_unlinkat +EXPORT_SYMBOL net/9p/9pnet 0xd384c683 p9stat_free +EXPORT_SYMBOL net/9p/9pnet 0xdc7534af p9_client_clunk +EXPORT_SYMBOL net/9p/9pnet 0xde95f8e7 p9_client_getattr_dotl +EXPORT_SYMBOL net/9p/9pnet 0xe0a79a0e p9_client_fcreate +EXPORT_SYMBOL net/9p/9pnet 0xe5089dbd p9_client_open +EXPORT_SYMBOL net/9p/9pnet 0xe58a3360 p9_error_init +EXPORT_SYMBOL net/9p/9pnet 0xebb62687 p9_client_statfs +EXPORT_SYMBOL net/9p/9pnet 0xf3091b1f p9_client_disconnect +EXPORT_SYMBOL net/9p/9pnet 0xf4730905 p9_client_create +EXPORT_SYMBOL net/appletalk/appletalk 0x336e34ec atalk_find_dev_addr +EXPORT_SYMBOL net/appletalk/appletalk 0x775cd533 atrtr_get_dev +EXPORT_SYMBOL net/appletalk/appletalk 0xcc6c4479 aarp_send_ddp +EXPORT_SYMBOL net/appletalk/appletalk 0xcf804dd3 alloc_ltalkdev +EXPORT_SYMBOL net/atm/atm 0x035ad638 atm_alloc_charge +EXPORT_SYMBOL net/atm/atm 0x2cc2d52d vcc_hash +EXPORT_SYMBOL net/atm/atm 0x3886685b deregister_atm_ioctl +EXPORT_SYMBOL net/atm/atm 0x4443d399 atm_proc_root +EXPORT_SYMBOL net/atm/atm 0x44c6e633 vcc_sklist_lock +EXPORT_SYMBOL net/atm/atm 0x4ebdbae2 atm_charge +EXPORT_SYMBOL net/atm/atm 0x60bb08df atm_dev_lookup +EXPORT_SYMBOL net/atm/atm 0x6bcaf42c atm_dev_deregister +EXPORT_SYMBOL net/atm/atm 0x7db23fad atm_dev_register +EXPORT_SYMBOL net/atm/atm 0x88e9957a vcc_process_recv_queue +EXPORT_SYMBOL net/atm/atm 0x9feaf287 sonet_subtract_stats +EXPORT_SYMBOL net/atm/atm 0xaa024146 sonet_copy_stats +EXPORT_SYMBOL net/atm/atm 0xabf99122 vcc_insert_socket +EXPORT_SYMBOL net/atm/atm 0xcd149275 atm_init_aal5 +EXPORT_SYMBOL net/atm/atm 0xdeadefc1 register_atm_ioctl +EXPORT_SYMBOL net/atm/atm 0xe4b3931e atm_dev_signal_change +EXPORT_SYMBOL net/atm/atm 0xf063ec54 atm_dev_release_vccs +EXPORT_SYMBOL net/atm/atm 0xf49bc67a atm_pcr_goal +EXPORT_SYMBOL net/atm/atm 0xfda160fb vcc_release_async +EXPORT_SYMBOL net/ax25/ax25 0x14cecd59 ax25_display_timer +EXPORT_SYMBOL net/ax25/ax25 0x242852b9 ax25_uid_policy +EXPORT_SYMBOL net/ax25/ax25 0x253b2e7c ax25_listen_register +EXPORT_SYMBOL net/ax25/ax25 0x33e521af ax25_find_cb +EXPORT_SYMBOL net/ax25/ax25 0x3481dd6a ax25_linkfail_register +EXPORT_SYMBOL net/ax25/ax25 0x4502c65a asc2ax +EXPORT_SYMBOL net/ax25/ax25 0x53dea1ff ax2asc +EXPORT_SYMBOL net/ax25/ax25 0x66e5f210 ax25_listen_release +EXPORT_SYMBOL net/ax25/ax25 0x787b8e25 ax25_ip_xmit +EXPORT_SYMBOL net/ax25/ax25 0x8ede9e26 ax25_protocol_release +EXPORT_SYMBOL net/ax25/ax25 0x90d10e7d ax25_header_ops +EXPORT_SYMBOL net/ax25/ax25 0xa79899dd ax25_send_frame +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/ax25/ax25 0xff3d9870 ax25_linkfail_release +EXPORT_SYMBOL net/bridge/netfilter/ebtables 0x288e03f6 ebt_register_table +EXPORT_SYMBOL net/bridge/netfilter/ebtables 0x371109d5 ebt_unregister_table +EXPORT_SYMBOL net/bridge/netfilter/ebtables 0xddff8f3a ebt_do_table +EXPORT_SYMBOL net/caif/caif 0x1446b60a caif_client_register_refcnt +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 0x69e65275 caif_enroll_dev +EXPORT_SYMBOL net/caif/caif 0x839ddb7b cfcnfg_set_phy_state +EXPORT_SYMBOL net/caif/caif 0x9aaf4994 cfcnfg_add_phy_layer +EXPORT_SYMBOL net/caif/caif 0x9e3e305d cfpkt_set_prio +EXPORT_SYMBOL net/caif/caif 0x9e90e316 caif_connect_client +EXPORT_SYMBOL net/caif/caif 0xa0976ca5 caif_disconnect_client +EXPORT_SYMBOL net/caif/caif 0xb7b6874e caif_free_client +EXPORT_SYMBOL net/caif/caif 0xc15bed7a get_cfcnfg +EXPORT_SYMBOL net/can/can 0x3943c2d1 can_sock_destruct +EXPORT_SYMBOL net/can/can 0x5eb6db31 can_rx_unregister +EXPORT_SYMBOL net/can/can 0x67ab2e36 can_send +EXPORT_SYMBOL net/can/can 0xadd34f19 can_proto_register +EXPORT_SYMBOL net/can/can 0xaf00b090 can_proto_unregister +EXPORT_SYMBOL net/can/can 0xd12934ce can_rx_register +EXPORT_SYMBOL net/ceph/libceph 0x0130bc34 osd_req_op_alloc_hint_init +EXPORT_SYMBOL net/ceph/libceph 0x017db6c5 osd_req_op_extent_osd_data_bvec_pos +EXPORT_SYMBOL net/ceph/libceph 0x03608fa4 ceph_auth_add_authorizer_challenge +EXPORT_SYMBOL net/ceph/libceph 0x063277cc ceph_osdc_put_request +EXPORT_SYMBOL net/ceph/libceph 0x0c6341aa ceph_osdc_watch +EXPORT_SYMBOL net/ceph/libceph 0x113b77d7 __ceph_open_session +EXPORT_SYMBOL net/ceph/libceph 0x165b1948 ceph_pagelist_free_reserve +EXPORT_SYMBOL net/ceph/libceph 0x17b27e54 ceph_alloc_page_vector +EXPORT_SYMBOL net/ceph/libceph 0x1f1ec1f9 ceph_osdc_copy_from +EXPORT_SYMBOL net/ceph/libceph 0x2087719e ceph_oid_copy +EXPORT_SYMBOL net/ceph/libceph 0x20b5fd04 ceph_monc_stop +EXPORT_SYMBOL net/ceph/libceph 0x2101cbc9 ceph_oid_destroy +EXPORT_SYMBOL net/ceph/libceph 0x2494626d ceph_object_locator_to_pg +EXPORT_SYMBOL net/ceph/libceph 0x26445dfb osd_req_op_extent_osd_data_bvecs +EXPORT_SYMBOL net/ceph/libceph 0x287ace1e ceph_msg_new2 +EXPORT_SYMBOL net/ceph/libceph 0x2a4e2698 ceph_parse_param +EXPORT_SYMBOL net/ceph/libceph 0x2a983d26 ceph_pagelist_release +EXPORT_SYMBOL net/ceph/libceph 0x2d77b695 ceph_client_addr +EXPORT_SYMBOL net/ceph/libceph 0x301e3e4d ceph_osdc_maybe_request_map +EXPORT_SYMBOL net/ceph/libceph 0x3254aeb0 ceph_msg_data_add_pages +EXPORT_SYMBOL net/ceph/libceph 0x332ba657 ceph_osdc_start_request +EXPORT_SYMBOL net/ceph/libceph 0x3847dc33 ceph_con_open +EXPORT_SYMBOL net/ceph/libceph 0x38a91469 ceph_msg_new +EXPORT_SYMBOL net/ceph/libceph 0x38f2d94e ceph_file_to_extents +EXPORT_SYMBOL net/ceph/libceph 0x39295f6a ceph_osdc_cancel_request +EXPORT_SYMBOL net/ceph/libceph 0x3c8d7111 ceph_get_num_objects +EXPORT_SYMBOL net/ceph/libceph 0x3d582376 ceph_monc_validate_auth +EXPORT_SYMBOL net/ceph/libceph 0x3fec3780 ceph_osdc_call +EXPORT_SYMBOL net/ceph/libceph 0x417a9131 ceph_oloc_destroy +EXPORT_SYMBOL net/ceph/libceph 0x42728c96 osd_req_op_xattr_init +EXPORT_SYMBOL net/ceph/libceph 0x4280c718 ceph_messenger_fini +EXPORT_SYMBOL net/ceph/libceph 0x42bcf580 ceph_msg_data_add_bio +EXPORT_SYMBOL net/ceph/libceph 0x4551d153 osd_req_op_cls_request_data_bvecs +EXPORT_SYMBOL net/ceph/libceph 0x45b07be7 ceph_open_session +EXPORT_SYMBOL net/ceph/libceph 0x46555f2e ceph_pg_poolid_by_name +EXPORT_SYMBOL net/ceph/libceph 0x466b85b8 libceph_compatible +EXPORT_SYMBOL net/ceph/libceph 0x499c7c71 ceph_osdc_get_request +EXPORT_SYMBOL net/ceph/libceph 0x4f546acc ceph_copy_to_page_vector +EXPORT_SYMBOL net/ceph/libceph 0x57baf885 ceph_str_hash +EXPORT_SYMBOL net/ceph/libceph 0x5aeeee62 ceph_oid_aprintf +EXPORT_SYMBOL net/ceph/libceph 0x5b4f0f93 ceph_create_client +EXPORT_SYMBOL net/ceph/libceph 0x5c27bb6b ceph_cls_break_lock +EXPORT_SYMBOL net/ceph/libceph 0x5d5b725d ceph_msg_data_add_pagelist +EXPORT_SYMBOL net/ceph/libceph 0x5e0ec6a3 ceph_pg_pool_name_by_id +EXPORT_SYMBOL net/ceph/libceph 0x60bb51fa osd_req_op_init +EXPORT_SYMBOL net/ceph/libceph 0x6101eff1 ceph_auth_verify_authorizer_reply +EXPORT_SYMBOL net/ceph/libceph 0x63758856 ceph_str_hash_name +EXPORT_SYMBOL net/ceph/libceph 0x6a7a38a0 ceph_pr_addr +EXPORT_SYMBOL net/ceph/libceph 0x6c80b134 ceph_msg_data_add_bvecs +EXPORT_SYMBOL net/ceph/libceph 0x6d25a134 ceph_osdc_new_request +EXPORT_SYMBOL net/ceph/libceph 0x6e477464 ceph_monc_wait_osdmap +EXPORT_SYMBOL net/ceph/libceph 0x6f3a25ef osd_req_op_cls_init +EXPORT_SYMBOL net/ceph/libceph 0x72574bf2 osd_req_op_cls_request_data_pages +EXPORT_SYMBOL net/ceph/libceph 0x72f2d383 ceph_monc_do_statfs +EXPORT_SYMBOL net/ceph/libceph 0x7358e4c4 ceph_alloc_options +EXPORT_SYMBOL net/ceph/libceph 0x751ec2bb ceph_msg_dump +EXPORT_SYMBOL net/ceph/libceph 0x767a8323 ceph_auth_is_authenticated +EXPORT_SYMBOL net/ceph/libceph 0x76cea558 ceph_release_page_vector +EXPORT_SYMBOL net/ceph/libceph 0x7a594a34 osd_req_op_extent_osd_data_bio +EXPORT_SYMBOL net/ceph/libceph 0x7d3027fb ceph_check_fsid +EXPORT_SYMBOL net/ceph/libceph 0x7fc543db ceph_monc_open_session +EXPORT_SYMBOL net/ceph/libceph 0x80027508 ceph_zero_page_vector_range +EXPORT_SYMBOL net/ceph/libceph 0x821e3f11 ceph_client_gid +EXPORT_SYMBOL net/ceph/libceph 0x86fca7e4 ceph_put_snap_context +EXPORT_SYMBOL net/ceph/libceph 0x8712d379 ceph_monc_blacklist_add +EXPORT_SYMBOL net/ceph/libceph 0x890cd080 ceph_messenger_init +EXPORT_SYMBOL net/ceph/libceph 0x8e373662 osd_req_op_extent_osd_data +EXPORT_SYMBOL net/ceph/libceph 0x95b04e17 ceph_wait_for_latest_osdmap +EXPORT_SYMBOL net/ceph/libceph 0x965308c6 ceph_compare_options +EXPORT_SYMBOL net/ceph/libceph 0x969d8b87 ceph_osdc_abort_requests +EXPORT_SYMBOL net/ceph/libceph 0x98ef7983 ceph_reset_client_addr +EXPORT_SYMBOL net/ceph/libceph 0x9aa37d1a ceph_osdc_notify +EXPORT_SYMBOL net/ceph/libceph 0x9b2f3478 ceph_pg_pool_flags +EXPORT_SYMBOL net/ceph/libceph 0x9bc6b539 ceph_find_or_create_string +EXPORT_SYMBOL net/ceph/libceph 0x9c4682de ceph_osdc_alloc_messages +EXPORT_SYMBOL net/ceph/libceph 0x9c5e5078 ceph_auth_invalidate_authorizer +EXPORT_SYMBOL net/ceph/libceph 0x9ca95932 ceph_create_snap_context +EXPORT_SYMBOL net/ceph/libceph 0x9ef5bba3 ceph_con_send +EXPORT_SYMBOL net/ceph/libceph 0x9f868a66 ceph_osdc_clear_abort_err +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 0xa159a840 ceph_con_keepalive +EXPORT_SYMBOL net/ceph/libceph 0xa42c5b4d ceph_destroy_client +EXPORT_SYMBOL net/ceph/libceph 0xa698f998 ceph_free_lockers +EXPORT_SYMBOL net/ceph/libceph 0xaa35a65d ceph_put_page_vector +EXPORT_SYMBOL net/ceph/libceph 0xad703657 ceph_auth_destroy_authorizer +EXPORT_SYMBOL net/ceph/libceph 0xae9cfa8c ceph_cls_set_cookie +EXPORT_SYMBOL net/ceph/libceph 0xafb8a407 ceph_msgr_flush +EXPORT_SYMBOL net/ceph/libceph 0xb10081a4 ceph_osdc_update_epoch_barrier +EXPORT_SYMBOL net/ceph/libceph 0xb28c9eff ceph_osdc_notify_ack +EXPORT_SYMBOL net/ceph/libceph 0xb293e4f7 ceph_copy_from_page_vector +EXPORT_SYMBOL net/ceph/libceph 0xb387da66 osd_req_op_extent_update +EXPORT_SYMBOL net/ceph/libceph 0xb5074230 ceph_monc_get_version_async +EXPORT_SYMBOL net/ceph/libceph 0xb54676fa ceph_msg_type_name +EXPORT_SYMBOL net/ceph/libceph 0xb72c162e ceph_buffer_release +EXPORT_SYMBOL net/ceph/libceph 0xb8ca16dc ceph_osdc_wait_request +EXPORT_SYMBOL net/ceph/libceph 0xbbfc03e6 osd_req_op_extent_osd_data_pages +EXPORT_SYMBOL net/ceph/libceph 0xbd2f79ae ceph_oloc_copy +EXPORT_SYMBOL net/ceph/libceph 0xbd426d2b ceph_msg_get +EXPORT_SYMBOL net/ceph/libceph 0xbd635679 ceph_cls_lock_info +EXPORT_SYMBOL net/ceph/libceph 0xbd8c1313 ceph_destroy_options +EXPORT_SYMBOL net/ceph/libceph 0xbe3879aa ceph_get_snap_context +EXPORT_SYMBOL net/ceph/libceph 0xc0e686dc ceph_con_init +EXPORT_SYMBOL net/ceph/libceph 0xc20c2cf3 osd_req_op_extent_init +EXPORT_SYMBOL net/ceph/libceph 0xc366bfa1 ceph_pagelist_truncate +EXPORT_SYMBOL net/ceph/libceph 0xc5c0652e ceph_con_close +EXPORT_SYMBOL net/ceph/libceph 0xc60b6526 osd_req_op_raw_data_in_pages +EXPORT_SYMBOL net/ceph/libceph 0xc68f1d53 ceph_osdc_alloc_request +EXPORT_SYMBOL net/ceph/libceph 0xc966a790 ceph_osdc_list_watchers +EXPORT_SYMBOL net/ceph/libceph 0xc9d27e39 ceph_copy_user_to_page_vector +EXPORT_SYMBOL net/ceph/libceph 0xca5a0a13 osd_req_op_extent_dup_last +EXPORT_SYMBOL net/ceph/libceph 0xca80437b ceph_extent_to_file +EXPORT_SYMBOL net/ceph/libceph 0xd0aecb97 osd_req_op_cls_response_data_pages +EXPORT_SYMBOL net/ceph/libceph 0xd26368cd ceph_osdc_flush_notifies +EXPORT_SYMBOL net/ceph/libceph 0xd4eb7735 ceph_decode_entity_addr +EXPORT_SYMBOL net/ceph/libceph 0xd723e0f5 ceph_cls_lock +EXPORT_SYMBOL net/ceph/libceph 0xd8d35e9e ceph_monc_got_map +EXPORT_SYMBOL net/ceph/libceph 0xd8e6b70d osd_req_op_extent_osd_data_pagelist +EXPORT_SYMBOL net/ceph/libceph 0xddb4d0e3 ceph_cls_assert_locked +EXPORT_SYMBOL net/ceph/libceph 0xdf6ef4a1 ceph_oid_printf +EXPORT_SYMBOL net/ceph/libceph 0xdfc091f9 ceph_entity_type_name +EXPORT_SYMBOL net/ceph/libceph 0xe0006215 ceph_auth_create_authorizer +EXPORT_SYMBOL net/ceph/libceph 0xe2d15c53 osd_req_op_cls_request_data_pagelist +EXPORT_SYMBOL net/ceph/libceph 0xe76e7226 ceph_pagelist_alloc +EXPORT_SYMBOL net/ceph/libceph 0xe7b0fa81 ceph_msg_put +EXPORT_SYMBOL net/ceph/libceph 0xe9827b41 ceph_parse_mon_ips +EXPORT_SYMBOL net/ceph/libceph 0xe9bd0bcf ceph_monc_renew_subs +EXPORT_SYMBOL net/ceph/libceph 0xea46a86b ceph_auth_update_authorizer +EXPORT_SYMBOL net/ceph/libceph 0xecf4e96e ceph_print_client_options +EXPORT_SYMBOL net/ceph/libceph 0xee120c03 ceph_release_string +EXPORT_SYMBOL net/ceph/libceph 0xeef6cfa3 ceph_iterate_extents +EXPORT_SYMBOL net/ceph/libceph 0xef65f2f5 ceph_pg_to_acting_primary +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 0xf23a5ecd ceph_monc_get_version +EXPORT_SYMBOL net/ceph/libceph 0xf5a1ee85 ceph_monc_init +EXPORT_SYMBOL net/ceph/libceph 0xf798026a ceph_cls_unlock +EXPORT_SYMBOL net/ceph/libceph 0xf98f5f91 ceph_osdc_unwatch +EXPORT_SYMBOL net/ceph/libceph 0xfeb7c5eb ceph_osdc_sync +EXPORT_SYMBOL net/ceph/libceph 0xfee52002 ceph_monc_want_map +EXPORT_SYMBOL net/dccp/dccp_ipv4 0x4b07ee4a dccp_syn_ack_timeout +EXPORT_SYMBOL net/dccp/dccp_ipv4 0xfe421e65 dccp_req_err +EXPORT_SYMBOL net/dsa/dsa_core 0x160a9bda dsa_port_vid_add +EXPORT_SYMBOL net/dsa/dsa_core 0x59348a3f dsa_port_vid_del +EXPORT_SYMBOL net/ieee802154/ieee802154 0x09521fbe wpan_phy_for_each +EXPORT_SYMBOL net/ieee802154/ieee802154 0x757abbf1 wpan_phy_unregister +EXPORT_SYMBOL net/ieee802154/ieee802154 0x99699115 wpan_phy_find +EXPORT_SYMBOL net/ieee802154/ieee802154 0xcef7e8fe wpan_phy_register +EXPORT_SYMBOL net/ieee802154/ieee802154 0xe19e1870 wpan_phy_free +EXPORT_SYMBOL net/ieee802154/ieee802154 0xe5bdea4f wpan_phy_new +EXPORT_SYMBOL net/ipv4/fou 0x1757d1a4 fou_encap_hlen +EXPORT_SYMBOL net/ipv4/fou 0x360bbfa3 __gue_build_header +EXPORT_SYMBOL net/ipv4/fou 0x58502732 __fou_build_header +EXPORT_SYMBOL net/ipv4/fou 0xf13914b3 gue_encap_hlen +EXPORT_SYMBOL net/ipv4/gre 0x2eb5050c gre_parse_header +EXPORT_SYMBOL net/ipv4/netfilter/arp_tables 0x340d4a12 arpt_unregister_table +EXPORT_SYMBOL net/ipv4/netfilter/arp_tables 0x85a8ee63 arpt_register_table +EXPORT_SYMBOL net/ipv4/netfilter/arp_tables 0xdb8bb987 arpt_do_table +EXPORT_SYMBOL net/ipv4/netfilter/ip_tables 0x27c9f957 ipt_register_table +EXPORT_SYMBOL net/ipv4/netfilter/ip_tables 0x5af824a1 ipt_unregister_table_exit +EXPORT_SYMBOL net/ipv4/netfilter/ip_tables 0xb4b6c8ec ipt_do_table +EXPORT_SYMBOL net/ipv4/netfilter/ip_tables 0xc16b3f07 ipt_unregister_table_pre_exit +EXPORT_SYMBOL net/ipv4/netfilter/ip_tables 0xdb5b7d90 ipt_unregister_table +EXPORT_SYMBOL net/ipv4/tunnel4 0x0cbdf055 xfrm4_tunnel_deregister +EXPORT_SYMBOL net/ipv4/tunnel4 0x69159380 xfrm4_tunnel_register +EXPORT_SYMBOL net/ipv6/ip6_tunnel 0x353d9d00 ip6_tnl_get_cap +EXPORT_SYMBOL net/ipv6/ip6_tunnel 0x6dc3fd99 ip6_tnl_get_link_net +EXPORT_SYMBOL net/ipv6/ip6_tunnel 0x822d9b91 ip6_tnl_rcv +EXPORT_SYMBOL net/ipv6/ip6_tunnel 0x93c63706 ip6_tnl_encap_add_ops +EXPORT_SYMBOL net/ipv6/ip6_tunnel 0x9b11ca26 ip6_tnl_change_mtu +EXPORT_SYMBOL net/ipv6/ip6_tunnel 0xbae67e31 ip6_tnl_encap_del_ops +EXPORT_SYMBOL net/ipv6/ip6_tunnel 0xd8b5e2b4 ip6_tnl_parse_tlv_enc_lim +EXPORT_SYMBOL net/ipv6/ip6_tunnel 0xf5cff1ab ip6_tnl_get_iflink +EXPORT_SYMBOL net/ipv6/ip6_tunnel 0xfb9b4e90 ip6_tnl_xmit +EXPORT_SYMBOL net/ipv6/netfilter/ip6_tables 0x080499a1 ip6t_do_table +EXPORT_SYMBOL net/ipv6/netfilter/ip6_tables 0x354b704a ip6t_unregister_table_pre_exit +EXPORT_SYMBOL net/ipv6/netfilter/ip6_tables 0x38aa8ae8 ip6t_unregister_table_exit +EXPORT_SYMBOL net/ipv6/netfilter/ip6_tables 0xf4036bc6 ip6t_register_table +EXPORT_SYMBOL net/ipv6/netfilter/ip6_tables 0xfbb03380 ip6t_unregister_table +EXPORT_SYMBOL net/ipv6/tunnel6 0x15230939 xfrm6_tunnel_register +EXPORT_SYMBOL net/ipv6/tunnel6 0xf7f75716 xfrm6_tunnel_deregister +EXPORT_SYMBOL net/ipv6/xfrm6_tunnel 0xae551329 xfrm6_tunnel_alloc_spi +EXPORT_SYMBOL net/ipv6/xfrm6_tunnel 0xf6ad24a4 xfrm6_tunnel_spi_lookup +EXPORT_SYMBOL net/l2tp/l2tp_core 0xa7ae538a l2tp_tunnel_free +EXPORT_SYMBOL net/l2tp/l2tp_core 0xc24a87a7 l2tp_recv_common +EXPORT_SYMBOL net/l2tp/l2tp_ip 0x56b27c11 l2tp_ioctl +EXPORT_SYMBOL net/lapb/lapb 0x28314efb lapb_data_received +EXPORT_SYMBOL net/lapb/lapb 0x6358977d lapb_connect_request +EXPORT_SYMBOL net/lapb/lapb 0x81e3cc1f lapb_disconnect_request +EXPORT_SYMBOL net/lapb/lapb 0x96993ace lapb_setparms +EXPORT_SYMBOL net/lapb/lapb 0xa6eba8fb lapb_register +EXPORT_SYMBOL net/lapb/lapb 0xb07ad419 lapb_getparms +EXPORT_SYMBOL net/lapb/lapb 0xbba1c9ee lapb_unregister +EXPORT_SYMBOL net/lapb/lapb 0xf3e31560 lapb_data_request +EXPORT_SYMBOL net/llc/llc 0x38b92846 llc_remove_pack +EXPORT_SYMBOL net/llc/llc 0x4151566e llc_add_pack +EXPORT_SYMBOL net/llc/llc 0x52d7b2fd llc_sap_list +EXPORT_SYMBOL net/llc/llc 0x62e53f9a llc_set_station_handler +EXPORT_SYMBOL net/llc/llc 0x7490629f llc_sap_close +EXPORT_SYMBOL net/llc/llc 0x756f73a4 llc_build_and_send_ui_pkt +EXPORT_SYMBOL net/llc/llc 0xb48777b1 llc_sap_find +EXPORT_SYMBOL net/llc/llc 0xc453866a llc_mac_hdr_init +EXPORT_SYMBOL net/llc/llc 0xf0ab1d27 llc_sap_open +EXPORT_SYMBOL net/mac80211/mac80211 0x03aac0c4 ieee80211_iter_keys +EXPORT_SYMBOL net/mac80211/mac80211 0x05e486fc ieee80211_rate_control_unregister +EXPORT_SYMBOL net/mac80211/mac80211 0x063f5308 ieee80211_get_tkip_p1k_iv +EXPORT_SYMBOL net/mac80211/mac80211 0x07819f38 ieee80211_nan_func_match +EXPORT_SYMBOL net/mac80211/mac80211 0x0a46a5e0 ieee80211_queue_stopped +EXPORT_SYMBOL net/mac80211/mac80211 0x0cffc4f1 ieee80211_get_buffered_bc +EXPORT_SYMBOL net/mac80211/mac80211 0x0f5577a4 ieee80211_tdls_oper_request +EXPORT_SYMBOL net/mac80211/mac80211 0x104c1e3b ieee80211_sta_pspoll +EXPORT_SYMBOL net/mac80211/mac80211 0x140dcc66 ieee80211_next_txq +EXPORT_SYMBOL net/mac80211/mac80211 0x179340c4 ieee80211_tx_dequeue +EXPORT_SYMBOL net/mac80211/mac80211 0x183dcd3b ieee80211_get_key_rx_seq +EXPORT_SYMBOL net/mac80211/mac80211 0x19f37f0d ieee80211_update_p2p_noa +EXPORT_SYMBOL net/mac80211/mac80211 0x1a66fc17 ieee80211_get_tkip_rx_p1k +EXPORT_SYMBOL net/mac80211/mac80211 0x212638e9 __ieee80211_get_assoc_led_name +EXPORT_SYMBOL net/mac80211/mac80211 0x231cf18e ieee80211_get_tx_rates +EXPORT_SYMBOL net/mac80211/mac80211 0x236b61cb ieee80211_start_tx_ba_cb_irqsafe +EXPORT_SYMBOL net/mac80211/mac80211 0x24ac07b3 ieee80211_tx_status +EXPORT_SYMBOL net/mac80211/mac80211 0x26ef5c04 ieee80211_ctstoself_get +EXPORT_SYMBOL net/mac80211/mac80211 0x281cc810 ieee80211_manage_rx_ba_offl +EXPORT_SYMBOL net/mac80211/mac80211 0x2c95c5d9 __ieee80211_get_rx_led_name +EXPORT_SYMBOL net/mac80211/mac80211 0x2d05bd23 ieee80211_queue_delayed_work +EXPORT_SYMBOL net/mac80211/mac80211 0x38701481 ieee80211_rx_irqsafe +EXPORT_SYMBOL net/mac80211/mac80211 0x38d11f0b ieee80211_disable_rssi_reports +EXPORT_SYMBOL net/mac80211/mac80211 0x394a1492 ieee80211_connection_loss +EXPORT_SYMBOL net/mac80211/mac80211 0x395bc890 ieee80211_tx_status_8023 +EXPORT_SYMBOL net/mac80211/mac80211 0x3a21dea6 ieee80211_txq_get_depth +EXPORT_SYMBOL net/mac80211/mac80211 0x3d7adad1 ieee80211_sta_register_airtime +EXPORT_SYMBOL net/mac80211/mac80211 0x3d852ea0 ieee80211_enable_rssi_reports +EXPORT_SYMBOL net/mac80211/mac80211 0x3ded4506 ieee80211_csa_update_counter +EXPORT_SYMBOL net/mac80211/mac80211 0x3e1ef2a0 ieee80211_mark_rx_ba_filtered_frames +EXPORT_SYMBOL net/mac80211/mac80211 0x43e2d7a6 ieee80211_unregister_hw +EXPORT_SYMBOL net/mac80211/mac80211 0x468a11f5 ieee80211_nullfunc_get +EXPORT_SYMBOL net/mac80211/mac80211 0x47e30210 ieee80211_ctstoself_duration +EXPORT_SYMBOL net/mac80211/mac80211 0x49127160 ieee80211_alloc_hw_nm +EXPORT_SYMBOL net/mac80211/mac80211 0x4f8e98a0 __ieee80211_schedule_txq +EXPORT_SYMBOL net/mac80211/mac80211 0x5186a63e rate_control_set_rates +EXPORT_SYMBOL net/mac80211/mac80211 0x5b8d8103 ieee80211_tx_rate_update +EXPORT_SYMBOL net/mac80211/mac80211 0x5c78a272 ieee80211_stop_rx_ba_session +EXPORT_SYMBOL net/mac80211/mac80211 0x602ad563 ieee80211_txq_schedule_start +EXPORT_SYMBOL net/mac80211/mac80211 0x605df05f ieee80211_wake_queue +EXPORT_SYMBOL net/mac80211/mac80211 0x651b4918 ieee80211_tx_prepare_skb +EXPORT_SYMBOL net/mac80211/mac80211 0x67be183b ieee80211_sta_block_awake +EXPORT_SYMBOL net/mac80211/mac80211 0x67d748e0 ieee80211_sta_set_buffered +EXPORT_SYMBOL net/mac80211/mac80211 0x69c9aa50 ieee80211_iter_keys_rcu +EXPORT_SYMBOL net/mac80211/mac80211 0x6a82bc0e ieee80211_tx_status_ext +EXPORT_SYMBOL net/mac80211/mac80211 0x6c95a3c0 ieee80211_beacon_get_tim +EXPORT_SYMBOL net/mac80211/mac80211 0x70eaedfc ieee80211_restart_hw +EXPORT_SYMBOL net/mac80211/mac80211 0x76899b7a __ieee80211_create_tpt_led_trigger +EXPORT_SYMBOL net/mac80211/mac80211 0x78b91cb7 ieee80211_send_bar +EXPORT_SYMBOL net/mac80211/mac80211 0x796bef13 __ieee80211_get_radio_led_name +EXPORT_SYMBOL net/mac80211/mac80211 0x79e7497d ieee80211_txq_airtime_check +EXPORT_SYMBOL net/mac80211/mac80211 0x7c0c6f9c ieee80211_wake_queues +EXPORT_SYMBOL net/mac80211/mac80211 0x7f6de49e ieee80211_find_sta +EXPORT_SYMBOL net/mac80211/mac80211 0x899eb182 ieee80211_unreserve_tid +EXPORT_SYMBOL net/mac80211/mac80211 0x8c15fd16 ieee80211_csa_is_complete +EXPORT_SYMBOL net/mac80211/mac80211 0x8d0e435e wiphy_to_ieee80211_hw +EXPORT_SYMBOL net/mac80211/mac80211 0x8d44f350 ieee80211_stop_queues +EXPORT_SYMBOL net/mac80211/mac80211 0x8fda57de ieee80211_pspoll_get +EXPORT_SYMBOL net/mac80211/mac80211 0x915d25f9 ieee80211_probereq_get +EXPORT_SYMBOL net/mac80211/mac80211 0x91deff6c ieee80211_scan_completed +EXPORT_SYMBOL net/mac80211/mac80211 0x92defa4b ieee80211_cqm_rssi_notify +EXPORT_SYMBOL net/mac80211/mac80211 0x961720d8 ieee80211_csa_set_counter +EXPORT_SYMBOL net/mac80211/mac80211 0x9617e2f3 ieee80211_chswitch_done +EXPORT_SYMBOL net/mac80211/mac80211 0x96bf8b81 ieee80211_nan_func_terminated +EXPORT_SYMBOL net/mac80211/mac80211 0x96ebc334 ieee80211_rx_ba_timer_expired +EXPORT_SYMBOL net/mac80211/mac80211 0x98cfd931 ieee80211_txq_may_transmit +EXPORT_SYMBOL net/mac80211/mac80211 0x991a0ca0 ieee80211_parse_p2p_noa +EXPORT_SYMBOL net/mac80211/mac80211 0x9e815006 ieee80211_rate_control_register +EXPORT_SYMBOL net/mac80211/mac80211 0xa03761fb ieee80211_generic_frame_duration +EXPORT_SYMBOL net/mac80211/mac80211 0xa0e9cf64 ieee80211_csa_finish +EXPORT_SYMBOL net/mac80211/mac80211 0xa7223141 ieee80211_rts_get +EXPORT_SYMBOL net/mac80211/mac80211 0xab2fb4f8 ieee80211_sched_scan_results +EXPORT_SYMBOL net/mac80211/mac80211 0xac6eb316 ieee80211_sta_eosp +EXPORT_SYMBOL net/mac80211/mac80211 0xae27006c ieee80211_set_hw_80211_encap +EXPORT_SYMBOL net/mac80211/mac80211 0xae4f4fdd ieee80211_rts_duration +EXPORT_SYMBOL net/mac80211/mac80211 0xb0d49b7b ieee80211_ap_probereq_get +EXPORT_SYMBOL net/mac80211/mac80211 0xb33aa404 ieee80211_queue_work +EXPORT_SYMBOL net/mac80211/mac80211 0xb76bdc93 ieee80211_tx_status_irqsafe +EXPORT_SYMBOL net/mac80211/mac80211 0xbbcb96e8 ieee80211_rx_napi +EXPORT_SYMBOL net/mac80211/mac80211 0xc159dcba ieee80211_report_low_ack +EXPORT_SYMBOL net/mac80211/mac80211 0xc16d3651 ieee80211_sched_scan_stopped +EXPORT_SYMBOL net/mac80211/mac80211 0xc2fbb6ea ieee80211_proberesp_get +EXPORT_SYMBOL net/mac80211/mac80211 0xc800a71d ieee80211_stop_queue +EXPORT_SYMBOL net/mac80211/mac80211 0xca0150c8 ieee80211_report_wowlan_wakeup +EXPORT_SYMBOL net/mac80211/mac80211 0xcf21aa13 ieee80211_radar_detected +EXPORT_SYMBOL net/mac80211/mac80211 0xcf22b26a ieee80211_send_eosp_nullfunc +EXPORT_SYMBOL net/mac80211/mac80211 0xd35a3258 ieee80211_stop_tx_ba_session +EXPORT_SYMBOL net/mac80211/mac80211 0xd3a05ff7 ieee80211_stop_tx_ba_cb_irqsafe +EXPORT_SYMBOL net/mac80211/mac80211 0xd6a8a09b ieee80211_free_hw +EXPORT_SYMBOL net/mac80211/mac80211 0xdf40f26d ieee80211_reserve_tid +EXPORT_SYMBOL net/mac80211/mac80211 0xeb13cd4c ieee80211_beacon_get_template +EXPORT_SYMBOL net/mac80211/mac80211 0xeb679053 ieee80211_sta_ps_transition +EXPORT_SYMBOL net/mac80211/mac80211 0xefa38864 ieee80211_start_tx_ba_session +EXPORT_SYMBOL net/mac80211/mac80211 0xf00a37b7 ieee80211_free_txskb +EXPORT_SYMBOL net/mac80211/mac80211 0xf12c737f ieee80211_register_hw +EXPORT_SYMBOL net/mac80211/mac80211 0xf7fe8d82 ieee80211_get_tkip_p2k +EXPORT_SYMBOL net/mac80211/mac80211 0xf851650f __ieee80211_get_tx_led_name +EXPORT_SYMBOL net/mac80211/mac80211 0xfd1b0783 ieee80211_sta_uapsd_trigger +EXPORT_SYMBOL net/mac80211/mac80211 0xfdb64fb4 ieee80211_beacon_loss +EXPORT_SYMBOL net/mac80211/mac80211 0xfe0c52e1 ieee80211_cqm_beacon_loss_notify +EXPORT_SYMBOL net/mac802154/mac802154 0x217ee6b9 ieee802154_xmit_complete +EXPORT_SYMBOL net/mac802154/mac802154 0x3f1e0443 ieee802154_wake_queue +EXPORT_SYMBOL net/mac802154/mac802154 0x42876a79 ieee802154_free_hw +EXPORT_SYMBOL net/mac802154/mac802154 0x6716caa5 ieee802154_stop_queue +EXPORT_SYMBOL net/mac802154/mac802154 0x7b46e8e2 ieee802154_unregister_hw +EXPORT_SYMBOL net/mac802154/mac802154 0xba794e48 ieee802154_alloc_hw +EXPORT_SYMBOL net/mac802154/mac802154 0xce299c97 ieee802154_rx_irqsafe +EXPORT_SYMBOL net/mac802154/mac802154 0xea9ca4cf ieee802154_register_hw +EXPORT_SYMBOL net/netfilter/ipvs/ip_vs 0x0e65631c ip_vs_conn_new +EXPORT_SYMBOL net/netfilter/ipvs/ip_vs 0x127a25e7 ip_vs_conn_in_get +EXPORT_SYMBOL net/netfilter/ipvs/ip_vs 0x1edac134 ip_vs_conn_out_get +EXPORT_SYMBOL net/netfilter/ipvs/ip_vs 0x3b441506 ip_vs_tcp_conn_listen +EXPORT_SYMBOL net/netfilter/ipvs/ip_vs 0x43619ebf unregister_ip_vs_app +EXPORT_SYMBOL net/netfilter/ipvs/ip_vs 0x460fbf1f ip_vs_proto_get +EXPORT_SYMBOL net/netfilter/ipvs/ip_vs 0x49529b2f register_ip_vs_app_inc +EXPORT_SYMBOL net/netfilter/ipvs/ip_vs 0x6b7ed2ad ip_vs_scheduler_err +EXPORT_SYMBOL net/netfilter/ipvs/ip_vs 0x80bda5e7 ip_vs_conn_put +EXPORT_SYMBOL net/netfilter/ipvs/ip_vs 0x966d69b6 ip_vs_nfct_expect_related +EXPORT_SYMBOL net/netfilter/ipvs/ip_vs 0x98795b1b ip_vs_new_conn_out +EXPORT_SYMBOL net/netfilter/ipvs/ip_vs 0x9bf798e0 register_ip_vs_app +EXPORT_SYMBOL net/netfilter/ipvs/ip_vs 0xba0a8b10 ip_vs_proto_data_get +EXPORT_SYMBOL net/netfilter/ipvs/ip_vs 0xd831a1a2 ip_vs_proto_name +EXPORT_SYMBOL net/netfilter/ipvs/ip_vs 0xdd502685 unregister_ip_vs_scheduler +EXPORT_SYMBOL net/netfilter/ipvs/ip_vs 0xee006995 register_ip_vs_scheduler +EXPORT_SYMBOL net/netfilter/nf_conntrack 0xd0d56b84 nf_ct_ext_add +EXPORT_SYMBOL net/netfilter/nf_conntrack_pptp 0xf2a36612 pptp_msg_name +EXPORT_SYMBOL net/netfilter/nf_nat 0x1f9872cf nf_nat_setup_info +EXPORT_SYMBOL net/netfilter/nf_nat 0x306bf2e8 nf_nat_follow_master +EXPORT_SYMBOL net/netfilter/nf_nat 0x3da8cd20 __nf_nat_mangle_tcp_packet +EXPORT_SYMBOL net/netfilter/nf_nat 0x70d6f550 nf_nat_mangle_udp_packet +EXPORT_SYMBOL net/netfilter/nf_nat 0x920f2ae9 nf_xfrm_me_harder +EXPORT_SYMBOL net/netfilter/nft_fib 0xe8203072 nft_fib_policy +EXPORT_SYMBOL net/netfilter/x_tables 0x00dd75b2 xt_register_target +EXPORT_SYMBOL net/netfilter/x_tables 0x015a1f8f xt_unregister_targets +EXPORT_SYMBOL net/netfilter/x_tables 0x0d7f5fcd xt_alloc_entry_offsets +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 0x51c8a086 xt_register_matches +EXPORT_SYMBOL net/netfilter/x_tables 0x6b392f98 xt_register_match +EXPORT_SYMBOL net/netfilter/x_tables 0x89552de3 xt_table_get_private_protected +EXPORT_SYMBOL net/netfilter/x_tables 0x91211173 xt_find_match +EXPORT_SYMBOL net/netfilter/x_tables 0x977fd4bf xt_alloc_table_info +EXPORT_SYMBOL net/netfilter/x_tables 0xa25fc115 xt_compat_check_entry_offsets +EXPORT_SYMBOL net/netfilter/x_tables 0xaeb096ed xt_unregister_match +EXPORT_SYMBOL net/netfilter/x_tables 0xcb3e91cc xt_counters_alloc +EXPORT_SYMBOL net/netfilter/x_tables 0xcfd0b51a xt_unregister_matches +EXPORT_SYMBOL net/netfilter/x_tables 0xd87ae60d xt_check_entry_offsets +EXPORT_SYMBOL net/netfilter/x_tables 0xe02836a0 xt_unregister_target +EXPORT_SYMBOL net/netfilter/x_tables 0xe204e042 xt_free_table_info +EXPORT_SYMBOL net/netfilter/x_tables 0xf87dd8f5 xt_register_targets +EXPORT_SYMBOL net/netfilter/x_tables 0xfef779fa xt_find_jump_offset +EXPORT_SYMBOL net/nfc/hci/hci 0x0f313fca nfc_hci_free_device +EXPORT_SYMBOL net/nfc/hci/hci 0x169b9ab0 nfc_llc_start +EXPORT_SYMBOL net/nfc/hci/hci 0x254b7237 nfc_hci_reset_pipes_per_host +EXPORT_SYMBOL net/nfc/hci/hci 0x282c1432 nfc_hci_allocate_device +EXPORT_SYMBOL net/nfc/hci/hci 0x2f5a30a8 nfc_hci_send_cmd_async +EXPORT_SYMBOL net/nfc/hci/hci 0x53c95635 nfc_hci_set_param +EXPORT_SYMBOL net/nfc/hci/hci 0x60840a31 nfc_hci_send_cmd +EXPORT_SYMBOL net/nfc/hci/hci 0x65bb0c56 nfc_hci_register_device +EXPORT_SYMBOL net/nfc/hci/hci 0x6d9992ce nfc_hci_disconnect_all_gates +EXPORT_SYMBOL net/nfc/hci/hci 0x74fe3670 nfc_hci_result_to_errno +EXPORT_SYMBOL net/nfc/hci/hci 0x7e7f198a nfc_hci_reset_pipes +EXPORT_SYMBOL net/nfc/hci/hci 0x7f8d9495 nfc_hci_recv_frame +EXPORT_SYMBOL net/nfc/hci/hci 0xaa54dcaf nfc_hci_unregister_device +EXPORT_SYMBOL net/nfc/hci/hci 0xab2c1203 nfc_hci_connect_gate +EXPORT_SYMBOL net/nfc/hci/hci 0xbd6bea2d nfc_hci_driver_failure +EXPORT_SYMBOL net/nfc/hci/hci 0xc493e429 nfc_hci_disconnect_gate +EXPORT_SYMBOL net/nfc/hci/hci 0xc75006c3 nfc_llc_stop +EXPORT_SYMBOL net/nfc/hci/hci 0xceeb5d16 nfc_hci_get_clientdata +EXPORT_SYMBOL net/nfc/hci/hci 0xcf55ebf7 nfc_hci_target_discovered +EXPORT_SYMBOL net/nfc/hci/hci 0xd71e55eb nfc_hci_send_event +EXPORT_SYMBOL net/nfc/hci/hci 0xdd231c55 nfc_hci_sak_to_protocol +EXPORT_SYMBOL net/nfc/hci/hci 0xed2fb0bc nfc_hci_set_clientdata +EXPORT_SYMBOL net/nfc/hci/hci 0xf9979cb1 nfc_hci_get_param +EXPORT_SYMBOL net/nfc/nci/nci 0x07574139 nci_send_frame +EXPORT_SYMBOL net/nfc/nci/nci 0x106b5145 nci_register_device +EXPORT_SYMBOL net/nfc/nci/nci 0x14744f6a nci_req_complete +EXPORT_SYMBOL net/nfc/nci/nci 0x14e17278 nci_nfcee_discover +EXPORT_SYMBOL net/nfc/nci/nci 0x1ccf99ba nci_core_init +EXPORT_SYMBOL net/nfc/nci/nci 0x21e7bfcd nci_hci_open_pipe +EXPORT_SYMBOL net/nfc/nci/nci 0x49e240f0 nci_set_config +EXPORT_SYMBOL net/nfc/nci/nci 0x542d6c61 nci_hci_send_cmd +EXPORT_SYMBOL net/nfc/nci/nci 0x58d3930a nci_free_device +EXPORT_SYMBOL net/nfc/nci/nci 0x5ae16307 nci_nfcee_mode_set +EXPORT_SYMBOL net/nfc/nci/nci 0x645096ed nci_hci_set_param +EXPORT_SYMBOL net/nfc/nci/nci 0x6deac219 nci_core_reset +EXPORT_SYMBOL net/nfc/nci/nci 0x7923fa49 nci_hci_get_param +EXPORT_SYMBOL net/nfc/nci/nci 0x817af6cf nci_conn_max_data_pkt_payload_size +EXPORT_SYMBOL net/nfc/nci/nci 0x8217de4a nci_allocate_device +EXPORT_SYMBOL net/nfc/nci/nci 0x9203d776 nci_send_cmd +EXPORT_SYMBOL net/nfc/nci/nci 0x97764396 nci_unregister_device +EXPORT_SYMBOL net/nfc/nci/nci 0x98c33503 nci_recv_frame +EXPORT_SYMBOL net/nfc/nci/nci 0x9c8231ab nci_send_data +EXPORT_SYMBOL net/nfc/nci/nci 0x9e8fc9be nci_core_conn_create +EXPORT_SYMBOL net/nfc/nci/nci 0xa42c6007 nci_get_conn_info_by_dest_type_params +EXPORT_SYMBOL net/nfc/nci/nci 0xba490602 nci_to_errno +EXPORT_SYMBOL net/nfc/nci/nci 0xba8252aa nci_prop_cmd +EXPORT_SYMBOL net/nfc/nci/nci 0xca79d939 nci_core_cmd +EXPORT_SYMBOL net/nfc/nci/nci 0xcdc3259c nci_hci_clear_all_pipes +EXPORT_SYMBOL net/nfc/nci/nci 0xd14f938d nci_hci_connect_gate +EXPORT_SYMBOL net/nfc/nci/nci 0xd96a4a8a nci_nfcc_loopback +EXPORT_SYMBOL net/nfc/nci/nci 0xdc1645e3 nci_core_conn_close +EXPORT_SYMBOL net/nfc/nci/nci 0xe96a4914 nci_hci_send_event +EXPORT_SYMBOL net/nfc/nci/nci 0xffc074d3 nci_hci_dev_session_init +EXPORT_SYMBOL net/nfc/nfc 0x02a1f288 nfc_vendor_cmd_reply +EXPORT_SYMBOL net/nfc/nfc 0x1497195c __nfc_alloc_vendor_cmd_reply_skb +EXPORT_SYMBOL net/nfc/nfc 0x197681e7 nfc_remove_se +EXPORT_SYMBOL net/nfc/nfc 0x37821b56 nfc_register_device +EXPORT_SYMBOL net/nfc/nfc 0x38798f2f nfc_proto_unregister +EXPORT_SYMBOL net/nfc/nfc 0x3b62fd93 nfc_alloc_recv_skb +EXPORT_SYMBOL net/nfc/nfc 0x40797e47 nfc_set_remote_general_bytes +EXPORT_SYMBOL net/nfc/nfc 0x41ad90ee nfc_unregister_device +EXPORT_SYMBOL net/nfc/nfc 0x4706811b nfc_driver_failure +EXPORT_SYMBOL net/nfc/nfc 0x4c8eeea0 nfc_targets_found +EXPORT_SYMBOL net/nfc/nfc 0x51aaaac7 nfc_se_connectivity +EXPORT_SYMBOL net/nfc/nfc 0x60de8930 nfc_dep_link_is_up +EXPORT_SYMBOL net/nfc/nfc 0x7491dd12 nfc_class +EXPORT_SYMBOL net/nfc/nfc 0x74965274 nfc_send_to_raw_sock +EXPORT_SYMBOL net/nfc/nfc 0x75b64afe nfc_add_se +EXPORT_SYMBOL net/nfc/nfc 0x77283ebb nfc_tm_deactivated +EXPORT_SYMBOL net/nfc/nfc 0x80b49e58 nfc_find_se +EXPORT_SYMBOL net/nfc/nfc 0x8526f7d4 nfc_fw_download_done +EXPORT_SYMBOL net/nfc/nfc 0xaa8d75ca nfc_proto_register +EXPORT_SYMBOL net/nfc/nfc 0xaf66a34b nfc_allocate_device +EXPORT_SYMBOL net/nfc/nfc 0xb4f575d9 nfc_tm_data_received +EXPORT_SYMBOL net/nfc/nfc 0xc455e6e0 nfc_se_transaction +EXPORT_SYMBOL net/nfc/nfc 0xcabfd186 nfc_get_local_general_bytes +EXPORT_SYMBOL net/nfc/nfc 0xcef655ad nfc_tm_activated +EXPORT_SYMBOL net/nfc/nfc 0xdac91210 nfc_target_lost +EXPORT_SYMBOL net/nfc/nfc_digital 0x02fafa8c nfc_digital_free_device +EXPORT_SYMBOL net/nfc/nfc_digital 0x4779b697 nfc_digital_register_device +EXPORT_SYMBOL net/nfc/nfc_digital 0x636ce7c8 nfc_digital_allocate_device +EXPORT_SYMBOL net/nfc/nfc_digital 0x6b82c3fb nfc_digital_unregister_device +EXPORT_SYMBOL net/phonet/phonet 0x251e0cdd phonet_stream_ops +EXPORT_SYMBOL net/phonet/phonet 0x378e33d9 phonet_header_ops +EXPORT_SYMBOL net/phonet/phonet 0x6dcbd7c4 pn_sock_hash +EXPORT_SYMBOL net/phonet/phonet 0x9dca85f5 phonet_proto_unregister +EXPORT_SYMBOL net/phonet/phonet 0xb0057c83 pn_sock_get_port +EXPORT_SYMBOL net/phonet/phonet 0xcc8d28ed pn_skb_send +EXPORT_SYMBOL net/phonet/phonet 0xfb860dff pn_sock_unhash +EXPORT_SYMBOL net/phonet/phonet 0xfd5b0c7f phonet_proto_register +EXPORT_SYMBOL net/rxrpc/rxrpc 0x01f478e9 rxrpc_kernel_set_max_life +EXPORT_SYMBOL net/rxrpc/rxrpc 0x0701a2db rxrpc_kernel_end_call +EXPORT_SYMBOL net/rxrpc/rxrpc 0x1710aacf rxrpc_kernel_check_life +EXPORT_SYMBOL net/rxrpc/rxrpc 0x20791a88 rxrpc_kernel_get_epoch +EXPORT_SYMBOL net/rxrpc/rxrpc 0x2414251f rxrpc_kernel_set_tx_length +EXPORT_SYMBOL net/rxrpc/rxrpc 0x2bb7b740 rxrpc_kernel_get_srtt +EXPORT_SYMBOL net/rxrpc/rxrpc 0x31bf3ca3 rxrpc_debug_id +EXPORT_SYMBOL net/rxrpc/rxrpc 0x3df97209 rxrpc_kernel_send_data +EXPORT_SYMBOL net/rxrpc/rxrpc 0x67c69145 rxrpc_get_null_key +EXPORT_SYMBOL net/rxrpc/rxrpc 0x718b4111 rxrpc_kernel_charge_accept +EXPORT_SYMBOL net/rxrpc/rxrpc 0x838efd29 rxrpc_sock_set_min_security_level +EXPORT_SYMBOL net/rxrpc/rxrpc 0x97ec5581 key_type_rxrpc +EXPORT_SYMBOL net/rxrpc/rxrpc 0xba231825 rxrpc_kernel_get_reply_time +EXPORT_SYMBOL net/rxrpc/rxrpc 0xc116b87d rxrpc_kernel_begin_call +EXPORT_SYMBOL net/rxrpc/rxrpc 0xc73542c5 rxrpc_kernel_recv_data +EXPORT_SYMBOL net/rxrpc/rxrpc 0xc860f10c rxrpc_kernel_abort_call +EXPORT_SYMBOL net/rxrpc/rxrpc 0xe4c8fe73 rxrpc_kernel_get_peer +EXPORT_SYMBOL net/rxrpc/rxrpc 0xf0a719e7 rxrpc_kernel_new_call_notification +EXPORT_SYMBOL net/rxrpc/rxrpc 0xf3b5974c rxrpc_get_server_data_key +EXPORT_SYMBOL net/sctp/sctp 0xc42d6ebd sctp_do_peeloff +EXPORT_SYMBOL net/sunrpc/auth_gss/auth_rpcgss 0x0b43e806 gss_mech_put +EXPORT_SYMBOL net/sunrpc/auth_gss/auth_rpcgss 0x83b26cae gss_pseudoflavor_to_service +EXPORT_SYMBOL net/sunrpc/auth_gss/auth_rpcgss 0xd2edd5dc gss_mech_get +EXPORT_SYMBOL net/sunrpc/sunrpc 0x8fa6b341 svc_pool_stats_open +EXPORT_SYMBOL net/sunrpc/sunrpc 0xa31fd3bb xdr_restrict_buflen +EXPORT_SYMBOL net/sunrpc/sunrpc 0xefe9d6ce xdr_truncate_encode +EXPORT_SYMBOL net/tipc/tipc 0x1402b430 tipc_dump_done +EXPORT_SYMBOL net/tipc/tipc 0x2ad35932 tipc_sk_fill_sock_diag +EXPORT_SYMBOL net/tipc/tipc 0x910cc913 tipc_nl_sk_walk +EXPORT_SYMBOL net/tipc/tipc 0xac57ccb8 tipc_dump_start +EXPORT_SYMBOL net/tls/tls 0x1a06a662 tls_get_record +EXPORT_SYMBOL net/wireless/cfg80211 0x02672889 cfg80211_sched_scan_stopped +EXPORT_SYMBOL net/wireless/cfg80211 0x02f6f948 cfg80211_update_owe_info_event +EXPORT_SYMBOL net/wireless/cfg80211 0x04e36427 cfg80211_tx_mgmt_expired +EXPORT_SYMBOL net/wireless/cfg80211 0x09723865 cfg80211_mgmt_tx_status +EXPORT_SYMBOL net/wireless/cfg80211 0x0be95b93 cfg80211_rx_assoc_resp +EXPORT_SYMBOL net/wireless/cfg80211 0x0c9b2ee5 cfg80211_rx_mgmt_khz +EXPORT_SYMBOL net/wireless/cfg80211 0x0cde1df4 cfg80211_scan_done +EXPORT_SYMBOL net/wireless/cfg80211 0x1128c107 cfg80211_remain_on_channel_expired +EXPORT_SYMBOL net/wireless/cfg80211 0x117aca91 cfg80211_merge_profile +EXPORT_SYMBOL net/wireless/cfg80211 0x1537e8e3 cfg80211_roamed +EXPORT_SYMBOL net/wireless/cfg80211 0x15a37cf3 cfg80211_calculate_bitrate +EXPORT_SYMBOL net/wireless/cfg80211 0x1879fcbd bridge_tunnel_header +EXPORT_SYMBOL net/wireless/cfg80211 0x18b53545 cfg80211_chandef_create +EXPORT_SYMBOL net/wireless/cfg80211 0x19062d61 cfg80211_conn_failed +EXPORT_SYMBOL net/wireless/cfg80211 0x1a1f6456 wiphy_rfkill_start_polling +EXPORT_SYMBOL net/wireless/cfg80211 0x1ab288b2 regulatory_set_wiphy_regd_sync_rtnl +EXPORT_SYMBOL net/wireless/cfg80211 0x1aee658d __cfg80211_alloc_reply_skb +EXPORT_SYMBOL net/wireless/cfg80211 0x1ce2497f reg_query_regdb_wmm +EXPORT_SYMBOL net/wireless/cfg80211 0x1ed8ab7e regulatory_pre_cac_allowed +EXPORT_SYMBOL net/wireless/cfg80211 0x232222a5 cfg80211_auth_timeout +EXPORT_SYMBOL net/wireless/cfg80211 0x2409a286 wiphy_free +EXPORT_SYMBOL net/wireless/cfg80211 0x261b3c78 cfg80211_nan_match +EXPORT_SYMBOL net/wireless/cfg80211 0x275269b3 ieee80211_ie_split_ric +EXPORT_SYMBOL net/wireless/cfg80211 0x28446f90 ieee80211_get_response_rate +EXPORT_SYMBOL net/wireless/cfg80211 0x2cfe1946 cfg80211_stop_iface +EXPORT_SYMBOL net/wireless/cfg80211 0x3028713f cfg80211_sched_scan_results +EXPORT_SYMBOL net/wireless/cfg80211 0x331a6041 cfg80211_check_combinations +EXPORT_SYMBOL net/wireless/cfg80211 0x338cc1ee cfg80211_cqm_beacon_loss_notify +EXPORT_SYMBOL net/wireless/cfg80211 0x34c8cf87 cfg80211_rx_mlme_mgmt +EXPORT_SYMBOL net/wireless/cfg80211 0x3a5bab4d cfg80211_cac_event +EXPORT_SYMBOL net/wireless/cfg80211 0x3bd8aaa1 ieee80211_operating_class_to_band +EXPORT_SYMBOL net/wireless/cfg80211 0x43336486 ieee80211_get_num_supported_channels +EXPORT_SYMBOL net/wireless/cfg80211 0x43f5efcf cfg80211_sinfo_alloc_tid_stats +EXPORT_SYMBOL net/wireless/cfg80211 0x46312808 ieee80211_radiotap_iterator_next +EXPORT_SYMBOL net/wireless/cfg80211 0x4b5add2c cfg80211_probe_status +EXPORT_SYMBOL net/wireless/cfg80211 0x4bb39a4a cfg80211_unregister_wdev +EXPORT_SYMBOL net/wireless/cfg80211 0x4c248296 cfg80211_unlink_bss +EXPORT_SYMBOL net/wireless/cfg80211 0x54e34007 cfg80211_chandef_dfs_required +EXPORT_SYMBOL net/wireless/cfg80211 0x5c76288d wiphy_new_nm +EXPORT_SYMBOL net/wireless/cfg80211 0x61efbeb3 cfg80211_connect_done +EXPORT_SYMBOL net/wireless/cfg80211 0x64ce8a29 __cfg80211_alloc_event_skb +EXPORT_SYMBOL net/wireless/cfg80211 0x661f1b61 cfg80211_check_station_change +EXPORT_SYMBOL net/wireless/cfg80211 0x662e29fc cfg80211_cqm_rssi_notify +EXPORT_SYMBOL net/wireless/cfg80211 0x66d12412 ieee80211_data_to_8023_exthdr +EXPORT_SYMBOL net/wireless/cfg80211 0x67d86dcd ieee80211_chandef_to_operating_class +EXPORT_SYMBOL net/wireless/cfg80211 0x68600c40 ieee80211_mandatory_rates +EXPORT_SYMBOL net/wireless/cfg80211 0x69b18f43 rfc1042_header +EXPORT_SYMBOL net/wireless/cfg80211 0x6ac8d008 cfg80211_get_drvinfo +EXPORT_SYMBOL net/wireless/cfg80211 0x6b048935 cfg80211_rx_unexpected_4addr_frame +EXPORT_SYMBOL net/wireless/cfg80211 0x6bedf402 ieee80211_freq_khz_to_channel +EXPORT_SYMBOL net/wireless/cfg80211 0x6e00b107 regulatory_set_wiphy_regd +EXPORT_SYMBOL net/wireless/cfg80211 0x7009b88d cfg80211_rx_unprot_mlme_mgmt +EXPORT_SYMBOL net/wireless/cfg80211 0x7288d11a __cfg80211_send_event_skb +EXPORT_SYMBOL net/wireless/cfg80211 0x76b3ace9 cfg80211_new_sta +EXPORT_SYMBOL net/wireless/cfg80211 0x77b6c36e ieee80211_get_channel_khz +EXPORT_SYMBOL net/wireless/cfg80211 0x79b82a71 cfg80211_find_vendor_elem +EXPORT_SYMBOL net/wireless/cfg80211 0x7af8f851 regulatory_hint +EXPORT_SYMBOL net/wireless/cfg80211 0x7c3ac925 ieee80211_get_vht_max_nss +EXPORT_SYMBOL net/wireless/cfg80211 0x7ef39823 ieee80211_hdrlen +EXPORT_SYMBOL net/wireless/cfg80211 0x81a471d6 cfg80211_chandef_valid +EXPORT_SYMBOL net/wireless/cfg80211 0x82ee8b2b wiphy_apply_custom_regulatory +EXPORT_SYMBOL net/wireless/cfg80211 0x84d46d81 cfg80211_ch_switch_started_notify +EXPORT_SYMBOL net/wireless/cfg80211 0x856cfdbc cfg80211_get_station +EXPORT_SYMBOL net/wireless/cfg80211 0x86b20b26 cfg80211_rx_control_port +EXPORT_SYMBOL net/wireless/cfg80211 0x8e7d6fe9 cfg80211_pmksa_candidate_notify +EXPORT_SYMBOL net/wireless/cfg80211 0x8fa02936 cfg80211_free_nan_func +EXPORT_SYMBOL net/wireless/cfg80211 0x9779b9f2 cfg80211_notify_new_peer_candidate +EXPORT_SYMBOL net/wireless/cfg80211 0x9ab53d43 cfg80211_send_layer2_update +EXPORT_SYMBOL net/wireless/cfg80211 0x9d6cba30 cfg80211_find_elem_match +EXPORT_SYMBOL net/wireless/cfg80211 0xa00dd56d cfg80211_sched_scan_stopped_rtnl +EXPORT_SYMBOL net/wireless/cfg80211 0xa4f5b27d cfg80211_gtk_rekey_notify +EXPORT_SYMBOL net/wireless/cfg80211 0xa68a8a2e cfg80211_tx_mlme_mgmt +EXPORT_SYMBOL net/wireless/cfg80211 0xa892b5e9 cfg80211_abandon_assoc +EXPORT_SYMBOL net/wireless/cfg80211 0xaabf4c37 cfg80211_chandef_usable +EXPORT_SYMBOL net/wireless/cfg80211 0xac97a207 ieee80211_radiotap_iterator_init +EXPORT_SYMBOL net/wireless/cfg80211 0xacddc99b cfg80211_rx_spurious_frame +EXPORT_SYMBOL net/wireless/cfg80211 0xafe8b001 ieee80211_channel_to_freq_khz +EXPORT_SYMBOL net/wireless/cfg80211 0xb347558e cfg80211_disconnected +EXPORT_SYMBOL net/wireless/cfg80211 0xb3d20740 ieee80211_get_hdrlen_from_skb +EXPORT_SYMBOL net/wireless/cfg80211 0xb51c8a47 cfg80211_put_bss +EXPORT_SYMBOL net/wireless/cfg80211 0xb6613c51 cfg80211_control_port_tx_status +EXPORT_SYMBOL net/wireless/cfg80211 0xb6720a88 cfg80211_ready_on_channel +EXPORT_SYMBOL net/wireless/cfg80211 0xbab378e7 cfg80211_nan_func_terminated +EXPORT_SYMBOL net/wireless/cfg80211 0xbf2d5539 freq_reg_info +EXPORT_SYMBOL net/wireless/cfg80211 0xc4ab053f cfg80211_iftype_allowed +EXPORT_SYMBOL net/wireless/cfg80211 0xc93c9cab cfg80211_cqm_txe_notify +EXPORT_SYMBOL net/wireless/cfg80211 0xca11726b wiphy_rfkill_set_hw_state +EXPORT_SYMBOL net/wireless/cfg80211 0xcc1a7c48 cfg80211_is_element_inherited +EXPORT_SYMBOL net/wireless/cfg80211 0xcd73ffc2 cfg80211_external_auth_request +EXPORT_SYMBOL net/wireless/cfg80211 0xcd758f84 cfg80211_iter_combinations +EXPORT_SYMBOL net/wireless/cfg80211 0xce57e913 wiphy_register +EXPORT_SYMBOL net/wireless/cfg80211 0xcf0c6b41 cfg80211_get_bss +EXPORT_SYMBOL net/wireless/cfg80211 0xd002fafc cfg80211_port_authorized +EXPORT_SYMBOL net/wireless/cfg80211 0xd3bf1de8 cfg80211_del_sta_sinfo +EXPORT_SYMBOL net/wireless/cfg80211 0xd3e166b8 cfg80211_ibss_joined +EXPORT_SYMBOL net/wireless/cfg80211 0xd4978482 ieee80211_amsdu_to_8023s +EXPORT_SYMBOL net/wireless/cfg80211 0xd50a566a cfg80211_ref_bss +EXPORT_SYMBOL net/wireless/cfg80211 0xd56d55f3 ieee80211_get_mesh_hdrlen +EXPORT_SYMBOL net/wireless/cfg80211 0xd69f61e9 cfg80211_tdls_oper_request +EXPORT_SYMBOL net/wireless/cfg80211 0xd709c881 wiphy_unregister +EXPORT_SYMBOL net/wireless/cfg80211 0xdaeb6caa cfg80211_report_obss_beacon_khz +EXPORT_SYMBOL net/wireless/cfg80211 0xdba126c1 reg_initiator_name +EXPORT_SYMBOL net/wireless/cfg80211 0xdf2a7302 cfg80211_inform_bss_frame_data +EXPORT_SYMBOL net/wireless/cfg80211 0xe4446ec6 cfg80211_assoc_timeout +EXPORT_SYMBOL net/wireless/cfg80211 0xe69779f4 cfg80211_inform_bss_data +EXPORT_SYMBOL net/wireless/cfg80211 0xe716c293 cfg80211_report_wowlan_wakeup +EXPORT_SYMBOL net/wireless/cfg80211 0xe7396feb cfg80211_bss_iter +EXPORT_SYMBOL net/wireless/cfg80211 0xeb27613f cfg80211_michael_mic_failure +EXPORT_SYMBOL net/wireless/cfg80211 0xec16fd61 cfg80211_ch_switch_notify +EXPORT_SYMBOL net/wireless/cfg80211 0xef45c03c wiphy_rfkill_stop_polling +EXPORT_SYMBOL net/wireless/cfg80211 0xf11361d6 cfg80211_classify8021d +EXPORT_SYMBOL net/wireless/cfg80211 0xf2a10417 cfg80211_crit_proto_stopped +EXPORT_SYMBOL net/wireless/cfg80211 0xf4d8679d cfg80211_cqm_pktloss_notify +EXPORT_SYMBOL net/wireless/cfg80211 0xf505ffe6 cfg80211_ft_event +EXPORT_SYMBOL net/wireless/cfg80211 0xf5596d89 cfg80211_get_p2p_attr +EXPORT_SYMBOL net/wireless/cfg80211 0xf58fdd71 cfg80211_reg_can_beacon_relax +EXPORT_SYMBOL net/wireless/cfg80211 0xf6562db4 cfg80211_reg_can_beacon +EXPORT_SYMBOL net/wireless/cfg80211 0xfa22e1cb cfg80211_radar_event +EXPORT_SYMBOL net/wireless/cfg80211 0xfae8514f cfg80211_chandef_compatible +EXPORT_SYMBOL net/wireless/cfg80211 0xfedd4ce8 cfg80211_sta_opmode_change_notify +EXPORT_SYMBOL net/wireless/cfg80211 0xff0c113a ieee80211_bss_get_elem +EXPORT_SYMBOL ubuntu/hio/hio 0x03b64bdd ssd_get_label +EXPORT_SYMBOL ubuntu/hio/hio 0x0781a36a ssd_unregister_event_notifier +EXPORT_SYMBOL ubuntu/hio/hio 0x26dd7255 ssd_get_temperature +EXPORT_SYMBOL ubuntu/hio/hio 0x26f13228 ssd_bm_status +EXPORT_SYMBOL ubuntu/hio/hio 0x2eb78b54 ssd_submit_pbio +EXPORT_SYMBOL ubuntu/hio/hio 0x49b1e586 ssd_get_pciaddr +EXPORT_SYMBOL ubuntu/hio/hio 0x67dd8e97 ssd_register_event_notifier +EXPORT_SYMBOL ubuntu/hio/hio 0x69c7c4c0 ssd_set_wmode +EXPORT_SYMBOL ubuntu/hio/hio 0x72cf7354 ssd_get_version +EXPORT_SYMBOL ubuntu/hio/hio 0x9c910212 ssd_reset +EXPORT_SYMBOL ubuntu/hio/hio 0xcf044761 ssd_set_otprotect +EXPORT_SYMBOL vmlinux 0x001f8a2a find_inode_nowait +EXPORT_SYMBOL vmlinux 0x002ac813 netlink_capable +EXPORT_SYMBOL vmlinux 0x0073fd9a get_tree_nodev +EXPORT_SYMBOL vmlinux 0x0088f765 tcp_read_sock +EXPORT_SYMBOL vmlinux 0x0099b227 unregister_framebuffer +EXPORT_SYMBOL vmlinux 0x00a3eeaa lookup_bdev +EXPORT_SYMBOL vmlinux 0x00a4b044 amd_iommu_deactivate_guest_mode +EXPORT_SYMBOL vmlinux 0x00addcc0 devm_get_clk_from_child +EXPORT_SYMBOL vmlinux 0x00b4e615 posix_acl_equiv_mode +EXPORT_SYMBOL vmlinux 0x00c8ac5e dns_query +EXPORT_SYMBOL vmlinux 0x00d13ae4 pci_msix_vec_count +EXPORT_SYMBOL vmlinux 0x00d22922 sock_set_reuseaddr +EXPORT_SYMBOL vmlinux 0x00d7e722 vme_lm_count +EXPORT_SYMBOL vmlinux 0x00dffd0e mipi_dsi_dcs_set_page_address +EXPORT_SYMBOL vmlinux 0x00ea1ce4 dup_iter +EXPORT_SYMBOL vmlinux 0x01000e51 schedule +EXPORT_SYMBOL vmlinux 0x0113142c ip_cmsg_recv_offset +EXPORT_SYMBOL vmlinux 0x011ca083 convert_art_to_tsc +EXPORT_SYMBOL vmlinux 0x01228339 param_get_int +EXPORT_SYMBOL vmlinux 0x013f26ae dma_fence_get_stub +EXPORT_SYMBOL vmlinux 0x0145ca68 simple_rmdir +EXPORT_SYMBOL vmlinux 0x0147812c kblockd_mod_delayed_work_on +EXPORT_SYMBOL vmlinux 0x01553371 vm_brk_flags +EXPORT_SYMBOL vmlinux 0x015af7f4 system_state +EXPORT_SYMBOL vmlinux 0x017456e3 netif_stacked_transfer_operstate +EXPORT_SYMBOL vmlinux 0x01757935 rdmacg_register_device +EXPORT_SYMBOL vmlinux 0x017de3d5 nr_cpu_ids +EXPORT_SYMBOL vmlinux 0x018574a1 mb_cache_entry_delete +EXPORT_SYMBOL vmlinux 0x0188cd88 vme_alloc_consistent +EXPORT_SYMBOL vmlinux 0x0191a2b0 blk_pm_runtime_init +EXPORT_SYMBOL vmlinux 0x019859e6 fb_set_var +EXPORT_SYMBOL vmlinux 0x019a07e9 tcf_idrinfo_destroy +EXPORT_SYMBOL vmlinux 0x01a6c140 md_bitmap_startwrite +EXPORT_SYMBOL vmlinux 0x01aa3099 unregister_console +EXPORT_SYMBOL vmlinux 0x01b6865c xa_get_mark +EXPORT_SYMBOL vmlinux 0x01bf55fc paddr_vmcoreinfo_note +EXPORT_SYMBOL vmlinux 0x01c2b004 security_unix_may_send +EXPORT_SYMBOL vmlinux 0x01e303a2 dev_close +EXPORT_SYMBOL vmlinux 0x01eab19e crypto_sha512_update +EXPORT_SYMBOL vmlinux 0x01ee6017 bio_endio +EXPORT_SYMBOL vmlinux 0x01f17047 udp_sock_create4 +EXPORT_SYMBOL vmlinux 0x020762f2 flow_rule_match_cvlan +EXPORT_SYMBOL vmlinux 0x020dbf27 bitmap_alloc +EXPORT_SYMBOL vmlinux 0x02124474 ip_send_check +EXPORT_SYMBOL vmlinux 0x021315ee __fs_parse +EXPORT_SYMBOL vmlinux 0x0213b81f inet_frag_reasm_prepare +EXPORT_SYMBOL vmlinux 0x0228925f iowrite64_hi_lo +EXPORT_SYMBOL vmlinux 0x02293ac3 dma_fence_chain_ops +EXPORT_SYMBOL vmlinux 0x0237b57a arch_unregister_cpu +EXPORT_SYMBOL vmlinux 0x023d1b90 wrmsr_on_cpu +EXPORT_SYMBOL vmlinux 0x025483b1 set_current_groups +EXPORT_SYMBOL vmlinux 0x025955bb pin_user_pages +EXPORT_SYMBOL vmlinux 0x025db97b tty_insert_flip_string_fixed_flag +EXPORT_SYMBOL vmlinux 0x02666e58 fixed_size_llseek +EXPORT_SYMBOL vmlinux 0x0274dc2b netif_get_num_default_rss_queues +EXPORT_SYMBOL vmlinux 0x02813827 pipe_lock +EXPORT_SYMBOL vmlinux 0x0296695f refcount_warn_saturate +EXPORT_SYMBOL vmlinux 0x02a18c74 nf_conntrack_destroy +EXPORT_SYMBOL vmlinux 0x02a2016c phy_ethtool_ksettings_set +EXPORT_SYMBOL vmlinux 0x02a4031a end_page_writeback +EXPORT_SYMBOL vmlinux 0x02b8ab42 sg_copy_to_buffer +EXPORT_SYMBOL vmlinux 0x02c63063 input_register_handle +EXPORT_SYMBOL vmlinux 0x02c656b6 acpi_enable_all_runtime_gpes +EXPORT_SYMBOL vmlinux 0x02d034d6 blk_rq_append_bio +EXPORT_SYMBOL vmlinux 0x02dafc6b vga_switcheroo_register_client +EXPORT_SYMBOL vmlinux 0x02ea111e scsi_driverbyte_string +EXPORT_SYMBOL vmlinux 0x02f36c1b devm_iounmap +EXPORT_SYMBOL vmlinux 0x03134b46 dev_uc_init +EXPORT_SYMBOL vmlinux 0x03136bc3 linkwatch_fire_event +EXPORT_SYMBOL vmlinux 0x0319dbd5 reuseport_attach_prog +EXPORT_SYMBOL vmlinux 0x031a25c4 pci_write_vpd +EXPORT_SYMBOL vmlinux 0x0334da4e scsi_command_size_tbl +EXPORT_SYMBOL vmlinux 0x033ff0a1 vc_resize +EXPORT_SYMBOL vmlinux 0x03400c9b dev_load +EXPORT_SYMBOL vmlinux 0x0363c1c2 netif_receive_skb_core +EXPORT_SYMBOL vmlinux 0x0366307a console_suspend_enabled +EXPORT_SYMBOL vmlinux 0x037a0cba kfree +EXPORT_SYMBOL vmlinux 0x03914165 skb_seq_read +EXPORT_SYMBOL vmlinux 0x0397edd5 fb_edid_to_monspecs +EXPORT_SYMBOL vmlinux 0x03ae8bf4 devm_pci_remap_cfg_resource +EXPORT_SYMBOL vmlinux 0x03b5c7e1 __splice_from_pipe +EXPORT_SYMBOL vmlinux 0x03f549a2 md_bitmap_endwrite +EXPORT_SYMBOL vmlinux 0x03fd2571 vm_unmap_ram +EXPORT_SYMBOL vmlinux 0x03fde583 remap_vmalloc_range +EXPORT_SYMBOL vmlinux 0x0427a40d unregister_nls +EXPORT_SYMBOL vmlinux 0x04482cdb __refrigerator +EXPORT_SYMBOL vmlinux 0x045c5912 ww_mutex_lock_interruptible +EXPORT_SYMBOL vmlinux 0x0466390c fs_context_for_mount +EXPORT_SYMBOL vmlinux 0x046b1547 agp_backend_acquire +EXPORT_SYMBOL vmlinux 0x0484c6c4 acpi_enter_sleep_state_prep +EXPORT_SYMBOL vmlinux 0x04863e28 hdmi_audio_infoframe_pack_only +EXPORT_SYMBOL vmlinux 0x048b0b1d vme_bus_type +EXPORT_SYMBOL vmlinux 0x049e77c4 input_unregister_device +EXPORT_SYMBOL vmlinux 0x04b5d434 flow_rule_match_eth_addrs +EXPORT_SYMBOL vmlinux 0x04c62fd7 __memset +EXPORT_SYMBOL vmlinux 0x04cebb7c napi_gro_receive +EXPORT_SYMBOL vmlinux 0x04d8c750 release_perfctr_nmi +EXPORT_SYMBOL vmlinux 0x04e732a9 ppp_dev_name +EXPORT_SYMBOL vmlinux 0x04ea56f9 _kstrtol +EXPORT_SYMBOL vmlinux 0x04ea5d10 ksize +EXPORT_SYMBOL vmlinux 0x04fee9d4 security_sk_classify_flow +EXPORT_SYMBOL vmlinux 0x0501afa7 crypto_sha1_finup +EXPORT_SYMBOL vmlinux 0x050877b9 dmi_first_match +EXPORT_SYMBOL vmlinux 0x051d58e8 dma_fence_wait_any_timeout +EXPORT_SYMBOL vmlinux 0x05240ee7 percpu_counter_batch +EXPORT_SYMBOL vmlinux 0x054496b4 schedule_timeout_interruptible +EXPORT_SYMBOL vmlinux 0x054b6753 pci_bus_claim_resources +EXPORT_SYMBOL vmlinux 0x055e77e8 jiffies_64 +EXPORT_SYMBOL vmlinux 0x057b511d n_tty_ioctl_helper +EXPORT_SYMBOL vmlinux 0x057d1802 tcp_get_cookie_sock +EXPORT_SYMBOL vmlinux 0x05acab7e finalize_exec +EXPORT_SYMBOL vmlinux 0x05bbc296 __icmp_send +EXPORT_SYMBOL vmlinux 0x05bfdbea dev_printk +EXPORT_SYMBOL vmlinux 0x05c09ade kmem_cache_create +EXPORT_SYMBOL vmlinux 0x05d4021b kmem_cache_alloc_node +EXPORT_SYMBOL vmlinux 0x05d78cff inet_unregister_protosw +EXPORT_SYMBOL vmlinux 0x06052f8d __memmove +EXPORT_SYMBOL vmlinux 0x060a5485 __SetPageMovable +EXPORT_SYMBOL vmlinux 0x060ba97c gen_pool_free_owner +EXPORT_SYMBOL vmlinux 0x061651be strcat +EXPORT_SYMBOL vmlinux 0x0634100a bitmap_parselist_user +EXPORT_SYMBOL vmlinux 0x064e250e nobh_write_end +EXPORT_SYMBOL vmlinux 0x065246b8 frame_vector_create +EXPORT_SYMBOL vmlinux 0x0660e9b4 __dquot_alloc_space +EXPORT_SYMBOL vmlinux 0x067b1f71 eth_commit_mac_addr_change +EXPORT_SYMBOL vmlinux 0x067f0bb2 default_qdisc_ops +EXPORT_SYMBOL vmlinux 0x068940b1 elv_bio_merge_ok +EXPORT_SYMBOL vmlinux 0x069dc7b7 devm_pci_alloc_host_bridge +EXPORT_SYMBOL vmlinux 0x069de55e iommu_dma_get_resv_regions +EXPORT_SYMBOL vmlinux 0x06a1a406 dma_ops +EXPORT_SYMBOL vmlinux 0x06a86bc1 iowrite16 +EXPORT_SYMBOL vmlinux 0x06a9f112 inet_csk_delete_keepalive_timer +EXPORT_SYMBOL vmlinux 0x06adacaf ptp_clock_register +EXPORT_SYMBOL vmlinux 0x06b23d04 pci_ep_cfs_remove_epc_group +EXPORT_SYMBOL vmlinux 0x06bd88b5 ucs2_strnlen +EXPORT_SYMBOL vmlinux 0x06bff3a3 jbd2_journal_try_to_free_buffers +EXPORT_SYMBOL vmlinux 0x06c8f2de slhc_compress +EXPORT_SYMBOL vmlinux 0x06e3a29f sock_alloc_send_pskb +EXPORT_SYMBOL vmlinux 0x06f68e9f security_inet_conn_request +EXPORT_SYMBOL vmlinux 0x06f6c105 skb_store_bits +EXPORT_SYMBOL vmlinux 0x071ae3a7 xp_raw_get_dma +EXPORT_SYMBOL vmlinux 0x072f901c vme_master_rmw +EXPORT_SYMBOL vmlinux 0x0745a981 xa_erase +EXPORT_SYMBOL vmlinux 0x0756aaa6 tty_driver_kref_put +EXPORT_SYMBOL vmlinux 0x0757f1d3 blk_queue_flag_set +EXPORT_SYMBOL vmlinux 0x07892f83 vfs_get_tree +EXPORT_SYMBOL vmlinux 0x079eeafe adjust_managed_page_count +EXPORT_SYMBOL vmlinux 0x07a58fab _copy_from_iter_full +EXPORT_SYMBOL vmlinux 0x07a890c8 fb_alloc_cmap +EXPORT_SYMBOL vmlinux 0x07ae985e pci_write_config_word +EXPORT_SYMBOL vmlinux 0x07c56d66 __sk_mem_raise_allocated +EXPORT_SYMBOL vmlinux 0x07c92c2d sk_page_frag_refill +EXPORT_SYMBOL vmlinux 0x07cc4a5d printk_timed_ratelimit +EXPORT_SYMBOL vmlinux 0x07ceeac9 panic_notifier_list +EXPORT_SYMBOL vmlinux 0x07f57478 pci_unmap_iospace +EXPORT_SYMBOL vmlinux 0x0805f2c8 ecryptfs_get_auth_tok_key +EXPORT_SYMBOL vmlinux 0x08162c74 free_bucket_spinlocks +EXPORT_SYMBOL vmlinux 0x08249512 iwe_stream_add_point +EXPORT_SYMBOL vmlinux 0x08254e32 filemap_page_mkwrite +EXPORT_SYMBOL vmlinux 0x082c3213 pci_root_buses +EXPORT_SYMBOL vmlinux 0x083eb21c rfkill_unregister +EXPORT_SYMBOL vmlinux 0x084972eb jbd2_journal_extend +EXPORT_SYMBOL vmlinux 0x0870448e dev_disable_lro +EXPORT_SYMBOL vmlinux 0x0882a449 security_xfrm_policy_alloc +EXPORT_SYMBOL vmlinux 0x08b6ffe8 vmf_insert_mixed +EXPORT_SYMBOL vmlinux 0x08d049e0 tcp_prot +EXPORT_SYMBOL vmlinux 0x08dc85ce to_nd_btt +EXPORT_SYMBOL vmlinux 0x08df8094 inode_init_owner +EXPORT_SYMBOL vmlinux 0x08e1f494 tso_build_data +EXPORT_SYMBOL vmlinux 0x08e48584 scsi_target_quiesce +EXPORT_SYMBOL vmlinux 0x08f7a31d ipv6_select_ident +EXPORT_SYMBOL vmlinux 0x090366ec seq_open_private +EXPORT_SYMBOL vmlinux 0x0903fdbc dmam_pool_create +EXPORT_SYMBOL vmlinux 0x0904794b sk_stream_kill_queues +EXPORT_SYMBOL vmlinux 0x09179e18 fget_raw +EXPORT_SYMBOL vmlinux 0x0921b8e2 jbd2_journal_get_undo_access +EXPORT_SYMBOL vmlinux 0x092e26bf acpi_remove_address_space_handler +EXPORT_SYMBOL vmlinux 0x093712e5 acpi_purge_cached_objects +EXPORT_SYMBOL vmlinux 0x0944c43f node_states +EXPORT_SYMBOL vmlinux 0x09545113 dcb_ieee_getapp_default_prio_mask +EXPORT_SYMBOL vmlinux 0x09649fa7 nf_ip_checksum +EXPORT_SYMBOL vmlinux 0x09682235 down_timeout +EXPORT_SYMBOL vmlinux 0x09769037 dmt_modes +EXPORT_SYMBOL vmlinux 0x097af021 neigh_proc_dointvec_jiffies +EXPORT_SYMBOL vmlinux 0x098b71c6 fb_dealloc_cmap +EXPORT_SYMBOL vmlinux 0x09937789 __dynamic_netdev_dbg +EXPORT_SYMBOL vmlinux 0x099bd0fb kernel_write +EXPORT_SYMBOL vmlinux 0x09aa57d6 blk_mq_delay_kick_requeue_list +EXPORT_SYMBOL vmlinux 0x09c8eb55 font_vga_8x16 +EXPORT_SYMBOL vmlinux 0x09cd4ce8 inet_del_offload +EXPORT_SYMBOL vmlinux 0x09cf1a25 pci_disable_msix +EXPORT_SYMBOL vmlinux 0x09d44df9 in_lock_functions +EXPORT_SYMBOL vmlinux 0x09da0ba4 xa_set_mark +EXPORT_SYMBOL vmlinux 0x09e2b152 nf_unregister_sockopt +EXPORT_SYMBOL vmlinux 0x09f2f36e __skb_flow_dissect +EXPORT_SYMBOL vmlinux 0x09f72904 __netlink_dump_start +EXPORT_SYMBOL vmlinux 0x09fec150 lock_two_nondirectories +EXPORT_SYMBOL vmlinux 0x0a0ebc08 __xa_cmpxchg +EXPORT_SYMBOL vmlinux 0x0a10424c start_tty +EXPORT_SYMBOL vmlinux 0x0a1dbc76 tcp_rx_skb_cache_key +EXPORT_SYMBOL vmlinux 0x0a226cb9 register_tcf_proto_ops +EXPORT_SYMBOL vmlinux 0x0a292872 reservation_seqcount_class +EXPORT_SYMBOL vmlinux 0x0a2af6bf __page_cache_alloc +EXPORT_SYMBOL vmlinux 0x0a321118 scsi_host_get +EXPORT_SYMBOL vmlinux 0x0a4913a2 pci_bus_add_devices +EXPORT_SYMBOL vmlinux 0x0a4af2b6 vfs_fsync +EXPORT_SYMBOL vmlinux 0x0a4bc54f tcp_gro_complete +EXPORT_SYMBOL vmlinux 0x0a53a154 tc_setup_cb_destroy +EXPORT_SYMBOL vmlinux 0x0a691412 devm_backlight_device_unregister +EXPORT_SYMBOL vmlinux 0x0a770832 register_memory_notifier +EXPORT_SYMBOL vmlinux 0x0a7ee055 xfrm_state_free +EXPORT_SYMBOL vmlinux 0x0a8658c8 blk_rq_init +EXPORT_SYMBOL vmlinux 0x0a9a47f6 would_dump +EXPORT_SYMBOL vmlinux 0x0aa309cf synchronize_hardirq +EXPORT_SYMBOL vmlinux 0x0aaba3d0 ata_link_printk +EXPORT_SYMBOL vmlinux 0x0aaccc92 pci_remap_iospace +EXPORT_SYMBOL vmlinux 0x0abdd85d phy_ethtool_get_wol +EXPORT_SYMBOL vmlinux 0x0ac1f3bb cdev_del +EXPORT_SYMBOL vmlinux 0x0ac88dff phy_aneg_done +EXPORT_SYMBOL vmlinux 0x0ac942aa inode_permission +EXPORT_SYMBOL vmlinux 0x0acf7679 dma_issue_pending_all +EXPORT_SYMBOL vmlinux 0x0ad10eb8 _raw_read_unlock_bh +EXPORT_SYMBOL vmlinux 0x0aeff6ba jbd2_journal_init_dev +EXPORT_SYMBOL vmlinux 0x0af20eae down_read_interruptible +EXPORT_SYMBOL vmlinux 0x0b019441 dma_resv_reserve_shared +EXPORT_SYMBOL vmlinux 0x0b03104d agp3_generic_tlbflush +EXPORT_SYMBOL vmlinux 0x0b13ec83 ps2_handle_response +EXPORT_SYMBOL vmlinux 0x0b1beb31 vmalloc_32_user +EXPORT_SYMBOL vmlinux 0x0b26b8c8 acpi_run_osc +EXPORT_SYMBOL vmlinux 0x0b290ada dma_fence_chain_walk +EXPORT_SYMBOL vmlinux 0x0b2cb334 psched_ratecfg_precompute +EXPORT_SYMBOL vmlinux 0x0b30f0be set_security_override_from_ctx +EXPORT_SYMBOL vmlinux 0x0b32b80b sock_common_setsockopt +EXPORT_SYMBOL vmlinux 0x0b33b1d2 pcix_set_mmrbc +EXPORT_SYMBOL vmlinux 0x0b34eff5 read_cache_page_gfp +EXPORT_SYMBOL vmlinux 0x0b3add81 fbcon_set_bitops +EXPORT_SYMBOL vmlinux 0x0b435b5a mipi_dsi_dcs_get_power_mode +EXPORT_SYMBOL vmlinux 0x0b436657 security_d_instantiate +EXPORT_SYMBOL vmlinux 0x0b5eb636 dquot_get_next_id +EXPORT_SYMBOL vmlinux 0x0b637410 cr4_update_irqsoff +EXPORT_SYMBOL vmlinux 0x0b742fd7 simple_strtol +EXPORT_SYMBOL vmlinux 0x0b761eb5 netdev_features_change +EXPORT_SYMBOL vmlinux 0x0b77abb0 zap_page_range +EXPORT_SYMBOL vmlinux 0x0b96635a bh_uptodate_or_lock +EXPORT_SYMBOL vmlinux 0x0b9cf727 netdev_upper_dev_unlink +EXPORT_SYMBOL vmlinux 0x0ba5d8e7 skb_find_text +EXPORT_SYMBOL vmlinux 0x0bb1cbc1 netdev_master_upper_dev_get_rcu +EXPORT_SYMBOL vmlinux 0x0bbfbb41 __skb_wait_for_more_packets +EXPORT_SYMBOL vmlinux 0x0bc477a2 irq_set_irq_type +EXPORT_SYMBOL vmlinux 0x0bcbc35a dma_resv_add_shared_fence +EXPORT_SYMBOL vmlinux 0x0bfea946 legacy_pic +EXPORT_SYMBOL vmlinux 0x0c0a3198 scsi_is_host_device +EXPORT_SYMBOL vmlinux 0x0c0f79af ZSTD_getDictID_fromFrame +EXPORT_SYMBOL vmlinux 0x0c178a6c netlink_ns_capable +EXPORT_SYMBOL vmlinux 0x0c17cfc8 uart_register_driver +EXPORT_SYMBOL vmlinux 0x0c25ec48 secure_tcpv6_seq +EXPORT_SYMBOL vmlinux 0x0c36ebcf genl_register_family +EXPORT_SYMBOL vmlinux 0x0c4ea3e6 inet_del_protocol +EXPORT_SYMBOL vmlinux 0x0c6b8f93 netdev_info +EXPORT_SYMBOL vmlinux 0x0c6bdc3f vme_master_read +EXPORT_SYMBOL vmlinux 0x0c74bcc7 __ip4_datagram_connect +EXPORT_SYMBOL vmlinux 0x0c826478 jbd2_journal_revoke +EXPORT_SYMBOL vmlinux 0x0c877901 lookup_one_len_unlocked +EXPORT_SYMBOL vmlinux 0x0c942639 pnp_get_resource +EXPORT_SYMBOL vmlinux 0x0caaf4b7 mipi_dsi_dcs_write_buffer +EXPORT_SYMBOL vmlinux 0x0cb264a1 security_lock_kernel_down +EXPORT_SYMBOL vmlinux 0x0cb97250 _copy_from_iter_full_nocache +EXPORT_SYMBOL vmlinux 0x0cc4b4b6 crc_ccitt_false +EXPORT_SYMBOL vmlinux 0x0cd5835b ipv6_flowlabel_exclusive +EXPORT_SYMBOL vmlinux 0x0ce19729 mb_cache_entry_touch +EXPORT_SYMBOL vmlinux 0x0ce47dfc d_rehash +EXPORT_SYMBOL vmlinux 0x0d07f543 get_anon_bdev +EXPORT_SYMBOL vmlinux 0x0d0b5113 __block_write_begin +EXPORT_SYMBOL vmlinux 0x0d13439a xfrm_register_type_offload +EXPORT_SYMBOL vmlinux 0x0d174361 pcim_iounmap +EXPORT_SYMBOL vmlinux 0x0d50f88f put_disk_and_module +EXPORT_SYMBOL vmlinux 0x0d518335 vfs_rename +EXPORT_SYMBOL vmlinux 0x0d542439 __ipv6_addr_type +EXPORT_SYMBOL vmlinux 0x0d6187da pci_wake_from_d3 +EXPORT_SYMBOL vmlinux 0x0d61eeee __bitmap_subset +EXPORT_SYMBOL vmlinux 0x0d67046c get_ipc_ns_exported +EXPORT_SYMBOL vmlinux 0x0d748dbb qdisc_hash_del +EXPORT_SYMBOL vmlinux 0x0d7bfae8 mod_node_page_state +EXPORT_SYMBOL vmlinux 0x0d9fadfa configfs_depend_item_unlocked +EXPORT_SYMBOL vmlinux 0x0db0cda9 skb_copy_datagram_from_iter +EXPORT_SYMBOL vmlinux 0x0dc06c59 d_add +EXPORT_SYMBOL vmlinux 0x0dc1c86d kiocb_set_cancel_fn +EXPORT_SYMBOL vmlinux 0x0dd15cab __ip_dev_find +EXPORT_SYMBOL vmlinux 0x0e002e2a tcp_fastopen_defer_connect +EXPORT_SYMBOL vmlinux 0x0e034058 blk_integrity_compare +EXPORT_SYMBOL vmlinux 0x0e0a9f1f unpin_user_pages +EXPORT_SYMBOL vmlinux 0x0e17678a siphash_4u64 +EXPORT_SYMBOL vmlinux 0x0e1fec63 tcp_rcv_established +EXPORT_SYMBOL vmlinux 0x0e23b37f alloc_cpumask_var_node +EXPORT_SYMBOL vmlinux 0x0e24f7b6 pci_save_state +EXPORT_SYMBOL vmlinux 0x0e27a2dd ZSTD_initCCtx +EXPORT_SYMBOL vmlinux 0x0e286180 __block_write_full_page +EXPORT_SYMBOL vmlinux 0x0e2e7ba1 fscrypt_has_permitted_context +EXPORT_SYMBOL vmlinux 0x0e49d6e0 compat_ipv6_setsockopt +EXPORT_SYMBOL vmlinux 0x0e65f588 neigh_destroy +EXPORT_SYMBOL vmlinux 0x0e69d8a4 ethtool_rx_flow_rule_destroy +EXPORT_SYMBOL vmlinux 0x0e6ebc97 sk_capable +EXPORT_SYMBOL vmlinux 0x0e74ad2d utf8ncursor +EXPORT_SYMBOL vmlinux 0x0e9035dd bio_integrity_trim +EXPORT_SYMBOL vmlinux 0x0e93d897 mfd_add_devices +EXPORT_SYMBOL vmlinux 0x0e980270 kthread_stop +EXPORT_SYMBOL vmlinux 0x0ea549ac md_unregister_thread +EXPORT_SYMBOL vmlinux 0x0ea813d7 block_is_partially_uptodate +EXPORT_SYMBOL vmlinux 0x0eaa6aed skb_page_frag_refill +EXPORT_SYMBOL vmlinux 0x0ec5babe vme_dma_free +EXPORT_SYMBOL vmlinux 0x0ecc8d92 dquot_destroy +EXPORT_SYMBOL vmlinux 0x0ed813f2 inet_sendpage +EXPORT_SYMBOL vmlinux 0x0ed93206 pci_pme_capable +EXPORT_SYMBOL vmlinux 0x0ee565b2 __set_page_dirty_nobuffers +EXPORT_SYMBOL vmlinux 0x0f05c7b8 __x86_indirect_thunk_r15 +EXPORT_SYMBOL vmlinux 0x0f07966f seq_write +EXPORT_SYMBOL vmlinux 0x0f09cc34 schedule_timeout_killable +EXPORT_SYMBOL vmlinux 0x0f37ca89 lockref_put_not_zero +EXPORT_SYMBOL vmlinux 0x0f4b2ea1 _dev_warn +EXPORT_SYMBOL vmlinux 0x0f50712e blk_mq_complete_request +EXPORT_SYMBOL vmlinux 0x0f798e95 tcp_setsockopt +EXPORT_SYMBOL vmlinux 0x0f7a94e2 iterate_dir +EXPORT_SYMBOL vmlinux 0x0f82c490 tcf_generic_walker +EXPORT_SYMBOL vmlinux 0x0f86f560 kthread_delayed_work_timer_fn +EXPORT_SYMBOL vmlinux 0x0f88f9c0 sock_no_bind +EXPORT_SYMBOL vmlinux 0x0f977aa3 flow_rule_match_enc_ports +EXPORT_SYMBOL vmlinux 0x0fab1ab0 hdmi_spd_infoframe_pack +EXPORT_SYMBOL vmlinux 0x0faef0ed __tasklet_schedule +EXPORT_SYMBOL vmlinux 0x0faf01e2 jbd2_journal_start_commit +EXPORT_SYMBOL vmlinux 0x0fb2f8a4 mktime64 +EXPORT_SYMBOL vmlinux 0x0fb6d803 security_secctx_to_secid +EXPORT_SYMBOL vmlinux 0x0fbe6d12 phy_mac_interrupt +EXPORT_SYMBOL vmlinux 0x0fd902db mb_cache_entry_create +EXPORT_SYMBOL vmlinux 0x0fe859ca passthru_features_check +EXPORT_SYMBOL vmlinux 0x0ff728f9 __dev_get_by_flags +EXPORT_SYMBOL vmlinux 0x0ff80f59 zalloc_cpumask_var +EXPORT_SYMBOL vmlinux 0x0fff5afc time64_to_tm +EXPORT_SYMBOL vmlinux 0x100fbe69 vm_zone_stat +EXPORT_SYMBOL vmlinux 0x1025f680 __post_watch_notification +EXPORT_SYMBOL vmlinux 0x102bed66 cpu_info +EXPORT_SYMBOL vmlinux 0x1035c7c2 __release_region +EXPORT_SYMBOL vmlinux 0x103d6e52 jbd2_journal_errno +EXPORT_SYMBOL vmlinux 0x103eb074 kmem_cache_alloc_node_trace +EXPORT_SYMBOL vmlinux 0x104ec45b inode_insert5 +EXPORT_SYMBOL vmlinux 0x1057a279 bsearch +EXPORT_SYMBOL vmlinux 0x1067158b setup_new_exec +EXPORT_SYMBOL vmlinux 0x1068004b gf128mul_bbe +EXPORT_SYMBOL vmlinux 0x10740479 __dev_get_by_name +EXPORT_SYMBOL vmlinux 0x1077582d nd_device_register +EXPORT_SYMBOL vmlinux 0x107e5878 zlib_inflateEnd +EXPORT_SYMBOL vmlinux 0x10940da2 unmap_mapping_range +EXPORT_SYMBOL vmlinux 0x10ad6be2 pci_irq_vector +EXPORT_SYMBOL vmlinux 0x10ae9c4d file_update_time +EXPORT_SYMBOL vmlinux 0x10c3f57e __gnet_stats_copy_queue +EXPORT_SYMBOL vmlinux 0x10c5974f configfs_register_default_group +EXPORT_SYMBOL vmlinux 0x10c9dc69 xfrm4_protocol_deregister +EXPORT_SYMBOL vmlinux 0x10d9f885 scsi_sense_desc_find +EXPORT_SYMBOL vmlinux 0x10dfd4d6 tcp_time_wait +EXPORT_SYMBOL vmlinux 0x10e11c48 register_filesystem +EXPORT_SYMBOL vmlinux 0x11089ac7 _ctype +EXPORT_SYMBOL vmlinux 0x1109e448 filemap_fault +EXPORT_SYMBOL vmlinux 0x110f2eb9 kthread_create_on_node +EXPORT_SYMBOL vmlinux 0x111b6768 __pci_register_driver +EXPORT_SYMBOL vmlinux 0x113f588f netlink_ack +EXPORT_SYMBOL vmlinux 0x114990b2 skb_copy_and_hash_datagram_iter +EXPORT_SYMBOL vmlinux 0x1163f0a7 blk_max_low_pfn +EXPORT_SYMBOL vmlinux 0x116c60d2 blk_mq_start_stopped_hw_queues +EXPORT_SYMBOL vmlinux 0x117093be qdisc_class_hash_init +EXPORT_SYMBOL vmlinux 0x118a9f5e vlan_for_each +EXPORT_SYMBOL vmlinux 0x11a1b9bc agp_generic_alloc_user +EXPORT_SYMBOL vmlinux 0x11a42908 kthread_bind +EXPORT_SYMBOL vmlinux 0x11a77574 dev_vprintk_emit +EXPORT_SYMBOL vmlinux 0x11b86f2d __x86_retpoline_rbp +EXPORT_SYMBOL vmlinux 0x11d48a8d pci_free_irq_vectors +EXPORT_SYMBOL vmlinux 0x11e0ec41 dm_read_arg +EXPORT_SYMBOL vmlinux 0x11e30762 chacha_block_generic +EXPORT_SYMBOL vmlinux 0x11f47d8c utf8_strncmp +EXPORT_SYMBOL vmlinux 0x11f7ed4c hex_to_bin +EXPORT_SYMBOL vmlinux 0x120214e6 simple_statfs +EXPORT_SYMBOL vmlinux 0x120b336a __rb_insert_augmented +EXPORT_SYMBOL vmlinux 0x120e7e72 get_fs_type +EXPORT_SYMBOL vmlinux 0x12210056 tcf_action_dump_1 +EXPORT_SYMBOL vmlinux 0x122fc516 serial8250_register_8250_port +EXPORT_SYMBOL vmlinux 0x124e1557 __breadahead +EXPORT_SYMBOL vmlinux 0x1278221d ZSTD_compressBegin_usingCDict +EXPORT_SYMBOL vmlinux 0x127d19a4 __free_pages +EXPORT_SYMBOL vmlinux 0x129d3219 security_path_mkdir +EXPORT_SYMBOL vmlinux 0x12a38747 usleep_range +EXPORT_SYMBOL vmlinux 0x12ba395e delete_from_page_cache +EXPORT_SYMBOL vmlinux 0x12c67317 prepare_to_swait_exclusive +EXPORT_SYMBOL vmlinux 0x12c8b1cb flush_signals +EXPORT_SYMBOL vmlinux 0x12cabc89 siphash_2u64 +EXPORT_SYMBOL vmlinux 0x12cbf9bc file_remove_privs +EXPORT_SYMBOL vmlinux 0x12d21427 xp_dma_unmap +EXPORT_SYMBOL vmlinux 0x12da358b phy_device_register +EXPORT_SYMBOL vmlinux 0x12f08c58 device_get_mac_address +EXPORT_SYMBOL vmlinux 0x12f6f69c fb_videomode_to_var +EXPORT_SYMBOL vmlinux 0x130afd75 acpi_get_sleep_type_data +EXPORT_SYMBOL vmlinux 0x13110126 request_resource +EXPORT_SYMBOL vmlinux 0x131a6146 xa_clear_mark +EXPORT_SYMBOL vmlinux 0x13235f01 lease_modify +EXPORT_SYMBOL vmlinux 0x133fe1b5 __skb_ext_del +EXPORT_SYMBOL vmlinux 0x1344d7e6 acpi_enable_gpe +EXPORT_SYMBOL vmlinux 0x134cdd34 inet_frag_rbtree_purge +EXPORT_SYMBOL vmlinux 0x134ce9ff ex_handler_clear_fs +EXPORT_SYMBOL vmlinux 0x135201ad d_exact_alias +EXPORT_SYMBOL vmlinux 0x135e48c7 km_policy_expired +EXPORT_SYMBOL vmlinux 0x13634b7b sock_no_setsockopt +EXPORT_SYMBOL vmlinux 0x136c75cc fs_lookup_param +EXPORT_SYMBOL vmlinux 0x137396c2 blk_queue_max_discard_sectors +EXPORT_SYMBOL vmlinux 0x137f3c6a __cpuhp_remove_state_cpuslocked +EXPORT_SYMBOL vmlinux 0x1389619c __max_die_per_package +EXPORT_SYMBOL vmlinux 0x13976c17 tcp_sendmsg +EXPORT_SYMBOL vmlinux 0x139f2189 __kfifo_alloc +EXPORT_SYMBOL vmlinux 0x13b2c78c truncate_inode_pages_range +EXPORT_SYMBOL vmlinux 0x13bff621 jbd2_journal_start_reserved +EXPORT_SYMBOL vmlinux 0x13d0adf7 __kfifo_out +EXPORT_SYMBOL vmlinux 0x13d9be28 blk_queue_max_hw_sectors +EXPORT_SYMBOL vmlinux 0x13f42152 system_entering_hibernation +EXPORT_SYMBOL vmlinux 0x13ffb94d napi_consume_skb +EXPORT_SYMBOL vmlinux 0x14047c70 backlight_device_unregister +EXPORT_SYMBOL vmlinux 0x141271bf acpi_dev_found +EXPORT_SYMBOL vmlinux 0x14334b51 __udp_disconnect +EXPORT_SYMBOL vmlinux 0x14605535 dma_fence_context_alloc +EXPORT_SYMBOL vmlinux 0x146289b7 crc16_table +EXPORT_SYMBOL vmlinux 0x146abe53 blkdev_put +EXPORT_SYMBOL vmlinux 0x146b002e __dev_set_mtu +EXPORT_SYMBOL vmlinux 0x1473a76d proc_create +EXPORT_SYMBOL vmlinux 0x147a2f47 jbd2_journal_load +EXPORT_SYMBOL vmlinux 0x148534b4 tty_register_ldisc +EXPORT_SYMBOL vmlinux 0x1487c7a3 inet_select_addr +EXPORT_SYMBOL vmlinux 0x148cf1f6 ps2_cmd_aborted +EXPORT_SYMBOL vmlinux 0x14921939 ip_tunnel_get_link_net +EXPORT_SYMBOL vmlinux 0x14a3a80b generic_delete_inode +EXPORT_SYMBOL vmlinux 0x14b7ed5f dquot_mark_dquot_dirty +EXPORT_SYMBOL vmlinux 0x14c67e3e tcp_tx_delay_enabled +EXPORT_SYMBOL vmlinux 0x14e6b41a cdev_set_parent +EXPORT_SYMBOL vmlinux 0x14f17d35 sock_set_keepalive +EXPORT_SYMBOL vmlinux 0x14fb2365 cmdline_parts_set +EXPORT_SYMBOL vmlinux 0x15054a06 blk_dump_rq_flags +EXPORT_SYMBOL vmlinux 0x150e3657 _raw_read_lock_bh +EXPORT_SYMBOL vmlinux 0x151f4898 schedule_timeout_uninterruptible +EXPORT_SYMBOL vmlinux 0x1526b301 unix_tot_inflight +EXPORT_SYMBOL vmlinux 0x1529e059 devfreq_add_governor +EXPORT_SYMBOL vmlinux 0x152af77a tcf_exts_dump +EXPORT_SYMBOL vmlinux 0x1543222c tcp_check_req +EXPORT_SYMBOL vmlinux 0x154c6338 dm_kcopyd_client_destroy +EXPORT_SYMBOL vmlinux 0x1560ab65 dma_direct_sync_sg_for_device +EXPORT_SYMBOL vmlinux 0x1579674a fc_host_fpin_rcv +EXPORT_SYMBOL vmlinux 0x157a24be kmem_cache_free +EXPORT_SYMBOL vmlinux 0x1591a40d clear_nlink +EXPORT_SYMBOL vmlinux 0x1593e031 flow_rule_match_vlan +EXPORT_SYMBOL vmlinux 0x15ac8abb single_open_size +EXPORT_SYMBOL vmlinux 0x15b31a3d qdisc_watchdog_init_clockid +EXPORT_SYMBOL vmlinux 0x15ba50a6 jiffies +EXPORT_SYMBOL vmlinux 0x15bafe29 unregister_md_cluster_operations +EXPORT_SYMBOL vmlinux 0x15bed7a5 LZ4_decompress_safe_partial +EXPORT_SYMBOL vmlinux 0x15c2e1c3 skb_copy_bits +EXPORT_SYMBOL vmlinux 0x15c85de3 mempool_init +EXPORT_SYMBOL vmlinux 0x15f074e1 tcp_v4_conn_request +EXPORT_SYMBOL vmlinux 0x15f7983f __x86_retpoline_r13 +EXPORT_SYMBOL vmlinux 0x160ea4c8 sfi_disabled +EXPORT_SYMBOL vmlinux 0x16286538 iowrite64be_lo_hi +EXPORT_SYMBOL vmlinux 0x162893fd hashlen_string +EXPORT_SYMBOL vmlinux 0x162b9d6c skb_abort_seq_read +EXPORT_SYMBOL vmlinux 0x16301b34 wrmsrl_on_cpu +EXPORT_SYMBOL vmlinux 0x16316a10 ZSTD_getFrameContentSize +EXPORT_SYMBOL vmlinux 0x163bfb93 cdev_device_del +EXPORT_SYMBOL vmlinux 0x163e32b3 dec_node_page_state +EXPORT_SYMBOL vmlinux 0x167bae20 call_usermodehelper_setup +EXPORT_SYMBOL vmlinux 0x167c5967 print_hex_dump +EXPORT_SYMBOL vmlinux 0x167e7f9d __get_user_1 +EXPORT_SYMBOL vmlinux 0x1682f8a9 security_inode_listsecurity +EXPORT_SYMBOL vmlinux 0x168c17be cdev_init +EXPORT_SYMBOL vmlinux 0x169614f6 get_acl +EXPORT_SYMBOL vmlinux 0x169938c1 __sysfs_match_string +EXPORT_SYMBOL vmlinux 0x16af42dd ppp_register_net_channel +EXPORT_SYMBOL vmlinux 0x16b72287 ps2_init +EXPORT_SYMBOL vmlinux 0x16c30966 netpoll_poll_enable +EXPORT_SYMBOL vmlinux 0x16cdc340 acpi_get_table +EXPORT_SYMBOL vmlinux 0x16d3b057 fb_show_logo +EXPORT_SYMBOL vmlinux 0x16dee44d dma_fence_init +EXPORT_SYMBOL vmlinux 0x16e297c3 bit_wait +EXPORT_SYMBOL vmlinux 0x16f269bd drop_super_exclusive +EXPORT_SYMBOL vmlinux 0x16fa92a4 datagram_poll +EXPORT_SYMBOL vmlinux 0x16ff6675 make_bad_inode +EXPORT_SYMBOL vmlinux 0x17012352 simple_transaction_read +EXPORT_SYMBOL vmlinux 0x170ddf79 acpi_install_notify_handler +EXPORT_SYMBOL vmlinux 0x170eb06b set_pages_array_uc +EXPORT_SYMBOL vmlinux 0x1727dc44 posix_acl_to_xattr +EXPORT_SYMBOL vmlinux 0x174f7f17 inet_proto_csum_replace16 +EXPORT_SYMBOL vmlinux 0x1752fe40 clear_inode +EXPORT_SYMBOL vmlinux 0x175e33fb dma_spin_lock +EXPORT_SYMBOL vmlinux 0x1765688c rdmacg_uncharge +EXPORT_SYMBOL vmlinux 0x1765ea1f __xa_alloc_cyclic +EXPORT_SYMBOL vmlinux 0x1765ec77 skb_flow_dissect_meta +EXPORT_SYMBOL vmlinux 0x1772d2e4 xfrm_policy_register_afinfo +EXPORT_SYMBOL vmlinux 0x1773b84b tcf_em_register +EXPORT_SYMBOL vmlinux 0x17884423 pci_read_config_byte +EXPORT_SYMBOL vmlinux 0x179abe27 neigh_connected_output +EXPORT_SYMBOL vmlinux 0x17ae2d6d bdget_disk +EXPORT_SYMBOL vmlinux 0x17bcf073 blk_post_runtime_suspend +EXPORT_SYMBOL vmlinux 0x17be68ca acpi_clear_event +EXPORT_SYMBOL vmlinux 0x17c90b58 sock_set_priority +EXPORT_SYMBOL vmlinux 0x17ce826b vfs_get_super +EXPORT_SYMBOL vmlinux 0x17ee1f7c netdev_master_upper_dev_get +EXPORT_SYMBOL vmlinux 0x17f341a0 i8042_lock_chip +EXPORT_SYMBOL vmlinux 0x17fe93ea shrink_dcache_sb +EXPORT_SYMBOL vmlinux 0x180cb8ce __neigh_for_each_release +EXPORT_SYMBOL vmlinux 0x18164e82 make_kgid +EXPORT_SYMBOL vmlinux 0x18345b8e __bitmap_replace +EXPORT_SYMBOL vmlinux 0x183d25c3 param_ops_string +EXPORT_SYMBOL vmlinux 0x18494146 uart_unregister_driver +EXPORT_SYMBOL vmlinux 0x184fe875 mfd_remove_devices +EXPORT_SYMBOL vmlinux 0x18537622 netdev_adjacent_change_abort +EXPORT_SYMBOL vmlinux 0x185aca44 security_sk_clone +EXPORT_SYMBOL vmlinux 0x185ef960 set_user_nice +EXPORT_SYMBOL vmlinux 0x186766ac xsk_umem_complete_tx +EXPORT_SYMBOL vmlinux 0x187a4ecd __tracepoint_read_msr +EXPORT_SYMBOL vmlinux 0x1886fef8 find_vma +EXPORT_SYMBOL vmlinux 0x18888d00 downgrade_write +EXPORT_SYMBOL vmlinux 0x188ea314 jiffies_to_timespec64 +EXPORT_SYMBOL vmlinux 0x1892a4b3 nf_log_bind_pf +EXPORT_SYMBOL vmlinux 0x18a47e48 skb_try_coalesce +EXPORT_SYMBOL vmlinux 0x18a5082f xfrm_stateonly_find +EXPORT_SYMBOL vmlinux 0x18a733bd d_drop +EXPORT_SYMBOL vmlinux 0x18b72573 register_kmmio_probe +EXPORT_SYMBOL vmlinux 0x18cca064 zpool_register_driver +EXPORT_SYMBOL vmlinux 0x18d18b51 dma_resv_init +EXPORT_SYMBOL vmlinux 0x18e60984 __do_once_start +EXPORT_SYMBOL vmlinux 0x18efd028 hdmi_drm_infoframe_unpack_only +EXPORT_SYMBOL vmlinux 0x18f7347e sync_filesystem +EXPORT_SYMBOL vmlinux 0x1951c29b ps2_drain +EXPORT_SYMBOL vmlinux 0x1951f0bf tcf_get_next_proto +EXPORT_SYMBOL vmlinux 0x1953c958 mempool_create +EXPORT_SYMBOL vmlinux 0x19567d06 vfio_info_cap_shift +EXPORT_SYMBOL vmlinux 0x196ba8ee sock_bindtoindex +EXPORT_SYMBOL vmlinux 0x1984d421 out_of_line_wait_on_bit +EXPORT_SYMBOL vmlinux 0x198620d7 security_add_mnt_opt +EXPORT_SYMBOL vmlinux 0x1991ff92 scsicam_bios_param +EXPORT_SYMBOL vmlinux 0x199ed0cd net_disable_timestamp +EXPORT_SYMBOL vmlinux 0x19bd383b security_secmark_refcount_dec +EXPORT_SYMBOL vmlinux 0x19be8c7f skb_flow_dissect_ct +EXPORT_SYMBOL vmlinux 0x19df99b9 acpi_finish_gpe +EXPORT_SYMBOL vmlinux 0x1a0878b2 generic_write_checks +EXPORT_SYMBOL vmlinux 0x1a107de2 ZSTD_compressCCtx +EXPORT_SYMBOL vmlinux 0x1a1bac9c ZSTD_decompressDCtx +EXPORT_SYMBOL vmlinux 0x1a31d4d6 vga_client_register +EXPORT_SYMBOL vmlinux 0x1a3640f9 __dquot_transfer +EXPORT_SYMBOL vmlinux 0x1a45cb6c acpi_disabled +EXPORT_SYMBOL vmlinux 0x1a62d196 dma_direct_sync_sg_for_cpu +EXPORT_SYMBOL vmlinux 0x1a63af34 vga_switcheroo_process_delayed_switch +EXPORT_SYMBOL vmlinux 0x1a746f80 __dev_getfirstbyhwtype +EXPORT_SYMBOL vmlinux 0x1a9a433c prandom_u32_state +EXPORT_SYMBOL vmlinux 0x1aa32e1b unix_detach_fds +EXPORT_SYMBOL vmlinux 0x1aa9fba0 vfio_dma_rw +EXPORT_SYMBOL vmlinux 0x1ac5d3cb strcspn +EXPORT_SYMBOL vmlinux 0x1adc56f1 clocksource_unregister +EXPORT_SYMBOL vmlinux 0x1aec5f87 param_get_bool +EXPORT_SYMBOL vmlinux 0x1b015d25 bitmap_parselist +EXPORT_SYMBOL vmlinux 0x1b1b70eb ping_prot +EXPORT_SYMBOL vmlinux 0x1b22da33 put_watch_queue +EXPORT_SYMBOL vmlinux 0x1b255c68 cdrom_media_changed +EXPORT_SYMBOL vmlinux 0x1b258870 security_inode_notifysecctx +EXPORT_SYMBOL vmlinux 0x1b29b923 skb_queue_head +EXPORT_SYMBOL vmlinux 0x1b2f844c kset_unregister +EXPORT_SYMBOL vmlinux 0x1b379b36 acpi_pm_device_sleep_state +EXPORT_SYMBOL vmlinux 0x1b597b7a swake_up_all +EXPORT_SYMBOL vmlinux 0x1b6314fd in_aton +EXPORT_SYMBOL vmlinux 0x1b689342 tcf_block_netif_keep_dst +EXPORT_SYMBOL vmlinux 0x1b700d37 put_vaddr_frames +EXPORT_SYMBOL vmlinux 0x1b777357 rdmacg_unregister_device +EXPORT_SYMBOL vmlinux 0x1b7ff556 vme_bus_error_handler +EXPORT_SYMBOL vmlinux 0x1b8b95ad i8042_unlock_chip +EXPORT_SYMBOL vmlinux 0x1b8d4944 scsi_block_when_processing_errors +EXPORT_SYMBOL vmlinux 0x1ba59527 __kmalloc_node +EXPORT_SYMBOL vmlinux 0x1bb3f290 ptp_schedule_worker +EXPORT_SYMBOL vmlinux 0x1bb51249 tcp_have_smc +EXPORT_SYMBOL vmlinux 0x1bc025fe writeback_inodes_sb +EXPORT_SYMBOL vmlinux 0x1bc258ae pci_bus_assign_resources +EXPORT_SYMBOL vmlinux 0x1bc48ec3 __brelse +EXPORT_SYMBOL vmlinux 0x1bd177f3 soft_cursor +EXPORT_SYMBOL vmlinux 0x1bd59dbe vme_free_consistent +EXPORT_SYMBOL vmlinux 0x1bdca54a tcf_chain_put_by_act +EXPORT_SYMBOL vmlinux 0x1bec8bb2 __scsi_print_sense +EXPORT_SYMBOL vmlinux 0x1befa335 peernet2id +EXPORT_SYMBOL vmlinux 0x1c06733f fscrypt_put_encryption_info +EXPORT_SYMBOL vmlinux 0x1c0cfd9e pci_get_device +EXPORT_SYMBOL vmlinux 0x1c1b9f8e _raw_write_unlock_irqrestore +EXPORT_SYMBOL vmlinux 0x1c338147 vm_numa_stat +EXPORT_SYMBOL vmlinux 0x1c58427f acpi_remove_notify_handler +EXPORT_SYMBOL vmlinux 0x1c7812b8 udp_gro_receive +EXPORT_SYMBOL vmlinux 0x1c7c7a17 neigh_changeaddr +EXPORT_SYMBOL vmlinux 0x1c7e5ee1 tcp_v4_mtu_reduced +EXPORT_SYMBOL vmlinux 0x1ca45c74 get_mem_cgroup_from_page +EXPORT_SYMBOL vmlinux 0x1cb2c6d8 kvasprintf +EXPORT_SYMBOL vmlinux 0x1cb2ce0b audit_log_object_context +EXPORT_SYMBOL vmlinux 0x1cd8438b pxm_to_node +EXPORT_SYMBOL vmlinux 0x1cd994a7 md_bitmap_close_sync +EXPORT_SYMBOL vmlinux 0x1d00eb38 param_ops_ushort +EXPORT_SYMBOL vmlinux 0x1d07e365 memdup_user_nul +EXPORT_SYMBOL vmlinux 0x1d0edb23 bdput +EXPORT_SYMBOL vmlinux 0x1d19f77b physical_mask +EXPORT_SYMBOL vmlinux 0x1d1abdf0 acpi_get_physical_device_location +EXPORT_SYMBOL vmlinux 0x1d20f5cc fb_set_cmap +EXPORT_SYMBOL vmlinux 0x1d24c881 ___ratelimit +EXPORT_SYMBOL vmlinux 0x1d2d6d15 wait_iff_congested +EXPORT_SYMBOL vmlinux 0x1d350b68 __put_user_ns +EXPORT_SYMBOL vmlinux 0x1d37b795 phy_drivers_register +EXPORT_SYMBOL vmlinux 0x1d40b6f3 idr_for_each +EXPORT_SYMBOL vmlinux 0x1d5f9555 frame_vector_destroy +EXPORT_SYMBOL vmlinux 0x1d71657f generic_file_write_iter +EXPORT_SYMBOL vmlinux 0x1d8309f2 try_module_get +EXPORT_SYMBOL vmlinux 0x1d957c7b dev_get_flags +EXPORT_SYMBOL vmlinux 0x1daec915 __ip_mc_dec_group +EXPORT_SYMBOL vmlinux 0x1db7706b __copy_user_nocache +EXPORT_SYMBOL vmlinux 0x1dc6c93b lookup_user_key +EXPORT_SYMBOL vmlinux 0x1dd571e6 fb_copy_cmap +EXPORT_SYMBOL vmlinux 0x1ddd643c flow_hash_from_keys +EXPORT_SYMBOL vmlinux 0x1de4ccb2 get_sg_io_hdr +EXPORT_SYMBOL vmlinux 0x1dedb2d3 param_ops_long +EXPORT_SYMBOL vmlinux 0x1df5942f tcp_release_cb +EXPORT_SYMBOL vmlinux 0x1df63e88 ZSTD_compressBegin +EXPORT_SYMBOL vmlinux 0x1e0291b3 phy_device_create +EXPORT_SYMBOL vmlinux 0x1e0a0c24 mod_timer_pending +EXPORT_SYMBOL vmlinux 0x1e0cd7fe acpi_detach_data +EXPORT_SYMBOL vmlinux 0x1e17cd57 arch_debugfs_dir +EXPORT_SYMBOL vmlinux 0x1e1e140e ns_to_timespec64 +EXPORT_SYMBOL vmlinux 0x1e2d7b04 nd_integrity_init +EXPORT_SYMBOL vmlinux 0x1e342c3e key_reject_and_link +EXPORT_SYMBOL vmlinux 0x1e62643b skb_flow_dissector_init +EXPORT_SYMBOL vmlinux 0x1e6d26a8 strstr +EXPORT_SYMBOL vmlinux 0x1e9edfb7 seq_hlist_start_head_rcu +EXPORT_SYMBOL vmlinux 0x1ea71ed2 md_write_inc +EXPORT_SYMBOL vmlinux 0x1eb922a3 IO_APIC_get_PCI_irq_vector +EXPORT_SYMBOL vmlinux 0x1ebceffc simple_symlink_inode_operations +EXPORT_SYMBOL vmlinux 0x1ed8b599 __x86_indirect_thunk_r8 +EXPORT_SYMBOL vmlinux 0x1edb69d6 ktime_get_raw_ts64 +EXPORT_SYMBOL vmlinux 0x1edc3f35 fc_block_scsi_eh +EXPORT_SYMBOL vmlinux 0x1ee34ca7 mipi_dsi_device_register_full +EXPORT_SYMBOL vmlinux 0x1ee660db ip_fraglist_init +EXPORT_SYMBOL vmlinux 0x1ef1713e tcf_exts_destroy +EXPORT_SYMBOL vmlinux 0x1ef67b6f mdiobus_unregister_device +EXPORT_SYMBOL vmlinux 0x1f019b56 neigh_seq_start +EXPORT_SYMBOL vmlinux 0x1f03912b ZSTD_flushStream +EXPORT_SYMBOL vmlinux 0x1f089a29 kern_unmount +EXPORT_SYMBOL vmlinux 0x1f1a074d ip_sock_set_freebind +EXPORT_SYMBOL vmlinux 0x1f1b2df8 bio_integrity_clone +EXPORT_SYMBOL vmlinux 0x1f1d6eac pci_release_regions +EXPORT_SYMBOL vmlinux 0x1f38c4f7 dst_discard_out +EXPORT_SYMBOL vmlinux 0x1f557414 gen_pool_has_addr +EXPORT_SYMBOL vmlinux 0x1f6102b4 dquot_initialize_needed +EXPORT_SYMBOL vmlinux 0x1f637b39 pci_choose_state +EXPORT_SYMBOL vmlinux 0x1f6ebbfd fb_set_suspend +EXPORT_SYMBOL vmlinux 0x1f70f7fb ipv6_dev_get_saddr +EXPORT_SYMBOL vmlinux 0x1f911a4d qdisc_watchdog_cancel +EXPORT_SYMBOL vmlinux 0x1f9b3554 sync_inodes_sb +EXPORT_SYMBOL vmlinux 0x1f9c43f0 sock_no_sendpage +EXPORT_SYMBOL vmlinux 0x1faa85ea to_nd_pfn +EXPORT_SYMBOL vmlinux 0x1fb29d4a tty_hung_up_p +EXPORT_SYMBOL vmlinux 0x1fb8483a dev_driver_string +EXPORT_SYMBOL vmlinux 0x1fbd16da ip_tos2prio +EXPORT_SYMBOL vmlinux 0x1fc0cc7c intel_gtt_insert_sg_entries +EXPORT_SYMBOL vmlinux 0x1fc1ecb3 pci_get_slot +EXPORT_SYMBOL vmlinux 0x1fd07fff kdb_grepping_flag +EXPORT_SYMBOL vmlinux 0x1fe912f1 netdev_alloc_frag +EXPORT_SYMBOL vmlinux 0x1ff5654b page_pool_put_page +EXPORT_SYMBOL vmlinux 0x1ffa6dba mdiobus_get_phy +EXPORT_SYMBOL vmlinux 0x20000329 simple_strtoul +EXPORT_SYMBOL vmlinux 0x2003c3c9 __close_fd +EXPORT_SYMBOL vmlinux 0x200b2041 in6addr_any +EXPORT_SYMBOL vmlinux 0x20261761 mark_buffer_write_io_error +EXPORT_SYMBOL vmlinux 0x20268396 __break_lease +EXPORT_SYMBOL vmlinux 0x20286fe3 release_pages +EXPORT_SYMBOL vmlinux 0x202f2e1f rawv6_mh_filter_register +EXPORT_SYMBOL vmlinux 0x2039ac53 dcache_dir_lseek +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 0x204dfdcf generic_shutdown_super +EXPORT_SYMBOL vmlinux 0x205352f7 phy_init_eee +EXPORT_SYMBOL vmlinux 0x205c47a0 netif_tx_wake_queue +EXPORT_SYMBOL vmlinux 0x20630c70 xsk_set_tx_need_wakeup +EXPORT_SYMBOL vmlinux 0x206be4e0 lru_cache_add +EXPORT_SYMBOL vmlinux 0x2072ee9b request_threaded_irq +EXPORT_SYMBOL vmlinux 0x207a653f blk_queue_flag_clear +EXPORT_SYMBOL vmlinux 0x20991b6b mfd_cell_disable +EXPORT_SYMBOL vmlinux 0x20a1b519 acpi_resource_to_address64 +EXPORT_SYMBOL vmlinux 0x20a789ac irq_set_chip_data +EXPORT_SYMBOL vmlinux 0x20b31725 new_inode +EXPORT_SYMBOL vmlinux 0x20ba4f3e rdmsr_on_cpu +EXPORT_SYMBOL vmlinux 0x20c21754 tcp_close +EXPORT_SYMBOL vmlinux 0x20c3e8fd amd_iommu_flush_page +EXPORT_SYMBOL vmlinux 0x20cbb30a __percpu_counter_init +EXPORT_SYMBOL vmlinux 0x20cedb60 vfs_unlink +EXPORT_SYMBOL vmlinux 0x20d37115 set_security_override +EXPORT_SYMBOL vmlinux 0x20d65e40 fb_find_nearest_mode +EXPORT_SYMBOL vmlinux 0x20e4ad87 generic_permission +EXPORT_SYMBOL vmlinux 0x20e9830c get_super +EXPORT_SYMBOL vmlinux 0x20eadeb6 ip_compute_csum +EXPORT_SYMBOL vmlinux 0x20f80c4b dm_mq_kick_requeue_list +EXPORT_SYMBOL vmlinux 0x20fff6ec ZSTD_DStreamInSize +EXPORT_SYMBOL vmlinux 0x2104f357 mpage_readpage +EXPORT_SYMBOL vmlinux 0x210b88dd seq_read +EXPORT_SYMBOL vmlinux 0x210bc020 fb_find_mode +EXPORT_SYMBOL vmlinux 0x211130c1 alloc_cpumask_var +EXPORT_SYMBOL vmlinux 0x2111a391 inet_addr_type_dev_table +EXPORT_SYMBOL vmlinux 0x211b082d netdev_err +EXPORT_SYMBOL vmlinux 0x211dd0ef crypto_sha1_update +EXPORT_SYMBOL vmlinux 0x2131e7e9 vfs_link +EXPORT_SYMBOL vmlinux 0x213a738d memregion_alloc +EXPORT_SYMBOL vmlinux 0x213e4965 ps2_is_keyboard_id +EXPORT_SYMBOL vmlinux 0x21580dec nobh_write_begin +EXPORT_SYMBOL vmlinux 0x2159ee8e __pskb_copy_fclone +EXPORT_SYMBOL vmlinux 0x215a8ec8 slhc_init +EXPORT_SYMBOL vmlinux 0x21606dd4 md_bitmap_sync_with_cluster +EXPORT_SYMBOL vmlinux 0x2177bd71 acpi_disable_event +EXPORT_SYMBOL vmlinux 0x217db9dd inode_io_list_del +EXPORT_SYMBOL vmlinux 0x218e600b pci_add_resource_offset +EXPORT_SYMBOL vmlinux 0x218f47d0 sk_stream_error +EXPORT_SYMBOL vmlinux 0x219962a4 blk_mq_rq_cpu +EXPORT_SYMBOL vmlinux 0x21bdb523 errseq_check_and_advance +EXPORT_SYMBOL vmlinux 0x21be37e1 hdmi_avi_infoframe_check +EXPORT_SYMBOL vmlinux 0x21bf3faf scsi_print_sense +EXPORT_SYMBOL vmlinux 0x21c8ff67 netdev_lower_get_first_private_rcu +EXPORT_SYMBOL vmlinux 0x21cd523b dm_unregister_target +EXPORT_SYMBOL vmlinux 0x21e13cb3 inet_peer_xrlim_allow +EXPORT_SYMBOL vmlinux 0x21e680e6 ip6_dst_alloc +EXPORT_SYMBOL vmlinux 0x21ef374c try_wait_for_completion +EXPORT_SYMBOL vmlinux 0x221cf7f5 make_kuid +EXPORT_SYMBOL vmlinux 0x222e7ce2 sysfs_streq +EXPORT_SYMBOL vmlinux 0x2234ca51 acpi_match_platform_list +EXPORT_SYMBOL vmlinux 0x22738ffe pagecache_get_page +EXPORT_SYMBOL vmlinux 0x2276db98 kstrtoint +EXPORT_SYMBOL vmlinux 0x228159a5 compat_tcp_getsockopt +EXPORT_SYMBOL vmlinux 0x22883dd7 jbd2_journal_get_create_access +EXPORT_SYMBOL vmlinux 0x228be3b9 con_set_default_unimap +EXPORT_SYMBOL vmlinux 0x22a689a4 eth_type_trans +EXPORT_SYMBOL vmlinux 0x22b325d5 kd_mksound +EXPORT_SYMBOL vmlinux 0x22de4931 amd_iommu_register_ga_log_notifier +EXPORT_SYMBOL vmlinux 0x22e4ddb0 sockfd_lookup +EXPORT_SYMBOL vmlinux 0x22ed7f17 unlock_rename +EXPORT_SYMBOL vmlinux 0x22f174b5 tty_port_carrier_raised +EXPORT_SYMBOL vmlinux 0x231d8cae pci_scan_single_device +EXPORT_SYMBOL vmlinux 0x231f8e08 d_prune_aliases +EXPORT_SYMBOL vmlinux 0x23449342 __ip_mc_inc_group +EXPORT_SYMBOL vmlinux 0x23899fe2 migrate_vma_finalize +EXPORT_SYMBOL vmlinux 0x238b099f mipi_dsi_packet_format_is_short +EXPORT_SYMBOL vmlinux 0x23b9d6e2 mangle_path +EXPORT_SYMBOL vmlinux 0x23c9891c kstrtoint_from_user +EXPORT_SYMBOL vmlinux 0x23cabbb1 register_sysctl_paths +EXPORT_SYMBOL vmlinux 0x23d9132d netif_skb_features +EXPORT_SYMBOL vmlinux 0x23daa989 mipi_dsi_create_packet +EXPORT_SYMBOL vmlinux 0x23ee13fd mb_cache_entry_find_first +EXPORT_SYMBOL vmlinux 0x23f2c894 inet6_unregister_icmp_sender +EXPORT_SYMBOL vmlinux 0x23fd3028 vmalloc_node +EXPORT_SYMBOL vmlinux 0x241fecbe neigh_table_init +EXPORT_SYMBOL vmlinux 0x24212d86 __frontswap_invalidate_page +EXPORT_SYMBOL vmlinux 0x24229c95 phy_remove_link_mode +EXPORT_SYMBOL vmlinux 0x2439d3d0 backlight_force_update +EXPORT_SYMBOL vmlinux 0x243e3dbb serio_unregister_child_port +EXPORT_SYMBOL vmlinux 0x24420752 bio_split +EXPORT_SYMBOL vmlinux 0x24428be5 strncpy_from_user +EXPORT_SYMBOL vmlinux 0x244d527c scsi_print_command +EXPORT_SYMBOL vmlinux 0x24576f96 fqdir_exit +EXPORT_SYMBOL vmlinux 0x2459bbcc console_set_on_cmdline +EXPORT_SYMBOL vmlinux 0x245e8384 kmem_cache_alloc_trace +EXPORT_SYMBOL vmlinux 0x2473f47e dm_table_get_size +EXPORT_SYMBOL vmlinux 0x2474e2f7 xp_set_rxq_info +EXPORT_SYMBOL vmlinux 0x247b791d blk_queue_chunk_sectors +EXPORT_SYMBOL vmlinux 0x2484adc3 __kfifo_to_user_r +EXPORT_SYMBOL vmlinux 0x249641f4 compat_tcp_setsockopt +EXPORT_SYMBOL vmlinux 0x249ef1a4 __skb_get_hash +EXPORT_SYMBOL vmlinux 0x24b5ef89 jbd2_journal_start +EXPORT_SYMBOL vmlinux 0x24d273d1 add_timer +EXPORT_SYMBOL vmlinux 0x24fb2116 vfs_fsync_range +EXPORT_SYMBOL vmlinux 0x250d4674 netdev_emerg +EXPORT_SYMBOL vmlinux 0x25115282 pci_ep_cfs_add_epc_group +EXPORT_SYMBOL vmlinux 0x251977e6 md_flush_request +EXPORT_SYMBOL vmlinux 0x2524ba17 ZSTD_getCParams +EXPORT_SYMBOL vmlinux 0x25261752 generic_error_remove_page +EXPORT_SYMBOL vmlinux 0x25277497 rfkill_register +EXPORT_SYMBOL vmlinux 0x25277f76 ip6_xmit +EXPORT_SYMBOL vmlinux 0x2532e29c __scsi_device_lookup +EXPORT_SYMBOL vmlinux 0x254a8191 dm_kcopyd_zero +EXPORT_SYMBOL vmlinux 0x255ba5be d_set_fallthru +EXPORT_SYMBOL vmlinux 0x25643bbd get_user_pages_unlocked +EXPORT_SYMBOL vmlinux 0x2570a138 reservation_seqcount_string +EXPORT_SYMBOL vmlinux 0x257ce325 blk_mq_tagset_busy_iter +EXPORT_SYMBOL vmlinux 0x25820c64 fs_overflowuid +EXPORT_SYMBOL vmlinux 0x258d2f76 net_dim_get_tx_moderation +EXPORT_SYMBOL vmlinux 0x25974000 wait_for_completion +EXPORT_SYMBOL vmlinux 0x259a7d28 ilookup5 +EXPORT_SYMBOL vmlinux 0x25b3f25f scsi_target_resume +EXPORT_SYMBOL vmlinux 0x25db1577 do_trace_write_msr +EXPORT_SYMBOL vmlinux 0x25e58a09 hdmi_avi_infoframe_init +EXPORT_SYMBOL vmlinux 0x25e9d4bd resource_list_free +EXPORT_SYMBOL vmlinux 0x260a095a __sg_alloc_table +EXPORT_SYMBOL vmlinux 0x261f1e3a inet_csk_clear_xmit_timers +EXPORT_SYMBOL vmlinux 0x2624434e pci_set_vpd_size +EXPORT_SYMBOL vmlinux 0x263733c4 napi_gro_frags +EXPORT_SYMBOL vmlinux 0x26399b5d pci_biosrom_size +EXPORT_SYMBOL vmlinux 0x263beb75 ecryptfs_get_versions +EXPORT_SYMBOL vmlinux 0x263c3152 bcmp +EXPORT_SYMBOL vmlinux 0x263ed23b __x86_indirect_thunk_r12 +EXPORT_SYMBOL vmlinux 0x265cb0cc blk_queue_virt_boundary +EXPORT_SYMBOL vmlinux 0x26705cec security_dentry_init_security +EXPORT_SYMBOL vmlinux 0x2688ec10 bitmap_zalloc +EXPORT_SYMBOL vmlinux 0x26926284 fs_param_is_blockdev +EXPORT_SYMBOL vmlinux 0x26948d96 copy_user_enhanced_fast_string +EXPORT_SYMBOL vmlinux 0x269737c7 pnpacpi_protocol +EXPORT_SYMBOL vmlinux 0x26b13b84 tcf_block_get +EXPORT_SYMBOL vmlinux 0x26b52322 dev_queue_xmit +EXPORT_SYMBOL vmlinux 0x26bf230b udp_set_csum +EXPORT_SYMBOL vmlinux 0x26cc73c3 complete_and_exit +EXPORT_SYMBOL vmlinux 0x26da719c textsearch_prepare +EXPORT_SYMBOL vmlinux 0x26e298e0 unregister_memory_notifier +EXPORT_SYMBOL vmlinux 0x26f06061 gnet_stats_copy_rate_est +EXPORT_SYMBOL vmlinux 0x26f8f0b8 iowrite16be +EXPORT_SYMBOL vmlinux 0x2710fc7c add_random_ready_callback +EXPORT_SYMBOL vmlinux 0x271cba95 acpi_bus_private_data_handler +EXPORT_SYMBOL vmlinux 0x272a38fd security_inode_init_security +EXPORT_SYMBOL vmlinux 0x272a8933 udp_memory_allocated +EXPORT_SYMBOL vmlinux 0x2733eaf7 scsi_dev_info_list_add_keyed +EXPORT_SYMBOL vmlinux 0x27479d14 param_free_charp +EXPORT_SYMBOL vmlinux 0x275f3d49 hdmi_vendor_infoframe_check +EXPORT_SYMBOL vmlinux 0x275fb9d5 input_unregister_handle +EXPORT_SYMBOL vmlinux 0x27639220 blk_verify_command +EXPORT_SYMBOL vmlinux 0x2768afe6 _copy_from_iter_nocache +EXPORT_SYMBOL vmlinux 0x27756bc8 scsi_sanitize_inquiry_string +EXPORT_SYMBOL vmlinux 0x277c923e tcf_exts_validate +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 0x278be985 gnet_stats_start_copy_compat +EXPORT_SYMBOL vmlinux 0x278c69f5 stop_tty +EXPORT_SYMBOL vmlinux 0x2791aa6f __wait_on_buffer +EXPORT_SYMBOL vmlinux 0x279be432 ZSTD_copyCCtx +EXPORT_SYMBOL vmlinux 0x27ac9e27 cleancache_register_ops +EXPORT_SYMBOL vmlinux 0x27bbf221 disable_irq_nosync +EXPORT_SYMBOL vmlinux 0x27cdca93 pci_add_resource +EXPORT_SYMBOL vmlinux 0x281823c5 __kfifo_out_peek +EXPORT_SYMBOL vmlinux 0x281e1eaa pci_get_domain_bus_and_slot +EXPORT_SYMBOL vmlinux 0x281fc139 vme_master_request +EXPORT_SYMBOL vmlinux 0x2833f577 ZSTD_compressBegin_advanced +EXPORT_SYMBOL vmlinux 0x2846c545 dev_activate +EXPORT_SYMBOL vmlinux 0x284b7056 skb_flow_get_icmp_tci +EXPORT_SYMBOL vmlinux 0x284d6fe5 unpin_user_pages_dirty_lock +EXPORT_SYMBOL vmlinux 0x285e0771 fscrypt_setup_filename +EXPORT_SYMBOL vmlinux 0x2875a315 utf32_to_utf8 +EXPORT_SYMBOL vmlinux 0x287abd4a migrate_page_move_mapping +EXPORT_SYMBOL vmlinux 0x288e6ce3 block_page_mkwrite +EXPORT_SYMBOL vmlinux 0x28961c43 km_state_notify +EXPORT_SYMBOL vmlinux 0x289900dc request_firmware +EXPORT_SYMBOL vmlinux 0x28b46a02 tcf_em_tree_destroy +EXPORT_SYMBOL vmlinux 0x28b4cc76 filemap_fdatawrite_range +EXPORT_SYMBOL vmlinux 0x28b875d9 update_region +EXPORT_SYMBOL vmlinux 0x28da9fe8 mr_vif_seq_next +EXPORT_SYMBOL vmlinux 0x28e09af1 iosf_mbi_available +EXPORT_SYMBOL vmlinux 0x28eed9a0 filemap_fdatawrite +EXPORT_SYMBOL vmlinux 0x2914ea2d ZSTD_compressBlock +EXPORT_SYMBOL vmlinux 0x2949e59d neigh_for_each +EXPORT_SYMBOL vmlinux 0x294b9ea1 on_each_cpu +EXPORT_SYMBOL vmlinux 0x296cb509 __xa_insert +EXPORT_SYMBOL vmlinux 0x298199e0 devm_register_reboot_notifier +EXPORT_SYMBOL vmlinux 0x298eb0c0 pcie_get_speed_cap +EXPORT_SYMBOL vmlinux 0x29ad8e33 x86_hyper_type +EXPORT_SYMBOL vmlinux 0x29b7316d __f_setown +EXPORT_SYMBOL vmlinux 0x29e1e204 hdmi_audio_infoframe_pack +EXPORT_SYMBOL vmlinux 0x29fbf063 nd_pfn_validate +EXPORT_SYMBOL vmlinux 0x2a188430 d_splice_alias +EXPORT_SYMBOL vmlinux 0x2a303d4d check_signature +EXPORT_SYMBOL vmlinux 0x2a3ec9a7 mipi_dsi_device_unregister +EXPORT_SYMBOL vmlinux 0x2a97ce2d security_secid_to_secctx +EXPORT_SYMBOL vmlinux 0x2a9a3905 vme_master_get +EXPORT_SYMBOL vmlinux 0x2a9d4cce PDE_DATA +EXPORT_SYMBOL vmlinux 0x2aa00e26 intel_scu_ipc_dev_update +EXPORT_SYMBOL vmlinux 0x2aa0843e mempool_resize +EXPORT_SYMBOL vmlinux 0x2ab7989d mutex_lock +EXPORT_SYMBOL vmlinux 0x2ac4eb6b xfrm_state_add +EXPORT_SYMBOL vmlinux 0x2ad474d4 pci_find_parent_resource +EXPORT_SYMBOL vmlinux 0x2ae3b4f6 generic_update_time +EXPORT_SYMBOL vmlinux 0x2b052d32 tcp_initialize_rcv_mss +EXPORT_SYMBOL vmlinux 0x2b3e28f3 udp_seq_stop +EXPORT_SYMBOL vmlinux 0x2b3e3083 __x86_retpoline_rdi +EXPORT_SYMBOL vmlinux 0x2b5010cf debugfs_create_automount +EXPORT_SYMBOL vmlinux 0x2b593aa8 gen_pool_alloc_algo_owner +EXPORT_SYMBOL vmlinux 0x2b60ef57 super_setup_bdi_name +EXPORT_SYMBOL vmlinux 0x2b68bd2f del_timer +EXPORT_SYMBOL vmlinux 0x2b7f88e6 sk_send_sigurg +EXPORT_SYMBOL vmlinux 0x2b94df63 security_path_rename +EXPORT_SYMBOL vmlinux 0x2b9da7a4 genl_lock +EXPORT_SYMBOL vmlinux 0x2bb6099e dq_data_lock +EXPORT_SYMBOL vmlinux 0x2bbb5a9e poll_freewait +EXPORT_SYMBOL vmlinux 0x2bc60c10 netdev_set_sb_channel +EXPORT_SYMBOL vmlinux 0x2bd60ab9 acpi_reset +EXPORT_SYMBOL vmlinux 0x2c0dab92 md_bitmap_free +EXPORT_SYMBOL vmlinux 0x2c1f3d05 begin_new_exec +EXPORT_SYMBOL vmlinux 0x2c256e1f input_scancode_to_scalar +EXPORT_SYMBOL vmlinux 0x2c333dd4 posix_test_lock +EXPORT_SYMBOL vmlinux 0x2c38e150 sk_mc_loop +EXPORT_SYMBOL vmlinux 0x2c3a5f17 pci_msi_vec_count +EXPORT_SYMBOL vmlinux 0x2c4c87e7 dquot_file_open +EXPORT_SYMBOL vmlinux 0x2c541e7b radix_tree_next_chunk +EXPORT_SYMBOL vmlinux 0x2c62811b arp_tbl +EXPORT_SYMBOL vmlinux 0x2c647798 path_put +EXPORT_SYMBOL vmlinux 0x2c95d691 get_cached_acl_rcu +EXPORT_SYMBOL vmlinux 0x2c995a8c __mdiobus_write +EXPORT_SYMBOL vmlinux 0x2caf63d1 topology_phys_to_logical_die +EXPORT_SYMBOL vmlinux 0x2cc7ae21 vfs_mkobj +EXPORT_SYMBOL vmlinux 0x2ccb1351 dcbnl_cee_notify +EXPORT_SYMBOL vmlinux 0x2ccd059a dim_on_top +EXPORT_SYMBOL vmlinux 0x2cdbf347 security_socket_socketpair +EXPORT_SYMBOL vmlinux 0x2cdf87a1 proc_dointvec_minmax +EXPORT_SYMBOL vmlinux 0x2cf5cb0e block_truncate_page +EXPORT_SYMBOL vmlinux 0x2cf73cb7 kstrtoll_from_user +EXPORT_SYMBOL vmlinux 0x2d08721a dcb_ieee_getapp_prio_dscp_mask_map +EXPORT_SYMBOL vmlinux 0x2d140a58 genl_unlock +EXPORT_SYMBOL vmlinux 0x2d192c70 sg_zero_buffer +EXPORT_SYMBOL vmlinux 0x2d1afe2a freeze_bdev +EXPORT_SYMBOL vmlinux 0x2d272f34 xfrm_trans_queue +EXPORT_SYMBOL vmlinux 0x2d2fc8b6 phy_start_cable_test_tdr +EXPORT_SYMBOL vmlinux 0x2d30596c from_kqid_munged +EXPORT_SYMBOL vmlinux 0x2d3385d3 system_wq +EXPORT_SYMBOL vmlinux 0x2d33d7eb jbd2_journal_flush +EXPORT_SYMBOL vmlinux 0x2d39b0a7 kstrdup +EXPORT_SYMBOL vmlinux 0x2d4c773a hdmi_spd_infoframe_init +EXPORT_SYMBOL vmlinux 0x2d547281 thaw_bdev +EXPORT_SYMBOL vmlinux 0x2d572dcb kernel_read +EXPORT_SYMBOL vmlinux 0x2d8f65f1 inet_dgram_connect +EXPORT_SYMBOL vmlinux 0x2d912bca dmi_get_bios_year +EXPORT_SYMBOL vmlinux 0x2d994605 security_inode_copy_up_xattr +EXPORT_SYMBOL vmlinux 0x2db3bc61 check_zeroed_user +EXPORT_SYMBOL vmlinux 0x2db3d320 mutex_lock_interruptible +EXPORT_SYMBOL vmlinux 0x2db7a108 dm_get_device +EXPORT_SYMBOL vmlinux 0x2dd16564 arch_register_cpu +EXPORT_SYMBOL vmlinux 0x2dd85401 current_task +EXPORT_SYMBOL vmlinux 0x2dd8f323 submit_bio_wait +EXPORT_SYMBOL vmlinux 0x2def7f76 rtc_cmos_write +EXPORT_SYMBOL vmlinux 0x2df1270a iov_iter_get_pages +EXPORT_SYMBOL vmlinux 0x2e0b1deb dma_fence_get_status +EXPORT_SYMBOL vmlinux 0x2e0d8891 ipv6_dev_mc_dec +EXPORT_SYMBOL vmlinux 0x2e152405 registered_fb +EXPORT_SYMBOL vmlinux 0x2e1ca751 clk_put +EXPORT_SYMBOL vmlinux 0x2e2b40d2 strncat +EXPORT_SYMBOL vmlinux 0x2e3bcce2 wait_for_completion_interruptible +EXPORT_SYMBOL vmlinux 0x2e4cedd7 touch_buffer +EXPORT_SYMBOL vmlinux 0x2e4e6bad vga_switcheroo_unregister_client +EXPORT_SYMBOL vmlinux 0x2e5fe036 __skb_ext_put +EXPORT_SYMBOL vmlinux 0x2e97aeb4 dev_getbyhwaddr_rcu +EXPORT_SYMBOL vmlinux 0x2e9ff2e0 agp_unbind_memory +EXPORT_SYMBOL vmlinux 0x2ea2c95c __x86_indirect_thunk_rax +EXPORT_SYMBOL vmlinux 0x2eb4824f md_integrity_register +EXPORT_SYMBOL vmlinux 0x2ec6bba0 errseq_set +EXPORT_SYMBOL vmlinux 0x2eccb201 dev_set_mtu +EXPORT_SYMBOL vmlinux 0x2edbeaf7 hex2bin +EXPORT_SYMBOL vmlinux 0x2ee3dd52 to_ndd +EXPORT_SYMBOL vmlinux 0x2ee4c2b1 hdmi_avi_infoframe_pack_only +EXPORT_SYMBOL vmlinux 0x2eeecd3b fscrypt_decrypt_pagecache_blocks +EXPORT_SYMBOL vmlinux 0x2ef251fd configfs_undepend_item +EXPORT_SYMBOL vmlinux 0x2ef8eba1 compat_sock_common_setsockopt +EXPORT_SYMBOL vmlinux 0x2f03fc4b security_secmark_refcount_inc +EXPORT_SYMBOL vmlinux 0x2f14a12f ata_scsi_cmd_error_handler +EXPORT_SYMBOL vmlinux 0x2f165dfa fib_notifier_ops_unregister +EXPORT_SYMBOL vmlinux 0x2f197255 mipi_dsi_dcs_set_tear_off +EXPORT_SYMBOL vmlinux 0x2f29830a blk_get_request +EXPORT_SYMBOL vmlinux 0x2f298afa nf_setsockopt +EXPORT_SYMBOL vmlinux 0x2f2e91b2 security_ib_alloc_security +EXPORT_SYMBOL vmlinux 0x2f384db3 acpi_is_video_device +EXPORT_SYMBOL vmlinux 0x2f55c34b tcf_em_tree_validate +EXPORT_SYMBOL vmlinux 0x2f5e0748 sget +EXPORT_SYMBOL vmlinux 0x2f7754a8 dma_pool_free +EXPORT_SYMBOL vmlinux 0x2f879370 netdev_lower_get_next +EXPORT_SYMBOL vmlinux 0x2fa820df ip_options_compile +EXPORT_SYMBOL vmlinux 0x2fb6de5d add_device_randomness +EXPORT_SYMBOL vmlinux 0x2fb8fc7f inet_twsk_deschedule_put +EXPORT_SYMBOL vmlinux 0x2fd8a426 scsi_print_result +EXPORT_SYMBOL vmlinux 0x2fe252cc unregister_inet6addr_notifier +EXPORT_SYMBOL vmlinux 0x2ff55e09 fc_remote_port_delete +EXPORT_SYMBOL vmlinux 0x3017a25f netdev_alert +EXPORT_SYMBOL vmlinux 0x301b9094 param_array_ops +EXPORT_SYMBOL vmlinux 0x3020996b fwnode_irq_get +EXPORT_SYMBOL vmlinux 0x303ca5a6 __put_cred +EXPORT_SYMBOL vmlinux 0x30454c0d vfs_ioc_fssetxattr_check +EXPORT_SYMBOL vmlinux 0x304767cc dquot_set_dqinfo +EXPORT_SYMBOL vmlinux 0x304c118f vfs_iocb_iter_write +EXPORT_SYMBOL vmlinux 0x3055f418 tcf_action_check_ctrlact +EXPORT_SYMBOL vmlinux 0x305c5eed fb_validate_mode +EXPORT_SYMBOL vmlinux 0x30768269 devm_ioremap_resource +EXPORT_SYMBOL vmlinux 0x3079e31e get_tree_keyed +EXPORT_SYMBOL vmlinux 0x3094f038 pci_setup_cardbus +EXPORT_SYMBOL vmlinux 0x3096be16 names_cachep +EXPORT_SYMBOL vmlinux 0x30a80826 __kfifo_from_user +EXPORT_SYMBOL vmlinux 0x30a9f1c9 devm_release_resource +EXPORT_SYMBOL vmlinux 0x30acfde9 hsiphash_2u32 +EXPORT_SYMBOL vmlinux 0x30af45a1 ZSTD_initCStream +EXPORT_SYMBOL vmlinux 0x30b53642 dump_emit +EXPORT_SYMBOL vmlinux 0x30b62205 pcie_capability_clear_and_set_word +EXPORT_SYMBOL vmlinux 0x30bd5245 ip_ct_attach +EXPORT_SYMBOL vmlinux 0x30ccabdf amd_iommu_device_info +EXPORT_SYMBOL vmlinux 0x30dd40e0 clear_page_dirty_for_io +EXPORT_SYMBOL vmlinux 0x30dec207 __x86_retpoline_rcx +EXPORT_SYMBOL vmlinux 0x30e74134 tty_termios_copy_hw +EXPORT_SYMBOL vmlinux 0x3100cff9 lockref_get_or_lock +EXPORT_SYMBOL vmlinux 0x3102d70b frontswap_curr_pages +EXPORT_SYMBOL vmlinux 0x3126a9e8 siphash_1u64 +EXPORT_SYMBOL vmlinux 0x3145216f pci_dev_present +EXPORT_SYMBOL vmlinux 0x3145f04e seq_path +EXPORT_SYMBOL vmlinux 0x3149e6a3 key_task_permission +EXPORT_SYMBOL vmlinux 0x316bf185 neigh_sysctl_unregister +EXPORT_SYMBOL vmlinux 0x316dac50 jbd2_journal_dirty_metadata +EXPORT_SYMBOL vmlinux 0x316f90ce xfrm_state_update +EXPORT_SYMBOL vmlinux 0x3176d3d7 gnet_stats_copy_basic +EXPORT_SYMBOL vmlinux 0x317fc475 pcie_get_width_cap +EXPORT_SYMBOL vmlinux 0x3182656d ihold +EXPORT_SYMBOL vmlinux 0x318738a9 pci_dev_put +EXPORT_SYMBOL vmlinux 0x318d6fec mutex_is_locked +EXPORT_SYMBOL vmlinux 0x319d493d proc_dostring +EXPORT_SYMBOL vmlinux 0x319e927f input_enable_softrepeat +EXPORT_SYMBOL vmlinux 0x31a466eb __devm_release_region +EXPORT_SYMBOL vmlinux 0x31a80a4b vme_unregister_bridge +EXPORT_SYMBOL vmlinux 0x31b31f5c csum_partial_copy_nocheck +EXPORT_SYMBOL vmlinux 0x31c88ad3 inet_gro_receive +EXPORT_SYMBOL vmlinux 0x31e93831 inet_sk_set_state +EXPORT_SYMBOL vmlinux 0x31f672f5 sock_no_mmap +EXPORT_SYMBOL vmlinux 0x323e365d dev_pick_tx_zero +EXPORT_SYMBOL vmlinux 0x32630db8 udp_seq_ops +EXPORT_SYMBOL vmlinux 0x326425ca pci_unmap_biosrom +EXPORT_SYMBOL vmlinux 0x3273c0fc free_netdev +EXPORT_SYMBOL vmlinux 0x3277a1ab devfreq_monitor_suspend +EXPORT_SYMBOL vmlinux 0x327c84bf vme_lm_attach +EXPORT_SYMBOL vmlinux 0x3283e6b0 prandom_seed_full_state +EXPORT_SYMBOL vmlinux 0x3287192b tcp_syn_ack_timeout +EXPORT_SYMBOL vmlinux 0x32980deb security_secmark_relabel_packet +EXPORT_SYMBOL vmlinux 0x329f023e scsi_host_alloc +EXPORT_SYMBOL vmlinux 0x329ffa7d mount_nodev +EXPORT_SYMBOL vmlinux 0x32ae5741 _raw_read_lock +EXPORT_SYMBOL vmlinux 0x32bf8612 kernel_sendpage +EXPORT_SYMBOL vmlinux 0x32ce3777 radix_tree_preload +EXPORT_SYMBOL vmlinux 0x32d896ca input_get_timestamp +EXPORT_SYMBOL vmlinux 0x32e6f1a0 acpi_video_backlight_string +EXPORT_SYMBOL vmlinux 0x32e74ee6 gnet_stats_copy_basic_hw +EXPORT_SYMBOL vmlinux 0x32eda466 put_devmap_managed_page +EXPORT_SYMBOL vmlinux 0x32fb267d inc_node_page_state +EXPORT_SYMBOL vmlinux 0x331cae56 find_inode_by_ino_rcu +EXPORT_SYMBOL vmlinux 0x3324ef3b acpi_set_firmware_waking_vector +EXPORT_SYMBOL vmlinux 0x3363f90f wait_on_page_bit_killable +EXPORT_SYMBOL vmlinux 0x336cb85e pfifo_qdisc_ops +EXPORT_SYMBOL vmlinux 0x33736a1d __genradix_ptr_alloc +EXPORT_SYMBOL vmlinux 0x338e94f6 genphy_read_status +EXPORT_SYMBOL vmlinux 0x33a14a02 posix_lock_file +EXPORT_SYMBOL vmlinux 0x33b59131 uart_get_baud_rate +EXPORT_SYMBOL vmlinux 0x33b84f74 copy_page +EXPORT_SYMBOL vmlinux 0x33bd1baa brioctl_set +EXPORT_SYMBOL vmlinux 0x33c7d962 xfrm_state_walk_done +EXPORT_SYMBOL vmlinux 0x33df59eb vmbus_sendpacket +EXPORT_SYMBOL vmlinux 0x33f0768c cpufreq_quick_get_max +EXPORT_SYMBOL vmlinux 0x33f0adb8 phy_drivers_unregister +EXPORT_SYMBOL vmlinux 0x33fcf44a __kfifo_out_r +EXPORT_SYMBOL vmlinux 0x33fd9da4 acpi_get_gpe_device +EXPORT_SYMBOL vmlinux 0x33fe0aad mark_buffer_dirty +EXPORT_SYMBOL vmlinux 0x3400004f kmem_cache_alloc_bulk +EXPORT_SYMBOL vmlinux 0x3441445f msrs_free +EXPORT_SYMBOL vmlinux 0x3443802f mdiobus_free +EXPORT_SYMBOL vmlinux 0x3449a4fc dquot_alloc_inode +EXPORT_SYMBOL vmlinux 0x34646dad free_inode_nonrcu +EXPORT_SYMBOL vmlinux 0x34776a03 f_setown +EXPORT_SYMBOL vmlinux 0x348242cc scm_detach_fds +EXPORT_SYMBOL vmlinux 0x3489859f acpi_enter_sleep_state_s4bios +EXPORT_SYMBOL vmlinux 0x3499596e param_ops_uint +EXPORT_SYMBOL vmlinux 0x349ac524 __tracepoint_dma_fence_emit +EXPORT_SYMBOL vmlinux 0x349cba85 strchr +EXPORT_SYMBOL vmlinux 0x34a1f7e3 acpi_processor_get_psd +EXPORT_SYMBOL vmlinux 0x34afd1d7 thermal_cdev_update +EXPORT_SYMBOL vmlinux 0x34b85bcc flow_rule_match_tcp +EXPORT_SYMBOL vmlinux 0x34c4c5c7 cred_fscmp +EXPORT_SYMBOL vmlinux 0x34ded4d6 input_mt_drop_unused +EXPORT_SYMBOL vmlinux 0x34f015d1 bd_set_size +EXPORT_SYMBOL vmlinux 0x34f3484e security_tun_dev_attach_queue +EXPORT_SYMBOL vmlinux 0x350ea558 dma_fence_default_wait +EXPORT_SYMBOL vmlinux 0x3517383e register_reboot_notifier +EXPORT_SYMBOL vmlinux 0x352b0cae mini_qdisc_pair_block_init +EXPORT_SYMBOL vmlinux 0x3532d5c4 mini_qdisc_pair_swap +EXPORT_SYMBOL vmlinux 0x3539ae37 irq_domain_set_info +EXPORT_SYMBOL vmlinux 0x3539f11b match_strlcpy +EXPORT_SYMBOL vmlinux 0x354dd0d2 vga_get +EXPORT_SYMBOL vmlinux 0x356461c8 rtc_time64_to_tm +EXPORT_SYMBOL vmlinux 0x356fa82c ptp_clock_index +EXPORT_SYMBOL vmlinux 0x3585eb49 mmput_async +EXPORT_SYMBOL vmlinux 0x35984479 param_get_short +EXPORT_SYMBOL vmlinux 0x359ec42f _raw_read_trylock +EXPORT_SYMBOL vmlinux 0x35a0cf20 nd_region_to_nstype +EXPORT_SYMBOL vmlinux 0x35a88f28 zlib_inflateInit2 +EXPORT_SYMBOL vmlinux 0x35cc6f8e uart_match_port +EXPORT_SYMBOL vmlinux 0x35da6086 netif_carrier_off +EXPORT_SYMBOL vmlinux 0x35e7413e __page_symlink +EXPORT_SYMBOL vmlinux 0x360b1afe probe_irq_mask +EXPORT_SYMBOL vmlinux 0x36226894 mr_fill_mroute +EXPORT_SYMBOL vmlinux 0x362ef408 _copy_from_user +EXPORT_SYMBOL vmlinux 0x363e04d5 inet_proto_csum_replace4 +EXPORT_SYMBOL vmlinux 0x3649d635 dcbnl_ieee_notify +EXPORT_SYMBOL vmlinux 0x365acda7 set_normalized_timespec64 +EXPORT_SYMBOL vmlinux 0x365e7911 kstrdup_const +EXPORT_SYMBOL vmlinux 0x3679ab32 udp_sk_rx_dst_set +EXPORT_SYMBOL vmlinux 0x368ade84 cookie_ecn_ok +EXPORT_SYMBOL vmlinux 0x36da1208 dev_set_alias +EXPORT_SYMBOL vmlinux 0x36e848e6 devm_of_iomap +EXPORT_SYMBOL vmlinux 0x36e9027f file_path +EXPORT_SYMBOL vmlinux 0x36ef4952 rtc_add_group +EXPORT_SYMBOL vmlinux 0x37015d24 lease_get_mtime +EXPORT_SYMBOL vmlinux 0x37110088 remove_wait_queue +EXPORT_SYMBOL vmlinux 0x3711a77b vga_set_legacy_decoding +EXPORT_SYMBOL vmlinux 0x37142663 nvdimm_namespace_disk_name +EXPORT_SYMBOL vmlinux 0x371e7f3a ZSTD_initCDict +EXPORT_SYMBOL vmlinux 0x372d84cd key_invalidate +EXPORT_SYMBOL vmlinux 0x3731d969 __zerocopy_sg_from_iter +EXPORT_SYMBOL vmlinux 0x3737d9a9 ZSTD_DStreamWorkspaceBound +EXPORT_SYMBOL vmlinux 0x3744cf36 vmalloc_to_pfn +EXPORT_SYMBOL vmlinux 0x374f8b0c blk_execute_rq +EXPORT_SYMBOL vmlinux 0x3755f990 gf128mul_init_64k_bbe +EXPORT_SYMBOL vmlinux 0x3757d4c5 iov_iter_kvec +EXPORT_SYMBOL vmlinux 0x375f8bbd fc_get_event_number +EXPORT_SYMBOL vmlinux 0x37746fde ZSTD_initDStream +EXPORT_SYMBOL vmlinux 0x377d8004 acpi_error +EXPORT_SYMBOL vmlinux 0x37af3190 dm_table_run_md_queue_async +EXPORT_SYMBOL vmlinux 0x37b8b39e screen_info +EXPORT_SYMBOL vmlinux 0x37b8deb3 _dev_info +EXPORT_SYMBOL vmlinux 0x37beb1a8 page_readlink +EXPORT_SYMBOL vmlinux 0x37befc70 jiffies_to_msecs +EXPORT_SYMBOL vmlinux 0x37c0463f pcibios_bus_to_resource +EXPORT_SYMBOL vmlinux 0x37c40238 eth_header_cache +EXPORT_SYMBOL vmlinux 0x37d1bdf4 devm_gen_pool_create +EXPORT_SYMBOL vmlinux 0x37d3f960 jbd2_log_start_commit +EXPORT_SYMBOL vmlinux 0x37db8f19 dmi_get_date +EXPORT_SYMBOL vmlinux 0x37e37c21 sock_wake_async +EXPORT_SYMBOL vmlinux 0x37fdcba9 bpf_prog_get_type_path +EXPORT_SYMBOL vmlinux 0x37ff6b1e ps2_handle_ack +EXPORT_SYMBOL vmlinux 0x38079dc7 netif_schedule_queue +EXPORT_SYMBOL vmlinux 0x380edf16 fc_host_post_event +EXPORT_SYMBOL vmlinux 0x3812050a _raw_spin_unlock_irqrestore +EXPORT_SYMBOL vmlinux 0x381a798a setup_max_cpus +EXPORT_SYMBOL vmlinux 0x38290277 device_add_disk +EXPORT_SYMBOL vmlinux 0x383ae39a page_get_link +EXPORT_SYMBOL vmlinux 0x3847798b vmf_insert_pfn +EXPORT_SYMBOL vmlinux 0x386d0754 scsi_device_lookup +EXPORT_SYMBOL vmlinux 0x38714391 iget_locked +EXPORT_SYMBOL vmlinux 0x38867a62 fscrypt_fname_alloc_buffer +EXPORT_SYMBOL vmlinux 0x38869d88 kstat +EXPORT_SYMBOL vmlinux 0x388aa3c9 neigh_proc_dointvec_ms_jiffies +EXPORT_SYMBOL vmlinux 0x388df132 is_nd_pfn +EXPORT_SYMBOL vmlinux 0x3891ffc8 ecryptfs_fill_auth_tok +EXPORT_SYMBOL vmlinux 0x389617b0 LZ4_decompress_fast_continue +EXPORT_SYMBOL vmlinux 0x3897d5cf input_mt_report_slot_state +EXPORT_SYMBOL vmlinux 0x38a5759e __netlink_kernel_create +EXPORT_SYMBOL vmlinux 0x38a71b7e pci_free_resource_list +EXPORT_SYMBOL vmlinux 0x38a9f7c5 in6addr_loopback +EXPORT_SYMBOL vmlinux 0x38d8a91c eth_header_parse +EXPORT_SYMBOL vmlinux 0x38e22d93 ethtool_op_get_ts_info +EXPORT_SYMBOL vmlinux 0x38e2e574 kobject_del +EXPORT_SYMBOL vmlinux 0x38e46431 mempool_exit +EXPORT_SYMBOL vmlinux 0x38ec7825 nf_unregister_queue_handler +EXPORT_SYMBOL vmlinux 0x38edc8ad unregister_shrinker +EXPORT_SYMBOL vmlinux 0x38f33bed dump_fpu +EXPORT_SYMBOL vmlinux 0x39081193 __max_logical_packages +EXPORT_SYMBOL vmlinux 0x392a74a3 cpufreq_generic_suspend +EXPORT_SYMBOL vmlinux 0x392b1fea wait_for_completion_io +EXPORT_SYMBOL vmlinux 0x393854c1 hash_and_copy_to_iter +EXPORT_SYMBOL vmlinux 0x3939f8f0 rfkill_pause_polling +EXPORT_SYMBOL vmlinux 0x39461d6a in_egroup_p +EXPORT_SYMBOL vmlinux 0x394a1e11 phy_sfp_attach +EXPORT_SYMBOL vmlinux 0x3955fcf6 __kfifo_in_r +EXPORT_SYMBOL vmlinux 0x39894094 vfio_unregister_notifier +EXPORT_SYMBOL vmlinux 0x39991865 icmp_global_allow +EXPORT_SYMBOL vmlinux 0x399ad043 __kfifo_dma_out_finish_r +EXPORT_SYMBOL vmlinux 0x39a4d083 __blk_rq_map_sg +EXPORT_SYMBOL vmlinux 0x39abdfae blk_mq_stop_hw_queues +EXPORT_SYMBOL vmlinux 0x39b52d19 __bitmap_and +EXPORT_SYMBOL vmlinux 0x39dd1f10 inet_put_port +EXPORT_SYMBOL vmlinux 0x39e3c030 do_trace_read_msr +EXPORT_SYMBOL vmlinux 0x3a08475f platform_thermal_notify +EXPORT_SYMBOL vmlinux 0x3a094d88 security_inode_getsecctx +EXPORT_SYMBOL vmlinux 0x3a13c13b rtnetlink_put_metrics +EXPORT_SYMBOL vmlinux 0x3a13f54a sgl_alloc +EXPORT_SYMBOL vmlinux 0x3a2d1dfa rdmsr_safe_regs_on_cpu +EXPORT_SYMBOL vmlinux 0x3a2f6702 sg_alloc_table +EXPORT_SYMBOL vmlinux 0x3a32839e intel_gtt_chipset_flush +EXPORT_SYMBOL vmlinux 0x3a4a1e16 tty_unthrottle +EXPORT_SYMBOL vmlinux 0x3a4b2ff7 pci_release_selected_regions +EXPORT_SYMBOL vmlinux 0x3a4f9d28 rng_is_initialized +EXPORT_SYMBOL vmlinux 0x3a6928f2 set_wb_congested +EXPORT_SYMBOL vmlinux 0x3a76df26 lookup_one_len +EXPORT_SYMBOL vmlinux 0x3ab356d5 seq_release_private +EXPORT_SYMBOL vmlinux 0x3ab7b1cc scsi_set_sense_field_pointer +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 0x3adc8431 locks_copy_lock +EXPORT_SYMBOL vmlinux 0x3aed120d scsi_device_resume +EXPORT_SYMBOL vmlinux 0x3afb11a7 kobject_set_name +EXPORT_SYMBOL vmlinux 0x3aff3200 acpi_evaluate_object_typed +EXPORT_SYMBOL vmlinux 0x3b029f48 acpi_install_fixed_event_handler +EXPORT_SYMBOL vmlinux 0x3b14288e sb_set_blocksize +EXPORT_SYMBOL vmlinux 0x3b20fb95 dma_fence_remove_callback +EXPORT_SYMBOL vmlinux 0x3b321462 LZ4_setStreamDecode +EXPORT_SYMBOL vmlinux 0x3b3f10a0 tcp_v4_syn_recv_sock +EXPORT_SYMBOL vmlinux 0x3b4173fb param_ops_int +EXPORT_SYMBOL vmlinux 0x3b4d3fca __x86_retpoline_r8 +EXPORT_SYMBOL vmlinux 0x3b4d9d86 genphy_config_eee_advert +EXPORT_SYMBOL vmlinux 0x3b55389c from_kprojid +EXPORT_SYMBOL vmlinux 0x3b6154d7 netdev_reset_tc +EXPORT_SYMBOL vmlinux 0x3b638ea3 jbd2_journal_unlock_updates +EXPORT_SYMBOL vmlinux 0x3b644591 __bitmap_shift_left +EXPORT_SYMBOL vmlinux 0x3b71b31c seq_read_iter +EXPORT_SYMBOL vmlinux 0x3b8233cb vga_switcheroo_get_client_state +EXPORT_SYMBOL vmlinux 0x3b83610f cpu_sibling_map +EXPORT_SYMBOL vmlinux 0x3b860fd4 dev_trans_start +EXPORT_SYMBOL vmlinux 0x3b893edd igrab +EXPORT_SYMBOL vmlinux 0x3b9144c9 acpi_get_current_resources +EXPORT_SYMBOL vmlinux 0x3bbfb206 fb_get_buffer_offset +EXPORT_SYMBOL vmlinux 0x3bc52ec2 nd_dev_to_uuid +EXPORT_SYMBOL vmlinux 0x3bd41493 trace_raw_output_prep +EXPORT_SYMBOL vmlinux 0x3be7643e security_xfrm_policy_free +EXPORT_SYMBOL vmlinux 0x3c01008d phy_suspend +EXPORT_SYMBOL vmlinux 0x3c185c61 page_put_link +EXPORT_SYMBOL vmlinux 0x3c26f06d qdisc_watchdog_init +EXPORT_SYMBOL vmlinux 0x3c38b513 convert_art_ns_to_tsc +EXPORT_SYMBOL vmlinux 0x3c3fce39 __local_bh_enable_ip +EXPORT_SYMBOL vmlinux 0x3c3ff9fd sprintf +EXPORT_SYMBOL vmlinux 0x3c427f67 cpu_die_map +EXPORT_SYMBOL vmlinux 0x3c457453 ioread64_lo_hi +EXPORT_SYMBOL vmlinux 0x3c655886 filemap_write_and_wait_range +EXPORT_SYMBOL vmlinux 0x3c80c06c kstrtoull +EXPORT_SYMBOL vmlinux 0x3c8236f9 pci_wait_for_pending_transaction +EXPORT_SYMBOL vmlinux 0x3c84d24e dquot_get_next_dqblk +EXPORT_SYMBOL vmlinux 0x3c8c9377 node_data +EXPORT_SYMBOL vmlinux 0x3caffbf1 ppp_unit_number +EXPORT_SYMBOL vmlinux 0x3cc6441a cdrom_check_events +EXPORT_SYMBOL vmlinux 0x3cc91d03 netdev_adjacent_change_prepare +EXPORT_SYMBOL vmlinux 0x3ccc8dbc __x86_retpoline_r14 +EXPORT_SYMBOL vmlinux 0x3cdf5943 inet6_register_protosw +EXPORT_SYMBOL vmlinux 0x3ce4ca6f disable_irq +EXPORT_SYMBOL vmlinux 0x3cfd7af9 netdev_notice +EXPORT_SYMBOL vmlinux 0x3cfe58db xfrm6_protocol_deregister +EXPORT_SYMBOL vmlinux 0x3d02cd70 dma_fence_signal_locked +EXPORT_SYMBOL vmlinux 0x3d1034da flow_rule_match_enc_ip +EXPORT_SYMBOL vmlinux 0x3d173bf1 netlbl_audit_start +EXPORT_SYMBOL vmlinux 0x3d210724 gen_pool_dma_zalloc_align +EXPORT_SYMBOL vmlinux 0x3d2fe3ec prepare_kernel_cred +EXPORT_SYMBOL vmlinux 0x3d569f01 flow_rule_match_enc_keyid +EXPORT_SYMBOL vmlinux 0x3d56e7b3 utf8_unload +EXPORT_SYMBOL vmlinux 0x3d5b8d18 pci_scan_bus +EXPORT_SYMBOL vmlinux 0x3d5bb3fd refcount_dec_and_lock_irqsave +EXPORT_SYMBOL vmlinux 0x3d6ea89a kill_fasync +EXPORT_SYMBOL vmlinux 0x3d9ba630 agp_collect_device_status +EXPORT_SYMBOL vmlinux 0x3da171f9 pci_mem_start +EXPORT_SYMBOL vmlinux 0x3dabf271 memcg_sockets_enabled_key +EXPORT_SYMBOL vmlinux 0x3dac7b8a seg6_hmac_info_del +EXPORT_SYMBOL vmlinux 0x3dad9978 cancel_delayed_work +EXPORT_SYMBOL vmlinux 0x3db4dad1 fd_install +EXPORT_SYMBOL vmlinux 0x3dc619d3 swake_up_locked +EXPORT_SYMBOL vmlinux 0x3dc9b5ac __scm_destroy +EXPORT_SYMBOL vmlinux 0x3dcaaeef dquot_acquire +EXPORT_SYMBOL vmlinux 0x3dcb88a0 irq_set_handler_data +EXPORT_SYMBOL vmlinux 0x3dd9b230 proc_dointvec_userhz_jiffies +EXPORT_SYMBOL vmlinux 0x3ddc6c04 x86_bios_cpu_apicid +EXPORT_SYMBOL vmlinux 0x3de91c94 d_hash_and_lookup +EXPORT_SYMBOL vmlinux 0x3dfb86b9 resource_list_create_entry +EXPORT_SYMBOL vmlinux 0x3dfc897c seq_hlist_start_head +EXPORT_SYMBOL vmlinux 0x3e10d0c9 skb_headers_offset_update +EXPORT_SYMBOL vmlinux 0x3e2896be sget_fc +EXPORT_SYMBOL vmlinux 0x3e2b0ba6 groups_alloc +EXPORT_SYMBOL vmlinux 0x3e2bfb95 block_invalidatepage +EXPORT_SYMBOL vmlinux 0x3e5adf72 sync_mapping_buffers +EXPORT_SYMBOL vmlinux 0x3e6a5a9d nf_getsockopt +EXPORT_SYMBOL vmlinux 0x3e730734 tty_flip_buffer_push +EXPORT_SYMBOL vmlinux 0x3e9110fa __hw_addr_unsync +EXPORT_SYMBOL vmlinux 0x3eb65434 free_task +EXPORT_SYMBOL vmlinux 0x3ebb2a35 pci_enable_ptm +EXPORT_SYMBOL vmlinux 0x3ec2467d jbd2__journal_restart +EXPORT_SYMBOL vmlinux 0x3ed3af5c flow_block_cb_setup_simple +EXPORT_SYMBOL vmlinux 0x3ee68633 sock_kmalloc +EXPORT_SYMBOL vmlinux 0x3eeb2322 __wake_up +EXPORT_SYMBOL vmlinux 0x3eeb4529 ipmi_platform_add +EXPORT_SYMBOL vmlinux 0x3efe1703 phy_unregister_fixup_for_id +EXPORT_SYMBOL vmlinux 0x3f0546a8 ioread32_rep +EXPORT_SYMBOL vmlinux 0x3f0eabd2 xxh64_update +EXPORT_SYMBOL vmlinux 0x3f3cc182 padata_free +EXPORT_SYMBOL vmlinux 0x3f4547a7 put_unused_fd +EXPORT_SYMBOL vmlinux 0x3f4bd846 gen_pool_first_fit_order_align +EXPORT_SYMBOL vmlinux 0x3f4f4912 mr_mfc_find_parent +EXPORT_SYMBOL vmlinux 0x3f54fadb compat_nf_setsockopt +EXPORT_SYMBOL vmlinux 0x3f6152ca read_cache_page +EXPORT_SYMBOL vmlinux 0x3f75d7aa devfreq_recommended_opp +EXPORT_SYMBOL vmlinux 0x3f8730ff xfrm_unregister_type_offload +EXPORT_SYMBOL vmlinux 0x3f89071b security_ib_pkey_access +EXPORT_SYMBOL vmlinux 0x3f9c23eb md_reload_sb +EXPORT_SYMBOL vmlinux 0x3fbf3c89 vme_slave_set +EXPORT_SYMBOL vmlinux 0x3fc7d2ae ptp_find_pin +EXPORT_SYMBOL vmlinux 0x3fd34c05 kernel_connect +EXPORT_SYMBOL vmlinux 0x3fd4c944 get_cpu_entry_area +EXPORT_SYMBOL vmlinux 0x3fd78f3b register_chrdev_region +EXPORT_SYMBOL vmlinux 0x3fe2ccbe memweight +EXPORT_SYMBOL vmlinux 0x3fe5cbb7 tty_port_close_start +EXPORT_SYMBOL vmlinux 0x3fe7c355 tty_chars_in_buffer +EXPORT_SYMBOL vmlinux 0x3ffa3acc gro_cells_receive +EXPORT_SYMBOL vmlinux 0x4037ed45 devm_ioremap +EXPORT_SYMBOL vmlinux 0x403b0b6f netif_napi_del +EXPORT_SYMBOL vmlinux 0x404c4d2b is_nd_dax +EXPORT_SYMBOL vmlinux 0x4055a920 acpi_remove_fixed_event_handler +EXPORT_SYMBOL vmlinux 0x407a580d kill_pgrp +EXPORT_SYMBOL vmlinux 0x40973662 sysctl_udp_mem +EXPORT_SYMBOL vmlinux 0x409873e3 tty_termios_baud_rate +EXPORT_SYMBOL vmlinux 0x409bcb62 mutex_unlock +EXPORT_SYMBOL vmlinux 0x409f9a62 mdiobus_register_device +EXPORT_SYMBOL vmlinux 0x40a9b349 vzalloc +EXPORT_SYMBOL vmlinux 0x40ab2e52 get_vm_area +EXPORT_SYMBOL vmlinux 0x40b42324 netif_device_detach +EXPORT_SYMBOL vmlinux 0x40b73b64 dget_parent +EXPORT_SYMBOL vmlinux 0x40c7247c si_meminfo +EXPORT_SYMBOL vmlinux 0x40d04664 console_trylock +EXPORT_SYMBOL vmlinux 0x40d59096 unregister_restart_handler +EXPORT_SYMBOL vmlinux 0x40d84a37 ZSTD_getFrameParams +EXPORT_SYMBOL vmlinux 0x40e715c2 xfrm4_rcv +EXPORT_SYMBOL vmlinux 0x40ebbf4e param_ops_bool +EXPORT_SYMBOL vmlinux 0x40ef4001 elv_rb_del +EXPORT_SYMBOL vmlinux 0x4101c393 blk_sync_queue +EXPORT_SYMBOL vmlinux 0x4118eed2 generic_file_open +EXPORT_SYMBOL vmlinux 0x411f8086 tcf_idr_check_alloc +EXPORT_SYMBOL vmlinux 0x4123324b __skb_pad +EXPORT_SYMBOL vmlinux 0x413ed95c __pagevec_release +EXPORT_SYMBOL vmlinux 0x41482d8b strndup_user +EXPORT_SYMBOL vmlinux 0x4161be65 tty_schedule_flip +EXPORT_SYMBOL vmlinux 0x4188d439 neigh_rand_reach_time +EXPORT_SYMBOL vmlinux 0x4191f74e blk_queue_max_segment_size +EXPORT_SYMBOL vmlinux 0x4194b70b dev_set_mac_address +EXPORT_SYMBOL vmlinux 0x4198ca95 __do_once_done +EXPORT_SYMBOL vmlinux 0x41dfd079 set_binfmt +EXPORT_SYMBOL vmlinux 0x41e4bec7 tcp_sock_set_cork +EXPORT_SYMBOL vmlinux 0x41efdeaf radix_tree_lookup_slot +EXPORT_SYMBOL vmlinux 0x4203aa21 fuse_dequeue_forget +EXPORT_SYMBOL vmlinux 0x42160169 flush_workqueue +EXPORT_SYMBOL vmlinux 0x4230a8d7 sg_nents_for_len +EXPORT_SYMBOL vmlinux 0x4234ead2 pci_stop_and_remove_bus_device +EXPORT_SYMBOL vmlinux 0x4237fa9a noop_llseek +EXPORT_SYMBOL vmlinux 0x4248ae3c single_task_running +EXPORT_SYMBOL vmlinux 0x424d3620 zlib_inflateIncomp +EXPORT_SYMBOL vmlinux 0x42578e80 acpi_get_type +EXPORT_SYMBOL vmlinux 0x42595e58 vgacon_text_force +EXPORT_SYMBOL vmlinux 0x426c4fb3 buffer_migrate_page +EXPORT_SYMBOL vmlinux 0x427e2f8e vfs_dup_fs_context +EXPORT_SYMBOL vmlinux 0x428621de vga_switcheroo_lock_ddc +EXPORT_SYMBOL vmlinux 0x429bc4e6 tcp_sendpage +EXPORT_SYMBOL vmlinux 0x42a3d01e filemap_range_has_page +EXPORT_SYMBOL vmlinux 0x42bed8d4 unix_gc_lock +EXPORT_SYMBOL vmlinux 0x42d147c0 crypto_sha512_finup +EXPORT_SYMBOL vmlinux 0x42df7d64 mipi_dsi_generic_read +EXPORT_SYMBOL vmlinux 0x42e393fc ata_print_version +EXPORT_SYMBOL vmlinux 0x42f1b900 fb_pad_unaligned_buffer +EXPORT_SYMBOL vmlinux 0x42f20e3a phy_read_paged +EXPORT_SYMBOL vmlinux 0x4301d1a1 scsi_alloc_sgtables +EXPORT_SYMBOL vmlinux 0x4302d0eb free_pages +EXPORT_SYMBOL vmlinux 0x43042ccd ip4_datagram_connect +EXPORT_SYMBOL vmlinux 0x430ecc96 ZSTD_initCStream_usingCDict +EXPORT_SYMBOL vmlinux 0x43173995 tcp_create_openreq_child +EXPORT_SYMBOL vmlinux 0x43214acb amd_iommu_rlookup_table +EXPORT_SYMBOL vmlinux 0x4323a37c flow_rule_match_enc_control +EXPORT_SYMBOL vmlinux 0x43283d4c __ClearPageMovable +EXPORT_SYMBOL vmlinux 0x4331ee75 bio_advance +EXPORT_SYMBOL vmlinux 0x43326756 pci_map_rom +EXPORT_SYMBOL vmlinux 0x4336fcca ucs2_as_utf8 +EXPORT_SYMBOL vmlinux 0x433cabfb acpi_decode_pld_buffer +EXPORT_SYMBOL vmlinux 0x4346045d register_fib_notifier +EXPORT_SYMBOL vmlinux 0x4346bbe4 sk_ns_capable +EXPORT_SYMBOL vmlinux 0x4351577a fb_parse_edid +EXPORT_SYMBOL vmlinux 0x437a0d6d __sock_tx_timestamp +EXPORT_SYMBOL vmlinux 0x438610bd security_tun_dev_alloc_security +EXPORT_SYMBOL vmlinux 0x43a30f5b xdp_get_umem_from_qid +EXPORT_SYMBOL vmlinux 0x43ab111a mount_single +EXPORT_SYMBOL vmlinux 0x43afcacf dev_uc_unsync +EXPORT_SYMBOL vmlinux 0x43b4a7af pagecache_isize_extended +EXPORT_SYMBOL vmlinux 0x43c0695b truncate_pagecache +EXPORT_SYMBOL vmlinux 0x43c781bd pci_bus_alloc_resource +EXPORT_SYMBOL vmlinux 0x43d7f99d __dec_zone_page_state +EXPORT_SYMBOL vmlinux 0x43ddd93a param_set_short +EXPORT_SYMBOL vmlinux 0x43f48bcd default_llseek +EXPORT_SYMBOL vmlinux 0x43f52b39 security_socket_getpeersec_dgram +EXPORT_SYMBOL vmlinux 0x44304edf blk_mq_start_hw_queue +EXPORT_SYMBOL vmlinux 0x44414ff2 iosf_mbi_unblock_punit_i2c_access +EXPORT_SYMBOL vmlinux 0x44462b88 __x86_retpoline_rdx +EXPORT_SYMBOL vmlinux 0x44469a76 crc_ccitt_false_table +EXPORT_SYMBOL vmlinux 0x444ebd3f genphy_check_and_restart_aneg +EXPORT_SYMBOL vmlinux 0x444f8ce3 fb_get_mode +EXPORT_SYMBOL vmlinux 0x445ba164 inc_nlink +EXPORT_SYMBOL vmlinux 0x4462d35e cpufreq_get_hw_max_freq +EXPORT_SYMBOL vmlinux 0x4466e764 tcp_sock_set_quickack +EXPORT_SYMBOL vmlinux 0x446cafc9 tty_unregister_driver +EXPORT_SYMBOL vmlinux 0x447f5fe8 user_revoke +EXPORT_SYMBOL vmlinux 0x448b2927 nf_hook_slow_list +EXPORT_SYMBOL vmlinux 0x44902cff acpi_enable_event +EXPORT_SYMBOL vmlinux 0x449ad0a7 memcmp +EXPORT_SYMBOL vmlinux 0x449eec83 nf_log_unset +EXPORT_SYMBOL vmlinux 0x44a6e90a irq_cpu_rmap_add +EXPORT_SYMBOL vmlinux 0x44aaf30f tsc_khz +EXPORT_SYMBOL vmlinux 0x44bea763 netdev_txq_to_tc +EXPORT_SYMBOL vmlinux 0x44c9a9c0 netdev_has_upper_dev +EXPORT_SYMBOL vmlinux 0x44d1fd72 acpi_device_set_power +EXPORT_SYMBOL vmlinux 0x44d3cbb8 phy_connect +EXPORT_SYMBOL vmlinux 0x44e012f6 dma_virt_ops +EXPORT_SYMBOL vmlinux 0x44e45e52 dev_deactivate +EXPORT_SYMBOL vmlinux 0x44e9a829 match_token +EXPORT_SYMBOL vmlinux 0x44f0fe59 dquot_reclaim_space_nodirty +EXPORT_SYMBOL vmlinux 0x44f294d1 __scm_send +EXPORT_SYMBOL vmlinux 0x44f36c06 netdev_set_num_tc +EXPORT_SYMBOL vmlinux 0x45006cee default_red +EXPORT_SYMBOL vmlinux 0x45081703 ec_get_handle +EXPORT_SYMBOL vmlinux 0x45219513 pci_unregister_driver +EXPORT_SYMBOL vmlinux 0x4524ded4 cdrom_get_last_written +EXPORT_SYMBOL vmlinux 0x452ba683 ipv6_ext_hdr +EXPORT_SYMBOL vmlinux 0x453a18c4 dquot_initialize +EXPORT_SYMBOL vmlinux 0x453c6cd5 iov_iter_gap_alignment +EXPORT_SYMBOL vmlinux 0x453c8403 pci_msi_enabled +EXPORT_SYMBOL vmlinux 0x4544a58d truncate_inode_pages_final +EXPORT_SYMBOL vmlinux 0x4546c810 __filemap_set_wb_err +EXPORT_SYMBOL vmlinux 0x45535485 xxh32_update +EXPORT_SYMBOL vmlinux 0x45575612 dev_mc_add_global +EXPORT_SYMBOL vmlinux 0x45674bf9 __blk_mq_end_request +EXPORT_SYMBOL vmlinux 0x456ea532 qdisc_offload_graft_helper +EXPORT_SYMBOL vmlinux 0x45765608 iov_iter_bvec +EXPORT_SYMBOL vmlinux 0x4578f528 __kfifo_to_user +EXPORT_SYMBOL vmlinux 0x45843d72 xfrm_policy_delete +EXPORT_SYMBOL vmlinux 0x4587b938 scsi_verify_blk_ioctl +EXPORT_SYMBOL vmlinux 0x458e391a tcp_peek_len +EXPORT_SYMBOL vmlinux 0x458f1a89 jbd2_journal_force_commit +EXPORT_SYMBOL vmlinux 0x459aff3e tcf_action_exec +EXPORT_SYMBOL vmlinux 0x45ae81f4 __cleancache_init_shared_fs +EXPORT_SYMBOL vmlinux 0x45d246da node_to_cpumask_map +EXPORT_SYMBOL vmlinux 0x45d7999e blk_mq_run_hw_queues +EXPORT_SYMBOL vmlinux 0x45e69e01 prepare_to_wait_exclusive +EXPORT_SYMBOL vmlinux 0x45e8d7b5 native_write_cr0 +EXPORT_SYMBOL vmlinux 0x46045dd7 kstrtou8 +EXPORT_SYMBOL vmlinux 0x461ac773 kstrtol_from_user +EXPORT_SYMBOL vmlinux 0x461d16ca sg_nents +EXPORT_SYMBOL vmlinux 0x4621eae4 pci_back_from_sleep +EXPORT_SYMBOL vmlinux 0x4629334c __preempt_count +EXPORT_SYMBOL vmlinux 0x462f6f0b pci_clear_mwi +EXPORT_SYMBOL vmlinux 0x463219fb tcp_hashinfo +EXPORT_SYMBOL vmlinux 0x4632891f pci_scan_bridge +EXPORT_SYMBOL vmlinux 0x465ad677 netdev_lower_state_changed +EXPORT_SYMBOL vmlinux 0x465e24ff ucs2_utf8size +EXPORT_SYMBOL vmlinux 0x46613531 get_tree_single +EXPORT_SYMBOL vmlinux 0x4663d24c kthread_create_worker_on_cpu +EXPORT_SYMBOL vmlinux 0x466c14a7 __delay +EXPORT_SYMBOL vmlinux 0x467df16d netdev_rss_key_fill +EXPORT_SYMBOL vmlinux 0x4683099e of_find_mipi_dsi_device_by_node +EXPORT_SYMBOL vmlinux 0x469a6ec7 tcp_parse_md5sig_option +EXPORT_SYMBOL vmlinux 0x469f7871 blk_integrity_merge_bio +EXPORT_SYMBOL vmlinux 0x46b94b42 scsi_print_sense_hdr +EXPORT_SYMBOL vmlinux 0x46c47fb6 __node_distance +EXPORT_SYMBOL vmlinux 0x46cf10eb cachemode2protval +EXPORT_SYMBOL vmlinux 0x46e5edc4 from_kprojid_munged +EXPORT_SYMBOL vmlinux 0x46f55ff6 phy_resume +EXPORT_SYMBOL vmlinux 0x470be283 bmap +EXPORT_SYMBOL vmlinux 0x4712ed25 kthread_blkcg +EXPORT_SYMBOL vmlinux 0x4715a909 acpi_load_table +EXPORT_SYMBOL vmlinux 0x4719516d blk_queue_physical_block_size +EXPORT_SYMBOL vmlinux 0x472420bb pnp_device_detach +EXPORT_SYMBOL vmlinux 0x47417324 devm_devfreq_unregister_opp_notifier +EXPORT_SYMBOL vmlinux 0x475a280f netdev_update_features +EXPORT_SYMBOL vmlinux 0x476816cd security_dentry_create_files_as +EXPORT_SYMBOL vmlinux 0x47709e42 free_anon_bdev +EXPORT_SYMBOL vmlinux 0x47769160 nd_namespace_blk_validate +EXPORT_SYMBOL vmlinux 0x47939e0d __tasklet_hi_schedule +EXPORT_SYMBOL vmlinux 0x47941711 _raw_spin_lock_irq +EXPORT_SYMBOL vmlinux 0x47960bc4 proc_do_large_bitmap +EXPORT_SYMBOL vmlinux 0x4797f015 __genphy_config_aneg +EXPORT_SYMBOL vmlinux 0x479c3c86 find_next_zero_bit +EXPORT_SYMBOL vmlinux 0x47a0cdcb mb_cache_entry_find_next +EXPORT_SYMBOL vmlinux 0x47a157ba simple_write_end +EXPORT_SYMBOL vmlinux 0x47b94d94 amd_iommu_domain_enable_v2 +EXPORT_SYMBOL vmlinux 0x47c65bfc unregister_inet6addr_validator_notifier +EXPORT_SYMBOL vmlinux 0x47ccc3c4 inet6_csk_route_req +EXPORT_SYMBOL vmlinux 0x47d4446d __skb_recv_udp +EXPORT_SYMBOL vmlinux 0x48193639 acpi_lid_open +EXPORT_SYMBOL vmlinux 0x481ea764 register_cdrom +EXPORT_SYMBOL vmlinux 0x4829cf6b fscrypt_enqueue_decrypt_work +EXPORT_SYMBOL vmlinux 0x4834ccff ipmr_rule_default +EXPORT_SYMBOL vmlinux 0x4841bdee strnchr +EXPORT_SYMBOL vmlinux 0x48476bcb intel_gtt_insert_page +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 0x486b1157 set_anon_super +EXPORT_SYMBOL vmlinux 0x486d72c6 d_tmpfile +EXPORT_SYMBOL vmlinux 0x487087c0 genphy_read_mmd_unsupported +EXPORT_SYMBOL vmlinux 0x4871d75d clk_hw_register_clkdev +EXPORT_SYMBOL vmlinux 0x4875eec0 ip_getsockopt +EXPORT_SYMBOL vmlinux 0x487c557f blk_mq_init_queue +EXPORT_SYMBOL vmlinux 0x48951ab3 give_up_console +EXPORT_SYMBOL vmlinux 0x489f6e0b rdma_dim +EXPORT_SYMBOL vmlinux 0x48a81d7e vfio_group_pin_pages +EXPORT_SYMBOL vmlinux 0x48a91171 string_get_size +EXPORT_SYMBOL vmlinux 0x48b99a13 vme_lm_free +EXPORT_SYMBOL vmlinux 0x48c093fb _atomic_dec_and_lock_irqsave +EXPORT_SYMBOL vmlinux 0x48c42d2b __nla_put +EXPORT_SYMBOL vmlinux 0x48d50e79 amd_iommu_register_ppr_notifier +EXPORT_SYMBOL vmlinux 0x48de4232 kobject_get_unless_zero +EXPORT_SYMBOL vmlinux 0x48e0bec7 pcim_iomap +EXPORT_SYMBOL vmlinux 0x49045426 icmp_err_convert +EXPORT_SYMBOL vmlinux 0x4914c41b is_acpi_data_node +EXPORT_SYMBOL vmlinux 0x4922f916 genl_unregister_family +EXPORT_SYMBOL vmlinux 0x49330257 uart_add_one_port +EXPORT_SYMBOL vmlinux 0x49436a46 __vfs_getxattr +EXPORT_SYMBOL vmlinux 0x494e3393 vm_get_page_prot +EXPORT_SYMBOL vmlinux 0x495196e3 bioset_exit +EXPORT_SYMBOL vmlinux 0x49572bbe uart_remove_one_port +EXPORT_SYMBOL vmlinux 0x495e378d __pv_queued_spin_lock_slowpath +EXPORT_SYMBOL vmlinux 0x4960d7f6 pcim_iomap_regions +EXPORT_SYMBOL vmlinux 0x4965a3fa blk_rq_map_user_iov +EXPORT_SYMBOL vmlinux 0x49662e6b neigh_resolve_output +EXPORT_SYMBOL vmlinux 0x497cefa3 fc_block_rport +EXPORT_SYMBOL vmlinux 0x498e9128 ZSTD_findDecompressedSize +EXPORT_SYMBOL vmlinux 0x499843dd dma_mmap_attrs +EXPORT_SYMBOL vmlinux 0x49996826 skb_copy_datagram_iter +EXPORT_SYMBOL vmlinux 0x499f0ecf nd_sb_checksum +EXPORT_SYMBOL vmlinux 0x49b163b8 acpi_bus_scan +EXPORT_SYMBOL vmlinux 0x49c41a57 _raw_spin_unlock_bh +EXPORT_SYMBOL vmlinux 0x49d0cd36 dma_direct_map_resource +EXPORT_SYMBOL vmlinux 0x49d87a3c dev_change_carrier +EXPORT_SYMBOL vmlinux 0x49e0254a param_get_invbool +EXPORT_SYMBOL vmlinux 0x49ed86a0 ZSTD_endStream +EXPORT_SYMBOL vmlinux 0x49f4b6bd page_mapping +EXPORT_SYMBOL vmlinux 0x4a051dd5 blk_mq_run_hw_queue +EXPORT_SYMBOL vmlinux 0x4a07d70d xfrm_policy_insert +EXPORT_SYMBOL vmlinux 0x4a0c83ed d_obtain_root +EXPORT_SYMBOL vmlinux 0x4a16f72d d_alloc_parallel +EXPORT_SYMBOL vmlinux 0x4a19cb67 param_set_bint +EXPORT_SYMBOL vmlinux 0x4a20fc5e ll_rw_block +EXPORT_SYMBOL vmlinux 0x4a2cbd79 ip_mc_check_igmp +EXPORT_SYMBOL vmlinux 0x4a3ad70e wait_for_completion_timeout +EXPORT_SYMBOL vmlinux 0x4a453f53 iowrite32 +EXPORT_SYMBOL vmlinux 0x4a7612f3 phy_get_eee_err +EXPORT_SYMBOL vmlinux 0x4a7b8d77 d_delete +EXPORT_SYMBOL vmlinux 0x4a8c7109 block_commit_write +EXPORT_SYMBOL vmlinux 0x4a8f875e nlmsg_notify +EXPORT_SYMBOL vmlinux 0x4a96a8eb xxh32_digest +EXPORT_SYMBOL vmlinux 0x4a9b888c iunique +EXPORT_SYMBOL vmlinux 0x4ab208ba acpi_walk_resource_buffer +EXPORT_SYMBOL vmlinux 0x4abb7d10 cpu_rmap_update +EXPORT_SYMBOL vmlinux 0x4aea463f crc32_le_shift +EXPORT_SYMBOL vmlinux 0x4af5d812 security_sock_rcv_skb +EXPORT_SYMBOL vmlinux 0x4afb2238 add_wait_queue +EXPORT_SYMBOL vmlinux 0x4afd64f8 phy_start +EXPORT_SYMBOL vmlinux 0x4b085dbf agp3_generic_configure +EXPORT_SYMBOL vmlinux 0x4b0962c3 mpage_readahead +EXPORT_SYMBOL vmlinux 0x4b1525a4 i8042_remove_filter +EXPORT_SYMBOL vmlinux 0x4b23b067 consume_skb +EXPORT_SYMBOL vmlinux 0x4b257f08 misc_deregister +EXPORT_SYMBOL vmlinux 0x4b290fbe tcp_set_rcvlowat +EXPORT_SYMBOL vmlinux 0x4b4110f6 sock_dequeue_err_skb +EXPORT_SYMBOL vmlinux 0x4b55dca3 jbd2_log_wait_commit +EXPORT_SYMBOL vmlinux 0x4b5dddcd processors +EXPORT_SYMBOL vmlinux 0x4b5fd49e dm_kcopyd_do_callback +EXPORT_SYMBOL vmlinux 0x4b6cf4e7 pcie_capability_clear_and_set_dword +EXPORT_SYMBOL vmlinux 0x4b6df007 acpi_evaluate_reg +EXPORT_SYMBOL vmlinux 0x4b8cb7de __phy_write_mmd +EXPORT_SYMBOL vmlinux 0x4bace099 blk_queue_dma_alignment +EXPORT_SYMBOL vmlinux 0x4bb31a99 phy_ethtool_get_eee +EXPORT_SYMBOL vmlinux 0x4bbaec27 vfio_unpin_pages +EXPORT_SYMBOL vmlinux 0x4bbd6b5c devfreq_add_device +EXPORT_SYMBOL vmlinux 0x4bc06342 tcf_em_unregister +EXPORT_SYMBOL vmlinux 0x4bc766ec jbd2_journal_force_commit_nested +EXPORT_SYMBOL vmlinux 0x4bcc2662 mempool_init_node +EXPORT_SYMBOL vmlinux 0x4bd06c10 unregister_filesystem +EXPORT_SYMBOL vmlinux 0x4be8dd72 vme_bus_num +EXPORT_SYMBOL vmlinux 0x4bef1c67 empty_name +EXPORT_SYMBOL vmlinux 0x4bf1087f iptun_encaps +EXPORT_SYMBOL vmlinux 0x4c07a7e0 acpi_processor_unregister_performance +EXPORT_SYMBOL vmlinux 0x4c0d4ca4 skb_checksum_setup +EXPORT_SYMBOL vmlinux 0x4c333a56 nf_ip6_checksum +EXPORT_SYMBOL vmlinux 0x4c34db21 blk_rq_count_integrity_sg +EXPORT_SYMBOL vmlinux 0x4c38d4e0 utf8_strncasecmp_folded +EXPORT_SYMBOL vmlinux 0x4c416eb9 LZ4_decompress_fast +EXPORT_SYMBOL vmlinux 0x4c628866 rdmacg_try_charge +EXPORT_SYMBOL vmlinux 0x4c67b64d blk_queue_io_min +EXPORT_SYMBOL vmlinux 0x4c9d28b0 phys_base +EXPORT_SYMBOL vmlinux 0x4ca3bd0b scmd_printk +EXPORT_SYMBOL vmlinux 0x4cb9c677 blkdev_compat_ptr_ioctl +EXPORT_SYMBOL vmlinux 0x4cba441d iwe_stream_add_event +EXPORT_SYMBOL vmlinux 0x4cd5bc5e rdmsr_safe_regs +EXPORT_SYMBOL vmlinux 0x4cd5f1ce iov_iter_advance +EXPORT_SYMBOL vmlinux 0x4cee214d jbd2_journal_set_features +EXPORT_SYMBOL vmlinux 0x4d2c7133 acpi_info +EXPORT_SYMBOL vmlinux 0x4d3d7489 gro_find_receive_by_type +EXPORT_SYMBOL vmlinux 0x4d4304f1 dquot_quota_on_mount +EXPORT_SYMBOL vmlinux 0x4d924f20 memremap +EXPORT_SYMBOL vmlinux 0x4d9b21fe __x86_retpoline_r11 +EXPORT_SYMBOL vmlinux 0x4d9b652b rb_erase +EXPORT_SYMBOL vmlinux 0x4da007d4 agp_generic_insert_memory +EXPORT_SYMBOL vmlinux 0x4dab1b55 ppp_register_channel +EXPORT_SYMBOL vmlinux 0x4db5b713 dma_cache_sync +EXPORT_SYMBOL vmlinux 0x4dc0904d cdrom_dummy_generic_packet +EXPORT_SYMBOL vmlinux 0x4dca08ee sync_file_get_fence +EXPORT_SYMBOL vmlinux 0x4ddbd4ef skb_append +EXPORT_SYMBOL vmlinux 0x4de8e3c5 param_ops_charp +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 0x4e20bcf8 radix_tree_tag_set +EXPORT_SYMBOL vmlinux 0x4e3567f7 match_int +EXPORT_SYMBOL vmlinux 0x4e4f0f16 dma_fence_chain_find_seqno +EXPORT_SYMBOL vmlinux 0x4e547048 __kmalloc_node_track_caller +EXPORT_SYMBOL vmlinux 0x4e5ea529 ip_mc_inc_group +EXPORT_SYMBOL vmlinux 0x4e5f04ca ___pskb_trim +EXPORT_SYMBOL vmlinux 0x4e68e9be rb_next_postorder +EXPORT_SYMBOL vmlinux 0x4e68fc23 seq_puts +EXPORT_SYMBOL vmlinux 0x4e6aa22d pnp_is_active +EXPORT_SYMBOL vmlinux 0x4e6dceb4 udp6_csum_init +EXPORT_SYMBOL vmlinux 0x4e6e4b41 radix_tree_delete +EXPORT_SYMBOL vmlinux 0x4e6e8ea7 fg_console +EXPORT_SYMBOL vmlinux 0x4e7396f1 pps_register_source +EXPORT_SYMBOL vmlinux 0x4e8d40a2 qdisc_watchdog_schedule_range_ns +EXPORT_SYMBOL vmlinux 0x4e96a5e5 vme_register_error_handler +EXPORT_SYMBOL vmlinux 0x4e9e6102 xp_dma_sync_for_cpu_slow +EXPORT_SYMBOL vmlinux 0x4ea25709 dql_reset +EXPORT_SYMBOL vmlinux 0x4eac7b9d __inet_stream_connect +EXPORT_SYMBOL vmlinux 0x4eba3b3c tcp_sock_set_nodelay +EXPORT_SYMBOL vmlinux 0x4ebbbc53 blk_stack_limits +EXPORT_SYMBOL vmlinux 0x4ec54e78 bitmap_to_arr32 +EXPORT_SYMBOL vmlinux 0x4ec585b7 udp_lib_setsockopt +EXPORT_SYMBOL vmlinux 0x4ed86164 scsi_device_put +EXPORT_SYMBOL vmlinux 0x4ed8b914 generic_file_llseek +EXPORT_SYMBOL vmlinux 0x4ede0651 inet_addr_type_table +EXPORT_SYMBOL vmlinux 0x4ef4750f nd_device_unregister +EXPORT_SYMBOL vmlinux 0x4ef96045 nla_put +EXPORT_SYMBOL vmlinux 0x4f1cd128 security_tun_dev_create +EXPORT_SYMBOL vmlinux 0x4f2250ba rtc_tm_to_time64 +EXPORT_SYMBOL vmlinux 0x4f24b59b xfrm_input_resume +EXPORT_SYMBOL vmlinux 0x4f47ef08 flow_block_cb_priv +EXPORT_SYMBOL vmlinux 0x4f4d78c5 LZ4_compress_default +EXPORT_SYMBOL vmlinux 0x4f55166f acpi_set_current_resources +EXPORT_SYMBOL vmlinux 0x4f5ccdba kill_pid +EXPORT_SYMBOL vmlinux 0x4f6ea6c7 blk_queue_max_segments +EXPORT_SYMBOL vmlinux 0x4f711f84 intel_scu_ipc_dev_iowrite8 +EXPORT_SYMBOL vmlinux 0x4f907f2a xfrm_policy_walk_done +EXPORT_SYMBOL vmlinux 0x4f924cbb __mdiobus_read +EXPORT_SYMBOL vmlinux 0x4f929251 zpool_unregister_driver +EXPORT_SYMBOL vmlinux 0x4fb4b9aa phy_write_mmd +EXPORT_SYMBOL vmlinux 0x4fb6149a __bforget +EXPORT_SYMBOL vmlinux 0x4fc5bebd agp_generic_create_gatt_table +EXPORT_SYMBOL vmlinux 0x4fcc8ad2 ex_handler_uaccess +EXPORT_SYMBOL vmlinux 0x4fd73047 ip_tunnel_encap_del_ops +EXPORT_SYMBOL vmlinux 0x4fdee897 i8042_command +EXPORT_SYMBOL vmlinux 0x4fe11e07 fb_firmware_edid +EXPORT_SYMBOL vmlinux 0x4feebb7b vlan_dev_real_dev +EXPORT_SYMBOL vmlinux 0x4ff39d27 super_setup_bdi +EXPORT_SYMBOL vmlinux 0x4ffbb298 dma_direct_sync_single_for_device +EXPORT_SYMBOL vmlinux 0x50097088 security_tun_dev_free_security +EXPORT_SYMBOL vmlinux 0x5009c71d glob_match +EXPORT_SYMBOL vmlinux 0x50129458 mipi_dsi_dcs_set_pixel_format +EXPORT_SYMBOL vmlinux 0x5016aaaa jbd2_journal_check_used_features +EXPORT_SYMBOL vmlinux 0x5027bde2 acpi_acquire_mutex +EXPORT_SYMBOL vmlinux 0x502ee688 phy_do_ioctl +EXPORT_SYMBOL vmlinux 0x50367b84 dev_pm_opp_unregister_notifier +EXPORT_SYMBOL vmlinux 0x5047900e cdrom_open +EXPORT_SYMBOL vmlinux 0x504dfc58 vmap +EXPORT_SYMBOL vmlinux 0x50624917 sha1_init +EXPORT_SYMBOL vmlinux 0x506c9332 pnp_stop_dev +EXPORT_SYMBOL vmlinux 0x506dff1a __genradix_free +EXPORT_SYMBOL vmlinux 0x507912e4 make_kprojid +EXPORT_SYMBOL vmlinux 0x509b64ea acpi_has_method +EXPORT_SYMBOL vmlinux 0x50a3179e try_to_writeback_inodes_sb +EXPORT_SYMBOL vmlinux 0x50a4698c fb_videomode_to_modelist +EXPORT_SYMBOL vmlinux 0x50aafe5e flow_rule_match_ipv6_addrs +EXPORT_SYMBOL vmlinux 0x50b73ce2 rfkill_find_type +EXPORT_SYMBOL vmlinux 0x50be748d security_ib_free_security +EXPORT_SYMBOL vmlinux 0x50c84983 agp_generic_free_gatt_table +EXPORT_SYMBOL vmlinux 0x50cb613b csum_and_copy_from_iter_full +EXPORT_SYMBOL vmlinux 0x50d68377 arch_phys_wc_del +EXPORT_SYMBOL vmlinux 0x50dd3f20 truncate_pagecache_range +EXPORT_SYMBOL vmlinux 0x50e7aa02 neigh_sysctl_register +EXPORT_SYMBOL vmlinux 0x50f91491 __genradix_ptr +EXPORT_SYMBOL vmlinux 0x5102a30b do_wait_intr_irq +EXPORT_SYMBOL vmlinux 0x5105847e serio_unregister_driver +EXPORT_SYMBOL vmlinux 0x5105d38d skb_mac_gso_segment +EXPORT_SYMBOL vmlinux 0x5118866f pci_enable_device_mem +EXPORT_SYMBOL vmlinux 0x5122992b simple_lookup +EXPORT_SYMBOL vmlinux 0x5145ef52 __insert_inode_hash +EXPORT_SYMBOL vmlinux 0x51480b32 padata_stop +EXPORT_SYMBOL vmlinux 0x515083bf acpi_release_mutex +EXPORT_SYMBOL vmlinux 0x5155d292 tty_port_close +EXPORT_SYMBOL vmlinux 0x515b146c xsk_umem_consume_tx +EXPORT_SYMBOL vmlinux 0x51641162 opal_unlock_from_suspend +EXPORT_SYMBOL vmlinux 0x516742eb dquot_scan_active +EXPORT_SYMBOL vmlinux 0x51739e69 clk_get +EXPORT_SYMBOL vmlinux 0x51760917 _raw_spin_lock_irqsave +EXPORT_SYMBOL vmlinux 0x517f18c8 follow_down_one +EXPORT_SYMBOL vmlinux 0x518ddc20 tcp_sync_mss +EXPORT_SYMBOL vmlinux 0x519d6682 bdev_dax_pgoff +EXPORT_SYMBOL vmlinux 0x51a9ef37 input_free_device +EXPORT_SYMBOL vmlinux 0x51aa07a3 phy_get_pause +EXPORT_SYMBOL vmlinux 0x51b02b83 csum_and_copy_to_iter +EXPORT_SYMBOL vmlinux 0x51d12d4e acpi_pci_disabled +EXPORT_SYMBOL vmlinux 0x51e88bad request_key_tag +EXPORT_SYMBOL vmlinux 0x51f298e0 intel_scu_ipc_dev_ioread8 +EXPORT_SYMBOL vmlinux 0x51fb1a8f mdiobus_is_registered_device +EXPORT_SYMBOL vmlinux 0x51ff6343 blk_mq_requeue_request +EXPORT_SYMBOL vmlinux 0x522c9810 call_fib_notifiers +EXPORT_SYMBOL vmlinux 0x525b82c0 bio_init +EXPORT_SYMBOL vmlinux 0x526e5eea locks_init_lock +EXPORT_SYMBOL vmlinux 0x526eef2c hdmi_vendor_infoframe_pack +EXPORT_SYMBOL vmlinux 0x52983a4f vme_master_write +EXPORT_SYMBOL vmlinux 0x52aa7512 pci_dev_get +EXPORT_SYMBOL vmlinux 0x52c33f93 __module_put_and_exit +EXPORT_SYMBOL vmlinux 0x52d717da xz_dec_init +EXPORT_SYMBOL vmlinux 0x52e5ea15 vga_switcheroo_unlock_ddc +EXPORT_SYMBOL vmlinux 0x52eba3a3 bfifo_qdisc_ops +EXPORT_SYMBOL vmlinux 0x52ecbc75 crc_ccitt +EXPORT_SYMBOL vmlinux 0x52f4b6ae netdev_class_create_file_ns +EXPORT_SYMBOL vmlinux 0x52f4e33f edac_mc_find +EXPORT_SYMBOL vmlinux 0x52fe6a8a redirty_page_for_writepage +EXPORT_SYMBOL vmlinux 0x530b1e98 pm_suspend +EXPORT_SYMBOL vmlinux 0x53126ecc __percpu_counter_sum +EXPORT_SYMBOL vmlinux 0x531b604e __virt_addr_valid +EXPORT_SYMBOL vmlinux 0x533206b5 sort_r +EXPORT_SYMBOL vmlinux 0x533febeb fscrypt_zeroout_range +EXPORT_SYMBOL vmlinux 0x53569707 this_cpu_off +EXPORT_SYMBOL vmlinux 0x5367b4b4 boot_cpu_data +EXPORT_SYMBOL vmlinux 0x53717922 alloc_pages_vma +EXPORT_SYMBOL vmlinux 0x537316a4 setattr_prepare +EXPORT_SYMBOL vmlinux 0x537c3064 neigh_app_ns +EXPORT_SYMBOL vmlinux 0x53957cb6 ip6_fraglist_prepare +EXPORT_SYMBOL vmlinux 0x53a5e7c6 param_get_charp +EXPORT_SYMBOL vmlinux 0x53b1e3d7 proc_create_mount_point +EXPORT_SYMBOL vmlinux 0x53b954a2 up_read +EXPORT_SYMBOL vmlinux 0x53be34f0 __x86_retpoline_rsi +EXPORT_SYMBOL vmlinux 0x53c52cb9 inode_set_flags +EXPORT_SYMBOL vmlinux 0x53f6b8b7 netdev_name_node_alt_create +EXPORT_SYMBOL vmlinux 0x53fa36d1 ZSTD_decompressBlock +EXPORT_SYMBOL vmlinux 0x54079823 neigh_seq_stop +EXPORT_SYMBOL vmlinux 0x5407abc0 devfreq_register_notifier +EXPORT_SYMBOL vmlinux 0x54175c5f acpi_read_bit_register +EXPORT_SYMBOL vmlinux 0x54245b39 kstrtoull_from_user +EXPORT_SYMBOL vmlinux 0x543ef284 seq_hlist_start +EXPORT_SYMBOL vmlinux 0x54596ac5 dev_set_allmulti +EXPORT_SYMBOL vmlinux 0x545ea85c pci_scan_slot +EXPORT_SYMBOL vmlinux 0x54765c79 deactivate_super +EXPORT_SYMBOL vmlinux 0x547a05df __nla_put_64bit +EXPORT_SYMBOL vmlinux 0x547ccae5 pci_request_regions +EXPORT_SYMBOL vmlinux 0x547e3344 acpi_disable +EXPORT_SYMBOL vmlinux 0x5496f634 pci_map_biosrom +EXPORT_SYMBOL vmlinux 0x54991b13 genphy_soft_reset +EXPORT_SYMBOL vmlinux 0x54a9db5f _kstrtoul +EXPORT_SYMBOL vmlinux 0x54b5f9f7 nd_btt_probe +EXPORT_SYMBOL vmlinux 0x54bc8323 genphy_read_abilities +EXPORT_SYMBOL vmlinux 0x54c1206a sync_inode +EXPORT_SYMBOL vmlinux 0x54c9f035 ip_defrag +EXPORT_SYMBOL vmlinux 0x54d48db5 vfs_clone_file_range +EXPORT_SYMBOL vmlinux 0x54de796a devm_ioremap_wc +EXPORT_SYMBOL vmlinux 0x54e6fcdd net_enable_timestamp +EXPORT_SYMBOL vmlinux 0x54ec4b1c kernel_recvmsg +EXPORT_SYMBOL vmlinux 0x54f37e4c acpi_match_device_ids +EXPORT_SYMBOL vmlinux 0x54f9d2ed devm_of_find_backlight +EXPORT_SYMBOL vmlinux 0x5502333d bio_integrity_prep +EXPORT_SYMBOL vmlinux 0x5506b8f7 netlbl_bitmap_setbit +EXPORT_SYMBOL vmlinux 0x550b7704 input_grab_device +EXPORT_SYMBOL vmlinux 0x5513089a cad_pid +EXPORT_SYMBOL vmlinux 0x551bd071 __rb_erase_color +EXPORT_SYMBOL vmlinux 0x55249dd1 phy_connect_direct +EXPORT_SYMBOL vmlinux 0x554ae3a4 irq_poll_sched +EXPORT_SYMBOL vmlinux 0x554b5c44 devm_input_allocate_device +EXPORT_SYMBOL vmlinux 0x555e9e7c vc_cons +EXPORT_SYMBOL vmlinux 0x556422b3 ioremap_cache +EXPORT_SYMBOL vmlinux 0x556b5d62 __kfifo_dma_in_prepare_r +EXPORT_SYMBOL vmlinux 0x556cca46 x86_apple_machine +EXPORT_SYMBOL vmlinux 0x55726f37 unregister_quota_format +EXPORT_SYMBOL vmlinux 0x55751fc5 kfree_skb +EXPORT_SYMBOL vmlinux 0x5577d88f __tty_alloc_driver +EXPORT_SYMBOL vmlinux 0x55782363 fs_param_is_bool +EXPORT_SYMBOL vmlinux 0x558a2799 commit_creds +EXPORT_SYMBOL vmlinux 0x558b281d aes_expandkey +EXPORT_SYMBOL vmlinux 0x5593987d __getblk_gfp +EXPORT_SYMBOL vmlinux 0x55a87cc9 generic_setlease +EXPORT_SYMBOL vmlinux 0x55cbecf1 nf_log_unbind_pf +EXPORT_SYMBOL vmlinux 0x55cf1a5d phy_attached_info +EXPORT_SYMBOL vmlinux 0x55e0e613 xfrm_register_km +EXPORT_SYMBOL vmlinux 0x55e31703 ethtool_convert_link_mode_to_legacy_u32 +EXPORT_SYMBOL vmlinux 0x55f95e07 ioremap_prot +EXPORT_SYMBOL vmlinux 0x560ddd3f alloc_fddidev +EXPORT_SYMBOL vmlinux 0x5612e4bf xfrm_policy_unregister_afinfo +EXPORT_SYMBOL vmlinux 0x56159e3d tcp_mss_to_mtu +EXPORT_SYMBOL vmlinux 0x561600f8 __dev_remove_pack +EXPORT_SYMBOL vmlinux 0x5635a60a vmalloc_user +EXPORT_SYMBOL vmlinux 0x56459d7d pci_release_region +EXPORT_SYMBOL vmlinux 0x56466e42 ZSTD_CStreamInSize +EXPORT_SYMBOL vmlinux 0x56470118 __warn_printk +EXPORT_SYMBOL vmlinux 0x564f7608 acpi_reconfig_notifier_register +EXPORT_SYMBOL vmlinux 0x566f6d43 scm_fp_dup +EXPORT_SYMBOL vmlinux 0x567e949d pcie_port_service_unregister +EXPORT_SYMBOL vmlinux 0x56802ae8 rps_cpu_mask +EXPORT_SYMBOL vmlinux 0x56806152 send_sig_mceerr +EXPORT_SYMBOL vmlinux 0x56987298 vme_slave_request +EXPORT_SYMBOL vmlinux 0x569abcca acpi_walk_resources +EXPORT_SYMBOL vmlinux 0x56c8799d scsi_kunmap_atomic_sg +EXPORT_SYMBOL vmlinux 0x56e2bf60 netif_tx_stop_all_queues +EXPORT_SYMBOL vmlinux 0x56e76a5d generic_fillattr +EXPORT_SYMBOL vmlinux 0x56ecd5cb tcp_filter +EXPORT_SYMBOL vmlinux 0x56ef3863 config_group_init +EXPORT_SYMBOL vmlinux 0x56f8c371 __tracepoint_kfree +EXPORT_SYMBOL vmlinux 0x57013b74 agp_generic_mask_memory +EXPORT_SYMBOL vmlinux 0x5723f2a9 inet_rcv_saddr_equal +EXPORT_SYMBOL vmlinux 0x574c2e74 bitmap_release_region +EXPORT_SYMBOL vmlinux 0x574e8ff1 fs_param_is_enum +EXPORT_SYMBOL vmlinux 0x57575f08 dmaengine_put +EXPORT_SYMBOL vmlinux 0x575e4ec7 ps2_sendbyte +EXPORT_SYMBOL vmlinux 0x57676230 put_cmsg +EXPORT_SYMBOL vmlinux 0x577c16b1 security_inode_copy_up +EXPORT_SYMBOL vmlinux 0x578a1876 tun_xdp_to_ptr +EXPORT_SYMBOL vmlinux 0x578a408b ZSTD_initDCtx +EXPORT_SYMBOL vmlinux 0x578c92b5 fscrypt_fname_disk_to_usr +EXPORT_SYMBOL vmlinux 0x57900416 gen_pool_fixed_alloc +EXPORT_SYMBOL vmlinux 0x5792f848 strlcpy +EXPORT_SYMBOL vmlinux 0x5796b141 generic_file_llseek_size +EXPORT_SYMBOL vmlinux 0x579c987c serio_close +EXPORT_SYMBOL vmlinux 0x579cdc34 pci_enable_device_io +EXPORT_SYMBOL vmlinux 0x57ba9dbb inet_register_protosw +EXPORT_SYMBOL vmlinux 0x57bc19d2 down_write +EXPORT_SYMBOL vmlinux 0x57c02163 sched_autogroup_create_attach +EXPORT_SYMBOL vmlinux 0x57d3f86b cdc_parse_cdc_header +EXPORT_SYMBOL vmlinux 0x57d914e9 tcf_idr_create +EXPORT_SYMBOL vmlinux 0x57ec3d8e __xfrm_decode_session +EXPORT_SYMBOL vmlinux 0x57f43556 qdisc_put +EXPORT_SYMBOL vmlinux 0x5800da9a amd_iommu_pc_set_reg +EXPORT_SYMBOL vmlinux 0x5807a635 textsearch_register +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 0x58392d09 noop_fsync +EXPORT_SYMBOL vmlinux 0x58512ecb param_get_uint +EXPORT_SYMBOL vmlinux 0x5857653d compat_ip_setsockopt +EXPORT_SYMBOL vmlinux 0x5857b225 ioread16_rep +EXPORT_SYMBOL vmlinux 0x58604e4d alloc_iova_mem +EXPORT_SYMBOL vmlinux 0x586efbfe md_register_thread +EXPORT_SYMBOL vmlinux 0x58765178 __xfrm_route_forward +EXPORT_SYMBOL vmlinux 0x587f22d7 devmap_managed_key +EXPORT_SYMBOL vmlinux 0x5881c8ea serio_open +EXPORT_SYMBOL vmlinux 0x5881dd6a xfrm_lookup_route +EXPORT_SYMBOL vmlinux 0x588286d0 __skb_gro_checksum_complete +EXPORT_SYMBOL vmlinux 0x58acf24b mdiobus_register_board_info +EXPORT_SYMBOL vmlinux 0x58adb05c get_vaddr_frames +EXPORT_SYMBOL vmlinux 0x58b4645c dev_close_many +EXPORT_SYMBOL vmlinux 0x58b73bc7 match_wildcard +EXPORT_SYMBOL vmlinux 0x58bb2c63 vm_insert_pages +EXPORT_SYMBOL vmlinux 0x58c0911f vfs_getattr +EXPORT_SYMBOL vmlinux 0x58e3306d bit_wait_io +EXPORT_SYMBOL vmlinux 0x58eace01 eth_gro_receive +EXPORT_SYMBOL vmlinux 0x58ecc0a9 iommu_put_dma_cookie +EXPORT_SYMBOL vmlinux 0x58fa5099 follow_pte_pmd +EXPORT_SYMBOL vmlinux 0x5907b9b5 nla_append +EXPORT_SYMBOL vmlinux 0x5908bbaf device_add_disk_no_queue_reg +EXPORT_SYMBOL vmlinux 0x590b7a5a devfreq_monitor_stop +EXPORT_SYMBOL vmlinux 0x59197408 devm_devfreq_register_notifier +EXPORT_SYMBOL vmlinux 0x592b3a26 flow_rule_match_enc_opts +EXPORT_SYMBOL vmlinux 0x593c1bac __x86_indirect_thunk_rbx +EXPORT_SYMBOL vmlinux 0x594bf15b ioport_map +EXPORT_SYMBOL vmlinux 0x59588850 vsscanf +EXPORT_SYMBOL vmlinux 0x596f8227 __register_nls +EXPORT_SYMBOL vmlinux 0x597f54c0 native_restore_fl +EXPORT_SYMBOL vmlinux 0x599bdb68 pnp_start_dev +EXPORT_SYMBOL vmlinux 0x599fb41c kvmalloc_node +EXPORT_SYMBOL vmlinux 0x59a2f0ee packing +EXPORT_SYMBOL vmlinux 0x59b4ac3e tcp_memory_allocated +EXPORT_SYMBOL vmlinux 0x59b5ac22 pci_bus_read_config_dword +EXPORT_SYMBOL vmlinux 0x59b9e6ef inet_frag_find +EXPORT_SYMBOL vmlinux 0x59baa245 pci_resize_resource +EXPORT_SYMBOL vmlinux 0x59c1fc9a __blockdev_direct_IO +EXPORT_SYMBOL vmlinux 0x59ca9a25 xfrm_dev_state_flush +EXPORT_SYMBOL vmlinux 0x5a0a8350 bio_copy_data_iter +EXPORT_SYMBOL vmlinux 0x5a0b73d0 zlib_deflateInit2 +EXPORT_SYMBOL vmlinux 0x5a245f6d _raw_write_lock +EXPORT_SYMBOL vmlinux 0x5a44f8cb __crypto_memneq +EXPORT_SYMBOL vmlinux 0x5a4754a2 ptp_clock_event +EXPORT_SYMBOL vmlinux 0x5a4896a8 __put_user_2 +EXPORT_SYMBOL vmlinux 0x5a4d313e gf128mul_4k_lle +EXPORT_SYMBOL vmlinux 0x5a5a2271 __cpu_online_mask +EXPORT_SYMBOL vmlinux 0x5a6d8e9b fwnode_graph_parse_endpoint +EXPORT_SYMBOL vmlinux 0x5a876b6e dev_addr_del +EXPORT_SYMBOL vmlinux 0x5a88009e eisa_driver_unregister +EXPORT_SYMBOL vmlinux 0x5a8ae15a ZSTD_initDDict +EXPORT_SYMBOL vmlinux 0x5a921311 strncmp +EXPORT_SYMBOL vmlinux 0x5ac2ca24 devm_backlight_device_register +EXPORT_SYMBOL vmlinux 0x5ac4adb0 sock_rfree +EXPORT_SYMBOL vmlinux 0x5ad6a698 dmam_alloc_attrs +EXPORT_SYMBOL vmlinux 0x5ad81250 devm_memremap +EXPORT_SYMBOL vmlinux 0x5adb4700 acpi_processor_notify_smm +EXPORT_SYMBOL vmlinux 0x5b2f27fb do_wait_intr +EXPORT_SYMBOL vmlinux 0x5b36d5dd utf8agemax +EXPORT_SYMBOL vmlinux 0x5b3e282f xa_store +EXPORT_SYMBOL vmlinux 0x5b56860c vm_munmap +EXPORT_SYMBOL vmlinux 0x5b695460 set_pages_wb +EXPORT_SYMBOL vmlinux 0x5b828bbe dev_change_flags +EXPORT_SYMBOL vmlinux 0x5b86b830 mipi_dsi_host_register +EXPORT_SYMBOL vmlinux 0x5b92bf86 truncate_inode_pages +EXPORT_SYMBOL vmlinux 0x5bc92e85 LZ4_compress_destSize +EXPORT_SYMBOL vmlinux 0x5bd048a8 dec_zone_page_state +EXPORT_SYMBOL vmlinux 0x5bd1fb62 release_sock +EXPORT_SYMBOL vmlinux 0x5bd4ff88 flow_action_cookie_create +EXPORT_SYMBOL vmlinux 0x5be63c5b crc32c_csum_stub +EXPORT_SYMBOL vmlinux 0x5bea43a5 __task_pid_nr_ns +EXPORT_SYMBOL vmlinux 0x5bf877b5 agp_enable +EXPORT_SYMBOL vmlinux 0x5bfd28db netif_napi_add +EXPORT_SYMBOL vmlinux 0x5c00d810 ZSTD_CDictWorkspaceBound +EXPORT_SYMBOL vmlinux 0x5c060799 tcp_sock_set_syncnt +EXPORT_SYMBOL vmlinux 0x5c0beff3 __sock_queue_rcv_skb +EXPORT_SYMBOL vmlinux 0x5c2666ad unlock_new_inode +EXPORT_SYMBOL vmlinux 0x5c26a53b wait_for_completion_io_timeout +EXPORT_SYMBOL vmlinux 0x5c391447 pagevec_lookup_range +EXPORT_SYMBOL vmlinux 0x5c4265f6 blk_unregister_region +EXPORT_SYMBOL vmlinux 0x5c7a0267 __cleancache_get_page +EXPORT_SYMBOL vmlinux 0x5c7eaa29 xfrm_find_acq_byseq +EXPORT_SYMBOL vmlinux 0x5c879d37 fput +EXPORT_SYMBOL vmlinux 0x5c943a18 phy_register_fixup_for_uid +EXPORT_SYMBOL vmlinux 0x5cf53ce2 input_free_minor +EXPORT_SYMBOL vmlinux 0x5cfb26a0 acpi_enter_sleep_state +EXPORT_SYMBOL vmlinux 0x5d091284 ps2_command +EXPORT_SYMBOL vmlinux 0x5d0bde6a mdio_device_remove +EXPORT_SYMBOL vmlinux 0x5d0e4d41 skb_vlan_pop +EXPORT_SYMBOL vmlinux 0x5d1bd1a3 scsi_is_target_device +EXPORT_SYMBOL vmlinux 0x5d428e50 pskb_trim_rcsum_slow +EXPORT_SYMBOL vmlinux 0x5d49aabc init_wait_var_entry +EXPORT_SYMBOL vmlinux 0x5d78a8f6 vm_node_stat +EXPORT_SYMBOL vmlinux 0x5d830297 get_random_bytes_arch +EXPORT_SYMBOL vmlinux 0x5dacc507 compat_ip_getsockopt +EXPORT_SYMBOL vmlinux 0x5db576b5 napi_schedule_prep +EXPORT_SYMBOL vmlinux 0x5dfd5150 uart_suspend_port +EXPORT_SYMBOL vmlinux 0x5dffb495 ZSTD_decompress_usingDDict +EXPORT_SYMBOL vmlinux 0x5e0ccb9f sha1_transform +EXPORT_SYMBOL vmlinux 0x5e0e35d2 __cgroup_bpf_run_filter_sock_ops +EXPORT_SYMBOL vmlinux 0x5e0f7783 phy_start_cable_test +EXPORT_SYMBOL vmlinux 0x5e171e78 security_cred_getsecid +EXPORT_SYMBOL vmlinux 0x5e1c48bc tcp_ld_RTO_revert +EXPORT_SYMBOL vmlinux 0x5e21a065 backlight_device_get_by_name +EXPORT_SYMBOL vmlinux 0x5e332b52 __var_waitqueue +EXPORT_SYMBOL vmlinux 0x5e34f090 pid_task +EXPORT_SYMBOL vmlinux 0x5e373fb4 gf128mul_64k_bbe +EXPORT_SYMBOL vmlinux 0x5e3820c9 bio_add_page +EXPORT_SYMBOL vmlinux 0x5e514808 inode_nohighmem +EXPORT_SYMBOL vmlinux 0x5e5b76f8 __tracepoint_kmalloc_node +EXPORT_SYMBOL vmlinux 0x5e69e349 phy_ethtool_set_eee +EXPORT_SYMBOL vmlinux 0x5e70d332 mfd_cell_enable +EXPORT_SYMBOL vmlinux 0x5e803ba9 vfs_ioc_setflags_prepare +EXPORT_SYMBOL vmlinux 0x5e855e56 gen_pool_first_fit_align +EXPORT_SYMBOL vmlinux 0x5e95b1cd current_umask +EXPORT_SYMBOL vmlinux 0x5ea0a4c4 tcp_seq_stop +EXPORT_SYMBOL vmlinux 0x5ea91477 md_set_array_sectors +EXPORT_SYMBOL vmlinux 0x5eab4291 skb_copy_and_csum_bits +EXPORT_SYMBOL vmlinux 0x5eb1dfda tty_port_tty_set +EXPORT_SYMBOL vmlinux 0x5eb24829 dm_shift_arg +EXPORT_SYMBOL vmlinux 0x5ec4aee6 put_sg_io_hdr +EXPORT_SYMBOL vmlinux 0x5ed040b0 pm_set_vt_switch +EXPORT_SYMBOL vmlinux 0x5ed2969e string_escape_mem_ascii +EXPORT_SYMBOL vmlinux 0x5ed51b25 mdio_device_create +EXPORT_SYMBOL vmlinux 0x5ed90adc int_to_scsilun +EXPORT_SYMBOL vmlinux 0x5ee06f94 scsi_block_requests +EXPORT_SYMBOL vmlinux 0x5ee16721 flow_get_u32_src +EXPORT_SYMBOL vmlinux 0x5ef6a672 gen_pool_for_each_chunk +EXPORT_SYMBOL vmlinux 0x5efde8e6 proc_doulongvec_ms_jiffies_minmax +EXPORT_SYMBOL vmlinux 0x5f098b2a in6addr_interfacelocal_allrouters +EXPORT_SYMBOL vmlinux 0x5f0ddd0b generic_copy_file_range +EXPORT_SYMBOL vmlinux 0x5f206049 component_match_add_release +EXPORT_SYMBOL vmlinux 0x5f29ab22 flow_rule_match_ct +EXPORT_SYMBOL vmlinux 0x5f3cd0ca netdev_get_xmit_slave +EXPORT_SYMBOL vmlinux 0x5f3df73c sock_no_getsockopt +EXPORT_SYMBOL vmlinux 0x5f440d35 pci_bus_type +EXPORT_SYMBOL vmlinux 0x5f50a0f5 proc_create_single_data +EXPORT_SYMBOL vmlinux 0x5f56663b rdmsrl_on_cpu +EXPORT_SYMBOL vmlinux 0x5f772bc8 phy_attach +EXPORT_SYMBOL vmlinux 0x5f7ea89c dquot_writeback_dquots +EXPORT_SYMBOL vmlinux 0x5f93525c acpi_extract_package +EXPORT_SYMBOL vmlinux 0x5f9a7893 reuseport_detach_prog +EXPORT_SYMBOL vmlinux 0x5fa718a2 netif_rx +EXPORT_SYMBOL vmlinux 0x5fc62196 pnp_activate_dev +EXPORT_SYMBOL vmlinux 0x5fc70301 bio_integrity_alloc +EXPORT_SYMBOL vmlinux 0x5fc72f0e alloc_pages_exact +EXPORT_SYMBOL vmlinux 0x5fdaff66 acpi_bus_register_driver +EXPORT_SYMBOL vmlinux 0x5fef13b5 migrate_vma_pages +EXPORT_SYMBOL vmlinux 0x5ff6b5e3 __ip_queue_xmit +EXPORT_SYMBOL vmlinux 0x5ff9eb0e lockref_mark_dead +EXPORT_SYMBOL vmlinux 0x600206f2 skb_trim +EXPORT_SYMBOL vmlinux 0x6004858d LZ4_compress_fast +EXPORT_SYMBOL vmlinux 0x6005a39d path_nosuid +EXPORT_SYMBOL vmlinux 0x6005c351 zpool_has_pool +EXPORT_SYMBOL vmlinux 0x600683d3 do_unblank_screen +EXPORT_SYMBOL vmlinux 0x601496f4 revert_creds +EXPORT_SYMBOL vmlinux 0x6018c9ea __nla_reserve +EXPORT_SYMBOL vmlinux 0x601f665f dm_io_client_create +EXPORT_SYMBOL vmlinux 0x602e9bbe nvdimm_bus_unlock +EXPORT_SYMBOL vmlinux 0x602f3570 elevator_alloc +EXPORT_SYMBOL vmlinux 0x60351b98 __nla_validate +EXPORT_SYMBOL vmlinux 0x60352082 register_inet6addr_notifier +EXPORT_SYMBOL vmlinux 0x605790dc fiemap_fill_next_extent +EXPORT_SYMBOL vmlinux 0x6059ba4e pci_request_regions_exclusive +EXPORT_SYMBOL vmlinux 0x6082ff8d iter_file_splice_write +EXPORT_SYMBOL vmlinux 0x608741b5 __init_swait_queue_head +EXPORT_SYMBOL vmlinux 0x608da8ce pcie_capability_write_dword +EXPORT_SYMBOL vmlinux 0x608f8768 kset_register +EXPORT_SYMBOL vmlinux 0x6091b333 unregister_chrdev_region +EXPORT_SYMBOL vmlinux 0x609b2853 hdmi_infoframe_pack +EXPORT_SYMBOL vmlinux 0x609bcd98 in6_pton +EXPORT_SYMBOL vmlinux 0x609f1c7e synchronize_net +EXPORT_SYMBOL vmlinux 0x60a32ea9 pm_power_off +EXPORT_SYMBOL vmlinux 0x60b3071f neigh_proc_dointvec +EXPORT_SYMBOL vmlinux 0x60c2790d kmalloc_caches +EXPORT_SYMBOL vmlinux 0x60c8897a seg6_hmac_validate_skb +EXPORT_SYMBOL vmlinux 0x60ca3133 get_super_exclusive_thawed +EXPORT_SYMBOL vmlinux 0x60d8ab30 vme_lm_get +EXPORT_SYMBOL vmlinux 0x60dc50b2 request_firmware_nowait +EXPORT_SYMBOL vmlinux 0x6103bd3a __alloc_pages_nodemask +EXPORT_SYMBOL vmlinux 0x610ee105 dev_add_offload +EXPORT_SYMBOL vmlinux 0x6128b5fc __printk_ratelimit +EXPORT_SYMBOL vmlinux 0x614d8e9d pin_user_pages_unlocked +EXPORT_SYMBOL vmlinux 0x61577694 ZSTD_compressEnd +EXPORT_SYMBOL vmlinux 0x615911d7 __bitmap_set +EXPORT_SYMBOL vmlinux 0x6172e206 __scsi_iterate_devices +EXPORT_SYMBOL vmlinux 0x617c452b queued_read_lock_slowpath +EXPORT_SYMBOL vmlinux 0x6185b747 radix_tree_gang_lookup_tag +EXPORT_SYMBOL vmlinux 0x618911fc numa_node +EXPORT_SYMBOL vmlinux 0x619cb7dd simple_read_from_buffer +EXPORT_SYMBOL vmlinux 0x619dfcdc intel_scu_ipc_dev_readv +EXPORT_SYMBOL vmlinux 0x61a134b9 dma_resv_copy_fences +EXPORT_SYMBOL vmlinux 0x61a5c550 skb_get_hash_perturb +EXPORT_SYMBOL vmlinux 0x61b22e42 get_tz_trend +EXPORT_SYMBOL vmlinux 0x61b7b126 simple_strtoull +EXPORT_SYMBOL vmlinux 0x61d63c69 udp_ioctl +EXPORT_SYMBOL vmlinux 0x61e272c9 sha256_final +EXPORT_SYMBOL vmlinux 0x61ea189b fb_pad_aligned_buffer +EXPORT_SYMBOL vmlinux 0x61fca3c0 kernel_sendpage_locked +EXPORT_SYMBOL vmlinux 0x61fdae87 complete_request_key +EXPORT_SYMBOL vmlinux 0x6203f9ff pci_enable_wake +EXPORT_SYMBOL vmlinux 0x6207c2d0 jbd2_journal_free_reserved +EXPORT_SYMBOL vmlinux 0x620b4122 input_handler_for_each_handle +EXPORT_SYMBOL vmlinux 0x62139f4d vlan_ioctl_set +EXPORT_SYMBOL vmlinux 0x6214aef2 cpufreq_unregister_notifier +EXPORT_SYMBOL vmlinux 0x6228c21f smp_call_function_single +EXPORT_SYMBOL vmlinux 0x6264ebc7 __neigh_event_send +EXPORT_SYMBOL vmlinux 0x6271f8d5 kill_block_super +EXPORT_SYMBOL vmlinux 0x62737e1d sock_unregister +EXPORT_SYMBOL vmlinux 0x627a7477 __napi_schedule_irqoff +EXPORT_SYMBOL vmlinux 0x62849ac7 dev_valid_name +EXPORT_SYMBOL vmlinux 0x62890955 __tracepoint_spi_transfer_stop +EXPORT_SYMBOL vmlinux 0x628ea32c proc_create_seq_private +EXPORT_SYMBOL vmlinux 0x6297f6f0 input_set_poll_interval +EXPORT_SYMBOL vmlinux 0x629caaac vfs_iocb_iter_read +EXPORT_SYMBOL vmlinux 0x629e77fc nonseekable_open +EXPORT_SYMBOL vmlinux 0x62a213c2 __sk_mem_reclaim +EXPORT_SYMBOL vmlinux 0x62bf6edf utf8agemin +EXPORT_SYMBOL vmlinux 0x6305a8fd bdevname +EXPORT_SYMBOL vmlinux 0x63187451 pcie_aspm_support_enabled +EXPORT_SYMBOL vmlinux 0x631d06aa cpu_rmap_put +EXPORT_SYMBOL vmlinux 0x632bdfa3 ether_setup +EXPORT_SYMBOL vmlinux 0x632ee5d9 skb_ensure_writable +EXPORT_SYMBOL vmlinux 0x6340780d netdev_port_same_parent_id +EXPORT_SYMBOL vmlinux 0x635ff76d LZ4_saveDict +EXPORT_SYMBOL vmlinux 0x636257f7 get_ibs_caps +EXPORT_SYMBOL vmlinux 0x637d072e netif_device_attach +EXPORT_SYMBOL vmlinux 0x6380d836 dump_page +EXPORT_SYMBOL vmlinux 0x6382a465 dma_get_sgtable_attrs +EXPORT_SYMBOL vmlinux 0x63949ee3 __pskb_pull_tail +EXPORT_SYMBOL vmlinux 0x639f4c0f genlmsg_put +EXPORT_SYMBOL vmlinux 0x63a58370 flow_action_cookie_destroy +EXPORT_SYMBOL vmlinux 0x63a7c28c bitmap_find_free_region +EXPORT_SYMBOL vmlinux 0x63b6aef0 udp_sendmsg +EXPORT_SYMBOL vmlinux 0x63c4d61f __bitmap_weight +EXPORT_SYMBOL vmlinux 0x63d570fe load_nls_default +EXPORT_SYMBOL vmlinux 0x63d6dbd9 __tracepoint_kmem_cache_alloc_node +EXPORT_SYMBOL vmlinux 0x63dca336 dm_register_target +EXPORT_SYMBOL vmlinux 0x63eb9355 panic_blink +EXPORT_SYMBOL vmlinux 0x63f835ba on_each_cpu_cond_mask +EXPORT_SYMBOL vmlinux 0x63ff6505 ndo_dflt_fdb_add +EXPORT_SYMBOL vmlinux 0x6405dcd3 slhc_toss +EXPORT_SYMBOL vmlinux 0x64127b67 bitmap_find_next_zero_area_off +EXPORT_SYMBOL vmlinux 0x6420ffae vfs_mkdir +EXPORT_SYMBOL vmlinux 0x6427417f sg_miter_stop +EXPORT_SYMBOL vmlinux 0x643d9ba1 groups_free +EXPORT_SYMBOL vmlinux 0x6449187a pnp_unregister_driver +EXPORT_SYMBOL vmlinux 0x644d48d6 hdmi_infoframe_log +EXPORT_SYMBOL vmlinux 0x645b63fd xfrm_state_walk +EXPORT_SYMBOL vmlinux 0x645b85ab jbd2_journal_begin_ordered_truncate +EXPORT_SYMBOL vmlinux 0x646e8008 scsi_host_lookup +EXPORT_SYMBOL vmlinux 0x6472150c dump_align +EXPORT_SYMBOL vmlinux 0x6481ffe0 hsiphash_1u32 +EXPORT_SYMBOL vmlinux 0x648eb59d gc_inflight_list +EXPORT_SYMBOL vmlinux 0x64999478 congestion_wait +EXPORT_SYMBOL vmlinux 0x64a131a7 tcf_register_action +EXPORT_SYMBOL vmlinux 0x64a4ac3c pci_bus_write_config_word +EXPORT_SYMBOL vmlinux 0x64a6abb2 migrate_page +EXPORT_SYMBOL vmlinux 0x64a9c928 default_blu +EXPORT_SYMBOL vmlinux 0x64bbc288 string_unescape +EXPORT_SYMBOL vmlinux 0x64c991d9 scsi_rescan_device +EXPORT_SYMBOL vmlinux 0x650d5794 dquot_transfer +EXPORT_SYMBOL vmlinux 0x6513a3fa fb_get_color_depth +EXPORT_SYMBOL vmlinux 0x651a4139 test_taint +EXPORT_SYMBOL vmlinux 0x652032cb mac_pton +EXPORT_SYMBOL vmlinux 0x652ce9aa nla_memcmp +EXPORT_SYMBOL vmlinux 0x653ab67b __generic_file_write_iter +EXPORT_SYMBOL vmlinux 0x653e3e00 __devm_request_region +EXPORT_SYMBOL vmlinux 0x65408378 zlib_inflate_blob +EXPORT_SYMBOL vmlinux 0x65464c16 clkdev_drop +EXPORT_SYMBOL vmlinux 0x6551c054 reuseport_alloc +EXPORT_SYMBOL vmlinux 0x656c1a0e string_escape_mem +EXPORT_SYMBOL vmlinux 0x656e4a6e snprintf +EXPORT_SYMBOL vmlinux 0x658ce1a8 xxh64_reset +EXPORT_SYMBOL vmlinux 0x65960974 ip6_frag_init +EXPORT_SYMBOL vmlinux 0x659ded26 xfrm_flush_gc +EXPORT_SYMBOL vmlinux 0x65a799d6 pci_try_set_mwi +EXPORT_SYMBOL vmlinux 0x65ac305e audit_log_start +EXPORT_SYMBOL vmlinux 0x65af699a fs_param_is_fd +EXPORT_SYMBOL vmlinux 0x65c8798b import_iovec +EXPORT_SYMBOL vmlinux 0x65cf8831 ZSTD_decompress_usingDict +EXPORT_SYMBOL vmlinux 0x65d1bab2 acpi_bios_warning +EXPORT_SYMBOL vmlinux 0x65d9e877 cpufreq_register_notifier +EXPORT_SYMBOL vmlinux 0x65dccf13 xz_dec_end +EXPORT_SYMBOL vmlinux 0x65e0d6d7 memory_read_from_buffer +EXPORT_SYMBOL vmlinux 0x65e5404b fc_attach_transport +EXPORT_SYMBOL vmlinux 0x66015076 file_open_root +EXPORT_SYMBOL vmlinux 0x6626afca down +EXPORT_SYMBOL vmlinux 0x663182c9 acpi_get_gpe_status +EXPORT_SYMBOL vmlinux 0x664a3530 tcf_idr_cleanup +EXPORT_SYMBOL vmlinux 0x665aab32 xp_alloc +EXPORT_SYMBOL vmlinux 0x66628bf3 ip_tunnel_metadata_cnt +EXPORT_SYMBOL vmlinux 0x6673f96d xxh32_reset +EXPORT_SYMBOL vmlinux 0x668b19a1 down_read +EXPORT_SYMBOL vmlinux 0x668dee4c phy_modify_paged_changed +EXPORT_SYMBOL vmlinux 0x669ac687 rt6_lookup +EXPORT_SYMBOL vmlinux 0x66af1fd1 lockref_put_or_lock +EXPORT_SYMBOL vmlinux 0x66b4cc41 kmemdup +EXPORT_SYMBOL vmlinux 0x66c134ef fib_default_rule_add +EXPORT_SYMBOL vmlinux 0x66d29e23 nla_put_64bit +EXPORT_SYMBOL vmlinux 0x66d2ebec nla_reserve_64bit +EXPORT_SYMBOL vmlinux 0x66f35e9b devm_alloc_etherdev_mqs +EXPORT_SYMBOL vmlinux 0x66fdcda4 sock_gettstamp +EXPORT_SYMBOL vmlinux 0x66fe1d3d show_init_ipc_ns +EXPORT_SYMBOL vmlinux 0x67187f1f input_close_device +EXPORT_SYMBOL vmlinux 0x671ef855 dquot_disable +EXPORT_SYMBOL vmlinux 0x6729d3df __get_user_4 +EXPORT_SYMBOL vmlinux 0x673f815e agp_bridges +EXPORT_SYMBOL vmlinux 0x67421595 put_tty_driver +EXPORT_SYMBOL vmlinux 0x6749d53f hdmi_vendor_infoframe_init +EXPORT_SYMBOL vmlinux 0x674e8bd4 __frontswap_load +EXPORT_SYMBOL vmlinux 0x678b96ec dma_pool_alloc +EXPORT_SYMBOL vmlinux 0x67b27ec1 tty_std_termios +EXPORT_SYMBOL vmlinux 0x67b78eb3 seq_hlist_next_rcu +EXPORT_SYMBOL vmlinux 0x67c13ea0 acpi_read +EXPORT_SYMBOL vmlinux 0x681092a1 mr_dump +EXPORT_SYMBOL vmlinux 0x681197b5 sk_filter_trim_cap +EXPORT_SYMBOL vmlinux 0x6822ad89 sdev_prefix_printk +EXPORT_SYMBOL vmlinux 0x683a9560 __gnet_stats_copy_basic +EXPORT_SYMBOL vmlinux 0x68421639 unload_nls +EXPORT_SYMBOL vmlinux 0x68486e2b put_fs_context +EXPORT_SYMBOL vmlinux 0x6851664e wrmsrl_safe_on_cpu +EXPORT_SYMBOL vmlinux 0x685e31ca groups_sort +EXPORT_SYMBOL vmlinux 0x686b6fea dcb_setapp +EXPORT_SYMBOL vmlinux 0x687b6a16 kdbgetsymval +EXPORT_SYMBOL vmlinux 0x688cae6f sock_no_socketpair +EXPORT_SYMBOL vmlinux 0x68946f70 scsi_eh_finish_cmd +EXPORT_SYMBOL vmlinux 0x689c6c28 udp_flush_pending_frames +EXPORT_SYMBOL vmlinux 0x68a42fc8 tcp_connect +EXPORT_SYMBOL vmlinux 0x68a90b51 get_default_font +EXPORT_SYMBOL vmlinux 0x68ae89ca flow_rule_match_enc_ipv6_addrs +EXPORT_SYMBOL vmlinux 0x68c2ee39 vfs_dedupe_file_range +EXPORT_SYMBOL vmlinux 0x68c957d1 pcie_capability_write_word +EXPORT_SYMBOL vmlinux 0x68d6180a __tty_insert_flip_char +EXPORT_SYMBOL vmlinux 0x68facbfe dma_dummy_ops +EXPORT_SYMBOL vmlinux 0x69012eed flow_rule_match_ip +EXPORT_SYMBOL vmlinux 0x69049cd2 radix_tree_replace_slot +EXPORT_SYMBOL vmlinux 0x691a8414 bprm_change_interp +EXPORT_SYMBOL vmlinux 0x6920f157 __quota_error +EXPORT_SYMBOL vmlinux 0x6926fb16 flow_block_cb_decref +EXPORT_SYMBOL vmlinux 0x69351dc1 eth_platform_get_mac_address +EXPORT_SYMBOL vmlinux 0x69493b1a kstrtos16 +EXPORT_SYMBOL vmlinux 0x6956f036 input_mt_get_slot_by_key +EXPORT_SYMBOL vmlinux 0x69585523 __ksize +EXPORT_SYMBOL vmlinux 0x6961439f param_set_copystring +EXPORT_SYMBOL vmlinux 0x69668826 netdev_increment_features +EXPORT_SYMBOL vmlinux 0x6971447a rtc_month_days +EXPORT_SYMBOL vmlinux 0x697657b9 vfs_tmpfile +EXPORT_SYMBOL vmlinux 0x6980bc47 inet_gso_segment +EXPORT_SYMBOL vmlinux 0x6988d0ca cpu_dr7 +EXPORT_SYMBOL vmlinux 0x699a05c8 netdev_bind_sb_channel_queue +EXPORT_SYMBOL vmlinux 0x69a69814 security_unix_stream_connect +EXPORT_SYMBOL vmlinux 0x69acdf38 memcpy +EXPORT_SYMBOL vmlinux 0x69ad2f20 kstrtouint +EXPORT_SYMBOL vmlinux 0x69bc0305 dev_printk_emit +EXPORT_SYMBOL vmlinux 0x69c57824 unlock_page +EXPORT_SYMBOL vmlinux 0x69c86d07 padata_alloc_shell +EXPORT_SYMBOL vmlinux 0x69d7ff49 has_capability +EXPORT_SYMBOL vmlinux 0x69dd3b5b crc32_le +EXPORT_SYMBOL vmlinux 0x69de8757 vme_check_window +EXPORT_SYMBOL vmlinux 0x69e16a1a sock_no_sendpage_locked +EXPORT_SYMBOL vmlinux 0x69e975f0 devm_nvmem_cell_put +EXPORT_SYMBOL vmlinux 0x69ee03f0 xfrm_state_register_afinfo +EXPORT_SYMBOL vmlinux 0x6a03751f sgl_free_order +EXPORT_SYMBOL vmlinux 0x6a037cf1 mempool_kfree +EXPORT_SYMBOL vmlinux 0x6a0ecf48 vlan_dev_vlan_proto +EXPORT_SYMBOL vmlinux 0x6a261b78 irq_stat +EXPORT_SYMBOL vmlinux 0x6a449c4f register_sysctl_table +EXPORT_SYMBOL vmlinux 0x6a484602 user_path_create +EXPORT_SYMBOL vmlinux 0x6a4fa9c7 netif_rx_ni +EXPORT_SYMBOL vmlinux 0x6a5cb5ee __get_free_pages +EXPORT_SYMBOL vmlinux 0x6a5ecb18 unregister_module_notifier +EXPORT_SYMBOL vmlinux 0x6a5fa363 sigprocmask +EXPORT_SYMBOL vmlinux 0x6a625854 tcp_parse_options +EXPORT_SYMBOL vmlinux 0x6a6d4412 tcp_timewait_state_process +EXPORT_SYMBOL vmlinux 0x6a7b664e pcim_iomap_table +EXPORT_SYMBOL vmlinux 0x6a7e1f43 input_set_timestamp +EXPORT_SYMBOL vmlinux 0x6a8ab4db tty_port_lower_dtr_rts +EXPORT_SYMBOL vmlinux 0x6aa11aa6 sgl_free_n_order +EXPORT_SYMBOL vmlinux 0x6aa4fbe2 vga_switcheroo_register_audio_client +EXPORT_SYMBOL vmlinux 0x6ab487c4 blk_limits_io_opt +EXPORT_SYMBOL vmlinux 0x6ab4fa93 mini_qdisc_pair_init +EXPORT_SYMBOL vmlinux 0x6abf76db set_trace_device +EXPORT_SYMBOL vmlinux 0x6ac5b22a sock_edemux +EXPORT_SYMBOL vmlinux 0x6ad0fa68 jbd2_journal_restart +EXPORT_SYMBOL vmlinux 0x6add5c9a dmi_find_device +EXPORT_SYMBOL vmlinux 0x6aeefac4 zlib_deflateReset +EXPORT_SYMBOL vmlinux 0x6afd09e4 dm_table_get_md +EXPORT_SYMBOL vmlinux 0x6b0220d8 md_reap_sync_thread +EXPORT_SYMBOL vmlinux 0x6b13dc68 pci_enable_device +EXPORT_SYMBOL vmlinux 0x6b16c5bc unregister_fib_notifier +EXPORT_SYMBOL vmlinux 0x6b1d7a5c serio_reconnect +EXPORT_SYMBOL vmlinux 0x6b27729b radix_tree_gang_lookup +EXPORT_SYMBOL vmlinux 0x6b2dc060 dump_stack +EXPORT_SYMBOL vmlinux 0x6b3b2c67 blk_cleanup_queue +EXPORT_SYMBOL vmlinux 0x6b3c3dba md_bitmap_update_sb +EXPORT_SYMBOL vmlinux 0x6b3f7ec2 nosteal_pipe_buf_ops +EXPORT_SYMBOL vmlinux 0x6b55acd0 rtnl_lock_killable +EXPORT_SYMBOL vmlinux 0x6b597056 proto_unregister +EXPORT_SYMBOL vmlinux 0x6b640864 nla_strlcpy +EXPORT_SYMBOL vmlinux 0x6b7d7fdf neigh_seq_next +EXPORT_SYMBOL vmlinux 0x6b853d06 ns_to_kernel_old_timeval +EXPORT_SYMBOL vmlinux 0x6b8bf149 netif_receive_skb_list +EXPORT_SYMBOL vmlinux 0x6b94950d take_dentry_name_snapshot +EXPORT_SYMBOL vmlinux 0x6ba725b3 __mark_inode_dirty +EXPORT_SYMBOL vmlinux 0x6bc26261 fc_remote_port_add +EXPORT_SYMBOL vmlinux 0x6bc3fbc0 __unregister_chrdev +EXPORT_SYMBOL vmlinux 0x6bc7a3a9 inode_set_bytes +EXPORT_SYMBOL vmlinux 0x6bc7aa33 clk_bulk_get_all +EXPORT_SYMBOL vmlinux 0x6bd5c24d sync_dirty_buffer +EXPORT_SYMBOL vmlinux 0x6bdbbb3c md_bitmap_start_sync +EXPORT_SYMBOL vmlinux 0x6be1c1f8 acpi_install_method +EXPORT_SYMBOL vmlinux 0x6be36b2a blk_mq_tagset_wait_completed_request +EXPORT_SYMBOL vmlinux 0x6bf4772a pci_find_capability +EXPORT_SYMBOL vmlinux 0x6bfc9556 invalidate_bdev +EXPORT_SYMBOL vmlinux 0x6c224cda gen_pool_destroy +EXPORT_SYMBOL vmlinux 0x6c22a709 ata_port_printk +EXPORT_SYMBOL vmlinux 0x6c2313fb xsk_clear_tx_need_wakeup +EXPORT_SYMBOL vmlinux 0x6c257ac0 tty_termios_hw_change +EXPORT_SYMBOL vmlinux 0x6c28be5a vfio_info_add_capability +EXPORT_SYMBOL vmlinux 0x6c34fde1 __sock_cmsg_send +EXPORT_SYMBOL vmlinux 0x6c39a760 generic_read_dir +EXPORT_SYMBOL vmlinux 0x6c42a7df security_inet_conn_established +EXPORT_SYMBOL vmlinux 0x6c4a35e4 from_kuid +EXPORT_SYMBOL vmlinux 0x6c4fffa4 console_stop +EXPORT_SYMBOL vmlinux 0x6c513448 migrate_page_copy +EXPORT_SYMBOL vmlinux 0x6c5dae23 scsi_kmap_atomic_sg +EXPORT_SYMBOL vmlinux 0x6c61ce70 num_registered_fb +EXPORT_SYMBOL vmlinux 0x6c6c0e5d inet_sk_rx_dst_set +EXPORT_SYMBOL vmlinux 0x6c7abe3c pci_fixup_device +EXPORT_SYMBOL vmlinux 0x6c81c0b2 dev_get_phys_port_id +EXPORT_SYMBOL vmlinux 0x6c8d1c7d tcp_rcv_state_process +EXPORT_SYMBOL vmlinux 0x6c9105fc mdio_device_free +EXPORT_SYMBOL vmlinux 0x6ca31e49 __test_set_page_writeback +EXPORT_SYMBOL vmlinux 0x6cb09991 udp_prot +EXPORT_SYMBOL vmlinux 0x6cb46525 netlbl_catmap_walk +EXPORT_SYMBOL vmlinux 0x6cb4ffea vfs_iter_read +EXPORT_SYMBOL vmlinux 0x6cb59e4c key_payload_reserve +EXPORT_SYMBOL vmlinux 0x6ce7b212 ip6_route_me_harder +EXPORT_SYMBOL vmlinux 0x6cf2227e __tcp_md5_do_lookup +EXPORT_SYMBOL vmlinux 0x6cf62166 __tracepoint_kmem_cache_alloc +EXPORT_SYMBOL vmlinux 0x6d0ab661 genphy_aneg_done +EXPORT_SYMBOL vmlinux 0x6d199e40 serial8250_set_isa_configurator +EXPORT_SYMBOL vmlinux 0x6d1f8a8e nvmem_get_mac_address +EXPORT_SYMBOL vmlinux 0x6d213c32 iterate_supers_type +EXPORT_SYMBOL vmlinux 0x6d22c74f devm_clk_get_optional +EXPORT_SYMBOL vmlinux 0x6d294e43 clock_t_to_jiffies +EXPORT_SYMBOL vmlinux 0x6d334118 __get_user_8 +EXPORT_SYMBOL vmlinux 0x6d340f64 tty_termios_input_baud_rate +EXPORT_SYMBOL vmlinux 0x6d3d226c generic_pipe_buf_get +EXPORT_SYMBOL vmlinux 0x6d5005fc inet_release +EXPORT_SYMBOL vmlinux 0x6d58f69e agp3_generic_sizes +EXPORT_SYMBOL vmlinux 0x6d5a243e watchdog_unregister_governor +EXPORT_SYMBOL vmlinux 0x6d5f5b91 radix_tree_tagged +EXPORT_SYMBOL vmlinux 0x6d6292c0 register_md_personality +EXPORT_SYMBOL vmlinux 0x6d7abe02 first_ec +EXPORT_SYMBOL vmlinux 0x6d7c7dcc bitmap_cut +EXPORT_SYMBOL vmlinux 0x6da7af54 tty_wait_until_sent +EXPORT_SYMBOL vmlinux 0x6dc35b25 radix_tree_iter_delete +EXPORT_SYMBOL vmlinux 0x6dcf857f uuid_null +EXPORT_SYMBOL vmlinux 0x6dd17e7b acpi_get_table_header +EXPORT_SYMBOL vmlinux 0x6de67266 mark_buffer_dirty_inode +EXPORT_SYMBOL vmlinux 0x6df1aaf1 kernel_sigaction +EXPORT_SYMBOL vmlinux 0x6e019034 __tracepoint_module_get +EXPORT_SYMBOL vmlinux 0x6e10c227 seg6_hmac_info_add +EXPORT_SYMBOL vmlinux 0x6e174f22 simple_dentry_operations +EXPORT_SYMBOL vmlinux 0x6e286604 hdmi_drm_infoframe_pack +EXPORT_SYMBOL vmlinux 0x6e4664ba stream_open +EXPORT_SYMBOL vmlinux 0x6e4c107e devfreq_suspend_device +EXPORT_SYMBOL vmlinux 0x6e543138 mipi_dsi_driver_unregister +EXPORT_SYMBOL vmlinux 0x6e5b8651 xz_dec_run +EXPORT_SYMBOL vmlinux 0x6e648045 ip_sock_set_pktinfo +EXPORT_SYMBOL vmlinux 0x6e6493f3 eth_header +EXPORT_SYMBOL vmlinux 0x6e712ac4 neigh_event_ns +EXPORT_SYMBOL vmlinux 0x6e720ff2 rtnl_unlock +EXPORT_SYMBOL vmlinux 0x6e7ab26b page_pool_destroy +EXPORT_SYMBOL vmlinux 0x6e886177 km_report +EXPORT_SYMBOL vmlinux 0x6e8ec73d __register_chrdev +EXPORT_SYMBOL vmlinux 0x6e9dd606 __symbol_put +EXPORT_SYMBOL vmlinux 0x6ea7575d acpi_dispatch_gpe +EXPORT_SYMBOL vmlinux 0x6ea9363b force_sig +EXPORT_SYMBOL vmlinux 0x6ec0cfd1 dev_add_pack +EXPORT_SYMBOL vmlinux 0x6ec0fa3e call_fib_notifier +EXPORT_SYMBOL vmlinux 0x6ed3e630 param_ops_ullong +EXPORT_SYMBOL vmlinux 0x6ed8a5fc hdmi_drm_infoframe_check +EXPORT_SYMBOL vmlinux 0x6edf617e arp_create +EXPORT_SYMBOL vmlinux 0x6f2eeaee dquot_commit +EXPORT_SYMBOL vmlinux 0x6f2f3a40 netdev_crit +EXPORT_SYMBOL vmlinux 0x6f3056ae dst_dev_put +EXPORT_SYMBOL vmlinux 0x6f41a428 acpi_get_vendor_resource +EXPORT_SYMBOL vmlinux 0x6f7d67c2 inode_get_bytes +EXPORT_SYMBOL vmlinux 0x6f8331e3 udp_seq_next +EXPORT_SYMBOL vmlinux 0x6f8f674a bpf_dispatcher_xdp_func +EXPORT_SYMBOL vmlinux 0x6f915a45 dqstats +EXPORT_SYMBOL vmlinux 0x6f9630f3 input_setup_polling +EXPORT_SYMBOL vmlinux 0x6fac0c74 jbd2_journal_lock_updates +EXPORT_SYMBOL vmlinux 0x6fb49676 queue_rcu_work +EXPORT_SYMBOL vmlinux 0x6fbc6a00 radix_tree_insert +EXPORT_SYMBOL vmlinux 0x6fcb87a1 touch_softlockup_watchdog +EXPORT_SYMBOL vmlinux 0x6fd8c058 vm_insert_page +EXPORT_SYMBOL vmlinux 0x6fd9c35a __clzdi2 +EXPORT_SYMBOL vmlinux 0x6fee1bbb ip_tunnel_parse_protocol +EXPORT_SYMBOL vmlinux 0x6ff2dc89 bdi_alloc +EXPORT_SYMBOL vmlinux 0x70002fe8 siphash_1u32 +EXPORT_SYMBOL vmlinux 0x7006a877 proc_remove +EXPORT_SYMBOL vmlinux 0x701e2b2a dma_set_mask +EXPORT_SYMBOL vmlinux 0x7021fe86 dcb_getapp +EXPORT_SYMBOL vmlinux 0x7023bea8 unregister_acpi_notifier +EXPORT_SYMBOL vmlinux 0x702946da ucs2_strlen +EXPORT_SYMBOL vmlinux 0x7040fff9 rtc_lock +EXPORT_SYMBOL vmlinux 0x704dbce4 pagecache_write_begin +EXPORT_SYMBOL vmlinux 0x7054a3e4 request_dma +EXPORT_SYMBOL vmlinux 0x7071a4f2 cmdline_parts_free +EXPORT_SYMBOL vmlinux 0x70774320 vme_dma_list_free +EXPORT_SYMBOL vmlinux 0x7090f4c5 pcim_set_mwi +EXPORT_SYMBOL vmlinux 0x7094c615 netdev_warn +EXPORT_SYMBOL vmlinux 0x709a188c dma_direct_map_sg +EXPORT_SYMBOL vmlinux 0x709c46a3 simple_get_link +EXPORT_SYMBOL vmlinux 0x70a827f4 __cleancache_put_page +EXPORT_SYMBOL vmlinux 0x70aaf68e tcp_enter_quickack_mode +EXPORT_SYMBOL vmlinux 0x70ad75fb radix_tree_lookup +EXPORT_SYMBOL vmlinux 0x70c0627a __skb_try_recv_datagram +EXPORT_SYMBOL vmlinux 0x70c16015 disk_stack_limits +EXPORT_SYMBOL vmlinux 0x70d01651 key_instantiate_and_link +EXPORT_SYMBOL vmlinux 0x70d2efa6 vmf_insert_pfn_prot +EXPORT_SYMBOL vmlinux 0x70ec0e7e tc_cleanup_flow_action +EXPORT_SYMBOL vmlinux 0x70ecb785 open_with_fake_path +EXPORT_SYMBOL vmlinux 0x70eeeccf neigh_xmit +EXPORT_SYMBOL vmlinux 0x70f6bd1a from_kgid +EXPORT_SYMBOL vmlinux 0x70f88e77 genphy_read_status_fixed +EXPORT_SYMBOL vmlinux 0x7129e5f8 hex_asc +EXPORT_SYMBOL vmlinux 0x713cc026 pci_set_power_state +EXPORT_SYMBOL vmlinux 0x714ba6b7 __dynamic_ibdev_dbg +EXPORT_SYMBOL vmlinux 0x715154db __ps2_command +EXPORT_SYMBOL vmlinux 0x7155e795 pci_free_host_bridge +EXPORT_SYMBOL vmlinux 0x7158a73a __dev_direct_xmit +EXPORT_SYMBOL vmlinux 0x715c2d4e pcie_bandwidth_available +EXPORT_SYMBOL vmlinux 0x715d5ed3 dev_uc_flush +EXPORT_SYMBOL vmlinux 0x7165042d single_open +EXPORT_SYMBOL vmlinux 0x716780e1 mem_cgroup_from_task +EXPORT_SYMBOL vmlinux 0x7171121c overflowgid +EXPORT_SYMBOL vmlinux 0x717cce92 phy_device_free +EXPORT_SYMBOL vmlinux 0x718dbec9 rps_may_expire_flow +EXPORT_SYMBOL vmlinux 0x719e4526 pcie_port_service_register +EXPORT_SYMBOL vmlinux 0x71a50dbc register_blkdev +EXPORT_SYMBOL vmlinux 0x71a672ef dmam_pool_destroy +EXPORT_SYMBOL vmlinux 0x71aa466f filemap_fdatawait_range +EXPORT_SYMBOL vmlinux 0x71c3c629 sock_bind_add +EXPORT_SYMBOL vmlinux 0x71c5a5b9 devm_nvmem_unregister +EXPORT_SYMBOL vmlinux 0x71d1eb64 block_read_full_page +EXPORT_SYMBOL vmlinux 0x71d61f01 blk_queue_io_opt +EXPORT_SYMBOL vmlinux 0x71e9c894 d_instantiate +EXPORT_SYMBOL vmlinux 0x71edd601 pci_enable_msix_range +EXPORT_SYMBOL vmlinux 0x72006be9 ata_dev_printk +EXPORT_SYMBOL vmlinux 0x7219f76d dentry_open +EXPORT_SYMBOL vmlinux 0x724876f6 xfrm_policy_bysel_ctx +EXPORT_SYMBOL vmlinux 0x724ddac7 utf8version_is_supported +EXPORT_SYMBOL vmlinux 0x724df696 splice_direct_to_actor +EXPORT_SYMBOL vmlinux 0x726bc3c7 wait_for_completion_killable_timeout +EXPORT_SYMBOL vmlinux 0x727212c7 vme_slot_num +EXPORT_SYMBOL vmlinux 0x727c210d dquot_free_inode +EXPORT_SYMBOL vmlinux 0x7294e461 udplite_prot +EXPORT_SYMBOL vmlinux 0x72a89d5a fb_is_primary_device +EXPORT_SYMBOL vmlinux 0x72a98fdb copy_user_generic_unrolled +EXPORT_SYMBOL vmlinux 0x72b243d4 free_dma +EXPORT_SYMBOL vmlinux 0x72b347cc pci_ep_cfs_remove_epf_group +EXPORT_SYMBOL vmlinux 0x72b9d287 default_grn +EXPORT_SYMBOL vmlinux 0x72c90dbf phy_reset_after_clk_enable +EXPORT_SYMBOL vmlinux 0x72d1e930 tty_register_driver +EXPORT_SYMBOL vmlinux 0x72d29a16 __get_hash_from_flowi6 +EXPORT_SYMBOL vmlinux 0x72d79d83 pgdir_shift +EXPORT_SYMBOL vmlinux 0x72d7ec02 vfs_create_mount +EXPORT_SYMBOL vmlinux 0x72e4aa42 blk_alloc_queue +EXPORT_SYMBOL vmlinux 0x72e94a6c md_integrity_add_rdev +EXPORT_SYMBOL vmlinux 0x72ea7b2d scsi_device_type +EXPORT_SYMBOL vmlinux 0x731c4a9c dma_fence_signal +EXPORT_SYMBOL vmlinux 0x731ed5c1 __sg_alloc_table_from_pages +EXPORT_SYMBOL vmlinux 0x731fba5b mdio_driver_unregister +EXPORT_SYMBOL vmlinux 0x735a0bd5 native_io_delay +EXPORT_SYMBOL vmlinux 0x735e6a81 acpi_evaluate_integer +EXPORT_SYMBOL vmlinux 0x7366c2b1 sock_common_getsockopt +EXPORT_SYMBOL vmlinux 0x736b5662 _raw_read_lock_irqsave +EXPORT_SYMBOL vmlinux 0x736b720c phy_print_status +EXPORT_SYMBOL vmlinux 0x7378ebd8 no_seek_end_llseek_size +EXPORT_SYMBOL vmlinux 0x7380dffa argv_split +EXPORT_SYMBOL vmlinux 0x7397d63f mntget +EXPORT_SYMBOL vmlinux 0x73abb180 alloc_contig_range +EXPORT_SYMBOL vmlinux 0x73d9a5fb ip6_find_1stfragopt +EXPORT_SYMBOL vmlinux 0x73dd54eb irq_fpu_usable +EXPORT_SYMBOL vmlinux 0x73f1b98d keyring_clear +EXPORT_SYMBOL vmlinux 0x73fd19c5 con_is_visible +EXPORT_SYMBOL vmlinux 0x74087400 jbd2_journal_destroy +EXPORT_SYMBOL vmlinux 0x740a1b95 reserve_evntsel_nmi +EXPORT_SYMBOL vmlinux 0x7410aba2 strreplace +EXPORT_SYMBOL vmlinux 0x7412ed5b kvfree_sensitive +EXPORT_SYMBOL vmlinux 0x7413793a EISA_bus +EXPORT_SYMBOL vmlinux 0x741e126d skb_dequeue +EXPORT_SYMBOL vmlinux 0x742578a5 wait_for_random_bytes +EXPORT_SYMBOL vmlinux 0x742bbefe scsi_report_device_reset +EXPORT_SYMBOL vmlinux 0x7453d3e8 security_release_secctx +EXPORT_SYMBOL vmlinux 0x74665dbb put_cmsg_scm_timestamping +EXPORT_SYMBOL vmlinux 0x74725e69 ZSTD_compressContinue +EXPORT_SYMBOL vmlinux 0x74754435 acpi_bus_generate_netlink_event +EXPORT_SYMBOL vmlinux 0x74831d9f get_mem_cgroup_from_mm +EXPORT_SYMBOL vmlinux 0x74884922 get_mm_exe_file +EXPORT_SYMBOL vmlinux 0x749849d8 LZ4_loadDict +EXPORT_SYMBOL vmlinux 0x7499c7df add_watch_to_object +EXPORT_SYMBOL vmlinux 0x7499e278 vme_dma_list_exec +EXPORT_SYMBOL vmlinux 0x749e17ff try_to_release_page +EXPORT_SYMBOL vmlinux 0x74a5fc2d netpoll_poll_disable +EXPORT_SYMBOL vmlinux 0x74c134b9 __sw_hweight32 +EXPORT_SYMBOL vmlinux 0x74d2161a __inode_sub_bytes +EXPORT_SYMBOL vmlinux 0x74e5ff1a udpv6_encap_enable +EXPORT_SYMBOL vmlinux 0x75068cdf xfrm_state_unregister_afinfo +EXPORT_SYMBOL vmlinux 0x7507cc24 scsi_device_lookup_by_target +EXPORT_SYMBOL vmlinux 0x750a7b71 config_item_set_name +EXPORT_SYMBOL vmlinux 0x753603ce acpi_device_hid +EXPORT_SYMBOL vmlinux 0x7538a316 fb_class +EXPORT_SYMBOL vmlinux 0x7538b132 agp_off +EXPORT_SYMBOL vmlinux 0x754d539c strlen +EXPORT_SYMBOL vmlinux 0x75533484 phy_free_interrupt +EXPORT_SYMBOL vmlinux 0x755c8b77 mount_bdev +EXPORT_SYMBOL vmlinux 0x75627792 load_nls +EXPORT_SYMBOL vmlinux 0x756f6bf3 clean_bdev_aliases +EXPORT_SYMBOL vmlinux 0x75858d92 skb_csum_hwoffload_help +EXPORT_SYMBOL vmlinux 0x75871f5e acpi_get_next_object +EXPORT_SYMBOL vmlinux 0x7591f514 security_binder_set_context_mgr +EXPORT_SYMBOL vmlinux 0x75943e25 i8253_lock +EXPORT_SYMBOL vmlinux 0x75a1f601 skb_clone +EXPORT_SYMBOL vmlinux 0x75b20be4 dquot_commit_info +EXPORT_SYMBOL vmlinux 0x75bda77a seq_hlist_next +EXPORT_SYMBOL vmlinux 0x75cc2e3f vfs_statfs +EXPORT_SYMBOL vmlinux 0x75cc6f5e seg6_hmac_info_lookup +EXPORT_SYMBOL vmlinux 0x75d0deb9 nsecs_to_jiffies64 +EXPORT_SYMBOL vmlinux 0x75d499dd vmcore_add_device_dump +EXPORT_SYMBOL vmlinux 0x75f5c67a acpi_notifier_call_chain +EXPORT_SYMBOL vmlinux 0x75ff2927 sock_set_rcvbuf +EXPORT_SYMBOL vmlinux 0x7601c51a pci_reenable_device +EXPORT_SYMBOL vmlinux 0x760a0f4f yield +EXPORT_SYMBOL vmlinux 0x760d154f should_remove_suid +EXPORT_SYMBOL vmlinux 0x76175581 xfrm_policy_byid +EXPORT_SYMBOL vmlinux 0x761aa9d2 vlan_vids_add_by_dev +EXPORT_SYMBOL vmlinux 0x7624249e dim_park_tired +EXPORT_SYMBOL vmlinux 0x7626c4b0 inode_sub_bytes +EXPORT_SYMBOL vmlinux 0x7627bbd7 __dev_kfree_skb_irq +EXPORT_SYMBOL vmlinux 0x76323e1e vmf_insert_mixed_prot +EXPORT_SYMBOL vmlinux 0x763a9e6c input_alloc_absinfo +EXPORT_SYMBOL vmlinux 0x763ba3ad ioread64be_hi_lo +EXPORT_SYMBOL vmlinux 0x763be656 dma_resv_add_excl_fence +EXPORT_SYMBOL vmlinux 0x7647726c handle_sysrq +EXPORT_SYMBOL vmlinux 0x765d8ae6 setattr_copy +EXPORT_SYMBOL vmlinux 0x765ff474 crc_t10dif_generic +EXPORT_SYMBOL vmlinux 0x766a0927 mempool_alloc_pages +EXPORT_SYMBOL vmlinux 0x76777dd8 netdev_lower_dev_get_private +EXPORT_SYMBOL vmlinux 0x767dce4b acpi_disable_all_gpes +EXPORT_SYMBOL vmlinux 0x767ddb02 set_memory_wc +EXPORT_SYMBOL vmlinux 0x76865c50 kernel_param_unlock +EXPORT_SYMBOL vmlinux 0x768a6097 kernel_sendmsg +EXPORT_SYMBOL vmlinux 0x769f6e64 errseq_check +EXPORT_SYMBOL vmlinux 0x76a2e868 tcf_idr_search +EXPORT_SYMBOL vmlinux 0x76ba6306 ip_do_fragment +EXPORT_SYMBOL vmlinux 0x76c379d6 bio_uninit +EXPORT_SYMBOL vmlinux 0x76d0f8d9 rawv6_mh_filter_unregister +EXPORT_SYMBOL vmlinux 0x76d3cd60 laptop_mode +EXPORT_SYMBOL vmlinux 0x76d451c4 add_taint +EXPORT_SYMBOL vmlinux 0x76d57d45 tcf_exts_num_actions +EXPORT_SYMBOL vmlinux 0x76fb08a7 amd_iommu_unregister_ppr_notifier +EXPORT_SYMBOL vmlinux 0x770b06ce dma_async_tx_descriptor_init +EXPORT_SYMBOL vmlinux 0x770b2360 crypto_sha256_finup +EXPORT_SYMBOL vmlinux 0x7727c023 posix_acl_update_mode +EXPORT_SYMBOL vmlinux 0x772ff09c __seq_open_private +EXPORT_SYMBOL vmlinux 0x7732159c free_irq_cpu_rmap +EXPORT_SYMBOL vmlinux 0x77358855 iomem_resource +EXPORT_SYMBOL vmlinux 0x77369f58 reuseport_detach_sock +EXPORT_SYMBOL vmlinux 0x773fa409 __kfifo_dma_in_finish_r +EXPORT_SYMBOL vmlinux 0x77456e0a acpi_root_dir +EXPORT_SYMBOL vmlinux 0x7749ad6f agp_copy_info +EXPORT_SYMBOL vmlinux 0x775259b9 mipi_dsi_dcs_get_pixel_format +EXPORT_SYMBOL vmlinux 0x77629dab mdio_find_bus +EXPORT_SYMBOL vmlinux 0x77798207 sock_set_reuseport +EXPORT_SYMBOL vmlinux 0x7784d9be __sk_dst_check +EXPORT_SYMBOL vmlinux 0x779a18af kstrtoll +EXPORT_SYMBOL vmlinux 0x77b0fed9 __next_node_in +EXPORT_SYMBOL vmlinux 0x77b81087 ip_options_rcv_srr +EXPORT_SYMBOL vmlinux 0x77baaa6f generic_cont_expand_simple +EXPORT_SYMBOL vmlinux 0x77bc13a0 strim +EXPORT_SYMBOL vmlinux 0x77cf878b locks_lock_inode_wait +EXPORT_SYMBOL vmlinux 0x77de82fb __dst_destroy_metrics_generic +EXPORT_SYMBOL vmlinux 0x77e9eb37 aes_encrypt +EXPORT_SYMBOL vmlinux 0x77f9b543 devm_pci_remap_cfgspace +EXPORT_SYMBOL vmlinux 0x7807f0f8 schedule_timeout_idle +EXPORT_SYMBOL vmlinux 0x780fdfd1 intel_enable_gtt +EXPORT_SYMBOL vmlinux 0x78132857 genphy_resume +EXPORT_SYMBOL vmlinux 0x781d9b06 seg6_push_hmac +EXPORT_SYMBOL vmlinux 0x7834defd vfio_group_unpin_pages +EXPORT_SYMBOL vmlinux 0x783b2dcf skb_realloc_headroom +EXPORT_SYMBOL vmlinux 0x783c0ea5 netdev_set_tc_queue +EXPORT_SYMBOL vmlinux 0x783df0ac proc_set_user +EXPORT_SYMBOL vmlinux 0x7846af3e __kfifo_len_r +EXPORT_SYMBOL vmlinux 0x7880c781 dm_kcopyd_prepare_callback +EXPORT_SYMBOL vmlinux 0x788f8e09 can_nice +EXPORT_SYMBOL vmlinux 0x7891f1fc pcim_enable_device +EXPORT_SYMBOL vmlinux 0x789affb1 frontswap_tmem_exclusive_gets +EXPORT_SYMBOL vmlinux 0x78a16f48 aes_decrypt +EXPORT_SYMBOL vmlinux 0x78c151d0 kmem_cache_create_usercopy +EXPORT_SYMBOL vmlinux 0x78df6bd7 no_pci_devices +EXPORT_SYMBOL vmlinux 0x78e4660a elv_rb_find +EXPORT_SYMBOL vmlinux 0x78f11950 skb_copy +EXPORT_SYMBOL vmlinux 0x78f1b9c9 phy_modify_paged +EXPORT_SYMBOL vmlinux 0x78f99c24 dm_put_table_device +EXPORT_SYMBOL vmlinux 0x7900991d key_revoke +EXPORT_SYMBOL vmlinux 0x791efb33 tcp_init_sock +EXPORT_SYMBOL vmlinux 0x792296c7 simple_link +EXPORT_SYMBOL vmlinux 0x7933af75 account_page_redirty +EXPORT_SYMBOL vmlinux 0x79739c3c utf8nagemin +EXPORT_SYMBOL vmlinux 0x79756284 seq_hex_dump +EXPORT_SYMBOL vmlinux 0x797ebe1d mipi_dsi_dcs_soft_reset +EXPORT_SYMBOL vmlinux 0x7984eefc key_update +EXPORT_SYMBOL vmlinux 0x79972aca pnp_disable_dev +EXPORT_SYMBOL vmlinux 0x799c5c0e input_mt_init_slots +EXPORT_SYMBOL vmlinux 0x79a33f85 vme_get_size +EXPORT_SYMBOL vmlinux 0x79a8952a xfrm_state_lookup_byspi +EXPORT_SYMBOL vmlinux 0x79aa04a2 get_random_bytes +EXPORT_SYMBOL vmlinux 0x79beac24 rtnl_notify +EXPORT_SYMBOL vmlinux 0x79c92d5e set_groups +EXPORT_SYMBOL vmlinux 0x79d2fa00 jbd2_journal_get_write_access +EXPORT_SYMBOL vmlinux 0x79de5923 nvdimm_bus_lock +EXPORT_SYMBOL vmlinux 0x79df9633 ioremap_encrypted +EXPORT_SYMBOL vmlinux 0x7a005aa3 nf_hook_slow +EXPORT_SYMBOL vmlinux 0x7a09a064 seg6_hmac_compute +EXPORT_SYMBOL vmlinux 0x7a09d74d tty_hangup +EXPORT_SYMBOL vmlinux 0x7a0da07e netdev_bonding_info_change +EXPORT_SYMBOL vmlinux 0x7a1bcd59 gf128mul_x8_ble +EXPORT_SYMBOL vmlinux 0x7a244dc9 xfrm_input_register_afinfo +EXPORT_SYMBOL vmlinux 0x7a2af7b4 cpu_number +EXPORT_SYMBOL vmlinux 0x7a3eb97a rtnl_set_sk_err +EXPORT_SYMBOL vmlinux 0x7a4497db kzfree +EXPORT_SYMBOL vmlinux 0x7a540cb2 nf_register_net_hooks +EXPORT_SYMBOL vmlinux 0x7a588e4e nobh_truncate_page +EXPORT_SYMBOL vmlinux 0x7a7b7ea2 bio_chain +EXPORT_SYMBOL vmlinux 0x7a88da87 iosf_mbi_write +EXPORT_SYMBOL vmlinux 0x7a8b7530 tcp_md5_do_add +EXPORT_SYMBOL vmlinux 0x7a95e5ae do_settimeofday64 +EXPORT_SYMBOL vmlinux 0x7a9b37e8 blk_start_plug +EXPORT_SYMBOL vmlinux 0x7a9f34b1 ppp_unregister_channel +EXPORT_SYMBOL vmlinux 0x7aa1756e kvfree +EXPORT_SYMBOL vmlinux 0x7ab88a45 system_freezing_cnt +EXPORT_SYMBOL vmlinux 0x7acd1ccb sock_no_recvmsg +EXPORT_SYMBOL vmlinux 0x7ad050b9 qid_lt +EXPORT_SYMBOL vmlinux 0x7ad084d4 param_set_ushort +EXPORT_SYMBOL vmlinux 0x7ad7db06 del_gendisk +EXPORT_SYMBOL vmlinux 0x7adc0fbf rb_replace_node_rcu +EXPORT_SYMBOL vmlinux 0x7ae6c917 inet_frag_pull_head +EXPORT_SYMBOL vmlinux 0x7aec9089 clear_user +EXPORT_SYMBOL vmlinux 0x7aef5713 vmbus_recvpacket +EXPORT_SYMBOL vmlinux 0x7af0aab1 tty_port_raise_dtr_rts +EXPORT_SYMBOL vmlinux 0x7af504bd ip_sock_set_recverr +EXPORT_SYMBOL vmlinux 0x7aff77a3 __cpu_present_mask +EXPORT_SYMBOL vmlinux 0x7b0192da kstrtou16 +EXPORT_SYMBOL vmlinux 0x7b0306a4 scsi_compat_ioctl +EXPORT_SYMBOL vmlinux 0x7b039743 ip_mc_join_group +EXPORT_SYMBOL vmlinux 0x7b0d1715 devm_devfreq_remove_device +EXPORT_SYMBOL vmlinux 0x7b1bf767 ipv6_chk_custom_prefix +EXPORT_SYMBOL vmlinux 0x7b278877 pci_ep_cfs_add_epf_group +EXPORT_SYMBOL vmlinux 0x7b3c3767 dev_uc_sync_multiple +EXPORT_SYMBOL vmlinux 0x7b4da6ff __init_rwsem +EXPORT_SYMBOL vmlinux 0x7b50637c tcp_v4_connect +EXPORT_SYMBOL vmlinux 0x7b55bb9d generic_ro_fops +EXPORT_SYMBOL vmlinux 0x7b5b8f31 sha256_update +EXPORT_SYMBOL vmlinux 0x7b75617c PageMovable +EXPORT_SYMBOL vmlinux 0x7b82b9a1 idr_replace +EXPORT_SYMBOL vmlinux 0x7b947e3e inet6_offloads +EXPORT_SYMBOL vmlinux 0x7bb50b88 acpi_write +EXPORT_SYMBOL vmlinux 0x7bb8a7ce posix_acl_from_xattr +EXPORT_SYMBOL vmlinux 0x7bbccd05 nr_node_ids +EXPORT_SYMBOL vmlinux 0x7bc18dac sk_reset_timer +EXPORT_SYMBOL vmlinux 0x7bd8b726 key_put +EXPORT_SYMBOL vmlinux 0x7bde156b pci_read_vpd +EXPORT_SYMBOL vmlinux 0x7bed23d7 ns_capable +EXPORT_SYMBOL vmlinux 0x7bfc16db pps_event +EXPORT_SYMBOL vmlinux 0x7c0beae4 pm_vt_switch_unregister +EXPORT_SYMBOL vmlinux 0x7c16f057 seq_vprintf +EXPORT_SYMBOL vmlinux 0x7c173634 __bitmap_complement +EXPORT_SYMBOL vmlinux 0x7c17d434 netlbl_calipso_ops_register +EXPORT_SYMBOL vmlinux 0x7c46233a cpufreq_quick_get +EXPORT_SYMBOL vmlinux 0x7c511ce1 from_kgid_munged +EXPORT_SYMBOL vmlinux 0x7c55503d of_find_mipi_dsi_host_by_node +EXPORT_SYMBOL vmlinux 0x7c5a51aa __scsi_device_lookup_by_target +EXPORT_SYMBOL vmlinux 0x7c684872 devfreq_monitor_resume +EXPORT_SYMBOL vmlinux 0x7c6a0d28 shrink_dcache_parent +EXPORT_SYMBOL vmlinux 0x7c6fbe91 security_task_getsecid +EXPORT_SYMBOL vmlinux 0x7c829a77 unix_attach_fds +EXPORT_SYMBOL vmlinux 0x7c845d54 __skb_flow_get_ports +EXPORT_SYMBOL vmlinux 0x7c8df870 blk_queue_max_write_zeroes_sectors +EXPORT_SYMBOL vmlinux 0x7c9ca58f __sg_page_iter_next +EXPORT_SYMBOL vmlinux 0x7cb1aea1 devlink_dpipe_header_ethernet +EXPORT_SYMBOL vmlinux 0x7cca5f60 napi_gro_flush +EXPORT_SYMBOL vmlinux 0x7cd8d75e page_offset_base +EXPORT_SYMBOL vmlinux 0x7ce18c9f from_kqid +EXPORT_SYMBOL vmlinux 0x7ce1bf38 sock_release +EXPORT_SYMBOL vmlinux 0x7cf35220 vme_master_free +EXPORT_SYMBOL vmlinux 0x7cfe368d net_dim_get_def_tx_moderation +EXPORT_SYMBOL vmlinux 0x7d020361 disk_start_io_acct +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 0x7d3d7353 dev_addr_add +EXPORT_SYMBOL vmlinux 0x7d45ec21 mdio_driver_register +EXPORT_SYMBOL vmlinux 0x7d4b176a netlbl_catmap_setbit +EXPORT_SYMBOL vmlinux 0x7d526063 ip6_fraglist_init +EXPORT_SYMBOL vmlinux 0x7d52bd2d mdiobus_scan +EXPORT_SYMBOL vmlinux 0x7d5e1008 __crc32c_le_shift +EXPORT_SYMBOL vmlinux 0x7d628444 memcpy_fromio +EXPORT_SYMBOL vmlinux 0x7d708d89 unlock_two_nondirectories +EXPORT_SYMBOL vmlinux 0x7d83d49a bioset_init_from_src +EXPORT_SYMBOL vmlinux 0x7d880aed nf_log_set +EXPORT_SYMBOL vmlinux 0x7d9a6f05 mipi_dsi_attach +EXPORT_SYMBOL vmlinux 0x7da10152 netdev_next_lower_dev_rcu +EXPORT_SYMBOL vmlinux 0x7daece67 quota_send_warning +EXPORT_SYMBOL vmlinux 0x7dd554fc unregister_kmmio_probe +EXPORT_SYMBOL vmlinux 0x7dd7815f dquot_get_state +EXPORT_SYMBOL vmlinux 0x7de0ed1a fs_bio_set +EXPORT_SYMBOL vmlinux 0x7deff673 dm_consume_args +EXPORT_SYMBOL vmlinux 0x7dff0780 security_sctp_assoc_request +EXPORT_SYMBOL vmlinux 0x7e0826e2 atomic_dec_and_mutex_lock +EXPORT_SYMBOL vmlinux 0x7e106b3d kernel_param_lock +EXPORT_SYMBOL vmlinux 0x7e11514c rfkill_alloc +EXPORT_SYMBOL vmlinux 0x7e261af0 vfs_fadvise +EXPORT_SYMBOL vmlinux 0x7e3191f6 try_to_del_timer_sync +EXPORT_SYMBOL vmlinux 0x7e526bfa __x86_indirect_thunk_r10 +EXPORT_SYMBOL vmlinux 0x7e5ccd01 try_to_free_buffers +EXPORT_SYMBOL vmlinux 0x7e7aed1f inet_csk_init_xmit_timers +EXPORT_SYMBOL vmlinux 0x7e7bcf26 acpi_map_cpu +EXPORT_SYMBOL vmlinux 0x7eb2c868 sync_file_create +EXPORT_SYMBOL vmlinux 0x7ec78bdd rename_lock +EXPORT_SYMBOL vmlinux 0x7ee39c59 generic_file_direct_write +EXPORT_SYMBOL vmlinux 0x7ee4e86a generic_file_splice_read +EXPORT_SYMBOL vmlinux 0x7f02188f __msecs_to_jiffies +EXPORT_SYMBOL vmlinux 0x7f03b6a9 crc_ccitt_table +EXPORT_SYMBOL vmlinux 0x7f105d4c inet6_add_offload +EXPORT_SYMBOL vmlinux 0x7f18c71d fc_host_post_vendor_event +EXPORT_SYMBOL vmlinux 0x7f1db839 tcf_exts_terse_dump +EXPORT_SYMBOL vmlinux 0x7f24b4f6 scsi_get_device_flags_keyed +EXPORT_SYMBOL vmlinux 0x7f24de73 jiffies_to_usecs +EXPORT_SYMBOL vmlinux 0x7f29a71b fbcon_update_vcs +EXPORT_SYMBOL vmlinux 0x7f30d57a netdev_rx_csum_fault +EXPORT_SYMBOL vmlinux 0x7f363510 sock_create +EXPORT_SYMBOL vmlinux 0x7f447e87 security_sctp_sk_clone +EXPORT_SYMBOL vmlinux 0x7f52071a net_dim +EXPORT_SYMBOL vmlinux 0x7f582359 zerocopy_sg_from_iter +EXPORT_SYMBOL vmlinux 0x7f5b4fe4 sg_free_table +EXPORT_SYMBOL vmlinux 0x7f6b6218 tty_port_destroy +EXPORT_SYMBOL vmlinux 0x7f7f7bb4 irq_poll_disable +EXPORT_SYMBOL vmlinux 0x7fa13edf free_cgroup_ns +EXPORT_SYMBOL vmlinux 0x7fb646c5 xfrm_dst_ifdown +EXPORT_SYMBOL vmlinux 0x7fbde28d fget +EXPORT_SYMBOL vmlinux 0x7fc6870f security_sb_remount +EXPORT_SYMBOL vmlinux 0x7fd0438e dm_kcopyd_copy +EXPORT_SYMBOL vmlinux 0x7fe32873 rb_replace_node +EXPORT_SYMBOL vmlinux 0x7fed746b tc_setup_flow_action +EXPORT_SYMBOL vmlinux 0x80029a18 qdisc_class_hash_grow +EXPORT_SYMBOL vmlinux 0x800e8bf2 udp_lib_rehash +EXPORT_SYMBOL vmlinux 0x8016cd76 tcf_action_set_ctrlact +EXPORT_SYMBOL vmlinux 0x8035f26f page_cache_prev_miss +EXPORT_SYMBOL vmlinux 0x803ddbb6 __posix_acl_create +EXPORT_SYMBOL vmlinux 0x804af87c wrmsr_safe_on_cpu +EXPORT_SYMBOL vmlinux 0x80514ea5 pci_free_irq +EXPORT_SYMBOL vmlinux 0x80546717 security_sock_graft +EXPORT_SYMBOL vmlinux 0x80842fb0 agp_generic_destroy_pages +EXPORT_SYMBOL vmlinux 0x8089fbba dma_fence_array_create +EXPORT_SYMBOL vmlinux 0x809712ff hdmi_avi_infoframe_pack +EXPORT_SYMBOL vmlinux 0x80a40f15 page_pool_release_page +EXPORT_SYMBOL vmlinux 0x80a54205 sock_no_sendmsg_locked +EXPORT_SYMBOL vmlinux 0x80a717a8 __percpu_counter_compare +EXPORT_SYMBOL vmlinux 0x80b08224 netdev_lower_get_next_private +EXPORT_SYMBOL vmlinux 0x80b68322 dma_direct_map_page +EXPORT_SYMBOL vmlinux 0x80ca5026 _bin2bcd +EXPORT_SYMBOL vmlinux 0x80d68d3e fb_register_client +EXPORT_SYMBOL vmlinux 0x80d838dc neigh_parms_release +EXPORT_SYMBOL vmlinux 0x80dafc50 module_put +EXPORT_SYMBOL vmlinux 0x80e51a43 __dquot_free_space +EXPORT_SYMBOL vmlinux 0x80e5ea0c xsk_clear_rx_need_wakeup +EXPORT_SYMBOL vmlinux 0x810df6fa mark_buffer_async_write +EXPORT_SYMBOL vmlinux 0x8112b3d2 scsi_build_sense_buffer +EXPORT_SYMBOL vmlinux 0x81188c30 match_string +EXPORT_SYMBOL vmlinux 0x811b4621 blk_rq_map_kern +EXPORT_SYMBOL vmlinux 0x812dc45d tc_setup_cb_reoffload +EXPORT_SYMBOL vmlinux 0x81355a1f dev_mc_add_excl +EXPORT_SYMBOL vmlinux 0x814dfc35 agp_generic_remove_memory +EXPORT_SYMBOL vmlinux 0x81533963 sysfs_format_mac +EXPORT_SYMBOL vmlinux 0x815412b7 km_new_mapping +EXPORT_SYMBOL vmlinux 0x815b5dd4 match_octal +EXPORT_SYMBOL vmlinux 0x815d8926 ipv6_sock_mc_join +EXPORT_SYMBOL vmlinux 0x815f2897 empty_zero_page +EXPORT_SYMBOL vmlinux 0x816347c6 agp_device_command +EXPORT_SYMBOL vmlinux 0x818416e1 scsi_set_sense_information +EXPORT_SYMBOL vmlinux 0x8190936f sock_no_listen +EXPORT_SYMBOL vmlinux 0x81ac5e33 trace_print_hex_dump_seq +EXPORT_SYMBOL vmlinux 0x81b0334f con_is_bound +EXPORT_SYMBOL vmlinux 0x81b395b3 down_interruptible +EXPORT_SYMBOL vmlinux 0x81b61606 set_page_dirty +EXPORT_SYMBOL vmlinux 0x81b64f7d ip_route_input_noref +EXPORT_SYMBOL vmlinux 0x81b79c70 zero_fill_bio_iter +EXPORT_SYMBOL vmlinux 0x81b94563 blk_mq_alloc_request +EXPORT_SYMBOL vmlinux 0x81ce9941 intel_scu_ipc_dev_writev +EXPORT_SYMBOL vmlinux 0x81d2e3d7 phy_set_max_speed +EXPORT_SYMBOL vmlinux 0x81d3a41a vfs_getattr_nosec +EXPORT_SYMBOL vmlinux 0x81db6ebb xz_dec_reset +EXPORT_SYMBOL vmlinux 0x81e327fb inet_csk_destroy_sock +EXPORT_SYMBOL vmlinux 0x81e6b37f dmi_get_system_info +EXPORT_SYMBOL vmlinux 0x81f52e68 vif_device_init +EXPORT_SYMBOL vmlinux 0x81ff2b86 vme_lm_request +EXPORT_SYMBOL vmlinux 0x82072614 tasklet_kill +EXPORT_SYMBOL vmlinux 0x821a2da6 __vfs_removexattr +EXPORT_SYMBOL vmlinux 0x821fcb83 skb_checksum +EXPORT_SYMBOL vmlinux 0x8233476e sk_wait_data +EXPORT_SYMBOL vmlinux 0x823c19ea iosf_mbi_unregister_pmic_bus_access_notifier_unlocked +EXPORT_SYMBOL vmlinux 0x82403a43 skb_checksum_help +EXPORT_SYMBOL vmlinux 0x8260a0d8 __lock_page +EXPORT_SYMBOL vmlinux 0x8263a6d9 proc_douintvec +EXPORT_SYMBOL vmlinux 0x8266d4c4 skb_coalesce_rx_frag +EXPORT_SYMBOL vmlinux 0x828062b1 __frontswap_init +EXPORT_SYMBOL vmlinux 0x82903f01 phy_write_paged +EXPORT_SYMBOL vmlinux 0x82942017 to_nd_dax +EXPORT_SYMBOL vmlinux 0x82abb1e3 xfrm6_find_1stfragopt +EXPORT_SYMBOL vmlinux 0x82c33bb2 dquot_drop +EXPORT_SYMBOL vmlinux 0x82c87ad5 nr_online_nodes +EXPORT_SYMBOL vmlinux 0x82ca6d2b register_gifconf +EXPORT_SYMBOL vmlinux 0x82cad1a4 security_sb_clone_mnt_opts +EXPORT_SYMBOL vmlinux 0x82d43161 skb_tx_error +EXPORT_SYMBOL vmlinux 0x82f2e7e7 mdiobus_read_nested +EXPORT_SYMBOL vmlinux 0x83021e36 eth_validate_addr +EXPORT_SYMBOL vmlinux 0x8303335c tcp_v4_destroy_sock +EXPORT_SYMBOL vmlinux 0x8304948d input_get_poll_interval +EXPORT_SYMBOL vmlinux 0x83119cae agp_find_bridge +EXPORT_SYMBOL vmlinux 0x8313e065 wake_up_process +EXPORT_SYMBOL vmlinux 0x83190b0c blk_mq_tag_to_rq +EXPORT_SYMBOL vmlinux 0x83220fd9 kmem_cache_alloc +EXPORT_SYMBOL vmlinux 0x83231b0b __frontswap_store +EXPORT_SYMBOL vmlinux 0x832b3bd7 is_nvdimm_bus_locked +EXPORT_SYMBOL vmlinux 0x8336899e dma_set_coherent_mask +EXPORT_SYMBOL vmlinux 0x833e59e3 register_quota_format +EXPORT_SYMBOL vmlinux 0x834e9809 sync_inode_metadata +EXPORT_SYMBOL vmlinux 0x83581089 gf128mul_init_4k_lle +EXPORT_SYMBOL vmlinux 0x836b683b vlan_dev_vlan_id +EXPORT_SYMBOL vmlinux 0x837b7b09 __dynamic_pr_debug +EXPORT_SYMBOL vmlinux 0x838d2bc8 siphash_3u32 +EXPORT_SYMBOL vmlinux 0x839472a0 vfs_get_link +EXPORT_SYMBOL vmlinux 0x83a73f2b freezing_slow_path +EXPORT_SYMBOL vmlinux 0x83b94a42 handle_edge_irq +EXPORT_SYMBOL vmlinux 0x83c52fba xfrm4_protocol_init +EXPORT_SYMBOL vmlinux 0x83edfad5 crypto_sha256_update +EXPORT_SYMBOL vmlinux 0x83f26cae padata_set_cpumask +EXPORT_SYMBOL vmlinux 0x83f4b221 dquot_quota_on +EXPORT_SYMBOL vmlinux 0x840342c6 sgl_free +EXPORT_SYMBOL vmlinux 0x840bcc2a __hw_addr_sync_dev +EXPORT_SYMBOL vmlinux 0x84272f0a ip6mr_rule_default +EXPORT_SYMBOL vmlinux 0x842c4e4a pci_restore_state +EXPORT_SYMBOL vmlinux 0x8459c67d tty_unregister_device +EXPORT_SYMBOL vmlinux 0x845d12c4 phy_ethtool_set_wol +EXPORT_SYMBOL vmlinux 0x848d372e iowrite8 +EXPORT_SYMBOL vmlinux 0x8492d847 scsi_remove_host +EXPORT_SYMBOL vmlinux 0x84944469 secpath_set +EXPORT_SYMBOL vmlinux 0x849adbb7 unregister_netdevice_notifier_dev_net +EXPORT_SYMBOL vmlinux 0x849fe807 csum_and_copy_from_user +EXPORT_SYMBOL vmlinux 0x84c1c552 proc_dointvec_ms_jiffies +EXPORT_SYMBOL vmlinux 0x84cffda0 seq_open +EXPORT_SYMBOL vmlinux 0x84fd815a scsi_ioctl +EXPORT_SYMBOL vmlinux 0x8502f247 check_disk_change +EXPORT_SYMBOL vmlinux 0x854466ab skb_udp_tunnel_segment +EXPORT_SYMBOL vmlinux 0x85460f23 blk_mq_init_allocated_queue +EXPORT_SYMBOL vmlinux 0x85532eb1 __tracepoint_dma_fence_enable_signal +EXPORT_SYMBOL vmlinux 0x85585557 inet_protos +EXPORT_SYMBOL vmlinux 0x85670f1d rtnl_is_locked +EXPORT_SYMBOL vmlinux 0x8568136f netdev_change_features +EXPORT_SYMBOL vmlinux 0x857a67be netlink_set_err +EXPORT_SYMBOL vmlinux 0x858b3fe3 free_iova_mem +EXPORT_SYMBOL vmlinux 0x8591c753 gnet_stats_copy_queue +EXPORT_SYMBOL vmlinux 0x8594f81b mipi_dsi_turn_on_peripheral +EXPORT_SYMBOL vmlinux 0x85b4cf2f utf8nlen +EXPORT_SYMBOL vmlinux 0x85b5e625 rfkill_set_states +EXPORT_SYMBOL vmlinux 0x85bd1608 __request_region +EXPORT_SYMBOL vmlinux 0x85df9b6c strsep +EXPORT_SYMBOL vmlinux 0x85efc7e0 zero_pfn +EXPORT_SYMBOL vmlinux 0x85fbc931 slhc_uncompress +EXPORT_SYMBOL vmlinux 0x860d38b2 get_super_thawed +EXPORT_SYMBOL vmlinux 0x861c6df9 netpoll_send_skb +EXPORT_SYMBOL vmlinux 0x86216a49 rt_dst_alloc +EXPORT_SYMBOL vmlinux 0x863a276a color_table +EXPORT_SYMBOL vmlinux 0x86408ee4 mntput +EXPORT_SYMBOL vmlinux 0x865029ac __hw_addr_sync +EXPORT_SYMBOL vmlinux 0x8658f898 __serio_register_port +EXPORT_SYMBOL vmlinux 0x865f9264 dma_alloc_attrs +EXPORT_SYMBOL vmlinux 0x8664050a scsi_device_set_state +EXPORT_SYMBOL vmlinux 0x8668e4bc ww_mutex_lock +EXPORT_SYMBOL vmlinux 0x867152cd arp_send +EXPORT_SYMBOL vmlinux 0x867614f4 genphy_c37_read_status +EXPORT_SYMBOL vmlinux 0x8676ef84 simple_empty +EXPORT_SYMBOL vmlinux 0x8685d7d0 input_match_device_id +EXPORT_SYMBOL vmlinux 0x8687fcf0 netpoll_setup +EXPORT_SYMBOL vmlinux 0x868acba5 get_options +EXPORT_SYMBOL vmlinux 0x86ba5f11 vfs_create +EXPORT_SYMBOL vmlinux 0x86bd6081 call_netdevice_notifiers +EXPORT_SYMBOL vmlinux 0x86c7272b iosf_mbi_read +EXPORT_SYMBOL vmlinux 0x86d52ba5 lookup_constant +EXPORT_SYMBOL vmlinux 0x86ddf89f ipv6_skip_exthdr +EXPORT_SYMBOL vmlinux 0x86ec61a3 path_is_mountpoint +EXPORT_SYMBOL vmlinux 0x86f27420 iosf_mbi_block_punit_i2c_access +EXPORT_SYMBOL vmlinux 0x86fb4536 cpumask_any_and_distribute +EXPORT_SYMBOL vmlinux 0x86fb9b05 bitmap_parse_user +EXPORT_SYMBOL vmlinux 0x86ffd0a6 __bio_clone_fast +EXPORT_SYMBOL vmlinux 0x870831e0 simple_transaction_get +EXPORT_SYMBOL vmlinux 0x87312fe6 jbd2_journal_check_available_features +EXPORT_SYMBOL vmlinux 0x873ba03d __put_page +EXPORT_SYMBOL vmlinux 0x8754073c pci_dev_driver +EXPORT_SYMBOL vmlinux 0x87551b94 phy_ethtool_nway_reset +EXPORT_SYMBOL vmlinux 0x875a6830 tcp_md5_do_del +EXPORT_SYMBOL vmlinux 0x8761c87b rps_needed +EXPORT_SYMBOL vmlinux 0x87732eb8 rtnl_unicast +EXPORT_SYMBOL vmlinux 0x878469bd ZSTD_decompressStream +EXPORT_SYMBOL vmlinux 0x87aa3455 cdrom_number_of_slots +EXPORT_SYMBOL vmlinux 0x87ad0f70 ethtool_notify +EXPORT_SYMBOL vmlinux 0x87b8798d sg_next +EXPORT_SYMBOL vmlinux 0x87cd2c51 skb_copy_and_csum_datagram_msg +EXPORT_SYMBOL vmlinux 0x87d01b88 prepare_creds +EXPORT_SYMBOL vmlinux 0x87da2f66 inet6_register_icmp_sender +EXPORT_SYMBOL vmlinux 0x87fbe062 scsi_host_busy +EXPORT_SYMBOL vmlinux 0x87ff192f security_sb_set_mnt_opts +EXPORT_SYMBOL vmlinux 0x881c4413 gen_pool_first_fit +EXPORT_SYMBOL vmlinux 0x882116da kernel_getsockname +EXPORT_SYMBOL vmlinux 0x883037ee __dev_kfree_skb_any +EXPORT_SYMBOL vmlinux 0x883436d0 flow_rule_match_icmp +EXPORT_SYMBOL vmlinux 0x8834e9e5 generic_key_instantiate +EXPORT_SYMBOL vmlinux 0x884e3414 udp6_set_csum +EXPORT_SYMBOL vmlinux 0x8855d780 blk_mq_delay_run_hw_queues +EXPORT_SYMBOL vmlinux 0x885f6070 devm_pci_remap_iospace +EXPORT_SYMBOL vmlinux 0x88690fd0 jbd2_journal_wipe +EXPORT_SYMBOL vmlinux 0x88822d38 unregister_blocking_lsm_notifier +EXPORT_SYMBOL vmlinux 0x8888f1fe xxh32 +EXPORT_SYMBOL vmlinux 0x889cfa6c pci_write_config_byte +EXPORT_SYMBOL vmlinux 0x88abb78b ZSTD_insertBlock +EXPORT_SYMBOL vmlinux 0x88cf287a blk_pre_runtime_resume +EXPORT_SYMBOL vmlinux 0x88d0a84b inet6_getname +EXPORT_SYMBOL vmlinux 0x88d38ebf kern_path +EXPORT_SYMBOL vmlinux 0x88db9f48 __check_object_size +EXPORT_SYMBOL vmlinux 0x88dd990f bdi_set_max_ratio +EXPORT_SYMBOL vmlinux 0x88e1d0f0 page_frag_free +EXPORT_SYMBOL vmlinux 0x88e49fff xfrm_state_flush +EXPORT_SYMBOL vmlinux 0x88ec794b lookup_positive_unlocked +EXPORT_SYMBOL vmlinux 0x88ef4615 kernel_getpeername +EXPORT_SYMBOL vmlinux 0x88fb148a fsync_bdev +EXPORT_SYMBOL vmlinux 0x891998f4 blk_rq_map_user +EXPORT_SYMBOL vmlinux 0x891ea2b8 current_time +EXPORT_SYMBOL vmlinux 0x89434b4b radix_tree_tag_clear +EXPORT_SYMBOL vmlinux 0x895e144b page_mapped +EXPORT_SYMBOL vmlinux 0x89658a63 agp_alloc_bridge +EXPORT_SYMBOL vmlinux 0x896a9c4a dma_fence_chain_init +EXPORT_SYMBOL vmlinux 0x896f685e scsi_cmd_blk_ioctl +EXPORT_SYMBOL vmlinux 0x8976bc16 blk_queue_alignment_offset +EXPORT_SYMBOL vmlinux 0x899854ab padata_free_shell +EXPORT_SYMBOL vmlinux 0x89dc4a0a amd_iommu_domain_clear_gcr3 +EXPORT_SYMBOL vmlinux 0x89df796c kernel_listen +EXPORT_SYMBOL vmlinux 0x89f52a37 dev_remove_offload +EXPORT_SYMBOL vmlinux 0x89f5d8c7 __nd_driver_register +EXPORT_SYMBOL vmlinux 0x8a34d937 iov_iter_single_seg_count +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 0x8a6af65c kstrtoul_from_user +EXPORT_SYMBOL vmlinux 0x8a6c7139 acpi_mask_gpe +EXPORT_SYMBOL vmlinux 0x8a722f15 phy_sfp_probe +EXPORT_SYMBOL vmlinux 0x8a7d1c31 high_memory +EXPORT_SYMBOL vmlinux 0x8a8f87f7 sock_no_ioctl +EXPORT_SYMBOL vmlinux 0x8a948f27 __nla_parse +EXPORT_SYMBOL vmlinux 0x8a99a016 mempool_free_slab +EXPORT_SYMBOL vmlinux 0x8ac3334b net_dim_get_def_rx_moderation +EXPORT_SYMBOL vmlinux 0x8ac5c194 mipi_dsi_dcs_exit_sleep_mode +EXPORT_SYMBOL vmlinux 0x8ac743de sg_copy_buffer +EXPORT_SYMBOL vmlinux 0x8acc78cf tty_port_open +EXPORT_SYMBOL vmlinux 0x8acfda5f tcp_v4_do_rcv +EXPORT_SYMBOL vmlinux 0x8ad29bab _raw_write_unlock_bh +EXPORT_SYMBOL vmlinux 0x8afbb0ee cdev_device_add +EXPORT_SYMBOL vmlinux 0x8afbbfc3 __kfree_skb +EXPORT_SYMBOL vmlinux 0x8b0088d1 LZ4_decompress_safe_usingDict +EXPORT_SYMBOL vmlinux 0x8b285f86 may_umount_tree +EXPORT_SYMBOL vmlinux 0x8b3a3704 agp_put_bridge +EXPORT_SYMBOL vmlinux 0x8b3b5732 input_open_device +EXPORT_SYMBOL vmlinux 0x8b4e90b6 qdisc_reset +EXPORT_SYMBOL vmlinux 0x8b57f851 dev_mc_sync +EXPORT_SYMBOL vmlinux 0x8b618d08 overflowuid +EXPORT_SYMBOL vmlinux 0x8b780fd6 ip6_err_gen_icmpv6_unreach +EXPORT_SYMBOL vmlinux 0x8b8059bd in_group_p +EXPORT_SYMBOL vmlinux 0x8b901cf2 sock_set_sndtimeo +EXPORT_SYMBOL vmlinux 0x8b910be2 errseq_sample +EXPORT_SYMBOL vmlinux 0x8b97eb00 generic_file_fsync +EXPORT_SYMBOL vmlinux 0x8b989cf9 acpi_bus_can_wakeup +EXPORT_SYMBOL vmlinux 0x8b9ea582 ZSTD_copyDCtx +EXPORT_SYMBOL vmlinux 0x8ba3771e scsi_register_driver +EXPORT_SYMBOL vmlinux 0x8bce0287 amd_iommu_get_v2_domain +EXPORT_SYMBOL vmlinux 0x8be3aaad scsi_eh_prep_cmnd +EXPORT_SYMBOL vmlinux 0x8bf5b6d6 bdgrab +EXPORT_SYMBOL vmlinux 0x8c0db60d input_register_device +EXPORT_SYMBOL vmlinux 0x8c15fe3e __x86_retpoline_r10 +EXPORT_SYMBOL vmlinux 0x8c26d495 prepare_to_wait_event +EXPORT_SYMBOL vmlinux 0x8c3253ec _raw_spin_trylock +EXPORT_SYMBOL vmlinux 0x8c36f17a dquot_quotactl_sysfile_ops +EXPORT_SYMBOL vmlinux 0x8c4fcedc __netif_schedule +EXPORT_SYMBOL vmlinux 0x8c57760c unlock_page_memcg +EXPORT_SYMBOL vmlinux 0x8c6bf651 flow_block_cb_is_busy +EXPORT_SYMBOL vmlinux 0x8c84f489 pci_iomap +EXPORT_SYMBOL vmlinux 0x8c86426b md_done_sync +EXPORT_SYMBOL vmlinux 0x8c9e338f acpi_bios_error +EXPORT_SYMBOL vmlinux 0x8cb544df __tracepoint_kmalloc +EXPORT_SYMBOL vmlinux 0x8cb99ec5 agp_generic_free_by_type +EXPORT_SYMBOL vmlinux 0x8cc79cab iowrite16_rep +EXPORT_SYMBOL vmlinux 0x8ccf75f6 dev_addr_init +EXPORT_SYMBOL vmlinux 0x8cde9391 misc_register +EXPORT_SYMBOL vmlinux 0x8ce6ec3f unix_destruct_scm +EXPORT_SYMBOL vmlinux 0x8ceac1bf dev_get_by_index +EXPORT_SYMBOL vmlinux 0x8d3231ca fscrypt_ioctl_set_policy +EXPORT_SYMBOL vmlinux 0x8d4080ae __close_fd_get_file +EXPORT_SYMBOL vmlinux 0x8d411dd4 qdisc_hash_add +EXPORT_SYMBOL vmlinux 0x8d55bb8a qid_eq +EXPORT_SYMBOL vmlinux 0x8d5f3d3d unregister_qdisc +EXPORT_SYMBOL vmlinux 0x8d643393 pci_bus_find_capability +EXPORT_SYMBOL vmlinux 0x8d71ce01 copy_page_from_iter +EXPORT_SYMBOL vmlinux 0x8d73278e hex_asc_upper +EXPORT_SYMBOL vmlinux 0x8d7be4f4 blk_set_queue_depth +EXPORT_SYMBOL vmlinux 0x8d9ca0e6 dma_fence_enable_sw_signaling +EXPORT_SYMBOL vmlinux 0x8db22efe acpi_setup_gpe_for_wake +EXPORT_SYMBOL vmlinux 0x8db86720 skb_queue_tail +EXPORT_SYMBOL vmlinux 0x8db994c8 input_inject_event +EXPORT_SYMBOL vmlinux 0x8dbb11d2 single_release +EXPORT_SYMBOL vmlinux 0x8ddd8aad schedule_timeout +EXPORT_SYMBOL vmlinux 0x8de8ab61 __napi_schedule +EXPORT_SYMBOL vmlinux 0x8df7e8d6 cpumask_any_but +EXPORT_SYMBOL vmlinux 0x8df92f66 memchr_inv +EXPORT_SYMBOL vmlinux 0x8df9dd10 guid_null +EXPORT_SYMBOL vmlinux 0x8e17b3ae idr_destroy +EXPORT_SYMBOL vmlinux 0x8e21c9a1 dma_fence_add_callback +EXPORT_SYMBOL vmlinux 0x8e2d1236 ex_handler_wrmsr_unsafe +EXPORT_SYMBOL vmlinux 0x8e3ab292 udp_lib_get_port +EXPORT_SYMBOL vmlinux 0x8e663d0f zalloc_cpumask_var_node +EXPORT_SYMBOL vmlinux 0x8e6e7cf9 devfreq_update_status +EXPORT_SYMBOL vmlinux 0x8e7669c9 __starget_for_each_device +EXPORT_SYMBOL vmlinux 0x8e7762dd ndo_dflt_fdb_del +EXPORT_SYMBOL vmlinux 0x8e7dec6c d_invalidate +EXPORT_SYMBOL vmlinux 0x8e9c2297 sk_net_capable +EXPORT_SYMBOL vmlinux 0x8eaf2a5f vga_switcheroo_unregister_handler +EXPORT_SYMBOL vmlinux 0x8eb2ae8c devm_devfreq_unregister_notifier +EXPORT_SYMBOL vmlinux 0x8ec1e54d ata_std_end_eh +EXPORT_SYMBOL vmlinux 0x8ec7e56b vlan_uses_dev +EXPORT_SYMBOL vmlinux 0x8ed2c666 ip_tunnel_encap_add_ops +EXPORT_SYMBOL vmlinux 0x8ed2e0f1 sk_common_release +EXPORT_SYMBOL vmlinux 0x8eece748 phy_read_mmd +EXPORT_SYMBOL vmlinux 0x8f13d9e5 ppp_channel_index +EXPORT_SYMBOL vmlinux 0x8f13f53d fs_param_is_s32 +EXPORT_SYMBOL vmlinux 0x8f2703b7 wbinvd_on_all_cpus +EXPORT_SYMBOL vmlinux 0x8f38d383 ex_handler_default +EXPORT_SYMBOL vmlinux 0x8f80bf11 acpi_install_gpe_raw_handler +EXPORT_SYMBOL vmlinux 0x8f81610e locks_mandatory_area +EXPORT_SYMBOL vmlinux 0x8f8736fe write_inode_now +EXPORT_SYMBOL vmlinux 0x8f95f66a __cgroup_bpf_run_filter_sock_addr +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 0x8fdd24fe empty_aops +EXPORT_SYMBOL vmlinux 0x8ff89ed0 seg6_hmac_exit +EXPORT_SYMBOL vmlinux 0x8ffbdba9 blk_limits_io_min +EXPORT_SYMBOL vmlinux 0x902d8722 vme_slave_get +EXPORT_SYMBOL vmlinux 0x902eac14 nd_dax_probe +EXPORT_SYMBOL vmlinux 0x9034a696 mempool_destroy +EXPORT_SYMBOL vmlinux 0x903ccd4b xfrm_unregister_km +EXPORT_SYMBOL vmlinux 0x903f1edf input_flush_device +EXPORT_SYMBOL vmlinux 0x90505962 serial8250_do_set_termios +EXPORT_SYMBOL vmlinux 0x905478e0 phy_ethtool_ksettings_get +EXPORT_SYMBOL vmlinux 0x9054ee54 ethtool_intersect_link_masks +EXPORT_SYMBOL vmlinux 0x905695ab sg_copy_from_buffer +EXPORT_SYMBOL vmlinux 0x90576ec4 vmemdup_user +EXPORT_SYMBOL vmlinux 0x906f7447 inet_add_protocol +EXPORT_SYMBOL vmlinux 0x907ba52c posix_acl_valid +EXPORT_SYMBOL vmlinux 0x9084a529 init_special_inode +EXPORT_SYMBOL vmlinux 0x909ce9cc tcp_getsockopt +EXPORT_SYMBOL vmlinux 0x909d2cdf vm_event_states +EXPORT_SYMBOL vmlinux 0x909feccd map_kernel_range_noflush +EXPORT_SYMBOL vmlinux 0x90a5b483 blkdev_issue_discard +EXPORT_SYMBOL vmlinux 0x90b4ed38 blk_mq_free_tag_set +EXPORT_SYMBOL vmlinux 0x90cd7359 netdev_adjacent_change_commit +EXPORT_SYMBOL vmlinux 0x90f9065e fc_eh_timed_out +EXPORT_SYMBOL vmlinux 0x91113e60 dma_resv_fini +EXPORT_SYMBOL vmlinux 0x91607d95 set_memory_wb +EXPORT_SYMBOL vmlinux 0x91638c3a security_tun_dev_attach +EXPORT_SYMBOL vmlinux 0x9166fada strncpy +EXPORT_SYMBOL vmlinux 0x916e1f5e vlan_filter_drop_vids +EXPORT_SYMBOL vmlinux 0x9176145b acpi_install_global_event_handler +EXPORT_SYMBOL vmlinux 0x919965ce add_to_pipe +EXPORT_SYMBOL vmlinux 0x919c58f3 __clzsi2 +EXPORT_SYMBOL vmlinux 0x91a10c61 intel_scu_ipc_dev_simple_command +EXPORT_SYMBOL vmlinux 0x91a7b1da qdisc_class_hash_remove +EXPORT_SYMBOL vmlinux 0x91cd015f tcf_classify_ingress +EXPORT_SYMBOL vmlinux 0x91cf3c57 tso_start +EXPORT_SYMBOL vmlinux 0x91eecea8 do_SAK +EXPORT_SYMBOL vmlinux 0x91eef2f3 send_sig_info +EXPORT_SYMBOL vmlinux 0x91f1b163 inet_reqsk_alloc +EXPORT_SYMBOL vmlinux 0x91f44510 idr_alloc_cyclic +EXPORT_SYMBOL vmlinux 0x91fcd058 _dev_emerg +EXPORT_SYMBOL vmlinux 0x922f45a6 __bitmap_clear +EXPORT_SYMBOL vmlinux 0x922fd264 textsearch_unregister +EXPORT_SYMBOL vmlinux 0x92367e56 genphy_restart_aneg +EXPORT_SYMBOL vmlinux 0x923b1276 dmaengine_get +EXPORT_SYMBOL vmlinux 0x923c39e1 blk_mq_queue_stopped +EXPORT_SYMBOL vmlinux 0x924012f2 phy_request_interrupt +EXPORT_SYMBOL vmlinux 0x92540fbf finish_wait +EXPORT_SYMBOL vmlinux 0x9258c776 hdmi_vendor_infoframe_pack_only +EXPORT_SYMBOL vmlinux 0x925924a4 tcf_exts_change +EXPORT_SYMBOL vmlinux 0x9269069f console_start +EXPORT_SYMBOL vmlinux 0x92731123 security_binder_transaction +EXPORT_SYMBOL vmlinux 0x9275b611 seq_release +EXPORT_SYMBOL vmlinux 0x92897e3d default_idle +EXPORT_SYMBOL vmlinux 0x9291cd3b memdup_user +EXPORT_SYMBOL vmlinux 0x929dc083 skb_set_owner_w +EXPORT_SYMBOL vmlinux 0x92a3bead pagecache_write_end +EXPORT_SYMBOL vmlinux 0x92aec847 scsi_is_sdev_device +EXPORT_SYMBOL vmlinux 0x92af2d98 dev_get_phys_port_name +EXPORT_SYMBOL vmlinux 0x92b576b4 get_bitmap_from_slot +EXPORT_SYMBOL vmlinux 0x92b63669 devfreq_unregister_notifier +EXPORT_SYMBOL vmlinux 0x92b98013 sock_queue_err_skb +EXPORT_SYMBOL vmlinux 0x92b99a33 acpi_put_table +EXPORT_SYMBOL vmlinux 0x92b9b180 slash_name +EXPORT_SYMBOL vmlinux 0x92de3c9f xfrm_init_replay +EXPORT_SYMBOL vmlinux 0x92ec510d jiffies64_to_msecs +EXPORT_SYMBOL vmlinux 0x92fa5abb vme_lm_detach +EXPORT_SYMBOL vmlinux 0x93022ba6 __scsi_format_command +EXPORT_SYMBOL vmlinux 0x9305bf68 find_next_and_bit +EXPORT_SYMBOL vmlinux 0x9305f8e6 cpufreq_get +EXPORT_SYMBOL vmlinux 0x930fa378 bio_add_pc_page +EXPORT_SYMBOL vmlinux 0x93147a94 tty_write_room +EXPORT_SYMBOL vmlinux 0x931dc3cd ethtool_op_get_link +EXPORT_SYMBOL vmlinux 0x932f31cb pcim_iounmap_regions +EXPORT_SYMBOL vmlinux 0x9347a26a eth_header_cache_update +EXPORT_SYMBOL vmlinux 0x9369f946 padata_alloc_possible +EXPORT_SYMBOL vmlinux 0x936b3104 fc_host_post_fc_event +EXPORT_SYMBOL vmlinux 0x936d6c47 tty_driver_flush_buffer +EXPORT_SYMBOL vmlinux 0x9375064e devm_request_resource +EXPORT_SYMBOL vmlinux 0x937733e3 qid_valid +EXPORT_SYMBOL vmlinux 0x93a6e0b2 io_schedule +EXPORT_SYMBOL vmlinux 0x93b3fc74 register_dcbevent_notifier +EXPORT_SYMBOL vmlinux 0x93c1992f nla_put_nohdr +EXPORT_SYMBOL vmlinux 0x93c31d73 nf_log_register +EXPORT_SYMBOL vmlinux 0x93d6dd8c complete_all +EXPORT_SYMBOL vmlinux 0x93d7ccac blk_queue_max_write_same_sectors +EXPORT_SYMBOL vmlinux 0x93f46bb2 nf_ct_attach +EXPORT_SYMBOL vmlinux 0x940857bb rt_dst_clone +EXPORT_SYMBOL vmlinux 0x940ad759 scsi_device_quiesce +EXPORT_SYMBOL vmlinux 0x940f9398 dev_change_proto_down_generic +EXPORT_SYMBOL vmlinux 0x9428f816 dim_turn +EXPORT_SYMBOL vmlinux 0x943dc80f csum_and_copy_to_user +EXPORT_SYMBOL vmlinux 0x943efd60 lock_rename +EXPORT_SYMBOL vmlinux 0x9440cde4 tcp_v4_md5_hash_skb +EXPORT_SYMBOL vmlinux 0x944375db _totalram_pages +EXPORT_SYMBOL vmlinux 0x9445bca8 tty_insert_flip_string_flags +EXPORT_SYMBOL vmlinux 0x9446672f bio_integrity_add_page +EXPORT_SYMBOL vmlinux 0x944a564d is_console_locked +EXPORT_SYMBOL vmlinux 0x945b0693 simple_open +EXPORT_SYMBOL vmlinux 0x945ccb8b input_mt_sync_frame +EXPORT_SYMBOL vmlinux 0x94678944 pnp_request_card_device +EXPORT_SYMBOL vmlinux 0x946cce1d vme_irq_handler +EXPORT_SYMBOL vmlinux 0x94851eed __register_binfmt +EXPORT_SYMBOL vmlinux 0x948c15f0 genlmsg_multicast_allns +EXPORT_SYMBOL vmlinux 0x94961283 vunmap +EXPORT_SYMBOL vmlinux 0x94bb7ec3 gen_pool_dma_zalloc_algo +EXPORT_SYMBOL vmlinux 0x94bf03ca utf8_to_utf32 +EXPORT_SYMBOL vmlinux 0x94dc2f97 netdev_boot_setup_check +EXPORT_SYMBOL vmlinux 0x94e481cf ZSTD_adjustCParams +EXPORT_SYMBOL vmlinux 0x94f78b40 dev_getfirstbyhwtype +EXPORT_SYMBOL vmlinux 0x94fe65c2 jbd2_journal_set_triggers +EXPORT_SYMBOL vmlinux 0x950a242e get_user_pages_remote +EXPORT_SYMBOL vmlinux 0x9545af6d tasklet_init +EXPORT_SYMBOL vmlinux 0x95498cde genphy_update_link +EXPORT_SYMBOL vmlinux 0x954cef6f init_on_alloc +EXPORT_SYMBOL vmlinux 0x954f099c idr_preload +EXPORT_SYMBOL vmlinux 0x9566da62 mipi_dsi_driver_register_full +EXPORT_SYMBOL vmlinux 0x956c90f1 vfs_statx_fd +EXPORT_SYMBOL vmlinux 0x9579d4ae ppp_input +EXPORT_SYMBOL vmlinux 0x957cc595 md_check_recovery +EXPORT_SYMBOL vmlinux 0x9586f5b4 pci_request_region +EXPORT_SYMBOL vmlinux 0x95a67b07 udp_table +EXPORT_SYMBOL vmlinux 0x95a86cd5 dma_async_device_register +EXPORT_SYMBOL vmlinux 0x95b13a50 simple_recursive_removal +EXPORT_SYMBOL vmlinux 0x95c4b9e0 __lock_buffer +EXPORT_SYMBOL vmlinux 0x95c62646 amd_iommu_domain_direct_map +EXPORT_SYMBOL vmlinux 0x95e161b8 param_get_string +EXPORT_SYMBOL vmlinux 0x95e67ddc xfrm6_rcv_encap +EXPORT_SYMBOL vmlinux 0x95fcd441 __nla_put_nohdr +EXPORT_SYMBOL vmlinux 0x95fef464 blk_put_request +EXPORT_SYMBOL vmlinux 0x96195cec ipv6_find_hdr +EXPORT_SYMBOL vmlinux 0x961b4795 scsi_scan_host +EXPORT_SYMBOL vmlinux 0x9625695d acpi_install_gpe_block +EXPORT_SYMBOL vmlinux 0x962c4977 clkdev_add +EXPORT_SYMBOL vmlinux 0x963dcba1 _raw_spin_trylock_bh +EXPORT_SYMBOL vmlinux 0x964b1b1d sock_efree +EXPORT_SYMBOL vmlinux 0x966359aa sg_alloc_table_from_pages +EXPORT_SYMBOL vmlinux 0x96848186 scnprintf +EXPORT_SYMBOL vmlinux 0x969ed577 pci_unmap_rom +EXPORT_SYMBOL vmlinux 0x96b29254 strncasecmp +EXPORT_SYMBOL vmlinux 0x96ba3fe2 netdev_name_node_alt_destroy +EXPORT_SYMBOL vmlinux 0x96c17136 fb_var_to_videomode +EXPORT_SYMBOL vmlinux 0x96cd2b04 scsi_sense_key_string +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 0x97127746 clear_wb_congested +EXPORT_SYMBOL vmlinux 0x97342bae __breadahead_gfp +EXPORT_SYMBOL vmlinux 0x973a8869 blkdev_get_by_path +EXPORT_SYMBOL vmlinux 0x973fa82e register_acpi_notifier +EXPORT_SYMBOL vmlinux 0x9746eb89 ZSTD_decompressBegin_usingDict +EXPORT_SYMBOL vmlinux 0x974ff6a7 simple_transaction_set +EXPORT_SYMBOL vmlinux 0x97620a01 migrate_vma_setup +EXPORT_SYMBOL vmlinux 0x97651e6c vmemmap_base +EXPORT_SYMBOL vmlinux 0x977f511b __mutex_init +EXPORT_SYMBOL vmlinux 0x978e2a45 xp_raw_get_data +EXPORT_SYMBOL vmlinux 0x97934ecf del_timer_sync +EXPORT_SYMBOL vmlinux 0x97999817 rfkill_set_hw_state +EXPORT_SYMBOL vmlinux 0x979f5533 tcf_em_tree_dump +EXPORT_SYMBOL vmlinux 0x97a18ff0 vga_switcheroo_register_handler +EXPORT_SYMBOL vmlinux 0x97a57333 crc_t10dif_update +EXPORT_SYMBOL vmlinux 0x97a822ad pcibios_resource_to_bus +EXPORT_SYMBOL vmlinux 0x97adb487 utf8s_to_utf16s +EXPORT_SYMBOL vmlinux 0x97bdfa60 scsi_dev_info_remove_list +EXPORT_SYMBOL vmlinux 0x97ccbbae sock_i_uid +EXPORT_SYMBOL vmlinux 0x97ea07c1 backlight_device_set_brightness +EXPORT_SYMBOL vmlinux 0x98096682 cookie_timestamp_decode +EXPORT_SYMBOL vmlinux 0x9812d30b pnp_possible_config +EXPORT_SYMBOL vmlinux 0x9828ac28 ipv4_specific +EXPORT_SYMBOL vmlinux 0x9829fc11 __kfifo_out_peek_r +EXPORT_SYMBOL vmlinux 0x983fc732 d_add_ci +EXPORT_SYMBOL vmlinux 0x987f24ee register_shrinker +EXPORT_SYMBOL vmlinux 0x9880e152 netdev_upper_get_next_dev_rcu +EXPORT_SYMBOL vmlinux 0x98a87fbf _copy_to_iter +EXPORT_SYMBOL vmlinux 0x98bdf56b insert_inode_locked4 +EXPORT_SYMBOL vmlinux 0x98c039dc dma_fence_wait_timeout +EXPORT_SYMBOL vmlinux 0x98c89ade security_xfrm_state_alloc +EXPORT_SYMBOL vmlinux 0x98e508ef ignore_console_lock_warning +EXPORT_SYMBOL vmlinux 0x9905eb2d vme_irq_free +EXPORT_SYMBOL vmlinux 0x99078b39 trace_print_flags_seq +EXPORT_SYMBOL vmlinux 0x991b14c3 unlock_buffer +EXPORT_SYMBOL vmlinux 0x992fc0cc blk_mq_stop_hw_queue +EXPORT_SYMBOL vmlinux 0x9939eba0 backlight_unregister_notifier +EXPORT_SYMBOL vmlinux 0x99517682 udp_encap_enable +EXPORT_SYMBOL vmlinux 0x9973ea36 input_mt_report_pointer_emulation +EXPORT_SYMBOL vmlinux 0x9975dc22 acpi_get_handle +EXPORT_SYMBOL vmlinux 0x999e27e1 vfs_llseek +EXPORT_SYMBOL vmlinux 0x999e8297 vfree +EXPORT_SYMBOL vmlinux 0x99a2a1c6 kernel_bind +EXPORT_SYMBOL vmlinux 0x99a6ddf0 path_get +EXPORT_SYMBOL vmlinux 0x99b7b067 keyring_search +EXPORT_SYMBOL vmlinux 0x99c93bda freeze_super +EXPORT_SYMBOL vmlinux 0x99cf9241 mount_subtree +EXPORT_SYMBOL vmlinux 0x99d472b1 net_dim_get_rx_moderation +EXPORT_SYMBOL vmlinux 0x99d65df1 efi +EXPORT_SYMBOL vmlinux 0x99daa9bf try_offline_node +EXPORT_SYMBOL vmlinux 0x99e5719d generic_iommu_put_resv_regions +EXPORT_SYMBOL vmlinux 0x99e5bc61 cdrom_release +EXPORT_SYMBOL vmlinux 0x99ea3168 qdisc_offload_dump_helper +EXPORT_SYMBOL vmlinux 0x99ee8e29 init_net +EXPORT_SYMBOL vmlinux 0x99f068d5 x86_cpu_to_node_map +EXPORT_SYMBOL vmlinux 0x9a0c3a18 vme_unregister_error_handler +EXPORT_SYMBOL vmlinux 0x9a19ec50 make_flow_keys_digest +EXPORT_SYMBOL vmlinux 0x9a1dfd65 strpbrk +EXPORT_SYMBOL vmlinux 0x9a217627 dquot_load_quota_sb +EXPORT_SYMBOL vmlinux 0x9a22391e radix_tree_gang_lookup_tag_slot +EXPORT_SYMBOL vmlinux 0x9a33ab99 phy_ethtool_set_link_ksettings +EXPORT_SYMBOL vmlinux 0x9a583306 netlbl_bitmap_walk +EXPORT_SYMBOL vmlinux 0x9a58e99e mdio_device_reset +EXPORT_SYMBOL vmlinux 0x9a5c1b38 genphy_read_lpa +EXPORT_SYMBOL vmlinux 0x9a5d5b4b skb_free_datagram +EXPORT_SYMBOL vmlinux 0x9a5e7d0b __dev_get_by_index +EXPORT_SYMBOL vmlinux 0x9a65f1f7 vlan_vid_del +EXPORT_SYMBOL vmlinux 0x9a71c2d6 mipi_dsi_shutdown_peripheral +EXPORT_SYMBOL vmlinux 0x9a73b032 ZSTD_initDStream_usingDDict +EXPORT_SYMBOL vmlinux 0x9a7e0d00 register_netdevice_notifier_dev_net +EXPORT_SYMBOL vmlinux 0x9aaeefce sysctl_nf_log_all_netns +EXPORT_SYMBOL vmlinux 0x9ab04ade mr_table_alloc +EXPORT_SYMBOL vmlinux 0x9ad60af7 drop_super +EXPORT_SYMBOL vmlinux 0x9ad7a582 iosf_mbi_assert_punit_acquired +EXPORT_SYMBOL vmlinux 0x9ad7d60c ioc_lookup_icq +EXPORT_SYMBOL vmlinux 0x9add61f0 kthread_destroy_worker +EXPORT_SYMBOL vmlinux 0x9b07810c __skb_checksum +EXPORT_SYMBOL vmlinux 0x9b0ae0e2 agp_generic_type_to_mask_type +EXPORT_SYMBOL vmlinux 0x9b2560b9 gf128mul_init_4k_bbe +EXPORT_SYMBOL vmlinux 0x9b33e0d7 unregister_dcbevent_notifier +EXPORT_SYMBOL vmlinux 0x9b420478 utf8_strncasecmp +EXPORT_SYMBOL vmlinux 0x9b496b21 posix_acl_alloc +EXPORT_SYMBOL vmlinux 0x9b684fc2 file_fdatawait_range +EXPORT_SYMBOL vmlinux 0x9b6d8a40 thermal_zone_device_critical +EXPORT_SYMBOL vmlinux 0x9b72478f acpi_unload_parent_table +EXPORT_SYMBOL vmlinux 0x9bc33680 security_path_mknod +EXPORT_SYMBOL vmlinux 0x9bc8fce0 sdev_enable_disk_events +EXPORT_SYMBOL vmlinux 0x9bcb5176 submit_bh +EXPORT_SYMBOL vmlinux 0x9bcb6acd t10_pi_type1_ip +EXPORT_SYMBOL vmlinux 0x9bd8d3ae vme_dma_list_add +EXPORT_SYMBOL vmlinux 0x9bdd1556 md_wait_for_blocked_rdev +EXPORT_SYMBOL vmlinux 0x9bdf3e17 _copy_from_iter +EXPORT_SYMBOL vmlinux 0x9bf62c78 phy_attach_direct +EXPORT_SYMBOL vmlinux 0x9c122bcf mempool_create_node +EXPORT_SYMBOL vmlinux 0x9c123187 md_bitmap_unplug +EXPORT_SYMBOL vmlinux 0x9c146b8b tcp_md5_hash_key +EXPORT_SYMBOL vmlinux 0x9c417b7f jbd2_journal_inode_ranged_write +EXPORT_SYMBOL vmlinux 0x9c53fd6c kernel_sendmsg_locked +EXPORT_SYMBOL vmlinux 0x9c68d55e qdisc_put_unlocked +EXPORT_SYMBOL vmlinux 0x9c83d4de seq_putc +EXPORT_SYMBOL vmlinux 0x9c942adc vprintk_emit +EXPORT_SYMBOL vmlinux 0x9c9ed7f3 param_set_byte +EXPORT_SYMBOL vmlinux 0x9cab34a6 rfkill_set_led_trigger_name +EXPORT_SYMBOL vmlinux 0x9caf4a7c pci_alloc_irq_vectors_affinity +EXPORT_SYMBOL vmlinux 0x9cb986f2 vmalloc_base +EXPORT_SYMBOL vmlinux 0x9ccb0fca __check_sticky +EXPORT_SYMBOL vmlinux 0x9ccf7171 vme_dma_pci_attribute +EXPORT_SYMBOL vmlinux 0x9ccfb9d8 alloc_netdev_mqs +EXPORT_SYMBOL vmlinux 0x9cd91791 register_sysctl +EXPORT_SYMBOL vmlinux 0x9cdbd933 elv_rb_latter_request +EXPORT_SYMBOL vmlinux 0x9cdfb3f7 sysctl_fb_tunnels_only_for_init_net +EXPORT_SYMBOL vmlinux 0x9ceb6eef kmem_cache_size +EXPORT_SYMBOL vmlinux 0x9cf79bbf input_set_min_poll_interval +EXPORT_SYMBOL vmlinux 0x9d099a39 acpi_remove_gpe_handler +EXPORT_SYMBOL vmlinux 0x9d0d6206 unregister_netdevice_notifier +EXPORT_SYMBOL vmlinux 0x9d2bbfb3 ipv6_sock_mc_drop +EXPORT_SYMBOL vmlinux 0x9d2e7707 unregister_sysrq_key +EXPORT_SYMBOL vmlinux 0x9d3ea74a locks_delete_block +EXPORT_SYMBOL vmlinux 0x9d4f3e0d pcie_relaxed_ordering_enabled +EXPORT_SYMBOL vmlinux 0x9d548d51 rtnl_link_get_net +EXPORT_SYMBOL vmlinux 0x9d563e80 iget5_locked +EXPORT_SYMBOL vmlinux 0x9d61e994 ucs2_strncmp +EXPORT_SYMBOL vmlinux 0x9d6736b0 genl_notify +EXPORT_SYMBOL vmlinux 0x9d6e0951 xfrm_state_check_expire +EXPORT_SYMBOL vmlinux 0x9d70541a native_save_fl +EXPORT_SYMBOL vmlinux 0x9d72ed0d mipi_dsi_dcs_set_display_brightness +EXPORT_SYMBOL vmlinux 0x9d736fa9 input_reset_device +EXPORT_SYMBOL vmlinux 0x9d870d32 param_ops_ulong +EXPORT_SYMBOL vmlinux 0x9d92f3ad __wait_on_bit_lock +EXPORT_SYMBOL vmlinux 0x9d9ea3e5 writeback_inodes_sb_nr +EXPORT_SYMBOL vmlinux 0x9da0f116 ipv6_chk_addr +EXPORT_SYMBOL vmlinux 0x9da4031f hmm_range_fault +EXPORT_SYMBOL vmlinux 0x9dd175cf __inc_node_page_state +EXPORT_SYMBOL vmlinux 0x9dd4f48b dcb_ieee_setapp +EXPORT_SYMBOL vmlinux 0x9de43e24 flow_block_cb_free +EXPORT_SYMBOL vmlinux 0x9de91ac0 md_check_no_bitmap +EXPORT_SYMBOL vmlinux 0x9dea8291 simple_readpage +EXPORT_SYMBOL vmlinux 0x9dee7584 genphy_suspend +EXPORT_SYMBOL vmlinux 0x9e0c711d vzalloc_node +EXPORT_SYMBOL vmlinux 0x9e0fa5ae hsiphash_3u32 +EXPORT_SYMBOL vmlinux 0x9e1233d7 redraw_screen +EXPORT_SYMBOL vmlinux 0x9e13f6f6 gf128mul_lle +EXPORT_SYMBOL vmlinux 0x9e2737f0 acpi_install_interface_handler +EXPORT_SYMBOL vmlinux 0x9e4faeef dm_io_client_destroy +EXPORT_SYMBOL vmlinux 0x9e52c556 tcp_v4_send_check +EXPORT_SYMBOL vmlinux 0x9e61bb05 set_freezable +EXPORT_SYMBOL vmlinux 0x9e64fbfe rtc_cmos_read +EXPORT_SYMBOL vmlinux 0x9e662caa agp_generic_alloc_page +EXPORT_SYMBOL vmlinux 0x9e683f75 __cpu_possible_mask +EXPORT_SYMBOL vmlinux 0x9e6a7971 fscrypt_encrypt_block_inplace +EXPORT_SYMBOL vmlinux 0x9e6e403c sock_alloc +EXPORT_SYMBOL vmlinux 0x9e7d6bd0 __udelay +EXPORT_SYMBOL vmlinux 0x9e83aa85 frontswap_register_ops +EXPORT_SYMBOL vmlinux 0x9e8b74bb serio_interrupt +EXPORT_SYMBOL vmlinux 0x9e92e8f3 tcf_chain_get_by_act +EXPORT_SYMBOL vmlinux 0x9e984096 prepare_to_swait_event +EXPORT_SYMBOL vmlinux 0x9e9b255a pmem_should_map_pages +EXPORT_SYMBOL vmlinux 0x9e9eab95 devcgroup_check_permission +EXPORT_SYMBOL vmlinux 0x9e9fdd9d memunmap +EXPORT_SYMBOL vmlinux 0x9ea53d7f vsnprintf +EXPORT_SYMBOL vmlinux 0x9eab8d85 _raw_write_lock_irq +EXPORT_SYMBOL vmlinux 0x9eacf8a5 kstrndup +EXPORT_SYMBOL vmlinux 0x9eafdfd0 fasync_helper +EXPORT_SYMBOL vmlinux 0x9ec031c4 dst_destroy +EXPORT_SYMBOL vmlinux 0x9ec3c66e unregister_netdevice_queue +EXPORT_SYMBOL vmlinux 0x9ec6ca96 ktime_get_real_ts64 +EXPORT_SYMBOL vmlinux 0x9ed978de vme_lm_set +EXPORT_SYMBOL vmlinux 0x9ef31a67 devm_clk_hw_register_clkdev +EXPORT_SYMBOL vmlinux 0x9f0a8183 pm_vt_switch_required +EXPORT_SYMBOL vmlinux 0x9f0d2b6b inet_stream_connect +EXPORT_SYMBOL vmlinux 0x9f14eb8d devm_devfreq_add_device +EXPORT_SYMBOL vmlinux 0x9f2163ef xp_can_alloc +EXPORT_SYMBOL vmlinux 0x9f35aea6 ipv6_dev_mc_inc +EXPORT_SYMBOL vmlinux 0x9f46ced8 __sw_hweight64 +EXPORT_SYMBOL vmlinux 0x9f4f2aa3 acpi_gbl_FADT +EXPORT_SYMBOL vmlinux 0x9f50b770 keyring_restrict +EXPORT_SYMBOL vmlinux 0x9f520212 dev_queue_xmit_accel +EXPORT_SYMBOL vmlinux 0x9f53ab19 xp_dma_sync_for_device_slow +EXPORT_SYMBOL vmlinux 0x9f54ead7 gro_cells_destroy +EXPORT_SYMBOL vmlinux 0x9f613dbf tcp_req_err +EXPORT_SYMBOL vmlinux 0x9f65c857 ZSTD_checkCParams +EXPORT_SYMBOL vmlinux 0x9f68c218 mroute6_is_socket +EXPORT_SYMBOL vmlinux 0x9f984513 strrchr +EXPORT_SYMBOL vmlinux 0x9fa7184a cancel_delayed_work_sync +EXPORT_SYMBOL vmlinux 0x9fa83152 inet_listen +EXPORT_SYMBOL vmlinux 0x9fb1d0ed uuid_is_valid +EXPORT_SYMBOL vmlinux 0x9fb9a6dc generic_file_mmap +EXPORT_SYMBOL vmlinux 0x9fbf3113 md_cluster_ops +EXPORT_SYMBOL vmlinux 0x9fdecc31 unregister_netdevice_many +EXPORT_SYMBOL vmlinux 0x9fe68751 set_device_ro +EXPORT_SYMBOL vmlinux 0x9feed7ce timer_reduce +EXPORT_SYMBOL vmlinux 0x9ffa3a75 netdev_max_backlog +EXPORT_SYMBOL vmlinux 0xa00aca2a dql_completed +EXPORT_SYMBOL vmlinux 0xa014e292 page_symlink_inode_operations +EXPORT_SYMBOL vmlinux 0xa020f9f0 audit_log_task_context +EXPORT_SYMBOL vmlinux 0xa02aa74a __cond_resched_lock +EXPORT_SYMBOL vmlinux 0xa0436e98 in6addr_linklocal_allnodes +EXPORT_SYMBOL vmlinux 0xa07a37f0 memchr +EXPORT_SYMBOL vmlinux 0xa0801c70 follow_up +EXPORT_SYMBOL vmlinux 0xa084749a __bitmap_or +EXPORT_SYMBOL vmlinux 0xa084f79f cpumask_next_wrap +EXPORT_SYMBOL vmlinux 0xa095e02e generic_check_addressable +EXPORT_SYMBOL vmlinux 0xa0ae1e73 siphash_3u64 +EXPORT_SYMBOL vmlinux 0xa0aefdef padata_do_serial +EXPORT_SYMBOL vmlinux 0xa0b04675 vmalloc_32 +EXPORT_SYMBOL vmlinux 0xa0be646d inode_needs_sync +EXPORT_SYMBOL vmlinux 0xa0c98823 dev_addr_flush +EXPORT_SYMBOL vmlinux 0xa0d56753 generic_remap_file_range_prep +EXPORT_SYMBOL vmlinux 0xa0d73433 phy_loopback +EXPORT_SYMBOL vmlinux 0xa0dad88e netdev_adjacent_get_private +EXPORT_SYMBOL vmlinux 0xa0debf5a __skb_warn_lro_forwarding +EXPORT_SYMBOL vmlinux 0xa0eae826 smp_call_function +EXPORT_SYMBOL vmlinux 0xa0ebd14c sysctl_tcp_mem +EXPORT_SYMBOL vmlinux 0xa0f7805a dev_uc_del +EXPORT_SYMBOL vmlinux 0xa0fbac79 wake_up_bit +EXPORT_SYMBOL vmlinux 0xa1064a3a ethtool_virtdev_set_link_ksettings +EXPORT_SYMBOL vmlinux 0xa10782dc fc_remove_host +EXPORT_SYMBOL vmlinux 0xa108eb4d sysctl_optmem_max +EXPORT_SYMBOL vmlinux 0xa1097db2 nvdimm_namespace_attach_btt +EXPORT_SYMBOL vmlinux 0xa10eea31 inet_csk_reset_keepalive_timer +EXPORT_SYMBOL vmlinux 0xa11a03da udp_pre_connect +EXPORT_SYMBOL vmlinux 0xa120d33c tty_unregister_ldisc +EXPORT_SYMBOL vmlinux 0xa125411a scsi_vpd_lun_id +EXPORT_SYMBOL vmlinux 0xa12aa332 sock_alloc_file +EXPORT_SYMBOL vmlinux 0xa13c9a3e register_nexthop_notifier +EXPORT_SYMBOL vmlinux 0xa13e780a gen_replace_estimator +EXPORT_SYMBOL vmlinux 0xa13f3c52 fscrypt_decrypt_bio +EXPORT_SYMBOL vmlinux 0xa1545e3e sock_no_linger +EXPORT_SYMBOL vmlinux 0xa155c071 ZSTD_compressBegin_usingDict +EXPORT_SYMBOL vmlinux 0xa160d385 wait_on_page_bit +EXPORT_SYMBOL vmlinux 0xa16c8613 _raw_read_unlock_irqrestore +EXPORT_SYMBOL vmlinux 0xa16dc120 padata_start +EXPORT_SYMBOL vmlinux 0xa18a3529 dcb_ieee_getapp_mask +EXPORT_SYMBOL vmlinux 0xa18b42ba bd_start_claiming +EXPORT_SYMBOL vmlinux 0xa193dd2a inet_proto_csum_replace_by_diff +EXPORT_SYMBOL vmlinux 0xa1bedd72 amd_iommu_pc_get_max_counters +EXPORT_SYMBOL vmlinux 0xa1c39e34 __ethtool_get_link_ksettings +EXPORT_SYMBOL vmlinux 0xa1c76e0a _cond_resched +EXPORT_SYMBOL vmlinux 0xa1d5d2a7 netdev_class_remove_file_ns +EXPORT_SYMBOL vmlinux 0xa1d6f556 devm_register_netdev +EXPORT_SYMBOL vmlinux 0xa1d913d9 pci_get_subsys +EXPORT_SYMBOL vmlinux 0xa1f8ac20 find_get_pages_contig +EXPORT_SYMBOL vmlinux 0xa1f9a134 __x86_indirect_thunk_rsi +EXPORT_SYMBOL vmlinux 0xa2060911 inet_current_timestamp +EXPORT_SYMBOL vmlinux 0xa2093aba mr_table_dump +EXPORT_SYMBOL vmlinux 0xa22b7a6e phy_disconnect +EXPORT_SYMBOL vmlinux 0xa2326c49 acpi_remove_table_handler +EXPORT_SYMBOL vmlinux 0xa23b50ef dev_uc_add_excl +EXPORT_SYMBOL vmlinux 0xa24f23d8 __request_module +EXPORT_SYMBOL vmlinux 0xa25b90ab utf8byte +EXPORT_SYMBOL vmlinux 0xa263892b fscrypt_fname_free_buffer +EXPORT_SYMBOL vmlinux 0xa271af92 compat_import_iovec +EXPORT_SYMBOL vmlinux 0xa27981d5 iterate_fd +EXPORT_SYMBOL vmlinux 0xa28cfcc0 gen_estimator_active +EXPORT_SYMBOL vmlinux 0xa29dee58 tty_throttle +EXPORT_SYMBOL vmlinux 0xa2a62cf9 __inet_hash +EXPORT_SYMBOL vmlinux 0xa2c40e9f napi_get_frags +EXPORT_SYMBOL vmlinux 0xa2df2e89 unregister_netdev +EXPORT_SYMBOL vmlinux 0xa2e6455d wait_for_key_construction +EXPORT_SYMBOL vmlinux 0xa2f6616e phy_validate_pause +EXPORT_SYMBOL vmlinux 0xa326f3c2 configfs_depend_item +EXPORT_SYMBOL vmlinux 0xa348496b ip_mc_leave_group +EXPORT_SYMBOL vmlinux 0xa36e0c70 nvdimm_namespace_detach_btt +EXPORT_SYMBOL vmlinux 0xa38f21b9 amd_iommu_update_ga +EXPORT_SYMBOL vmlinux 0xa3ac3dd4 end_buffer_async_write +EXPORT_SYMBOL vmlinux 0xa3fea172 sha224_final +EXPORT_SYMBOL vmlinux 0xa40ff01b acpi_dbg_layer +EXPORT_SYMBOL vmlinux 0xa4191c0b memset_io +EXPORT_SYMBOL vmlinux 0xa4206c48 amd_iommu_complete_ppr +EXPORT_SYMBOL vmlinux 0xa4248a5e xfrm_state_insert +EXPORT_SYMBOL vmlinux 0xa4352b46 set_page_dirty_lock +EXPORT_SYMBOL vmlinux 0xa44470ca clk_add_alias +EXPORT_SYMBOL vmlinux 0xa44b3dce d_obtain_alias +EXPORT_SYMBOL vmlinux 0xa4a165f7 bdev_read_only +EXPORT_SYMBOL vmlinux 0xa4b94fea iowrite8_rep +EXPORT_SYMBOL vmlinux 0xa4ba8c13 alloc_file_pseudo +EXPORT_SYMBOL vmlinux 0xa4c8127c ZSTD_maxCLevel +EXPORT_SYMBOL vmlinux 0xa4d4f0e6 global_cache_flush +EXPORT_SYMBOL vmlinux 0xa4ea7be5 compat_sock_common_getsockopt +EXPORT_SYMBOL vmlinux 0xa4f70eb8 vga_switcheroo_client_probe_defer +EXPORT_SYMBOL vmlinux 0xa4faf62a acpi_disable_gpe +EXPORT_SYMBOL vmlinux 0xa5056338 __hsiphash_aligned +EXPORT_SYMBOL vmlinux 0xa507125e acpi_clear_gpe +EXPORT_SYMBOL vmlinux 0xa50bcff0 x86_cpu_to_apicid +EXPORT_SYMBOL vmlinux 0xa5173b7a iov_iter_alignment +EXPORT_SYMBOL vmlinux 0xa53119e5 vfs_symlink +EXPORT_SYMBOL vmlinux 0xa5350922 __frontswap_test +EXPORT_SYMBOL vmlinux 0xa542e219 register_framebuffer +EXPORT_SYMBOL vmlinux 0xa54f04b4 mipi_dsi_dcs_read +EXPORT_SYMBOL vmlinux 0xa54f2aa6 fbcon_rotate_ud +EXPORT_SYMBOL vmlinux 0xa5507fc5 scsi_eh_restore_cmnd +EXPORT_SYMBOL vmlinux 0xa5526619 rb_insert_color +EXPORT_SYMBOL vmlinux 0xa562364a tcp_rtx_synack +EXPORT_SYMBOL vmlinux 0xa56976aa dump_truncate +EXPORT_SYMBOL vmlinux 0xa56c2089 acpi_bus_unregister_driver +EXPORT_SYMBOL vmlinux 0xa58cc003 mr_mfc_find_any +EXPORT_SYMBOL vmlinux 0xa5956abe ioread64_hi_lo +EXPORT_SYMBOL vmlinux 0xa5976e4f dev_base_lock +EXPORT_SYMBOL vmlinux 0xa5a31d15 dcache_readdir +EXPORT_SYMBOL vmlinux 0xa5ac3e33 ZSTD_DCtxWorkspaceBound +EXPORT_SYMBOL vmlinux 0xa5c0e29f __d_drop +EXPORT_SYMBOL vmlinux 0xa5cff10d register_key_type +EXPORT_SYMBOL vmlinux 0xa5e0ea73 alloc_anon_inode +EXPORT_SYMBOL vmlinux 0xa5e4dc45 add_to_page_cache_locked +EXPORT_SYMBOL vmlinux 0xa5e55057 rdmsrl_safe_on_cpu +EXPORT_SYMBOL vmlinux 0xa5f6229c __page_frag_cache_drain +EXPORT_SYMBOL vmlinux 0xa601e660 agp_generic_alloc_pages +EXPORT_SYMBOL vmlinux 0xa61ced89 qdisc_put_rtab +EXPORT_SYMBOL vmlinux 0xa6257a2f complete +EXPORT_SYMBOL vmlinux 0xa65064d9 ppp_register_compressor +EXPORT_SYMBOL vmlinux 0xa655e1f8 always_delete_dentry +EXPORT_SYMBOL vmlinux 0xa657aac5 __invalidate_device +EXPORT_SYMBOL vmlinux 0xa665ffdc config_item_put +EXPORT_SYMBOL vmlinux 0xa6661a16 inet_add_offload +EXPORT_SYMBOL vmlinux 0xa679eff2 elv_rb_former_request +EXPORT_SYMBOL vmlinux 0xa67c72cc md_update_sb +EXPORT_SYMBOL vmlinux 0xa681fe88 generate_random_uuid +EXPORT_SYMBOL vmlinux 0xa6830031 kern_path_create +EXPORT_SYMBOL vmlinux 0xa6841fb6 tun_ptr_to_xdp +EXPORT_SYMBOL vmlinux 0xa68648ff _dev_err +EXPORT_SYMBOL vmlinux 0xa68a4b08 tcp_make_synack +EXPORT_SYMBOL vmlinux 0xa69e1715 blkdev_issue_write_same +EXPORT_SYMBOL vmlinux 0xa6b04536 ip6_frag_next +EXPORT_SYMBOL vmlinux 0xa6c79e42 of_find_backlight +EXPORT_SYMBOL vmlinux 0xa6e1ff55 mipi_dsi_compression_mode +EXPORT_SYMBOL vmlinux 0xa6ef3c15 open_exec +EXPORT_SYMBOL vmlinux 0xa6f41b8c dst_release +EXPORT_SYMBOL vmlinux 0xa6f7de30 loop_register_transfer +EXPORT_SYMBOL vmlinux 0xa7015553 devm_ioport_map +EXPORT_SYMBOL vmlinux 0xa70489e1 vme_irq_generate +EXPORT_SYMBOL vmlinux 0xa70fabbe release_evntsel_nmi +EXPORT_SYMBOL vmlinux 0xa7200706 skb_prepare_seq_read +EXPORT_SYMBOL vmlinux 0xa724e175 kmem_cache_destroy +EXPORT_SYMBOL vmlinux 0xa72cfb7d ioremap_wt +EXPORT_SYMBOL vmlinux 0xa72d220b sock_pfree +EXPORT_SYMBOL vmlinux 0xa73629d9 dquot_quota_sync +EXPORT_SYMBOL vmlinux 0xa74c9877 refcount_dec_and_rtnl_lock +EXPORT_SYMBOL vmlinux 0xa75b1d33 __netdev_alloc_skb +EXPORT_SYMBOL vmlinux 0xa77048f8 flow_indr_block_cb_alloc +EXPORT_SYMBOL vmlinux 0xa77bfd29 register_inet6addr_validator_notifier +EXPORT_SYMBOL vmlinux 0xa77c6c73 sk_alloc +EXPORT_SYMBOL vmlinux 0xa78477db jbd2_journal_release_jbd_inode +EXPORT_SYMBOL vmlinux 0xa7a13952 km_state_expired +EXPORT_SYMBOL vmlinux 0xa7c340bf get_unmapped_area +EXPORT_SYMBOL vmlinux 0xa7d2df5c security_inode_setsecctx +EXPORT_SYMBOL vmlinux 0xa7d5f92e ida_destroy +EXPORT_SYMBOL vmlinux 0xa7e38f12 flow_keys_basic_dissector +EXPORT_SYMBOL vmlinux 0xa7eedcc4 call_usermodehelper +EXPORT_SYMBOL vmlinux 0xa805ecfc acpi_release_global_lock +EXPORT_SYMBOL vmlinux 0xa80c370d agp_create_memory +EXPORT_SYMBOL vmlinux 0xa8181adf proc_dointvec +EXPORT_SYMBOL vmlinux 0xa82209fb inet_dgram_ops +EXPORT_SYMBOL vmlinux 0xa8304ff7 dma_async_device_unregister +EXPORT_SYMBOL vmlinux 0xa8306b78 scaled_ppm_to_ppb +EXPORT_SYMBOL vmlinux 0xa836ba02 wrmsr_safe_regs +EXPORT_SYMBOL vmlinux 0xa8375bae __inc_zone_page_state +EXPORT_SYMBOL vmlinux 0xa8409802 find_get_pages_range_tag +EXPORT_SYMBOL vmlinux 0xa843805a get_unused_fd_flags +EXPORT_SYMBOL vmlinux 0xa8461b4e __netlink_ns_capable +EXPORT_SYMBOL vmlinux 0xa84ce9e0 crypto_aes_inv_sbox +EXPORT_SYMBOL vmlinux 0xa853396b xa_extract +EXPORT_SYMBOL vmlinux 0xa85a3e6d xa_load +EXPORT_SYMBOL vmlinux 0xa8694ecd kblockd_schedule_work +EXPORT_SYMBOL vmlinux 0xa88ca5d8 inet_shutdown +EXPORT_SYMBOL vmlinux 0xa88cd466 mr_mfc_find_any_parent +EXPORT_SYMBOL vmlinux 0xa897e3e7 mempool_free +EXPORT_SYMBOL vmlinux 0xa8b9a07f put_cmsg_scm_timestamping64 +EXPORT_SYMBOL vmlinux 0xa8caa845 clk_bulk_put_all +EXPORT_SYMBOL vmlinux 0xa8cf28f8 scsi_is_fc_rport +EXPORT_SYMBOL vmlinux 0xa8d4e6e3 ipv6_setsockopt +EXPORT_SYMBOL vmlinux 0xa8e6933a qdf2400_e44_present +EXPORT_SYMBOL vmlinux 0xa8e96166 d_find_any_alias +EXPORT_SYMBOL vmlinux 0xa8ed1d84 bioset_init +EXPORT_SYMBOL vmlinux 0xa8ef21f5 sock_no_getname +EXPORT_SYMBOL vmlinux 0xa8f250d7 netif_set_real_num_rx_queues +EXPORT_SYMBOL vmlinux 0xa8f34cbb get_user_pages +EXPORT_SYMBOL vmlinux 0xa8f6c843 ip_frag_ecn_table +EXPORT_SYMBOL vmlinux 0xa8fa8da0 sg_miter_next +EXPORT_SYMBOL vmlinux 0xa90ca0de flush_rcu_work +EXPORT_SYMBOL vmlinux 0xa916b694 strnlen +EXPORT_SYMBOL vmlinux 0xa92537f5 phy_set_sym_pause +EXPORT_SYMBOL vmlinux 0xa92e440e sock_diag_put_filterinfo +EXPORT_SYMBOL vmlinux 0xa92fcfb3 blkdev_issue_zeroout +EXPORT_SYMBOL vmlinux 0xa931af8a asm_load_gs_index +EXPORT_SYMBOL vmlinux 0xa934bc4b flow_get_u32_dst +EXPORT_SYMBOL vmlinux 0xa9359a74 dev_pick_tx_cpu_id +EXPORT_SYMBOL vmlinux 0xa9428692 generic_splice_sendpage +EXPORT_SYMBOL vmlinux 0xa946f0f1 dev_get_port_parent_id +EXPORT_SYMBOL vmlinux 0xa94a09bb mem_section +EXPORT_SYMBOL vmlinux 0xa94c9322 end_buffer_write_sync +EXPORT_SYMBOL vmlinux 0xa965ca81 reciprocal_value +EXPORT_SYMBOL vmlinux 0xa969bb53 udp_push_pending_frames +EXPORT_SYMBOL vmlinux 0xa96db665 config_item_get_unless_zero +EXPORT_SYMBOL vmlinux 0xa97463c9 __siphash_aligned +EXPORT_SYMBOL vmlinux 0xa9785b49 cpu_core_map +EXPORT_SYMBOL vmlinux 0xa97ccd4c eth_header_parse_protocol +EXPORT_SYMBOL vmlinux 0xa9860fee pnp_device_attach +EXPORT_SYMBOL vmlinux 0xa98bb873 iov_iter_for_each_range +EXPORT_SYMBOL vmlinux 0xa99b39c2 prandom_bytes +EXPORT_SYMBOL vmlinux 0xa99ebdc5 scsi_device_get +EXPORT_SYMBOL vmlinux 0xa9a8e17f arch_phys_wc_add +EXPORT_SYMBOL vmlinux 0xa9bfd9bb scsi_get_host_dev +EXPORT_SYMBOL vmlinux 0xa9c056fc mdiobus_read +EXPORT_SYMBOL vmlinux 0xa9c72303 amd_iommu_pc_get_max_banks +EXPORT_SYMBOL vmlinux 0xa9d17303 follow_pfn +EXPORT_SYMBOL vmlinux 0xa9ec88c8 tty_port_put +EXPORT_SYMBOL vmlinux 0xaa00fdc0 ec_transaction +EXPORT_SYMBOL vmlinux 0xaa03cd0e __phy_read_mmd +EXPORT_SYMBOL vmlinux 0xaa173c25 iov_iter_pipe +EXPORT_SYMBOL vmlinux 0xaa20bf48 set_pages_array_wb +EXPORT_SYMBOL vmlinux 0xaa2bb0f4 inet6_del_protocol +EXPORT_SYMBOL vmlinux 0xaa341905 acpi_bios_exception +EXPORT_SYMBOL vmlinux 0xaa6f23ad rfkill_get_led_trigger_name +EXPORT_SYMBOL vmlinux 0xaa78aae1 fs_param_is_u32 +EXPORT_SYMBOL vmlinux 0xaa8a4b75 pps_unregister_source +EXPORT_SYMBOL vmlinux 0xaa985d10 gnet_stats_finish_copy +EXPORT_SYMBOL vmlinux 0xaaa4b9bc hchacha_block_generic +EXPORT_SYMBOL vmlinux 0xaaba6272 vga_con +EXPORT_SYMBOL vmlinux 0xaacd2b4c serial8250_do_pm +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 0xaadfa06d __skb_checksum_complete_head +EXPORT_SYMBOL vmlinux 0xaae0f6c0 read_cache_pages +EXPORT_SYMBOL vmlinux 0xaae4cc30 __xfrm_init_state +EXPORT_SYMBOL vmlinux 0xaae8ab0e acpi_bus_power_manageable +EXPORT_SYMBOL vmlinux 0xaafa9e88 irq_set_chip +EXPORT_SYMBOL vmlinux 0xaafd2abd xp_dma_map +EXPORT_SYMBOL vmlinux 0xaafdad1a is_nd_btt +EXPORT_SYMBOL vmlinux 0xaafdc258 strcasecmp +EXPORT_SYMBOL vmlinux 0xab020dc1 xfrm_if_register_cb +EXPORT_SYMBOL vmlinux 0xab04615b config_group_find_item +EXPORT_SYMBOL vmlinux 0xab3697e4 irq_poll_init +EXPORT_SYMBOL vmlinux 0xab3b75ea vme_dma_pattern_attribute +EXPORT_SYMBOL vmlinux 0xab521094 tcp_simple_retransmit +EXPORT_SYMBOL vmlinux 0xab600421 probe_irq_off +EXPORT_SYMBOL vmlinux 0xab61d4d6 pagevec_lookup_range_nr_tag +EXPORT_SYMBOL vmlinux 0xab63baa5 unregister_inetaddr_validator_notifier +EXPORT_SYMBOL vmlinux 0xab65ed80 set_memory_uc +EXPORT_SYMBOL vmlinux 0xab67a0ac dql_init +EXPORT_SYMBOL vmlinux 0xab735372 ipmi_dmi_get_slave_addr +EXPORT_SYMBOL vmlinux 0xab781570 fb_get_options +EXPORT_SYMBOL vmlinux 0xab7b8e68 __x86_retpoline_rbx +EXPORT_SYMBOL vmlinux 0xab824bc2 dcb_ieee_getapp_dscp_prio_mask_map +EXPORT_SYMBOL vmlinux 0xab84db39 eth_get_headlen +EXPORT_SYMBOL vmlinux 0xab9d4ce5 netlink_rcv_skb +EXPORT_SYMBOL vmlinux 0xab9dcfe5 genphy_loopback +EXPORT_SYMBOL vmlinux 0xaba48b1a fscrypt_encrypt_pagecache_blocks +EXPORT_SYMBOL vmlinux 0xaba81805 xps_rxqs_needed +EXPORT_SYMBOL vmlinux 0xaba89465 dev_uc_add +EXPORT_SYMBOL vmlinux 0xabad09b4 input_release_device +EXPORT_SYMBOL vmlinux 0xabb403cd xfrm_lookup +EXPORT_SYMBOL vmlinux 0xabc3ab6e pfifo_fast_ops +EXPORT_SYMBOL vmlinux 0xabce866f fscrypt_free_bounce_page +EXPORT_SYMBOL vmlinux 0xabeaa102 bio_reset +EXPORT_SYMBOL vmlinux 0xabf32f29 utf16s_to_utf8s +EXPORT_SYMBOL vmlinux 0xabfa2c6d remove_proc_entry +EXPORT_SYMBOL vmlinux 0xabfd3968 __phy_resume +EXPORT_SYMBOL vmlinux 0xac14f5d0 inet_frag_kill +EXPORT_SYMBOL vmlinux 0xac1a55be unregister_reboot_notifier +EXPORT_SYMBOL vmlinux 0xac3201b0 udp_flow_hashrnd +EXPORT_SYMBOL vmlinux 0xac37d28d ipv6_mc_check_icmpv6 +EXPORT_SYMBOL vmlinux 0xac39f58c md_wakeup_thread +EXPORT_SYMBOL vmlinux 0xac43b4cb __serio_register_driver +EXPORT_SYMBOL vmlinux 0xac537ac2 percpu_counter_destroy +EXPORT_SYMBOL vmlinux 0xac54fc8e xfrm_state_delete_tunnel +EXPORT_SYMBOL vmlinux 0xac5fcec0 in4_pton +EXPORT_SYMBOL vmlinux 0xac8597d5 mb_cache_entry_get +EXPORT_SYMBOL vmlinux 0xac94e86b vsprintf +EXPORT_SYMBOL vmlinux 0xac9bc87d blk_mq_delay_run_hw_queue +EXPORT_SYMBOL vmlinux 0xac9d2b69 pci_set_mwi +EXPORT_SYMBOL vmlinux 0xaca27222 xfrm_parse_spi +EXPORT_SYMBOL vmlinux 0xaca5ac89 reuseport_select_sock +EXPORT_SYMBOL vmlinux 0xaca88385 ptp_find_pin_unlocked +EXPORT_SYMBOL vmlinux 0xacaa4c72 dma_fence_match_context +EXPORT_SYMBOL vmlinux 0xacab29b7 seq_hlist_start_percpu +EXPORT_SYMBOL vmlinux 0xacbd42c1 configfs_unregister_subsystem +EXPORT_SYMBOL vmlinux 0xacc6acc0 neigh_update +EXPORT_SYMBOL vmlinux 0xacd646cb generic_writepages +EXPORT_SYMBOL vmlinux 0xacd6628d __scsi_execute +EXPORT_SYMBOL vmlinux 0xacd81eb3 jbd2_inode_cache +EXPORT_SYMBOL vmlinux 0xace0653f kernel_sock_shutdown +EXPORT_SYMBOL vmlinux 0xacec07d7 bio_clone_fast +EXPORT_SYMBOL vmlinux 0xacf4d843 match_strdup +EXPORT_SYMBOL vmlinux 0xacf649bf audit_log_task_info +EXPORT_SYMBOL vmlinux 0xacfa56fd mdio_device_register +EXPORT_SYMBOL vmlinux 0xad0413d4 match_hex +EXPORT_SYMBOL vmlinux 0xad1036a2 amd_iommu_activate_guest_mode +EXPORT_SYMBOL vmlinux 0xad1cbbfc d_alloc_name +EXPORT_SYMBOL vmlinux 0xad2265f6 param_set_ullong +EXPORT_SYMBOL vmlinux 0xad2573e2 flow_indr_dev_register +EXPORT_SYMBOL vmlinux 0xad2951a9 ex_handler_rdmsr_unsafe +EXPORT_SYMBOL vmlinux 0xad536c91 x86_cpu_to_acpiid +EXPORT_SYMBOL vmlinux 0xad57b5c8 remap_pfn_range +EXPORT_SYMBOL vmlinux 0xad600e19 bio_list_copy_data +EXPORT_SYMBOL vmlinux 0xad6ba40e radix_tree_tag_get +EXPORT_SYMBOL vmlinux 0xad73041f autoremove_wake_function +EXPORT_SYMBOL vmlinux 0xad7680cc inode_init_once +EXPORT_SYMBOL vmlinux 0xad84bef8 dm_table_event +EXPORT_SYMBOL vmlinux 0xad96eea2 ppp_input_error +EXPORT_SYMBOL vmlinux 0xad9901ae bit_waitqueue +EXPORT_SYMBOL vmlinux 0xad995dac netdev_stats_to_stats64 +EXPORT_SYMBOL vmlinux 0xada31e57 gen_pool_dma_alloc_align +EXPORT_SYMBOL vmlinux 0xada3b38c nf_register_queue_handler +EXPORT_SYMBOL vmlinux 0xadaa5eea sched_autogroup_detach +EXPORT_SYMBOL vmlinux 0xadb8d6c3 agp_alloc_page_array +EXPORT_SYMBOL vmlinux 0xadbeed61 mipi_dsi_packet_format_is_long +EXPORT_SYMBOL vmlinux 0xadc044b7 vfio_set_irqs_validate_and_prepare +EXPORT_SYMBOL vmlinux 0xadc3b37d get_phy_device +EXPORT_SYMBOL vmlinux 0xadc694de xfrm_sad_getinfo +EXPORT_SYMBOL vmlinux 0xadcba50b ZSTD_findFrameCompressedSize +EXPORT_SYMBOL vmlinux 0xadd139d4 rfs_needed +EXPORT_SYMBOL vmlinux 0xadd5321b iov_iter_get_pages_alloc +EXPORT_SYMBOL vmlinux 0xadf7e900 scsi_partsize +EXPORT_SYMBOL vmlinux 0xadfdfcef __bitmap_andnot +EXPORT_SYMBOL vmlinux 0xae04012c __vmalloc +EXPORT_SYMBOL vmlinux 0xae1e5ab0 tcf_block_get_ext +EXPORT_SYMBOL vmlinux 0xae304a66 backlight_device_register +EXPORT_SYMBOL vmlinux 0xae316c11 icmpv6_err_convert +EXPORT_SYMBOL vmlinux 0xae39b076 arp_xmit +EXPORT_SYMBOL vmlinux 0xae4bb066 pci_clear_master +EXPORT_SYMBOL vmlinux 0xae5a04bb acpi_evaluate_dsm +EXPORT_SYMBOL vmlinux 0xae64f7c1 mr_vif_seq_idx +EXPORT_SYMBOL vmlinux 0xae7e3a35 mutex_trylock_recursive +EXPORT_SYMBOL vmlinux 0xae8ca7a1 simple_dir_operations +EXPORT_SYMBOL vmlinux 0xae9f392a xfrm6_input_addr +EXPORT_SYMBOL vmlinux 0xaeac049a generate_random_guid +EXPORT_SYMBOL vmlinux 0xaeb9a253 xfrm_init_state +EXPORT_SYMBOL vmlinux 0xaeba72a5 kobject_get +EXPORT_SYMBOL vmlinux 0xaebd12f0 acpi_get_name +EXPORT_SYMBOL vmlinux 0xaec60722 abort_creds +EXPORT_SYMBOL vmlinux 0xaec7332d __nlmsg_put +EXPORT_SYMBOL vmlinux 0xaecaf43b kill_anon_super +EXPORT_SYMBOL vmlinux 0xaecfc86a balance_dirty_pages_ratelimited +EXPORT_SYMBOL vmlinux 0xaed98bd9 xfrm_policy_flush +EXPORT_SYMBOL vmlinux 0xaefd61ef dev_get_stats +EXPORT_SYMBOL vmlinux 0xaeffce6d ip_sock_set_mtu_discover +EXPORT_SYMBOL vmlinux 0xaf1bad42 udp_skb_destructor +EXPORT_SYMBOL vmlinux 0xaf2b1a9a jbd2_journal_update_sb_errno +EXPORT_SYMBOL vmlinux 0xaf354bbe cpu_tss_rw +EXPORT_SYMBOL vmlinux 0xaf3dd7dc scsi_logging_level +EXPORT_SYMBOL vmlinux 0xaf6b0d18 udp_disconnect +EXPORT_SYMBOL vmlinux 0xaf7aad5c follow_down +EXPORT_SYMBOL vmlinux 0xaf7c561a filp_close +EXPORT_SYMBOL vmlinux 0xaf860121 ip_fraglist_prepare +EXPORT_SYMBOL vmlinux 0xaf86a124 locks_remove_posix +EXPORT_SYMBOL vmlinux 0xaf929d4d _dev_notice +EXPORT_SYMBOL vmlinux 0xaf9e45e0 filemap_fdatawait_range_keep_errors +EXPORT_SYMBOL vmlinux 0xafa11c9a devm_clk_release_clkdev +EXPORT_SYMBOL vmlinux 0xafa72d6a amd_iommu_enable_device_erratum +EXPORT_SYMBOL vmlinux 0xafa939ed set_pages_uc +EXPORT_SYMBOL vmlinux 0xafb8c6ff copy_user_generic_string +EXPORT_SYMBOL vmlinux 0xafce6df7 inode_init_always +EXPORT_SYMBOL vmlinux 0xafd5ff2c amd_iommu_v2_supported +EXPORT_SYMBOL vmlinux 0xafe39237 fscrypt_decrypt_block_inplace +EXPORT_SYMBOL vmlinux 0xafe8ec9b clkdev_hw_alloc +EXPORT_SYMBOL vmlinux 0xaff99550 configfs_register_subsystem +EXPORT_SYMBOL vmlinux 0xb003da3d phy_queue_state_machine +EXPORT_SYMBOL vmlinux 0xb009f252 may_umount +EXPORT_SYMBOL vmlinux 0xb015617e mdio_bus_type +EXPORT_SYMBOL vmlinux 0xb01bebf9 xfrm_get_acqseq +EXPORT_SYMBOL vmlinux 0xb026e5e6 xfrm_state_lookup +EXPORT_SYMBOL vmlinux 0xb027e298 xfrm_state_alloc +EXPORT_SYMBOL vmlinux 0xb030ea9b inc_zone_page_state +EXPORT_SYMBOL vmlinux 0xb05fc310 sysctl_rmem_max +EXPORT_SYMBOL vmlinux 0xb061a98a mutex_lock_killable +EXPORT_SYMBOL vmlinux 0xb0630b77 kfree_skb_list +EXPORT_SYMBOL vmlinux 0xb089ab27 inet6_unregister_protosw +EXPORT_SYMBOL vmlinux 0xb08d45d5 fbcon_set_tileops +EXPORT_SYMBOL vmlinux 0xb0a0da0c rational_best_approximation +EXPORT_SYMBOL vmlinux 0xb0aed408 ZSTD_compressStream +EXPORT_SYMBOL vmlinux 0xb0b8d836 nf_log_packet +EXPORT_SYMBOL vmlinux 0xb0c5e247 lockref_put_return +EXPORT_SYMBOL vmlinux 0xb0e10781 get_option +EXPORT_SYMBOL vmlinux 0xb0e602eb memmove +EXPORT_SYMBOL vmlinux 0xb0f0f0f7 flow_block_cb_alloc +EXPORT_SYMBOL vmlinux 0xb0f389ee utf8_normalize +EXPORT_SYMBOL vmlinux 0xb101a40b netpoll_parse_options +EXPORT_SYMBOL vmlinux 0xb10e7df4 __kfifo_dma_in_prepare +EXPORT_SYMBOL vmlinux 0xb119a6f8 ndisc_mc_map +EXPORT_SYMBOL vmlinux 0xb121390a probe_irq_on +EXPORT_SYMBOL vmlinux 0xb12cbacb fb_unregister_client +EXPORT_SYMBOL vmlinux 0xb1481ad7 sb_min_blocksize +EXPORT_SYMBOL vmlinux 0xb14ab1ef hdmi_audio_infoframe_init +EXPORT_SYMBOL vmlinux 0xb14fc46a find_next_clump8 +EXPORT_SYMBOL vmlinux 0xb16900ad cmdline_parts_parse +EXPORT_SYMBOL vmlinux 0xb18470da rtnl_kfree_skbs +EXPORT_SYMBOL vmlinux 0xb191ebcd vm_map_pages +EXPORT_SYMBOL vmlinux 0xb19a5453 __per_cpu_offset +EXPORT_SYMBOL vmlinux 0xb19adaeb register_netdev +EXPORT_SYMBOL vmlinux 0xb1a5ab8c on_each_cpu_cond +EXPORT_SYMBOL vmlinux 0xb1b54874 module_layout +EXPORT_SYMBOL vmlinux 0xb1c3a01a oops_in_progress +EXPORT_SYMBOL vmlinux 0xb1ddf995 jiffies_64_to_clock_t +EXPORT_SYMBOL vmlinux 0xb1e12d81 krealloc +EXPORT_SYMBOL vmlinux 0xb202ddf8 pcie_set_mps +EXPORT_SYMBOL vmlinux 0xb2106728 bio_put +EXPORT_SYMBOL vmlinux 0xb219760e ilookup5_nowait +EXPORT_SYMBOL vmlinux 0xb219d56c wbinvd_on_cpu +EXPORT_SYMBOL vmlinux 0xb22e16d5 radix_tree_maybe_preload +EXPORT_SYMBOL vmlinux 0xb2471866 acpi_dev_get_first_match_dev +EXPORT_SYMBOL vmlinux 0xb27b5a85 devfreq_monitor_start +EXPORT_SYMBOL vmlinux 0xb2838c95 netdev_pick_tx +EXPORT_SYMBOL vmlinux 0xb28b8b55 ps2_sliced_command +EXPORT_SYMBOL vmlinux 0xb2a7d731 pin_user_pages_locked +EXPORT_SYMBOL vmlinux 0xb2bcb088 acpi_current_gpe_count +EXPORT_SYMBOL vmlinux 0xb2cd1801 unregister_tcf_proto_ops +EXPORT_SYMBOL vmlinux 0xb2d12488 nf_register_sockopt +EXPORT_SYMBOL vmlinux 0xb2eb5844 inet_frags_fini +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 0xb30894e3 ip_check_defrag +EXPORT_SYMBOL vmlinux 0xb308c97d wait_woken +EXPORT_SYMBOL vmlinux 0xb30b9822 vme_master_set +EXPORT_SYMBOL vmlinux 0xb320cc0e sg_init_one +EXPORT_SYMBOL vmlinux 0xb322274c xfrm_input_unregister_afinfo +EXPORT_SYMBOL vmlinux 0xb326cf79 cdev_alloc +EXPORT_SYMBOL vmlinux 0xb328549d __nla_reserve_nohdr +EXPORT_SYMBOL vmlinux 0xb3390819 task_work_add +EXPORT_SYMBOL vmlinux 0xb3419c6f vme_irq_request +EXPORT_SYMBOL vmlinux 0xb349737d module_refcount +EXPORT_SYMBOL vmlinux 0xb34cd6a2 tcf_idr_create_from_flags +EXPORT_SYMBOL vmlinux 0xb352177e find_first_bit +EXPORT_SYMBOL vmlinux 0xb35e2943 pci_disable_link_state_locked +EXPORT_SYMBOL vmlinux 0xb3635b01 _raw_spin_lock_bh +EXPORT_SYMBOL vmlinux 0xb3687850 out_of_line_wait_on_bit_lock +EXPORT_SYMBOL vmlinux 0xb3863a67 acpi_set_gpe_wake_mask +EXPORT_SYMBOL vmlinux 0xb38776a5 tcf_get_next_chain +EXPORT_SYMBOL vmlinux 0xb390aae1 fqdir_init +EXPORT_SYMBOL vmlinux 0xb39ee9e6 no_llseek +EXPORT_SYMBOL vmlinux 0xb3a2dfdf nmi_panic +EXPORT_SYMBOL vmlinux 0xb3bc21dc fbcon_set_rotate +EXPORT_SYMBOL vmlinux 0xb3c0bb3e __hw_addr_ref_unsync_dev +EXPORT_SYMBOL vmlinux 0xb3c5cc79 pci_find_bus +EXPORT_SYMBOL vmlinux 0xb3c83a75 flow_rule_alloc +EXPORT_SYMBOL vmlinux 0xb3c87859 page_zero_new_buffers +EXPORT_SYMBOL vmlinux 0xb3c8ab50 sock_enable_timestamps +EXPORT_SYMBOL vmlinux 0xb3cecaf1 md_bitmap_end_sync +EXPORT_SYMBOL vmlinux 0xb3d2c76d scsi_hostbyte_string +EXPORT_SYMBOL vmlinux 0xb3dd8cee vm_mmap +EXPORT_SYMBOL vmlinux 0xb3f548ad kmemdup_nul +EXPORT_SYMBOL vmlinux 0xb3f7646e kthread_should_stop +EXPORT_SYMBOL vmlinux 0xb4043948 acpi_execute_simple_method +EXPORT_SYMBOL vmlinux 0xb407a9aa input_mt_assign_slots +EXPORT_SYMBOL vmlinux 0xb417f082 kstrtos8_from_user +EXPORT_SYMBOL vmlinux 0xb423dba1 console_blanked +EXPORT_SYMBOL vmlinux 0xb42e1f2a bd_finish_claiming +EXPORT_SYMBOL vmlinux 0xb442fc11 bdev_stack_limits +EXPORT_SYMBOL vmlinux 0xb4498dcb param_set_invbool +EXPORT_SYMBOL vmlinux 0xb44999ea km_query +EXPORT_SYMBOL vmlinux 0xb44ad4b3 _copy_to_user +EXPORT_SYMBOL vmlinux 0xb4577003 acpi_dev_present +EXPORT_SYMBOL vmlinux 0xb468268f genphy_write_mmd_unsupported +EXPORT_SYMBOL vmlinux 0xb47cca30 csum_ipv6_magic +EXPORT_SYMBOL vmlinux 0xb48d4d22 security_sb_eat_lsm_opts +EXPORT_SYMBOL vmlinux 0xb4985beb ZSTD_resetCStream +EXPORT_SYMBOL vmlinux 0xb49d543d tcp_select_initial_window +EXPORT_SYMBOL vmlinux 0xb4ce61f1 xfrm4_rcv_encap +EXPORT_SYMBOL vmlinux 0xb4d58ef9 devm_request_any_context_irq +EXPORT_SYMBOL vmlinux 0xb4f13d2a abort +EXPORT_SYMBOL vmlinux 0xb5003fef tcp_poll +EXPORT_SYMBOL vmlinux 0xb52ee8be intel_gtt_clear_range +EXPORT_SYMBOL vmlinux 0xb53f2810 tcp_sockets_allocated +EXPORT_SYMBOL vmlinux 0xb5512aea jbd2_journal_clear_features +EXPORT_SYMBOL vmlinux 0xb5522f9c md_handle_request +EXPORT_SYMBOL vmlinux 0xb56a7b6b dump_skip +EXPORT_SYMBOL vmlinux 0xb57343c2 frontswap_shrink +EXPORT_SYMBOL vmlinux 0xb5826efc vfio_pin_pages +EXPORT_SYMBOL vmlinux 0xb58386ac __ip_select_ident +EXPORT_SYMBOL vmlinux 0xb58aeaab kernel_cpustat +EXPORT_SYMBOL vmlinux 0xb59ea399 __generic_file_fsync +EXPORT_SYMBOL vmlinux 0xb5a41049 no_seek_end_llseek +EXPORT_SYMBOL vmlinux 0xb5a459dc unregister_blkdev +EXPORT_SYMBOL vmlinux 0xb5aa7165 dma_pool_destroy +EXPORT_SYMBOL vmlinux 0xb5e19bc9 generic_write_end +EXPORT_SYMBOL vmlinux 0xb5e1e3bb pci_iomap_range +EXPORT_SYMBOL vmlinux 0xb5e73116 flush_delayed_work +EXPORT_SYMBOL vmlinux 0xb601be4c __x86_indirect_thunk_rdx +EXPORT_SYMBOL vmlinux 0xb618bcef devfreq_unregister_opp_notifier +EXPORT_SYMBOL vmlinux 0xb629b357 del_random_ready_callback +EXPORT_SYMBOL vmlinux 0xb633f115 irq_poll_enable +EXPORT_SYMBOL vmlinux 0xb638e566 qdisc_tree_reduce_backlog +EXPORT_SYMBOL vmlinux 0xb63bb80a call_usermodehelper_exec +EXPORT_SYMBOL vmlinux 0xb63d8f92 km_policy_notify +EXPORT_SYMBOL vmlinux 0xb654ef65 acpi_os_read_port +EXPORT_SYMBOL vmlinux 0xb66dbabb sock_create_kern +EXPORT_SYMBOL vmlinux 0xb6727267 phy_find_first +EXPORT_SYMBOL vmlinux 0xb674a534 acpi_unmap_cpu +EXPORT_SYMBOL vmlinux 0xb678366f int_sqrt +EXPORT_SYMBOL vmlinux 0xb67a84bf xp_free +EXPORT_SYMBOL vmlinux 0xb67baae2 nla_reserve +EXPORT_SYMBOL vmlinux 0xb67c9280 utf8cursor +EXPORT_SYMBOL vmlinux 0xb67fec0e uuid_parse +EXPORT_SYMBOL vmlinux 0xb68103ef _dev_crit +EXPORT_SYMBOL vmlinux 0xb691b964 __bread_gfp +EXPORT_SYMBOL vmlinux 0xb6936ffe _bcd2bin +EXPORT_SYMBOL vmlinux 0xb6a68816 find_last_bit +EXPORT_SYMBOL vmlinux 0xb6acaa13 phy_sfp_detach +EXPORT_SYMBOL vmlinux 0xb6cc5e6c pci_enable_msi +EXPORT_SYMBOL vmlinux 0xb70a7a75 simple_transaction_release +EXPORT_SYMBOL vmlinux 0xb71892c0 config_item_get +EXPORT_SYMBOL vmlinux 0xb72577a8 nd_pfn_probe +EXPORT_SYMBOL vmlinux 0xb7330418 scsi_report_bus_reset +EXPORT_SYMBOL vmlinux 0xb737b185 gen_pool_best_fit +EXPORT_SYMBOL vmlinux 0xb738f73d dev_get_by_napi_id +EXPORT_SYMBOL vmlinux 0xb74fba17 page_pool_alloc_pages +EXPORT_SYMBOL vmlinux 0xb7593ddc iosf_mbi_unregister_pmic_bus_access_notifier +EXPORT_SYMBOL vmlinux 0xb778ed0b xfrm_policy_hash_rebuild +EXPORT_SYMBOL vmlinux 0xb77e153b proc_create_data +EXPORT_SYMBOL vmlinux 0xb78debe3 LZ4_decompress_fast_usingDict +EXPORT_SYMBOL vmlinux 0xb79ca728 key_alloc +EXPORT_SYMBOL vmlinux 0xb79dacd0 tc_setup_cb_call +EXPORT_SYMBOL vmlinux 0xb7b065cf serio_bus +EXPORT_SYMBOL vmlinux 0xb7c0f443 sort +EXPORT_SYMBOL vmlinux 0xb7c6db70 sysctl_max_skb_frags +EXPORT_SYMBOL vmlinux 0xb7e2ecc0 register_netdevice_notifier_net +EXPORT_SYMBOL vmlinux 0xb7eebe78 inode_owner_or_capable +EXPORT_SYMBOL vmlinux 0xb7fff9ed seq_put_decimal_ull +EXPORT_SYMBOL vmlinux 0xb80f0009 udp_poll +EXPORT_SYMBOL vmlinux 0xb80f9ec9 kthread_create_worker +EXPORT_SYMBOL vmlinux 0xb814e18a on_each_cpu_mask +EXPORT_SYMBOL vmlinux 0xb82215d1 __tcf_idr_release +EXPORT_SYMBOL vmlinux 0xb822e064 dma_find_channel +EXPORT_SYMBOL vmlinux 0xb82bfbc0 inet_addr_type +EXPORT_SYMBOL vmlinux 0xb82ca0d2 inet_stream_ops +EXPORT_SYMBOL vmlinux 0xb83129db ZSTD_decompressContinue +EXPORT_SYMBOL vmlinux 0xb8341e6b simple_fill_super +EXPORT_SYMBOL vmlinux 0xb8497bcd vfs_dedupe_file_range_one +EXPORT_SYMBOL vmlinux 0xb85e4963 sock_no_connect +EXPORT_SYMBOL vmlinux 0xb868ac5c register_sysrq_key +EXPORT_SYMBOL vmlinux 0xb86f74c5 free_cpumask_var +EXPORT_SYMBOL vmlinux 0xb8746229 flow_rule_match_basic +EXPORT_SYMBOL vmlinux 0xb8785ac1 netpoll_cleanup +EXPORT_SYMBOL vmlinux 0xb882f048 dev_uc_sync +EXPORT_SYMBOL vmlinux 0xb88df7b7 netdev_has_upper_dev_all_rcu +EXPORT_SYMBOL vmlinux 0xb88eaa2b current_in_userns +EXPORT_SYMBOL vmlinux 0xb89b0396 dquot_alloc +EXPORT_SYMBOL vmlinux 0xb89b6e6b guid_parse +EXPORT_SYMBOL vmlinux 0xb8b043f2 kfree_link +EXPORT_SYMBOL vmlinux 0xb8b9f817 kmalloc_order_trace +EXPORT_SYMBOL vmlinux 0xb8e107fc __blkdev_issue_discard +EXPORT_SYMBOL vmlinux 0xb8e7ce2c __put_user_8 +EXPORT_SYMBOL vmlinux 0xb8f2f10d ipv6_getsockopt +EXPORT_SYMBOL vmlinux 0xb9056bb6 remove_conflicting_framebuffers +EXPORT_SYMBOL vmlinux 0xb907513f unpoison_memory +EXPORT_SYMBOL vmlinux 0xb910deab security_binder_transfer_file +EXPORT_SYMBOL vmlinux 0xb911bb58 minmax_running_max +EXPORT_SYMBOL vmlinux 0xb9146101 __dec_node_page_state +EXPORT_SYMBOL vmlinux 0xb9181df5 tty_port_block_til_ready +EXPORT_SYMBOL vmlinux 0xb92c503c fscrypt_free_inode +EXPORT_SYMBOL vmlinux 0xb9369eae tty_devnum +EXPORT_SYMBOL vmlinux 0xb9383acc __sync_dirty_buffer +EXPORT_SYMBOL vmlinux 0xb94339c4 qdisc_put_stab +EXPORT_SYMBOL vmlinux 0xb949e109 locks_copy_conflock +EXPORT_SYMBOL vmlinux 0xb96555fc __cancel_dirty_page +EXPORT_SYMBOL vmlinux 0xb97220ff bitmap_parse +EXPORT_SYMBOL vmlinux 0xb97f7045 acpi_install_gpe_handler +EXPORT_SYMBOL vmlinux 0xb9ad6464 kobject_add +EXPORT_SYMBOL vmlinux 0xb9af1d0d __xa_clear_mark +EXPORT_SYMBOL vmlinux 0xb9c02dff reuseport_add_sock +EXPORT_SYMBOL vmlinux 0xb9c272a2 __sb_end_write +EXPORT_SYMBOL vmlinux 0xb9c5b238 __sk_mem_reduce_allocated +EXPORT_SYMBOL vmlinux 0xb9d111b2 unregister_md_personality +EXPORT_SYMBOL vmlinux 0xb9e276cf wrmsr_safe_regs_on_cpu +EXPORT_SYMBOL vmlinux 0xb9e70d1c tty_do_resize +EXPORT_SYMBOL vmlinux 0xb9e7429c memcpy_toio +EXPORT_SYMBOL vmlinux 0xb9e8e2cc in6addr_sitelocal_allrouters +EXPORT_SYMBOL vmlinux 0xb9eb355d set_bh_page +EXPORT_SYMBOL vmlinux 0xba0973db pnp_release_card_device +EXPORT_SYMBOL vmlinux 0xba0c5665 get_thermal_instance +EXPORT_SYMBOL vmlinux 0xba1008c8 __crc32c_le +EXPORT_SYMBOL vmlinux 0xba1d27e7 user_path_at_empty +EXPORT_SYMBOL vmlinux 0xba1e14e1 pci_pme_active +EXPORT_SYMBOL vmlinux 0xba2c0f03 fc_vport_create +EXPORT_SYMBOL vmlinux 0xba38d8ba starget_for_each_device +EXPORT_SYMBOL vmlinux 0xba497f13 loops_per_jiffy +EXPORT_SYMBOL vmlinux 0xba62ca60 pskb_extract +EXPORT_SYMBOL vmlinux 0xba6f4aab simple_release_fs +EXPORT_SYMBOL vmlinux 0xbac2214b finish_open +EXPORT_SYMBOL vmlinux 0xbad3ed77 netdev_refcnt_read +EXPORT_SYMBOL vmlinux 0xbadcaade blk_set_default_limits +EXPORT_SYMBOL vmlinux 0xbaf86c90 icmp_ndo_send +EXPORT_SYMBOL vmlinux 0xbaffff96 ZSTD_CStreamWorkspaceBound +EXPORT_SYMBOL vmlinux 0xbb0540aa zlib_inflateReset +EXPORT_SYMBOL vmlinux 0xbb05e732 sg_miter_skip +EXPORT_SYMBOL vmlinux 0xbb13595e smp_call_function_many +EXPORT_SYMBOL vmlinux 0xbb15ca46 d_mark_dontcache +EXPORT_SYMBOL vmlinux 0xbb22e990 mipi_dsi_set_maximum_return_packet_size +EXPORT_SYMBOL vmlinux 0xbb24f607 init_cdrom_command +EXPORT_SYMBOL vmlinux 0xbb35675b __bitmap_intersects +EXPORT_SYMBOL vmlinux 0xbb444a42 pci_bus_read_config_byte +EXPORT_SYMBOL vmlinux 0xbb45ba35 pci_alloc_dev +EXPORT_SYMBOL vmlinux 0xbb4afb78 scsi_dma_map +EXPORT_SYMBOL vmlinux 0xbb4f4766 simple_write_to_buffer +EXPORT_SYMBOL vmlinux 0xbb4f92ee t10_pi_type1_crc +EXPORT_SYMBOL vmlinux 0xbb754160 param_get_ushort +EXPORT_SYMBOL vmlinux 0xbb792ab6 pci_set_master +EXPORT_SYMBOL vmlinux 0xbb85ae61 security_sctp_bind_connect +EXPORT_SYMBOL vmlinux 0xbb8e169a vga_switcheroo_handler_flags +EXPORT_SYMBOL vmlinux 0xbbb01e30 fifo_set_limit +EXPORT_SYMBOL vmlinux 0xbbb4c486 configfs_remove_default_groups +EXPORT_SYMBOL vmlinux 0xbbbf2ab7 io_uring_get_socket +EXPORT_SYMBOL vmlinux 0xbbc273a9 scsi_report_opcode +EXPORT_SYMBOL vmlinux 0xbbd94d88 fib_notifier_ops_register +EXPORT_SYMBOL vmlinux 0xbbdbdbda dmaengine_get_unmap_data +EXPORT_SYMBOL vmlinux 0xbbe0b6ce tcp_sock_set_keepidle +EXPORT_SYMBOL vmlinux 0xbbe80fdb kmalloc_order +EXPORT_SYMBOL vmlinux 0xbbfdf7ed tcp_recvmsg +EXPORT_SYMBOL vmlinux 0xbc02b8f3 get_agp_version +EXPORT_SYMBOL vmlinux 0xbc06d1f7 dev_loopback_xmit +EXPORT_SYMBOL vmlinux 0xbc081cb5 dmam_free_coherent +EXPORT_SYMBOL vmlinux 0xbc2031de acpi_processor_get_bios_limit +EXPORT_SYMBOL vmlinux 0xbc25f7cc free_contig_range +EXPORT_SYMBOL vmlinux 0xbc2fc5de ppp_unregister_compressor +EXPORT_SYMBOL vmlinux 0xbc4199d7 tcf_exts_dump_stats +EXPORT_SYMBOL vmlinux 0xbc50aef7 filemap_check_errors +EXPORT_SYMBOL vmlinux 0xbc69128e ipv6_push_frag_opts +EXPORT_SYMBOL vmlinux 0xbc7bb9d9 pci_scan_root_bus +EXPORT_SYMBOL vmlinux 0xbc8126e3 proc_symlink +EXPORT_SYMBOL vmlinux 0xbc8687f8 textsearch_find_continuous +EXPORT_SYMBOL vmlinux 0xbcab6ee6 sscanf +EXPORT_SYMBOL vmlinux 0xbcb34473 __dynamic_dev_dbg +EXPORT_SYMBOL vmlinux 0xbcba1c47 skb_orphan_partial +EXPORT_SYMBOL vmlinux 0xbcbdf60f kstrtos8 +EXPORT_SYMBOL vmlinux 0xbcc308bb strnlen_user +EXPORT_SYMBOL vmlinux 0xbccf3f29 phy_device_remove +EXPORT_SYMBOL vmlinux 0xbcd5f841 __hw_addr_ref_sync_dev +EXPORT_SYMBOL vmlinux 0xbcead5e1 netlink_unicast +EXPORT_SYMBOL vmlinux 0xbd076ec6 netif_receive_skb +EXPORT_SYMBOL vmlinux 0xbd09e016 blk_set_runtime_active +EXPORT_SYMBOL vmlinux 0xbd1e61b9 tcp_openreq_init_rwin +EXPORT_SYMBOL vmlinux 0xbd364716 input_get_keycode +EXPORT_SYMBOL vmlinux 0xbd462b55 __kfifo_init +EXPORT_SYMBOL vmlinux 0xbd6841d4 crc16 +EXPORT_SYMBOL vmlinux 0xbd6940b4 pci_read_config_dword +EXPORT_SYMBOL vmlinux 0xbd78d62e ns_capable_setid +EXPORT_SYMBOL vmlinux 0xbda5ba09 jbd2_transaction_committed +EXPORT_SYMBOL vmlinux 0xbdbd3e93 __cleancache_invalidate_page +EXPORT_SYMBOL vmlinux 0xbdc881fe blk_mq_start_hw_queues +EXPORT_SYMBOL vmlinux 0xbdec321c i8042_install_filter +EXPORT_SYMBOL vmlinux 0xbdeeb714 skb_unlink +EXPORT_SYMBOL vmlinux 0xbdf764b0 bd_abort_claiming +EXPORT_SYMBOL vmlinux 0xbdfb6dbb __fentry__ +EXPORT_SYMBOL vmlinux 0xbe0110e7 acpi_set_gpe +EXPORT_SYMBOL vmlinux 0xbe104c33 phy_detach +EXPORT_SYMBOL vmlinux 0xbe2f93f8 devfreq_remove_governor +EXPORT_SYMBOL vmlinux 0xbe31b1c1 flow_rule_match_mpls +EXPORT_SYMBOL vmlinux 0xbe460f5b mnt_set_expiry +EXPORT_SYMBOL vmlinux 0xbe4839c7 scsi_cmd_ioctl +EXPORT_SYMBOL vmlinux 0xbe49252c acpi_os_write_port +EXPORT_SYMBOL vmlinux 0xbe4eb6ed secure_dccpv6_sequence_number +EXPORT_SYMBOL vmlinux 0xbe5a24e9 xxh32_copy_state +EXPORT_SYMBOL vmlinux 0xbe6a866f __wait_on_bit +EXPORT_SYMBOL vmlinux 0xbe7e05a8 acpi_tb_install_and_load_table +EXPORT_SYMBOL vmlinux 0xbea72db4 ptp_clock_unregister +EXPORT_SYMBOL vmlinux 0xbeb9e6d1 iov_iter_init +EXPORT_SYMBOL vmlinux 0xbebb6ea2 input_event +EXPORT_SYMBOL vmlinux 0xbebfb2c9 mdiobus_write +EXPORT_SYMBOL vmlinux 0xbed4a9a8 blkdev_fsync +EXPORT_SYMBOL vmlinux 0xbed70a5a __skb_gso_segment +EXPORT_SYMBOL vmlinux 0xbedadc20 free_buffer_head +EXPORT_SYMBOL vmlinux 0xbee73d44 blackhole_netdev +EXPORT_SYMBOL vmlinux 0xbef43296 console_conditional_schedule +EXPORT_SYMBOL vmlinux 0xbefa51a3 gen_pool_add_owner +EXPORT_SYMBOL vmlinux 0xbefcb867 lock_sock_fast +EXPORT_SYMBOL vmlinux 0xbf0524b7 alloc_buffer_head +EXPORT_SYMBOL vmlinux 0xbf0bee9b agp_generic_alloc_by_type +EXPORT_SYMBOL vmlinux 0xbf1f7007 vga_remove_vgacon +EXPORT_SYMBOL vmlinux 0xbf3193ec acpi_unregister_ioapic +EXPORT_SYMBOL vmlinux 0xbf322f09 sk_stream_wait_connect +EXPORT_SYMBOL vmlinux 0xbf468098 d_set_d_op +EXPORT_SYMBOL vmlinux 0xbf4e0305 ip_tunnel_get_iflink +EXPORT_SYMBOL vmlinux 0xbf59c419 posix_acl_init +EXPORT_SYMBOL vmlinux 0xbf6c5ff1 dev_pm_opp_register_notifier +EXPORT_SYMBOL vmlinux 0xbf706438 pv_ops +EXPORT_SYMBOL vmlinux 0xbf70f166 blk_mq_end_request +EXPORT_SYMBOL vmlinux 0xbf7a3bd8 seg6_hmac_net_init +EXPORT_SYMBOL vmlinux 0xbf7a95e3 try_lookup_one_len +EXPORT_SYMBOL vmlinux 0xbf7d40da __alloc_disk_node +EXPORT_SYMBOL vmlinux 0xbf91234b param_get_long +EXPORT_SYMBOL vmlinux 0xbf99fdb0 copy_page_to_iter +EXPORT_SYMBOL vmlinux 0xbf9bcc8d __cap_empty_set +EXPORT_SYMBOL vmlinux 0xbfa6b701 xfrm_unregister_type +EXPORT_SYMBOL vmlinux 0xbfa75018 scsi_remove_device +EXPORT_SYMBOL vmlinux 0xbfafba40 gnet_stats_start_copy +EXPORT_SYMBOL vmlinux 0xbfb3936c __neigh_create +EXPORT_SYMBOL vmlinux 0xbfc177bc iowrite32_rep +EXPORT_SYMBOL vmlinux 0xbfd73a5e create_empty_buffers +EXPORT_SYMBOL vmlinux 0xbfd92b67 cdrom_mode_select +EXPORT_SYMBOL vmlinux 0xbfdcb43a __x86_indirect_thunk_r11 +EXPORT_SYMBOL vmlinux 0xbfee3ad5 loop_unregister_transfer +EXPORT_SYMBOL vmlinux 0xc0041424 done_path_create +EXPORT_SYMBOL vmlinux 0xc0055509 __sb_start_write +EXPORT_SYMBOL vmlinux 0xc0100211 __skb_free_datagram_locked +EXPORT_SYMBOL vmlinux 0xc01e3fd6 skb_add_rx_frag +EXPORT_SYMBOL vmlinux 0xc025016c flow_keys_dissector +EXPORT_SYMBOL vmlinux 0xc03a0906 pci_disable_msi +EXPORT_SYMBOL vmlinux 0xc05e65f6 mark_info_dirty +EXPORT_SYMBOL vmlinux 0xc06c5fe6 pnp_unregister_card_driver +EXPORT_SYMBOL vmlinux 0xc072d788 request_firmware_into_buf +EXPORT_SYMBOL vmlinux 0xc0732d30 __cpuhp_setup_state_cpuslocked +EXPORT_SYMBOL vmlinux 0xc0763484 rfkill_blocked +EXPORT_SYMBOL vmlinux 0xc079fcbc vfs_parse_fs_string +EXPORT_SYMBOL vmlinux 0xc07b0863 fb_destroy_modedb +EXPORT_SYMBOL vmlinux 0xc080d581 dquot_resume +EXPORT_SYMBOL vmlinux 0xc0810ee3 generic_parse_monolithic +EXPORT_SYMBOL vmlinux 0xc096e23d hdmi_drm_infoframe_init +EXPORT_SYMBOL vmlinux 0xc0a3d105 find_next_bit +EXPORT_SYMBOL vmlinux 0xc0b2664d devlink_dpipe_header_ipv4 +EXPORT_SYMBOL vmlinux 0xc0bca0f1 ZSTD_nextSrcSizeToDecompress +EXPORT_SYMBOL vmlinux 0xc0be1ed8 ns_capable_noaudit +EXPORT_SYMBOL vmlinux 0xc0ce6e49 iov_iter_revert +EXPORT_SYMBOL vmlinux 0xc0d5feee vfs_statx +EXPORT_SYMBOL vmlinux 0xc0f249a2 neigh_ifdown +EXPORT_SYMBOL vmlinux 0xc0f518c5 sock_alloc_send_skb +EXPORT_SYMBOL vmlinux 0xc0f79560 inet_dev_addr_type +EXPORT_SYMBOL vmlinux 0xc0ff12fb nla_strdup +EXPORT_SYMBOL vmlinux 0xc111ae64 intel_gtt_get +EXPORT_SYMBOL vmlinux 0xc1179daa kstrtou8_from_user +EXPORT_SYMBOL vmlinux 0xc117ba16 dquot_operations +EXPORT_SYMBOL vmlinux 0xc11a0494 sk_stream_wait_memory +EXPORT_SYMBOL vmlinux 0xc1351bf9 vfs_readlink +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 0xc156c981 refcount_dec_and_mutex_lock +EXPORT_SYMBOL vmlinux 0xc16410b9 ZSTD_getDictID_fromDDict +EXPORT_SYMBOL vmlinux 0xc16be39d iter_div_u64_rem +EXPORT_SYMBOL vmlinux 0xc172f2f5 write_cache_pages +EXPORT_SYMBOL vmlinux 0xc181ad40 inet_ioctl +EXPORT_SYMBOL vmlinux 0xc1848059 xsk_umem_uses_need_wakeup +EXPORT_SYMBOL vmlinux 0xc1967ef0 __neigh_set_probe_once +EXPORT_SYMBOL vmlinux 0xc1a9f1bc input_mt_destroy_slots +EXPORT_SYMBOL vmlinux 0xc1aeb5d0 fs_param_is_string +EXPORT_SYMBOL vmlinux 0xc1baaafb napi_disable +EXPORT_SYMBOL vmlinux 0xc1c679d8 neigh_direct_output +EXPORT_SYMBOL vmlinux 0xc1d62eb6 posix_acl_chmod +EXPORT_SYMBOL vmlinux 0xc1d8cfaf __fdget +EXPORT_SYMBOL vmlinux 0xc20c5dc0 devm_devfreq_register_opp_notifier +EXPORT_SYMBOL vmlinux 0xc228637b flow_rule_match_ports +EXPORT_SYMBOL vmlinux 0xc22b62a7 vm_map_ram +EXPORT_SYMBOL vmlinux 0xc22e4848 alloc_pages_current +EXPORT_SYMBOL vmlinux 0xc2424641 agp3_generic_cleanup +EXPORT_SYMBOL vmlinux 0xc24672aa input_register_handler +EXPORT_SYMBOL vmlinux 0xc267960e utf8_validate +EXPORT_SYMBOL vmlinux 0xc26b2bdb dm_io +EXPORT_SYMBOL vmlinux 0xc26b5ae8 blk_queue_bounce_limit +EXPORT_SYMBOL vmlinux 0xc273f343 copy_string_kernel +EXPORT_SYMBOL vmlinux 0xc278c965 cpu_all_bits +EXPORT_SYMBOL vmlinux 0xc29957c3 __x86_indirect_thunk_rcx +EXPORT_SYMBOL vmlinux 0xc29bf967 strspn +EXPORT_SYMBOL vmlinux 0xc29d943d pci_bus_read_dev_vendor_id +EXPORT_SYMBOL vmlinux 0xc2a17ebe seqno_fence_ops +EXPORT_SYMBOL vmlinux 0xc2c7e94f netdev_printk +EXPORT_SYMBOL vmlinux 0xc2e587d1 reset_devices +EXPORT_SYMBOL vmlinux 0xc2f5e100 input_set_abs_params +EXPORT_SYMBOL vmlinux 0xc2f80126 ip_tunnel_header_ops +EXPORT_SYMBOL vmlinux 0xc306c3a8 page_frag_alloc +EXPORT_SYMBOL vmlinux 0xc309553a unregister_cdrom +EXPORT_SYMBOL vmlinux 0xc30d219c page_pool_update_nid +EXPORT_SYMBOL vmlinux 0xc310b981 strnstr +EXPORT_SYMBOL vmlinux 0xc319bc54 build_skb +EXPORT_SYMBOL vmlinux 0xc31be6c0 inode_newsize_ok +EXPORT_SYMBOL vmlinux 0xc31ca6fd fc_vport_terminate +EXPORT_SYMBOL vmlinux 0xc31db0ce is_vmalloc_addr +EXPORT_SYMBOL vmlinux 0xc32c71af register_inetaddr_validator_notifier +EXPORT_SYMBOL vmlinux 0xc335bf93 dcache_dir_open +EXPORT_SYMBOL vmlinux 0xc348f77d jbd2_journal_init_jbd_inode +EXPORT_SYMBOL vmlinux 0xc35aab72 blk_mq_alloc_tag_set +EXPORT_SYMBOL vmlinux 0xc36645de flow_indr_dev_unregister +EXPORT_SYMBOL vmlinux 0xc36a3bd4 __acpi_handle_debug +EXPORT_SYMBOL vmlinux 0xc36e3739 filemap_fdatawait_keep_errors +EXPORT_SYMBOL vmlinux 0xc3762aec mempool_alloc +EXPORT_SYMBOL vmlinux 0xc37706ba get_task_exe_file +EXPORT_SYMBOL vmlinux 0xc377a105 tcp_mtup_init +EXPORT_SYMBOL vmlinux 0xc37f9c6e cpufreq_update_policy +EXPORT_SYMBOL vmlinux 0xc3801231 pci_fixup_cardbus +EXPORT_SYMBOL vmlinux 0xc38c83b8 mod_timer +EXPORT_SYMBOL vmlinux 0xc393bf9c pcie_get_mps +EXPORT_SYMBOL vmlinux 0xc3942966 override_creds +EXPORT_SYMBOL vmlinux 0xc3aaf0a9 __put_user_1 +EXPORT_SYMBOL vmlinux 0xc3bc72ad trace_print_array_seq +EXPORT_SYMBOL vmlinux 0xc3c6b5ed inet_get_local_port_range +EXPORT_SYMBOL vmlinux 0xc3cee300 scsi_command_normalize_sense +EXPORT_SYMBOL vmlinux 0xc3e033e7 d_instantiate_anon +EXPORT_SYMBOL vmlinux 0xc3eecada param_ops_invbool +EXPORT_SYMBOL vmlinux 0xc3f1dd72 nf_unregister_net_hooks +EXPORT_SYMBOL vmlinux 0xc3ff38c2 down_read_trylock +EXPORT_SYMBOL vmlinux 0xc41bc980 iwe_stream_add_value +EXPORT_SYMBOL vmlinux 0xc41e3748 mipi_dsi_dcs_set_display_off +EXPORT_SYMBOL vmlinux 0xc4212ab9 qdisc_class_hash_insert +EXPORT_SYMBOL vmlinux 0xc42182fa fbcon_rotate_ccw +EXPORT_SYMBOL vmlinux 0xc42dcb99 acpi_evaluate_ost +EXPORT_SYMBOL vmlinux 0xc4437721 __cgroup_bpf_run_filter_sk +EXPORT_SYMBOL vmlinux 0xc45448c6 agp_generic_enable +EXPORT_SYMBOL vmlinux 0xc4777aa9 __ctzsi2 +EXPORT_SYMBOL vmlinux 0xc47f6f15 buffer_check_dirty_writeback +EXPORT_SYMBOL vmlinux 0xc4ae915e arch_touch_nmi_watchdog +EXPORT_SYMBOL vmlinux 0xc4affd92 dev_mc_del +EXPORT_SYMBOL vmlinux 0xc4b5e277 serio_unregister_port +EXPORT_SYMBOL vmlinux 0xc4b9a595 xfrm_alloc_spi +EXPORT_SYMBOL vmlinux 0xc4d76adb xfrm_find_acq +EXPORT_SYMBOL vmlinux 0xc4e94e7e seq_put_decimal_ll +EXPORT_SYMBOL vmlinux 0xc4ef257f config_group_init_type_name +EXPORT_SYMBOL vmlinux 0xc4f109b0 skb_put +EXPORT_SYMBOL vmlinux 0xc4f7ba54 generic_pipe_buf_release +EXPORT_SYMBOL vmlinux 0xc50db700 jbd2_journal_inode_ranged_wait +EXPORT_SYMBOL vmlinux 0xc528a49a queued_write_lock_slowpath +EXPORT_SYMBOL vmlinux 0xc52935d7 jbd2__journal_start +EXPORT_SYMBOL vmlinux 0xc5355348 nd_region_release_lane +EXPORT_SYMBOL vmlinux 0xc535c395 tcp_sock_set_keepintvl +EXPORT_SYMBOL vmlinux 0xc5447536 inet_sendmsg +EXPORT_SYMBOL vmlinux 0xc5476af6 config_item_init_type_name +EXPORT_SYMBOL vmlinux 0xc5534d64 ioread16 +EXPORT_SYMBOL vmlinux 0xc558530d profile_pc +EXPORT_SYMBOL vmlinux 0xc55ae7d5 pci_bus_set_ops +EXPORT_SYMBOL vmlinux 0xc5731c7a tty_unlock +EXPORT_SYMBOL vmlinux 0xc57709d4 unpin_user_page +EXPORT_SYMBOL vmlinux 0xc57c48a3 idr_get_next +EXPORT_SYMBOL vmlinux 0xc5850110 printk +EXPORT_SYMBOL vmlinux 0xc5985255 tcf_classify +EXPORT_SYMBOL vmlinux 0xc599a772 security_xfrm_state_delete +EXPORT_SYMBOL vmlinux 0xc5b68b16 blkdev_get +EXPORT_SYMBOL vmlinux 0xc5b6f236 queue_work_on +EXPORT_SYMBOL vmlinux 0xc5d60a9a iommu_get_dma_cookie +EXPORT_SYMBOL vmlinux 0xc5d9c46c agp_try_unsupported_boot +EXPORT_SYMBOL vmlinux 0xc5e4a5d1 cpumask_next +EXPORT_SYMBOL vmlinux 0xc5e5573a frame_vector_to_pages +EXPORT_SYMBOL vmlinux 0xc5e74216 release_resource +EXPORT_SYMBOL vmlinux 0xc5f7e801 sg_last +EXPORT_SYMBOL vmlinux 0xc5fb9006 __skb_checksum_complete +EXPORT_SYMBOL vmlinux 0xc6055c9e kvasprintf_const +EXPORT_SYMBOL vmlinux 0xc6087183 tty_port_init +EXPORT_SYMBOL vmlinux 0xc60d0620 __num_online_cpus +EXPORT_SYMBOL vmlinux 0xc61ca65e iowrite64be_hi_lo +EXPORT_SYMBOL vmlinux 0xc62a0f00 mipi_dsi_dcs_get_display_brightness +EXPORT_SYMBOL vmlinux 0xc62ecea0 bh_submit_read +EXPORT_SYMBOL vmlinux 0xc631580a console_unlock +EXPORT_SYMBOL vmlinux 0xc633d82d phy_unregister_fixup +EXPORT_SYMBOL vmlinux 0xc63fbfc3 dquot_load_quota_inode +EXPORT_SYMBOL vmlinux 0xc655840d seg6_hmac_net_exit +EXPORT_SYMBOL vmlinux 0xc65e4e97 secure_dccp_sequence_number +EXPORT_SYMBOL vmlinux 0xc666a132 crc_t10dif +EXPORT_SYMBOL vmlinux 0xc66828d6 gro_find_complete_by_type +EXPORT_SYMBOL vmlinux 0xc66a8304 cpu_rmap_add +EXPORT_SYMBOL vmlinux 0xc66d919f dm_table_get_mode +EXPORT_SYMBOL vmlinux 0xc683ab59 iov_iter_npages +EXPORT_SYMBOL vmlinux 0xc6910aa0 do_trace_rdpmc +EXPORT_SYMBOL vmlinux 0xc695b98a phy_attached_info_irq +EXPORT_SYMBOL vmlinux 0xc6aa2ab6 gnet_stats_copy_app +EXPORT_SYMBOL vmlinux 0xc6be83fc dquot_claim_space_nodirty +EXPORT_SYMBOL vmlinux 0xc6c9278c d_genocide +EXPORT_SYMBOL vmlinux 0xc6cb465a __kfifo_max_r +EXPORT_SYMBOL vmlinux 0xc6cbbc89 capable +EXPORT_SYMBOL vmlinux 0xc6cd1207 xfrm_policy_destroy +EXPORT_SYMBOL vmlinux 0xc6d09aa9 release_firmware +EXPORT_SYMBOL vmlinux 0xc6d824b6 mdiobus_alloc_size +EXPORT_SYMBOL vmlinux 0xc6e37a6d dqget +EXPORT_SYMBOL vmlinux 0xc6e93b50 filemap_map_pages +EXPORT_SYMBOL vmlinux 0xc6eaca16 vfs_iter_write +EXPORT_SYMBOL vmlinux 0xc6ee6ded request_key_rcu +EXPORT_SYMBOL vmlinux 0xc6f46339 init_timer_key +EXPORT_SYMBOL vmlinux 0xc6fcc6ce locks_free_lock +EXPORT_SYMBOL vmlinux 0xc708f1fe ec_write +EXPORT_SYMBOL vmlinux 0xc7124dda pcix_get_max_mmrbc +EXPORT_SYMBOL vmlinux 0xc717a15f __d_lookup_done +EXPORT_SYMBOL vmlinux 0xc71b6eea proc_set_size +EXPORT_SYMBOL vmlinux 0xc71e6be2 xfrm_register_type +EXPORT_SYMBOL vmlinux 0xc7208c3a serial8250_resume_port +EXPORT_SYMBOL vmlinux 0xc723069c blkdev_get_by_dev +EXPORT_SYMBOL vmlinux 0xc72a751b inet_frag_destroy +EXPORT_SYMBOL vmlinux 0xc72b3569 security_skb_classify_flow +EXPORT_SYMBOL vmlinux 0xc7342dff bio_alloc_bioset +EXPORT_SYMBOL vmlinux 0xc73ff5e2 compat_ptr_ioctl +EXPORT_SYMBOL vmlinux 0xc75c5d5a pci_match_id +EXPORT_SYMBOL vmlinux 0xc77db502 vga_switcheroo_client_fb_set +EXPORT_SYMBOL vmlinux 0xc781bd9f rfkill_resume_polling +EXPORT_SYMBOL vmlinux 0xc7856a3d inet6addr_notifier_call_chain +EXPORT_SYMBOL vmlinux 0xc78590cb get_user_pages_locked +EXPORT_SYMBOL vmlinux 0xc79bcd36 dm_vcalloc +EXPORT_SYMBOL vmlinux 0xc7a4d90f fc_remote_port_rolechg +EXPORT_SYMBOL vmlinux 0xc7a4fbed rtnl_lock +EXPORT_SYMBOL vmlinux 0xc7bb994c blkdev_issue_flush +EXPORT_SYMBOL vmlinux 0xc7c1107a LZ4_decompress_safe +EXPORT_SYMBOL vmlinux 0xc7c3568e refresh_frequency_limits +EXPORT_SYMBOL vmlinux 0xc7d029c9 backlight_device_get_by_type +EXPORT_SYMBOL vmlinux 0xc7d094b5 dm_read_arg_group +EXPORT_SYMBOL vmlinux 0xc7dc7d16 udp_lib_unhash +EXPORT_SYMBOL vmlinux 0xc7e7aa23 timestamp_truncate +EXPORT_SYMBOL vmlinux 0xc7e8f57e genphy_setup_forced +EXPORT_SYMBOL vmlinux 0xc809570f unix_get_socket +EXPORT_SYMBOL vmlinux 0xc80ab559 swake_up_one +EXPORT_SYMBOL vmlinux 0xc81e91a8 napi_busy_loop +EXPORT_SYMBOL vmlinux 0xc81f25fc sock_cmsg_send +EXPORT_SYMBOL vmlinux 0xc8220186 revalidate_disk +EXPORT_SYMBOL vmlinux 0xc82fb2d7 dm_put_device +EXPORT_SYMBOL vmlinux 0xc84a0a7e seq_hlist_start_rcu +EXPORT_SYMBOL vmlinux 0xc858a614 nla_reserve_nohdr +EXPORT_SYMBOL vmlinux 0xc869ac89 xfrm_policy_walk +EXPORT_SYMBOL vmlinux 0xc872fd85 in6addr_interfacelocal_allnodes +EXPORT_SYMBOL vmlinux 0xc88132b9 mark_page_accessed +EXPORT_SYMBOL vmlinux 0xc8827b75 sysctl_vals +EXPORT_SYMBOL vmlinux 0xc890c008 zlib_deflateEnd +EXPORT_SYMBOL vmlinux 0xc89488f0 netdev_unbind_sb_channel +EXPORT_SYMBOL vmlinux 0xc89cc1a1 genphy_c37_config_aneg +EXPORT_SYMBOL vmlinux 0xc89d9490 I_BDEV +EXPORT_SYMBOL vmlinux 0xc8a91ad0 tcf_block_put +EXPORT_SYMBOL vmlinux 0xc8a91f5b cpumask_local_spread +EXPORT_SYMBOL vmlinux 0xc8e7622c inetpeer_invalidate_tree +EXPORT_SYMBOL vmlinux 0xc8f15401 fb_pan_display +EXPORT_SYMBOL vmlinux 0xc9216a82 recalibrate_cpu_khz +EXPORT_SYMBOL vmlinux 0xc93e8461 acpi_get_event_resources +EXPORT_SYMBOL vmlinux 0xc93e98d9 dev_set_group +EXPORT_SYMBOL vmlinux 0xc940036d acpi_bus_get_device +EXPORT_SYMBOL vmlinux 0xc95225c2 mnt_drop_write_file +EXPORT_SYMBOL vmlinux 0xc9577148 dma_direct_unmap_page +EXPORT_SYMBOL vmlinux 0xc959d152 __stack_chk_fail +EXPORT_SYMBOL vmlinux 0xc95afd08 seq_lseek +EXPORT_SYMBOL vmlinux 0xc9634df9 in6addr_linklocal_allrouters +EXPORT_SYMBOL vmlinux 0xc972449f mempool_alloc_slab +EXPORT_SYMBOL vmlinux 0xc9822234 clk_register_clkdev +EXPORT_SYMBOL vmlinux 0xc98ed63a register_console +EXPORT_SYMBOL vmlinux 0xc9b559a1 skb_checksum_trimmed +EXPORT_SYMBOL vmlinux 0xc9c9183a phy_ethtool_get_link_ksettings +EXPORT_SYMBOL vmlinux 0xc9df055a xfrm_policy_walk_init +EXPORT_SYMBOL vmlinux 0xc9f34c1d acpi_acquire_global_lock +EXPORT_SYMBOL vmlinux 0xca046610 pci_read_config_word +EXPORT_SYMBOL vmlinux 0xca15413f ZSTD_resetDStream +EXPORT_SYMBOL vmlinux 0xca1ea2c7 blk_set_stacking_limits +EXPORT_SYMBOL vmlinux 0xca21ebd3 bitmap_free +EXPORT_SYMBOL vmlinux 0xca2ee96f find_inode_rcu +EXPORT_SYMBOL vmlinux 0xca34e43f filemap_flush +EXPORT_SYMBOL vmlinux 0xca3d5485 __alloc_skb +EXPORT_SYMBOL vmlinux 0xca402250 inet_frag_reasm_finish +EXPORT_SYMBOL vmlinux 0xca431c05 wake_bit_function +EXPORT_SYMBOL vmlinux 0xca486c02 fifo_create_dflt +EXPORT_SYMBOL vmlinux 0xca786268 dma_direct_sync_single_for_cpu +EXPORT_SYMBOL vmlinux 0xca7edf54 generic_fadvise +EXPORT_SYMBOL vmlinux 0xca83d6f0 blk_integrity_merge_rq +EXPORT_SYMBOL vmlinux 0xca8d5369 param_ops_short +EXPORT_SYMBOL vmlinux 0xca8db3d5 __remove_inode_hash +EXPORT_SYMBOL vmlinux 0xca8f97cd vfs_ioctl +EXPORT_SYMBOL vmlinux 0xca9360b5 rb_next +EXPORT_SYMBOL vmlinux 0xca9beaa4 __xa_store +EXPORT_SYMBOL vmlinux 0xca9ecad0 register_netdevice +EXPORT_SYMBOL vmlinux 0xcaad46de forget_cached_acl +EXPORT_SYMBOL vmlinux 0xcaae6162 pci_request_selected_regions_exclusive +EXPORT_SYMBOL vmlinux 0xcacc0f9c sock_register +EXPORT_SYMBOL vmlinux 0xcad1aca8 acpi_exception +EXPORT_SYMBOL vmlinux 0xcadbe31a tc_setup_cb_add +EXPORT_SYMBOL vmlinux 0xcae5c2ea flow_rule_match_meta +EXPORT_SYMBOL vmlinux 0xcae88f64 dput +EXPORT_SYMBOL vmlinux 0xcaf2c603 scsi_sd_pm_domain +EXPORT_SYMBOL vmlinux 0xcb0387f8 pci_lost_interrupt +EXPORT_SYMBOL vmlinux 0xcb26aebd get_amd_iommu +EXPORT_SYMBOL vmlinux 0xcb3ae215 call_blocking_lsm_notifier +EXPORT_SYMBOL vmlinux 0xcb3b1fd2 blk_integrity_register +EXPORT_SYMBOL vmlinux 0xcb45b139 mipi_dsi_dcs_write +EXPORT_SYMBOL vmlinux 0xcb5bc039 scsi_add_host_with_dma +EXPORT_SYMBOL vmlinux 0xcb733bf2 acpi_bus_set_power +EXPORT_SYMBOL vmlinux 0xcb8bf65f rtnl_create_link +EXPORT_SYMBOL vmlinux 0xcb8c5747 is_subdir +EXPORT_SYMBOL vmlinux 0xcb9b5eba sock_from_file +EXPORT_SYMBOL vmlinux 0xcb9e1a22 acpi_os_map_generic_address +EXPORT_SYMBOL vmlinux 0xcba4abe3 list_sort +EXPORT_SYMBOL vmlinux 0xcbadbdc9 devm_kvasprintf +EXPORT_SYMBOL vmlinux 0xcbb488be dev_get_by_index_rcu +EXPORT_SYMBOL vmlinux 0xcbc88a23 ZSTD_isFrame +EXPORT_SYMBOL vmlinux 0xcbca9229 tcp_mmap +EXPORT_SYMBOL vmlinux 0xcbcad3c9 jbd2_journal_forget +EXPORT_SYMBOL vmlinux 0xcbd4898c fortify_panic +EXPORT_SYMBOL vmlinux 0xcbe6cab1 dev_get_by_name +EXPORT_SYMBOL vmlinux 0xcbf195c7 blk_queue_stack_limits +EXPORT_SYMBOL vmlinux 0xcbfb33e4 init_opal_dev +EXPORT_SYMBOL vmlinux 0xcc191718 kfree_skb_partial +EXPORT_SYMBOL vmlinux 0xcc1b882a idr_get_next_ul +EXPORT_SYMBOL vmlinux 0xcc248d26 serial8250_suspend_port +EXPORT_SYMBOL vmlinux 0xcc28e7b0 xsk_umem_consume_tx_done +EXPORT_SYMBOL vmlinux 0xcc29eb9b skb_dump +EXPORT_SYMBOL vmlinux 0xcc328a5c reservation_ww_class +EXPORT_SYMBOL vmlinux 0xcc445ceb __sg_page_iter_dma_next +EXPORT_SYMBOL vmlinux 0xcc5005fe msleep_interruptible +EXPORT_SYMBOL vmlinux 0xcc5c2df4 trace_print_symbols_seq +EXPORT_SYMBOL vmlinux 0xcc5d22d9 can_do_mlock +EXPORT_SYMBOL vmlinux 0xcc66bb77 vmalloc_to_page +EXPORT_SYMBOL vmlinux 0xcc99ef58 bdi_register +EXPORT_SYMBOL vmlinux 0xcca1b904 framebuffer_alloc +EXPORT_SYMBOL vmlinux 0xcca5f587 xsk_set_rx_need_wakeup +EXPORT_SYMBOL vmlinux 0xcca66a4c tcp_disconnect +EXPORT_SYMBOL vmlinux 0xccb97cc6 skb_pull +EXPORT_SYMBOL vmlinux 0xccc21f5e input_get_new_minor +EXPORT_SYMBOL vmlinux 0xccc758d8 nla_policy_len +EXPORT_SYMBOL vmlinux 0xccd4c999 __sg_page_iter_start +EXPORT_SYMBOL vmlinux 0xccecd022 pci_bus_write_config_dword +EXPORT_SYMBOL vmlinux 0xccef37e4 ZSTD_DStreamOutSize +EXPORT_SYMBOL vmlinux 0xccf700c6 netif_carrier_on +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 0xcd256667 tcp_md5_needed +EXPORT_SYMBOL vmlinux 0xcd279169 nla_find +EXPORT_SYMBOL vmlinux 0xcd50a21a insert_inode_locked +EXPORT_SYMBOL vmlinux 0xcd5a367c build_skb_around +EXPORT_SYMBOL vmlinux 0xcd5c2bcb page_symlink +EXPORT_SYMBOL vmlinux 0xcd63ea9a set_posix_acl +EXPORT_SYMBOL vmlinux 0xcd6d2730 flow_rule_match_control +EXPORT_SYMBOL vmlinux 0xcd6d6070 nvdimm_namespace_locked +EXPORT_SYMBOL vmlinux 0xcd8152ef clk_bulk_get +EXPORT_SYMBOL vmlinux 0xcd8308fb skb_copy_and_csum_dev +EXPORT_SYMBOL vmlinux 0xcd8ac691 scsi_remove_target +EXPORT_SYMBOL vmlinux 0xcd8ce890 acpi_format_exception +EXPORT_SYMBOL vmlinux 0xcdb0f995 elv_rb_add +EXPORT_SYMBOL vmlinux 0xcdc39c9e security_ismaclabel +EXPORT_SYMBOL vmlinux 0xcdc562ae bio_copy_data +EXPORT_SYMBOL vmlinux 0xcdce2de9 agp_allocate_memory +EXPORT_SYMBOL vmlinux 0xcdd5dd4d get_tree_single_reconf +EXPORT_SYMBOL vmlinux 0xcdde454b phy_driver_unregister +EXPORT_SYMBOL vmlinux 0xcde2b085 mdiobus_unregister +EXPORT_SYMBOL vmlinux 0xcde77bcc free_opal_dev +EXPORT_SYMBOL vmlinux 0xce1ea253 pci_assign_resource +EXPORT_SYMBOL vmlinux 0xce22d240 put_ipc_ns +EXPORT_SYMBOL vmlinux 0xce2840e7 irq_set_irq_wake +EXPORT_SYMBOL vmlinux 0xce3864eb ZSTD_compress_usingDict +EXPORT_SYMBOL vmlinux 0xce3ceeda __xfrm_dst_lookup +EXPORT_SYMBOL vmlinux 0xce3fae81 drop_nlink +EXPORT_SYMBOL vmlinux 0xce4cdb8e fb_find_best_mode +EXPORT_SYMBOL vmlinux 0xce4e47b6 __kfifo_skip_r +EXPORT_SYMBOL vmlinux 0xce50e5de ZSTD_compress_usingCDict +EXPORT_SYMBOL vmlinux 0xce5ac24f zlib_inflate_workspacesize +EXPORT_SYMBOL vmlinux 0xce6477b2 acpi_pci_osc_control_set +EXPORT_SYMBOL vmlinux 0xce76c257 acpi_get_irq_routing_table +EXPORT_SYMBOL vmlinux 0xce76d15c pci_bus_read_config_word +EXPORT_SYMBOL vmlinux 0xce7bfe70 vm_brk +EXPORT_SYMBOL vmlinux 0xce7e7826 disk_end_io_acct +EXPORT_SYMBOL vmlinux 0xce807a25 up_write +EXPORT_SYMBOL vmlinux 0xce85b033 vme_register_bridge +EXPORT_SYMBOL vmlinux 0xce8b1878 __x86_indirect_thunk_r14 +EXPORT_SYMBOL vmlinux 0xce93821d nd_btt_version +EXPORT_SYMBOL vmlinux 0xcea381dd x86_match_cpu +EXPORT_SYMBOL vmlinux 0xcea486ec clkdev_alloc +EXPORT_SYMBOL vmlinux 0xceab0311 strchrnul +EXPORT_SYMBOL vmlinux 0xcead8203 inet6_protos +EXPORT_SYMBOL vmlinux 0xceb37278 pnp_register_card_driver +EXPORT_SYMBOL vmlinux 0xced0f4d4 gen_pool_create +EXPORT_SYMBOL vmlinux 0xced4a0d6 rtnl_configure_link +EXPORT_SYMBOL vmlinux 0xcee3aafb truncate_setsize +EXPORT_SYMBOL vmlinux 0xcee4b9d8 phy_start_aneg +EXPORT_SYMBOL vmlinux 0xceec8abd __mb_cache_entry_free +EXPORT_SYMBOL vmlinux 0xceec93be to_nfit_uuid +EXPORT_SYMBOL vmlinux 0xcefcd99a serial8250_unregister_port +EXPORT_SYMBOL vmlinux 0xcf000c7e hdmi_infoframe_check +EXPORT_SYMBOL vmlinux 0xcf0a5c3d phy_support_sym_pause +EXPORT_SYMBOL vmlinux 0xcf104b8c is_acpi_device_node +EXPORT_SYMBOL vmlinux 0xcf179375 d_alloc_anon +EXPORT_SYMBOL vmlinux 0xcf1ba670 __ip_options_compile +EXPORT_SYMBOL vmlinux 0xcf1c6ca3 cmdline_parts_find +EXPORT_SYMBOL vmlinux 0xcf2a6966 up +EXPORT_SYMBOL vmlinux 0xcf2b7849 xfrm6_rcv_tnl +EXPORT_SYMBOL vmlinux 0xcf2c95fb netpoll_send_udp +EXPORT_SYMBOL vmlinux 0xcf432cf2 blk_register_region +EXPORT_SYMBOL vmlinux 0xcf4fdd4d _atomic_dec_and_lock +EXPORT_SYMBOL vmlinux 0xcf83d83a __tracepoint_spi_transfer_start +EXPORT_SYMBOL vmlinux 0xcf967aa3 vm_iomap_memory +EXPORT_SYMBOL vmlinux 0xcfadf7ec vme_unregister_driver +EXPORT_SYMBOL vmlinux 0xcfb99dab generic_listxattr +EXPORT_SYMBOL vmlinux 0xcff0e9ad dev_mc_add +EXPORT_SYMBOL vmlinux 0xd008cea0 mipi_dsi_generic_write +EXPORT_SYMBOL vmlinux 0xd00960e0 sk_stop_timer +EXPORT_SYMBOL vmlinux 0xd01c9c44 tcf_action_update_stats +EXPORT_SYMBOL vmlinux 0xd02ad96f __vfs_setxattr +EXPORT_SYMBOL vmlinux 0xd02cab2e dst_release_immediate +EXPORT_SYMBOL vmlinux 0xd03dfde0 vfs_get_fsid +EXPORT_SYMBOL vmlinux 0xd042475c qdisc_get_rtab +EXPORT_SYMBOL vmlinux 0xd04a7b69 skb_dequeue_tail +EXPORT_SYMBOL vmlinux 0xd04c1a64 sysctl_devconf_inherit_init_net +EXPORT_SYMBOL vmlinux 0xd05467b5 scsi_register_interface +EXPORT_SYMBOL vmlinux 0xd0654aba woken_wake_function +EXPORT_SYMBOL vmlinux 0xd06570ad nf_ct_get_tuple_skb +EXPORT_SYMBOL vmlinux 0xd08683dc iput +EXPORT_SYMBOL vmlinux 0xd08adb2b trace_seq_hex_dump +EXPORT_SYMBOL vmlinux 0xd0a85759 invalidate_mapping_pages +EXPORT_SYMBOL vmlinux 0xd0a91bab skip_spaces +EXPORT_SYMBOL vmlinux 0xd0a9d412 eisa_bus_type +EXPORT_SYMBOL vmlinux 0xd0b74705 acpi_install_interface +EXPORT_SYMBOL vmlinux 0xd0bb0bb2 inet6_del_offload +EXPORT_SYMBOL vmlinux 0xd0bd487b hdmi_drm_infoframe_pack_only +EXPORT_SYMBOL vmlinux 0xd0c0b53d register_qdisc +EXPORT_SYMBOL vmlinux 0xd0c9baa3 blk_mq_init_sq_queue +EXPORT_SYMBOL vmlinux 0xd0d73e50 iommu_get_msi_cookie +EXPORT_SYMBOL vmlinux 0xd0e20eaf __hw_addr_unsync_dev +EXPORT_SYMBOL vmlinux 0xd0e2e90a acpi_dev_hid_uid_match +EXPORT_SYMBOL vmlinux 0xd0e4ddcc bio_devname +EXPORT_SYMBOL vmlinux 0xd0f284b8 mmiotrace_printk +EXPORT_SYMBOL vmlinux 0xd0fd9109 dev_graft_qdisc +EXPORT_SYMBOL vmlinux 0xd0fe8d51 sg_pcopy_from_buffer +EXPORT_SYMBOL vmlinux 0xd0fef3b2 agp_free_key +EXPORT_SYMBOL vmlinux 0xd1262d0d ipv6_chk_prefix +EXPORT_SYMBOL vmlinux 0xd1363cc1 ucs2_strsize +EXPORT_SYMBOL vmlinux 0xd13d031b watchdog_register_governor +EXPORT_SYMBOL vmlinux 0xd13e1d46 scsi_mode_sense +EXPORT_SYMBOL vmlinux 0xd1412f9b kobject_init +EXPORT_SYMBOL vmlinux 0xd14bdb01 get_task_cred +EXPORT_SYMBOL vmlinux 0xd14c66bc kern_unmount_array +EXPORT_SYMBOL vmlinux 0xd14e7cb6 __cleancache_invalidate_fs +EXPORT_SYMBOL vmlinux 0xd161e0f0 qdisc_create_dflt +EXPORT_SYMBOL vmlinux 0xd16dbb5d nvdimm_namespace_common_probe +EXPORT_SYMBOL vmlinux 0xd16ee8e0 jbd2_journal_blocks_per_page +EXPORT_SYMBOL vmlinux 0xd17d6477 skb_copy_header +EXPORT_SYMBOL vmlinux 0xd1816f32 frontswap_writethrough +EXPORT_SYMBOL vmlinux 0xd18c84de mipi_dsi_dcs_set_tear_scanline +EXPORT_SYMBOL vmlinux 0xd194ddf9 acpi_gpe_count +EXPORT_SYMBOL vmlinux 0xd19bd2e1 __tracepoint_write_msr +EXPORT_SYMBOL vmlinux 0xd1a06e4f logfc +EXPORT_SYMBOL vmlinux 0xd1b10dcd netdev_upper_dev_link +EXPORT_SYMBOL vmlinux 0xd1d87e92 scsi_mlreturn_string +EXPORT_SYMBOL vmlinux 0xd1dd0a32 param_set_charp +EXPORT_SYMBOL vmlinux 0xd1ee7740 neigh_parms_alloc +EXPORT_SYMBOL vmlinux 0xd1f60a89 arch_io_free_memtype_wc +EXPORT_SYMBOL vmlinux 0xd1f6c5f3 smp_num_siblings +EXPORT_SYMBOL vmlinux 0xd1f98c86 dma_supported +EXPORT_SYMBOL vmlinux 0xd1ffd160 secure_tcpv6_ts_off +EXPORT_SYMBOL vmlinux 0xd20bcd86 skb_copy_expand +EXPORT_SYMBOL vmlinux 0xd21c5139 iowrite64_lo_hi +EXPORT_SYMBOL vmlinux 0xd2237016 radix_tree_delete_item +EXPORT_SYMBOL vmlinux 0xd22ff217 inet_frag_queue_insert +EXPORT_SYMBOL vmlinux 0xd230e581 fc_release_transport +EXPORT_SYMBOL vmlinux 0xd257338b tcp_v4_md5_lookup +EXPORT_SYMBOL vmlinux 0xd25d4f74 console_blank_hook +EXPORT_SYMBOL vmlinux 0xd262dfcb vscnprintf +EXPORT_SYMBOL vmlinux 0xd27b25dd blk_check_plugged +EXPORT_SYMBOL vmlinux 0xd280387c simple_rename +EXPORT_SYMBOL vmlinux 0xd296c808 eth_prepare_mac_addr_change +EXPORT_SYMBOL vmlinux 0xd2aad6df sock_setsockopt +EXPORT_SYMBOL vmlinux 0xd2b47d16 d_lookup +EXPORT_SYMBOL vmlinux 0xd2bed7c2 udp6_seq_ops +EXPORT_SYMBOL vmlinux 0xd2c45037 vga_tryget +EXPORT_SYMBOL vmlinux 0xd2c99738 __kmalloc_track_caller +EXPORT_SYMBOL vmlinux 0xd2d9f508 agp_free_memory +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 0xd306d956 mr_rtm_dumproute +EXPORT_SYMBOL vmlinux 0xd33b3a16 scsi_free_host_dev +EXPORT_SYMBOL vmlinux 0xd3543063 memcg_kmem_enabled_key +EXPORT_SYMBOL vmlinux 0xd35a6d31 mempool_kmalloc +EXPORT_SYMBOL vmlinux 0xd36af56e eth_mac_addr +EXPORT_SYMBOL vmlinux 0xd36dc10c get_random_u32 +EXPORT_SYMBOL vmlinux 0xd36e3d59 prandom_bytes_state +EXPORT_SYMBOL vmlinux 0xd377826c mod_zone_page_state +EXPORT_SYMBOL vmlinux 0xd38cd261 __default_kernel_pte_mask +EXPORT_SYMBOL vmlinux 0xd3a58523 deactivate_locked_super +EXPORT_SYMBOL vmlinux 0xd3af8119 dev_mc_sync_multiple +EXPORT_SYMBOL vmlinux 0xd3e950ad noop_qdisc +EXPORT_SYMBOL vmlinux 0xd3eaf1ed devlink_dpipe_entry_clear +EXPORT_SYMBOL vmlinux 0xd3f673a2 simple_write_begin +EXPORT_SYMBOL vmlinux 0xd406d266 fb_mode_is_equal +EXPORT_SYMBOL vmlinux 0xd42674e7 sock_no_accept +EXPORT_SYMBOL vmlinux 0xd436ccb6 cdrom_mode_sense +EXPORT_SYMBOL vmlinux 0xd437ad1d netlink_kernel_release +EXPORT_SYMBOL vmlinux 0xd45bda0b fs_context_for_reconfigure +EXPORT_SYMBOL vmlinux 0xd45cc6ca bin2hex +EXPORT_SYMBOL vmlinux 0xd4754696 tcp_ioctl +EXPORT_SYMBOL vmlinux 0xd47947ff __x86_retpoline_r12 +EXPORT_SYMBOL vmlinux 0xd4835ef8 dmi_check_system +EXPORT_SYMBOL vmlinux 0xd4bb4a82 inet6addr_validator_notifier_call_chain +EXPORT_SYMBOL vmlinux 0xd4d1983c udplite_table +EXPORT_SYMBOL vmlinux 0xd4d206ff from_kuid_munged +EXPORT_SYMBOL vmlinux 0xd4eaead0 keyring_alloc +EXPORT_SYMBOL vmlinux 0xd4fa5a87 __kfifo_dma_out_prepare +EXPORT_SYMBOL vmlinux 0xd508457e tty_port_alloc_xmit_buf +EXPORT_SYMBOL vmlinux 0xd519dd96 tty_kref_put +EXPORT_SYMBOL vmlinux 0xd5263820 mb_cache_destroy +EXPORT_SYMBOL vmlinux 0xd530b059 file_check_and_advance_wb_err +EXPORT_SYMBOL vmlinux 0xd5346bfc acpi_get_possible_resources +EXPORT_SYMBOL vmlinux 0xd54d8136 inet6_release +EXPORT_SYMBOL vmlinux 0xd55040e4 mdiobus_setup_mdiodev_from_board_info +EXPORT_SYMBOL vmlinux 0xd56db517 inet_sock_destruct +EXPORT_SYMBOL vmlinux 0xd58f698e ptp_cancel_worker_sync +EXPORT_SYMBOL vmlinux 0xd5a99572 phy_register_fixup_for_id +EXPORT_SYMBOL vmlinux 0xd5b3d0d5 xxh64_copy_state +EXPORT_SYMBOL vmlinux 0xd5c25074 sock_create_lite +EXPORT_SYMBOL vmlinux 0xd5de69d4 generic_file_readonly_mmap +EXPORT_SYMBOL vmlinux 0xd5fd90f1 prepare_to_wait +EXPORT_SYMBOL vmlinux 0xd6019bb2 dcache_dir_close +EXPORT_SYMBOL vmlinux 0xd60736ec gf128mul_free_64k +EXPORT_SYMBOL vmlinux 0xd61704c7 d_instantiate_new +EXPORT_SYMBOL vmlinux 0xd62ecd49 rps_sock_flow_table +EXPORT_SYMBOL vmlinux 0xd63fd8d1 utf8nagemax +EXPORT_SYMBOL vmlinux 0xd643239a acpi_leave_sleep_state +EXPORT_SYMBOL vmlinux 0xd65e417d uart_resume_port +EXPORT_SYMBOL vmlinux 0xd65f69d8 do_splice_direct +EXPORT_SYMBOL vmlinux 0xd674d830 dev_mc_unsync +EXPORT_SYMBOL vmlinux 0xd688716b dm_kcopyd_client_create +EXPORT_SYMBOL vmlinux 0xd68c5a1f adjust_resource +EXPORT_SYMBOL vmlinux 0xd68f9851 path_is_under +EXPORT_SYMBOL vmlinux 0xd691c6a9 unregister_sysctl_table +EXPORT_SYMBOL vmlinux 0xd695f3ab ipv6_mc_check_mld +EXPORT_SYMBOL vmlinux 0xd69885c2 mipi_dsi_picture_parameter_set +EXPORT_SYMBOL vmlinux 0xd699d005 iov_iter_copy_from_user_atomic +EXPORT_SYMBOL vmlinux 0xd6b04ccb kernel_sock_ip_overhead +EXPORT_SYMBOL vmlinux 0xd6b2ed5f generate_pm_trace +EXPORT_SYMBOL vmlinux 0xd6b33026 cpu_khz +EXPORT_SYMBOL vmlinux 0xd6ba4b12 iov_iter_fault_in_readable +EXPORT_SYMBOL vmlinux 0xd6d1f593 seq_file_path +EXPORT_SYMBOL vmlinux 0xd6e5c0c3 block_write_full_page +EXPORT_SYMBOL vmlinux 0xd6eaaea1 full_name_hash +EXPORT_SYMBOL vmlinux 0xd6ee688f vmalloc +EXPORT_SYMBOL vmlinux 0xd6f74671 pcix_get_mmrbc +EXPORT_SYMBOL vmlinux 0xd6fa37a7 tcp_enter_cwr +EXPORT_SYMBOL vmlinux 0xd6fde043 is_module_sig_enforced +EXPORT_SYMBOL vmlinux 0xd704bd53 scsi_unblock_requests +EXPORT_SYMBOL vmlinux 0xd707b97b fscrypt_get_encryption_info +EXPORT_SYMBOL vmlinux 0xd70d35a1 gf128mul_4k_bbe +EXPORT_SYMBOL vmlinux 0xd70f62b6 acpi_os_execute +EXPORT_SYMBOL vmlinux 0xd71163d0 ndo_dflt_fdb_dump +EXPORT_SYMBOL vmlinux 0xd723598a simple_pin_fs +EXPORT_SYMBOL vmlinux 0xd738ca1b phy_unregister_fixup_for_uid +EXPORT_SYMBOL vmlinux 0xd74ebcab phy_mii_ioctl +EXPORT_SYMBOL vmlinux 0xd75345bd serio_rescan +EXPORT_SYMBOL vmlinux 0xd773aa43 jbd2_journal_init_inode +EXPORT_SYMBOL vmlinux 0xd77a2a8d get_tree_bdev +EXPORT_SYMBOL vmlinux 0xd785c43a vmf_insert_mixed_mkwrite +EXPORT_SYMBOL vmlinux 0xd78e978a get_cached_acl +EXPORT_SYMBOL vmlinux 0xd799d63a con_copy_unimap +EXPORT_SYMBOL vmlinux 0xd79edb29 devfreq_register_opp_notifier +EXPORT_SYMBOL vmlinux 0xd7ab8a41 uart_update_timeout +EXPORT_SYMBOL vmlinux 0xd7b0cbce eisa_driver_register +EXPORT_SYMBOL vmlinux 0xd7b75fa9 blk_pre_runtime_suspend +EXPORT_SYMBOL vmlinux 0xd7d09027 set_create_files_as +EXPORT_SYMBOL vmlinux 0xd7d280ad irq_poll_complete +EXPORT_SYMBOL vmlinux 0xd7dd777b reserve_perfctr_nmi +EXPORT_SYMBOL vmlinux 0xd7e56a4e simple_strtoll +EXPORT_SYMBOL vmlinux 0xd7f3d255 __destroy_inode +EXPORT_SYMBOL vmlinux 0xd7f3df35 sock_init_data +EXPORT_SYMBOL vmlinux 0xd7fe3a06 inet6_bind +EXPORT_SYMBOL vmlinux 0xd7ff6644 tty_lock +EXPORT_SYMBOL vmlinux 0xd812963d inet_rtx_syn_ack +EXPORT_SYMBOL vmlinux 0xd814739b sync_blockdev +EXPORT_SYMBOL vmlinux 0xd817b0d1 path_has_submounts +EXPORT_SYMBOL vmlinux 0xd82a98aa md_finish_reshape +EXPORT_SYMBOL vmlinux 0xd833cc2f scsi_dma_unmap +EXPORT_SYMBOL vmlinux 0xd8358fac vme_dma_request +EXPORT_SYMBOL vmlinux 0xd83633fc get_disk_and_module +EXPORT_SYMBOL vmlinux 0xd83c1e15 jbd2_journal_ack_err +EXPORT_SYMBOL vmlinux 0xd846c315 acpi_write_bit_register +EXPORT_SYMBOL vmlinux 0xd849ef45 mipi_dsi_host_unregister +EXPORT_SYMBOL vmlinux 0xd8602b6a tun_is_xdp_frame +EXPORT_SYMBOL vmlinux 0xd87ee6d6 devfreq_remove_device +EXPORT_SYMBOL vmlinux 0xd89da37f movable_zone +EXPORT_SYMBOL vmlinux 0xd8a994eb scsi_extd_sense_format +EXPORT_SYMBOL vmlinux 0xd8dcd834 __qdisc_calculate_pkt_len +EXPORT_SYMBOL vmlinux 0xd8dde776 __sock_create +EXPORT_SYMBOL vmlinux 0xd8df08ac acpi_handle_printk +EXPORT_SYMBOL vmlinux 0xd8f3b6b7 agp_generic_destroy_page +EXPORT_SYMBOL vmlinux 0xd8f88eee vlan_filter_push_vids +EXPORT_SYMBOL vmlinux 0xd90cb249 ZSTD_getBlockSizeMax +EXPORT_SYMBOL vmlinux 0xd914fcac inetdev_by_index +EXPORT_SYMBOL vmlinux 0xd91cf60d dev_pre_changeaddr_notify +EXPORT_SYMBOL vmlinux 0xd92283e4 sock_kfree_s +EXPORT_SYMBOL vmlinux 0xd92deb6b acpi_evaluate_object +EXPORT_SYMBOL vmlinux 0xd941f41c blk_rq_map_integrity_sg +EXPORT_SYMBOL vmlinux 0xd9491c14 xa_destroy +EXPORT_SYMBOL vmlinux 0xd94ea103 fs_param_is_blob +EXPORT_SYMBOL vmlinux 0xd95ab880 __sk_backlog_rcv +EXPORT_SYMBOL vmlinux 0xd9732531 nf_register_net_hook +EXPORT_SYMBOL vmlinux 0xd9781307 neigh_table_clear +EXPORT_SYMBOL vmlinux 0xd979a547 __x86_indirect_thunk_rdi +EXPORT_SYMBOL vmlinux 0xd985dc99 mempool_free_pages +EXPORT_SYMBOL vmlinux 0xd98de419 msi_desc_to_pci_dev +EXPORT_SYMBOL vmlinux 0xd9a5ea54 __init_waitqueue_head +EXPORT_SYMBOL vmlinux 0xd9b2d9d5 nd_region_acquire_lane +EXPORT_SYMBOL vmlinux 0xd9b3c1ba block_write_begin +EXPORT_SYMBOL vmlinux 0xd9b85ef6 lockref_get +EXPORT_SYMBOL vmlinux 0xd9ca454b memory_cgrp_subsys +EXPORT_SYMBOL vmlinux 0xd9d8fd16 register_restart_handler +EXPORT_SYMBOL vmlinux 0xd9d952d1 crypto_aes_sbox +EXPORT_SYMBOL vmlinux 0xd9e8aee7 refcount_dec_and_lock +EXPORT_SYMBOL vmlinux 0xd9ee65c8 sock_kzfree_s +EXPORT_SYMBOL vmlinux 0xd9efbbcd tcp_md5_hash_skb_data +EXPORT_SYMBOL vmlinux 0xd9f625e2 dqput +EXPORT_SYMBOL vmlinux 0xd9fc7f56 fscrypt_inherit_context +EXPORT_SYMBOL vmlinux 0xda1ddef1 acpi_mark_gpe_for_wake +EXPORT_SYMBOL vmlinux 0xda26b8ea __irq_regs +EXPORT_SYMBOL vmlinux 0xda29460e bio_free_pages +EXPORT_SYMBOL vmlinux 0xda3914aa netdev_state_change +EXPORT_SYMBOL vmlinux 0xda3cd67f flow_rule_match_enc_ipv4_addrs +EXPORT_SYMBOL vmlinux 0xda3d10a8 security_tun_dev_open +EXPORT_SYMBOL vmlinux 0xda490f94 nvdimm_namespace_capacity +EXPORT_SYMBOL vmlinux 0xda5a7261 pci_select_bars +EXPORT_SYMBOL vmlinux 0xda6952b2 md_error +EXPORT_SYMBOL vmlinux 0xda72a7ec ZSTD_nextInputType +EXPORT_SYMBOL vmlinux 0xda7301ba __module_get +EXPORT_SYMBOL vmlinux 0xda753001 gro_cells_init +EXPORT_SYMBOL vmlinux 0xda76a55f tty_name +EXPORT_SYMBOL vmlinux 0xda872864 security_locked_down +EXPORT_SYMBOL vmlinux 0xda89ea3b ip_idents_reserve +EXPORT_SYMBOL vmlinux 0xda8f9790 phy_register_fixup +EXPORT_SYMBOL vmlinux 0xda9fc7ae kstrtobool_from_user +EXPORT_SYMBOL vmlinux 0xdaba319a pci_request_selected_regions +EXPORT_SYMBOL vmlinux 0xdac4913a bitmap_allocate_region +EXPORT_SYMBOL vmlinux 0xdad13544 ptrs_per_p4d +EXPORT_SYMBOL vmlinux 0xdaf9bb55 set_nlink +EXPORT_SYMBOL vmlinux 0xdb16b170 topology_phys_to_logical_pkg +EXPORT_SYMBOL vmlinux 0xdb19cd5d __vlan_find_dev_deep_rcu +EXPORT_SYMBOL vmlinux 0xdb47c213 ww_mutex_unlock +EXPORT_SYMBOL vmlinux 0xdb55c076 radix_tree_iter_resume +EXPORT_SYMBOL vmlinux 0xdb68bbad rfkill_destroy +EXPORT_SYMBOL vmlinux 0xdb699779 blk_queue_segment_boundary +EXPORT_SYMBOL vmlinux 0xdb760f52 __kfifo_free +EXPORT_SYMBOL vmlinux 0xdb7c324d netlink_broadcast +EXPORT_SYMBOL vmlinux 0xdb95e185 intel_scu_ipc_dev_command_with_size +EXPORT_SYMBOL vmlinux 0xdb981927 fs_param_is_path +EXPORT_SYMBOL vmlinux 0xdba48d7b blk_rq_unmap_user +EXPORT_SYMBOL vmlinux 0xdbcf041a acpi_install_address_space_handler +EXPORT_SYMBOL vmlinux 0xdbdf6c92 ioport_resource +EXPORT_SYMBOL vmlinux 0xdbef405f thaw_super +EXPORT_SYMBOL vmlinux 0xdbf17652 _raw_spin_lock +EXPORT_SYMBOL vmlinux 0xdbf2a91b pci_find_next_bus +EXPORT_SYMBOL vmlinux 0xdc14eda7 pci_pci_problems +EXPORT_SYMBOL vmlinux 0xdc190929 mpage_writepage +EXPORT_SYMBOL vmlinux 0xdc2b5e5b fb_prepare_logo +EXPORT_SYMBOL vmlinux 0xdc49c198 reciprocal_value_adv +EXPORT_SYMBOL vmlinux 0xdc4db268 xfrm4_protocol_register +EXPORT_SYMBOL vmlinux 0xdc512134 backlight_register_notifier +EXPORT_SYMBOL vmlinux 0xdc55cf0a dm_kobject_release +EXPORT_SYMBOL vmlinux 0xdc5736d5 acpi_register_ioapic +EXPORT_SYMBOL vmlinux 0xdc61953b __fib6_flush_trees +EXPORT_SYMBOL vmlinux 0xdca3685b blk_integrity_unregister +EXPORT_SYMBOL vmlinux 0xdcb1b687 tty_set_operations +EXPORT_SYMBOL vmlinux 0xdcd9733f key_validate +EXPORT_SYMBOL vmlinux 0xdce02e07 security_old_inode_init_security +EXPORT_SYMBOL vmlinux 0xdce55c98 __x86_retpoline_rax +EXPORT_SYMBOL vmlinux 0xdceb837c tty_port_free_xmit_buf +EXPORT_SYMBOL vmlinux 0xdced2243 param_set_uint +EXPORT_SYMBOL vmlinux 0xdcf48d2f jbd2_journal_stop +EXPORT_SYMBOL vmlinux 0xdcfd7921 __sk_receive_skb +EXPORT_SYMBOL vmlinux 0xdcff7b1c __find_get_block +EXPORT_SYMBOL vmlinux 0xdd0b903e proc_mkdir_mode +EXPORT_SYMBOL vmlinux 0xdd18a993 acpi_check_dsm +EXPORT_SYMBOL vmlinux 0xdd231f7b unregister_netdevice_notifier_net +EXPORT_SYMBOL vmlinux 0xdd2c169b mb_cache_create +EXPORT_SYMBOL vmlinux 0xdd64e639 strscpy +EXPORT_SYMBOL vmlinux 0xdd69d6b7 inet_csk_prepare_forced_close +EXPORT_SYMBOL vmlinux 0xdd742d72 __sg_free_table +EXPORT_SYMBOL vmlinux 0xdd8166a1 dma_fence_free +EXPORT_SYMBOL vmlinux 0xdd840fd1 inet_bind +EXPORT_SYMBOL vmlinux 0xdd849d51 scsi_get_sense_info_fld +EXPORT_SYMBOL vmlinux 0xdd8be620 sock_queue_rcv_skb +EXPORT_SYMBOL vmlinux 0xdd8fed08 xfrm6_rcv +EXPORT_SYMBOL vmlinux 0xdda69cec set_blocksize +EXPORT_SYMBOL vmlinux 0xddad7952 acpi_dbg_level +EXPORT_SYMBOL vmlinux 0xddb7acd4 netif_set_real_num_tx_queues +EXPORT_SYMBOL vmlinux 0xddc88dfb flow_block_cb_incref +EXPORT_SYMBOL vmlinux 0xddd4a8a5 xfrm_spd_getinfo +EXPORT_SYMBOL vmlinux 0xddf6ad7a completion_done +EXPORT_SYMBOL vmlinux 0xde122502 discard_new_inode +EXPORT_SYMBOL vmlinux 0xde244d9a skb_vlan_untag +EXPORT_SYMBOL vmlinux 0xde293f9e add_wait_queue_exclusive +EXPORT_SYMBOL vmlinux 0xde2987a2 jbd2_trans_will_send_data_barrier +EXPORT_SYMBOL vmlinux 0xde384dd5 pcim_pin_device +EXPORT_SYMBOL vmlinux 0xde3a1c27 kernel_accept +EXPORT_SYMBOL vmlinux 0xde3b52a0 sk_stream_wait_close +EXPORT_SYMBOL vmlinux 0xde4d4ace dim_calc_stats +EXPORT_SYMBOL vmlinux 0xde4eeab5 __register_nmi_handler +EXPORT_SYMBOL vmlinux 0xde68f75c vga_switcheroo_fini_domain_pm_ops +EXPORT_SYMBOL vmlinux 0xde6e8428 finish_swait +EXPORT_SYMBOL vmlinux 0xde80cd09 ioremap +EXPORT_SYMBOL vmlinux 0xde877a45 pskb_expand_head +EXPORT_SYMBOL vmlinux 0xde93f0d1 dev_open +EXPORT_SYMBOL vmlinux 0xde9b17ed agp3_generic_fetch_size +EXPORT_SYMBOL vmlinux 0xdeb21b8b dev_mc_flush +EXPORT_SYMBOL vmlinux 0xdeb3ef56 devm_clk_put +EXPORT_SYMBOL vmlinux 0xdeb6aae9 kmem_cache_free_bulk +EXPORT_SYMBOL vmlinux 0xdebb2e81 inet_pton_with_scope +EXPORT_SYMBOL vmlinux 0xded39a6b gen_kill_estimator +EXPORT_SYMBOL vmlinux 0xded6a415 acpi_get_object_info +EXPORT_SYMBOL vmlinux 0xdee0fde1 sock_no_shutdown +EXPORT_SYMBOL vmlinux 0xdee365b0 _raw_write_trylock +EXPORT_SYMBOL vmlinux 0xdeec22c3 dquot_quota_off +EXPORT_SYMBOL vmlinux 0xdef7c893 fb_match_mode +EXPORT_SYMBOL vmlinux 0xdf07518e scsi_track_queue_full +EXPORT_SYMBOL vmlinux 0xdf0c5819 xfrm_input +EXPORT_SYMBOL vmlinux 0xdf2c2742 rb_last +EXPORT_SYMBOL vmlinux 0xdf36914b xa_find_after +EXPORT_SYMBOL vmlinux 0xdf36d4aa ip6_dst_hoplimit +EXPORT_SYMBOL vmlinux 0xdf376b29 __mod_zone_page_state +EXPORT_SYMBOL vmlinux 0xdf54a8f7 netlink_unregister_notifier +EXPORT_SYMBOL vmlinux 0xdf566a59 __x86_indirect_thunk_r9 +EXPORT_SYMBOL vmlinux 0xdf644761 icmpv6_ndo_send +EXPORT_SYMBOL vmlinux 0xdf6b082f proc_dointvec_jiffies +EXPORT_SYMBOL vmlinux 0xdf6e2e6e scsi_add_device +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 0xdfa23039 d_move +EXPORT_SYMBOL vmlinux 0xdfa48b48 ip_setsockopt +EXPORT_SYMBOL vmlinux 0xdfa90fb3 generic_file_read_iter +EXPORT_SYMBOL vmlinux 0xdfacd9df __sk_queue_drop_skb +EXPORT_SYMBOL vmlinux 0xdfaf32b8 page_cache_next_miss +EXPORT_SYMBOL vmlinux 0xdfb14029 down_read_killable +EXPORT_SYMBOL vmlinux 0xdfcc992c current_work +EXPORT_SYMBOL vmlinux 0xdfdfa9e7 utf8nfdi +EXPORT_SYMBOL vmlinux 0xdff905e5 vme_slave_free +EXPORT_SYMBOL vmlinux 0xdffb744b frame_vector_to_pfns +EXPORT_SYMBOL vmlinux 0xdffc80fc vesa_modes +EXPORT_SYMBOL vmlinux 0xe00c2d63 netdev_lower_get_next_private_rcu +EXPORT_SYMBOL vmlinux 0xe01f0f83 ps2_begin_command +EXPORT_SYMBOL vmlinux 0xe021910c inet_csk_reqsk_queue_add +EXPORT_SYMBOL vmlinux 0xe02ba436 trace_print_hex_seq +EXPORT_SYMBOL vmlinux 0xe02c9c92 __xa_erase +EXPORT_SYMBOL vmlinux 0xe02d5158 flow_indr_dev_setup_offload +EXPORT_SYMBOL vmlinux 0xe02dda09 param_set_long +EXPORT_SYMBOL vmlinux 0xe032cd69 dma_free_attrs +EXPORT_SYMBOL vmlinux 0xe033cb29 native_queued_spin_lock_slowpath +EXPORT_SYMBOL vmlinux 0xe033ebdc netpoll_print_options +EXPORT_SYMBOL vmlinux 0xe03a689d dma_fence_array_ops +EXPORT_SYMBOL vmlinux 0xe03aa06c vfs_copy_file_range +EXPORT_SYMBOL vmlinux 0xe0521ee9 cdev_add +EXPORT_SYMBOL vmlinux 0xe062ad57 dentry_path_raw +EXPORT_SYMBOL vmlinux 0xe06df178 _dev_alert +EXPORT_SYMBOL vmlinux 0xe07166fe netif_set_xps_queue +EXPORT_SYMBOL vmlinux 0xe073b3bb __mod_node_page_state +EXPORT_SYMBOL vmlinux 0xe07e5f44 acpi_reconfig_notifier_unregister +EXPORT_SYMBOL vmlinux 0xe082e88d acpi_check_address_range +EXPORT_SYMBOL vmlinux 0xe0875eb1 kstrtobool +EXPORT_SYMBOL vmlinux 0xe0955f76 utf8_casefold +EXPORT_SYMBOL vmlinux 0xe0966016 xfrm6_rcv_spi +EXPORT_SYMBOL vmlinux 0xe09a7245 sg_miter_start +EXPORT_SYMBOL vmlinux 0xe0a0b589 ip_route_me_harder +EXPORT_SYMBOL vmlinux 0xe0a72280 kmem_cache_shrink +EXPORT_SYMBOL vmlinux 0xe0b13336 argv_free +EXPORT_SYMBOL vmlinux 0xe0bfdcaa qdisc_warn_nonwc +EXPORT_SYMBOL vmlinux 0xe0d0c182 seq_escape_mem_ascii +EXPORT_SYMBOL vmlinux 0xe0dc613b compat_ipv6_getsockopt +EXPORT_SYMBOL vmlinux 0xe0e2a07d generic_make_request +EXPORT_SYMBOL vmlinux 0xe0ec82d7 xfrm_trans_queue_net +EXPORT_SYMBOL vmlinux 0xe105d30e devm_memunmap +EXPORT_SYMBOL vmlinux 0xe10a8aad mipi_dsi_dcs_set_tear_on +EXPORT_SYMBOL vmlinux 0xe10b39ad t10_pi_type3_ip +EXPORT_SYMBOL vmlinux 0xe113bbbc csum_partial +EXPORT_SYMBOL vmlinux 0xe11ca997 ZSTD_getDictID_fromDict +EXPORT_SYMBOL vmlinux 0xe1239b63 fs_context_for_submount +EXPORT_SYMBOL vmlinux 0xe123f3d9 dma_fence_release +EXPORT_SYMBOL vmlinux 0xe1257289 skb_recv_datagram +EXPORT_SYMBOL vmlinux 0xe12bda79 vme_dma_free_attribute +EXPORT_SYMBOL vmlinux 0xe138fb8c percpu_counter_add_batch +EXPORT_SYMBOL vmlinux 0xe13cd8a7 dmi_name_in_vendors +EXPORT_SYMBOL vmlinux 0xe13d5d07 kstrtou16_from_user +EXPORT_SYMBOL vmlinux 0xe1437000 fbcon_rotate_cw +EXPORT_SYMBOL vmlinux 0xe145557c address_space_init_once +EXPORT_SYMBOL vmlinux 0xe14a8cfe pnp_register_driver +EXPORT_SYMBOL vmlinux 0xe15f1b3b dev_get_iflink +EXPORT_SYMBOL vmlinux 0xe167388c seq_printf +EXPORT_SYMBOL vmlinux 0xe16f859d inet_sk_rebuild_header +EXPORT_SYMBOL vmlinux 0xe1a4f16a secure_ipv6_port_ephemeral +EXPORT_SYMBOL vmlinux 0xe1afa3e2 phy_do_ioctl_running +EXPORT_SYMBOL vmlinux 0xe1b9b471 invalidate_inode_buffers +EXPORT_SYMBOL vmlinux 0xe1b9c04e amd_iommu_domain_set_gcr3 +EXPORT_SYMBOL vmlinux 0xe1c94779 __blkdev_issue_zeroout +EXPORT_SYMBOL vmlinux 0xe1dcf64a audit_log_format +EXPORT_SYMBOL vmlinux 0xe1e7e40c rtnl_nla_parse_ifla +EXPORT_SYMBOL vmlinux 0xe1ed698d _raw_write_lock_bh +EXPORT_SYMBOL vmlinux 0xe1efb7ce kthread_associate_blkcg +EXPORT_SYMBOL vmlinux 0xe21d4c63 input_set_max_poll_interval +EXPORT_SYMBOL vmlinux 0xe21f18ac __genradix_iter_peek +EXPORT_SYMBOL vmlinux 0xe25ee9d3 _raw_write_lock_irqsave +EXPORT_SYMBOL vmlinux 0xe263d2be blk_queue_update_dma_pad +EXPORT_SYMBOL vmlinux 0xe272a8a8 tcp_seq_next +EXPORT_SYMBOL vmlinux 0xe273d75d alloc_cpu_rmap +EXPORT_SYMBOL vmlinux 0xe2742906 param_get_byte +EXPORT_SYMBOL vmlinux 0xe2d5255a strcmp +EXPORT_SYMBOL vmlinux 0xe2f4be7d pci_irq_get_affinity +EXPORT_SYMBOL vmlinux 0xe2f80c6c devm_ioport_unmap +EXPORT_SYMBOL vmlinux 0xe2fbf3fd ppp_output_wakeup +EXPORT_SYMBOL vmlinux 0xe2ffeef3 scsi_req_init +EXPORT_SYMBOL vmlinux 0xe3147e1d __xfrm_state_delete +EXPORT_SYMBOL vmlinux 0xe32ab4d8 xxh64_digest +EXPORT_SYMBOL vmlinux 0xe33e5bc1 tcp_conn_request +EXPORT_SYMBOL vmlinux 0xe34c38a0 proc_mkdir +EXPORT_SYMBOL vmlinux 0xe369e551 phy_stop +EXPORT_SYMBOL vmlinux 0xe393bbdf nf_log_trace +EXPORT_SYMBOL vmlinux 0xe3d857ea __cpu_active_mask +EXPORT_SYMBOL vmlinux 0xe3dd5848 vfs_parse_fs_param +EXPORT_SYMBOL vmlinux 0xe3e28a5d fwnode_get_mac_address +EXPORT_SYMBOL vmlinux 0xe3e6e337 blk_queue_update_dma_alignment +EXPORT_SYMBOL vmlinux 0xe3ec2f2b alloc_chrdev_region +EXPORT_SYMBOL vmlinux 0xe3ed11ae __mdiobus_register +EXPORT_SYMBOL vmlinux 0xe3ff2c41 get_random_u64 +EXPORT_SYMBOL vmlinux 0xe3fffae9 __x86_indirect_thunk_rbp +EXPORT_SYMBOL vmlinux 0xe40976c0 pnp_range_reserved +EXPORT_SYMBOL vmlinux 0xe40c37ea down_write_trylock +EXPORT_SYMBOL vmlinux 0xe41476d9 ZSTD_getParams +EXPORT_SYMBOL vmlinux 0xe419bc99 iowrite32be +EXPORT_SYMBOL vmlinux 0xe4329092 __ctzdi2 +EXPORT_SYMBOL vmlinux 0xe43791b8 dev_alloc_name +EXPORT_SYMBOL vmlinux 0xe43b76ef blk_put_queue +EXPORT_SYMBOL vmlinux 0xe43fcc7d cdrom_ioctl +EXPORT_SYMBOL vmlinux 0xe441e95a refcount_dec_not_one +EXPORT_SYMBOL vmlinux 0xe484e35f ioread32 +EXPORT_SYMBOL vmlinux 0xe489c827 scsi_set_medium_removal +EXPORT_SYMBOL vmlinux 0xe4974705 mdiobus_write_nested +EXPORT_SYMBOL vmlinux 0xe4a026b7 dev_lstats_read +EXPORT_SYMBOL vmlinux 0xe4a69b8c inet6_add_protocol +EXPORT_SYMBOL vmlinux 0xe4bd6589 input_unregister_handler +EXPORT_SYMBOL vmlinux 0xe4cba206 inode_dio_wait +EXPORT_SYMBOL vmlinux 0xe4d46e62 blk_get_queue +EXPORT_SYMBOL vmlinux 0xe4d80bf4 acpi_enable +EXPORT_SYMBOL vmlinux 0xe4f6977c vfs_setpos +EXPORT_SYMBOL vmlinux 0xe523ad75 synchronize_irq +EXPORT_SYMBOL vmlinux 0xe53ada8d pin_user_pages_remote +EXPORT_SYMBOL vmlinux 0xe53fdff7 dquot_set_dqblk +EXPORT_SYMBOL vmlinux 0xe5562cc1 blk_post_runtime_resume +EXPORT_SYMBOL vmlinux 0xe5600b5a inet_accept +EXPORT_SYMBOL vmlinux 0xe571b2f2 xfrm6_protocol_register +EXPORT_SYMBOL vmlinux 0xe575ec11 scsi_change_queue_depth +EXPORT_SYMBOL vmlinux 0xe58090ca security_ib_endport_manage_subnet +EXPORT_SYMBOL vmlinux 0xe5867808 dlci_ioctl_set +EXPORT_SYMBOL vmlinux 0xe590dea3 sk_busy_loop_end +EXPORT_SYMBOL vmlinux 0xe5bc9a53 slhc_free +EXPORT_SYMBOL vmlinux 0xe5c3c0dc mpage_writepages +EXPORT_SYMBOL vmlinux 0xe5c60bd2 percpu_counter_set +EXPORT_SYMBOL vmlinux 0xe5c78a99 do_blank_screen +EXPORT_SYMBOL vmlinux 0xe5ebd02c xfrm_lookup_with_ifid +EXPORT_SYMBOL vmlinux 0xe5f86844 phy_advertise_supported +EXPORT_SYMBOL vmlinux 0xe613a798 inet_addr_is_any +EXPORT_SYMBOL vmlinux 0xe642427b __scsi_add_device +EXPORT_SYMBOL vmlinux 0xe64d5fef dev_mc_init +EXPORT_SYMBOL vmlinux 0xe65912fc param_ops_bint +EXPORT_SYMBOL vmlinux 0xe669b130 input_allocate_device +EXPORT_SYMBOL vmlinux 0xe6752617 write_one_page +EXPORT_SYMBOL vmlinux 0xe68cdb15 blk_queue_logical_block_size +EXPORT_SYMBOL vmlinux 0xe691ac7f ZSTD_decompressBegin +EXPORT_SYMBOL vmlinux 0xe694ee38 csum_and_copy_from_iter +EXPORT_SYMBOL vmlinux 0xe698c4e2 phy_init_hw +EXPORT_SYMBOL vmlinux 0xe6abb1f5 import_single_range +EXPORT_SYMBOL vmlinux 0xe6adb40d xfrm_user_policy +EXPORT_SYMBOL vmlinux 0xe6af3279 simple_unlink +EXPORT_SYMBOL vmlinux 0xe6c8cbf4 pci_claim_resource +EXPORT_SYMBOL vmlinux 0xe6cb22ad grab_cache_page_write_begin +EXPORT_SYMBOL vmlinux 0xe6cf51b2 devm_free_irq +EXPORT_SYMBOL vmlinux 0xe6ef202c __skb_recv_datagram +EXPORT_SYMBOL vmlinux 0xe7038d50 dquot_release +EXPORT_SYMBOL vmlinux 0xe70877d4 acpi_remove_sci_handler +EXPORT_SYMBOL vmlinux 0xe7257ab8 xa_store_range +EXPORT_SYMBOL vmlinux 0xe72d5200 init_pseudo +EXPORT_SYMBOL vmlinux 0xe7324b9a utf8nfdicf +EXPORT_SYMBOL vmlinux 0xe745f4d2 padata_do_parallel +EXPORT_SYMBOL vmlinux 0xe74dcb84 nf_reinject +EXPORT_SYMBOL vmlinux 0xe756a41c capable_wrt_inode_uidgid +EXPORT_SYMBOL vmlinux 0xe76c7541 jbd2_complete_transaction +EXPORT_SYMBOL vmlinux 0xe7732696 __xfrm_policy_check +EXPORT_SYMBOL vmlinux 0xe77ec164 pci_find_resource +EXPORT_SYMBOL vmlinux 0xe77f4d06 phy_set_asym_pause +EXPORT_SYMBOL vmlinux 0xe787698f acpi_processor_register_performance +EXPORT_SYMBOL vmlinux 0xe7a02573 ida_alloc_range +EXPORT_SYMBOL vmlinux 0xe7b00dfb __x86_indirect_thunk_r13 +EXPORT_SYMBOL vmlinux 0xe7b88b35 uart_write_wakeup +EXPORT_SYMBOL vmlinux 0xe7bfa767 fiemap_prep +EXPORT_SYMBOL vmlinux 0xe7c481d5 vme_master_mmap +EXPORT_SYMBOL vmlinux 0xe7cdbe2c vlan_vids_del_by_dev +EXPORT_SYMBOL vmlinux 0xe7d3c4c1 __tracepoint_kmem_cache_free +EXPORT_SYMBOL vmlinux 0xe7d4daac seq_list_next +EXPORT_SYMBOL vmlinux 0xe7f31782 flow_rule_match_ipv4_addrs +EXPORT_SYMBOL vmlinux 0xe7f6780c acpi_bus_get_status +EXPORT_SYMBOL vmlinux 0xe8342e80 nd_btt_arena_is_valid +EXPORT_SYMBOL vmlinux 0xe8534548 mr_mfc_seq_next +EXPORT_SYMBOL vmlinux 0xe85abbb9 pipe_unlock +EXPORT_SYMBOL vmlinux 0xe85f2123 acpi_tb_unload_table +EXPORT_SYMBOL vmlinux 0xe86ea0c2 is_bad_inode +EXPORT_SYMBOL vmlinux 0xe87309ac dst_init +EXPORT_SYMBOL vmlinux 0xe8964903 dst_cow_metrics_generic +EXPORT_SYMBOL vmlinux 0xe8a0a7fc in6_dev_finish_destroy +EXPORT_SYMBOL vmlinux 0xe8a76724 phy_driver_register +EXPORT_SYMBOL vmlinux 0xe8b813c3 pci_alloc_host_bridge +EXPORT_SYMBOL vmlinux 0xe8ba2d5e remove_conflicting_pci_framebuffers +EXPORT_SYMBOL vmlinux 0xe8baf2c2 pci_write_config_dword +EXPORT_SYMBOL vmlinux 0xe8cd5dd9 fc_mount +EXPORT_SYMBOL vmlinux 0xe8d43d35 tcp_sock_set_keepcnt +EXPORT_SYMBOL vmlinux 0xe8fbf4fa __alloc_bucket_spinlocks +EXPORT_SYMBOL vmlinux 0xe91269e2 mipi_dsi_detach +EXPORT_SYMBOL vmlinux 0xe914e41e strcpy +EXPORT_SYMBOL vmlinux 0xe915945c dmaenginem_async_device_register +EXPORT_SYMBOL vmlinux 0xe921c738 nf_log_unregister +EXPORT_SYMBOL vmlinux 0xe92af07a sock_wfree +EXPORT_SYMBOL vmlinux 0xe93f0160 seq_escape +EXPORT_SYMBOL vmlinux 0xe9418dff skb_kill_datagram +EXPORT_SYMBOL vmlinux 0xe949f34b param_set_int +EXPORT_SYMBOL vmlinux 0xe94fa9f5 page_pool_create +EXPORT_SYMBOL vmlinux 0xe953b21f get_next_ino +EXPORT_SYMBOL vmlinux 0xe95d9c85 input_set_capability +EXPORT_SYMBOL vmlinux 0xe96ebe39 tcp_shutdown +EXPORT_SYMBOL vmlinux 0xe97d74a5 touch_atime +EXPORT_SYMBOL vmlinux 0xe982b37a tty_register_device +EXPORT_SYMBOL vmlinux 0xe98a6015 vfio_register_notifier +EXPORT_SYMBOL vmlinux 0xe9942699 vme_init_bridge +EXPORT_SYMBOL vmlinux 0xe99b5137 tcp_get_md5sig_pool +EXPORT_SYMBOL vmlinux 0xe9a46de0 dev_change_proto_down +EXPORT_SYMBOL vmlinux 0xe9a5e67f intel_graphics_stolen_res +EXPORT_SYMBOL vmlinux 0xe9af7397 __xa_set_mark +EXPORT_SYMBOL vmlinux 0xe9cf8251 fscrypt_ioctl_get_policy +EXPORT_SYMBOL vmlinux 0xe9e8b863 sock_common_recvmsg +EXPORT_SYMBOL vmlinux 0xe9e8faeb efi_tpm_final_log_size +EXPORT_SYMBOL vmlinux 0xe9f64872 __cleancache_invalidate_inode +EXPORT_SYMBOL vmlinux 0xe9f7149c zlib_deflate_workspacesize +EXPORT_SYMBOL vmlinux 0xea231bdc down_write_killable +EXPORT_SYMBOL vmlinux 0xea2ea0c9 mipi_dsi_dcs_set_column_address +EXPORT_SYMBOL vmlinux 0xea3c8e4e scsilun_to_int +EXPORT_SYMBOL vmlinux 0xea3d6cb7 ilookup +EXPORT_SYMBOL vmlinux 0xea6f9a36 zlib_deflate_dfltcc_enabled +EXPORT_SYMBOL vmlinux 0xea748810 ip6tun_encaps +EXPORT_SYMBOL vmlinux 0xea778fab sg_pcopy_to_buffer +EXPORT_SYMBOL vmlinux 0xea80dfe1 security_req_classify_flow +EXPORT_SYMBOL vmlinux 0xea888bf0 scsi_scan_target +EXPORT_SYMBOL vmlinux 0xeaa0fad8 lock_sock_nested +EXPORT_SYMBOL vmlinux 0xeab6f4c4 acpi_check_resource_conflict +EXPORT_SYMBOL vmlinux 0xeabf6b61 mr_mfc_seq_idx +EXPORT_SYMBOL vmlinux 0xeae3dfd6 __const_udelay +EXPORT_SYMBOL vmlinux 0xeae6c8b0 simple_setattr +EXPORT_SYMBOL vmlinux 0xeafc141f __posix_acl_chmod +EXPORT_SYMBOL vmlinux 0xeb233a45 __kmalloc +EXPORT_SYMBOL vmlinux 0xeb236993 fddi_type_trans +EXPORT_SYMBOL vmlinux 0xeb2391c9 gen_new_estimator +EXPORT_SYMBOL vmlinux 0xeb2c15d7 pci_scan_root_bus_bridge +EXPORT_SYMBOL vmlinux 0xeb37101c audit_log_end +EXPORT_SYMBOL vmlinux 0xeb44339a free_pages_exact +EXPORT_SYMBOL vmlinux 0xeb613b2c simple_getattr +EXPORT_SYMBOL vmlinux 0xeb7f6046 acpi_get_devices +EXPORT_SYMBOL vmlinux 0xeb82dd6b agp_bridge +EXPORT_SYMBOL vmlinux 0xeb8c4f00 phy_attached_print +EXPORT_SYMBOL vmlinux 0xeb9e913d sgl_alloc_order +EXPORT_SYMBOL vmlinux 0xeba22b37 set_anon_super_fc +EXPORT_SYMBOL vmlinux 0xeba7aa22 flow_block_cb_lookup +EXPORT_SYMBOL vmlinux 0xebb4c7d4 xfrm_policy_alloc +EXPORT_SYMBOL vmlinux 0xebc7faa2 inet_csk_reqsk_queue_drop +EXPORT_SYMBOL vmlinux 0xebcdc771 configfs_register_group +EXPORT_SYMBOL vmlinux 0xebd89e65 ip_sock_set_tos +EXPORT_SYMBOL vmlinux 0xebf74471 pps_lookup_dev +EXPORT_SYMBOL vmlinux 0xec237e4f xps_needed +EXPORT_SYMBOL vmlinux 0xec2b848b pci_bus_write_config_byte +EXPORT_SYMBOL vmlinux 0xec2b8a42 acpi_walk_namespace +EXPORT_SYMBOL vmlinux 0xec2e1c8f proc_doulongvec_minmax +EXPORT_SYMBOL vmlinux 0xec3034eb inet_csk_reqsk_queue_drop_and_put +EXPORT_SYMBOL vmlinux 0xec4d9e3a clk_get_sys +EXPORT_SYMBOL vmlinux 0xec543b19 clocksource_change_rating +EXPORT_SYMBOL vmlinux 0xec792c72 nf_unregister_net_hook +EXPORT_SYMBOL vmlinux 0xec7bc3d6 param_get_ulong +EXPORT_SYMBOL vmlinux 0xeca2552b update_devfreq +EXPORT_SYMBOL vmlinux 0xecac8407 __memcpy +EXPORT_SYMBOL vmlinux 0xecb3ac4f devfreq_resume_device +EXPORT_SYMBOL vmlinux 0xecb60d67 skb_clone_sk +EXPORT_SYMBOL vmlinux 0xece38745 skb_push +EXPORT_SYMBOL vmlinux 0xece784c2 rb_first +EXPORT_SYMBOL vmlinux 0xecfd68ef acpi_get_node +EXPORT_SYMBOL vmlinux 0xed00c4fb acpi_os_printf +EXPORT_SYMBOL vmlinux 0xed0ae863 dma_pool_create +EXPORT_SYMBOL vmlinux 0xed111873 ethtool_rx_flow_rule_create +EXPORT_SYMBOL vmlinux 0xed16596e kill_litter_super +EXPORT_SYMBOL vmlinux 0xed2661d2 register_md_cluster_operations +EXPORT_SYMBOL vmlinux 0xed34ebbc acpi_any_gpe_status_set +EXPORT_SYMBOL vmlinux 0xed3945c6 key_move +EXPORT_SYMBOL vmlinux 0xed3d85f3 remap_vmalloc_range_partial +EXPORT_SYMBOL vmlinux 0xed49e7c7 security_path_unlink +EXPORT_SYMBOL vmlinux 0xed55f929 acpi_os_unmap_generic_address +EXPORT_SYMBOL vmlinux 0xed7ffdc0 vfs_rmdir +EXPORT_SYMBOL vmlinux 0xed83dea0 poll_initwait +EXPORT_SYMBOL vmlinux 0xed9bc3fd tcp_splice_read +EXPORT_SYMBOL vmlinux 0xeda47454 neigh_lookup_nodev +EXPORT_SYMBOL vmlinux 0xedbaee5e nla_strcmp +EXPORT_SYMBOL vmlinux 0xedc03953 iounmap +EXPORT_SYMBOL vmlinux 0xedcce78c audit_log +EXPORT_SYMBOL vmlinux 0xede28d38 __skb_vlan_pop +EXPORT_SYMBOL vmlinux 0xede81509 __cleancache_init_fs +EXPORT_SYMBOL vmlinux 0xedeafb38 __napi_alloc_skb +EXPORT_SYMBOL vmlinux 0xedf512d9 sock_recvmsg +EXPORT_SYMBOL vmlinux 0xee2d0fc7 _local_bh_enable +EXPORT_SYMBOL vmlinux 0xee50375c amd_iommu_flush_tlb +EXPORT_SYMBOL vmlinux 0xee543583 acpi_get_hp_hw_control_from_firmware +EXPORT_SYMBOL vmlinux 0xee58e970 fb_add_videomode +EXPORT_SYMBOL vmlinux 0xee791c3f dev_mc_del_global +EXPORT_SYMBOL vmlinux 0xee7d7deb gen_pool_dma_zalloc +EXPORT_SYMBOL vmlinux 0xee7eb9e1 pnp_platform_devices +EXPORT_SYMBOL vmlinux 0xee894a8d tty_port_tty_get +EXPORT_SYMBOL vmlinux 0xee8acbc8 jbd2_journal_invalidatepage +EXPORT_SYMBOL vmlinux 0xee8d74d6 jiffies64_to_nsecs +EXPORT_SYMBOL vmlinux 0xee91879b rb_first_postorder +EXPORT_SYMBOL vmlinux 0xee9b9c10 pcie_print_link_status +EXPORT_SYMBOL vmlinux 0xeea89b5e bioset_integrity_create +EXPORT_SYMBOL vmlinux 0xeeaa4d3f pci_add_new_bus +EXPORT_SYMBOL vmlinux 0xeeab1efa md_bitmap_cond_end_sync +EXPORT_SYMBOL vmlinux 0xeeadf7dc md_write_end +EXPORT_SYMBOL vmlinux 0xeeb477dc cdrom_get_media_event +EXPORT_SYMBOL vmlinux 0xeec3481d __inet6_lookup_established +EXPORT_SYMBOL vmlinux 0xeec3f6ea param_set_ulong +EXPORT_SYMBOL vmlinux 0xeee98d5a skb_split +EXPORT_SYMBOL vmlinux 0xeef00c29 xfrm_state_lookup_byaddr +EXPORT_SYMBOL vmlinux 0xef1beeee scsi_vpd_tpg_id +EXPORT_SYMBOL vmlinux 0xef1c3d4d nobh_writepage +EXPORT_SYMBOL vmlinux 0xef3b5c90 generic_pipe_buf_try_steal +EXPORT_SYMBOL vmlinux 0xef4b7493 do_clone_file_range +EXPORT_SYMBOL vmlinux 0xef7fa876 scsi_host_put +EXPORT_SYMBOL vmlinux 0xef988b1c devm_mfd_add_devices +EXPORT_SYMBOL vmlinux 0xef997e2f sock_recv_errqueue +EXPORT_SYMBOL vmlinux 0xef99aa2d seq_pad +EXPORT_SYMBOL vmlinux 0xef9aedfc boot_option_idle_override +EXPORT_SYMBOL vmlinux 0xefa5afd3 component_match_add_typed +EXPORT_SYMBOL vmlinux 0xefa7669c tcp_seq_start +EXPORT_SYMBOL vmlinux 0xefae1d80 __set_page_dirty_buffers +EXPORT_SYMBOL vmlinux 0xefaf2e4f tcf_queue_work +EXPORT_SYMBOL vmlinux 0xefc405b4 sock_sendmsg +EXPORT_SYMBOL vmlinux 0xefcb1029 __tcf_em_tree_match +EXPORT_SYMBOL vmlinux 0xefcea2e7 acpi_warning +EXPORT_SYMBOL vmlinux 0xefd104c3 vlan_vid_add +EXPORT_SYMBOL vmlinux 0xefd1e4d0 ip_frag_next +EXPORT_SYMBOL vmlinux 0xefd30512 __cpuhp_setup_state +EXPORT_SYMBOL vmlinux 0xefe37195 blk_mq_unique_tag +EXPORT_SYMBOL vmlinux 0xefe4f679 ZSTD_CCtxWorkspaceBound +EXPORT_SYMBOL vmlinux 0xefebbd40 ioread64be_lo_hi +EXPORT_SYMBOL vmlinux 0xefee932c acpi_get_data_full +EXPORT_SYMBOL vmlinux 0xeff11f63 remove_watch_from_object +EXPORT_SYMBOL vmlinux 0xeff608e0 kstrtos16_from_user +EXPORT_SYMBOL vmlinux 0xf0009fee put_pages_list +EXPORT_SYMBOL vmlinux 0xf008a885 seg6_hmac_init +EXPORT_SYMBOL vmlinux 0xf014ef06 __inode_add_bytes +EXPORT_SYMBOL vmlinux 0xf0224be2 vme_register_driver +EXPORT_SYMBOL vmlinux 0xf029e3fd set_disk_ro +EXPORT_SYMBOL vmlinux 0xf02aa937 wait_for_completion_interruptible_timeout +EXPORT_SYMBOL vmlinux 0xf02bda2c d_make_root +EXPORT_SYMBOL vmlinux 0xf02e712f udp_seq_start +EXPORT_SYMBOL vmlinux 0xf044b02b tcp_child_process +EXPORT_SYMBOL vmlinux 0xf049dd9b pci_remove_bus +EXPORT_SYMBOL vmlinux 0xf04b5ec6 devm_request_threaded_irq +EXPORT_SYMBOL vmlinux 0xf05c32ad rdmsr_on_cpus +EXPORT_SYMBOL vmlinux 0xf065f629 ioread16be +EXPORT_SYMBOL vmlinux 0xf08c47bd inet_csk_accept +EXPORT_SYMBOL vmlinux 0xf08c67de napi_alloc_frag +EXPORT_SYMBOL vmlinux 0xf09170f4 ip_generic_getfrag +EXPORT_SYMBOL vmlinux 0xf09744b4 pci_get_class +EXPORT_SYMBOL vmlinux 0xf0995acc pci_iounmap +EXPORT_SYMBOL vmlinux 0xf09b5d9a get_zeroed_page +EXPORT_SYMBOL vmlinux 0xf0b7cd71 pci_disable_link_state +EXPORT_SYMBOL vmlinux 0xf0bdfe3a block_write_end +EXPORT_SYMBOL vmlinux 0xf0e0807d agp_backend_release +EXPORT_SYMBOL vmlinux 0xf0e70165 dma_direct_unmap_sg +EXPORT_SYMBOL vmlinux 0xf100e95c wireless_send_event +EXPORT_SYMBOL vmlinux 0xf102033e slhc_remember +EXPORT_SYMBOL vmlinux 0xf10de535 ioread8 +EXPORT_SYMBOL vmlinux 0xf11543ff find_first_zero_bit +EXPORT_SYMBOL vmlinux 0xf12fdc93 sk_free +EXPORT_SYMBOL vmlinux 0xf15ca1c5 init_task +EXPORT_SYMBOL vmlinux 0xf16efca4 tcf_block_put_ext +EXPORT_SYMBOL vmlinux 0xf1848ee2 acpi_install_sci_handler +EXPORT_SYMBOL vmlinux 0xf195c682 fb_invert_cmaps +EXPORT_SYMBOL vmlinux 0xf1969a8e __usecs_to_jiffies +EXPORT_SYMBOL vmlinux 0xf1a68107 acpi_processor_preregister_performance +EXPORT_SYMBOL vmlinux 0xf1bdac7e framebuffer_release +EXPORT_SYMBOL vmlinux 0xf1cf6359 neigh_lookup +EXPORT_SYMBOL vmlinux 0xf1d00628 __cpuhp_remove_state +EXPORT_SYMBOL vmlinux 0xf1d8fc2a nvdimm_revalidate_disk +EXPORT_SYMBOL vmlinux 0xf1db1704 nla_memcpy +EXPORT_SYMBOL vmlinux 0xf1debd80 nd_device_notify +EXPORT_SYMBOL vmlinux 0xf1df7a90 proto_register +EXPORT_SYMBOL vmlinux 0xf1e046cc panic +EXPORT_SYMBOL vmlinux 0xf1e58bb6 mipi_dsi_dcs_enter_sleep_mode +EXPORT_SYMBOL vmlinux 0xf1e69bf9 finish_no_open +EXPORT_SYMBOL vmlinux 0xf1e98c74 avenrun +EXPORT_SYMBOL vmlinux 0xf21017d9 mutex_trylock +EXPORT_SYMBOL vmlinux 0xf2215f74 blk_finish_plug +EXPORT_SYMBOL vmlinux 0xf22719fc pci_prepare_to_sleep +EXPORT_SYMBOL vmlinux 0xf23fcb99 __kfifo_in +EXPORT_SYMBOL vmlinux 0xf24b565e unregister_binfmt +EXPORT_SYMBOL vmlinux 0xf24d8571 tc_setup_cb_replace +EXPORT_SYMBOL vmlinux 0xf25bfa12 rtc_add_groups +EXPORT_SYMBOL vmlinux 0xf28404cf devlink_dpipe_header_ipv6 +EXPORT_SYMBOL vmlinux 0xf29403e5 acpi_install_table_handler +EXPORT_SYMBOL vmlinux 0xf29f8515 __kfifo_dma_out_prepare_r +EXPORT_SYMBOL vmlinux 0xf2a9e94a textsearch_destroy +EXPORT_SYMBOL vmlinux 0xf2b81b64 arch_io_reserve_memtype_wc +EXPORT_SYMBOL vmlinux 0xf2c43f3f zlib_deflate +EXPORT_SYMBOL vmlinux 0xf2d4d3a0 pci_enable_atomic_ops_to_root +EXPORT_SYMBOL vmlinux 0xf2e03dac inode_add_bytes +EXPORT_SYMBOL vmlinux 0xf2e0928d skb_ext_add +EXPORT_SYMBOL vmlinux 0xf2e5bd87 security_free_mnt_opts +EXPORT_SYMBOL vmlinux 0xf2ec54d4 tty_port_hangup +EXPORT_SYMBOL vmlinux 0xf2f53617 memregion_free +EXPORT_SYMBOL vmlinux 0xf30965ac iosf_mbi_register_pmic_bus_access_notifier +EXPORT_SYMBOL vmlinux 0xf3096b79 pci_request_irq +EXPORT_SYMBOL vmlinux 0xf30a4571 device_match_acpi_dev +EXPORT_SYMBOL vmlinux 0xf3107926 sha224_update +EXPORT_SYMBOL vmlinux 0xf319a9ec dev_remove_pack +EXPORT_SYMBOL vmlinux 0xf3268567 d_alloc +EXPORT_SYMBOL vmlinux 0xf3341268 __clear_user +EXPORT_SYMBOL vmlinux 0xf336f755 tty_check_change +EXPORT_SYMBOL vmlinux 0xf346231f seq_list_start_head +EXPORT_SYMBOL vmlinux 0xf34eac9b compat_nf_getsockopt +EXPORT_SYMBOL vmlinux 0xf353a698 register_module_notifier +EXPORT_SYMBOL vmlinux 0xf36cfcdf configfs_unregister_group +EXPORT_SYMBOL vmlinux 0xf3770422 d_find_alias +EXPORT_SYMBOL vmlinux 0xf3817bee sdev_disable_disk_events +EXPORT_SYMBOL vmlinux 0xf3893a88 scsi_bios_ptable +EXPORT_SYMBOL vmlinux 0xf389fe60 __hw_addr_init +EXPORT_SYMBOL vmlinux 0xf3916987 global_cursor_default +EXPORT_SYMBOL vmlinux 0xf3a57892 release_dentry_name_snapshot +EXPORT_SYMBOL vmlinux 0xf3af1eb1 seq_dentry +EXPORT_SYMBOL vmlinux 0xf3b30a06 utf8version_latest +EXPORT_SYMBOL vmlinux 0xf3c9259b remove_arg_zero +EXPORT_SYMBOL vmlinux 0xf3e0e1df allocate_resource +EXPORT_SYMBOL vmlinux 0xf3e6402e __bitmap_equal +EXPORT_SYMBOL vmlinux 0xf3e739f4 pcie_capability_read_dword +EXPORT_SYMBOL vmlinux 0xf3e9197d find_lock_entry +EXPORT_SYMBOL vmlinux 0xf3ed6a26 tty_port_close_end +EXPORT_SYMBOL vmlinux 0xf40e7a73 __xa_alloc +EXPORT_SYMBOL vmlinux 0xf4232cbb dst_alloc +EXPORT_SYMBOL vmlinux 0xf424dcd0 pneigh_enqueue +EXPORT_SYMBOL vmlinux 0xf425eaeb __nla_reserve_64bit +EXPORT_SYMBOL vmlinux 0xf42840d5 param_ops_byte +EXPORT_SYMBOL vmlinux 0xf428b053 inet_csk_complete_hashdance +EXPORT_SYMBOL vmlinux 0xf43be381 param_get_ullong +EXPORT_SYMBOL vmlinux 0xf43d2caa acpi_remove_interface +EXPORT_SYMBOL vmlinux 0xf43eae92 key_unlink +EXPORT_SYMBOL vmlinux 0xf441ac43 ioread8_rep +EXPORT_SYMBOL vmlinux 0xf44a904a net_ns_barrier +EXPORT_SYMBOL vmlinux 0xf456cdc3 tso_build_hdr +EXPORT_SYMBOL vmlinux 0xf46df3de file_ns_capable +EXPORT_SYMBOL vmlinux 0xf474c21c bitmap_print_to_pagebuf +EXPORT_SYMBOL vmlinux 0xf474fdcb kfree_const +EXPORT_SYMBOL vmlinux 0xf47dc83e xfrm_state_delete +EXPORT_SYMBOL vmlinux 0xf48be74d dquot_get_dqblk +EXPORT_SYMBOL vmlinux 0xf4a565fd wrmsr_on_cpus +EXPORT_SYMBOL vmlinux 0xf4a5c213 avail_to_resrv_perfctr_nmi_bit +EXPORT_SYMBOL vmlinux 0xf4b2b86e cgroup_bpf_enabled_key +EXPORT_SYMBOL vmlinux 0xf4b754fd acpi_resources_are_enforced +EXPORT_SYMBOL vmlinux 0xf4baa37e jbd2_journal_clear_err +EXPORT_SYMBOL vmlinux 0xf4bdbeb9 __frontswap_invalidate_area +EXPORT_SYMBOL vmlinux 0xf4c6a598 kobject_put +EXPORT_SYMBOL vmlinux 0xf4d3b792 blk_queue_split +EXPORT_SYMBOL vmlinux 0xf4db35bc stpcpy +EXPORT_SYMBOL vmlinux 0xf4e90175 submit_bio +EXPORT_SYMBOL vmlinux 0xf4f14de6 rtnl_trylock +EXPORT_SYMBOL vmlinux 0xf4f70a5f bdi_put +EXPORT_SYMBOL vmlinux 0xf4faf6d6 generic_perform_write +EXPORT_SYMBOL vmlinux 0xf518b782 inet_offloads +EXPORT_SYMBOL vmlinux 0xf5298aeb put_disk +EXPORT_SYMBOL vmlinux 0xf53d4c26 qdisc_class_hash_destroy +EXPORT_SYMBOL vmlinux 0xf545384c amd_iommu_pc_get_reg +EXPORT_SYMBOL vmlinux 0xf559c11b ps2_end_command +EXPORT_SYMBOL vmlinux 0xf55dee74 write_dirty_buffer +EXPORT_SYMBOL vmlinux 0xf55eebb4 skb_queue_purge +EXPORT_SYMBOL vmlinux 0xf5618cf5 mipi_dsi_dcs_nop +EXPORT_SYMBOL vmlinux 0xf5847332 inet_getname +EXPORT_SYMBOL vmlinux 0xf591753d nf_hooks_needed +EXPORT_SYMBOL vmlinux 0xf5a20ed2 __genradix_prealloc +EXPORT_SYMBOL vmlinux 0xf5a5c84c msrs_alloc +EXPORT_SYMBOL vmlinux 0xf5aba4d5 request_key_with_auxdata +EXPORT_SYMBOL vmlinux 0xf5c31666 __cgroup_bpf_run_filter_skb +EXPORT_SYMBOL vmlinux 0xf5c3673e cont_write_begin +EXPORT_SYMBOL vmlinux 0xf5c5f496 set_cached_acl +EXPORT_SYMBOL vmlinux 0xf5e079e6 jbd2_journal_abort +EXPORT_SYMBOL vmlinux 0xf5e5a87b hdmi_infoframe_pack_only +EXPORT_SYMBOL vmlinux 0xf5e7ea40 ktime_get_coarse_ts64 +EXPORT_SYMBOL vmlinux 0xf609b6d0 udp_lib_getsockopt +EXPORT_SYMBOL vmlinux 0xf60ab926 acpi_get_event_status +EXPORT_SYMBOL vmlinux 0xf643d104 hsiphash_4u32 +EXPORT_SYMBOL vmlinux 0xf64582ee ip_frag_init +EXPORT_SYMBOL vmlinux 0xf653699a devm_clk_get +EXPORT_SYMBOL vmlinux 0xf6565d13 tcp_sock_set_user_timeout +EXPORT_SYMBOL vmlinux 0xf665f74f sock_load_diag_module +EXPORT_SYMBOL vmlinux 0xf670268d inet_recvmsg +EXPORT_SYMBOL vmlinux 0xf678719d sock_i_ino +EXPORT_SYMBOL vmlinux 0xf681acfc hdmi_infoframe_unpack +EXPORT_SYMBOL vmlinux 0xf68285c0 register_inetaddr_notifier +EXPORT_SYMBOL vmlinux 0xf68733e5 t10_pi_type3_crc +EXPORT_SYMBOL vmlinux 0xf6925937 pcie_get_readrq +EXPORT_SYMBOL vmlinux 0xf6da4ca4 netdev_notify_peers +EXPORT_SYMBOL vmlinux 0xf6e9e05d netlink_net_capable +EXPORT_SYMBOL vmlinux 0xf6ebc03b net_ratelimit +EXPORT_SYMBOL vmlinux 0xf6f9d58d init_on_free +EXPORT_SYMBOL vmlinux 0xf6fc8791 __bitmap_xor +EXPORT_SYMBOL vmlinux 0xf70944aa tag_pages_for_writeback +EXPORT_SYMBOL vmlinux 0xf716820e unregister_key_type +EXPORT_SYMBOL vmlinux 0xf7326329 configfs_unregister_default_group +EXPORT_SYMBOL vmlinux 0xf738d1be register_blocking_lsm_notifier +EXPORT_SYMBOL vmlinux 0xf74406c8 tso_count_descs +EXPORT_SYMBOL vmlinux 0xf753cff1 uart_get_divisor +EXPORT_SYMBOL vmlinux 0xf7583e01 file_modified +EXPORT_SYMBOL vmlinux 0xf7584a9c find_font +EXPORT_SYMBOL vmlinux 0xf75af6c3 sk_dst_check +EXPORT_SYMBOL vmlinux 0xf75b2a5b setup_arg_pages +EXPORT_SYMBOL vmlinux 0xf767f190 end_buffer_read_sync +EXPORT_SYMBOL vmlinux 0xf77337a1 hdmi_audio_infoframe_check +EXPORT_SYMBOL vmlinux 0xf7746d72 fb_blank +EXPORT_SYMBOL vmlinux 0xf79ca3bb acpi_remove_gpe_block +EXPORT_SYMBOL vmlinux 0xf7b27da1 skb_flow_dissect_tunnel_info +EXPORT_SYMBOL vmlinux 0xf7d1b347 d_path +EXPORT_SYMBOL vmlinux 0xf7d6630d get_watch_queue +EXPORT_SYMBOL vmlinux 0xf7d71abc eth_gro_complete +EXPORT_SYMBOL vmlinux 0xf7da6e6f acpi_unload_table +EXPORT_SYMBOL vmlinux 0xf7ddbfc7 simple_nosetlease +EXPORT_SYMBOL vmlinux 0xf7ef9a79 iosf_mbi_punit_release +EXPORT_SYMBOL vmlinux 0xf7f0863d inet_gro_complete +EXPORT_SYMBOL vmlinux 0xf7fd05e3 dev_set_promiscuity +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 0xf819b4c7 key_type_keyring +EXPORT_SYMBOL vmlinux 0xf81d691c __sk_mem_schedule +EXPORT_SYMBOL vmlinux 0xf82abc1d isa_dma_bridge_buggy +EXPORT_SYMBOL vmlinux 0xf82ec573 rb_prev +EXPORT_SYMBOL vmlinux 0xf8386d97 cpumask_next_and +EXPORT_SYMBOL vmlinux 0xf84990f9 inet6_ioctl +EXPORT_SYMBOL vmlinux 0xf84bd6ee bpf_stats_enabled_key +EXPORT_SYMBOL vmlinux 0xf8595510 _raw_read_lock_irq +EXPORT_SYMBOL vmlinux 0xf870dbcd phy_support_asym_pause +EXPORT_SYMBOL vmlinux 0xf8800328 neigh_carrier_down +EXPORT_SYMBOL vmlinux 0xf888ca21 sg_init_table +EXPORT_SYMBOL vmlinux 0xf8b1a8dc pci_release_resource +EXPORT_SYMBOL vmlinux 0xf8b4f470 migrate_page_states +EXPORT_SYMBOL vmlinux 0xf8b75841 mipi_dsi_dcs_set_display_on +EXPORT_SYMBOL vmlinux 0xf8ba710c input_mt_report_finger_count +EXPORT_SYMBOL vmlinux 0xf8bb464f netdev_master_upper_dev_link +EXPORT_SYMBOL vmlinux 0xf8bf8e22 ZSTD_DDictWorkspaceBound +EXPORT_SYMBOL vmlinux 0xf8d07858 bitmap_from_arr32 +EXPORT_SYMBOL vmlinux 0xf8d20aa4 unregister_nexthop_notifier +EXPORT_SYMBOL vmlinux 0xf8da2b77 blk_mq_kick_requeue_list +EXPORT_SYMBOL vmlinux 0xf8e876b9 dcb_ieee_delapp +EXPORT_SYMBOL vmlinux 0xf8f2c372 lock_page_memcg +EXPORT_SYMBOL vmlinux 0xf8f61ebc wake_up_var +EXPORT_SYMBOL vmlinux 0xf915179e refcount_dec_if_one +EXPORT_SYMBOL vmlinux 0xf921b8c5 iget_failed +EXPORT_SYMBOL vmlinux 0xf93fd09c fb_find_mode_cvt +EXPORT_SYMBOL vmlinux 0xf95cfe37 pmem_sector_size +EXPORT_SYMBOL vmlinux 0xf971cea8 utf8len +EXPORT_SYMBOL vmlinux 0xf98c5a00 bdget +EXPORT_SYMBOL vmlinux 0xf9a3c465 skb_vlan_push +EXPORT_SYMBOL vmlinux 0xf9a482f9 msleep +EXPORT_SYMBOL vmlinux 0xf9b4f50b translation_pre_enabled +EXPORT_SYMBOL vmlinux 0xf9b89c03 icmpv6_send +EXPORT_SYMBOL vmlinux 0xf9c0b663 strlcat +EXPORT_SYMBOL vmlinux 0xf9eced44 LZ4_compress_fast_continue +EXPORT_SYMBOL vmlinux 0xfa08f4b8 __tracepoint_dma_fence_signaled +EXPORT_SYMBOL vmlinux 0xfa165e88 set_pages_array_wc +EXPORT_SYMBOL vmlinux 0xfa297415 acpi_map_pxm_to_node +EXPORT_SYMBOL vmlinux 0xfa303b63 softnet_data +EXPORT_SYMBOL vmlinux 0xfa359c9c udp_gro_complete +EXPORT_SYMBOL vmlinux 0xfa4fc37d inet_frags_init +EXPORT_SYMBOL vmlinux 0xfa53c959 security_binder_transfer_binder +EXPORT_SYMBOL vmlinux 0xfa599bb2 netlink_register_notifier +EXPORT_SYMBOL vmlinux 0xfa6d2e9e agp_bind_memory +EXPORT_SYMBOL vmlinux 0xfa77cdea netdev_has_any_upper_dev +EXPORT_SYMBOL vmlinux 0xfa873ad0 prandom_seed +EXPORT_SYMBOL vmlinux 0xfa8a40c5 pagevec_lookup_range_tag +EXPORT_SYMBOL vmlinux 0xfa9c51cb irq_to_desc +EXPORT_SYMBOL vmlinux 0xfaa1fdf7 __tracepoint_rdpmc +EXPORT_SYMBOL vmlinux 0xfac3e00a __x86_retpoline_r9 +EXPORT_SYMBOL vmlinux 0xfac8865f sysctl_wmem_max +EXPORT_SYMBOL vmlinux 0xfacb6129 vm_map_pages_zero +EXPORT_SYMBOL vmlinux 0xfacc36d4 inet_confirm_addr +EXPORT_SYMBOL vmlinux 0xfae9cf8c fs_param_is_u64 +EXPORT_SYMBOL vmlinux 0xfb0a82b4 cpufreq_get_policy +EXPORT_SYMBOL vmlinux 0xfb2921f0 remove_proc_subtree +EXPORT_SYMBOL vmlinux 0xfb384d37 kasprintf +EXPORT_SYMBOL vmlinux 0xfb481954 vprintk +EXPORT_SYMBOL vmlinux 0xfb56e0e9 forget_all_cached_acls +EXPORT_SYMBOL vmlinux 0xfb578fc5 memset +EXPORT_SYMBOL vmlinux 0xfb6af58d recalc_sigpending +EXPORT_SYMBOL vmlinux 0xfb746cc9 down_killable +EXPORT_SYMBOL vmlinux 0xfb893ad7 pci_bus_size_bridges +EXPORT_SYMBOL vmlinux 0xfb8b0532 filp_open +EXPORT_SYMBOL vmlinux 0xfb9370ed ipv6_chk_addr_and_flags +EXPORT_SYMBOL vmlinux 0xfba7ddd2 match_u64 +EXPORT_SYMBOL vmlinux 0xfbaaf01e console_lock +EXPORT_SYMBOL vmlinux 0xfbad3cf0 scsi_normalize_sense +EXPORT_SYMBOL vmlinux 0xfbb7314b dma_sync_wait +EXPORT_SYMBOL vmlinux 0xfbb8a761 strscpy_pad +EXPORT_SYMBOL vmlinux 0xfbbbe3fc notify_change +EXPORT_SYMBOL vmlinux 0xfbc4f89e io_schedule_timeout +EXPORT_SYMBOL vmlinux 0xfbe34829 netlink_broadcast_filtered +EXPORT_SYMBOL vmlinux 0xfbe8ee28 acpi_get_table_by_index +EXPORT_SYMBOL vmlinux 0xfc0a8706 md_write_start +EXPORT_SYMBOL vmlinux 0xfc2d3060 pcie_set_readrq +EXPORT_SYMBOL vmlinux 0xfc336d2e __wake_up_bit +EXPORT_SYMBOL vmlinux 0xfc399557 utf8_load +EXPORT_SYMBOL vmlinux 0xfc39e32f ioport_unmap +EXPORT_SYMBOL vmlinux 0xfc4152fc ec_read +EXPORT_SYMBOL vmlinux 0xfc5c46e2 acpi_buffer_to_resource +EXPORT_SYMBOL vmlinux 0xfc696c2c alloc_etherdev_mqs +EXPORT_SYMBOL vmlinux 0xfc6e3ec0 simple_dir_inode_operations +EXPORT_SYMBOL vmlinux 0xfc724107 intel_gmch_probe +EXPORT_SYMBOL vmlinux 0xfc7e2596 down_trylock +EXPORT_SYMBOL vmlinux 0xfc9a4491 sock_no_sendmsg +EXPORT_SYMBOL vmlinux 0xfca2b893 __xfrm_state_destroy +EXPORT_SYMBOL vmlinux 0xfca9db90 napi_complete_done +EXPORT_SYMBOL vmlinux 0xfcb65d14 pci_disable_device +EXPORT_SYMBOL vmlinux 0xfcb926cd kstrtouint_from_user +EXPORT_SYMBOL vmlinux 0xfcc3eec2 param_set_bool +EXPORT_SYMBOL vmlinux 0xfcc5fc44 sock_wmalloc +EXPORT_SYMBOL vmlinux 0xfcd1819a hdmi_spd_infoframe_check +EXPORT_SYMBOL vmlinux 0xfce7830f scsi_test_unit_ready +EXPORT_SYMBOL vmlinux 0xfcec0987 enable_irq +EXPORT_SYMBOL vmlinux 0xfd0a7685 iov_iter_zero +EXPORT_SYMBOL vmlinux 0xfd1b72c9 tcp_add_backlog +EXPORT_SYMBOL vmlinux 0xfd221fa1 vga_switcheroo_init_domain_pm_ops +EXPORT_SYMBOL vmlinux 0xfd42527c __x86_retpoline_r15 +EXPORT_SYMBOL vmlinux 0xfd7c6b2e file_write_and_wait_range +EXPORT_SYMBOL vmlinux 0xfd7d723c xattr_full_name +EXPORT_SYMBOL vmlinux 0xfd93ee35 ioremap_wc +EXPORT_SYMBOL vmlinux 0xfda2b770 key_link +EXPORT_SYMBOL vmlinux 0xfda9581f prandom_u32 +EXPORT_SYMBOL vmlinux 0xfdab784f xfrm_replay_seqhi +EXPORT_SYMBOL vmlinux 0xfdb9b629 ioread32be +EXPORT_SYMBOL vmlinux 0xfdcb4ed3 acpi_os_get_line +EXPORT_SYMBOL vmlinux 0xfdcc8a0e fb_find_best_display +EXPORT_SYMBOL vmlinux 0xfdce9347 tcf_unregister_action +EXPORT_SYMBOL vmlinux 0xfdd4216d pcibios_align_resource +EXPORT_SYMBOL vmlinux 0xfdebea46 security_inode_invalidate_secctx +EXPORT_SYMBOL vmlinux 0xfdf70093 ZSTD_CStreamOutSize +EXPORT_SYMBOL vmlinux 0xfdfb792f amd_iommu_pc_supported +EXPORT_SYMBOL vmlinux 0xfe003d41 pcie_capability_read_word +EXPORT_SYMBOL vmlinux 0xfe029963 unregister_inetaddr_notifier +EXPORT_SYMBOL vmlinux 0xfe1b9265 devfreq_update_interval +EXPORT_SYMBOL vmlinux 0xfe1d2e94 key_create_or_update +EXPORT_SYMBOL vmlinux 0xfe449f3e rio_query_mport +EXPORT_SYMBOL vmlinux 0xfe487975 init_wait_entry +EXPORT_SYMBOL vmlinux 0xfe4d639d pcim_iomap_regions_request_all +EXPORT_SYMBOL vmlinux 0xfe5d4bb2 sys_tz +EXPORT_SYMBOL vmlinux 0xfe916dc6 hex_dump_to_buffer +EXPORT_SYMBOL vmlinux 0xfe9ebbbb acpi_osi_is_win8 +EXPORT_SYMBOL vmlinux 0xfea35c22 dev_get_by_name_rcu +EXPORT_SYMBOL vmlinux 0xfead52df vme_new_dma_list +EXPORT_SYMBOL vmlinux 0xfeb5d0aa verify_spi_info +EXPORT_SYMBOL vmlinux 0xfecfc81c alloc_skb_with_frags +EXPORT_SYMBOL vmlinux 0xfedcdb60 seq_hlist_next_percpu +EXPORT_SYMBOL vmlinux 0xfedf9edd pneigh_lookup +EXPORT_SYMBOL vmlinux 0xfee2af40 netpoll_poll_dev +EXPORT_SYMBOL vmlinux 0xfee43928 input_set_keycode +EXPORT_SYMBOL vmlinux 0xfeebc7c4 __kfifo_from_user_r +EXPORT_SYMBOL vmlinux 0xfefcb98e vme_dma_vme_attribute +EXPORT_SYMBOL vmlinux 0xff1e9dd8 seq_list_start +EXPORT_SYMBOL vmlinux 0xff20c411 tty_vhangup +EXPORT_SYMBOL vmlinux 0xff30126a vfs_path_lookup +EXPORT_SYMBOL vmlinux 0xff4da13e vfs_mknod +EXPORT_SYMBOL vmlinux 0xff6878cf fb_default_cmap +EXPORT_SYMBOL vmlinux 0xff87cd18 lockref_get_not_dead +EXPORT_SYMBOL vmlinux 0xff96788d generic_block_bmap +EXPORT_SYMBOL vmlinux 0xff9c4b56 ZSTD_compressBound +EXPORT_SYMBOL vmlinux 0xffaff63b blk_mq_start_request +EXPORT_SYMBOL vmlinux 0xffb7c514 ida_free +EXPORT_SYMBOL vmlinux 0xffc30c3a acpi_processor_power_init_bm_check +EXPORT_SYMBOL vmlinux 0xffc807ce in_dev_finish_destroy +EXPORT_SYMBOL vmlinux 0xffcafea6 send_sig +EXPORT_SYMBOL vmlinux 0xffcd7f49 iosf_mbi_punit_acquire +EXPORT_SYMBOL vmlinux 0xffeedf6a delayed_work_timer_fn +EXPORT_SYMBOL vmlinux 0xfff55de4 generic_block_fiemap +EXPORT_SYMBOL vmlinux 0xfffd7bf7 vga_put +EXPORT_SYMBOL vmlinux 0xfffde994 iov_iter_discard +EXPORT_SYMBOL_GPL arch/x86/crypto/camellia-aesni-avx-x86_64 0x19711697 camellia_xts_dec_16way +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 0x6f3a8de5 camellia_xts_enc_16way +EXPORT_SYMBOL_GPL arch/x86/crypto/camellia-aesni-avx-x86_64 0x8b44ee75 camellia_ecb_dec_16way +EXPORT_SYMBOL_GPL arch/x86/crypto/camellia-aesni-avx-x86_64 0x9056f10d camellia_xts_enc +EXPORT_SYMBOL_GPL arch/x86/crypto/camellia-aesni-avx-x86_64 0x9380a966 xts_camellia_setkey +EXPORT_SYMBOL_GPL arch/x86/crypto/camellia-aesni-avx-x86_64 0xc00f725a camellia_ctr_16way +EXPORT_SYMBOL_GPL arch/x86/crypto/camellia-aesni-avx-x86_64 0xfea2b457 camellia_xts_dec +EXPORT_SYMBOL_GPL arch/x86/crypto/camellia-x86_64 0x0b901549 camellia_dec_blk_2way +EXPORT_SYMBOL_GPL arch/x86/crypto/camellia-x86_64 0x315d28f7 camellia_crypt_ctr_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 0xee61eb71 camellia_crypt_ctr +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/glue_helper 0x0236f872 glue_xts_req_128bit +EXPORT_SYMBOL_GPL arch/x86/crypto/glue_helper 0x1f748593 glue_ctr_req_128bit +EXPORT_SYMBOL_GPL arch/x86/crypto/glue_helper 0x47c4e08f glue_xts_crypt_128bit_one +EXPORT_SYMBOL_GPL arch/x86/crypto/glue_helper 0x5f78ddda glue_cbc_encrypt_req_128bit +EXPORT_SYMBOL_GPL arch/x86/crypto/glue_helper 0x6c8bf791 glue_cbc_decrypt_req_128bit +EXPORT_SYMBOL_GPL arch/x86/crypto/glue_helper 0xf29a6e3b glue_ecb_req_128bit +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/serpent-avx-x86_64 0x5cea0c9c serpent_ctr_8way_avx +EXPORT_SYMBOL_GPL arch/x86/crypto/serpent-avx-x86_64 0x99341b41 serpent_xts_dec_8way_avx +EXPORT_SYMBOL_GPL arch/x86/crypto/serpent-avx-x86_64 0xa0100109 serpent_xts_dec +EXPORT_SYMBOL_GPL arch/x86/crypto/serpent-avx-x86_64 0xaebf6567 xts_serpent_setkey +EXPORT_SYMBOL_GPL arch/x86/crypto/serpent-avx-x86_64 0xb75988d7 __serpent_crypt_ctr +EXPORT_SYMBOL_GPL arch/x86/crypto/serpent-avx-x86_64 0xbdfa6cc0 serpent_xts_enc_8way_avx +EXPORT_SYMBOL_GPL arch/x86/crypto/serpent-avx-x86_64 0xcee44453 serpent_xts_enc +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 0x2c7b3458 twofish_enc_blk_ctr +EXPORT_SYMBOL_GPL arch/x86/crypto/twofish-x86_64-3way 0x31ddef7a twofish_enc_blk_ctr_3way +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 0x0207761f kvm_irq_has_notifier +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x03ee4856 kvm_slot_page_track_add_page +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x0c2d2138 kvm_read_guest_offset_cached +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x0d8f4740 kvm_mce_cap_supported +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x106c7d30 kvm_load_guest_xsave_state +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x106d6470 kvm_vcpu_destroy +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x1212954f kvm_emulate_instruction +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x1235000a kvm_tsc_scaling_ratio_frac_bits +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x130fd155 supported_xss +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x159b8d5e host_efer +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x15ac9c15 kvm_requeue_exception_e +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x15f5cf6a __tracepoint_kvm_nested_vmexit_inject +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x167cea3a kvm_emulate_wrmsr +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x17426302 kvm_emulate_halt +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x19dd0d58 kvm_write_guest_offset_cached +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x1b74af67 kvm_flush_remote_tlbs +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x1cf65ffc kvm_max_guest_tsc_khz +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x1d013832 kvm_enable_efer_bits +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x1db1c372 enable_vmware_backdoor +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x1de646da __tracepoint_kvm_avic_ga_log +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x1ea6f562 kvm_lapic_expired_hv_timer +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x1fbbf519 kvm_set_msr_common +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x2157b5fc kvm_requeue_exception +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x251e68d2 kvm_load_host_xsave_state +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x2525f4e2 kvm_get_running_vcpu +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x25285ad4 kvm_vcpu_write_guest +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x259e5345 kvm_read_guest_page_mmu +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x27046576 kvm_exit +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x279ba407 reprogram_fixed_counter +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x281bdc11 kvm_vcpu_gfn_to_pfn_atomic +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x28411ed7 kvm_max_tsc_scaling_ratio +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x29547e44 kvm_mmu_clear_dirty_pt_masked +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x2ad7adba kvm_is_visible_gfn +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x2bd1a010 kvm_emulate_cpuid +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x2d82cc24 kvm_spec_ctrl_test_value +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x2ed5c8be kvm_debugfs_dir +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x306eeb45 kvm_apicv_activated +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x30eca570 kvm_vcpu_wake_up +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x31b22fb0 kvm_get_dr +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x325fff64 kvm_slot_page_track_remove_page +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x3285b203 kvm_fast_pio +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x32b74a5b kvm_mmu_free_roots +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x32f13428 gfn_to_pfn_memslot +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x369c979a kvm_mmu_reset_context +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x37dac1c4 kvm_cpu_has_injectable_intr +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x3903d89c vcpu_put +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x39da49d2 kvm_emulate_instruction_from_buffer +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x39fd83db halt_poll_ns_shrink +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x3c1e9f5b kvm_get_msr_common +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x3c2bb1dd kvm_cpuid +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x3c8b970e kvm_intr_is_single_vcpu +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x3cc82f45 __tracepoint_kvm_cr +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x3d35e240 kvm_hv_get_assist_page +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x3e44c603 kvm_write_tsc +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x3eccb9c7 kvm_mtrr_valid +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x431a8ae4 kvm_set_cr3 +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x439fc9cc kvm_vcpu_map +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x46335815 kvm_mmu_unprotect_page_virt +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x470782ab kvm_vcpu_halt +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x478ff58e kvm_lapic_find_highest_irr +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x47ac0eaf kvm_arch_no_poll +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x485cd7f6 kvm_rebooting +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x49fa8ae4 gfn_to_memslot +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x4a0952f7 kvm_mmu_invalidate_gva +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x4bdd73ac kvm_cpu_has_interrupt +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x4c0cb4d3 kvm_apicv_init +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x4e3fd1b4 kvm_release_pfn_clean +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x4f8bd36a kvm_emulate_rdmsr +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x4fb6dc59 kvm_vcpu_unmap +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x50f67267 kvm_read_guest_virt +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x5352956e kvm_apic_update_ppr +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x54774f52 kvm_mmu_slot_leaf_clear_dirty +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x549d3c44 kvm_lapic_switch_to_sw_timer +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x54c264b3 kvm_rdpmc +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x570753e3 kvm_vcpu_update_apicv +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x5931cfc3 kvm_mmu_invlpg +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x598e8a17 __tracepoint_kvm_nested_vmrun +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x59e640c0 halt_poll_ns +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x5d996b31 kvm_set_cpu_caps +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x5dac8728 kvm_arch_has_assigned_device +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x5ee1d894 kvm_vcpu_read_guest_page +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x5f061c48 kvm_init_mmu +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x5fb8848b halt_poll_ns_grow_start +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x6151d896 kvm_set_xcr +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x616b4a1e kvm_mmu_sync_roots +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x6243ac82 __kvm_apic_update_irr +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x62857574 kvm_io_bus_get_dev +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x63270977 kvm_default_tsc_scaling_ratio +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x64fd3176 kvm_get_cs_db_l_bits +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x65c532be kvm_set_msi_irq +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x65ece2a2 __tracepoint_kvm_fast_mmio +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x66c4423a kvm_define_shared_msr +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x67f5e007 kvm_emulate_hypercall +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x6892e3c3 kvm_set_pfn_accessed +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x68b161ee kvm_init_shadow_ept_mmu +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x68f54e0f __tracepoint_kvm_skinit +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x6ae85402 kvm_queue_exception_p +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x6b8190ad handle_fastpath_set_msr_irqoff +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x6cee1206 kvm_vcpu_gfn_to_page +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x6d0fd045 kvm_get_rflags +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x709cd8cb kvm_spurious_fault +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x71043942 kvm_unmap_gfn +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x74428775 kvm_vcpu_gfn_to_pfn +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x74956913 kvm_set_msr +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x74b5cc23 kvm_vcpu_gfn_to_memslot +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x7763a671 __tracepoint_kvm_nested_vmenter_failed +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x7afe324e halt_poll_ns_grow +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x7b3b8ec2 gfn_to_page +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x7c94c99a kvm_release_pfn_dirty +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x7e1936a1 kvm_queue_exception +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x7f9e9c3f kvm_update_dr7 +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x804bcfad kvm_mmu_load +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x806d7c92 kvm_set_apic_base +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x816e4b69 kvm_mmu_slot_set_dirty +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x849344cc __tracepoint_kvm_pml_full +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x84990ecd kvm_apic_clear_irr +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x85fd35c5 kvm_get_msr +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x867690a7 __tracepoint_kvm_msr +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x86931b5d __tracepoint_kvm_avic_incomplete_ipi +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x86e30ff7 kvm_lapic_switch_to_hv_timer +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x87373e07 kvm_get_kvm +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x8789e597 kvm_get_apic_mode +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x87994510 kvm_set_cr8 +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x880d0bb0 kvm_clear_guest_page +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x888d979f __tracepoint_kvm_exit +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x897983ad kvm_write_guest_cached +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x8a5f7def kvm_wait_lapic_expire +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x8ad5594e reprogram_gp_counter +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x8b871f63 kvm_lapic_set_eoi +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x8d2ab664 kvm_lapic_reg_read +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x8d6f7a86 kvm_hv_assist_page_enabled +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x8e982dc5 kvm_read_guest +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x8fe27059 kvm_require_dr +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x91d4d992 __tracepoint_kvm_nested_vmexit +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x91f2fdbc kvm_put_kvm +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x9230461b gfn_to_pfn_prot +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x94abbd88 __tracepoint_kvm_invlpga +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x977232e4 kvm_set_memory_region +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x97e28dc5 vcpu_load +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x97f82fcb kvm_map_gfn +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x9874dc02 kvm_clear_guest +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x98db144d kvm_vcpu_gfn_to_hva +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x98dd5133 kvm_release_page_clean +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x9916bcde kvm_x86_ops +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x9f6d78fc kvm_get_pfn +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x9ff86359 kvm_inject_pending_timer_irqs +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xa0799721 kvm_request_apicv_update +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xa1c4231f kvm_set_pfn_dirty +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xa20d8e0d kvm_handle_page_fault +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xa370635a kvm_require_cpl +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xa3a09a99 gfn_to_pfn +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xa3f93202 kvm_valid_efer +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xa43c83c2 kvm_release_page_dirty +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xa4c000c5 kvm_inject_realmode_interrupt +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xa6152d16 kvm_configure_mmu +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xa75aa833 kvm_put_kvm_no_destroy +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xa7bc6bbf load_pdptrs +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xa85ba0f4 gfn_to_page_many_atomic +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xa90e44f5 kvm_mmu_set_mmio_spte_mask +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xa94afdf1 kvm_set_rflags +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xa96fc535 reprogram_counter +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xa975020d kvm_mmu_set_mask_ptes +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xaa2e0bf6 kvm_mmu_new_pgd +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xab31e82f gfn_to_pfn_memslot_atomic +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xab99afa8 kvm_task_switch +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xabbce7a8 handle_ud +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xabc8a929 kvm_io_bus_write +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xb097e540 __tracepoint_kvm_nested_intercepts +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xb0e0640b kvm_read_guest_cached +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xb3a9fbdc kvm_read_l1_tsc +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xb4b6bba6 current_vcpu +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xb4f2ebe2 kvm_arch_register_noncoherent_dma +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xb6a1cb47 kvm_vcpu_kick +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xb8601b28 kvm_vcpu_exit_request +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xb9615394 kvm_get_cr8 +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xba2758c6 mark_page_dirty +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xba8ca33b kvm_get_apic_base +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xbbe20b0f kvm_skip_emulated_instruction +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xbbe65e51 kvm_write_guest_virt_system +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xbd73a1ac kvm_apic_update_apicv +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xbe580b23 kvm_cpu_get_interrupt +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xbecf5866 kvm_is_linear_rip +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xbfc61ecf __tracepoint_kvm_page_fault +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xc1083882 kvm_set_cr0 +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xc165c621 kvm_init_shadow_mmu +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xc1d769b7 __tracepoint_kvm_nested_intr_vmexit +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xc3b9cad9 kvm_vcpu_block +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xc3feb4d7 kvm_vcpu_write_guest_page +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xc419629a kvm_mmu_invpcid_gva +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xc4478e3a kvm_vcpu_read_guest +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xc44a6f34 kvm_scale_tsc +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xc45b7b15 __kvm_request_immediate_exit +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xc51f3aa7 kvm_can_use_hv_timer +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xc6c05c2e kvm_arch_has_noncoherent_dma +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xc86e6000 kvm_read_guest_page +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xc888a1c2 kvm_cpu_caps +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xca3ab5ad __tracepoint_kvm_ple_window_update +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xca849e98 kvm_apic_update_irr +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xcab0c0a4 __tracepoint_kvm_write_tsc_offset +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xcab381e3 kvm_mmu_unprotect_page +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xcad8a167 kvm_apic_write_nodecode +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xcb31ecb5 __x86_set_memory_region +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xcc36817c kvm_mmu_slot_largepage_remove_write_access +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xcc9e423a kvm_page_track_unregister_notifier +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xce87084b kvm_gfn_to_hva_cache_init +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xcf09ef04 kvm_init +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xd011337f kvm_apic_set_eoi_accelerated +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xd03b581e kvm_find_cpuid_entry +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xd0459e67 kvm_has_tsc_control +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xd16ade6a kvm_deliver_exception_payload +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xd4d300a4 kvm_complete_insn_gp +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xd6ae2993 kvm_apic_has_interrupt +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xd79483ce kvm_mmu_unload +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xd79d88ba kvm_mmu_page_fault +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xd8ae2ac3 __tracepoint_kvm_pi_irte_update +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xd8ca9a5f kvm_lapic_hv_timer_in_use +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xdac62564 kvm_inject_page_fault +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xdafe65e9 kvm_arch_end_assignment +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xdb24ac6b kvm_set_dr +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xdd9e7aeb kvm_set_shared_msr +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xde7823a9 kvm_write_guest +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xdec24039 kvm_vcpu_is_reset_bsp +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xe02a0987 __kvm_set_memory_region +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xe0c61b7a cpuid_query_maxphyaddr +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xe240864b kvm_set_cr4 +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xe2f5544f kvm_emulate_wbinvd +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xe799d8b9 kvm_arch_start_assignment +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xe8b9851e reset_shadow_zero_bits_mask +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xe8bfb392 kvm_vcpu_yield_to +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xe91ef7e4 kvm_apic_match_dest +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xe9674a16 supported_xcr0 +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xec06defc __tracepoint_kvm_avic_unaccelerated_access +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xecd5930f kvm_vcpu_mark_page_dirty +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xed3b51de kvm_mtrr_get_guest_memory_type +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xed60b96b kvm_queue_exception_e +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xeecf997d __gfn_to_pfn_memslot +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xf06010b6 kvm_arch_unregister_noncoherent_dma +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xf110c1dd kvm_get_linear_rip +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xf47e3dba kvm_no_apic_vcpu +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xf525243d gfn_to_hva +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xf5291698 kvm_vcpu_read_guest_atomic +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xf5e7e521 kvm_write_guest_page +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xf5f65110 gfn_to_hva_memslot +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xf6a2b8db __tracepoint_kvm_apicv_update_request +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xfa541ffc __tracepoint_kvm_inj_virq +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xfbd6989e pdptrs_changed +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xfc658ee6 kvm_vcpu_on_spin +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xfd75530e kvm_lapic_reg_write +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xfdd0854e kvm_inject_nmi +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xfe0fb916 kvm_page_track_register_notifier +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xff30a0d3 kvm_inject_emulated_page_fault +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xffb43430 kvm_lmsw +EXPORT_SYMBOL_GPL crypto/af_alg 0x19a62432 af_alg_sendmsg +EXPORT_SYMBOL_GPL crypto/af_alg 0x1a06b2b4 af_alg_async_cb +EXPORT_SYMBOL_GPL crypto/af_alg 0x3046d0cf af_alg_free_sg +EXPORT_SYMBOL_GPL crypto/af_alg 0x4ad0d11f af_alg_make_sg +EXPORT_SYMBOL_GPL crypto/af_alg 0x4b2f0039 af_alg_count_tsgl +EXPORT_SYMBOL_GPL crypto/af_alg 0x4d938890 af_alg_free_resources +EXPORT_SYMBOL_GPL crypto/af_alg 0x60885359 af_alg_unregister_type +EXPORT_SYMBOL_GPL crypto/af_alg 0x62651e62 af_alg_release_parent +EXPORT_SYMBOL_GPL crypto/af_alg 0x73bd0212 af_alg_sendpage +EXPORT_SYMBOL_GPL crypto/af_alg 0x9cf84e54 af_alg_poll +EXPORT_SYMBOL_GPL crypto/af_alg 0xa7223f2b af_alg_accept +EXPORT_SYMBOL_GPL crypto/af_alg 0xba965ea3 af_alg_alloc_areq +EXPORT_SYMBOL_GPL crypto/af_alg 0xc2d8c8a6 af_alg_register_type +EXPORT_SYMBOL_GPL crypto/af_alg 0xd8d85504 af_alg_wait_for_data +EXPORT_SYMBOL_GPL crypto/af_alg 0xe4963e35 af_alg_pull_tsgl +EXPORT_SYMBOL_GPL crypto/af_alg 0xf14c5ad5 af_alg_wmem_wakeup +EXPORT_SYMBOL_GPL crypto/af_alg 0xf20e2fbd af_alg_get_rsgl +EXPORT_SYMBOL_GPL crypto/af_alg 0xf76e6f01 af_alg_release +EXPORT_SYMBOL_GPL crypto/asymmetric_keys/asym_tpm 0x7430f97c tpm_key_create +EXPORT_SYMBOL_GPL crypto/asymmetric_keys/asym_tpm 0x9e78385b asym_tpm_subtype +EXPORT_SYMBOL_GPL crypto/async_tx/async_memcpy 0x463c447f async_memcpy +EXPORT_SYMBOL_GPL crypto/async_tx/async_pq 0x2838d948 async_syndrome_val +EXPORT_SYMBOL_GPL crypto/async_tx/async_pq 0x3838069b async_gen_syndrome +EXPORT_SYMBOL_GPL crypto/async_tx/async_raid6_recov 0x52a4a1b2 async_raid6_datap_recov +EXPORT_SYMBOL_GPL crypto/async_tx/async_raid6_recov 0x7db65604 async_raid6_2data_recov +EXPORT_SYMBOL_GPL crypto/async_tx/async_tx 0x207a6609 __async_tx_find_channel +EXPORT_SYMBOL_GPL crypto/async_tx/async_tx 0x65d2d869 async_tx_quiesce +EXPORT_SYMBOL_GPL crypto/async_tx/async_tx 0x9389b8b4 async_tx_submit +EXPORT_SYMBOL_GPL crypto/async_tx/async_tx 0xe68b72aa async_trigger_callback +EXPORT_SYMBOL_GPL crypto/async_tx/async_xor 0x0ea5ce81 async_xor +EXPORT_SYMBOL_GPL crypto/async_tx/async_xor 0x47505b99 async_xor_val +EXPORT_SYMBOL_GPL crypto/authenc 0x2479193e crypto_authenc_extractkeys +EXPORT_SYMBOL_GPL crypto/blowfish_common 0x6d38e29f blowfish_setkey +EXPORT_SYMBOL_GPL crypto/cast5_generic 0x188d9d26 __cast5_decrypt +EXPORT_SYMBOL_GPL crypto/cast5_generic 0x85413f3b 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 0xcfce512f __cast6_encrypt +EXPORT_SYMBOL_GPL crypto/cast6_generic 0xd76a5716 __cast6_setkey +EXPORT_SYMBOL_GPL crypto/cast6_generic 0xfd2a1409 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 0x01e7d097 cryptd_skcipher_child +EXPORT_SYMBOL_GPL crypto/cryptd 0x0adf21cc cryptd_alloc_skcipher +EXPORT_SYMBOL_GPL crypto/cryptd 0x13fe9867 cryptd_free_skcipher +EXPORT_SYMBOL_GPL crypto/cryptd 0x19120bca cryptd_aead_queued +EXPORT_SYMBOL_GPL crypto/cryptd 0x28cad6c3 cryptd_free_aead +EXPORT_SYMBOL_GPL crypto/cryptd 0x2b116476 cryptd_alloc_ahash +EXPORT_SYMBOL_GPL crypto/cryptd 0xbcae6896 cryptd_ahash_child +EXPORT_SYMBOL_GPL crypto/cryptd 0xd61d9068 cryptd_aead_child +EXPORT_SYMBOL_GPL crypto/cryptd 0xd9bd67d0 cryptd_alloc_aead +EXPORT_SYMBOL_GPL crypto/cryptd 0xdd542672 cryptd_shash_desc +EXPORT_SYMBOL_GPL crypto/cryptd 0xf7d8a19e cryptd_free_ahash +EXPORT_SYMBOL_GPL crypto/cryptd 0xf95a8910 cryptd_skcipher_queued +EXPORT_SYMBOL_GPL crypto/cryptd 0xfe49b809 cryptd_ahash_queued +EXPORT_SYMBOL_GPL crypto/crypto_engine 0x0a0bcbce crypto_finalize_skcipher_request +EXPORT_SYMBOL_GPL crypto/crypto_engine 0x17851f9c crypto_transfer_skcipher_request_to_engine +EXPORT_SYMBOL_GPL crypto/crypto_engine 0x1f0a6dc4 crypto_transfer_hash_request_to_engine +EXPORT_SYMBOL_GPL crypto/crypto_engine 0x2156fa9b crypto_engine_exit +EXPORT_SYMBOL_GPL crypto/crypto_engine 0x285ee5f6 crypto_finalize_hash_request +EXPORT_SYMBOL_GPL crypto/crypto_engine 0x4c25c6e6 crypto_engine_alloc_init_and_set +EXPORT_SYMBOL_GPL crypto/crypto_engine 0x4f6b674d crypto_transfer_akcipher_request_to_engine +EXPORT_SYMBOL_GPL crypto/crypto_engine 0x5fae450c crypto_transfer_aead_request_to_engine +EXPORT_SYMBOL_GPL crypto/crypto_engine 0x6ee4eb3a crypto_engine_alloc_init +EXPORT_SYMBOL_GPL crypto/crypto_engine 0x89c5b094 crypto_finalize_akcipher_request +EXPORT_SYMBOL_GPL crypto/crypto_engine 0xc7181101 crypto_engine_stop +EXPORT_SYMBOL_GPL crypto/crypto_engine 0xd904135b crypto_finalize_aead_request +EXPORT_SYMBOL_GPL crypto/crypto_engine 0xf6366dd8 crypto_engine_start +EXPORT_SYMBOL_GPL crypto/crypto_simd 0x504cb053 simd_aead_create_compat +EXPORT_SYMBOL_GPL crypto/crypto_simd 0x6086664b simd_unregister_aeads +EXPORT_SYMBOL_GPL crypto/crypto_simd 0x66983e96 simd_skcipher_create +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 0xbd90d05b simd_unregister_skciphers +EXPORT_SYMBOL_GPL crypto/crypto_simd 0xbfd26f15 simd_aead_free +EXPORT_SYMBOL_GPL crypto/crypto_simd 0xca8cd043 simd_register_aeads_compat +EXPORT_SYMBOL_GPL crypto/crypto_simd 0xdbe2a90f simd_register_skciphers_compat +EXPORT_SYMBOL_GPL crypto/crypto_simd 0xefe73979 simd_skcipher_free +EXPORT_SYMBOL_GPL crypto/ecdh_generic 0x515ba532 crypto_ecdh_decode_key +EXPORT_SYMBOL_GPL crypto/ecdh_generic 0x7a395d76 crypto_ecdh_encode_key +EXPORT_SYMBOL_GPL crypto/ecdh_generic 0xd5a29505 crypto_ecdh_key_len +EXPORT_SYMBOL_GPL crypto/serpent_generic 0x4eb4c55e __serpent_encrypt +EXPORT_SYMBOL_GPL crypto/serpent_generic 0x74a52392 serpent_setkey +EXPORT_SYMBOL_GPL crypto/serpent_generic 0xbcc074f3 __serpent_decrypt +EXPORT_SYMBOL_GPL crypto/serpent_generic 0xd4c9681a __serpent_setkey +EXPORT_SYMBOL_GPL crypto/sm3_generic 0x0bddca87 sm3_zero_message_hash +EXPORT_SYMBOL_GPL crypto/sm4_generic 0x09a89410 crypto_sm4_expand_key +EXPORT_SYMBOL_GPL crypto/sm4_generic 0x85bd030c crypto_sm4_set_key +EXPORT_SYMBOL_GPL crypto/sm4_generic 0x8b624cc2 crypto_sm4_decrypt +EXPORT_SYMBOL_GPL crypto/sm4_generic 0xd7dc7547 crypto_sm4_encrypt +EXPORT_SYMBOL_GPL crypto/twofish_common 0x79f86a2f twofish_setkey +EXPORT_SYMBOL_GPL crypto/twofish_common 0xe22b7787 __twofish_setkey +EXPORT_SYMBOL_GPL drivers/ata/libahci 0x070cbaf6 ahci_qc_issue +EXPORT_SYMBOL_GPL drivers/ata/libahci 0x1d45ef18 ahci_dev_classify +EXPORT_SYMBOL_GPL drivers/ata/libahci 0x208a609a ahci_error_handler +EXPORT_SYMBOL_GPL drivers/ata/libahci 0x2ebf8a21 ahci_check_ready +EXPORT_SYMBOL_GPL drivers/ata/libahci 0x346d7f13 ahci_start_engine +EXPORT_SYMBOL_GPL drivers/ata/libahci 0x57cda92d ahci_reset_em +EXPORT_SYMBOL_GPL drivers/ata/libahci 0x65a75f05 ahci_init_controller +EXPORT_SYMBOL_GPL drivers/ata/libahci 0x765d67c3 ahci_host_activate +EXPORT_SYMBOL_GPL drivers/ata/libahci 0x76a66e16 ahci_save_initial_config +EXPORT_SYMBOL_GPL drivers/ata/libahci 0x78d292f2 ahci_kick_engine +EXPORT_SYMBOL_GPL drivers/ata/libahci 0x7b97b6f0 ahci_set_em_messages +EXPORT_SYMBOL_GPL drivers/ata/libahci 0x91f4f229 ahci_stop_engine +EXPORT_SYMBOL_GPL drivers/ata/libahci 0x9eb65d67 ahci_handle_port_intr +EXPORT_SYMBOL_GPL drivers/ata/libahci 0xaa14b93c ahci_port_resume +EXPORT_SYMBOL_GPL drivers/ata/libahci 0xac1d4009 ahci_sdev_attrs +EXPORT_SYMBOL_GPL drivers/ata/libahci 0xb4d2a763 ahci_do_hardreset +EXPORT_SYMBOL_GPL drivers/ata/libahci 0xc0374592 ahci_do_softreset +EXPORT_SYMBOL_GPL drivers/ata/libahci 0xd29ab03b ahci_reset_controller +EXPORT_SYMBOL_GPL drivers/ata/libahci 0xd64f8d1c ahci_shost_attrs +EXPORT_SYMBOL_GPL drivers/ata/libahci 0xd7ed8a86 ahci_fill_cmd_slot +EXPORT_SYMBOL_GPL drivers/ata/libahci 0xe895c78c ahci_print_info +EXPORT_SYMBOL_GPL drivers/ata/libahci 0xea50dad3 ahci_ignore_sss +EXPORT_SYMBOL_GPL drivers/ata/libahci 0xec880fd5 ahci_start_fis_rx +EXPORT_SYMBOL_GPL drivers/ata/libahci 0xecf305bc ahci_ops +EXPORT_SYMBOL_GPL drivers/ata/libahci 0xf0a65c6d ahci_pmp_retry_srst_ops +EXPORT_SYMBOL_GPL drivers/ata/libahci_platform 0x00dcc1a6 ahci_platform_shutdown +EXPORT_SYMBOL_GPL drivers/ata/libahci_platform 0x22d709ef ahci_platform_enable_clks +EXPORT_SYMBOL_GPL drivers/ata/libahci_platform 0x295b2d8e ahci_platform_enable_phys +EXPORT_SYMBOL_GPL drivers/ata/libahci_platform 0x306a6234 ahci_platform_get_resources +EXPORT_SYMBOL_GPL drivers/ata/libahci_platform 0x43a3853a ahci_platform_disable_clks +EXPORT_SYMBOL_GPL drivers/ata/libahci_platform 0x482fa15b ahci_platform_disable_phys +EXPORT_SYMBOL_GPL drivers/ata/libahci_platform 0x4bc1a3fa ahci_platform_enable_regulators +EXPORT_SYMBOL_GPL drivers/ata/libahci_platform 0x552b1810 ahci_platform_disable_resources +EXPORT_SYMBOL_GPL drivers/ata/libahci_platform 0x57290836 ahci_platform_resume +EXPORT_SYMBOL_GPL drivers/ata/libahci_platform 0x6a907174 ahci_platform_init_host +EXPORT_SYMBOL_GPL drivers/ata/libahci_platform 0x8b595350 ahci_platform_suspend_host +EXPORT_SYMBOL_GPL drivers/ata/libahci_platform 0x9caf7bd0 ahci_platform_enable_resources +EXPORT_SYMBOL_GPL drivers/ata/libahci_platform 0xb67cd144 ahci_platform_resume_host +EXPORT_SYMBOL_GPL drivers/ata/libahci_platform 0xc6037140 ahci_platform_suspend +EXPORT_SYMBOL_GPL drivers/ata/libahci_platform 0xcae9ad8b ahci_platform_ops +EXPORT_SYMBOL_GPL drivers/ata/libahci_platform 0xd06ce529 ahci_platform_disable_regulators +EXPORT_SYMBOL_GPL drivers/ata/pata_platform 0xd33f97cc __pata_platform_probe +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 0x727ea304 charlcd_poke +EXPORT_SYMBOL_GPL drivers/auxdisplay/charlcd 0x9192a401 charlcd_register +EXPORT_SYMBOL_GPL drivers/auxdisplay/charlcd 0xa2a58bbe charlcd_alloc +EXPORT_SYMBOL_GPL drivers/auxdisplay/charlcd 0xac53a91b charlcd_unregister +EXPORT_SYMBOL_GPL drivers/auxdisplay/charlcd 0xd0cc2e18 charlcd_free +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/base/regmap/regmap-i2c 0x59689bff __regmap_init_i2c +EXPORT_SYMBOL_GPL drivers/base/regmap/regmap-i2c 0xd58aa7c4 __devm_regmap_init_i2c +EXPORT_SYMBOL_GPL drivers/base/regmap/regmap-slimbus 0x4e98bd8b __devm_regmap_init_slimbus +EXPORT_SYMBOL_GPL drivers/base/regmap/regmap-slimbus 0xcb3abcf7 __regmap_init_slimbus +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0x24ca350a bcma_host_pci_up +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0x25801569 bcma_chipco_pll_write +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0x2b00fa97 __bcma_driver_register +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0x2b7bfe65 bcma_chipco_gpio_outen +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0x30245def bcma_chipco_pll_maskset +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0x57cd6552 bcma_chipco_pll_read +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0x62d8a15a bcma_host_pci_down +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0x69b6a34d bcma_core_set_clockmode +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0x7e6b41be bcma_host_pci_irq_ctl +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0x7f638dc1 bcma_chipco_gpio_control +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0x8005c23f bcma_core_pll_ctl +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0x8386bb39 bcma_chipco_chipctl_maskset +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0x856ba5aa bcma_core_enable +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0x95a85852 bcma_core_is_enabled +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0x96077786 bcma_chipco_gpio_out +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0x96446db0 bcma_chipco_regctl_maskset +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0xa5112059 bcma_driver_unregister +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0xa9c4d44a bcma_pmu_get_bus_clock +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0xb48e5fba bcma_find_core_unit +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0xbe65e68a bcma_core_disable +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0xc41e034e bcma_chipco_b_mii_write +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0xd814cd9a bcma_chipco_get_alp_clock +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0xdf633b37 bcma_pmu_spuravoid_pllupdate +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0xfde25818 bcma_core_pci_power_save +EXPORT_SYMBOL_GPL drivers/bus/mhi/core/mhi 0x064739d0 mhi_prepare_for_power_up +EXPORT_SYMBOL_GPL drivers/bus/mhi/core/mhi 0x0e416b37 mhi_prepare_for_transfer +EXPORT_SYMBOL_GPL drivers/bus/mhi/core/mhi 0x23c9ec50 mhi_queue_buf +EXPORT_SYMBOL_GPL drivers/bus/mhi/core/mhi 0x24ca00be mhi_unregister_controller +EXPORT_SYMBOL_GPL drivers/bus/mhi/core/mhi 0x26780d7f mhi_notify +EXPORT_SYMBOL_GPL drivers/bus/mhi/core/mhi 0x2682da04 mhi_queue_dma +EXPORT_SYMBOL_GPL drivers/bus/mhi/core/mhi 0x47d499d1 mhi_unprepare_from_transfer +EXPORT_SYMBOL_GPL drivers/bus/mhi/core/mhi 0x5c8da91d mhi_pm_resume +EXPORT_SYMBOL_GPL drivers/bus/mhi/core/mhi 0x66097313 mhi_register_controller +EXPORT_SYMBOL_GPL drivers/bus/mhi/core/mhi 0x68a5fe52 mhi_async_power_up +EXPORT_SYMBOL_GPL drivers/bus/mhi/core/mhi 0x89287d9b mhi_download_rddm_img +EXPORT_SYMBOL_GPL drivers/bus/mhi/core/mhi 0x8babff54 mhi_unprepare_after_power_down +EXPORT_SYMBOL_GPL drivers/bus/mhi/core/mhi 0xa4f952ec mhi_power_down +EXPORT_SYMBOL_GPL drivers/bus/mhi/core/mhi 0xaa127d0f mhi_device_get_sync +EXPORT_SYMBOL_GPL drivers/bus/mhi/core/mhi 0xb20486e4 mhi_driver_unregister +EXPORT_SYMBOL_GPL drivers/bus/mhi/core/mhi 0xb51ff0dc mhi_pm_suspend +EXPORT_SYMBOL_GPL drivers/bus/mhi/core/mhi 0xb6f13847 mhi_device_get +EXPORT_SYMBOL_GPL drivers/bus/mhi/core/mhi 0xd3626654 mhi_force_rddm_mode +EXPORT_SYMBOL_GPL drivers/bus/mhi/core/mhi 0xd4c8ba6b __mhi_driver_register +EXPORT_SYMBOL_GPL drivers/bus/mhi/core/mhi 0xdf5995b2 mhi_device_put +EXPORT_SYMBOL_GPL drivers/bus/mhi/core/mhi 0xe2f07971 mhi_poll +EXPORT_SYMBOL_GPL drivers/bus/mhi/core/mhi 0xf17565fa mhi_queue_skb +EXPORT_SYMBOL_GPL drivers/counter/counter 0x01aab51b counter_count_direction_str +EXPORT_SYMBOL_GPL drivers/counter/counter 0x178d18cf counter_device_enum_read +EXPORT_SYMBOL_GPL drivers/counter/counter 0x23e376b0 counter_signal_enum_available_read +EXPORT_SYMBOL_GPL drivers/counter/counter 0x28c49f57 counter_count_enum_write +EXPORT_SYMBOL_GPL drivers/counter/counter 0x2988eb5a counter_count_enum_available_read +EXPORT_SYMBOL_GPL drivers/counter/counter 0x4b5b9fef counter_device_enum_write +EXPORT_SYMBOL_GPL drivers/counter/counter 0x6942ee98 counter_device_enum_available_read +EXPORT_SYMBOL_GPL drivers/counter/counter 0x6e7cf17f counter_register +EXPORT_SYMBOL_GPL drivers/counter/counter 0x8136a93f devm_counter_unregister +EXPORT_SYMBOL_GPL drivers/counter/counter 0xb9e5d15b counter_signal_enum_read +EXPORT_SYMBOL_GPL drivers/counter/counter 0xcf41370b counter_signal_enum_write +EXPORT_SYMBOL_GPL drivers/counter/counter 0xe1108c1c counter_unregister +EXPORT_SYMBOL_GPL drivers/counter/counter 0xee526d0f counter_count_mode_str +EXPORT_SYMBOL_GPL drivers/counter/counter 0xef03b205 counter_count_enum_read +EXPORT_SYMBOL_GPL drivers/counter/counter 0xf2de0a07 devm_counter_register +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 0x6259539d sev_issue_cmd_external_user +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 0xd02e197f sev_platform_init +EXPORT_SYMBOL_GPL drivers/crypto/ccp/ccp 0xd2572193 ccp_enqueue_cmd +EXPORT_SYMBOL_GPL drivers/crypto/qat/qat_common/intel_qat 0x152a70dd qat_crypto_dev_config +EXPORT_SYMBOL_GPL drivers/crypto/qat/qat_common/intel_qat 0x232b18c8 adf_enable_vf2pf_comms +EXPORT_SYMBOL_GPL drivers/crypto/qat/qat_common/intel_qat 0x2c8a74b6 adf_cleanup_etr_data +EXPORT_SYMBOL_GPL drivers/crypto/qat/qat_common/intel_qat 0x323b9e4a adf_sriov_configure +EXPORT_SYMBOL_GPL drivers/crypto/qat/qat_common/intel_qat 0x34120499 adf_dev_get +EXPORT_SYMBOL_GPL drivers/crypto/qat/qat_common/intel_qat 0x39dc57f6 adf_dev_init +EXPORT_SYMBOL_GPL drivers/crypto/qat/qat_common/intel_qat 0x3aa56b4b adf_exit_arb +EXPORT_SYMBOL_GPL drivers/crypto/qat/qat_common/intel_qat 0x3c790768 adf_reset_sbr +EXPORT_SYMBOL_GPL drivers/crypto/qat/qat_common/intel_qat 0x3fd163c7 adf_vf2pf_init +EXPORT_SYMBOL_GPL drivers/crypto/qat/qat_common/intel_qat 0x43bffac1 adf_exit_admin_comms +EXPORT_SYMBOL_GPL drivers/crypto/qat/qat_common/intel_qat 0x4833095f adf_vf_isr_resource_free +EXPORT_SYMBOL_GPL drivers/crypto/qat/qat_common/intel_qat 0x49782342 adf_reset_flr +EXPORT_SYMBOL_GPL drivers/crypto/qat/qat_common/intel_qat 0x4db262c0 adf_vf2pf_shutdown +EXPORT_SYMBOL_GPL drivers/crypto/qat/qat_common/intel_qat 0x57e9e988 adf_dev_put +EXPORT_SYMBOL_GPL drivers/crypto/qat/qat_common/intel_qat 0x5b086a56 adf_devmgr_update_class_index +EXPORT_SYMBOL_GPL drivers/crypto/qat/qat_common/intel_qat 0x604cf5f3 adf_dev_shutdown +EXPORT_SYMBOL_GPL drivers/crypto/qat/qat_common/intel_qat 0x61f45a21 adf_send_admin_init +EXPORT_SYMBOL_GPL drivers/crypto/qat/qat_common/intel_qat 0x626553f4 adf_devmgr_pci_to_accel_dev +EXPORT_SYMBOL_GPL drivers/crypto/qat/qat_common/intel_qat 0x64642b8c adf_init_admin_comms +EXPORT_SYMBOL_GPL drivers/crypto/qat/qat_common/intel_qat 0x65a2b234 adf_cfg_add_key_value_param +EXPORT_SYMBOL_GPL drivers/crypto/qat/qat_common/intel_qat 0x76ae3d61 adf_devmgr_in_reset +EXPORT_SYMBOL_GPL drivers/crypto/qat/qat_common/intel_qat 0x7fb4b656 adf_isr_resource_free +EXPORT_SYMBOL_GPL drivers/crypto/qat/qat_common/intel_qat 0x88ebb44a adf_devmgr_rm_dev +EXPORT_SYMBOL_GPL drivers/crypto/qat/qat_common/intel_qat 0x8a9b5a21 adf_dev_stop +EXPORT_SYMBOL_GPL drivers/crypto/qat/qat_common/intel_qat 0x8dc78366 adf_dev_started +EXPORT_SYMBOL_GPL drivers/crypto/qat/qat_common/intel_qat 0x94fef426 adf_cfg_dev_add +EXPORT_SYMBOL_GPL drivers/crypto/qat/qat_common/intel_qat 0x9bb1603e adf_enable_aer +EXPORT_SYMBOL_GPL drivers/crypto/qat/qat_common/intel_qat 0x9f81a44e adf_disable_sriov +EXPORT_SYMBOL_GPL drivers/crypto/qat/qat_common/intel_qat 0xa63994df adf_init_etr_data +EXPORT_SYMBOL_GPL drivers/crypto/qat/qat_common/intel_qat 0xb877045e adf_dev_in_use +EXPORT_SYMBOL_GPL drivers/crypto/qat/qat_common/intel_qat 0xc44e7bd7 adf_devmgr_add_dev +EXPORT_SYMBOL_GPL drivers/crypto/qat/qat_common/intel_qat 0xc791b488 adf_iov_putmsg +EXPORT_SYMBOL_GPL drivers/crypto/qat/qat_common/intel_qat 0xcc3b167a adf_clean_vf_map +EXPORT_SYMBOL_GPL drivers/crypto/qat/qat_common/intel_qat 0xd7f54803 adf_disable_aer +EXPORT_SYMBOL_GPL drivers/crypto/qat/qat_common/intel_qat 0xdfae9680 adf_cfg_dev_remove +EXPORT_SYMBOL_GPL drivers/crypto/qat/qat_common/intel_qat 0xe1901256 adf_init_arb +EXPORT_SYMBOL_GPL drivers/crypto/qat/qat_common/intel_qat 0xe46024bf adf_vf_isr_resource_alloc +EXPORT_SYMBOL_GPL drivers/crypto/qat/qat_common/intel_qat 0xef925847 adf_dev_start +EXPORT_SYMBOL_GPL drivers/crypto/qat/qat_common/intel_qat 0xf572ee9a adf_cfg_section_add +EXPORT_SYMBOL_GPL drivers/crypto/qat/qat_common/intel_qat 0xfeac5c8d adf_isr_resource_alloc +EXPORT_SYMBOL_GPL drivers/dca/dca 0x01a33ab9 dca_unregister_notify +EXPORT_SYMBOL_GPL drivers/dca/dca 0x1c2d2cc8 alloc_dca_provider +EXPORT_SYMBOL_GPL drivers/dca/dca 0x3cae2d6f unregister_dca_provider +EXPORT_SYMBOL_GPL drivers/dca/dca 0x52cee9e1 dca_add_requester +EXPORT_SYMBOL_GPL drivers/dca/dca 0x65462027 free_dca_provider +EXPORT_SYMBOL_GPL drivers/dca/dca 0x75f923aa dca_remove_requester +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 0xe860edf5 register_dca_provider +EXPORT_SYMBOL_GPL drivers/dca/dca 0xfc7f484e dca3_get_tag +EXPORT_SYMBOL_GPL drivers/dma/dw-edma/dw-edma 0x30db3f73 dw_edma_remove +EXPORT_SYMBOL_GPL drivers/dma/dw-edma/dw-edma 0xf899a6d8 dw_edma_probe +EXPORT_SYMBOL_GPL drivers/dma/dw/dw_dmac_core 0x13256fce dw_dma_remove +EXPORT_SYMBOL_GPL drivers/dma/dw/dw_dmac_core 0x89278504 dw_dma_probe +EXPORT_SYMBOL_GPL drivers/dma/dw/dw_dmac_core 0x95918c06 dw_dma_filter +EXPORT_SYMBOL_GPL drivers/dma/dw/dw_dmac_core 0xa8b24e12 idma32_dma_probe +EXPORT_SYMBOL_GPL drivers/dma/dw/dw_dmac_core 0xcd4165fb do_dw_dma_enable +EXPORT_SYMBOL_GPL drivers/dma/dw/dw_dmac_core 0xe7d04f54 idma32_dma_remove +EXPORT_SYMBOL_GPL drivers/dma/dw/dw_dmac_core 0xf97fa2ca do_dw_dma_disable +EXPORT_SYMBOL_GPL drivers/dma/hsu/hsu_dma 0x078317f1 hsu_dma_remove +EXPORT_SYMBOL_GPL drivers/dma/hsu/hsu_dma 0x1928029a hsu_dma_do_irq +EXPORT_SYMBOL_GPL drivers/dma/hsu/hsu_dma 0xebb39cb6 hsu_dma_get_status +EXPORT_SYMBOL_GPL drivers/dma/hsu/hsu_dma 0xf1dbeeb2 hsu_dma_probe +EXPORT_SYMBOL_GPL drivers/dma/virt-dma 0x223e6d77 vchan_find_desc +EXPORT_SYMBOL_GPL drivers/dma/virt-dma 0x6d19810f vchan_init +EXPORT_SYMBOL_GPL drivers/dma/virt-dma 0x79afe4a9 vchan_dma_desc_free_list +EXPORT_SYMBOL_GPL drivers/dma/virt-dma 0xa2be50f6 vchan_tx_desc_free +EXPORT_SYMBOL_GPL drivers/dma/virt-dma 0xb6c53175 vchan_tx_submit +EXPORT_SYMBOL_GPL drivers/edac/amd64_edac_mod 0xec15fa63 amd64_get_dram_hole_info +EXPORT_SYMBOL_GPL drivers/gnss/gnss 0x0f1e934a gnss_put_device +EXPORT_SYMBOL_GPL drivers/gnss/gnss 0x2bcf5aad gnss_insert_raw +EXPORT_SYMBOL_GPL drivers/gnss/gnss 0x9214aa28 gnss_deregister_device +EXPORT_SYMBOL_GPL drivers/gnss/gnss 0xa108ea5b gnss_allocate_device +EXPORT_SYMBOL_GPL drivers/gnss/gnss 0xcc4957c1 gnss_register_device +EXPORT_SYMBOL_GPL drivers/gpio/gpio-generic 0xb02801ef bgpio_init +EXPORT_SYMBOL_GPL drivers/gpio/gpio-max730x 0xc0f6cfcc __max730x_remove +EXPORT_SYMBOL_GPL drivers/gpio/gpio-max730x 0xed761e61 __max730x_probe +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm 0x0e3b2858 drm_hdcp_check_ksvs_revoked +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm 0x1303acb6 drm_gem_cma_vm_ops +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm 0x1ae3bd6a drm_gem_cma_prime_vunmap +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm 0x37aee407 drm_gem_cma_prime_mmap +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm 0x37f8b47c drm_gem_shmem_mmap +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm 0x3e0c4e4d drm_class_device_unregister +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm 0x48ea321e drm_get_unmapped_area +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm 0x49340733 drm_gem_shmem_create +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm 0x4c85bafc drm_gem_shmem_get_sg_table +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm 0x4d4065ec drm_bridge_get_edid +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm 0x56a248f0 drm_gem_cma_dumb_create_internal +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm 0x58d415b7 drm_gem_shmem_prime_import_sg_table +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm 0x5edca03c drm_gem_shmem_free_object +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm 0x5fdf3b01 drm_gem_dumb_map_offset +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm 0x63f03fec drm_gem_shmem_get_pages_sgt +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm 0x691b99a8 drm_gem_cma_prime_vmap +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm 0x69be3af6 drm_gem_cma_prime_import_sg_table +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm 0x6e8cfcea drm_gem_cma_dumb_create +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm 0x73dfbfe4 drm_gem_shmem_dumb_create +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm 0x8e6cb683 drm_bridge_hpd_disable +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm 0x9e98f8f2 drm_bridge_hpd_notify +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm 0xa33d6c20 drm_bridge_get_modes +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm 0xa77a0c3b drm_crtc_add_crc_entry +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm 0xb3df0296 drm_gem_cma_mmap +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm 0xbe969530 drm_gem_cma_free_object +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm 0xc16c3aaa drm_do_get_edid +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm 0xc286c062 drm_bridge_detect +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm 0xd42fd9be drm_gem_cma_prime_get_sg_table +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm 0xd57416c7 drm_gem_cma_create +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm 0xd8c22dc8 drmm_kstrdup +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm 0xd948316d drm_class_device_register +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm 0xe44ae4cf drm_bridge_hpd_enable +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm_kms_helper 0x2dc7ee89 drm_bridge_connector_disable_hpd +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm_kms_helper 0x440b71eb drm_bridge_connector_enable_hpd +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm_kms_helper 0x4513e50f drm_fb_cma_get_gem_obj +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm_kms_helper 0x6d141c5a drm_gem_fb_afbc_init +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm_kms_helper 0x7dad8e6c drm_bridge_connector_init +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm_kms_helper 0x97c5a0ae drm_gem_fb_init_with_funcs +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm_kms_helper 0xb098fcfe drm_gem_fb_prepare_fb +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm_kms_helper 0xbe567c99 drm_gem_fb_get_obj +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm_kms_helper 0xc4f5518e drm_gem_fb_create_with_dirty +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm_kms_helper 0xc6b83e15 drm_gem_fb_create +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm_kms_helper 0xd53779a2 drm_gem_fb_create_with_funcs +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm_kms_helper 0xfc7513fd drm_fb_cma_get_gem_addr +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 0x4537f425 intel_gvt_register_hypervisor +EXPORT_SYMBOL_GPL drivers/gpu/drm/i915/i915 0x500858b9 i915_read_mch_val +EXPORT_SYMBOL_GPL drivers/gpu/drm/i915/i915 0x6fbc5503 intel_gvt_unregister_hypervisor +EXPORT_SYMBOL_GPL drivers/gpu/drm/i915/i915 0xe7237b0b i915_gpu_turbo_disable +EXPORT_SYMBOL_GPL drivers/gpu/drm/ttm/ttm 0x149057c3 ttm_dma_unpopulate +EXPORT_SYMBOL_GPL drivers/gpu/drm/ttm/ttm 0xc160ae68 ttm_dma_page_alloc_debugfs +EXPORT_SYMBOL_GPL drivers/gpu/drm/ttm/ttm 0xddf5d6da ttm_dma_populate +EXPORT_SYMBOL_GPL drivers/hid/hid 0x04ea0eef hidinput_report_event +EXPORT_SYMBOL_GPL drivers/hid/hid 0x05495392 hid_debug +EXPORT_SYMBOL_GPL drivers/hid/hid 0x0c67e504 hid_destroy_device +EXPORT_SYMBOL_GPL drivers/hid/hid 0x19d52f1f hid_quirks_exit +EXPORT_SYMBOL_GPL drivers/hid/hid 0x1c08e848 hid_connect +EXPORT_SYMBOL_GPL drivers/hid/hid 0x1daa4e41 hid_dump_report +EXPORT_SYMBOL_GPL drivers/hid/hid 0x2a6a9d20 hidraw_disconnect +EXPORT_SYMBOL_GPL drivers/hid/hid 0x2e552df9 hid_check_keys_pressed +EXPORT_SYMBOL_GPL drivers/hid/hid 0x2ea8857c hidraw_connect +EXPORT_SYMBOL_GPL drivers/hid/hid 0x317657a2 hidinput_count_leds +EXPORT_SYMBOL_GPL drivers/hid/hid 0x3303fb40 hid_validate_values +EXPORT_SYMBOL_GPL drivers/hid/hid 0x3436cf63 hidinput_calc_abs_res +EXPORT_SYMBOL_GPL drivers/hid/hid 0x3bc738de hid_output_report +EXPORT_SYMBOL_GPL drivers/hid/hid 0x41780fe7 hid_setup_resolution_multiplier +EXPORT_SYMBOL_GPL drivers/hid/hid 0x41da324a hid_hw_open +EXPORT_SYMBOL_GPL drivers/hid/hid 0x41f8b137 hidinput_find_field +EXPORT_SYMBOL_GPL drivers/hid/hid 0x443cb3a2 hid_report_raw_event +EXPORT_SYMBOL_GPL drivers/hid/hid 0x45b07c85 hid_hw_stop +EXPORT_SYMBOL_GPL drivers/hid/hid 0x47eb802a hid_hw_close +EXPORT_SYMBOL_GPL drivers/hid/hid 0x5384966d hid_dump_device +EXPORT_SYMBOL_GPL drivers/hid/hid 0x65609274 hid_unregister_driver +EXPORT_SYMBOL_GPL drivers/hid/hid 0x67811d46 hid_dump_input +EXPORT_SYMBOL_GPL drivers/hid/hid 0x67fc3021 hid_ignore +EXPORT_SYMBOL_GPL drivers/hid/hid 0x6808eed2 hid_lookup_quirk +EXPORT_SYMBOL_GPL drivers/hid/hid 0x6ec16129 __hid_request +EXPORT_SYMBOL_GPL drivers/hid/hid 0x6ef3f035 hid_hw_start +EXPORT_SYMBOL_GPL drivers/hid/hid 0x707895f9 hid_add_device +EXPORT_SYMBOL_GPL drivers/hid/hid 0x74b51351 hid_disconnect +EXPORT_SYMBOL_GPL drivers/hid/hid 0x7797f0f1 hid_alloc_report_buf +EXPORT_SYMBOL_GPL drivers/hid/hid 0x787b6f9f hid_resolv_usage +EXPORT_SYMBOL_GPL drivers/hid/hid 0x84aeeded hid_open_report +EXPORT_SYMBOL_GPL drivers/hid/hid 0x87ed7b02 hidraw_report_event +EXPORT_SYMBOL_GPL drivers/hid/hid 0x8b13a8b8 hid_snto32 +EXPORT_SYMBOL_GPL drivers/hid/hid 0x9bf26f84 hid_parse_report +EXPORT_SYMBOL_GPL drivers/hid/hid 0xb900635b hid_field_extract +EXPORT_SYMBOL_GPL drivers/hid/hid 0xc1d510d1 hidinput_connect +EXPORT_SYMBOL_GPL drivers/hid/hid 0xcb96b0fc hid_input_report +EXPORT_SYMBOL_GPL drivers/hid/hid 0xcc6a0d2f hid_set_field +EXPORT_SYMBOL_GPL drivers/hid/hid 0xd1457816 hid_match_device +EXPORT_SYMBOL_GPL drivers/hid/hid 0xe23c82b8 hidinput_get_led_field +EXPORT_SYMBOL_GPL drivers/hid/hid 0xe5044bb8 hid_debug_event +EXPORT_SYMBOL_GPL drivers/hid/hid 0xe9a2abd9 __hid_register_driver +EXPORT_SYMBOL_GPL drivers/hid/hid 0xeaa809db hid_compare_device_paths +EXPORT_SYMBOL_GPL drivers/hid/hid 0xf3d95f22 hid_dump_field +EXPORT_SYMBOL_GPL drivers/hid/hid 0xf3feb127 hid_register_report +EXPORT_SYMBOL_GPL drivers/hid/hid 0xf671164a hid_allocate_device +EXPORT_SYMBOL_GPL drivers/hid/hid 0xfa355613 hid_quirks_init +EXPORT_SYMBOL_GPL drivers/hid/hid 0xfcf856d6 hidinput_disconnect +EXPORT_SYMBOL_GPL drivers/hid/hid-sensor-hub 0x04ea0a50 sensor_hub_remove_callback +EXPORT_SYMBOL_GPL drivers/hid/hid-sensor-hub 0x1758bcb3 sensor_hub_input_attr_get_raw_value +EXPORT_SYMBOL_GPL drivers/hid/hid-sensor-hub 0x1f9c0ea6 sensor_hub_register_callback +EXPORT_SYMBOL_GPL drivers/hid/hid-sensor-hub 0x28929bf7 sensor_hub_set_feature +EXPORT_SYMBOL_GPL drivers/hid/hid-sensor-hub 0x6e0bd5a0 hid_sensor_get_usage_index +EXPORT_SYMBOL_GPL drivers/hid/hid-sensor-hub 0x711f139a sensor_hub_get_feature +EXPORT_SYMBOL_GPL drivers/hid/hid-sensor-hub 0xa9efe49b sensor_hub_input_get_attribute_info +EXPORT_SYMBOL_GPL drivers/hid/hid-sensor-hub 0xab54b99d sensor_hub_device_open +EXPORT_SYMBOL_GPL drivers/hid/hid-sensor-hub 0xd1aa0f05 sensor_hub_device_close +EXPORT_SYMBOL_GPL drivers/hid/uhid 0xa3f6c75a uhid_hid_driver +EXPORT_SYMBOL_GPL drivers/hwmon/adt7x10 0x396cf8ba adt7x10_dev_pm_ops +EXPORT_SYMBOL_GPL drivers/hwmon/adt7x10 0x5b360680 adt7x10_probe +EXPORT_SYMBOL_GPL drivers/hwmon/adt7x10 0xa0c56acd adt7x10_remove +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/ltc2947-core 0xc778b676 ltc2947_pm_ops +EXPORT_SYMBOL_GPL drivers/i2c/busses/i2c-designware-core 0x0608e591 i2c_dw_probe_master +EXPORT_SYMBOL_GPL drivers/i2c/busses/i2c-designware-core 0x0e383c5c i2c_dw_prepare_clk +EXPORT_SYMBOL_GPL drivers/i2c/busses/i2c-designware-core 0x11d501b7 i2c_dw_adjust_bus_speed +EXPORT_SYMBOL_GPL drivers/i2c/busses/i2c-designware-core 0x87232615 i2c_dw_acpi_configure +EXPORT_SYMBOL_GPL drivers/i2c/busses/i2c-designware-core 0x90e975e8 i2c_dw_validate_speed +EXPORT_SYMBOL_GPL drivers/i2c/busses/i2c-designware-core 0xa1acf0a9 i2c_dw_configure_master +EXPORT_SYMBOL_GPL drivers/i2c/busses/i2c-nforce2 0x70c6bf9d nforce2_smbus +EXPORT_SYMBOL_GPL drivers/i2c/i2c-core 0x1050d843 i2c_new_scanned_device +EXPORT_SYMBOL_GPL drivers/i2c/i2c-core 0x172aa701 i2c_parse_fw_timings +EXPORT_SYMBOL_GPL drivers/i2c/i2c-core 0x283ac817 i2c_adapter_depth +EXPORT_SYMBOL_GPL drivers/i2c/i2c-core 0x32597e5b i2c_unregister_device +EXPORT_SYMBOL_GPL drivers/i2c/i2c-core 0x42041512 i2c_get_dma_safe_msg_buf +EXPORT_SYMBOL_GPL drivers/i2c/i2c-core 0x4dae16e4 i2c_put_dma_safe_msg_buf +EXPORT_SYMBOL_GPL drivers/i2c/i2c-core 0x4e75f24f i2c_add_numbered_adapter +EXPORT_SYMBOL_GPL drivers/i2c/i2c-core 0x51331770 i2c_recover_bus +EXPORT_SYMBOL_GPL drivers/i2c/i2c-core 0x5da741d4 i2c_adapter_type +EXPORT_SYMBOL_GPL drivers/i2c/i2c-core 0x5ff9eaeb i2c_bus_type +EXPORT_SYMBOL_GPL drivers/i2c/i2c-core 0x60806523 i2c_acpi_get_i2c_resource +EXPORT_SYMBOL_GPL drivers/i2c/i2c-core 0x60c7e62e i2c_get_device_id +EXPORT_SYMBOL_GPL drivers/i2c/i2c-core 0x8e019cd1 i2c_client_type +EXPORT_SYMBOL_GPL drivers/i2c/i2c-core 0x8fb0deda i2c_acpi_find_bus_speed +EXPORT_SYMBOL_GPL drivers/i2c/i2c-core 0x99e83de5 i2c_probe_func_quick_read +EXPORT_SYMBOL_GPL drivers/i2c/i2c-core 0x9df24bbe i2c_new_ancillary_device +EXPORT_SYMBOL_GPL drivers/i2c/i2c-core 0xa2a1f7ae i2c_match_id +EXPORT_SYMBOL_GPL drivers/i2c/i2c-core 0xa7e33526 i2c_handle_smbus_host_notify +EXPORT_SYMBOL_GPL drivers/i2c/i2c-core 0xaf4dcb0d i2c_new_smbus_alert_device +EXPORT_SYMBOL_GPL drivers/i2c/i2c-core 0xb79a646a devm_i2c_new_dummy_device +EXPORT_SYMBOL_GPL drivers/i2c/i2c-core 0xc0206d83 i2c_acpi_find_adapter_by_handle +EXPORT_SYMBOL_GPL drivers/i2c/i2c-core 0xd3446d1b i2c_new_dummy_device +EXPORT_SYMBOL_GPL drivers/i2c/i2c-core 0xdfb34dfd i2c_generic_scl_recovery +EXPORT_SYMBOL_GPL drivers/i2c/i2c-core 0xe1854240 i2c_for_each_dev +EXPORT_SYMBOL_GPL drivers/i2c/i2c-core 0xe2ae3638 i2c_acpi_new_device +EXPORT_SYMBOL_GPL drivers/i2c/i2c-core 0xf0097774 i2c_new_client_device +EXPORT_SYMBOL_GPL drivers/i2c/i2c-mux 0x39a6564f i2c_root_adapter +EXPORT_SYMBOL_GPL drivers/i2c/i2c-mux 0x52627e80 i2c_mux_alloc +EXPORT_SYMBOL_GPL drivers/i2c/i2c-mux 0x98e8b439 i2c_mux_add_adapter +EXPORT_SYMBOL_GPL drivers/i2c/i2c-mux 0xd4235da6 i2c_mux_del_adapters +EXPORT_SYMBOL_GPL drivers/i2c/i2c-smbus 0x88822d96 i2c_register_spd +EXPORT_SYMBOL_GPL drivers/i2c/i2c-smbus 0xb0114900 i2c_handle_smbus_alert +EXPORT_SYMBOL_GPL drivers/i3c/i3c 0x265a93b3 i3c_master_disec_locked +EXPORT_SYMBOL_GPL drivers/i3c/i3c 0x34303c6b i3c_master_enec_locked +EXPORT_SYMBOL_GPL drivers/i3c/i3c 0x34eb2dd1 i3c_device_match_id +EXPORT_SYMBOL_GPL drivers/i3c/i3c 0x37d9402f i3c_generic_ibi_alloc_pool +EXPORT_SYMBOL_GPL drivers/i3c/i3c 0x39e16025 i3c_master_add_i3c_dev_locked +EXPORT_SYMBOL_GPL drivers/i3c/i3c 0x3af23ce0 i3c_device_do_priv_xfers +EXPORT_SYMBOL_GPL drivers/i3c/i3c 0x4de225b8 i3c_generic_ibi_recycle_slot +EXPORT_SYMBOL_GPL drivers/i3c/i3c 0x5f7ee948 i3c_device_disable_ibi +EXPORT_SYMBOL_GPL drivers/i3c/i3c 0x687ffdbc i3c_device_enable_ibi +EXPORT_SYMBOL_GPL drivers/i3c/i3c 0x76fe3e05 i3c_generic_ibi_free_pool +EXPORT_SYMBOL_GPL drivers/i3c/i3c 0x7d016279 i3c_device_free_ibi +EXPORT_SYMBOL_GPL drivers/i3c/i3c 0x8afc649b i3c_master_entdaa_locked +EXPORT_SYMBOL_GPL drivers/i3c/i3c 0x8f2d04e3 i3c_master_defslvs_locked +EXPORT_SYMBOL_GPL drivers/i3c/i3c 0x99f2f6f5 i3c_master_get_free_addr +EXPORT_SYMBOL_GPL drivers/i3c/i3c 0x9de98083 i3c_device_request_ibi +EXPORT_SYMBOL_GPL drivers/i3c/i3c 0xaf95ce6b dev_to_i3cdev +EXPORT_SYMBOL_GPL drivers/i3c/i3c 0xb04e1678 i3c_driver_register_with_owner +EXPORT_SYMBOL_GPL drivers/i3c/i3c 0xbb3a1689 i3cdev_to_dev +EXPORT_SYMBOL_GPL drivers/i3c/i3c 0xca56ffeb i3c_master_queue_ibi +EXPORT_SYMBOL_GPL drivers/i3c/i3c 0xda2558c1 i3c_master_set_info +EXPORT_SYMBOL_GPL drivers/i3c/i3c 0xdb8a179d i3c_device_get_info +EXPORT_SYMBOL_GPL drivers/i3c/i3c 0xdd5aa70d i3c_driver_unregister +EXPORT_SYMBOL_GPL drivers/i3c/i3c 0xe2acb964 i3c_master_register +EXPORT_SYMBOL_GPL drivers/i3c/i3c 0xe6ed3e66 i3c_master_do_daa +EXPORT_SYMBOL_GPL drivers/i3c/i3c 0xfbd94224 i3c_generic_ibi_get_free_slot +EXPORT_SYMBOL_GPL drivers/i3c/i3c 0xff7a5721 i3c_master_unregister +EXPORT_SYMBOL_GPL drivers/infiniband/core/ib_core 0xdbd019c4 ib_wq +EXPORT_SYMBOL_GPL drivers/infiniband/ulp/rtrs/rtrs-core 0x19fe2fe2 rtrs_cq_qp_create +EXPORT_SYMBOL_GPL drivers/infiniband/ulp/rtrs/rtrs-core 0x28975fe3 rtrs_send_hb_ack +EXPORT_SYMBOL_GPL drivers/infiniband/ulp/rtrs/rtrs-core 0x49a2db8d rtrs_iu_post_recv +EXPORT_SYMBOL_GPL drivers/infiniband/ulp/rtrs/rtrs-core 0x5c03acd7 rtrs_iu_free +EXPORT_SYMBOL_GPL drivers/infiniband/ulp/rtrs/rtrs-core 0x68b7fa88 rtrs_iu_post_send +EXPORT_SYMBOL_GPL drivers/infiniband/ulp/rtrs/rtrs-core 0x6b513fe8 rtrs_init_hb +EXPORT_SYMBOL_GPL drivers/infiniband/ulp/rtrs/rtrs-core 0x7830c5b2 rtrs_start_hb +EXPORT_SYMBOL_GPL drivers/infiniband/ulp/rtrs/rtrs-core 0x8bafac00 rtrs_iu_alloc +EXPORT_SYMBOL_GPL drivers/infiniband/ulp/rtrs/rtrs-core 0x8d371387 rtrs_cq_qp_destroy +EXPORT_SYMBOL_GPL drivers/infiniband/ulp/rtrs/rtrs-core 0xa3ead9ba rtrs_iu_post_rdma_write_imm +EXPORT_SYMBOL_GPL drivers/infiniband/ulp/rtrs/rtrs-core 0xbb6e2a68 rtrs_post_recv_empty +EXPORT_SYMBOL_GPL drivers/infiniband/ulp/rtrs/rtrs-core 0xdfabfcf0 rtrs_stop_hb +EXPORT_SYMBOL_GPL drivers/infiniband/ulp/rtrs/rtrs-core 0xeade1756 rtrs_post_rdma_write_imm_empty +EXPORT_SYMBOL_GPL drivers/input/ff-memless 0x79d143a3 input_ff_create_memless +EXPORT_SYMBOL_GPL drivers/input/matrix-keymap 0xeac66055 matrix_keypad_parse_properties +EXPORT_SYMBOL_GPL drivers/ipack/ipack 0x2a2b08a0 ipack_put_device +EXPORT_SYMBOL_GPL drivers/ipack/ipack 0x3105503a ipack_bus_unregister +EXPORT_SYMBOL_GPL drivers/ipack/ipack 0x3b3915ab ipack_device_del +EXPORT_SYMBOL_GPL drivers/ipack/ipack 0x44db688c ipack_device_add +EXPORT_SYMBOL_GPL drivers/ipack/ipack 0x47fe92c9 ipack_driver_register +EXPORT_SYMBOL_GPL drivers/ipack/ipack 0x4b42c40d ipack_driver_unregister +EXPORT_SYMBOL_GPL drivers/ipack/ipack 0x8ab285c9 ipack_get_device +EXPORT_SYMBOL_GPL drivers/ipack/ipack 0xb68731f6 ipack_bus_register +EXPORT_SYMBOL_GPL drivers/ipack/ipack 0xfa49e22d ipack_device_init +EXPORT_SYMBOL_GPL drivers/leds/led-class 0x0c5c0f43 devm_led_classdev_unregister +EXPORT_SYMBOL_GPL drivers/leds/led-class 0x12b5d089 devm_led_classdev_register_ext +EXPORT_SYMBOL_GPL drivers/leds/led-class 0x14b55dbf led_classdev_register_ext +EXPORT_SYMBOL_GPL drivers/leds/led-class 0x2c131fcc led_classdev_resume +EXPORT_SYMBOL_GPL drivers/leds/led-class 0x2cea10a9 devm_of_led_get +EXPORT_SYMBOL_GPL drivers/leds/led-class 0x2f2b94eb of_led_get +EXPORT_SYMBOL_GPL drivers/leds/led-class 0x4c0a3e5f led_classdev_suspend +EXPORT_SYMBOL_GPL drivers/leds/led-class 0x4d10ddf1 led_classdev_notify_brightness_hw_changed +EXPORT_SYMBOL_GPL drivers/leds/led-class 0xa44896ce led_put +EXPORT_SYMBOL_GPL drivers/leds/led-class 0xe874bca2 led_classdev_unregister +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/md/bcache/bcache 0x15b97715 __tracepoint_bcache_write +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0x19b88bec __tracepoint_bcache_writeback +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0x2307b422 __tracepoint_bcache_journal_full +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0x2b46c4b6 __tracepoint_bcache_btree_node_alloc_fail +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0x2b793afb __tracepoint_bcache_read +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0x2fbf8560 __tracepoint_bcache_btree_read +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0x33554606 __tracepoint_bcache_journal_entry_full +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0x414c7765 __tracepoint_bcache_btree_node_alloc +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0x5f6a4a3e __tracepoint_bcache_btree_node_free +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0x65fb81f0 __tracepoint_bcache_btree_node_compact +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0x6b1045c7 __tracepoint_bcache_btree_set_root +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0x7260fb66 __tracepoint_bcache_btree_write +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0x748968f6 __tracepoint_bcache_btree_insert_key +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0x7574c715 __tracepoint_bcache_gc_end +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0x7c8a33fe __tracepoint_bcache_read_retry +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0x96bf5dba __tracepoint_bcache_writeback_collision +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0xa353964f __tracepoint_bcache_request_end +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0xa4682eff __tracepoint_bcache_gc_start +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0xab4c5652 __tracepoint_bcache_btree_node_split +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0xb22f8879 __tracepoint_bcache_bypass_sequential +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0xbf53dc9d __tracepoint_bcache_btree_gc_coalesce +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0xc00185bc __tracepoint_bcache_gc_copy_collision +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0xc13b483f __tracepoint_bcache_invalidate +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0xc36e201d __tracepoint_bcache_gc_copy +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0xc8feefc9 __tracepoint_bcache_alloc_fail +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0xd8da0f0e __tracepoint_bcache_cache_insert +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0xd9f20dee __tracepoint_bcache_journal_replay_key +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0xe9c4d700 __tracepoint_bcache_bypass_congested +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0xee603d81 __tracepoint_bcache_journal_write +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0xf5d8bf62 __tracepoint_bcache_btree_cache_cannibalize +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0xf8502c64 __tracepoint_bcache_request_start +EXPORT_SYMBOL_GPL drivers/md/dm-bio-prison 0x13e8a6d3 dm_cell_unlock_v2 +EXPORT_SYMBOL_GPL drivers/md/dm-bio-prison 0x17dd39d6 dm_deferred_set_create +EXPORT_SYMBOL_GPL drivers/md/dm-bio-prison 0x2eb01e04 dm_deferred_set_destroy +EXPORT_SYMBOL_GPL drivers/md/dm-bio-prison 0x340856d9 dm_cell_visit_release +EXPORT_SYMBOL_GPL drivers/md/dm-bio-prison 0x35775939 dm_bio_prison_alloc_cell +EXPORT_SYMBOL_GPL drivers/md/dm-bio-prison 0x386cfa91 dm_cell_quiesce_v2 +EXPORT_SYMBOL_GPL drivers/md/dm-bio-prison 0x44e0eb33 dm_cell_lock_v2 +EXPORT_SYMBOL_GPL drivers/md/dm-bio-prison 0x46ef8a86 dm_cell_error +EXPORT_SYMBOL_GPL drivers/md/dm-bio-prison 0x53066943 dm_cell_release_no_holder +EXPORT_SYMBOL_GPL drivers/md/dm-bio-prison 0x5f3896eb dm_bio_prison_free_cell +EXPORT_SYMBOL_GPL drivers/md/dm-bio-prison 0x65c0d76c 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 0x753e20b2 dm_bio_prison_create +EXPORT_SYMBOL_GPL drivers/md/dm-bio-prison 0x778d7196 dm_bio_detain +EXPORT_SYMBOL_GPL drivers/md/dm-bio-prison 0x7c4b1bb6 dm_cell_get_v2 +EXPORT_SYMBOL_GPL drivers/md/dm-bio-prison 0xaa8fd435 dm_cell_promote_or_release +EXPORT_SYMBOL_GPL drivers/md/dm-bio-prison 0xace9b57b dm_bio_prison_destroy_v2 +EXPORT_SYMBOL_GPL drivers/md/dm-bio-prison 0xada2c934 dm_get_cell +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 0xc1bd4f7d dm_bio_prison_free_cell_v2 +EXPORT_SYMBOL_GPL drivers/md/dm-bio-prison 0xc89abf9b dm_cell_put_v2 +EXPORT_SYMBOL_GPL drivers/md/dm-bio-prison 0xca2e3a88 dm_deferred_entry_inc +EXPORT_SYMBOL_GPL drivers/md/dm-bio-prison 0xd99e003d dm_bio_prison_create_v2 +EXPORT_SYMBOL_GPL drivers/md/dm-bio-prison 0xe285b731 dm_cell_lock_promote_v2 +EXPORT_SYMBOL_GPL drivers/md/dm-bio-prison 0xf3cfa98e dm_cell_release +EXPORT_SYMBOL_GPL drivers/md/dm-bufio 0x0ad0dc4f dm_bufio_mark_buffer_dirty +EXPORT_SYMBOL_GPL drivers/md/dm-bufio 0x111ab12a dm_bufio_mark_partial_buffer_dirty +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 0x6aebce95 dm_bufio_issue_discard +EXPORT_SYMBOL_GPL drivers/md/dm-bufio 0x6d3f57bd dm_bufio_get_client +EXPORT_SYMBOL_GPL drivers/md/dm-bufio 0x72f07bf4 dm_bufio_set_minimum_buffers +EXPORT_SYMBOL_GPL drivers/md/dm-bufio 0x74dcd98c dm_bufio_get_aux_data +EXPORT_SYMBOL_GPL drivers/md/dm-bufio 0x7c381a76 dm_bufio_get_block_size +EXPORT_SYMBOL_GPL drivers/md/dm-bufio 0x867e87eb dm_bufio_get_dm_io_client +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 0xb2438d54 dm_bufio_release_move +EXPORT_SYMBOL_GPL drivers/md/dm-bufio 0xc0d7df85 dm_bufio_new +EXPORT_SYMBOL_GPL drivers/md/dm-bufio 0xc90df7e5 dm_bufio_prefetch +EXPORT_SYMBOL_GPL drivers/md/dm-bufio 0xc9a3422d dm_bufio_write_dirty_buffers_async +EXPORT_SYMBOL_GPL drivers/md/dm-bufio 0xcbbbf9d1 dm_bufio_client_create +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 0x5435a0e4 dm_cache_policy_unregister +EXPORT_SYMBOL_GPL drivers/md/dm-cache 0x5adc2807 btracker_destroy +EXPORT_SYMBOL_GPL drivers/md/dm-cache 0x5de611a9 btracker_nr_writebacks_queued +EXPORT_SYMBOL_GPL drivers/md/dm-cache 0x7890d535 dm_cache_policy_get_name +EXPORT_SYMBOL_GPL drivers/md/dm-cache 0x87bee547 btracker_queue +EXPORT_SYMBOL_GPL drivers/md/dm-cache 0x890723f7 dm_cache_policy_get_version +EXPORT_SYMBOL_GPL drivers/md/dm-cache 0x90c2d715 dm_cache_policy_register +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 0xadbefda4 dm_cache_policy_destroy +EXPORT_SYMBOL_GPL drivers/md/dm-cache 0xbf1a2968 btracker_create +EXPORT_SYMBOL_GPL drivers/md/dm-cache 0xccfe6409 btracker_nr_demotions_queued +EXPORT_SYMBOL_GPL drivers/md/dm-cache 0xcf8c2590 dm_cache_policy_get_hint_size +EXPORT_SYMBOL_GPL drivers/md/dm-cache 0xe1bdae47 dm_cache_policy_create +EXPORT_SYMBOL_GPL drivers/md/dm-multipath 0x2abdc735 dm_register_path_selector +EXPORT_SYMBOL_GPL drivers/md/dm-multipath 0xc8f2f568 dm_unregister_path_selector +EXPORT_SYMBOL_GPL drivers/md/dm-region-hash 0x01d2f9ac dm_rh_recovery_start +EXPORT_SYMBOL_GPL drivers/md/dm-region-hash 0x0c998fc8 dm_rh_bio_to_region +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 0x57e16c3e dm_rh_get_state +EXPORT_SYMBOL_GPL drivers/md/dm-region-hash 0x5f4a6e61 dm_rh_dec +EXPORT_SYMBOL_GPL drivers/md/dm-region-hash 0x632a7d15 dm_rh_dirty_log +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 0xadece54d dm_region_hash_create +EXPORT_SYMBOL_GPL drivers/md/dm-region-hash 0xb7e4d4b8 dm_rh_mark_nosync +EXPORT_SYMBOL_GPL drivers/md/dm-region-hash 0xb8091df8 dm_rh_delay +EXPORT_SYMBOL_GPL drivers/md/dm-region-hash 0xbe38a431 dm_rh_recovery_prepare +EXPORT_SYMBOL_GPL drivers/md/dm-region-hash 0xce4077ef dm_rh_inc_pending +EXPORT_SYMBOL_GPL drivers/md/dm-region-hash 0xd8aa4284 dm_rh_region_context +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 0x09cc81fa dm_btree_cursor_skip +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x0a7e77f3 dm_btree_cursor_end +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x0b25f6bc dm_array_resize +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x0b36102c dm_array_empty +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x0be67537 dm_btree_walk +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x0e198232 dm_btree_insert +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x10e6ccea dm_bitset_clear_bit +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x16af9071 dm_array_set_value +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x1e3f728d dm_block_data +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x23ebd5fb dm_bitset_set_bit +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x2417c5c4 dm_btree_empty +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x24621ca3 dm_sm_disk_open +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x2adee13f dm_btree_cursor_next +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 0x34d45c77 dm_btree_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 0x36a34e58 dm_array_cursor_get_value +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x36b84cda dm_array_del +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x3a797d19 dm_btree_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 0x432b8178 dm_array_cursor_begin +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x4557b425 dm_bitset_test_bit +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x48d1c7dc dm_btree_find_lowest_key +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x48e323be dm_bm_unlock +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x49081644 dm_btree_remove +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x4a4cb558 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 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 0x5cf0d0bb dm_tm_create_with_sm +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x63b0c22d dm_bitset_flush +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x688d422d dm_bm_block_size +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x6af8a872 dm_array_info_init +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x6bb4bf8f dm_array_cursor_next +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x6e1e3821 dm_array_walk +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x6f2fe3c4 dm_btree_remove_leaves +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 0x7485935a dm_btree_lookup +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x7551b46e dm_tm_open_with_sm +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x764567c8 dm_btree_find_highest_key +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 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 0x885b0024 dm_array_new +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x89783bda dm_array_cursor_end +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 0x95a52abd dm_bm_is_read_only +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x97263968 dm_bitset_resize +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x98db2687 dm_bitset_cursor_end +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 0x9e98460e dm_bitset_empty +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0xa2ea5542 dm_bitset_del +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0xa3cc1157 dm_btree_cursor_begin +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0xa51fbedc dm_bitset_new +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0xa54dad76 dm_block_manager_create +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0xaab0ef04 dm_bitset_cursor_skip +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0xb6949944 dm_array_get_value +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0xbb461fb7 dm_bitset_cursor_begin +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0xbbb5df05 dm_array_cursor_skip +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0xc248bde2 dm_disk_bitset_init +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0xcedfc878 dm_bitset_cursor_get_value +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0xd163cade dm_tm_commit +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0xd51c29f1 dm_sm_disk_create +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0xd6711a58 dm_bitset_cursor_next +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0xe781f874 dm_tm_dec +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0xf398644f dm_btree_lookup_next +EXPORT_SYMBOL_GPL drivers/media/cec/core/cec 0x149f6eb1 cec_notifier_parse_hdmi_phandle +EXPORT_SYMBOL_GPL drivers/media/cec/core/cec 0x19542cd3 cec_transmit_attempt_done_ts +EXPORT_SYMBOL_GPL drivers/media/cec/core/cec 0x26ec4557 cec_queue_pin_cec_event +EXPORT_SYMBOL_GPL drivers/media/cec/core/cec 0x286dbdb2 cec_s_phys_addr_from_edid +EXPORT_SYMBOL_GPL drivers/media/cec/core/cec 0x2a57c7b3 cec_fill_conn_info_from_drm +EXPORT_SYMBOL_GPL drivers/media/cec/core/cec 0x49d89540 cec_transmit_done_ts +EXPORT_SYMBOL_GPL drivers/media/cec/core/cec 0x4b5d1dee cec_register_adapter +EXPORT_SYMBOL_GPL drivers/media/cec/core/cec 0x57482c39 cec_queue_pin_hpd_event +EXPORT_SYMBOL_GPL drivers/media/cec/core/cec 0x6f144ca8 cec_transmit_msg +EXPORT_SYMBOL_GPL drivers/media/cec/core/cec 0x763cf1df cec_delete_adapter +EXPORT_SYMBOL_GPL drivers/media/cec/core/cec 0x80ddabaa cec_notifier_cec_adap_unregister +EXPORT_SYMBOL_GPL drivers/media/cec/core/cec 0x884971f8 cec_notifier_cec_adap_register +EXPORT_SYMBOL_GPL drivers/media/cec/core/cec 0x9689ff78 cec_notifier_conn_register +EXPORT_SYMBOL_GPL drivers/media/cec/core/cec 0xa01fbb6b cec_notifier_set_phys_addr +EXPORT_SYMBOL_GPL drivers/media/cec/core/cec 0xaee236c6 cec_notifier_conn_unregister +EXPORT_SYMBOL_GPL drivers/media/cec/core/cec 0xb9371028 cec_received_msg_ts +EXPORT_SYMBOL_GPL drivers/media/cec/core/cec 0xbe4de675 cec_get_edid_phys_addr +EXPORT_SYMBOL_GPL drivers/media/cec/core/cec 0xc525df6d cec_s_conn_info +EXPORT_SYMBOL_GPL drivers/media/cec/core/cec 0xc836100e cec_unregister_adapter +EXPORT_SYMBOL_GPL drivers/media/cec/core/cec 0xd2e84f78 cec_allocate_adapter +EXPORT_SYMBOL_GPL drivers/media/cec/core/cec 0xe605eadf cec_s_phys_addr +EXPORT_SYMBOL_GPL drivers/media/cec/core/cec 0xed33dcce cec_queue_pin_5v_event +EXPORT_SYMBOL_GPL drivers/media/cec/core/cec 0xed888acc cec_s_log_addrs +EXPORT_SYMBOL_GPL drivers/media/cec/core/cec 0xf8c99364 cec_notifier_set_phys_addr_from_edid +EXPORT_SYMBOL_GPL drivers/media/common/v4l2-tpg/v4l2-tpg 0x03005a48 tpg_alloc +EXPORT_SYMBOL_GPL drivers/media/common/v4l2-tpg/v4l2-tpg 0x040dc7cd tpg_aspect_strings +EXPORT_SYMBOL_GPL drivers/media/common/v4l2-tpg/v4l2-tpg 0x4d1d285c tpg_init +EXPORT_SYMBOL_GPL drivers/media/common/v4l2-tpg/v4l2-tpg 0x517e7ccd tpg_fill_plane_buffer +EXPORT_SYMBOL_GPL drivers/media/common/v4l2-tpg/v4l2-tpg 0x579c6308 tpg_gen_text +EXPORT_SYMBOL_GPL drivers/media/common/v4l2-tpg/v4l2-tpg 0x6026aaf0 tpg_log_status +EXPORT_SYMBOL_GPL drivers/media/common/v4l2-tpg/v4l2-tpg 0x6960e899 tpg_s_crop_compose +EXPORT_SYMBOL_GPL drivers/media/common/v4l2-tpg/v4l2-tpg 0x756516e7 tpg_s_fourcc +EXPORT_SYMBOL_GPL drivers/media/common/v4l2-tpg/v4l2-tpg 0x7a5d8c0b tpg_update_mv_step +EXPORT_SYMBOL_GPL drivers/media/common/v4l2-tpg/v4l2-tpg 0x86b4ddf7 tpg_reset_source +EXPORT_SYMBOL_GPL drivers/media/common/v4l2-tpg/v4l2-tpg 0x975a1e29 tpg_g_interleaved_plane +EXPORT_SYMBOL_GPL drivers/media/common/v4l2-tpg/v4l2-tpg 0xaa5503d9 tpg_set_font +EXPORT_SYMBOL_GPL drivers/media/common/v4l2-tpg/v4l2-tpg 0xc6110b6e tpg_free +EXPORT_SYMBOL_GPL drivers/media/common/v4l2-tpg/v4l2-tpg 0xc6808be7 tpg_calc_text_basep +EXPORT_SYMBOL_GPL drivers/media/common/v4l2-tpg/v4l2-tpg 0xce8159bb tpg_pattern_strings +EXPORT_SYMBOL_GPL drivers/media/common/v4l2-tpg/v4l2-tpg 0xf65c5e46 tpg_fillbuffer +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-common 0x0e3b4127 vb2_core_queue_init +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-common 0x11bdf3f3 vb2_write +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-common 0x287bb5c8 vb2_core_poll +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-common 0x28be0209 vb2_core_queue_release +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-common 0x3144a61a vb2_discard_done +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-common 0x351b2784 vb2_core_prepare_buf +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-common 0x3f623848 __tracepoint_vb2_qbuf +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-common 0x421f0ab6 vb2_core_streamoff +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-common 0x511701b7 vb2_request_object_is_buffer +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-common 0x545275b1 vb2_request_buffer_cnt +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-common 0x5780d1ef vb2_core_reqbufs +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-common 0x5ee133e0 vb2_queue_error +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-common 0x68340fbb vb2_core_dqbuf +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-common 0x71788eee vb2_read +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-common 0x8743f9ce vb2_core_create_bufs +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-common 0x8ddae992 __tracepoint_vb2_buf_done +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-common 0x90828029 __tracepoint_vb2_dqbuf +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-common 0x9baa70f6 vb2_core_expbuf +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-common 0xa12195c9 vb2_thread_stop +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-common 0xa7ac7890 vb2_core_querybuf +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-common 0xae7a9945 vb2_thread_start +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-common 0xb59524cc vb2_core_streamon +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-common 0xb5b5305c vb2_plane_cookie +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-common 0xbbc6736e vb2_wait_for_all_buffers +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-common 0xc88264fe __tracepoint_vb2_buf_queue +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-common 0xd404abb6 vb2_plane_vaddr +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-common 0xd4d214bc vb2_mmap +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-common 0xe2bd2894 vb2_core_qbuf +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-common 0xe55a9b21 vb2_buffer_done +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-dma-contig 0x8cf54e9b vb2_dma_contig_set_max_seg_size +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-dma-contig 0xdd5e028f vb2_dma_contig_memops +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-dma-sg 0x935db49d vb2_dma_sg_memops +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-memops 0xd494d2d0 vb2_common_vm_ops +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-v4l2 0x02174cde vb2_fop_read +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-v4l2 0x047ead56 vb2_ioctl_prepare_buf +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-v4l2 0x0e0de0de vb2_fop_mmap +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-v4l2 0x22452d31 vb2_ioctl_querybuf +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-v4l2 0x23e372a2 vb2_fop_write +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-v4l2 0x29d0f923 vb2_ioctl_qbuf +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-v4l2 0x2bd6d480 vb2_ioctl_reqbufs +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-v4l2 0x30cd506a vb2_queue_release +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-v4l2 0x3652a7e9 vb2_ioctl_dqbuf +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-v4l2 0x3a2b2ee9 vb2_fop_release +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-v4l2 0x3e44bc3b vb2_prepare_buf +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-v4l2 0x4a074e3f vb2_ioctl_streamon +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-v4l2 0x4c362899 vb2_streamon +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-v4l2 0x4f606ed5 vb2_request_queue +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-v4l2 0x507f6e08 vb2_dqbuf +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-v4l2 0x5c083fc3 vb2_find_timestamp +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-v4l2 0x6487e972 vb2_ops_wait_prepare +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-v4l2 0x70fc0925 vb2_fop_poll +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-v4l2 0x7b39dae1 vb2_ioctl_create_bufs +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-v4l2 0x7ff321c2 vb2_create_bufs +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-v4l2 0x80ce9992 vb2_request_validate +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-v4l2 0x90114b73 vb2_queue_init +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-v4l2 0xa65171bb vb2_poll +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-v4l2 0xa92bab5c vb2_expbuf +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-v4l2 0xbc06923e vb2_streamoff +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-v4l2 0xbf2e49cf vb2_ioctl_streamoff +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-v4l2 0xd24a8550 vb2_ioctl_expbuf +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-v4l2 0xdc726c49 vb2_reqbufs +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-v4l2 0xea9938e7 vb2_ops_wait_finish +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-v4l2 0xf16e1034 _vb2_fop_release +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-v4l2 0xfb5351b8 vb2_qbuf +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-vmalloc 0xf7f0c870 vb2_vmalloc_memops +EXPORT_SYMBOL_GPL drivers/media/mc/mc 0x010e8bbc media_request_object_put +EXPORT_SYMBOL_GPL drivers/media/mc/mc 0x019a009b media_get_pad_index +EXPORT_SYMBOL_GPL drivers/media/mc/mc 0x0b1dc2c9 media_entity_setup_link +EXPORT_SYMBOL_GPL drivers/media/mc/mc 0x0be4fe3d media_request_object_bind +EXPORT_SYMBOL_GPL drivers/media/mc/mc 0x0e61d635 media_devnode_remove +EXPORT_SYMBOL_GPL drivers/media/mc/mc 0x147d1fc5 media_device_unregister_entity +EXPORT_SYMBOL_GPL drivers/media/mc/mc 0x196325e3 __media_remove_intf_link +EXPORT_SYMBOL_GPL drivers/media/mc/mc 0x224627fb __media_entity_setup_link +EXPORT_SYMBOL_GPL drivers/media/mc/mc 0x226c26d8 media_remove_intf_link +EXPORT_SYMBOL_GPL drivers/media/mc/mc 0x23b421c2 media_pipeline_stop +EXPORT_SYMBOL_GPL drivers/media/mc/mc 0x2938227c media_graph_walk_start +EXPORT_SYMBOL_GPL drivers/media/mc/mc 0x309c77b2 media_device_register_entity_notify +EXPORT_SYMBOL_GPL drivers/media/mc/mc 0x3a0dfb51 __media_device_usb_init +EXPORT_SYMBOL_GPL drivers/media/mc/mc 0x42877795 __media_entity_remove_links +EXPORT_SYMBOL_GPL drivers/media/mc/mc 0x4297d2e2 __media_pipeline_stop +EXPORT_SYMBOL_GPL drivers/media/mc/mc 0x4fedd3f4 media_device_register_entity +EXPORT_SYMBOL_GPL drivers/media/mc/mc 0x563efa7c media_create_intf_link +EXPORT_SYMBOL_GPL drivers/media/mc/mc 0x58aa4cc1 media_graph_walk_cleanup +EXPORT_SYMBOL_GPL drivers/media/mc/mc 0x5d064b60 media_device_unregister_entity_notify +EXPORT_SYMBOL_GPL drivers/media/mc/mc 0x621031ef media_pipeline_start +EXPORT_SYMBOL_GPL drivers/media/mc/mc 0x6d8cebca media_device_unregister +EXPORT_SYMBOL_GPL drivers/media/mc/mc 0x756e5541 media_entity_find_link +EXPORT_SYMBOL_GPL drivers/media/mc/mc 0x7adc4a7f media_device_pci_init +EXPORT_SYMBOL_GPL drivers/media/mc/mc 0x7e394573 media_request_put +EXPORT_SYMBOL_GPL drivers/media/mc/mc 0x7ed10aba media_create_pad_link +EXPORT_SYMBOL_GPL drivers/media/mc/mc 0x82fdd623 media_graph_walk_init +EXPORT_SYMBOL_GPL drivers/media/mc/mc 0x8bb725ee media_device_usb_allocate +EXPORT_SYMBOL_GPL drivers/media/mc/mc 0x8c7a2e8c media_entity_pads_init +EXPORT_SYMBOL_GPL drivers/media/mc/mc 0xa3fa4a33 media_create_pad_links +EXPORT_SYMBOL_GPL drivers/media/mc/mc 0xa6cd4b9f media_request_object_find +EXPORT_SYMBOL_GPL drivers/media/mc/mc 0xac9cf66f media_devnode_create +EXPORT_SYMBOL_GPL drivers/media/mc/mc 0xb12df9e9 media_entity_remove_links +EXPORT_SYMBOL_GPL drivers/media/mc/mc 0xb17258b5 media_request_object_complete +EXPORT_SYMBOL_GPL drivers/media/mc/mc 0xb6265827 media_remove_intf_links +EXPORT_SYMBOL_GPL drivers/media/mc/mc 0xb808ae2d media_device_delete +EXPORT_SYMBOL_GPL drivers/media/mc/mc 0xbbe1a806 __media_pipeline_start +EXPORT_SYMBOL_GPL drivers/media/mc/mc 0xc1d33a33 media_device_init +EXPORT_SYMBOL_GPL drivers/media/mc/mc 0xc4d20be9 media_graph_walk_next +EXPORT_SYMBOL_GPL drivers/media/mc/mc 0xc8a2003b media_request_object_init +EXPORT_SYMBOL_GPL drivers/media/mc/mc 0xcca8e766 media_entity_get_fwnode_pad +EXPORT_SYMBOL_GPL drivers/media/mc/mc 0xd1bd4c76 media_request_object_unbind +EXPORT_SYMBOL_GPL drivers/media/mc/mc 0xdc581289 __media_entity_enum_init +EXPORT_SYMBOL_GPL drivers/media/mc/mc 0xe4b851c6 media_entity_remote_pad +EXPORT_SYMBOL_GPL drivers/media/mc/mc 0xe58b74c6 media_device_cleanup +EXPORT_SYMBOL_GPL drivers/media/mc/mc 0xe5ceecd6 media_entity_enum_cleanup +EXPORT_SYMBOL_GPL drivers/media/mc/mc 0xef66cfbe __media_remove_intf_links +EXPORT_SYMBOL_GPL drivers/media/mc/mc 0xf2815183 media_request_get_by_fd +EXPORT_SYMBOL_GPL drivers/media/mc/mc 0xf9bd0c30 __media_device_register +EXPORT_SYMBOL_GPL drivers/media/platform/marvell-ccic/mcam-core 0x2675b1d2 mccic_suspend +EXPORT_SYMBOL_GPL drivers/media/platform/marvell-ccic/mcam-core 0x3da5933e mccic_irq +EXPORT_SYMBOL_GPL drivers/media/platform/marvell-ccic/mcam-core 0x5237cee6 mccic_register +EXPORT_SYMBOL_GPL drivers/media/platform/marvell-ccic/mcam-core 0x9574a47c mccic_shutdown +EXPORT_SYMBOL_GPL drivers/media/platform/marvell-ccic/mcam-core 0xbb4ec747 mccic_resume +EXPORT_SYMBOL_GPL drivers/media/rc/rc-core 0x04d8ad3c devm_rc_allocate_device +EXPORT_SYMBOL_GPL drivers/media/rc/rc-core 0x087ba771 rc_map_get +EXPORT_SYMBOL_GPL drivers/media/rc/rc-core 0x1ac62c77 rc_map_unregister +EXPORT_SYMBOL_GPL drivers/media/rc/rc-core 0x2e7174b3 rc_keyup +EXPORT_SYMBOL_GPL drivers/media/rc/rc-core 0x357a06a9 rc_keydown_notimeout +EXPORT_SYMBOL_GPL drivers/media/rc/rc-core 0x3e738194 rc_unregister_device +EXPORT_SYMBOL_GPL drivers/media/rc/rc-core 0x40487361 ir_raw_event_store_with_timeout +EXPORT_SYMBOL_GPL drivers/media/rc/rc-core 0x59f6017f rc_allocate_device +EXPORT_SYMBOL_GPL drivers/media/rc/rc-core 0x786f096b ir_raw_event_set_idle +EXPORT_SYMBOL_GPL drivers/media/rc/rc-core 0x7b6b5226 ir_raw_event_store_edge +EXPORT_SYMBOL_GPL drivers/media/rc/rc-core 0x7bc8ac67 rc_map_register +EXPORT_SYMBOL_GPL drivers/media/rc/rc-core 0x845f87f8 ir_raw_event_store_with_filter +EXPORT_SYMBOL_GPL drivers/media/rc/rc-core 0x945b6cef rc_repeat +EXPORT_SYMBOL_GPL drivers/media/rc/rc-core 0x9e1a23c7 rc_keydown +EXPORT_SYMBOL_GPL drivers/media/rc/rc-core 0xa100c73e ir_lirc_scancode_event +EXPORT_SYMBOL_GPL drivers/media/rc/rc-core 0xa648ecf4 rc_g_keycode_from_table +EXPORT_SYMBOL_GPL drivers/media/rc/rc-core 0xbc6c256e ir_raw_event_handle +EXPORT_SYMBOL_GPL drivers/media/rc/rc-core 0xcfd95fb7 rc_register_device +EXPORT_SYMBOL_GPL drivers/media/rc/rc-core 0xd5b0dde8 devm_rc_register_device +EXPORT_SYMBOL_GPL drivers/media/rc/rc-core 0xea142189 ir_raw_event_store +EXPORT_SYMBOL_GPL drivers/media/rc/rc-core 0xf40e02ea rc_free_device +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 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 0xef15cc44 v4l2_hdmi_rx_colorimetry +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-fwnode 0x04da0f93 v4l2_fwnode_parse_link +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-fwnode 0x0b27aa15 v4l2_fwnode_device_parse +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-fwnode 0x12b98233 v4l2_async_register_subdev_sensor_common +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-fwnode 0x17bab976 v4l2_fwnode_endpoint_free +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-fwnode 0x190a55e6 v4l2_fwnode_connector_parse +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-fwnode 0x1ce1bd84 v4l2_fwnode_endpoint_alloc_parse +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-fwnode 0x3ce9b4f2 v4l2_fwnode_connector_add_link +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-fwnode 0x430c0f01 v4l2_async_notifier_parse_fwnode_sensor_common +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-fwnode 0x4864a1f3 v4l2_async_notifier_parse_fwnode_endpoints +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-fwnode 0x4898f2f3 v4l2_fwnode_endpoint_parse +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-fwnode 0x5165dc5a v4l2_async_notifier_parse_fwnode_endpoints_by_port +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-fwnode 0x612ddce5 v4l2_fwnode_connector_free +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-fwnode 0x61beee83 v4l2_fwnode_put_link +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0x00c8e609 v4l2_m2m_querybuf +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0x043d7147 v4l2_m2m_ioctl_qbuf +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0x0b782798 v4l2_m2m_ioctl_prepare_buf +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0x0ba137a8 v4l2_m2m_request_queue +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0x0c817378 v4l2_m2m_ioctl_decoder_cmd +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0x10bcd0c9 v4l2_m2m_ctx_release +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0x14705d77 v4l2_m2m_streamoff +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0x16e5a21c v4l2_m2m_update_start_streaming_state +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0x1b287285 v4l2_m2m_buf_remove +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0x1c1a4153 v4l2_m2m_prepare_buf +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0x1db8f1be v4l2_m2m_update_stop_streaming_state +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0x25945076 v4l2_m2m_expbuf +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0x38cb98fe v4l2_m2m_ioctl_streamoff +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0x3b888471 v4l2_m2m_create_bufs +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0x3f5d3590 v4l2_m2m_encoder_cmd +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0x3fce58b9 v4l2_m2m_ioctl_create_bufs +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0x40eb0043 v4l2_m2m_ctx_init +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0x45a17b76 v4l2_m2m_decoder_cmd +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0x4b53b199 v4l2_m2m_ioctl_try_encoder_cmd +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0x4d7d6db6 v4l2_m2m_last_buf +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0x52ba580c v4l2_m2m_qbuf +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0x59ece2f1 v4l2_m2m_fop_mmap +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0x5ab261d7 v4l2_m2m_ioctl_expbuf +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0x674155a6 v4l2_m2m_last_buffer_done +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0x693d0401 v4l2_m2m_ioctl_stateless_try_decoder_cmd +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0x6a108baf v4l2_m2m_buf_remove_by_buf +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0x7302e039 v4l2_m2m_streamon +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0x730f2eae v4l2_m2m_init +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0x7b01468f v4l2_m2m_buf_queue +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0x7ca0ef20 v4l2_m2m_ioctl_dqbuf +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0xa775adae v4l2_m2m_ioctl_streamon +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0xb4b28a37 v4l2_m2m_poll +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0xb5d0d604 v4l2_m2m_register_media_controller +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0xb67ebf58 v4l2_m2m_ioctl_encoder_cmd +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0xc6fca5ad v4l2_m2m_release +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0xca73c7ef v4l2_m2m_fop_poll +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0xca9a0b93 v4l2_m2m_buf_copy_metadata +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0xd70cb49d v4l2_m2m_ioctl_try_decoder_cmd +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0xd728d689 v4l2_m2m_ioctl_querybuf +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0xdb68b558 v4l2_m2m_ioctl_reqbufs +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0xe14a24f5 v4l2_m2m_next_buf +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0xed483e9a v4l2_m2m_try_schedule +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0xee4615b4 v4l2_m2m_buf_remove_by_idx +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0xefbbd4d7 v4l2_m2m_dqbuf +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0xf06d377c v4l2_m2m_ioctl_stateless_decoder_cmd +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0xf13ff84d v4l2_m2m_unregister_media_controller +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0xf5959e41 v4l2_m2m_reqbufs +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0x11c14b43 videobuf_mmap_mapper +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0x1e403054 videobuf_queue_is_busy +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0x347a64ab videobuf_next_field +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0x3521af91 videobuf_queue_core_init +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0x3c635ba4 videobuf_waiton +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0x44a2bf55 videobuf_read_one +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0x4da06bd3 videobuf_reqbufs +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0x54040213 videobuf_dqbuf +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0x6b243223 videobuf_mmap_free +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0x7c7c792e videobuf_streamoff +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0x7f090616 videobuf_read_stop +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0x81daaf9b videobuf_queue_cancel +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0xa9d2e1c8 videobuf_iolock +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0xaf373619 videobuf_read_start +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0xbe693f5b videobuf_poll_stream +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0xc0479321 videobuf_qbuf +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0xc7331d8b videobuf_streamon +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0xc98baa90 videobuf_querybuf +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0xca1d3c2a videobuf_mmap_setup +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0xd8a80eaf __videobuf_mmap_setup +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0xdc9d9edf videobuf_stop +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0xe9c3f26c videobuf_queue_to_vaddr +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0xed40eb0f videobuf_alloc_vb +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0xfb2ed4ed videobuf_read_stream +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-vmalloc 0x533a4725 videobuf_queue_vmalloc_init +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-vmalloc 0x9a3eb0e2 videobuf_to_vmalloc +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-vmalloc 0xccea8c73 videobuf_vmalloc_free +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x037cd1d2 v4l2_device_set_name +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x056c3e55 v4l_disable_media_source +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x08b2031a v4l_enable_media_source +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x14bf66e5 v4l2_event_unsubscribe +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x1a724bd3 v4l2_spi_subdev_init +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x1ca26b55 v4l2_pipeline_link_notify +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x28aefb33 v4l2_s_parm_cap +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x2917714f v4l2_spi_new_subdev +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x2a53ca39 __tracepoint_vb2_v4l2_qbuf +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x2b2df5e4 v4l2_subdev_link_validate_default +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x2c42c4e9 v4l2_src_change_event_subdev_subscribe +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x2df84cdd v4l2_fh_release +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x30273875 v4l2_device_disconnect +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x32431a1e __tracepoint_vb2_v4l2_buf_queue +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x345c8b29 v4l2_i2c_subdev_set_name +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x3ba75536 v4l2_subdev_alloc_pad_config +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x43996a8c __tracepoint_vb2_v4l2_buf_done +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x44959455 v4l2_ctrl_request_hdl_ctrl_find +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x45fdb0ef v4l2_pipeline_pm_put +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x488bfc49 v4l2_i2c_subdev_init +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x4af54479 v4l2_async_notifier_add_i2c_subdev +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x4bb96420 v4l2_fh_is_singular +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x50d65b11 v4l2_subdev_free_pad_config +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x574eb5a2 v4l2_device_put +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x5d6901f5 __v4l2_ctrl_handler_setup +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x60c339b8 v4l2_i2c_new_subdev +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x68c8119a v4l2_event_unsubscribe_all +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x6e9acc41 v4l2_fill_pixfmt_mp +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x6f1498ea v4l2_device_unregister +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x6fd9cc72 v4l2_compat_ioctl32 +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x71b6a191 v4l2_async_notifier_add_fwnode_subdev +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x73158890 v4l2_fh_open +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x7f117948 v4l2_event_queue +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x80f57d2a v4l2_fh_add +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x84024db2 v4l2_g_parm_cap +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x85e98e78 v4l2_event_dequeue +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x86586da9 v4l2_ctrl_request_hdl_find +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x8a7ada38 v4l2_subdev_notify_event +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x91e0a705 v4l2_subdev_get_fwnode_pad_1_to_1 +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x97c2fafb __v4l2_device_register_subdev_nodes +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x99499786 v4l2_event_subdev_unsubscribe +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x9bf8d4fe v4l2_src_change_event_subscribe +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x9fef35ac v4l2_apply_frmsize_constraints +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0xa74dbddf v4l2_create_fwnode_links +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0xa9f1f919 v4l2_subdev_link_validate +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0xb0651b34 v4l2_device_register_subdev +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0xb795f071 __tracepoint_vb2_v4l2_dqbuf +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0xb980656b v4l2_async_notifier_cleanup +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0xbaee9502 v4l2_async_notifier_add_fwnode_remote_subdev +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0xbcab7b4d v4l2_fh_del +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0xc9d5b153 v4l2_device_register +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0xcc501597 v4l2_fill_pixfmt +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0xcd6f63d4 v4l2_mc_create_media_graph +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0xcefbcb9f v4l2_async_notifier_add_subdev +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0xd089d68e v4l2_event_subscribe +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0xd1dab669 v4l2_event_pending +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0xdbc7f22f v4l2_device_unregister_subdev +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0xe1a7e100 v4l2_pipeline_pm_get +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0xe20c0881 v4l2_i2c_subdev_addr +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0xe22bcf8e v4l2_fh_exit +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0xe2822320 __v4l2_find_nearest_size +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0xeb614814 v4l2_fh_init +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0xed5f8948 v4l2_event_queue_fh +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0xef5b8c13 v4l2_async_notifier_add_devname_subdev +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0xf2a353ac v4l2_i2c_tuner_addrs +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0xf5314642 v4l_vb2q_enable_media_source +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0xf5ef842e v4l_bound_align_image +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0xfc243702 v4l2_create_fwnode_links_to_pad +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0xfd360c91 v4l2_i2c_new_subdev_board +EXPORT_SYMBOL_GPL drivers/mfd/88pm80x 0x2c69f929 pm80x_regmap_config +EXPORT_SYMBOL_GPL drivers/mfd/88pm80x 0x776ecc24 pm80x_init +EXPORT_SYMBOL_GPL drivers/mfd/88pm80x 0xafa4973f pm80x_pm_ops +EXPORT_SYMBOL_GPL drivers/mfd/88pm80x 0xd99fd720 pm80x_deinit +EXPORT_SYMBOL_GPL drivers/mfd/intel-lpss 0x07e5c8aa intel_lpss_resume +EXPORT_SYMBOL_GPL drivers/mfd/intel-lpss 0x499604ad intel_lpss_remove +EXPORT_SYMBOL_GPL drivers/mfd/intel-lpss 0x8b399077 intel_lpss_probe +EXPORT_SYMBOL_GPL drivers/mfd/intel-lpss 0xae7a656b intel_lpss_prepare +EXPORT_SYMBOL_GPL drivers/mfd/intel-lpss 0xd58de624 intel_lpss_suspend +EXPORT_SYMBOL_GPL drivers/mfd/intel_pmc_bxt 0x2ebd5fe0 intel_pmc_s0ix_counter_read +EXPORT_SYMBOL_GPL drivers/mfd/intel_pmc_bxt 0x85d7e739 intel_pmc_gcr_read64 +EXPORT_SYMBOL_GPL drivers/mfd/intel_pmc_bxt 0xf137932c intel_pmc_gcr_update +EXPORT_SYMBOL_GPL drivers/mfd/iqs62x 0x22a28670 iqs62x_events +EXPORT_SYMBOL_GPL drivers/mfd/lp3943 0x6cfb2155 lp3943_update_bits +EXPORT_SYMBOL_GPL drivers/mfd/lp3943 0xdc0d184f lp3943_write_byte +EXPORT_SYMBOL_GPL drivers/mfd/lp3943 0xf3209897 lp3943_read_byte +EXPORT_SYMBOL_GPL drivers/mfd/madera 0x00477acf cs47l15_32bit_spi_regmap +EXPORT_SYMBOL_GPL drivers/mfd/madera 0x004aa68f cs47l15_16bit_spi_regmap +EXPORT_SYMBOL_GPL drivers/mfd/madera 0x0f379262 madera_of_match +EXPORT_SYMBOL_GPL drivers/mfd/madera 0x13e7bd9c cs47l92_patch +EXPORT_SYMBOL_GPL drivers/mfd/madera 0x2b53aea4 madera_pm_ops +EXPORT_SYMBOL_GPL drivers/mfd/madera 0x3f5a3d1c madera_dev_exit +EXPORT_SYMBOL_GPL drivers/mfd/madera 0x437267c3 cs47l15_16bit_i2c_regmap +EXPORT_SYMBOL_GPL drivers/mfd/madera 0x437fbb83 cs47l15_32bit_i2c_regmap +EXPORT_SYMBOL_GPL drivers/mfd/madera 0x552f9ab4 cs47l35_patch +EXPORT_SYMBOL_GPL drivers/mfd/madera 0x816ce1b6 madera_dev_init +EXPORT_SYMBOL_GPL drivers/mfd/madera 0x89b1cd0f cs47l35_32bit_i2c_regmap +EXPORT_SYMBOL_GPL drivers/mfd/madera 0x89bc114f cs47l35_16bit_i2c_regmap +EXPORT_SYMBOL_GPL drivers/mfd/madera 0x94973a3a cs47l92_16bit_i2c_regmap +EXPORT_SYMBOL_GPL drivers/mfd/madera 0x949ae67a cs47l92_32bit_i2c_regmap +EXPORT_SYMBOL_GPL drivers/mfd/madera 0xa31621c7 cs47l90_32bit_spi_regmap +EXPORT_SYMBOL_GPL drivers/mfd/madera 0xa31bfd87 cs47l90_16bit_spi_regmap +EXPORT_SYMBOL_GPL drivers/mfd/madera 0xbbc35677 cs47l85_32bit_i2c_regmap +EXPORT_SYMBOL_GPL drivers/mfd/madera 0xbbce8a37 cs47l85_16bit_i2c_regmap +EXPORT_SYMBOL_GPL drivers/mfd/madera 0xca84d003 cs47l35_16bit_spi_regmap +EXPORT_SYMBOL_GPL drivers/mfd/madera 0xca890c43 cs47l35_32bit_spi_regmap +EXPORT_SYMBOL_GPL drivers/mfd/madera 0xced23b07 cs47l85_patch +EXPORT_SYMBOL_GPL drivers/mfd/madera 0xd7a22736 cs47l92_32bit_spi_regmap +EXPORT_SYMBOL_GPL drivers/mfd/madera 0xd7affb76 cs47l92_16bit_spi_regmap +EXPORT_SYMBOL_GPL drivers/mfd/madera 0xdaa70414 cs47l15_patch +EXPORT_SYMBOL_GPL drivers/mfd/madera 0xe0233ccb cs47l90_16bit_i2c_regmap +EXPORT_SYMBOL_GPL drivers/mfd/madera 0xe02ee08b cs47l90_32bit_i2c_regmap +EXPORT_SYMBOL_GPL drivers/mfd/madera 0xebe384cb madera_name_from_type +EXPORT_SYMBOL_GPL drivers/mfd/madera 0xf8f64b7b cs47l85_16bit_spi_regmap +EXPORT_SYMBOL_GPL drivers/mfd/madera 0xf8fb973b cs47l85_32bit_spi_regmap +EXPORT_SYMBOL_GPL drivers/mfd/madera 0xfee7e240 cs47l90_patch +EXPORT_SYMBOL_GPL drivers/mfd/max14577 0x352b3813 maxim_charger_calc_reg_current +EXPORT_SYMBOL_GPL drivers/mfd/max14577 0xbab9a9f0 maxim_charger_currents +EXPORT_SYMBOL_GPL drivers/mfd/mc13xxx-core 0x3adeb0f0 mc13xxx_variant_mc13892 +EXPORT_SYMBOL_GPL drivers/mfd/mc13xxx-core 0x686b0eb8 mc13xxx_variant_mc34708 +EXPORT_SYMBOL_GPL drivers/mfd/mc13xxx-core 0x7a64fbd0 mc13xxx_variant_mc13783 +EXPORT_SYMBOL_GPL drivers/mfd/mc13xxx-core 0xc5f84b79 mc13xxx_common_exit +EXPORT_SYMBOL_GPL drivers/mfd/mc13xxx-core 0xc6c0d0af mc13xxx_adc_do_conversion +EXPORT_SYMBOL_GPL drivers/mfd/mc13xxx-core 0xd4f958be mc13xxx_common_init +EXPORT_SYMBOL_GPL drivers/mfd/pcf50633 0x41293e97 pcf50633_irq_mask +EXPORT_SYMBOL_GPL drivers/mfd/pcf50633 0x49a6cfcf pcf50633_reg_set_bit_mask +EXPORT_SYMBOL_GPL drivers/mfd/pcf50633 0x67f66aa7 pcf50633_write_block +EXPORT_SYMBOL_GPL drivers/mfd/pcf50633 0x8fe385cd pcf50633_register_irq +EXPORT_SYMBOL_GPL drivers/mfd/pcf50633 0x96859748 pcf50633_reg_read +EXPORT_SYMBOL_GPL drivers/mfd/pcf50633 0xae399326 pcf50633_free_irq +EXPORT_SYMBOL_GPL drivers/mfd/pcf50633 0xbdec7990 pcf50633_reg_write +EXPORT_SYMBOL_GPL drivers/mfd/pcf50633 0xc26a9c35 pcf50633_irq_unmask +EXPORT_SYMBOL_GPL drivers/mfd/pcf50633 0xc9bc03bd pcf50633_reg_clear_bits +EXPORT_SYMBOL_GPL drivers/mfd/pcf50633 0xe4b3b3f0 pcf50633_read_block +EXPORT_SYMBOL_GPL drivers/mfd/pcf50633 0xeb210c81 pcf50633_irq_mask_get +EXPORT_SYMBOL_GPL drivers/mfd/pcf50633-adc 0x5c7b937a pcf50633_adc_async_read +EXPORT_SYMBOL_GPL drivers/mfd/pcf50633-adc 0x8905871d pcf50633_adc_sync_read +EXPORT_SYMBOL_GPL drivers/mfd/pcf50633-gpio 0x0be87ac0 pcf50633_gpio_invert_get +EXPORT_SYMBOL_GPL drivers/mfd/pcf50633-gpio 0x1fb99b57 pcf50633_gpio_power_supply_set +EXPORT_SYMBOL_GPL drivers/mfd/pcf50633-gpio 0x4475997a pcf50633_gpio_get +EXPORT_SYMBOL_GPL drivers/mfd/pcf50633-gpio 0x932f63ee pcf50633_gpio_set +EXPORT_SYMBOL_GPL drivers/mfd/pcf50633-gpio 0xe86905ff pcf50633_gpio_invert_set +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/sm501 0x23cb6cf8 sm501_set_clock +EXPORT_SYMBOL_GPL drivers/mfd/sm501 0x27385a48 sm501_unit_power +EXPORT_SYMBOL_GPL drivers/mfd/sm501 0xc2d8b2c7 sm501_misc_control +EXPORT_SYMBOL_GPL drivers/mfd/sm501 0xc93a8b93 sm501_modify_reg +EXPORT_SYMBOL_GPL drivers/mfd/sm501 0xe682c27d sm501_find_clock +EXPORT_SYMBOL_GPL drivers/mfd/ti_am335x_tscadc 0x78127e4d am335x_tsc_se_adc_done +EXPORT_SYMBOL_GPL drivers/mfd/ti_am335x_tscadc 0x7dd27085 am335x_tsc_se_set_once +EXPORT_SYMBOL_GPL drivers/mfd/ti_am335x_tscadc 0x86835d72 am335x_tsc_se_set_cache +EXPORT_SYMBOL_GPL drivers/mfd/ti_am335x_tscadc 0xe1f43764 am335x_tsc_se_clr +EXPORT_SYMBOL_GPL drivers/misc/cardreader/alcor_pci 0x535af1f8 alcor_write16 +EXPORT_SYMBOL_GPL drivers/misc/cardreader/alcor_pci 0x7f58920f alcor_read8 +EXPORT_SYMBOL_GPL drivers/misc/cardreader/alcor_pci 0x9ec0cb83 alcor_write32be +EXPORT_SYMBOL_GPL drivers/misc/cardreader/alcor_pci 0xbe12e25f alcor_read32be +EXPORT_SYMBOL_GPL drivers/misc/cardreader/alcor_pci 0xc8666376 alcor_write8 +EXPORT_SYMBOL_GPL drivers/misc/cardreader/alcor_pci 0xcb38aa7b alcor_read32 +EXPORT_SYMBOL_GPL drivers/misc/cardreader/alcor_pci 0xdd26a8d0 alcor_write32 +EXPORT_SYMBOL_GPL drivers/misc/cardreader/rtsx_pci 0x0546ce72 rtsx_pci_read_ppbuf +EXPORT_SYMBOL_GPL drivers/misc/cardreader/rtsx_pci 0x0c066893 rtsx_pci_dma_transfer +EXPORT_SYMBOL_GPL drivers/misc/cardreader/rtsx_pci 0x0cc8aafd rtsx_pci_dma_map_sg +EXPORT_SYMBOL_GPL drivers/misc/cardreader/rtsx_pci 0x106b3e59 rtsx_pci_card_power_on +EXPORT_SYMBOL_GPL drivers/misc/cardreader/rtsx_pci 0x13db7ad2 rtsx_pci_card_power_off +EXPORT_SYMBOL_GPL drivers/misc/cardreader/rtsx_pci 0x2f0c98cd rtsx_pci_send_cmd +EXPORT_SYMBOL_GPL drivers/misc/cardreader/rtsx_pci 0x4204b73d rtsx_pci_start_run +EXPORT_SYMBOL_GPL drivers/misc/cardreader/rtsx_pci 0x50d994de rtsx_pci_stop_cmd +EXPORT_SYMBOL_GPL drivers/misc/cardreader/rtsx_pci 0x97a98fc9 rtsx_pci_write_register +EXPORT_SYMBOL_GPL drivers/misc/cardreader/rtsx_pci 0xaa1ba7d0 rtsx_pci_write_ppbuf +EXPORT_SYMBOL_GPL drivers/misc/cardreader/rtsx_pci 0xb0608ef3 rtsx_pci_card_pull_ctl_enable +EXPORT_SYMBOL_GPL drivers/misc/cardreader/rtsx_pci 0xb062f3b1 rtsx_pci_complete_unfinished_transfer +EXPORT_SYMBOL_GPL drivers/misc/cardreader/rtsx_pci 0xbacb9633 rtsx_pci_add_cmd +EXPORT_SYMBOL_GPL drivers/misc/cardreader/rtsx_pci 0xc0d746a2 rtsx_pci_card_exclusive_check +EXPORT_SYMBOL_GPL drivers/misc/cardreader/rtsx_pci 0xc7d7581a rtsx_pci_transfer_data +EXPORT_SYMBOL_GPL drivers/misc/cardreader/rtsx_pci 0xca0e7fcf rtsx_pci_read_phy_register +EXPORT_SYMBOL_GPL drivers/misc/cardreader/rtsx_pci 0xd5699c84 rtsx_pci_read_register +EXPORT_SYMBOL_GPL drivers/misc/cardreader/rtsx_pci 0xd584101e rtsx_pci_send_cmd_no_wait +EXPORT_SYMBOL_GPL drivers/misc/cardreader/rtsx_pci 0xd87c9d4f rtsx_pci_switch_clock +EXPORT_SYMBOL_GPL drivers/misc/cardreader/rtsx_pci 0xdd1109b5 rtsx_pci_card_pull_ctl_disable +EXPORT_SYMBOL_GPL drivers/misc/cardreader/rtsx_pci 0xe739fdb1 rtsx_pci_switch_output_voltage +EXPORT_SYMBOL_GPL drivers/misc/cardreader/rtsx_pci 0xf5213e8a rtsx_pci_dma_unmap_sg +EXPORT_SYMBOL_GPL drivers/misc/cardreader/rtsx_pci 0xf671fad8 rtsx_pci_card_exist +EXPORT_SYMBOL_GPL drivers/misc/cardreader/rtsx_pci 0xf907bec3 rtsx_pci_write_phy_register +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 0x01900b79 enclosure_register +EXPORT_SYMBOL_GPL drivers/misc/enclosure 0x6e84a19e enclosure_add_device +EXPORT_SYMBOL_GPL drivers/misc/enclosure 0x8e1cdb22 enclosure_unregister +EXPORT_SYMBOL_GPL drivers/misc/enclosure 0x992625d0 enclosure_remove_device +EXPORT_SYMBOL_GPL drivers/misc/enclosure 0xa3ed6a5f enclosure_component_alloc +EXPORT_SYMBOL_GPL drivers/misc/enclosure 0xbd11a116 enclosure_find +EXPORT_SYMBOL_GPL drivers/misc/enclosure 0xcae9be62 enclosure_component_register +EXPORT_SYMBOL_GPL drivers/misc/enclosure 0xdbf186d2 enclosure_for_each_device +EXPORT_SYMBOL_GPL drivers/misc/mei/mei 0x0277eb55 mei_cldev_ver +EXPORT_SYMBOL_GPL drivers/misc/mei/mei 0x0da95cc0 mei_reset +EXPORT_SYMBOL_GPL drivers/misc/mei/mei 0x1381bc53 mei_hbm_pg +EXPORT_SYMBOL_GPL drivers/misc/mei/mei 0x21f5ad33 mei_start +EXPORT_SYMBOL_GPL drivers/misc/mei/mei 0x319aaaad mei_cancel_work +EXPORT_SYMBOL_GPL drivers/misc/mei/mei 0x341c468e mei_irq_read_handler +EXPORT_SYMBOL_GPL drivers/misc/mei/mei 0x3e081664 mei_restart +EXPORT_SYMBOL_GPL drivers/misc/mei/mei 0x60e1fb4b mei_cldev_register_rx_cb +EXPORT_SYMBOL_GPL drivers/misc/mei/mei 0x665db788 mei_cldev_send +EXPORT_SYMBOL_GPL drivers/misc/mei/mei 0x6ac8e930 mei_irq_compl_handler +EXPORT_SYMBOL_GPL drivers/misc/mei/mei 0x77dbc432 mei_cldev_get_drvdata +EXPORT_SYMBOL_GPL drivers/misc/mei/mei 0x7ecdaf11 mei_cldev_disable +EXPORT_SYMBOL_GPL drivers/misc/mei/mei 0x8032a8f2 mei_hbm_pg_resume +EXPORT_SYMBOL_GPL drivers/misc/mei/mei 0x85530e46 mei_cldev_recv_nonblock +EXPORT_SYMBOL_GPL drivers/misc/mei/mei 0x8f7d5bdd mei_register +EXPORT_SYMBOL_GPL drivers/misc/mei/mei 0x90a24af4 mei_fw_status2str +EXPORT_SYMBOL_GPL drivers/misc/mei/mei 0x928ceee1 mei_cldev_recv +EXPORT_SYMBOL_GPL drivers/misc/mei/mei 0x9756a745 mei_cldev_register_notif_cb +EXPORT_SYMBOL_GPL drivers/misc/mei/mei 0x9a78ab96 mei_irq_write_handler +EXPORT_SYMBOL_GPL drivers/misc/mei/mei 0xb60d5ce5 mei_deregister +EXPORT_SYMBOL_GPL drivers/misc/mei/mei 0xbba90878 mei_write_is_idle +EXPORT_SYMBOL_GPL drivers/misc/mei/mei 0xc48b05de mei_cldev_set_drvdata +EXPORT_SYMBOL_GPL drivers/misc/mei/mei 0xcdec8c17 mei_cldev_uuid +EXPORT_SYMBOL_GPL drivers/misc/mei/mei 0xd1fff5da mei_cldev_enabled +EXPORT_SYMBOL_GPL drivers/misc/mei/mei 0xe073d9e5 mei_stop +EXPORT_SYMBOL_GPL drivers/misc/mei/mei 0xee204a84 mei_device_init +EXPORT_SYMBOL_GPL drivers/misc/mei/mei 0xf246c5df mei_cldev_driver_unregister +EXPORT_SYMBOL_GPL drivers/misc/mei/mei 0xf6026c44 __mei_cldev_driver_register +EXPORT_SYMBOL_GPL drivers/misc/mei/mei 0xfbbee8b6 mei_cldev_enable +EXPORT_SYMBOL_GPL drivers/misc/uacce/uacce 0x635841d2 uacce_alloc +EXPORT_SYMBOL_GPL drivers/misc/uacce/uacce 0x7fac859d uacce_register +EXPORT_SYMBOL_GPL drivers/misc/uacce/uacce 0xeaf59f6a uacce_remove +EXPORT_SYMBOL_GPL drivers/most/most_core 0x10cc4719 most_deregister_interface +EXPORT_SYMBOL_GPL drivers/most/most_core 0x23a219be channel_has_mbo +EXPORT_SYMBOL_GPL drivers/most/most_core 0x47d76f47 most_get_mbo +EXPORT_SYMBOL_GPL drivers/most/most_core 0x56ef389c most_deregister_configfs_subsys +EXPORT_SYMBOL_GPL drivers/most/most_core 0x5e5f437f most_register_interface +EXPORT_SYMBOL_GPL drivers/most/most_core 0x70680dfb most_resume_enqueue +EXPORT_SYMBOL_GPL drivers/most/most_core 0x73a8260e most_register_component +EXPORT_SYMBOL_GPL drivers/most/most_core 0xa8c0e24b most_stop_enqueue +EXPORT_SYMBOL_GPL drivers/most/most_core 0xc33c6716 most_deregister_component +EXPORT_SYMBOL_GPL drivers/most/most_core 0xce91c748 most_put_mbo +EXPORT_SYMBOL_GPL drivers/most/most_core 0xd0ef67fc most_register_configfs_subsys +EXPORT_SYMBOL_GPL drivers/most/most_core 0xd1a1ab7e most_start_channel +EXPORT_SYMBOL_GPL drivers/most/most_core 0xd721eae7 most_submit_mbo +EXPORT_SYMBOL_GPL drivers/most/most_core 0xe65decf4 most_stop_channel +EXPORT_SYMBOL_GPL drivers/mux/mux-core 0x0999d51f mux_control_get +EXPORT_SYMBOL_GPL drivers/mux/mux-core 0x2779f25e mux_chip_alloc +EXPORT_SYMBOL_GPL drivers/mux/mux-core 0x2e0a72b0 mux_control_try_select +EXPORT_SYMBOL_GPL drivers/mux/mux-core 0x303ecee4 devm_mux_control_get +EXPORT_SYMBOL_GPL drivers/mux/mux-core 0x3800f794 mux_control_put +EXPORT_SYMBOL_GPL drivers/mux/mux-core 0x3f2a2ace mux_control_states +EXPORT_SYMBOL_GPL drivers/mux/mux-core 0x40908097 mux_chip_free +EXPORT_SYMBOL_GPL drivers/mux/mux-core 0x90d9b244 mux_control_select +EXPORT_SYMBOL_GPL drivers/mux/mux-core 0xa8560e11 mux_control_deselect +EXPORT_SYMBOL_GPL drivers/mux/mux-core 0xc8bf2895 devm_mux_chip_register +EXPORT_SYMBOL_GPL drivers/mux/mux-core 0xcb092cf0 mux_chip_unregister +EXPORT_SYMBOL_GPL drivers/mux/mux-core 0xe045d202 devm_mux_chip_alloc +EXPORT_SYMBOL_GPL drivers/mux/mux-core 0xfcf78a21 mux_chip_register +EXPORT_SYMBOL_GPL drivers/net/arcnet/arcnet 0x9b872f83 devm_arcnet_led_init +EXPORT_SYMBOL_GPL drivers/net/arcnet/arcnet 0xd6c8c79f arcnet_led_event +EXPORT_SYMBOL_GPL drivers/net/bareudp 0xd8987279 bareudp_dev_create +EXPORT_SYMBOL_GPL drivers/net/can/c_can/c_can 0x12078859 register_c_can_dev +EXPORT_SYMBOL_GPL drivers/net/can/c_can/c_can 0x122d862a unregister_c_can_dev +EXPORT_SYMBOL_GPL drivers/net/can/c_can/c_can 0x4219e070 c_can_power_up +EXPORT_SYMBOL_GPL drivers/net/can/c_can/c_can 0x60e5fb2a c_can_power_down +EXPORT_SYMBOL_GPL drivers/net/can/c_can/c_can 0xa65a837f alloc_c_can_dev +EXPORT_SYMBOL_GPL drivers/net/can/c_can/c_can 0xf0b264d5 free_c_can_dev +EXPORT_SYMBOL_GPL drivers/net/can/can-dev 0x09773cf5 register_candev +EXPORT_SYMBOL_GPL drivers/net/can/can-dev 0x131eee5c can_change_mtu +EXPORT_SYMBOL_GPL drivers/net/can/can-dev 0x15857750 can_rx_offload_add_timestamp +EXPORT_SYMBOL_GPL drivers/net/can/can-dev 0x16081ffb can_dlc2len +EXPORT_SYMBOL_GPL drivers/net/can/can-dev 0x1ea655bc alloc_can_skb +EXPORT_SYMBOL_GPL drivers/net/can/can-dev 0x30464dca can_rx_offload_del +EXPORT_SYMBOL_GPL drivers/net/can/can-dev 0x45c64caf free_candev +EXPORT_SYMBOL_GPL drivers/net/can/can-dev 0x5040614f can_rx_offload_get_echo_skb +EXPORT_SYMBOL_GPL drivers/net/can/can-dev 0x5d31822c can_rx_offload_irq_offload_fifo +EXPORT_SYMBOL_GPL drivers/net/can/can-dev 0x60cec10d alloc_candev_mqs +EXPORT_SYMBOL_GPL drivers/net/can/can-dev 0x6135e8e8 can_get_echo_skb +EXPORT_SYMBOL_GPL drivers/net/can/can-dev 0x69b2c9a4 can_rx_offload_queue_tail +EXPORT_SYMBOL_GPL drivers/net/can/can-dev 0x6b7cc4cb alloc_can_err_skb +EXPORT_SYMBOL_GPL drivers/net/can/can-dev 0x6ce6ac8c close_candev +EXPORT_SYMBOL_GPL drivers/net/can/can-dev 0x83ba0ac9 open_candev +EXPORT_SYMBOL_GPL drivers/net/can/can-dev 0x8762619a can_len2dlc +EXPORT_SYMBOL_GPL drivers/net/can/can-dev 0x88a4a007 can_rx_offload_queue_sorted +EXPORT_SYMBOL_GPL drivers/net/can/can-dev 0x8c365e6c can_rx_offload_add_fifo +EXPORT_SYMBOL_GPL drivers/net/can/can-dev 0x932e211c can_change_state +EXPORT_SYMBOL_GPL drivers/net/can/can-dev 0x941a7b59 can_put_echo_skb +EXPORT_SYMBOL_GPL drivers/net/can/can-dev 0xc2bf8879 safe_candev_priv +EXPORT_SYMBOL_GPL drivers/net/can/can-dev 0xc908d3bd can_rx_offload_irq_offload_timestamp +EXPORT_SYMBOL_GPL drivers/net/can/can-dev 0xcf7ae50a can_free_echo_skb +EXPORT_SYMBOL_GPL drivers/net/can/can-dev 0xd0ccb5fd alloc_canfd_skb +EXPORT_SYMBOL_GPL drivers/net/can/can-dev 0xdcabb774 can_bus_off +EXPORT_SYMBOL_GPL drivers/net/can/can-dev 0xe3644976 unregister_candev +EXPORT_SYMBOL_GPL drivers/net/can/can-dev 0xfb0446d4 can_rx_offload_enable +EXPORT_SYMBOL_GPL drivers/net/can/sja1000/sja1000 0x49ebd0d2 sja1000_interrupt +EXPORT_SYMBOL_GPL drivers/net/can/sja1000/sja1000 0x52816331 unregister_sja1000dev +EXPORT_SYMBOL_GPL drivers/net/can/sja1000/sja1000 0xb37c8db2 free_sja1000dev +EXPORT_SYMBOL_GPL drivers/net/can/sja1000/sja1000 0xd5c10a71 alloc_sja1000dev +EXPORT_SYMBOL_GPL drivers/net/can/sja1000/sja1000 0xd9d94d57 register_sja1000dev +EXPORT_SYMBOL_GPL drivers/net/dsa/lan9303-core 0xfcdc8296 lan9303_indirect_phy_ops +EXPORT_SYMBOL_GPL drivers/net/dsa/microchip/ksz_common 0x1001f9bb ksz_disable_port +EXPORT_SYMBOL_GPL drivers/net/dsa/microchip/ksz_common 0x277fe667 ksz_port_fast_age +EXPORT_SYMBOL_GPL drivers/net/dsa/microchip/ksz_common 0x2a6e9b48 ksz_port_vlan_prepare +EXPORT_SYMBOL_GPL drivers/net/dsa/microchip/ksz_common 0x5287a9c8 ksz_phy_read16 +EXPORT_SYMBOL_GPL drivers/net/dsa/microchip/ksz_common 0x52ca6b2c ksz_get_ethtool_stats +EXPORT_SYMBOL_GPL drivers/net/dsa/microchip/ksz_common 0x5bf5cc3e ksz_phy_write16 +EXPORT_SYMBOL_GPL drivers/net/dsa/microchip/ksz_common 0x6d7ffaae ksz_port_mdb_del +EXPORT_SYMBOL_GPL drivers/net/dsa/microchip/ksz_common 0x715d48cf ksz_port_bridge_join +EXPORT_SYMBOL_GPL drivers/net/dsa/microchip/ksz_common 0x87ec224f ksz_init_mib_timer +EXPORT_SYMBOL_GPL drivers/net/dsa/microchip/ksz_common 0x9619b3f6 ksz_port_fdb_dump +EXPORT_SYMBOL_GPL drivers/net/dsa/microchip/ksz_common 0xa8ed08b0 ksz_enable_port +EXPORT_SYMBOL_GPL drivers/net/dsa/microchip/ksz_common 0xaae550da ksz_sset_count +EXPORT_SYMBOL_GPL drivers/net/dsa/microchip/ksz_common 0xc26d18a3 ksz_port_bridge_leave +EXPORT_SYMBOL_GPL drivers/net/dsa/microchip/ksz_common 0xce62371a ksz_port_mdb_add +EXPORT_SYMBOL_GPL drivers/net/dsa/microchip/ksz_common 0xd1fb603d ksz_adjust_link +EXPORT_SYMBOL_GPL drivers/net/dsa/microchip/ksz_common 0xe7d356d7 ksz_port_mdb_prepare +EXPORT_SYMBOL_GPL drivers/net/dsa/microchip/ksz_common 0xf7debf38 ksz_update_port_member +EXPORT_SYMBOL_GPL drivers/net/dsa/realtek-smi 0x01883cfb rtl8366_enable_vlan4k +EXPORT_SYMBOL_GPL drivers/net/dsa/realtek-smi 0x15f65527 rtl8366_reset_vlan +EXPORT_SYMBOL_GPL drivers/net/dsa/realtek-smi 0x2059f1a0 rtl8366_set_pvid +EXPORT_SYMBOL_GPL drivers/net/dsa/realtek-smi 0x2bbf100f rtl8366rb_variant +EXPORT_SYMBOL_GPL drivers/net/dsa/realtek-smi 0x5518a964 rtl8366_mc_is_used +EXPORT_SYMBOL_GPL drivers/net/dsa/realtek-smi 0x62ac0523 rtl8366_set_vlan +EXPORT_SYMBOL_GPL drivers/net/dsa/realtek-smi 0x64bcd7ff rtl8366_vlan_del +EXPORT_SYMBOL_GPL drivers/net/dsa/realtek-smi 0x8c185e2c realtek_smi_write_reg_noack +EXPORT_SYMBOL_GPL drivers/net/dsa/realtek-smi 0xa813bda7 rtl8366_vlan_add +EXPORT_SYMBOL_GPL drivers/net/dsa/realtek-smi 0xafbc192c rtl8366_get_ethtool_stats +EXPORT_SYMBOL_GPL drivers/net/dsa/realtek-smi 0xba77be89 rtl8366_enable_vlan +EXPORT_SYMBOL_GPL drivers/net/dsa/realtek-smi 0xc3b51f0b rtl8366_vlan_filtering +EXPORT_SYMBOL_GPL drivers/net/dsa/realtek-smi 0xd23ba220 rtl8366_vlan_prepare +EXPORT_SYMBOL_GPL drivers/net/dsa/realtek-smi 0xd39c9b0e rtl8366_get_strings +EXPORT_SYMBOL_GPL drivers/net/dsa/realtek-smi 0xd7010c1f rtl8366_get_sset_count +EXPORT_SYMBOL_GPL drivers/net/dsa/realtek-smi 0xf37121c9 rtl8366_init_vlan +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x0086ba67 mlx4_config_roce_v2_port +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x03894189 mlx4_phys_to_slaves_pport_actv +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x0443fd25 mlx4_uar_free +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x0653c048 mlx4_multicast_promisc_add +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x080a07ab mlx4_xrcd_alloc +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x08c1b5d9 mlx4_mtt_cleanup +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x0b278683 mlx4_mr_hw_put_mpt +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x0ef844ba mlx4_srq_query +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x0f76a68a mlx4_qp_query +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x15599975 mlx4_buf_alloc +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x15b974c5 mlx4_mr_rereg_mem_cleanup +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x1de1a213 mlx4_get_default_counter_index +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x1f1fdc9a mlx4_counter_free +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x1f4b4a2f mlx4_find_cached_mac +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x21610014 mlx4_flow_steer_promisc_remove +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x27255bbb mlx4_unbond +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x2b7976da mlx4_srq_arm +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x2e9948f8 mlx4_mw_alloc +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x319f9f1b mlx4_SYNC_TPT +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x322e878b mlx4_qp_release_range +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x35300a8d __mlx4_replace_mac +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x36396fa8 mlx4_mr_hw_change_access +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x3677cf45 mlx4_buf_free +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x3fc09f9e mlx4_phys_to_slaves_pport +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x430751c6 mlx4_unicast_detach +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x477dc6f0 mlx4_get_internal_clock_params +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x486fd6cc mlx4_find_cached_vlan +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x48b05336 mlx4_config_dev_retrieval +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x4bacb5fd mlx4_pd_alloc +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x4bb49303 mlx4_mr_alloc +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x4ce8b803 mlx4_unregister_interface +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x524514f4 __mlx4_unregister_mac +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x5514bef7 mlx4_map_sw_to_hw_steering_mode +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x58af96a5 mlx4_set_vf_mac +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x5948ea4d mlx4_bond +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x5b2f0e18 mlx4_update_qp +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x6096f508 mlx4_get_counter_stats +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x63c0c4f9 mlx4_unregister_vlan +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x68f9a5a8 mlx4_register_mac +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x69f8ee2f mlx4_db_alloc +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x6bce27eb mlx4_set_vf_vlan +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x6fc6bfc7 mlx4_flow_detach +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x71826a59 mlx4_flow_steer_promisc_add +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x725ef174 mlx4_set_vf_link_state +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x72ac85f6 mlx4_set_vf_spoofchk +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x740c0965 mlx4_phys_to_slave_port +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x790bd68d mlx4_unicast_promisc_remove +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x79280e08 mlx4_get_base_qpn +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x7d0b8bab mlx4_mw_enable +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x81af43b6 mlx4_vf_get_enable_smi_admin +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x81af9714 mlx4_flow_attach +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x86ce58de mlx4_free_cmd_mailbox +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x8837727b mlx4_multicast_detach +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x88acb33e mlx4_mw_free +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x8aa6f771 mlx4_srq_alloc +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x8b0f755e mlx4_mr_hw_get_mpt +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x8dbd2411 mlx4_get_base_gid_ix +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x8eb28daf mlx4_srq_lookup +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x8ec6a237 mlx4_write_mtt +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x92fe418d mlx4_qp_remove +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x9367028d mlx4_get_devlink_port +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x97225374 mlx4_vf_smi_enabled +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x98d00804 mlx4_get_vf_stats +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x9d524fcc mlx4_qp_reserve_range +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xa0fae51c mlx4_cq_alloc +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xa1e6a91b __mlx4_cmd +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xa28b5d0c mlx4_set_admin_guid +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xa419dc8f mlx4_mr_free +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xa6108d4f mlx4_counter_alloc +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xa6591bad mlx4_FLOW_STEERING_IB_UC_QP_RANGE +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xa77df24f mlx4_mtt_addr +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xa9ee6932 mlx4_vf_set_enable_smi_admin +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xaab61b90 mlx4_INIT_PORT +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xac0155b4 mlx4_multicast_promisc_remove +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xad1c79b1 mlx4_register_vlan +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xad54ab30 mlx4_wol_write +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xaf68df08 mlx4_set_vf_rate +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xafb5277a __mlx4_register_mac +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xb3789e41 mlx4_CLOSE_PORT +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xb48b3555 mlx4_mtt_init +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xb7265cfe mlx4_xrcd_free +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xb83a740c mlx4_mr_rereg_mem_write +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xb938ee5b mlx4_qp_free +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xbd963312 mlx4_wol_read +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xbfdd8274 mlx4_free_hwq_res +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xbfe79b77 mlx4_get_slave_default_vlan +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xc1ce5c3b mlx4_bf_alloc +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xc6711ca5 mlx4_get_admin_guid +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xc699c834 mlx4_qp_alloc +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xc71249ea mlx4_mr_hw_write_mpt +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xc91ff730 mlx4_get_vf_config +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xca46a945 mlx4_replace_zero_macs +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xca4cc364 mlx4_alloc_cmd_mailbox +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xcbee1780 mlx4_unicast_attach +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xcf4e40da mlx4_unregister_mac +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xd161fe8d mlx4_map_sw_to_hw_steering_id +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xd20ab6de mlx4_mr_enable +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xd29dfe6a mlx4_bf_free +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xd31db693 mlx4_srq_free +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xd377bfe2 mlx4_read_clock +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xd9228433 mlx4_db_free +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xd9dfd7f8 mlx4_hw_rule_sz +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xdc4c22d2 mlx4_config_vxlan_port +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xdd0737c0 mlx4_get_active_ports +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xdeff2d0b mlx4_qp_to_ready +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xe12b627a mlx4_cq_free +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xe2b9f687 mlx4_ACCESS_PTYS_REG +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xe3117406 mlx4_buf_write_mtt +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xe37f5581 mlx4_register_interface +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xe3c3d284 mlx4_pd_free +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xe692361e mlx4_slave_convert_port +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xf1d312c6 mlx4_uar_alloc +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xf2d3035f mlx4_port_map_set +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xf44d53ad mlx4_get_protocol_dev +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xf85b5c41 mlx4_qp_modify +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xf86a7ae6 mlx4_cq_resize +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xfa7d425d mlx4_cq_modify +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xfb421723 mlx4_multicast_attach +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xfce4548e mlx4_unicast_promisc_add +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xfdf93da3 mlx4_mr_hw_change_pd +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xffc21981 mlx4_alloc_hwq_res +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x0427f6f7 mlx5_nic_vport_enable_roce +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 0x072e0b2f mlx5_query_nic_vport_mac_address +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x09981c76 mlx5_nic_vport_unaffiliate_multiport +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x0c71d01f mlx5_modify_nic_vport_mtu +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x0d3929d7 mlx5_set_port_prio_tc +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x116649ed mlx5_query_mac_address +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x1417dfdb mlx5_query_port_oper_mtu +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x149b9cd8 mlx5_eswitch_mode +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x1eebfdb5 mlx5_set_port_caps +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x2ad4d71a mlx5_core_query_vport_counter +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x2bf3df02 mlx5_query_nic_vport_promisc +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x3334129a mlx5_query_hca_vport_context +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x346beec4 mlx5_query_port_pfc +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x36a6be29 mlx5_set_port_pfc +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x386eb152 mlx5_buf_free +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x39d69c70 mlx5_modify_nic_vport_vlans +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x453a0248 mlx5_modify_port_ets_rate_limit +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x4d0b6ab4 mlx5_set_port_tc_bw_alloc +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x4ec97313 mlx5_core_access_reg +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x568fa305 mlx5_accel_esp_create_xfrm +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x56ad973b mlx5_core_query_ib_ppcnt +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x5b43273e mlx5_query_nic_vport_node_guid +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x6174fd71 mlx5_query_port_tc_bw_alloc +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x61b15b25 mlx5_set_port_admin_status +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x62d7ac43 mlx5_nic_vport_affiliate_multiport +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x6a26901f mlx5_eswitch_get_total_vports +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x6c7e6525 mlx5_frag_buf_alloc_node +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x72428ae9 mlx5_modify_nic_vport_mac_address +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x7294aa6f mlx5_query_hca_vport_pkey +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x741be680 mlx5_query_port_ets_rate_limit +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x7ee0af28 mlx5_accel_esp_modify_xfrm +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x8165666d mlx5_query_hca_vport_gid +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x828a249b mlx5_query_port_wol +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x89f6f1f3 mlx5_accel_esp_destroy_xfrm +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x8af1407d mlx5_query_port_tc_group +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x8dd89287 mlx5_query_nic_vport_mtu +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x901f7b9f mlx5_accel_ipsec_device_caps +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x92deb134 mlx5_query_port_ptys +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x930f07bc mlx5_query_module_eeprom +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x93cf6b09 mlx5_core_modify_hca_vport_context +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x93f4d52c mlx5_db_alloc +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x9a982b6e mlx5_core_query_sq_state +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x9c74f66e mlx5_query_hca_vport_system_image_guid +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x9e4b3f28 mlx5_dm_sw_icm_dealloc +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x9ee1c996 mlx5_core_reserved_gids_count +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xa0f7dc09 mlx5_frag_buf_free +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xa2ff1c21 mlx5_db_alloc_node +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xa35d7815 mlx5_query_min_inline +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xa75f49d6 mlx5_fill_page_array +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xafc412de mlx5_query_port_max_mtu +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xb06bf2f8 mlx5_query_port_admin_status +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xb8b73d66 mlx5_modify_nic_vport_mac_list +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xc1a455c9 mlx5_set_port_wol +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xc9140c34 mlx5_query_port_link_width_oper +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xcb0303da mlx5_db_free +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xcbeda93d mlx5_query_nic_vport_mac_list +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xcd7efebc mlx5_query_nic_system_image_guid +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xcdaff70e mlx5_query_port_prio_tc +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xd02dc8cb mlx5_dm_sw_icm_alloc +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xd4a91f14 mlx5_modify_nic_vport_promisc +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xd88371a5 mlx5_nic_vport_update_local_lb +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xe18e9e9a mlx5_set_port_tc_group +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xe23aedcd mlx5_query_port_vl_hw_cap +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xe3f34cfa mlx5_toggle_port_link +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xe538c529 mlx5_set_port_pause +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xe6ae6aaa mlx5_query_nic_vport_system_image_guid +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xe8c35b9c mlx5_query_port_pause +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xeafa79e7 mlx5_query_hca_vport_node_guid +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xf0d2fbea mlx5_query_nic_vport_qkey_viol_cntr +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xf19a3998 mlx5_set_port_mtu +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xf2ec41ee mlx5_nic_vport_query_local_lb +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xfb4ad87b mlx5_query_nic_vport_min_inline +EXPORT_SYMBOL_GPL drivers/net/ethernet/mscc/mscc_ocelot_common 0x4139395f ocelot_cls_flower_stats +EXPORT_SYMBOL_GPL drivers/net/ethernet/mscc/mscc_ocelot_common 0xb4ad5633 ocelot_cls_flower_replace +EXPORT_SYMBOL_GPL drivers/net/ethernet/mscc/mscc_ocelot_common 0xea45a111 ocelot_cls_flower_destroy +EXPORT_SYMBOL_GPL drivers/net/geneve 0xa6178d9d geneve_dev_create_fb +EXPORT_SYMBOL_GPL drivers/net/ipvlan/ipvlan 0x08a707e9 ipvlan_link_register +EXPORT_SYMBOL_GPL drivers/net/ipvlan/ipvlan 0x17bf0ee6 ipvlan_link_new +EXPORT_SYMBOL_GPL drivers/net/ipvlan/ipvlan 0x9385e666 ipvlan_link_setup +EXPORT_SYMBOL_GPL drivers/net/ipvlan/ipvlan 0x969d22f7 ipvlan_count_rx +EXPORT_SYMBOL_GPL drivers/net/ipvlan/ipvlan 0xcd136147 ipvlan_link_delete +EXPORT_SYMBOL_GPL drivers/net/macsec 0x51118812 macsec_pn_wrapped +EXPORT_SYMBOL_GPL drivers/net/macvlan 0x08b9760a macvlan_dellink +EXPORT_SYMBOL_GPL drivers/net/macvlan 0x49253a43 macvlan_link_register +EXPORT_SYMBOL_GPL drivers/net/macvlan 0x4d39f55b macvlan_common_setup +EXPORT_SYMBOL_GPL drivers/net/macvlan 0x8ca75c91 macvlan_common_newlink +EXPORT_SYMBOL_GPL drivers/net/net_failover 0x1b3f3651 net_failover_destroy +EXPORT_SYMBOL_GPL drivers/net/net_failover 0x9d56b3dc net_failover_create +EXPORT_SYMBOL_GPL drivers/net/phy/bcm-phy-lib 0x0a17ca0b __bcm_phy_read_exp +EXPORT_SYMBOL_GPL drivers/net/phy/bcm-phy-lib 0x0ff61954 __bcm_phy_write_exp +EXPORT_SYMBOL_GPL drivers/net/phy/bcm-phy-lib 0x123c1456 bcm_phy_cable_test_start_rdb +EXPORT_SYMBOL_GPL drivers/net/phy/bcm-phy-lib 0x12ae1ff4 __bcm_phy_modify_rdb +EXPORT_SYMBOL_GPL drivers/net/phy/bcm-phy-lib 0x1640cf99 bcm_phy_read_misc +EXPORT_SYMBOL_GPL drivers/net/phy/bcm-phy-lib 0x1aba8075 bcm_phy_downshift_get +EXPORT_SYMBOL_GPL drivers/net/phy/bcm-phy-lib 0x228656f4 __bcm_phy_write_rdb +EXPORT_SYMBOL_GPL drivers/net/phy/bcm-phy-lib 0x2925d856 bcm_phy_enable_jumbo +EXPORT_SYMBOL_GPL drivers/net/phy/bcm-phy-lib 0x3208e2b5 bcm_phy_set_eee +EXPORT_SYMBOL_GPL drivers/net/phy/bcm-phy-lib 0x3d237d4b bcm_phy_modify_exp +EXPORT_SYMBOL_GPL drivers/net/phy/bcm-phy-lib 0x3d4282bd bcm_phy_28nm_a0b0_afe_config_init +EXPORT_SYMBOL_GPL drivers/net/phy/bcm-phy-lib 0x520fb290 bcm_phy_write_shadow +EXPORT_SYMBOL_GPL drivers/net/phy/bcm-phy-lib 0x59ab8a65 bcm_phy_read_shadow +EXPORT_SYMBOL_GPL drivers/net/phy/bcm-phy-lib 0x5cf9ba59 bcm_phy_write_rdb +EXPORT_SYMBOL_GPL drivers/net/phy/bcm-phy-lib 0x5e71281c bcm_phy_cable_test_start +EXPORT_SYMBOL_GPL drivers/net/phy/bcm-phy-lib 0x5f993a0d bcm_phy_get_stats +EXPORT_SYMBOL_GPL drivers/net/phy/bcm-phy-lib 0x6b70f70b bcm_phy_enable_apd +EXPORT_SYMBOL_GPL drivers/net/phy/bcm-phy-lib 0x7189f5f9 bcm_phy_write_exp +EXPORT_SYMBOL_GPL drivers/net/phy/bcm-phy-lib 0x766f1770 bcm_phy_read_rdb +EXPORT_SYMBOL_GPL drivers/net/phy/bcm-phy-lib 0x7bb2700a bcm_phy_r_rc_cal_reset +EXPORT_SYMBOL_GPL drivers/net/phy/bcm-phy-lib 0x7eb6f062 bcm_phy_get_strings +EXPORT_SYMBOL_GPL drivers/net/phy/bcm-phy-lib 0x83115996 bcm_phy_cable_test_get_status +EXPORT_SYMBOL_GPL drivers/net/phy/bcm-phy-lib 0x89d5dc42 bcm_phy_config_intr +EXPORT_SYMBOL_GPL drivers/net/phy/bcm-phy-lib 0x8abbb4ad __bcm_phy_modify_exp +EXPORT_SYMBOL_GPL drivers/net/phy/bcm-phy-lib 0x934e3c41 __bcm_phy_read_rdb +EXPORT_SYMBOL_GPL drivers/net/phy/bcm-phy-lib 0x9cb8f47e bcm_phy_write_misc +EXPORT_SYMBOL_GPL drivers/net/phy/bcm-phy-lib 0xa536d612 bcm_phy_modify_rdb +EXPORT_SYMBOL_GPL drivers/net/phy/bcm-phy-lib 0xaffe81d6 bcm_phy_get_sset_count +EXPORT_SYMBOL_GPL drivers/net/phy/bcm-phy-lib 0xb33c84a2 bcm_phy_ack_intr +EXPORT_SYMBOL_GPL drivers/net/phy/bcm-phy-lib 0xbdb651fe bcm_phy_downshift_set +EXPORT_SYMBOL_GPL drivers/net/phy/bcm-phy-lib 0xeee9f2f2 bcm_phy_cable_test_get_status_rdb +EXPORT_SYMBOL_GPL drivers/net/phy/bcm-phy-lib 0xef36e13a bcm_phy_read_exp +EXPORT_SYMBOL_GPL drivers/net/phy/bcm-phy-lib 0xf20515fe bcm54xx_auxctl_read +EXPORT_SYMBOL_GPL drivers/net/phy/mdio-i2c 0x5d20bca0 mdio_i2c_alloc +EXPORT_SYMBOL_GPL drivers/net/phy/mdio-xpcs 0xcd9a37ea mdio_xpcs_get_ops +EXPORT_SYMBOL_GPL drivers/net/phy/phylink 0x0805f2d9 phylink_add_pcs +EXPORT_SYMBOL_GPL drivers/net/phy/phylink 0x08213956 phylink_ethtool_get_wol +EXPORT_SYMBOL_GPL drivers/net/phy/phylink 0x0eb2f850 phylink_mii_c22_pcs_set_advertisement +EXPORT_SYMBOL_GPL drivers/net/phy/phylink 0x1162b00e phylink_ethtool_ksettings_get +EXPORT_SYMBOL_GPL drivers/net/phy/phylink 0x12135396 phylink_mac_change +EXPORT_SYMBOL_GPL drivers/net/phy/phylink 0x15c4e3e2 phylink_ethtool_set_pauseparam +EXPORT_SYMBOL_GPL drivers/net/phy/phylink 0x2c8e28ee phylink_ethtool_get_eee +EXPORT_SYMBOL_GPL drivers/net/phy/phylink 0x57727285 phylink_ethtool_set_eee +EXPORT_SYMBOL_GPL drivers/net/phy/phylink 0x5fb6b35f phylink_helper_basex_speed +EXPORT_SYMBOL_GPL drivers/net/phy/phylink 0x62104126 phylink_ethtool_set_wol +EXPORT_SYMBOL_GPL drivers/net/phy/phylink 0x64c69f8b phylink_mii_c45_pcs_get_state +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 0x86ff345f phylink_ethtool_ksettings_set +EXPORT_SYMBOL_GPL drivers/net/phy/phylink 0x8b86f203 phylink_create +EXPORT_SYMBOL_GPL drivers/net/phy/phylink 0x911fcd6c phylink_start +EXPORT_SYMBOL_GPL drivers/net/phy/phylink 0x974b2144 phylink_of_phy_connect +EXPORT_SYMBOL_GPL drivers/net/phy/phylink 0x983276da phylink_disconnect_phy +EXPORT_SYMBOL_GPL drivers/net/phy/phylink 0xc1d15a4c phylink_set_port_modes +EXPORT_SYMBOL_GPL drivers/net/phy/phylink 0xd458787d phylink_mii_c22_pcs_an_restart +EXPORT_SYMBOL_GPL drivers/net/phy/phylink 0xdcb0a2c0 phylink_stop +EXPORT_SYMBOL_GPL drivers/net/phy/phylink 0xde66f4a7 phylink_mii_ioctl +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 0xf544d97b phylink_connect_phy +EXPORT_SYMBOL_GPL drivers/net/phy/phylink 0xf8fe5642 phylink_ethtool_get_pauseparam +EXPORT_SYMBOL_GPL drivers/net/phy/phylink 0xfddd85db phylink_mii_c22_pcs_get_state +EXPORT_SYMBOL_GPL drivers/net/tap 0x1cb7e6de tap_destroy_cdev +EXPORT_SYMBOL_GPL drivers/net/tap 0x6660c646 tap_handle_frame +EXPORT_SYMBOL_GPL drivers/net/tap 0x905405cf tap_queue_resize +EXPORT_SYMBOL_GPL drivers/net/tap 0xd33541a6 tap_get_ptr_ring +EXPORT_SYMBOL_GPL drivers/net/tap 0xe2caa715 tap_del_queues +EXPORT_SYMBOL_GPL drivers/net/tap 0xe4d6b8ce tap_free_minor +EXPORT_SYMBOL_GPL drivers/net/tap 0xf0b8c661 tap_get_socket +EXPORT_SYMBOL_GPL drivers/net/tap 0xf0ee1436 tap_get_minor +EXPORT_SYMBOL_GPL drivers/net/tap 0xff49ce51 tap_create_cdev +EXPORT_SYMBOL_GPL drivers/nfc/mei_phy 0x3a9ac56b nfc_mei_phy_free +EXPORT_SYMBOL_GPL drivers/nfc/mei_phy 0xd81b317e mei_phy_ops +EXPORT_SYMBOL_GPL drivers/nfc/mei_phy 0xe1edbe20 nfc_mei_phy_alloc +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 0x4012bccb ntb_transport_register_client +EXPORT_SYMBOL_GPL drivers/ntb/ntb_transport 0x436098aa ntb_transport_link_down +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 0xc2957b1b ntb_transport_create_queue +EXPORT_SYMBOL_GPL drivers/ntb/ntb_transport 0xc37d9036 ntb_transport_rx_remove +EXPORT_SYMBOL_GPL drivers/ntb/ntb_transport 0xd40e7a02 ntb_transport_rx_enqueue +EXPORT_SYMBOL_GPL drivers/ntb/ntb_transport 0xf2b5a01a ntb_transport_unregister_client +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/nvdimm/nd_virtio 0x886ee932 async_pmem_flush +EXPORT_SYMBOL_GPL drivers/nvdimm/nd_virtio 0xd55046b2 virtio_pmem_host_ack +EXPORT_SYMBOL_GPL drivers/nvme/host/nvme-fabrics 0x1cea4077 nvmf_should_reconnect +EXPORT_SYMBOL_GPL drivers/nvme/host/nvme-fabrics 0x451289b5 nvmf_reg_write32 +EXPORT_SYMBOL_GPL drivers/nvme/host/nvme-fabrics 0x48de4d64 nvmf_unregister_transport +EXPORT_SYMBOL_GPL drivers/nvme/host/nvme-fabrics 0x4c09e7ed nvmf_connect_admin_queue +EXPORT_SYMBOL_GPL drivers/nvme/host/nvme-fabrics 0x53d93a1a nvmf_get_address +EXPORT_SYMBOL_GPL drivers/nvme/host/nvme-fabrics 0x5fc8cf15 nvmf_reg_read64 +EXPORT_SYMBOL_GPL drivers/nvme/host/nvme-fabrics 0x79df4564 nvmf_free_options +EXPORT_SYMBOL_GPL drivers/nvme/host/nvme-fabrics 0xa6b5bd4a __nvmf_check_ready +EXPORT_SYMBOL_GPL drivers/nvme/host/nvme-fabrics 0xba35b609 nvmf_ip_options_match +EXPORT_SYMBOL_GPL drivers/nvme/host/nvme-fabrics 0xbc4f32ba nvmf_connect_io_queue +EXPORT_SYMBOL_GPL drivers/nvme/host/nvme-fabrics 0xe3c3d126 nvmf_register_transport +EXPORT_SYMBOL_GPL drivers/nvme/host/nvme-fabrics 0xf3612cff nvmf_reg_read32 +EXPORT_SYMBOL_GPL drivers/nvme/host/nvme-fabrics 0xfbbd7cf3 nvmf_fail_nonready_command +EXPORT_SYMBOL_GPL drivers/nvme/host/nvme-fc 0x0d12e564 nvme_fc_register_remoteport +EXPORT_SYMBOL_GPL drivers/nvme/host/nvme-fc 0x28e0c749 nvme_fc_register_localport +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 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 0xfca9dc99 nvme_fc_unregister_remoteport +EXPORT_SYMBOL_GPL drivers/nvme/target/nvmet 0x1c3a7de6 nvmet_check_transfer_len +EXPORT_SYMBOL_GPL drivers/nvme/target/nvmet 0x32df6d77 nvmet_req_complete +EXPORT_SYMBOL_GPL drivers/nvme/target/nvmet 0x5ab8b041 nvmet_ctrl_fatal_error +EXPORT_SYMBOL_GPL drivers/nvme/target/nvmet 0x65e87ea6 nvmet_sq_init +EXPORT_SYMBOL_GPL drivers/nvme/target/nvmet 0x8fedb2da nvmet_req_free_sgls +EXPORT_SYMBOL_GPL drivers/nvme/target/nvmet 0x94cdb3c6 nvmet_register_transport +EXPORT_SYMBOL_GPL drivers/nvme/target/nvmet 0xa7534bad nvmet_unregister_transport +EXPORT_SYMBOL_GPL drivers/nvme/target/nvmet 0xbc214952 nvmet_req_alloc_sgls +EXPORT_SYMBOL_GPL drivers/nvme/target/nvmet 0xc3c34c8d nvmet_req_uninit +EXPORT_SYMBOL_GPL drivers/nvme/target/nvmet 0xc572aa2b nvmet_req_init +EXPORT_SYMBOL_GPL drivers/nvme/target/nvmet 0xf39309ba nvmet_sq_destroy +EXPORT_SYMBOL_GPL drivers/nvme/target/nvmet-fc 0x0b98123d nvmet_fc_rcv_ls_req +EXPORT_SYMBOL_GPL drivers/nvme/target/nvmet-fc 0x1048b92a nvmet_fc_rcv_fcp_req +EXPORT_SYMBOL_GPL drivers/nvme/target/nvmet-fc 0x21966f2a 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 0x7fa5302a nvmet_fc_rcv_fcp_abort +EXPORT_SYMBOL_GPL drivers/nvme/target/nvmet-fc 0x9ef76d99 nvmet_fc_unregister_targetport +EXPORT_SYMBOL_GPL drivers/pci/switch/switchtec 0x6812c87d switchtec_class +EXPORT_SYMBOL_GPL drivers/pinctrl/intel/pinctrl-intel 0x01d48842 intel_pinctrl_probe_by_uid +EXPORT_SYMBOL_GPL drivers/pinctrl/intel/pinctrl-intel 0x31871836 intel_pinctrl_suspend_noirq +EXPORT_SYMBOL_GPL drivers/pinctrl/intel/pinctrl-intel 0xcdc9da1e intel_pinctrl_resume_noirq +EXPORT_SYMBOL_GPL drivers/pinctrl/intel/pinctrl-intel 0xe0c09173 intel_pinctrl_probe_by_hid +EXPORT_SYMBOL_GPL drivers/pinctrl/pinctrl-mcp23s08 0xcef28755 mcp23x17_regmap +EXPORT_SYMBOL_GPL drivers/pinctrl/pinctrl-mcp23s08 0xd05b715a mcp23s08_probe_one +EXPORT_SYMBOL_GPL drivers/pinctrl/pinctrl-mcp23s08 0xfe8923ba mcp23x08_regmap +EXPORT_SYMBOL_GPL drivers/platform/x86/dell-smbios 0x1b0b3141 dell_laptop_register_notifier +EXPORT_SYMBOL_GPL drivers/platform/x86/dell-smbios 0x3d2bfb4e dell_smbios_call_filter +EXPORT_SYMBOL_GPL drivers/platform/x86/dell-smbios 0x45170471 dell_smbios_call +EXPORT_SYMBOL_GPL drivers/platform/x86/dell-smbios 0x7fd2ce06 dell_smbios_find_token +EXPORT_SYMBOL_GPL drivers/platform/x86/dell-smbios 0xab680a55 dell_smbios_unregister_device +EXPORT_SYMBOL_GPL drivers/platform/x86/dell-smbios 0xb9400dbf dell_laptop_call_notifier +EXPORT_SYMBOL_GPL drivers/platform/x86/dell-smbios 0xc2871e79 dell_smbios_error +EXPORT_SYMBOL_GPL drivers/platform/x86/dell-smbios 0xd6c6b12d dell_laptop_unregister_notifier +EXPORT_SYMBOL_GPL drivers/platform/x86/dell-smbios 0xe081f9f7 dell_smbios_register_device +EXPORT_SYMBOL_GPL drivers/platform/x86/dell-wmi-descriptor 0x8eef8246 dell_wmi_get_hotfix +EXPORT_SYMBOL_GPL drivers/platform/x86/dell-wmi-descriptor 0x9559234e dell_wmi_get_interface_version +EXPORT_SYMBOL_GPL drivers/platform/x86/dell-wmi-descriptor 0xa167d064 dell_wmi_get_size +EXPORT_SYMBOL_GPL drivers/platform/x86/dell-wmi-descriptor 0xa3dcfa65 dell_wmi_get_descriptor_valid +EXPORT_SYMBOL_GPL drivers/platform/x86/intel_ips 0x46809fa9 ips_link_to_i915_driver +EXPORT_SYMBOL_GPL drivers/platform/x86/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 0x4b0847a4 isst_if_cdev_register +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 0x84ee0f7c 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 0xe18f42a5 isst_if_cdev_unregister +EXPORT_SYMBOL_GPL drivers/platform/x86/intel_telemetry_core 0x112d0332 telemetry_get_pltdata +EXPORT_SYMBOL_GPL drivers/platform/x86/intel_telemetry_core 0x17d36efd telemetry_set_pltdata +EXPORT_SYMBOL_GPL drivers/platform/x86/intel_telemetry_core 0x1c7565c2 telemetry_read_events +EXPORT_SYMBOL_GPL drivers/platform/x86/intel_telemetry_core 0x35db93a6 telemetry_get_trace_verbosity +EXPORT_SYMBOL_GPL drivers/platform/x86/intel_telemetry_core 0x5847f501 telemetry_clear_pltdata +EXPORT_SYMBOL_GPL drivers/platform/x86/intel_telemetry_core 0x5bb8e91a telemetry_raw_read_eventlog +EXPORT_SYMBOL_GPL drivers/platform/x86/intel_telemetry_core 0x665cd407 telemetry_read_eventlog +EXPORT_SYMBOL_GPL drivers/platform/x86/intel_telemetry_core 0x6b892524 telemetry_set_sampling_period +EXPORT_SYMBOL_GPL drivers/platform/x86/intel_telemetry_core 0x82bb2dbe telemetry_get_evtname +EXPORT_SYMBOL_GPL drivers/platform/x86/intel_telemetry_core 0x90551504 telemetry_add_events +EXPORT_SYMBOL_GPL drivers/platform/x86/intel_telemetry_core 0xb75bd1e6 telemetry_raw_read_events +EXPORT_SYMBOL_GPL drivers/platform/x86/intel_telemetry_core 0xbb9a2726 telemetry_reset_events +EXPORT_SYMBOL_GPL drivers/platform/x86/intel_telemetry_core 0xd14ffffc telemetry_update_events +EXPORT_SYMBOL_GPL drivers/platform/x86/intel_telemetry_core 0xe1eb4be1 telemetry_set_trace_verbosity +EXPORT_SYMBOL_GPL drivers/platform/x86/intel_telemetry_core 0xe8847f53 telemetry_get_sampling_period +EXPORT_SYMBOL_GPL drivers/platform/x86/intel_telemetry_core 0xf00771b0 telemetry_get_eventconfig +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 0x57c35c6e 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 0x7b246ca4 wmidev_evaluate_method +EXPORT_SYMBOL_GPL drivers/platform/x86/wmi 0xaba842fe wmi_query_block +EXPORT_SYMBOL_GPL drivers/platform/x86/wmi 0xc9d4d6d1 wmi_has_guid +EXPORT_SYMBOL_GPL drivers/platform/x86/wmi 0xcab7824f set_required_buffer_size +EXPORT_SYMBOL_GPL drivers/platform/x86/wmi 0xd7752b86 wmi_set_block +EXPORT_SYMBOL_GPL drivers/platform/x86/wmi 0xf18bdd75 wmi_install_notify_handler +EXPORT_SYMBOL_GPL drivers/rpmsg/qcom_glink 0x149236da qcom_glink_native_remove +EXPORT_SYMBOL_GPL drivers/rpmsg/qcom_glink 0x514c9e82 qcom_glink_native_probe +EXPORT_SYMBOL_GPL drivers/rpmsg/qcom_glink 0xf14f5684 qcom_glink_ssr_notify +EXPORT_SYMBOL_GPL drivers/rpmsg/qcom_glink 0xfd2d5a1d qcom_glink_native_unregister +EXPORT_SYMBOL_GPL drivers/scsi/fdomain 0x2dc5b43d fdomain_destroy +EXPORT_SYMBOL_GPL drivers/scsi/fdomain 0xc86a62a3 fdomain_create +EXPORT_SYMBOL_GPL drivers/scsi/iscsi_boot_sysfs 0x2a4d271f iscsi_boot_create_acpitbl +EXPORT_SYMBOL_GPL drivers/scsi/iscsi_boot_sysfs 0x2e22d5c9 iscsi_boot_create_kset +EXPORT_SYMBOL_GPL drivers/scsi/iscsi_boot_sysfs 0x802e5a9f iscsi_boot_create_ethernet +EXPORT_SYMBOL_GPL drivers/scsi/iscsi_boot_sysfs 0x99855bfa iscsi_boot_destroy_kset +EXPORT_SYMBOL_GPL drivers/scsi/iscsi_boot_sysfs 0xb5e8e0b5 iscsi_boot_create_target +EXPORT_SYMBOL_GPL drivers/scsi/iscsi_boot_sysfs 0xd5cb4487 iscsi_boot_create_initiator +EXPORT_SYMBOL_GPL drivers/scsi/iscsi_boot_sysfs 0xf89a02bd iscsi_boot_create_host_kset +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x074d644f iscsi_eh_session_reset +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x0c1b0b1c iscsi_complete_scsi_task +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x0e5be548 iscsi_eh_device_reset +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x1018b9a3 iscsi_conn_stop +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x12b2ad06 iscsi_switch_str_param +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x144295f9 __iscsi_complete_pdu +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x1b788aef iscsi_complete_pdu +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x229920de __iscsi_put_task +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x22a69e2e iscsi_requeue_task +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x2d979a8e iscsi_queuecommand +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x35a3da7f iscsi_eh_cmd_timed_out +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x3bef2f73 iscsi_pool_init +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x40f464e0 iscsi_host_set_param +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x44e38d28 iscsi_conn_bind +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x4d50ca7b __iscsi_get_task +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x521a206b iscsi_session_setup +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x5befaaa6 iscsi_itt_to_ctask +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x62ee8d88 iscsi_eh_recover_target +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x661b10c5 iscsi_conn_teardown +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x6662325b iscsi_session_teardown +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x674657f1 iscsi_suspend_tx +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x6b2b1ed5 iscsi_host_get_param +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x78a5ee88 iscsi_eh_abort +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x7bb960d5 iscsi_target_alloc +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x84e775e9 iscsi_host_remove +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x884ebf60 iscsi_conn_get_param +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x8911d641 iscsi_session_get_param +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x8d303b1b iscsi_pool_free +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x961ff501 iscsi_itt_to_task +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x970c11c2 iscsi_conn_setup +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x973e62dc iscsi_update_cmdsn +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x976fe822 iscsi_conn_start +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x97c91d1d iscsi_prep_data_out_pdu +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0xa0089ba3 iscsi_suspend_queue +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0xacc5a6dd iscsi_verify_itt +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0xb51ded6c iscsi_put_task +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0xc2cc22c5 iscsi_host_alloc +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0xc9d0d6b5 iscsi_host_free +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0xdeb7bf34 iscsi_session_recovery_timedout +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0xdee1126c iscsi_set_param +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0xdf514ca1 iscsi_host_add +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0xe76de4d9 iscsi_conn_failure +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0xeab9cbd5 iscsi_conn_get_addr_param +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0xf4e54008 iscsi_session_failure +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0xf52c262d iscsi_conn_queue_work +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0xfe8f4159 iscsi_conn_send_pdu +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi_tcp 0x05eecce3 iscsi_tcp_cleanup_task +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi_tcp 0x126cce24 iscsi_tcp_segment_unmap +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi_tcp 0x1c39352e iscsi_tcp_recv_skb +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi_tcp 0x27640223 iscsi_tcp_hdr_recv_prep +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi_tcp 0x37eeb083 iscsi_tcp_dgst_header +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi_tcp 0x4ef8b198 iscsi_tcp_segment_done +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi_tcp 0x572f40ab iscsi_tcp_conn_get_stats +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi_tcp 0x5c5ae0ec iscsi_segment_init_linear +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi_tcp 0x757b9081 iscsi_segment_seek_sg +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi_tcp 0x8d9662ef iscsi_tcp_set_max_r2t +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi_tcp 0x9dd6ce3a iscsi_tcp_conn_setup +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi_tcp 0xb7392985 iscsi_tcp_conn_teardown +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi_tcp 0xd6a61926 iscsi_tcp_task_xmit +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi_tcp 0xda0cd1a8 iscsi_tcp_r2tpool_alloc +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi_tcp 0xda2f775f iscsi_tcp_r2tpool_free +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi_tcp 0xee874906 iscsi_tcp_task_init +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi_tcp 0xf278bb44 iscsi_tcp_recv_segment_is_hdr +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0x062f45f3 sas_ata_schedule_reset +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0x0b85789d sas_eh_abort_handler +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0x0d293229 sas_unregister_ha +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0x10523d7a sas_alloc_slow_task +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0x1f696bfb sas_ssp_task_response +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0x20163c58 dev_attr_phy_event_threshold +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0x338d4417 sas_alloc_task +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0x3f54c39d sas_bios_param +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0x42a12583 sas_change_queue_depth +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0x6eee235f sas_target_alloc +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0x7fe18dc4 sas_task_abort +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0x9ca87eac sas_drain_work +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0xb51b0594 sas_target_destroy +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0xc0fadb31 sas_register_ha +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0xc387cb21 sas_eh_target_reset_handler +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0xd360192b sas_queuecommand +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0xd72ecf73 sas_request_addr +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0xe2578efb sas_slave_configure +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0xe5f0b9b8 sas_ioctl +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0xe7372182 sas_domain_attach_transport +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0xe9aa09b4 sas_free_task +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0xfa05870b sas_get_local_phy +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0xfc9de5f3 sas_eh_device_reset_handler +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0xff534393 sas_phy_reset +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x08320a16 iscsi_register_transport +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x0bcdb347 iscsi_get_port_speed_name +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x12d65c20 iscsi_conn_login_event +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x15222be6 iscsi_remove_session +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x185fc6ad iscsi_host_for_each_session +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x28a1158e iscsi_recv_pdu +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x2a5deeea iscsi_flashnode_bus_match +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x3133dc5c __tracepoint_iscsi_dbg_session +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x38752bf3 iscsi_scan_finished +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x39fb9bb6 iscsi_destroy_all_flashnode +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x47867762 __tracepoint_iscsi_dbg_tcp +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x4eefdae2 iscsi_offload_mesg +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x4f3c91a3 iscsi_dbg_trace +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x59d19416 iscsi_is_session_dev +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x5d74bfe0 iscsi_session_event +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x5ea71415 iscsi_destroy_iface +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x655006df iscsi_create_flashnode_sess +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x699fe53e iscsi_get_discovery_parent_name +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x71acc949 iscsi_create_endpoint +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x7c9d17d5 iscsi_block_scsi_eh +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x84a005f1 iscsi_get_router_state_name +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x85b6bdb7 iscsi_ping_comp_event +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x895ed883 iscsi_destroy_flashnode_sess +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x900bb7bc iscsi_create_iface +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x97757d2e iscsi_create_flashnode_conn +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x9a722fa6 iscsi_add_session +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x9d66fdeb iscsi_block_session +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0xaa296f06 iscsi_unblock_session +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0xaac3519d __tracepoint_iscsi_dbg_conn +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0xab1081e5 iscsi_alloc_session +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0xabf4b84f iscsi_destroy_conn +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0xad707fcf iscsi_unregister_transport +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0xaea92c90 __tracepoint_iscsi_dbg_eh +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0xb4a42ec0 iscsi_get_port_state_name +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0xbc071179 iscsi_get_ipaddress_state_name +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0xcd868834 iscsi_find_flashnode_conn +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0xcf3f8c37 iscsi_destroy_endpoint +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0xd28bc887 iscsi_session_chkready +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0xd4697d5b __tracepoint_iscsi_dbg_sw_tcp +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0xd6bd3440 iscsi_create_session +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0xdf4fcbc8 iscsi_is_session_online +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0xe952c3e7 iscsi_post_host_event +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0xea789f4e iscsi_find_flashnode_sess +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0xef5f1095 iscsi_conn_error_event +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0xf1b43807 iscsi_lookup_endpoint +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0xfa0c2ec6 iscsi_create_conn +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0xfc851b65 iscsi_free_session +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_sas 0x6bf1ded6 sas_is_tlr_enabled +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_sas 0xb979f4e5 sas_tlr_supported +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_sas 0xc86e5db4 sas_disable_tlr +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_sas 0xeec7c7df sas_enable_tlr +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_spi 0x0ef06974 spi_populate_ppr_msg +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_spi 0x28146cdc spi_populate_tag_msg +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_spi 0xa0c71dac spi_populate_sync_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 0x1b78b53b srp_attach_transport +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_srp 0x3caad06d srp_remove_host +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_srp 0x528ad75b srp_rport_del +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_srp 0xd4f48d0a srp_stop_rport_timers +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_srp 0xe8683676 srp_rport_add +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_srp 0xff535f1a srp_release_transport +EXPORT_SYMBOL_GPL drivers/siox/siox-core 0x2a36b9ca siox_master_unregister +EXPORT_SYMBOL_GPL drivers/siox/siox-core 0x2f0e8f44 __siox_driver_register +EXPORT_SYMBOL_GPL drivers/siox/siox-core 0x54cd7b76 siox_master_alloc +EXPORT_SYMBOL_GPL drivers/siox/siox-core 0xd5bac9b8 siox_master_register +EXPORT_SYMBOL_GPL drivers/siox/siox-core 0xeec2ebdb siox_device_connected +EXPORT_SYMBOL_GPL drivers/siox/siox-core 0xfccceda3 siox_device_synced +EXPORT_SYMBOL_GPL drivers/slimbus/slimbus 0x0667fd47 slim_readb +EXPORT_SYMBOL_GPL drivers/slimbus/slimbus 0x07bd89b7 slim_driver_unregister +EXPORT_SYMBOL_GPL drivers/slimbus/slimbus 0x085c514b slim_stream_prepare +EXPORT_SYMBOL_GPL drivers/slimbus/slimbus 0x0e25a7f4 slim_get_logical_addr +EXPORT_SYMBOL_GPL drivers/slimbus/slimbus 0x150333bc slim_free_txn_tid +EXPORT_SYMBOL_GPL drivers/slimbus/slimbus 0x1bc10f61 slim_stream_free +EXPORT_SYMBOL_GPL drivers/slimbus/slimbus 0x29e1307c slim_get_device +EXPORT_SYMBOL_GPL drivers/slimbus/slimbus 0x3528ad46 slim_unregister_controller +EXPORT_SYMBOL_GPL drivers/slimbus/slimbus 0x4583275a slim_device_report_present +EXPORT_SYMBOL_GPL drivers/slimbus/slimbus 0x5c9475d4 slim_writeb +EXPORT_SYMBOL_GPL drivers/slimbus/slimbus 0x61b12678 slim_stream_disable +EXPORT_SYMBOL_GPL drivers/slimbus/slimbus 0x62329401 slim_do_transfer +EXPORT_SYMBOL_GPL drivers/slimbus/slimbus 0x822302ee slim_stream_unprepare +EXPORT_SYMBOL_GPL drivers/slimbus/slimbus 0x83f23d40 slim_stream_enable +EXPORT_SYMBOL_GPL drivers/slimbus/slimbus 0x92d50d09 slim_report_absent +EXPORT_SYMBOL_GPL drivers/slimbus/slimbus 0x94af9c2b slim_stream_allocate +EXPORT_SYMBOL_GPL drivers/slimbus/slimbus 0x9783bb9f slim_read +EXPORT_SYMBOL_GPL drivers/slimbus/slimbus 0x9d3a6630 slim_xfer_msg +EXPORT_SYMBOL_GPL drivers/slimbus/slimbus 0xa7e25aa1 __slim_driver_register +EXPORT_SYMBOL_GPL drivers/slimbus/slimbus 0xb14bd4b9 of_slim_get_device +EXPORT_SYMBOL_GPL drivers/slimbus/slimbus 0xc0199675 slim_msg_response +EXPORT_SYMBOL_GPL drivers/slimbus/slimbus 0xc43f4787 slim_ctrl_clk_pause +EXPORT_SYMBOL_GPL drivers/slimbus/slimbus 0xe9bd4b6f slim_register_controller +EXPORT_SYMBOL_GPL drivers/slimbus/slimbus 0xf5955470 slim_alloc_txn_tid +EXPORT_SYMBOL_GPL drivers/slimbus/slimbus 0xfa8a9670 slim_write +EXPORT_SYMBOL_GPL drivers/slimbus/slimbus 0xfbfdfb01 slimbus_bus +EXPORT_SYMBOL_GPL drivers/soundwire/soundwire-bus 0x5a537d04 __sdw_register_driver +EXPORT_SYMBOL_GPL drivers/soundwire/soundwire-bus 0x5c3613dd sdw_bus_type +EXPORT_SYMBOL_GPL drivers/soundwire/soundwire-bus 0x5c9af164 sdw_unregister_driver +EXPORT_SYMBOL_GPL drivers/spi/spi-bitbang 0x1c0d32a9 spi_bitbang_start +EXPORT_SYMBOL_GPL drivers/spi/spi-bitbang 0x2a612606 spi_bitbang_stop +EXPORT_SYMBOL_GPL drivers/spi/spi-bitbang 0x30535f7c spi_bitbang_cleanup +EXPORT_SYMBOL_GPL drivers/spi/spi-bitbang 0xbbfba28d spi_bitbang_setup_transfer +EXPORT_SYMBOL_GPL drivers/spi/spi-bitbang 0xbf416ce8 spi_bitbang_setup +EXPORT_SYMBOL_GPL drivers/spi/spi-bitbang 0xca52d043 spi_bitbang_init +EXPORT_SYMBOL_GPL drivers/spi/spi-dw 0x06c70b54 dw_spi_suspend_host +EXPORT_SYMBOL_GPL drivers/spi/spi-dw 0x0879d588 dw_spi_resume_host +EXPORT_SYMBOL_GPL drivers/spi/spi-dw 0x2044c76e dw_spi_update_cr0_v1_01a +EXPORT_SYMBOL_GPL drivers/spi/spi-dw 0x4f09369c dw_spi_remove_host +EXPORT_SYMBOL_GPL drivers/spi/spi-dw 0xb1b2f64e dw_spi_update_cr0 +EXPORT_SYMBOL_GPL drivers/spi/spi-dw 0xc2431ac3 dw_spi_dma_setup_generic +EXPORT_SYMBOL_GPL drivers/spi/spi-dw 0xc4a9fd2e dw_spi_dma_setup_mfld +EXPORT_SYMBOL_GPL drivers/spi/spi-dw 0xdd0dbe58 dw_spi_add_host +EXPORT_SYMBOL_GPL drivers/spi/spi-dw 0xf2f5e071 dw_spi_set_cs +EXPORT_SYMBOL_GPL drivers/spi/spi-loopback-test 0x43c85529 spi_test_run_tests +EXPORT_SYMBOL_GPL drivers/spi/spi-loopback-test 0xba1a192e spi_test_run_test +EXPORT_SYMBOL_GPL drivers/spi/spi-loopback-test 0xdb58510a spi_test_execute_msg +EXPORT_SYMBOL_GPL drivers/ssb/ssb 0xfa7efcef ssb_pmu_spuravoid_pllupdate +EXPORT_SYMBOL_GPL drivers/staging/fieldbus/fieldbus_dev 0x4105bddc fieldbus_dev_area_updated +EXPORT_SYMBOL_GPL drivers/staging/fieldbus/fieldbus_dev 0x45d462e0 fieldbus_dev_unregister +EXPORT_SYMBOL_GPL drivers/staging/fieldbus/fieldbus_dev 0xa1d39163 fieldbus_dev_register +EXPORT_SYMBOL_GPL drivers/staging/fieldbus/fieldbus_dev 0xf071cc29 fieldbus_dev_online_changed +EXPORT_SYMBOL_GPL drivers/staging/media/atomisp/i2c/atomisp-libmsrlisthelper 0x1a040d1c load_msr_list +EXPORT_SYMBOL_GPL drivers/staging/media/atomisp/i2c/atomisp-libmsrlisthelper 0x6a0fbeae release_msr_list +EXPORT_SYMBOL_GPL drivers/staging/media/atomisp/i2c/atomisp-libmsrlisthelper 0xd73b1749 apply_msr_data +EXPORT_SYMBOL_GPL drivers/staging/media/atomisp/pci/atomisp_gmin_platform 0x026ee02c atomisp_get_platform_data +EXPORT_SYMBOL_GPL drivers/staging/media/atomisp/pci/atomisp_gmin_platform 0x46c9c0e4 gmin_get_var_int +EXPORT_SYMBOL_GPL drivers/staging/media/atomisp/pci/atomisp_gmin_platform 0x525c46e8 atomisp_gmin_register_vcm_control +EXPORT_SYMBOL_GPL drivers/staging/media/atomisp/pci/atomisp_gmin_platform 0x5e2d8776 atomisp_gmin_remove_subdev +EXPORT_SYMBOL_GPL drivers/staging/media/atomisp/pci/atomisp_gmin_platform 0x7cf25455 camera_sensor_csi +EXPORT_SYMBOL_GPL drivers/staging/media/atomisp/pci/atomisp_gmin_platform 0x8f5f66c7 atomisp_register_i2c_module +EXPORT_SYMBOL_GPL drivers/staging/media/atomisp/pci/atomisp_gmin_platform 0xbae0e12f atomisp_get_default_camera_caps +EXPORT_SYMBOL_GPL drivers/staging/media/atomisp/pci/atomisp_gmin_platform 0xe13bb6d5 atomisp_gmin_find_subdev +EXPORT_SYMBOL_GPL drivers/staging/media/atomisp/pci/atomisp_gmin_platform 0xe1f91447 gmin_camera_platform_data +EXPORT_SYMBOL_GPL drivers/tee/tee 0x0665b201 tee_device_register +EXPORT_SYMBOL_GPL drivers/tee/tee 0x0790d31c tee_shm_register +EXPORT_SYMBOL_GPL drivers/tee/tee 0x142fc861 tee_client_invoke_func +EXPORT_SYMBOL_GPL drivers/tee/tee 0x1dcbaca3 tee_shm_pool_alloc +EXPORT_SYMBOL_GPL drivers/tee/tee 0x2c797808 tee_shm_free +EXPORT_SYMBOL_GPL drivers/tee/tee 0x3485d0fa tee_client_open_context +EXPORT_SYMBOL_GPL drivers/tee/tee 0x3b91431b tee_shm_va2pa +EXPORT_SYMBOL_GPL drivers/tee/tee 0x469152a1 tee_shm_alloc +EXPORT_SYMBOL_GPL drivers/tee/tee 0x46f044fb tee_shm_get_pa +EXPORT_SYMBOL_GPL drivers/tee/tee 0x5bfdb39e tee_device_unregister +EXPORT_SYMBOL_GPL drivers/tee/tee 0x6f1d5ed0 tee_shm_get_from_id +EXPORT_SYMBOL_GPL drivers/tee/tee 0x7a482948 tee_shm_pool_alloc_res_mem +EXPORT_SYMBOL_GPL drivers/tee/tee 0x7e40c968 tee_client_close_session +EXPORT_SYMBOL_GPL drivers/tee/tee 0x85fd9922 tee_session_calc_client_uuid +EXPORT_SYMBOL_GPL drivers/tee/tee 0x883d57c6 tee_shm_put +EXPORT_SYMBOL_GPL drivers/tee/tee 0x90c272c0 tee_device_alloc +EXPORT_SYMBOL_GPL drivers/tee/tee 0x94183663 tee_get_drvdata +EXPORT_SYMBOL_GPL drivers/tee/tee 0x988c53e9 tee_bus_type +EXPORT_SYMBOL_GPL drivers/tee/tee 0xaf56ceef tee_client_close_context +EXPORT_SYMBOL_GPL drivers/tee/tee 0xb7f71dc7 tee_client_open_session +EXPORT_SYMBOL_GPL drivers/tee/tee 0xb82e837d tee_shm_get_va +EXPORT_SYMBOL_GPL drivers/tee/tee 0xc18fbf46 tee_client_get_version +EXPORT_SYMBOL_GPL drivers/tee/tee 0xc9b5137d tee_shm_pa2va +EXPORT_SYMBOL_GPL drivers/tee/tee 0xe578b947 tee_shm_pool_mgr_alloc_res_mem +EXPORT_SYMBOL_GPL drivers/tee/tee 0xecefd0c0 tee_shm_pool_free +EXPORT_SYMBOL_GPL drivers/thermal/intel/intel_soc_dts_iosf 0x4b14cf52 intel_soc_dts_iosf_exit +EXPORT_SYMBOL_GPL drivers/thermal/intel/intel_soc_dts_iosf 0xbff44633 intel_soc_dts_iosf_add_read_only_critical_trip +EXPORT_SYMBOL_GPL drivers/thermal/intel/intel_soc_dts_iosf 0xe200467d intel_soc_dts_iosf_init +EXPORT_SYMBOL_GPL drivers/thermal/intel/intel_soc_dts_iosf 0xf0d09f1c intel_soc_dts_iosf_interrupt_handler +EXPORT_SYMBOL_GPL drivers/thunderbolt/thunderbolt 0x012da9c6 tb_service_type +EXPORT_SYMBOL_GPL drivers/thunderbolt/thunderbolt 0x018e06bc tb_ring_free +EXPORT_SYMBOL_GPL drivers/thunderbolt/thunderbolt 0x01d23ee1 tb_property_create_dir +EXPORT_SYMBOL_GPL drivers/thunderbolt/thunderbolt 0x1d88af0c tb_xdomain_request +EXPORT_SYMBOL_GPL drivers/thunderbolt/thunderbolt 0x297828a5 tb_unregister_service_driver +EXPORT_SYMBOL_GPL drivers/thunderbolt/thunderbolt 0x393b4f2f tb_property_free_dir +EXPORT_SYMBOL_GPL drivers/thunderbolt/thunderbolt 0x39d35f24 tb_xdomain_find_by_uuid +EXPORT_SYMBOL_GPL drivers/thunderbolt/thunderbolt 0x448532c2 tb_xdomain_enable_paths +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 0x603249ed tb_unregister_property_dir +EXPORT_SYMBOL_GPL drivers/thunderbolt/thunderbolt 0x658e3d97 tb_property_add_immediate +EXPORT_SYMBOL_GPL drivers/thunderbolt/thunderbolt 0x68f8bd2a tb_xdomain_find_by_route +EXPORT_SYMBOL_GPL drivers/thunderbolt/thunderbolt 0x6a30a58a tb_xdomain_response +EXPORT_SYMBOL_GPL drivers/thunderbolt/thunderbolt 0x7016420c tb_ring_alloc_rx +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 0x7978fb2b tb_ring_poll_complete +EXPORT_SYMBOL_GPL drivers/thunderbolt/thunderbolt 0x894fbf3f tb_ring_poll +EXPORT_SYMBOL_GPL drivers/thunderbolt/thunderbolt 0x8b62f95e tb_property_add_dir +EXPORT_SYMBOL_GPL drivers/thunderbolt/thunderbolt 0xa3d2b403 tb_property_add_data +EXPORT_SYMBOL_GPL drivers/thunderbolt/thunderbolt 0xafa033c1 __tb_ring_enqueue +EXPORT_SYMBOL_GPL drivers/thunderbolt/thunderbolt 0xb614c8a9 tb_ring_stop +EXPORT_SYMBOL_GPL drivers/thunderbolt/thunderbolt 0xb7c7cdce tb_property_add_text +EXPORT_SYMBOL_GPL drivers/thunderbolt/thunderbolt 0xb9969d6e tb_register_service_driver +EXPORT_SYMBOL_GPL drivers/thunderbolt/thunderbolt 0xbfa28541 tb_ring_start +EXPORT_SYMBOL_GPL drivers/thunderbolt/thunderbolt 0xe543cc4b tb_xdomain_disable_paths +EXPORT_SYMBOL_GPL drivers/thunderbolt/thunderbolt 0xef7243f3 tb_xdomain_type +EXPORT_SYMBOL_GPL drivers/thunderbolt/thunderbolt 0xf1cfd1ff tb_register_property_dir +EXPORT_SYMBOL_GPL drivers/thunderbolt/thunderbolt 0xf40088c6 tb_ring_alloc_tx +EXPORT_SYMBOL_GPL drivers/thunderbolt/thunderbolt 0xf76028c7 tb_unregister_protocol_handler +EXPORT_SYMBOL_GPL drivers/tty/n_tracesink 0x8a422e5e n_tracesink_datadrain +EXPORT_SYMBOL_GPL drivers/uio/uio 0x4cfbe682 __uio_register_device +EXPORT_SYMBOL_GPL drivers/uio/uio 0x60ffa66a uio_unregister_device +EXPORT_SYMBOL_GPL drivers/uio/uio 0xa50a568f uio_event_notify +EXPORT_SYMBOL_GPL drivers/uio/uio 0xbca7cc33 __devm_uio_register_device +EXPORT_SYMBOL_GPL drivers/vdpa/vdpa 0x3b7e42da __vdpa_register_driver +EXPORT_SYMBOL_GPL drivers/vdpa/vdpa 0x5ed85627 vdpa_register_device +EXPORT_SYMBOL_GPL drivers/vdpa/vdpa 0x7afbe8fe vdpa_unregister_driver +EXPORT_SYMBOL_GPL drivers/vdpa/vdpa 0xf7a788ed __vdpa_alloc_device +EXPORT_SYMBOL_GPL drivers/vdpa/vdpa 0xfb0f2c79 vdpa_unregister_device +EXPORT_SYMBOL_GPL drivers/vfio/mdev/mdev 0xfea1a69d mdev_bus_type +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x042f0872 vhost_add_used_n +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x118f52a2 vhost_new_msg +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x283e6bf9 vhost_poll_init +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x29ab0da7 vhost_dequeue_msg +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x3baf040b vhost_log_access_ok +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x3ee90ca3 vhost_get_vq_desc +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x3f709fa9 vhost_dev_reset_owner +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x400576c8 vhost_dev_stop +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x479ba4c4 vhost_exceeds_weight +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x4d304f6f vhost_poll_queue +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x4d9f12f4 vhost_dev_set_owner +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x5315e485 vhost_poll_start +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x604f0c39 vhost_disable_notify +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x6261b37b vhost_init_device_iotlb +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x67a52a97 vhost_has_work +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x6ac5a74b vhost_vq_is_setup +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x74c18ffe vhost_work_flush +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x789cd0a8 vhost_vring_ioctl +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x7a4e2a8a vq_meta_prefetch +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x7cf08c6a vhost_signal +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x825c448c vhost_vq_avail_empty +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x8699bd30 vhost_add_used +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x87c3ff5f vhost_add_used_and_signal +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x8ffe43c8 vhost_log_write +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x961257cb vhost_vq_init_access +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x97198ca4 vhost_vq_access_ok +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x9efe6781 vhost_dev_ioctl +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0xa909cfc5 vhost_work_init +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0xad196b6e vhost_enable_notify +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0xad3e9852 vhost_work_queue +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0xb8c6edaf vhost_dev_init +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0xba9820a6 vhost_discard_vq_desc +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0xbb4145bb vhost_dev_has_owner +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0xc674d985 vhost_enqueue_msg +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0xc7421005 vhost_poll_stop +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0xd181b217 vhost_add_used_and_signal_n +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0xd6481bf3 vhost_poll_flush +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0xd83220f8 vhost_chr_read_iter +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0xe5116865 vhost_dev_cleanup +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0xe56c5695 vhost_dev_check_owner +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 0x514d0e6a vhost_iotlb_itree_first +EXPORT_SYMBOL_GPL drivers/vhost/vhost_iotlb 0x5f4e5249 vhost_iotlb_reset +EXPORT_SYMBOL_GPL drivers/vhost/vhost_iotlb 0x6bec0e66 vhost_iotlb_del_range +EXPORT_SYMBOL_GPL drivers/vhost/vhost_iotlb 0x7579334f vhost_iotlb_itree_next +EXPORT_SYMBOL_GPL drivers/vhost/vhost_iotlb 0xa24517eb vhost_iotlb_free +EXPORT_SYMBOL_GPL drivers/vhost/vhost_iotlb 0xad111707 vhost_iotlb_map_free +EXPORT_SYMBOL_GPL drivers/vhost/vhost_iotlb 0xc577832d vhost_iotlb_alloc +EXPORT_SYMBOL_GPL drivers/video/fbdev/core/fb_ddc 0x8912ed36 fb_ddc_read +EXPORT_SYMBOL_GPL drivers/video/fbdev/core/fb_sys_fops 0x35e1b3c5 fb_sys_read +EXPORT_SYMBOL_GPL drivers/video/fbdev/core/fb_sys_fops 0xd3624e62 fb_sys_write +EXPORT_SYMBOL_GPL drivers/video/fbdev/via/viafb 0x0e1cee08 viafb_dma_copy_out_sg +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 0x51f0a999 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 0xfff2dfd2 viafb_gpio_lookup +EXPORT_SYMBOL_GPL fs/dlm/dlm 0x21099891 dlm_posix_lock +EXPORT_SYMBOL_GPL fs/dlm/dlm 0x2b99874e dlm_posix_get +EXPORT_SYMBOL_GPL fs/dlm/dlm 0x4b62826c dlm_unlock +EXPORT_SYMBOL_GPL fs/dlm/dlm 0x53de35ec dlm_posix_unlock +EXPORT_SYMBOL_GPL fs/dlm/dlm 0x647d6170 dlm_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/fscache/fscache 0x092cf98e fscache_object_sleep_till_congested +EXPORT_SYMBOL_GPL fs/lockd/lockd 0x0f432b67 lockd_up +EXPORT_SYMBOL_GPL fs/lockd/lockd 0x1c8633e8 nlmsvc_ops +EXPORT_SYMBOL_GPL fs/lockd/lockd 0x4cabf08d nlmclnt_init +EXPORT_SYMBOL_GPL fs/lockd/lockd 0x6a6d2cf0 nlmclnt_done +EXPORT_SYMBOL_GPL fs/lockd/lockd 0x6de7078e lockd_down +EXPORT_SYMBOL_GPL fs/lockd/lockd 0x6ee8918d nlmsvc_unlock_all_by_sb +EXPORT_SYMBOL_GPL fs/lockd/lockd 0x77e35ccc nlmsvc_unlock_all_by_ip +EXPORT_SYMBOL_GPL fs/lockd/lockd 0x8ac58b06 nlmclnt_proc +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x009077d9 nfs_pgio_header_alloc +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x0258a078 nfs_scan_commit_list +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x0294c6a2 nfs_callback_nr_threads +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x02b26c19 nfs_lock +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x0538cd70 nfs_wb_all +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x0649d0dc nfs_reconfigure +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x0a0c9d3e nfs_async_iocounter_wait +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x0a213a47 nfs_get_client +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x0b01f958 nfs_sops +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x0b51514f nfs_revalidate_inode +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x0b7f988f nfs_free_client +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x0f6def25 nfs_drop_inode +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x10962bc2 nfs_auth_info_match +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x10f3f6bb nfs_wait_on_request +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x11443c61 nfs_fhget +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x1337c277 nfs_access_add_cache +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x1343efe4 nfs_request_add_commit_list +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x139efa4b nfs_client_init_is_complete +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x13efbdcc nfs_fs_type +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x1637190b nfs_commitdata_release +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x16f3c566 nfs_close_context +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x180ad8df nfs_write_inode +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x1b01c67d nfs_submount +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x1cccc5fa nfs_sb_active +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x1e2a5f16 nfs_sb_deactive +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x21025cfc nfs_init_server_rpcclient +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x213960f8 nfs_unlink +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x22d795a8 _nfs_display_fhandle_hash +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x26884ff7 nfs_alloc_fhandle +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x28322ac0 nfs_pgio_current_mirror +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x285f47c6 nfs_getattr +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x2efa6006 nfs_writeback_update_inode +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x2f40cdea nfs_inode_attach_open_context +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x39e05ac3 nfs_idmap_cache_timeout +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x3dd3ad19 nfs_create_server +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x3e443185 nfs_lookup +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x3f2690f2 nfs_check_flags +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x40152e78 nfs_client_for_each_server +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x4023a5bb nfs_commit_free +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x40739385 nfs_wait_bit_killable +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x42f2c81f nfs4_client_id_uniquifier +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x450a1235 nfs_statfs +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x45ceaac9 nfs_pageio_reset_read_mds +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x48de5f97 nfs_do_submount +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x49ae1713 nfs_server_insert_lists +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x4a5854d2 nfs_initiate_commit +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x4a8b5e46 nfs_file_operations +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x4bba9f9e nfs_put_lock_context +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x4c7a87a4 nfs_file_release +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x4cb9bd4a nfs_put_client +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x4cb9e001 recover_lost_locks +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x501286c5 nfs_fscache_open_file +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x513ee510 nfs_client_init_status +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x51892d61 nfs_callback_set_tcpport +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x51cc18a2 put_nfs_open_context +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x538a31c6 nfs_file_set_open_context +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x541bc3ff nfs_probe_fsinfo +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x57232b9a nfs_create +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x5742f3fe nfs_umount_begin +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x584b8482 nfs_inc_attr_generation_counter +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x59e32fc5 nfs_pageio_init_write +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x5bbd63bc nfs_request_remove_commit_list +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x5fc873ea nfs_server_remove_lists +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x6112f195 alloc_nfs_open_context +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x613cd26f nfs_show_stats +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x6188eb71 nfs_commit_inode +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x621bb2b0 nfs_init_commit +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x63307b23 nfs_force_lookup_revalidate +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x650ec9eb nfs_zap_acl_cache +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x68de6242 nfs_try_get_tree +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x698389e9 nfs_generic_pg_test +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x6a8d55a1 nfs4_label_alloc +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x6b8425cc nfs_free_server +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x6c803215 nfs_pgio_header_free +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x702d2ae0 nfs4_dentry_operations +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x70e60483 nfs_server_copy_userdata +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x722a8dcd nfs_alloc_server +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x733764f7 get_nfs_open_context +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x73dccde2 nfs_permission +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x75e378a4 nfs_post_op_update_inode +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x76f84293 nfs_kill_super +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x7ac45157 nfs_pageio_reset_write_mds +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x7c9722ba nfs_dreq_bytes_left +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x7cc066b7 nfs_release_request +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x7e570ce3 nfs_request_add_commit_list_locked +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x7fd7a1cd nfs_init_client +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x8011daa2 nfs_path +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x831d5d2e nfs_get_lock_context +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x832e8f0b nfs_alloc_fattr +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x83e8c166 nfs_mknod +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x851d74ac nfs_pageio_init_read +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x887683a9 nfs_alloc_client +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x8b40e6b7 nfs_mkdir +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x8fb5f076 nfs_flock +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x8fca00f4 nfs_pageio_resend +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x90a5530f nfsiod_workqueue +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x90e136d7 nfs_generic_pgio +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x91d1fe52 max_session_slots +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x936eefdf nfs4_fs_type +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x97f986c8 nfs_setattr_update_inode +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x98b0ece8 nfs_init_timeout_values +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x9c0a1b78 nfs_show_options +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x9cba3fff nfs_instantiate +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x9d2122b0 nfs_sync_inode +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x9e4859c8 nfs_post_op_update_inode_force_wcc +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x9e642a24 nfs_file_read +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x9f5f6902 nfs_clone_server +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xa05ca625 nfs_fattr_init +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xa625df3c nfs_file_mmap +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xa78c5c09 nfs_clear_verifier_delegated +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xa8abcded __tracepoint_nfs_xdr_status +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xa8e9e1ae send_implementation_id +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xa9490838 nfs_may_open +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xaa9fde04 nfs_access_set_mask +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xaafd4acc max_session_cb_slots +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xabed0194 nfs_show_path +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xac4057a9 nfs_link +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xadad0363 nfs_refresh_inode +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xaea06eb0 nfs_rename +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xaf60db39 nfs_alloc_inode +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xb5f5c91f __tracepoint_nfs_fsync_exit +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xb8d8ae48 nfs_init_cinfo +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xbacf7327 nfs_setsecurity +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xbc6b2c88 __tracepoint_nfs_fsync_enter +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xc05c03b2 unregister_nfs_version +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xc169e1f0 nfs_wait_client_init_complete +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xc2b5c88b nfs_atomic_open +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xc398facb nfs_show_devname +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xc3a2be67 nfs_net_id +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xc47c5321 register_nfs_version +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xc504394f nfs_open +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xc745f59d nfs_file_write +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xc8a7582a nfs_symlink +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xcbf6b07b nfs_dentry_operations +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xcedf1f64 nfs_access_zap_cache +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xcf066c5c nfs_retry_commit +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xcf5b144c nfs_filemap_write_and_wait_range +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xd1534566 nfs_create_rpc_client +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xd2981c9e nfs_free_inode +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xdae9b5d7 nfs4_disable_idmapping +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xdd3367b8 nfs_rmdir +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xdee9a838 nfs_clear_inode +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xe4d694bc nfs_setattr +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xed0833da nfs_initiate_pgio +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xf4e4ea7a nfs_invalidate_atime +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xf538bba2 nfs_commitdata_alloc +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xf5467ff2 nfs_pgheader_init +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xfb067053 nfs_add_or_obtain +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xfb1ecb9b nfs_mark_client_ready +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xfc619abd _nfs_display_fhandle +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xfdb82afe nfs_file_llseek +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xfe088933 nfs_file_fsync +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xffaea081 nfs_set_verifier +EXPORT_SYMBOL_GPL fs/nfs/nfsv3 0x9067f55a nfs3_set_ds_client +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x054bef45 layoutstats_timer +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x0595cf71 pnfs_generic_pg_writepages +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x06c58196 nfs4_schedule_migration_recovery +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x07a514f2 pnfs_generic_pg_init_read +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x0ade27ae __tracepoint_ff_layout_read_error +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x10f14d2c pnfs_layoutcommit_inode +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x163831c3 __tracepoint_nfs4_pnfs_write +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x19d7c78f pnfs_generic_clear_request_commit +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x1a082ac3 nfs4_pnfs_ds_add +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x1cdde079 __tracepoint_nfs4_pnfs_read +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x1f271484 pnfs_generic_pg_init_write +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x208f5c30 __tracepoint_pnfs_mds_fallback_read_pagelist +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x246e3ca5 pnfs_read_done_resend_to_mds +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x296a6b8c pnfs_ld_write_done +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x2ba1f702 nfs42_ssc_open +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x2bd4da40 nfs42_ssc_close +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x2e3fa271 nfs42_proc_layouterror +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x33eced59 pnfs_destroy_layout +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x33ff9a19 pnfs_put_lseg +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x35e7b83a nfs4_set_ds_client +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x379ec59b nfs4_schedule_lease_recovery +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x39ac52fe __tracepoint_ff_layout_commit_error +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x39d5fd53 nfs4_mark_deviceid_unavailable +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x3c03f288 nfs4_delete_deviceid +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x3c7d84cc __tracepoint_pnfs_mds_fallback_write_pagelist +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x3cb28ca8 nfs4_pnfs_ds_put +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x3f8b113a pnfs_generic_pg_cleanup +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x40bc3c6d __tracepoint_ff_layout_write_error +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x420aba08 nfs4_schedule_session_recovery +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x4379d6cf nfs4_init_deviceid_node +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x44c2face pnfs_generic_scan_commit_lists +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x46cde42e nfs4_setup_sequence +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x47b112bb nfs4_test_session_trunk +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x49ac2857 pnfs_generic_pg_check_range +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x570adfe0 pnfs_generic_commit_pagelist +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x59464b4e pnfs_generic_ds_cinfo_release_lseg +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x5c4a7e03 pnfs_register_layoutdriver +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x6085edbd nfs_map_string_to_numeric +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x625b8fa3 pnfs_set_lo_fail +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x66f0c75f pnfs_generic_sync +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x67e199a7 nfs4_init_ds_session +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x684daea4 nfs4_test_deviceid_unavailable +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x6928ee43 pnfs_generic_pg_test +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x69d3558d pnfs_generic_rw_release +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x6c9ac3ee pnfs_generic_ds_cinfo_destroy +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x6d70c15b nfs4_proc_getdeviceinfo +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x6f6c2d6d nfs4_put_deviceid_node +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x76a2910e pnfs_write_done_resend_to_mds +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x78ecf37b __tracepoint_pnfs_mds_fallback_pg_init_write +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x85626f68 pnfs_report_layoutstat +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x8ad86021 pnfs_generic_prepare_to_resend_writes +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x8b2f0c95 pnfs_update_layout +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x8b67a90a pnfs_error_mark_layout_for_return +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x94dc75b0 pnfs_alloc_commit_array +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x956cedbe pnfs_ld_read_done +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x99bc6cac nfs4_pnfs_ds_connect +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x9d1c2552 nfs4_find_or_create_ds_client +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xa319bfee __tracepoint_pnfs_mds_fallback_pg_init_read +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xa717d236 nfs41_sequence_done +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xa8e9ef2f pnfs_add_commit_array +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xa8f8cb43 nfs4_schedule_stateid_recovery +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xab9a762b nfs4_sequence_done +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xb78d9d18 pnfs_read_resend_pnfs +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xbe1fe952 nfs4_mark_deviceid_available +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xbf9331ff pnfs_nfs_generic_sync +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xc0509f93 pnfs_unregister_layoutdriver +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xc38ade9c pnfs_generic_pg_check_layout +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xc6c8f752 pnfs_free_commit_array +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xc830a1d4 pnfs_generic_write_commit_done +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xc8bf1ec8 pnfs_set_layoutcommit +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xcb9e15d5 nfs4_decode_mp_ds_addr +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xd27f9fa2 nfs4_schedule_lease_moved_recovery +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xd6ed7dda __tracepoint_pnfs_mds_fallback_write_done +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xd7939faa pnfs_generic_pg_readpages +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xdc29230a __tracepoint_pnfs_mds_fallback_pg_get_mirror_count +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xdf05942f __tracepoint_nfs4_pnfs_commit_ds +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xe45bfafd nfs4_find_get_deviceid +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xe4f546b8 pnfs_generic_recover_commit_reqs +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xeb42fd77 pnfs_layout_mark_request_commit +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xed15fb41 nfs4_print_deviceid +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xee960d9f __tracepoint_pnfs_mds_fallback_read_done +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xf5402269 pnfs_generic_search_commit_reqs +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xf6de7ca7 nfs_remove_bad_delegation +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/nfsv4 0xf9ff282f pnfs_generic_layout_insert_lseg +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xfac0fde5 nfs4_set_rw_stateid +EXPORT_SYMBOL_GPL fs/nfs_common/grace 0x1fe1e1ad locks_end_grace +EXPORT_SYMBOL_GPL fs/nfs_common/grace 0x28a95323 locks_in_grace +EXPORT_SYMBOL_GPL fs/nfs_common/grace 0x58b862fa opens_in_grace +EXPORT_SYMBOL_GPL fs/nfs_common/grace 0x7d56ccb8 locks_start_grace +EXPORT_SYMBOL_GPL fs/nfs_common/nfs_acl 0x16173472 nfsacl_encode +EXPORT_SYMBOL_GPL fs/nfs_common/nfs_acl 0xc185d2b0 nfsacl_decode +EXPORT_SYMBOL_GPL fs/nfsd/nfsd 0x5b388f0f inter_copy_offload_enable +EXPORT_SYMBOL_GPL fs/ocfs2/cluster/ocfs2_nodemanager 0x03085155 o2nm_get_node_by_ip +EXPORT_SYMBOL_GPL fs/ocfs2/cluster/ocfs2_nodemanager 0x0b91b222 o2nm_node_put +EXPORT_SYMBOL_GPL fs/ocfs2/cluster/ocfs2_nodemanager 0x1b834320 o2hb_register_callback +EXPORT_SYMBOL_GPL fs/ocfs2/cluster/ocfs2_nodemanager 0x1b89c6ee o2hb_fill_node_map +EXPORT_SYMBOL_GPL fs/ocfs2/cluster/ocfs2_nodemanager 0x487341e3 o2nm_get_node_by_num +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 0x81a17396 mlog_and_bits +EXPORT_SYMBOL_GPL fs/ocfs2/cluster/ocfs2_nodemanager 0xa3ba4b12 o2hb_unregister_callback +EXPORT_SYMBOL_GPL fs/ocfs2/cluster/ocfs2_nodemanager 0xa87bc9e7 o2nm_configured_node_map +EXPORT_SYMBOL_GPL fs/ocfs2/cluster/ocfs2_nodemanager 0xac49c2c7 o2nm_node_get +EXPORT_SYMBOL_GPL fs/ocfs2/cluster/ocfs2_nodemanager 0xb6ebf62a o2nm_this_node +EXPORT_SYMBOL_GPL fs/ocfs2/cluster/ocfs2_nodemanager 0xb989bd38 o2hb_setup_callback +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 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 0x46feff20 dlm_register_eviction_cb +EXPORT_SYMBOL_GPL fs/ocfs2/dlm/ocfs2_dlm 0x7a1211f8 dlm_setup_eviction_cb +EXPORT_SYMBOL_GPL fs/ocfs2/dlm/ocfs2_dlm 0x7f0927e7 dlmunlock +EXPORT_SYMBOL_GPL fs/ocfs2/dlm/ocfs2_dlm 0xbff2472e dlm_unregister_domain +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 0xeda07e9e dlm_print_one_lock +EXPORT_SYMBOL_GPL fs/ocfs2/dlm/ocfs2_dlm 0xef3f65da dlm_register_domain +EXPORT_SYMBOL_GPL fs/ocfs2/dlm/ocfs2_dlm 0xf36cb82c dlmlock +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 0x76f40744 ocfs2_dlm_lvb +EXPORT_SYMBOL_GPL fs/ocfs2/ocfs2_stackglue 0x9507547f ocfs2_cluster_disconnect +EXPORT_SYMBOL_GPL fs/ocfs2/ocfs2_stackglue 0x98785a2e ocfs2_stack_glue_register +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 0xc60ce059 ocfs2_plock +EXPORT_SYMBOL_GPL fs/ocfs2/ocfs2_stackglue 0xc9fae756 ocfs2_cluster_connect +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 0xe8e8424f ocfs2_kset +EXPORT_SYMBOL_GPL fs/ocfs2/ocfs2_stackglue 0xeee4d0d7 ocfs2_stack_glue_unregister +EXPORT_SYMBOL_GPL fs/pstore/pstore_blk 0x43cc3d4b pstore_blk_get_config +EXPORT_SYMBOL_GPL fs/pstore/pstore_blk 0x941c79d7 unregister_pstore_blk +EXPORT_SYMBOL_GPL fs/pstore/pstore_blk 0x96d760c6 register_pstore_device +EXPORT_SYMBOL_GPL fs/pstore/pstore_blk 0xb32bf368 register_pstore_blk +EXPORT_SYMBOL_GPL fs/pstore/pstore_blk 0xc3d2aed6 unregister_pstore_device +EXPORT_SYMBOL_GPL fs/pstore/pstore_zone 0x32e49bf4 unregister_pstore_zone +EXPORT_SYMBOL_GPL fs/pstore/pstore_zone 0xa685abe1 register_pstore_zone +EXPORT_SYMBOL_GPL kernel/torture 0x1b2fca48 torture_must_stop_irq +EXPORT_SYMBOL_GPL kernel/torture 0x1be7d8be torture_onoff_failures +EXPORT_SYMBOL_GPL kernel/torture 0x3e9619f5 torture_onoff_stats +EXPORT_SYMBOL_GPL kernel/torture 0x3ff9be11 torture_online +EXPORT_SYMBOL_GPL kernel/torture 0x447d9c95 torture_offline +EXPORT_SYMBOL_GPL kernel/torture 0x478035c9 _torture_create_kthread +EXPORT_SYMBOL_GPL kernel/torture 0x4c7529bd torture_shutdown_absorb +EXPORT_SYMBOL_GPL kernel/torture 0x52665f8b torture_random +EXPORT_SYMBOL_GPL kernel/torture 0x5a12a7da torture_stutter_init +EXPORT_SYMBOL_GPL kernel/torture 0x679d9e50 torture_must_stop +EXPORT_SYMBOL_GPL kernel/torture 0x688e6a64 torture_cleanup_end +EXPORT_SYMBOL_GPL kernel/torture 0x6c3ff11a torture_init_begin +EXPORT_SYMBOL_GPL kernel/torture 0x8b0e1d2f torture_shuffle_init +EXPORT_SYMBOL_GPL kernel/torture 0xc67a49d4 torture_cleanup_begin +EXPORT_SYMBOL_GPL kernel/torture 0xc94a93e3 torture_onoff_init +EXPORT_SYMBOL_GPL kernel/torture 0xca300278 torture_shuffle_task_register +EXPORT_SYMBOL_GPL kernel/torture 0xdbc5277a torture_shutdown_init +EXPORT_SYMBOL_GPL kernel/torture 0xe2430307 stutter_wait +EXPORT_SYMBOL_GPL kernel/torture 0xe6989fd3 torture_init_end +EXPORT_SYMBOL_GPL kernel/torture 0xf2e46991 _torture_stop_kthread +EXPORT_SYMBOL_GPL kernel/torture 0xf6d34fb5 torture_kthread_stopping +EXPORT_SYMBOL_GPL lib/842/842_compress 0xcf048a91 sw842_compress +EXPORT_SYMBOL_GPL lib/842/842_decompress 0xa4adedf1 sw842_decompress +EXPORT_SYMBOL_GPL lib/crc4 0x696b3a5a crc4 +EXPORT_SYMBOL_GPL lib/crc64 0xeaf3cb23 crc64_be +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 0x7f376d08 poly1305_final_generic +EXPORT_SYMBOL_GPL lib/crypto/libpoly1305 0xaeadcbe8 poly1305_init_generic +EXPORT_SYMBOL_GPL lib/crypto/libpoly1305 0xfa617389 poly1305_update_generic +EXPORT_SYMBOL_GPL lib/notifier-error-inject 0x878072c0 notifier_err_inject_init +EXPORT_SYMBOL_GPL lib/notifier-error-inject 0xa068b0f9 notifier_err_inject_dir +EXPORT_SYMBOL_GPL lib/raid6/raid6_pq 0x1803a6ed raid6_2data_recov +EXPORT_SYMBOL_GPL lib/raid6/raid6_pq 0x2b30f429 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 0xeb2f825c init_rs_gfp +EXPORT_SYMBOL_GPL lib/reed_solomon/reed_solomon 0xfd581da1 free_rs +EXPORT_SYMBOL_GPL net/6lowpan/6lowpan 0xedfee982 lowpan_header_compress +EXPORT_SYMBOL_GPL net/6lowpan/6lowpan 0xfaf52b73 lowpan_header_decompress +EXPORT_SYMBOL_GPL net/802/garp 0x00069b6c garp_unregister_application +EXPORT_SYMBOL_GPL net/802/garp 0x026db6d7 garp_uninit_applicant +EXPORT_SYMBOL_GPL net/802/garp 0x145e1951 garp_register_application +EXPORT_SYMBOL_GPL net/802/garp 0x4fec0346 garp_request_leave +EXPORT_SYMBOL_GPL net/802/garp 0x7cd2e9a0 garp_init_applicant +EXPORT_SYMBOL_GPL net/802/garp 0xa5ee3b64 garp_request_join +EXPORT_SYMBOL_GPL net/802/mrp 0x096d00d1 mrp_request_leave +EXPORT_SYMBOL_GPL net/802/mrp 0x2b2121fd mrp_unregister_application +EXPORT_SYMBOL_GPL net/802/mrp 0x38a4746b mrp_request_join +EXPORT_SYMBOL_GPL net/802/mrp 0x7d44321c mrp_register_application +EXPORT_SYMBOL_GPL net/802/mrp 0xc624e7f8 mrp_init_applicant +EXPORT_SYMBOL_GPL net/802/mrp 0xf9feeac4 mrp_uninit_applicant +EXPORT_SYMBOL_GPL net/802/stp 0x285f51af stp_proto_unregister +EXPORT_SYMBOL_GPL net/802/stp 0x3ba5469a stp_proto_register +EXPORT_SYMBOL_GPL net/9p/9pnet 0x5e254ae2 p9_client_xattrwalk +EXPORT_SYMBOL_GPL net/9p/9pnet 0x601df3a0 p9_client_xattrcreate +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 0x650f2eed 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 0x4388e1e7 nf_br_ops +EXPORT_SYMBOL_GPL net/bridge/bridge 0x447ef7c1 br_multicast_has_querier_anywhere +EXPORT_SYMBOL_GPL net/bridge/bridge 0x467f5997 br_vlan_get_info +EXPORT_SYMBOL_GPL net/bridge/bridge 0x4c459b5e br_multicast_list_adjacent +EXPORT_SYMBOL_GPL net/bridge/bridge 0x54dff78c br_dev_queue_push_xmit +EXPORT_SYMBOL_GPL net/bridge/bridge 0x5d8f5988 br_fdb_clear_offload +EXPORT_SYMBOL_GPL net/bridge/bridge 0x61bed11b br_vlan_get_pvid_rcu +EXPORT_SYMBOL_GPL net/bridge/bridge 0x9769a0cc br_handle_frame_finish +EXPORT_SYMBOL_GPL net/bridge/bridge 0xa8766c67 br_vlan_get_proto +EXPORT_SYMBOL_GPL net/bridge/bridge 0xa912a86a br_multicast_enabled +EXPORT_SYMBOL_GPL net/bridge/bridge 0xadba8bbf br_multicast_router +EXPORT_SYMBOL_GPL net/bridge/bridge 0xcb771166 br_forward_finish +EXPORT_SYMBOL_GPL net/bridge/bridge 0xdc24851f br_multicast_has_querier_adjacent +EXPORT_SYMBOL_GPL net/bridge/bridge 0xe5dcc936 br_port_flag_is_set +EXPORT_SYMBOL_GPL net/bridge/bridge 0xe60fb556 br_fdb_find_port +EXPORT_SYMBOL_GPL net/bridge/bridge 0xeb06ffbf br_vlan_enabled +EXPORT_SYMBOL_GPL net/bridge/bridge 0xef1b28f6 br_vlan_get_pvid +EXPORT_SYMBOL_GPL net/bridge/bridge 0xfb619488 br_forward +EXPORT_SYMBOL_GPL net/core/failover 0x93da420f failover_register +EXPORT_SYMBOL_GPL net/core/failover 0xa6b5ea47 failover_slave_unregister +EXPORT_SYMBOL_GPL net/core/failover 0xd0c608a5 failover_unregister +EXPORT_SYMBOL_GPL net/dccp/dccp 0x008fef33 dccp_ioctl +EXPORT_SYMBOL_GPL net/dccp/dccp 0x055cf1a7 dccp_create_openreq_child +EXPORT_SYMBOL_GPL net/dccp/dccp 0x0934316f dccp_ctl_make_reset +EXPORT_SYMBOL_GPL net/dccp/dccp 0x0c44e91b dccp_send_sync +EXPORT_SYMBOL_GPL net/dccp/dccp 0x0edaa6c1 dccp_connect +EXPORT_SYMBOL_GPL net/dccp/dccp 0x11bcc94e dccp_rcv_state_process +EXPORT_SYMBOL_GPL net/dccp/dccp 0x182ec2bf dccp_ackvec_parsed_add +EXPORT_SYMBOL_GPL net/dccp/dccp 0x1d017662 dccp_sendmsg +EXPORT_SYMBOL_GPL net/dccp/dccp 0x1fa750fd dccp_insert_option +EXPORT_SYMBOL_GPL net/dccp/dccp 0x239d6d27 dccp_reqsk_send_ack +EXPORT_SYMBOL_GPL net/dccp/dccp 0x252dab43 dccp_feat_signal_nn_change +EXPORT_SYMBOL_GPL net/dccp/dccp 0x25607383 inet_dccp_listen +EXPORT_SYMBOL_GPL net/dccp/dccp 0x3314a3b9 dccp_set_state +EXPORT_SYMBOL_GPL net/dccp/dccp 0x4cdd391d dccp_feat_list_purge +EXPORT_SYMBOL_GPL net/dccp/dccp 0x51e74ffe dccp_poll +EXPORT_SYMBOL_GPL net/dccp/dccp 0x59814a84 dccp_statistics +EXPORT_SYMBOL_GPL net/dccp/dccp 0x5e5ddd65 dccp_recvmsg +EXPORT_SYMBOL_GPL net/dccp/dccp 0x722630de dccp_hashinfo +EXPORT_SYMBOL_GPL net/dccp/dccp 0x777dc5d7 dccp_child_process +EXPORT_SYMBOL_GPL net/dccp/dccp 0x80993155 dccp_timestamp +EXPORT_SYMBOL_GPL net/dccp/dccp 0x86be7924 dccp_packet_name +EXPORT_SYMBOL_GPL net/dccp/dccp 0x896bafbc dccp_done +EXPORT_SYMBOL_GPL net/dccp/dccp 0x9598d24d dccp_ackvec_parsed_cleanup +EXPORT_SYMBOL_GPL net/dccp/dccp 0x98a41b3d dccp_disconnect +EXPORT_SYMBOL_GPL net/dccp/dccp 0x9b2e46a3 dccp_make_response +EXPORT_SYMBOL_GPL net/dccp/dccp 0xa2624a42 dccp_death_row +EXPORT_SYMBOL_GPL net/dccp/dccp 0xae97f9da dccp_send_ack +EXPORT_SYMBOL_GPL net/dccp/dccp 0xafbe33ea dccp_shutdown +EXPORT_SYMBOL_GPL net/dccp/dccp 0xb28fc566 dccp_init_sock +EXPORT_SYMBOL_GPL net/dccp/dccp 0xbe20c9c1 compat_dccp_setsockopt +EXPORT_SYMBOL_GPL net/dccp/dccp 0xc3b6a26c dccp_orphan_count +EXPORT_SYMBOL_GPL net/dccp/dccp 0xc5b44dbd dccp_sync_mss +EXPORT_SYMBOL_GPL net/dccp/dccp 0xc6be5f5c compat_dccp_getsockopt +EXPORT_SYMBOL_GPL net/dccp/dccp 0xd1f92660 dccp_rcv_established +EXPORT_SYMBOL_GPL net/dccp/dccp 0xd97eb59b dccp_setsockopt +EXPORT_SYMBOL_GPL net/dccp/dccp 0xda0f2c2f dccp_getsockopt +EXPORT_SYMBOL_GPL net/dccp/dccp 0xdbd29d5b dccp_check_req +EXPORT_SYMBOL_GPL net/dccp/dccp 0xdcd55466 dccp_close +EXPORT_SYMBOL_GPL net/dccp/dccp 0xe543fac9 dccp_reqsk_init +EXPORT_SYMBOL_GPL net/dccp/dccp 0xebf8cf38 dccp_feat_nn_get +EXPORT_SYMBOL_GPL net/dccp/dccp 0xf04b5ba9 dccp_destroy_sock +EXPORT_SYMBOL_GPL net/dccp/dccp 0xf0740758 dccp_parse_options +EXPORT_SYMBOL_GPL net/dccp/dccp_ipv4 0x128a3452 dccp_invalid_packet +EXPORT_SYMBOL_GPL net/dccp/dccp_ipv4 0x2a532bba dccp_v4_send_check +EXPORT_SYMBOL_GPL net/dccp/dccp_ipv4 0x416f7d8b dccp_v4_connect +EXPORT_SYMBOL_GPL net/dccp/dccp_ipv4 0x4c705555 dccp_v4_request_recv_sock +EXPORT_SYMBOL_GPL net/dccp/dccp_ipv4 0x8ced44a1 dccp_v4_conn_request +EXPORT_SYMBOL_GPL net/dccp/dccp_ipv4 0xa9ef6f83 dccp_v4_do_rcv +EXPORT_SYMBOL_GPL net/dsa/dsa_core 0x033a19d8 dsa_register_switch +EXPORT_SYMBOL_GPL net/dsa/dsa_core 0x4db9c9a8 dsa_devlink_params_register +EXPORT_SYMBOL_GPL net/dsa/dsa_core 0x4fcfcf1c dsa_devlink_resource_register +EXPORT_SYMBOL_GPL net/dsa/dsa_core 0x5c5bb8ee unregister_dsa_notifier +EXPORT_SYMBOL_GPL net/dsa/dsa_core 0x81625503 dsa_port_get_ethtool_phy_stats +EXPORT_SYMBOL_GPL net/dsa/dsa_core 0x98cc65a5 dsa_tag_drivers_unregister +EXPORT_SYMBOL_GPL net/dsa/dsa_core 0x995b78f6 dsa_devlink_param_get +EXPORT_SYMBOL_GPL net/dsa/dsa_core 0xa2e85eda dsa_dev_to_net_device +EXPORT_SYMBOL_GPL net/dsa/dsa_core 0xa9966e5d call_dsa_notifiers +EXPORT_SYMBOL_GPL net/dsa/dsa_core 0xb330c886 dsa_port_phylink_mac_change +EXPORT_SYMBOL_GPL net/dsa/dsa_core 0xb8048752 dsa_switch_suspend +EXPORT_SYMBOL_GPL net/dsa/dsa_core 0xb9c69a9a dsa_devlink_params_unregister +EXPORT_SYMBOL_GPL net/dsa/dsa_core 0xba903ec1 dsa_port_from_netdev +EXPORT_SYMBOL_GPL net/dsa/dsa_core 0xbdafa21c dsa_switch_find +EXPORT_SYMBOL_GPL net/dsa/dsa_core 0xc159dbd7 dsa_devlink_param_set +EXPORT_SYMBOL_GPL net/dsa/dsa_core 0xc4cac600 dsa_enqueue_skb +EXPORT_SYMBOL_GPL net/dsa/dsa_core 0xc8217dc8 dsa_devlink_resource_occ_get_register +EXPORT_SYMBOL_GPL net/dsa/dsa_core 0xcbd96639 dsa_devlink_resources_unregister +EXPORT_SYMBOL_GPL net/dsa/dsa_core 0xcec9a535 dsa_tag_drivers_register +EXPORT_SYMBOL_GPL net/dsa/dsa_core 0xe25f2e25 dsa_port_get_phy_sset_count +EXPORT_SYMBOL_GPL net/dsa/dsa_core 0xf429b9ee dsa_devlink_resource_occ_get_unregister +EXPORT_SYMBOL_GPL net/dsa/dsa_core 0xf86039e0 register_dsa_notifier +EXPORT_SYMBOL_GPL net/dsa/dsa_core 0xfd25e6a6 dsa_switch_resume +EXPORT_SYMBOL_GPL net/dsa/dsa_core 0xff38df33 dsa_port_get_phy_strings +EXPORT_SYMBOL_GPL net/dsa/dsa_core 0xffe99d4c dsa_unregister_switch +EXPORT_SYMBOL_GPL net/dsa/tag_8021q 0x0bdaf7de dsa_port_setup_8021q_tagging +EXPORT_SYMBOL_GPL net/dsa/tag_8021q 0x415e894e dsa_8021q_rx_subvlan +EXPORT_SYMBOL_GPL net/dsa/tag_8021q 0x417d1fed dsa_8021q_rx_switch_id +EXPORT_SYMBOL_GPL net/dsa/tag_8021q 0x4722ec8e dsa_8021q_tx_vid +EXPORT_SYMBOL_GPL net/dsa/tag_8021q 0x555700b3 dsa_8021q_xmit +EXPORT_SYMBOL_GPL net/dsa/tag_8021q 0x5802e3ef dsa_8021q_rx_vid +EXPORT_SYMBOL_GPL net/dsa/tag_8021q 0x78710754 dsa_8021q_rx_vid_subvlan +EXPORT_SYMBOL_GPL net/dsa/tag_8021q 0x9e47ee1d dsa_8021q_crosschip_bridge_leave +EXPORT_SYMBOL_GPL net/dsa/tag_8021q 0x9e59271d dsa_8021q_rx_source_port +EXPORT_SYMBOL_GPL net/dsa/tag_8021q 0xa474f7ab dsa_8021q_crosschip_bridge_join +EXPORT_SYMBOL_GPL net/dsa/tag_8021q 0xf13e1803 vid_is_dsa_8021q +EXPORT_SYMBOL_GPL net/ieee802154/ieee802154 0x71636f61 ieee802154_hdr_peek +EXPORT_SYMBOL_GPL net/ieee802154/ieee802154 0x7eaefddd ieee802154_hdr_peek_addrs +EXPORT_SYMBOL_GPL net/ieee802154/ieee802154 0x87e2553b ieee802154_max_payload +EXPORT_SYMBOL_GPL net/ieee802154/ieee802154 0x8e6ffe15 ieee802154_hdr_pull +EXPORT_SYMBOL_GPL net/ieee802154/ieee802154 0xa3f1fb69 ieee802154_hdr_push +EXPORT_SYMBOL_GPL net/ife/ife 0x25f0b162 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 0xddd4c48f ife_decode +EXPORT_SYMBOL_GPL net/ife/ife 0xe7888e98 ife_tlv_meta_encode +EXPORT_SYMBOL_GPL net/ipv4/esp4 0x0d6645b7 esp_input_done2 +EXPORT_SYMBOL_GPL net/ipv4/esp4 0x2e8a5ba3 esp_output_tail +EXPORT_SYMBOL_GPL net/ipv4/esp4 0xa286fcba esp_output_head +EXPORT_SYMBOL_GPL net/ipv4/gre 0x2846c7e5 gre_del_protocol +EXPORT_SYMBOL_GPL net/ipv4/gre 0x94c45f32 gre_add_protocol +EXPORT_SYMBOL_GPL net/ipv4/inet_diag 0x4320bffb inet_diag_msg_attrs_fill +EXPORT_SYMBOL_GPL net/ipv4/inet_diag 0x47ad2555 inet_diag_dump_one_icsk +EXPORT_SYMBOL_GPL net/ipv4/inet_diag 0x65e48ff8 inet_diag_find_one_icsk +EXPORT_SYMBOL_GPL net/ipv4/inet_diag 0x87bd3f52 inet_diag_bc_sk +EXPORT_SYMBOL_GPL net/ipv4/inet_diag 0x88a0c208 inet_diag_dump_icsk +EXPORT_SYMBOL_GPL net/ipv4/inet_diag 0x95f6bc4d inet_diag_msg_common_fill +EXPORT_SYMBOL_GPL net/ipv4/inet_diag 0x99c46771 inet_diag_register +EXPORT_SYMBOL_GPL net/ipv4/inet_diag 0xd2f28486 inet_diag_unregister +EXPORT_SYMBOL_GPL net/ipv4/inet_diag 0xef4c16f7 inet_sk_diag_fill +EXPORT_SYMBOL_GPL net/ipv4/ip_gre 0x4e751024 gretap_fb_dev_create +EXPORT_SYMBOL_GPL net/ipv4/netfilter/arp_tables 0x82bfe816 arpt_alloc_initial_table +EXPORT_SYMBOL_GPL net/ipv4/netfilter/ip_tables 0x7e8a5dad ipt_alloc_initial_table +EXPORT_SYMBOL_GPL net/ipv4/netfilter/nf_defrag_ipv4 0x2a9be9a6 nf_defrag_ipv4_enable +EXPORT_SYMBOL_GPL net/ipv4/netfilter/nf_dup_ipv4 0x3b0262d0 nf_dup_ipv4 +EXPORT_SYMBOL_GPL net/ipv4/netfilter/nf_reject_ipv4 0x1e627780 nf_send_unreach +EXPORT_SYMBOL_GPL net/ipv4/netfilter/nf_reject_ipv4 0x32ed5241 nf_reject_ip_tcphdr_put +EXPORT_SYMBOL_GPL net/ipv4/netfilter/nf_reject_ipv4 0x5870545f nf_reject_iphdr_put +EXPORT_SYMBOL_GPL net/ipv4/netfilter/nf_reject_ipv4 0xe55e0c58 nf_reject_ip_tcphdr_get +EXPORT_SYMBOL_GPL net/ipv4/netfilter/nf_reject_ipv4 0xfb352814 nf_send_reset +EXPORT_SYMBOL_GPL net/ipv4/netfilter/nf_socket_ipv4 0x9ee0442c nf_sk_lookup_slow_v4 +EXPORT_SYMBOL_GPL net/ipv4/netfilter/nf_tproxy_ipv4 0x05db640e nf_tproxy_get_sock_v4 +EXPORT_SYMBOL_GPL net/ipv4/netfilter/nf_tproxy_ipv4 0x7003f491 nf_tproxy_handle_time_wait4 +EXPORT_SYMBOL_GPL net/ipv4/netfilter/nf_tproxy_ipv4 0xfa5fd541 nf_tproxy_laddr4 +EXPORT_SYMBOL_GPL net/ipv4/netfilter/nft_fib_ipv4 0x30671075 nft_fib4_eval +EXPORT_SYMBOL_GPL net/ipv4/netfilter/nft_fib_ipv4 0xedbcd917 nft_fib4_eval_type +EXPORT_SYMBOL_GPL net/ipv4/tcp_vegas 0x23268a61 tcp_vegas_pkts_acked +EXPORT_SYMBOL_GPL net/ipv4/tcp_vegas 0x5aa8c483 tcp_vegas_cwnd_event +EXPORT_SYMBOL_GPL net/ipv4/tcp_vegas 0xa3817e17 tcp_vegas_init +EXPORT_SYMBOL_GPL net/ipv4/tcp_vegas 0xaaeef2e1 tcp_vegas_state +EXPORT_SYMBOL_GPL net/ipv4/tcp_vegas 0xdc1a3e01 tcp_vegas_get_info +EXPORT_SYMBOL_GPL net/ipv6/esp6 0xb54ee9fc esp6_output_head +EXPORT_SYMBOL_GPL net/ipv6/esp6 0xd37d43f6 esp6_output_tail +EXPORT_SYMBOL_GPL net/ipv6/esp6 0xe27d8b58 esp6_input_done2 +EXPORT_SYMBOL_GPL net/ipv6/ip6_tunnel 0x766a9499 ip6_tnl_rcv_ctl +EXPORT_SYMBOL_GPL net/ipv6/ip6_tunnel 0x8c9b620a ip6_tnl_xmit_ctl +EXPORT_SYMBOL_GPL net/ipv6/ip6_tunnel 0xe43d64b4 ip6_tnl_encap_setup +EXPORT_SYMBOL_GPL net/ipv6/netfilter/ip6_tables 0x7d07cd0a ip6t_alloc_initial_table +EXPORT_SYMBOL_GPL net/ipv6/netfilter/nf_defrag_ipv6 0x84b6e97d nf_ct_frag6_gather +EXPORT_SYMBOL_GPL net/ipv6/netfilter/nf_defrag_ipv6 0xcbb0264a nf_defrag_ipv6_enable +EXPORT_SYMBOL_GPL net/ipv6/netfilter/nf_dup_ipv6 0xeaceef4b nf_dup_ipv6 +EXPORT_SYMBOL_GPL net/ipv6/netfilter/nf_reject_ipv6 0x0a2461a2 nf_reject_ip6hdr_put +EXPORT_SYMBOL_GPL net/ipv6/netfilter/nf_reject_ipv6 0x103419f9 nf_reject_ip6_tcphdr_put +EXPORT_SYMBOL_GPL net/ipv6/netfilter/nf_reject_ipv6 0x1c8fa1fb nf_reject_ip6_tcphdr_get +EXPORT_SYMBOL_GPL net/ipv6/netfilter/nf_reject_ipv6 0x2f21bed9 nf_send_reset6 +EXPORT_SYMBOL_GPL net/ipv6/netfilter/nf_reject_ipv6 0x7b7c7b39 nf_send_unreach6 +EXPORT_SYMBOL_GPL net/ipv6/netfilter/nf_socket_ipv6 0x1987e545 nf_sk_lookup_slow_v6 +EXPORT_SYMBOL_GPL net/ipv6/netfilter/nf_tproxy_ipv6 0x00c1240b nf_tproxy_laddr6 +EXPORT_SYMBOL_GPL net/ipv6/netfilter/nf_tproxy_ipv6 0x6abe058a nf_tproxy_get_sock_v6 +EXPORT_SYMBOL_GPL net/ipv6/netfilter/nf_tproxy_ipv6 0x8e5c4c8a nf_tproxy_handle_time_wait6 +EXPORT_SYMBOL_GPL net/ipv6/netfilter/nft_fib_ipv6 0x0de55457 nft_fib6_eval +EXPORT_SYMBOL_GPL net/ipv6/netfilter/nft_fib_ipv6 0x8c067fd1 nft_fib6_eval_type +EXPORT_SYMBOL_GPL net/l2tp/l2tp_core 0x044b8fc9 l2tp_tunnel_get_nth +EXPORT_SYMBOL_GPL net/l2tp/l2tp_core 0x0837aa62 l2tp_session_get_nth +EXPORT_SYMBOL_GPL net/l2tp/l2tp_core 0x197d8943 l2tp_tunnel_create +EXPORT_SYMBOL_GPL net/l2tp/l2tp_core 0x305e3bb8 l2tp_tunnel_get +EXPORT_SYMBOL_GPL net/l2tp/l2tp_core 0x31d12831 l2tp_session_create +EXPORT_SYMBOL_GPL net/l2tp/l2tp_core 0x3c916968 l2tp_session_set_header_len +EXPORT_SYMBOL_GPL net/l2tp/l2tp_core 0x4f833ae4 l2tp_session_get +EXPORT_SYMBOL_GPL net/l2tp/l2tp_core 0x558b8459 __l2tp_session_unhash +EXPORT_SYMBOL_GPL net/l2tp/l2tp_core 0x6280b69a l2tp_session_get_by_ifname +EXPORT_SYMBOL_GPL net/l2tp/l2tp_core 0x767b3a8a l2tp_session_register +EXPORT_SYMBOL_GPL net/l2tp/l2tp_core 0xba92195d l2tp_xmit_skb +EXPORT_SYMBOL_GPL net/l2tp/l2tp_core 0xc20108ec l2tp_tunnel_register +EXPORT_SYMBOL_GPL net/l2tp/l2tp_core 0xcbd8fc7a l2tp_session_delete +EXPORT_SYMBOL_GPL net/l2tp/l2tp_core 0xd204c98b l2tp_tunnel_get_session +EXPORT_SYMBOL_GPL net/l2tp/l2tp_core 0xd67bdefa l2tp_session_free +EXPORT_SYMBOL_GPL net/l2tp/l2tp_core 0xe52ab82f l2tp_tunnel_delete +EXPORT_SYMBOL_GPL net/l2tp/l2tp_core 0xeb2a8378 l2tp_udp_encap_recv +EXPORT_SYMBOL_GPL net/l2tp/l2tp_netlink 0x337f2432 l2tp_nl_unregister_ops +EXPORT_SYMBOL_GPL net/l2tp/l2tp_netlink 0x873c8cc3 l2tp_nl_register_ops +EXPORT_SYMBOL_GPL net/mac80211/mac80211 0x1b4eced3 ieee80211_gtk_rekey_add +EXPORT_SYMBOL_GPL net/mac80211/mac80211 0x24b2fda5 ieee80211_ready_on_channel +EXPORT_SYMBOL_GPL net/mac80211/mac80211 0x2575a375 ieee80211_request_smps +EXPORT_SYMBOL_GPL net/mac80211/mac80211 0x2a21b915 ieee80211_update_mu_groups +EXPORT_SYMBOL_GPL net/mac80211/mac80211 0x5250cf98 ieee80211_tkip_add_iv +EXPORT_SYMBOL_GPL net/mac80211/mac80211 0x571db184 ieee80211_calc_rx_airtime +EXPORT_SYMBOL_GPL net/mac80211/mac80211 0x8bcabca0 ieee80211_gtk_rekey_notify +EXPORT_SYMBOL_GPL net/mac80211/mac80211 0x901b9424 ieee80211_iterate_interfaces +EXPORT_SYMBOL_GPL net/mac80211/mac80211 0x91076b00 ieee80211_iter_chan_contexts_atomic +EXPORT_SYMBOL_GPL net/mac80211/mac80211 0x98ceb04f ieee80211_resume_disconnect +EXPORT_SYMBOL_GPL net/mac80211/mac80211 0xa1247034 ieee80211_remove_key +EXPORT_SYMBOL_GPL net/mac80211/mac80211 0xa1cb7862 ieee80211_iterate_active_interfaces_atomic +EXPORT_SYMBOL_GPL net/mac80211/mac80211 0xb867ced6 ieee80211_iterate_active_interfaces_rtnl +EXPORT_SYMBOL_GPL net/mac80211/mac80211 0xb941f629 ieee80211_iterate_stations_atomic +EXPORT_SYMBOL_GPL net/mac80211/mac80211 0xc58ad4cd ieee80211_find_sta_by_ifaddr +EXPORT_SYMBOL_GPL net/mac80211/mac80211 0xc871978f ieee80211_calc_tx_airtime +EXPORT_SYMBOL_GPL net/mac80211/mac80211 0xcfe39902 ieee80211_vif_to_wdev +EXPORT_SYMBOL_GPL net/mac80211/mac80211 0xd7beb893 ieee80211_ave_rssi +EXPORT_SYMBOL_GPL net/mac80211/mac80211 0xd8e09da4 ieee80211_set_key_rx_seq +EXPORT_SYMBOL_GPL net/mac80211/mac80211 0xecd9de97 ieee80211_remain_on_channel_expired +EXPORT_SYMBOL_GPL net/mac80211/mac80211 0xf0cd4724 wdev_to_ieee80211_vif +EXPORT_SYMBOL_GPL net/mpls/mpls_router 0x88d100b1 mpls_pkt_too_big +EXPORT_SYMBOL_GPL net/mpls/mpls_router 0xce23940a mpls_dev_mtu +EXPORT_SYMBOL_GPL net/mpls/mpls_router 0xd0a606c5 nla_put_labels +EXPORT_SYMBOL_GPL net/mpls/mpls_router 0xe413b0a4 nla_get_labels +EXPORT_SYMBOL_GPL net/mpls/mpls_router 0xeff44074 mpls_output_possible +EXPORT_SYMBOL_GPL net/mpls/mpls_router 0xf826da9f mpls_stats_inc_outucastpkts +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0x0a5befcd ip_set_init_comment +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0x22d966c6 ip_set_range_to_cidr +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0x3412ee14 ip_set_put_extensions +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0x34721b8c ip_set_get_extensions +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0x397f6231 ip_set_free +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0x50d634b8 ip_set_get_ip4_port +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0x51b9c3c0 ip_set_del +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0x51cd6370 ip_set_type_register +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0x69b66eae ip_set_get_ip6_port +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0x7924b6de ip_set_hostmask_map +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0x7c3a539e ip_set_test +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0x7e2a663e ip_set_put_flags +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0x81fff2d1 ip_set_netmask_map +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0x8974acae ip_set_match_extensions +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0x977652fd ip_set_get_byname +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 0xa3829f39 ip_set_type_unregister +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0xa82b6274 ip_set_nfnl_put +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0xb72c619d ip_set_add +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0xbb7a70ce ip_set_put_byindex +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0xc884d3a7 ip_set_name_byindex +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0xdf9c20fa ip_set_extensions +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0xe17d2960 ip_set_nfnl_get_byindex +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0xf3b4d4ae ip_set_alloc +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0xfb2bc16d ip_set_elem_len +EXPORT_SYMBOL_GPL net/netfilter/ipvs/ip_vs 0x15112f3f ip_vs_conn_out_get_proto +EXPORT_SYMBOL_GPL net/netfilter/ipvs/ip_vs 0xe5c720ac ip_vs_conn_in_get_proto +EXPORT_SYMBOL_GPL net/netfilter/ipvs/ip_vs 0xf89a8f3a register_ip_vs_pe +EXPORT_SYMBOL_GPL net/netfilter/ipvs/ip_vs 0xf8fc76ff unregister_ip_vs_pe +EXPORT_SYMBOL_GPL net/netfilter/nf_conncount 0x38cc149e nf_conncount_init +EXPORT_SYMBOL_GPL net/netfilter/nf_conncount 0x3ff55ad3 nf_conncount_cache_free +EXPORT_SYMBOL_GPL net/netfilter/nf_conncount 0x4f3fb034 nf_conncount_add +EXPORT_SYMBOL_GPL net/netfilter/nf_conncount 0x8c4cb9c3 nf_conncount_list_init +EXPORT_SYMBOL_GPL net/netfilter/nf_conncount 0xb7195bb5 nf_conncount_gc_list +EXPORT_SYMBOL_GPL net/netfilter/nf_conncount 0xee02405f nf_conncount_count +EXPORT_SYMBOL_GPL net/netfilter/nf_conncount 0xf884f8f0 nf_conncount_destroy +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x00543a10 nf_ct_helper_expectfn_unregister +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x048e2599 nf_ct_helper_expectfn_register +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x072d7aaf nf_ct_get_tuplepr +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x09045919 nf_ct_expect_find_get +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x0977f3fd nf_ct_expect_iterate_net +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x0a4ba5ee nf_conntrack_free +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x0bc00f80 nf_nat_helper_try_module_get +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x114f2035 nf_conntrack_hash_check_insert +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x198ccfb3 nf_ct_bridge_unregister +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x1d6609cf nf_ct_seqadj_init +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x204ad990 nf_ct_helper_expectfn_find_by_name +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x2057f42b nf_ct_helper_log +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x215b9814 nf_conntrack_helper_put +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x25d385a8 nf_conntrack_eventmask_report +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x2706051e nf_ct_kill_acct +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x272d704a nf_ct_acct_add +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 0x2af26719 nf_conntrack_helpers_register +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x2bc604a0 nf_conntrack_alloc +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x325718b2 nf_ct_delete +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x3b6648a6 nf_ct_untimeout +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x40395713 nf_ct_destroy_timeout +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x42a79bb9 nf_ct_expect_alloc +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x42f0a7e2 nf_ct_expect_unregister_notifier +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x456fd77d nf_conntrack_helpers_unregister +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x50f594d3 nf_ct_deliver_cached_events +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x548ac595 nf_ct_expect_init +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x60665991 nf_ct_extend_register +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x66067012 nf_ct_expect_register_notifier +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x693c3961 nf_ct_helper_hash +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x6c930683 __nf_ct_refresh_acct +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x700754ae nf_connlabels_put +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x70687057 nf_ct_bridge_register +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x73942529 nf_ct_unlink_expect_report +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x7683b3c3 nf_l4proto_log_invalid +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x76c0993e nf_ct_remove_expect +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x76ca5ec2 nf_connlabels_get +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x7809ab0b nf_conntrack_helper_register +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x7a57ab3b nf_ct_seq_adjust +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x7b452ad2 nf_conntrack_unregister_notifier +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x7da80b2e nf_ct_port_nla_policy +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x7e3ce42b nf_ct_expect_put +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x7eb247e8 nf_conntrack_find_get +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x85348f57 nf_ct_timeout_find_get_hook +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x85a367fe __nf_ct_expect_find +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x87101d9e nf_ct_gre_keymap_destroy +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x88692826 nf_conntrack_tuple_taken +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x8c6814d1 nf_ct_tmpl_alloc +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x8d1036c3 __nf_conntrack_helper_find +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x8ffe7e89 nf_conntrack_htable_size +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x9052eecb nf_conntrack_helper_try_module_get +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x9461a42d nf_conntrack_in +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x94cd341a nf_ct_netns_get +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x953f77af nf_ct_netns_put +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x99dad1e6 nf_ct_l4proto_find +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x9adb7399 nf_conntrack_expect_lock +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x9be884ad nf_ct_gre_keymap_add +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x9d7893a0 nf_ct_expect_related_report +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x9eb6b9ad nf_ct_helper_expectfn_find_by_symbol +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xa722d39f nf_ct_tmpl_free +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xab558b1d nf_ct_extend_unregister +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xada2dd6e nf_ct_get_id +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xaf0847f0 nf_conntrack_locks +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xaf745658 nf_ct_seqadj_set +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xafbd6cf5 nf_ct_port_nlattr_to_tuple +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xb1c0390e nf_ct_iterate_cleanup_net +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xb67f1c65 nf_nat_helper_unregister +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xb7061044 nf_ct_helper_init +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xb82ab616 nf_ct_unexpect_related +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xb8ba2545 nf_conntrack_alter_reply +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xb93b877c nf_confirm +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xc18ac88d nf_ct_expect_hsize +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xc31e1f61 nf_ct_expect_iterate_destroy +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xc40f284c nf_ct_helper_hsize +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xc467e4a9 nf_ct_helper_ext_add +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xc6c617a1 nf_ct_seq_offset +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xcf655b6c nf_nat_helper_put +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xd505c3e0 nf_ct_port_nlattr_tuple_size +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xd5abd0f8 nf_ct_iterate_destroy +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xda20f588 nf_ct_remove_expectations +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xdb5b578b nf_connlabels_replace +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xdba7326b nf_conntrack_lock +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xdd14eabd nf_ct_l4proto_log_invalid +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xdf1ccd30 nf_nat_helper_register +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xe2d08a76 nf_ct_unconfirmed_destroy +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xe72d5932 nf_conntrack_register_notifier +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xeaf29331 nf_ct_set_timeout +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xec54466b nf_conntrack_helper_unregister +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xec8beba6 nf_ct_expect_hash +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xefcf24c9 nf_ct_tcp_seqadj_set +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xf03f05e6 __nf_conntrack_confirm +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xf0af1cb3 __nf_ct_try_assign_helper +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xf2c1d574 nf_ct_port_tuple_to_nlattr +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xf38bcdf3 nf_conntrack_max +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xf930e116 nf_ct_timeout_put_hook +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xfe731af8 nf_ct_invert_tuple +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_amanda 0x8effc2e3 nf_nat_amanda_hook +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_broadcast 0x346cc405 nf_conntrack_broadcast_help +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_ftp 0x0d9de47a nf_nat_ftp_hook +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_h323 0x0803d116 nat_callforwarding_hook +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_h323 0x13bd7fee nat_t120_hook +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_h323 0x4fb0d8c0 set_h225_addr_hook +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_h323 0x5eee0d7c set_sig_addr_hook +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_h323 0x62295f1a nat_rtp_rtcp_hook +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_h323 0x739ead1a nat_h245_hook +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_h323 0x80340f3f set_ras_addr_hook +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_h323 0x9562d1ba set_h245_addr_hook +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_h323 0xbff10660 get_h225_addr +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_h323 0xcb8e7dc3 nat_q931_hook +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_irc 0x97f7caa0 nf_nat_irc_hook +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_pptp 0x2c33b3f4 nf_nat_pptp_hook_exp_gre +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_pptp 0x812589d3 nf_nat_pptp_hook_outbound +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_pptp 0x97124908 nf_nat_pptp_hook_inbound +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_pptp 0xafb4083d nf_nat_pptp_hook_expectfn +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_sip 0x0c9e5d20 ct_sip_parse_header_uri +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_sip 0x10d7df89 ct_sip_get_header +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_sip 0x473b01f6 ct_sip_parse_request +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_sip 0x481b6148 ct_sip_parse_address_param +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_sip 0x49daa39c ct_sip_parse_numerical_param +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_sip 0x6b5600a8 ct_sip_get_sdp_header +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_sip 0xb1c710b4 nf_nat_sip_hooks +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_snmp 0xf528118f nf_nat_snmp_hook +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_tftp 0xf4bd6d24 nf_nat_tftp_hook +EXPORT_SYMBOL_GPL net/netfilter/nf_dup_netdev 0x67a5716b nf_fwd_netdev_egress +EXPORT_SYMBOL_GPL net/netfilter/nf_dup_netdev 0x8a8cc7ca nft_fwd_dup_netdev_offload +EXPORT_SYMBOL_GPL net/netfilter/nf_dup_netdev 0xfada8cba nf_dup_netdev_egress +EXPORT_SYMBOL_GPL net/netfilter/nf_flow_table 0x1f191fb8 flow_offload_free +EXPORT_SYMBOL_GPL net/netfilter/nf_flow_table 0x21e88268 flow_offload_route_init +EXPORT_SYMBOL_GPL net/netfilter/nf_flow_table 0x30736ff0 flow_offload_teardown +EXPORT_SYMBOL_GPL net/netfilter/nf_flow_table 0x34be4e37 nf_flow_table_offload_setup +EXPORT_SYMBOL_GPL net/netfilter/nf_flow_table 0x4b2ea282 flow_offload_refresh +EXPORT_SYMBOL_GPL net/netfilter/nf_flow_table 0x5336b1e2 nf_flow_dnat_port +EXPORT_SYMBOL_GPL net/netfilter/nf_flow_table 0x64060724 nf_flow_offload_ipv6_hook +EXPORT_SYMBOL_GPL net/netfilter/nf_flow_table 0x642a8749 flow_offload_add +EXPORT_SYMBOL_GPL net/netfilter/nf_flow_table 0x8a32b20a nf_flow_table_free +EXPORT_SYMBOL_GPL net/netfilter/nf_flow_table 0xa83ca25d flow_offload_lookup +EXPORT_SYMBOL_GPL net/netfilter/nf_flow_table 0xa8cfb504 nf_flow_offload_ip_hook +EXPORT_SYMBOL_GPL net/netfilter/nf_flow_table 0xb78b97cc nf_flow_table_init +EXPORT_SYMBOL_GPL net/netfilter/nf_flow_table 0xc811c11b flow_offload_alloc +EXPORT_SYMBOL_GPL net/netfilter/nf_flow_table 0xcef1b57d nf_flow_rule_route_ipv6 +EXPORT_SYMBOL_GPL net/netfilter/nf_flow_table 0xd0460974 nf_flow_rule_route_ipv4 +EXPORT_SYMBOL_GPL net/netfilter/nf_flow_table 0xdab82834 nf_flow_snat_port +EXPORT_SYMBOL_GPL net/netfilter/nf_flow_table 0xdcc713ac nf_flow_table_cleanup +EXPORT_SYMBOL_GPL net/netfilter/nf_log_common 0x1b3bef79 nf_log_dump_tcp_header +EXPORT_SYMBOL_GPL net/netfilter/nf_log_common 0x745727c6 nf_log_dump_udp_header +EXPORT_SYMBOL_GPL net/netfilter/nf_log_common 0x7af7ff59 nf_log_l2packet +EXPORT_SYMBOL_GPL net/netfilter/nf_log_common 0x8395a004 nf_log_dump_vlan +EXPORT_SYMBOL_GPL net/netfilter/nf_log_common 0x9473038e nf_log_dump_packet_common +EXPORT_SYMBOL_GPL net/netfilter/nf_log_common 0xb0d1ef68 nf_log_dump_sk_uid_gid +EXPORT_SYMBOL_GPL net/netfilter/nf_nat 0x0ef4f0f9 nf_nat_redirect_ipv4 +EXPORT_SYMBOL_GPL net/netfilter/nf_nat 0x14ef93eb nf_nat_redirect_ipv6 +EXPORT_SYMBOL_GPL net/netfilter/nf_nat 0x2af59639 nf_nat_masquerade_ipv4 +EXPORT_SYMBOL_GPL net/netfilter/nf_nat 0x31f868ba nf_nat_packet +EXPORT_SYMBOL_GPL net/netfilter/nf_nat 0x3bc17c49 nf_nat_masquerade_inet_register_notifiers +EXPORT_SYMBOL_GPL net/netfilter/nf_nat 0x3e0d2284 nf_nat_ipv6_unregister_fn +EXPORT_SYMBOL_GPL net/netfilter/nf_nat 0x530431d8 nf_nat_inet_fn +EXPORT_SYMBOL_GPL net/netfilter/nf_nat 0x6a79eab1 nf_nat_ipv4_register_fn +EXPORT_SYMBOL_GPL net/netfilter/nf_nat 0x6b18eae1 nf_nat_ipv6_register_fn +EXPORT_SYMBOL_GPL net/netfilter/nf_nat 0x84b67eb1 nf_nat_ipv4_unregister_fn +EXPORT_SYMBOL_GPL net/netfilter/nf_nat 0x8d7f8f9b nf_nat_alloc_null_binding +EXPORT_SYMBOL_GPL net/netfilter/nf_nat 0x960830a0 nf_ct_nat_ext_add +EXPORT_SYMBOL_GPL net/netfilter/nf_nat 0xb37a297b nf_nat_inet_register_fn +EXPORT_SYMBOL_GPL net/netfilter/nf_nat 0xb7ce0b7c nf_nat_inet_unregister_fn +EXPORT_SYMBOL_GPL net/netfilter/nf_nat 0xbe9c7fd0 nf_nat_icmpv6_reply_translation +EXPORT_SYMBOL_GPL net/netfilter/nf_nat 0xbf129688 nf_nat_masquerade_ipv6 +EXPORT_SYMBOL_GPL net/netfilter/nf_nat 0xd9c25654 nf_nat_masquerade_inet_unregister_notifiers +EXPORT_SYMBOL_GPL net/netfilter/nf_nat 0xf29b0d67 nf_nat_icmp_reply_translation +EXPORT_SYMBOL_GPL net/netfilter/nf_synproxy_core 0x1f099794 synproxy_init_timestamp_cookie +EXPORT_SYMBOL_GPL net/netfilter/nf_synproxy_core 0x2c6ff019 nf_synproxy_ipv6_init +EXPORT_SYMBOL_GPL net/netfilter/nf_synproxy_core 0x4d06a41f nf_synproxy_ipv4_fini +EXPORT_SYMBOL_GPL net/netfilter/nf_synproxy_core 0x5c9f8dbb synproxy_send_client_synack_ipv6 +EXPORT_SYMBOL_GPL net/netfilter/nf_synproxy_core 0x975b4768 synproxy_send_client_synack +EXPORT_SYMBOL_GPL net/netfilter/nf_synproxy_core 0xa844a4d5 synproxy_recv_client_ack +EXPORT_SYMBOL_GPL net/netfilter/nf_synproxy_core 0xac20f9ce nf_synproxy_ipv6_fini +EXPORT_SYMBOL_GPL net/netfilter/nf_synproxy_core 0xbaed8619 synproxy_parse_options +EXPORT_SYMBOL_GPL net/netfilter/nf_synproxy_core 0xbafa2aa2 ipv6_synproxy_hook +EXPORT_SYMBOL_GPL net/netfilter/nf_synproxy_core 0xca9fc082 synproxy_net_id +EXPORT_SYMBOL_GPL net/netfilter/nf_synproxy_core 0xcd49adc8 nf_synproxy_ipv4_init +EXPORT_SYMBOL_GPL net/netfilter/nf_synproxy_core 0xe1ac0b95 ipv4_synproxy_hook +EXPORT_SYMBOL_GPL net/netfilter/nf_synproxy_core 0xf569af52 synproxy_recv_client_ack_ipv6 +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0x04c26b4c nft_chain_validate_hooks +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0x07ace124 nft_register_flowtable_type +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0x0939fd5e nft_set_lookup_global +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0x16157c56 nft_validate_register_store +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0x1ca0d10e nft_obj_notify +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0x1cf23add nft_meta_set_dump +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0x1e6b75a3 nft_parse_register +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0x25beb798 nft_unregister_flowtable_type +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0x29539b23 nf_tables_deactivate_set +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0x3251d762 nf_tables_trans_destroy_flush_work +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0x41b71e65 nft_trace_enabled +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0x4228f150 nft_unregister_expr +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0x4e620ba6 nft_register_obj +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0x502eed3d nft_meta_policy +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0x5a973b5c nf_tables_destroy_set +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0x5c53a43c nft_flowtable_lookup +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0x62e27226 nft_dump_register +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0x6839e39f nft_do_chain +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0x69909356 nft_data_dump +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0x71ac0d98 nf_tables_bind_set +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0x74bee704 nft_meta_get_init +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0x7692821f nft_data_release +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0x85430a76 nft_validate_register_load +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0x86422702 nft_set_elem_destroy +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0x8bb9de54 nft_meta_get_dump +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0x9c364e88 nft_meta_set_validate +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0x9c551cf4 nft_unregister_chain_type +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0xa3a86dce __nft_release_basechain +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0xb78698f1 nft_meta_get_eval +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0xbe811175 nft_chain_validate_dependency +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0xc0f8de80 nft_unregister_obj +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0xc27ad514 nft_obj_lookup +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0xcf26a405 nft_meta_set_destroy +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0xd242ea1c nft_register_chain_type +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0xd39902fc nf_tables_deactivate_flowtable +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0xd4499738 nft_chain_validate +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0xd58ca7a6 nft_meta_set_init +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0xd72fbc1d nft_register_expr +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0xd8d0e8a4 nft_data_init +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0xde57b5f5 nft_parse_u32_check +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0xe8d7a1be nft_meta_set_eval +EXPORT_SYMBOL_GPL net/netfilter/nfnetlink 0x097e02a2 nfnetlink_set_err +EXPORT_SYMBOL_GPL net/netfilter/nfnetlink 0x5ce3b588 nfnl_lock +EXPORT_SYMBOL_GPL net/netfilter/nfnetlink 0x6d12ef7d nfnetlink_subsys_register +EXPORT_SYMBOL_GPL net/netfilter/nfnetlink 0x9071d988 nfnetlink_has_listeners +EXPORT_SYMBOL_GPL net/netfilter/nfnetlink 0xd124c67b nfnetlink_send +EXPORT_SYMBOL_GPL net/netfilter/nfnetlink 0xd6577a1d nfnetlink_unicast +EXPORT_SYMBOL_GPL net/netfilter/nfnetlink 0xdb065657 nfnl_unlock +EXPORT_SYMBOL_GPL net/netfilter/nfnetlink 0xfe4d9dd1 nfnetlink_subsys_unregister +EXPORT_SYMBOL_GPL net/netfilter/nfnetlink_acct 0xa59f4521 nfnl_acct_find_get +EXPORT_SYMBOL_GPL net/netfilter/nfnetlink_acct 0xa9be1438 nfnl_acct_update +EXPORT_SYMBOL_GPL net/netfilter/nfnetlink_acct 0xbecf5d14 nfnl_acct_put +EXPORT_SYMBOL_GPL net/netfilter/nfnetlink_acct 0xcedf228f nfnl_acct_overquota +EXPORT_SYMBOL_GPL net/netfilter/nfnetlink_osf 0x35eff5e0 nf_osf_fingers +EXPORT_SYMBOL_GPL net/netfilter/nfnetlink_osf 0x7775784f nf_osf_find +EXPORT_SYMBOL_GPL net/netfilter/nfnetlink_osf 0x9eb84cfc nf_osf_match +EXPORT_SYMBOL_GPL net/netfilter/nft_fib 0x52ba5f25 nft_fib_init +EXPORT_SYMBOL_GPL net/netfilter/nft_fib 0x65f2573b nft_fib_store_result +EXPORT_SYMBOL_GPL net/netfilter/nft_fib 0xa204f272 nft_fib_dump +EXPORT_SYMBOL_GPL net/netfilter/nft_fib 0xc8eee7c0 nft_fib_validate +EXPORT_SYMBOL_GPL net/netfilter/nft_reject 0x105b07e2 nft_reject_policy +EXPORT_SYMBOL_GPL net/netfilter/nft_reject 0x1cec7dc3 nft_reject_validate +EXPORT_SYMBOL_GPL net/netfilter/nft_reject 0x1de558c1 nft_reject_icmpv6_code +EXPORT_SYMBOL_GPL net/netfilter/nft_reject 0x694da2be nft_reject_init +EXPORT_SYMBOL_GPL net/netfilter/nft_reject 0xbb8f7500 nft_reject_dump +EXPORT_SYMBOL_GPL net/netfilter/nft_reject 0xe2c84666 nft_reject_icmp_code +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0x02160e71 xt_proto_fini +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0x04e27719 xt_compat_flush_offsets +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0x076876b3 xt_compat_target_offset +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0x0f29e472 xt_register_table +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0x24c8e482 xt_copy_counters_from_user +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0x2843f17f xt_compat_target_to_user +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0x34c3829c xt_request_find_target +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0x34fdfef7 xt_target_to_user +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0x39b6f1c3 xt_find_table_lock +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0x3a45b1e1 xt_compat_match_from_user +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0x3ba0915f xt_request_find_table_lock +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0x4945856f xt_check_match +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0x4f8a3990 xt_proto_init +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0x5826d27f xt_unregister_table +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0x68ae786a xt_table_unlock +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0x78459660 xt_check_target +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 0x818fc554 xt_compat_match_to_user +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0x823edea5 xt_compat_add_offset +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0x8d4605e2 xt_request_find_match +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0x978db24d xt_match_to_user +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0x9c995c69 xt_percpu_counter_alloc +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0xa7c94f1d xt_compat_lock +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0xad960d75 xt_replace_table +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0xbb1d9273 xt_hook_ops_alloc +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0xbfacb837 xt_percpu_counter_free +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0xc7fae024 xt_compat_calc_jump +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 0xee796969 xt_compat_target_from_user +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0xfceff575 xt_compat_match_offset +EXPORT_SYMBOL_GPL net/netfilter/xt_RATEEST 0x3afed12e xt_rateest_put +EXPORT_SYMBOL_GPL net/netfilter/xt_RATEEST 0x8f314ee5 xt_rateest_lookup +EXPORT_SYMBOL_GPL net/nfc/nci/nci_spi 0x62d863d1 nci_spi_allocate_spi +EXPORT_SYMBOL_GPL net/nfc/nci/nci_spi 0x9daa8ab9 nci_spi_send +EXPORT_SYMBOL_GPL net/nfc/nci/nci_spi 0xb780733e nci_spi_read +EXPORT_SYMBOL_GPL net/nfc/nci/nci_uart 0x63a8eb77 nci_uart_unregister +EXPORT_SYMBOL_GPL net/nfc/nci/nci_uart 0x9d14fdba nci_uart_register +EXPORT_SYMBOL_GPL net/nfc/nci/nci_uart 0xdf5cc32b nci_uart_set_config +EXPORT_SYMBOL_GPL net/nsh/nsh 0x2eea6afb nsh_pop +EXPORT_SYMBOL_GPL net/nsh/nsh 0x7f2ba5b8 nsh_push +EXPORT_SYMBOL_GPL net/openvswitch/openvswitch 0x2cd32ece ovs_netdev_tunnel_destroy +EXPORT_SYMBOL_GPL net/openvswitch/openvswitch 0x2dbc3fa8 ovs_netdev_link +EXPORT_SYMBOL_GPL net/openvswitch/openvswitch 0x45a7fb07 ovs_vport_alloc +EXPORT_SYMBOL_GPL net/openvswitch/openvswitch 0x7cfe907c ovs_vport_ops_unregister +EXPORT_SYMBOL_GPL net/openvswitch/openvswitch 0x97fc0e27 ovs_vport_free +EXPORT_SYMBOL_GPL net/openvswitch/openvswitch 0xba8bcfa9 __ovs_vport_ops_register +EXPORT_SYMBOL_GPL net/psample/psample 0x0469f261 psample_group_take +EXPORT_SYMBOL_GPL net/psample/psample 0x6e2be338 psample_sample_packet +EXPORT_SYMBOL_GPL net/psample/psample 0x8e5ac620 psample_group_get +EXPORT_SYMBOL_GPL net/psample/psample 0xd279c315 psample_group_put +EXPORT_SYMBOL_GPL net/qrtr/ns 0x636a2832 qrtr_ns_init +EXPORT_SYMBOL_GPL net/qrtr/ns 0x8d25501f qrtr_ns_remove +EXPORT_SYMBOL_GPL net/qrtr/qrtr 0x5f792615 qrtr_endpoint_register +EXPORT_SYMBOL_GPL net/qrtr/qrtr 0xaca43c26 qrtr_endpoint_post +EXPORT_SYMBOL_GPL net/qrtr/qrtr 0xb5e553c9 qrtr_endpoint_unregister +EXPORT_SYMBOL_GPL net/rds/rds 0x00a467af rds_wq +EXPORT_SYMBOL_GPL net/rds/rds 0x00aa5e1b rds_info_register_func +EXPORT_SYMBOL_GPL net/rds/rds 0x15ce9764 rds_message_put +EXPORT_SYMBOL_GPL net/rds/rds 0x2b0d543c rds_message_add_extension +EXPORT_SYMBOL_GPL net/rds/rds 0x2d356b4e rds_trans_register +EXPORT_SYMBOL_GPL net/rds/rds 0x36087aa4 rds_stats +EXPORT_SYMBOL_GPL net/rds/rds 0x37e86fcc rds_conn_create +EXPORT_SYMBOL_GPL net/rds/rds 0x3c50efcd rds_recv_incoming +EXPORT_SYMBOL_GPL net/rds/rds 0x45a4781e rds_addr_cmp +EXPORT_SYMBOL_GPL net/rds/rds 0x519e8d0a rds_send_drop_acked +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 0x64fbe3bb rds_conn_create_outgoing +EXPORT_SYMBOL_GPL net/rds/rds 0x6663b448 rds_message_addref +EXPORT_SYMBOL_GPL net/rds/rds 0x68609f24 rds_conn_drop +EXPORT_SYMBOL_GPL net/rds/rds 0x6fd9b1a5 rds_conn_path_connect_if_down +EXPORT_SYMBOL_GPL net/rds/rds 0x75e26415 rds_conn_destroy +EXPORT_SYMBOL_GPL net/rds/rds 0x7b399e66 rds_page_remainder_alloc +EXPORT_SYMBOL_GPL net/rds/rds 0x8458ae38 rds_send_path_drop_acked +EXPORT_SYMBOL_GPL net/rds/rds 0x85e4e520 rds_stats_info_copy +EXPORT_SYMBOL_GPL net/rds/rds 0x94bb4d68 rds_for_each_conn_info +EXPORT_SYMBOL_GPL net/rds/rds 0x996a726c rds_conn_path_drop +EXPORT_SYMBOL_GPL net/rds/rds 0x9f586a26 rds_connect_path_complete +EXPORT_SYMBOL_GPL net/rds/rds 0xaa3fc8dc rds_send_path_reset +EXPORT_SYMBOL_GPL net/rds/rds 0xab247b7e rds_send_ping +EXPORT_SYMBOL_GPL net/rds/rds 0xafd79f1c rds_atomic_send_complete +EXPORT_SYMBOL_GPL net/rds/rds 0xb5718d3b rds_inc_init +EXPORT_SYMBOL_GPL net/rds/rds 0xb9b84ef1 rds_send_xmit +EXPORT_SYMBOL_GPL net/rds/rds 0xc2dab779 rds_info_copy +EXPORT_SYMBOL_GPL net/rds/rds 0xc553a1e5 rds_info_deregister_func +EXPORT_SYMBOL_GPL net/rds/rds 0xc9db1943 rds_inc_path_init +EXPORT_SYMBOL_GPL net/rds/rds 0xd08f51b6 rds_connect_complete +EXPORT_SYMBOL_GPL net/rds/rds 0xd53691e5 rds_trans_unregister +EXPORT_SYMBOL_GPL net/rds/rds 0xdb95dab7 rds_conn_connect_if_down +EXPORT_SYMBOL_GPL net/rds/rds 0xef476817 rds_inc_put +EXPORT_SYMBOL_GPL net/rds/rds 0xef4a2e25 rds_message_unmapped +EXPORT_SYMBOL_GPL net/rds/rds 0xf142ddb3 rds_rdma_send_complete +EXPORT_SYMBOL_GPL net/rds/rds 0xfd22dd56 rds_cong_map_updated +EXPORT_SYMBOL_GPL net/sched/sch_pie 0x174fc74e pie_process_dequeue +EXPORT_SYMBOL_GPL net/sched/sch_pie 0x6ce9b467 pie_calculate_probability +EXPORT_SYMBOL_GPL net/sched/sch_pie 0x86f8d36b pie_drop_early +EXPORT_SYMBOL_GPL net/sched/sch_taprio 0x5fc3c6ed taprio_offload_free +EXPORT_SYMBOL_GPL net/sched/sch_taprio 0xa7f08102 taprio_offload_get +EXPORT_SYMBOL_GPL net/sctp/sctp 0x07818a8a sctp_transport_lookup_process +EXPORT_SYMBOL_GPL net/sctp/sctp 0x13b84143 sctp_get_sctp_info +EXPORT_SYMBOL_GPL net/sctp/sctp 0x512464fd sctp_for_each_endpoint +EXPORT_SYMBOL_GPL net/sctp/sctp 0xe8fce950 sctp_for_each_transport +EXPORT_SYMBOL_GPL net/smc/smc 0x0c9d2293 smcd_free_dev +EXPORT_SYMBOL_GPL net/smc/smc 0x34ec3966 smc_proto +EXPORT_SYMBOL_GPL net/smc/smc 0x3f73537d smcd_register_dev +EXPORT_SYMBOL_GPL net/smc/smc 0x4b003b22 smc_hash_sk +EXPORT_SYMBOL_GPL net/smc/smc 0x511152c6 smc_proto6 +EXPORT_SYMBOL_GPL net/smc/smc 0x56c7fc0f smc_unhash_sk +EXPORT_SYMBOL_GPL net/smc/smc 0x8b411728 smcd_alloc_dev +EXPORT_SYMBOL_GPL net/smc/smc 0xa026c261 smcd_handle_event +EXPORT_SYMBOL_GPL net/smc/smc 0xc7125eea smcd_unregister_dev +EXPORT_SYMBOL_GPL net/smc/smc 0xd87994eb smcd_handle_irq +EXPORT_SYMBOL_GPL net/sunrpc/auth_gss/auth_rpcgss 0x001cc140 svcauth_gss_flavor +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 0x66df518e svcauth_gss_register_pseudoflavor +EXPORT_SYMBOL_GPL net/sunrpc/auth_gss/auth_rpcgss 0xd74f7adf gss_mech_register +EXPORT_SYMBOL_GPL net/sunrpc/auth_gss/auth_rpcgss 0xd7673035 g_verify_token_header +EXPORT_SYMBOL_GPL net/sunrpc/auth_gss/auth_rpcgss 0xe0174aed gss_mech_unregister +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x0177ad3b rpc_destroy_pipe_data +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x05957424 xprt_unregister_transport +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x05d0d14b rpc_add_pipe_dir_object +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x05e807a9 xdr_encode_string +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x0633f448 svc_shutdown_net +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x065994f1 xdr_encode_opaque_fixed +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x09667522 xprt_disconnect_done +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x0f56e88b rpc_clnt_swap_activate +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x0ffd54f4 svc_xprt_names +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x1047f853 xdr_buf_subsegment +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x1090394f svc_xprt_copy_addrs +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x14905b2e rpcauth_unwrap_resp_decode +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x1675d52d xprt_alloc +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x177da678 cache_register_net +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x17fc0b7d sunrpc_init_cache_detail +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x19b235e0 rpc_prepare_reply_pages +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x1baf8ab0 rpc_call_async +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x1d614dec auth_domain_find +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x1d6a334e rpc_delay +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x1debaf56 svc_prepare_thread +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x1e119a79 rpcauth_get_pseudoflavor +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x1f2a9970 rpc_ntop +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x1fb72d57 svc_generic_rpcbind_set +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x204f574d rpc_localaddr +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x2099e719 auth_domain_put +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x2121b712 rpc_call_null +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x22bea220 rpc_free +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x234e2562 rpc_pipe_generic_upcall +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x235ba23d xdr_enter_page +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x23b98542 rpc_sleep_on_priority +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x24079486 rpcauth_unregister +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x24645b19 rpcauth_create +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x28aec631 rpc_clone_client +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x2919b156 xdr_decode_string_inplace +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x2b45fd30 svc_wake_up +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x2b8c7da4 svc_fill_symlink_pathname +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x2ba13237 xdr_commit_encode +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x2df1f9d3 svc_set_client +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x2ea6411a rpc_switch_client_transport +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x2f0c5aaf unix_domain_find +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x304a70c3 rpcauth_destroy_credcache +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x31a89d59 rpc_debug +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x31c286a8 svc_authenticate +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x34a842a9 rpc_proc_register +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x34d184de rpc_wake_up_status +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x34fae33a svc_encode_read_payload +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x35886628 sunrpc_cache_pipe_upcall_timeout +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x360009ee rpc_put_task_async +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x36da25ee rpc_shutdown_client +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x36f5220e xprt_release_rqst_cong +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x373c2676 rpc_max_payload +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x3816576c rpc_wake_up_first +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x3850e8e4 xdr_stream_decode_opaque_dup +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x387274ba xprt_request_get_cong +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x387e1639 rpc_pipefs_notifier_register +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x397c9400 rpc_clnt_xprt_switch_has_addr +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x3b877cdc xdr_reserve_space +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x3c87711d rpc_run_task +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x3f9a2b0b rpcauth_get_gssinfo +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x416cab92 svc_create +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x42d406a5 rpc_init_pipe_dir_object +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x438f3025 csum_partial_copy_to_xdr +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x443d6a60 sunrpc_destroy_cache_detail +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x4501b081 xdr_stream_decode_string_dup +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x453efa54 svc_pool_map +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x45f17807 svc_create_xprt +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x4684e092 xprt_pin_rqst +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x47ccf8f1 xprt_free +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x482502b3 xprt_release_xprt_cong +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x48661846 xdr_shift_buf +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x487017a5 xdr_init_decode_pages +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x4aecf825 svc_print_addr +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x4af10b82 rpc_task_release_transport +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x4afedab1 xprtiod_workqueue +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x4ca56139 xprt_reserve_xprt +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x4d806fb7 rpc_clnt_test_and_add_xprt +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x4da50b86 cache_seq_start_rcu +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x4dac77f0 xdr_encode_netobj +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x4debd5e5 svc_auth_register +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x4e88a155 xdr_read_pages +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x4e8e86f9 rpcauth_init_credcache +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x4e8f6ca7 sunrpc_net_id +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x4ea40a53 svc_bind +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x4f532879 rpc_task_timeout +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x4f7579c9 rpc_release_client +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x50e756fe svc_max_payload +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x513900f0 xdr_inline_decode +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x529521d0 rpc_pton +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x53445f68 nlm_debug +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x5399bce4 sunrpc_cache_pipe_upcall +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x539e5468 svc_create_pooled +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x54348727 svc_set_num_threads +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x5516e1bc rpc_create +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x5696b5c8 xprt_write_space +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x588153d0 put_rpccred +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x58a5ce8d xdr_buf_from_iov +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x5a45ba31 svc_auth_unregister +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x5cb80a00 svc_xprt_init +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x5f2d99b6 xdr_process_buf +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x6027ccc9 rpcauth_lookupcred +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x60cee8fd xprt_get +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x60f0e28b rpc_mkpipe_dentry +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x63287f6f auth_domain_lookup +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x66ed2439 rpc_destroy_wait_queue +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x69e4bc1c rpc_malloc +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x6a0b9182 rpc_init_pipe_dir_head +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x6b1c37b4 rpc_exit +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x6ca52736 rpc_count_iostats +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x6f2517bf xprt_force_disconnect +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x6f9eae33 svc_rqst_alloc +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x705d1dd5 xprt_reserve_xprt_cong +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x710b652b svc_seq_show +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 0x73211294 svc_fill_write_vector +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x74bebbbe svc_age_temp_xprts_now +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x75894d7e rpc_force_rebind +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x79c3771e rpc_set_connect_timeout +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x7bbba627 rpc_count_iostats_metrics +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x7c8e1ea8 cache_destroy_net +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x7ca66dcf rpc_clnt_setup_test_and_add_xprt +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x7cf99909 svcauth_unix_purge +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x7dcba72e svc_reg_xprt_class +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x7de53067 rpc_init_rtt +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x7e74cae1 write_bytes_to_xdr_buf +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x7fd73cfc svc_xprt_enqueue +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x804f7763 svc_xprt_do_enqueue +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x810d5aa8 svc_set_num_threads_sync +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x813637f3 svcauth_unix_set_client +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x81ad91e8 svc_sock_update_bufs +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x83b99f31 xprt_adjust_cwnd +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x84301237 rpc_sleep_on_timeout +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x844bf0eb xprt_unpin_rqst +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x852cb44e _copy_from_pages +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x872e9323 svc_proc_unregister +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x87a8d350 rpcauth_wrap_req_encode +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x884f49a8 xdr_write_pages +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x8884b24a xdr_decode_word +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x88a8b698 xdr_encode_array2 +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x8adcc02d rpc_max_bc_payload +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x8cb5ef0c rpc_call_sync +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x8d7bddb7 xprt_reconnect_delay +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x8e684db6 rpc_clnt_iterate_for_each_xprt +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x8f68f0e1 rpc_peeraddr +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x8f728b81 xprt_reconnect_backoff +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x8fc4de7e svc_find_xprt +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x8fed5a44 cache_unregister_net +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x913af4d6 xprt_wake_pending_tasks +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x93cc79ab rpc_bind_new_program +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x95122ab3 rpc_unlink +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x9572ed8f xprt_register_transport +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x9670b5a1 rpc_free_iostats +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x97616ce6 svc_addsock +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x99aee353 rpc_init_priority_wait_queue +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x9af38d32 rpc_find_or_alloc_pipe_dir_object +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x9bc2a060 sunrpc_cache_update +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x9ceb684a rpc_put_sb_net +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x9d35ea50 xprt_wait_for_reply_request_def +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x9d995d18 rpc_call_start +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x9eb9e27f xdr_terminate_string +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x9f446dd1 svc_process +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x9f9efedd rpc_clnt_xprt_switch_put +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x9fd5d23a sunrpc_cache_register_pipefs +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xa13acdb8 svc_pool_map_put +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xa31871dc xdr_stream_pos +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xa33ee743 rpc_setbufsize +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xa3a16d43 __rpc_wait_for_completion_task +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xa4f76da6 svc_generic_init_request +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xa6db2766 rpc_clone_client_set_auth +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xaa3e17e1 xprt_setup_backchannel +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xaa64c24a rpc_num_bc_slots +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xadcb2239 rpcauth_init_cred +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xaf478040 xdr_set_scratch_buffer +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xaf5bf6ef nfs_debug +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xb03402f3 xprt_complete_rqst +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xb12a8be1 rpc_wake_up_queued_task +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xb1d4324c cache_create_net +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xb2618008 rpc_wake_up_next +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xb2e47b25 rpc_sleep_on_priority_timeout +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xb312d0c4 svc_pool_map_get +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xb427e3f5 svc_proc_register +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xb51a3724 rpc_pipefs_notifier_unregister +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xb59d8feb xprt_alloc_slot +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xb6cb34e2 svc_rpcb_setup +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xb77b69fd xprt_put +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xb8e0ed15 xprt_wait_for_buffer_space +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xb8fcbbbb svc_close_xprt +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xb95e3ae5 rpc_net_ns +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xbb63d524 xdr_stream_decode_opaque +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xbbba7d0e xdr_init_encode +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xbf347b48 gssd_running +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xbf8fe91b svc_return_autherr +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xbf9d1b96 nfsd_debug +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xc12435e3 rpc_calc_rto +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xc1e5e678 rpc_peeraddr2str +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xc24e8898 svc_xprt_put +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xc27b72d2 rpc_killall_tasks +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xc2d0369d rpc_restart_call_prepare +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xc69701d3 svc_alien_sock +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xc6f6d2eb cache_seq_stop_rcu +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xc75381e6 svc_exit_thread +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xc82449f8 cache_seq_next_rcu +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xc8e96dea qword_addhex +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xcb45dcdc svc_reserve +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xce678a59 xdr_decode_netobj +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xcee467f3 xprt_load_transport +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xd1832fcc svc_destroy +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xd1dcae23 rpc_clnt_add_xprt +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xd3b703a3 xprt_lookup_rqst +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xd3ff5649 cache_purge +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xd4b81127 xdr_stream_decode_string +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xd5e2938e xdr_buf_trim +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xd66d9c66 rpc_d_lookup_sb +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xd7aafeda rpc_clnt_show_stats +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xd8088af2 xdr_inline_pages +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xd875e013 rpc_proc_unregister +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xd882aed8 bc_svc_process +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xd990c24e rpc_remove_pipe_dir_object +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xdb48657f read_bytes_from_xdr_buf +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xdbdde339 rpcb_getport_async +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xdc160ad6 rpc_put_task +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xdfc6b362 rpc_clnt_xprt_switch_add_xprt +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xe02480d1 rpc_uaddr2sockaddr +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xe201bc7b rpc_alloc_iostats +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xe5919cb1 xdr_encode_opaque +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xe59c0a94 svc_recv +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xe68e6912 rpc_restart_call +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xe6d7aafc rpc_clnt_swap_deactivate +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xe7dde4d5 rpcauth_lookup_credcache +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xe97f4ce5 qword_get +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xea7d8129 rpc_get_sb_net +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xeb47ad04 svc_rqst_free +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xed3a1eea xprt_wait_for_reply_request_rtt +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xedcf6be4 qword_add +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xee1a5767 sunrpc_cache_unhash +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xeeacab69 rpc_update_rtt +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xeff73838 svc_rpcb_cleanup +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xf0b7775d rpc_init_wait_queue +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xf26ce131 xdr_encode_word +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xf2e6a630 svc_drop +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xf320e25b xprt_destroy_backchannel +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xf32a04cd xprt_release_xprt +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xf47b5c88 sunrpc_cache_lookup_rcu +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xf50f5802 rpc_mkpipe_data +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xf677e9c9 rpcauth_stringify_acceptor +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xf69f4d06 xdr_init_decode +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xf71ea815 xdr_decode_array2 +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xf86c8d94 xprt_update_rtt +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xfaa70bc0 rpc_machine_cred +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xfad31df9 cache_check +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xfb589b28 sunrpc_cache_unregister_pipefs +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xfb623b17 rpc_sleep_on +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xfc230991 svc_unreg_xprt_class +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xfcf2085b rpc_queue_upcall +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xfd7e6396 rpcauth_register +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xfe53dded svc_rpcbind_set_version +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xfec07012 xprt_free_slot +EXPORT_SYMBOL_GPL net/tls/tls 0x5511197f tls_offload_tx_resync_request +EXPORT_SYMBOL_GPL net/tls/tls 0x80ac674e tls_validate_xmit_skb +EXPORT_SYMBOL_GPL net/tls/tls 0xdd71102b tls_device_sk_destruct +EXPORT_SYMBOL_GPL net/tls/tls 0xe4118c7d tls_encrypt_skb +EXPORT_SYMBOL_GPL net/vmw_vsock/vmw_vsock_virtio_transport_common 0x023d5afe virtio_transport_dgram_bind +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 0x0a173a9e virtio_transport_stream_is_active +EXPORT_SYMBOL_GPL net/vmw_vsock/vmw_vsock_virtio_transport_common 0x0eb33ade virtio_transport_notify_recv_pre_block +EXPORT_SYMBOL_GPL net/vmw_vsock/vmw_vsock_virtio_transport_common 0x0f004720 virtio_transport_stream_has_data +EXPORT_SYMBOL_GPL net/vmw_vsock/vmw_vsock_virtio_transport_common 0x118d4cb6 virtio_transport_notify_send_pre_block +EXPORT_SYMBOL_GPL net/vmw_vsock/vmw_vsock_virtio_transport_common 0x369de177 virtio_transport_notify_recv_init +EXPORT_SYMBOL_GPL net/vmw_vsock/vmw_vsock_virtio_transport_common 0x3a0ef68f virtio_transport_notify_recv_pre_dequeue +EXPORT_SYMBOL_GPL net/vmw_vsock/vmw_vsock_virtio_transport_common 0x3a537872 virtio_transport_stream_rcvhiwat +EXPORT_SYMBOL_GPL net/vmw_vsock/vmw_vsock_virtio_transport_common 0x4dad2915 virtio_transport_notify_send_pre_enqueue +EXPORT_SYMBOL_GPL net/vmw_vsock/vmw_vsock_virtio_transport_common 0x57296e6d virtio_transport_dgram_dequeue +EXPORT_SYMBOL_GPL net/vmw_vsock/vmw_vsock_virtio_transport_common 0x65cdf7a5 virtio_transport_notify_send_init +EXPORT_SYMBOL_GPL net/vmw_vsock/vmw_vsock_virtio_transport_common 0x7184f026 virtio_transport_notify_buffer_size +EXPORT_SYMBOL_GPL net/vmw_vsock/vmw_vsock_virtio_transport_common 0x732a4709 virtio_transport_get_credit +EXPORT_SYMBOL_GPL net/vmw_vsock/vmw_vsock_virtio_transport_common 0x772791fc virtio_transport_notify_poll_out +EXPORT_SYMBOL_GPL net/vmw_vsock/vmw_vsock_virtio_transport_common 0x78d56ea4 virtio_transport_dgram_enqueue +EXPORT_SYMBOL_GPL net/vmw_vsock/vmw_vsock_virtio_transport_common 0x7dcc4fc4 virtio_transport_inc_tx_pkt +EXPORT_SYMBOL_GPL net/vmw_vsock/vmw_vsock_virtio_transport_common 0x7eff4aca virtio_transport_notify_recv_post_dequeue +EXPORT_SYMBOL_GPL net/vmw_vsock/vmw_vsock_virtio_transport_common 0xabb15bf5 virtio_transport_stream_dequeue +EXPORT_SYMBOL_GPL net/vmw_vsock/vmw_vsock_virtio_transport_common 0xabca5654 virtio_transport_recv_pkt +EXPORT_SYMBOL_GPL net/vmw_vsock/vmw_vsock_virtio_transport_common 0xb286796f virtio_transport_deliver_tap_pkt +EXPORT_SYMBOL_GPL net/vmw_vsock/vmw_vsock_virtio_transport_common 0xb702edf4 virtio_transport_destruct +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 0xbad53170 virtio_transport_notify_poll_in +EXPORT_SYMBOL_GPL net/vmw_vsock/vmw_vsock_virtio_transport_common 0xbbc89885 virtio_transport_free_pkt +EXPORT_SYMBOL_GPL net/vmw_vsock/vmw_vsock_virtio_transport_common 0xbedf9507 virtio_transport_shutdown +EXPORT_SYMBOL_GPL net/vmw_vsock/vmw_vsock_virtio_transport_common 0xc22815fc virtio_transport_put_credit +EXPORT_SYMBOL_GPL net/vmw_vsock/vmw_vsock_virtio_transport_common 0xceb4d7b3 virtio_transport_connect +EXPORT_SYMBOL_GPL net/vmw_vsock/vmw_vsock_virtio_transport_common 0xd81f0e22 virtio_transport_release +EXPORT_SYMBOL_GPL net/vmw_vsock/vmw_vsock_virtio_transport_common 0xefff0374 virtio_transport_notify_send_post_enqueue +EXPORT_SYMBOL_GPL net/vmw_vsock/vmw_vsock_virtio_transport_common 0xf4dc72c8 virtio_transport_do_socket_init +EXPORT_SYMBOL_GPL net/vmw_vsock/vmw_vsock_virtio_transport_common 0xf622f5d4 virtio_transport_stream_enqueue +EXPORT_SYMBOL_GPL net/vmw_vsock/vmw_vsock_virtio_transport_common 0xf6ccb076 virtio_transport_stream_has_space +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0x0c71ab45 vsock_find_connected_socket +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0x1543d563 vsock_remove_connected +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0x25c2d376 vsock_core_register +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0x2663cb64 vsock_addr_equals_addr +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0x284e07d8 vsock_bind_table +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0x2f2201ce vsock_stream_has_space +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0x51b2f984 vsock_insert_connected +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0x59d943c8 vsock_addr_cast +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0x6a3bff04 vsock_find_bound_socket +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0x6f2de6a1 vsock_remove_sock +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0x73879664 vsock_addr_init +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0x751ff010 vsock_addr_unbind +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0x76625bfe vsock_core_unregister +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0x841ad4c8 vsock_remove_pending +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0x87a4a675 vsock_stream_has_data +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0x90aa8549 vsock_find_cid +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0x9bb6fd09 vsock_connected_table +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0x9f1125df vsock_add_pending +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0xaf0daef8 vsock_create_connected +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0xb08b6ef8 vsock_core_get_transport +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0xb4291bc3 vsock_deliver_tap +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0xbd0f699d vsock_addr_bound +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0xc0456a3b vsock_add_tap +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0xc92f7f50 vsock_table_lock +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0xd95ac116 vsock_addr_validate +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0xe7f27cfc vsock_assign_transport +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0xf0b062de vsock_enqueue_accept +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0xf5836fa2 vsock_remove_bound +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0xfbc4cfc4 vsock_remove_tap +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0xfdf7198f vsock_for_each_connected_socket +EXPORT_SYMBOL_GPL net/wireless/cfg80211 0x400b6fc0 cfg80211_vendor_cmd_reply +EXPORT_SYMBOL_GPL net/wireless/cfg80211 0x80725c27 cfg80211_pmsr_complete +EXPORT_SYMBOL_GPL net/wireless/cfg80211 0xad33a448 cfg80211_pmsr_report +EXPORT_SYMBOL_GPL net/wireless/cfg80211 0xb3c8ae92 cfg80211_shutdown_all_interfaces +EXPORT_SYMBOL_GPL net/wireless/cfg80211 0xf3dd9f3a cfg80211_vendor_cmd_get_sender +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 0x105a26c8 ipcomp_output +EXPORT_SYMBOL_GPL net/xfrm/xfrm_ipcomp 0x248efc8e ipcomp_input +EXPORT_SYMBOL_GPL net/xfrm/xfrm_ipcomp 0x381e7fc9 ipcomp_destroy +EXPORT_SYMBOL_GPL net/xfrm/xfrm_ipcomp 0xe819bc19 ipcomp_init_state +EXPORT_SYMBOL_GPL vmlinux 0x000005b0 usb_get_urb +EXPORT_SYMBOL_GPL vmlinux 0x00091b10 dma_buf_detach +EXPORT_SYMBOL_GPL vmlinux 0x001b074f mce_is_correctable +EXPORT_SYMBOL_GPL vmlinux 0x003084d9 edac_pci_alloc_ctl_info +EXPORT_SYMBOL_GPL vmlinux 0x004062fe bus_find_device +EXPORT_SYMBOL_GPL vmlinux 0x00513f58 get_timespec64 +EXPORT_SYMBOL_GPL vmlinux 0x00565f18 pernet_ops_rwsem +EXPORT_SYMBOL_GPL vmlinux 0x005a51b9 crypto_alloc_base +EXPORT_SYMBOL_GPL vmlinux 0x006454be gpiod_get_array +EXPORT_SYMBOL_GPL vmlinux 0x007cbe8d __blkg_prfill_u64 +EXPORT_SYMBOL_GPL vmlinux 0x0084f637 vfs_setlease +EXPORT_SYMBOL_GPL vmlinux 0x008539f0 klp_shadow_alloc +EXPORT_SYMBOL_GPL vmlinux 0x008d3a4e regulator_set_soft_start_regmap +EXPORT_SYMBOL_GPL vmlinux 0x00a969d1 xfrm_dev_offload_ok +EXPORT_SYMBOL_GPL vmlinux 0x00b81e77 wm831x_set_bits +EXPORT_SYMBOL_GPL vmlinux 0x00b9ae05 mmu_interval_notifier_remove +EXPORT_SYMBOL_GPL vmlinux 0x00d92291 pm_generic_runtime_resume +EXPORT_SYMBOL_GPL vmlinux 0x00df9837 ioasid_register_allocator +EXPORT_SYMBOL_GPL vmlinux 0x00ea1a2d bpf_trace_run9 +EXPORT_SYMBOL_GPL vmlinux 0x00f16672 input_ff_upload +EXPORT_SYMBOL_GPL vmlinux 0x0110d1af fwnode_property_read_u64_array +EXPORT_SYMBOL_GPL vmlinux 0x01199d04 perf_pmu_migrate_context +EXPORT_SYMBOL_GPL vmlinux 0x0119a1df sysfs_rename_link_ns +EXPORT_SYMBOL_GPL vmlinux 0x01254e5a tcp_register_congestion_control +EXPORT_SYMBOL_GPL vmlinux 0x012570a0 __devm_alloc_percpu +EXPORT_SYMBOL_GPL vmlinux 0x012db589 thermal_zone_device_unregister +EXPORT_SYMBOL_GPL vmlinux 0x012e730e apei_exec_noop +EXPORT_SYMBOL_GPL vmlinux 0x01305f78 usb_hcd_amd_remote_wakeup_quirk +EXPORT_SYMBOL_GPL vmlinux 0x0131b712 is_transparent_hugepage +EXPORT_SYMBOL_GPL vmlinux 0x0134e2ef uhci_reset_hc +EXPORT_SYMBOL_GPL vmlinux 0x014e6051 cpufreq_enable_fast_switch +EXPORT_SYMBOL_GPL vmlinux 0x015fd5f0 __tracepoint_pelt_irq_tp +EXPORT_SYMBOL_GPL vmlinux 0x0183f196 wm8997_aod +EXPORT_SYMBOL_GPL vmlinux 0x01848a8e local_apic_timer_c2_ok +EXPORT_SYMBOL_GPL vmlinux 0x01866a57 ezx_pcap_set_bits +EXPORT_SYMBOL_GPL vmlinux 0x018b3d1e intel_pt_validate_cap +EXPORT_SYMBOL_GPL vmlinux 0x0190d0dd phy_speed_up +EXPORT_SYMBOL_GPL vmlinux 0x019454a6 elv_rqhash_del +EXPORT_SYMBOL_GPL vmlinux 0x01a0cb78 property_entries_free +EXPORT_SYMBOL_GPL vmlinux 0x01a736c7 __page_file_mapping +EXPORT_SYMBOL_GPL vmlinux 0x01b10fca ftrace_ops_set_global_filter +EXPORT_SYMBOL_GPL vmlinux 0x01ba9a16 device_get_child_node_count +EXPORT_SYMBOL_GPL vmlinux 0x01c12c32 cpu_bit_bitmap +EXPORT_SYMBOL_GPL vmlinux 0x01c18a4d clk_register +EXPORT_SYMBOL_GPL vmlinux 0x01c90dba con_debug_enter +EXPORT_SYMBOL_GPL vmlinux 0x01e01f92 reset_controller_register +EXPORT_SYMBOL_GPL vmlinux 0x01e1a8de kgdb_breakpoint +EXPORT_SYMBOL_GPL vmlinux 0x01ee5532 smp_call_function_any +EXPORT_SYMBOL_GPL vmlinux 0x01fe27e6 dev_pm_opp_find_level_exact +EXPORT_SYMBOL_GPL vmlinux 0x02100211 ip6_sk_update_pmtu +EXPORT_SYMBOL_GPL vmlinux 0x02195855 strp_data_ready +EXPORT_SYMBOL_GPL vmlinux 0x02232dfa skcipher_walk_aead_decrypt +EXPORT_SYMBOL_GPL vmlinux 0x02394899 play_idle_precise +EXPORT_SYMBOL_GPL vmlinux 0x02427aca ipv6_opt_accepted +EXPORT_SYMBOL_GPL vmlinux 0x0245e828 crypto_register_kpp +EXPORT_SYMBOL_GPL vmlinux 0x024d13dd request_free_mem_region +EXPORT_SYMBOL_GPL vmlinux 0x0267ed39 efivars_register +EXPORT_SYMBOL_GPL vmlinux 0x026968e1 perf_trace_run_bpf_submit +EXPORT_SYMBOL_GPL vmlinux 0x0276d1e6 virtio_config_disable +EXPORT_SYMBOL_GPL vmlinux 0x0281d62e proc_get_parent_data +EXPORT_SYMBOL_GPL vmlinux 0x0283f8fc nvme_init_identify +EXPORT_SYMBOL_GPL vmlinux 0x02924f75 dw_pcie_find_capability +EXPORT_SYMBOL_GPL vmlinux 0x02bb3095 pci_assign_unassigned_bus_resources +EXPORT_SYMBOL_GPL vmlinux 0x02d9bcaf ata_std_qc_defer +EXPORT_SYMBOL_GPL vmlinux 0x02ec420f kobject_init_and_add +EXPORT_SYMBOL_GPL vmlinux 0x0305b275 wbt_disable_default +EXPORT_SYMBOL_GPL vmlinux 0x030d2a1d to_nd_blk_region +EXPORT_SYMBOL_GPL vmlinux 0x0312b3b0 reset_controller_add_lookup +EXPORT_SYMBOL_GPL vmlinux 0x031791e5 platform_driver_unregister +EXPORT_SYMBOL_GPL vmlinux 0x0323cb9d __devm_create_dev_dax +EXPORT_SYMBOL_GPL vmlinux 0x03372453 force_irqthreads +EXPORT_SYMBOL_GPL vmlinux 0x033832c7 usb_amd_hang_symptom_quirk +EXPORT_SYMBOL_GPL vmlinux 0x0343bdf1 __i2c_board_list +EXPORT_SYMBOL_GPL vmlinux 0x034be37b bpf_prog_inc_not_zero +EXPORT_SYMBOL_GPL vmlinux 0x034e8caf rio_mport_write_config_8 +EXPORT_SYMBOL_GPL vmlinux 0x036bd7b2 ata_dev_set_feature +EXPORT_SYMBOL_GPL vmlinux 0x036de383 perf_event_cgrp_subsys_enabled_key +EXPORT_SYMBOL_GPL vmlinux 0x03952887 ktime_add_safe +EXPORT_SYMBOL_GPL vmlinux 0x03acd48e devfreq_event_reset_event +EXPORT_SYMBOL_GPL vmlinux 0x03be67bf securityfs_create_file +EXPORT_SYMBOL_GPL vmlinux 0x03c12dfe cancel_work_sync +EXPORT_SYMBOL_GPL vmlinux 0x03c64a51 scsi_mode_select +EXPORT_SYMBOL_GPL vmlinux 0x03cae201 rio_request_mport_dma +EXPORT_SYMBOL_GPL vmlinux 0x03ce7234 sched_smt_present +EXPORT_SYMBOL_GPL vmlinux 0x03cf812e __pci_hp_initialize +EXPORT_SYMBOL_GPL vmlinux 0x03dab64f regmap_reinit_cache +EXPORT_SYMBOL_GPL vmlinux 0x03ecbbd0 sata_scr_valid +EXPORT_SYMBOL_GPL vmlinux 0x03fc439a netdev_walk_all_lower_dev +EXPORT_SYMBOL_GPL vmlinux 0x0400a652 mbox_chan_txdone +EXPORT_SYMBOL_GPL vmlinux 0x0402cbbf preempt_notifier_inc +EXPORT_SYMBOL_GPL vmlinux 0x0419e175 vbin_printf +EXPORT_SYMBOL_GPL vmlinux 0x041c8e07 fuse_kill_sb_anon +EXPORT_SYMBOL_GPL vmlinux 0x0423ed9e pci_ioremap_bar +EXPORT_SYMBOL_GPL vmlinux 0x0452e07a vfs_lock_file +EXPORT_SYMBOL_GPL vmlinux 0x0465a073 regmap_reg_in_ranges +EXPORT_SYMBOL_GPL vmlinux 0x0466bc30 clk_mux_determine_rate_flags +EXPORT_SYMBOL_GPL vmlinux 0x04742ba4 __percpu_init_rwsem +EXPORT_SYMBOL_GPL vmlinux 0x048ae9d3 dma_run_dependencies +EXPORT_SYMBOL_GPL vmlinux 0x049709a8 relay_flush +EXPORT_SYMBOL_GPL vmlinux 0x049929c0 hv_stimer_free +EXPORT_SYMBOL_GPL vmlinux 0x049f631a device_create_bin_file +EXPORT_SYMBOL_GPL vmlinux 0x04bf0092 io_cgrp_subsys_enabled_key +EXPORT_SYMBOL_GPL vmlinux 0x04c4f603 mpi_get_buffer +EXPORT_SYMBOL_GPL vmlinux 0x04d1562e irq_domain_reset_irq_data +EXPORT_SYMBOL_GPL vmlinux 0x04d69382 spi_mem_driver_unregister +EXPORT_SYMBOL_GPL vmlinux 0x04df8fbc lzo1x_decompress_safe +EXPORT_SYMBOL_GPL vmlinux 0x04f6f3b4 fib_alias_hw_flags_set +EXPORT_SYMBOL_GPL vmlinux 0x04f97b3b fib_nl_newrule +EXPORT_SYMBOL_GPL vmlinux 0x050b1eea iommu_sva_bind_device +EXPORT_SYMBOL_GPL vmlinux 0x05280ea0 devlink_traps_register +EXPORT_SYMBOL_GPL vmlinux 0x052c9aed ktime_get_real_fast_ns +EXPORT_SYMBOL_GPL vmlinux 0x052e4333 rio_enable_rx_tx_port +EXPORT_SYMBOL_GPL vmlinux 0x05427549 usb_store_new_id +EXPORT_SYMBOL_GPL vmlinux 0x054a8ea9 ata_sff_queue_pio_task +EXPORT_SYMBOL_GPL vmlinux 0x054e550b kernel_halt +EXPORT_SYMBOL_GPL vmlinux 0x0552fd88 usb_autopm_get_interface_async +EXPORT_SYMBOL_GPL vmlinux 0x05558474 nvmem_cell_get +EXPORT_SYMBOL_GPL vmlinux 0x0558ca26 acpi_is_pnp_device +EXPORT_SYMBOL_GPL vmlinux 0x05681604 usb_reset_endpoint +EXPORT_SYMBOL_GPL vmlinux 0x056a9bae pci_add_dynid +EXPORT_SYMBOL_GPL vmlinux 0x05880bd0 __module_address +EXPORT_SYMBOL_GPL vmlinux 0x058b582a vt_get_leds +EXPORT_SYMBOL_GPL vmlinux 0x058f9366 apei_exec_collect_resources +EXPORT_SYMBOL_GPL vmlinux 0x05a12780 fat_setattr +EXPORT_SYMBOL_GPL vmlinux 0x05a3f311 __pm_runtime_suspend +EXPORT_SYMBOL_GPL vmlinux 0x05a5856b __tracepoint_neigh_cleanup_and_release +EXPORT_SYMBOL_GPL vmlinux 0x05b1de5f cpufreq_frequency_table_get_index +EXPORT_SYMBOL_GPL vmlinux 0x05c0e519 gpiochip_line_is_persistent +EXPORT_SYMBOL_GPL vmlinux 0x05dfb6d6 dev_pm_qos_update_user_latency_tolerance +EXPORT_SYMBOL_GPL vmlinux 0x05e2ba24 wm5102_i2c_regmap +EXPORT_SYMBOL_GPL vmlinux 0x0608fb03 skb_scrub_packet +EXPORT_SYMBOL_GPL vmlinux 0x06209f49 phy_lookup_setting +EXPORT_SYMBOL_GPL vmlinux 0x06250506 devres_release +EXPORT_SYMBOL_GPL vmlinux 0x0625cdd3 sysfs_file_change_owner +EXPORT_SYMBOL_GPL vmlinux 0x0626da5f od_unregister_powersave_bias_handler +EXPORT_SYMBOL_GPL vmlinux 0x064db9a5 mark_mounts_for_expiry +EXPORT_SYMBOL_GPL vmlinux 0x064e562c thermal_of_cooling_device_register +EXPORT_SYMBOL_GPL vmlinux 0x0650ba14 rio_route_add_entry +EXPORT_SYMBOL_GPL vmlinux 0x066ac6a5 __bdev_dax_supported +EXPORT_SYMBOL_GPL vmlinux 0x067bf538 inet_ehash_nolisten +EXPORT_SYMBOL_GPL vmlinux 0x067f7d07 nvdimm_has_flush +EXPORT_SYMBOL_GPL vmlinux 0x06ae311d devlink_dpipe_table_counter_enabled +EXPORT_SYMBOL_GPL vmlinux 0x06aff973 kgdb_register_io_module +EXPORT_SYMBOL_GPL vmlinux 0x06b23bce dma_buf_move_notify +EXPORT_SYMBOL_GPL vmlinux 0x06bd29ab tpm_pcr_extend +EXPORT_SYMBOL_GPL vmlinux 0x06cb312c iommu_device_register +EXPORT_SYMBOL_GPL vmlinux 0x06cca30b ring_buffer_record_off +EXPORT_SYMBOL_GPL vmlinux 0x06d1fdb2 device_create_file +EXPORT_SYMBOL_GPL vmlinux 0x06d305c2 devm_gpiod_get_array +EXPORT_SYMBOL_GPL vmlinux 0x06eb98ca attribute_container_find_class_device +EXPORT_SYMBOL_GPL vmlinux 0x06fe1e2a crypto_comp_compress +EXPORT_SYMBOL_GPL vmlinux 0x0707019a context_tracking +EXPORT_SYMBOL_GPL vmlinux 0x07136647 irq_chip_set_affinity_parent +EXPORT_SYMBOL_GPL vmlinux 0x071b21d8 fwnode_property_match_string +EXPORT_SYMBOL_GPL vmlinux 0x07229dba sata_link_scr_lpm +EXPORT_SYMBOL_GPL vmlinux 0x0722ee07 __pm_runtime_resume +EXPORT_SYMBOL_GPL vmlinux 0x07242d92 put_dax +EXPORT_SYMBOL_GPL vmlinux 0x0728d3c2 do_xdp_generic +EXPORT_SYMBOL_GPL vmlinux 0x07420d62 wbc_detach_inode +EXPORT_SYMBOL_GPL vmlinux 0x0744cef0 rio_release_inb_dbell +EXPORT_SYMBOL_GPL vmlinux 0x074f98db synth_event_add_field +EXPORT_SYMBOL_GPL vmlinux 0x075aeaa9 sched_trace_cfs_rq_path +EXPORT_SYMBOL_GPL vmlinux 0x075c5e71 fat_free_clusters +EXPORT_SYMBOL_GPL vmlinux 0x076356e7 sfp_may_have_phy +EXPORT_SYMBOL_GPL vmlinux 0x07646cee ata_tf_to_fis +EXPORT_SYMBOL_GPL vmlinux 0x076b4937 pm_generic_restore_early +EXPORT_SYMBOL_GPL vmlinux 0x078ce056 pci_cfg_access_lock +EXPORT_SYMBOL_GPL vmlinux 0x078f2e3c set_online_page_callback +EXPORT_SYMBOL_GPL vmlinux 0x079dfba0 bpf_trace_run12 +EXPORT_SYMBOL_GPL vmlinux 0x07a6f459 regmap_mmio_attach_clk +EXPORT_SYMBOL_GPL vmlinux 0x07a89d21 srcu_notifier_call_chain +EXPORT_SYMBOL_GPL vmlinux 0x07aad9b0 __rtnl_link_register +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 0x07be6905 net_inc_egress_queue +EXPORT_SYMBOL_GPL vmlinux 0x07bf29cd get_cached_msi_msg +EXPORT_SYMBOL_GPL vmlinux 0x07c23703 hrtimer_try_to_cancel +EXPORT_SYMBOL_GPL vmlinux 0x07c375ed skb_complete_wifi_ack +EXPORT_SYMBOL_GPL vmlinux 0x07ce5501 crypto_rng_reset +EXPORT_SYMBOL_GPL vmlinux 0x07d367bf devm_device_add_group +EXPORT_SYMBOL_GPL vmlinux 0x07d58276 pinconf_generic_dump_config +EXPORT_SYMBOL_GPL vmlinux 0x07edeba7 hv_free_hyperv_page +EXPORT_SYMBOL_GPL vmlinux 0x07f6f507 devlink_port_param_value_changed +EXPORT_SYMBOL_GPL vmlinux 0x080822ff blkcg_root +EXPORT_SYMBOL_GPL vmlinux 0x08135613 dax_write_cache +EXPORT_SYMBOL_GPL vmlinux 0x08213960 blk_queue_flag_test_and_set +EXPORT_SYMBOL_GPL vmlinux 0x0828d609 mc146818_get_time +EXPORT_SYMBOL_GPL vmlinux 0x0831de25 switchdev_handle_port_obj_del +EXPORT_SYMBOL_GPL vmlinux 0x084494b4 nvme_cancel_request +EXPORT_SYMBOL_GPL vmlinux 0x087f5dc5 wm831x_of_match +EXPORT_SYMBOL_GPL vmlinux 0x08800469 wb_writeout_inc +EXPORT_SYMBOL_GPL vmlinux 0x08933034 thp_get_unmapped_area +EXPORT_SYMBOL_GPL vmlinux 0x08938f21 wakeup_sources_walk_start +EXPORT_SYMBOL_GPL vmlinux 0x0894b45a gpiochip_unlock_as_irq +EXPORT_SYMBOL_GPL vmlinux 0x0899bd6c devm_mbox_controller_unregister +EXPORT_SYMBOL_GPL vmlinux 0x08d3bf02 trace_vprintk +EXPORT_SYMBOL_GPL vmlinux 0x08d70d99 debugfs_create_x32 +EXPORT_SYMBOL_GPL vmlinux 0x08d91e92 usb_hcd_check_unlink_urb +EXPORT_SYMBOL_GPL vmlinux 0x08e7e5fd irq_domain_create_hierarchy +EXPORT_SYMBOL_GPL vmlinux 0x08ea9856 irq_chip_disable_parent +EXPORT_SYMBOL_GPL vmlinux 0x0907d14d blocking_notifier_chain_register +EXPORT_SYMBOL_GPL vmlinux 0x090ca113 crypto_alloc_rng +EXPORT_SYMBOL_GPL vmlinux 0x091eb9b4 round_jiffies +EXPORT_SYMBOL_GPL vmlinux 0x0925493f clear_page_orig +EXPORT_SYMBOL_GPL vmlinux 0x092b95df pcie_aspm_enabled +EXPORT_SYMBOL_GPL vmlinux 0x09337cd0 __wake_up_locked_key +EXPORT_SYMBOL_GPL vmlinux 0x093786cf synth_event_add_field_str +EXPORT_SYMBOL_GPL vmlinux 0x0941c951 pm_genpd_remove_device +EXPORT_SYMBOL_GPL vmlinux 0x094e77cd is_software_node +EXPORT_SYMBOL_GPL vmlinux 0x0955cd8b bpf_prog_get_type_dev +EXPORT_SYMBOL_GPL vmlinux 0x096151b2 usb_bulk_msg +EXPORT_SYMBOL_GPL vmlinux 0x0969eddd uart_try_toggle_sysrq +EXPORT_SYMBOL_GPL vmlinux 0x096a7e6f x86_spec_ctrl_base +EXPORT_SYMBOL_GPL vmlinux 0x096b2418 __tracepoint_tcp_send_reset +EXPORT_SYMBOL_GPL vmlinux 0x097cff6a transport_remove_device +EXPORT_SYMBOL_GPL vmlinux 0x097ddc04 context_tracking_exit +EXPORT_SYMBOL_GPL vmlinux 0x0984dd3c sata_sff_hardreset +EXPORT_SYMBOL_GPL vmlinux 0x09b53e14 interval_tree_remove +EXPORT_SYMBOL_GPL vmlinux 0x09c4a525 dma_get_any_slave_channel +EXPORT_SYMBOL_GPL vmlinux 0x09c85b35 ata_scsi_unlock_native_capacity +EXPORT_SYMBOL_GPL vmlinux 0x09d63265 list_lru_count_node +EXPORT_SYMBOL_GPL vmlinux 0x09e3c1b1 virtqueue_disable_cb +EXPORT_SYMBOL_GPL vmlinux 0x09e519b6 devm_power_supply_register_no_ws +EXPORT_SYMBOL_GPL vmlinux 0x09e7ec8c __ata_ehi_push_desc +EXPORT_SYMBOL_GPL vmlinux 0x09ed8fe8 phy_power_off +EXPORT_SYMBOL_GPL vmlinux 0x09f06d5b pci_set_host_bridge_release +EXPORT_SYMBOL_GPL vmlinux 0x0a0c9d45 inet_peer_base_init +EXPORT_SYMBOL_GPL vmlinux 0x0a13cf57 ping_init_sock +EXPORT_SYMBOL_GPL vmlinux 0x0a247dc3 usb_hcd_pci_remove +EXPORT_SYMBOL_GPL vmlinux 0x0a2dabfa dst_cache_get_ip4 +EXPORT_SYMBOL_GPL vmlinux 0x0a3e3cbd blk_steal_bios +EXPORT_SYMBOL_GPL vmlinux 0x0a426d76 blk_mq_debugfs_rq_show +EXPORT_SYMBOL_GPL vmlinux 0x0a434412 dw_pcie_host_deinit +EXPORT_SYMBOL_GPL vmlinux 0x0a502c98 dmar_platform_optin +EXPORT_SYMBOL_GPL vmlinux 0x0a6c4041 cn_netlink_send +EXPORT_SYMBOL_GPL vmlinux 0x0a6ce1cc sfp_select_interface +EXPORT_SYMBOL_GPL vmlinux 0x0a6d0b19 udp4_hwcsum +EXPORT_SYMBOL_GPL vmlinux 0x0a705e0d hwspin_lock_request +EXPORT_SYMBOL_GPL vmlinux 0x0a78cf08 pinctrl_force_default +EXPORT_SYMBOL_GPL vmlinux 0x0a7b591a trace_array_get_by_name +EXPORT_SYMBOL_GPL vmlinux 0x0ad137d3 lpit_read_residency_count_address +EXPORT_SYMBOL_GPL vmlinux 0x0af40724 iommu_alloc_resv_region +EXPORT_SYMBOL_GPL vmlinux 0x0af8170f dev_pm_opp_put_clkname +EXPORT_SYMBOL_GPL vmlinux 0x0b03a2a1 __regmap_init_mmio_clk +EXPORT_SYMBOL_GPL vmlinux 0x0b07abe2 unshare_fs_struct +EXPORT_SYMBOL_GPL vmlinux 0x0b1bb9f9 synchronize_rcu_tasks +EXPORT_SYMBOL_GPL vmlinux 0x0b2db2d5 remove_resource +EXPORT_SYMBOL_GPL vmlinux 0x0b40e560 uart_console_device +EXPORT_SYMBOL_GPL vmlinux 0x0b4af568 nvme_setup_cmd +EXPORT_SYMBOL_GPL vmlinux 0x0b52e502 apei_resources_add +EXPORT_SYMBOL_GPL vmlinux 0x0b5b82f2 regulator_list_voltage_linear_range +EXPORT_SYMBOL_GPL vmlinux 0x0b86a51d get_net_ns +EXPORT_SYMBOL_GPL vmlinux 0x0b914a6a nf_nat_hook +EXPORT_SYMBOL_GPL vmlinux 0x0b95fe19 gpiochip_add_pingroup_range +EXPORT_SYMBOL_GPL vmlinux 0x0b9d44b4 tcp_slow_start +EXPORT_SYMBOL_GPL vmlinux 0x0ba9cb88 device_for_each_child_reverse +EXPORT_SYMBOL_GPL vmlinux 0x0bb521cb subsys_dev_iter_exit +EXPORT_SYMBOL_GPL vmlinux 0x0bba9b5f node_to_amd_nb +EXPORT_SYMBOL_GPL vmlinux 0x0bbdb435 crypto_ahash_walk_first +EXPORT_SYMBOL_GPL vmlinux 0x0bc01093 led_set_brightness_nopm +EXPORT_SYMBOL_GPL vmlinux 0x0bc20b69 usb_hcd_is_primary_hcd +EXPORT_SYMBOL_GPL vmlinux 0x0be1a4d8 amd_unregister_ecc_decoder +EXPORT_SYMBOL_GPL vmlinux 0x0c0597ad sched_trace_rq_avg_irq +EXPORT_SYMBOL_GPL vmlinux 0x0c0690e4 mbox_controller_unregister +EXPORT_SYMBOL_GPL vmlinux 0x0c0cb3a2 gpiochip_irqchip_add_key +EXPORT_SYMBOL_GPL vmlinux 0x0c10071d event_triggers_post_call +EXPORT_SYMBOL_GPL vmlinux 0x0c29d99a subsys_find_device_by_id +EXPORT_SYMBOL_GPL vmlinux 0x0c2c5802 work_busy +EXPORT_SYMBOL_GPL vmlinux 0x0c2f5238 power_supply_changed +EXPORT_SYMBOL_GPL vmlinux 0x0c32ff8a edac_pci_alloc_index +EXPORT_SYMBOL_GPL vmlinux 0x0c5dee46 crypto_register_scomp +EXPORT_SYMBOL_GPL vmlinux 0x0c7df46d dma_get_slave_caps +EXPORT_SYMBOL_GPL vmlinux 0x0c805f93 clflush_cache_range +EXPORT_SYMBOL_GPL vmlinux 0x0c87b963 dev_pm_opp_set_sharing_cpus +EXPORT_SYMBOL_GPL vmlinux 0x0c987a94 irq_set_default_host +EXPORT_SYMBOL_GPL vmlinux 0x0cb579c0 __free_iova +EXPORT_SYMBOL_GPL vmlinux 0x0cbe3ee2 software_node_unregister +EXPORT_SYMBOL_GPL vmlinux 0x0cc3b29e acpi_dev_filter_resource_type +EXPORT_SYMBOL_GPL vmlinux 0x0ce96bc7 rio_add_net +EXPORT_SYMBOL_GPL vmlinux 0x0ceee1ff pci_find_next_ext_capability +EXPORT_SYMBOL_GPL vmlinux 0x0d116ad0 __sbitmap_queue_get +EXPORT_SYMBOL_GPL vmlinux 0x0d38ce59 gov_attr_set_init +EXPORT_SYMBOL_GPL vmlinux 0x0d3dc3a4 virtqueue_enable_cb_prepare +EXPORT_SYMBOL_GPL vmlinux 0x0d4039f5 raw_seq_stop +EXPORT_SYMBOL_GPL vmlinux 0x0d459213 work_on_cpu_safe +EXPORT_SYMBOL_GPL vmlinux 0x0d4961de nf_log_buf_open +EXPORT_SYMBOL_GPL vmlinux 0x0d5ec7e0 fwnode_get_phy_mode +EXPORT_SYMBOL_GPL vmlinux 0x0d71def5 ima_file_hash +EXPORT_SYMBOL_GPL vmlinux 0x0d738472 component_add_typed +EXPORT_SYMBOL_GPL vmlinux 0x0d880d23 mbox_client_peek_data +EXPORT_SYMBOL_GPL vmlinux 0x0d9d3371 gpiochip_generic_free +EXPORT_SYMBOL_GPL vmlinux 0x0d9d8fdf debugfs_real_fops +EXPORT_SYMBOL_GPL vmlinux 0x0db46ffe usb_hcd_pci_shutdown +EXPORT_SYMBOL_GPL vmlinux 0x0dc02661 sysfs_remove_files +EXPORT_SYMBOL_GPL vmlinux 0x0dc373ab wm5110_aod +EXPORT_SYMBOL_GPL vmlinux 0x0dcb3ee8 divider_recalc_rate +EXPORT_SYMBOL_GPL vmlinux 0x0dd39cfc spi_register_controller +EXPORT_SYMBOL_GPL vmlinux 0x0dd65241 net_ns_type_operations +EXPORT_SYMBOL_GPL vmlinux 0x0dd81ce9 regmap_get_val_bytes +EXPORT_SYMBOL_GPL vmlinux 0x0ddb1cd7 llist_reverse_order +EXPORT_SYMBOL_GPL vmlinux 0x0ddb27e9 devm_reset_control_array_get +EXPORT_SYMBOL_GPL vmlinux 0x0ddfc54f ata_sff_wait_ready +EXPORT_SYMBOL_GPL vmlinux 0x0ddfcff6 cpci_hp_unregister_controller +EXPORT_SYMBOL_GPL vmlinux 0x0de82a7c tcp_ca_get_key_by_name +EXPORT_SYMBOL_GPL vmlinux 0x0decf45e pci_bus_resource_n +EXPORT_SYMBOL_GPL vmlinux 0x0dfe4eda efivar_entry_set +EXPORT_SYMBOL_GPL vmlinux 0x0e13cb4d apei_resources_release +EXPORT_SYMBOL_GPL vmlinux 0x0e17d069 vmbus_sendpacket_mpb_desc +EXPORT_SYMBOL_GPL vmlinux 0x0e3933af regulator_set_current_limit_regmap +EXPORT_SYMBOL_GPL vmlinux 0x0e53a283 pm_runtime_no_callbacks +EXPORT_SYMBOL_GPL vmlinux 0x0e6282d9 ata_sas_tport_delete +EXPORT_SYMBOL_GPL vmlinux 0x0e6b79af static_key_disable_cpuslocked +EXPORT_SYMBOL_GPL vmlinux 0x0e6cfb48 usb_string +EXPORT_SYMBOL_GPL vmlinux 0x0e6fa4c1 pinctrl_add_gpio_range +EXPORT_SYMBOL_GPL vmlinux 0x0e7bc610 perf_pmu_unregister +EXPORT_SYMBOL_GPL vmlinux 0x0e8dbe2b edac_device_add_device +EXPORT_SYMBOL_GPL vmlinux 0x0e9e17a3 crypto_drop_spawn +EXPORT_SYMBOL_GPL vmlinux 0x0ea4b99c ata_bmdma_port_start32 +EXPORT_SYMBOL_GPL vmlinux 0x0eb0bbf9 kmsg_dump_get_buffer +EXPORT_SYMBOL_GPL vmlinux 0x0ec096b0 hv_read_reference_counter +EXPORT_SYMBOL_GPL vmlinux 0x0ed2d635 acpi_gpiochip_request_interrupts +EXPORT_SYMBOL_GPL vmlinux 0x0edfba00 cgroup_rstat_updated +EXPORT_SYMBOL_GPL vmlinux 0x0ef9b264 pci_find_ht_capability +EXPORT_SYMBOL_GPL vmlinux 0x0efadf49 vfs_write +EXPORT_SYMBOL_GPL vmlinux 0x0f002603 class_destroy +EXPORT_SYMBOL_GPL vmlinux 0x0f0b21fe pm_trace_rtc_abused +EXPORT_SYMBOL_GPL vmlinux 0x0f0fff18 regmap_update_bits_base +EXPORT_SYMBOL_GPL vmlinux 0x0f11d4a3 md_find_rdev_rcu +EXPORT_SYMBOL_GPL vmlinux 0x0f180070 ring_buffer_free_read_page +EXPORT_SYMBOL_GPL vmlinux 0x0f19551b usb_enable_intel_xhci_ports +EXPORT_SYMBOL_GPL vmlinux 0x0f2345ae device_store_bool +EXPORT_SYMBOL_GPL vmlinux 0x0f257daf __udp_gso_segment +EXPORT_SYMBOL_GPL vmlinux 0x0f2bbf71 serial8250_request_dma +EXPORT_SYMBOL_GPL vmlinux 0x0f2d7d87 mce_unregister_decode_chain +EXPORT_SYMBOL_GPL vmlinux 0x0f49b34b usb_sg_init +EXPORT_SYMBOL_GPL vmlinux 0x0f526078 usb_register_dev +EXPORT_SYMBOL_GPL vmlinux 0x0f64d67b bpf_map_inc_not_zero +EXPORT_SYMBOL_GPL vmlinux 0x0f7ca236 dmi_memdev_name +EXPORT_SYMBOL_GPL vmlinux 0x0f7ddb9f usb_submit_urb +EXPORT_SYMBOL_GPL vmlinux 0x0f934c79 inet_csk_listen_start +EXPORT_SYMBOL_GPL vmlinux 0x0f99c1d9 nvdimm_provider_data +EXPORT_SYMBOL_GPL vmlinux 0x0fa316de skb_zerocopy_iter_dgram +EXPORT_SYMBOL_GPL vmlinux 0x0fb0ef7a vfio_del_group_dev +EXPORT_SYMBOL_GPL vmlinux 0x0fb23024 regcache_sync_region +EXPORT_SYMBOL_GPL vmlinux 0x0fb3f325 vmbus_allocate_mmio +EXPORT_SYMBOL_GPL vmlinux 0x0fba24af led_trigger_rename_static +EXPORT_SYMBOL_GPL vmlinux 0x0fbb7344 memremap_compat_align +EXPORT_SYMBOL_GPL vmlinux 0x0fc37562 amd_smn_read +EXPORT_SYMBOL_GPL vmlinux 0x0fcc1969 copy_from_user_nmi +EXPORT_SYMBOL_GPL vmlinux 0x0fcf52a4 crypto_destroy_tfm +EXPORT_SYMBOL_GPL vmlinux 0x0fddec37 regmap_write +EXPORT_SYMBOL_GPL vmlinux 0x0fe7617c __tracepoint_suspend_resume +EXPORT_SYMBOL_GPL vmlinux 0x1005d60b tick_nohz_dep_set_cpu +EXPORT_SYMBOL_GPL vmlinux 0x100c3bdb xfrm_audit_state_replay_overflow +EXPORT_SYMBOL_GPL vmlinux 0x10138352 tracing_on +EXPORT_SYMBOL_GPL vmlinux 0x1038b96f adxl_get_component_names +EXPORT_SYMBOL_GPL vmlinux 0x103e1549 fuse_conn_put +EXPORT_SYMBOL_GPL vmlinux 0x1062aa27 power_supply_batinfo_ocv2cap +EXPORT_SYMBOL_GPL vmlinux 0x1077fbce nvme_wait_freeze_timeout +EXPORT_SYMBOL_GPL vmlinux 0x108a0acd bstr_printf +EXPORT_SYMBOL_GPL vmlinux 0x109ac38d perf_get_aux +EXPORT_SYMBOL_GPL vmlinux 0x10a928da crypto_skcipher_decrypt +EXPORT_SYMBOL_GPL vmlinux 0x10aaa3c7 fib_rules_register +EXPORT_SYMBOL_GPL vmlinux 0x10af85c7 debugfs_create_x64 +EXPORT_SYMBOL_GPL vmlinux 0x10b45fbf acpiphp_register_attention +EXPORT_SYMBOL_GPL vmlinux 0x10b5204f regulator_get_bypass_regmap +EXPORT_SYMBOL_GPL vmlinux 0x10c2e75a kmsg_dump_register +EXPORT_SYMBOL_GPL vmlinux 0x10ecc52c usb_amd_quirk_pll_enable +EXPORT_SYMBOL_GPL vmlinux 0x110106c1 cper_severity_to_aer +EXPORT_SYMBOL_GPL vmlinux 0x1126abfd md_rdev_clear +EXPORT_SYMBOL_GPL vmlinux 0x11693b57 get_pid_task +EXPORT_SYMBOL_GPL vmlinux 0x1172d487 rhashtable_insert_slow +EXPORT_SYMBOL_GPL vmlinux 0x11774472 dm_bio_get_target_bio_nr +EXPORT_SYMBOL_GPL vmlinux 0x1185c249 arch_apei_report_mem_error +EXPORT_SYMBOL_GPL vmlinux 0x11952ff2 task_user_regset_view +EXPORT_SYMBOL_GPL vmlinux 0x11a2e0ac crypto_dh_key_len +EXPORT_SYMBOL_GPL vmlinux 0x11b15f60 dw_pcie_wait_for_link +EXPORT_SYMBOL_GPL vmlinux 0x11c0384c aead_init_geniv +EXPORT_SYMBOL_GPL vmlinux 0x11c23240 crypto_attr_u32 +EXPORT_SYMBOL_GPL vmlinux 0x11c6b007 fib4_rule_default +EXPORT_SYMBOL_GPL vmlinux 0x11d5f96c regulator_unregister_notifier +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 0x11e3169a devm_remove_action +EXPORT_SYMBOL_GPL vmlinux 0x11e9fe10 crypto_unregister_acomp +EXPORT_SYMBOL_GPL vmlinux 0x11ea62df __devm_regmap_init_spi +EXPORT_SYMBOL_GPL vmlinux 0x11f1a73b crypto_unregister_scomps +EXPORT_SYMBOL_GPL vmlinux 0x11fe0754 dma_get_slave_channel +EXPORT_SYMBOL_GPL vmlinux 0x1200d0f3 pci_hp_create_module_link +EXPORT_SYMBOL_GPL vmlinux 0x1208d794 crypto_register_ahashes +EXPORT_SYMBOL_GPL vmlinux 0x121264fb devm_phy_create +EXPORT_SYMBOL_GPL vmlinux 0x121d958a unregister_die_notifier +EXPORT_SYMBOL_GPL vmlinux 0x12284145 usb_hub_release_port +EXPORT_SYMBOL_GPL vmlinux 0x1232085d __clk_mux_determine_rate +EXPORT_SYMBOL_GPL vmlinux 0x1234e483 get_cpu_iowait_time_us +EXPORT_SYMBOL_GPL vmlinux 0x1234ffa1 cper_estatus_check_header +EXPORT_SYMBOL_GPL vmlinux 0x124ccb72 tpm_chip_register +EXPORT_SYMBOL_GPL vmlinux 0x124df5ad devm_regulator_register_notifier +EXPORT_SYMBOL_GPL vmlinux 0x1268f357 resume_device_irqs +EXPORT_SYMBOL_GPL vmlinux 0x1275094e bpf_prog_free +EXPORT_SYMBOL_GPL vmlinux 0x127a7f1b device_show_ulong +EXPORT_SYMBOL_GPL vmlinux 0x129334ae sfp_parse_support +EXPORT_SYMBOL_GPL vmlinux 0x12ab31f1 idr_alloc_u32 +EXPORT_SYMBOL_GPL vmlinux 0x12b6d949 percpu_up_write +EXPORT_SYMBOL_GPL vmlinux 0x12be775c do_splice_to +EXPORT_SYMBOL_GPL vmlinux 0x12d5e1c9 regulator_get_error_flags +EXPORT_SYMBOL_GPL vmlinux 0x12dbc8f6 percpu_ref_switch_to_atomic_sync +EXPORT_SYMBOL_GPL vmlinux 0x12dd4263 ata_link_online +EXPORT_SYMBOL_GPL vmlinux 0x12e1fea5 acpi_nfit_desc_init +EXPORT_SYMBOL_GPL vmlinux 0x12e397ac pinctrl_add_gpio_ranges +EXPORT_SYMBOL_GPL vmlinux 0x13087407 class_unregister +EXPORT_SYMBOL_GPL vmlinux 0x131a5ed7 regmap_del_irq_chip +EXPORT_SYMBOL_GPL vmlinux 0x131db64a system_long_wq +EXPORT_SYMBOL_GPL vmlinux 0x131f7c3d clk_hw_register_fractional_divider +EXPORT_SYMBOL_GPL vmlinux 0x133437c6 get_kernel_page +EXPORT_SYMBOL_GPL vmlinux 0x1336b9e4 pm_clk_remove_clk +EXPORT_SYMBOL_GPL vmlinux 0x13385b7d fuse_get_unique +EXPORT_SYMBOL_GPL vmlinux 0x133969d7 __trace_printk +EXPORT_SYMBOL_GPL vmlinux 0x134b8a78 __device_reset +EXPORT_SYMBOL_GPL vmlinux 0x134e6bb6 phy_modify_mmd +EXPORT_SYMBOL_GPL vmlinux 0x136209db power_supply_reg_notifier +EXPORT_SYMBOL_GPL vmlinux 0x1366d275 fib_rules_unregister +EXPORT_SYMBOL_GPL vmlinux 0x13771e47 ip6_datagram_connect +EXPORT_SYMBOL_GPL vmlinux 0x138b7d0d sis_info133_for_sata +EXPORT_SYMBOL_GPL vmlinux 0x138e0957 dax_write_cache_enabled +EXPORT_SYMBOL_GPL vmlinux 0x1391b728 dev_pm_qos_hide_flags +EXPORT_SYMBOL_GPL vmlinux 0x139d1d1a __clocksource_update_freq_scale +EXPORT_SYMBOL_GPL vmlinux 0x139ff498 skb_segment +EXPORT_SYMBOL_GPL vmlinux 0x13a8bb25 syscon_regmap_lookup_by_phandle_args +EXPORT_SYMBOL_GPL vmlinux 0x13c19ee7 alarm_forward_now +EXPORT_SYMBOL_GPL vmlinux 0x13ce87e8 asn1_ber_decoder +EXPORT_SYMBOL_GPL vmlinux 0x13e3aa9a smca_banks +EXPORT_SYMBOL_GPL vmlinux 0x13ed8784 sdev_evt_alloc +EXPORT_SYMBOL_GPL vmlinux 0x140065bc irq_domain_get_irq_data +EXPORT_SYMBOL_GPL vmlinux 0x14018628 verify_signature +EXPORT_SYMBOL_GPL vmlinux 0x1401fccd get_hwpoison_page +EXPORT_SYMBOL_GPL vmlinux 0x1403ad09 cpufreq_add_update_util_hook +EXPORT_SYMBOL_GPL vmlinux 0x14060d37 debugfs_file_get +EXPORT_SYMBOL_GPL vmlinux 0x1418238a __tracepoint_cpu_frequency +EXPORT_SYMBOL_GPL vmlinux 0x141f38bf ktime_get_raw_fast_ns +EXPORT_SYMBOL_GPL vmlinux 0x144b0903 fsstack_copy_attr_all +EXPORT_SYMBOL_GPL vmlinux 0x14591f8a acpi_dev_resume +EXPORT_SYMBOL_GPL vmlinux 0x14682efd usb_get_intf +EXPORT_SYMBOL_GPL vmlinux 0x146d97f2 security_inode_mkdir +EXPORT_SYMBOL_GPL vmlinux 0x1473869e trace_event_buffer_lock_reserve +EXPORT_SYMBOL_GPL vmlinux 0x148801b2 nl_table +EXPORT_SYMBOL_GPL vmlinux 0x148e6228 aead_geniv_alloc +EXPORT_SYMBOL_GPL vmlinux 0x14a9ba86 dma_resv_get_fences_rcu +EXPORT_SYMBOL_GPL vmlinux 0x14ab905e iommu_sva_bind_gpasid +EXPORT_SYMBOL_GPL vmlinux 0x14ada36a edac_mc_handle_error +EXPORT_SYMBOL_GPL vmlinux 0x14af1e1c wakeup_source_register +EXPORT_SYMBOL_GPL vmlinux 0x14ce2d30 pinctrl_pm_select_default_state +EXPORT_SYMBOL_GPL vmlinux 0x14cec087 platform_irq_count +EXPORT_SYMBOL_GPL vmlinux 0x14d01690 clk_mux_index_to_val +EXPORT_SYMBOL_GPL vmlinux 0x14e23803 xfrm_audit_state_notfound +EXPORT_SYMBOL_GPL vmlinux 0x14e8a546 dma_get_required_mask +EXPORT_SYMBOL_GPL vmlinux 0x14fde0f2 __module_text_address +EXPORT_SYMBOL_GPL vmlinux 0x1501a87d fib_info_nh_uses_dev +EXPORT_SYMBOL_GPL vmlinux 0x15136446 strp_done +EXPORT_SYMBOL_GPL vmlinux 0x152e41e3 ata_sff_qc_fill_rtf +EXPORT_SYMBOL_GPL vmlinux 0x153b60a6 klist_del +EXPORT_SYMBOL_GPL vmlinux 0x15510a89 devlink_fmsg_binary_put +EXPORT_SYMBOL_GPL vmlinux 0x1554e2d5 pci_find_next_ht_capability +EXPORT_SYMBOL_GPL vmlinux 0x155c0461 serial8250_modem_status +EXPORT_SYMBOL_GPL vmlinux 0x156b07a4 tpm_pm_resume +EXPORT_SYMBOL_GPL vmlinux 0x156beeef rio_del_device +EXPORT_SYMBOL_GPL vmlinux 0x156cdac8 __tracepoint_kfree_skb +EXPORT_SYMBOL_GPL vmlinux 0x156d8a2d crypto_register_templates +EXPORT_SYMBOL_GPL vmlinux 0x157c35e2 genphy_c45_read_status +EXPORT_SYMBOL_GPL vmlinux 0x158aa465 unregister_virtio_driver +EXPORT_SYMBOL_GPL vmlinux 0x158f0415 dm_put +EXPORT_SYMBOL_GPL vmlinux 0x1591b2c6 hyperv_read_cfg_blk +EXPORT_SYMBOL_GPL vmlinux 0x15acb80b sysfs_remove_groups +EXPORT_SYMBOL_GPL vmlinux 0x15e329bf crypto_stats_skcipher_decrypt +EXPORT_SYMBOL_GPL vmlinux 0x15ea2648 hwpoison_filter_flags_mask +EXPORT_SYMBOL_GPL vmlinux 0x162f0774 sk_msg_return +EXPORT_SYMBOL_GPL vmlinux 0x16516798 osc_pc_lpi_support_confirmed +EXPORT_SYMBOL_GPL vmlinux 0x16613135 ncsi_stop_dev +EXPORT_SYMBOL_GPL vmlinux 0x16693f68 ip6_datagram_send_ctl +EXPORT_SYMBOL_GPL vmlinux 0x166d6443 __tracepoint_pelt_rt_tp +EXPORT_SYMBOL_GPL vmlinux 0x166db1b5 sched_clock_idle_wakeup_event +EXPORT_SYMBOL_GPL vmlinux 0x16773640 regmap_fields_update_bits_base +EXPORT_SYMBOL_GPL vmlinux 0x167c6006 pci_disable_pcie_error_reporting +EXPORT_SYMBOL_GPL vmlinux 0x167d7113 acpi_bus_register_early_device +EXPORT_SYMBOL_GPL vmlinux 0x167da7b0 od_register_powersave_bias_handler +EXPORT_SYMBOL_GPL vmlinux 0x167f5abf pci_user_write_config_word +EXPORT_SYMBOL_GPL vmlinux 0x16a86b58 usb_autopm_put_interface_async +EXPORT_SYMBOL_GPL vmlinux 0x16c04afb exportfs_encode_fh +EXPORT_SYMBOL_GPL vmlinux 0x16ca5d53 blk_mq_unfreeze_queue +EXPORT_SYMBOL_GPL vmlinux 0x16d7a860 irq_domain_simple_ops +EXPORT_SYMBOL_GPL vmlinux 0x16da1f88 devlink_fmsg_u32_put +EXPORT_SYMBOL_GPL vmlinux 0x170cc36c put_timespec64 +EXPORT_SYMBOL_GPL vmlinux 0x17178be0 input_ff_destroy +EXPORT_SYMBOL_GPL vmlinux 0x1741ddee trace_seq_puts +EXPORT_SYMBOL_GPL vmlinux 0x176031a7 devlink_fmsg_string_put +EXPORT_SYMBOL_GPL vmlinux 0x17614bf3 apei_resources_sub +EXPORT_SYMBOL_GPL vmlinux 0x1762095e tcp_ca_openreq_child +EXPORT_SYMBOL_GPL vmlinux 0x17811e8a of_phy_simple_xlate +EXPORT_SYMBOL_GPL vmlinux 0x1788db5a crypto_stats_aead_decrypt +EXPORT_SYMBOL_GPL vmlinux 0x178b21eb kthread_queue_delayed_work +EXPORT_SYMBOL_GPL vmlinux 0x17a3993f __tracepoint_block_split +EXPORT_SYMBOL_GPL vmlinux 0x17add64b gdt_page +EXPORT_SYMBOL_GPL vmlinux 0x17ba818a device_remove_bin_file +EXPORT_SYMBOL_GPL vmlinux 0x17e01f11 erst_clear +EXPORT_SYMBOL_GPL vmlinux 0x17eb09af __clk_hw_register_divider +EXPORT_SYMBOL_GPL vmlinux 0x17ef77ac devlink_alloc +EXPORT_SYMBOL_GPL vmlinux 0x18008c59 ring_buffer_resize +EXPORT_SYMBOL_GPL vmlinux 0x1811c15f device_match_any +EXPORT_SYMBOL_GPL vmlinux 0x1817f116 virtqueue_is_broken +EXPORT_SYMBOL_GPL vmlinux 0x181f1866 pci_reset_function_locked +EXPORT_SYMBOL_GPL vmlinux 0x182875d7 crypto_cipher_decrypt_one +EXPORT_SYMBOL_GPL vmlinux 0x18341687 ata_dev_disable +EXPORT_SYMBOL_GPL vmlinux 0x183f5bac devm_watchdog_register_device +EXPORT_SYMBOL_GPL vmlinux 0x18439ee7 power_supply_property_is_writeable +EXPORT_SYMBOL_GPL vmlinux 0x185196d1 dev_attr_ncq_prio_enable +EXPORT_SYMBOL_GPL vmlinux 0x18582826 amd_pmu_disable_virt +EXPORT_SYMBOL_GPL vmlinux 0x18615d35 efivar_supports_writes +EXPORT_SYMBOL_GPL vmlinux 0x1870ebc7 blk_set_queue_dying +EXPORT_SYMBOL_GPL vmlinux 0x18728552 sprint_OID +EXPORT_SYMBOL_GPL vmlinux 0x187e5d5b blockdev_superblock +EXPORT_SYMBOL_GPL vmlinux 0x18a4e1ff fwnode_handle_put +EXPORT_SYMBOL_GPL vmlinux 0x18b577d2 pinctrl_dev_get_name +EXPORT_SYMBOL_GPL vmlinux 0x18d7bc1d vxlan_fdb_clear_offload +EXPORT_SYMBOL_GPL vmlinux 0x18e4f8aa swphy_read_reg +EXPORT_SYMBOL_GPL vmlinux 0x18f53424 pcie_has_flr +EXPORT_SYMBOL_GPL vmlinux 0x18fb2caf cpus_read_unlock +EXPORT_SYMBOL_GPL vmlinux 0x1913b57a kcpustat_cpu_fetch +EXPORT_SYMBOL_GPL vmlinux 0x19151d61 crypto_lookup_template +EXPORT_SYMBOL_GPL vmlinux 0x19161800 irq_chip_mask_ack_parent +EXPORT_SYMBOL_GPL vmlinux 0x19191bc5 genphy_c45_an_config_aneg +EXPORT_SYMBOL_GPL vmlinux 0x192551ff nvdimm_flush +EXPORT_SYMBOL_GPL vmlinux 0x192baa8e virtio_finalize_features +EXPORT_SYMBOL_GPL vmlinux 0x19380608 iommu_group_add_device +EXPORT_SYMBOL_GPL vmlinux 0x193dfdf6 klp_get_prev_state +EXPORT_SYMBOL_GPL vmlinux 0x194404e6 perf_event_addr_filters_sync +EXPORT_SYMBOL_GPL vmlinux 0x195e84ca dm_send_uevents +EXPORT_SYMBOL_GPL vmlinux 0x1962871f dmaengine_desc_attach_metadata +EXPORT_SYMBOL_GPL vmlinux 0x196614ce hw_breakpoint_restore +EXPORT_SYMBOL_GPL vmlinux 0x19731c4d kstrdup_quotable_cmdline +EXPORT_SYMBOL_GPL vmlinux 0x19752db2 pci_host_probe +EXPORT_SYMBOL_GPL vmlinux 0x19783855 devm_pinctrl_register +EXPORT_SYMBOL_GPL vmlinux 0x197e86f8 is_nvdimm_sync +EXPORT_SYMBOL_GPL vmlinux 0x1980b34e crypto_stats_get +EXPORT_SYMBOL_GPL vmlinux 0x1983a427 devm_pinctrl_register_and_init +EXPORT_SYMBOL_GPL vmlinux 0x19982e8d vfs_cancel_lock +EXPORT_SYMBOL_GPL vmlinux 0x199e6640 pkcs7_validate_trust +EXPORT_SYMBOL_GPL vmlinux 0x19a304ba usb_disabled +EXPORT_SYMBOL_GPL vmlinux 0x19a8e0d3 spi_bus_type +EXPORT_SYMBOL_GPL vmlinux 0x19b9cb8a ata_bmdma_port_intr +EXPORT_SYMBOL_GPL vmlinux 0x19bc9dcd nvme_wait_freeze +EXPORT_SYMBOL_GPL vmlinux 0x19c93a7b fsnotify_init_mark +EXPORT_SYMBOL_GPL vmlinux 0x19cfb9ed dm_noflush_suspending +EXPORT_SYMBOL_GPL vmlinux 0x19d8828c subsys_system_register +EXPORT_SYMBOL_GPL vmlinux 0x19d9641a devm_clk_hw_unregister +EXPORT_SYMBOL_GPL vmlinux 0x19e81304 btree_alloc +EXPORT_SYMBOL_GPL vmlinux 0x19edd064 blkg_rwstat_exit +EXPORT_SYMBOL_GPL vmlinux 0x19f462ab kfree_call_rcu +EXPORT_SYMBOL_GPL vmlinux 0x19fe83f9 regmap_field_alloc +EXPORT_SYMBOL_GPL vmlinux 0x1a10c32b crypto_ft_tab +EXPORT_SYMBOL_GPL vmlinux 0x1a146ec3 usb_ep_type_string +EXPORT_SYMBOL_GPL vmlinux 0x1a310b28 debugfs_lookup +EXPORT_SYMBOL_GPL vmlinux 0x1a60f847 devlink_port_params_register +EXPORT_SYMBOL_GPL vmlinux 0x1a62e9cc fwnode_connection_find_match +EXPORT_SYMBOL_GPL vmlinux 0x1a6bf28f fsnotify_get_cookie +EXPORT_SYMBOL_GPL vmlinux 0x1a7044b6 bsg_scsi_register_queue +EXPORT_SYMBOL_GPL vmlinux 0x1a8a34ad virtqueue_add_inbuf_ctx +EXPORT_SYMBOL_GPL vmlinux 0x1aaa4bb2 iommu_domain_window_enable +EXPORT_SYMBOL_GPL vmlinux 0x1aab0935 regulator_disable +EXPORT_SYMBOL_GPL vmlinux 0x1ac458a1 public_key_signature_free +EXPORT_SYMBOL_GPL vmlinux 0x1ac69bd4 store_sampling_rate +EXPORT_SYMBOL_GPL vmlinux 0x1ac98060 usb_deregister +EXPORT_SYMBOL_GPL vmlinux 0x1acd18c8 cpuset_cgrp_subsys_on_dfl_key +EXPORT_SYMBOL_GPL vmlinux 0x1ad6197a crypto_unregister_aeads +EXPORT_SYMBOL_GPL vmlinux 0x1aeb1037 sata_async_notification +EXPORT_SYMBOL_GPL vmlinux 0x1aec62e9 irq_gc_mask_clr_bit +EXPORT_SYMBOL_GPL vmlinux 0x1af267f8 int_pow +EXPORT_SYMBOL_GPL vmlinux 0x1afcea59 ip_tunnel_newlink +EXPORT_SYMBOL_GPL vmlinux 0x1aff3d55 mce_register_injector_chain +EXPORT_SYMBOL_GPL vmlinux 0x1b1471f3 alarm_start +EXPORT_SYMBOL_GPL vmlinux 0x1b18f955 tcp_set_state +EXPORT_SYMBOL_GPL vmlinux 0x1b1d03ee phy_resolve_aneg_linkmode +EXPORT_SYMBOL_GPL vmlinux 0x1b29bcf4 phy_exit +EXPORT_SYMBOL_GPL vmlinux 0x1b2a00aa blkcg_policy_register +EXPORT_SYMBOL_GPL vmlinux 0x1b3bb2c7 thermal_zone_bind_cooling_device +EXPORT_SYMBOL_GPL vmlinux 0x1b4af867 ip_route_output_flow +EXPORT_SYMBOL_GPL vmlinux 0x1b5059ce ata_id_xfermask +EXPORT_SYMBOL_GPL vmlinux 0x1b51ce4c debugfs_read_file_bool +EXPORT_SYMBOL_GPL vmlinux 0x1b53159d __dax_pmem_probe +EXPORT_SYMBOL_GPL vmlinux 0x1b55eddb dst_cache_get_ip6 +EXPORT_SYMBOL_GPL vmlinux 0x1b5f11fb phy_init +EXPORT_SYMBOL_GPL vmlinux 0x1b5f4377 trace_seq_putc +EXPORT_SYMBOL_GPL vmlinux 0x1b6131b9 alloc_iova_fast +EXPORT_SYMBOL_GPL vmlinux 0x1b79e14c sk_msg_free +EXPORT_SYMBOL_GPL vmlinux 0x1b7a40ff pm_genpd_remove_subdomain +EXPORT_SYMBOL_GPL vmlinux 0x1b8822d8 pinctrl_gpio_direction_output +EXPORT_SYMBOL_GPL vmlinux 0x1b88adbc page_cache_async_readahead +EXPORT_SYMBOL_GPL vmlinux 0x1b92e41d inet_putpeer +EXPORT_SYMBOL_GPL vmlinux 0x1b9867b0 devfreq_event_set_event +EXPORT_SYMBOL_GPL vmlinux 0x1b995412 iomap_readpage +EXPORT_SYMBOL_GPL vmlinux 0x1b9d235c dev_pm_qos_expose_latency_tolerance +EXPORT_SYMBOL_GPL vmlinux 0x1b9f3e7f rio_free_net +EXPORT_SYMBOL_GPL vmlinux 0x1ba237b0 default_cpu_present_to_apicid +EXPORT_SYMBOL_GPL vmlinux 0x1bacb97d __acpi_nfit_notify +EXPORT_SYMBOL_GPL vmlinux 0x1bc5eebe pinctrl_gpio_direction_input +EXPORT_SYMBOL_GPL vmlinux 0x1bc872ce md_do_sync +EXPORT_SYMBOL_GPL vmlinux 0x1bd9844d irq_domain_xlate_twocell +EXPORT_SYMBOL_GPL vmlinux 0x1be26673 udp_tunnel_drop_rx_port +EXPORT_SYMBOL_GPL vmlinux 0x1bee4974 sg_alloc_table_chained +EXPORT_SYMBOL_GPL vmlinux 0x1bf62d29 netlink_has_listeners +EXPORT_SYMBOL_GPL vmlinux 0x1c17b5ee devlink_dpipe_match_put +EXPORT_SYMBOL_GPL vmlinux 0x1c197520 devlink_params_register +EXPORT_SYMBOL_GPL vmlinux 0x1c37c44e phy_modify +EXPORT_SYMBOL_GPL vmlinux 0x1c422040 pci_epc_mem_free_addr +EXPORT_SYMBOL_GPL vmlinux 0x1c44b902 __blocking_notifier_call_chain +EXPORT_SYMBOL_GPL vmlinux 0x1c51d0b8 ata_host_alloc_pinfo +EXPORT_SYMBOL_GPL vmlinux 0x1c5541bd cpufreq_boost_enabled +EXPORT_SYMBOL_GPL vmlinux 0x1c5861b0 xfrm_audit_policy_add +EXPORT_SYMBOL_GPL vmlinux 0x1c5b1f28 irq_free_descs +EXPORT_SYMBOL_GPL vmlinux 0x1c5b38a5 rio_unlock_device +EXPORT_SYMBOL_GPL vmlinux 0x1c5ff742 clk_get_phase +EXPORT_SYMBOL_GPL vmlinux 0x1c67bb14 inet_unhash +EXPORT_SYMBOL_GPL vmlinux 0x1c6fd07c kthread_flush_worker +EXPORT_SYMBOL_GPL vmlinux 0x1c7055ca balloon_page_alloc +EXPORT_SYMBOL_GPL vmlinux 0x1c72daab crypto_unregister_shashes +EXPORT_SYMBOL_GPL vmlinux 0x1c7dfcac __list_lru_init +EXPORT_SYMBOL_GPL vmlinux 0x1c80d27d btree_geo128 +EXPORT_SYMBOL_GPL vmlinux 0x1c87a811 __round_jiffies_up +EXPORT_SYMBOL_GPL vmlinux 0x1c8da595 irq_set_chip_and_handler_name +EXPORT_SYMBOL_GPL vmlinux 0x1c9429fa vfio_group_get_external_user +EXPORT_SYMBOL_GPL vmlinux 0x1c9d5da6 sock_diag_unregister_inet_compat +EXPORT_SYMBOL_GPL vmlinux 0x1ca2c10f ata_sas_port_alloc +EXPORT_SYMBOL_GPL vmlinux 0x1caa082e __nf_ip6_route +EXPORT_SYMBOL_GPL vmlinux 0x1cab64e5 debugfs_create_devm_seqfile +EXPORT_SYMBOL_GPL vmlinux 0x1cb42cbf rio_register_scan +EXPORT_SYMBOL_GPL vmlinux 0x1cb7c983 apei_exec_read_register_value +EXPORT_SYMBOL_GPL vmlinux 0x1cbd92b0 cpu_mitigations_off +EXPORT_SYMBOL_GPL vmlinux 0x1cc0196f sysfs_create_file_ns +EXPORT_SYMBOL_GPL vmlinux 0x1cc5c4f2 skb_copy_ubufs +EXPORT_SYMBOL_GPL vmlinux 0x1cdcbdfb acpi_dev_get_dma_resources +EXPORT_SYMBOL_GPL vmlinux 0x1cfe4101 clkdev_hw_create +EXPORT_SYMBOL_GPL vmlinux 0x1d0a37aa irq_domain_add_legacy +EXPORT_SYMBOL_GPL vmlinux 0x1d0fa861 ethnl_cable_test_step +EXPORT_SYMBOL_GPL vmlinux 0x1d15d1f2 devm_nvmem_cell_get +EXPORT_SYMBOL_GPL vmlinux 0x1d222ced irq_get_irqchip_state +EXPORT_SYMBOL_GPL vmlinux 0x1d271a9c regulator_get_drvdata +EXPORT_SYMBOL_GPL vmlinux 0x1d34e996 pp_msgs +EXPORT_SYMBOL_GPL vmlinux 0x1d37f0f5 simple_attr_release +EXPORT_SYMBOL_GPL vmlinux 0x1d3f57f8 gpiod_get_value_cansleep +EXPORT_SYMBOL_GPL vmlinux 0x1d511590 crypto_spawn_tfm2 +EXPORT_SYMBOL_GPL vmlinux 0x1d5cf639 transport_destroy_device +EXPORT_SYMBOL_GPL vmlinux 0x1d5e93fd hwmon_device_register_with_info +EXPORT_SYMBOL_GPL vmlinux 0x1d6ff224 crypto_hash_alg_has_setkey +EXPORT_SYMBOL_GPL vmlinux 0x1d7623df clk_hw_rate_is_protected +EXPORT_SYMBOL_GPL vmlinux 0x1d77b0f8 unix_socket_table +EXPORT_SYMBOL_GPL vmlinux 0x1d94a218 dmi_memdev_handle +EXPORT_SYMBOL_GPL vmlinux 0x1dd9a783 cpufreq_cpu_get +EXPORT_SYMBOL_GPL vmlinux 0x1ddf2e97 icc_get +EXPORT_SYMBOL_GPL vmlinux 0x1e0670c6 reset_control_release +EXPORT_SYMBOL_GPL vmlinux 0x1e1b58ff vfio_add_group_dev +EXPORT_SYMBOL_GPL vmlinux 0x1e2267fd scsi_host_block +EXPORT_SYMBOL_GPL vmlinux 0x1e24b597 tpm_try_get_ops +EXPORT_SYMBOL_GPL vmlinux 0x1e4bb85c fsnotify_put_mark +EXPORT_SYMBOL_GPL vmlinux 0x1e51dabb __tracepoint_detach_device_from_domain +EXPORT_SYMBOL_GPL vmlinux 0x1e67b5e3 of_hwspin_lock_get_id +EXPORT_SYMBOL_GPL vmlinux 0x1e6efd56 get_current_tty +EXPORT_SYMBOL_GPL vmlinux 0x1e7bbcb3 kernel_restart +EXPORT_SYMBOL_GPL vmlinux 0x1e7c4fbb usb_phy_roothub_resume +EXPORT_SYMBOL_GPL vmlinux 0x1e7ea903 iomap_dio_iopoll +EXPORT_SYMBOL_GPL vmlinux 0x1e8fac8e wireless_nlevent_flush +EXPORT_SYMBOL_GPL vmlinux 0x1e96852b serial8250_do_get_mctrl +EXPORT_SYMBOL_GPL vmlinux 0x1e9bc719 freq_qos_update_request +EXPORT_SYMBOL_GPL vmlinux 0x1eaec09e sbitmap_get +EXPORT_SYMBOL_GPL vmlinux 0x1eafc30e tty_buffer_request_room +EXPORT_SYMBOL_GPL vmlinux 0x1eb9516e round_jiffies_relative +EXPORT_SYMBOL_GPL vmlinux 0x1ebba313 of_clk_hw_register +EXPORT_SYMBOL_GPL vmlinux 0x1ebd7472 crypto_register_template +EXPORT_SYMBOL_GPL vmlinux 0x1ebf6c2a pci_power_names +EXPORT_SYMBOL_GPL vmlinux 0x1ec8b77c acpi_driver_match_device +EXPORT_SYMBOL_GPL vmlinux 0x1ed47150 virtio_max_dma_size +EXPORT_SYMBOL_GPL vmlinux 0x1ed512fd pci_stop_root_bus +EXPORT_SYMBOL_GPL vmlinux 0x1edc6a93 led_sysfs_enable +EXPORT_SYMBOL_GPL vmlinux 0x1ee7d3cd hrtimer_init +EXPORT_SYMBOL_GPL vmlinux 0x1eee7c55 rio_alloc_net +EXPORT_SYMBOL_GPL vmlinux 0x1f052a51 spi_finalize_current_transfer +EXPORT_SYMBOL_GPL vmlinux 0x1f0cb5bf pm_power_off_prepare +EXPORT_SYMBOL_GPL vmlinux 0x1f17d28c regulator_list_voltage +EXPORT_SYMBOL_GPL vmlinux 0x1f1ddd8d copy_mc_fragile +EXPORT_SYMBOL_GPL vmlinux 0x1f24f597 crypto_grab_akcipher +EXPORT_SYMBOL_GPL vmlinux 0x1f4218b7 nvme_get_features +EXPORT_SYMBOL_GPL vmlinux 0x1f449588 mctrl_gpio_disable_ms +EXPORT_SYMBOL_GPL vmlinux 0x1f563160 bpf_offload_dev_priv +EXPORT_SYMBOL_GPL vmlinux 0x1f5aa652 __raw_v4_lookup +EXPORT_SYMBOL_GPL vmlinux 0x1f8544b8 panic_timeout +EXPORT_SYMBOL_GPL vmlinux 0x1f8cd2d2 tpm_put_ops +EXPORT_SYMBOL_GPL vmlinux 0x1f9134db iommu_sva_unbind_gpasid +EXPORT_SYMBOL_GPL vmlinux 0x1f9d901e fwnode_get_next_child_node +EXPORT_SYMBOL_GPL vmlinux 0x1fa1d95c sha256_zero_message_hash +EXPORT_SYMBOL_GPL vmlinux 0x1fa47b5e wm831x_reg_read +EXPORT_SYMBOL_GPL vmlinux 0x1fc5324e security_path_link +EXPORT_SYMBOL_GPL vmlinux 0x1fe6e504 gpiod_add_hogs +EXPORT_SYMBOL_GPL vmlinux 0x1fe7a801 device_get_dma_attr +EXPORT_SYMBOL_GPL vmlinux 0x1ffb25a3 pcie_port_find_device +EXPORT_SYMBOL_GPL vmlinux 0x1fffa841 pm_generic_suspend +EXPORT_SYMBOL_GPL vmlinux 0x200390cf pm_generic_poweroff +EXPORT_SYMBOL_GPL vmlinux 0x200ab853 blk_queue_rq_timeout +EXPORT_SYMBOL_GPL vmlinux 0x201b9101 devm_regulator_bulk_register_supply_alias +EXPORT_SYMBOL_GPL vmlinux 0x202d4ed6 nvmem_cell_write +EXPORT_SYMBOL_GPL vmlinux 0x2035abbb regulator_map_voltage_ascend +EXPORT_SYMBOL_GPL vmlinux 0x205cc516 thermal_add_hwmon_sysfs +EXPORT_SYMBOL_GPL vmlinux 0x2064d70d fixed_phy_register_with_gpiod +EXPORT_SYMBOL_GPL vmlinux 0x2078ec50 debugfs_create_u16 +EXPORT_SYMBOL_GPL vmlinux 0x207c7e7a tps65912_regmap_config +EXPORT_SYMBOL_GPL vmlinux 0x20835a9f __xdp_release_frame +EXPORT_SYMBOL_GPL vmlinux 0x20899467 hv_stimer0_isr +EXPORT_SYMBOL_GPL vmlinux 0x2093f4dd clk_register_divider_table +EXPORT_SYMBOL_GPL vmlinux 0x20973b6e hwspin_lock_unregister +EXPORT_SYMBOL_GPL vmlinux 0x20978fb9 idr_find +EXPORT_SYMBOL_GPL vmlinux 0x20d5bd16 acpi_device_get_match_data +EXPORT_SYMBOL_GPL vmlinux 0x20ee318e usb_wakeup_enabled_descendants +EXPORT_SYMBOL_GPL vmlinux 0x21037920 synth_event_gen_cmd_array_start +EXPORT_SYMBOL_GPL vmlinux 0x2129d121 __pm_runtime_idle +EXPORT_SYMBOL_GPL vmlinux 0x21412a08 devlink_port_unregister +EXPORT_SYMBOL_GPL vmlinux 0x21541c70 hv_pkt_iter_first +EXPORT_SYMBOL_GPL vmlinux 0x215d3e69 crypto_unregister_rng +EXPORT_SYMBOL_GPL vmlinux 0x216019ed usb_urb_ep_type_check +EXPORT_SYMBOL_GPL vmlinux 0x2167728c generic_file_buffered_read +EXPORT_SYMBOL_GPL vmlinux 0x216de4e1 rcu_get_gp_kthreads_prio +EXPORT_SYMBOL_GPL vmlinux 0x2170b2e6 perf_event_period +EXPORT_SYMBOL_GPL vmlinux 0x2176e42a hwpoison_filter_memcg +EXPORT_SYMBOL_GPL vmlinux 0x2182e18a clockevents_config_and_register +EXPORT_SYMBOL_GPL vmlinux 0x2184b5f2 __account_locked_vm +EXPORT_SYMBOL_GPL vmlinux 0x218fd478 gpiod_set_transitory +EXPORT_SYMBOL_GPL vmlinux 0x21a563da clk_get_accuracy +EXPORT_SYMBOL_GPL vmlinux 0x21ac8b77 iommu_group_get_by_id +EXPORT_SYMBOL_GPL vmlinux 0x21b0d3d9 bpf_offload_dev_netdev_register +EXPORT_SYMBOL_GPL vmlinux 0x21bd5982 debugfs_create_blob +EXPORT_SYMBOL_GPL vmlinux 0x21cd536a crypto_put_default_null_skcipher +EXPORT_SYMBOL_GPL vmlinux 0x21eb1a6e set_selection_kernel +EXPORT_SYMBOL_GPL vmlinux 0x2211a4c0 blk_op_str +EXPORT_SYMBOL_GPL vmlinux 0x221394ae hyperv_reg_block_invalidate +EXPORT_SYMBOL_GPL vmlinux 0x221eab6d scatterwalk_copychunks +EXPORT_SYMBOL_GPL vmlinux 0x2229bfa5 pm_genpd_remove +EXPORT_SYMBOL_GPL vmlinux 0x2231b60a vfs_submount +EXPORT_SYMBOL_GPL vmlinux 0x223455a0 __pci_epf_register_driver +EXPORT_SYMBOL_GPL vmlinux 0x223d363c tick_nohz_full_setup +EXPORT_SYMBOL_GPL vmlinux 0x2246b4dd __tracepoint_block_bio_remap +EXPORT_SYMBOL_GPL vmlinux 0x2248601a debugfs_create_symlink +EXPORT_SYMBOL_GPL vmlinux 0x224f51bf nvmem_device_cell_read +EXPORT_SYMBOL_GPL vmlinux 0x2264fefb crypto_shash_final +EXPORT_SYMBOL_GPL vmlinux 0x227af2e9 __generic_fsdax_supported +EXPORT_SYMBOL_GPL vmlinux 0x228236df iommu_map_atomic +EXPORT_SYMBOL_GPL vmlinux 0x228573f2 nvdimm_bus_add_badrange +EXPORT_SYMBOL_GPL vmlinux 0x228cf69a pm_generic_freeze_late +EXPORT_SYMBOL_GPL vmlinux 0x229f87ef irq_domain_associate_many +EXPORT_SYMBOL_GPL vmlinux 0x22b07f86 synth_event_trace_start +EXPORT_SYMBOL_GPL vmlinux 0x22d337ff irq_domain_free_irqs_parent +EXPORT_SYMBOL_GPL vmlinux 0x22d8f62a pci_bridge_secondary_bus_reset +EXPORT_SYMBOL_GPL vmlinux 0x22d9409b iomap_sort_ioends +EXPORT_SYMBOL_GPL vmlinux 0x22d98c78 bio_iov_iter_get_pages +EXPORT_SYMBOL_GPL vmlinux 0x22eab9b9 sysfs_chmod_file +EXPORT_SYMBOL_GPL vmlinux 0x22ec5205 cpu_latency_qos_remove_request +EXPORT_SYMBOL_GPL vmlinux 0x22f36e10 ip6_sk_redirect +EXPORT_SYMBOL_GPL vmlinux 0x22fd08ba cpuacct_cgrp_subsys_on_dfl_key +EXPORT_SYMBOL_GPL vmlinux 0x2301a4c8 unregister_kretprobe +EXPORT_SYMBOL_GPL vmlinux 0x230fa346 fuse_abort_conn +EXPORT_SYMBOL_GPL vmlinux 0x231ccb47 crypto_unregister_skcipher +EXPORT_SYMBOL_GPL vmlinux 0x231ecf24 spi_sync +EXPORT_SYMBOL_GPL vmlinux 0x2325861e sata_link_hardreset +EXPORT_SYMBOL_GPL vmlinux 0x232e894c devlink_port_type_clear +EXPORT_SYMBOL_GPL vmlinux 0x23313e70 vmf_insert_pfn_pud_prot +EXPORT_SYMBOL_GPL vmlinux 0x23338049 usb_ep0_reinit +EXPORT_SYMBOL_GPL vmlinux 0x23412816 rtc_tm_to_ktime +EXPORT_SYMBOL_GPL vmlinux 0x23419814 skb_mpls_update_lse +EXPORT_SYMBOL_GPL vmlinux 0x234aef9e fuse_file_poll +EXPORT_SYMBOL_GPL vmlinux 0x234cf416 devlink_fmsg_string_pair_put +EXPORT_SYMBOL_GPL vmlinux 0x23521e23 pci_enable_pasid +EXPORT_SYMBOL_GPL vmlinux 0x23864ce7 cpuset_mem_spread_node +EXPORT_SYMBOL_GPL vmlinux 0x238c18e7 devm_acpi_dev_remove_driver_gpios +EXPORT_SYMBOL_GPL vmlinux 0x2396c7f0 clk_set_parent +EXPORT_SYMBOL_GPL vmlinux 0x23b4e0d7 clear_page_rep +EXPORT_SYMBOL_GPL vmlinux 0x23c1ddfc acpi_subsys_suspend_noirq +EXPORT_SYMBOL_GPL vmlinux 0x23c2cbe3 vmbus_set_sc_create_callback +EXPORT_SYMBOL_GPL vmlinux 0x23cfd1ff ata_host_alloc +EXPORT_SYMBOL_GPL vmlinux 0x23e2515d mbox_client_txdone +EXPORT_SYMBOL_GPL vmlinux 0x23e9e500 acpi_subsys_restore_early +EXPORT_SYMBOL_GPL vmlinux 0x24036ed3 rcuwait_wake_up +EXPORT_SYMBOL_GPL vmlinux 0x2405ef6b skb_tstamp_tx +EXPORT_SYMBOL_GPL vmlinux 0x2410c338 x86_virt_spec_ctrl +EXPORT_SYMBOL_GPL vmlinux 0x241aa415 ata_pci_sff_activate_host +EXPORT_SYMBOL_GPL vmlinux 0x243f0b4b crypto_check_attr_type +EXPORT_SYMBOL_GPL vmlinux 0x2447dc9f ata_sff_dev_classify +EXPORT_SYMBOL_GPL vmlinux 0x2451a5a0 icc_put +EXPORT_SYMBOL_GPL vmlinux 0x24640ab3 led_trigger_write +EXPORT_SYMBOL_GPL vmlinux 0x2464da17 gen_pool_size +EXPORT_SYMBOL_GPL vmlinux 0x246df185 hyperv_fill_flush_guest_mapping_list +EXPORT_SYMBOL_GPL vmlinux 0x24709b2f trace_seq_putmem +EXPORT_SYMBOL_GPL vmlinux 0x247ef831 kdb_unregister +EXPORT_SYMBOL_GPL vmlinux 0x248b8bae sk_set_memalloc +EXPORT_SYMBOL_GPL vmlinux 0x248baacd __fscrypt_prepare_rename +EXPORT_SYMBOL_GPL vmlinux 0x24957252 regulator_bulk_register_supply_alias +EXPORT_SYMBOL_GPL vmlinux 0x24963ca0 to_nvdimm_bus_dev +EXPORT_SYMBOL_GPL vmlinux 0x24ad11db wakeup_sources_read_unlock +EXPORT_SYMBOL_GPL vmlinux 0x24aee39f crypto_unregister_scomp +EXPORT_SYMBOL_GPL vmlinux 0x24bda2d7 pm_clk_runtime_suspend +EXPORT_SYMBOL_GPL vmlinux 0x24ca3acf usb_autopm_get_interface +EXPORT_SYMBOL_GPL vmlinux 0x24da0093 rcu_inkernel_boot_has_ended +EXPORT_SYMBOL_GPL vmlinux 0x24e018e0 mctrl_gpio_init +EXPORT_SYMBOL_GPL vmlinux 0x24eb7e32 leds_list +EXPORT_SYMBOL_GPL vmlinux 0x24f02991 sk_msg_alloc +EXPORT_SYMBOL_GPL vmlinux 0x24f39c39 reset_control_reset +EXPORT_SYMBOL_GPL vmlinux 0x24f63dcf ata_xfer_mask2mode +EXPORT_SYMBOL_GPL vmlinux 0x24fdc2dc udp_tunnel6_xmit_skb +EXPORT_SYMBOL_GPL vmlinux 0x2506813d irq_alloc_generic_chip +EXPORT_SYMBOL_GPL vmlinux 0x250f4530 do_truncate +EXPORT_SYMBOL_GPL vmlinux 0x25202163 dev_pm_opp_get_suspend_opp_freq +EXPORT_SYMBOL_GPL vmlinux 0x25301bc6 arch_wb_cache_pmem +EXPORT_SYMBOL_GPL vmlinux 0x25379e73 clk_set_min_rate +EXPORT_SYMBOL_GPL vmlinux 0x253b9c5e usb_amd_pt_check_port +EXPORT_SYMBOL_GPL vmlinux 0x25515aa3 fwnode_get_named_child_node +EXPORT_SYMBOL_GPL vmlinux 0x2554342b anon_transport_class_unregister +EXPORT_SYMBOL_GPL vmlinux 0x255a4e1f device_wakeup_disable +EXPORT_SYMBOL_GPL vmlinux 0x257314e3 crypto_alloc_tfm +EXPORT_SYMBOL_GPL vmlinux 0x25905449 skb_morph +EXPORT_SYMBOL_GPL vmlinux 0x2592fc6c console_printk +EXPORT_SYMBOL_GPL vmlinux 0x259f6a34 ata_sas_port_stop +EXPORT_SYMBOL_GPL vmlinux 0x25a3b424 acpi_dev_get_resources +EXPORT_SYMBOL_GPL vmlinux 0x25a5cc88 nvme_uninit_ctrl +EXPORT_SYMBOL_GPL vmlinux 0x25b047f9 __dev_forward_skb +EXPORT_SYMBOL_GPL vmlinux 0x25e177e5 __efivar_entry_get +EXPORT_SYMBOL_GPL vmlinux 0x261fcec8 pci_epc_add_epf +EXPORT_SYMBOL_GPL vmlinux 0x263f039e xas_nomem +EXPORT_SYMBOL_GPL vmlinux 0x264eeaf4 devm_pinctrl_put +EXPORT_SYMBOL_GPL vmlinux 0x264ff9fc crypto_unregister_kpp +EXPORT_SYMBOL_GPL vmlinux 0x26520970 vm_memory_committed +EXPORT_SYMBOL_GPL vmlinux 0x265bbef9 kexec_crash_loaded +EXPORT_SYMBOL_GPL vmlinux 0x267df662 smp_call_on_cpu +EXPORT_SYMBOL_GPL vmlinux 0x269c49b8 is_skb_forwardable +EXPORT_SYMBOL_GPL vmlinux 0x269c7a24 ip_tunnel_delete_nets +EXPORT_SYMBOL_GPL vmlinux 0x26a1bcd8 strp_check_rcv +EXPORT_SYMBOL_GPL vmlinux 0x26a323fd ata_sff_irq_on +EXPORT_SYMBOL_GPL vmlinux 0x26ab4755 put_old_itimerspec32 +EXPORT_SYMBOL_GPL vmlinux 0x26c62254 dev_attr_em_message +EXPORT_SYMBOL_GPL vmlinux 0x26c622ee percpu_ref_switch_to_percpu +EXPORT_SYMBOL_GPL vmlinux 0x26c90ea4 scsi_eh_get_sense +EXPORT_SYMBOL_GPL vmlinux 0x26cc80d4 tty_buffer_lock_exclusive +EXPORT_SYMBOL_GPL vmlinux 0x26cda94f e820__mapped_raw_any +EXPORT_SYMBOL_GPL vmlinux 0x26cddb48 unwind_next_frame +EXPORT_SYMBOL_GPL vmlinux 0x26e135de inverse_translate +EXPORT_SYMBOL_GPL vmlinux 0x26ed2186 register_vmap_purge_notifier +EXPORT_SYMBOL_GPL vmlinux 0x271e949a platform_device_add +EXPORT_SYMBOL_GPL vmlinux 0x272d8539 iommu_map_sg +EXPORT_SYMBOL_GPL vmlinux 0x2739b122 regmap_field_update_bits_base +EXPORT_SYMBOL_GPL vmlinux 0x2739c8f6 pm_runtime_suspended_time +EXPORT_SYMBOL_GPL vmlinux 0x273e2382 __context_tracking_enter +EXPORT_SYMBOL_GPL vmlinux 0x274cf5e1 __clk_get_flags +EXPORT_SYMBOL_GPL vmlinux 0x274dd1a3 sg_free_table_chained +EXPORT_SYMBOL_GPL vmlinux 0x27595236 gpiochip_populate_parent_fwspec_twocell +EXPORT_SYMBOL_GPL vmlinux 0x27675316 device_wakeup_enable +EXPORT_SYMBOL_GPL vmlinux 0x2769516c synth_event_add_val +EXPORT_SYMBOL_GPL vmlinux 0x276ac6a6 icc_get_name +EXPORT_SYMBOL_GPL vmlinux 0x276bad02 icc_node_create +EXPORT_SYMBOL_GPL vmlinux 0x2773c485 __wake_up_locked +EXPORT_SYMBOL_GPL vmlinux 0x277e6dfd sock_gen_put +EXPORT_SYMBOL_GPL vmlinux 0x278cf80f devm_free_pages +EXPORT_SYMBOL_GPL vmlinux 0x27a84ad3 blk_mq_sched_try_merge +EXPORT_SYMBOL_GPL vmlinux 0x27bb32aa vfs_getxattr +EXPORT_SYMBOL_GPL vmlinux 0x27c12ab8 __pm_relax +EXPORT_SYMBOL_GPL vmlinux 0x27c522f8 __mmu_notifier_register +EXPORT_SYMBOL_GPL vmlinux 0x27cfe653 usb_hcd_setup_local_mem +EXPORT_SYMBOL_GPL vmlinux 0x27df3105 hv_alloc_hyperv_zeroed_page +EXPORT_SYMBOL_GPL vmlinux 0x27efbcc4 fscrypt_get_symlink +EXPORT_SYMBOL_GPL vmlinux 0x27f4f029 ftrace_set_global_filter +EXPORT_SYMBOL_GPL vmlinux 0x27fa66e1 nr_free_buffer_pages +EXPORT_SYMBOL_GPL vmlinux 0x2810fb27 cpufreq_driver_target +EXPORT_SYMBOL_GPL vmlinux 0x2817f7fd cppc_get_desired_perf +EXPORT_SYMBOL_GPL vmlinux 0x281e2434 usb_set_interface +EXPORT_SYMBOL_GPL vmlinux 0x282ad0cc pci_epc_mem_exit +EXPORT_SYMBOL_GPL vmlinux 0x283f3e09 skcipher_alloc_instance_simple +EXPORT_SYMBOL_GPL vmlinux 0x284fe794 percpu_ref_exit +EXPORT_SYMBOL_GPL vmlinux 0x2857b57b rio_attach_device +EXPORT_SYMBOL_GPL vmlinux 0x2858f349 to_nd_region +EXPORT_SYMBOL_GPL vmlinux 0x2864abc9 klist_node_attached +EXPORT_SYMBOL_GPL vmlinux 0x286cc647 async_synchronize_cookie_domain +EXPORT_SYMBOL_GPL vmlinux 0x286ded2a usb_kill_urb +EXPORT_SYMBOL_GPL vmlinux 0x2876cc51 dm_accept_partial_bio +EXPORT_SYMBOL_GPL vmlinux 0x2892bcbc metadata_dst_alloc_percpu +EXPORT_SYMBOL_GPL vmlinux 0x28aa484b pci_find_next_capability +EXPORT_SYMBOL_GPL vmlinux 0x28aa6a67 call_rcu +EXPORT_SYMBOL_GPL vmlinux 0x28ab4fb9 pinctrl_gpio_free +EXPORT_SYMBOL_GPL vmlinux 0x28ac0bf1 devlink_flash_update_end_notify +EXPORT_SYMBOL_GPL vmlinux 0x28afbb08 cpu_latency_qos_add_request +EXPORT_SYMBOL_GPL vmlinux 0x28b257b1 wakeup_source_add +EXPORT_SYMBOL_GPL vmlinux 0x28d4494c get_task_mm +EXPORT_SYMBOL_GPL vmlinux 0x28e05cf1 gpiod_to_chip +EXPORT_SYMBOL_GPL vmlinux 0x28f15141 device_property_read_u16_array +EXPORT_SYMBOL_GPL vmlinux 0x28f5058d of_css +EXPORT_SYMBOL_GPL vmlinux 0x28fb481d device_remove_file_self +EXPORT_SYMBOL_GPL vmlinux 0x2903bec2 dev_attr_sw_activity +EXPORT_SYMBOL_GPL vmlinux 0x29051cc3 gpiod_get_raw_array_value +EXPORT_SYMBOL_GPL vmlinux 0x290610f6 cpufreq_dbs_governor_stop +EXPORT_SYMBOL_GPL vmlinux 0x290ae71b dev_pm_get_subsys_data +EXPORT_SYMBOL_GPL vmlinux 0x2911aee9 acpi_dma_configure +EXPORT_SYMBOL_GPL vmlinux 0x291d26e7 ata_sas_port_resume +EXPORT_SYMBOL_GPL vmlinux 0x29252e74 __tracepoint_block_unplug +EXPORT_SYMBOL_GPL vmlinux 0x29366b61 register_ftrace_direct +EXPORT_SYMBOL_GPL vmlinux 0x2951a872 trace_clock_local +EXPORT_SYMBOL_GPL vmlinux 0x295b4826 dmaengine_desc_get_metadata_ptr +EXPORT_SYMBOL_GPL vmlinux 0x296949a7 ata_cable_80wire +EXPORT_SYMBOL_GPL vmlinux 0x2978a762 phy_calibrate +EXPORT_SYMBOL_GPL vmlinux 0x297edc7c nvme_kill_queues +EXPORT_SYMBOL_GPL vmlinux 0x299d4cfe class_remove_file_ns +EXPORT_SYMBOL_GPL vmlinux 0x29a159af dev_get_regmap +EXPORT_SYMBOL_GPL vmlinux 0x29a55078 scsi_host_complete_all_commands +EXPORT_SYMBOL_GPL vmlinux 0x29b38e26 regulator_map_voltage_pickable_linear_range +EXPORT_SYMBOL_GPL vmlinux 0x29c2d11b fsnotify_get_group +EXPORT_SYMBOL_GPL vmlinux 0x29dcee07 rtnl_link_register +EXPORT_SYMBOL_GPL vmlinux 0x29e99471 tcp_leave_memory_pressure +EXPORT_SYMBOL_GPL vmlinux 0x29eb564f add_page_wait_queue +EXPORT_SYMBOL_GPL vmlinux 0x29eba37f current_is_async +EXPORT_SYMBOL_GPL vmlinux 0x29f95a43 regmap_raw_read +EXPORT_SYMBOL_GPL vmlinux 0x29fbebaa dev_pm_opp_put_prop_name +EXPORT_SYMBOL_GPL vmlinux 0x2a198412 tty_get_pgrp +EXPORT_SYMBOL_GPL vmlinux 0x2a2aea17 clk_fixed_rate_ops +EXPORT_SYMBOL_GPL vmlinux 0x2a37423e trace_event_raw_init +EXPORT_SYMBOL_GPL vmlinux 0x2a575099 nvdimm_setup_pfn +EXPORT_SYMBOL_GPL vmlinux 0x2a58ae55 disable_kprobe +EXPORT_SYMBOL_GPL vmlinux 0x2a62cb3a ring_buffer_overrun_cpu +EXPORT_SYMBOL_GPL vmlinux 0x2a641e48 xhci_run +EXPORT_SYMBOL_GPL vmlinux 0x2a678a13 __suspend_report_result +EXPORT_SYMBOL_GPL vmlinux 0x2a6e70c4 trace_event_ignore_this_pid +EXPORT_SYMBOL_GPL vmlinux 0x2a8e2710 handle_bad_irq +EXPORT_SYMBOL_GPL vmlinux 0x2a8f3162 __vfs_removexattr_noperm +EXPORT_SYMBOL_GPL vmlinux 0x2a961a19 gpiod_get_raw_array_value_cansleep +EXPORT_SYMBOL_GPL vmlinux 0x2aa5025b acpi_match_device +EXPORT_SYMBOL_GPL vmlinux 0x2aa68e03 md_allow_write +EXPORT_SYMBOL_GPL vmlinux 0x2aab2f58 crypto_unregister_akcipher +EXPORT_SYMBOL_GPL vmlinux 0x2aadad1a efi_capsule_update +EXPORT_SYMBOL_GPL vmlinux 0x2ab434b2 irq_generic_chip_ops +EXPORT_SYMBOL_GPL vmlinux 0x2ab84821 cpuidle_unregister +EXPORT_SYMBOL_GPL vmlinux 0x2ac2eee2 vmf_insert_pfn_pmd_prot +EXPORT_SYMBOL_GPL vmlinux 0x2ada1856 to_nd_desc +EXPORT_SYMBOL_GPL vmlinux 0x2adf98e0 phy_modify_mmd_changed +EXPORT_SYMBOL_GPL vmlinux 0x2ae686cb irq_chip_unmask_parent +EXPORT_SYMBOL_GPL vmlinux 0x2ae6c308 __devm_irq_alloc_descs +EXPORT_SYMBOL_GPL vmlinux 0x2afdf168 power_supply_put +EXPORT_SYMBOL_GPL vmlinux 0x2aff68f9 perf_guest_get_msrs +EXPORT_SYMBOL_GPL vmlinux 0x2b140cfe tty_ldisc_flush +EXPORT_SYMBOL_GPL vmlinux 0x2b25c845 devm_clk_unregister +EXPORT_SYMBOL_GPL vmlinux 0x2b260a74 __tracepoint_cpu_idle +EXPORT_SYMBOL_GPL vmlinux 0x2b2852b0 kthread_mod_delayed_work +EXPORT_SYMBOL_GPL vmlinux 0x2b366da8 sysfs_remove_bin_file +EXPORT_SYMBOL_GPL vmlinux 0x2b3d3a13 regmap_field_read +EXPORT_SYMBOL_GPL vmlinux 0x2b4509dd devlink_health_reporter_state_update +EXPORT_SYMBOL_GPL vmlinux 0x2b485a25 blkg_prfill_rwstat +EXPORT_SYMBOL_GPL vmlinux 0x2b6150fb power_supply_temp2resist_simple +EXPORT_SYMBOL_GPL vmlinux 0x2b6636f1 netlink_add_tap +EXPORT_SYMBOL_GPL vmlinux 0x2b67b6b7 mds_idle_clear +EXPORT_SYMBOL_GPL vmlinux 0x2b6a37b5 nd_region_provider_data +EXPORT_SYMBOL_GPL vmlinux 0x2b6bf969 ata_bmdma_port_ops +EXPORT_SYMBOL_GPL vmlinux 0x2b6d960d synth_event_cmd_init +EXPORT_SYMBOL_GPL vmlinux 0x2b7fc385 hv_init_clocksource +EXPORT_SYMBOL_GPL vmlinux 0x2b952517 clk_has_parent +EXPORT_SYMBOL_GPL vmlinux 0x2b9997fb atomic_notifier_chain_register +EXPORT_SYMBOL_GPL vmlinux 0x2b99cf20 gpiochip_add_data_with_key +EXPORT_SYMBOL_GPL vmlinux 0x2ba2c3e8 phy_start_machine +EXPORT_SYMBOL_GPL vmlinux 0x2ba3315b dst_cache_set_ip4 +EXPORT_SYMBOL_GPL vmlinux 0x2bbc7a6a crypto_register_acomp +EXPORT_SYMBOL_GPL vmlinux 0x2bc6db28 sbitmap_bitmap_show +EXPORT_SYMBOL_GPL vmlinux 0x2be09d3c acomp_request_alloc +EXPORT_SYMBOL_GPL vmlinux 0x2be43cd3 tcpv6_prot +EXPORT_SYMBOL_GPL vmlinux 0x2c208607 power_supply_is_system_supplied +EXPORT_SYMBOL_GPL vmlinux 0x2c24d28c tpm_calc_ordinal_duration +EXPORT_SYMBOL_GPL vmlinux 0x2c2f5a09 x86_family +EXPORT_SYMBOL_GPL vmlinux 0x2c3054f9 net_inc_ingress_queue +EXPORT_SYMBOL_GPL vmlinux 0x2c635527 arch_invalidate_pmem +EXPORT_SYMBOL_GPL vmlinux 0x2c668c67 nd_cmd_in_size +EXPORT_SYMBOL_GPL vmlinux 0x2c66ac85 devlink_info_serial_number_put +EXPORT_SYMBOL_GPL vmlinux 0x2c79247c sysfs_update_group +EXPORT_SYMBOL_GPL vmlinux 0x2c79b5ca trace_array_printk +EXPORT_SYMBOL_GPL vmlinux 0x2c7db649 irq_dispose_mapping +EXPORT_SYMBOL_GPL vmlinux 0x2c8a4448 pinctrl_get_group_pins +EXPORT_SYMBOL_GPL vmlinux 0x2c8dd6b8 edac_mem_types +EXPORT_SYMBOL_GPL vmlinux 0x2c8eb914 regulator_allow_bypass +EXPORT_SYMBOL_GPL vmlinux 0x2c8f0174 xdp_rxq_info_reg_mem_model +EXPORT_SYMBOL_GPL vmlinux 0x2c9000eb ata_noop_qc_prep +EXPORT_SYMBOL_GPL vmlinux 0x2c9269aa fsnotify_find_mark +EXPORT_SYMBOL_GPL vmlinux 0x2c9b64c1 pci_epc_get_msix +EXPORT_SYMBOL_GPL vmlinux 0x2ca544dc xhci_ext_cap_init +EXPORT_SYMBOL_GPL vmlinux 0x2cadba93 acpi_nfit_ctl +EXPORT_SYMBOL_GPL vmlinux 0x2cb72b89 rio_route_clr_table +EXPORT_SYMBOL_GPL vmlinux 0x2cbbfcee dm_internal_suspend_fast +EXPORT_SYMBOL_GPL vmlinux 0x2ce742b9 inet_csk_route_child_sock +EXPORT_SYMBOL_GPL vmlinux 0x2cea32ee unregister_oldmem_pfn_is_ram +EXPORT_SYMBOL_GPL vmlinux 0x2cead240 __devm_reset_control_get +EXPORT_SYMBOL_GPL vmlinux 0x2d049a99 desc_to_gpio +EXPORT_SYMBOL_GPL vmlinux 0x2d1b02d2 usermodehelper_read_lock_wait +EXPORT_SYMBOL_GPL vmlinux 0x2d1ecf58 acpi_nfit_init +EXPORT_SYMBOL_GPL vmlinux 0x2d1f2131 acpi_subsys_complete +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 0x2d477a6a vring_del_virtqueue +EXPORT_SYMBOL_GPL vmlinux 0x2d480bc9 pm_runtime_get_if_active +EXPORT_SYMBOL_GPL vmlinux 0x2d6aa0f0 arch_apei_enable_cmcff +EXPORT_SYMBOL_GPL vmlinux 0x2d7526e6 hwspin_lock_request_specific +EXPORT_SYMBOL_GPL vmlinux 0x2d8ae6c3 edac_pci_del_device +EXPORT_SYMBOL_GPL vmlinux 0x2d91d0b3 usb_altnum_to_altsetting +EXPORT_SYMBOL_GPL vmlinux 0x2daa2177 x509_free_certificate +EXPORT_SYMBOL_GPL vmlinux 0x2dcc57fb dma_async_device_channel_register +EXPORT_SYMBOL_GPL vmlinux 0x2dd65c68 rt_mutex_unlock +EXPORT_SYMBOL_GPL vmlinux 0x2de6b596 spi_alloc_device +EXPORT_SYMBOL_GPL vmlinux 0x2dfe8849 usb_hub_find_child +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 0x2e25ef1c phy_pm_runtime_get_sync +EXPORT_SYMBOL_GPL vmlinux 0x2e2df5ac ip6_flush_pending_frames +EXPORT_SYMBOL_GPL vmlinux 0x2e2df7f4 irq_remapping_cap +EXPORT_SYMBOL_GPL vmlinux 0x2e43fa9f usb_hcd_platform_shutdown +EXPORT_SYMBOL_GPL vmlinux 0x2e678211 xas_find_conflict +EXPORT_SYMBOL_GPL vmlinux 0x2e8777f3 pci_hp_deregister +EXPORT_SYMBOL_GPL vmlinux 0x2e9741a6 tty_ldisc_ref_wait +EXPORT_SYMBOL_GPL vmlinux 0x2e980d4c uprobe_unregister +EXPORT_SYMBOL_GPL vmlinux 0x2e99640e netdev_rx_handler_unregister +EXPORT_SYMBOL_GPL vmlinux 0x2e9f5353 nfnl_ct_hook +EXPORT_SYMBOL_GPL vmlinux 0x2eba84c3 blk_mq_queue_inflight +EXPORT_SYMBOL_GPL vmlinux 0x2ebb19fd execute_in_process_context +EXPORT_SYMBOL_GPL vmlinux 0x2ebce548 rio_map_inb_region +EXPORT_SYMBOL_GPL vmlinux 0x2ebe3135 cpu_is_hotpluggable +EXPORT_SYMBOL_GPL vmlinux 0x2ec41fe8 dev_pm_qos_expose_flags +EXPORT_SYMBOL_GPL vmlinux 0x2ec71b23 devm_gpio_request +EXPORT_SYMBOL_GPL vmlinux 0x2eda422e pci_msi_unmask_irq +EXPORT_SYMBOL_GPL vmlinux 0x2ee31e60 devfreq_event_add_edev +EXPORT_SYMBOL_GPL vmlinux 0x2ee66058 synth_event_add_next_val +EXPORT_SYMBOL_GPL vmlinux 0x2ee7c52b btree_visitor +EXPORT_SYMBOL_GPL vmlinux 0x2ef554a3 napi_hash_del +EXPORT_SYMBOL_GPL vmlinux 0x2f0c2f6b device_dma_supported +EXPORT_SYMBOL_GPL vmlinux 0x2f0d9053 usb_otg_state_string +EXPORT_SYMBOL_GPL vmlinux 0x2f2c95c4 flush_work +EXPORT_SYMBOL_GPL vmlinux 0x2f3d37fb blk_execute_rq_nowait +EXPORT_SYMBOL_GPL vmlinux 0x2f4113a2 dcookie_register +EXPORT_SYMBOL_GPL vmlinux 0x2f4880df static_key_slow_dec +EXPORT_SYMBOL_GPL vmlinux 0x2f509aee __phy_modify_mmd +EXPORT_SYMBOL_GPL vmlinux 0x2f50a55c pingv6_ops +EXPORT_SYMBOL_GPL vmlinux 0x2f5fce02 fib_rule_matchall +EXPORT_SYMBOL_GPL vmlinux 0x2f63c4de dax_region_put +EXPORT_SYMBOL_GPL vmlinux 0x2f64415f unregister_acpi_hed_notifier +EXPORT_SYMBOL_GPL vmlinux 0x2f8092a4 tcp_unregister_congestion_control +EXPORT_SYMBOL_GPL vmlinux 0x2f92f58e ata_std_sched_eh +EXPORT_SYMBOL_GPL vmlinux 0x2f9b0c75 skb_pull_rcsum +EXPORT_SYMBOL_GPL vmlinux 0x2fab7823 blk_mq_start_stopped_hw_queue +EXPORT_SYMBOL_GPL vmlinux 0x2faeeb45 dev_pm_qos_hide_latency_limit +EXPORT_SYMBOL_GPL vmlinux 0x2fb72e9b sbitmap_init_node +EXPORT_SYMBOL_GPL vmlinux 0x2fc4f368 fsl_mc_device_group +EXPORT_SYMBOL_GPL vmlinux 0x2fdcfd28 smca_get_long_name +EXPORT_SYMBOL_GPL vmlinux 0x2fe3776b kthread_use_mm +EXPORT_SYMBOL_GPL vmlinux 0x2fea9989 usb_hcd_pci_probe +EXPORT_SYMBOL_GPL vmlinux 0x2fed51f4 sysfs_break_active_protection +EXPORT_SYMBOL_GPL vmlinux 0x30148c1d bdev_disk_changed +EXPORT_SYMBOL_GPL vmlinux 0x301efb32 gpiod_set_consumer_name +EXPORT_SYMBOL_GPL vmlinux 0x30283b68 usb_get_maximum_speed +EXPORT_SYMBOL_GPL vmlinux 0x30313796 edac_pci_free_ctl_info +EXPORT_SYMBOL_GPL vmlinux 0x303237b8 ata_qc_complete +EXPORT_SYMBOL_GPL vmlinux 0x304f107a fsnotify_put_group +EXPORT_SYMBOL_GPL vmlinux 0x304f474b device_link_del +EXPORT_SYMBOL_GPL vmlinux 0x305a4470 wm831x_reg_unlock +EXPORT_SYMBOL_GPL vmlinux 0x3061cfce ring_buffer_entries_cpu +EXPORT_SYMBOL_GPL vmlinux 0x306f5576 pkcs7_verify +EXPORT_SYMBOL_GPL vmlinux 0x3080a51b balloon_page_list_enqueue +EXPORT_SYMBOL_GPL vmlinux 0x30876277 pm_generic_resume +EXPORT_SYMBOL_GPL vmlinux 0x309235b3 iommu_sva_get_pasid +EXPORT_SYMBOL_GPL vmlinux 0x30a2fa8f devlink_port_params_unregister +EXPORT_SYMBOL_GPL vmlinux 0x30aebfa4 iommu_aux_get_pasid +EXPORT_SYMBOL_GPL vmlinux 0x30bd8cbf kernel_read_file_from_path +EXPORT_SYMBOL_GPL vmlinux 0x30cf804f slow_virt_to_phys +EXPORT_SYMBOL_GPL vmlinux 0x30dcd110 ata_sas_port_start +EXPORT_SYMBOL_GPL vmlinux 0x30e05c4c set_cpus_allowed_ptr +EXPORT_SYMBOL_GPL vmlinux 0x30e1ec25 apei_map_generic_address +EXPORT_SYMBOL_GPL vmlinux 0x30e42163 tick_nohz_dep_clear_cpu +EXPORT_SYMBOL_GPL vmlinux 0x30e80638 tty_ldisc_release +EXPORT_SYMBOL_GPL vmlinux 0x30f97c53 rio_release_inb_mbox +EXPORT_SYMBOL_GPL vmlinux 0x31028beb acpi_create_platform_device +EXPORT_SYMBOL_GPL vmlinux 0x310663a8 component_bind_all +EXPORT_SYMBOL_GPL vmlinux 0x31128b8e hv_remove_kexec_handler +EXPORT_SYMBOL_GPL vmlinux 0x31266931 con_debug_leave +EXPORT_SYMBOL_GPL vmlinux 0x313a5fba blk_freeze_queue_start +EXPORT_SYMBOL_GPL vmlinux 0x31414159 ip_tunnel_get_stats64 +EXPORT_SYMBOL_GPL vmlinux 0x314a275f crypto_aead_setkey +EXPORT_SYMBOL_GPL vmlinux 0x31619c41 iommu_device_unlink +EXPORT_SYMBOL_GPL vmlinux 0x31633083 nf_ipv6_ops +EXPORT_SYMBOL_GPL vmlinux 0x31785f08 __tracepoint_br_fdb_add +EXPORT_SYMBOL_GPL vmlinux 0x317f94dc ip_fib_metrics_init +EXPORT_SYMBOL_GPL vmlinux 0x31839ad3 software_node_register_nodes +EXPORT_SYMBOL_GPL vmlinux 0x31916206 devres_open_group +EXPORT_SYMBOL_GPL vmlinux 0x3192d768 cpufreq_remove_update_util_hook +EXPORT_SYMBOL_GPL vmlinux 0x31a106c7 sfp_bus_find_fwnode +EXPORT_SYMBOL_GPL vmlinux 0x31a95e8b ring_buffer_record_enable_cpu +EXPORT_SYMBOL_GPL vmlinux 0x31aee135 spi_unregister_device +EXPORT_SYMBOL_GPL vmlinux 0x31c22fa9 __rio_local_read_config_32 +EXPORT_SYMBOL_GPL vmlinux 0x31c7970f pciserial_suspend_ports +EXPORT_SYMBOL_GPL vmlinux 0x31ce89dd sched_trace_cfs_rq_avg +EXPORT_SYMBOL_GPL vmlinux 0x31dc3ada dev_pm_domain_start +EXPORT_SYMBOL_GPL vmlinux 0x31e2aaee get_device_system_crosststamp +EXPORT_SYMBOL_GPL vmlinux 0x31e2e77f vmbus_free_mmio +EXPORT_SYMBOL_GPL vmlinux 0x31fd67b2 regmap_multi_reg_write +EXPORT_SYMBOL_GPL vmlinux 0x32191a5c inet_csk_update_pmtu +EXPORT_SYMBOL_GPL vmlinux 0x3221c14f usb_debug_root +EXPORT_SYMBOL_GPL vmlinux 0x3224b2a9 mpi_read_raw_from_sgl +EXPORT_SYMBOL_GPL vmlinux 0x322d5b7f xfrm_audit_state_replay +EXPORT_SYMBOL_GPL vmlinux 0x3232c99b mmu_notifier_range_update_to_read_only +EXPORT_SYMBOL_GPL vmlinux 0x323cbf33 debugfs_rename +EXPORT_SYMBOL_GPL vmlinux 0x324db169 vtime_guest_exit +EXPORT_SYMBOL_GPL vmlinux 0x3254b13e blkg_rwstat_recursive_sum +EXPORT_SYMBOL_GPL vmlinux 0x325b6c4d replace_page_cache_page +EXPORT_SYMBOL_GPL vmlinux 0x326cefe5 hwpoison_filter_dev_minor +EXPORT_SYMBOL_GPL vmlinux 0x3286bde8 md_bitmap_copy_from_slot +EXPORT_SYMBOL_GPL vmlinux 0x328e3354 __memcpy_flushcache +EXPORT_SYMBOL_GPL vmlinux 0x328e8ff1 acpi_set_modalias +EXPORT_SYMBOL_GPL vmlinux 0x3290e78d trace_array_set_clr_event +EXPORT_SYMBOL_GPL vmlinux 0x32ab06cc irq_percpu_is_enabled +EXPORT_SYMBOL_GPL vmlinux 0x32b3a893 securityfs_remove +EXPORT_SYMBOL_GPL vmlinux 0x32bc0fcf preempt_notifier_dec +EXPORT_SYMBOL_GPL vmlinux 0x32c2bb04 list_lru_walk_node +EXPORT_SYMBOL_GPL vmlinux 0x32c39040 vmbus_driver_unregister +EXPORT_SYMBOL_GPL vmlinux 0x32c3cb4e class_compat_register +EXPORT_SYMBOL_GPL vmlinux 0x32c5345b phy_restore_page +EXPORT_SYMBOL_GPL vmlinux 0x32c6c604 __tracepoint_attach_device_to_domain +EXPORT_SYMBOL_GPL vmlinux 0x32d56663 agp_add_bridge +EXPORT_SYMBOL_GPL vmlinux 0x32e3b076 mxcsr_feature_mask +EXPORT_SYMBOL_GPL vmlinux 0x32f11d86 bpf_sk_storage_diag_put +EXPORT_SYMBOL_GPL vmlinux 0x32f94f62 governor_sysfs_ops +EXPORT_SYMBOL_GPL vmlinux 0x32fcd9fb device_property_read_string +EXPORT_SYMBOL_GPL vmlinux 0x330010b6 cpuset_cgrp_subsys_enabled_key +EXPORT_SYMBOL_GPL vmlinux 0x33051e20 ip6_dst_lookup +EXPORT_SYMBOL_GPL vmlinux 0x33077b86 strp_init +EXPORT_SYMBOL_GPL vmlinux 0x33187792 __phy_modify_mmd_changed +EXPORT_SYMBOL_GPL vmlinux 0x33205162 irqd_cfg +EXPORT_SYMBOL_GPL vmlinux 0x333f664c devm_gpiod_get_optional +EXPORT_SYMBOL_GPL vmlinux 0x33407b1a fork_usermode_blob +EXPORT_SYMBOL_GPL vmlinux 0x3342fb8f fscrypt_show_test_dummy_encryption +EXPORT_SYMBOL_GPL vmlinux 0x33489511 devlink_unregister +EXPORT_SYMBOL_GPL vmlinux 0x335c570f enable_percpu_irq +EXPORT_SYMBOL_GPL vmlinux 0x33679a25 led_set_brightness_nosleep +EXPORT_SYMBOL_GPL vmlinux 0x3372706b __platform_create_bundle +EXPORT_SYMBOL_GPL vmlinux 0x33727789 crypto_skcipher_setkey +EXPORT_SYMBOL_GPL vmlinux 0x33745d2e iptunnel_handle_offloads +EXPORT_SYMBOL_GPL vmlinux 0x3376ab16 pm_stay_awake +EXPORT_SYMBOL_GPL vmlinux 0x33b361bf usb_sg_wait +EXPORT_SYMBOL_GPL vmlinux 0x33c07d7f crypto_create_tfm +EXPORT_SYMBOL_GPL vmlinux 0x33de3372 gen_pool_get +EXPORT_SYMBOL_GPL vmlinux 0x33e2cb70 nvme_enable_ctrl +EXPORT_SYMBOL_GPL vmlinux 0x33eb382f regulator_get_voltage_sel_pickable_regmap +EXPORT_SYMBOL_GPL vmlinux 0x33fbf3b7 nvdimm_bus_register +EXPORT_SYMBOL_GPL vmlinux 0x340db976 regulator_bulk_force_disable +EXPORT_SYMBOL_GPL vmlinux 0x3421ca7c __tracepoint_neigh_event_send_dead +EXPORT_SYMBOL_GPL vmlinux 0x3422b858 crypto_grab_spawn +EXPORT_SYMBOL_GPL vmlinux 0x34331f04 acpi_os_unmap_memory +EXPORT_SYMBOL_GPL vmlinux 0x34407691 crypto_has_ahash +EXPORT_SYMBOL_GPL vmlinux 0x345abd59 gpiod_cansleep +EXPORT_SYMBOL_GPL vmlinux 0x3463aa58 usb_alloc_streams +EXPORT_SYMBOL_GPL vmlinux 0x34675f3a thermal_zone_device_update +EXPORT_SYMBOL_GPL vmlinux 0x34737e76 ata_pci_bmdma_init +EXPORT_SYMBOL_GPL vmlinux 0x347927d7 debugfs_create_x8 +EXPORT_SYMBOL_GPL vmlinux 0x34a31e9d acpi_device_uevent_modalias +EXPORT_SYMBOL_GPL vmlinux 0x34bab869 look_up_OID +EXPORT_SYMBOL_GPL vmlinux 0x34c1a9d9 mddev_unlock +EXPORT_SYMBOL_GPL vmlinux 0x34d7fcc9 pinctrl_find_gpio_range_from_pin_nolock +EXPORT_SYMBOL_GPL vmlinux 0x35018f79 inet_twsk_hashdance +EXPORT_SYMBOL_GPL vmlinux 0x35171fc5 efivar_entry_find +EXPORT_SYMBOL_GPL vmlinux 0x35249bab ata_ehi_push_desc +EXPORT_SYMBOL_GPL vmlinux 0x352ec68b bpf_offload_dev_destroy +EXPORT_SYMBOL_GPL vmlinux 0x35306072 pci_destroy_slot +EXPORT_SYMBOL_GPL vmlinux 0x353bbe51 irq_remove_generic_chip +EXPORT_SYMBOL_GPL vmlinux 0x35400164 pci_epc_set_msix +EXPORT_SYMBOL_GPL vmlinux 0x355bc89a klist_next +EXPORT_SYMBOL_GPL vmlinux 0x3567743b vfio_external_user_iommu_id +EXPORT_SYMBOL_GPL vmlinux 0x356b2201 mbox_request_channel_byname +EXPORT_SYMBOL_GPL vmlinux 0x3586767d phy_optional_get +EXPORT_SYMBOL_GPL vmlinux 0x358ad052 of_phy_put +EXPORT_SYMBOL_GPL vmlinux 0x3591f957 dma_request_chan +EXPORT_SYMBOL_GPL vmlinux 0x359c8538 ata_sff_dma_pause +EXPORT_SYMBOL_GPL vmlinux 0x35a23ae6 serial8250_rx_chars +EXPORT_SYMBOL_GPL vmlinux 0x35aae435 fwnode_graph_get_endpoint_by_id +EXPORT_SYMBOL_GPL vmlinux 0x35abd1e5 iommu_domain_free +EXPORT_SYMBOL_GPL vmlinux 0x35c2d7c1 rio_dev_get +EXPORT_SYMBOL_GPL vmlinux 0x35c4d8ca clean_acked_data_disable +EXPORT_SYMBOL_GPL vmlinux 0x35d3dc46 crypto_alg_sem +EXPORT_SYMBOL_GPL vmlinux 0x35dc6b73 usb_hcd_start_port_resume +EXPORT_SYMBOL_GPL vmlinux 0x35dd8d83 usb_alloc_dev +EXPORT_SYMBOL_GPL vmlinux 0x35e348dc devm_spi_mem_dirmap_destroy +EXPORT_SYMBOL_GPL vmlinux 0x35e46c37 iommu_page_response +EXPORT_SYMBOL_GPL vmlinux 0x35f282b7 blk_register_queue +EXPORT_SYMBOL_GPL vmlinux 0x35f4973b netdev_set_default_ethtool_ops +EXPORT_SYMBOL_GPL vmlinux 0x36075bb5 iommu_group_register_notifier +EXPORT_SYMBOL_GPL vmlinux 0x360c645e of_icc_get +EXPORT_SYMBOL_GPL vmlinux 0x3616fe65 lwtunnel_encap_del_ops +EXPORT_SYMBOL_GPL vmlinux 0x36173c1d phys_to_target_node +EXPORT_SYMBOL_GPL vmlinux 0x361cecd8 fuse_fill_super_common +EXPORT_SYMBOL_GPL vmlinux 0x36242943 switchdev_deferred_process +EXPORT_SYMBOL_GPL vmlinux 0x3629eaf0 rio_add_device +EXPORT_SYMBOL_GPL vmlinux 0x362c0793 ipv6_dup_options +EXPORT_SYMBOL_GPL vmlinux 0x3646c066 ip_tunnel_changelink +EXPORT_SYMBOL_GPL vmlinux 0x3665916f spi_controller_dma_map_mem_op_data +EXPORT_SYMBOL_GPL vmlinux 0x367fa7af pm_clk_add_clk +EXPORT_SYMBOL_GPL vmlinux 0x368d5236 nd_region_dev +EXPORT_SYMBOL_GPL vmlinux 0x368e58a5 security_file_permission +EXPORT_SYMBOL_GPL vmlinux 0x3691f459 invalidate_inode_pages2 +EXPORT_SYMBOL_GPL vmlinux 0x3699ac68 iptunnel_xmit +EXPORT_SYMBOL_GPL vmlinux 0x369fcd70 tracing_snapshot +EXPORT_SYMBOL_GPL vmlinux 0x36af416f nvme_wait_reset +EXPORT_SYMBOL_GPL vmlinux 0x36b07297 sock_diag_register_inet_compat +EXPORT_SYMBOL_GPL vmlinux 0x36b5497e intel_iommu_enabled +EXPORT_SYMBOL_GPL vmlinux 0x36b7665e devm_gpio_free +EXPORT_SYMBOL_GPL vmlinux 0x36e5400f pinctrl_dev_get_devname +EXPORT_SYMBOL_GPL vmlinux 0x36f17706 zap_vma_ptes +EXPORT_SYMBOL_GPL vmlinux 0x36f189a0 __hwspin_trylock +EXPORT_SYMBOL_GPL vmlinux 0x36fb3c4c key_type_logon +EXPORT_SYMBOL_GPL vmlinux 0x3715f9ed __root_device_register +EXPORT_SYMBOL_GPL vmlinux 0x37169f79 cpu_latency_qos_update_request +EXPORT_SYMBOL_GPL vmlinux 0x37228386 blk_mq_pci_map_queues +EXPORT_SYMBOL_GPL vmlinux 0x3743bfb9 nd_cmd_out_size +EXPORT_SYMBOL_GPL vmlinux 0x374c53e1 ata_get_cmd_descript +EXPORT_SYMBOL_GPL vmlinux 0x3750d770 erst_read +EXPORT_SYMBOL_GPL vmlinux 0x3759bda2 wakeup_source_destroy +EXPORT_SYMBOL_GPL vmlinux 0x3773bb73 pci_epf_unregister_driver +EXPORT_SYMBOL_GPL vmlinux 0x3779b7d3 usb_poison_urb +EXPORT_SYMBOL_GPL vmlinux 0x377bbcbc pm_suspend_target_state +EXPORT_SYMBOL_GPL vmlinux 0x37af29c7 fat_scan +EXPORT_SYMBOL_GPL vmlinux 0x37baf626 wm831x_reg_write +EXPORT_SYMBOL_GPL vmlinux 0x37bc3020 rhltable_init +EXPORT_SYMBOL_GPL vmlinux 0x37bf6bb3 vga_default_device +EXPORT_SYMBOL_GPL vmlinux 0x37c39bc2 page_endio +EXPORT_SYMBOL_GPL vmlinux 0x37ea659f add_memory +EXPORT_SYMBOL_GPL vmlinux 0x37eca1ca add_swap_extent +EXPORT_SYMBOL_GPL vmlinux 0x37ed2351 regmap_noinc_read +EXPORT_SYMBOL_GPL vmlinux 0x37ed3e56 fat_remove_entries +EXPORT_SYMBOL_GPL vmlinux 0x37f292c4 pmc_atom_write +EXPORT_SYMBOL_GPL vmlinux 0x37f79a41 pm_clk_init +EXPORT_SYMBOL_GPL vmlinux 0x37fa0d46 fib_nh_common_release +EXPORT_SYMBOL_GPL vmlinux 0x3801776b __ioread32_copy +EXPORT_SYMBOL_GPL vmlinux 0x380c8c4f tcp_enter_memory_pressure +EXPORT_SYMBOL_GPL vmlinux 0x38131766 ata_sff_softreset +EXPORT_SYMBOL_GPL vmlinux 0x381bf308 relay_late_setup_files +EXPORT_SYMBOL_GPL vmlinux 0x38342825 usb_create_hcd +EXPORT_SYMBOL_GPL vmlinux 0x38374815 clear_selection +EXPORT_SYMBOL_GPL vmlinux 0x3837e2e2 acpi_find_child_device +EXPORT_SYMBOL_GPL vmlinux 0x384a8c24 exportfs_encode_inode_fh +EXPORT_SYMBOL_GPL vmlinux 0x386320ca cpufreq_dbs_governor_init +EXPORT_SYMBOL_GPL vmlinux 0x3866e217 nvmem_device_write +EXPORT_SYMBOL_GPL vmlinux 0x38722f80 kernel_fpu_end +EXPORT_SYMBOL_GPL vmlinux 0x387b9b82 crypto_stats_akcipher_decrypt +EXPORT_SYMBOL_GPL vmlinux 0x388df70d acpi_initialize_hp_context +EXPORT_SYMBOL_GPL vmlinux 0x388e5dca usb_acpi_set_power_state +EXPORT_SYMBOL_GPL vmlinux 0x389b64a2 static_key_count +EXPORT_SYMBOL_GPL vmlinux 0x389f816a spi_setup +EXPORT_SYMBOL_GPL vmlinux 0x38aa1397 gpiod_add_lookup_table +EXPORT_SYMBOL_GPL vmlinux 0x38b565b8 shmem_zero_setup +EXPORT_SYMBOL_GPL vmlinux 0x38bc9089 pm_clk_add +EXPORT_SYMBOL_GPL vmlinux 0x38c3ff30 freq_qos_add_notifier +EXPORT_SYMBOL_GPL vmlinux 0x38c6df81 pci_epc_init_notify +EXPORT_SYMBOL_GPL vmlinux 0x38ca7b1d ata_bmdma32_port_ops +EXPORT_SYMBOL_GPL vmlinux 0x38e2635c invalidate_inode_pages2_range +EXPORT_SYMBOL_GPL vmlinux 0x38e5bc5a clk_set_rate_range +EXPORT_SYMBOL_GPL vmlinux 0x38f01483 gen10g_config_aneg +EXPORT_SYMBOL_GPL vmlinux 0x38fa4bfc crypto_register_shashes +EXPORT_SYMBOL_GPL vmlinux 0x39004b41 pci_hp_remove_module_link +EXPORT_SYMBOL_GPL vmlinux 0x39011a3a udp6_lib_lookup +EXPORT_SYMBOL_GPL vmlinux 0x391520d7 spi_controller_resume +EXPORT_SYMBOL_GPL vmlinux 0x393917bc scsi_device_from_queue +EXPORT_SYMBOL_GPL vmlinux 0x394a8891 __regmap_init +EXPORT_SYMBOL_GPL vmlinux 0x395cc9ee devm_fwnode_gpiod_get_index +EXPORT_SYMBOL_GPL vmlinux 0x39682e3c __platform_register_drivers +EXPORT_SYMBOL_GPL vmlinux 0x396e2fd7 ms_hyperv +EXPORT_SYMBOL_GPL vmlinux 0x39885464 dequeue_signal +EXPORT_SYMBOL_GPL vmlinux 0x398b0441 dm_hold +EXPORT_SYMBOL_GPL vmlinux 0x398d6826 dax_writeback_mapping_range +EXPORT_SYMBOL_GPL vmlinux 0x39a2639d ata_acpi_gtm +EXPORT_SYMBOL_GPL vmlinux 0x39a7affc driver_deferred_probe_timeout +EXPORT_SYMBOL_GPL vmlinux 0x39ab6a39 devm_phy_destroy +EXPORT_SYMBOL_GPL vmlinux 0x39ac0b78 pci_probe_reset_bus +EXPORT_SYMBOL_GPL vmlinux 0x39bc1574 xfrm_dev_resume +EXPORT_SYMBOL_GPL vmlinux 0x39cedb1f dma_get_merge_boundary +EXPORT_SYMBOL_GPL vmlinux 0x39cfb517 kstrdup_quotable_file +EXPORT_SYMBOL_GPL vmlinux 0x39ded098 rdma_cgrp_subsys_enabled_key +EXPORT_SYMBOL_GPL vmlinux 0x39e49590 bpf_prog_put +EXPORT_SYMBOL_GPL vmlinux 0x39e61495 nf_logger_request_module +EXPORT_SYMBOL_GPL vmlinux 0x3a001215 device_store_ulong +EXPORT_SYMBOL_GPL vmlinux 0x3a167a6a virtqueue_enable_cb +EXPORT_SYMBOL_GPL vmlinux 0x3a26ed11 sched_clock +EXPORT_SYMBOL_GPL vmlinux 0x3a2e1b39 dm_report_zones_cb +EXPORT_SYMBOL_GPL vmlinux 0x3a32cafe ip_tunnel_dellink +EXPORT_SYMBOL_GPL vmlinux 0x3a3cb99a apply_to_existing_page_range +EXPORT_SYMBOL_GPL vmlinux 0x3a480bf2 agp_remove_bridge +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 0x3a61d012 inet6_hash +EXPORT_SYMBOL_GPL vmlinux 0x3a75a6e3 blk_queue_max_discard_segments +EXPORT_SYMBOL_GPL vmlinux 0x3a877fce usb_hcd_link_urb_to_ep +EXPORT_SYMBOL_GPL vmlinux 0x3a8bbb8e trace_clock_jiffies +EXPORT_SYMBOL_GPL vmlinux 0x3a9be019 asymmetric_key_id_partial +EXPORT_SYMBOL_GPL vmlinux 0x3aa2d77b nvme_start_ctrl +EXPORT_SYMBOL_GPL vmlinux 0x3aa84256 usb_hcd_resume_root_hub +EXPORT_SYMBOL_GPL vmlinux 0x3ab1fec2 platform_msi_domain_alloc_irqs +EXPORT_SYMBOL_GPL vmlinux 0x3aead263 cpufreq_dbs_governor_start +EXPORT_SYMBOL_GPL vmlinux 0x3aead5ad irq_set_chained_handler_and_data +EXPORT_SYMBOL_GPL vmlinux 0x3af578f5 hyperv_report_panic +EXPORT_SYMBOL_GPL vmlinux 0x3b2f4b02 klp_enable_patch +EXPORT_SYMBOL_GPL vmlinux 0x3b3865f1 xfrm_output +EXPORT_SYMBOL_GPL vmlinux 0x3b390014 tty_standard_install +EXPORT_SYMBOL_GPL vmlinux 0x3b5ba9c1 sk_psock_tls_strp_read +EXPORT_SYMBOL_GPL vmlinux 0x3b770279 ip_md_tunnel_xmit +EXPORT_SYMBOL_GPL vmlinux 0x3b91db5b intel_pt_handle_vmx +EXPORT_SYMBOL_GPL vmlinux 0x3b95f543 klp_shadow_free +EXPORT_SYMBOL_GPL vmlinux 0x3b9d9d94 kobject_uevent +EXPORT_SYMBOL_GPL vmlinux 0x3ba01b47 get_compat_sigset +EXPORT_SYMBOL_GPL vmlinux 0x3ba06a56 find_mci_by_dev +EXPORT_SYMBOL_GPL vmlinux 0x3ba94ca3 file_ra_state_init +EXPORT_SYMBOL_GPL vmlinux 0x3bb0dab3 get_dev_pagemap +EXPORT_SYMBOL_GPL vmlinux 0x3bb7dd66 fscrypt_ioctl_remove_key +EXPORT_SYMBOL_GPL vmlinux 0x3bdb5d28 alg_test +EXPORT_SYMBOL_GPL vmlinux 0x3beb67f1 genphy_c45_read_link +EXPORT_SYMBOL_GPL vmlinux 0x3bebc578 acpi_device_modalias +EXPORT_SYMBOL_GPL vmlinux 0x3bf17755 mpi_read_buffer +EXPORT_SYMBOL_GPL vmlinux 0x3bf71a2b pm_runtime_set_memalloc_noio +EXPORT_SYMBOL_GPL vmlinux 0x3bfa5a98 crypto_register_aeads +EXPORT_SYMBOL_GPL vmlinux 0x3c0e8050 hyperv_pcpu_input_arg +EXPORT_SYMBOL_GPL vmlinux 0x3c1c3725 rcu_fwd_progress_check +EXPORT_SYMBOL_GPL vmlinux 0x3c212744 sbitmap_del_wait_queue +EXPORT_SYMBOL_GPL vmlinux 0x3c23a70b gpiod_set_raw_array_value +EXPORT_SYMBOL_GPL vmlinux 0x3c2fd475 regulator_enable +EXPORT_SYMBOL_GPL vmlinux 0x3c4306f0 kernel_kobj +EXPORT_SYMBOL_GPL vmlinux 0x3c5df8ce xdp_attachment_query +EXPORT_SYMBOL_GPL vmlinux 0x3c5e54a8 pcie_bus_configure_settings +EXPORT_SYMBOL_GPL vmlinux 0x3c67b9e0 spi_get_next_queued_message +EXPORT_SYMBOL_GPL vmlinux 0x3c681dc4 ring_buffer_record_disable +EXPORT_SYMBOL_GPL vmlinux 0x3c7cf105 pci_cfg_access_trylock +EXPORT_SYMBOL_GPL vmlinux 0x3cce221e devlink_region_snapshot_id_put +EXPORT_SYMBOL_GPL vmlinux 0x3cd06035 add_input_randomness +EXPORT_SYMBOL_GPL vmlinux 0x3cdfa1b5 pci_user_read_config_byte +EXPORT_SYMBOL_GPL vmlinux 0x3ce0af3c crypto_comp_decompress +EXPORT_SYMBOL_GPL vmlinux 0x3ce31702 rio_register_mport +EXPORT_SYMBOL_GPL vmlinux 0x3ceb76b7 usb_remove_hcd +EXPORT_SYMBOL_GPL vmlinux 0x3d17481d iommu_aux_attach_device +EXPORT_SYMBOL_GPL vmlinux 0x3d1cacfe vfs_test_lock +EXPORT_SYMBOL_GPL vmlinux 0x3d251e1a unregister_kretprobes +EXPORT_SYMBOL_GPL vmlinux 0x3d361e35 __get_task_comm +EXPORT_SYMBOL_GPL vmlinux 0x3d369d42 vfs_writef +EXPORT_SYMBOL_GPL vmlinux 0x3d388324 dpm_resume_end +EXPORT_SYMBOL_GPL vmlinux 0x3d5047b4 pm_generic_poweroff_noirq +EXPORT_SYMBOL_GPL vmlinux 0x3d510a7b rcu_jiffies_till_stall_check +EXPORT_SYMBOL_GPL vmlinux 0x3d6454b6 nvdimm_bus_check_dimm_count +EXPORT_SYMBOL_GPL vmlinux 0x3d8baf3b zs_huge_class_size +EXPORT_SYMBOL_GPL vmlinux 0x3d979f51 crypto_register_skcipher +EXPORT_SYMBOL_GPL vmlinux 0x3d9bd3b0 tracing_snapshot_cond +EXPORT_SYMBOL_GPL vmlinux 0x3dabd1b5 regmap_raw_write +EXPORT_SYMBOL_GPL vmlinux 0x3db408d7 cpufreq_cpu_get_raw +EXPORT_SYMBOL_GPL vmlinux 0x3de9cae1 crypto_remove_final +EXPORT_SYMBOL_GPL vmlinux 0x3def9707 alloc_dax +EXPORT_SYMBOL_GPL vmlinux 0x3df4b4d7 ip_tunnel_uninit +EXPORT_SYMBOL_GPL vmlinux 0x3df82d00 mce_log +EXPORT_SYMBOL_GPL vmlinux 0x3e3c671a synth_event_trace +EXPORT_SYMBOL_GPL vmlinux 0x3e468848 register_virtio_device +EXPORT_SYMBOL_GPL vmlinux 0x3e491454 pinctrl_find_gpio_range_from_pin +EXPORT_SYMBOL_GPL vmlinux 0x3e7080cb mpi_read_from_buffer +EXPORT_SYMBOL_GPL vmlinux 0x3e745daf __netpoll_free +EXPORT_SYMBOL_GPL vmlinux 0x3e868708 crypto_unregister_skciphers +EXPORT_SYMBOL_GPL vmlinux 0x3ea5196d apei_osc_setup +EXPORT_SYMBOL_GPL vmlinux 0x3ec36eef fib_rules_seq_read +EXPORT_SYMBOL_GPL vmlinux 0x3ec4d80c crypto_unregister_rngs +EXPORT_SYMBOL_GPL vmlinux 0x3ec663ee pci_ats_supported +EXPORT_SYMBOL_GPL vmlinux 0x3ed24a5b kthread_unpark +EXPORT_SYMBOL_GPL vmlinux 0x3ed38703 crypto_stats_init +EXPORT_SYMBOL_GPL vmlinux 0x3ed96173 kset_find_obj +EXPORT_SYMBOL_GPL vmlinux 0x3ede3f21 acpi_bus_trim +EXPORT_SYMBOL_GPL vmlinux 0x3ede97dc devm_hwspin_lock_request +EXPORT_SYMBOL_GPL vmlinux 0x3ef051c8 crypto_inc +EXPORT_SYMBOL_GPL vmlinux 0x3efd1889 dax_direct_access +EXPORT_SYMBOL_GPL vmlinux 0x3f06540f fwnode_get_parent +EXPORT_SYMBOL_GPL vmlinux 0x3f1e2ed0 each_symbol_section +EXPORT_SYMBOL_GPL vmlinux 0x3f2196f8 acpi_dev_resource_address_space +EXPORT_SYMBOL_GPL vmlinux 0x3f3de29d devm_irq_alloc_generic_chip +EXPORT_SYMBOL_GPL vmlinux 0x3f4632cd phy_10gbit_features +EXPORT_SYMBOL_GPL vmlinux 0x3f72b16f gpiod_get_array_value +EXPORT_SYMBOL_GPL vmlinux 0x3f7a06e7 gpiod_get_value +EXPORT_SYMBOL_GPL vmlinux 0x3f7e7a32 sdev_evt_send +EXPORT_SYMBOL_GPL vmlinux 0x3f8185b7 shash_free_singlespawn_instance +EXPORT_SYMBOL_GPL vmlinux 0x3f831921 nf_hook_entries_delete_raw +EXPORT_SYMBOL_GPL vmlinux 0x3f83f8d3 rcu_bind_current_to_nocb +EXPORT_SYMBOL_GPL vmlinux 0x3f84bcd7 dax_alive +EXPORT_SYMBOL_GPL vmlinux 0x3f8ab72e devlink_fmsg_bool_put +EXPORT_SYMBOL_GPL vmlinux 0x3f9fbcab phy_pm_runtime_forbid +EXPORT_SYMBOL_GPL vmlinux 0x3fa47070 xfrm_audit_state_add +EXPORT_SYMBOL_GPL vmlinux 0x3fa75154 fat_getattr +EXPORT_SYMBOL_GPL vmlinux 0x3faa8e4e dw_pcie_setup_rc +EXPORT_SYMBOL_GPL vmlinux 0x3fae6ab0 hv_vp_index +EXPORT_SYMBOL_GPL vmlinux 0x3fafadcb register_pernet_device +EXPORT_SYMBOL_GPL vmlinux 0x3fb226f5 generic_fh_to_dentry +EXPORT_SYMBOL_GPL vmlinux 0x3fc3afbd dm_get_md +EXPORT_SYMBOL_GPL vmlinux 0x3fd9bffc device_set_wakeup_enable +EXPORT_SYMBOL_GPL vmlinux 0x3fe35aea irq_bypass_unregister_consumer +EXPORT_SYMBOL_GPL vmlinux 0x3fe6c346 devlink_fmsg_binary_pair_put +EXPORT_SYMBOL_GPL vmlinux 0x3fe89308 phy_reset +EXPORT_SYMBOL_GPL vmlinux 0x3ffdacf3 timerqueue_iterate_next +EXPORT_SYMBOL_GPL vmlinux 0x400a024b acpi_scan_lock_release +EXPORT_SYMBOL_GPL vmlinux 0x40143379 pci_remove_root_bus +EXPORT_SYMBOL_GPL vmlinux 0x40198504 regmap_mmio_detach_clk +EXPORT_SYMBOL_GPL vmlinux 0x401a7752 cpci_hp_unregister_bus +EXPORT_SYMBOL_GPL vmlinux 0x40267068 usb_anchor_resume_wakeups +EXPORT_SYMBOL_GPL vmlinux 0x402fb2e6 fib_rules_dump +EXPORT_SYMBOL_GPL vmlinux 0x4031b9b0 __ndisc_fill_addr_option +EXPORT_SYMBOL_GPL vmlinux 0x403f9529 gpio_request_one +EXPORT_SYMBOL_GPL vmlinux 0x40438a40 rio_register_driver +EXPORT_SYMBOL_GPL vmlinux 0x4065d168 pm_print_active_wakeup_sources +EXPORT_SYMBOL_GPL vmlinux 0x406c4cb1 hrtimer_resolution +EXPORT_SYMBOL_GPL vmlinux 0x406d1e0e blkg_conf_prep +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 0x407f91e3 virtqueue_enable_cb_delayed +EXPORT_SYMBOL_GPL vmlinux 0x408861be platform_find_device_by_driver +EXPORT_SYMBOL_GPL vmlinux 0x4099f919 tun_ptr_free +EXPORT_SYMBOL_GPL vmlinux 0x40a0aafc __flush_tlb_all +EXPORT_SYMBOL_GPL vmlinux 0x40a5752b ping_rcv +EXPORT_SYMBOL_GPL vmlinux 0x40b43bd0 sbitmap_add_wait_queue +EXPORT_SYMBOL_GPL vmlinux 0x40b54ee8 ata_sff_tf_load +EXPORT_SYMBOL_GPL vmlinux 0x40bdf13d dw_pcie_link_set_n_fts +EXPORT_SYMBOL_GPL vmlinux 0x40c5d97b iommu_map_sg_atomic +EXPORT_SYMBOL_GPL vmlinux 0x40e50080 dma_need_sync +EXPORT_SYMBOL_GPL vmlinux 0x40ec74c2 eventfd_ctx_fileget +EXPORT_SYMBOL_GPL vmlinux 0x40f0683e reset_control_put +EXPORT_SYMBOL_GPL vmlinux 0x40f08948 gpiochip_request_own_desc +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 0x4107e183 acpi_subsys_runtime_suspend +EXPORT_SYMBOL_GPL vmlinux 0x4129f5ee kernel_fpu_begin_mask +EXPORT_SYMBOL_GPL vmlinux 0x412bc681 ring_buffer_empty_cpu +EXPORT_SYMBOL_GPL vmlinux 0x4152781f scsi_register_device_handler +EXPORT_SYMBOL_GPL vmlinux 0x41579534 vfio_unregister_iommu_driver +EXPORT_SYMBOL_GPL vmlinux 0x415ad41c __reset_control_get +EXPORT_SYMBOL_GPL vmlinux 0x416697de __unwind_start +EXPORT_SYMBOL_GPL vmlinux 0x4179b6bb irq_chip_ack_parent +EXPORT_SYMBOL_GPL vmlinux 0x41814cb8 dirty_writeback_interval +EXPORT_SYMBOL_GPL vmlinux 0x418873cc irq_bypass_register_producer +EXPORT_SYMBOL_GPL vmlinux 0x41916d13 vxlan_dev_create +EXPORT_SYMBOL_GPL vmlinux 0x41992cd6 get_task_pid +EXPORT_SYMBOL_GPL vmlinux 0x419e7efd sfp_module_stop +EXPORT_SYMBOL_GPL vmlinux 0x41a34593 vfs_fallocate +EXPORT_SYMBOL_GPL vmlinux 0x41af5b9d ip_tunnel_encap_setup +EXPORT_SYMBOL_GPL vmlinux 0x41b200f9 percpu_ref_init +EXPORT_SYMBOL_GPL vmlinux 0x41b6f13c irq_chip_release_resources_parent +EXPORT_SYMBOL_GPL vmlinux 0x41be3e42 __inet_inherit_port +EXPORT_SYMBOL_GPL vmlinux 0x41be42d6 rdev_get_dev +EXPORT_SYMBOL_GPL vmlinux 0x41de5305 devres_remove +EXPORT_SYMBOL_GPL vmlinux 0x41ea817e smpboot_register_percpu_thread +EXPORT_SYMBOL_GPL vmlinux 0x41ed3cec eventfd_ctx_remove_wait_queue +EXPORT_SYMBOL_GPL vmlinux 0x420a6c78 of_hwspin_lock_get_id_byname +EXPORT_SYMBOL_GPL vmlinux 0x420f3d01 nvmem_unregister_notifier +EXPORT_SYMBOL_GPL vmlinux 0x42214614 __ftrace_vbprintk +EXPORT_SYMBOL_GPL vmlinux 0x42230915 sbitmap_any_bit_set +EXPORT_SYMBOL_GPL vmlinux 0x422e1395 blkdev_nr_zones +EXPORT_SYMBOL_GPL vmlinux 0x423f8f54 do_unbind_con_driver +EXPORT_SYMBOL_GPL vmlinux 0x424890de usb_alloc_coherent +EXPORT_SYMBOL_GPL vmlinux 0x42635d55 pm_suspend_global_flags +EXPORT_SYMBOL_GPL vmlinux 0x4277f306 regmap_get_reg_stride +EXPORT_SYMBOL_GPL vmlinux 0x427abfc0 bpf_verifier_log_write +EXPORT_SYMBOL_GPL vmlinux 0x42825ce2 rcu_scheduler_active +EXPORT_SYMBOL_GPL vmlinux 0x4283d1db tcp_reno_cong_avoid +EXPORT_SYMBOL_GPL vmlinux 0x4283d423 wakeup_sources_walk_next +EXPORT_SYMBOL_GPL vmlinux 0x42935147 serial8250_do_shutdown +EXPORT_SYMBOL_GPL vmlinux 0x4295648a find_vpid +EXPORT_SYMBOL_GPL vmlinux 0x42c0e75e ip_route_output_tunnel +EXPORT_SYMBOL_GPL vmlinux 0x42c510bf vfio_virqfd_enable +EXPORT_SYMBOL_GPL vmlinux 0x42d14017 ata_bmdma_qc_issue +EXPORT_SYMBOL_GPL vmlinux 0x42e22e52 transport_setup_device +EXPORT_SYMBOL_GPL vmlinux 0x42e445f6 clk_mux_val_to_index +EXPORT_SYMBOL_GPL vmlinux 0x42e53cbc nvme_start_queues +EXPORT_SYMBOL_GPL vmlinux 0x42e9d0da ring_buffer_unlock_commit +EXPORT_SYMBOL_GPL vmlinux 0x42edac10 __cpufreq_driver_target +EXPORT_SYMBOL_GPL vmlinux 0x42f728aa mctrl_gpio_get_outputs +EXPORT_SYMBOL_GPL vmlinux 0x42fba1c7 __sbitmap_queue_get_shallow +EXPORT_SYMBOL_GPL vmlinux 0x430b6bd4 net_ns_get_ownership +EXPORT_SYMBOL_GPL vmlinux 0x431ca263 blkcg_policy_unregister +EXPORT_SYMBOL_GPL vmlinux 0x43365af5 dw8250_setup_port +EXPORT_SYMBOL_GPL vmlinux 0x4337fad9 tpm_is_tpm2 +EXPORT_SYMBOL_GPL vmlinux 0x433ae21c user_preparse +EXPORT_SYMBOL_GPL vmlinux 0x4341a699 platform_bus_type +EXPORT_SYMBOL_GPL vmlinux 0x43420d10 watchdog_register_device +EXPORT_SYMBOL_GPL vmlinux 0x43479316 pinctrl_unregister +EXPORT_SYMBOL_GPL vmlinux 0x4351dd0d devm_pci_epc_destroy +EXPORT_SYMBOL_GPL vmlinux 0x4370c97c skb_gso_validate_mac_len +EXPORT_SYMBOL_GPL vmlinux 0x4375021f __rtc_register_device +EXPORT_SYMBOL_GPL vmlinux 0x43753583 skb_partial_csum_set +EXPORT_SYMBOL_GPL vmlinux 0x437eb1df ipv6_mod_enabled +EXPORT_SYMBOL_GPL vmlinux 0x438033da crypto_skcipher_encrypt +EXPORT_SYMBOL_GPL vmlinux 0x438d8df2 iova_cache_get +EXPORT_SYMBOL_GPL vmlinux 0x4391d59e iomap_finish_ioends +EXPORT_SYMBOL_GPL vmlinux 0x43aa319e lease_register_notifier +EXPORT_SYMBOL_GPL vmlinux 0x43bc4dcc phy_resolve_aneg_pause +EXPORT_SYMBOL_GPL vmlinux 0x43c003fa gpiochip_enable_irq +EXPORT_SYMBOL_GPL vmlinux 0x43de4f24 smp_call_function_single_async +EXPORT_SYMBOL_GPL vmlinux 0x43e603df acpi_cppc_processor_probe +EXPORT_SYMBOL_GPL vmlinux 0x43f56e82 ata_xfer_mode2shift +EXPORT_SYMBOL_GPL vmlinux 0x43f81957 clk_round_rate +EXPORT_SYMBOL_GPL vmlinux 0x43f89158 dma_buf_vmap +EXPORT_SYMBOL_GPL vmlinux 0x4420ef66 usb_alloc_urb +EXPORT_SYMBOL_GPL vmlinux 0x44256af4 blk_req_needs_zone_write_lock +EXPORT_SYMBOL_GPL vmlinux 0x442655ef pinctrl_utils_add_map_mux +EXPORT_SYMBOL_GPL vmlinux 0x442d89c5 phy_10gbit_fec_features +EXPORT_SYMBOL_GPL vmlinux 0x4435a1a3 rio_release_outb_mbox +EXPORT_SYMBOL_GPL vmlinux 0x444b50e1 ata_sas_queuecmd +EXPORT_SYMBOL_GPL vmlinux 0x444f041a skb_zerocopy +EXPORT_SYMBOL_GPL vmlinux 0x445a09c0 nvmem_device_cell_write +EXPORT_SYMBOL_GPL vmlinux 0x4460c659 kill_device +EXPORT_SYMBOL_GPL vmlinux 0x448177f8 msi_desc_to_pci_sysdata +EXPORT_SYMBOL_GPL vmlinux 0x4484a5a4 wait_for_device_probe +EXPORT_SYMBOL_GPL vmlinux 0x4491c98f fwnode_device_is_available +EXPORT_SYMBOL_GPL vmlinux 0x449a9bb2 sock_diag_unregister +EXPORT_SYMBOL_GPL vmlinux 0x44a2ee39 dev_pm_opp_set_rate +EXPORT_SYMBOL_GPL vmlinux 0x44b029fd power_supply_class +EXPORT_SYMBOL_GPL vmlinux 0x44ba4509 devlink_params_publish +EXPORT_SYMBOL_GPL vmlinux 0x44bae227 bit_wait_timeout +EXPORT_SYMBOL_GPL vmlinux 0x44c801ef task_cputime_adjusted +EXPORT_SYMBOL_GPL vmlinux 0x44c92827 regulator_is_equal +EXPORT_SYMBOL_GPL vmlinux 0x44cf8cf0 blk_zone_cond_str +EXPORT_SYMBOL_GPL vmlinux 0x44e25387 vfio_external_group_match_file +EXPORT_SYMBOL_GPL vmlinux 0x44f3081d fscrypt_set_test_dummy_encryption +EXPORT_SYMBOL_GPL vmlinux 0x45000cfb sysfs_remove_link_from_group +EXPORT_SYMBOL_GPL vmlinux 0x450110e8 perf_assign_events +EXPORT_SYMBOL_GPL vmlinux 0x4507f4a8 cpuhp_tasks_frozen +EXPORT_SYMBOL_GPL vmlinux 0x4531624f usb_decode_ctrl +EXPORT_SYMBOL_GPL vmlinux 0x4531ab62 copy_from_kernel_nofault +EXPORT_SYMBOL_GPL vmlinux 0x453b7b1b tty_encode_baud_rate +EXPORT_SYMBOL_GPL vmlinux 0x454144b8 __fscrypt_prepare_symlink +EXPORT_SYMBOL_GPL vmlinux 0x4541fe0d mtrr_state +EXPORT_SYMBOL_GPL vmlinux 0x45489922 pci_set_cacheline_size +EXPORT_SYMBOL_GPL vmlinux 0x454dc8c5 devlink_health_reporter_create +EXPORT_SYMBOL_GPL vmlinux 0x45558f56 clk_unregister_fixed_factor +EXPORT_SYMBOL_GPL vmlinux 0x456f90c0 devm_pinctrl_unregister +EXPORT_SYMBOL_GPL vmlinux 0x457594fa crypto_alg_list +EXPORT_SYMBOL_GPL vmlinux 0x45822284 devlink_dpipe_entry_ctx_close +EXPORT_SYMBOL_GPL vmlinux 0x459ff082 rio_mport_initialize +EXPORT_SYMBOL_GPL vmlinux 0x45cafbbd devlink_resource_occ_get_unregister +EXPORT_SYMBOL_GPL vmlinux 0x45d9da64 irq_domain_remove_sim +EXPORT_SYMBOL_GPL vmlinux 0x46013233 net_dec_ingress_queue +EXPORT_SYMBOL_GPL vmlinux 0x4610706f of_reset_control_array_get +EXPORT_SYMBOL_GPL vmlinux 0x4639bcda acpi_nfit_shutdown +EXPORT_SYMBOL_GPL vmlinux 0x463d8290 __irq_alloc_descs +EXPORT_SYMBOL_GPL vmlinux 0x463e65f5 inet_csk_clone_lock +EXPORT_SYMBOL_GPL vmlinux 0x4654146c __fib_lookup +EXPORT_SYMBOL_GPL vmlinux 0x465bb677 regmap_exit +EXPORT_SYMBOL_GPL vmlinux 0x465c1b75 disk_part_iter_exit +EXPORT_SYMBOL_GPL vmlinux 0x465d4b85 pci_load_saved_state +EXPORT_SYMBOL_GPL vmlinux 0x465ed9c0 pm_relax +EXPORT_SYMBOL_GPL vmlinux 0x466093fb init_iova_flush_queue +EXPORT_SYMBOL_GPL vmlinux 0x4670b852 crypto_register_shash +EXPORT_SYMBOL_GPL vmlinux 0x467c1bde l3mdev_update_flow +EXPORT_SYMBOL_GPL vmlinux 0x467fcf0f irq_domain_translate_onecell +EXPORT_SYMBOL_GPL vmlinux 0x468626ba devm_memunmap_pages +EXPORT_SYMBOL_GPL vmlinux 0x4688d7ec pvclock_gtod_unregister_notifier +EXPORT_SYMBOL_GPL vmlinux 0x468f4fe8 fwnode_property_read_string +EXPORT_SYMBOL_GPL vmlinux 0x46a417ca vmbus_proto_version +EXPORT_SYMBOL_GPL vmlinux 0x46a6c9ef hv_get_tsc_page +EXPORT_SYMBOL_GPL vmlinux 0x46aa09ca scsi_dh_attached_handler_name +EXPORT_SYMBOL_GPL vmlinux 0x46ac38d6 trace_array_put +EXPORT_SYMBOL_GPL vmlinux 0x46b3c51a gpiochip_get_desc +EXPORT_SYMBOL_GPL vmlinux 0x46c21ef1 scsi_host_unblock +EXPORT_SYMBOL_GPL vmlinux 0x46c5be22 clk_multiplier_ops +EXPORT_SYMBOL_GPL vmlinux 0x46da7b68 wm5102_spi_regmap +EXPORT_SYMBOL_GPL vmlinux 0x46f345e8 phy_save_page +EXPORT_SYMBOL_GPL vmlinux 0x46f42be0 devlink_fmsg_u8_put +EXPORT_SYMBOL_GPL vmlinux 0x46f99552 usb_hcd_unmap_urb_for_dma +EXPORT_SYMBOL_GPL vmlinux 0x470b389b regulator_bulk_unregister_supply_alias +EXPORT_SYMBOL_GPL vmlinux 0x47229b5c gpio_request +EXPORT_SYMBOL_GPL vmlinux 0x4723fd42 edac_mc_free +EXPORT_SYMBOL_GPL vmlinux 0x4727b7ce usb_driver_release_interface +EXPORT_SYMBOL_GPL vmlinux 0x472a7eca device_set_wakeup_capable +EXPORT_SYMBOL_GPL vmlinux 0x4730e180 sock_diag_put_meminfo +EXPORT_SYMBOL_GPL vmlinux 0x47313513 devprop_gpiochip_set_names +EXPORT_SYMBOL_GPL vmlinux 0x474456af pci_epc_mem_alloc_addr +EXPORT_SYMBOL_GPL vmlinux 0x474f244d tun_get_socket +EXPORT_SYMBOL_GPL vmlinux 0x47570b8a __clk_determine_rate +EXPORT_SYMBOL_GPL vmlinux 0x476167c8 remove_memory +EXPORT_SYMBOL_GPL vmlinux 0x4761f17c register_netevent_notifier +EXPORT_SYMBOL_GPL vmlinux 0x477a59ce sysfs_remove_link +EXPORT_SYMBOL_GPL vmlinux 0x47847519 badblocks_store +EXPORT_SYMBOL_GPL vmlinux 0x4784eb07 mmu_interval_notifier_insert_locked +EXPORT_SYMBOL_GPL vmlinux 0x47884890 system_power_efficient_wq +EXPORT_SYMBOL_GPL vmlinux 0x479f70d6 l3mdev_master_ifindex_rcu +EXPORT_SYMBOL_GPL vmlinux 0x479f7d4b clk_bulk_disable +EXPORT_SYMBOL_GPL vmlinux 0x47a021d7 rtnl_put_cacheinfo +EXPORT_SYMBOL_GPL vmlinux 0x47a42be4 efivar_entry_iter +EXPORT_SYMBOL_GPL vmlinux 0x47a63c1a sysfs_create_groups +EXPORT_SYMBOL_GPL vmlinux 0x47a89953 __tracepoint_pelt_cfs_tp +EXPORT_SYMBOL_GPL vmlinux 0x47aad3b9 have_governor_per_policy +EXPORT_SYMBOL_GPL vmlinux 0x47b02fb4 dev_pm_opp_set_regulators +EXPORT_SYMBOL_GPL vmlinux 0x47d0eea2 acpi_lpat_temp_to_raw +EXPORT_SYMBOL_GPL vmlinux 0x47d5fdb4 crypto_inst_setname +EXPORT_SYMBOL_GPL vmlinux 0x47de0dc7 clk_unregister_mux +EXPORT_SYMBOL_GPL vmlinux 0x47f2b7f0 evm_verifyxattr +EXPORT_SYMBOL_GPL vmlinux 0x47f6caed rio_get_device +EXPORT_SYMBOL_GPL vmlinux 0x47fb0ffe sata_scr_write_flush +EXPORT_SYMBOL_GPL vmlinux 0x480720a9 acpi_device_fwnode_ops +EXPORT_SYMBOL_GPL vmlinux 0x4828e77b acpi_scan_lock_acquire +EXPORT_SYMBOL_GPL vmlinux 0x4832a259 tty_put_char +EXPORT_SYMBOL_GPL vmlinux 0x4832a48c edac_device_alloc_ctl_info +EXPORT_SYMBOL_GPL vmlinux 0x4832b5de inet_hash +EXPORT_SYMBOL_GPL vmlinux 0x483c5a12 __ip6_datagram_connect +EXPORT_SYMBOL_GPL vmlinux 0x4879f6e3 platform_get_irq_byname_optional +EXPORT_SYMBOL_GPL vmlinux 0x487cec1e tty_init_termios +EXPORT_SYMBOL_GPL vmlinux 0x487efa90 device_property_read_string_array +EXPORT_SYMBOL_GPL vmlinux 0x488f484e nvme_sync_io_queues +EXPORT_SYMBOL_GPL vmlinux 0x488fb854 fat_alloc_new_dir +EXPORT_SYMBOL_GPL vmlinux 0x4890aa15 power_supply_external_power_changed +EXPORT_SYMBOL_GPL vmlinux 0x4897f94d __scsi_init_queue +EXPORT_SYMBOL_GPL vmlinux 0x489e5355 nf_checksum +EXPORT_SYMBOL_GPL vmlinux 0x48a3d20b mctrl_gpio_get +EXPORT_SYMBOL_GPL vmlinux 0x48ba03e0 edac_pci_handle_pe +EXPORT_SYMBOL_GPL vmlinux 0x48c124ec pci_walk_bus +EXPORT_SYMBOL_GPL vmlinux 0x48cf6de8 device_match_devt +EXPORT_SYMBOL_GPL vmlinux 0x48cfbefc rio_local_get_device_id +EXPORT_SYMBOL_GPL vmlinux 0x48e635d3 __set_page_dirty +EXPORT_SYMBOL_GPL vmlinux 0x48f49400 apei_hest_parse +EXPORT_SYMBOL_GPL vmlinux 0x49207bd8 ip6_route_output_flags_noref +EXPORT_SYMBOL_GPL vmlinux 0x4920b479 ip_tunnel_init +EXPORT_SYMBOL_GPL vmlinux 0x49224181 nvme_reset_wq +EXPORT_SYMBOL_GPL vmlinux 0x49242bc7 freezer_cgrp_subsys_on_dfl_key +EXPORT_SYMBOL_GPL vmlinux 0x4939ebcd numa_map_to_online_node +EXPORT_SYMBOL_GPL vmlinux 0x49414d56 crypto_alloc_akcipher +EXPORT_SYMBOL_GPL vmlinux 0x49447683 sata_pmp_error_handler +EXPORT_SYMBOL_GPL vmlinux 0x4946a633 genphy_c45_pma_read_abilities +EXPORT_SYMBOL_GPL vmlinux 0x49576844 serial8250_do_set_ldisc +EXPORT_SYMBOL_GPL vmlinux 0x49650b25 cpufreq_generic_init +EXPORT_SYMBOL_GPL vmlinux 0x4985770c regulator_set_active_discharge_regmap +EXPORT_SYMBOL_GPL vmlinux 0x4987499f usb_clear_halt +EXPORT_SYMBOL_GPL vmlinux 0x499043d3 crypto_init_queue +EXPORT_SYMBOL_GPL vmlinux 0x49951708 sev_enable_key +EXPORT_SYMBOL_GPL vmlinux 0x499bbf57 nfit_get_smbios_id +EXPORT_SYMBOL_GPL vmlinux 0x49a96a66 device_show_bool +EXPORT_SYMBOL_GPL vmlinux 0x49aacd83 pcie_port_bus_type +EXPORT_SYMBOL_GPL vmlinux 0x49bffbc5 fwnode_property_read_u32_array +EXPORT_SYMBOL_GPL vmlinux 0x49c14a61 ex_handler_fault +EXPORT_SYMBOL_GPL vmlinux 0x49c5400d kobj_sysfs_ops +EXPORT_SYMBOL_GPL vmlinux 0x49ce3365 gpiochip_irq_unmap +EXPORT_SYMBOL_GPL vmlinux 0x49d001c5 crypto_stats_kpp_compute_shared_secret +EXPORT_SYMBOL_GPL vmlinux 0x49db5c64 __tracepoint_neigh_event_send_done +EXPORT_SYMBOL_GPL vmlinux 0x49df9707 rio_request_dma +EXPORT_SYMBOL_GPL vmlinux 0x49e96999 cond_synchronize_rcu +EXPORT_SYMBOL_GPL vmlinux 0x4a0fd2c7 __inet_lookup_established +EXPORT_SYMBOL_GPL vmlinux 0x4a11ff73 driver_attach +EXPORT_SYMBOL_GPL vmlinux 0x4a17ed66 sysrq_mask +EXPORT_SYMBOL_GPL vmlinux 0x4a2108ad devm_gpiod_get_from_of_node +EXPORT_SYMBOL_GPL vmlinux 0x4a22db44 ata_sff_port_ops +EXPORT_SYMBOL_GPL vmlinux 0x4a420d09 acpi_bus_detach_private_data +EXPORT_SYMBOL_GPL vmlinux 0x4a555b6d tty_perform_flush +EXPORT_SYMBOL_GPL vmlinux 0x4a8b324a sysfs_remove_group +EXPORT_SYMBOL_GPL vmlinux 0x4aa349cb kvm_clock +EXPORT_SYMBOL_GPL vmlinux 0x4aa58bea inet_getpeer +EXPORT_SYMBOL_GPL vmlinux 0x4ac161c0 dma_buf_map_attachment +EXPORT_SYMBOL_GPL vmlinux 0x4ad7cf10 __platform_driver_register +EXPORT_SYMBOL_GPL vmlinux 0x4b04a738 regmap_can_raw_write +EXPORT_SYMBOL_GPL vmlinux 0x4b094410 ata_cable_40wire +EXPORT_SYMBOL_GPL vmlinux 0x4b2210b8 vmbus_send_tl_connect_request +EXPORT_SYMBOL_GPL vmlinux 0x4b29c78b transport_add_device +EXPORT_SYMBOL_GPL vmlinux 0x4b3692c9 intel_pmic_install_opregion_handler +EXPORT_SYMBOL_GPL vmlinux 0x4b38cf5b nvme_start_freeze +EXPORT_SYMBOL_GPL vmlinux 0x4b4213b5 pci_sriov_configure_simple +EXPORT_SYMBOL_GPL vmlinux 0x4b51f74c ata_xfer_mode2mask +EXPORT_SYMBOL_GPL vmlinux 0x4b61434a dev_pm_qos_add_notifier +EXPORT_SYMBOL_GPL vmlinux 0x4b76125e watchdog_notify_pretimeout +EXPORT_SYMBOL_GPL vmlinux 0x4b762828 start_thread +EXPORT_SYMBOL_GPL vmlinux 0x4b7cd2de led_trigger_register_simple +EXPORT_SYMBOL_GPL vmlinux 0x4b820d73 virtqueue_get_vring +EXPORT_SYMBOL_GPL vmlinux 0x4b96017c __tcp_send_ack +EXPORT_SYMBOL_GPL vmlinux 0x4b974a4d __spi_alloc_controller +EXPORT_SYMBOL_GPL vmlinux 0x4bea5fac tty_register_device_attr +EXPORT_SYMBOL_GPL vmlinux 0x4c0077bc devlink_dpipe_table_resource_set +EXPORT_SYMBOL_GPL vmlinux 0x4c0477d3 ata_bmdma_stop +EXPORT_SYMBOL_GPL vmlinux 0x4c0ebfc2 dax_layout_busy_page +EXPORT_SYMBOL_GPL vmlinux 0x4c1d54eb icc_std_aggregate +EXPORT_SYMBOL_GPL vmlinux 0x4c309c1e device_unregister +EXPORT_SYMBOL_GPL vmlinux 0x4c47fcf9 xdp_rxq_info_is_reg +EXPORT_SYMBOL_GPL vmlinux 0x4c4bef2b __dma_request_channel +EXPORT_SYMBOL_GPL vmlinux 0x4c52bef0 pm_generic_thaw +EXPORT_SYMBOL_GPL vmlinux 0x4c58f00c ata_sff_check_status +EXPORT_SYMBOL_GPL vmlinux 0x4c680bd0 hwmon_device_register_with_groups +EXPORT_SYMBOL_GPL vmlinux 0x4c6fab78 blk_mq_init_queue_data +EXPORT_SYMBOL_GPL vmlinux 0x4c762b5c x86_stepping +EXPORT_SYMBOL_GPL vmlinux 0x4c8d0f2d devlink_trap_groups_register +EXPORT_SYMBOL_GPL vmlinux 0x4c8dac36 dev_pm_opp_get_voltage +EXPORT_SYMBOL_GPL vmlinux 0x4ca5b834 sata_pmp_qc_defer_cmd_switch +EXPORT_SYMBOL_GPL vmlinux 0x4cacda00 of_phy_provider_unregister +EXPORT_SYMBOL_GPL vmlinux 0x4cc1498e blk_ksm_init +EXPORT_SYMBOL_GPL vmlinux 0x4cc95536 regmap_async_complete +EXPORT_SYMBOL_GPL vmlinux 0x4cccfba5 bsg_job_get +EXPORT_SYMBOL_GPL vmlinux 0x4cffcb2c scsi_target_block +EXPORT_SYMBOL_GPL vmlinux 0x4d0015e2 cpu_hotplug_disable +EXPORT_SYMBOL_GPL vmlinux 0x4d112e9a __kernel_write +EXPORT_SYMBOL_GPL vmlinux 0x4d202b8c __xas_prev +EXPORT_SYMBOL_GPL vmlinux 0x4d330f81 devm_hwspin_lock_unregister +EXPORT_SYMBOL_GPL vmlinux 0x4d371862 device_attach +EXPORT_SYMBOL_GPL vmlinux 0x4d4d7b79 blk_mq_map_queues +EXPORT_SYMBOL_GPL vmlinux 0x4d523a1b serial8250_read_char +EXPORT_SYMBOL_GPL vmlinux 0x4d64f814 led_compose_name +EXPORT_SYMBOL_GPL vmlinux 0x4d66fe81 sysfs_change_owner +EXPORT_SYMBOL_GPL vmlinux 0x4d6d0bbc iommu_group_ref_get +EXPORT_SYMBOL_GPL vmlinux 0x4d7f470b fb_deferred_io_open +EXPORT_SYMBOL_GPL vmlinux 0x4d879bc8 dev_pm_opp_is_turbo +EXPORT_SYMBOL_GPL vmlinux 0x4d8a96ab xas_set_mark +EXPORT_SYMBOL_GPL vmlinux 0x4d961726 crypto_alloc_skcipher +EXPORT_SYMBOL_GPL vmlinux 0x4da1f4a7 list_lru_del +EXPORT_SYMBOL_GPL vmlinux 0x4da53c58 skb_send_sock_locked +EXPORT_SYMBOL_GPL vmlinux 0x4da63411 register_net_sysctl +EXPORT_SYMBOL_GPL vmlinux 0x4dc447cf nexthop_find_by_id +EXPORT_SYMBOL_GPL vmlinux 0x4dd9d14d cn_netlink_send_mult +EXPORT_SYMBOL_GPL vmlinux 0x4de17ab3 usb_state_string +EXPORT_SYMBOL_GPL vmlinux 0x4de27caf inet_csk_listen_stop +EXPORT_SYMBOL_GPL vmlinux 0x4e17c613 ata_sff_queue_delayed_work +EXPORT_SYMBOL_GPL vmlinux 0x4e1e6292 serial8250_do_startup +EXPORT_SYMBOL_GPL vmlinux 0x4e336595 inet6_compat_ioctl +EXPORT_SYMBOL_GPL vmlinux 0x4e37f10c usb_disable_autosuspend +EXPORT_SYMBOL_GPL vmlinux 0x4e49ce60 ata_bmdma_port_start +EXPORT_SYMBOL_GPL vmlinux 0x4e4c37e2 freq_qos_remove_notifier +EXPORT_SYMBOL_GPL vmlinux 0x4e5d3f0d icc_disable +EXPORT_SYMBOL_GPL vmlinux 0x4e65d085 rt_mutex_lock +EXPORT_SYMBOL_GPL vmlinux 0x4e96bf9a proc_create_net_single_write +EXPORT_SYMBOL_GPL vmlinux 0x4eac5fc1 cpu_mitigations_auto_nosmt +EXPORT_SYMBOL_GPL vmlinux 0x4eb6f256 led_trigger_unregister_simple +EXPORT_SYMBOL_GPL vmlinux 0x4ebe3393 irq_get_domain_generic_chip +EXPORT_SYMBOL_GPL vmlinux 0x4ece3615 blocking_notifier_chain_unregister +EXPORT_SYMBOL_GPL vmlinux 0x4ed4b78b fuse_simple_background +EXPORT_SYMBOL_GPL vmlinux 0x4ef5bcf4 perf_swevent_get_recursion_context +EXPORT_SYMBOL_GPL vmlinux 0x4ef9d661 ip_valid_fib_dump_req +EXPORT_SYMBOL_GPL vmlinux 0x4f2593f0 btree_update +EXPORT_SYMBOL_GPL vmlinux 0x4f316e43 usb_unlocked_enable_lpm +EXPORT_SYMBOL_GPL vmlinux 0x4f3a9c70 tty_ldisc_receive_buf +EXPORT_SYMBOL_GPL vmlinux 0x4f3b468e uart_insert_char +EXPORT_SYMBOL_GPL vmlinux 0x4f3b5b5a usb_put_dev +EXPORT_SYMBOL_GPL vmlinux 0x4f3fac72 class_compat_remove_link +EXPORT_SYMBOL_GPL vmlinux 0x4f460832 devm_of_phy_get +EXPORT_SYMBOL_GPL vmlinux 0x4f498f36 ata_do_set_mode +EXPORT_SYMBOL_GPL vmlinux 0x4f4a4060 fwnode_gpiod_get_index +EXPORT_SYMBOL_GPL vmlinux 0x4f5504cf sk_msg_free_partial +EXPORT_SYMBOL_GPL vmlinux 0x4f5641c3 security_path_chown +EXPORT_SYMBOL_GPL vmlinux 0x4f5ed756 list_lru_count_one +EXPORT_SYMBOL_GPL vmlinux 0x4f6a07fe show_rcu_gp_kthreads +EXPORT_SYMBOL_GPL vmlinux 0x4f72a987 uart_parse_options +EXPORT_SYMBOL_GPL vmlinux 0x4f7813fb get_net_ns_by_pid +EXPORT_SYMBOL_GPL vmlinux 0x4f9e5dd9 __vring_new_virtqueue +EXPORT_SYMBOL_GPL vmlinux 0x4fac98a7 machine_check_poll +EXPORT_SYMBOL_GPL vmlinux 0x4fc02643 rhashtable_walk_exit +EXPORT_SYMBOL_GPL vmlinux 0x4fc19092 regulator_bulk_free +EXPORT_SYMBOL_GPL vmlinux 0x4fc8206e sock_zerocopy_put_abort +EXPORT_SYMBOL_GPL vmlinux 0x4fdc945d sata_deb_timing_normal +EXPORT_SYMBOL_GPL vmlinux 0x4fdcd42a pci_device_is_present +EXPORT_SYMBOL_GPL vmlinux 0x4fe12e85 lwtunnel_state_alloc +EXPORT_SYMBOL_GPL vmlinux 0x4fe1eddf unregister_netevent_notifier +EXPORT_SYMBOL_GPL vmlinux 0x500c768c apei_exec_read_register +EXPORT_SYMBOL_GPL vmlinux 0x503b0a23 nd_blk_memremap_flags +EXPORT_SYMBOL_GPL vmlinux 0x5042cc82 spi_add_device +EXPORT_SYMBOL_GPL vmlinux 0x5067bc97 regulator_map_voltage_linear +EXPORT_SYMBOL_GPL vmlinux 0x507662cc __pm_runtime_disable +EXPORT_SYMBOL_GPL vmlinux 0x507ebc7d fl6_update_dst +EXPORT_SYMBOL_GPL vmlinux 0x5091b823 ring_buffer_read_start +EXPORT_SYMBOL_GPL vmlinux 0x5094464a pci_hp_destroy +EXPORT_SYMBOL_GPL vmlinux 0x509c6d7d udp_cmsg_send +EXPORT_SYMBOL_GPL vmlinux 0x509d5f55 clk_divider_ro_ops +EXPORT_SYMBOL_GPL vmlinux 0x50a63f93 __tracepoint_devlink_hwmsg +EXPORT_SYMBOL_GPL vmlinux 0x50b03f5d l1tf_vmx_mitigation +EXPORT_SYMBOL_GPL vmlinux 0x50b8688b acpi_data_fwnode_ops +EXPORT_SYMBOL_GPL vmlinux 0x50c61940 __context_tracking_exit +EXPORT_SYMBOL_GPL vmlinux 0x50d1f870 pgprot_writecombine +EXPORT_SYMBOL_GPL vmlinux 0x50e7193a __i2c_first_dynamic_bus_num +EXPORT_SYMBOL_GPL vmlinux 0x50fad434 round_jiffies_up +EXPORT_SYMBOL_GPL vmlinux 0x5106d126 dma_buf_export +EXPORT_SYMBOL_GPL vmlinux 0x5111996d usb_unanchor_urb +EXPORT_SYMBOL_GPL vmlinux 0x511b9516 gov_attr_set_put +EXPORT_SYMBOL_GPL vmlinux 0x5123c03f __bio_try_merge_page +EXPORT_SYMBOL_GPL vmlinux 0x512825d6 driver_find_device +EXPORT_SYMBOL_GPL vmlinux 0x51390c96 rcu_barrier_tasks_rude +EXPORT_SYMBOL_GPL vmlinux 0x51512b40 devm_mdiobus_alloc_size +EXPORT_SYMBOL_GPL vmlinux 0x5177657f sysfs_merge_group +EXPORT_SYMBOL_GPL vmlinux 0x5187ad91 pci_epf_match_device +EXPORT_SYMBOL_GPL vmlinux 0x518c2fc6 hpet_rtc_dropped_irq +EXPORT_SYMBOL_GPL vmlinux 0x51975456 addrconf_add_linklocal +EXPORT_SYMBOL_GPL vmlinux 0x51a1f817 blkcg_activate_policy +EXPORT_SYMBOL_GPL vmlinux 0x51a33984 tpm_tis_resume +EXPORT_SYMBOL_GPL vmlinux 0x51af741c __skb_get_hash_symmetric +EXPORT_SYMBOL_GPL vmlinux 0x51bd1128 pci_hp_add +EXPORT_SYMBOL_GPL vmlinux 0x51bd28c9 fs_kobj +EXPORT_SYMBOL_GPL vmlinux 0x51cdb083 gpiod_set_value_cansleep +EXPORT_SYMBOL_GPL vmlinux 0x51d6f0a8 devm_spi_register_controller +EXPORT_SYMBOL_GPL vmlinux 0x51f176af ata_pci_device_do_resume +EXPORT_SYMBOL_GPL vmlinux 0x51fb877e regulator_bulk_get +EXPORT_SYMBOL_GPL vmlinux 0x5205ca99 usb_hcd_end_port_resume +EXPORT_SYMBOL_GPL vmlinux 0x52121118 __tracepoint_non_standard_event +EXPORT_SYMBOL_GPL vmlinux 0x5224be2e clk_register_fixed_rate +EXPORT_SYMBOL_GPL vmlinux 0x52252316 clk_unregister_fixed_rate +EXPORT_SYMBOL_GPL vmlinux 0x522af563 pci_epc_map_addr +EXPORT_SYMBOL_GPL vmlinux 0x523dc366 ping_hash +EXPORT_SYMBOL_GPL vmlinux 0x524ce6c6 dma_buf_vunmap +EXPORT_SYMBOL_GPL vmlinux 0x525942ca regulator_sync_voltage +EXPORT_SYMBOL_GPL vmlinux 0x525d0aa3 trace_seq_printf +EXPORT_SYMBOL_GPL vmlinux 0x525f469e spi_res_add +EXPORT_SYMBOL_GPL vmlinux 0x526b8473 pcie_flr +EXPORT_SYMBOL_GPL vmlinux 0x52741889 bpf_map_inc_with_uref +EXPORT_SYMBOL_GPL vmlinux 0x5289c395 regmap_add_irq_chip_np +EXPORT_SYMBOL_GPL vmlinux 0x52ada125 sock_diag_check_cookie +EXPORT_SYMBOL_GPL vmlinux 0x52b1e3c7 pci_flags +EXPORT_SYMBOL_GPL vmlinux 0x52b261bc irq_domain_remove +EXPORT_SYMBOL_GPL vmlinux 0x52bc205f bio_clone_blkg_association +EXPORT_SYMBOL_GPL vmlinux 0x52bd855c srcu_batches_completed +EXPORT_SYMBOL_GPL vmlinux 0x52bfa20a devlink_net +EXPORT_SYMBOL_GPL vmlinux 0x52c35e83 call_rcu_tasks_trace +EXPORT_SYMBOL_GPL vmlinux 0x52d54fce devlink_info_version_stored_put +EXPORT_SYMBOL_GPL vmlinux 0x52dee1bd trace_array_destroy +EXPORT_SYMBOL_GPL vmlinux 0x52e12284 devlink_dpipe_action_put +EXPORT_SYMBOL_GPL vmlinux 0x52eba1ea led_blink_set +EXPORT_SYMBOL_GPL vmlinux 0x53073987 iomap_invalidatepage +EXPORT_SYMBOL_GPL vmlinux 0x531535c7 fuse_dev_alloc +EXPORT_SYMBOL_GPL vmlinux 0x532b90b5 kprobe_event_cmd_init +EXPORT_SYMBOL_GPL vmlinux 0x532fc3d9 securityfs_create_symlink +EXPORT_SYMBOL_GPL vmlinux 0x534fd026 dev_nit_active +EXPORT_SYMBOL_GPL vmlinux 0x5358864e devlink_fmsg_binary_pair_nest_end +EXPORT_SYMBOL_GPL vmlinux 0x53589d9e vmbus_send_modifychannel +EXPORT_SYMBOL_GPL vmlinux 0x536822e3 sfp_module_insert +EXPORT_SYMBOL_GPL vmlinux 0x537a1cb8 devlink_is_reload_failed +EXPORT_SYMBOL_GPL vmlinux 0x537f4139 vmbus_connection +EXPORT_SYMBOL_GPL vmlinux 0x538d073d phy_duplex_to_str +EXPORT_SYMBOL_GPL vmlinux 0x53c0293c regmap_attach_dev +EXPORT_SYMBOL_GPL vmlinux 0x53c089f5 property_entries_dup +EXPORT_SYMBOL_GPL vmlinux 0x53c47c53 apic +EXPORT_SYMBOL_GPL vmlinux 0x53e06c0c power_supply_find_ocv2cap_table +EXPORT_SYMBOL_GPL vmlinux 0x53e14374 dma_buf_get +EXPORT_SYMBOL_GPL vmlinux 0x53fd3997 usb_reset_configuration +EXPORT_SYMBOL_GPL vmlinux 0x53ff2614 power_supply_set_input_current_limit_from_supplier +EXPORT_SYMBOL_GPL vmlinux 0x54085d0d __tracepoint_nvme_sq +EXPORT_SYMBOL_GPL vmlinux 0x5414c08c tpm1_getcap +EXPORT_SYMBOL_GPL vmlinux 0x541bd60a irq_work_run +EXPORT_SYMBOL_GPL vmlinux 0x54215db5 visitor64 +EXPORT_SYMBOL_GPL vmlinux 0x54279570 validate_xmit_skb_list +EXPORT_SYMBOL_GPL vmlinux 0x5435454c divider_ro_round_rate_parent +EXPORT_SYMBOL_GPL vmlinux 0x545025e5 nvmem_add_cell_table +EXPORT_SYMBOL_GPL vmlinux 0x545c718f inet_csk_compat_getsockopt +EXPORT_SYMBOL_GPL vmlinux 0x5462784d xfrm_dev_state_add +EXPORT_SYMBOL_GPL vmlinux 0x54690d8f __udp4_lib_lookup +EXPORT_SYMBOL_GPL vmlinux 0x547f3a88 fib_nexthop_info +EXPORT_SYMBOL_GPL vmlinux 0x54863fd6 crypto_find_alg +EXPORT_SYMBOL_GPL vmlinux 0x549525ef handle_nested_irq +EXPORT_SYMBOL_GPL vmlinux 0x54955855 alarm_start_relative +EXPORT_SYMBOL_GPL vmlinux 0x54a31506 akcipher_register_instance +EXPORT_SYMBOL_GPL vmlinux 0x54a34006 sb800_prefetch +EXPORT_SYMBOL_GPL vmlinux 0x54ab7297 decrypt_blob +EXPORT_SYMBOL_GPL vmlinux 0x54b8b103 account_locked_vm +EXPORT_SYMBOL_GPL vmlinux 0x54ba487b bus_for_each_drv +EXPORT_SYMBOL_GPL vmlinux 0x54ba6da6 bsg_job_put +EXPORT_SYMBOL_GPL vmlinux 0x54d829b7 devm_nvmem_register +EXPORT_SYMBOL_GPL vmlinux 0x54e036df security_file_ioctl +EXPORT_SYMBOL_GPL vmlinux 0x54f857a5 dst_cache_get +EXPORT_SYMBOL_GPL vmlinux 0x54f8fc3e em_register_perf_domain +EXPORT_SYMBOL_GPL vmlinux 0x550ce709 pat_enabled +EXPORT_SYMBOL_GPL vmlinux 0x552fccdc blk_mq_freeze_queue_wait_timeout +EXPORT_SYMBOL_GPL vmlinux 0x55339365 flush_delayed_fput +EXPORT_SYMBOL_GPL vmlinux 0x553b49a4 cpufreq_get_driver_data +EXPORT_SYMBOL_GPL vmlinux 0x55417264 unregister_vt_notifier +EXPORT_SYMBOL_GPL vmlinux 0x5549ad9f nvme_sync_queues +EXPORT_SYMBOL_GPL vmlinux 0x554e446c kthread_cancel_delayed_work_sync +EXPORT_SYMBOL_GPL vmlinux 0x555f9eca rhashtable_walk_enter +EXPORT_SYMBOL_GPL vmlinux 0x55631948 platform_device_add_resources +EXPORT_SYMBOL_GPL vmlinux 0x55686a27 sysfs_add_file_to_group +EXPORT_SYMBOL_GPL vmlinux 0x556d2606 clk_register_mux_table +EXPORT_SYMBOL_GPL vmlinux 0x556e4390 clk_get_rate +EXPORT_SYMBOL_GPL vmlinux 0x55741855 proc_create_net_data +EXPORT_SYMBOL_GPL vmlinux 0x55784228 regmap_irq_get_virq +EXPORT_SYMBOL_GPL vmlinux 0x55bc743c yield_to +EXPORT_SYMBOL_GPL vmlinux 0x55c76a23 ksys_sync_helper +EXPORT_SYMBOL_GPL vmlinux 0x55e14588 crypto_get_default_null_skcipher +EXPORT_SYMBOL_GPL vmlinux 0x55eecff4 bit_wait_io_timeout +EXPORT_SYMBOL_GPL vmlinux 0x55f55bcd metadata_dst_free +EXPORT_SYMBOL_GPL vmlinux 0x55f7fd6f __trace_note_message +EXPORT_SYMBOL_GPL vmlinux 0x55f99e25 usb_get_hcd +EXPORT_SYMBOL_GPL vmlinux 0x5603d384 pskb_put +EXPORT_SYMBOL_GPL vmlinux 0x56054c05 crypto_it_tab +EXPORT_SYMBOL_GPL vmlinux 0x56173654 pcap_set_ts_bits +EXPORT_SYMBOL_GPL vmlinux 0x5619e431 rio_del_mport_pw_handler +EXPORT_SYMBOL_GPL vmlinux 0x561c455a devm_mbox_controller_register +EXPORT_SYMBOL_GPL vmlinux 0x561e97d4 spi_bus_lock +EXPORT_SYMBOL_GPL vmlinux 0x56256e8a orderly_poweroff +EXPORT_SYMBOL_GPL vmlinux 0x56310925 regulator_mode_to_status +EXPORT_SYMBOL_GPL vmlinux 0x56398615 mark_tsc_unstable +EXPORT_SYMBOL_GPL vmlinux 0x56407e6c unregister_hw_breakpoint +EXPORT_SYMBOL_GPL vmlinux 0x5641485b tty_termios_encode_baud_rate +EXPORT_SYMBOL_GPL vmlinux 0x56496302 usb_block_urb +EXPORT_SYMBOL_GPL vmlinux 0x56521173 nvme_set_queue_count +EXPORT_SYMBOL_GPL vmlinux 0x566a07f8 inet_csk_reqsk_queue_hash_add +EXPORT_SYMBOL_GPL vmlinux 0x56703c1b edac_pci_release_generic_ctl +EXPORT_SYMBOL_GPL vmlinux 0x5674b3cb rhashtable_free_and_destroy +EXPORT_SYMBOL_GPL vmlinux 0x568373c5 udp6_lib_lookup_skb +EXPORT_SYMBOL_GPL vmlinux 0x5687e1e9 gpiod_get_array_optional +EXPORT_SYMBOL_GPL vmlinux 0x5693baac call_srcu +EXPORT_SYMBOL_GPL vmlinux 0x56a6b14c pm_generic_runtime_suspend +EXPORT_SYMBOL_GPL vmlinux 0x56abcf86 dev_change_net_namespace +EXPORT_SYMBOL_GPL vmlinux 0x56b64325 vmbus_set_chn_rescind_callback +EXPORT_SYMBOL_GPL vmlinux 0x56c5877d ping_seq_start +EXPORT_SYMBOL_GPL vmlinux 0x56cb7ee3 sysfs_create_link_nowarn +EXPORT_SYMBOL_GPL vmlinux 0x56d267ec pci_status_get_and_clear_errors +EXPORT_SYMBOL_GPL vmlinux 0x56d61dce context_tracking_enter +EXPORT_SYMBOL_GPL vmlinux 0x56ef0dd7 vring_new_virtqueue +EXPORT_SYMBOL_GPL vmlinux 0x56fb5204 __nvme_submit_sync_cmd +EXPORT_SYMBOL_GPL vmlinux 0x571ec062 __put_task_struct +EXPORT_SYMBOL_GPL vmlinux 0x572786f6 bio_release_pages +EXPORT_SYMBOL_GPL vmlinux 0x5727cfa2 power_supply_set_property +EXPORT_SYMBOL_GPL vmlinux 0x5728ad9c wm8998_i2c_regmap +EXPORT_SYMBOL_GPL vmlinux 0x57334379 crypto_alloc_sync_skcipher +EXPORT_SYMBOL_GPL vmlinux 0x57390676 fwnode_get_nth_parent +EXPORT_SYMBOL_GPL vmlinux 0x573b5453 ipv6_fixup_options +EXPORT_SYMBOL_GPL vmlinux 0x574609c5 apei_exec_write_register_value +EXPORT_SYMBOL_GPL vmlinux 0x574b5443 ata_acpi_stm +EXPORT_SYMBOL_GPL vmlinux 0x574f4572 rio_add_mport_pw_handler +EXPORT_SYMBOL_GPL vmlinux 0x575f6418 vmbus_establish_gpadl +EXPORT_SYMBOL_GPL vmlinux 0x576ccd40 icc_link_destroy +EXPORT_SYMBOL_GPL vmlinux 0x57732438 inet_twsk_purge +EXPORT_SYMBOL_GPL vmlinux 0x57863245 __blkg_prfill_rwstat +EXPORT_SYMBOL_GPL vmlinux 0x578eeb4d hugetlb_cgrp_subsys_enabled_key +EXPORT_SYMBOL_GPL vmlinux 0x5790e7a0 pci_unlock_rescan_remove +EXPORT_SYMBOL_GPL vmlinux 0x579e0bf5 rtnl_unregister_all +EXPORT_SYMBOL_GPL vmlinux 0x57a259a3 sock_diag_destroy +EXPORT_SYMBOL_GPL vmlinux 0x57aae1a1 show_class_attr_string +EXPORT_SYMBOL_GPL vmlinux 0x57c39727 kdb_register_flags +EXPORT_SYMBOL_GPL vmlinux 0x57d41bad pciserial_init_ports +EXPORT_SYMBOL_GPL vmlinux 0x57d5736a iommu_attach_device +EXPORT_SYMBOL_GPL vmlinux 0x57f70547 secure_ipv4_port_ephemeral +EXPORT_SYMBOL_GPL vmlinux 0x57f927c3 pci_d3cold_enable +EXPORT_SYMBOL_GPL vmlinux 0x57f9b7d5 crypto_stats_akcipher_encrypt +EXPORT_SYMBOL_GPL vmlinux 0x57ff6bd2 em_cpu_get +EXPORT_SYMBOL_GPL vmlinux 0x580defe4 dev_pm_opp_get_max_volt_latency +EXPORT_SYMBOL_GPL vmlinux 0x58219104 fwnode_graph_get_remote_port +EXPORT_SYMBOL_GPL vmlinux 0x58276f93 cper_next_record_id +EXPORT_SYMBOL_GPL vmlinux 0x582b0aec usb_hub_claim_port +EXPORT_SYMBOL_GPL vmlinux 0x5831e062 cpus_read_trylock +EXPORT_SYMBOL_GPL vmlinux 0x583f96e2 tracing_snapshot_cond_enable +EXPORT_SYMBOL_GPL vmlinux 0x583fc822 da9052_adc_manual_read +EXPORT_SYMBOL_GPL vmlinux 0x584f938f wm5110_revd_irq +EXPORT_SYMBOL_GPL vmlinux 0x58528ad4 bpf_redirect_info +EXPORT_SYMBOL_GPL vmlinux 0x5879a27d sfp_get_module_info +EXPORT_SYMBOL_GPL vmlinux 0x58d6311d trace_clock +EXPORT_SYMBOL_GPL vmlinux 0x58da1e93 regulator_get_voltage_sel_regmap +EXPORT_SYMBOL_GPL vmlinux 0x58dcef4e ata_port_pbar_desc +EXPORT_SYMBOL_GPL vmlinux 0x58def6ca sfp_module_remove +EXPORT_SYMBOL_GPL vmlinux 0x58ec3da4 blkg_lookup_slowpath +EXPORT_SYMBOL_GPL vmlinux 0x58f03b99 register_ftrace_function +EXPORT_SYMBOL_GPL vmlinux 0x597485c7 dma_buf_unmap_attachment +EXPORT_SYMBOL_GPL vmlinux 0x5986d190 kdb_printf +EXPORT_SYMBOL_GPL vmlinux 0x59b2adbf input_ff_effect_from_user +EXPORT_SYMBOL_GPL vmlinux 0x59b5f6c6 noop_invalidatepage +EXPORT_SYMBOL_GPL vmlinux 0x59bbf145 pv_info +EXPORT_SYMBOL_GPL vmlinux 0x59c508a5 dw_pcie_ep_linkup +EXPORT_SYMBOL_GPL vmlinux 0x59c6aff4 irq_set_affinity_hint +EXPORT_SYMBOL_GPL vmlinux 0x59d2a1b4 mm_unaccount_pinned_pages +EXPORT_SYMBOL_GPL vmlinux 0x59d85f8e __clk_get_hw +EXPORT_SYMBOL_GPL vmlinux 0x59d88bb2 ip6_datagram_recv_ctl +EXPORT_SYMBOL_GPL vmlinux 0x59dd1a86 relay_file_operations +EXPORT_SYMBOL_GPL vmlinux 0x5a04c1f5 __raw_v6_lookup +EXPORT_SYMBOL_GPL vmlinux 0x5a12b805 relay_open +EXPORT_SYMBOL_GPL vmlinux 0x5a1d134a rcu_momentary_dyntick_idle +EXPORT_SYMBOL_GPL vmlinux 0x5a2cb8a7 pci_user_read_config_dword +EXPORT_SYMBOL_GPL vmlinux 0x5a30e97e irqchip_fwnode_ops +EXPORT_SYMBOL_GPL vmlinux 0x5a49dbc9 timerqueue_del +EXPORT_SYMBOL_GPL vmlinux 0x5a570dee __percpu_down_read +EXPORT_SYMBOL_GPL vmlinux 0x5a619561 class_compat_create_link +EXPORT_SYMBOL_GPL vmlinux 0x5a6cdb52 nf_ct_zone_dflt +EXPORT_SYMBOL_GPL vmlinux 0x5a72e4e0 crypto_larval_kill +EXPORT_SYMBOL_GPL vmlinux 0x5a770ec5 kthread_cancel_work_sync +EXPORT_SYMBOL_GPL vmlinux 0x5a7bfe41 crypto_probing_notify +EXPORT_SYMBOL_GPL vmlinux 0x5a8540d9 synth_event_trace_end +EXPORT_SYMBOL_GPL vmlinux 0x5aa9b9d5 get_kernel_pages +EXPORT_SYMBOL_GPL vmlinux 0x5aa9ebbb watchdog_unregister_device +EXPORT_SYMBOL_GPL vmlinux 0x5ab09745 edac_get_owner +EXPORT_SYMBOL_GPL vmlinux 0x5ad5e642 gpiochip_disable_irq +EXPORT_SYMBOL_GPL vmlinux 0x5adef6c1 gpiod_set_config +EXPORT_SYMBOL_GPL vmlinux 0x5ae1b2b9 metadata_dst_free_percpu +EXPORT_SYMBOL_GPL vmlinux 0x5ae83387 regulator_is_enabled_regmap +EXPORT_SYMBOL_GPL vmlinux 0x5aeb2bc7 da9052_free_irq +EXPORT_SYMBOL_GPL vmlinux 0x5b118b57 regmap_get_device +EXPORT_SYMBOL_GPL vmlinux 0x5b183373 bus_unregister_notifier +EXPORT_SYMBOL_GPL vmlinux 0x5b21ceff ring_buffer_iter_peek +EXPORT_SYMBOL_GPL vmlinux 0x5b2a2255 pci_enable_rom +EXPORT_SYMBOL_GPL vmlinux 0x5b35c4f9 vfio_group_set_kvm +EXPORT_SYMBOL_GPL vmlinux 0x5b4c61e1 usb_asmedia_modifyflowcontrol +EXPORT_SYMBOL_GPL vmlinux 0x5b4f8e92 scsi_free_sgtables +EXPORT_SYMBOL_GPL vmlinux 0x5b6077b0 virtqueue_add_inbuf +EXPORT_SYMBOL_GPL vmlinux 0x5b637f8c lwtunnel_encap_add_ops +EXPORT_SYMBOL_GPL vmlinux 0x5b6b0329 swiotlb_max_segment +EXPORT_SYMBOL_GPL vmlinux 0x5b6f2708 dax_supported +EXPORT_SYMBOL_GPL vmlinux 0x5b884364 hyperv_report_panic_msg +EXPORT_SYMBOL_GPL vmlinux 0x5ba0a41e ip6_datagram_release_cb +EXPORT_SYMBOL_GPL vmlinux 0x5bb2d130 spi_async_locked +EXPORT_SYMBOL_GPL vmlinux 0x5bb57bf4 devm_gpiod_put_array +EXPORT_SYMBOL_GPL vmlinux 0x5bbdfa26 scatterwalk_ffwd +EXPORT_SYMBOL_GPL vmlinux 0x5bd0748f crypto_del_default_rng +EXPORT_SYMBOL_GPL vmlinux 0x5bdae35b usb_phy_roothub_set_mode +EXPORT_SYMBOL_GPL vmlinux 0x5bdbac4e rcu_unexpedite_gp +EXPORT_SYMBOL_GPL vmlinux 0x5bfb8e10 firmware_request_nowarn +EXPORT_SYMBOL_GPL vmlinux 0x5c1974c0 unregister_pernet_subsys +EXPORT_SYMBOL_GPL vmlinux 0x5c2bcd37 bpf_warn_invalid_xdp_action +EXPORT_SYMBOL_GPL vmlinux 0x5c2eb867 dm_bio_from_per_bio_data +EXPORT_SYMBOL_GPL vmlinux 0x5c3480ba skb_consume_udp +EXPORT_SYMBOL_GPL vmlinux 0x5c494c74 iommu_aux_detach_device +EXPORT_SYMBOL_GPL vmlinux 0x5c4c03dd rtc_initialize_alarm +EXPORT_SYMBOL_GPL vmlinux 0x5c54e1b8 ata_qc_complete_multiple +EXPORT_SYMBOL_GPL vmlinux 0x5c5a1b16 tick_broadcast_control +EXPORT_SYMBOL_GPL vmlinux 0x5c5e8f74 ata_dummy_port_info +EXPORT_SYMBOL_GPL vmlinux 0x5c66e90c efivar_run_worker +EXPORT_SYMBOL_GPL vmlinux 0x5c678d32 tcp_get_syncookie_mss +EXPORT_SYMBOL_GPL vmlinux 0x5c9ecec8 udp_init_sock +EXPORT_SYMBOL_GPL vmlinux 0x5cad8fc3 power_supply_ocv2cap_simple +EXPORT_SYMBOL_GPL vmlinux 0x5cb0ddd5 intel_msic_reg_update +EXPORT_SYMBOL_GPL vmlinux 0x5cc611d2 clk_hw_unregister +EXPORT_SYMBOL_GPL vmlinux 0x5d17148b apei_write +EXPORT_SYMBOL_GPL vmlinux 0x5d2c0ccd class_interface_unregister +EXPORT_SYMBOL_GPL vmlinux 0x5d2ff1a5 preempt_notifier_register +EXPORT_SYMBOL_GPL vmlinux 0x5d3b63b9 ata_bmdma_qc_prep +EXPORT_SYMBOL_GPL vmlinux 0x5d592c13 nvme_stop_ctrl +EXPORT_SYMBOL_GPL vmlinux 0x5d5f999a regulator_lock +EXPORT_SYMBOL_GPL vmlinux 0x5d63ee36 gpiod_set_raw_array_value_cansleep +EXPORT_SYMBOL_GPL vmlinux 0x5d6ec393 iomap_releasepage +EXPORT_SYMBOL_GPL vmlinux 0x5d8476d3 bpf_sk_storage_diag_alloc +EXPORT_SYMBOL_GPL vmlinux 0x5d9c4c88 subsys_interface_unregister +EXPORT_SYMBOL_GPL vmlinux 0x5da67adc zs_compact +EXPORT_SYMBOL_GPL vmlinux 0x5dba2c0f crypto_shash_tfm_digest +EXPORT_SYMBOL_GPL vmlinux 0x5dbaa6eb gpiochip_find +EXPORT_SYMBOL_GPL vmlinux 0x5dbcfa4f boot_cpu_physical_apicid +EXPORT_SYMBOL_GPL vmlinux 0x5de7447d __atomic_notifier_call_chain +EXPORT_SYMBOL_GPL vmlinux 0x5df2a9fd pingv6_prot +EXPORT_SYMBOL_GPL vmlinux 0x5dfa1213 security_inode_setattr +EXPORT_SYMBOL_GPL vmlinux 0x5e0a09ed md_find_rdev_nr_rcu +EXPORT_SYMBOL_GPL vmlinux 0x5e0f95d0 bpf_prog_alloc +EXPORT_SYMBOL_GPL vmlinux 0x5e173309 cpu_cgrp_subsys_on_dfl_key +EXPORT_SYMBOL_GPL vmlinux 0x5e1b9ae1 ata_ehi_clear_desc +EXPORT_SYMBOL_GPL vmlinux 0x5e39b9d5 crypto_unregister_algs +EXPORT_SYMBOL_GPL vmlinux 0x5e425eda kthread_func +EXPORT_SYMBOL_GPL vmlinux 0x5e4f9c00 tty_port_default_client_ops +EXPORT_SYMBOL_GPL vmlinux 0x5e515be6 ktime_get_ts64 +EXPORT_SYMBOL_GPL vmlinux 0x5e51cd74 swiotlb_nr_tbl +EXPORT_SYMBOL_GPL vmlinux 0x5e67763d pstore_register +EXPORT_SYMBOL_GPL vmlinux 0x5e6b4253 power_supply_get_by_name +EXPORT_SYMBOL_GPL vmlinux 0x5e798ffb divider_get_val +EXPORT_SYMBOL_GPL vmlinux 0x5e85415b ring_buffer_consume +EXPORT_SYMBOL_GPL vmlinux 0x5e86f057 icc_set_bw +EXPORT_SYMBOL_GPL vmlinux 0x5e9406b9 blk_mq_rdma_map_queues +EXPORT_SYMBOL_GPL vmlinux 0x5e960141 page_mkclean +EXPORT_SYMBOL_GPL vmlinux 0x5ea52be0 bio_disassociate_blkg +EXPORT_SYMBOL_GPL vmlinux 0x5ea9c32f phy_package_join +EXPORT_SYMBOL_GPL vmlinux 0x5ebb7fb5 tcp_abort +EXPORT_SYMBOL_GPL vmlinux 0x5ec62549 ata_dev_classify +EXPORT_SYMBOL_GPL vmlinux 0x5edfee09 udp4_lib_lookup_skb +EXPORT_SYMBOL_GPL vmlinux 0x5f1473ec __fat_fs_error +EXPORT_SYMBOL_GPL vmlinux 0x5f1869d4 sock_diag_save_cookie +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 0x5f31edba crypto_unregister_acomps +EXPORT_SYMBOL_GPL vmlinux 0x5f336749 proc_create_net_single +EXPORT_SYMBOL_GPL vmlinux 0x5f501d8e rio_release_dma +EXPORT_SYMBOL_GPL vmlinux 0x5f56a070 __irq_alloc_domain_generic_chips +EXPORT_SYMBOL_GPL vmlinux 0x5f6f1e9e dax_get_private +EXPORT_SYMBOL_GPL vmlinux 0x5f878d38 tty_buffer_set_limit +EXPORT_SYMBOL_GPL vmlinux 0x5faf219c power_supply_get_drvdata +EXPORT_SYMBOL_GPL vmlinux 0x5fdfa2c1 amd_pmu_enable_virt +EXPORT_SYMBOL_GPL vmlinux 0x5ffc0a16 phy_10gbit_full_features +EXPORT_SYMBOL_GPL vmlinux 0x60069ee1 inet_ehash_locks_alloc +EXPORT_SYMBOL_GPL vmlinux 0x60091316 clk_notifier_register +EXPORT_SYMBOL_GPL vmlinux 0x601ba3eb __tracepoint_io_page_fault +EXPORT_SYMBOL_GPL vmlinux 0x6029b279 ping_seq_stop +EXPORT_SYMBOL_GPL vmlinux 0x6030aa33 ata_std_bios_param +EXPORT_SYMBOL_GPL vmlinux 0x6037ac81 devlink_flash_update_begin_notify +EXPORT_SYMBOL_GPL vmlinux 0x603d0d51 acpi_os_map_iomem +EXPORT_SYMBOL_GPL vmlinux 0x60429826 __vfs_removexattr_locked +EXPORT_SYMBOL_GPL vmlinux 0x604722fd devices_cgrp_subsys_enabled_key +EXPORT_SYMBOL_GPL vmlinux 0x6051e40c blk_mq_alloc_request_hctx +EXPORT_SYMBOL_GPL vmlinux 0x60578e4f kobject_rename +EXPORT_SYMBOL_GPL vmlinux 0x607c4683 devlink_info_version_fixed_put +EXPORT_SYMBOL_GPL vmlinux 0x608acb3b dw_pcie_write_dbi +EXPORT_SYMBOL_GPL vmlinux 0x6091797f synchronize_rcu +EXPORT_SYMBOL_GPL vmlinux 0x6095838b tty_port_register_device_attr +EXPORT_SYMBOL_GPL vmlinux 0x609e52a0 led_blink_set_oneshot +EXPORT_SYMBOL_GPL vmlinux 0x60a13e90 rcu_barrier +EXPORT_SYMBOL_GPL vmlinux 0x60a634c4 vfio_info_cap_add +EXPORT_SYMBOL_GPL vmlinux 0x60a6710e sched_trace_cfs_rq_cpu +EXPORT_SYMBOL_GPL vmlinux 0x60d88e10 pm_generic_suspend_late +EXPORT_SYMBOL_GPL vmlinux 0x60ebc96f ring_buffer_read_prepare +EXPORT_SYMBOL_GPL vmlinux 0x60f99e1b cppc_set_perf +EXPORT_SYMBOL_GPL vmlinux 0x60ffb8c2 skcipher_walk_complete +EXPORT_SYMBOL_GPL vmlinux 0x610c9f7e unix_peer_get +EXPORT_SYMBOL_GPL vmlinux 0x6115bb17 ping_seq_next +EXPORT_SYMBOL_GPL vmlinux 0x611cfa85 klist_add_tail +EXPORT_SYMBOL_GPL vmlinux 0x6129fb93 sfp_remove_phy +EXPORT_SYMBOL_GPL vmlinux 0x612bfd89 errno_to_blk_status +EXPORT_SYMBOL_GPL vmlinux 0x61325c4e devm_namespace_disable +EXPORT_SYMBOL_GPL vmlinux 0x6158ff5a iommu_dev_disable_feature +EXPORT_SYMBOL_GPL vmlinux 0x615a2f73 dax_copy_to_iter +EXPORT_SYMBOL_GPL vmlinux 0x61674e59 acpi_dma_request_slave_chan_by_name +EXPORT_SYMBOL_GPL vmlinux 0x616b30c7 kmsg_dump_rewind +EXPORT_SYMBOL_GPL vmlinux 0x61725757 regulator_map_voltage_iterate +EXPORT_SYMBOL_GPL vmlinux 0x617a01c6 pci_disable_pasid +EXPORT_SYMBOL_GPL vmlinux 0x617b026c hwrng_register +EXPORT_SYMBOL_GPL vmlinux 0x61803901 register_virtio_driver +EXPORT_SYMBOL_GPL vmlinux 0x6181e79f timerqueue_add +EXPORT_SYMBOL_GPL vmlinux 0x6198dfea __ring_buffer_alloc +EXPORT_SYMBOL_GPL vmlinux 0x61996eac sched_show_task +EXPORT_SYMBOL_GPL vmlinux 0x6199ad5d crypto_has_skcipher +EXPORT_SYMBOL_GPL vmlinux 0x619b14da fpstate_init +EXPORT_SYMBOL_GPL vmlinux 0x619c2b57 hvc_poll +EXPORT_SYMBOL_GPL vmlinux 0x61abd6e9 rio_map_outb_region +EXPORT_SYMBOL_GPL vmlinux 0x61ae1d2d xas_pause +EXPORT_SYMBOL_GPL vmlinux 0x61cb6ef5 crypto_spawn_tfm +EXPORT_SYMBOL_GPL vmlinux 0x61f67c92 phy_gbit_features_array +EXPORT_SYMBOL_GPL vmlinux 0x62052b29 vtime_guest_enter +EXPORT_SYMBOL_GPL vmlinux 0x62063b26 phy_driver_is_genphy +EXPORT_SYMBOL_GPL vmlinux 0x6209a247 iomap_zero_range +EXPORT_SYMBOL_GPL vmlinux 0x620d8432 devm_memremap_pages +EXPORT_SYMBOL_GPL vmlinux 0x622c7922 register_oom_notifier +EXPORT_SYMBOL_GPL vmlinux 0x6232443e usb_free_coherent +EXPORT_SYMBOL_GPL vmlinux 0x62377a7b blk_io_schedule +EXPORT_SYMBOL_GPL vmlinux 0x6246a629 synchronize_rcu_tasks_trace +EXPORT_SYMBOL_GPL vmlinux 0x6246c127 devlink_port_attrs_pci_pf_set +EXPORT_SYMBOL_GPL vmlinux 0x6257dda7 clk_rate_exclusive_get +EXPORT_SYMBOL_GPL vmlinux 0x6259d291 clk_restore_context +EXPORT_SYMBOL_GPL vmlinux 0x625b7898 bus_register_notifier +EXPORT_SYMBOL_GPL vmlinux 0x62831a62 regulator_bulk_set_supply_names +EXPORT_SYMBOL_GPL vmlinux 0x629ee1d6 inode_congested +EXPORT_SYMBOL_GPL vmlinux 0x62a2e1a5 ata_std_prereset +EXPORT_SYMBOL_GPL vmlinux 0x62bb09bf clocks_calc_mult_shift +EXPORT_SYMBOL_GPL vmlinux 0x62d04546 bus_unregister +EXPORT_SYMBOL_GPL vmlinux 0x62f0daac hrtimer_init_sleeper +EXPORT_SYMBOL_GPL vmlinux 0x62fe9484 edac_mc_find_csrow_by_page +EXPORT_SYMBOL_GPL vmlinux 0x63077881 dma_buf_attach +EXPORT_SYMBOL_GPL vmlinux 0x630ac8d5 gpiod_set_raw_value_cansleep +EXPORT_SYMBOL_GPL vmlinux 0x63150e06 clk_get_parent +EXPORT_SYMBOL_GPL vmlinux 0x63197685 s2idle_wake +EXPORT_SYMBOL_GPL vmlinux 0x631ac2eb dio_end_io +EXPORT_SYMBOL_GPL vmlinux 0x631c422f rdev_set_badblocks +EXPORT_SYMBOL_GPL vmlinux 0x63251c14 wm831x_auxadc_read +EXPORT_SYMBOL_GPL vmlinux 0x633c91c3 virtio_device_freeze +EXPORT_SYMBOL_GPL vmlinux 0x6340434e x86_model +EXPORT_SYMBOL_GPL vmlinux 0x634614c8 mddev_suspend +EXPORT_SYMBOL_GPL vmlinux 0x634aef99 pinctrl_register +EXPORT_SYMBOL_GPL vmlinux 0x63731255 mmu_notifier_register +EXPORT_SYMBOL_GPL vmlinux 0x638a363a ata_pci_bmdma_init_one +EXPORT_SYMBOL_GPL vmlinux 0x638a9653 memory_add_physaddr_to_nid +EXPORT_SYMBOL_GPL vmlinux 0x638aff11 proc_douintvec_minmax +EXPORT_SYMBOL_GPL vmlinux 0x639ea7c5 usb_phy_roothub_suspend +EXPORT_SYMBOL_GPL vmlinux 0x63a35608 kernfs_path_from_node +EXPORT_SYMBOL_GPL vmlinux 0x63ade4c6 ncsi_vlan_rx_add_vid +EXPORT_SYMBOL_GPL vmlinux 0x63b95bcb sata_link_resume +EXPORT_SYMBOL_GPL vmlinux 0x63b9ac69 skb_complete_tx_timestamp +EXPORT_SYMBOL_GPL vmlinux 0x63c08029 clk_bulk_unprepare +EXPORT_SYMBOL_GPL vmlinux 0x63c48ae0 security_path_truncate +EXPORT_SYMBOL_GPL vmlinux 0x63c892db regmap_get_val_endian +EXPORT_SYMBOL_GPL vmlinux 0x63c8fd2b hv_setup_stimer0_irq +EXPORT_SYMBOL_GPL vmlinux 0x63c93ec6 ip6_push_pending_frames +EXPORT_SYMBOL_GPL vmlinux 0x63caa6f0 devlink_sb_register +EXPORT_SYMBOL_GPL vmlinux 0x63d8a0fc class_dev_iter_init +EXPORT_SYMBOL_GPL vmlinux 0x63db8f5b md_rdev_init +EXPORT_SYMBOL_GPL vmlinux 0x63ea80b3 cper_mem_err_type_str +EXPORT_SYMBOL_GPL vmlinux 0x640ab48f for_each_kernel_tracepoint +EXPORT_SYMBOL_GPL vmlinux 0x641eedad __clk_hw_register_mux +EXPORT_SYMBOL_GPL vmlinux 0x6452911d bus_set_iommu +EXPORT_SYMBOL_GPL vmlinux 0x645936e8 acpi_get_psd_map +EXPORT_SYMBOL_GPL vmlinux 0x6470c332 acpi_dev_pm_attach +EXPORT_SYMBOL_GPL vmlinux 0x6473daf9 d_exchange +EXPORT_SYMBOL_GPL vmlinux 0x6487c5fc regulator_get_voltage_rdev +EXPORT_SYMBOL_GPL vmlinux 0x6490703f iomap_is_partially_uptodate +EXPORT_SYMBOL_GPL vmlinux 0x649141f5 sata_pmp_port_ops +EXPORT_SYMBOL_GPL vmlinux 0x64925270 __dax_synchronous +EXPORT_SYMBOL_GPL vmlinux 0x649547b5 gpiod_set_array_value +EXPORT_SYMBOL_GPL vmlinux 0x649a027a led_set_brightness_sync +EXPORT_SYMBOL_GPL vmlinux 0x64a62e11 acpi_processor_ffh_cstate_enter +EXPORT_SYMBOL_GPL vmlinux 0x64ae0b25 ata_pci_remove_one +EXPORT_SYMBOL_GPL vmlinux 0x64b62862 nvme_wq +EXPORT_SYMBOL_GPL vmlinux 0x64be424b gpiod_get_index +EXPORT_SYMBOL_GPL vmlinux 0x64ca8d1e spi_busnum_to_master +EXPORT_SYMBOL_GPL vmlinux 0x64cc1976 tty_ldisc_deref +EXPORT_SYMBOL_GPL vmlinux 0x64d3cc4e xas_load +EXPORT_SYMBOL_GPL vmlinux 0x64e27c4f synth_event_delete +EXPORT_SYMBOL_GPL vmlinux 0x64f36620 dax_flush +EXPORT_SYMBOL_GPL vmlinux 0x64faf25c vprintk_default +EXPORT_SYMBOL_GPL vmlinux 0x65036105 clk_hw_is_enabled +EXPORT_SYMBOL_GPL vmlinux 0x6517ea71 crypto_shash_setkey +EXPORT_SYMBOL_GPL vmlinux 0x6527a231 dbgp_external_startup +EXPORT_SYMBOL_GPL vmlinux 0x65461c10 vfio_virqfd_disable +EXPORT_SYMBOL_GPL vmlinux 0x65606cfb lwtunnel_input +EXPORT_SYMBOL_GPL vmlinux 0x65704d22 hv_stimer_cleanup +EXPORT_SYMBOL_GPL vmlinux 0x6574dc3b devres_close_group +EXPORT_SYMBOL_GPL vmlinux 0x6578735e gpiochip_irq_domain_deactivate +EXPORT_SYMBOL_GPL vmlinux 0x659dcac9 crypto_shash_update +EXPORT_SYMBOL_GPL vmlinux 0x659e63f8 tracepoint_probe_register +EXPORT_SYMBOL_GPL vmlinux 0x65b59b96 fwnode_handle_get +EXPORT_SYMBOL_GPL vmlinux 0x65b7fb25 tty_set_termios +EXPORT_SYMBOL_GPL vmlinux 0x65c36f2d clk_hw_register +EXPORT_SYMBOL_GPL vmlinux 0x65ccb6f0 call_netevent_notifiers +EXPORT_SYMBOL_GPL vmlinux 0x65ed106f shmem_file_setup_with_mnt +EXPORT_SYMBOL_GPL vmlinux 0x660b9783 devlink_port_param_driverinit_value_get +EXPORT_SYMBOL_GPL vmlinux 0x6613f4af pm_generic_freeze_noirq +EXPORT_SYMBOL_GPL vmlinux 0x661601de sprint_symbol +EXPORT_SYMBOL_GPL vmlinux 0x66316548 hwspin_lock_register +EXPORT_SYMBOL_GPL vmlinux 0x6636c3c9 irq_set_vcpu_affinity +EXPORT_SYMBOL_GPL vmlinux 0x6638d38d sched_trace_rq_avg_dl +EXPORT_SYMBOL_GPL vmlinux 0x663bb448 devlink_fmsg_obj_nest_end +EXPORT_SYMBOL_GPL vmlinux 0x664d80ce bio_alloc_mddev +EXPORT_SYMBOL_GPL vmlinux 0x6656ee49 page_reporting_register +EXPORT_SYMBOL_GPL vmlinux 0x665e92a0 clk_set_duty_cycle +EXPORT_SYMBOL_GPL vmlinux 0x66669c6a iomap_writepage +EXPORT_SYMBOL_GPL vmlinux 0x666b755a __tracepoint_xdp_exception +EXPORT_SYMBOL_GPL vmlinux 0x66727a3f blk_mq_sched_request_inserted +EXPORT_SYMBOL_GPL vmlinux 0x66741161 dev_pm_set_wake_irq +EXPORT_SYMBOL_GPL vmlinux 0x6675a983 da9052_request_irq +EXPORT_SYMBOL_GPL vmlinux 0x6675badd nvmem_register +EXPORT_SYMBOL_GPL vmlinux 0x668402aa crypto_put_default_rng +EXPORT_SYMBOL_GPL vmlinux 0x66857c55 fwnode_graph_get_remote_endpoint +EXPORT_SYMBOL_GPL vmlinux 0x668a281e blk_mq_make_request +EXPORT_SYMBOL_GPL vmlinux 0x668a81cc trace_event_reg +EXPORT_SYMBOL_GPL vmlinux 0x66a6c061 tracepoint_probe_register_prio +EXPORT_SYMBOL_GPL vmlinux 0x66ae4727 mdio_bus_init +EXPORT_SYMBOL_GPL vmlinux 0x66b26b2b clk_hw_unregister_divider +EXPORT_SYMBOL_GPL vmlinux 0x66b97421 sfp_link_up +EXPORT_SYMBOL_GPL vmlinux 0x66bca893 pci_restore_msi_state +EXPORT_SYMBOL_GPL vmlinux 0x66bd3a45 key_type_trusted +EXPORT_SYMBOL_GPL vmlinux 0x66ced8bf thermal_zone_get_slope +EXPORT_SYMBOL_GPL vmlinux 0x66d87d38 symbol_put_addr +EXPORT_SYMBOL_GPL vmlinux 0x670d9157 usb_match_one_id +EXPORT_SYMBOL_GPL vmlinux 0x671c5c47 clk_hw_set_parent +EXPORT_SYMBOL_GPL vmlinux 0x67292248 device_node_to_regmap +EXPORT_SYMBOL_GPL vmlinux 0x6735d56e tcp_ca_get_name_by_key +EXPORT_SYMBOL_GPL vmlinux 0x675ae6d8 dev_pm_opp_put_supported_hw +EXPORT_SYMBOL_GPL vmlinux 0x677c2c7c devlink_param_value_changed +EXPORT_SYMBOL_GPL vmlinux 0x6790ebd3 mce_is_memory_error +EXPORT_SYMBOL_GPL vmlinux 0x6792e25a __tracepoint_unmap +EXPORT_SYMBOL_GPL vmlinux 0x67955ce6 profile_hits +EXPORT_SYMBOL_GPL vmlinux 0x6797920b crypto_register_aead +EXPORT_SYMBOL_GPL vmlinux 0x67a31844 ata_wait_register +EXPORT_SYMBOL_GPL vmlinux 0x67a91d0f gpiod_toggle_active_low +EXPORT_SYMBOL_GPL vmlinux 0x67bbc6be device_add +EXPORT_SYMBOL_GPL vmlinux 0x67bfa7f3 pci_create_root_bus +EXPORT_SYMBOL_GPL vmlinux 0x67c546f0 fwnode_graph_get_port_parent +EXPORT_SYMBOL_GPL vmlinux 0x67c68e0c bpf_trace_run3 +EXPORT_SYMBOL_GPL vmlinux 0x67cbb8f5 spi_split_transfers_maxsize +EXPORT_SYMBOL_GPL vmlinux 0x67d9df7b platform_msi_domain_free_irqs +EXPORT_SYMBOL_GPL vmlinux 0x67da9f7c sha512_zero_message_hash +EXPORT_SYMBOL_GPL vmlinux 0x67e80d69 xfrm_state_afinfo_get_rcu +EXPORT_SYMBOL_GPL vmlinux 0x67fe77e2 ata_scsi_port_error_handler +EXPORT_SYMBOL_GPL vmlinux 0x6807ffba posix_acl_access_xattr_handler +EXPORT_SYMBOL_GPL vmlinux 0x6821d7dc gpiod_get_raw_value_cansleep +EXPORT_SYMBOL_GPL vmlinux 0x682ff057 ring_buffer_commit_overrun_cpu +EXPORT_SYMBOL_GPL vmlinux 0x68400c9c peernet2id_alloc +EXPORT_SYMBOL_GPL vmlinux 0x6845b0ae gpiochip_get_data +EXPORT_SYMBOL_GPL vmlinux 0x685940df __rio_local_write_config_16 +EXPORT_SYMBOL_GPL vmlinux 0x6861a055 devm_phy_get +EXPORT_SYMBOL_GPL vmlinux 0x687558ab genphy_c45_check_and_restart_aneg +EXPORT_SYMBOL_GPL vmlinux 0x6890863e pm_clk_resume +EXPORT_SYMBOL_GPL vmlinux 0x68952493 rcu_note_context_switch +EXPORT_SYMBOL_GPL vmlinux 0x6898f2e2 tcp_cong_avoid_ai +EXPORT_SYMBOL_GPL vmlinux 0x68e28a71 cpufreq_register_governor +EXPORT_SYMBOL_GPL vmlinux 0x68eefa87 nvdimm_badblocks_populate +EXPORT_SYMBOL_GPL vmlinux 0x68fcf9a9 __sock_recv_ts_and_drops +EXPORT_SYMBOL_GPL vmlinux 0x690f585e phy_basic_ports_array +EXPORT_SYMBOL_GPL vmlinux 0x6945fa1f debugfs_create_u8 +EXPORT_SYMBOL_GPL vmlinux 0x6958ae23 dax_get_by_host +EXPORT_SYMBOL_GPL vmlinux 0x696340a5 __i2c_board_lock +EXPORT_SYMBOL_GPL vmlinux 0x696497ca ata_link_offline +EXPORT_SYMBOL_GPL vmlinux 0x696d7e0b l1tf_mitigation +EXPORT_SYMBOL_GPL vmlinux 0x6979fa3b ata_bmdma_start +EXPORT_SYMBOL_GPL vmlinux 0x697c25e7 pm_runtime_set_autosuspend_delay +EXPORT_SYMBOL_GPL vmlinux 0x697c5d0d tracing_snapshot_alloc +EXPORT_SYMBOL_GPL vmlinux 0x6989ed7c xhci_gen_setup +EXPORT_SYMBOL_GPL vmlinux 0x69a2b9cf edac_mc_del_mc +EXPORT_SYMBOL_GPL vmlinux 0x69bc8326 led_trigger_event +EXPORT_SYMBOL_GPL vmlinux 0x69e683de uuid_gen +EXPORT_SYMBOL_GPL vmlinux 0x69ee2220 linear_range_get_selector_high +EXPORT_SYMBOL_GPL vmlinux 0x6a05b3e2 tty_buffer_unlock_exclusive +EXPORT_SYMBOL_GPL vmlinux 0x6a1733eb iommu_group_unregister_notifier +EXPORT_SYMBOL_GPL vmlinux 0x6a2198e9 paste_selection +EXPORT_SYMBOL_GPL vmlinux 0x6a34fb54 vfs_truncate +EXPORT_SYMBOL_GPL vmlinux 0x6a41c40a inet_send_prepare +EXPORT_SYMBOL_GPL vmlinux 0x6a421062 memory_failure_queue +EXPORT_SYMBOL_GPL vmlinux 0x6a460dc5 schedule_hrtimeout +EXPORT_SYMBOL_GPL vmlinux 0x6a489c19 bpf_trace_run11 +EXPORT_SYMBOL_GPL vmlinux 0x6a4ae3f0 pm_generic_restore +EXPORT_SYMBOL_GPL vmlinux 0x6a4da8c3 wakeup_source_create +EXPORT_SYMBOL_GPL vmlinux 0x6a4f623b mmu_notifier_synchronize +EXPORT_SYMBOL_GPL vmlinux 0x6a5e2bde __cookie_v6_init_sequence +EXPORT_SYMBOL_GPL vmlinux 0x6a7d02b5 cpufreq_unregister_driver +EXPORT_SYMBOL_GPL vmlinux 0x6a8441be cpci_hp_start +EXPORT_SYMBOL_GPL vmlinux 0x6a94d3e9 debugfs_attr_write +EXPORT_SYMBOL_GPL vmlinux 0x6aa8506d pinctrl_utils_reserve_map +EXPORT_SYMBOL_GPL vmlinux 0x6ab61024 rtnl_register_module +EXPORT_SYMBOL_GPL vmlinux 0x6abdf28c blk_queue_can_use_dma_map_merging +EXPORT_SYMBOL_GPL vmlinux 0x6ac8556e crypto_grab_aead +EXPORT_SYMBOL_GPL vmlinux 0x6ad07287 ipv6_recv_error +EXPORT_SYMBOL_GPL vmlinux 0x6ad5247b dummy_irq_chip +EXPORT_SYMBOL_GPL vmlinux 0x6ada5e67 preempt_notifier_unregister +EXPORT_SYMBOL_GPL vmlinux 0x6b22926b irq_work_sync +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 0x6b3ccae9 pm_generic_suspend_noirq +EXPORT_SYMBOL_GPL vmlinux 0x6b413c9b sfp_link_down +EXPORT_SYMBOL_GPL vmlinux 0x6b484050 nvdimm_in_overwrite +EXPORT_SYMBOL_GPL vmlinux 0x6b5bd3c2 nvmem_device_get +EXPORT_SYMBOL_GPL vmlinux 0x6b7562db serial8250_get_port +EXPORT_SYMBOL_GPL vmlinux 0x6b7a4335 hyperv_cleanup +EXPORT_SYMBOL_GPL vmlinux 0x6b81c38b power_supply_unreg_notifier +EXPORT_SYMBOL_GPL vmlinux 0x6b83dce4 blkdev_ioctl +EXPORT_SYMBOL_GPL vmlinux 0x6ba36c6a hwpoison_filter_flags_value +EXPORT_SYMBOL_GPL vmlinux 0x6ba38c88 sysfs_unmerge_group +EXPORT_SYMBOL_GPL vmlinux 0x6bb773e9 nvme_set_features +EXPORT_SYMBOL_GPL vmlinux 0x6bd1aa56 stack_trace_save +EXPORT_SYMBOL_GPL vmlinux 0x6bd73962 regulator_get_voltage +EXPORT_SYMBOL_GPL vmlinux 0x6bdaee8e device_remove_properties +EXPORT_SYMBOL_GPL vmlinux 0x6bddf79e pci_disable_sriov +EXPORT_SYMBOL_GPL vmlinux 0x6bdef35c acpi_ec_mark_gpe_for_wake +EXPORT_SYMBOL_GPL vmlinux 0x6bdef5ee pci_get_dsn +EXPORT_SYMBOL_GPL vmlinux 0x6c1b58b4 __rio_local_read_config_8 +EXPORT_SYMBOL_GPL vmlinux 0x6c2720ee posix_acl_create +EXPORT_SYMBOL_GPL vmlinux 0x6c2f7d6d ata_sas_tport_add +EXPORT_SYMBOL_GPL vmlinux 0x6c350eba kthread_unuse_mm +EXPORT_SYMBOL_GPL vmlinux 0x6c389761 acpi_bus_get_private_data +EXPORT_SYMBOL_GPL vmlinux 0x6c3b612b acpi_ec_add_query_handler +EXPORT_SYMBOL_GPL vmlinux 0x6c3cc685 da9052_adc_read_temp +EXPORT_SYMBOL_GPL vmlinux 0x6c3f70e0 guid_gen +EXPORT_SYMBOL_GPL vmlinux 0x6c422aff tty_kclose +EXPORT_SYMBOL_GPL vmlinux 0x6c4b6684 reset_control_assert +EXPORT_SYMBOL_GPL vmlinux 0x6c4d8f67 fuse_send_init +EXPORT_SYMBOL_GPL vmlinux 0x6c55dffa ata_scsi_slave_config +EXPORT_SYMBOL_GPL vmlinux 0x6c5cdcc7 usb_autopm_put_interface_no_suspend +EXPORT_SYMBOL_GPL vmlinux 0x6c655913 register_acpi_hed_notifier +EXPORT_SYMBOL_GPL vmlinux 0x6c692de5 input_ff_erase +EXPORT_SYMBOL_GPL vmlinux 0x6c6b4b7f pci_set_pcie_reset_state +EXPORT_SYMBOL_GPL vmlinux 0x6c6f40ab serial8250_do_set_divisor +EXPORT_SYMBOL_GPL vmlinux 0x6c8fc610 virtqueue_add_sgs +EXPORT_SYMBOL_GPL vmlinux 0x6ca128d3 virtio_break_device +EXPORT_SYMBOL_GPL vmlinux 0x6ca4bf88 async_synchronize_full_domain +EXPORT_SYMBOL_GPL vmlinux 0x6ca51556 devm_nvmem_device_put +EXPORT_SYMBOL_GPL vmlinux 0x6ca63496 register_kretprobe +EXPORT_SYMBOL_GPL vmlinux 0x6cad0c66 gpiod_count +EXPORT_SYMBOL_GPL vmlinux 0x6cb60918 efivar_entry_get +EXPORT_SYMBOL_GPL vmlinux 0x6cb8aa1c bus_rescan_devices +EXPORT_SYMBOL_GPL vmlinux 0x6cce6655 pci_generic_config_read32 +EXPORT_SYMBOL_GPL vmlinux 0x6ccefd9d regulator_get_current_limit_regmap +EXPORT_SYMBOL_GPL vmlinux 0x6cdc4788 dev_pm_opp_get_freq +EXPORT_SYMBOL_GPL vmlinux 0x6ce1c1b4 gpiochip_irqchip_irq_valid +EXPORT_SYMBOL_GPL vmlinux 0x6d0ae550 pinctrl_gpio_request +EXPORT_SYMBOL_GPL vmlinux 0x6d253dc9 dst_cache_set_ip6 +EXPORT_SYMBOL_GPL vmlinux 0x6d2cde4d devlink_resource_size_get +EXPORT_SYMBOL_GPL vmlinux 0x6d2e899d mce_usable_address +EXPORT_SYMBOL_GPL vmlinux 0x6d2fc5a6 net_namespace_list +EXPORT_SYMBOL_GPL vmlinux 0x6d34e3dc dev_pm_qos_expose_latency_limit +EXPORT_SYMBOL_GPL vmlinux 0x6d3734ce devm_hwmon_device_register_with_info +EXPORT_SYMBOL_GPL vmlinux 0x6d5469c8 pm_generic_resume_early +EXPORT_SYMBOL_GPL vmlinux 0x6d57659e open_related_ns +EXPORT_SYMBOL_GPL vmlinux 0x6d6616ab skcipher_register_instance +EXPORT_SYMBOL_GPL vmlinux 0x6d6fec1f ktime_mono_to_any +EXPORT_SYMBOL_GPL vmlinux 0x6d7dc2ab compat_only_sysfs_link_entry_to_kobj +EXPORT_SYMBOL_GPL vmlinux 0x6d7e951e rcu_exp_batches_completed +EXPORT_SYMBOL_GPL vmlinux 0x6d8fbe57 raw_seq_start +EXPORT_SYMBOL_GPL vmlinux 0x6d9ee2a0 __request_percpu_irq +EXPORT_SYMBOL_GPL vmlinux 0x6daa3fbb devm_platform_ioremap_resource_byname +EXPORT_SYMBOL_GPL vmlinux 0x6dbaafd3 put_old_timespec32 +EXPORT_SYMBOL_GPL vmlinux 0x6dc322b1 clk_hw_register_fixed_factor +EXPORT_SYMBOL_GPL vmlinux 0x6dccead4 arizona_clk32k_disable +EXPORT_SYMBOL_GPL vmlinux 0x6ded1dcc d_walk +EXPORT_SYMBOL_GPL vmlinux 0x6df005d5 pm_genpd_init +EXPORT_SYMBOL_GPL vmlinux 0x6e00fcfb modify_ftrace_direct +EXPORT_SYMBOL_GPL vmlinux 0x6e01c2ed devm_hwrng_register +EXPORT_SYMBOL_GPL vmlinux 0x6e17df86 hvc_remove +EXPORT_SYMBOL_GPL vmlinux 0x6e18c005 dm_suspended +EXPORT_SYMBOL_GPL vmlinux 0x6e23d343 xdp_attachment_flags_ok +EXPORT_SYMBOL_GPL vmlinux 0x6e3ff83a edac_device_alloc_index +EXPORT_SYMBOL_GPL vmlinux 0x6e456012 nvme_stop_keep_alive +EXPORT_SYMBOL_GPL vmlinux 0x6e4bc056 spi_res_free +EXPORT_SYMBOL_GPL vmlinux 0x6e6d0dd9 arizona_clk32k_enable +EXPORT_SYMBOL_GPL vmlinux 0x6e7026c7 devres_alloc_node +EXPORT_SYMBOL_GPL vmlinux 0x6e7943ec iommu_group_id +EXPORT_SYMBOL_GPL vmlinux 0x6e84b258 pci_epc_set_bar +EXPORT_SYMBOL_GPL vmlinux 0x6e85076f pm_generic_thaw_early +EXPORT_SYMBOL_GPL vmlinux 0x6e85b00b local_touch_nmi +EXPORT_SYMBOL_GPL vmlinux 0x6e89a560 regmap_irq_chip_get_base +EXPORT_SYMBOL_GPL vmlinux 0x6e8a5e77 fwnode_count_parents +EXPORT_SYMBOL_GPL vmlinux 0x6e94351b devm_gpiochip_add_data_with_key +EXPORT_SYMBOL_GPL vmlinux 0x6e9bce92 md_kick_rdev_from_array +EXPORT_SYMBOL_GPL vmlinux 0x6eb16623 ata_std_error_handler +EXPORT_SYMBOL_GPL vmlinux 0x6eb84e1d vfio_iommu_group_put +EXPORT_SYMBOL_GPL vmlinux 0x6ebe366f ktime_get_mono_fast_ns +EXPORT_SYMBOL_GPL vmlinux 0x6ec38b4c ata_sas_port_suspend +EXPORT_SYMBOL_GPL vmlinux 0x6ec5e464 rtc_set_time +EXPORT_SYMBOL_GPL vmlinux 0x6ee8c94b sfp_get_module_eeprom +EXPORT_SYMBOL_GPL vmlinux 0x6ef6b54f ktime_get_boot_fast_ns +EXPORT_SYMBOL_GPL vmlinux 0x6f0c0dd6 __sock_recv_timestamp +EXPORT_SYMBOL_GPL vmlinux 0x6f12560a get_old_timespec32 +EXPORT_SYMBOL_GPL vmlinux 0x6f4776af nexthop_select_path +EXPORT_SYMBOL_GPL vmlinux 0x6f5ca50e evm_inode_init_security +EXPORT_SYMBOL_GPL vmlinux 0x6f6afbdb crypto_register_instance +EXPORT_SYMBOL_GPL vmlinux 0x6f71f0b7 device_link_add +EXPORT_SYMBOL_GPL vmlinux 0x6f7b1beb fat_truncate_time +EXPORT_SYMBOL_GPL vmlinux 0x6f949151 __acpi_nvdimm_notify +EXPORT_SYMBOL_GPL vmlinux 0x6f9e763b timecounter_read +EXPORT_SYMBOL_GPL vmlinux 0x6fcef6ab ring_buffer_reset +EXPORT_SYMBOL_GPL vmlinux 0x6ff3650b ipv6_proxy_select_ident +EXPORT_SYMBOL_GPL vmlinux 0x6ff607b6 crypto_get_default_rng +EXPORT_SYMBOL_GPL vmlinux 0x6ffce680 x86_cpu_has_min_microcode_rev +EXPORT_SYMBOL_GPL vmlinux 0x700358a4 fwnode_get_next_available_child_node +EXPORT_SYMBOL_GPL vmlinux 0x7006586e iommu_get_group_resv_regions +EXPORT_SYMBOL_GPL vmlinux 0x70200f80 fib6_rule_default +EXPORT_SYMBOL_GPL vmlinux 0x70415320 phy_modify_changed +EXPORT_SYMBOL_GPL vmlinux 0x704b6646 devlink_net_set +EXPORT_SYMBOL_GPL vmlinux 0x705001e9 cleanup_srcu_struct +EXPORT_SYMBOL_GPL vmlinux 0x70576fee acpi_processor_ffh_cstate_probe +EXPORT_SYMBOL_GPL vmlinux 0x706f2f2e rtc_class_open +EXPORT_SYMBOL_GPL vmlinux 0x7073c04f phy_10_100_features_array +EXPORT_SYMBOL_GPL vmlinux 0x70777366 thermal_zone_device_register +EXPORT_SYMBOL_GPL vmlinux 0x7079a4a3 tracepoint_srcu +EXPORT_SYMBOL_GPL vmlinux 0x7090ae99 pci_disable_pri +EXPORT_SYMBOL_GPL vmlinux 0x70ad4c34 xdp_return_frame_rx_napi +EXPORT_SYMBOL_GPL vmlinux 0x70bcdab2 devm_regulator_get_optional +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 0x70d70f32 usb_free_streams +EXPORT_SYMBOL_GPL vmlinux 0x70db283e cpufreq_table_index_unsorted +EXPORT_SYMBOL_GPL vmlinux 0x70f36638 blk_abort_request +EXPORT_SYMBOL_GPL vmlinux 0x70f414c1 dev_pm_qos_hide_latency_tolerance +EXPORT_SYMBOL_GPL vmlinux 0x70f4afb2 tty_set_ldisc +EXPORT_SYMBOL_GPL vmlinux 0x70f5332f sfi_table_parse +EXPORT_SYMBOL_GPL vmlinux 0x70f72d30 dev_pm_opp_enable +EXPORT_SYMBOL_GPL vmlinux 0x710c73b6 crypto_unregister_notifier +EXPORT_SYMBOL_GPL vmlinux 0x711199c6 scsi_autopm_get_device +EXPORT_SYMBOL_GPL vmlinux 0x71316503 kmsg_dump_get_line +EXPORT_SYMBOL_GPL vmlinux 0x7149d6b5 user_destroy +EXPORT_SYMBOL_GPL vmlinux 0x716265c7 debugfs_initialized +EXPORT_SYMBOL_GPL vmlinux 0x71650819 add_bootloader_randomness +EXPORT_SYMBOL_GPL vmlinux 0x7165e824 iommu_set_fault_handler +EXPORT_SYMBOL_GPL vmlinux 0x71761b03 hwspin_lock_free +EXPORT_SYMBOL_GPL vmlinux 0x7181db30 atomic_notifier_chain_unregister +EXPORT_SYMBOL_GPL vmlinux 0x7195b832 ethnl_cable_test_fault_length +EXPORT_SYMBOL_GPL vmlinux 0x7199de55 iommu_get_domain_for_dev +EXPORT_SYMBOL_GPL vmlinux 0x719e17ff clk_notifier_unregister +EXPORT_SYMBOL_GPL vmlinux 0x71cd4925 pci_device_group +EXPORT_SYMBOL_GPL vmlinux 0x71f4aa21 crypto_unregister_instance +EXPORT_SYMBOL_GPL vmlinux 0x71f6670b __cookie_v6_check +EXPORT_SYMBOL_GPL vmlinux 0x71f7b56d disk_map_sector_rcu +EXPORT_SYMBOL_GPL vmlinux 0x71fdce08 clk_hw_get_flags +EXPORT_SYMBOL_GPL vmlinux 0x72071ec9 dm_disk +EXPORT_SYMBOL_GPL vmlinux 0x721928ee anon_inode_getfile +EXPORT_SYMBOL_GPL vmlinux 0x721f337c ata_cable_ignore +EXPORT_SYMBOL_GPL vmlinux 0x7221590d ip6_append_data +EXPORT_SYMBOL_GPL vmlinux 0x72253f40 regulator_register_supply_alias +EXPORT_SYMBOL_GPL vmlinux 0x7225ce32 regulator_count_voltages +EXPORT_SYMBOL_GPL vmlinux 0x723d7ae0 pinctrl_pm_select_idle_state +EXPORT_SYMBOL_GPL vmlinux 0x72536d06 dev_pm_opp_find_freq_floor +EXPORT_SYMBOL_GPL vmlinux 0x725610dc usb_get_from_anchor +EXPORT_SYMBOL_GPL vmlinux 0x7268f82e blk_mq_force_complete_rq +EXPORT_SYMBOL_GPL vmlinux 0x726ac594 rio_get_asm +EXPORT_SYMBOL_GPL vmlinux 0x726dc7c4 vfs_read +EXPORT_SYMBOL_GPL vmlinux 0x72770b6b __phy_modify +EXPORT_SYMBOL_GPL vmlinux 0x7278d328 all_vm_events +EXPORT_SYMBOL_GPL vmlinux 0x728b7e94 raw_seq_next +EXPORT_SYMBOL_GPL vmlinux 0x729b94a9 fscrypt_ioctl_remove_key_all_users +EXPORT_SYMBOL_GPL vmlinux 0x72c1aeeb __tracepoint_map +EXPORT_SYMBOL_GPL vmlinux 0x72c20a38 subsys_dev_iter_next +EXPORT_SYMBOL_GPL vmlinux 0x72cfba13 pinctrl_select_state +EXPORT_SYMBOL_GPL vmlinux 0x72d267dc nvmem_del_cell_lookups +EXPORT_SYMBOL_GPL vmlinux 0x72e07867 inet6_destroy_sock +EXPORT_SYMBOL_GPL vmlinux 0x72e37d71 rio_get_comptag +EXPORT_SYMBOL_GPL vmlinux 0x72ec3441 pci_msi_prepare +EXPORT_SYMBOL_GPL vmlinux 0x72f5d363 phy_create_lookup +EXPORT_SYMBOL_GPL vmlinux 0x7309ef15 ipv6_bpf_stub +EXPORT_SYMBOL_GPL vmlinux 0x7312b73f rtc_read_time +EXPORT_SYMBOL_GPL vmlinux 0x7313b4ac spi_delay_to_ns +EXPORT_SYMBOL_GPL vmlinux 0x73154d6f fb_deferred_io_init +EXPORT_SYMBOL_GPL vmlinux 0x73172320 register_acpi_bus_type +EXPORT_SYMBOL_GPL vmlinux 0x73199e08 srcu_notifier_chain_unregister +EXPORT_SYMBOL_GPL vmlinux 0x73302627 skb_to_sgvec +EXPORT_SYMBOL_GPL vmlinux 0x735aa154 acpi_dma_request_slave_chan_by_index +EXPORT_SYMBOL_GPL vmlinux 0x736b2fb0 regulator_set_voltage_time_sel +EXPORT_SYMBOL_GPL vmlinux 0x73796ab6 regulator_get_hardware_vsel_register +EXPORT_SYMBOL_GPL vmlinux 0x7381287f trace_handle_return +EXPORT_SYMBOL_GPL vmlinux 0x73894b92 ata_dev_next +EXPORT_SYMBOL_GPL vmlinux 0x738fe32b amd_get_nodes_per_socket +EXPORT_SYMBOL_GPL vmlinux 0x73a48b4a ata_sff_std_ports +EXPORT_SYMBOL_GPL vmlinux 0x73afd54b __efivar_entry_iter +EXPORT_SYMBOL_GPL vmlinux 0x73b96593 ata_dummy_port_ops +EXPORT_SYMBOL_GPL vmlinux 0x73c2554f __iowrite64_copy +EXPORT_SYMBOL_GPL vmlinux 0x73cc8631 oiap +EXPORT_SYMBOL_GPL vmlinux 0x73d30eae devm_kstrdup_const +EXPORT_SYMBOL_GPL vmlinux 0x73ef74b9 crypto_stats_akcipher_sign +EXPORT_SYMBOL_GPL vmlinux 0x73f1efd2 sk_setup_caps +EXPORT_SYMBOL_GPL vmlinux 0x73f8d363 irq_chip_enable_parent +EXPORT_SYMBOL_GPL vmlinux 0x740f6d2c ata_eh_analyze_ncq_error +EXPORT_SYMBOL_GPL vmlinux 0x742211a8 clk_bulk_get_optional +EXPORT_SYMBOL_GPL vmlinux 0x7425429f __of_reset_control_get +EXPORT_SYMBOL_GPL vmlinux 0x74365ef3 n_tty_inherit_ops +EXPORT_SYMBOL_GPL vmlinux 0x743a165e ata_pack_xfermask +EXPORT_SYMBOL_GPL vmlinux 0x74457e56 apei_resources_fini +EXPORT_SYMBOL_GPL vmlinux 0x7452adff user_return_notifier_register +EXPORT_SYMBOL_GPL vmlinux 0x74604bff dma_request_chan_by_mask +EXPORT_SYMBOL_GPL vmlinux 0x7460f604 __fscrypt_encrypt_symlink +EXPORT_SYMBOL_GPL vmlinux 0x746a91d7 ata_bmdma_post_internal_cmd +EXPORT_SYMBOL_GPL vmlinux 0x7470e6a8 vmbus_connect_ring +EXPORT_SYMBOL_GPL vmlinux 0x7485f0d3 ping_unhash +EXPORT_SYMBOL_GPL vmlinux 0x748fa03f spi_take_timestamp_pre +EXPORT_SYMBOL_GPL vmlinux 0x7496986b ip_route_output_key_hash +EXPORT_SYMBOL_GPL vmlinux 0x749cad9e pci_epc_multi_mem_init +EXPORT_SYMBOL_GPL vmlinux 0x74b5ea68 lcm_not_zero +EXPORT_SYMBOL_GPL vmlinux 0x74baf17a tracing_is_on +EXPORT_SYMBOL_GPL vmlinux 0x74c7bffa stack_trace_snprint +EXPORT_SYMBOL_GPL vmlinux 0x74c99914 arizona_pm_ops +EXPORT_SYMBOL_GPL vmlinux 0x74e73871 housekeeping_overridden +EXPORT_SYMBOL_GPL vmlinux 0x750a3dbc devm_rtc_allocate_device +EXPORT_SYMBOL_GPL vmlinux 0x750d232a regmap_irq_get_domain +EXPORT_SYMBOL_GPL vmlinux 0x75108e7a cpufreq_dbs_governor_limits +EXPORT_SYMBOL_GPL vmlinux 0x75133f6e visitor128 +EXPORT_SYMBOL_GPL vmlinux 0x7513a473 watchdog_set_restart_priority +EXPORT_SYMBOL_GPL vmlinux 0x7521afb6 leave_mm +EXPORT_SYMBOL_GPL vmlinux 0x7522715f driver_unregister +EXPORT_SYMBOL_GPL vmlinux 0x7522f3ba irq_modify_status +EXPORT_SYMBOL_GPL vmlinux 0x752fb3b9 shmem_truncate_range +EXPORT_SYMBOL_GPL vmlinux 0x75340bcd fuse_dev_operations +EXPORT_SYMBOL_GPL vmlinux 0x753b0aa1 ata_pci_device_do_suspend +EXPORT_SYMBOL_GPL vmlinux 0x754bce59 pci_ignore_hotplug +EXPORT_SYMBOL_GPL vmlinux 0x75680446 efivars_unregister +EXPORT_SYMBOL_GPL vmlinux 0x75792186 get_xsave_addr +EXPORT_SYMBOL_GPL vmlinux 0x75920516 unregister_asymmetric_key_parser +EXPORT_SYMBOL_GPL vmlinux 0x759bfe36 btree_destroy +EXPORT_SYMBOL_GPL vmlinux 0x75b13213 trace_output_call +EXPORT_SYMBOL_GPL vmlinux 0x75c3738d nvdimm_region_notify +EXPORT_SYMBOL_GPL vmlinux 0x75cbfb09 add_interrupt_randomness +EXPORT_SYMBOL_GPL vmlinux 0x75d25e7e __tracepoint_napi_poll +EXPORT_SYMBOL_GPL vmlinux 0x75e1f4d4 dma_buf_dynamic_attach +EXPORT_SYMBOL_GPL vmlinux 0x75e9c735 pci_ats_disabled +EXPORT_SYMBOL_GPL vmlinux 0x75f0e875 xas_store +EXPORT_SYMBOL_GPL vmlinux 0x75f1198e bpf_prog_sub +EXPORT_SYMBOL_GPL vmlinux 0x7600a1a8 gpiochip_line_is_open_source +EXPORT_SYMBOL_GPL vmlinux 0x7614669d iomap_file_buffered_write +EXPORT_SYMBOL_GPL vmlinux 0x763a8b71 dma_max_mapping_size +EXPORT_SYMBOL_GPL vmlinux 0x765ff9bd phy_restart_aneg +EXPORT_SYMBOL_GPL vmlinux 0x7660ed25 netdev_walk_all_lower_dev_rcu +EXPORT_SYMBOL_GPL vmlinux 0x7665a95b idr_remove +EXPORT_SYMBOL_GPL vmlinux 0x7665ee72 crypto_dh_decode_key +EXPORT_SYMBOL_GPL vmlinux 0x767ae12f usb_free_urb +EXPORT_SYMBOL_GPL vmlinux 0x7681946c unregister_pm_notifier +EXPORT_SYMBOL_GPL vmlinux 0x76d9b876 clk_set_rate +EXPORT_SYMBOL_GPL vmlinux 0x76edf63b xdp_convert_zc_to_xdp_frame +EXPORT_SYMBOL_GPL vmlinux 0x76eeeb0f sha384_zero_message_hash +EXPORT_SYMBOL_GPL vmlinux 0x76efe00e pci_rescan_bus +EXPORT_SYMBOL_GPL vmlinux 0x77103a98 power_supply_register_no_ws +EXPORT_SYMBOL_GPL vmlinux 0x77222306 ring_buffer_read_page +EXPORT_SYMBOL_GPL vmlinux 0x7729cbdd task_handoff_register +EXPORT_SYMBOL_GPL vmlinux 0x77332efa spi_mem_supports_op +EXPORT_SYMBOL_GPL vmlinux 0x773d02d5 devfreq_event_is_enabled +EXPORT_SYMBOL_GPL vmlinux 0x773f2713 clk_hw_unregister_mux +EXPORT_SYMBOL_GPL vmlinux 0x7747af93 arizona_set_irq_wake +EXPORT_SYMBOL_GPL vmlinux 0x774a23b3 fib_table_lookup +EXPORT_SYMBOL_GPL vmlinux 0x7757b51a clk_unregister +EXPORT_SYMBOL_GPL vmlinux 0x7759190c init_pid_ns +EXPORT_SYMBOL_GPL vmlinux 0x77711798 devm_phy_put +EXPORT_SYMBOL_GPL vmlinux 0x777f0194 usb_driver_set_configuration +EXPORT_SYMBOL_GPL vmlinux 0x7791e066 dw_pcie_read +EXPORT_SYMBOL_GPL vmlinux 0x77a6ef5b dm_post_suspending +EXPORT_SYMBOL_GPL vmlinux 0x77ae495d usb_speed_string +EXPORT_SYMBOL_GPL vmlinux 0x77badf5c irq_chip_set_parent_state +EXPORT_SYMBOL_GPL vmlinux 0x77e507fe register_trace_event +EXPORT_SYMBOL_GPL vmlinux 0x77e75be3 sfp_bus_put +EXPORT_SYMBOL_GPL vmlinux 0x77eb2fe7 __hrtimer_get_remaining +EXPORT_SYMBOL_GPL vmlinux 0x77ecf68d memalloc_socks_key +EXPORT_SYMBOL_GPL vmlinux 0x77fe9f32 dax_finish_sync_fault +EXPORT_SYMBOL_GPL vmlinux 0x78041b8f byte_rev_table +EXPORT_SYMBOL_GPL vmlinux 0x780af70d crypto_stats_aead_encrypt +EXPORT_SYMBOL_GPL vmlinux 0x782adb74 hpet_rtc_interrupt +EXPORT_SYMBOL_GPL vmlinux 0x7842473c fwnode_remove_software_node +EXPORT_SYMBOL_GPL vmlinux 0x785a93b4 si_mem_available +EXPORT_SYMBOL_GPL vmlinux 0x78632d99 fsnotify +EXPORT_SYMBOL_GPL vmlinux 0x78646c85 cpufreq_register_driver +EXPORT_SYMBOL_GPL vmlinux 0x786c0cca proc_create_net_data_write +EXPORT_SYMBOL_GPL vmlinux 0x787c882b lzo1x_1_compress +EXPORT_SYMBOL_GPL vmlinux 0x788bfbad ring_buffer_empty +EXPORT_SYMBOL_GPL vmlinux 0x788fd48b perf_event_pause +EXPORT_SYMBOL_GPL vmlinux 0x789c73d9 rcu_cpu_stall_suppress_at_boot +EXPORT_SYMBOL_GPL vmlinux 0x78a17313 cdrom_multisession +EXPORT_SYMBOL_GPL vmlinux 0x78a1ea3f driver_find +EXPORT_SYMBOL_GPL vmlinux 0x78a4c458 blk_mq_bio_list_merge +EXPORT_SYMBOL_GPL vmlinux 0x78be151f query_asymmetric_key +EXPORT_SYMBOL_GPL vmlinux 0x78c25101 rtc_set_alarm +EXPORT_SYMBOL_GPL vmlinux 0x78c2e0fe devm_mdiobus_free +EXPORT_SYMBOL_GPL vmlinux 0x78d24b2d device_create_with_groups +EXPORT_SYMBOL_GPL vmlinux 0x78dd9666 dw_pcie_ep_init_complete +EXPORT_SYMBOL_GPL vmlinux 0x78ddb76b dmi_match +EXPORT_SYMBOL_GPL vmlinux 0x790be0b9 usb_bus_idr +EXPORT_SYMBOL_GPL vmlinux 0x790bfdaf crypto_stats_rng_generate +EXPORT_SYMBOL_GPL vmlinux 0x7915cee5 do_machine_check +EXPORT_SYMBOL_GPL vmlinux 0x791748c8 adxl_decode +EXPORT_SYMBOL_GPL vmlinux 0x7918d817 memory_failure +EXPORT_SYMBOL_GPL vmlinux 0x7922b07b fsnotify_add_mark +EXPORT_SYMBOL_GPL vmlinux 0x792eecf0 task_cls_state +EXPORT_SYMBOL_GPL vmlinux 0x794338f4 pid_nr_ns +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 0x79516c06 xdp_return_frame +EXPORT_SYMBOL_GPL vmlinux 0x7978d73c _proc_mkdir +EXPORT_SYMBOL_GPL vmlinux 0x798b7682 klist_prev +EXPORT_SYMBOL_GPL vmlinux 0x7991fd8d crash_vmclear_loaded_vmcss +EXPORT_SYMBOL_GPL vmlinux 0x799aebb1 sbitmap_get_shallow +EXPORT_SYMBOL_GPL vmlinux 0x79a2d15d rdev_get_regmap +EXPORT_SYMBOL_GPL vmlinux 0x79ba0b37 clk_hw_is_prepared +EXPORT_SYMBOL_GPL vmlinux 0x79bc842c usb_anchor_suspend_wakeups +EXPORT_SYMBOL_GPL vmlinux 0x79c8f956 sysfs_remove_file_from_group +EXPORT_SYMBOL_GPL vmlinux 0x79cd7e69 pm_clk_destroy +EXPORT_SYMBOL_GPL vmlinux 0x79cf1043 fpu_kernel_xstate_size +EXPORT_SYMBOL_GPL vmlinux 0x79defbe1 kthread_should_park +EXPORT_SYMBOL_GPL vmlinux 0x79e69460 intel_iommu_gfx_mapped +EXPORT_SYMBOL_GPL vmlinux 0x79f697e4 lzorle1x_1_compress +EXPORT_SYMBOL_GPL vmlinux 0x79ff4e76 iommu_domain_window_disable +EXPORT_SYMBOL_GPL vmlinux 0x7a01ba5d tty_port_tty_wakeup +EXPORT_SYMBOL_GPL vmlinux 0x7a139a62 tpm2_probe +EXPORT_SYMBOL_GPL vmlinux 0x7a258c02 switchdev_handle_port_obj_add +EXPORT_SYMBOL_GPL vmlinux 0x7a2b50f9 pci_sriov_get_totalvfs +EXPORT_SYMBOL_GPL vmlinux 0x7a416e06 vfio_device_get_from_dev +EXPORT_SYMBOL_GPL vmlinux 0x7a565798 usb_driver_claim_interface +EXPORT_SYMBOL_GPL vmlinux 0x7a566eae sfp_add_phy +EXPORT_SYMBOL_GPL vmlinux 0x7a6105e8 crypto_stats_skcipher_encrypt +EXPORT_SYMBOL_GPL vmlinux 0x7a6107a8 sysfs_update_groups +EXPORT_SYMBOL_GPL vmlinux 0x7a655f68 acpi_processor_claim_cst_control +EXPORT_SYMBOL_GPL vmlinux 0x7a71af77 add_memory_driver_managed +EXPORT_SYMBOL_GPL vmlinux 0x7a7327cc dw_pcie_find_ext_capability +EXPORT_SYMBOL_GPL vmlinux 0x7a73e605 wm831x_isinkv_values +EXPORT_SYMBOL_GPL vmlinux 0x7a76d674 led_set_brightness +EXPORT_SYMBOL_GPL vmlinux 0x7a78c81f ata_slave_link_init +EXPORT_SYMBOL_GPL vmlinux 0x7a81541b async_synchronize_cookie +EXPORT_SYMBOL_GPL vmlinux 0x7a98f4b4 copy_from_user_nofault +EXPORT_SYMBOL_GPL vmlinux 0x7a9e4c23 software_node_register_node_group +EXPORT_SYMBOL_GPL vmlinux 0x7aa8756a debugfs_create_dir +EXPORT_SYMBOL_GPL vmlinux 0x7ab044ba power_supply_put_battery_info +EXPORT_SYMBOL_GPL vmlinux 0x7abfca43 rhashtable_init +EXPORT_SYMBOL_GPL vmlinux 0x7ac381a8 blk_mq_sched_mark_restart_hctx +EXPORT_SYMBOL_GPL vmlinux 0x7ac722bd phy_all_ports_features_array +EXPORT_SYMBOL_GPL vmlinux 0x7ace318c __regmap_init_spi +EXPORT_SYMBOL_GPL vmlinux 0x7ad1ded1 pinctrl_register_mappings +EXPORT_SYMBOL_GPL vmlinux 0x7ae6c4fe devm_hwrng_unregister +EXPORT_SYMBOL_GPL vmlinux 0x7af97a3f pm_clk_suspend +EXPORT_SYMBOL_GPL vmlinux 0x7afcb7db __kprobe_event_add_fields +EXPORT_SYMBOL_GPL vmlinux 0x7afced43 cpufreq_generic_attr +EXPORT_SYMBOL_GPL vmlinux 0x7b178afe unlock_system_sleep +EXPORT_SYMBOL_GPL vmlinux 0x7b2e168a badblocks_init +EXPORT_SYMBOL_GPL vmlinux 0x7b32784e crypto_mod_get +EXPORT_SYMBOL_GPL vmlinux 0x7b33cb09 pci_find_ext_capability +EXPORT_SYMBOL_GPL vmlinux 0x7b46592c usb_for_each_dev +EXPORT_SYMBOL_GPL vmlinux 0x7b4b627f cpufreq_disable_fast_switch +EXPORT_SYMBOL_GPL vmlinux 0x7b4c9ba9 sbitmap_queue_min_shallow_depth +EXPORT_SYMBOL_GPL vmlinux 0x7b4ef438 unregister_kprobes +EXPORT_SYMBOL_GPL vmlinux 0x7b5452b8 acpi_unregister_gsi +EXPORT_SYMBOL_GPL vmlinux 0x7b570c78 __iptunnel_pull_header +EXPORT_SYMBOL_GPL vmlinux 0x7b5a376a power_supply_unregister +EXPORT_SYMBOL_GPL vmlinux 0x7b5a4926 sha1_zero_message_hash +EXPORT_SYMBOL_GPL vmlinux 0x7b6ba5b6 transport_class_register +EXPORT_SYMBOL_GPL vmlinux 0x7b6f9536 acpi_register_wakeup_handler +EXPORT_SYMBOL_GPL vmlinux 0x7b70ea9e fsverity_prepare_setattr +EXPORT_SYMBOL_GPL vmlinux 0x7b8217b6 usb_get_dev +EXPORT_SYMBOL_GPL vmlinux 0x7b856860 cpuidle_unregister_device +EXPORT_SYMBOL_GPL vmlinux 0x7b8dc3a8 balloon_page_list_dequeue +EXPORT_SYMBOL_GPL vmlinux 0x7b8efd34 devlink_port_register +EXPORT_SYMBOL_GPL vmlinux 0x7b9793a2 get_cpu_idle_time_us +EXPORT_SYMBOL_GPL vmlinux 0x7ba06dff sysfs_create_group +EXPORT_SYMBOL_GPL vmlinux 0x7bbd4145 iommu_register_device_fault_handler +EXPORT_SYMBOL_GPL vmlinux 0x7bc16241 regulator_bulk_disable +EXPORT_SYMBOL_GPL vmlinux 0x7bc18560 tty_port_register_device +EXPORT_SYMBOL_GPL vmlinux 0x7bc908f4 spi_mem_get_name +EXPORT_SYMBOL_GPL vmlinux 0x7bcfd6c1 register_kprobes +EXPORT_SYMBOL_GPL vmlinux 0x7be642b7 ata_port_wait_eh +EXPORT_SYMBOL_GPL vmlinux 0x7be87715 regulator_get_optional +EXPORT_SYMBOL_GPL vmlinux 0x7bfbf63b blk_req_zone_write_trylock +EXPORT_SYMBOL_GPL vmlinux 0x7c06a018 edac_device_free_ctl_info +EXPORT_SYMBOL_GPL vmlinux 0x7c077dcf ata_pci_sff_init_host +EXPORT_SYMBOL_GPL vmlinux 0x7c102609 rio_pw_enable +EXPORT_SYMBOL_GPL vmlinux 0x7c20b6a0 load_direct_gdt +EXPORT_SYMBOL_GPL vmlinux 0x7c2da1d1 crypto_aead_setauthsize +EXPORT_SYMBOL_GPL vmlinux 0x7c3ecc0f raw_hash_sk +EXPORT_SYMBOL_GPL vmlinux 0x7c57421b x509_cert_parse +EXPORT_SYMBOL_GPL vmlinux 0x7c5f3711 ioasid_unregister_allocator +EXPORT_SYMBOL_GPL vmlinux 0x7c626556 list_lru_destroy +EXPORT_SYMBOL_GPL vmlinux 0x7c681aba efivar_work +EXPORT_SYMBOL_GPL vmlinux 0x7c7f5094 pci_speed_string +EXPORT_SYMBOL_GPL vmlinux 0x7c9141b8 perf_event_release_kernel +EXPORT_SYMBOL_GPL vmlinux 0x7c983a5d dmi_walk +EXPORT_SYMBOL_GPL vmlinux 0x7c9a7371 clk_prepare +EXPORT_SYMBOL_GPL vmlinux 0x7ca727d7 crypto_grab_ahash +EXPORT_SYMBOL_GPL vmlinux 0x7cb803de btree_grim_visitor +EXPORT_SYMBOL_GPL vmlinux 0x7cca455b rio_mport_get_efb +EXPORT_SYMBOL_GPL vmlinux 0x7cd6f042 cpufreq_get_current_driver +EXPORT_SYMBOL_GPL vmlinux 0x7cddbfe7 cs47l24_irq +EXPORT_SYMBOL_GPL vmlinux 0x7ceaf0d5 generic_handle_irq +EXPORT_SYMBOL_GPL vmlinux 0x7cf2d084 cpufreq_freq_transition_begin +EXPORT_SYMBOL_GPL vmlinux 0x7d00c65b nd_synchronize +EXPORT_SYMBOL_GPL vmlinux 0x7d0e1d95 hv_setup_crash_handler +EXPORT_SYMBOL_GPL vmlinux 0x7d12e5fe sata_set_spd +EXPORT_SYMBOL_GPL vmlinux 0x7d14d2b5 __rtnl_link_unregister +EXPORT_SYMBOL_GPL vmlinux 0x7d197d6d devm_release_action +EXPORT_SYMBOL_GPL vmlinux 0x7d1bb1d4 tnum_strn +EXPORT_SYMBOL_GPL vmlinux 0x7d2ca554 pci_epc_get_first_free_bar +EXPORT_SYMBOL_GPL vmlinux 0x7d57aeaf device_initialize +EXPORT_SYMBOL_GPL vmlinux 0x7d59dd46 pm_wq +EXPORT_SYMBOL_GPL vmlinux 0x7d747e9d nvme_complete_async_event +EXPORT_SYMBOL_GPL vmlinux 0x7d942a18 __clk_mux_determine_rate_closest +EXPORT_SYMBOL_GPL vmlinux 0x7da34bb7 elv_register +EXPORT_SYMBOL_GPL vmlinux 0x7db191db pci_check_and_mask_intx +EXPORT_SYMBOL_GPL vmlinux 0x7dbc5d2a devres_remove_group +EXPORT_SYMBOL_GPL vmlinux 0x7dcf533d iommu_unregister_device_fault_handler +EXPORT_SYMBOL_GPL vmlinux 0x7dd1bea4 rio_mport_read_config_32 +EXPORT_SYMBOL_GPL vmlinux 0x7dda30af unregister_tracepoint_module_notifier +EXPORT_SYMBOL_GPL vmlinux 0x7ddb2718 __tracepoint_block_rq_remap +EXPORT_SYMBOL_GPL vmlinux 0x7de5dd73 fwnode_graph_get_remote_node +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 0x7e30a521 ip_tunnel_init_net +EXPORT_SYMBOL_GPL vmlinux 0x7e390001 intel_msic_bulk_read +EXPORT_SYMBOL_GPL vmlinux 0x7e39b0d2 virtqueue_get_desc_addr +EXPORT_SYMBOL_GPL vmlinux 0x7e5db80b pstore_name_to_type +EXPORT_SYMBOL_GPL vmlinux 0x7e64181d usb_calc_bus_time +EXPORT_SYMBOL_GPL vmlinux 0x7e65919f gpiochip_reqres_irq +EXPORT_SYMBOL_GPL vmlinux 0x7e73671e strp_stop +EXPORT_SYMBOL_GPL vmlinux 0x7e7e3f58 ring_buffer_reset_cpu +EXPORT_SYMBOL_GPL vmlinux 0x7e8d8619 usb_anchor_empty +EXPORT_SYMBOL_GPL vmlinux 0x7e9a572f events_sysfs_show +EXPORT_SYMBOL_GPL vmlinux 0x7e9e9266 ncsi_vlan_rx_kill_vid +EXPORT_SYMBOL_GPL vmlinux 0x7ea75c24 __wake_up_locked_key_bookmark +EXPORT_SYMBOL_GPL vmlinux 0x7ead450b device_connection_find +EXPORT_SYMBOL_GPL vmlinux 0x7eafba3e ata_host_detach +EXPORT_SYMBOL_GPL vmlinux 0x7eb808d0 add_cpu +EXPORT_SYMBOL_GPL vmlinux 0x7ec814de inet_hashinfo_init +EXPORT_SYMBOL_GPL vmlinux 0x7ecea8d8 spi_res_alloc +EXPORT_SYMBOL_GPL vmlinux 0x7ed02e02 bus_for_each_dev +EXPORT_SYMBOL_GPL vmlinux 0x7ee3eb7e skb_mpls_pop +EXPORT_SYMBOL_GPL vmlinux 0x7eea6b8b pcap_adc_async +EXPORT_SYMBOL_GPL vmlinux 0x7f0800af usb_init_urb +EXPORT_SYMBOL_GPL vmlinux 0x7f312567 md_bitmap_load +EXPORT_SYMBOL_GPL vmlinux 0x7f426878 bpf_map_put +EXPORT_SYMBOL_GPL vmlinux 0x7f7cbc64 ip_tunnel_need_metadata +EXPORT_SYMBOL_GPL vmlinux 0x7fa3add5 tty_port_install +EXPORT_SYMBOL_GPL vmlinux 0x7fa96509 erst_get_record_id_next +EXPORT_SYMBOL_GPL vmlinux 0x7fafdec9 clk_fixed_factor_ops +EXPORT_SYMBOL_GPL vmlinux 0x7fcfef14 wm831x_auxadc_read_uv +EXPORT_SYMBOL_GPL vmlinux 0x7fdeb62f udp_tunnel_push_rx_port +EXPORT_SYMBOL_GPL vmlinux 0x7fe5d261 pci_epc_set_msi +EXPORT_SYMBOL_GPL vmlinux 0x7fe82be4 regcache_sync +EXPORT_SYMBOL_GPL vmlinux 0x7fe91c34 tcp_set_keepalive +EXPORT_SYMBOL_GPL vmlinux 0x8014ebae gpiochip_relres_irq +EXPORT_SYMBOL_GPL vmlinux 0x8017019f dax_inode +EXPORT_SYMBOL_GPL vmlinux 0x801bc505 fscrypt_ioctl_add_key +EXPORT_SYMBOL_GPL vmlinux 0x804bc4f5 reset_controller_unregister +EXPORT_SYMBOL_GPL vmlinux 0x805667cf devlink_fmsg_u64_put +EXPORT_SYMBOL_GPL vmlinux 0x80689841 rio_mport_chk_dev_access +EXPORT_SYMBOL_GPL vmlinux 0x806fb3a6 vmbus_hvsock_device_unregister +EXPORT_SYMBOL_GPL vmlinux 0x807766ea usb_scuttle_anchored_urbs +EXPORT_SYMBOL_GPL vmlinux 0x807fdcc4 call_rcu_tasks_rude +EXPORT_SYMBOL_GPL vmlinux 0x808a8088 handle_guest_split_lock +EXPORT_SYMBOL_GPL vmlinux 0x808ec1a3 crypto_alg_tested +EXPORT_SYMBOL_GPL vmlinux 0x80af700e ping_recvmsg +EXPORT_SYMBOL_GPL vmlinux 0x80b109d4 __tracepoint_pelt_se_tp +EXPORT_SYMBOL_GPL vmlinux 0x80c68137 nf_log_buf_close +EXPORT_SYMBOL_GPL vmlinux 0x80d5e57a mpi_free +EXPORT_SYMBOL_GPL vmlinux 0x80e3a824 skcipher_walk_virt +EXPORT_SYMBOL_GPL vmlinux 0x80edceaf mnt_drop_write +EXPORT_SYMBOL_GPL vmlinux 0x80f4129f devm_gpiod_get_index +EXPORT_SYMBOL_GPL vmlinux 0x810a7abc acpi_unbind_one +EXPORT_SYMBOL_GPL vmlinux 0x810ad8d0 regulator_desc_list_voltage_linear_range +EXPORT_SYMBOL_GPL vmlinux 0x811dc334 usb_unregister_notify +EXPORT_SYMBOL_GPL vmlinux 0x81221cad amd_nb_num +EXPORT_SYMBOL_GPL vmlinux 0x81281cb0 blk_mq_quiesce_queue_nowait +EXPORT_SYMBOL_GPL vmlinux 0x812a2845 devm_acpi_dev_add_driver_gpios +EXPORT_SYMBOL_GPL vmlinux 0x8136448e crypto_cipher_setkey +EXPORT_SYMBOL_GPL vmlinux 0x81377d47 xdp_rxq_info_unreg +EXPORT_SYMBOL_GPL vmlinux 0x813b715c PageHuge +EXPORT_SYMBOL_GPL vmlinux 0x813cf212 nvme_io_timeout +EXPORT_SYMBOL_GPL vmlinux 0x814e2386 kcpustat_field +EXPORT_SYMBOL_GPL vmlinux 0x815588a6 clk_enable +EXPORT_SYMBOL_GPL vmlinux 0x815e99ce br_ip6_fragment +EXPORT_SYMBOL_GPL vmlinux 0x815f5920 usb_get_descriptor +EXPORT_SYMBOL_GPL vmlinux 0x815fda83 sed_ioctl +EXPORT_SYMBOL_GPL vmlinux 0x816a41ca cpufreq_update_limits +EXPORT_SYMBOL_GPL vmlinux 0x81832bdb x86_vector_domain +EXPORT_SYMBOL_GPL vmlinux 0x81930398 phy_pm_runtime_allow +EXPORT_SYMBOL_GPL vmlinux 0x819d72cb klist_iter_exit +EXPORT_SYMBOL_GPL vmlinux 0x81b03377 efivar_entry_set_safe +EXPORT_SYMBOL_GPL vmlinux 0x81d10485 ioasid_free +EXPORT_SYMBOL_GPL vmlinux 0x81d4f0a7 put_device +EXPORT_SYMBOL_GPL vmlinux 0x81d7c5b7 percpu_ref_kill_and_confirm +EXPORT_SYMBOL_GPL vmlinux 0x81e97389 bdi_dev_name +EXPORT_SYMBOL_GPL vmlinux 0x82061af1 sock_diag_register +EXPORT_SYMBOL_GPL vmlinux 0x82092899 badrange_forget +EXPORT_SYMBOL_GPL vmlinux 0x82158448 ata_sff_qc_issue +EXPORT_SYMBOL_GPL vmlinux 0x821ec7f1 clk_mux_ro_ops +EXPORT_SYMBOL_GPL vmlinux 0x82226c53 pinctrl_unregister_mappings +EXPORT_SYMBOL_GPL vmlinux 0x82235d5b ip_tunnel_setup +EXPORT_SYMBOL_GPL vmlinux 0x823744ef mbox_request_channel +EXPORT_SYMBOL_GPL vmlinux 0x823eae06 blocking_notifier_call_chain +EXPORT_SYMBOL_GPL vmlinux 0x826a2e38 skcipher_walk_atomise +EXPORT_SYMBOL_GPL vmlinux 0x8277c866 clockevents_unbind_device +EXPORT_SYMBOL_GPL vmlinux 0x827e61f8 acpi_has_watchdog +EXPORT_SYMBOL_GPL vmlinux 0x828623ef ata_pci_bmdma_prepare_host +EXPORT_SYMBOL_GPL vmlinux 0x82bf4536 pci_msi_create_irq_domain +EXPORT_SYMBOL_GPL vmlinux 0x82d7442c mbox_chan_received_data +EXPORT_SYMBOL_GPL vmlinux 0x82d79b51 sysctl_vfs_cache_pressure +EXPORT_SYMBOL_GPL vmlinux 0x82ff4b95 clk_hw_unregister_fixed_factor +EXPORT_SYMBOL_GPL vmlinux 0x83132fd7 acpi_subsys_poweroff +EXPORT_SYMBOL_GPL vmlinux 0x8318cef0 kobject_create_and_add +EXPORT_SYMBOL_GPL vmlinux 0x831df647 fb_deferred_io_cleanup +EXPORT_SYMBOL_GPL vmlinux 0x831eb76c fb_bl_default_curve +EXPORT_SYMBOL_GPL vmlinux 0x8339df73 klist_add_behind +EXPORT_SYMBOL_GPL vmlinux 0x8348e4f0 __tracepoint_wbc_writepage +EXPORT_SYMBOL_GPL vmlinux 0x8349a895 nvmem_device_put +EXPORT_SYMBOL_GPL vmlinux 0x8353dfff acpi_os_get_iomem +EXPORT_SYMBOL_GPL vmlinux 0x835ff765 sata_std_hardreset +EXPORT_SYMBOL_GPL vmlinux 0x8360cba2 cpci_hp_register_controller +EXPORT_SYMBOL_GPL vmlinux 0x8366c41a attribute_container_register +EXPORT_SYMBOL_GPL vmlinux 0x83689b22 pinctrl_utils_free_map +EXPORT_SYMBOL_GPL vmlinux 0x83720357 tty_release_struct +EXPORT_SYMBOL_GPL vmlinux 0x83bf0dca cpci_hp_register_bus +EXPORT_SYMBOL_GPL vmlinux 0x83f21f00 unregister_trace_event +EXPORT_SYMBOL_GPL vmlinux 0x83ffb09e spi_unregister_controller +EXPORT_SYMBOL_GPL vmlinux 0x84089aed led_trigger_set +EXPORT_SYMBOL_GPL vmlinux 0x840b32a2 devm_clk_hw_register +EXPORT_SYMBOL_GPL vmlinux 0x84106f36 devlink_trap_ctx_priv +EXPORT_SYMBOL_GPL vmlinux 0x841204ad cpufreq_driver_resolve_freq +EXPORT_SYMBOL_GPL vmlinux 0x84264ced fs_umode_to_ftype +EXPORT_SYMBOL_GPL vmlinux 0x8429a00f acpi_subsys_freeze +EXPORT_SYMBOL_GPL vmlinux 0x842b626e pm_generic_freeze +EXPORT_SYMBOL_GPL vmlinux 0x842f046d usb_poison_anchored_urbs +EXPORT_SYMBOL_GPL vmlinux 0x842f3fd0 bpfilter_ops +EXPORT_SYMBOL_GPL vmlinux 0x843d70ef acpi_is_root_bridge +EXPORT_SYMBOL_GPL vmlinux 0x843dedf0 ata_dev_pair +EXPORT_SYMBOL_GPL vmlinux 0x8441635d dev_pm_opp_register_set_opp_helper +EXPORT_SYMBOL_GPL vmlinux 0x84502a47 blk_status_to_errno +EXPORT_SYMBOL_GPL vmlinux 0x845dbf3b scatterwalk_map_and_copy +EXPORT_SYMBOL_GPL vmlinux 0x845e8923 set_task_ioprio +EXPORT_SYMBOL_GPL vmlinux 0x8462cb62 atapi_cmd_type +EXPORT_SYMBOL_GPL vmlinux 0x8474b915 debugfs_create_ulong +EXPORT_SYMBOL_GPL vmlinux 0x848815bc ata_pci_device_resume +EXPORT_SYMBOL_GPL vmlinux 0x848e2ecb device_connection_find_match +EXPORT_SYMBOL_GPL vmlinux 0x849c2b20 usb_get_current_frame_number +EXPORT_SYMBOL_GPL vmlinux 0x84a07d42 relay_reset +EXPORT_SYMBOL_GPL vmlinux 0x84c651bb mnt_want_write_file +EXPORT_SYMBOL_GPL vmlinux 0x84c753f2 devm_acpi_dma_controller_register +EXPORT_SYMBOL_GPL vmlinux 0x84cc0b38 phy_set_mode_ext +EXPORT_SYMBOL_GPL vmlinux 0x84df3506 class_interface_register +EXPORT_SYMBOL_GPL vmlinux 0x84e84e94 edac_mc_add_mc_with_groups +EXPORT_SYMBOL_GPL vmlinux 0x84ef27f5 synth_event_add_fields +EXPORT_SYMBOL_GPL vmlinux 0x84f1392a pm_generic_thaw_noirq +EXPORT_SYMBOL_GPL vmlinux 0x84faf37a memunmap_pages +EXPORT_SYMBOL_GPL vmlinux 0x84ff221a irq_create_strict_mappings +EXPORT_SYMBOL_GPL vmlinux 0x8506baa8 clk_unregister_gate +EXPORT_SYMBOL_GPL vmlinux 0x850bb6db devlink_health_reporter_destroy +EXPORT_SYMBOL_GPL vmlinux 0x851e6003 usb_phy_roothub_calibrate +EXPORT_SYMBOL_GPL vmlinux 0x851e7a6b irq_domain_associate +EXPORT_SYMBOL_GPL vmlinux 0x85514d23 devm_reset_controller_register +EXPORT_SYMBOL_GPL vmlinux 0x85540ebc nvmem_cell_put +EXPORT_SYMBOL_GPL vmlinux 0x856afb4e key_type_asymmetric +EXPORT_SYMBOL_GPL vmlinux 0x857c5973 usb_get_dr_mode +EXPORT_SYMBOL_GPL vmlinux 0x85862277 ioasid_find +EXPORT_SYMBOL_GPL vmlinux 0x85876f48 list_lru_walk_one +EXPORT_SYMBOL_GPL vmlinux 0x858e488e pm_genpd_syscore_poweron +EXPORT_SYMBOL_GPL vmlinux 0x8592d892 amd_register_ecc_decoder +EXPORT_SYMBOL_GPL vmlinux 0x85935a61 acpi_dev_irq_flags +EXPORT_SYMBOL_GPL vmlinux 0x85a49dc7 pci_vpd_find_info_keyword +EXPORT_SYMBOL_GPL vmlinux 0x85a6a4e2 usb_disable_xhci_ports +EXPORT_SYMBOL_GPL vmlinux 0x85b1c626 __tracepoint_rpm_suspend +EXPORT_SYMBOL_GPL vmlinux 0x85b38978 percpu_ref_reinit +EXPORT_SYMBOL_GPL vmlinux 0x85b9059b tun_get_tx_ring +EXPORT_SYMBOL_GPL vmlinux 0x85b98ebc tty_prepare_flip_string +EXPORT_SYMBOL_GPL vmlinux 0x85c54b61 efivar_validate +EXPORT_SYMBOL_GPL vmlinux 0x85d7edfd hpet_set_periodic_freq +EXPORT_SYMBOL_GPL vmlinux 0x85e5d047 cpuidle_register_device +EXPORT_SYMBOL_GPL vmlinux 0x860d652d pci_generic_config_write32 +EXPORT_SYMBOL_GPL vmlinux 0x860e7da6 klp_get_state +EXPORT_SYMBOL_GPL vmlinux 0x8611f842 blk_insert_cloned_request +EXPORT_SYMBOL_GPL vmlinux 0x86123cf4 blkdev_zone_mgmt +EXPORT_SYMBOL_GPL vmlinux 0x86169f3e amd_smn_write +EXPORT_SYMBOL_GPL vmlinux 0x862258db timecounter_init +EXPORT_SYMBOL_GPL vmlinux 0x86248ec5 __audit_log_nfcfg +EXPORT_SYMBOL_GPL vmlinux 0x862bb17b linear_range_values_in_range_array +EXPORT_SYMBOL_GPL vmlinux 0x86356a3b serial8250_handle_irq +EXPORT_SYMBOL_GPL vmlinux 0x86492143 platform_device_unregister +EXPORT_SYMBOL_GPL vmlinux 0x864f4b26 alloc_skb_for_msg +EXPORT_SYMBOL_GPL vmlinux 0x86537665 rtc_update_irq +EXPORT_SYMBOL_GPL vmlinux 0x8654be58 hv_remove_vmbus_irq +EXPORT_SYMBOL_GPL vmlinux 0x86585a33 devlink_fmsg_obj_nest_start +EXPORT_SYMBOL_GPL vmlinux 0x86596952 phy_check_downshift +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 0x868784cb __symbol_get +EXPORT_SYMBOL_GPL vmlinux 0x8692fb2e pm_runtime_force_suspend +EXPORT_SYMBOL_GPL vmlinux 0x86a666f3 kernfs_get +EXPORT_SYMBOL_GPL vmlinux 0x86b13d2a usb_unpoison_anchored_urbs +EXPORT_SYMBOL_GPL vmlinux 0x86b23d64 dev_pm_opp_find_freq_exact +EXPORT_SYMBOL_GPL vmlinux 0x86b427ce clkdev_create +EXPORT_SYMBOL_GPL vmlinux 0x86b81e7d ip_tunnel_xmit +EXPORT_SYMBOL_GPL vmlinux 0x86bb8634 find_extend_vma +EXPORT_SYMBOL_GPL vmlinux 0x86c43a8c cper_estatus_check +EXPORT_SYMBOL_GPL vmlinux 0x86c961b3 __set_dax_synchronous +EXPORT_SYMBOL_GPL vmlinux 0x86cad841 ata_pio_need_iordy +EXPORT_SYMBOL_GPL vmlinux 0x86dcfac9 gpio_to_desc +EXPORT_SYMBOL_GPL vmlinux 0x86e89a13 __srcu_read_unlock +EXPORT_SYMBOL_GPL vmlinux 0x86f616a9 regulator_set_current_limit +EXPORT_SYMBOL_GPL vmlinux 0x86f6b99d synchronize_rcu_expedited +EXPORT_SYMBOL_GPL vmlinux 0x86f85114 net_dec_egress_queue +EXPORT_SYMBOL_GPL vmlinux 0x86fc5b14 devlink_traps_unregister +EXPORT_SYMBOL_GPL vmlinux 0x8707ff3e netdev_walk_all_upper_dev_rcu +EXPORT_SYMBOL_GPL vmlinux 0x8718a511 dev_pm_opp_set_prop_name +EXPORT_SYMBOL_GPL vmlinux 0x8720578d pm_generic_resume_noirq +EXPORT_SYMBOL_GPL vmlinux 0x87228032 regulator_disable_regmap +EXPORT_SYMBOL_GPL vmlinux 0x8725cf8e uhci_check_and_reset_hc +EXPORT_SYMBOL_GPL vmlinux 0x8735ed3d irq_set_affinity_notifier +EXPORT_SYMBOL_GPL vmlinux 0x87377ace ata_msleep +EXPORT_SYMBOL_GPL vmlinux 0x873a328b ping_common_sendmsg +EXPORT_SYMBOL_GPL vmlinux 0x875582b7 nvmem_del_cell_table +EXPORT_SYMBOL_GPL vmlinux 0x876ca422 transport_configure_device +EXPORT_SYMBOL_GPL vmlinux 0x8773e87c __clk_hw_register_gate +EXPORT_SYMBOL_GPL vmlinux 0x879191a1 regmap_get_max_register +EXPORT_SYMBOL_GPL vmlinux 0x879cb93e device_property_read_u8_array +EXPORT_SYMBOL_GPL vmlinux 0x87a2f931 rio_bus_type +EXPORT_SYMBOL_GPL vmlinux 0x87d8fbcf crypto_stats_ahash_update +EXPORT_SYMBOL_GPL vmlinux 0x87e58609 srcu_notifier_chain_register +EXPORT_SYMBOL_GPL vmlinux 0x87e64181 amd_nb_has_feature +EXPORT_SYMBOL_GPL vmlinux 0x87ea1e8b rdev_get_drvdata +EXPORT_SYMBOL_GPL vmlinux 0x87eea81b usb_unlocked_disable_lpm +EXPORT_SYMBOL_GPL vmlinux 0x88066be2 __tracepoint_rpm_return_int +EXPORT_SYMBOL_GPL vmlinux 0x880a7456 __clocksource_register_scale +EXPORT_SYMBOL_GPL vmlinux 0x884f4c38 efivars_kobject +EXPORT_SYMBOL_GPL vmlinux 0x884f6284 blk_trace_startstop +EXPORT_SYMBOL_GPL vmlinux 0x8851d7fc irq_domain_free_fwnode +EXPORT_SYMBOL_GPL vmlinux 0x885528a6 ring_buffer_discard_commit +EXPORT_SYMBOL_GPL vmlinux 0x8856ceec clk_hw_get_rate +EXPORT_SYMBOL_GPL vmlinux 0x88577ae7 crypto_ahash_final +EXPORT_SYMBOL_GPL vmlinux 0x888c5be5 irq_bypass_register_consumer +EXPORT_SYMBOL_GPL vmlinux 0x8890dab8 encrypt_blob +EXPORT_SYMBOL_GPL vmlinux 0x889a6509 cgroup_attach_task_all +EXPORT_SYMBOL_GPL vmlinux 0x88ab6fe3 kgdb_active +EXPORT_SYMBOL_GPL vmlinux 0x88b4ae92 ring_buffer_normalize_time_stamp +EXPORT_SYMBOL_GPL vmlinux 0x88c46453 nvme_submit_sync_cmd +EXPORT_SYMBOL_GPL vmlinux 0x88d856c6 clk_hw_get_parent_index +EXPORT_SYMBOL_GPL vmlinux 0x88dbd5fc bpf_offload_dev_create +EXPORT_SYMBOL_GPL vmlinux 0x88dcd0f3 devm_platform_ioremap_resource +EXPORT_SYMBOL_GPL vmlinux 0x88e63814 irq_find_mapping +EXPORT_SYMBOL_GPL vmlinux 0x88f122c4 dev_pm_put_subsys_data +EXPORT_SYMBOL_GPL vmlinux 0x88f58bdf security_kernel_load_data +EXPORT_SYMBOL_GPL vmlinux 0x88faa174 tps65912_device_init +EXPORT_SYMBOL_GPL vmlinux 0x88fc743c rtc_update_irq_enable +EXPORT_SYMBOL_GPL vmlinux 0x89052a58 ata_acpi_cbl_80wire +EXPORT_SYMBOL_GPL vmlinux 0x890f4f97 __kprobe_event_gen_cmd_start +EXPORT_SYMBOL_GPL vmlinux 0x890fa0fa btree_get_prev +EXPORT_SYMBOL_GPL vmlinux 0x891b007b ata_host_resume +EXPORT_SYMBOL_GPL vmlinux 0x891fe39b kill_dev_dax +EXPORT_SYMBOL_GPL vmlinux 0x8924eb1e rcu_force_quiescent_state +EXPORT_SYMBOL_GPL vmlinux 0x892511d8 do_tcp_sendpages +EXPORT_SYMBOL_GPL vmlinux 0x892f3dad pci_user_read_config_word +EXPORT_SYMBOL_GPL vmlinux 0x89359dbf firmware_kobj +EXPORT_SYMBOL_GPL vmlinux 0x893abbdd devlink_fmsg_u32_pair_put +EXPORT_SYMBOL_GPL vmlinux 0x8947d18b security_kernel_read_file +EXPORT_SYMBOL_GPL vmlinux 0x89485687 iommu_group_put +EXPORT_SYMBOL_GPL vmlinux 0x894c5d9f trace_define_field +EXPORT_SYMBOL_GPL vmlinux 0x8960cf5a crypto_ahash_finup +EXPORT_SYMBOL_GPL vmlinux 0x89696218 reserve_iova +EXPORT_SYMBOL_GPL vmlinux 0x896e2087 devm_gpiod_get_index_optional +EXPORT_SYMBOL_GPL vmlinux 0x897dbcb5 srcu_init_notifier_head +EXPORT_SYMBOL_GPL vmlinux 0x899b1a20 xfrm_local_error +EXPORT_SYMBOL_GPL vmlinux 0x89ae7aa0 rsa_parse_pub_key +EXPORT_SYMBOL_GPL vmlinux 0x89bb63d7 mmu_notifier_get_locked +EXPORT_SYMBOL_GPL vmlinux 0x89bbafc6 usb_register_notify +EXPORT_SYMBOL_GPL vmlinux 0x89c45123 serial8250_init_port +EXPORT_SYMBOL_GPL vmlinux 0x89d0359a __fl6_sock_lookup +EXPORT_SYMBOL_GPL vmlinux 0x89e06700 inode_dax +EXPORT_SYMBOL_GPL vmlinux 0x89e340cf acpi_bus_get_ejd +EXPORT_SYMBOL_GPL vmlinux 0x89e3834f vmbus_are_subchannels_present +EXPORT_SYMBOL_GPL vmlinux 0x89f91193 wm831x_bulk_read +EXPORT_SYMBOL_GPL vmlinux 0x89fe539e tty_find_polling_driver +EXPORT_SYMBOL_GPL vmlinux 0x8a016a43 simple_attr_read +EXPORT_SYMBOL_GPL vmlinux 0x8a06ec57 ata_eh_freeze_port +EXPORT_SYMBOL_GPL vmlinux 0x8a0f67c0 do_take_over_console +EXPORT_SYMBOL_GPL vmlinux 0x8a168b6e regulator_unregister +EXPORT_SYMBOL_GPL vmlinux 0x8a240bff __xas_next +EXPORT_SYMBOL_GPL vmlinux 0x8a350861 fat_dir_empty +EXPORT_SYMBOL_GPL vmlinux 0x8a3f84ba linear_range_get_selector_low +EXPORT_SYMBOL_GPL vmlinux 0x8a45a555 acpi_unregister_wakeup_handler +EXPORT_SYMBOL_GPL vmlinux 0x8a4703b1 input_ff_flush +EXPORT_SYMBOL_GPL vmlinux 0x8a4ca7be hyperv_flush_guest_mapping_range +EXPORT_SYMBOL_GPL vmlinux 0x8a5461e8 fsverity_verify_page +EXPORT_SYMBOL_GPL vmlinux 0x8a62b81b sfp_upstream_stop +EXPORT_SYMBOL_GPL vmlinux 0x8a66a696 espintcp_queue_out +EXPORT_SYMBOL_GPL vmlinux 0x8a7af52c __vmbus_driver_register +EXPORT_SYMBOL_GPL vmlinux 0x8a7cb9c4 platform_thermal_package_rate_control +EXPORT_SYMBOL_GPL vmlinux 0x8a838ef6 intel_scu_ipc_dev_put +EXPORT_SYMBOL_GPL vmlinux 0x8a8af93e dma_buf_end_cpu_access +EXPORT_SYMBOL_GPL vmlinux 0x8a9310bd rt_mutex_destroy +EXPORT_SYMBOL_GPL vmlinux 0x8a9c70ed nvme_sec_submit +EXPORT_SYMBOL_GPL vmlinux 0x8a9fefa3 of_phy_get +EXPORT_SYMBOL_GPL vmlinux 0x8abacc47 get_max_files +EXPORT_SYMBOL_GPL vmlinux 0x8ac5cf74 __lock_page_killable +EXPORT_SYMBOL_GPL vmlinux 0x8acadb38 led_get_default_pattern +EXPORT_SYMBOL_GPL vmlinux 0x8ad2b7b4 gpiod_set_raw_value +EXPORT_SYMBOL_GPL vmlinux 0x8aef3bfa cpufreq_freq_transition_end +EXPORT_SYMBOL_GPL vmlinux 0x8b0502c5 cgroup_get_from_path +EXPORT_SYMBOL_GPL vmlinux 0x8b0fc7e0 devm_gpiod_put +EXPORT_SYMBOL_GPL vmlinux 0x8b149c36 clk_is_match +EXPORT_SYMBOL_GPL vmlinux 0x8b18fb7c dummy_con +EXPORT_SYMBOL_GPL vmlinux 0x8b1cdf20 cpu_subsys +EXPORT_SYMBOL_GPL vmlinux 0x8b3906d6 blk_lld_busy +EXPORT_SYMBOL_GPL vmlinux 0x8b3c8ed1 dev_pm_qos_add_request +EXPORT_SYMBOL_GPL vmlinux 0x8b3dda26 usb_set_configuration +EXPORT_SYMBOL_GPL vmlinux 0x8b4230ac inet_csk_addr2sockaddr +EXPORT_SYMBOL_GPL vmlinux 0x8b4330fd gpiod_get +EXPORT_SYMBOL_GPL vmlinux 0x8b453835 rio_request_inb_pwrite +EXPORT_SYMBOL_GPL vmlinux 0x8b6e23bd tcp_bpf_sendmsg_redir +EXPORT_SYMBOL_GPL vmlinux 0x8b78b05a devm_regmap_del_irq_chip +EXPORT_SYMBOL_GPL vmlinux 0x8b7b4d8e hv_stimer_alloc +EXPORT_SYMBOL_GPL vmlinux 0x8b7c8ade tcp_rate_check_app_limited +EXPORT_SYMBOL_GPL vmlinux 0x8b9200fd lookup_address +EXPORT_SYMBOL_GPL vmlinux 0x8ba17178 setfl +EXPORT_SYMBOL_GPL vmlinux 0x8bb9013f edac_pci_handle_npe +EXPORT_SYMBOL_GPL vmlinux 0x8bc2fd42 pinctrl_get +EXPORT_SYMBOL_GPL vmlinux 0x8bc57a7f devm_of_icc_get +EXPORT_SYMBOL_GPL vmlinux 0x8bdc86c5 root_device_unregister +EXPORT_SYMBOL_GPL vmlinux 0x8c011634 __irq_domain_add +EXPORT_SYMBOL_GPL vmlinux 0x8c0215f2 pm_system_wakeup +EXPORT_SYMBOL_GPL vmlinux 0x8c03d20c destroy_workqueue +EXPORT_SYMBOL_GPL vmlinux 0x8c1a1e4d regmap_async_complete_cb +EXPORT_SYMBOL_GPL vmlinux 0x8c304168 regulator_register +EXPORT_SYMBOL_GPL vmlinux 0x8c341c48 current_save_fsgs +EXPORT_SYMBOL_GPL vmlinux 0x8c479745 __cpuhp_state_remove_instance +EXPORT_SYMBOL_GPL vmlinux 0x8c4b3533 posix_clock_unregister +EXPORT_SYMBOL_GPL vmlinux 0x8c50d437 dw_pcie_read_dbi +EXPORT_SYMBOL_GPL vmlinux 0x8c743fb6 reset_control_status +EXPORT_SYMBOL_GPL vmlinux 0x8c89a95d dev_pm_opp_remove_all_dynamic +EXPORT_SYMBOL_GPL vmlinux 0x8c89e3b8 usb_phy_roothub_power_off +EXPORT_SYMBOL_GPL vmlinux 0x8c9d1661 arch_phys_wc_index +EXPORT_SYMBOL_GPL vmlinux 0x8cb0149c security_path_rmdir +EXPORT_SYMBOL_GPL vmlinux 0x8cbd6bd2 ftrace_set_notrace +EXPORT_SYMBOL_GPL vmlinux 0x8cf15f9a bpf_trace_run10 +EXPORT_SYMBOL_GPL vmlinux 0x8d184e19 linear_hugepage_index +EXPORT_SYMBOL_GPL vmlinux 0x8d22bb58 iommu_group_alloc +EXPORT_SYMBOL_GPL vmlinux 0x8d241feb hwmon_device_register +EXPORT_SYMBOL_GPL vmlinux 0x8d3330b6 cpuacct_cgrp_subsys_enabled_key +EXPORT_SYMBOL_GPL vmlinux 0x8d55dead vfs_kern_mount +EXPORT_SYMBOL_GPL vmlinux 0x8d5a2ca2 udp_tunnel_notify_del_rx_port +EXPORT_SYMBOL_GPL vmlinux 0x8d5fd735 phy_gbit_features +EXPORT_SYMBOL_GPL vmlinux 0x8d6f4514 regulator_set_load +EXPORT_SYMBOL_GPL vmlinux 0x8d7192e9 edac_device_del_device +EXPORT_SYMBOL_GPL vmlinux 0x8d75f33b devm_intel_scu_ipc_dev_get +EXPORT_SYMBOL_GPL vmlinux 0x8d7e3373 hwpoison_filter_dev_major +EXPORT_SYMBOL_GPL vmlinux 0x8d993d0f rio_release_outb_dbell +EXPORT_SYMBOL_GPL vmlinux 0x8dc4f350 l3mdev_fib_table_by_index +EXPORT_SYMBOL_GPL vmlinux 0x8dd57d1e __fsnotify_inode_delete +EXPORT_SYMBOL_GPL vmlinux 0x8decb2b5 fwnode_find_reference +EXPORT_SYMBOL_GPL vmlinux 0x8e105c6d sata_scr_write +EXPORT_SYMBOL_GPL vmlinux 0x8e12ea64 pci_disable_ats +EXPORT_SYMBOL_GPL vmlinux 0x8e1621cf fscrypt_match_name +EXPORT_SYMBOL_GPL vmlinux 0x8e1dc7a5 rio_unregister_mport +EXPORT_SYMBOL_GPL vmlinux 0x8e23d58f offline_and_remove_memory +EXPORT_SYMBOL_GPL vmlinux 0x8e4eb451 bpf_sk_storage_diag_free +EXPORT_SYMBOL_GPL vmlinux 0x8e545c7c bd_link_disk_holder +EXPORT_SYMBOL_GPL vmlinux 0x8e6fa8b5 apei_exec_pre_map_gars +EXPORT_SYMBOL_GPL vmlinux 0x8e8b7774 blkg_conf_finish +EXPORT_SYMBOL_GPL vmlinux 0x8e926fba phy_validate +EXPORT_SYMBOL_GPL vmlinux 0x8e92f7c4 static_key_slow_inc +EXPORT_SYMBOL_GPL vmlinux 0x8e9bd4a3 hv_alloc_hyperv_page +EXPORT_SYMBOL_GPL vmlinux 0x8eae8dfd usb_find_common_endpoints +EXPORT_SYMBOL_GPL vmlinux 0x8ecbc020 irq_domain_set_hwirq_and_chip +EXPORT_SYMBOL_GPL vmlinux 0x8ede9ca8 dm_get_table_device +EXPORT_SYMBOL_GPL vmlinux 0x8edee13c usb_enable_ltm +EXPORT_SYMBOL_GPL vmlinux 0x8ee53e31 register_kprobe +EXPORT_SYMBOL_GPL vmlinux 0x8eee3399 dax_read_unlock +EXPORT_SYMBOL_GPL vmlinux 0x8ef17a9e regcache_drop_region +EXPORT_SYMBOL_GPL vmlinux 0x8efc1c14 xhci_init_driver +EXPORT_SYMBOL_GPL vmlinux 0x8f0748af rcu_expedite_gp +EXPORT_SYMBOL_GPL vmlinux 0x8f193bcd init_srcu_struct +EXPORT_SYMBOL_GPL vmlinux 0x8f2eb429 kvm_arch_para_hints +EXPORT_SYMBOL_GPL vmlinux 0x8f3f8829 platform_bus +EXPORT_SYMBOL_GPL vmlinux 0x8f6cee77 __round_jiffies_relative +EXPORT_SYMBOL_GPL vmlinux 0x8f742006 udp_tun_rx_dst +EXPORT_SYMBOL_GPL vmlinux 0x8f786bee fs_umode_to_dtype +EXPORT_SYMBOL_GPL vmlinux 0x8f7bd0a6 btree_init_mempool +EXPORT_SYMBOL_GPL vmlinux 0x8f801d8d rhashtable_destroy +EXPORT_SYMBOL_GPL vmlinux 0x8f85349f blkcg_deactivate_policy +EXPORT_SYMBOL_GPL vmlinux 0x8f9635f2 sock_prot_inuse_add +EXPORT_SYMBOL_GPL vmlinux 0x8fa5a01a cpuidle_unregister_driver +EXPORT_SYMBOL_GPL vmlinux 0x8fa7d686 class_find_device +EXPORT_SYMBOL_GPL vmlinux 0x8fb2b4fa rtnl_delete_link +EXPORT_SYMBOL_GPL vmlinux 0x8fc12788 software_node_unregister_node_group +EXPORT_SYMBOL_GPL vmlinux 0x8fc8ce2b vmbus_prep_negotiate_resp +EXPORT_SYMBOL_GPL vmlinux 0x8fef1373 ata_sas_async_probe +EXPORT_SYMBOL_GPL vmlinux 0x9007d972 rhashtable_walk_peek +EXPORT_SYMBOL_GPL vmlinux 0x901d6b04 gpiochip_set_nested_irqchip +EXPORT_SYMBOL_GPL vmlinux 0x902400fe aead_exit_geniv +EXPORT_SYMBOL_GPL vmlinux 0x9024f443 mds_user_clear +EXPORT_SYMBOL_GPL vmlinux 0x902b0e3b nvme_alloc_request +EXPORT_SYMBOL_GPL vmlinux 0x902e92e6 serial8250_em485_start_tx +EXPORT_SYMBOL_GPL vmlinux 0x9033fdd6 gpiod_direction_output +EXPORT_SYMBOL_GPL vmlinux 0x90359588 dax_driver_unregister +EXPORT_SYMBOL_GPL vmlinux 0x903b627c list_lru_isolate_move +EXPORT_SYMBOL_GPL vmlinux 0x904558e1 seg6_do_srh_encap +EXPORT_SYMBOL_GPL vmlinux 0x904dd673 blk_rq_err_bytes +EXPORT_SYMBOL_GPL vmlinux 0x90688bcd devlink_info_driver_name_put +EXPORT_SYMBOL_GPL vmlinux 0x907bb5ef regmap_get_raw_write_max +EXPORT_SYMBOL_GPL vmlinux 0x9081b5db btree_insert +EXPORT_SYMBOL_GPL vmlinux 0x9084b044 clear_page_erms +EXPORT_SYMBOL_GPL vmlinux 0x9096d89c debugfs_create_file +EXPORT_SYMBOL_GPL vmlinux 0x90a9d8cc hv_is_hyperv_initialized +EXPORT_SYMBOL_GPL vmlinux 0x90ad66b1 software_node_unregister_nodes +EXPORT_SYMBOL_GPL vmlinux 0x90afd012 devlink_trap_policers_unregister +EXPORT_SYMBOL_GPL vmlinux 0x90c8498c apei_exec_write_register +EXPORT_SYMBOL_GPL vmlinux 0x90cd697f gpiod_get_raw_value +EXPORT_SYMBOL_GPL vmlinux 0x90d8b3a0 fib6_new_table +EXPORT_SYMBOL_GPL vmlinux 0x90d915bb find_pid_ns +EXPORT_SYMBOL_GPL vmlinux 0x90dc29df aout_dump_debugregs +EXPORT_SYMBOL_GPL vmlinux 0x90de0452 platform_thermal_package_notify +EXPORT_SYMBOL_GPL vmlinux 0x90e4389d thermal_zone_get_offset +EXPORT_SYMBOL_GPL vmlinux 0x90eb0524 tty_kopen +EXPORT_SYMBOL_GPL vmlinux 0x90fc5c1f skb_zerocopy_headlen +EXPORT_SYMBOL_GPL vmlinux 0x910a4783 rio_dma_prep_slave_sg +EXPORT_SYMBOL_GPL vmlinux 0x910ad9ad rtc_read_alarm +EXPORT_SYMBOL_GPL vmlinux 0x911c2f80 elv_unregister +EXPORT_SYMBOL_GPL vmlinux 0x913a10bb cpuidle_register +EXPORT_SYMBOL_GPL vmlinux 0x913b90f6 cpufreq_policy_transition_delay_us +EXPORT_SYMBOL_GPL vmlinux 0x9144f11c dev_pm_opp_disable +EXPORT_SYMBOL_GPL vmlinux 0x915a2c4a devlink_trap_policers_register +EXPORT_SYMBOL_GPL vmlinux 0x918d4950 ptp_classify_raw +EXPORT_SYMBOL_GPL vmlinux 0x91a55068 public_key_free +EXPORT_SYMBOL_GPL vmlinux 0x91b515d8 component_master_add_with_match +EXPORT_SYMBOL_GPL vmlinux 0x91b9a4ba e820__mapped_any +EXPORT_SYMBOL_GPL vmlinux 0x91c6e5b0 pcap_to_irq +EXPORT_SYMBOL_GPL vmlinux 0x91c8b5b5 mutex_lock_io +EXPORT_SYMBOL_GPL vmlinux 0x91d54ecc pci_epf_free_space +EXPORT_SYMBOL_GPL vmlinux 0x91dd0673 netlink_remove_tap +EXPORT_SYMBOL_GPL vmlinux 0x91f25101 phy_get +EXPORT_SYMBOL_GPL vmlinux 0x920145c3 __nvdimm_create +EXPORT_SYMBOL_GPL vmlinux 0x920cc389 visitorl +EXPORT_SYMBOL_GPL vmlinux 0x920f0bf2 dev_pm_opp_remove +EXPORT_SYMBOL_GPL vmlinux 0x92141343 kvm_async_pf_task_wake +EXPORT_SYMBOL_GPL vmlinux 0x921723d2 ata_sff_lost_interrupt +EXPORT_SYMBOL_GPL vmlinux 0x92295424 clk_register_gate +EXPORT_SYMBOL_GPL vmlinux 0x923d9dba pkcs7_parse_message +EXPORT_SYMBOL_GPL vmlinux 0x923daa38 dev_pm_qos_update_request +EXPORT_SYMBOL_GPL vmlinux 0x92414fd9 usb_hcd_poll_rh_status +EXPORT_SYMBOL_GPL vmlinux 0x9241b358 __static_key_slow_dec_deferred +EXPORT_SYMBOL_GPL vmlinux 0x924c46f8 zs_unmap_object +EXPORT_SYMBOL_GPL vmlinux 0x925408d0 pcc_mbox_free_channel +EXPORT_SYMBOL_GPL vmlinux 0x9257a608 tracing_cond_snapshot_data +EXPORT_SYMBOL_GPL vmlinux 0x925b53b3 iommu_unmap_fast +EXPORT_SYMBOL_GPL vmlinux 0x925f63c4 tty_port_unregister_device +EXPORT_SYMBOL_GPL vmlinux 0x92684c01 nvdimm_cmd_mask +EXPORT_SYMBOL_GPL vmlinux 0x9278315b wbc_account_cgroup_owner +EXPORT_SYMBOL_GPL vmlinux 0x928236f0 tracing_snapshot_cond_disable +EXPORT_SYMBOL_GPL vmlinux 0x92871d12 add_disk_randomness +EXPORT_SYMBOL_GPL vmlinux 0x929316cd __pneigh_lookup +EXPORT_SYMBOL_GPL vmlinux 0x92a384fd security_inode_create +EXPORT_SYMBOL_GPL vmlinux 0x92d31cfb fixed_phy_add +EXPORT_SYMBOL_GPL vmlinux 0x92d8e56f __tracepoint_xhci_dbg_quirks +EXPORT_SYMBOL_GPL vmlinux 0x92db8f68 do_trace_rcu_torture_read +EXPORT_SYMBOL_GPL vmlinux 0x92def24e set_pages_array_wt +EXPORT_SYMBOL_GPL vmlinux 0x92e4c047 regulator_unlock +EXPORT_SYMBOL_GPL vmlinux 0x92e8e9ab fsverity_enqueue_verify_work +EXPORT_SYMBOL_GPL vmlinux 0x92f5ca4f crypto_mod_put +EXPORT_SYMBOL_GPL vmlinux 0x93114abf nvdimm_clear_poison +EXPORT_SYMBOL_GPL vmlinux 0x93170790 blk_fill_rwbs +EXPORT_SYMBOL_GPL vmlinux 0x931e963c devm_init_badblocks +EXPORT_SYMBOL_GPL vmlinux 0x93255b2b ring_buffer_lock_reserve +EXPORT_SYMBOL_GPL vmlinux 0x932c8d7a linear_range_get_value_array +EXPORT_SYMBOL_GPL vmlinux 0x933cddf4 devm_regmap_field_free +EXPORT_SYMBOL_GPL vmlinux 0x933f75e0 usb_unlink_anchored_urbs +EXPORT_SYMBOL_GPL vmlinux 0x934058c5 gpiochip_populate_parent_fwspec_fourcell +EXPORT_SYMBOL_GPL vmlinux 0x9342637f arizona_dev_exit +EXPORT_SYMBOL_GPL vmlinux 0x93499647 trace_put_event_file +EXPORT_SYMBOL_GPL vmlinux 0x9350468c crypto_unregister_alg +EXPORT_SYMBOL_GPL vmlinux 0x9360f401 key_set_timeout +EXPORT_SYMBOL_GPL vmlinux 0x93725986 __tracepoint_pelt_dl_tp +EXPORT_SYMBOL_GPL vmlinux 0x9384cd49 ata_tf_from_fis +EXPORT_SYMBOL_GPL vmlinux 0x938519f6 device_del +EXPORT_SYMBOL_GPL vmlinux 0x93922111 get_compat_bpf_fprog +EXPORT_SYMBOL_GPL vmlinux 0x93a511ba regulator_suspend_enable +EXPORT_SYMBOL_GPL vmlinux 0x93b43e70 kthread_flush_work +EXPORT_SYMBOL_GPL vmlinux 0x93bf6857 cpuidle_register_driver +EXPORT_SYMBOL_GPL vmlinux 0x93db12ff genphy_c45_read_lpa +EXPORT_SYMBOL_GPL vmlinux 0x93dc2586 pgprot_writethrough +EXPORT_SYMBOL_GPL vmlinux 0x93ed69a3 vfio_register_iommu_driver +EXPORT_SYMBOL_GPL vmlinux 0x93edef07 devlink_health_report +EXPORT_SYMBOL_GPL vmlinux 0x93f7f0d5 mmu_interval_read_begin +EXPORT_SYMBOL_GPL vmlinux 0x93f931f9 md_stop_writes +EXPORT_SYMBOL_GPL vmlinux 0x94037ead iommu_map +EXPORT_SYMBOL_GPL vmlinux 0x941a3d4f clk_hw_unregister_fixed_rate +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 0x94271c48 policy_has_boost_freq +EXPORT_SYMBOL_GPL vmlinux 0x9430b198 trace_dump_stack +EXPORT_SYMBOL_GPL vmlinux 0x943255ff hv_ringbuffer_get_debuginfo +EXPORT_SYMBOL_GPL vmlinux 0x9434ad47 scsi_queue_work +EXPORT_SYMBOL_GPL vmlinux 0x945b07a5 blk_mq_sched_try_insert_merge +EXPORT_SYMBOL_GPL vmlinux 0x946d0822 blk_add_driver_data +EXPORT_SYMBOL_GPL vmlinux 0x946dd559 sha224_zero_message_hash +EXPORT_SYMBOL_GPL vmlinux 0x947b40c6 cpu_smt_possible +EXPORT_SYMBOL_GPL vmlinux 0x947ec432 md_bitmap_resize +EXPORT_SYMBOL_GPL vmlinux 0x949b5176 devlink_region_snapshot_create +EXPORT_SYMBOL_GPL vmlinux 0x949f7342 __alloc_percpu +EXPORT_SYMBOL_GPL vmlinux 0x94a1710e lwtunnel_output +EXPORT_SYMBOL_GPL vmlinux 0x94add736 dev_pm_domain_attach +EXPORT_SYMBOL_GPL vmlinux 0x94aec087 perf_event_disable +EXPORT_SYMBOL_GPL vmlinux 0x94b5d914 cgrp_dfl_root +EXPORT_SYMBOL_GPL vmlinux 0x94bccd56 rio_unregister_driver +EXPORT_SYMBOL_GPL vmlinux 0x94bdca6f power_supply_set_battery_charged +EXPORT_SYMBOL_GPL vmlinux 0x94e60718 get_user_pages_fast +EXPORT_SYMBOL_GPL vmlinux 0x94ef4d05 cpci_hp_stop +EXPORT_SYMBOL_GPL vmlinux 0x94f724d3 __ata_change_queue_depth +EXPORT_SYMBOL_GPL vmlinux 0x9502c216 percpu_down_write +EXPORT_SYMBOL_GPL vmlinux 0x9504df26 irq_wake_thread +EXPORT_SYMBOL_GPL vmlinux 0x95059d62 kernfs_notify +EXPORT_SYMBOL_GPL vmlinux 0x95106a6c vxlan_fdb_replay +EXPORT_SYMBOL_GPL vmlinux 0x95192e27 fl6_merge_options +EXPORT_SYMBOL_GPL vmlinux 0x951a2773 crypto_has_alg +EXPORT_SYMBOL_GPL vmlinux 0x951e2cee spi_finalize_current_message +EXPORT_SYMBOL_GPL vmlinux 0x95253977 exportfs_decode_fh +EXPORT_SYMBOL_GPL vmlinux 0x95258207 vfio_device_data +EXPORT_SYMBOL_GPL vmlinux 0x952664c5 do_exit +EXPORT_SYMBOL_GPL vmlinux 0x95329e57 platform_get_irq_byname +EXPORT_SYMBOL_GPL vmlinux 0x953e1b9e ktime_get_real_seconds +EXPORT_SYMBOL_GPL vmlinux 0x955b0e2e kthread_worker_fn +EXPORT_SYMBOL_GPL vmlinux 0x95609b26 context_tracking_key +EXPORT_SYMBOL_GPL vmlinux 0x956ac400 ring_buffer_dropped_events_cpu +EXPORT_SYMBOL_GPL vmlinux 0x958b4f8f device_property_match_string +EXPORT_SYMBOL_GPL vmlinux 0x958df3ac zs_free +EXPORT_SYMBOL_GPL vmlinux 0x959ec5f5 call_rcu_tasks +EXPORT_SYMBOL_GPL vmlinux 0x95af7be3 iommu_device_link +EXPORT_SYMBOL_GPL vmlinux 0x95bc9078 btree_free +EXPORT_SYMBOL_GPL vmlinux 0x95c2c8b7 devlink_params_unpublish +EXPORT_SYMBOL_GPL vmlinux 0x95cd9fdb srcu_torture_stats_print +EXPORT_SYMBOL_GPL vmlinux 0x95d2c215 __clk_hw_register_fixed_rate +EXPORT_SYMBOL_GPL vmlinux 0x95e8d58f __fput_sync +EXPORT_SYMBOL_GPL vmlinux 0x95ef1ccc dmi_memdev_size +EXPORT_SYMBOL_GPL vmlinux 0x95efa1db pkcs7_free_message +EXPORT_SYMBOL_GPL vmlinux 0x95f3a49d devm_ioremap_uc +EXPORT_SYMBOL_GPL vmlinux 0x961286e0 ring_buffer_read_events_cpu +EXPORT_SYMBOL_GPL vmlinux 0x96281b02 tpm2_get_cc_attrs_tbl +EXPORT_SYMBOL_GPL vmlinux 0x962bfe44 da9052_regmap_config +EXPORT_SYMBOL_GPL vmlinux 0x962c8ae1 usb_kill_anchored_urbs +EXPORT_SYMBOL_GPL vmlinux 0x962d3a81 power_supply_register +EXPORT_SYMBOL_GPL vmlinux 0x962f2fa6 device_create +EXPORT_SYMBOL_GPL vmlinux 0x96554810 register_keyboard_notifier +EXPORT_SYMBOL_GPL vmlinux 0x965c830d fat_flush_inodes +EXPORT_SYMBOL_GPL vmlinux 0x965e4f58 nf_queue_nf_hook_drop +EXPORT_SYMBOL_GPL vmlinux 0x96650c63 __audit_inode_child +EXPORT_SYMBOL_GPL vmlinux 0x9665abb1 to_nvdimm +EXPORT_SYMBOL_GPL vmlinux 0x968576e5 acpi_dev_add_driver_gpios +EXPORT_SYMBOL_GPL vmlinux 0x968f9a23 efivar_entry_iter_begin +EXPORT_SYMBOL_GPL vmlinux 0x968fef8a page_cache_readahead_unbounded +EXPORT_SYMBOL_GPL vmlinux 0x969c73d9 vfio_device_put +EXPORT_SYMBOL_GPL vmlinux 0x96a3e594 pci_d3cold_disable +EXPORT_SYMBOL_GPL vmlinux 0x96d59bcd led_sysfs_disable +EXPORT_SYMBOL_GPL vmlinux 0x96dc091f devfreq_event_enable_edev +EXPORT_SYMBOL_GPL vmlinux 0x96df5124 clockevent_delta2ns +EXPORT_SYMBOL_GPL vmlinux 0x96e10a9d __netpoll_setup +EXPORT_SYMBOL_GPL vmlinux 0x96f67f3e cpu_device_create +EXPORT_SYMBOL_GPL vmlinux 0x97011f09 nvdimm_bus_unregister +EXPORT_SYMBOL_GPL vmlinux 0x9714e0bb ktime_get_raw +EXPORT_SYMBOL_GPL vmlinux 0x9719bcfd pmc_atom_read +EXPORT_SYMBOL_GPL vmlinux 0x97245dac crypto_register_rng +EXPORT_SYMBOL_GPL vmlinux 0x972d1cb1 fwnode_property_read_u16_array +EXPORT_SYMBOL_GPL vmlinux 0x975519c1 asymmetric_key_id_same +EXPORT_SYMBOL_GPL vmlinux 0x9757e4b5 fuse_do_ioctl +EXPORT_SYMBOL_GPL vmlinux 0x97623558 xas_create_range +EXPORT_SYMBOL_GPL vmlinux 0x97631cc6 rt_mutex_trylock +EXPORT_SYMBOL_GPL vmlinux 0x9768c078 usb_lock_device_for_reset +EXPORT_SYMBOL_GPL vmlinux 0x977be5c7 klist_iter_init_node +EXPORT_SYMBOL_GPL vmlinux 0x978137d6 espintcp_push_skb +EXPORT_SYMBOL_GPL vmlinux 0x978204b6 spi_res_release +EXPORT_SYMBOL_GPL vmlinux 0x97887702 devm_irq_domain_create_sim +EXPORT_SYMBOL_GPL vmlinux 0x97898244 udp_tunnel_sock_release +EXPORT_SYMBOL_GPL vmlinux 0x97945090 __efivar_entry_delete +EXPORT_SYMBOL_GPL vmlinux 0x97b3c4b9 nvme_shutdown_ctrl +EXPORT_SYMBOL_GPL vmlinux 0x97c63002 __netif_set_xps_queue +EXPORT_SYMBOL_GPL vmlinux 0x97d12355 hv_remove_stimer0_irq +EXPORT_SYMBOL_GPL vmlinux 0x97d1dae0 spi_set_cs_timing +EXPORT_SYMBOL_GPL vmlinux 0x97de2b83 debug_locks_silent +EXPORT_SYMBOL_GPL vmlinux 0x97e7f902 trace_vbprintk +EXPORT_SYMBOL_GPL vmlinux 0x97f603de dev_pm_opp_set_supported_hw +EXPORT_SYMBOL_GPL vmlinux 0x9823e30d nvme_complete_rq +EXPORT_SYMBOL_GPL vmlinux 0x9833bc0c hvc_kick +EXPORT_SYMBOL_GPL vmlinux 0x98388581 gpiochip_irq_domain_activate +EXPORT_SYMBOL_GPL vmlinux 0x983d2f86 disk_part_iter_next +EXPORT_SYMBOL_GPL vmlinux 0x9841b500 fscrypt_ioctl_get_policy_ex +EXPORT_SYMBOL_GPL vmlinux 0x98489343 strp_process +EXPORT_SYMBOL_GPL vmlinux 0x98503a63 mpi_alloc +EXPORT_SYMBOL_GPL vmlinux 0x985453e1 lease_unregister_notifier +EXPORT_SYMBOL_GPL vmlinux 0x9856fd19 irq_domain_push_irq +EXPORT_SYMBOL_GPL vmlinux 0x9858d383 dev_pm_opp_set_clkname +EXPORT_SYMBOL_GPL vmlinux 0x985f5eb4 css_next_descendant_pre +EXPORT_SYMBOL_GPL vmlinux 0x986147b3 irq_domain_free_irqs_common +EXPORT_SYMBOL_GPL vmlinux 0x9865a624 irq_chip_get_parent_state +EXPORT_SYMBOL_GPL vmlinux 0x987520e2 usb_find_common_endpoints_reverse +EXPORT_SYMBOL_GPL vmlinux 0x9879932b crypto_register_notifier +EXPORT_SYMBOL_GPL vmlinux 0x987ab0a5 amd_get_nb_id +EXPORT_SYMBOL_GPL vmlinux 0x9884d320 fuse_free_conn +EXPORT_SYMBOL_GPL vmlinux 0x989074ff kmsg_dump_reason_str +EXPORT_SYMBOL_GPL vmlinux 0x989ca045 fscrypt_drop_inode +EXPORT_SYMBOL_GPL vmlinux 0x98ba45dd spi_mem_driver_register_with_owner +EXPORT_SYMBOL_GPL vmlinux 0x98c07d65 spi_write_then_read +EXPORT_SYMBOL_GPL vmlinux 0x98c98140 crypto_alloc_ahash +EXPORT_SYMBOL_GPL vmlinux 0x98caa99f led_update_brightness +EXPORT_SYMBOL_GPL vmlinux 0x98d6ae1e subsys_interface_register +EXPORT_SYMBOL_GPL vmlinux 0x98da6e3d ata_sff_wait_after_reset +EXPORT_SYMBOL_GPL vmlinux 0x98ee289a __skb_tstamp_tx +EXPORT_SYMBOL_GPL vmlinux 0x98ee62b2 ring_buffer_record_disable_cpu +EXPORT_SYMBOL_GPL vmlinux 0x98f4d306 hyperv_flush_guest_mapping +EXPORT_SYMBOL_GPL vmlinux 0x98f5bf0a scsi_internal_device_unblock_nowait +EXPORT_SYMBOL_GPL vmlinux 0x98fa1e20 dm_get_reserved_rq_based_ios +EXPORT_SYMBOL_GPL vmlinux 0x98ff8c68 evict_inodes +EXPORT_SYMBOL_GPL vmlinux 0x9908841a fsverity_ioctl_enable +EXPORT_SYMBOL_GPL vmlinux 0x991bff05 devres_get +EXPORT_SYMBOL_GPL vmlinux 0x99430ba2 acpi_get_phys_id +EXPORT_SYMBOL_GPL vmlinux 0x9946b0bc dma_resv_wait_timeout_rcu +EXPORT_SYMBOL_GPL vmlinux 0x995bccf6 genphy_c45_pma_setup_forced +EXPORT_SYMBOL_GPL vmlinux 0x995d1071 prof_on +EXPORT_SYMBOL_GPL vmlinux 0x996eb4c0 ping_bind +EXPORT_SYMBOL_GPL vmlinux 0x996f4965 ethnl_cable_test_alloc +EXPORT_SYMBOL_GPL vmlinux 0x998074dc of_icc_get_by_index +EXPORT_SYMBOL_GPL vmlinux 0x9987660d __of_phy_provider_register +EXPORT_SYMBOL_GPL vmlinux 0x998d79d6 x509_decode_time +EXPORT_SYMBOL_GPL vmlinux 0x99bc781c fuse_dev_fiq_ops +EXPORT_SYMBOL_GPL vmlinux 0x99c0b2be devlink_free +EXPORT_SYMBOL_GPL vmlinux 0x99e07175 dma_request_slave_channel +EXPORT_SYMBOL_GPL vmlinux 0x99f018c4 nvmem_cell_read +EXPORT_SYMBOL_GPL vmlinux 0x99f19af4 screen_pos +EXPORT_SYMBOL_GPL vmlinux 0x99f2d00a sysfs_emit_at +EXPORT_SYMBOL_GPL vmlinux 0x99f523e9 reset_control_get_count +EXPORT_SYMBOL_GPL vmlinux 0x99fc7b3e usb_wakeup_notification +EXPORT_SYMBOL_GPL vmlinux 0x99fdcb08 devm_clk_bulk_get +EXPORT_SYMBOL_GPL vmlinux 0x9a001937 fuse_conn_get +EXPORT_SYMBOL_GPL vmlinux 0x9a11a0fc crypto_attr_alg_name +EXPORT_SYMBOL_GPL vmlinux 0x9a185ace tick_nohz_full_running +EXPORT_SYMBOL_GPL vmlinux 0x9a41c9f3 pm_genpd_add_subdomain +EXPORT_SYMBOL_GPL vmlinux 0x9a4249a6 pm_runtime_autosuspend_expiration +EXPORT_SYMBOL_GPL vmlinux 0x9a4c65ea bus_register +EXPORT_SYMBOL_GPL vmlinux 0x9a557b9b fsverity_cleanup_inode +EXPORT_SYMBOL_GPL vmlinux 0x9a58dd2d trace_print_bitmask_seq +EXPORT_SYMBOL_GPL vmlinux 0x9a5a2055 spi_mem_default_supports_op +EXPORT_SYMBOL_GPL vmlinux 0x9a5ada59 fat_build_inode +EXPORT_SYMBOL_GPL vmlinux 0x9a84a6fc nvdimm_to_bus +EXPORT_SYMBOL_GPL vmlinux 0x9a8845ce switchdev_port_obj_del +EXPORT_SYMBOL_GPL vmlinux 0x9aa6c793 crypto_register_akcipher +EXPORT_SYMBOL_GPL vmlinux 0x9aa71c2a efi_query_variable_store +EXPORT_SYMBOL_GPL vmlinux 0x9aaac699 dev_pm_opp_cpumask_remove_table +EXPORT_SYMBOL_GPL vmlinux 0x9ac11b74 suspend_set_ops +EXPORT_SYMBOL_GPL vmlinux 0x9aca0b31 ptdump_walk_pgd_level_debugfs +EXPORT_SYMBOL_GPL vmlinux 0x9ad9ef78 pci_aer_clear_nonfatal_status +EXPORT_SYMBOL_GPL vmlinux 0x9ade3846 sk_msg_return_zero +EXPORT_SYMBOL_GPL vmlinux 0x9ae4191f sbitmap_queue_init_node +EXPORT_SYMBOL_GPL vmlinux 0x9aeacb87 ring_buffer_iter_empty +EXPORT_SYMBOL_GPL vmlinux 0x9af74621 devm_hwmon_device_unregister +EXPORT_SYMBOL_GPL vmlinux 0x9b000206 mdiobus_modify +EXPORT_SYMBOL_GPL vmlinux 0x9b0578b5 pci_epc_remove_epf +EXPORT_SYMBOL_GPL vmlinux 0x9b11b493 skb_zerocopy_iter_stream +EXPORT_SYMBOL_GPL vmlinux 0x9b36a0b5 regulator_disable_deferred +EXPORT_SYMBOL_GPL vmlinux 0x9b52ca8e blk_mq_update_nr_hw_queues +EXPORT_SYMBOL_GPL vmlinux 0x9b549363 gpiod_get_optional +EXPORT_SYMBOL_GPL vmlinux 0x9b555c8c pm_suspend_default_s2idle +EXPORT_SYMBOL_GPL vmlinux 0x9b5fbedf dev_pm_set_dedicated_wake_irq +EXPORT_SYMBOL_GPL vmlinux 0x9b698c42 ioasid_set_data +EXPORT_SYMBOL_GPL vmlinux 0x9b6ec967 ring_buffer_size +EXPORT_SYMBOL_GPL vmlinux 0x9b6f0a4c tty_mode_ioctl +EXPORT_SYMBOL_GPL vmlinux 0x9b837c9e alloc_dax_region +EXPORT_SYMBOL_GPL vmlinux 0x9b85bb71 irq_gc_ack_set_bit +EXPORT_SYMBOL_GPL vmlinux 0x9b896724 devlink_param_value_str_fill +EXPORT_SYMBOL_GPL vmlinux 0x9b8a14bd usb_unlink_urb +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 0x9bb76adc sk_psock_msg_verdict +EXPORT_SYMBOL_GPL vmlinux 0x9bc77923 __tracepoint_neigh_update +EXPORT_SYMBOL_GPL vmlinux 0x9bece81b mpi_cmp_ui +EXPORT_SYMBOL_GPL vmlinux 0x9bf8b839 fixed_phy_change_carrier +EXPORT_SYMBOL_GPL vmlinux 0x9c01e7be lookup_address_in_mm +EXPORT_SYMBOL_GPL vmlinux 0x9c3ad733 bpf_trace_run2 +EXPORT_SYMBOL_GPL vmlinux 0x9c5c064c ata_scsi_slave_destroy +EXPORT_SYMBOL_GPL vmlinux 0x9c6febfc add_uevent_var +EXPORT_SYMBOL_GPL vmlinux 0x9c78aae0 genphy_c45_config_aneg +EXPORT_SYMBOL_GPL vmlinux 0x9c803020 usb_phy_roothub_power_on +EXPORT_SYMBOL_GPL vmlinux 0x9c87f278 device_init_wakeup +EXPORT_SYMBOL_GPL vmlinux 0x9ca480cc clk_gate_is_enabled +EXPORT_SYMBOL_GPL vmlinux 0x9caab9ef acpi_gpio_get_irq_resource +EXPORT_SYMBOL_GPL vmlinux 0x9cb26601 acpi_debugfs_dir +EXPORT_SYMBOL_GPL vmlinux 0x9cc0e0c2 __pm_stay_awake +EXPORT_SYMBOL_GPL vmlinux 0x9cc4f70a register_pm_notifier +EXPORT_SYMBOL_GPL vmlinux 0x9cc9e3e8 key_type_encrypted +EXPORT_SYMBOL_GPL vmlinux 0x9cd3ddff locks_alloc_lock +EXPORT_SYMBOL_GPL vmlinux 0x9cf37c44 __iowrite32_copy +EXPORT_SYMBOL_GPL vmlinux 0x9cfa38e6 fat_update_time +EXPORT_SYMBOL_GPL vmlinux 0x9cfbb6f2 vc_scrolldelta_helper +EXPORT_SYMBOL_GPL vmlinux 0x9d0515be pci_epf_unbind +EXPORT_SYMBOL_GPL vmlinux 0x9d077f2f __sync_filesystem +EXPORT_SYMBOL_GPL vmlinux 0x9d09e8ae ring_buffer_event_data +EXPORT_SYMBOL_GPL vmlinux 0x9d118ed1 dma_buf_pin +EXPORT_SYMBOL_GPL vmlinux 0x9d14205c cr4_read_shadow +EXPORT_SYMBOL_GPL vmlinux 0x9d154e5d device_link_remove +EXPORT_SYMBOL_GPL vmlinux 0x9d1888a9 blk_update_request +EXPORT_SYMBOL_GPL vmlinux 0x9d2cbd12 xdp_rxq_info_unreg_mem_model +EXPORT_SYMBOL_GPL vmlinux 0x9d2d1a2a usb_get_status +EXPORT_SYMBOL_GPL vmlinux 0x9d405e67 lwtunnel_get_encap_size +EXPORT_SYMBOL_GPL vmlinux 0x9d41bde7 report_iommu_fault +EXPORT_SYMBOL_GPL vmlinux 0x9d486c63 blk_queue_write_cache +EXPORT_SYMBOL_GPL vmlinux 0x9d4e6f9d trace_event_buffer_reserve +EXPORT_SYMBOL_GPL vmlinux 0x9d597a03 nf_ct_hook +EXPORT_SYMBOL_GPL vmlinux 0x9d68972d badblocks_clear +EXPORT_SYMBOL_GPL vmlinux 0x9d6cfe33 pinctrl_dev_get_drvdata +EXPORT_SYMBOL_GPL vmlinux 0x9d9d2ed9 regulator_set_mode +EXPORT_SYMBOL_GPL vmlinux 0x9d9e5115 init_uts_ns +EXPORT_SYMBOL_GPL vmlinux 0x9d9ffe24 blk_mq_freeze_queue_wait +EXPORT_SYMBOL_GPL vmlinux 0x9da37449 device_connection_add +EXPORT_SYMBOL_GPL vmlinux 0x9dc98c27 clk_hw_set_rate_range +EXPORT_SYMBOL_GPL vmlinux 0x9dd95ca1 ata_host_activate +EXPORT_SYMBOL_GPL vmlinux 0x9ddc210a pm_wakeup_ws_event +EXPORT_SYMBOL_GPL vmlinux 0x9e005e6f cppc_get_perf_caps +EXPORT_SYMBOL_GPL vmlinux 0x9e020c69 devm_spi_mem_dirmap_create +EXPORT_SYMBOL_GPL vmlinux 0x9e08d700 __tracepoint_xdp_bulk_tx +EXPORT_SYMBOL_GPL vmlinux 0x9e1597ef irq_setup_generic_chip +EXPORT_SYMBOL_GPL vmlinux 0x9e423bbc unregister_ftrace_function +EXPORT_SYMBOL_GPL vmlinux 0x9e472f5f snmp_fold_field +EXPORT_SYMBOL_GPL vmlinux 0x9e626429 __blk_req_zone_write_unlock +EXPORT_SYMBOL_GPL vmlinux 0x9e72041e l3mdev_link_scope_lookup +EXPORT_SYMBOL_GPL vmlinux 0x9e8e7277 iomap_file_unshare +EXPORT_SYMBOL_GPL vmlinux 0x9ea1b489 ip6_update_pmtu +EXPORT_SYMBOL_GPL vmlinux 0x9ed554b3 unregister_keyboard_notifier +EXPORT_SYMBOL_GPL vmlinux 0x9edba61f fuse_direct_io +EXPORT_SYMBOL_GPL vmlinux 0x9edfa6cc acpi_subsys_suspend +EXPORT_SYMBOL_GPL vmlinux 0x9ee465cb fuse_conn_init +EXPORT_SYMBOL_GPL vmlinux 0x9ee534fe regulator_list_hardware_vsel +EXPORT_SYMBOL_GPL vmlinux 0x9ef76b3c ata_scsi_change_queue_depth +EXPORT_SYMBOL_GPL vmlinux 0x9ef92f21 pci_pasid_features +EXPORT_SYMBOL_GPL vmlinux 0x9efcadd5 ata_scsi_dma_need_drain +EXPORT_SYMBOL_GPL vmlinux 0x9f029c7e ata_wait_after_reset +EXPORT_SYMBOL_GPL vmlinux 0x9f07a6c7 gpiod_put_array +EXPORT_SYMBOL_GPL vmlinux 0x9f1e7c70 eventfd_fget +EXPORT_SYMBOL_GPL vmlinux 0x9f1fdb53 crypto_ahash_setkey +EXPORT_SYMBOL_GPL vmlinux 0x9f22412c gpiochip_remove +EXPORT_SYMBOL_GPL vmlinux 0x9f36457e __tracepoint_fdb_delete +EXPORT_SYMBOL_GPL vmlinux 0x9f370a64 __srcu_read_lock +EXPORT_SYMBOL_GPL vmlinux 0x9f4a8c11 crypto_cipher_encrypt_one +EXPORT_SYMBOL_GPL vmlinux 0x9f4d74e2 software_node_fwnode +EXPORT_SYMBOL_GPL vmlinux 0x9f57ec7c pktgen_xfrm_outer_mode_output +EXPORT_SYMBOL_GPL vmlinux 0x9f8075d2 sock_zerocopy_realloc +EXPORT_SYMBOL_GPL vmlinux 0x9f9495cd irq_domain_create_sim +EXPORT_SYMBOL_GPL vmlinux 0x9fab32df arch_set_freq_scale +EXPORT_SYMBOL_GPL vmlinux 0x9fbc30f9 devm_acpi_dma_controller_free +EXPORT_SYMBOL_GPL vmlinux 0x9fbfebab erst_write +EXPORT_SYMBOL_GPL vmlinux 0x9fce80db fb_notifier_call_chain +EXPORT_SYMBOL_GPL vmlinux 0x9fd0fbb8 ata_sff_postreset +EXPORT_SYMBOL_GPL vmlinux 0x9fd12a74 pci_check_and_unmask_intx +EXPORT_SYMBOL_GPL vmlinux 0x9fd45ecc generic_fh_to_parent +EXPORT_SYMBOL_GPL vmlinux 0x9fe532c6 dma_async_device_channel_unregister +EXPORT_SYMBOL_GPL vmlinux 0x9fe899b7 get_cpu_idle_time +EXPORT_SYMBOL_GPL vmlinux 0x9fe939e1 mpi_powm +EXPORT_SYMBOL_GPL vmlinux 0x9ffedb0e uart_handle_cts_change +EXPORT_SYMBOL_GPL vmlinux 0xa00700ee component_del +EXPORT_SYMBOL_GPL vmlinux 0xa00b4708 iommu_capable +EXPORT_SYMBOL_GPL vmlinux 0xa01a8d9b nd_cmd_bus_desc +EXPORT_SYMBOL_GPL vmlinux 0xa0208d60 fat_attach +EXPORT_SYMBOL_GPL vmlinux 0xa04b965e nvdimm_kobj +EXPORT_SYMBOL_GPL vmlinux 0xa04f945a cpus_read_lock +EXPORT_SYMBOL_GPL vmlinux 0xa04fc147 get_cpu_device +EXPORT_SYMBOL_GPL vmlinux 0xa06825b0 regulator_set_suspend_voltage +EXPORT_SYMBOL_GPL vmlinux 0xa06d8848 serial8250_em485_destroy +EXPORT_SYMBOL_GPL vmlinux 0xa080b756 dev_pm_clear_wake_irq +EXPORT_SYMBOL_GPL vmlinux 0xa08e9c83 ping_getfrag +EXPORT_SYMBOL_GPL vmlinux 0xa09c2a4c ip_local_out +EXPORT_SYMBOL_GPL vmlinux 0xa0a97814 pci_epc_put +EXPORT_SYMBOL_GPL vmlinux 0xa0b9bc3c debugfs_write_file_bool +EXPORT_SYMBOL_GPL vmlinux 0xa0c6befa hrtimer_cancel +EXPORT_SYMBOL_GPL vmlinux 0xa0d3456d nr_swap_pages +EXPORT_SYMBOL_GPL vmlinux 0xa1053ec9 ata_pci_sff_prepare_host +EXPORT_SYMBOL_GPL vmlinux 0xa10c8e8a crypto_enqueue_request +EXPORT_SYMBOL_GPL vmlinux 0xa1131f7c irq_domain_alloc_irqs_parent +EXPORT_SYMBOL_GPL vmlinux 0xa1189c5f acpi_pm_set_device_wakeup +EXPORT_SYMBOL_GPL vmlinux 0xa1225d9a phy_pm_runtime_put +EXPORT_SYMBOL_GPL vmlinux 0xa127e985 pci_intx +EXPORT_SYMBOL_GPL vmlinux 0xa1421ea7 __bio_crypt_clone +EXPORT_SYMBOL_GPL vmlinux 0xa156a1f2 erst_get_record_id_end +EXPORT_SYMBOL_GPL vmlinux 0xa1691b63 xas_find_marked +EXPORT_SYMBOL_GPL vmlinux 0xa16b6b8f device_connection_remove +EXPORT_SYMBOL_GPL vmlinux 0xa186dafc __bio_add_page +EXPORT_SYMBOL_GPL vmlinux 0xa18ee545 sched_trace_rd_span +EXPORT_SYMBOL_GPL vmlinux 0xa19389dc bio_trim +EXPORT_SYMBOL_GPL vmlinux 0xa194cd1a rio_mport_get_physefb +EXPORT_SYMBOL_GPL vmlinux 0xa19b0e97 user_read +EXPORT_SYMBOL_GPL vmlinux 0xa1a3fe51 inet6_sk_rebuild_header +EXPORT_SYMBOL_GPL vmlinux 0xa1c6d339 skcipher_walk_async +EXPORT_SYMBOL_GPL vmlinux 0xa1cd5d8a crypto_shash_digest +EXPORT_SYMBOL_GPL vmlinux 0xa1e239e4 clk_hw_get_num_parents +EXPORT_SYMBOL_GPL vmlinux 0xa1ed9c8b add_hwgenerator_randomness +EXPORT_SYMBOL_GPL vmlinux 0xa1fea34c devlink_reload_enable +EXPORT_SYMBOL_GPL vmlinux 0xa20c427f vmbus_free_ring +EXPORT_SYMBOL_GPL vmlinux 0xa20d01ba __trace_bprintk +EXPORT_SYMBOL_GPL vmlinux 0xa20eb501 phy_power_on +EXPORT_SYMBOL_GPL vmlinux 0xa21ef62b usb_register_driver +EXPORT_SYMBOL_GPL vmlinux 0xa232a7e7 led_trigger_set_default +EXPORT_SYMBOL_GPL vmlinux 0xa251d0f8 irq_domain_xlate_onecell +EXPORT_SYMBOL_GPL vmlinux 0xa25c9054 nvdimm_name +EXPORT_SYMBOL_GPL vmlinux 0xa26d9b4f workqueue_congested +EXPORT_SYMBOL_GPL vmlinux 0xa27c002a rio_request_inb_dbell +EXPORT_SYMBOL_GPL vmlinux 0xa2bca959 da9052_disable_irq_nosync +EXPORT_SYMBOL_GPL vmlinux 0xa2c1ba4f usb_autopm_get_interface_no_resume +EXPORT_SYMBOL_GPL vmlinux 0xa2d0f7a9 sk_clear_memalloc +EXPORT_SYMBOL_GPL vmlinux 0xa2d3a6ed balloon_aops +EXPORT_SYMBOL_GPL vmlinux 0xa2d8581b devm_hwmon_device_register_with_groups +EXPORT_SYMBOL_GPL vmlinux 0xa2e1b3ef trace_printk_init_buffers +EXPORT_SYMBOL_GPL vmlinux 0xa2f7487f hv_is_hibernation_supported +EXPORT_SYMBOL_GPL vmlinux 0xa2f812f9 phy_10gbit_fec_features_array +EXPORT_SYMBOL_GPL vmlinux 0xa301debb init_dummy_netdev +EXPORT_SYMBOL_GPL vmlinux 0xa3027571 thermal_notify_framework +EXPORT_SYMBOL_GPL vmlinux 0xa3054bc0 device_reprobe +EXPORT_SYMBOL_GPL vmlinux 0xa31b7922 balloon_page_enqueue +EXPORT_SYMBOL_GPL vmlinux 0xa32bab05 ata_sas_port_init +EXPORT_SYMBOL_GPL vmlinux 0xa3395c2f srcu_barrier +EXPORT_SYMBOL_GPL vmlinux 0xa35d5427 devm_kfree +EXPORT_SYMBOL_GPL vmlinux 0xa3659b5f __tracepoint_devlink_hwerr +EXPORT_SYMBOL_GPL vmlinux 0xa36ccb27 devlink_resource_register +EXPORT_SYMBOL_GPL vmlinux 0xa36f50fb is_binary_blacklisted +EXPORT_SYMBOL_GPL vmlinux 0xa3705e12 __irq_set_handler +EXPORT_SYMBOL_GPL vmlinux 0xa38602cd drain_workqueue +EXPORT_SYMBOL_GPL vmlinux 0xa389a49a profile_event_register +EXPORT_SYMBOL_GPL vmlinux 0xa38a9f71 get_itimerspec64 +EXPORT_SYMBOL_GPL vmlinux 0xa3a04602 btree_geo64 +EXPORT_SYMBOL_GPL vmlinux 0xa3ac2527 platform_get_irq_optional +EXPORT_SYMBOL_GPL vmlinux 0xa3b958ce reset_hung_task_detector +EXPORT_SYMBOL_GPL vmlinux 0xa3bdc6a6 fwnode_property_read_string_array +EXPORT_SYMBOL_GPL vmlinux 0xa3c2214a devm_clk_bulk_get_all +EXPORT_SYMBOL_GPL vmlinux 0xa3c33aea scsi_dh_activate +EXPORT_SYMBOL_GPL vmlinux 0xa3cb10de devm_kmemdup +EXPORT_SYMBOL_GPL vmlinux 0xa3e8a672 tpm_get_timeouts +EXPORT_SYMBOL_GPL vmlinux 0xa3ece414 freezer_cgrp_subsys_enabled_key +EXPORT_SYMBOL_GPL vmlinux 0xa3f12f69 __crypto_xor +EXPORT_SYMBOL_GPL vmlinux 0xa40029b3 nvme_unfreeze +EXPORT_SYMBOL_GPL vmlinux 0xa4031b7f sfp_parse_port +EXPORT_SYMBOL_GPL vmlinux 0xa410a295 devlink_region_destroy +EXPORT_SYMBOL_GPL vmlinux 0xa41c0da2 do_splice_from +EXPORT_SYMBOL_GPL vmlinux 0xa41e2e73 cpuidle_poll_state_init +EXPORT_SYMBOL_GPL vmlinux 0xa44a1307 interval_tree_iter_first +EXPORT_SYMBOL_GPL vmlinux 0xa44d694c pm_genpd_syscore_poweroff +EXPORT_SYMBOL_GPL vmlinux 0xa452c297 hpet_mask_rtc_irq_bit +EXPORT_SYMBOL_GPL vmlinux 0xa45c7b90 stack_trace_print +EXPORT_SYMBOL_GPL vmlinux 0xa45e68fe shash_ahash_digest +EXPORT_SYMBOL_GPL vmlinux 0xa460871f sata_port_ops +EXPORT_SYMBOL_GPL vmlinux 0xa468a4b4 pci_create_slot +EXPORT_SYMBOL_GPL vmlinux 0xa46d54dd acpiphp_unregister_attention +EXPORT_SYMBOL_GPL vmlinux 0xa471107e pci_epc_mem_init +EXPORT_SYMBOL_GPL vmlinux 0xa471982d dm_table_set_type +EXPORT_SYMBOL_GPL vmlinux 0xa48196c8 kdb_poll_idx +EXPORT_SYMBOL_GPL vmlinux 0xa4830d3c usb_acpi_power_manageable +EXPORT_SYMBOL_GPL vmlinux 0xa4892a9b devm_request_free_mem_region +EXPORT_SYMBOL_GPL vmlinux 0xa497a832 class_create_file_ns +EXPORT_SYMBOL_GPL vmlinux 0xa497afa0 platform_device_alloc +EXPORT_SYMBOL_GPL vmlinux 0xa497d3c0 sk_set_peek_off +EXPORT_SYMBOL_GPL vmlinux 0xa4a18fed __vfs_setxattr_noperm +EXPORT_SYMBOL_GPL vmlinux 0xa4ab7c1c ring_buffer_overruns +EXPORT_SYMBOL_GPL vmlinux 0xa4b07fe7 ring_buffer_change_overwrite +EXPORT_SYMBOL_GPL vmlinux 0xa4cffc15 transport_class_unregister +EXPORT_SYMBOL_GPL vmlinux 0xa4e59b15 sched_setscheduler_nocheck +EXPORT_SYMBOL_GPL vmlinux 0xa4f51226 subsys_virtual_register +EXPORT_SYMBOL_GPL vmlinux 0xa50335f4 sbitmap_finish_wait +EXPORT_SYMBOL_GPL vmlinux 0xa51952eb is_current_mnt_ns +EXPORT_SYMBOL_GPL vmlinux 0xa51bc818 __class_register +EXPORT_SYMBOL_GPL vmlinux 0xa51d097e tpm_tis_core_init +EXPORT_SYMBOL_GPL vmlinux 0xa525318d spi_mem_dirmap_read +EXPORT_SYMBOL_GPL vmlinux 0xa531471e clk_save_context +EXPORT_SYMBOL_GPL vmlinux 0xa53553b6 blk_clear_pm_only +EXPORT_SYMBOL_GPL vmlinux 0xa538b7f0 tcp_twsk_unique +EXPORT_SYMBOL_GPL vmlinux 0xa53b325e fb_deferred_io_fsync +EXPORT_SYMBOL_GPL vmlinux 0xa53b3490 irq_chip_eoi_parent +EXPORT_SYMBOL_GPL vmlinux 0xa5449bc2 gpiochip_remove_pin_ranges +EXPORT_SYMBOL_GPL vmlinux 0xa555a69d tpm_get_random +EXPORT_SYMBOL_GPL vmlinux 0xa557506d tcp_is_ulp_esp +EXPORT_SYMBOL_GPL vmlinux 0xa559b216 power_supply_powers +EXPORT_SYMBOL_GPL vmlinux 0xa5b3d295 pm_runtime_barrier +EXPORT_SYMBOL_GPL vmlinux 0xa5b5d26a debugfs_create_bool +EXPORT_SYMBOL_GPL vmlinux 0xa5bb7881 vmbus_recvpacket_raw +EXPORT_SYMBOL_GPL vmlinux 0xa5bda8a1 efi_capsule_supported +EXPORT_SYMBOL_GPL vmlinux 0xa5c6723d perf_event_update_userpage +EXPORT_SYMBOL_GPL vmlinux 0xa5d7c388 pstore_type_to_name +EXPORT_SYMBOL_GPL vmlinux 0xa5eecece pm_clk_remove +EXPORT_SYMBOL_GPL vmlinux 0xa5efbf4c async_synchronize_full +EXPORT_SYMBOL_GPL vmlinux 0xa601f870 vfs_readf +EXPORT_SYMBOL_GPL vmlinux 0xa6102d5d regulator_force_disable +EXPORT_SYMBOL_GPL vmlinux 0xa6138773 nvme_try_sched_reset +EXPORT_SYMBOL_GPL vmlinux 0xa62892c6 efivar_sysfs_list +EXPORT_SYMBOL_GPL vmlinux 0xa667b942 skcipher_walk_aead_encrypt +EXPORT_SYMBOL_GPL vmlinux 0xa673a4da devm_devfreq_event_add_edev +EXPORT_SYMBOL_GPL vmlinux 0xa6765766 acpi_dev_suspend +EXPORT_SYMBOL_GPL vmlinux 0xa67e9562 page_cache_sync_readahead +EXPORT_SYMBOL_GPL vmlinux 0xa6824f3f __tracepoint_br_fdb_external_learn_add +EXPORT_SYMBOL_GPL vmlinux 0xa68f2d27 devm_regulator_register +EXPORT_SYMBOL_GPL vmlinux 0xa68f9c13 mm_kobj +EXPORT_SYMBOL_GPL vmlinux 0xa6b06f65 ata_sff_queue_work +EXPORT_SYMBOL_GPL vmlinux 0xa6b21ef2 dpm_suspend_end +EXPORT_SYMBOL_GPL vmlinux 0xa6cdff1d usb_add_hcd +EXPORT_SYMBOL_GPL vmlinux 0xa6ce78a1 clk_hw_get_parent_by_index +EXPORT_SYMBOL_GPL vmlinux 0xa6dba0d2 iommu_detach_device +EXPORT_SYMBOL_GPL vmlinux 0xa6e1a69d kick_all_cpus_sync +EXPORT_SYMBOL_GPL vmlinux 0xa6f31bc8 badblocks_exit +EXPORT_SYMBOL_GPL vmlinux 0xa6f8efcf mnt_want_write +EXPORT_SYMBOL_GPL vmlinux 0xa709c835 fib6_info_destroy_rcu +EXPORT_SYMBOL_GPL vmlinux 0xa70c5352 serial8250_tx_chars +EXPORT_SYMBOL_GPL vmlinux 0xa70de739 sysfs_group_change_owner +EXPORT_SYMBOL_GPL vmlinux 0xa7127da7 mce_unregister_injector_chain +EXPORT_SYMBOL_GPL vmlinux 0xa7239d2d fib_rules_lookup +EXPORT_SYMBOL_GPL vmlinux 0xa726aeb0 iomap_swapfile_activate +EXPORT_SYMBOL_GPL vmlinux 0xa731f387 nl_table_lock +EXPORT_SYMBOL_GPL vmlinux 0xa7335b54 usb_reset_device +EXPORT_SYMBOL_GPL vmlinux 0xa738225c ack_all_badblocks +EXPORT_SYMBOL_GPL vmlinux 0xa73c788e perf_pmu_register +EXPORT_SYMBOL_GPL vmlinux 0xa73d463a usb_register_device_driver +EXPORT_SYMBOL_GPL vmlinux 0xa7572f0c gpiod_unexport +EXPORT_SYMBOL_GPL vmlinux 0xa7659efd nvdimm_blk_region_create +EXPORT_SYMBOL_GPL vmlinux 0xa7b32f7a fuse_dev_release +EXPORT_SYMBOL_GPL vmlinux 0xa7c35dff devm_device_remove_groups +EXPORT_SYMBOL_GPL vmlinux 0xa7e1746e dev_pm_domain_detach +EXPORT_SYMBOL_GPL vmlinux 0xa7f8d55d udp_tunnel_notify_add_rx_port +EXPORT_SYMBOL_GPL vmlinux 0xa7fa6b80 fwnode_get_next_parent +EXPORT_SYMBOL_GPL vmlinux 0xa7fa8dd4 udp4_lib_lookup +EXPORT_SYMBOL_GPL vmlinux 0xa7fc3403 cpufreq_driver_fast_switch +EXPORT_SYMBOL_GPL vmlinux 0xa803fa25 devfreq_get_devfreq_by_phandle +EXPORT_SYMBOL_GPL vmlinux 0xa826165a nf_checksum_partial +EXPORT_SYMBOL_GPL vmlinux 0xa826307a wbc_attach_and_unlock_inode +EXPORT_SYMBOL_GPL vmlinux 0xa82fb70a fib_new_table +EXPORT_SYMBOL_GPL vmlinux 0xa83eb94f acpi_dma_simple_xlate +EXPORT_SYMBOL_GPL vmlinux 0xa851973a raw_notifier_call_chain +EXPORT_SYMBOL_GPL vmlinux 0xa85c006f perf_event_read_value +EXPORT_SYMBOL_GPL vmlinux 0xa86b9fce serial8250_release_dma +EXPORT_SYMBOL_GPL vmlinux 0xa875d78f rio_mport_write_config_32 +EXPORT_SYMBOL_GPL vmlinux 0xa87a1d8a __rio_local_write_config_32 +EXPORT_SYMBOL_GPL vmlinux 0xa88f679c amd_iommu_is_attach_deferred +EXPORT_SYMBOL_GPL vmlinux 0xa89573d6 xfrm_output_resume +EXPORT_SYMBOL_GPL vmlinux 0xa89e1fc9 xdp_rxq_info_reg +EXPORT_SYMBOL_GPL vmlinux 0xa8b6b2a8 devm_regulator_bulk_get +EXPORT_SYMBOL_GPL vmlinux 0xa8bc1596 led_colors +EXPORT_SYMBOL_GPL vmlinux 0xa8be7968 find_asymmetric_key +EXPORT_SYMBOL_GPL vmlinux 0xa8bee666 inode_sb_list_add +EXPORT_SYMBOL_GPL vmlinux 0xa8c2e70f device_rename +EXPORT_SYMBOL_GPL vmlinux 0xa8ca351b md_new_event +EXPORT_SYMBOL_GPL vmlinux 0xa8cff782 devm_pinctrl_get +EXPORT_SYMBOL_GPL vmlinux 0xa8d2c2e5 udp_destruct_sock +EXPORT_SYMBOL_GPL vmlinux 0xa90c1107 tcp_reno_ssthresh +EXPORT_SYMBOL_GPL vmlinux 0xa910a95b vmbus_open +EXPORT_SYMBOL_GPL vmlinux 0xa9126bff hpet_set_rtc_irq_bit +EXPORT_SYMBOL_GPL vmlinux 0xa931f60e __netdev_watchdog_up +EXPORT_SYMBOL_GPL vmlinux 0xa9320d27 ktime_get_seconds +EXPORT_SYMBOL_GPL vmlinux 0xa96635ae console_drivers +EXPORT_SYMBOL_GPL vmlinux 0xa9712936 pm_runtime_force_resume +EXPORT_SYMBOL_GPL vmlinux 0xa9854364 umc_normaddr_to_sysaddr +EXPORT_SYMBOL_GPL vmlinux 0xa98f3c91 pci_slots_kset +EXPORT_SYMBOL_GPL vmlinux 0xa99ef899 devlink_fmsg_bool_pair_put +EXPORT_SYMBOL_GPL vmlinux 0xa9a2a7f3 crypto_unregister_template +EXPORT_SYMBOL_GPL vmlinux 0xa9abb6ba trace_get_event_file +EXPORT_SYMBOL_GPL vmlinux 0xa9bc8b74 module_mutex +EXPORT_SYMBOL_GPL vmlinux 0xa9cc05a8 pci_enable_ats +EXPORT_SYMBOL_GPL vmlinux 0xa9d15830 blk_mq_sched_free_hctx_data +EXPORT_SYMBOL_GPL vmlinux 0xa9d5fbbb rtnl_get_net_ns_capable +EXPORT_SYMBOL_GPL vmlinux 0xa9e18049 task_handoff_unregister +EXPORT_SYMBOL_GPL vmlinux 0xa9f7456b usb_hub_clear_tt_buffer +EXPORT_SYMBOL_GPL vmlinux 0xaa230f88 perf_unregister_guest_info_callbacks +EXPORT_SYMBOL_GPL vmlinux 0xaa328208 rio_lock_device +EXPORT_SYMBOL_GPL vmlinux 0xaa354ce9 mbox_controller_register +EXPORT_SYMBOL_GPL vmlinux 0xaa4978f7 dma_buf_put +EXPORT_SYMBOL_GPL vmlinux 0xaa6a50f9 __static_key_deferred_flush +EXPORT_SYMBOL_GPL vmlinux 0xaa878027 spi_statistics_add_transfer_stats +EXPORT_SYMBOL_GPL vmlinux 0xaaa918c9 ftrace_dump +EXPORT_SYMBOL_GPL vmlinux 0xaac8e912 inet6_csk_update_pmtu +EXPORT_SYMBOL_GPL vmlinux 0xaad806f6 trace_seq_path +EXPORT_SYMBOL_GPL vmlinux 0xaaff04cb tcp_sendpage_locked +EXPORT_SYMBOL_GPL vmlinux 0xab00d0e4 tcp_orphan_count +EXPORT_SYMBOL_GPL vmlinux 0xab18dabf devm_of_phy_provider_unregister +EXPORT_SYMBOL_GPL vmlinux 0xab1e0e93 hv_setup_kexec_handler +EXPORT_SYMBOL_GPL vmlinux 0xab207836 led_init_core +EXPORT_SYMBOL_GPL vmlinux 0xab3b7d07 uart_get_rs485_mode +EXPORT_SYMBOL_GPL vmlinux 0xab60e781 inet_ctl_sock_create +EXPORT_SYMBOL_GPL vmlinux 0xab6c8cf7 device_add_properties +EXPORT_SYMBOL_GPL vmlinux 0xab7962b9 sk_detach_filter +EXPORT_SYMBOL_GPL vmlinux 0xab7e28be find_get_pid +EXPORT_SYMBOL_GPL vmlinux 0xab9bd884 perf_register_guest_info_callbacks +EXPORT_SYMBOL_GPL vmlinux 0xaba3b627 pinctrl_put +EXPORT_SYMBOL_GPL vmlinux 0xabc298d0 intel_scu_ipc_unregister +EXPORT_SYMBOL_GPL vmlinux 0xabc640f3 list_lru_isolate +EXPORT_SYMBOL_GPL vmlinux 0xabf6ba31 devlink_dpipe_entry_ctx_append +EXPORT_SYMBOL_GPL vmlinux 0xabfcdbf7 spi_slave_abort +EXPORT_SYMBOL_GPL vmlinux 0xac01b8c0 tpm_pm_suspend +EXPORT_SYMBOL_GPL vmlinux 0xac02f91a ipv4_update_pmtu +EXPORT_SYMBOL_GPL vmlinux 0xac079798 isa_register_driver +EXPORT_SYMBOL_GPL vmlinux 0xac0dc274 register_user_hw_breakpoint +EXPORT_SYMBOL_GPL vmlinux 0xac42bbd5 ip_build_and_send_pkt +EXPORT_SYMBOL_GPL vmlinux 0xac4638b9 unregister_wide_hw_breakpoint +EXPORT_SYMBOL_GPL vmlinux 0xac7bb6c9 spi_mem_dirmap_create +EXPORT_SYMBOL_GPL vmlinux 0xac813f74 vfio_iommu_group_get +EXPORT_SYMBOL_GPL vmlinux 0xac8aea34 tcp_register_ulp +EXPORT_SYMBOL_GPL vmlinux 0xac97a8bb phy_package_leave +EXPORT_SYMBOL_GPL vmlinux 0xac9ddac5 devm_of_phy_get_by_index +EXPORT_SYMBOL_GPL vmlinux 0xacb35107 dbs_update +EXPORT_SYMBOL_GPL vmlinux 0xacb4d88c clk_rate_exclusive_put +EXPORT_SYMBOL_GPL vmlinux 0xace9223c rtnl_af_unregister +EXPORT_SYMBOL_GPL vmlinux 0xacedd89e devm_thermal_of_cooling_device_register +EXPORT_SYMBOL_GPL vmlinux 0xacf4a84f devm_phy_package_join +EXPORT_SYMBOL_GPL vmlinux 0xad0ad114 blk_rq_prep_clone +EXPORT_SYMBOL_GPL vmlinux 0xad0f2b6c unix_table_lock +EXPORT_SYMBOL_GPL vmlinux 0xad12086f ethnl_cable_test_result +EXPORT_SYMBOL_GPL vmlinux 0xad27bec6 icc_nodes_remove +EXPORT_SYMBOL_GPL vmlinux 0xad3579af inet6_hash_connect +EXPORT_SYMBOL_GPL vmlinux 0xad43341a pci_epf_alloc_space +EXPORT_SYMBOL_GPL vmlinux 0xad44d990 generic_online_page +EXPORT_SYMBOL_GPL vmlinux 0xad4e6259 remove_cpu +EXPORT_SYMBOL_GPL vmlinux 0xad5737fc efivar_init +EXPORT_SYMBOL_GPL vmlinux 0xad5f0017 perf_trace_buf_alloc +EXPORT_SYMBOL_GPL vmlinux 0xad645234 register_switchdev_notifier +EXPORT_SYMBOL_GPL vmlinux 0xad82dfc6 crypto_dequeue_request +EXPORT_SYMBOL_GPL vmlinux 0xad8ca0bd blkdev_read_iter +EXPORT_SYMBOL_GPL vmlinux 0xad95f722 devm_power_supply_register +EXPORT_SYMBOL_GPL vmlinux 0xad9db5f4 tick_nohz_dep_clear_task +EXPORT_SYMBOL_GPL vmlinux 0xad9fe2ac crypto_remove_spawns +EXPORT_SYMBOL_GPL vmlinux 0xada38766 dst_cache_destroy +EXPORT_SYMBOL_GPL vmlinux 0xadb33573 fuse_do_open +EXPORT_SYMBOL_GPL vmlinux 0xadc321d5 device_show_int +EXPORT_SYMBOL_GPL vmlinux 0xadda68ab vmbus_alloc_ring +EXPORT_SYMBOL_GPL vmlinux 0xaddfc0d3 scsi_eh_ready_devs +EXPORT_SYMBOL_GPL vmlinux 0xadf9699b pci_write_msi_msg +EXPORT_SYMBOL_GPL vmlinux 0xae1051b0 net_cls_cgrp_subsys_enabled_key +EXPORT_SYMBOL_GPL vmlinux 0xae2d4d20 __ftrace_vprintk +EXPORT_SYMBOL_GPL vmlinux 0xae39f80e dst_cache_init +EXPORT_SYMBOL_GPL vmlinux 0xae3aa894 dm_internal_resume_fast +EXPORT_SYMBOL_GPL vmlinux 0xae4b2950 pci_pri_supported +EXPORT_SYMBOL_GPL vmlinux 0xae62abe9 __hwspin_unlock +EXPORT_SYMBOL_GPL vmlinux 0xae69b1c1 usermodehelper_read_unlock +EXPORT_SYMBOL_GPL vmlinux 0xae7c231d mpi_cmp +EXPORT_SYMBOL_GPL vmlinux 0xae91205a subsys_dev_iter_init +EXPORT_SYMBOL_GPL vmlinux 0xae951b59 devm_rtc_device_register +EXPORT_SYMBOL_GPL vmlinux 0xae9653bc usb_hcd_unmap_urb_setup_for_dma +EXPORT_SYMBOL_GPL vmlinux 0xaeb12315 find_iova +EXPORT_SYMBOL_GPL vmlinux 0xaeb1725e netlink_strict_get_check +EXPORT_SYMBOL_GPL vmlinux 0xaeb6f0be __cpuhp_state_add_instance +EXPORT_SYMBOL_GPL vmlinux 0xaebb2ac9 devfreq_event_remove_edev +EXPORT_SYMBOL_GPL vmlinux 0xaecb1776 update_time +EXPORT_SYMBOL_GPL vmlinux 0xaedaebbc acpi_bind_one +EXPORT_SYMBOL_GPL vmlinux 0xaef3001c device_destroy +EXPORT_SYMBOL_GPL vmlinux 0xaf076aec nd_fletcher64 +EXPORT_SYMBOL_GPL vmlinux 0xaf0b6ba7 blkg_rwstat_init +EXPORT_SYMBOL_GPL vmlinux 0xaf3b36a0 regulator_get_linear_step +EXPORT_SYMBOL_GPL vmlinux 0xaf4014ff usb_amd_quirk_pll_check +EXPORT_SYMBOL_GPL vmlinux 0xaf793668 __alloc_percpu_gfp +EXPORT_SYMBOL_GPL vmlinux 0xaf89d3c0 kill_pid_usb_asyncio +EXPORT_SYMBOL_GPL vmlinux 0xaf91f7e7 rt_mutex_lock_interruptible +EXPORT_SYMBOL_GPL vmlinux 0xaf9778bf __spi_register_driver +EXPORT_SYMBOL_GPL vmlinux 0xaf9bfe8d dev_pm_opp_unregister_set_opp_helper +EXPORT_SYMBOL_GPL vmlinux 0xaf9eadd6 put_pid_ns +EXPORT_SYMBOL_GPL vmlinux 0xafa43e25 create_signature +EXPORT_SYMBOL_GPL vmlinux 0xafac4278 fixup_user_fault +EXPORT_SYMBOL_GPL vmlinux 0xafc600d1 acpi_pci_find_root +EXPORT_SYMBOL_GPL vmlinux 0xafc80b85 sfp_register_socket +EXPORT_SYMBOL_GPL vmlinux 0xafd9c55b restore_online_page_callback +EXPORT_SYMBOL_GPL vmlinux 0xafddd545 ata_id_c_string +EXPORT_SYMBOL_GPL vmlinux 0xafec1063 tps65912_device_exit +EXPORT_SYMBOL_GPL vmlinux 0xb0025d16 dax_iomap_rw +EXPORT_SYMBOL_GPL vmlinux 0xb0075a1f task_active_pid_ns +EXPORT_SYMBOL_GPL vmlinux 0xb018eba5 crypto_grab_skcipher +EXPORT_SYMBOL_GPL vmlinux 0xb01ebe07 usb_hc_died +EXPORT_SYMBOL_GPL vmlinux 0xb023d2a6 uprobe_register_refctr +EXPORT_SYMBOL_GPL vmlinux 0xb0747ed2 rcu_cpu_stall_suppress +EXPORT_SYMBOL_GPL vmlinux 0xb077e70a clk_unprepare +EXPORT_SYMBOL_GPL vmlinux 0xb08f57cc regulator_enable_regmap +EXPORT_SYMBOL_GPL vmlinux 0xb0998410 switchdev_port_attr_set +EXPORT_SYMBOL_GPL vmlinux 0xb0b85f47 ring_buffer_iter_reset +EXPORT_SYMBOL_GPL vmlinux 0xb0d1656c gpio_free_array +EXPORT_SYMBOL_GPL vmlinux 0xb0dffaef ping_err +EXPORT_SYMBOL_GPL vmlinux 0xb0ed4e3d pm_clk_add_notifier +EXPORT_SYMBOL_GPL vmlinux 0xb0f2e813 component_add +EXPORT_SYMBOL_GPL vmlinux 0xb0fbb722 clk_fractional_divider_ops +EXPORT_SYMBOL_GPL vmlinux 0xb10d964d devlink_fmsg_pair_nest_end +EXPORT_SYMBOL_GPL vmlinux 0xb11b21ad hwmon_device_unregister +EXPORT_SYMBOL_GPL vmlinux 0xb11d9000 tty_dev_name_to_number +EXPORT_SYMBOL_GPL vmlinux 0xb12849a4 crypto_stats_compress +EXPORT_SYMBOL_GPL vmlinux 0xb13e2e47 to_nvdimm_bus +EXPORT_SYMBOL_GPL vmlinux 0xb1425b32 dm_table_add_target_callbacks +EXPORT_SYMBOL_GPL vmlinux 0xb14ae90e perf_event_enable +EXPORT_SYMBOL_GPL vmlinux 0xb1506044 crypto_ahash_digest +EXPORT_SYMBOL_GPL vmlinux 0xb157d6a4 sched_trace_rq_cpu +EXPORT_SYMBOL_GPL vmlinux 0xb1647fc2 devlink_info_version_running_put +EXPORT_SYMBOL_GPL vmlinux 0xb16486ff gov_update_cpu_data +EXPORT_SYMBOL_GPL vmlinux 0xb172ffac efivars_sysfs_init +EXPORT_SYMBOL_GPL vmlinux 0xb181ab98 tty_port_register_device_serdev +EXPORT_SYMBOL_GPL vmlinux 0xb18429eb suspend_device_irqs +EXPORT_SYMBOL_GPL vmlinux 0xb190ab20 devm_regmap_field_alloc +EXPORT_SYMBOL_GPL vmlinux 0xb19c5fe7 ima_file_check +EXPORT_SYMBOL_GPL vmlinux 0xb1a7139d dax_copy_from_iter +EXPORT_SYMBOL_GPL vmlinux 0xb1aff5a1 ip_tunnel_rcv +EXPORT_SYMBOL_GPL vmlinux 0xb1bed25d dpm_resume_start +EXPORT_SYMBOL_GPL vmlinux 0xb1c8e7e2 phy_pm_runtime_put_sync +EXPORT_SYMBOL_GPL vmlinux 0xb1dabc1e unregister_ftrace_export +EXPORT_SYMBOL_GPL vmlinux 0xb1e25684 __trace_bputs +EXPORT_SYMBOL_GPL vmlinux 0xb1ef0548 ftrace_set_filter +EXPORT_SYMBOL_GPL vmlinux 0xb1f221b2 simple_attr_write +EXPORT_SYMBOL_GPL vmlinux 0xb2035e52 ata_sff_tf_read +EXPORT_SYMBOL_GPL vmlinux 0xb2055350 crypto_stats_rng_seed +EXPORT_SYMBOL_GPL vmlinux 0xb20a92d6 device_property_read_u64_array +EXPORT_SYMBOL_GPL vmlinux 0xb2210d64 reset_control_deassert +EXPORT_SYMBOL_GPL vmlinux 0xb2405efc secure_tcp_seq +EXPORT_SYMBOL_GPL vmlinux 0xb26a1add elfcorehdr_addr +EXPORT_SYMBOL_GPL vmlinux 0xb27ddf7a md_stop +EXPORT_SYMBOL_GPL vmlinux 0xb27eb6e2 __udp_enqueue_schedule_skb +EXPORT_SYMBOL_GPL vmlinux 0xb27f13c5 pci_epc_destroy +EXPORT_SYMBOL_GPL vmlinux 0xb28014db wm8997_i2c_regmap +EXPORT_SYMBOL_GPL vmlinux 0xb28237b1 handle_fasteoi_nmi +EXPORT_SYMBOL_GPL vmlinux 0xb28e696a rio_request_inb_mbox +EXPORT_SYMBOL_GPL vmlinux 0xb29533ee zs_malloc +EXPORT_SYMBOL_GPL vmlinux 0xb2b4b084 driver_create_file +EXPORT_SYMBOL_GPL vmlinux 0xb2b8ebfd perf_event_create_kernel_counter +EXPORT_SYMBOL_GPL vmlinux 0xb2c1732e rcu_gp_set_torture_wait +EXPORT_SYMBOL_GPL vmlinux 0xb2c2d46f devlink_dpipe_table_register +EXPORT_SYMBOL_GPL vmlinux 0xb2de4cf2 clk_gate_ops +EXPORT_SYMBOL_GPL vmlinux 0xb2e764e8 suspend_valid_only_mem +EXPORT_SYMBOL_GPL vmlinux 0xb2f52c6e strp_unpause +EXPORT_SYMBOL_GPL vmlinux 0xb307c909 devlink_fmsg_u64_pair_put +EXPORT_SYMBOL_GPL vmlinux 0xb311b99a __hvc_resize +EXPORT_SYMBOL_GPL vmlinux 0xb31faa89 dev_pm_opp_attach_genpd +EXPORT_SYMBOL_GPL vmlinux 0xb3253ed9 hpet_rtc_timer_init +EXPORT_SYMBOL_GPL vmlinux 0xb3351c6c rhashtable_walk_next +EXPORT_SYMBOL_GPL vmlinux 0xb336f5ea dpm_for_each_dev +EXPORT_SYMBOL_GPL vmlinux 0xb353f283 usb_match_id +EXPORT_SYMBOL_GPL vmlinux 0xb35fb193 thermal_cooling_device_register +EXPORT_SYMBOL_GPL vmlinux 0xb3697565 cpuidle_enable_device +EXPORT_SYMBOL_GPL vmlinux 0xb3b964a7 ata_sff_data_xfer32 +EXPORT_SYMBOL_GPL vmlinux 0xb3c5ecd9 mm_account_pinned_pages +EXPORT_SYMBOL_GPL vmlinux 0xb3cfe0f9 fib6_check_nexthop +EXPORT_SYMBOL_GPL vmlinux 0xb3e9b2e4 sysfs_unbreak_active_protection +EXPORT_SYMBOL_GPL vmlinux 0xb407c1df percpu_ref_switch_to_atomic +EXPORT_SYMBOL_GPL vmlinux 0xb436c590 security_path_symlink +EXPORT_SYMBOL_GPL vmlinux 0xb43ef65c balloon_page_dequeue +EXPORT_SYMBOL_GPL vmlinux 0xb43f9365 ktime_get +EXPORT_SYMBOL_GPL vmlinux 0xb44e18ea audit_enabled +EXPORT_SYMBOL_GPL vmlinux 0xb45a2340 find_module +EXPORT_SYMBOL_GPL vmlinux 0xb47885d3 pci_scan_child_bus +EXPORT_SYMBOL_GPL vmlinux 0xb480d432 sysfs_remove_file_ns +EXPORT_SYMBOL_GPL vmlinux 0xb48a0619 dev_dax_probe +EXPORT_SYMBOL_GPL vmlinux 0xb48d4d84 firmware_request_platform +EXPORT_SYMBOL_GPL vmlinux 0xb48f0638 software_node_register +EXPORT_SYMBOL_GPL vmlinux 0xb499aad2 fwnode_graph_get_remote_port_parent +EXPORT_SYMBOL_GPL vmlinux 0xb49bf14b spi_mem_adjust_op_size +EXPORT_SYMBOL_GPL vmlinux 0xb4ac1654 edac_get_sysfs_subsys +EXPORT_SYMBOL_GPL vmlinux 0xb4b4db7f irq_create_direct_mapping +EXPORT_SYMBOL_GPL vmlinux 0xb4b97c90 pvclock_gtod_register_notifier +EXPORT_SYMBOL_GPL vmlinux 0xb4dbe228 ref_module +EXPORT_SYMBOL_GPL vmlinux 0xb4e76704 regulator_get_mode +EXPORT_SYMBOL_GPL vmlinux 0xb4ea7cf7 kgdb_connected +EXPORT_SYMBOL_GPL vmlinux 0xb4eda0da ring_buffer_event_length +EXPORT_SYMBOL_GPL vmlinux 0xb4ff6bb6 hrtimer_active +EXPORT_SYMBOL_GPL vmlinux 0xb501b2df nd_cmd_dimm_desc +EXPORT_SYMBOL_GPL vmlinux 0xb510c250 raw_v4_hashinfo +EXPORT_SYMBOL_GPL vmlinux 0xb51be6b1 ip_tunnel_change_mtu +EXPORT_SYMBOL_GPL vmlinux 0xb51fbd64 edac_op_state +EXPORT_SYMBOL_GPL vmlinux 0xb520eb79 btree_merge +EXPORT_SYMBOL_GPL vmlinux 0xb520f5c5 genphy_c45_read_mdix +EXPORT_SYMBOL_GPL vmlinux 0xb548de0d ata_sas_sync_probe +EXPORT_SYMBOL_GPL vmlinux 0xb5786cee dev_pm_qos_flags +EXPORT_SYMBOL_GPL vmlinux 0xb57a3c9c devm_irq_setup_generic_chip +EXPORT_SYMBOL_GPL vmlinux 0xb58a8dab pci_epf_create +EXPORT_SYMBOL_GPL vmlinux 0xb593f70a register_pernet_subsys +EXPORT_SYMBOL_GPL vmlinux 0xb598b272 blk_mq_freeze_queue +EXPORT_SYMBOL_GPL vmlinux 0xb5a8c226 acpi_gsi_to_irq +EXPORT_SYMBOL_GPL vmlinux 0xb5c86824 pid_vnr +EXPORT_SYMBOL_GPL vmlinux 0xb5d0c789 crypto_stats_ahash_final +EXPORT_SYMBOL_GPL vmlinux 0xb5dadb30 irq_create_of_mapping +EXPORT_SYMBOL_GPL vmlinux 0xb5dbf2cf dev_pm_opp_put +EXPORT_SYMBOL_GPL vmlinux 0xb5e88934 tcp_sendmsg_locked +EXPORT_SYMBOL_GPL vmlinux 0xb60049ca regulator_bulk_enable +EXPORT_SYMBOL_GPL vmlinux 0xb60c965c virtqueue_get_vring_size +EXPORT_SYMBOL_GPL vmlinux 0xb60dbb53 blk_stat_enable_accounting +EXPORT_SYMBOL_GPL vmlinux 0xb610e386 device_remove_file +EXPORT_SYMBOL_GPL vmlinux 0xb6200bfc memremap_pages +EXPORT_SYMBOL_GPL vmlinux 0xb6261484 register_die_notifier +EXPORT_SYMBOL_GPL vmlinux 0xb6787346 sfp_unregister_socket +EXPORT_SYMBOL_GPL vmlinux 0xb6888188 klp_shadow_get_or_alloc +EXPORT_SYMBOL_GPL vmlinux 0xb69efb55 led_trigger_read +EXPORT_SYMBOL_GPL vmlinux 0xb6b9b596 dev_pm_domain_attach_by_id +EXPORT_SYMBOL_GPL vmlinux 0xb6c5a6a8 switchdev_handle_port_attr_set +EXPORT_SYMBOL_GPL vmlinux 0xb6c5e614 acpi_processor_evaluate_cst +EXPORT_SYMBOL_GPL vmlinux 0xb6d1813c user_describe +EXPORT_SYMBOL_GPL vmlinux 0xb6e6d99d clk_disable +EXPORT_SYMBOL_GPL vmlinux 0xb702838b alloc_iova +EXPORT_SYMBOL_GPL vmlinux 0xb71ccb75 acpi_pci_check_ejectable +EXPORT_SYMBOL_GPL vmlinux 0xb732484a gpiochip_generic_request +EXPORT_SYMBOL_GPL vmlinux 0xb7329c06 clk_set_phase +EXPORT_SYMBOL_GPL vmlinux 0xb73713d7 nvmem_add_cell_lookups +EXPORT_SYMBOL_GPL vmlinux 0xb7459295 devfreq_event_get_event +EXPORT_SYMBOL_GPL vmlinux 0xb74adb04 ping_get_port +EXPORT_SYMBOL_GPL vmlinux 0xb75041d1 hv_stimer_legacy_init +EXPORT_SYMBOL_GPL vmlinux 0xb76a0163 dmaengine_desc_set_metadata_len +EXPORT_SYMBOL_GPL vmlinux 0xb76ecd1e nf_queue_entry_get_refs +EXPORT_SYMBOL_GPL vmlinux 0xb78853b6 usb_hcd_pci_pm_ops +EXPORT_SYMBOL_GPL vmlinux 0xb7892f51 xhci_resume +EXPORT_SYMBOL_GPL vmlinux 0xb78a3094 ata_host_init +EXPORT_SYMBOL_GPL vmlinux 0xb790d31a usb_enable_lpm +EXPORT_SYMBOL_GPL vmlinux 0xb7a387fc synchronize_rcu_tasks_rude +EXPORT_SYMBOL_GPL vmlinux 0xb7b7e81e dev_fill_metadata_dst +EXPORT_SYMBOL_GPL vmlinux 0xb7c69a63 unregister_vmap_purge_notifier +EXPORT_SYMBOL_GPL vmlinux 0xb7d48eca crypto_stats_kpp_generate_public_key +EXPORT_SYMBOL_GPL vmlinux 0xb7d7c12e hpet_set_alarm_time +EXPORT_SYMBOL_GPL vmlinux 0xb7ea705e nvmem_cell_read_u16 +EXPORT_SYMBOL_GPL vmlinux 0xb7ed32e9 crypto_type_has_alg +EXPORT_SYMBOL_GPL vmlinux 0xb7f73ef8 xas_init_marks +EXPORT_SYMBOL_GPL vmlinux 0xb7f990e9 rht_bucket_nested +EXPORT_SYMBOL_GPL vmlinux 0xb7ff424d get_governor_parent_kobj +EXPORT_SYMBOL_GPL vmlinux 0xb7ffbce5 dev_pm_opp_get_opp_table +EXPORT_SYMBOL_GPL vmlinux 0xb8027856 usb_enable_autosuspend +EXPORT_SYMBOL_GPL vmlinux 0xb805eeb0 kthread_data +EXPORT_SYMBOL_GPL vmlinux 0xb80e2ba9 to_software_node +EXPORT_SYMBOL_GPL vmlinux 0xb80e5ed1 dm_device_name +EXPORT_SYMBOL_GPL vmlinux 0xb8114bbd __page_file_index +EXPORT_SYMBOL_GPL vmlinux 0xb812de86 ata_bmdma_error_handler +EXPORT_SYMBOL_GPL vmlinux 0xb815f4dd fib_nl_delrule +EXPORT_SYMBOL_GPL vmlinux 0xb8212341 timecounter_cyc2time +EXPORT_SYMBOL_GPL vmlinux 0xb8273d0b __wake_up_sync +EXPORT_SYMBOL_GPL vmlinux 0xb82df74e skb_cow_data +EXPORT_SYMBOL_GPL vmlinux 0xb8392d38 inet_hash_connect +EXPORT_SYMBOL_GPL vmlinux 0xb84121dc pci_epc_start +EXPORT_SYMBOL_GPL vmlinux 0xb847585f is_hash_blacklisted +EXPORT_SYMBOL_GPL vmlinux 0xb854bd8e phy_basic_t1_features +EXPORT_SYMBOL_GPL vmlinux 0xb857ef11 devlink_dpipe_headers_unregister +EXPORT_SYMBOL_GPL vmlinux 0xb861c8f7 virtio_config_enable +EXPORT_SYMBOL_GPL vmlinux 0xb87f67e5 dev_pm_opp_get_max_clock_latency +EXPORT_SYMBOL_GPL vmlinux 0xb889f0e1 __acpi_node_get_property_reference +EXPORT_SYMBOL_GPL vmlinux 0xb88dbfce irq_set_irqchip_state +EXPORT_SYMBOL_GPL vmlinux 0xb89e69b1 jump_label_update_timeout +EXPORT_SYMBOL_GPL vmlinux 0xb89ef7d3 ata_link_next +EXPORT_SYMBOL_GPL vmlinux 0xb8b2b1f7 mce_register_decode_chain +EXPORT_SYMBOL_GPL vmlinux 0xb8cd3a7f nf_logger_put +EXPORT_SYMBOL_GPL vmlinux 0xb8d51846 setup_udp_tunnel_sock +EXPORT_SYMBOL_GPL vmlinux 0xb8f11603 idr_alloc +EXPORT_SYMBOL_GPL vmlinux 0xb8fca981 driver_for_each_device +EXPORT_SYMBOL_GPL vmlinux 0xb900642d device_set_of_node_from_dev +EXPORT_SYMBOL_GPL vmlinux 0xb90925e7 devlink_resource_occ_get_register +EXPORT_SYMBOL_GPL vmlinux 0xb912560d static_key_disable +EXPORT_SYMBOL_GPL vmlinux 0xb9274d05 devlink_trap_groups_unregister +EXPORT_SYMBOL_GPL vmlinux 0xb934aa65 cs47l24_spi_regmap +EXPORT_SYMBOL_GPL vmlinux 0xb9382386 ping_close +EXPORT_SYMBOL_GPL vmlinux 0xb95559bc housekeeping_any_cpu +EXPORT_SYMBOL_GPL vmlinux 0xb962e6f2 dma_wait_for_async_tx +EXPORT_SYMBOL_GPL vmlinux 0xb9681621 xdp_do_flush +EXPORT_SYMBOL_GPL vmlinux 0xb9a7947c devlink_port_attrs_pci_vf_set +EXPORT_SYMBOL_GPL vmlinux 0xb9b9df41 usb_amd_dev_put +EXPORT_SYMBOL_GPL vmlinux 0xb9c0b8a1 ata_sff_busy_sleep +EXPORT_SYMBOL_GPL vmlinux 0xb9c16f51 hv_max_vp_index +EXPORT_SYMBOL_GPL vmlinux 0xb9c425de register_syscore_ops +EXPORT_SYMBOL_GPL vmlinux 0xb9d025c9 llist_del_first +EXPORT_SYMBOL_GPL vmlinux 0xb9d18b78 usb_choose_configuration +EXPORT_SYMBOL_GPL vmlinux 0xb9d61869 splice_to_pipe +EXPORT_SYMBOL_GPL vmlinux 0xb9f89246 trace_seq_vprintf +EXPORT_SYMBOL_GPL vmlinux 0xba01ec83 hv_stimer_global_cleanup +EXPORT_SYMBOL_GPL vmlinux 0xba0bbb8d debugfs_create_atomic_t +EXPORT_SYMBOL_GPL vmlinux 0xba109bd5 thermal_cooling_device_unregister +EXPORT_SYMBOL_GPL vmlinux 0xba1c72f1 crypto_stats_kpp_set_secret +EXPORT_SYMBOL_GPL vmlinux 0xba220db7 __wake_up_sync_key +EXPORT_SYMBOL_GPL vmlinux 0xba24f082 validate_xmit_xfrm +EXPORT_SYMBOL_GPL vmlinux 0xba2b7f64 cpufreq_generic_get +EXPORT_SYMBOL_GPL vmlinux 0xba2bbf78 devlink_sb_unregister +EXPORT_SYMBOL_GPL vmlinux 0xba2bd125 phy_gbit_fibre_features +EXPORT_SYMBOL_GPL vmlinux 0xba374a4f set_secondary_fwnode +EXPORT_SYMBOL_GPL vmlinux 0xba377ab8 blk_revalidate_disk_zones +EXPORT_SYMBOL_GPL vmlinux 0xba3eb893 efivar_entry_remove +EXPORT_SYMBOL_GPL vmlinux 0xba4b5be9 virtqueue_get_buf_ctx +EXPORT_SYMBOL_GPL vmlinux 0xba527781 component_master_del +EXPORT_SYMBOL_GPL vmlinux 0xba7c7c0e driver_remove_file +EXPORT_SYMBOL_GPL vmlinux 0xba984d9b acpi_ec_remove_query_handler +EXPORT_SYMBOL_GPL vmlinux 0xbaa4be40 platform_add_devices +EXPORT_SYMBOL_GPL vmlinux 0xbaa79f01 ata_qc_get_active +EXPORT_SYMBOL_GPL vmlinux 0xbab2b60b thermal_remove_hwmon_sysfs +EXPORT_SYMBOL_GPL vmlinux 0xbac171f9 fsnotify_alloc_group +EXPORT_SYMBOL_GPL vmlinux 0xbac50268 of_icc_xlate_onecell +EXPORT_SYMBOL_GPL vmlinux 0xbaf6696f public_key_subtype +EXPORT_SYMBOL_GPL vmlinux 0xbaf6850c fsnotify_wait_marks_destroyed +EXPORT_SYMBOL_GPL vmlinux 0xbaf9d785 __tss_limit_invalid +EXPORT_SYMBOL_GPL vmlinux 0xbb0ab47b debug_locks +EXPORT_SYMBOL_GPL vmlinux 0xbb1c62d4 vfs_setxattr +EXPORT_SYMBOL_GPL vmlinux 0xbb210f07 led_trigger_blink_oneshot +EXPORT_SYMBOL_GPL vmlinux 0xbb425d21 phy_pm_runtime_get +EXPORT_SYMBOL_GPL vmlinux 0xbb446cb1 usb_deregister_device_driver +EXPORT_SYMBOL_GPL vmlinux 0xbb5a2cfb user_update +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 0xbb71dda9 blk_mq_quiesce_queue +EXPORT_SYMBOL_GPL vmlinux 0xbb7a942b tpm_chip_unregister +EXPORT_SYMBOL_GPL vmlinux 0xbb80456c scsi_dh_attach +EXPORT_SYMBOL_GPL vmlinux 0xbb848e19 ip6_local_out +EXPORT_SYMBOL_GPL vmlinux 0xbb892f55 wm5110_spi_regmap +EXPORT_SYMBOL_GPL vmlinux 0xbb8ac3f2 pci_epc_get +EXPORT_SYMBOL_GPL vmlinux 0xbb93eec5 ioasid_alloc +EXPORT_SYMBOL_GPL vmlinux 0xbb9919a2 percpu_free_rwsem +EXPORT_SYMBOL_GPL vmlinux 0xbb9bc645 sata_scr_read +EXPORT_SYMBOL_GPL vmlinux 0xbb9f477e kset_create_and_add +EXPORT_SYMBOL_GPL vmlinux 0xbbad75bb pci_hp_add_bridge +EXPORT_SYMBOL_GPL vmlinux 0xbbb98859 edid_info +EXPORT_SYMBOL_GPL vmlinux 0xbbbaba14 blk_mq_virtio_map_queues +EXPORT_SYMBOL_GPL vmlinux 0xbbc300ae dmaengine_unmap_put +EXPORT_SYMBOL_GPL vmlinux 0xbbe501e0 crypto_alloc_acomp +EXPORT_SYMBOL_GPL vmlinux 0xbbec8a65 fixed_phy_set_link_update +EXPORT_SYMBOL_GPL vmlinux 0xbbfce443 clean_acked_data_enable +EXPORT_SYMBOL_GPL vmlinux 0xbc04bd46 x86_platform +EXPORT_SYMBOL_GPL vmlinux 0xbc079166 platform_get_irq +EXPORT_SYMBOL_GPL vmlinux 0xbc2bc78b regulator_set_pull_down_regmap +EXPORT_SYMBOL_GPL vmlinux 0xbc3589f1 lwtunnel_fill_encap +EXPORT_SYMBOL_GPL vmlinux 0xbc60dc37 cpufreq_show_cpus +EXPORT_SYMBOL_GPL vmlinux 0xbc6ba72a vfs_removexattr +EXPORT_SYMBOL_GPL vmlinux 0xbc6bec66 free_percpu_irq +EXPORT_SYMBOL_GPL vmlinux 0xbc710d93 sysfs_add_link_to_group +EXPORT_SYMBOL_GPL vmlinux 0xbc7e74e7 clk_hw_get_parent +EXPORT_SYMBOL_GPL vmlinux 0xbc86880b gov_attr_set_get +EXPORT_SYMBOL_GPL vmlinux 0xbc9b8588 ehci_cf_port_reset_rwsem +EXPORT_SYMBOL_GPL vmlinux 0xbca68d5e devlink_register +EXPORT_SYMBOL_GPL vmlinux 0xbcb838a1 amd_flush_garts +EXPORT_SYMBOL_GPL vmlinux 0xbcbc2576 devlink_resources_unregister +EXPORT_SYMBOL_GPL vmlinux 0xbcc15e75 ktime_get_coarse_with_offset +EXPORT_SYMBOL_GPL vmlinux 0xbccbe817 cpuidle_get_cpu_driver +EXPORT_SYMBOL_GPL vmlinux 0xbccc120a cpufreq_cpu_put +EXPORT_SYMBOL_GPL vmlinux 0xbccca9c1 find_symbol +EXPORT_SYMBOL_GPL vmlinux 0xbccfd4d8 register_oldmem_pfn_is_ram +EXPORT_SYMBOL_GPL vmlinux 0xbcdb1070 unix_outq_len +EXPORT_SYMBOL_GPL vmlinux 0xbcdc42ca devlink_reload_disable +EXPORT_SYMBOL_GPL vmlinux 0xbcdd5b99 iommu_group_set_name +EXPORT_SYMBOL_GPL vmlinux 0xbce8cb80 iterate_mounts +EXPORT_SYMBOL_GPL vmlinux 0xbcf1f0e6 zs_create_pool +EXPORT_SYMBOL_GPL vmlinux 0xbd031e08 pci_reset_function +EXPORT_SYMBOL_GPL vmlinux 0xbd051f4e rcu_read_unlock_trace_special +EXPORT_SYMBOL_GPL vmlinux 0xbd336d00 nvme_disable_ctrl +EXPORT_SYMBOL_GPL vmlinux 0xbd3fe1e3 disable_hardirq +EXPORT_SYMBOL_GPL vmlinux 0xbd4f3e4c badblocks_show +EXPORT_SYMBOL_GPL vmlinux 0xbd52bbf6 devm_regulator_get_exclusive +EXPORT_SYMBOL_GPL vmlinux 0xbd654943 device_bind_driver +EXPORT_SYMBOL_GPL vmlinux 0xbd796c60 virtio_device_restore +EXPORT_SYMBOL_GPL vmlinux 0xbd7d4828 gpiod_set_debounce +EXPORT_SYMBOL_GPL vmlinux 0xbd7d8323 led_trigger_blink +EXPORT_SYMBOL_GPL vmlinux 0xbd95540d init_user_ns +EXPORT_SYMBOL_GPL vmlinux 0xbd99ec13 icc_set_tag +EXPORT_SYMBOL_GPL vmlinux 0xbda31363 devm_devfreq_event_remove_edev +EXPORT_SYMBOL_GPL vmlinux 0xbda85d1e attribute_container_unregister +EXPORT_SYMBOL_GPL vmlinux 0xbdb4a294 dev_pm_domain_attach_by_name +EXPORT_SYMBOL_GPL vmlinux 0xbdc34d72 genphy_c45_an_disable_aneg +EXPORT_SYMBOL_GPL vmlinux 0xbdc859af pm_runtime_allow +EXPORT_SYMBOL_GPL vmlinux 0xbdd325b0 da9052_enable_irq +EXPORT_SYMBOL_GPL vmlinux 0xbe13a32d usb_interrupt_msg +EXPORT_SYMBOL_GPL vmlinux 0xbe37774c regcache_mark_dirty +EXPORT_SYMBOL_GPL vmlinux 0xbe421718 tpmm_chip_alloc +EXPORT_SYMBOL_GPL vmlinux 0xbe5c888b crypto_chain +EXPORT_SYMBOL_GPL vmlinux 0xbe687e88 wake_up_all_idle_cpus +EXPORT_SYMBOL_GPL vmlinux 0xbe971546 alloc_vm_area +EXPORT_SYMBOL_GPL vmlinux 0xbe9a83d5 dw_pcie_write +EXPORT_SYMBOL_GPL vmlinux 0xbea5ff1e static_key_initialized +EXPORT_SYMBOL_GPL vmlinux 0xbec66c3a __apei_exec_run +EXPORT_SYMBOL_GPL vmlinux 0xbed361a3 register_asymmetric_key_parser +EXPORT_SYMBOL_GPL vmlinux 0xbee86e8f rio_dev_put +EXPORT_SYMBOL_GPL vmlinux 0xbef2135d dev_pm_opp_get_level +EXPORT_SYMBOL_GPL vmlinux 0xbef55386 __pm_runtime_use_autosuspend +EXPORT_SYMBOL_GPL vmlinux 0xbf041102 register_vt_notifier +EXPORT_SYMBOL_GPL vmlinux 0xbf184535 lwtstate_free +EXPORT_SYMBOL_GPL vmlinux 0xbf23a2cb devm_regmap_add_irq_chip +EXPORT_SYMBOL_GPL vmlinux 0xbf5c709a skb_mpls_dec_ttl +EXPORT_SYMBOL_GPL vmlinux 0xbf6abbe7 housekeeping_enabled +EXPORT_SYMBOL_GPL vmlinux 0xbf79a971 crypto_register_ahash +EXPORT_SYMBOL_GPL vmlinux 0xbf7d6194 ata_common_sdev_attrs +EXPORT_SYMBOL_GPL vmlinux 0xbf8cb67e fs_dax_get_by_bdev +EXPORT_SYMBOL_GPL vmlinux 0xbf91f025 pm_generic_poweroff_late +EXPORT_SYMBOL_GPL vmlinux 0xbfb1be70 hv_setup_vmbus_irq +EXPORT_SYMBOL_GPL vmlinux 0xbfbc5434 pciserial_resume_ports +EXPORT_SYMBOL_GPL vmlinux 0xbfc14e0f iommu_domain_get_attr +EXPORT_SYMBOL_GPL vmlinux 0xbfe5616d tick_broadcast_oneshot_control +EXPORT_SYMBOL_GPL vmlinux 0xbfed2cd9 __wait_rcu_gp +EXPORT_SYMBOL_GPL vmlinux 0xbffb3425 __mnt_is_readonly +EXPORT_SYMBOL_GPL vmlinux 0xbffbea9a modify_user_hw_breakpoint +EXPORT_SYMBOL_GPL vmlinux 0xbffde8ec compat_alloc_user_space +EXPORT_SYMBOL_GPL vmlinux 0xc0025150 scsi_nl_sock +EXPORT_SYMBOL_GPL vmlinux 0xc0227dea dev_pm_opp_put_opp_table +EXPORT_SYMBOL_GPL vmlinux 0xc0330274 sock_prot_inuse_get +EXPORT_SYMBOL_GPL vmlinux 0xc05ff5cb ipv4_redirect +EXPORT_SYMBOL_GPL vmlinux 0xc071e240 debugfs_create_size_t +EXPORT_SYMBOL_GPL vmlinux 0xc0725102 dev_attr_em_message_type +EXPORT_SYMBOL_GPL vmlinux 0xc07414b8 dev_attr_unload_heads +EXPORT_SYMBOL_GPL vmlinux 0xc07c0a93 spi_delay_exec +EXPORT_SYMBOL_GPL vmlinux 0xc084a6a1 virtqueue_detach_unused_buf +EXPORT_SYMBOL_GPL vmlinux 0xc08bbce6 irq_get_percpu_devid_partition +EXPORT_SYMBOL_GPL vmlinux 0xc09b063c ata_bmdma_irq_clear +EXPORT_SYMBOL_GPL vmlinux 0xc0a96e14 rcu_gp_is_expedited +EXPORT_SYMBOL_GPL vmlinux 0xc0a9d549 posix_clock_register +EXPORT_SYMBOL_GPL vmlinux 0xc0b39152 ata_port_freeze +EXPORT_SYMBOL_GPL vmlinux 0xc0bc43fa uart_handle_dcd_change +EXPORT_SYMBOL_GPL vmlinux 0xc0dbef62 unregister_virtio_device +EXPORT_SYMBOL_GPL vmlinux 0xc0dcb59e edac_layer_name +EXPORT_SYMBOL_GPL vmlinux 0xc0f0458a ip_tunnel_unneed_metadata +EXPORT_SYMBOL_GPL vmlinux 0xc1086e0c sysrq_toggle_support +EXPORT_SYMBOL_GPL vmlinux 0xc10fddb8 name_to_dev_t +EXPORT_SYMBOL_GPL vmlinux 0xc138ec38 rio_set_port_lockout +EXPORT_SYMBOL_GPL vmlinux 0xc139426f tpm_transmit_cmd +EXPORT_SYMBOL_GPL vmlinux 0xc13bb97c irq_create_mapping_affinity +EXPORT_SYMBOL_GPL vmlinux 0xc141f4a5 unwind_get_return_address +EXPORT_SYMBOL_GPL vmlinux 0xc14a2dd8 regmap_read +EXPORT_SYMBOL_GPL vmlinux 0xc14ec61b regmap_register_patch +EXPORT_SYMBOL_GPL vmlinux 0xc152f16b device_property_present +EXPORT_SYMBOL_GPL vmlinux 0xc15bab32 phy_driver_is_genphy_10g +EXPORT_SYMBOL_GPL vmlinux 0xc1611431 perf_aux_output_skip +EXPORT_SYMBOL_GPL vmlinux 0xc16b3eb3 skb_mpls_push +EXPORT_SYMBOL_GPL vmlinux 0xc17515d7 usb_hcds_loaded +EXPORT_SYMBOL_GPL vmlinux 0xc17e9946 usb_show_dynids +EXPORT_SYMBOL_GPL vmlinux 0xc18b001f regmap_bulk_read +EXPORT_SYMBOL_GPL vmlinux 0xc18cdf36 amd_df_indirect_read +EXPORT_SYMBOL_GPL vmlinux 0xc1ae511e rio_unmap_inb_region +EXPORT_SYMBOL_GPL vmlinux 0xc1b93fe1 pci_enable_pcie_error_reporting +EXPORT_SYMBOL_GPL vmlinux 0xc1d989c5 vfio_external_check_extension +EXPORT_SYMBOL_GPL vmlinux 0xc1e9441a platform_get_resource_byname +EXPORT_SYMBOL_GPL vmlinux 0xc1fa8b31 iommu_group_remove_device +EXPORT_SYMBOL_GPL vmlinux 0xc21b2d61 devm_regulator_put +EXPORT_SYMBOL_GPL vmlinux 0xc22a3091 vm_unmap_aliases +EXPORT_SYMBOL_GPL vmlinux 0xc24b6a8d blk_ksm_register +EXPORT_SYMBOL_GPL vmlinux 0xc254d87c security_inode_permission +EXPORT_SYMBOL_GPL vmlinux 0xc25b8971 hv_remove_crash_handler +EXPORT_SYMBOL_GPL vmlinux 0xc2603da5 rdev_get_id +EXPORT_SYMBOL_GPL vmlinux 0xc2692173 wakeup_sources_read_lock +EXPORT_SYMBOL_GPL vmlinux 0xc26b22ca led_trigger_register +EXPORT_SYMBOL_GPL vmlinux 0xc280fb46 kdb_register +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 0xc2a814db tcp_memory_pressure +EXPORT_SYMBOL_GPL vmlinux 0xc2b6480e security_kernel_post_read_file +EXPORT_SYMBOL_GPL vmlinux 0xc2b702a9 sk_msg_free_nocharge +EXPORT_SYMBOL_GPL vmlinux 0xc2c1c427 perf_event_cgrp_subsys_on_dfl_key +EXPORT_SYMBOL_GPL vmlinux 0xc2d4419a xhci_suspend +EXPORT_SYMBOL_GPL vmlinux 0xc2de27ca hest_disable +EXPORT_SYMBOL_GPL vmlinux 0xc2eae34a __srcu_notifier_call_chain +EXPORT_SYMBOL_GPL vmlinux 0xc30bdf64 regmap_add_irq_chip +EXPORT_SYMBOL_GPL vmlinux 0xc319b413 sysfs_create_mount_point +EXPORT_SYMBOL_GPL vmlinux 0xc333c380 nd_blk_region_provider_data +EXPORT_SYMBOL_GPL vmlinux 0xc334c4fd regmap_test_bits +EXPORT_SYMBOL_GPL vmlinux 0xc3380146 blk_poll +EXPORT_SYMBOL_GPL vmlinux 0xc33c7148 efivar_entry_add +EXPORT_SYMBOL_GPL vmlinux 0xc341ae6d zs_map_object +EXPORT_SYMBOL_GPL vmlinux 0xc342dc16 virtqueue_get_avail_addr +EXPORT_SYMBOL_GPL vmlinux 0xc3494fe8 gpiochip_is_requested +EXPORT_SYMBOL_GPL vmlinux 0xc35b00ac bsg_remove_queue +EXPORT_SYMBOL_GPL vmlinux 0xc37694b2 dev_forward_skb +EXPORT_SYMBOL_GPL vmlinux 0xc37ea51b rio_inb_pwrite_handler +EXPORT_SYMBOL_GPL vmlinux 0xc3805cd1 fs_ftype_to_dtype +EXPORT_SYMBOL_GPL vmlinux 0xc38419bc blk_trace_setup +EXPORT_SYMBOL_GPL vmlinux 0xc3a58e6a irq_chip_request_resources_parent +EXPORT_SYMBOL_GPL vmlinux 0xc3c394ae rio_route_get_entry +EXPORT_SYMBOL_GPL vmlinux 0xc3c4c6cc hash_algo_name +EXPORT_SYMBOL_GPL vmlinux 0xc3c73dbc bd_unlink_disk_holder +EXPORT_SYMBOL_GPL vmlinux 0xc3de65ff ring_buffer_bytes_cpu +EXPORT_SYMBOL_GPL vmlinux 0xc3e8f2d0 regulator_get_init_drvdata +EXPORT_SYMBOL_GPL vmlinux 0xc3ea5305 iommu_default_passthrough +EXPORT_SYMBOL_GPL vmlinux 0xc4012032 acpi_dma_controller_free +EXPORT_SYMBOL_GPL vmlinux 0xc40f4e07 __tracepoint_neigh_update_done +EXPORT_SYMBOL_GPL vmlinux 0xc41c1c84 regmap_parse_val +EXPORT_SYMBOL_GPL vmlinux 0xc426c51f klp_shadow_free_all +EXPORT_SYMBOL_GPL vmlinux 0xc428068d sata_deb_timing_long +EXPORT_SYMBOL_GPL vmlinux 0xc42964cd acpi_dev_get_property +EXPORT_SYMBOL_GPL vmlinux 0xc42b4324 pci_msi_mask_irq +EXPORT_SYMBOL_GPL vmlinux 0xc4325111 blk_queue_set_zoned +EXPORT_SYMBOL_GPL vmlinux 0xc4379beb dmi_kobj +EXPORT_SYMBOL_GPL vmlinux 0xc43c65ee smpboot_unregister_percpu_thread +EXPORT_SYMBOL_GPL vmlinux 0xc43e92b9 trace_seq_bprintf +EXPORT_SYMBOL_GPL vmlinux 0xc45d0d13 injectm +EXPORT_SYMBOL_GPL vmlinux 0xc46111b5 regmap_noinc_write +EXPORT_SYMBOL_GPL vmlinux 0xc46324f6 dynevent_create +EXPORT_SYMBOL_GPL vmlinux 0xc47616f4 __hwspin_lock_timeout +EXPORT_SYMBOL_GPL vmlinux 0xc48b7ccf ata_mode_string +EXPORT_SYMBOL_GPL vmlinux 0xc4913442 vfio_group_put_external_user +EXPORT_SYMBOL_GPL vmlinux 0xc494cfe9 kobject_move +EXPORT_SYMBOL_GPL vmlinux 0xc49d49d3 pstore_unregister +EXPORT_SYMBOL_GPL vmlinux 0xc4a31146 rdma_cgrp_subsys_on_dfl_key +EXPORT_SYMBOL_GPL vmlinux 0xc4a72936 trusted_tpm_send +EXPORT_SYMBOL_GPL vmlinux 0xc4ac12e2 apply_to_page_range +EXPORT_SYMBOL_GPL vmlinux 0xc4ac8eef __tracepoint_rpm_idle +EXPORT_SYMBOL_GPL vmlinux 0xc4ba9fc9 dev_pm_qos_remove_request +EXPORT_SYMBOL_GPL vmlinux 0xc4c6a4ca dev_pm_opp_detach_genpd +EXPORT_SYMBOL_GPL vmlinux 0xc4c84aa9 simple_attr_open +EXPORT_SYMBOL_GPL vmlinux 0xc4d05c49 fat_add_entries +EXPORT_SYMBOL_GPL vmlinux 0xc4da1ea8 skcipher_walk_done +EXPORT_SYMBOL_GPL vmlinux 0xc4f0da12 ktime_get_with_offset +EXPORT_SYMBOL_GPL vmlinux 0xc4f7e504 of_pm_clk_add_clk +EXPORT_SYMBOL_GPL vmlinux 0xc50437f1 iommu_domain_set_attr +EXPORT_SYMBOL_GPL vmlinux 0xc50e0bf9 rio_mport_class +EXPORT_SYMBOL_GPL vmlinux 0xc512626a __supported_pte_mask +EXPORT_SYMBOL_GPL vmlinux 0xc5156bf3 fanout_mutex +EXPORT_SYMBOL_GPL vmlinux 0xc52c8581 device_change_owner +EXPORT_SYMBOL_GPL vmlinux 0xc52d5880 platform_unregister_drivers +EXPORT_SYMBOL_GPL vmlinux 0xc52db4ad wm831x_reg_lock +EXPORT_SYMBOL_GPL vmlinux 0xc52f0388 acpi_dev_resource_memory +EXPORT_SYMBOL_GPL vmlinux 0xc53903e8 switchdev_port_obj_add +EXPORT_SYMBOL_GPL vmlinux 0xc53cd616 __dax_driver_register +EXPORT_SYMBOL_GPL vmlinux 0xc54456a3 devm_phy_optional_get +EXPORT_SYMBOL_GPL vmlinux 0xc55ff962 phy_basic_t1_features_array +EXPORT_SYMBOL_GPL vmlinux 0xc56027e4 crypto_default_rng +EXPORT_SYMBOL_GPL vmlinux 0xc5604800 clk_set_rate_exclusive +EXPORT_SYMBOL_GPL vmlinux 0xc569d8ce __clk_get_name +EXPORT_SYMBOL_GPL vmlinux 0xc575c737 debug_locks_off +EXPORT_SYMBOL_GPL vmlinux 0xc5777fca linear_range_get_selector_low_array +EXPORT_SYMBOL_GPL vmlinux 0xc57cd895 irq_domain_add_simple +EXPORT_SYMBOL_GPL vmlinux 0xc58a3ee6 icc_node_destroy +EXPORT_SYMBOL_GPL vmlinux 0xc594d840 acpi_dev_resource_interrupt +EXPORT_SYMBOL_GPL vmlinux 0xc5996c8c pkcs7_get_content_data +EXPORT_SYMBOL_GPL vmlinux 0xc5a5c678 uart_parse_earlycon +EXPORT_SYMBOL_GPL vmlinux 0xc5ae917c nvme_stop_queues +EXPORT_SYMBOL_GPL vmlinux 0xc5afcb7d ata_cable_sata +EXPORT_SYMBOL_GPL vmlinux 0xc5b29650 ata_sff_dev_select +EXPORT_SYMBOL_GPL vmlinux 0xc5d789df alarm_expires_remaining +EXPORT_SYMBOL_GPL vmlinux 0xc5d88cc1 __devm_regmap_init_mmio_clk +EXPORT_SYMBOL_GPL vmlinux 0xc5e0ee82 __fscrypt_prepare_lookup +EXPORT_SYMBOL_GPL vmlinux 0xc6164fca pci_epc_unmap_addr +EXPORT_SYMBOL_GPL vmlinux 0xc617f82c unregister_oom_notifier +EXPORT_SYMBOL_GPL vmlinux 0xc62a41e3 skb_to_sgvec_nomark +EXPORT_SYMBOL_GPL vmlinux 0xc63dfe3b pci_cfg_access_unlock +EXPORT_SYMBOL_GPL vmlinux 0xc6419290 bpf_prog_select_runtime +EXPORT_SYMBOL_GPL vmlinux 0xc6484b36 iomap_bmap +EXPORT_SYMBOL_GPL vmlinux 0xc654d3f4 lwtunnel_valid_encap_type +EXPORT_SYMBOL_GPL vmlinux 0xc66a42f7 regmap_check_range_table +EXPORT_SYMBOL_GPL vmlinux 0xc66b77b1 iommu_group_set_iommudata +EXPORT_SYMBOL_GPL vmlinux 0xc6779093 ring_buffer_record_enable +EXPORT_SYMBOL_GPL vmlinux 0xc6779738 rio_release_inb_pwrite +EXPORT_SYMBOL_GPL vmlinux 0xc67ec6aa tcp_get_info +EXPORT_SYMBOL_GPL vmlinux 0xc683da81 set_memory_decrypted +EXPORT_SYMBOL_GPL vmlinux 0xc692b10c event_triggers_call +EXPORT_SYMBOL_GPL vmlinux 0xc6976a77 regulator_set_voltage_time +EXPORT_SYMBOL_GPL vmlinux 0xc697b0f7 nvmem_device_read +EXPORT_SYMBOL_GPL vmlinux 0xc69b7ee5 zs_destroy_pool +EXPORT_SYMBOL_GPL vmlinux 0xc69fcd77 xfrm_audit_state_icvfail +EXPORT_SYMBOL_GPL vmlinux 0xc6a2f94c sysfs_remove_file_self +EXPORT_SYMBOL_GPL vmlinux 0xc6a4a872 __clk_is_enabled +EXPORT_SYMBOL_GPL vmlinux 0xc6a89341 wm5110_patch +EXPORT_SYMBOL_GPL vmlinux 0xc6b10427 ex_handler_fprestore +EXPORT_SYMBOL_GPL vmlinux 0xc6b505c8 anon_inode_getfd +EXPORT_SYMBOL_GPL vmlinux 0xc6ced8dc usb_create_shared_hcd +EXPORT_SYMBOL_GPL vmlinux 0xc6eec8f5 clk_divider_ops +EXPORT_SYMBOL_GPL vmlinux 0xc7061ef3 iova_cache_put +EXPORT_SYMBOL_GPL vmlinux 0xc708e663 nvmem_cell_read_u32 +EXPORT_SYMBOL_GPL vmlinux 0xc70a8c26 devlink_dpipe_table_unregister +EXPORT_SYMBOL_GPL vmlinux 0xc70de8d0 platform_device_del +EXPORT_SYMBOL_GPL vmlinux 0xc71e64a9 snmp_get_cpu_field +EXPORT_SYMBOL_GPL vmlinux 0xc71fdbb3 acpi_dev_remove_driver_gpios +EXPORT_SYMBOL_GPL vmlinux 0xc72849ef ata_sff_thaw +EXPORT_SYMBOL_GPL vmlinux 0xc7330224 virtqueue_notify +EXPORT_SYMBOL_GPL vmlinux 0xc73ce49d pci_disable_rom +EXPORT_SYMBOL_GPL vmlinux 0xc7453254 devfreq_event_disable_edev +EXPORT_SYMBOL_GPL vmlinux 0xc749cc58 ata_port_desc +EXPORT_SYMBOL_GPL vmlinux 0xc751b7a3 device_for_each_child +EXPORT_SYMBOL_GPL vmlinux 0xc758536e iomap_migrate_page +EXPORT_SYMBOL_GPL vmlinux 0xc784f1e3 get_user_pages_fast_only +EXPORT_SYMBOL_GPL vmlinux 0xc7856e74 __wake_up_locked_sync_key +EXPORT_SYMBOL_GPL vmlinux 0xc7890d32 pci_sriov_set_totalvfs +EXPORT_SYMBOL_GPL vmlinux 0xc79120cf ata_sff_exec_command +EXPORT_SYMBOL_GPL vmlinux 0xc792aede devlink_port_type_eth_set +EXPORT_SYMBOL_GPL vmlinux 0xc7a1840e llist_add_batch +EXPORT_SYMBOL_GPL vmlinux 0xc7d4cc12 scsi_check_sense +EXPORT_SYMBOL_GPL vmlinux 0xc7d8d36d ata_host_suspend +EXPORT_SYMBOL_GPL vmlinux 0xc7e1217e devm_thermal_add_hwmon_sysfs +EXPORT_SYMBOL_GPL vmlinux 0xc7e638c1 ethnl_cable_test_finished +EXPORT_SYMBOL_GPL vmlinux 0xc7ee92d7 scsi_target_unblock +EXPORT_SYMBOL_GPL vmlinux 0xc7fa4aa9 kobj_ns_drop +EXPORT_SYMBOL_GPL vmlinux 0xc7fdc488 cn_add_callback +EXPORT_SYMBOL_GPL vmlinux 0xc80f0e46 vfio_group_get_external_user_from_dev +EXPORT_SYMBOL_GPL vmlinux 0xc82c721f klist_remove +EXPORT_SYMBOL_GPL vmlinux 0xc839c1ce trace_seq_to_user +EXPORT_SYMBOL_GPL vmlinux 0xc8438127 pci_num_vf +EXPORT_SYMBOL_GPL vmlinux 0xc851679b bpf_prog_create_from_user +EXPORT_SYMBOL_GPL vmlinux 0xc8594d3d reset_control_acquire +EXPORT_SYMBOL_GPL vmlinux 0xc85b066d enable_kprobe +EXPORT_SYMBOL_GPL vmlinux 0xc85e3020 nvmem_device_find +EXPORT_SYMBOL_GPL vmlinux 0xc8784a2b inet6_lookup +EXPORT_SYMBOL_GPL vmlinux 0xc87a4bea regulator_set_voltage_rdev +EXPORT_SYMBOL_GPL vmlinux 0xc87e487a sched_clock_idle_sleep_event +EXPORT_SYMBOL_GPL vmlinux 0xc87e71b9 fat_time_unix2fat +EXPORT_SYMBOL_GPL vmlinux 0xc87fb025 xas_get_mark +EXPORT_SYMBOL_GPL vmlinux 0xc881b1f7 __pci_hp_register +EXPORT_SYMBOL_GPL vmlinux 0xc8944355 power_supply_am_i_supplied +EXPORT_SYMBOL_GPL vmlinux 0xc8972eec devm_regulator_unregister_supply_alias +EXPORT_SYMBOL_GPL vmlinux 0xc8bbd9fb usb_disable_lpm +EXPORT_SYMBOL_GPL vmlinux 0xc8c50376 ata_host_put +EXPORT_SYMBOL_GPL vmlinux 0xc8d2218f intel_msic_reg_read +EXPORT_SYMBOL_GPL vmlinux 0xc8d595cc bpf_map_inc +EXPORT_SYMBOL_GPL vmlinux 0xc8ddd5b5 kstrdup_quotable +EXPORT_SYMBOL_GPL vmlinux 0xc8df612e dma_buf_unpin +EXPORT_SYMBOL_GPL vmlinux 0xc8e46b0e devlink_dpipe_headers_register +EXPORT_SYMBOL_GPL vmlinux 0xc8f162c9 ftrace_set_filter_ip +EXPORT_SYMBOL_GPL vmlinux 0xc91277a1 kgdb_schedule_breakpoint +EXPORT_SYMBOL_GPL vmlinux 0xc91501b2 sfp_bus_add_upstream +EXPORT_SYMBOL_GPL vmlinux 0xc9175636 ata_acpi_gtm_xfermask +EXPORT_SYMBOL_GPL vmlinux 0xc91a496d of_pm_clk_add_clks +EXPORT_SYMBOL_GPL vmlinux 0xc9241ed0 virtqueue_poll +EXPORT_SYMBOL_GPL vmlinux 0xc9345c0f digsig_verify +EXPORT_SYMBOL_GPL vmlinux 0xc93aaadb pinctrl_enable +EXPORT_SYMBOL_GPL vmlinux 0xc93ee1e7 usb_phy_roothub_init +EXPORT_SYMBOL_GPL vmlinux 0xc944ba88 dma_buf_mmap +EXPORT_SYMBOL_GPL vmlinux 0xc9561772 fb_destroy_modelist +EXPORT_SYMBOL_GPL vmlinux 0xc95c3662 nd_blk_region_set_provider_data +EXPORT_SYMBOL_GPL vmlinux 0xc9641b48 visitor32 +EXPORT_SYMBOL_GPL vmlinux 0xc96dac9c fib_nh_common_init +EXPORT_SYMBOL_GPL vmlinux 0xc97a00c9 alarm_try_to_cancel +EXPORT_SYMBOL_GPL vmlinux 0xc97c7833 raw_abort +EXPORT_SYMBOL_GPL vmlinux 0xc97f476f anon_transport_class_register +EXPORT_SYMBOL_GPL vmlinux 0xc9827693 __bpf_call_base +EXPORT_SYMBOL_GPL vmlinux 0xc9a4b416 copy_to_user_nofault +EXPORT_SYMBOL_GPL vmlinux 0xc9ac12dd regulator_set_voltage +EXPORT_SYMBOL_GPL vmlinux 0xc9b190d6 wait_on_page_writeback +EXPORT_SYMBOL_GPL vmlinux 0xc9b48bf0 pm_schedule_suspend +EXPORT_SYMBOL_GPL vmlinux 0xc9b9321b call_switchdev_notifiers +EXPORT_SYMBOL_GPL vmlinux 0xc9b9c149 regulator_suspend_disable +EXPORT_SYMBOL_GPL vmlinux 0xc9c3f176 hpet_register_irq_handler +EXPORT_SYMBOL_GPL vmlinux 0xc9d52c13 of_devfreq_cooling_register +EXPORT_SYMBOL_GPL vmlinux 0xc9d9e6f4 serial8250_rpm_put +EXPORT_SYMBOL_GPL vmlinux 0xc9de5fbe hvc_instantiate +EXPORT_SYMBOL_GPL vmlinux 0xc9ec4e21 free_percpu +EXPORT_SYMBOL_GPL vmlinux 0xca1259f3 serial8250_em485_stop_tx +EXPORT_SYMBOL_GPL vmlinux 0xca1a775c rtc_class_close +EXPORT_SYMBOL_GPL vmlinux 0xca2060fa gpiod_is_active_low +EXPORT_SYMBOL_GPL vmlinux 0xca295e27 tcp_unregister_ulp +EXPORT_SYMBOL_GPL vmlinux 0xca467318 hibernation_set_ops +EXPORT_SYMBOL_GPL vmlinux 0xca57a035 devm_free_percpu +EXPORT_SYMBOL_GPL vmlinux 0xca7010e7 crypto_alloc_aead +EXPORT_SYMBOL_GPL vmlinux 0xca720fb9 fixed_phy_register +EXPORT_SYMBOL_GPL vmlinux 0xca74a8b8 ata_port_abort +EXPORT_SYMBOL_GPL vmlinux 0xca7d8764 kthread_freezable_should_stop +EXPORT_SYMBOL_GPL vmlinux 0xca9a1d5e ring_buffer_free +EXPORT_SYMBOL_GPL vmlinux 0xcaa68533 cpu_has_xfeatures +EXPORT_SYMBOL_GPL vmlinux 0xcaaf8241 bpf_trace_run8 +EXPORT_SYMBOL_GPL vmlinux 0xcabe04de cpuidle_resume_and_unlock +EXPORT_SYMBOL_GPL vmlinux 0xcacd88a0 __tracepoint_br_fdb_update +EXPORT_SYMBOL_GPL vmlinux 0xcada8c13 rio_dma_prep_xfer +EXPORT_SYMBOL_GPL vmlinux 0xcae46dd2 access_process_vm +EXPORT_SYMBOL_GPL vmlinux 0xcaf6fdee noop_set_page_dirty +EXPORT_SYMBOL_GPL vmlinux 0xcaf9529c pci_user_write_config_dword +EXPORT_SYMBOL_GPL vmlinux 0xcafd00cb arizona_dev_init +EXPORT_SYMBOL_GPL vmlinux 0xcb068c40 tty_ldisc_ref +EXPORT_SYMBOL_GPL vmlinux 0xcb20837b debugfs_create_file_unsafe +EXPORT_SYMBOL_GPL vmlinux 0xcb259088 edac_device_handle_ue_count +EXPORT_SYMBOL_GPL vmlinux 0xcb2bfe2b nvmem_register_notifier +EXPORT_SYMBOL_GPL vmlinux 0xcb49c11e dev_pm_opp_free_cpufreq_table +EXPORT_SYMBOL_GPL vmlinux 0xcb5a258e rtm_getroute_parse_ip_proto +EXPORT_SYMBOL_GPL vmlinux 0xcb5ec63f pci_user_write_config_byte +EXPORT_SYMBOL_GPL vmlinux 0xcb721be2 efivar_entry_delete +EXPORT_SYMBOL_GPL vmlinux 0xcb78354d __kthread_init_worker +EXPORT_SYMBOL_GPL vmlinux 0xcb7e6c2b md_start +EXPORT_SYMBOL_GPL vmlinux 0xcb8328f1 power_supply_get_property +EXPORT_SYMBOL_GPL vmlinux 0xcb8a461c hv_stimer_legacy_cleanup +EXPORT_SYMBOL_GPL vmlinux 0xcb970751 stop_machine +EXPORT_SYMBOL_GPL vmlinux 0xcba336de wm831x_regmap_config +EXPORT_SYMBOL_GPL vmlinux 0xcba76382 __mnt_drop_write +EXPORT_SYMBOL_GPL vmlinux 0xcbac2d4d nvme_remove_namespaces +EXPORT_SYMBOL_GPL vmlinux 0xcbb3f487 acpi_device_fix_up_power +EXPORT_SYMBOL_GPL vmlinux 0xcbb71a1d __put_net +EXPORT_SYMBOL_GPL vmlinux 0xcbbf222e fwnode_property_read_u8_array +EXPORT_SYMBOL_GPL vmlinux 0xcbc1fb22 nd_tbl +EXPORT_SYMBOL_GPL vmlinux 0xcbc5fc46 nvdimm_has_cache +EXPORT_SYMBOL_GPL vmlinux 0xcbd59c34 ethnl_cable_test_pulse +EXPORT_SYMBOL_GPL vmlinux 0xcbe00f4f dev_pm_opp_get_sharing_cpus +EXPORT_SYMBOL_GPL vmlinux 0xcbe56bc2 zs_get_total_pages +EXPORT_SYMBOL_GPL vmlinux 0xcbfb8203 pci_epc_stop +EXPORT_SYMBOL_GPL vmlinux 0xcbfec966 kobject_get_path +EXPORT_SYMBOL_GPL vmlinux 0xcc0b00a1 ncsi_start_dev +EXPORT_SYMBOL_GPL vmlinux 0xcc1f0bc0 nf_hook_entries_insert_raw +EXPORT_SYMBOL_GPL vmlinux 0xcc291c56 pinctrl_pm_select_sleep_state +EXPORT_SYMBOL_GPL vmlinux 0xcc2dbfd8 irq_domain_check_msi_remap +EXPORT_SYMBOL_GPL vmlinux 0xcc312197 clk_mux_ops +EXPORT_SYMBOL_GPL vmlinux 0xcc339fda efivar_entry_size +EXPORT_SYMBOL_GPL vmlinux 0xcc39c03e nvmem_unregister +EXPORT_SYMBOL_GPL vmlinux 0xcc3c7522 acpi_kobj +EXPORT_SYMBOL_GPL vmlinux 0xcc426c2a __sock_recv_wifi_status +EXPORT_SYMBOL_GPL vmlinux 0xcc5104d0 copy_mc_to_kernel +EXPORT_SYMBOL_GPL vmlinux 0xcc648894 hwspin_lock_get_id +EXPORT_SYMBOL_GPL vmlinux 0xcc7a56d1 device_get_match_data +EXPORT_SYMBOL_GPL vmlinux 0xcc85a263 edac_mc_alloc +EXPORT_SYMBOL_GPL vmlinux 0xcc9268fc hwpoison_filter_enable +EXPORT_SYMBOL_GPL vmlinux 0xcc935375 walk_iomem_res_desc +EXPORT_SYMBOL_GPL vmlinux 0xcc93d9d0 ata_sff_data_xfer +EXPORT_SYMBOL_GPL vmlinux 0xcc9d1f9a iommu_fwspec_add_ids +EXPORT_SYMBOL_GPL vmlinux 0xcc9e8c2b perf_msr_probe +EXPORT_SYMBOL_GPL vmlinux 0xccae663c ata_sas_port_destroy +EXPORT_SYMBOL_GPL vmlinux 0xccb9a4a5 crypto_unregister_aead +EXPORT_SYMBOL_GPL vmlinux 0xccc22386 set_capacity_revalidate_and_notify +EXPORT_SYMBOL_GPL vmlinux 0xcccfb2fa sata_deb_timing_hotplug +EXPORT_SYMBOL_GPL vmlinux 0xccd4e2b0 regulator_set_voltage_sel_pickable_regmap +EXPORT_SYMBOL_GPL vmlinux 0xccd86806 ata_id_string +EXPORT_SYMBOL_GPL vmlinux 0xccdfdd14 dev_pm_enable_wake_irq +EXPORT_SYMBOL_GPL vmlinux 0xccea4e34 perf_get_x86_pmu_capability +EXPORT_SYMBOL_GPL vmlinux 0xccf4d562 irq_chip_mask_parent +EXPORT_SYMBOL_GPL vmlinux 0xccf52bc9 sfp_upstream_start +EXPORT_SYMBOL_GPL vmlinux 0xccf8e009 sdev_evt_send_simple +EXPORT_SYMBOL_GPL vmlinux 0xcd074d8a debugfs_remove +EXPORT_SYMBOL_GPL vmlinux 0xcd09e248 crypto_shoot_alg +EXPORT_SYMBOL_GPL vmlinux 0xcd0d82ba ping_queue_rcv_skb +EXPORT_SYMBOL_GPL vmlinux 0xcd11e582 hv_pkt_iter_close +EXPORT_SYMBOL_GPL vmlinux 0xcd1be3b0 dev_queue_xmit_nit +EXPORT_SYMBOL_GPL vmlinux 0xcd24e146 hash_digest_size +EXPORT_SYMBOL_GPL vmlinux 0xcd2d1287 fsverity_verify_bio +EXPORT_SYMBOL_GPL vmlinux 0xcd3cef8e __blkdev_driver_ioctl +EXPORT_SYMBOL_GPL vmlinux 0xcd3e5c7c acpi_release_memory +EXPORT_SYMBOL_GPL vmlinux 0xcd48eb6e devfreq_cooling_register +EXPORT_SYMBOL_GPL vmlinux 0xcd5af27e get_dcookie +EXPORT_SYMBOL_GPL vmlinux 0xcd5f7a4f rio_request_outb_dbell +EXPORT_SYMBOL_GPL vmlinux 0xcd6f2dc9 nf_log_buf_add +EXPORT_SYMBOL_GPL vmlinux 0xcd778531 iptunnel_metadata_reply +EXPORT_SYMBOL_GPL vmlinux 0xcd81a945 switch_fpu_return +EXPORT_SYMBOL_GPL vmlinux 0xcd883015 inet6_lookup_listener +EXPORT_SYMBOL_GPL vmlinux 0xcd91b127 system_highpri_wq +EXPORT_SYMBOL_GPL vmlinux 0xcd974f00 rcu_all_qs +EXPORT_SYMBOL_GPL vmlinux 0xcd9cd2ff wakeme_after_rcu +EXPORT_SYMBOL_GPL vmlinux 0xcd9e6bc2 dev_pm_disable_wake_irq +EXPORT_SYMBOL_GPL vmlinux 0xcda20451 blkdev_report_zones +EXPORT_SYMBOL_GPL vmlinux 0xcdb3739a crypto_unregister_templates +EXPORT_SYMBOL_GPL vmlinux 0xcdb6adcc ras_userspace_consumers +EXPORT_SYMBOL_GPL vmlinux 0xcdca3691 nr_irqs +EXPORT_SYMBOL_GPL vmlinux 0xcdd6290d devlink_region_create +EXPORT_SYMBOL_GPL vmlinux 0xcddd72e0 thermal_zone_unbind_cooling_device +EXPORT_SYMBOL_GPL vmlinux 0xcde19038 devm_kmalloc +EXPORT_SYMBOL_GPL vmlinux 0xcde26600 cppc_get_transition_latency +EXPORT_SYMBOL_GPL vmlinux 0xcde63d33 vring_transport_features +EXPORT_SYMBOL_GPL vmlinux 0xce0e2129 dw_pcie_host_init +EXPORT_SYMBOL_GPL vmlinux 0xce55295f sk_msg_clone +EXPORT_SYMBOL_GPL vmlinux 0xce5a8724 pci_load_and_free_saved_state +EXPORT_SYMBOL_GPL vmlinux 0xce6bceda dma_buf_fd +EXPORT_SYMBOL_GPL vmlinux 0xce6c21b8 regulator_is_enabled +EXPORT_SYMBOL_GPL vmlinux 0xce6db656 rcu_is_watching +EXPORT_SYMBOL_GPL vmlinux 0xce847ed0 sata_link_debounce +EXPORT_SYMBOL_GPL vmlinux 0xce90aa0e gpiod_get_direction +EXPORT_SYMBOL_GPL vmlinux 0xceb1f126 mpi_read_raw_data +EXPORT_SYMBOL_GPL vmlinux 0xceb66bec sched_clock_cpu +EXPORT_SYMBOL_GPL vmlinux 0xceb7f7f4 devm_hwspin_lock_free +EXPORT_SYMBOL_GPL vmlinux 0xcebac914 ata_sas_scsi_ioctl +EXPORT_SYMBOL_GPL vmlinux 0xcee1641c kgdb_unregister_nmi_console +EXPORT_SYMBOL_GPL vmlinux 0xceed8318 ibft_addr +EXPORT_SYMBOL_GPL vmlinux 0xcf0646d5 bpf_offload_dev_match +EXPORT_SYMBOL_GPL vmlinux 0xcf0b787c debugfs_create_file_size +EXPORT_SYMBOL_GPL vmlinux 0xcf22e1e6 __udp6_lib_lookup +EXPORT_SYMBOL_GPL vmlinux 0xcf4d9d44 ip6_input +EXPORT_SYMBOL_GPL vmlinux 0xcf54ea93 async_unregister_domain +EXPORT_SYMBOL_GPL vmlinux 0xcf6594d1 ata_std_postreset +EXPORT_SYMBOL_GPL vmlinux 0xcf684eda fsstack_copy_inode_size +EXPORT_SYMBOL_GPL vmlinux 0xcf6a1975 fwnode_property_present +EXPORT_SYMBOL_GPL vmlinux 0xcf70dd88 ip6_dst_lookup_flow +EXPORT_SYMBOL_GPL vmlinux 0xcf7ea267 perf_aux_output_begin +EXPORT_SYMBOL_GPL vmlinux 0xcf982db7 dev_pm_opp_put_regulators +EXPORT_SYMBOL_GPL vmlinux 0xcfa0e0de pci_msi_set_desc +EXPORT_SYMBOL_GPL vmlinux 0xcfa2b964 clk_hw_round_rate +EXPORT_SYMBOL_GPL vmlinux 0xcfc15f4b rht_bucket_nested_insert +EXPORT_SYMBOL_GPL vmlinux 0xcfc5108a devlink_fmsg_u8_pair_put +EXPORT_SYMBOL_GPL vmlinux 0xcfc5885a gpiod_put +EXPORT_SYMBOL_GPL vmlinux 0xcfc7b4e4 rcu_barrier_tasks_trace +EXPORT_SYMBOL_GPL vmlinux 0xcfc8ee93 tty_port_register_device_attr_serdev +EXPORT_SYMBOL_GPL vmlinux 0xcfd30d71 acpi_os_map_memory +EXPORT_SYMBOL_GPL vmlinux 0xcfddb723 regmap_get_raw_read_max +EXPORT_SYMBOL_GPL vmlinux 0xcff69f29 xdp_do_redirect +EXPORT_SYMBOL_GPL vmlinux 0xd002a938 blkcg_root_css +EXPORT_SYMBOL_GPL vmlinux 0xd0295d3c iommu_dev_feature_enabled +EXPORT_SYMBOL_GPL vmlinux 0xd03eaf4c schedule_hrtimeout_range +EXPORT_SYMBOL_GPL vmlinux 0xd042659b scsi_unregister_device_handler +EXPORT_SYMBOL_GPL vmlinux 0xd052b5d2 regcache_cache_bypass +EXPORT_SYMBOL_GPL vmlinux 0xd06524ba raw_notifier_chain_unregister +EXPORT_SYMBOL_GPL vmlinux 0xd067d3c5 system_freezable_power_efficient_wq +EXPORT_SYMBOL_GPL vmlinux 0xd06c7ab4 cgroup_get_from_fd +EXPORT_SYMBOL_GPL vmlinux 0xd0843b12 devlink_dpipe_entry_ctx_prepare +EXPORT_SYMBOL_GPL vmlinux 0xd09911a6 acpi_dev_get_irq_type +EXPORT_SYMBOL_GPL vmlinux 0xd099b325 ipv6_stub +EXPORT_SYMBOL_GPL vmlinux 0xd0a265ce pinctrl_utils_add_map_configs +EXPORT_SYMBOL_GPL vmlinux 0xd0a64e4d isa_unregister_driver +EXPORT_SYMBOL_GPL vmlinux 0xd0bb1d00 crypto_alg_extsize +EXPORT_SYMBOL_GPL vmlinux 0xd0bc5c83 __blk_mq_debugfs_rq_show +EXPORT_SYMBOL_GPL vmlinux 0xd0be1c2f fsverity_ioctl_measure +EXPORT_SYMBOL_GPL vmlinux 0xd0c05159 emergency_restart +EXPORT_SYMBOL_GPL vmlinux 0xd0c119d0 loop_backing_file +EXPORT_SYMBOL_GPL vmlinux 0xd0c3431c pci_pr3_present +EXPORT_SYMBOL_GPL vmlinux 0xd0cd7ada input_ff_create +EXPORT_SYMBOL_GPL vmlinux 0xd0d062c2 fwnode_property_get_reference_args +EXPORT_SYMBOL_GPL vmlinux 0xd0d156e9 __rht_bucket_nested +EXPORT_SYMBOL_GPL vmlinux 0xd0d3f0a4 gen_pool_avail +EXPORT_SYMBOL_GPL vmlinux 0xd0dabfa1 ata_sff_port_intr +EXPORT_SYMBOL_GPL vmlinux 0xd0db0f12 run_dax +EXPORT_SYMBOL_GPL vmlinux 0xd0f8e0b2 request_firmware_direct +EXPORT_SYMBOL_GPL vmlinux 0xd12cae2a devres_find +EXPORT_SYMBOL_GPL vmlinux 0xd13ac83e tty_buffer_space_avail +EXPORT_SYMBOL_GPL vmlinux 0xd152f8e3 disk_has_partitions +EXPORT_SYMBOL_GPL vmlinux 0xd1564d63 shake_page +EXPORT_SYMBOL_GPL vmlinux 0xd159586c net_prio_cgrp_subsys_enabled_key +EXPORT_SYMBOL_GPL vmlinux 0xd15af8ac usb_autopm_put_interface +EXPORT_SYMBOL_GPL vmlinux 0xd1600e10 acpi_dev_gpio_irq_get +EXPORT_SYMBOL_GPL vmlinux 0xd18d51b9 fuse_sync_release +EXPORT_SYMBOL_GPL vmlinux 0xd19f2c78 __devm_intel_scu_ipc_register +EXPORT_SYMBOL_GPL vmlinux 0xd1a3237e ata_pci_bmdma_clear_simplex +EXPORT_SYMBOL_GPL vmlinux 0xd1cac7bf unregister_ftrace_direct +EXPORT_SYMBOL_GPL vmlinux 0xd1cbc23c add_timer_on +EXPORT_SYMBOL_GPL vmlinux 0xd1cdc0e1 kern_mount +EXPORT_SYMBOL_GPL vmlinux 0xd1cf0553 cpufreq_freq_attr_scaling_boost_freqs +EXPORT_SYMBOL_GPL vmlinux 0xd1e335ab posix_acl_default_xattr_handler +EXPORT_SYMBOL_GPL vmlinux 0xd1f2eee2 nf_logger_find_get +EXPORT_SYMBOL_GPL vmlinux 0xd1fbc889 unregister_kprobe +EXPORT_SYMBOL_GPL vmlinux 0xd1fe5c30 serial8250_rpm_put_tx +EXPORT_SYMBOL_GPL vmlinux 0xd2079527 dw_pcie_ep_init +EXPORT_SYMBOL_GPL vmlinux 0xd20bf6ba dcookie_unregister +EXPORT_SYMBOL_GPL vmlinux 0xd212b454 cs47l24_patch +EXPORT_SYMBOL_GPL vmlinux 0xd217e9e6 trace_set_clr_event +EXPORT_SYMBOL_GPL vmlinux 0xd2190d67 iommu_cache_invalidate +EXPORT_SYMBOL_GPL vmlinux 0xd21b61bd async_schedule_node_domain +EXPORT_SYMBOL_GPL vmlinux 0xd21d40a5 iommu_fwspec_init +EXPORT_SYMBOL_GPL vmlinux 0xd23b872d ata_pci_sff_init_one +EXPORT_SYMBOL_GPL vmlinux 0xd24e9e8c klist_init +EXPORT_SYMBOL_GPL vmlinux 0xd260af0d ring_buffer_write +EXPORT_SYMBOL_GPL vmlinux 0xd273b1b1 __round_jiffies_up_relative +EXPORT_SYMBOL_GPL vmlinux 0xd27892bc nf_queue +EXPORT_SYMBOL_GPL vmlinux 0xd280a123 acpi_processor_get_performance_info +EXPORT_SYMBOL_GPL vmlinux 0xd2a06965 virtio_config_changed +EXPORT_SYMBOL_GPL vmlinux 0xd2b10a05 ata_timing_find_mode +EXPORT_SYMBOL_GPL vmlinux 0xd2b6727a device_release_driver +EXPORT_SYMBOL_GPL vmlinux 0xd2c8ae77 tracepoint_probe_unregister +EXPORT_SYMBOL_GPL vmlinux 0xd2dd4812 phy_basic_features +EXPORT_SYMBOL_GPL vmlinux 0xd31a2ac5 ring_buffer_oldest_event_ts +EXPORT_SYMBOL_GPL vmlinux 0xd31d22e6 pci_ioremap_wc_bar +EXPORT_SYMBOL_GPL vmlinux 0xd3217770 regulator_register_notifier +EXPORT_SYMBOL_GPL vmlinux 0xd32694be sbitmap_prepare_to_wait +EXPORT_SYMBOL_GPL vmlinux 0xd33c5b38 direct_make_request +EXPORT_SYMBOL_GPL vmlinux 0xd346ce3e devm_kasprintf +EXPORT_SYMBOL_GPL vmlinux 0xd34ef43d rio_mport_get_feature +EXPORT_SYMBOL_GPL vmlinux 0xd35232cf attribute_container_classdev_to_container +EXPORT_SYMBOL_GPL vmlinux 0xd35c01a3 clk_gate_restore_context +EXPORT_SYMBOL_GPL vmlinux 0xd360a7fd regulator_get_current_limit +EXPORT_SYMBOL_GPL vmlinux 0xd36760ef __usb_get_extra_descriptor +EXPORT_SYMBOL_GPL vmlinux 0xd3752c27 atomic_notifier_call_chain +EXPORT_SYMBOL_GPL vmlinux 0xd37a99e7 xfrm_audit_state_notfound_simple +EXPORT_SYMBOL_GPL vmlinux 0xd3806250 spi_replace_transfers +EXPORT_SYMBOL_GPL vmlinux 0xd395ab78 iomap_dio_rw +EXPORT_SYMBOL_GPL vmlinux 0xd39e9848 put_itimerspec64 +EXPORT_SYMBOL_GPL vmlinux 0xd3bfa753 usb_bus_idr_lock +EXPORT_SYMBOL_GPL vmlinux 0xd3cfb376 bpf_trace_run7 +EXPORT_SYMBOL_GPL vmlinux 0xd3d5ece9 regulator_set_voltage_sel_regmap +EXPORT_SYMBOL_GPL vmlinux 0xd3e6218a clk_register_fixed_factor +EXPORT_SYMBOL_GPL vmlinux 0xd3e68560 irq_create_fwspec_mapping +EXPORT_SYMBOL_GPL vmlinux 0xd3f8f3f4 page_poisoning_enabled +EXPORT_SYMBOL_GPL vmlinux 0xd4034828 system_freezable_wq +EXPORT_SYMBOL_GPL vmlinux 0xd418cbb1 platform_device_register +EXPORT_SYMBOL_GPL vmlinux 0xd426dbc4 erst_get_record_count +EXPORT_SYMBOL_GPL vmlinux 0xd436f2d7 scsi_host_busy_iter +EXPORT_SYMBOL_GPL vmlinux 0xd4376556 register_kretprobes +EXPORT_SYMBOL_GPL vmlinux 0xd44a5eac kgdb_register_nmi_console +EXPORT_SYMBOL_GPL vmlinux 0xd45434ee admin_timeout +EXPORT_SYMBOL_GPL vmlinux 0xd46af5ef cppc_get_perf_ctrs +EXPORT_SYMBOL_GPL vmlinux 0xd46beafc iommu_group_get +EXPORT_SYMBOL_GPL vmlinux 0xd46db7a6 scsi_autopm_put_device +EXPORT_SYMBOL_GPL vmlinux 0xd46efa9c hvc_alloc +EXPORT_SYMBOL_GPL vmlinux 0xd47e4970 phy_speed_down +EXPORT_SYMBOL_GPL vmlinux 0xd482d8d4 spi_controller_suspend +EXPORT_SYMBOL_GPL vmlinux 0xd4a5997b sk_psock_drop +EXPORT_SYMBOL_GPL vmlinux 0xd4b6157e devlink_health_reporter_recovery_done +EXPORT_SYMBOL_GPL vmlinux 0xd4ba612f devres_add +EXPORT_SYMBOL_GPL vmlinux 0xd4c14632 system_unbound_wq +EXPORT_SYMBOL_GPL vmlinux 0xd4cbdc66 pci_generic_config_read +EXPORT_SYMBOL_GPL vmlinux 0xd4d14b97 pin_user_pages_fast +EXPORT_SYMBOL_GPL vmlinux 0xd4d2d677 rio_mport_write_config_16 +EXPORT_SYMBOL_GPL vmlinux 0xd4e6d7e0 linear_range_get_value +EXPORT_SYMBOL_GPL vmlinux 0xd4f1849b sk_msg_zerocopy_from_iter +EXPORT_SYMBOL_GPL vmlinux 0xd501e89f dev_pm_opp_find_freq_ceil +EXPORT_SYMBOL_GPL vmlinux 0xd50ab241 serial8250_rx_dma_flush +EXPORT_SYMBOL_GPL vmlinux 0xd50d1cee ata_bmdma_setup +EXPORT_SYMBOL_GPL vmlinux 0xd51ace8f fwnode_graph_get_next_endpoint +EXPORT_SYMBOL_GPL vmlinux 0xd5301291 fat_detach +EXPORT_SYMBOL_GPL vmlinux 0xd5301b2c linear_range_get_max_value +EXPORT_SYMBOL_GPL vmlinux 0xd53c67b3 unregister_net_sysctl_table +EXPORT_SYMBOL_GPL vmlinux 0xd53f4a94 ipv4_sk_redirect +EXPORT_SYMBOL_GPL vmlinux 0xd541c3c4 icc_enable +EXPORT_SYMBOL_GPL vmlinux 0xd5470bd5 iommu_unmap +EXPORT_SYMBOL_GPL vmlinux 0xd54d0fbc ata_sff_pause +EXPORT_SYMBOL_GPL vmlinux 0xd55ad93b iommu_group_get_iommudata +EXPORT_SYMBOL_GPL vmlinux 0xd55c976e devm_clk_bulk_get_optional +EXPORT_SYMBOL_GPL vmlinux 0xd57611c0 acpi_register_gsi +EXPORT_SYMBOL_GPL vmlinux 0xd578c739 pm_runtime_enable +EXPORT_SYMBOL_GPL vmlinux 0xd57fbd31 hwrng_unregister +EXPORT_SYMBOL_GPL vmlinux 0xd581bfca pci_store_saved_state +EXPORT_SYMBOL_GPL vmlinux 0xd5822793 blk_set_pm_only +EXPORT_SYMBOL_GPL vmlinux 0xd58bbbcb nvme_delete_wq +EXPORT_SYMBOL_GPL vmlinux 0xd58fd1e3 regulator_is_supported_voltage +EXPORT_SYMBOL_GPL vmlinux 0xd59a1587 linkmode_resolve_pause +EXPORT_SYMBOL_GPL vmlinux 0xd5ad357f __tracepoint_mc_event +EXPORT_SYMBOL_GPL vmlinux 0xd5b57ab3 __tracepoint_rpm_resume +EXPORT_SYMBOL_GPL vmlinux 0xd5c2c790 vmbus_disconnect_ring +EXPORT_SYMBOL_GPL vmlinux 0xd5c8311f devm_gpio_request_one +EXPORT_SYMBOL_GPL vmlinux 0xd5d77b68 gpiod_to_irq +EXPORT_SYMBOL_GPL vmlinux 0xd5e2be31 security_path_chmod +EXPORT_SYMBOL_GPL vmlinux 0xd5e2e772 locks_release_private +EXPORT_SYMBOL_GPL vmlinux 0xd5e3286e dev_pm_domain_set +EXPORT_SYMBOL_GPL vmlinux 0xd5eff878 __vfs_setxattr_locked +EXPORT_SYMBOL_GPL vmlinux 0xd5f3bb7b set_memory_encrypted +EXPORT_SYMBOL_GPL vmlinux 0xd5f94474 kernfs_put +EXPORT_SYMBOL_GPL vmlinux 0xd5fa6fb6 phy_put +EXPORT_SYMBOL_GPL vmlinux 0xd5ffdbfa devm_request_pci_bus_resources +EXPORT_SYMBOL_GPL vmlinux 0xd6004338 crypto_alloc_shash +EXPORT_SYMBOL_GPL vmlinux 0xd62437bc tpm_send +EXPORT_SYMBOL_GPL vmlinux 0xd6252e01 unregister_pernet_device +EXPORT_SYMBOL_GPL vmlinux 0xd62b5d37 devm_nvmem_device_get +EXPORT_SYMBOL_GPL vmlinux 0xd6472c67 pci_bus_max_busnr +EXPORT_SYMBOL_GPL vmlinux 0xd64eb7fe gpiochip_free_own_desc +EXPORT_SYMBOL_GPL vmlinux 0xd64ed259 __memcat_p +EXPORT_SYMBOL_GPL vmlinux 0xd65572c5 virtqueue_get_used_addr +EXPORT_SYMBOL_GPL vmlinux 0xd6622557 genphy_c45_read_pma +EXPORT_SYMBOL_GPL vmlinux 0xd66d0f75 ata_sff_hsm_move +EXPORT_SYMBOL_GPL vmlinux 0xd66ed15a __devm_of_phy_provider_register +EXPORT_SYMBOL_GPL vmlinux 0xd67364f7 eventfd_ctx_fdget +EXPORT_SYMBOL_GPL vmlinux 0xd683bb2c vxlan_fdb_find_uc +EXPORT_SYMBOL_GPL vmlinux 0xd6a084d5 ahash_register_instance +EXPORT_SYMBOL_GPL vmlinux 0xd6a5573f __mmdrop +EXPORT_SYMBOL_GPL vmlinux 0xd6a77d43 addrconf_prefix_rcv_add_addr +EXPORT_SYMBOL_GPL vmlinux 0xd6b1f0a2 inet6_csk_xmit +EXPORT_SYMBOL_GPL vmlinux 0xd6b39920 rio_mport_read_config_16 +EXPORT_SYMBOL_GPL vmlinux 0xd6c31232 arizona_free_irq +EXPORT_SYMBOL_GPL vmlinux 0xd6c79203 crypto_unregister_shash +EXPORT_SYMBOL_GPL vmlinux 0xd6d0a239 xdp_rxq_info_unused +EXPORT_SYMBOL_GPL vmlinux 0xd6df6f44 __devm_pci_epc_create +EXPORT_SYMBOL_GPL vmlinux 0xd6e0d5bc vmbus_sendpacket_pagebuffer +EXPORT_SYMBOL_GPL vmlinux 0xd6ef61d4 pm_wakeup_dev_event +EXPORT_SYMBOL_GPL vmlinux 0xd6f6b843 pci_epf_bind +EXPORT_SYMBOL_GPL vmlinux 0xd6f80c28 sk_free_unlock_clone +EXPORT_SYMBOL_GPL vmlinux 0xd6feefa5 agp_num_entries +EXPORT_SYMBOL_GPL vmlinux 0xd72edd97 pinctrl_lookup_state +EXPORT_SYMBOL_GPL vmlinux 0xd730d4a4 crypto_enqueue_request_head +EXPORT_SYMBOL_GPL vmlinux 0xd7399d2a efivar_entry_iter_end +EXPORT_SYMBOL_GPL vmlinux 0xd74d2d9f ata_pci_device_suspend +EXPORT_SYMBOL_GPL vmlinux 0xd74e2d38 virtqueue_get_buf +EXPORT_SYMBOL_GPL vmlinux 0xd75b20aa rsa_parse_priv_key +EXPORT_SYMBOL_GPL vmlinux 0xd768e985 regulator_has_full_constraints +EXPORT_SYMBOL_GPL vmlinux 0xd7737c29 devlink_param_driverinit_value_set +EXPORT_SYMBOL_GPL vmlinux 0xd774957d mpi_write_to_sgl +EXPORT_SYMBOL_GPL vmlinux 0xd775191a metadata_dst_alloc +EXPORT_SYMBOL_GPL vmlinux 0xd7901fe5 ata_bmdma_status +EXPORT_SYMBOL_GPL vmlinux 0xd79f6845 device_pm_wait_for_dev +EXPORT_SYMBOL_GPL vmlinux 0xd7a3173d devm_get_free_pages +EXPORT_SYMBOL_GPL vmlinux 0xd7a35d5d sk_psock_init +EXPORT_SYMBOL_GPL vmlinux 0xd7a42881 sata_lpm_ignore_phy_events +EXPORT_SYMBOL_GPL vmlinux 0xd7b79bf9 __usb_create_hcd +EXPORT_SYMBOL_GPL vmlinux 0xd7b87288 netdev_rx_handler_register +EXPORT_SYMBOL_GPL vmlinux 0xd7c39fff free_iova +EXPORT_SYMBOL_GPL vmlinux 0xd7cc4401 fat_sync_inode +EXPORT_SYMBOL_GPL vmlinux 0xd7cea889 edac_mod_work +EXPORT_SYMBOL_GPL vmlinux 0xd7d1877e l3mdev_master_upper_ifindex_by_index_rcu +EXPORT_SYMBOL_GPL vmlinux 0xd7d98cec iomap_seek_data +EXPORT_SYMBOL_GPL vmlinux 0xd7db0b78 scsi_schedule_eh +EXPORT_SYMBOL_GPL vmlinux 0xd7f15a24 mctrl_gpio_free +EXPORT_SYMBOL_GPL vmlinux 0xd7f87938 virtqueue_kick +EXPORT_SYMBOL_GPL vmlinux 0xd8100339 phy_select_page +EXPORT_SYMBOL_GPL vmlinux 0xd8186efe icc_provider_del +EXPORT_SYMBOL_GPL vmlinux 0xd834046b spi_mem_dirmap_destroy +EXPORT_SYMBOL_GPL vmlinux 0xd84d35bd dax_read_lock +EXPORT_SYMBOL_GPL vmlinux 0xd86a9bfc dw_pcie_ep_init_notify +EXPORT_SYMBOL_GPL vmlinux 0xd879d635 bpf_trace_run4 +EXPORT_SYMBOL_GPL vmlinux 0xd87fc0a0 usb_amd_prefetch_quirk +EXPORT_SYMBOL_GPL vmlinux 0xd8a227de lwtunnel_build_state +EXPORT_SYMBOL_GPL vmlinux 0xd8abbd41 irq_get_irq_data +EXPORT_SYMBOL_GPL vmlinux 0xd8bb419e badblocks_check +EXPORT_SYMBOL_GPL vmlinux 0xd8c6628a pm_genpd_add_device +EXPORT_SYMBOL_GPL vmlinux 0xd8d5930a pci_max_pasids +EXPORT_SYMBOL_GPL vmlinux 0xd8d68ab1 dmi_memdev_type +EXPORT_SYMBOL_GPL vmlinux 0xd8db8dbd platform_device_register_full +EXPORT_SYMBOL_GPL vmlinux 0xd8f309c2 __ip_tunnel_change_mtu +EXPORT_SYMBOL_GPL vmlinux 0xd8fbb14d net_cls_cgrp_subsys_on_dfl_key +EXPORT_SYMBOL_GPL vmlinux 0xd902f7a1 ata_sas_slave_configure +EXPORT_SYMBOL_GPL vmlinux 0xd90d1ce7 crypto_alg_mod_lookup +EXPORT_SYMBOL_GPL vmlinux 0xd919806a amd_cache_northbridges +EXPORT_SYMBOL_GPL vmlinux 0xd91d8e9a crypto_register_alg +EXPORT_SYMBOL_GPL vmlinux 0xd920b4ee devm_regulator_register_supply_alias +EXPORT_SYMBOL_GPL vmlinux 0xd92f0791 leds_list_lock +EXPORT_SYMBOL_GPL vmlinux 0xd9340049 dev_pm_opp_get_max_transition_latency +EXPORT_SYMBOL_GPL vmlinux 0xd93a2849 inet_csk_route_req +EXPORT_SYMBOL_GPL vmlinux 0xd93a5cb1 efivar_variable_is_removable +EXPORT_SYMBOL_GPL vmlinux 0xd941dc3a dw_pcie_link_set_max_speed +EXPORT_SYMBOL_GPL vmlinux 0xd94395d8 ata_ncq_sdev_attrs +EXPORT_SYMBOL_GPL vmlinux 0xd9667e73 securityfs_create_dir +EXPORT_SYMBOL_GPL vmlinux 0xd96babb4 interval_tree_iter_next +EXPORT_SYMBOL_GPL vmlinux 0xd99d2e9d fsnotify_parent +EXPORT_SYMBOL_GPL vmlinux 0xd9a48dce alarmtimer_get_rtcdev +EXPORT_SYMBOL_GPL vmlinux 0xd9bd2a03 cpuidle_disable_device +EXPORT_SYMBOL_GPL vmlinux 0xd9c5829c devm_nvdimm_memremap +EXPORT_SYMBOL_GPL vmlinux 0xd9c95794 __crypto_alloc_tfm +EXPORT_SYMBOL_GPL vmlinux 0xd9cf00d4 devm_gpiod_unhinge +EXPORT_SYMBOL_GPL vmlinux 0xd9d0952e pci_enable_sriov +EXPORT_SYMBOL_GPL vmlinux 0xd9d5d879 sbitmap_queue_resize +EXPORT_SYMBOL_GPL vmlinux 0xd9e24457 ring_buffer_peek +EXPORT_SYMBOL_GPL vmlinux 0xd9e79bf9 fib6_get_table +EXPORT_SYMBOL_GPL vmlinux 0xd9e8a3f9 br_fdb_test_addr_hook +EXPORT_SYMBOL_GPL vmlinux 0xd9f8dea3 hwmon_notify_event +EXPORT_SYMBOL_GPL vmlinux 0xd9ff2172 ezx_pcap_write +EXPORT_SYMBOL_GPL vmlinux 0xda0686fe tpm2_get_tpm_pt +EXPORT_SYMBOL_GPL vmlinux 0xda15a15d alarm_forward +EXPORT_SYMBOL_GPL vmlinux 0xda1f78ee clear_hv_tscchange_cb +EXPORT_SYMBOL_GPL vmlinux 0xda3196a1 nf_queue_entry_free +EXPORT_SYMBOL_GPL vmlinux 0xda320d31 sfp_module_start +EXPORT_SYMBOL_GPL vmlinux 0xda353b74 bpf_trace_run6 +EXPORT_SYMBOL_GPL vmlinux 0xda45ff42 regulator_list_voltage_table +EXPORT_SYMBOL_GPL vmlinux 0xda4d77b1 tpm_chip_alloc +EXPORT_SYMBOL_GPL vmlinux 0xda6a47c3 clone_private_mount +EXPORT_SYMBOL_GPL vmlinux 0xda7912d4 freq_qos_add_request +EXPORT_SYMBOL_GPL vmlinux 0xda8465a0 platform_device_add_properties +EXPORT_SYMBOL_GPL vmlinux 0xda8e1302 software_node_find_by_name +EXPORT_SYMBOL_GPL vmlinux 0xdaa06dc1 acpi_lpat_raw_to_temp +EXPORT_SYMBOL_GPL vmlinux 0xdab5a1eb interval_tree_insert +EXPORT_SYMBOL_GPL vmlinux 0xdab77645 dw_pcie_upconfig_setup +EXPORT_SYMBOL_GPL vmlinux 0xdad4b8ac usb_put_intf +EXPORT_SYMBOL_GPL vmlinux 0xdad8ce8f screen_glyph_unicode +EXPORT_SYMBOL_GPL vmlinux 0xdaea33e3 iomap_page_mkwrite +EXPORT_SYMBOL_GPL vmlinux 0xdaf4dfb3 fb_mode_option +EXPORT_SYMBOL_GPL vmlinux 0xdaf5c16e __cookie_v4_check +EXPORT_SYMBOL_GPL vmlinux 0xdafae142 led_stop_software_blink +EXPORT_SYMBOL_GPL vmlinux 0xdafcdc3a ktime_get_snapshot +EXPORT_SYMBOL_GPL vmlinux 0xdb118df9 component_unbind_all +EXPORT_SYMBOL_GPL vmlinux 0xdb1b0360 wbt_enable_default +EXPORT_SYMBOL_GPL vmlinux 0xdb25da3e irq_work_queue +EXPORT_SYMBOL_GPL vmlinux 0xdb2cfb18 vmbus_setevent +EXPORT_SYMBOL_GPL vmlinux 0xdb394243 debugfs_create_x16 +EXPORT_SYMBOL_GPL vmlinux 0xdb40d5d2 edac_device_handle_ce_count +EXPORT_SYMBOL_GPL vmlinux 0xdb5146cb nvmem_cell_read_u64 +EXPORT_SYMBOL_GPL vmlinux 0xdb5f4fe9 ata_sff_prereset +EXPORT_SYMBOL_GPL vmlinux 0xdb63a944 acpi_lpat_get_conversion_table +EXPORT_SYMBOL_GPL vmlinux 0xdb67c532 crypto_register_skciphers +EXPORT_SYMBOL_GPL vmlinux 0xdb729912 __inet_lookup_listener +EXPORT_SYMBOL_GPL vmlinux 0xdb735885 alarm_cancel +EXPORT_SYMBOL_GPL vmlinux 0xdb8a1b3f usermodehelper_read_trylock +EXPORT_SYMBOL_GPL vmlinux 0xdbaa8d27 acpi_gpiochip_free_interrupts +EXPORT_SYMBOL_GPL vmlinux 0xdbc453fd acpi_cppc_processor_exit +EXPORT_SYMBOL_GPL vmlinux 0xdbe33f21 regmap_raw_write_async +EXPORT_SYMBOL_GPL vmlinux 0xdbf29726 __tracepoint_neigh_timer_handler +EXPORT_SYMBOL_GPL vmlinux 0xdbf7cb70 mpi_get_nbits +EXPORT_SYMBOL_GPL vmlinux 0xdc0e4332 irq_setup_alt_chip +EXPORT_SYMBOL_GPL vmlinux 0xdc0edfee regcache_cache_only +EXPORT_SYMBOL_GPL vmlinux 0xdc151580 tpm_tis_remove +EXPORT_SYMBOL_GPL vmlinux 0xdc21e866 hrtimer_forward +EXPORT_SYMBOL_GPL vmlinux 0xdc27f459 devm_regulator_bulk_unregister_supply_alias +EXPORT_SYMBOL_GPL vmlinux 0xdc2c0b62 sk_clone_lock +EXPORT_SYMBOL_GPL vmlinux 0xdc45a5db edac_stop_work +EXPORT_SYMBOL_GPL vmlinux 0xdc4be5ff usb_root_hub_lost_power +EXPORT_SYMBOL_GPL vmlinux 0xdc57ef64 nvme_cleanup_cmd +EXPORT_SYMBOL_GPL vmlinux 0xdc5bcdea ipv4_sk_update_pmtu +EXPORT_SYMBOL_GPL vmlinux 0xdc5f0252 pci_probe_reset_slot +EXPORT_SYMBOL_GPL vmlinux 0xdc6596fa irq_set_parent +EXPORT_SYMBOL_GPL vmlinux 0xdc6699cb acpi_dev_free_resource_list +EXPORT_SYMBOL_GPL vmlinux 0xdc6b9043 set_primary_fwnode +EXPORT_SYMBOL_GPL vmlinux 0xdc79d1e4 pci_platform_power_transition +EXPORT_SYMBOL_GPL vmlinux 0xdc7df67f apei_exec_ctx_init +EXPORT_SYMBOL_GPL vmlinux 0xdc825d6c usb_amd_quirk_pll_disable +EXPORT_SYMBOL_GPL vmlinux 0xdc8a4d61 efivar_entry_set_get_size +EXPORT_SYMBOL_GPL vmlinux 0xdc97af2e syscore_suspend +EXPORT_SYMBOL_GPL vmlinux 0xdc9e515f fscrypt_fname_siphash +EXPORT_SYMBOL_GPL vmlinux 0xdc9fa232 raw_notifier_chain_register +EXPORT_SYMBOL_GPL vmlinux 0xdcc09309 kobject_uevent_env +EXPORT_SYMBOL_GPL vmlinux 0xdcd18d2f queue_iova +EXPORT_SYMBOL_GPL vmlinux 0xdcd510ec blkcg_print_blkgs +EXPORT_SYMBOL_GPL vmlinux 0xdce23a83 sbitmap_queue_wake_up +EXPORT_SYMBOL_GPL vmlinux 0xdce89294 pci_try_reset_function +EXPORT_SYMBOL_GPL vmlinux 0xdcf84594 ndo_dflt_bridge_getlink +EXPORT_SYMBOL_GPL vmlinux 0xdcfd449a inet_twsk_put +EXPORT_SYMBOL_GPL vmlinux 0xdd041b68 perf_aux_output_end +EXPORT_SYMBOL_GPL vmlinux 0xdd060504 kernel_read_file_from_fd +EXPORT_SYMBOL_GPL vmlinux 0xdd0762df set_worker_desc +EXPORT_SYMBOL_GPL vmlinux 0xdd10f306 bus_create_file +EXPORT_SYMBOL_GPL vmlinux 0xdd221c37 mbox_free_channel +EXPORT_SYMBOL_GPL vmlinux 0xdd2fa561 blk_queue_required_elevator_features +EXPORT_SYMBOL_GPL vmlinux 0xdd391eff profile_event_unregister +EXPORT_SYMBOL_GPL vmlinux 0xdd404c22 nvme_reset_ctrl_sync +EXPORT_SYMBOL_GPL vmlinux 0xdd4bab6c blk_ksm_destroy +EXPORT_SYMBOL_GPL vmlinux 0xdd5be353 iomap_fiemap +EXPORT_SYMBOL_GPL vmlinux 0xdd5fda0f usb_hcd_map_urb_for_dma +EXPORT_SYMBOL_GPL vmlinux 0xdd626ee3 fuse_len_args +EXPORT_SYMBOL_GPL vmlinux 0xdd67470c usb_queue_reset_device +EXPORT_SYMBOL_GPL vmlinux 0xdd79ab1d rio_request_outb_mbox +EXPORT_SYMBOL_GPL vmlinux 0xdd7f0765 __tracepoint_powernv_throttle +EXPORT_SYMBOL_GPL vmlinux 0xdd831724 pci_epc_clear_bar +EXPORT_SYMBOL_GPL vmlinux 0xdd9007de sg_scsi_ioctl +EXPORT_SYMBOL_GPL vmlinux 0xdd90e9bc ip6_datagram_connect_v6_only +EXPORT_SYMBOL_GPL vmlinux 0xdda1955b iomap_set_page_dirty +EXPORT_SYMBOL_GPL vmlinux 0xddaa9560 icc_provider_add +EXPORT_SYMBOL_GPL vmlinux 0xddb3ed9c iommu_detach_group +EXPORT_SYMBOL_GPL vmlinux 0xddbeeecc pci_lock_rescan_remove +EXPORT_SYMBOL_GPL vmlinux 0xddc70e8e bsg_setup_queue +EXPORT_SYMBOL_GPL vmlinux 0xddc75fee intel_msic_irq_read +EXPORT_SYMBOL_GPL vmlinux 0xddc9a015 synchronize_srcu_expedited +EXPORT_SYMBOL_GPL vmlinux 0xddea7b84 pci_reset_bus +EXPORT_SYMBOL_GPL vmlinux 0xddf21547 mddev_init_writes_pending +EXPORT_SYMBOL_GPL vmlinux 0xde09a94d xas_find +EXPORT_SYMBOL_GPL vmlinux 0xde11bfb2 debugfs_attr_read +EXPORT_SYMBOL_GPL vmlinux 0xde2d3af0 acpi_dev_resource_ext_address_space +EXPORT_SYMBOL_GPL vmlinux 0xde3a2f91 gpiochip_irqchip_add_domain +EXPORT_SYMBOL_GPL vmlinux 0xde47ee88 sysfs_groups_change_owner +EXPORT_SYMBOL_GPL vmlinux 0xde5b5a96 bus_remove_file +EXPORT_SYMBOL_GPL vmlinux 0xde6f1851 TSS_checkhmac1 +EXPORT_SYMBOL_GPL vmlinux 0xde83ef84 iommu_attach_group +EXPORT_SYMBOL_GPL vmlinux 0xde8e839f alloc_page_buffers +EXPORT_SYMBOL_GPL vmlinux 0xdea9919b kmsg_dump_unregister +EXPORT_SYMBOL_GPL vmlinux 0xdeaed257 __inet_twsk_schedule +EXPORT_SYMBOL_GPL vmlinux 0xdeb32c16 pci_epc_linkup +EXPORT_SYMBOL_GPL vmlinux 0xdeb37d3d device_get_named_child_node +EXPORT_SYMBOL_GPL vmlinux 0xdeb6e12a fuse_request_end +EXPORT_SYMBOL_GPL vmlinux 0xded3d453 xfrm_audit_policy_delete +EXPORT_SYMBOL_GPL vmlinux 0xdeec7751 phy_destroy +EXPORT_SYMBOL_GPL vmlinux 0xdeffa0a7 edac_raw_mc_handle_error +EXPORT_SYMBOL_GPL vmlinux 0xdf0ca3f4 cpu_latency_qos_request_active +EXPORT_SYMBOL_GPL vmlinux 0xdf0f75c6 eventfd_signal +EXPORT_SYMBOL_GPL vmlinux 0xdf175dbc acpi_subsys_suspend_late +EXPORT_SYMBOL_GPL vmlinux 0xdf1882af dbgp_reset_prep +EXPORT_SYMBOL_GPL vmlinux 0xdf1f5858 rtc_nvmem_register +EXPORT_SYMBOL_GPL vmlinux 0xdf223247 __tracepoint_sched_overutilized_tp +EXPORT_SYMBOL_GPL vmlinux 0xdf2738bb cpu_cgrp_subsys_enabled_key +EXPORT_SYMBOL_GPL vmlinux 0xdf28965b acomp_request_free +EXPORT_SYMBOL_GPL vmlinux 0xdf28d8bc irq_domain_translate_twocell +EXPORT_SYMBOL_GPL vmlinux 0xdf46714f blk_ksm_reprogram_all_keys +EXPORT_SYMBOL_GPL vmlinux 0xdf46a5c9 init_iova_domain +EXPORT_SYMBOL_GPL vmlinux 0xdf4d9340 bio_associate_blkg +EXPORT_SYMBOL_GPL vmlinux 0xdf622c10 clockevents_register_device +EXPORT_SYMBOL_GPL vmlinux 0xdf6fe027 devm_led_trigger_register +EXPORT_SYMBOL_GPL vmlinux 0xdf708101 noop_direct_IO +EXPORT_SYMBOL_GPL vmlinux 0xdf802dd3 vfs_listxattr +EXPORT_SYMBOL_GPL vmlinux 0xdf9208c0 alloc_workqueue +EXPORT_SYMBOL_GPL vmlinux 0xdf920a0c fwnode_get_named_gpiod +EXPORT_SYMBOL_GPL vmlinux 0xdf926ed9 handle_simple_irq +EXPORT_SYMBOL_GPL vmlinux 0xdf9eaf9f debugfs_print_regs32 +EXPORT_SYMBOL_GPL vmlinux 0xdfb6bffc do_unregister_con_driver +EXPORT_SYMBOL_GPL vmlinux 0xdfbc4dcc __blk_req_zone_write_lock +EXPORT_SYMBOL_GPL vmlinux 0xdfc42081 mmu_notifier_unregister +EXPORT_SYMBOL_GPL vmlinux 0xdfcb6c90 mctrl_gpio_set +EXPORT_SYMBOL_GPL vmlinux 0xdfcd49c1 crypto_stats_decompress +EXPORT_SYMBOL_GPL vmlinux 0xdfd90d2e gpiochip_add_pin_range +EXPORT_SYMBOL_GPL vmlinux 0xdff14e9e nvme_reset_ctrl +EXPORT_SYMBOL_GPL vmlinux 0xdffed206 dm_per_bio_data +EXPORT_SYMBOL_GPL vmlinux 0xe00af151 spi_get_device_id +EXPORT_SYMBOL_GPL vmlinux 0xe012fa19 pci_stop_and_remove_bus_device_locked +EXPORT_SYMBOL_GPL vmlinux 0xe037fdb1 elv_rqhash_add +EXPORT_SYMBOL_GPL vmlinux 0xe04af0b7 __pm_runtime_set_status +EXPORT_SYMBOL_GPL vmlinux 0xe05e2f85 nexthop_free_rcu +EXPORT_SYMBOL_GPL vmlinux 0xe0626372 virtqueue_add_outbuf +EXPORT_SYMBOL_GPL vmlinux 0xe071d05d zs_pool_stats +EXPORT_SYMBOL_GPL vmlinux 0xe089cfcc agp_memory_reserved +EXPORT_SYMBOL_GPL vmlinux 0xe0a3ac74 bpf_event_output +EXPORT_SYMBOL_GPL vmlinux 0xe0a71b7f usb_find_interface +EXPORT_SYMBOL_GPL vmlinux 0xe0b1c103 clk_set_max_rate +EXPORT_SYMBOL_GPL vmlinux 0xe0b438e8 acpi_pm_wakeup_event +EXPORT_SYMBOL_GPL vmlinux 0xe0c38c90 dev_pm_qos_add_ancestor_request +EXPORT_SYMBOL_GPL vmlinux 0xe0c6df81 nvme_init_ctrl +EXPORT_SYMBOL_GPL vmlinux 0xe0c77bb5 mce_notify_irq +EXPORT_SYMBOL_GPL vmlinux 0xe0d6e7e1 spi_controller_dma_unmap_mem_op_data +EXPORT_SYMBOL_GPL vmlinux 0xe0e32de8 dev_set_name +EXPORT_SYMBOL_GPL vmlinux 0xe1017cf0 gpiod_direction_input +EXPORT_SYMBOL_GPL vmlinux 0xe102d37e __rt_mutex_init +EXPORT_SYMBOL_GPL vmlinux 0xe10cd6ad erst_get_record_id_begin +EXPORT_SYMBOL_GPL vmlinux 0xe1297d71 smp_ops +EXPORT_SYMBOL_GPL vmlinux 0xe1541037 virtio_check_driver_offered_feature +EXPORT_SYMBOL_GPL vmlinux 0xe1775ee7 dm_get_reserved_bio_based_ios +EXPORT_SYMBOL_GPL vmlinux 0xe1a8d7c9 net_rwsem +EXPORT_SYMBOL_GPL vmlinux 0xe1aa2d62 set_hv_tscchange_cb +EXPORT_SYMBOL_GPL vmlinux 0xe1bd6123 inet6_csk_addr2sockaddr +EXPORT_SYMBOL_GPL vmlinux 0xe1bd6c99 rio_init_mports +EXPORT_SYMBOL_GPL vmlinux 0xe1c63523 blk_ksm_get_slot_idx +EXPORT_SYMBOL_GPL vmlinux 0xe1c8728a devm_add_action +EXPORT_SYMBOL_GPL vmlinux 0xe1d91007 cdrom_read_tocentry +EXPORT_SYMBOL_GPL vmlinux 0xe1e4df72 sock_zerocopy_callback +EXPORT_SYMBOL_GPL vmlinux 0xe20db823 mddev_init +EXPORT_SYMBOL_GPL vmlinux 0xe21d43cf class_dev_iter_next +EXPORT_SYMBOL_GPL vmlinux 0xe21e0094 perf_event_refresh +EXPORT_SYMBOL_GPL vmlinux 0xe21e70bc rhashtable_walk_stop +EXPORT_SYMBOL_GPL vmlinux 0xe233762a input_event_from_user +EXPORT_SYMBOL_GPL vmlinux 0xe23b1081 hrtimer_sleeper_start_expires +EXPORT_SYMBOL_GPL vmlinux 0xe2429891 usb_ifnum_to_if +EXPORT_SYMBOL_GPL vmlinux 0xe2456e96 devfreq_event_get_edev_count +EXPORT_SYMBOL_GPL vmlinux 0xe25592f3 crypto_grab_shash +EXPORT_SYMBOL_GPL vmlinux 0xe2582a12 btree_init +EXPORT_SYMBOL_GPL vmlinux 0xe25a862c crypto_register_rngs +EXPORT_SYMBOL_GPL vmlinux 0xe2604b5a pci_test_config_bits +EXPORT_SYMBOL_GPL vmlinux 0xe283fe53 udp_sock_create6 +EXPORT_SYMBOL_GPL vmlinux 0xe28c4565 sync_page_io +EXPORT_SYMBOL_GPL vmlinux 0xe28f3b4e fscrypt_ioctl_get_key_status +EXPORT_SYMBOL_GPL vmlinux 0xe291c16e sock_zerocopy_alloc +EXPORT_SYMBOL_GPL vmlinux 0xe295c0ff is_hpet_enabled +EXPORT_SYMBOL_GPL vmlinux 0xe2a72e3d devres_for_each_res +EXPORT_SYMBOL_GPL vmlinux 0xe2b3207a unregister_switchdev_notifier +EXPORT_SYMBOL_GPL vmlinux 0xe2ce2b4d evm_set_key +EXPORT_SYMBOL_GPL vmlinux 0xe2e885d4 udp_tunnel_xmit_skb +EXPORT_SYMBOL_GPL vmlinux 0xe3043ff9 request_any_context_irq +EXPORT_SYMBOL_GPL vmlinux 0xe3054727 platform_device_put +EXPORT_SYMBOL_GPL vmlinux 0xe32055e4 gpiochip_generic_config +EXPORT_SYMBOL_GPL vmlinux 0xe329ba24 housekeeping_cpumask +EXPORT_SYMBOL_GPL vmlinux 0xe338c5ac inet_hashinfo2_init_mod +EXPORT_SYMBOL_GPL vmlinux 0xe33bbe7c acpi_dma_controller_register +EXPORT_SYMBOL_GPL vmlinux 0xe36357c9 vmbus_close +EXPORT_SYMBOL_GPL vmlinux 0xe368f5ae bpf_prog_destroy +EXPORT_SYMBOL_GPL vmlinux 0xe36ae793 acpi_subsys_runtime_resume +EXPORT_SYMBOL_GPL vmlinux 0xe3940e0b rtc_alarm_irq_enable +EXPORT_SYMBOL_GPL vmlinux 0xe3948ff4 acpi_walk_dep_device_list +EXPORT_SYMBOL_GPL vmlinux 0xe397caf5 seq_buf_printf +EXPORT_SYMBOL_GPL vmlinux 0xe39d0794 usb_phy_roothub_exit +EXPORT_SYMBOL_GPL vmlinux 0xe3a41d1f mbox_send_message +EXPORT_SYMBOL_GPL vmlinux 0xe3a74a5f device_find_child_by_name +EXPORT_SYMBOL_GPL vmlinux 0xe3b09712 kprobe_event_delete +EXPORT_SYMBOL_GPL vmlinux 0xe3b32608 pcc_mbox_request_channel +EXPORT_SYMBOL_GPL vmlinux 0xe3b7d8b6 dma_resv_test_signaled_rcu +EXPORT_SYMBOL_GPL vmlinux 0xe3bc7fd4 hpet_unregister_irq_handler +EXPORT_SYMBOL_GPL vmlinux 0xe3cd5fae klist_iter_init +EXPORT_SYMBOL_GPL vmlinux 0xe3d46bd2 __rio_local_read_config_16 +EXPORT_SYMBOL_GPL vmlinux 0xe3d470f8 devm_device_add_groups +EXPORT_SYMBOL_GPL vmlinux 0xe3e88acb __get_current_cr3_fast +EXPORT_SYMBOL_GPL vmlinux 0xe409dcc5 gpiod_export_link +EXPORT_SYMBOL_GPL vmlinux 0xe40bb23e devlink_health_reporter_priv +EXPORT_SYMBOL_GPL vmlinux 0xe412a39f regmap_bulk_write +EXPORT_SYMBOL_GPL vmlinux 0xe415640c blk_mq_free_request +EXPORT_SYMBOL_GPL vmlinux 0xe41726db devm_kstrdup +EXPORT_SYMBOL_GPL vmlinux 0xe4248980 cper_estatus_print +EXPORT_SYMBOL_GPL vmlinux 0xe4309905 syscore_resume +EXPORT_SYMBOL_GPL vmlinux 0xe44cfba9 led_trigger_remove +EXPORT_SYMBOL_GPL vmlinux 0xe456a3bc pci_hp_del +EXPORT_SYMBOL_GPL vmlinux 0xe465929a dw_pcie_msi_init +EXPORT_SYMBOL_GPL vmlinux 0xe46d336c devlink_port_attrs_set +EXPORT_SYMBOL_GPL vmlinux 0xe4703e79 bpf_trace_run5 +EXPORT_SYMBOL_GPL vmlinux 0xe4771709 bio_associate_blkg_from_css +EXPORT_SYMBOL_GPL vmlinux 0xe479713f __pci_reset_function_locked +EXPORT_SYMBOL_GPL vmlinux 0xe47abc50 inet_twsk_alloc +EXPORT_SYMBOL_GPL vmlinux 0xe47c53a4 mddev_congested +EXPORT_SYMBOL_GPL vmlinux 0xe48611ac trace_clock_global +EXPORT_SYMBOL_GPL vmlinux 0xe4874aef __tracepoint_add_device_to_group +EXPORT_SYMBOL_GPL vmlinux 0xe495926a alarm_restart +EXPORT_SYMBOL_GPL vmlinux 0xe4971ade tracing_alloc_snapshot +EXPORT_SYMBOL_GPL vmlinux 0xe49fea8f fixed_phy_unregister +EXPORT_SYMBOL_GPL vmlinux 0xe4ab63ff ksm_madvise +EXPORT_SYMBOL_GPL vmlinux 0xe4b064f9 pcie_link_speed +EXPORT_SYMBOL_GPL vmlinux 0xe4b62a54 mbox_flush +EXPORT_SYMBOL_GPL vmlinux 0xe4b818c3 phy_speed_to_str +EXPORT_SYMBOL_GPL vmlinux 0xe4bfe36d __kthread_should_park +EXPORT_SYMBOL_GPL vmlinux 0xe4c2c66c rtc_ktime_to_tm +EXPORT_SYMBOL_GPL vmlinux 0xe4c2f45a ata_host_register +EXPORT_SYMBOL_GPL vmlinux 0xe4d97797 serial8250_rpm_get +EXPORT_SYMBOL_GPL vmlinux 0xe4dbd9a2 __fscrypt_prepare_link +EXPORT_SYMBOL_GPL vmlinux 0xe4dd6dc7 srcutorture_get_gp_data +EXPORT_SYMBOL_GPL vmlinux 0xe4e48b12 swphy_validate_state +EXPORT_SYMBOL_GPL vmlinux 0xe4f9cb87 efi_mm +EXPORT_SYMBOL_GPL vmlinux 0xe50e969f gpiod_get_array_value_cansleep +EXPORT_SYMBOL_GPL vmlinux 0xe518b7f1 pci_bus_add_device +EXPORT_SYMBOL_GPL vmlinux 0xe52a4ac9 sock_zerocopy_put +EXPORT_SYMBOL_GPL vmlinux 0xe54981d8 pci_epc_raise_irq +EXPORT_SYMBOL_GPL vmlinux 0xe54c6d58 put_iova_domain +EXPORT_SYMBOL_GPL vmlinux 0xe5586ee9 dma_can_mmap +EXPORT_SYMBOL_GPL vmlinux 0xe55d1116 pci_epc_get_msi +EXPORT_SYMBOL_GPL vmlinux 0xe58261d9 handle_level_irq +EXPORT_SYMBOL_GPL vmlinux 0xe5883bd9 class_compat_unregister +EXPORT_SYMBOL_GPL vmlinux 0xe58c891e xhci_shutdown +EXPORT_SYMBOL_GPL vmlinux 0xe595b4d1 vmbus_teardown_gpadl +EXPORT_SYMBOL_GPL vmlinux 0xe596f624 __page_mapcount +EXPORT_SYMBOL_GPL vmlinux 0xe59f6290 dev_fwnode +EXPORT_SYMBOL_GPL vmlinux 0xe5b5d5ee __netpoll_cleanup +EXPORT_SYMBOL_GPL vmlinux 0xe5c02b64 freq_qos_remove_request +EXPORT_SYMBOL_GPL vmlinux 0xe5c1b357 irq_chip_set_type_parent +EXPORT_SYMBOL_GPL vmlinux 0xe5c6c67b devfreq_event_get_edev_by_phandle +EXPORT_SYMBOL_GPL vmlinux 0xe5cfd810 serial8250_clear_and_reinit_fifos +EXPORT_SYMBOL_GPL vmlinux 0xe5d046dc ata_do_dev_read_id +EXPORT_SYMBOL_GPL vmlinux 0xe5f73406 hyperv_write_cfg_blk +EXPORT_SYMBOL_GPL vmlinux 0xe5f85a70 dm_path_uevent +EXPORT_SYMBOL_GPL vmlinux 0xe60632a9 edac_queue_work +EXPORT_SYMBOL_GPL vmlinux 0xe60a5e8d pids_cgrp_subsys_enabled_key +EXPORT_SYMBOL_GPL vmlinux 0xe61de83b pm_runtime_irq_safe +EXPORT_SYMBOL_GPL vmlinux 0xe628bb9f phy_fibre_port_array +EXPORT_SYMBOL_GPL vmlinux 0xe63f56d3 dev_pm_opp_find_freq_ceil_by_volt +EXPORT_SYMBOL_GPL vmlinux 0xe64ad8ea unregister_nmi_handler +EXPORT_SYMBOL_GPL vmlinux 0xe651ddd0 regmap_write_async +EXPORT_SYMBOL_GPL vmlinux 0xe65c1938 usb_phy_roothub_alloc +EXPORT_SYMBOL_GPL vmlinux 0xe68712d1 blkdev_write_iter +EXPORT_SYMBOL_GPL vmlinux 0xe6897fd4 iommu_iova_to_phys +EXPORT_SYMBOL_GPL vmlinux 0xe68b55c8 irq_find_matching_fwspec +EXPORT_SYMBOL_GPL vmlinux 0xe691b4fc thermal_zone_get_temp +EXPORT_SYMBOL_GPL vmlinux 0xe6a257f1 divider_round_rate_parent +EXPORT_SYMBOL_GPL vmlinux 0xe6a502bd skb_splice_bits +EXPORT_SYMBOL_GPL vmlinux 0xe6c87a10 gpiochip_line_is_valid +EXPORT_SYMBOL_GPL vmlinux 0xe6e40502 rcu_get_gp_seq +EXPORT_SYMBOL_GPL vmlinux 0xe6eb27ae gpiochip_lock_as_irq +EXPORT_SYMBOL_GPL vmlinux 0xe6ec8539 devm_regmap_add_irq_chip_np +EXPORT_SYMBOL_GPL vmlinux 0xe6f52443 klist_add_head +EXPORT_SYMBOL_GPL vmlinux 0xe6f5e6f5 xas_clear_mark +EXPORT_SYMBOL_GPL vmlinux 0xe6f70355 relay_close +EXPORT_SYMBOL_GPL vmlinux 0xe6f83837 acpi_bus_attach_private_data +EXPORT_SYMBOL_GPL vmlinux 0xe6fe0fd7 uprobe_register +EXPORT_SYMBOL_GPL vmlinux 0xe7004725 gpiochip_irq_map +EXPORT_SYMBOL_GPL vmlinux 0xe7166b00 noop_backing_dev_info +EXPORT_SYMBOL_GPL vmlinux 0xe7232e0f user_return_notifier_unregister +EXPORT_SYMBOL_GPL vmlinux 0xe7260738 raw_unhash_sk +EXPORT_SYMBOL_GPL vmlinux 0xe72cd1eb get_net_ns_by_fd +EXPORT_SYMBOL_GPL vmlinux 0xe7346ba7 dev_pm_qos_remove_notifier +EXPORT_SYMBOL_GPL vmlinux 0xe73de1d3 free_vm_area +EXPORT_SYMBOL_GPL vmlinux 0xe740b58a hv_vp_assist_page +EXPORT_SYMBOL_GPL vmlinux 0xe7456dbb sysfs_create_link +EXPORT_SYMBOL_GPL vmlinux 0xe74a0729 uart_set_options +EXPORT_SYMBOL_GPL vmlinux 0xe753b68d devlink_fmsg_arr_pair_nest_end +EXPORT_SYMBOL_GPL vmlinux 0xe762ce03 ata_cable_unknown +EXPORT_SYMBOL_GPL vmlinux 0xe769232e sprint_symbol_no_offset +EXPORT_SYMBOL_GPL vmlinux 0xe77c0f4e wm8997_irq +EXPORT_SYMBOL_GPL vmlinux 0xe7805562 pinctrl_force_sleep +EXPORT_SYMBOL_GPL vmlinux 0xe783e261 sysfs_emit +EXPORT_SYMBOL_GPL vmlinux 0xe78a5d94 fuse_dev_install +EXPORT_SYMBOL_GPL vmlinux 0xe79bf0c4 klp_shadow_get +EXPORT_SYMBOL_GPL vmlinux 0xe7bd826c dm_start_time_ns_from_clone +EXPORT_SYMBOL_GPL vmlinux 0xe7cce4f2 serial8250_do_set_mctrl +EXPORT_SYMBOL_GPL vmlinux 0xe7d6d2d4 filter_match_preds +EXPORT_SYMBOL_GPL vmlinux 0xe7e5bcbf pci_vfs_assigned +EXPORT_SYMBOL_GPL vmlinux 0xe7eee3d5 __cookie_v4_init_sequence +EXPORT_SYMBOL_GPL vmlinux 0xe7f07573 tpm_default_chip +EXPORT_SYMBOL_GPL vmlinux 0xe7ffe877 pcpu_base_addr +EXPORT_SYMBOL_GPL vmlinux 0xe802fabe ata_port_schedule_eh +EXPORT_SYMBOL_GPL vmlinux 0xe809cffb ring_buffer_time_stamp +EXPORT_SYMBOL_GPL vmlinux 0xe80caa90 iommu_group_for_each_dev +EXPORT_SYMBOL_GPL vmlinux 0xe8125ae4 __mdiobus_modify_changed +EXPORT_SYMBOL_GPL vmlinux 0xe818b32b ata_bmdma_interrupt +EXPORT_SYMBOL_GPL vmlinux 0xe81ddad6 tracing_generic_entry_update +EXPORT_SYMBOL_GPL vmlinux 0xe81dfbd5 __inode_attach_wb +EXPORT_SYMBOL_GPL vmlinux 0xe81e9438 _copy_from_iter_flushcache +EXPORT_SYMBOL_GPL vmlinux 0xe82a2eda kthread_queue_work +EXPORT_SYMBOL_GPL vmlinux 0xe83e6f8f pin_get_name +EXPORT_SYMBOL_GPL vmlinux 0xe83eba32 itlb_multihit_kvm_mitigation +EXPORT_SYMBOL_GPL vmlinux 0xe84f6e5c pciserial_remove_ports +EXPORT_SYMBOL_GPL vmlinux 0xe85b25d2 dm_get_queue_limits +EXPORT_SYMBOL_GPL vmlinux 0xe862c4b7 dpm_suspend_start +EXPORT_SYMBOL_GPL vmlinux 0xe86c87ce usb_set_device_state +EXPORT_SYMBOL_GPL vmlinux 0xe87adc1d intel_msic_reg_write +EXPORT_SYMBOL_GPL vmlinux 0xe880b64b perf_event_sysfs_show +EXPORT_SYMBOL_GPL vmlinux 0xe88482cd nexthop_for_each_fib6_nh +EXPORT_SYMBOL_GPL vmlinux 0xe886bdbe cpufreq_freq_attr_scaling_available_freqs +EXPORT_SYMBOL_GPL vmlinux 0xe88fd89b nvdimm_pmem_region_create +EXPORT_SYMBOL_GPL vmlinux 0xe897bd9b perf_tp_event +EXPORT_SYMBOL_GPL vmlinux 0xe8b40f33 __tracepoint_remove_device_from_group +EXPORT_SYMBOL_GPL vmlinux 0xe8ba52ff bsg_job_done +EXPORT_SYMBOL_GPL vmlinux 0xe8bf464c relay_switch_subbuf +EXPORT_SYMBOL_GPL vmlinux 0xe8c77392 scsi_dh_set_params +EXPORT_SYMBOL_GPL vmlinux 0xe8c88256 tpm1_do_selftest +EXPORT_SYMBOL_GPL vmlinux 0xe8dc6e15 devlink_param_driverinit_value_get +EXPORT_SYMBOL_GPL vmlinux 0xe8e22bbb blk_rq_unprep_clone +EXPORT_SYMBOL_GPL vmlinux 0xe8e28847 tty_save_termios +EXPORT_SYMBOL_GPL vmlinux 0xe8e85253 tcp_reno_undo_cwnd +EXPORT_SYMBOL_GPL vmlinux 0xe8e9fe23 ip6_route_output_flags +EXPORT_SYMBOL_GPL vmlinux 0xe8f6f2f6 free_fib_info +EXPORT_SYMBOL_GPL vmlinux 0xe903cbe1 iomap_truncate_page +EXPORT_SYMBOL_GPL vmlinux 0xe906401d badblocks_set +EXPORT_SYMBOL_GPL vmlinux 0xe92014c0 devres_release_group +EXPORT_SYMBOL_GPL vmlinux 0xe93e49c3 devres_free +EXPORT_SYMBOL_GPL vmlinux 0xe93f9378 rtnl_af_register +EXPORT_SYMBOL_GPL vmlinux 0xe94ff357 syscon_node_to_regmap +EXPORT_SYMBOL_GPL vmlinux 0xe95ec5f3 iomap_writepages +EXPORT_SYMBOL_GPL vmlinux 0xe965319a debugfs_create_regset32 +EXPORT_SYMBOL_GPL vmlinux 0xe975642f regulator_list_voltage_pickable_linear_range +EXPORT_SYMBOL_GPL vmlinux 0xe995f2e0 devlink_flash_update_status_notify +EXPORT_SYMBOL_GPL vmlinux 0xe99be1a9 ata_scsi_queuecmd +EXPORT_SYMBOL_GPL vmlinux 0xe99f94fa devm_hwspin_lock_register +EXPORT_SYMBOL_GPL vmlinux 0xe9a91f34 sk_attach_filter +EXPORT_SYMBOL_GPL vmlinux 0xe9adfce3 crypto_shash_finup +EXPORT_SYMBOL_GPL vmlinux 0xe9ce931a kvm_para_available +EXPORT_SYMBOL_GPL vmlinux 0xe9d1b7cf irq_to_pcap +EXPORT_SYMBOL_GPL vmlinux 0xe9d9be62 iomap_ioend_try_merge +EXPORT_SYMBOL_GPL vmlinux 0xe9da3e65 scsi_bus_type +EXPORT_SYMBOL_GPL vmlinux 0xe9e18eb7 verify_pkcs7_signature +EXPORT_SYMBOL_GPL vmlinux 0xe9e2fcca fsnotify_destroy_mark +EXPORT_SYMBOL_GPL vmlinux 0xe9e4a517 nf_ip_route +EXPORT_SYMBOL_GPL vmlinux 0xea0feac9 platform_device_add_data +EXPORT_SYMBOL_GPL vmlinux 0xea124bd1 gcd +EXPORT_SYMBOL_GPL vmlinux 0xea16b68d handle_fasteoi_irq +EXPORT_SYMBOL_GPL vmlinux 0xea17b043 devm_gpiod_get_array_optional +EXPORT_SYMBOL_GPL vmlinux 0xea1e5d84 nvme_change_ctrl_state +EXPORT_SYMBOL_GPL vmlinux 0xea287155 pci_dev_run_wake +EXPORT_SYMBOL_GPL vmlinux 0xea29d653 vma_kernel_pagesize +EXPORT_SYMBOL_GPL vmlinux 0xea38036f ring_buffer_entries +EXPORT_SYMBOL_GPL vmlinux 0xea432daa tcp_done +EXPORT_SYMBOL_GPL vmlinux 0xea4a88f6 __irq_domain_alloc_fwnode +EXPORT_SYMBOL_GPL vmlinux 0xea6b6246 blk_trace_remove +EXPORT_SYMBOL_GPL vmlinux 0xea7711dc crypto_unregister_ahashes +EXPORT_SYMBOL_GPL vmlinux 0xeaa9b7f1 sock_inuse_get +EXPORT_SYMBOL_GPL vmlinux 0xeaad96f9 sbitmap_queue_clear +EXPORT_SYMBOL_GPL vmlinux 0xeac7d953 put_pid +EXPORT_SYMBOL_GPL vmlinux 0xead54924 mctrl_gpio_to_gpiod +EXPORT_SYMBOL_GPL vmlinux 0xeae0f496 clean_acked_data_flush +EXPORT_SYMBOL_GPL vmlinux 0xeaf7fe0f sbitmap_resize +EXPORT_SYMBOL_GPL vmlinux 0xeaf83024 regulator_map_voltage_linear_range +EXPORT_SYMBOL_GPL vmlinux 0xeaf8d518 usb_hcd_giveback_urb +EXPORT_SYMBOL_GPL vmlinux 0xeafe07b8 clk_bulk_prepare +EXPORT_SYMBOL_GPL vmlinux 0xeb2b7844 mmu_notifier_put +EXPORT_SYMBOL_GPL vmlinux 0xeb3794d0 devlink_params_unregister +EXPORT_SYMBOL_GPL vmlinux 0xeb38ad7c serial8250_set_defaults +EXPORT_SYMBOL_GPL vmlinux 0xeb3af8c7 ncsi_unregister_dev +EXPORT_SYMBOL_GPL vmlinux 0xeb3c8d73 wm5110_irq +EXPORT_SYMBOL_GPL vmlinux 0xeb493f15 clk_register_fractional_divider +EXPORT_SYMBOL_GPL vmlinux 0xeb51116a fscrypt_file_open +EXPORT_SYMBOL_GPL vmlinux 0xeb6aaf36 kernel_read_file_from_path_initns +EXPORT_SYMBOL_GPL vmlinux 0xeb796b15 __platform_driver_probe +EXPORT_SYMBOL_GPL vmlinux 0xeb7c9746 tpm_pcr_read +EXPORT_SYMBOL_GPL vmlinux 0xeb9e0208 shash_ahash_finup +EXPORT_SYMBOL_GPL vmlinux 0xeba2401f ip6_pol_route +EXPORT_SYMBOL_GPL vmlinux 0xebaba993 gpiochip_line_is_open_drain +EXPORT_SYMBOL_GPL vmlinux 0xebb25a2d get_device +EXPORT_SYMBOL_GPL vmlinux 0xebc9a09f lock_system_sleep +EXPORT_SYMBOL_GPL vmlinux 0xebd15e33 pci_iomap_wc +EXPORT_SYMBOL_GPL vmlinux 0xebd4cc11 mctrl_gpio_enable_ms +EXPORT_SYMBOL_GPL vmlinux 0xebd63647 path_noexec +EXPORT_SYMBOL_GPL vmlinux 0xebdad3e4 device_match_of_node +EXPORT_SYMBOL_GPL vmlinux 0xebe1c5cb iomap_seek_hole +EXPORT_SYMBOL_GPL vmlinux 0xebee2bd4 debugfs_create_u64 +EXPORT_SYMBOL_GPL vmlinux 0xec4452aa regulator_get +EXPORT_SYMBOL_GPL vmlinux 0xec49b491 gpiod_export +EXPORT_SYMBOL_GPL vmlinux 0xec5668f6 dax_zero_page_range +EXPORT_SYMBOL_GPL vmlinux 0xec59de0c debugfs_create_u32_array +EXPORT_SYMBOL_GPL vmlinux 0xec5ad73b trace_seq_bitmask +EXPORT_SYMBOL_GPL vmlinux 0xec660cd3 __tracepoint_fib6_table_lookup +EXPORT_SYMBOL_GPL vmlinux 0xec68ba70 clk_bulk_enable +EXPORT_SYMBOL_GPL vmlinux 0xec71a927 gpiod_set_value +EXPORT_SYMBOL_GPL vmlinux 0xec774acb cpufreq_frequency_table_verify +EXPORT_SYMBOL_GPL vmlinux 0xec77e790 pci_assign_unassigned_bridge_resources +EXPORT_SYMBOL_GPL vmlinux 0xec788566 acpi_target_system_state +EXPORT_SYMBOL_GPL vmlinux 0xec86008d sched_setscheduler +EXPORT_SYMBOL_GPL vmlinux 0xec8915a2 dev_pm_opp_get_opp_count +EXPORT_SYMBOL_GPL vmlinux 0xec89dba4 crypto_aead_encrypt +EXPORT_SYMBOL_GPL vmlinux 0xec9a4144 device_property_read_u32_array +EXPORT_SYMBOL_GPL vmlinux 0xecac3d34 register_wide_hw_breakpoint +EXPORT_SYMBOL_GPL vmlinux 0xecec7c8a icc_link_create +EXPORT_SYMBOL_GPL vmlinux 0xeceddc77 devm_hwspin_lock_request_specific +EXPORT_SYMBOL_GPL vmlinux 0xed0626af inet_csk_get_port +EXPORT_SYMBOL_GPL vmlinux 0xed176773 clk_hw_get_name +EXPORT_SYMBOL_GPL vmlinux 0xed1bcb5d alarm_init +EXPORT_SYMBOL_GPL vmlinux 0xed1f7772 pm_generic_restore_noirq +EXPORT_SYMBOL_GPL vmlinux 0xed233a3e tpm_chip_stop +EXPORT_SYMBOL_GPL vmlinux 0xed39fa7f check_move_unevictable_pages +EXPORT_SYMBOL_GPL vmlinux 0xed3a67cd mctrl_gpio_init_noauto +EXPORT_SYMBOL_GPL vmlinux 0xed440da3 phy_create +EXPORT_SYMBOL_GPL vmlinux 0xed453e66 rio_unmap_outb_region +EXPORT_SYMBOL_GPL vmlinux 0xed59d077 sbitmap_show +EXPORT_SYMBOL_GPL vmlinux 0xed61519e relay_subbufs_consumed +EXPORT_SYMBOL_GPL vmlinux 0xed6582f1 intel_msic_bulk_write +EXPORT_SYMBOL_GPL vmlinux 0xed696d3b pci_epc_write_header +EXPORT_SYMBOL_GPL vmlinux 0xed7c7b91 raw_v6_hashinfo +EXPORT_SYMBOL_GPL vmlinux 0xed7c92eb devm_device_remove_group +EXPORT_SYMBOL_GPL vmlinux 0xedaf039d key_type_user +EXPORT_SYMBOL_GPL vmlinux 0xedb6f90e ata_host_start +EXPORT_SYMBOL_GPL vmlinux 0xedc92e68 synchronize_srcu +EXPORT_SYMBOL_GPL vmlinux 0xedcaa69e sysfs_create_files +EXPORT_SYMBOL_GPL vmlinux 0xedd092d5 power_supply_notifier +EXPORT_SYMBOL_GPL vmlinux 0xede6050b nd_blk_region_to_dimm +EXPORT_SYMBOL_GPL vmlinux 0xede98ec5 intel_pt_validate_hw_cap +EXPORT_SYMBOL_GPL vmlinux 0xede9a09a btree_lookup +EXPORT_SYMBOL_GPL vmlinux 0xedf3a92f iommu_domain_alloc +EXPORT_SYMBOL_GPL vmlinux 0xedf3d9e7 crypto_unregister_ahash +EXPORT_SYMBOL_GPL vmlinux 0xedfe47e0 shmem_read_mapping_page_gfp +EXPORT_SYMBOL_GPL vmlinux 0xee13e697 set_personality_ia32 +EXPORT_SYMBOL_GPL vmlinux 0xee1a3b64 ipv6_find_tlv +EXPORT_SYMBOL_GPL vmlinux 0xee1b0911 unregister_acpi_bus_type +EXPORT_SYMBOL_GPL vmlinux 0xee24cb49 usb_hcd_unlink_urb_from_ep +EXPORT_SYMBOL_GPL vmlinux 0xee26adf8 power_supply_get_battery_info +EXPORT_SYMBOL_GPL vmlinux 0xee38ef57 register_switchdev_blocking_notifier +EXPORT_SYMBOL_GPL vmlinux 0xee511119 __devm_regmap_init +EXPORT_SYMBOL_GPL vmlinux 0xee6b71c4 syscon_regmap_lookup_by_compatible +EXPORT_SYMBOL_GPL vmlinux 0xee6be8c9 devm_namespace_enable +EXPORT_SYMBOL_GPL vmlinux 0xee6c633a devices_cgrp_subsys_on_dfl_key +EXPORT_SYMBOL_GPL vmlinux 0xee81442a sysfs_notify +EXPORT_SYMBOL_GPL vmlinux 0xee8e4882 fwnode_get_name +EXPORT_SYMBOL_GPL vmlinux 0xee9fcda6 apei_mce_report_mem_error +EXPORT_SYMBOL_GPL vmlinux 0xeea356af pm_clk_create +EXPORT_SYMBOL_GPL vmlinux 0xeea74cbe ip_tunnel_ioctl +EXPORT_SYMBOL_GPL vmlinux 0xeeb6c1ca gpiod_direction_output_raw +EXPORT_SYMBOL_GPL vmlinux 0xeebb2226 of_devfreq_cooling_register_power +EXPORT_SYMBOL_GPL vmlinux 0xeec8ed17 debugfs_file_put +EXPORT_SYMBOL_GPL vmlinux 0xeec9c8a5 tick_nohz_dep_set_task +EXPORT_SYMBOL_GPL vmlinux 0xeecc593d generic_access_phys +EXPORT_SYMBOL_GPL vmlinux 0xeece6736 kthread_park +EXPORT_SYMBOL_GPL vmlinux 0xeed126a0 rio_unregister_scan +EXPORT_SYMBOL_GPL vmlinux 0xeed131c7 nvme_delete_ctrl +EXPORT_SYMBOL_GPL vmlinux 0xeed57948 tty_wakeup +EXPORT_SYMBOL_GPL vmlinux 0xeed7b2de fscrypt_ioctl_get_nonce +EXPORT_SYMBOL_GPL vmlinux 0xeedd987e phy_10gbit_features_array +EXPORT_SYMBOL_GPL vmlinux 0xeede21ed ip6_route_input_lookup +EXPORT_SYMBOL_GPL vmlinux 0xeedfcec3 task_work_run +EXPORT_SYMBOL_GPL vmlinux 0xeee4ae06 device_register +EXPORT_SYMBOL_GPL vmlinux 0xeee5075a vfs_getxattr_alloc +EXPORT_SYMBOL_GPL vmlinux 0xeee667d3 fpregs_assert_state_consistent +EXPORT_SYMBOL_GPL vmlinux 0xeeec2f49 iommu_fwspec_free +EXPORT_SYMBOL_GPL vmlinux 0xeef14c82 icc_node_del +EXPORT_SYMBOL_GPL vmlinux 0xef1f6e23 apei_resources_request +EXPORT_SYMBOL_GPL vmlinux 0xef220723 dev_pm_opp_add +EXPORT_SYMBOL_GPL vmlinux 0xef29fcdd clk_bulk_put +EXPORT_SYMBOL_GPL vmlinux 0xef464c28 getboottime64 +EXPORT_SYMBOL_GPL vmlinux 0xef6c3f70 round_jiffies_up_relative +EXPORT_SYMBOL_GPL vmlinux 0xef70eb7e ring_buffer_iter_advance +EXPORT_SYMBOL_GPL vmlinux 0xef83fbc9 ethnl_cable_test_free +EXPORT_SYMBOL_GPL vmlinux 0xef8a590a skb_gso_validate_network_len +EXPORT_SYMBOL_GPL vmlinux 0xef8b17dd cpufreq_unregister_governor +EXPORT_SYMBOL_GPL vmlinux 0xef8fc95f kvm_async_pf_task_wait_schedule +EXPORT_SYMBOL_GPL vmlinux 0xef909887 skb_append_pagefrags +EXPORT_SYMBOL_GPL vmlinux 0xef92ef33 btree_last +EXPORT_SYMBOL_GPL vmlinux 0xefa2c27d register_tracepoint_module_notifier +EXPORT_SYMBOL_GPL vmlinux 0xefbe0e4c kernfs_find_and_get_ns +EXPORT_SYMBOL_GPL vmlinux 0xefbfcb1f crypto_larval_alloc +EXPORT_SYMBOL_GPL vmlinux 0xefc71227 arizona_request_irq +EXPORT_SYMBOL_GPL vmlinux 0xefdbfc1d nvdimm_volatile_region_create +EXPORT_SYMBOL_GPL vmlinux 0xefeafcf1 edac_has_mcs +EXPORT_SYMBOL_GPL vmlinux 0xf002dbda pci_epf_destroy +EXPORT_SYMBOL_GPL vmlinux 0xf00ff916 ethnl_cable_test_amplitude +EXPORT_SYMBOL_GPL vmlinux 0xf03bf857 xfrm_state_mtu +EXPORT_SYMBOL_GPL vmlinux 0xf04429b4 acpi_bus_get_status_handle +EXPORT_SYMBOL_GPL vmlinux 0xf0460cb7 add_to_page_cache_lru +EXPORT_SYMBOL_GPL vmlinux 0xf0696401 acpi_pci_detect_ejectable +EXPORT_SYMBOL_GPL vmlinux 0xf07e9790 spi_new_device +EXPORT_SYMBOL_GPL vmlinux 0xf08050c4 rhashtable_walk_start_check +EXPORT_SYMBOL_GPL vmlinux 0xf0854df3 devlink_port_param_driverinit_value_set +EXPORT_SYMBOL_GPL vmlinux 0xf0910075 sfp_bus_del_upstream +EXPORT_SYMBOL_GPL vmlinux 0xf0a0439c acpi_get_pci_dev +EXPORT_SYMBOL_GPL vmlinux 0xf0d2e945 perf_aux_output_flag +EXPORT_SYMBOL_GPL vmlinux 0xf0d478c7 list_lru_add +EXPORT_SYMBOL_GPL vmlinux 0xf0de7806 wakeup_source_unregister +EXPORT_SYMBOL_GPL vmlinux 0xf0f51ce3 rdev_clear_badblocks +EXPORT_SYMBOL_GPL vmlinux 0xf12cfe63 rio_mport_send_doorbell +EXPORT_SYMBOL_GPL vmlinux 0xf12f8179 call_switchdev_blocking_notifiers +EXPORT_SYMBOL_GPL vmlinux 0xf1321f79 bpf_prog_add +EXPORT_SYMBOL_GPL vmlinux 0xf1361941 pci_vpd_find_tag +EXPORT_SYMBOL_GPL vmlinux 0xf16bb8ae xfrm_audit_state_delete +EXPORT_SYMBOL_GPL vmlinux 0xf16e0400 ata_bmdma_dumb_qc_prep +EXPORT_SYMBOL_GPL vmlinux 0xf184d189 kernel_power_off +EXPORT_SYMBOL_GPL vmlinux 0xf187111f dma_release_channel +EXPORT_SYMBOL_GPL vmlinux 0xf189adb7 regulator_set_drvdata +EXPORT_SYMBOL_GPL vmlinux 0xf1950794 handle_mm_fault +EXPORT_SYMBOL_GPL vmlinux 0xf19cc8b7 ip6_sk_dst_lookup_flow +EXPORT_SYMBOL_GPL vmlinux 0xf1b31314 delayacct_on +EXPORT_SYMBOL_GPL vmlinux 0xf1b4fc25 cpuidle_get_driver +EXPORT_SYMBOL_GPL vmlinux 0xf1cd8929 kvm_read_and_reset_apf_flags +EXPORT_SYMBOL_GPL vmlinux 0xf1d8cffb rio_mport_read_config_8 +EXPORT_SYMBOL_GPL vmlinux 0xf1f5ebdd usb_disable_ltm +EXPORT_SYMBOL_GPL vmlinux 0xf205f11d input_class +EXPORT_SYMBOL_GPL vmlinux 0xf206bea9 crypto_aes_set_key +EXPORT_SYMBOL_GPL vmlinux 0xf21e1f9b disable_percpu_irq +EXPORT_SYMBOL_GPL vmlinux 0xf2494363 virtqueue_kick_prepare +EXPORT_SYMBOL_GPL vmlinux 0xf260a131 input_ff_event +EXPORT_SYMBOL_GPL vmlinux 0xf2612d60 devm_gpiod_get +EXPORT_SYMBOL_GPL vmlinux 0xf2824108 aead_register_instance +EXPORT_SYMBOL_GPL vmlinux 0xf2927f05 ip_tunnel_lookup +EXPORT_SYMBOL_GPL vmlinux 0xf2967796 ring_buffer_record_on +EXPORT_SYMBOL_GPL vmlinux 0xf2b0311b wakeup_source_remove +EXPORT_SYMBOL_GPL vmlinux 0xf2b16046 pm_clk_runtime_resume +EXPORT_SYMBOL_GPL vmlinux 0xf2b33cb7 memory_cgrp_subsys_on_dfl_key +EXPORT_SYMBOL_GPL vmlinux 0xf2c1aa1e blk_queue_max_zone_append_sectors +EXPORT_SYMBOL_GPL vmlinux 0xf2c2b8f7 devlink_trap_report +EXPORT_SYMBOL_GPL vmlinux 0xf2c37b81 devfreq_cooling_unregister +EXPORT_SYMBOL_GPL vmlinux 0xf2e1f045 __hv_pkt_iter_next +EXPORT_SYMBOL_GPL vmlinux 0xf2ecf984 gpiochip_line_is_irq +EXPORT_SYMBOL_GPL vmlinux 0xf2ef0eda irq_chip_set_wake_parent +EXPORT_SYMBOL_GPL vmlinux 0xf2f50597 dax_iomap_fault +EXPORT_SYMBOL_GPL vmlinux 0xf30866f2 regmap_multi_reg_write_bypassed +EXPORT_SYMBOL_GPL vmlinux 0xf30a5502 cpufreq_enable_boost_support +EXPORT_SYMBOL_GPL vmlinux 0xf30c5b6f regmap_fields_read +EXPORT_SYMBOL_GPL vmlinux 0xf311e156 key_being_used_for +EXPORT_SYMBOL_GPL vmlinux 0xf31632e0 ezx_pcap_read +EXPORT_SYMBOL_GPL vmlinux 0xf31b3fd1 workqueue_set_max_active +EXPORT_SYMBOL_GPL vmlinux 0xf331236f btree_geo32 +EXPORT_SYMBOL_GPL vmlinux 0xf335923f serial8250_rpm_get_tx +EXPORT_SYMBOL_GPL vmlinux 0xf3457166 pci_generic_config_write +EXPORT_SYMBOL_GPL vmlinux 0xf346a859 crypto_register_algs +EXPORT_SYMBOL_GPL vmlinux 0xf34efe4d handle_untracked_irq +EXPORT_SYMBOL_GPL vmlinux 0xf352023f memory_cgrp_subsys_enabled_key +EXPORT_SYMBOL_GPL vmlinux 0xf355e4c9 devm_regulator_unregister_notifier +EXPORT_SYMBOL_GPL vmlinux 0xf3641313 tpm2_flush_context +EXPORT_SYMBOL_GPL vmlinux 0xf37e9f63 devm_regulator_get +EXPORT_SYMBOL_GPL vmlinux 0xf3808cb1 get_state_synchronize_rcu +EXPORT_SYMBOL_GPL vmlinux 0xf385aa55 crypto_hash_walk_first +EXPORT_SYMBOL_GPL vmlinux 0xf38da4bd devlink_port_type_ib_set +EXPORT_SYMBOL_GPL vmlinux 0xf396a38a debugfs_create_u32 +EXPORT_SYMBOL_GPL vmlinux 0xf3a37974 crypto_stats_akcipher_verify +EXPORT_SYMBOL_GPL vmlinux 0xf3b451ca kdb_poll_funcs +EXPORT_SYMBOL_GPL vmlinux 0xf3b7a70b udp_abort +EXPORT_SYMBOL_GPL vmlinux 0xf3b95d79 btree_remove +EXPORT_SYMBOL_GPL vmlinux 0xf3bc399b spi_take_timestamp_post +EXPORT_SYMBOL_GPL vmlinux 0xf3ca0930 __pci_epc_create +EXPORT_SYMBOL_GPL vmlinux 0xf3efe430 vring_create_virtqueue +EXPORT_SYMBOL_GPL vmlinux 0xf3effd36 genphy_c45_restart_aneg +EXPORT_SYMBOL_GPL vmlinux 0xf411c611 pcie_update_link_speed +EXPORT_SYMBOL_GPL vmlinux 0xf4299100 trace_event_buffer_commit +EXPORT_SYMBOL_GPL vmlinux 0xf44157d7 _copy_mc_to_iter +EXPORT_SYMBOL_GPL vmlinux 0xf45367ef synth_event_create +EXPORT_SYMBOL_GPL vmlinux 0xf454b648 class_for_each_device +EXPORT_SYMBOL_GPL vmlinux 0xf45b056b bsg_unregister_queue +EXPORT_SYMBOL_GPL vmlinux 0xf45f8ca2 sysfs_create_bin_file +EXPORT_SYMBOL_GPL vmlinux 0xf4646afe device_get_phy_mode +EXPORT_SYMBOL_GPL vmlinux 0xf4689d50 linkmode_set_pause +EXPORT_SYMBOL_GPL vmlinux 0xf479c294 shash_register_instance +EXPORT_SYMBOL_GPL vmlinux 0xf485d7a6 ring_buffer_swap_cpu +EXPORT_SYMBOL_GPL vmlinux 0xf492c5d6 wm831x_device_shutdown +EXPORT_SYMBOL_GPL vmlinux 0xf4998976 apei_get_debugfs_dir +EXPORT_SYMBOL_GPL vmlinux 0xf49cd6c3 ip6_route_lookup +EXPORT_SYMBOL_GPL vmlinux 0xf4ad8d35 pin_user_pages_fast_only +EXPORT_SYMBOL_GPL vmlinux 0xf4af35c2 rcu_gp_is_normal +EXPORT_SYMBOL_GPL vmlinux 0xf4b17e8b skb_segment_list +EXPORT_SYMBOL_GPL vmlinux 0xf4c254ce usb_unpoison_urb +EXPORT_SYMBOL_GPL vmlinux 0xf4cbbe68 ata_pci_shutdown_one +EXPORT_SYMBOL_GPL vmlinux 0xf4da47d9 spi_sync_locked +EXPORT_SYMBOL_GPL vmlinux 0xf4da71b3 public_key_verify_signature +EXPORT_SYMBOL_GPL vmlinux 0xf4f69d1f clk_hw_unregister_gate +EXPORT_SYMBOL_GPL vmlinux 0xf4fedd11 device_match_fwnode +EXPORT_SYMBOL_GPL vmlinux 0xf504003a firmware_request_cache +EXPORT_SYMBOL_GPL vmlinux 0xf50e911e copy_reserved_iova +EXPORT_SYMBOL_GPL vmlinux 0xf532ffa2 thermal_zone_get_zone_by_name +EXPORT_SYMBOL_GPL vmlinux 0xf53ddff2 icc_node_add +EXPORT_SYMBOL_GPL vmlinux 0xf54bd49b lcm +EXPORT_SYMBOL_GPL vmlinux 0xf54c1fb6 crypto_alloc_kpp +EXPORT_SYMBOL_GPL vmlinux 0xf54e0034 iommu_dev_enable_feature +EXPORT_SYMBOL_GPL vmlinux 0xf553318d cpuidle_pause_and_lock +EXPORT_SYMBOL_GPL vmlinux 0xf55e21b7 regulator_unregister_supply_alias +EXPORT_SYMBOL_GPL vmlinux 0xf55f75f8 bpf_prog_inc +EXPORT_SYMBOL_GPL vmlinux 0xf562a5fc fat_search_long +EXPORT_SYMBOL_GPL vmlinux 0xf58a1ea4 ata_sff_drain_fifo +EXPORT_SYMBOL_GPL vmlinux 0xf598c8fa ncsi_register_dev +EXPORT_SYMBOL_GPL vmlinux 0xf5a3ba99 linear_range_values_in_range +EXPORT_SYMBOL_GPL vmlinux 0xf5a691cd invalidate_bh_lrus +EXPORT_SYMBOL_GPL vmlinux 0xf5d7eb5a register_ftrace_export +EXPORT_SYMBOL_GPL vmlinux 0xf5ea3197 dax_attribute_group +EXPORT_SYMBOL_GPL vmlinux 0xf5ebd910 regulator_get_exclusive +EXPORT_SYMBOL_GPL vmlinux 0xf5f370e0 async_schedule_node +EXPORT_SYMBOL_GPL vmlinux 0xf616ba96 l3mdev_fib_table_rcu +EXPORT_SYMBOL_GPL vmlinux 0xf6230e49 fpregs_mark_activate +EXPORT_SYMBOL_GPL vmlinux 0xf62a8821 da9052_disable_irq +EXPORT_SYMBOL_GPL vmlinux 0xf6467bd5 regulator_set_bypass_regmap +EXPORT_SYMBOL_GPL vmlinux 0xf652d563 spi_async +EXPORT_SYMBOL_GPL vmlinux 0xf65461f8 lwtunnel_valid_encap_type_attr +EXPORT_SYMBOL_GPL vmlinux 0xf6615b31 rt_mutex_timed_lock +EXPORT_SYMBOL_GPL vmlinux 0xf663ee2f pcap_adc_sync +EXPORT_SYMBOL_GPL vmlinux 0xf67d0f82 scsi_get_vpd_page +EXPORT_SYMBOL_GPL vmlinux 0xf6979ef8 sk_msg_memcopy_from_iter +EXPORT_SYMBOL_GPL vmlinux 0xf6a28554 region_intersects +EXPORT_SYMBOL_GPL vmlinux 0xf6a94ee5 pinctrl_utils_add_config +EXPORT_SYMBOL_GPL vmlinux 0xf6ab8689 __devm_spi_alloc_controller +EXPORT_SYMBOL_GPL vmlinux 0xf6afbe3e cgroup_path_ns +EXPORT_SYMBOL_GPL vmlinux 0xf6b16b2c xdp_attachment_setup +EXPORT_SYMBOL_GPL vmlinux 0xf6b3f602 scsi_flush_work +EXPORT_SYMBOL_GPL vmlinux 0xf6b5fd6c device_add_groups +EXPORT_SYMBOL_GPL vmlinux 0xf6b84519 ata_link_abort +EXPORT_SYMBOL_GPL vmlinux 0xf6be08cc devm_regulator_unregister +EXPORT_SYMBOL_GPL vmlinux 0xf6bf8bba pci_common_swizzle +EXPORT_SYMBOL_GPL vmlinux 0xf6c71a25 cper_severity_str +EXPORT_SYMBOL_GPL vmlinux 0xf6c8dc62 cpu_hotplug_enable +EXPORT_SYMBOL_GPL vmlinux 0xf6c9228c sbitmap_queue_wake_all +EXPORT_SYMBOL_GPL vmlinux 0xf6ca2963 bpf_trace_run1 +EXPORT_SYMBOL_GPL vmlinux 0xf6df174d dev_pm_genpd_set_performance_state +EXPORT_SYMBOL_GPL vmlinux 0xf6e593cc bus_get_kset +EXPORT_SYMBOL_GPL vmlinux 0xf6e6616c sched_trace_rq_avg_rt +EXPORT_SYMBOL_GPL vmlinux 0xf6e772c3 irq_bypass_unregister_producer +EXPORT_SYMBOL_GPL vmlinux 0xf6e874f5 ata_timing_merge +EXPORT_SYMBOL_GPL vmlinux 0xf6f16c56 rcu_barrier_tasks +EXPORT_SYMBOL_GPL vmlinux 0xf6fa12cf usb_anchor_urb +EXPORT_SYMBOL_GPL vmlinux 0xf721847c bpf_prog_create +EXPORT_SYMBOL_GPL vmlinux 0xf722dd28 crypto_req_done +EXPORT_SYMBOL_GPL vmlinux 0xf72728fb housekeeping_affine +EXPORT_SYMBOL_GPL vmlinux 0xf729a9d0 disk_part_iter_init +EXPORT_SYMBOL_GPL vmlinux 0xf73902fe usb_put_hcd +EXPORT_SYMBOL_GPL vmlinux 0xf73cef5d pci_iomap_wc_range +EXPORT_SYMBOL_GPL vmlinux 0xf74137eb device_get_next_child_node +EXPORT_SYMBOL_GPL vmlinux 0xf7455c16 input_event_to_user +EXPORT_SYMBOL_GPL vmlinux 0xf749debc md5_zero_message_hash +EXPORT_SYMBOL_GPL vmlinux 0xf74bb274 mod_delayed_work_on +EXPORT_SYMBOL_GPL vmlinux 0xf74e7c93 jump_label_rate_limit +EXPORT_SYMBOL_GPL vmlinux 0xf767ca35 fixed_percpu_data +EXPORT_SYMBOL_GPL vmlinux 0xf777212d spi_bus_unlock +EXPORT_SYMBOL_GPL vmlinux 0xf7849c2c pinctrl_find_and_add_gpio_range +EXPORT_SYMBOL_GPL vmlinux 0xf7a2687e user_free_preparse +EXPORT_SYMBOL_GPL vmlinux 0xf7b13fb3 pm_runtime_forbid +EXPORT_SYMBOL_GPL vmlinux 0xf7bb9f18 blk_mq_unquiesce_queue +EXPORT_SYMBOL_GPL vmlinux 0xf7bc95b0 devlink_fmsg_pair_nest_start +EXPORT_SYMBOL_GPL vmlinux 0xf7bdce62 ip_tunnel_ctl +EXPORT_SYMBOL_GPL vmlinux 0xf7c5151e genphy_c45_aneg_done +EXPORT_SYMBOL_GPL vmlinux 0xf7d961d8 clk_hw_unregister_composite +EXPORT_SYMBOL_GPL vmlinux 0xf7e6f1a4 cpufreq_dbs_governor_exit +EXPORT_SYMBOL_GPL vmlinux 0xf80db0d7 gpiod_get_index_optional +EXPORT_SYMBOL_GPL vmlinux 0xf8132acb scsi_ioctl_block_when_processing_errors +EXPORT_SYMBOL_GPL vmlinux 0xf82f3657 work_on_cpu +EXPORT_SYMBOL_GPL vmlinux 0xf834c26d housekeeping_test_cpu +EXPORT_SYMBOL_GPL vmlinux 0xf841e61d ata_scsi_ioctl +EXPORT_SYMBOL_GPL vmlinux 0xf8441920 kernel_read_file +EXPORT_SYMBOL_GPL vmlinux 0xf8486664 xhci_dbg_trace +EXPORT_SYMBOL_GPL vmlinux 0xf84d6692 iomap_readahead +EXPORT_SYMBOL_GPL vmlinux 0xf84ed30c phy_gbit_all_ports_features +EXPORT_SYMBOL_GPL vmlinux 0xf8590e32 device_match_name +EXPORT_SYMBOL_GPL vmlinux 0xf86cc226 task_cgroup_path +EXPORT_SYMBOL_GPL vmlinux 0xf87704fb lwtunnel_cmp_encap +EXPORT_SYMBOL_GPL vmlinux 0xf87ee834 net_dm_hw_report +EXPORT_SYMBOL_GPL vmlinux 0xf880cf6b sk_psock_destroy +EXPORT_SYMBOL_GPL vmlinux 0xf8814f95 bus_sort_breadthfirst +EXPORT_SYMBOL_GPL vmlinux 0xf881c165 mnt_clone_write +EXPORT_SYMBOL_GPL vmlinux 0xf881cecd load_fixmap_gdt +EXPORT_SYMBOL_GPL vmlinux 0xf897a4c3 virtio_add_status +EXPORT_SYMBOL_GPL vmlinux 0xf8a4551b bus_get_device_klist +EXPORT_SYMBOL_GPL vmlinux 0xf8a786c9 dev_pm_opp_remove_table +EXPORT_SYMBOL_GPL vmlinux 0xf8b1ee19 wm5110_i2c_regmap +EXPORT_SYMBOL_GPL vmlinux 0xf8b699c6 iommu_sva_unbind_device +EXPORT_SYMBOL_GPL vmlinux 0xf8bc1ffc led_trigger_unregister +EXPORT_SYMBOL_GPL vmlinux 0xf8bc326c dm_internal_resume +EXPORT_SYMBOL_GPL vmlinux 0xf8c20371 hwpoison_filter +EXPORT_SYMBOL_GPL vmlinux 0xf8c3315b spi_mem_exec_op +EXPORT_SYMBOL_GPL vmlinux 0xf8d9b231 spi_mem_dirmap_write +EXPORT_SYMBOL_GPL vmlinux 0xf8f3a0fb ata_ratelimit +EXPORT_SYMBOL_GPL vmlinux 0xf8f41df8 dev_attr_link_power_management_policy +EXPORT_SYMBOL_GPL vmlinux 0xf8fe3986 pat_pfn_immune_to_uc_mtrr +EXPORT_SYMBOL_GPL vmlinux 0xf8ff732a pci_epc_get_features +EXPORT_SYMBOL_GPL vmlinux 0xf9165624 regulator_put +EXPORT_SYMBOL_GPL vmlinux 0xf91ab2ed __tracepoint_arm_event +EXPORT_SYMBOL_GPL vmlinux 0xf9265f2f crypto_register_scomps +EXPORT_SYMBOL_GPL vmlinux 0xf932015f __raw_notifier_call_chain +EXPORT_SYMBOL_GPL vmlinux 0xf93e4ba8 crypto_aead_decrypt +EXPORT_SYMBOL_GPL vmlinux 0xf9513fa8 ata_platform_remove_one +EXPORT_SYMBOL_GPL vmlinux 0xf95322f4 kthread_parkme +EXPORT_SYMBOL_GPL vmlinux 0xf955e9c5 bprintf +EXPORT_SYMBOL_GPL vmlinux 0xf96b91db ip4_datagram_release_cb +EXPORT_SYMBOL_GPL vmlinux 0xf974af88 devres_destroy +EXPORT_SYMBOL_GPL vmlinux 0xf99cba9a irq_domain_pop_irq +EXPORT_SYMBOL_GPL vmlinux 0xf9a054b5 __round_jiffies +EXPORT_SYMBOL_GPL vmlinux 0xf9b470e8 generic_device_group +EXPORT_SYMBOL_GPL vmlinux 0xf9c09595 screen_glyph +EXPORT_SYMBOL_GPL vmlinux 0xf9c68775 nf_route +EXPORT_SYMBOL_GPL vmlinux 0xf9ce2912 serial8250_em485_config +EXPORT_SYMBOL_GPL vmlinux 0xf9d94ecb dma_buf_begin_cpu_access +EXPORT_SYMBOL_GPL vmlinux 0xf9f5e45b synth_event_trace_array +EXPORT_SYMBOL_GPL vmlinux 0xf9f63262 mmu_interval_notifier_insert +EXPORT_SYMBOL_GPL vmlinux 0xf9fc462f shash_no_setkey +EXPORT_SYMBOL_GPL vmlinux 0xfa078c9d dm_internal_suspend_noflush +EXPORT_SYMBOL_GPL vmlinux 0xfa0a8896 acpi_dev_resource_io +EXPORT_SYMBOL_GPL vmlinux 0xfa19aeaa iommu_device_sysfs_remove +EXPORT_SYMBOL_GPL vmlinux 0xfa1eb910 unregister_syscore_ops +EXPORT_SYMBOL_GPL vmlinux 0xfa29bd39 __rio_local_write_config_8 +EXPORT_SYMBOL_GPL vmlinux 0xfa2d8902 fat_fill_super +EXPORT_SYMBOL_GPL vmlinux 0xfa324d4a tty_port_tty_hangup +EXPORT_SYMBOL_GPL vmlinux 0xfa349688 aer_recover_queue +EXPORT_SYMBOL_GPL vmlinux 0xfa35044a alternatives_patched +EXPORT_SYMBOL_GPL vmlinux 0xfa3b56f8 seg6_do_srh_inline +EXPORT_SYMBOL_GPL vmlinux 0xfa3f88b9 fsverity_file_open +EXPORT_SYMBOL_GPL vmlinux 0xfa666974 queue_work_node +EXPORT_SYMBOL_GPL vmlinux 0xfa690589 netdev_cmd_to_name +EXPORT_SYMBOL_GPL vmlinux 0xfa6c211e netdev_is_rx_handler_busy +EXPORT_SYMBOL_GPL vmlinux 0xfa7e6360 platform_get_resource +EXPORT_SYMBOL_GPL vmlinux 0xfa98a6cd nvdimm_security_setup_events +EXPORT_SYMBOL_GPL vmlinux 0xfaa0223e dm_set_target_max_io_len +EXPORT_SYMBOL_GPL vmlinux 0xfab287bc rio_local_set_device_id +EXPORT_SYMBOL_GPL vmlinux 0xfab30dc0 mdio_bus_exit +EXPORT_SYMBOL_GPL vmlinux 0xfab53ed9 pinctrl_gpio_can_use_line +EXPORT_SYMBOL_GPL vmlinux 0xfaba60cc io_cgrp_subsys +EXPORT_SYMBOL_GPL vmlinux 0xfac67e09 __strp_unpause +EXPORT_SYMBOL_GPL vmlinux 0xfad9c827 kill_dax +EXPORT_SYMBOL_GPL vmlinux 0xfadcbd2c sbitmap_queue_show +EXPORT_SYMBOL_GPL vmlinux 0xfae4c384 iommu_present +EXPORT_SYMBOL_GPL vmlinux 0xfb01373f mmput +EXPORT_SYMBOL_GPL vmlinux 0xfb11fa9a dev_pm_opp_init_cpufreq_table +EXPORT_SYMBOL_GPL vmlinux 0xfb23d74d fwnode_create_software_node +EXPORT_SYMBOL_GPL vmlinux 0xfb32b30f ring_buffer_read_prepare_sync +EXPORT_SYMBOL_GPL vmlinux 0xfb3dfe8a page_reporting_unregister +EXPORT_SYMBOL_GPL vmlinux 0xfb468944 alloc_empty_file +EXPORT_SYMBOL_GPL vmlinux 0xfb468d16 devlink_region_snapshot_id_get +EXPORT_SYMBOL_GPL vmlinux 0xfb5d00b5 tcp_twsk_destructor +EXPORT_SYMBOL_GPL vmlinux 0xfb6a5979 irq_gc_mask_set_bit +EXPORT_SYMBOL_GPL vmlinux 0xfb6c2217 fib_add_nexthop +EXPORT_SYMBOL_GPL vmlinux 0xfb6eedf9 power_group_name +EXPORT_SYMBOL_GPL vmlinux 0xfb70967f ata_sff_freeze +EXPORT_SYMBOL_GPL vmlinux 0xfb7c3847 fuse_dev_alloc_install +EXPORT_SYMBOL_GPL vmlinux 0xfb8000ae __intel_scu_ipc_register +EXPORT_SYMBOL_GPL vmlinux 0xfb921e00 hvpci_block_ops +EXPORT_SYMBOL_GPL vmlinux 0xfb93bf44 driver_register +EXPORT_SYMBOL_GPL vmlinux 0xfbbd41ca no_action +EXPORT_SYMBOL_GPL vmlinux 0xfbcb876d __class_create +EXPORT_SYMBOL_GPL vmlinux 0xfbd0a398 uart_console_write +EXPORT_SYMBOL_GPL vmlinux 0xfbd25714 irq_domain_xlate_onetwocell +EXPORT_SYMBOL_GPL vmlinux 0xfbd4c8b5 param_ops_bool_enable_only +EXPORT_SYMBOL_GPL vmlinux 0xfbda4581 bpf_offload_dev_netdev_unregister +EXPORT_SYMBOL_GPL vmlinux 0xfbdfc558 hrtimer_start_range_ns +EXPORT_SYMBOL_GPL vmlinux 0xfbe162c3 ata_timing_compute +EXPORT_SYMBOL_GPL vmlinux 0xfbee72a2 device_find_child +EXPORT_SYMBOL_GPL vmlinux 0xfbee7646 class_dev_iter_exit +EXPORT_SYMBOL_GPL vmlinux 0xfbf73a2c edac_pci_add_device +EXPORT_SYMBOL_GPL vmlinux 0xfbffd601 net_prio_cgrp_subsys_on_dfl_key +EXPORT_SYMBOL_GPL vmlinux 0xfc03d97a page_is_ram +EXPORT_SYMBOL_GPL vmlinux 0xfc0797e4 free_iova_fast +EXPORT_SYMBOL_GPL vmlinux 0xfc097da0 edac_pci_create_generic_ctl +EXPORT_SYMBOL_GPL vmlinux 0xfc14bb2e dm_get_dev_t +EXPORT_SYMBOL_GPL vmlinux 0xfc16adfa ata_sff_error_handler +EXPORT_SYMBOL_GPL vmlinux 0xfc17a7b3 pinctrl_select_default_state +EXPORT_SYMBOL_GPL vmlinux 0xfc19bc45 crypto_dh_encode_key +EXPORT_SYMBOL_GPL vmlinux 0xfc201b66 sprint_oid +EXPORT_SYMBOL_GPL vmlinux 0xfc297310 regulator_notifier_call_chain +EXPORT_SYMBOL_GPL vmlinux 0xfc298053 rtnl_link_unregister +EXPORT_SYMBOL_GPL vmlinux 0xfc3b4246 acpi_bus_update_power +EXPORT_SYMBOL_GPL vmlinux 0xfc46c0ac devm_platform_get_and_ioremap_resource +EXPORT_SYMBOL_GPL vmlinux 0xfc4ed61c iommu_device_unregister +EXPORT_SYMBOL_GPL vmlinux 0xfc5756d3 param_set_bool_enable_only +EXPORT_SYMBOL_GPL vmlinux 0xfc642f04 ip6_redirect +EXPORT_SYMBOL_GPL vmlinux 0xfc69695e split_page +EXPORT_SYMBOL_GPL vmlinux 0xfc783dde blk_mq_flush_busy_ctxs +EXPORT_SYMBOL_GPL vmlinux 0xfc928213 regmap_field_free +EXPORT_SYMBOL_GPL vmlinux 0xfcaa1642 wm8997_patch +EXPORT_SYMBOL_GPL vmlinux 0xfcc1edd3 memory_block_size_bytes +EXPORT_SYMBOL_GPL vmlinux 0xfcc4663f tty_port_link_device +EXPORT_SYMBOL_GPL vmlinux 0xfcf5e5e5 relay_buf_full +EXPORT_SYMBOL_GPL vmlinux 0xfcf727f7 acpi_subsys_prepare +EXPORT_SYMBOL_GPL vmlinux 0xfd0a2041 phy_configure +EXPORT_SYMBOL_GPL vmlinux 0xfd170092 usb_control_msg +EXPORT_SYMBOL_GPL vmlinux 0xfd3ba6e1 acpi_device_update_power +EXPORT_SYMBOL_GPL vmlinux 0xfd3e9889 fat_get_dotdot_entry +EXPORT_SYMBOL_GPL vmlinux 0xfd49a7d0 pinctrl_remove_gpio_range +EXPORT_SYMBOL_GPL vmlinux 0xfd544afa kgdb_unregister_io_module +EXPORT_SYMBOL_GPL vmlinux 0xfd6d2058 gpiod_set_array_value_cansleep +EXPORT_SYMBOL_GPL vmlinux 0xfd6d6c6f crypto_register_acomps +EXPORT_SYMBOL_GPL vmlinux 0xfd7243c7 erst_disable +EXPORT_SYMBOL_GPL vmlinux 0xfd7c6bb0 devm_clk_register +EXPORT_SYMBOL_GPL vmlinux 0xfdb54434 scsi_internal_device_block_nowait +EXPORT_SYMBOL_GPL vmlinux 0xfdbd7a17 crypto_get_attr_type +EXPORT_SYMBOL_GPL vmlinux 0xfdc9e282 usb_find_alt_setting +EXPORT_SYMBOL_GPL vmlinux 0xfdcb8178 kick_process +EXPORT_SYMBOL_GPL vmlinux 0xfdce3125 shash_ahash_update +EXPORT_SYMBOL_GPL vmlinux 0xfdec02e5 device_remove_groups +EXPORT_SYMBOL_GPL vmlinux 0xfdee8f58 iommu_dev_has_feature +EXPORT_SYMBOL_GPL vmlinux 0xfdf637af dm_table_device_name +EXPORT_SYMBOL_GPL vmlinux 0xfdf67ad8 crypto_hash_walk_done +EXPORT_SYMBOL_GPL vmlinux 0xfe0e7cd3 apei_exec_post_unmap_gars +EXPORT_SYMBOL_GPL vmlinux 0xfe2345bd usb_deregister_dev +EXPORT_SYMBOL_GPL vmlinux 0xfe31c6a4 __tracepoint_block_bio_complete +EXPORT_SYMBOL_GPL vmlinux 0xfe3a9dde __tcp_bpf_recvmsg +EXPORT_SYMBOL_GPL vmlinux 0xfe476039 ktime_get_resolution_ns +EXPORT_SYMBOL_GPL vmlinux 0xfe54e72f md_run +EXPORT_SYMBOL_GPL vmlinux 0xfe5990f6 fuse_dev_free +EXPORT_SYMBOL_GPL vmlinux 0xfe69325f percpu_ref_resurrect +EXPORT_SYMBOL_GPL vmlinux 0xfe8cdb84 ring_buffer_alloc_read_page +EXPORT_SYMBOL_GPL vmlinux 0xfe8fc30f ip6_dst_lookup_tunnel +EXPORT_SYMBOL_GPL vmlinux 0xfe990052 gpio_free +EXPORT_SYMBOL_GPL vmlinux 0xfeb33e95 unix_inq_len +EXPORT_SYMBOL_GPL vmlinux 0xfecebdc5 __ip6_local_out +EXPORT_SYMBOL_GPL vmlinux 0xfed25170 device_move +EXPORT_SYMBOL_GPL vmlinux 0xfee9e155 usb_sg_cancel +EXPORT_SYMBOL_GPL vmlinux 0xfeeecd05 apei_read +EXPORT_SYMBOL_GPL vmlinux 0xfef9f737 sysfs_remove_mount_point +EXPORT_SYMBOL_GPL vmlinux 0xff05fa13 vring_interrupt +EXPORT_SYMBOL_GPL vmlinux 0xff0e40d3 watchdog_init_timeout +EXPORT_SYMBOL_GPL vmlinux 0xff189ec9 tpm_chip_start +EXPORT_SYMBOL_GPL vmlinux 0xff1bda74 mddev_resume +EXPORT_SYMBOL_GPL vmlinux 0xff1e67b9 setup_APIC_eilvt +EXPORT_SYMBOL_GPL vmlinux 0xff1f39a8 __synth_event_gen_cmd_start +EXPORT_SYMBOL_GPL vmlinux 0xff291ecf clk_unregister_divider +EXPORT_SYMBOL_GPL vmlinux 0xff3f1ccd device_store_int +EXPORT_SYMBOL_GPL vmlinux 0xff5a8cfe cn_del_callback +EXPORT_SYMBOL_GPL vmlinux 0xff64ad45 regulator_list_voltage_linear +EXPORT_SYMBOL_GPL vmlinux 0xff7412bb phy_remove_lookup +EXPORT_SYMBOL_GPL vmlinux 0xff81487d gpiod_remove_lookup_table +EXPORT_SYMBOL_GPL vmlinux 0xff8e74e2 arch_haltpoll_enable +EXPORT_SYMBOL_GPL vmlinux 0xff915e96 iommu_device_sysfs_add +EXPORT_SYMBOL_GPL vmlinux 0xff96dff7 sk_msg_trim +EXPORT_SYMBOL_GPL vmlinux 0xff9b9923 sched_setattr +EXPORT_SYMBOL_GPL vmlinux 0xff9dc245 iommu_report_device_fault +EXPORT_SYMBOL_GPL vmlinux 0xff9e23d1 hugetlb_cgrp_subsys_on_dfl_key +EXPORT_SYMBOL_GPL vmlinux 0xffae8e8b nsecs_to_jiffies +EXPORT_SYMBOL_GPL vmlinux 0xffb981a8 wait_for_stable_page +EXPORT_SYMBOL_GPL vmlinux 0xffc6b6e6 shmem_file_setup +EXPORT_SYMBOL_GPL vmlinux 0xffd12914 syscon_regmap_lookup_by_phandle +EXPORT_SYMBOL_GPL vmlinux 0xffef1597 pinctrl_register_and_init +EXPORT_SYMBOL_GPL vmlinux 0xfff57f65 proc_mkdir_data +EXPORT_SYMBOL_GPL vmlinux 0xfffb24b0 inet_csk_compat_setsockopt +EXPORT_SYMBOL_GPL vmlinux 0xffffa019 lwtunnel_xmit +FIRMWARE_LOADER_PRIVATE EXPORT_SYMBOL_GPL 0xd3ae7756 fw_fallback_config vmlinux +MCB EXPORT_SYMBOL_GPL 0x072c8916 mcb_get_resource drivers/mcb/mcb +MCB EXPORT_SYMBOL_GPL 0x19c95af9 mcb_release_bus drivers/mcb/mcb +MCB EXPORT_SYMBOL_GPL 0x50dee8d8 mcb_free_dev drivers/mcb/mcb +MCB EXPORT_SYMBOL_GPL 0x52c5e551 mcb_unregister_driver drivers/mcb/mcb +MCB EXPORT_SYMBOL_GPL 0x58e6a166 mcb_alloc_dev drivers/mcb/mcb +MCB EXPORT_SYMBOL_GPL 0x659fbd05 mcb_bus_get drivers/mcb/mcb +MCB EXPORT_SYMBOL_GPL 0x701b9b16 mcb_get_irq drivers/mcb/mcb +MCB EXPORT_SYMBOL_GPL 0x756ac172 mcb_bus_add_devices drivers/mcb/mcb +MCB EXPORT_SYMBOL_GPL 0x8ec93b0a mcb_device_register drivers/mcb/mcb +MCB EXPORT_SYMBOL_GPL 0x9429581e __mcb_register_driver drivers/mcb/mcb +MCB EXPORT_SYMBOL_GPL 0xa5a6be01 mcb_alloc_bus drivers/mcb/mcb +MCB EXPORT_SYMBOL_GPL 0xd2a1e879 mcb_bus_put drivers/mcb/mcb +MCB EXPORT_SYMBOL_GPL 0xe7edf948 chameleon_parse_cells drivers/mcb/mcb +MCB EXPORT_SYMBOL_GPL 0xeb2c8905 mcb_release_mem drivers/mcb/mcb +MCB EXPORT_SYMBOL_GPL 0xfb966bff mcb_request_mem drivers/mcb/mcb --- linux-azure-5.8-5.8.0.orig/debian.azure/abi/5.8.0-1029.31/amd64/azure.compiler +++ linux-azure-5.8-5.8.0/debian.azure/abi/5.8.0-1029.31/amd64/azure.compiler @@ -0,0 +1 @@ +GCC: (Ubuntu 10.2.0-13ubuntu1) 10.2.0 --- linux-azure-5.8-5.8.0.orig/debian.azure/abi/5.8.0-1029.31/amd64/azure.modules +++ linux-azure-5.8-5.8.0/debian.azure/abi/5.8.0-1029.31/amd64/azure.modules @@ -0,0 +1,2346 @@ +3w-9xxx +3w-sas +53c700 +6lowpan +8021q +8139cp +8139too +8250_dw +8250_exar +8250_lpss +8250_men_mcb +8250_mid +842 +842_compress +842_decompress +88pg86x +88pm805 +88pm80x +9p +9pnet +9pnet_rdma +9pnet_virtio +BusLogic +a100u2w +aacraid +abituguru +abituguru3 +acer-wireless +acpi_ipmi +acpi_pad +acpi_power_meter +acpiphp_ibm +acquirewdt +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 +ad7314 +ad7414 +ad7418 +ad9389b +adc128d818 +adcxx +adfs +adiantum +adin +adm1021 +adm1025 +adm1026 +adm1029 +adm1031 +adm1177 +adm9240 +adp5061 +ads7828 +ads7871 +adt7310 +adt7410 +adt7411 +adt7462 +adt7470 +adt7475 +adt7x10 +adummy +adv7170 +adv7175 +adv7180 +adv7183 +adv7343 +adv7393 +adv7511-v4l2 +adv7604 +adv7842 +advansys +advantechwdt +aegis128 +aegis128-aesni +aesni-intel +af_alg +af_key +af_packet_diag +affs +ah4 +ah6 +aha1740 +ahci +ahci_platform +aic79xx +aic7xxx +aic94xx +ak881x +alcor_pci +algif_aead +algif_hash +algif_rng +algif_skcipher +alim1535_wdt +alim7101_wdt +altera-msgdma +altera_jtaguart +altera_ps2 +altera_uart +am53c974 +ambassador +amc6821 +amd-rng +amd64_edac_mod +amd_energy +amdgpu +amdtee +amlogic-gxl-crypto +ansi_cprng +anubis +apds9802als +apds990x +apex +apple-mfi-fastcharge +applesmc +applespi +appletalk +applicom +ar9331 +arc-rawmode +arc-rimi +arc4 +arc_ps2 +arc_uart +arcmsr +arcnet +arcxcnn_bl +arizona-i2c +arizona-spi +arp_tables +arpt_mangle +arptable_filter +as370-hwmon +asb100 +asc7621 +ashmem_linux +aspeed-pwm-tacho +aspeed-video +ast +asus-wireless +asus_atk0110 +asym_tpm +async_memcpy +async_pq +async_raid6_recov +async_tx +async_xor +at24 +atlantic +atm +atmel-ecc +atmel-i2c +atmel-sha204a +atmtcp +atomisp +atomisp-gc0310 +atomisp-gc2235 +atomisp-libmsrlisthelper +atomisp-lm3554 +atomisp-mt9m114 +atomisp-ov2680 +atomisp-ov2722 +atomisp-ov5693 +atomisp_gmin_platform +atp +atp870u +atxp1 +aufs +auth_rpcgss +authenc +authencesn +autofs4 +ax25 +ax88796b +axi-fan-control +axp20x +axp20x-i2c +b44 +b53_common +b53_mdio +b53_mmap +b53_serdes +b53_spi +b53_srab +bareudp +batman-adv +bcache +bcm-phy-lib +bcm-sf2 +bcm54140 +bcm590xx +bcm7xxx +bcma +bcmsysport +bd9571mwv +bd9571mwv-regulator +bd99954-charger +be2iscsi +be2net +befs +bfa +bfq +bfs +bh1770glc +binder_linux +binfmt_misc +blake2b_generic +blake2s-x86_64 +blake2s_generic +blocklayoutdriver +blowfish-x86_64 +blowfish_common +blowfish_generic +bnx2 +bnx2x +bnxt_en +bonding +bpfilter +br2684 +br_netfilter +brd +bridge +bsd_comp +bt819 +bt856 +bt866 +btrfs +c_can +c_can_pci +c_can_platform +ca8210 +cachefiles +cadence_wdt +cafe_ccic +caif +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-j1939 +can-raw +capmode +capsule-loader +cast5-avx-x86_64 +cast5_generic +cast6-avx-x86_64 +cast6_generic +cast_common +catapult +ccm +ccp +ccp-crypto +cdc-acm +cdns-csi2rx +cdns-csi2tx +cec +ceph +cfag12864b +cfag12864bfb +cfb +cfbcopyarea +cfbfillrect +cfbimgblt +cfg80211 +ch +chacha-x86_64 +chacha20poly1305 +chacha_generic +charlcd +chcr +chnl_net +cifs +clip +clk-max9485 +clk-si5341 +clk-si544 +cls_basic +cls_bpf +cls_cgroup +cls_flow +cls_flower +cls_fw +cls_matchall +cls_route +cls_rsvp +cls_rsvp6 +cls_tcindex +cls_u32 +cmac +cnic +coda +com20020 +com20020-pci +com90io +com90xx +cops +cordic +coretemp +cortina +counter +cpcihp_generic +cpcihp_zt5550 +cpu5wdt +cpuid +cpuidle-haltpoll +cramfs +crc-itu-t +crc32-pclmul +crc32_generic +crc4 +crc64 +crc7 +crc8 +crct10dif-pclmul +cryptd +crypto_engine +crypto_safexcel +crypto_simd +crypto_user +cryptoloop +cs3308 +cs5345 +cs53l32a +cs89x0 +csiostor +ct82c710 +curve25519-generic +curve25519-x86_64 +cuse +cw2015_battery +cx25840 +cxgb +cxgb3 +cxgb4 +cxgb4vf +cyclades +da9052-hwmon +da9052_wdt +da9063 +da9063_wdt +dax_hmem +dc395x +dca +dccp +dccp_diag +dccp_ipv4 +dccp_ipv6 +decnet +defxx +dell-smbios +dell-smm-hwmon +dell-wmi-descriptor +dell-wmi-led +des3_ede-x86_64 +des_generic +diag +dl2k +dlci +dlink-dir685-touchkeys +dlm +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-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 +dme1737 +dmx3191d +dn_rtmsg +dnet +dp83822 +dp83869 +dp83tc811 +dpt_i2o +dptf_power +drbd +drivetemp +drm +drm_kms_helper +drm_mipi_dbi +drm_panel_orientation_quirks +drm_ttm_helper +drm_vram_helper +ds1621 +ds1682 +ds620 +dsa_core +dummy +dummy-irq +dw-edma +dw-edma-pcie +dw-i3c-master +dw_dmac_core +dw_dmac_pci +dw_wdt +dwc-xlgmac +e100 +e1000 +e1000e +e752x_edac +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 +ec_bhf +ec_sys +ecc +ecdh_generic +echainiv +ecrdsa_generic +ee1004 +eeprom_93cx6 +efa +efi-pstore +efi_test +efibc +efs +em_canid +em_cmp +em_ipset +em_ipt +em_meta +em_nbyte +em_text +em_u32 +emc1403 +emc2103 +emc6w201 +ems_pci +enclosure +ene_ir +eni +enic +eql +erofs +esas2r +esp4 +esp4_offload +esp6 +esp6_offload +esp_scsi +essiv +et131x +ethoc +eurotechwdt +evbug +exfat +f2fs +f71805f +f71808e_wdt +f71882fg +f75375s +f81601 +failover +fam15h_power +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_sys_fops +fb_tinylcd +fb_tls8204 +fb_uc1611 +fb_uc1701 +fb_upd161704 +fb_watterott +fbtft +fcrypt +fdomain +fdomain_pci +fealnx +ff-memless +fieldbus_dev +fintek-cir +firestream +fixed +fm10k +fore_200e +fou +fou6 +freevxfs +fscache +fschmd +fsl_linflexuart +fsl_lpuart +ftsteutates +g760a +g762 +garp +gasket +gdth +genet +geneve +genwqe_card +gfs2 +ghash-clmulni-intel +gl518sm +gl520sm +glue_helper +gma500_gfx +gnss +gpd-pocket-fan +gpio-104-dio-48e +gpio-104-idi-48 +gpio-104-idio-16 +gpio-adp5588 +gpio-aggregator +gpio-amd-fch +gpio-amd8111 +gpio-amdpt +gpio-arizona +gpio-bd9571mwv +gpio-da9052 +gpio-dwapb +gpio-exar +gpio-f7188x +gpio-generic +gpio-gpio-mm +gpio-ich +gpio-it87 +gpio-janz-ttl +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-mockup +gpio-pca953x +gpio-pcf857x +gpio-pci-idio-16 +gpio-pcie-idio-24 +gpio-pisosr +gpio-rdc321x +gpio-sch +gpio-sch311x +gpio-siox +gpio-tpic2810 +gpio-tps65086 +gpio-tps65912 +gpio-tqmx86 +gpio-vibra +gpio-vx855 +gpio-wcove +gpio-winbond +gpio-wm831x +gpio-wm8994 +gpio-ws16c48 +gpio-xra1403 +gpio_keys_polled +gpu-sched +grace +gre +gs1662 +gtp +gve +habanalabs +hamachi +hangcheck-timer +hci +hd44780 +hdlc +hdlc_cisco +hdlc_fr +hdlc_ppp +hdlc_raw +hdlc_raw_eth +hdlc_x25 +he +hfs +hfsplus +hi311x +hid +hid-cougar +hid-generic +hid-glorious +hid-hyperv +hid-ite +hid-jabra +hid-led +hid-macally +hid-maltron +hid-mf +hid-nti +hid-redragon +hid-sensor-custom +hid-sensor-hub +hid-steam +hid-udraw-ps3 +hid-viewsonic +hid-wiimote +hih6130 +hinic +hio +hmc6352 +horizon +hpfs +hpsa +hptiop +hsr +hsu_dma +htc-pasic3 +hv_balloon +hv_netvsc +hv_sock +hv_utils +hwmon-vid +hwpoison-inject +hx8357d +hyperv-keyboard +hyperv_fb +i10nm_edac +i2c-algo-bit +i2c-algo-pca +i2c-ali1535 +i2c-ali1563 +i2c-ali15x3 +i2c-amd756 +i2c-amd756-s4882 +i2c-amd8111 +i2c-cbus-gpio +i2c-core +i2c-designware-core +i2c-designware-pci +i2c-designware-platform +i2c-dev +i2c-gpio +i2c-i801 +i2c-isch +i2c-ismt +i2c-mlxcpld +i2c-multi-instantiate +i2c-mux +i2c-mux-ltc4306 +i2c-nforce2 +i2c-nforce2-s4985 +i2c-nvidia-gpu +i2c-ocores +i2c-parport +i2c-pca-platform +i2c-scmi +i2c-simtec +i2c-sis5595 +i2c-sis630 +i2c-sis96x +i2c-smbus +i2c-stub +i2c-taos-evm +i2c-via +i2c-viapro +i2c-xiic +i3000_edac +i3200_edac +i3c +i3c-master-cdns +i40e +i5000_edac +i5100_edac +i5400_edac +i5500_temp +i5k_amb +i6300esb +i7300_edac +i7core_edac +i82975x_edac +i915 +iTCO_vendor_support +iTCO_wdt +iavf +ib700wdt +ib_cm +ib_core +ib_ipoib +ib_iser +ib_isert +ib_mthca +ib_srp +ib_umad +ib_uverbs +ibmaem +ibmasm +ibmasr +ibmpex +ice +icp +ics932s401 +idma64 +idt77252 +idxd +ie31200_edac +ie6xx_wdt +ieee802154 +ieee802154_6lowpan +ieee802154_socket +ifb +ifcvf +ife +igb +igbvf +igc +ila +ili9225 +ili9341 +ili9486 +img-ascii-lcd +imm +ina209 +ina2xx +ina3221 +inet_diag +initio +input-polldev +intel-cstate +intel-hid +intel-ish-ipc +intel-ishtp +intel-ishtp-hid +intel-ishtp-loader +intel-lpss +intel-lpss-acpi +intel-lpss-pci +intel-rng +intel-rst +intel-smartconnect +intel-uncore-frequency +intel-wmi-sbl-fw-update +intel-wmi-thunderbolt +intel_bxt_pmic_thermal +intel_bxtwc_tmu +intel_chtdc_ti_pwrbtn +intel_int0002_vgpio +intel_ips +intel_mid_powerbtn +intel_mid_thermal +intel_mrfld_pwrbtn +intel_pch_thermal +intel_pmc_bxt +intel_powerclamp +intel_punit_ipc +intel_qat +intel_quark_i2c_gpio +intel_scu_ipcutil +intel_scu_pltdrv +intel_sgx +intel_soc_dts_iosf +intel_soc_dts_thermal +intel_soc_pmic_bxtwc +intel_soc_pmic_chtdc_ti +intel_soc_pmic_mrfld +intel_telemetry_core +intel_telemetry_debugfs +intel_telemetry_pltdrv +intelfb +ioatdma +iommu_v2 +ionic +ip6_gre +ip6_tables +ip6_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_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_wlc +ip_vs_wrr +ip_vti +ipack +ipcomp +ipcomp6 +iphase +ipip +ipmi_devintf +ipmi_msghandler +ipmi_poweroff +ipmi_si +ipmi_ssif +ipmi_watchdog +ipr +ips +ipt_CLUSTERIP +ipt_ECN +ipt_REJECT +ipt_SYNPROXY +ipt_ah +ipt_rpfilter +iptable_filter +iptable_mangle +iptable_nat +iptable_raw +iptable_security +ipu3-imgu +ipvlan +ipvtap +iqs269a +iqs62x +iqs62x-keys +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-xmp-decoder +irq-madera +iscsi_boot_sysfs +iscsi_ibft +iscsi_target_mod +iscsi_tcp +isicom +isl29003 +isl29020 +isofs +isst_if_common +isst_if_mbox_msr +isst_if_mbox_pci +isst_if_mmio +it87 +it8712f_wdt +it87_wdt +ite-cir +iw_cm +ixgb +ixgbe +ixgbevf +janz-cmodio +janz-ican3 +jc42 +jfs +jme +joydev +jsm +k10temp +k8temp +kafs +kcm +keywrap +khazad +kheaders +kmem +kpc2000 +kpc2000_i2c +kpc2000_spi +kpc_dma +ks0108 +ks0127 +ksz8795 +ksz8795_spi +ksz9477 +ksz9477_i2c +ksz9477_spi +ksz_common +kvaser_pci +kvaser_pciefd +kvm +kvm-amd +kvm-intel +kyber-iosched +l2tp_core +l2tp_debugfs +l2tp_eth +l2tp_ip +l2tp_ip6 +l2tp_netlink +l2tp_ppp +lan743x +lan9303-core +lan9303_i2c +lan9303_mdio +lanai +lantiq +lantiq_gswip +lapb +lapbether +lattice-ecp3-config +lec +led-class +leds-apu +leds-gpio +leds-lm3532 +leds-lm36274 +leds-mlxreg +leds-ti-lmu-common +leds-tps6105x +ledtrig-activity +ledtrig-audio +ledtrig-netdev +ledtrig-pattern +lg-laptop +libahci +libahci_platform +libarc4 +libblake2s +libblake2s-generic +libceph +libchacha +libchacha20poly1305 +libcrc32c +libcurve25519 +libcurve25519-generic +libdes +libiscsi +libiscsi_tcp +libpoly1305 +libsas +lineage-pem +linear +ll_temac +llc +llc2 +lm363x-regulator +lm63 +lm70 +lm73 +lm75 +lm77 +lm78 +lm80 +lm83 +lm85 +lm87 +lm90 +lm92 +lm93 +lm95234 +lm95241 +lm95245 +lockd +locktorture +lp +lp3943 +lp873x +lpc_ich +lpc_sch +lpfc +lru_cache +lrw +lt3651-charger +ltc2945 +ltc2947-core +ltc2947-i2c +ltc2947-spi +ltc2990 +ltc4151 +ltc4215 +ltc4222 +ltc4245 +ltc4260 +ltc4261 +ltpc +lz4 +lz4hc +lz4hc_compress +m2m-deinterlace +m52790 +mac-celtic +mac-centeuro +mac-croatian +mac-cyrillic +mac-gaelic +mac-greek +mac-iceland +mac-inuit +mac-roman +mac-romanian +mac-turkish +mac80211 +mac802154 +mac802154_hwsim +machzwd +macsec +macvlan +macvtap +madera +madera-i2c +madera-spi +marvell10g +matrix-keymap +max1111 +max14577 +max16065 +max1619 +max1668 +max197 +max3100 +max31722 +max31730 +max31790 +max63xx_wdt +max6621 +max6639 +max6642 +max6650 +max6697 +max77693 +max77826-regulator +max8907 +mc +mc13783-adc +mc13xxx-core +mc13xxx-i2c +mc13xxx-spi +mcam-core +mcb +mcb-lpc +mcb-pci +mce-inject +mcp3021 +mcr20a +md-cluster +md4 +mdev +mdio +mdio-bcm-unimac +mdio-i2c +mdio-mscc-miim +mdio-mvusb +mdio-xpcs +megaraid +megaraid_mbox +megaraid_mm +megaraid_sas +mei +mei-me +mei_hdcp +mei_phy +mei_wdt +memory-notifier-error-inject +men_z135_uart +mena21_wdt +menf21bmc +menf21bmc_hwmon +menf21bmc_wdt +menz69_wdt +mhi +mi0283qt +michael_mic +microchip_t1 +microread +microread_mei +mii +minix +mip6 +ml86v7667 +mlx-platform +mlx4_core +mlx4_en +mlx4_ib +mlx5_core +mlx5_ib +mlx_wdt +mlxfw +mlxreg-fan +mlxreg-hotplug +mlxreg-io +mlxsw_core +mlxsw_i2c +mlxsw_minimal +mlxsw_pci +mlxsw_spectrum +mlxsw_switchib +mlxsw_switchx2 +most_cdev +most_core +most_i2c +most_net +most_video +moxa +mp2629 +mp8859 +mpls_gso +mpls_iptunnel +mpls_router +mpoa +mpt3sas +mptbase +mptctl +mptfc +mptsas +mptscsih +mptspi +mrp +mscc_ocelot_common +msdos +msp3400 +msr +mt6360-core +mt7530 +multipath +mux-adg792a +mux-adgs1408 +mux-core +mux-gpio +mvmdio +mvsas +mvumi +mxm-wmi +mxser +myrb +myrs +n5pf +n_gsm +n_hdlc +n_tracerouter +n_tracesink +nbd +nci +nci_spi +nci_uart +nct6683 +nct6775 +nct7802 +nct7904 +nd_virtio +net_failover +netconsole +netdevsim +netlink_diag +netrom +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_flow_table_ipv4 +nf_flow_table_ipv6 +nf_log_arp +nf_log_bridge +nf_log_common +nf_log_ipv4 +nf_log_ipv6 +nf_log_netdev +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 +nfnetlink +nfnetlink_acct +nfnetlink_cthelper +nfnetlink_cttimeout +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_counter +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_objref +nft_osf +nft_queue +nft_quota +nft_redir +nft_reject +nft_reject_bridge +nft_reject_inet +nft_reject_ipv4 +nft_reject_ipv6 +nft_socket +nft_synproxy +nft_tproxy +nft_tunnel +nft_xfrm +nhc_dest +nhc_fragment +nhc_hop +nhc_ipv6 +nhc_mobility +nhc_routing +nhc_udp +nhpoly1305 +nhpoly1305-avx2 +nhpoly1305-sse2 +ni903x_wdt +nic7018_wdt +nicstar +nilfs2 +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 +nosy +notifier-error-inject +nozomi +npcm750-pwm-fan +ns +nsh +ntb +ntb_hw_idt +ntb_hw_intel +ntb_hw_switchtec +ntb_netdev +ntb_transport +ntc_thermistor +ntfs +nuvoton-cir +nv_tco +nvme-fabrics +nvme-fc +nvme-rdma +nvme-tcp +nvmet +nvmet-fc +nvmet-tcp +nvram +nxp-tja11xx +objagg +ocfs2 +ocfs2_dlm +ocfs2_dlmfs +ocfs2_nodemanager +ocfs2_stack_o2cb +ocfs2_stack_user +ocfs2_stackglue +of_xilinx_wdt +ofb +omfs +opa_vnic +openvswitch +oprofile +ov7670 +overlay +p8022 +padlock-aes +padlock-sha +panel +panel-raspberrypi-touchscreen +parkbd +parman +parport +parport_ax88796 +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_pdc2027x +pata_pdc202xx_old +pata_piccolo +pata_platform +pata_radisys +pata_rdc +pata_rz1000 +pata_sch +pata_serverworks +pata_sil680 +pata_sl82c105 +pata_triflex +pata_via +pc300too +pc87360 +pc87413_wdt +pc87427 +pcbc +pcengines-apuv2 +pcf50633 +pcf50633-adc +pcf50633-gpio +pcf8591 +pci-pf-stub +pci-stub +pci200syn +pcips2 +pcmcia_core +pcmcia_rsrc +pcrypt +pcwd_pci +pdc_adma +peak_pci +peak_pciefd +peaq-wmi +phantom +phonet +phy-intel-emmc +phylink +pi433 +pinctrl-cannonlake +pinctrl-cedarfork +pinctrl-denverton +pinctrl-icelake +pinctrl-intel +pinctrl-jasperlake +pinctrl-lewisburg +pinctrl-lynxpoint +pinctrl-madera +pinctrl-mcp23s08 +pinctrl-mcp23s08_i2c +pinctrl-mcp23s08_spi +pinctrl-tigerlake +pkcs7_test_key +pkcs8_key_parser +pktcdvd +pktgen +plx_dma +plx_pci +pm-notifier-error-inject +pm80xx +pmcraid +pn544 +pn544_mei +pn_pep +pnd2_edac +poly1305-x86_64 +poly1305_generic +powr1220 +ppa +ppdev +ppp_async +ppp_deflate +ppp_mppe +ppp_synctty +pppoatm +pppoe +pppox +pptp +pretimeout_panic +ps2-gpio +ps2mult +psample +psnap +pstore_blk +pstore_zone +ptp_clockmatrix +ptp_idt82p33 +ptp_kvm +ptp_vmw +pulse8-cec +punit_atom_debug +pvpanic +qat_dh895xcc +qat_dh895xccvf +qcom-cpr +qcom-wled +qcom_glink +qcom_glink_rpm +qla1280 +qla2xxx +qla4xxx +qlge +qnx4 +qnx6 +qrtr +qrtr-mhi +qrtr-smd +qrtr-tun +qt1050 +quota_tree +quota_v1 +quota_v2 +qxl +r8169 +radeon +raid0 +raid1 +raid10 +raid456 +raid6_pq +raid_class +rainshadow-cec +ramoops +rapl +raw +raw_diag +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-behold +rc-behold-columbus +rc-budget-ci-old +rc-cec +rc-cinergy +rc-cinergy-1400 +rc-core +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-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-kworld-315u +rc-kworld-pc150u +rc-kworld-plus-tv-analog +rc-leadtek-y04g0051 +rc-lme2510 +rc-loopback +rc-manli +rc-medion-x10 +rc-medion-x10-digitainer +rc-medion-x10-or2x +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-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-tango +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-dvd +rc-zx-irdec +rcuperf +rdc321x-southbridge +rdma_cm +rdma_ucm +rds +rds_rdma +rds_tcp +realtek +realtek-smi +reed_solomon +regmap-i2c +regmap-slimbus +reiserfs +repaper +reset-ti-syscon +retu-mfd +retu_wdt +rfc1051 +rfc1201 +rfkill-gpio +rio-scan +rio_cm +rio_mport_cdev +rionet +rmd128 +rmd160 +rmd256 +rmd320 +rnbd-client +rnbd-server +rockchip +rocket +romfs +rose +rp2 +rpcrdma +rpcsec_gss_krb5 +rpmsg_char +rpmsg_core +rt5033 +rtc-ab-eoz9 +rtc-ftrtc010 +rtc-pcf85363 +rtc-rv3028 +rtc-sd3078 +rtrs-client +rtrs-core +rtrs-server +rts5208 +rtsx_pci +rxrpc +s2io +saa6588 +saa6752hs +saa7110 +saa7115 +saa7127 +saa717x +saa7185 +salsa20_generic +sata_dwc_460ex +sb1000 +sb_edac +sbc60xxwdt +sbc_epx_c3 +sbc_fitpc2_wdt +sbni +sbs-manager +sc1200wdt +sc16is7xx +sch311x_wdt +sch5627 +sch5636 +sch56xx-common +sch_atm +sch_cake +sch_cbq +sch_cbs +sch_choke +sch_codel +sch_drr +sch_dsmark +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_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_iscsi +scsi_transport_sas +scsi_transport_spi +scsi_transport_srp +sctp +sctp_diag +seco-cec +seed +serial_ir +serio_raw +serpent-avx-x86_64 +serpent-avx2 +serpent-sse2-x86_64 +serpent_generic +serport +ses +sf-pdma +sfc +sfc-falcon +sfp +sha1-ssse3 +sha256-ssse3 +sha3_generic +sha512-ssse3 +shiftfs +sht15 +sht21 +sht3x +shtc1 +sim710 +siox-bus-gpio +siox-core +sir_ir +sis-agp +sis5595 +sit +siw +sja1000 +sja1000_isa +sja1000_platform +sja1105 +skfp +skge +skx_edac +sky2 +sky81452 +slcan +slg51000-regulator +slicoss +slim-qcom-ctrl +slimbus +slip +sm3_generic +sm4_generic +sm501 +sm501fb +sm750fb +smartpqi +smc +smc_diag +smm665 +smsc37b787_wdt +smsc47b397 +smsc47m1 +smsc47m192 +snic +softdog +solos-pci +sony-btf-mpx +soundwire-bus +sp5100_tco +sparse-keymap +spi-altera +spi-amd +spi-axi-spi-engine +spi-bitbang +spi-butterfly +spi-cadence +spi-dw +spi-dw-mmio +spi-dw-pci +spi-gpio +spi-lm70llp +spi-loopback-test +spi-mux +spi-mxic +spi-nxp-fspi +spi-oc-tiny +spi-pxa2xx-pci +spi-pxa2xx-platform +spi-sc18is602 +spi-sifive +spi-slave-system-control +spi-slave-time +spi-tle62x0 +spi-xcomm +spi-zynqmp-gqspi +spidev +spl +sprd_serial +ssb +st +st-mipid02 +st7586 +st7735r +stex +stp +streebog_generic +stts751 +sundance +suni +sunrpc +surface3-wmi +surface3_power +switchtec +sym53c8xx +synclink +synclink_gt +synclinkmp +syscopyarea +sysfillrect +sysimgblt +system76_acpi +sysv +tag_8021q +tag_ar9331 +tag_brcm +tag_dsa +tag_edsa +tag_gswip +tag_ksz +tag_lan9303 +tag_mtk +tag_ocelot +tag_qca +tag_sja1105 +tag_trailer +tap +target_core_file +target_core_iblock +target_core_mod +target_core_pscsi +target_core_user +tc358743 +tc654 +tc74 +tcm_loop +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 +tcrypt +tda7432 +tda9840 +tda9950 +tea +tea6415c +tea6420 +tee +tg3 +tgr192 +thmc50 +ths7303 +ths8200 +thunderbolt +thunderbolt-net +ti-lmu +ti_am335x_tscadc +tifm_7xx1 +tifm_core +timeriomem-rng +tipc +tlclk +tls +tlv320aic23b +tmp102 +tmp103 +tmp108 +tmp401 +tmp421 +tmp513 +torture +tpci200 +tpm_key_parser +tps6105x +tps65010 +tps6507x +tps65086 +tps65132-regulator +tps65912-i2c +tqmx86 +tqmx86_wdt +ts_bm +ts_fsm +ts_kmp +tsi721_mport +tsl2550 +ttm +ttynull +tunnel4 +tunnel6 +tvaudio +tvp514x +tvp5150 +tvp7002 +tw2804 +tw9903 +tw9906 +tw9910 +twofish-avx-x86_64 +twofish-x86_64 +twofish-x86_64-3way +twofish_common +twofish_generic +uPD60620 +uPD98402 +uacce +uartlite +ubuntu-host +uda1342 +udf +udp_diag +ufs +uhid +uio +uio_aec +uio_cif +uio_dmem_genirq +uio_hv_generic +uio_mf624 +uio_netx +uio_pci_generic +uio_pdrv_genirq +uio_pruss +uio_sercos3 +unix_diag +upd64031a +upd64083 +userio +usnic_verbs +v4l2-dv-timings +v4l2-fwnode +v4l2-mem2mem +v4l2-tpg +vboxvideo +vcan +vdpa +veth +vfio_mdev +vhost +vhost_iotlb +vhost_net +vhost_scsi +vhost_vdpa +vhost_vsock +via-camera +via-cputemp +via-rng +via686a +via_wdt +viafb +vicodec +video +video-i2c +videobuf-core +videobuf-vmalloc +videobuf2-common +videobuf2-dma-contig +videobuf2-dma-sg +videobuf2-memops +videobuf2-v4l2 +videobuf2-vmalloc +videodev +vim2m +vimc +virt-dma +virtio-gpu +virtio-rng +virtio_blk +virtio_crypto +virtio_input +virtio_mem +virtio_net +virtio_pmem +virtio_rpmsg_bus +virtio_scsi +virtio_vdpa +virtiofs +vitesse +vitesse-vsc73xx-core +vitesse-vsc73xx-platform +vitesse-vsc73xx-spi +vivid +vkms +vmac +vme_ca91cx42 +vme_fake +vme_tsi148 +vme_vmivme7805 +vmw_vsock_virtio_transport +vmw_vsock_virtio_transport_common +vp27smpx +vport-geneve +vport-gre +vport-vxlan +vpx3220 +vrf +vringh +vsock +vsock_diag +vsock_loopback +vsockmon +vt1211 +vt6655_stage +vt8231 +vx855 +vxcan +vxge +w83627ehf +w83627hf +w83627hf_wdt +w83773g +w83781d +w83791d +w83792d +w83793 +w83795 +w83877f_wdt +w83977f_wdt +w83l785ts +w83l786ng +wafer5823wdt +wanxl +wcd934x +wd719x +wdat_wdt +wdt_pci +wfx +winbond-cir +wireguard +wm831x-hwmon +wm831x_wdt +wm8739 +wm8775 +wm8994 +wmi +wmi-bmof +wp512 +x25 +x25_asy +x38_edac +x86_pkg_temp_thermal +x_tables +xcbc +xfrm4_tunnel +xfrm6_tunnel +xfrm_algo +xfrm_interface +xfrm_ipcomp +xfrm_user +xfs +xgene-hwmon +xhci-plat-hcd +xiaomi-wmi +xilinx_emac +xilinx_sdfec +xlnx_vcu +xor +xr_usb_serial_common +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 +xxhash_generic +xz_dec_test +yellowfin +yenta_socket +z3fold +zatm +zavl +zcommon +zfs +ziirave_wdt +zlua +znvpair +zonefs +zram +zstd +zunicode --- linux-azure-5.8-5.8.0.orig/debian.azure/abi/5.8.0-1029.31/amd64/azure.retpoline +++ linux-azure-5.8-5.8.0/debian.azure/abi/5.8.0-1029.31/amd64/azure.retpoline @@ -0,0 +1 @@ +# retpoline v1.0 --- linux-azure-5.8-5.8.0.orig/debian.azure/abi/5.8.0-1029.31/fwinfo +++ linux-azure-5.8-5.8.0/debian.azure/abi/5.8.0-1029.31/fwinfo @@ -0,0 +1,724 @@ +firmware: advansys/3550.bin +firmware: advansys/38C0800.bin +firmware: advansys/38C1600.bin +firmware: advansys/mcode.bin +firmware: aic94xx-seq.fw +firmware: amdgpu/arcturus_asd.bin +firmware: amdgpu/arcturus_gpu_info.bin +firmware: amdgpu/arcturus_mec.bin +firmware: amdgpu/arcturus_mec2.bin +firmware: amdgpu/arcturus_rlc.bin +firmware: amdgpu/arcturus_sdma.bin +firmware: amdgpu/arcturus_sos.bin +firmware: amdgpu/arcturus_ta.bin +firmware: amdgpu/banks_k_2_smc.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/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/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/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_gpu_info.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_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_sos.bin +firmware: amdgpu/navi12_ta.bin +firmware: amdgpu/navi14_asd.bin +firmware: amdgpu/navi14_ce.bin +firmware: amdgpu/navi14_ce_wks.bin +firmware: amdgpu/navi14_gpu_info.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/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/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/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_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/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_gpu_info.bin +firmware: amdgpu/renoir_me.bin +firmware: amdgpu/renoir_mec.bin +firmware: amdgpu/renoir_mec2.bin +firmware: amdgpu/renoir_pfp.bin +firmware: amdgpu/renoir_rlc.bin +firmware: amdgpu/renoir_sdma.bin +firmware: amdgpu/renoir_vcn.bin +firmware: amdgpu/si58_mc.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/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/vega10_acg_smc.bin +firmware: amdgpu/vega10_asd.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: ast_dp501_fw.bin +firmware: atmsar11.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-e1h-7.13.15.0.fw +firmware: bnx2x/bnx2x-e2-7.13.15.0.fw +firmware: c218tunx.cod +firmware: c320tunx.cod +firmware: cavium/cnn55xx_se.fw +firmware: cbfw-3.2.5.1.bin +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: cyzfirm.bin +firmware: e100/d101m_ucode.bin +firmware: e100/d101s_ucode.bin +firmware: e100/d102e_ucode.bin +firmware: i915/bxt_dmc_ver1_07.bin +firmware: i915/bxt_guc_33.0.0.bin +firmware: i915/bxt_huc_2.0.0.bin +firmware: i915/cml_guc_33.0.0.bin +firmware: i915/cml_huc_4.0.0.bin +firmware: i915/cnl_dmc_ver1_07.bin +firmware: i915/ehl_guc_33.0.4.bin +firmware: i915/ehl_huc_9.0.0.bin +firmware: i915/glk_dmc_ver1_04.bin +firmware: i915/glk_guc_33.0.0.bin +firmware: i915/glk_huc_4.0.0.bin +firmware: i915/icl_dmc_ver1_09.bin +firmware: i915/icl_guc_33.0.0.bin +firmware: i915/icl_huc_9.0.0.bin +firmware: i915/kbl_dmc_ver1_04.bin +firmware: i915/kbl_guc_33.0.0.bin +firmware: i915/kbl_huc_4.0.0.bin +firmware: i915/skl_dmc_ver1_27.bin +firmware: i915/skl_guc_33.0.0.bin +firmware: i915/skl_huc_2.0.0.bin +firmware: i915/tgl_dmc_ver2_06.bin +firmware: i915/tgl_guc_35.2.0.bin +firmware: i915/tgl_huc_7.0.12.bin +firmware: intel/ice/ddp/ice.pkg +firmware: isi4608.bin +firmware: isi4616.bin +firmware: isi608.bin +firmware: isi608em.bin +firmware: isi616em.bin +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: mellanox/mlxsw_spectrum-13.2000.2714.mfa2 +firmware: mellanox/mlxsw_spectrum2-29.2000.2714.mfa2 +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: pca200e_ecd.bin2 +firmware: qat_895xcc.bin +firmware: qat_895xcc_mmp.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: 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: rp2.fw +firmware: rtl_nic/rtl8105e-1.fw +firmware: rtl_nic/rtl8106e-1.fw +firmware: rtl_nic/rtl8106e-2.fw +firmware: rtl_nic/rtl8107e-1.fw +firmware: rtl_nic/rtl8107e-2.fw +firmware: rtl_nic/rtl8125a-3.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-1.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: slicoss/gbdownload.sys +firmware: slicoss/gbrcvucode.sys +firmware: slicoss/oasisdownload.sys +firmware: slicoss/oasisrcvucode.sys +firmware: solos-FPGA.bin +firmware: solos-Firmware.bin +firmware: solos-db-FPGA.bin +firmware: tigon/tg3.bin +firmware: tigon/tg3_tso.bin +firmware: tigon/tg3_tso5.bin +firmware: v4l-cx231xx-avcore-01.fw +firmware: v4l-cx23885-avcore-01.fw +firmware: v4l-cx25840.fw +firmware: vxge/X3fw-pxe.ncf +firmware: vxge/X3fw.ncf +firmware: wd719x-risc.bin +firmware: wd719x-wcs.bin --- linux-azure-5.8-5.8.0.orig/debian.azure/changelog +++ linux-azure-5.8-5.8.0/debian.azure/changelog @@ -0,0 +1,54360 @@ +linux-azure (5.8.0-1030.32) groovy; urgency=medium + + * groovy/linux-azure: 5.8.0-1030.32 -proposed tracker (LP: #1923744) + + * power off stress test will hang on the TGL machines (LP: #1919930) + - [Config]: linux-azure: Annotate SND_SOC_SOF_HDA_ALWAYS_ENABLE_DMI_L1 + + * Groovy update: upstream stable patchset 2021-03-30 (LP: #1921960) + - [Config]: linux-azure: updateconfigs for KCMP + + * linux-azure: Enable CONFIG_FPGA_MGR_XILINX_SPI for Azure cloud kernel + (LP: #1922582) + - [Config] azure: CONFIG_FPGA_MGR_XILINX_SPI=m + + [ Ubuntu: 5.8.0-51.57 ] + + * groovy/linux: 5.8.0-51.57 -proposed tracker (LP: #1923754) + * CVE-2021-28375 + - misc: fastrpc: restrict user apps from sending kernel RPC messages + * CVE-2021-29646 + - tipc: better validate user input in tipc_nl_retrieve_key() + * SND_PCI_QUIRK for Clevo NH55RZQ and Intel NUC10 (LP: #1922759) + - ALSA: hda/realtek: Add quirk for Intel NUC 10 + - ALSA: hda/realtek: Add quirk for Clevo NH55RZQ + * CVE-2021-29650 + - Revert "netfilter: x_tables: Update remaining dereference to RCU" + - Revert "netfilter: x_tables: Switch synchronization to RCU" + - netfilter: x_tables: Use correct memory barriers. + * LRMv4: switch to signing nvidia modules via the Ubuntu Modules signing key + (LP: #1918134) + - [Packaging] dkms-build{,--nvidia-N} sync back from LRMv4 + * CVE-2021-29266 + - vhost-vdpa: fix use-after-free of v->config_ctx + * CVE-2021-29264 + - gianfar: fix jumbo packets+napi+rx overrun crash + * CVE-2021-29265 + - usbip: fix stub_dev usbip_sockfd_store() races leading to gpf + * Bcache bypasse writeback on caching device with fragmentation (LP: #1900438) + - bcache: consider the fragmentation when update the writeback rate + * Fix implicit declaration warnings for kselftests/memfd test on newer + releases (LP: #1910323) + - selftests/memfd: Fix implicit declaration warnings + * net/mlx5e: Add missing capability check for uplink follow (LP: #1921104) + - net/mlx5e: Add missing capability check for uplink follow + * [UBUNUT 21.04] s390/vtime: fix increased steal time accounting + (LP: #1921498) + - s390/vtime: fix increased steal time accounting + * Groovy update: upstream stable patchset 2021-03-30 (LP: #1921960) + - vmlinux.lds.h: add DWARF v5 sections + - debugfs: be more robust at handling improper input in debugfs_lookup() + - debugfs: do not attempt to create a new file before the filesystem is + initalized + - scsi: libsas: docs: Remove notify_ha_event() + - scsi: qla2xxx: Fix mailbox Ch erroneous error + - kdb: Make memory allocations more robust + - PCI: qcom: Use PHY_REFCLK_USE_PAD only for ipq8064 + - PCI: Decline to resize resources if boot config must be preserved + - virt: vbox: Do not use wait_event_interruptible when called from kernel + context + - bfq: Avoid false bfq queue merging + - ALSA: usb-audio: Fix PCM buffer allocation in non-vmalloc mode + - MIPS: vmlinux.lds.S: add missing PAGE_ALIGNED_DATA() section + - random: fix the RNDRESEEDCRNG ioctl + - ALSA: pcm: Call sync_stop at disconnection + - ALSA: pcm: Assure sync with the pending stop operation at suspend + - ALSA: pcm: Don't call sync_stop if it hasn't been stopped + - drm/i915/gt: One more flush for Baytrail clear residuals + - ath10k: Fix error handling in case of CE pipe init failure + - Bluetooth: btqcomsmd: Fix a resource leak in error handling paths in the + probe function + - Bluetooth: hci_uart: Fix a race for write_work scheduling + - Bluetooth: Fix initializing response id after clearing struct + - ARM: dts: exynos: correct PMIC interrupt trigger level on Artik 5 + - ARM: dts: exynos: correct PMIC interrupt trigger level on Monk + - ARM: dts: exynos: correct PMIC interrupt trigger level on Rinato + - ARM: dts: exynos: correct PMIC interrupt trigger level on Spring + - ARM: dts: exynos: correct PMIC interrupt trigger level on Arndale Octa + - ARM: dts: exynos: correct PMIC interrupt trigger level on Odroid XU3 family + - arm64: dts: exynos: correct PMIC interrupt trigger level on TM2 + - arm64: dts: exynos: correct PMIC interrupt trigger level on Espresso + - memory: mtk-smi: Fix PM usage counter unbalance in mtk_smi ops + - Bluetooth: hci_qca: Fix memleak in qca_controller_memdump + - arm64: dts: qcom: msm8916-samsung-a5u: Fix iris compatible + - net: stmmac: dwmac-meson8b: fix enabling the timing-adjustment clock + - bpf: Add bpf_patch_call_args prototype to include/linux/bpf.h + - bpf: Avoid warning when re-casting __bpf_call_base into __bpf_call_base_args + - arm64: dts: allwinner: A64: properly connect USB PHY to port 0 + - arm64: dts: allwinner: H6: properly connect USB PHY to port 0 + - arm64: dts: allwinner: Drop non-removable from SoPine/LTS SD card + - arm64: dts: allwinner: H6: Allow up to 150 MHz MMC bus frequency + - arm64: dts: allwinner: A64: Limit MMC2 bus frequency to 150 MHz + - cpufreq: brcmstb-avs-cpufreq: Free resources in error path + - cpufreq: brcmstb-avs-cpufreq: Fix resource leaks in ->remove() + - arm64: dts: rockchip: rk3328: Add clock_in_out property to gmac2phy node + - ACPICA: Fix exception code class checks + - usb: gadget: u_audio: Free requests only after callback + - arm64: dts: qcom: sdm845-db845c: Fix reset-pin of ov8856 node + - soc: ti: pm33xx: Fix some resource leak in the error handling paths of the + probe function + - staging: media: atomisp: Fix size_t format specifier in hmm_alloc() debug + statemenet + - Bluetooth: drop HCI device reference before return + - Bluetooth: Put HCI device if inquiry procedure interrupts + - memory: ti-aemif: Drop child node when jumping out loop + - ARM: dts: Configure missing thermal interrupt for 4430 + - usb: dwc2: Do not update data length if it is 0 on inbound transfers + - usb: dwc2: Abort transaction after errors with unknown reason + - usb: dwc2: Make "trimming xfer length" a debug message + - staging: rtl8723bs: wifi_regd.c: Fix incorrect number of regulatory rules + - ARM: dts: armada388-helios4: assign pinctrl to LEDs + - ARM: dts: armada388-helios4: assign pinctrl to each fan + - arm64: dts: armada-3720-turris-mox: rename u-boot mtd partition to + a53-firmware + - opp: Correct debug message in _opp_add_static_v2() + - Bluetooth: btusb: Fix memory leak in btusb_mtk_wmt_recv + - soc: qcom: ocmem: don't return NULL in of_get_ocmem + - arm64: dts: msm8916: Fix reserved and rfsa nodes unit address + - arm64: dts: meson: fix broken wifi node for Khadas VIM3L + - ARM: s3c: fix fiq for clang IAS + - ARM: at91: use proper asm syntax in pm_suspend + - ath10k: Fix suspicious RCU usage warning in + ath10k_wmi_tlv_parse_peer_stats_info() + - ath10k: Fix lockdep assertion warning in ath10k_sta_statistics + - soc: aspeed: snoop: Add clock control logic + - bpf_lru_list: Read double-checked variable once without lock + - ath9k: fix data bus crash when setting nf_override via debugfs + - ibmvnic: Set to CLOSED state even on error + - bnxt_en: reverse order of TX disable and carrier off + - xen/netback: fix spurious event detection for common event case + - net/mlx5e: Don't change interrupt moderation params when DIM is enabled + - net/mlx5e: Change interrupt moderation channel params also when channels are + closed + - net/mlx5e: Replace synchronize_rcu with synchronize_net + - net/mlx5e: kTLS, Use refcounts to free kTLS RX priv context + - net/mlx5: Disable devlink reload for multi port slave device + - net/mlx5: Disallow RoCE on multi port slave device + - net/mlx5: Disallow RoCE on lag device + - net/mlx5: Disable devlink reload for lag devices + - mac80211: fix potential overflow when multiplying to u32 integers + - libbpf: Ignore non function pointer member in struct_ops + - bpf: Fix an unitialized value in bpf_iter + - bpf, devmap: Use GFP_KERNEL for xdp bulk queue allocation + - bpf: Fix bpf_fib_lookup helper MTU check for SKB ctx + - tcp: fix SO_RCVLOWAT related hangs under mem pressure + - net: axienet: Handle deferred probe on clock properly + - cxgb4/chtls/cxgbit: Keeping the max ofld immediate data size same in cxgb4 + and ulds + - b43: N-PHY: Fix the update of coef for the PHY revision >= 3case + - bpf: Clear subreg_def for global function return values + - ibmvnic: add memory barrier to protect long term buffer + - ibmvnic: skip send_request_unmap for timeout reset + - net: dsa: felix: perform teardown in reverse order of setup + - net: phy: mscc: adding LCPLL reset to VSC8514 + - net: amd-xgbe: Reset the PHY rx data path when mailbox command timeout + - net: amd-xgbe: Fix NETDEV WATCHDOG transmit queue timeout warning + - net: amd-xgbe: Reset link when the link never comes back + - net: amd-xgbe: Fix network fluctuations when using 1G BELFUSE SFP + - net: mvneta: Remove per-cpu queue mapping for Armada 3700 + - tty: convert tty_ldisc_ops 'read()' function to take a kernel pointer + - tty: implement read_iter + - fbdev: aty: SPARC64 requires FB_ATY_CT + - drm/gma500: Fix error return code in psb_driver_load() + - gma500: clean up error handling in init + - drm/fb-helper: Add missed unlocks in setcmap_legacy() + - crypto: sun4i-ss - linearize buffers content must be kept + - crypto: sun4i-ss - fix kmap usage + - crypto: arm64/aes-ce - really hide slower algos when faster ones are enabled + - media: allegro: Fix use after free on error + - drm: rcar-du: Fix PM reference leak in rcar_cmm_enable() + - drm: rcar-du: Fix crash when using LVDS1 clock for CRTC + - drm: rcar-du: Fix the return check of of_parse_phandle and + of_find_device_by_node + - drm/amdgpu: Fix macro name _AMDGPU_TRACE_H_ in preprocessor if condition + - MIPS: c-r4k: Fix section mismatch for loongson2_sc_init + - MIPS: lantiq: Explicitly compare LTQ_EBU_PCC_ISTAT against 0 + - drm/virtio: make sure context is created in gem open + - media: ipu3-cio2: Build only for x86 + - media: i2c: ov5670: Fix PIXEL_RATE minimum value + - media: imx: Unregister csc/scaler only if registered + - media: imx: Fix csc/scaler unregister + - media: mtk-vcodec: fix error return code in vdec_vp9_decode() + - media: camss: missing error code in msm_video_register() + - media: vsp1: Fix an error handling path in the probe function + - media: em28xx: Fix use-after-free in em28xx_alloc_urbs + - media: media/pci: Fix memleak in empress_init + - media: tm6000: Fix memleak in tm6000_start_stream + - media: aspeed: fix error return code in aspeed_video_setup_video() + - ASoC: cs42l56: fix up error handling in probe + - ASoC: qcom: qdsp6: Move frontend AIFs to q6asm-dai + - evm: Fix memleak in init_desc + - crypto: bcm - Rename struct device_private to bcm_device_private + - sched/fair: Avoid stale CPU util_est value for schedutil in task dequeue + - drm/sun4i: tcon: fix inverted DCLK polarity + - media: imx7: csi: Fix regression for parallel cameras on i.MX6UL + - media: imx7: csi: Fix pad link validation + - MIPS: properly stop .eh_frame generation + - MIPS: Compare __SYNC_loongson3_war against 0 + - drm/tegra: Fix reference leak when pm_runtime_get_sync() fails + - drm/amdgpu: toggle on DF Cstate after finishing xgmi injection + - bsg: free the request before return error code + - drm/amd/display: Fix 10/12 bpc setup in DCE output bit depth reduction. + - drm/amd/display: Fix HDMI deep color output for DCE 6-11. + - media: software_node: Fix refcounts in software_node_get_next_child() + - media: lmedm04: Fix misuse of comma + - media: atomisp: Fix a buffer overflow in debug code + - media: qm1d1c0042: fix error return code in qm1d1c0042_init() + - media: cx25821: Fix a bug when reallocating some dma memory + - media: pxa_camera: declare variable when DEBUG is defined + - media: uvcvideo: Accept invalid bFormatIndex and bFrameIndex values + - sched/eas: Don't update misfit status if the task is pinned + - f2fs: compress: fix potential deadlock + - ASoC: SOF: Intel: hda: cancel D0i3 work during runtime suspend + - mtd: parser: imagetag: fix error codes in + bcm963xx_parse_imagetag_partitions() + - crypto: talitos - Work around SEC6 ERRATA (AES-CTR mode data size error) + - crypto: talitos - Fix ctr(aes) on SEC1 + - drm/nouveau: bail out of nouveau_channel_new if channel init fails + - mm: proc: Invalidate TLB after clearing soft-dirty page state + - ata: ahci_brcm: Add back regulators management + - ASoC: cpcap: fix microphone timeslot mask + - ASoC: codecs: add missing max_register in regmap config + - mtd: parsers: afs: Fix freeing the part name memory in failure + - f2fs: fix to avoid inconsistent quota data + - drm/amdgpu: Prevent shift wrapping in amdgpu_read_mask() + - f2fs: fix a wrong condition in __submit_bio + - KVM: nSVM: Don't strip host's C-bit from guest's CR3 when reading PDPTRs + - drm/mediatek: Check if fb is null + - Drivers: hv: vmbus: Avoid use-after-free in vmbus_onoffer_rescind() + - ASoC: Intel: sof_sdw: add missing TGL_HDMI quirk for Dell SKU 0A5E + - locking/lockdep: Avoid unmatched unlock + - ASoC: rt5682: Fix panic in rt5682_jack_detect_handler happening during + system shutdown + - ASoC: SOF: debug: Fix a potential issue on string buffer termination + - btrfs: clarify error returns values in __load_free_space_cache + - btrfs: fix double accounting of ordered extent for subpage case in + btrfs_invalidapge + - KVM: x86: Restore all 64 bits of DR6 and DR7 during RSM on x86-64 + - drm/lima: fix reference leak in lima_pm_busy + - drm/dp_mst: Don't cache EDIDs for physical ports + - hwrng: timeriomem - Fix cooldown period calculation + - crypto: ecdh_helper - Ensure 'len >= secret.len' in decode_key() + - nvmet-tcp: fix receive data digest calculation for multiple h2cdata PDUs + - nvmet-tcp: fix potential race of tcp socket closing accept_work + - nvmet: remove extra variable in identify ns + - nvmet: set status to 0 in case for invalid nsid + - ASoC: SOF: sof-pci-dev: add missing Up-Extreme quirk + - ima: Free IMA measurement buffer on error + - ima: Free IMA measurement buffer after kexec syscall + - ASoC: simple-card-utils: Fix device module clock + - fs/jfs: fix potential integer overflow on shift of a int + - jffs2: fix use after free in jffs2_sum_write_data() + - ubifs: Fix memleak in ubifs_init_authentication + - ubifs: replay: Fix high stack usage, again + - ubifs: Fix error return code in alloc_wbufs() + - irqchip/imx: IMX_INTMUX should not default to y, unconditionally + - smp: Process pending softirqs in flush_smp_call_function_from_idle() + - drm/amdgpu/display: remove hdcp_srm sysfs on device removal + - HSI: Fix PM usage counter unbalance in ssi_hw_init + - power: supply: cpcap: Add missing IRQF_ONESHOT to fix regression + - clk: meson: clk-pll: fix initializing the old rate (fallback) for a PLL + - clk: meson: clk-pll: make "ret" a signed integer + - clk: meson: clk-pll: propagate the error from meson_clk_pll_set_rate() + - regulator: qcom-rpmh-regulator: add pm8009-1 chip revision + - quota: Fix memory leak when handling corrupted quota file + - i2c: iproc: handle only slave interrupts which are enabled + - i2c: iproc: update slave isr mask (ISR_MASK_SLAVE) + - i2c: iproc: handle master read request + - spi: cadence-quadspi: Abort read if dummy cycles required are too many + - clk: sunxi-ng: h6: Fix CEC clock + - HID: core: detect and skip invalid inputs to snto32() + - RDMA/siw: Fix handling of zero-sized Read and Receive Queues. + - dmaengine: fsldma: Fix a resource leak in the remove function + - dmaengine: fsldma: Fix a resource leak in an error handling path of the + probe function + - dmaengine: owl-dma: Fix a resource leak in the remove function + - dmaengine: hsu: disable spurious interrupt + - mfd: bd9571mwv: Use devm_mfd_add_devices() + - power: supply: cpcap-charger: Fix missing power_supply_put() + - power: supply: cpcap-battery: Fix missing power_supply_put() + - power: supply: cpcap-charger: Fix power_supply_put on null battery pointer + - fdt: Properly handle "no-map" field in the memory region + - of/fdt: Make sure no-map does not remove already reserved regions + - RDMA/rtrs: Extend ibtrs_cq_qp_create + - RDMA/rtrs-srv: Release lock before call into close_sess + - RDMA/rtrs-srv: Use sysfs_remove_file_self for disconnect + - RDMA/rtrs-clt: Set mininum limit when create QP + - RDMA/rtrs: Call kobject_put in the failure path + - RDMA/rtrs-srv: Fix missing wr_cqe + - RDMA/rtrs-clt: Refactor the failure cases in alloc_clt + - RDMA/rtrs-srv: Init wr_cnt as 1 + - power: reset: at91-sama5d2_shdwc: fix wkupdbc mask + - rtc: s5m: select REGMAP_I2C + - dmaengine: idxd: set DMA channel to be private + - power: supply: fix sbs-charger build, needs REGMAP_I2C + - clocksource/drivers/ixp4xx: Select TIMER_OF when needed + - clocksource/drivers/mxs_timer: Add missing semicolon when DEBUG is defined + - RDMA/mlx5: Use the correct obj_id upon DEVX TIR creation + - IB/mlx5: Add mutex destroy call to cap_mask_mutex mutex + - clk: sunxi-ng: h6: Fix clock divider range on some clocks + - regulator: axp20x: Fix reference cout leak + - watch_queue: Drop references to /dev/watch_queue + - certs: Fix blacklist flag type confusion + - regulator: s5m8767: Fix reference count leak + - spi: atmel: Put allocated master before return + - regulator: s5m8767: Drop regulators OF node reference + - power: supply: axp20x_usb_power: Init work before enabling IRQs + - regulator: core: Avoid debugfs: Directory ... already present! error + - isofs: release buffer head before return + - watchdog: intel-mid_wdt: Postpone IRQ handler registration till SCU is ready + - auxdisplay: ht16k33: Fix refresh rate handling + - objtool: Fix error handling for STD/CLD warnings + - objtool: Fix ".cold" section suffix check for newer versions of GCC + - iommu: Switch gather->end to the inclusive end + - IB/umad: Return EIO in case of when device disassociated + - IB/umad: Return EPOLLERR in case of when device disassociated + - KVM: PPC: Make the VMX instruction emulation routines static + - powerpc/47x: Disable 256k page size + - powerpc/time: Enable sched clock for irqtime + - mmc: owl-mmc: Fix a resource leak in an error handling path and in the + remove function + - mmc: sdhci-sprd: Fix some resource leaks in the remove function + - mmc: usdhi6rol0: Fix a resource leak in the error handling path of the probe + - mmc: renesas_sdhi_internal_dmac: Fix DMA buffer alignment from 8 to + 128-bytes + - ARM: 9046/1: decompressor: Do not clear SCTLR.nTLSMD for ARMv7+ cores + - i2c: qcom-geni: Store DMA mapping data in geni_i2c_dev struct + - amba: Fix resource leak for drivers without .remove + - iommu: Move iotlb_sync_map out from __iommu_map + - iommu: Properly pass gfp_t in _iommu_map() to avoid atomic sleeping + - IB/mlx5: Return appropriate error code instead of ENOMEM + - IB/cm: Avoid a loop when device has 255 ports + - tracepoint: Do not fail unregistering a probe due to memory failure + - rtc: zynqmp: depend on HAS_IOMEM + - perf tools: Fix DSO filtering when not finding a map for a sampled address + - perf vendor events arm64: Fix Ampere eMag event typo + - RDMA/rxe: Fix coding error in rxe_recv.c + - RDMA/rxe: Fix coding error in rxe_rcv_mcast_pkt + - RDMA/rxe: Correct skb on loopback path + - spi: stm32: properly handle 0 byte transfer + - mfd: wm831x-auxadc: Prevent use after free in wm831x_auxadc_read_irq() + - powerpc/pseries/dlpar: handle ibm, configure-connector delay status + - powerpc/8xx: Fix software emulation interrupt + - clk: qcom: gcc-msm8998: Fix Alpha PLL type for all GPLLs + - kunit: tool: fix unit test cleanup handling + - kselftests: dmabuf-heaps: Fix Makefile's inclusion of the kernel's + usr/include dir + - RDMA/hns: Fixed wrong judgments in the goto branch + - RDMA/siw: Fix calculation of tx_valid_cpus size + - RDMA/hns: Fix type of sq_signal_bits + - RDMA/hns: Disable RQ inline by default + - clk: divider: fix initialization with parent_hw + - spi: pxa2xx: Fix the controller numbering for Wildcat Point + - powerpc/uaccess: Avoid might_fault() when user access is enabled + - powerpc/kuap: Restore AMR after replaying soft interrupts + - regulator: qcom-rpmh: fix pm8009 ldo7 + - clk: aspeed: Fix APLL calculate formula from ast2600-A2 + - regulator: bd718x7, bd71828, Fix dvs voltage levels + - nfsd: register pernet ops last, unregister first + - ceph: fix flush_snap logic after putting caps + - RDMA/hns: Fixes missing error code of CMDQ + - RDMA/ucma: Fix use-after-free bug in ucma_create_uevent + - RDMA/rtrs-srv: Fix stack-out-of-bounds + - RDMA/rtrs: Only allow addition of path to an already established session + - RDMA/rtrs-srv: fix memory leak by missing kobject free + - RDMA/rtrs-srv-sysfs: fix missing put_device + - RDMA/rtrs-srv: Do not pass a valid pointer to PTR_ERR() + - Input: sur40 - fix an error code in sur40_probe() + - perf intel-pt: Fix missing CYC processing in PSB + - perf intel-pt: Fix premature IPC + - perf intel-pt: Fix IPC with CYC threshold + - perf test: Fix unaligned access in sample parsing test + - Input: elo - fix an error code in elo_connect() + - sparc64: only select COMPAT_BINFMT_ELF if BINFMT_ELF is set + - sparc: fix led.c driver when PROC_FS is not enabled + - ARM: 9065/1: OABI compat: fix build when EPOLL is not enabled + - misc: eeprom_93xx46: Fix module alias to enable module autoprobe + - phy: rockchip-emmc: emmc_phy_init() always return 0 + - misc: eeprom_93xx46: Add module alias to avoid breaking support for non + device tree users + - PCI: rcar: Always allocate MSI addresses in 32bit space + - soundwire: cadence: fix ACK/NAK handling + - pwm: rockchip: Enable APB clock during register access while probing + - pwm: rockchip: rockchip_pwm_probe(): Remove superfluous clk_unprepare() + - pwm: rockchip: Eliminate potential race condition when probing + - VMCI: Use set_page_dirty_lock() when unregistering guest memory + - PCI: Align checking of syscall user config accessors + - mei: hbm: call mei_set_devstate() on hbm stop response + - drm/msm/dsi: Correct io_start for MSM8994 (20nm PHY) + - drm/msm/mdp5: Fix wait-for-commit for cmd panels + - drm/msm: Fix race of GPU init vs timestamp power management. + - drm/msm: Fix races managing the OOB state for timestamp vs timestamps. + - vfio/iommu_type1: Populate full dirty when detach non-pinned group + - vfio/iommu_type1: Fix some sanity checks in detach group + - ext4: fix potential htree index checksum corruption + - nvmem: core: Fix a resource leak on error in nvmem_add_cells_from_of() + - nvmem: core: skip child nodes not matching binding + - soundwire: bus: use sdw_update_no_pm when initializing a device + - soundwire: export sdw_write/read_no_pm functions + - soundwire: bus: fix confusion on device used by pm_runtime + - misc: fastrpc: fix incorrect usage of dma_map_sgtable + - regmap: sdw: use _no_pm functions in regmap_read/write + - ext: EXT4_KUNIT_TESTS should depend on EXT4_FS instead of selecting it + - mailbox: sprd: correct definition of SPRD_OUTBOX_FIFO_FULL + - PCI: pci-bridge-emul: Fix array overruns, improve safety + - i40e: Fix flow for IPv6 next header (extension header) + - i40e: Add zero-initialization of AQ command structures + - i40e: Fix overwriting flow control settings during driver loading + - i40e: Fix addition of RX filters after enabling FW LLDP agent + - i40e: Fix VFs not created + - Take mmap lock in cacheflush syscall + - i40e: Fix add TC filter for IPv6 + - octeontx2-af: Fix an off by one in rvu_dbg_qsize_write() + - vfio/type1: Use follow_pte() + - ice: report correct max number of TCs + - ice: Account for port VLAN in VF max packet size calculation + - ice: Fix state bits on LLDP mode switch + - ice: update the number of available RSS queues + - net: stmmac: fix CBS idleslope and sendslope calculation + - net/mlx4_core: Add missed mlx4_free_cmd_mailbox() + - vxlan: move debug check after netdev unregister + - wireguard: device: do not generate ICMP for non-IP packets + - wireguard: kconfig: use arm chacha even with no neon + - ocfs2: fix a use after free on error + - mm: memcontrol: fix NR_ANON_THPS accounting in charge moving + - mm/memory.c: fix potential pte_unmap_unlock pte error + - mm/hugetlb: fix potential double free in hugetlb_register_node() error path + - mm/hugetlb: suppress wrong warning info when alloc gigantic page + - mm/compaction: fix misbehaviors of fast_find_migrateblock() + - r8169: fix jumbo packet handling on RTL8168e + - arm64: Add missing ISB after invalidating TLB in __primary_switch + - i2c: brcmstb: Fix brcmstd_send_i2c_cmd condition + - i2c: exynos5: Preserve high speed master code + - mm,thp,shmem: make khugepaged obey tmpfs mount flags + - mm/rmap: fix potential pte_unmap on an not mapped pte + - proc: use kvzalloc for our kernel buffer + - scsi: bnx2fc: Fix Kconfig warning & CNIC build errors + - ide/falconide: Fix module unload + - scsi: sd: Fix Opal support + - blk-settings: align max_sectors on "logical_block_size" boundary + - soundwire: intel: fix possible crash when no device is detected + - ACPI: property: Fix fwnode string properties matching + - ACPI: configfs: add missing check after configfs_register_default_group() + - cpufreq: ACPI: Set cpuinfo.max_freq directly if max boost is known + - HID: logitech-dj: add support for keyboard events in eQUAD step 4 Gaming + - HID: wacom: Ignore attempts to overwrite the touch_max value from HID + - Input: raydium_ts_i2c - do not send zero length + - Input: xpad - add support for PowerA Enhanced Wired Controller for Xbox + Series X|S + - Input: joydev - prevent potential read overflow in ioctl + - Input: i8042 - add ASUS Zenbook Flip to noselftest list + - media: mceusb: Fix potential out-of-bounds shift + - USB: serial: option: update interface mapping for ZTE P685M + - usb: musb: Fix runtime PM race in musb_queue_resume_work + - USB: serial: ftdi_sio: fix FTX sub-integer prescaler + - USB: serial: pl2303: fix line-speed handling on newer chips + - USB: serial: mos7840: fix error code in mos7840_write() + - USB: serial: mos7720: fix error code in mos7720_write() + - phy: lantiq: rcu-usb2: wait after clock enable + - ALSA: fireface: fix to parse sync status register of latter protocol + - ALSA: hda: Add another CometLake-H PCI ID + - ALSA: hda/hdmi: Drop bogus check at closing a stream + - ALSA: hda/realtek: modify EAPD in the ALC886 + - ALSA: hda/realtek: Quirk for HP Spectre x360 14 amp setup + - MIPS: Ingenic: Disable HPTLB for D0 XBurst CPUs too + - MIPS: Support binutils configured with --enable-mips-fix-loongson3-llsc=yes + - MIPS: VDSO: Use CLANG_FLAGS instead of filtering out '--target=' + - Revert "MIPS: Octeon: Remove special handling of + CONFIG_MIPS_ELF_APPENDED_DTB=y" + - Revert "bcache: Kill btree_io_wq" + - bcache: Give btree_io_wq correct semantics again + - bcache: Move journal work to new flush wq + - Revert "drm/amd/display: Update NV1x SR latency values" + - drm/amd/display: Add FPU wrappers to dcn21_validate_bandwidth() + - drm/amd/display: Add vupdate_no_lock interrupts for DCN2.1 + - drm/amdkfd: Fix recursive lock warnings + - drm/amdgpu: Set reference clock to 100Mhz on Renoir (v2) + - drm/nouveau/kms: handle mDP connectors + - drm/modes: Switch to 64bit maths to avoid integer overflow + - drm/sched: Cancel and flush all outstanding jobs before finish. + - drm/panel: kd35t133: allow using non-continuous dsi clock + - drm/rockchip: Require the YTR modifier for AFBC + - ASoC: siu: Fix build error by a wrong const prefix + - selinux: fix inconsistency between inode_getxattr and inode_listsecurity + - erofs: initialized fields can only be observed after bit is set + - tpm_tis: Fix check_locality for correct locality acquisition + - tpm_tis: Clean up locality release + - KEYS: trusted: Fix incorrect handling of tpm_get_random() + - KEYS: trusted: Fix migratable=1 failing + - KEYS: trusted: Reserve TPM for seal and unseal operations + - btrfs: do not cleanup upper nodes in btrfs_backref_cleanup_node + - btrfs: do not warn if we can't find the reloc root when looking up backref + - btrfs: add asserts for deleting backref cache nodes + - btrfs: abort the transaction if we fail to inc ref in btrfs_copy_root + - btrfs: fix reloc root leak with 0 ref reloc roots on recovery + - btrfs: splice remaining dirty_bg's onto the transaction dirty bg list + - btrfs: handle space_info::total_bytes_pinned inside the delayed ref itself + - btrfs: account for new extents being deleted in total_bytes_pinned + - btrfs: fix extent buffer leak on failure to copy root + - drm/i915/gt: Flush before changing register state + - drm/i915/gt: Correct surface base address for renderclear + - crypto: arm64/sha - add missing module aliases + - crypto: aesni - prevent misaligned buffers on the stack + - crypto: michael_mic - fix broken misalignment handling + - crypto: sun4i-ss - checking sg length is not sufficient + - crypto: sun4i-ss - handle BigEndian for cipher + - crypto: sun4i-ss - initialize need_fallback + - soc: samsung: exynos-asv: don't defer early on not-supported SoCs + - soc: samsung: exynos-asv: handle reading revision register error + - seccomp: Add missing return in non-void function + - arm64: ptrace: Fix seccomp of traced syscall -1 (NO_SYSCALL) + - misc: rtsx: init of rts522a add OCP power off when no card is present + - drivers/misc/vmw_vmci: restrict too big queue size in qp_host_alloc_queue + - pstore: Fix typo in compression option name + - dts64: mt7622: fix slow sd card access + - arm64: dts: agilex: fix phy interface bit shift for gmac1 and gmac2 + - staging/mt7621-dma: mtk-hsdma.c->hsdma-mt7621.c + - staging: gdm724x: Fix DMA from stack + - staging: rtl8188eu: Add Edimax EW-7811UN V2 to device table + - media: ipu3-cio2: Fix mbus_code processing in cio2_subdev_set_fmt() + - media: smipcie: fix interrupt handling and IR timeout + - x86/virt: Eat faults on VMXOFF in reboot flows + - x86/reboot: Force all cpus to exit VMX root if VMX is supported + - x86/fault: Fix AMD erratum #91 errata fixup for user code + - x86/entry: Fix instrumentation annotation + - powerpc/prom: Fix "ibm,arch-vec-5-platform-support" scan + - rcu: Pull deferred rcuog wake up to rcu_eqs_enter() callers + - rcu/nocb: Perform deferred wake up before last idle's need_resched() check + - arm64: Extend workaround for erratum 1024718 to all versions of Cortex-A55 + - arm64: kexec_file: fix memory leakage in create_dtb() when fdt_open_into() + fails + - arm64: uprobe: Return EOPNOTSUPP for AARCH32 instruction probing + - arm64 module: set plt* section addresses to 0x0 + - arm64: spectre: Prevent lockdep splat on v4 mitigation enable path + - riscv: Disable KSAN_SANITIZE for vDSO + - watchdog: qcom: Remove incorrect usage of QCOM_WDT_ENABLE_IRQ + - watchdog: mei_wdt: request stop on unregister + - coresight: etm4x: Handle accesses to TRCSTALLCTLR + - mtd: spi-nor: sfdp: Fix last erase region marking + - mtd: spi-nor: sfdp: Fix wrong erase type bitmask for overlaid region + - mtd: spi-nor: core: Fix erase type discovery for overlaid region + - mtd: spi-nor: core: Add erase size check for erase command initialization + - mtd: spi-nor: hisi-sfc: Put child node np on error path + - fs/affs: release old buffer head on error path + - seq_file: document how per-entry resources are managed. + - x86: fix seq_file iteration for pat/memtype.c + - mm: memcontrol: fix swap undercounting in cgroup2 + - hugetlb: fix update_and_free_page contig page struct assumption + - hugetlb: fix copy_huge_page_from_user contig page struct assumption + - mm/vmscan: restore zone_reclaim_mode ABI + - mm, compaction: make fast_isolate_freepages() stay within zone + - nvmem: qcom-spmi-sdam: Fix uninitialized pdev pointer + - module: Ignore _GLOBAL_OFFSET_TABLE_ when warning for undefined symbols + - mmc: sdhci-esdhc-imx: fix kernel panic when remove module + - powerpc/32s: Add missing call to kuep_lock on syscall entry + - spmi: spmi-pmic-arb: Fix hw_irq overflow + - mei: me: emmitsburg workstation DID + - mei: me: add adler lake point S DID + - mei: me: add adler lake point LP DID + - gpio: pcf857x: Fix missing first interrupt + - mfd: gateworks-gsc: Fix interrupt type + - printk: fix deadlock when kernel panic + - exfat: fix shift-out-of-bounds in exfat_fill_super() + - zonefs: Fix file size of zones in full condition + - [Config] updateconfigs for KCMP + - kcmp: Support selection of SYS_kcmp without CHECKPOINT_RESTORE + - thermal: cpufreq_cooling: freq_qos_update_request() returns < 0 on error + - cpufreq: intel_pstate: Change intel_pstate_get_hwp_max() argument + - cpufreq: intel_pstate: Get per-CPU max freq via MSR_HWP_CAPABILITIES if + available + - proc: don't allow async path resolution of /proc/thread-self components + - s390/vtime: fix inline assembly clobber list + - virtio/s390: implement virtio-ccw revision 2 correctly + - um: mm: check more comprehensively for stub changes + - um: defer killing userspace on page table update failures + - irqchip/loongson-pch-msi: Use bitmap_zalloc() to allocate bitmap + - f2fs: fix out-of-repair __setattr_copy() + - f2fs: enforce the immutable flag on open files + - f2fs: flush data when enabling checkpoint back + - sparc32: fix a user-triggerable oops in clear_user() + - spi: fsl: invert spisel_boot signal on MPC8309 + - spi: spi-synquacer: fix set_cs handling + - gfs2: fix glock confusion in function signal_our_withdraw + - gfs2: Don't skip dlm unlock if glock has an lvb + - gfs2: Lock imbalance on error path in gfs2_recover_one + - gfs2: Recursive gfs2_quota_hold in gfs2_iomap_end + - dm: fix deadlock when swapping to encrypted device + - dm writecache: fix performance degradation in ssd mode + - dm writecache: return the exact table values that were set + - dm writecache: fix writing beyond end of underlying device when shrinking + - dm era: Recover committed writeset after crash + - dm era: Update in-core bitset after committing the metadata + - dm era: Verify the data block size hasn't changed + - dm era: Fix bitset memory leaks + - dm era: Use correct value size in equality function of writeset tree + - dm era: Reinitialize bitset cache before digesting a new writeset + - dm era: only resize metadata in preresume + - drm/i915: Reject 446-480MHz HDMI clock on GLK + - kgdb: fix to kill breakpoints on initmem after boot + - wireguard: selftests: test multiple parallel streams + - wireguard: queueing: get rid of per-peer ring buffers + - net: sched: fix police ext initialization + - net: qrtr: Fix memory leak in qrtr_tun_open + - ARM: dts: aspeed: Add LCLK to lpc-snoop + - ipv6: icmp6: avoid indirect call for icmpv6_send() + * Mute/Mic-mute LEDs are not work on HP 850/840/440 G8 Laptops (LP: #1920030) + - ALSA: hda/realtek: fix mute/micmute LEDs for HP 840 G8 + - ALSA: hda/realtek: fix mute/micmute LEDs for HP 440 G8 + - ALSA: hda/realtek: fix mute/micmute LEDs for HP 850 G8 + * Groovy update: upstream stable patchset 2021-03-19 (LP: #1920571) + - af_key: relax availability checks for skb size calculation + - regulator: core: avoid regulator_resolve_supply() race condition + - ASoC: wm_adsp: Fix control name parsing for multi-fw + - mac80211: 160MHz with extended NSS BW in CSA + - ASoC: Intel: Skylake: Zero snd_ctl_elem_value + - chtls: Fix potential resource leak + - pNFS/NFSv4: Try to return invalid layout in pnfs_layout_process() + - pNFS/NFSv4: Improve rejection of out-of-order layouts + - ALSA: hda: intel-dsp-config: add PCI id for TGL-H + - ASoC: ak4458: correct reset polarity + - ASoC: Intel: sof_sdw: set proper flags for Dell TGL-H SKU 0A5E + - iwlwifi: mvm: skip power command when unbinding vif during CSA + - iwlwifi: mvm: take mutex for calling iwl_mvm_get_sync_time() + - iwlwifi: pcie: add a NULL check in iwl_pcie_txq_unmap + - iwlwifi: pcie: fix context info memory leak + - iwlwifi: mvm: invalidate IDs of internal stations at mvm start + - iwlwifi: pcie: add rules to match Qu with Hr2 + - iwlwifi: mvm: guard against device removal in reprobe + - SUNRPC: Move simple_get_bytes and simple_get_netobj into private header + - SUNRPC: Handle 0 length opaque XDR object data properly + - i2c: mediatek: Move suspend and resume handling to NOIRQ phase + - blk-cgroup: Use cond_resched() when destroy blkgs + - regulator: Fix lockdep warning resolving supplies + - bpf: Fix verifier jmp32 pruning decision logic + - bpf: Fix verifier jsgt branch analysis on max bound + - drm/i915: Fix ICL MG PHY vswing handling + - drm/i915: Skip vswing programming for TBT + - nilfs2: make splice write available again + - squashfs: avoid out of bounds writes in decompressors + - squashfs: add more sanity checks in id lookup + - squashfs: add more sanity checks in inode lookup + - squashfs: add more sanity checks in xattr id lookup + - gpio: mxs: GPIO_MXS should not default to y unconditionally + - gpio: ep93xx: fix BUG_ON port F usage + - gpio: ep93xx: Fix single irqchip with multi gpiochips + - tracing: Do not count ftrace events in top level enable output + - tracing: Check length before giving out the filter buffer + - drm/i915: Fix overlay frontbuffer tracking + - arm/xen: Don't probe xenbus as part of an early initcall + - cgroup: fix psi monitor for root cgroup + - drm/i915/tgl+: Make sure TypeC FIA is powered up when initializing it + - drm/dp_mst: Don't report ports connected if nothing is attached to them + - dmaengine: move channel device_node deletion to driver + - soc: ti: omap-prm: Fix boot time errors for rst_map_012 bits 0 and 1 + - arm64: dts: rockchip: Fix PCIe DT properties on rk3399 + - arm64: dts: qcom: sdm845: Reserve LPASS clocks in gcc + - ARM: OMAP2+: Fix suspcious RCU usage splats for omap_enter_idle_coupled + - arm64: dts: rockchip: remove interrupt-names property from rk3399 vdec node + - platform/x86: hp-wmi: Disable tablet-mode reporting by default + - ovl: perform vfs_getxattr() with mounter creds + - cap: fix conversions on getxattr + - ovl: skip getxattr of security labels + - scsi: lpfc: Fix EEH encountering oops with NVMe traffic + - x86/split_lock: Enable the split lock feature on Sapphire Rapids and Alder + Lake CPUs + - x86/split_lock: Enable the split lock feature on another Alder Lake CPU + - nvme-pci: ignore the subsysem NQN on Phison E16 + - drm/amd/display: Fix DPCD translation for LTTPR AUX_RD_INTERVAL + - drm/amd/display: Add more Clock Sources to DCN2.1 + - drm/amd/display: Release DSC before acquiring + - drm/amd/display: Fix dc_sink kref count in emulated_link_detect + - drm/amd/display: Free atomic state after drm_atomic_commit + - drm/amd/display: Decrement refcount of dc_sink before reassignment + - riscv: virt_addr_valid must check the address belongs to linear mapping + - ARM: dts: lpc32xx: Revert set default clock rate of HCLK PLL + - kallsyms: fix nonconverging kallsyms table with lld + - ARM: ensure the signal page contains defined contents + - ARM: kexec: fix oops after TLB are invalidated + - ubsan: implement __ubsan_handle_alignment_assumption + - x86/efi: Remove EFI PGD build time checks + - lkdtm: don't move ctors to .rodata + - cgroup-v1: add disabled controller check in cgroup1_parse_param() + - mt76: dma: fix a possible memory leak in mt76_add_fragment() + - drm/vc4: hvs: Fix buffer overflow with the dlist handling + - bpf: Unbreak BPF_PROG_TYPE_KPROBE when kprobe is called via do_int3 + - bpf: Check for integer overflow when using roundup_pow_of_two() + - netfilter: xt_recent: Fix attempt to update deleted entry + - netfilter: nftables: fix possible UAF over chains from packet path in netns + - netfilter: flowtable: fix tcp and udp header checksum update + - xen/netback: avoid race in xenvif_rx_ring_slots_available() + - net: hdlc_x25: Return meaningful error code in x25_open + - net: ipa: set error code in gsi_channel_setup() + - hv_netvsc: Reset the RSC count if NVSP_STAT_FAIL in netvsc_receive() + - net: enetc: initialize the RFS and RSS memories + - selftests: txtimestamp: fix compilation issue + - net: stmmac: set TxQ mode back to DCB after disabling CBS + - ibmvnic: Clear failover_pending if unable to schedule + - netfilter: conntrack: skip identical origin tuple in same zone only + - scsi: scsi_debug: Fix a memory leak + - x86/build: Disable CET instrumentation in the kernel for 32-bit too + - net: hns3: add a check for queue_id in hclge_reset_vf_queue() + - net: hns3: add a check for tqp_index in hclge_get_ring_chain_from_mbx() + - net: hns3: add a check for index in hclge_get_rss_key() + - firmware_loader: align .builtin_fw to 8 + - drm/sun4i: tcon: set sync polarity for tcon1 channel + - drm/sun4i: dw-hdmi: always set clock rate + - drm/sun4i: Fix H6 HDMI PHY configuration + - drm/sun4i: dw-hdmi: Fix max. frequency for H6 + - clk: sunxi-ng: mp: fix parent rate change flag check + - i2c: stm32f7: fix configuration of the digital filter + - h8300: fix PREEMPTION build, TI_PRE_COUNT undefined + - scripts: set proper OpenSSL include dir also for sign-file + - rxrpc: Fix clearance of Tx/Rx ring when releasing a call + - udp: fix skb_copy_and_csum_datagram with odd segment sizes + - net: dsa: call teardown method on probe failure + - cpufreq: ACPI: Extend frequency tables to cover boost frequencies + - cpufreq: ACPI: Update arch scale-invariance max perf ratio if CPPC is not + there + - net: gro: do not keep too many GRO packets in napi->rx_list + - net: fix iteration for sctp transport seq_files + - net/vmw_vsock: fix NULL pointer dereference + - net/vmw_vsock: improve locking in vsock_connect_timeout() + - net: watchdog: hold device global xmit lock during tx disable + - bridge: mrp: Fix the usage of br_mrp_port_switchdev_set_state + - switchdev: mrp: Remove SWITCHDEV_ATTR_ID_MRP_PORT_STAT + - vsock/virtio: update credit only if socket is not closed + - vsock: fix locking in vsock_shutdown() + - net/rds: restrict iovecs length for RDS_CMSG_RDMA_ARGS + - net/qrtr: restrict user-controlled length in qrtr_tun_write_iter() + - ovl: expand warning in ovl_d_real() + - kcov, usb: only collect coverage from __usb_hcd_giveback_urb in softirq + - usb: dwc3: ulpi: fix checkpatch warning + - net: qrtr: Fix port ID for control messages + - mptcp: skip to next candidate if subflow has unacked data + - mt76: mt7915: fix endian issues + - mt76: mt7615: fix rdd mcu cmd endianness + - net: sched: incorrect Kconfig dependencies on Netfilter modules + - net: openvswitch: fix TTL decrement exception action execution + - net: bridge: Fix a warning when del bridge sysfs + - net: fix proc_fs init handling in af_packet and tls + - Xen/x86: don't bail early from clear_foreign_p2m_mapping() + - Xen/x86: also check kernel mapping in set_foreign_p2m_mapping() + - Xen/gntdev: correct dev_bus_addr handling in gntdev_map_grant_pages() + - Xen/gntdev: correct error checking in gntdev_map_grant_pages() + - xen/arm: don't ignore return errors from set_phys_to_machine + - xen-blkback: don't "handle" error by BUG() + - xen-netback: don't "handle" error by BUG() + - xen-scsiback: don't "handle" error by BUG() + - xen-blkback: fix error handling in xen_blkbk_map() + - tty: protect tty_write from odd low-level tty disciplines + - btrfs: fix backport of 2175bf57dc952 in 5.10.13 + - media: pwc: Use correct device for DMA + - HID: make arrays usage and value to be the same + - RDMA: Lift ibdev_to_node from rds to common code + - nvme-rdma: Use ibdev_to_node instead of dereferencing ->dma_device + - USB: quirks: sort quirk entries + - usb: quirks: add quirk to start video capture on ELMO L-12F document camera + reliable + - ceph: downgrade warning from mdsmap decode to debug + - ntfs: check for valid standard information attribute + - Bluetooth: btusb: Some Qualcomm Bluetooth adapters stop working + - arm64: tegra: Add power-domain for Tegra210 HDA + - hwmon: (dell-smm) Add XPS 15 L502X to fan control blacklist + - mm: unexport follow_pte_pmd + - mm: simplify follow_pte{,pmd} + - KVM: do not assume PTE is writable after follow_pfn + - mm: provide a saner PTE walking API for modules + - KVM: Use kvm_pfn_t for local PFN variable in hva_to_pfn_remapped() + - NET: usb: qmi_wwan: Adding support for Cinterion MV31 + - cxgb4: Add new T6 PCI device id 0x6092 + - kbuild: fix CONFIG_TRIM_UNUSED_KSYMS build for ppc64 + - scripts/recordmcount.pl: support big endian for ARCH sh + * Groovy update: upstream stable patchset 2021-03-12 (LP: #1918987) + - net: fec: put child node on error path + - net: octeontx2: Make sure the buffer is 128 byte aligned + - stmmac: intel: Configure EHL PSE0 GbE and PSE1 GbE to 32 bits DMA addressing + - net: dsa: bcm_sf2: put device node before return + - net: switchdev: don't set port_obj_info->handled true when -EOPNOTSUPP + - ibmvnic: Ensure that CRQ entry read are correctly ordered + - iommu/io-pgtable-arm: Support coherency for Mali LPAE + - drm/panfrost: Support cache-coherent integrations + - arm64: dts: meson: Describe G12b GPU as coherent + - arm64: Fix kernel address detection of __is_lm_address() + - arm64: Do not pass tagged addresses to __is_lm_address() + - ARM: 9025/1: Kconfig: CPU_BIG_ENDIAN depends on !LD_IS_LLD + - iommu/vt-d: Do not use flush-queue when caching-mode is on + - phy: cpcap-usb: Fix warning for missing regulator_disable + - tools/power/x86/intel-speed-select: Set scaling_max_freq to base_frequency + - tools/power/x86/intel-speed-select: Set higher of cpuinfo_max_freq or + base_frequency + - platform/x86: touchscreen_dmi: Add swap-x-y quirk for Goodix touchscreen on + Estar Beauty HD tablet + - platform/x86: intel-vbtn: Support for tablet mode on Dell Inspiron 7352 + - locking/lockdep: Avoid noinstr warning for DEBUG_LOCKDEP + - x86: __always_inline __{rd,wr}msr() + - scsi: scsi_transport_srp: Don't block target in failfast state + - scsi: libfc: Avoid invoking response handler twice if ep is already + completed + - scsi: fnic: Fix memleak in vnic_dev_init_devcmd2 + - ALSA: hda - add Intel DG1 PCI and HDMI ids + - ALSA: hda: Add Alderlake-S PCI ID and HDMI codec vid + - ALSA: hda: Add AlderLake-P PCI ID and HDMI codec vid + - objtool: Don't add empty symbols to the rbtree + - mac80211: fix incorrect strlen of .write in debugfs + - mac80211: fix fast-rx encryption check + - scsi: ibmvfc: Set default timeout to avoid crash during migration + - i2c: tegra: Create i2c_writesl_vi() to use with VI I2C for filling TX FIFO + - udf: fix the problem that the disc content is not displayed + - nvme: check the PRINFO bit before deciding the host buffer length + - nvme-rdma: avoid request double completion for concurrent nvme_rdma_timeout + - nvme-tcp: avoid request double completion for concurrent nvme_tcp_timeout + - nvme-pci: allow use of cmb on v1.4 controllers + - nvmet: set right status on error in id-ns handler + - platform/x86: thinkpad_acpi: Add P53/73 firmware to fan_quirk_table for dual + fan control + - selftests/powerpc: Only test lwm/stmw on big endian + - drm/amd/display: Update dram_clock_change_latency for DCN2.1 + - drm/amd/display: Change function decide_dp_link_settings to avoid infinite + looping + - drm/amd/display: Use hardware sequencer functions for PG control + - objtool: Don't fail the kernel build on fatal errors + - x86/cpu: Add Lakefield, Alder Lake and Rocket Lake models to the to Intel + CPU family + - x86/cpu: Add another Alder Lake CPU to the Intel family + - kthread: Extract KTHREAD_IS_PER_CPU + - workqueue: Restrict affinity change to rescuer + - Revert "Revert "block: end bio with BLK_STS_AGAIN in case of non-mq devs and + REQ_NOWAIT"" + - ACPI: thermal: Do not call acpi_thermal_check() directly + - USB: serial: cp210x: add pid/vid for WSDA-200-USB + - USB: serial: cp210x: add new VID/PID for supporting Teraoka AD2000 + - USB: serial: option: Adding support for Cinterion MV31 + - usb: host: xhci-plat: add priv quirk for skip PHY initialization + - usb: host: xhci: mvebu: make USB 3.0 PHY optional for Armada 3720 + - USB: gadget: legacy: fix an error code in eth_bind() + - usb: gadget: aspeed: add missing of_node_put + - USB: usblp: don't call usb_set_interface if there's a single alt + - usb: renesas_usbhs: Clear pipe running flag in usbhs_pkt_pop() + - usb: dwc2: Fix endpoint direction check in ep_from_windex + - usb: dwc3: fix clock issue during resume in OTG mode + - usb: xhci-mtk: fix unreleased bandwidth data + - usb: xhci-mtk: skip dropping bandwidth of unchecked endpoints + - usb: xhci-mtk: break loop when find the endpoint to drop + - ARM: OMAP1: OSK: fix ohci-omap breakage + - arm64: dts: qcom: c630: keep both touchpad devices enabled + - arm64: dts: amlogic: meson-g12: Set FL-adj property value + - arm64: dts: rockchip: fix vopl iommu irq on px30 + - arm64: dts: rockchip: Use only supported PCIe link speed on Pinebook Pro + - ARM: dts: stm32: Connect card-detect signal on DHCOM + - ARM: dts: stm32: Disable WP on DHCOM uSD slot + - um: virtio: free vu_dev only with the contained struct device + - arm64: dts: meson: switch TFLASH_VDD_EN pin to open drain on Odroid-C4 + - r8169: work around RTL8125 UDP hw bug + - rxrpc: Fix deadlock around release of dst cached on udp tunnel + - arm64: dts: ls1046a: fix dcfg address range + - SUNRPC: Fix NFS READs that start at non-page-aligned offsets + - igc: set the default return value to -IGC_ERR_NVM in igc_write_nvm_srwr + - igc: check return value of ret_val in igc_config_fc_after_link_up + - i40e: Revert "i40e: don't report link up for a VF who hasn't enabled queues" + - ibmvnic: device remove has higher precedence over reset + - net/mlx5: Fix leak upon failure of rule creation + - net/mlx5e: Update max_opened_tc also when channels are closed + - net/mlx5e: Release skb in case of failure in tc update skb + - net: lapb: Copy the skb before sending a packet + - net: mvpp2: TCAM entry enable should be written after SRAM data + - r8169: fix WoL on shutdown if CONFIG_DEBUG_SHIRQ is set + - net: ipa: pass correct dma_handle to dma_free_coherent() + - ARM: dts: sun7i: a20: bananapro: Fix ethernet phy-mode + - nvmet-tcp: fix out-of-bounds access when receiving multiple h2cdata PDUs + - memblock: do not start bottom-up allocations with kernel_end + - ovl: fix dentry leak in ovl_get_redirect + - mac80211: fix station rate table updates on assoc + - gpiolib: free device name on error path to fix kmemleak + - fgraph: Initialize tracing_graph_pause at task creation + - tracing/kprobe: Fix to support kretprobe events on unloaded modules + - kretprobe: Avoid re-registration of the same kretprobe earlier + - tracing: Use pause-on-trace with the latency tracers + - libnvdimm/namespace: Fix visibility of namespace resource attribute + - libnvdimm/dimm: Avoid race between probe and available_slots_show() + - genirq: Prevent [devm_]irq_alloc_desc from returning irq 0 + - genirq/msi: Activate Multi-MSI early when MSI_FLAG_ACTIVATE_EARLY is set + - scripts: use pkg-config to locate libcrypto + - xhci: fix bounce buffer usage for non-sg list case + - RISC-V: Define MAXPHYSMEM_1GB only for RV32 + - cifs: report error instead of invalid when revalidating a dentry fails + - iommu: Check dev->iommu in dev_iommu_priv_get() before dereferencing it + - smb3: Fix out-of-bounds bug in SMB2_negotiate() + - smb3: fix crediting for compounding when only one request in flight + - mmc: sdhci-pltfm: Fix linking err for sdhci-brcmstb + - mmc: core: Limit retries when analyse of SDIO tuples fails + - Fix unsynchronized access to sev members through svm_register_enc_region + - drm/i915/display: Prevent double YUV range correction on HDR planes + - drm/i915: Extract intel_ddi_power_up_lanes() + - drm/i915: Power up combo PHY lanes for for HDMI as well + - drm/amd/display: Revert "Fix EDID parsing after resume from suspend" + - nvme-pci: avoid the deepest sleep state on Kingston A2000 SSDs + - KVM: SVM: Treat SVM as unsupported when running as an SEV guest + - KVM: x86: Allow guests to see MSR_IA32_TSX_CTRL even if tsx=off + - KVM: x86: fix CPUID entries returned by KVM_GET_CPUID2 ioctl + - KVM: x86: Update emulator context mode if SYSENTER xfers to 64-bit mode + - DTS: ARM: gta04: remove legacy spi-cs-high to make display work again + - ARM: dts; gta04: SPI panel chip select is active low + - ARM: footbridge: fix dc21285 PCI configuration accessors + - mm: hugetlbfs: fix cannot migrate the fallocated HugeTLB page + - mm: hugetlb: fix a race between freeing and dissolving the page + - mm: hugetlb: fix a race between isolating and freeing page + - mm: hugetlb: remove VM_BUG_ON_PAGE from page_huge_active + - mm, compaction: move high_pfn to the for loop scope + - mm: thp: fix MADV_REMOVE deadlock on shmem THP + - mm/filemap: add missing mem_cgroup_uncharge() to + __add_to_page_cache_locked() + - x86/build: Disable CET instrumentation in the kernel + - x86/debug: Fix DR6 handling + - x86/debug: Prevent data breakpoints on __per_cpu_offset + - x86/debug: Prevent data breakpoints on cpu_dr7 + - x86/apic: Add extra serialization for non-serializing MSRs + - Input: goodix - add support for Goodix GT9286 chip + - Input: xpad - sync supported devices with fork on GitHub + - Input: ili210x - implement pressure reporting for ILI251x + - md: Set prev_flush_start and flush_bio in an atomic way + - neighbour: Prevent a dead entry from updating gc_list + - net: ip_tunnel: fix mtu calculation + - udp: ipv4: manipulate network header of NATed UDP GRO fraglist + - net: dsa: mv88e6xxx: override existent unicast portvec in port_fdb_add + - net: sched: replaced invalid qdisc tree flush helper in qdisc_replace + - iwlwifi: mvm: don't send RFH_QUEUE_CONFIG_CMD with no queues + * power off stress test will hang on the TGL machines (LP: #1919930) + - [Config] set SND_SOC_SOF_HDA_ALWAYS_ENABLE_DMI_L1 to n + * eeh-basic.sh from powerpc in ubuntu_kernel_selftests failed with unexpected + operator on F-5.8 (LP: #1909428) + - selftests/powerpc: Make the test check in eeh-basic.sh posix compliant + + -- Marcelo Henrique Cerri Wed, 21 Apr 2021 15:09:23 -0300 + +linux-azure (5.8.0-1029.31) groovy; urgency=medium + + [ Ubuntu: 5.8.0-50.56 ] + + * overlayfs calls vfs_setxattr without cap_convert_nscap + - vfs: move cap_convert_nscap() call into vfs_setxattr() + * CVE-2021-3492 + - SAUCE: shiftfs: free allocated memory in shiftfs_btrfs_ioctl_fd_replace() + error paths + - SAUCE: shiftfs: handle copy_to_user() return values correctly + * CVE-2021-29154 + - SAUCE: bpf, x86: Validate computation of branch displacements for x86-64 + - SAUCE: bpf, x86: Validate computation of branch displacements for x86-32 + + -- Ian May Tue, 13 Apr 2021 01:00:36 -0500 + +linux-azure (5.8.0-1027.29) groovy; urgency=medium + + * groovy/linux-azure: 5.8.0-1027.29 -proposed tracker (LP: #1921045) + + * Enforce CONFIG_DRM_BOCHS=m (LP: #1916290) + - [Config] azure: Keep CONFIG_DRM_BOCHS disabled + + * linux-azure: Install PMEM modules by default (LP: #1921411) + - [Packaging] azure: Move PMEM related modules to linux-modules + + [ Ubuntu: 5.8.0-49.55 ] + + * groovy/linux: 5.8.0-49.55 -proposed tracker (LP: #1921053) + * selftests: bpf verifier fails after sanitize_ptr_alu fixes (LP: #1920995) + - bpf: Simplify alu_limit masking for pointer arithmetic + - bpf: Add sanity check for upper ptr_limit + - bpf, selftests: Fix up some test_verifier cases for unprivileged + * Packaging resync (LP: #1786013) + - update dkms package versions + * improper memcg accounting causes NULL pointer derefs (LP: #1918668) + - SAUCE: Revert "mm: memcg/slab: optimize objcg stock draining" + * kernel: Enable CONFIG_BPF_LSM on Ubuntu (LP: #1905975) + - [Config] Enable CONFIG_BPF_LSM + * Groovy update: upstream stable patchset 2021-03-10 (LP: #1918516) + - gpio: mvebu: fix pwm .get_state period calculation + - HID: wacom: Correct NULL dereference on AES pen proximity + - media: v4l2-subdev.h: BIT() is not available in userspace + - RDMA/vmw_pvrdma: Fix network_hdr_type reported in WC + - kernel/io_uring: cancel io_uring before task works + - io_uring: dont kill fasync under completion_lock + - objtool: Don't fail on missing symbol table + - mm/page_alloc: add a missing mm_page_alloc_zone_locked() tracepoint + - mm: fix a race on nr_swap_pages + - tools: Factor HOSTCC, HOSTLD, HOSTAR definitions + - iwlwifi: provide gso_type to GSO packets + - tty: avoid using vfs_iocb_iter_write() for redirected console writes + - ACPI: sysfs: Prefer "compatible" modalias + - kernel: kexec: remove the lock operation of system_transition_mutex + - ALSA: hda/realtek: Enable headset of ASUS B1400CEPE with ALC256 + - ALSA: hda/via: Apply the workaround generically for Clevo machines + - parisc: Enable -mlong-calls gcc option by default when !CONFIG_MODULES + - media: cec: add stm32 driver + - media: hantro: Fix reset_raw_fmt initialization + - media: rc: fix timeout handling after switch to microsecond durations + - media: rc: ite-cir: fix min_timeout calculation + - media: rc: ensure that uevent can be read directly after rc device register + - ARM: dts: tbs2910: rename MMC node aliases + - ARM: dts: ux500: Reserve memory carveouts + - ARM: dts: imx6qdl-gw52xx: fix duplicate regulator naming + - wext: fix NULL-ptr-dereference with cfg80211's lack of commit() + - ASoC: AMD Renoir - refine DMI entries for some Lenovo products + - drm/i915: Always flush the active worker before returning from the wait + - drm/i915/gt: Always try to reserve GGTT address 0x0 + - drivers/nouveau/kms/nv50-: Reject format modifiers for cursor planes + - net: usb: qmi_wwan: added support for Thales Cinterion PLSx3 modem family + - s390: uv: Fix sysfs max number of VCPUs reporting + - s390/vfio-ap: No need to disable IRQ after queue reset + - PM: hibernate: flush swap writer after marking + - x86/entry: Emit a symbol for register restoring thunk + - efi/apple-properties: Reinstate support for boolean properties + - drivers: soc: atmel: Avoid calling at91_soc_init on non AT91 SoCs + - drivers: soc: atmel: add null entry at the end of at91_soc_allowed_list[] + - btrfs: fix possible free space tree corruption with online conversion + - KVM: x86/pmu: Fix HW_REF_CPU_CYCLES event pseudo-encoding in + intel_arch_events[] + - KVM: x86/pmu: Fix UBSAN shift-out-of-bounds warning in intel_pmu_refresh() + - KVM: nVMX: Sync unsync'd vmcs02 state to vmcs12 on migration + - KVM: x86: get smi pending status correctly + - KVM: Forbid the use of tagged userspace addresses for memslots + - xen: Fix XenStore initialisation for XS_LOCAL + - leds: trigger: fix potential deadlock with libata + - arm64: dts: broadcom: Fix USB DMA address translation for Stingray + - mt7601u: fix kernel crash unplugging the device + - mt7601u: fix rx buffer refcounting + - iwlwifi: Fix IWL_SUBDEVICE_NO_160 macro to use the correct bit. + - drm/i915/gt: Clear CACHE_MODE prior to clearing residuals + - drm/i915/pmu: Don't grab wakeref when enabling events + - net/mlx5e: Fix IPSEC stats + - ARM: dts: imx6qdl-kontron-samx6i: fix pwms for lcd-backlight + - drm/nouveau/svm: fail NOUVEAU_SVM_INIT ioctl on unsupported devices + - drm/i915: Check for all subplatform bits + - drm/i915/selftest: Fix potential memory leak + - uapi: fix big endian definition of ipv6_rpl_sr_hdr + - KVM: Documentation: Fix spec for KVM_CAP_ENABLE_CAP_VM + - tee: optee: replace might_sleep with cond_resched + - xen-blkfront: allow discard-* nodes to be optional + - clk: mmp2: fix build without CONFIG_PM + - clk: qcom: gcc-sm250: Use floor ops for sdcc clks + - ARM: imx: build suspend-imx6.S with arm instruction set + - ARM: zImage: atags_to_fdt: Fix node names on added root nodes + - netfilter: nft_dynset: add timeout extension to template + - Revert "RDMA/mlx5: Fix devlink deadlock on net namespace deletion" + - xfrm: Fix oops in xfrm_replay_advance_bmp + - xfrm: fix disable_xfrm sysctl when used on xfrm interfaces + - xfrm: Fix wraparound in xfrm_policy_addr_delta() + - arm64: dts: ls1028a: fix the offset of the reset register + - ARM: dts: imx6qdl-kontron-samx6i: fix i2c_lcd/cam default status + - ARM: dts: imx6qdl-sr-som: fix some cubox-i platforms + - arm64: dts: imx8mp: Correct the gpio ranges of gpio3 + - firmware: imx: select SOC_BUS to fix firmware build + - RDMA/cxgb4: Fix the reported max_recv_sge value + - ASoC: Intel: Skylake: skl-topology: Fix OOPs ib skl_tplg_complete + - pNFS/NFSv4: Fix a layout segment leak in pnfs_layout_process() + - pNFS/NFSv4: Update the layout barrier when we schedule a layoutreturn + - iwlwifi: pcie: set LTR on more devices + - iwlwifi: pcie: use jiffies for memory read spin time limit + - iwlwifi: pcie: reschedule in long-running memory reads + - mac80211: pause TX while changing interface type + - ice: fix FDir IPv6 flexbyte + - ice: Implement flow for IPv6 next header (extension header) + - ice: update dev_addr in ice_set_mac_address even if HW filter exists + - ice: Don't allow more channels than LAN MSI-X available + - ice: Fix MSI-X vector fallback logic + - i40e: acquire VSI pointer only after VF is initialized + - igc: fix link speed advertising + - net/mlx5: Fix memory leak on flow table creation error flow + - net/mlx5e: E-switch, Fix rate calculation for overflow + - net/mlx5e: free page before return + - net/mlx5e: Reduce tc unsupported key print level + - net/mlx5e: Disable hw-tc-offload when MLX5_CLS_ACT config is disabled + - net/mlx5e: Fix CT rule + encap slow path offload and deletion + - net/mlx5e: Correctly handle changing the number of queues when the interface + is down + - net/mlx5e: Revert parameters on errors when changing trust state without + reset + - net/mlx5e: Revert parameters on errors when changing MTU and LRO state + without reset + - can: dev: prevent potential information leak in can_fill_info() + - ACPI/IORT: Do not blindly trust DMA masks from firmware + - iommu/amd: Use IVHD EFR for early initialization of IOMMU features + - iommu/vt-d: Correctly check addr alignment in qi_flush_dev_iotlb_pasid() + - nvme-multipath: Early exit if no path is available + - selftests: forwarding: Specify interface when invoking mausezahn + - rxrpc: Fix memory leak in rxrpc_lookup_local + - NFC: fix resource leak when target index is invalid + - NFC: fix possible resource leak + - ASoC: topology: Properly unregister DAI on removal + - ASoC: topology: Fix memory corruption in soc_tplg_denum_create_values() + - team: protect features update by RCU to avoid deadlock + - tcp: make TCP_USER_TIMEOUT accurate for zero window probes + - tcp: fix TLP timer not set when CA_STATE changes from DISORDER to OPEN + - ICMPv6: Add ICMPv6 Parameter Problem, code 3 definition + - IPv6: reply ICMP error if the first fragment don't include all headers + - iommu/vt-d: Gracefully handle DMAR units with no supported address widths + * xfrm_policy.sh in net from ubuntu_kernel_selftests passed with failed sub- + cases (LP: #1909647) + - selftests: xfrm: fix test return value override issue in xfrm_policy.sh + * CVE-2021-3347 + - futex: Remove put_futex_key() + - futex: Remove needless goto's + - futex: Replace pointless printk in fixup_owner() + - futex: Ensure the correct return value from futex_lock_pi() + - futex: Provide and use pi_state_update_owner() + - rtmutex: Remove unused argument from rt_mutex_proxy_unlock() + - futex: Use pi_state_update_owner() in put_pi_state() + - futex: Simplify fixup_pi_state_owner() + - futex: Handle faults correctly for PI futexes + * CVE-2021-3348 + - nbd: freeze the queue while we're adding connections + * [Regression] ubuntu_bpf failed to build on Groovy (LP: #1917609) + - SAUCE: partially revert "bpf: Zero-fill re-used per-cpu map element" + * alsa/hda: the hdmi audio dosn't work on TGL machines (LP: #1917829) + - ALSA: hda/hdmi: let new platforms assign the pcm slot dynamically + * Groovy update: upstream stable patchset 2021-03-05 (LP: #1917964) + - mtd: rawnand: gpmi: fix dst bit offset when extracting raw payload + - i2c: bpmp-tegra: Ignore unknown I2C_M flags + - platform/x86: i2c-multi-instantiate: Don't create platform device for + INT3515 ACPI nodes + - platform/x86: ideapad-laptop: Disable touchpad_switch for ELAN0634 + - ALSA: seq: oss: Fix missing error check in snd_seq_oss_synth_make_info() + - ALSA: hda/realtek - Limit int mic boost on Acer Aspire E5-575T + - ALSA: hda/via: Add minimum mute flag + - dm crypt: fix copy and paste bug in crypt_alloc_req_aead + - ACPI: scan: Make acpi_bus_get_device() clear return pointer on error + - btrfs: don't get an EINTR during drop_snapshot for reloc + - btrfs: do not double free backref nodes on error + - btrfs: fix lockdep splat in btrfs_recover_relocation + - btrfs: don't clear ret in btrfs_start_dirty_block_groups + - btrfs: send: fix invalid clone operations when cloning from the same file + and root + - writeback: Drop I_DIRTY_TIME_EXPIRE + - fs: fix lazytime expiration handling in __writeback_single_inode() + - pinctrl: ingenic: Fix JZ4760 support + - mmc: core: don't initialize block size from ext_csd if not present + - mmc: sdhci-of-dwcmshc: fix rpmb access + - mmc: sdhci-xenon: fix 1.8v regulator stabilization + - mmc: sdhci-brcmstb: Fix mmc timeout errors on S5 suspend + - dm: avoid filesystem lookup in dm_get_dev_t() + - dm integrity: fix a crash if "recalculate" used without "internal_hash" + - dm integrity: conditionally disable "recalculate" feature + - drm/atomic: put state on error path + - drm/syncobj: Fix use-after-free + - drm/amdgpu: remove gpu info firmware of green sardine + - drm/amd/display: DCN2X Find Secondary Pipe properly in MPO + ODM Case + - drm/i915/gt: Prevent use of engine->wa_ctx after error + - ASoC: Intel: haswell: Add missing pm_ops + - ASoC: rt711: mutex between calibration and power state changes + - SUNRPC: Handle TCP socket sends with kernel_sendpage() again + - HID: sony: select CONFIG_CRC32 + - dm integrity: select CRYPTO_SKCIPHER + - scsi: ufs: Correct the LUN used in eh_device_reset_handler() callback + - scsi: qedi: Correct max length of CHAP secret + - scsi: scsi_debug: Fix memleak in scsi_debug_init() + - scsi: sd: Suppress spurious errors when WRITE SAME is being disabled + - riscv: Fix kernel time_init() + - riscv: Fix sifive serial driver + - riscv: Enable interrupts during syscalls with M-Mode + - HID: logitech-dj: add the G602 receiver + - HID: Ignore battery for Elan touchscreen on ASUS UX550 + - clk: tegra30: Add hda clock default rates to clock driver + - ALSA: hda/tegra: fix tegra-hda on tegra30 soc + - arm64: make atomic helpers __always_inline + - xen: Fix event channel callback via INTX/GSI + - x86/xen: Add xen_no_vector_callback option to test PCI INTX delivery + - dts: phy: fix missing mdio device and probe failure of vsc8541-01 device + - riscv: defconfig: enable gpio support for HiFive Unleashed + - drm/amdgpu/psp: fix psp gfx ctrl cmds + - drm/amd/display: disable dcn10 pipe split by default + - HID: logitech-hidpp: Add product ID for MX Ergo in Bluetooth mode + - drm/amd/display: Fix to be able to stop crc calculation + - drm/nouveau/bios: fix issue shadowing expansion ROMs + - drm/nouveau/privring: ack interrupts the same way as RM + - drm/nouveau/i2c/gm200: increase width of aux semaphore owner fields + - drm/nouveau/mmu: fix vram heap sizing + - drm/nouveau/kms/nv50-: fix case where notifier buffer is at offset 0 + - io_uring: flush timeouts that should already have expired + - libperf tests: If a test fails return non-zero + - libperf tests: Fail when failing to get a tracepoint id + - RISC-V: Set current memblock limit + - RISC-V: Fix maximum allowed phsyical memory for RV32 + - pinctrl: aspeed: g6: Fix PWMG0 pinctrl setting + - pinctrl: mediatek: Fix fallback call path + - scsi: megaraid_sas: Fix MEGASAS_IOC_FIRMWARE regression + - scsi: ufs: ufshcd-pltfrm depends on HAS_IOMEM + - crypto: omap-sham - Fix link error without crypto-engine + - powerpc: Use the common INIT_DATA_SECTION macro in vmlinux.lds.S + - powerpc: Fix alignment bug within the init sections + - arm64: entry: remove redundant IRQ flag tracing + - drm/amdkfd: Fix out-of-bounds read in kdf_create_vcrat_image_cpu() + - i2c: octeon: check correct size of maximum RECV_LEN packet + - platform/x86: intel-vbtn: Drop HP Stream x360 Convertible PC 11 from allow- + list + - platform/x86: hp-wmi: Don't log a warning on HPWMI_RET_UNKNOWN_COMMAND + errors + - gpio: sifive: select IRQ_DOMAIN_HIERARCHY rather than depend on it + - selftests: net: fib_tests: remove duplicate log test + - can: dev: can_restart: fix use after free bug + - can: vxcan: vxcan_xmit: fix use after free bug + - can: peak_usb: fix use after free bugs + - perf evlist: Fix id index for heterogeneous systems + - i2c: sprd: depend on COMMON_CLK to fix compile tests + - iio: common: st_sensors: fix possible infinite loop in st_sensors_irq_thread + - iio: ad5504: Fix setting power-down state + - counter:ti-eqep: remove floor + - cifs: do not fail __smb_send_rqst if non-fatal signals are pending + - irqchip/mips-cpu: Set IPI domain parent chip + - x86/fpu: Add kernel_fpu_begin_mask() to selectively initialize state + - x86/topology: Make __max_die_per_package available unconditionally + - x86/mmx: Use KFPU_387 for MMX string operations + - proc_sysctl: fix oops caused by incorrect command parameters + - mm: memcg/slab: optimize objcg stock draining + - io_uring: fix SQPOLL IORING_OP_CLOSE cancelation state + - intel_th: pci: Add Alder Lake-S support + - intel_th: pci: Add Alder Lake CPU support + - intel_th: pci: Add Alder Lake-P support + - stm class: Fix module init return on allocation failure + - serial: mvebu-uart: fix tx lost characters at power off + - ehci: fix EHCI host controller initialization sequence + - USB: ehci: fix an interrupt calltrace error + - usb: gadget: aspeed: fix stop dma register setting. + - USB: gadget: dummy-hcd: Fix errors in port-reset handling + - usb: udc: core: Use lock when write to soft_connect + - [Config] updateconfigs for USB_BDC_PCI + - usb: bdc: Make bdc pci driver depend on BROKEN + - usb: cdns3: imx: fix writing read-only memory issue + - usb: cdns3: imx: fix can't create core device the second time issue + - xhci: make sure TRB is fully written before giving it to the controller + - xhci: tegra: Delay for disabling LFPS detector + - driver core: Extend device_is_dependent() + - x86/cpu/amd: Set __max_die_per_package on AMD + - cls_flower: call nla_ok() before nla_next() + - netfilter: rpfilter: mask ecn bits before fib lookup + - sh: dma: fix kconfig dependency for G2_DMA + - ASoC: SOF: Intel: fix page fault at probe if i915 init fails + - octeontx2-af: Fix missing check bugs in rvu_cgx.c + - net: dsa: mv88e6xxx: also read STU state in mv88e6250_g1_vtu_getnext + - sh_eth: Fix power down vs. is_opened flag ordering + - cachefiles: Drop superfluous readpages aops NULL check + - lightnvm: fix memory leak when submit fails + - skbuff: back tiny skbs with kmalloc() in __netdev_alloc_skb() too + - kasan: fix unaligned address is unhandled in kasan_remove_zero_shadow + - kasan: fix incorrect arguments passing in kasan_add_zero_shadow + - tcp: fix TCP socket rehash stats mis-accounting + - net_sched: gen_estimator: support large ewma log + - udp: mask TOS bits in udp_v4_early_demux() + - ipv6: create multicast route with RTPROT_KERNEL + - net_sched: avoid shift-out-of-bounds in tcindex_set_parms() + - net_sched: reject silly cell_log in qdisc_get_rtab() + - ipv6: set multicast flag on the multicast route + - net: mscc: ocelot: allow offloading of bridge on top of LAG + - net: Disable NETIF_F_HW_TLS_RX when RXCSUM is disabled + - net: dsa: b53: fix an off by one in checking "vlan->vid" + - tcp: do not mess with cloned skbs in tcp_add_backlog() + - tcp: fix TCP_USER_TIMEOUT with zero window + - net: core: devlink: use right genl user_ptr when handling port param get/set + - pinctrl: qcom: Allow SoCs to specify a GPIO function that's not 0 + - pinctrl: qcom: No need to read-modify-write the interrupt status + - pinctrl: qcom: Properly clear "intr_ack_high" interrupts when unmasking + - pinctrl: qcom: Don't clear pending interrupts when enabling + - tty: implement write_iter + - tty: fix up hung_up_tty_write() conversion + - drm/i915/hdcp: Get conn while content_type changed + - seq_file: add seq_read_iter + - kernfs: implement ->read_iter + - kernfs: implement ->write_iter + - kernfs: wire up ->splice_read and ->splice_write + - fs/pipe: allow sendfile() to pipe again + - Commit 9bb48c82aced ("tty: implement write_iter") converted the tty layer to + use write_iter. Fix the redirected_tty_write declaration also in n_tty and + change the comparisons to use write_iter instead of write. also in n_tty and + change the comparisons to use write_iter instead of write. + * Enforce CONFIG_DRM_BOCHS=m (LP: #1916290) + - [Config] Enforce CONFIG_DRM_BOCHS=m + * Groovy update: upstream stable patchset 2021-02-25 (LP: #1916960) + - btrfs: reloc: fix wrong file extent type check to avoid false ENOENT + - btrfs: prevent NULL pointer dereference in extent_io_tree_panic + - ALSA: doc: Fix reference to mixart.rst + - ASoC: AMD Renoir - add DMI entry for Lenovo ThinkPad X395 + - ASoC: dapm: remove widget from dirty list on free + - x86/hyperv: check cpu mask after interrupt has been disabled + - drm/amdgpu: add green_sardine device id (v2) + - drm/amdgpu: fix DRM_INFO flood if display core is not supported (bug 210921) + - drm/amdgpu: add Green_Sardine APU flag + - drm/amdgpu: add green_sardine support for gpu_info and ip block setting (v2) + - drm/amdgpu: add soc15 common ip block support for green_sardine (v3) + - drm/amdgpu: add new device id for Renior + - drm/i915/gt: Limit VFE threads based on GT + - drm/i915/backlight: fix CPU mode backlight takeover on LPT + - drm/bridge: sii902x: Refactor init code into separate function + - dt-bindings: display: sii902x: Add supply bindings + - tracing/kprobes: Do the notrace functions check without kprobes on ftrace + - ext4: fix bug for rename with RENAME_WHITEOUT + - cifs: check pointer before freeing + - cifs: fix interrupted close commands + - riscv: return -ENOSYS for syscall -1 + - riscv: Fixup CONFIG_GENERIC_TIME_VSYSCALL + - mips: fix Section mismatch in reference + - mips: lib: uncached: fix non-standard usage of variable 'sp' + - MIPS: boot: Fix unaligned access with CONFIG_MIPS_RAW_APPENDED_DTB + - MIPS: Fix malformed NT_FILE and NT_SIGINFO in 32bit coredumps + - MIPS: relocatable: fix possible boot hangup with KASLR enabled + - RDMA/ocrdma: Fix use after free in ocrdma_dealloc_ucontext_pd() + - ACPI: scan: Harden acpi_device_add() against device ID overflows + - xen/privcmd: allow fetching resource sizes + - compiler.h: Raise minimum version of GCC to 5.1 for arm64 + - mm/hugetlb: fix potential missing huge page size info + - mm/process_vm_access.c: include compat.h + - dm raid: fix discard limits for raid1 + - dm snapshot: flush merged data before committing metadata + - dm integrity: fix flush with external metadata device + - dm integrity: fix the maximum number of arguments + - dm crypt: use GFP_ATOMIC when allocating crypto requests from softirq + - stmmac: intel: change all EHL/TGL to auto detect phy addr + - r8152: Add Lenovo Powered USB-C Travel Hub + - btrfs: tree-checker: check if chunk item end overflows + - ext4: don't leak old mountpoint samples + - ARC: build: remove non-existing bootpImage from KBUILD_IMAGE + - ARC: build: add uImage.lzma to the top-level target + - ARC: build: add boot_targets to PHONY + - ARC: build: move symlink creation to arch/arc/Makefile to avoid race + - ARM: omap2: pmic-cpcap: fix maximum voltage to be consistent with defaults + on xt875 + - ath11k: fix crash caused by NULL rx_channel + - netfilter: ipset: fixes possible oops in mtype_resize + - btrfs: fix async discard stall + - btrfs: merge critical sections of discard lock in workfn + - btrfs: fix transaction leak and crash after RO remount caused by qgroup + rescan + - regulator: bd718x7: Add enable times + - ethernet: ucc_geth: fix definition and size of ucc_geth_tx_global_pram + - habanalabs/gaudi: retry loading TPC f/w on -EINTR + - habanalabs: register to pci shutdown callback + - habanalabs: Fix memleak in hl_device_reset + - hwmon: (pwm-fan) Ensure that calculation doesn't discard big period values + - lib/raid6: Let $(UNROLL) rules work with macOS userland + - spi: fix the divide by 0 error when calculating xfer waiting time + - arch/arc: add copy_user_page() to to fix build error on ARC + - misdn: dsp: select CONFIG_BITREVERSE + - net: ethernet: fs_enet: Add missing MODULE_LICENSE + - nvme-pci: mark Samsung PM1725a as IGNORE_DEV_SUBNQN + - nvme: avoid possible double fetch in handling CQE + - nvmet-rdma: Fix list_del corruption on queue establishment failure + - drm/amd/display: fix sysfs amdgpu_current_backlight_pwm NULL pointer issue + - drm/amdgpu: fix a GPU hang issue when remove device + - drm/amd/pm: fix the failure when change power profile for renoir + - drm/amdgpu: fix potential memory leak during navi12 deinitialization + - usb: typec: Fix copy paste error for NVIDIA alt-mode description + - iommu/vt-d: Fix lockdep splat in sva bind()/unbind() + - ACPI: scan: add stub acpi_create_platform_device() for !CONFIG_ACPI + - drm/msm: Call msm_init_vram before binding the gpu + - ARM: picoxcell: fix missing interrupt-parent properties + - poll: fix performance regression due to out-of-line __put_user() + - bpf: Simplify task_file_seq_get_next() + - bpf: Save correct stopping point in file seq iteration + - cfg80211: select CONFIG_CRC32 + - iommu/vt-d: Update domain geometry in iommu_ops.at(de)tach_dev + - net/mlx5: Fix passing zero to 'PTR_ERR' + - net/mlx5: E-Switch, fix changing vf VLANID + - mm: don't put pinned pages into the swap cache + - perf intel-pt: Fix 'CPU too large' error + - dump_common_audit_data(): fix racy accesses to ->d_name + - ASoC: meson: axg-tdm-interface: fix loopback + - ASoC: meson: axg-tdmin: fix axg skew offset + - ASoC: Intel: fix error code cnl_set_dsp_D0() + - nvmet-rdma: Fix NULL deref when setting pi_enable and traddr INADDR_ANY + - nvme: don't intialize hwmon for discovery controllers + - nvme-tcp: fix possible data corruption with bio merges + - nvme-tcp: Fix warning with CONFIG_DEBUG_PREEMPT + - NFS4: Fix use-after-free in trace_event_raw_event_nfs4_set_lock + - pNFS: We want return-on-close to complete when evicting the inode + - pNFS: Mark layout for return if return-on-close was not sent + - pNFS: Stricter ordering of layoutget and layoutreturn + - NFS: Adjust fs_context error logging + - NFS/pNFS: Don't call pnfs_free_bucket_lseg() before removing the request + - NFS/pNFS: Don't leak DS commits in pnfs_generic_retry_commit() + - NFS/pNFS: Fix a leak of the layout 'plh_outstanding' counter + - NFS: nfs_delegation_find_inode_server must first reference the superblock + - NFS: nfs_igrab_and_active must first reference the superblock + - scsi: ufs: Fix possible power drain during system suspend + - ext4: fix superblock checksum failure when setting password salt + - RDMA/restrack: Don't treat as an error allocation ID wrapping + - RDMA/usnic: Fix memleak in find_free_vf_and_create_qp_grp + - bnxt_en: Improve stats context resource accounting with RDMA driver loaded. + - RDMA/mlx5: Fix wrong free of blue flame register on error + - IB/mlx5: Fix error unwinding when set_has_smi_cap fails + - dm zoned: select CONFIG_CRC32 + - drm/i915/dsi: Use unconditional msleep for the panel_on_delay when there is + no reset-deassert MIPI-sequence + - drm/i915/icl: Fix initing the DSI DSC power refcount during HW readout + - drm/i915/gt: Restore clear-residual mitigations for Ivybridge, Baytrail + - mm, slub: consider rest of partial list if acquire_slab() fails + - iommu/vt-d: Fix unaligned addresses for intel_flush_svm_range_dev() + - net: sunrpc: interpret the return value of kstrtou32 correctly + - selftests: netfilter: Pass family parameter "-f" to conntrack tool + - dm: eliminate potential source of excessive kernel log noise + - ALSA: fireface: Fix integer overflow in transmit_midi_msg() + - ALSA: firewire-tascam: Fix integer overflow in midi_port_work() + - netfilter: conntrack: fix reading nf_conntrack_buckets + - netfilter: nf_nat: Fix memleak in nf_nat_init + - netfilter: nft_compat: remove flush counter optimization + - kbuild: enforce -Werror=return-type + - [Config] updateconfigs for KPROBE_EVENTS_ON_NOTRACE + - x86/hyperv: Initialize clockevents after LAPIC is initialized + - bpf: Fix signed_{sub,add32}_overflows type handling + - nfsd4: readdirplus shouldn't return parent of export + - bpf: Don't leak memory in bpf getsockopt when optlen == 0 + - bpf: Support PTR_TO_MEM{,_OR_NULL} register spilling + - bpf: Fix helper bpf_map_peek_elem_proto pointing to wrong callback + - net: ipa: modem: add missing SET_NETDEV_DEV() for proper sysfs links + - net: fix use-after-free when UDP GRO with shared fraglist + - udp: Prevent reuseport_select_sock from reading uninitialized socks + - netxen_nic: fix MSI/MSI-x interrupts + - net: ipv6: Validate GSO SKB before finish IPv6 processing + - tipc: fix NULL deref in tipc_link_xmit() + - mlxsw: core: Add validation of transceiver temperature thresholds + - mlxsw: core: Increase critical threshold for ASIC thermal zone + - net: mvpp2: Remove Pause and Asym_Pause support + - rndis_host: set proper input size for OID_GEN_PHYSICAL_MEDIUM request + - esp: avoid unneeded kmap_atomic call + - net: dcb: Validate netlink message in DCB handler + - net: dcb: Accept RTM_GETDCB messages carrying set-like DCB commands + - rxrpc: Call state should be read with READ_ONCE() under some circumstances + - i40e: fix potential NULL pointer dereferencing + - net: stmmac: Fixed mtu channged by cache aligned + - net: sit: unregister_netdevice on newlink's error path + - net: stmmac: fix taprio schedule configuration + - net: stmmac: fix taprio configuration when base_time is in the past + - net: avoid 32 x truesize under-estimation for tiny skbs + - rxrpc: Fix handling of an unsupported token type in rxrpc_read() + - net: stmmac: use __napi_schedule() for PREEMPT_RT + - drm/panel: otm8009a: allow using non-continuous dsi clock + - mac80211: do not drop tx nulldata packets on encrypted links + - mac80211: check if atf has been disabled in __ieee80211_schedule_txq + - net: dsa: unbind all switches from tree when DSA master unbinds + - cxgb4/chtls: Fix tid stuck due to wrong update of qid + - spi: fsl: Fix driver breakage when SPI_CS_HIGH is not set in spi->mode + - spi: cadence: cache reference clock rate during probe + - usb: ohci: Make distrust_firmware param default to false + - elfcore: fix building with clang + - spi: npcm-fiu: simplify the return expression of npcm_fiu_probe() + - spi: npcm-fiu: Disable clock in probe error path + * CVE-2021-20239 + - net, sctp, filter: remap copy_from_user failure error + + -- Marcelo Henrique Cerri Fri, 26 Mar 2021 16:30:15 -0300 + +linux-azure (5.8.0-1026.28) groovy; urgency=medium + + [ Ubuntu: 5.8.0-48.54 ] + + * CVE-2020-27170 + - bpf: Fix off-by-one for area size in creating mask to left + * CVE-2020-27171 + - bpf: Prohibit alu ops for pointer types not defining ptr_limit + + -- Thadeu Lima de Souza Cascardo Fri, 19 Mar 2021 19:28:49 -0300 + +linux-azure (5.8.0-1025.27) groovy; urgency=medium + + [ Ubuntu: 5.8.0-47.53 ] + + * binary assembly failures with CONFIG_MODVERSIONS present (LP: #1919315) + - [Packaging] quiet (nomially) benign errors in BUILD script + * CVE-2021-3444 + - bpf: Fix 32 bit src register truncation on div/mod + - bpf: Fix truncation handling for mod32 dst reg wrt zero + * CVE-2021-27365 + - scsi: iscsi: Verify lengths on passthrough PDUs + - sysfs: Add sysfs_emit and sysfs_emit_at to format sysfs output + - scsi: iscsi: Ensure sysfs attributes are limited to PAGE_SIZE + * CVE-2021-27363 // CVE-2021-27364 + - scsi: iscsi: Restrict sessions and handles to admin capabilities + + -- Stefan Bader Wed, 17 Mar 2021 15:00:15 +0100 + +linux-azure (5.8.0-1024.26) groovy; urgency=medium + + * groovy/linux-azure: 5.8.0-1024.26 -proposed tracker (LP: #1916130) + + * Azure kernel for focal misses binder and ashmem kernel modules + (LP: #1914568) + - [Config] Enable CONFIG_ASHMEM=m, CONFIG_ANDROID_BINDER_IPC=m + - azure: [Config] Disable ION + + * Please trust Canonical Livepatch Service kmod signing key (LP: #1898716) + - azure: [Config] enable CONFIG_MODVERSIONS=y + - azure: [Packaging] build canonical-certs.pem from branch/arch certs + - azure: [Config] Allow ASM_MODVERSIONS + + [ Ubuntu: 5.8.0-45.51 ] + + * groovy/linux: 5.8.0-45.51 -proposed tracker (LP: #1916143) + * Please trust Canonical Livepatch Service kmod signing key (LP: #1898716) + - [Config] enable CONFIG_MODVERSIONS=y + - [Packaging] build canonical-certs.pem from branch/arch certs + - [Config] add Canonical Livepatch Service key to SYSTEM_TRUSTED_KEYS + - [Config] add ubuntu-drivers key to SYSTEM_TRUSTED_KEYS + - [Config] Allow ASM_MODVERSIONS and MODULE_REL_CRCS + * CVE-2021-20194 + - bpf, cgroup: Fix optlen WARN_ON_ONCE toctou + - bpf, cgroup: Fix problematic bounds check + * Missing device id for Intel TGL-H ISH [8086:43fc] in intel-ish-hid driver + (LP: #1914543) + - HID: intel-ish-hid: ipc: Add Tiger Lake H PCI device ID + * Prevent thermal shutdown during boot process (LP: #1906168) + - thermal/core: Emit a warning if the thermal zone is updated without ops + - thermal/core: Add critical and hot ops + - thermal/drivers/acpi: Use hot and critical ops + - thermal/drivers/rcar: Remove notification usage + - thermal: int340x: Fix unexpected shutdown at critical temperature + - thermal: intel: pch: Fix unexpected shutdown at critical temperature + * geneve overlay network on vlan interface broken with offload enabled + (LP: #1914447) + - net/mlx5e: Fix SWP offsets when vlan inserted by driver + * Groovy update: upstream stable patchset 2021-02-11 (LP: #1915473) + - net: cdc_ncm: correct overhead in delayed_ndp_size + - net: hns3: fix the number of queues actually used by ARQ + - net: hns3: fix a phy loopback fail issue + - net: stmmac: dwmac-sun8i: Balance internal PHY resource references + - net: stmmac: dwmac-sun8i: Balance internal PHY power + - net: vlan: avoid leaks on register_vlan_dev() failures + - net/sonic: Fix some resource leaks in error handling paths + - net: ipv6: fib: flush exceptions when purging route + - tools: selftests: add test for changing routes with PTMU exceptions + - net: fix pmtu check in nopmtudisc mode + - net: ip: always refragment ip defragmented packets + - octeontx2-af: fix memory leak of lmac and lmac->name + - nexthop: Fix off-by-one error in error path + - nexthop: Unlink nexthop group entry in error path + - s390/qeth: fix L2 header access in qeth_l3_osa_features_check() + - net: dsa: lantiq_gswip: Exclude RMII from modes that report 1 GbE + - net/mlx5: Use port_num 1 instead of 0 when delete a RoCE address + - net/mlx5e: ethtool, Fix restriction of autoneg with 56G + - chtls: Fix hardware tid leak + - chtls: Remove invalid set_tcb call + - chtls: Fix panic when route to peer not configured + - chtls: Replace skb_dequeue with skb_peek + - chtls: Added a check to avoid NULL pointer dereference + - chtls: Fix chtls resources release sequence + - HID: wacom: Fix memory leakage caused by kfifo_alloc + - ARM: OMAP2+: omap_device: fix idling of devices during probe + - i2c: sprd: use a specific timeout to avoid system hang up issue + - dmaengine: dw-edma: Fix use after free in dw_edma_alloc_chunk() + - can: tcan4x5x: fix bittiming const, use common bittiming from m_can driver + - can: m_can: m_can_class_unregister(): remove erroneous m_can_clk_stop() + - can: kvaser_pciefd: select CONFIG_CRC32 + - cpufreq: powernow-k8: pass policy rather than use cpufreq_cpu_get() + - spi: stm32: FIFO threshold level - fix align packet size + - i2c: i801: Fix the i2c-mux gpiod_lookup_table not being properly terminated + - dmaengine: mediatek: mtk-hsdma: Fix a resource leak in the error handling + path of the probe function + - dmaengine: xilinx_dma: check dma_async_device_register return value + - dmaengine: xilinx_dma: fix incompatible param warning in _child_probe() + - dmaengine: xilinx_dma: fix mixed_enum_type coverity warning + - qed: select CONFIG_CRC32 + - wil6210: select CONFIG_CRC32 + - block: rsxx: select CONFIG_CRC32 + - lightnvm: select CONFIG_CRC32 + - iommu/intel: Fix memleak in intel_irq_remapping_alloc + - bpftool: Fix compilation failure for net.o with older glibc + - net/mlx5e: Fix memleak in mlx5e_create_l2_table_groups + - net/mlx5e: Fix two double free cases + - regmap: debugfs: Fix a memory leak when calling regmap_attach_dev + - wan: ds26522: select CONFIG_BITREVERSE + - regulator: qcom-rpmh-regulator: correct hfsmps515 definition + - net: mvpp2: disable force link UP during port init procedure + - KVM: arm64: Don't access PMCR_EL0 when no PMU is available + - block: fix use-after-free in disk_part_iter_next + - net: drop bogus skb with CHECKSUM_PARTIAL and offset beyond end of trimmed + packet + - regmap: debugfs: Fix a reversed if statement in regmap_debugfs_init() + - drm/panfrost: Don't corrupt the queue mutex on open/close + - scsi: ufs: Fix -Wsometimes-uninitialized warning + - btrfs: skip unnecessary searches for xattrs when logging an inode + - net: stmmac: dwmac-sun8i: Fix probe error handling + - net: stmmac: dwmac-sun8i: Balance syscon (de)initialization + - net: bareudp: add missing error handling for bareudp_link_config() + - ptp: ptp_ines: prevent build when HAS_IOMEM is not set + - chtls: Avoid unnecessary freeing of oreq pointer + - nexthop: Bounce NHA_GATEWAY in FDB nexthop groups + - net/mlx5e: In skb build skip setting mark in switchdev mode + - ionic: start queues before announcing link up + - fanotify: Fix sys_fanotify_mark() on native x86-32 + - spi: spi-geni-qcom: Fix geni_spi_isr() NULL dereference in timeout case + - i2c: mediatek: Fix apdma and i2c hand-shake timeout + - interconnect: imx: Add a missing of_node_put after of_device_is_available + - dmaengine: milbeaut-xdmac: Fix a resource leak in the error handling path of + the probe function + - arm64: mm: Fix ARCH_LOW_ADDRESS_LIMIT when !CONFIG_ZONE_DMA + - phy: dp83640: select CONFIG_CRC32 + - zonefs: select CONFIG_CRC32 + - iommu/vt-d: Fix misuse of ALIGN in qi_flush_piotlb() + - nvme-tcp: Fix possible race of io_work and direct send + - arm64: cpufeature: remove non-exist CONFIG_KVM_ARM_HOST + - drm/i915/dp: Track pm_qos per connector + - net: mvneta: fix error message when MTU too large for XDP + - selftests: fib_nexthops: Fix wrong mausezahn invocation + - block/rnbd-clt: avoid module unload race with close confirmation + - drm/panfrost: Remove unused variables in panfrost_job_close() + - tools headers UAPI: Sync linux/fscrypt.h with the kernel sources + * Fix the video can't output through WD19TB connected on TGL's Type-C port + during cold-boot (LP: #1913372) + - drm/dp/mst: Export drm_dp_get_vc_payload_bw() + - drm/i915: Fix the MST PBN divider calculation + * Fix regression introduced by codec PM change (LP: #1912676) + - ASoC: SOF: Intel: hda: Resume codec to do jack detection + - ASoC: SOF: Intel: hda: Modify existing helper to disable WAKEEN + - ASoC: SOF: Intel: hda: Avoid checking jack on system suspend + - ALSA: hda: Balance runtime/system PM if direct-complete is disabled + * Restore palm ejection on multi-input devices (LP: #1913520) + - HID: multitouch: Apply MT_QUIRK_CONFIDENCE quirk for multi-input devices + * intel-hid is not loaded on new Intel platform (LP: #1907160) + - platform/x86: intel-hid: add Rocket Lake ACPI device ID + * Remove scary stack trace from Realtek WiFi driver (LP: #1913263) + - rtw88: reduce the log level for failure of tx report + * Groovy update: upstream stable patchset 2021-02-05 (LP: #1914832) + - i40e: Fix Error I40E_AQ_RC_EINVAL when removing VFs + - iavf: fix double-release of rtnl_lock + - net/sched: sch_taprio: ensure to reset/destroy all child qdiscs + - net: mvpp2: Add TCAM entry to drop flow control pause frames + - net: mvpp2: prs: fix PPPoE with ipv6 packet parse + - net: systemport: set dev->max_mtu to UMAC_MAX_MTU_SIZE + - ethernet: ucc_geth: fix use-after-free in ucc_geth_remove() + - ethernet: ucc_geth: set dev->max_mtu to 1518 + - ionic: account for vlan tag len in rx buffer len + - atm: idt77252: call pci_disable_device() on error path + - net: mvpp2: Fix GoP port 3 Networking Complex Control configurations + - ibmvnic: fix login buffer memory leak + - ibmvnic: continue fatal error reset after passive init + - net: ethernet: mvneta: Fix error handling in mvneta_probe + - virtio_net: Fix recursive call to cpus_read_lock() + - net/ncsi: Use real net-device for response handler + - net: ethernet: Fix memleak in ethoc_probe + - net-sysfs: take the rtnl lock when storing xps_cpus + - net-sysfs: take the rtnl lock when accessing xps_cpus_map and num_tc + - net-sysfs: take the rtnl lock when storing xps_rxqs + - net-sysfs: take the rtnl lock when accessing xps_rxqs_map and num_tc + - net: ethernet: ti: cpts: fix ethtool output when no ptp_clock registered + - tun: fix return value when the number of iovs exceeds MAX_SKB_FRAGS + - bnxt_en: Check TQM rings for maximum supported value. + - net: mvpp2: fix pkt coalescing int-threshold configuration + - bnxt_en: Fix AER recovery. + - ipv4: Ignore ECN bits for fib lookups in fib_compute_spec_dst() + - net: sched: prevent invalid Scell_log shift count + - net: hns: fix return value check in __lb_other_process() + - erspan: fix version 1 check in gre_parse_header() + - net: hdlc_ppp: Fix issues when mod_timer is called while timer is running + - bareudp: set NETIF_F_LLTX flag + - bareudp: Fix use of incorrect min_headroom size + - vhost_net: fix ubuf refcount incorrectly when sendmsg fails + - r8169: work around power-saving bug on some chip versions + - net: dsa: lantiq_gswip: Enable GSWIP_MII_CFG_EN also for internal PHYs + - net: dsa: lantiq_gswip: Fix GSWIP_MII_CFG(p) register access + - CDC-NCM: remove "connected" log message + - ibmvnic: fix: NULL pointer dereference. + - net: usb: qmi_wwan: add Quectel EM160R-GL + - stmmac: intel: Add PCI IDs for TGL-H platform + - workqueue: Kick a worker based on the actual activation of delayed works + - scsi: ufs: Fix wrong print message in dev_err() + - scsi: ufs-pci: Fix restore from S4 for Intel controllers + - scsi: ufs-pci: Ensure UFS device is in PowerDown mode for suspend-to-disk + ->poweroff() + - scsi: ufs-pci: Fix recovery from hibernate exit errors for Intel controllers + - blk-mq: remove the BLK_MQ_REQ_INTERNAL flag + - scsi: block: Introduce BLK_MQ_REQ_PM + - scsi: ide: Do not set the RQF_PREEMPT flag for sense requests + - scsi: ide: Mark power management requests with RQF_PM instead of RQF_PREEMPT + - scsi: scsi_transport_spi: Set RQF_PM for domain validation commands + - scsi: core: Only process PM requests if rpm_status != RPM_ACTIVE + - local64.h: make mandatory + - lib/genalloc: fix the overflow when size is too big + - depmod: handle the case of /sbin/depmod without /sbin in PATH + - scsi: ufs: Clear UAC for FFU and RPMB LUNs + - kbuild: don't hardcode depmod path + - Bluetooth: revert: hci_h5: close serdev device and free hu in h5_close + - scsi: block: Remove RQF_PREEMPT and BLK_MQ_REQ_PREEMPT + - scsi: block: Do not accept any requests while suspended + - crypto: ecdh - avoid buffer overflow in ecdh_set_secret() + - crypto: asym_tpm: correct zero out potential secrets + - powerpc: Handle .text.{hot,unlikely}.* in linker script + - Staging: comedi: Return -EFAULT if copy_to_user() fails + - staging: mt7621-dma: Fix a resource leak in an error handling path + - usb: gadget: enable super speed plus + - USB: cdc-acm: blacklist another IR Droid device + - USB: cdc-wdm: Fix use after free in service_outstanding_interrupt(). + - usb: dwc3: meson-g12a: disable clk on error handling path in probe + - usb: dwc3: gadget: Clear wait flag on dequeue + - usb: dwc3: ulpi: Use VStsDone to detect PHY regs access completion + - usb: dwc3: ulpi: Replace CPU-based busyloop with Protocol-based one + - usb: dwc3: ulpi: Fix USB2.0 HS/FS/LS PHY suspend regression + - usb: chipidea: ci_hdrc_imx: add missing put_device() call in + usbmisc_get_init_data() + - USB: xhci: fix U1/U2 handling for hardware with XHCI_INTEL_HOST quirk set + - usb: usbip: vhci_hcd: protect shift size + - usb: uas: Add PNY USB Portable SSD to unusual_uas + - USB: serial: iuu_phoenix: fix DMA from stack + - USB: serial: option: add LongSung M5710 module support + - USB: serial: option: add Quectel EM160R-GL + - USB: yurex: fix control-URB timeout handling + - USB: usblp: fix DMA to stack + - ALSA: usb-audio: Fix UBSAN warnings for MIDI jacks + - usb: gadget: select CONFIG_CRC32 + - USB: Gadget: dummy-hcd: Fix shift-out-of-bounds bug + - usb: gadget: f_uac2: reset wMaxPacketSize + - usb: gadget: function: printer: Fix a memory leak for interface descriptor + - usb: gadget: u_ether: Fix MTU size mismatch with RX packet size + - USB: gadget: legacy: fix return error code in acm_ms_bind() + - usb: gadget: Fix spinlock lockup on usb_function_deactivate + - usb: gadget: configfs: Preserve function ordering after bind failure + - usb: gadget: configfs: Fix use-after-free issue with udc_name + - USB: serial: keyspan_pda: remove unused variable + - hwmon: (amd_energy) fix allocation of hwmon_channel_info config + - mm: make wait_on_page_writeback() wait for multiple pending writebacks + - x86/mm: Fix leak of pmd ptlock + - kvm: check tlbs_dirty directly + - task_work: cleanup notification modes + - x86/resctrl: Use an IPI instead of task_work_add() to update PQR_ASSOC MSR + - x86/resctrl: Don't move a task to the same resource group + - blk-iocost: fix NULL iocg deref from racing against initialization + - ALSA: hda/via: Fix runtime PM for Clevo W35xSS + - ALSA: hda/conexant: add a new hda codec CX11970 + - ALSA: hda/realtek - Fix speaker volume control on Lenovo C940 + - ALSA: hda/realtek: Add mute LED quirk for more HP laptops + - ALSA: hda/realtek: Add two "Intel Reference board" SSID in the ALC256. + - iommu/vt-d: Move intel_iommu info from struct intel_svm to struct + intel_svm_dev + - btrfs: send: fix wrong file path when there is an inode with a pending rmdir + - Revert "device property: Keep secondary firmware node secondary by type" + - dmabuf: fix use-after-free of dmabuf's file->f_inode + - arm64: link with -z norelro for LLD or aarch64-elf + - drm/i915: clear the shadow batch + - netfilter: x_tables: Update remaining dereference to RCU + - netfilter: ipset: fix shift-out-of-bounds in htable_bits() + - netfilter: xt_RATEEST: reject non-null terminated string from userspace + - netfilter: nft_dynset: report EOPNOTSUPP on missing set feature + - dmaengine: idxd: off by one in cleanup code + - x86/mtrr: Correct the range check before performing MTRR type lookups + - KVM: x86: fix shift out of bounds reported by UBSAN + - rtlwifi: rise completion at the last step of firmware callback + * Groovy update: upstream stable patchset 2021-02-03 (LP: #1914472) + - net/sched: sch_taprio: reset child qdiscs before freeing them + - mptcp: fix security context on server socket + - ethtool: fix error paths in ethnl_set_channels() + - ethtool: fix string set id check + - md/raid10: initialize r10_bio->read_slot before use. + - drm/amd/display: Add get_dig_frontend implementation for DCEx + - io_uring: close a small race gap for files cancel + - jffs2: Allow setting rp_size to zero during remounting + - jffs2: Fix NULL pointer dereference in rp_size fs option parsing + - scsi: block: Fix a race in the runtime power management code + - mm/hugetlb: fix deadlock in hugetlb_cow error path + - mm: memmap defer init doesn't work as expected + - lib/zlib: fix inflating zlib streams on s390 + - uapi: move constants from to + - tools headers UAPI: Sync linux/const.h with the kernel headers + - cgroup: Fix memory leak when parsing multiple source parameters + - zlib: move EXPORT_SYMBOL() and MODULE_LICENSE() out of dfltcc_syms.c + - scsi: cxgb4i: Fix TLS dependency + - Bluetooth: hci_h5: close serdev device and free hu in h5_close + - fbcon: Disable accelerated scrolling + - reiserfs: add check for an invalid ih_entry_count + - misc: vmw_vmci: fix kernel info-leak by initializing dbells in + vmci_ctx_get_chkpt_doorbells() + - media: gp8psk: initialize stats at power control logic + - f2fs: fix shift-out-of-bounds in sanity_check_raw_super() + - ALSA: seq: Use bool for snd_seq_queue internal flags + - ALSA: rawmidi: Access runtime->avail always in spinlock + - bfs: don't use WARNING: string when it's just info. + - ext4: check for invalid block size early when mounting a file system + - fcntl: Fix potential deadlock in send_sig{io, urg}() + - rtc: sun6i: Fix memleak in sun6i_rtc_clk_init + - module: set MODULE_STATE_GOING state when a module fails to load + - quota: Don't overflow quota file offsets + - rtc: pl031: fix resource leak in pl031_probe + - powerpc: sysdev: add missing iounmap() on error in mpic_msgr_probe() + - i3c master: fix missing destroy_workqueue() on error in i3c_master_register + - NFSv4: Fix a pNFS layout related use-after-free race when freeing the inode + - f2fs: avoid race condition for shrinker count + - module: delay kobject uevent until after module init call + - fs/namespace.c: WARN if mnt_count has become negative + - watchdog: rti-wdt: fix reference leak in rti_wdt_probe + - um: random: Register random as hwrng-core device + - um: ubd: Submit all data segments atomically + - ceph: fix inode refcount leak when ceph_fill_inode on non-I_NEW inode fails + - drm/amd/display: updated wm table for Renoir + - tick/sched: Remove bogus boot "safety" check + - s390: always clear kernel stack backchain before calling functions + - io_uring: remove racy overflow list fast checks + - ALSA: pcm: Clear the full allocated memory at hw_params + - dm verity: skip verity work if I/O error when system is shutting down + - rtc: pcf2127: move watchdog initialisation to a separate function + - rtc: pcf2127: only use watchdog when explicitly available + - dt-bindings: rtc: add reset-source property + - kdev_t: always inline major/minor helper functions + - ALSA: hda/realtek - Modify Dell platform name + - scsi: ufs: Allow an error return value from ->device_reset() + - scsi: ufs: Re-enable WriteBooster after device reset + - RDMA/siw,rxe: Make emulated devices virtual in the device tree + - fuse: fix bad inode + - rwsem: Implement down_read_killable_nested + - rwsem: Implement down_read_interruptible + - exec: Transform exec_update_mutex into a rw_semaphore + - mwifiex: Fix possible buffer overflows in mwifiex_cmd_802_11_ad_hoc_start + + -- William Breathitt Gray Wed, 24 Feb 2021 07:13:34 -0500 + +linux-azure (5.8.0-1023.25) groovy; urgency=medium + + * groovy/linux-azure: 5.8.0-1023.25 -proposed tracker (LP: #1914792) + + * Groovy update: upstream stable patchset 2021-01-12 (LP: #1911235) + - [Config] azure: update config for INFINIBAND_VIRT_DMA + + * Groovy update: upstream stable patchset 2021-01-13 (LP: #1911476) + - [Config] azure: updateconfigs for ZSMALLOC_PGTABLE_MAPPING + + * Revert or drop obsolete patches for PCI (LP: #1911205) + - Revert "UBUNTU: SAUCE: pci-hyperv: Use only 16 bit integer for PCI domain" + - Revert "Revert "PCI: hv: Make sure the bus domain is really unique"" + + * Disable Atari partition support for cloud kernels (LP: #1908264) + - [Config] azure: Disable ATARI_PARTITION + + * Enable boot from NVMe device for all images (LP: #1908571) + - [Config] azure: CONFIG_PCI_HYPERV=y + + [ Ubuntu: 5.8.0-44.50 ] + + * groovy/linux: 5.8.0-44.50 -proposed tracker (LP: #1914805) + * Packaging resync (LP: #1786013) + - update dkms package versions + - update dkms package versions + * Introduce the new NVIDIA 460-server series and update the 460 series + (LP: #1913200) + - [Config] dkms-versions -- drop NVIDIA 435 455 and 440-server + - [Config] dkms-versions -- add the 460-server nvidia driver + * [SRU][G/H/U/OEM-5.10] re-enable s0ix of e1000e (LP: #1910541) + - Revert "UBUNTU: SAUCE: e1000e: bump up timeout to wait when ME un-configure + ULP mode" + - e1000e: Only run S0ix flows if shutdown succeeded + - Revert "e1000e: disable s0ix entry and exit flows for ME systems" + - e1000e: Export S0ix flags to ethtool + * suspend only works once on ThinkPad X1 Carbon gen 7 (LP: #1865570) // + [SRU][G/H/U/OEM-5.10] re-enable s0ix of e1000e (LP: #1910541) + - e1000e: bump up timeout to wait when ME un-configures ULP mode + * Cannot probe sata disk on sata controller behind VMD: ata1.00: failed to + IDENTIFY (I/O error, err_mask=0x4) (LP: #1894778) + - PCI: vmd: Offset Client VMD MSI-X vectors + * Enable mute and micmute LED on HP EliteBook 850 G7 (LP: #1910102) + - ALSA: hda/realtek: Enable mute and micmute LED on HP EliteBook 850 G7 + * SYNA30B4:00 06CB:CE09 Mouse on HP EliteBook 850 G7 not working at all + (LP: #1908992) + - HID: multitouch: Enable multi-input for Synaptics pointstick/touchpad device + * HD Audio Device PCI ID for the Intel Cometlake-R platform (LP: #1912427) + - SAUCE: ALSA: hda: Add Cometlake-R PCI ID + * switch to an autogenerated nvidia series based core via dkms-versions + (LP: #1912803) + - [Packaging] nvidia -- use dkms-versions to define versions built + - [Packaging] update-version-dkms -- maintain flags fields + - [Config] dkms-versions -- add transitional/skip information for nvidia + packages + * udpgro.sh in net from ubuntu_kernel_selftests seems not reflecting sub-test + result (LP: #1908499) + - selftests: fix the return value for UDP GRO test + * [UBUNTU 21.04] vfio: pass DMA availability information to userspace + (LP: #1907421) + - vfio/type1: Refactor vfio_iommu_type1_ioctl() + - vfio iommu: Add dma available capability + * qede: Kubernetes Internal DNS Failure due to QL41xxx NIC not supporting IPIP + tx csum offload (LP: #1909062) + - qede: fix offload for IPIP tunnel packets + * Use DCPD to control HP DreamColor panel (LP: #1911001) + - SAUCE: drm/dp: Another HP DreamColor panel brigntness fix + * Fix right sounds and mute/micmute LEDs for HP ZBook Fury 15/17 G7 Mobile + Workstation (LP: #1910561) + - ALSA: hda/realtek: fix right sounds and mute/micmute LEDs for HP machines + * Ubuntu 20.04 - multicast counter is not increased in ip -s (LP: #1901842) + - net/mlx5e: Fix multicast counter not up-to-date in "ip -s" + * eeh-basic.sh in powerpc from ubuntu_kernel_selftests timeout with 5.4 P8 / + P9 (LP: #1882503) + - selftests/powerpc/eeh: disable kselftest timeout setting for eeh-basic + * DMI entry syntax fix for Pegatron / ByteSpeed C15B (LP: #1910639) + - Input: i8042 - unbreak Pegatron C15B + * update ENA driver, incl. new ethtool stats (LP: #1910291) + - net: ena: ethtool: convert stat_offset to 64 bit resolution + - net: ena: ethtool: Add new device statistics + - net: ena: ethtool: add stats printing to XDP queues + - net: ena: xdp: add queue counters for xdp actions + - net: ena: Change license into format to SPDX in all files + - net: ena: Change log message to netif/dev function + - net: ena: Remove redundant print of placement policy + - net: ena: Change RSS related macros and variables names + - net: ena: Fix all static chekers' warnings + - drivers/net/ethernet: remove incorrectly formatted doc + - net: ena: Capitalize all log strings and improve code readability + * Groovy update: upstream stable patchset 2021-01-15 (LP: #1912027) + - net: ipconfig: Avoid spurious blank lines in boot log + - x86/split-lock: Avoid returning with interrupts enabled + - exfat: Avoid allocating upcase table using kcalloc() + - soc/tegra: fuse: Fix index bug in get_process_id + - usb: mtu3: fix memory corruption in mtu3_debugfs_regset() + - USB: serial: option: add interface-number sanity check to flag handling + - USB: gadget: f_acm: add support for SuperSpeed Plus + - USB: gadget: f_midi: setup SuperSpeed Plus descriptors + - usb: gadget: f_fs: Re-use SS descriptors for SuperSpeedPlus + - USB: gadget: f_rndis: fix bitrate for SuperSpeed and above + - usb: chipidea: ci_hdrc_imx: Pass DISABLE_DEVICE_STREAMING flag to imx6ul + - ARM: dts: exynos: fix roles of USB 3.0 ports on Odroid XU + - ARM: dts: exynos: fix USB 3.0 VBUS control and over-current pins on + Exynos5410 + - ARM: dts: exynos: fix USB 3.0 pins supply being turned off on Odroid XU + - coresight: tmc-etf: Fix NULL ptr dereference in tmc_enable_etf_sink_perf() + - coresight: tmc-etr: Check if page is valid before dma_map_page() + - coresight: tmc-etr: Fix barrier packet insertion for perf buffer + - coresight: etb10: Fix possible NULL ptr dereference in etb_enable_perf() + - f2fs: fix to seek incorrect data offset in inline data file + - scsi: megaraid_sas: Check user-provided offsets + - HID: i2c-hid: add Vero K147 to descriptor override + - serial_core: Check for port state when tty is in error state + - fscrypt: remove kernel-internal constants from UAPI header + - fscrypt: rename DCACHE_ENCRYPTED_NAME to DCACHE_NOKEY_NAME + - fscrypt: add fscrypt_is_nokey_name() + - ubifs: prevent creating duplicate encrypted filenames + - ext4: prevent creating duplicate encrypted filenames + - f2fs: prevent creating duplicate encrypted filenames + - Bluetooth: Fix slab-out-of-bounds read in hci_le_direct_adv_report_evt() + - quota: Sanity-check quota file headers on load + - fs: quota: fix array-index-out-of-bounds bug by passing correct argument to + vfs_cleanup_quota_inode() + - media: msi2500: assign SPI bus number dynamically + - crypto: af_alg - avoid undefined behavior accessing salg_name + - nl80211: validate key indexes for cfg80211_registered_device + - md: fix a warning caused by a race between concurrent md_ioctl()s + - drm/gma500: fix double free of gma_connector + - drm/aspeed: Fix Kconfig warning & subsequent build errors + - drm/mcde: Fix handling of platform_get_irq() error + - drm/tve200: Fix handling of platform_get_irq() error + - arm64: dts: renesas: hihope-rzg2-ex: Drop rxc-skew-ps from ethernet-phy node + - arm64: dts: renesas: cat875: Remove rxc-skew-ps from ethernet-phy node + - soc: renesas: rmobile-sysc: Fix some leaks in rmobile_init_pm_domains() + - soc: mediatek: Check if power domains can be powered on at boot time + - arm64: dts: mediatek: mt8183: fix gce incorrect mbox-cells value + - arm64: dts: ipq6018: update the reserved-memory node + - soc: qcom: geni: More properly switch to DMA mode + - Revert "i2c: i2c-qcom-geni: Fix DMA transfer race" + - RDMA/bnxt_re: Set queue pair state when being queried + - rtc: pcf2127: fix pcf2127_nvmem_read/write() returns + - selinux: fix error initialization in inode_doinit_with_dentry() + - ARM: dts: aspeed-g6: Fix the GPIO memory size + - ARM: dts: aspeed: s2600wf: Fix VGA memory region location + - RDMA/core: Fix error return in _ib_modify_qp() + - RDMA/rxe: Compute PSN windows correctly + - x86/mm/ident_map: Check for errors from ident_pud_init() + - ARM: p2v: fix handling of LPAE translation in BE mode + - RDMA/rtrs-clt: Remove destroy_con_cq_qp in case route resolving failed + - RDMA/rtrs-clt: Missing error from rtrs_rdma_conn_established + - RDMA/rtrs-srv: Don't guard the whole __alloc_srv with srv_mutex + - x86/apic: Fix x2apic enablement without interrupt remapping + - sched/deadline: Fix sched_dl_global_validate() + - sched: Reenable interrupts in do_sched_yield() + - drm/amdgpu: fix incorrect enum type + - crypto: talitos - Endianess in current_desc_hdr() + - crypto: talitos - Fix return type of current_desc_hdr() + - crypto: inside-secure - Fix sizeof() mismatch + - ASoC: sun4i-i2s: Fix lrck_period computation for I2S justified mode + - ARM: dts: aspeed: tiogapass: Remove vuart + - drm/amdgpu: fix build_coefficients() argument + - powerpc/64: Set up a kernel stack for secondaries before cpu_restore() + - spi: img-spfi: fix reference leak in img_spfi_resume + - f2fs: call f2fs_get_meta_page_retry for nat page + - RDMA/mlx5: Fix corruption of reg_pages in mlx5_ib_rereg_user_mr() + - drm/msm/dsi_pll_10nm: restore VCO rate during restore_state + - spi: spi-mem: fix reference leak in spi_mem_access_start + - scsi: aacraid: Improve compat_ioctl handlers + - ASoC: pcm: DRAIN support reactivation + - drm/bridge: tpd12s015: Fix irq registering in tpd12s015_probe + - crypto: arm64/poly1305-neon - reorder PAC authentication with SP update + - selinux: fix inode_doinit_with_dentry() LABEL_INVALID error handling + - spi: stm32: fix reference leak in stm32_spi_resume + - x86/mce: Correct the detection of invalid notifier priorities + - drm/edid: Fix uninitialized variable in drm_cvt_modes() + - ath11k: Initialize complete alpha2 for regulatory change + - ath11k: Fix number of rules in filtered ETSI regdomain + - brcmfmac: Fix memory leak for unpaired brcmf_{alloc/free} + - arm64: dts: exynos: Include common syscon restart/poweroff for Exynos7 + - arm64: dts: exynos: Correct psci compatible used on Exynos7 + - drm/panel: simple: Add flags to boe_nv133fhm_n61 + - Bluetooth: Fix null pointer dereference in hci_event_packet() + - Bluetooth: hci_h5: fix memory leak in h5_close + - spi: stm32-qspi: fix reference leak in stm32 qspi operations + - spi: spi-ti-qspi: fix reference leak in ti_qspi_setup + - spi: mt7621: fix missing clk_disable_unprepare() on error in + mt7621_spi_probe + - spi: tegra20-slink: fix reference leak in slink ops of tegra20 + - spi: tegra20-sflash: fix reference leak in tegra_sflash_resume + - spi: tegra114: fix reference leak in tegra spi ops + - spi: bcm63xx-hsspi: fix missing clk_disable_unprepare() on error in + bcm63xx_hsspi_resume + - ASoC: qcom: common: Fix refcounting in qcom_snd_parse_of() + - mwifiex: fix mwifiex_shutdown_sw() causing sw reset failure + - selftest/bpf: Add missed ip6ip6 test back + - ASoC: wm8994: Fix PM disable depth imbalance on error + - ASoC: wm8998: Fix PM disable depth imbalance on error + - spi: sprd: fix reference leak in sprd_spi_remove + - ASoC: arizona: Fix a wrong free in wm8997_probe + - RDMa/mthca: Work around -Wenum-conversion warning + - ASoC: SOF: Intel: fix Kconfig dependency for SND_INTEL_DSP_CONFIG + - arm64: dts: ti: k3-am65*/j721e*: Fix unit address format error for dss node + - MIPS: BCM47XX: fix kconfig dependency bug for BCM47XX_BCMA + - drm/amdgpu: fix compute queue priority if num_kcq is less than 4 + - soc: ti: omap-prm: Do not check rstst bit on deassert if already deasserted + - crypto: Kconfig - CRYPTO_MANAGER_EXTRA_TESTS requires the manager + - crypto: qat - fix status check in qat_hal_put_rel_rd_xfer() + - drm/udl: Fix missing error code in udl_handle_damage() + - staging: greybus: codecs: Fix reference counter leak in error handling + - staging: gasket: interrupt: fix the missed eventfd_ctx_put() in + gasket_interrupt.c + - drm/amdkfd: Put ACPI table after using it + - media: tm6000: Fix sizeof() mismatches + - media: mtk-vcodec: add missing put_device() call in mtk_vcodec_init_dec_pm() + - media: mtk-vcodec: add missing put_device() call in + mtk_vcodec_release_dec_pm() + - media: mtk-vcodec: add missing put_device() call in mtk_vcodec_init_enc_pm() + - media: v4l2-fwnode: Return -EINVAL for invalid bus-type + - media: staging: rkisp1: cap: fix runtime PM imbalance on error + - media: cedrus: fix reference leak in cedrus_start_streaming + - media: platform: add missing put_device() call in mtk_jpeg_probe() and + mtk_jpeg_remove() + - media: venus: core: change clk enable and disable order in resume and + suspend + - media: venus: core: vote for video-mem path + - media: venus: core: vote with average bandwidth and peak bandwidth as zero + - RDMA/cma: Add missing error handling of listen_id + - ASoC: meson: fix COMPILE_TEST error + - scsi: core: Fix VPD LUN ID designator priorities + - media: venus: put dummy vote on video-mem path after last session release + - media: solo6x10: fix missing snd_card_free in error handling case + - video: fbdev: atmel_lcdfb: fix return error code in atmel_lcdfb_of_init() + - mmc: sdhci: tegra: fix wrong unit with busy_timeout + - drm/omap: dmm_tiler: fix return error code in omap_dmm_probe() + - drm/meson: Free RDMA resources after tearing down DRM + - drm/meson: Unbind all connectors on module removal + - drm/meson: dw-hdmi: Register a callback to disable the regulator + - drm/meson: dw-hdmi: Ensure that clocks are enabled before touching the TOP + registers + - iommu/vt-d: include conditionally on CONFIG_INTEL_IOMMU_SVM + - Input: ads7846 - fix race that causes missing releases + - Input: ads7846 - fix integer overflow on Rt calculation + - Input: ads7846 - fix unaligned access on 7845 + - bus: mhi: core: Remove double locking from mhi_driver_remove() + - bus: mhi: core: Fix null pointer access when parsing MHI configuration + - usb/max3421: fix return error code in max3421_probe() + - spi: mxs: fix reference leak in mxs_spi_probe + - selftests/bpf: Fix broken riscv build + - powerpc: Avoid broken GCC __attribute__((optimize)) + - powerpc/feature: Fix CPU_FTRS_ALWAYS by removing CPU_FTRS_GENERIC_32 + - ARM: dts: tacoma: Fix node vs reg mismatch for flash memory + - Revert "powerpc/pseries/hotplug-cpu: Remove double free in error path" + - mfd: htc-i2cpld: Add the missed i2c_put_adapter() in + htcpld_register_chip_i2c() + - EDAC/mce_amd: Use struct cpuinfo_x86.cpu_die_id for AMD NodeId + - scsi: ufs: Avoid to call REQ_CLKS_OFF to CLKS_OFF + - scsi: ufs: Fix clkgating on/off + - rcu: Allow rcu_irq_enter_check_tick() from NMI + - rcu,ftrace: Fix ftrace recursion + - crypto: crypto4xx - Replace bitwise OR with logical OR in crypto4xx_build_pd + - crypto: omap-aes - Fix PM disable depth imbalance in omap_aes_probe + - spi: fix resource leak for drivers without .remove callback + - drm/meson: dw-hdmi: Disable clocks on driver teardown + - drm/meson: dw-hdmi: Enable the iahb clock early enough + - PCI: Disable MSI for Pericom PCIe-USB adapter + - PCI: brcmstb: Initialize "tmp" before use + - soc: ti: knav_qmss: fix reference leak in knav_queue_probe + - soc: ti: Fix reference imbalance in knav_dma_probe + - drivers: soc: ti: knav_qmss_queue: Fix error return code in knav_queue_probe + - soc: qcom: initialize local variable + - arm64: dts: qcom: sm8250: correct compatible for sm8250-mtp + - arm64: dts: qcom: msm8916-samsung-a2015: Disable muic i2c pin bias + - Input: omap4-keypad - fix runtime PM error handling + - clk: meson: Kconfig: fix dependency for G12A + - ath11k: Fix the rx_filter flag setting for peer rssi stats + - RDMA/cxgb4: Validate the number of CQEs + - soundwire: Fix DEBUG_LOCKS_WARN_ON for uninitialized attribute + - memstick: fix a double-free bug in memstick_check + - ARM: dts: at91: sam9x60: add pincontrol for USB Host + - ARM: dts: at91: sama5d4_xplained: add pincontrol for USB Host + - ARM: dts: at91: sama5d3_xplained: add pincontrol for USB Host + - mmc: pxamci: Fix error return code in pxamci_probe + - brcmfmac: fix error return code in brcmf_cfg80211_connect() + - orinoco: Move context allocation after processing the skb + - qtnfmac: fix error return code in qtnf_pcie_probe() + - rsi: fix error return code in rsi_reset_card() + - cw1200: fix missing destroy_workqueue() on error in cw1200_init_common + - dmaengine: mv_xor_v2: Fix error return code in mv_xor_v2_probe() + - arm64: dts: qcom: sdm845: Limit ipa iommu streams + - leds: netxbig: add missing put_device() call in netxbig_leds_get_of_pdata() + - arm64: tegra: Fix DT binding for IO High Voltage entry + - RDMA/cma: Fix deadlock on &lock in rdma_cma_listen_on_all() error unwind + - media: siano: fix memory leak of debugfs members in smsdvb_hotplug + - platform/x86: mlx-platform: Remove PSU EEPROM from default platform + configuration + - platform/x86: mlx-platform: Remove PSU EEPROM from MSN274x platform + configuration + - arm64: dts: qcom: sc7180: limit IPA iommu streams + - RDMA/hns: Avoid setting loopback indicator when smac is same as dmac + - serial: 8250-mtk: Fix reference leak in mtk8250_probe + - samples: bpf: Fix lwt_len_hist reusing previous BPF map + - media: imx214: Fix stop streaming + - mips: cdmm: fix use-after-free in mips_cdmm_bus_discover + - media: max2175: fix max2175_set_csm_mode() error code + - slimbus: qcom-ngd-ctrl: Avoid sending power requests without QMI + - drm/mediatek: Use correct aliases name for ovl + - HSI: omap_ssi: Don't jump to free ID in ssi_add_controller() + - ARM: dts: Remove non-existent i2c1 from 98dx3236 + - arm64: dts: armada-3720-turris-mox: update ethernet-phy handle name + - power: supply: bq25890: Use the correct range for IILIM register + - arm64: dts: rockchip: Set dr_mode to "host" for OTG on rk3328-roc-cc + - power: supply: max17042_battery: Fix current_{avg,now} hiding with no + current sense + - power: supply: axp288_charger: Fix HP Pavilion x2 10 DMI matching + - power: supply: bq24190_charger: fix reference leak + - genirq/irqdomain: Don't try to free an interrupt that has no mapping + - arm64: dts: ls1028a: fix ENETC PTP clock input + - arm64: dts: ls1028a: fix FlexSPI clock input + - arm64: dts: freescale: sl28: combine SPI MTD partitions + - phy: tegra: xusb: Fix usb_phy device driver field + - arm64: dts: qcom: c630: Polish i2c-hid devices + - arm64: dts: qcom: c630: Fix pinctrl pins properties + - PCI: Bounds-check command-line resource alignment requests + - PCI: Fix overflow in command-line resource alignment requests + - PCI: iproc: Fix out-of-bound array accesses + - PCI: iproc: Invalidate correct PAXB inbound windows + - arm64: dts: meson: fix spi-max-frequency on Khadas VIM2 + - arm64: dts: meson-sm1: fix typo in opp table + - soc: amlogic: canvas: add missing put_device() call in meson_canvas_get() + - scsi: pm80xx: Do not sleep in atomic context + - spi: spi-fsl-dspi: Use max_native_cs instead of num_chipselect to set + SPI_MCR + - ARM: dts: at91: at91sam9rl: fix ADC triggers + - RDMA/hns: Fix 0-length sge calculation error + - RDMA/hns: Bugfix for calculation of extended sge + - platform/x86: dell-smbios-base: Fix error return code in dell_smbios_init + - media: i2c: imx219: Selection compliance fixes + - ath11k: Fix an error handling path + - ath10k: Fix the parsing error in service available event + - ath10k: Fix an error handling path + - ath10k: Release some resources in an error handling path + - SUNRPC: rpc_wake_up() should wake up tasks in the correct order + - NFSv4.2: condition READDIR's mask for security label based on LSM state + - SUNRPC: xprt_load_transport() needs to support the netid "rdma6" + - NFSv4: Fix the alignment of page data in the getdeviceinfo reply + - net: sunrpc: Fix 'snprintf' return value check in 'do_xprt_debugfs' + - lockd: don't use interval-based rebinding over TCP + - NFS: switch nfsiod to be an UNBOUND workqueue. + - selftests/seccomp: Update kernel config + - vfio-pci: Use io_remap_pfn_range() for PCI IO memory + - hwmon: (ina3221) Fix PM usage counter unbalance in ina3221_write_enable + - media: tvp5150: Fix wrong return value of tvp5150_parse_dt() + - media: saa7146: fix array overflow in vidioc_s_audio() + - powerpc/perf: Fix crash with is_sier_available when pmu is not set + - powerpc/64: Fix an EMIT_BUG_ENTRY in head_64.S + - powerpc/xmon: Fix build failure for 8xx + - powerpc/perf: Fix the PMU group constraints for threshold events in power10 + - clocksource/drivers/orion: Add missing clk_disable_unprepare() on error path + - clocksource/drivers/cadence_ttc: Fix memory leak in ttc_setup_clockevent() + - clocksource/drivers/ingenic: Fix section mismatch + - iio: hrtimer-trigger: Mark hrtimer to expire in hard interrupt context + - libbpf: Sanitise map names before pinning + - ARM: dts: at91: sam9x60ek: remove bypass property + - ARM: dts: at91: sama5d2: map securam as device + - bpf: Fix bpf_put_raw_tracepoint()'s use of __module_address() + - selftests/bpf: Fix invalid use of strncat in test_sockmap + - pinctrl: falcon: add missing put_device() call in pinctrl_falcon_probe() + - arm64: dts: rockchip: Fix UART pull-ups on rk3328 + - memstick: r592: Fix error return in r592_probe() + - MIPS: Don't round up kernel sections size for memblock_add() + - mt76: mt7915: set fops_sta_stats.owner to THIS_MODULE + - mt76: set fops_tx_stats.owner to THIS_MODULE + - net/mlx5: Properly convey driver version to firmware + - mt76: fix memory leak if device probing fails + - mt76: fix tkip configuration for mt7615/7663 devices + - ASoC: jz4740-i2s: add missed checks for clk_get() + - dm ioctl: fix error return code in target_message + - ASoC: cros_ec_codec: fix uninitialized memory read + - ASoC: qcom: fix QDSP6 dependencies, attempt #3 + - phy: renesas: rcar-gen3-usb2: disable runtime pm in case of failure + - memory: jz4780_nemc: Fix potential NULL dereference in jz4780_nemc_probe() + - clocksource/drivers/arm_arch_timer: Use stable count reader in erratum sne + - clocksource/drivers/arm_arch_timer: Correct fault programming of + CNTKCTL_EL1.EVNTI + - cpufreq: ap806: Add missing MODULE_DEVICE_TABLE + - cpufreq: highbank: Add missing MODULE_DEVICE_TABLE + - cpufreq: mediatek: Add missing MODULE_DEVICE_TABLE + - cpufreq: qcom: Add missing MODULE_DEVICE_TABLE + - cpufreq: st: Add missing MODULE_DEVICE_TABLE + - cpufreq: sun50i: Add missing MODULE_DEVICE_TABLE + - cpufreq: loongson1: Add missing MODULE_ALIAS + - cpufreq: scpi: Add missing MODULE_ALIAS + - cpufreq: vexpress-spc: Add missing MODULE_ALIAS + - Bluetooth: btusb: Add the missed release_firmware() in + btusb_mtk_setup_firmware() + - Bluetooth: btmtksdio: Add the missed release_firmware() in + mtk_setup_firmware() + - block/rnbd-clt: Dynamically alloc buffer for pathname & blk_symlink_name + - block/rnbd: fix a null pointer dereference on dev->blk_symlink_name + - Bluetooth: btusb: Fix detection of some fake CSR controllers with a + bcdDevice val of 0x0134 + - mtd: spi-nor: sst: fix BPn bits for the SST25VF064C + - mtd: spi-nor: ignore errors in spi_nor_unlock_all() + - mtd: spi-nor: atmel: remove global protection flag + - mtd: spi-nor: atmel: fix unlock_all() for AT25FS010/040 + - arm64: dts: meson: g12b: odroid-n2: fix PHY deassert timing requirements + - arm64: dts: meson: fix PHY deassert timing requirements + - ARM: dts: meson: fix PHY deassert timing requirements + - arm64: dts: meson: g12a: x96-max: fix PHY deassert timing requirements + - arm64: dts: meson: g12b: w400: fix PHY deassert timing requirements + - clk: fsl-sai: fix memory leak + - scsi: qedi: Fix missing destroy_workqueue() on error in __qedi_probe + - scsi: pm80xx: Fix error return in pm8001_pci_probe() + - scsi: iscsi: Fix inappropriate use of put_device() + - seq_buf: Avoid type mismatch for seq_buf_init + - scsi: fnic: Fix error return code in fnic_probe() + - platform/x86: mlx-platform: Fix item counter assignment for MSN2700, MSN24xx + systems + - platform/x86: mlx-platform: Fix item counter assignment for MSN2700/ComEx + system + - ARM: 9030/1: entry: omit FP emulation for UND exceptions taken in kernel + mode + - powerpc/pseries/hibernation: drop pseries_suspend_begin() from suspend ops + - powerpc/pseries/hibernation: remove redundant cacheinfo update + - powerpc/powermac: Fix low_sleep_handler with CONFIG_VMAP_STACK + - drm/mediatek: avoid dereferencing a null hdmi_phy on an error message + - ASoC: amd: change clk_get() to devm_clk_get() and add missed checks + - ASoC: max98390: Fix error codes in max98390_dsm_init() + - powerpc/mm: sanity_check_fault() should work for all, not only BOOK3S + - usb: ehci-omap: Fix PM disable depth umbalance in ehci_hcd_omap_probe + - usb: oxu210hp-hcd: Fix memory leak in oxu_create + - speakup: fix uninitialized flush_lock + - nfsd: Fix message level for normal termination + - NFSD: Fix 5 seconds delay when doing inter server copy + - nfs_common: need lock during iterate through the list + - x86/kprobes: Restore BTF if the single-stepping is cancelled + - scsi: qla2xxx: Fix N2N and NVMe connect retry failure + - platform/chrome: cros_ec_spi: Don't overwrite spi::mode + - misc: pci_endpoint_test: fix return value of error branch + - bus: fsl-mc: fix error return code in fsl_mc_object_allocate() + - s390/cio: fix use-after-free in ccw_device_destroy_console + - iwlwifi: dbg-tlv: fix old length in is_trig_data_contained() + - iwlwifi: mvm: hook up missing RX handlers + - erofs: avoid using generic_block_bmap + - can: m_can: m_can_config_endisable(): remove double clearing of clock stop + request bit + - powerpc/sstep: Emulate prefixed instructions only when CPU_FTR_ARCH_31 is + set + - powerpc/sstep: Cover new VSX instructions under CONFIG_VSX + - slimbus: qcom: fix potential NULL dereference in qcom_slim_prg_slew() + - RDMA/core: Do not indicate device ready when device enablement fails + - remoteproc: q6v5-mss: fix error handling in q6v5_pds_enable + - remoteproc: qcom: fix reference leak in adsp_start + - remoteproc: qcom: pas: fix error handling in adsp_pds_enable + - remoteproc: qcom: Fix potential NULL dereference in adsp_init_mmio() + - clk: qcom: gcc-sc7180: Use floor ops for sdcc clks + - clk: tegra: Fix duplicated SE clock entry + - mtd: rawnand: gpmi: fix reference count leak in gpmi ops + - mtd: rawnand: meson: Fix a resource leak in init + - mtd: rawnand: gpmi: Fix the random DMA timeout issue + - samples/bpf: Fix possible hang in xdpsock with multiple threads + - fs: Handle I_DONTCACHE in iput_final() instead of generic_drop_inode() + - extcon: max77693: Fix modalias string + - crypto: atmel-i2c - select CONFIG_BITREVERSE + - mac80211: don't set set TDLS STA bandwidth wider than possible + - ASoC: wm_adsp: remove "ctl" from list on error in wm_adsp_create_control() + - irqchip/alpine-msi: Fix freeing of interrupts on allocation error path + - RDMA/hns: Limit the length of data copied between kernel and userspace + - gpiolib: irq hooks: fix recursion in gpiochip_irq_unmask + - irqchip/qcom-pdc: Fix phantom irq when changing between rising/falling + - watchdog: armada_37xx: Add missing dependency on HAS_IOMEM + - watchdog: sirfsoc: Add missing dependency on HAS_IOMEM + - watchdog: sprd: remove watchdog disable from resume fail path + - watchdog: sprd: check busy bit before new loading rather than after that + - watchdog: Fix potential dereferencing of null pointer + - ubifs: Fix error return code in ubifs_init_authentication() + - um: Monitor error events in IRQ controller + - um: tty: Fix handling of close in tty lines + - um: chan_xterm: Fix fd leak + - sunrpc: fix xs_read_xdr_buf for partial pages receive + - RDMA/mlx5: Fix MR cache memory leak + - RDMA/cma: Don't overwrite sgid_attr after device is released + - nfc: s3fwrn5: Release the nfc firmware + - powerpc/perf: Fix Threshold Event Counter Multiplier width for P10 + - powerpc/ps3: use dma_mapping_error() + - mm/gup: combine put_compound_head() and unpin_user_page() + - mm/rmap: always do TTU_IGNORE_ACCESS + - sparc: fix handling of page table constructor failure + - mm/vmalloc: Fix unlock order in s_stop() + - mm/vmalloc.c: fix kasan shadow poisoning size + - mm,memory_failure: always pin the page in madvise_inject_error + - hugetlb: fix an error code in hugetlb_reserve_pages() + - mm: don't wake kswapd prematurely when watermark boosting is disabled + - proc: fix lookup in /proc/net subdirectories after setns(2) + - checkpatch: fix unescaped left brace + - s390/test_unwind: fix CALL_ON_STACK tests + - lan743x: fix rx_napi_poll/interrupt ping-pong + - ice, xsk: clear the status bits for the next_to_use descriptor + - i40e, xsk: clear the status bits for the next_to_use descriptor + - net: dsa: qca: ar9331: fix sleeping function called from invalid context bug + - net: bcmgenet: Fix a resource leak in an error handling path in the probe + functin + - net: allwinner: Fix some resources leak in the error handling path of the + probe and in the remove function + - block/rnbd-clt: Get rid of warning regarding size argument in strlcpy + - block/rnbd-clt: Fix possible memleak + - NFS/pNFS: Fix a typo in ff_layout_resend_pnfs_read() + - net: korina: fix return value + - libnvdimm/label: Return -ENXIO for no slot in __blk_label_update + - powerpc/32s: Fix cleanup_cpu_mmu_context() compile bug + - watchdog: qcom: Avoid context switch in restart handler + - watchdog: coh901327: add COMMON_CLK dependency + - clk: ti: Fix memleak in ti_fapll_synth_setup + - pwm: zx: Add missing cleanup in error path + - pwm: lp3943: Dynamically allocate PWM chip base + - pwm: imx27: Fix overflow for bigger periods + - pwm: sun4i: Remove erroneous else branch + - tools build: Add missing libcap to test-all.bin target + - perf record: Fix memory leak when using '--user-regs=?' to list registers + - qlcnic: Fix error code in probe + - nfp: move indirect block cleanup to flower app stop callback + - virtio_ring: Cut and paste bugs in vring_create_virtqueue_packed() + - virtio_net: Fix error code in probe() + - virtio_ring: Fix two use after free bugs + - vhost scsi: fix error return code in vhost_scsi_set_endpoint() + - epoll: check for events when removing a timed out thread from the wait queue + - clk: at91: sam9x60: remove atmel,osc-bypass support + - clk: s2mps11: Fix a resource leak in error handling paths in the probe + function + - clk: sunxi-ng: Make sure divider tables have sentinel + - kconfig: fix return value of do_error_if() + - powerpc/smp: Add __init to init_big_cores() + - ARM: 9044/1: vfp: use undef hook for VFP support detection + - perf probe: Fix memory leak when synthesizing SDT probes + - io_uring: cancel reqs shouldn't kill overflow list + - Smack: Handle io_uring kernel thread privileges + - io_uring: fix io_cqring_events()'s noflush + - vfio/pci: Move dummy_resources_list init in vfio_pci_probe() + - vfio/pci/nvlink2: Do not attempt NPU2 setup on POWER8NVL NPU + - media: gspca: Fix memory leak in probe + - io_uring: fix io_wqe->work_list corruption + - io_uring: fix 0-iov read buffer select + - io_uring: fix ignoring xa_store errors + - io_uring: make ctx cancel on exit targeted to actual ctx + - media: sunxi-cir: ensure IR is handled when it is continuous + - media: netup_unidvb: Don't leak SPI master in probe error path + - media: ipu3-cio2: Remove traces of returned buffers + - media: ipu3-cio2: Return actual subdev format + - media: ipu3-cio2: Serialise access to pad format + - media: ipu3-cio2: Validate mbus format in setting subdev format + - media: ipu3-cio2: Make the field on subdev format V4L2_FIELD_NONE + - Input: cyapa_gen6 - fix out-of-bounds stack access + - ALSA: hda/ca0132 - Change Input Source enum strings. + - Revert "ACPI / resources: Use AE_CTRL_TERMINATE to terminate resources + walks" + - ACPI: PNP: compare the string length in the matching_id() + - ALSA: hda: Fix regressions on clear and reconfig sysfs + - ALSA: hda/ca0132 - Fix AE-5 rear headphone pincfg. + - ALSA: hda/realtek: make bass spk volume adjustable on a yoga laptop + - ALSA: hda/realtek - Enable headset mic of ASUS X430UN with ALC256 + - ALSA: hda/realtek - Enable headset mic of ASUS Q524UQK with ALC255 + - ALSA: hda/realtek - Add supported for more Lenovo ALC285 Headset Button + - ALSA: pcm: oss: Fix a few more UBSAN fixes + - ALSA/hda: apply jack fixup for the Acer Veriton N4640G/N6640G/N2510G + - ALSA: hda/realtek: Add quirk for MSI-GP73 + - ALSA: hda/realtek: Apply jack fixup for Quanta NL3 + - ALSA: hda/realtek: Remove dummy lineout on Acer TravelMate P648/P658 + - ALSA: hda/realtek - Supported Dell fixed type headset + - ALSA: usb-audio: Add VID to support native DSD reproduction on FiiO devices + - ALSA: usb-audio: Disable sample read check if firmware doesn't give back + - ALSA: core: memalloc: add page alignment for iram + - s390/smp: perform initial CPU reset also for SMT siblings + - s390/kexec_file: fix diag308 subcode when loading crash kernel + - s390/idle: add missing mt_cycles calculation + - s390/idle: fix accounting with machine checks + - s390/dasd: fix hanging device offline processing + - s390/dasd: prevent inconsistent LCU device data + - s390/dasd: fix list corruption of pavgroup group list + - s390/dasd: fix list corruption of lcu list + - binder: add flag to clear buffer on txn complete + - ASoC: cx2072x: Fix doubly definitions of Playback and Capture streams + - ASoC: AMD Renoir - add DMI table to avoid the ACP mic probe (broken BIOS) + - ASoC: AMD Raven/Renoir - fix the PCI probe (PCI revision) + - staging: comedi: mf6x4: Fix AI end-of-conversion detection + - z3fold: simplify freeing slots + - z3fold: stricter locking and more careful reclaim + - perf/x86/intel: Add event constraint for CYCLE_ACTIVITY.STALLS_MEM_ANY + - perf/x86/intel: Fix rtm_abort_event encoding on Ice Lake + - powerpc/perf: Exclude kernel samples while counting events in user space. + - cpufreq: intel_pstate: Use most recent guaranteed performance values + - crypto: ecdh - avoid unaligned accesses in ecdh_set_secret() + - crypto: arm/aes-ce - work around Cortex-A57/A72 silion errata + - m68k: Fix WARNING splat in pmac_zilog driver + - EDAC/i10nm: Use readl() to access MMIO registers + - EDAC/amd64: Fix PCI component registration + - cpuset: fix race between hotplug work and later CPU offline + - USB: serial: mos7720: fix parallel-port state restore + - USB: serial: digi_acceleport: fix write-wakeup deadlocks + - USB: serial: keyspan_pda: fix dropped unthrottle interrupts + - USB: serial: keyspan_pda: fix write deadlock + - USB: serial: keyspan_pda: fix stalled writes + - USB: serial: keyspan_pda: fix write-wakeup use-after-free + - USB: serial: keyspan_pda: fix tx-unthrottle use-after-free + - USB: serial: keyspan_pda: fix write unthrottling + - btrfs: do not shorten unpin len for caching block groups + - btrfs: update last_byte_to_unpin in switch_commit_roots + - btrfs: fix race when defragmenting leads to unnecessary IO + - ext4: fix a memory leak of ext4_free_data + - ext4: fix deadlock with fs freezing and EA inodes + - ext4: don't remount read-only with errors=continue on reboot + - arm64: dts: ti: k3-am65: mark dss as dma-coherent + - KVM: arm64: Introduce handling of AArch32 TTBCR2 traps + - KVM: x86: reinstate vendor-agnostic check on SPEC_CTRL cpuid bits + - KVM: SVM: Remove the call to sev_platform_status() during setup + - ARM: dts: pandaboard: fix pinmux for gpio user button of Pandaboard ES + - ARM: dts: at91: sama5d2: fix CAN message ram offset and size + - ARM: tegra: Populate OPP table for Tegra20 Ventana + - xprtrdma: Fix XDRBUF_SPARSE_PAGES support + - powerpc/32: Fix vmap stack - Properly set r1 before activating MMU on + syscall too + - powerpc: Fix incorrect stw{, ux, u, x} instructions in __set_pte_at + - powerpc/rtas: Fix typo of ibm,open-errinjct in RTAS filter + - powerpc/bitops: Fix possible undefined behaviour with fls() and fls64() + - powerpc/feature: Add CPU_FTR_NOEXECUTE to G2_LE + - powerpc/xmon: Change printk() to pr_cont() + - powerpc/8xx: Fix early debug when SMC1 is relocated + - powerpc/mm: Fix verification of MMU_FTR_TYPE_44x + - powerpc/powernv/npu: Do not attempt NPU2 setup on POWER8NVL NPU + - powerpc/powernv/memtrace: Don't leak kernel memory to user space + - powerpc/powernv/memtrace: Fix crashing the kernel when enabling concurrently + - ima: Don't modify file descriptor mode on the fly + - um: Remove use of asprinf in umid.c + - um: Fix time-travel mode + - ceph: fix race in concurrent __ceph_remove_cap invocations + - SMB3: avoid confusing warning message on mount to Azure + - SMB3.1.1: remove confusing mount warning when no SPNEGO info on negprot rsp + - SMB3.1.1: do not log warning message if server doesn't populate salt + - ubifs: wbuf: Don't leak kernel memory to flash + - jffs2: Fix GC exit abnormally + - jffs2: Fix ignoring mounting options problem during remounting + - jfs: Fix array index bounds check in dbAdjTree + - drm/panfrost: Fix job timeout handling + - platform/x86: mlx-platform: remove an unused variable + - drm/dp_aux_dev: check aux_dev before use in drm_dp_aux_dev_get_by_minor() + - drm/i915: Fix mismatch between misplaced vma check and vma insert + - iio: ad_sigma_delta: Don't put SPI transfer buffer on the stack + - spi: pxa2xx: Fix use-after-free on unbind + - spi: spi-sh: Fix use-after-free on unbind + - spi: atmel-quadspi: Fix use-after-free on unbind + - spi: spi-mtk-nor: Don't leak SPI master in probe error path + - spi: ar934x: Don't leak SPI master in probe error path + - spi: davinci: Fix use-after-free on unbind + - spi: fsl: fix use of spisel_boot signal on MPC8309 + - spi: gpio: Don't leak SPI master in probe error path + - spi: mxic: Don't leak SPI master in probe error path + - spi: npcm-fiu: Disable clock in probe error path + - spi: pic32: Don't leak DMA channels in probe error path + - spi: rb4xx: Don't leak SPI master in probe error path + - spi: sc18is602: Don't leak SPI master in probe error path + - spi: spi-geni-qcom: Fix use-after-free on unbind + - spi: spi-qcom-qspi: Fix use-after-free on unbind + - spi: st-ssc4: Fix unbalanced pm_runtime_disable() in probe error path + - spi: synquacer: Disable clock in probe error path + - spi: mt7621: Disable clock in probe error path + - spi: mt7621: Don't leak SPI master in probe error path + - spi: atmel-quadspi: Disable clock in probe error path + - spi: atmel-quadspi: Fix AHB memory accesses + - soc: qcom: smp2p: Safely acquire spinlock without IRQs + - mtd: parser: cmdline: Fix parsing of part-names with colons + - mtd: core: Fix refcounting for unpartitioned MTDs + - mtd: rawnand: qcom: Fix DMA sync on FLASH_STATUS register read + - mtd: rawnand: meson: fix meson_nfc_dma_buffer_release() arguments + - scsi: qla2xxx: Fix crash during driver load on big endian machines + - scsi: lpfc: Fix invalid sleeping context in lpfc_sli4_nvmet_alloc() + - scsi: lpfc: Re-fix use after free in lpfc_rq_buf_free() + - openat2: reject RESOLVE_BENEATH|RESOLVE_IN_ROOT + - iio: buffer: Fix demux update + - iio: adc: rockchip_saradc: fix missing clk_disable_unprepare() on error in + rockchip_saradc_resume + - iio: imu: st_lsm6dsx: fix edge-trigger interrupts + - iio:light:rpr0521: Fix timestamp alignment and prevent data leak. + - iio:light:st_uvis25: Fix timestamp alignment and prevent data leak. + - iio:magnetometer:mag3110: Fix alignment and data leak issues. + - iio:pressure:mpl3115: Force alignment of buffer + - iio:imu:bmi160: Fix too large a buffer. + - iio:imu:bmi160: Fix alignment and data leak issues + - iio:adc:ti-ads124s08: Fix buffer being too long. + - iio:adc:ti-ads124s08: Fix alignment and data leak issues. + - md/cluster: block reshape with remote resync job + - md/cluster: fix deadlock when node is doing resync job + - pinctrl: sunxi: Always call chained_irq_{enter, exit} in + sunxi_pinctrl_irq_handler + - clk: ingenic: Fix divider calculation with div tables + - clk: mvebu: a3700: fix the XTAL MODE pin to MPP1_9 + - clk: tegra: Do not return 0 on failure + - device-dax/core: Fix memory leak when rmmod dax.ko + - dma-buf/dma-resv: Respect num_fences when initializing the shared fence + list. + - driver: core: Fix list corruption after device_del() + - xen-blkback: set ring->xenblkd to NULL after kthread_stop() + - xen/xenbus: Allow watches discard events before queueing + - xen/xenbus: Add 'will_handle' callback support in xenbus_watch_path() + - xen/xenbus/xen_bus_type: Support will_handle watch callback + - xen/xenbus: Count pending messages for each watch + - xenbus/xenbus_backend: Disallow pending watch messages + - libnvdimm/namespace: Fix reaping of invalidated block-window-namespace + labels + - platform/x86: intel-vbtn: Allow switch events on Acer Switch Alpha 12 + - tracing: Disable ftrace selftests when any tracer is running + - mt76: add back the SUPPORTS_REORDERING_BUFFER flag + - of: fix linker-section match-table corruption + - PCI: Fix pci_slot_release() NULL pointer dereference + - regulator: axp20x: Fix DLDO2 voltage control register mask for AXP22x + - remoteproc: sysmon: Ensure remote notification ordering + - thermal/drivers/cpufreq_cooling: Update cpufreq_state only if state has + changed + - rtc: ep93xx: Fix NULL pointer dereference in ep93xx_rtc_read_time + - Revert: "ring-buffer: Remove HAVE_64BIT_ALIGNED_ACCESS" + - null_blk: Fix zone size initialization + - null_blk: Fail zone append to conventional zones + - drm/edid: fix objtool warning in drm_cvt_modes() + - x86/CPU/AMD: Save AMD NodeId as cpu_die_id + - ARM: dts: sun7i: bananapi: Enable RGMII RX/TX delay on Ethernet PHY + - ARM: dts: sun8i: r40: bananapi-m2-berry: Fix dcdc1 regulator + - ARM: dts: sun8i: v40: bananapi-m2-berry: Fix ethernet node + - pinctrl: merrifield: Set default bias in case no particular value given + - pinctrl: baytrail: Avoid clearing debounce value when turning it off + - ARM: dts: sun8i: v3s: fix GIC node memory range + - ARM: dts: sun7i: pcduino3-nano: enable RGMII RX/TX delay on PHY + - ARM: dts: imx6qdl-wandboard-revd1: Remove PAD_GPIO_6 from enetgrp + - ARM: dts: imx6qdl-kontron-samx6i: fix I2C_PM scl pin + - gpio: zynq: fix reference leak in zynq_gpio functions + - gpio: mvebu: fix potential user-after-free on probe + - scsi: bnx2i: Requires MMU + - xsk: Replace datagram_poll by sock_poll_wait + - can: softing: softing_netdev_open(): fix error handling + - clk: renesas: r9a06g032: Drop __packed for portability + - pinctrl: aspeed: Fix GPIO requests on pass-through banks + - netfilter: x_tables: Switch synchronization to RCU + - netfilter: nft_compat: make sure xtables destructors have run + - netfilter: nft_dynset: fix timeouts later than 23 days + - afs: Fix memory leak when mounting with multiple source parameters + - gpio: eic-sprd: break loop when getting NULL device resource + - netfilter: nft_ct: Remove confirmation check for NFT_CT_ID + - selftests/bpf/test_offload.py: Reset ethtool features after failed setting + - RDMA/cm: Fix an attempt to use non-valid pointer when cleaning timewait + - i40e: optimise prefetch page refcount + - i40e: avoid premature Rx buffer reuse + - ixgbe: avoid premature Rx buffer reuse + - selftests: fix poll error in udpgro.sh + - net: mvpp2: add mvpp2_phylink_to_port() helper + - drm/tegra: replace idr_init() by idr_init_base() + - kernel/cpu: add arch override for clear_tasks_mm_cpumask() mm handling + - drm/tegra: sor: Disable clocks on error in tegra_sor_init() + - habanalabs: put devices before driver removal + - arm64: syscall: exit userspace before unmasking exceptions + - vxlan: Add needed_headroom for lower device + - vxlan: Copy needed_tailroom from lowerdev + - scsi: mpt3sas: Increase IOCInit request timeout to 30s + - dm table: Remove BUG_ON(in_interrupt()) + - iwlwifi: pcie: add one missing entry for AX210 + - drm/amd/display: Init clock value by current vbios CLKs + - perf/x86/intel: Check PEBS status correctly + - kbuild: avoid split lines in .mod files + - ARM: sunxi: Add machine match for the Allwinner V3 SoC + - cfg80211: initialize rekey_data + - fix namespaced fscaps when !CONFIG_SECURITY + - lwt: Disable BH too in run_lwt_bpf() + - drm/amd/display: Prevent bandwidth overflow + - drm/amdkfd: Fix leak in dmabuf import + - Input: cros_ec_keyb - send 'scancodes' in addition to key events + - initramfs: fix clang build failure + - Input: goodix - add upside-down quirk for Teclast X98 Pro tablet + * Groovy update: upstream stable patchset 2021-01-13 (LP: #1911476) + - Kbuild: do not emit debug info for assembly with LLVM_IAS=1 + - mm/zsmalloc.c: drop ZSMALLOC_PGTABLE_MAPPING + - [Config] updateconfigs for ZSMALLOC_PGTABLE_MAPPING + - kprobes: Remove NMI context check + - kprobes: Tell lockdep about kprobe nesting + - ASoC: Intel: bytcr_rt5640: Fix HP Pavilion x2 Detachable quirks + - tools/bootconfig: Fix to check the write failure correctly + - net, xsk: Avoid taking multiple skbuff references + - bpftool: Fix error return value in build_btf_type_table + - vhost-vdpa: fix page pinning leakage in error path (rework) + - powerpc/64s: Fix hash ISA v3.0 TLBIEL instruction generation + - batman-adv: Consider fragmentation for needed_headroom + - batman-adv: Reserve needed_*room for fragments + - batman-adv: Don't always reallocate the fragmentation skb head + - ipvs: fix possible memory leak in ip_vs_control_net_init + - ibmvnic: handle inconsistent login with reset + - ibmvnic: stop free_all_rwi on failed reset + - ibmvnic: avoid memset null scrq msgs + - ibmvnic: delay next reset if hard reset fails + - ibmvnic: track pending login + - ibmvnic: send_login should check for crq errors + - ibmvnic: reduce wait for completion time + - drm/rockchip: Avoid uninitialized use of endpoint id in LVDS + - drm/panel: sony-acx565akm: Fix race condition in probe + - can: m_can: tcan4x5x_can_probe(): fix error path: remove erroneous + clk_disable_unprepare() + - can: sja1000: sja1000_err(): don't count arbitration lose as an error + - can: sun4i_can: sun4i_can_err(): don't count arbitration lose as an error + - can: c_can: c_can_power_up(): fix error handling + - can: kvaser_pciefd: kvaser_pciefd_open(): fix error handling + - samples/ftrace: Mark my_tramp[12]? global + - scsi: storvsc: Fix error return in storvsc_probe() + - net: broadcom CNIC: requires MMU + - iwlwifi: pcie: invert values of NO_160 device config entries + - perf/x86/intel: Fix a warning on x86_pmu_stop() with large PEBS + - zlib: export S390 symbols for zlib modules + - phy: usb: Fix incorrect clearing of tca_drv_sel bit in SETUP reg for 7211 + - arm64: dts: rockchip: Remove system-power-controller from pmic on Odroid Go + Advance + - iwlwifi: pcie: limit memory read spin time + - arm64: dts: rockchip: Assign a fixed index to mmc devices on rk3399 boards. + - arm64: dts: rockchip: Reorder LED triggers from mmc devices on rk3399-roc- + pc. + - iwlwifi: sta: set max HE max A-MPDU according to HE capa + - iwlwifi: pcie: set LTR to avoid completion timeout + - iwlwifi: mvm: fix kernel panic in case of assert during CSA + - powerpc: Drop -me200 addition to build flags + - arm64: dts: broadcom: clear the warnings caused by empty dma-ranges + - ARC: stack unwinding: don't assume non-current task is sleeping + - scsi: ufs: Fix unexpected values from ufshcd_read_desc_param() + - scsi: ufs: Make sure clk scaling happens only when HBA is runtime ACTIVE + - interconnect: qcom: msm8916: Remove rpm-ids from non-RPM nodes + - interconnect: qcom: qcs404: Remove GPU and display RPM IDs + - ibmvnic: skip tx timeout reset while in resetting + - irqchip/gic-v3-its: Unconditionally save/restore the ITS state on suspend + - drm/exynos: depend on COMMON_CLK to fix compile tests + - spi: spi-nxp-fspi: fix fspi panic by unexpected interrupts + - arm-smmu-qcom: Ensure the qcom_scm driver has finished probing + - btrfs: do nofs allocations when adding and removing qgroup relations + - btrfs: fix lockdep splat when enabling and disabling qgroups + - soc: fsl: dpio: Get the cpumask through cpumask_of(cpu) + - intel_idle: Fix intel_idle() vs tracing + - arm64: tegra: Disable the ACONNECT for Jetson TX2 + - platform/x86: thinkpad_acpi: add P1 gen3 second fan support + - platform/x86: thinkpad_acpi: Do not report SW_TABLET_MODE on Yoga 11e + - platform/x86: thinkpad_acpi: Add BAT1 is primary battery quirk for Thinkpad + Yoga 11e 4th gen + - platform/x86: thinkpad_acpi: Whitelist P15 firmware for dual fan control + - platform/x86: acer-wmi: add automatic keyboard background light toggle key + as KEY_LIGHTS_TOGGLE + - platform/x86: intel-vbtn: Support for tablet mode on HP Pavilion 13 x360 PC + - platform/x86: touchscreen_dmi: Add info for the Predia Basic tablet + - platform/x86: touchscreen_dmi: Add info for the Irbis TW118 tablet + - can: m_can: m_can_dev_setup(): add support for bosch mcan version 3.3.0 + - s390: fix irq state tracing + - intel_idle: Build fix + - media: pulse8-cec: fix duplicate free at disconnect or probe error + - media: pulse8-cec: add support for FW v10 and up + - mmc: mediatek: Extend recheck_sdio_irq fix to more variants + - ktest.pl: Fix incorrect reboot for grub2bls + - xen: add helpers for caching grant mapping pages + - Input: cm109 - do not stomp on control URB + - Input: i8042 - add Acer laptops to the i8042 reset list + - pinctrl: jasperlake: Fix HOSTSW_OWN offset + - mmc: sdhci-of-arasan: Fix clock registration error for Keem Bay SOC + - mmc: block: Fixup condition for CMD13 polling for RPMB requests + - drm/amdgpu/disply: set num_crtc earlier + - drm/i915/gem: Propagate error from cancelled submit due to context closure + - drm/i915/display/dp: Compute the correct slice count for VDSC on DP + - drm/i915/gt: Declare gen9 has 64 mocs entries! + - drm/i915/gt: Ignore repeated attempts to suspend request flow across reset + - drm/i915/gt: Cancel the preemption timeout on responding to it + - kbuild: avoid static_assert for genksyms + - proc: use untagged_addr() for pagemap_read addresses + - zonefs: fix page reference and BIO leak + - scsi: be2iscsi: Revert "Fix a theoretical leak in beiscsi_create_eqs()" + - x86/mm/mem_encrypt: Fix definition of PMD_FLAGS_DEC_WP + - x86/membarrier: Get rid of a dubious optimization + - x86/apic/vector: Fix ordering in vector assignment + - x86/kprobes: Fix optprobe to detect INT3 padding correctly + - compiler.h: fix barrier_data() on clang + - ptrace: Prevent kernel-infoleak in ptrace_get_syscall_info() + - net/sched: fq_pie: initialize timer earlier in fq_pie_init() + - net: ipa: pass the correct size when freeing DMA memory + - ipv4: fix error return code in rtm_to_fib_config() + - mac80211: mesh: fix mesh_pathtbl_init() error path + - net: bridge: vlan: fix error return code in __vlan_add() + - vrf: packets with lladdr src needs dst at input with orig_iif when needs + strict + - net: hns3: remove a misused pragma packed + - udp: fix the proto value passed to ip_protocol_deliver_rcu for the segments + - enetc: Fix reporting of h/w packet counters + - bridge: Fix a deadlock when enabling multicast snooping + - mptcp: print new line in mptcp_seq_show() if mptcp isn't in use + - net: stmmac: dwmac-meson8b: fix mask definition of the m250_sel mux + - net: stmmac: start phylink instance before stmmac_hw_setup() + - net: stmmac: free tx skb buffer in stmmac_resume() + - net: stmmac: delete the eee_ctrl_timer after napi disabled + - net: stmmac: overwrite the dma_cap.addr64 according to HW design + - net: ll_temac: Fix potential NULL dereference in temac_probe() + - tcp: select sane initial rcvq_space.space for big MSS + - e1000e: fix S0ix flow to allow S0i3.2 subset entry + - ethtool: fix stack overflow in ethnl_parse_bitset() + - tcp: fix cwnd-limited bug for TSO deferral where we send nothing + - net: flow_offload: Fix memory leak for indirect flow block + - net/mlx4_en: Avoid scheduling restart task if it is already running + - net/mlx4_en: Handle TX error CQE + - net: sched: Fix dump of MPLS_OPT_LSE_LABEL attribute in cls_flower + - ch_ktls: fix build warning for ipv4-only config + - lan743x: fix for potential NULL pointer dereference with bare card + - net: stmmac: increase the timeout for dma reset + - net: tipc: prevent possible null deref of link + - ktest.pl: If size of log is too big to email, email error message + - USB: dummy-hcd: Fix uninitialized array use in init() + - USB: add RESET_RESUME quirk for Snapscan 1212 + - ALSA: usb-audio: Fix potential out-of-bounds shift + - ALSA: usb-audio: Fix control 'access overflow' errors from chmap + - xhci: Give USB2 ports time to enter U3 in bus suspend + - xhci-pci: Allow host runtime PM as default for Intel Alpine Ridge LP + - xhci-pci: Allow host runtime PM as default for Intel Maple Ridge xHCI + - USB: UAS: introduce a quirk to set no_write_same + - USB: sisusbvga: Make console support depend on BROKEN + - [Config] updateconfigs for USB_SISUSBVGA_CON + - ALSA: pcm: oss: Fix potential out-of-bounds shift + - serial: 8250_omap: Avoid FIFO corruption caused by MDR1 access + - KVM: mmu: Fix SPTE encoding of MMIO generation upper half + - membarrier: Explicitly sync remote cores when SYNC_CORE is requested + - x86/resctrl: Remove unused struct mbm_state::chunks_bw + - x86/resctrl: Fix incorrect local bandwidth when mba_sc is enabled + * MSFT Touchpad not working on Lenovo Legion-5 15ARH05 (LP: #1887190) // + Groovy update: upstream stable patchset 2021-01-13 (LP: #1911476) + - pinctrl: amd: remove debounce filter setting in IRQ type setting + * Groovy update: upstream stable patchset 2021-01-12 (LP: #1911235) + - powerpc: Only include kup-radix.h for 64-bit Book3S + - leds: lm3697: Fix out-of-bound access + - Input: sunkbd - avoid use-after-free in teardown paths + - mac80211: always wind down STA state + - can: proc: can_remove_proc(): silence remove_proc_entry warning + - powerpc/smp: Call rcu_cpu_starting() earlier + - KVM: x86: clflushopt should be treated as a no-op by emulation + - ACPI: GED: fix -Wformat + - net: lantiq: Add locking for TX DMA channel + - ah6: fix error return code in ah6_input() + - atm: nicstar: Unmap DMA on send error + - bnxt_en: read EEPROM A2h address using page 0 + - devlink: Add missing genlmsg_cancel() in devlink_nl_sb_port_pool_fill() + - enetc: Workaround for MDIO register access issue + - Exempt multicast addresses from five-second neighbor lifetime + - inet_diag: Fix error path to cancel the meseage in inet_req_diag_fill() + - ipv6: Fix error path to cancel the meseage + - lan743x: fix issue causing intermittent kernel log warnings + - lan743x: prevent entire kernel HANG on open, for some platforms + - mlxsw: core: Use variable timeout for EMAD retries + - net: b44: fix error return code in b44_init_one() + - net: bridge: add missing counters to ndo_get_stats64 callback + - netdevsim: set .owner to THIS_MODULE + - net: dsa: mv88e6xxx: Avoid VTU corruption on 6097 + - net: ethernet: mtk-star-emac: fix error return code in mtk_star_enable() + - net: ethernet: mtk-star-emac: return ok when xmit drops + - net: ethernet: ti: am65-cpts: update ret when ptp_clock is ERROR + - net: ethernet: ti: cpsw: fix cpts irq after suspend + - net: ethernet: ti: cpsw: fix error return code in cpsw_probe() + - net: ftgmac100: Fix crash when removing driver + - net: Have netpoll bring-up DSA management interface + - net: ipa: lock when freeing transaction + - netlabel: fix our progress tracking in netlbl_unlabel_staticlist() + - netlabel: fix an uninitialized warning in netlbl_unlabel_staticlist() + - net: lantiq: Wait for the GPHY firmware to be ready + - net/mlx4_core: Fix init_hca fields offset + - net/mlx5e: Fix refcount leak on kTLS RX resync + - net/ncsi: Fix netlink registration + - net: phy: mscc: remove non-MACSec compatible phy + - net: qualcomm: rmnet: Fix incorrect receive packet handling during cleanup + - net/smc: fix direct access to ib_gid_addr->ndev in smc_ib_determine_gid() + - net: stmmac: Use rtnl_lock/unlock on netif_set_real_num_rx_queues() call + - net/tls: fix corrupted data in recvmsg + - net: x25: Increase refcnt of "struct x25_neigh" in x25_rx_call_request + - page_frag: Recover from memory pressure + - qed: fix error return code in qed_iwarp_ll2_start() + - qed: fix ILT configuration of SRC block + - qlcnic: fix error return code in qlcnic_83xx_restart_hw() + - sctp: change to hold/put transport for proto_unreach_timer + - tcp: only postpone PROBE_RTT if RTT is < current min_rtt estimate + - vsock: forward all packets to the host when no H2G is registered + - net/mlx5e: Fix check if netdev is bond slave + - net/mlx5: Add handling of port type in rule deletion + - net/mlx5: Clear bw_share upon VF disable + - net/mlx5: Disable QoS when min_rates on all VFs are zero + - PM: runtime: Add pm_runtime_resume_and_get to deal with usage counter + - net: fec: Fix reference count leak in fec series ops + - net/tls: Fix wrong record sn in async mode of device resync + - net: usb: qmi_wwan: Set DTR quirk for MR400 + - Revert "Revert "gpio: omap: Fix lost edge wake-up interrupts"" + - tools, bpftool: Avoid array index warnings. + - habanalabs/gaudi: mask WDT error in QMAN + - pinctrl: rockchip: enable gpio pclk for rockchip_gpio_to_irq + - scsi: ufs: Fix unbalanced scsi_block_reqs_cnt caused by ufshcd_hold() + - scsi: ufs: Try to save power mode change and UIC cmd completion timeout + - pinctrl: mcp23s08: Print error message when regmap init fails + - selftests: kvm: Fix the segment descriptor layout to match the actual layout + - ACPI: button: Add DMI quirk for Medion Akoya E2228T + - arm64: errata: Fix handling of 1418040 with late CPU onlining + - arm64: psci: Avoid printing in cpu_psci_cpu_die() + - arm64: smp: Tell RCU about CPUs that fail to come online + - vfs: remove lockdep bogosity in __sb_start_write + - gfs2: fix possible reference leak in gfs2_check_blk_type + - hwmon: (pwm-fan) Fix RPM calculation + - gfs2: Fix case in which ail writes are done to jdata holes + - arm64: Add MIDR value for KRYO2XX gold/silver CPU cores + - arm64: kpti: Add KRYO2XX gold/silver CPU cores to kpti safelist + - arm64: cpu_errata: Apply Erratum 845719 to KRYO2XX Silver + - arm64: dts: allwinner: beelink-gs1: Enable both RGMII RX/TX delay + - arm64: dts: allwinner: Pine H64: Enable both RGMII RX/TX delay + - arm64: dts: allwinner: a64: OrangePi Win: Fix ethernet node + - arm64: dts: allwinner: a64: Pine64 Plus: Fix ethernet node + - arm64: dts: allwinner: h5: OrangePi PC2: Fix ethernet node + - ARM: dts: sun8i: r40: bananapi-m2-ultra: Fix ethernet node + - Revert "arm: sun8i: orangepi-pc-plus: Set EMAC activity LEDs to active high" + - ARM: dts: sun6i: a31-hummingbird: Enable RGMII RX/TX delay on Ethernet PHY + - ARM: dts: sun7i: cubietruck: Enable RGMII RX/TX delay on Ethernet PHY + - ARM: dts: sun7i: bananapi-m1-plus: Enable RGMII RX/TX delay on Ethernet PHY + - ARM: dts: sun8i: h3: orangepi-plus2e: Enable RGMII RX/TX delay on Ethernet + PHY + - ARM: dts: sun8i: a83t: Enable both RGMII RX/TX delay on Ethernet PHY + - ARM: dts: sun9i: Enable both RGMII RX/TX delay on Ethernet PHY + - ARM: dts: sunxi: bananapi-m2-plus: Enable RGMII RX/TX delay on Ethernet PHY + - arm64: dts: allwinner: h5: libretech-all-h5-cc: Enable RGMII RX/TX delay on + PHY + - arm64: dts: allwinner: a64: bananapi-m64: Enable RGMII RX/TX delay on PHY + - Input: adxl34x - clean up a data type in adxl34x_probe() + - MIPS: export has_transparent_hugepage() for modules + - dmaengine: idxd: fix wq config registers offset programming + - arm64: dts: allwinner: h5: OrangePi Prime: Fix ethernet node + - arm64: dts: imx8mm-beacon-som: Fix Choppy BT audio + - arm64: dts imx8mn: Remove non-existent USB OTG2 + - arm: dts: imx6qdl-udoo: fix rgmii phy-mode for ksz9031 phy + - ARM: dts: vf610-zii-dev-rev-b: Fix MDIO over clocking + - swiotlb: using SIZE_MAX needs limits.h included + - tee: amdtee: fix memory leak due to reset of global shm list + - tee: amdtee: synchronize access to shm list + - dmaengine: xilinx_dma: Fix usage of xilinx_aximcdma_tx_segment + - dmaengine: xilinx_dma: Fix SG capability check for MCDMA + - ARM: dts: stm32: Fix TA3-GPIO-C key on STM32MP1 DHCOM PDK2 + - ARM: dts: stm32: Fix LED5 on STM32MP1 DHCOM PDK2 + - ARM: dts: stm32: Define VIO regulator supply on DHCOM + - ARM: dts: stm32: Enable thermal sensor support on stm32mp15xx-dhcor + - ARM: dts: stm32: Keep VDDA LDO1 always on on DHCOM + - arm64: dts: imx8mm: fix voltage for 1.6GHz CPU operating point + - ARM: dts: imx50-evk: Fix the chip select 1 IOMUX + - dmaengine: ti: omap-dma: Block PM if SDMA is busy to fix audio + - kunit: tool: unmark test_data as binary blobs + - rcu: Don't invoke try_invoke_on_locked_down_task() with irqs disabled + - spi: fix client driver breakages when using GPIO descriptors + - Input: resistive-adc-touch - fix kconfig dependency on IIO_BUFFER + - rfkill: Fix use-after-free in rfkill_resume() + - RDMA/pvrdma: Fix missing kfree() in pvrdma_register_device() + - [Config] update config for INFINIBAND_VIRT_DMA + - RMDA/sw: Don't allow drivers using dma_virt_ops on highmem configs + - perf lock: Correct field name "flags" + - perf lock: Don't free "lock_seq_stat" if read_count isn't zero + - SUNRPC: Fix oops in the rpc_xdr_buf event class + - drm: bridge: dw-hdmi: Avoid resetting force in the detect function + - tools, bpftool: Add missing close before bpftool net attach exit + - IB/hfi1: Fix error return code in hfi1_init_dd() + - ip_tunnels: Set tunnel option flag when tunnel metadata is present + - can: af_can: prevent potential access of uninitialized member in can_rcv() + - can: af_can: prevent potential access of uninitialized member in canfd_rcv() + - can: dev: can_restart(): post buffer from the right context + - can: ti_hecc: Fix memleak in ti_hecc_probe + - can: mcba_usb: mcba_usb_start_xmit(): first fill skb, then pass to + can_put_echo_skb() + - can: peak_usb: fix potential integer overflow on shift of a int + - can: flexcan: fix failure handling of pm_runtime_get_sync() + - can: tcan4x5x: replace depends on REGMAP_SPI with depends on SPI + - can: tcan4x5x: tcan4x5x_can_probe(): add missing error checking for + devm_regmap_init() + - can: tcan4x5x: tcan4x5x_can_remove(): fix order of deregistration + - can: m_can: m_can_handle_state_change(): fix state change + - can: m_can: m_can_class_free_dev(): introduce new function + - can: m_can: Fix freeing of can device from peripherials + - can: m_can: m_can_stop(): set device to software init mode before closing + - dmaengine: idxd: fix mapping of portal size + - ASoC: qcom: lpass-platform: Fix memory leak + - selftests/bpf: Fix error return code in run_getsockopt_test() + - MIPS: Alchemy: Fix memleak in alchemy_clk_setup_cpu + - drm/sun4i: dw-hdmi: fix error return code in sun8i_dw_hdmi_bind() + - net/mlx5: E-Switch, Fail mlx5_esw_modify_vport_rate if qos disabled + - bpf, sockmap: Fix partial copy_page_to_iter so progress can still be made + - bpf, sockmap: Ensure SO_RCVBUF memory is observed on ingress redirect + - can: kvaser_pciefd: Fix KCAN bittiming limits + - can: kvaser_usb: kvaser_usb_hydra: Fix KCAN bittiming limits + - dmaengine: fix error codes in channel_register() + - iommu/vt-d: Move intel_iommu_gfx_mapped to Intel IOMMU header + - iommu/vt-d: Avoid panic if iommu init fails in tboot system + - can: flexcan: flexcan_chip_start(): fix erroneous + flexcan_transceiver_enable() during bus-off recovery + - can: m_can: process interrupt only when not runtime suspended + - xfs: fix the minrecs logic when dealing with inode root child blocks + - xfs: strengthen rmap record flags checking + - xfs: directory scrub should check the null bestfree entries too + - xfs: ensure inobt record walks always make forward progress + - xfs: return corresponding errcode if xfs_initialize_perag() fail + - ASOC: Intel: kbl_rt5663_rt5514_max98927: Do not try to disable disabled + clock + - regulator: ti-abb: Fix array out of bound read access on the first + transition + - libbpf: Fix VERSIONED_SYM_COUNT number parsing + - lib/strncpy_from_user.c: Mask out bytes after NUL terminator. + - fail_function: Remove a redundant mutex unlock + - xfs: revert "xfs: fix rmap key and record comparison functions" + - bpf, sockmap: Skb verdict SK_PASS to self already checked rmem limits + - bpf, sockmap: On receive programs try to fast track SK_PASS ingress + - bpf, sockmap: Use truesize with sk_rmem_schedule() + - bpf, sockmap: Avoid returning unneeded EAGAIN when redirecting to self + - efi/arm: set HSCTLR Thumb2 bit correctly for HVC calls from HYP + - counter/ti-eqep: Fix regmap max_register + - efi/x86: Free efi_pgd with free_pages() + - sched/fair: Fix overutilized update in enqueue_task_fair() + - sched: Fix data-race in wakeup + - sched: Fix rq->nr_iowait ordering + - libfs: fix error cast of negative value in simple_attr_write() + - afs: Fix speculative status fetch going out of order wrt to modifications + - HID: logitech-hidpp: Add PID for MX Anywhere 2 + - HID: mcp2221: Fix GPIO output handling + - HID: logitech-dj: Handle quad/bluetooth keyboards with a builtin trackpad + - HID: logitech-dj: Fix Dinovo Mini when paired with a MX5x00 receiver + - speakup: Do not let the line discipline be used several times + - ALSA: firewire: Clean up a locking issue in copy_resp_to_buf() + - ALSA: usb-audio: Add delay quirk for all Logitech USB devices + - ALSA: ctl: fix error path at adding user-defined element set + - ALSA: mixart: Fix mutex deadlock + - ALSA: hda/realtek - Add supported for Lenovo ThinkPad Headset Button + - ALSA: hda/realtek - Add supported mute Led for HP + - ALSA: hda/realtek: Add some Clove SSID in the ALC293(ALC1220) + - ALSA: hda/realtek - HP Headset Mic can't detect after boot + - tty: serial: imx: fix potential deadlock + - tty: serial: imx: keep console clocks always on + - HID: logitech-dj: Fix an error in mse_bluetooth_descriptor + - efivarfs: fix memory leak in efivarfs_create() + - staging: rtl8723bs: Add 024c:0627 to the list of SDIO device-ids + - staging: mt7621-pci: avoid to request pci bus resources + - iio: light: fix kconfig dependency bug for VCNL4035 + - ext4: fix bogus warning in ext4_update_dx_flag() + - xfs: fix forkoff miscalculation related to XFS_LITINO(mp) + - ACPI: fan: Initialize performance state sysfs attribute + - iio: accel: kxcjk1013: Replace is_smo8500_device with an acpi_type enum + - iio: accel: kxcjk1013: Add support for KIOX010A ACPI DSM for setting tablet- + mode + - iio: adc: mediatek: fix unset field + - iio: cros_ec: Use default frequencies when EC returns invalid information + - iio: imu: st_lsm6dsx: set 10ms as min shub slave timeout + - iio/adc: ingenic: Fix battery VREF for JZ4770 SoC + - iio: adc: stm32-adc: fix a regression when using dma and irq + - serial: ar933x_uart: disable clk on error handling path in probe + - arm64: dts: agilex/stratix10: Fix qspi node compatible + - spi: lpspi: Fix use-after-free on unbind + - spi: Introduce device-managed SPI controller allocation + - spi: npcm-fiu: Don't leak SPI master in probe error path + - spi: bcm2835aux: Fix use-after-free on unbind + - regulator: pfuze100: limit pfuze-support-disable-sw to pfuze{100,200} + - regulator: fix memory leak with repeated set_machine_constraints() + - regulator: avoid resolve_supply() infinite recursion + - regulator: workaround self-referent regulators + - gfs2: Fix regression in freeze_go_sync + - xtensa: fix TLBTEMP area placement + - xtensa: disable preemption around cache alias management calls + - mac80211: minstrel: remove deferred sampling code + - mac80211: minstrel: fix tx status processing corner case + - mac80211: free sta in sta_info_insert_finish() on errors + - s390: fix system call exit path + - s390/cpum_sf.c: fix file permission for cpum_sfb_size + - s390/dasd: fix null pointer dereference for ERP requests + - Drivers: hv: vmbus: Allow cleanup of VMBUS_CONNECT_CPU if disconnected + - drm/amd/display: Add missing pflip irq for dcn2.0 + - drm/i915: Handle max_bpc==16 + - mmc: sdhci-pci: Prefer SDR25 timing for High Speed mode for BYT-based Intel + controllers + - mmc: sdhci-of-arasan: Allow configuring zero tap values + - mmc: sdhci-of-arasan: Use Mask writes for Tap delays + - mmc: sdhci-of-arasan: Issue DLL reset explicitly + - ptrace: Set PF_SUPERPRIV when checking capability + - seccomp: Set PF_SUPERPRIV when checking capability + - x86/microcode/intel: Check patch signature before saving microcode for early + loading + - mm: fix readahead_page_batch for retry entries + - mm: memcg/slab: fix root memcg vmstats + - mm/userfaultfd: do not access vma->vm_mm after calling handle_userfault() + - io_uring: get an active ref_node from files_data + - io_uring: order refnode recycling + - spi: bcm-qspi: Fix use-after-free on unbind + - spi: bcm2835: Fix use-after-free on unbind + - ipv4: use IS_ENABLED instead of ifdef + - IB/hfi1: Ensure correct mm is used at all times + - RDMA/i40iw: Address an mmap handler exploit in i40iw + - btrfs: tree-checker: add missing return after error in root_item + - btrfs: tree-checker: add missing returns after data_ref alignment checks + - btrfs: don't access possibly stale fs_info data for printing duplicate + device + - btrfs: fix lockdep splat when reading qgroup config on mount + - mm: fix VM_BUG_ON(PageTail) and BUG_ON(PageWriteback) + - smb3: Call cifs reconnect from demultiplex thread + - smb3: Avoid Mid pending list corruption + - smb3: Handle error case during offload read path + - cifs: fix a memleak with modefromsid + - powerpc/64s: Fix KVM system reset handling when CONFIG_PPC_PSERIES=y + - powerpc/64s/exception: KVM Fix for host DSI being taken in HPT guest MMU + context + - KVM: PPC: Book3S HV: XIVE: Fix possible oops when accessing ESB page + - KVM: arm64: vgic-v3: Drop the reporting of GICR_TYPER.Last for userspace + - KVM: x86: handle !lapic_in_kernel case in kvm_cpu_*_extint + - KVM: x86: Fix split-irqchip vs interrupt injection window request + - iommu/vt-d: Don't read VCCAP register unless it exists + - firmware: xilinx: Use hash-table for api feature check + - trace: fix potenial dangerous pointer + - arm64: pgtable: Fix pte_accessible() + - arm64: pgtable: Ensure dirty bit is preserved across pte_wrprotect() + - drm/amd/amdgpu: fix null pointer in runtime pm + - drm/amd/display: Avoid HDCP initialization in devices without output + - HID: uclogic: Add ID for Trust Flex Design Tablet + - HID: ite: Replace ABS_MISC 120/121 events with touchpad on/off keypresses + - HID: cypress: Support Varmilo Keyboards' media hotkeys + - HID: add support for Sega Saturn + - Input: i8042 - allow insmod to succeed on devices without an i8042 + controller + - HID: hid-sensor-hub: Fix issue with devices with no report ID + - staging: ralink-gdma: fix kconfig dependency bug for DMA_RALINK + - HID: add HID_QUIRK_INCREMENT_USAGE_ON_DUPLICATE for Gamevice devices + - dmaengine: xilinx_dma: use readl_poll_timeout_atomic variant + - x86/xen: don't unbind uninitialized lock_kicker_irq + - kunit: fix display of failed expectations for strings + - HID: logitech-hidpp: Add HIDPP_CONSUMER_VENDOR_KEYS quirk for the Dinovo + Edge + - HID: Add Logitech Dinovo Edge battery quirk + - proc: don't allow async path resolution of /proc/self components + - nvme: free sq/cq dbbuf pointers when dbbuf set fails + - net: stmmac: dwmac_lib: enlarge dma reset timeout + - vdpasim: fix "mac_pton" undefined error + - vhost: add helper to check if a vq has been setup + - vhost scsi: alloc cmds per vq instead of session + - vhost scsi: fix cmd completion race + - cpuidle: tegra: Annotate tegra_pm_set_cpu_in_lp2() with RCU_NONIDLE + - dmaengine: pl330: _prep_dma_memcpy: Fix wrong burst size + - scsi: libiscsi: Fix NOP race condition + - scsi: target: iscsi: Fix cmd abort fabric stop race + - perf/x86: fix sysfs type mismatches + - xtensa: uaccess: Add missing __user to strncpy_from_user() prototype + - x86/dumpstack: Do not try to access user space code of other tasks + - net: dsa: mv88e6xxx: Wait for EEPROM done after HW reset + - bus: ti-sysc: Fix reset status check for modules with quirks + - bus: ti-sysc: Fix bogus resetdone warning on enable for cpsw + - ARM: OMAP2+: Manage MPU state properly for omap_enter_idle_coupled() + - phy: tegra: xusb: Fix dangling pointer on probe failure + - iwlwifi: mvm: use the HOT_SPOT_CMD to cancel an AUX ROC + - iwlwifi: mvm: properly cancel a session protection for P2P + - iwlwifi: mvm: write queue_sync_state only for sync + - KVM: s390: pv: Mark mm as protected after the set secure parameters and + improve cleanup + - batman-adv: set .owner to THIS_MODULE + - usb: cdns3: gadget: fix some endian issues + - usb: cdns3: gadget: calculate TD_SIZE based on TD + - phy: qualcomm: usb: Fix SuperSpeed PHY OF dependency + - phy: qualcomm: Fix 28 nm Hi-Speed USB PHY OF dependency + - arch: pgtable: define MAX_POSSIBLE_PHYSMEM_BITS where needed + - bus: ti-sysc: suppress err msg for timers used as clockevent/source + - ARM: dts: dra76x: m_can: fix order of clocks + - scsi: ufs: Fix race between shutdown and runtime resume flow + - bnxt_en: fix error return code in bnxt_init_one() + - bnxt_en: fix error return code in bnxt_init_board() + - video: hyperv_fb: Fix the cache type when mapping the VRAM + - bnxt_en: Release PCI regions when DMA mask setup fails during probe. + - block/keyslot-manager: prevent crash when num_slots=1 + - cxgb4: fix the panic caused by non smac rewrite + - dpaa2-eth: select XGMAC_MDIO for MDIO bus support + - s390/qeth: make af_iucv TX notification call more robust + - s390/qeth: fix af_iucv notification race + - s390/qeth: fix tear down of async TX buffers + - drm/mediatek: dsi: Modify horizontal front/back porch byte formula + - bonding: wait for sysfs kobject destruction before freeing struct slave + - ibmvnic: fix call_netdevice_notifiers in do_reset + - ibmvnic: notify peers when failover and migration happen + - powerpc/64s: Fix allnoconfig build since uaccess flush + - iommu: Check return of __iommu_attach_device() + - IB/mthca: fix return value of error branch in mthca_init_cq() + - i40e: Fix removing driver while bare-metal VFs pass traffic + - firmware: xilinx: Fix SD DLL node reset issue + - io_uring: fix shift-out-of-bounds when round up cq size + - nfc: s3fwrn5: use signed integer for parsing GPIO numbers + - net: ena: handle bad request id in ena_netdev + - net: ena: set initial DMA width to avoid intel iommu issue + - net: ena: fix packet's addresses for rx_offset feature + - ibmvnic: fix NULL pointer dereference in reset_sub_crq_queues + - ibmvnic: fix NULL pointer dereference in ibmvic_reset_crq + - ibmvnic: enhance resetting status check during module exit + - optee: add writeback to valid memory type + - x86/tboot: Don't disable swiotlb when iommu is forced on + - arm64: tegra: Wrong AON HSP reg property size + - efi/efivars: Set generic ops before loading SSDT + - efivarfs: revert "fix memory leak in efivarfs_create()" + - efi: EFI_EARLYCON should depend on EFI + - riscv: Explicitly specify the build id style in vDSO Makefile again + - RISC-V: Add missing jump label initialization + - RISC-V: fix barrier() use in + - net: stmmac: fix incorrect merge of patch upstream + - enetc: Let the hardware auto-advance the taprio base-time of 0 + - drm/nouveau: fix relocations applying logic and a double-free + - can: gs_usb: fix endianess problem with candleLight firmware + - platform/x86: thinkpad_acpi: Send tablet mode switch at wakeup time + - platform/x86: toshiba_acpi: Fix the wrong variable assignment + - RDMA/hns: Fix wrong field of SRQ number the device supports + - RDMA/hns: Fix retry_cnt and rnr_cnt when querying QP + - RDMA/hns: Bugfix for memory window mtpt configuration + - can: m_can: m_can_open(): remove IRQF_TRIGGER_FALLING from + request_threaded_irq()'s flags + - can: m_can: fix nominal bitiming tseg2 min for version >= 3.1 + - perf record: Synthesize cgroup events only if needed + - perf stat: Use proper cpu for shadow stats + - perf probe: Fix to die_entrypc() returns error correctly + - spi: bcm2835aux: Restore err assignment in bcm2835aux_spi_probe + - USB: core: Change %pK for __user pointers to %px + - usb: gadget: f_midi: Fix memleak in f_midi_alloc + - USB: core: Fix regression in Hercules audio card + - USB: quirks: Add USB_QUIRK_DISCONNECT_SUSPEND quirk for Lenovo A630Z TIO + built-in usb-audio card + - usb: gadget: Fix memleak in gadgetfs_fill_super + - irqchip/exiu: Fix the index of fwspec for IRQ type + - x86/mce: Do not overwrite no_way_out if mce_end() fails + - x86/speculation: Fix prctl() when spectre_v2_user={seccomp,prctl},ibpb + - x86/resctrl: Remove superfluous kernfs_get() calls to prevent refcount leak + - x86/resctrl: Add necessary kernfs_put() calls to prevent refcount leak + - devlink: Hold rtnl lock while reading netdev attributes + - devlink: Make sure devlink instance and port are in same net namespace + - ipv6: addrlabel: fix possible memory leak in ip6addrlbl_net_init + - net/af_iucv: set correct sk_protocol for child sockets + - net: openvswitch: fix TTL decrement action netlink message format + - net/tls: missing received data after fast remote close + - net/tls: Protect from calling tls_dev_del for TLS RX twice + - rose: Fix Null pointer dereference in rose_send_frame() + - sock: set sk_err to ee_errno on dequeue from errq + - tcp: Set INET_ECN_xmit configuration in tcp_reinit_congestion_control + - tun: honor IOCB_NOWAIT flag + - usbnet: ipheth: fix connectivity with iOS 14 + - vsock/virtio: discard packets only when socket is really closed + - net/packet: fix packet receive on L3 devices without visible hard header + - netfilter: bridge: reset skb->pkt_type after NF_INET_POST_ROUTING traversal + - ipv4: Fix tos mask in inet_rtm_getroute() + - dt-bindings: net: correct interrupt flags in examples + - chelsio/chtls: fix panic during unload reload chtls + - ibmvnic: Ensure that SCRQ entry reads are correctly ordered + - ibmvnic: Fix TX completion error handling + - tipc: fix incompatible mtu of transmission + - inet_ecn: Fix endianness of checksum update when setting ECT(1) + - net: ip6_gre: set dev->hard_header_len when using header_ops + - dpaa_eth: copy timestamp fields to new skb in A-050385 workaround + - net/x25: prevent a couple of overflows + - cxgb3: fix error return code in t3_sge_alloc_qset() + - net: pasemi: fix error return code in pasemi_mac_open() + - vxlan: fix error return code in __vxlan_dev_create() + - chelsio/chtls: fix a double free in chtls_setkey() + - net: mvpp2: Fix error return code in mvpp2_open() + - net: skbuff: ensure LSE is pullable before decrementing the MPLS ttl + - net: openvswitch: ensure LSE is pullable before reading it + - net/sched: act_mpls: ensure LSE is pullable before reading it + - net/mlx5: DR, Proper handling of unsupported Connect-X6DX SW steering + - net/mlx5: Fix wrong address reclaim when command interface is down + - net: mlx5e: fix fs_tcp.c build when IPV6 is not enabled + - ALSA: usb-audio: US16x08: fix value count for level meters + - Input: xpad - support Ardwiino Controllers + - tracing: Fix alignment of static buffer + - tracing: Remove WARN_ON in start_thread() + - uapi: fix statx attribute value overlap for DAX & MOUNT_ROOT + - drm/i915/gt: Fixup tgl mocs for PTE tracking + - usb: gadget: f_fs: Use local copy of descriptors for userspace copy + - USB: serial: kl5kusb105: fix memleak on open + - USB: serial: ch341: add new Product ID for CH341A + - USB: serial: ch341: sort device-id entries + - USB: serial: option: add Fibocom NL668 variants + - USB: serial: option: add support for Thales Cinterion EXS82 + - USB: serial: option: fix Quectel BG96 matching + - tty: Fix ->pgrp locking in tiocspgrp() + - tty: Fix ->session locking + - speakup: Reject setting the speakup line discipline outside of speakup + - ALSA: hda/realtek: Fix bass speaker DAC assignment on Asus Zephyrus G14 + - ALSA: hda/realtek: Add mute LED quirk to yet another HP x360 model + - ALSA: hda/realtek: Enable headset of ASUS UX482EG & B9400CEA with ALC294 + - ALSA: hda/realtek - Add new codec supported for ALC897 + - ALSA: hda/realtek - Fixed Dell AIO wrong sound tone + - ALSA: hda/generic: Add option to enforce preferred_dacs pairs + - ftrace: Fix updating FTRACE_FL_TRAMP + - ftrace: Fix DYNAMIC_FTRACE_WITH_DIRECT_CALLS dependency + - cifs: allow syscalls to be restarted in __smb_send_rqst() + - cifs: fix potential use-after-free in cifs_echo_request() + - cifs: refactor create_sd_buf() and and avoid corrupting the buffer + - gfs2: Upgrade shared glocks for atime updates + - gfs2: Fix deadlock between gfs2_{create_inode,inode_lookup} and + delete_work_func + - s390/pci: fix CPU address in MSI for directed IRQ + - i2c: imx: Fix reset of I2SR_IAL flag + - i2c: imx: Check for I2SR_IAL after every byte + - i2c: imx: Don't generate STOP condition if arbitration has been lost + - tracing: Fix userstacktrace option for instances + - thunderbolt: Fix use-after-free in remove_unplugged_switch() + - drm/omap: sdi: fix bridge enable/disable + - drm/i915/gt: Retain default context state across shrinking + - drm/i915/gt: Limit frequency drop to RPe on parking + - drm/i915/gt: Program mocs:63 for cache eviction on gen9 + - KVM: PPC: Book3S HV: XIVE: Fix vCPU id sanity check + - scsi: mpt3sas: Fix ioctl timeout + - io_uring: fix recvmsg setup with compat buf-select + - dm writecache: advance the number of arguments when reporting max_age + - dm writecache: fix the maximum number of arguments + - powerpc/64s/powernv: Fix memory corruption when saving SLB entries on MCE + - genirq/irqdomain: Add an irq_create_mapping_affinity() function + - powerpc/pseries: Pass MSI affinity to irq_create_mapping() + - dm: fix bug with RCU locking in dm_blk_report_zones + - dm: fix double RCU unlock in dm_dax_zero_page_range() error path + - dm: remove invalid sparse __acquires and __releases annotations + - x86/uprobes: Do not use prefixes.nbytes when looping over prefixes.bytes + - coredump: fix core_pattern parse error + - mm: list_lru: set shrinker map bit when child nr_items is not zero + - mm/swapfile: do not sleep with a spin lock held + - hugetlb_cgroup: fix offline of hugetlb cgroup with reservations + - Revert "amd/amdgpu: Disable VCN DPG mode for Picasso" + - iommu/amd: Set DTE[IntTabLen] to represent 512 IRTEs + - lib/syscall: fix syscall registers retrieval on 32-bit platforms + - can: af_can: can_rx_unregister(): remove WARN() statement from list + operation sanity check + - gfs2: check for empty rgrp tree in gfs2_ri_update + - netfilter: ipset: prevent uninit-value in hash_ip6_add + - tipc: fix a deadlock when flushing scheduled work + - ASoC: wm_adsp: fix error return code in wm_adsp_load() + - gfs2: Fix deadlock dumping resource group glocks + - gfs2: Don't freeze the file system during unmount + - rtw88: debug: Fix uninitialized memory in debugfs code + - i2c: qcom: Fix IRQ error misassignement + - i2c: qup: Fix error return code in qup_i2c_bam_schedule_desc() + - dm writecache: remove BUG() and fail gracefully instead + - Input: i8042 - fix error return code in i8042_setup_aux() + - netfilter: nf_tables: avoid false-postive lockdep splat + - netfilter: nftables_offload: set address type in control dissector + - netfilter: nftables_offload: build mask based from the matching bytes + - x86/insn-eval: Use new for_each_insn_prefix() macro to loop over prefixes + bytes + - bpf: Fix propagation of 32-bit signed bounds from 64-bit bounds. + * dep-8 ubuntu-regression-suite tests are not run for all linux-hwe-* kernels + (LP: #1908529) + - [dep-8] Allow all hwe kernels + * disable building bpf selftests (LP: #1908144) + - SAUCE: selftests/bpf: Clarify build error if no vmlinux + - SAUCE: selftests: Skip BPF seftests by default + - disable building bpf selftests (no VMLINUX_BTF) + * selftests: test_vxlan_under_vrf: mute unnecessary error message + (LP: #1908342) + - selftests: test_vxlan_under_vrf: mute unnecessary error message + * Groovy update: upstream stable patchset 2020-12-17 (LP: #1908555) + - drm/i915: Hold onto an explicit ref to i915_vma_work.pinned + - drm/i915/gem: Flush coherency domains on first set-domain-ioctl + - mm: memcg: link page counters to root if use_hierarchy is false + - nbd: don't update block size after device is started + - KVM: arm64: Force PTE mapping on fault resulting in a device mapping + - ASoC: Intel: kbl_rt5663_max98927: Fix kabylake_ssp_fixup function + - genirq: Let GENERIC_IRQ_IPI select IRQ_DOMAIN_HIERARCHY + - hv_balloon: disable warning when floor reached + - net: xfrm: fix a race condition during allocing spi + - ASoC: codecs: wsa881x: add missing stream rates and format + - irqchip/sifive-plic: Fix broken irq_set_affinity() callback + - kunit: Fix kunit.py --raw_output option + - kunit: Don't fail test suites if one of them is empty + - usb: gadget: fsl: fix null pointer checking + - selftests: filter kselftest headers from command in lib.mk + - ASoC: codecs: wcd934x: Set digital gain range correctly + - ASoC: codecs: wcd9335: Set digital gain range correctly + - mtd: spi-nor: Fix address width on flash chips > 16MB + - xfs: set xefi_discard when creating a deferred agfl free log intent item + - mac80211: don't require VHT elements for HE on 2.4 GHz + - netfilter: nftables: fix netlink report logic in flowtable and genid + - netfilter: use actual socket sk rather than skb sk when routing harder + - netfilter: nf_tables: missing validation from the abort path + - netfilter: ipset: Update byte and packet counters regardless of whether they + match + - irqchip/sifive-plic: Fix chip_data access within a hierarchy + - powerpc/eeh_cache: Fix a possible debugfs deadlock + - drm/vc4: bo: Add a managed action to cleanup the cache + - IB/srpt: Fix memory leak in srpt_add_one + - mm: memcontrol: correct the NR_ANON_THPS counter of hierarchical memcg + - drm/panfrost: rename error labels in device_init + - drm/panfrost: move devfreq_init()/fini() in device + - drm/panfrost: Fix module unload + - perf trace: Fix segfault when trying to trace events by cgroup + - perf tools: Add missing swap for ino_generation + - perf tools: Add missing swap for cgroup events + - ALSA: hda: prevent undefined shift in snd_hdac_ext_bus_get_link() + - iommu/vt-d: Fix a bug for PDP check in prq_event_thread + - afs: Fix warning due to unadvanced marshalling pointer + - afs: Fix incorrect freeing of the ACL passed to the YFS ACL store op + - vfio/pci: Implement ioeventfd thread handler for contended memory lock + - can: rx-offload: don't call kfree_skb() from IRQ context + - can: dev: can_get_echo_skb(): prevent call to kfree_skb() in hard IRQ + context + - can: dev: __can_get_echo_skb(): fix real payload length return value for RTR + frames + - can: can_create_echo_skb(): fix echo skb generation: always use skb_clone() + - can: j1939: swap addr and pgn in the send example + - can: j1939: j1939_sk_bind(): return failure if netdev is down + - can: ti_hecc: ti_hecc_probe(): add missed clk_disable_unprepare() in error + path + - can: xilinx_can: handle failure cases of pm_runtime_get_sync + - can: peak_usb: add range checking in decode operations + - can: peak_usb: peak_usb_get_ts_time(): fix timestamp wrapping + - can: peak_canfd: pucan_handle_can_rx(): fix echo management when loopback is + on + - can: flexcan: remove FLEXCAN_QUIRK_DISABLE_MECR quirk for LS1021A + - can: flexcan: flexcan_remove(): disable wakeup completely + - xfs: flush new eof page on truncate to avoid post-eof corruption + - xfs: fix missing CoW blocks writeback conversion retry + - xfs: fix scrub flagging rtinherit even if there is no rt device + - spi: fsl-dspi: fix wrong pointer in suspend/resume + - ceph: add check_session_state() helper and make it global + - ceph: check the sesion state and return false in case it is closed + - ceph: check session state after bumping session->s_seq + - x86/speculation: Allow IBPB to be conditionally enabled on CPUs with always- + on STIBP + - kbuild: explicitly specify the build id style + - RISC-V: Fix the VDSO symbol generaton for binutils-2.35+ + - USB: apple-mfi-fastcharge: fix reference leak in apple_mfi_fc_set_property + - tpm: efi: Don't create binary_bios_measurements file for an empty log + - KVM: arm64: ARM_SMCCC_ARCH_WORKAROUND_1 doesn't return + SMCCC_RET_NOT_REQUIRED + - ath9k_htc: Use appropriate rs_datalen type + - ASoC: qcom: sdm845: set driver name correctly + - ASoC: cs42l51: manage mclk shutdown delay + - ASoC: SOF: loader: handle all SOF_IPC_EXT types + - usb: dwc3: pci: add support for the Intel Alder Lake-S + - opp: Reduce the size of critical section in _opp_table_kref_release() + - usb: gadget: goku_udc: fix potential crashes in probe + - usb: raw-gadget: fix memory leak in gadget_setup + - selftests: pidfd: fix compilation errors due to wait.h + - x86/boot/compressed/64: Introduce sev_status + - gfs2: Free rd_bits later in gfs2_clear_rgrpd to fix use-after-free + - gfs2: Add missing truncate_inode_pages_final for sd_aspace + - gfs2: check for live vs. read-only file system in gfs2_fitrim + - scsi: hpsa: Fix memory leak in hpsa_init_one() + - drm/amdgpu: perform srbm soft reset always on SDMA resume + - drm/amd/pm: correct the baco reset sequence for CI ASICs + - drm/amd/pm: perform SMC reset on suspend/hibernation + - drm/amd/pm: do not use ixFEATURE_STATUS for checking smc running + - mac80211: fix use of skb payload instead of header + - cfg80211: initialize wdev data earlier + - cfg80211: regulatory: Fix inconsistent format argument + - wireguard: selftests: check that route_me_harder packets use the right sk + - tracing: Fix the checking of stackidx in __ftrace_trace_stack + - ARC: [plat-hsdk] Remap CCMs super early in asm boot trampoline + - scsi: scsi_dh_alua: Avoid crash during alua_bus_detach() + - scsi: mpt3sas: Fix timeouts observed while reenabling IRQ + - nvme: introduce nvme_sync_io_queues + - nvme-rdma: avoid race between time out and tear down + - nvme-tcp: avoid race between time out and tear down + - nvme-rdma: avoid repeated request completion + - nvme-tcp: avoid repeated request completion + - iommu/amd: Increase interrupt remapping table limit to 512 entries + - s390/smp: move rcu_cpu_starting() earlier + - vfio: platform: fix reference leak in vfio_platform_open + - vfio/pci: Bypass IGD init in case of -ENODEV + - i2c: mediatek: move dma reset before i2c reset + - iomap: clean up writeback state logic on writepage error + - selftests: proc: fix warning: _GNU_SOURCE redefined + - arm64: kexec_file: try more regions if loading segments fails + - riscv: Set text_offset correctly for M-Mode + - i2c: sh_mobile: implement atomic transfers + - i2c: designware: call i2c_dw_read_clear_intrbits_slave() once + - i2c: designware: slave should do WRITE_REQUESTED before WRITE_RECEIVED + - tpm_tis: Disable interrupts on ThinkPad T490s + - spi: bcm2835: remove use of uninitialized gpio flags variable + - mfd: sprd: Add wakeup capability for PMIC IRQ + - pinctrl: intel: Fix 2 kOhm bias which is 833 Ohm + - pinctrl: intel: Set default bias in case no particular value given + - gpio: aspeed: fix ast2600 bank properties + - ARM: 9019/1: kprobes: Avoid fortify_panic() when copying optprobe template + - bpf: Don't rely on GCC __attribute__((optimize)) to disable GCSE + - libbpf, hashmap: Fix undefined behavior in hash_bits + - pinctrl: mcp23s08: Use full chunk of memory for regmap configuration + - pinctrl: aspeed: Fix GPI only function problem. + - net/mlx5e: Fix modify header actions memory leak + - net/mlx5e: Protect encap route dev from concurrent release + - net/mlx5e: Use spin_lock_bh for async_icosq_lock + - net/mlx5: Fix deletion of duplicate rules + - net/mlx5e: Fix incorrect access of RCU-protected xdp_prog + - SUNRPC: Fix general protection fault in trace_rpc_xdr_overflow() + - NFSD: Fix use-after-free warning when doing inter-server copy + - NFSD: fix missing refcount in nfsd4_copy by nfsd4_do_async_copy + - tools/bpftool: Fix attaching flow dissector + - bpf: Zero-fill re-used per-cpu map element + - r8169: fix potential skb double free in an error path + - r8169: disable hw csum for short packets on all chip versions + - pinctrl: qcom: Move clearing pending IRQ to .irq_request_resources callback + - pinctrl: qcom: sm8250: Specify PDC map + - nbd: fix a block_device refcount leak in nbd_release + - selftest: fix flower terse dump tests + - i40e: Fix MAC address setting for a VF via Host/VM + - igc: Fix returning wrong statistics + - lan743x: correctly handle chips with internal PHY + - net: phy: realtek: support paged operations on RTL8201CP + - xfs: fix flags argument to rmap lookup when converting shared file rmaps + - xfs: set the unwritten bit in rmap lookup flags in xchk_bmap_get_rmapextents + - xfs: fix rmap key and record comparison functions + - xfs: fix brainos in the refcount scrubber's rmap fragment processor + - lan743x: fix "BUG: invalid wait context" when setting rx mode + - xfs: fix a missing unlock on error in xfs_fs_map_blocks + - of/address: Fix of_node memory leak in of_dma_is_coherent + - ch_ktls: Update cheksum information + - ch_ktls: tcb update fails sometimes + - cosa: Add missing kfree in error path of cosa_write + - hwmon: (applesmc) Re-work SMC comms + - vrf: Fix fast path output packet handling with async Netfilter rules + - lan743x: fix use of uninitialized variable + - arm64/mm: Validate hotplug range before creating linear mapping + - kernel/watchdog: fix watchdog_allowed_mask not used warning + - mm: memcontrol: fix missing wakeup polling thread + - afs: Fix afs_write_end() when called with copied == 0 [ver #3] + - perf: Fix get_recursion_context() + - nvme: factor out a nvme_configure_metadata helper + - nvme: freeze the queue over ->lba_shift updates + - nvme: fix incorrect behavior when BLKROSET is called by the user + - perf: Simplify group_sched_in() + - perf: Fix event multiplexing for exclusive groups + - firmware: xilinx: fix out-of-bounds access + - erofs: fix setting up pcluster for temporary pages + - erofs: derive atime instead of leaving it empty + - ext4: correctly report "not supported" for {usr,grp}jquota when + !CONFIG_QUOTA + - ext4: unlock xattr_sem properly in ext4_inline_data_truncate() + - btrfs: fix potential overflow in cluster_pages_for_defrag on 32bit arch + - btrfs: ref-verify: fix memory leak in btrfs_ref_tree_mod + - btrfs: fix min reserved size calculation in merge_reloc_root + - btrfs: dev-replace: fail mount if we don't have replace item with target + device + - KVM: arm64: Don't hide ID registers from userspace + - speakup: Fix var_id_t values and thus keymap + - speakup ttyio: Do not schedule() in ttyio_in_nowait + - speakup: Fix clearing selection in safe context + - thunderbolt: Fix memory leak if ida_simple_get() fails in + enumerate_services() + - thunderbolt: Add the missed ida_simple_remove() in ring_request_msix() + - block: add a return value to set_capacity_revalidate_and_notify + - loop: Fix occasional uevent drop + - uio: Fix use-after-free in uio_unregister_device() + - usb: cdc-acm: Add DISABLE_ECHO for Renesas USB Download mode + - usb: typec: ucsi: Report power supply changes + - xhci: hisilicon: fix refercence leak in xhci_histb_probe + - virtio: virtio_console: fix DMA memory allocation for rproc serial + - mei: protect mei_cl_mtu from null dereference + - futex: Don't enable IRQs unconditionally in put_pi_state() + - jbd2: fix up sparse warnings in checkpoint code + - bootconfig: Extend the magic check range to the preceding 3 bytes + - mm/compaction: count pages and stop correctly during page isolation + - mm/compaction: stop isolation if too many pages are isolated and we have + pages to migrate + - mm/slub: fix panic in slab_alloc_node() + - mm/vmscan: fix NR_ISOLATED_FILE corruption on 64-bit + - mm/gup: use unpin_user_pages() in __gup_longterm_locked() + - Revert "kernel/reboot.c: convert simple_strtoul to kstrtoint" + - reboot: fix overflow parsing reboot cpu number + - hugetlbfs: fix anon huge page migration race + - ocfs2: initialize ip_next_orphan + - selinux: Fix error return code in sel_ib_pkey_sid_slow() + - io_uring: round-up cq size before comparing with rounded sq size + - gpio: sifive: Fix SiFive gpio probe + - gpio: pcie-idio-24: Fix irq mask when masking + - gpio: pcie-idio-24: Fix IRQ Enable Register value + - gpio: pcie-idio-24: Enable PEX8311 interrupts + - mmc: sdhci-of-esdhc: Handle pulse width detection erratum for more SoCs + - mmc: renesas_sdhi_core: Add missing tmio_mmc_host_free() at remove + - don't dump the threads that had been already exiting when zapped. + - drm/i915: Correctly set SFC capability for video engines + - drm/gma500: Fix out-of-bounds access to struct drm_device.vblank[] + - pinctrl: amd: use higher precision for 512 RtcClk + - pinctrl: amd: fix incorrect way to disable debounce filter + - swiotlb: fix "x86: Don't panic if can not alloc buffer for swiotlb" + - cpufreq: Introduce governor flags + - cpufreq: Introduce CPUFREQ_GOV_STRICT_TARGET + - cpufreq: Add strict_target to struct cpufreq_policy + - ethtool: netlink: add missing netdev_features_change() call + - IPv6: Set SIT tunnel hard_header_len to zero + - net/af_iucv: fix null pointer dereference on shutdown + - net: udp: fix IP header access and skb lookup on Fast/frag0 UDP GRO + - net: udp: fix UDP header access on Fast/frag0 UDP GRO + - net: Update window_clamp if SOCK_RCVBUF is set + - net/x25: Fix null-ptr-deref in x25_connect + - tipc: fix memory leak in tipc_topsrv_start() + - powerpc/603: Always fault when _PAGE_ACCESSED is not set + - null_blk: Fix scheduling in atomic with zoned mode + - perf scripting python: Avoid declaring function pointers with a visibility + attribute + - coresight: etm: perf: Sink selection using sysfs is deprecated + - coresight: Fix uninitialised pointer bug in etm_setup_aux() + - Convert trailing spaces and periods in path components + - random32: make prandom_u32() output unpredictable + - amd/amdgpu: Disable VCN DPG mode for Picasso + * [SRU][F/G/H/U/OEM-5.6] Fix i2c report error on elan trackpoint + (LP: #1908335) + - Input: elan_i2c - add support for high resolution reports + - Input: elan_i2c - add new trackpoint report type 0x5F + - Input: elantech - fix protocol errors for some trackpoints in SMBus mode + * [SRU][OEM-5.6] UBUNTU: SAUCE: Fix brightness control on BOE 2270 panel + (LP: #1904991) + - drm/i915: Force DPCD backlight mode for BOE 2270 panel + * rtwpci driver blocks the system to enter PC10, stuck at PC3 (LP: #1907200) + - SAUCE: rtw88: 8723de: let cpu enter c10 + * Touchpad not detected on ByteSpeed C15B laptop (LP: #1906128) + - Input: i8042 - add ByteSpeed touchpad to noloop table + * Fix reading speed and duplex sysfs on igc device (LP: #1906851) + - SAUCE: igc: Report speed and duplex as unknown when device is runtime + suspended + * Groovy update: upstream stable patchset 2020-12-15 (LP: #1908323) + - tipc: fix use-after-free in tipc_bcast_get_mode + - drm/i915/gem: Avoid implicit vmap for highmem on x86-32 + - drm/i915/gem: Prevent using pgprot_writecombine() if PAT is not supported + - drm/i915/gem: Always test execution status on closing the context + - drm/i915/gt: Always send a pulse down the engine after disabling heartbeat + - drm/i915: Break up error capture compression loops with cond_resched() + - drm/i915: Cancel outstanding work after disabling heartbeats on an engine + - drm/i915: Avoid mixing integer types during batch copies + - drm/i915/gt: Initialize reserved and unspecified MOCS indices + - drm/i915/gt: Undo forced context restores after trivial preemptions + - drm/i915: Drop runtime-pm assert from vgpu io accessors + - drm/i915: Exclude low pages (128KiB) of stolen from use + - drm/i915: Use the active reference on the vma while capturing + - drm/i915: Reject 90/270 degree rotated initial fbs + - drm/i915: Restore ILK-M RPS support + - drm/nouveau/device: fix changing endianess code to work on older GPUs + - ptrace: fix task_join_group_stop() for the case when current is traced + - cadence: force nonlinear buffers to be cloned + - chelsio/chtls: fix memory leaks caused by a race + - chelsio/chtls: fix always leaking ctrl_skb + - dpaa_eth: update the buffer layout for non-A050385 erratum scenarios + - dpaa_eth: fix the RX headroom size alignment + - gianfar: Replace skb_realloc_headroom with skb_cow_head for PTP + - gianfar: Account for Tx PTP timestamp in the skb headroom + - ionic: check port ptr before use + - ip_tunnel: fix over-mtu packet send fail without TUNNEL_DONT_FRAGMENT flags + - net: ethernet: ti: cpsw: disable PTPv1 hw timestamping advertisement + - net: usb: qmi_wwan: add Telit LE910Cx 0x1230 composition + - powerpc/vnic: Extend "failover pending" window + - sctp: Fix COMM_LOST/CANT_STR_ASSOC err reporting on big-endian platforms + - sfp: Fix error handing in sfp_probe() + - ip6_tunnel: set inner ipproto before ip6_tnl_encap + - net: fec: fix MDIO probing for some FEC hardware blocks + - r8169: work around short packet hw bug on RTL8125 + - drm/nouveau/kms/nv50-: Get rid of bogus nouveau_conn_mode_valid() + - drm/nouveau/kms/nv50-: Fix clock checking algorithm in nv50_dp_mode_valid() + - Fonts: Replace discarded const qualifier + - ALSA: hda/realtek - Fixed HP headset Mic can't be detected + - ALSA: hda/realtek - Enable headphone for ASUS TM420 + - ALSA: usb-audio: Add implicit feedback quirk for Zoom UAC-2 + - ALSA: usb-audio: add usb vendor id as DSD-capable for Khadas devices + - ALSA: usb-audio: Add implicit feedback quirk for Qu-16 + - ALSA: usb-audio: Add implicit feedback quirk for MODX + - hugetlb_cgroup: fix reservation accounting + - mm: mempolicy: fix potential pte_unmap_unlock pte error + - lib/crc32test: remove extra local_irq_disable/enable + - kthread_worker: prevent queuing delayed work from timer_fn when it is being + canceled + - mm: always have io_remap_pfn_range() set pgprot_decrypted() + - perf hists browser: Increase size of 'buf' in perf_evsel__hists_browse() + - gfs2: Wake up when sd_glock_disposal becomes zero + - gfs2: Don't call cancel_delayed_work_sync from within delete work function + - ring-buffer: Fix recursion protection transitions between interrupt context + - iommu/vt-d: Fix kernel NULL pointer dereference in find_domain() + - mtd: spi-nor: Don't copy self-pointing struct around + - ftrace: Fix recursion check for NMI test + - ftrace: Handle tracing when switching between context + - regulator: defer probe when trying to get voltage from unresolved supply + - spi: bcm2835: fix gpio cs level inversion + - tracing: Fix out of bounds write in get_trace_buf + - futex: Handle transient "ownerless" rtmutex state correctly + - x86/lib: Change .weak to SYM_FUNC_START_WEAK for arch/x86/lib/mem*_64.S + - ARM: dts: sun4i-a10: fix cpu_alert temperature + - arm64: dts: meson: add missing g12 rng clock + - arm64: dts: amlogic: meson-g12: use the G12A specific dwmac compatible + - x86/kexec: Use up-to-dated screen_info copy to fill boot params + - hyperv_fb: Update screen_info after removing old framebuffer + - arm64: dts: amlogic: add missing ethernet reset ID + - io_uring: don't miss setting IO_WQ_WORK_CONCURRENT + - of: Fix reserved-memory overlap detection + - ARM: dts: mmp3: Add power domain for the camera + - drm/sun4i: frontend: Rework a bit the phase data + - drm/sun4i: frontend: Reuse the ch0 phase for RGB formats + - drm/sun4i: frontend: Fix the scaler phase on A33 + - drm/v3d: Fix double free in v3d_submit_cl_ioctl() + - blk-cgroup: Fix memleak on error path + - blk-cgroup: Pre-allocate tree node on blkg_conf_prep + - btrfs: drop the path before adding qgroup items when enabling qgroups + - btrfs: add a helper to read the tree_root commit root for backref lookup + - scsi: core: Don't start concurrent async scan on same host + - drm/amdgpu: disable DCN and VCN for navi10 blockchain SKU(v3) + - drm/amdgpu: add DID for navi10 blockchain SKU + - scsi: ibmvscsi: Fix potential race after loss of transport + - vsock: use ns_capable_noaudit() on socket create + - nvme-rdma: handle unexpected nvme completion data length + - nvmet: fix a NULL pointer dereference when tracing the flush command + - drm/vc4: drv: Add error handding for bind + - ACPI: NFIT: Fix comparison to '-ENXIO' + - usb: cdns3: gadget: suspicious implicit sign extension + - drm/nouveau/nouveau: fix the start/end range for migration + - drm/nouveau/gem: fix "refcount_t: underflow; use-after-free" + - arm64/smp: Move rcu_cpu_starting() earlier + - tty: fix crash in release_tty if tty->port is not set + - fork: fix copy_process(CLONE_PARENT) race with the exiting ->real_parent + - s390/mm: make pmd/pud_deref() large page aware + - s390/pkey: fix paes selftest failure with paes and pkey static build + - powerpc/8xx: Always fault when _PAGE_ACCESSED is not set + - powerpc/40x: Always fault when _PAGE_ACCESSED is not set + - serial: 8250_mtk: Fix uart_get_baud_rate warning + - serial: txx9: add missing platform_driver_unregister() on error in + serial_txx9_init + - USB: serial: cyberjack: fix write-URB completion race + - USB: serial: option: add Quectel EC200T module support + - USB: serial: option: add LE910Cx compositions 0x1203, 0x1230, 0x1231 + - USB: serial: option: add Telit FN980 composition 0x1055 + - usb: dwc3: ep0: Fix delay status handling + - USB: Add NO_LPM quirk for Kingston flash drive + - usb: mtu3: fix panic in mtu3_gadget_stop() + - io_uring: fix link lookup racing with link timeout + - drm/panfrost: Fix a deadlock between the shrinker and madvise path + - ARC: stack unwinding: avoid indefinite looping + - PM: runtime: Drop runtime PM references to supplier on link removal + - PM: runtime: Drop pm_runtime_clean_up_links() + - PM: runtime: Resume the device earlier in __device_release_driver() + - drm/i915/gt: Use the local HWSP offset during submission + - perf/core: Fix a memory leak in perf_event_parse_addr_filter() + - Revert "coresight: Make sysfs functional on topologies with per core sink" + * Groovy update: upstream stable patchset 2020-12-14 (LP: #1908150) + - xen/events: avoid removing an event channel while handling it + - xen/events: add a proper barrier to 2-level uevent unmasking + - xen/events: fix race in evtchn_fifo_unmask() + - xen/events: add a new "late EOI" evtchn framework + - xen/blkback: use lateeoi irq binding + - xen/netback: use lateeoi irq binding + - xen/scsiback: use lateeoi irq binding + - xen/pvcallsback: use lateeoi irq binding + - xen/pciback: use lateeoi irq binding + - xen/events: switch user event channels to lateeoi model + - xen/events: use a common cpu hotplug hook for event channels + - xen/events: defer eoi in case of excessive number of events + - xen/events: block rogue events for some time + - firmware: arm_scmi: Fix ARCH_COLD_RESET + - firmware: arm_scmi: Expand SMC/HVC message pool to more than one + - tee: client UUID: Skip REE kernel login method as well + - firmware: arm_scmi: Add missing Rx size re-initialisation + - x86/unwind/orc: Fix inactive tasks with stack pointer in %sp on GCC 10 + compiled kernels + - x86/alternative: Don't call text_poke() in lazy TLB mode + - ionic: no rx flush in deinit + - RDMA/mlx5: Fix devlink deadlock on net namespace deletion + - mlxsw: core: Fix use-after-free in mlxsw_emad_trans_finish() + - tracing, synthetic events: Replace buggy strcat() with seq_buf operations + - afs: Fix a use after free in afs_xattr_get_acl() + - afs: Fix afs_launder_page to not clear PG_writeback + - RDMA/qedr: Fix memory leak in iWARP CM + - ata: sata_nv: Fix retrieving of active qcs + - arm64: efi: increase EFI PE/COFF header padding to 64 KB + - afs: Fix to take ref on page when PG_private is set + - afs: Fix page leak on afs_write_begin() failure + - afs: Fix where page->private is set during write + - afs: Wrap page->private manipulations in inline functions + - afs: Alter dirty range encoding in page->private + - mm: add thp_order + - mm: add thp_size + - afs: Fix afs_invalidatepage to adjust the dirty region + - afs: Fix dirty-region encoding on ppc32 with 64K pages + - interconnect: qcom: sdm845: Enable keepalive for the MM1 BCM + - usb: host: ehci-tegra: Fix error handling in tegra_ehci_probe() + - futex: Fix incorrect should_fail_futex() handling + - powerpc/vmemmap: Fix memory leak with vmemmap list allocation failures. + - powerpc/powernv/smp: Fix spurious DBG() warning + - RDMA/core: Change how failing destroy is handled during uobj abort + - f2fs: allocate proper size memory for zstd decompress + - powerpc/watchpoint/ptrace: Fix SETHWDEBUG when CONFIG_HAVE_HW_BREAKPOINT=N + - [Config] update config for ARCH_WANT_IRQS_OFF_ACTIVATE_MM + - mm: fix exec activate_mm vs TLB shootdown and lazy tlb switching race + - powerpc: select ARCH_WANT_IRQS_OFF_ACTIVATE_MM + - sparc64: remove mm_cpumask clearing to fix kthread_use_mm race + - f2fs: add trace exit in exception path + - f2fs: do sanity check on zoned block device path + - f2fs: fix uninit-value in f2fs_lookup + - f2fs: fix to check segment boundary during SIT page readahead + - s390/startup: avoid save_area_sync overflow + - f2fs: compress: fix to disallow enabling compress on non-empty file + - um: change sigio_spinlock to a mutex + - f2fs: handle errors of f2fs_get_meta_page_nofail + - afs: Don't assert on unpurgeable server records + - powerpc/64s: handle ISA v3.1 local copy-paste context switches + - ARM: 8997/2: hw_breakpoint: Handle inexact watchpoint addresses + - NFS4: Fix oops when copy_file_range is attempted with NFS4.0 source + - xfs: Set xfs_buf type flag when growing summary/bitmap files + - xfs: Set xfs_buf's b_ops member when zeroing bitmap/summary files + - xfs: log new intent items created as part of finishing recovered intent + items + - power: supply: bq27xxx: report "not charging" on all types + - xfs: change the order in which child and parent defer ops are finished + - xfs: fix realtime bitmap/summary file truncation when growing rt volume + - ath10k: fix retry packets update in station dump + - x86/kaslr: Initialize mem_limit to the real maximum address + - drm/ast: Separate DRM driver from PCI code + - drm/amdgpu: restore ras flags when user resets eeprom(v2) + - video: fbdev: pvr2fb: initialize variables + - ath10k: start recovery process when payload length exceeds max htc length + for sdio + - ath10k: fix VHT NSS calculation when STBC is enabled + - drm/scheduler: Scheduler priority fixes (v2) + - drm/brige/megachips: Add checking if ge_b850v3_lvds_init() is working + correctly + - ASOC: SOF: Intel: hda-codec: move unused label to correct position + - ASoC: SOF: fix a runtime pm issue in SOF when HDMI codec doesn't work + - selftests/x86/fsgsbase: Reap a forgotten child + - drm/bridge_connector: Set default status connected for eDP connectors + - media: videodev2.h: RGB BT2020 and HSV are always full range + - ASoC: AMD: Clean kernel log from deferred probe error messages + - misc: fastrpc: fix common struct sg_table related issues + - staging: wfx: fix potential use before init + - media: platform: Improve queue set up flow for bug fixing + - usb: typec: tcpm: During PR_SWAP, source caps should be sent only after + tSwapSourceStart + - media: tw5864: check status of tw5864_frameinterval_get + - drm/vkms: avoid warning in vkms_get_vblank_timestamp + - media: imx274: fix frame interval handling + - mmc: via-sdmmc: Fix data race bug + - drm/bridge/synopsys: dsi: add support for non-continuous HS clock + - brcmfmac: increase F2 watermark for BCM4329 + - arm64: topology: Stop using MPIDR for topology information + - printk: reduce LOG_BUF_SHIFT range for H8300 + - ia64: kprobes: Use generic kretprobe trampoline handler + - kgdb: Make "kgdbcon" work properly with "kgdb_earlycon" + - bpf: Permit map_ptr arithmetic with opcode add and offset 0 + - drm: exynos: fix common struct sg_table related issues + - xen: gntdev: fix common struct sg_table related issues + - drm: lima: fix common struct sg_table related issues + - drm: panfrost: fix common struct sg_table related issues + - media: uvcvideo: Fix dereference of out-of-bound list iterator + - nfc: s3fwrn5: Add missing CRYPTO_HASH dependency + - selftests/bpf: Define string const as global for test_sysctl_prog.c + - selinux: access policycaps with READ_ONCE/WRITE_ONCE + - samples/bpf: Fix possible deadlock in xdpsock + - drm/amd/display: Check clock table return + - riscv: Define AT_VECTOR_SIZE_ARCH for ARCH_DLINFO + - cpufreq: sti-cpufreq: add stih418 support + - USB: adutux: fix debugging + - uio: free uio id after uio file node is freed + - coresight: Make sysfs functional on topologies with per core sink + - drm/amdgpu: No sysfs, not an error condition + - mac80211: add missing queue/hash initialization to 802.3 xmit + - usb: xhci: omit duplicate actions when suspending a runtime suspended host. + - SUNRPC: Mitigate cond_resched() in xprt_transmit() + - cpuidle: tegra: Correctly handle result of arm_cpuidle_simple_enter() + - arm64/mm: return cpu_all_mask when node is NUMA_NO_NODE + - can: flexcan: disable clocks during stop mode + - habanalabs: remove security from ARB_MST_QUIET register + - xfs: don't free rt blocks when we're doing a REMAP bunmapi call + - xfs: avoid LR buffer overrun due to crafted h_len + - ACPI: Add out of bounds and numa_off protections to pxm_to_node() + - octeontx2-af: fix LD CUSTOM LTYPE aliasing + - brcmfmac: Fix warning message after dongle setup failed + - ath11k: Use GFP_ATOMIC instead of GFP_KERNEL in ath11k_dp_htt_get_ppdu_desc + - ath11k: fix warning caused by lockdep_assert_held + - ath11k: change to disable softirqs for ath11k_regd_update to solve deadlock + - drivers/net/wan/hdlc_fr: Correctly handle special skb->protocol values + - usb: dwc3: core: do not queue work if dr_mode is not USB_DR_MODE_OTG + - bus: mhi: core: Abort suspends due to outgoing pending packets + - bus/fsl_mc: Do not rely on caller to provide non NULL mc_io + - ACPI: HMAT: Fix handling of changes from ACPI 6.2 to ACPI 6.3 + - power: supply: test_power: add missing newlines when printing parameters by + sysfs + - drm/amd/display: HDMI remote sink need mode validation for Linux + - drm/amd/display: Avoid set zero in the requested clk + - ARC: [dts] fix the errors detected by dtbs_check + - block: Consider only dispatched requests for inflight statistic + - btrfs: fix replace of seed device + - md/bitmap: md_bitmap_get_counter returns wrong blocks + - f2fs: fix to set SBI_NEED_FSCK flag for inconsistent inode + - bnxt_en: Log unknown link speed appropriately. + - rpmsg: glink: Use complete_all for open states + - PCI/ACPI: Add Ampere Altra SOC MCFG quirk + - clk: ti: clockdomain: fix static checker warning + - nfsd: rename delegation related tracepoints to make them less confusing + - net: 9p: initialize sun_server.sun_path to have addr's value only when addr + is valid + - ceph: encode inodes' parent/d_name in cap reconnect message + - drivers: watchdog: rdc321x_wdt: Fix race condition bugs + - jbd2: avoid transaction reuse after reformatting + - ext4: Detect already used quota file early + - KVM: PPC: Book3S HV: Do not allocate HPT for a nested guest + - scsi: core: Clean up allocation and freeing of sgtables + - gfs2: call truncate_inode_pages_final for address space glocks + - gfs2: Fix NULL pointer dereference in gfs2_rgrp_dump + - gfs2: use-after-free in sysfs deregistration + - gfs2: add validation checks for size of superblock + - Handle STATUS_IO_TIMEOUT gracefully + - cifs: handle -EINTR in cifs_setattr + - arm64: dts: renesas: ulcb: add full-pwr-cycle-in-suspend into eMMC nodes + - ARM: dts: omap4: Fix sgx clock rate for 4430 + - memory: emif: Remove bogus debugfs error handling + - ARM: dts: s5pv210: Enable audio on Aries boards + - ARM: dts: s5pv210: remove DMA controller bus node name to fix dtschema + warnings + - ARM: dts: s5pv210: move fixed clocks under root node + - ARM: dts: s5pv210: move PMU node out of clock controller + - ARM: dts: s5pv210: remove dedicated 'audio-subsystem' node + - ARM: dts: s5pv210: add RTC 32 KHz clock in Aries family + - ARM: dts: s5pv210: align SPI GPIO node name with dtschema in Aries + - soc: qcom: rpmh-rsc: Sleep waiting for tcs slots to be free + - firmware: arm_scmi: Move scmi bus init and exit calls into the driver + - nbd: make the config put is called before the notifying the waiter + - sgl_alloc_order: fix memory leak + - nvme-rdma: fix crash when connect rejected + - vmlinux.lds.h: Add PGO and AutoFDO input sections + - irqchip/loongson-htvec: Fix initial interrupt clearing + - md: fix the checking of wrong work queue + - md/raid5: fix oops during stripe resizing + - mmc: sdhci: Add LTR support for some Intel BYT based controllers + - mmc: sdhci-acpi: AMDI0040: Set SDHCI_QUIRK2_PRESET_VALUE_BROKEN + - seccomp: Make duplicate listener detection non-racy + - selftests/x86/fsgsbase: Test PTRACE_PEEKUSER for GSBASE with invalid LDT GS + - perf/x86/intel: Fix Ice Lake event constraint table + - perf/x86/amd: Fix sampling Large Increment per Cycle events + - perf/amd/uncore: Set all slices and threads to restore perf stat -a + behaviour + - perf/x86/amd/ibs: Don't include randomized bits in get_ibs_op_count() + - perf/x86/amd/ibs: Fix raw sample data accumulation + - spi: spi-mtk-nor: fix timeout calculation overflow + - spi: sprd: Release DMA channel also on probe deferral + - extcon: ptn5150: Fix usage of atomic GPIO with sleeping GPIO chips + - leds: bcm6328, bcm6358: use devres LED registering function + - hwmon: (pmbus/max34440) Fix OC fault limits + - media: uvcvideo: Fix uvc_ctrl_fixup_xu_info() not having any effect + - fs: Don't invalidate page buffers in block_write_full_page() + - ACPI: configfs: Add missing config_item_put() to fix refcount leak + - NFS: fix nfs_path in case of a rename retry + - ACPI: button: fix handling lid state changes when input device closed + - ACPI / extlog: Check for RDMSR failure + - ACPI: debug: don't allow debugging when ACPI is disabled + - PCI/ACPI: Whitelist hotplug ports for D3 if power managed by ACPI + - ACPI: EC: PM: Flush EC work unconditionally after wakeup + - ACPI: EC: PM: Drop ec_no_wakeup check from acpi_ec_dispatch_gpe() + - acpi-cpufreq: Honor _PSD table setting on new AMD CPUs + - io-wq: assign NUMA node locality if appropriate + - w1: mxc_w1: Fix timeout resolution problem leading to bus error + - fs/kernel_read_file: Remove FIRMWARE_PREALLOC_BUFFER enum + - scsi: mptfusion: Fix null pointer dereferences in mptscsih_remove() + - scsi: qla2xxx: Fix MPI reset needed message + - scsi: qla2xxx: Fix reset of MPI firmware + - scsi: qla2xxx: Fix crash on session cleanup with unload + - PM: runtime: Remove link state checks in rpm_get/put_supplier() + - btrfs: qgroup: fix wrong qgroup metadata reserve for delayed inode + - btrfs: improve device scanning messages + - btrfs: qgroup: fix qgroup meta rsv leak for subvolume operations + - btrfs: sysfs: init devices outside of the chunk_mutex + - btrfs: tracepoints: output proper root owner for trace_find_free_extent() + - btrfs: reschedule if necessary when logging directory items + - btrfs: send, orphanize first all conflicting inodes when processing + references + - btrfs: send, recompute reference path after orphanization of a directory + - btrfs: use kvzalloc() to allocate clone_roots in btrfs_ioctl_send() + - btrfs: tree-checker: fix false alert caused by legacy btrfs root item + - btrfs: reschedule when cloning lots of extents + - btrfs: cleanup cow block on error + - btrfs: skip devices without magic signature when mounting + - btrfs: tree-checker: validate number of chunk stripes and parity + - btrfs: fix use-after-free on readahead extent after failure to create it + - btrfs: fix readahead hang and use-after-free after removing a device + - btrfs: drop the path before adding block group sysfs files + - usb: dwc3: pci: Allow Elkhart Lake to utilize DSM method for PM + functionality + - usb: dwc3: ep0: Fix ZLP for OUT ep0 requests + - usb: dwc3: gadget: Check MPS of the request length + - usb: dwc3: gadget: Reclaim extra TRBs after request completion + - usb: dwc3: core: add phy cleanup for probe error handling + - usb: dwc3: core: don't trigger runtime pm when remove driver + - usb: dwc3: gadget: Resume pending requests after CLEAR_STALL + - usb: dwc3: gadget: END_TRANSFER before CLEAR_STALL command + - usb: cdns3: gadget: improve the set_configuration handling + - usb: cdns3: Fix on-chip memory overflow issue + - usb: cdc-acm: fix cooldown mechanism + - usb: typec: tcpm: reset hard_reset_count for any disconnect + - usb: host: fsl-mph-dr-of: check return of dma_set_mask() + - usbcore: Check both id_table and match() when both available + - USB: apple-mfi-fastcharge: don't probe unhandled devices + - drm/i915: Force VT'd workarounds when running as a guest OS + - vt: keyboard, simplify vt_kdgkbsent + - vt: keyboard, extend func_buf_lock to readers + - HID: wacom: Avoid entering wacom_wac_pen_report for pad / battery + - x86/mce: Allow for copy_mc_fragile symbol checksum to be generated + - tty: serial: 21285: fix lockup on open + - tty: serial: fsl_lpuart: LS1021A has a FIFO size of 16 words, like LS1028A + - Revert "vhost-vdpa: fix page pinning leakage in error path" + - powerpc: Fix random segfault when freeing hugetlb range + - udf: Fix memory leak when mounting + - dmaengine: dma-jz4780: Fix race in jz4780_dma_tx_status + - vdpa_sim: Fix DMA mask + - iio: ltc2983: Fix of_node refcounting + - iio: adc: at91-sama5d2_adc: fix DMA conversion crash + - iio:imu:inv_mpu6050 Fix dma and ts alignment and data leak issues. + - iio:imu:st_lsm6dsx: check st_lsm6dsx_shub_read_output return + - iio:light:si1145: Fix timestamp alignment and prevent data leak. + - iio: adc: gyroadc: fix leak of device node iterator + - iio: ad7292: Fix of_node refcounting + - iio:adc:ti-adc0832 Fix alignment issue with timestamp + - iio:adc:ti-adc12138 Fix alignment issue with timestamp + - iio:imu:st_lsm6dsx Fix alignment and data leak issues + - iio:gyro:itg3200: Fix timestamp alignment and prevent data leak. + - powerpc/drmem: Make lmb_size 64 bit + - rcu-tasks: Fix grace-period/unlock race in RCU Tasks Trace + - rcu-tasks: Fix low-probability task_struct leak + - rcu-tasks: Enclose task-list scan in rcu_read_lock() + - MIPS: DEC: Restore bootmem reservation for firmware working memory area + - MIPS: configs: lb60: Fix defconfig not selecting correct board + - s390/stp: add locking to sysfs functions + - powerpc: Warn about use of smt_snooze_delay + - powerpc/memhotplug: Make lmb size 64bit + - powerpc/powernv/elog: Fix race while processing OPAL error log event. + - powerpc/powermac: Fix low_sleep_handler with KUAP and KUEP + - powerpc/mce: Avoid nmi_enter/exit in real mode on pseries hash + - powerpc/32: Fix vmap stack - Do not activate MMU before reading task struct + - powerpc/32: Fix vmap stack - Properly set r1 before activating MMU + - block: advance iov_iter on bio_add_hw_page failure + - io_uring: use type appropriate io_kiocb handler for double poll + - gfs2: Make sure we don't miss any delayed withdraws + - gfs2: Only access gl_delete for iopen glocks + - NFSv4: Wait for stateid updates after CLOSE/OPEN_DOWNGRADE + - NFSv4.2: support EXCHGID4_FLAG_SUPP_FENCE_OPS 4.2 EXCHANGE_ID flag + - NFSD: Add missing NFSv2 .pc_func methods + - ubifs: dent: Fix some potential memory leaks while iterating entries + - ubifs: xattr: Fix some potential memory leaks while iterating entries + - ubifs: journal: Make sure to not dirty twice for auth nodes + - ubifs: Fix a memleak after dumping authentication mount options + - ubifs: Don't parse authentication mount options in remount process + - ubifs: mount_ubifs: Release authentication resource in error handling path + - perf vendor events amd: Add L2 Prefetch events for zen1 + - perf python scripting: Fix printable strings in python3 scripts + - ARC: perf: redo the pct irq missing in device-tree handling + - ubi: check kthread_should_stop() after the setting of task state + - ia64: fix build error with !COREDUMP + - rtc: rx8010: don't modify the global rtc ops + - i2c: imx: Fix external abort on interrupt in exit paths + - drm/amdgpu: don't map BO in reserved region + - drm/amd/display: Fix incorrect backlight register offset for DCN + - drm/amd/display: Increase timeout for DP Disable + - drm/amdgpu/vcn1.0: fix no previous prototype for functions + - drm/amdgpu: vcn and jpeg ring synchronization + - drm/amdgpu: correct the gpu reset handling for job != NULL case + - drm/amdkfd: Use same SQ prefetch setting as amdgpu + - drm/amd/display: Avoid MST manager resource leak. + - drm/amdgpu: increase the reserved VM size to 2MB + - drm/amd/display: Don't invoke kgdb_breakpoint() unconditionally + - drm/amd/display: Fix kernel panic by dal_gpio_open() error + - ceph: promote to unsigned long long before shifting + - libceph: clear con->out_msg on Policy::stateful_server faults + - 9P: Cast to loff_t before multiplying + - net/sunrpc: Fix return value for sysctl sunrpc.transports + - PCI: qcom: Make sure PCIe is reset before init for rev 2.1.0 + - ring-buffer: Return 0 on success from ring_buffer_resize() + - intel_idle: Ignore _CST if control cannot be taken from the platform + - intel_idle: Fix max_cstate for processor models without C-state tables + - cpufreq: Introduce CPUFREQ_NEED_UPDATE_LIMITS driver flag + - vringh: fix __vringh_iov() when riov and wiov are different + - ext4: fix leaking sysfs kobject after failed mount + - ext4: fix error handling code in add_new_gdb + - ext4: fix invalid inode checksum + - ext4: clear buffer verified flag if read meta block from disk + - ext4: fix bdev write error check failed when mount fs with ro + - ext4: fix bs < ps issue reported with dioread_nolock mount opt + - ext4: do not use extent after put_bh + - drm/ttm: fix eviction valuable range check. + - mmc: sdhci-of-esdhc: make sure delay chain locked for HS400 + - mmc: sdhci-of-esdhc: set timeout to max before tuning + - mmc: sdhci: Use Auto CMD Auto Select only when v4_mode is true + - memory: tegra: Remove GPU from DRM IOMMU group + - memory: brcmstb_dpfe: Fix memory leak + - futex: Adjust absolute futex timeouts with per time namespace offset + - drm/amd/pm: increase mclk switch threshold to 200 us + - tty: make FONTX ioctl use the tty pointer they were actually passed + - arm64: berlin: Select DW_APB_TIMER_OF + - [Config] update annotations for DW_APB_TIMER + - cachefiles: Handle readpage error correctly + - hil/parisc: Disable HIL driver when it gets stuck + - arm: dts: mt7623: add missing pause for switchport + - ARM: aspeed: g5: Do not set sirq polarity + - ARM: dts: s5pv210: fix pinctrl property of "vibrator-en" regulator in Aries + - ARM: config: aspeed: Fix selection of media drivers + - ARM: samsung: fix PM debug build with DEBUG_LL but !MMU + - ARM: s3c24xx: fix missing system reset + - arm64: Change .weak to SYM_FUNC_START_WEAK_PI for arch/arm64/lib/mem*.S + - arm64: dts: marvell: espressobin: Add ethernet switch aliases + - null_blk: synchronization fix for zoned device + - coresight: cti: Initialize dynamic sysfs attributes + - device property: Keep secondary firmware node secondary by type + - device property: Don't clear secondary pointer for shared primary firmware + node + - KVM: arm64: Fix AArch32 handling of DBGD{CCINT,SCRext} and DBGVCR + - staging: fieldbus: anybuss: jump to correct label in an error path + - staging: comedi: cb_pcidas: Allow 2-channel commands for AO subdevice + - staging: octeon: repair "fixed-link" support + - staging: octeon: Drop on uncorrectable alignment or FCS error + - cpufreq: Introduce cpufreq_driver_test_flags() + - cpufreq: schedutil: Always call driver if CPUFREQ_NEED_UPDATE_LIMITS is set + - time: Prevent undefined behaviour in timespec64_to_ns() + - block: add capacity field to zone descriptors + - null_blk: introduce zone capacity for zoned device + - null_blk: Fix zone reset all tracing + - null_blk: Fix locking in zoned mode + - usb: dwc2: Avoid leaving the error_debugfs label unused + * [HP 635] Radeon 6310 brightness control does not work (LP: #1894667) // + Groovy update: upstream stable patchset 2020-12-14 (LP: #1908150) + - ACPI: video: use ACPI backlight for HP 635 Notebook + * CVE-2020-28974 + - vt: Disable KD_FONT_OP_COPY + * stack trace in kernel (LP: #1903596) + - net: napi: remove useless stack trace + * Refresh ACPI wakeup power to make Thunderbolt hotplug detection work + (LP: #1906229) + - PM: ACPI: PCI: Drop acpi_pm_set_bridge_wakeup() + - PM: ACPI: Refresh wakeup device power configuration every time + * CVE-2020-27777 + - powerpc/rtas: Restrict RTAS requests from userspace + - [Config]: Set CONFIG_PPC_RTAS_FILTER + * NULL pointer dereference when configuring multi-function with devfn != 0 + before devfn == 0 (LP: #1903682) + - s390/pci: fix hot-plug of PCI function missing bus + * [UBUNTU 20.10] Applications runing in QEMU/KVM get translation faults + (LP: #1906255) + - s390: fix fpu restore in entry.S + * Add dpcd backlight control for 0x4c83 0x4f41 (LP: #1905663) + - SAUCE: drm/dp: Add dpcd backlight control for 0x4c83 0x4f41 + + -- Ian May Tue, 09 Feb 2021 17:39:18 -0600 + +linux-azure (5.8.0-1022.24) groovy; urgency=medium + + * groovy/linux-azure: 5.8.0-1022.24 -proposed tracker (LP: #1914675) + + [ Ubuntu: 5.8.0-43.49 ] + + * groovy/linux: 5.8.0-43.49 -proposed tracker (LP: #1914689) + * Packaging resync (LP: #1786013) + - update dkms package versions + * Exploitable vulnerabilities in AF_VSOCK implementation (LP: #1914668) + - vsock: fix the race conditions in multi-transport support + + -- Khalid Elmously Thu, 04 Feb 2021 23:10:23 -0500 + +linux-azure (5.8.0-1020.22) groovy; urgency=medium + + * groovy/linux-azure: 5.8.0-1020.22 -proposed tracker (LP: #1912236) + + * [linux-azure] Batch hibernate and resume IO requests (LP: #1904458) + - PM: hibernate: Batch hibernate and resume IO requests + + [ Ubuntu: 5.8.0-41.46 ] + + * groovy/linux: 5.8.0-41.46 -proposed tracker (LP: #1912219) + * Groovy update: upstream stable patchset 2020-12-17 (LP: #1908555) // nvme + drive fails after some time (LP: #1910866) + - Revert "nvme-pci: remove last_sq_tail" + * initramfs unpacking failed (LP: #1835660) + - SAUCE: lib/decompress_unlz4.c: correctly handle zero-padding around initrds. + * overlay: permission regression in 5.4.0-51.56 due to patches related to + CVE-2020-16120 (LP: #1900141) + - ovl: do not fail because of O_NOATIME + + -- Kleber Sacilotto de Souza Tue, 19 Jan 2021 10:09:49 +0100 + +linux-azure (5.8.0-1019.21) groovy; urgency=medium + + [ Ubuntu: 5.8.0-40.45 ] + + * Packaging resync (LP: #1786013) + - update dkms package versions + + [ Ubuntu: 5.8.0-38.43 ] + + * groovy/linux: 5.8.0-38.43 -proposed tracker (LP: #1911143) + * CVE-2020-28374 + - SAUCE: target: fix XCOPY NAA identifier lookup + * Packaging resync (LP: #1786013) + - update dkms package versions + + -- Kleber Sacilotto de Souza Fri, 15 Jan 2021 14:58:40 +0100 + +linux-azure (5.8.0-1017.19) groovy; urgency=medium + + [ Ubuntu: 5.8.0-36.40 ] + + * debian/scripts/file-downloader does not handle positive failures correctly + (LP: #1878897) + - [Packaging] file-downloader not handling positive failures correctly + + [ Ubuntu: 5.8.0-35.39 ] + + * Packaging resync (LP: #1786013) + - update dkms package versions + * CVE-2021-1052 // CVE-2021-1053 + - [Packaging] NVIDIA -- Add the NVIDIA 460 driver + + -- Thadeu Lima de Souza Cascardo Wed, 06 Jan 2021 12:08:19 -0300 + +linux-azure (5.8.0-1016.17) groovy; urgency=medium + + * groovy/linux-azure: 5.8.0-1016.17 -proposed tracker (LP: #1907566) + + * Groovy update: v5.8.18 upstream stable release (LP: #1904941) + - [Config] linux-azure: update config for ARCH_HAS_COPY_MC + + [ Ubuntu: 5.8.0-34.37 ] + + * groovy/linux: 5.8.0-34.37 -proposed tracker (LP: #1907576) + * Packaging resync (LP: #1786013) + - update dkms package versions + * [Ubuntu 21.04 FEAT] mpt3sas: Request to include the patch set which supports + topology where zoning is enabled in expander (LP: #1899802) + - scsi: mpt3sas: Define hba_port structure + - scsi: mpt3sas: Allocate memory for hba_port objects + - scsi: mpt3sas: Rearrange _scsih_mark_responding_sas_device() + - scsi: mpt3sas: Update hba_port's sas_address & phy_mask + - scsi: mpt3sas: Get device objects using sas_address & portID + - scsi: mpt3sas: Rename transport_del_phy_from_an_existing_port() + - scsi: mpt3sas: Get sas_device objects using device's rphy + - scsi: mpt3sas: Update hba_port objects after host reset + - scsi: mpt3sas: Set valid PhysicalPort in SMPPassThrough + - scsi: mpt3sas: Handling HBA vSES device + - scsi: mpt3sas: Add bypass_dirty_port_flag parameter + - scsi: mpt3sas: Handle vSES vphy object during HBA reset + - scsi: mpt3sas: Add module parameter multipath_on_hba + - scsi: mpt3sas: Bump driver version to 35.101.00.00 + * CVE-2020-12912 + - hwmon: (amd_energy) modify the visibility of the counters + * Intel Tiger Lake IDs supplement (LP: #1904521) + - mtd: spi-nor: intel-spi: Add support for Intel Tiger Lake-H SPI serial flash + - pinctrl: tigerlake: Add support for Tiger Lake-H + * [i915] Noise-like lines of graphics corruption when moving windows in Xorg + sessions (LP: #1896091) + - Revert "UBUNTU: SAUCE: drm/i915: Synchronize active and retire callbacks" + * Fix no headset sound after S3 on Intel HDA (LP: #1904595) + - ALSA: hda: Refactor codec PM to use direct-complete optimization + - ALSA: hda: Separate runtime and system suspend + - ALSA: hda: Reinstate runtime_allow() for all hda controllers + * Ask 8821C Bluetooth controller to drop old firmware (LP: #1904221) + - Bluetooth: btrtl: Ask 8821C to drop old firmware + - Bluetooth: btrtl: fix incorrect skb allocation failure check + * Use ACPI S5 for reboot (LP: #1904225) + - PM: ACPI: reboot: Use S5 for reboot + * Groovy update: v5.8.18 upstream stable release (LP: #1904941) + - netfilter: nftables_offload: KASAN slab-out-of-bounds Read in + nft_flow_rule_create + - io_uring: don't run task work on an exiting task + - io_uring: allow timeout/poll/files killing to take task into account + - io_uring: move dropping of files into separate helper + - io_uring: stash ctx task reference for SQPOLL + - io_uring: unconditionally grab req->task + - io_uring: return cancelation status from poll/timeout/files handlers + - io_uring: enable task/files specific overflow flushing + - io_uring: don't rely on weak ->files references + - io_uring: reference ->nsproxy for file table commands + - io_wq: Make io_wqe::lock a raw_spinlock_t + - io-wq: fix use-after-free in io_wq_worker_running + - io_uring: no need to call xa_destroy() on empty xarray + - io_uring: Fix use of XArray in __io_uring_files_cancel + - io_uring: Fix XArray usage in io_uring_add_task_file + - io_uring: Convert advanced XArray uses to the normal API + - scripts/setlocalversion: make git describe output more reliable + - efi/arm64: libstub: Deal gracefully with EFI_RNG_PROTOCOL failure + - fs/kernel_read_file: Remove FIRMWARE_EFI_EMBEDDED enum + - arm64: Run ARCH_WORKAROUND_1 enabling code on all CPUs + - arm64: Run ARCH_WORKAROUND_2 enabling code on all CPUs + - arm64: link with -z norelro regardless of CONFIG_RELOCATABLE + - x86/PCI: Fix intel_mid_pci.c build error when ACPI is not enabled + - x86, powerpc: Rename memcpy_mcsafe() to copy_mc_to_{user, kernel}() + - [Config] update config for ARCH_HAS_COPY_MC + - x86/copy_mc: Introduce copy_mc_enhanced_fast_string() + - bnxt_en: Check abort error state in bnxt_open_nic(). + - bnxt_en: Fix regression in workqueue cleanup logic in bnxt_remove_one(). + - bnxt_en: Invoke cancel_delayed_work_sync() for PFs also. + - bnxt_en: Re-write PCI BARs after PCI fatal error. + - bnxt_en: Send HWRM_FUNC_RESET fw command unconditionally. + - chelsio/chtls: fix deadlock issue + - chelsio/chtls: fix memory leaks in CPL handlers + - chelsio/chtls: fix tls record info to user + - cxgb4: set up filter action after rewrites + - gtp: fix an use-before-init in gtp_newlink() + - ibmveth: Fix use of ibmveth in a bridge. + - ibmvnic: fix ibmvnic_set_mac + - mlxsw: core: Fix memory leak on module removal + - netem: fix zero division in tabledist + - net: hns3: Clear the CMDQ registers before unmapping BAR region + - net: ipa: command payloads already mapped + - net/sched: act_mpls: Add softdep on mpls_gso.ko + - r8169: fix issue with forced threading in combination with shared interrupts + - ravb: Fix bit fields checking in ravb_hwtstamp_get() + - tcp: Prevent low rmem stalls with SO_RCVLOWAT. + - tipc: fix memory leak caused by tipc_buf_append() + - net: protect tcf_block_unbind with block lock + - erofs: avoid duplicated permission check for "trusted." xattrs + - arch/x86/amd/ibs: Fix re-arming IBS Fetch + - x86/traps: Fix #DE Oops message regression + - x86/xen: disable Firmware First mode for correctable memory errors + - PCI: aardvark: Fix initialization with old Marvell's Arm Trusted Firmware + - ata: ahci: mvebu: Make SATA PHY optional for Armada 3720 + - fuse: fix page dereference after free + - bpf: Fix comment for helper bpf_current_task_under_cgroup() + - evm: Check size of security.evm before using it + - p54: avoid accessing the data mapped to streaming DMA + - cxl: Rework error message for incompatible slots + - RDMA/addr: Fix race with netevent_callback()/rdma_addr_cancel() + - mtd: lpddr: Fix bad logic in print_drs_error + - drm/i915/gem: Serialise debugfs i915_gem_objects with ctx->mutex + - serial: qcom_geni_serial: To correct QUP Version detection logic + - serial: pl011: Fix lockdep splat when handling magic-sysrq interrupt + - PM: runtime: Fix timer_expires data type on 32-bit arches + - ata: sata_rcar: Fix DMA boundary mask + - xen/gntdev.c: Mark pages as dirty + - openrisc: Fix issue with get_user for 64-bit values + - misc: rtsx: do not setting OC_POWER_DOWN reg in rtsx_pci_init_ocp() + - phy: marvell: comphy: Convert internal SMCC firmware return codes to errno + - Linux 5.8.18 + * linux-riscv 5.8.0-9-generic (all 5.8 kernels) fail to boot in qemu + (LP: #1904912) + - riscv: Fixup bootup failure with HARDENED_USERCOPY + * Bionic: btrfs: kernel BUG at /build/linux- + eTBZpZ/linux-4.15.0/fs/btrfs/ctree.c:3233! (LP: #1902254) + - btrfs: tree-checker: fix incorrect printk format + + -- Kleber Sacilotto de Souza Tue, 15 Dec 2020 18:29:30 +0100 + +linux-azure (5.8.0-1015.16) groovy; urgency=medium + + * groovy/linux-azure: 5.8.0-1015.16 -proposed tracker (LP: #1907398) + + [ Ubuntu: 5.8.0-33.36 ] + + * groovy/linux: 5.8.0-33.36 -proposed tracker (LP: #1907408) + * raid10: discard leads to corrupted file system (LP: #1907262) + - Revert "dm raid: remove unnecessary discard limits for raid10" + - Revert "dm raid: fix discard limits for raid1 and raid10" + - Revert "md/raid10: improve discard request for far layout" + - Revert "md/raid10: improve raid10 discard request" + - Revert "md/raid10: pull codes that wait for blocked dev into one function" + - Revert "md/raid10: extend r10bio devs to raid disks" + - Revert "md: add md_submit_discard_bio() for submitting discard bio" + + [ Ubuntu: 5.8.0-31.33 ] + + * groovy/linux: 5.8.0-31.33 -proposed tracker (LP: #1905299) + * Groovy 5.8 kernel hangs on boot on CPUs with eLLC (LP: #1903397) + - drm/i915: Mark ininitial fb obj as WT on eLLC machines to avoid rcu lockup + during fbdev init + * CVE-2020-4788 + - selftests/powerpc: rfi_flush: disable entry flush if present + - powerpc/64s: flush L1D on kernel entry + - powerpc/64s: flush L1D after user accesses + - selftests/powerpc: entry flush test + + -- Marcelo Henrique Cerri Wed, 09 Dec 2020 11:09:15 -0300 + +linux-azure (5.8.0-1013.14) groovy; urgency=medium + + * groovy/linux-azure: 5.8.0-1013.14 -proposed tracker (LP: #1903184) + + * linux-azure: build and include the tcm_loop module to the main kernel + package (LP: #1791794) + - [Config] linux-azure: CONFIG_LOOPBACK_TARGET=m (tcm_loop) + + [ Ubuntu: 5.8.0-30.32 ] + + * groovy/linux: 5.8.0-30.32 -proposed tracker (LP: #1903194) + * Update kernel packaging to support forward porting kernels (LP: #1902957) + - [Debian] Update for leader included in BACKPORT_SUFFIX + * Avoid double newline when running insertchanges (LP: #1903293) + - [Packaging] insertchanges: avoid double newline + * EFI: Fails when BootCurrent entry does not exist (LP: #1899993) + - efivarfs: Replace invalid slashes with exclamation marks in dentries. + * raid10: Block discard is very slow, causing severe delays for mkfs and + fstrim operations (LP: #1896578) + - md: add md_submit_discard_bio() for submitting discard bio + - md/raid10: extend r10bio devs to raid disks + - md/raid10: pull codes that wait for blocked dev into one function + - md/raid10: improve raid10 discard request + - md/raid10: improve discard request for far layout + - dm raid: fix discard limits for raid1 and raid10 + - dm raid: remove unnecessary discard limits for raid10 + * Bionic: btrfs: kernel BUG at /build/linux- + eTBZpZ/linux-4.15.0/fs/btrfs/ctree.c:3233! (LP: #1902254) + - btrfs: extent_io: do extra check for extent buffer read write functions + - btrfs: extent-tree: kill BUG_ON() in __btrfs_free_extent() + - btrfs: extent-tree: kill the BUG_ON() in insert_inline_extent_backref() + - btrfs: ctree: check key order before merging tree blocks + * Tiger Lake PMC core driver fixes (LP: #1899883) + - platform/x86: intel_pmc_core: update TGL's LPM0 reg bit map name + - platform/x86: intel_pmc_core: fix bound check in pmc_core_mphy_pg_show() + - platform/x86: pmc_core: Use descriptive names for LPM registers + - platform/x86: intel_pmc_core: Fix TigerLake power gating status map + - platform/x86: intel_pmc_core: Fix the slp_s0 counter displayed value + * drm/i915/dp_mst - System would hang during the boot up. (LP: #1902469) + - Revert "UBUNTU: SAUCE: drm/i915/display: Fix null deref in + intel_psr_atomic_check()" + - drm/i915: Fix encoder lookup during PSR atomic check + * Undetected Data corruption in MPI workloads that use VSX for reductions on + POWER9 DD2.1 systems (LP: #1902694) + - powerpc: Fix undetected data corruption with P9N DD2.1 VSX CI load emulation + - selftests/powerpc: Make alignment handler test P9N DD2.1 vector CI load + workaround + * [20.04 FEAT] Support/enhancement of NVMe IPL (LP: #1902179) + - s390/ipl: support NVMe IPL kernel parameters + * uvcvideo: add mapping for HEVC payloads (LP: #1895803) + - media: uvcvideo: Add mapping for HEVC payloads + * risc-v 5.8 kernel oops on ftrace tests (LP: #1894613) + - stop_machine, rcu: Mark functions as notrace + * Groovy update: v5.8.17 upstream stable release (LP: #1902137) + - xgb4: handle 4-tuple PEDIT to NAT mode translation + - ibmveth: Switch order of ibmveth_helper calls. + - ibmveth: Identify ingress large send packets. + - ipv4: Restore flowi4_oif update before call to xfrm_lookup_route + - mlx4: handle non-napi callers to napi_poll + - net: dsa: microchip: fix race condition + - net: fec: Fix phy_device lookup for phy_reset_after_clk_enable() + - net: fec: Fix PHY init after phy_reset_after_clk_enable() + - net: fix pos incrementment in ipv6_route_seq_next + - net: ipa: skip suspend/resume activities if not set up + - net: mptcp: make DACK4/DACK8 usage consistent among all subflows + - net: sched: Fix suspicious RCU usage while accessing tcf_tunnel_info + - net/smc: fix use-after-free of delayed events + - net/smc: fix valid DMBE buffer sizes + - net/tls: sendfile fails with ktls offload + - net: usb: qmi_wwan: add Cellient MPL200 card + - tipc: fix the skb_unshare() in tipc_buf_append() + - socket: fix option SO_TIMESTAMPING_NEW + - socket: don't clear SOCK_TSTAMP_NEW when SO_TIMESTAMPNS is disabled + - can: m_can_platform: don't call m_can_class_suspend in runtime suspend + - can: j1935: j1939_tp_tx_dat_new(): fix missing initialization of skbcnt + - net: j1939: j1939_session_fresh_new(): fix missing initialization of skbcnt + - net/ipv4: always honour route mtu during forwarding + - net_sched: remove a redundant goto chain check + - r8169: fix data corruption issue on RTL8402 + - binder: fix UAF when releasing todo list + - ALSA: bebob: potential info leak in hwdep_read() + - ALSA: hda/hdmi: fix incorrect locking in hdmi_pcm_close + - tipc: re-configure queue limit for broadcast link + - tipc: fix incorrect setting window for bcast link + - chelsio/chtls: fix socket lock + - chelsio/chtls: correct netdevice for vlan interface + - chelsio/chtls: fix panic when server is on ipv6 + - chelsio/chtls: Fix panic when listen on multiadapter + - chelsio/chtls: correct function return and return type + - chelsio/chtls: fix writing freed memory + - ibmvnic: save changed mac address to adapter->mac_addr + - icmp: randomize the global rate limiter + - mptcp: initialize mptcp_options_received's ahmac + - net: ftgmac100: Fix Aspeed ast2600 TX hang issue + - net: hdlc: In hdlc_rcv, check to make sure dev is an HDLC device + - net: hdlc_raw_eth: Clear the IFF_TX_SKB_SHARING flag after calling + ether_setup + - net: Properly typecast int values to set sk_max_pacing_rate + - net/sched: act_ct: Fix adding udp port mangle operation + - net/sched: act_tunnel_key: fix OOB write in case of IPv6 ERSPAN tunnels + - nexthop: Fix performance regression in nexthop deletion + - nfc: Ensure presence of NFC_ATTR_FIRMWARE_NAME attribute in + nfc_genl_fw_download() + - r8169: fix operation under forced interrupt threading + - selftests: forwarding: Add missing 'rp_filter' configuration + - tcp: fix to update snd_wl1 in bulk receiver fast path + - net: ethernet: mtk-star-emac: select REGMAP_MMIO + - net/sched: act_gate: Unlock ->tcfa_lock in tc_setup_flow_action() + - ALSA: hda - Don't register a cb func if it is registered already + - ALSA: hda - Fix the return value if cb func is already registered + - ALSA: usb-audio: Line6 Pod Go interface requires static clock rate quirk + - ALSA: hda/realtek - set mic to auto detect on a HP AIO machine + - ALSA: hda/realtek - Add mute Led support for HP Elitebook 845 G7 + - ALSA: hda/realtek: Enable audio jacks of ASUS D700SA with ALC887 + - cifs: remove bogus debug code + - cifs: Return the error from crypt_message when enc/dec key not found. + - SMB3: Resolve data corruption of TCP server info fields + - SMB3.1.1: Fix ids returned in POSIX query dir + - smb3: do not try to cache root directory if dir leases not supported + - smb3: fix stat when special device file and mounted with modefromsid + - arm64: Make use of ARCH_WORKAROUND_1 even when KVM is not enabled + - KVM: nVMX: Morph notification vector IRQ on nested VM-Enter to pending PI + - KVM: nVMX: Reset the segment cache when stuffing guest segs + - KVM: nVMX: Reload vmcs01 if getting vmcs12's pages fails + - KVM: x86/mmu: Commit zap of remaining invalid pages when recovering lpages + - KVM: x86: Intercept LA57 to inject #GP fault when it's reserved + - KVM: SVM: Initialize prev_ga_tag before use + - ima: Don't ignore errors from crypto_shash_update() + - crypto: algif_aead - Do not set MAY_BACKLOG on the async path + - crypto: caam/qi - add fallback for XTS with more than 8B IV + - crypto: caam/qi - add support for more XTS key lengths + - RAS/CEC: Fix cec_init() prototype + - sched/fair: Fix wrong negative conversion in find_energy_efficient_cpu() + - microblaze: fix kbuild redundant file warning + - EDAC/i5100: Fix error handling order in i5100_init_one() + - EDAC/aspeed: Fix handling of platform_get_irq() error + - EDAC/ti: Fix handling of platform_get_irq() error + - perf/x86/intel/ds: Fix x86_pmu_stop warning for large PEBS + - x86/fpu: Allow multiple bits in clearcpuid= parameter + - arm64: kprobe: add checks for ARMv8.3-PAuth combined instructions + - drivers/perf: xgene_pmu: Fix uninitialized resource struct + - drivers/perf: thunderx2_pmu: Fix memory resource error handling + - sched/fair: Fix wrong cpu selecting from isolated domain + - sched/fair: Use dst group while checking imbalance for NUMA balancer + - arm64: perf: Add missing ISB in armv8pmu_enable_counter() + - perf/x86/intel/uncore: Update Ice Lake uncore units + - perf/x86/intel/uncore: Reduce the number of CBOX counters + - perf/x86/intel/uncore: Fix the scale of the IMC free-running events + - x86/nmi: Fix nmi_handle() duration miscalculation + - x86/events/amd/iommu: Fix sizeof mismatch + - pinctrl: qcom: Set IRQCHIP_SET_TYPE_MASKED and IRQCHIP_MASK_ON_SUSPEND flags + - pinctrl: qcom: Use return value from irq_set_wake() call + - perf/x86: Fix n_pair for cancelled txn + - perf/core: Fix race in the perf_mmap_close() function + - crypto: algif_skcipher - EBUSY on aio should be an error + - crypto: mediatek - Fix wrong return value in mtk_desc_ring_alloc() + - crypto: ixp4xx - Fix the size used in a 'dma_free_coherent()' call + - crypto: picoxcell - Fix potential race condition bug + - media: vivid: Fix global-out-of-bounds read in precalculate_color() + - media: tuner-simple: fix regression in simple_set_radio_freq + - crypto: ccree - fix runtime PM imbalance on error + - media: Revert "media: exynos4-is: Add missed check for + pinctrl_lookup_state()" + - media: hantro: h264: Get the correct fallback reference buffer + - media: hantro: postproc: Fix motion vector space allocation + - media: ov5640: Correct Bit Div register in clock tree diagram + - media: m5mols: Check function pointer in m5mols_sensor_power + - fscrypt: restrict IV_INO_LBLK_32 to ino_bits <= 32 + - media: uvcvideo: Set media controller entity functions + - media: uvcvideo: Silence shift-out-of-bounds warning + - media: staging/intel-ipu3: css: Correctly reset some memory + - media: omap3isp: Fix memleak in isp_probe + - media: i2c: ov5640: Remain in power down for DVP mode unless streaming + - media: i2c: ov5640: Separate out mipi configuration from s_power + - media: i2c: ov5640: Enable data pins on poweron for DVP mode + - media: rcar_drif: Fix fwnode reference leak when parsing DT + - media: rcar_drif: Allocate v4l2_async_subdev dynamically + - media: rcar-csi2: Allocate v4l2_async_subdev dynamically + - spi: fsi: Handle 9 to 15 byte transfers lengths + - spi: fsi: Fix use of the bneq+ sequencer instruction + - spi: fsi: Implement restricted size for certain controllers + - spi: dw-pci: free previously allocated IRQs if desc->setup() fails + - crypto: omap-sham - fix digcnt register handling with export/import + - hwmon: (pmbus/max34440) Fix status register reads for MAX344{51,60,61} + - hwmon: (w83627ehf) Fix a resource leak in probe + - cypto: mediatek - fix leaks in mtk_desc_ring_alloc + - crypto: stm32/crc32 - Avoid lock if hardware is already used + - crypto: sun8i-ce - handle endianness of t_common_ctl + - media: mx2_emmaprp: Fix memleak in emmaprp_probe + - media: tc358743: initialize variable + - media: tc358743: cleanup tc358743_cec_isr + - media: rcar-vin: Fix a reference count leak. + - media: rockchip/rga: Fix a reference count leak. + - media: platform: fcp: Fix a reference count leak. + - media: camss: Fix a reference count leak. + - media: s5p-mfc: Fix a reference count leak + - media: stm32-dcmi: Fix a reference count leak + - media: ti-vpe: Fix a missing check and reference count leak + - regulator: resolve supply after creating regulator + - pinctrl: bcm: fix kconfig dependency warning when !GPIOLIB + - spi: spi-s3c64xx: swap s3c64xx_spi_set_cs() and s3c64xx_enable_datapath() + - spi: spi-s3c64xx: Check return values + - hwmon: (bt1-pvt) Test sensor power supply on probe + - hwmon: (bt1-pvt) Cache current update timeout + - hwmon: (bt1-pvt) Wait for the completion with timeout + - btrfs: add owner and fs_info to alloc_state io_tree + - blk-mq: move cancel of hctx->run_work to the front of blk_exit_queue + - ath10k: provide survey info as accumulated data + - drm/vkms: fix xrgb on compute crc + - Bluetooth: hci_uart: Cancel init work before unregistering + - drm/amd/display: Fix wrong return value in dm_update_plane_state() + - drm/vgem: add missing platform_device_unregister() in vgem_init() + - drm/vkms: add missing platform_device_unregister() in vkms_init() + - drm: panel: Fix bus format for OrtusTech COM43H4M85ULC panel + - ath6kl: prevent potential array overflow in ath6kl_add_new_sta() + - ath9k: Fix potential out of bounds in ath9k_htc_txcompletion_cb() + - ath10k: Fix the size used in a 'dma_free_coherent()' call in an error + handling path + - wcn36xx: Fix reported 802.11n rx_highest rate wcn3660/wcn3680 + - ASoC: qcom: lpass-platform: fix memory leak + - ASoC: qcom: lpass-cpu: fix concurrency issue + - ath11k: Fix possible memleak in ath11k_qmi_init_service + - brcmfmac: check ndev pointer + - mwifiex: Do not use GFP_KERNEL in atomic context + - staging: rtl8192u: Do not use GFP_KERNEL in atomic context + - drm/amd/display: fix potential integer overflow when shifting 32 bit + variable bl_pwm + - selftests/bpf: Fix test_vmlinux test to use bpf_probe_read_user() + - drm/gma500: fix error check + - scsi: qla4xxx: Fix an error handling path in 'qla4xxx_get_host_stats()' + - scsi: qla2xxx: Fix the size used in a 'dma_free_coherent()' call + - scsi: qla2xxx: Fix wrong return value in qlt_chk_unresolv_exchg() + - scsi: qla2xxx: Fix wrong return value in qla_nvme_register_hba() + - scsi: csiostor: Fix wrong return value in csio_hw_prep_fw() + - libbpf: Fix unintentional success return code in bpf_object__load + - wilc1000: Fix memleak in wilc_sdio_probe + - wilc1000: Fix memleak in wilc_bus_probe + - rtw88: don't treat NULL pointer as an array + - backlight: sky81452-backlight: Fix refcount imbalance on error + - staging: emxx_udc: Fix passing of NULL to dma_alloc_coherent() + - VMCI: check return value of get_user_pages_fast() for errors + - mm/error_inject: Fix allow_error_inject function signatures. + - drm: panel: Fix bpc for OrtusTech COM43H4M85ULC panel + - samples/bpf: Fix to xdpsock to avoid recycling frames + - drm/crc-debugfs: Fix memleak in crc_control_write + - Bluetooth: Clear suspend tasks on unregister + - selftests: vm: add fragment CONFIG_GUP_BENCHMARK + - scsi: ufs: Make ufshcd_print_trs() consider UFSHCD_QUIRK_PRDT_BYTE_GRAN + - binder: Remove bogus warning on failed same-process transaction + - tty: serial: earlycon dependency + - pty: do tty_flip_buffer_push without port->lock in pty_write + - pwm: lpss: Fix off by one error in base_unit math in pwm_lpss_prepare() + - pwm: lpss: Add range limit check for the base_unit register value + - drivers/virt/fsl_hypervisor: Fix error handling path + - ath11k: fix a double free and a memory leak + - video: fbdev: vga16fb: fix setting of pixclock because a pass-by-value error + - video: fbdev: sis: fix null ptr dereference + - video: fbdev: radeon: Fix memleak in radeonfb_pci_register + - ASoC: fsl: imx-es8328: add missing put_device() call in imx_es8328_probe() + - scsi: ufs: ufs-mediatek: Fix HOST_PA_TACTIVATE quirk + - HID: roccat: add bounds checking in kone_sysfs_write_settings() + - drm/msm: Avoid div-by-zero in dpu_crtc_atomic_check() + - drm/panfrost: Ensure GPU quirks are always initialised + - iomap: Clear page error before beginning a write + - iomap: Mark read blocks uptodate in write_begin + - selftests/lkdtm: Use "comm" instead of "diff" for dmesg + - Bluetooth: Re-order clearing suspend tasks + - pinctrl: mcp23s08: Fix mcp23x17_regmap initialiser + - pinctrl: mcp23s08: Fix mcp23x17 precious range + - pinctrl: devicetree: Keep deferring even on timeout + - drm/msm/adreno: fix probe without iommu + - net/mlx5: Fix uninitialized variable warning + - net/mlx5: Don't call timecounter cyc2time directly from 1PPS flow + - scsi: mpt3sas: Fix sync irqs + - net: stmmac: Fix incorrect location to set real_num_rx|tx_queues + - net: stmmac: use netif_tx_start|stop_all_queues() function + - xfs: force the log after remapping a synchronous-writes file + - cpufreq: armada-37xx: Add missing MODULE_DEVICE_TABLE + - drm: mxsfb: check framebuffer pitch + - ima: Fix NULL pointer dereference in ima_file_hash + - ASoC: topology: disable size checks for bytes_ext controls if needed + - ASoC: tlv320adcx140: Fix digital gain range + - coresight: etm4x: Fix etm4_count race by moving cpuhp callbacks to init + - coresight: fix offset by one error in counting ports + - coresight: cti: disclaim device only when it's claimed + - coresight: cti: remove pm_runtime_get_sync() from CPU hotplug + - coresight: etm4x: Ensure default perf settings filter user/kernel + - coresight: etm4x: Fix issues within reset interface of sysfs + - coresight: cti: Write regsiters directly in cti_enable_hw() + - coresight: etm4x: Handle unreachable sink in perf mode + - coresight: etm4x: Fix issues on trcseqevr access + - nvmem: core: fix missing of_node_put() in of_nvmem_device_get() + - selftests: mptcp: interpret \n as a new line + - selftests/bpf: Fix endianness issue in sk_assign + - selftests/bpf: Fix endianness issue in test_sockopt_sk + - xhci: don't create endpoint debugfs entry before ring buffer is set. + - net: dsa: rtl8366: Check validity of passed VLANs + - net: dsa: rtl8366: Refactor VLAN/PVID init + - net: dsa: rtl8366: Skip PVID setting if not requested + - net: wilc1000: clean up resource in error path of init mon interface + - ASoC: tas2770: Fix calling reset in probe + - ASoC: tas2770: Add missing bias level power states + - ASoC: tas2770: Fix required DT properties in the code + - ASoC: tas2770: Fix error handling with update_bits + - ASoC: tlv320aic32x4: Fix bdiv clock rate derivation + - net: dsa: rtl8366rb: Support all 4096 VLANs + - ASoC: SOF: control: add size checks for ext_bytes control .put() + - ASoC: tas2770: Fix unbalanced calls to pm_runtime + - spi: omap2-mcspi: Improve performance waiting for CHSTAT + - ath11k: Add checked value for ath11k_ahb_remove + - ath6kl: wmi: prevent a shift wrapping bug in ath6kl_wmi_delete_pstream_cmd() + - drm: rcar-du: Put reference to VSP device + - phy: rockchip-dphy-rx0: Include linux/delay.h + - dmaengine: dmatest: Check list for emptiness before access its last entry + - ASoC: cros_ec_codec: fix kconfig dependency warning for + SND_SOC_CROS_EC_CODEC + - misc: mic: scif: Fix error handling path + - ALSA: seq: oss: Avoid mutex lock for a long-time ioctl + - usb: dwc2: Fix parameter type in function pointer prototype + - usb: dwc3: core: Properly default unspecified speed + - usb: dwc2: Add missing cleanups when usb_add_gadget_udc() fails + - rtw88: Fix probe error handling race with firmware loading + - rtw88: Fix potential probe error handling race with wow firmware loading + - mt76: mt7915: fix possible memory leak in mt7915_mcu_add_beacon + - quota: clear padding in v2r1_mem2diskdqb() + - slimbus: core: check get_addr before removing laddr ida + - slimbus: core: do not enter to clock pause mode in core + - slimbus: qcom-ngd-ctrl: disable ngd in qmi server down callback + - ASoC: fsl_sai: Instantiate snd_soc_dai_driver + - HID: hid-input: fix stylus battery reporting + - tty: hvc: fix link error with CONFIG_SERIAL_CORE_CONSOLE=n + - nvmem: core: fix possibly memleak when use nvmem_cell_info_to_nvmem_cell() + - hv: clocksource: Add notrace attribute to read_hv_sched_clock_*() functions + - nl80211: fix OBSS PD min and max offset validation + - iomap: Use kzalloc to allocate iomap_page + - coresight: etm: perf: Fix warning caused by etm_setup_aux failure + - coresight: cti: Fix remove sysfs link error + - coresight: cti: Fix bug clearing sysfs links on callback + - coresight: etm4x: Fix save and restore of TRCVMIDCCTLR1 register + - ibmvnic: set up 200GBPS speed + - bpf: disallow attaching modify_return tracing functions to other BPF + programs + - selftests: Remove fmod_ret from test_overhead + - qtnfmac: fix resource leaks on unsupported iftype error return path + - pinctrl: aspeed: Use the right pinconf mask + - iommu/qcom: add missing put_device() call in qcom_iommu_of_xlate() + - iio: adc: stm32-adc: fix runtime autosuspend delay when slow polling + - net: enic: Cure the enic api locking trainwreck + - mfd: sm501: Fix leaks in probe() + - ASoC: wm_adsp: Pass full name to snd_ctl_notify + - iwlwifi: mvm: split a print to avoid a WARNING in ROC + - iwlwifi: dbg: remove no filter condition + - iwlwifi: dbg: run init_cfg function once per driver load + - usb: gadget: f_ncm: fix ncm_bitrate for SuperSpeed and above. + - usb: gadget: u_serial: clear suspended flag when disconnecting + - usb: gadget: u_ether: enable qmult on SuperSpeed Plus as well + - bus: mhi: core: Fix the building of MHI module + - ocxl: fix kconfig dependency warning for OCXL + - nl80211: fix non-split wiphy information + - usb: dwc2: Fix INTR OUT transfers in DDMA mode. + - scsi: target: tcmu: Fix warning: 'page' may be used uninitialized + - scsi: be2iscsi: Fix a theoretical leak in beiscsi_create_eqs() + - dmaengine: ioat: Allocate correct size for descriptor chunk + - ipmi_si: Fix wrong return value in try_smi_init() + - tracing: Fix parse_synth_field() error handling + - platform/x86: mlx-platform: Remove PSU EEPROM configuration + - mwifiex: fix double free + - drm/panfrost: increase readl_relaxed_poll_timeout values + - ipvs: clear skb->tstamp in forwarding path + - bpf, sockmap: Remove skb_orphan and let normal skb_kfree do cleanup + - net: korina: fix kfree of rx/tx descriptor array + - netfilter: nf_log: missing vlan offload tag and proto + - mm/swapfile.c: fix potential memory leak in sys_swapon + - mm/memcg: fix device private memcg accounting + - mm, oom_adj: don't loop through tasks in __set_oom_adj when not necessary + - fs: fix NULL dereference due to data race in prepend_path() + - selftests/ftrace: Change synthetic event name for inter-event-combined test + - tracing: Handle synthetic event array field type checking correctly + - i3c: master add i3c_master_attach_boardinfo to preserve boardinfo + - IB/mlx4: Fix starvation in paravirt mux/demux + - IB/mlx4: Adjust delayed work when a dup is observed + - powerpc/pseries: Fix missing of_node_put() in rng_init() + - powerpc/icp-hv: Fix missing of_node_put() in success path + - rcu/tree: Force quiescent state on callback overload + - rcutorture: Properly set rcu_fwds for OOM handling + - RDMA/ucma: Fix locking for ctx->events_reported + - RDMA/ucma: Add missing locking around rdma_leave_multicast() + - mtd: lpddr: fix excessive stack usage with clang + - RDMA/hns: Add a check for current state before modifying QP + - RDMA/umem: Fix signature of stub ib_umem_find_best_pgsz() + - powerpc/pseries: explicitly reschedule during drmem_lmb list traversal + - pseries/drmem: don't cache node id in drmem_lmb struct + - RDMA/mlx5: Fix potential race between destroy and CQE poll + - mtd: mtdoops: Don't write panic data twice + - perf tools: Make GTK2 support opt-in + - tools feature: Add missing -lzstd to the fast path feature detection + - ARM: 9007/1: l2c: fix prefetch bits init in L2X0_AUX_CTRL using DT values + - xfs: fix finobt btree block recovery ordering + - m68knommu: include SDHC support only when hardware has it + - arc: plat-hsdk: fix kconfig dependency warning when !RESET_CONTROLLER + - ida: Free allocated bitmap in error path + - xfs: limit entries returned when counting fsmap records + - xfs: fix deadlock and streamline xfs_getfsmap performance + - nfs: add missing "posix" local_lock constant table definition + - xfs: fix high key handling in the rt allocator's query_range function + - RDMA/rtrs-srv: Incorporate ib_register_client into rtrs server init + - RDMA/core: Delete function indirection for alloc/free kernel CQ + - RDMA: Allow fail of destroy CQ + - RDMA/umem: Fix ib_umem_find_best_pgsz() for mappings that cross a page + boundary + - RDMA/umem: Prevent small pages from being returned by + ib_umem_find_best_pgsz() + - RDMA/qedr: Fix qp structure memory leak + - RDMA/qedr: Fix doorbell setting + - RDMA/qedr: Fix use of uninitialized field + - RDMA/qedr: Fix return code if accept is called on a destroyed qp + - RDMA/qedr: Fix inline size returned for iWARP + - powerpc/pseries/svm: Allocate SWIOTLB buffer anywhere in memory + - powerpc/watchpoint: Fix quadword instruction handling on p10 predecessors + - powerpc/watchpoint: Fix handling of vector instructions + - powerpc/watchpoint: Add hw_len wherever missing + - powerpc/book3s64/hash/4k: Support large linear mapping range with 4K + - powerpc/tau: Use appropriate temperature sample interval + - powerpc/tau: Convert from timer to workqueue + - powerpc/tau: Remove duplicated set_thresholds() call + - powerpc/tau: Check processor type before enabling TAU interrupt + - powerpc/tau: Disable TAU between measurements + - powerpc/kasan: Fix CONFIG_KASAN_VMALLOC for 8xx + - powerpc/64s/radix: Fix mm_cpumask trimming race vs kthread_use_mm + - RDMA/cma: Combine cma_ndev_work with cma_work + - RDMA/cma: Remove dead code for kernel rdmacm multicast + - RDMA/cma: Consolidate the destruction of a cma_multicast in one place + - RDMA/cma: Fix use after free race in roce multicast join + - perf intel-pt: Fix "context_switch event has no tid" error + - RDMA/qedr: Fix resource leak in qedr_create_qp + - RDMA/hns: Set the unsupported wr opcode + - RDMA/mlx5: Use set_mkc_access_pd_addr_fields() in reg_create() + - RDMA/mlx5: Make mkeys always owned by the kernel's PD when not enabled + - RDMA/mlx5: Disable IB_DEVICE_MEM_MGT_EXTENSIONS if IB_WR_REG_MR can't work + - i40iw: Add support to make destroy QP synchronous + - perf stat: Skip duration_time in setup_system_wide + - RDMA/hns: Add check for the validity of sl configuration + - RDMA/hns: Solve the overflow of the calc_pg_sz() + - RDMA/hns: Fix the wrong value of rnr_retry when querying qp + - RDMA/hns: Fix configuration of ack_req_freq in QPC + - RDMA/hns: Fix missing sq_sig_type when querying QP + - mtd: hyperbus: hbmc-am654: Fix direct mapping setup flash access + - mtd: rawnand: stm32_fmc2: fix a buffer overflow + - mtd: rawnand: vf610: disable clk on error handling path in probe + - mtd: spinand: gigadevice: Only one dummy byte in QUADIO + - mtd: spinand: gigadevice: Add QE Bit + - mtd: rawnand: ams-delta: Fix non-OF build warning + - kdb: Fix pager search for multi-line strings + - overflow: Include header file with SIZE_MAX declaration + - RDMA/ipoib: Set rtnl_link_ops for ipoib interfaces + - powerpc/64: fix irq replay missing preempt + - powerpc/64: fix irq replay pt_regs->softe value + - powerpc/perf: Exclude pmc5/6 from the irrelevant PMU group constraints + - powerpc/perf/hv-gpci: Fix starting index value + - perf stat: Fix out of bounds CPU map access when handling armv8_pmu events + - i3c: master: Fix error return in cdns_i3c_master_probe() + - powerpc/papr_scm: Add PAPR command family to pass-through command-set + - cpufreq: powernv: Fix frame-size-overflow in powernv_cpufreq_reboot_notifier + - IB/rdmavt: Fix sizeof mismatch + - RDMA/rxe: Fix skb lifetime in rxe_rcv_mcast_pkt() + - f2fs: reject CASEFOLD inode flag without casefold feature + - um: vector: Use GFP_ATOMIC under spin lock + - um: time-travel: Fix IRQ handling in time_travel_handle_message() + - maiblox: mediatek: Fix handling of platform_get_irq() error + - perf trace: Fix off by ones in memset() after realloc() in arches using + libaudit + - selftests/powerpc: Fix eeh-basic.sh exit codes + - f2fs: wait for sysfs kobject removal before freeing f2fs_sb_info + - afs: Fix rapid cell addition/removal by not using RCU on cells tree + - afs: Fix cell refcounting by splitting the usage counter + - afs: Fix cell purging with aliases + - afs: Fix cell removal + - RDMA/rxe: Handle skb_clone() failure in rxe_recv.c + - mm/page_owner: change split_page_owner to take a count + - lib/crc32.c: fix trivial typo in preprocessor condition + - ramfs: fix nommu mmap with gaps in the page cache + - rapidio: fix error handling path + - rapidio: fix the missed put_device() for rio_mport_add_riodev + - mailbox: avoid timer start from callback + - clk: meson: axg-audio: separate axg and g12a regmap tables + - rtc: ds1307: Clear OSF flag on DS1388 when setting time + - i2c: rcar: Auto select RESET_CONTROLLER + - clk: meson: g12a: mark fclk_div2 as critical + - PCI: designware-ep: Fix the Header Type check + - PCI: aardvark: Fix compilation on s390 + - PCI: aardvark: Check for errors from pci_bridge_emul_init() call + - PCI: iproc: Set affinity mask on MSI interrupts + - rpmsg: smd: Fix a kobj leak in in qcom_smd_parse_edge() + - rpmsg: Avoid double-free in mtk_rpmsg_register_device + - PCI/IOV: Mark VFs as not implementing PCI_COMMAND_MEMORY + - vfio: add a singleton check for vfio_group_pin_pages + - s390/pci: Mark all VFs as not implementing PCI_COMMAND_MEMORY + - vfio/pci: Decouple PCI_COMMAND_MEMORY bit checks from is_virtfn + - vfio: fix a missed vfio group put in vfio_pin_pages + - vfio/type1: fix dirty bitmap calculation in vfio_dma_rw + - clk: qcom: gcc-sdm660: Fix wrong parent_map + - clk: keystone: sci-clk: fix parsing assigned-clock data during probe + - pwm: rockchip: Keep enabled PWMs running while probing + - pwm: img: Fix null pointer access in probe + - remoteproc/mediatek: fix null pointer dereference on null scp pointer + - PCI: hv: Fix hibernation in case interrupts are not re-created + - clk: rockchip: Initialize hw to error to avoid undefined behavior + - clk: mediatek: add UART0 clock support + - module: statically initialize init section freeing data + - clk: at91: clk-main: update key before writing AT91_CKGR_MOR + - clk: bcm2835: add missing release if devm_clk_hw_register fails + - kbuild: deb-pkg: do not build linux-headers package if CONFIG_MODULES=n + - watchdog: Fix memleak in watchdog_cdev_register + - watchdog: Use put_device on error + - watchdog: sp5100: Fix definition of EFCH_PM_DECODEEN3 + - svcrdma: fix bounce buffers for unaligned offsets and multiple pages + - ext4: fix dead loop in ext4_mb_new_blocks + - ext4: discard preallocations before releasing group lock + - ext4: disallow modifying DAX inode flag if inline_data has been set + - ext4: limit entries returned when counting fsmap records + - vfio/pci: Clear token on bypass registration failure + - vfio iommu type1: Fix memory leak in vfio_iommu_type1_pin_pages + - clk: imx8mq: Fix usdhc parents order + - SUNRPC: fix copying of multiple pages in gss_read_proxy_verf() + - platform/chrome: cros_ec_lightbar: Reduce ligthbar get version command + - Input: elants_i2c - fix typo for an attribute to show calibration count + - Input: imx6ul_tsc - clean up some errors in imx6ul_tsc_resume() + - Input: stmfts - fix a & vs && typo + - Input: ep93xx_keypad - fix handling of platform_get_irq() error + - Input: omap4-keypad - fix handling of platform_get_irq() error + - Input: twl4030_keypad - fix handling of platform_get_irq() error + - Input: sun4i-ps2 - fix handling of platform_get_irq() error + - KVM: x86: emulating RDPID failure shall return #UD rather than #GP + - scsi: bfa: Fix error return in bfad_pci_init() + - arm64: mm: use single quantity to represent the PA to VA translation + - netfilter: conntrack: connection timeout after re-register + - netfilter: ebtables: Fixes dropping of small packets in bridge nat + - netsec: ignore 'phy-mode' device property on ACPI systems + - netfilter: nf_fwd_netdev: clear timestamp in forwarding path + - soc: xilinx: Fix error code in zynqmp_pm_probe() + - arm64: dts: meson: vim3: correct led polarity + - ARM: dts: imx6sl: fix rng node + - ARM: at91: pm: of_node_put() after its usage + - ARM: s3c24xx: fix mmc gpio lookup tables + - ARM: dts: sun8i: r40: bananapi-m2-ultra: Fix dcdc1 regulator + - arm64: dts: allwinner: h5: remove Mali GPU PMU module + - memory: omap-gpmc: Fix a couple off by ones + - memory: omap-gpmc: Fix build error without CONFIG_OF + - arm64: dts: qcom: sc7180: Fix the LLCC base register size + - memory: fsl-corenet-cf: Fix handling of platform_get_irq() error + - firmware: arm_scmi: Fix NULL pointer dereference in mailbox_chan_free + - arm64: dts: imx8mq: Add missing interrupts to GPC + - arm64: dts: qcom: sc7180: Drop flags on mdss irqs + - soc: qcom: pdr: Fixup array type of get_domain_list_resp message + - arm64: dts: qcom: msm8916: Remove one more thermal trip point unit name + - arm64: dts: qcom: pm8916: Remove invalid reg size from wcd_codec + - arm64: dts: qcom: msm8916: Fix MDP/DSI interrupts + - soc: qcom: apr: Fixup the error displayed on lookup failure + - dt-bindings: crypto: Specify that allwinner, sun8i-a33-crypto needs reset + - arm64: dts: renesas: r8a77990: Fix MSIOF1 DMA channels + - arm64: dts: renesas: r8a774c0: Fix MSIOF1 DMA channels + - arm64: dts: mt8173: elm: Fix nor_flash node property + - arm64: dts: actions: limit address range for pinctrl node + - ARM: dts: owl-s500: Fix incorrect PPI interrupt specifiers + - soc: fsl: qbman: Fix return value on success + - ARM: OMAP2+: Restore MPU power domain if cpu_cluster_pm_enter() fails + - ARM: dts: stm32: Fix sdmmc2 pins on AV96 + - ARM: dts: stm32: lxa-mc1: Fix kernel warning about PHY delays + - ARM: dts: stm32: Move ethernet PHY into DH SoM DT + - ARM: dts: stm32: Swap PHY reset GPIO and TSC2004 IRQ on DHCOM SOM + - ARM: dts: stm32: Fix DH PDK2 display PWM channel + - ARM: dts: iwg20d-q7-common: Fix touch controller probe failure + - soc: mediatek: cmdq: add clear option in cmdq_pkt_wfe api + - drm/mediatek: reduce clear event + - arm64: dts: zynqmp: Remove additional compatible string for i2c IPs + - ARM: dts: meson8: remove two invalid interrupt lines from the GPU node + - lightnvm: fix out-of-bounds write to array devices->info[] + - powerpc/powernv/dump: Fix race while processing OPAL dump + - powerpc/pseries: Avoid using addr_to_pfn in real mode + - nvmet: fix uninitialized work for zero kato + - KVM: ioapic: break infinite recursion on lazy EOI + - NTB: hw: amd: fix an issue about leak system resources + - ntb: intel: Fix memleak in intel_ntb_pci_probe + - sched/features: Fix !CONFIG_JUMP_LABEL case + - perf: correct SNOOPX field offset + - i2c: core: Restore acpi_walk_dep_device_list() getting called after + registering the ACPI i2c devs + - md/bitmap: fix memory leak of temporary bitmap + - block: ratelimit handle_bad_sector() message + - x86/dumpstack: Fix misleading instruction pointer error message + - crypto: ccp - fix error handling + - x86/asm: Replace __force_order with a memory clobber + - x86/mce: Add Skylake quirk for patrol scrub reported errors + - media: firewire: fix memory leak + - media: ati_remote: sanity check for both endpoints + - media: st-delta: Fix reference count leak in delta_run_work + - media: sti: Fix reference count leaks + - media: exynos4-is: Fix several reference count leaks due to + pm_runtime_get_sync + - media: exynos4-is: Fix a reference count leak due to pm_runtime_get_sync + - media: exynos4-is: Fix a reference count leak + - media: vsp1: Fix runtime PM imbalance on error + - media: platform: s3c-camif: Fix runtime PM imbalance on error + - media: platform: sti: hva: Fix runtime PM imbalance on error + - media: bdisp: Fix runtime PM imbalance on error + - media: media/pci: prevent memory leak in bttv_probe + - x86/mce: Annotate mce_rd/wrmsrl() with noinstr + - crypto: hisilicon - fixed memory allocation error + - spi: fsi: Fix clock running too fast + - x86/mce: Make mce_rdmsrl() panic on an inaccessible MSR + - media: uvcvideo: Ensure all probed info is returned to v4l2 + - mmc: sdio: Check for CISTPL_VERS_1 buffer size + - media: saa7134: avoid a shift overflow + - media: atomisp: fix memleak in ia_css_stream_create + - media: venus: fixes for list corruption + - fs: dlm: fix configfs memory leak + - media: venus: core: Fix error handling in probe + - media: venus: core: Fix runtime PM imbalance in venus_probe + - ntfs: add check for mft record size in superblock + - ip_gre: set dev->hard_header_len and dev->needed_headroom properly + - mac80211: handle lack of sband->bitrates in rates + - staging: wfx: fix handling of MMIC error + - libbpf: Close map fd if init map slots failed + - bpf: Use raw_spin_trylock() for pcpu_freelist_push/pop in NMI + - PM: hibernate: remove the bogus call to get_gendisk() in software_resume() + - scsi: mvumi: Fix error return in mvumi_io_attach() + - scsi: target: core: Add CONTROL field for trace events + - mic: vop: copy data to kernel space then write to io memory + - misc: vop: add round_up(x,4) for vring_size to avoid kernel panic + - usb: dwc3: Add splitdisable quirk for Hisilicon Kirin Soc + - usb: gadget: function: printer: fix use-after-free in __lock_acquire + - udf: Limit sparing table size + - udf: Avoid accessing uninitialized data on failed inode read + - rtw88: increse the size of rx buffer size + - USB: cdc-acm: handle broken union descriptors + - usb: dwc3: simple: add support for Hikey 970 + - habanalabs: cast to u64 before shift > 31 bits + - can: flexcan: flexcan_chip_stop(): add error handling and propagate error + value + - HID: multitouch: Lenovo X1 Tablet Gen3 trackpoint and buttons + - ath9k: hif_usb: fix race condition between usb_get_urb() and + usb_kill_anchored_urbs() + - drm/panfrost: add Amlogic GPU integration quirks + - drm/panfrost: add amlogic reset quirk callback + - drm/panfrost: add support for vendor quirk + - bpf: Limit caller's stack depth 256 for subprogs with tailcalls + - misc: rtsx: Fix memory leak in rtsx_pci_probe + - reiserfs: only call unlock_new_inode() if I_NEW + - opp: Prevent memory leak in dev_pm_opp_attach_genpd() + - xfs: make sure the rt allocator doesn't run off the end + - usb: ohci: Default to per-port over-current protection + - drm: fix double free for gbo in drm_gem_vram_init and drm_gem_vram_create + - Bluetooth: Only mark socket zapped after unlocking + - drm/msm/a6xx: fix a potential overflow issue + - iomap: fix WARN_ON_ONCE() from unprivileged users + - scsi: ibmvfc: Fix error return in ibmvfc_probe() + - scsi: qla2xxx: Warn if done() or free() are called on an already freed srb + - selftests/bpf: Fix test_sysctl_loop{1, 2} failure due to clang change + - brcmsmac: fix memory leak in wlc_phy_attach_lcnphy + - rtl8xxxu: prevent potential memory leak + - Fix use after free in get_capset_info callback. + - HID: ite: Add USB id match for Acer One S1003 keyboard dock + - scsi: qedf: Return SUCCESS if stale rport is encountered + - scsi: qedi: Mark all connections for recovery on link down event + - scsi: qedi: Protect active command list to avoid list corruption + - scsi: qedi: Fix list_del corruption while removing active I/O + - fbmem: add margin check to fb_check_caps() + - tty: ipwireless: fix error handling + - Bluetooth: btusb: Fix memleak in btusb_mtk_submit_wmt_recv_urb + - ipvs: Fix uninit-value in do_ip_vs_set_ctl() + - reiserfs: Fix memory leak in reiserfs_parse_options() + - s390/qeth: strictly order bridge address events + - mwifiex: don't call del_timer_sync() on uninitialized timer + - ALSA: hda/ca0132 - Add AE-7 microphone selection commands. + - ALSA: hda/ca0132 - Add new quirk ID for SoundBlaster AE-7. + - ASoC: SOF: Add topology filename override based on dmi data match + - ASoC: Intel: sof_rt5682: override quirk data for tgl_max98373_rt5682 + - scsi: smartpqi: Avoid crashing kernel for controller issues + - brcm80211: fix possible memleak in brcmf_proto_msgbuf_attach + - usb: core: Solve race condition in anchor cleanup functions + - scsi: ufs: ufs-qcom: Fix race conditions caused by ufs_qcom_testbus_config() + - drm/amd/display: Screen corruption on dual displays (DP+USB-C) + - dmaengine: dw: Add DMA-channels mask cell support + - dmaengine: dw: Activate FIFO-mode for memory peripherals only + - ath10k: check idx validity in __ath10k_htt_rx_ring_fill_n() + - net: korina: cast KSEG0 address to pointer in kfree + - s390/qeth: don't let HW override the configured port role + - tty: serial: lpuart: fix lpuart32_write usage + - tty: serial: fsl_lpuart: fix lpuart32_poll_get_char + - usb: gadget: bcm63xx_udc: fix up the error of undeclared usb_debug_root + - usb: cdc-acm: add quirk to blacklist ETAS ES58X devices + - USB: cdc-wdm: Make wdm_flush() interruptible and add wdm_fsync(). + - usb: cdns3: gadget: free interrupt after gadget has deleted + - eeprom: at25: set minimum read/write access stride to 1 + - usb: gadget: f_ncm: allow using NCM in SuperSpeed Plus gadgets. + - Linux 5.8.17 + * RTL8822BE [10ec:b822] network driver rtl_wifi crashes on boot in Focal Fossa + 20.04 - 5.4.0-21-generic and mainline 5.7.0-050700rc1-generic + (LP: #1872984) // Groovy update: v5.8.17 upstream stable release + (LP: #1902137) + - rtw88: pci: Power cycle device during shutdown + * Groovy update: v5.8.16 upstream stable release (LP: #1902132) + - crypto: bcm - Verify GCM/CCM key length in setkey + - crypto: qat - check cipher length for aead AES-CBC-HMAC-SHA + - Bluetooth: Disconnect if E0 is used for Level 4 + - media: usbtv: Fix refcounting mixup + - USB: serial: option: add Cellient MPL200 card + - USB: serial: option: Add Telit FT980-KS composition + - staging: comedi: check validity of wMaxPacketSize of usb endpoints found + - USB: serial: pl2303: add device-id for HP GC device + - USB: serial: ftdi_sio: add support for FreeCalypso JTAG+UART adapters + - reiserfs: Initialize inode keys properly + - reiserfs: Fix oops during mount + - Linux 5.8.16 + * Groovy update: v5.8.15 upstream stable release (LP: #1902130) + - fbdev, newport_con: Move FONT_EXTRA_WORDS macros into linux/font.h + - Fonts: Support FONT_EXTRA_WORDS macros for built-in fonts + - fbcon: Fix global-out-of-bounds read in fbcon_get_font() + - Revert "ravb: Fixed to be able to unload modules" + - crypto: arm64: Use x16 with indirect branch to bti_c + - exfat: fix use of uninitialized spinlock on error path + - net: wireless: nl80211: fix out-of-bounds access in nl80211_del_key() + - drm/nouveau/mem: guard against NULL pointer access in mem_del + - partitions/ibm: fix non-DASD devices + - block/scsi-ioctl: Fix kernel-infoleak in scsi_put_cdrom_generic_arg() + - vhost: Don't call access_ok() when using IOTLB + - vhost: Use vhost_get_used_size() in vhost_vring_set_addr() + - usermodehelper: reset umask to default before executing user process + - splice: teach splice pipe reading about empty pipe buffers + - Platform: OLPC: Fix memleak in olpc_ec_probe + - platform/x86: intel-vbtn: Fix SW_TABLET_MODE always reporting 1 on the HP + Pavilion 11 x360 + - platform/x86: thinkpad_acpi: initialize tp_nvram_state variable + - platform/x86: asus-wmi: Fix SW_TABLET_MODE always reporting 1 on many + different models + - bpf: Fix sysfs export of empty BTF section + - bpf: Prevent .BTF section elimination + - r8169: consider that PHY reset may still be in progress after applying + firmware + - platform/x86: intel-vbtn: Switch to an allow-list for SW_TABLET_MODE + reporting + - platform/x86: thinkpad_acpi: re-initialize ACPI buffer size when reuse + - nvme-core: put ctrl ref when module ref get fail + - macsec: avoid use-after-free in macsec_handle_frame() + - RISC-V: Make sure memblock reserves the memory containing DT + - gpiolib: Disable compat ->read() code in UML case + - mm/khugepaged: fix filemap page_to_pgoff(page) != offset + - net: introduce helper sendpage_ok() in include/linux/net.h + - tcp: use sendpage_ok() to detect misused .sendpage + - nvme-tcp: check page by sendpage_ok() before calling kernel_sendpage() + - xfrmi: drop ignore_df check before updating pmtu + - espintcp: restore IP CB before handing the packet to xfrm + - cifs: Fix incomplete memory allocation on setxattr path + - i2c: meson: fix clock setting overwrite + - i2c: meson: keep peripheral clock enabled + - i2c: meson: fixup rate calculation with filter delay + - i2c: owl: Clear NACK and BUS error bits + - sctp: fix sctp_auth_init_hmacs() error path + - team: set dev->needed_headroom in team_setup_by_port() + - net: team: fix memory leak in __team_options_register + - openvswitch: handle DNAT tuple collision + - drm/amdgpu: prevent double kfree ttm->sg + - btrfs: move btrfs_scratch_superblocks into btrfs_dev_replace_finishing + - io_uring: fix potential ABBA deadlock in ->show_fdinfo() + - drm/amd/pm: Removed fixed clock in auto mode DPM + - drm/amd/display: fix return value check for hdcp_work + - btrfs: move btrfs_rm_dev_replace_free_srcdev outside of all locks + - iommu/vt-d: Fix lockdep splat in iommu_flush_dev_iotlb() + - xfrm: clone XFRMA_SET_MARK in xfrm_do_migrate + - xfrm: clone XFRMA_REPLAY_ESN_VAL in xfrm_do_migrate + - xfrm: clone XFRMA_SEC_CTX in xfrm_do_migrate + - xfrm: clone whole liftime_cur structure in xfrm_do_migrate + - xsk: Do not discard packet when NETDEV_TX_BUSY + - net: stmmac: removed enabling eee in EEE set callback + - platform/x86: fix kconfig dependency warning for LG_LAPTOP + - platform/x86: fix kconfig dependency warning for FUJITSU_LAPTOP + - hinic: add log in exception handling processes + - hinic: fix wrong return value of mac-set cmd + - net: dsa: felix: convert TAS link speed based on phylink speed + - xfrm: Use correct address family in xfrm_state_find + - iavf: use generic power management + - iavf: Fix incorrect adapter get in iavf_resume + - ice: fix memory leak if register_netdev_fails + - ice: fix memory leak in ice_vsi_setup + - vmxnet3: fix cksum offload issues for non-udp tunnels + - net: stmmac: Fix clock handling on remove path + - net: ethernet: cavium: octeon_mgmt: use phy_start and phy_stop + - bonding: set dev->needed_headroom in bond_setup_by_slave() + - mdio: fix mdio-thunder.c dependency & build error + - mlxsw: spectrum_acl: Fix mlxsw_sp_acl_tcam_group_add()'s error path + - r8169: fix RTL8168f/RTL8411 EPHY config + - net: usb: ax88179_178a: fix missing stop entry in driver_info + - virtio-net: don't disable guest csum when disable LRO + - net: phy: realtek: fix rtl8211e rx/tx delay config + - octeontx2-af: Fix enable/disable of default NPC entries + - octeontx2-pf: Fix TCP/UDP checksum offload for IPv6 frames + - octeontx2-pf: Fix the device state on error + - octeontx2-pf: Fix synchnorization issue in mbox + - pipe: Fix memory leaks in create_pipe_files() + - net/mlx5: Fix a race when moving command interface to polling mode + - net/mlx5: Avoid possible free of command entry while timeout comp handler + - net/mlx5: poll cmd EQ in case of command timeout + - net/mlx5: Add retry mechanism to the command entry index allocation + - net/mlx5: Fix request_irqs error flow + - net/mlx5e: Add resiliency in Striding RQ mode for packets larger than MTU + - net/mlx5e: Fix return status when setting unsupported FEC mode + - net/mlx5e: Fix VLAN cleanup flow + - net/mlx5e: Fix VLAN create flow + - net/mlx5e: Fix race condition on nhe->n pointer in neigh update + - net: stmmac: Modify configuration method of EEE timers + - net: hinic: fix DEVLINK build errors + - vhost-vdpa: fix vhost_vdpa_map() on error condition + - vhost-vdpa: fix page pinning leakage in error path + - net: mvneta: fix double free of txq->buf + - rxrpc: Fix rxkad token xdr encoding + - rxrpc: Downgrade the BUG() for unsupported token type in rxrpc_read() + - rxrpc: Fix some missing _bh annotations on locking conn->state_lock + - rxrpc: The server keyring isn't network-namespaced + - rxrpc: Fix server keyring leak + - net: mscc: ocelot: rename ocelot_board.c to ocelot_vsc7514.c + - [Packaging] module ocelot_board rename + - net: mscc: ocelot: split writes to pause frame enable bit and to thresholds + - net: mscc: ocelot: extend watermark encoding function + - net: mscc: ocelot: divide watermark value by 60 when writing to SYS_ATOP + - afs: Fix deadlock between writeback and truncate + - perf: Fix task_function_call() error handling + - mmc: core: don't set limits.discard_granularity as 0 + - mm: validate inode in mapping_set_error() + - mm: khugepaged: recalculate min_free_kbytes after memory hotplug as expected + by khugepaged + - tcp: fix receive window update in tcp_add_backlog() + - netlink: fix policy dump leak + - net/core: check length before updating Ethertype in skb_mpls_{push,pop} + - net: bridge: fdb: don't flush ext_learn entries + - net/tls: race causes kernel panic + - net/mlx5e: Fix driver's declaration to support GRE offload + - tty/vt: Do not warn when huge selection requested + - Input: ati_remote2 - add missing newlines when printing module parameters + - net: usb: rtl8150: set random MAC address when set_ethernet_addr() fails + - net: qrtr: ns: Protect radix_tree_deref_slot() using rcu read locks + - net_sched: defer tcf_idr_insert() in tcf_action_init_1() + - net_sched: commit action insertions together + - Linux 5.8.15 + * Fix non-working Intel NVMe after S3 (LP: #1900847) + - SAUCE: PCI: Enable ACS quirk on all CML root ports + * Improve descriptions for XFAIL cases in kselftests/net/psock_snd + (LP: #1900088) + - selftests/net: improve descriptions for XFAIL cases in psock_snd.sh + * alsa/hda/realtek - The front Mic on a HP machine doesn't work (LP: #1899508) + - ALSA: hda/realtek - The front Mic on a HP machine doesn't work + * kci_test_encap_fou() in rtnetlink.sh from kselftests/net failed with "FAIL: + can't add fou port 7777, skipping test" (LP: #1891421) + - selftests: rtnetlink: load fou module for kci_test_encap_fou() test + * linux-aws: fold test_bpf SAUCE to linux/master (LP: #1900855) + - SAUCE: selftests: net: don't fail test_bpf when module is not present + * Fix broken MSI interrupt after HDA controller was suspended (LP: #1899586) + - ALSA: hda: fix jack detection with Realtek codecs when in D3 + + [ Ubuntu: 5.8.0-29.31 ] + + * Packaging resync (LP: #1786013) + - update dkms package versions + + -- Kleber Sacilotto de Souza Mon, 16 Nov 2020 14:12:10 +0100 + +linux-azure (5.8.0-1012.13) groovy; urgency=medium + + [ Ubuntu: 5.8.0-28.30 ] + + * CVE-2020-27194 + - bpf: Fix scalar32_min_max_or bounds tracking + + [ Ubuntu: 5.8.0-27.29 ] + + * CVE-2020-8694 + - powercap: make attributes only readable by root + + -- Kleber Sacilotto de Souza Thu, 05 Nov 2020 15:55:21 +0100 + +linux-azure (5.8.0-1011.11) groovy; urgency=medium + + * groovy/linux-azure: 5.8.0-1011.11 -proposed tracker (LP: #1900893) + + [ Ubuntu: 5.8.0-26.27 ] + + * groovy/linux: 5.8.0-26.27 -proposed tracker (LP: #1900896) + * Packaging resync (LP: #1786013) + - update dkms package versions + * Introduce the new NVIDIA 455 series (LP: #1897751) + - [Packaging] NVIDIA -- Add signed modules for the 455 driver + + -- Paolo Pisati Thu, 22 Oct 2020 10:32:02 +0200 + +linux-azure (5.8.0-1010.10) groovy; urgency=medium + + * groovy/linux-azure: 5.8.0-1010.10 -proposed tracker (LP: #1899930) + + * Miscellaneous Ubuntu changes + - [Config] annotations: update CONFIG_BT_HS policy + + [ Ubuntu: 5.8.0-25.26 ] + + * groovy/linux: 5.8.0-25.26 -proposed tracker (LP: #1899940) + * CVE-2020-12351 + - Bluetooth: L2CAP: Fix calling sk_filter on non-socket based channel + * CVE-2020-12352 + - Bluetooth: A2MP: Fix not initializing all members + * CVE-2020-12351 // CVE-2020-12352 // CVE-2020-24490 + - Bluetooth: Disable High Speed by default + - Bluetooth: MGMT: Fix not checking if BT_HS is enabled + - [Config] Disable BlueZ highspeed support + * ec2-hibinit-agent needs to properly initialize swap file (LP: #1892728) + - ext4: implement swap_activate aops using iomap + + [ Ubuntu: 5.8.0-24.25 ] + + * groovy/linux: 5.8.0-24.25 -proposed tracker (LP: #1899804) + * Fix system reboot when disconnecting WiFi (LP: #1899726) + - iwlwifi: msix: limit max RX queues for 9000 family + * ceph: fix inode number handling on arches with 32-bit ino_t (LP: #1899582) + - ceph: fix inode number handling on arches with 32-bit ino_t + * booting linux-generic-lpae armhf kernel under qemu results in relocation out + of range, and thus no modules can be loaded (LP: #1899519) + - [Config] armhf: ARM_MODULE_PLTS=y + + -- Paolo Pisati Thu, 15 Oct 2020 13:38:48 +0200 + +linux-azure (5.8.0-1009.9) groovy; urgency=medium + + + [ Ubuntu: 5.8.0-23.24 ] + + * CVE-2020-16119 + - SAUCE: dccp: avoid double free of ccid on child socket + + -- Seth Forshee Fri, 09 Oct 2020 11:04:49 -0500 + +linux-azure (5.8.0-1008.8) groovy; urgency=medium + + * groovy/linux-azure: 5.8.0-1008.8 -proposed tracker (LP: #1899093) + + * Miscellaneous Ubuntu changes + - [Config] CONFIG_UBUNTU_HOST=m + + [ Ubuntu: 5.8.0-22.23 ] + + * groovy/linux: 5.8.0-22.23 -proposed tracker (LP: #1899099) + * Packaging resync (LP: #1786013) + - update dkms package versions + * oops in nvkm_udevice_info() [nouveau] (LP: #1898130) + - drm/nouveau/device: return error for unknown chipsets + * python3-venv is gone (LP: #1896801) + - SAUCE: doc: remove python3-venv dependency + * *-tools-common packages descriptions have typo "PGKVER" (LP: #1898903) + - [Packaging] Fix typo in -tools template s/PGKVER/PKGVER/ + * Enable brightness control on HP DreamColor panel (LP: #1898865) + - SAUCE: drm/i915/dpcd_bl: Skip testing control capability with force DPCD + quirk + - SAUCE: drm/dp: HP DreamColor panel brigntness fix + * Groovy update: v5.8.14 upstream stable release (LP: #1898853) + - io_uring: always delete double poll wait entry on match + - btrfs: fix filesystem corruption after a device replace + - mmc: sdhci: Workaround broken command queuing on Intel GLK based IRBIS + models + - USB: gadget: f_ncm: Fix NDP16 datagram validation + - Revert "usbip: Implement a match function to fix usbip" + - usbcore/driver: Fix specific driver selection + - usbcore/driver: Fix incorrect downcast + - usbcore/driver: Accommodate usbip + - gpio: siox: explicitly support only threaded irqs + - gpio: mockup: fix resource leak in error path + - gpio: tc35894: fix up tc35894 interrupt configuration + - gpio: amd-fch: correct logic of GPIO_LINE_DIRECTION + - clk: samsung: Keep top BPLL mux on Exynos542x enabled + - clk: socfpga: stratix10: fix the divider for the emac_ptp_free_clk + - scsi: iscsi: iscsi_tcp: Avoid holding spinlock while calling getpeername() + - i2c: i801: Exclude device from suspend direct complete optimization + - Input: i8042 - add nopnp quirk for Acer Aspire 5 A515 + - iio: adc: qcom-spmi-adc5: fix driver name + - ftrace: Move RCU is watching check after recursion check + - tracing: Fix trace_find_next_entry() accounting of temp buffer size + - memstick: Skip allocating card when removing host + - drm/amdgpu: restore proper ref count in amdgpu_display_crtc_set_config + - xen/events: don't use chip_data for legacy IRQs + - clocksource/drivers/timer-gx6605s: Fixup counter reload + - vboxsf: Fix the check for the old binary mount-arguments struct + - mt76: mt7915: use ieee80211_free_txskb to free tx skbs + - libbpf: Remove arch-specific include path in Makefile + - drivers/net/wan/hdlc_fr: Add needed_headroom for PVC devices + - Revert "wlcore: Adding suppoprt for IGTK key in wlcore driver" + - drm/sun4i: mixer: Extend regmap max_register + - hv_netvsc: Cache the current data path to avoid duplicate call and message + - net: dec: de2104x: Increase receive ring size for Tulip + - rndis_host: increase sleep time in the query-response loop + - nvme-pci: disable the write zeros command for Intel 600P/P3100 + - nvme-core: get/put ctrl and transport module in nvme_dev_open/release() + - fuse: fix the ->direct_IO() treatment of iov_iter + - drivers/net/wan/lapbether: Make skb->protocol consistent with the header + - drivers/net/wan/hdlc: Set skb->protocol before transmitting + - mac80211: Fix radiotap header channel flag for 6GHz band + - mac80211: do not allow bigger VHT MPDUs than the hardware supports + - tracing: Make the space reserved for the pid wider + - tools/io_uring: fix compile breakage + - io_uring: mark statx/files_update/epoll_ctl as non-SQPOLL + - cpuidle: psci: Fix suspicious RCU usage + - spi: fsl-espi: Only process interrupts for expected events + - net: dsa: felix: fix some key offsets for IP4_TCP_UDP VCAP IS2 entries + - nvme-pci: fix NULL req in completion handler + - nvme-fc: fail new connections to a deleted host or remote port + - scripts/kallsyms: skip ppc compiler stub *.long_branch.* / *.plt_branch.* + - gpio: sprd: Clear interrupt when setting the type as edge + - phy: ti: am654: Fix a leak in serdes_am654_probe() + - pinctrl: mvebu: Fix i2c sda definition for 98DX3236 + - nfs: Fix security label length not being reset + - NFSv4.2: fix client's attribute cache management for copy_file_range + - pNFS/flexfiles: Ensure we initialise the mirror bsizes correctly on read + - clk: tegra: Always program PLL_E when enabled + - clk: tegra: Fix missing prototype for tegra210_clk_register_emc() + - dmaengine: dmatest: Prevent to run on misconfigured channel + - clk: samsung: exynos4: mark 'chipid' clock as CLK_IGNORE_UNUSED + - scsi: target: Fix lun lookup for TARGET_SCF_LOOKUP_LUN_FROM_TAG case + - iommu/exynos: add missing put_device() call in exynos_iommu_of_xlate() + - gpio: pca953x: Fix uninitialized pending variable + - gpio/aspeed-sgpio: enable access to all 80 input & output sgpios + - gpio/aspeed-sgpio: don't enable all interrupts by default + - gpio: aspeed: fix ast2600 bank properties + - i2c: cpm: Fix i2c_ram structure + - i2c: npcm7xx: Clear LAST bit after a failed transaction. + - Input: trackpoint - enable Synaptics trackpoints + - blk-mq: call commit_rqs while list empty but error happen + - scripts/dtc: only append to HOST_EXTRACFLAGS instead of overwriting + - autofs: use __kernel_write() for the autofs pipe writing + - pinctrl: qcom: sm8250: correct sdc2_clk + - pinctrl: mediatek: check mtk_is_virt_gpio input parameter + - gpio: pca953x: Correctly initialize registers 6 and 7 for PCA957x + - iommu/amd: Fix the overwritten field in IVMD header + - pipe: remove pipe_wait() and fix wakeup race with splice + - random32: Restore __latent_entropy attribute on net_rand_state + - gpiolib: Fix line event handling in syscall compatible mode + - drm/i915/gvt: Fix port number for BDW on EDID region setup + - scsi: sd: sd_zbc: Fix handling of host-aware ZBC disks + - scsi: sd: sd_zbc: Fix ZBC disk initialization + - epoll: do not insert into poll queues until all sanity checks are done + - epoll: replace ->visited/visited_list with generation count + - epoll: EPOLL_CTL_ADD: close the race in decision to take fast path + - ep_create_wakeup_source(): dentry name can change under you... + - Linux 5.8.14 + * Miscellaneous Ubuntu changes + - SAUCE: selftests/ftrace: check for do_sys_openat2 in user-memory test + - SAUCE: doc: Disable extension incompatible with Sphinx 3 + - Add ubuntu-host module + - CONFIG_UBUNTU_HOST=m + - SAUCE: Revert "UBUNTU: SAUCE: IB/umem: Fix the Peer flow to handle pinned + pages properly" + - SAUCE: Revert "UBUNTU: SAUCE: IB/mlx5: Use peer client page_shift" + - SAUCE: Revert "UBUNTU: SAUCE: fixup! RDMA/core: Introduce peer memory + interface" + - SAUCE: Revert "UBUNTU: SAUCE: RDMA/core: Introduce peer memory interface" + - SAUCE: apparmor: drop prefixing abs root labels with '=' + - SAUCE: apparmor: disable showing the mode as part of a secid to secctx + - SAUCE: apparmor: rename aa_sock() to aa_unix_sk() + - SAUCE: apparmor: LSM stacking: switch from SK_CTX() to aa_sock() + - SAUCE: LSM: Infrastructure management of the sock security + - SAUCE: LSM: Create and manage the lsmblob data structure. + - SAUCE: LSM: Use lsmblob in security_audit_rule_match + - SAUCE: LSM: Use lsmblob in security_kernel_act_as + - SAUCE: net: Prepare UDS for security module stacking + - SAUCE: LSM: Use lsmblob in security_secctx_to_secid + - SAUCE: LSM: Use lsmblob in security_secid_to_secctx + - SAUCE: LSM: Use lsmblob in security_ipc_getsecid + - SAUCE: LSM: Use lsmblob in security_task_getsecid + - SAUCE: LSM: Use lsmblob in security_inode_getsecid + - SAUCE: LSM: Use lsmblob in security_cred_getsecid + - SAUCE: IMA: Change internal interfaces to use lsmblobs + - SAUCE: LSM: Specify which LSM to display + - SAUCE: LSM: Ensure the correct LSM context releaser + - SAUCE: LSM: Use lsmcontext in security_secid_to_secctx + - SAUCE: LSM: Use lsmcontext in security_inode_getsecctx + - SAUCE: LSM: security_secid_to_secctx in netlink netfilter + - SAUCE: NET: Store LSM netlabel data in a lsmblob + - SAUCE: LSM: Verify LSM display sanity in binder + - SAUCE: Audit: Add new record for multiple process LSM attributes + - SAUCE: Audit: Add a new record for multiple object LSM + - SAUCE: LSM: Add /proc attr entry for full LSM context + - SAUCE: AppArmor: Remove the exclusive flag + - SAUCE: Audit: Fix for missing NULL check + * Miscellaneous upstream changes + - Revert "UBUNTU: [Packaging] Temporarily disable building doc package + contents" + - Revert "UBUNTU: SAUCE: Revert "apparmor: add support for mapping secids and + using secctxes"" + - Revert "UBUNTU: SAUCE: Revert "apparmor: Use an IDR to allocate apparmor + secids"" + - Revert "UBUNTU: SAUCE: Revert "apparmor: fixup secid map conversion to using + IDR"" + - Revert "UBUNTU: SAUCE: Revert "apparmor: Add a wildcard secid"" + - Revert "UBUNTU: SAUCE: Revert "apparmor: Parse secmark policy"" + - Revert "UBUNTU: SAUCE: Revert "apparmor: Allow filtering based on secmark + policy"" + - Revert "UBUNTU: SAUCE: Fix-up af_unix mediation for sock infrastructure + management" + - Revert "UBUNTU: SAUCE: LSM: Infrastructure management of the sock security" + - Revert "UBUNTU: SAUCE: apparmor: update flags to no longer be exclusive" + - Revert "UBUNTU: SAUCE: apparmor: add an apparmorfs entry to access current + attrs" + - Revert "UBUNTU: SAUCE: Revert "apparmor: add the ability to get a task's + secid"" + - Revert "UBUNTU: SAUCE: Revert "apparmor: Add support for audit rule + filtering"" + - Revert "UBUNTU: SAUCE: Revert "apparmor: modify audit rule support to + support profile stacks"" + - Revert "UBUNTU: SAUCE: Revert "apparmor: fix bad debug check in + apparmor_secid_to_secctx()"" + - Revert "UBUNTU: SAUCE: Revert "apparmor: add #ifdef checks for secmark + filtering"" + - Revert "UBUNTU: SAUCE: Revert "apparmor: fix checkpatch error in Parse + secmark policy"" + - Revert "UBUNTU: SAUCE: Revert "apparmor: Fix warning about unused function + apparmor_ipv6_postroute"" + + -- Paolo Pisati Fri, 09 Oct 2020 10:04:37 +0200 + +linux-azure (5.8.0-1007.7) groovy; urgency=medium + + * groovy/linux-azure: 5.8.0-1007.7 -proposed tracker (LP: #1898144) + + * linux-azure: Enable FSGSBASE instructions to support SGX (LP: #1877425) + - x86/ptrace: Prevent ptrace from clearing the FS/GS selector + - x86/cpu: Add 'unsafe_fsgsbase' to enable CR4.FSGSBASE + - x86/fsgsbase/64: Add intrinsics for FSGSBASE instructions + - x86/fsgsbase/64: Enable FSGSBASE instructions in helper functions + - x86/process/64: Make save_fsgs_for_kvm() ready for FSGSBASE + - x86/process/64: Use FSBSBASE in switch_to() if available + - x86/process/64: Use FSGSBASE instructions on thread copy and ptrace + - x86/speculation/swapgs: Check FSGSBASE in enabling SWAPGS mitigation + - x86/entry/64: Switch CR3 before SWAPGS in paranoid entry + - x86/entry/64: Introduce the FIND_PERCPU_BASE macro + - x86/entry/64: Handle FSGSBASE enabled paranoid entry/exit + - x86/cpu: Enable FSGSBASE on 64bit by default and add a chicken bit + - x86/elf: Enumerate kernel FSGSBASE capability in AT_HWCAP2 + - Documentation/x86/64: Add documentation for GS/FS addressing mode + - selftests/x86/fsgsbase: Test GS selector on ptracer-induced GS base write + - selftests/x86/fsgsbase: Test ptracer-induced GS base write with FSGSBASE + - x86/ptrace: Fix 32-bit PTRACE_SETREGS vs fsbase and gsbase + - x86/fsgsbase: Fix Xen PV support + + * Miscellaneous Ubuntu changes + - [Config] GCC version update + + [ Ubuntu: 5.8.0-21.22 ] + + * groovy/linux: 5.8.0-21.22 -proposed tracker (LP: #1898150) + * Packaging resync (LP: #1786013) + - update dkms package versions + * Fix broken e1000e device after S3 (LP: #1897755) + - SAUCE: e1000e: Increase polling timeout on MDIC ready bit + * EFA: add support for 0xefa1 devices (LP: #1896791) + - RDMA/efa: Expose maximum TX doorbell batch + - RDMA/efa: Expose minimum SQ size + - RDMA/efa: User/kernel compatibility handshake mechanism + - RDMA/efa: Add EFA 0xefa1 PCI ID + * Groovy update: v5.8.13 upstream stable release (LP: #1898076) + - device_cgroup: Fix RCU list debugging warning + - ASoC: pcm3168a: ignore 0 Hz settings + - ASoC: wm8994: Skip setting of the WM8994_MICBIAS register for WM1811 + - ASoC: wm8994: Ensure the device is resumed in wm89xx_mic_detect functions + - ASoC: Intel: bytcr_rt5640: Add quirk for MPMAN Converter9 2-in-1 + - clk: versatile: Add of_node_put() before return statement + - RISC-V: Take text_mutex in ftrace_init_nop() + - i2c: aspeed: Mask IRQ status to relevant bits + - s390/init: add missing __init annotations + - lockdep: fix order in trace_hardirqs_off_caller() + - EDAC/ghes: Check whether the driver is on the safe list correctly + - drm/amdkfd: fix a memory leak issue + - drm/amd/display: Don't use DRM_ERROR() for DTM add topology + - drm/amd/display: update nv1x stutter latencies + - drm/amdgpu/dc: Require primary plane to be enabled whenever the CRTC is + - drm/amd/display: Don't log hdcp module warnings in dmesg + - objtool: Fix noreturn detection for ignored functions + - i2c: mediatek: Send i2c master code at more than 1MHz + - riscv: Fix Kendryte K210 device tree + - ieee802154: fix one possible memleak in ca8210_dev_com_init + - ieee802154/adf7242: check status of adf7242_read_reg + - clocksource/drivers/h8300_timer8: Fix wrong return value in + h8300_8timer_init() + - batman-adv: bla: fix type misuse for backbone_gw hash indexing + - libbpf: Fix build failure from uninitialized variable warning + - atm: eni: fix the missed pci_disable_device() for eni_init_one() + - batman-adv: mcast/TT: fix wrongly dropped or rerouted packets + - netfilter: ctnetlink: add a range check for l3/l4 protonum + - netfilter: ctnetlink: fix mark based dump filtering regression + - netfilter: conntrack: nf_conncount_init is failing with IPv6 disabled + - netfilter: nft_meta: use socket user_ns to retrieve skuid and skgid + - mac802154: tx: fix use-after-free + - bpf: Fix clobbering of r2 in bpf_gen_ld_abs + - tools/libbpf: Avoid counting local symbols in ABI check + - drm/vc4/vc4_hdmi: fill ASoC card owner + - net: qed: Disable aRFS for NPAR and 100G + - net: qede: Disable aRFS for NPAR and 100G + - net: qed: RDMA personality shouldn't fail VF load + - igc: Fix wrong timestamp latency numbers + - igc: Fix not considering the TX delay for timestamps + - drm/sun4i: sun8i-csc: Secondary CSC register correction + - hv_netvsc: Switch the data path at the right time during hibernation + - spi: spi-fsl-dspi: use XSPI mode instead of DMA for DPAA2 SoCs + - RDMA/core: Fix ordering of CQ pool destruction + - batman-adv: Add missing include for in_interrupt() + - xsk: Fix number of pinned pages/umem size discrepancy + - nvme-tcp: fix kconfig dependency warning when !CRYPTO + - batman-adv: mcast: fix duplicate mcast packets in BLA backbone from LAN + - batman-adv: mcast: fix duplicate mcast packets in BLA backbone from mesh + - batman-adv: mcast: fix duplicate mcast packets from BLA backbone to mesh + - bpf: Fix a rcu warning for bpffs map pretty-print + - lib80211: fix unmet direct dependendices config warning when !CRYPTO + - mac80211: do not disable HE if HT is missing on 2.4 GHz + - cfg80211: fix 6 GHz channel conversion + - mac80211: fix 80 MHz association to 160/80+80 AP on 6 GHz + - ALSA: asihpi: fix iounmap in error handler + - io_uring: fix openat/openat2 unified prep handling + - SUNRPC: Fix svc_flush_dcache() + - regmap: fix page selection for noinc reads + - regmap: fix page selection for noinc writes + - net/mlx5e: mlx5e_fec_in_caps() returns a boolean + - MIPS: Loongson-3: Fix fp register access if MSA enabled + - PM / devfreq: tegra30: Disable clock on error in probe + - MIPS: Add the missing 'CPU_1074K' into __get_cpu_type() + - regulator: axp20x: fix LDO2/4 description + - spi: bcm-qspi: Fix probe regression on iProc platforms + - KVM: x86: Reset MMU context if guest toggles CR4.SMAP or CR4.PKE + - KVM: SVM: Add a dedicated INVD intercept routine + - mm: validate pmd after splitting + - arch/x86/lib/usercopy_64.c: fix __copy_user_flushcache() cache writeback + - x86/irq: Make run_on_irqstack_cond() typesafe + - x86/ioapic: Unbreak check_timer() + - scsi: lpfc: Fix initial FLOGI failure due to BBSCN not supported + - ALSA: usb-audio: Add delay quirk for H570e USB headsets + - ALSA: hda/realtek - Couldn't detect Mic if booting with headset plugged + - ALSA: hda/realtek: Enable front panel headset LED on Lenovo ThinkStation + P520 + - lib/string.c: implement stpcpy + - tracing: fix double free + - s390/dasd: Fix zero write for FBA devices + - mt76: mt7615: use v1 MCU API on MT7615 to fix issues with adding/removing + stations + - lib/bootconfig: Fix a bug of breaking existing tree nodes + - lib/bootconfig: Fix to remove tailing spaces after value + - kprobes: Fix to check probe enabled before disarm_kprobe_ftrace() + - kprobes: tracing/kprobes: Fix to kill kprobes on initmem after boot + - btrfs: fix put of uninitialized kobject after seed device delete + - btrfs: fix overflow when copying corrupt csums for a message + - media: cec-adap.c: don't use flush_scheduled_work() + - MIPS: Loongson2ef: Disable Loongson MMI instructions + - dmabuf: fix NULL pointer dereference in dma_buf_release() + - mm, THP, swap: fix allocating cluster for swapfile by mistake + - mm: replace memmap_context by meminit_context + - mm: don't rely on system state to detect hot-plug operations + - s390/zcrypt: Fix ZCRYPT_PERDEV_REQCNT ioctl + - io_uring: ensure open/openat2 name is cleaned on cancelation + - KVM: arm64: Assume write fault on S1PTW permission fault on instruction + fetch + - dm: fix bio splitting and its bio completion order for regular IO + - clocksource/drivers/timer-ti-dm: Do reset before enable + - Linux 5.8.13 + * HP Zbook Studio G7 boots into corrupted screen with PSR featured panel + (LP: #1897501) + - SAUCE: drm/i915/psr: allow overriding PSR disable param by quirk + - SAUCE: drm/dp: add DP_QUIRK_FORCE_PSR_CHIP_DEFAULT quirk to CMN prod-ID + 19-15 + * mwifiex stops working after kernel upgrade (LP: #1897299) + - mwifiex: Increase AES key storage size to 256 bits + * Oops and hang when starting LVM snapshots on 5.4.0-47 (LP: #1894780) + - SAUCE: Revert "mm: memcg/slab: fix memory leak at non-root kmem_cache + destroy" + * mm/slub kernel oops on focal kernel 5.4.0-45 (LP: #1895109) + - SAUCE: Revert "mm/slub: fix a memory leak in sysfs_slab_add()" + * Remove NVMe suspend-to-idle workaround (LP: #1897227) + - Revert "UBUTU: SAUCE: pci: prevent Intel NVMe SSDPEKKF from entering D3" + - Revert "UBUNTU: SAUCE: pci: prevent sk hynix nvme from entering D3" + * [UBUNTU 20.04.1] qemu (secure guest) crash due to gup_fast / dynamic page + table folding issue (LP: #1896726) + - mm/gup: fix gup_fast with dynamic page table folding + * backport tls-rx to ubuntu 5.8 (LP: #1895947) + - net/mlx5: kTLS, Improve TLS params layout structures + - net/mlx5e: Turn XSK ICOSQ into a general asynchronous one + - net/mlx5e: Refactor build channel params + - net/mlx5e: API to manipulate TTC rules destinations + - net/mlx5e: Receive flow steering framework for accelerated TCP flows + - net/mlx5e: Accel, Expose flow steering API for rules add/del + - net/mlx5e: kTLS, Improve TLS feature modularity + - net/mlx5e: kTLS, Use kernel API to extract private offload context + - net/mlx5e: kTLS, Add kTLS RX HW offload support + - Revert "net/tls: Add force_resync for driver resync" + - net/tls: Add asynchronous resync + - net/mlx5e: kTLS, Add kTLS RX resync support + - net/mlx5e: kTLS, Add kTLS RX stats + - net/mlx5e: Increase Async ICO SQ size + - net/mlx5e: kTLS, Cleanup redundant capability check + - net/mlx5e: kTLS, Improve rx handler function call + - net/mlx5e: kTLS, Fix napi sync and possible use-after-free + - net/mlx5e: fix memory leak of tls + - net/mlx5e: Fix build break when CONFIG_XPS is not set + - net/mlx5e: kTLS, Add missing dma_unmap in RX resync + - net/mlx5e: kTLS, Fix leak on resync error flow + - net/mlx5e: kTLS, Avoid kzalloc(GFP_KERNEL) under spinlock + * Groovy update: v5.8.12 upstream stable release (LP: #1897550) + - ibmvnic fix NULL tx_pools and rx_tools issue at do_reset + - ibmvnic: add missing parenthesis in do_reset() + - act_ife: load meta modules before tcf_idr_check_alloc() + - bnxt_en: Avoid sending firmware messages when AER error is detected. + - bnxt_en: Fix NULL ptr dereference crash in bnxt_fw_reset_task() + - cxgb4: fix memory leak during module unload + - cxgb4: Fix offset when clearing filter byte counters + - geneve: add transport ports in route lookup for geneve + - hdlc_ppp: add range checks in ppp_cp_parse_cr() + - hinic: bump up the timeout of SET_FUNC_STATE cmd + - ip: fix tos reflection in ack and reset packets + - ipv4: Initialize flowi4_multipath_hash in data path + - ipv4: Update exception handling for multipath routes via same device + - ipv6: avoid lockdep issue in fib6_del() + - net: bridge: br_vlan_get_pvid_rcu() should dereference the VLAN group under + RCU + - net: DCB: Validate DCB_ATTR_DCB_BUFFER argument + - net: dsa: rtl8366: Properly clear member config + - net: Fix bridge enslavement failure + - net: ipv6: fix kconfig dependency warning for IPV6_SEG6_HMAC + - net/mlx5: Fix FTE cleanup + - net: phy: call phy_disable_interrupts() in phy_attach_direct() instead + - net: sched: initialize with 0 before setting erspan md->u + - net: sch_generic: aviod concurrent reset and enqueue op for lockless qdisc + - net: sctp: Fix IPv6 ancestor_size calc in sctp_copy_descendant + - nfp: use correct define to return NONE fec + - taprio: Fix allowing too small intervals + - tipc: Fix memory leak in tipc_group_create_member() + - tipc: fix shutdown() of connection oriented socket + - tipc: use skb_unshare() instead in tipc_buf_append() + - net/mlx5e: Enable adding peer miss rules only if merged eswitch is supported + - net/mlx5e: TLS, Do not expose FPGA TLS counter if not supported + - bnxt_en: Use memcpy to copy VPD field info. + - bnxt_en: return proper error codes in bnxt_show_temp + - bnxt_en: Protect bnxt_set_eee() and bnxt_set_pauseparam() with mutex. + - net: lantiq: Wake TX queue again + - net: lantiq: use netif_tx_napi_add() for TX NAPI + - net: lantiq: Use napi_complete_done() + - net: lantiq: Disable IRQs only if NAPI gets scheduled + - net: phy: Avoid NPD upon phy_detach() when driver is unbound + - net: phy: Do not warn in phy_stop() on PHY_DOWN + - net: qrtr: check skb_put_padto() return value + - net: add __must_check to skb_put_padto() + - net: ethernet: ti: cpsw_new: fix suspend/resume + - wireguard: noise: take lock when removing handshake entry from table + - wireguard: peerlookup: take lock before checking hash in replace operation + - net: ipa: fix u32_replace_bits by u32p_xxx version + - net/mlx5e: Fix memory leak of tunnel info when rule under multipath not + ready + - hinic: fix rewaking txq after netif_tx_disable + - hv_netvsc: Fix hibernation for mlx5 VF driver + - net: dsa: link interfaces with the DSA master to get rid of lockdep warnings + - net: dsa: microchip: ksz8795: really set the correct number of ports + - net: macb: fix for pause frame receive enable bit + - Revert "netns: don't disable BHs when locking "nsid_lock"" + - net/mlx5e: Use RCU to protect rq->xdp_prog + - net/mlx5e: Use synchronize_rcu to sync with NAPI + - net/mlx5e: Fix endianness when calculating pedit mask first bit + - Linux 5.8.12 + * Groovy update: v5.8.11 upstream stable release (LP: #1896795) + - RDMA/bnxt_re: Restrict the max_gids to 256 + - dt-bindings: spi: Fix spi-bcm-qspi compatible ordering + - mptcp: sendmsg: reset iter on error + - net: handle the return value of pskb_carve_frag_list() correctly + - dt-bindings: PCI: intel,lgm-pcie: Fix matching on all snps,dw-pcie instances + - hv_netvsc: Remove "unlikely" from netvsc_select_queue + - loop: Set correct device size when using LOOP_CONFIGURE + - firmware_loader: fix memory leak for paged buffer + - xprtrdma: Release in-flight MRs on disconnect + - NFSv4.1 handle ERR_DELAY error reclaiming locking state on delegation recall + - phy: omap-usb2-phy: disable PHY charger detect + - habanalabs: prevent user buff overflow + - habanalabs: fix report of RAZWI initiator coordinates + - scsi: pm8001: Fix memleak in pm8001_exec_internal_task_abort + - scsi: libfc: Fix for double free() + - scsi: lpfc: Fix FLOGI/PLOGI receive race condition in pt2pt discovery + - scsi: lpfc: Extend the RDF FPIN Registration descriptor for additional + events + - regulator: pwm: Fix machine constraints application + - spi: spi-loopback-test: Fix out-of-bounds read + - interconnect: Show bandwidth for disabled paths as zero in debugfs + - NFS: Zero-stateid SETATTR should first return delegation + - SUNRPC: stop printk reading past end of string + - rapidio: Replace 'select' DMAENGINES 'with depends on' + - cifs: fix DFS mount with cifsacl/modefromsid + - openrisc: Fix cache API compile issue when not inlining + - nvme-fc: cancel async events before freeing event struct + - nvme-rdma: cancel async events before freeing event struct + - nvme-tcp: cancel async events before freeing event struct + - block: only call sched requeue_request() for scheduled requests + - f2fs: fix indefinite loop scanning for free nid + - f2fs: Return EOF on unaligned end of file DIO read + - i2c: algo: pca: Reapply i2c bus settings after reset + - spi: Fix memory leak on splited transfers + - KVM: MIPS: Change the definition of kvm type + - clk: davinci: Use the correct size when allocating memory + - clk: rockchip: Fix initialization of mux_pll_src_4plls_p + - ASoC: Intel: skl_hda_dsp_generic: Fix NULLptr dereference in autosuspend + delay + - ASoC: qcom: Set card->owner to avoid warnings + - ASoC: rt1308-sdw: Fix return check for devm_regmap_init_sdw() + - ASoC: rt711: Fix return check for devm_regmap_init_sdw() + - ASoC: rt715: Fix return check for devm_regmap_init_sdw() + - ASoC: rt700: Fix return check for devm_regmap_init_sdw() + - ASoC: qcom: common: Fix refcount imbalance on error + - drm/mediatek: dsi: Fix scrolling of panel with small hfp or hbp + - powerpc/book3s64/radix: Fix boot failure with large amount of guest memory + - ASoC: soc-core: add snd_soc_find_dai_with_mutex() + - ASoC: meson: axg-toddr: fix channel order on g12 platforms + - ASoC: tlv320adcx140: Fix accessing uninitialized adcx140->dev + - ASoC: Intel: haswell: Fix power transition refactor + - ASoC: core: Do not cleanup uninitialized dais on soc_pcm_open failure + - Drivers: hv: vmbus: hibernation: do not hang forever in vmbus_bus_resume() + - scsi: libsas: Fix error path in sas_notify_lldd_dev_found() + - arm64: Allow CPUs unffected by ARM erratum 1418040 to come in late + - Drivers: hv: vmbus: Add timeout to vmbus_wait_for_unload + - perf test: Fix the "signal" test inline assembly + - perf record: Don't clear event's period if set by a term + - MIPS: SNI: Fix MIPS_L1_CACHE_SHIFT + - perf test: Free aliases for PMU event map aliases test + - perf metric: Fix some memory leaks + - perf evlist: Fix cpu/thread map leak + - perf parse-event: Fix memory leak in evsel->unit + - perf test: Free formats for perf pmu parse test + - drm/i915/gem: Reduce context termination list iteration guard to RCU + - fbcon: Fix user font detection test at fbcon_resize(). + - MIPS: SNI: Fix spurious interrupts + - drm/mediatek: Use CPU when fail to get cmdq event + - drm/mediatek: Add missing put_device() call in mtk_ddp_comp_init() + - drm/mediatek: Add exception handing in mtk_drm_probe() if component init + fail + - drm/mediatek: Add missing put_device() call in mtk_drm_kms_init() + - drm/mediatek: Add missing put_device() call in mtk_hdmi_dt_parse_pdata() + - arm64: bpf: Fix branch offset in JIT + - iommu/amd: Fix potential @entry null deref + - iommu/amd: Restore IRTE.RemapEn bit for amd_iommu_activate_guest_mode + - kconfig: qconf: use delete[] instead of delete to free array (again) + - i2c: mediatek: Fix generic definitions for bus frequency + - i2c: mxs: use MXS_DMA_CTRL_WAIT4END instead of DMA_CTRL_ACK + - riscv: Add sfence.vma after early page table changes + - locking/lockdep: Fix "USED" <- "IN-NMI" inversions + - efi: efibc: check for efivars write capability + - locking/percpu-rwsem: Use this_cpu_{inc,dec}() for read_count + - x86/unwind/fp: Fix FP unwinding in ret_from_fork + - drm/kfd: fix a system crash issue during GPU recovery + - drm/i915/gem: Delay tracking the GEM context until it is registered + - drm/i915: Filter wake_flags passed to default_wake_function + - USB: quirks: Add USB_QUIRK_IGNORE_REMOTE_WAKEUP quirk for BYD zhaoxin + notebook + - USB: UAS: fix disconnect by unplugging a hub + - usblp: fix race between disconnect() and read() + - usb: typec: ucsi: acpi: Increase command completion timeout value + - usb: typec: ucsi: Prevent mode overrun + - i2c: i801: Fix resume bug + - Revert "ALSA: hda - Fix silent audio output and corrupted input on MSI + X570-A PRO" + - ALSA: hda: fixup headset for ASUS GX502 laptop + - ALSA: hda/realtek - The Mic on a RedmiBook doesn't work + - percpu: fix first chunk size calculation for populated bitmap + - Input: trackpoint - add new trackpoint variant IDs + - Input: i8042 - add Entroware Proteus EL07R4 to nomux and reset lists + - serial: 8250_pci: Add Realtek 816a and 816b + - serial: core: fix port-lock initialisation + - serial: core: fix console port-lock regression + - x86/boot/compressed: Disable relocation relaxation + - ksm: reinstate memcg charge on copied pages + - kprobes: fix kill kprobe which has been marked as gone + - mm/thp: fix __split_huge_pmd_locked() for migration PMD + - s390: add 3f program exception handler + - s390/zcrypt: fix kmalloc 256k failure + - ehci-hcd: Move include to keep CRC stable + - arm64: paravirt: Initialize steal time when cpu is online + - powerpc/dma: Fix dma_map_ops::get_required_mask + - selftests/vm: fix display of page size in map_hugetlb + - dm/dax: Fix table reference counts + - mm/memory_hotplug: drain per-cpu pages again during memory offline + - dm: Call proper helper to determine dax support + - dax: Fix compilation for CONFIG_DAX && !CONFIG_FS_DAX + - mm: memcg: fix memcg reclaim soft lockup + - nvme-loop: set ctrl state connecting after init + - Linux 5.8.11 + * Miscellaneous Ubuntu changes + - SAUCE: drm/i915/display: Fix null deref in intel_psr_atomic_check() + - SAUCE: RDMA/core: Introduce peer memory interface + - SAUCE: fixup! RDMA/core: Introduce peer memory interface + - SAUCE: IB/mlx5: Use peer client page_shift + - SAUCE: IB/umem: Fix the Peer flow to handle pinned pages properly + - [Config] GCC version update + + -- Paolo Pisati Fri, 02 Oct 2020 12:11:07 +0200 + +linux-azure (5.8.0-1006.6) groovy; urgency=medium + + * groovy/linux-azure: 5.8.0-1006.6 -proposed tracker (LP: #1896662) + + * Miscellaneous Ubuntu changes + - [Config] Update configs following 5.8.0-20.21 rebase + + [ Ubuntu: 5.8.0-20.21 ] + + * groovy/linux: 5.8.0-20.21 -proposed tracker (LP: #1896668) + * Lenovo ThinkBook 14-IML Touchpad not showing up in /proc/bus/input/devices + (LP: #1853277) + - i2c: core: Call i2c_acpi_install_space_handler() before + i2c_acpi_register_devices() + * Enable LTR for endpoints behind VMD (LP: #1896598) + - SAUCE: PCI/ASPM: Enable LTR for endpoints behind VMD + * Remove duplicated code in ip_defrag.sh of kselftests/net (LP: #1894062) + - Revert "UBUNTU: SAUCE: selftests: net: ip_defrag: modprobe missing + nf_defrag_ipv6 support" + * [SRU] [Focal/OEM-5.6/Groovy]Fix AMD usb host controller lost after stress S3 + (LP: #1893914) + - SAUCE: xhci: workaround for S3 issue on AMD SNPS 3.0 xHC + * debian/rules editconfigs does not work on s390x to change s390x only configs + (LP: #1863116) + - [Packaging] kernelconfig -- only update/edit configurations on architectures + we have compiler support + * [Ubuntu 20.10] zPCI DMA tables and bitmap leak on hard unplug (PCI Event + 0x0304) (LP: #1896216) + - s390/pci: fix leak of DMA tables on hard unplug + * md: improve IO accounting (LP: #1891151) + - md: improve io stats accounting + * Groovy update: v5.8.10 upstream stable release (LP: #1896078) + - ARM: OMAP2+: Fix an IS_ERR() vs NULL check in _get_pwrdm() + - ARM: dts: logicpd-torpedo-baseboard: Fix broken audio + - ARM: dts: logicpd-som-lv-baseboard: Fix broken audio + - ARM: dts: logicpd-som-lv-baseboard: Fix missing video + - regulator: push allocation in regulator_ena_gpio_request() out of lock + - regulator: remove superfluous lock in regulator_resolve_coupling() + - ARM: dts: socfpga: fix register entry for timer3 on Arria10 + - ARM: dts: omap5: Fix DSI base address and clocks + - ARM: dts: ls1021a: fix QuadSPI-memory reg range + - ARM: dts: imx7ulp: Correct gpio ranges + - arm64: dts: imx: Add missing imx8mm-beacon-kit.dtb to build + - ARM: dts: imx7d-zii-rmu2: fix rgmii phy-mode for ksz9031 phy + - RDMA/rtrs-srv: Replace device_register with device_initialize and device_add + - RDMA/rxe: Fix memleak in rxe_mem_init_user + - RDMA/rxe: Drop pointless checks in rxe_init_ports + - RDMA/rxe: Fix panic when calling kmem_cache_create() + - RDMA/bnxt_re: Do not report transparent vlan from QP1 + - RDMA/bnxt_re: Fix the qp table indexing + - RDMA/bnxt_re: Static NQ depth allocation + - RDMA/bnxt_re: Fix driver crash on unaligned PSN entry address + - RDMA/bnxt_re: Remove the qp from list only if the qp destroy succeeds + - drm/sun4i: add missing put_device() call in sun8i_r40_tcon_tv_set_mux() + - arm64: dts: imx8mq: Fix TMU interrupt property + - drm/sun4i: Fix dsi dcs long write function + - scsi: qla2xxx: Fix regression on sparc64 + - scsi: libsas: Set data_dir as DMA_NONE if libata marks qc as NODATA + - drm/virtio: fix unblank + - RDMA/core: Fix unsafe linked list traversal after failing to allocate CQ + - RDMA/core: Fix reported speed and width + - scsi: megaraid_sas: Don't call disable_irq from process IRQ poll + - scsi: mpt3sas: Don't call disable_irq from IRQ poll handler + - soundwire: fix double free of dangling pointer + - Revert "kbuild: use -flive-patching when CONFIG_LIVEPATCH is enabled" + - interconnect: qcom: Fix small BW votes being truncated to zero + - padata: fix possible padata_works_lock deadlock + - drm/sun4i: Fix DE2 YVU handling + - drm/sun4i: backend: Support alpha property on lowest plane + - drm/sun4i: backend: Disable alpha on the lowest plane on the A20 + - KVM: arm64: Update page shift if stage 2 block mapping not supported + - ARM: dts: imx6sx: fix the pad QSPI1B_SCLK mux mode for uart3 + - mmc: sdhci-acpi: Clear amd_sdhci_host on reset + - mmc: sdhci-msm: Add retries when all tuning phases are found valid + - spi: stm32: Rate-limit the 'Communication suspended' message + - btrfs: fix NULL pointer dereference after failure to create snapshot + - i2c: npcm7xx: Fix timeout calculation + - block: restore a specific error code in bdev_del_partition + - seccomp: don't leak memory when filter install races + - nvme-fabrics: allow to queue requests for live queues + - spi: stm32: fix pm_runtime_get_sync() error checking + - block: Set same_page to false in __bio_try_merge_page if ret is false + - RDMA/rtrs-srv: Set .release function for rtrs srv device during device init + - IB/isert: Fix unaligned immediate-data handling + - ARM: dts: bcm: HR2: Fixed QSPI compatible string + - ARM: dts: NSP: Fixed QSPI compatible string + - ARM: dts: BCM5301X: Fixed QSPI compatible string + - arm64: dts: ns2: Fixed QSPI compatible string + - KVM: nVMX: Fix the update value of nested load IA32_PERF_GLOBAL_CTRL control + - KVM: x86: always allow writing '0' to MSR_KVM_ASYNC_PF_EN + - ARC: HSDK: wireup perf irq + - dmaengine: acpi: Put the CSRT table after using it + - MIPS: Loongson64: Do not override watch and ejtag feature + - netfilter: conntrack: allow sctp hearbeat after connection re-use + - netfilter: nft_set_rbtree: Detect partial overlap with start endpoint match + - drivers/net/wan/lapbether: Added needed_tailroom + - NFC: st95hf: Fix memleak in st95hf_in_send_cmd + - firestream: Fix memleak in fs_open + - scsi: qedf: Fix null ptr reference in qedf_stag_change_work + - ALSA: hda: Fix 2 channel swapping for Tegra + - ALSA: hda/tegra: Program WAKEEN register for Tegra + - drivers/dma/dma-jz4780: Fix race condition between probe and irq handler + - net: hns3: Fix for geneve tx checksum bug + - xfs: fix off-by-one in inode alloc block reservation calculation + - drivers/net/wan/lapbether: Set network_header before transmitting + - wireless: fix wrong 160/80+80 MHz setting + - mac80211: reduce packet loss event false positives + - cfg80211: Adjust 6 GHz frequency to channel conversion + - xfs: initialize the shortform attr header padding entry + - ARC: show_regs: fix r12 printing and simplify + - irqchip/eznps: Fix build error for !ARC700 builds + - media: gpio-ir-tx: spinlock is not needed to disable interrupts + - nvmet-tcp: Fix NULL dereference when a connect data comes in h2cdata pdu + - nvme-fabrics: don't check state NVME_CTRL_NEW for request acceptance + - nvme: have nvme_wait_freeze_timeout return if it timed out + - nvme-tcp: serialize controller teardown sequences + - nvme-tcp: fix timeout handler + - nvme-tcp: fix reset hang if controller died in the middle of a reset + - nvme-rdma: serialize controller teardown sequences + - nvme-rdma: fix timeout handler + - nvme-rdma: fix reset hang if controller died in the middle of a reset + - nvme-pci: cancel nvme device request before disabling + - HID: quirks: Set INCREMENT_USAGE_ON_DUPLICATE for all Saitek X52 devices + - HID: microsoft: Add rumble support for the 8bitdo SN30 Pro+ controller + - drivers/net/wan/hdlc_cisco: Add hard_header_len + - HID: elan: Fix memleak in elan_input_configured + - ARC: [plat-hsdk]: Switch ethernet phy-mode to rgmii-id + - cpufreq: intel_pstate: Refuse to turn off with HWP enabled + - cpufreq: intel_pstate: Fix intel_pstate_get_hwp_max() for turbo disabled + - arm64/module: set trampoline section flags regardless of + CONFIG_DYNAMIC_FTRACE + - ALSA: hda: hdmi - add Rocketlake support + - ALSA: hda: fix a runtime pm issue in SOF when integrated GPU is disabled + - ALSA: hda: use consistent HDAudio spelling in comments/docs + - drivers/net/wan/hdlc: Change the default of hard_header_len to 0 + - drm/amdgpu: Fix bug in reporting voltage for CIK + - iommu/amd: Do not force direct mapping when SME is active + - iommu/amd: Do not use IOMMUv2 functionality when SME is active + - gcov: Disable gcov build with GCC 10 + - iio: adc: mcp3422: fix locking scope + - iio: adc: mcp3422: fix locking on error path + - iio: adc: ti-ads1015: fix conversion when CONFIG_PM is not set + - iio: cros_ec: Set Gyroscope default frequency to 25Hz + - iio:light:ltr501 Fix timestamp alignment issue. + - iio:proximity:mb1232: Fix timestamp alignment and prevent data leak. + - iio:accel:bmc150-accel: Fix timestamp alignment and prevent data leak. + - iio:adc:ti-adc084s021 Fix alignment and data leak issues. + - iio:adc:ina2xx Fix timestamp alignment issue. + - iio:adc:max1118 Fix alignment of timestamp and data leak issues + - iio:adc:ti-adc081c Fix alignment and data leak issues + - iio:magnetometer:ak8975 Fix alignment and data leak issues. + - iio:light:max44000 Fix timestamp alignment and prevent data leak. + - iio:chemical:ccs811: Fix timestamp alignment and prevent data leak. + - iio: accel: kxsd9: Fix alignment of local buffer. + - iio:accel:mma7455: Fix timestamp alignment and prevent data leak. + - iio:accel:mma8452: Fix timestamp alignment and prevent data leak. + - staging: wlan-ng: fix out of bounds read in prism2sta_probe_usb() + - btrfs: require only sector size alignment for parent eb bytenr + - btrfs: fix lockdep splat in add_missing_dev + - btrfs: free data reloc tree on failed mount + - btrfs: fix wrong address when faulting in pages in the search ioctl + - thunderbolt: Disable ports that are not implemented + - kobject: Restore old behaviour of kobject_del(NULL) + - regulator: push allocation in regulator_init_coupling() outside of lock + - regulator: push allocations in create_regulator() outside of lock + - regulator: push allocation in set_consumer_device_supply() out of lock + - regulator: plug of_node leak in regulator_register()'s error path + - regulator: core: Fix slab-out-of-bounds in regulator_unlock_recursive() + - misc: eeprom: at24: register nvmem only after eeprom is ready to use + - scsi: target: iscsi: Fix data digest calculation + - scsi: lpfc: Fix setting IRQ affinity with an empty CPU mask + - scsi: target: iscsi: Fix hang in iscsit_access_np() when getting + tpg->np_login_sem + - drm/tve200: Stabilize enable/disable + - drm/msm: Split the a5xx preemption record + - drm/msm: Disable preemption on all 5xx targets + - drm/msm: Disable the RPTR shadow + - mmc: sdio: Use mmc_pre_req() / mmc_post_req() + - mmc: sdhci-of-esdhc: Don't walk device-tree on every interrupt + - nvme: Revert: Fix controller creation races with teardown flow + - rbd: require global CAP_SYS_ADMIN for mapping and unmapping + - RDMA/rxe: Fix the parent sysfs read when the interface has 15 chars + - RDMA/mlx4: Read pkey table length instead of hardcoded value + - fbcon: remove soft scrollback code + - fbcon: remove now unusued 'softback_lines' cursor() argument + - vgacon: remove software scrollback support + - KVM: VMX: Don't freeze guest when event delivery causes an APIC-access exit + - KVM: arm64: Do not try to map PUDs when they are folded into PMD + - kvm x86/mmu: use KVM_REQ_MMU_SYNC to sync when needed + - KVM: fix memory leak in kvm_io_bus_unregister_dev() + - Revert "usb: dwc3: meson-g12a: fix shared reset control use" + - debugfs: Fix module state check condition + - test_firmware: Test platform fw loading on non-EFI systems + - arm64: dts: imx8mp: correct sdma1 clk setting + - ARM: dts: vfxxx: Add syscon compatible with OCOTP + - video: fbdev: fix OOB read in vga_8planes_imageblit() + - staging: greybus: audio: fix uninitialized value issue + - phy: qcom-qmp: Use correct values for ipq8074 PCIe Gen2 PHY init + - usb: core: fix slab-out-of-bounds Read in read_descriptors + - USB: serial: ftdi_sio: add IDs for Xsens Mti USB converter + - USB: serial: option: support dynamic Quectel USB compositions + - USB: serial: option: add support for SIM7070/SIM7080/SIM7090 modules + - usb: Fix out of sync data toggle if a configured device is reconfigured + - usb: typec: ucsi: acpi: Check the _DEP dependencies + - usb: typec: intel_pmc_mux: Un-register the USB role switch + - usb: typec: intel_pmc_mux: Do not configure Altmode HPD High + - usb: typec: intel_pmc_mux: Do not configure SBU and HSL Orientation in + Alternate modes + - drm/msm/gpu: make ringbuffer readonly + - gcov: add support for GCC 10.1 + - Linux 5.8.10 + - [Config] GCC version update + - [Config] updateconfigs following v5.8.10 import + * Wakeup the system by touching the touchpad (LP: #1888331) + - HID: i2c-hid: Enable wakeup capability from Suspend-to-Idle + * Fix non-working NVMe after S3 (LP: #1895718) + - SAUCE: PCI: Enable ACS quirk on CML root port + * Thunderbolt3 daisy chain sometimes doesn't work (LP: #1895606) + - thunderbolt: Retry DROM read once if parsing fails + * Groovy update: v5.8.9 upstream stable release (LP: #1895634) + - io_uring: fix cancel of deferred reqs with ->files + - io_uring: fix linked deferred ->files cancellation + - RDMA/cma: Simplify DEVICE_REMOVAL for internal_id + - RDMA/cma: Using the standard locking pattern when delivering the removal + event + - RDMA/cma: Remove unneeded locking for req paths + - RDMA/cma: Execute rdma_cm destruction from a handler properly + - ipv4: Silence suspicious RCU usage warning + - ipv6: Fix sysctl max for fib_multipath_hash_policy + - netlabel: fix problems with mapping removal + - net: usb: dm9601: Add USB ID of Keenetic Plus DSL + - sctp: not disable bh in the whole sctp_get_port_local() + - taprio: Fix using wrong queues in gate mask + - tipc: fix shutdown() of connectionless socket + - tipc: fix using smp_processor_id() in preemptible + - net: disable netpoll on fresh napis + - mptcp: free acked data before waiting for more memory + - Linux 5.8.9 + * Miscellaneous Ubuntu changes + - SAUCE: Revert "selftests/bpf: Fix btf_dump test cases on 32-bit arches" + - [Config] annotations: remove VGACON_SOFT_SCROLLBACK + - packaging: arm64: add a 64KB mem pages flavour called 'generic-64k' + - packaging: arm64: generic-64k: skip ABI, modules and retpoline checks + * Miscellaneous upstream changes + - tty: hvcs: Don't NULL tty->driver_data until hvcs_cleanup() + + -- Paolo Pisati Wed, 23 Sep 2020 10:42:28 +0200 + +linux-azure (5.8.0-1005.5) groovy; urgency=medium + + * groovy/linux-azure: 5.8.0-1005.5 -proposed tracker (LP: #1895114) + + * Only notify Hyper-V for die events that are oops (LP: #1891222) + - Drivers: hv: vmbus: Only notify Hyper-V for die events that are oops + + [ Ubuntu: 5.8.0-19.20 ] + + * groovy/linux: 5.8.0-19.20 -proposed tracker (LP: #1895120) + * Please switch default, hwe, oem kernel flavours governor to + CONFIG_CPU_FREQ_DEFAULT_GOV_ONDEMAND=y , such that advanced userspace + utilities such as game-mode can be later used to rev-up to to performance, + or rev-down to powersave. (LP: #1885730) + - [Config] Set the default CPU governor to ONDEMAND + * Packaging resync (LP: #1786013) + - update dkms package versions + - [Packaging] update variants + * [WD19TB] external DP failed with DRM error message (LP: #1886165) + - drm/i915/tgl+: Use the correct DP_TP_* register instances in MST encoders + - drm/i915/tgl+: Fix TBT DPLL fractional divider for 38.4MHz ref clock + * Groovy update: v5.8.8 upstream stable release (LP: #1895097) + - hwmon: (pmbus/isl68137) remove READ_TEMPERATURE_1 telemetry for RAA228228 + - HID: quirks: Always poll three more Lenovo PixArt mice + - drm/msm/dpu: Fix reservation failures in modeset + - drm/msm/dpu: Fix scale params in plane validation + - drm/msm/dpu: fix unitialized variable error + - tty: serial: qcom_geni_serial: Drop __init from qcom_geni_console_setup + - drm/msm: add shutdown support for display platform_driver + - hwmon: (applesmc) check status earlier. + - nvmet: Disable keep-alive timer when kato is cleared to 0h + - drm/msm: enable vblank during atomic commits + - habanalabs: unmap PCI bars upon iATU failure + - habanalabs: validate packet id during CB parse + - habanalabs: set clock gating according to mask + - habanalabs: proper handling of alloc size in coresight + - habanalabs: set max power according to card type + - habanalabs: validate FW file size + - habanalabs: check correct vmalloc return code + - drm/msm/a6xx: fix gmu start on newer firmware + - gfs2: add some much needed cleanup for log flushes that fail + - hv_utils: return error if host timesysnc update is stale + - hv_utils: drain the timesync packets on onchannelcallback + - ceph: don't allow setlease on cephfs + - i2c: iproc: Fix shifting 31 bits + - drm/omap: fix incorrect lock state + - irqchip/ingenic: Leave parent IRQ unmasked on suspend + - cpuidle: Fixup IRQ state + - nbd: restore default timeout when setting it to zero + - s390: don't trace preemption in percpu macros + - drm/amd/display: should check error using DC_OK + - drm/amd/display: Reject overlay plane configurations in multi-display + scenarios + - drivers: gpu: amd: Initialize amdgpu_dm_backlight_caps object to 0 in + amdgpu_dm_update_backlight_caps + - drm/amd/display: Revert HDCP disable sequence change + - drm/amd/display: Fix passive dongle mistaken as active dongle in EDID + emulation + - drm/amd/display: Keep current gain when ABM disable immediately + - drm/amd/display: Retry AUX write when fail occurs + - drm/amd/display: Fix memleak in amdgpu_dm_mode_config_init + - xen/xenbus: Fix granting of vmalloc'd memory + - fsldma: fix very broken 32-bit ppc ioread64 functionality + - dmaengine: of-dma: Fix of_dma_router_xlate's of_dma_xlate handling + - batman-adv: Avoid uninitialized chaddr when handling DHCP + - batman-adv: Fix own OGM check in aggregated OGMs + - batman-adv: bla: use netif_rx_ni when not in interrupt context + - dmaengine: at_hdmac: check return value of of_find_device_by_node() in + at_dma_xlate() + - dmaengine: at_hdmac: add missing put_device() call in at_dma_xlate() + - dmaengine: at_hdmac: add missing kfree() call in at_dma_xlate() + - rxrpc: Keep the ACK serial in a var in rxrpc_input_ack() + - rxrpc: Fix loss of RTT samples due to interposed ACK + - rxrpc: Make rxrpc_kernel_get_srtt() indicate validity + - MIPS: mm: BMIPS5000 has inclusive physical caches + - MIPS: BMIPS: Also call bmips_cpu_setup() for secondary cores + - mmc: sdhci-acpi: Fix HS400 tuning for AMDI0040 + - perf sched timehist: Fix use of CPU list with summary option + - perf top: Skip side-band event setup if HAVE_LIBBPF_SUPPORT is not set + - netfilter: nf_tables: add NFTA_SET_USERDATA if not null + - netfilter: nf_tables: incorrect enum nft_list_attributes definition + - netfilter: nf_tables: fix destination register zeroing + - net: hns: Fix memleak in hns_nic_dev_probe + - net: systemport: Fix memleak in bcm_sysport_probe + - ravb: Fixed to be able to unload modules + - net: arc_emac: Fix memleak in arc_mdio_probe + - bpf: Fix a buffer out-of-bound access when filling raw_tp link_info + - dmaengine: pl330: Fix burst length if burst size is smaller than bus width + - dmaengine: ti: k3-udma: Fix the TR initialization for prep_slave_sg + - gtp: add GTPA_LINK info to msg sent to userspace + - net: ethernet: ti: cpsw: fix clean up of vlan mc entries for host port + - net: ethernet: ti: cpsw_new: fix clean up of vlan mc entries for host port + - bnxt_en: Don't query FW when netif_running() is false. + - bnxt_en: Check for zero dir entries in NVRAM. + - bnxt_en: Fix ethtool -S statitics with XDP or TCs enabled. + - bnxt_en: Fix PCI AER error recovery flow + - bnxt_en: Fix possible crash in bnxt_fw_reset_task(). + - bnxt_en: fix HWRM error when querying VF temperature + - xfs: finish dfops on every insert range shift iteration + - xfs: fix boundary test in xfs_attr_shortform_verify + - bnxt: don't enable NAPI until rings are ready + - media: vicodec: add missing v4l2_ctrl_request_hdl_put() + - media: cedrus: Add missing v4l2_ctrl_request_hdl_put() + - net: ethernet: ti: cpsw_new: fix error handling in + cpsw_ndo_vlan_rx_kill_vid() + - media: i2c: imx214: select V4L2_FWNODE + - selftests/bpf: Fix massive output from test_maps + - net: dsa: mt7530: fix advertising unsupported 1000baseT_Half + - netfilter: nfnetlink: nfnetlink_unicast() reports EAGAIN instead of ENOBUFS + - nvmet-fc: Fix a missed _irqsave version of spin_lock in + 'nvmet_fc_fod_op_done()' + - nvme: fix controller instance leak + - netfilter: conntrack: do not auto-delete clash entries on reply + - opp: Don't drop reference for an OPP table that was never parsed + - cxgb4: fix thermal zone device registration + - net: ethernet: ti: am65-cpsw: fix rmii 100Mbit link mode + - MIPS: perf: Fix wrong check condition of Loongson event IDs + - block: fix locking in bdev_del_partition + - perf top/report: Fix infinite loop in the TUI for grouped events + - perf cs-etm: Fix corrupt data after perf inject from + - perf intel-pt: Fix corrupt data after perf inject from + - perf tools: Correct SNOOPX field offset + - net: ethernet: mlx4: Fix memory allocation in mlx4_buddy_init() + - fix regression in "epoll: Keep a reference on files added to the check list" + - net: bcmgenet: fix mask check in bcmgenet_validate_flow() + - net: gemini: Fix another missing clk_disable_unprepare() in probe + - nfp: flower: fix ABI mismatch between driver and firmware + - net: dp83867: Fix WoL SecureOn password + - MIPS: add missing MSACSR and upper MSA initialization + - MIPS: SNI: Fix SCSI interrupt + - xfs: fix xfs_bmap_validate_extent_raw when checking attr fork of rt files + - perf jevents: Fix suspicious code in fixregex() + - perf stat: Turn off summary for interval mode by default + - perf bench: The do_run_multi_threaded() function must use + IS_ERR(perf_session__new()) + - tg3: Fix soft lockup when tg3_reset_task() fails. + - x86, fakenuma: Fix invalid starting node ID + - iommu/vt-d: Serialize IOMMU GCMD register modifications + - thermal: ti-soc-thermal: Fix bogus thermal shutdowns for omap4430 + - thermal: qcom-spmi-temp-alarm: Don't suppress negative temp + - iommu/amd: Restore IRTE.RemapEn bit after programming IRTE + - iommu/amd: Use cmpxchg_double() when updating 128-bit IRTE + - include/linux/log2.h: add missing () around n in roundup_pow_of_two() + - iommu/vt-d: Handle 36bit addressing for x86-32 + - tracing/kprobes, x86/ptrace: Fix regs argument order for i386 + - x86/entry: Fix AC assertion + - x86/debug: Allow a single level of #DB recursion + - ext2: don't update mtime on COW faults + - xfs: don't update mtime on COW faults + - ARC: perf: don't bail setup if pct irq missing in device-tree + - arc: fix memory initialization for systems with two memory banks + - btrfs: drop path before adding new uuid tree entry + - btrfs: fix potential deadlock in the search ioctl + - btrfs: allocate scrub workqueues outside of locks + - btrfs: set the correct lockdep class for new nodes + - btrfs: set the lockdep class for log tree extent buffers + - btrfs: block-group: fix free-space bitmap threshold + - btrfs: tree-checker: fix the error message for transid error + - Bluetooth: Return NOTIFY_DONE for hci_suspend_notifier + - x86/mm/32: Bring back vmalloc faulting on x86_32 + - Revert "ALSA: hda: Add support for Loongson 7A1000 controller" + - ALSA: ca0106: fix error code handling + - ALSA: usb-audio: Add basic capture support for Pioneer DJ DJM-250MK2 + - ALSA: usb-audio: Add implicit feedback quirk for UR22C + - ALSA: pcm: oss: Remove superfluous WARN_ON() for mulaw sanity check + - ALSA: hda/hdmi: always check pin power status in i915 pin fixup + - ALSA: firewire-digi00x: exclude Avid Adrenaline from detection + - ALSA: hda - Fix silent audio output and corrupted input on MSI X570-A PRO + - ALSA; firewire-tascam: exclude Tascam FE-8 from detection + - ALSA: hda/realtek: Add quirk for Samsung Galaxy Book Ion NT950XCJ-X716A + - ALSA: hda/realtek - Improved routing for Thinkpad X1 7th/8th Gen + - arm64: dts: mt7622: add reset node for mmc device + - mmc: mediatek: add optional module reset property + - mmc: dt-bindings: Add resets/reset-names for Mediatek MMC bindings + - mmc: sdhci-pci: Fix SDHCI_RESET_ALL for CQHCI for Intel GLK-based + controllers + - media: rc: do not access device via sysfs after rc_unregister_device() + - media: rc: uevent sysfs file races with rc_unregister_device() + - affs: fix basic permission bits to actually work + - block: allow for_each_bvec to support zero len bvec + - block: ensure bdi->io_pages is always initialized + - io_uring: set table->files[i] to NULL when io_sqe_file_register failed + - io_uring: fix removing the wrong file in __io_sqe_files_update() + - s390: fix GENERIC_LOCKBREAK dependency typo in Kconfig + - libata: implement ATA_HORKAGE_MAX_TRIM_128M and apply to Sandisks + - mips/oprofile: Fix fallthrough placement + - blk-iocost: ioc_pd_free() shouldn't assume irq disabled + - blk-stat: make q->stats->lock irqsafe + - dmaengine: dw-edma: Fix scatter-gather address calculation + - drm/i915: Fix sha_text population code + - drm/amd/pm: avoid false alarm due to confusing softwareshutdowntemp setting + - drm/amdgpu: Specify get_argument function for ci_smu_funcs + - dm writecache: handle DAX to partitions on persistent memory correctly + - dm mpath: fix racey management of PG initialization + - dm integrity: fix error reporting in bitmap mode after creation + - dm crypt: Initialize crypto wait structures + - dm cache metadata: Avoid returning cmd->bm wild pointer on error + - dm thin metadata: Avoid returning cmd->bm wild pointer on error + - dm thin metadata: Fix use-after-free in dm_bm_set_read_only + - mm: slub: fix conversion of freelist_corrupted() + - mm: track page table modifications in __apply_to_page_range() + - mm: madvise: fix vma user-after-free + - mm/rmap: fixup copying of soft dirty and uffd ptes + - io_uring: no read/write-retry on -EAGAIN error and O_NONBLOCK marked file + - perf record: Correct the help info of option "--no-bpf-event" + - kconfig: streamline_config.pl: check defined(ENV variable) before using it + - sdhci: tegra: Add missing TMCLK for data timeout + - checkpatch: fix the usage of capture group ( ... ) + - mm/migrate: fixup setting UFFD_WP flag + - mm/hugetlb: try preferred node first when alloc gigantic page from cma + - mm/hugetlb: fix a race between hugetlb sysctl handlers + - mm/khugepaged.c: fix khugepaged's request size in collapse_file + - cfg80211: regulatory: reject invalid hints + - net: usb: Fix uninit-was-stored issue in asix_read_phy_addr() + - Linux 5.8.8 + * Groovy update: v5.8.7 upstream stable release (LP: #1894959) + - HID: core: Correctly handle ReportSize being zero + - HID: core: Sanitize event code and type when mapping input + - netfilter: nft_set_rbtree: Handle outcomes of tree rotations in overlap + detection + - mm: fix pin vs. gup mismatch with gate pages + - selftests/x86/test_vsyscall: Improve the process_vm_readv() test + - perf record/stat: Explicitly call out event modifiers in the documentation + - media: media/v4l2-core: Fix kernel-infoleak in video_put_user() + - KVM: arm64: Add kvm_extable for vaxorcism code + - KVM: arm64: Survive synchronous exceptions caused by AT instructions + - dt-bindings: mmc: tegra: Add tmclk for Tegra210 and later + - arm64: tegra: Add missing timeout clock to Tegra194 SDMMC nodes + - arm64: tegra: Add missing timeout clock to Tegra186 SDMMC nodes + - arm64: tegra: Add missing timeout clock to Tegra210 SDMMC + - sdhci: tegra: Remove SDHCI_QUIRK_DATA_TIMEOUT_USES_SDCLK for Tegra210 + - sdhci: tegra: Remove SDHCI_QUIRK_DATA_TIMEOUT_USES_SDCLK for Tegra186 + - nl80211: fix NL80211_ATTR_HE_6GHZ_CAPABILITY usage + - scsi: target: tcmu: Optimize use of flush_dcache_page + - Linux 5.8.7 + * Groovy update: v5.8.6 upstream stable release (LP: #1894956) + - Revert "UBUNTU: SAUCE: Revert "ARM64: vdso32: Install vdso32 from + vdso_install"" + - khugepaged: khugepaged_test_exit() check mmget_still_valid() + - ASoC: intel/skl/hda - fix probe regression on systems without i915 + - ALSA: pci: delete repeated words in comments + - drm/amdgpu: fix RAS memory leak in error case + - EDAC/mc: Call edac_inc_ue_error() before panic + - ASoC: img: Fix a reference count leak in img_i2s_in_set_fmt + - ASoC: img-parallel-out: Fix a reference count leak + - ASoC: tegra: Fix reference count leaks. + - mfd: intel-lpss: Add Intel Emmitsburg PCH PCI IDs + - arm64: dts: qcom: msm8916: Pull down PDM GPIOs during sleep + - powerpc/xive: Ignore kmemleak false positives + - media: pci: ttpci: av7110: fix possible buffer overflow caused by bad DMA + value in debiirq() + - gcc-plugins/stackleak: Don't instrument itself + - blktrace: ensure our debugfs dir exists + - staging: rts5208: fix memleaks on error handling paths in probe + - scsi: target: tcmu: Fix crash on ARM during cmd completion + - mfd: intel-lpss: Add Intel Tiger Lake PCH-H PCI IDs + - iommu/iova: Don't BUG on invalid PFNs + - platform/chrome: cros_ec_sensorhub: Fix EC timestamp overflow + - drm/amdkfd: Fix reference count leaks. + - drm/radeon: fix multiple reference count leak + - drm/amdgpu: fix ref count leak in amdgpu_driver_open_kms + - drm/amd/display: fix ref count leak in amdgpu_drm_ioctl + - drm/amdgpu: fix ref count leak in amdgpu_display_crtc_set_config + - drm/amdgpu/display: fix ref count leak when pm_runtime_get_sync fails + - drm/amdgpu/fence: fix ref count leak when pm_runtime_get_sync fails + - drm/amdkfd: fix ref count leak when pm_runtime_get_sync fails + - drm/amdgpu/pm: fix ref count leak when pm_runtime_get_sync fails + - scsi: lpfc: Fix shost refcount mismatch when deleting vport + - xfs: Don't allow logging of XFS_ISTALE inodes + - scsi: target: Fix xcopy sess release leak + - selftests/powerpc: Purge extra count_pmc() calls of ebb selftests + - f2fs: remove write attribute of main_blkaddr sysfs node + - f2fs: fix error path in do_recover_data() + - MIPS: KVM: Limit Trap-and-Emulate to MIPS32R2 only + - omapfb: fix multiple reference count leaks due to pm_runtime_get_sync + - PCI: Fix pci_create_slot() reference count leak + - ARM: dts: ls1021a: output PPS signal on FIPER2 + - rtlwifi: rtl8192cu: Prevent leaking urb + - mips/vdso: Fix resource leaks in genvdso.c + - ALSA: hda: Add support for Loongson 7A1000 controller + - gpu: host1x: Put gather's BO on pinning error + - cec-api: prevent leaking memory through hole in structure + - ASoC: Intel: sof_sdw_rt711: remove properties in card remove + - HID: quirks: add NOGET quirk for Logitech GROUP + - f2fs: fix use-after-free issue + - drm/nouveau/drm/noveau: fix reference count leak in nouveau_fbcon_open + - drm/nouveau: fix reference count leak in nv50_disp_atomic_commit + - drm/nouveau: Fix reference count leak in nouveau_connector_detect + - locking/lockdep: Fix overflow in presentation of average lock-time + - btrfs: file: reserve qgroup space after the hole punch range is locked + - btrfs: make btrfs_qgroup_check_reserved_leak take btrfs_inode + - scsi: iscsi: Do not put host in iscsi_set_flashnode_param() + - netfilter: nf_tables: report EEXIST on overlaps + - ceph: fix potential mdsc use-after-free crash + - ceph: do not access the kiocb after aio requests + - scsi: fcoe: Memory leak fix in fcoe_sysfs_fcf_del() + - i2c: i801: Add support for Intel Tiger Lake PCH-H + - EDAC/ie31200: Fallback if host bridge device is already initialized + - hugetlbfs: prevent filesystem stacking of hugetlbfs + - media: davinci: vpif_capture: fix potential double free + - media: i2c: imx290: fix reset GPIO pin handling + - drm/amd/display: change global buffer to local buffer + - drm/amd/display: fix compilation error on allmodconfig + - KVM: arm64: Fix symbol dependency in __hyp_call_panic_nvhe + - powerpc/spufs: add CONFIG_COREDUMP dependency + - dmaengine: idxd: fix PCI_MSI build errors + - USB: sisusbvga: Fix a potential UB casued by left shifting a negative value + - mmc: sdhci-of-arasan: fix timings allocation code + - brcmfmac: Set timeout value when configuring power save + - pinctrl: mediatek: avoid virtual gpio trying to set reg + - pinctrl: mediatek: fix build for tristate changes + - efi: provide empty efi_enter_virtual_mode implementation + - arm64: Fix __cpu_logical_map undefined issue + - net: openvswitch: introduce common code for flushing flows + - PCI: qcom: Add missing ipq806x clocks in PCIe driver + - PCI: qcom: Change duplicate PCI reset to phy reset + - PCI: qcom: Add missing reset for ipq806x + - PM / devfreq: Fix the wrong end with semicolon + - cpufreq: intel_pstate: Fix EPP setting via sysfs in active mode + - ALSA: usb-audio: Add capture support for Saffire 6 (USB 1.1) + - nfsd: fix oops on mixed NFSv4/NFSv3 client access + - block: respect queue limit of max discard segment + - block: virtio_blk: fix handling single range discard request + - drm/msm/adreno: fix updating ring fence + - block: Fix page_is_mergeable() for compound pages + - bfq: fix blkio cgroup leakage v4 + - hwmon: (nct7904) Correct divide by 0 + - blk-mq: insert request not through ->queue_rq into sw/scheduler queue + - blkcg: fix memleak for iolatency + - nvmet: fix a memory leak + - nvme-fc: Fix wrong return value in __nvme_fc_init_request() + - nvme: multipath: round-robin: fix single non-optimized path case + - null_blk: fix passing of REQ_FUA flag in null_handle_rq + - habanalabs: Fix memory corruption in debugfs + - drm/etnaviv: always start/stop scheduler in timeout processing + - i2c: core: Don't fail PRP0001 enumeration when no ID table exist + - i2c: rcar: in slave mode, clear NACK earlier + - vdpa: ifcvf: return err when fail to request config irq + - vdpa: ifcvf: free config irq in ifcvf_free_irq() + - usb: gadget: f_tcm: Fix some resource leaks in some error paths + - video: fbdev: controlfb: Fix build for COMPILE_TEST=y && PPC_PMAC=n + - spi: stm32: clear only asserted irq flags on interrupt + - jbd2: make sure jh have b_transaction set in refile/unfile_buffer + - ext4: don't BUG on inconsistent journal feature + - ext4: handle read only external journal device + - ext4: skip non-loaded groups at cr=0/1 when scanning for good groups + - drm/virtio: fix memory leak in virtio_gpu_cleanup_object() + - ext4: abort the filesystem if failed to async write metadata buffer + - jbd2: abort journal if free a async write error metadata buffer + - ext4: handle option set by mount flags correctly + - ext4: handle error of ext4_setup_system_zone() on remount + - ext4: correctly restore system zone info when remount fails + - fs: prevent BUG_ON in submit_bh_wbc() + - spi: stm32h7: fix race condition at end of transfer + - spi: stm32: fix fifo threshold level in case of short transfer + - spi: stm32: fix stm32_spi_prepare_mbr in case of odd clk_rate + - spi: stm32: always perform registers configuration prior to transfer + - drm/amd/powerplay: correct Vega20 cached smu feature state + - drm/amd/powerplay: correct UVD/VCE PG state on custom pptable uploading + - drm/amd/display: Fix LFC multiplier changing erratically + - drm/amd/display: Switch to immediate mode for updating infopackets + - selftests/bpf: Fix segmentation fault in test_progs + - netfilter: avoid ipv6 -> nf_defrag_ipv6 module dependency + - libbpf: Prevent overriding errno when logging errors + - tools/bpftool: Fix compilation warnings in 32-bit mode + - selftest/bpf: Fix compilation warnings in 32-bit mode + - selftests/bpf: Fix btf_dump test cases on 32-bit arches + - selftests/bpf: Correct various core_reloc 64-bit assumptions + - can: j1939: transport: j1939_xtp_rx_dat_one(): compare own packets to detect + corruptions + - dma-pool: fix coherent pool allocations for IOMMU mappings + - dma-pool: Only allocate from CMA when in same memory zone + - drivers/net/wan/hdlc_x25: Added needed_headroom and a skb->len check + - ALSA: hda/realtek: Add model alc298-samsung-headphone + - s390/cio: add cond_resched() in the slow_eval_known_fn() loop + - ASoC: wm8994: Avoid attempts to read unreadable registers + - ALSA: usb-audio: ignore broken processing/extension unit + - selftests: disable rp_filter for icmp_redirect.sh + - scsi: fcoe: Fix I/O path allocation + - scsi: ufs: Fix possible infinite loop in ufshcd_hold + - scsi: ufs: Improve interrupt handling for shared interrupts + - scsi: ufs: Clean up completed request without interrupt notification + - scsi: scsi_debug: Fix scp is NULL errors + - scsi: qla2xxx: Flush all sessions on zone disable + - scsi: qla2xxx: Flush I/O on zone disable + - scsi: qla2xxx: Indicate correct supported speeds for Mezz card + - scsi: qla2xxx: Fix login timeout + - scsi: qla2xxx: Check if FW supports MQ before enabling + - scsi: qla2xxx: Fix null pointer access during disconnect from subsystem + - Revert "scsi: qla2xxx: Fix crash on qla2x00_mailbox_command" + - macvlan: validate setting of multiple remote source MAC addresses + - net: gianfar: Add of_node_put() before goto statement + - drm/amdgpu: fix NULL pointer access issue when unloading driver + - drm/amdkfd: fix the wrong sdma instance query for renoir + - bpf: Fix a rcu_sched stall issue with bpf task/task_file iterator + - bpf: Avoid visit same object multiple times + - ext4: limit the length of per-inode prealloc list + - powerpc/perf: Fix soft lockups due to missed interrupt accounting + - libbpf: Fix map index used in error message + - bpf: selftests: global_funcs: Check err_str before strstr + - arm64: Move handling of erratum 1418040 into C code + - arm64: Allow booting of late CPUs affected by erratum 1418040 + - hwmon: (gsc-hwmon) Scale temperature to millidegrees + - block: fix get_max_io_size() + - block: loop: set discard granularity and alignment for block device backed + loop + - blk-mq: order adding requests to hctx->dispatch and checking SCHED_RESTART + - btrfs: reset compression level for lzo on remount + - btrfs: check the right error variable in btrfs_del_dir_entries_in_log + - btrfs: fix space cache memory leak after transaction abort + - btrfs: detect nocow for swap after snapshot delete + - fbcon: prevent user font height or width change from causing potential out- + of-bounds access + - USB: lvtest: return proper error code in probe + - vt: defer kfree() of vc_screenbuf in vc_do_resize() + - vt_ioctl: change VT_RESIZEX ioctl to check for error return from vc_resize() + - serial: samsung: Removes the IRQ not found warning + - serial: pl011: Fix oops on -EPROBE_DEFER + - serial: pl011: Don't leak amba_ports entry on driver register error + - serial: stm32: avoid kernel warning on absence of optional IRQ + - serial: 8250_exar: Fix number of ports for Commtech PCIe cards + - serial: 8250: change lock order in serial8250_do_startup() + - io_uring: clear req->result on IOPOLL re-issue + - writeback: Protect inode->i_io_list with inode->i_lock + - writeback: Avoid skipping inode writeback + - writeback: Fix sync livelock due to b_dirty_time processing + - XEN uses irqdesc::irq_data_common::handler_data to store a per interrupt XEN + data pointer which contains XEN specific information. + - usb: renesas-xhci: remove version check + - usb: host: xhci-tegra: otg usb2/usb3 port init + - usb: host: xhci-tegra: fix tegra_xusb_get_phy() + - usb: host: xhci: fix ep context print mismatch in debugfs + - xhci: Always restore EP_SOFT_CLEAR_TOGGLE even if ep reset failed + - io-wq: fix hang after cancelling pending hashed work + - KVM: arm64: Set HCR_EL2.PTW to prevent AT taking synchronous exception + - arm64: vdso32: make vdso32 install conditional + - PM: sleep: core: Fix the handling of pending runtime resume requests + - powerpc/32s: Disable VMAP stack which CONFIG_ADB_PMU + - powerpc/perf: Fix crashes with generic_compat_pmu & BHRB + - device property: Fix the secondary firmware node handling in + set_primary_fwnode() + - crypto: af_alg - Work around empty control messages without MSG_MORE + - usbip: Implement a match function to fix usbip + - genirq/matrix: Deal with the sillyness of for_each_cpu() on UP + - irqchip/stm32-exti: Avoid losing interrupts due to clearing pending bits by + mistake + - x86/irq: Unbreak interrupt affinity setting + - x86/hotplug: Silence APIC only after all interrupts are migrated + - drm/i915: Fix cmd parser desc matching with masks + - drm/etnaviv: fix external abort seen on GC600 rev 0x19 + - drm/dp_mst: Don't return error code when crtc is null + - drm/modeset-lock: Take the modeset BKL for legacy drivers + - drm/amdgpu: Fix buffer overflow in INFO ioctl + - drm/amd/display: use correct scale for actual_brightness + - drm/amdgpu/gfx10: refine mgcg setting + - drm/amd/powerplay: Fix hardmins not being sent to SMU for RV + - drm/amd/pm: correct Vega10 swctf limit setting + - drm/amd/pm: correct Vega12 swctf limit setting + - drm/amd/pm: correct Vega20 swctf limit setting + - drm/amd/pm: correct the thermal alert temperature limit settings + - USB: yurex: Fix bad gfp argument + - usb: uas: Add quirk for PNY Pro Elite + - USB: quirks: Ignore duplicate endpoint on Sound Devices MixPre-D + - USB: Ignore UAS for JMicron JMS567 ATA/ATAPI Bridge + - usb: host: ohci-exynos: Fix error handling in exynos_ohci_probe() + - USB: gadget: u_f: add overflow checks to VLA macros + - USB: gadget: f_ncm: add bounds checks to ncm_unwrap_ntb() + - USB: gadget: u_f: Unbreak offset calculation in VLAs + - usb: dwc3: gadget: Don't setup more than requested + - usb: dwc3: gadget: Fix handling ZLP + - usb: dwc3: gadget: Handle ZLP for sg requests + - USB: cdc-acm: rework notification_buffer resizing + - usb: storage: Add unusual_uas entry for Sony PSZ drives + - USB: Also match device drivers using the ->match vfunc + - USB: Fix device driver race + - usb: typec: ucsi: Fix AB BA lock inversion + - usb: typec: ucsi: Fix 2 unlocked ucsi_run_command calls + - usb: typec: ucsi: Rework ppm_lock handling + - usb: typec: ucsi: Hold con->lock for the entire duration of + ucsi_register_port() + - usb: typec: tcpm: Fix Fix source hard reset response for TDA 2.3.1.1 and TDA + 2.3.1.2 failures + - io_uring: don't recurse on tsk->sighand->siglock with signalfd + - io_uring: don't use poll handler if file can't be nonblocking read/written + - io_uring: make offset == -1 consistent with preadv2/pwritev2 + - drm/atomic-helper: reset vblank on crtc reset + - fbmem: pull fbcon_update_vcs() out of fb_set_var() + - mm/page_counter: fix various data races at memsw + - HID: hiddev: Fix slab-out-of-bounds write in hiddev_ioctl_usage() + - drm/vmwgfx/stdu: Use drm_mode_config_reset + - drm/vmwgfx/sou: Use drm_mode_config_reset + - drm/vmwgfx/ldu: Use drm_mode_config_reset + - dma-pool: Fix an uninitialized variable bug in atomic_pool_expand() + - ALSA: usb-audio: Update documentation comment for MS2109 quirk + - Linux 5.8.6 + - [Config] GCC version update + * DELL LATITUDE 5491 touchscreen doesn't work (LP: #1889446) // Groovy update: + v5.8.6 upstream stable release (LP: #1894956) + - USB: quirks: Add no-lpm quirk for another Raydium touchscreen + * [NUC8CCHK][HDA-Intel - HDA Intel PCH, playback] No sound at all + (LP: #1875199) // Groovy update: v5.8.6 upstream stable release + (LP: #1894956) + - ALSA: hda/realtek: Fix pin default on Intel NUC 8 Rugged + * CVE-2020-14386 + - net/packet: fix overflow in tpacket_rcv + * dkms-build: downloads fail in private PPAs (LP: #1883874) + - dkms-build: apt-cache policy elides username:password information + * Groovy update: v5.8.5 upstream stable release (LP: #1893237) + - gre6: Fix reception with IP6_TNL_F_RCV_DSCP_COPY + - net: Fix potential wrong skb->protocol in skb_vlan_untag() + - net: nexthop: don't allow empty NHA_GROUP + - net: qrtr: fix usage of idr in port assignment to socket + - net/sched: act_ct: Fix skb double-free in tcf_ct_handle_fragments() error + flow + - net: sctp: Fix negotiation of the number of data streams. + - net/smc: Prevent kernel-infoleak in __smc_diag_dump() + - tipc: call rcu_read_lock() in tipc_aead_encrypt_done() + - tipc: fix uninit skb->data in tipc_nl_compat_dumpit() + - net: ena: Make missed_tx stat incremental + - ethtool: Fix preserving of wanted feature bits in netlink interface + - ethtool: Account for hw_features in netlink interface + - ethtool: Don't omit the netlink reply if no features were changed + - netlink: fix state reallocation in policy export + - io_uring: fix missing ->mm on exit + - binfmt_flat: revert "binfmt_flat: don't offset the data start" + - Linux 5.8.5 + * Miscellaneous Ubuntu changes + - [Config] Re-enable UEFI signing for arm64 + - SAUCE: Revert "UBUNTU: SAUCE: export __get_vm_area_caller() and + map_kernel_range()" + + -- Paolo Pisati Fri, 11 Sep 2020 14:01:28 +0200 + +linux-azure (5.8.0-1004.4) groovy; urgency=medium + + * groovy/linux-azure: 5.8.0-1004.4 -proposed tracker (LP: #1893046) + + * Miscellaneous Ubuntu changes + - [packaging] add dwarves dependency + - [Config] Remove variables for wireguard dkms build + - [Config] Enable nvidia server dkms build + - [Config] updateconfigs following 5.8.0-18.19 rebase + - [Config] linux-azure: move wireguard to the main modules package + + [ Ubuntu: 5.8.0-18.19 ] + + * groovy/linux: 5.8.0-18.19 -proposed tracker (LP: #1893047) + * Packaging resync (LP: #1786013) + - update dkms package versions + * Groovy update: v5.8.4 upstream stable release (LP: #1893048) + - drm/vgem: Replace opencoded version of drm_gem_dumb_map_offset() + - drm/panel-simple: Fix inverted V/H SYNC for Frida FRD350H54004 panel + - drm/ast: Remove unused code paths for AST 1180 + - drm/ast: Initialize DRAM type before posting GPU + - khugepaged: adjust VM_BUG_ON_MM() in __khugepaged_enter() + - ALSA: hda: avoid reset of sdo_limit + - ALSA: hda/realtek: Add quirk for Samsung Galaxy Flex Book + - ALSA: hda/realtek: Add quirk for Samsung Galaxy Book Ion + - can: j1939: transport: j1939_session_tx_dat(): fix use-after-free read in + j1939_tp_txtimer() + - can: j1939: socket: j1939_sk_bind(): make sure ml_priv is allocated + - spi: Prevent adding devices below an unregistering controller + - io_uring: find and cancel head link async work on files exit + - mm/vunmap: add cond_resched() in vunmap_pmd_range + - romfs: fix uninitialized memory leak in romfs_dev_read() + - kernel/relay.c: fix memleak on destroy relay channel + - uprobes: __replace_page() avoid BUG in munlock_vma_page() + - squashfs: avoid bio_alloc() failure with 1Mbyte blocks + - mm: include CMA pages in lowmem_reserve at boot + - mm, page_alloc: fix core hung in free_pcppages_bulk() + - ASoC: amd: renoir: restore two more registers during resume + - RDMA/hfi1: Correct an interlock issue for TID RDMA WRITE request + - opp: Enable resources again if they were disabled earlier + - opp: Put opp table in dev_pm_opp_set_rate() for empty tables + - opp: Put opp table in dev_pm_opp_set_rate() if _set_opp_bw() fails + - ext4: do not block RWF_NOWAIT dio write on unallocated space + - ext4: fix checking of directory entry validity for inline directories + - jbd2: add the missing unlock_buffer() in the error path of + jbd2_write_superblock() + - scsi: zfcp: Fix use-after-free in request timeout handlers + - selftests: kvm: Use a shorter encoding to clear RAX + - s390/pci: fix zpci_bus_link_virtfn() + - s390/pci: re-introduce zpci_remove_device() + - s390/pci: fix PF/VF linking on hot plug + - s390/pci: ignore stale configuration request event + - mm/memory.c: skip spurious TLB flush for retried page fault + - drm: amdgpu: Use the correct size when allocating memory + - drm/amdgpu/display: use GFP_ATOMIC in dcn20_validate_bandwidth_internal + - drm/amd/display: Fix incorrect backlight register offset for DCN + - drm/amd/display: Fix EDID parsing after resume from suspend + - drm/amd/display: Blank stream before destroying HDCP session + - drm/amd/display: Fix DFPstate hang due to view port changed + - drm/amd/display: fix pow() crashing when given base 0 + - drm/i915/pmu: Prefer drm_WARN_ON over WARN_ON + - drm/i915: Provide the perf pmu.module + - scsi: ufs: Add DELAY_BEFORE_LPM quirk for Micron devices + - scsi: target: tcmu: Fix crash in tcmu_flush_dcache_range on ARM + - media: budget-core: Improve exception handling in budget_register() + - media: coda: jpeg: add NULL check after kmalloc + - f2fs: fix to check page dirty status before writeback + - rtc: goldfish: Enable interrupt in set_alarm() when necessary + - media: vpss: clean up resources in init + - f2fs: should avoid inode eviction in synchronous path + - Input: psmouse - add a newline when printing 'proto' by sysfs + - MIPS: Fix unable to reserve memory for Crash kernel + - m68knommu: fix overwriting of bits in ColdFire V3 cache control + - svcrdma: Fix another Receive buffer leak + - xfs: fix inode quota reservation checks + - drm/ttm: fix offset in VMAs with a pg_offs in ttm_bo_vm_access + - riscv: Fixup static_obj() fail + - jffs2: fix UAF problem + - ceph: fix use-after-free for fsc->mdsc + - swiotlb-xen: use vmalloc_to_page on vmalloc virt addresses + - cpufreq: intel_pstate: Fix cpuinfo_max_freq when MSR_TURBO_RATIO_LIMIT is 0 + - scsi: libfc: Free skb in fc_disc_gpn_id_resp() for valid cases + - virtio_ring: Avoid loop when vq is broken in virtqueue_poll + - media: camss: fix memory leaks on error handling paths in probe + - tools/testing/selftests/cgroup/cgroup_util.c: cg_read_strcmp: fix null + pointer dereference + - xfs: Fix UBSAN null-ptr-deref in xfs_sysfs_init + - alpha: fix annotation of io{read,write}{16,32}be() + - fat: fix fat_ra_init() for data clusters == 0 + - fs/signalfd.c: fix inconsistent return codes for signalfd4 + - ext4: fix potential negative array index in do_split() + - drm/virtio: fix missing dma_fence_put() in virtio_gpu_execbuffer_ioctl() + - ext4: don't allow overlapping system zones + - ext4: check journal inode extents more carefully + - netfilter: nf_tables: nft_exthdr: the presence return value should be + little-endian + - spi: stm32: fixes suspend/resume management + - ASoC: q6afe-dai: mark all widgets registers as SND_SOC_NOPM + - ASoC: q6routing: add dummy register read/write function + - tools/bpftool: Make skeleton code C++17-friendly by dropping typeof() + - bpf: sock_ops ctx access may stomp registers in corner case + - bpf: sock_ops sk access may stomp registers when dst_reg = src_reg + - libbpf: Fix BTF-defined map-in-map initialization on 32-bit host arches + - can: j1939: fix kernel-infoleak in j1939_sk_sock2sockaddr_can() + - can: j1939: transport: j1939_simple_recv(): ignore local J1939 messages send + not by J1939 stack + - can: j1939: transport: add j1939_session_skb_find_by_offset() function + - igc: Fix PTP initialization + - i40e: Set RX_ONLY mode for unicast promiscuous on VLAN + - i40e: Fix crash during removing i40e driver + - net: fec: correct the error path for regulator disable in probe + - bonding: show saner speed for broadcast mode + - can: j1939: fix support for multipacket broadcast message + - can: j1939: cancel rxtimer on multipacket broadcast session complete + - can: j1939: abort multipacket broadcast session when timeout occurs + - can: j1939: add rxtimer for multipacket broadcast session + - bonding: fix a potential double-unregister + - ipvlan: fix device features + - s390/runtime_instrumentation: fix storage key handling + - s390/ptrace: fix storage key handling + - ASoC: msm8916-wcd-analog: fix register Interrupt offset + - ASoC: intel: Fix memleak in sst_media_open + - watch_queue: Limit the number of watches a user can hold + - vfio-pci: Avoid recursive read-lock usage + - vfio/type1: Add proper error unwind for vfio_iommu_replay() + - arch/ia64: Restore arch-specific pgd_offset_k implementation + - kvm: x86: Toggling CR4.SMAP does not load PDPTEs in PAE mode + - kvm: x86: Toggling CR4.PKE does not load PDPTEs in PAE mode + - scsi: ufs: ti-j721e-ufs: Fix error return in ti_j721e_ufs_probe() + - scsi: ufs: Add quirk to fix mishandling utrlclr/utmrlclr + - scsi: ufs: Add quirk to disallow reset of interrupt aggregation + - scsi: ufs: Add quirk to enable host controller without hce + - scsi: ufs: Introduce UFSHCD_QUIRK_PRDT_BYTE_GRAN quirk + - scsi: ufs: Add quirk to fix abnormal ocs fatal error + - scsi: ufs-pci: Add quirk for broken auto-hibernate for Intel EHL + - scsi: ufs: Fix interrupt error message for shared interrupts + - Revert "scsi: qla2xxx: Disable T10-DIF feature with FC-NVMe during probe" + - kconfig: qconf: do not limit the pop-up menu to the first row + - kconfig: qconf: fix signal connection to invalid slots + - efi: avoid error message when booting under Xen + - Fix build error when CONFIG_ACPI is not set/enabled: + - RDMA/bnxt_re: Do not add user qps to flushlist + - Revert "RDMA/hns: Reserve one sge in order to avoid local length error" + - afs: Fix key ref leak in afs_put_operation() + - kconfig: qconf: remove qInfo() to get back Qt4 support + - afs: Fix NULL deref in afs_dynroot_depopulate() + - ARM64: vdso32: Install vdso32 from vdso_install + - powerpc/fixmap: Fix the size of the early debug area + - bpf: Use get_file_rcu() instead of get_file() for task_file iterator + - powerpc/pseries/hotplug-cpu: wait indefinitely for vCPU death + - bonding: fix active-backup failover for current ARP slave + - net: ena: Prevent reset after device destruction + - net: ena: Change WARN_ON expression in ena_del_napi_in_range() + - net: gemini: Fix missing free_netdev() in error path of + gemini_ethernet_port_probe() + - selftests/bpf: Remove test_align leftovers + - hv_netvsc: Fix the queue_mapping in netvsc_vf_xmit() + - net: dsa: b53: check for timeout + - epoll: Keep a reference on files added to the check list + - powerpc: Fix P10 PVR revision in /proc/cpuinfo for SMT4 cores + - powerpc/pseries: Do not initiate shutdown when system is running on UPS + - EDAC/{i7core,sb,pnd2,skx}: Fix error event severity + - efi/x86: Mark kernel rodata non-executable for mixed mode + - efi: add missed destroy_workqueue when efisubsys_init fails + - efi/libstub: Stop parsing arguments at "--" + - efi/libstub: Handle NULL cmdline + - efi/libstub: Handle unterminated cmdline + - do_epoll_ctl(): clean the failure exits up a bit + - KVM: Pass MMU notifier range flags to kvm_unmap_hva_range() + - KVM: arm64: Only reschedule if MMU_NOTIFIER_RANGE_BLOCKABLE is not set + - Revert "drm/amd/display: Improve DisplayPort monitor interop" + - Linux 5.8.4 + - [Config] Update configs following 5.8.4 stable update + * Miscellaneous Ubuntu changes + - SAUCE: Revert "ARM64: vdso32: Install vdso32 from vdso_install" + + -- Paolo Pisati Thu, 27 Aug 2020 19:23:03 +0200 + +linux-azure (5.8.0-1003.3) groovy; urgency=medium + + * groovy/linux-azure: 5.8.0-1003.3 -proposed tracker (LP: #1892954) + + * Packaging resync (LP: #1786013) + - [Packaging] update variants + - [Packaging] update update.conf + + [ Ubuntu: 5.8.0-17.18 ] + + * groovy/linux: 5.8.0-17.18 -proposed tracker (LP: #1892959) + * Packaging resync (LP: #1786013) + - [Packaging] update helper scripts + - update dkms package versions + * [Hyper-V] VSS and File Copy daemons intermittently fails to start + (LP: #1891224) + - [Packaging] Bind hv_vss_daemon startup to hv_vss device + - [Packaging] bind hv_fcopy_daemon startup to hv_fcopy device + * Fix non-working USB devices plugged during system sleep (LP: #1892678) + - xhci: Do warm-reset when both CAS and XDEV_RESUME are set + * ASPM not enabled on child devices behind VMD controller (LP: #1889384) + - SAUCE: PCI/ASPM: Enable ASPM for links under VMD domain + * Groovy update: v5.8.3 upstream stable release (LP: #1892774) + - [Config] update config for ARMADA_AP_CPU_CLK + - ALSA: hda/realtek - Fix unused variable warning + - smb3: warn on confusing error scenario with sec=krb5 + - SMB3: Fix mkdir when idsfromsid configured on mount + - genirq/affinity: Make affinity setting if activated opt-in + - genirq: Unlock irq descriptor after errors + - genirq/PM: Always unlock IRQ descriptor in rearm_wake_irq() + - PCI: hotplug: ACPI: Fix context refcounting in acpiphp_grab_context() + - PCI/ATS: Add pci_pri_supported() to check device or associated PF + - PCI: Add device even if driver attach failed + - PCI: qcom: Define some PARF params needed for ipq8064 SoC + - PCI: qcom: Add support for tx term offset for rev 2.1.0 + - btrfs: allow use of global block reserve for balance item deletion + - btrfs: free anon block device right after subvolume deletion + - btrfs: don't allocate anonymous block device for user invisible roots + - btrfs: preallocate anon block device at first phase of snapshot creation + - btrfs: ref-verify: fix memory leak in add_block_entry + - btrfs: only commit the delayed inode when doing a full fsync + - btrfs: stop incremening log_batch for the log root tree when syncing log + - btrfs: only commit delayed items at fsync if we are logging a directory + - btrfs: remove no longer needed use of log_writers for the log root tree + - btrfs: don't traverse into the seed devices in show_devname + - btrfs: pass checksum type via BTRFS_IOC_FS_INFO ioctl + - btrfs: open device without device_list_mutex + - btrfs: move the chunk_mutex in btrfs_read_chunk_tree + - btrfs: relocation: review the call sites which can be interrupted by signal + - btrfs: add missing check for nocow and compression inode flags + - btrfs: avoid possible signal interruption of btrfs_drop_snapshot() on + relocation tree + - btrfs: return EROFS for BTRFS_FS_STATE_ERROR cases + - btrfs: sysfs: use NOFS for device creation + - btrfs: don't WARN if we abort a transaction with EROFS + - btrfs: fix race between page release and a fast fsync + - btrfs: don't show full path of bind mounts in subvol= + - btrfs: fix messages after changing compression level by remount + - btrfs: only search for left_info if there is no right_info in + try_merge_free_space + - btrfs: inode: fix NULL pointer dereference if inode doesn't need compression + - btrfs: fix memory leaks after failure to lookup checksums during inode + logging + - btrfs: trim: fix underflow in trim length to prevent access beyond device + boundary + - btrfs: make sure SB_I_VERSION doesn't get unset by remount + - btrfs: fix return value mixup in btrfs_get_extent + - btrfs: check correct variable after allocation in btrfs_backref_iter_alloc + - arm64: dts: qcom: sc7180: Drop the unused non-MSA SID + - arm64: perf: Correct the event index in sysfs + - dt-bindings: iio: io-channel-mux: Fix compatible string in example code + - iio: dac: ad5592r: fix unbalanced mutex unlocks in ad5592r_read_raw() + - iio: imu: st_lsm6dsx: reset hw ts after resume + - xtensa: add missing exclusive access state management + - xtensa: fix xtensa_pmu_setup prototype + - cifs: Fix leak when handling lease break for cached root fid + - powerpc/ptdump: Fix build failure in hashpagetable.c + - powerpc: Allow 4224 bytes of stack expansion for the signal frame + - powerpc: Fix circular dependency between percpu.h and mmu.h + - pinctrl: ingenic: Enhance support for IRQ_TYPE_EDGE_BOTH + - pinctrl: ingenic: Properly detect GPIO direction when configured for IRQ + - media: venus: fix multiple encoder crash + - media: vsp1: dl: Fix NULL pointer dereference on unbind + - net: ethernet: stmmac: Disable hardware multicast filter + - net: stmmac: dwmac1000: provide multicast filter fallback + - irqchip/loongson-liointc: Fix misuse of gc->mask_cache + - irqchip/gic-v4.1: Ensure accessing the correct RD when writing INVALLR + - pidfd: Add missing sock updates for pidfd_getfd() + - net/compat: Add missing sock updates for SCM_RIGHTS + - selftests/seccomp: Set NNP for TSYNC ESRCH flag test + - md/raid5: Fix Force reconstruct-write io stuck in degraded raid5 + - bcache: allocate meta data pages as compound pages + - bcache: fix overflow in offset_to_stripe() + - bcache: avoid nr_stripes overflow in bcache_device_init() + - bcache: fix bio_{start,end}_io_acct with proper device + - bcache: use disk_{start,end}_io_acct() to count I/O for bcache device + - mac80211: fix misplaced while instead of if + - appletalk: Fix atalk_proc_init() return path + - driver core: Avoid binding drivers to dead devices + - MIPS: CPU#0 is not hotpluggable + - MIPS: qi_lb60: Fix routing to audio amplifier + - MIPS: SGI-IP27: always enable NUMA in Kconfig + - ext2: fix missing percpu_counter_inc + - khugepaged: collapse_pte_mapped_thp() flush the right range + - mm/hugetlb: fix calculation of adjust_range_if_pmd_sharing_possible + - khugepaged: collapse_pte_mapped_thp() protect the pmd lock + - khugepaged: retract_page_tables() remember to test exit + - hugetlbfs: remove call to huge_pte_alloc without i_mmap_rwsem + - mm/shuffle: don't move pages between zones and don't read garbage memmaps + - mm: fix kthread_use_mm() vs TLB invalidate + - ocfs2: change slot number type s16 to u16 + - mm/page_counter.c: fix protection usage propagation + - cma: don't quit at first error when activating reserved areas + - mm/memory_hotplug: fix unpaired mem_hotplug_begin/done + - ftrace: Setup correct FTRACE_FL_REGS flags for module + - kprobes: Fix NULL pointer dereference at kprobe_ftrace_handler + - tracing/hwlat: Honor the tracing_cpumask + - tracing: Use trace_sched_process_free() instead of exit() for pid tracing + - watchdog: f71808e_wdt: indicate WDIOF_CARDRESET support in + watchdog_info.options + - watchdog: f71808e_wdt: remove use of wrong watchdog_info option + - watchdog: f71808e_wdt: clear watchdog timeout occurred flag + - ceph: set sec_context xattr on symlink creation + - ceph: handle zero-length feature mask in session messages + - pseries: Fix 64 bit logical memory block panic + - dm ebs: Fix incorrect checking for REQ_OP_FLUSH + - dm: don't call report zones for more than the user requested + - module: Correctly truncate sysfs sections output + - bootconfig: Fix to find the initargs correctly + - perf probe: Fix wrong variable warning when the probe point is not found + - perf probe: Fix memory leakage when the probe point is not found + - perf intel-pt: Fix FUP packet state + - perf intel-pt: Fix duplicate branch after CBR + - gfs2: Fix refcount leak in gfs2_glock_poke + - gfs2: Never call gfs2_block_zero_range with an open transaction + - remoteproc: qcom: q6v5: Update running state before requesting stop + - remoteproc: qcom_q6v5_mss: Validate MBA firmware size before load + - remoteproc: qcom_q6v5_mss: Validate modem blob firmware size before load + - libnvdimm: Validate command family indices + - drm/imx: imx-ldb: Disable both channels for split mode in enc->disable() + - drm/ingenic: Fix incorrect assumption about plane->index + - crypto: algif_aead - Only wake up when ctx->more is zero + - mfd: arizona: Ensure 32k clock is put on driver unbind and error + - octeontx2-af: change (struct qmem)->entry_sz from u8 to u16 + - mtd: rawnand: fsl_upm: Remove unused mtd var + - mtd: rawnand: brcmnand: ECC error handling on EDU transfers + - platform/chrome: cros_ec_ishtp: Fix a double-unlock issue + - drm/amdgpu/debugfs: fix memory leak when pm_runtime_get_sync failed + - RDMA/ipoib: Return void from ipoib_ib_dev_stop() + - RDMA/ipoib: Fix ABBA deadlock with ipoib_reap_ah() + - rtc: cpcap: fix range + - media: staging: rkisp1: remove macro RKISP1_DIR_SINK_SRC + - media: staging: rkisp1: rename macros 'RKISP1_DIR_*' to 'RKISP1_ISP_SD_*' + - media: staging: rkisp1: rsz: set default format if the given format is not + RKISP1_ISP_SD_SRC + - media: rockchip: rga: Introduce color fmt macros and refactor CSC mode logic + - media: rockchip: rga: Only set output CSC mode for RGB input + - IB/uverbs: Set IOVA on IB MR in uverbs layer + - sched/uclamp: Protect uclamp fast path code with static key + - selftests/bpf: Test_progs indicate to shell on non-actions + - bpf: selftests: Restore netns after each test + - selftests/bpf: test_progs use another shell exit on non-actions + - selftests/bpf: test_progs avoid minus shell exit codes + - USB: serial: ftdi_sio: make process-packet buffer unsigned + - USB: serial: ftdi_sio: clean up receive processing + - crypto: af_alg - Fix regression on empty requests + - devres: keep both device name and resource name in pretty name + - RDMA/counter: Only bind user QPs in auto mode + - RDMA/counter: Allow manually bind QPs with different pids to same counter + - mmc: renesas_sdhi_internal_dmac: clean up the code for dma complete + - rtw88: pci: disable aspm for platform inter-op with module parameter + - rtc: pl031: fix set_alarm by adding back call to alarm_irq_enable + - crypto: caam - Remove broken arc4 support + - gpu: ipu-v3: image-convert: Combine rotate/no-rotate irq handlers + - gpu: ipu-v3: image-convert: Wait for all EOFs before completing a tile + - dm rq: don't call blk_mq_queue_stopped() in dm_stop_queue() + - ima: Fail rule parsing when appraise_flag=blacklist is unsupportable + - f2fs: compress: fix to avoid memory leak on cc->cpages + - clk: actions: Fix h_clk for Actions S500 SoC + - selftests/powerpc: ptrace-pkey: Rename variables to make it easier to follow + code + - selftests/powerpc: ptrace-pkey: Update the test to mark an invalid pkey + correctly + - selftests/powerpc: ptrace-pkey: Don't update expected UAMOR value + - iommu/omap: Check for failure of a call to omap_iommu_dump_ctx + - clk: qcom: gcc: fix sm8150 GPU and NPU clocks + - clk: qcom: clk-alpha-pll: remove unused/incorrect PLL_CAL_VAL + - iommu/vt-d: Handle non-page aligned address + - iommu/vt-d: Enforce PASID devTLB field mask + - iommu/vt-d: Warn on out-of-range invalidation address + - iommu/vt-d: Disable multiple GPASID-dev bind + - i2c: rcar: slave: only send STOP event when we have been addressed + - f2fs: compress: fix to update isize when overwriting compressed file + - clk: qcom: gcc-sdm660: Fix up gcc_mss_mnoc_bimc_axi_clk + - clk: clk-atlas6: fix return value check in atlas6_clk_init() + - nvme: fix deadlock in disconnect during scan_work and/or ana_work + - sched/uclamp: Fix a deadlock when enabling uclamp static key + - pwm: bcm-iproc: handle clk_get_rate() return + - perf tools: Fix term parsing for raw syntax + - tools build feature: Use CC and CXX from parent + - i2c: rcar: avoid race when unregistering slave + - nfs: ensure correct writeback errors are returned on close() + - ubi: fastmap: Don't produce the initial next anchor PEB when fastmap is + disabled + - ubi: fastmap: Free fastmap next anchor peb during detach + - ubifs: Fix wrong orphan node deletion in ubifs_jnl_update|rename + - [Config] update config for CLK_HSDK + - clk: hsdk: Fix bad dependency on IOMEM + - clk: bcm2835: Do not use prediv with bcm2711's PLLs + - libnvdimm/security: fix a typo + - libnvdimm/security: ensure sysfs poll thread woke up and fetch updated attr + - openrisc: Fix oops caused when dumping stack + - perf evsel: Don't set sample_regs_intr/sample_regs_user for dummy event + - scsi: lpfc: nvmet: Avoid hang / use-after-free again when destroying + targetport + - nfs: nfs_file_write() should check for writeback errors + - watchdog: initialize device before misc_register + - watchdog: rti-wdt: balance pm runtime enable calls + - md-cluster: Fix potential error pointer dereference in resize_bitmaps() + - kprobes: Fix compiler warning for !CONFIG_KPROBES_ON_FTRACE + - x86/tsr: Fix tsc frequency enumeration bug on Lightning Mountain SoC + - x86/bugs/multihit: Fix mitigation reporting when VMX is not in use + - selftests/bpf: Prevent runqslower from racing on building bpftool + - Input: sentelic - fix error return when fsp_reg_write fails + - perf record: Skip side-band event setup if HAVE_LIBBPF_SUPPORT is not set + - selftests/bpf: Fix silent Makefile output + - vdpa_sim: init iommu lock + - recordmcount: Fix build failure on non arm64 + - vdpa: Fix pointer math bug in vdpasim_get_config() + - drm/vmwgfx: Use correct vmw_legacy_display_unit pointer + - drm/vmwgfx: Fix two list_for_each loop exit tests + - s390/test_unwind: fix possible memleak in test_unwind() + - s390/Kconfig: add missing ZCRYPT dependency to VFIO_AP + - net: qcom/emac: add missed clk_disable_unprepare in error path of + emac_clks_phase1_init + - nfs: Fix getxattr kernel panic and memory overflow + - NFS: Fix flexfiles read failover + - lib/test_lockup.c: fix return value of test_lockup_init() + - fs/minix: set s_maxbytes correctly + - fs/minix: fix block limit check for V1 filesystems + - fs/minix: remove expected error message in block_to_path() + - fs/ufs: avoid potential u32 multiplication overflow + - test_kmod: avoid potential double free in trigger_config_run_type() + - i2c: iproc: fix race between client unreg and isr + - mfd: dln2: Run event handler loop under spinlock + - crypto: algif_aead - fix uninitialized ctx->init + - ALSA: echoaudio: Fix potential Oops in snd_echo_resume() + - perf bench mem: Always memset source before memcpy + - tools build feature: Quote CC and CXX for their arguments + - perf/x86/rapl: Fix missing psys sysfs attributes + - sh: landisk: Add missing initialization of sh_io_port_base + - sh: fault: Fix duplicate printing of "PC:" + - drm/i915/gt: Force the GT reset on shutdown + - drm/panfrost: Use kvfree() to free bo->sgts + - drm/dp_mst: Fix the DDC I2C device registration of an MST port + - drm/dp_mst: Fix timeout handling of MST down messages + - drm/dp_mst: Fix the DDC I2C device unregistration of an MST port + - drm/omap: force runtime PM suspend on system suspend + - drm/tidss: fix modeset init for DPI panels + - drm: Added orientation quirk for ASUS tablet model T103HAF + - drm: fix drm_dp_mst_port refcount leaks in drm_dp_mst_allocate_vcpi + - drm/amdgpu: Fix bug where DPM is not enabled after hibernate and resume + - drm/amd/display: Fix dmesg warning from setting abm level + - drm/amd/display: dchubbub p-state warning during surface planes switch + - Linux 5.8.3 + * update ENA driver for LLQ acceleration mode, new hw support (LP: #1890845) + - ena_netdev: use generic power management + - net: ena: Fix using plain integer as NULL pointer in ena_init_napi_in_range + - net: ena: avoid unnecessary rearming of interrupt vector when busy-polling + - net: ena: add reserved PCI device ID + - net: ena: cosmetic: satisfy gcc warning + - net: ena: cosmetic: change ena_com_stats_admin stats to u64 + - net: ena: add support for traffic mirroring + - net: ena: enable support of rss hash key and function changes + - net: ena: move llq configuration from ena_probe to ena_device_init() + - net: ena: support new LLQ acceleration mode + * DMA config issues on Synquacer ARM64 platform cause SATA configuration + failures on boot (LP: #1892138) + - of/address: check for invalid range.cpu_addr + * [SRU] Fix acpi backlight issue on some thinkpads (LP: #1892010) + - platform/x86: thinkpad_acpi: not loading brightness_init when _BCL invalid + * Fix non-working Goodix touchpad after system sleep (LP: #1891998) + - HID: i2c-hid: Always sleep 60ms after I2C_HID_PWR_ON commands + * Groovy update: v5.8.2 upstream stable release (LP: #1892215) + - tracepoint: Mark __tracepoint_string's __used + - kunit: capture stderr on all make subprocess calls + - io_uring: abstract out task work running + - HID: input: Fix devices that return multiple bytes in battery report + - ARM: dts: stm32: fix uart nodes ordering in stm32mp15-pinctrl + - ARM: dts: stm32: fix uart7_pins_a comments in stm32mp15-pinctrl + - x86/mce/inject: Fix a wrong assignment of i_mce.status + - perf/x86/intel/uncore: Fix oops when counting IMC uncore events on some TGL + - x86, sched: check for counters overflow in frequency invariant accounting + - x86, sched: Bail out of frequency invariance if turbo frequency is unknown + - x86, sched: Bail out of frequency invariance if turbo_freq/base_freq gives 0 + - sched/fair: Fix NOHZ next idle balance + - sched: correct SD_flags returned by tl->sd_flags() + - arm64: dts: rockchip: fix rk3368-lion gmac reset gpio + - arm64: dts: rockchip: fix rk3399-puma vcc5v0-host gpio + - arm64: dts: rockchip: fix rk3399-puma gmac reset gpio + - EDAC: Fix reference count leaks + - crc-t10dif: Fix potential crypto notify dead-lock + - arm64: dts: qcom: msm8916: Replace invalid bias-pull-none property + - memory: tegra: Fix an error handling path in tegra186_emc_probe() + - soc: qcom: rpmh-rsc: Don't use ktime for timeout in write_tcs_reg_sync() + - crypto: ccree - fix resource leak on error path + - ARM: exynos: MCPM: Restore big.LITTLE cpuidle support + - rcu/tree: Repeat the monitor if any free channel is busy + - firmware: arm_scmi: Fix SCMI genpd domain probing + - arm64: dts: sun50i-pinephone: dldo4 must not be >= 1.8V + - arm64: dts: exynos: Fix silent hang after boot on Espresso + - sched/uclamp: Fix initialization of struct uclamp_rq + - crypto: qat - allow xts requests not multiple of block + - clk: scmi: Fix min and max rate when registering clocks with discrete rates + - m68k: mac: Don't send IOP message until channel is idle + - m68k: mac: Fix IOP status/control register writes + - platform/x86: intel-hid: Fix return value check in check_acpi_dev() + - platform/x86: intel-vbtn: Fix return value check in check_acpi_dev() + - ARM: dts: gose: Fix ports node name for adv7180 + - arm64: dts: renesas: Fix SD Card/eMMC interface device node names + - ARM: dts: gose: Fix ports node name for adv7612 + - ARM: at91: pm: add missing put_device() call in at91_pm_sram_init() + - ARM: dts: exynos: Disable frequency scaling for FSYS bus on Odroid XU3 + family + - reset: intel: fix a compile warning about REG_OFFSET redefined + - ARM: dts: at91: sama5d3_xplained: change phy-mode + - ARM: dts: sunxi: bananapi-m2-plus-v1.2: Add regulator supply to all CPU + cores + - ARM: dts: sunxi: bananapi-m2-plus-v1.2: Fix CPU supply voltages + - ARM: dts: stm32: Fix spi4 pins in stm32mp15-pinctrl + - spi: dw-dma: Fix Tx DMA channel working too fast + - spi: lantiq: fix: Rx overflow error in full duplex mode + - crypto: x86/crc32c - fix building with clang ias + - tpm: Require that all digests are present in TCG_PCR_EVENT2 structures + - recordmcount: only record relocation of type R_AARCH64_CALL26 on arm64. + - regulator: fix memory leak on error path of regulator_register() + - io_uring: fix sq array offset calculation + - arm64: dts: meson: misc fixups for w400 dtsi + - arm64: dts: meson: fix mmc0 tuning error on Khadas VIM3 + - soc: qcom: pdr: Reorder the PD state indication ack + - spi: rockchip: Fix error in SPI slave pio read + - ARM: socfpga: PM: add missing put_device() call in + socfpga_setup_ocram_self_refresh() + - iocost: Fix check condition of iocg abs_vdebt + - scripts/selinux/mdp: fix initial SID handling + - irqchip/ti-sci-inta: Fix return value about devm_ioremap_resource() + - seccomp: Fix ioctl number for SECCOMP_IOCTL_NOTIF_ID_VALID + - md: raid0/linear: fix dereference before null check on pointer mddev + - irqchip/loongson-htvec: Fix potential resource leak + - irqchip/loongson-htvec: Check return value of irq_domain_translate_onecell() + - irqchip/loongson-pch-pic: Check return value of + irq_domain_translate_twocell() + - irqchip/loongson-liointc: Fix potential dead lock + - kunit: tool: fix broken default args in unit tests + - kunit: tool: fix improper treatment of file location + - irqchip/irq-bcm7038-l1: Guard uses of cpu_logical_map + - irqchip/gic-v4.1: Use GFP_ATOMIC flag in allocate_vpe_l1_table() + - nvme-tcp: fix controller reset hang during traffic + - nvme-rdma: fix controller reset hang during traffic + - nvme-multipath: fix logic for non-optimized paths + - nvme-multipath: do not fall back to __nvme_find_path() for non-optimized + paths + - irqchip/loongson-pch-pic: Fix the misused irq flow handler + - block: don't do revalidate zones on invalid devices + - drm/tilcdc: fix leak & null ref in panel_connector_get_modes + - soc: qcom: rpmh-rsc: Set suppress_bind_attrs flag + - net: mscc: ocelot: fix encoding destination ports into multicast IPv4 + address + - ARM: exynos: clear L310_AUX_CTRL_FULL_LINE_ZERO in default l2c_aux_val + - Bluetooth: add a mutex lock to avoid UAF in do_enale_set + - loop: be paranoid on exit and prevent new additions / removals + - io_uring: fix req->work corruption + - fs/btrfs: Add cond_resched() for try_release_extent_mapping() stalls + - drm/amdgpu: avoid dereferencing a NULL pointer + - drm/radeon: Fix reference count leaks caused by pm_runtime_get_sync + - crypto: aesni - Fix build with LLVM_IAS=1 + - video: fbdev: savage: fix memory leak on error handling path in probe + - video: fbdev: neofb: fix memory leak in neo_scan_monitor() + - bus: ti-sysc: Add missing quirk flags for usb_host_hs + - md-cluster: fix wild pointer of unlock_all_bitmaps() + - rtw88: 8822ce: add support for device ID 0xc82f + - drm/nouveau/kms/nv50-: Fix disabling dithering + - arm64: dts: hisilicon: hikey: fixes to comply with adi, adv7533 DT binding + - drm/etnaviv: fix ref count leak via pm_runtime_get_sync + - ionic: rearrange reset and bus-master control + - memory: samsung: exynos5422-dmc: Do not ignore return code of regmap_read() + - drm/nouveau: fix reference count leak in nouveau_debugfs_strap_peek + - drm/nouveau: fix multiple instances of reference count leaks + - mmc: sdhci-cadence: do not use hardware tuning for SD mode + - btrfs: fix lockdep splat from btrfs_dump_space_info + - usb: mtu3: clear dual mode of u3port when disable device + - drm: msm: a6xx: fix gpu failure after system resume + - drm/msm: Fix a null pointer access in msm_gem_shrinker_count() + - drm/debugfs: fix plain echo to connector "force" attribute + - drm/radeon: disable AGP by default + - net: phy: mscc: restore the base page in vsc8514/8584_config_init + - irqchip/irq-mtk-sysirq: Replace spinlock with raw_spinlock + - mm/mmap.c: Add cond_resched() for exit_mmap() CPU stalls + - drm/amd/display: Improve DisplayPort monitor interop + - drm/amdgpu/debugfs: fix ref count leak when pm_runtime_get_sync fails + - drm/amdgpu/display bail early in dm_pp_get_static_clocks + - drm/amdgpu/display: properly guard the calls to swSMU functions + - drm/amd/display: allow query ddc data over aux to be read only operation + - drm/amd/powerplay: fix compile error with ARCH=arc + - bpf: Fix fds_example SIGSEGV error + - Bluetooth: hci_qca: Bug fixes for SSR + - brcmfmac: keep SDIO watchdog running when console_interval is non-zero + - brcmfmac: To fix Bss Info flag definition Bug + - brcmfmac: set state of hanger slot to FREE when flushing PSQ + - platform/x86: asus-nb-wmi: add support for ASUS ROG Zephyrus G14 and G15 + - iwlegacy: Check the return value of pcie_capability_read_*() + - gpu: host1x: debug: Fix multiple channels emitting messages simultaneously + - drm/amd/powerplay: suppress compile error around BUG_ON + - ionic: update eid test for overflow + - x86/uaccess: Make __get_user_size() Clang compliant on 32-bit + - mmc: sdhci-pci-o2micro: Bug fix for O2 host controller Seabird1 + - usb: gadget: net2280: fix memory leak on probe error handling paths + - bdc: Fix bug causing crash after multiple disconnects + - usb: bdc: Halt controller on suspend + - dyndbg: fix a BUG_ON in ddebug_describe_flags + - bcache: fix super block seq numbers comparision in register_cache_set() + - btrfs: allow btrfs_truncate_block() to fallback to nocow for data space + reservation + - btrfs: qgroup: free per-trans reserved space when a subvolume gets dropped + - ACPICA: Do not increment operation_region reference counts for field units + - io_uring: fix racy overflow count reporting + - io_uring: fix stalled deferred requests + - crypto: caam - silence .setkey in case of bad key length + - drm/msm: ratelimit crtc event overflow error + - drm/gem: Fix a leak in drm_gem_objects_lookup() + - drm/bridge: ti-sn65dsi86: Clear old error bits before AUX transfers + - drm/bridge: ti-sn65dsi86: Fix off-by-one error in clock choice + - drm/amdgpu: use the unlocked drm_gem_object_put + - agp/intel: Fix a memory leak on module initialisation failure + - mwifiex: Fix firmware filename for sd8977 chipset + - mwifiex: Fix firmware filename for sd8997 chipset + - btmrvl: Fix firmware filename for sd8977 chipset + - btmrvl: Fix firmware filename for sd8997 chipset + - video: fbdev: sm712fb: fix an issue about iounmap for a wrong address + - console: newport_con: fix an issue about leak related system resources + - video: pxafb: Fix the function used to balance a 'dma_alloc_coherent()' call + - Bluetooth: hci_qca: Fix an error pointer dereference + - drm/mm: fix hole size comparison + - Bluetooth: hci_qca: Only remove TX clock vote after TX is completed + - Bluetooth: Allow suspend even when preparation has failed + - ath10k: Acquire tx_lock in tx error paths + - Bluetooth: hci_qca: Bug fix during SSR timeout + - Bluetooth: hci_qca: Increase SoC idle timeout to 200ms + - iio: improve IIO_CONCENTRATION channel type description + - iio: amplifiers: ad8366: Change devm_gpiod_get() to optional and add the + missed check + - scsi: ufs: Fix imprecise load calculation in devfreq window + - drm/etnaviv: Fix error path on failure to enable bus clk + - drm/panfrost: Fix inbalance of devfreq record_busy/idle() + - drm/arm: fix unintentional integer overflow on left shift + - clk: bcm63xx-gate: fix last clock availability + - powerpc/mm: Fix typo in IS_ENABLED() + - powerpc/fixmap: Fix FIX_EARLY_DEBUG_BASE when page size is 256k + - leds: lm355x: avoid enum conversion warning + - ASoC: fsl_easrc: Fix uninitialized scalar variable in + fsl_easrc_set_ctx_format + - Bluetooth: btusb: fix up firmware download sequence + - Bluetooth: btmtksdio: fix up firmware download sequence + - media: cxusb-analog: fix V4L2 dependency + - media: marvell-ccic: Add missed v4l2_async_notifier_cleanup() + - media: omap3isp: Add missed v4l2_ctrl_handler_free() for + preview_init_entities() + - staging: most: avoid null pointer dereference when iface is null + - dpaa2-eth: fix condition for number of buffer acquire retries + - ASoC: SOF: nocodec: add missing .owner field + - ASoC: Intel: cml_rt1011_rt5682: add missing .owner field + - ASoC: Intel: sof_sdw: add missing .owner field + - ASoC: Intel: bxt_rt298: add missing .owner field + - ASoC: Intel: Boards: cml_rt1011_rt5682: use statically define codec config + - net: atlantic: MACSec offload statistics checkpatch fix + - scsi: cumana_2: Fix different dev_id between request_irq() and free_irq() + - scsi: ufs: Disable WriteBooster capability for non-supported UFS devices + - drm/mipi: use dcs write for mipi_dsi_dcs_set_tear_scanline + - cxl: Fix kobject memleak + - lkdtm: Avoid more compiler optimizations for bad writes + - selftests/lkdtm: Reset WARN_ONCE to avoid false negatives + - lkdtm: Make arch-specific tests always available + - net: ethernet: ti: am65-cpsw-nuss: restore vlan configuration while down/up + - tracing: Move pipe reference to trace array instead of current_tracer + - scsi: qla2xxx: Make __qla2x00_alloc_iocbs() initialize 32 bits of + request_t.handle + - drm/amdgpu/debugfs: fix memory leak when amdgpu_virt_enable_access_debugfs + failed + - drm/amdgpu: ensure 0 is returned for success in jpeg_v2_5_wait_for_idle + - drm/radeon: fix array out-of-bounds read and write issues + - staging: vchiq_arm: Add a matching unregister call + - iavf: fix error return code in iavf_init_get_resources() + - iavf: Fix updating statistics + - dma-buf: fix dma-fence-chain out of order test + - RDMA/core: Fix bogus WARN_ON during ib_unregister_device_queued() + - scsi: powertec: Fix different dev_id between request_irq() and free_irq() + - scsi: eesox: Fix different dev_id between request_irq() and free_irq() + - ipvs: allow connection reuse for unconfirmed conntrack + - media: firewire: Using uninitialized values in node_probe() + - media: allegro: Fix some NULL vs IS_ERR() checks in probe + - media: staging: rkisp1: rsz: supported formats are the isp's src formats, + not sink formats + - media: staging: rkisp1: rsz: fix resolution limitation on sink pad + - media: tvp5150: Add missed media_entity_cleanup() + - media: exynos4-is: Add missed check for pinctrl_lookup_state() + - media: cros-ec-cec: do not bail on device_init_wakeup failure + - xfs: preserve rmapbt swapext block reservation from freed blocks + - xfs: don't eat an EIO/ENOSPC writeback error when scrubbing data fork + - xfs: fix reflink quota reservation accounting error + - RDMA/rxe: Skip dgid check in loopback mode + - PCI: Fix pci_cfg_wait queue locking problem + - samples: bpf: Fix bpf programs with kprobe/sys_connect event + - drm/stm: repair runtime power management + - kobject: Avoid premature parent object freeing in kobject_cleanup() + - leds: core: Flush scheduled work for system suspend + - drm: panel: simple: Fix bpc for LG LB070WV8 panel + - phy: cadence: salvo: fix wrong bit definition + - dt-bindings: phy: uniphier: Fix incorrect clocks and clock-names for PXs3 + usb3-hsphy + - phy: exynos5-usbdrd: Calibrating makes sense only for USB2.0 PHY + - mmc: sdhci-of-arasan: Add missed checks for devm_clk_register() + - drm/bridge: sil_sii8620: initialize return of sii8620_readb + - scsi: scsi_debug: Add check for sdebug_max_queue during module init + - bpfilter: Initialize pos variable + - mwifiex: Prevent memory corruption handling keys + - kernfs: do not call fsnotify() with name without a parent + - powerpc/pseries: remove cede offline state for CPUs + - powerpc/rtas: don't online CPUs for partition suspend + - powerpc/vdso: Fix vdso cpu truncation + - Bluetooth: Fix update of connection state in `hci_encrypt_cfm` + - RDMA/qedr: SRQ's bug fixes + - RDMA/qedr: Add EDPM mode type for user-fw compatibility + - RDMA/qedr: Add EDPM max size to alloc ucontext response + - RDMA/rxe: Prevent access to wr->next ptr afrer wr is posted to send queue + - ima: Have the LSM free its audit rule + - ima: Free the entire rule when deleting a list of rules + - ima: Free the entire rule if it fails to parse + - ima: Fail rule parsing when buffer hook functions have an invalid action + - ima: Fail rule parsing when the KEXEC_CMDLINE hook is combined with an + invalid cond + - ima: Fail rule parsing when the KEY_CHECK hook is combined with an invalid + cond + - staging: rtl8192u: fix a dubious looking mask before a shift + - ASoC: meson: fixes the missed kfree() for axg_card_add_tdm_loopback + - PCI/ASPM: Add missing newline in sysfs 'policy' + - go7007: add sanity checking for endpoints + - media: s5p-g2d: Fix a memory leak in an error handling path in 'g2d_probe()' + - phy: renesas: rcar-gen3-usb2: move irq registration to init + - powerpc/mm/radix: Free PUD table when freeing pagetable + - powerpc/book3s64/pkeys: Use PVR check instead of cpu feature + - drm/imx: fix use after free + - drm/imx: tve: fix regulator_disable error path + - gpu: ipu-v3: Restore RGB32, BGR32 + - spi: lantiq-ssc: Fix warning by using WQ_MEM_RECLAIM + - PCI: loongson: Use DECLARE_PCI_FIXUP_EARLY for bridge_class_quirk() + - USB: serial: iuu_phoenix: fix led-activity helpers + - clk: qcom: gcc: Make disp gpll0 branch aon for sc7180/sdm845 + - usb: core: fix quirks_param_set() writing to a const pointer + - thermal: ti-soc-thermal: Fix reversed condition in + ti_thermal_expose_sensor() + - coresight: etmv4: Fix resource selector constant + - coresight: etmv4: Counter values not saved on disable + - coresight: tmc: Fix TMC mode read in tmc_read_unprepare_etb() + - coresight: etm4x: Fix save/restore during cpu idle + - powerpc/perf: Fix missing is_sier_aviable() during build + - mt76: mt7663u: fix memory leak in set key + - mt76: mt7663u: fix potential memory leak in mcu message handler + - mt76: mt7615: fix potential memory leak in mcu message handler + - mt76: mt7915: potential array overflow in mt7915_mcu_tx_rate_report() + - mt76: mt7915: add missing CONFIG_MAC80211_DEBUGFS + - mt76: mt7615: fix possible memory leak in mt7615_mcu_wtbl_sta_add + - phy: armada-38x: fix NETA lockup when repeatedly switching speeds + - s390/bpf: Use brcl for jumping to exit_ip if necessary + - s390/bpf: Tolerate not converging code shrinking + - tools/bpftool: Fix error handing in do_skeleton() + - ASoC: tas2770: Fix reset gpio property name + - qed: Fix ILT and XRCD bitmap memory leaks + - ASoC: hdac_hda: fix deadlock after PCM open error + - powerpc/spufs: Fix the type of ret in spufs_arch_write_note + - PCI: rcar: Fix runtime PM imbalance on error + - MIPS: OCTEON: add missing put_device() call in dwc3_octeon_device_init() + - thermal: int340x: processor_thermal: fix: update Jasper Lake PCI id + - usb: dwc3: meson-g12a: fix shared reset control use + - usb: dwc2: Fix error path in gadget registration + - usb: gadget: f_uac2: fix AC Interface Header Descriptor wTotalLength + - scsi: megaraid_sas: Clear affinity hint + - scsi: mesh: Fix panic after host or bus reset + - scsi: core: Add missing scsi_device_put() in scsi_host_block() + - net: dsa: mv88e6xxx: MV88E6097 does not support jumbo configuration + - bpf: Fix pos computation for bpf_iter seq_ops->start() + - powerpc/watchpoint: Fix 512 byte boundary limit + - powerpc/watchpoint: Fix DAWR exception constraint + - powerpc/watchpoint: Fix DAWR exception for CACHEOP + - macintosh/via-macii: Access autopoll_devs when inside lock + - gpio: regmap: fix type clash + - PCI: cadence: Fix cdns_pcie_{host|ep}_setup() error path + - PCI: cadence: Fix updating Vendor ID and Subsystem Vendor ID register + - RDMA/core: Fix return error value in _ib_modify_qp() to negative + - Smack: fix another vsscanf out of bounds + - Smack: prevent underflow in smk_set_cipso() + - power: supply: check if calc_soc succeeded in pm860x_init_battery + - Bluetooth: btusb: Fix and detect most of the Chinese Bluetooth controllers + - Bluetooth: hci_h5: Set HCI_UART_RESET_ON_INIT to correct flags + - Bluetooth: hci_serdev: Only unregister device if it was registered + - bpf: Fix bpf_ringbuf_output() signature to return long + - Bluetooth: Fix suspend notifier race + - Bluetooth: hci_qca: Stop collecting memdump again for command timeout during + SSR + - net: dsa: rtl8366: Fix VLAN semantics + - net: dsa: rtl8366: Fix VLAN set-up + - xfs: fix inode allocation block res calculation precedence + - xfs: clear XFS_DQ_FREEING if we can't lock the dquot buffer to flush + - selftests/powerpc: Squash spurious errors due to device removal + - powerpc/32s: Fix CONFIG_BOOK3S_601 uses + - powerpc/boot: Fix CONFIG_PPC_MPC52XX references + - selftests/powerpc: Fix CPU affinity for child process + - nvmem: sprd: Fix return value of sprd_efuse_probe() + - RDMA/rtrs-clt: add an additional random 8 seconds before reconnecting + - RDMA/rtrs: remove WQ_MEM_RECLAIM for rtrs_wq + - RDMA/netlink: Remove CAP_NET_RAW check when dump a raw QP + - PCI: Release IVRS table in AMD ACS quirk + - cpufreq: ap806: fix cpufreq driver needs ap cpu clk + - powerpc/pseries/hotplug-cpu: Remove double free in error path + - selftests/powerpc: Fix online CPU selection + - RDMA/hns: Fix error during modify qp RTS2RTS + - RDMA/hns: Fix the unneeded process when getting a general type of CQE error + - ASoC: meson: axg-tdm-interface: fix link fmt setup + - ASoC: meson: axg-tdmin: fix g12a skew + - ASoC: meson: axg-tdm-formatters: fix sclk inversion + - ASoC: soc-core: Fix regression causing sysfs entries to disappear + - net: ll_temac: Use devm_platform_ioremap_resource_byname() + - drm/msm/dpu: don't use INTF_INPUT_CTRL feature on sdm845 + - libbpf: Fix register in PT_REGS MIPS macros + - MIPS: only register FTLBPar exception handler for supported models + - ASoC: core: use less strict tests for dailink capabilities + - ASoC: meson: cards: deal dpcm flag change + - ASoC: fsl_sai: Fix value of FSL_SAI_CR1_RFW_MASK + - s390/qeth: tolerate pre-filled RX buffer + - s390/qeth: don't process empty bridge port events + - ice: Clear and free XLT entries on reset + - ice: Graceful error handling in HW table calloc failure + - netfilter: nft_meta: fix iifgroup matching + - rtw88: fix LDPC field for RA info + - rtw88: fix short GI capability based on current bandwidth + - rtw88: coex: only skip coex triggered by BT info + - qtnfmac: Missing platform_device_unregister() on error in + qtnf_core_mac_alloc() + - wl1251: fix always return 0 error + - tools, build: Propagate build failures from tools/build/Makefile.build + - tools, bpftool: Fix wrong return value in do_dump() + - net/mlx5: DR, Change push vlan action sequence + - net/mlx5: Delete extra dump stack that gives nothing + - net: mvpp2: fix memory leak in mvpp2_rx + - net: ethernet: aquantia: Fix wrong return value + - liquidio: Fix wrong return value in cn23xx_get_pf_num() + - net: sgi: ioc3-eth: Fix the size used in some 'dma_free_coherent()' calls + - net: spider_net: Fix the size used in a 'dma_free_coherent()' call + - fsl/fman: use 32-bit unsigned integer + - fsl/fman: fix dereference null return value + - fsl/fman: fix unreachable code + - fsl/fman: check dereferencing null pointer + - fsl/fman: fix eth hash table allocation + - gpio: don't use same lockdep class for all devm_gpiochip_add_data users + - net: thunderx: use spin_lock_bh in nicvf_set_rx_mode_task() + - net: macb: Properly handle phylink on at91sam9x + - dpaa2-eth: Fix passing zero to 'PTR_ERR' warning + - hv_netvsc: do not use VF device if link is down + - Revert "vxlan: fix tos value before xmit" + - net: thunderx: initialize VF's mailbox mutex before first usage + - media: mtk-mdp: Fix a refcounting bug on error in init + - dlm: Fix kobject memleak + - ocfs2: fix unbalanced locking + - pinctrl-single: fix pcs_parse_pinconf() return value + - mtd: rawnand: brcmnand: Don't default to edu transfer + - svcrdma: Fix page leak in svc_rdma_recv_read_chunk() + - nfsd: avoid a NULL dereference in __cld_pipe_upcall() + - x86/fsgsbase/64: Fix NULL deref in 86_fsgsbase_read_task + - crypto: aesni - add compatibility with IAS + - af_packet: TPACKET_V3: fix fill status rwlock imbalance + - drivers/net/wan/lapbether: Added needed_headroom and a skb->len check + - net: Fix potential memory leak in proto_register() + - net/nfc/rawsock.c: add CAP_NET_RAW check. + - net: phy: fix memory leak in device-create error path + - net: Set fput_needed iff FDPUT_FPUT is set + - net/tls: Fix kmap usage + - vmxnet3: use correct tcp hdr length when packet is encapsulated + - net: refactor bind_bucket fastreuse into helper + - net: initialize fastreuse on inet_inherit_port + - vsock: fix potential null pointer dereference in vsock_poll() + - net: phy: marvell10g: fix null pointer dereference + - r8152: Use MAC address from correct device tree node + - USB: serial: cp210x: re-enable auto-RTS on open + - USB: serial: cp210x: enable usb generic throttle/unthrottle + - usb: cdns3: gadget: always zeroed TRB buffer when enable endpoint + - iommu/vt-d: Skip TE disabling on quirky gfx dedicated iommu + - vdpasim: protect concurrent access to iommu iotlb + - ALSA: hda - fix the micmute led status for Lenovo ThinkCentre AIO + - ALSA: hda - reverse the setting value in the micmute_led_set + - ALSA: usb-audio: Creative USB X-Fi Pro SB1095 volume knob support + - ALSA: usb-audio: fix overeager device match for MacroSilicon MS2109 + - ALSA: usb-audio: work around streaming quirk for MacroSilicon MS2109 + - ALSA: usb-audio: add quirk for Pioneer DDJ-RB + - tpm: Unify the mismatching TPM space buffer sizes + - pstore: Fix linking when crypto API disabled + - crypto: hisilicon - don't sleep of CRYPTO_TFM_REQ_MAY_SLEEP was not + specified + - crypto: qat - fix double free in qat_uclo_create_batch_init_list + - crypto: ccp - Fix use of merged scatterlists + - crypto: cpt - don't sleep of CRYPTO_TFM_REQ_MAY_SLEEP was not specified + - tick/nohz: Narrow down noise while setting current task's tick dependency + - bitfield.h: don't compile-time validate _val in FIELD_FIT + - fs/minix: check return value of sb_getblk() + - fs/minix: don't allow getting deleted inodes + - fs/minix: reject too-large maximum file size + - kvm: x86: replace kvm_spec_ctrl_test_value with runtime test on the host + - 9p: Fix memory leak in v9fs_mount + - driver core: Fix probe_count imbalance in really_probe() + - media: media-request: Fix crash if memory allocation fails + - drm/ttm/nouveau: don't call tt destroy callback on alloc failure. + - io_uring: set ctx sq/cq entry count earlier + - io_uring: use TWA_SIGNAL for task_work uncondtionally + - io_uring: fail poll arm on queue proc failure + - io_uring: sanitize double poll handling + - NFS: Don't move layouts to plh_return_segs list while in use + - NFS: Don't return layout segments that are in use + - cpufreq: Fix locking issues with governors + - cpufreq: dt: fix oops on armada37xx + - MIPS: VZ: Only include loongson_regs.h for CPU_LOONGSON64 + - include/asm-generic/vmlinux.lds.h: align ro_after_init + - PM / devfreq: rk3399_dmc: Fix kernel oops when rockchip,pmu is absent + - PM / devfreq: Fix indentaion of devfreq_summary debugfs node + - spi: spidev: Align buffers for DMA + - mtd: rawnand: qcom: avoid write to unavailable register + - mtd: spi-nor: intel-spi: Simulate WRDI command + - erofs: fix extended inode could cross boundary + - Revert "mm/vmstat.c: do not show lowmem reserve protection information of + empty zone" + - Revert "parisc: Improve interrupt handling in arch_spin_lock_flags()" + - Revert "parisc: Drop LDCW barrier in CAS code when running UP" + - Revert "parisc: Use ldcw instruction for SMP spinlock release barrier" + - Revert "parisc: Revert "Release spinlocks using ordered store"" + - parisc: Do not use an ordered store in pa_tlb_lock() + - parisc: Implement __smp_store_release and __smp_load_acquire barriers + - parisc: mask out enable and reserved bits from sba imask + - ARM: dts: exynos: Extend all Exynos5800 A15's OPPs with max voltage data + - ARM: 8992/1: Fix unwind_frame for clang-built kernels + - firmware: qcom_scm: Fix legacy convention SCM accessors + - irqdomain/treewide: Free firmware node after domain removal + - firmware_loader: EFI firmware loader must handle pre-allocated buffer + - xen/balloon: fix accounting in alloc_xenballooned_pages error path + - xen/balloon: make the balloon wait interruptible + - xen/gntdev: Fix dmabuf import with non-zero sgt offset + - drm/xen-front: Fix misused IS_ERR_OR_NULL checks + - s390/dasd: fix inability to use DASD with DIAG driver + - s390/numa: set node distance to LOCAL_DISTANCE + - s390/gmap: improve THP splitting + - io_uring: Fix NULL pointer dereference in loop_rw_iter() + - io_uring: hold 'ctx' reference around task_work queue + execute + - io_uring: add missing REQ_F_COMP_LOCKED for nested requests + - io_uring: enable lookup of links holding inflight files + - task_work: only grab task signal lock when needed + - Linux 5.8.2 + * Regression on NFS: unable to handle page fault in mempool_alloc_slab + (LP: #1886277) // Groovy update: v5.8.2 upstream stable release + (LP: #1892215) + - SUNRPC: Fix ("SUNRPC: Add "@len" parameter to gss_unwrap()") + * Groovy update: v5.8.2 upstream stable release (LP: #1892215) // + CVE-2019-19770 which shows this issue is not a core debugfs issue, but + - blktrace: fix debugfs use after free + * Fix missing HDMI Audio on another HP Desktop (LP: #1891617) + - ALSA: hda/hdmi: Use force connectivity quirk on another HP desktop + * alsa/sof: support 1 and 3 dmics (LP: #1891585) + - SAUCE: ASoC: SOF: intel: hda: support also devices with 1 and 3 dmics + * fix ftrace pid filtering on linux 5.8 (LP: #1891528) + - ftrace: Fix ftrace_trace_task return value + * Fix false-negative return value for rtnetlink.sh in kselftests/net + (LP: #1890136) + - selftests: rtnetlink: correct the final return value for the test + - selftests: rtnetlink: make kci_test_encap() return sub-test result + * Disable Lenovo P620 Rear line-in volume control (LP: #1891281) + - ALSA: usb-audio: Disable Lenovo P620 Rear line-in volume control + * tcp_fastopen_backup_key.sh from net in ubuntu_kernel_selftests failed on + Eoan LPAR (LP: #1869134) + - tcp: correct read of TFO keys on big endian systems + * Groovy update: v5.8.1 upstream stable release (LP: #1891647) + - scsi: ufs: Fix and simplify setup_xfer_req variant operation + - USB: serial: qcserial: add EM7305 QDL product ID + - USB: iowarrior: fix up report size handling for some devices + - usb: xhci: define IDs for various ASMedia host controllers + - usb: xhci: Fix ASMedia ASM1142 DMA addressing + - Revert "ALSA: hda: call runtime_allow() for all hda controllers" + - ALSA: hda/realtek: Add alc269/alc662 pin-tables for Loongson-3 laptops + - ALSA: hda/ca0132 - Add new quirk ID for Recon3D. + - ALSA: hda/ca0132 - Fix ZxR Headphone gain control get value. + - ALSA: hda/ca0132 - Fix AE-5 microphone selection commands. + - ALSA: seq: oss: Serialize ioctls + - staging: android: ashmem: Fix lockdep warning for write operation + - staging: rtl8712: handle firmware load failure + - Staging: rtl8188eu: rtw_mlme: Fix uninitialized variable authmode + - Bluetooth: Fix slab-out-of-bounds read in hci_extended_inquiry_result_evt() + - Bluetooth: Prevent out-of-bounds read in hci_inquiry_result_evt() + - Bluetooth: Prevent out-of-bounds read in hci_inquiry_result_with_rssi_evt() + - omapfb: dss: Fix max fclk divider for omap36xx + - binder: Prevent context manager from incrementing ref 0 + - Smack: fix use-after-free in smk_write_relabel_self() + - scripts: add dummy report mode to add_namespace.cocci + - lkdtm/heap: Avoid edge and middle of slabs + - vgacon: Fix for missing check in scrollback handling + - mtd: properly check all write ioctls for permissions + - leds: wm831x-status: fix use-after-free on unbind + - leds: lm36274: fix use-after-free on unbind + - leds: da903x: fix use-after-free on unbind + - leds: lm3533: fix use-after-free on unbind + - leds: 88pm860x: fix use-after-free on unbind + - gpio: max77620: Fix missing release of interrupt + - xattr: break delegations in {set,remove}xattr + - Revert "powerpc/kasan: Fix shadow pages allocation failure" + - powerpc/kasan: Fix shadow pages allocation failure + - PCI: tegra: Revert tegra124 raw_violation_fixup + - ima: move APPRAISE_BOOTPARAM dependency on ARCH_POLICY to runtime + - random32: move the pseudo-random 32-bit definitions to prandom.h + - random: random.h should include archrandom.h, not the other way around + - arm64: kaslr: Use standard early random function + - Linux 5.8.1 + - [Config] Update annotations for changes in v5.8.1 + * bcache by-uuid links disappear after mounting bcache0 (LP: #1861941) + - SAUCE: Revert "UBUNTU: SAUCE: (no-up) bcache: decouple emitting a cached_dev + CHANGE uevent" + * Miscellaneous upstream changes + - Revert "ALSA: hda - Disable audio component for legacy Nvidia HDMI codecs" + + -- Paolo Pisati Wed, 26 Aug 2020 09:56:48 +0200 + +linux-azure (5.8.0-1002.2) groovy; urgency=medium + + * Packaging resync (LP: #1786013) + - [Packaging] update helper scripts + - [Packaging] update update.conf + + [ Ubuntu: 5.8.0-16.17 ] + + * groovy/linux: 5.8.0-16.17 -proposed tracker (LP: #1891233) + * Miscellaneous Ubuntu changes + - hio -- Update to use bio_{start,end}_io_acct with 5.8+ + - Enable hio driver + - [Packaging] Temporarily disable building doc package contents + + [ Ubuntu: 5.8.0-15.16 ] + + * groovy/linux: 5.8.0-15.16 -proposed tracker (LP: #1891177) + * Miscellaneous Ubuntu changes + - SAUCE: Documentation: import error c_funcptr_sig_re, c_sig_re (sphinx- + doc/sphinx@0f49e30c) + + [ Ubuntu: 5.8.0-14.15 ] + + * groovy/linux: 5.8.0-14.15 -proposed tracker (LP: #1891085) + * Packaging resync (LP: #1786013) + - [Packaging] update helper scripts + * msg_zerocopy.sh in net from ubuntu_kernel_selftests failed (LP: #1812620) + - selftests/net: relax cpu affinity requirement in msg_zerocopy test + * Fix missing HDMI/DP Audio on an HP Desktop (LP: #1890441) + - ALSA: hda/hdmi: Add quirk to force connectivity + * Add initial audio support for Lenovo ThinkStation P620 (LP: #1890317) + - ALSA: usb-audio: Add support for Lenovo ThinkStation P620 + * Fix IOMMU error on AMD Radeon Pro W5700 (LP: #1890306) + - PCI: Mark AMD Navi10 GPU rev 0x00 ATS as broken + * Enlarge hisi_sec2 capability (LP: #1890222) + - crypto: hisilicon - update SEC driver module parameter + * Miscellaneous Ubuntu changes + - [Config] Re-enable signing for ppc64el + + [ Ubuntu: 5.8.0-13.14 ] + + * Miscellaneous Ubuntu changes + - [Config] Remove i386 configs + - SAUCE: apply a workaround to re-enable CONFIG_CRYPTO_AEGIS128_SIMD + - SAUCE: export __get_vm_area_caller() and map_kernel_range() + - [Config] drop CONFIG_BINFMT_AOUT enforcement + * Miscellaneous upstream changes + - Revert "UBUNTU: [Config] disable CONFIG_CRYPTO_AEGIS128_SIMD" + * Rebase to v5.8 + + -- Paolo Pisati Tue, 25 Aug 2020 16:47:29 +0200 + +linux-azure (5.8.0-1001.1) groovy; urgency=medium + + * Miscellaneous Ubuntu changes + - [packaging] debhelper-compat (= 10) + - [Config] reset to groovy/generic config + - [Config] # X86_UV is not set + - [Config] # XEN is not set + - [Config] # ACPI_DEBUGGER is not set + - [Config] # ACPI_REV_OVERRIDE_POSSIBLE is not set + - [Config] # ACPI_AC is not set + - [Config] # ACPI_BATTERY is not set + - [Config] # ACPI_TAD is not set + - [Config] # ACPI_DOCK is not set + - [Config] # ACPI_THERMAL is not set + - [Config] # ACPI_TABLE_UPGRADE is not set + - [Config] # ACPI_DEBUG is not set + - [Config] # ACPI_PCI_SLOT is not set + - [Config] # ACPI_HOTPLUG_MEMORY is not set + - [Config] # ACPI_SBS is not set + - [Config] # ACPI_BGRT is not set + - [Config] # ACPI_APEI_GHES is not set + - [Config] # ACPI_APEI_EINJ is not set + - [Config] # ACPI_EXTLOG is not set + - [Config] # ACPI_CONFIGFS is not set + - [Config] # X86_AMD_FREQ_SENSITIVITY is not set + - [Config] # X86_P4_CLOCKMOD is not set + - [Config] # DMI_SYSFS is not set + - [Config] # FW_CFG_SYSFS is not set + - [Config] # IP_MROUTE_MULTIPLE_TABLES is not set + - [Config] # NETWORK_PHY_TIMESTAMPING is not set + - [Config] # TIPC_MEDIA_IB is not set + - [Config] # MKISS is not set + - [Config] # 6PACK is not set + - [Config] # BPQETHER is not set + - [Config] # BAYCOM_SER_FDX is not set + - [Config] # BAYCOM_SER_HDX is not set + - [Config] # BAYCOM_PAR is not set + - [Config] # YAM is not set + - [Config] # CAN_CC770 is not set + - [Config] # CAN_IFI_CANFD is not set + - [Config] # CAN_M_CAN is not set + - [Config] # CAN_SOFTING is not set + - [Config] # CAN_MCP251X is not set + - [Config] # CAN_8DEV_USB is not set + - [Config] # CAN_EMS_USB is not set + - [Config] # CAN_ESD_USB2 is not set + - [Config] # CAN_GS_USB is not set + - [Config] # CAN_KVASER_USB is not set + - [Config] # CAN_MCBA_USB is not set + - [Config] # CAN_PEAK_USB is not set + - [Config] # CAN_UCAN is not set + - [Config] # BT is not set + - [Config] # WIMAX is not set + - [Config] # NFC_TRF7970A is not set + - [Config] # NFC_SIM is not set + - [Config] # NFC_PORT100 is not set + - [Config] # NFC_FDP is not set + - [Config] # NFC_PN544_I2C is not set + - [Config] # NFC_PN533_USB is not set + - [Config] # NFC_PN533_I2C is not set + - [Config] # NFC_MICROREAD_I2C is not set + - [Config] # NFC_MRVL_USB is not set + - [Config] # NFC_MRVL_UART is not set + - [Config] # NFC_ST21NFCA_I2C is not set + - [Config] # NFC_ST_NCI_I2C is not set + - [Config] # NFC_ST_NCI_SPI is not set + - [Config] # NFC_NXP_NCI is not set + - [Config] # NFC_S3FWRN5_I2C is not set + - [Config] # NFC_ST95HF is not set + - [Config] # VMD is not set + - [Config] # PCMCIA is not set + - [Config] # RAPIDIO_TSI57X is not set + - [Config] # RAPIDIO_CPS_XX is not set + - [Config] # RAPIDIO_TSI568 is not set + - [Config] # RAPIDIO_CPS_GEN2 is not set + - [Config] # RAPIDIO_RXS_GEN3 is not set + - [Config] # MTD is not set + - [Config] # BLK_DEV_NULL_BLK is not set + - [Config] # BLK_DEV_FD is not set + - [Config] # PARIDE is not set + - [Config] # BLK_DEV_PCIESSD_MTIP32XX is not set + - [Config] # BLK_DEV_UMEM is not set + - [Config] # BLK_DEV_SKD is not set + - [Config] # BLK_DEV_SX8 is not set + - [Config] # ATA_OVER_ETH is not set + - [Config] # BLK_DEV_RSXX is not set + - [Config] # NVME_TARGET_LOOP is not set + - [Config] # NVME_TARGET_RDMA is not set + - [Config] # AD525X_DPOT is not set + - [Config] # HP_ILO is not set + - [Config] # C2PORT is not set + - [Config] # EEPROM_AT25 is not set + - [Config] # EEPROM_LEGACY is not set + - [Config] # EEPROM_MAX6875 is not set + - [Config] # EEPROM_93XX46 is not set + - [Config] # EEPROM_IDT_89HPESX is not set + - [Config] # TI_ST is not set + - [Config] # SENSORS_LIS3_I2C is not set + - [Config] # INTEL_MEI_TXE is not set + - [Config] # VMWARE_VMCI is not set + - [Config] # INTEL_MIC_BUS is not set + - [Config] # SCIF_BUS is not set + - [Config] # VOP_BUS is not set + - [Config] # ECHO is not set + - [Config] # MISC_RTSX_USB is not set + - [Config] # SCSI_CXGB3_ISCSI is not set + - [Config] # SCSI_CXGB4_ISCSI is not set + - [Config] # SCSI_BNX2_ISCSI is not set + - [Config] # BLK_DEV_3W_XXXX_RAID is not set + - [Config] # SCSI_UFSHCD is not set + - [Config] # VMWARE_PVSCSI is not set + - [Config] # LIBFC is not set + - [Config] # SCSI_ISCI is not set + - [Config] # SATA_ZPODD is not set + - [Config] # SATA_INIC162X is not set + - [Config] # SATA_ACARD_AHCI is not set + - [Config] # SATA_SIL24 is not set + - [Config] # SATA_QSTOR is not set + - [Config] # SATA_SX4 is not set + - [Config] # SATA_MV is not set + - [Config] # SATA_NV is not set + - [Config] # SATA_PROMISE is not set + - [Config] # SATA_SIL is not set + - [Config] # SATA_SIS is not set + - [Config] # SATA_SVW is not set + - [Config] # SATA_ULI is not set + - [Config] # SATA_VIA is not set + - [Config] # SATA_VITESSE is not set + - [Config] # LOOPBACK_TARGET is not set + - [Config] # ISCSI_TARGET_CXGB4 is not set + - [Config] # FIREWIRE is not set + - [Config] # MACINTOSH_DRIVERS is not set + - [Config] # NET_FC is not set + - [Config] # NET_TEAM is not set + - [Config] # CAIF_TTY is not set + - [Config] # CAIF_SPI_SLAVE is not set + - [Config] # CAIF_HSI is not set + - [Config] # NET_DSA_MV88E6060 is not set + - [Config] # NET_DSA_MV88E6XXX is not set + - [Config] # NET_DSA_QCA8K is not set + - [Config] # NET_VENDOR_3COM is not set + - [Config] # NET_VENDOR_ADAPTEC is not set + - [Config] # NET_VENDOR_ALTEON is not set + - [Config] # ALTERA_TSE is not set + - [Config] # NET_VENDOR_AMAZON is not set + - [Config] # NET_VENDOR_AMD is not set + - [Config] # NET_VENDOR_ARC is not set + - [Config] # NET_VENDOR_ATHEROS is not set + - [Config] # NET_VENDOR_AURORA is not set + - [Config] # NET_VENDOR_BROCADE is not set + - [Config] # MACB is not set + - [Config] # NET_VENDOR_CAVIUM is not set + - [Config] # NET_VENDOR_DEC is not set + - [Config] # NET_VENDOR_EZCHIP is not set + - [Config] # NET_VENDOR_MICREL is not set + - [Config] # ENC28J60 is not set + - [Config] # ENCX24J600 is not set + - [Config] # NET_VENDOR_MYRI is not set + - [Config] # NET_VENDOR_NATSEMI is not set + - [Config] # NET_VENDOR_NVIDIA is not set + - [Config] # NET_VENDOR_OKI is not set + - [Config] # NET_VENDOR_QLOGIC is not set + - [Config] # NET_VENDOR_QUALCOMM is not set + - [Config] # NET_VENDOR_RDC is not set + - [Config] # NET_VENDOR_RENESAS is not set + - [Config] # NET_VENDOR_ROCKER is not set + - [Config] # NET_VENDOR_SAMSUNG is not set + - [Config] # NET_VENDOR_SEEQ is not set + - [Config] # NET_VENDOR_SILAN is not set + - [Config] # NET_VENDOR_SIS is not set + - [Config] # NET_VENDOR_SMSC is not set + - [Config] # NET_VENDOR_SOCIONEXT is not set + - [Config] # NET_VENDOR_STMICRO is not set + - [Config] # NET_VENDOR_SUN is not set + - [Config] # NET_VENDOR_TEHUTI is not set + - [Config] # NET_VENDOR_TI is not set + - [Config] # NET_VENDOR_VIA is not set + - [Config] # NET_VENDOR_WIZNET is not set + - [Config] # MDIO_BITBANG is not set + - [Config] # MDIO_THUNDER is not set + - [Config] # LED_TRIGGER_PHY is not set + - [Config] # AMD_PHY is not set + - [Config] # AQUANTIA_PHY is not set + - [Config] # AT803X_PHY is not set + - [Config] # BCM87XX_PHY is not set + - [Config] # BROADCOM_PHY is not set + - [Config] # CICADA_PHY is not set + - [Config] # DAVICOM_PHY is not set + - [Config] # DP83848_PHY is not set + - [Config] # DP83867_PHY is not set + - [Config] # ICPLUS_PHY is not set + - [Config] # INTEL_XWAY_PHY is not set + - [Config] # LSI_ET1011C_PHY is not set + - [Config] # LXT_PHY is not set + - [Config] # MARVELL_PHY is not set + - [Config] # MICREL_PHY is not set + - [Config] # MICROSEMI_PHY is not set + - [Config] # NATIONAL_PHY is not set + - [Config] # QSEMI_PHY is not set + - [Config] # SMSC_PHY is not set + - [Config] # STE10XP is not set + - [Config] # TERANETICS_PHY is not set + - [Config] # XILINX_GMII2RGMII is not set + - [Config] # MICREL_KS8995MA is not set + - [Config] # PLIP is not set + - [Config] # WLAN is not set + - [Config] # LANMEDIA is not set + - [Config] # IEEE802154_FAKELB is not set + - [Config] # IEEE802154_AT86RF230 is not set + - [Config] # IEEE802154_MRF24J40 is not set + - [Config] # IEEE802154_CC2520 is not set + - [Config] # IEEE802154_ATUSB is not set + - [Config] # IEEE802154_ADF7242 is not set + - [Config] # VMXNET3 is not set + - [Config] # FUJITSU_ES is not set + - [Config] # ISDN is not set + - [Config] # NVM is not set + - [Config] # INPUT_LEDS is not set + - [Config] # KEYBOARD_ADP5588 is not set + - [Config] # KEYBOARD_ADP5589 is not set + - [Config] # KEYBOARD_QT1070 is not set + - [Config] # KEYBOARD_QT2160 is not set + - [Config] # KEYBOARD_LKKBD is not set + - [Config] # KEYBOARD_GPIO is not set + - [Config] # KEYBOARD_TCA6416 is not set + - [Config] # KEYBOARD_TCA8418 is not set + - [Config] # KEYBOARD_MATRIX is not set + - [Config] # KEYBOARD_LM8323 is not set + - [Config] # KEYBOARD_LM8333 is not set + - [Config] # KEYBOARD_MAX7359 is not set + - [Config] # KEYBOARD_MCS is not set + - [Config] # KEYBOARD_MPR121 is not set + - [Config] # KEYBOARD_NEWTON is not set + - [Config] # KEYBOARD_OPENCORES is not set + - [Config] # KEYBOARD_SAMSUNG is not set + - [Config] # KEYBOARD_STOWAWAY is not set + - [Config] # KEYBOARD_SUNKBD is not set + - [Config] # KEYBOARD_TM2_TOUCHKEY is not set + - [Config] # KEYBOARD_XTKBD is not set + - [Config] # INPUT_MOUSE is not set + - [Config] # INPUT_JOYSTICK is not set + - [Config] # TABLET_USB_ACECAD is not set + - [Config] # TABLET_USB_AIPTEK is not set + - [Config] # TABLET_USB_GTCO is not set + - [Config] # TABLET_USB_HANWANG is not set + - [Config] # TABLET_USB_KBTAB is not set + - [Config] # TABLET_USB_PEGASUS is not set + - [Config] # TABLET_SERIAL_WACOM4 is not set + - [Config] # INPUT_TOUCHSCREEN is not set + - [Config] # INPUT_AD714X is not set + - [Config] # INPUT_BMA150 is not set + - [Config] # INPUT_E3X0_BUTTON is not set + - [Config] # INPUT_PCSPKR is not set + - [Config] # INPUT_MC13783_PWRBUTTON is not set + - [Config] # INPUT_MMA8450 is not set + - [Config] # INPUT_APANEL is not set + - [Config] # INPUT_GPIO_BEEPER is not set + - [Config] # INPUT_GPIO_DECODER is not set + - [Config] # INPUT_ATLAS_BTNS is not set + - [Config] # INPUT_ATI_REMOTE2 is not set + - [Config] # INPUT_KEYSPAN_REMOTE is not set + - [Config] # INPUT_KXTJ9 is not set + - [Config] # INPUT_POWERMATE is not set + - [Config] # INPUT_YEALINK is not set + - [Config] # INPUT_CM109 is not set + - [Config] # INPUT_REGULATOR_HAPTIC is not set + - [Config] # INPUT_RETU_PWRBUTTON is not set + - [Config] # INPUT_AXP20X_PEK is not set + - [Config] # INPUT_PCF50633_PMU is not set + - [Config] # INPUT_PCF8574 is not set + - [Config] # INPUT_GPIO_ROTARY_ENCODER is not set + - [Config] # INPUT_DA9052_ONKEY is not set + - [Config] # INPUT_DA9063_ONKEY is not set + - [Config] # INPUT_WM831X_ON is not set + - [Config] # INPUT_PCAP is not set + - [Config] # INPUT_ADXL34X is not set + - [Config] # INPUT_IMS_PCU is not set + - [Config] # INPUT_CMA3000 is not set + - [Config] # INPUT_IDEAPAD_SLIDEBAR is not set + - [Config] # INPUT_DRV260X_HAPTICS is not set + - [Config] # INPUT_DRV2665_HAPTICS is not set + - [Config] # INPUT_DRV2667_HAPTICS is not set + - [Config] # GAMEPORT is not set + - [Config] # SERIAL_DEV_BUS is not set + - [Config] # MWAVE is not set + - [Config] # TCG_TIS_SPI is not set + - [Config] # TCG_TIS_I2C_ATMEL is not set + - [Config] # TCG_TIS_I2C_INFINEON is not set + - [Config] # TCG_TIS_I2C_NUVOTON is not set + - [Config] # TCG_NSC is not set + - [Config] # TCG_ATMEL is not set + - [Config] # TCG_INFINEON is not set + - [Config] # TCG_VTPM_PROXY is not set + - [Config] # TCG_TIS_ST33ZP24_I2C is not set + - [Config] # TCG_TIS_ST33ZP24_SPI is not set + - [Config] # XILLYBUS is not set + - [Config] # I2C_MUX_GPIO is not set + - [Config] # I2C_MUX_PCA9541 is not set + - [Config] # I2C_MUX_PCA954x is not set + - [Config] # I2C_MUX_REG is not set + - [Config] # I2C_MUX_MLXCPLD is not set + - [Config] # I2C_AMD_MP2 is not set + - [Config] # I2C_PIIX4 is not set + - [Config] # I2C_DIOLAN_U2C is not set + - [Config] # I2C_ROBOTFUZZ_OSIF is not set + - [Config] # I2C_TINY_USB is not set + - [Config] # SPMI is not set + - [Config] # HSI is not set + - [Config] # PPS_CLIENT_LDISC is not set + - [Config] # PPS_CLIENT_PARPORT is not set + - [Config] # PPS_CLIENT_GPIO is not set + - [Config] # PINCTRL_AMD is not set + - [Config] # PINCTRL_BROXTON is not set + - [Config] # PINCTRL_GEMINILAKE is not set + - [Config] # PINCTRL_SUNRISEPOINT is not set + - [Config] # PDA_POWER is not set + - [Config] # WM831X_BACKUP is not set + - [Config] # WM831X_POWER is not set + - [Config] # TEST_POWER is not set + - [Config] # BATTERY_DS2780 is not set + - [Config] # BATTERY_DS2781 is not set + - [Config] # BATTERY_DS2782 is not set + - [Config] # BATTERY_SBS is not set + - [Config] # CHARGER_SBS is not set + - [Config] # BATTERY_BQ27XXX is not set + - [Config] # BATTERY_DA9052 is not set + - [Config] # BATTERY_MAX17040 is not set + - [Config] # BATTERY_MAX17042 is not set + - [Config] # CHARGER_PCF50633 is not set + - [Config] # CHARGER_MAX8903 is not set + - [Config] # CHARGER_LP8727 is not set + - [Config] # CHARGER_GPIO is not set + - [Config] # CHARGER_MANAGER is not set + - [Config] # CHARGER_MAX14577 is not set + - [Config] # CHARGER_MAX77693 is not set + - [Config] # CHARGER_BQ2415X is not set + - [Config] # CHARGER_BQ24257 is not set + - [Config] # CHARGER_BQ24735 is not set + - [Config] # CHARGER_BQ25890 is not set + - [Config] # CHARGER_SMB347 is not set + - [Config] # BATTERY_GAUGE_LTC2941 is not set + - [Config] # BATTERY_RT5033 is not set + - [Config] # CHARGER_RT9455 is not set + - [Config] # PMBUS is not set + - [Config] # INT340X_THERMAL is not set + - [Config] # HP_WATCHDOG is not set + - [Config] # USBPCWATCHDOG is not set + - [Config] # MFD_DA9062 is not set + - [Config] # MFD_DA9150 is not set + - [Config] # MFD_DLN2 is not set + - [Config] # MFD_KEMPLD is not set + - [Config] # MFD_88PM800 is not set + - [Config] # MFD_MT6397 is not set + - [Config] # MFD_VIPERBOARD is not set + - [Config] # MFD_SI476X_CORE is not set + - [Config] # ABX500_CORE is not set + - [Config] # MFD_LM3533 is not set + - [Config] # REGULATOR_VIRTUAL_CONSUMER is not set + - [Config] # REGULATOR_USERSPACE_CONSUMER is not set + - [Config] # REGULATOR_ACT8865 is not set + - [Config] # REGULATOR_AD5398 is not set + - [Config] # REGULATOR_AXP20X is not set + - [Config] # REGULATOR_BCM590XX is not set + - [Config] # REGULATOR_DA9052 is not set + - [Config] # REGULATOR_DA9210 is not set + - [Config] # REGULATOR_DA9211 is not set + - [Config] # REGULATOR_FAN53555 is not set + - [Config] # REGULATOR_GPIO is not set + - [Config] # REGULATOR_ISL9305 is not set + - [Config] # REGULATOR_ISL6271A is not set + - [Config] # REGULATOR_LP3971 is not set + - [Config] # REGULATOR_LP3972 is not set + - [Config] # REGULATOR_LP872X is not set + - [Config] # REGULATOR_LP8755 is not set + - [Config] # REGULATOR_LTC3589 is not set + - [Config] # REGULATOR_LTC3676 is not set + - [Config] # REGULATOR_MAX14577 is not set + - [Config] # REGULATOR_MAX1586 is not set + - [Config] # REGULATOR_MAX8649 is not set + - [Config] # REGULATOR_MAX8660 is not set + - [Config] # REGULATOR_MAX8907 is not set + - [Config] # REGULATOR_MAX8952 is not set + - [Config] # REGULATOR_MAX77693 is not set + - [Config] # REGULATOR_MC13783 is not set + - [Config] # REGULATOR_MC13892 is not set + - [Config] # REGULATOR_MT6311 is not set + - [Config] # REGULATOR_PCAP is not set + - [Config] # REGULATOR_PCF50633 is not set + - [Config] # REGULATOR_PFUZE100 is not set + - [Config] # REGULATOR_PV88060 is not set + - [Config] # REGULATOR_PV88080 is not set + - [Config] # REGULATOR_PV88090 is not set + - [Config] # REGULATOR_RT5033 is not set + - [Config] # REGULATOR_SKY81452 is not set + - [Config] # REGULATOR_TPS51632 is not set + - [Config] # REGULATOR_TPS6105X is not set + - [Config] # REGULATOR_TPS62360 is not set + - [Config] # REGULATOR_TPS65023 is not set + - [Config] # REGULATOR_TPS6507X is not set + - [Config] # REGULATOR_TPS65086 is not set + - [Config] # REGULATOR_TPS6524X is not set + - [Config] # REGULATOR_TPS65912 is not set + - [Config] # REGULATOR_WM831X is not set + - [Config] # REGULATOR_WM8994 is not set + - [Config] # RC_ATI_REMOTE is not set + - [Config] # IR_IMON is not set + - [Config] # IR_IMON_RAW is not set + - [Config] # IR_MCEUSB is not set + - [Config] # IR_REDRAT3 is not set + - [Config] # IR_STREAMZAP is not set + - [Config] # IR_IGORPLUGUSB is not set + - [Config] # IR_IGUANA is not set + - [Config] # IR_TTUSBIR is not set + - [Config] # RC_XBOX_DVD is not set + - [Config] # MEDIA_CAMERA_SUPPORT is not set + - [Config] # MEDIA_ANALOG_TV_SUPPORT is not set + - [Config] # MEDIA_DIGITAL_TV_SUPPORT is not set + - [Config] # MEDIA_RADIO_SUPPORT is not set + - [Config] # MEDIA_SDR_SUPPORT is not set + - [Config] # MEDIA_USB_SUPPORT is not set + - [Config] # MEDIA_PCI_SUPPORT is not set + - [Config] # DRM_I2C_CH7006 is not set + - [Config] # DRM_I2C_SIL164 is not set + - [Config] # DRM_I2C_NXP_TDA998X is not set + - [Config] # HSA_AMD is not set + - [Config] # DRM_NOUVEAU is not set + - [Config] # DRM_I915_GVT_KVMGT is not set + - [Config] # DRM_VGEM is not set + - [Config] # DRM_VMWGFX is not set + - [Config] # DRM_UDL is not set + - [Config] # DRM_MGAG200 is not set + - [Config] # DRM_CIRRUS_QEMU is not set + - [Config] # DRM_BOCHS is not set + - [Config] # DRM_ANALOGIX_ANX78XX is not set + - [Config] # DRM_GM12U320 is not set + - [Config] # FB_CIRRUS is not set + - [Config] # FB_PM2 is not set + - [Config] # FB_CYBER2000 is not set + - [Config] # FB_ARC is not set + - [Config] # FB_ASILIANT is not set + - [Config] # FB_IMSTT is not set + - [Config] # FB_VGA16 is not set + - [Config] # FB_UVESA is not set + - [Config] # FB_VESA is not set + - [Config] # FB_EFI is not set + - [Config] # FB_N411 is not set + - [Config] # FB_HGA is not set + - [Config] # FB_OPENCORES is not set + - [Config] # FB_S1D13XXX is not set + - [Config] # FB_NVIDIA is not set + - [Config] # FB_RIVA is not set + - [Config] # FB_I740 is not set + - [Config] # FB_LE80578 is not set + - [Config] # FB_MATROX is not set + - [Config] # FB_RADEON is not set + - [Config] # FB_ATY128 is not set + - [Config] # FB_ATY is not set + - [Config] # FB_S3 is not set + - [Config] # FB_SAVAGE is not set + - [Config] # FB_SIS is not set + - [Config] # FB_NEOMAGIC is not set + - [Config] # FB_KYRO is not set + - [Config] # FB_3DFX is not set + - [Config] # FB_VOODOO1 is not set + - [Config] # FB_VT8623 is not set + - [Config] # FB_TRIDENT is not set + - [Config] # FB_ARK is not set + - [Config] # FB_PM3 is not set + - [Config] # FB_CARMINE is not set + - [Config] # FB_SMSCUFX is not set + - [Config] # FB_UDL is not set + - [Config] # FB_METRONOME is not set + - [Config] # FB_MB862XX is not set + - [Config] # FB_SIMPLE is not set + - [Config] # FB_SM712 is not set + - [Config] # LCD_CLASS_DEVICE is not set + - [Config] # BACKLIGHT_GENERIC is not set + - [Config] # BACKLIGHT_DA9052 is not set + - [Config] # BACKLIGHT_APPLE is not set + - [Config] # BACKLIGHT_SAHARA is not set + - [Config] # BACKLIGHT_WM831X is not set + - [Config] # BACKLIGHT_ADP8860 is not set + - [Config] # BACKLIGHT_ADP8870 is not set + - [Config] # BACKLIGHT_PCF50633 is not set + - [Config] # BACKLIGHT_LM3639 is not set + - [Config] # BACKLIGHT_SKY81452 is not set + - [Config] # BACKLIGHT_GPIO is not set + - [Config] # BACKLIGHT_LV5207LP is not set + - [Config] # BACKLIGHT_BD6107 is not set + - [Config] # FRAMEBUFFER_CONSOLE_DEFERRED_TAKEOVER is not set + - [Config] # SOUND is not set + - [Config] # HID_BATTERY_STRENGTH is not set + - [Config] # HID_A4TECH is not set + - [Config] # HID_ACRUX is not set + - [Config] # HID_APPLE is not set + - [Config] # HID_AUREAL is not set + - [Config] # HID_BELKIN is not set + - [Config] # HID_CHERRY is not set + - [Config] # HID_CHICONY is not set + - [Config] # HID_CORSAIR is not set + - [Config] # HID_CMEDIA is not set + - [Config] # HID_CYPRESS is not set + - [Config] # HID_DRAGONRISE is not set + - [Config] # HID_EMS_FF is not set + - [Config] # HID_ELECOM is not set + - [Config] # HID_EZKEY is not set + - [Config] # HID_GEMBIRD is not set + - [Config] # HID_GFRM is not set + - [Config] # HID_KEYTOUCH is not set + - [Config] # HID_KYE is not set + - [Config] # HID_WALTOP is not set + - [Config] # HID_GYRATION is not set + - [Config] # HID_ICADE is not set + - [Config] # HID_TWINHAN is not set + - [Config] # HID_KENSINGTON is not set + - [Config] # HID_LCPOWER is not set + - [Config] # HID_LENOVO is not set + - [Config] # HID_LOGITECH is not set + - [Config] # HID_MAGICMOUSE is not set + - [Config] # HID_MICROSOFT is not set + - [Config] # HID_MONTEREY is not set + - [Config] # HID_MULTITOUCH is not set + - [Config] # HID_ORTEK is not set + - [Config] # HID_PANTHERLORD is not set + - [Config] # HID_PETALYNX is not set + - [Config] # HID_PICOLCD is not set + - [Config] # HID_PLANTRONICS is not set + - [Config] # HID_PRIMAX is not set + - [Config] # HID_SAITEK is not set + - [Config] # HID_SAMSUNG is not set + - [Config] # HID_SPEEDLINK is not set + - [Config] # HID_STEELSERIES is not set + - [Config] # HID_SUNPLUS is not set + - [Config] # HID_RMI is not set + - [Config] # HID_GREENASIA is not set + - [Config] # HID_SMARTJOYPLUS is not set + - [Config] # HID_TIVO is not set + - [Config] # HID_TOPSEED is not set + - [Config] # HID_THRUSTMASTER is not set + - [Config] # HID_XINMO is not set + - [Config] # HID_ZEROPLUS is not set + - [Config] # HID_ZYDACRON is not set + - [Config] # HID_ALPS is not set + - [Config] # USB_HID is not set + - [Config] # HID_PID is not set + - [Config] # USB_KBD is not set + - [Config] # USB_MOUSE is not set + - [Config] # I2C_HID is not set + - [Config] # USB_LED_TRIG is not set + - [Config] # USB_CONN_GPIO is not set + - [Config] # USB_ANNOUNCE_NEW_DEVICES is not set + - [Config] # USB_DEFAULT_PERSIST is not set + - [Config] # USB_DYNAMIC_MINORS is not set + - [Config] # USB_LEDS_TRIGGER_USBPORT is not set + - [Config] # USB_MON is not set + - [Config] # USB_C67X00_HCD is not set + - [Config] # USB_EHCI_HCD is not set + - [Config] # USB_OXU210HP_HCD is not set + - [Config] # USB_ISP116X_HCD is not set + - [Config] # USB_FOTG210_HCD is not set + - [Config] # USB_MAX3421_HCD is not set + - [Config] # USB_OHCI_HCD is not set + - [Config] # USB_UHCI_HCD is not set + - [Config] # USB_SL811_HCD is not set + - [Config] # USB_R8A66597_HCD is not set + - [Config] # USB_HCD_BCMA is not set + - [Config] # USB_HCD_SSB is not set + - [Config] # USB_PRINTER is not set + - [Config] # USB_TMC is not set + - [Config] # USB_STORAGE is not set + - [Config] # USB_MDC800 is not set + - [Config] # USB_MICROTEK is not set + - [Config] # USBIP_CORE is not set + - [Config] # USB_CDNS3 is not set + - [Config] # USB_MUSB_HDRC is not set + - [Config] # USB_DWC3 is not set + - [Config] # USB_DWC2 is not set + - [Config] # USB_ISP1760 is not set + - [Config] # USB_USS720 is not set + - [Config] # USB_SERIAL is not set + - [Config] # USB_EMI62 is not set + - [Config] # USB_EMI26 is not set + - [Config] # USB_ADUTUX is not set + - [Config] # USB_SEVSEG is not set + - [Config] # USB_LEGOTOWER is not set + - [Config] # USB_LCD is not set + - [Config] # USB_CYPRESS_CY7C63 is not set + - [Config] # USB_CYTHERM is not set + - [Config] # USB_IDMOUSE is not set + - [Config] # USB_FTDI_ELAN is not set + - [Config] # USB_APPLEDISPLAY is not set + - [Config] # USB_LD is not set + - [Config] # USB_TRANCEVIBRATOR is not set + - [Config] # USB_IOWARRIOR is not set + - [Config] # USB_TEST is not set + - [Config] # USB_EHSET_TEST_FIXTURE is not set + - [Config] # USB_ISIGHTFW is not set + - [Config] # USB_YUREX is not set + - [Config] # USB_EZUSB_FX2 is not set + - [Config] # USB_HUB_USB251XB is not set + - [Config] # USB_HSIC_USB3503 is not set + - [Config] # USB_HSIC_USB4604 is not set + - [Config] # USB_LINK_LAYER_TEST is not set + - [Config] # USB_CHAOSKEY is not set + - [Config] # USB_ATM is not set + - [Config] # NOP_USB_XCEIV is not set + - [Config] # USB_GPIO_VBUS is not set + - [Config] # TAHVO_USB is not set + - [Config] # USB_ISP1301 is not set + - [Config] # USB_GADGET is not set + - [Config] # TYPEC is not set + - [Config] # MMC is not set + - [Config] # MEMSTICK is not set + - [Config] # LEDS_CLASS_FLASH is not set + - [Config] # LEDS_LM3530 is not set + - [Config] # LEDS_LM3642 is not set + - [Config] # LEDS_PCA9532 is not set + - [Config] # LEDS_LP3944 is not set + - [Config] # LEDS_LP3952 is not set + - [Config] # LEDS_LP5521 is not set + - [Config] # LEDS_LP5523 is not set + - [Config] # LEDS_LP5562 is not set + - [Config] # LEDS_LP8501 is not set + - [Config] # LEDS_CLEVO_MAIL is not set + - [Config] # LEDS_PCA955X is not set + - [Config] # LEDS_PCA963X is not set + - [Config] # LEDS_WM831X_STATUS is not set + - [Config] # LEDS_DA9052 is not set + - [Config] # LEDS_DAC124S085 is not set + - [Config] # LEDS_REGULATOR is not set + - [Config] # LEDS_BD2802 is not set + - [Config] # LEDS_INTEL_SS4200 is not set + - [Config] # LEDS_MC13783 is not set + - [Config] # LEDS_TCA6507 is not set + - [Config] # LEDS_TLC591XX is not set + - [Config] # LEDS_LM355x is not set + - [Config] # LEDS_MENF21BMC is not set + - [Config] # LEDS_BLINKM is not set + - [Config] # LEDS_MLXCPLD is not set + - [Config] # LEDS_USER is not set + - [Config] # LEDS_NIC78BX is not set + - [Config] # LEDS_TRIGGER_TIMER is not set + - [Config] # LEDS_TRIGGER_ONESHOT is not set + - [Config] # LEDS_TRIGGER_DISK is not set + - [Config] # LEDS_TRIGGER_HEARTBEAT is not set + - [Config] # LEDS_TRIGGER_BACKLIGHT is not set + - [Config] # LEDS_TRIGGER_CPU is not set + - [Config] # LEDS_TRIGGER_GPIO is not set + - [Config] # LEDS_TRIGGER_DEFAULT_ON is not set + - [Config] # LEDS_TRIGGER_TRANSIENT is not set + - [Config] # LEDS_TRIGGER_CAMERA is not set + - [Config] # LEDS_TRIGGER_PANIC is not set + - [Config] # INFINIBAND_CXGB4 is not set + - [Config] # INFINIBAND_I40IW is not set + - [Config] # INFINIBAND_OCRDMA is not set + - [Config] # INFINIBAND_BNXT_RE is not set + - [Config] # INFINIBAND_RDMAVT is not set + - [Config] # RDMA_RXE is not set + - [Config] # INFINIBAND_IPOIB_CM is not set + - [Config] # INFINIBAND_SRPT is not set + - [Config] # RTC_DRV_ABB5ZES3 is not set + - [Config] # RTC_DRV_ABX80X is not set + - [Config] # RTC_DRV_DS1307 is not set + - [Config] # RTC_DRV_DS1374 is not set + - [Config] # RTC_DRV_DS1672 is not set + - [Config] # RTC_DRV_MAX6900 is not set + - [Config] # RTC_DRV_MAX8907 is not set + - [Config] # RTC_DRV_RS5C372 is not set + - [Config] # RTC_DRV_ISL1208 is not set + - [Config] # RTC_DRV_ISL12022 is not set + - [Config] # RTC_DRV_X1205 is not set + - [Config] # RTC_DRV_PCF8523 is not set + - [Config] # RTC_DRV_PCF85063 is not set + - [Config] # RTC_DRV_PCF8563 is not set + - [Config] # RTC_DRV_PCF8583 is not set + - [Config] # RTC_DRV_M41T80 is not set + - [Config] # RTC_DRV_BQ32K is not set + - [Config] # RTC_DRV_S35390A is not set + - [Config] # RTC_DRV_FM3130 is not set + - [Config] # RTC_DRV_RX8010 is not set + - [Config] # RTC_DRV_RX8581 is not set + - [Config] # RTC_DRV_RX8025 is not set + - [Config] # RTC_DRV_EM3027 is not set + - [Config] # RTC_DRV_RV8803 is not set + - [Config] # RTC_DRV_M41T93 is not set + - [Config] # RTC_DRV_M41T94 is not set + - [Config] # RTC_DRV_DS1302 is not set + - [Config] # RTC_DRV_DS1305 is not set + - [Config] # RTC_DRV_DS1343 is not set + - [Config] # RTC_DRV_DS1347 is not set + - [Config] # RTC_DRV_DS1390 is not set + - [Config] # RTC_DRV_MAX6916 is not set + - [Config] # RTC_DRV_R9701 is not set + - [Config] # RTC_DRV_RX4581 is not set + - [Config] # RTC_DRV_RX6110 is not set + - [Config] # RTC_DRV_RS5C348 is not set + - [Config] # RTC_DRV_MAX6902 is not set + - [Config] # RTC_DRV_PCF2123 is not set + - [Config] # RTC_DRV_MCP795 is not set + - [Config] # RTC_DRV_DS3232 is not set + - [Config] # RTC_DRV_PCF2127 is not set + - [Config] # RTC_DRV_RV3029C2 is not set + - [Config] # RTC_DRV_DS1286 is not set + - [Config] # RTC_DRV_DS1511 is not set + - [Config] # RTC_DRV_DS1553 is not set + - [Config] # RTC_DRV_DS1685_FAMILY is not set + - [Config] # RTC_DRV_DS1742 is not set + - [Config] # RTC_DRV_DS2404 is not set + - [Config] # RTC_DRV_DA9052 is not set + - [Config] # RTC_DRV_DA9063 is not set + - [Config] # RTC_DRV_STK17TA8 is not set + - [Config] # RTC_DRV_M48T86 is not set + - [Config] # RTC_DRV_M48T35 is not set + - [Config] # RTC_DRV_M48T59 is not set + - [Config] # RTC_DRV_MSM6242 is not set + - [Config] # RTC_DRV_BQ4802 is not set + - [Config] # RTC_DRV_RP5C01 is not set + - [Config] # RTC_DRV_V3020 is not set + - [Config] # RTC_DRV_WM831X is not set + - [Config] # RTC_DRV_PCF50633 is not set + - [Config] # RTC_DRV_PCAP is not set + - [Config] # RTC_DRV_MC13XXX is not set + - [Config] # QCOM_HIDMA_MGMT is not set + - [Config] # QCOM_HIDMA is not set + - [Config] # DW_DMAC is not set + - [Config] # GREYBUS is not set + - [Config] # COMEDI is not set + - [Config] # SPEAKUP is not set + - [Config] # LTE_GDM724X is not set + - [Config] # GS_FPGABOOT is not set + - [Config] # WILC1000_SPI is not set + - [Config] # MOST_USB is not set + - [Config] # ACER_WMI is not set + - [Config] # ACERHDF is not set + - [Config] # ALIENWARE_WMI is not set + - [Config] # ASUS_LAPTOP is not set + - [Config] # DCDBAS is not set + - [Config] # DELL_LAPTOP is not set + - [Config] # DELL_WMI is not set + - [Config] # DELL_WMI_AIO is not set + - [Config] # DELL_SMO8800 is not set + - [Config] # DELL_RBTN is not set + - [Config] # DELL_RBU is not set + - [Config] # DELL_UART_BACKLIGHT is not set + - [Config] # FUJITSU_LAPTOP is not set + - [Config] # FUJITSU_TABLET is not set + - [Config] # AMILO_RFKILL is not set + - [Config] # HP_ACCEL is not set + - [Config] # HP_WIRELESS is not set + - [Config] # HP_WMI is not set + - [Config] # MSI_LAPTOP is not set + - [Config] # PANASONIC_LAPTOP is not set + - [Config] # COMPAL_LAPTOP is not set + - [Config] # SONY_LAPTOP is not set + - [Config] # IDEAPAD_LAPTOP is not set + - [Config] # SENSORS_HDAPS is not set + - [Config] # EEEPC_LAPTOP is not set + - [Config] # MSI_WMI is not set + - [Config] # TOPSTAR_LAPTOP is not set + - [Config] # TOSHIBA_BT_RFKILL is not set + - [Config] # TOSHIBA_HAPS is not set + - [Config] # ACPI_CMPC is not set + - [Config] # INTEL_VBTN is not set + - [Config] # IBM_RTL is not set + - [Config] # SAMSUNG_LAPTOP is not set + - [Config] # INTEL_OAKTRAIL is not set + - [Config] # SAMSUNG_Q10 is not set + - [Config] # APPLE_GMUX is not set + - [Config] # SURFACE_PRO3_BUTTON is not set + - [Config] # MFD_CROS_EC is not set + - [Config] # CHROME_PLATFORMS is not set + - [Config] # COMMON_CLK_WM831X is not set + - [Config] # COMMON_CLK_SI5351 is not set + - [Config] # COMMON_CLK_CDCE706 is not set + - [Config] # COMMON_CLK_CS2000_CP is not set + - [Config] # ALTERA_MBOX is not set + - [Config] # REMOTEPROC is not set + - [Config] # IIO is not set + - [Config] # NTB_PINGPONG is not set + - [Config] # NTB_TOOL is not set + - [Config] # NTB_PERF is not set + - [Config] # VME_USER is not set + - [Config] # PWM is not set + - [Config] # SERIAL_IPOCTAL is not set + - [Config] # BCM_KONA_USB2_PHY is not set + - [Config] # PHY_PXA_28NM_HSIC is not set + - [Config] # PHY_PXA_28NM_USB2 is not set + - [Config] # POWERCAP is not set + - [Config] # ANDROID is not set + - [Config] # STM is not set + - [Config] # INTEL_TH is not set + - [Config] # FPGA is not set + - [Config] # UNISYS_VISORBUS is not set + - [Config] # ORANGEFS_FS is not set + - [Config] # EROFS_FS_ZIP is not set + - [Config] # CRYPTO_AES_TI is not set + - [Config] # CRYPTO_DEV_QAT_C3XXX is not set + - [Config] # CRYPTO_DEV_QAT_C62X is not set + - [Config] # CRYPTO_DEV_QAT_C3XXXVF is not set + - [Config] # CRYPTO_DEV_QAT_C62XVF is not set + - [Config] # FONTS is not set + - [Config] # RUNTIME_TESTING_MENU is not set + - [Config] # SAMPLES is not set + - [Config] # EARLY_PRINTK_USB_XDBC is not set + - [Config] # ACPI_FAN is not set + - [Config] # CB710_CORE is not set + - [Config] # ALTERA_STAPL is not set + - [Config] # USB_NET_DRIVERS is not set + - [Config] # RMI4_CORE is not set + - [Config] # W1 is not set + - [Config] # MFD_WL1273_CORE is not set + - [Config] # USB_ULPI_BUS is not set + - [Config] # USB_WDM is not set + - [Config] # EXTCON is not set + - [Config] # MICROCHIP_PHY is not set + - [Config] # USB_ROLE_SWITCH is not set + - [Config] KERNEL_GZIP=y + - [Config] NO_HZ_FULL=y + - [Config] LEGACY_VSYSCALL_EMULATE=y + - [Config] ACPI_NFIT=y + - [Config] TRANSPARENT_HUGEPAGE_ALWAYS=y + - [Config] PCI_MESON=y + - [Config] BLK_DEV_NVME=y + - [Config] SCSI_FC_ATTRS=y + - [Config] VXLAN=y + - [Config] I2C=m + - [Config] GPIO_MOCKUP=m + - [Config] LEDS_CLASS=m + - [Config] INFINIBAND_IPOIB_DEBUG=y + - [Config] EDAC_DECODE_MCE=y + - [Config] HYPERV=y + - [Config] BLK_DEV_PMEM=y + - [Config] ND_BLK=y + - [Config] DEV_DAX=y + - [Config] DEV_DAX_PMEM=y + - [Config] OVERLAY_FS_REDIRECT_DIR=y + - [Config] SECURITY_APPARMOR_DEBUG=y + - [Config] LOCK_TORTURE_TEST=m + - [Config] HYPERV_STORAGE=y + - [Config] # SECURITY_APPARMOR_DEBUG_ASSERTS is not set + - [Config] # CONFIG_VBOXGUEST is not set + - [Config] CONFIG_USB_XHCI_PCI=y + - SAUCE: ubuntu/sgx: rename mmap_sem to mmap_lock + - [Config] GCC version update + + [ Ubuntu: 5.8.0-12.13 ] + + * groovy/linux: 5.8.0-12.13 -proposed tracker (LP: #1889481) + * Fix right speaker of HP laptop (LP: #1889375) + - SAUCE: hda/realtek: Fix right speaker of HP laptop + * blk_update_request error when mount nvme partition (LP: #1872383) + - SAUCE: nvme-pci: prevent SK hynix PC400 from using Write Zeroes command + * Add support for Atlantic NIC firmware v4 (LP: #1886908) + - Revert "UBUNTU: SAUCE: net: atlantic: Add support for firmware v4" + - net: atlantic: align return value of ver_match function with function name + - net: atlantic: add support for FW 4.x + * Miscellaneous Ubuntu changes + - [Debian] Fix debian/tests for linux-5.8 -> linux rename + - SAUCE: selftests/powerpc: return skip code for spectre_v2 + + [ Ubuntu: 5.8.0-11.12 ] + + * groovy/linux: 5.8.0-11.12 -proposed tracker (LP: #1889336) + * Miscellaneous Ubuntu changes + - [Packaging] dwarves is not required for linux-libc-dev or stage1 + + [ Ubuntu: 5.8.0-10.11 ] + + * groovy/linux: 5.8.0-10.11 -proposed tracker (LP: #1889316) + * Miscellaneous Ubuntu changes + - [Packaging] Add more packages to Build-Depends-Indep for docs + - [Debian] Specify python executable in kmake + - [Debian] Don't treat warnings as errors during perf builds + - [Config] Disable signing for ppc64el + + [ Ubuntu: 5.8.0-9.10 ] + + * groovy/linux: 5.8.0-9.10 -proposed tracker (LP: #1889140) + * Packaging resync (LP: #1786013) + - [Packaging] update helper scripts + * Miscellaneous Ubuntu changes + - SAUCE: Fix s390x compile error on F32 utils/stat-display.c + - [Packaging] Add python3-venv to Build-Depends-Indep + + [ Ubuntu: 5.8.0-8.9 ] + + * groovy/linux: 5.8.0-8.9 -proposed tracker (LP: #1889104) + * Packaging resync (LP: #1786013) + - [Packaging] update helper scripts + - update dkms package versions + - [Packaging] update variants + * Introduce the new NVIDIA 450-server and the 450 UDA series (LP: #1887674) + - [Packaging] NVIDIA -- Add signed modules for 450 450-server + * Introduce the new NVIDIA 418-server and 440-server series, and update the + current NVIDIA drivers (LP: #1881137) + - [packaging] add signed modules for the 418-server and the 440-server + flavours + * Miscellaneous Ubuntu changes + - SAUCE: Revert "radix-tree: Use local_lock for protection" + - [Config] CONFIG_DEBUG_INFO_COMPRESSED=n + - [Config] disable CONFIG_CRYPTO_AEGIS128_SIMD + - [Config] Enable nvidia dkms build + * Miscellaneous upstream changes + - usbip: tools: fix build error for multiple definition + * Rebase to v5.8-rc7 + + [ Ubuntu: 5.8.0-7.8 ] + + * Empty entry + + [ Ubuntu: 5.8.0-7.8 ] + + * soc/amd/renoir: detect dmic from acpi table (LP: #1887734) + - ASoC: amd: add logic to check dmic hardware runtime + - ASoC: amd: add ACPI dependency check + - ASoC: amd: fixed kernel warnings + * linux 4.15.0-109-generic network DoS regression vs -108 (LP: #1886668) + - SAUCE: Revert "netprio_cgroup: Fix unlimited memory leak of v2 cgroups" + * Add support for Atlantic NIC firmware v4 (LP: #1886908) + - SAUCE: net: atlantic: Add support for firmware v4 + * MGA G200e doesn't work under GDM Wayland (LP: #1886140) + - drm/mgag200: Remove HW cursor + - drm/mgag200: Clean up mga_set_start_address() + - drm/mgag200: Clean up mga_crtc_do_set_base() + - drm/mgag200: Move mode-setting code into separate helper function + - drm/mgag200: Split MISC register update into PLL selection, SYNC and I/O + - drm/mgag200: Update mode registers after plane registers + - drm/mgag200: Set pitch in a separate helper function + - drm/mgag200: Set primary plane's format in separate helper function + - drm/mgag200: Move TAGFIFO reset into separate function + - drm/mgag200: Move hiprilvl setting into separate functions + - drm/mgag200: Move register initialization into separate function + - drm/mgag200: Remove out-commented suspend/resume helpers + - drm/mgag200: Use simple-display data structures + - drm/mgag200: Convert to simple KMS helper + - drm/mgag200: Replace VRAM helpers with SHMEM helpers + * Miscellaneous Ubuntu changes + - SAUCE: s390/bpf: fix sign extension in branch_ku + - SAUCE: selftests: net: ip_defrag: modprobe missing nf_defrag_ipv6 support + - SAUCE: selftests: fib_nexthop_multiprefix: fix cleanup() netns deletion + - [packaging] debhelper-compat (= 10) (and retire debian/compat) + - [Config] Update configs after rebase to 5.8-rc6 + * Rebase to v5.8-rc6 + + [ Ubuntu: 5.8.0-6.7 ] + + * Packaging resync (LP: #1786013) + - update dkms package versions + * perf build broken after updating to bintuils 2.34.90.20200706-1ubuntu1 + (LP: #1887397) + - SAUCE: libtraceevent: Strip symbol version from nm output + + [ Ubuntu: 5.8.0-5.6 ] + + * linux-libc-dev broken for crossbuilding, Multi-Arch:same violation + (LP: #1886188) + - [Packaging] Produce linux-libc-deb package for riscv64 + - [Debian] Disallow building linux-libc-dev from linux-riscv + * Miscellaneous Ubuntu changes + - SAUCE: Revert "UBUNTU: SAUCE: test_bpf: remove expected fail for Ctx heavy + transformations test on s390" + - SAUCE: Revert "test_bpf: flag tests that cannot be jited on s390" + - [Config] Update configs (gcc update) + * Rebase to v5.8-rc5 + + [ Ubuntu: 5.8.0-4.5 ] + + * Add generic LED class support for audio LED (LP: #1885896) + - ALSA: hda: generic: Always call led-trigger for mic mute LED + - ALSA: hda: generic: Add a helper for mic-mute LED with LED classdev + - ALSA: hda/realtek: Convert to cdev-variant of mic-mute LED controls + - ALSA: hda/conexant: Convert to cdev-variant of mic-mute LED controls + - ALSA: hda/sigmatel: Convert to cdev-variant of mic-mute LED controls + - ALSA: hda: generic: Drop unused snd_hda_gen_fixup_micmute_led() + - ALSA: hda: generic: Drop the old mic-mute LED hook + - ALSA: hda: generic: Add vmaster mute LED helper + - ALSA: hda/realtek: Use the new vmaster mute LED helper + - ALSA: hda/conexant: Use the new vmaster mute LED helper + - ALSA: hda/sigmatel: Use the new vmaster mute LED helper + - ALSA: hda/realtek: Unify LED helper code + - ALSA: hda: Let LED cdev handling suspend/resume + * seccomp_bpf fails on powerpc (LP: #1885757) + - SAUCE: selftests/seccomp: fix ptrace tests on powerpc + * CVE-2020-11935 + - SAUCE: aufs: do not call i_readcount_inc() + * Miscellaneous Ubuntu changes + - SAUCE: Update aufs to 5.x-rcN 20200622 + - [Config] Update configs to set CONFIG_SND_HDA_GENERIC_LEDS value + - [Config] CONFIG_SECURITY_DMESG_RESTRICT=y + * Rebase to v5.8-rc4 + + [ Ubuntu: 5.8.0-3.4 ] + + * Packaging resync (LP: #1786013) + - [Packaging] update helper scripts + - update dkms package versions + * lxc 1:4.0.2-0ubuntu1 ADT test failure with linux-5.8 5.8.0-1.2 + (LP: #1884635) + - SAUCE: overlayfs: fix faulty rebase + * shiftfs: O_TMPFILE reports ESTALE (LP: #1872757) + - SAUCE: shiftfs: prevent ESTALE for LOOKUP_JUMP lookups + * shiftfs: fix btrfs regression (LP: #1884767) + - SAUCE: Revert "UBUNTU: SAUCE: shiftfs: fix dentry revalidation" + * Miscellaneous Ubuntu changes + - [Config] CONFIG_DEBUG_INFO_COMPRESSED=y + - SAUCE: regulator: rename da903x to da903x-regulator + - [Config] Add da903x to modules.ignore + - [Config] Update configs for rebase to 5.8-rc3 + * Rebase to v5.8-rc3 + + [ Ubuntu: 5.8.0-2.3 ] + + * Support Audio Mute LED for two new HP laptops (LP: #1884251) + - ALSA: hda/realtek: Add mute LED and micmute LED support for HP systems + * CVE-2019-16089 + - SAUCE: nbd_genl_status: null check for nla_nest_start + * tpm: fix TIS locality timeout problems (LP: #1881710) + - SAUCE: tpm: fix TIS locality timeout problems + * Packaging resync (LP: #1786013) + - update dkms package versions + * Miscellaneous Ubuntu changes + - SAUCE: security,perf: Allow further restriction of perf_event_open + - [Config] CONFIG_SECURITY_PERF_EVENTS_RESTRICT=y + - [Config] Update configs and annotations for 5.8-rc2 + - [Config] Enable zfs + - [Config] Enable CONFIG_DEBUG_INFO_BTF + * Rebase to v5.8-rc2 + + [ Ubuntu: 5.8.0-1.2 ] + + * Miscellaneous Ubuntu changes + - [Debian] Support linux-x.y in udeb package names + - [Packaging] Use SRCPKGNAME for udeb packages + + [ Ubuntu: 5.8.0-0.1 ] + + * Docker registry doesn't stay up and keeps restarting (LP: #1879690) + - Revert "UBUNTU: SAUCE: overlayfs: use shiftfs hacks only with shiftfs as underlay" + * Packaging resync (LP: #1786013) + - [Packaging] update variants + * Miscellaneous Ubuntu changes + - [Packaging] Update source package name to linux-5.8 + - SAUCE: (lockdown) Add efi_status_to_str() and rework efi_status_to_err(). + - SAUCE: (lockdown) Make get_cert_list() use efi_status_to_str() to print error messages. + - SAUCE: (lockdown) security: lockdown: expose a hook to lock the kernel down + - SAUCE: (lockdown) efi: Add an EFI_SECURE_BOOT flag to indicate secure boot mode + - SAUCE: (lockdown) efi: Lock down the kernel if booted in secure boot mode + - SAUCE: (lockdown) s390: Lock down the kernel when the IPL secure flag is set + - SAUCE: (lockdown) KEYS: Make use of platform keyring for module signature verify + - SAUCE: (lockdown) arm64: Allow locking down the kernel under EFI secure boot + - SAUCE: (lockdown) security: lockdown: Make CONFIG_LOCK_DOWN_IN_EFI_SECURE_BOOT more generic + - SAUCE: (lockdown) powerpc: lock down kernel in secure boot mode + - SAUCE: Import aufs driver + - [Config] Update configs for v5.8-rc1 + - [Config] Update annotations for v5.8-rc1 config changes + - SAUCE: shiftfs -- Fix build errors from missing fiemap definitions + - Disable hio driver + * Miscellaneous upstream changes + - acpi: disallow loading configfs acpi tables when locked down + * Rebase to v5.8-rc1 + + [ Ubuntu: 5.8.0-0.0 ] + + * Empty entry + + [ Ubuntu: 5.7.0-8.9 ] + + * Packaging resync (LP: #1786013) + - update dkms package versions + * Enforce all config annotations (LP: #1879327) + - [Config]: do not enforce CONFIG_VERSION_SIGNATURE + - [Config]: prepare to enforce all + - [Config]: enforce all config options + * Miscellaneous Ubuntu changes + - [Config]: annotations review after 5.7 rebase + - [Config] annotations: IXP4XX* depends on ARCH_IXP4XX + - [Config] THERMAL_GOV_POWER_ALLOCATOR=y + - [Config] annotations: SOC_CAMERA is marked as BROKEN + - [Config] annotations: NFSD_V4_2_INTER_SSC depends on NFS_FS=y + - [Config] annotations: CRYPTO_DEV_CHELSIO_TLS depends on legacy (and largely + unmantained) TLS_TOE + - [Config] annotations: SERIO_OLPC_APSP depends on ARCH_MMP + - [Config] RTW88_DEBUG=y + - [Config] annotations: ISDN_CAPI is a bool, and BT_CMTP depends on it + - [Config] annotations SND_SOC_SOF_DEVELOPER_SUPPORT depends on + SND_SOC_SOF_DEVELOPER_SUPPORT + - [Config] annotations: SND_SOC_SOF_BAYTRAIL_SUPPORT is mutually exclusive + with SND_SST_ATOM_HIFI2_PLATFORM_ACPI + - [Config] annotations: DEBUG_IMX_UART_PORT is defined only any + DEBUG_IMX*_UART is enabled + - [Config] annotations: HW_RANDOM_IMX_RNGC depends on SOC_IMX25 + - [Config] annotations: armhf: VIRTUALIZATION support was removed for arm32 + - [Config] annotations: arm64: remove DEBUG_ALIGN_RODATA + - [Config] annotations: ppc64: DATA_SHIFT defaults to PPC_PAGE_SHIFT + - [Config] arm64: enforce ARM64_USE_LSE_ATOMICS + - [Config] s390x: MOST is not set + - [Config] s390x: BCM84881_PHY is not set + - [Config] s390x: XILINX_LL_TEMAC is not set + - [Config] s390x: PHY_INTEL_EMMC requires GENERIC_PHY (off by default on + s390x) + - [Config] s390x: CHECK_STACK conflicts with VMAP_STACK + - [Config] annotations: s390x: NODES_SHIFT=1 + - [Config] annotations: import new symbols + - [Config] annotations: remove unmatched menu and options + + [ Ubuntu: 5.7.0-7.8 ] + + * Packaging resync (LP: #1786013) + - update dkms package versions + - [Packaging] update helper scripts + * [UBUNTU 20.04] s390x/pci: fix linking between PF and VF for multifunction + devices (LP: #1879704) + - PCI/IOV: Introduce pci_iov_sysfs_link() function + - s390/pci: create links between PFs and VFs + * Miscellaneous Ubuntu changes + - [Config] Disable UEFI signing for arm64 + - Rebase to v5.7.1 + * Rebase to v5.7.1 + + [ Ubuntu: 5.7.0-6.7 ] + + * Packaging resync (LP: #1786013) + - [Packaging] update helper scripts + - update dkms package versions + * shiftfs: fix btrfs snapshot deletion (LP: #1879688) + - SAUCE: shiftfs: let userns root destroy subvolumes from other users + * seccomp_benchmark times out on eoan (LP: #1881576) + - SAUCE: selftests/seccomp: use 90s as timeout + * Realtek 8723DE [10ec:d723] subsystem [10ec:d738] disconnects unsolicitedly + when Bluetooth is paired: Reason: 23=IEEE8021X_FAILED (LP: #1878147) + - SAUCE: Revert "UBUNTU: SAUCE: rtw88: Move driver IQK to set channel before + association for 11N chip" + - SAUCE: Revert "UBUNTU: SAUCE: rtw88: fix rate for a while after being + connected" + - SAUCE: Revert "UBUNTU: SAUCE: rtw88: No retry and report for auth and assoc" + - SAUCE: Revert "UBUNTU: SAUCE: rtw88: 8723d: Add coex support" + - rtw88: 8723d: Add coex support + - SAUCE: rtw88: coex: 8723d: set antanna control owner + - SAUCE: rtw88: coex: 8723d: handle BT inquiry cases + - SAUCE: rtw88: fix EAPOL 4-way failure by finish IQK earlier + * ASoC/amd: add audio driver for amd renoir (LP: #1881046) + - ASoC: amd: add Renoir ACP3x IP register header + - ASoC: amd: add Renoir ACP PCI driver + - ASoC: amd: add acp init/de-init functions + - ASoC: amd: create acp3x pdm platform device + - ASoC: amd: add ACP3x PDM platform driver + - ASoC: amd: irq handler changes for ACP3x PDM dma driver + - ASoC: amd: add acp3x pdm driver dma ops + - ASoC: amd: add ACP PDM DMA driver dai ops + - ASoC: amd: add Renoir ACP PCI driver PM ops + - ASoC: amd: add ACP PDM DMA driver pm ops + - ASoC: amd: enable Renoir acp3x drivers build + - ASoC: amd: create platform devices for Renoir + - ASoC: amd: RN machine driver using dmic + - ASoC: amd: enable build for RN machine driver + - ASoC: amd: fix kernel warning + - ASoC: amd: refactoring dai_hw_params() callback + - ASoC: amd: return error when acp de-init fails + - [Config]: enable amd renoir ASoC audio + * Slow send speed with Intel I219-V on Ubuntu 18.04.1 (LP: #1802691) + - e1000e: Disable TSO for buffer overrun workaround + * Fix incorrect speed/duplex when I210 device is runtime suspended + (LP: #1880656) + - igb: Report speed and duplex as unknown when device is runtime suspended + * Fix Pericom USB controller OHCI/EHCI PME# defect (LP: #1879321) + - serial: 8250_pci: Move Pericom IDs to pci_ids.h + - PCI: Avoid Pericom USB controller OHCI/EHCI PME# defect + * [UBUNTU 20.04] s390x/pci: enumerate pci functions per physical adapter + (LP: #1874056) + - s390/pci: Expose new port attribute for PCIe functions + - s390/pci: adaptation of iommu to multifunction + - s390/pci: define kernel parameters for PCI multifunction + - s390/pci: define RID and RID available + - s390/pci: create zPCI bus + - s390/pci: adapt events for zbus + - s390/pci: Handling multifunctions + - s390/pci: Do not disable PF when VFs exist + - s390/pci: Documentation for zPCI + - s390/pci: removes wrong PCI multifunction assignment + * add 16-bit width registers support for EEPROM at24 device (LP: #1876699) + - regmap-i2c: add 16-bit width registers support + * Miscellaneous Ubuntu changes + - [Config] Enable virtualbox guest and shared-folder modules + * Rebase to v5.7 + + [ Ubuntu: 5.7.0-5.6 ] + + * Packaging resync (LP: #1786013) + - update dkms package versions + * [UBUNTU 20.04] PSI generates overhead on s390x (LP: #1876044) + - Ubuntu: [Config] CONFIG_PSI is enabled by default, but creates additional + overhead on s390x, hence should be disabled by default on s390x only. + * Miscellaneous Ubuntu changes + - Rebase to v5.7-rc7 + - [Config] ppc64el: disable STRICT_KERNEL_RWX + * Rebase to v5.7-rc7 + + [ Ubuntu: 5.7.0-4.5 ] + + * Packaging resync (LP: #1786013) + - update dkms package versions + * update-initramfs complains of missing amdgpu firmware files (LP: #1873325) + - SAUCE: drm/amdgpu: Remove unreleased arcturus and navi12 firmware from + modinfo + * Support DMIC micmute LED on HP platforms (LP: #1876859) + - ALSA: hda/realtek - Introduce polarity for micmute LED GPIO + - ALSA: hda/realtek - Enable micmute LED on and HP system + - ALSA: hda/realtek - Add LED class support for micmute LED + - ALSA: hda/realtek - Fix unused variable warning w/o + CONFIG_LEDS_TRIGGER_AUDIO + - ASoC: SOF: Update correct LED status at the first time usage of + update_mute_led() + * Killer(R) Wi-Fi 6 AX1650i 160MHz Wireless Network Adapter (201NGW), + REV=0x354 [8086:a0f0] subsystem id [1a56:1651] wireless adapter not found + due to firmware crash (LP: #1874685) + - SAUCE: iwlwifi: pcie: handle QuZ configs with killer NICs as well + * rtkit-daemon[*]: Failed to make ourselves RT: Operation not permitted after + upgrade to 20.04 (LP: #1875665) + - [Config] Turn off CONFIG_RT_GROUP_SCHED everywhere + * Unable to handle kernel pointer dereference in virtual kernel address space + on Eoan (LP: #1876645) + - SAUCE: overlayfs: fix shitfs special-casing + * Miscellaneous Ubuntu changes + - SAUCE: skip building selftest 'runqslower' if kernel not built + - Rebase to v5.7-rc6 + - [Config] updateconfigs after 5.7-rc6 rebase + * Rebase to v5.7-rc6 + + [ Ubuntu: 5.7.0-3.4 ] + + * Rebase to v5.7-rc5 + * Packaging resync (LP: #1786013) + - update dkms package versions + * getitimer returns it_value=0 erroneously (LP: #1349028) + - [Config] CONTEXT_TRACKING_FORCE policy should be unset + * lockdown on power (LP: #1855668) // Ubuntu Kernel Support for OpenPOWER NV + Secure & Trusted Boot (LP: #1866909) + - [Config] Enable configs for OpenPOWER NV Secure & Trusted Boot + * Miscellaneous Ubuntu changes + - SAUCE: Import aufs driver + - [Config] Enable aufs + - [Config] annotations: remove SND_SOC_SOF_HDA_COMMON_HDMI_CODEC + - [Config] Remove CONFIG_SND_HDA_INTEL_DETECT_DMIC from annotations + - [Debian] final-checks -- Do not remove ~* from abi + - [Config] Enable 5-level page table support for x86 + - [Config] updateconfigs after 5.7-rc5 rebase + + [ Ubuntu: 5.7.0-2.3 ] + + * Packaging resync (LP: #1786013) + - [Packaging] update helper scripts + - update dkms package versions + - [Packaging] update helper scripts + * ASUS T100HAN boots to a blank screen with a cursor [i965: Failed to submit + batchbuffer: Input/output error] (LP: #1860754) + - [Config] CONFIG_PMIC_OPREGION=y and CONFIG_GPIO_CRYSTAL_COVE=y for amd64 + * ubuntu/focal64 fails to mount Vagrant shared folders (LP: #1873506) + - [Packaging] Move virtualbox modules to linux-modules + - [Packaging] Remove vbox and zfs modules from generic.inclusion-list + * built-using constraints preventing uploads (LP: #1875601) + - temporarily drop Built-Using data + * dkms artifacts may expire from the pool (LP: #1850958) + - [Packaging] autoreconstruct -- manage executable debian files + - [packaging] handle downloads from the librarian better + * Add signed modules for the 435 NVIDIA driver (LP: #1875888) + - [Packaging] NVIDIA -- add signed modules for the 435 NVIDIA driver + * [Selftests] Apply various fixes and improvements (LP: #1870543) + - SAUCE: selftests/seccomp -- Disable timeout for seccomp tests + * [17.04 FEAT] Integrate kernel message catalogue for s390x into Ubuntu + distribution (LP: #1628889) + - SAUCE: s390: kernel message catalog + * Overlayfs in user namespace leaks directory content of inaccessible + directories (LP: #1793458) // CVE-2018-6559 + - SAUCE: overlayfs: ensure mounter privileges when reading directories + * suspend only works once on ThinkPad X1 Carbon gen 7 (LP: #1865570) + - SAUCE: e1000e: Disable s0ix flow for X1 Carbon 7th + * [ICL] TC port in legacy/static mode can't be detected due TCCOLD + (LP: #1868936) + - drm/i915/display: Move out code to return the digital_port of the aux ch + - drm/i915/display: Add intel_legacy_aux_to_power_domain() + - drm/i915/display: Split hsw_power_well_enable() into two + - drm/i915/tc/icl: Implement TC cold sequences + - drm/i915/tc: Skip ref held check for TC legacy aux power wells + - drm/i915/tc/tgl: Implement TC cold sequences + - drm/i915/tc: Catch TC users accessing FIA registers without enable aux + - drm/i915/tc: Do not warn when aux power well of static TC ports timeout + * Touchpad doesn't work on Dell Inspiron 7000 2-in-1 (LP: #1851901) + - Revert "UBUNTU: SAUCE: mfd: intel-lpss: add quirk for Dell XPS 13 7390 + 2-in-1" + * 'Elan touchpad' not detected on 'Lenovo ThinkBook 15 IIL' (LP: #1861610) + - SAUCE: Input: elan_i2c - add more hardware ID for Lenovo laptop + * linux-image-5.0.0-35-generic breaks checkpointing of container + (LP: #1857257) + - SAUCE: overlayfs: use shiftfs hacks only with shiftfs as underlay + * alsa/sof: kernel oops on the machine without Intel hdmi audio codec (a + regression in the asoc machine driver) (LP: #1874359) + - ASoC: intel/skl/hda - fix oops on systems without i915 audio codec + * Add debian/rules targets to compile/run kernel selftests (LP: #1874286) + - [Packaging] add support to compile/run selftests + * 5.4.0-24.28 does not seem to apply rtprio, whereas -21 does. (LP: #1873315) + - [Config] lowlatency: turn off RT_GROUP_SCHED + * alsa/sof: external mic can't be deteced on Lenovo and HP laptops + (LP: #1872569) + - SAUCE: ASoC: intel/skl/hda - set autosuspend timeout for hda codecs + * shiftfs: O_TMPFILE reports ESTALE (LP: #1872757) + - SAUCE: shiftfs: fix dentry revalidation + * shiftfs: broken shiftfs nesting (LP: #1872094) + - SAUCE: shiftfs: record correct creator credentials + * lockdown on power (LP: #1855668) + - SAUCE: (lockdown) powerpc: lock down kernel in secure boot mode + * Add support for Realtek 8723DE wireless adapter (LP: #1780590) + - SAUCE: rtw88: add adaptivity support for EU/JP regulatory + - SAUCE: rtw88: update tx descriptor of mgmt and rsvd page packets + - SAUCE: rtw88: sar: dump sar information via debugfs + - SAUCE: rtw88: 8723d: add IQ calibration + - SAUCE: rtw88: 8723d: Add power tracking + - SAUCE: rtw88: 8723d: implement flush queue + - SAUCE: rtw88: 8723d: set ltecoex register address in chip_info + - SAUCE: rtw88: 8723d: Add coex support + - SAUCE: rtw88: 8723d: Add shutdown callback to disable BT USB suspend + * Fix authentication fail on Realtek WiFi 8723de (LP: #1871300) + - SAUCE: rtw88: No retry and report for auth and assoc + - SAUCE: rtw88: fix rate for a while after being connected + - SAUCE: rtw88: Move driver IQK to set channel before association for 11N chip + * Miscellaneous Ubuntu changes + - SAUCE: rtw88: fix 'const' mismatch in power suequence hooks + - SAUCE: rtw88: fix 'const' mismatch in + __priority_queue_cfg_legacy()/__priority_queue_cfg() + - [Config] RTW88=m + - SAUCE: (lockdown) Revert carried-forward lockdown patches + - SAUCE: (lockdown) Add efi_status_to_str() and rework efi_status_to_err(). + - SAUCE: (lockdown) Make get_cert_list() use efi_status_to_str() to print + error messages. + - SAUCE: (lockdown) security: lockdown: expose a hook to lock the kernel down + - SAUCE: (lockdown) efi: Add an EFI_SECURE_BOOT flag to indicate secure boot + mode + - SAUCE: (lockdown) efi: Lock down the kernel if booted in secure boot mode + - SAUCE: (lockdown) s390: Lock down the kernel when the IPL secure flag is set + - SAUCE: (lockdown) KEYS: Make use of platform keyring for module signature + verify + - SAUCE: (lockdown) arm64: Allow locking down the kernel under EFI secure boot + - SAUCE: (lockdown) security: lockdown: Make + CONFIG_LOCK_DOWN_IN_EFI_SECURE_BOOT more generic + - [Config] Add back CONFIG_LOCK_DOWN_IN_SECURE_BOOT annotation for ppc64el + - [Config] CONFIG_RT_GROUP_SCHED=y + - [Packaging] Include modules.builtin.modinfo in linux-modules + - SAUCE: LSM: Infrastructure management of the sock security + - SAUCE: Fix-up af_unix mediation for sock infrastructure management + - SAUCE: Revert "apparmor: Allow filtering based on secmark policy" + - SAUCE: Revert "apparmor: Parse secmark policy" + - SAUCE: Revert "apparmor: Add a wildcard secid" + - SAUCE: Revert "apparmor: fixup secid map conversion to using IDR" + - SAUCE: Revert "apparmor: Use an IDR to allocate apparmor secids" + - SAUCE: Revert "apparmor: add support for mapping secids and using secctxes" + - Update dropped.txt for restored apparmor patches + - Remove lockdown patches from dropped.txt + - SAUCE: powerpc/ima: require IMA module signatures only if MODULE_SIG is not + enabled + - SAUCE: selftests/ftrace: Use printf instead of echo in kprobe syntax error + tests + - SAUCE: selftests/net -- disable l2tp.sh test + - SAUCE: selftests/net -- disable timeout + - SAUCE: tools: hv: Update shebang to use python3 instead of python + - Remove dropped.txt + - [Packaging] move linux-doc and linux-libc-dev stubs to debian.master + - [Debian] Support generating configs for riscv64 + - [Config] CONFIG_KMSG_IDS=y for s390x + - [Packaging] add libcap-dev dependency + - [Config] CONFIG_AD5770R=m + - [Config] CONFIG_AL3010=m + - [Config] CONFIG_APPLE_MFI_FASTCHARGE=m + - [Config] CONFIG_BAREUDP=m + - [Config] CONFIG_CRYPTO_DEV_OCTEONTX_CPT=m + - [Config] CONFIG_CRYPTO_DEV_ZYNQMP_AES=m + - [Config] CONFIG_DRM_DISPLAY_CONNECTOR=m + - [Config] CONFIG_DRM_PANEL_BOE_TV101WUM_NL6=m + - [Config] CONFIG_DRM_PANEL_ELIDA_KD35T133=m + - [Config] CONFIG_DRM_PANEL_FEIXIN_K101_IM2BA02=m + - [Config] CONFIG_DRM_PANEL_NOVATEK_NT35510=m + - [Config] CONFIG_DRM_PANEL_SAMSUNG_S6E88A0_AMS452EF01=m + - [Config] CONFIG_DRM_PARADE_PS8640=m + - [Config] CONFIG_DRM_SIMPLE_BRIDGE=m + - [Config] CONFIG_DRM_TIDSS=m + - [Config] CONFIG_DRM_TI_TPD12S015=m + - [Config] CONFIG_DRM_TOSHIBA_TC358768=m + - [Config] CONFIG_EDAC_DMC520=m + - [Config] CONFIG_EXFAT_FS=m + - [Config] CONFIG_GP2AP002=m + - [Config] CONFIG_GPIO_MLXBF2=m + - [Config] CONFIG_HID_GLORIOUS=m + - [Config] CONFIG_HID_MCP2221=m + - [Config] CONFIG_HMC425=m + - [Config] CONFIG_ICP10100=m + - [Config] CONFIG_IMX8MM_THERMAL=m + - [Config] CONFIG_IMX_SC_THERMAL=m + - [Config] CONFIG_INTERCONNECT_QCOM_OSM_L3=m + - [Config] CONFIG_INTERCONNECT_QCOM_SC7180=m + - [Config] CONFIG_K3_RTI_WATCHDOG=m + - [Config] CONFIG_MDIO_IPQ8064=m + - [Config] CONFIG_MDIO_MVUSB=m + - [Config] CONFIG_MHI_BUS=m + - [Config] CONFIG_OCTEONTX2_VF=m + - [Config] CONFIG_PHY_CADENCE_TORRENT=m + - [Config] CONFIG_PHY_QCOM_USB_HS_28NM=m + - [Config] CONFIG_PHY_QCOM_USB_SS=m + - [Config] CONFIG_PINCTRL_DA9062=m + - [Config] CONFIG_PINCTRL_IPQ6018=m + - [Config] CONFIG_PTP_1588_CLOCK_IDT82P33=m + - [Config] CONFIG_PTP_1588_CLOCK_VMW=m + - [Config] CONFIG_QCOM_IPA=m + - [Config] CONFIG_REGULATOR_MP5416=m + - [Config] CONFIG_REGULATOR_MP886X=m + - [Config] CONFIG_RN5T618_ADC=m + - [Config] CONFIG_RTC_DRV_MT2712=m + - [Config] CONFIG_RTC_DRV_RC5T619=m + - [Config] CONFIG_SC_MSS_7180=m + - [Config] CONFIG_SENSORS_AXI_FAN_CONTROL=m + - [Config] CONFIG_SM_GCC_8250=m + - [Config] CONFIG_SND_BCM63XX_I2S_WHISTLER=m + - [Config] CONFIG_SND_MESON_AIU=m + - [Config] CONFIG_SND_MESON_G12A_TOACODEC=m + - [Config] CONFIG_SND_MESON_GX_SOUND_CARD=m + - [Config] CONFIG_SND_SOC_AMD_RV_RT5682_MACH=m + - [Config] CONFIG_SND_SOC_INTEL_SOF_PCM512x_MACH=m + - [Config] CONFIG_SND_SOC_MESON_T9015=m + - [Config] CONFIG_SND_SOC_RT5682_SDW=m + - [Config] CONFIG_SND_SOC_TLV320ADCX140=m + - [Config] CONFIG_SPI_FSI=m + - [Config] CONFIG_SPI_MTK_NOR=m + - [Config] CONFIG_SPI_MUX=m + - [Config] CONFIG_SPRD_THERMAL=m + - [Config] CONFIG_SURFACE_3_POWER_OPREGION=m + - [Config] CONFIG_TINYDRM_ILI9486=m + - [Config] CONFIG_TI_K3_AM65_CPSW_NUSS=m + - [Config] CONFIG_TYPEC_MUX_INTEL_PMC=m + - [Config] CONFIG_UACCE=m + - [Config] CONFIG_UNIPHIER_XDMAC=m + - [Config] CONFIG_USB_MAX3420_UDC=m + - [Config] CONFIG_USB_RAW_GADGET=m + - [Config] CONFIG_VHOST_VDPA=m + - [Config] CONFIG_VIDEO_IMX219=m + - [Config] CONFIG_VIDEO_SUN8I_ROTATE=m + - [Config] CONFIG_VIRTIO_VDPA=m + - [Config] CONFIG_MOST_COMPONENTS=m + - [Config] CONFIG_MFD_IQS62X=m + - packaging: getabis: switch to ckt-ppa:bootstrap/linux-5.7 + * Miscellaneous upstream changes + - Revert "UBUNTU: SAUCE: rtw88: add rtw_read8_mask and rtw_read16_mask" + - Revert "UBUNTU: SAUCE: drm/i915/fbc: disable framebuffer compression on + IceLake" + - Revert "UBUNTU: SAUCE: platform/x86: dell-uart-backlight: move retry block" + + [ Ubuntu: 5.7.0-1.2 ] + + * Packaging resync (LP: #1786013) + - [Packaging] update helper scripts + * Miscellaneous Ubuntu changes + - SAUCE: hio: pass make_request ptr directly to blk_alloc_queue() + - SAUCE: hio: locally define disk_map_sector_rcu() + - SAUCE: hio: Revert "block: unexport disk_map_sector_rcu" + - SAUCE: hio: include + - [Config] amd64: i386: HIO=m + - [Config] updateconfigs after 5.7-rc3 rebase + + [ Ubuntu: 5.7.0-0.1 ] + + * Miscellaneous Ubuntu changes + - [Config] updateconfigs after rebase to 5.7-rc1 + * Rebase to v5.7-rc1 + * Rebase to v5.7-rc2 + + [ Ubuntu: 5.7.0-0.0 ] + + * Dummy entry + + [ Ubuntu: 5.6.0-7.7 ] + + * Packaging resync (LP: #1786013) + - update dkms package versions + * Kernel Oops - general protection fault: 0000 [#1] SMP PTI after + disconnecting thunderbolt docking station (LP: #1864754) + - SAUCE: ptp: free ptp clock properly + * swap storms kills interactive use (LP: #1861359) + - SAUCE: mm/page_alloc.c: disable memory reclaim watermark boosting by default + * sysfs: incorrect network device permissions on network namespace change + (LP: #1865359) + - sysfs: add sysfs_file_change_owner() + - sysfs: add sysfs_link_change_owner() + - sysfs: add sysfs_group{s}_change_owner() + - sysfs: add sysfs_change_owner() + - device: add device_change_owner() + - drivers/base/power: add dpm_sysfs_change_owner() + - net-sysfs: add netdev_change_owner() + - net-sysfs: add queue_change_owner() + - net: fix sysfs permssions when device changes network namespace + - sysfs: fix static inline declaration of sysfs_groups_change_owner() + * Miscellaneous Ubuntu changes + - [Config] updateconfigs after rebase to 5.6 + * Rebase to v5.6 + + [ Ubuntu: 5.6.0-6.6 ] + + * suspend only works once on ThinkPad X1 Carbon gen 7 (LP: #1865570) + - SAUCE: e1000e: Disable s0ix flow for X1 Carbon 7th + * Make Dell WD19 dock more reliable after suspend (LP: #1868217) + - xhci: Ensure link state is U3 after setting USB_SS_PORT_LS_U3 + - xhci: Wait until link state trainsits to U0 after setting USB_SS_PORT_LS_U0 + - xhci: Finetune host initiated USB3 rootport link suspend and resume + * update-version-dkms doesn't add a BugLink (LP: #1867790) + - [Packaging] Add BugLink to update-version-dkms commit + * Add support for Realtek 8723DE wireless adapter (LP: #1780590) + - SAUCE: rtw88: add regulatory process strategy for different chipset + - SAUCE: rtw88: support dynamic user regulatory setting + - SAUCE: rtw88: Use secondary channel offset enumeration + - SAUCE: rtw88: 8822c: modify rf protection setting + - SAUCE: rtw88: disable TX-AMSDU on 2.4G band + - SAUCE: Revert "rtw88: disable TX-AMSDU on 2.4G band" + - SAUCE: rtw88: disable TX-AMSDU on 2.4G band + - SAUCE: rtw88: remove unused parameter vif in rtw_lps_pg_info_get() + - SAUCE: rtw88: add rtw_read8_mask and rtw_read16_mask + - SAUCE: rtw88: pci: 8822c should set clock delay to zero + - SAUCE: rtw88: move rtw_enter_ips() to the last when config + - SAUCE: rtw88: avoid holding mutex for cancel_delayed_work_sync() + - SAUCE: rtw88: add ciphers to suppress error message + - SAUCE: rtw88: 8822c: update power sequence to v16 + - SAUCE: rtw88: Fix incorrect beamformee role setting + - SAUCE: rtw88: don't hold all IRQs disabled for PS operations + - SAUCE: rtw88: extract alloc rsvd_page and h2c skb routines + - SAUCE: rtw88: associate reserved pages with each vif + - SAUCE: rtw88: add adaptivity support for EU/JP regulatory + - SAUCE: rtw88: 8723d: Add basic chip capabilities + - SAUCE: rtw88: 8723d: add beamform wrapper functions + - SAUCE: rtw88: 8723d: Add power sequence + - SAUCE: rtw88: 8723d: Add RF read/write ops + - SAUCE: rtw88: 8723d: Add mac/bb/rf/agc/power_limit tables + - SAUCE: rtw88: 8723d: Add cfg_ldo25 to control LDO25 + - SAUCE: rtw88: 8723d: Add new chip op efuse_grant() to control efuse access + - SAUCE: rtw88: 8723d: Add read_efuse to recognize efuse info from map + - SAUCE: rtw88: add legacy firmware download for 8723D devices + - SAUCE: rtw88: no need to send additional information to legacy firmware + - SAUCE: rtw88: 8723d: Add mac power-on/-off function + - SAUCE: rtw88: decompose while(1) loop of power sequence polling command + - SAUCE: rtw88: 8723d: 11N chips don't support H2C queue + - SAUCE: rtw88: 8723d: implement set_tx_power_index ops + - SAUCE: rtw88: 8723d: Organize chip TX/RX FIFO + - SAUCE: rtw88: 8723d: initialize mac/bb/rf basic functions + - SAUCE: rtw88: 8723d: Add DIG parameter + - SAUCE: rtw88: 8723d: Add query_rx_desc + - SAUCE: rtw88: 8723d: Add set_channel + - SAUCE: rtw88: handle C2H_CCX_TX_RPT to know if packet TX'ed successfully + - SAUCE: rtw88: 8723d: 11N chips don't support LDPC + - SAUCE: rtw88: set default port to firmware + - SAUCE: rtw88: update tx descriptor of mgmt and rsvd page packets + - SAUCE: rtw88: sar: add SAR of TX power limit + - SAUCE: rtw88: sar: Load static SAR table from ACPI WRDS method + - SAUCE: rtw88: sar: Load dynamic SAR table from ACPI methods + - SAUCE: rtw88: sar: apply dynamic SAR table to tx power limit + - SAUCE: rtw88: sar: add sar_work to poll if dynamic SAR table is changed + - SAUCE: rtw88: sar: dump sar information via debugfs + - SAUCE: rtw88: 8723d: Add chip_ops::false_alarm_statistics + - SAUCE: rtw88: 8723d: Set IG register for CCK rate + - SAUCE: rtw88: 8723d: add interface configurations table + - SAUCE: rtw88: 8723d: Add LC calibration + - SAUCE: rtw88: 8723d: add IQ calibration + - SAUCE: rtw88: 8723d: Add power tracking + - SAUCE: rtw88: 8723d: Add shutdown callback to disable BT USB suspend + - SAUCE: rtw88: 8723d: implement flush queue + - SAUCE: rtw88: 8723d: set ltecoex register address in chip_info + - SAUCE: rtw88: 8723d: Add coex support + - SAUCE: rtw88: fill zeros to words 0x06 and 0x07 of security cam entry + - SAUCE: rtw88: 8723d: Add 8723DE to Kconfig and Makefile + - [Config] CONFIG_RTW88_8723DE=y + * [Ubuntu 20.04] Unset HIBERNATION and PM kernel config options for focal + (LP: #1867753) + - [Config] CONFIG_HIBERNATION=n and CONFIG_PM=n for s390x + * [20.04 FEAT] Base KVM setup for secure guests - kernel part (LP: #1835531) + - s390/protvirt: introduce host side setup + - s390/protvirt: add ultravisor initialization + - s390/mm: provide memory management functions for protected KVM guests + - s390/mm: add (non)secure page access exceptions handlers + - s390/protvirt: Add sysfs firmware interface for Ultravisor information + - KVM: s390/interrupt: do not pin adapter interrupt pages + - KVM: s390: protvirt: Add UV debug trace + - KVM: s390: add new variants of UV CALL + - KVM: s390: protvirt: Add initial vm and cpu lifecycle handling + - KVM: s390: protvirt: Secure memory is not mergeable + - KVM: s390/mm: Make pages accessible before destroying the guest + - KVM: s390: protvirt: Handle SE notification interceptions + - KVM: s390: protvirt: Instruction emulation + - KVM: s390: protvirt: Implement interrupt injection + - KVM: s390: protvirt: Add SCLP interrupt handling + - KVM: s390: protvirt: Handle spec exception loops + - KVM: s390: protvirt: Add new gprs location handling + - KVM: S390: protvirt: Introduce instruction data area bounce buffer + - KVM: s390: protvirt: handle secure guest prefix pages + - KVM: s390/mm: handle guest unpin events + - KVM: s390: protvirt: Write sthyi data to instruction data area + - KVM: s390: protvirt: STSI handling + - KVM: s390: protvirt: disallow one_reg + - KVM: s390: protvirt: Do only reset registers that are accessible + - KVM: s390: protvirt: Only sync fmt4 registers + - KVM: s390: protvirt: Add program exception injection + - KVM: s390: protvirt: UV calls in support of diag308 0, 1 + - KVM: s390: protvirt: Report CPU state to Ultravisor + - KVM: s390: protvirt: Support cmd 5 operation state + - KVM: s390: protvirt: Mask PSW interrupt bits for interception 104 and 112 + - KVM: s390: protvirt: do not inject interrupts after start + - KVM: s390: protvirt: Add UV cpu reset calls + - DOCUMENTATION: Protected virtual machine introduction and IPL + - KVM: s390: protvirt: introduce and enable KVM_CAP_S390_PROTECTED + - KVM: s390: protvirt: Add KVM api documentation + - mm/gup/writeback: add callbacks for inaccessible pages + * All PS/2 ports on PS/2 Serial add-in bracket are not working after S3 + (LP: #1866734) + - SAUCE: Input: i8042 - fix the selftest retry logic + * Sys oopsed with sysfs test in ubuntu_stress_smoke_test on X-hwe ARM64 + (LP: #1866772) + - ACPI: sysfs: copy ACPI data using io memory copying + * Miscellaneous Ubuntu changes + - hio -- remove duplicated MODULE_DEVICE_TABLE declaration + - SAUCE: r8169: disable ASPM L1.1 + - [Config] update annotations from configs + - [Config] update configs after annotation file review + - SAUCE: Revert "tools/power turbostat: Fix 32-bit capabilities warning" + * Miscellaneous upstream changes + - drm/i915: Fix eDP DPCD aux max backlight calculations + - drm/dp: Introduce EDID-based quirks + - drm/i915: Force DPCD backlight mode on X1 Extreme 2nd Gen 4K AMOLED panel + - drm/i915: Force DPCD backlight mode for some Dell CML 2020 panels + * Rebase to v5.6-rc7 + + [ Ubuntu: 5.6.0-5.5 ] + + * please help enable CONFIG_EROFS_FS_ZIP (LP: #1867099) + - [Config] CONFIG_EROFS_FS_ZIP=y + - [Config] CONFIG_EROFS_FS_CLUSTER_PAGE_LIMIT=1 + * Miscellaneous Ubuntu changes + - Config: Fix SND_HDA_PREALLOC_SIZE annotations + - Config: Fix DATA_SHIFT annotations + - Config: remove ANDROID_VSOC from annotations + - Config: remove arm arch from annotations + - Config: Update SOC_R8A7796X annotations + - Config: Update CLK_R8A7796X annotations + - update dkms package versions + - [Config] updateconfigs after rebase to 5.6-rc6 + * Rebase to v5.6-rc6 + + [ Ubuntu: 5.6.0-4.4 ] + + * Packaging resync (LP: #1786013) + - [Packaging] resync getabis + - [Packaging] update helper scripts + * Add sysfs attribute to show remapped NVMe (LP: #1863621) + - SAUCE: ata: ahci: Add sysfs attribute to show remapped NVMe device count + * [20.04 FEAT] Compression improvements in Linux kernel (LP: #1830208) + - [Config] Introducing s390x specific kernel config option CONFIG_ZLIB_DFLTCC + * [UBUNTU 20.04] s390x/pci: increase CONFIG_PCI_NR_FUNCTIONS to 512 in kernel + config (LP: #1866056) + - [Config] Increase CONFIG_PCI_NR_FUNCTIONS from 64 to 512 starting with focal + on s390x + * CONFIG_IP_MROUTE_MULTIPLE_TABLES is not set (LP: #1865332) + - [Config] CONFIG_IP_MROUTE_MULTIPLE_TABLES=y + * [UBUNTU 20.04] Enable CONFIG_NET_SWITCHDEV in kernel config for s390x + starting with focal (LP: #1865452) + - [Config] Enable CONFIG_NET_SWITCHDEV in kernel config for s390x starting + with focal + * Miscellaneous Ubuntu changes + - SAUCE: Revert "UBUNTU: SAUCE: blk/core: Gracefully handle unset + make_request_fn" + - [Packaging] prevent duplicated entries in modules.ignore + - update dkms package versions + - [Config] updateconfigs after rebase to 5.6-rc5 + * Rebase to v5.6-rc5 + + [ Ubuntu: 5.6.0-3.3 ] + + * nsleep-lat / set-timer-lat / inconsistency-check / raw_skew from timer in + ubuntu_kernel_selftests timeout on 5.3 / 5.4 (LP: #1864626) + - selftests/timers: Turn off timeout setting + * Update kernel options CONFIG_NR_CPUS and CONFIG_NUMA_EMU for focal + (LP: #1864198) + - Ubuntu: [Config] Update kernel options CONFIG_NR_CPUS and CONFIG_NUMA_EMU + * alsa/hda/realtek: fix a mute led regression on Lenovo X1 Carbon + (LP: #1864576) + - SAUCE: ALSA: hda/realtek - Fix a regression for mute led on Lenovo Carbon X1 + * r8152 init may take up to 40 seconds at initialization with Dell WD19/WD19DC + during hotplug (LP: #1864284) + - UBUNTU SAUCE: r8151: check disconnect status after long sleep + * Another Dell AIO backlight issue (LP: #1863880) + - SAUCE: platform/x86: dell-uart-backlight: move retry block + * Backport GetFB2 ioctl (LP: #1863874) + - SAUCE: drm: Add getfb2 ioctl + * Focal Fossa (20.04) feature request - Enable CONFIG_X86_UV (LP: #1863810) + - [Config] CONFIG_X86_UV=y + * Miscellaneous Ubuntu changes + - debian: remove snapdragon config, rules and flavour + - remove snapdragon abi files + - update dkms package versions + - [Config] updateconfigs after rebase to 5.6-rc4 + * Miscellaneous upstream changes + - updateconfigs following snapdragon removal + * Rebase to v5.6-rc4 + + [ Ubuntu: 5.6.0-2.2 ] + + * Sometimes can't adjust brightness on Dell AIO (LP: #1862885) + - SAUCE: platform/x86: dell-uart-backlight: increase retry times + * Dell XPS 13 (7390) Display Flickering - 19.10 (LP: #1849947) + - SAUCE: drm/i915: Disable PSR by default on all platforms + * Miscellaneous Ubuntu changes + - [debian] ignore missing wireguard module + - SAUCE: (lockdown) Add efi_status_to_str() and rework efi_status_to_err(). + - SAUCE: (lockdown) security: lockdown: expose a hook to lock the kernel down + - SAUCE: (lockdown) efi: Add an EFI_SECURE_BOOT flag to indicate secure boot + mode + - SAUCE: (lockdown) efi: Lock down the kernel if booted in secure boot mode + - SAUCE: (lockdown) s390: Lock down the kernel when the IPL secure flag is set + - SAUCE: (lockdown) KEYS: Make use of platform keyring for module signature + verify + - SAUCE: (lockdown) arm64: Allow locking down the kernel under EFI secure boot + - SAUCE: (lockdown) security: lockdown: Make + CONFIG_LOCK_DOWN_IN_EFI_SECURE_BOOT more generic + - [Config] CONFIG_LOCK_DOWN_IN_SECURE_BOOT=y + - update dkms package versions + - [Config] updateconfigs after rebase to 5.6-rc3 + * Miscellaneous upstream changes + - Revert "UBUNTU: SAUCE: (lockdown) s390/ipl: lockdown kernel when booted + secure" + - Revert "UBUNTU: SAUCE: (lockdown) KEYS: Make use of platform keyring for + module signature verify" + - Revert "UBUNTU: SAUCE: (lockdown) Add a SysRq option to lift kernel + lockdown" + - Revert "UBUNTU: SAUCE: (lockdown) security: lockdown: expose a hook to lock + the kernel down" + - Revert "UBUNTU: SAUCE: (lockdown) Add efi_status_to_str() and rework + efi_status_to_err()." + + [ Ubuntu: 5.6.0-1.1 ] + + * Integrate Intel SGX driver into linux-azure (LP: #1844245) + - [Packaging] Add systemd service to load intel_sgx + * QAT drivers for C3XXX and C62X not included as modules (LP: #1845959) + - [Config] CRYPTO_DEV_QAT_C3XXX=m, CRYPTO_DEV_QAT_C62X=m and + CRYPTO_DEV_QAT_DH895xCC=m + * 5.4.0-11 crash on cryptsetup open (LP: #1860231) + - SAUCE: blk/core: Gracefully handle unset make_request_fn + * multi-zone raid0 corruption (LP: #1850540) + - SAUCE: md/raid0: Use kernel specific layout + * Miscellaneous Ubuntu changes + - update dkms package versions + - update dropped.txt after rebase to v5.6-rc1 + - [Config] updateconfigs after rebase to 5.6-rc1 + - hio -- proc_create() requires a "struct proc_ops" in 5.6 + - SAUCE: arm: fix build error in kvm tracepoint + * Miscellaneous upstream changes + - Revert "UBUNTU: [Config] Disable the uselib system call" + - Revert "UBUNTU: [Config] Disable legacy PTY naming" + - Revert "UBUNTU: [Config] Enforce filtered access to iomem" + - Revert "UBUNTU: [Config] Enable notifier call chain validations" + - Revert "UBUNTU: [Config] Enable scatterlist validation" + - Revert "UBUNTU: [Config] Enable cred sanity checks" + - Revert "UBUNTU: [Config] Enable linked list manipulation checks" + * Rebase to v5.6-rc1 + + [ Ubuntu: 5.6.0-0.0 ] + + * Dummy entry + + [ Ubuntu: 5.5.0-7.8 ] + + * CONFIG_USELIB should be disabled (LP: #1855341) + - [Config] Disable the uselib system call + * CONFIG_LEGACY_PTYS should be disabled (LP: #1855339) + - [Config] Disable legacy PTY naming + * CONFIG_IO_STRICT_DEVMEM should be enabled (LP: #1855338) + - [Config] Enforce filtered access to iomem + * CONFIG_DEBUG_NOTIFIERS should be enabled (LP: #1855337) + - [Config] Enable notifier call chain validations + * CONFIG_DEBUG_SG should be enabled (LP: #1855336) + - [Config] Enable scatterlist validation + * CONFIG_DEBUG_CREDENTIALS should be enabled (LP: #1855335) + - [Config] Enable cred sanity checks + * CONFIG_DEBUG_LIST should be enabled (LP: #1855334) + - [Config] Enable linked list manipulation checks + * shiftfs: prevent lower dentries from going negative during unlink + (LP: #1860041) + - SAUCE: shiftfs: prevent lower dentries from going negative during unlink + * [SRU][B/OEM-B/OEM-OSP1/D/E/Unstable] UBUNTU: SAUCE: Use native backlight on + Lenovo E41-25/45 (LP: #1859561) + - SAUCE: ACPI: video: Use native backlight on Lenovo E41-25/45 + * USB key cannot be detected by hotplug on Sunix USB Type-A 3.1 Gen 2 card + [1b21:2142] (LP: #1858988) + - SAUCE: PCI: Avoid ASMedia XHCI USB PME# from D0 defect + * Dell AIO can't adjust brightness (LP: #1858761) + - SAUCE: platform/x86: dell-uart-backlight: add retry for get scalar status + * Miscellaneous Ubuntu changes + - [Config] Fix typo in annotations file + - update dkms package versions + * Rebase to v5.5 + + [ Ubuntu: 5.5.0-6.7 ] + + * Miscellaneous Ubuntu changes + - [Packaging] Update ubuntu-regression-suite dependency to python2 + - [Packaging] Fix ubuntu-regression-suite python dependency for hwe kernel + - update dkms package versions + * Rebase to v5.5-rc7 + + [ Ubuntu: 5.5.0-5.6 ] + + * Miscellaneous Ubuntu changes + - update dkms package versions + * Rebase to v5.5-rc6 + + [ Ubuntu: 5.5.0-4.5 ] + + * linux build and autopkg tests need to use python2 instead of python + (LP: #1858487) + - [Packaging] Remove python-dev build dependency + + [ Ubuntu: 5.5.0-3.4 ] + + * [SRU][B/OEM-B/OEM-OSP1/D/E/F] Add LG I2C touchscreen multitouch support + (LP: #1857541) + - SAUCE: HID: multitouch: Add LG MELF0410 I2C touchscreen support + * Make vfio-pci built-in or xhci_hcd optional (LP: #1770845) + - [Config]: built-in VFIO_PCI for amd64 + * multi-zone raid0 corruption (LP: #1850540) + - SAUCE: md/raid0: Link to wiki with guidance on multi-zone RAID0 layout + migration + * Packaging resync (LP: #1786013) + - [Packaging] update variants + * Miscellaneous Ubuntu changes + - [Packaging] Change source package to linux-5.5 + - [Packaging] Don't use SRCPKGNAME for linux-libc-dev + - [Packaging] Remove linux-source-3 Provides: from linux-source + - [Packaging] Fix linux-doc in linux-image Suggests: + - [Debian] Read variants list into a variable + - [Packaging] Generate linux-libc-dev package only for primary variant + - [Packaging] Generate linux-doc for only the primary variant + - [Debian] Update linux source package name in debian/tests/* + - update dkms package versions + - [Config] updateconfigs after rebase to 5.5-rc3 + - [Config] disable PCI_MESON + - [Config] Add pinctrl-equilibrium to modules.ignore + * Rebase to v5.5-rc5 + + [ Ubuntu: 5.5.0-2.3 ] + + * Empty entry. + + [ Ubuntu: 5.5.0-2.3 ] + + * Support DPCD aux brightness control (LP: #1856134) + - SAUCE: drm/i915: Fix eDP DPCD aux max backlight calculations + - SAUCE: drm/i915: Assume 100% brightness when not in DPCD control mode + - SAUCE: drm/i915: Fix DPCD register order in intel_dp_aux_enable_backlight() + - SAUCE: drm/i915: Auto detect DPCD backlight support by default + - SAUCE: drm/i915: Force DPCD backlight mode on X1 Extreme 2nd Gen 4K AMOLED + panel + - USUNTU: SAUCE: drm/i915: Force DPCD backlight mode on Dell Precision 4K sku + * change kconfig of the soundwire bus driver from y to m (LP: #1855685) + - [Config]: SOUNDWIRE=m + * 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 + * Miscellaneous Ubuntu changes + - [Debian] add python depends to ubuntu-regression-suite + - SAUCE: selftests: net: tls: remove recv_rcvbuf test + - update dkms package versions + * Miscellaneous upstream changes + - [Config] updateconfigs after rebase to 5.5-rc2 + + [ Ubuntu: 5.5.0-1.2 ] + + * Miscellaneous Ubuntu changes + - [Config] disable nvidia dkms build + - [Config] disable virtualbox dkms build + - [Config] disable zfs dkms build + - update dropped.txt after rebase to v5.5-rc1 + - SAUCE: (lockdown) Make get_cert_list() not complain about cert lists that + aren't present. + - SAUCE: (lockdown) Add efi_status_to_str() and rework efi_status_to_err(). + - SAUCE: (lockdown) Make get_cert_list() use efi_status_to_str() to print + error messages. + - SAUCE: (lockdown) security: lockdown: expose a hook to lock the kernel down + - SAUCE: (lockdown) efi: Add an EFI_SECURE_BOOT flag to indicate secure boot + mode + - SAUCE: (lockdown) efi: Lock down the kernel if booted in secure boot mode + - SAUCE: (lockdown) Add a SysRq option to lift kernel lockdown + - SAUCE: (lockdown) KEYS: Make use of platform keyring for module signature + verify + - SAUCE: (lockdown) arm64: Allow locking down the kernel under EFI secure boot + - SAUCE: (lockdown) security: lockdown: Make + CONFIG_LOCK_DOWN_IN_EFI_SECURE_BOOT more generic + - SAUCE: (lockdown) s390/ipl: lockdown kernel when booted secure + - [Config] Enable lockdown under secure boot + - update dkms package versions + + [ Ubuntu: 5.5.0-0.1 ] + + * Miscellaneous Ubuntu changes + - [Config] updateconfigs after rebase to 5.5-rc1 + [ Upstream Kernel Changes ] + * Rebase to v5.5-rc1 + + [ Ubuntu: 5.5.0-0.0 ] + + * Dummy entry. + + -- Paolo Pisati Mon, 10 Aug 2020 12:27:33 +0200 + +linux-azure (5.8.0-1000.0) groovy; urgency=medium + + * Dummy entry. + + -- Paolo Pisati Mon, 10 Aug 2020 12:18:34 +0200 + +linux-azure (5.4.0-1022.22) focal; urgency=medium + + * focal/linux-azure: 5.4.0-1022.22 -proposed tracker (LP: #1887060) + + [ Ubuntu: 5.4.0-42.46 ] + + * focal/linux: 5.4.0-42.46 -proposed tracker (LP: #1887069) + * linux 4.15.0-109-generic network DoS regression vs -108 (LP: #1886668) + - SAUCE: Revert "netprio_cgroup: Fix unlimited memory leak of v2 cgroups" + + -- Khalid Elmously Fri, 10 Jul 2020 01:51:58 -0400 + +linux-azure (5.4.0-1021.21) focal; urgency=medium + + * focal/linux-azure: 5.4.0-1021.21 -proposed tracker (LP: #1885845) + + * module intel_sgx appears to be blacklisted by the kernel. (LP: #1862201) + - Revert "UBUNTU: [Packaging] linux-azure: Prevent intel_sgx from being + automatically loaded" + - [Packaging] linux-azure: Divert conf files blacklisting intel_sgx + + * Add XDP support to hv_netvsc driver (LP: #1877654) + - hv_netvsc: Add XDP support + - hv_netvsc: Update document for XDP support + - hv_netvsc: Fix XDP refcnt for synthetic and VF NICs + + * Request to include two NUMA related commits in Azure kernels (LP: #1880975) + - PCI: hv: Decouple the func definition in hv_dr_state from VSP message + - PCI: hv: Add support for protocol 1.3 and support PCI_BUS_RELATIONS2 + + [ Ubuntu: 5.4.0-41.45 ] + + * focal/linux: 5.4.0-41.45 -proposed tracker (LP: #1885855) + * Packaging resync (LP: #1786013) + - update dkms package versions + * CVE-2019-19642 + - kernel/relay.c: handle alloc_percpu returning NULL in relay_open + * CVE-2019-16089 + - SAUCE: nbd_genl_status: null check for nla_nest_start + * CVE-2020-11935 + - aufs: do not call i_readcount_inc() + * ip_defrag.sh in net from ubuntu_kernel_selftests failed with 5.0 / 5.3 / 5.4 + kernel (LP: #1826848) + - selftests: net: ip_defrag: ignore EPERM + * Update lockdown patches (LP: #1884159) + - SAUCE: acpi: disallow loading configfs acpi tables when locked down + * seccomp_bpf fails on powerpc (LP: #1885757) + - SAUCE: selftests/seccomp: fix ptrace tests on powerpc + * Introduce the new NVIDIA 418-server and 440-server series, and update the + current NVIDIA drivers (LP: #1881137) + - [packaging] add signed modules for the 418-server and the 440-server + flavours + + -- Marcelo Henrique Cerri Wed, 08 Jul 2020 17:24:21 -0300 + +linux-azure (5.4.0-1020.20) focal; urgency=medium + + * focal/linux-azure: 5.4.0-1020.20 -proposed tracker (LP: #1885048) + + * linux-azure: Update SGX version to version LD_1.33 (LP: #1881338) + - SAUCE: linux-azure: Update SGX to version LD_1.33 + - SAUCE: ubuntu/sgx: Add module alias for ACPI device INT0E0C + + * [linux-azure] Enable Hibernation on The 18.04 and 20.04 5.4 Kernels + (LP: #1880032) + - x86/hyperv: Initialize clockevents earlier in CPU onlining + - scsi: storvsc: Add the support of hibernation + - video: hyperv_fb: Add the support of hibernation + - hv_sock: Add the support of hibernation + - hv_netvsc: Add the support of hibernation + - x86/hyperv: Implement hv_is_hibernation_supported() + - hv_balloon: Add the support of hibernation + - HID: hyperv: Add the support of hibernation + - PCI: hv: Reorganize the code in preparation of hibernation + - PCI: hv: Add hibernation support + - clocksource/drivers/hyper-v: Suspend/resume Hyper-V clocksource for + hibernation + - Input: hyperv-keyboard: Add the support of hibernation + - video: hyperv_fb: Fix hibernation for the deferred IO feature + - Tools: hv: Reopen the devices if read() or write() returns errors + - hv_utils: Support host-initiated restart request + - hv_utils: Support host-initiated hibernation request + - hv_utils: Add the support of hibernation + - x86/hyperv: Suspend/resume the hypercall page for hibernation + - PM: hibernate: Propagate the return value of hibernation_restore() + - x86/hyperv: Suspend/resume the VP assist page for hibernation + - net/mlx5: Fix crash upon suspend/resume + + [ Ubuntu: 5.4.0-40.44 ] + + * linux-oem-5.6-tools-common and -tools-host should be dropped (LP: #1881120) + - [Packaging] Add Conflicts/Replaces to remove linux-oem-5.6-tools-common and + -tools-host + * Packaging resync (LP: #1786013) + - [Packaging] update helper scripts + * Slow send speed with Intel I219-V on Ubuntu 18.04.1 (LP: #1802691) + - e1000e: Disable TSO for buffer overrun workaround + * CVE-2020-0543 + - UBUNTU/SAUCE: x86/speculation/srbds: do not try to turn mitigation off when + not supported + * Realtek 8723DE [10ec:d723] subsystem [10ec:d738] disconnects unsolicitedly + when Bluetooth is paired: Reason: 23=IEEE8021X_FAILED (LP: #1878147) + - SAUCE: Revert "UBUNTU: SAUCE: rtw88: Move driver IQK to set channel before + association for 11N chip" + - SAUCE: Revert "UBUNTU: SAUCE: rtw88: fix rate for a while after being + connected" + - SAUCE: Revert "UBUNTU: SAUCE: rtw88: No retry and report for auth and assoc" + - SAUCE: Revert "UBUNTU: SAUCE: rtw88: 8723d: Add coex support" + - rtw88: add a debugfs entry to dump coex's info + - rtw88: add a debugfs entry to enable/disable coex mechanism + - rtw88: 8723d: Add coex support + - SAUCE: rtw88: coex: 8723d: set antanna control owner + - SAUCE: rtw88: coex: 8723d: handle BT inquiry cases + - SAUCE: rtw88: fix EAPOL 4-way failure by finish IQK earlier + * CPU stress test fails with focal kernel (LP: #1867900) + - [Config] Disable hisi_sec2 temporarily + * Enforce all config annotations (LP: #1879327) + - [Config]: do not enforce CONFIG_VERSION_SIGNATURE + - [Config]: prepare to enforce all + - [Config]: enforce all config options + * Focal update: v5.4.44 upstream stable release (LP: #1881927) + - ax25: fix setsockopt(SO_BINDTODEVICE) + - dpaa_eth: fix usage as DSA master, try 3 + - net: don't return invalid table id error when we fall back to PF_UNSPEC + - net: dsa: mt7530: fix roaming from DSA user ports + - net: ethernet: ti: cpsw: fix ASSERT_RTNL() warning during suspend + - __netif_receive_skb_core: pass skb by reference + - net: inet_csk: Fix so_reuseport bind-address cache in tb->fast* + - net: ipip: fix wrong address family in init error path + - net/mlx5: Add command entry handling completion + - net: mvpp2: fix RX hashing for non-10G ports + - net: nlmsg_cancel() if put fails for nhmsg + - net: qrtr: Fix passing invalid reference to qrtr_local_enqueue() + - net: revert "net: get rid of an signed integer overflow in + ip_idents_reserve()" + - net sched: fix reporting the first-time use timestamp + - net/tls: fix race condition causing kernel panic + - nexthop: Fix attribute checking for groups + - r8152: support additional Microsoft Surface Ethernet Adapter variant + - sctp: Don't add the shutdown timer if its already been added + - sctp: Start shutdown on association restart if in SHUTDOWN-SENT state and + socket is closed + - tipc: block BH before using dst_cache + - net/mlx5e: kTLS, Destroy key object after destroying the TIS + - net/mlx5e: Fix inner tirs handling + - net/mlx5: Fix memory leak in mlx5_events_init + - net/mlx5e: Update netdev txq on completions during closure + - net/mlx5: Fix error flow in case of function_setup failure + - net/mlx5: Annotate mutex destroy for root ns + - net/tls: fix encryption error checking + - net/tls: free record only on encryption error + - net: sun: fix missing release regions in cas_init_one(). + - net/mlx4_core: fix a memory leak bug. + - mlxsw: spectrum: Fix use-after-free of split/unsplit/type_set in case reload + fails + - ARM: dts: rockchip: fix phy nodename for rk3228-evb + - ARM: dts: rockchip: fix phy nodename for rk3229-xms6 + - arm64: dts: rockchip: fix status for &gmac2phy in rk3328-evb.dts + - arm64: dts: rockchip: swap interrupts interrupt-names rk3399 gpu node + - ARM: dts: rockchip: swap clock-names of gpu nodes + - ARM: dts: rockchip: fix pinctrl sub nodename for spi in rk322x.dtsi + - gpio: tegra: mask GPIO IRQs during IRQ shutdown + - ALSA: usb-audio: add mapping for ASRock TRX40 Creator + - net: microchip: encx24j600: add missed kthread_stop + - gfs2: move privileged user check to gfs2_quota_lock_check + - gfs2: Grab glock reference sooner in gfs2_add_revoke + - drm/amdgpu: drop unnecessary cancel_delayed_work_sync on PG ungate + - drm/amd/powerplay: perform PG ungate prior to CG ungate + - drm/amdgpu: Use GEM obj reference for KFD BOs + - cachefiles: Fix race between read_waiter and read_copier involving op->to_do + - usb: dwc3: pci: Enable extcon driver for Intel Merrifield + - usb: phy: twl6030-usb: Fix a resource leak in an error handling path in + 'twl6030_usb_probe()' + - usb: gadget: legacy: fix redundant initialization warnings + - net: freescale: select CONFIG_FIXED_PHY where needed + - IB/i40iw: Remove bogus call to netdev_master_upper_dev_get() + - riscv: stacktrace: Fix undefined reference to `walk_stackframe' + - clk: ti: am33xx: fix RTC clock parent + - csky: Fixup msa highest 3 bits mask + - csky: Fixup perf callchain unwind + - csky: Fixup remove duplicate irq_disable + - hwmon: (nct7904) Fix incorrect range of temperature limit registers + - cifs: Fix null pointer check in cifs_read + - csky: Fixup raw_copy_from_user() + - samples: bpf: Fix build error + - drivers: net: hamradio: Fix suspicious RCU usage warning in bpqether.c + - Input: usbtouchscreen - add support for BonXeon TP + - Input: evdev - call input_flush_device() on release(), not flush() + - Input: xpad - add custom init packet for Xbox One S controllers + - Input: dlink-dir685-touchkeys - fix a typo in driver name + - Input: i8042 - add ThinkPad S230u to i8042 reset list + - Input: synaptics-rmi4 - really fix attn_data use-after-free + - Input: synaptics-rmi4 - fix error return code in rmi_driver_probe() + - ARM: 8970/1: decompressor: increase tag size + - ARM: uaccess: consolidate uaccess asm to asm/uaccess-asm.h + - ARM: uaccess: integrate uaccess_save and uaccess_restore + - ARM: uaccess: fix DACR mismatch with nested exceptions + - gpio: exar: Fix bad handling for ida_simple_get error path + - arm64: dts: mt8173: fix vcodec-enc clock + - soc: mediatek: cmdq: return send msg error code + - gpu/drm: Ingenic: Fix opaque pointer casted to wrong type + - IB/qib: Call kobject_put() when kobject_init_and_add() fails + - ARM: dts/imx6q-bx50v3: Set display interface clock parents + - ARM: dts: bcm2835-rpi-zero-w: Fix led polarity + - ARM: dts: bcm: HR2: Fix PPI interrupt types + - mmc: block: Fix use-after-free issue for rpmb + - gpio: pxa: Fix return value of pxa_gpio_probe() + - gpio: bcm-kona: Fix return value of bcm_kona_gpio_probe() + - RDMA/pvrdma: Fix missing pci disable in pvrdma_pci_probe() + - ALSA: hwdep: fix a left shifting 1 by 31 UB bug + - ALSA: hda/realtek - Add a model for Thinkpad T570 without DAC workaround + - ALSA: usb-audio: mixer: volume quirk for ESS Technology Asus USB DAC + - exec: Always set cap_ambient in cap_bprm_set_creds + - clk: qcom: gcc: Fix parent for gpll0_out_even + - ALSA: usb-audio: Quirks for Gigabyte TRX40 Aorus Master onboard audio + - ALSA: hda/realtek - Add new codec supported for ALC287 + - libceph: ignore pool overlay and cache logic on redirects + - ceph: flush release queue when handling caps for unknown inode + - RDMA/core: Fix double destruction of uobject + - drm/amd/display: drop cursor position check in atomic test + - IB/ipoib: Fix double free of skb in case of multicast traffic in CM mode + - mm,thp: stop leaking unreleased file pages + - mm: remove VM_BUG_ON(PageSlab()) from page_mapcount() + - fs/binfmt_elf.c: allocate initialized memory in fill_thread_core_info() + - include/asm-generic/topology.h: guard cpumask_of_node() macro argument + - Revert "block: end bio with BLK_STS_AGAIN in case of non-mq devs and + REQ_NOWAIT" + - gpio: fix locking open drain IRQ lines + - iommu: Fix reference count leak in iommu_group_alloc. + - parisc: Fix kernel panic in mem_init() + - cfg80211: fix debugfs rename crash + - x86/syscalls: Revert "x86/syscalls: Make __X32_SYSCALL_BIT be unsigned long" + - mac80211: mesh: fix discovery timer re-arming issue / crash + - x86/dma: Fix max PFN arithmetic overflow on 32 bit systems + - copy_xstate_to_kernel(): don't leave parts of destination uninitialized + - xfrm: allow to accept packets with ipv6 NEXTHDR_HOP in xfrm_input + - xfrm: do pskb_pull properly in __xfrm_transport_prep + - xfrm: remove the xfrm_state_put call becofe going to out_reset + - xfrm: call xfrm_output_gso when inner_protocol is set in xfrm_output + - xfrm interface: fix oops when deleting a x-netns interface + - xfrm: fix a warning in xfrm_policy_insert_list + - xfrm: fix a NULL-ptr deref in xfrm_local_error + - xfrm: fix error in comment + - ip_vti: receive ipip packet by calling ip_tunnel_rcv + - netfilter: nft_reject_bridge: enable reject with bridge vlan + - netfilter: ipset: Fix subcounter update skip + - netfilter: conntrack: make conntrack userspace helpers work again + - netfilter: nfnetlink_cthelper: unbreak userspace helper support + - netfilter: nf_conntrack_pptp: prevent buffer overflows in debug code + - esp6: get the right proto for transport mode in esp6_gso_encap + - bnxt_en: Fix accumulation of bp->net_stats_prev. + - ieee80211: Fix incorrect mask for default PE duration + - xsk: Add overflow check for u64 division, stored into u32 + - qlcnic: fix missing release in qlcnic_83xx_interrupt_test. + - crypto: chelsio/chtls: properly set tp->lsndtime + - nexthops: Move code from remove_nexthop_from_groups to remove_nh_grp_entry + - nexthops: don't modify published nexthop groups + - nexthop: Expand nexthop_is_multipath in a few places + - ipv4: nexthop version of fib_info_nh_uses_dev + - net: dsa: declare lockless TX feature for slave ports + - bonding: Fix reference count leak in bond_sysfs_slave_add. + - netfilter: conntrack: comparison of unsigned in cthelper confirmation + - netfilter: conntrack: Pass value of ctinfo to __nf_conntrack_update + - netfilter: nf_conntrack_pptp: fix compilation warning with W=1 build + - perf: Make perf able to build with latest libbfd + - Linux 5.4.44 + * Focal update: v5.4.43 upstream stable release (LP: #1881178) + - i2c: dev: Fix the race between the release of i2c_dev and cdev + - KVM: SVM: Fix potential memory leak in svm_cpu_init() + - ima: Set file->f_mode instead of file->f_flags in ima_calc_file_hash() + - evm: Check also if *tfm is an error pointer in init_desc() + - ima: Fix return value of ima_write_policy() + - ubifs: fix wrong use of crypto_shash_descsize() + - ACPI: EC: PM: Avoid flushing EC work when EC GPE is inactive + - mtd: spinand: Propagate ECC information to the MTD structure + - fix multiplication overflow in copy_fdtable() + - ubifs: remove broken lazytime support + - i2c: fix missing pm_runtime_put_sync in i2c_device_probe + - iommu/amd: Fix over-read of ACPI UID from IVRS table + - evm: Fix a small race in init_desc() + - i2c: mux: demux-pinctrl: Fix an error handling path in + 'i2c_demux_pinctrl_probe()' + - ubi: Fix seq_file usage in detailed_erase_block_info debugfs file + - afs: Don't unlock fetched data pages until the op completes successfully + - mtd: Fix mtd not registered due to nvmem name collision + - kbuild: avoid concurrency issue in parallel building dtbs and dtbs_check + - net: drop_monitor: use IS_REACHABLE() to guard net_dm_hw_report() + - gcc-common.h: Update for GCC 10 + - HID: multitouch: add eGalaxTouch P80H84 support + - HID: alps: Add AUI1657 device ID + - HID: alps: ALPS_1657 is too specific; use U1_UNICORN_LEGACY instead + - scsi: qla2xxx: Fix hang when issuing nvme disconnect-all in NPIV + - scsi: qla2xxx: Delete all sessions before unregister local nvme port + - configfs: fix config_item refcnt leak in configfs_rmdir() + - vhost/vsock: fix packet delivery order to monitoring devices + - aquantia: Fix the media type of AQC100 ethernet controller in the driver + - component: Silence bind error on -EPROBE_DEFER + - net/ena: Fix build warning in ena_xdp_set() + - scsi: ibmvscsi: Fix WARN_ON during event pool release + - HID: i2c-hid: reset Synaptics SYNA2393 on resume + - x86/mm/cpa: Flush direct map alias during cpa + - ibmvnic: Skip fatal error reset after passive init + - x86/apic: Move TSC deadline timer debug printk + - gtp: set NLM_F_MULTI flag in gtp_genl_dump_pdp() + - HID: quirks: Add HID_QUIRK_NO_INIT_REPORTS quirk for Dell K12A keyboard-dock + - ceph: fix double unlock in handle_cap_export() + - stmmac: fix pointer check after utilization in stmmac_interrupt + - USB: core: Fix misleading driver bug report + - platform/x86: asus-nb-wmi: Do not load on Asus T100TA and T200TA + - iommu/amd: Call domain_flush_complete() in update_domain() + - drm/amd/display: Prevent dpcd reads with passive dongles + - KVM: selftests: Fix build for evmcs.h + - ARM: futex: Address build warning + - scripts/gdb: repair rb_first() and rb_last() + - ALSA: hda - constify and cleanup static NodeID tables + - ALSA: hda: patch_realtek: fix empty macro usage in if block + - ALSA: hda: Manage concurrent reg access more properly + - ALSA: hda/realtek - Add supported new mute Led for HP + - ALSA: hda/realtek - Add HP new mute led supported for ALC236 + - ALSA: hda/realtek: Add quirk for Samsung Notebook + - ALSA: hda/realtek - Enable headset mic of ASUS GL503VM with ALC295 + - ALSA: hda/realtek - Enable headset mic of ASUS UX550GE with ALC295 + - ALSA: hda/realtek: Enable headset mic of ASUS UX581LV with ALC295 + - KVM: x86: Fix pkru save/restore when guest CR4.PKE=0, move it to x86.c + - ALSA: iec1712: Initialize STDSP24 properly when using the model=staudio + option + - ALSA: pcm: fix incorrect hw_base increase + - ALSA: hda/realtek - Fix silent output on Gigabyte X570 Aorus Xtreme + - ALSA: hda/realtek - Add more fixup entries for Clevo machines + - scsi: qla2xxx: Do not log message when reading port speed via sysfs + - scsi: target: Put lun_ref at end of tmr processing + - arm64: Fix PTRACE_SYSEMU semantics + - drm/etnaviv: fix perfmon domain interation + - apparmor: Fix aa_label refcnt leak in policy_update + - dmaengine: tegra210-adma: Fix an error handling path in 'tegra_adma_probe()' + - drm/etnaviv: Fix a leak in submit_pin_objects() + - dmaengine: dmatest: Restore default for channel + - dmaengine: owl: Use correct lock in owl_dma_get_pchan() + - vsprintf: don't obfuscate NULL and error pointers + - drm/i915/gvt: Init DPLL/DDI vreg for virtual display instead of inheritance. + - drm/i915: Propagate error from completed fences + - powerpc: Remove STRICT_KERNEL_RWX incompatibility with RELOCATABLE + - powerpc/64s: Disable STRICT_KERNEL_RWX + - bpf: Avoid setting bpf insns pages read-only when prog is jited + - kbuild: Remove debug info from kallsyms linking + - Revert "gfs2: Don't demote a glock until its revokes are written" + - media: fdp1: Fix R-Car M3-N naming in debug message + - staging: iio: ad2s1210: Fix SPI reading + - staging: kpc2000: fix error return code in kp2000_pcie_probe() + - staging: greybus: Fix uninitialized scalar variable + - iio: sca3000: Remove an erroneous 'get_device()' + - iio: dac: vf610: Fix an error handling path in 'vf610_dac_probe()' + - iio: adc: ti-ads8344: Fix channel selection + - misc: rtsx: Add short delay after exit from ASPM + - tty: serial: add missing spin_lock_init for SiFive serial console + - mei: release me_cl object reference + - ipack: tpci200: fix error return code in tpci200_register() + - s390/kaslr: add support for R_390_JMP_SLOT relocation type + - device-dax: don't leak kernel memory to user space after unloading kmem + - rapidio: fix an error in get_user_pages_fast() error handling + - kasan: disable branch tracing for core runtime + - rxrpc: Fix the excessive initial retransmission timeout + - rxrpc: Fix a memory leak in rxkad_verify_response() + - s390/kexec_file: fix initrd location for kdump kernel + - flow_dissector: Drop BPF flow dissector prog ref on netns cleanup + - x86/unwind/orc: Fix unwind_get_return_address_ptr() for inactive tasks + - iio: adc: stm32-adc: Use dma_request_chan() instead + dma_request_slave_channel() + - iio: adc: stm32-adc: fix device used to request dma + - iio: adc: stm32-dfsdm: Use dma_request_chan() instead + dma_request_slave_channel() + - iio: adc: stm32-dfsdm: fix device used to request dma + - rxrpc: Trace discarded ACKs + - rxrpc: Fix ack discard + - tpm: check event log version before reading final events + - sched/fair: Reorder enqueue/dequeue_task_fair path + - sched/fair: Fix reordering of enqueue/dequeue_task_fair() + - sched/fair: Fix enqueue_task_fair() warning some more + - Linux 5.4.43 + * Focal update: v5.4.42 upstream stable release (LP: #1879759) + - net: dsa: Do not make user port errors fatal + - shmem: fix possible deadlocks on shmlock_user_lock + - net: phy: microchip_t1: add lan87xx_phy_init to initialize the lan87xx phy. + - KVM: arm: vgic: Synchronize the whole guest on GIC{D,R}_I{S,C}ACTIVER read + - gpio: pca953x: Fix pca953x_gpio_set_config + - SUNRPC: Add "@len" parameter to gss_unwrap() + - SUNRPC: Fix GSS privacy computation of auth->au_ralign + - net/sonic: Fix a resource leak in an error handling path in + 'jazz_sonic_probe()' + - net: moxa: Fix a potential double 'free_irq()' + - ftrace/selftests: workaround cgroup RT scheduling issues + - drop_monitor: work around gcc-10 stringop-overflow warning + - virtio-blk: handle block_device_operations callbacks after hot unplug + - sun6i: dsi: fix gcc-4.8 + - net_sched: fix tcm_parent in tc filter dump + - scsi: sg: add sg_remove_request in sg_write + - mmc: sdhci-acpi: Add SDHCI_QUIRK2_BROKEN_64_BIT_DMA for AMDI0040 + - dpaa2-eth: properly handle buffer size restrictions + - net: fix a potential recursive NETDEV_FEAT_CHANGE + - netlabel: cope with NULL catmap + - net: phy: fix aneg restart in phy_ethtool_set_eee + - net: stmmac: fix num_por initialization + - pppoe: only process PADT targeted at local interfaces + - Revert "ipv6: add mtu lock check in __ip6_rt_update_pmtu" + - tcp: fix error recovery in tcp_zerocopy_receive() + - tcp: fix SO_RCVLOWAT hangs with fat skbs + - virtio_net: fix lockdep warning on 32 bit + - dpaa2-eth: prevent array underflow in update_cls_rule() + - hinic: fix a bug of ndo_stop + - net: dsa: loop: Add module soft dependency + - net: ipv4: really enforce backoff for redirects + - netprio_cgroup: Fix unlimited memory leak of v2 cgroups + - net: tcp: fix rx timestamp behavior for tcp_recvmsg + - nfp: abm: fix error return code in nfp_abm_vnic_alloc() + - r8169: re-establish support for RTL8401 chip version + - umh: fix memory leak on execve failure + - riscv: fix vdso build with lld + - dmaengine: pch_dma.c: Avoid data race between probe and irq handler + - dmaengine: mmp_tdma: Do not ignore slave config validation errors + - dmaengine: mmp_tdma: Reset channel error on release + - selftests/ftrace: Check the first record for kprobe_args_type.tc + - cpufreq: intel_pstate: Only mention the BIOS disabling turbo mode once + - ALSA: hda/hdmi: fix race in monitor detection during probe + - drm/amd/powerplay: avoid using pm_en before it is initialized revised + - drm/amd/display: check if REFCLK_CNTL register is present + - drm/amd/display: Update downspread percent to match spreadsheet for DCN2.1 + - drm/qxl: lost qxl_bo_kunmap_atomic_page in qxl_image_init_helper() + - drm/amdgpu: simplify padding calculations (v2) + - drm/amdgpu: invalidate L2 before SDMA IBs (v2) + - ipc/util.c: sysvipc_find_ipc() incorrectly updates position index + - gfs2: Another gfs2_walk_metadata fix + - mmc: sdhci-pci-gli: Fix no irq handler from suspend + - IB/hfi1: Fix another case where pq is left on waitlist + - ACPI: EC: PM: Avoid premature returns from acpi_s2idle_wake() + - pinctrl: sunrisepoint: Fix PAD lock register offset for SPT-H + - pinctrl: baytrail: Enable pin configuration setting for GPIO chip + - pinctrl: qcom: fix wrong write in update_dual_edge + - pinctrl: cherryview: Add missing spinlock usage in chv_gpio_irq_handler + - bpf: Fix error return code in map_lookup_and_delete_elem() + - ALSA: firewire-lib: fix 'function sizeof not defined' error of tracepoints + format + - i40iw: Fix error handling in i40iw_manage_arp_cache() + - drm/i915: Don't enable WaIncreaseLatencyIPCEnabled when IPC is disabled + - bpf, sockmap: msg_pop_data can incorrecty set an sge length + - bpf, sockmap: bpf_tcp_ingress needs to subtract bytes from sg.size + - mmc: alcor: Fix a resource leak in the error path for ->probe() + - mmc: sdhci-pci-gli: Fix can not access GL9750 after reboot from Windows 10 + - mmc: core: Check request type before completing the request + - mmc: core: Fix recursive locking issue in CQE recovery path + - mmc: block: Fix request completion in the CQE timeout path + - gfs2: More gfs2_find_jhead fixes + - fork: prevent accidental access to clone3 features + - drm/amdgpu: force fbdev into vram + - NFS: Fix fscache super_cookie index_key from changing after umount + - nfs: fscache: use timespec64 in inode auxdata + - NFSv4: Fix fscache cookie aux_data to ensure change_attr is included + - netfilter: conntrack: avoid gcc-10 zero-length-bounds warning + - drm/i915/gvt: Fix kernel oops for 3-level ppgtt guest + - arm64: fix the flush_icache_range arguments in machine_kexec + - nfs: fix NULL deference in nfs4_get_valid_delegation + - SUNRPC: Signalled ASYNC tasks need to exit + - netfilter: nft_set_rbtree: Introduce and use nft_rbtree_interval_start() + - netfilter: nft_set_rbtree: Add missing expired checks + - RDMA/rxe: Always return ERR_PTR from rxe_create_mmap_info() + - IB/mlx4: Test return value of calls to ib_get_cached_pkey + - IB/core: Fix potential NULL pointer dereference in pkey cache + - RDMA/core: Fix double put of resource + - RDMA/iw_cxgb4: Fix incorrect function parameters + - hwmon: (da9052) Synchronize access with mfd + - s390/ism: fix error return code in ism_probe() + - mm, memcg: fix inconsistent oom event behavior + - NFSv3: fix rpc receive buffer size for MOUNT call + - pnp: Use list_for_each_entry() instead of open coding + - net/rds: Use ERR_PTR for rds_message_alloc_sgs() + - Stop the ad-hoc games with -Wno-maybe-initialized + - [Config] updateconfigs for CC_HAS_WARN_MAYBE_UNINITIALIZED + - gcc-10: disable 'zero-length-bounds' warning for now + - gcc-10: disable 'array-bounds' warning for now + - gcc-10: disable 'stringop-overflow' warning for now + - gcc-10: disable 'restrict' warning for now + - gcc-10 warnings: fix low-hanging fruit + - gcc-10: mark more functions __init to avoid section mismatch warnings + - gcc-10: avoid shadowing standard library 'free()' in crypto + - usb: usbfs: correct kernel->user page attribute mismatch + - USB: usbfs: fix mmap dma mismatch + - ALSA: hda/realtek - Limit int mic boost for Thinkpad T530 + - ALSA: hda/realtek - Add COEF workaround for ASUS ZenBook UX431DA + - ALSA: rawmidi: Fix racy buffer resize under concurrent accesses + - ALSA: usb-audio: Add control message quirk delay for Kingston HyperX headset + - usb: core: hub: limit HUB_QUIRK_DISABLE_AUTOSUSPEND to USB5534B + - usb: host: xhci-plat: keep runtime active when removing host + - usb: cdns3: gadget: prev_req->trb is NULL for ep0 + - usb: xhci: Fix NULL pointer dereference when enqueuing trbs from urb sg list + - Make the "Reducing compressed framebufer size" message be DRM_INFO_ONCE() + - ARM: dts: dra7: Fix bus_dma_limit for PCIe + - ARM: dts: imx27-phytec-phycard-s-rdk: Fix the I2C1 pinctrl entries + - ARM: dts: imx6dl-yapp4: Fix Ursa board Ethernet connection + - drm/amd/display: add basic atomic check for cursor plane + - powerpc/32s: Fix build failure with CONFIG_PPC_KUAP_DEBUG + - cifs: fix leaked reference on requeued write + - x86: Fix early boot crash on gcc-10, third try + - x86/unwind/orc: Fix error handling in __unwind_start() + - exec: Move would_dump into flush_old_exec + - clk: rockchip: fix incorrect configuration of rk3228 aclk_gpu* clocks + - dwc3: Remove check for HWO flag in dwc3_gadget_ep_reclaim_trb_sg() + - fanotify: fix merging marks masks with FAN_ONDIR + - usb: gadget: net2272: Fix a memory leak in an error handling path in + 'net2272_plat_probe()' + - usb: gadget: audio: Fix a missing error return value in audio_bind() + - usb: gadget: legacy: fix error return code in gncm_bind() + - usb: gadget: legacy: fix error return code in cdc_bind() + - clk: Unlink clock if failed to prepare or enable + - arm64: dts: meson-g12b-khadas-vim3: add missing frddr_a status property + - arm64: dts: meson-g12-common: fix dwc2 clock names + - arm64: dts: rockchip: Replace RK805 PMIC node name with "pmic" on rk3328 + boards + - arm64: dts: rockchip: Rename dwc3 device nodes on rk3399 to make dtc happy + - arm64: dts: imx8mn: Change SDMA1 ahb clock for imx8mn + - ARM: dts: r8a73a4: Add missing CMT1 interrupts + - arm64: dts: renesas: r8a77980: Fix IPMMU VIP[01] nodes + - ARM: dts: r8a7740: Add missing extal2 to CPG node + - SUNRPC: Revert 241b1f419f0e ("SUNRPC: Remove xdr_buf_trim()") + - bpf: Fix sk_psock refcnt leak when receiving message + - KVM: x86: Fix off-by-one error in kvm_vcpu_ioctl_x86_setup_mce + - Makefile: disallow data races on gcc-10 as well + - Linux 5.4.42 + * upgrading to 4.15.0-99-generic breaks the sound and the trackpad + (LP: #1875916) // Focal update: v5.4.42 upstream stable release + (LP: #1879759) + - Revert "ALSA: hda/realtek: Fix pop noise on ALC225" + * Pop sound from build-in speaker during cold boot and resume from S3 + (LP: #1866357) // Focal update: v5.4.42 upstream stable release + (LP: #1879759) + - ALSA: hda/realtek - Fix S3 pop noise on Dell Wyse + * tpm: fix TIS locality timeout problems (LP: #1881710) + - SAUCE: tpm: fix TIS locality timeout problems + * [UBUNTU 20.04] s390x/pci: fix linking between PF and VF for multifunction + devices (LP: #1879704) + - PCI/IOV: Introduce pci_iov_sysfs_link() function + - s390/pci: create links between PFs and VFs + * Performing function level reset of AMD onboard USB and audio devices causes + system lockup (LP: #1865988) + - SAUCE: PCI: Avoid FLR for AMD Matisse HD Audio & USB 3.0 + - SAUCE: PCI: Avoid FLR for AMD Starship USB 3.0 + * seccomp_benchmark times out on eoan (LP: #1881576) + - SAUCE: selftests/seccomp: use 90s as timeout + * ASoC/amd: add audio driver for amd renoir (LP: #1881046) + - ASoC: amd: add Renoir ACP3x IP register header + - ASoC: amd: add Renoir ACP PCI driver + - ASoC: amd: add acp init/de-init functions + - ASoC: amd: create acp3x pdm platform device + - ASoC: amd: add ACP3x PDM platform driver + - ASoC: amd: irq handler changes for ACP3x PDM dma driver + - ASoC: amd: add acp3x pdm driver dma ops + - ASoC: amd: add ACP PDM DMA driver dai ops + - ASoC: amd: add Renoir ACP PCI driver PM ops + - ASoC: amd: add ACP PDM DMA driver pm ops + - ASoC: amd: enable Renoir acp3x drivers build + - ASoC: amd: create platform devices for Renoir + - ASoC: amd: RN machine driver using dmic + - ASoC: amd: enable build for RN machine driver + - ASoC: amd: fix kernel warning + - ASoC: amd: refactoring dai_hw_params() callback + - ASoC: amd: return error when acp de-init fails + - [Config]: enable amd renoir ASoC audio + * Fix for secure boot rules in IMA arch policy on powerpc (LP: #1877955) + - powerpc/ima: Fix secure boot rules in ima arch policy + * [UBUNTU 20.04] s390x/pci: s390_pci_mmio_write/read fail when MIO + instructions are available (LP: #1874055) + - s390/pci: Fix s390_mmio_read/write with MIO + * security: lockdown: remove trailing semicolon before function body + (LP: #1880660) + - SAUCE: (lockdown) security: lockdown: remove trailing semicolon before + function body + * Fix incorrect speed/duplex when I210 device is runtime suspended + (LP: #1880656) + - igb: Report speed and duplex as unknown when device is runtime suspended + * [OMEN by HP Laptop 15-dh0xxx, Realtek ALC285, Black Mic, Left] Recording + problem (LP: #1874698) + - ASoC: SOF: Intel: hda: allow operation without i915 gfx + - ASoC: intel/skl/hda - add no-HDMI cases to generic HDA driver + * CVE-2020-13143 + - USB: gadget: fix illegal array access in binding with UDC + * rtl8723bu wifi issue after being turned off (LP: #1878296) + - rtl8xxxu: Improve TX performance of RTL8723BU on rtl8xxxu driver + - rtl8xxxu: add bluetooth co-existence support for single antenna + - rtl8xxxu: remove set but not used variable 'rate_mask' + - rtl8xxxu: Remove set but not used variable 'vif', 'dev', 'len' + * Fix Pericom USB controller OHCI/EHCI PME# defect (LP: #1879321) + - serial: 8250_pci: Move Pericom IDs to pci_ids.h + - PCI: Avoid Pericom USB controller OHCI/EHCI PME# defect + * shiftfs: fix btrfs snapshot deletion (LP: #1879688) + - SAUCE: shiftfs: let userns root destroy subvolumes from other users + * [UBUNTU 20.04] s390x/pci: enumerate pci functions per physical adapter + (LP: #1874056) + - s390/pci: Improve handling of unset UID + - s390/pci: embedding hotplug_slot in zdev + - s390/pci: Expose new port attribute for PCIe functions + - s390/pci: adaptation of iommu to multifunction + - s390/pci: define kernel parameters for PCI multifunction + - s390/pci: define RID and RID available + - s390/pci: create zPCI bus + - s390/pci: adapt events for zbus + - s390/pci: Handling multifunctions + - s390/pci: Do not disable PF when VFs exist + - s390/pci: Documentation for zPCI + - s390/pci: removes wrong PCI multifunction assignment + * update-initramfs complains of missing amdgpu firmware files (LP: #1873325) + - SAUCE: drm/amdgpu: Remove unreleased arcturus and navi12 firmware from + modinfo + + -- Marcelo Henrique Cerri Thu, 25 Jun 2020 16:37:28 -0300 + +linux-azure (5.4.0-1019.19) focal; urgency=medium + + + [ Ubuntu: 5.4.0-39.43 ] + + * dkms-build: downloads fail in private PPAs (LP: #1883874) + - dkms-build: apt-cache policy elides username:password information + * Packaging resync (LP: #1786013) + - update dkms package versions + + -- Kleber Sacilotto de Souza Fri, 19 Jun 2020 19:07:16 +0200 + +linux-azure (5.4.0-1016.16) focal; urgency=medium + + + [ Ubuntu: 5.4.0-37.41 ] + + * CVE-2020-0543 + - SAUCE: x86/speculation/spectre_v2: Exclude Zhaoxin CPUs from SPECTRE_V2 + - SAUCE: x86/cpu: Add a steppings field to struct x86_cpu_id + - SAUCE: x86/cpu: Add 'table' argument to cpu_matches() + - SAUCE: x86/speculation: Add Special Register Buffer Data Sampling (SRBDS) + mitigation + - SAUCE: x86/speculation: Add SRBDS vulnerability and mitigation documentation + - SAUCE: x86/speculation: Add Ivy Bridge to affected list + + -- Thadeu Lima de Souza Cascardo Thu, 04 Jun 2020 19:11:17 -0300 + +linux-azure (5.4.0-1013.13) focal; urgency=medium + + * focal/linux-azure: 5.4.0-1013.13 -proposed tracker (LP: #1878793) + + * Add support for Ambiq micro AM1805 RTC chip (LP: #1876667) + - SAUCE: rtc: add am-1805 RTC driver + + * linux-azure: Enable FSGSBASE instructions to support SGX (LP: #1877425) + - SAUCE: x86/ptrace: Prevent ptrace from clearing the FS/GS selector + - SAUCE: selftests/x86/fsgsbase: Test GS selector on ptracer-induced GS base + write + - SAUCE: x86/cpu: Add 'unsafe_fsgsbase' to enable CR4.FSGSBASE + - SAUCE: x86/entry/64: Clean up paranoid exit + - SAUCE: x86/entry/64: Switch CR3 before SWAPGS in paranoid entry + - SAUCE: x86/entry/64: Introduce the FIND_PERCPU_BASE macro + - SAUCE: x86/entry/64: Handle FSGSBASE enabled paranoid entry/exit + - SAUCE: x86/entry/64: Document GSBASE handling in the paranoid path + - SAUCE: x86/fsgsbase/64: Add intrinsics for FSGSBASE instructions + - SAUCE: x86/fsgsbase/64: Enable FSGSBASE instructions in helper functions + - SAUCE: x86/fsgsbase/64: Use FSGSBASE in switch_to() if available + - SAUCE: x86/fsgsbase/64: Use FSGSBASE instructions on thread copy and ptrace + - SAUCE: x86/speculation/swapgs: Check FSGSBASE in enabling SWAPGS mitigation + - SAUCE: selftests/x86/fsgsbase: Test ptracer-induced GS base write with + FSGSBASE + - SAUCE: x86/fsgsbase/64: Enable FSGSBASE on 64bit by default and add a + chicken bit + - SAUCE: x86/elf: Enumerate kernel FSGSBASE capability in AT_HWCAP2 + - SAUCE: Documentation/x86/64: Add documentation for GS/FS addressing mode + + * rtkit-daemon[*]: Failed to make ourselves RT: Operation not permitted after + upgrade to 20.04 (LP: #1875665) + - [Config] Turn off CONFIG_RT_GROUP_SCHED + + [ Ubuntu: 5.4.0-34.38 ] + + * focal/linux: 5.4.0-34.38 -proposed tracker (LP: #1880118) + * debian/scripts/file-downloader does not handle positive failures correctly + (LP: #1878897) + - [Packaging] file-downloader not handling positive failures correctly + * Focal update: v5.4.41 upstream stable release (LP: #1878649) + - USB: serial: qcserial: Add DW5816e support + - nvme: refactor nvme_identify_ns_descs error handling + - nvme: fix possible hang when ns scanning fails during error recovery + - tracing/kprobes: Fix a double initialization typo + - net: macb: Fix runtime PM refcounting + - drm/amdgpu: move kfd suspend after ip_suspend_phase1 + - drm/amdgpu: drop redundant cg/pg ungate on runpm enter + - vt: fix unicode console freeing with a common interface + - tty: xilinx_uartps: Fix missing id assignment to the console + - devlink: fix return value after hitting end in region read + - dp83640: reverse arguments to list_add_tail + - fq_codel: fix TCA_FQ_CODEL_DROP_BATCH_SIZE sanity checks + - ipv6: Use global sernum for dst validation with nexthop objects + - mlxsw: spectrum_acl_tcam: Position vchunk in a vregion list properly + - neigh: send protocol value in neighbor create notification + - net: dsa: Do not leave DSA master with NULL netdev_ops + - net: macb: fix an issue about leak related system resources + - net: macsec: preserve ingress frame ordering + - net/mlx4_core: Fix use of ENOSPC around mlx4_counter_alloc() + - net_sched: sch_skbprio: add message validation to skbprio_change() + - net: stricter validation of untrusted gso packets + - net: tc35815: Fix phydev supported/advertising mask + - net/tls: Fix sk_psock refcnt leak in bpf_exec_tx_verdict() + - net/tls: Fix sk_psock refcnt leak when in tls_data_ready() + - net: usb: qmi_wwan: add support for DW5816e + - nfp: abm: fix a memory leak bug + - sch_choke: avoid potential panic in choke_reset() + - sch_sfq: validate silly quantum values + - tipc: fix partial topology connection closure + - tunnel: Propagate ECT(1) when decapsulating as recommended by RFC6040 + - bnxt_en: Fix VF anti-spoof filter setup. + - bnxt_en: Reduce BNXT_MSIX_VEC_MAX value to supported CQs per PF. + - bnxt_en: Improve AER slot reset. + - bnxt_en: Return error when allocating zero size context memory. + - bnxt_en: Fix VLAN acceleration handling in bnxt_fix_features(). + - net/mlx5: DR, On creation set CQ's arm_db member to right value + - net/mlx5: Fix forced completion access non initialized command entry + - net/mlx5: Fix command entry leak in Internal Error State + - net: mvpp2: prevent buffer overflow in mvpp22_rss_ctx() + - net: mvpp2: cls: Prevent buffer overflow in mvpp2_ethtool_cls_rule_del() + - HID: wacom: Read HID_DG_CONTACTMAX directly for non-generic devices + - sctp: Fix bundling of SHUTDOWN with COOKIE-ACK + - Revert "HID: wacom: generic: read the number of expected touches on a per + collection basis" + - HID: usbhid: Fix race between usbhid_close() and usbhid_stop() + - HID: wacom: Report 2nd-gen Intuos Pro S center button status over BT + - USB: uas: add quirk for LaCie 2Big Quadra + - usb: chipidea: msm: Ensure proper controller reset using role switch API + - USB: serial: garmin_gps: add sanity checking for data length + - tracing: Add a vmalloc_sync_mappings() for safe measure + - crypto: arch/nhpoly1305 - process in explicit 4k chunks + - KVM: s390: Remove false WARN_ON_ONCE for the PQAP instruction + - KVM: VMX: Explicitly clear RFLAGS.CF and RFLAGS.ZF in VM-Exit RSB path + - KVM: arm: vgic: Fix limit condition when writing to GICD_I[CS]ACTIVER + - KVM: arm64: Fix 32bit PC wrap-around + - arm64: hugetlb: avoid potential NULL dereference + - drm: ingenic-drm: add MODULE_DEVICE_TABLE + - ipc/mqueue.c: change __do_notify() to bypass check_kill_permission() + - epoll: atomically remove wait entry on wake up + - eventpoll: fix missing wakeup for ovflist in ep_poll_callback + - mm/page_alloc: fix watchdog soft lockups during set_zone_contiguous() + - mm: limit boost_watermark on small zones + - ceph: demote quotarealm lookup warning to a debug message + - staging: gasket: Check the return value of gasket_get_bar_index() + - coredump: fix crash when umh is disabled + - iocost: protect iocg->abs_vdebt with iocg->waitq.lock + - batman-adv: fix batadv_nc_random_weight_tq + - batman-adv: Fix refcnt leak in batadv_show_throughput_override + - batman-adv: Fix refcnt leak in batadv_store_throughput_override + - batman-adv: Fix refcnt leak in batadv_v_ogm_process + - x86/entry/64: Fix unwind hints in register clearing code + - x86/entry/64: Fix unwind hints in kernel exit path + - x86/entry/64: Fix unwind hints in rewind_stack_do_exit() + - x86/unwind/orc: Don't skip the first frame for inactive tasks + - x86/unwind/orc: Prevent unwinding before ORC initialization + - x86/unwind/orc: Fix error path for bad ORC entry type + - x86/unwind/orc: Fix premature unwind stoppage due to IRET frames + - KVM: x86: Fixes posted interrupt check for IRQs delivery modes + - arch/x86/kvm/svm/sev.c: change flag passed to GUP fast in sev_pin_memory() + - netfilter: nat: never update the UDP checksum when it's 0 + - netfilter: nf_osf: avoid passing pointer to local var + - objtool: Fix stack offset tracking for indirect CFAs + - iommu/virtio: Reverse arguments to list_add + - scripts/decodecode: fix trapping instruction formatting + - mm, memcg: fix error return value of mem_cgroup_css_alloc() + - bdi: move bdi_dev_name out of line + - bdi: add a ->dev_name field to struct backing_dev_info + - fsnotify: replace inode pointer with an object id + - fanotify: merge duplicate events on parent and child + - Linux 5.4.41 + * Intel GPU Hangs : random screen freezing w/ Ubuntu 20.04 (Linux 5.4) + i915_active_acquire (LP: #1868551) + - drm/i915: Hold reference to intel_frontbuffer as we track activity + - drm/i915: fix uninitialized pointer reads on pointers to and from + * Kernel panic due to NULL ringbuffer vaddr dereference in i915 (LP: #1877394) + - Revert "UBUNTU: SAUCE: drm/i915: Synchronize active and retire callbacks" + - drm/i915/gt: Make intel_ring_unpin() safe for concurrent pint + * add 16-bit width registers support for EEPROM at24 device (LP: #1876699) + - regmap-i2c: add 16-bit width registers support + * [UBUNTU 20.04] PSI generates overhead on s390x (LP: #1876044) + - Ubuntu: [Config] Set CONFIG_PSI_DEFAULT_DISABLED=y on s390x + * Focal update: v5.4.40 upstream stable release (LP: #1878040) + - vhost: vsock: kick send_pkt worker once device is started + - drm/bridge: analogix_dp: Split bind() into probe() and real bind() + - ASoC: topology: Check return value of soc_tplg_create_tlv + - ASoC: topology: Check return value of soc_tplg_*_create + - ASoC: topology: Check soc_tplg_add_route return value + - ASoC: topology: Check return value of pcm_new_ver + - ASoC: topology: Check return value of soc_tplg_dai_config + - selftests/ipc: Fix test failure seen after initial test run + - ASoC: sgtl5000: Fix VAG power-on handling + - ASoC: topology: Fix endianness issue + - usb: dwc3: gadget: Properly set maxpacket limit + - ASoC: rsnd: Fix parent SSI start/stop in multi-SSI mode + - ASoC: rsnd: Fix HDMI channel mapping for multi-SSI mode + - ASoC: codecs: hdac_hdmi: Fix incorrect use of list_for_each_entry + - remoteproc: qcom_q6v5_mss: fix a bug in q6v5_probe() + - drm/amdgpu: Correctly initialize thermal controller for GPUs with Powerplay + table v0 (e.g Hawaii) + - wimax/i2400m: Fix potential urb refcnt leak + - net: stmmac: fix enabling socfpga's ptp_ref_clock + - net: stmmac: Fix sub-second increment + - ASoC: rsnd: Don't treat master SSI in multi SSI setup as parent + - ASoC: rsnd: Fix "status check failed" spam for multi-SSI + - cifs: protect updating server->dstaddr with a spinlock + - scripts/config: allow colons in option strings for sed + - cifs: do not share tcons with DFS + - tracing: Fix memory leaks in trace_events_hist.c + - lib/mpi: Fix building for powerpc with clang + - mac80211: sta_info: Add lockdep condition for RCU list usage + - net: bcmgenet: suppress warnings on failed Rx SKB allocations + - net: systemport: suppress warnings on failed Rx SKB allocations + - drm/i915: Extend WaDisableDARBFClkGating to icl,ehl,tgl + - sctp: Fix SHUTDOWN CTSN Ack in the peer restart case + - Revert "software node: Simplify software_node_release() function" + - hexagon: clean up ioremap + - hexagon: define ioremap_uc + - ALSA: hda: Match both PCI ID and SSID for driver blacklist + - x86/kvm: fix a missing-prototypes "vmread_error" + - platform/x86: GPD pocket fan: Fix error message when temp-limits are out of + range + - ACPI: PM: s2idle: Fix comment in acpi_s2idle_prepare_late() + - mac80211: add ieee80211_is_any_nullfunc() + - cgroup, netclassid: remove double cond_resched + - libbpf: Fix readelf output parsing for Fedora + - mm/mremap: Add comment explaining the untagging behaviour of mremap() + - Revert "drm/amd/display: setting the DIG_MODE to the correct value." + - tools headers UAPI: Sync copy of arm64's asm/unistd.h with the kernel + sources + - udp: document udp_rcv_segment special case for looped packets + - PM / devfreq: Add missing locking while setting suspend_freq + - Linux 5.4.40 + * Focal update: v5.4.39 upstream stable release (LP: #1877592) + - dma-buf: Fix SET_NAME ioctl uapi + - drm/edid: Fix off-by-one in DispID DTD pixel clock + - drm/amd/display: Fix green screen issue after suspend + - drm/qxl: qxl_release leak in qxl_draw_dirty_fb() + - drm/qxl: qxl_release leak in qxl_hw_surface_alloc() + - drm/qxl: qxl_release use after free + - NFSv4.1: fix handling of backchannel binding in BIND_CONN_TO_SESSION + - btrfs: fix transaction leak in btrfs_recover_relocation + - btrfs: fix block group leak when removing fails + - btrfs: fix partial loss of prealloc extent past i_size after fsync + - btrfs: transaction: Avoid deadlock due to bad initialization timing of + fs_info::journal_info + - mmc: cqhci: Avoid false "cqhci: CQE stuck on" by not open-coding timeout + loop + - mmc: sdhci-xenon: fix annoying 1.8V regulator warning + - mmc: sdhci-pci: Fix eMMC driver strength for BYT-based controllers + - mmc: sdhci-msm: Enable host capabilities pertains to R1b response + - mmc: meson-mx-sdio: Set MMC_CAP_WAIT_WHILE_BUSY + - mmc: meson-mx-sdio: remove the broken ->card_busy() op + - crypto: caam - fix the address of the last entry of S/G + - ALSA: hda/realtek - Two front mics on a Lenovo ThinkCenter + - ALSA: usb-audio: Correct a typo of NuPrime DAC-10 USB ID + - ALSA: hda/hdmi: fix without unlocked before return + - ALSA: line6: Fix POD HD500 audio playback + - ALSA: pcm: oss: Place the plugin buffer overflow checks correctly + - i2c: amd-mp2-pci: Fix Oops in amd_mp2_pci_init() error handling + - Drivers: hv: vmbus: Fix Suspend-to-Idle for Generation-2 VM + - dlmfs_file_write(): fix the bogosity in handling non-zero *ppos + - IB/rdmavt: Always return ERR_PTR from rvt_create_mmap_info() + - PM: ACPI: Output correct message on target power state + - PM: hibernate: Freeze kernel threads in software_resume() + - dm verity fec: fix hash block number in verity_fec_decode + - dm writecache: fix data corruption when reloading the target + - dm multipath: use updated MPATHF_QUEUE_IO on mapping for bio-based mpath + - ARM: dts: imx6qdl-sr-som-ti: indicate powering off wifi is safe + - scsi: qla2xxx: set UNLOADING before waiting for session deletion + - scsi: qla2xxx: check UNLOADING before posting async work + - RDMA/mlx5: Set GRH fields in query QP on RoCE + - RDMA/mlx4: Initialize ib_spec on the stack + - RDMA/siw: Fix potential siw_mem refcnt leak in siw_fastreg_mr() + - RDMA/core: Prevent mixed use of FDs between shared ufiles + - RDMA/core: Fix race between destroy and release FD object + - RDMA/cm: Fix ordering of xa_alloc_cyclic() in ib_create_cm_id() + - RDMA/cm: Fix an error check in cm_alloc_id_priv() + - i2c: iproc: generate stop event for slave writes + - vfio: avoid possible overflow in vfio_iommu_type1_pin_pages + - vfio/type1: Fix VA->PA translation for PFNMAP VMAs in vaddr_get_pfn() + - iommu/qcom: Fix local_base status check + - scsi: target/iblock: fix WRITE SAME zeroing + - iommu/amd: Fix legacy interrupt remapping for x2APIC-enabled system + - i2c: aspeed: Avoid i2c interrupt status clear race condition. + - ALSA: opti9xx: shut up gcc-10 range warning + - Fix use after free in get_tree_bdev() + - nvme: prevent double free in nvme_alloc_ns() error handling + - nfs: Fix potential posix_acl refcnt leak in nfs3_set_acl + - dmaengine: dmatest: Fix iteration non-stop logic + - dmaengine: dmatest: Fix process hang when reading 'wait' parameter + - arm64: vdso: Add -fasynchronous-unwind-tables to cflags + - selinux: properly handle multiple messages in selinux_netlink_send() + - Linux 5.4.39 + * Focal update: v5.4.38 upstream stable release (LP: #1876767) + - Linux 5.4.38 + * Focal update: v5.4.37 upstream stable release (LP: #1876765) + - remoteproc: Fix wrong rvring index computation + - ubifs: Fix ubifs_tnc_lookup() usage in do_kill_orphans() + - printk: queue wake_up_klogd irq_work only if per-CPU areas are ready + - ASoC: stm32: sai: fix sai probe + - usb: dwc3: gadget: Do link recovery for SS and SSP + - kbuild: fix DT binding schema rule again to avoid needless rebuilds + - usb: gadget: udc: bdc: Remove unnecessary NULL checks in bdc_req_complete + - usb: gadget: udc: atmel: Fix vbus disconnect handling + - afs: Make record checking use TASK_UNINTERRUPTIBLE when appropriate + - afs: Fix to actually set AFS_SERVER_FL_HAVE_EPOCH + - iio:ad7797: Use correct attribute_group + - propagate_one(): mnt_set_mountpoint() needs mount_lock + - counter: 104-quad-8: Add lock guards - generic interface + - s390/ftrace: fix potential crashes when switching tracers + - ASoC: q6dsp6: q6afe-dai: add missing channels to MI2S DAIs + - ASoC: tas571x: disable regulators on failed probe + - ASoC: wm8960: Fix wrong clock after suspend & resume + - drivers: soc: xilinx: fix firmware driver Kconfig dependency + - nfsd: memory corruption in nfsd4_lock() + - bpf: Forbid XADD on spilled pointers for unprivileged users + - i2c: altera: use proper variable to hold errno + - rxrpc: Fix DATA Tx to disable nofrag for UDP on AF_INET6 socket + - net/cxgb4: Check the return from t4_query_params properly + - xfs: acquire superblock freeze protection on eofblocks scans + - svcrdma: Fix trace point use-after-free race + - svcrdma: Fix leak of svc_rdma_recv_ctxt objects + - net/mlx5e: Don't trigger IRQ multiple times on XSK wakeup to avoid WQ + overruns + - net/mlx5e: Get the latest values from counters in switchdev mode + - PCI: Add ACS quirk for Zhaoxin multi-function devices + - PCI: Make ACS quirk implementations more uniform + - PCI: Unify ACS quirk desired vs provided checking + - PCI: Add Zhaoxin Vendor ID + - PCI: Add ACS quirk for Zhaoxin Root/Downstream Ports + - PCI: Move Apex Edge TPU class quirk to fix BAR assignment + - ARM: dts: bcm283x: Disable dsi0 node + - cpumap: Avoid warning when CONFIG_DEBUG_PER_CPU_MAPS is enabled + - s390/pci: do not set affinity for floating irqs + - net/mlx5: Fix failing fw tracer allocation on s390 + - sched/core: Fix reset-on-fork from RT with uclamp + - perf/core: fix parent pid/tid in task exit events + - netfilter: nat: fix error handling upon registering inet hook + - PM: sleep: core: Switch back to async_schedule_dev() + - blk-iocost: Fix error on iocost_ioc_vrate_adj + - um: ensure `make ARCH=um mrproper` removes + arch/$(SUBARCH)/include/generated/ + - bpf, x86_32: Fix incorrect encoding in BPF_LDX zero-extension + - bpf, x86_32: Fix clobbering of dst for BPF_JSET + - bpf, x86_32: Fix logic error in BPF_LDX zero-extension + - mm: shmem: disable interrupt when acquiring info->lock in userfaultfd_copy + path + - xfs: clear PF_MEMALLOC before exiting xfsaild thread + - bpf, x86: Fix encoding for lower 8-bit registers in BPF_STX BPF_B + - libbpf: Initialize *nl_pid so gcc 10 is happy + - net: fec: set GPR bit on suspend by DT configuration. + - x86: hyperv: report value of misc_features + - signal: check sig before setting info in kill_pid_usb_asyncio + - afs: Fix length of dump of bad YFSFetchStatus record + - xfs: fix partially uninitialized structure in xfs_reflink_remap_extent + - ALSA: hda: Release resources at error in delayed probe + - ALSA: hda: Keep the controller initialization even if no codecs found + - ALSA: hda: Explicitly permit using autosuspend if runtime PM is supported + - scsi: target: fix PR IN / READ FULL STATUS for FC + - scsi: target: tcmu: reset_ring should reset TCMU_DEV_BIT_BROKEN + - objtool: Fix CONFIG_UBSAN_TRAP unreachable warnings + - objtool: Support Clang non-section symbols in ORC dump + - xen/xenbus: ensure xenbus_map_ring_valloc() returns proper grant status + - ALSA: hda: call runtime_allow() for all hda controllers + - net: stmmac: socfpga: Allow all RGMII modes + - mac80211: fix channel switch trigger from unknown mesh peer + - arm64: Delete the space separator in __emit_inst + - ext4: use matching invalidatepage in ext4_writepage + - ext4: increase wait time needed before reuse of deleted inode numbers + - ext4: convert BUG_ON's to WARN_ON's in mballoc.c + - blk-mq: Put driver tag in blk_mq_dispatch_rq_list() when no budget + - hwmon: (jc42) Fix name to have no illegal characters + - taprio: do not use BIT() in TCA_TAPRIO_ATTR_FLAG_* definitions + - qed: Fix race condition between scheduling and destroying the slowpath + workqueue + - Crypto: chelsio - Fixes a hang issue during driver registration + - net: use indirect call wrappers for skb_copy_datagram_iter() + - qed: Fix use after free in qed_chain_free + - ext4: check for non-zero journal inum in ext4_calculate_overhead + - ASoC: soc-core: disable route checks for legacy devices + - ASoC: stm32: spdifrx: fix regmap status check + - Linux 5.4.37 + * Focal update: v5.4.36 upstream stable release (LP: #1876361) + - ext4: fix extent_status fragmentation for plain files + - f2fs: fix to avoid memory leakage in f2fs_listxattr + - net, ip_tunnel: fix interface lookup with no key + - [Config] updateconfigs for ARM64_ERRATUM_1542419 + - arm64: errata: Hide CTR_EL0.DIC on systems affected by Neoverse-N1 #1542419 + - arm64: Fake the IminLine size on systems affected by Neoverse-N1 #1542419 + - arm64: compat: Workaround Neoverse-N1 #1542419 for compat user-space + - arm64: Silence clang warning on mismatched value/register sizes + - tools/testing/nvdimm: Fix compilation failure without + CONFIG_DEV_DAX_PMEM_COMPAT + - watchdog: reset last_hw_keepalive time at start + - scsi: lpfc: Fix kasan slab-out-of-bounds error in lpfc_unreg_login + - scsi: lpfc: Fix crash after handling a pci error + - scsi: lpfc: Fix crash in target side cable pulls hitting WAIT_FOR_UNREG + - scsi: libfc: If PRLI rejected, move rport to PLOGI state + - ceph: return ceph_mdsc_do_request() errors from __get_parent() + - ceph: don't skip updating wanted caps when cap is stale + - pwm: rcar: Fix late Runtime PM enablement + - nvme-tcp: fix possible crash in write_zeroes processing + - scsi: iscsi: Report unbind session event when the target has been removed + - tools/test/nvdimm: Fix out of tree build + - ASoC: Intel: atom: Take the drv->lock mutex before calling + sst_send_slot_map() + - nvme: fix deadlock caused by ANA update wrong locking + - drm/amd/display: Update stream adjust in dc_stream_adjust_vmin_vmax + - dma-direct: fix data truncation in dma_direct_get_required_mask() + - kernel/gcov/fs.c: gcov_seq_next() should increase position index + - selftests: kmod: fix handling test numbers above 9 + - ipc/util.c: sysvipc_find_ipc() should increase position index + - kconfig: qconf: Fix a few alignment issues + - lib/raid6/test: fix build on distros whose /bin/sh is not bash + - s390/cio: generate delayed uevent for vfio-ccw subchannels + - s390/cio: avoid duplicated 'ADD' uevents + - loop: Better discard support for block devices + - Revert "powerpc/64: irq_work avoid interrupt when called with hardware irqs + enabled" + - powerpc/pseries: Fix MCE handling on pseries + - nvme: fix compat address handling in several ioctls + - pwm: renesas-tpu: Fix late Runtime PM enablement + - pwm: bcm2835: Dynamically allocate base + - perf/core: Disable page faults when getting phys address + - drm/amd/display: Calculate scaling ratios on every medium/full update + - ASoC: Intel: bytcr_rt5640: Add quirk for MPMAN MPWIN895CL tablet + - ALSA: usb-audio: Add Pioneer DJ DJM-250MK2 quirk + - drm/amd/display: Not doing optimize bandwidth if flip pending. + - cxgb4: fix adapter crash due to wrong MC size + - cxgb4: fix large delays in PTP synchronization + - ipv4: Update fib_select_default to handle nexthop objects + - ipv6: fix restrict IPV6_ADDRFORM operation + - macsec: avoid to set wrong mtu + - macvlan: fix null dereference in macvlan_device_event() + - mlxsw: Fix some IS_ERR() vs NULL bugs + - net: bcmgenet: correct per TX/RX ring statistics + - net/mlx4_en: avoid indirect call in TX completion + - net: netrom: Fix potential nr_neigh refcnt leak in nr_add_node + - net: openvswitch: ovs_ct_exit to be done under ovs_lock + - net: stmmac: dwmac-meson8b: Add missing boundary to RGMII TX clock array + - net/x25: Fix x25_neigh refcnt leak when receiving frame + - sched: etf: do not assume all sockets are full blown + - selftests: Fix suppress test in fib_tests.sh + - tcp: cache line align MAX_TCP_HEADER + - team: fix hang in team_mode_get() + - vrf: Fix IPv6 with qdisc and xfrm + - net: dsa: b53: Lookup VID in ARL searches when VLAN is enabled + - net: dsa: b53: Fix valid setting for MDB entries + - net: dsa: b53: Fix ARL register definitions + - net: dsa: b53: Rework ARL bin logic + - net: dsa: b53: b53_arl_rw_op() needs to select IVL or SVL + - vxlan: use the correct nlattr array in NL_SET_ERR_MSG_ATTR + - geneve: use the correct nlattr array in NL_SET_ERR_MSG_ATTR + - xfrm: Always set XFRM_TRANSFORMED in xfrm{4,6}_output_finish + - vrf: Check skb for XFRM_TRANSFORMED flag + - KEYS: Avoid false positive ENOMEM error on key read + - ALSA: hda: Remove ASUS ROG Zenith from the blacklist + - ALSA: usb-audio: Add static mapping table for ALC1220-VB-based mobos + - ALSA: usb-audio: Add connector notifier delegation + - iio: core: remove extra semi-colon from devm_iio_device_register() macro + - iio: st_sensors: rely on odr mask to know if odr can be set + - iio: adc: stm32-adc: fix sleep in atomic context + - iio: adc: ti-ads8344: properly byte swap value + - iio: xilinx-xadc: Fix ADC-B powerdown + - iio: xilinx-xadc: Fix clearing interrupt when enabling trigger + - iio: xilinx-xadc: Fix sequencer configuration for aux channels in + simultaneous mode + - iio: xilinx-xadc: Make sure not exceed maximum samplerate + - USB: sisusbvga: Change port variable from signed to unsigned + - USB: Add USB_QUIRK_DELAY_CTRL_MSG and USB_QUIRK_DELAY_INIT for Corsair K70 + RGB RAPIDFIRE + - USB: early: Handle AMD's spec-compliant identifiers, too + - USB: core: Fix free-while-in-use bug in the USB S-Glibrary + - USB: hub: Fix handling of connect changes during sleep + - USB: hub: Revert commit bd0e6c9614b9 ("usb: hub: try old enumeration scheme + first for high speed devices") + - tty: serial: owl: add "much needed" clk_prepare_enable() + - vmalloc: fix remap_vmalloc_range() bounds checks + - staging: gasket: Fix incongruency in handling of sysfs entries creation + - coredump: fix null pointer dereference on coredump + - mm/hugetlb: fix a addressing exception caused by huge_pte_offset + - mm/ksm: fix NULL pointer dereference when KSM zero page is enabled + - tools/vm: fix cross-compile build + - ALSA: usx2y: Fix potential NULL dereference + - ALSA: hda/realtek - Fix unexpected init_amp override + - ALSA: hda/realtek - Add new codec supported for ALC245 + - ALSA: hda/hdmi: Add module option to disable audio component binding + - ALSA: usb-audio: Fix usb audio refcnt leak when getting spdif + - ALSA: usb-audio: Filter out unsupported sample rates on Focusrite devices + - tpm/tpm_tis: Free IRQ if probing fails + - tpm: fix wrong return value in tpm_pcr_extend + - tpm: ibmvtpm: retry on H_CLOSED in tpm_ibmvtpm_send() + - KVM: s390: Return last valid slot if approx index is out-of-bounds + - KVM: Check validity of resolved slot when searching memslots + - KVM: VMX: Enable machine check support for 32bit targets + - tty: hvc: fix buffer overflow during hvc_alloc(). + - tty: rocket, avoid OOB access + - usb-storage: Add unusual_devs entry for JMicron JMS566 + - signal: Avoid corrupting si_pid and si_uid in do_notify_parent + - audit: check the length of userspace generated audit records + - ASoC: dapm: fixup dapm kcontrol widget + - mac80211: populate debugfs only after cfg80211 init + - SUNRPC: Fix backchannel RPC soft lockups + - iwlwifi: pcie: actually release queue memory in TVQM + - iwlwifi: mvm: beacon statistics shouldn't go backwards + - iwlwifi: mvm: limit maximum queue appropriately + - iwlwifi: mvm: Do not declare support for ACK Enabled Aggregation + - iwlwifi: mvm: fix inactive TID removal return value usage + - cifs: fix uninitialised lease_key in open_shroot() + - ARM: imx: provide v7_cpu_resume() only on ARM_CPU_SUSPEND=y + - powerpc/setup_64: Set cache-line-size based on cache-block-size + - staging: comedi: dt2815: fix writing hi byte of analog output + - staging: comedi: Fix comedi_device refcnt leak in comedi_open + - vt: don't hardcode the mem allocation upper bound + - vt: don't use kmalloc() for the unicode screen buffer + - staging: vt6656: Don't set RCR_MULTICAST or RCR_BROADCAST by default. + - staging: vt6656: Fix calling conditions of vnt_set_bss_mode + - staging: vt6656: Fix drivers TBTT timing counter. + - staging: vt6656: Fix pairwise key entry save. + - staging: vt6656: Power save stop wake_up_count wrap around. + - cdc-acm: close race betrween suspend() and acm_softint + - cdc-acm: introduce a cool down + - UAS: no use logging any details in case of ENODEV + - UAS: fix deadlock in error handling and PM flushing work + - fpga: dfl: pci: fix return value of cci_pci_sriov_configure + - usb: dwc3: gadget: Fix request completion check + - usb: f_fs: Clear OS Extended descriptor counts to zero in ffs_data_reset() + - usb: typec: tcpm: Ignore CC and vbus changes in PORT_RESET change + - usb: typec: altmode: Fix typec_altmode_get_partner sometimes returning an + invalid pointer + - xhci: Fix handling halted endpoint even if endpoint ring appears empty + - xhci: prevent bus suspend if a roothub port detected a over-current + condition + - xhci: Don't clear hub TT buffer on ep0 protocol stall + - serial: sh-sci: Make sure status register SCxSR is read in correct sequence + - Revert "serial: uartps: Fix uartps_major handling" + - Revert "serial: uartps: Use the same dynamic major number for all ports" + - Revert "serial: uartps: Fix error path when alloc failed" + - Revert "serial: uartps: Do not allow use aliases >= MAX_UART_INSTANCES" + - Revert "serial: uartps: Change uart ID port allocation" + - Revert "serial: uartps: Move Port ID to device data structure" + - Revert "serial: uartps: Register own uart console and driver structures" + - powerpc/kuap: PPC_KUAP_DEBUG should depend on PPC_KUAP + - powerpc/mm: Fix CONFIG_PPC_KUAP_DEBUG on PPC32 + - compat: ARM64: always include asm-generic/compat.h + - Linux 5.4.36 + * Focal update: v5.4.35 upstream stable release (LP: #1875660) + - ext4: use non-movable memory for superblock readahead + - watchdog: sp805: fix restart handler + - xsk: Fix out of boundary write in __xsk_rcv_memcpy + - arm, bpf: Fix bugs with ALU64 {RSH, ARSH} BPF_K shift by 0 + - arm, bpf: Fix offset overflow for BPF_MEM BPF_DW + - objtool: Fix switch table detection in .text.unlikely + - scsi: sg: add sg_remove_request in sg_common_write + - ALSA: hda: Honor PM disablement in PM freeze and thaw_noirq ops + - ARM: dts: imx6: Use gpc for FEC interrupt controller to fix wake on LAN. + - kbuild, btf: Fix dependencies for DEBUG_INFO_BTF + - netfilter: nf_tables: report EOPNOTSUPP on unsupported flags/object type + - irqchip/mbigen: Free msi_desc on device teardown + - ALSA: hda: Don't release card at firmware loading error + - xsk: Add missing check on user supplied headroom size + - of: unittest: kmemleak on changeset destroy + - of: unittest: kmemleak in of_unittest_platform_populate() + - of: unittest: kmemleak in of_unittest_overlay_high_level() + - of: overlay: kmemleak in dup_and_fixup_symbol_prop() + - x86/Hyper-V: Unload vmbus channel in hv panic callback + - x86/Hyper-V: Trigger crash enlightenment only once during system crash. + - x86/Hyper-V: Report crash register data or kmsg before running crash kernel + - x86/Hyper-V: Report crash register data when sysctl_record_panic_msg is not + set + - x86/Hyper-V: Report crash data in die() when panic_on_oops is set + - afs: Fix missing XDR advance in xdr_decode_{AFS,YFS}FSFetchStatus() + - afs: Fix decoding of inline abort codes from version 1 status records + - afs: Fix rename operation status delivery + - afs: Fix afs_d_validate() to set the right directory version + - afs: Fix race between post-modification dir edit and readdir/d_revalidate + - block, bfq: turn put_queue into release_process_ref in + __bfq_bic_change_cgroup + - block, bfq: make reparent_leaf_entity actually work only on leaf entities + - block, bfq: invoke flush_idle_tree after reparent_active_queues in + pd_offline + - rbd: avoid a deadlock on header_rwsem when flushing notifies + - rbd: call rbd_dev_unprobe() after unwatching and flushing notifies + - x86/Hyper-V: Free hv_panic_page when fail to register kmsg dump + - drm/ttm: flush the fence on the bo after we individualize the reservation + object + - clk: Don't cache errors from clk_ops::get_phase() + - clk: at91: usb: continue if clk_hw_round_rate() return zero + - net/mlx5e: Enforce setting of a single FEC mode + - f2fs: fix the panic in do_checkpoint() + - ARM: dts: rockchip: fix vqmmc-supply property name for rk3188-bqedison2qc + - arm64: dts: allwinner: a64: Fix display clock register range + - power: supply: bq27xxx_battery: Silence deferred-probe error + - clk: tegra: Fix Tegra PMC clock out parents + - arm64: tegra: Add PCIe endpoint controllers nodes for Tegra194 + - arm64: tegra: Fix Tegra194 PCIe compatible string + - arm64: dts: clearfog-gt-8k: set gigabit PHY reset deassert delay + - soc: imx: gpc: fix power up sequencing + - dma-coherent: fix integer overflow in the reserved-memory dma allocation + - rtc: 88pm860x: fix possible race condition + - NFS: alloc_nfs_open_context() must use the file cred when available + - NFSv4/pnfs: Return valid stateids in nfs_layout_find_inode_by_stateid() + - NFSv4.2: error out when relink swapfile + - ARM: dts: rockchip: fix lvds-encoder ports subnode for rk3188-bqedison2qc + - KVM: PPC: Book3S HV: Fix H_CEDE return code for nested guests + - f2fs: fix to show norecovery mount option + - phy: uniphier-usb3ss: Add Pro5 support + - NFS: direct.c: Fix memory leak of dreq when nfs_get_lock_context fails + - f2fs: Fix mount failure due to SPO after a successful online resize FS + - f2fs: Add a new CP flag to help fsck fix resize SPO issues + - s390/cpuinfo: fix wrong output when CPU0 is offline + - hibernate: Allow uswsusp to write to swap + - btrfs: add RCU locks around block group initialization + - powerpc/prom_init: Pass the "os-term" message to hypervisor + - powerpc/maple: Fix declaration made after definition + - s390/cpum_sf: Fix wrong page count in error message + - ext4: do not commit super on read-only bdev + - um: ubd: Prevent buffer overrun on command completion + - cifs: Allocate encryption header through kmalloc + - mm/hugetlb: fix build failure with HUGETLB_PAGE but not HUGEBTLBFS + - drm/nouveau/svm: check for SVM initialized before migrating + - drm/nouveau/svm: fix vma range check for migration + - include/linux/swapops.h: correct guards for non_swap_entry() + - percpu_counter: fix a data race at vm_committed_as + - compiler.h: fix error in BUILD_BUG_ON() reporting + - KVM: s390: vsie: Fix possible race when shadowing region 3 tables + - drm/nouveau: workaround runpm fail by disabling PCI power management on + certain intel bridges + - leds: core: Fix warning message when init_data + - x86: ACPI: fix CPU hotplug deadlock + - csky: Fixup cpu speculative execution to IO area + - drm/amdkfd: kfree the wrong pointer + - NFS: Fix memory leaks in nfs_pageio_stop_mirroring() + - csky: Fixup get wrong psr value from phyical reg + - f2fs: fix NULL pointer dereference in f2fs_write_begin() + - ACPICA: Fixes for acpiExec namespace init file + - um: falloc.h needs to be directly included for older libc + - drm/vc4: Fix HDMI mode validation + - iommu/virtio: Fix freeing of incomplete domains + - iommu/vt-d: Fix mm reference leak + - ext2: fix empty body warnings when -Wextra is used + - iommu/vt-d: Silence RCU-list debugging warning in dmar_find_atsr() + - iommu/vt-d: Fix page request descriptor size + - ext2: fix debug reference to ext2_xattr_cache + - sunrpc: Fix gss_unwrap_resp_integ() again + - csky: Fixup init_fpu compile warning with __init + - power: supply: axp288_fuel_gauge: Broaden vendor check for Intel Compute + Sticks. + - libnvdimm: Out of bounds read in __nd_ioctl() + - iommu/amd: Fix the configuration of GCR3 table root pointer + - f2fs: fix to wait all node page writeback + - drm/nouveau/gr/gp107,gp108: implement workaround for HW hanging during init + - net: dsa: bcm_sf2: Fix overflow checks + - dma-debug: fix displaying of dma allocation type + - fbdev: potential information leak in do_fb_ioctl() + - ARM: dts: sunxi: Fix DE2 clocks register range + - iio: si1133: read 24-bit signed integer for measurement + - fbmem: Adjust indentation in fb_prepare_logo and fb_blank + - tty: evh_bytechan: Fix out of bounds accesses + - locktorture: Print ratio of acquisitions, not failures + - mtd: rawnand: free the nand_device object + - mtd: spinand: Explicitly use MTD_OPS_RAW to write the bad block marker to + OOB + - docs: Fix path to MTD command line partition parser + - mtd: lpddr: Fix a double free in probe() + - mtd: phram: fix a double free issue in error path + - KEYS: Don't write out to userspace while holding key semaphore + - bpf: fix buggy r0 retval refinement for tracing helpers + - bpf: Test_verifier, bpf_get_stack return value add <0 + - bpf: Test_progs, add test to catch retval refine error handling + - SAUCE: bpf: Test_progs, fix test_get_stack_rawtp_err.c build + - bpf, test_verifier: switch bpf_get_stack's 0 s> r8 test + - Linux 5.4.35 + * Killer(R) Wi-Fi 6 AX1650i 160MHz Wireless Network Adapter (201NGW), + REV=0x354 [8086:a0f0] subsystem id [1a56:1651] wireless adapter not found + due to firmware crash (LP: #1874685) + - iwlwifi: pcie: handle QuZ configs with killer NICs as well + * Support DMIC micmute LED on HP platforms (LP: #1876859) + - ALSA: hda/realtek - Introduce polarity for micmute LED GPIO + - ALSA: hda/realtek - Enable micmute LED on and HP system + - ALSA: hda/realtek - Add LED class support for micmute LED + - ALSA: hda/realtek - Fix unused variable warning w/o + CONFIG_LEDS_TRIGGER_AUDIO + - ASoC: SOF: Update correct LED status at the first time usage of + update_mute_led() + * linux: riscv: set max_pfn to the PFN of the last page (LP: #1876885) + - riscv: set max_pfn to the PFN of the last page + * Dell XPS 13 9300 mirror mode doesn't work sometimes with WD19TB + (LP: #1877013) + - drm/i915/perf: Do not clear pollin for small user read buffers + * [UBUNTU 20.04] s390x/pci: do not allow to create more pci functions than + configured via CONFIG_PCI_NR_FUNCTIONS (LP: #1874057) + - s390/pci: Fix zpci_alloc_domain() over allocation + * [Ubuntu 20.04] net/mlx5e: Fix endianness handling in pedit mask + (LP: #1872726) + - net/mlx5e: Fix endianness handling in pedit mask + * rtkit-daemon[*]: Failed to make ourselves RT: Operation not permitted after + upgrade to 20.04 (LP: #1875665) + - [Config] Turn off CONFIG_RT_GROUP_SCHED everywhere + * ceph -- Unable to mount ceph volume on s390x (LP: #1875863) + - ceph: fix endianness bug when handling MDS session feature bits + * Do not treat unresolved test case in ftrace from ubuntu_kernel_selftests as + failure (LP: #1877958) + - ftrace/selftest: make unresolved cases cause failure if --fail-unresolved + set + * Add support for Ambiq micro AM1805 RTC chip (LP: #1876667) + - SAUCE: rtc: add am-1805 RTC driver + * alsa/sof: kernel oops on the machine without Intel hdmi audio codec (a + regression in the asoc machine driver) (LP: #1874359) + - SAUCE: ASoC: intel/skl/hda - fix oops on systems without i915 audio codec + * 'Elan touchpad' not detected on 'Lenovo ThinkBook 15 IIL' (LP: #1861610) + - SAUCE: Input: elan_i2c - add more hardware ID for Lenovo laptop + + [ Ubuntu: 5.4.0-33.37 ] + + * focal/linux: 5.4.0-33.37 -proposed tracker (LP: #1879926) + * Docker registry doesn't stay up and keeps restarting (LP: #1879690) + - Revert "UBUNTU: SAUCE: overlayfs: fix shitfs special-casing" + - Revert "UBUNTU: SAUCE: overlayfs: use shiftfs hacks only with shiftfs as + underlay" + + -- Marcelo Henrique Cerri Wed, 27 May 2020 15:18:18 -0300 + +linux-azure (5.4.0-1012.12) focal; urgency=medium + + * focal/linux-azure: 5.4.0-1012.12 -proposed tracker (LP: #1877998) + + [ Ubuntu: 5.4.0-31.35 ] + + * focal/linux: 5.4.0-31.35 -proposed tracker (LP: #1877253) + * Intermittent display blackouts on event (LP: #1875254) + - drm/i915: Limit audio CDCLK>=2*BCLK constraint back to GLK only + * Unable to handle kernel pointer dereference in virtual kernel address space + on Eoan (LP: #1876645) + - SAUCE: overlayfs: fix shitfs special-casing + + -- Stefan Bader Mon, 11 May 2020 15:19:48 +0200 + +linux-azure (5.4.0-1011.11) focal; urgency=medium + + * focal/linux-azure: 5.4.0-1011.11 -proposed tracker (LP: #1875380) + + * Packaging resync (LP: #1786013) + - [Packaging] add libcap-dev dependency + + [ Ubuntu: 5.4.0-30.34 ] + + * focal/linux: 5.4.0-30.34 -proposed tracker (LP: #1875385) + * ubuntu/focal64 fails to mount Vagrant shared folders (LP: #1873506) + - [Packaging] Move virtualbox modules to linux-modules + - [Packaging] Remove vbox and zfs modules from generic.inclusion-list + * linux-image-5.0.0-35-generic breaks checkpointing of container + (LP: #1857257) + - SAUCE: overlayfs: use shiftfs hacks only with shiftfs as underlay + * shiftfs: broken shiftfs nesting (LP: #1872094) + - SAUCE: shiftfs: record correct creator credentials + * Add debian/rules targets to compile/run kernel selftests (LP: #1874286) + - [Packaging] add support to compile/run selftests + * shiftfs: O_TMPFILE reports ESTALE (LP: #1872757) + - SAUCE: shiftfs: fix dentry revalidation + * LIO hanging in iscsit_free_session and iscsit_stop_session (LP: #1871688) + - scsi: target: iscsi: calling iscsit_stop_session() inside + iscsit_close_session() has no effect + * [ICL] TC port in legacy/static mode can't be detected due TCCOLD + (LP: #1868936) + - SAUCE: drm/i915: Align power domain names with port names + - SAUCE: drm/i915/display: Move out code to return the digital_port of the aux + ch + - SAUCE: drm/i915/display: Add intel_legacy_aux_to_power_domain() + - SAUCE: drm/i915/display: Split hsw_power_well_enable() into two + - SAUCE: drm/i915/tc/icl: Implement TC cold sequences + - SAUCE: drm/i915/tc: Skip ref held check for TC legacy aux power wells + - SAUCE: drm/i915/tc/tgl: Implement TC cold sequences + - SAUCE: drm/i915/tc: Catch TC users accessing FIA registers without enable + aux + - SAUCE: drm/i915/tc: Do not warn when aux power well of static TC ports + timeout + * alsa/sof: external mic can't be deteced on Lenovo and HP laptops + (LP: #1872569) + - SAUCE: ASoC: intel/skl/hda - set autosuspend timeout for hda codecs + * amdgpu kernel errors in Linux 5.4 (LP: #1871248) + - drm/amd/display: Stop if retimer is not available + * Focal update: v5.4.34 upstream stable release (LP: #1874111) + - amd-xgbe: Use __napi_schedule() in BH context + - hsr: check protocol version in hsr_newlink() + - l2tp: Allow management of tunnels and session in user namespace + - net: dsa: mt7530: fix tagged frames pass-through in VLAN-unaware mode + - net: ipv4: devinet: Fix crash when add/del multicast IP with autojoin + - net: ipv6: do not consider routes via gateways for anycast address check + - net: phy: micrel: use genphy_read_status for KSZ9131 + - net: qrtr: send msgs from local of same id as broadcast + - net: revert default NAPI poll timeout to 2 jiffies + - net: tun: record RX queue in skb before do_xdp_generic() + - net: dsa: mt7530: move mt7623 settings out off the mt7530 + - net: ethernet: mediatek: move mt7623 settings out off the mt7530 + - net/mlx5: Fix frequent ioread PCI access during recovery + - net/mlx5e: Add missing release firmware call + - net/mlx5e: Fix nest_level for vlan pop action + - net/mlx5e: Fix pfnum in devlink port attribute + - net: stmmac: dwmac-sunxi: Provide TX and RX fifo sizes + - ovl: fix value of i_ino for lower hardlink corner case + - scsi: ufs: Fix ufshcd_hold() caused scheduling while atomic + - platform/chrome: cros_ec_rpmsg: Fix race with host event + - jbd2: improve comments about freeing data buffers whose page mapping is NULL + - acpi/nfit: improve bounds checking for 'func' + - perf report: Fix no branch type statistics report issue + - pwm: pca9685: Fix PWM/GPIO inter-operation + - ext4: fix incorrect group count in ext4_fill_super error message + - ext4: fix incorrect inodes per group in error message + - clk: at91: sam9x60: fix usb clock parents + - clk: at91: usb: use proper usbs_mask + - ARM: dts: imx7-colibri: fix muxing of usbc_det pin + - arm64: dts: librem5-devkit: add a vbus supply to usb0 + - usb: dwc3: gadget: Don't clear flags before transfer ended + - ASoC: Intel: mrfld: fix incorrect check on p->sink + - ASoC: Intel: mrfld: return error codes when an error occurs + - ALSA: hda/realtek - Enable the headset mic on Asus FX505DT + - ALSA: usb-audio: Filter error from connector kctl ops, too + - ALSA: usb-audio: Don't override ignore_ctl_error value from the map + - ALSA: usb-audio: Don't create jack controls for PCM terminals + - ALSA: usb-audio: Check mapping at creating connector controls, too + - arm64: vdso: don't free unallocated pages + - keys: Fix proc_keys_next to increase position index + - tracing: Fix the race between registering 'snapshot' event trigger and + triggering 'snapshot' operation + - btrfs: check commit root generation in should_ignore_root + - nl80211: fix NL80211_ATTR_FTM_RESPONDER policy + - mac80211: fix race in ieee80211_register_hw() + - mac80211_hwsim: Use kstrndup() in place of kasprintf() + - net/mlx5e: Encapsulate updating netdev queues into a function + - net/mlx5e: Rename hw_modify to preactivate + - net/mlx5e: Use preactivate hook to set the indirection table + - drm/amd/powerplay: force the trim of the mclk dpm_levels if OD is enabled + - drm/amdgpu: fix the hw hang during perform system reboot and reset + - i2c: designware: platdrv: Remove DPM_FLAG_SMART_SUSPEND flag on BYT and CHT + - ext4: do not zeroout extents beyond i_disksize + - irqchip/ti-sci-inta: Fix processing of masked irqs + - x86/resctrl: Preserve CDP enable over CPU hotplug + - x86/resctrl: Fix invalid attempt at removing the default resource group + - scsi: target: remove boilerplate code + - scsi: target: fix hang when multiple threads try to destroy the same iscsi + session + - x86/microcode/AMD: Increase microcode PATCH_MAX_SIZE + - Linux 5.4.34 + * Focal update: v5.4.33 upstream stable release (LP: #1873481) + - ARM: dts: sun8i-a83t-tbs-a711: HM5065 doesn't like such a high voltage + - bus: sunxi-rsb: Return correct data when mixing 16-bit and 8-bit reads + - ARM: dts: Fix dm814x Ethernet by changing to use rgmii-id mode + - bpf: Fix deadlock with rq_lock in bpf_send_signal() + - iwlwifi: mvm: Fix rate scale NSS configuration + - Input: tm2-touchkey - add support for Coreriver TC360 variant + - soc: fsl: dpio: register dpio irq handlers after dpio create + - rxrpc: Abstract out the calculation of whether there's Tx space + - rxrpc: Fix call interruptibility handling + - net: stmmac: platform: Fix misleading interrupt error msg + - net: vxge: fix wrong __VA_ARGS__ usage + - hinic: fix a bug of waitting for IO stopped + - hinic: fix the bug of clearing event queue + - hinic: fix out-of-order excution in arm cpu + - hinic: fix wrong para of wait_for_completion_timeout + - hinic: fix wrong value of MIN_SKB_LEN + - selftests/net: add definition for SOL_DCCP to fix compilation errors for old + libc + - cxgb4/ptp: pass the sign of offset delta in FW CMD + - drm/scheduler: fix rare NULL ptr race + - cfg80211: Do not warn on same channel at the end of CSA + - qlcnic: Fix bad kzalloc null test + - i2c: st: fix missing struct parameter description + - i2c: pca-platform: Use platform_irq_get_optional + - media: rc: add keymap for Videostrong KII Pro + - cpufreq: imx6q: Fixes unwanted cpu overclocking on i.MX6ULL + - staging: wilc1000: avoid double unlocking of 'wilc->hif_cs' mutex + - media: venus: hfi_parser: Ignore HEVC encoding for V1 + - firmware: arm_sdei: fix double-lock on hibernate with shared events + - null_blk: Fix the null_add_dev() error path + - null_blk: Handle null_add_dev() failures properly + - null_blk: fix spurious IO errors after failed past-wp access + - media: imx: imx7_mipi_csis: Power off the source when stopping streaming + - media: imx: imx7-media-csi: Fix video field handling + - xhci: bail out early if driver can't accress host in resume + - x86: Don't let pgprot_modify() change the page encryption bit + - dma-mapping: Fix dma_pgprot() for unencrypted coherent pages + - block: keep bdi->io_pages in sync with max_sectors_kb for stacked devices + - debugfs: Check module state before warning in {full/open}_proxy_open() + - irqchip/versatile-fpga: Handle chained IRQs properly + - time/sched_clock: Expire timer in hardirq context + - media: allegro: fix type of gop_length in channel_create message + - sched: Avoid scale real weight down to zero + - selftests/x86/ptrace_syscall_32: Fix no-vDSO segfault + - PCI/switchtec: Fix init_completion race condition with poll_wait() + - block, bfq: move forward the getting of an extra ref in bfq_bfqq_move + - media: i2c: video-i2c: fix build errors due to 'imply hwmon' + - libata: Remove extra scsi_host_put() in ata_scsi_add_hosts() + - pstore/platform: fix potential mem leak if pstore_init_fs failed + - gfs2: Do log_flush in gfs2_ail_empty_gl even if ail list is empty + - gfs2: Don't demote a glock until its revokes are written + - cpufreq: imx6q: fix error handling + - x86/boot: Use unsigned comparison for addresses + - efi/x86: Ignore the memory attributes table on i386 + - genirq/irqdomain: Check pointer in irq_domain_alloc_irqs_hierarchy() + - block: Fix use-after-free issue accessing struct io_cq + - media: i2c: ov5695: Fix power on and off sequences + - usb: dwc3: core: add support for disabling SS instances in park mode + - irqchip/gic-v4: Provide irq_retrigger to avoid circular locking dependency + - md: check arrays is suspended in mddev_detach before call quiesce operations + - firmware: fix a double abort case with fw_load_sysfs_fallback + - spi: spi-fsl-dspi: Replace interruptible wait queue with a simple completion + - locking/lockdep: Avoid recursion in lockdep_count_{for,back}ward_deps() + - block, bfq: fix use-after-free in bfq_idle_slice_timer_body + - btrfs: qgroup: ensure qgroup_rescan_running is only set when the worker is + at least queued + - btrfs: remove a BUG_ON() from merge_reloc_roots() + - btrfs: restart relocate_tree_blocks properly + - btrfs: track reloc roots based on their commit root bytenr + - ASoC: fix regwmask + - ASoC: dapm: connect virtual mux with default value + - ASoC: dpcm: allow start or stop during pause for backend + - ASoC: topology: use name_prefix for new kcontrol + - usb: gadget: f_fs: Fix use after free issue as part of queue failure + - usb: gadget: composite: Inform controller driver of self-powered + - ALSA: usb-audio: Add mixer workaround for TRX40 and co + - ALSA: hda: Add driver blacklist + - ALSA: hda: Fix potential access overflow in beep helper + - ALSA: ice1724: Fix invalid access for enumerated ctl items + - ALSA: pcm: oss: Fix regression by buffer overflow fix + - ALSA: hda/realtek - a fake key event is triggered by running shutup + - ALSA: doc: Document PC Beep Hidden Register on Realtek ALC256 + - ALSA: hda/realtek - Set principled PC Beep configuration for ALC256 + - ALSA: hda/realtek - Remove now-unnecessary XPS 13 headphone noise fixups + - ALSA: hda/realtek - Add quirk for Lenovo Carbon X1 8th gen + - ALSA: hda/realtek - Add quirk for MSI GL63 + - media: venus: firmware: Ignore secure call error on first resume + - media: hantro: Read be32 words starting at every fourth byte + - media: ti-vpe: cal: fix disable_irqs to only the intended target + - media: ti-vpe: cal: fix a kernel oops when unloading module + - seccomp: Add missing compat_ioctl for notify + - acpi/x86: ignore unspecified bit positions in the ACPI global lock field + - ACPICA: Allow acpi_any_gpe_status_set() to skip one GPE + - ACPI: PM: s2idle: Refine active GPEs check + - thermal: devfreq_cooling: inline all stubs for CONFIG_DEVFREQ_THERMAL=n + - nvmet-tcp: fix maxh2cdata icresp parameter + - efi/x86: Add TPM related EFI tables to unencrypted mapping checks + - PCI: pciehp: Fix indefinite wait on sysfs requests + - PCI/ASPM: Clear the correct bits when enabling L1 substates + - PCI: Add boot interrupt quirk mechanism for Xeon chipsets + - PCI: qcom: Fix the fixup of PCI_VENDOR_ID_QCOM + - PCI: endpoint: Fix for concurrent memory allocation in OB address region + - sched/fair: Fix enqueue_task_fair warning + - tpm: Don't make log failures fatal + - tpm: tpm1_bios_measurements_next should increase position index + - tpm: tpm2_bios_measurements_next should increase position index + - cpu/hotplug: Ignore pm_wakeup_pending() for disable_nonboot_cpus() + - genirq/debugfs: Add missing sanity checks to interrupt injection + - irqchip/versatile-fpga: Apply clear-mask earlier + - io_uring: remove bogus RLIMIT_NOFILE check in file registration + - pstore: pstore_ftrace_seq_next should increase position index + - MIPS/tlbex: Fix LDDIR usage in setup_pw() for Loongson-3 + - MIPS: OCTEON: irq: Fix potential NULL pointer dereference + - PM / Domains: Allow no domain-idle-states DT property in genpd when parsing + - PM: sleep: wakeup: Skip wakeup_source_sysfs_remove() if device is not there + - ath9k: Handle txpower changes even when TPC is disabled + - signal: Extend exec_id to 64bits + - x86/tsc_msr: Use named struct initializers + - x86/tsc_msr: Fix MSR_FSB_FREQ mask for Cherry Trail devices + - x86/tsc_msr: Make MSR derived TSC frequency more accurate + - x86/entry/32: Add missing ASM_CLAC to general_protection entry + - platform/x86: asus-wmi: Support laptops where the first battery is named + BATT + - KVM: nVMX: Properly handle userspace interrupt window request + - KVM: s390: vsie: Fix region 1 ASCE sanity shadow address checks + - KVM: s390: vsie: Fix delivery of addressing exceptions + - KVM: x86: Allocate new rmap and large page tracking when moving memslot + - KVM: VMX: Always VMCLEAR in-use VMCSes during crash with kexec support + - KVM: x86: Gracefully handle __vmalloc() failure during VM allocation + - KVM: VMX: Add a trampoline to fix VMREAD error handling + - KVM: VMX: fix crash cleanup when KVM wasn't used + - smb3: fix performance regression with setting mtime + - CIFS: Fix bug which the return value by asynchronous read is error + - mtd: spinand: Stop using spinand->oobbuf for buffering bad block markers + - mtd: spinand: Do not erase the block before writing a bad block marker + - btrfs: Don't submit any btree write bio if the fs has errors + - Btrfs: fix crash during unmount due to race with delayed inode workers + - btrfs: reloc: clean dirty subvols if we fail to start a transaction + - btrfs: set update the uuid generation as soon as possible + - btrfs: drop block from cache on error in relocation + - btrfs: fix missing file extent item for hole after ranged fsync + - btrfs: unset reloc control if we fail to recover + - btrfs: fix missing semaphore unlock in btrfs_sync_file + - btrfs: use nofs allocations for running delayed items + - remoteproc: qcom_q6v5_mss: Don't reassign mpss region on shutdown + - remoteproc: qcom_q6v5_mss: Reload the mba region on coredump + - remoteproc: Fix NULL pointer dereference in rproc_virtio_notify + - crypto: rng - Fix a refcounting bug in crypto_rng_reset() + - crypto: mxs-dcp - fix scatterlist linearization for hash + - erofs: correct the remaining shrink objects + - io_uring: honor original task RLIMIT_FSIZE + - mmc: sdhci-of-esdhc: fix esdhc_reset() for different controller versions + - powerpc/pseries: Drop pointless static qualifier in vpa_debugfs_init() + - tools: gpio: Fix out-of-tree build regression + - net: qualcomm: rmnet: Allow configuration updates to existing devices + - arm64: dts: allwinner: h6: Fix PMU compatible + - sched/core: Remove duplicate assignment in sched_tick_remote() + - arm64: dts: allwinner: h5: Fix PMU compatible + - mm, memcg: do not high throttle allocators based on wraparound + - dm writecache: add cond_resched to avoid CPU hangs + - dm integrity: fix a crash with unusually large tag size + - dm verity fec: fix memory leak in verity_fec_dtr + - dm clone: Add overflow check for number of regions + - dm clone metadata: Fix return type of dm_clone_nr_of_hydrated_regions() + - XArray: Fix xas_pause for large multi-index entries + - xarray: Fix early termination of xas_for_each_marked + - crypto: caam/qi2 - fix chacha20 data size error + - crypto: caam - update xts sector size for large input length + - crypto: ccree - protect against empty or NULL scatterlists + - crypto: ccree - only try to map auth tag if needed + - crypto: ccree - dec auth tag size from cryptlen map + - scsi: zfcp: fix missing erp_lock in port recovery trigger for point-to-point + - scsi: ufs: fix Auto-Hibern8 error detection + - ARM: dts: exynos: Fix polarity of the LCD SPI bus on UniversalC210 board + - arm64: dts: ti: k3-am65: Add clocks to dwc3 nodes + - arm64: armv8_deprecated: Fix undef_hook mask for thumb setend + - selftests: vm: drop dependencies on page flags from mlock2 tests + - selftests/vm: fix map_hugetlb length used for testing read and write + - selftests/powerpc: Add tlbie_test in .gitignore + - vfio: platform: Switch to platform_get_irq_optional() + - drm/i915/gem: Flush all the reloc_gpu batch + - drm/etnaviv: rework perfmon query infrastructure + - drm: Remove PageReserved manipulation from drm_pci_alloc + - drm/amdgpu/powerplay: using the FCLK DPM table to set the MCLK + - drm/amdgpu: unify fw_write_wait for new gfx9 asics + - powerpc/pseries: Avoid NULL pointer dereference when drmem is unavailable + - nfsd: fsnotify on rmdir under nfsd/clients/ + - NFS: Fix use-after-free issues in nfs_pageio_add_request() + - NFS: Fix a page leak in nfs_destroy_unlinked_subrequests() + - ext4: fix a data race at inode->i_blocks + - fs/filesystems.c: downgrade user-reachable WARN_ONCE() to pr_warn_once() + - ocfs2: no need try to truncate file beyond i_size + - perf tools: Support Python 3.8+ in Makefile + - s390/diag: fix display of diagnose call statistics + - Input: i8042 - add Acer Aspire 5738z to nomux list + - ftrace/kprobe: Show the maxactive number on kprobe_events + - clk: ingenic/jz4770: Exit with error if CGU init failed + - clk: ingenic/TCU: Fix round_rate returning error + - kmod: make request_module() return an error when autoloading is disabled + - cpufreq: powernv: Fix use-after-free + - hfsplus: fix crash and filesystem corruption when deleting files + - ipmi: fix hung processes in __get_guid() + - xen/blkfront: fix memory allocation flags in blkfront_setup_indirect() + - powerpc/64/tm: Don't let userspace set regs->trap via sigreturn + - powerpc/fsl_booke: Avoid creating duplicate tlb1 entry + - powerpc/hash64/devmap: Use H_PAGE_THP_HUGE when setting up huge devmap PTE + entries + - powerpc/xive: Use XIVE_BAD_IRQ instead of zero to catch non configured IPIs + - powerpc/64: Setup a paca before parsing device tree etc. + - powerpc/xive: Fix xmon support on the PowerNV platform + - powerpc/kprobes: Ignore traps that happened in real mode + - powerpc/64: Prevent stack protection in early boot + - scsi: mpt3sas: Fix kernel panic observed on soft HBA unplug + - powerpc: Make setjmp/longjmp signature standard + - arm64: Always force a branch protection mode when the compiler has one + - dm zoned: remove duplicate nr_rnd_zones increase in dmz_init_zone() + - dm clone: replace spin_lock_irqsave with spin_lock_irq + - dm clone: Fix handling of partial region discards + - dm clone: Add missing casts to prevent overflows and data corruption + - Revert "drm/dp_mst: Remove VCPI while disabling topology mgr" + - drm/dp_mst: Fix clearing payload state on topology disable + - drm/amdgpu: fix gfx hang during suspend with video playback (v2) + - drm/i915/icl+: Don't enable DDI IO power on a TypeC port in TBT mode + - powerpc/kasan: Fix kasan_remap_early_shadow_ro() + - mmc: sdhci: Convert sdhci_set_timeout_irq() to non-static + - mmc: sdhci: Refactor sdhci_set_timeout() + - bpf: Fix tnum constraints for 32-bit comparisons + - mfd: dln2: Fix sanity checking for endpoints + - efi/x86: Fix the deletion of variables in mixed mode + - ASoC: stm32: sai: Add missing cleanup + - Linux 5.4.33 + - SUNRPC: fix krb5p mount to provide large enough buffer in rq_rcvsize + * Panic on suspend/resume Kernel panic - not syncing: stack-protector: Kernel + stack is corrupted in: sata_pmp_eh_recover+0xa2b/0xa40 (LP: #1821434) // + Focal update: v5.4.33 upstream stable release (LP: #1873481) + - libata: Return correct status in sata_pmp_eh_recover_pm() when + ATA_DFLAG_DETACH is set + * Focal update: v5.4.32 upstream stable release (LP: #1873292) + - cxgb4: fix MPS index overwrite when setting MAC address + - ipv6: don't auto-add link-local address to lag ports + - net: dsa: bcm_sf2: Do not register slave MDIO bus with OF + - net: dsa: bcm_sf2: Ensure correct sub-node is parsed + - net: dsa: mt7530: fix null pointer dereferencing in port5 setup + - net: phy: micrel: kszphy_resume(): add delay after genphy_resume() before + accessing PHY registers + - net_sched: add a temporary refcnt for struct tcindex_data + - net_sched: fix a missing refcnt in tcindex_init() + - net: stmmac: dwmac1000: fix out-of-bounds mac address reg setting + - tun: Don't put_page() for all negative return values from XDP program + - mlxsw: spectrum_flower: Do not stop at FLOW_ACTION_VLAN_MANGLE + - r8169: change back SG and TSO to be disabled by default + - s390: prevent leaking kernel address in BEAR + - random: always use batched entropy for get_random_u{32,64} + - usb: dwc3: gadget: Wrap around when skip TRBs + - uapi: rename ext2_swab() to swab() and share globally in swab.h + - slub: improve bit diffusion for freelist ptr obfuscation + - tools/accounting/getdelays.c: fix netlink attribute length + - hwrng: imx-rngc - fix an error path + - ACPI: PM: Add acpi_[un]register_wakeup_handler() + - platform/x86: intel_int0002_vgpio: Use acpi_register_wakeup_handler() + - ASoC: jz4740-i2s: Fix divider written at incorrect offset in register + - IB/hfi1: Call kobject_put() when kobject_init_and_add() fails + - IB/hfi1: Fix memory leaks in sysfs registration and unregistration + - IB/mlx5: Replace tunnel mpls capability bits for tunnel_offloads + - ARM: imx: Enable ARM_ERRATA_814220 for i.MX6UL and i.MX7D + - ARM: imx: only select ARM_ERRATA_814220 for ARMv7-A + - ceph: remove the extra slashes in the server path + - ceph: canonicalize server path in place + - include/uapi/linux/swab.h: fix userspace breakage, use __BITS_PER_LONG for + swap + - RDMA/ucma: Put a lock around every call to the rdma_cm layer + - RDMA/cma: Teach lockdep about the order of rtnl and lock + - RDMA/siw: Fix passive connection establishment + - Bluetooth: RFCOMM: fix ODEBUG bug in rfcomm_dev_ioctl + - RDMA/cm: Update num_paths in cma_resolve_iboe_route error flow + - blk-mq: Keep set->nr_hw_queues and set->map[].nr_queues in sync + - fbcon: fix null-ptr-deref in fbcon_switch + - iommu/vt-d: Allow devices with RMRRs to use identity domain + - Linux 5.4.32 + * Focal update: v5.4.31 upstream stable release (LP: #1871651) + - nvme-rdma: Avoid double freeing of async event data + - kconfig: introduce m32-flag and m64-flag + - drm/amd/display: Add link_rate quirk for Apple 15" MBP 2017 + - drm/bochs: downgrade pci_request_region failure from error to warning + - initramfs: restore default compression behavior + - drm/amdgpu: fix typo for vcn1 idle check + - [Packaging] add libcap-dev dependency + - tools/power turbostat: Fix gcc build warnings + - tools/power turbostat: Fix missing SYS_LPI counter on some Chromebooks + - tools/power turbostat: Fix 32-bit capabilities warning + - net/mlx5e: kTLS, Fix TCP seq off-by-1 issue in TX resync flow + - XArray: Fix xa_find_next for large multi-index entries + - padata: fix uninitialized return value in padata_replace() + - brcmfmac: abort and release host after error + - misc: rtsx: set correct pcr_ops for rts522A + - misc: pci_endpoint_test: Fix to support > 10 pci-endpoint-test devices + - misc: pci_endpoint_test: Avoid using module parameter to determine irqtype + - PCI: sysfs: Revert "rescan" file renames + - coresight: do not use the BIT() macro in the UAPI header + - mei: me: add cedar fork device ids + - nvmem: check for NULL reg_read and reg_write before dereferencing + - extcon: axp288: Add wakeup support + - power: supply: axp288_charger: Add special handling for HP Pavilion x2 10 + - Revert "dm: always call blk_queue_split() in dm_process_bio()" + - ALSA: hda/ca0132 - Add Recon3Di quirk to handle integrated sound on EVGA X99 + Classified motherboard + - soc: mediatek: knows_txdone needs to be set in Mediatek CMDQ helper + - net/mlx5e: kTLS, Fix wrong value in record tracker enum + - iwlwifi: consider HE capability when setting LDPC + - iwlwifi: yoyo: don't add TLV offset when reading FIFOs + - iwlwifi: dbg: don't abort if sending DBGC_SUSPEND_RESUME fails + - rxrpc: Fix sendmsg(MSG_WAITALL) handling + - IB/hfi1: Ensure pq is not left on waitlist + - tcp: fix TFO SYNACK undo to avoid double-timestamp-undo + - watchdog: iTCO_wdt: Export vendorsupport + - watchdog: iTCO_wdt: Make ICH_RES_IO_SMI optional + - i2c: i801: Do not add ICH_RES_IO_SMI for the iTCO_wdt device + - net: Fix Tx hash bound checking + - padata: always acquire cpu_hotplug_lock before pinst->lock + - mm: mempolicy: require at least one nodeid for MPOL_PREFERRED + - Linux 5.4.31 + * Add hw timestamps to received skbs in peak_canfd (LP: #1874124) + - can: peak_canfd: provide hw timestamps in rx skbs + * kselftest: seccomp kill_after_ptrace() timeout (LP: #1872047) + - SAUCE: kselftest/runner: allow to properly deliver signals to tests + + [ Ubuntu: 5.4.0-29.33 ] + + * focal/linux: 5.4.0-29.33 -proposed tracker (LP: #1875858) + * Packaging resync (LP: #1786013) + - update dkms package versions + * Add signed modules for the 435 NVIDIA driver (LP: #1875888) + - [Packaging] NVIDIA -- add signed modules for the 435 NVIDIA driver + * built-using constraints preventing uploads (LP: #1875601) + - temporarily drop Built-Using data + + [ Ubuntu: 5.4.0-28.32 ] + + * CVE-2020-11884 + - SAUCE: s390/mm: fix page table upgrade vs 2ndary address mode accesses + + [ Ubuntu: 5.4.0-26.30 ] + + * focal/linux: 5.4.0-26.30 -proposed tracker (LP: #1873882) + * Packaging resync (LP: #1786013) + - update dkms package versions + * swap storms kills interactive use (LP: #1861359) + - SAUCE: drm/i915: prevent direct writeback from the shrinker + * 5.4.0-24.28 does not seem to apply rtprio, whereas -21 does. (LP: #1873315) + - [Config] lowlatency: turn off RT_GROUP_SCHED + * [RTL810xE] No ethernet connection (LP: #1871182) + - net: phy: realtek: fix handling of RTL8105e-integrated PHY + + [ Ubuntu: 5.4.0-25.29 ] + + * focal/linux: 5.4.0-25.29 -proposed tracker (LP: #1873459) + * [TGL] VMD support in TGL (LP: #1855954) + - PCI: vmd: Add bus 224-255 restriction decode + - PCI: vmd: Add device id for VMD device 8086:9A0B + * Can not see the storage with Intel RAID On mode enabled on Intel Comet Lake + (LP: #1871812) + - ahci: Add Intel Comet Lake PCH RAID PCI ID + + -- Stefan Bader Tue, 05 May 2020 16:09:34 +0200 + +linux-azure (5.4.0-1010.10) focal; urgency=medium + + * focal/linux-azure: 5.4.0-1010.10 -proposed tracker (LP: #1871934) + + * Miscellaneous Ubuntu changes + - [Config] CONFIG_RT_GROUP_SCHED=y + + [ Ubuntu: 5.4.0-24.28 ] + + * focal/linux: 5.4.0-24.28 -proposed tracker (LP: #1871939) + * getitimer returns it_value=0 erroneously (LP: #1349028) + - [Config] CONTEXT_TRACKING_FORCE policy should be unset + * 12d1:1038 Dual-Role OTG device on non-HNP port - unable to enumerate USB + device on port 1 (LP: #1047527) + - [Config] USB_OTG_FSM policy not needed + * Add DCPD backlight support for HP CML system (LP: #1871589) + - SAUCE: drm/i915: Force DPCD backlight mode for HP CML 2020 system + * Backlight brightness cannot be adjusted using keys (LP: #1860303) + - SAUCE drm/i915: Force DPCD backlight mode for HP Spectre x360 Convertible + 13t-aw100 + * CVE-2020-11494 + - slcan: Don't transmit uninitialized stack data in padding + * Ubuntu Kernel Support for OpenPOWER NV Secure & Trusted Boot (LP: #1866909) + - powerpc: Detect the secure boot mode of the system + - powerpc/ima: Add support to initialize ima policy rules + - powerpc: Detect the trusted boot state of the system + - powerpc/ima: Define trusted boot policy + - ima: Make process_buffer_measurement() generic + - certs: Add wrapper function to check blacklisted binary hash + - ima: Check against blacklisted hashes for files with modsig + - powerpc/ima: Update ima arch policy to check for blacklist + - powerpc/ima: Indicate kernel modules appended signatures are enforced + - powerpc/powernv: Add OPAL API interface to access secure variable + - powerpc: expose secure variables to userspace via sysfs + - x86/efi: move common keyring handler functions to new file + - powerpc: Load firmware trusted keys/hashes into kernel keyring + - x86/efi: remove unused variables + * [roce-0227]sync mainline kernel 5.6rc3 roce patchset into ubuntu HWE kernel + branch (LP: #1864950) + - RDMA/hns: Cleanups of magic numbers + - RDMA/hns: Optimize eqe buffer allocation flow + - RDMA/hns: Add the workqueue framework for flush cqe handler + - RDMA/hns: Delayed flush cqe process with workqueue + - RDMA/hns: fix spelling mistake: "attatch" -> "attach" + - RDMA/hns: Initialize all fields of doorbells to zero + - RDMA/hns: Treat revision HIP08_A as a special case + - RDMA/hns: Use flush framework for the case in aeq + - RDMA/hns: Stop doorbell update while qp state error + - RDMA/hns: Optimize qp destroy flow + - RDMA/hns: Optimize qp context create and destroy flow + - RDMA/hns: Optimize qp number assign flow + - RDMA/hns: Optimize qp buffer allocation flow + - RDMA/hns: Optimize qp param setup flow + - RDMA/hns: Optimize kernel qp wrid allocation flow + - RDMA/hns: Optimize qp doorbell allocation flow + - RDMA/hns: Check if depth of qp is 0 before configure + * [hns3-0316]sync mainline kernel 5.6rc4 hns3 patchset into ubuntu HWE kernel + branch (LP: #1867586) + - net: hns3: modify an unsuitable print when setting unknown duplex to fibre + - net: hns3: add enabled TC numbers and DWRR weight info in debugfs + - net: hns3: add support for dump MAC ID and loopback status in debugfs + - net: hns3: add missing help info for QS shaper in debugfs + - net: hns3: fix some mixed type assignment + - net: hns3: rename macro HCLGE_MAX_NCL_CONFIG_LENGTH + - net: hns3: remove an unnecessary resetting check in + hclge_handle_hw_ras_error() + - net: hns3: delete some reduandant code + - net: hns3: add a check before PF inform VF to reset + - net: hns3: print out status register when VF receives unknown source + interrupt + - net: hns3: print out command code when dump fails in debugfs + - net: hns3: synchronize some print relating to reset issue + - net: hns3: delete unnecessary logs after kzalloc fails + * [SRU][F/U/OEM-5.6] UBUNTU: SAUCE: Fix amdgpu hang during acpi event + (LP: #1871316) + - SAUCE: drm/amdgpu: Fix oops when pp_funcs is unset in ACPI event + * alsa: make the dmic detection align to the mainline kernel-5.6 + (LP: #1871284) + - ALSA: hda: add Intel DSP configuration / probe code + - ALSA: hda: fix intel DSP config + - ALSA: hda: Allow non-Intel device probe gracefully + - ALSA: hda: More constifications + - ALSA: hda: Rename back to dmic_detect option + - [Config] SND_INTEL_DSP_CONFIG=m + * add_key05 from ubuntu_ltp_syscalls failed (LP: #1869644) + - KEYS: reaching the keys quotas correctly + * Fix authentication fail on Realtek WiFi 8723de (LP: #1871300) + - SAUCE: rtw88: No retry and report for auth and assoc + - SAUCE: rtw88: fix rate for a while after being connected + - SAUCE: rtw88: Move driver IQK to set channel before association for 11N chip + * Add Mute LED support for an HP laptop (LP: #1871090) + - ALSA: hda/realtek: Enable mute LED on an HP system + * dscr_sysfs_test / futex_bench / tm-unavailable in powerpc from + ubuntu_kernel_selftests timeout on PowerPC nodes with B-5.3 (LP: #1864642) + - Revert "UBUNTU: SAUCE: selftests/powerpc -- Disable timeout for benchmark + and tm tests" + - selftests/powerpc: Turn off timeout setting for benchmarks, dscr, signal, tm + * Update 20.0.4 NVMe Core, NVMe FC Transport and nvme-cli for Broadcom Emulex + lpfc driver 12.6.0.x dependencies (LP: #1856340) + - nvme-fc: Sync nvme-fc header to FC-NVME-2 + - nvme-fc and nvmet-fc: sync with FC-NVME-2 header changes + - nvme-fc: Set new cmd set indicator in nvme-fc cmnd iu + - nvme-fc: clarify error messages + - nvme-fc: ensure association_id is cleared regardless of a Disconnect LS + - nvme: resync include/linux/nvme.h with nvmecli + - nvme: Fix parsing of ANA log page + * Update Broadcom Emulex lpfc driver in 5.4 to 12.6.0.x from 5.5 + (LP: #1855303) + - scsi: lpfc: Fix pt2pt discovery on SLI3 HBAs + - scsi: lpfc: Fix premature re-enabling of interrupts in lpfc_sli_host_down + - scsi: lpfc: Fix miss of register read failure check + - scsi: lpfc: Fix NVME io abort failures causing hangs + - scsi: lpfc: Fix device recovery errors after PLOGI failures + - scsi: lpfc: Fix GPF on scsi command completion + - scsi: lpfc: Fix NVMe ABTS in response to receiving an ABTS + - scsi: lpfc: Fix coverity errors on NULL pointer checks + - scsi: lpfc: Fix host hang at boot or slow boot + - scsi: lpfc: Update async event logging + - scsi: lpfc: Complete removal of FCoE T10 PI support on SLI-4 adapters + - scsi: lpfc: cleanup: remove unused fcp_txcmlpq_cnt + - scsi: lpfc: Update lpfc version to 12.4.0.1 + - scsi: lpfc: Make function lpfc_defer_pt2pt_acc static + - scsi: lpfc: fix lpfc_nvmet_mrq to be bound by hdw queue count + - scsi: lpfc: Fix reporting of read-only fw error errors + - scsi: lpfc: Fix lockdep errors in sli_ringtx_put + - scsi: lpfc: fix coverity error of dereference after null check + - scsi: lpfc: Slight fast-path performance optimizations + - scsi: lpfc: Remove lock contention target write path + - scsi: lpfc: Revise interrupt coalescing for missing scenarios + - scsi: lpfc: Make FW logging dynamically configurable + - scsi: lpfc: Add log macros to allow print by serverity or verbosity setting + - scsi: lpfc: Add FA-WWN Async Event reporting + - scsi: lpfc: Add FC-AL support to lpe32000 models + - scsi: lpfc: Add additional discovery log messages + - scsi: lpfc: Update lpfc version to 12.6.0.0 + - scsi: lpfc: lpfc_attr: Fix Use plain integer as NULL pointer + - scsi: lpfc: lpfc_nvmet: Fix Use plain integer as NULL pointer + - scsi: lpfc: fix build error of lpfc_debugfs.c for vfree/vmalloc + - scsi: lpfc: fix spelling error in MAGIC_NUMER_xxx + - scsi: lpfc: Fix NULL check before mempool_destroy is not needed + - scsi: lpfc: Make lpfc_debugfs_ras_log_data static + - scsi: lpfc: Fix configuration of BB credit recovery in service parameters + - scsi: lpfc: Fix kernel crash at lpfc_nvme_info_show during remote port + bounce + - scsi: lpfc: Fix dynamic fw log enablement check + - scsi: lpfc: Sync with FC-NVMe-2 SLER change to require Conf with SLER + - scsi: lpfc: Clarify FAWNN error message + - scsi: lpfc: Add registration for CPU Offline/Online events + - scsi: lpfc: Change default IRQ model on AMD architectures + - scsi: lpfc: Add enablement of multiple adapter dumps + - scsi: lpfc: Update lpfc version to 12.6.0.1 + - scsi: lpfc: Fix a kernel warning triggered by lpfc_sli4_enable_intr() + - scsi: lpfc: Fix lpfc_cpumask_of_node_init() + - scsi: lpfc: fix inlining of lpfc_sli4_cleanup_poll_list() + - scsi: lpfc: Initialize cpu_map for not present cpus + - scsi: lpfc: revise nvme max queues to be hdwq count + - scsi: lpfc: Update lpfc version to 12.6.0.2 + - scsi: lpfc: size cpu map by last cpu id set + - scsi: lpfc: Fix incomplete NVME discovery when target + - scsi: lpfc: Fix missing check for CSF in Write Object Mbox Rsp + - scsi: lpfc: Fix Fabric hostname registration if system hostname changes + - scsi: lpfc: Fix ras_log via debugfs + - scsi: lpfc: Fix disablement of FC-AL on lpe35000 models + - scsi: lpfc: Fix unmap of dpp bars affecting next driver load + - scsi: lpfc: Fix MDS Latency Diagnostics Err-drop rates + - scsi: lpfc: Fix improper flag check for IO type + - scsi: lpfc: Update lpfc version to 12.6.0.3 + - scsi: lpfc: Fix RQ buffer leakage when no IOCBs available + - scsi: lpfc: Fix lpfc_io_buf resource leak in lpfc_get_scsi_buf_s4 error path + - scsi: lpfc: Fix broken Credit Recovery after driver load + - scsi: lpfc: Fix registration of ELS type support in fdmi + - scsi: lpfc: Fix release of hwq to clear the eq relationship + - scsi: lpfc: Fix compiler warning on frame size + - scsi: lpfc: Fix coverity errors in fmdi attribute handling + - scsi: lpfc: Remove handler for obsolete ELS - Read Port Status (RPS) + - scsi: lpfc: Clean up hba max_lun_queue_depth checks + - scsi: lpfc: Update lpfc version to 12.6.0.4 + - scsi: lpfc: Copyright updates for 12.6.0.4 patches + - scsi: fc: Update Descriptor definition and add RDF and Link Integrity FPINs + - scsi: lpfc: add RDF registration and Link Integrity FPIN logging + * lockdown on power (LP: #1855668) // Ubuntu Kernel Support for OpenPOWER NV + Secure & Trusted Boot (LP: #1866909) + - [Config] Enable configs for OpenPOWER NV Secure & Trusted Boot + * lockdown on power (LP: #1855668) + - SAUCE: (lockdown) powerpc: lock down kernel in secure boot mode + * Focal update: v5.4.30 upstream stable release (LP: #1870571) + - mac80211: Check port authorization in the ieee80211_tx_dequeue() case + - mac80211: fix authentication with iwlwifi/mvm + - serial: sprd: Fix a dereference warning + - vt: selection, introduce vc_is_sel + - vt: ioctl, switch VT_IS_IN_USE and VT_BUSY to inlines + - vt: switch vt_dont_switch to bool + - vt: vt_ioctl: remove unnecessary console allocation checks + - vt: vt_ioctl: fix VT_DISALLOCATE freeing in-use virtual console + - vt: vt_ioctl: fix use-after-free in vt_in_use() + - platform/x86: pmc_atom: Add Lex 2I385SW to critclk_systems DMI table + - bpf: Explicitly memset the bpf_attr structure + - bpf: Explicitly memset some bpf info structures declared on the stack + - gpiolib: acpi: Add quirk to ignore EC wakeups on HP x2 10 CHT + AXP288 model + - net: ks8851-ml: Fix IO operations, again + - clk: imx: Align imx sc clock msg structs to 4 + - clk: imx: Align imx sc clock parent msg structs to 4 + - clk: ti: am43xx: Fix clock parent for RTC clock + - libceph: fix alloc_msg_with_page_vector() memory leaks + - arm64: alternative: fix build with clang integrated assembler + - perf map: Fix off by one in strncpy() size argument + - ARM: dts: oxnas: Fix clear-mask property + - ARM: bcm2835-rpi-zero-w: Add missing pinctrl name + - ARM: dts: imx6: phycore-som: fix arm and soc minimum voltage + - ARM: dts: N900: fix onenand timings + - ARM: dts: sun8i: r40: Move AHCI device node based on address order + - arm64: dts: ls1043a-rdb: correct RGMII delay mode to rgmii-id + - arm64: dts: ls1046ardb: set RGMII interfaces to RGMII_ID mode + - Linux 5.4.30 + * Miscellaneous Ubuntu changes + - [Config] CONFIG_RT_GROUP_SCHED=y + - SAUCE: powerpc/ima: require IMA module signatures only if MODULE_SIG is not + enabled + - SAUCE: Update aufs to 5.4.3 20200302 + - SAUCE: drm/amdgpu: Remove missing firmware files from modinfo + - SAUCE: drm/i915: Fix ref->mutex deadlock in i915_active_wait() + - SAUCE: drm/i915: Synchronize active and retire callbacks + - SAUCE: apparmor: add a valid state flags check + - SAUCE: aapparmor: add consistency check between state and dfa diff encode + flags + - SAUCE: aapparmor: remove useless aafs_create_symlink + - SAUCE: aapparmor: fail unpack if profile mode is unknown + - SAUCE: apparmor: ensure that dfa state tables have entries + - SAUCE: apparmor: fix potential label refcnt leak in aa_change_profile + - SAUCE: security/apparmor/label.c: Clean code by removing redundant + instructions + - [Config] Remove PCIEASPM_DEBUG from annotations + - [Config] Remove HEADER_TEST from annotations + - SAUCE: selftests/seccomp: allow clock_nanosleep instead of nanosleep + - [Debian] Allow building linux-libc-dev from linux-riscv + - [Packaging] Remove riscv64 packaging from master kernel + - [Config] Remove CONFIG_SND_HDA_INTEL_DETECT_DMIC from annotations + * Miscellaneous upstream changes + - net/bpfilter: remove superfluous testing message + - apparmor: increase left match history buffer size + + [ Ubuntu: 5.4.0-23.27 ] + + * Miscellaneous Ubuntu changes + - [Packaging] Enable riscv64 build + + -- Seth Forshee Fri, 10 Apr 2020 11:19:48 -0500 + +linux-azure (5.4.0-1009.9) focal; urgency=medium + + * focal/linux-azure: 5.4.0-1009.9 -proposed tracker (LP: #1870498) + + * Focal update: v5.4.29 upstream stable release (LP: #1870142) + - [Config] azure: Update config for NET_REDIRECT + + * Packaging resync (LP: #1786013) + - [Packaging] update helper scripts + + * [linux-azure] overlayfs regression - internal getxattr operations without + sepolicy checking (LP: #1864669) + - SAUCE: overlayfs: internal getxattr operations without sepolicy checking + + [ Ubuntu: 5.4.0-22.26 ] + + * focal/linux: 5.4.0-22.26 -proposed tracker (LP: #1870502) + * Packaging resync (LP: #1786013) + - [Packaging] update variants + - [Packaging] update helper scripts + - update dkms package versions + * [SFC-0316]sync mainline kernel 5.7rc1 SFC patchset into ubuntu HWE kernel + branch (LP: #1867588) + - spi: Allow SPI controller override device buswidth + - spi: HiSilicon v3xx: Properly set CMD_CONFIG for Dual/Quad modes + - spi: HiSilicon v3xx: Use DMI quirk to set controller buswidth override bits + * [hns3-0316]sync mainline kernel 5.6rc4 hns3 patchset into ubuntu HWE kernel + branch (LP: #1867586) + - net: hns3: fix VF VLAN table entries inconsistent issue + - net: hns3: fix RMW issue for VLAN filter switch + - net: hns3: clear port base VLAN when unload PF + * [sas-0316]sync mainline kernel 5.6rc1 roce patchset into ubuntu HWE kernel + branch (LP: #1867587) + - scsi: hisi_sas: use threaded irq to process CQ interrupts + - scsi: hisi_sas: replace spin_lock_irqsave/spin_unlock_restore with + spin_lock/spin_unlock + - scsi: hisi_sas: Replace magic number when handle channel interrupt + - scsi: hisi_sas: Modify the file permissions of trigger_dump to write only + - scsi: hisi_sas: Add prints for v3 hw interrupt converge and automatic + affinity + - scsi: hisi_sas: Rename hisi_sas_cq.pci_irq_mask + * Revert "nvme_fc: add module to ops template to allow module references" + (LP: #1869947) + - SAUCE: Revert "nvme_fc: add module to ops template to allow module + references" + * suspend only works once on ThinkPad X1 Carbon gen 7 (LP: #1865570) + - Revert "UBUNTU: SAUCE: e1000e: Disable s0ix flow for X1 Carbon 7th" + - SAUCE: e1000e: bump up timeout to wait when ME un-configure ULP mode + * Focal update: v5.4.29 upstream stable release (LP: #1870142) + - mmc: core: Allow host controllers to require R1B for CMD6 + - mmc: core: Respect MMC_CAP_NEED_RSP_BUSY for erase/trim/discard + - mmc: core: Respect MMC_CAP_NEED_RSP_BUSY for eMMC sleep command + - mmc: sdhci-omap: Fix busy detection by enabling MMC_CAP_NEED_RSP_BUSY + - mmc: sdhci-tegra: Fix busy detection by enabling MMC_CAP_NEED_RSP_BUSY + - ACPI: PM: s2idle: Rework ACPI events synchronization + - cxgb4: fix throughput drop during Tx backpressure + - cxgb4: fix Txq restart check during backpressure + - geneve: move debug check after netdev unregister + - hsr: fix general protection fault in hsr_addr_is_self() + - ipv4: fix a RCU-list lock in inet_dump_fib() + - macsec: restrict to ethernet devices + - mlxsw: pci: Only issue reset when system is ready + - mlxsw: spectrum_mr: Fix list iteration in error path + - net/bpfilter: fix dprintf usage for /dev/kmsg + - net: cbs: Fix software cbs to consider packet sending time + - net: dsa: Fix duplicate frames flooded by learning + - net: dsa: mt7530: Change the LINK bit to reflect the link status + - net: dsa: tag_8021q: replace dsa_8021q_remove_header with __skb_vlan_pop + - net: ena: Add PCI shutdown handler to allow safe kexec + - net: mvneta: Fix the case where the last poll did not process all rx + - net/packet: tpacket_rcv: avoid a producer race condition + - net: phy: dp83867: w/a for fld detect threshold bootstrapping issue + - net: phy: mdio-bcm-unimac: Fix clock handling + - net: phy: mdio-mux-bcm-iproc: check clk_prepare_enable() return value + - net: qmi_wwan: add support for ASKEY WWHC050 + - net/sched: act_ct: Fix leak of ct zone template on replace + - net_sched: cls_route: remove the right filter from hashtable + - net_sched: hold rtnl lock in tcindex_partial_destroy_work() + - net_sched: keep alloc_hash updated after hash allocation + - net: stmmac: dwmac-rk: fix error path in rk_gmac_probe + - NFC: fdp: Fix a signedness bug in fdp_nci_send_patch() + - r8169: re-enable MSI on RTL8168c + - slcan: not call free_netdev before rtnl_unlock in slcan_open + - tcp: also NULL skb->dev when copy was needed + - tcp: ensure skb->dev is NULL before leaving TCP stack + - tcp: repair: fix TCP_QUEUE_SEQ implementation + - vxlan: check return value of gro_cells_init() + - bnxt_en: Fix Priority Bytes and Packets counters in ethtool -S. + - bnxt_en: fix memory leaks in bnxt_dcbnl_ieee_getets() + - bnxt_en: Return error if bnxt_alloc_ctx_mem() fails. + - bnxt_en: Free context memory after disabling PCI in probe error path. + - bnxt_en: Reset rings if ring reservation fails during open() + - net: ip_gre: Separate ERSPAN newlink / changelink callbacks + - net: ip_gre: Accept IFLA_INFO_DATA-less configuration + - hsr: use rcu_read_lock() in hsr_get_node_{list/status}() + - hsr: add restart routine into hsr_get_node_list() + - hsr: set .netnsok flag + - net/mlx5: DR, Fix postsend actions write length + - net/mlx5e: Enhance ICOSQ WQE info fields + - net/mlx5e: Fix missing reset of SW metadata in Striding RQ reset + - net/mlx5e: Fix ICOSQ recovery flow with Striding RQ + - net/mlx5e: Do not recover from a non-fatal syndrome + - cgroup-v1: cgroup_pidlist_next should update position index + - nfs: add minor version to nfs_server_key for fscache + - cpupower: avoid multiple definition with gcc -fno-common + - drivers/of/of_mdio.c:fix of_mdiobus_register() + - cgroup1: don't call release_agent when it is "" + - [Config] updateconfigs for DPAA_ERRATUM_A050385 + - dt-bindings: net: FMan erratum A050385 + - arm64: dts: ls1043a: FMan erratum A050385 + - fsl/fman: detect FMan erratum A050385 + - drm/amd/display: update soc bb for nv14 + - drm/amdgpu: correct ROM_INDEX/DATA offset for VEGA20 + - drm/exynos: Fix cleanup of IOMMU related objects + - iommu/vt-d: Silence RCU-list debugging warnings + - s390/qeth: don't reset default_out_queue + - s390/qeth: handle error when backing RX buffer + - scsi: ipr: Fix softlockup when rescanning devices in petitboot + - mac80211: Do not send mesh HWMP PREQ if HWMP is disabled + - dpaa_eth: Remove unnecessary boolean expression in dpaa_get_headroom + - sxgbe: Fix off by one in samsung driver strncpy size arg + - net: hns3: fix "tc qdisc del" failed issue + - iommu/vt-d: Fix debugfs register reads + - iommu/vt-d: Populate debugfs if IOMMUs are detected + - iwlwifi: mvm: fix non-ACPI function + - i2c: hix5hd2: add missed clk_disable_unprepare in remove + - Input: raydium_i2c_ts - fix error codes in raydium_i2c_boot_trigger() + - Input: fix stale timestamp on key autorepeat events + - Input: synaptics - enable RMI on HP Envy 13-ad105ng + - Input: avoid BIT() macro usage in the serio.h UAPI header + - IB/rdmavt: Free kernel completion queue when done + - RDMA/core: Fix missing error check on dev_set_name() + - gpiolib: Fix irq_disable() semantics + - RDMA/nl: Do not permit empty devices names during RDMA_NLDEV_CMD_NEWLINK/SET + - RDMA/mad: Do not crash if the rdma device does not have a umad interface + - ceph: check POOL_FLAG_FULL/NEARFULL in addition to OSDMAP_FULL/NEARFULL + - ceph: fix memory leak in ceph_cleanup_snapid_map() + - ARM: dts: dra7: Add bus_dma_limit for L3 bus + - ARM: dts: omap5: Add bus_dma_limit for L3 bus + - x86/ioremap: Fix CONFIG_EFI=n build + - perf probe: Fix to delete multiple probe event + - perf probe: Do not depend on dwfl_module_addrsym() + - rtlwifi: rtl8188ee: Fix regression due to commit d1d1a96bdb44 + - tools: Let O= makes handle a relative path with -C option + - scripts/dtc: Remove redundant YYLOC global declaration + - scsi: sd: Fix optimal I/O size for devices that change reported values + - nl80211: fix NL80211_ATTR_CHANNEL_WIDTH attribute type + - mac80211: drop data frames without key on encrypted links + - mac80211: mark station unauthorized before key removal + - mm/swapfile.c: move inode_lock out of claim_swapfile + - drivers/base/memory.c: indicate all memory blocks as removable + - mm/sparse: fix kernel crash with pfn_section_valid check + - mm: fork: fix kernel_stack memcg stats for various stack implementations + - gpiolib: acpi: Correct comment for HP x2 10 honor_wakeup quirk + - gpiolib: acpi: Rework honor_wakeup option into an ignore_wake option + - gpiolib: acpi: Add quirk to ignore EC wakeups on HP x2 10 BYT + AXP288 model + - bpf: Fix cgroup ref leak in cgroup_bpf_inherit on out-of-memory + - RDMA/core: Ensure security pkey modify is not lost + - afs: Fix handling of an abort from a service handler + - genirq: Fix reference leaks on irq affinity notifiers + - xfrm: handle NETDEV_UNREGISTER for xfrm device + - vti[6]: fix packet tx through bpf_redirect() in XinY cases + - RDMA/mlx5: Fix the number of hwcounters of a dynamic counter + - RDMA/mlx5: Fix access to wrong pointer while performing flush due to error + - RDMA/mlx5: Block delay drop to unprivileged users + - xfrm: fix uctx len check in verify_sec_ctx_len + - xfrm: add the missing verify_sec_ctx_len check in xfrm_add_acquire + - xfrm: policy: Fix doulbe free in xfrm_policy_timer + - afs: Fix client call Rx-phase signal handling + - afs: Fix some tracing details + - afs: Fix unpinned address list during probing + - ieee80211: fix HE SPR size calculation + - mac80211: set IEEE80211_TX_CTRL_PORT_CTRL_PROTO for nl80211 TX + - netfilter: flowtable: reload ip{v6}h in nf_flow_tuple_ip{v6} + - netfilter: nft_fwd_netdev: validate family and chain type + - netfilter: nft_fwd_netdev: allow to redirect to ifb via ingress + - i2c: nvidia-gpu: Handle timeout correctly in gpu_i2c_check_status() + - bpf, x32: Fix bug with JMP32 JSET BPF_X checking upper bits + - bpf: Initialize storage pointers to NULL to prevent freeing garbage pointer + - bpf/btf: Fix BTF verification of enum members in struct/union + - bpf, sockmap: Remove bucket->lock from sock_{hash|map}_free + - ARM: dts: sun8i-a83t-tbs-a711: Fix USB OTG mode detection + - vti6: Fix memory leak of skb if input policy check fails + - r8169: fix PHY driver check on platforms w/o module softdeps + - clocksource/drivers/hyper-v: Untangle stimers and timesync from clocksources + - USB: serial: option: add support for ASKEY WWHC050 + - USB: serial: option: add BroadMobi BM806U + - USB: serial: option: add Wistron Neweb D19Q1 + - USB: cdc-acm: restore capability check order + - USB: serial: io_edgeport: fix slab-out-of-bounds read in + edge_interrupt_callback + - usb: musb: fix crash with highmen PIO and usbmon + - media: flexcop-usb: fix endpoint sanity check + - media: usbtv: fix control-message timeouts + - staging: kpc2000: prevent underflow in cpld_reconfigure() + - staging: rtl8188eu: Add ASUS USB-N10 Nano B1 to device table + - staging: wlan-ng: fix ODEBUG bug in prism2sta_disconnect_usb + - staging: wlan-ng: fix use-after-free Read in hfa384x_usbin_callback + - ahci: Add Intel Comet Lake H RAID PCI ID + - libfs: fix infoleak in simple_attr_read() + - media: ov519: add missing endpoint sanity checks + - media: dib0700: fix rc endpoint lookup + - media: stv06xx: add missing descriptor sanity checks + - media: xirlink_cit: add missing descriptor sanity checks + - media: v4l2-core: fix a use-after-free bug of sd->devnode + - update wireguard dkms package version + - [Config] updateconfigs for NET_REDIRECT + - net: Fix CONFIG_NET_CLS_ACT=n and CONFIG_NFT_FWD_NETDEV={y, m} build + - Linux 5.4.29 + * Restore kernel control of PCIe DPC via option (LP: #1869423) + - PCI/DPC: Add "pcie_ports=dpc-native" to allow DPC without AER control + * swap storms kills interactive use (LP: #1861359) + - SAUCE: mm/page_alloc.c: disable memory reclaim watermark boosting by default + * sysfs: incorrect network device permissions on network namespace change + (LP: #1865359) + - sysfs: add sysfs_file_change_owner() + - sysfs: add sysfs_link_change_owner() + - sysfs: add sysfs_group{s}_change_owner() + - sysfs: add sysfs_change_owner() + - device: add device_change_owner() + - drivers/base/power: add dpm_sysfs_change_owner() + - net-sysfs: add netdev_change_owner() + - net-sysfs: add queue_change_owner() + - net: fix sysfs permssions when device changes network namespace + - sysfs: fix static inline declaration of sysfs_groups_change_owner() + * Kernel Oops - general protection fault: 0000 [#1] SMP PTI after + disconnecting thunderbolt docking station (LP: #1864754) + - SAUCE: ptp: free ptp clock properly + * [Selftests] Apply various fixes and improvements (LP: #1870543) + - SAUCE: selftests: net: ip_defrag: limit packet to 1000 fragments + - SAUCE: kselftest/runner: avoid using timeout if timeout is disabled + - SAUCE: selftests/seccomp -- Disable timeout for seccomp tests + * Focal update: v5.4.28 upstream stable release (LP: #1869061) + - locks: fix a potential use-after-free problem when wakeup a waiter + - locks: reinstate locks_delete_block optimization + - spi: spi-omap2-mcspi: Support probe deferral for DMA channels + - drm/mediatek: Find the cursor plane instead of hard coding it + - phy: ti: gmii-sel: fix set of copy-paste errors + - phy: ti: gmii-sel: do not fail in case of gmii + - ARM: dts: dra7-l4: mark timer13-16 as pwm capable + - spi: qup: call spi_qup_pm_resume_runtime before suspending + - powerpc: Include .BTF section + - cifs: fix potential mismatch of UNC paths + - cifs: add missing mount option to /proc/mounts + - ARM: dts: dra7: Add "dma-ranges" property to PCIe RC DT nodes + - spi: pxa2xx: Add CS control clock quirk + - spi/zynqmp: remove entry that causes a cs glitch + - drm/exynos: dsi: propagate error value and silence meaningless warning + - drm/exynos: dsi: fix workaround for the legacy clock name + - drm/exynos: hdmi: don't leak enable HDMI_EN regulator if probe fails + - drivers/perf: fsl_imx8_ddr: Correct the CLEAR bit definition + - drivers/perf: arm_pmu_acpi: Fix incorrect checking of gicc pointer + - altera-stapl: altera_get_note: prevent write beyond end of 'key' + - dm bio record: save/restore bi_end_io and bi_integrity + - dm integrity: use dm_bio_record and dm_bio_restore + - riscv: avoid the PIC offset of static percpu data in module beyond 2G limits + - ASoC: stm32: sai: manage rebind issue + - spi: spi_register_controller(): free bus id on error paths + - riscv: Force flat memory model with no-mmu + - riscv: Fix range looking for kernel image memblock + - drm/amdgpu: clean wptr on wb when gpu recovery + - drm/amd/display: Clear link settings on MST disable connector + - drm/amd/display: fix dcc swath size calculations on dcn1 + - xenbus: req->body should be updated before req->state + - xenbus: req->err should be updated before req->state + - block, bfq: fix overwrite of bfq_group pointer in bfq_find_set_group() + - parse-maintainers: Mark as executable + - binderfs: use refcount for binder control devices too + - Revert "drm/fbdev: Fallback to non tiled mode if all tiles not present" + - usb: quirks: add NO_LPM quirk for RTL8153 based ethernet adapters + - USB: serial: option: add ME910G1 ECM composition 0x110b + - usb: host: xhci-plat: add a shutdown + - USB: serial: pl2303: add device-id for HP LD381 + - usb: xhci: apply XHCI_SUSPEND_DELAY to AMD XHCI controller 1022:145c + - usb: typec: ucsi: displayport: Fix NULL pointer dereference + - usb: typec: ucsi: displayport: Fix a potential race during registration + - USB: cdc-acm: fix close_delay and closing_wait units in TIOCSSERIAL + - USB: cdc-acm: fix rounding error in TIOCSSERIAL + - ALSA: line6: Fix endless MIDI read loop + - ALSA: hda/realtek - Enable headset mic of Acer X2660G with ALC662 + - ALSA: hda/realtek - Enable the headset of Acer N50-600 with ALC662 + - ALSA: seq: virmidi: Fix running status after receiving sysex + - ALSA: seq: oss: Fix running status after receiving sysex + - ALSA: pcm: oss: Avoid plugin buffer overflow + - ALSA: pcm: oss: Remove WARNING from snd_pcm_plug_alloc() checks + - tty: fix compat TIOCGSERIAL leaking uninitialized memory + - tty: fix compat TIOCGSERIAL checking wrong function ptr + - iio: chemical: sps30: fix missing triggered buffer dependency + - iio: st_sensors: remap SMO8840 to LIS2DH12 + - iio: trigger: stm32-timer: disable master mode when stopping + - iio: accel: adxl372: Set iio_chan BE + - iio: magnetometer: ak8974: Fix negative raw values in sysfs + - iio: adc: stm32-dfsdm: fix sleep in atomic context + - iio: adc: at91-sama5d2_adc: fix differential channels in triggered mode + - iio: light: vcnl4000: update sampling periods for vcnl4200 + - iio: light: vcnl4000: update sampling periods for vcnl4040 + - mmc: rtsx_pci: Fix support for speed-modes that relies on tuning + - mmc: sdhci-of-at91: fix cd-gpios for SAMA5D2 + - mmc: sdhci-cadence: set SDHCI_QUIRK2_PRESET_VALUE_BROKEN for UniPhier + - CIFS: fiemap: do not return EINVAL if get nothing + - kbuild: Disable -Wpointer-to-enum-cast + - staging: rtl8188eu: Add device id for MERCUSYS MW150US v2 + - staging: greybus: loopback_test: fix poll-mask build breakage + - staging/speakup: fix get_word non-space look-ahead + - intel_th: msu: Fix the unexpected state warning + - intel_th: Fix user-visible error codes + - intel_th: pci: Add Elkhart Lake CPU support + - modpost: move the namespace field in Module.symvers last + - rtc: max8907: add missing select REGMAP_IRQ + - arm64: compat: Fix syscall number of compat_clock_getres + - xhci: Do not open code __print_symbolic() in xhci trace events + - btrfs: fix log context list corruption after rename whiteout error + - drm/amd/amdgpu: Fix GPR read from debugfs (v2) + - drm/lease: fix WARNING in idr_destroy + - stm class: sys-t: Fix the use of time_after() + - memcg: fix NULL pointer dereference in __mem_cgroup_usage_unregister_event + - mm, memcg: fix corruption on 64-bit divisor in memory.high throttling + - mm, memcg: throttle allocators based on ancestral memory.high + - mm/hotplug: fix hot remove failure in SPARSEMEM|!VMEMMAP case + - mm: do not allow MADV_PAGEOUT for CoW pages + - epoll: fix possible lost wakeup on epoll_ctl() path + - mm: slub: be more careful about the double cmpxchg of freelist + - mm, slub: prevent kmalloc_node crashes and memory leaks + - page-flags: fix a crash at SetPageError(THP_SWAP) + - x86/mm: split vmalloc_sync_all() + - futex: Fix inode life-time issue + - futex: Unbreak futex hashing + - arm64: smp: fix smp_send_stop() behaviour + - arm64: smp: fix crash_smp_send_stop() behaviour + - nvmet-tcp: set MSG_MORE only if we actually have more to send + - drm/bridge: dw-hdmi: fix AVI frame colorimetry + - staging: greybus: loopback_test: fix potential path truncation + - staging: greybus: loopback_test: fix potential path truncations + - Linux 5.4.28 + * Pop sound from build-in speaker during cold boot and resume from S3 + (LP: #1866357) // Focal update: v5.4.28 upstream stable release + (LP: #1869061) + - ALSA: hda/realtek: Fix pop noise on ALC225 + * Focal update: v5.4.28 upstream stable release (LP: #1869061) + - perf/x86/amd: Add support for Large Increment per Cycle Events + - EDAC/amd64: Add family ops for Family 19h Models 00h-0Fh + - x86/MCE/AMD, EDAC/mce_amd: Add new Load Store unit McaType + - EDAC/mce_amd: Always load on SMCA systems + - x86/amd_nb: Add Family 19h PCI IDs + - EDAC/amd64: Drop some family checks for newer systems + * Update mpt3sas Driver to 33.100.00.00 for Ubuntu 20.04 (LP: #1863574) + - scsi: mpt3sas: Register trace buffer based on NVDATA settings + - scsi: mpt3sas: Display message before releasing diag buffer + - scsi: mpt3sas: Free diag buffer without any status check + - scsi: mpt3sas: Maintain owner of buffer through UniqueID + - scsi: mpt3sas: clear release bit when buffer reregistered + - scsi: mpt3sas: Reuse diag buffer allocated at load time + - scsi: mpt3sas: Add app owned flag support for diag buffer + - scsi: mpt3sas: Fail release cmnd if diag buffer is released + - scsi: mpt3sas: Use Component img header to get Package ver + - scsi: mpt3sas: Fix module parameter max_msix_vectors + - scsi: mpt3sas: Bump mpt3sas driver version to 32.100.00.00 + - scsi: mpt3sas: Clean up some indenting + - scsi: mpt3sas: change allocation option + - scsi: mpt3sas: Update MPI Headers to v02.00.57 + - scsi: mpt3sas: Add support for NVMe shutdown + - scsi: mpt3sas: renamed _base_after_reset_handler function + - scsi: mpt3sas: Add support IOCs new state named COREDUMP + - scsi: mpt3sas: Handle CoreDump state from watchdog thread + - scsi: mpt3sas: print in which path firmware fault occurred + - scsi: mpt3sas: Optimize mpt3sas driver logging + - scsi: mpt3sas: Print function name in which cmd timed out + - scsi: mpt3sas: Remove usage of device_busy counter + - scsi: mpt3sas: Update drive version to 33.100.00.00 + * Ubuntu 20.04: megaraid_sas driver update to version 07.713.01.00-rc1 + (LP: #1863581) + - scsi: megaraid_sas: Unique names for MSI-X vectors + - scsi: megaraid_sas: remove unused variables 'debugBlk','fusion' + - compat_ioctl: use correct compat_ptr() translation in drivers + - scsi: megaraid_sas: Make poll_aen_lock static + - scsi: megaraid_sas: Reset adapter if FW is not in READY state after device + resume + - scsi: megaraid_sas: Set no_write_same only for Virtual Disk + - scsi: megaraid_sas: Update optimal queue depth for SAS and NVMe devices + - scsi: megaraid_sas: Do not kill host bus adapter, if adapter is already dead + - scsi: megaraid_sas: Do not kill HBA if JBOD Seqence map or RAID map is + disabled + - scsi: megaraid_sas: Do not set HBA Operational if FW is not in operational + state + - scsi: megaraid_sas: Re-Define enum DCMD_RETURN_STATUS + - scsi: megaraid_sas: Limit the number of retries for the IOCTLs causing + firmware fault + - scsi: megaraid_sas: Use Block layer API to check SCSI device in-flight IO + requests + - scsi: megaraid_sas: Update driver version to 07.713.01.00-rc1 + - scsi: megaraid_sas: fixup MSIx interrupt setup during resume + + -- Stefan Bader Fri, 03 Apr 2020 18:52:00 +0200 + +linux-azure (5.4.0-1008.8) focal; urgency=medium + + + [ Ubuntu: 5.4.0-21.25 ] + + * CVE-2020-8835 + - SAUCE: bpf: undo incorrect __reg_bound_offset32 handling + + -- Thadeu Lima de Souza Cascardo Fri, 27 Mar 2020 17:57:04 -0300 + +linux-azure (5.4.0-1007.7) focal; urgency=medium + + * focal/linux-azure: 5.4.0-1007.7 -proposed tracker (LP: #1868343) + + * Packaging resync (LP: #1786013) + - [Packaging] update helper scripts + + * [linux-azure] Missing user mode io driver - uio_pci_generic (LP: #1863951) + - [Config] linux-azure: Move uio_pci_generic to the main modu + + * linux-azure: Update SGX version and udev rules (LP: #1867820) + - SAUCE: linux-azure: Update SGX to version LD_1.22 + - [Packaging] linux-azure: Add dependency to linux-base-sgx + + * Add XHCI/USB support to linux-azure (LP: #1867002) + - [Config] linux-azure: Enable xHCI for PCI passthrough + + * Miscellaneous Ubuntu changes + - [Config] updateconfigs following Ubuntu-5.4.0-19.23 rebase + + [ Ubuntu: 5.4.0-20.24 ] + + * Miscellaneous Ubuntu changes + - SAUCE: (lockdown) Reduce lockdown level to INTEGRITY for secure boot + + [ Ubuntu: 5.4.0-19.23 ] + + * focal/linux: 5.4.0-19.23 -proposed tracker (LP: #1868347) + * Packaging resync (LP: #1786013) + - [Packaging] update helper scripts + - update dkms package versions + * Focal update: v5.4.27 upstream stable release (LP: #1868538) + - netfilter: hashlimit: do not use indirect calls during gc + - netfilter: xt_hashlimit: unregister proc file before releasing mutex + - drm/amdgpu: Fix TLB invalidation request when using semaphore + - ACPI: watchdog: Allow disabling WDAT at boot + - HID: apple: Add support for recent firmware on Magic Keyboards + - ACPI: watchdog: Set default timeout in probe + - HID: hid-bigbenff: fix general protection fault caused by double kfree + - HID: hid-bigbenff: call hid_hw_stop() in case of error + - HID: hid-bigbenff: fix race condition for scheduled work during removal + - selftests/rseq: Fix out-of-tree compilation + - tracing: Fix number printing bug in print_synth_event() + - cfg80211: check reg_rule for NULL in handle_channel_custom() + - scsi: libfc: free response frame from GPN_ID + - net: usb: qmi_wwan: restore mtu min/max values after raw_ip switch + - net: ks8851-ml: Fix IRQ handling and locking + - mac80211: rx: avoid RCU list traversal under mutex + - net: ll_temac: Fix race condition causing TX hang + - net: ll_temac: Add more error handling of dma_map_single() calls + - net: ll_temac: Fix RX buffer descriptor handling on GFP_ATOMIC pressure + - net: ll_temac: Handle DMA halt condition caused by buffer underrun + - blk-mq: insert passthrough request into hctx->dispatch directly + - drm/amdgpu: fix memory leak during TDR test(v2) + - kbuild: add dtbs_check to PHONY + - kbuild: add dt_binding_check to PHONY in a correct place + - signal: avoid double atomic counter increments for user accounting + - slip: not call free_netdev before rtnl_unlock in slip_open + - net: phy: mscc: fix firmware paths + - hinic: fix a irq affinity bug + - hinic: fix a bug of setting hw_ioctxt + - hinic: fix a bug of rss configuration + - net: rmnet: fix NULL pointer dereference in rmnet_newlink() + - net: rmnet: fix NULL pointer dereference in rmnet_changelink() + - net: rmnet: fix suspicious RCU usage + - net: rmnet: remove rcu_read_lock in rmnet_force_unassociate_device() + - net: rmnet: do not allow to change mux id if mux id is duplicated + - net: rmnet: use upper/lower device infrastructure + - net: rmnet: fix bridge mode bugs + - net: rmnet: fix packet forwarding in rmnet bridge mode + - sfc: fix timestamp reconstruction at 16-bit rollover points + - jbd2: fix data races at struct journal_head + - blk-mq: insert flush request to the front of dispatch queue + - net: qrtr: fix len of skb_put_padto in qrtr_node_enqueue + - ARM: 8957/1: VDSO: Match ARMv8 timer in cntvct_functional() + - ARM: 8958/1: rename missed uaccess .fixup section + - mm: slub: add missing TID bump in kmem_cache_alloc_bulk() + - HID: google: add moonball USB id + - HID: add ALWAYS_POLL quirk to lenovo pixart mouse + - ARM: 8961/2: Fix Kbuild issue caused by per-task stack protector GCC plugin + - ipv4: ensure rcu_read_lock() in cipso_v4_error() + - Linux 5.4.27 + * This laptop contains a touchpadwhich is not recognized. (LP: #1858299) // + Focal update: v5.4.27 upstream stable release (LP: #1868538) + - HID: i2c-hid: add Trekstor Surfbook E11B to descriptor override + * suspend only works once on ThinkPad X1 Carbon gen 7 (LP: #1865570) + - SAUCE: e1000e: Disable s0ix flow for X1 Carbon 7th + * Make Dell WD19 dock more reliable after suspend (LP: #1868217) + - xhci: Ensure link state is U3 after setting USB_SS_PORT_LS_U3 + - xhci: Wait until link state trainsits to U0 after setting USB_SS_PORT_LS_U0 + - xhci: Finetune host initiated USB3 rootport link suspend and resume + - USB: Disable LPM on WD19's Realtek Hub + * update-version-dkms doesn't add a BugLink (LP: #1867790) + - [Packaging] Add BugLink to update-version-dkms commit + * enable realtek ethernet device ASPM function (LP: #1836030) + - PCI/ASPM: Add L1 PM substate support to pci_disable_link_state() + - PCI/ASPM: Allow re-enabling Clock PM + - PCI/ASPM: Remove pcie_aspm_enabled() unnecessary locking + - PCI/ASPM: Add pcie_aspm_get_link() + - PCI/ASPM: Add sysfs attributes for controlling ASPM link states + * Update SmartPQI driver in Focal to 1.2.10-025 (LP: #1864484) + - scsi: smartpqi: clean up indentation of a statement + - scsi: smartpqi: remove set but not used variable 'ctrl_info' + - scsi: smartpqi: clean up an indentation issue + - scsi: smartpqi: fix controller lockup observed during force reboot + - scsi: smartpqi: fix call trace in device discovery + - scsi: smartpqi: add inquiry timeouts + - scsi: smartpqi: fix LUN reset when fw bkgnd thread is hung + - scsi: smartpqi: change TMF timeout from 60 to 30 seconds + - scsi: smartpqi: correct syntax issue + - scsi: smartpqi: fix problem with unique ID for physical device + - scsi: smartpqi: remove unused manifest constants + - scsi: smartpqi: Align driver syntax with oob + - scsi: smartpqi: bump version + * [roce-0111]sync mainline kernel 5.5rc6 roce patchset into ubuntu HWE kernel + branch (LP: #1859269) + - RDMA/hns: Modify variable/field name from vlan to vlan_id + - RDMA/hns: Fix a spelling mistake in a macro + - RDMA/hns: Delete BITS_PER_BYTE redefinition + - RDMA/core: Move core content from ib_uverbs to ib_core + - RDMA/core: Create mmap database and cookie helper functions + - RDMA: Connect between the mmap entry and the umap_priv structure + - RDMA/hns: Remove unsupported modify_port callback + - RDMA/hns: Delete unnecessary variable max_post + - RDMA/hns: Remove unnecessary structure hns_roce_sqp + - RDMA/hns: Delete unnecessary uar from hns_roce_cq + - RDMA/hns: Modify fields of struct hns_roce_srq + - RDMA/hns: Replace not intuitive function/macro names + - RDMA/hns: Simplify doorbell initialization code + - RDMA/hns: Modify hns_roce_hw_v2_get_cfg to simplify the code + - RDMA/hns: Fix non-standard error codes + - RDMA/hns: Modify appropriate printings + - dma-mapping: remove the DMA_ATTR_WRITE_BARRIER flag + - IB/umem: remove the dmasync argument to ib_umem_get + - RDMA/hns: Redefine interfaces used in creating cq + - RDMA/hns: Redefine the member of hns_roce_cq struct + - RDMA/hns: Rename the functions used inside creating cq + - RDMA/hns: Delete unnecessary callback functions for cq + - RDMA/hns: Remove unused function hns_roce_init_eq_table() + - RDMA/hns: Update the value of qp type + - RDMA/hns: Delete unnessary parameters in hns_roce_v2_qp_modify() + - RDMA/hns: Remove redundant print information + - RDMA/hns: Replace custom macros HNS_ROCE_ALIGN_UP + - RDMA/hns: Fix coding style issues + - RDMA/hns: Add support for reporting wc as software mode + - RDMA/hns: Remove some redundant variables related to capabilities + - RDMA/hns: Add interfaces to get pf capabilities from firmware + - RDMA/hns: Get pf capabilities from firmware + - RDMA/hns: Add support for extended atomic in userspace + * dmaengine: hisilicon: Add Kunpeng DMA engine support (LP: #1864442) + - dmaengine: hisilicon: Add Kunpeng DMA engine support + - [Config] CONFIG_HISI_DMA=m + * Add support for Realtek 8723DE wireless adapter (LP: #1780590) + - rtw88: 8822c: fix boolreturn.cocci warnings + - rtw88: remove redundant flag check helper function + - rtw88: pci: reset H2C queue indexes in a single write + - rtw88: not to enter or leave PS under IRQ + - rtw88: not to control LPS by each vif + - rtw88: remove unused lps state check helper + - rtw88: LPS enter/leave should be protected by lock + - rtw88: leave PS state for dynamic mechanism + - rtw88: add deep power save support + - rtw88: not to enter LPS by coex strategy + - rtw88: select deep PS mode when module is inserted + - rtw88: add deep PS PG mode for 8822c + - rtw88: remove misleading module parameter rtw_fw_support_lps + - mac80211: simplify TX aggregation start + - rtw88: check firmware leave lps successfully + - rtw88: allows to set RTS in TX descriptor + - rtw88: add driver TX queue support + - rtw88: take over rate control from mac80211 + - rtw88: report tx rate to mac80211 stack + - rtw88: add TX-AMSDU support + - rtw88: flush hardware tx queues + - rtw88: Don't set RX_FLAG_DECRYPTED if packet has no encryption + - rtw88: configure TX queue EDCA parameters + - rtw88: raise firmware version debug level + - rtw88: use struct rtw_fw_hdr to access firmware header + - rtw88: Fix an error message + - rtw88: config 8822c multicast address in MAC init flow + - rtw88: add NL80211_EXT_FEATURE_CAN_REPLACE_PTK0 support + - rtw88: Use rtw_write8_set to set SYS_FUNC + - rtw88: pci: config phy after chip info is setup + - rtw88: use a for loop in rtw_power_mode_change(), not goto + - rtw88: include interrupt.h for tasklet_struct + - rtw88: mark rtw_fw_hdr __packed + - rtw88: use macro to check the current band + - rtw88: add power tracking support + - rtw88: Enable 802.11ac beamformee support + - rtw88: add set_bitrate_mask support + - rtw88: add phy_info debugfs to show Tx/Rx physical status + - rtw88: fix GENMASK_ULL for u64 + - rtw88: fix sparse warnings for DPK + - rtw88: fix sparse warnings for power tracking + - rtw88: 8822b: add RFE type 3 support + - rtw88: use rtw_phy_pg_cfg_pair struct, not arrays + - rtw88: rearrange if..else statements for rx rate indexes + - rtw88: avoid FW info flood + - rtw88: remove redundant null pointer check on arrays + - rtw88: raise LPS threshold to 50, for less power consumption + - rtw88: fix potential NULL pointer access for firmware + - rtw88: signal completion even on firmware-request failure + - rtw88: remove duplicated include from ps.c + - rtw88: pci: use macros to access PCI DBI/MDIO registers + - rtw88: pci: use for loop instead of while loop for DBI/MDIO + - rtw88: pci: enable CLKREQ function if host supports it + - rtw88: allows to enable/disable HCI link PS mechanism + - rtw88: pci: reset ring index when release skbs in tx ring + - rtw88: pci: reset dma when reset pci trx ring + - rtw88: add interface config for 8822c + - rtw88: load wowlan firmware if wowlan is supported + - rtw88: support wowlan feature for 8822c + - rtw88: Add wowlan pattern match support + - rtw88: Add wowlan net-detect support + - rtw88: fix TX secondary channel offset of 40M if current bw is 20M or 40M + - rtw88: 8822c: update power sequence to v15 + - rtw88: remove unused spinlock + - rtw88: remove unused variable 'in_lps' + - rtw88: remove unused vif pointer in struct rtw_vif + - rtw88: use rtw_hci_stop() instead of rtwdev->hci.ops->stop() + - rtw88: assign NULL to skb after being kfree()'ed + - rtw88: change max_num_of_tx_queue() definition to inline in pci.h + - rtw88: use true,false for bool variable + - rtw88: use shorter delay time to poll PS state + - rtw88: Fix return value of rtw_wow_check_fw_status + - SAUCE: rtw88: add regulatory process strategy for different chipset + - SAUCE: rtw88: support dynamic user regulatory setting + - SAUCE: rtw88: Use secondary channel offset enumeration + - SAUCE: rtw88: 8822c: modify rf protection setting + - SAUCE: rtw88: disable TX-AMSDU on 2.4G band + - SAUCE: Revert "rtw88: disable TX-AMSDU on 2.4G band" + - SAUCE: rtw88: disable TX-AMSDU on 2.4G band + - SAUCE: rtw88: remove unused parameter vif in rtw_lps_pg_info_get() + - SAUCE: rtw88: add rtw_read8_mask and rtw_read16_mask + - SAUCE: rtw88: pci: 8822c should set clock delay to zero + - SAUCE: rtw88: move rtw_enter_ips() to the last when config + - SAUCE: rtw88: avoid holding mutex for cancel_delayed_work_sync() + - SAUCE: rtw88: add ciphers to suppress error message + - SAUCE: rtw88: 8822c: update power sequence to v16 + - SAUCE: rtw88: Fix incorrect beamformee role setting + - SAUCE: rtw88: don't hold all IRQs disabled for PS operations + - SAUCE: rtw88: extract alloc rsvd_page and h2c skb routines + - SAUCE: rtw88: associate reserved pages with each vif + - SAUCE: rtw88: add adaptivity support for EU/JP regulatory + - SAUCE: rtw88: 8723d: Add basic chip capabilities + - SAUCE: rtw88: 8723d: add beamform wrapper functions + - SAUCE: rtw88: 8723d: Add power sequence + - SAUCE: rtw88: 8723d: Add RF read/write ops + - SAUCE: rtw88: 8723d: Add mac/bb/rf/agc/power_limit tables + - SAUCE: rtw88: 8723d: Add cfg_ldo25 to control LDO25 + - SAUCE: rtw88: 8723d: Add new chip op efuse_grant() to control efuse access + - SAUCE: rtw88: 8723d: Add read_efuse to recognize efuse info from map + - SAUCE: rtw88: add legacy firmware download for 8723D devices + - SAUCE: rtw88: no need to send additional information to legacy firmware + - SAUCE: rtw88: 8723d: Add mac power-on/-off function + - SAUCE: rtw88: decompose while(1) loop of power sequence polling command + - SAUCE: rtw88: 8723d: 11N chips don't support H2C queue + - SAUCE: rtw88: 8723d: implement set_tx_power_index ops + - SAUCE: rtw88: 8723d: Organize chip TX/RX FIFO + - SAUCE: rtw88: 8723d: initialize mac/bb/rf basic functions + - SAUCE: rtw88: 8723d: Add DIG parameter + - SAUCE: rtw88: 8723d: Add query_rx_desc + - SAUCE: rtw88: 8723d: Add set_channel + - SAUCE: rtw88: handle C2H_CCX_TX_RPT to know if packet TX'ed successfully + - SAUCE: rtw88: 8723d: 11N chips don't support LDPC + - SAUCE: rtw88: set default port to firmware + - SAUCE: rtw88: update tx descriptor of mgmt and rsvd page packets + - SAUCE: rtw88: sar: add SAR of TX power limit + - SAUCE: rtw88: sar: Load static SAR table from ACPI WRDS method + - SAUCE: rtw88: sar: Load dynamic SAR table from ACPI methods + - SAUCE: rtw88: sar: apply dynamic SAR table to tx power limit + - SAUCE: rtw88: sar: add sar_work to poll if dynamic SAR table is changed + - SAUCE: rtw88: sar: dump sar information via debugfs + - SAUCE: rtw88: 8723d: Add chip_ops::false_alarm_statistics + - SAUCE: rtw88: 8723d: Set IG register for CCK rate + - SAUCE: rtw88: 8723d: add interface configurations table + - SAUCE: rtw88: 8723d: Add LC calibration + - SAUCE: rtw88: 8723d: add IQ calibration + - SAUCE: rtw88: 8723d: Add power tracking + - SAUCE: rtw88: 8723d: Add shutdown callback to disable BT USB suspend + - SAUCE: rtw88: 8723d: implement flush queue + - SAUCE: rtw88: 8723d: set ltecoex register address in chip_info + - SAUCE: rtw88: 8723d: Add coex support + - SAUCE: rtw88: fill zeros to words 0x06 and 0x07 of security cam entry + - SAUCE: rtw88: 8723d: Add 8723DE to Kconfig and Makefile + - [Config] CONFIG_RTW88_8723DE=y + * [Ubuntu 20.04] Unset HIBERNATION and PM kernel config options for focal + (LP: #1867753) + - [Config] CONFIG_HIBERNATION=n and CONFIG_PM=n for s390x + * [20.04 FEAT] Base KVM setup for secure guests - kernel part (LP: #1835531) + - KVM: s390: Cleanup kvm_arch_init error path + - KVM: s390: Cleanup initial cpu reset + - KVM: s390: Add new reset vcpu API + - s390/protvirt: introduce host side setup + - s390/protvirt: add ultravisor initialization + - s390/mm: provide memory management functions for protected KVM guests + - s390/mm: add (non)secure page access exceptions handlers + - s390/protvirt: Add sysfs firmware interface for Ultravisor information + - KVM: s390/interrupt: do not pin adapter interrupt pages + - KVM: s390: protvirt: Add UV debug trace + - KVM: s390: add new variants of UV CALL + - KVM: s390: protvirt: Add initial vm and cpu lifecycle handling + - KVM: s390: protvirt: Secure memory is not mergeable + - KVM: s390/mm: Make pages accessible before destroying the guest + - KVM: s390: protvirt: Handle SE notification interceptions + - KVM: s390: protvirt: Instruction emulation + - KVM: s390: protvirt: Implement interrupt injection + - KVM: s390: protvirt: Add SCLP interrupt handling + - KVM: s390: protvirt: Handle spec exception loops + - KVM: s390: protvirt: Add new gprs location handling + - KVM: S390: protvirt: Introduce instruction data area bounce buffer + - KVM: s390: protvirt: handle secure guest prefix pages + - KVM: s390/mm: handle guest unpin events + - KVM: s390: protvirt: Write sthyi data to instruction data area + - KVM: s390: protvirt: STSI handling + - KVM: s390: protvirt: disallow one_reg + - KVM: s390: protvirt: Do only reset registers that are accessible + - KVM: s390: protvirt: Only sync fmt4 registers + - KVM: s390: protvirt: Add program exception injection + - KVM: s390: protvirt: UV calls in support of diag308 0, 1 + - KVM: s390: protvirt: Report CPU state to Ultravisor + - KVM: s390: protvirt: Support cmd 5 operation state + - KVM: s390: protvirt: Mask PSW interrupt bits for interception 104 and 112 + - KVM: s390: protvirt: do not inject interrupts after start + - KVM: s390: protvirt: Add UV cpu reset calls + - DOCUMENTATION: Protected virtual machine introduction and IPL + - KVM: s390: protvirt: introduce and enable KVM_CAP_S390_PROTECTED + - KVM: s390: protvirt: Add KVM api documentation + - mm/gup/writeback: add callbacks for inaccessible pages + * Sys oopsed with sysfs test in ubuntu_stress_smoke_test on X-hwe ARM64 + (LP: #1866772) + - ACPI: sysfs: copy ACPI data using io memory copying + * Focal update: v5.4.26 upstream stable release (LP: #1867903) + - virtio_balloon: Adjust label in virtballoon_probe + - ALSA: hda/realtek - More constifications + - cgroup, netclassid: periodically release file_lock on classid updating + - gre: fix uninit-value in __iptunnel_pull_header + - inet_diag: return classid for all socket types + - ipv6/addrconf: call ipv6_mc_up() for non-Ethernet interface + - ipvlan: add cond_resched_rcu() while processing muticast backlog + - ipvlan: do not add hardware address of master to its unicast filter list + - ipvlan: do not use cond_resched_rcu() in ipvlan_process_multicast() + - ipvlan: don't deref eth hdr before checking it's set + - macvlan: add cond_resched() during multicast processing + - net: dsa: fix phylink_start()/phylink_stop() calls + - net: dsa: mv88e6xxx: fix lockup on warm boot + - net: fec: validate the new settings in fec_enet_set_coalesce() + - net: hns3: fix a not link up issue when fibre port supports autoneg + - net/ipv6: use configured metric when add peer route + - netlink: Use netlink header as base to calculate bad attribute offset + - net: macsec: update SCI upon MAC address change. + - net: nfc: fix bounds checking bugs on "pipe" + - net/packet: tpacket_rcv: do not increment ring index on drop + - net: phy: bcm63xx: fix OOPS due to missing driver name + - net: stmmac: dwmac1000: Disable ACS if enhanced descs are not used + - net: systemport: fix index check to avoid an array out of bounds access + - sfc: detach from cb_page in efx_copy_channel() + - slip: make slhc_compress() more robust against malicious packets + - taprio: Fix sending packets without dequeueing them + - bonding/alb: make sure arp header is pulled before accessing it + - bnxt_en: reinitialize IRQs when MTU is modified + - bnxt_en: fix error handling when flashing from file + - cgroup: memcg: net: do not associate sock with unrelated cgroup + - net: memcg: late association of sock to memcg + - net: memcg: fix lockdep splat in inet_csk_accept() + - devlink: validate length of param values + - devlink: validate length of region addr/len + - fib: add missing attribute validation for tun_id + - nl802154: add missing attribute validation + - nl802154: add missing attribute validation for dev_type + - can: add missing attribute validation for termination + - macsec: add missing attribute validation for port + - net: fq: add missing attribute validation for orphan mask + - net: taprio: add missing attribute validation for txtime delay + - team: add missing attribute validation for port ifindex + - team: add missing attribute validation for array index + - tipc: add missing attribute validation for MTU property + - nfc: add missing attribute validation for SE API + - nfc: add missing attribute validation for deactivate target + - nfc: add missing attribute validation for vendor subcommand + - net: phy: avoid clearing PHY interrupts twice in irq handler + - net: phy: fix MDIO bus PM PHY resuming + - net/ipv6: need update peer route when modify metric + - net/ipv6: remove the old peer route if change it to a new one + - selftests/net/fib_tests: update addr_metric_test for peer route testing + - net: dsa: Don't instantiate phylink for CPU/DSA ports unless needed + - net: phy: Avoid multiple suspends + - cgroup: cgroup_procs_next should increase position index + - cgroup: Iterate tasks that did not finish do_exit() + - netfilter: nf_tables: fix infinite loop when expr is not available + - iwlwifi: mvm: Do not require PHY_SKU NVM section for 3168 devices + - iommu/vt-d: quirk_ioat_snb_local_iommu: replace WARN_TAINT with pr_warn + + add_taint + - netfilter: nf_conntrack: ct_cpu_seq_next should increase position index + - netfilter: synproxy: synproxy_cpu_seq_next should increase position index + - netfilter: xt_recent: recent_seq_next should increase position index + - netfilter: x_tables: xt_mttg_seq_next should increase position index + - workqueue: don't use wq_select_unbound_cpu() for bound works + - drm/amd/display: remove duplicated assignment to grph_obj_type + - drm/i915: be more solid in checking the alignment + - drm/i915: Defer semaphore priority bumping to a workqueue + - mmc: sdhci-pci-gli: Enable MSI interrupt for GL975x + - pinctrl: falcon: fix syntax error + - ktest: Add timeout for ssh sync testing + - cifs_atomic_open(): fix double-put on late allocation failure + - gfs2_atomic_open(): fix O_EXCL|O_CREAT handling on cold dcache + - KVM: x86: clear stale x86_emulate_ctxt->intercept value + - KVM: nVMX: avoid NULL pointer dereference with incorrect EVMCS GPAs + - ARC: define __ALIGN_STR and __ALIGN symbols for ARC + - fuse: fix stack use after return + - s390/dasd: fix data corruption for thin provisioned devices + - ipmi_si: Avoid spurious errors for optional IRQs + - blk-iocost: fix incorrect vtime comparison in iocg_is_idle() + - fscrypt: don't evict dirty inodes after removing key + - macintosh: windfarm: fix MODINFO regression + - x86/ioremap: Map EFI runtime services data as encrypted for SEV + - efi: Fix a race and a buffer overflow while reading efivars via sysfs + - efi: Add a sanity check to efivar_store_raw() + - i2c: designware-pci: Fix BUG_ON during device removal + - mt76: fix array overflow on receiving too many fragments for a packet + - perf/amd/uncore: Replace manual sampling check with CAP_NO_INTERRUPT flag + - x86/mce: Fix logic and comments around MSR_PPIN_CTL + - iommu/dma: Fix MSI reservation allocation + - iommu/vt-d: dmar: replace WARN_TAINT with pr_warn + add_taint + - iommu/vt-d: Fix RCU list debugging warnings + - iommu/vt-d: Fix a bug in intel_iommu_iova_to_phys() for huge page + - batman-adv: Don't schedule OGM for disabled interface + - clk: imx8mn: Fix incorrect clock defines + - pinctrl: meson-gxl: fix GPIOX sdio pins + - pinctrl: imx: scu: Align imx sc msg structs to 4 + - virtio_ring: Fix mem leak with vring_new_virtqueue() + - drm/i915/gvt: Fix dma-buf display blur issue on CFL + - pinctrl: core: Remove extra kref_get which blocks hogs being freed + - drm/i915/gvt: Fix unnecessary schedule timer when no vGPU exits + - driver code: clarify and fix platform device DMA mask allocation + - iommu/vt-d: Fix RCU-list bugs in intel_iommu_init() + - i2c: gpio: suppress error on probe defer + - nl80211: add missing attribute validation for critical protocol indication + - nl80211: add missing attribute validation for beacon report scanning + - nl80211: add missing attribute validation for channel switch + - perf bench futex-wake: Restore thread count default to online CPU count + - netfilter: cthelper: add missing attribute validation for cthelper + - netfilter: nft_payload: add missing attribute validation for payload csum + flags + - netfilter: nft_tunnel: add missing attribute validation for tunnels + - netfilter: nf_tables: dump NFTA_CHAIN_FLAGS attribute + - netfilter: nft_chain_nat: inet family is missing module ownership + - iommu/vt-d: Fix the wrong printing in RHSA parsing + - iommu/vt-d: Ignore devices with out-of-spec domain number + - i2c: acpi: put device when verifying client fails + - iommu/amd: Fix IOMMU AVIC not properly update the is_run bit in IRTE + - ipv6: restrict IPV6_ADDRFORM operation + - net/smc: check for valid ib_client_data + - net/smc: cancel event worker during device removal + - Linux 5.4.26 + * please help enable CONFIG_EROFS_FS_ZIP (LP: #1867099) + - [Config] CONFIG_EROFS_FS_ZIP=y + - [Config] CONFIG_EROFS_FS_CLUSTER_PAGE_LIMIT=1 + * All PS/2 ports on PS/2 Serial add-in bracket are not working after S3 + (LP: #1866734) + - SAUCE: Input: i8042 - fix the selftest retry logic + * [UBUNTU 20.04] virtio-blk disks can go dissfunctional when swiotlb fills up + (LP: #1867109) + - virtio-blk: fix hw_queue stopped on arbitrary error + - virtio-blk: improve virtqueue error to BLK_STS + * Focal update: v5.4.25 upstream stable release (LP: #1867178) + - block, bfq: get extra ref to prevent a queue from being freed during a group + move + - block, bfq: do not insert oom queue into position tree + - net: dsa: bcm_sf2: Forcibly configure IMP port for 1Gb/sec + - net: stmmac: fix notifier registration + - dm thin metadata: fix lockdep complaint + - RDMA/core: Fix pkey and port assignment in get_new_pps + - RDMA/core: Fix use of logical OR in get_new_pps + - kbuild: fix 'No such file or directory' warning when cleaning + - kprobes: Fix optimize_kprobe()/unoptimize_kprobe() cancellation logic + - blktrace: fix dereference after null check + - ALSA: hda: do not override bus codec_mask in link_get() + - serial: ar933x_uart: set UART_CS_{RX,TX}_READY_ORIDE + - selftests: fix too long argument + - usb: gadget: composite: Support more than 500mA MaxPower + - usb: gadget: ffs: ffs_aio_cancel(): Save/restore IRQ flags + - usb: gadget: serial: fix Tx stall after buffer overflow + - habanalabs: halt the engines before hard-reset + - habanalabs: do not halt CoreSight during hard reset + - habanalabs: patched cb equals user cb in device memset + - drm/msm/mdp5: rate limit pp done timeout warnings + - drm: msm: Fix return type of dsi_mgr_connector_mode_valid for kCFI + - drm/modes: Make sure to parse valid rotation value from cmdline + - drm/modes: Allow DRM_MODE_ROTATE_0 when applying video mode parameters + - scsi: megaraid_sas: silence a warning + - drm/msm/dsi: save pll state before dsi host is powered off + - drm/msm/dsi/pll: call vco set rate explicitly + - selftests: forwarding: use proto icmp for {gretap, ip6gretap}_mac testing + - selftests: forwarding: vxlan_bridge_1d: fix tos value + - net: atlantic: check rpc result and wait for rpc address + - net: ks8851-ml: Remove 8-bit bus accessors + - net: ks8851-ml: Fix 16-bit data access + - net: ks8851-ml: Fix 16-bit IO operation + - net: ethernet: dm9000: Handle -EPROBE_DEFER in dm9000_parse_dt() + - watchdog: da9062: do not ping the hw during stop() + - s390/cio: cio_ignore_proc_seq_next should increase position index + - s390: make 'install' not depend on vmlinux + - efi: Only print errors about failing to get certs if EFI vars are found + - net/mlx5: DR, Fix matching on vport gvmi + - nvme/pci: Add sleep quirk for Samsung and Toshiba drives + - nvme-pci: Use single IRQ vector for old Apple models + - x86/boot/compressed: Don't declare __force_order in kaslr_64.c + - s390/qdio: fill SL with absolute addresses + - nvme: Fix uninitialized-variable warning + - ice: Don't tell the OS that link is going down + - x86/xen: Distribute switch variables for initialization + - net: thunderx: workaround BGX TX Underflow issue + - csky/mm: Fixup export invalid_pte_table symbol + - csky: Set regs->usp to kernel sp, when the exception is from kernel + - csky/smp: Fixup boot failed when CONFIG_SMP + - csky: Fixup ftrace modify panic + - csky: Fixup compile warning for three unimplemented syscalls + - arch/csky: fix some Kconfig typos + - selftests: forwarding: vxlan_bridge_1d: use more proper tos value + - firmware: imx: scu: Ensure sequential TX + - binder: prevent UAF for binderfs devices + - binder: prevent UAF for binderfs devices II + - ALSA: hda/realtek - Add Headset Mic supported + - ALSA: hda/realtek - Add Headset Button supported for ThinkPad X1 + - ALSA: hda/realtek - Fix silent output on Gigabyte X570 Aorus Master + - ALSA: hda/realtek - Enable the headset of ASUS B9450FA with ALC294 + - cifs: don't leak -EAGAIN for stat() during reconnect + - cifs: fix rename() by ensuring source handle opened with DELETE bit + - usb: storage: Add quirk for Samsung Fit flash + - usb: quirks: add NO_LPM quirk for Logitech Screen Share + - usb: dwc3: gadget: Update chain bit correctly when using sg list + - usb: cdns3: gadget: link trb should point to next request + - usb: cdns3: gadget: toggle cycle bit before reset endpoint + - usb: core: hub: fix unhandled return by employing a void function + - usb: core: hub: do error out if usb_autopm_get_interface() fails + - usb: core: port: do error out if usb_autopm_get_interface() fails + - vgacon: Fix a UAF in vgacon_invert_region + - mm, numa: fix bad pmd by atomically check for pmd_trans_huge when marking + page tables prot_numa + - mm: fix possible PMD dirty bit lost in set_pmd_migration_entry() + - mm, hotplug: fix page online with DEBUG_PAGEALLOC compiled but not enabled + - fat: fix uninit-memory access for partial initialized inode + - btrfs: fix RAID direct I/O reads with alternate csums + - arm64: dts: socfpga: agilex: Fix gmac compatible + - arm: dts: dra76x: Fix mmc3 max-frequency + - tty:serial:mvebu-uart:fix a wrong return + - tty: serial: fsl_lpuart: free IDs allocated by IDA + - serial: 8250_exar: add support for ACCES cards + - vt: selection, close sel_buffer race + - vt: selection, push console lock down + - vt: selection, push sel_lock up + - media: hantro: Fix broken media controller links + - media: mc-entity.c: use & to check pad flags, not == + - media: vicodec: process all 4 components for RGB32 formats + - media: v4l2-mem2mem.c: fix broken links + - perf intel-pt: Fix endless record after being terminated + - perf intel-bts: Fix endless record after being terminated + - perf cs-etm: Fix endless record after being terminated + - perf arm-spe: Fix endless record after being terminated + - spi: spidev: Fix CS polarity if GPIO descriptors are used + - x86/pkeys: Manually set X86_FEATURE_OSPKE to preserve existing changes + - s390/pci: Fix unexpected write combine on resource + - s390/mm: fix panic in gup_fast on large pud + - dmaengine: imx-sdma: fix context cache + - dmaengine: imx-sdma: Fix the event id check to include RX event for UART6 + - dmaengine: tegra-apb: Fix use-after-free + - dmaengine: tegra-apb: Prevent race conditions of tasklet vs free list + - dm integrity: fix recalculation when moving from journal mode to bitmap mode + - dm integrity: fix a deadlock due to offloading to an incorrect workqueue + - dm integrity: fix invalid table returned due to argument count mismatch + - dm cache: fix a crash due to incorrect work item cancelling + - dm: report suspended device during destroy + - dm writecache: verify watermark during resume + - dm zoned: Fix reference counter initial value of chunk works + - dm: fix congested_fn for request-based device + - arm64: dts: meson-sm1-sei610: add missing interrupt-names + - ARM: dts: ls1021a: Restore MDIO compatible to gianfar + - spi: bcm63xx-hsspi: Really keep pll clk enabled + - drm/virtio: make resource id workaround runtime switchable. + - drm/virtio: fix resource id creation race + - ASoC: topology: Fix memleak in soc_tplg_link_elems_load() + - ASoC: topology: Fix memleak in soc_tplg_manifest_load() + - ASoC: SOF: Fix snd_sof_ipc_stream_posn() + - ASoC: intel: skl: Fix pin debug prints + - ASoC: intel: skl: Fix possible buffer overflow in debug outputs + - powerpc: define helpers to get L1 icache sizes + - powerpc: Convert flush_icache_range & friends to C + - powerpc/mm: Fix missing KUAP disable in flush_coherent_icache() + - ASoC: pcm: Fix possible buffer overflow in dpcm state sysfs output + - ASoC: pcm512x: Fix unbalanced regulator enable call in probe error path + - ASoC: Intel: Skylake: Fix available clock counter incrementation + - ASoC: dapm: Correct DAPM handling of active widgets during shutdown + - spi: atmel-quadspi: fix possible MMIO window size overrun + - drm/panfrost: Don't try to map on error faults + - drm: kirin: Revert "Fix for hikey620 display offset problem" + - drm/sun4i: Add separate DE3 VI layer formats + - drm/sun4i: Fix DE2 VI layer format support + - drm/sun4i: de2/de3: Remove unsupported VI layer formats + - drm/i915: Program MBUS with rmw during initialization + - drm/i915/selftests: Fix return in assert_mmap_offset() + - phy: mapphone-mdm6600: Fix timeouts by adding wake-up handling + - phy: mapphone-mdm6600: Fix write timeouts with shorter GPIO toggle interval + - ARM: dts: imx6: phycore-som: fix emmc supply + - arm64: dts: imx8qxp-mek: Remove unexisting Ethernet PHY + - firmware: imx: misc: Align imx sc msg structs to 4 + - firmware: imx: scu-pd: Align imx sc msg structs to 4 + - firmware: imx: Align imx_sc_msg_req_cpu_start to 4 + - soc: imx-scu: Align imx sc msg structs to 4 + - Revert "RDMA/cma: Simplify rdma_resolve_addr() error flow" + - RDMA/rw: Fix error flow during RDMA context initialization + - RDMA/nldev: Fix crash when set a QP to a new counter but QPN is missing + - RDMA/siw: Fix failure handling during device creation + - RDMA/iwcm: Fix iwcm work deallocation + - RDMA/core: Fix protection fault in ib_mr_pool_destroy + - regulator: stm32-vrefbuf: fix a possible overshoot when re-enabling + - RMDA/cm: Fix missing ib_cm_destroy_id() in ib_cm_insert_listen() + - IB/hfi1, qib: Ensure RCU is locked when accessing list + - ARM: imx: build v7_cpu_resume() unconditionally + - ARM: dts: am437x-idk-evm: Fix incorrect OPP node names + - ARM: dts: dra7xx-clocks: Fixup IPU1 mux clock parent source + - ARM: dts: imx7-colibri: Fix frequency for sd/mmc + - hwmon: (adt7462) Fix an error return in ADT7462_REG_VOLT() + - dma-buf: free dmabuf->name in dma_buf_release() + - dmaengine: coh901318: Fix a double lock bug in dma_tc_handle() + - arm64: dts: meson: fix gxm-khadas-vim2 wifi + - bus: ti-sysc: Fix 1-wire reset quirk + - EDAC/synopsys: Do not print an error with back-to-back snprintf() calls + - powerpc: fix hardware PMU exception bug on PowerVM compatibility mode + systems + - efi/x86: Align GUIDs to their size in the mixed mode runtime wrapper + - efi/x86: Handle by-ref arguments covering multiple pages in mixed mode + - efi: READ_ONCE rng seed size before munmap + - block, bfq: get a ref to a group when adding it to a service tree + - block, bfq: remove ifdefs from around gets/puts of bfq groups + - csky: Implement copy_thread_tls + - drm/virtio: module_param_named() requires linux/moduleparam.h + - Linux 5.4.25 + * Miscellaneous Ubuntu changes + - hio -- remove duplicated MODULE_DEVICE_TABLE declaration + - [Config] Add initial riscv64 config + - [Config] Bring riscv64 in line with other arches + - [Packaging] Add riscv64 arch support + - [Packaging] Add initial riscv64 abi + - [Config] updateconfigs for riscv64 + - [Config] Update annotations for riscv64 + - SAUCE: r8169: disable ASPM L1.1 + - update wireguard dkms package version + - [Config] garbage collect PCIEASPM_DEBUG + - [Config] gcc version updateconfigs + * Miscellaneous upstream changes + - Revert "UBUNTU: SAUCE: platform/x86: dell-uart-backlight: move retry block" + - RISC-V: Do not invoke SBI call if cpumask is empty + - RISC-V: Issue a local tlbflush if possible. + - RISC-V: Issue a tlb page flush if possible + - riscv: add support for SECCOMP and SECCOMP_FILTER + - riscv: reject invalid syscalls below -1 + - mtd: spi-nor: Add support for is25wp256 + - PCI/ASPM: Remove PCIEASPM_DEBUG Kconfig option and related code + + -- Paolo Pisati Tue, 24 Mar 2020 15:30:05 +0100 + +linux-azure (5.4.0-1006.6) focal; urgency=medium + + * focal/linux-azure: 5.4.0-1006.6 -proposed tracker (LP: #1866484) + + * Packaging resync (LP: #1786013) + - [Packaging] update helper scripts + + * Miscellaneous Ubuntu changes + - [Config] Update configs for 5.4 + + [ Ubuntu: 5.4.0-18.22 ] + + * focal/linux: 5.4.0-18.22 -proposed tracker (LP: #1866488) + * Packaging resync (LP: #1786013) + - [Packaging] resync getabis + - [Packaging] update helper scripts + * Add sysfs attribute to show remapped NVMe (LP: #1863621) + - SAUCE: ata: ahci: Add sysfs attribute to show remapped NVMe device count + * [20.04 FEAT] Compression improvements in Linux kernel (LP: #1830208) + - lib/zlib: add s390 hardware support for kernel zlib_deflate + - s390/boot: rename HEAP_SIZE due to name collision + - lib/zlib: add s390 hardware support for kernel zlib_inflate + - s390/boot: add dfltcc= kernel command line parameter + - lib/zlib: add zlib_deflate_dfltcc_enabled() function + - btrfs: use larger zlib buffer for s390 hardware compression + - [Config] Introducing s390x specific kernel config option CONFIG_ZLIB_DFLTCC + * [UBUNTU 20.04] s390x/pci: increase CONFIG_PCI_NR_FUNCTIONS to 512 in kernel + config (LP: #1866056) + - [Config] Increase CONFIG_PCI_NR_FUNCTIONS from 64 to 512 starting with focal + on s390x + * CONFIG_IP_MROUTE_MULTIPLE_TABLES is not set (LP: #1865332) + - [Config] CONFIG_IP_MROUTE_MULTIPLE_TABLES=y + * Dell XPS 13 9300 Intel 1650S wifi [34f0:1651] fails to load firmware + (LP: #1865962) + - iwlwifi: remove IWL_DEVICE_22560/IWL_DEVICE_FAMILY_22560 + - iwlwifi: 22000: fix some indentation + - iwlwifi: pcie: rx: use rxq queue_size instead of constant + - iwlwifi: allocate more receive buffers for HE devices + - iwlwifi: remove some outdated iwl22000 configurations + - iwlwifi: assume the driver_data is a trans_cfg, but allow full cfg + * [FOCAL][REGRESSION] Intel Gen 9 brightness cannot be controlled + (LP: #1861521) + - Revert "USUNTU: SAUCE: drm/i915: Force DPCD backlight mode on Dell Precision + 4K sku" + - Revert "UBUNTU: SAUCE: drm/i915: Force DPCD backlight mode on X1 Extreme 2nd + Gen 4K AMOLED panel" + - SAUCE: drm/dp: Introduce EDID-based quirks + - SAUCE: drm/i915: Force DPCD backlight mode on X1 Extreme 2nd Gen 4K AMOLED + panel + - SAUCE: drm/i915: Force DPCD backlight mode for some Dell CML 2020 panels + * [20.04 FEAT] Enable proper kprobes on ftrace support (LP: #1865858) + - s390/ftrace: save traced function caller + - s390: support KPROBES_ON_FTRACE + * alsa/sof: load different firmware on different platforms (LP: #1857409) + - ASoC: SOF: Intel: hda: use fallback for firmware name + - ASoC: Intel: acpi-match: split CNL tables in three + - ASoC: SOF: Intel: Fix CFL and CML FW nocodec binary names. + * [UBUNTU 20.04] Enable CONFIG_NET_SWITCHDEV in kernel config for s390x + starting with focal (LP: #1865452) + - [Config] Enable CONFIG_NET_SWITCHDEV in kernel config for s390x starting + with focal + * Focal update: v5.4.24 upstream stable release (LP: #1866333) + - io_uring: grab ->fs as part of async offload + - EDAC: skx_common: downgrade message importance on missing PCI device + - net: dsa: b53: Ensure the default VID is untagged + - net: fib_rules: Correctly set table field when table number exceeds 8 bits + - net: macb: ensure interface is not suspended on at91rm9200 + - net: mscc: fix in frame extraction + - net: phy: restore mdio regs in the iproc mdio driver + - net: sched: correct flower port blocking + - net/tls: Fix to avoid gettig invalid tls record + - nfc: pn544: Fix occasional HW initialization failure + - qede: Fix race between rdma destroy workqueue and link change event + - Revert "net: dev: introduce support for sch BYPASS for lockless qdisc" + - udp: rehash on disconnect + - sctp: move the format error check out of __sctp_sf_do_9_1_abort + - bnxt_en: Improve device shutdown method. + - bnxt_en: Issue PCIe FLR in kdump kernel to cleanup pending DMAs. + - bonding: add missing netdev_update_lockdep_key() + - net: export netdev_next_lower_dev_rcu() + - bonding: fix lockdep warning in bond_get_stats() + - ipv6: Fix route replacement with dev-only route + - ipv6: Fix nlmsg_flags when splitting a multipath route + - ipmi:ssif: Handle a possible NULL pointer reference + - drm/msm: Set dma maximum segment size for mdss + - sched/core: Don't skip remote tick for idle CPUs + - timers/nohz: Update NOHZ load in remote tick + - sched/fair: Prevent unlimited runtime on throttled group + - dax: pass NOWAIT flag to iomap_apply + - mac80211: consider more elements in parsing CRC + - cfg80211: check wiphy driver existence for drvinfo report + - s390/zcrypt: fix card and queue total counter wrap + - qmi_wwan: re-add DW5821e pre-production variant + - qmi_wwan: unconditionally reject 2 ep interfaces + - NFSv4: Fix races between open and dentry revalidation + - perf/smmuv3: Use platform_get_irq_optional() for wired interrupt + - perf/x86/intel: Add Elkhart Lake support + - perf/x86/cstate: Add Tremont support + - perf/x86/msr: Add Tremont support + - ceph: do not execute direct write in parallel if O_APPEND is specified + - ARM: dts: sti: fixup sound frame-inversion for stihxxx-b2120.dtsi + - drm/amd/display: Do not set optimized_require to false after plane disable + - RDMA/siw: Remove unwanted WARN_ON in siw_cm_llp_data_ready() + - drm/amd/display: Check engine is not NULL before acquiring + - drm/amd/display: Limit minimum DPPCLK to 100MHz. + - drm/amd/display: Add initialitions for PLL2 clock source + - amdgpu: Prevent build errors regarding soft/hard-float FP ABI tags + - soc/tegra: fuse: Fix build with Tegra194 configuration + - i40e: Fix the conditional for i40e_vc_validate_vqs_bitmaps + - net: ena: fix potential crash when rxfh key is NULL + - net: ena: fix uses of round_jiffies() + - net: ena: add missing ethtool TX timestamping indication + - net: ena: fix incorrect default RSS key + - net: ena: rss: do not allocate key when not supported + - net: ena: rss: fix failure to get indirection table + - net: ena: rss: store hash function as values and not bits + - net: ena: fix incorrectly saving queue numbers when setting RSS indirection + table + - net: ena: fix corruption of dev_idx_to_host_tbl + - net: ena: ethtool: use correct value for crc32 hash + - net: ena: ena-com.c: prevent NULL pointer dereference + - ice: update Unit Load Status bitmask to check after reset + - cifs: Fix mode output in debugging statements + - cfg80211: add missing policy for NL80211_ATTR_STATUS_CODE + - mac80211: fix wrong 160/80+80 MHz setting + - nvme/tcp: fix bug on double requeue when send fails + - nvme: prevent warning triggered by nvme_stop_keep_alive + - nvme/pci: move cqe check after device shutdown + - ext4: potential crash on allocation error in ext4_alloc_flex_bg_array() + - audit: fix error handling in audit_data_to_entry() + - audit: always check the netlink payload length in audit_receive_msg() + - ACPICA: Introduce ACPI_ACCESS_BYTE_WIDTH() macro + - ACPI: watchdog: Fix gas->access_width usage + - KVM: VMX: check descriptor table exits on instruction emulation + - HID: ite: Only bind to keyboard USB interface on Acer SW5-012 keyboard dock + - HID: core: fix off-by-one memset in hid_report_raw_event() + - HID: core: increase HID report buffer size to 8KiB + - drm/amdgpu: Drop DRIVER_USE_AGP + - drm/radeon: Inline drm_get_pci_dev + - macintosh: therm_windtunnel: fix regression when instantiating devices + - tracing: Disable trace_printk() on post poned tests + - Revert "PM / devfreq: Modify the device name as devfreq(X) for sysfs" + - amdgpu/gmc_v9: save/restore sdpif regs during S3 + - cpufreq: Fix policy initialization for internal governor drivers + - io_uring: fix 32-bit compatability with sendmsg/recvmsg + - netfilter: ipset: Fix "INFO: rcu detected stall in hash_xxx" reports + - net/smc: transfer fasync_list in case of fallback + - vhost: Check docket sk_family instead of call getname + - netfilter: ipset: Fix forceadd evaluation path + - netfilter: xt_hashlimit: reduce hashlimit_mutex scope for htable_put() + - HID: alps: Fix an error handling path in 'alps_input_configured()' + - HID: hiddev: Fix race in in hiddev_disconnect() + - MIPS: VPE: Fix a double free and a memory leak in 'release_vpe()' + - i2c: altera: Fix potential integer overflow + - i2c: jz4780: silence log flood on txabrt + - drm/i915/gvt: Fix orphan vgpu dmabuf_objs' lifetime + - drm/i915/gvt: Separate display reset from ALL_ENGINES reset + - nl80211: fix potential leak in AP start + - mac80211: Remove a redundant mutex unlock + - kbuild: fix DT binding schema rule to detect command line changes + - hv_netvsc: Fix unwanted wakeup in netvsc_attach() + - usb: charger: assign specific number for enum value + - nvme-pci: Hold cq_poll_lock while completing CQEs + - s390/qeth: vnicc Fix EOPNOTSUPP precedence + - net: netlink: cap max groups which will be considered in netlink_bind() + - net: atlantic: fix use after free kasan warn + - net: atlantic: fix potential error handling + - net: atlantic: fix out of range usage of active_vlans array + - net/smc: no peer ID in CLC decline for SMCD + - net: ena: make ena rxfh support ETH_RSS_HASH_NO_CHANGE + - selftests: Install settings files to fix TIMEOUT failures + - kbuild: remove header compile test + - kbuild: move headers_check rule to usr/include/Makefile + - kbuild: remove unneeded variable, single-all + - kbuild: make single target builds even faster + - namei: only return -ECHILD from follow_dotdot_rcu() + - mwifiex: drop most magic numbers from mwifiex_process_tdls_action_frame() + - mwifiex: delete unused mwifiex_get_intf_num() + - KVM: SVM: Override default MMIO mask if memory encryption is enabled + - KVM: Check for a bad hva before dropping into the ghc slow path + - sched/fair: Optimize select_idle_cpu + - f2fs: fix to add swap extent correctly + - RDMA/hns: Simplify the calculation and usage of wqe idx for post verbs + - RDMA/hns: Bugfix for posting a wqe with sge + - drivers: net: xgene: Fix the order of the arguments of + 'alloc_etherdev_mqs()' + - ima: ima/lsm policy rule loading logic bug fixes + - kprobes: Set unoptimized flag after unoptimizing code + - lib/vdso: Make __arch_update_vdso_data() logic understandable + - lib/vdso: Update coarse timekeeper unconditionally + - pwm: omap-dmtimer: put_device() after of_find_device_by_node() + - perf hists browser: Restore ESC as "Zoom out" of DSO/thread/etc + - perf ui gtk: Add missing zalloc object + - x86/resctrl: Check monitoring static key in the MBM overflow handler + - KVM: x86: Remove spurious kvm_mmu_unload() from vcpu destruction path + - KVM: x86: Remove spurious clearing of async #PF MSR + - rcu: Allow only one expedited GP to run concurrently with wakeups + - ubifs: Fix ino_t format warnings in orphan_delete() + - thermal: db8500: Depromote debug print + - thermal: brcmstb_thermal: Do not use DT coefficients + - netfilter: nft_tunnel: no need to call htons() when dumping ports + - netfilter: nf_flowtable: fix documentation + - bus: tegra-aconnect: Remove PM_CLK dependency + - xfs: clear kernel only flags in XFS_IOC_ATTRMULTI_BY_HANDLE + - locking/lockdep: Fix lockdep_stats indentation problem + - mm/debug.c: always print flags in dump_page() + - mm/gup: allow FOLL_FORCE for get_user_pages_fast() + - mm/huge_memory.c: use head to check huge zero page + - mm, thp: fix defrag setting if newline is not used + - kvm: nVMX: VMWRITE checks VMCS-link pointer before VMCS field + - kvm: nVMX: VMWRITE checks unsupported field before read-only field + - blktrace: Protect q->blk_trace with RCU + - Linux 5.4.24 + * Focal update: v5.4.23 upstream stable release (LP: #1866165) + - iommu/qcom: Fix bogus detach logic + - ALSA: hda: Use scnprintf() for printing texts for sysfs/procfs + - ALSA: hda/realtek - Apply quirk for MSI GP63, too + - ALSA: hda/realtek - Apply quirk for yet another MSI laptop + - ASoC: codec2codec: avoid invalid/double-free of pcm runtime + - ASoC: sun8i-codec: Fix setting DAI data format + - tpm: Initialize crypto_id of allocated_banks to HASH_ALGO__LAST + - ecryptfs: fix a memory leak bug in parse_tag_1_packet() + - ecryptfs: fix a memory leak bug in ecryptfs_init_messaging() + - btrfs: handle logged extent failure properly + - thunderbolt: Prevent crash if non-active NVMem file is read + - USB: misc: iowarrior: add support for 2 OEMed devices + - USB: misc: iowarrior: add support for the 28 and 28L devices + - USB: misc: iowarrior: add support for the 100 device + - e1000e: Use rtnl_lock to prevent race conditions between net and pci/pm + - floppy: check FDC index for errors before assigning it + - vt: fix scrollback flushing on background consoles + - vt: selection, handle pending signals in paste_selection + - vt: vt_ioctl: fix race in VT_RESIZEX + - staging: android: ashmem: Disallow ashmem memory from being remapped + - staging: vt6656: fix sign of rx_dbm to bb_pre_ed_rssi. + - xhci: Force Maximum Packet size for Full-speed bulk devices to valid range. + - xhci: fix runtime pm enabling for quirky Intel hosts + - xhci: apply XHCI_PME_STUCK_QUIRK to Intel Comet Lake platforms + - xhci: Fix memory leak when caching protocol extended capability PSI tables - + take 2 + - usb: host: xhci: update event ring dequeue pointer on purpose + - USB: core: add endpoint-blacklist quirk + - USB: quirks: blacklist duplicate ep on Sound Devices USBPre2 + - usb: uas: fix a plug & unplug racing + - USB: Fix novation SourceControl XL after suspend + - USB: hub: Don't record a connect-change event during reset-resume + - USB: hub: Fix the broken detection of USB3 device in SMSC hub + - usb: dwc2: Fix SET/CLEAR_FEATURE and GET_STATUS flows + - usb: dwc3: gadget: Check for IOC/LST bit in TRB->ctrl fields + - usb: dwc3: debug: fix string position formatting mixup with ret and len + - scsi: Revert "target/core: Inline transport_lun_remove_cmd()" + - staging: rtl8188eu: Fix potential security hole + - staging: rtl8188eu: Fix potential overuse of kernel memory + - staging: rtl8723bs: Fix potential security hole + - staging: rtl8723bs: Fix potential overuse of kernel memory + - drm/panfrost: perfcnt: Reserve/use the AS attached to the perfcnt MMU + context + - powerpc/8xx: Fix clearing of bits 20-23 in ITLB miss + - powerpc/eeh: Fix deadlock handling dead PHB + - powerpc/tm: Fix clearing MSR[TS] in current when reclaiming on signal + delivery + - powerpc/entry: Fix an #if which should be an #ifdef in entry_32.S + - powerpc/hugetlb: Fix 512k hugepages on 8xx with 16k page size + - powerpc/hugetlb: Fix 8M hugepages on 8xx + - arm64: memory: Add missing brackets to untagged_addr() macro + - jbd2: fix ocfs2 corrupt when clearing block group bits + - x86/ima: use correct identifier for SetupMode variable + - x86/mce/amd: Publish the bank pointer only after setup has succeeded + - x86/mce/amd: Fix kobject lifetime + - x86/cpu/amd: Enable the fixed Instructions Retired counter IRPERF + - serial: 8250: Check UPF_IRQ_SHARED in advance + - tty/serial: atmel: manage shutdown in case of RS485 or ISO7816 mode + - tty: serial: imx: setup the correct sg entry for tx dma + - tty: serial: qcom_geni_serial: Fix RX cancel command failure + - serdev: ttyport: restore client ops on deregistration + - MAINTAINERS: Update drm/i915 bug filing URL + - ACPI: PM: s2idle: Check fixed wakeup events in acpi_s2idle_wake() + - mm/memcontrol.c: lost css_put in memcg_expand_shrinker_maps() + - nvme-multipath: Fix memory leak with ana_log_buf + - genirq/irqdomain: Make sure all irq domain flags are distinct + - mm/vmscan.c: don't round up scan size for online memory cgroup + - mm/sparsemem: pfn_to_page is not valid yet on SPARSEMEM + - lib/stackdepot.c: fix global out-of-bounds in stack_slabs + - mm: Avoid creating virtual address aliases in brk()/mmap()/mremap() + - drm/amdgpu/soc15: fix xclk for raven + - drm/amdgpu/gfx9: disable gfxoff when reading rlc clock + - drm/amdgpu/gfx10: disable gfxoff when reading rlc clock + - drm/nouveau/kms/gv100-: Re-set LUT after clearing for modesets + - drm/i915: Wean off drm_pci_alloc/drm_pci_free + - drm/i915: Update drm/i915 bug filing URL + - sched/psi: Fix OOB write when writing 0 bytes to PSI files + - KVM: nVMX: Don't emulate instructions in guest mode + - KVM: x86: don't notify userspace IOAPIC on edge-triggered interrupt EOI + - ext4: fix a data race in EXT4_I(inode)->i_disksize + - ext4: add cond_resched() to __ext4_find_entry() + - ext4: fix potential race between online resizing and write operations + - ext4: fix potential race between s_group_info online resizing and access + - ext4: fix potential race between s_flex_groups online resizing and access + - ext4: fix mount failure with quota configured as module + - ext4: rename s_journal_flag_rwsem to s_writepages_rwsem + - ext4: fix race between writepages and enabling EXT4_EXTENTS_FL + - KVM: nVMX: Refactor IO bitmap checks into helper function + - KVM: nVMX: Check IO instruction VM-exit conditions + - KVM: nVMX: clear PIN_BASED_POSTED_INTR from nested pinbased_ctls only when + apicv is globally disabled + - KVM: nVMX: handle nested posted interrupts when apicv is disabled for L1 + - KVM: apic: avoid calculating pending eoi from an uninitialized val + - btrfs: destroy qgroup extent records on transaction abort + - btrfs: fix bytes_may_use underflow in prealloc error condtition + - btrfs: reset fs_root to NULL on error in open_ctree + - btrfs: do not check delayed items are empty for single transaction cleanup + - Btrfs: fix btrfs_wait_ordered_range() so that it waits for all ordered + extents + - Btrfs: fix race between shrinking truncate and fiemap + - btrfs: don't set path->leave_spinning for truncate + - Btrfs: fix deadlock during fast fsync when logging prealloc extents beyond + eof + - Revert "dmaengine: imx-sdma: Fix memory leak" + - drm/i915/gvt: more locking for ppgtt mm LRU list + - drm/bridge: tc358767: fix poll timeouts + - drm/i915/gt: Protect defer_request() from new waiters + - drm/msm/dpu: fix BGR565 vs RGB565 confusion + - scsi: Revert "RDMA/isert: Fix a recently introduced regression related to + logout" + - scsi: Revert "target: iscsi: Wait for all commands to finish before freeing + a session" + - usb: gadget: composite: Fix bMaxPower for SuperSpeedPlus + - usb: dwc2: Fix in ISOC request length checking + - staging: rtl8723bs: fix copy of overlapping memory + - staging: greybus: use after free in gb_audio_manager_remove_all() + - ASoC: atmel: fix atmel_ssc_set_audio link failure + - ASoC: fsl_sai: Fix exiting path on probing failure + - ecryptfs: replace BUG_ON with error handling code + - iommu/vt-d: Fix compile warning from intel-svm.h + - crypto: rename sm3-256 to sm3 in hash_algo_name + - genirq/proc: Reject invalid affinity masks (again) + - bpf, offload: Replace bitwise AND by logical AND in + bpf_prog_offload_info_fill + - arm64: lse: Fix LSE atomics with LLVM + - io_uring: fix __io_iopoll_check deadlock in io_sq_thread + - ALSA: rawmidi: Avoid bit fields for state flags + - ALSA: seq: Avoid concurrent access to queue flags + - ALSA: seq: Fix concurrent access to queue current tick/time + - netfilter: xt_hashlimit: limit the max size of hashtable + - rxrpc: Fix call RCU cleanup using non-bh-safe locks + - io_uring: prevent sq_thread from spinning when it should stop + - ata: ahci: Add shutdown to freeze hardware resources of ahci + - xen: Enable interrupts when calling _cond_resched() + - net/mlx5e: Reset RQ doorbell counter before moving RQ state from RST to RDY + - net/mlx5: Fix sleep while atomic in mlx5_eswitch_get_vepa + - net/mlx5e: Fix crash in recovery flow without devlink reporter + - s390/kaslr: Fix casts in get_random + - s390/mm: Explicitly compare PAGE_DEFAULT_KEY against zero in + storage_key_init_range + - bpf: Selftests build error in sockmap_basic.c + - ASoC: SOF: Intel: hda: Add iDisp4 DAI + - Linux 5.4.23 + * Miscellaneous Ubuntu changes + - SAUCE: selftests/net -- disable timeout + - SAUCE: selftests/net -- disable l2tp.sh test + - SAUCE: selftests/ftrace: Use printf instead of echo in kprobe syntax error + tests + - SAUCE: selftests/powerpc -- Disable timeout for benchmark and tm tests + - SAUCE: selftests/ftrace: Escape additional strings in kprobe syntax error + tests + - SAUCE: Revert "UBUNTU: SAUCE: blk/core: Gracefully handle unset + make_request_fn" + - [Packaging] prevent duplicated entries in modules.ignore + - update dkms package versions + + [ Ubuntu: 5.4.0-17.21 ] + + * focal/linux: 5.4.0-17.20 -proposed tracker (LP: #1865025) + * Packaging resync (LP: #1786013) + - [Packaging] update helper scripts + * Miscellaneous Ubuntu changes + - SAUCE: drm/i915/execlists: fix off by one in execlists_update_context() + + -- Andrea Righi Mon, 09 Mar 2020 17:05:02 +0100 + +linux-azure (5.4.0-1005.5) focal; urgency=medium + + * focal/linux-azure: 5.4.0-1005.5 -proposed tracker (LP: #1865021) + + * Packaging resync (LP: #1786013) + - [Packaging] update helper scripts + + [ Ubuntu: 5.4.0-17.20 ] + + * focal/linux: 5.4.0-17.20 -proposed tracker (LP: #1865025) + * Packaging resync (LP: #1786013) + - [Packaging] update helper scripts + * Miscellaneous Ubuntu changes + - SAUCE: drm/i915/execlists: fix off by one in execlists_update_context() + + -- Seth Forshee Thu, 27 Feb 2020 14:55:20 -0600 + +linux-azure (5.4.0-1004.4) focal; urgency=medium + + * focal/linux-azure: 5.4.0-1004.4 -proposed tracker (LP: #1864884) + + [ Ubuntu: 5.4.0-16.19 ] + + * focal/linux: 5.4.0-16.19 -proposed tracker (LP: #1864889) + * system hang: i915 Resetting rcs0 for hang on rcs0 (LP: #1861395) + - drm/i915/execlists: Always force a context reload when rewinding RING_TAIL + * nsleep-lat / set-timer-lat / inconsistency-check / raw_skew from timer in + ubuntu_kernel_selftests timeout on 5.3 / 5.4 (LP: #1864626) + - selftests/timers: Turn off timeout setting + * [sfc-0121]enable the HiSilicon v3xx SFC driver (LP: #1860401) + - spi: Add HiSilicon v3xx SPI NOR flash controller driver + - MAINTAINERS: Add a maintainer for the HiSilicon v3xx SFC driver + - [Config] CONFIG_SPI_HISI_SFC_V3XX=m + * [hns3-0217]sync mainline kernel 5.6rc1 hns3 patchset into ubuntu HWE kernel + branch (LP: #1863575) + - net: hns3: add management table after IMP reset + - net: hns3: fix VF bandwidth does not take effect in some case + - net: hns3: fix a copying IPv6 address error in hclge_fd_get_flow_tuples() + * [hns3-0111]sync mainline kernel 5.5rc6 hns3 patchset into ubuntu HWE kernel + branch Edit (LP: #1859261) + - net: hns3: schedule hclgevf_service by using delayed workqueue + - net: hns3: remove mailbox and reset work in hclge_main + - net: hns3: remove unnecessary work in hclgevf_main + - net: hns3: allocate WQ with WQ_MEM_RECLAIM flag + - net: hns3: do not schedule the periodic task when reset fail + - net: hns3: check FE bit before calling hns3_add_frag() + - net: hns3: remove useless mutex vport_cfg_mutex in the struct hclge_dev + - net: hns3: optimization for CMDQ uninitialization + - net: hns3: get FD rules location before dump in debugfs + - net: hns3: implement ndo_features_check ops for hns3 driver + - net: hns3: add some VF VLAN information for command "ip link show" + - net: hns3: add a log for getting chain failure in + hns3_nic_uninit_vector_data() + - net: hns3: only print misc interrupt status when handling fails + - net: hns3: add trace event support for HNS3 driver + - net: hns3: re-organize vector handle + - net: hns3: modify the IRQ name of TQP vector + - net: hns3: modify an unsuitable log in hclge_map_ring_to_vector() + - net: hns3: modify the IRQ name of misc vectors + - net: hns3: add protection when get SFP speed as 0 + - net: hns3: replace an unsuitable variable type in + hclge_inform_reset_assert_to_vf() + - net: hns3: modify an unsuitable reset level for hardware error + - net: hns3: split hclge_reset() into preparing and rebuilding part + - net: hns3: split hclgevf_reset() into preparing and rebuilding part + - net: hns3: refactor the precedure of PF FLR + - net: hns3: refactor the procedure of VF FLR + - net: hns3: enlarge HCLGE_RESET_WAIT_CNT + - net: hns3: modify hclge_func_reset_sync_vf()'s return type to void + - net: hns3: refactor the notification scheme of PF reset + * alsa/hda/realtek: fix a mute led regression on Lenovo X1 Carbon + (LP: #1864576) + - SAUCE: ALSA: hda/realtek - Fix a regression for mute led on Lenovo Carbon X1 + * ipc/sem.c : process loops infinitely in exit_sem() (LP: #1858834) + - Revert "ipc, sem: remove uneeded sem_undo_list lock usage in exit_sem()" + * r8152 init may take up to 40 seconds at initialization with Dell WD19/WD19DC + during hotplug (LP: #1864284) + - UBUNTU SAUCE: r8151: check disconnect status after long sleep + * Update kernel options CONFIG_NR_CPUS and CONFIG_NUMA_EMU for focal + (LP: #1864198) + - Ubuntu: [Config] Update kernel options CONFIG_NR_CPUS and CONFIG_NUMA_EMU + * ftrace test in ubuntu_kernel_selftests will timeout randomly (LP: #1864172) + - tracing/selftests: Turn off timeout setting + * Another Dell AIO backlight issue (LP: #1863880) + - SAUCE: platform/x86: dell-uart-backlight: move retry block + * Backport GetFB2 ioctl (LP: #1863874) + - SAUCE: drm: Add getfb2 ioctl + * [20.04] Allow to reset an opencapi adapter (LP: #1862121) + - powerpc/powernv/ioda: Fix ref count for devices with their own PE + - powerpc/powernv/ioda: Protect PE list + - powerpc/powernv/ioda: set up PE on opencapi device when enabling + - powerpc/powernv/ioda: Release opencapi device + - powerpc/powernv/ioda: Find opencapi slot for a device node + - pci/hotplug/pnv-php: Remove erroneous warning + - pci/hotplug/pnv-php: Improve error msg on power state change failure + - pci/hotplug/pnv-php: Register opencapi slots + - pci/hotplug/pnv-php: Relax check when disabling slot + - pci/hotplug/pnv-php: Wrap warnings in macro + - ocxl: Add PCI hotplug dependency to Kconfig + * alsa/asoc: export the number of dmic to userspace to work with the latest + ucm2 (focal) (LP: #1864400) + - ASoC: add control components management + - ASoC: intel/skl/hda - export number of digital microphones via control + components + * alsa/sof: let sof driver work with topology with volume and led control + (focal) (LP: #1864398) + - ASoC: SOF: enable dual control for pga + - AsoC: SOF: refactor control load code + - ASoC: SOF: acpi led support for switch controls + - ASoC: SOF: topology: check errors when parsing LED tokens + * machine doesn't come up after suspend and re-opening the lid (LP: #1861837) + - ASoC: SOF: trace: fix unconditional free in trace release + * 5.3.0-23-generic causes fans to spin when idle (LP: #1853044) + - drm/i915/gt: Close race between engine_park and intel_gt_retire_requests + - drm/i915/gt: Adapt engine_park synchronisation rules for engine_retire + - drm/i915/gt: Schedule request retirement when timeline idles + * Focal update: 5.4.22 upstream stable release (LP: #1864488) + - core: Don't skip generic XDP program execution for cloned SKBs + - enic: prevent waking up stopped tx queues over watchdog reset + - net/smc: fix leak of kernel memory to user space + - net: dsa: tag_qca: Make sure there is headroom for tag + - net/sched: matchall: add missing validation of TCA_MATCHALL_FLAGS + - net/sched: flower: add missing validation of TCA_FLOWER_FLAGS + - drm/gma500: Fixup fbdev stolen size usage evaluation + - ath10k: Fix qmi init error handling + - wil6210: fix break that is never reached because of zero'ing of a retry + counter + - drm/qxl: Complete exception handling in qxl_device_init() + - rcu/nocb: Fix dump_tree hierarchy print always active + - rcu: Fix missed wakeup of exp_wq waiters + - rcu: Fix data-race due to atomic_t copy-by-value + - f2fs: preallocate DIO blocks when forcing buffered_io + - f2fs: call f2fs_balance_fs outside of locked page + - media: meson: add missing allocation failure check on new_buf + - clk: meson: pll: Fix by 0 division in __pll_params_to_rate() + - cpu/hotplug, stop_machine: Fix stop_machine vs hotplug order + - brcmfmac: Fix memory leak in brcmf_p2p_create_p2pdev() + - brcmfmac: Fix use after free in brcmf_sdio_readframes() + - PCI: Fix pci_add_dma_alias() bitmask size + - drm/amd/display: Map ODM memory correctly when doing ODM combine + - leds: pca963x: Fix open-drain initialization + - ext4: fix ext4_dax_read/write inode locking sequence for IOCB_NOWAIT + - ALSA: ctl: allow TLV read operation for callback type of element in locked + case + - gianfar: Fix TX timestamping with a stacked DSA driver + - pinctrl: sh-pfc: sh7264: Fix CAN function GPIOs + - printk: fix exclusive_console replaying + - drm/mipi_dbi: Fix off-by-one bugs in mipi_dbi_blank() + - drm/msm/adreno: fix zap vs no-zap handling + - pxa168fb: Fix the function used to release some memory in an error handling + path + - media: ov5640: Fix check for PLL1 exceeding max allowed rate + - media: i2c: mt9v032: fix enum mbus codes and frame sizes + - media: sun4i-csi: Deal with DRAM offset + - media: sun4i-csi: Fix data sampling polarity handling + - media: sun4i-csi: Fix [HV]sync polarity handling + - clk: at91: sam9x60: fix programmable clock prescaler + - powerpc/powernv/iov: Ensure the pdn for VFs always contains a valid PE + number + - clk: meson: meson8b: make the CCF use the glitch-free mali mux + - gpio: gpio-grgpio: fix possible sleep-in-atomic-context bugs in + grgpio_irq_map/unmap() + - iommu/vt-d: Fix off-by-one in PASID allocation + - x86/fpu: Deactivate FPU state after failure during state load + - char/random: silence a lockdep splat with printk() + - media: sti: bdisp: fix a possible sleep-in-atomic-context bug in + bdisp_device_run() + - kernel/module: Fix memleak in module_add_modinfo_attrs() + - IB/core: Let IB core distribute cache update events + - pinctrl: baytrail: Do not clear IRQ flags on direct-irq enabled pins + - efi/x86: Map the entire EFI vendor string before copying it + - MIPS: Loongson: Fix potential NULL dereference in loongson3_platform_init() + - sparc: Add .exit.data section. + - net: ethernet: ixp4xx: Standard module init + - raid6/test: fix a compilation error + - uio: fix a sleep-in-atomic-context bug in uio_dmem_genirq_irqcontrol() + - drm/amdgpu/sriov: workaround on rev_id for Navi12 under sriov + - spi: fsl-lpspi: fix only one cs-gpio working + - drm/nouveau/nouveau: fix incorrect sizeof on args.src an args.dst + - usb: gadget: udc: fix possible sleep-in-atomic-context bugs in gr_probe() + - usb: dwc2: Fix IN FIFO allocation + - clocksource/drivers/bcm2835_timer: Fix memory leak of timer + - drm/amd/display: Clear state after exiting fixed active VRR state + - kselftest: Minimise dependency of get_size on C library interfaces + - jbd2: clear JBD2_ABORT flag before journal_reset to update log tail info + when load journal + - ext4: fix deadlock allocating bio_post_read_ctx from mempool + - clk: ti: dra7: fix parent for gmac_clkctrl + - x86/sysfb: Fix check for bad VRAM size + - pwm: omap-dmtimer: Simplify error handling + - udf: Allow writing to 'Rewritable' partitions + - dmaengine: fsl-qdma: fix duplicated argument to && + - wan/hdlc_x25: fix skb handling + - powerpc/iov: Move VF pdev fixup into pcibios_fixup_iov() + - tracing: Fix tracing_stat return values in error handling paths + - tracing: Fix very unlikely race of registering two stat tracers + - ARM: 8952/1: Disable kmemleak on XIP kernels + - ext4, jbd2: ensure panic when aborting with zero errno + - ath10k: Correct the DMA direction for management tx buffers + - rtw88: fix rate mask for 1SS chip + - brcmfmac: sdio: Fix OOB interrupt initialization on brcm43362 + - selftests: settings: tests can be in subsubdirs + - rtc: i2c/spi: Avoid inclusion of REGMAP support when not needed + - drm/amd/display: Retrain dongles when SINK_COUNT becomes non-zero + - tracing: Simplify assignment parsing for hist triggers + - nbd: add a flush_workqueue in nbd_start_device + - KVM: s390: ENOTSUPP -> EOPNOTSUPP fixups + - Btrfs: keep pages dirty when using btrfs_writepage_fixup_worker + - drivers/block/zram/zram_drv.c: fix error return codes not being returned in + writeback_store + - block, bfq: do not plug I/O for bfq_queues with no proc refs + - kconfig: fix broken dependency in randconfig-generated .config + - clk: qcom: Don't overwrite 'cfg' in clk_rcg2_dfs_populate_freq() + - clk: qcom: rcg2: Don't crash if our parent can't be found; return an error + - drm/amdkfd: Fix a bug in SDMA RLC queue counting under HWS mode + - bpf, sockhash: Synchronize_rcu before free'ing map + - drm/amdgpu: remove 4 set but not used variable in + amdgpu_atombios_get_connector_info_from_object_table + - ath10k: correct the tlv len of ath10k_wmi_tlv_op_gen_config_pno_start + - drm/amdgpu: Ensure ret is always initialized when using SOC15_WAIT_ON_RREG + - drm/panel: simple: Add Logic PD Type 28 display support + - arm64: dts: rockchip: Fix NanoPC-T4 cooling maps + - modules: lockdep: Suppress suspicious RCU usage warning + - ASoC: intel: sof_rt5682: Add quirk for number of HDMI DAI's + - ASoC: intel: sof_rt5682: Add support for tgl-max98357a-rt5682 + - regulator: rk808: Lower log level on optional GPIOs being not available + - net/wan/fsl_ucc_hdlc: reject muram offsets above 64K + - NFC: port100: Convert cpu_to_le16(le16_to_cpu(E1) + E2) to use + le16_add_cpu(). + - arm64: dts: allwinner: H6: Add PMU mode + - arm64: dts: allwinner: H5: Add PMU node + - arm: dts: allwinner: H3: Add PMU node + - opp: Free static OPPs on errors while adding them + - selinux: ensure we cleanup the internal AVC counters on error in + avc_insert() + - arm64: dts: qcom: msm8996: Disable USB2 PHY suspend by core + - padata: validate cpumask without removed CPU during offline + - clk: imx: Add correct failure handling for clk based helpers + - ARM: exynos_defconfig: Bring back explicitly wanted options + - ARM: dts: imx6: rdu2: Disable WP for USDHC2 and USDHC3 + - ARM: dts: imx6: rdu2: Limit USBH1 to Full Speed + - bus: ti-sysc: Implement quirk handling for CLKDM_NOAUTO + - PCI: iproc: Apply quirk_paxc_bridge() for module as well as built-in + - media: cx23885: Add support for AVerMedia CE310B + - PCI: Add generic quirk for increasing D3hot delay + - PCI: Increase D3 delay for AMD Ryzen5/7 XHCI controllers + - gpu/drm: ingenic: Avoid null pointer deference in plane atomic update + - selftests/net: make so_txtime more robust to timer variance + - media: v4l2-device.h: Explicitly compare grp{id,mask} to zero in v4l2_device + macros + - reiserfs: Fix spurious unlock in reiserfs_fill_super() error handling + - samples/bpf: Set -fno-stack-protector when building BPF programs + - r8169: check that Realtek PHY driver module is loaded + - fore200e: Fix incorrect checks of NULL pointer dereference + - netfilter: nft_tunnel: add the missing ERSPAN_VERSION nla_policy + - ALSA: usx2y: Adjust indentation in snd_usX2Y_hwdep_dsp_status + - PCI: Add nr_devfns parameter to pci_add_dma_alias() + - PCI: Add DMA alias quirk for PLX PEX NTB + - b43legacy: Fix -Wcast-function-type + - ipw2x00: Fix -Wcast-function-type + - iwlegacy: Fix -Wcast-function-type + - rtlwifi: rtl_pci: Fix -Wcast-function-type + - orinoco: avoid assertion in case of NULL pointer + - drm/amdgpu: fix KIQ ring test fail in TDR of SRIOV + - clk: qcom: smd: Add missing bimc clock + - ACPICA: Disassembler: create buffer fields in ACPI_PARSE_LOAD_PASS1 + - nfsd: Clone should commit src file metadata too + - scsi: ufs: Complete pending requests in host reset and restore path + - scsi: aic7xxx: Adjust indentation in ahc_find_syncrate + - crypto: inside-secure - add unspecified HAS_IOMEM dependency + - drm/mediatek: handle events when enabling/disabling crtc + - clk: renesas: rcar-gen3: Allow changing the RPC[D2] clocks + - ARM: dts: r8a7779: Add device node for ARM global timer + - selinux: ensure we cleanup the internal AVC counters on error in + avc_update() + - scsi: lpfc: Fix: Rework setting of fdmi symbolic node name registration + - arm64: dts: qcom: db845c: Enable ath10k 8bit host-cap quirk + - iommu/amd: Check feature support bit before accessing MSI capability + registers + - iommu/amd: Only support x2APIC with IVHD type 11h/40h + - iommu/iova: Silence warnings under memory pressure + - clk: actually call the clock init before any other callback of the clock + - dmaengine: Store module owner in dma_device struct + - dmaengine: imx-sdma: Fix memory leak + - bpf: Print error message for bpftool cgroup show + - net: phy: realtek: add logging for the RGMII TX delay configuration + - crypto: chtls - Fixed memory leak + - x86/vdso: Provide missing include file + - PM / devfreq: exynos-ppmu: Fix excessive stack usage + - PM / devfreq: rk3399_dmc: Add COMPILE_TEST and HAVE_ARM_SMCCC dependency + - drm/fbdev: Fallback to non tiled mode if all tiles not present + - pinctrl: sh-pfc: sh7269: Fix CAN function GPIOs + - reset: uniphier: Add SCSSI reset control for each channel + - ASoC: soc-topology: fix endianness issues + - fbdev: fix numbering of fbcon options + - RDMA/rxe: Fix error type of mmap_offset + - clk: sunxi-ng: add mux and pll notifiers for A64 CPU clock + - ALSA: sh: Fix unused variable warnings + - clk: Use parent node pointer during registration if necessary + - clk: uniphier: Add SCSSI clock gate for each channel + - ALSA: hda/realtek - Apply mic mute LED quirk for Dell E7xx laptops, too + - ALSA: sh: Fix compile warning wrt const + - net: phy: fixed_phy: fix use-after-free when checking link GPIO + - tools lib api fs: Fix gcc9 stringop-truncation compilation error + - vfio/spapr/nvlink2: Skip unpinning pages on error exit + - ASoC: Intel: sof_rt5682: Ignore the speaker amp when there isn't one. + - ACPI: button: Add DMI quirk for Razer Blade Stealth 13 late 2019 lid switch + - iommu/vt-d: Match CPU and IOMMU paging mode + - iommu/vt-d: Avoid sending invalid page response + - drm/amdkfd: Fix permissions of hang_hws + - mlx5: work around high stack usage with gcc + - RDMA/hns: Avoid printing address of mtt page + - drm: remove the newline for CRC source name. + - usb: dwc3: use proper initializers for property entries + - ARM: dts: stm32: Add power-supply for DSI panel on stm32f469-disco + - usbip: Fix unsafe unaligned pointer usage + - udf: Fix free space reporting for metadata and virtual partitions + - drm/mediatek: Add gamma property according to hardware capability + - staging: rtl8188: avoid excessive stack usage + - IB/hfi1: Add software counter for ctxt0 seq drop + - IB/hfi1: Add RcvShortLengthErrCnt to hfi1stats + - soc/tegra: fuse: Correct straps' address for older Tegra124 device trees + - efi/x86: Don't panic or BUG() on non-critical error conditions + - rcu: Use WRITE_ONCE() for assignments to ->pprev for hlist_nulls + - Input: edt-ft5x06 - work around first register access error + - bnxt: Detach page from page pool before sending up the stack + - x86/nmi: Remove irq_work from the long duration NMI handler + - wan: ixp4xx_hss: fix compile-testing on 64-bit + - clocksource: davinci: only enable clockevents once tim34 is initialized + - arm64: dts: rockchip: fix dwmmc clock name for px30 + - arm64: dts: rockchip: add reg property to brcmf sub-nodes + - ARM: dts: rockchip: add reg property to brcmf sub node for + rk3188-bqedison2qc + - ALSA: usb-audio: Add boot quirk for MOTU M Series + - ASoC: atmel: fix build error with CONFIG_SND_ATMEL_SOC_DMA=m + - raid6/test: fix a compilation warning + - tty: synclinkmp: Adjust indentation in several functions + - tty: synclink_gt: Adjust indentation in several functions + - misc: xilinx_sdfec: fix xsdfec_poll()'s return type + - visorbus: fix uninitialized variable access + - driver core: platform: Prevent resouce overflow from causing infinite loops + - driver core: Print device when resources present in really_probe() + - ASoC: SOF: Intel: hda-dai: fix compilation warning in pcm_prepare + - bpf: Return -EBADRQC for invalid map type in __bpf_tx_xdp_map + - vme: bridges: reduce stack usage + - drm/nouveau/secboot/gm20b: initialize pointer in gm20b_secboot_new() + - drm/nouveau/gr/gk20a,gm200-: add terminators to method lists read from fw + - drm/nouveau: Fix copy-paste error in nouveau_fence_wait_uevent_handler + - drm/nouveau/drm/ttm: Remove set but not used variable 'mem' + - drm/nouveau/fault/gv100-: fix memory leak on module unload + - dm thin: don't allow changing data device during thin-pool reload + - gpiolib: Set lockdep class for hierarchical irq domains + - drm/vmwgfx: prevent memory leak in vmw_cmdbuf_res_add + - perf/imx_ddr: Fix cpu hotplug state cleanup + - usb: musb: omap2430: Get rid of musb .set_vbus for omap2430 glue + - kbuild: remove *.tmp file when filechk fails + - iommu/arm-smmu-v3: Use WRITE_ONCE() when changing validity of an STE + - ALSA: usb-audio: unlock on error in probe + - f2fs: set I_LINKABLE early to avoid wrong access by vfs + - f2fs: free sysfs kobject + - scsi: ufs: pass device information to apply_dev_quirks + - scsi: ufs-mediatek: add apply_dev_quirks variant operation + - scsi: iscsi: Don't destroy session if there are outstanding connections + - crypto: essiv - fix AEAD capitalization and preposition use in help text + - ALSA: usb-audio: add implicit fb quirk for MOTU M Series + - RDMA/mlx5: Don't fake udata for kernel path + - arm64: lse: fix LSE atomics with LLVM's integrated assembler + - arm64: fix alternatives with LLVM's integrated assembler + - drm/amd/display: fixup DML dependencies + - EDAC/sifive: Fix return value check in ecc_register() + - KVM: PPC: Remove set but not used variable 'ra', 'rs', 'rt' + - arm64: dts: ti: k3-j721e-main: Add missing power-domains for smmu + - sched/core: Fix size of rq::uclamp initialization + - sched/topology: Assert non-NUMA topology masks don't (partially) overlap + - perf/x86/amd: Constrain Large Increment per Cycle events + - watchdog/softlockup: Enforce that timestamp is valid on boot + - debugobjects: Fix various data races + - ASoC: SOF: Intel: hda: Fix SKL dai count + - regulator: vctrl-regulator: Avoid deadlock getting and setting the voltage + - f2fs: fix memleak of kobject + - x86/mm: Fix NX bit clearing issue in kernel_map_pages_in_pgd + - pwm: omap-dmtimer: Remove PWM chip in .remove before making it unfunctional + - cmd64x: potential buffer overflow in cmd64x_program_timings() + - ide: serverworks: potential overflow in svwks_set_pio_mode() + - pwm: Remove set but not set variable 'pwm' + - btrfs: fix possible NULL-pointer dereference in integrity checks + - btrfs: safely advance counter when looking up bio csums + - btrfs: device stats, log when stats are zeroed + - module: avoid setting info->name early in case we can fall back to + info->mod->name + - remoteproc: Initialize rproc_class before use + - regulator: core: Fix exported symbols to the exported GPL version + - irqchip/mbigen: Set driver .suppress_bind_attrs to avoid remove problems + - ALSA: hda/hdmi - add retry logic to parse_intel_hdmi() + - spi: spi-fsl-qspi: Ensure width is respected in spi-mem operations + - kbuild: use -S instead of -E for precise cc-option test in Kconfig + - objtool: Fix ARCH=x86_64 build error + - x86/decoder: Add TEST opcode to Group3-2 + - s390: adjust -mpacked-stack support check for clang 10 + - s390/ftrace: generate traced function stack frame + - driver core: platform: fix u32 greater or equal to zero comparison + - bpf, btf: Always output invariant hit in pahole DWARF to BTF transform + - ALSA: hda - Add docking station support for Lenovo Thinkpad T420s + - sunrpc: Fix potential leaks in sunrpc_cache_unhash() + - drm/nouveau/mmu: fix comptag memory leak + - powerpc/sriov: Remove VF eeh_dev state when disabling SR-IOV + - media: uvcvideo: Add a quirk to force GEO GC6500 Camera bits-per-pixel value + - btrfs: separate definition of assertion failure handlers + - btrfs: Fix split-brain handling when changing FSID to metadata uuid + - bcache: cached_dev_free needs to put the sb page + - bcache: rework error unwinding in register_bcache + - bcache: fix use-after-free in register_bcache() + - iommu/vt-d: Remove unnecessary WARN_ON_ONCE() + - alarmtimer: Make alarmtimer platform device child of RTC device + - selftests: bpf: Reset global state between reuseport test runs + - jbd2: switch to use jbd2_journal_abort() when failed to submit the commit + record + - jbd2: make sure ESHUTDOWN to be recorded in the journal superblock + - powerpc/pseries/lparcfg: Fix display of Maximum Memory + - selftests/eeh: Bump EEH wait time to 60s + - ARM: 8951/1: Fix Kexec compilation issue. + - ALSA: usb-audio: add quirks for Line6 Helix devices fw>=2.82 + - hostap: Adjust indentation in prism2_hostapd_add_sta + - rtw88: fix potential NULL skb access in TX ISR + - iwlegacy: ensure loop counter addr does not wrap and cause an infinite loop + - cifs: fix unitialized variable poential problem with network I/O cache lock + patch + - cifs: Fix mount options set in automount + - cifs: fix NULL dereference in match_prepath + - bpf: map_seq_next should always increase position index + - powerpc/mm: Don't log user reads to 0xffffffff + - ceph: check availability of mds cluster on mount after wait timeout + - rbd: work around -Wuninitialized warning + - drm/amd/display: do not allocate display_mode_lib unnecessarily + - irqchip/gic-v3: Only provision redistributors that are enabled in ACPI + - drm/nouveau/disp/nv50-: prevent oops when no channel method map provided + - char: hpet: Fix out-of-bounds read bug + - ftrace: fpid_next() should increase position index + - trigger_next should increase position index + - radeon: insert 10ms sleep in dce5_crtc_load_lut + - powerpc: Do not consider weak unresolved symbol relocations as bad + - btrfs: do not do delalloc reservation under page lock + - ocfs2: make local header paths relative to C files + - ocfs2: fix a NULL pointer dereference when call + ocfs2_update_inode_fsync_trans() + - lib/scatterlist.c: adjust indentation in __sg_alloc_table + - reiserfs: prevent NULL pointer dereference in reiserfs_insert_item() + - bcache: fix memory corruption in bch_cache_accounting_clear() + - bcache: explicity type cast in bset_bkey_last() + - bcache: fix incorrect data type usage in btree_flush_write() + - irqchip/gic-v3-its: Reference to its_invall_cmd descriptor when building + INVALL + - nvmet: Pass lockdep expression to RCU lists + - nvme-pci: remove nvmeq->tags + - iwlwifi: mvm: Fix thermal zone registration + - iwlwifi: mvm: Check the sta is not NULL in iwl_mvm_cfg_he_sta() + - asm-generic/tlb: add missing CONFIG symbol + - microblaze: Prevent the overflow of the start + - brd: check and limit max_part par + - drm/amdgpu/smu10: fix smu10_get_clock_by_type_with_latency + - drm/amdgpu/smu10: fix smu10_get_clock_by_type_with_voltage + - NFS: Fix memory leaks + - help_next should increase position index + - i40e: Relax i40e_xsk_wakeup's return value when PF is busy + - cifs: log warning message (once) if out of disk space + - virtio_balloon: prevent pfn array overflow + - fuse: don't overflow LLONG_MAX with end offset + - mlxsw: spectrum_dpipe: Add missing error path + - drm/amdgpu/display: handle multiple numbers of fclks in dcn_calcs.c (v2) + - bcache: properly initialize 'path' and 'err' in register_bcache() + - rtc: Kconfig: select REGMAP_I2C when necessary + - Linux 5.4.22 + * Focal update: 5.4.22 upstream stable release (LP: #1864488) // + CVE-2019-19076. + - Revert "nfp: abm: fix memory leak in nfp_abm_u32_knode_replace" + * Miscellaneous Ubuntu changes + - [Debian] Revert "UBUNTU: [Debian] Update linux source package name in + debian/tests/*" + - SAUCE: selftests: fix undefined lable cleanup build error + - SAUCE: selftests: fix undefined macro RET_IF() build error + - [Packaging] Include modules.builtin.modinfo in linux-modules + - update dkms package versions + - Revert "UBUNTU: [Debian] Update package name in getabis repo list" + * Miscellaneous upstream changes + - libbpf: Extract and generalize CPU mask parsing logic + + -- Seth Forshee Wed, 26 Feb 2020 13:47:15 -0600 + +linux-azure (5.4.0-1003.3) focal; urgency=medium + + * focal/linux-azure: 5.4.0-1003.3 -proposed tracker (LP: #1864081) + + * Integrate Intel SGX driver into linux-azure (LP: #1844245) + - SAUCE: linux-azure: Include Intel SGX driver to the main modules package + + * Miscellaneous Ubuntu changes + - SAUCE: intel_sgx: use mmu_notifier_unregister w/o "no_release" + - [Config] updateconfigs following rebase to 5.4.0-15.18 + + [ Ubuntu: 5.4.0-15.18 ] + + * focal/linux: 5.4.0-15.18 -proposed tracker (LP: #1864085) + * Focal update: v5.4.21 upstream stable release (LP: #1864046) + - Input: synaptics - switch T470s to RMI4 by default + - Input: synaptics - enable SMBus on ThinkPad L470 + - Input: synaptics - remove the LEN0049 dmi id from topbuttonpad list + - ALSA: usb-audio: Fix UAC2/3 effect unit parsing + - ALSA: hda/realtek - Add more codec supported Headset Button + - ALSA: hda/realtek - Fix silent output on MSI-GL73 + - ALSA: usb-audio: Apply sample rate quirk for Audioengine D1 + - ACPI: EC: Fix flushing of pending work + - ACPI: PM: s2idle: Avoid possible race related to the EC GPE + - ACPICA: Introduce acpi_any_gpe_status_set() + - ACPI: PM: s2idle: Prevent spurious SCIs from waking up the system + - ALSA: usb-audio: sound: usb: usb true/false for bool return type + - ALSA: usb-audio: Add clock validity quirk for Denon MC7000/MCX8000 + - ext4: don't assume that mmp_nodename/bdevname have NUL + - ext4: fix support for inode sizes > 1024 bytes + - ext4: fix checksum errors with indexed dirs + - ext4: add cond_resched() to ext4_protect_reserved_inode + - ext4: improve explanation of a mount failure caused by a misconfigured + kernel + - Btrfs: fix race between using extent maps and merging them + - btrfs: ref-verify: fix memory leaks + - btrfs: print message when tree-log replay starts + - btrfs: log message when rw remount is attempted with unclean tree-log + - ARM: npcm: Bring back GPIOLIB support + - gpio: xilinx: Fix bug where the wrong GPIO register is written to + - arm64: ssbs: Fix context-switch when SSBS is present on all CPUs + - xprtrdma: Fix DMA scatter-gather list mapping imbalance + - cifs: make sure we do not overflow the max EA buffer size + - EDAC/sysfs: Remove csrow objects on errors + - EDAC/mc: Fix use-after-free and memleaks during device removal + - KVM: nVMX: Use correct root level for nested EPT shadow page tables + - perf/x86/amd: Add missing L2 misses event spec to AMD Family 17h's event map + - s390/pkey: fix missing length of protected key on return + - s390/uv: Fix handling of length extensions + - drm/vgem: Close use-after-free race in vgem_gem_create + - drm/panfrost: Make sure the shrinker does not reclaim referenced BOs + - bus: moxtet: fix potential stack buffer overflow + - nvme: fix the parameter order for nvme_get_log in nvme_get_fw_slot_info + - drivers: ipmi: fix off-by-one bounds check that leads to a out-of-bounds + write + - IB/mlx5: Return failure when rts2rts_qp_counters_set_id is not supported + - IB/hfi1: Acquire lock to release TID entries when user file is closed + - IB/hfi1: Close window for pq and request coliding + - IB/rdmavt: Reset all QPs when the device is shut down + - IB/umad: Fix kernel crash while unloading ib_umad + - RDMA/core: Fix invalid memory access in spec_filter_size + - RDMA/iw_cxgb4: initiate CLOSE when entering TERM + - RDMA/hfi1: Fix memory leak in _dev_comp_vect_mappings_create + - RDMA/rxe: Fix soft lockup problem due to using tasklets in softirq + - RDMA/core: Fix protection fault in get_pkey_idx_qp_list + - s390/time: Fix clk type in get_tod_clock + - sched/uclamp: Reject negative values in cpu_uclamp_write() + - spmi: pmic-arb: Set lockdep class for hierarchical irq domains + - perf/x86/intel: Fix inaccurate period in context switch for auto-reload + - hwmon: (pmbus/ltc2978) Fix PMBus polling of MFR_COMMON definitions. + - mac80211: fix quiet mode activation in action frames + - cifs: fix mount option display for sec=krb5i + - arm64: dts: fast models: Fix FVP PCI interrupt-map property + - KVM: x86: Mask off reserved bit from #DB exception payload + - perf stat: Don't report a null stalled cycles per insn metric + - NFSv4.1 make cachethis=no for writes + - Revert "drm/sun4i: drv: Allow framebuffer modifiers in mode config" + - jbd2: move the clearing of b_modified flag to the journal_unmap_buffer() + - jbd2: do not clear the BH_Mapped flag when forgetting a metadata buffer + - ext4: choose hardlimit when softlimit is larger than hardlimit in + ext4_statfs_project() + - KVM: x86/mmu: Fix struct guest_walker arrays for 5-level paging + - gpio: add gpiod_toggle_active_low() + - mmc: core: Rework wp-gpio handling + - Linux 5.4.21 + * Fix AMD Stoney Ridge screen flickering under 4K resolution (LP: #1864005) + - iommu/amd: Disable IOMMU on Stoney Ridge systems + * Focal Fossa (20.04) feature request - Enable CONFIG_X86_UV (LP: #1863810) + - [Config] CONFIG_X86_UV=y + * [UBUNTU 20.04] Enable proper reset/recovery of s390x/pci functions in error + state (LP: #1863768) + - s390/pci: Recover handle in clp_set_pci_fn() + - s390/pci: Fix possible deadlock in recover_store() + * [20.04 FEAT] Enhanced handling of secure keys and protected keys + (LP: #1853303) + - s390/zcrypt: enable card/domain autoselect on ep11 cprbs + - s390/zcrypt: ep11 structs rework, export zcrypt_send_ep11_cprb + - s390/zcrypt: add new low level ep11 functions support file + - s390/zcrypt: extend EP11 card and queue sysfs attributes + - s390/pkey/zcrypt: Support EP11 AES secure keys + * [20.04 FEAT] paes self test (LP: #1854948) + - s390/pkey: use memdup_user() to simplify code + - s390/pkey: Add support for key blob with clear key value + - s390/crypto: Rework on paes implementation + - s390/crypto: enable clear key values for paes ciphers + - crypto/testmgr: enable selftests for paes-s390 ciphers + * Sometimes can't adjust brightness on Dell AIO (LP: #1862885) + - SAUCE: platform/x86: dell-uart-backlight: increase retry times + * change the ASoC card name and card longname to meet the requirement of alsa- + lib-1.2.1 (Focal) (LP: #1862712) + - ASoC: improve the DMI long card code in asoc-core + - ASoC: DMI long name - avoid to add board name if matches with product name + - ASoC: intel - fix the card names + * Support Headset Mic on HP cPC (LP: #1862313) + - ALSA: hda/realtek - Add Headset Mic supported for HP cPC + - ALSA: hda/realtek - Fixed one of HP ALC671 platform Headset Mic supported + * [hns3-0205]sync mainline kernel 5.5rc7 hns3 patchset into ubuntu HWE kernel + branch (LP: #1861972) + - net: hns3: replace snprintf with scnprintf in hns3_dbg_cmd_read + - net: hns3: replace snprintf with scnprintf in hns3_update_strings + - net: hns3: limit the error logging in the hns3_clean_tx_ring() + - net: hns3: do not reuse pfmemalloc pages + - net: hns3: set VF's default reset_type to HNAE3_NONE_RESET + - net: hns3: move duplicated macro definition into header + - net: hns3: refine the input parameter 'size' for snprintf() + - net: hns3: rewrite a log in hclge_put_vector() + - net: hns3: delete unnecessary blank line and space for cleanup + - net: hns3: remove redundant print on ENOMEM + * [acc-0205]sync mainline kernel 5.5rc6 acc patchset into ubuntu HWE kernel + branch (LP: #1861976) + - crypto: hisilicon/sec2 - Use atomics instead of __sync + - crypto: hisilicon - still no need to check return value of debugfs_create + functions + - crypto: hisilicon - Update debugfs usage of SEC V2 + - crypto: hisilicon - fix print/comment of SEC V2 + - crypto: hisilicon - Update some names on SEC V2 + - crypto: hisilicon - Update QP resources of SEC V2 + - crypto: hisilicon - Adjust some inner logic + - crypto: hisilicon - Add callback error check + - crypto: hisilicon - Add branch prediction macro + - crypto: hisilicon - redefine skcipher initiation + - crypto: hisilicon - Add aead support on SEC2 + - crypto: hisilicon - Bugfixed tfm leak + - crypto: hisilicon - Fixed some tiny bugs of HPRE + - crypto: hisilicon - adjust hpre_crt_para_get + - crypto: hisilicon - add branch prediction macro + - crypto: hisilicon - fix spelling mistake "disgest" -> "digest" + * [spi-0115]spi: dw: use "smp_mb()" to avoid sending spi data error + (LP: #1859744) + - spi: dw: use "smp_mb()" to avoid sending spi data error + * [tpm-0115]EFI/stub: tpm: enable tpm eventlog function for ARM64 platform + (LP: #1859743) + - efi: libstub/tpm: enable tpm eventlog function for ARM platforms + * Restrict xmon to read-only-mode if kernel is locked down (LP: #1863562) + - powerpc/xmon: Restrict when kernel is locked down + * [CML-H] Add intel_thermal_pch driver support Comet Lake -H (LP: #1853219) + - thermal: intel: intel_pch_thermal: Add Comet Lake (CML) platform support + * Root can lift kernel lockdown via USB/IP (LP: #1861238) + - Revert "UBUNTU: SAUCE: (lockdown) Add a SysRq option to lift kernel + lockdown" + * Dell XPS 13 (7390) Display Flickering - 19.10 (LP: #1849947) + - SAUCE: drm/i915: Disable PSR by default on all platforms + * Focal update: v5.4.20 upstream stable release (LP: #1863589) + - ASoC: pcm: update FE/BE trigger order based on the command + - hv_sock: Remove the accept port restriction + - IB/mlx4: Fix memory leak in add_gid error flow + - IB/srp: Never use immediate data if it is disabled by a user + - IB/mlx4: Fix leak in id_map_find_del + - RDMA/netlink: Do not always generate an ACK for some netlink operations + - RDMA/i40iw: fix a potential NULL pointer dereference + - RDMA/core: Fix locking in ib_uverbs_event_read + - RDMA/uverbs: Verify MR access flags + - RDMA/cma: Fix unbalanced cm_id reference count during address resolve + - RDMA/umem: Fix ib_umem_find_best_pgsz() + - scsi: ufs: Fix ufshcd_probe_hba() reture value in case + ufshcd_scsi_add_wlus() fails + - PCI/IOV: Fix memory leak in pci_iov_add_virtfn() + - ath10k: pci: Only dump ATH10K_MEM_REGION_TYPE_IOREG when safe + - PCI/switchtec: Use dma_set_mask_and_coherent() + - PCI/switchtec: Fix vep_vector_number ioread width + - PCI: tegra: Fix afi_pex2_ctrl reg offset for Tegra30 + - PCI: Don't disable bridge BARs when assigning bus resources + - PCI/AER: Initialize aer_fifo + - iwlwifi: mvm: avoid use after free for pmsr request + - bpftool: Don't crash on missing xlated program instructions + - bpf, sockmap: Don't sleep while holding RCU lock on tear-down + - bpf, sockhash: Synchronize_rcu before free'ing map + - selftests/bpf: Test freeing sockmap/sockhash with a socket in it + - bpf: Improve bucket_log calculation logic + - bpf, sockmap: Check update requirements after locking + - nfs: NFS_SWAP should depend on SWAP + - NFS: Revalidate the file size on a fatal write error + - NFS/pnfs: Fix pnfs_generic_prepare_to_resend_writes() + - NFS: Fix fix of show_nfs_errors + - NFSv4: pnfs_roc() must use cred_fscmp() to compare creds + - NFSv4: try lease recovery on NFS4ERR_EXPIRED + - NFSv4.0: nfs4_do_fsinfo() should not do implicit lease renewals + - x86/boot: Handle malformed SRAT tables during early ACPI parsing + - rtc: hym8563: Return -EINVAL if the time is known to be invalid + - rtc: cmos: Stop using shared IRQ + - watchdog: qcom: Use platform_get_irq_optional() for bark irq + - ARC: [plat-axs10x]: Add missing multicast filter number to GMAC node + - platform/x86: intel_mid_powerbtn: Take a copy of ddata + - arm64: dts: qcom: msm8998: Fix tcsr syscon size + - arm64: dts: uDPU: fix broken ethernet + - ARM: dts: at91: Reenable UART TX pull-ups + - ARM: dts: am43xx: add support for clkout1 clock + - arm64: dts: renesas: r8a77990: ebisu: Remove clkout-lr-synchronous from + sound + - arm64: dts: marvell: clearfog-gt-8k: fix switch cpu port node + - ARM: dts: meson8: use the actual frequency for the GPU's 182.1MHz OPP + - ARM: dts: meson8b: use the actual frequency for the GPU's 364MHz OPP + - ARM: dts: at91: sama5d3: fix maximum peripheral clock rates + - ARM: dts: at91: sama5d3: define clock rate range for tcb1 + - tools/power/acpi: fix compilation error + - soc: qcom: rpmhpd: Set 'active_only' for active only power domains + - Revert "powerpc/pseries/iommu: Don't use dma_iommu_ops on secure guests" + - powerpc/ptdump: Fix W+X verification call in mark_rodata_ro() + - powerpc/ptdump: Only enable PPC_CHECK_WX with STRICT_KERNEL_RWX + - powerpc/papr_scm: Fix leaking 'bus_desc.provider_name' in some paths + - powerpc/pseries/vio: Fix iommu_table use-after-free refcount warning + - powerpc/pseries: Allow not having ibm, hypertas-functions::hcall-multi-tce + for DDW + - iommu/arm-smmu-v3: Populate VMID field for CMDQ_OP_TLBI_NH_VA + - ARM: at91: pm: use SAM9X60 PMC's compatible + - ARM: at91: pm: use of_device_id array to find the proper shdwc node + - KVM: arm/arm64: vgic-its: Fix restoration of unmapped collections + - ARM: 8949/1: mm: mark free_memmap as __init + - sched/uclamp: Fix a bug in propagating uclamp value in new cgroups + - arm64: cpufeature: Fix the type of no FP/SIMD capability + - arm64: cpufeature: Set the FP/SIMD compat HWCAP bits properly + - arm64: ptrace: nofpsimd: Fail FP/SIMD regset operations + - KVM: arm/arm64: Fix young bit from mmu notifier + - KVM: arm: Fix DFSR setting for non-LPAE aarch32 guests + - KVM: arm: Make inject_abt32() inject an external abort instead + - KVM: arm64: pmu: Don't increment SW_INCR if PMCR.E is unset + - KVM: arm64: pmu: Fix chained SW_INCR counters + - KVM: arm64: Treat emulated TVAL TimerValue as a signed 32-bit integer + - arm64: nofpsmid: Handle TIF_FOREIGN_FPSTATE flag cleanly + - mtd: onenand_base: Adjust indentation in onenand_read_ops_nolock + - mtd: sharpslpart: Fix unsigned comparison to zero + - crypto: testmgr - don't try to decrypt uninitialized buffers + - crypto: artpec6 - return correct error code for failed setkey() + - crypto: atmel-sha - fix error handling when setting hmac key + - crypto: caam/qi2 - fix typo in algorithm's driver name + - drivers: watchdog: stm32_iwdg: set WDOG_HW_RUNNING at probe + - media: i2c: adv748x: Fix unsafe macros + - dt-bindings: iio: adc: ad7606: Fix wrong maxItems value + - bcache: avoid unnecessary btree nodes flushing in btree_flush_write() + - selinux: revert "stop passing MAY_NOT_BLOCK to the AVC upon follow_link" + - selinux: fix regression introduced by move_mount(2) syscall + - pinctrl: sh-pfc: r8a77965: Fix DU_DOTCLKIN3 drive/bias control + - pinctrl: sh-pfc: r8a7778: Fix duplicate SDSELF_B and SD1_CLK_B + - regmap: fix writes to non incrementing registers + - mfd: max77650: Select REGMAP_IRQ in Kconfig + - clk: meson: g12a: fix missing uart2 in regmap table + - dmaengine: axi-dmac: add a check for devm_regmap_init_mmio + - mwifiex: Fix possible buffer overflows in mwifiex_ret_wmm_get_status() + - mwifiex: Fix possible buffer overflows in mwifiex_cmd_append_vsie_tlv() + - libertas: don't exit from lbs_ibss_join_existing() with RCU read lock held + - libertas: make lbs_ibss_join_existing() return error code on rates overflow + - selinux: fall back to ref-walk if audit is required + - Linux 5.4.20 + * Focal update: v5.4.19 upstream stable release (LP: #1863588) + - sparc32: fix struct ipc64_perm type definition + - bnxt_en: Move devlink_register before registering netdev + - cls_rsvp: fix rsvp_policy + - gtp: use __GFP_NOWARN to avoid memalloc warning + - l2tp: Allow duplicate session creation with UDP + - net: hsr: fix possible NULL deref in hsr_handle_frame() + - net_sched: fix an OOB access in cls_tcindex + - net: stmmac: Delete txtimer in suspend() + - bnxt_en: Fix TC queue mapping. + - rxrpc: Fix use-after-free in rxrpc_put_local() + - rxrpc: Fix insufficient receive notification generation + - rxrpc: Fix missing active use pinning of rxrpc_local object + - rxrpc: Fix NULL pointer deref due to call->conn being cleared on disconnect + - tcp: clear tp->total_retrans in tcp_disconnect() + - tcp: clear tp->delivered in tcp_disconnect() + - tcp: clear tp->data_segs{in|out} in tcp_disconnect() + - tcp: clear tp->segs_{in|out} in tcp_disconnect() + - ionic: fix rxq comp packet type mask + - MAINTAINERS: correct entries for ISDN/mISDN section + - netdevsim: fix stack-out-of-bounds in nsim_dev_debugfs_init() + - bnxt_en: Fix logic that disables Bus Master during firmware reset. + - media: uvcvideo: Avoid cyclic entity chains due to malformed USB descriptors + - mfd: dln2: More sanity checking for endpoints + - netfilter: ipset: fix suspicious RCU usage in find_set_and_id + - ipc/msg.c: consolidate all xxxctl_down() functions + - tracing/kprobes: Have uname use __get_str() in print_fmt + - tracing: Fix sched switch start/stop refcount racy updates + - rcu: Use *_ONCE() to protect lockless ->expmask accesses + - rcu: Avoid data-race in rcu_gp_fqs_check_wake() + - srcu: Apply *_ONCE() to ->srcu_last_gp_end + - rcu: Use READ_ONCE() for ->expmask in rcu_read_unlock_special() + - nvmet: Fix error print message at nvmet_install_queue function + - nvmet: Fix controller use after free + - Bluetooth: btusb: fix memory leak on fw + - Bluetooth: btusb: Disable runtime suspend on Realtek devices + - brcmfmac: Fix memory leak in brcmf_usbdev_qinit + - usb: dwc3: gadget: Check END_TRANSFER completion + - usb: dwc3: gadget: Delay starting transfer + - usb: typec: tcpci: mask event interrupts when remove driver + - objtool: Silence build output + - usb: gadget: f_fs: set req->num_sgs as 0 for non-sg transfer + - usb: gadget: legacy: set max_speed to super-speed + - usb: gadget: f_ncm: Use atomic_t to track in-flight request + - usb: gadget: f_ecm: Use atomic_t to track in-flight request + - ALSA: usb-audio: Fix endianess in descriptor validation + - ALSA: usb-audio: Annotate endianess in Scarlett gen2 quirk + - ALSA: dummy: Fix PCM format loop in proc output + - memcg: fix a crash in wb_workfn when a device disappears + - mm/sparse.c: reset section's mem_map when fully deactivated + - mmc: sdhci-pci: Make function amd_sdhci_reset static + - utimes: Clamp the timestamps in notify_change() + - mm/memory_hotplug: fix remove_memory() lockdep splat + - mm: thp: don't need care deferred split queue in memcg charge move path + - mm: move_pages: report the number of non-attempted pages + - media/v4l2-core: set pages dirty upon releasing DMA buffers + - media: v4l2-core: compat: ignore native command codes + - media: v4l2-rect.h: fix v4l2_rect_map_inside() top/left adjustments + - lib/test_kasan.c: fix memory leak in kmalloc_oob_krealloc_more() + - irqdomain: Fix a memory leak in irq_domain_push_irq() + - x86/cpu: Update cached HLE state on write to TSX_CTRL_CPUID_CLEAR + - platform/x86: intel_scu_ipc: Fix interrupt support + - ALSA: hda: Apply aligned MMIO access only conditionally + - ALSA: hda: Add Clevo W65_67SB the power_save blacklist + - ALSA: hda: Add JasperLake PCI ID and codec vid + - arm64: acpi: fix DAIF manipulation with pNMI + - KVM: arm64: Correct PSTATE on exception entry + - KVM: arm/arm64: Correct CPSR on exception entry + - KVM: arm/arm64: Correct AArch32 SPSR on exception entry + - KVM: arm64: Only sign-extend MMIO up to register width + - MIPS: syscalls: fix indentation of the 'SYSNR' message + - MIPS: fix indentation of the 'RELOCS' message + - MIPS: boot: fix typo in 'vmlinux.lzma.its' target + - s390/mm: fix dynamic pagetable upgrade for hugetlbfs + - powerpc/mmu_gather: enable RCU_TABLE_FREE even for !SMP case + - powerpc/ptdump: Fix W+X verification + - powerpc/xmon: don't access ASDR in VMs + - powerpc/pseries: Advance pfn if section is not present in lmb_is_removable() + - powerpc/32s: Fix bad_kuap_fault() + - powerpc/32s: Fix CPU wake-up from sleep mode + - tracing: Fix now invalid var_ref_vals assumption in trace action + - PCI: tegra: Fix return value check of pm_runtime_get_sync() + - PCI: keystone: Fix outbound region mapping + - PCI: keystone: Fix link training retries initiation + - PCI: keystone: Fix error handling when "num-viewport" DT property is not + populated + - mmc: spi: Toggle SPI polarity, do not hardcode it + - ACPI: video: Do not export a non working backlight interface on MSI MS-7721 + boards + - ACPI / battery: Deal with design or full capacity being reported as -1 + - ACPI / battery: Use design-cap for capacity calculations if full-cap is not + available + - ACPI / battery: Deal better with neither design nor full capacity not being + reported + - alarmtimer: Unregister wakeup source when module get fails + - fscrypt: don't print name of busy file when removing key + - ubifs: don't trigger assertion on invalid no-key filename + - ubifs: Fix wrong memory allocation + - ubifs: Fix FS_IOC_SETFLAGS unexpectedly clearing encrypt flag + - ubifs: Fix deadlock in concurrent bulk-read and writepage + - mmc: sdhci-of-at91: fix memleak on clk_get failure + - ASoC: SOF: core: free trace on errors + - hv_balloon: Balloon up according to request page number + - mfd: axp20x: Mark AXP20X_VBUS_IPSOUT_MGMT as volatile + - nvmem: core: fix memory abort in cleanup path + - crypto: api - Check spawn->alg under lock in crypto_drop_spawn + - crypto: ccree - fix backlog memory leak + - crypto: ccree - fix AEAD decrypt auth fail + - crypto: ccree - fix pm wrongful error reporting + - crypto: ccree - fix FDE descriptor sequence + - crypto: ccree - fix PM race condition + - padata: Remove broken queue flushing + - fs: allow deduplication of eof block into the end of the destination file + - scripts/find-unused-docs: Fix massive false positives + - erofs: fix out-of-bound read for shifted uncompressed block + - scsi: megaraid_sas: Do not initiate OCR if controller is not in ready state + - scsi: qla2xxx: Fix mtcp dump collection failure + - cpupower: Revert library ABI changes from commit ae2917093fb60bdc1ed3e + - power: supply: axp20x_ac_power: Fix reporting online status + - power: supply: ltc2941-battery-gauge: fix use-after-free + - ovl: fix wrong WARN_ON() in ovl_cache_update_ino() + - ovl: fix lseek overflow on 32bit + - f2fs: choose hardlimit when softlimit is larger than hardlimit in + f2fs_statfs_project() + - f2fs: fix miscounted block limit in f2fs_statfs_project() + - f2fs: code cleanup for f2fs_statfs_project() + - f2fs: fix dcache lookup of !casefolded directories + - f2fs: fix race conditions in ->d_compare() and ->d_hash() + - PM: core: Fix handling of devices deleted during system-wide resume + - cpufreq: Avoid creating excessively large stack frames + - of: Add OF_DMA_DEFAULT_COHERENT & select it on powerpc + - ARM: dma-api: fix max_pfn off-by-one error in __dma_supported() + - dm zoned: support zone sizes smaller than 128MiB + - dm space map common: fix to ensure new block isn't already in use + - dm writecache: fix incorrect flush sequence when doing SSD mode commit + - dm crypt: fix GFP flags passed to skcipher_request_alloc() + - dm crypt: fix benbi IV constructor crash if used in authenticated mode + - dm thin metadata: use pool locking at end of dm_pool_metadata_close + - scsi: qla2xxx: Fix stuck login session using prli_pend_timer + - ASoC: SOF: Introduce state machine for FW boot + - ASoC: SOF: core: release resources on errors in probe_continue + - tracing: Annotate ftrace_graph_hash pointer with __rcu + - tracing: Annotate ftrace_graph_notrace_hash pointer with __rcu + - ftrace: Add comment to why rcu_dereference_sched() is open coded + - ftrace: Protect ftrace_graph_hash with ftrace_sync + - crypto: pcrypt - Avoid deadlock by using per-instance padata queues + - btrfs: fix improper setting of scanned for range cyclic write cache pages + - btrfs: Handle another split brain scenario with metadata uuid feature + - riscv, bpf: Fix broken BPF tail calls + - selftests/bpf: Fix perf_buffer test on systems w/ offline CPUs + - bpf, devmap: Pass lockdep expression to RCU lists + - libbpf: Fix realloc usage in bpf_core_find_cands + - tc-testing: fix eBPF tests failure on linux fresh clones + - samples/bpf: Don't try to remove user's homedir on clean + - samples/bpf: Xdp_redirect_cpu fix missing tracepoint attach + - selftests/bpf: Fix test_attach_probe + - selftests/bpf: Skip perf hw events test if the setup disabled it + - selftests: bpf: Use a temporary file in test_sockmap + - selftests: bpf: Ignore FIN packets for reuseport tests + - crypto: api - fix unexpectedly getting generic implementation + - crypto: hisilicon - Use the offset fields in sqe to avoid need to split + scatterlists + - crypto: ccp - set max RSA modulus size for v3 platform devices as well + - crypto: arm64/ghash-neon - bump priority to 150 + - crypto: pcrypt - Do not clear MAY_SLEEP flag in original request + - crypto: atmel-aes - Fix counter overflow in CTR mode + - crypto: api - Fix race condition in crypto_spawn_alg + - crypto: picoxcell - adjust the position of tasklet_init and fix missed + tasklet_kill + - powerpc/futex: Fix incorrect user access blocking + - scsi: qla2xxx: Fix unbound NVME response length + - NFS: Fix memory leaks and corruption in readdir + - NFS: Directory page cache pages need to be locked when read + - nfsd: fix filecache lookup + - jbd2_seq_info_next should increase position index + - ext4: fix deadlock allocating crypto bounce page from mempool + - ext4: fix race conditions in ->d_compare() and ->d_hash() + - Btrfs: fix missing hole after hole punching and fsync when using NO_HOLES + - Btrfs: make deduplication with range including the last block work + - Btrfs: fix infinite loop during fsync after rename operations + - btrfs: set trans->drity in btrfs_commit_transaction + - btrfs: drop log root for dropped roots + - Btrfs: fix race between adding and putting tree mod seq elements and nodes + - btrfs: flush write bio if we loop in extent_write_cache_pages + - btrfs: Correctly handle empty trees in find_first_clear_extent_bit + - ARM: tegra: Enable PLLP bypass during Tegra124 LP1 + - iwlwifi: don't throw error when trying to remove IGTK + - mwifiex: fix unbalanced locking in mwifiex_process_country_ie() + - sunrpc: expiry_time should be seconds not timeval + - gfs2: fix gfs2_find_jhead that returns uninitialized jhead with seq 0 + - gfs2: move setting current->backing_dev_info + - gfs2: fix O_SYNC write handling + - drm: atmel-hlcdc: use double rate for pixel clock only if supported + - drm: atmel-hlcdc: enable clock before configuring timing engine + - drm: atmel-hlcdc: prefer a lower pixel-clock than requested + - drm/rect: Avoid division by zero + - media: iguanair: fix endpoint sanity check + - media: rc: ensure lirc is initialized before registering input device + - tools/kvm_stat: Fix kvm_exit filter name + - xen/balloon: Support xend-based toolstack take two + - watchdog: fix UAF in reboot notifier handling in watchdog core code + - bcache: add readahead cache policy options via sysfs interface + - eventfd: track eventfd_signal() recursion depth + - aio: prevent potential eventfd recursion on poll + - KVM: x86: Refactor picdev_write() to prevent Spectre-v1/L1TF attacks + - KVM: x86: Refactor prefix decoding to prevent Spectre-v1/L1TF attacks + - KVM: x86: Protect pmu_intel.c from Spectre-v1/L1TF attacks + - KVM: x86: Protect DR-based index computations from Spectre-v1/L1TF attacks + - KVM: x86: Protect kvm_lapic_reg_write() from Spectre-v1/L1TF attacks + - KVM: x86: Protect kvm_hv_msr_[get|set]_crash_data() from Spectre-v1/L1TF + attacks + - KVM: x86: Protect ioapic_write_indirect() from Spectre-v1/L1TF attacks + - KVM: x86: Protect MSR-based index computations in pmu.h from Spectre-v1/L1TF + attacks + - KVM: x86: Protect ioapic_read_indirect() from Spectre-v1/L1TF attacks + - KVM: x86: Protect MSR-based index computations from Spectre-v1/L1TF attacks + in x86.c + - KVM: x86: Protect x86_decode_insn from Spectre-v1/L1TF attacks + - KVM: x86: Protect MSR-based index computations in fixed_msr_to_seg_unit() + from Spectre-v1/L1TF attacks + - KVM: x86: Fix potential put_fpu() w/o load_fpu() on MPX platform + - KVM: PPC: Book3S HV: Uninit vCPU if vcore creation fails + - KVM: PPC: Book3S PR: Free shared page if mmu initialization fails + - kvm/svm: PKU not currently supported + - KVM: VMX: Add non-canonical check on writes to RTIT address MSRs + - KVM: x86: Don't let userspace set host-reserved cr4 bits + - KVM: x86: Free wbinvd_dirty_mask if vCPU creation fails + - KVM: x86: Handle TIF_NEED_FPU_LOAD in kvm_{load,put}_guest_fpu() + - KVM: x86: Ensure guest's FPU state is loaded when accessing for emulation + - KVM: x86: Revert "KVM: X86: Fix fpu state crash in kvm guest" + - KVM: s390: do not clobber registers during guest reset/store status + - ocfs2: fix oops when writing cloned file + - mm/page_alloc.c: fix uninitialized memmaps on a partially populated last + section + - arm64: dts: qcom: qcs404-evb: Set vdd_apc regulator in high power mode + - mm/mmu_gather: invalidate TLB correctly on batch allocation failure and + flush + - clk: tegra: Mark fuse clock as critical + - drm/amd/dm/mst: Ignore payload update failures + - virtio-balloon: initialize all vq callbacks + - virtio-pci: check name when counting MSI-X vectors + - fix up iter on short count in fuse_direct_io() + - broken ping to ipv6 linklocal addresses on debian buster + - percpu: Separate decrypted varaibles anytime encryption can be enabled + - ASoC: meson: axg-fifo: fix fifo threshold setup + - scsi: qla2xxx: Fix the endianness of the qla82xx_get_fw_size() return type + - scsi: csiostor: Adjust indentation in csio_device_reset + - scsi: qla4xxx: Adjust indentation in qla4xxx_mem_free + - scsi: ufs: Recheck bkops level if bkops is disabled + - mtd: spi-nor: Split mt25qu512a (n25q512a) entry into two + - phy: qualcomm: Adjust indentation in read_poll_timeout + - ext2: Adjust indentation in ext2_fill_super + - powerpc/44x: Adjust indentation in ibm4xx_denali_fixup_memsize + - drm: msm: mdp4: Adjust indentation in mdp4_dsi_encoder_enable + - NFC: pn544: Adjust indentation in pn544_hci_check_presence + - ppp: Adjust indentation into ppp_async_input + - net: smc911x: Adjust indentation in smc911x_phy_configure + - net: tulip: Adjust indentation in {dmfe, uli526x}_init_module + - IB/mlx5: Fix outstanding_pi index for GSI qps + - IB/core: Fix ODP get user pages flow + - nfsd: fix delay timer on 32-bit architectures + - nfsd: fix jiffies/time_t mixup in LRU list + - nfsd: Return the correct number of bytes written to the file + - virtio-balloon: Fix memory leak when unloading while hinting is in progress + - virtio_balloon: Fix memory leaks on errors in virtballoon_probe() + - ubi: fastmap: Fix inverted logic in seen selfcheck + - ubi: Fix an error pointer dereference in error handling code + - ubifs: Fix memory leak from c->sup_node + - regulator: core: Add regulator_is_equal() helper + - ASoC: sgtl5000: Fix VDDA and VDDIO comparison + - bonding/alb: properly access headers in bond_alb_xmit() + - devlink: report 0 after hitting end in region read + - dpaa_eth: support all modes with rate adapting PHYs + - net: dsa: b53: Always use dev->vlan_enabled in b53_configure_vlan() + - net: dsa: bcm_sf2: Only 7278 supports 2Gb/sec IMP port + - net: dsa: microchip: enable module autoprobe + - net: mvneta: move rx_dropped and rx_errors in per-cpu stats + - net_sched: fix a resource leak in tcindex_set_parms() + - net: stmmac: fix a possible endless loop + - net: systemport: Avoid RBUF stuck in Wake-on-LAN mode + - net/mlx5: IPsec, Fix esp modify function attribute + - net/mlx5: IPsec, fix memory leak at mlx5_fpga_ipsec_delete_sa_ctx + - net: macb: Remove unnecessary alignment check for TSO + - net: macb: Limit maximum GEM TX length in TSO + - taprio: Fix enabling offload with wrong number of traffic classes + - taprio: Fix still allowing changing the flags during runtime + - taprio: Add missing policy validation for flags + - taprio: Use taprio_reset_tc() to reset Traffic Classes configuration + - taprio: Fix dropping packets when using taprio + ETF offloading + - ipv6/addrconf: fix potential NULL deref in inet6_set_link_af() + - qed: Fix timestamping issue for L2 unicast ptp packets. + - drop_monitor: Do not cancel uninitialized work item + - net/mlx5: Fix deadlock in fs_core + - net/mlx5: Deprecate usage of generic TLS HW capability bit + - ASoC: Intel: skl_hda_dsp_common: Fix global-out-of-bounds bug + - mfd: da9062: Fix watchdog compatible string + - mfd: rn5t618: Mark ADC control register volatile + - mfd: bd70528: Fix hour register mask + - x86/timer: Don't skip PIT setup when APIC is disabled or in legacy mode + - btrfs: use bool argument in free_root_pointers() + - btrfs: free block groups after free'ing fs trees + - drm/dp_mst: Remove VCPI while disabling topology mgr + - KVM: x86/mmu: Apply max PA check for MMIO sptes to 32-bit KVM + - KVM: x86: use CPUID to locate host page table reserved bits + - KVM: x86: Use gpa_t for cr2/gpa to fix TDP support on 32-bit KVM + - KVM: x86: fix overlap between SPTE_MMIO_MASK and generation + - KVM: nVMX: vmread should not set rflags to specify success in case of #PF + - KVM: Use vcpu-specific gva->hva translation when querying host page size + - KVM: Play nice with read-only memslots when querying host page size + - cifs: fail i/o on soft mounts if sessionsetup errors out + - x86/apic/msi: Plug non-maskable MSI affinity race + - clocksource: Prevent double add_timer_on() for watchdog_timer + - perf/core: Fix mlock accounting in perf_mmap() + - rxrpc: Fix service call disconnection + - regulator fix for "regulator: core: Add regulator_is_equal() helper" + - powerpc/kuap: Fix set direction in allow/prevent_user_access() + - Linux 5.4.19 + - [Config] updateconfigs following v5.4.19 stable update + * 5.4.0-11 crash on cryptsetup open (LP: #1860231) // Focal update: v5.4.19 + upstream stable release (LP: #1863588) + - dm: fix potential for q->make_request_fn NULL pointer + * Miscellaneous Ubuntu changes + - update dkms package versions + - [debian] ignore missing wireguard module + - debian: remove snapdragon config, rules and flavour + - [Config] updateconfigs following snapdragon removal + - remove snapdragon abi files + + -- Seth Forshee Fri, 21 Feb 2020 08:52:59 -0600 + +linux-azure (5.4.0-1002.2) focal; urgency=medium + + * Change package name to linux-azure. + + -- Seth Forshee Fri, 21 Feb 2020 08:31:29 -0600 + +linux-azure-5.4 (5.4.0-1002.2) focal; urgency=medium + + * focal/linux-azure-5.4: 5.4.0-1002.2 -proposed tracker (LP: #1862250) + + * installing linux-modules-nvidia does not remove nvidia-dkms, and the kernel + prioritizes the wrong version of the module from disk (LP: #1856414) + - Revert "UBUNTU: [Packaging] dkms -- add Provides: specifiers" + + * Miscellaneous Ubuntu changes + - [Debian] Add upstream version to packagenames in getabis + + [ Ubuntu: 5.4.0-14.17 ] + + * focal/linux-5.4: 5.4.0-14.17 -proposed tracker (LP: #1862255) + * Packaging resync (LP: #1786013) + - [Packaging] update helper scripts + * Boot log is swamped with "debugfs: Directory 'imc' with parent 'powerpc' + already present" messages on kernel 5.4 (LP: #1861379) + - powerpc/powernv: Avoid re-registration of imc debugfs directory + * CVE-2019-3016 + - SAUCE: x86/kvm: Be careful not to clear KVM_VCPU_FLUSH_TLB bit + - SAUCE: x86/kvm: Introduce kvm_(un)map_gfn() + - SAUCE: x86/kvm: Cache gfn to pfn translation + - SAUCE: x86/KVM: Make sure KVM_VCPU_FLUSH_TLB flag is not missed + - SAUCE: x86/KVM: Clean up host's steal time structure + * installing linux-modules-nvidia does not remove nvidia-dkms, and the kernel + prioritizes the wrong version of the module from disk (LP: #1856414) + - Revert "UBUNTU: [Packaging] dkms -- switch basic provides to *-modules" + - Revert "UBUNTU: [Packaging] dkms -- add Provides: specifiers for existing + zfs/nvidia/vbox" + - Revert "UBUNTU: [packaging] dkms-build -- include versioned provides" + - [Packaging] wireguard -- drop provides + * Focal update: v5.4.18 upstream stable release (LP: #1862203) + - vfs: fix do_last() regression + - cifs: fix soft mounts hanging in the reconnect code + - x86/resctrl: Fix a deadlock due to inaccurate reference + - x86/resctrl: Fix use-after-free when deleting resource groups + - x86/resctrl: Fix use-after-free due to inaccurate refcount of rdtgroup + - e1000e: Drop unnecessary __E1000_DOWN bit twiddling + - e1000e: Revert "e1000e: Make watchdog use delayed work" + - gfs2: Another gfs2_find_jhead fix + - perf c2c: Fix return type for histogram sorting comparision functions + - PM / devfreq: Add new name attribute for sysfs + - tools lib: Fix builds when glibc contains strlcpy() + - arm64: kbuild: remove compressed images on 'make ARCH=arm64 (dist)clean' + - mm/mempolicy.c: fix out of bounds write in mpol_parse_str() + - reiserfs: Fix memory leak of journal device string + - media: digitv: don't continue if remote control state can't be read + - media: af9005: uninitialized variable printked + - media: vp7045: do not read uninitialized values if usb transfer fails + - media: gspca: zero usb_buf + - media: dvb-usb/dvb-usb-urb.c: initialize actlen to 0 + - tomoyo: Use atomic_t for statistics counter + - ttyprintk: fix a potential deadlock in interrupt context issue + - Bluetooth: Fix race condition in hci_release_sock() + - cgroup: Prevent double killing of css when enabling threaded cgroup + - clk: sunxi-ng: v3s: Fix incorrect number of hw_clks. + - arm64: dts: meson-sm1-sei610: add gpio bluetooth interrupt + - ARM: dts: sun8i: a83t: Correct USB3503 GPIOs polarity + - ARM: dts: am57xx-beagle-x15/am57xx-idk: Remove "gpios" for endpoint dt nodes + - ARM: dts: beagle-x15-common: Model 5V0 regulator + - soc: ti: wkup_m3_ipc: Fix race condition with rproc_boot + - tools lib traceevent: Fix memory leakage in filter_event + - rseq: Unregister rseq for clone CLONE_VM + - clk: sunxi-ng: sun8i-r: Fix divider on APB0 clock + - clk: sunxi-ng: h6-r: Fix AR100/R_APB2 parent order + - mac80211: mesh: restrict airtime metric to peered established plinks + - clk: mmp2: Fix the order of timer mux parents + - ASoC: rt5640: Fix NULL dereference on module unload + - s390/zcrypt: move ap device reset from bus to driver code + - i40e: Fix virtchnl_queue_select bitmap validation + - ixgbevf: Remove limit of 10 entries for unicast filter list + - ixgbe: Fix calculation of queue with VFs and flow director on interface flap + - igb: Fix SGMII SFP module discovery for 100FX/LX. + - iavf: remove current MAC address filter on VF reset + - platform/x86: GPD pocket fan: Allow somewhat lower/higher temperature limits + - platform/x86: intel_pmc_core: update Comet Lake platform driver + - ASoC: hdac_hda: Fix error in driver removal after failed probe + - ASoC: sti: fix possible sleep-in-atomic + - qmi_wwan: Add support for Quectel RM500Q + - parisc: Use proper printk format for resource_size_t + - lkdtm/bugs: fix build error in lkdtm_UNSET_SMEP + - wireless: fix enabling channel 12 for custom regulatory domain + - cfg80211: Fix radar event during another phy CAC + - mac80211: Fix TKIP replay protection immediately after key setup + - wireless: wext: avoid gcc -O3 warning + - perf/x86/intel/uncore: Add PCI ID of IMC for Xeon E3 V5 Family + - perf/x86/intel/uncore: Remove PCIe3 unit for SNR + - riscv: delete temporary files + - XArray: Fix xas_pause at ULONG_MAX + - iwlwifi: pcie: allocate smaller dev_cmd for TX headers + - iwlwifi: Don't ignore the cap field upon mcc update + - iwlwifi: dbg: force stop the debug monitor HW + - Input: evdev - convert kzalloc()/vzalloc() to kvzalloc() + - ARM: dts: am335x-boneblack-common: fix memory size + - xfrm: interface: do not confirm neighbor when do pmtu update + - Input: max77650-onkey - add of_match table + - scsi: fnic: do not queue commands during fwreset + - ARM: 8955/1: virt: Relax arch timer version check during early boot + - led: max77650: add of_match table + - tee: optee: Fix compilation issue with nommu + - r8152: get default setting of WOL before initializing + - r8152: disable U2P3 for RTL8153B + - r8152: Disable PLA MCU clock speed down + - r8152: disable test IO for RTL8153B + - r8152: avoid the MCU to clear the lanwake + - r8152: disable DelayPhyPwrChg + - ARM: dts: am43x-epos-evm: set data pin directions for spi0 and spi1 + - qlcnic: Fix CPU soft lockup while collecting firmware dump + - powerpc/fsl/dts: add fsl,erratum-a011043 + - net/fsl: treat fsl,erratum-a011043 + - net: fsl/fman: rename IF_MODE_XGMII to IF_MODE_10G + - seq_tab_next() should increase position index + - l2t_seq_next should increase position index + - netfilter: conntrack: sctp: use distinct states for new SCTP connections + - netfilter: nf_tables_offload: fix check the chain offload flag + - net: Fix skb->csum update in inet_proto_csum_replace16(). + - btrfs: do not zero f_bavail if we have available space + - cpuidle: teo: Avoid using "early hits" incorrectly + - flow_dissector: Fix to use new variables for port ranges in bpf hook + - dm thin: fix use-after-free in metadata_pre_commit_callback + - perf report: Fix no libunwind compiled warning break s390 issue + - mm/migrate.c: also overwrite error when it is bigger than zero + - ASoC: topology: fix soc_tplg_fe_link_create() - link->dobj initialization + order + - Revert "rsi: fix potential null dereference in rsi_probe()" + - tracing/uprobe: Fix to make trace_uprobe_filter alignment safe + - Linux 5.4.18 + * Integrate Intel SGX driver into linux-azure (LP: #1844245) + - [Packaging] Add systemd service to load intel_sgx + * Focal update: v5.4.17 upstream stable release (LP: #1861784) + - Bluetooth: btusb: fix non-atomic allocation in completion handler + - orinoco_usb: fix interface sanity check + - rsi_91x_usb: fix interface sanity check + - usb: dwc3: pci: add ID for the Intel Comet Lake -V variant + - usb: host: xhci-tegra: set MODULE_FIRMWARE for tegra186 + - USB: serial: ir-usb: add missing endpoint sanity check + - USB: serial: ir-usb: fix link-speed handling + - USB: serial: ir-usb: fix IrLAP framing + - usb: dwc3: turn off VBUS when leaving host mode + - usb: typec: wcove: fix "op-sink-microwatt" default that was in mW + - usb: typec: fusb302: fix "op-sink-microwatt" default that was in mW + - staging: most: net: fix buffer overflow + - staging: wlan-ng: ensure error return is actually returned + - staging: vt6656: correct packet types for CTS protect, mode. + - staging: vt6656: use NULLFUCTION stack on mac80211 + - staging: vt6656: Fix false Tx excessive retries reporting. + - serial: 8250_bcm2835aux: Fix line mismatch on driver unbind + - serial: imx: fix a race condition in receive path + - debugfs: Return -EPERM when locked down + - component: do not dereference opaque pointer in debugfs + - binder: fix log spam for existing debugfs file creation. + - mei: hdcp: bind only with i915 on the same PCH + - mei: me: add comet point (lake) H device ids + - iio: adc: stm32-dfsdm: fix single conversion + - iio: st_gyro: Correct data for LSM9DS0 gyro + - driver core: Fix test_async_driver_probe if NUMA is disabled + - crypto: chelsio - fix writing tfm flags to wrong place + - CIFS: Fix task struct use-after-free on reconnect + - cifs: set correct max-buffer-size for smb2_ioctl_init() + - cifs: Fix memory allocation in __smb2_handle_cancelled_cmd() + - ath9k: fix storage endpoint lookup + - brcmfmac: fix interface sanity check + - rtl8xxxu: fix interface sanity check + - zd1211rw: fix storage endpoint lookup + - net_sched: ematch: reject invalid TCF_EM_SIMPLE + - net_sched: fix ops->bind_class() implementations + - net_sched: walk through all child classes in tc_bind_tclass() + - net: socionext: fix possible user-after-free in netsec_process_rx + - net: socionext: fix xdp_result initialization in netsec_process_rx + - udp: segment looped gso packets correctly + - mlxsw: minimal: Fix an error handling path in 'mlxsw_m_port_create()' + - net: include struct nhmsg size in nh nlmsg size + - rxrpc: Fix use-after-free in rxrpc_receive_data() + - arc: eznps: fix allmodconfig kconfig warning + - HID: Add quirk for Xin-Mo Dual Controller + - HID: ite: Add USB id match for Acer SW5-012 keyboard dock + - HID: asus: Ignore Asus vendor-page usage-code 0xff events + - HID: Add quirk for incorrect input length on Lenovo Y720 + - HID: intel-ish-hid: ipc: add CMP device id + - HID: wacom: Recognize new MobileStudio Pro PID + - ASoC: SOF: fix fault at driver unload after failed probe + - ASoC: SOF: Intel: hda: hda-dai: fix oops on hda_link .hw_free + - drivers/hid/hid-multitouch.c: fix a possible null pointer access. + - phy: qcom-qmp: Increase PHY ready timeout + - ASoC: fsl_audmix: add missed pm_runtime_disable + - ASoC: topology: Prevent use-after-free in snd_soc_get_pcm_runtime() + - phy: cpcap-usb: Prevent USB line glitches from waking up modem + - HID: intel-ish-hid: ipc: Add Tiger Lake PCI device ID + - watchdog: max77620_wdt: fix potential build errors + - watchdog: rn5t618_wdt: fix module aliases + - watchdog: orion: fix platform_get_irq() complaints + - usb: musb: jz4740: Silence error if code is -EPROBE_DEFER + - can: tcan4x5x: tcan4x5x_parse_config(): reset device before register access + - spi: spi-dw: Add lock protect dw_spi rx/tx to prevent concurrent calls + - net: Google gve: Remove dma_wmb() before ringing doorbell + - drivers/net/b44: Change to non-atomic bit operations on pwol_mask + - net: wan: sdla: Fix cast from pointer to integer of different size + - gpio: max77620: Add missing dependency on GPIOLIB_IRQCHIP + - iommu/dma: fix variable 'cookie' set but not used + - drm/amd/display: Reduce HDMI pixel encoding if max clock is exceeded + - stmmac: debugfs entry name is not be changed when udev rename device name. + - atm: eni: fix uninitialized variable warning + - HID: steam: Fix input device disappearing + - extcon-intel-cht-wc: Don't reset USB data connection at probe + - ASoC: Intel: cht_bsw_rt5645: Add quirk for boards using pmc_plt_clk_0 + - drm/amdgpu/SRIOV: add navi12 pci id for SRIOV (v2) + - libbpf: Fix BTF-defined map's __type macro handling of arrays + - staging: mt7621-pci: add quirks for 'E2' revision using + 'soc_device_attribute' + - platform/x86: dell-laptop: disable kbd backlight on Inspiron 10xx + - PCI: Add DMA alias quirk for Intel VCA NTB + - media: dvbsky: add support for eyeTV Geniatech T2 lite + - bus: ti-sysc: Handle mstandby quirk and use it for musb + - bus: ti-sysc: Use swsup quirks also for am335x musb + - spi: pxa2xx: Add support for Intel Comet Lake-H + - iommu/amd: Support multiple PCI DMA aliases in device table + - iommu/amd: Support multiple PCI DMA aliases in IRQ Remapping + - perf/imx_ddr: Add enhanced AXI ID filter support + - ARM: config: aspeed-g5: Enable 8250_DW quirks + - ARM: OMAP2+: SmartReflex: add omap_sr_pdata definition + - mmc: sdhci-pci: Quirk for AMD SDHC Device 0x7906 + - mmc: sdhci-pci: Add support for Intel JSL + - bus: ti-sysc: Add module enable quirk for audio AESS + - usb-storage: Disable UAS on JMicron SATA enclosure + - ALSA: hda/realtek - Move some alc236 pintbls to fallback table + - Bluetooth: Allow combination of BDADDR_PROPERTY and INVALID_BDADDR quirks + - Bluetooth: btbcm: Use the BDADDR_PROPERTY quirk + - bus: ti-sysc: Fix missing force mstandby quirk handling + - rsi: fix use-after-free on failed probe and unbind + - rsi: fix use-after-free on probe errors + - rsi: fix memory leak on failed URB submission + - rsi: fix non-atomic allocation in completion handler + - crypto: af_alg - Use bh_lock_sock in sk_destruct + - crypto: vmx - reject xts inputs that are too short + - crypto: caam - do not reset pointer size from MCFGR register + - crypto: pcrypt - Fix user-after-free on module unload + - KVM: arm64: Write arch.mdcr_el2 changes since last vcpu_load on VHE + - Revert "um: Enable CONFIG_CONSTRUCTORS" + - power/supply: ingenic-battery: Don't change scale if there's only one + - Linux 5.4.17 + * Miscellaneous Ubuntu changes + - [Packaging] dkms -- switch basic provides to *-modules + - update dkms package versions + + -- Seth Forshee Wed, 12 Feb 2020 15:50:12 -0600 + +linux-azure-5.4 (5.4.0-1001.1) focal; urgency=medium + + * Packaging resync (LP: #1786013) + - [Packaging] update variants + - [Packaging] update update.conf + - [Packaging] update helper scripts + + * Miscellaneous Ubuntu changes + - [Packaging] Change package name to linux-azure-5.4 + - [Packaging] Remove i386 arch from control stubs + - [Packaging] Remove python-dev build-depends + - [Packaging] dkms -- add Provides: specifiers + - [Packaging] Replace wget with curl in build-depends + - [Config] Enable wireguard dkms build + - [Config] Update configs and annotations for 5.4 + - Revert "UBUNTU: SAUCE: linux-azure: Include Intel SGX driver to the main + modules package" + + -- Seth Forshee Thu, 30 Jan 2020 16:54:31 -0600 + +linux-azure-5.4 (5.4.0-1000.0) focal; urgency=medium + + * Empty entry. + + -- Seth Forshee Thu, 30 Jan 2020 13:59:12 -0600 + +linux-azure (5.3.0-1010.11) eoan; urgency=medium + + * eoan/linux-azure: 5.3.0-1010.11 -proposed tracker (LP: #1859820) + + * Integrate Intel SGX driver into linux-azure (LP: #1844245) + - SAUCE: linux-azure: Include Intel SGX driver to the main modules package + - [Packaging] linux-azure: Prevent intel_sgx from being automatically loaded + + [ Ubuntu: 5.3.0-28.30 ] + + * eoan/linux: 5.3.0-28.30 -proposed tracker (LP: #1859694) + * CVE-2019-14615 + - drm/i915/gen9: Clear residual context state on context switch + * PAN is broken for execute-only user mappings on ARMv8 (LP: #1858815) + - arm64: Revert support for execute-only user mappings + * Miscellaneous Ubuntu changes + - update dkms package versions + + [ Ubuntu: 5.3.0-27.29 ] + + * eoan/linux: 5.3.0-27.29 -proposed tracker (LP: #1858943) + * [Regression] usb usb2-port2: Cannot enable. Maybe the USB cable is bad? + (LP: #1856608) + - SAUCE: Revert "usb: handle warm-reset port requests on hub resume" + + [ Ubuntu: 5.3.0-26.28 ] + + * eoan/linux: 5.3.0-26.28 -proposed tracker (LP: #1856807) + * nvidia-435 is in eoan, linux-restricted-modules only builds against 430, + ubiquity gives me the self-signed modules experience instead of using the + Canonical-signed modules (LP: #1856407) + - Add nvidia-435 dkms build + + -- Connor Kuehl Wed, 15 Jan 2020 10:34:34 -0800 + +linux-azure (5.3.0-1009.10) eoan; urgency=medium + + * eoan/linux-azure: 5.3.0-1009.10 -proposed tracker (LP: #1854749) + + [ Ubuntu: 5.3.0-25.27 ] + + * eoan/linux: 5.3.0-25.27 -proposed tracker (LP: #1854762) + * CVE-2019-14901 + - SAUCE: mwifiex: Fix heap overflow in mmwifiex_process_tdls_action_frame() + * CVE-2019-14896 // CVE-2019-14897 + - SAUCE: libertas: Fix two buffer overflows at parsing bss descriptor + * CVE-2019-14895 + - SAUCE: mwifiex: fix possible heap overflow in mwifiex_process_country_ie() + * [CML] New device id's for CMP-H (LP: #1846335) + - mmc: sdhci-pci: Add another Id for Intel CML + - i2c: i801: Add support for Intel Comet Lake PCH-H + - mtd: spi-nor: intel-spi: Add support for Intel Comet Lake-H SPI serial flash + - mfd: intel-lpss: Add Intel Comet Lake PCH-H PCI IDs + * i915: Display flickers (monitor loses signal briefly) during "flickerfree" + boot, while showing the BIOS logo on a black background (LP: #1836858) + - [Config] FRAMEBUFFER_CONSOLE_DEFERRED_TAKEOVER=y + * Please add patch fixing RK818 ID detection (LP: #1853192) + - SAUCE: mfd: rk808: Fix RK818 ID template + * Kernel build log filled with "/bin/bash: line 5: warning: command + substitution: ignored null byte in input" (LP: #1853843) + - [Debian] Fix warnings when checking for modules signatures + * Lenovo dock MAC Address pass through doesn't work in Ubuntu (LP: #1827961) + - r8152: Add macpassthru support for ThinkPad Thunderbolt 3 Dock Gen 2 + * Dell XPS 13 9350/9360 headphone audio hiss (LP: #1654448) // [XPS 13 9360, + Realtek ALC3246, Black Headphone Out, Front] High noise floor (LP: #1845810) + - ALSA: hda/realtek: Reduce the Headphone static noise on XPS 9350/9360 + * no HDMI video output since GDM greeter after linux-oem-osp1 version + 5.0.0-1026 (LP: #1852386) + - drm/i915: Add new CNL PCH ID seen on a CML platform + - SAUCE: drm/i915: Fix detection for a CMP-V PCH + * [broadwell-rt286, playback] Since Linux 5.2rc2 audio playback no longer + works on Dell Venue 11 Pro 7140 (LP: #1846539) + - [Config] Drop snd-sof-intel-bdw build + - SAUCE: ASoC: SOF: Intel: Broadwell: clarify mutual exclusion with legacy + driver + * [CML-S62] Need enable turbostat patch support for Comet lake- S 6+2 + (LP: #1847451) + - SAUCE: tools/power turbostat: Add Cometlake support + * External microphone can't work on some dell machines with the codec alc256 + or alc236 (LP: #1853791) + - SAUCE: ALSA: hda/realtek - Move some alc256 pintbls to fallback table + - SAUCE: ALSA: hda/realtek - Move some alc236 pintbls to fallback table + * Memory leak in net/xfrm/xfrm_state.c - 8 pages per ipsec connection + (LP: #1853197) + - xfrm: Fix memleak on xfrm state destroy + * CVE-2019-18660: patches for Ubuntu (LP: #1853142) // CVE-2019-18660 + - powerpc/64s: support nospectre_v2 cmdline option + - powerpc/book3s64: Fix link stack flush on context switch + - KVM: PPC: Book3S HV: Flush link stack on guest exit to host kernel + * Raydium Touchscreen on ThinkPad L390 does not work (LP: #1849721) + - HID: i2c-hid: fix no irq after reset on raydium 3118 + * Make Goodix I2C touchpads work (LP: #1853842) + - HID: i2c-hid: Remove runtime power management + - HID: i2c-hid: Send power-on command after reset + * Touchpad doesn't work on Dell Inspiron 7000 2-in-1 (LP: #1851901) + - Revert "UBUNTU: SAUCE: mfd: intel-lpss: add quirk for Dell XPS 13 7390 + 2-in-1" + - lib: devres: add a helper function for ioremap_uc + - mfd: intel-lpss: Use devm_ioremap_uc for MMIO + * CVE-2019-19055 + - nl80211: fix memory leak in nl80211_get_ftm_responder_stats + * CML: perf enabling for core (LP: #1848978) + - perf/x86/intel: Add Comet Lake CPU support + - perf/x86/msr: Add Comet Lake CPU support + - perf/x86/cstate: Add Comet Lake CPU support + - perf/x86/msr: Add new CPU model numbers for Ice Lake + - perf/x86/cstate: Update C-state counters for Ice Lake + * Boot hangs after "Loading initial ramdisk ..." (LP: #1852586) + - SAUCE: Revert "tpm_tis_core: Set TPM_CHIP_FLAG_IRQ before probing for + interrupts" + - SAUCE: Revert "tpm_tis_core: Turn on the TPM before probing IRQ's" + * [CML-S62] Need enable intel_rapl patch support for Comet lake- S 6+2 + (LP: #1847454) + - powercap/intel_rapl: add support for CometLake Mobile + - powercap/intel_rapl: add support for Cometlake desktop + * [CML-S62] Need enable intel_pmc_core driver patch for Comet lake- S 6+2 + (LP: #1847450) + - SAUCE: platform/x86: intel_pmc_core: Add Comet Lake (CML) platform support + to intel_pmc_core driver + * update ENA driver for DIMLIB dynamic interrupt moderation (LP: #1853180) + - net: ena: add intr_moder_rx_interval to struct ena_com_dev and use it + - net: ena: switch to dim algorithm for rx adaptive interrupt moderation + - net: ena: reimplement set/get_coalesce() + - net: ena: enable the interrupt_moderation in driver_supported_features + - net: ena: remove code duplication in + ena_com_update_nonadaptive_moderation_interval _*() + - net: ena: remove old adaptive interrupt moderation code from ena_netdev + - net: ena: remove ena_restore_ethtool_params() and relevant fields + - net: ena: remove all old adaptive rx interrupt moderation code from ena_com + - net: ena: fix update of interrupt moderation register + - net: ena: fix retrieval of nonadaptive interrupt moderation intervals + - net: ena: fix incorrect update of intr_delay_resolution + - net: ena: Select DIMLIB for ENA_ETHERNET + - SAUCE: net: ena: fix issues in setting interrupt moderation params in + ethtool + - SAUCE: net: ena: fix too long default tx interrupt moderation interval + * CONFIG_ARCH_ROCKCHIP is not set in ubuntu 18.04 aarch64,arm64 (LP: #1825222) + - [Config] Enable ROCKCHIP support for arm64 + * remount of multilower moved pivoted-root overlayfs root, results in I/O + errors on some modified files (LP: #1824407) + - SAUCE: ovl: fix lookup failure on multi lower squashfs + * Eoan update: 5.3.13 upstream stable release (LP: #1853882) + - net: cdc_ncm: Signedness bug in cdc_ncm_set_dgram_size() + - block, bfq: deschedule empty bfq_queues not referred by any process + - mm/memory_hotplug: don't access uninitialized memmaps in shrink_pgdat_span() + - mm/memory_hotplug: fix updating the node span + - arm64: uaccess: Ensure PAN is re-enabled after unhandled uaccess fault + - fbdev: Ditch fb_edid_add_monspecs + - Linux 5.3.13 + * Eoan update: 5.3.12 upstream stable release (LP: #1853475) + - scsi: core: Handle drivers which set sg_tablesize to zero + - ax88172a: fix information leak on short answers + - devlink: disallow reload operation during device cleanup + - ipmr: Fix skb headroom in ipmr_get_route(). + - mlxsw: core: Enable devlink reload only on probe + - net: gemini: add missed free_netdev + - net/smc: fix fastopen for non-blocking connect() + - net: usb: qmi_wwan: add support for Foxconn T77W968 LTE modules + - slip: Fix memory leak in slip_open error path + - tcp: remove redundant new line from tcp_event_sk_skb + - dpaa2-eth: free already allocated channels on probe defer + - devlink: Add method for time-stamp on reporter's dump + - net/smc: fix refcount non-blocking connect() -part 2 + - ALSA: usb-audio: Fix missing error check at mixer resolution test + - ALSA: usb-audio: not submit urb for stopped endpoint + - ALSA: usb-audio: Fix incorrect NULL check in create_yamaha_midi_quirk() + - ALSA: usb-audio: Fix incorrect size check for processing/extension units + - Btrfs: fix log context list corruption after rename exchange operation + - cgroup: freezer: call cgroup_enter_frozen() with preemption disabled in + ptrace_stop() + - Input: ff-memless - kill timer in destroy() + - Input: synaptics-rmi4 - fix video buffer size + - Input: synaptics-rmi4 - disable the relative position IRQ in the F12 driver + - Input: synaptics-rmi4 - do not consume more data than we have (F11, F12) + - Input: synaptics-rmi4 - clear IRQ enables for F54 + - Input: synaptics-rmi4 - destroy F54 poller workqueue when removing + - KVM: MMU: Do not treat ZONE_DEVICE pages as being reserved + - IB/hfi1: Ensure r_tid_ack is valid before building TID RDMA ACK packet + - IB/hfi1: Calculate flow weight based on QP MTU for TID RDMA + - IB/hfi1: TID RDMA WRITE should not return IB_WC_RNR_RETRY_EXC_ERR + - IB/hfi1: Ensure full Gen3 speed in a Gen4 system + - IB/hfi1: Use a common pad buffer for 9B and 16B packets + - i2c: acpi: Force bus speed to 400KHz if a Silead touchscreen is present + - SAUCE: Revert "UBUNTU: SAUCE: x86/intel: Disable HPET on Intel Coffe Lake + platforms" + - x86/quirks: Disable HPET on Intel Coffe Lake platforms + - ecryptfs_lookup_interpose(): lower_dentry->d_inode is not stable + - ecryptfs_lookup_interpose(): lower_dentry->d_parent is not stable either + - io_uring: ensure registered buffer import returns the IO length + - drm/i915: update rawclk also on resume + - Revert "drm/i915/ehl: Update MOCS table for EHL" + - ntp/y2038: Remove incorrect time_t truncation + - net: ethernet: dwmac-sun8i: Use the correct function in exit path + - iommu/vt-d: Fix QI_DEV_IOTLB_PFSID and QI_DEV_EIOTLB_PFSID macros + - mm: mempolicy: fix the wrong return value and potential pages leak of mbind + - mm: memcg: switch to css_tryget() in get_mem_cgroup_from_mm() + - mm: hugetlb: switch to css_tryget() in hugetlb_cgroup_charge_cgroup() + - mm: slub: really fix slab walking for init_on_free + - mm/memory_hotplug: fix try_offline_node() + - mm/page_io.c: do not free shared swap slots + - mmc: sdhci-of-at91: fix quirk2 overwrite + - slcan: Fix memory leak in error path + - Linux 5.3.12 + * Eoan update: 5.3.11 upstream stable release (LP: #1852338) + - bonding: fix state transition issue in link monitoring + - CDC-NCM: handle incomplete transfer of MTU + - ipv4: Fix table id reference in fib_sync_down_addr + - net: ethernet: octeon_mgmt: Account for second possible VLAN header + - net: fix data-race in neigh_event_send() + - net: qualcomm: rmnet: Fix potential UAF when unregistering + - net/tls: fix sk_msg trim on fallback to copy mode + - net: usb: qmi_wwan: add support for DW5821e with eSIM support + - NFC: fdp: fix incorrect free object + - nfc: netlink: fix double device reference drop + - NFC: st21nfca: fix double free + - qede: fix NULL pointer deref in __qede_remove() + - net: mscc: ocelot: don't handle netdev events for other netdevs + - net: mscc: ocelot: fix NULL pointer on LAG slave removal + - net/tls: don't pay attention to sk_write_pending when pushing partial + records + - net/tls: add a TX lock + - selftests/tls: add test for concurrent recv and send + - ipv6: fixes rt6_probe() and fib6_nh->last_probe init + - net: hns: Fix the stray netpoll locks causing deadlock in NAPI path + - net: prevent load/store tearing on sk->sk_stamp + - net: sched: prevent duplicate flower rules from tcf_proto destroy race + - net/smc: fix ethernet interface refcounting + - vsock/virtio: fix sock refcnt holding during the shutdown + - r8169: fix page read in r8168g_mdio_read + - ALSA: timer: Fix incorrectly assigned timer instance + - ALSA: bebob: fix to detect configured source of sampling clock for Focusrite + Saffire Pro i/o series + - ALSA: hda/ca0132 - Fix possible workqueue stall + - mm: memcontrol: fix NULL-ptr deref in percpu stats flush + - mm: memcontrol: fix network errors from failing __GFP_ATOMIC charges + - mm, meminit: recalculate pcpu batch and high limits after init completes + - mm: thp: handle page cache THP correctly in PageTransCompoundMap + - mm, vmstat: hide /proc/pagetypeinfo from normal users + - dump_stack: avoid the livelock of the dump_lock + - mm: slab: make page_cgroup_ino() to recognize non-compound slab pages + properly + - btrfs: Consider system chunk array size for new SYSTEM chunks + - btrfs: tree-checker: Fix wrong check on max devid + - btrfs: save i_size to avoid double evaluation of i_size_read in + compress_file_range + - tools: gpio: Use !building_out_of_srctree to determine srctree + - pinctrl: intel: Avoid potential glitches if pin is in GPIO mode + - perf tools: Fix time sorting + - perf map: Use zalloc for map_groups + - drm/radeon: fix si_enable_smc_cac() failed issue + - HID: wacom: generic: Treat serial number and related fields as unsigned + - mm/khugepaged: fix might_sleep() warn with CONFIG_HIGHPTE=y + - soundwire: depend on ACPI + - soundwire: depend on ACPI || OF + - soundwire: bus: set initial value to port_status + - blkcg: make blkcg_print_stat() print stats only for online blkgs + - arm64: Do not mask out PTE_RDONLY in pte_same() + - ASoC: rsnd: dma: fix SSI9 4/5/6/7 busif dma address + - ceph: fix use-after-free in __ceph_remove_cap() + - ceph: fix RCU case handling in ceph_d_revalidate() + - ceph: add missing check in d_revalidate snapdir handling + - ceph: don't try to handle hashed dentries in non-O_CREAT atomic_open + - ceph: don't allow copy_file_range when stripe_count != 1 + - iio: adc: stm32-adc: fix stopping dma + - iio: imu: adis16480: make sure provided frequency is positive + - iio: imu: inv_mpu6050: fix no data on MPU6050 + - iio: srf04: fix wrong limitation in distance measuring + - ARM: sunxi: Fix CPU powerdown on A83T + - ARM: dts: imx6-logicpd: Re-enable SNVS power key + - cpufreq: intel_pstate: Fix invalid EPB setting + - clone3: validate stack arguments + - netfilter: nf_tables: Align nft_expr private data to 64-bit + - netfilter: ipset: Fix an error code in ip_set_sockfn_get() + - intel_th: gth: Fix the window switching sequence + - intel_th: pci: Add Comet Lake PCH support + - intel_th: pci: Add Jasper Lake PCH support + - x86/dumpstack/64: Don't evaluate exception stacks before setup + - x86/apic/32: Avoid bogus LDR warnings + - SMB3: Fix persistent handles reconnect + - can: usb_8dev: fix use-after-free on disconnect + - can: flexcan: disable completely the ECC mechanism + - can: c_can: c_can_poll(): only read status register after status IRQ + - can: peak_usb: fix a potential out-of-sync while decoding packets + - can: rx-offload: can_rx_offload_queue_sorted(): fix error handling, avoid + skb mem leak + - can: gs_usb: gs_can_open(): prevent memory leak + - can: dev: add missing of_node_put() after calling of_get_child_by_name() + - can: mcba_usb: fix use-after-free on disconnect + - can: peak_usb: fix slab info leak + - configfs: fix a deadlock in configfs_symlink() + - ALSA: usb-audio: More validations of descriptor units + - ALSA: usb-audio: Simplify parse_audio_unit() + - ALSA: usb-audio: Unify the release of usb_mixer_elem_info objects + - ALSA: usb-audio: Remove superfluous bLength checks + - ALSA: usb-audio: Clean up check_input_term() + - ALSA: usb-audio: Fix possible NULL dereference at create_yamaha_midi_quirk() + - ALSA: usb-audio: remove some dead code + - ALSA: usb-audio: Fix copy&paste error in the validator + - usbip: Implement SG support to vhci-hcd and stub driver + - HID: google: add magnemite/masterball USB ids + - dmaengine: sprd: Fix the link-list pointer register configuration issue + - bpf: lwtunnel: Fix reroute supplying invalid dst + - dmaengine: xilinx_dma: Fix 64-bit simple AXIDMA transfer + - dmaengine: xilinx_dma: Fix control reg update in vdma_channel_set_config + - dmaengine: sprd: Fix the possible memory leak issue + - HID: intel-ish-hid: fix wrong error handling in ishtp_cl_alloc_tx_ring() + - powerpc/32s: fix allow/prevent_user_access() when crossing segment + boundaries. + - RDMA/mlx5: Clear old rate limit when closing QP + - iw_cxgb4: fix ECN check on the passive accept + - RDMA/siw: free siw_base_qp in kref release routine + - RDMA/qedr: Fix reported firmware version + - IB/core: Use rdma_read_gid_l2_fields to compare GID L2 fields + - net/mlx5e: Tx, Fix assumption of single WQEBB of NOP in cleanup flow + - net/mlx5e: kTLS, Release reference on DUMPed fragments in shutdown flow + - net/mlx5e: TX, Fix consumer index of error cqe dump + - net/mlx5: prevent memory leak in mlx5_fpga_conn_create_cq + - net/mlx5: fix memory leak in mlx5_fw_fatal_reporter_dump + - selftests/bpf: More compatible nc options in test_tc_edt + - scsi: qla2xxx: fixup incorrect usage of host_byte + - scsi: lpfc: Check queue pointer before use + - scsi: ufs-bsg: Wake the device before sending raw upiu commands + - ARC: [plat-hsdk]: Enable on-board SPI NOR flash IC + - RDMA/uverbs: Prevent potential underflow + - bpf: Fix use after free in subprog's jited symbol removal + - net: stmmac: Fix the problem of tso_xmit + - net: openvswitch: free vport unless register_netdevice() succeeds + - scsi: lpfc: Honor module parameter lpfc_use_adisc + - scsi: qla2xxx: Initialized mailbox to prevent driver load failure + - bpf: Fix use after free in bpf_get_prog_name + - iwlwifi: pcie: fix PCI ID 0x2720 configs that should be soc + - iwlwifi: pcie: fix all 9460 entries for qnj + - iwlwifi: pcie: 0x2720 is qu and 0x30DC is not + - netfilter: nf_flow_table: set timeout before insertion into hashes + - drm/v3d: Fix memory leak in v3d_submit_cl_ioctl + - xsk: Fix registration of Rx-only sockets + - net: phy: smsc: LAN8740: add PHY_RST_AFTER_CLK_EN flag + - ipvs: don't ignore errors in case refcounting ip_vs module fails + - ipvs: move old_secure_tcp into struct netns_ipvs + - netfilter: nft_payload: fix missing check for matching length in offloads + - RDMA/nldev: Skip counter if port doesn't match + - bonding: fix unexpected IFF_BONDING bit unset + - bonding: use dynamic lockdep key instead of subclass + - macsec: fix refcnt leak in module exit routine + - virt_wifi: fix refcnt leak in module exit routine + - scsi: sd: define variable dif as unsigned int instead of bool + - usb: dwc3: select CONFIG_REGMAP_MMIO + - usb: fsl: Check memory resource before releasing it + - usb: gadget: udc: atmel: Fix interrupt storm in FIFO mode. + - usb: gadget: composite: Fix possible double free memory bug + - usb: dwc3: pci: prevent memory leak in dwc3_pci_probe + - usb: gadget: configfs: fix concurrent issue between composite APIs + - usb: dwc3: remove the call trace of USBx_GFLADJ + - perf/x86/amd/ibs: Fix reading of the IBS OpData register and thus precise + RIP validity + - perf/x86/amd/ibs: Handle erratum #420 only on the affected CPU family (10h) + - perf/x86/uncore: Fix event group support + - USB: Skip endpoints with 0 maxpacket length + - USB: ldusb: use unsigned size format specifiers + - usbip: tools: Fix read_usb_vudc_device() error path handling + - RDMA/iw_cxgb4: Avoid freeing skb twice in arp failure case + - RDMA/hns: Prevent memory leaks of eq->buf_list + - hwmon: (ina3221) Fix read timeout issue + - scsi: qla2xxx: stop timer in shutdown path + - sched/topology: Don't try to build empty sched domains + - sched/topology: Allow sched_asym_cpucapacity to be disabled + - nvme-multipath: fix possible io hang after ctrl reconnect + - fjes: Handle workqueue allocation failure + - net: hisilicon: Fix "Trying to free already-free IRQ" + - wimax: i2400: Fix memory leak in i2400m_op_rfkill_sw_toggle + - net: mscc: ocelot: fix vlan_filtering when enslaving to bridge before link + is up + - net: mscc: ocelot: refuse to overwrite the port's native vlan + - iommu/amd: Apply the same IVRS IOAPIC workaround to Acer Aspire A315-41 + - mt76: dma: fix buffer unmap with non-linear skbs + - drm/amdgpu/sdma5: do not execute 0-sized IBs (v2) + - drm/sched: Set error to s_fence if HW job submission failed. + - drm/amdgpu: If amdgpu_ib_schedule fails return back the error. + - drm/amd/display: do not synchronize "drr" displays + - drm/amd/display: add 50us buffer as WA for pstate switch in active + - drm/amd/display: Passive DP->HDMI dongle detection fix + - dc.c:use kzalloc without test + - SUNRPC: The TCP back channel mustn't disappear while requests are + outstanding + - SUNRPC: The RDMA back channel mustn't disappear while requests are + outstanding + - SUNRPC: Destroy the back channel when we destroy the host transport + - hv_netvsc: Fix error handling in netvsc_attach() + - efi/tpm: Return -EINVAL when determining tpm final events log size fails + - efi: libstub/arm: Account for firmware reserved memory at the base of RAM + - x86, efi: Never relocate kernel below lowest acceptable address + - arm64: cpufeature: Enable Qualcomm Falkor errata 1009 for Kryo + - usb: dwc3: gadget: fix race when disabling ep with cancelled xfers + - arm64: apply ARM64_ERRATUM_845719 workaround for Brahma-B53 core + - arm64: Brahma-B53 is SSB and spectre v2 safe + - arm64: apply ARM64_ERRATUM_843419 workaround for Brahma-B53 core + - NFSv4: Don't allow a cached open with a revoked delegation + - net: ethernet: arc: add the missed clk_disable_unprepare + - igb: Fix constant media auto sense switching when no cable is connected + - e1000: fix memory leaks + - gve: Fixes DMA synchronization. + - ocfs2: protect extent tree in ocfs2_prepare_inode_for_write() + - pinctrl: cherryview: Fix irq_valid_mask calculation + - clk: imx8m: Use SYS_PLL1_800M as intermediate parent of CLK_ARM + - timekeeping/vsyscall: Update VDSO data unconditionally + - mm/filemap.c: don't initiate writeback if mapping has no dirty pages + - cgroup,writeback: don't switch wbs immediately on dead wbs if the memcg is + dead + - ARM: dts: stm32: change joystick pinctrl definition on stm32mp157c-ev1 + - ASoC: SOF: Intel: hda-stream: fix the CONFIG_ prefix missing + - usbip: Fix free of unallocated memory in vhci tx + - bonding: fix using uninitialized mode_lock + - netfilter: ipset: Copy the right MAC address in hash:ip,mac IPv6 sets + - arm64: errata: Update stale comment + - net/ibmvnic: unlock rtnl_lock in reset so linkwatch_event can run + - SAUCE: Revert "UBUNTU: SAUCE: kvm: x86: mmu: Recovery of shattered NX large + pages" + - SAUCE: Revert "UBUNTU: SAUCE: kvm: Add helper function for creating VM + worker threads" + - SAUCE: Revert "UBUNTU: SAUCE: kvm: mmu: ITLB_MULTIHIT mitigation" + - SAUCE: Revert "kvm: x86, powerpc: do not allow clearing largepages debugfs + entry" + - SAUCE: Revert "UBUNTU: SAUCE: cpu/speculation: Uninline and export CPU + mitigations helpers" + - SAUCE: Revert "UBUNTU: SAUCE: x86: Add ITLB_MULTIHIT bug infrastructure" + - SAUCE: Revert "x86/tsx: Add config options to set tsx=on|off|auto" + - SAUCE: Revert "x86/speculation/taa: Add documentation for TSX Async Abort" + - SAUCE: Revert "x86/tsx: Add "auto" option to the tsx= cmdline parameter" + - SAUCE: Revert "kvm/x86: Export MDS_NO=0 to guests when TSX is enabled" + - SAUCE: Revert "x86/speculation/taa: Add sysfs reporting for TSX Async Abort" + - SAUCE: Revert "x86/speculation/taa: Add mitigation for TSX Async Abort" + - SAUCE: Revert "x86/cpu: Add a "tsx=" cmdline option with TSX disabled by + default" + - SAUCE: Revert "x86/cpu: Add a helper function x86_read_arch_cap_msr()" + - SAUCE: Revert "x86/msr: Add the IA32_TSX_CTRL MSR" + - SAUCE: Revert "UBUNTU: SAUCE: drm/i915/cmdparser: Fix jump whitelist + clearing" + - SAUCE: Revert "UBUNTU: SAUCE: drm/i915/gen8+: Add RC6 CTX corruption WA" + - SAUCE: Revert "UBUNTU: SAUCE: drm/i915: Lower RM timeout to avoid DSI hard + hangs" + - SAUCE: Revert "UBUNTU: SAUCE: drm/i915/cmdparser: Ignore Length operands + during command matching" + - SAUCE: Revert "UBUNTU: SAUCE: drm/i915/cmdparser: Add support for backward + jumps" + - SAUCE: Revert "UBUNTU: SAUCE: drm/i915/cmdparser: Use explicit goto for + error paths" + - SAUCE: Revert "UBUNTU: SAUCE: drm/i915: Add gen9 BCS cmdparsing" + - SAUCE: Revert "UBUNTU: SAUCE: drm/i915: Allow parsing of unsized batches" + - SAUCE: Revert "UBUNTU: SAUCE: drm/i915: Support ro ppgtt mapped cmdparser + shadow buffers" + - SAUCE: Revert "UBUNTU: SAUCE: drm/i915: Add support for mandatory + cmdparsing" + - SAUCE: Revert "UBUNTU: SAUCE: drm/i915: Remove Master tables from cmdparser" + - SAUCE: Revert "UBUNTU: SAUCE: drm/i915: Disable Secure Batches for gen6+" + - SAUCE: Revert "UBUNTU: SAUCE: drm/i915: Rename gen7 cmdparser tables" + - drm/i915: Rename gen7 cmdparser tables + - drm/i915: Disable Secure Batches for gen6+ + - drm/i915: Remove Master tables from cmdparser + - drm/i915: Add support for mandatory cmdparsing + - drm/i915: Support ro ppgtt mapped cmdparser shadow buffers + - drm/i915: Allow parsing of unsized batches + - drm/i915: Add gen9 BCS cmdparsing + - drm/i915/cmdparser: Use explicit goto for error paths + - drm/i915/cmdparser: Add support for backward jumps + - drm/i915/cmdparser: Ignore Length operands during command matching + - drm/i915: Lower RM timeout to avoid DSI hard hangs + - drm/i915/gen8+: Add RC6 CTX corruption WA + - drm/i915/cmdparser: Fix jump whitelist clearing + - x86/msr: Add the IA32_TSX_CTRL MSR + - x86/cpu: Add a helper function x86_read_arch_cap_msr() + - x86/cpu: Add a "tsx=" cmdline option with TSX disabled by default + - x86/speculation/taa: Add mitigation for TSX Async Abort + - x86/speculation/taa: Add sysfs reporting for TSX Async Abort + - kvm/x86: Export MDS_NO=0 to guests when TSX is enabled + - x86/tsx: Add "auto" option to the tsx= cmdline parameter + - x86/speculation/taa: Add documentation for TSX Async Abort + - x86/tsx: Add config options to set tsx=on|off|auto + - x86/speculation/taa: Fix printing of TAA_MSG_SMT on IBRS_ALL CPUs + - x86/bugs: Add ITLB_MULTIHIT bug infrastructure + - x86/cpu: Add Tremont to the cpu vulnerability whitelist + - cpu/speculation: Uninline and export CPU mitigations helpers + - Documentation: Add ITLB_MULTIHIT documentation + - kvm: x86, powerpc: do not allow clearing largepages debugfs entry + - kvm: mmu: ITLB_MULTIHIT mitigation + - kvm: Add helper function for creating VM worker threads + - kvm: x86: mmu: Recovery of shattered NX large pages + - Linux 5.3.11 + * The alsa hda driver is not loaded due to the missing of PCIID for Comet + Lake-S [8086:a3f0] (LP: #1852070) + - SAUCE: ALSA: hda: Add Cometlake-S PCI ID + * Can't adjust brightness on DELL UHD dGPU AIO (LP: #1813877) + - SAUCE: platform/x86: dell-uart-backlight: add missing status command + - SAUCE: platform/x86: dell-uart-backlight: load driver by scalar status + - SAUCE: platform/x86: dell-uart-backlight: add force parameter + - SAUCE: platform/x86: dell-uart-backlight: add quirk for old platforms + * Disable unreliable HPET on CFL-H system (LP: #1852216) + - SAUCE: x86/intel: Disable HPET on Intel Coffe Lake H platforms + * i40e: Setting VF MAC address causes General Protection Fault (LP: #1852432) + - i40e: Fix crash caused by stress setting of VF MAC addresses + * CVE-2019-19072 + - tracing: Have error path in predicate_parse() free its allocated memory + * i40e: general protection fault in i40e_config_vf_promiscuous_mode + (LP: #1852663) + - SAUCE: i40e Fix GPF when deleting VMs + * hwe-edge kernel 5.3.0-23.25 kernel does not boot on Precision 5720 AIO + (LP: #1852581) + - [Packaging] Fix module signing with older modinfo + + -- Sultan Alsawaf Wed, 04 Dec 2019 15:54:06 -0800 + +linux-azure (5.3.0-1008.9) eoan; urgency=medium + + * eoan/linux-azure: 5.3.0-1008.9 -proposed tracker (LP: #1852225) + + [ Ubuntu: 5.3.0-24.26 ] + + * eoan/linux: 5.3.0-24.26 -proposed tracker (LP: #1852232) + * Eoan update: 5.3.9 upstream stable release (LP: #1851550) + - io_uring: fix up O_NONBLOCK handling for sockets + - dm snapshot: introduce account_start_copy() and account_end_copy() + - dm snapshot: rework COW throttling to fix deadlock + - Btrfs: fix inode cache block reserve leak on failure to allocate data space + - btrfs: qgroup: Always free PREALLOC META reserve in + btrfs_delalloc_release_extents() + - iio: adc: meson_saradc: Fix memory allocation order + - iio: fix center temperature of bmc150-accel-core + - libsubcmd: Make _FORTIFY_SOURCE defines dependent on the feature + - perf tests: Avoid raising SEGV using an obvious NULL dereference + - perf map: Fix overlapped map handling + - perf script brstackinsn: Fix recovery from LBR/binary mismatch + - perf jevents: Fix period for Intel fixed counters + - perf tools: Propagate get_cpuid() error + - perf annotate: Propagate perf_env__arch() error + - perf annotate: Fix the signedness of failure returns + - perf annotate: Propagate the symbol__annotate() error return + - perf annotate: Fix arch specific ->init() failure errors + - perf annotate: Return appropriate error code for allocation failures + - perf annotate: Don't return -1 for error when doing BPF disassembly + - staging: rtl8188eu: fix null dereference when kzalloc fails + - RDMA/siw: Fix serialization issue in write_space() + - RDMA/hfi1: Prevent memory leak in sdma_init + - RDMA/iw_cxgb4: fix SRQ access from dump_qp() + - RDMA/iwcm: Fix a lock inversion issue + - HID: hyperv: Use in-place iterator API in the channel callback + - kselftest: exclude failed TARGETS from runlist + - selftests/kselftest/runner.sh: Add 45 second timeout per test + - nfs: Fix nfsi->nrequests count error on nfs_inode_remove_request + - arm64: cpufeature: Effectively expose FRINT capability to userspace + - arm64: Fix incorrect irqflag restore for priority masking for compat + - arm64: ftrace: Ensure synchronisation in PLT setup for Neoverse-N1 #1542419 + - tty: serial: owl: Fix the link time qualifier of 'owl_uart_exit()' + - tty: serial: rda: Fix the link time qualifier of 'rda_uart_exit()' + - serial/sifive: select SERIAL_EARLYCON + - tty: n_hdlc: fix build on SPARC + - misc: fastrpc: prevent memory leak in fastrpc_dma_buf_attach + - RDMA/core: Fix an error handling path in 'res_get_common_doit()' + - RDMA/cm: Fix memory leak in cm_add/remove_one + - RDMA/nldev: Reshuffle the code to avoid need to rebind QP in error path + - RDMA/mlx5: Do not allow rereg of a ODP MR + - RDMA/mlx5: Order num_pending_prefetch properly with synchronize_srcu + - RDMA/mlx5: Add missing synchronize_srcu() for MW cases + - gpio: max77620: Use correct unit for debounce times + - fs: cifs: mute -Wunused-const-variable message + - arm64: vdso32: Fix broken compat vDSO build warnings + - arm64: vdso32: Detect binutils support for dmb ishld + - serial: mctrl_gpio: Check for NULL pointer + - serial: 8250_omap: Fix gpio check for auto RTS/CTS + - arm64: Default to building compat vDSO with clang when CONFIG_CC_IS_CLANG + - arm64: vdso32: Don't use KBUILD_CPPFLAGS unconditionally + - efi/cper: Fix endianness of PCIe class code + - efi/x86: Do not clean dummy variable in kexec path + - MIPS: include: Mark __cmpxchg as __always_inline + - riscv: avoid kernel hangs when trapped in BUG() + - riscv: avoid sending a SIGTRAP to a user thread trapped in WARN() + - riscv: Correct the handling of unexpected ebreak in do_trap_break() + - x86/xen: Return from panic notifier + - ocfs2: clear zero in unaligned direct IO + - fs: ocfs2: fix possible null-pointer dereferences in + ocfs2_xa_prepare_entry() + - fs: ocfs2: fix a possible null-pointer dereference in + ocfs2_write_end_nolock() + - fs: ocfs2: fix a possible null-pointer dereference in + ocfs2_info_scan_inode_alloc() + - btrfs: silence maybe-uninitialized warning in clone_range + - arm64: armv8_deprecated: Checking return value for memory allocation + - sched/fair: Scale bandwidth quota and period without losing quota/period + ratio precision + - sched/vtime: Fix guest/system mis-accounting on task switch + - perf/core: Rework memory accounting in perf_mmap() + - perf/core: Fix corner case in perf_rotate_context() + - perf/x86/amd: Change/fix NMI latency mitigation to use a timestamp + - drm/amdgpu: fix memory leak + - iio: imu: adis16400: release allocated memory on failure + - iio: imu: adis16400: fix memory leak + - iio: imu: st_lsm6dsx: fix waitime for st_lsm6dsx i2c controller + - MIPS: include: Mark __xchg as __always_inline + - MIPS: fw: sni: Fix out of bounds init of o32 stack + - s390/cio: fix virtio-ccw DMA without PV + - virt: vbox: fix memory leak in hgcm_call_preprocess_linaddr + - nbd: fix possible sysfs duplicate warning + - NFSv4: Fix leak of clp->cl_acceptor string + - SUNRPC: fix race to sk_err after xs_error_report + - s390/uaccess: avoid (false positive) compiler warnings + - tracing: Initialize iter->seq after zeroing in tracing_read_pipe() + - perf annotate: Fix multiple memory and file descriptor leaks + - perf/aux: Fix tracking of auxiliary trace buffer allocation + - USB: legousbtower: fix a signedness bug in tower_probe() + - nbd: verify socket is supported during setup + - fuse: flush dirty data/metadata before non-truncate setattr + - fuse: truncate pending writes on O_TRUNC + - ALSA: bebob: Fix prototype of helper function to return negative value + - ALSA: timer: Fix mutex deadlock at releasing card + - ath10k: fix latency issue for QCA988x + - UAS: Revert commit 3ae62a42090f ("UAS: fix alignment of scatter/gather + segments") + - nl80211: fix validation of mesh path nexthop + - USB: gadget: Reject endpoints with 0 maxpacket value + - usb-storage: Revert commit 747668dbc061 ("usb-storage: Set + virt_boundary_mask to avoid SG overflows") + - USB: ldusb: fix ring-buffer locking + - USB: ldusb: fix control-message timeout + - usb: xhci: fix Immediate Data Transfer endianness + - usb: xhci: fix __le32/__le64 accessors in debugfs code + - USB: serial: whiteheat: fix potential slab corruption + - USB: serial: whiteheat: fix line-speed endianness + - xhci: Fix use-after-free regression in xhci clear hub TT implementation + - scsi: qla2xxx: Fix partial flash write of MBI + - scsi: target: cxgbit: Fix cxgbit_fw4_ack() + - HID: i2c-hid: add Trekstor Primebook C11B to descriptor override + - HID: Fix assumption that devices have inputs + - HID: fix error message in hid_open_report() + - HID: logitech-hidpp: split g920_get_config() + - HID: logitech-hidpp: rework device validation + - HID: logitech-hidpp: do all FF cleanup in hidpp_ff_destroy() + - um-ubd: Entrust re-queue to the upper layers + - s390/unwind: fix mixing regs and sp + - s390/cmm: fix information leak in cmm_timeout_handler() + - s390/idle: fix cpu idle time calculation + - ARC: perf: Accommodate big-endian CPU + - IB/hfi1: Avoid excessive retry for TID RDMA READ request + - arm64: Ensure VM_WRITE|VM_SHARED ptes are clean by default + - arm64: cpufeature: Enable Qualcomm Falkor/Kryo errata 1003 + - virtio_ring: fix stalls for packed rings + - rtlwifi: rtl_pci: Fix problem of too small skb->len + - dmaengine: qcom: bam_dma: Fix resource leak + - dmaengine: tegra210-adma: fix transfer failure + - dmaengine: imx-sdma: fix size check for sdma script_number + - dmaengine: cppi41: Fix cppi41_dma_prep_slave_sg() when idle + - drm/amdgpu/gmc10: properly set BANK_SELECT and FRAGMENT_SIZE + - drm/i915: Fix PCH reference clock for FDI on HSW/BDW + - drm/amdgpu/gfx10: update gfx golden settings + - drm/amdgpu/powerplay/vega10: allow undervolting in p7 + - drm/amdgpu: Fix SDMA hang when performing VKexample test + - NFS: Fix an RCU lock leak in nfs4_refresh_delegation_stateid() + - io_uring: ensure we clear io_kiocb->result before each issue + - iommu/vt-d: Fix panic after kexec -p for kdump + - batman-adv: Avoid free/alloc race when handling OGM buffer + - llc: fix sk_buff leak in llc_sap_state_process() + - llc: fix sk_buff leak in llc_conn_service() + - rxrpc: Fix call ref leak + - rxrpc: rxrpc_peer needs to hold a ref on the rxrpc_local record + - rxrpc: Fix trace-after-put looking at the put peer record + - NFC: pn533: fix use-after-free and memleaks + - bonding: fix potential NULL deref in bond_update_slave_arr + - netfilter: conntrack: avoid possible false sharing + - net: usb: sr9800: fix uninitialized local variable + - sch_netem: fix rcu splat in netem_enqueue() + - net: sched: sch_sfb: don't call qdisc_put() while holding tree lock + - iwlwifi: exclude GEO SAR support for 3168 + - sched/fair: Fix low cpu usage with high throttling by removing expiration of + cpu-local slices + - ALSA: usb-audio: DSD auto-detection for Playback Designs + - ALSA: usb-audio: Update DSD support quirks for Oppo and Rotel + - ALSA: usb-audio: Add DSD support for Gustard U16/X26 USB Interface + - RDMA/mlx5: Use irq xarray locking for mkey_table + - sched/fair: Fix -Wunused-but-set-variable warnings + - powerpc/powernv: Fix CPU idle to be called with IRQs disabled + - Revert "nvme: allow 64-bit results in passthru commands" + - Revert "ALSA: hda: Flush interrupts on disabling" + - Linux 5.3.9 + - [Config] Remove CONFIG_GENERIC_COMPAT_VDSO and + CONFIG_CROSS_COMPILE_COMPAT_VDSO + * Eoan update: v5.3.8 upstream stable release (LP: #1850456) + - drm: Free the writeback_job when it with an empty fb + - drm: Clear the fence pointer when writeback job signaled + - clk: ti: dra7: Fix mcasp8 clock bits + - ARM: dts: Fix wrong clocks for dra7 mcasp + - nvme-pci: Fix a race in controller removal + - scsi: ufs: skip shutdown if hba is not powered + - scsi: megaraid: disable device when probe failed after enabled device + - scsi: qla2xxx: Silence fwdump template message + - scsi: qla2xxx: Fix unbound sleep in fcport delete path. + - scsi: qla2xxx: Fix stale mem access on driver unload + - scsi: qla2xxx: Fix N2N link reset + - scsi: qla2xxx: Fix N2N link up fail + - ARM: dts: Fix gpio0 flags for am335x-icev2 + - ARM: OMAP2+: Fix missing reset done flag for am3 and am43 + - ARM: OMAP2+: Add missing LCDC midlemode for am335x + - ARM: OMAP2+: Fix warnings with broken omap2_set_init_voltage() + - nvme-tcp: fix wrong stop condition in io_work + - nvme-pci: Save PCI state before putting drive into deepest state + - nvme: fix an error code in nvme_init_subsystem() + - nvme-rdma: Fix max_hw_sectors calculation + - Added QUIRKs for ADATA XPG SX8200 Pro 512GB + - nvme: Add quirk for Kingston NVME SSD running FW E8FK11.T + - nvme: allow 64-bit results in passthru commands + - drm/komeda: prevent memory leak in komeda_wb_connector_add + - nvme-rdma: fix possible use-after-free in connect timeout + - blk-mq: honor IO scheduler for multiqueue devices + - ieee802154: ca8210: prevent memory leak + - ARM: dts: am4372: Set memory bandwidth limit for DISPC + - net: dsa: qca8k: Use up to 7 ports for all operations + - MIPS: dts: ar9331: fix interrupt-controller size + - xen/efi: Set nonblocking callbacks + - loop: change queue block size to match when using DIO + - nl80211: fix null pointer dereference + - mac80211: fix txq null pointer dereference + - netfilter: nft_connlimit: disable bh on garbage collection + - net: mscc: ocelot: add missing of_node_put after calling + of_get_child_by_name + - net: dsa: rtl8366rb: add missing of_node_put after calling + of_get_child_by_name + - net: stmmac: xgmac: Not all Unicast addresses may be available + - net: stmmac: dwmac4: Always update the MAC Hash Filter + - net: stmmac: Correctly take timestamp for PTPv2 + - net: stmmac: Do not stop PHY if WoL is enabled + - net: ag71xx: fix mdio subnode support + - RISC-V: Clear load reservations while restoring hart contexts + - riscv: Fix memblock reservation for device tree blob + - drm/amdgpu: fix multiple memory leaks in acp_hw_init + - drm/amd/display: memory leak + - mips: Loongson: Fix the link time qualifier of 'serial_exit()' + - net: hisilicon: Fix usage of uninitialized variable in function + mdio_sc_cfg_reg_write() + - net: stmmac: Avoid deadlock on suspend/resume + - selftests: kvm: Fix libkvm build error + - lib: textsearch: fix escapes in example code + - s390/mm: fix -Wunused-but-set-variable warnings + - net: phy: allow for reset line to be tied to a sleepy GPIO controller + - net: phy: fix write to mii-ctrl1000 register + - namespace: fix namespace.pl script to support relative paths + - Convert filldir[64]() from __put_user() to unsafe_put_user() + - elf: don't use MAP_FIXED_NOREPLACE for elf executable mappings + - Make filldir[64]() verify the directory entry filename is valid + - uaccess: implement a proper unsafe_copy_to_user() and switch filldir over to + it + - filldir[64]: remove WARN_ON_ONCE() for bad directory entries + - net_sched: fix backward compatibility for TCA_KIND + - net_sched: fix backward compatibility for TCA_ACT_KIND + - libata/ahci: Fix PCS quirk application + - Revert "drm/radeon: Fix EEH during kexec" + - ocfs2: fix panic due to ocfs2_wq is null + - nvme-pci: Set the prp2 correctly when using more than 4k page + - ipv4: fix race condition between route lookup and invalidation + - ipv4: Return -ENETUNREACH if we can't create route but saddr is valid + - net: avoid potential infinite loop in tc_ctl_action() + - net: bcmgenet: Fix RGMII_MODE_EN value for GENET v1/2/3 + - net: bcmgenet: Set phydev->dev_flags only for internal PHYs + - net: i82596: fix dma_alloc_attr for sni_82596 + - net/ibmvnic: Fix EOI when running in XIVE mode. + - net: ipv6: fix listify ip6_rcv_finish in case of forwarding + - net: stmmac: disable/enable ptp_ref_clk in suspend/resume flow + - rxrpc: Fix possible NULL pointer access in ICMP handling + - sched: etf: Fix ordering of packets with same txtime + - sctp: change sctp_prot .no_autobind with true + - net: aquantia: temperature retrieval fix + - net: aquantia: when cleaning hw cache it should be toggled + - net: aquantia: do not pass lro session with invalid tcp checksum + - net: aquantia: correctly handle macvlan and multicast coexistence + - net: phy: micrel: Discern KSZ8051 and KSZ8795 PHYs + - net: phy: micrel: Update KSZ87xx PHY name + - net: avoid errors when trying to pop MLPS header on non-MPLS packets + - net/sched: fix corrupted L2 header with MPLS 'push' and 'pop' actions + - netdevsim: Fix error handling in nsim_fib_init and nsim_fib_exit + - net: ethernet: broadcom: have drivers select DIMLIB as needed + - net: phy: Fix "link partner" information disappear issue + - rxrpc: use rcu protection while reading sk->sk_user_data + - io_uring: fix bad inflight accounting for SETUP_IOPOLL|SETUP_SQTHREAD + - io_uring: Fix corrupted user_data + - USB: legousbtower: fix memleak on disconnect + - ALSA: hda/realtek - Add support for ALC711 + - ALSA: hda/realtek - Enable headset mic on Asus MJ401TA + - ALSA: usb-audio: Disable quirks for BOSS Katana amplifiers + - ALSA: hda - Force runtime PM on Nvidia HDMI codecs + - usb: udc: lpc32xx: fix bad bit shift operation + - USB: serial: ti_usb_3410_5052: fix port-close races + - USB: ldusb: fix memleak on disconnect + - USB: usblp: fix use-after-free on disconnect + - USB: ldusb: fix read info leaks + - binder: Don't modify VMA bounds in ->mmap handler + - MIPS: tlbex: Fix build_restore_pagemask KScratch restore + - staging: wlan-ng: fix exit return when sme->key_idx >= NUM_WEPKEYS + - scsi: zfcp: fix reaction on bit error threshold notification + - scsi: sd: Ignore a failure to sync cache due to lack of authorization + - scsi: core: save/restore command resid for error handling + - scsi: core: try to get module before removing device + - scsi: ch: Make it possible to open a ch device multiple times again + - Revert "Input: elantech - enable SMBus on new (2018+) systems" + - Input: da9063 - fix capability and drop KEY_SLEEP + - Input: synaptics-rmi4 - avoid processing unknown IRQs + - Input: st1232 - fix reporting multitouch coordinates + - ASoC: rsnd: Reinitialize bit clock inversion flag for every format setting + - ACPI: CPPC: Set pcc_data[pcc_ss_id] to NULL in acpi_cppc_processor_exit() + - ACPI: NFIT: Fix unlock on error in scrub_show() + - iwlwifi: pcie: change qu with jf devices to use qu configuration + - cfg80211: wext: avoid copying malformed SSIDs + - mac80211: Reject malformed SSID elements + - drm/ttm: Restore ttm prefaulting + - drm/panfrost: Handle resetting on timeout better + - drm/amdgpu: Bail earlier when amdgpu.cik_/si_support is not set to 1 + - drm/amdgpu/sdma5: fix mask value of POLL_REGMEM packet for pipe sync + - drm/i915/userptr: Never allow userptr into the mappable GGTT + - drm/i915: Favor last VBT child device with conflicting AUX ch/DDC pin + - drm/amdgpu/vce: fix allocation size in enc ring test + - drm/amdgpu/vcn: fix allocation size in enc ring test + - drm/amdgpu/uvd6: fix allocation size in enc ring test (v2) + - drm/amdgpu/uvd7: fix allocation size in enc ring test (v2) + - drm/amdgpu: user pages array memory leak fix + - drivers/base/memory.c: don't access uninitialized memmaps in + soft_offline_page_store() + - fs/proc/page.c: don't access uninitialized memmaps in fs/proc/page.c + - io_uring: Fix broken links with offloading + - io_uring: Fix race for sqes with userspace + - io_uring: used cached copies of sq->dropped and cq->overflow + - mmc: mxs: fix flags passed to dmaengine_prep_slave_sg + - mmc: cqhci: Commit descriptors before setting the doorbell + - mmc: sdhci-omap: Fix Tuning procedure for temperatures < -20C + - mm/memory-failure.c: don't access uninitialized memmaps in memory_failure() + - mm/slub: fix a deadlock in show_slab_objects() + - mm/page_owner: don't access uninitialized memmaps when reading + /proc/pagetypeinfo + - mm/memunmap: don't access uninitialized memmap in memunmap_pages() + - mm: memcg/slab: fix panic in __free_slab() caused by premature memcg pointer + release + - mm, compaction: fix wrong pfn handling in __reset_isolation_pfn() + - mm: memcg: get number of pages on the LRU list in memcgroup base on + lru_zone_size + - mm: memblock: do not enforce current limit for memblock_phys* family + - hugetlbfs: don't access uninitialized memmaps in pfn_range_valid_gigantic() + - mm/memory-failure: poison read receives SIGKILL instead of SIGBUS if mmaped + more than once + - zram: fix race between backing_dev_show and backing_dev_store + - xtensa: drop EXPORT_SYMBOL for outs*/ins* + - xtensa: fix change_bit in exclusive access option + - s390/zcrypt: fix memleak at release + - s390/kaslr: add support for R_390_GLOB_DAT relocation type + - lib/vdso: Make clock_getres() POSIX compliant again + - parisc: Fix vmap memory leak in ioremap()/iounmap() + - EDAC/ghes: Fix Use after free in ghes_edac remove path + - arm64: KVM: Trap VM ops when ARM64_WORKAROUND_CAVIUM_TX2_219_TVM is set + - arm64: Avoid Cavium TX2 erratum 219 when switching TTBR + - arm64: Enable workaround for Cavium TX2 erratum 219 when running SMT + - arm64: Allow CAVIUM_TX2_ERRATUM_219 to be selected + - CIFS: avoid using MID 0xFFFF + - cifs: Fix missed free operations + - CIFS: Fix use after free of file info structures + - perf/aux: Fix AUX output stopping + - tracing: Fix race in perf_trace_buf initialization + - fs/dax: Fix pmd vs pte conflict detection + - dm cache: fix bugs when a GFP_NOWAIT allocation fails + - irqchip/sifive-plic: Switch to fasteoi flow + - x86/boot/64: Make level2_kernel_pgt pages invalid outside kernel area + - x86/apic/x2apic: Fix a NULL pointer deref when handling a dying cpu + - x86/hyperv: Make vapic support x2apic mode + - pinctrl: cherryview: restore Strago DMI workaround for all versions + - pinctrl: armada-37xx: fix control of pins 32 and up + - pinctrl: armada-37xx: swap polarity on LED group + - btrfs: block-group: Fix a memory leak due to missing btrfs_put_block_group() + - Btrfs: add missing extents release on file extent cluster relocation error + - btrfs: don't needlessly create extent-refs kernel thread + - Btrfs: fix qgroup double free after failure to reserve metadata for delalloc + - Btrfs: check for the full sync flag while holding the inode lock during + fsync + - btrfs: tracepoints: Fix wrong parameter order for qgroup events + - btrfs: tracepoints: Fix bad entry members of qgroup events + - KVM: PPC: Book3S HV: XIVE: Ensure VP isn't already in use + - memstick: jmb38x_ms: Fix an error handling path in 'jmb38x_ms_probe()' + - cpufreq: Avoid cpufreq_suspend() deadlock on system shutdown + - ceph: just skip unrecognized info in ceph_reply_info_extra + - xen/netback: fix error path of xenvif_connect_data() + - PCI: PM: Fix pci_power_up() + - opp: of: drop incorrect lockdep_assert_held() + - of: reserved_mem: add missing of_node_put() for proper ref-counting + - blk-rq-qos: fix first node deletion of rq_qos_del() + - RDMA/cxgb4: Do not dma memory off of the stack + - Linux 5.3.8 + - [Config] CONFIG_CAVIUM_TX2_ERRATUM_219=y + * Eoan update: 5.3.10 upstream stable release (LP: #1852111) + - regulator: of: fix suspend-min/max-voltage parsing + - ASoC: samsung: arndale: Add missing OF node dereferencing + - ASoC: wm8994: Do not register inapplicable controls for WM1811 + - regulator: da9062: fix suspend_enable/disable preparation + - ASoC: topology: Fix a signedness bug in soc_tplg_dapm_widget_create() + - arm64: dts: allwinner: a64: pine64-plus: Add PHY regulator delay + - arm64: dts: allwinner: a64: Drop PMU node + - arm64: dts: allwinner: a64: sopine-baseboard: Add PHY regulator delay + - arm64: dts: Fix gpio to pinmux mapping + - regulator: ti-abb: Fix timeout in ti_abb_wait_txdone/ti_abb_clear_all_txdone + - pinctrl: intel: Allocate IRQ chip dynamic + - ASoC: SOF: loader: fix kernel oops on firmware boot failure + - ASoC: SOF: topology: fix parse fail issue for byte/bool tuple types + - ASoC: SOF: Intel: hda: fix warnings during FW load + - ASoC: SOF: Intel: initialise and verify FW crash dump data. + - ASoC: SOF: Intel: hda: Disable DMI L1 entry during capture + - ASoC: rt5682: add NULL handler to set_jack function + - ASoC: intel: sof_rt5682: add remove function to disable jack + - ASoC: intel: bytcr_rt5651: add null check to support_button_press + - regulator: pfuze100-regulator: Variable "val" in pfuze100_regulator_probe() + could be uninitialized + - ASoC: wm_adsp: Don't generate kcontrols without READ flags + - ASoc: rockchip: i2s: Fix RPM imbalance + - arm64: dts: rockchip: fix Rockpro64 RK808 interrupt line + - ARM: dts: logicpd-torpedo-som: Remove twl_keypad + - arm64: dts: rockchip: fix RockPro64 vdd-log regulator settings + - arm64: dts: rockchip: fix RockPro64 sdhci settings + - pinctrl: ns2: Fix off by one bugs in ns2_pinmux_enable() + - pinctrl: stmfx: fix null pointer on remove + - arm64: dts: zii-ultra: fix ARM regulator states + - ARM: dts: am3874-iceboard: Fix 'i2c-mux-idle-disconnect' usage + - ASoC: msm8916-wcd-digital: add missing MIX2 path for RX1/2 + - ASoC: simple_card_utils.h: Fix potential multiple redefinition error + - ARM: dts: Use level interrupt for omap4 & 5 wlcore + - ARM: mm: fix alignment handler faults under memory pressure + - scsi: qla2xxx: fix a potential NULL pointer dereference + - scsi: scsi_dh_alua: handle RTPG sense code correctly during state + transitions + - scsi: sni_53c710: fix compilation error + - scsi: fix kconfig dependency warning related to 53C700_LE_ON_BE + - ARM: 8908/1: add __always_inline to functions called from __get_user_check() + - ARM: 8914/1: NOMMU: Fix exc_ret for XIP + - arm64: dts: rockchip: fix RockPro64 sdmmc settings + - arm64: dts: rockchip: Fix usb-c on Hugsun X99 TV Box + - arm64: dts: lx2160a: Correct CPU core idle state name + - ARM: dts: imx6q-logicpd: Re-Enable SNVS power key + - ARM: dts: vf610-zii-scu4-aib: Specify 'i2c-mux-idle-disconnect' + - ARM: dts: imx7s: Correct GPT's ipg clock source + - arm64: dts: imx8mq: Use correct clock for usdhc's ipg clk + - arm64: dts: imx8mm: Use correct clock for usdhc's ipg clk + - perf tools: Fix resource leak of closedir() on the error paths + - perf c2c: Fix memory leak in build_cl_output() + - 8250-men-mcb: fix error checking when get_num_ports returns -ENODEV + - perf kmem: Fix memory leak in compact_gfp_flags() + - ARM: davinci: dm365: Fix McBSP dma_slave_map entry + - drm/amdgpu: fix potential VM faults + - drm/amdgpu: fix error handling in amdgpu_bo_list_create + - scsi: target: core: Do not overwrite CDB byte 1 + - scsi: hpsa: add missing hunks in reset-patch + - ASoC: Intel: sof-rt5682: add a check for devm_clk_get + - ASoC: SOF: control: return true when kcontrol values change + - tracing: Fix "gfp_t" format for synthetic events + - ARM: dts: bcm2837-rpi-cm3: Avoid leds-gpio probing issue + - i2c: aspeed: fix master pending state handling + - drm/komeda: Don't flush inactive pipes + - ARM: 8926/1: v7m: remove register save to stack before svc + - selftests: kvm: vmx_set_nested_state_test: don't check for VMX support twice + - selftests: kvm: fix sync_regs_test with newer gccs + - ALSA: hda: Add Tigerlake/Jasperlake PCI ID + - of: unittest: fix memory leak in unittest_data_add + - MIPS: bmips: mark exception vectors as char arrays + - irqchip/gic-v3-its: Use the exact ITSList for VMOVP + - i2c: mt65xx: fix NULL ptr dereference + - i2c: stm32f7: fix first byte to send in slave mode + - i2c: stm32f7: fix a race in slave mode with arbitration loss irq + - i2c: stm32f7: remove warning when compiling with W=1 + - cifs: Fix cifsInodeInfo lock_sem deadlock when reconnect occurs + - irqchip/sifive-plic: Skip contexts except supervisor in plic_init() + - nbd: protect cmd->status with cmd->lock + - nbd: handle racing with error'ed out commands + - cxgb4: fix panic when attaching to ULD fail + - cxgb4: request the TX CIDX updates to status page + - dccp: do not leak jiffies on the wire + - erspan: fix the tun_info options_len check for erspan + - inet: stop leaking jiffies on the wire + - net: annotate accesses to sk->sk_incoming_cpu + - net: annotate lockless accesses to sk->sk_napi_id + - net: dsa: bcm_sf2: Fix IMP setup for port different than 8 + - net: ethernet: ftgmac100: Fix DMA coherency issue with SW checksum + - net: fix sk_page_frag() recursion from memory reclaim + - net: hisilicon: Fix ping latency when deal with high throughput + - net/mlx4_core: Dynamically set guaranteed amount of counters per VF + - netns: fix GFP flags in rtnl_net_notifyid() + - net: rtnetlink: fix a typo fbd -> fdb + - net: usb: lan78xx: Disable interrupts before calling generic_handle_irq() + - SAUCE: Revert "UBUNTU: SAUCE: (no-up) net: Zeroing the structure + ethtool_wolinfo in ethtool_get_wol()" + - net: Zeroing the structure ethtool_wolinfo in ethtool_get_wol() + - selftests: net: reuseport_dualstack: fix uninitalized parameter + - udp: fix data-race in udp_set_dev_scratch() + - vxlan: check tun_info options_len properly + - net: add skb_queue_empty_lockless() + - udp: use skb_queue_empty_lockless() + - net: use skb_queue_empty_lockless() in poll() handlers + - net: use skb_queue_empty_lockless() in busy poll contexts + - net: add READ_ONCE() annotation in __skb_wait_for_more_packets() + - ipv4: fix route update on metric change. + - selftests: fib_tests: add more tests for metric update + - net/smc: fix closing of fallback SMC sockets + - net/smc: keep vlan_id for SMC-R in smc_listen_work() + - keys: Fix memory leak in copy_net_ns + - net: phylink: Fix phylink_dbg() macro + - rxrpc: Fix handling of last subpacket of jumbo packet + - net/mlx5e: Determine source port properly for vlan push action + - net/mlx5e: Remove incorrect match criteria assignment line + - net/mlx5e: Initialize on stack link modes bitmap + - net/mlx5: Fix flow counter list auto bits struct + - net/smc: fix refcounting for non-blocking connect() + - net/mlx5: Fix rtable reference leak + - mlxsw: core: Unpublish devlink parameters during reload + - r8169: fix wrong PHY ID issue with RTL8168dp + - net/mlx5e: Fix ethtool self test: link speed + - net/mlx5e: Fix handling of compressed CQEs in case of low NAPI budget + - ipv4: fix IPSKB_FRAG_PMTU handling with fragmentation + - net: bcmgenet: don't set phydev->link from MAC + - net: dsa: b53: Do not clear existing mirrored port mask + - net: dsa: fix switch tree list + - net: ensure correct skb->tstamp in various fragmenters + - net: hns3: fix mis-counting IRQ vector numbers issue + - net: netem: fix error path for corrupted GSO frames + - net: reorder 'struct net' fields to avoid false sharing + - net: usb: lan78xx: Connect PHY before registering MAC + - r8152: add device id for Lenovo ThinkPad USB-C Dock Gen 2 + - net: netem: correct the parent's backlog when corrupted packet was dropped + - net: phy: bcm7xxx: define soft_reset for 40nm EPHY + - net: bcmgenet: reset 40nm EPHY on energy detect + - net/flow_dissector: switch to siphash + - platform/x86: pmc_atom: Add Siemens SIMATIC IPC227E to critclk_systems DMI + table + - CIFS: Fix retry mid list corruption on reconnects + - selftests/powerpc: Add test case for tlbie vs mtpidr ordering issue + - selftests/powerpc: Fix compile error on tlbie_test due to newer gcc + - ASoC: pcm3168a: The codec does not support S32_LE + - arm64: dts: ti: k3-am65-main: Fix gic-its node unit-address + - usb: gadget: udc: core: Fix segfault if udc_bind_to_driver() for pending + driver fails + - Linux 5.3.10 + - [Config] SND_SOC_SOF_HDA_ALWAYS_ENABLE_DMI_L1=n + * Some EFI systems fail to boot in efi_init() when booted via maas + (LP: #1851810) + - efi: efi_get_memory_map -- increase map headroom + * dkms artifacts may expire from the pool (LP: #1850958) + - [Packaging] dkms -- try launchpad librarian for pool downloads + - [Packaging] dkms -- dkms-build quieten wget verbiage + * update ENA driver to version 2.1.0 (LP: #1850175) + - net: ena: don't wake up tx queue when down + - net: ena: clean up indentation issue + * drm/i915: Add support for another CMP-H PCH (LP: #1848491) + - drm/i915/cml: Add second PCH ID for CMP + * Add Intel Comet Lake ethernet support (LP: #1848555) + - SAUCE: e1000e: Add support for Comet Lake + * seccomp: fix SECCOMP_USER_NOTIF_FLAG_CONTINUE test (LP: #1849281) + - SAUCE: seccomp: rework define for SECCOMP_USER_NOTIF_FLAG_CONTINUE + - SAUCE: seccomp: avoid overflow in implicit constant conversion + - SAUCE: seccomp: fix SECCOMP_USER_NOTIF_FLAG_CONTINUE test + * tsc marked unstable after entered PC10 on Intel CoffeeLake (LP: #1840239) + - SAUCE: x86/intel: Disable HPET on Intel Coffe Lake platforms + - SAUCE: x86/intel: Disable HPET on Intel Ice Lake platforms + * cloudimg: no iavf/i40evf module so no network available with SR-IOV enabled + cloud (LP: #1848481) + - [Packaging] include iavf/i40evf in generic + * High power consumption using 5.0.0-25-generic (LP: #1840835) + - PCI: Add a helper to check Power Resource Requirements _PR3 existence + - ALSA: hda: Allow HDA to be runtime suspended when dGPU is not bound to a + driver + - PCI: Fix missing inline for pci_pr3_present() + * CML CPUIDs (LP: #1843794) + - x86/cpu: Add Comet Lake to the Intel CPU models header + * shiftfs: prevent exceeding project quotas (LP: #1849483) + - SAUCE: shiftfs: drop CAP_SYS_RESOURCE from effective capabilities + * shiftfs: fix fallocate() (LP: #1849482) + - SAUCE: shiftfs: setup correct s_maxbytes limit + * Bluetooth: hidp: Fix assumptions on the return value of hidp_send_message + (LP: #1850443) + - Bluetooth: hidp: Fix assumptions on the return value of hidp_send_message + * [SRU][B/OEM-B/OEM-OSP1/D/E] UBUNTU: SAUCE: add rtl623 codec support and fix + mic issues (LP: #1850599) + - SAUCE: ALSA: hda/realtek - Add support for ALC623 + - SAUCE: ALSA: hda/realtek - Fix 2 front mics of codec 0x623 + * Suppress "hid_field_extract() called with n (192) > 32!" message floods + (LP: #1850600) + - HID: core: reformat and reduce hid_printk macros + - HID: core: Add printk_once variants to hid_warn() etc + - HID: core: fix dmesg flooding if report field larger than 32bit + * ubuntu-aufs-modified mmap_region() breaks refcounting in overlayfs/shiftfs + error path (LP: #1850994) // CVE-2019-15794 + - SAUCE: shiftfs: Restore vm_file value when lower fs mmap fails + - SAUCE: ovl: Restore vm_file value when lower fs mmap fails + * s_iflags overlap prevents unprivileged overlayfs mounts (LP: #1851677) + - SAUCE: fs: Move SB_I_NOSUID to the top of s_iflags + * root can lift kernel lockdown (LP: #1851380) + - SAUCE: (efi-lockdown) Really don't allow lifting lockdown from userspace + * Colour banding in Lenovo G50-80 laptop display (i915) (LP: #1819968) // Eoan + update: v5.3.8 upstream stable release (LP: #1850456) + - drm/edid: Add 6 bpc quirk for SDC panel in Lenovo G50 + + [ Ubuntu: 5.3.0-23.25 ] + + * Incomplete i915 fix for 64-bit x86 kernels (LP: #1852141) // CVE-2019-0155 + - SAUCE: drm/i915/cmdparser: Fix jump whitelist clearing + + -- Kleber Sacilotto de Souza Thu, 14 Nov 2019 16:49:20 +0100 + +linux-azure (5.3.0-1007.8) eoan; urgency=medium + + * CVE-2019-11135 + - [Config] azure: Disable TSX by default when possible + + [ Ubuntu: 5.3.0-22.24 ] + + * [REGRESSION] md/raid0: cannot assemble multi-zone RAID0 with default_layout + setting (LP: #1849682) + - Revert "md/raid0: avoid RAID0 data corruption due to layout confusion." + * refcount underflow and type confusion in shiftfs (LP: #1850867) // CVE-2019-15793 + - SAUCE: shiftfs: Correct id translation for lower fs operations + - SAUCE: shiftfs: prevent type confusion + - SAUCE: shiftfs: Fix refcount underflow in btrfs ioctl handling + * CVE-2018-12207 + - kvm: x86, powerpc: do not allow clearing largepages debugfs entry + - SAUCE: KVM: vmx, svm: always run with EFER.NXE=1 when shadow paging is + active + - SAUCE: x86: Add ITLB_MULTIHIT bug infrastructure + - SAUCE: kvm: mmu: ITLB_MULTIHIT mitigation + - SAUCE: kvm: Add helper function for creating VM worker threads + - SAUCE: kvm: x86: mmu: Recovery of shattered NX large pages + - SAUCE: cpu/speculation: Uninline and export CPU mitigations helpers + - SAUCE: kvm: x86: mmu: Apply global mitigations knob to ITLB_MULTIHIT + * CVE-2019-11135 + - x86/msr: Add the IA32_TSX_CTRL MSR + - x86/cpu: Add a helper function x86_read_arch_cap_msr() + - x86/cpu: Add a "tsx=" cmdline option with TSX disabled by default + - x86/speculation/taa: Add mitigation for TSX Async Abort + - x86/speculation/taa: Add sysfs reporting for TSX Async Abort + - kvm/x86: Export MDS_NO=0 to guests when TSX is enabled + - x86/tsx: Add "auto" option to the tsx= cmdline parameter + - x86/speculation/taa: Add documentation for TSX Async Abort + - x86/tsx: Add config options to set tsx=on|off|auto + - [Config] Disable TSX by default when possible + * CVE-2019-0154 + - SAUCE: drm/i915: Lower RM timeout to avoid DSI hard hangs + - SAUCE: drm/i915/gen8+: Add RC6 CTX corruption WA + * CVE-2019-0155 + - SAUCE: drm/i915: Rename gen7 cmdparser tables + - SAUCE: drm/i915: Disable Secure Batches for gen6+ + - SAUCE: drm/i915: Remove Master tables from cmdparser + - SAUCE: drm/i915: Add support for mandatory cmdparsing + - SAUCE: drm/i915: Support ro ppgtt mapped cmdparser shadow buffers + - SAUCE: drm/i915: Allow parsing of unsized batches + - SAUCE: drm/i915: Add gen9 BCS cmdparsing + - SAUCE: drm/i915/cmdparser: Use explicit goto for error paths + - SAUCE: drm/i915/cmdparser: Add support for backward jumps + - SAUCE: drm/i915/cmdparser: Ignore Length operands during command matching + + -- Stefan Bader Mon, 11 Nov 2019 10:04:26 +0100 + +linux-azure (5.3.0-1006.6) eoan; urgency=medium + + * eoan/linux-azure: 5.3.0-1006.6 -proposed tracker (LP: #1850480) + + [ Ubuntu: 5.3.0-21.22 ] + + * eoan/linux: 5.3.0-21.22 -proposed tracker (LP: #1850486) + * Fix signing of staging modules in eoan (LP: #1850234) + - [Packaging] Leave unsigned modules unsigned after adding .gnu_debuglink + + -- Sultan Alsawaf Tue, 29 Oct 2019 16:34:47 -0700 + +linux-azure (5.3.0-1005.5) eoan; urgency=medium + + * eoan/linux-azure: 5.3.0-1005.5 -proposed tracker (LP: #1849058) + + * eoan: alsa/sof: Enable SOF_HDA link and codec (LP: #1848490) + - [Config] linux-azure: ignore SOF_HDA link and codec + + * Eoan update: v5.3.5 upstream stable release (LP: #1848047) + - [Config] disable CONFIG_RTC_DRV_BD70528 + + * Eoan update: 5.3.7 upstream stable release (LP: #1848750) + - [Config] disable CONFIG_FB_TFT + + [ Ubuntu: 5.3.0-20.21 ] + + * eoan/linux: 5.3.0-20.21 -proposed tracker (LP: #1849064) + * eoan: alsa/sof: Enable SOF_HDA link and codec (LP: #1848490) + - [Config] Enable SOF_HDA link and codec + * Eoan update: 5.3.7 upstream stable release (LP: #1848750) + - panic: ensure preemption is disabled during panic() + - [Config] updateconfigs for USB_RIO500 + - USB: rio500: Remove Rio 500 kernel driver + - USB: yurex: Don't retry on unexpected errors + - USB: yurex: fix NULL-derefs on disconnect + - USB: usb-skeleton: fix runtime PM after driver unbind + - USB: usb-skeleton: fix NULL-deref on disconnect + - xhci: Fix false warning message about wrong bounce buffer write length + - xhci: Prevent device initiated U1/U2 link pm if exit latency is too long + - xhci: Check all endpoints for LPM timeout + - xhci: Fix USB 3.1 capability detection on early xHCI 1.1 spec based hosts + - usb: xhci: wait for CNR controller not ready bit in xhci resume + - xhci: Prevent deadlock when xhci adapter breaks during init + - xhci: Fix NULL pointer dereference in xhci_clear_tt_buffer_complete() + - USB: adutux: fix use-after-free on disconnect + - USB: adutux: fix NULL-derefs on disconnect + - USB: adutux: fix use-after-free on release + - USB: iowarrior: fix use-after-free on disconnect + - USB: iowarrior: fix use-after-free on release + - USB: iowarrior: fix use-after-free after driver unbind + - USB: usblp: fix runtime PM after driver unbind + - USB: chaoskey: fix use-after-free on release + - USB: ldusb: fix NULL-derefs on driver unbind + - serial: uartlite: fix exit path null pointer + - serial: uartps: Fix uartps_major handling + - USB: serial: keyspan: fix NULL-derefs on open() and write() + - USB: serial: ftdi_sio: add device IDs for Sienna and Echelon PL-20 + - USB: serial: option: add Telit FN980 compositions + - USB: serial: option: add support for Cinterion CLS8 devices + - USB: serial: fix runtime PM after driver unbind + - USB: usblcd: fix I/O after disconnect + - USB: microtek: fix info-leak at probe + - USB: dummy-hcd: fix power budget for SuperSpeed mode + - usb: renesas_usbhs: gadget: Do not discard queues in + usb_ep_set_{halt,wedge}() + - usb: renesas_usbhs: gadget: Fix usb_ep_set_{halt,wedge}() behavior + - usb: typec: tcpm: usb: typec: tcpm: Fix a signedness bug in + tcpm_fw_get_caps() + - usb: typec: ucsi: ccg: Remove run_isr flag + - usb: typec: ucsi: displayport: Fix for the mode entering routine + - USB: legousbtower: fix slab info leak at probe + - USB: legousbtower: fix deadlock on disconnect + - USB: legousbtower: fix potential NULL-deref on disconnect + - USB: legousbtower: fix open after failed reset request + - USB: legousbtower: fix use-after-free on release + - mei: me: add comet point (lake) LP device ids + - mei: avoid FW version request on Ibex Peak and earlier + - gpio: eic: sprd: Fix the incorrect EIC offset when toggling + - staging/fbtft: Depend on OF + - staging: bcm2835-audio: Fix draining behavior regression + - Staging: fbtft: fix memory leak in fbtft_framebuffer_alloc + - staging: rtl8188eu: fix HighestRate check in odm_ARFBRefresh_8188E() + - staging: vt6655: Fix memory leak in vt6655_probe + - iio: adc: hx711: fix bug in sampling of data + - iio: adc: ad799x: fix probe error handling + - iio: adc: axp288: Override TS pin bias current for some models + - iio: adc: stm32-adc: move registers definitions + - iio: adc: stm32-adc: fix a race when using several adcs with dma and irq + - iio: light: opt3001: fix mutex unlock race + - iio: light: add missing vcnl4040 of_compatible + - iio: accel: adxl372: Fix/remove limitation for FIFO samples + - iio: accel: adxl372: Fix push to buffers lost samples + - iio: accel: adxl372: Perform a reset at start up + - efivar/ssdt: Don't iterate over EFI vars if no SSDT override was specified + - perf llvm: Don't access out-of-scope array + - perf inject jit: Fix JIT_CODE_MOVE filename + - drm/i915: Perform GGTT restore much earlier during resume + - selinux: fix context string corruption in convert_context() + - CIFS: Gracefully handle QueryInfo errors during open + - CIFS: Force revalidate inode when dentry is stale + - CIFS: Force reval dentry if LOOKUP_REVAL flag is set + - cifs: use cifsInodeInfo->open_file_lock while iterating to avoid a panic + - kernel/sysctl.c: do not override max_threads provided by userspace + - mm/z3fold.c: claim page in the beginning of free + - mm/page_alloc.c: fix a crash in free_pages_prepare() + - mm/vmpressure.c: fix a signedness bug in vmpressure_register_event() + - IB/core: Fix wrong iterating on ports + - firmware: google: increment VPD key_len properly + - gpio: fix getting nonexclusive gpiods from DT + - gpiolib: don't clear FLAG_IS_OUT when emulating open-drain/open-source + - btrfs: relocation: fix use-after-free on dead relocation roots + - btrfs: allocate new inode in NOFS context + - btrfs: fix balance convert to single on 32-bit host CPUs + - Btrfs: fix memory leak due to concurrent append writes with fiemap + - btrfs: fix incorrect updating of log root tree + - btrfs: fix uninitialized ret in ref-verify + - NFS: Fix O_DIRECT accounting of number of bytes read/written + - MIPS: Disable Loongson MMI instructions for kernel build + - MIPS: elf_hwcap: Export userspace ASEs + - RDMA/vmw_pvrdma: Free SRQ only once + - ACPI/PPTT: Add support for ACPI 6.3 thread flag + - arm64: topology: Use PPTT to determine if PE is a thread + - iio: light: fix vcnl4000 devicetree hooks + - Fix the locking in dcache_readdir() and friends + - drm/i915: Bump skl+ max plane width to 5k for linear/x-tiled + - drm/i915: Whitelist COMMON_SLICE_CHICKEN2 + - drm/i915: Mark contents as dirty on a write fault + - drm/msm: Use the correct dma_sync calls harder + - media: stkwebcam: fix runtime PM after driver unbind + - arm64/sve: Fix wrong free for task->thread.sve_state + - tracing/hwlat: Report total time spent in all NMIs during the sample + - tracing/hwlat: Don't ignore outer-loop duration when calculating max_latency + - ftrace: Get a reference counter for the trace_array on filter files + - tracing: Get trace_array reference for available_tracers files + - hwmon: Fix HWMON_P_MIN_ALARM mask + - mtd: rawnand: au1550nd: Fix au_read_buf16() prototype + - x86/asm: Fix MWAITX C-state hint value + - io_uring: only flush workqueues on fileset removal + - efi/tpm: Fix sanity check of unsigned tbl_size being less than zero + - Linux 5.3.7 + - [Packaging] Remove now un-used modules for amd64 + - [Config] Remove Rio500 + - [Config] Remove deselected modules + * Eoan update: v5.3.5 upstream stable release (LP: #1848047) + - drm/vkms: Fix crc worker races + - drm/mcde: Fix uninitialized variable + - drm/bridge: tc358767: Increase AUX transfer length limit + - drm/vkms: Avoid assigning 0 for possible_crtc + - drm/panel: simple: fix AUO g185han01 horizontal blanking + - drm/amd/display: add monitor patch to add T7 delay + - drm/amd/display: Power-gate all DSCs at driver init time + - drm/amd/display: fix not calling ppsmu to trigger PME + - drm/amd/display: Clear FEC_READY shadow register if DPCD write fails + - drm/amd/display: Copy GSL groups when committing a new context + - video: ssd1307fb: Start page range at page_offset + - drm/tinydrm/Kconfig: drivers: Select BACKLIGHT_CLASS_DEVICE + - drm/stm: attach gem fence to atomic state + - drm/bridge: sii902x: fix missing reference to mclk clock + - drm/panel: check failure cases in the probe func + - drm/rockchip: Check for fast link training before enabling psr + - drm/amdgpu: Fix hard hang for S/G display BOs. + - drm/amd/display: Use proper enum conversion functions + - drm/radeon: Fix EEH during kexec + - gpu: drm: radeon: Fix a possible null-pointer dereference in + radeon_connector_set_property() + - clk: imx8mq: Mark AHB clock as critical + - PCI: rpaphp: Avoid a sometimes-uninitialized warning + - pinctrl: stmfx: update pinconf settings + - ipmi_si: Only schedule continuously in the thread in maintenance mode + - clk: qoriq: Fix -Wunused-const-variable + - clk: ingenic/jz4740: Fix "pll half" divider not read/written properly + - clk: sunxi-ng: v3s: add missing clock slices for MMC2 module clocks + - drm/amd/display: fix issue where 252-255 values are clipped + - drm/amd/display: Fix frames_to_insert math + - drm/amd/display: reprogram VM config when system resume + - drm/amd/display: Register VUPDATE_NO_LOCK interrupts for DCN2 + - powerpc/powernv/ioda2: Allocate TCE table levels on demand for default DMA + window + - clk: actions: Don't reference clk_init_data after registration + - clk: sirf: Don't reference clk_init_data after registration + - clk: meson: axg-audio: Don't reference clk_init_data after registration + - clk: sprd: Don't reference clk_init_data after registration + - clk: zx296718: Don't reference clk_init_data after registration + - clk: sunxi: Don't call clk_hw_get_name() on a hw that isn't registered + - powerpc/xmon: Check for HV mode when dumping XIVE info from OPAL + - powerpc/rtas: use device model APIs and serialization during LPM + - powerpc/ptdump: fix walk_pagetables() address mismatch + - powerpc/futex: Fix warning: 'oldval' may be used uninitialized in this + function + - powerpc/64s/radix: Fix memory hotplug section page table creation + - powerpc/pseries/mobility: use cond_resched when updating device tree + - powerpc/perf: fix imc allocation failure handling + - pinctrl: tegra: Fix write barrier placement in pmx_writel + - powerpc/eeh: Clear stale EEH_DEV_NO_HANDLER flag + - vfio_pci: Restore original state on release + - drm/amdgpu/sdma5: fix number of sdma5 trap irq types for navi1x + - drm/nouveau/kms/tu102-: disable input lut when input is already FP16 + - drm/nouveau/volt: Fix for some cards having 0 maximum voltage + - pinctrl: amd: disable spurious-firing GPIO IRQs + - clk: renesas: mstp: Set GENPD_FLAG_ALWAYS_ON for clock domain + - clk: renesas: cpg-mssr: Set GENPD_FLAG_ALWAYS_ON for clock domain + - drm/amd/display: support spdif + - drm/amd/powerpaly: fix navi series custom peak level value error + - drm/amd/display: fix MPO HUBP underflow with Scatter Gather + - drm/amd/display: fix trigger not generated for freesync + - selftests/powerpc: Retry on host facility unavailable + - kbuild: Do not enable -Wimplicit-fallthrough for clang for now + - drm/amdgpu/si: fix ASIC tests + - powerpc/64s/exception: machine check use correct cfar for late handler + - pstore: fs superblock limits + - powerpc/eeh: Clean up EEH PEs after recovery finishes + - clk: qcom: gcc-sdm845: Use floor ops for sdcc clks + - powerpc/pseries: correctly track irq state in default idle + - pinctrl: meson-gxbb: Fix wrong pinning definition for uart_c + - mailbox: mediatek: cmdq: clear the event in cmdq initial flow + - ARM: dts: dir685: Drop spi-cpol from the display + - arm64: fix unreachable code issue with cmpxchg + - clk: at91: select parent if main oscillator or bypass is enabled + - clk: imx: pll14xx: avoid glitch when set rate + - clk: imx: clk-pll14xx: unbypass PLL by default + - clk: Make clk_bulk_get_all() return a valid "id" + - powerpc: dump kernel log before carrying out fadump or kdump + - mbox: qcom: add APCS child device for QCS404 + - clk: sprd: add missing kfree + - scsi: core: Reduce memory required for SCSI logging + - dma-buf/sw_sync: Synchronize signal vs syncpt free + - f2fs: fix to drop meta/node pages during umount + - ext4: fix potential use after free after remounting with noblock_validity + - MIPS: Ingenic: Disable broken BTB lookup optimization. + - MIPS: Don't use bc_false uninitialized in __mm_isBranchInstr + - MIPS: tlbex: Explicitly cast _PAGE_NO_EXEC to a boolean + - i2c-cht-wc: Fix lockdep warning + - PCI: tegra: Fix OF node reference leak + - HID: wacom: Fix several minor compiler warnings + - rtc: bd70528: fix driver dependencies + - mips/atomic: Fix loongson_llsc_mb() wreckage + - PCI: pci-hyperv: Fix build errors on non-SYSFS config + - PCI: layerscape: Add the bar_fixed_64bit property to the endpoint driver + - livepatch: Nullify obj->mod in klp_module_coming()'s error path + - mips/atomic: Fix smp_mb__{before,after}_atomic() + - ARM: 8898/1: mm: Don't treat faults reported from cache maintenance as + writes + - soundwire: intel: fix channel number reported by hardware + - PCI: mobiveil: Fix the CPU base address setup in inbound window + - ARM: 8875/1: Kconfig: default to AEABI w/ Clang + - rtc: snvs: fix possible race condition + - rtc: pcf85363/pcf85263: fix regmap error in set_time + - power: supply: register HWMON devices with valid names + - selinux: fix residual uses of current_security() for the SELinux blob + - PCI: Add pci_info_ratelimited() to ratelimit PCI separately + - HID: apple: Fix stuck function keys when using FN + - PCI: rockchip: Propagate errors for optional regulators + - PCI: histb: Propagate errors for optional regulators + - PCI: imx6: Propagate errors for optional regulators + - PCI: exynos: Propagate errors for optional PHYs + - security: smack: Fix possible null-pointer dereferences in + smack_socket_sock_rcv_skb() + - PCI: Use static const struct, not const static struct + - ARM: 8905/1: Emit __gnu_mcount_nc when using Clang 10.0.0 or newer + - ARM: 8903/1: ensure that usable memory in bank 0 starts from a PMD-aligned + address + - i2c: tegra: Move suspend handling to NOIRQ phase + - block, bfq: push up injection only after setting service time + - fat: work around race with userspace's read via blockdev while mounting + - pktcdvd: remove warning on attempting to register non-passthrough dev + - hypfs: Fix error number left in struct pointer member + - tools/power/x86/intel-speed-select: Fix high priority core mask over count + - crypto: hisilicon - Fix double free in sec_free_hw_sgl() + - mm: add dummy can_do_mlock() helper + - kbuild: clean compressed initramfs image + - ocfs2: wait for recovering done after direct unlock request + - kmemleak: increase DEBUG_KMEMLEAK_EARLY_LOG_SIZE default to 16K + - arm64: consider stack randomization for mmap base only when necessary + - mips: properly account for stack randomization and stack guard gap + - arm: properly account for stack randomization and stack guard gap + - arm: use STACK_TOP when computing mmap base address + - cxgb4:Fix out-of-bounds MSI-X info array access + - erspan: remove the incorrect mtu limit for erspan + - hso: fix NULL-deref on tty open + - ipv6: drop incoming packets having a v4mapped source address + - ipv6: Handle missing host route in __ipv6_ifa_notify + - net: ipv4: avoid mixed n_redirects and rate_tokens usage + - net: qlogic: Fix memory leak in ql_alloc_large_buffers + - net: sched: taprio: Fix potential integer overflow in + taprio_set_picos_per_byte + - net: Unpublish sk from sk_reuseport_cb before call_rcu + - nfc: fix memory leak in llcp_sock_bind() + - qmi_wwan: add support for Cinterion CLS8 devices + - rxrpc: Fix rxrpc_recvmsg tracepoint + - sch_cbq: validate TCA_CBQ_WRROPT to avoid crash + - sch_dsmark: fix potential NULL deref in dsmark_init() + - tipc: fix unlimited bundling of small messages + - udp: fix gso_segs calculations + - vsock: Fix a lockdep warning in __vsock_release() + - net: dsa: rtl8366: Check VLAN ID and not ports + - tcp: adjust rto_base in retransmits_timed_out() + - udp: only do GSO if # of segs > 1 + - net/rds: Fix error handling in rds_ib_add_one() + - net: dsa: sja1105: Initialize the meta_lock + - xen-netfront: do not use ~0U as error return value for xennet_fill_frags() + - net: dsa: sja1105: Fix sleeping while atomic in .port_hwtstamp_set + - ptp_qoriq: Initialize the registers' spinlock before calling + ptp_qoriq_settime + - net: dsa: sja1105: Ensure PTP time for rxtstamp reconstruction is not in the + past + - net: dsa: sja1105: Prevent leaking memory + - net: socionext: netsec: always grab descriptor lock + - net: sched: cbs: Avoid division by zero when calculating the port rate + - net: sched: taprio: Avoid division by zero on invalid link speed + - Smack: Don't ignore other bprm->unsafe flags if LSM_UNSAFE_PTRACE is set + - smack: use GFP_NOFS while holding inode_smack::smk_lock + - dm raid: fix updating of max_discard_sectors limit + - dm zoned: fix invalid memory access + - NFC: fix attrs checks in netlink interface + - kexec: bail out upon SIGKILL when allocating memory. + - KVM: hyperv: Fix Direct Synthetic timers assert an interrupt w/o + lapic_in_kernel + - 9p/cache.c: Fix memory leak in v9fs_cache_session_get_cookie + - vfs: set fs_context::user_ns for reconfigure + - Linux 5.3.5 + - [Config] add rtc-bd70528 to modules.ignore + - [Packaging] remove rtc-bd70528 from modules + * Suspend stopped working from 4.4.0-157 onwards (LP: #1844021) // Eoan + update: 5.3.7 upstream stable release (LP: #1848750) + - xhci: Increase STS_SAVE timeout in xhci_suspend() + * CVE-2019-17666 + - SAUCE: rtlwifi: Fix potential overflow on P2P code + * md raid0/linear doesn't show error state if an array member is removed and + allows successful writes (LP: #1847773) + - md raid0/linear: Mark array as 'broken' and fail BIOs if a member is gone + * linux won't build when new virtualbox version is present on the archive + (LP: #1848788) + - [Packaging]: download virtualbox from sources + * seccomp: add SECCOMP_USER_NOTIF_FLAG_CONTINUE (LP: #1847744) + - SAUCE: seccomp: add SECCOMP_USER_NOTIF_FLAG_CONTINUE + - SAUCE: seccomp: test SECCOMP_USER_NOTIF_FLAG_CONTINUE + * Change Config Option CONFIG_MEMORY_HOTPLUG_DEFAULT_ONLINE for s390x from yes + to no (LP: #1848492) + - [Config] Change Config Option CONFIG_MEMORY_HOTPLUG_DEFAULT_ONLINE for s390x + from yes to no + * shiftfs: rework how shiftfs opens files (LP: #1846265) + - SAUCE: shiftfs: rework how shiftfs opens files + * fdatasync performance regression on 5.0 kernels (LP: #1847641) + - blk-wbt: fix performance regression in wbt scale_up/scale_down + * bcache: Performance degradation when querying priority_stats (LP: #1840043) + - bcache: add cond_resched() in __bch_cache_cmp() + * drm/i915: Fix the issue of "azx_get_response timeout" for hdmi audio on ICL + platforms (LP: #1847192) + - SAUCE: drm/i915: Fix audio power up sequence for gen10+ display + - SAUCE: drm/i915: extend audio CDCLK>=2*BCLK constraint to more platforms + * Add installer support for iwlmvm adapters (LP: #1848236) + - d-i: Add iwlmvm to nic-modules + * Eoan update: v5.3.6 upstream stable release (LP: #1848039) + - s390/process: avoid potential reading of freed stack + - KVM: s390: Test for bad access register and size at the start of S390_MEM_OP + - s390/topology: avoid firing events before kobjs are created + - s390/cio: avoid calling strlen on null pointer + - s390/cio: exclude subchannels with no parent from pseudo check + - KVM: s390: fix __insn32_query() inline assembly + - KVM: PPC: Book3S: Enable XIVE native capability only if OPAL has required + functions + - KVM: PPC: Book3S HV: XIVE: Free escalation interrupts before disabling the + VP + - KVM: PPC: Book3S HV: Don't push XIVE context when not using XIVE device + - KVM: PPC: Book3S HV: Fix race in re-enabling XIVE escalation interrupts + - KVM: PPC: Book3S HV: Check for MMU ready on piggybacked virtual cores + - KVM: PPC: Book3S HV: Don't lose pending doorbell request on migration on P9 + - KVM: X86: Fix userspace set invalid CR4 + - nbd: fix max number of supported devs + - PM / devfreq: tegra: Fix kHz to Hz conversion + - ASoC: Define a set of DAPM pre/post-up events + - ASoC: sgtl5000: Improve VAG power and mute control + - powerpc/xive: Implement get_irqchip_state method for XIVE to fix shutdown + race + - powerpc/mce: Fix MCE handling for huge pages + - powerpc/mce: Schedule work from irq_work + - powerpc/603: Fix handling of the DIRTY flag + - powerpc/32s: Fix boot failure with DEBUG_PAGEALLOC without KASAN. + - powerpc/ptdump: Fix addresses display on PPC32 + - powerpc/powernv: Restrict OPAL symbol map to only be readable by root + - powerpc/pseries: Fix cpu_hotplug_lock acquisition in resize_hpt() + - powerpc/powernv/ioda: Fix race in TCE level allocation + - powerpc/kasan: Fix parallel loading of modules. + - powerpc/kasan: Fix shadow area set up for modules. + - powerpc/book3s64/mm: Don't do tlbie fixup for some hardware revisions + - powerpc/book3s64/radix: Rename CPU_FTR_P9_TLBIE_BUG feature flag + - powerpc/mm: Add a helper to select PAGE_KERNEL_RO or PAGE_READONLY + - powerpc/mm: Fix an Oops in kasan_mmu_init() + - powerpc/mm: Fixup tlbie vs mtpidr/mtlpidr ordering issue on POWER9 + - can: mcp251x: mcp251x_hw_reset(): allow more time after a reset + - tools lib traceevent: Fix "robust" test of do_generate_dynamic_list_file + - tools lib traceevent: Do not free tep->cmdlines in add_new_comm() on failure + - crypto: qat - Silence smp_processor_id() warning + - crypto: skcipher - Unmap pages after an external error + - crypto: cavium/zip - Add missing single_release() + - crypto: caam/qi - fix error handling in ERN handler + - crypto: caam - fix concurrency issue in givencrypt descriptor + - crypto: ccree - account for TEE not ready to report + - crypto: ccree - use the full crypt length value + - MIPS: Treat Loongson Extensions as ASEs + - power: supply: sbs-battery: use correct flags field + - power: supply: sbs-battery: only return health when battery present + - tracing: Make sure variable reference alias has correct var_ref_idx + - usercopy: Avoid HIGHMEM pfn warning + - timer: Read jiffies once when forwarding base clk + - PCI: vmd: Fix config addressing when using bus offsets + - PCI: hv: Avoid use of hv_pci_dev->pci_slot after freeing it + - PCI: vmd: Fix shadow offsets to reflect spec changes + - selftests/tpm2: Add the missing TEST_FILES assignment + - selftests: pidfd: Fix undefined reference to pthread_create() + - watchdog: imx2_wdt: fix min() calculation in imx2_wdt_set_timeout + - perf tools: Fix segfault in cpu_cache_level__read() + - perf stat: Fix a segmentation fault when using repeat forever + - drm/i915/dp: Fix dsc bpp calculations, v5. + - drm/atomic: Reject FLIP_ASYNC unconditionally + - drm/atomic: Take the atomic toys away from X + - drm: mali-dp: Mark expected switch fall-through + - drm/omap: fix max fclk divider for omap36xx + - drm/msm/dsi: Fix return value check for clk_get_parent + - drm/nouveau/kms/nv50-: Don't create MSTMs for eDP connectors + - drm/amd/powerplay: change metrics update period from 1ms to 100ms + - drm/i915/gvt: update vgpu workload head pointer correctly + - drm/i915: to make vgpu ppgtt notificaiton as atomic operation + - mac80211: keep BHs disabled while calling drv_tx_wake_queue() + - mmc: tegra: Implement ->set_dma_mask() + - mmc: sdhci: improve ADMA error reporting + - mmc: sdhci-of-esdhc: set DMA snooping based on DMA coherence + - mmc: sdhci: Let drivers define their DMA mask + - Revert "locking/pvqspinlock: Don't wait if vCPU is preempted" + - libnvdimm/altmap: Track namespace boundaries in altmap + - DTS: ARM: gta04: introduce legacy spi-cs-high to make display work again + - xen/balloon: Set pages PageOffline() in balloon_add_region() + - xen/xenbus: fix self-deadlock after killing user process + - ieee802154: atusb: fix use-after-free at disconnect + - nl80211: validate beacon head + - cfg80211: validate SSID/MBSSID element ordering assumption + - cfg80211: initialize on-stack chandefs + - drivers: thermal: qcom: tsens: Fix memory leak from qfprom read + - ima: always return negative code for error + - ima: fix freeing ongoing ahash_request + - fs: nfs: Fix possible null-pointer dereferences in encode_attrs() + - xprtrdma: Toggle XPRT_CONGESTED in xprtrdma's slot methods + - xprtrdma: Send Queue size grows after a reconnect + - 9p: Transport error uninitialized + - 9p: avoid attaching writeback_fid on mmap with type PRIVATE + - xen/pci: reserve MCFG areas earlier + - fuse: fix request limit + - ceph: fix directories inode i_blkbits initialization + - ceph: fetch cap_gen under spinlock in ceph_add_cap + - ceph: reconnect connection if session hang in opening state + - SUNRPC: RPC level errors should always set task->tk_rpc_status + - watchdog: aspeed: Add support for AST2600 + - netfilter: nf_tables: allow lookups in dynamic sets + - drm/amdgpu: Fix KFD-related kernel oops on Hawaii + - drm/amdgpu: Check for valid number of registers to read + - perf probe: Fix to clear tev->nargs in clear_probe_trace_event() + - pNFS: Ensure we do clear the return-on-close layout stateid on fatal errors + - SUNRPC: Don't try to parse incomplete RPC messages + - pwm: stm32-lp: Add check in case requested period cannot be achieved + - selftests/seccomp: fix build on older kernels + - x86/purgatory: Disable the stackleak GCC plugin for the purgatory + - ntb: point to right memory window index + - thermal: Fix use-after-free when unregistering thermal zone device + - thermal_hwmon: Sanitize thermal_zone type + - iommu/amd: Fix downgrading default page-sizes in alloc_pte() + - libnvdimm/region: Initialize bad block for volatile namespaces + - libnvdimm: Fix endian conversion issues + - fuse: fix memleak in cuse_channel_open + - libnvdimm/nfit_test: Fix acpi_handle redefinition + - sched/membarrier: Call sync_core only before usermode for same mm + - sched/membarrier: Fix private expedited registration check + - sched/core: Fix migration to invalid CPU in __set_cpus_allowed_ptr() + - perf build: Add detection of java-11-openjdk-devel package + - include/trace/events/writeback.h: fix -Wstringop-truncation warnings + - selftests/bpf: adjust strobemeta loop to satisfy latest clang + - kernel/elfcore.c: include proper prototypes + - libbpf: fix false uninitialized variable warning + - blk-mq: move lockdep_assert_held() into elevator_exit + - bpf: Fix bpf_event_output re-entry issue + - net: dsa: microchip: Always set regmap stride to 1 + - perf unwind: Fix libunwind build failure on i386 systems + - mlxsw: spectrum_flower: Fail in case user specifies multiple mirror actions + - nfp: abm: fix memory leak in nfp_abm_u32_knode_replace + - drm/radeon: Bail earlier when radeon.cik_/si_support=0 is passed + - Btrfs: fix selftests failure due to uninitialized i_mode in test inodes + - KVM: nVMX: Fix consistency check on injected exception error code + - tick: broadcast-hrtimer: Fix a race in bc_set_next + - perf stat: Reset previous counts on repeat with interval + - riscv: Avoid interrupts being erroneously enabled in handle_exception() + - vfs: Fix EOVERFLOW testing in put_compat_statfs64 + - coresight: etm4x: Use explicit barriers on enable/disable + - staging: erofs: fix an error handling in erofs_readdir() + - staging: erofs: some compressed cluster should be submitted for corrupted + images + - staging: erofs: add two missing erofs_workgroup_put for corrupted images + - staging: erofs: avoid endless loop of invalid lookback distance 0 + - staging: erofs: detect potential multiref due to corrupted images + - libnvdimm: prevent nvdimm from requesting key when security is disabled + - Linux 5.3.6 + * Eoan update: v5.3.4 upstream stable release (LP: #1848046) + - arcnet: provide a buffer big enough to actually receive packets + - cdc_ncm: fix divide-by-zero caused by invalid wMaxPacketSize + - macsec: drop skb sk before calling gro_cells_receive + - net/phy: fix DP83865 10 Mbps HDX loopback disable function + - net: qrtr: Stop rx_worker before freeing node + - net/sched: act_sample: don't push mac header on ip6gre ingress + - net_sched: add max len check for TCA_KIND + - net: stmmac: Fix page pool size + - nfp: flower: fix memory leak in nfp_flower_spawn_vnic_reprs + - nfp: flower: prevent memory leak in nfp_flower_spawn_phy_reprs + - openvswitch: change type of UPCALL_PID attribute to NLA_UNSPEC + - ppp: Fix memory leak in ppp_write + - sch_netem: fix a divide by zero in tabledist() + - selftests: Update fib_tests to handle missing ping6 + - skge: fix checksum byte order + - tcp_bbr: fix quantization code to not raise cwnd if not probing bandwidth + - usbnet: ignore endpoints with invalid wMaxPacketSize + - usbnet: sanity checking of packet sizes and device mtu + - net/rds: Check laddr_check before calling it + - net/mlx5e: Fix matching on tunnel addresses type + - ipv6: fix a typo in fib6_rule_lookup() + - selftests: Update fib_nexthop_multiprefix to handle missing ping6 + - net: phy: micrel: add Asym Pause workaround for KSZ9021 + - net/sched: cbs: Fix not adding cbs instance to list + - ipv4: Revert removal of rt_uses_gateway + - net_sched: add policy validation for action attributes + - vrf: Do not attempt to create IPv6 mcast rule if IPv6 is disabled + - net/mlx5e: Fix traffic duplication in ethtool steering + - net: sched: fix possible crash in tcf_action_destroy() + - tcp: better handle TCP_USER_TIMEOUT in SYN_SENT state + - net/mlx5: Add device ID of upcoming BlueField-2 + - ALSA: hda: Flush interrupts on disabling + - ASoC: SOF: Intel: hda: Make hdac_device device-managed + - cpufreq: ap806: Add NULL check after kcalloc + - ALSA: hda/hdmi - Don't report spurious jack state changes + - regulator: lm363x: Fix off-by-one n_voltages for lm3632 ldo_vpos/ldo_vneg + - regulator: lm363x: Fix n_voltages setting for lm36274 + - spi: dw-mmio: Clock should be shut when error occurs + - ASoC: tlv320aic31xx: suppress error message for EPROBE_DEFER + - ASoC: sgtl5000: Fix of unmute outputs on probe + - ASoC: sgtl5000: Fix charge pump source assignment + - firmware: qcom_scm: Use proper types for dma mappings + - dmaengine: bcm2835: Print error in case setting DMA mask fails + - leds: leds-lp5562 allow firmware files up to the maximum length + - ASoC: SOF: reset DMA state in prepare + - media: dib0700: fix link error for dibx000_i2c_set_speed + - media: mtk-cir: lower de-glitch counter for rc-mm protocol + - ASoC: SOF: pci: mark last_busy value at runtime PM init + - media: exynos4-is: fix leaked of_node references + - media: vivid:add sanity check to avoid divide error and set value to 1 if 0. + - media: vb2: reorder checks in vb2_poll() + - media: vivid: work around high stack usage with clang + - media: hdpvr: Add device num check and handling + - media: i2c: ov5640: Check for devm_gpiod_get_optional() error + - time/tick-broadcast: Fix tick_broadcast_offline() lockdep complaint + - sched/fair: Fix imbalance due to CPU affinity + - sched/core: Fix CPU controller for !RT_GROUP_SCHED + - x86/apic: Make apic_pending_intr_clear() more robust + - sched/deadline: Fix bandwidth accounting at all levels after offline + migration + - x86/reboot: Always use NMI fallback when shutdown via reboot vector IPI + fails + - rcu/tree: Call setschedule() gp ktread to SCHED_FIFO outside of atomic + region + - x86/apic: Soft disable APIC before initializing it + - ALSA: hda - Show the fatal CORB/RIRB error more clearly + - ALSA: i2c: ak4xxx-adda: Fix a possible null pointer dereference in + build_adc_controls() + - rcu: Add destroy_work_on_stack() to match INIT_WORK_ONSTACK() + - EDAC/mc: Fix grain_bits calculation + - arm64: dts: imx8mq: Correct OPP table according to latest datasheet + - media: iguanair: add sanity checks + - cpuidle: teo: Allow tick to be stopped if PM QoS is used + - gpio: madera: Add support for Cirrus Logic CS47L15 + - gpio: madera: Add support for Cirrus Logic CS47L92 + - arm64: mm: free the initrd reserved memblock in a aligned manner + - soc: amlogic: meson-clk-measure: protect measure with a mutex + - base: soc: Export soc_device_register/unregister APIs + - ALSA: usb-audio: Skip bSynchAddress endpoint check if it is invalid + - ia64:unwind: fix double free for mod->arch.init_unw_table + - EDAC/altera: Use the proper type for the IRQ status bits + - ASoC: rsnd: don't call clk_get_rate() under atomic context + - arm64/prefetch: fix a -Wtype-limits warning + - md/raid1: end bio when the device faulty + - md: don't call spare_active in md_reap_sync_thread if all member devices + can't work + - md: don't set In_sync if array is frozen + - media: media/platform: fsl-viu.c: fix build for MICROBLAZE + - media: staging: tegra-vde: Fix build error + - RAS: Build debugfs.o only when enabled in Kconfig + - ASoC: hdac_hda: fix page fault issue by removing race + - ACPI / processor: don't print errors for processorIDs == 0xff + - loop: Add LOOP_SET_DIRECT_IO to compat ioctl + - perf tools: Fix paths in include statements + - EDAC, pnd2: Fix ioremap() size in dnv_rd_reg() + - efi: cper: print AER info of PCIe fatal error + - firmware: arm_scmi: Check if platform has released shmem before using + - sched/fair: Use rq_lock/unlock in online_fair_sched_group + - idle: Prevent late-arriving interrupts from disrupting offline + - blk-mq: Fix memory leak in blk_mq_init_allocated_queue error handling + - media: gspca: zero usb_buf on error + - perf config: Honour $PERF_CONFIG env var to specify alternate .perfconfig + - perf test vfs_getname: Disable ~/.perfconfig to get default output + - media: mtk-mdp: fix reference count on old device tree + - media: i2c: tda1997x: prevent potential NULL pointer access + - media: fdp1: Reduce FCP not found message level to debug + - media: em28xx: modules workqueue not inited for 2nd device + - arm64/efi: Move variable assignments after SECTIONS + - perf unwind: Fix libunwind when tid != pid + - media: rc: imon: Allow iMON RC protocol for ffdc 7e device + - dmaengine: iop-adma: use correct printk format strings + - ARM: xscale: fix multi-cpu compilation + - perf record: Support aarch64 random socket_id assignment + - media: vsp1: fix memory leak of dl on error return path + - media: i2c: ov5645: Fix power sequence + - media: omap3isp: Don't set streaming state on random subdevs + - media: imx: mipi csi-2: Don't fail if initial state times-out + - kasan/arm64: fix CONFIG_KASAN_SW_TAGS && KASAN_INLINE + - net: lpc-enet: fix printk format strings + - m68k: Prevent some compiler warnings in Coldfire builds + - ARM: dts: imx7d: cl-som-imx7: make ethernet work again + - arm64: dts: qcom: qcs404-evb: Mark WCSS clocks protected + - ARM: dts: imx7-colibri: disable HS400 + - x86/platform/intel/iosf_mbi Rewrite locking + - media: radio/si470x: kill urb on error + - media: hdpvr: add terminating 0 at end of string + - ASoC: uniphier: Fix double reset assersion when transitioning to suspend + state + - powerpc/Makefile: Always pass --synthetic to nm if supported + - tools headers: Fixup bitsperlong per arch includes + - ASoC: sun4i-i2s: Don't use the oversample to calculate BCLK + - ASoC: mchp-i2s-mcc: Wait for RX/TX RDY only if controller is running + - led: triggers: Fix a memory leak bug + - ASoC: mchp-i2s-mcc: Fix unprepare of GCLK + - nbd: add missing config put + - ACPI / APEI: Release resources if gen_pool_add() fails + - arm64: entry: Move ct_user_exit before any other exception + - s390/kasan: provide uninstrumented __strlen + - media: mceusb: fix (eliminate) TX IR signal length limit + - media: dvb-frontends: use ida for pll number + - posix-cpu-timers: Sanitize bogus WARNONS + - media: dvb-core: fix a memory leak bug + - EDAC/amd64: Support more than two controllers for chip selects handling + - cpufreq: imx-cpufreq-dt: Add i.MX8MN support + - libperf: Fix alignment trap with xyarray contents in 'perf stat' + - EDAC/amd64: Recognize DRAM device type ECC capability + - EDAC/amd64: Decode syndrome before translating address + - ARM: at91: move platform-specific asm-offset.h to arch/arm/mach-at91 + - soc: renesas: rmobile-sysc: Set GENPD_FLAG_ALWAYS_ON for always-on domain + - soc: renesas: Enable ARM_ERRATA_754322 for affected Cortex-A9 + - PM / devfreq: Fix kernel oops on governor module load + - ARM: OMAP2+: move platform-specific asm-offset.h to arch/arm/mach-omap2 + - PM / devfreq: passive: Use non-devm notifiers + - PM / devfreq: exynos-bus: Correct clock enable sequence + - media: cec-notifier: clear cec_adap in cec_notifier_unregister + - media: saa7146: add cleanup in hexium_attach() + - media: cpia2_usb: fix memory leaks + - media: saa7134: fix terminology around saa7134_i2c_eeprom_md7134_gate() + - perf trace beauty ioctl: Fix off-by-one error in cmd->string table + - perf report: Fix --ns time sort key output + - perf script: Fix memory leaks in list_scripts() + - media: aspeed-video: address a protential usage of an unitialized var + - media: ov9650: add a sanity check + - leds: lm3532: Fixes for the driver for stability + - ASoC: es8316: fix headphone mixer volume table + - ACPI / CPPC: do not require the _PSD method + - sched/cpufreq: Align trace event behavior of fast switching + - arm64: dts: meson: fix boards regulators states format + - x86/apic/vector: Warn when vector space exhaustion breaks affinity + - arm64: kpti: ensure patched kernel text is fetched from PoU + - perf evlist: Use unshare(CLONE_FS) in sb threads to let setns(CLONE_NEWNS) + work + - arm64: Use correct ll/sc atomic constraints + - jump_label: Don't warn on __exit jump entries + - x86/mm/pti: Do not invoke PTI functions when PTI is disabled + - ASoC: fsl_ssi: Fix clock control issue in master mode + - x86/mm/pti: Handle unaligned address gracefully in pti_clone_pagetable() + - nvmet: fix data units read and written counters in SMART log + - nvme-multipath: fix ana log nsid lookup when nsid is not found + - ALSA: firewire-motu: add support for MOTU 4pre + - iommu/amd: Silence warnings under memory pressure + - ASoC: Intel: Haswell: Adjust machine device private context + - libata/ahci: Drop PCS quirk for Denverton and beyond + - iommu/iova: Avoid false sharing on fq_timer_on + - libtraceevent: Change users plugin directory + - ASoC: dt-bindings: sun4i-spdif: Fix dma-names warning + - ARM: dts: exynos: Mark LDO10 as always-on on Peach Pit/Pi Chromebooks + - x86/amd_nb: Add PCI device IDs for family 17h, model 70h + - ACPI: custom_method: fix memory leaks + - ACPI / PCI: fix acpi_pci_irq_enable() memory leak + - closures: fix a race on wakeup from closure_sync + - hwmon: (k10temp) Add support for AMD family 17h, model 70h CPUs + - hwmon: (acpi_power_meter) Change log level for 'unsafe software power cap' + - md/raid1: fail run raid1 array when active disk less than one + - dmaengine: ti: edma: Do not reset reserved paRAM slots + - kprobes: Prohibit probing on BUG() and WARN() address + - x86/mm: Fix cpumask_of_node() error condition + - irqchip/sifive-plic: set max threshold for ignored handlers + - s390/crypto: xts-aes-s390 fix extra run-time crypto self tests finding + - irqchip/gic-v3-its: Fix LPI release for Multi-MSI devices + - x86/cpu: Add Tiger Lake to Intel family + - platform/x86: intel_pmc_core: Do not ioremap RAM + - platform/x86: intel_pmc_core_pltdrv: Module removal warning fix + - ASoC: dmaengine: Make the pcm->name equal to pcm->id if the name is not set + - tools/power/x86/intel-speed-select: Fix memory leak + - spi: bcm2835: Work around DONE bit erratum + - io_uring: fix wrong sequence setting logic + - block: make rq sector size accessible for block stats + - raid5: don't set STRIPE_HANDLE to stripe which is in batch list + - mmc: core: Clarify sdio_irq_pending flag for MMC_CAP2_SDIO_IRQ_NOTHREAD + - sched/psi: Correct overly pessimistic size calculation + - mmc: sdhci: Fix incorrect switch to HS mode + - mmc: core: Add helper function to indicate if SDIO IRQs is enabled + - mmc: dw_mmc: Re-store SDIO IRQs mask at system resume + - raid5: don't increment read_errors on EILSEQ return + - mmc: mtk-sd: Re-store SDIO IRQs mask at system resume + - libertas: Add missing sentinel at end of if_usb.c fw_table + - ALSA: hda - Add a quirk model for fixing Huawei Matebook X right speaker + - ALSA: hda - Drop unsol event handler for Intel HDMI codecs + - drm/amd/powerplay/smu7: enforce minimal VBITimeout (v2) + - media: ttusb-dec: Fix info-leak in ttusb_dec_send_command() + - drm: fix module name in edid_firmware log message + - ALSA: hda/realtek - Blacklist PC beep for Lenovo ThinkCentre M73/93 + - zd1211rw: remove false assertion from zd_mac_clear() + - btrfs: delayed-inode: Kill the BUG_ON() in btrfs_delete_delayed_dir_index() + - btrfs: extent-tree: Make sure we only allocate extents from block groups + with the same type + - btrfs: tree-checker: Add ROOT_ITEM check + - btrfs: Detect unbalanced tree with empty leaf before crashing btree + operations + - kvm: Nested KVM MMUs need PAE root too + - media: omap3isp: Set device on omap3isp subdevs + - PM / devfreq: passive: fix compiler warning + - ARM: dts: logicpd-torpedo-baseboard: Fix missing video + - ARM: omap2plus_defconfig: Fix missing video + - iwlwifi: fw: don't send GEO_TX_POWER_LIMIT command to FW version 36 + - ALSA: firewire-tascam: handle error code when getting current source of + clock + - ALSA: firewire-tascam: check intermediate state of clock status and retry + - scsi: scsi_dh_rdac: zero cdb in send_mode_select() + - scsi: qla2xxx: Fix Relogin to prevent modifying scan_state flag + - printk: Do not lose last line in kmsg buffer dump + - IB/mlx5: Free mpi in mp_slave mode + - IB/hfi1: Define variables as unsigned long to fix KASAN warning + - IB/hfi1: Do not update hcrc for a KDETH packet during fault injection + - RDMA: Fix double-free in srq creation error flow + - randstruct: Check member structs in is_pure_ops_struct() + - ARM: dts: am3517-evm: Fix missing video + - rcu/tree: Fix SCHED_FIFO params + - ALSA: hda/realtek - PCI quirk for Medion E4254 + - blk-mq: add callback of .cleanup_rq + - scsi: implement .cleanup_rq callback + - powerpc/imc: Dont create debugfs files for cpu-less nodes + - tpm_tis_core: Turn on the TPM before probing IRQ's + - tpm_tis_core: Set TPM_CHIP_FLAG_IRQ before probing for interrupts + - tpm: Wrap the buffer from the caller to tpm_buf in tpm_send() + - fuse: fix deadlock with aio poll and fuse_iqueue::waitq.lock + - fuse: fix missing unlock_page in fuse_writepage() + - fuse: fix beyond-end-of-page access in fuse_parse_cache() + - parisc: Disable HP HSC-PCI Cards to prevent kernel crash + - platform/x86: intel_int0002_vgpio: Fix wakeups not working on Cherry Trail + - KVM: x86: always stop emulation on page fault + - KVM: x86: set ctxt->have_exception in x86_decode_insn() + - KVM: x86: Manually calculate reserved bits when loading PDPTRS + - KVM: x86: Disable posted interrupts for non-standard IRQs delivery modes + - kvm: x86: Add "significant index" flag to a few CPUID leaves + - KVM: x86/mmu: Use fast invalidate mechanism to zap MMIO sptes + - media: videobuf-core.c: poll_wait needs a non-NULL buf pointer + - media: sn9c20x: Add MSI MS-1039 laptop to flip_dmi_table + - media: hantro: Set DMA max segment size + - media: don't drop front-end reference count for ->detach + - media: vivid: fix device init when no_error_inj=1 and fb disabled + - spi: ep93xx: Repair SPI CS lookup tables + - spi: spi-fsl-dspi: Exit the ISR with IRQ_NONE when it's not ours + - binfmt_elf: Do not move brk for INTERP-less ET_EXEC + - ASoC: Intel: NHLT: Fix debug print format + - ASoC: Intel: Skylake: Use correct function to access iomem space + - ASoC: Intel: Fix use of potentially uninitialized variable + - staging: erofs: cannot set EROFS_V_Z_INITED_BIT if fill_inode_lazy fails + - ARM: samsung: Fix system restart on S3C6410 + - ARM: zynq: Use memcpy_toio instead of memcpy on smp bring-up + - arm64: tlb: Ensure we execute an ISB following walk cache invalidation + - arm64: dts: rockchip: limit clock rate of MMC controllers for RK3328 + - iommu/arm-smmu-v3: Disable detection of ATS and PRI + - alarmtimer: Use EOPNOTSUPP instead of ENOTSUPP + - iommu/vt-d: Fix wrong analysis whether devices share the same bus + - regulator: Defer init completion for a while after late_initcall + - efifb: BGRT: Improve efifb_bgrt_sanity_check + - gfs2: clear buf_in_tr when ending a transaction in sweep_bh_for_rgrps + - z3fold: fix retry mechanism in page reclaim + - z3fold: fix memory leak in kmem cache + - mm/compaction.c: clear total_{migrate,free}_scanned before scanning a new + zone + - memcg, oom: don't require __GFP_FS when invoking memcg OOM killer + - memcg, kmem: do not fail __GFP_NOFAIL charges + - lib/lzo/lzo1x_compress.c: fix alignment bug in lzo-rle + - mt76: round up length on mt76_wr_copy + - KEYS: trusted: correctly initialize digests and fix locking issue + - ath10k: fix channel info parsing for non tlv target + - i40e: check __I40E_VF_DISABLE bit in i40e_sync_filters_subtask + - block: mq-deadline: Fix queue restart handling + - block: fix null pointer dereference in blk_mq_rq_timed_out() + - smb3: allow disabling requesting leases + - smb3: fix unmount hang in open_shroot + - smb3: fix leak in "open on server" perf counter + - ovl: Fix dereferencing possible ERR_PTR() + - ovl: filter of trusted xattr results in audit + - btrfs: fix allocation of free space cache v1 bitmap pages + - Btrfs: fix use-after-free when using the tree modification log + - btrfs: Relinquish CPUs in btrfs_compare_trees + - btrfs: adjust dirty_metadata_bytes after writeback failure of extent buffer + - btrfs: qgroup: Fix the wrong target io_tree when freeing reserved data space + - btrfs: qgroup: Fix reserved data space leak if we have multiple reserve + calls + - Btrfs: fix race setting up and completing qgroup rescan workers + - btrfs: Fix a regression which we can't convert to SINGLE profile + - SUNRPC: Dequeue the request from the receive queue while we're re-encoding + - SUNRPC: Fix buffer handling of GSS MIC without slack + - ACPI / LPSS: Save/restore LPSS private registers also on Lynxpoint + - md/raid6: Set R5_ReadError when there is read failure on parity disk + - md: don't report active array_state until after revalidate_disk() completes. + - md: only call set_in_sync() when it is expected to succeed. + - cfg80211: Purge frame registrations on iftype change + - /dev/mem: Bail out upon SIGKILL. + - fs: Export generic_fadvise() + - mm: Handle MADV_WILLNEED through vfs_fadvise() + - xfs: Fix stale data exposure when readahead races with hole punch + - ipmi: move message error checking to avoid deadlock + - mtd: rawnand: stm32_fmc2: avoid warnings when building with W=1 option + - ext4: fix warning inside ext4_convert_unwritten_extents_endio + - ext4: fix punch hole for inline_data file systems + - quota: fix wrong condition in is_quota_modification() + - hwrng: core - don't wait on add_early_randomness() + - i2c: riic: Clear NACK in tend isr + - CIFS: fix max ea value size + - CIFS: Fix oplock handling for SMB 2.1+ protocols + - drm/amd/display: Restore backlight brightness after system resume + - drm/amd/display: dce11.x /dce12 update formula input + - drm/amd/display: Add missing HBM support and raise Vega20's uclk. + - drm/amdgpu/display: fix 64 bit divide + - md/raid0: avoid RAID0 data corruption due to layout confusion. + - mt76: mt7615: always release sem in mt7615_load_patch + - mt76: mt7615: fix mt7615 firmware path definitions + - platform/chrome: cros_ec_rpmsg: Fix race with host command when probe failed + - Linux 5.3.4 + * ELAN469D touch pad not working (LP: #1795292) // Ubuntu won't boot on Dell + Inspiron 7375 (LP: #1837688) // Eoan update: v5.3.4 upstream stable release + (LP: #1848046) + - iommu/amd: Override wrong IVRS IOAPIC on Raven Ridge systems + * Eoan update: v5.3.3 upstream stable release (LP: #1848045) + - Linux 5.3.2 + - Revert "Linux 5.3.2" + - Linux 5.3.3 + * Eoan update: v5.3.2 upstream stable release (LP: #1848042) + - netfilter: add missing IS_ENABLED(CONFIG_NF_TABLES) check to header-file. + - clocksource/drivers/timer-of: Do not warn on deferred probe + - clocksource/drivers: Do not warn on probe defer + - drm/amd/display: Allow cursor async updates for framebuffer swaps + - drm/amd/display: Skip determining update type for async updates + - drm/amd/display: Don't replace the dc_state for fast updates + - drm/amd/display: readd -msse2 to prevent Clang from emitting libcalls to + undefined SW FP routines + - powerpc/xive: Fix bogus error code returned by OPAL + - HID: prodikeys: Fix general protection fault during probe + - HID: sony: Fix memory corruption issue on cleanup. + - HID: logitech: Fix general protection fault caused by Logitech driver + - HID: logitech-dj: Fix crash when initial logi_dj_recv_query_paired_devices + fails + - HID: hidraw: Fix invalid read in hidraw_ioctl + - HID: Add quirk for HP X500 PIXART OEM mouse + - mtd: cfi_cmdset_0002: Use chip_good() to retry in do_write_oneword() + - crypto: talitos - fix missing break in switch statement + - clk: imx: imx8mm: fix audio pll setting + - Revert "mm/z3fold.c: fix race between migration and destruction" + - ALSA: usb-audio: Add Hiby device family to quirks for native DSD support + - ALSA: usb-audio: Add DSD support for EVGA NU Audio + - ALSA: dice: fix wrong packet parameter for Alesis iO26 + - ALSA: hda - Add laptop imic fixup for ASUS M9V laptop + - ALSA: hda - Apply AMD controller workaround for Raven platform + - platform/x86: i2c-multi-instantiate: Derive the device name from parent + - objtool: Clobber user CFLAGS variable + - Linux 5.3.2 + * Check for CPU Measurement sampling (LP: #1847590) + - s390/cpumsf: Check for CPU Measurement sampling + * revert the revert of ext4: make __ext4_get_inode_loc plug (LP: #1846486) + - random: try to actively add entropy rather than passively wait for it + - Revert "Revert "ext4: make __ext4_get_inode_loc plug"" + * Fix non-working Realtek USB ethernet after system resume (LP: #1847063) + - r8152: Set macpassthru in reset_resume callback + * overlayfs: allow with shiftfs as underlay (LP: #1846272) + - SAUCE: overlayfs: allow with shiftfs as underlay + * [regression] NoNewPrivileges incompatible with Apparmor (LP: #1844186) + - SAUCE: apparmor: fix nnp subset test for unconfined + * PM / hibernate: fix potential memory corruption (LP: #1847118) + - PM / hibernate: memory_bm_find_bit(): Tighten node optimisation + * Miscellaneous Ubuntu changes + - update dkms package versions + + -- Andrea Righi Thu, 24 Oct 2019 17:05:41 +0200 + +linux-azure (5.3.0-1004.4) eoan; urgency=medium + + * eoan/linux-azure: 5.3.0-1004.4 -proposed tracker (LP: #1848632) + + [ Ubuntu: 5.3.0-19.20 ] + + * eoan/linux: 5.3.0-19.20 -proposed tracker (LP: #1848648) + * eoan kernel does not contain "ipv6: do not free rt if FIB_LOOKUP_NOREF is + set on suppress rule" (LP: #1847478) + - ipv6: do not free rt if FIB_LOOKUP_NOREF is set on suppress rule + + -- Kleber Sacilotto de Souza Fri, 18 Oct 2019 13:33:57 +0200 + +linux-azure (5.3.0-1003.3) eoan; urgency=medium + + * eoan/linux-azure: 5.3.0-1003.3 -proposed tracker (LP: #1847292) + + * Use pyhon3-sphinx instead of python-sphinx for building html docs + (LP: #1845808) + - [Packaging] Update sphinx build dependencies to python3 packages + + * Add bpftool to linux-tools-common (LP: #1774815) + - [Debian] Enable bpftool in linux-tools + + * Miscellaneous Ubuntu changes + - update dkms package versions + + [ Ubuntu: 5.3.0-18.19 ] + + * eoan/linux: 5.3.0-18.19 -proposed tracker (LP: #1847298) + * Enable the Dragonboards out of Eoan/master arm64 kernel (LP: #1846704) + - [Packaging] arm64: snapdragon: introduce a snapdragon flavour + - [Packaging] arm64: snapdragon: switch kernel format to Image + - [Config] arm64: snapdragon: CONFIG_PINCTRL_MSM8916=y + - [Config] arm64: snapdragon: CONFIG_PINCTRL_MSM8994=y + - [Config] arm64: snapdragon: CONFIG_PINCTRL_MSM8996=y + - [Config] arm64: snapdragon: CONFIG_PINCTRL_MSM8998=y + - [Config] arm64: snapdragon: CONFIG_REGULATOR_QCOM_RPMH=y + - [Config] arm64: snapdragon: CONFIG_QCOM_BAM_DMA=y + - [Config] arm64: snapdragon: CONFIG_QCOM_HIDMA_MGMT=y + - [Config] arm64: snapdragon: CONFIG_QCOM_HIDMA=y + - [Config] arm64: snapdragon: CONFIG_COMMON_CLK_QCOM=y + - [Config] arm64: snapdragon: CONFIG_QCOM_CLK_RPMH=y + - [Config] arm64: snapdragon: CONFIG_MSM_GCC_8916=y + - [Config] arm64: snapdragon: CONFIG_MSM_GCC_8994=y + - [Config] arm64: snapdragon: CONFIG_MSM_MMCC_8996=y + - [Config] arm64: snapdragon: CONFIG_MSM_GCC_8998=y + - [Config] arm64: snapdragon: CONFIG_HWSPINLOCK_QCOM=y + - [Config] arm64: snapdragon: CONFIG_QCOM_APCS_IPC=y + - [Config] arm64: snapdragon: CONFIG_RPMSG_QCOM_GLINK_RPM=y + - [Config] arm64: snapdragon: CONFIG_QCOM_GENI_SE=y + - [Config] arm64: snapdragon: CONFIG_QCOM_SMEM=y + - [Config] arm64: snapdragon: CONFIG_QCOM_SMD_RPM=y + - [Config] arm64: snapdragon: CONFIG_QCOM_SMP2P=y + - [Config] arm64: snapdragon: CONFIG_QCOM_SMSM=y + - [Config] arm64: snapdragon: CONFIG_QCOM_QFPROM=y + - [Config] arm64: snapdragon: CONFIG_SERIAL_QCOM_GENI=y + - [Config] arm64: snapdragon: CONFIG_QCOM_TSENS=y + - [Config] arm64: snapdragon: CONFIG_REGULATOR_QCOM_SMD_RPM=y + - [Config] arm64: snapdragon: CONFIG_QCOM_CLK_SMD_RPM=y + - [Config] arm64: snapdragon: CONFIG_RPMSG_QCOM_SMD=y + - [Config] arm64: snapdragon: CONFIG_MFD_QCOM_RPM=y + - [Config] arm64: snapdragon: CONFIG_SCSI_UFSHCD=y + - [Config] arm64: snapdragon: CONFIG_SCSI_UFSHCD_PLATFORM=y + - [Config] arm64: snapdragon: CONFIG_SCSI_UFS_HISI=y + - [Config] arm64: snapdragon: CONFIG_MMC_SDHCI=y + - [Config] arm64: snapdragon: CONFIG_MMC_SDHCI_PLTFM=y + - [Config] arm64: snapdragon: CONFIG_MMC_SDHCI_MSM=y + - [Config] arm64: snapdragon: CONFIG_REGULATOR_QCOM_SPMI=y + - [Config] arm64: snapdragon: CONFIG_PINCTRL_QCOM_SPMI_PMIC=y + - [Config] arm64: snapdragon: CONFIG_PHY_QCOM_USB_HS=y + - [Config] arm64: snapdragon: CONFIG_PHY_QCOM_QMP=y + - [Config] arm64: snapdragon: CONFIG_PHY_QCOM_UFS=y + - [Config] arm64: snapdragon: CONFIG_PHY_QCOM_USB_HSIC=y + - [Config] arm64: snapdragon: CONFIG_USB_CHIPIDEA_OF=y + - [Config] arm64: snapdragon: CONFIG_USB_EHCI_HCD_PLATFORM=y + - [Config] arm64: snapdragon: CONFIG_EXTCON_USB_GPIO=y + - [Config] arm64: snapdragon: CONFIG_REGULATOR_FIXED_VOLTAGE=y + - [Config] arm64: snapdragon: CONFIG_LEDS_GPIO=y + - [Config] arm64: snapdragon: CONFIG_USB_HSIC_USB3503=y + - [Config] arm64: snapdragon: CONFIG_USB_NET_DRIVERS=y + - [Config] arm64: snapdragon: CONFIG_USB_OTG=y + - [Config] arm64: snapdragon: CONFIG_USB_XHCI_PLATFORM=y + - [Config] arm64: snapdragon: CONFIG_USB_OHCI_HCD_PLATFORM=y + - [Config] arm64: snapdragon: CONFIG_USB_MUSB_HDRC=y + - [Config] arm64: snapdragon: CONFIG_USB_DWC3=y + - [Config] arm64: snapdragon: CONFIG_USB_DWC3_PCI=y + - [Config] arm64: snapdragon: CONFIG_USB_DWC3_OF_SIMPLE=y + - [Config] arm64: snapdragon: CONFIG_USB_DWC3_QCOM=y + - [Config] arm64: snapdragon: CONFIG_LEDS_PWM=y + - [Config] arm64: snapdragon: CONFIG_LEDS_TRIGGER_HEARTBEAT=y + - [Config] arm64: snapdragon: CONFIG_LEDS_TRIGGER_DEFAULT_ON=y + - [Config] arm64: snapdragon: CONFIG_QCOM_A53PLL=y + - [Config] arm64: snapdragon: CONFIG_QCOM_CLK_APCS_MSM8916=y + - [Config] arm64: snapdragon: CONFIG_NLS_ISO8859_1=y + - [Config] arm64: snapdragon: CONFIG_USB_USBNET=y + - [Config] arm64: snapdragon: CONFIG_CRYPTO_DEV_QCOM_RNG=y + - [Config] arm64: snapdragon: CONFIG_POWER_RESET_QCOM_PON=y + - [Config] arm64: snapdragon: CONFIG_INPUT_PM8941_PWRKEY=y + - [Config] arm64: snapdragon: CONFIG_KEYBOARD_GPIO=y + - [Config] arm64: snapdragon: CONFIG_RTC_DRV_PM8XXX=y + + -- Paolo Pisati Thu, 10 Oct 2019 11:14:34 +0200 + +linux-azure (5.3.0-1002.2) eoan; urgency=medium + + * Miscellaneous Ubuntu changes + - [Packaging]: really ignore modules + + -- Thadeu Lima de Souza Cascardo Fri, 04 Oct 2019 15:50:48 -0300 + +linux-azure (5.3.0-1001.1) eoan; urgency=medium + + * eoan/linux-azure: 5.3.0-1001.1 -proposed tracker (LP: #1846616) + + * CONFIG_LSM should not specify loadpin since it is not built (LP: #1845383) + - [Config] loadpin shouldn't be in CONFIG_LSM + + * Packaging resync (LP: #1786013) + - [Packaging] update update.conf + + * Miscellaneous Ubuntu changes + - [Config]: Update config based on master + - [Config]: CONFIG_INTEGRITY_PLATFORM_KEYRING=y + - SAUCE: temporarily disable vmbus-rdma + + [ Ubuntu: 5.3.0-17.18 ] + + * eoan/linux: 5.3.0-17.18 -proposed tracker (LP: #1846641) + * CVE-2019-17056 + - nfc: enforce CAP_NET_RAW for raw sockets + * CVE-2019-17055 + - mISDN: enforce CAP_NET_RAW for raw sockets + * CVE-2019-17054 + - appletalk: enforce CAP_NET_RAW for raw sockets + * CVE-2019-17053 + - ieee802154: enforce CAP_NET_RAW for raw sockets + * CVE-2019-17052 + - ax25: enforce CAP_NET_RAW for raw sockets + * CVE-2019-15098 + - ath6kl: fix a NULL-ptr-deref bug in ath6kl_usb_alloc_urb_from_pipe() + * xHCI on AMD Stoney Ridge cannot detect USB 2.0 or 1.1 devices. + (LP: #1846470) + - x86/PCI: Avoid AMD FCH XHCI USB PME# from D0 defect + * Re-enable linux-libc-dev build on i386 (LP: #1846508) + - [Packaging] Build only linux-libc-dev for i386 + - [Debian] final-checks -- ignore archtictures with no binaries + * arm64: loop on boot after installing linux-generic-hwe-18.04-edge/bionic- + proposed (LP: #1845820) + - [Config] Disable CONFIG_ARM_SMMU_DISABLE_BYPASS_BY_DEFAULT + * Revert ESE DASD discard support (LP: #1846219) + - SAUCE: Revert "s390/dasd: Add discard support for ESE volumes" + * Miscellaneous Ubuntu changes + - update dkms package versions + + [ Ubuntu: 5.3.0-16.17 ] + + * eoan/linux: 5.3.0-16.17 -proposed tracker (LP: #1846204) + * zfs fails to build on s390x with debug symbols enabled (LP: #1846143) + - SAUCE: s390: Mark atomic const ops always inline + + [ Ubuntu: 5.3.0-15.16 ] + + * eoan/linux: 5.3.0-15.16 -proposed tracker (LP: #1845987) + * Drop i386 build for 19.10 (LP: #1845714) + - [Packaging] Remove x32 arch references from control files + - [Debian] final-checks -- Get arch list from debian/control + * ZFS kernel modules lack debug symbols (LP: #1840704) + - [Debian] Fix conditional for setting zfs debug package path + * Use pyhon3-sphinx instead of python-sphinx for building html docs + (LP: #1845808) + - [Packaging] Update sphinx build dependencies to python3 packages + * Kernel panic with 19.10 beta image (LP: #1845454) + - efi/tpm: Don't access event->count when it isn't mapped. + - efi/tpm: don't traverse an event log with no events + - efi/tpm: only set efi_tpm_final_log_size after successful event log parsing + + [ Ubuntu: 5.3.0-14.15 ] + + * eoan/linux: 5.3.0-14.15 -proposed tracker (LP: #1845728) + * Drop i386 build for 19.10 (LP: #1845714) + - [Debian] Remove support for producing i386 kernels + - [Debian] Don't use CROSS_COMPILE for i386 configs + * udevadm trigger will fail when trying to add /sys/devices/vio/ + (LP: #1845572) + - SAUCE: powerpc/vio: drop bus_type from parent device + * Trying to online dasd drive results in invalid input/output from the kernel + on z/VM (LP: #1845323) + - SAUCE: s390/dasd: Fix error handling during online processing + * intel-lpss driver conflicts with write-combining MTRR region (LP: #1845584) + - SAUCE: mfd: intel-lpss: add quirk for Dell XPS 13 7390 2-in-1 + * Support Hi1620 zip hw accelerator (LP: #1845355) + - [Config] Enable HiSilicon QM/ZIP as modules + - crypto: hisilicon - add queue management driver for HiSilicon QM module + - crypto: hisilicon - add hardware SGL support + - crypto: hisilicon - add HiSilicon ZIP accelerator support + - crypto: hisilicon - add SRIOV support for ZIP + - Documentation: Add debugfs doc for hisi_zip + - crypto: hisilicon - add debugfs for ZIP and QM + - MAINTAINERS: add maintainer for HiSilicon QM and ZIP controller driver + - crypto: hisilicon - fix kbuild warnings + - crypto: hisilicon - add dependency for CRYPTO_DEV_HISI_ZIP + - crypto: hisilicon - init curr_sgl_dma to fix compile warning + - crypto: hisilicon - add missing single_release + - crypto: hisilicon - fix error handle in hisi_zip_create_req_q + - crypto: hisilicon - Fix warning on printing %p with dma_addr_t + - crypto: hisilicon - Fix return value check in hisi_zip_acompress() + - crypto: hisilicon - avoid unused function warning + * SafeSetID LSM should be built but disabled by default (LP: #1845391) + - LSM: SafeSetID: Stop releasing uninitialized ruleset + - [Config] Build SafeSetID LSM but don't enable it by default + * CONFIG_LSM should not specify loadpin since it is not built (LP: #1845383) + - [Config] loadpin shouldn't be in CONFIG_LSM + * Add new pci-id's for CML-S, ICL (LP: #1845317) + - drm/i915/icl: Add missing device ID + - drm/i915/cml: Add Missing PCI IDs + * Thunderbolt support for ICL (LP: #1844680) + - thunderbolt: Correct path indices for PCIe tunnel + - thunderbolt: Move NVM upgrade support flag to struct icm + - thunderbolt: Use 32-bit writes when writing ring producer/consumer + - thunderbolt: Do not fail adding switch if some port is not implemented + - thunderbolt: Hide switch attributes that are not set + - thunderbolt: Expose active parts of NVM even if upgrade is not supported + - thunderbolt: Add support for Intel Ice Lake + - ACPI / property: Add two new Thunderbolt property GUIDs to the list + * Ubuntu 19.10 - Additional PCI patch and fix (LP: #1844668) + - s390/pci: fix MSI message data + * Enhanced Hardware Support - Finalize Naming (LP: #1842774) + - s390: add support for IBM z15 machines + - [Config] CONFIG_MARCH_Z15=n, CONFIG_TUNE_Z15=n + * Eoan update: v5.3.1 upstream stable release (LP: #1845642) + - USB: usbcore: Fix slab-out-of-bounds bug during device reset + - media: tm6000: double free if usb disconnect while streaming + - phy: renesas: rcar-gen3-usb2: Disable clearing VBUS in over-current + - ip6_gre: fix a dst leak in ip6erspan_tunnel_xmit + - net/sched: fix race between deactivation and dequeue for NOLOCK qdisc + - net_sched: let qdisc_put() accept NULL pointer + - udp: correct reuseport selection with connected sockets + - xen-netfront: do not assume sk_buff_head list is empty in error handling + - net: dsa: Fix load order between DSA drivers and taggers + - net: stmmac: Hold rtnl lock in suspend/resume callbacks + - KVM: coalesced_mmio: add bounds checking + - Documentation: sphinx: Add missing comma to list of strings + - firmware: google: check if size is valid when decoding VPD data + - serial: sprd: correct the wrong sequence of arguments + - tty/serial: atmel: reschedule TX after RX was started + - nl80211: Fix possible Spectre-v1 for CQM RSSI thresholds + - Revert "arm64: Remove unnecessary ISBs from set_{pte,pmd,pud}" + - ovl: fix regression caused by overlapping layers detection + - phy: qcom-qmp: Correct ready status, again + - floppy: fix usercopy direction + - media: technisat-usb2: break out of loop at end of buffer + - Linux 5.3.1 + * ZFS kernel modules lack debug symbols (LP: #1840704) + - [Debian]: Remove hardcoded $(pkgdir) in debug symbols handling + - [Debian]: Handle debug symbols for modules in extras too + - [Debian]: Check/link modules with debug symbols after DKMS modules + - [Debian]: Warn about modules without debug symbols + - [Debian]: dkms-build: new parameter for debug package directory + - [Debian]: dkms-build: zfs: support for debug symbols + - [Debian]: dkms-build: Avoid executing post-processor scripts twice + - [Debian]: dkms-build: Move zfs special-casing into configure script + * /proc/self/maps paths missing on live session (was vlc won't start; eoan + 19.10 & bionic 18.04 ubuntu/lubuntu/kubuntu/xubuntu/ubuntu-mate dailies) + (LP: #1842382) + - SAUCE: Revert "UBUNTU: SAUCE: shiftfs: enable overlayfs on shiftfs" + + [ Ubuntu: 5.3.0-13.14 ] + + * eoan/linux: 5.3.0-13.14 -proposed tracker (LP: #1845105) + * Packaging resync (LP: #1786013) + - [Packaging] update helper scripts + * Miscellaneous Ubuntu changes + - [Debian] Remove binutils-dev build dependency + + [ Ubuntu: 5.3.0-12.13 ] + + * Change kernel compression method to improve boot speed (LP: #1840934) + - [Packaging] Add lz4 build dependency for s390x + * Miscellaneous Ubuntu changes + - SAUCE: Remove spl and zfs source + + [ Ubuntu: 5.3.0-11.12 ] + + * eoan/linux: 5.3.0-11.12 -proposed tracker (LP: #1844144) + * Suspend to RAM(S3) does not wake up for latest megaraid and mpt3sas + adapters(SAS3.5 onwards) (LP: #1838751) + - PCI: Restore Resizable BAR size bits correctly for 1MB BARs + * s390/setup: Actually init kernel lock down (LP: #1843961) + - SAUCE: (lockdown) s390/setup: Actually init kernel lock down + * cherrypick has_sipl fix (LP: #1843960) + - SAUCE: s390/sclp: Fix bit checked for has_sipl + * Change kernel compression method to improve boot speed (LP: #1840934) + - [Config]: Switch kernel compression from LZO to LZ4 on s390x + * Installation fails on eoan/PowerVM : missing /dev/nvram (LP: #1837726) + - [Config] CONFIG_NVRAM=y for ppc64el + * Miscellaneous Ubuntu changes + - [Config]: remove nvram from ppc64el modules ABI + - [Config] Update annotations for recent config changes + - SAUCE: sched: Add __ASSEMBLY__ guards around struct clone_args + - SAUCE: i2c: qcom-geni: Disable DMA processing on the Lenovo Yoga C630 + - SAUCE: arm64: dts: qcom: Add Lenovo Yoga C630 + - update dkms package versions + * Rebase to v5.3 + + [ Ubuntu: 5.3.0-10.11 ] + + * eoan/linux: 5.3.0-10.11 -proposed tracker (LP: #1843232) + * No sound inputs from the external microphone and headset on a Dell machine + (LP: #1842265) + - SAUCE: ALSA: hda - Expand pin_match function to match upcoming new tbls + - SAUCE: ALSA: hda - Define a fallback_pin_fixup_tbl for alc269 family + * Horizontal corrupted line at top of screen caused by framebuffer compression + (LP: #1840236) + - SAUCE: drm/i915/fbc: disable framebuffer compression on IceLake + * Add bpftool to linux-tools-common (LP: #1774815) + - [Debian] package bpftool in linux-tools-common + * Miscellaneous Ubuntu changes + - update dkms package versions + * Rebase to v5.3-rc8 + + [ Ubuntu: 5.3.0-9.10 ] + + * eoan/linux: 5.3.0-9.10 -proposed tracker (LP: #1842393) + * shiftfs: mark kmem_cache as reclaimable (LP: #1842059) + - SAUCE: shiftfs: mark slab objects SLAB_RECLAIM_ACCOUNT + * shiftfs: drop entries from cache on unlink (LP: #1841977) + - SAUCE: shiftfs: fix buggy unlink logic + * Fix touchpad IRQ storm after S3 (LP: #1841396) + - pinctrl: intel: remap the pin number to gpio offset for irq enabled pin + * Please include DTBs for arm64 laptops (LP: #1842050) + - arm64: dts: qcom: Add Lenovo Miix 630 + - arm64: dts: qcom: Add HP Envy x2 + - arm64: dts: qcom: Add Asus NovaGo TP370QL + * Miscellaneous Ubuntu changes + - SAUCE: import aufs driver + - [Packaging]: ignore vbox modules when vbox is disabled + * Rebase to v5.3-rc7 + + [ Ubuntu: 5.3.0-8.9 ] + + * Packaging resync (LP: #1786013) + - [Packaging] resync getabis + * Change kernel compression method to improve boot speed (LP: #1840934) + - [Config] change kernel compression method to improve boot speed + - [Packaging] add build dependencies for compression algorithms + * realtek r8822be kernel module fails after update to linux kernel-headers + 5.0.0-21 (LP: #1838133) + - rtw88: Fix misuse of GENMASK macro + - rtw88: pci: Rearrange the memory usage for skb in RX ISR + - rtw88: pci: Use DMA sync instead of remapping in RX ISR + - rtw88: debug: dump tx power indexes in use + - rtw88: use txpwr_lmt_cfg_pair struct, not arrays + - rtw88: pci: remove set but not used variable 'ip_sel' + - rtw88: allow c2h operation in irq context + - rtw88: enclose c2h cmd handle with mutex + - rtw88: add BT co-existence support + - SAUCE: rtw88: pci: enable MSI interrupt + * VIMC module not available (CONFIG_VIDEO_VIMC not set) (LP: #1831482) + - [Config] Enable VIMC module + * Goodix touchpad may drop first input event (LP: #1840075) + - Revert "UBUNTU: SAUCE: i2c: designware: add G3 3590 into i2c quirk" + - Revert "UBUNTU: SAUCE: i2c: designware: add Inpiron 7591 into i2c quirk" + - Revert "UBUNTU: SAUCE: i2c: designware: add Inpiron/Vostro 7590 into i2c + quirk" + - Revert "UBUNTU: SAUCE: i2c: designware: Add disable runtime pm quirk" + - mfd: intel-lpss: Remove D3cold delay + * Include Sunix serial/parallel driver (LP: #1826716) + - serial: 8250_pci: Add support for Sunix serial boards + - parport: parport_serial: Add support for Sunix Multi I/O boards + * enable lockdown on s390x when Secure IPL is performed (LP: #1839622) + - SAUCE: (lockdown) s390/ipl: lockdown kernel when booted secure + - Ubuntu: [Config] Enable CONFIG_LOCK_DOWN_KERNEL on s390x. + * UBUNTU: SAUCE: shiftfs: pass correct point down (LP: #1837231) + - SAUCE: shiftfs: pass correct point down + * shiftfs: add O_DIRECT support (LP: #1837223) + - SAUCE: shiftfs: add O_DIRECT support + * Miscellaneous Ubuntu changes + - [Config] enable secureboot signing on s390x + - [Config] CONFIG_TEST_BLACKHOLE_DEV=m + - SAUCE: selftests: fib_tests: assign address to dummy1 for rp_filter tests + - [Debian] disable dkms builds for autopktest rebuilds + - update dkms package versions + - [Config] updateconfigs after v5.3-rc6 rebase + * Rebase to v5.3-rc5 + + [ Ubuntu: 5.3.0-7.8 ] + + * Packaging resync (LP: #1786013) + - [Packaging] resync getabis + * Miscellaneous Ubuntu changes + - [Config] updateconfigs after v5.3-rc5 rebase + - remove missing module after updateconfigs + * Rebase to v5.3-rc5 + + [ Ubuntu: 5.3.0-6.7 ] + + * Miscellaneous Ubuntu changes + - SAUCE: selftests/bpf: prevent headers to be compiled as C code + + [ Ubuntu: 5.3.0-5.6 ] + + * Miscellaneous Ubuntu changes + - update dkms package versions + - [Config] enable zfs build + + [ Ubuntu: 5.3.0-4.5 ] + + * Packaging resync (LP: #1786013) + - [Packaging] resync getabis + - [Packaging] update helper scripts + * bcache: bch_allocator_thread(): hung task timeout (LP: #1784665) // Tight + timeout for bcache removal causes spurious failures (LP: #1796292) + - SAUCE: bcache: fix deadlock in bcache_allocator + * shiftfs: allow overlayfs (LP: #1838677) + - SAUCE: shiftfs: enable overlayfs on shiftfs + * Miscellaneous Ubuntu changes + - SAUCE: Revert "kbuild: modpost: do not parse unnecessary rules for vmlinux + modpost" + - update dkms package versions + - enable nvidia dkms build + * Rebase to v5.3-rc4 + + [ Ubuntu: 5.3.0-3.4 ] + + * Miscellaneous Ubuntu changes + - update dkms package versions + - SAUCE: aufs: add "WITH Linux-syscall-note" to SPDX tag of uapi headers + - [Config] add mux-* to modules.ignore + * Rebase to v5.3-rc3 + + [ Ubuntu: 5.3.0-2.3 ] + + * Miscellaneous Ubuntu changes + - [Packaging] add build dependincy on fontconfig + + [ Ubuntu: 5.3.0-1.2 ] + + * System does not auto detect disconnection of external monitor (LP: #1835001) + - SAUCE: drm/i915: Add support for retrying hotplug + - SAUCE: drm/i915: Enable hotplug retry + * Please enable CONFIG_SCSI_UFS_QCOM as a module on arm64 (LP: #1837332) + - [Config] Enable CONFIG_SCSI_UFS_QCOM as a module on arm64. + * Add arm64 CONFIG_ARCH_MESON=y and related configs Edit (LP: #1820530) + - [Config] enable ARCH_MESON + - remove missing module + - [Config] update annotations after enabling ARCH_MESON for arm64 + * Miscellaneous Ubuntu changes + - SAUCE: KVM: PPC: comment implicit fallthrough + - update dkms package versions + - [Config] enable vbox dkms build + * Rebase to v5.3-rc2 + + [ Ubuntu: 5.3.0-0.1 ] + + * Packaging resync (LP: #1786013) + - [Packaging] resync git-ubuntu-log + * Miscellaneous Ubuntu changes + - SAUCE: (efi-lockdown) Add the ability to lock down access to the running + kernel image + - SAUCE: (efi-lockdown) Enforce module signatures if the kernel is locked down + - SAUCE: (efi-lockdown) Restrict /dev/{mem,kmem,port} when the kernel is + locked down + - SAUCE: (efi-lockdown) kexec_load: Disable at runtime if the kernel is locked + down + - SAUCE: (efi-lockdown) Copy secure_boot flag in boot params across kexec + reboot + - SAUCE: (efi-lockdown) kexec_file: split KEXEC_VERIFY_SIG into KEXEC_SIG and + KEXEC_SIG_FORCE + - SAUCE: (efi-lockdown) kexec_file: Restrict at runtime if the kernel is + locked down + - SAUCE: (efi-lockdown) hibernate: Disable when the kernel is locked down + - SAUCE: (efi-lockdown) uswsusp: Disable when the kernel is locked down + - SAUCE: (efi-lockdown) PCI: Lock down BAR access when the kernel is locked + down + - SAUCE: (efi-lockdown) x86: Lock down IO port access when the kernel is + locked down + - SAUCE: (efi-lockdown) x86/msr: Restrict MSR access when the kernel is locked + down + - SAUCE: (efi-lockdown) ACPI: Limit access to custom_method when the kernel is + locked down + - SAUCE: (efi-lockdown) acpi: Ignore acpi_rsdp kernel param when the kernel + has been locked down + - SAUCE: (efi-lockdown) acpi: Disable ACPI table override if the kernel is + locked down + - SAUCE: (efi-lockdown) acpi: Disable APEI error injection if the kernel is + locked down + - SAUCE: (efi-lockdown) Prohibit PCMCIA CIS storage when the kernel is locked + down + - SAUCE: (efi-lockdown) Lock down TIOCSSERIAL + - SAUCE: (efi-lockdown) Lock down module params that specify hardware + parameters (eg. ioport) + - SAUCE: (efi-lockdown) x86/mmiotrace: Lock down the testmmiotrace module + - SAUCE: (efi-lockdown) Lock down /proc/kcore + - SAUCE: (efi-lockdown) Lock down kprobes + - SAUCE: (efi-lockdown) bpf: Restrict kernel image access functions when the + kernel is locked down + - SAUCE: (efi-lockdown) Lock down perf + - SAUCE: (efi-lockdown) debugfs: Restrict debugfs when the kernel is locked + down + - SAUCE: (efi-lockdown) lockdown: Print current->comm in restriction messages + - SAUCE: (efi-lockdown) kexec: Allow kexec_file() with appropriate IMA policy + when locked down + - SAUCE: (efi-lockdown) Add a SysRq option to lift kernel lockdown + - SAUCE: (efi-lockdown) debugfs: avoid EPERM when no open file operation + defined + - SAUCE: (efi-lockdown) Make get_cert_list() not complain about cert lists + that aren't present. + - SAUCE: (efi-lockdown) Add efi_status_to_str() and rework + efi_status_to_err(). + - SAUCE: (efi-lockdown) Make get_cert_list() use efi_status_to_str() to print + error messages. + - SAUCE: (efi-lockdown) efi: Add an EFI_SECURE_BOOT flag to indicate secure + boot mode + - SAUCE: (efi-lockdown) efi: Lock down the kernel if booted in secure boot + mode + - SAUCE: (efi-lockdown) KEYS: Make use of platform keyring for module + signature verify + - SAUCE: (efi-lockdown) efi: Sanitize boot_params in efi stub + - SAUCE: (efi-lockdown) furter KEXEC_VERIFY_SIG -> KEXEC_SIG updates + - SAUCE: (efi-lockdown) arm64: add kernel config option to lock down when in + Secure Boot mode + - SAUCE: import aufs driver + - SAUCE: aufs: rwsem owner changed to atmoic_long_t in 5.3 + - [Config] disable zfs dkms build + - [Config] disable nvidia dkms build + - [Config] disable vbox dkms build + - SAUCE: perf diff: use llabs for s64 vaules + * Rebase to v5.3-rc1 + + [ Ubuntu: 5.3.0-0.0 ] + + * Dummy entry. + + [ Ubuntu: 5.2.0-9.10 ] + + * Packaging resync (LP: #1786013) + - [Packaging] update helper scripts + * input/mouse: alps trackpoint-only device doesn't work (LP: #1836752) + - SAUCE: Input: alps - don't handle ALPS cs19 trackpoint-only device + - SAUCE: Input: alps - fix a mismatch between a condition check and its + comment + * System does not auto detect disconnection of external monitor (LP: #1835001) + - SAUCE: drm/i915: Add support for retrying hotplug + - SAUCE: drm/i915: Enable hotplug retry + * alsa/hdmi: add icelake hdmi audio support for a Dell machine (LP: #1836916) + - SAUCE: ALSA: hda/hdmi - Remove duplicated define + - SAUCE: ALSA: hda/hdmi - Fix i915 reverse port/pin mapping + * First click on Goodix touchpad doesn't be recognized after runtime suspended + (LP: #1836836) + - SAUCE: i2c: designware: add G3 3590 into i2c quirk + * ixgbe{vf} - Physical Function gets IRQ when VF checks link state + (LP: #1836760) + - ixgbevf: Use cached link state instead of re-reading the value for ethtool + * Doing multiple squashfs (and other loop?) mounts in parallel breaks + (LP: #1836914) + - SAUCE: Revert "loop: Don't change loop device under exclusive opener" + * hibmc-drm Causes Unreadable Display for Huawei amd64 Servers (LP: #1762940) + - SAUCE: Make CONFIG_DRM_HISI_HIBMC depend on ARM64 + - [Config] Set CONFIG_DRM_HISI_HIBMC to arm64 only + - [Config] add hibmc-drm to modules.ignore + * hda/realtek: can't detect external mic on a Dell machine (LP: #1836755) + - ALSA: hda/realtek: apply ALC891 headset fixup to one Dell machine + * Enable Armada SOCs and MVPP2 NIC driver for disco/generic arm64 + (LP: #1835054) + - [Config] Enable Armada SOCs and MVPP2 NIC driver for disco/generic arm64 + * Unhide Nvidia HDA audio controller (LP: #1836308) + - PCI: Enable NVIDIA HDA controllers + * Intel ethernet I219 may wrongly detect connection speed as 10Mbps + (LP: #1836177) + - e1000e: Make watchdog use delayed work + * Sometimes touchpad(goodix) can't use tap function (LP: #1836020) + - SAUCE: i2c: designware: add Inpiron/Vostro 7590 into i2c quirk + - SAUCE: i2c: designware: add Inpiron 7591 into i2c quirk + * Intel ethernet I219 has slow RX speed (LP: #1836152) + - e1000e: add workaround for possible stalled packet + - e1000e: disable force K1-off feature + * bcache: risk of data loss on I/O errors in backing or caching devices + (LP: #1829563) + - Revert "bcache: set CACHE_SET_IO_DISABLE in bch_cached_dev_error()" + * bnx2x driver causes 100% CPU load (LP: #1832082) + - bnx2x: Prevent ptp_task to be rescheduled indefinitely + * fcf-protection=none patch with new version + - Revert "UBUNTU: SAUCE: kbuild: add -fcf-protection=none to retpoline flags" + - SAUCE: kbuild: add -fcf-protection=none when using retpoline flags + * CVE-2019-12614 + - powerpc/pseries/dlpar: Fix a missing check in dlpar_parse_cc_property() + * Eoan update: v5.2.1 upstream stable release (LP: #1836622) + - crypto: lrw - use correct alignmask + - crypto: talitos - rename alternative AEAD algos. + - fscrypt: don't set policy for a dead directory + - udf: Fix incorrect final NOT_ALLOCATED (hole) extent length + - media: stv0297: fix frequency range limit + - ALSA: usb-audio: Fix parse of UAC2 Extension Units + - ALSA: hda/realtek - Headphone Mic can't record after S3 + - tpm: Actually fail on TPM errors during "get random" + - tpm: Fix TPM 1.2 Shutdown sequence to prevent future TPM operations + - block: fix .bi_size overflow + - block, bfq: NULL out the bic when it's no longer valid + - perf intel-pt: Fix itrace defaults for perf script + - perf auxtrace: Fix itrace defaults for perf script + - perf intel-pt: Fix itrace defaults for perf script intel-pt documentation + - perf pmu: Fix uncore PMU alias list for ARM64 + - perf thread-stack: Fix thread stack return from kernel for kernel-only case + - perf header: Assign proper ff->ph in perf_event__synthesize_features() + - x86/ptrace: Fix possible spectre-v1 in ptrace_get_debugreg() + - x86/tls: Fix possible spectre-v1 in do_get_thread_area() + - Documentation: Add section about CPU vulnerabilities for Spectre + - Documentation/admin: Remove the vsyscall=native documentation + - mwifiex: Don't abort on small, spec-compliant vendor IEs + - USB: serial: ftdi_sio: add ID for isodebug v1 + - USB: serial: option: add support for GosunCn ME3630 RNDIS mode + - Revert "serial: 8250: Don't service RX FIFO if interrupts are disabled" + - p54usb: Fix race between disconnect and firmware loading + - usb: gadget: f_fs: data_len used before properly set + - usb: gadget: ether: Fix race between gether_disconnect and rx_submit + - usb: dwc2: use a longer AHB idle timeout in dwc2_core_reset() + - usb: renesas_usbhs: add a workaround for a race condition of workqueue + - drivers/usb/typec/tps6598x.c: fix portinfo width + - drivers/usb/typec/tps6598x.c: fix 4CC cmd write + - p54: fix crash during initialization + - staging: comedi: dt282x: fix a null pointer deref on interrupt + - staging: wilc1000: fix error path cleanup in wilc_wlan_initialize() + - staging: bcm2835-camera: Restore return behavior of ctrl_set_bitrate() + - staging: comedi: amplc_pci230: fix null pointer deref on interrupt + - staging: mt7621-pci: fix PCIE_FTS_NUM_LO macro + - HID: Add another Primax PIXART OEM mouse quirk + - lkdtm: support llvm-objcopy + - binder: fix memory leak in error path + - binder: return errors from buffer copy functions + - iio: adc: stm32-adc: add missing vdda-supply + - coresight: Potential uninitialized variable in probe() + - coresight: etb10: Do not call smp_processor_id from preemptible + - coresight: tmc-etr: Do not call smp_processor_id() from preemptible + - coresight: tmc-etr: alloc_perf_buf: Do not call smp_processor_id from + preemptible + - coresight: tmc-etf: Do not call smp_processor_id from preemptible + - carl9170: fix misuse of device driver API + - Revert "x86/build: Move _etext to actual end of .text" + - VMCI: Fix integer overflow in VMCI handle arrays + - staging: vchiq_2835_arm: revert "quit using custom down_interruptible()" + - staging: vchiq: make wait events interruptible + - staging: vchiq: revert "switch to wait_for_completion_killable" + - staging: fsl-dpaa2/ethsw: fix memory leak of switchdev_work + - staging: bcm2835-camera: Replace spinlock protecting context_map with mutex + - staging: bcm2835-camera: Ensure all buffers are returned on disable + - staging: bcm2835-camera: Remove check of the number of buffers supplied + - staging: bcm2835-camera: Handle empty EOS buffers whilst streaming + - staging: rtl8712: reduce stack usage, again + - Linux 5.2.1 + - [Config] updateconfigs after v5.2.1 stable update + * fcf-protection=none patch with upstream version + - Revert "UBUNTU: SAUCE: add -fcf-protection=none to retpoline flags" + - SAUCE: kbuild: add -fcf-protection=none to retpoline flags + * Miscellaneous Ubuntu changes + - SAUCE: selftests/ftrace: avoid failure when trying to probe a notrace + function + - SAUCE: selftests/powerpc/ptrace: fix build failure + - update dkms package versions + - [Packaging] add zlua to zfs-modules.ignore + - update dkms package versions + + [ Ubuntu: 5.2.0-8.9 ] + + * linux: 5.2.0-8.9 -proposed tracker (LP: #1835700) + * Miscellaneous Ubuntu changes + - [Packaging] replace zfs and spl build with zfs 0.8.1-1ubuntu1 + - SAUCE: test_bpf: remove expected fail for Ctx heavy transformations test on + s390 + - SAUCE: add -fcf-protection=none to retpoline flags + - SAUCE: usbip: ensure strings copied using strncpy are null-terminated + - SAUCE: usbip: add -Wno-address-of-packed-member to EXTRA_CFLAGS + - SAUCE: perf jvmti: ensure strncpy result is null-terminated + - update dkms package versions + - add removed zfs modules to modules.ignore + * Rebase to v5.2 + + [ Ubuntu: 5.2.0-7.8 ] + + * Kernel panic upon resetting ixgbe SR-IOV VFIO virtual function using 5.0 + kernel (LP: #1829652) + - SAUCE: ixgbe: Avoid NULL pointer dereference with VF on non-IPsec hw + * Hi1620 driver updates from upstream 5.2 merge window (LP: #1830815) + - net: hns3: initialize CPU reverse mapping + - net: hns3: refine the flow director handle + - net: hns3: add aRFS support for PF + - net: hns3: fix for FEC configuration + - RDMA/hns: Remove unnecessary print message in aeq + - RDMA/hns: Update CQE specifications + - RDMA/hns: Move spin_lock_irqsave to the correct place + - RDMA/hns: Remove jiffies operation in disable interrupt context + - RDMA/hns: Replace magic numbers with #defines + - net: hns3: fix compile warning without CONFIG_RFS_ACCEL + - net: hns3: fix for HNS3_RXD_GRO_SIZE_M macro + - net: hns3: add support for dump firmware statistics by debugfs + - net: hns3: use HCLGE_STATE_NIC_REGISTERED to indicate PF NIC client has + registered + - net: hns3: use HCLGE_STATE_ROCE_REGISTERED to indicate PF ROCE client has + registered + - net: hns3: use HCLGEVF_STATE_NIC_REGISTERED to indicate VF NIC client has + registered + - net: hns3: modify hclge_init_client_instance() + - net: hns3: modify hclgevf_init_client_instance() + - net: hns3: add handshake with hardware while doing reset + - net: hns3: stop schedule reset service while unloading driver + - net: hns3: adjust hns3_uninit_phy()'s location in the hns3_client_uninit() + - net: hns3: fix a memory leak issue for hclge_map_unmap_ring_to_vf_vector + - RDMA/hns: Bugfix for posting multiple srq work request + - net: hns3: remove redundant core reset + - net: hns3: don't configure new VLAN ID into VF VLAN table when it's full + - net: hns3: fix VLAN filter restore issue after reset + - net: hns3: set the port shaper according to MAC speed + - net: hns3: add a check to pointer in error_detected and slot_reset + - net: hns3: set ops to null when unregister ad_dev + - net: hns3: add handling of two bits in MAC tunnel interrupts + - net: hns3: remove setting bit of reset_requests when handling mac tunnel + interrupts + - net: hns3: add opcode about query and clear RAS & MSI-X to special opcode + - net: hns3: delay and separate enabling of NIC and ROCE HW errors + - RDMA/hns: fix inverted logic of readl read and shift + - RDMA/hns: Bugfix for filling the sge of srq + - net: hns3: log detail error info of ROCEE ECC and AXI errors + - net: hns3: fix wrong size of mailbox responding data + - net: hns3: make HW GRO handling compliant with SW GRO + - net: hns3: replace numa_node_id with numa_mem_id for buffer reusing + - net: hns3: refactor hns3_get_new_int_gl function + - net: hns3: trigger VF reset if a VF has an over_8bd_nfe_err + - net: hns3: delete the redundant user NIC codes + - net: hns3: small changes for magic numbers + - net: hns3: use macros instead of magic numbers + - net: hns3: refactor PF/VF RSS hash key configuration + - net: hns3: some modifications to simplify and optimize code + - net: hns3: fix some coding style issues + - net: hns3: delay setting of reset level for hw errors until slot_reset is + called + - net: hns3: fix avoid unnecessary resetting for the H/W errors which do not + require reset + - net: hns3: process H/W errors occurred before HNS dev initialization + - net: hns3: add recovery for the H/W errors occurred before the HNS dev + initialization + - net: hns3: some changes of MSI-X bits in PPU(RCB) + - net: hns3: extract handling of mpf/pf msi-x errors into functions + - net: hns3: clear restting state when initializing HW device + - net: hns3: free irq when exit from abnormal branch + - net: hns3: fix for dereferencing before null checking + - net: hns3: fix for skb leak when doing selftest + - net: hns3: delay ring buffer clearing during reset + - net: hns3: some variable modification + - net: hns3: fix dereference of ae_dev before it is null checked + - scsi: hisi_sas: Delete PHY timers when rmmod or probe failed + - scsi: hisi_sas: Fix the issue of argument mismatch of printing ecc errors + - scsi: hisi_sas: Reduce HISI_SAS_SGE_PAGE_CNT in size + - scsi: hisi_sas: Change the type of some numbers to unsigned + - scsi: hisi_sas: Ignore the error code between phy down to phy up + - scsi: hisi_sas: Disable stash for v3 hw + - net: hns3: Add missing newline at end of file + - RDMa/hns: Don't stuck in endless timeout loop + * Sometimes touchpad automatically trigger double click (LP: #1833484) + - SAUCE: i2c: designware: Add disable runtime pm quirk + * Add pointstick support on HP ZBook 17 G5 (LP: #1833387) + - Revert "HID: multitouch: Support ALPS PTP stick with pid 0x120A" + * depmod may prefer unsigned l-r-m nvidia modules to signed modules + (LP: #1834479) + - [Packaging] dkms-build--nvidia-N -- clean up unsigned ko files + * Miscellaneous Ubuntu changes + - SAUCE: selftests/powerpc: disable signal_fuzzer test + * Rebase to v5.2-rc7 + + [ Ubuntu: 5.2.0-6.7 ] + + * hinic: fix oops due to race in set_rx_mode (LP: #1832048) + - hinic: fix a bug in set rx mode + * Miscellaneous Ubuntu changes + - rebase to v5.2-rc6 + * Rebase to v5.2-rc6 + + [ Ubuntu: 5.2.0-5.6 ] + + * QCA9377 isn't being recognized sometimes (LP: #1757218) + - SAUCE: USB: Disable USB2 LPM at shutdown + * shiftfs: allow changing ro/rw for subvolumes (LP: #1832316) + - SAUCE: shiftfs: allow changing ro/rw for subvolumes + * Miscellaneous Ubuntu changes + - update dkms package versions + - [Packaging] replace nvidia-418 dkms build with nvidia-430 + - SAUCE: import aufs driver + * Rebase to v5.2-rc5 + + [ Ubuntu: 5.2.0-4.5 ] + + * arm64: cma_alloc errors at boot (LP: #1823753) + - [Config] Bump CMA_SIZE_MBYTES to 32 on arm64 + - dma-contiguous: add dma_{alloc,free}_contiguous() helpers + - dma-contiguous: use fallback alloc_pages for single pages + - dma-contiguous: fix !CONFIG_DMA_CMA version of dma_{alloc, + free}_contiguous() + * Miscellaneous Ubuntu changes + - [Config] CONFIG_MFD_TQMX86=n for s390x + - [Config] CONFIG_GPIO_AMD_FCH=n for s390x + - [Config] CONFIG_BACKLIGHT_CLASS_DEVICE=n on s390x + - [Config] CONFIG_LCD_CLASS_DEVICE=n for s390x + - [Config] CONFIG_DRM_ETNAVIV=m for armhf generic-lpae + - [Config] CONFIG_DRM_NOUVEAU_SVM=n + - [Config] CONFIG_HWMON=n for s390x + - [Config] CONFIG_NEW_LEDS=n for s390x + - [Config] CONFIG_MTD_NAND_OMAP2=y for armhf + - [Config] CONFIG_VOP_BUS=n for non-amd64 arches + - [Config] CONFIG_TI_CPSW_PHY_SEL=n + - [Config] CONFIG_INTERCONNECT=n for s390x + - [Config] CONFIG_SCSI_GDTH=n for s390x + - [Config] CONFIG_PACKING=n for s390x + - [Config] CONFIG_ARCH_MILBEAUT=y for armhf + - [Config] update annotations following config review + - update dkms package versions + - [Config] enable nvidia dkms build + * Rebase to v5.2-rc4 + + [ Ubuntu: 5.2.0-3.4 ] + + * [18.04/18.10] File libperf-jvmti.so is missing in linux-tools-common deb on + Ubuntu (LP: #1761379) + - [Packaging] Support building libperf-jvmti.so + * Miscellaneous Ubuntu changes + - SAUCE: Revert "bpf, selftest: test global data/bss/rodata sections" + - update dkms package versions + - [Config] enable zfs + - rebase to v5.2-rc3 + * Rebase to v5.2-rc3 + + [ Ubuntu: 5.2.0-2.3 ] + + * Miscellaneous Ubuntu changes + - SAUCE: perf arm64: Fix mksyscalltbl when system kernel headers are ahead of + the kernel + + [ Ubuntu: 5.2.0-1.2 ] + + * Miscellaneous Ubuntu changes + - [Config] CONFIG_INTEGRITY_PLATFORM_KEYRING=y + - update dkms package versions + - [Config] enable vbox dkms build + - update dkms package versions + * Rebase to v5.2-rc2 + + [ Ubuntu: 5.2.0-0.1 ] + + * Miscellaneous Ubuntu changes + - SAUCE: import aufs driver + - [Packaging] disable ZFS + - [Packaging] disable nvidia + - [Packaging] dkms-build -- expand paths searched for make.log files + - add virtualbox-guest-dkms dkms package build + - enable vbox dkms build for amd64 and i386 + - update dkms package versions + - SAUCE: (efi-lockdown) Add the ability to lock down access to the running + kernel image + - SAUCE: (efi-lockdown) Enforce module signatures if the kernel is locked down + - SAUCE: (efi-lockdown) Restrict /dev/{mem,kmem,port} when the kernel is + locked down + - SAUCE: (efi-lockdown) kexec_load: Disable at runtime if the kernel is locked + down + - SAUCE: (efi-lockdown) Copy secure_boot flag in boot params across kexec + reboot + - SAUCE: (efi-lockdown) kexec_file: split KEXEC_VERIFY_SIG into KEXEC_SIG and + KEXEC_SIG_FORCE + - SAUCE: (efi-lockdown) kexec_file: Restrict at runtime if the kernel is + locked down + - SAUCE: (efi-lockdown) hibernate: Disable when the kernel is locked down + - SAUCE: (efi-lockdown) uswsusp: Disable when the kernel is locked down + - SAUCE: (efi-lockdown) PCI: Lock down BAR access when the kernel is locked + down + - SAUCE: (efi-lockdown) x86: Lock down IO port access when the kernel is + locked down + - SAUCE: (efi-lockdown) x86/msr: Restrict MSR access when the kernel is locked + down + - SAUCE: (efi-lockdown) ACPI: Limit access to custom_method when the kernel is + locked down + - SAUCE: (efi-lockdown) acpi: Ignore acpi_rsdp kernel param when the kernel + has been locked down + - SAUCE: (efi-lockdown) acpi: Disable ACPI table override if the kernel is + locked down + - SAUCE: (efi-lockdown) acpi: Disable APEI error injection if the kernel is + locked down + - SAUCE: (efi-lockdown) Prohibit PCMCIA CIS storage when the kernel is locked + down + - SAUCE: (efi-lockdown) Lock down TIOCSSERIAL + - SAUCE: (efi-lockdown) Lock down module params that specify hardware + parameters (eg. ioport) + - SAUCE: (efi-lockdown) x86/mmiotrace: Lock down the testmmiotrace module + - SAUCE: (efi-lockdown) Lock down /proc/kcore + - SAUCE: (efi-lockdown) Lock down kprobes + - SAUCE: (efi-lockdown) bpf: Restrict kernel image access functions when the + kernel is locked down + - SAUCE: (efi-lockdown) Lock down perf + - SAUCE: (efi-lockdown) debugfs: Restrict debugfs when the kernel is locked + down + - SAUCE: (efi-lockdown) lockdown: Print current->comm in restriction messages + - SAUCE: (efi-lockdown) kexec: Allow kexec_file() with appropriate IMA policy + when locked down + - SAUCE: (efi-lockdown) Make get_cert_list() not complain about cert lists + that aren't present. + - SAUCE: (efi-lockdown) Add efi_status_to_str() and rework + efi_status_to_err(). + - SAUCE: (efi-lockdown) Make get_cert_list() use efi_status_to_str() to print + error messages. + - SAUCE: (efi-lockdown) efi: Add an EFI_SECURE_BOOT flag to indicate secure + boot mode + - SAUCE: (efi-lockdown) efi: Lock down the kernel if booted in secure boot + mode + - SAUCE: (efi-lockdown) KEYS: Make use of platform keyring for module + signature verify + - SAUCE: (efi-lockdown) debugfs: avoid EPERM when no open file operation + defined + - SAUCE: (efi-lockdown) efi: Sanitize boot_params in efi stub + - SAUCE: (efi-lockdown) furter KEXEC_VERIFY_SIG -> KEXEC_SIG updates + - SAUCE: (efi-lockdown) arm64: add kernel config option to lock down when in + Secure Boot mode + - update dkms package versions + - [Config] disable vbox build + - SAUCE: s390: mark __cpacf_check_opcode() and cpacf_query_func() as + __always_inline + - SAUCE: IB/mlx5: use size_t instead of u64 when dividing + * Rebase to v5.2-rc1 + + [ Ubuntu: 5.2.0-0.0 ] + + * Dummy entry. + + [ Ubuntu: 5.1.0-2.2 ] + + * Packaging resync (LP: #1786013) + - [Packaging] resync git-ubuntu-log + * Eoan update: v5.1.2 upstream stable release (LP: #1829050) + - x86/msr-index: Cleanup bit defines + - x86/speculation: Consolidate CPU whitelists + - x86/speculation/mds: Add basic bug infrastructure for MDS + - x86/speculation/mds: Add BUG_MSBDS_ONLY + - x86/kvm: Expose X86_FEATURE_MD_CLEAR to guests + - x86/speculation/mds: Add mds_clear_cpu_buffers() + - x86/speculation/mds: Clear CPU buffers on exit to user + - x86/kvm/vmx: Add MDS protection when L1D Flush is not active + - x86/speculation/mds: Conditionally clear CPU buffers on idle entry + - x86/speculation/mds: Add mitigation control for MDS + - x86/speculation/mds: Add sysfs reporting for MDS + - x86/speculation/mds: Add mitigation mode VMWERV + - Documentation: Move L1TF to separate directory + - Documentation: Add MDS vulnerability documentation + - x86/speculation/mds: Add mds=full,nosmt cmdline option + - x86/speculation: Move arch_smt_update() call to after mitigation decisions + - x86/speculation/mds: Add SMT warning message + - x86/speculation/mds: Fix comment + - x86/speculation/mds: Print SMT vulnerable on MSBDS with mitigations off + - cpu/speculation: Add 'mitigations=' cmdline option + - x86/speculation: Support 'mitigations=' cmdline option + - powerpc/speculation: Support 'mitigations=' cmdline option + - s390/speculation: Support 'mitigations=' cmdline option + - x86/speculation/mds: Add 'mitigations=' support for MDS + - x86/mds: Add MDSUM variant to the MDS documentation + - Documentation: Correct the possible MDS sysfs values + - x86/speculation/mds: Fix documentation typo + - Linux 5.1.2 + * Eoan update: v5.1.1 upstream stable release (LP: #1829046) + - Drivers: hv: vmbus: Remove the undesired put_cpu_ptr() in hv_synic_cleanup() + - ubsan: Fix nasty -Wbuiltin-declaration-mismatch GCC-9 warnings + - staging: greybus: power_supply: fix prop-descriptor request size + - staging: wilc1000: Avoid GFP_KERNEL allocation from atomic context. + - staging: most: cdev: fix chrdev_region leak in mod_exit + - staging: most: sound: pass correct device when creating a sound card + - usb: dwc3: Allow building USB_DWC3_QCOM without EXTCON + - usb: dwc3: Fix default lpm_nyet_threshold value + - USB: serial: f81232: fix interrupt worker not stop + - USB: cdc-acm: fix unthrottle races + - usb-storage: Set virt_boundary_mask to avoid SG overflows + - genirq: Prevent use-after-free and work list corruption + - intel_th: pci: Add Comet Lake support + - iio: adc: qcom-spmi-adc5: Fix of-based module autoloading + - cpufreq: armada-37xx: fix frequency calculation for opp + - ACPI / LPSS: Use acpi_lpss_* instead of acpi_subsys_* functions for + hibernate + - soc: sunxi: Fix missing dependency on REGMAP_MMIO + - scsi: lpfc: change snprintf to scnprintf for possible overflow + - scsi: qla2xxx: Fix incorrect region-size setting in optrom SYSFS routines + - scsi: qla2xxx: Set remote port devloss timeout to 0 + - scsi: qla2xxx: Fix device staying in blocked state + - Bluetooth: hidp: fix buffer overflow + - Bluetooth: Align minimum encryption key size for LE and BR/EDR connections + - Bluetooth: Fix not initializing L2CAP tx_credits + - Bluetooth: hci_bcm: Fix empty regulator supplies for Intel Macs + - UAS: fix alignment of scatter/gather segments + - ASoC: Intel: avoid Oops if DMA setup fails + - i3c: Fix a shift wrap bug in i3c_bus_set_addr_slot_status() + - locking/futex: Allow low-level atomic operations to return -EAGAIN + - arm64: futex: Bound number of LDXR/STXR loops in FUTEX_WAKE_OP + - Linux 5.1.1 + * shiftfs: lock security sensitive superblock flags (LP: #1827122) + - SAUCE: shiftfs: lock down certain superblock flags + * Please package libbpf (which is done out of the kernel src) in Debian [for + 19.10] (LP: #1826410) + - SAUCE: tools -- fix add ability to disable libbfd + * ratelimit cma_alloc messages (LP: #1828092) + - SAUCE: cma: ratelimit cma_alloc error messages + * Headphone jack switch sense is inverted: plugging in headphones disables + headphone output (LP: #1824259) + - ASoC: rt5645: Headphone Jack sense inverts on the LattePanda board + * There are 4 HDMI/Displayport audio output listed in sound setting without + attach any HDMI/DP monitor (LP: #1827967) + - ALSA: hda/hdmi - Read the pin sense from register when repolling + - ALSA: hda/hdmi - Consider eld_valid when reporting jack event + * CONFIG_LOG_BUF_SHIFT set to 14 is too low on arm64 (LP: #1824864) + - [Config] CONFIG_LOG_BUF_SHIFT=18 on all 64bit arches + * CTAUTO:DevOps:860.50:devops4fp1:Error occurred during LINUX Dmesg error + Checking for all LINUX clients for devops4p10 (LP: #1766201) + - SAUCE: integrity: downgrade error to warning + * linux-buildinfo: pull out ABI information into its own package + (LP: #1806380) + - [Packaging] autoreconstruct -- base tag is always primary mainline version + * [SRU] Please sync vbox modules from virtualbox 6.0.6 on next kernel update + (LP: #1825210) + - vbox-update: updates for renamed makefiles + - ubuntu: vbox -- update to 6.0.6-dfsg-1 + * autofs kernel module missing (LP: #1824333) + - [Config] Update autofs4 path in inclusion list + * The Realtek card reader does not enter PCIe 1.1/1.2 (LP: #1825487) + - SAUCE: misc: rtsx: Fixed rts5260 power saving parameter and sd glitch + * CVE-2019-3874 + - sctp: implement memory accounting on tx path + - sctp: implement memory accounting on rx path + * apparmor does not start in Disco LXD containers (LP: #1824812) + - SAUCE: shiftfs: use separate llseek method for directories + * Miscellaneous Ubuntu changes + - [Packaging] autoreconstruct -- remove for -rc kernels + - SAUCE: (efi-lockdown) debugfs: avoid EPERM when no open file operation + defined + - SAUCE: (efi-lockdown) efi: Sanitize boot_params in efi stub + - SAUCE: (efi-lockdown) furter KEXEC_VERIFY_SIG -> KEXEC_SIG updates + - [Config] (efi-lockdown): update configs after efi lockdown patch refresh + - [Packaging] don't delete efi_parser.c + - vbox-update -- do not fix up KERN_DIR or KBUILD_EXTMOD + - ubuntu: vbox -- update to 6.0.6-dfsg-2 + - add nvidia-418 dkms build + - remove virtualbox guest drivers + - [Packaging] dkms-build -- expand paths searched for make.log files + - add virtualbox-guest-dkms dkms package build + - enable vbox dkms build for amd64 and i386 + - [Config] update configs for v5.1(-rc7)? rebase + - update dkms package versions + - Add the ability to lock down access to the running kernel image + - Enforce module signatures if the kernel is locked down + - Restrict /dev/{mem,kmem,port} when the kernel is locked down + - kexec_load: Disable at runtime if the kernel is locked down + - Copy secure_boot flag in boot params across kexec reboot + - kexec_file: split KEXEC_VERIFY_SIG into KEXEC_SIG and KEXEC_SIG_FORCE + - kexec_file: Restrict at runtime if the kernel is locked down + - hibernate: Disable when the kernel is locked down + - uswsusp: Disable when the kernel is locked down + - PCI: Lock down BAR access when the kernel is locked down + - x86: Lock down IO port access when the kernel is locked down + - x86/msr: Restrict MSR access when the kernel is locked down + - ACPI: Limit access to custom_method when the kernel is locked down + - acpi: Ignore acpi_rsdp kernel param when the kernel has been locked down + - acpi: Disable ACPI table override if the kernel is locked down + - acpi: Disable APEI error injection if the kernel is locked down + - Prohibit PCMCIA CIS storage when the kernel is locked down + - Lock down TIOCSSERIAL + - Lock down module params that specify hardware parameters (eg. ioport) + - x86/mmiotrace: Lock down the testmmiotrace module + - Lock down /proc/kcore + - Lock down kprobes + - bpf: Restrict kernel image access functions when the kernel is locked down + - Lock down perf + - debugfs: Restrict debugfs when the kernel is locked down + - lockdown: Print current->comm in restriction messages + - kexec: Allow kexec_file() with appropriate IMA policy when locked down + - Make get_cert_list() not complain about cert lists that aren't present. + - Add efi_status_to_str() and rework efi_status_to_err(). + - Make get_cert_list() use efi_status_to_str() to print error messages. + - efi: Add an EFI_SECURE_BOOT flag to indicate secure boot mode + - efi: Lock down the kernel if booted in secure boot mode + - KEYS: Make use of platform keyring for module signature verify + * Miscellaneous upstream changes + - ALSA: hdea/realtek - Headset fixup for System76 Gazelle (gaze14) + + [ Ubuntu: 5.1.0-1.1 ] + + * bionic: fork out linux-snapdragon into its own topic kernel (LP: #1820868) + - [Packaging]: really drop snapdragon + * Miscellaneous Ubuntu changes + - SAUCE: fix vbox use of MAP_SHARED + - SAUCE: fix vbox use of vm_fault_t + - [Packaging] disable ZFS + - [Packaging] disable nvidia + - SAUCE: perf annotate: Fix build on 32 bit for BPF annotation + - [Config]: updateconfig after rebase to v5.1-rc + - [Config]: build ETNAVIV only on arm platforms + - [Config]: Disable CMA on non-arm platforms + - [Config]: MMC_CQHCI is needed by some built-in drivers + - [Config]: a.out support has been deprecated + - [Config]: R3964 was marked as BROKEN + - [Config]: Add SENSIRION_SGP30 module + * Miscellaneous upstream changes + - Revert "UBUNTU: SAUCE: tools: lib/bpf -- add generated headers to search + path" + - Revert "UBUNTU: SAUCE: btqcomsmd: introduce BT_QCOMSMD_HACK" + + [ Ubuntu: 5.1.0-0.0 ] + + * Dummy entry. + + -- Thadeu Lima de Souza Cascardo Fri, 04 Oct 2019 12:16:16 -0300 + +linux-azure (5.3.0-1000.0) eoan; urgency=medium + + * Empty entry + + -- Thadeu Lima de Souza Cascardo Thu, 03 Oct 2019 16:34:07 -0300 + +linux-azure (5.0.0-1018.19) disco; urgency=medium + + * disco/linux-azure: 5.0.0-1018.19 -proposed tracker (LP: #1840803) + + [ Ubuntu: 5.0.0-27.28 ] + + * disco/linux: 5.0.0-27.28 -proposed tracker (LP: #1840816) + * [Potential Regression] System crashes when running ftrace test in + ubuntu_kernel_selftests (LP: #1840750) + - x86/kprobes: Set instruction page as executable + + -- Khalid Elmously Tue, 20 Aug 2019 17:01:28 -0400 + +linux-azure (5.0.0-1017.18) disco; urgency=medium + + * disco/linux-azure: 5.0.0-1017.18 -proposed tracker (LP: #1840326) + + * [linux-azure] Important InfiniBand patches for Ubuntu 18.04 (LP: #1839673) + - SAUCE: Don't wait in hvnd_query_gid after interface is already bound to ND + - SAUCE: Expose extended attributes for user IB verbs QUERY_DEVICE, CREATE_CQ + and CREATE_QP + + * [linux-azure] CRI-RDOS | Live migration only takes 10 seconds, but the VM + was unavailable for 2 hours (LP: #1837661) + - PCI: hv: Fix a use-after-free bug in hv_eject_device_work() + - SAUCE: PCI: hv: Fix panic by calling hv_pci_remove_slots() earlier + + [ Ubuntu: 5.0.0-26.27 ] + + * disco/linux: 5.0.0-26.27 -proposed tracker (LP: #1839972) + * Packaging resync (LP: #1786013) + - [Packaging] update helper scripts + * alsa/hdmi: add icelake hdmi audio support for a Dell machine (LP: #1836916) + - ALSA: hda: hdmi - add Icelake support + - ALSA: hda/hdmi - Remove duplicated define + - ALSA: hda/hdmi - Fix i915 reverse port/pin mapping + * input/mouse: alps trackpoint-only device doesn't work (LP: #1836752) + - Input: alps - don't handle ALPS cs19 trackpoint-only device + - Input: alps - fix a mismatch between a condition check and its comment + * [18.04 FEAT] Enhanced hardware support (LP: #1836857) + - s390: report new CPU capabilities + - s390: add alignment hints to vector load and store + * System does not auto detect disconnection of external monitor (LP: #1835001) + - drm/i915: Add support for retrying hotplug + - drm/i915: Enable hotplug retry + * [18.04 FEAT] Enhanced CPU-MF hardware counters - kernel part (LP: #1836860) + - s390/cpum_cf: Add support for CPU-MF SVN 6 + - s390/cpumf: Add extended counter set definitions for model 8561 and 8562 + * EeePC 1005px laptop backlight is off after system boot up (LP: #1837117) + - platform/x86: asus-wmi: Only Tell EC the OS will handle display hotkeys from + asus_nb_wmi + * br_netfilter: namespace sysctl operations (LP: #1836910) + - netfilter: bridge: port sysctls to use brnf_net + - netfilter: bridge: namespace bridge netfilter sysctls + - netfilter: bridge: prevent UAF in brnf_exit_net() + * ideapad_laptop disables WiFi/BT radios on Lenovo Y540 (LP: #1837136) + - platform/x86: ideapad-laptop: Remove no_hw_rfkill_list + * shiftfs: allow overlayfs (LP: #1838677) + - SAUCE: shiftfs: enable overlayfs on shiftfs + * bcache: bch_allocator_thread(): hung task timeout (LP: #1784665) + - bcache: never writeback a discard operation + - bcache: improve bcache_reboot() + - SAUCE: bcache: fix deadlock in bcache_allocator + * Regressions in CMA allocation rework (LP: #1839395) + - dma-contiguous: do not overwrite align in dma_alloc_contiguous() + - dma-contiguous: page-align the size in dma_free_contiguous() + * CVE-2019-3900 + - vhost: introduce vhost_exceeds_weight() + - vhost_net: fix possible infinite loop + - vhost: vsock: add weight support + - vhost: scsi: add weight support + * Disco update: 5.0.21 upstream stable release (LP: #1837518) + - bonding/802.3ad: fix slave link initialization transition states + - cxgb4: offload VLAN flows regardless of VLAN ethtype + - inet: switch IP ID generator to siphash + - ipv4/igmp: fix another memory leak in igmpv3_del_delrec() + - ipv4/igmp: fix build error if !CONFIG_IP_MULTICAST + - ipv6: Consider sk_bound_dev_if when binding a raw socket to an address + - ipv6: Fix redirect with VRF + - llc: fix skb leak in llc_build_and_send_ui_pkt() + - mlxsw: spectrum_acl: Avoid warning after identical rules insertion + - net: dsa: mv88e6xxx: fix handling of upper half of STATS_TYPE_PORT + - net: fec: fix the clk mismatch in failed_reset path + - net-gro: fix use-after-free read in napi_gro_frags() + - net: mvneta: Fix err code path of probe + - net: mvpp2: fix bad MVPP2_TXQ_SCHED_TOKEN_CNTR_REG queue value + - net: phy: marvell10g: report if the PHY fails to boot firmware + - net: sched: don't use tc_action->order during action dump + - net: stmmac: fix reset gpio free missing + - r8169: fix MAC address being lost in PCI D3 + - usbnet: fix kernel crash after disconnect + - net/mlx5: Avoid double free in fs init error unwinding path + - tipc: Avoid copying bytes beyond the supplied data + - net/mlx5: Allocate root ns memory using kzalloc to match kfree + - net/mlx5e: Disable rxhash when CQE compress is enabled + - net: stmmac: fix ethtool flow control not able to get/set + - net: stmmac: dma channel control register need to be init first + - bnxt_en: Fix aggregation buffer leak under OOM condition. + - bnxt_en: Fix possible BUG() condition when calling pci_disable_msix(). + - bnxt_en: Reduce memory usage when running in kdump kernel. + - net/tls: fix state removal with feature flags off + - net/tls: don't ignore netdev notifications if no TLS features + - cxgb4: Revert "cxgb4: Remove SGE_HOST_PAGE_SIZE dependency on page size" + - net: correct zerocopy refcnt with udp MSG_MORE + - crypto: vmx - ghash: do nosimd fallback manually + - xen/pciback: Don't disable PCI_COMMAND on PCI device reset. + - Revert "tipc: fix modprobe tipc failed after switch order of device + registration" + - tipc: fix modprobe tipc failed after switch order of device registration + - Linux 5.0.21 + * Disco update: 5.0.20 upstream stable release (LP: #1837517) + - x86: Hide the int3_emulate_call/jmp functions from UML + - ext4: do not delete unlinked inode from orphan list on failed truncate + - ext4: wait for outstanding dio during truncate in nojournal mode + - KVM: x86: fix return value for reserved EFER + - bio: fix improper use of smp_mb__before_atomic() + - sbitmap: fix improper use of smp_mb__before_atomic() + - Revert "scsi: sd: Keep disk read-only when re-reading partition" + - crypto: hash - fix incorrect HASH_MAX_DESCSIZE + - crypto: vmx - CTR: always increment IV as quadword + - mmc: sdhci-iproc: cygnus: Set NO_HISPD bit to fix HS50 data hold time + problem + - mmc: sdhci-iproc: Set NO_HISPD bit to fix HS50 data hold time problem + - kvm: svm/avic: fix off-by-one in checking host APIC ID + - libnvdimm/pmem: Bypass CONFIG_HARDENED_USERCOPY overhead + - arm64/kernel: kaslr: reduce module randomization range to 2 GB + - arm64/iommu: handle non-remapped addresses in ->mmap and ->get_sgtable + - gfs2: Fix sign extension bug in gfs2_update_stats + - btrfs: don't double unlock on error in btrfs_punch_hole + - Btrfs: do not abort transaction at btrfs_update_root() after failure to COW + path + - Btrfs: avoid fallback to transaction commit during fsync of files with holes + - Btrfs: fix race between ranged fsync and writeback of adjacent ranges + - btrfs: sysfs: Fix error path kobject memory leak + - btrfs: sysfs: don't leak memory when failing add fsid + - fbdev: fix divide error in fb_var_to_videomode + - cifs: fix credits leak for SMB1 oplock breaks + - arm64: errata: Add workaround for Cortex-A76 erratum #1463225 + - [Config] Add CONFIG_ARM64_ERRATUM_1463225 + - btrfs: honor path->skip_locking in backref code + - ovl: relax WARN_ON() for overlapping layers use case + - fbdev: fix WARNING in __alloc_pages_nodemask bug + - media: cpia2: Fix use-after-free in cpia2_exit + - media: serial_ir: Fix use-after-free in serial_ir_init_module + - media: vb2: add waiting_in_dqbuf flag + - media: vivid: use vfree() instead of kfree() for dev->bitmap_cap + - ssb: Fix possible NULL pointer dereference in ssb_host_pcmcia_exit + - bpf: devmap: fix use-after-free Read in __dev_map_entry_free + - batman-adv: mcast: fix multicast tt/tvlv worker locking + - at76c50x-usb: Don't register led_trigger if usb_register_driver failed + - acct_on(): don't mess with freeze protection + - netfilter: ctnetlink: Resolve conntrack L3-protocol flush regression + - Revert "btrfs: Honour FITRIM range constraints during free space trim" + - gfs2: Fix lru_count going negative + - cxgb4: Fix error path in cxgb4_init_module + - afs: Fix getting the afs.fid xattr + - NFS: make nfs_match_client killable + - gfs2: fix race between gfs2_freeze_func and unmount + - IB/hfi1: Fix WQ_MEM_RECLAIM warning + - gfs2: Fix occasional glock use-after-free + - mmc: core: Verify SD bus width + - tools/bpf: fix perf build error with uClibc (seen on ARC) + - selftests/bpf: set RLIMIT_MEMLOCK properly for test_libbpf_open.c + - bpftool: exclude bash-completion/bpftool from .gitignore pattern + - ice: Separate if conditions for ice_set_features() + - blk-mq: split blk_mq_alloc_and_init_hctx into two parts + - blk-mq: grab .q_usage_counter when queuing request from plug code path + - dmaengine: tegra210-dma: free dma controller in remove() + - net: ena: gcc 8: fix compilation warning + - net: ena: fix: set freed objects to NULL to avoid failing future allocations + - hv_netvsc: fix race that may miss tx queue wakeup + - Bluetooth: Ignore CC events not matching the last HCI command + - pinctrl: zte: fix leaked of_node references + - ASoC: Intel: kbl_da7219_max98357a: Map BTN_0 to KEY_PLAYPAUSE + - usb: dwc2: gadget: Increase descriptors count for ISOC's + - usb: dwc3: move synchronize_irq() out of the spinlock protected block + - usb: gadget: f_fs: don't free buffer prematurely + - ASoC: hdmi-codec: unlock the device on startup errors + - powerpc/perf: Return accordingly on invalid chip-id in + - powerpc/boot: Fix missing check of lseek() return value + - powerpc/perf: Fix loop exit condition in nest_imc_event_init + - spi: atmel-quadspi: fix crash while suspending + - ASoC: imx: fix fiq dependencies + - spi: pxa2xx: fix SCR (divisor) calculation + - brcm80211: potential NULL dereference in + brcmf_cfg80211_vndr_cmds_dcmd_handler() + - ACPI / property: fix handling of data_nodes in acpi_get_next_subnode() + - drm/nouveau/bar/nv50: ensure BAR is mapped + - media: stm32-dcmi: return appropriate error codes during probe + - ARM: vdso: Remove dependency with the arch_timer driver internals + - arm64: Fix compiler warning from pte_unmap() with -Wunused-but-set-variable + - x86/ftrace: Set trampoline pages as executable + - powerpc/watchdog: Use hrtimers for per-CPU heartbeat + - sched/cpufreq: Fix kobject memleak + - scsi: qla2xxx: Fix a qla24xx_enable_msix() error path + - scsi: qla2xxx: Fix abort handling in tcm_qla2xxx_write_pending() + - scsi: qla2xxx: Avoid that lockdep complains about unsafe locking in + tcm_qla2xxx_close_session() + - scsi: qla2xxx: Fix hardirq-unsafe locking + - x86/modules: Avoid breaking W^X while loading modules + - Btrfs: fix data bytes_may_use underflow with fallocate due to failed quota + reserve + - btrfs: fix panic during relocation after ENOSPC before writeback happens + - btrfs: Don't panic when we can't find a root key + - iwlwifi: pcie: don't crash on invalid RX interrupt + - rtc: 88pm860x: prevent use-after-free on device remove + - rtc: stm32: manage the get_irq probe defer case + - scsi: qedi: Abort ep termination if offload not scheduled + - s390/kexec_file: Fix detection of text segment in ELF loader + - ALSA: hda: fix unregister device twice on ASoC driver + - sched/nohz: Run NOHZ idle load balancer on HK_FLAG_MISC CPUs + - net: ethernet: ti: cpsw: fix allmulti cfg in dual_mac mode + - w1: fix the resume command API + - net: phy: improve genphy_soft_reset + - s390: qeth: address type mismatch warning + - dmaengine: pl330: _stop: clear interrupt status + - mac80211/cfg80211: update bss channel on channel switch + - libbpf: fix samples/bpf build failure due to undefined UINT32_MAX + - slimbus: fix a potential NULL pointer dereference in + of_qcom_slim_ngd_register + - ASoC: fsl_sai: Update is_slave_mode with correct value + - Fix nfs4.2 return -EINVAL when do dedupe operation + - mwifiex: prevent an array overflow + - rsi: Fix NULL pointer dereference in kmalloc + - net: cw1200: fix a NULL pointer dereference + - nvme: set 0 capacity if namespace block size exceeds PAGE_SIZE + - nvme-rdma: fix a NULL deref when an admin connect times out + - nvme-tcp: fix a NULL deref when an admin connect times out + - crypto: sun4i-ss - Fix invalid calculation of hash end + - bcache: avoid potential memleak of list of journal_replay(s) in the + CACHE_SYNC branch of run_cache_set + - bcache: return error immediately in bch_journal_replay() + - bcache: fix failure in journal relplay + - bcache: add failure check to run_cache_set() for journal replay + - bcache: avoid clang -Wunintialized warning + - RDMA/cma: Consider scope_id while binding to ipv6 ll address + - vfio-ccw: Do not call flush_workqueue while holding the spinlock + - vfio-ccw: Release any channel program when releasing/removing vfio-ccw mdev + - x86/build: Move _etext to actual end of .text + - smpboot: Place the __percpu annotation correctly + - x86/uaccess: Dont leak the AC flag into __put_user() argument evaluation + - x86/mm: Remove in_nmi() warning from 64-bit implementation of + vmalloc_fault() + - mm/uaccess: Use 'unsigned long' to placate UBSAN warnings on older GCC + versions + - Bluetooth: hci_qca: Give enough time to ROME controller to bootup. + - Bluetooth: btbcm: Add default address for BCM43341B + - HID: logitech-hidpp: use RAP instead of FAP to get the protocol version + - pinctrl: pistachio: fix leaked of_node references + - pinctrl: st: fix leaked of_node references + - pinctrl: samsung: fix leaked of_node references + - clk: rockchip: undo several noc and special clocks as critical on rk3288 + - perf/arm-cci: Remove broken race mitigation + - dmaengine: at_xdmac: remove BUG_ON macro in tasklet + - media: coda: clear error return value before picture run + - media: ov6650: Move v4l2_clk_get() to ov6650_video_probe() helper + - media: au0828: stop video streaming only when last user stops + - media: ov2659: make S_FMT succeed even if requested format doesn't match + - audit: fix a memory leak bug + - media: stm32-dcmi: fix crash when subdev do not expose any formats + - media: au0828: Fix NULL pointer dereference in au0828_analog_stream_enable() + - media: pvrusb2: Prevent a buffer overflow + - iio: adc: stm32-dfsdm: fix unmet direct dependencies detected + - block: fix use-after-free on gendisk + - powerpc/numa: improve control of topology updates + - powerpc/64: Fix booting large kernels with STRICT_KERNEL_RWX + - random: fix CRNG initialization when random.trust_cpu=1 + - random: add a spinlock_t to struct batched_entropy + - cgroup: protect cgroup->nr_(dying_)descendants by css_set_lock + - sched/core: Check quota and period overflow at usec to nsec conversion + - sched/rt: Check integer overflow at usec to nsec conversion + - sched/core: Handle overflow in cpu_shares_write_u64 + - staging: vc04_services: handle kzalloc failure + - drm/msm/dpu: release resources on modeset failure + - drm/msm: a5xx: fix possible object reference leak + - drm/msm: dpu: Don't set frame_busy_mask for async updates + - drm/msm: Fix NULL pointer dereference + - irq_work: Do not raise an IPI when queueing work on the local CPU + - thunderbolt: Take domain lock in switch sysfs attribute callbacks + - s390/qeth: handle error from qeth_update_from_chp_desc() + - USB: core: Don't unbind interfaces following device reset failure + - x86/irq/64: Limit IST stack overflow check to #DB stack + - drm: etnaviv: avoid DMA API warning when importing buffers + - dt-bindings: phy-qcom-qmp: Add UFS PHY reset + - phy: sun4i-usb: Make sure to disable PHY0 passby for peripheral mode + - phy: mapphone-mdm6600: add gpiolib dependency + - dpaa2-eth: Fix Rx classification status + - i40e: Able to add up to 16 MAC filters on an untrusted VF + - i40e: don't allow changes to HW VLAN stripping on active port VLANs + - ACPI/IORT: Reject platform device creation on NUMA node mapping failure + - arm64: vdso: Fix clock_getres() for CLOCK_REALTIME + - RDMA/cxgb4: Fix null pointer dereference on alloc_skb failure + - perf/x86/msr: Add Icelake support + - perf/x86/intel/rapl: Add Icelake support + - perf/x86/intel/cstate: Add Icelake support + - PM / devfreq: Fix static checker warning in try_then_request_governor + - hwmon: (vt1211) Use request_muxed_region for Super-IO accesses + - hwmon: (smsc47m1) Use request_muxed_region for Super-IO accesses + - hwmon: (smsc47b397) Use request_muxed_region for Super-IO accesses + - hwmon: (pc87427) Use request_muxed_region for Super-IO accesses + - hwmon: (f71805f) Use request_muxed_region for Super-IO accesses + - mmc: core: make pwrseq_emmc (partially) support sleepy GPIO controllers + - mmc_spi: add a status check for spi_sync_locked + - mmc: sdhci-of-esdhc: add erratum eSDHC5 support + - mmc: sdhci-of-esdhc: add erratum A-009204 support + - mmc: sdhci-of-esdhc: add erratum eSDHC-A001 and A-008358 support + - drm/amdgpu: fix old fence check in amdgpu_fence_emit + - PM / core: Propagate dev->power.wakeup_path when no callbacks + - clk: rockchip: Fix video codec clocks on rk3288 + - extcon: arizona: Disable mic detect if running when driver is removed + - clk: rockchip: Make rkpwm a critical clock on rk3288 + - clk: zynqmp: fix check for fractional clock + - s390: zcrypt: initialize variables before_use + - x86/microcode: Fix the ancient deprecated microcode loading method + - s390/mm: silence compiler warning when compiling without CONFIG_PGSTE + - s390: cio: fix cio_irb declaration + - selftests: cgroup: fix cleanup path in test_memcg_subtree_control() + - qmi_wwan: Add quirk for Quectel dynamic config + - cpufreq: ppc_cbe: fix possible object reference leak + - cpufreq/pasemi: fix possible object reference leak + - cpufreq: pmac32: fix possible object reference leak + - cpufreq: kirkwood: fix possible object reference leak + - cpufreq: imx6q: fix possible object reference leak + - block: sed-opal: fix IOC_OPAL_ENABLE_DISABLE_MBR + - samples/bpf: fix build with new clang + - x86/build: Keep local relocations with ld.lld + - regulator: core: Avoid potential deadlock on regulator_unregister + - drm/pl111: fix possible object reference leak + - iio: ad_sigma_delta: Properly handle SPI bus locking vs CS assertion + - iio: hmc5843: fix potential NULL pointer dereferences + - iio: common: ssp_sensors: Initialize calculated_time in + ssp_common_process_data + - iio: adc: ti-ads7950: Fix improper use of mlock + - selftests/bpf: ksym_search won't check symbols exists + - rtlwifi: fix a potential NULL pointer dereference + - mwifiex: Fix mem leak in mwifiex_tm_cmd + - brcmfmac: fix missing checks for kmemdup + - b43: shut up clang -Wuninitialized variable warning + - brcmfmac: convert dev_init_lock mutex to completion + - brcmfmac: fix WARNING during USB disconnect in case of unempty psq + - brcmfmac: fix race during disconnect when USB completion is in progress + - brcmfmac: fix Oops when bringing up interface during USB disconnect + - rtc: xgene: fix possible race condition + - rtlwifi: fix potential NULL pointer dereference + - scsi: ufs: Fix regulator load and icc-level configuration + - scsi: ufs: Avoid configuring regulator with undefined voltage range + - drm/panel: otm8009a: Add delay at the end of initialization + - drm/amd/display: Prevent cursor hotspot overflow for RV overlay planes + - arm64: cpu_ops: fix a leaked reference by adding missing of_node_put + - locking/static_key: Fix false positive warnings on concurrent dec/inc + - wil6210: fix return code of wmi_mgmt_tx and wmi_mgmt_tx_ext + - x86/uaccess, ftrace: Fix ftrace_likely_update() vs. SMAP + - x86/uaccess, signal: Fix AC=1 bloat + - x86/ia32: Fix ia32_restore_sigcontext() AC leak + - x86/uaccess: Fix up the fixup + - chardev: add additional check for minor range overlap + - sh: sh7786: Add explicit I/O cast to sh7786_mm_sel() + - HID: core: move Usage Page concatenation to Main item + - ASoC: eukrea-tlv320: fix a leaked reference by adding missing of_node_put + - ASoC: fsl_utils: fix a leaked reference by adding missing of_node_put + - cxgb3/l2t: Fix undefined behaviour + - clk: renesas: rcar-gen3: Correct parent clock of SYS-DMAC + - block: pass page to xen_biovec_phys_mergeable + - clk: renesas: rcar-gen3: Correct parent clock of Audio-DMAC + - HID: logitech-hidpp: change low battery level threshold from 31 to 30 + percent + - spi: tegra114: reset controller on probe + - kobject: Don't trigger kobject_uevent(KOBJ_REMOVE) twice. + - media: video-mux: fix null pointer dereferences + - media: wl128x: prevent two potential buffer overflows + - media: gspca: Kill URBs on USB device disconnect + - efifb: Omit memory map check on legacy boot + - thunderbolt: property: Fix a missing check of kzalloc + - thunderbolt: Fix to check the return value of kmemdup + - drm: rcar-du: lvds: Set LVEN and LVRES bits together on D3 + - timekeeping: Force upper bound for setting CLOCK_REALTIME + - scsi: qedf: Add missing return in qedf_post_io_req() in the fcport offload + check + - virtio_console: initialize vtermno value for ports + - tty: ipwireless: fix missing checks for ioremap + - staging: mt7621-mmc: Initialize completions a single time during probe + - overflow: Fix -Wtype-limits compilation warnings + - x86/mce: Fix machine_check_poll() tests for error types + - rcutorture: Fix cleanup path for invalid torture_type strings + - x86/mce: Handle varying MCA bank counts + - rcuperf: Fix cleanup path for invalid perf_type strings + - rcu: Do a single rhp->func read in rcu_head_after_call_rcu() + - spi: stm32-qspi: add spi_master_put in release function + - usb: core: Add PM runtime calls to usb_hcd_platform_shutdown + - scsi: qla4xxx: avoid freeing unallocated dma memory + - scsi: lpfc: avoid uninitialized variable warning + - ice: Prevent unintended multiple chain resets + - selinux: avoid uninitialized variable warning + - batman-adv: allow updating DAT entry timeouts on incoming ARP Replies + - dmaengine: tegra210-adma: use devm_clk_*() helpers + - x86/CPU/hygon: Fix phys_proc_id calculation logic for multi-die processors + - staging: mt7621-mmc: Check for nonzero number of scatterlist entries + - hwrng: omap - Set default quality + - thunderbolt: Fix to check return value of ida_simple_get + - thunderbolt: Fix to check for kmemdup failure + - drm/amd/display: fix releasing planes when exiting odm + - drm/amd/display: Link train only when link is DP and backend is enabled + - drm/amd/display: Reset alpha state for planes to the correct values + - thunderbolt: property: Fix a NULL pointer dereference + - media: v4l2-fwnode: The first default data lane is 0 on C-PHY + - media: staging/intel-ipu3: mark PM function as __maybe_unused + - tinydrm/mipi-dbi: Use dma-safe buffers for all SPI transfers + - igb: Exclude device from suspend direct complete optimization + - media: si2165: fix a missing check of return value + - media: dvbsky: Avoid leaking dvb frontend + - media: m88ds3103: serialize reset messages in m88ds3103_set_frontend + - drm/amd/display: add pipe lock during stream update + - media: staging: davinci_vpfe: disallow building with COMPILE_TEST + - drm/amd/display: Fix Divide by 0 in memory calculations + - drm/amd/display: Set stream->mode_changed when connectors change + - scsi: ufs: fix a missing check of devm_reset_control_get + - media: vimc: stream: fix thread state before sleep + - media: gspca: do not resubmit URBs when streaming has stopped + - media: go7007: avoid clang frame overflow warning with KASAN + - media: vimc: zero the media_device on probe + - media: vim2m: replace devm_kzalloc by kzalloc + - media: cedrus: Add a quirk for not setting DMA offset + - scsi: lpfc: Fix FDMI manufacturer attribute value + - scsi: lpfc: Fix fc4type information for FDMI + - media: saa7146: avoid high stack usage with clang + - scsi: lpfc: Fix SLI3 commands being issued on SLI4 devices + - scsi: lpfc: Fix use-after-free mailbox cmd completion + - audit: fix a memleak caused by auditing load module + - spi : spi-topcliff-pch: Fix to handle empty DMA buffers + - drm: writeback: Fix leak of writeback job + - drm/omap: dsi: Fix PM for display blank with paired dss_pll calls + - drm/omap: Notify all devices in the pipeline of output disconnection + - spi: rspi: Fix sequencer reset during initialization + - regulator: wm831x ldo: Fix notifier mutex lock warning + - regulator: wm831x isink: Fix notifier mutex lock warning + - regulator: ltc3676: Fix notifier mutex lock warning + - regulator: ltc3589: Fix notifier mutex lock warning + - regulator: pv88060: Fix notifier mutex lock warning + - spi: imx: stop buffer overflow in RX FIFO flush + - regulator: lp8755: Fix notifier mutex lock warning + - regulator: da9211: Fix notifier mutex lock warning + - regulator: da9063: Fix notifier mutex lock warning + - regulator: pv88080: Fix notifier mutex lock warning + - regulator: wm831x: Fix notifier mutex lock warning + - regulator: pv88090: Fix notifier mutex lock warning + - regulator: da9062: Fix notifier mutex lock warning + - regulator: da9055: Fix notifier mutex lock warning + - spi: Fix zero length xfer bug + - ASoC: davinci-mcasp: Fix clang warning without CONFIG_PM + - ASoC: ti: fix davinci_mcasp_probe dependencies + - drm/v3d: Handle errors from IRQ setup. + - drm/drv: Hold ref on parent device during drm_device lifetime + - drm: Wake up next in drm_read() chain if we are forced to putback the event + - drm/sun4i: dsi: Change the start delay calculation + - vfio-ccw: Prevent quiesce function going into an infinite loop + - ice: Put __ICE_PREPARED_FOR_RESET check in ice_prepare_for_reset + - drm/sun4i: dsi: Enforce boundaries on the start delay + - NFS: Fix a double unlock from nfs_match,get_client + - Linux 5.0.20 + * Disco update: 5.0.19 upstream stable release (LP: #1837516) + - ipv6: fix src addr routing with the exception table + - ipv6: prevent possible fib6 leaks + - net: Always descend into dsa/ + - net: avoid weird emergency message + - net/mlx4_core: Change the error print to info print + - net: test nouarg before dereferencing zerocopy pointers + - net: usb: qmi_wwan: add Telit 0x1260 and 0x1261 compositions + - nfp: flower: add rcu locks when accessing netdev for tunnels + - ppp: deflate: Fix possible crash in deflate_init + - rtnetlink: always put IFLA_LINK for links with a link-netnsid + - tipc: switch order of device registration to fix a crash + - vsock/virtio: free packets during the socket release + - tipc: fix modprobe tipc failed after switch order of device registration + - vsock/virtio: Initialize core virtio vsock before registering the driver + - net/mlx5e: Add missing ethtool driver info for representors + - net/mlx5e: Additional check for flow destination comparison + - net/mlx5: Imply MLXFW in mlx5_core + - net/mlx5e: Fix ethtool rxfh commands when CONFIG_MLX5_EN_RXNFC is disabled + - blk-mq: free hw queue's resource in hctx's release handler + - regulator: core: fix error path for regulator_set_voltage_unlocked + - parisc: Export running_on_qemu symbol for modules + - parisc: Add memory clobber to TLB purges + - parisc: Skip registering LED when running in QEMU + - parisc: Add memory barrier to asm pdc and sync instructions + - parisc: Allow live-patching of __meminit functions + - parisc: Use PA_ASM_LEVEL in boot code + - parisc: Rename LEVEL to PA_ASM_LEVEL to avoid name clash with DRBD code + - stm class: Fix channel free in stm output free path + - stm class: Fix channel bitmap on 32-bit systems + - brd: re-enable __GFP_HIGHMEM in brd_insert_page() + - proc: prevent changes to overridden credentials + - Revert "MD: fix lock contention for flush bios" + - md: batch flush requests. + - md: add mddev->pers to avoid potential NULL pointer dereference + - md: add a missing endianness conversion in check_sb_changes + - dcache: sort the freeing-without-RCU-delay mess for good. + - intel_th: msu: Fix single mode with IOMMU + - p54: drop device reference count if fails to enable device + - of: fix clang -Wunsequenced for be32_to_cpu() + - brcmfmac: Add DMI nvram filename quirk for ACEPC T8 and T11 mini PCs + - phy: ti-pipe3: fix missing bit-wise or operator when assigning val + - media: ov6650: Fix sensor possibly not detected on probe + - media: imx: csi: Allow unknown nearest upstream entities + - media: imx: Clear fwnode link struct for each endpoint iteration + - RDMA/mlx5: Use get_zeroed_page() for clock_info + - RDMA/ipoib: Allow user space differentiate between valid dev_port + - NFS4: Fix v4.0 client state corruption when mount + - PNFS fallback to MDS if no deviceid found + - clk: hi3660: Mark clk_gate_ufs_subsys as critical + - clk: tegra: Fix PLLM programming on Tegra124+ when PMC overrides divider + - clk: mediatek: Disable tuner_en before change PLL rate + - clk: rockchip: fix wrong clock definitions for rk3328 + - udlfb: delete the unused parameter for dlfb_handle_damage + - udlfb: fix sleeping inside spinlock + - udlfb: introduce a rendering mutex + - fuse: fix writepages on 32bit + - fuse: honor RLIMIT_FSIZE in fuse_file_fallocate + - ovl: fix missing upper fs freeze protection on copy up for ioctl + - gcc-plugins: arm_ssp_per_task_plugin: Fix for older GCC < 6 + - iommu/tegra-smmu: Fix invalid ASID bits on Tegra30/114 + - ceph: flush dirty inodes before proceeding with remount + - x86_64: Add gap to int3 to allow for call emulation + - x86_64: Allow breakpoints to emulate call instructions + - ftrace/x86_64: Emulate call function while updating in breakpoint handler + - tracing: Fix partial reading of trace event's id file + - tracing: probeevent: Fix to make the type of $comm string + - memory: tegra: Fix integer overflow on tick value calculation + - perf intel-pt: Fix instructions sampling rate + - perf intel-pt: Fix improved sample timestamp + - perf intel-pt: Fix sample timestamp wrt non-taken branches + - MIPS: perf: Fix build with CONFIG_CPU_BMIPS5000 enabled + - objtool: Allow AR to be overridden with HOSTAR + - x86/mpx, mm/core: Fix recursive munmap() corruption + - fbdev/efifb: Ignore framebuffer memmap entries that lack any memory types + - fbdev: sm712fb: fix brightness control on reboot, don't set SR30 + - fbdev: sm712fb: fix VRAM detection, don't set SR70/71/74/75 + - fbdev: sm712fb: fix white screen of death on reboot, don't set CR3B-CR3F + - fbdev: sm712fb: fix boot screen glitch when sm712fb replaces VGA + - fbdev: sm712fb: fix crashes during framebuffer writes by correctly mapping + VRAM + - fbdev: sm712fb: fix support for 1024x768-16 mode + - fbdev: sm712fb: use 1024x768 by default on non-MIPS, fix garbled display + - fbdev: sm712fb: fix crashes and garbled display during DPMS modesetting + - PCI: Mark AMD Stoney Radeon R7 GPU ATS as broken + - PCI: Mark Atheros AR9462 to avoid bus reset + - PCI: Reset Lenovo ThinkPad P50 nvgpu at boot if necessary + - PCI: Init PCIe feature bits for managed host bridge alloc + - PCI/AER: Change pci_aer_init() stub to return void + - PCI: rcar: Add the initialization of PCIe link in resume_noirq() + - PCI: Factor out pcie_retrain_link() function + - PCI: Work around Pericom PCIe-to-PCI bridge Retrain Link erratum + - dm cache metadata: Fix loading discard bitset + - dm zoned: Fix zone report handling + - dm delay: fix a crash when invalid device is specified + - dm crypt: move detailed message into debug level + - dm integrity: correctly calculate the size of metadata area + - dm mpath: always free attached_handler_name in parse_path() + - fuse: Add FOPEN_STREAM to use stream_open() + - xfrm: policy: Fix out-of-bound array accesses in __xfrm_policy_unlink + - xfrm: Reset secpath in xfrm failure + - xfrm6_tunnel: Fix potential panic when unloading xfrm6_tunnel module + - vti4: ipip tunnel deregistration fixes. + - xfrm: clean up xfrm protocol checks + - esp4: add length check for UDP encapsulation + - xfrm: Honor original L3 slave device in xfrmi policy lookup + - xfrm4: Fix uninitialized memory read in _decode_session4 + - ARC: PAE40: don't panic and instead turn off hw ioc + - clk: sunxi-ng: nkmp: Avoid GENMASK(-1, 0) + - KVM: PPC: Book3S HV: Perserve PSSCR FAKE_SUSPEND bit on guest exit + - KVM: PPC: Book3S: Protect memslots while validating user address + - power: supply: cpcap-battery: Fix division by zero + - securityfs: fix use-after-free on symlink traversal + - apparmorfs: fix use-after-free on symlink traversal + - PCI: Fix issue with "pci=disable_acs_redir" parameter being ignored + - x86: kvm: hyper-v: deal with buggy TLB flush requests from WS2012 + - mac80211: Fix kernel panic due to use of txq after free + - net: ieee802154: fix missing checks for regmap_update_bits + - KVM: arm/arm64: Ensure vcpu target is unset on reset failure + - power: supply: sysfs: prevent endless uevent loop with + CONFIG_POWER_SUPPLY_DEBUG + - tools: bpftool: fix infinite loop in map create + - bpf: Fix preempt_enable_no_resched() abuse + - qmi_wwan: new Wistron, ZTE and D-Link devices + - iwlwifi: mvm: check for length correctness in iwl_mvm_create_skb() + - sched/cpufreq: Fix kobject memleak + - x86/mm/mem_encrypt: Disable all instrumentation for early SME setup + - KVM: fix KVM_CLEAR_DIRTY_LOG for memory slots of unaligned size + - KVM: selftests: make hyperv_cpuid test pass on AMD + - ufs: fix braino in ufs_get_inode_gid() for solaris UFS flavour + - i2c: designware: ratelimit 'transfer when suspended' errors + - perf bench numa: Add define for RUSAGE_THREAD if not present + - perf cs-etm: Always allocate memory for cs_etm_queue::prev_packet + - perf/x86/intel: Fix race in intel_pmu_disable_event() + - Revert "Don't jump to compute_result state from check_result state" + - md/raid: raid5 preserve the writeback action after the parity check + - driver core: Postpone DMA tear-down until after devres release for probe + failure + - bpf: relax inode permission check for retrieving bpf program + - bpf: add map_lookup_elem_sys_only for lookups from syscall side + - bpf, lru: avoid messing with eviction heuristics upon syscall lookup + - fbdev: sm712fb: fix memory frequency by avoiding a switch/case fallthrough + - Linux 5.0.19 + * CVE-2019-13648 + - powerpc/tm: Fix oops on sigreturn on systems without TM + * bcache kernel warning when attaching device (LP: #1837788) + - bcache: only set BCACHE_DEV_WB_RUNNING when cached device attached + * CVE-2019-14283 + - floppy: fix out-of-bounds read in copy_buffer + * CVE-2019-14284 + - floppy: fix div-by-zero in setup_format_params + * alsa/hda: neither mute led nor mic-mute led work on several Lenovo laptops + (LP: #1837963) + - SAUCE: ALSA: hda - Add a conexant codec entry to let mute led work + + -- Marcelo Henrique Cerri Thu, 15 Aug 2019 16:42:52 -0300 + +linux-azure (5.0.0-1016.17) disco; urgency=medium + + * disco/linux-azure: 5.0.0-1016.17 -proposed tracker (LP: #1840275) + + * Azure: Backport vIOMMU driver (increase vCPU limits) (LP: #1826447) + - x86/Hyper-V: Set x2apic destination mode to physical when x2apic is + available + - iommu/hyper-v: Add Hyper-V stub IOMMU driver + - PCI: hv: Replace hv_vp_set with hv_vpset + - PCI: hv: Refactor hv_irq_unmask() to use cpumask_to_vpset() + - [Config] linux-azure: CONFIG_HYPERV_IOMMU=y + + * Packaging resync (LP: #1786013) + - [Packaging] update helper scripts + + -- Marcelo Henrique Cerri Thu, 15 Aug 2019 12:07:56 -0300 + +linux-azure (5.0.0-1014.14) disco; urgency=medium + + * hibmc-drm Causes Unreadable Display for Huawei amd64 Servers (LP: #1762940) + - [Config] Unset CONFIG_DRM_HISI_HIBMC + + * Make possible to load Mellanox OFED modules (LP: #1837397) + - [Config] linux-azure: CONFIG_MLX{4,5}_INFINIBAND=m + + [ Ubuntu: 5.0.0-25.26 ] + + * CVE-2019-1125 + - x86/cpufeatures: Carve out CQM features retrieval + - x86/cpufeatures: Combine word 11 and 12 into a new scattered features word + - x86/speculation: Prepare entry code for Spectre v1 swapgs mitigations + - x86/speculation: Enable Spectre v1 swapgs mitigations + - x86/entry/64: Use JMP instead of JMPQ + - x86/speculation/swapgs: Exclude ATOMs from speculation through SWAPGS + + [ Ubuntu: 5.0.0-24.25 ] + + * disco/linux: 5.0.0-24.25 -proposed tracker (LP: #1838395) + * Packaging resync (LP: #1786013) + - [Packaging] resync git-ubuntu-log + * hibmc-drm Causes Unreadable Display for Huawei amd64 Servers (LP: #1762940) + - [Config] Set CONFIG_DRM_HISI_HIBMC to arm64 only + - SAUCE: Make CONFIG_DRM_HISI_HIBMC depend on ARM64 + * [18.04 FEAT] zKVM: Add hardware CPU Model - kernel part (LP: #1836153) + - KVM: s390: add debug logging for cpu model subfunctions + - KVM: s390: implement subfunction processor calls + - KVM: s390: add vector enhancements facility 2 to cpumodel + - KVM: s390: add vector BCD enhancements facility to cpumodel + - KVM: s390: add MSA9 to cpumodel + - KVM: s390: provide query function for instructions returning 32 byte + - KVM: s390: add enhanced sort facilty to cpu model + - KVM: s390: add deflate conversion facilty to cpu model + - KVM: s390: enable MSA9 keywrapping functions depending on cpu model + * bcache: risk of data loss on I/O errors in backing or caching devices + (LP: #1829563) + - Revert "bcache: set CACHE_SET_IO_DISABLE in bch_cached_dev_error()" + * Intel ethernet I219 has slow RX speed (LP: #1836152) + - SAUCE: e1000e: add workaround for possible stalled packet + - SAUCE: e1000e: disable force K1-off feature + * Intel ethernet I219 may wrongly detect connection speed as 10Mbps + (LP: #1836177) + - SAUCE: e1000e: Make watchdog use delayed work + * Unhide Nvidia HDA audio controller (LP: #1836308) + - PCI: Enable NVIDIA HDA controllers + * Enable Armada SOCs and MVPP2 NIC driver for disco/generic arm64 + (LP: #1835054) + - [Config] Enable Armada SOCs and MVPP2 NIC driver for disco/generic arm64 + * ixgbe{vf} - Physical Function gets IRQ when VF checks link state + (LP: #1836760) + - ixgbevf: Use cached link state instead of re-reading the value for ethtool + * Two crashes on raid0 error path (during a member device removal) + (LP: #1836806) + - block: Fix a NULL pointer dereference in generic_make_request() + - md/raid0: Do not bypass blocking queue entered for raid0 bios + * CVE-2019-13233 + - x86/insn-eval: Fix use-after-free access to LDT entry + * cifs set_oplock buffer overflow in strcat (LP: #1824981) + - cifs: fix strcat buffer overflow and reduce raciness in + smb21_set_oplock_level() + * CVE-2019-13272 + - ptrace: Fix ->ptracer_cred handling for PTRACE_TRACEME + * hda/realtek: can't detect external mic on a Dell machine (LP: #1836755) + - ALSA: hda/realtek: apply ALC891 headset fixup to one Dell machine + * CVE-2019-12614 + - powerpc/pseries/dlpar: Fix a missing check in dlpar_parse_cc_property() + * bnx2x driver causes 100% CPU load (LP: #1832082) + - bnx2x: Prevent ptp_task to be rescheduled indefinitely + * Sometimes touchpad detected as mouse(i2c designware fails to get adapter + number) (LP: #1835150) + - i2c: i2c-designware-platdrv: Cleanup setting of the adapter number + - i2c: i2c-designware-platdrv: Always use a dynamic adapter number + * Disco update: 5.0.18 upstream stable release (LP: #1836614) + - locking/rwsem: Prevent decrement of reader count before increment + - x86/speculation/mds: Revert CPU buffer clear on double fault exit + - x86/speculation/mds: Improve CPU buffer clear documentation + - objtool: Fix function fallthrough detection + - arm64: dts: rockchip: fix IO domain voltage setting of APIO5 on rockpro64 + - arm64: dts: rockchip: Disable DCMDs on RK3399's eMMC controller. + - ARM: dts: qcom: ipq4019: enlarge PCIe BAR range + - ARM: dts: exynos: Fix interrupt for shared EINTs on Exynos5260 + - ARM: dts: exynos: Fix audio (microphone) routing on Odroid XU3 + - mmc: sdhci-of-arasan: Add DTS property to disable DCMDs. + - ARM: exynos: Fix a leaked reference by adding missing of_node_put + - power: supply: axp288_charger: Fix unchecked return value + - power: supply: axp288_fuel_gauge: Add ACEPC T8 and T11 mini PCs to the + blacklist + - arm64: mmap: Ensure file offset is treated as unsigned + - arm64: arch_timer: Ensure counter register reads occur with seqlock held + - arm64: compat: Reduce address limit + - arm64: Clear OSDLR_EL1 on CPU boot + - arm64: Save and restore OSDLR_EL1 across suspend/resume + - sched/x86: Save [ER]FLAGS on context switch + - x86/MCE: Add an MCE-record filtering function + - x86/MCE/AMD: Turn off MC4_MISC thresholding on all family 0x15 models + - x86/MCE/AMD: Carve out the MC4_MISC thresholding quirk + - x86/MCE: Group AMD function prototypes in + - x86/MCE/AMD: Don't report L1 BTB MCA errors on some family 17h models + - crypto: crypto4xx - fix ctr-aes missing output IV + - crypto: crypto4xx - fix cfb and ofb "overran dst buffer" issues + - crypto: salsa20 - don't access already-freed walk.iv + - crypto: lrw - don't access already-freed walk.iv + - crypto: chacha-generic - fix use as arm64 no-NEON fallback + - crypto: chacha20poly1305 - set cra_name correctly + - crypto: ccp - Do not free psp_master when PLATFORM_INIT fails + - crypto: vmx - fix copy-paste error in CTR mode + - crypto: skcipher - don't WARN on unprocessed data after slow walk step + - crypto: crct10dif-generic - fix use via crypto_shash_digest() + - crypto: x86/crct10dif-pcl - fix use via crypto_shash_digest() + - crypto: arm64/gcm-aes-ce - fix no-NEON fallback code + - crypto: gcm - fix incompatibility between "gcm" and "gcm_base" + - crypto: rockchip - update IV buffer to contain the next IV + - crypto: caam/qi2 - fix zero-length buffer DMA mapping + - crypto: caam/qi2 - fix DMA mapping of stack memory + - crypto: caam/qi2 - generate hash keys in-place + - crypto: arm/aes-neonbs - don't access already-freed walk.iv + - crypto: arm64/aes-neonbs - don't access already-freed walk.iv + - mmc: tegra: fix ddr signaling for non-ddr modes + - mmc: core: Fix tag set memory leak + - mmc: sdhci-pci: Fix BYT OCP setting + - ALSA: line6: toneport: Fix broken usage of timer for delayed execution + - ALSA: usb-audio: Fix a memory leak bug + - ALSA: hda/realtek - EAPD turn on later + - ASoC: max98090: Fix restore of DAPM Muxes + - ASoC: RT5677-SPI: Disable 16Bit SPI Transfers + - ASoC: fsl_esai: Fix missing break in switch statement + - ASoC: codec: hdac_hdmi add device_link to card device + - bpf, arm64: remove prefetch insn in xadd mapping + - crypto: ccree - remove special handling of chained sg + - crypto: ccree - fix mem leak on error path + - crypto: ccree - don't map MAC key on stack + - crypto: ccree - use correct internal state sizes for export + - crypto: ccree - don't map AEAD key and IV on stack + - crypto: ccree - pm resume first enable the source clk + - crypto: ccree - HOST_POWER_DOWN_EN should be the last CC access during + suspend + - crypto: ccree - add function to handle cryptocell tee fips error + - crypto: ccree - handle tee fips error during power management resume + - mm/mincore.c: make mincore() more conservative + - mm/huge_memory: fix vmf_insert_pfn_{pmd, pud}() crash, handle unaligned + addresses + - mm/hugetlb.c: don't put_page in lock of hugetlb_lock + - hugetlb: use same fault hash key for shared and private mappings + - ocfs2: fix ocfs2 read inode data panic in ocfs2_iget + - userfaultfd: use RCU to free the task struct when fork fails + - ACPI: PM: Set enable_for_wake for wakeup GPEs during suspend-to-idle + - mfd: da9063: Fix OTP control register names to match datasheets for + DA9063/63L + - mfd: max77620: Fix swapped FPS_PERIOD_MAX_US values + - mtd: spi-nor: intel-spi: Avoid crossing 4K address boundary on read/write + - mtd: maps: physmap: Store gpio_values correctly + - mtd: maps: Allow MTD_PHYSMAP with MTD_RAM + - tty: vt.c: Fix TIOCL_BLANKSCREEN console blanking if blankinterval == 0 + - tty/vt: fix write/write race in ioctl(KDSKBSENT) handler + - jbd2: check superblock mapped prior to committing + - ext4: make sanity check in mballoc more strict + - ext4: ignore e_value_offs for xattrs with value-in-ea-inode + - ext4: avoid drop reference to iloc.bh twice + - ext4: fix use-after-free race with debug_want_extra_isize + - ext4: actually request zeroing of inode table after grow + - ext4: fix ext4_show_options for file systems w/o journal + - btrfs: Check the first key and level for cached extent buffer + - btrfs: Correctly free extent buffer in case btree_read_extent_buffer_pages + fails + - btrfs: Honour FITRIM range constraints during free space trim + - Btrfs: send, flush dellaloc in order to avoid data loss + - Btrfs: do not start a transaction during fiemap + - Btrfs: do not start a transaction at iterate_extent_inodes() + - Btrfs: fix race between send and deduplication that lead to failures and + crashes + - bcache: fix a race between cache register and cacheset unregister + - bcache: never set KEY_PTRS of journal key to 0 in journal_reclaim() + - ipmi:ssif: compare block number correctly for multi-part return messages + - crypto: ccm - fix incompatibility between "ccm" and "ccm_base" + - fs/writeback.c: use rcu_barrier() to wait for inflight wb switches going + into workqueue when umount + - tty: Don't force RISCV SBI console as preferred console + - ext4: fix data corruption caused by overlapping unaligned and aligned IO + - ext4: fix use-after-free in dx_release() + - ext4: avoid panic during forced reboot due to aborted journal + - ALSA: hda/realtek - Fix for Lenovo B50-70 inverted internal microphone bug + - jbd2: fix potential double free + - KVM: Fix the bitmap range to copy during clear dirty + - KVM: x86: Skip EFER vs. guest CPUID checks for host-initiated writes + - KVM: lapic: Busy wait for timer to expire when using hv_timer + - kbuild: turn auto.conf.cmd into a mandatory include file + - xen/pvh: set xen_domain_type to HVM in xen_pvh_init + - xen/pvh: correctly setup the PV EFI interface for dom0 + - libnvdimm/namespace: Fix label tracking error + - iov_iter: optimize page_copy_sane() + - mm/gup: Remove the 'write' parameter from gup_fast_permitted() + - s390/mm: make the pxd_offset functions more robust + - s390/mm: convert to the generic get_user_pages_fast code + - ext4: fix compile error when using BUFFER_TRACE + - ext4: don't update s_rev_level if not required + - Linux 5.0.18 + * Disco update: 5.0.17 upstream stable release (LP: #1836577) + - bfq: update internal depth state when queue depth changes + - platform/x86: sony-laptop: Fix unintentional fall-through + - platform/x86: thinkpad_acpi: Disable Bluetooth for some machines + - platform/x86: dell-laptop: fix rfkill functionality + - hwmon: (pwm-fan) Disable PWM if fetching cooling data fails + - hwmon: (occ) Fix extended status bits + - selftests/seccomp: Handle namespace failures gracefully + - kernfs: fix barrier usage in __kernfs_new_node() + - virt: vbox: Sanity-check parameter types for hgcm-calls coming from + userspace + - USB: serial: fix unthrottle races + - iio: adc: xilinx: fix potential use-after-free on remove + - iio: adc: xilinx: fix potential use-after-free on probe + - iio: adc: xilinx: prevent touching unclocked h/w on remove + - acpi/nfit: Always dump _DSM output payload + - libnvdimm/namespace: Fix a potential NULL pointer dereference + - HID: input: add mapping for Expose/Overview key + - HID: input: add mapping for keyboard Brightness Up/Down/Toggle keys + - HID: input: add mapping for "Toggle Display" key + - libnvdimm/btt: Fix a kmemdup failure check + - s390/dasd: Fix capacity calculation for large volumes + - mac80211: fix unaligned access in mesh table hash function + - mac80211: Increase MAX_MSG_LEN + - cfg80211: Handle WMM rules in regulatory domain intersection + - mac80211: fix memory accounting with A-MSDU aggregation + - nl80211: Add NL80211_FLAG_CLEAR_SKB flag for other NL commands + - libnvdimm/security: provide fix for secure-erase to use zero-key + - libnvdimm/pmem: fix a possible OOB access when read and write pmem + - tools/testing/nvdimm: Retain security state after overwrite + - s390/3270: fix lockdep false positive on view->lock + - drm/ttm: fix dma_fence refcount imbalance on error path + - drm/amd/display: extending AUX SW Timeout + - clocksource/drivers/npcm: select TIMER_OF + - clocksource/drivers/oxnas: Fix OX820 compatible + - selftests: fib_tests: Fix 'Command line is not complete' errors + - drm/amdgpu: shadow in shadow_list without tbo.mem.start cause page fault in + sriov TDR + - mISDN: Check address length before reading address family + - vxge: fix return of a free'd memblock on a failed dma mapping + - qede: fix write to free'd pointer error and double free of ptp + - afs: Unlock pages for __pagevec_release() + - afs: Fix in-progess ops to ignore server-level callback invalidation + - qed: Delete redundant doorbell recovery types + - qed: Fix the doorbell address sanity check + - qed: Fix missing DORQ attentions + - qed: Fix the DORQ's attentions handling + - drm/amd/display: If one stream full updates, full update all planes + - s390/pkey: add one more argument space for debug feature entry + - x86/build/lto: Fix truncated .bss with -fdata-sections + - x86/mm: Prevent bogus warnings with "noexec=off" + - x86/reboot, efi: Use EFI reboot for Acer TravelMate X514-51T + - KVM: nVMX: always use early vmcs check when EPT is disabled + - KVM: fix spectrev1 gadgets + - KVM: x86: avoid misreporting level-triggered irqs as edge-triggered in + tracing + - tools lib traceevent: Fix missing equality check for strcmp + - perf top: Always sample time to satisfy needs of use of ordered queuing + - ipmi: ipmi_si_hardcode.c: init si_type array to fix a crash + - ocelot: Don't sleep in atomic context (irqs_disabled()) + - perf tools: Fix map reference counting + - scsi: aic7xxx: fix EISA support + - slab: store tagged freelist for off-slab slabmgmt + - mm/hotplug: treat CMA pages as unmovable + - mm: fix inactive list balancing between NUMA nodes and cgroups + - init: initialize jump labels before command line option parsing + - drm: bridge: dw-hdmi: Fix overflow workaround for Rockchip SoCs + - selftests: netfilter: check icmp pkttoobig errors are set as related + - ipvs: do not schedule icmp errors from tunnels + - netfilter: ctnetlink: don't use conntrack/expect object addresses as id + - netfilter: nf_tables: prevent shift wrap in nft_chain_parse_hook() + - netfilter: nat: fix icmp id randomization + - MIPS: perf: ath79: Fix perfcount IRQ assignment + - IB/mlx5: Fix scatter to CQE in DCT QP creation + - s390: ctcm: fix ctcm_new_device error return code + - drm/sun4i: Set device driver data at bind time for use in unbind + - drm/sun4i: Fix component unbinding and component master deletion + - of_net: Fix residues after of_get_nvmem_mac_address removal + - selftests/net: correct the return value for run_afpackettests + - netfilter: never get/set skb->tstamp + - netfilter: fix nf_l4proto_log_invalid to log invalid packets + - dmaengine: bcm2835: Avoid GFP_KERNEL in device_prep_slave_sg + - gpu: ipu-v3: dp: fix CSC handling + - drm/imx: don't skip DP channel disable for background plane + - ARM: fix function graph tracer and unwinder dependencies + - ARM: 8856/1: NOMMU: Fix CCR register faulty initialization when MPU is + disabled + - spi: Micrel eth switch: declare missing of table + - spi: ST ST95HF NFC: declare missing of table + - ceph: handle the case where a dentry has been renamed on outstanding req + - Revert "drm/virtio: drop prime import/export callbacks" + - drm/sun4i: Unbind components before releasing DRM and memory + - Input: snvs_pwrkey - make it depend on ARCH_MXC + - Input: synaptics-rmi4 - fix possible double free + - net: vrf: Fix operation not supported when set vrf mac + - gpio: Fix gpiochip_add_data_with_key() error path + - mm/memory_hotplug.c: drop memory device reference after find_memory_block() + - mm/page_alloc.c: avoid potential NULL pointer dereference + - bpf: only test gso type on gso packets + - net: sched: fix cleanup NULL pointer exception in act_mirr + - net: mvpp2: fix validate for PPv2.1 + - drm/rockchip: fix for mailbox read validation. + - cw1200: fix missing unlock on error in cw1200_hw_scan() + - mwl8k: Fix rate_idx underflow + - rtlwifi: rtl8723ae: Fix missing break in switch statement + - Don't jump to compute_result state from check_result state + - bonding: fix arp_validate toggling in active-backup mode + - bridge: Fix error path for kobject_init_and_add() + - dpaa_eth: fix SG frame cleanup + - fib_rules: return 0 directly if an exactly same rule exists when NLM_F_EXCL + not supplied + - ipv4: Fix raw socket lookup for local traffic + - net: dsa: Fix error cleanup path in dsa_init_module + - net: ethernet: stmmac: dwmac-sun8i: enable support of unicast filtering + - net: macb: Change interrupt and napi enable order in open + - net: seeq: fix crash caused by not set dev.parent + - net: ucc_geth - fix Oops when changing number of buffers in the ring + - packet: Fix error path in packet_init + - selinux: do not report error on connect(AF_UNSPEC) + - tipc: fix hanging clients using poll with EPOLLOUT flag + - vlan: disable SIOCSHWTSTAMP in container + - vrf: sit mtu should not be updated when vrf netdev is the link + - tuntap: fix dividing by zero in ebpf queue selection + - tuntap: synchronize through tfiles array instead of tun->numqueues + - net: phy: fix phy_validate_pause + - flow_dissector: disable preemption around BPF calls + - isdn: bas_gigaset: use usb_fill_int_urb() properly + - drivers/virt/fsl_hypervisor.c: dereferencing error pointers in ioctl + - drivers/virt/fsl_hypervisor.c: prevent integer overflow in ioctl + - powerpc/book3s/64: check for NULL pointer in pgd_alloc() + - powerpc/powernv/idle: Restore IAMR after idle + - powerpc/booke64: set RI in default MSR + - virtio_ring: Fix potential mem leak in virtqueue_add_indirect_packed + - PCI: hv: Fix a memory leak in hv_eject_device_work() + - PCI: hv: Add hv_pci_remove_slots() when we unload the driver + - PCI: hv: Add pci_destroy_slot() in pci_devices_present_work(), if necessary + - f2fs: Fix use of number of devices + - Linux 5.0.17 + - [Config] update configs after update to 5.0.17 + * Disco update: 5.0.16 upstream stable release (LP: #1835580) + - Linux 5.0.16 + * CVE-2019-10126 + - mwifiex: Fix heap overflow in mwifiex_uap_parse_tail_ies() + * CVE-2019-3846 + - mwifiex: Fix possible buffer overflows at parsing bss descriptor + * CVE-2019-12984 + - nfc: Ensure presence of required attributes in the deactivate_target handler + * Sometimes touchpad(goodix) can't use tap function (LP: #1836020) + - SAUCE: i2c: designware: add Inpiron/Vostro 7590 into i2c quirk + * proc_thermal flooding dmesg (LP: #1824690) + - drivers: thermal: processor_thermal: Downgrade error message + + [ Ubuntu: 5.0.0-23.24 ] + + * disco/linux: 5.0.0-23.24 -proposed tracker (LP: #1838271) + * linux hwe i386 kernel 5.0.0-21.22~18.04.1 crashes on Lenovo x220 + (LP: #1838115) + - x86/mm: Check for pfn instead of page in vmalloc_sync_one() + - x86/mm: Sync also unmappings in vmalloc_sync_all() + - mm/vmalloc.c: add priority threshold to __purge_vmap_area_lazy() + - mm/vmalloc: Sync unmappings in __purge_vmap_area_lazy() + + -- Kleber Sacilotto de Souza Thu, 01 Aug 2019 16:14:53 +0200 + +linux-azure (5.0.0-1012.12) disco; urgency=medium + + * linux-azure: 5.0.0-1012.12 -proposed tracker (LP: #1834888) + + * Disco update: 5.0.12 upstream stable release (LP: #1830934) + - [Config] Document drop of axis-fifo for amd64/i386 + + * AX88772A USB to Ethernet dongle doesn't work (LP: #1834114) + - [Config] update configs and annotations for ASIX renamed + + [ Ubuntu: 5.0.0-21.22 ] + + * linux: 5.0.0-21.22 -proposed tracker (LP: #1834902) + * Disco update: 5.0.15 upstream stable release (LP: #1834529) + - net: stmmac: Use bfsize1 in ndesc_init_rx_desc + - Drivers: hv: vmbus: Remove the undesired put_cpu_ptr() in hv_synic_cleanup() + - ubsan: Fix nasty -Wbuiltin-declaration-mismatch GCC-9 warnings + - staging: greybus: power_supply: fix prop-descriptor request size + - staging: wilc1000: Avoid GFP_KERNEL allocation from atomic context. + - staging: most: cdev: fix chrdev_region leak in mod_exit + - staging: most: sound: pass correct device when creating a sound card + - ASoC: tlv320aic3x: fix reset gpio reference counting + - ASoC: hdmi-codec: fix S/PDIF DAI + - ASoC: stm32: sai: fix iec958 controls indexation + - ASoC: stm32: sai: fix exposed capabilities in spdif mode + - ASoC: stm32: sai: fix race condition in irq handler + - ASoC:soc-pcm:fix a codec fixup issue in TDM case + - ASoC:hdac_hda:use correct format to setup hda codec + - ASoC:intel:skl:fix a simultaneous playback & capture issue on hda platform + - ASoC: dpcm: prevent snd_soc_dpcm use after free + - ASoC: nau8824: fix the issue of the widget with prefix name + - ASoC: nau8810: fix the issue of widget with prefixed name + - ASoC: samsung: odroid: Fix clock configuration for 44100 sample rate + - ASoC: rt5682: Check JD status when system resume + - ASoC: rt5682: fix jack type detection issue + - ASoC: rt5682: recording has no sound after booting + - ASoC: wm_adsp: Add locking to wm_adsp2_bus_error + - clk: meson-gxbb: round the vdec dividers to closest + - ASoC: stm32: dfsdm: manage multiple prepare + - ASoC: stm32: dfsdm: fix debugfs warnings on entry creation + - ASoC: cs4270: Set auto-increment bit for register writes + - ASoC: dapm: Fix NULL pointer dereference in snd_soc_dapm_free_kcontrol + - drm/omap: hdmi4_cec: Fix CEC clock handling for PM + - IB/hfi1: Clear the IOWAIT pending bits when QP is put into error state + - IB/hfi1: Eliminate opcode tests on mr deref + - IB/hfi1: Fix the allocation of RSM table + - MIPS: KGDB: fix kgdb support for SMP platforms. + - ASoC: tlv320aic32x4: Fix Common Pins + - drm/mediatek: Fix an error code in mtk_hdmi_dt_parse_pdata() + - perf/x86/intel: Fix handling of wakeup_events for multi-entry PEBS + - perf/x86/intel: Initialize TFA MSR + - linux/kernel.h: Use parentheses around argument in u64_to_user_ptr() + - iov_iter: Fix build error without CONFIG_CRYPTO + - xtensa: fix initialization of pt_regs::syscall in start_thread + - ASoC: rockchip: pdm: fix regmap_ops hang issue + - drm/amdkfd: Add picasso pci id + - drm/amdgpu: Adjust IB test timeout for XGMI configuration + - drm/amdgpu: amdgpu_device_recover_vram always failed if only one node in + shadow_list + - drm/amd/display: fix cursor black issue + - ASoC: cs35l35: Disable regulators on driver removal + - objtool: Add rewind_stack_do_exit() to the noreturn list + - slab: fix a crash by reading /proc/slab_allocators + - drm/sun4i: tcon top: Fix NULL/invalid pointer dereference in + sun8i_tcon_top_un/bind + - virtio_pci: fix a NULL pointer reference in vp_del_vqs + - RDMA/vmw_pvrdma: Fix memory leak on pvrdma_pci_remove + - RDMA/hns: Fix bug that caused srq creation to fail + - KEYS: trusted: fix -Wvarags warning + - scsi: csiostor: fix missing data copy in csio_scsi_err_handler() + - drm/mediatek: fix possible object reference leak + - drm/mediatek: fix the rate and divder of hdmi phy for MT2701 + - drm/mediatek: make implementation of recalc_rate() for MT2701 hdmi phy + - drm/mediatek: remove flag CLK_SET_RATE_PARENT for MT2701 hdmi phy + - drm/mediatek: using new factor for tvdpll for MT2701 hdmi phy + - drm/mediatek: no change parent rate in round_rate() for MT2701 hdmi phy + - ASoC: Intel: kbl: fix wrong number of channels + - ASoC: stm32: sai: fix master clock management + - ALSA: hda: Fix racy display power access + - virtio-blk: limit number of hw queues by nr_cpu_ids + - blk-mq: introduce blk_mq_complete_request_sync() + - nvme: cancel request synchronously + - nvme-fc: correct csn initialization and increments on error + - nvmet: fix discover log page when offsets are used + - platform/x86: pmc_atom: Drop __initconst on dmi table + - NFSv4.1 fix incorrect return value in copy_file_range + - perf/core: Fix perf_event_disable_inatomic() race + - genirq: Prevent use-after-free and work list corruption + - usb: dwc3: Allow building USB_DWC3_QCOM without EXTCON + - usb: dwc3: Fix default lpm_nyet_threshold value + - USB: serial: f81232: fix interrupt worker not stop + - USB: cdc-acm: fix unthrottle races + - usb-storage: Set virt_boundary_mask to avoid SG overflows + - intel_th: pci: Add Comet Lake support + - iio: adc: qcom-spmi-adc5: Fix of-based module autoloading + - cpufreq: armada-37xx: fix frequency calculation for opp + - ACPI / LPSS: Use acpi_lpss_* instead of acpi_subsys_* functions for + hibernate + - soc: sunxi: Fix missing dependency on REGMAP_MMIO + - scsi: lpfc: change snprintf to scnprintf for possible overflow + - scsi: qla2xxx: Fix incorrect region-size setting in optrom SYSFS routines + - scsi: qla2xxx: Fix device staying in blocked state + - Bluetooth: Align minimum encryption key size for LE and BR/EDR connections + - Bluetooth: Fix not initializing L2CAP tx_credits + - Bluetooth: hci_bcm: Fix empty regulator supplies for Intel Macs + - UAS: fix alignment of scatter/gather segments + - ASoC: Intel: avoid Oops if DMA setup fails + - i3c: Fix a shift wrap bug in i3c_bus_set_addr_slot_status() + - locking/futex: Allow low-level atomic operations to return -EAGAIN + - arm64: futex: Bound number of LDXR/STXR loops in FUTEX_WAKE_OP + - Linux 5.0.15 + - Revert "Bluetooth: Align minimum encryption key size for LE and BR/EDR + connections" + * QCA9377 isn't being recognized sometimes (LP: #1757218) + - SAUCE: USB: Disable USB2 LPM at shutdown + * Cache line contention prevents scaling of 100Gbps performance (LP: #1832909) + - iommu/iova: Separate atomic variables to improve performance + * net: hns: Fix loopback test failed at copper ports (LP: #1833132) + - net: hns: Fix loopback test failed at copper ports + * hns: fix ICMP6 neighbor solicitation messages discard problem (LP: #1833140) + - net: hns: fix unsigned comparison to less than zero + * [UBUNTU] pkey: Indicate old mkvp only if old and curr. mkvp are different + (LP: #1832625) + - pkey: Indicate old mkvp only if old and current mkvp are different + * [UBUNTU] kernel: Fix gcm-aes-s390 wrong scatter-gather list processing + (LP: #1832623) + - s390/crypto: fix gcm-aes-s390 selftest failures + * AX88772A USB to Ethernet dongle doesn't work (LP: #1834114) + - net: phy: rename Asix Electronics PHY driver + - [Config] update configs and annotations for ASIX renamed + * Add nvidia-418 dkms build support to disco (LP: #1834476) + - add nvidia-418 dkms build + * depmod may prefer unsigned l-r-m nvidia modules to signed modules + (LP: #1834479) + - [Packaging] dkms-build--nvidia-N -- clean up unsigned ko files + * Hi1620 driver updates from upstream 5.2 merge window (LP: #1830815) + - ethtool: Added support for 50Gbps per lane link modes + - net: hns3: Make hclgevf_update_link_mode static + - net: hns3: Make hclge_destroy_cmd_queue static + - RDMA/hns: Only assign the relatived fields of psn if IB_QP_SQ_PSN is set + - RDMA/hns: Only assign the fields of the rq psn if IB_QP_RQ_PSN is set + - RDMA/hns: Update the range of raq_psn field of qp context + - RDMA/hns: Only assgin some fields if the relatived attr_mask is set + - RDMA/hns: Hide error print information with roce vf device + - RDMA/hns: Bugfix for sending with invalidate + - RDMA/hns: Delete unused variable in hns_roce_v2_modify_qp function + - RDMA/hns: Limit scope of hns_roce_cmq_send() + - RDMA/hns: Convert cq_table to XArray + - RDMA/hns: Convert qp_table_tree to XArray + - RDMA/hns: Fix bad endianess of port_pd variable + - net: hns3: check 1000M half for hns3_ethtool_ops.set_link_ksettings + - net: hns3: reduce resources use in kdump kernel + - net: hns3: modify the VF network port media type acquisition method + - net: hns3: return 0 and print warning when hit duplicate MAC + - net: hns3: minor optimization for ring_space + - net: hns3: minor optimization for datapath + - net: hns3: simplify hclgevf_cmd_csq_clean + - net: hns3: add protect when handling mac addr list + - net: hns3: check resetting status in hns3_get_stats() + - net: hns3: prevent change MTU when resetting + - net: hns3: modify HNS3_NIC_STATE_INITED flag in + hns3_reset_notify_uninit_enet + - net: hns3: split function hnae3_match_n_instantiate() + - RDMA/hns: Dump detailed driver-specific CQ + - RDMA/hns: Support to create 1M srq queue + - RDMA/hns: Bugfix for SCC hem free + - net: hns3: set vport alive state to default while resetting + - net: hns3: set up the vport alive state while reinitializing + - net: hns3: not reset vport who not alive when PF reset + - net: hns3: adjust the timing of hns3_client_stop when unloading + - net: hns3: deactive the reset timer when reset successfully + - net: hns3: ignore lower-level new coming reset + - net: hns3: do not request reset when hardware resetting + - net: hns3: handle pending reset while reset fail + - net: hns3: stop mailbox handling when command queue need re-init + - net: hns3: add error handler for initializing command queue + - net: hns3: remove resetting check in hclgevf_reset_task_schedule + - net: hns3: fix keep_alive_timer not stop problem + - scsi: hisi_sas: add host reset interface for test + - scsi: hisi_sas: Remedy inconsistent PHY down state in software + - scsi: hisi_sas: Fix for setting the PHY linkrate when disconnected + - scsi: hisi_sas: Adjust the printk format of functions hisi_sas_init_device() + - scsi: hisi_sas: allocate different SAS address for directly attached + situation + - scsi: hisi_sas: Support all RAS events with MSI interrupts + - scsi: hisi_sas: Don't hard reset disk during controller reset + - scsi: hisi_sas: Don't fail IT nexus reset for Open Reject timeout + - scsi: hisi_sas: Some misc tidy-up + - net: hns3: modify VLAN initialization to be compatible with port based VLAN + - net: hns3: fix VLAN offload handle for VLAN inserted by port + - net: hns3: fix set port based VLAN for PF + - net: hns3: fix set port based VLAN issue for VF + - net: hns3: minor refactor for hns3_rx_checksum + - net: hns3: add hns3_gro_complete for HW GRO process + - net: hns3: always assume no drop TC for performance reason + - net: hns3: divide shared buffer between TC + - net: hns3: set dividual reset level for all RAS and MSI-X errors + - net: hns3: do not initialize MDIO bus when PHY is inexistent + - net: hns3: free the pending skb when clean RX ring + - net: hns3: code optimization for command queue' spin lock + - net: hns3: fix sparse: warning when calling hclge_set_vlan_filter_hw() + - net: hns3: fix for vport->bw_limit overflow problem + - net: hns3: add reset statistics info for PF + - net: hns3: add reset statistics for VF + - net: hns3: add some debug information for hclge_check_event_cause + - net: hns3: add some debug info for hclgevf_get_mbx_resp() + - net: hns3: refine tx timeout count handle + - net: hns3: fix loop condition of hns3_get_tx_timeo_queue_info() + - net: hns3: dump more information when tx timeout happens + - net: hns3: Add support for netif message level settings + - net: hns3: add support for dump ncl config by debugfs + - net: hns3: Add handling of MAC tunnel interruption + - net: hns3: add queue's statistics update to service task + - net: hns3: add function type check for debugfs help information + - RDMA/hns: Bugfix for mapping user db + - net: hns3: fix data race between ring->next_to_clean + - net: hns3: fix for TX clean num when cleaning TX BD + - net: hns3: handle the BD info on the last BD of the packet + - net: hns3: stop sending keep alive msg when VF command queue needs reinit + - net: hns3: use atomic_t replace u32 for arq's count + - net: hns3: use a reserved byte to identify need_resp flag + - net: hns3: not reset TQP in the DOWN while VF resetting + - net: hns3: fix pause configure fail problem + - net: hns3: extend the loopback state acquisition time + - net: hns3: prevent double free in hns3_put_ring_config() + - net: hns3: remove reset after command send failed + - net: hns3: add support for multiple media type + - net: hns3: add autoneg and change speed support for fibre port + - net: hns3: add support for FEC encoding control + - net: hns3: unify maybe_stop_tx for TSO and non-TSO case + - net: hns3: use napi_schedule_irqoff in hard interrupts handlers + - net: hns3: add counter for times RX pages gets allocated + - net: hns3: add linearizing checking for TSO case + - net: hns3: fix for tunnel type handling in hns3_rx_checksum + - net: hns3: refactor BD filling for l2l3l4 info + - net: hns3: combine len and checksum handling for inner and outer header. + - net: hns3: fix error handling for desc filling + - net: hns3: optimize the barrier using when cleaning TX BD + - net: hns3: unify the page reusing for page size 4K and 64K + - net: hns3: some cleanup for struct hns3_enet_ring + - net: hns3: use devm_kcalloc when allocating desc_cb + - net: hns3: remove redundant assignment of l2_hdr to itself + - net: hns3: initialize CPU reverse mapping + - net: hns3: refine the flow director handle + - net: hns3: add aRFS support for PF + - net: hns3: fix for FEC configuration + - RDMA/hns: Remove unnecessary print message in aeq + - RDMA/hns: Update CQE specifications + - RDMA/hns: Move spin_lock_irqsave to the correct place + - RDMA/hns: Remove jiffies operation in disable interrupt context + - RDMA/hns: Replace magic numbers with #defines + - net: hns3: fix compile warning without CONFIG_RFS_ACCEL + - net: hns3: fix for HNS3_RXD_GRO_SIZE_M macro + - net: hns3: add support for dump firmware statistics by debugfs + - net: hns3: use HCLGE_STATE_NIC_REGISTERED to indicate PF NIC client has + registered + - net: hns3: use HCLGE_STATE_ROCE_REGISTERED to indicate PF ROCE client has + registered + - net: hns3: use HCLGEVF_STATE_NIC_REGISTERED to indicate VF NIC client has + registered + - net: hns3: modify hclge_init_client_instance() + - net: hns3: modify hclgevf_init_client_instance() + - net: hns3: add handshake with hardware while doing reset + - net: hns3: stop schedule reset service while unloading driver + - net: hns3: adjust hns3_uninit_phy()'s location in the hns3_client_uninit() + - net: hns3: fix a memory leak issue for hclge_map_unmap_ring_to_vf_vector + - RDMA/hns: Bugfix for posting multiple srq work request + - net: hns3: remove redundant core reset + - net: hns3: don't configure new VLAN ID into VF VLAN table when it's full + - net: hns3: fix VLAN filter restore issue after reset + - net: hns3: set the port shaper according to MAC speed + - net: hns3: add a check to pointer in error_detected and slot_reset + - net: hns3: set ops to null when unregister ad_dev + - net: hns3: add handling of two bits in MAC tunnel interrupts + - net: hns3: remove setting bit of reset_requests when handling mac tunnel + interrupts + - net: hns3: add opcode about query and clear RAS & MSI-X to special opcode + - net: hns3: delay and separate enabling of NIC and ROCE HW errors + - RDMA/hns: fix inverted logic of readl read and shift + - RDMA/hns: Bugfix for filling the sge of srq + - net: hns3: log detail error info of ROCEE ECC and AXI errors + - net: hns3: fix wrong size of mailbox responding data + - net: hns3: make HW GRO handling compliant with SW GRO + - net: hns3: replace numa_node_id with numa_mem_id for buffer reusing + - net: hns3: refactor hns3_get_new_int_gl function + - net: hns3: trigger VF reset if a VF has an over_8bd_nfe_err + - net: hns3: delete the redundant user NIC codes + - net: hns3: small changes for magic numbers + - net: hns3: use macros instead of magic numbers + - net: hns3: refactor PF/VF RSS hash key configuration + - net: hns3: some modifications to simplify and optimize code + - net: hns3: fix some coding style issues + - net: hns3: delay setting of reset level for hw errors until slot_reset is + called + - net: hns3: fix avoid unnecessary resetting for the H/W errors which do not + require reset + - net: hns3: process H/W errors occurred before HNS dev initialization + - net: hns3: add recovery for the H/W errors occurred before the HNS dev + initialization + - net: hns3: some changes of MSI-X bits in PPU(RCB) + - net: hns3: extract handling of mpf/pf msi-x errors into functions + - net: hns3: clear restting state when initializing HW device + - net: hns3: free irq when exit from abnormal branch + - net: hns3: fix for dereferencing before null checking + - net: hns3: fix for skb leak when doing selftest + - net: hns3: delay ring buffer clearing during reset + - net: hns3: some variable modification + - net: hns3: fix dereference of ae_dev before it is null checked + - scsi: hisi_sas: Delete PHY timers when rmmod or probe failed + - scsi: hisi_sas: Fix the issue of argument mismatch of printing ecc errors + - scsi: hisi_sas: Reduce HISI_SAS_SGE_PAGE_CNT in size + - scsi: hisi_sas: Change the type of some numbers to unsigned + - scsi: hisi_sas: Ignore the error code between phy down to phy up + - scsi: hisi_sas: Disable stash for v3 hw + - net: hns3: Add missing newline at end of file + - net: hns3: Fix inconsistent indenting + - RDMa/hns: Don't stuck in endless timeout loop + * Kernel modules generated incorrectly when system is localized to a non- + English language (LP: #1828084) + - scripts: override locale from environment when running recordmcount.pl + * [UBUNTU] kernel: Fix wrong dispatching for control domain CPRBs + (LP: #1832624) + - s390/zcrypt: Fix wrong dispatching for control domain CPRBs + * shiftfs: allow changing ro/rw for subvolumes (LP: #1832316) + - SAUCE: shiftfs: allow changing ro/rw for subvolumes + * Sound device not detected after resume from hibernate (LP: #1826868) + - drm/i915: Force 2*96 MHz cdclk on glk/cnl when audio power is enabled + - drm/i915: Save the old CDCLK atomic state + - drm/i915: Remove redundant store of logical CDCLK state + - drm/i915: Skip modeset for cdclk changes if possible + * [raven] fix screen corruption on modprobe (LP: #1831846) + - drm/amdgpu: keep stolen memory on picasso + - drm/amdgpu: reserve stollen vram for raven series + * Handle overflow in proc_get_long of sysctl (LP: #1833935) + - sysctl: handle overflow in proc_get_long + * Oops during sas expander hotplugging (LP: #1831799) + - scsi: libsas: delete sas port if expander discover failed + * [SRU][B/B-OEM/C/D/OEM-OSP1] Add RTL8822 wifi driver rtw88 (LP: #1831828) + - rtw88: new Realtek 802.11ac driver + - rtw88: fix shift of more than 32 bits of a integer + - rtw88: phy: mark expected switch fall-throughs + - rtw88: Make RA_MASK macros ULL + - [Config] Add realtek wifi RTW88 support + * Dell XPS 13 (9370) defaults to s2idle sleep/suspend instead of deep, NVMe + drains lots of power under s2idle (LP: #1808957) + - Revert "UBUNTU: SAUCE: pci/nvme: prevent WDC PC SN720 NVMe from entering D3 + and being disabled" + - Revert "UBUNTU: SAUCE: nvme: add quirk to not call disable function when + suspending" + - Revert "UBUTU: SAUCE: pci: prevent Intel NVMe SSDPEKKF from entering D3" + - Revert "UBUNTU: SAUCE: nvme: add quirk to not call disable function when + suspending" + - Revert "UBUNTU: SAUCE: pci: prevent sk hynix nvme from entering D3" + - PCI: PM: Avoid possible suspend-to-idle issue + - PCI: PM: Skip devices in D0 for suspend-to-idle + - nvme-pci: Sync queues on reset + - nvme: Export get and set features + - nvme-pci: Use host managed power state for suspend + * arm64: cma_alloc errors at boot (LP: #1823753) + - [Config] Bump CMA_SIZE_MBYTES to 32 on arm64 + - dma-contiguous: add dma_{alloc, free}_contiguous() helpers + - dma-contiguous: use fallback alloc_pages for single pages + - dma-contiguous: fix !CONFIG_DMA_CMA version of dma_{alloc, + free}_contiguous() + * libsas: old linkrate advertised after phy disabled (LP: #1830435) + - scsi: libsas: Inject revalidate event for root port event + - scsi: libsas: Do discovery on empty PHY to update PHY info + * fanotify06 from ubuntu_ltp_syscalls failed (LP: #1833028) + - ovl: do not generate duplicate fsnotify events for "fake" path + * hinic: fix oops due to race in set_rx_mode (LP: #1832048) + - hinic: fix a bug in set rx mode + * ubuntu 18.04 flickering screen with Radeon X1600 (LP: #1791312) + - drm/radeon: prefer lower reference dividers + * [ALSA] [PATCH] Headset fixup for System76 Gazelle (gaze14) (LP: #1827555) + - ALSA: hda/realtek - Headset fixup for System76 Gazelle (gaze14) + - ALSA: hda/realtek - Corrected fixup for System76 Gazelle (gaze14) + * ftrace in ubuntu_kernel_selftests complains "Illegal number" because of the + absence of tput (LP: #1828989) + - selftests/ftrace: Handle the absence of tput + * CVE-2019-11833 + - ext4: zero out the unused memory region in the extent tree block + * Disco update: 5.0.14 upstream stable release (LP: #1832775) + - selftests/seccomp: Prepare for exclusive seccomp flags + - seccomp: Make NEW_LISTENER and TSYNC flags exclusive + - ARC: memset: fix build with L1_CACHE_SHIFT != 6 + - iwlwifi: fix driver operation for 5350 + - mwifiex: Make resume actually do something useful again on SDIO cards + - mtd: rawnand: marvell: Clean the controller state before each operation + - mac80211: don't attempt to rename ERR_PTR() debugfs dirs + - i2c: synquacer: fix enumeration of slave devices + - i2c: imx: correct the method of getting private data in notifier_call + - i2c: Prevent runtime suspend of adapter when Host Notify is required + - ALSA: hda/realtek - Add new Dell platform for headset mode + - USB: yurex: Fix protection fault after device removal + - USB: w1 ds2490: Fix bug caused by improper use of altsetting array + - USB: dummy-hcd: Fix failure to give back unlinked URBs + - usb: usbip: fix isoc packet num validation in get_pipe + - USB: core: Fix unterminated string returned by usb_string() + - USB: core: Fix bug caused by duplicate interface PM usage counter + - KVM: lapic: Disable timer advancement if adaptive tuning goes haywire + - KVM: x86: Consider LAPIC TSC-Deadline timer expired if deadline too short + - KVM: lapic: Track lapic timer advance per vCPU + - KVM: lapic: Allow user to disable adaptive tuning of timer advancement + - KVM: lapic: Convert guest TSC to host time domain if necessary + - arm64: dts: rockchip: fix rk3328-roc-cc gmac2io tx/rx_delay + - HID: logitech: check the return value of create_singlethread_workqueue + - HID: debug: fix race condition with between rdesc_show() and device removal + - rtc: cros-ec: Fail suspend/resume if wake IRQ can't be configured + - rtc: sh: Fix invalid alarm warning for non-enabled alarm + - ARM: OMAP2+: add missing of_node_put after of_device_is_available + - batman-adv: Reduce claim hash refcnt only for removed entry + - batman-adv: Reduce tt_local hash refcnt only for removed entry + - batman-adv: Reduce tt_global hash refcnt only for removed entry + - batman-adv: fix warning in function batadv_v_elp_get_throughput + - ARM: dts: rockchip: Fix gpu opp node names for rk3288 + - reset: meson-audio-arb: Fix missing .owner setting of reset_controller_dev + - ARM: dts: Fix dcan clkctrl clock for am3 + - i40e: fix i40e_ptp_adjtime when given a negative delta + - ixgbe: fix mdio bus registration + - i40e: fix WoL support check + - riscv: fix accessing 8-byte variable from RV32 + - HID: quirks: Fix keyboard + touchpad on Lenovo Miix 630 + - net: hns3: fix compile error + - xdp: fix cpumap redirect SKB creation bug + - net/mlx5: E-Switch, Protect from invalid memory access in offload fdb table + - net/mlx5: E-Switch, Fix esw manager vport indication for more vport commands + - bonding: show full hw address in sysfs for slave entries + - net: stmmac: use correct DMA buffer size in the RX descriptor + - net: stmmac: ratelimit RX error logs + - net: stmmac: don't stop NAPI processing when dropping a packet + - net: stmmac: don't overwrite discard_frame status + - net: stmmac: fix dropping of multi-descriptor RX frames + - net: stmmac: don't log oversized frames + - jffs2: fix use-after-free on symlink traversal + - debugfs: fix use-after-free on symlink traversal + - mfd: twl-core: Disable IRQ while suspended + - block: use blk_free_flush_queue() to free hctx->fq in blk_mq_init_hctx + - rtc: da9063: set uie_unsupported when relevant + - HID: input: add mapping for Assistant key + - vfio/pci: use correct format characters + - scsi: core: add new RDAC LENOVO/DE_Series device + - scsi: storvsc: Fix calculation of sub-channel count + - arm/mach-at91/pm : fix possible object reference leak + - blk-mq: do not reset plug->rq_count before the list is sorted + - arm64: fix wrong check of on_sdei_stack in nmi context + - net: hns: fix KASAN: use-after-free in hns_nic_net_xmit_hw() + - net: hns: Fix probabilistic memory overwrite when HNS driver initialized + - net: hns: fix ICMP6 neighbor solicitation messages discard problem + - net: hns: Fix WARNING when remove HNS driver with SMMU enabled + - libcxgb: fix incorrect ppmax calculation + - KVM: SVM: prevent DBG_DECRYPT and DBG_ENCRYPT overflow + - kmemleak: powerpc: skip scanning holes in the .bss section + - hugetlbfs: fix memory leak for resv_map + - sh: fix multiple function definition build errors + - null_blk: prevent crash from bad home_node value + - xsysace: Fix error handling in ace_setup + - fs: stream_open - opener for stream-like files so that read and write can + run simultaneously without deadlock + - ARM: orion: don't use using 64-bit DMA masks + - ARM: iop: don't use using 64-bit DMA masks + - perf/x86/amd: Update generic hardware cache events for Family 17h + - Bluetooth: btusb: request wake pin with NOAUTOEN + - Bluetooth: mediatek: fix up an error path to restore bdev->tx_state + - clk: qcom: Add missing freq for usb30_master_clk on 8998 + - usb: dwc3: Reset num_trbs after skipping + - staging: iio: adt7316: allow adt751x to use internal vref for all dacs + - staging: iio: adt7316: fix the dac read calculation + - staging: iio: adt7316: fix handling of dac high resolution option + - staging: iio: adt7316: fix the dac write calculation + - scsi: RDMA/srpt: Fix a credit leak for aborted commands + - ASoC: Intel: bytcr_rt5651: Revert "Fix DMIC map headsetmic mapping" + - ASoC: rsnd: gen: fix SSI9 4/5/6/7 busif related register address + - ASoC: sunxi: sun50i-codec-analog: Rename hpvcc regulator supply to cpvdd + - ASoC: wm_adsp: Correct handling of compressed streams that restart + - ASoC: dpcm: skip missing substream while applying symmetry + - ASoC: stm32: fix sai driver name initialisation + - KVM: VMX: Save RSI to an unused output in the vCPU-run asm blob + - KVM: nVMX: Remove a rogue "rax" clobber from nested_vmx_check_vmentry_hw() + - kvm: vmx: Fix typos in vmentry/vmexit control setting + - KVM: lapic: Check for in-kernel LAPIC before deferencing apic pointer + - platform/x86: intel_pmc_core: Fix PCH IP name + - platform/x86: intel_pmc_core: Handle CFL regmap properly + - IB/core: Unregister notifier before freeing MAD security + - IB/core: Fix potential memory leak while creating MAD agents + - IB/core: Destroy QP if XRC QP fails + - Input: snvs_pwrkey - initialize necessary driver data before enabling IRQ + - Input: stmfts - acknowledge that setting brightness is a blocking call + - gpio: mxc: add check to return defer probe if clock tree NOT ready + - selinux: avoid silent denials in permissive mode under RCU walk + - selinux: never allow relabeling on context mounts + - mac80211: Honor SW_CRYPTO_CONTROL for unicast keys in AP VLAN mode + - powerpc/mm/hash: Handle mmap_min_addr correctly in get_unmapped_area topdown + search + - x86/mce: Improve error message when kernel cannot recover, p2 + - clk: x86: Add system specific quirk to mark clocks as critical + - x86/mm/KASLR: Fix the size of the direct mapping section + - x86/mm: Fix a crash with kmemleak_scan() + - x86/mm/tlb: Revert "x86/mm: Align TLB invalidation info" + - i2c: i2c-stm32f7: Fix SDADEL minimum formula + - media: v4l2: i2c: ov7670: Fix PLL bypass register values + - ASoC: wm_adsp: Check for buffer in trigger stop + - mm/kmemleak.c: fix unused-function warning + - Linux 5.0.14 + * [ZenBook S UX391UA, Realtek ALC294, Mic, Internal] No sound at all + (LP: #1784485) // Disco update: 5.0.14 upstream stable release + (LP: #1832775) + - ALSA: hda/realtek - Apply the fixup for ASUS Q325UAR + * Support new ums-realtek device (LP: #1831840) + - USB: usb-storage: Add new ID to ums-realtek + * amd_iommu possible data corruption (LP: #1823037) + - iommu/amd: Set exclusion range correctly + * Add new sound card PCIID into the alsa driver (LP: #1832299) + - ALSA: hda/intel: add CometLake PCI IDs + * idle-page oopses when accessing page frames that are out of range + (LP: #1833410) + - mm/page_idle.c: fix oops because end_pfn is larger than max_pfn + * Sometimes touchpad automatically trigger double click (LP: #1833484) + - SAUCE: i2c: designware: Add disable runtime pm quirk + * Disco update: 5.0.13 upstream stable release (LP: #1832749) + - ipv4: ip_do_fragment: Preserve skb_iif during fragmentation + - ipv6: A few fixes on dereferencing rt->from + - ipv6: fix races in ip6_dst_destroy() + - ipv6/flowlabel: wait rcu grace period before put_pid() + - ipv6: invert flowlabel sharing check in process and user mode + - l2ip: fix possible use-after-free + - l2tp: use rcu_dereference_sk_user_data() in l2tp_udp_encap_recv() + - net: dsa: bcm_sf2: fix buffer overflow doing set_rxnfc + - net: phy: marvell: Fix buffer overrun with stats counters + - net/tls: avoid NULL pointer deref on nskb->sk in fallback + - rxrpc: Fix net namespace cleanup + - sctp: avoid running the sctp state machine recursively + - selftests: fib_rule_tests: print the result and return 1 if any tests failed + - packet: validate msg_namelen in send directly + - packet: in recvmsg msg_name return at least sizeof sockaddr_ll + - selftests: fib_rule_tests: Fix icmp proto with ipv6 + - tcp: add sanity tests in tcp_add_backlog() + - udp: fix GRO reception in case of length mismatch + - udp: fix GRO packet of death + - bnxt_en: Improve multicast address setup logic. + - bnxt_en: Free short FW command HWRM memory in error path in bnxt_init_one() + - bnxt_en: Fix possible crash in bnxt_hwrm_ring_free() under error conditions. + - bnxt_en: Pass correct extended TX port statistics size to firmware. + - bnxt_en: Fix statistics context reservation logic. + - bnxt_en: Fix uninitialized variable usage in bnxt_rx_pkt(). + - net/tls: don't copy negative amounts of data in reencrypt + - net/tls: fix copy to fragments in reencrypt + - KVM: x86: Whitelist port 0x7e for pre-incrementing %rip + - KVM: nVMX: Fix size checks in vmx_set_nested_state + - ALSA: line6: use dynamic buffers + - iwlwifi: mvm: properly check debugfs dentry before using it + - ath10k: Drop WARN_ON()s that always trigger during system resume + - Linux 5.0.13 + * Add pointstick support on HP ZBook 17 G5 (LP: #1833387) + - Revert "HID: multitouch: Support ALPS PTP stick with pid 0x120A" + - SAUCE: HID: multitouch: Add pointstick support for ALPS Touchpad + * [SRU][B/B-OEM/B-OEM-OSP-1/C/D/E] Add trackpoint middle button support of 2 + new thinpads (LP: #1833637) + - Input: elantech - enable middle button support on 2 ThinkPads + * Kernel panic upon resetting ixgbe SR-IOV VFIO virtual function using 5.0 + kernel (LP: #1829652) + - SAUCE: ixgbe: Avoid NULL pointer dereference with VF on non-IPsec hw + * CVE-2019-11884 + - Bluetooth: hidp: fix buffer overflow + * TPM module can not initial (LP: #1826142) + - spi: Optionally use GPIO descriptors for CS GPIOs + - spi: dw: Convert to use CS GPIO descriptors + - spi: dw: fix warning unused variable 'ret' + - spi: Support high CS when using descriptors + - spi: dw: Fix default polarity of native chipselect + - gpio: of: Fix logic inversion + - spi: Add missing error handling for CS GPIOs + * CVE-2018-12126 // CVE-2018-12127 // CVE-2018-12130 // CVE-2019-11091 + - SAUCE: Synchronize MDS mitigations with upstream + - Documentation: Correct the possible MDS sysfs values + - x86/speculation/mds: Fix documentation typo + * CVE-2019-11091 + - x86/mds: Add MDSUM variant to the MDS documentation + * Regression for ubuntu_kernel_selftests [net] ubuntu_bpf test case fails to + build on disco (LP: #1829812) + - tools: bpftool: add basic probe capability, probe syscall availability + - tools: bpftool: add probes for eBPF program types + * POSIX fix for ftrace test in ubuntu_kernel_selftests (LP: #1828995) + - selftests/ftrace: Replace \e with \033 + - selftests/ftrace: Replace echo -e with printf + * Disco update: 5.0.12 upstream stable release (LP: #1830934) + - selinux: use kernel linux/socket.h for genheaders and mdp + - Revert "ACPICA: Clear status of GPEs before enabling them" + - drm/i915: Do not enable FEC without DSC + - mm: make page ref count overflow check tighter and more explicit + - mm: add 'try_get_page()' helper function + - mm: prevent get_user_pages() from overflowing page refcount + - fs: prevent page refcount overflow in pipe_buf_get + - arm64: dts: renesas: r8a77990: Fix SCIF5 DMA channels + - ARM: dts: bcm283x: Fix hdmi hpd gpio pull + - s390: limit brk randomization to 32MB + - mt76x02: fix hdr pointer in write txwi for USB + - mt76: mt76x2: fix external LNA gain settings + - mt76: mt76x2: fix 2.4 GHz channel gain settings + - net: ieee802154: fix a potential NULL pointer dereference + - ieee802154: hwsim: propagate genlmsg_reply return code + - Btrfs: fix file corruption after snapshotting due to mix of buffered/DIO + writes + - net: stmmac: don't set own bit too early for jumbo frames + - net: stmmac: fix jumbo frame sending with non-linear skbs + - qlcnic: Avoid potential NULL pointer dereference + - xsk: fix umem memory leak on cleanup + - staging: axis-fifo: add CONFIG_OF dependency + - staging, mt7621-pci: fix build without pci support + - netfilter: nft_set_rbtree: check for inactive element after flag mismatch + - netfilter: bridge: set skb transport_header before entering + NF_INET_PRE_ROUTING + - netfilter: fix NETFILTER_XT_TARGET_TEE dependencies + - netfilter: ip6t_srh: fix NULL pointer dereferences + - s390/qeth: fix race when initializing the IP address table + - ARM: imx51: fix a leaked reference by adding missing of_node_put + - sc16is7xx: missing unregister/delete driver on error in sc16is7xx_init() + - serial: ar933x_uart: Fix build failure with disabled console + - KVM: arm64: Reset the PMU in preemptible context + - arm64: KVM: Always set ICH_HCR_EL2.EN if GICv4 is enabled + - KVM: arm/arm64: vgic-its: Take the srcu lock when writing to guest memory + - KVM: arm/arm64: vgic-its: Take the srcu lock when parsing the memslots + - usb: dwc3: pci: add support for Comet Lake PCH ID + - usb: gadget: net2280: Fix overrun of OUT messages + - usb: gadget: net2280: Fix net2280_dequeue() + - usb: gadget: net2272: Fix net2272_dequeue() + - ARM: dts: pfla02: increase phy reset duration + - i2c: i801: Add support for Intel Comet Lake + - KVM: arm/arm64: Fix handling of stage2 huge mappings + - net: ks8851: Dequeue RX packets explicitly + - net: ks8851: Reassert reset pin if chip ID check fails + - net: ks8851: Delay requesting IRQ until opened + - net: ks8851: Set initial carrier state to down + - staging: rtl8188eu: Fix potential NULL pointer dereference of kcalloc + - staging: rtlwifi: rtl8822b: fix to avoid potential NULL pointer dereference + - staging: rtl8712: uninitialized memory in read_bbreg_hdl() + - staging: rtlwifi: Fix potential NULL pointer dereference of kzalloc + - net: phy: Add DP83825I to the DP83822 driver + - net: macb: Add null check for PCLK and HCLK + - net/sched: don't dereference a->goto_chain to read the chain index + - ARM: dts: imx6qdl: Fix typo in imx6qdl-icore-rqs.dtsi + - drm/tegra: hub: Fix dereference before check + - NFS: Fix a typo in nfs_init_timeout_values() + - net: xilinx: fix possible object reference leak + - net: ibm: fix possible object reference leak + - net: ethernet: ti: fix possible object reference leak + - drm: Fix drm_release() and device unplug + - gpio: aspeed: fix a potential NULL pointer dereference + - drm/meson: Fix invalid pointer in meson_drv_unbind() + - drm/meson: Uninstall IRQ handler + - ARM: davinci: fix build failure with allnoconfig + - sbitmap: order READ/WRITE freed instance and setting clear bit + - staging: vc04_services: Fix an error code in vchiq_probe() + - scsi: mpt3sas: Fix kernel panic during expander reset + - scsi: aacraid: Insure we don't access PCIe space during AER/EEH + - scsi: qla4xxx: fix a potential NULL pointer dereference + - usb: usb251xb: fix to avoid potential NULL pointer dereference + - leds: trigger: netdev: fix refcnt leak on interface rename + - SUNRPC: fix uninitialized variable warning + - x86/realmode: Don't leak the trampoline kernel address + - usb: u132-hcd: fix resource leak + - ceph: fix use-after-free on symlink traversal + - scsi: zfcp: reduce flood of fcrscn1 trace records on multi-element RSCN + - x86/mm: Don't exceed the valid physical address space + - libata: fix using DMA buffers on stack + - kbuild: skip parsing pre sub-make code for recursion + - afs: Fix StoreData op marshalling + - gpio: of: Check propname before applying "cs-gpios" quirks + - gpio: of: Check for "spi-cs-high" in child instead of parent node + - KVM: nVMX: Do not inherit quadrant and invalid for the root shadow EPT + - KVM: SVM: Workaround errata#1096 (insn_len maybe zero on SMAP violation) + - kvm/x86: Move MSR_IA32_ARCH_CAPABILITIES to array emulated_msrs + - x86/kvm/hyper-v: avoid spurious pending stimer on vCPU init + - KVM: selftests: assert on exit reason in CR4/cpuid sync test + - KVM: selftests: explicitly disable PIE for tests + - KVM: selftests: disable stack protector for all KVM tests + - KVM: selftests: complete IO before migrating guest state + - gpio: of: Fix of_gpiochip_add() error path + - nvme-multipath: relax ANA state check + - nvmet: fix building bvec from sg list + - nvmet: fix error flow during ns enable + - perf cs-etm: Add missing case value + - perf machine: Update kernel map address and re-order properly + - kconfig/[mn]conf: handle backspace (^H) key + - iommu/amd: Reserve exclusion range in iova-domain + - kasan: fix variable 'tag' set but not used warning + - ptrace: take into account saved_sigmask in PTRACE{GET,SET}SIGMASK + - leds: pca9532: fix a potential NULL pointer dereference + - leds: trigger: netdev: use memcpy in device_name_store + - Linux 5.0.12 + - [Config] Document drop of axis-fifo for amd64/i386 + * Disco update: 5.0.11 upstream stable release (LP: #1830929) + - netfilter: nf_tables: bogus EBUSY when deleting set after flush + - netfilter: nf_tables: bogus EBUSY in helper removal from transaction + - intel_th: gth: Fix an off-by-one in output unassigning + - powerpc/vdso32: fix CLOCK_MONOTONIC on PPC64 + - ALSA: hda/realtek - Move to ACT_INIT state + - fs/proc/proc_sysctl.c: Fix a NULL pointer dereference + - block, bfq: fix use after free in bfq_bfqq_expire + - cifs: fix memory leak in SMB2_read + - cifs: fix page reference leak with readv/writev + - cifs: do not attempt cifs operation on smb2+ rename error + - tracing: Fix a memory leak by early error exit in trace_pid_write() + - tracing: Fix buffer_ref pipe ops + - crypto: xts - Fix atomic sleep when walking skcipher + - crypto: lrw - Fix atomic sleep when walking skcipher + - gpio: eic: sprd: Fix incorrect irq type setting for the sync EIC + - zram: pass down the bvec we need to read into in the work struct + - lib/Kconfig.debug: fix build error without CONFIG_BLOCK + - MIPS: scall64-o32: Fix indirect syscall number load + - trace: Fix preempt_enable_no_resched() abuse + - mm: do not boost watermarks to avoid fragmentation for the DISCONTIG memory + model + - arm64: mm: Ensure tail of unaligned initrd is reserved + - IB/rdmavt: Fix frwr memory registration + - RDMA/mlx5: Do not allow the user to write to the clock page + - RDMA/mlx5: Use rdma_user_map_io for mapping BAR pages + - RDMA/ucontext: Fix regression with disassociate + - sched/numa: Fix a possible divide-by-zero + - ceph: only use d_name directly when parent is locked + - ceph: ensure d_name stability in ceph_dentry_hash() + - ceph: fix ci->i_head_snapc leak + - nfsd: Don't release the callback slot unless it was actually held + - nfsd: wake waiters blocked on file_lock before deleting it + - nfsd: wake blocked file lock waiters before sending callback + - sunrpc: don't mark uninitialised items as VALID. + - perf/x86/intel: Update KBL Package C-state events to also include + PC8/PC9/PC10 counters + - Input: synaptics-rmi4 - write config register values to the right offset + - dmaengine: sh: rcar-dmac: With cyclic DMA residue 0 is valid + - dmaengine: sh: rcar-dmac: Fix glitch in dmaengine_tx_status + - dmaengine: mediatek-cqdma: fix wrong register usage in mtk_cqdma_start + - ARM: 8857/1: efi: enable CP15 DMB instructions before cleaning the cache + - powerpc/mm/radix: Make Radix require HUGETLB_PAGE + - drm/vc4: Fix memory leak during gpu reset. + - drm/ttm: fix re-init of global structures + - drm/vc4: Fix compilation error reported by kbuild test bot + - ext4: fix some error pointer dereferences + - loop: do not print warn message if partition scan is successful + - tipc: handle the err returned from cmd header function + - slip: make slhc_free() silently accept an error pointer + - workqueue: Try to catch flush_work() without INIT_WORK(). + - sched/deadline: Correctly handle active 0-lag timers + - mac80211_hwsim: calculate if_combination.max_interfaces + - NFS: Forbid setting AF_INET6 to "struct sockaddr_in"->sin_family. + - netfilter: ebtables: CONFIG_COMPAT: drop a bogus WARN_ON + - fm10k: Fix a potential NULL pointer dereference + - tipc: check bearer name with right length in tipc_nl_compat_bearer_enable + - tipc: check link name with right length in tipc_nl_compat_link_set + - net: netrom: Fix error cleanup path of nr_proto_init + - net/rds: Check address length before reading address family + - rxrpc: fix race condition in rxrpc_input_packet() + - pin iocb through aio. + - aio: fold lookup_kiocb() into its sole caller + - aio: keep io_event in aio_kiocb + - aio: store event at final iocb_put() + - Fix aio_poll() races + - x86, retpolines: Raise limit for generating indirect calls from switch-case + - x86/retpolines: Disable switch jump tables when retpolines are enabled + - rdma: fix build errors on s390 and MIPS due to bad ZERO_PAGE use + - ipv4: add sanity checks in ipv4_link_failure() + - ipv4: set the tcp_min_rtt_wlen range from 0 to one day + - mlxsw: spectrum: Fix autoneg status in ethtool + - net/mlx5e: ethtool, Remove unsupported SFP EEPROM high pages query + - net: rds: exchange of 8K and 1M pool + - net/rose: fix unbound loop in rose_loopback_timer() + - net: stmmac: move stmmac_check_ether_addr() to driver probe + - net/tls: fix refcount adjustment in fallback + - stmmac: pci: Adjust IOT2000 matching + - team: fix possible recursive locking when add slaves + - net: socionext: replace napi_alloc_frag with the netdev variant on init + - net/ncsi: handle overflow when incrementing mac address + - mlxsw: pci: Reincrease PCI reset timeout + - mlxsw: spectrum: Put MC TCs into DWRR mode + - net/mlx5e: Fix the max MTU check in case of XDP + - net/mlx5e: Fix use-after-free after xdp_return_frame + - net/tls: avoid potential deadlock in tls_set_device_offload_rx() + - net/tls: don't leak IV and record seq when offload fails + - Linux 5.0.11 + * Disco update: 5.0.10 upstream stable release (LP: #1830922) + - bonding: fix event handling for stacked bonds + - failover: allow name change on IFF_UP slave interfaces + - net: atm: Fix potential Spectre v1 vulnerabilities + - net: bridge: fix per-port af_packet sockets + - net: bridge: multicast: use rcu to access port list from + br_multicast_start_querier + - net: fec: manage ahb clock in runtime pm + - net: Fix missing meta data in skb with vlan packet + - net: fou: do not use guehdr after iptunnel_pull_offloads in gue_udp_recv + - tcp: tcp_grow_window() needs to respect tcp_space() + - team: set slave to promisc if team is already in promisc mode + - tipc: missing entries in name table of publications + - vhost: reject zero size iova range + - ipv4: recompile ip options in ipv4_link_failure + - ipv4: ensure rcu_read_lock() in ipv4_link_failure() + - mlxsw: spectrum_switchdev: Add MDB entries in prepare phase + - mlxsw: core: Do not use WQ_MEM_RECLAIM for EMAD workqueue + - mlxsw: core: Do not use WQ_MEM_RECLAIM for mlxsw ordered workqueue + - mlxsw: core: Do not use WQ_MEM_RECLAIM for mlxsw workqueue + - mlxsw: spectrum_router: Do not check VRF MAC address + - net: thunderx: raise XDP MTU to 1508 + - net: thunderx: don't allow jumbo frames with XDP + - net/tls: fix the IV leaks + - net/tls: don't leak partially sent record in device mode + - net: strparser: partially revert "strparser: Call skb_unclone conditionally" + - net/tls: fix build without CONFIG_TLS_DEVICE + - net: bridge: fix netlink export of vlan_stats_per_port option + - net/mlx5e: XDP, Avoid checksum complete when XDP prog is loaded + - net/mlx5e: Protect against non-uplink representor for encap + - net/mlx5e: Switch to Toeplitz RSS hash by default + - net/mlx5e: Rx, Fixup skb checksum for packets with tail padding + - net/mlx5e: Rx, Check ip headers sanity + - Revert "net/mlx5e: Enable reporting checksum unnecessary also for L3 + packets" + - net/mlx5: FPGA, tls, hold rcu read lock a bit longer + - net/tls: prevent bad memory access in tls_is_sk_tx_device_offloaded() + - net/mlx5: FPGA, tls, idr remove on flow delete + - route: Avoid crash from dereferencing NULL rt->from + - nfp: flower: replace CFI with vlan present + - nfp: flower: remove vlan CFI bit from push vlan action + - sch_cake: Use tc_skb_protocol() helper for getting packet protocol + - sch_cake: Make sure we can write the IP header before changing DSCP bits + - NFC: nci: Add some bounds checking in nci_hci_cmd_received() + - nfc: nci: Potential off by one in ->pipes[] array + - sch_cake: Simplify logic in cake_select_tin() + - CIFS: keep FileInfo handle live during oplock break + - cifs: Fix lease buffer length error + - cifs: Fix use-after-free in SMB2_write + - cifs: Fix use-after-free in SMB2_read + - cifs: fix handle leak in smb2_query_symlink() + - fs/dax: Deposit pagetable even when installing zero page + - KVM: x86: Don't clear EFER during SMM transitions for 32-bit vCPU + - KVM: x86: svm: make sure NMI is injected after nmi_singlestep + - Staging: iio: meter: fixed typo + - staging: iio: ad7192: Fix ad7193 channel address + - iio: gyro: mpu3050: fix chip ID reading + - iio/gyro/bmg160: Use millidegrees for temperature scale + - iio:chemical:bme680: Fix, report temperature in millidegrees + - iio:chemical:bme680: Fix SPI read interface + - iio: cros_ec: Fix the maths for gyro scale calculation + - iio: ad_sigma_delta: select channel when reading register + - iio: dac: mcp4725: add missing powerdown bits in store eeprom + - iio: Fix scan mask selection + - iio: adc: at91: disable adc channel interrupt in timeout case + - iio: core: fix a possible circular locking dependency + - io: accel: kxcjk1013: restore the range after resume. + - staging: most: core: use device description as name + - staging: comedi: vmk80xx: Fix use of uninitialized semaphore + - staging: comedi: vmk80xx: Fix possible double-free of ->usb_rx_buf + - staging: comedi: ni_usb6501: Fix use of uninitialized mutex + - staging: comedi: ni_usb6501: Fix possible double-free of ->usb_rx_buf + - ALSA: core: Fix card races between register and disconnect + - Input: elan_i2c - add hardware ID for multiple Lenovo laptops + - serial: sh-sci: Fix HSCIF RX sampling point adjustment + - serial: sh-sci: Fix HSCIF RX sampling point calculation + - vt: fix cursor when clearing the screen + - scsi: core: set result when the command cannot be dispatched + - Revert "scsi: fcoe: clear FC_RP_STARTED flags when receiving a LOGO" + - i3c: dw: Fix dw_i3c_master_disable controller by using correct mask + - i3c: Fix the verification of random PID + - Revert "svm: Fix AVIC incomplete IPI emulation" + - coredump: fix race condition between mmget_not_zero()/get_task_mm() and core + dumping + - x86/kvm: move kvm_load/put_guest_xcr0 into atomic context + - ipmi: fix sleep-in-atomic in free_user at cleanup SRCU user->release_barrier + - crypto: x86/poly1305 - fix overflow during partial reduction + - drm/ttm: fix out-of-bounds read in ttm_put_pages() v2 + - arm64: futex: Restore oldval initialization to work around buggy compilers + - x86/kprobes: Verify stack frame on kretprobe + - kprobes: Mark ftrace mcount handler functions nokprobe + - x86/kprobes: Avoid kretprobe recursion bug + - kprobes: Fix error check when reusing optimized probes + - rt2x00: do not increment sequence number while re-transmitting + - mac80211: do not call driver wake_tx_queue op during reconfig + - s390/mem_detect: Use IS_ENABLED(CONFIG_BLK_DEV_INITRD) + - drm/amdgpu/gmc9: fix VM_L2_CNTL3 programming + - perf/x86/amd: Add event map for AMD Family 17h + - x86/cpu/bugs: Use __initconst for 'const' init data + - perf/x86: Fix incorrect PEBS_REGS + - x86/speculation: Prevent deadlock on ssb_state::lock + - timers/sched_clock: Prevent generic sched_clock wrap caused by tick_freeze() + - nfit/ars: Remove ars_start_flags + - nfit/ars: Introduce scrub_flags + - nfit/ars: Allow root to busy-poll the ARS state machine + - nfit/ars: Avoid stale ARS results + - tpm/tpm_i2c_atmel: Return -E2BIG when the transfer is incomplete + - tpm: Fix the type of the return value in calc_tpm2_event_size() + - Revert "kbuild: use -Oz instead of -Os when using clang" + - sched/fair: Limit sched_cfs_period_timer() loop to avoid hard lockup + - tpm: fix an invalid condition in tpm_common_poll + - mt76x02: avoid status_list.lock and sta->rate_ctrl_lock dependency + - device_cgroup: fix RCU imbalance in error case + - perf/ring_buffer: Fix AUX record suppression + - mm/memory_hotplug: do not unlock after failing to take the + device_hotplug_lock + - mm/vmstat.c: fix /proc/vmstat format for CONFIG_DEBUG_TLBFLUSH=y + CONFIG_SMP=n + - ALSA: info: Fix racy addition/deletion of nodes + - percpu: stop printing kernel addresses + - kernel/sysctl.c: fix out-of-bounds access when setting file-max + - Linux 5.0.10 + * Disco update: 5.0.9 upstream stable release (LP: #1830906) + - ARC: u-boot args: check that magic number is correct + - arc: hsdk_defconfig: Enable CONFIG_BLK_DEV_RAM + - perf/core: Restore mmap record type correctly + - mips: bcm47xx: Enable USB power on Netgear WNDR3400v2 + - ext4: avoid panic during forced reboot + - ext4: add missing brelse() in add_new_gdb_meta_bg() + - ext4: report real fs size after failed resize + - ALSA: echoaudio: add a check for ioremap_nocache + - ALSA: sb8: add a check for request_region + - auxdisplay: hd44780: Fix memory leak on ->remove() + - drm/udl: use drm_gem_object_put_unlocked. + - IB/mlx4: Fix race condition between catas error reset and aliasguid flows + - i40iw: Avoid panic when handling the inetdev event + - mmc: davinci: remove extraneous __init annotation + - ALSA: opl3: fix mismatch between snd_opl3_drum_switch definition and + declaration + - paride/pf: cleanup queues when detection fails + - paride/pcd: cleanup queues when detection fails + - thermal/intel_powerclamp: fix __percpu declaration of worker_data + - thermal: samsung: Fix incorrect check after code merge + - thermal: bcm2835: Fix crash in bcm2835_thermal_debugfs + - thermal/int340x_thermal: Add additional UUIDs + - thermal/int340x_thermal: fix mode setting + - thermal/intel_powerclamp: fix truncated kthread name + - scsi: iscsi: flush running unbind operations when removing a session + - sched/cpufreq: Fix 32-bit math overflow + - sched/core: Fix buffer overflow in cgroup2 property cpu.max + - x86/mm: Don't leak kernel addresses + - tools/power turbostat: return the exit status of a command + - scsi: core: Also call destroy_rcu_head() for passthrough requests + - scsi: qla2xxx: Fix NULL pointer crash due to stale CPUID + - perf stat: Fix --no-scale + - perf list: Don't forget to drop the reference to the allocated thread_map + - perf tools: Fix errors under optimization level '-Og' + - perf config: Fix an error in the config template documentation + - perf config: Fix a memory leak in collect_config() + - perf build-id: Fix memory leak in print_sdt_events() + - perf top: Fix error handling in cmd_top() + - perf hist: Add missing map__put() in error case + - perf map: Remove map from 'names' tree in __maps__remove() + - perf maps: Purge all maps from the 'names' tree + - perf top: Fix global-buffer-overflow issue + - perf evsel: Free evsel->counts in perf_evsel__exit() + - perf tests: Fix a memory leak of cpu_map object in the + openat_syscall_event_on_all_cpus test + - perf tests: Fix memory leak by expr__find_other() in test__expr() + - perf tests: Fix a memory leak in test__perf_evsel__tp_sched_test() + - ACPI / utils: Drop reference in test for device presence + - PM / Domains: Avoid a potential deadlock + - blk-iolatency: #include "blk.h" + - drm/exynos/mixer: fix MIXER shadow registry synchronisation code + - irqchip/stm32: Don't clear rising/falling config registers at init + - irqchip/stm32: Don't set rising configuration registers at init + - irqchip/mbigen: Don't clear eventid when freeing an MSI + - x86/hpet: Prevent potential NULL pointer dereference + - x86/hyperv: Prevent potential NULL pointer dereference + - x86/cpu/cyrix: Use correct macros for Cyrix calls on Geode processors + - drm/nouveau/debugfs: Fix check of pm_runtime_get_sync failure + - iommu/vt-d: Check capability before disabling protected memory + - iommu/vt-d: Save the right domain ID used by hardware + - x86/hw_breakpoints: Make default case in hw_breakpoint_arch_parse() return + an error + - cifs: fix that return -EINVAL when do dedupe operation + - fix incorrect error code mapping for OBJECTID_NOT_FOUND + - cifs: Fix slab-out-of-bounds when tracing SMB tcon + - x86/gart: Exclude GART aperture from kcore + - ext4: prohibit fstrim in norecovery mode + - lkdtm: Print real addresses + - lkdtm: Add tests for NULL pointer dereference + - drm/amdgpu: psp_ring_destroy cause psp->km_ring.ring_mem NULL + - drm/panel: panel-innolux: set display off in innolux_panel_unprepare + - crypto: axis - fix for recursive locking from bottom half + - Revert "ACPI / EC: Remove old CLEAR_ON_RESUME quirk" + - coresight: cpu-debug: Support for CA73 CPUs + - PCI: Blacklist power management of Gigabyte X299 DESIGNARE EX PCIe ports + - PCI/ASPM: Save LTR Capability for suspend/resume + - f2fs: sync filesystem after roll-forward recovery + - drm/nouveau/volt/gf117: fix speedo readout register + - platform/x86: intel_pmc_core: Quirk to ignore XTAL shutdown + - ARM: 8839/1: kprobe: make patch_lock a raw_spinlock_t + - drm/amdkfd: use init_mqd function to allocate object for hid_mqd (CI) + - appletalk: Fix use-after-free in atalk_proc_exit + - cifs: return -ENODATA when deleting an xattr that does not exist + - lib/div64.c: off by one in shift + - rxrpc: Fix client call connect/disconnect race + - f2fs: fix to dirty inode for i_mode recovery + - f2fs: fix to use kvfree instead of kzfree + - f2fs: fix to add refcount once page is tagged PG_private + - include/linux/swap.h: use offsetof() instead of custom __swapoffset macro + - bpf: fix use after free in bpf_evict_inode + - IB/hfi1: Failed to drain send queue when QP is put into error state + - paride/pf: Fix potential NULL pointer dereference + - paride/pcd: Fix potential NULL pointer dereference and mem leak + - Linux 5.0.9 + * crashdump fails on HiSilicon D06 (LP: #1828868) + - iommu/arm-smmu-v3: Don't disable SMMU in kdump kernel + * Eletrical noise occurred when external headset enter powersaving mode on a + DEll machine (LP: #1828798) + - ALSA: hda/realtek - Fixup headphone noise via runtime suspend + * [18.04/18.10] File libperf-jvmti.so is missing in linux-tools-common deb on + Ubuntu (LP: #1761379) + - [Packaging] Support building libperf-jvmti.so + * ethtool identify command doesn't blink LED on Hi1620 NICs (LP: #1829306) + - net: phy: marvell: add new default led configure for m88e151x + * Add support to Comet Lake LPSS (LP: #1830175) + - mfd: intel-lpss: Add Intel Comet Lake PCI IDs + * Reduce NAPI weight in hns driver from 256 to 64 (LP: #1830587) + - net: hns: Use NAPI_POLL_WEIGHT for hns driver + + -- Khalid Elmously Thu, 04 Jul 2019 03:39:18 -0400 + +linux-azure (5.0.0-1011.11) disco; urgency=medium + + * linux-azure: 5.0.0-1011.11 -proposed tracker (LP: #1834706) + + * linux-azure: mlx4, mlx5, ibverbs, ib_umad are not being loaded by default + (LP: #1834696) + - Revert "UBUNTU: [Config] linux-azure: CONFIG_MLX{4,5}_INFINIBAND=m" + + -- Marcelo Henrique Cerri Fri, 28 Jun 2019 22:13:08 -0300 + +linux-azure (5.0.0-1010.10) disco; urgency=medium + + * linux-azure: 5.0.0-1010.10 -proposed tracker (LP: #1833924) + + * Enable eBPF JIT in the linux-azure kernels (LP: #1827916) + - [Config] linux-azure: CONFIG_MLX{4,5}_INFINIBAND=m + + * linux-azure: Add the Catapult FPGA Driver (LP: #1824879) + - SAUCE: linux-azure: Include Catapult FPGA PCI driver + - [Config] linux-azure: CONFIG_CATAPULT_PCI=m + + * [Packaging] Improve config annotations check on custom kernels + (LP: #1820075) + - [Config] linux-azure: Include custom annotations files + + [ Ubuntu: 5.0.0-20.21 ] + + * linux: 5.0.0-20.21 -proposed tracker (LP: #1833934) + * CVE-2019-11479 + - SAUCE: tcp: add tcp_min_snd_mss sysctl + - SAUCE: tcp: enforce tcp_min_snd_mss in tcp_mtu_probing() + * Remote denial of service (resource exhaustion) caused by TCP SACK scoreboard + manipulation (LP: #1831638) // CVE-2019-11478 + - tcp: refine memory limit test in tcp_fragment() + + [ Ubuntu: 5.0.0-19.20 ] + + * CVE-2019-12817 + - SAUCE: powerpc/mm/64s/hash: Reallocate context ids on fork + + -- Marcelo Henrique Cerri Tue, 25 Jun 2019 10:36:47 -0300 + +linux-azure (5.0.0-1008.8) disco; urgency=medium + + + [ Ubuntu: 5.0.0-17.18 ] + + * Remote denial of service (resource exhaustion) caused by TCP SACK scoreboard + manipulation (LP: #1831638) + - SAUCE: tcp: tcp_fragment() should apply sane memory limits + * Remote denial of service (system crash) caused by integer overflow in TCP + SACK handling (LP: #1831637) + - SAUCE: tcp: limit payload size of sacked skbs + + -- Marcelo Henrique Cerri Tue, 04 Jun 2019 22:43:16 -0300 + +linux-azure (5.0.0-1007.7) disco; urgency=medium + + * linux-azure: 5.0.0-1007.7 -proposed tracker (LP: #1829166) + + * Disco update: 5.0.8 upstream stable release (LP: #1828415) + - [Config]: remove CONFIG_R3964 + - [Config]: add CONFIG_LDISC_AUTOLOAD=y + + [ Ubuntu: 5.0.0-16.17 ] + + * linux: 5.0.0-16.17 -proposed tracker (LP: #1829173) + * shiftfs: lock security sensitive superblock flags (LP: #1827122) + - SAUCE: shiftfs: lock down certain superblock flags + * Please package libbpf (which is done out of the kernel src) in Debian [for + 19.10] (LP: #1826410) + - SAUCE: tools -- fix add ability to disable libbfd + * Disco update: 5.0.8 upstream stable release (LP: #1828415) + - drm/i915/gvt: do not let pin count of shadow mm go negative + - kbuild: pkg: use -f $(srctree)/Makefile to recurse to top Makefile + - netfilter: nft_compat: use .release_ops and remove list of extension + - netfilter: nf_tables: use-after-free in dynamic operations + - netfilter: nf_tables: add missing ->release_ops() in error path of newrule() + - hv_netvsc: Fix unwanted wakeup after tx_disable + - ibmvnic: Fix completion structure initialization + - ip6_tunnel: Match to ARPHRD_TUNNEL6 for dev type + - ipv6: Fix dangling pointer when ipv6 fragment + - ipv6: sit: reset ip header pointer in ipip6_rcv + - kcm: switch order of device registration to fix a crash + - net: ethtool: not call vzalloc for zero sized memory request + - net-gro: Fix GRO flush when receiving a GSO packet. + - net/mlx5: Decrease default mr cache size + - netns: provide pure entropy for net_hash_mix() + - net: rds: force to destroy connection if t_sock is NULL in + rds_tcp_kill_sock(). + - net/sched: act_sample: fix divide by zero in the traffic path + - net/sched: fix ->get helper of the matchall cls + - qmi_wwan: add Olicard 600 + - r8169: disable ASPM again + - sctp: initialize _pad of sockaddr_in before copying to user memory + - tcp: Ensure DCTCP reacts to losses + - tcp: fix a potential NULL pointer dereference in tcp_sk_exit + - vrf: check accept_source_route on the original netdevice + - net/mlx5e: Fix error handling when refreshing TIRs + - net/mlx5e: Add a lock on tir list + - nfp: validate the return code from dev_queue_xmit() + - nfp: disable netpoll on representors + - bnxt_en: Improve RX consumer index validity check. + - bnxt_en: Reset device on RX buffer errors. + - net: ip_gre: fix possible use-after-free in erspan_rcv + - net: ip6_gre: fix possible use-after-free in ip6erspan_rcv + - net: bridge: always clear mcast matching struct on reports and leaves + - net: thunderx: fix NULL pointer dereference in nicvf_open/nicvf_stop + - net: vrf: Fix ping failed when vrf mtu is set to 0 + - net: core: netif_receive_skb_list: unlist skb before passing to pt->func + - r8169: disable default rx interrupt coalescing on RTL8168 + - net: mlx5: Add a missing check on idr_find, free buf + - net/mlx5e: Update xoff formula + - net/mlx5e: Update xon formula + - kbuild: clang: choose GCC_TOOLCHAIN_DIR not on LD + - lib/string.c: implement a basic bcmp + - Revert "clk: meson: clean-up clock registration" + - tty: mark Siemens R3964 line discipline as BROKEN + - [Config]: remove CONFIG_R3964 + - [Config]: add CONFIG_LDISC_AUTOLOAD=y + - tty: ldisc: add sysctl to prevent autoloading of ldiscs + - hwmon: (w83773g) Select REGMAP_I2C to fix build error + - hwmon: (occ) Fix power sensor indexing + - SMB3: Allow persistent handle timeout to be configurable on mount + - HID: logitech: Handle 0 scroll events for the m560 + - ACPICA: Clear status of GPEs before enabling them + - ACPICA: Namespace: remove address node from global list after method + termination + - ALSA: seq: Fix OOB-reads from strlcpy + - ALSA: hda/realtek: Enable headset MIC of Acer TravelMate B114-21 with ALC233 + - ALSA: hda/realtek - Add quirk for Tuxedo XC 1509 + - ALSA: xen-front: Do not use stream buffer size before it is set + - mm/huge_memory.c: fix modifying of page protection by insert_pfn_pmd() + - arm64: dts: rockchip: fix rk3328 sdmmc0 write errors + - mmc: alcor: don't write data before command has completed + - mmc: sdhci-omap: Don't finish_mrq() on a command error during tuning + - parisc: Detect QEMU earlier in boot process + - parisc: regs_return_value() should return gpr28 + - parisc: also set iaoq_b in instruction_pointer_set() + - alarmtimer: Return correct remaining time + - drm/i915/gvt: do not deliver a workload if its creation fails + - drm/sun4i: DW HDMI: Lower max. supported rate for H6 + - drm/udl: add a release method and delay modeset teardown + - kvm: svm: fix potential get_num_contig_pages overflow + - include/linux/bitrev.h: fix constant bitrev + - mm: writeback: use exact memcg dirty counts + - ASoC: intel: Fix crash at suspend/resume after failed codec registration + - ASoC: fsl_esai: fix channel swap issue when stream starts + - Btrfs: do not allow trimming when a fs is mounted with the nologreplay + option + - btrfs: prop: fix zstd compression parameter validation + - btrfs: prop: fix vanished compression property after failed set + - riscv: Fix syscall_get_arguments() and syscall_set_arguments() + - block: Revert v5.0 blk_mq_request_issue_directly() changes + - block: do not leak memory in bio_copy_user_iov() + - block: fix the return errno for direct IO + - genirq: Respect IRQCHIP_SKIP_SET_WAKE in irq_chip_set_wake_parent() + - genirq: Initialize request_mutex if CONFIG_SPARSE_IRQ=n + - virtio: Honour 'may_reduce_num' in vring_create_virtqueue + - ARM: OMAP1: ams-delta: Fix broken GPIO ID allocation + - ARM: dts: rockchip: fix rk3288 cpu opp node reference + - ARM: dts: am335x-evmsk: Correct the regulators for the audio codec + - ARM: dts: am335x-evm: Correct the regulators for the audio codec + - ARM: dts: rockchip: Fix SD card detection on rk3288-tinker + - ARM: dts: at91: Fix typo in ISC_D0 on PC9 + - arm64: futex: Fix FUTEX_WAKE_OP atomic ops with non-zero result value + - arm64: dts: rockchip: Fix vcc_host1_5v GPIO polarity on rk3328-rock64 + - arm64: dts: rockchip: fix rk3328 rgmii high tx error rate + - arm64: backtrace: Don't bother trying to unwind the userspace stack + - IB/mlx5: Reset access mask when looping inside page fault handler + - xen: Prevent buffer overflow in privcmd ioctl + - sched/fair: Do not re-read ->h_load_next during hierarchical load + calculation + - xtensa: fix return_address + - csky: Fix syscall_get_arguments() and syscall_set_arguments() + - x86/asm: Remove dead __GNUC__ conditionals + - x86/asm: Use stricter assembly constraints in bitops + - x86/perf/amd: Resolve race condition when disabling PMC + - x86/perf/amd: Resolve NMI latency issues for active PMCs + - x86/perf/amd: Remove need to check "running" bit in NMI handler + - PCI: Add function 1 DMA alias quirk for Marvell 9170 SATA controller + - PCI: pciehp: Ignore Link State Changes after powering off a slot + - xprtrdma: Fix helper that drains the transport + - powerpc/64s/radix: Fix radix segment exception handling + - dm integrity: change memcmp to strncmp in dm_integrity_ctr + - dm: revert 8f50e358153d ("dm: limit the max bio size as BIO_MAX_PAGES * + PAGE_SIZE") + - dm table: propagate BDI_CAP_STABLE_WRITES to fix sporadic checksum errors + - dm: disable DISCARD if the underlying storage no longer supports it + - dm integrity: fix deadlock with overlapping I/O + - drm/virtio: do NOT reuse resource ids + - Linux 5.0.8 + * Disco update: 5.0.7 upstream stable release (LP: #1828410) + - ext4: cleanup bh release code in ext4_ind_remove_space() + - CIFS: fix POSIX lock leak and invalid ptr deref + - nvme-fc: fix numa_node when dev is null + - nvme-loop: init nvmet_ctrl fatal_err_work when allocate + - h8300: use cc-cross-prefix instead of hardcoding h8300-unknown-linux- + - f2fs: fix to adapt small inline xattr space in __find_inline_xattr() + - f2fs: fix to avoid deadlock in f2fs_read_inline_dir() + - tracing: kdb: Fix ftdump to not sleep + - net/mlx5e: Fix access to non-existing receive queue + - net/mlx5: Avoid panic when setting vport rate + - net/mlx5: Avoid panic when setting vport mac, getting vport config + - xsk: fix to reject invalid flags in xsk_bind + - clk: ti: clkctrl: Fix clkdm_name regression for TI_CLK_CLKCTRL_COMPAT + - gpio: gpio-omap: fix level interrupt idling + - include/linux/relay.h: fix percpu annotation in struct rchan + - sysctl: handle overflow for file-max + - net: stmmac: Avoid sometimes uninitialized Clang warnings + - enic: fix build warning without CONFIG_CPUMASK_OFFSTACK + - libbpf: force fixdep compilation at the start of the build + - iio: adc: fix warning in Qualcomm PM8xxx HK/XOADC driver + - x86/hyperv: Fix kernel panic when kexec on HyperV + - perf c2c: Fix c2c report for empty numa node + - mm/sparse: fix a bad comparison + - mm/cma.c: cma_declare_contiguous: correct err handling + - mm/page_ext.c: fix an imbalance with kmemleak + - mm, swap: bounds check swap_info array accesses to avoid NULL derefs + - docs/core-api/mm: fix user memory accessors formatting + - mm,oom: don't kill global init via memory.oom.group + - memcg: killed threads should not invoke memcg OOM killer + - mm, mempolicy: fix uninit memory access + - mm/vmalloc.c: fix kernel BUG at mm/vmalloc.c:512! + - mm/slab.c: kmemleak no scan alien caches + - ocfs2: fix a panic problem caused by o2cb_ctl + - f2fs: do not use mutex lock in atomic context + - f2fs: fix to data block override node segment by mistake + - fs/file.c: initialize init_files.resize_wait + - page_poison: play nicely with KASAN + - kasan: fix kasan_check_read/write definitions + - cifs: use correct format characters + - dm thin: add sanity checks to thin-pool and external snapshot creation + - f2fs: fix to check inline_xattr_size boundary correctly + - cifs: Accept validate negotiate if server return NT_STATUS_NOT_SUPPORTED + - cifs: Fix NULL pointer dereference of devname + - perf beauty msg_flags: Add missing %s lost when adding prefix suppression + logic + - netfilter: nf_tables: check the result of dereferencing base_chain->stats + - PCI: mediatek: Fix memory mapped IO range size computation + - netfilter: conntrack: tcp: only close if RST matches exact sequence + - iommu/vt-d: Disable ATS support on untrusted devices + - jbd2: fix invalid descriptor block checksum + - ext4: fix bigalloc cluster freeing when hole punching under load + - fs: fix guard_bio_eod to check for real EOD errors + - tools lib traceevent: Fix buffer overflow in arg_eval + - mm/resource: Return real error codes from walk failures + - PCI/PME: Fix hotplug/sysfs remove deadlock in pcie_pme_remove() + - wil6210: check null pointer in _wil_cfg80211_merge_extra_ies + - mt76: fix a leaked reference by adding a missing of_node_put + - ath10k: Fix the wrong updation of BW in tx_stats debugfs entry + - lockdep/lib/tests: Fix run_tests.sh + - crypto: crypto4xx - add missing of_node_put after of_device_is_available + - crypto: cavium/zip - fix collision with generic cra_driver_name + - tools/bpf: selftests: add map lookup to test_map_in_map bpf prog + - usb: chipidea: Grab the (legacy) USB PHY by phandle first + - powerpc/powernv/ioda: Fix locked_vm counting for memory used by IOMMU tables + - scsi: core: replace GFP_ATOMIC with GFP_KERNEL in scsi_scan.c + - kbuild: invoke syncconfig if include/config/auto.conf.cmd is missing + - kbuild: make -r/-R effective in top Makefile for old Make versions + - btrfs: save drop_progress if we drop refs at all + - drm/amd/display: Fix reference counting for struct dc_sink. + - ath10k: don't report unset rssi values to mac80211 + - powerpc/xmon: Fix opcode being uninitialized in print_insn_powerpc + - coresight: etm4x: Add support to enable ETMv4.2 + - serial: 8250_pxa: honor the port number from devicetree + - ARM: 8840/1: use a raw_spinlock_t in unwind + - ARM: 8845/1: use unified assembler in c files + - iommu/io-pgtable-arm-v7s: Only kmemleak_ignore L2 tables + - powerpc/hugetlb: Handle mmap_min_addr correctly in get_unmapped_area + callback + - net: dsa: mv88e6xxx: Default CMODE to 1000BaseX only on 6390X + - ice: fix ice_remove_rule_internal vsi_list handling + - perf script: Handle missing fields with -F +.. + - btrfs: qgroup: Make qgroup async transaction commit more aggressive + - btrfs: don't enospc all tickets on flush failure + - mmc: omap: fix the maximum timeout setting + - net: dsa: mv88e6xxx: Add lockdep classes to fix false positive splat + - veth: Fix -Wformat-truncation + - e1000e: Fix -Wformat-truncation warnings + - mlxsw: spectrum: Avoid -Wformat-truncation warnings + - i2c: Allow recovery of the initial IRQ by an I2C client device. + - platform/x86: ideapad-laptop: Fix no_hw_rfkill_list for Lenovo RESCUER + R720-15IKBN + - platform/mellanox: mlxreg-hotplug: Fix KASAN warning + - loop: set GENHD_FL_NO_PART_SCAN after blkdev_reread_part() + - i2c: designware: Do not allow i2c_dw_xfer() calls while suspended + - IB/mlx4: Increase the timeout for CM cache + - clk: fractional-divider: check parent rate only if flag is set + - perf annotate: Fix getting source line failure + - powerpc/44x: Force PCI on for CURRITUCK + - ASoC: qcom: Fix of-node refcount unbalance in qcom_snd_parse_of() + - cpufreq: acpi-cpufreq: Report if CPU doesn't support boost technologies + - efi: cper: Fix possible out-of-bounds access + - s390/ism: ignore some errors during deregistration + - scsi: megaraid_sas: return error when create DMA pool failed + - scsi: fcoe: make use of fip_mode enum complete + - drm/amd/display: Clear stream->mode_changed after commit + - perf test: Fix failure of 'evsel-tp-sched' test on s390 + - mwifiex: don't advertise IBSS features without FW support + - perf report: Don't shadow inlined symbol with different addr range + - SoC: imx-sgtl5000: add missing put_device() + - media: ov7740: fix runtime pm initialization + - media: sh_veu: Correct return type for mem2mem buffer helpers + - media: s5p-jpeg: Correct return type for mem2mem buffer helpers + - media: rockchip/rga: Correct return type for mem2mem buffer helpers + - media: s5p-g2d: Correct return type for mem2mem buffer helpers + - media: mx2_emmaprp: Correct return type for mem2mem buffer helpers + - media: mtk-jpeg: Correct return type for mem2mem buffer helpers + - media: rockchip/vpu: Correct return type for mem2mem buffer helpers + - mt76: usb: do not run mt76u_queues_deinit twice + - gpio: of: Apply regulator-gpio quirk only to enable-gpios + - xen/gntdev: Do not destroy context while dma-bufs are in use + - vfs: fix preadv64v2 and pwritev64v2 compat syscalls with offset == -1 + - HID: intel-ish-hid: avoid binding wrong ishtp_cl_device + - cgroup, rstat: Don't flush subtree root unless necessary + - efi: Fix build error due to enum collision between efi.h and ima.h + - drm/sched: Fix entities with 0 rqs. + - regulator: core: Take lock before applying system load + - jbd2: fix race when writing superblock + - leds: lp55xx: fix null deref on firmware load failure + - tools build: Add -lrt to FEATURE_CHECK_LDFLAGS-libaio + - tools build: Add test-reallocarray.c to test-all.c to fix the build + - perf beauty waitid options: Fix up prefix showing logic + - perf trace: Check if the 'fd' is negative when mapping it to pathname + - perf report: Add s390 diagnosic sampling descriptor size + - perf coresight: Do not test for libopencsd by default + - iwlwifi: pcie: fix emergency path + - ACPI / video: Refactor and fix dmi_is_desktop() + - selftests: ir: fix warning: "%s" directive output may be truncated ’ + directive output may be truncated + - selftests: skip seccomp get_metadata test if not real root + - kprobes: Prohibit probing on bsearch() + - kprobes: Prohibit probing on RCU debug routine + - netfilter: conntrack: fix cloned unconfirmed skb->_nfct race in + __nf_conntrack_confirm + - ARM: 8833/1: Ensure that NEON code always compiles with Clang + - ARM: dts: meson8b: fix the Ethernet data line signals in eth_rgmii_pins + - ALSA: PCM: check if ops are defined before suspending PCM + - ath10k: fix shadow register implementation for WCN3990 + - usb: f_fs: Avoid crash due to out-of-scope stack ptr access + - sched/topology: Fix percpu data types in struct sd_data & struct s_data + - bcache: fix input overflow to cache set sysfs file io_error_halflife + - bcache: fix input overflow to sequential_cutoff + - bcache: fix potential div-zero error of writeback_rate_i_term_inverse + - bcache: improve sysfs_strtoul_clamp() + - genirq: Avoid summation loops for /proc/stat + - net: marvell: mvpp2: fix stuck in-band SGMII negotiation + - iw_cxgb4: fix srqidx leak during connection abort + - net: phy: consider latched link-down status in polling mode + - fbdev: fbmem: fix memory access if logo is bigger than the screen + - cdrom: Fix race condition in cdrom_sysctl_register + - drm: rcar-du: add missing of_node_put + - drm/amd/display: Don't re-program planes for DPMS changes + - bpf: test_maps: fix possible out of bound access warning + - x86/kexec: Fill in acpi_rsdp_addr from the first kernel + - powerpc/ptrace: Mitigate potential Spectre v1 + - drm/amd/display: Disconnect mpcc when changing tg + - perf/aux: Make perf_event accessible to setup_aux() + - e1000e: fix cyclic resets at link up with active tx + - e1000e: Exclude device from suspend direct complete optimization + - platform/x86: intel_pmc_core: Fix PCH IP sts reading + - i2c: of: Try to find an I2C adapter matching the parent + - staging: spi: mt7621: Add return code check on device_reset() + - iwlwifi: mvm: fix RFH config command with >=10 CPUs + - ASoC: fsl-asoc-card: fix object reference leaks in fsl_asoc_card_probe + - sched/debug: Initialize sd_sysctl_cpus if !CONFIG_CPUMASK_OFFSTACK + - efi/memattr: Don't bail on zero VA if it equals the region's PA + - sched/core: Use READ_ONCE()/WRITE_ONCE() in + move_queued_task()/task_rq_lock() + - drm/vkms: Bugfix racing hrtimer vblank handle + - drm/vkms: Bugfix extra vblank frame + - ARM: dts: lpc32xx: Remove leading 0x and 0s from bindings notation + - soc: qcom: gsbi: Fix error handling in gsbi_probe() + - drm/msm/dpu: Convert to a chained irq chip + - mt7601u: bump supported EEPROM version + - ARM: 8830/1: NOMMU: Toggle only bits in EXC_RETURN we are really care of + - ARM: avoid Cortex-A9 livelock on tight dmb loops + - block, bfq: fix in-service-queue check for queue merging + - block, bfq: fix queue removal from weights tree + - bpf: fix missing prototype warnings + - selftests/bpf: skip verifier tests for unsupported program types + - powerpc/64s: Clear on-stack exception marker upon exception return + - cgroup/pids: turn cgroup_subsys->free() into cgroup_subsys->release() to fix + the accounting + - backlight: pwm_bl: Use gpiod_get_value_cansleep() to get initial state + - tty: increase the default flip buffer limit to 2*640K + - powerpc/pseries: Perform full re-add of CPU for topology update post- + migration + - drm/amd/display: Enable vblank interrupt during CRC capture + - ALSA: dice: add support for Solid State Logic Duende Classic/Mini + - regulator: mcp16502: Include linux/gpio/consumer.h to fix build error + - usb: dwc3: gadget: Fix OTG events when gadget driver isn't loaded + - platform/x86: intel-hid: Missing power button release on some Dell models + - perf trace: Fixup etcsnoop example + - perf script python: Use PyBytes for attr in trace-event-python + - perf script python: Add trace_context extension module to sys.modules + - media: mt9m111: set initial frame size other than 0x0 + - hwrng: virtio - Avoid repeated init of completion + - soc/tegra: fuse: Fix illegal free of IO base address + - selftests/bpf: suppress readelf stderr when probing for BTF support + - HID: intel-ish: ipc: handle PIMR before ish_wakeup also clear PISR + busy_clear bit + - f2fs: UBSAN: set boolean value iostat_enable correctly + - f2fs: fix to initialize variable to avoid UBSAN/smatch warning + - hpet: Fix missing '=' character in the __setup() code of hpet_mmap_enable + - pinctrl: meson: fix G12A ao pull registers base address + - pinctrl: sh-pfc: r8a77990: Fix MOD_SEL bit numbering + - pinctrl: sh-pfc: r8a77995: Fix MOD_SEL bit numbering + - cpu/hotplug: Mute hotplug lockdep during init + - dmaengine: imx-dma: fix warning comparison of distinct pointer types + - dmaengine: qcom_hidma: assign channel cookie correctly + - dmaengine: qcom_hidma: initialize tx flags in hidma_prep_dma_* + - netfilter: physdev: relax br_netfilter dependency + - media: rcar-vin: Allow independent VIN link enablement + - media: s5p-jpeg: Check for fmt_ver_flag when doing fmt enumeration + - PCI: pciehp: Assign ctrl->slot_ctrl before writing it to hardware + - audit: hand taken context to audit_kill_trees for syscall logging + - regulator: act8865: Fix act8600_sudcdc_voltage_ranges setting + - pinctrl: meson: meson8b: add the eth_rxd2 and eth_rxd3 pins + - drm: Auto-set allow_fb_modifiers when given modifiers at plane init + - drm/nouveau: Stop using drm_crtc_force_disable + - x86/build: Specify elf_i386 linker emulation explicitly for i386 objects + - selinux: do not override context on context mounts + - brcmfmac: Use firmware_request_nowarn for the clm_blob + - wlcore: Fix memory leak in case wl12xx_fetch_firmware failure + - x86/build: Mark per-CPU symbols as absolute explicitly for LLD + - drm/fb-helper: fix leaks in error path of drm_fb_helper_fbdev_setup + - clk: meson: clean-up clock registration + - ARM: shmobile: Fix R-Car Gen2 regulator quirk + - clk: rockchip: fix frac settings of GPLL clock for rk3328 + - dmaengine: tegra: avoid overflow of byte tracking + - staging: iio: adt7316: fix dac_bits assignment + - Input: soc_button_array - fix mapping of the 5th GPIO in a PNP0C40 device + - ASoC: simple-card-utils: check "reg" property on + asoc_simple_card_get_dai_id() + - drm: Reorder set_property_atomic to avoid returning with an active ww_ctx + - drm/dp/mst: Configure no_stop_bit correctly for remote i2c xfers + - net: stmmac: Avoid one more sometimes uninitialized Clang warning + - appletalk: Fix compile regression + - gpio: of: Restrict enable-gpio quirk to regulator-gpio + - ACPI / video: Extend chassis-type detection with a "Lunch Box" check + - bcache: fix potential div-zero error of writeback_rate_p_term_inverse + - kbuild: add workaround for Debian make-kpkg + - kbuild: skip sub-make for in-tree build with GNU Make 4.x + - Linux 5.0.7 + * enabling ftrace on Hi1620 CS causes an Oops (LP: #1822871) + - arm64/ftrace: fix inadvertent BUG() in trampoline check + - arm64/module: ftrace: deal with place relative nature of PLTs + * The noise keeps occurring when Headset is plugged in on a Dell machine + (LP: #1827972) + - ALSA: hda/realtek - Fixed Dell AIO speaker noise + * CONFIG_LOG_BUF_SHIFT set to 14 is too low on arm64 (LP: #1824864) + - [Config] CONFIG_LOG_BUF_SHIFT=18 on all 64bit arches + * There are 4 HDMI/Displayport audio output listed in sound setting without + attach any HDMI/DP monitor (LP: #1827967) + - ALSA: hda/hdmi - Read the pin sense from register when repolling + - ALSA: hda/hdmi - Consider eld_valid when reporting jack event + * Headphone jack switch sense is inverted: plugging in headphones disables + headphone output (LP: #1824259) + - ASoC: rt5645: Headphone Jack sense inverts on the LattePanda board + * ratelimit cma_alloc messages (LP: #1828092) + - SAUCE: cma: ratelimit cma_alloc error messages + * linux-buildinfo: pull out ABI information into its own package + (LP: #1806380) + - [Packaging] autoreconstruct -- base tag is always primary mainline version + * CTAUTO:DevOps:860.50:devops4fp1:Error occurred during LINUX Dmesg error + Checking for all LINUX clients for devops4p10 (LP: #1766201) + - SAUCE: integrity: downgrade error to warning + * False positive test result in run_netsocktests from net in + ubuntu_kernel_selftest (LP: #1825777) + - selftests/net: correct the return value for run_netsocktests + + -- Andrea Righi Thu, 16 May 2019 15:27:23 +0200 + +linux-azure (5.0.0-1006.6) disco; urgency=medium + + + [ Ubuntu: 5.0.0-15.16 ] + + * CVE-2019-11683 + - udp: fix GRO reception in case of length mismatch + - udp: fix GRO packet of death + * CVE-2018-12126 // CVE-2018-12127 // CVE-2018-12130 + - x86/msr-index: Cleanup bit defines + - x86/speculation: Consolidate CPU whitelists + - x86/speculation/mds: Add basic bug infrastructure for MDS + - x86/speculation/mds: Add BUG_MSBDS_ONLY + - x86/kvm: Expose X86_FEATURE_MD_CLEAR to guests + - x86/speculation/mds: Add mds_clear_cpu_buffers() + - x86/speculation/mds: Clear CPU buffers on exit to user + - x86/kvm/vmx: Add MDS protection when L1D Flush is not active + - x86/speculation/mds: Conditionally clear CPU buffers on idle entry + - x86/speculation/mds: Add mitigation control for MDS + - x86/speculation/mds: Add sysfs reporting for MDS + - x86/speculation/mds: Add mitigation mode VMWERV + - Documentation: Move L1TF to separate directory + - Documentation: Add MDS vulnerability documentation + - x86/speculation/mds: Add mds=full,nosmt cmdline option + - x86/speculation: Move arch_smt_update() call to after mitigation decisions + - x86/speculation/mds: Add SMT warning message + - x86/speculation/mds: Fix comment + - x86/speculation/mds: Print SMT vulnerable on MSBDS with mitigations off + - x86/speculation/mds: Add 'mitigations=' support for MDS + * CVE-2017-5715 // CVE-2017-5753 + - s390/speculation: Support 'mitigations=' cmdline option + * CVE-2017-5715 // CVE-2017-5753 // CVE-2017-5754 // CVE-2018-3639 + - powerpc/speculation: Support 'mitigations=' cmdline option + * CVE-2017-5715 // CVE-2017-5754 // CVE-2018-3620 // CVE-2018-3639 // + CVE-2018-3646 + - cpu/speculation: Add 'mitigations=' cmdline option + - x86/speculation: Support 'mitigations=' cmdline option + * Packaging resync (LP: #1786013) + - [Packaging] resync git-ubuntu-log + + -- Stefan Bader Tue, 07 May 2019 11:45:56 +0200 + +linux-azure (5.0.0-1005.5) disco; urgency=medium + + * linux-azure: 5.0.0-1005.5 -proposed tracker (LP: #1826143) + + [ Ubuntu: 5.0.0-14.15 ] + + * linux: 5.0.0-14.15 -proposed tracker (LP: #1826150) + * [SRU] Please sync vbox modules from virtualbox 6.0.6 on next kernel update + (LP: #1825210) + - vbox-update: updates for renamed makefiles + - ubuntu: vbox -- update to 6.0.6-dfsg-1 + * Intel I210 Ethernet card not working after hotplug [8086:1533] + (LP: #1818490) + - igb: Fix WARN_ONCE on runtime suspend + * [regression][snd_hda_codec_realtek] repeating crackling noise after 19.04 + upgrade (LP: #1821663) + - ALSA: hda - Add two more machines to the power_save_blacklist + * CVE-2019-9500 + - brcmfmac: assure SSID length from firmware is limited + * CVE-2019-9503 + - brcmfmac: add subtype check for event handling in data path + * CVE-2019-3882 + - vfio/type1: Limit DMA mappings per container + * autofs kernel module missing (LP: #1824333) + - [Config] Update autofs4 path in inclusion list + * The Realtek card reader does not enter PCIe 1.1/1.2 (LP: #1825487) + - misc: rtsx: Enable OCP for rts522a rts524a rts525a rts5260 + - SAUCE: misc: rtsx: Fixed rts5260 power saving parameter and sd glitch + * headset-mic doesn't work on two Dell laptops. (LP: #1825272) + - ALSA: hda/realtek - add two more pin configuration sets to quirk table + * CVE-2019-3887 + - KVM: x86: nVMX: close leak of L0's x2APIC MSRs (CVE-2019-3887) + - KVM: x86: nVMX: fix x2APIC VTPR read intercept + * CVE-2019-3874 + - sctp: implement memory accounting on tx path + - sctp: implement memory accounting on rx path + * CVE-2019-1999 + - binder: fix race between munmap() and direct reclaim + * apparmor does not start in Disco LXD containers (LP: #1824812) + - SAUCE: shiftfs: use separate llseek method for directories + + -- Stefan Bader Thu, 25 Apr 2019 17:00:04 +0200 + +linux-azure (5.0.0-1004.4) disco; urgency=medium + + * linux-azure: 5.0.0-1004.4 -proposed tracker (LP: #1824834) + + [ Ubuntu: 5.0.0-13.14 ] + + * linux: 5.0.0-13.14 -proposed tracker (LP: #1824819) + * Display only has 640x480 (LP: #1824677) + - Revert "UBUNTU: SAUCE: drm/nouveau: Disable nouveau driver by default" + * shiftfs: use after free when checking mount options (LP: #1824735) + - SAUCE: shiftfs: prevent use-after-free when verifying mount options + + [ Ubuntu: 5.0.0-12.13 ] + + * linux: 5.0.0-12.13 -proposed tracker (LP: #1824726) + * Linux 5.0 black screen on boot, display flickers (i915 regression with + certain laptop panels) (LP: #1824216) + - drm/i915/dp: revert back to max link rate and lane count on eDP + * kernel BUG at fs/attr.c:287 when using shiftfs (LP: #1824717) + - SAUCE: shiftfs: fix passing of attrs to underaly for setattr + + -- Seth Forshee Mon, 15 Apr 2019 10:32:08 -0500 + +linux-azure (5.0.0-1003.3) disco; urgency=medium + + * linux-azure: 5.0.0-1003.3 -proposed tracker (LP: #1824376) + + [ Ubuntu: 5.0.0-11.12 ] + + * linux: 5.0.0-11.12 -proposed tracker (LP: #1824383) + * hns3: PPU_PF_ABNORMAL_INT_ST over_8bd_no_fe found [error status=0x1] + (LP: #1824194) + - net: hns3: fix for not calculating tx bd num correctly + * disco: unable to use iptables/enable ufw under -virtual kernel + (LP: #1823862) + - [Packaging] add bpfilter to linux-modules + * Make shiftfs a module rather than built-in (LP: #1824354) + - [Config] CONFIG_SHIFT_FS=m + * shiftfs: chown sets untranslated ids in lower fs (LP: #1824350) + - SAUCE: shiftfs: use translated ids when chaning lower fs attrs + * [Hyper-V] KVP daemon fails to start on first boot of disco VM (LP: #1820063) + - [Packaging] bind hv_kvp_daemon startup to hv_kvp device + + -- Seth Forshee Thu, 11 Apr 2019 12:28:21 -0500 + +linux-azure (5.0.0-1002.2) disco; urgency=medium + + * linux-azure: 5.0.0-1002.2 -proposed tracker (LP: #1823220) + + * Set CONFIG_RANDOM_TRUST_CPU=y (LP: #1823754) + - [Config] CONFIG_RANDOM_TRUST_CPU=y + + * PAGE_POISONING / PAGE_POISONING_NO_SANITY / PAGE_POISONING_ZERO option was + expected to be set in C-KVM (LP: #1812624) + - [Config]: enable PAGE_POISONING, PAGE_POISONING_NO_SANITY, + PAGE_POISONING_ZERO + + * Add CONFIG_NO_HZ_FULL=y to linux-azure kernels (LP: #1818138) + - [Config] linux-azure: CONFIG_NO_HZ_FULL=y + + * Miscellaneous Ubuntu changes + - [Config] update configs after rebase to 5.0.0-10.11 + - Revert "UBUNTU: [Config] azure: CONFIG_HOTPLUG_CPU=n" + + [ Ubuntu: 5.0.0-10.11 ] + + * linux: 5.0.0-10.11 -proposed tracker (LP: #1823936) + * Apparmor enforcement failure in lxc selftests (LP: #1823379) + - SAUCE: apparmor: Restore Y/N in /sys for apparmor's "enabled" + * systemd cause kernel trace "BUG: unable to handle kernel paging request at + 6db23a14" on Cosmic i386 (LP: #1813244) + - openvswitch: fix flow actions reallocation + + [ Ubuntu: 5.0.0-9.10 ] + + * linux: 5.0.0-9.10 -proposed tracker (LP: #1823228) + * Packaging resync (LP: #1786013) + - [Packaging] resync git-ubuntu-log + - [Packaging] update helper scripts + - [Packaging] resync retpoline extraction + * Huawei Hi1822 NIC has poor performance (LP: #1820187) + - net-next/hinic: replace disable_irq_nosync/enable_irq + * Add uid shifting overlay filesystem (shiftfs) (LP: #1823186) + - shiftfs: uid/gid shifting bind mount + - shiftfs: rework and extend + - shiftfs: support some btrfs ioctls + - [Config] enable shiftfs + * Cannot boot or install - have to use nomodeset (LP: #1821820) + - Revert "drm/i915/fbdev: Actually configure untiled displays" + * Disco update: v5.0.6 upstream stable release (LP: #1823060) + - netfilter: nf_tables: fix set double-free in abort path + - dccp: do not use ipv6 header for ipv4 flow + - genetlink: Fix a memory leak on error path + - gtp: change NET_UDP_TUNNEL dependency to select + - ipv6: make ip6_create_rt_rcu return ip6_null_entry instead of NULL + - mac8390: Fix mmio access size probe + - mISDN: hfcpci: Test both vendor & device ID for Digium HFC4S + - net: aquantia: fix rx checksum offload for UDP/TCP over IPv6 + - net: datagram: fix unbounded loop in __skb_try_recv_datagram() + - net/packet: Set __GFP_NOWARN upon allocation in alloc_pg_vec + - net: phy: meson-gxl: fix interrupt support + - net: rose: fix a possible stack overflow + - net: stmmac: fix memory corruption with large MTUs + - net-sysfs: call dev_hold if kobject_init_and_add success + - net: usb: aqc111: Extend HWID table by QNAP device + - packets: Always register packet sk in the same order + - rhashtable: Still do rehash when we get EEXIST + - sctp: get sctphdr by offset in sctp_compute_cksum + - sctp: use memdup_user instead of vmemdup_user + - tcp: do not use ipv6 header for ipv4 flow + - tipc: allow service ranges to be connect()'ed on RDM/DGRAM + - tipc: change to check tipc_own_id to return in tipc_net_stop + - tipc: fix cancellation of topology subscriptions + - tun: properly test for IFF_UP + - vrf: prevent adding upper devices + - vxlan: Don't call gro_cells_destroy() before device is unregistered + - thunderx: enable page recycling for non-XDP case + - thunderx: eliminate extra calls to put_page() for pages held for recycling + - net: dsa: mv88e6xxx: fix few issues in mv88e6390x_port_set_cmode + - net: mii: Fix PAUSE cap advertisement from linkmode_adv_to_lcl_adv_t() + helper + - net: phy: don't clear BMCR in genphy_soft_reset + - r8169: fix cable re-plugging issue + - ila: Fix rhashtable walker list corruption + - tun: add a missing rcu_read_unlock() in error path + - powerpc/fsl: Fix the flush of branch predictor. + - Btrfs: fix incorrect file size after shrinking truncate and fsync + - btrfs: remove WARN_ON in log_dir_items + - btrfs: don't report readahead errors and don't update statistics + - btrfs: Fix bound checking in qgroup_trace_new_subtree_blocks + - btrfs: Avoid possible qgroup_rsv_size overflow in + btrfs_calculate_inode_block_rsv_size + - Btrfs: fix assertion failure on fsync with NO_HOLES enabled + - locks: wake any locks blocked on request before deadlock check + - tracing: initialize variable in create_dyn_event() + - ARM: imx6q: cpuidle: fix bug that CPU might not wake up at expected time + - powerpc: bpf: Fix generation of load/store DW instructions + - vfio: ccw: only free cp on final interrupt + - NFS: Fix nfs4_lock_state refcounting in nfs4_alloc_{lock,unlock}data() + - NFS: fix mount/umount race in nlmclnt. + - NFSv4.1 don't free interrupted slot on open + - net: dsa: qca8k: remove leftover phy accessors + - ALSA: rawmidi: Fix potential Spectre v1 vulnerability + - ALSA: seq: oss: Fix Spectre v1 vulnerability + - ALSA: pcm: Fix possible OOB access in PCM oss plugins + - ALSA: pcm: Don't suspend stream in unrecoverable PCM state + - ALSA: hda/realtek - Fixed Headset Mic JD not stable + - ALSA: hda/realtek: merge alc_fixup_headset_jack to alc295_fixup_chromebook + - ALSA: hda/realtek - Add support headset mode for DELL WYSE AIO + - ALSA: hda/realtek - Add support headset mode for New DELL WYSE NB + - ALSA: hda/realtek: Enable headset MIC of Acer AIO with ALC286 + - ALSA: hda/realtek: Enable headset MIC of Acer Aspire Z24-890 with ALC286 + - ALSA: hda/realtek - Add support for Acer Aspire E5-523G/ES1-432 headset mic + - ALSA: hda/realtek: Enable ASUS X441MB and X705FD headset MIC with ALC256 + - ALSA: hda/realtek: Enable headset mic of ASUS P5440FF with ALC256 + - ALSA: hda/realtek: Enable headset MIC of ASUS X430UN and X512DK with ALC256 + - ALSA: hda/realtek - Fix speakers on Acer Predator Helios 500 Ryzen laptops + - kbuild: modversions: Fix relative CRC byte order interpretation + - fs/open.c: allow opening only regular files during execve() + - ocfs2: fix inode bh swapping mixup in ocfs2_reflink_inodes_lock + - scsi: sd: Fix a race between closing an sd device and sd I/O + - scsi: sd: Quiesce warning if device does not report optimal I/O size + - scsi: zfcp: fix rport unblock if deleted SCSI devices on Scsi_Host + - scsi: zfcp: fix scsi_eh host reset with port_forced ERP for non-NPIV FCP + devices + - drm/rockchip: vop: reset scale mode when win is disabled + - tty/serial: atmel: Add is_half_duplex helper + - tty/serial: atmel: RS485 HD w/DMA: enable RX after TX is stopped + - tty: mxs-auart: fix a potential NULL pointer dereference + - tty: atmel_serial: fix a potential NULL pointer dereference + - tty: serial: qcom_geni_serial: Initialize baud in qcom_geni_console_setup + - staging: comedi: ni_mio_common: Fix divide-by-zero for DIO cmdtest + - staging: olpc_dcon_xo_1: add missing 'const' qualifier + - staging: speakup_soft: Fix alternate speech with other synths + - staging: vt6655: Remove vif check from vnt_interrupt + - staging: vt6655: Fix interrupt race condition on device start up. + - staging: erofs: fix to handle error path of erofs_vmap() + - staging: erofs: fix error handling when failed to read compresssed data + - staging: erofs: keep corrupted fs from crashing kernel in erofs_readdir() + - serial: max310x: Fix to avoid potential NULL pointer dereference + - serial: mvebu-uart: Fix to avoid a potential NULL pointer dereference + - serial: sh-sci: Fix setting SCSCR_TIE while transferring data + - USB: serial: cp210x: add new device id + - USB: serial: ftdi_sio: add additional NovaTech products + - USB: serial: mos7720: fix mos_parport refcount imbalance on error path + - USB: serial: option: set driver_info for SIM5218 and compatibles + - USB: serial: option: add support for Quectel EM12 + - USB: serial: option: add Olicard 600 + - ACPI / CPPC: Fix guaranteed performance handling + - Disable kgdboc failed by echo space to /sys/module/kgdboc/parameters/kgdboc + - fs/proc/proc_sysctl.c: fix NULL pointer dereference in put_links + - drivers/block/zram/zram_drv.c: fix idle/writeback string compare + - blk-mq: fix sbitmap ws_active for shared tags + - cpufreq: intel_pstate: Also use CPPC nominal_perf for base_frequency + - cpufreq: scpi: Fix use after free + - drm/vgem: fix use-after-free when drm_gem_handle_create() fails + - drm/vkms: fix use-after-free when drm_gem_handle_create() fails + - drm/i915: Mark AML 0x87CA as ULX + - drm/i915/gvt: Fix MI_FLUSH_DW parsing with correct index check + - drm/i915/icl: Fix the TRANS_DDI_FUNC_CTL2 bitfield macro + - gpio: exar: add a check for the return value of ida_simple_get fails + - gpio: adnp: Fix testing wrong value in adnp_gpio_direction_input + - phy: sun4i-usb: Support set_mode to USB_HOST for non-OTG PHYs + - usb: mtu3: fix EXTCON dependency + - USB: gadget: f_hid: fix deadlock in f_hidg_write() + - usb: common: Consider only available nodes for dr_mode + - mm/memory.c: fix modifying of page protection by insert_pfn() + - usb: host: xhci-rcar: Add XHCI_TRUST_TX_LENGTH quirk + - xhci: Fix port resume done detection for SS ports with LPM enabled + - usb: xhci: dbc: Don't free all memory with spinlock held + - xhci: Don't let USB3 ports stuck in polling state prevent suspend + - usb: cdc-acm: fix race during wakeup blocking TX traffic + - usb: typec: tcpm: Try PD-2.0 if sink does not respond to 3.0 source-caps + - usb: typec: Fix unchecked return value + - mm/hotplug: fix offline undo_isolate_page_range() + - mm: add support for kmem caches in DMA32 zone + - iommu/io-pgtable-arm-v7s: request DMA32 memory, and improve debugging + - mm: mempolicy: make mbind() return -EIO when MPOL_MF_STRICT is specified + - mm/debug.c: fix __dump_page when mapping->host is not set + - mm/memory_hotplug.c: fix notification in offline error path + - mm/page_isolation.c: fix a wrong flag in set_migratetype_isolate() + - mm/migrate.c: add missing flush_dcache_page for non-mapped page migrate + - perf pmu: Fix parser error for uncore event alias + - perf intel-pt: Fix TSC slip + - objtool: Query pkg-config for libelf location + - powerpc/pseries/energy: Use OF accessor functions to read ibm,drc-indexes + - powerpc/64: Fix memcmp reading past the end of src/dest + - powerpc/pseries/mce: Fix misleading print for TLB mutlihit + - watchdog: Respect watchdog cpumask on CPU hotplug + - cpu/hotplug: Prevent crash when CPU bringup fails on CONFIG_HOTPLUG_CPU=n + - x86/smp: Enforce CONFIG_HOTPLUG_CPU when SMP=y + - KVM: Reject device ioctls from processes other than the VM's creator + - KVM: x86: Emulate MSR_IA32_ARCH_CAPABILITIES on AMD hosts + - KVM: x86: update %rip after emulating IO + - bpf: do not restore dst_reg when cur_state is freed + - mt76x02u: use usb_bulk_msg to upload firmware + - Linux 5.0.6 + * RDMA/hns updates for disco (LP: #1822897) + - RDMA/hns: Fix the bug with updating rq head pointer when flush cqe + - RDMA/hns: Bugfix for the scene without receiver queue + - RDMA/hns: Add constraint on the setting of local ACK timeout + - RDMA/hns: Modify the pbl ba page size for hip08 + - RDMA/hns: RDMA/hns: Assign rq head pointer when enable rq record db + - RDMA/hns: Add the process of AEQ overflow for hip08 + - RDMA/hns: Add SCC context allocation support for hip08 + - RDMA/hns: Add SCC context clr support for hip08 + - RDMA/hns: Add timer allocation support for hip08 + - RDMA/hns: Remove set but not used variable 'rst' + - RDMA/hns: Make some function static + - RDMA/hns: Fix the Oops during rmmod or insmod ko when reset occurs + - RDMA/hns: Fix the chip hanging caused by sending mailbox&CMQ during reset + - RDMA/hns: Fix the chip hanging caused by sending doorbell during reset + - RDMA/hns: Limit minimum ROCE CQ depth to 64 + - RDMA/hns: Fix the state of rereg mr + - RDMA/hns: Set allocated memory to zero for wrid + - RDMA/hns: Delete useful prints for aeq subtype event + - RDMA/hns: Configure capacity of hns device + - RDMA/hns: Modify qp&cq&pd specification according to UM + - RDMA/hns: Bugfix for set hem of SCC + - RDMA/hns: Use GFP_ATOMIC in hns_roce_v2_modify_qp + * autopkgtests run too often, too much and don't skip enough (LP: #1823056) + - Set +x on rebuild testcase. + - Skip rebuild test, for regression-suite deps. + - Make ubuntu-regression-suite skippable on unbootable kernels. + - make rebuild use skippable error codes when skipping. + - Only run regression-suite, if requested to. + * touchpad not working on lenovo yoga 530 (LP: #1787775) + - Revert "UBUNTU: SAUCE: i2c:amd Depends on ACPI" + - Revert "UBUNTU: SAUCE: i2c:amd move out pointer in union i2c_event_base" + - i2c: add extra check to safe DMA buffer helper + - i2c: Add drivers for the AMD PCIe MP2 I2C controller + - [Config] Update config for AMD MP2 I2C driver + * Detect SMP PHY control command errors (LP: #1822680) + - scsi: libsas: Check SMP PHY control function result + * disable a.out support (LP: #1818552) + - [Config] Disable a.out support + - [Config] remove binfmt_aout from abi for i386 lowlatency + * bionic: fork out linux-snapdragon into its own topic kernel (LP: #1820868) + - [Packaging] remove snapdragon flavour support + - Revert "UBUNTU: SAUCE: (snapdragon) drm/msm/adv7511: wrap hacks under + CONFIG_ADV7511_SNAPDRAGON_HACKS #ifdefs" + - Revert "UBUNTU: SAUCE: (snapdragon) media: ov5645: skip address change if dt + addr == default addr" + - Revert "UBUNTU: SAUCE: (snapdragon) DT: leds: Add Qualcomm Light Pulse + Generator binding" + - Revert "UBUNTU: SAUCE: (snapdragon) MAINTAINERS: Add Qualcomm Camera Control + Interface driver" + - Revert "UBUNTU: SAUCE: (snapdragon) dt-bindings: media: Binding document for + Qualcomm Camera Control Interface driver" + - Revert "UBUNTU: SAUCE: (snapdragon) leds: Add driver for Qualcomm LPG" + - Revert "UBUNTU: SAUCE: (snapdragon) HACK: drm/msm/adv7511: Don't rely on + interrupts for EDID parsing" + - Revert "UBUNTU: SAUCE: (snapdragon) drm/bridge/adv7511: Delay clearing of + HPD interrupt status" + - Revert "UBUNTU: SAUCE: (snapdragon) media: ov5645: Fix I2C address" + - Revert "UBUNTU: SAUCE: (snapdragon) i2c-qcom-cci: Fix I2C address bug" + - Revert "UBUNTU: SAUCE: (snapdragon) i2c-qcom-cci: Fix run queue completion + timeout" + - Revert "UBUNTU: SAUCE: (snapdragon) camss: Do not register if no cameras are + present" + - Revert "UBUNTU: SAUCE: (snapdragon) i2c: Add Qualcomm Camera Control + Interface driver" + - Revert "UBUNTU: SAUCE: (snapdragon) ov5645: I2C address change" + - Revert "UBUNTU: SAUCE: (snapdragon) regulator: smd: Allow + REGULATOR_QCOM_SMD_RPM=m" + - Revert "UBUNTU: SAUCE: (snapdragon) cpufreq: Add apq8016 to cpufreq-dt- + platdev blacklist" + - Revert "UBUNTU: SAUCE: (snapdragon) PM / OPP: Add a helper to get an opp + regulator for device" + - Revert "UBUNTU: SAUCE: (snapdragon) PM / OPP: HACK: Allow to set regulator + without opp_list" + - Revert "UBUNTU: SAUCE: (snapdragon) PM / OPP: Drop RCU usage in + dev_pm_opp_adjust_voltage()" + - Revert "UBUNTU: SAUCE: (snapdragon) PM / OPP: Support adjusting OPP voltages + at runtime" + - Revert "UBUNTU: SAUCE: (snapdragon) regulator: smd: Add floor and corner + operations" + - Revert "UBUNTU: SAUCE: (snapdragon) power: avs: cpr: Register with cpufreq- + dt" + - Revert "UBUNTU: SAUCE: (snapdragon) power: avs: cpr: fix with new + reg_sequence structures" + - Revert "UBUNTU: SAUCE: (snapdragon) power: avs: cpr: Use raw mem access for + qfprom" + - Revert "UBUNTU: SAUCE: (snapdragon) power: avs: Add support for CPR (Core + Power Reduction)" + - Revert "UBUNTU: SAUCE: (snapdragon) HACK: drm/msm/iommu: Remove runtime_put + calls in map/unmap" + - Revert "UBUNTU: SAUCE: (snapdragon) arm64: defconfig: enable LEDS_QCOM_LPG" + - Revert "UBUNTU: SAUCE: (snapdragon) kernel: distro.config: enable 'BBR' TCP + congestion algorithm" + - Revert "UBUNTU: SAUCE: (snapdragon) kernel: distro.config: enable 'fq' and + 'fq_codel' qdiscs" + - Revert "UBUNTU: SAUCE: (snapdragon) kernel: distro.config: enable + 'schedutil' CPUfreq governor" + - Revert "UBUNTU: SAUCE: (snapdragon) kernel: configs: set USB_CONFIG_F_FS in + distro.config" + - Revert "UBUNTU: SAUCE: (snapdragon) arm64: defconfig: enable + CONFIG_USB_CONFIGFS_F_FS by default" + - Revert "UBUNTU: SAUCE: (snapdragon) kernel: configs: add freq stat to sysfs" + - Revert "UBUNTU: SAUCE: (snapdragon) arm64: configs: Enable camera drivers" + - Revert "UBUNTU: SAUCE: (snapdragon) arm64: defconfig: disable ANALOG_TV and + DIGITAL_TV" + - Revert "UBUNTU: SAUCE: (snapdragon) kernel: configs: add more USB net + drivers" + - Revert "UBUNTU: SAUCE: (snapdragon) arm64: configs: enable BT_QCOMSMD" + - Revert "UBUNTU: SAUCE: (snapdragon) arm64: defconfig: enable + CFG80211_DEFAULT_PS by default" + - Revert "UBUNTU: SAUCE: (snapdragon) Force the SMD regulator driver to be + compiled-in" + - Revert "UBUNTU: SAUCE: (snapdragon) kernel: configs: enable dm_mod and + dm_crypt" + - Revert "UBUNTU: SAUCE: (snapdragon) arm64: defconfig: Enable a53/apcs and + avs" + - Revert "UBUNTU: SAUCE: (snapdragon) arm64: configs: enable QCOM Venus" + - Revert "UBUNTU: SAUCE: (snapdragon) kernel: distro.config: enable debug + friendly USB network adpater" + - Revert "UBUNTU: SAUCE: (snapdragon) arm64: configs: enable WCN36xx" + - Revert "UBUNTU: SAUCE: (snapdragon) kernel: configs; add distro.config" + - Revert "UBUNTU: SAUCE: (snapdragon) arm64: defconfig: enable QCOM audio + drivers for APQ8016 and DB410c" + - Revert "UBUNTU: SAUCE: (snapdragon) arm64: defconfig: enable REMOTEPROC" + - [Config] fix abi for remove i2c-qcom-cci module + - [Config] update annotations + - [Config] update configs following snapdragon removal + * Disco update: v5.0.5 upstream stable release (LP: #1822671) + - Revert "ALSA: hda - Enforces runtime_resume after S3 and S4 for each codec" + - ALSA: hda - add Lenovo IdeaCentre B550 to the power_save_blacklist + - ALSA: firewire-motu: use 'version' field of unit directory to identify model + - mmc: pxamci: fix enum type confusion + - mmc: alcor: fix DMA reads + - mmc: mxcmmc: "Revert mmc: mxcmmc: handle highmem pages" + - mmc: renesas_sdhi: limit block count to 16 bit for old revisions + - drm/amdgpu: fix invalid use of change_bit + - drm/vmwgfx: Don't double-free the mode stored in par->set_mode + - drm/vmwgfx: Return 0 when gmrid::get_node runs out of ID's + - iommu/amd: fix sg->dma_address for sg->offset bigger than PAGE_SIZE + - iommu/iova: Fix tracking of recently failed iova address + - libceph: wait for latest osdmap in ceph_monc_blacklist_add() + - udf: Fix crash on IO error during truncate + - mips: loongson64: lemote-2f: Add IRQF_NO_SUSPEND to "cascade" irqaction. + - MIPS: Ensure ELF appended dtb is relocated + - MIPS: Fix kernel crash for R6 in jump label branch function + - powerpc/vdso64: Fix CLOCK_MONOTONIC inconsistencies across Y2038 + - powerpc/security: Fix spectre_v2 reporting + - net/mlx5: Fix DCT creation bad flow + - scsi: core: Avoid that a kernel warning appears during system resume + - scsi: qla2xxx: Fix FC-AL connection target discovery + - scsi: ibmvscsi: Protect ibmvscsi_head from concurrent modificaiton + - scsi: ibmvscsi: Fix empty event pool access during host removal + - futex: Ensure that futex address is aligned in handle_futex_death() + - perf probe: Fix getting the kernel map + - objtool: Move objtool_file struct off the stack + - irqchip/gic-v3-its: Fix comparison logic in lpi_range_cmp + - clocksource/drivers/riscv: Fix clocksource mask + - ALSA: ac97: Fix of-node refcount unbalance + - ext4: fix NULL pointer dereference while journal is aborted + - ext4: fix data corruption caused by unaligned direct AIO + - ext4: brelse all indirect buffer in ext4_ind_remove_space() + - media: v4l2-ctrls.c/uvc: zero v4l2_event + - Bluetooth: hci_uart: Check if socket buffer is ERR_PTR in h4_recv_buf() + - Bluetooth: Fix decrementing reference count twice in releasing socket + - Bluetooth: hci_ldisc: Initialize hci_dev before open() + - Bluetooth: hci_ldisc: Postpone HCI_UART_PROTO_READY bit set in + hci_uart_set_proto() + - drm/vkms: Fix flush_work() without INIT_WORK(). + - RDMA/cma: Rollback source IP address if failing to acquire device + - f2fs: fix to avoid deadlock of atomic file operations + - aio: simplify - and fix - fget/fput for io_submit() + - netfilter: ebtables: remove BUGPRINT messages + - loop: access lo_backing_file only when the loop device is Lo_bound + - x86/unwind: Handle NULL pointer calls better in frame unwinder + - x86/unwind: Add hardcoded ORC entry for NULL + - locking/lockdep: Add debug_locks check in __lock_downgrade() + - ALSA: hda - Record the current power state before suspend/resume calls + - ALSA: hda - Enforces runtime_resume after S3 and S4 for each codec + - Linux 5.0.5 + * hisi_sas updates for disco (LP: #1822385) + - scsi: hisi_sas: send primitive NOTIFY to SSP situation only + - scsi: hisi_sas: shutdown axi bus to avoid exception CQ returned + - scsi: hisi_sas: remove the check of sas_dev status in + hisi_sas_I_T_nexus_reset() + - scsi: hisi_sas: Remove unused parameter of function hisi_sas_alloc() + - scsi: hisi_sas: Reject setting programmed minimum linkrate > 1.5G + - scsi: hisi_sas: Fix losing directly attached disk when hot-plug + - scsi: hisi_sas: Correct memory allocation size for DQ debugfs + - scsi: hisi_sas: Some misc tidy-up + - scsi: hisi_sas: Fix to only call scsi_get_prot_op() for non-NULL scsi_cmnd + - scsi: hisi_sas: Add missing seq_printf() call in hisi_sas_show_row_32() + - scsi: hisi_sas: Add support for DIX feature for v3 hw + - scsi: hisi_sas: Add manual trigger for debugfs dump + - scsi: hisi_sas: change queue depth from 512 to 4096 + - scsi: hisi_sas: Issue internal abort on all relevant queues + - scsi: hisi_sas: Use pci_irq_get_affinity() for v3 hw as experimental + - scsi: hisi_sas: Do some more tidy-up + - scsi: hisi_sas: Change return variable type in phy_up_v3_hw() + - scsi: hisi_sas: Fix a timeout race of driver internal and SMP IO + - scsi: hisi_sas: print PHY RX errors count for later revision of v3 hw + - scsi: hisi_sas: Set PHY linkrate when disconnected + - scsi: hisi_sas: Send HARD RESET to clear the previous affiliation of STP + target port + - scsi: hisi_sas: Change SERDES_CFG init value to increase reliability of + HiLink + - scsi: hisi_sas: Add softreset in hisi_sas_I_T_nexus_reset() + * [Patch][Raven 2] kernel 5.0.0 cannot boot because of psp response + (LP: #1822267) + - drm/amdgpu/psp: Fix can't detect psp INVOKE command failed + - drm/amdgpu/psp: ignore psp response status + * 3b080b2564287be91605bfd1d5ee985696e61d3c in ubuntu_btrfs_kernel_fixes + triggers system hang on i386 (LP: #1812845) + - btrfs: raid56: properly unmap parity page in finish_parity_scrub() + * enable CONFIG_DRM_BOCHS (LP: #1795857) + - [Config] Reenable DRM_BOCHS as module + * [Dell Precision 7530/5530 with Nvidia Quadro P1000] Live USB freezes or + cannot complete install when nouveau driver is loaded (crashing in GP100 + code) (LP: #1822026) + - SAUCE: drm/nouveau: Disable nouveau driver by default + * Need to add Intel CML related pci-id's (LP: #1821863) + - drm/i915/cml: Add CML PCI IDS + - drm/i915/cml: Introduce Comet Lake PCH + * ARM: Add support for the SDEI interface (LP: #1822005) + - ACPI / APEI: Don't wait to serialise with oops messages when panic()ing + - ACPI / APEI: Remove silent flag from ghes_read_estatus() + - ACPI / APEI: Switch estatus pool to use vmalloc memory + - ACPI / APEI: Make hest.c manage the estatus memory pool + - ACPI / APEI: Make estatus pool allocation a static size + - ACPI / APEI: Don't store CPER records physical address in struct ghes + - ACPI / APEI: Remove spurious GHES_TO_CLEAR check + - ACPI / APEI: Don't update struct ghes' flags in read/clear estatus + - ACPI / APEI: Generalise the estatus queue's notify code + - ACPI / APEI: Don't allow ghes_ack_error() to mask earlier errors + - ACPI / APEI: Move NOTIFY_SEA between the estatus-queue and NOTIFY_NMI + - ACPI / APEI: Switch NOTIFY_SEA to use the estatus queue + - KVM: arm/arm64: Add kvm_ras.h to collect kvm specific RAS plumbing + - arm64: KVM/mm: Move SEA handling behind a single 'claim' interface + - ACPI / APEI: Move locking to the notification helper + - ACPI / APEI: Let the notification helper specify the fixmap slot + - ACPI / APEI: Pass ghes and estatus separately to avoid a later copy + - ACPI / APEI: Make GHES estatus header validation more user friendly + - ACPI / APEI: Split ghes_read_estatus() to allow a peek at the CPER length + - ACPI / APEI: Only use queued estatus entry during in_nmi_queue_one_entry() + - ACPI / APEI: Use separate fixmap pages for arm64 NMI-like notifications + - firmware: arm_sdei: Add ACPI GHES registration helper + - ACPI / APEI: Add support for the SDEI GHES Notification type + * CVE-2019-9857 + - inotify: Fix fsnotify_mark refcount leak in inotify_update_existing_watch() + * scsi: libsas: Support SATA PHY connection rate unmatch fixing during + discovery (LP: #1821408) + - scsi: libsas: Support SATA PHY connection rate unmatch fixing during + discovery + * Qualcomm Atheros QCA9377 wireless does not work (LP: #1818204) + - platform/x86: ideapad-laptop: Add Ideapad 530S-14ARR to no_hw_rfkill list + * Lenovo ideapad 330-15ICH Wifi rfkill hard blocked (LP: #1811815) + - platform/x86: ideapad: Add ideapad 330-15ICH to no_hw_rfkill + * hid-sensor-hub spamming dmesg in 4.20 (LP: #1818547) + - HID: Increase maximum report size allowed by hid_field_extract() + * [disco] [5.0.0-7.8] can't mount guest cifs share (LP: #1821053) + - cifs: allow guest mounts to work for smb3.11 + - SMB3: Fix SMB3.1.1 guest mounts to Samba + * Add HiSilicon SoC quirk for cpufreq (LP: #1821620) + - ACPI / CPPC: Add a helper to get desired performance + - cpufreq / cppc: Work around for Hisilicon CPPC cpufreq + * Disco update: v5.0.4 upstream stable release (LP: #1821607) + - 9p: use inode->i_lock to protect i_size_write() under 32-bit + - 9p/net: fix memory leak in p9_client_create + - ASoC: fsl_esai: fix register setting issue in RIGHT_J mode + - ASoC: codecs: pcm186x: fix wrong usage of DECLARE_TLV_DB_SCALE() + - ASoC: codecs: pcm186x: Fix energysense SLEEP bit + - iio: adc: exynos-adc: Fix NULL pointer exception on unbind + - iio: adc: exynos-adc: Use proper number of channels for Exynos4x12 + - mei: hbm: clean the feature flags on link reset + - mei: bus: move hw module get/put to probe/release + - stm class: Prevent division by zero + - stm class: Fix an endless loop in channel allocation + - crypto: caam - fix hash context DMA unmap size + - crypto: ccree - fix missing break in switch statement + - crypto: caam - fixed handling of sg list + - crypto: caam - fix DMA mapping of stack memory + - crypto: ccree - fix free of unallocated mlli buffer + - crypto: ccree - unmap buffer before copying IV + - crypto: ccree - don't copy zero size ciphertext + - crypto: cfb - add missing 'chunksize' property + - crypto: cfb - remove bogus memcpy() with src == dest + - crypto: ofb - fix handling partial blocks and make thread-safe + - crypto: ahash - fix another early termination in hash walk + - crypto: rockchip - fix scatterlist nents error + - crypto: rockchip - update new iv to device in multiple operations + - dax: Flush partial PMDs correctly + - nfit: Fix nfit_intel_shutdown_status() command submission + - nfit: acpi_nfit_ctl(): Check out_obj->type in the right place + - acpi/nfit: Fix bus command validation + - nfit/ars: Attempt a short-ARS whenever the ARS state is idle at boot + - nfit/ars: Attempt short-ARS even in the no_init_ars case + - libnvdimm/label: Clear 'updating' flag after label-set update + - libnvdimm, pfn: Fix over-trim in trim_pfn_device() + - libnvdimm/pmem: Honor force_raw for legacy pmem regions + - libnvdimm: Fix altmap reservation size calculation + - fix cgroup_do_mount() handling of failure exits + - crypto: aead - set CRYPTO_TFM_NEED_KEY if ->setkey() fails + - crypto: aegis - fix handling chunked inputs + - crypto: arm/crct10dif - revert to C code for short inputs + - crypto: arm64/aes-neonbs - fix returning final keystream block + - crypto: arm64/crct10dif - revert to C code for short inputs + - crypto: hash - set CRYPTO_TFM_NEED_KEY if ->setkey() fails + - crypto: morus - fix handling chunked inputs + - crypto: pcbc - remove bogus memcpy()s with src == dest + - crypto: skcipher - set CRYPTO_TFM_NEED_KEY if ->setkey() fails + - crypto: testmgr - skip crc32c context test for ahash algorithms + - crypto: x86/aegis - fix handling chunked inputs and MAY_SLEEP + - crypto: x86/aesni-gcm - fix crash on empty plaintext + - crypto: x86/morus - fix handling chunked inputs and MAY_SLEEP + - crypto: arm64/aes-ccm - fix logical bug in AAD MAC handling + - crypto: arm64/aes-ccm - fix bugs in non-NEON fallback routine + - CIFS: Fix leaking locked VFS cache pages in writeback retry + - CIFS: Do not reset lease state to NONE on lease break + - CIFS: Do not skip SMB2 message IDs on send failures + - CIFS: Fix read after write for files with read caching + - smb3: make default i/o size for smb3 mounts larger + - tracing: Use strncpy instead of memcpy for string keys in hist triggers + - tracing: Do not free iter->trace in fail path of tracing_open_pipe() + - tracing/perf: Use strndup_user() instead of buggy open-coded version + - vmw_balloon: release lock on error in vmballoon_reset() + - xen: fix dom0 boot on huge systems + - ACPI / device_sysfs: Avoid OF modalias creation for removed device + - mmc: sdhci-esdhc-imx: fix HS400 timing issue + - mmc: renesas_sdhi: Fix card initialization failure in high speed mode + - mmc:fix a bug when max_discard is 0 + - spi: ti-qspi: Fix mmap read when more than one CS in use + - spi: pxa2xx: Setup maximum supported DMA transfer length + - spi: omap2-mcspi: Fix DMA and FIFO event trigger size mismatch + - spi: spi-gpio: fix SPI_CS_HIGH capability + - regulator: s2mps11: Fix steps for buck7, buck8 and LDO35 + - regulator: max77620: Initialize values for DT properties + - regulator: s2mpa01: Fix step values for some LDOs + - mt76: fix corrupted software generated tx CCMP PN + - clocksource/drivers/exynos_mct: Move one-shot check from tick clear to ISR + - clocksource/drivers/exynos_mct: Clear timer interrupt when shutdown + - clocksource/drivers/arch_timer: Workaround for Allwinner A64 timer + instability + - s390: vfio_ap: link the vfio_ap devices to the vfio_ap bus subsystem + - s390/setup: fix early warning messages + - s390/virtio: handle find on invalid queue gracefully + - scsi: virtio_scsi: don't send sc payload with tmfs + - scsi: aacraid: Fix performance issue on logical drives + - scsi: sd: Optimal I/O size should be a multiple of physical block size + - scsi: target/iscsi: Avoid iscsit_release_commands_from_conn() deadlock + - scsi: qla2xxx: Fix LUN discovery if loop id is not assigned yet by firmware + - scsi: qla2xxx: Avoid PCI IRQ affinity mapping when multiqueue is not + supported + - scsi: qla2xxx: Use complete switch scan for RSCN events + - fs/devpts: always delete dcache dentry-s in dput() + - splice: don't merge into linked buffers + - ovl: During copy up, first copy up data and then xattrs + - ovl: Do not lose security.capability xattr over metadata file copy-up + - m68k: Add -ffreestanding to CFLAGS + - Btrfs: setup a nofs context for memory allocation at btrfs_create_tree() + - Btrfs: setup a nofs context for memory allocation at __btrfs_set_acl + - btrfs: scrub: fix circular locking dependency warning + - btrfs: drop the lock on error in btrfs_dev_replace_cancel + - btrfs: ensure that a DUP or RAID1 block group has exactly two stripes + - btrfs: init csum_list before possible free + - Btrfs: fix corruption reading shared and compressed extents after hole + punching + - Btrfs: fix deadlock between clone/dedupe and rename + - soc: qcom: rpmh: Avoid accessing freed memory from batch API + - libertas_tf: don't set URB_ZERO_PACKET on IN USB transfer + - irqchip/gic-v3-its: Avoid parsing _indirect_ twice for Device table + - irqchip/brcmstb-l2: Use _irqsave locking variants in non-interrupt code + - x86/kprobes: Prohibit probing on optprobe template code + - cpufreq: kryo: Release OPP tables on module removal + - cpufreq: tegra124: add missing of_node_put() + - cpufreq: pxa2xx: remove incorrect __init annotation + - ext4: fix check of inode in swap_inode_boot_loader + - ext4: cleanup pagecache before swap i_data + - mm: hwpoison: fix thp split handing in soft_offline_in_use_page() + - mm/vmalloc: fix size check for remap_vmalloc_range_partial() + - mm/memory.c: do_fault: avoid usage of stale vm_area_struct + - kernel/sysctl.c: add missing range check in do_proc_dointvec_minmax_conv + - nvmem: core: don't check the return value of notifier chain call + - device property: Fix the length used in PROPERTY_ENTRY_STRING() + - intel_th: Don't reference unassigned outputs + - parport_pc: fix find_superio io compare code, should use equal test. + - i2c: tegra: fix maximum transfer size + - i2c: tegra: update maximum transfer size + - media: i2c: ov5640: Fix post-reset delay + - gpio: pca953x: Fix dereference of irq data in shutdown + - ext4: update quota information while swapping boot loader inode + - ext4: add mask of ext4 flags to swap + - ext4: fix crash during online resizing + - dma: Introduce dma_max_mapping_size() + - swiotlb: Introduce swiotlb_max_mapping_size() + - swiotlb: Add is_swiotlb_active() function + - PCI/ASPM: Use LTR if already enabled by platform + - PCI/DPC: Fix print AER status in DPC event handling + - PCI: qcom: Don't deassert reset GPIO during probe + - PCI: dwc: skip MSI init if MSIs have been explicitly disabled + - PCI: pci-bridge-emul: Create per-bridge copy of register behavior + - PCI: pci-bridge-emul: Extend pci_bridge_emul_init() with flags + - IB/hfi1: Close race condition on user context disable and close + - IB/rdmavt: Fix loopback send with invalidate ordering + - IB/rdmavt: Fix concurrency panics in QP post_send and modify to error + - cxl: Wrap iterations over afu slices inside 'afu_list_lock' + - ext2: Fix underflow in ext2_max_size() + - clk: uniphier: Fix update register for CPU-gear + - clk: clk-twl6040: Fix imprecise external abort for pdmclk + - clk: samsung: exynos5: Fix possible NULL pointer exception on + platform_device_alloc() failure + - clk: samsung: exynos5: Fix kfree() of const memory on setting + driver_override + - clk: ingenic: Fix round_rate misbehaving with non-integer dividers + - clk: ingenic: Fix doc of ingenic_cgu_div_info + - usb: chipidea: tegra: Fix missed ci_hdrc_remove_device() + - usb: typec: tps6598x: handle block writes separately with plain-I2C adapters + - dmaengine: usb-dmac: Make DMAC system sleep callbacks explicit + - serial: uartps: Fix stuck ISR if RX disabled with non-empty FIFO + - serial: 8250_of: assume reg-shift of 2 for mrvl,mmp-uart + - serial: 8250_pci: Fix number of ports for ACCES serial cards + - serial: 8250_pci: Have ACCES cards that use the four port Pericom PI7C9X7954 + chip use the pci_pericom_setup() + - jbd2: clear dirty flag when revoking a buffer from an older transaction + - jbd2: fix compile warning when using JBUFFER_TRACE + - selinux: add the missing walk_size + len check in selinux_sctp_bind_connect + - security/selinux: fix SECURITY_LSM_NATIVE_LABELS on reused superblock + - powerpc/32: Clear on-stack exception marker upon exception return + - powerpc/wii: properly disable use of BATs when requested. + - powerpc/powernv: Make opal log only readable by root + - powerpc/83xx: Also save/restore SPRG4-7 during suspend + - powerpc/kvm: Save and restore host AMR/IAMR/UAMOR + - powerpc/powernv: Don't reprogram SLW image on every KVM guest entry/exit + - powerpc/64s/hash: Fix assert_slb_presence() use of the slbfee. instruction + - powerpc: Fix 32-bit KVM-PR lockup and host crash with MacOS guest + - powerpc/ptrace: Simplify vr_get/set() to avoid GCC warning + - powerpc/hugetlb: Don't do runtime allocation of 16G pages in LPAR + configuration + - powerpc/smp: Fix NMI IPI timeout + - powerpc/smp: Fix NMI IPI xmon timeout + - powerpc/traps: fix recoverability of machine check handling on book3s/32 + - powerpc/traps: Fix the message printed when stack overflows + - ARM: s3c24xx: Fix boolean expressions in osiris_dvs_notify + - arm64: Fix HCR.TGE status for NMI contexts + - arm64: debug: Don't propagate UNKNOWN FAR into si_code for debug signals + - arm64: debug: Ensure debug handlers check triggering exception level + - arm64: KVM: Fix architecturally invalid reset value for FPEXC32_EL2 + - Revert "KVM/MMU: Flush tlb directly in the kvm_zap_gfn_range()" + - ipmi_si: Fix crash when using hard-coded device + - ipmi_si: fix use-after-free of resource->name + - dm: fix to_sector() for 32bit + - dm integrity: limit the rate of error messages + - media: cx25840: mark pad sig_types to fix cx231xx init + - mfd: sm501: Fix potential NULL pointer dereference + - cpcap-charger: generate events for userspace + - cpuidle: governor: Add new governors to cpuidle_governors again + - NFS: Fix I/O request leakages + - NFS: Fix an I/O request leakage in nfs_do_recoalesce + - NFS: Don't recoalesce on error in nfs_pageio_complete_mirror() + - nfsd: fix performance-limiting session calculation + - nfsd: fix memory corruption caused by readdir + - nfsd: fix wrong check in write_v4_end_grace() + - NFSv4.1: Reinitialise sequence results before retransmitting a request + - svcrpc: fix UDP on servers with lots of threads + - PM / wakeup: Rework wakeup source timer cancellation + - PM / OPP: Update performance state when freq == old_freq + - bcache: treat stale && dirty keys as bad keys + - bcache: use (REQ_META|REQ_PRIO) to indicate bio for metadata + - stable-kernel-rules.rst: add link to networking patch queue + - vt: perform safe console erase in the right order + - x86/unwind/orc: Fix ORC unwind table alignment + - perf intel-pt: Fix CYC timestamp calculation after OVF + - perf tools: Fix split_kallsyms_for_kcore() for trampoline symbols + - perf auxtrace: Define auxtrace record alignment + - perf intel-pt: Fix overlap calculation for padding + - perf/x86/intel/uncore: Fix client IMC events return huge result + - perf intel-pt: Fix divide by zero when TSC is not available + - md: Fix failed allocation of md_register_thread + - x86/kvmclock: set offset for kvm unstable clock + - x86/ftrace: Fix warning and considate ftrace_jmp_replace() and + ftrace_call_replace() + - tpm/tpm_crb: Avoid unaligned reads in crb_recv() + - tpm: Unify the send callback behaviour + - rcu: Do RCU GP kthread self-wakeup from softirq and interrupt + - media: imx: prpencvf: Stop upstream before disabling IDMA channel + - media: lgdt330x: fix lock status reporting + - media: sun6i: Fix CSI regmap's max_register + - media: uvcvideo: Avoid NULL pointer dereference at the end of streaming + - media: vimc: Add vimc-streamer for stream control + - media: imx-csi: Input connections to CSI should be optional + - media: imx: csi: Disable CSI immediately after last EOF + - media: imx: csi: Stop upstream before disabling IDMA channel + - drm/fb-helper: generic: Fix drm_fbdev_client_restore() + - drm/radeon/evergreen_cs: fix missing break in switch statement + - drm/amd/powerplay: correct power reading on fiji + - drm/amd/display: don't call dm_pp_ function from an fpu block + - KVM: Call kvm_arch_memslots_updated() before updating memslots + - KVM: VMX: Compare only a single byte for VMCS' "launched" in vCPU-run + - KVM: VMX: Zero out *all* general purpose registers after VM-Exit + - KVM: x86/mmu: Detect MMIO generation wrap in any address space + - KVM: x86/mmu: Do not cache MMIO accesses while memslots are in flux + - KVM: nVMX: Sign extend displacements of VMX instr's mem operands + - KVM: nVMX: Apply addr size mask to effective address for VMX instructions + - KVM: nVMX: Ignore limit checks on VMX instructions using flat segments + - KVM: nVMX: Check a single byte for VMCS "launched" in nested early checks + - net: dsa: lantiq_gswip: fix use-after-free on failed probe + - net: dsa: lantiq_gswip: fix OF child-node lookups + - s390/setup: fix boot crash for machine without EDAT-1 + - SUNRPC: Prevent thundering herd when the socket is not connected + - SUNRPC: Fix up RPC back channel transmission + - SUNRPC: Respect RPC call timeouts when retrying transmission + - Linux 5.0.4 + - [Config] update configs for 5.0.4 stable update + * New Intel Wireless-AC 9260 [8086:2526] card not correctly probed in Ubuntu + system (LP: #1821271) + - iwlwifi: add new card for 9260 series + * [CONFIG] please enable highdpi font FONT_TER16x32 (LP: #1819881) + - [Config]: enable highdpi Terminus 16x32 font support + * [SRU][B/B-OEM/C/D] Fix AMD IOMMU NULL dereference (LP: #1820990) + - iommu/amd: Fix NULL dereference bug in match_hid_uid + * some codecs stop working after S3 (LP: #1820930) + - ALSA: hda - Enforces runtime_resume after S3 and S4 for each codec + - ALSA: hda - Don't trigger jackpoll_work in azx_resume + * tcm_loop.ko: move from modules-extra into main modules package + (LP: #1817786) + - [Packaging] move tcm_loop.lo to main linux-modules package + * C++ demangling support missing from perf (LP: #1396654) + - [Packaging] fix a mistype + * r8169 doesn't get woken up by ethernet cable plugging, no PME generated + (LP: #1817676) + - PCI: pciehp: Disable Data Link Layer State Changed event on suspend + * Disco update: v5.0.3 upstream stable release (LP: #1821074) + - connector: fix unsafe usage of ->real_parent + - fou, fou6: avoid uninit-value in gue_err() and gue6_err() + - gro_cells: make sure device is up in gro_cells_receive() + - ipv4/route: fail early when inet dev is missing + - l2tp: fix infoleak in l2tp_ip6_recvmsg() + - lan743x: Fix RX Kernel Panic + - lan743x: Fix TX Stall Issue + - net: hsr: fix memory leak in hsr_dev_finalize() + - net/hsr: fix possible crash in add_timer() + - net: sit: fix UBSAN Undefined behaviour in check_6rd + - net/x25: fix use-after-free in x25_device_event() + - net/x25: reset state in x25_connect() + - pptp: dst_release sk_dst_cache in pptp_sock_destruct + - ravb: Decrease TxFIFO depth of Q3 and Q2 to one + - route: set the deleted fnhe fnhe_daddr to 0 in ip_del_fnhe to fix a race + - rxrpc: Fix client call queueing, waiting for channel + - sctp: remove sched init from sctp_stream_init + - tcp: do not report TCP_CM_INQ of 0 for closed connections + - tcp: Don't access TCP_SKB_CB before initializing it + - tcp: handle inet_csk_reqsk_queue_add() failures + - vxlan: Fix GRO cells race condition between receive and link delete + - vxlan: test dev->flags & IFF_UP before calling gro_cells_receive() + - net/mlx4_core: Fix reset flow when in command polling mode + - net/mlx4_core: Fix locking in SRIOV mode when switching between events and + polling + - net/mlx4_core: Fix qp mtt size calculation + - net: dsa: mv88e6xxx: Set correct interface mode for CPU/DSA ports + - vsock/virtio: fix kernel panic from virtio_transport_reset_no_sock + - net: sched: flower: insert new filter to idr after setting its mask + - f2fs: wait on atomic writes to count F2FS_CP_WB_DATA + - perf/x86: Fixup typo in stub functions + - ALSA: bebob: use more identical mod_alias for Saffire Pro 10 I/O against + Liquid Saffire 56 + - ALSA: firewire-motu: fix construction of PCM frame for capture direction + - ALSA: hda: Extend i915 component bind timeout + - ALSA: hda - add more quirks for HP Z2 G4 and HP Z240 + - ALSA: hda/realtek: Enable audio jacks of ASUS UX362FA with ALC294 + - ALSA: hda/realtek - Reduce click noise on Dell Precision 5820 headphone + - ALSA: hda/realtek: Enable headset MIC of Acer TravelMate X514-51T with + ALC255 + - perf/x86/intel: Fix memory corruption + - perf/x86/intel: Make dev_attr_allow_tsx_force_abort static + - It's wrong to add len to sector_nr in raid10 reshape twice + - drm: Block fb changes for async plane updates + - Linux 5.0.3 + * Disco update: v5.0.2 upstream stable release (LP: #1820318) + - media: uvcvideo: Fix 'type' check leading to overflow + - Input: wacom_serial4 - add support for Wacom ArtPad II tablet + - Input: elan_i2c - add id for touchpad found in Lenovo s21e-20 + - iscsi_ibft: Fix missing break in switch statement + - scsi: aacraid: Fix missing break in switch statement + - x86/PCI: Fixup RTIT_BAR of Intel Denverton Trace Hub + - arm64: dts: zcu100-revC: Give wifi some time after power-on + - arm64: dts: hikey: Give wifi some time after power-on + - arm64: dts: hikey: Revert "Enable HS200 mode on eMMC" + - ARM: dts: exynos: Fix pinctrl definition for eMMC RTSN line on Odroid X2/U3 + - ARM: dts: exynos: Add minimal clkout parameters to Exynos3250 PMU + - ARM: dts: exynos: Fix max voltage for buck8 regulator on Odroid XU3/XU4 + - drm: disable uncached DMA optimization for ARM and arm64 + - media: Revert "media: rc: some events are dropped by userspace" + - Revert "PCI/PME: Implement runtime PM callbacks" + - bpf: Stop the psock parser before canceling its work + - gfs2: Fix missed wakeups in find_insert_glock + - staging: erofs: keep corrupted fs from crashing kernel in erofs_namei() + - staging: erofs: compressed_pages should not be accessed again after freed + - scripts/gdb: replace flags (MS_xyz -> SB_xyz) + - ath9k: Avoid OF no-EEPROM quirks without qca,no-eeprom + - perf/x86/intel: Make cpuc allocations consistent + - perf/x86/intel: Generalize dynamic constraint creation + - x86: Add TSX Force Abort CPUID/MSR + - perf/x86/intel: Implement support for TSX Force Abort + - Linux 5.0.2 + * Linux security module stacking support + - LSM: Introduce LSM_FLAG_LEGACY_MAJOR + - LSM: Provide separate ordered initialization + - LSM: Plumb visibility into optional "enabled" state + - LSM: Lift LSM selection out of individual LSMs + - LSM: Build ordered list of LSMs to initialize + - LSM: Introduce CONFIG_LSM + - LSM: Introduce "lsm=" for boottime LSM selection + - LSM: Tie enabling logic to presence in ordered list + - LSM: Prepare for reorganizing "security=" logic + - LSM: Refactor "security=" in terms of enable/disable + - LSM: Separate idea of "major" LSM from "exclusive" LSM + - apparmor: Remove SECURITY_APPARMOR_BOOTPARAM_VALUE + - selinux: Remove SECURITY_SELINUX_BOOTPARAM_VALUE + - LSM: Add all exclusive LSMs to ordered initialization + - LSM: Split LSM preparation from initialization + - LoadPin: Initialize as ordered LSM + - Yama: Initialize as ordered LSM + - LSM: Introduce enum lsm_order + - capability: Initialize as LSM_ORDER_FIRST + - procfs: add smack subdir to attrs + - Smack: Abstract use of cred security blob + - SELinux: Abstract use of cred security blob + - SELinux: Remove cred security blob poisoning + - SELinux: Remove unused selinux_is_enabled + - AppArmor: Abstract use of cred security blob + - TOMOYO: Abstract use of cred security blob + - Infrastructure management of the cred security blob + - SELinux: Abstract use of file security blob + - Smack: Abstract use of file security blob + - LSM: Infrastructure management of the file security + - SELinux: Abstract use of inode security blob + - Smack: Abstract use of inode security blob + - LSM: Infrastructure management of the inode security + - LSM: Infrastructure management of the task security + - SELinux: Abstract use of ipc security blobs + - Smack: Abstract use of ipc security blobs + - LSM: Infrastructure management of the ipc security blob + - TOMOYO: Update LSM flags to no longer be exclusive + - LSM: generalize flag passing to security_capable + - LSM: Make lsm_early_cred() and lsm_early_task() local functions. + - LSM: Make some functions static + - apparmor: Adjust offset when accessing task blob. + - LSM: Ignore "security=" when "lsm=" is specified + - LSM: Update list of SECURITYFS users in Kconfig + - apparmor: delete the dentry in aafs_remove() to avoid a leak + - apparmor: fix double free when unpack of secmark rules fails + - SAUCE: LSM: Infrastructure management of the sock security + - SAUCE: LSM: Limit calls to certain module hooks + - SAUCE: LSM: Special handling for secctx lsm hooks + - SAUCE: LSM: Specify which LSM to display with /proc/self/attr/display + - SAUCE: Fix-up af_unix mediation for sock infrastructure management + - SAUCE: Revert "apparmor: Fix warning about unused function + apparmor_ipv6_postroute" + - SAUCE: Revert "apparmor: fix checkpatch error in Parse secmark policy" + - SAUCE: Revert "apparmor: add #ifdef checks for secmark filtering" + - SAUCE: Revert "apparmor: Allow filtering based on secmark policy" + - SAUCE: Revert "apparmor: Parse secmark policy" + - SAUCE: Revert "apparmor: Add a wildcard secid" + - SAUCE: Revert "apparmor: fix bad debug check in apparmor_secid_to_secctx()" + - SAUCE: Revert "apparmor: fixup secid map conversion to using IDR" + - SAUCE: Revert "apparmor: Use an IDR to allocate apparmor secids" + - SAUCE: Revert "apparmor: Fix memory leak of rule on error exit path" + - SAUCE: Revert "apparmor: modify audit rule support to support profile + stacks" + - SAUCE: Revert "apparmor: Add support for audit rule filtering" + - SAUCE: Revert "apparmor: add the ability to get a task's secid" + - SAUCE: Revert "apparmor: add support for mapping secids and using secctxes" + - SAUCE: apparmor: add proc subdir to attrs + - SAUCE: apparmor: add an apparmorfs entry to access current attrs + - SAUCE: apparmor: update flags to no longer be exclusive + - SAUCE: update configs and annotations for LSM stacking + * Miscellaneous Ubuntu changes + - [Config] CONFIG_EARLY_PRINTK_USB_XDBC=y + - SAUCE: (efi-lockdown) bpf: Restrict kernel image access functions when the + kernel is locked down + - [Config] CONFIG_RANDOM_TRUST_CPU=y + - [Config] refresh annotations for recent config changes + - ubuntu: vbox -- update to 6.0.4-dfsg-7 + - Revert "UBUNTU: SAUCE: i2c:amd I2C Driver based on PCI Interface for + upcoming platform" + + -- Seth Forshee Tue, 09 Apr 2019 13:47:42 -0500 + +linux-azure (5.0.0-1001.1) disco; urgency=medium + + * linux-azure: 5.0.0-1001.1 -proposed tracker (LP: #1820605) + + * Packaging resync (LP: #1786013) + - [Packaging] update update.conf + + * Miscellaneous Ubuntu changes + - [Config] update configs following rebase to 5.0.0-8.9 + - [Packaging] sync packaging updates from master + - [Packaging] enable nvidia dkms build + - [Packaging] add linux-modules-extra to getabis + - SAUCE: vbus-rdma: forward port to 5.0 + + -- Seth Forshee Mon, 18 Mar 2019 14:36:27 -0500 + +linux-azure (5.0.0-1000.0) disco; urgency=medium + + * Emtpy entry + + -- Seth Forshee Mon, 18 Mar 2019 07:16:53 -0500 + +linux-azure (4.18.0-1013.13) cosmic; urgency=medium + + * linux-azure: 4.18.0-1013.13 -proposed tracker (LP: #1818128) + + * linux-azure - Add the same 4.15 InfiniBand configuration settings to the + 4.18 kernel (LP: #1818141) + - [Config] linux-azure: CONFIG_INFINIBAND_{USER_MAD,IPOIB,IPOIB_DEBUG}=y + + * Packaging resync (LP: #1786013) + - [Packaging] resync getabis + - [Packaging] update helper scripts + + * [Hyper-V][SAUCE] pci-hyperv: Use only 16 bit integer for PCI domain + (LP: #1684971) + - SAUCE: pci-hyperv: Use only 16 bit integer for PCI domain + + -- Marcelo Henrique Cerri Thu, 28 Feb 2019 19:09:26 -0300 + +linux-azure (4.18.0-1012.12) cosmic; urgency=medium + + * linux-azure: 4.18.0-1012.12 -proposed tracker (LP: #1816783) + + * Packaging resync (LP: #1786013) + - [Packaging] update helper scripts + + [ Ubuntu: 4.18.0-16.17 ] + + * linux: 4.18.0-16.17 -proposed tracker (LP: #1814749) + * Packaging resync (LP: #1786013) + - [Packaging] update helper scripts + * CVE-2018-16880 + - vhost: fix OOB in get_rx_bufs() + * RTL8822BE WiFi Disabled in Kernel 4.18.0-12 (LP: #1806472) + - SAUCE: staging: rtlwifi: allow RTLWIFI_DEBUG_ST to be disabled + - [Config] CONFIG_RTLWIFI_DEBUG_ST=n + - SAUCE: Add r8822be to signature inclusion list + * kernel oops in bcache module (LP: #1793901) + - SAUCE: bcache: never writeback a discard operation + * CVE-2018-18397 + - userfaultfd: use ENOENT instead of EFAULT if the atomic copy user fails + - userfaultfd: shmem: allocate anonymous memory for MAP_PRIVATE shmem + - userfaultfd: shmem/hugetlbfs: only allow to register VM_MAYWRITE vmas + - userfaultfd: shmem: add i_size checks + - userfaultfd: shmem: UFFDIO_COPY: set the page dirty if VM_WRITE is not set + * Ignore "incomplete report" from Elan touchpanels (LP: #1813733) + - HID: i2c-hid: Ignore input report if there's no data present on Elan + touchpanels + * Vsock connect fails with ENODEV for large CID (LP: #1813934) + - vhost/vsock: fix vhost vsock cid hashing inconsistent + * Fix non-working pinctrl-intel (LP: #1811777) + - pinctrl: intel: Do pin translation in other GPIO operations as well + * ip6_gre: fix tunnel list corruption for x-netns (LP: #1812875) + - ip6_gre: fix tunnel list corruption for x-netns + * Backported commit breaks audio (fixed upstream) (LP: #1811566) + - ASoC: intel: cht_bsw_max98090_ti: Add quirk for boards using pmc_plt_clk_0 + - ASoC: intel: cht_bsw_max98090_ti: Add pmc_plt_clk_0 quirk for Chromebook + Clapper + - ASoC: intel: cht_bsw_max98090_ti: Add pmc_plt_clk_0 quirk for Chromebook + Gnawty + * kvm_stat : missing python dependency (LP: #1798776) + - tools/kvm_stat: switch to python3 + * [SRU] Fix Xorg crash with nomodeset when BIOS enable 64-bit fb addr + (LP: #1812797) + - vgaarb: Add support for 64-bit frame buffer address + - vgaarb: Keep adding VGA device in queue + * Fix non-working QCA Rome Bluetooth after S3 (LP: #1812812) + - USB: Add new USB LPM helpers + - USB: Consolidate LPM checks to avoid enabling LPM twice + * [SRU] IO's are issued with incorrect Scatter Gather Buffer (LP: #1795453) + - scsi: megaraid_sas: Use 63-bit DMA addressing + * x86/mm: Found insecure W+X mapping at address (ptrval)/0xc00a0000 + (LP: #1813532) + - x86/mm: Do not warn about PCI BIOS W+X mappings + * CVE-2019-6133 + - fork: record start_time late + * Fix not working Goodix touchpad (LP: #1811929) + - HID: i2c-hid: Disable runtime PM on Goodix touchpad + * bluetooth controller not detected with 4.15 kernel (LP: #1810797) + - SAUCE: btqcomsmd: introduce BT_QCOMSMD_HACK + - [Config] arm64: snapdragon: BT_QCOMSMD_HACK=y + * X1 Extreme: only one of the two SSDs is loaded (LP: #1811755) + - nvme-core: rework a NQN copying operation + - nvme: pad fake subsys NQN vid and ssvid with zeros + - nvme: introduce NVME_QUIRK_IGNORE_DEV_SUBNQN + * Crash on "ip link add foo type ipip" (LP: #1811803) + - SAUCE: fan: Fix NULL pointer dereference + + -- Kleber Sacilotto de Souza Thu, 21 Feb 2019 11:52:18 +0100 + +linux-azure (4.18.0-1011.11) cosmic; urgency=medium + + * linux-azure: 4.18.0-1011.11 -proposed tracker (LP: #1816081) + + * 4.15.0-1037 does not see all PCI devices on GPU VMs (LP: #1816106) + - Revert "PCI: hv: Make sure the bus domain is really unique" + + -- Stefan Bader Fri, 15 Feb 2019 17:16:24 +0100 + +linux-azure (4.18.0-1009.9) cosmic; urgency=medium + + * Allow I/O schedulers to be loaded with modprobe in linux-azure + (LP: #1813211) + - [Config] linux-azure: Enable all IO schedulers as modules + + * [Hyper-V] srcu: Lock srcu_data structure in srcu_gp_start() (LP: #1802021) + - srcu: Lock srcu_data structure in srcu_gp_start() + + * CONFIG_SECURITY_SELINUX_DISABLE should be disabled on 4.15/4.18 Azure + (LP: #1813866) + - [Config]: disable CONFIG_SECURITY_SELINUX_DISABLE + + [ Ubuntu: 4.18.0-15.16 ] + + * Ubuntu boot failure. 4.18.0-14 boot stalls. (does not boot) (LP: #1814555) + - Revert "drm/i915/ringbuffer: Delay after EMIT_INVALIDATE for gen4/gen5" + * Userspace break as a result of missing patch backport (LP: #1813873) + - tty: Don't hold ldisc lock in tty_reopen() if ldisc present + + -- Stefan Bader Fri, 08 Feb 2019 12:49:37 +0100 + +linux-azure (4.18.0-1008.8) cosmic; urgency=medium + + * linux-azure: 4.18.0-1008.8 -proposed tracker (LP: #1811415) + + * Cosmic update: 4.18.19 upstream stable release (LP: #1810820) + - [Config] Update config after 4.18.0-14.15 rebase + + * Packaging resync (LP: #1786013) + - [Packaging] update helper scripts + + [ Ubuntu: 4.18.0-14.15 ] + + * linux: 4.18.0-14.15 -proposed tracker (LP: #1811406) + * CPU hard lockup with rigorous writes to NVMe drive (LP: #1810998) + - blk-wbt: Avoid lock contention and thundering herd issue in wbt_wait + - blk-wbt: move disable check into get_limit() + - blk-wbt: use wq_has_sleeper() for wq active check + - blk-wbt: fix has-sleeper queueing check + - blk-wbt: abstract out end IO completion handler + - blk-wbt: improve waking of tasks + * To reduce the Realtek USB cardreader power consumption (LP: #1811337) + - mmc: core: Introduce MMC_CAP_SYNC_RUNTIME_PM + - mmc: rtsx_usb_sdmmc: Don't runtime resume the device while changing led + - mmc: rtsx_usb_sdmmc: Re-work runtime PM support + - mmc: rtsx_usb_sdmmc: Re-work card detection/removal support + - memstick: rtsx_usb_ms: Add missing pm_runtime_disable() in probe function + - misc: rtsx_usb: Use USB remote wakeup signaling for card insertion detection + - memstick: Prevent memstick host from getting runtime suspended during card + detection + - memstick: rtsx_usb_ms: Use ms_dev() helper + - memstick: rtsx_usb_ms: Support runtime power management + * Support non-strict iommu mode on arm64 (LP: #1806488) + - iommu/io-pgtable-arm: Fix race handling in split_blk_unmap() + - iommu/arm-smmu-v3: Implement flush_iotlb_all hook + - iommu/dma: Add support for non-strict mode + - iommu: Add "iommu.strict" command line option + - iommu/io-pgtable-arm: Add support for non-strict mode + - iommu/arm-smmu-v3: Add support for non-strict mode + - iommu/io-pgtable-arm-v7s: Add support for non-strict mode + - iommu/arm-smmu: Support non-strict mode + * [Regression] crashkernel fails on HiSilicon D05 (LP: #1806766) + - efi: honour memory reservations passed via a linux specific config table + - efi/arm: libstub: add a root memreserve config table + - efi: add API to reserve memory persistently across kexec reboot + - irqchip/gic-v3-its: Change initialization ordering for LPIs + - irqchip/gic-v3-its: Simplify LPI_PENDBASE_SZ usage + - irqchip/gic-v3-its: Split property table clearing from allocation + - irqchip/gic-v3-its: Move pending table allocation to init time + - irqchip/gic-v3-its: Keep track of property table's PA and VA + - irqchip/gic-v3-its: Allow use of pre-programmed LPI tables + - irqchip/gic-v3-its: Use pre-programmed redistributor tables with kdump + kernels + - irqchip/gic-v3-its: Check that all RDs have the same property table + - irqchip/gic-v3-its: Register LPI tables with EFI config table + - irqchip/gic-v3-its: Allow use of LPI tables in reserved memory + - arm64: memblock: don't permit memblock resizing until linear mapping is up + - efi/arm: Defer persistent reservations until after paging_init() + - efi: Permit calling efi_mem_reserve_persistent() from atomic context + - efi: Prevent GICv3 WARN() by mapping the memreserve table before first use + * ELAN900C:00 04F3:2844 touchscreen doesn't work (LP: #1811335) + - pinctrl: cannonlake: Fix community ordering for H variant + - pinctrl: cannonlake: Fix HOSTSW_OWN register offset of H variant + * Add Cavium ThunderX2 SoC UNCORE PMU driver (LP: #1811200) + - Documentation: perf: Add documentation for ThunderX2 PMU uncore driver + - drivers/perf: Add Cavium ThunderX2 SoC UNCORE PMU driver + - [Config] New config CONFIG_THUNDERX2_PMU=m + * iptables connlimit allows more connections than the limit when using + multiple CPUs (LP: #1811094) + - netfilter: nf_conncount: don't skip eviction when age is negative + * CVE-2018-16882 + - KVM: Fix UAF in nested posted interrupt processing + * Cannot initialize ATA disk if IDENTIFY command fails (LP: #1809046) + - scsi: libsas: check the ata device status by ata_dev_enabled() + * scsi: libsas: fix a race condition when smp task timeout (LP: #1808912) + - scsi: libsas: fix a race condition when smp task timeout + * CVE-2018-14625 + - vhost/vsock: fix use-after-free in network stack callers + * Fix and issue that LG I2C touchscreen stops working after reboot + (LP: #1805085) + - HID: i2c-hid: Disable runtime PM for LG touchscreen + * Drivers: hv: vmbus: Offload the handling of channels to two workqueues + (LP: #1807757) + - Drivers: hv: vmbus: check the creation_status in vmbus_establish_gpadl() + - Drivers: hv: vmbus: Offload the handling of channels to two workqueues + * Disable LPM for Raydium Touchscreens (LP: #1802248) + - USB: quirks: Add no-lpm quirk for Raydium touchscreens + * Power leakage at S5 with Qualcomm Atheros QCA9377 802.11ac Wireless Network + Adapter (LP: #1805607) + - SAUCE: ath10k: provide reset function for QCA9377 chip + * CVE-2018-19407 + - KVM: X86: Fix scan ioapic use-before-initialization + * Fix USB2 device wrongly detected as USB1 (LP: #1806534) + - xhci: Add quirk to workaround the errata seen on Cavium Thunder-X2 Soc + * Add support for ALC3277 codec on new Dell edge gateways (LP: #1807334) + - SAUCE: ASoC: rt5660: (no-up) Move platform code to board file + - ASoC: Intel: kbl_rt5660: Add a new machine driver for kbl with rt5660 + - [Config] CONFIG_SND_SOC_INTEL_KBL_RT5660_MACH=m + * armhf guests fail to boot in EFI mode (LP: #1809488) + - efi/arm: Revert deferred unmap of early memmap mapping + * audio output has constant noise on a Dell machine (LP: #1810891) + - ALSA: hda/realtek - Fixed headphone issue for ALC700 + * ldisc crash on reopened tty (LP: #1791758) + - tty: Hold tty_ldisc_lock() during tty_reopen() + - tty: Don't block on IO when ldisc change is pending + - tty: Simplify tty->count math in tty_reopen() + * efi-lockdown patch causes -EPERM for some debugfs files even though + CONFIG_LOCK_DOWN_KERNEL is not set (LP: #1807686) + - SAUCE: debugfs: avoid EPERM when no open file operation defined + * SATA device is not going to DEVSLP (LP: #1781533) + - ata: ahci: Support state with min power but Partial low power state + - ata: ahci: Enable DEVSLP by default on x86 with SLP_S0 + * Console got stuck using serial tty after logout (LP: #1808097) + - tty: do not set TTY_IO_ERROR flag if console port + * Workaround CSS timeout on AMD SNPS 3.0 xHC (LP: #1806838) + - xhci: workaround CSS timeout on AMD SNPS 3.0 xHC + * Add pointstick support for Cirque Touchpad (LP: #1805081) + - HID: multitouch: Add pointstick support for Cirque Touchpad + * Update hisilicon SoC-specific drivers (LP: #1810457) + - SAUCE: Revert "net: hns3: Updates RX packet info fetch in case of multi BD" + - net: hns3: remove redundant variable 'protocol' + - scsi: hisi_sas: Drop hisi_sas_slot_abort() + - net: hns: Make many functions static + - net: hns: make hns_dsaf_roce_reset non static + - net: hisilicon: hns: Replace mdelay() with msleep() + - net: hns3: fix return value error while hclge_cmd_csq_clean failed + - net: hns: remove redundant variables 'max_frm' and 'tmp_mac_key' + - net: hns: Mark expected switch fall-through + - net: hns3: Mark expected switch fall-through + - net: hns3: Remove tx ring BD len register in hns3_enet + - net: hns: modify variable type in hns_nic_reuse_page + - net: hns: use eth_get_headlen interface instead of hns_nic_get_headlen + - net: hns3: modify variable type in hns3_nic_reuse_page + - net: hns3: Fix for multicast failure + - net: hns3: Fix error of checking used vlan id + - net: hns3: Implement shutdown ops in hns3 pci driver + - net: hns3: Fix for loopback selftest failed problem + - net: hns3: Only update mac configuation when necessary + - net: hns3: Change the dst mac addr of loopback packet + - net: hns3: Remove redundant codes of query advertised flow control abilitiy + - net: hns3: Refine hns3_get_link_ksettings() + - net: hns: make function hns_gmac_wait_fifo_clean() static + - net: hns3: Add default irq affinity + - net: hns3: Add unlikely for buf_num check + - net: hns3: Remove tx budget to clean more TX descriptors in a napi + - net: hns3: Remove packet statistics of public + - net: hns3: Add support for hns3_nic_netdev_ops.ndo_do_ioctl + - net: hns3: Fix for setting speed for phy failed problem + - net: hns3: Fix cmdq registers initialization issue for vf + - net: hns3: Clear client pointer when initialize client failed or unintialize + finished + - net: hns3: Fix client initialize state issue when roce client initialize + failed + - net: hns3: Fix parameter type for q_id in hclge_tm_q_to_qs_map_cfg() + - net: hns3: Unify the type convert for desc.data + - net: hns3: Adjust prefix of tx/rx statistic names + - net: hns3: Fix tqp array traversal condition for vf + - net: hns3: Unify the prefix of vf functions + - net: hns3: Add handle for default case + - net: hns3: Add unlikely for dma_mapping_error check + - net: hns3: Remove print messages for error packet + - net: hns3: Add get_media_type ops support for VF + - net: hns3: Fix speed/duplex information loss problem when executing ethtool + ethx cmd of VF + - net: hns3: Remove redundant hclge_get_port_type() + - net: hns3: Add support for sctp checksum offload + - net: hns3: Set extra mac address of pause param for HW + - net: hns3: Rename loop mode + - net: hns3: Rename mac loopback to app loopback + - net: hns3: Add serdes parallel inner loopback support + - net: hns3: Fix for netdev not up problem when setting mtu + - net: hns3: Change return type of hclge_tm_schd_info_update() + - net: hns3: Modify hns3_get_max_available_channels + - net: hns3: Fix loss of coal configuration while doing reset + - net: hns: remove ndo_poll_controller + - hns3: Fix the build. + - hns3: Another build fix. + - net: hns3: Add flow director initialization + - net: hns3: Add input key and action config support for flow director + - net: hns3: Add support for rule add/delete for flow director + - net: hns3: Add support for rule query of flow director + - net: hns3: Add reset handle for flow director + - net: hns3: Remove all flow director rules when unload hns3 driver + - net: hns3: Add support for enable/disable flow director + - net: hns3: Remove the default mask configuration for mac vlan table + - net: hns3: Clear mac vlan table entries when unload driver or function reset + - net: hns3: Optimize for unicast mac vlan table + - net: hns3: Drop depricated mta table support + - net: hns3: Add egress/ingress vlan filter for revision 0x21 + - net: hns3: Fix for rx vlan id handle to support Rev 0x21 hardware + - net: hns3: Add new RSS hash algorithm support for PF + - net: hns3: Add RSS general configuration support for VF + - net: hns3: Add RSS tuples support for VF + - net: hns3: Add HW RSS hash information to RX skb + - net: hns3: Enable promisc mode when mac vlan table is full + - net: hns3: Resume promisc mode and vlan filter status after reset + - net: hns3: Resume promisc mode and vlan filter status after loopback test + - scsi: hisi_sas: Feed back linkrate(max/min) when re-attached + - scsi: hisi_sas: Move evaluation of hisi_hba in hisi_sas_task_prep() + - scsi: hisi_sas: Fix the race between IO completion and timeout for + SMP/internal IO + - scsi: hisi_sas: Free slot later in slot_complete_vx_hw() + - scsi: hisi_sas: unmask interrupts ent72 and ent74 + - scsi: hisi_sas: Use block layer tag instead for IPTT + - scsi: hisi_sas: Update v3 hw AIP_LIMIT and CFG_AGING_TIME register values + - net: hns3: remove hns3_fill_desc_tso + - net: hns3: move DMA map into hns3_fill_desc + - net: hns3: add handling for big TX fragment + - net: hns3: rename hns_nic_dma_unmap + - net: hns3: fix for multiple unmapping DMA problem + - scsi: hisi_sas: Fix spin lock management in slot_index_alloc_quirk_v2_hw() + - scsi: hisi_sas: Fix NULL pointer dereference + - net: hns3: Add PCIe AER callback error_detected + - net: hns3: Add PCIe AER error recovery + - net: hns3: Add support to enable and disable hw errors + - net: hns3: Add enable and process common ecc errors + - net: hns3: Add enable and process hw errors from IGU, EGU and NCSI + - net: hns3: Add enable and process hw errors from PPP + - net: hns3: Add enable and process hw errors of TM scheduler + - net: hns3: Fix for warning uninitialized symbol hw_err_lst3 + - net: hns3: fix spelling mistake "intrerrupt" -> "interrupt" + - net: hns3: add error handler for hns3_nic_init_vector_data() + - net: hns3: bugfix for buffer not free problem during resetting + - net: hns3: bugfix for reporting unknown vector0 interrupt repeatly problem + - net: hns3: bugfix for the initialization of command queue's spin lock + - net: hns3: remove unnecessary queue reset in the hns3_uninit_all_ring() + - net: hns3: bugfix for is_valid_csq_clean_head() + - net: hns3: bugfix for hclge_mdio_write and hclge_mdio_read + - net: hns3: fix incorrect return value/type of some functions + - net: hns3: bugfix for handling mailbox while the command queue reinitialized + - net: hns3: bugfix for rtnl_lock's range in the hclge_reset() + - net: hns3: bugfix for rtnl_lock's range in the hclgevf_reset() + - net: hns3: Fix for out-of-bounds access when setting pfc back pressure + - scsi: hisi_sas: Remove set but not used variable 'dq_list' + - net: hns3: bugfix for not checking return value + - net: hns: Incorrect offset address used for some registers. + - net: hns: All ports can not work when insmod hns ko after rmmod. + - net: hns: Some registers use wrong address according to the datasheet. + - net: hns: Fixed bug that netdev was opened twice + - net: hns: Clean rx fbd when ae stopped. + - net: hns: Free irq when exit from abnormal branch + - net: hns: Avoid net reset caused by pause frames storm + - net: hns: Fix ntuple-filters status error. + - net: hns: Add mac pcs config when enable|disable mac + - net: hns: Fix ping failed when use net bridge and send multicast + - net: hns3: use HNS3_NIC_STATE_INITED to indicate the initialization state of + enet + - net: hns3: add set_default_reset_request in the hnae3_ae_ops + - net: hns3: provide some interface & information for the client + - net: hns3: adjust the location of clearing the table when doing reset + - net: hns3: enable/disable ring in the enet while doing UP/DOWN + - net: hns3: use HNS3_NIC_STATE_RESETTING to indicate resetting + - net: hns3: ignore new coming low-level reset while doing high-level reset + - net: hns3: move some reset information from hnae3_handle into + hclge_dev/hclgevf_dev + - net: hns3: adjust the process of PF reset + - net: hns3: call roce's reset notify callback when resetting + - net: hns3: add error handler for hclge_reset() + - net: hns3: fix for cmd queue memory not freed problem during reset + - net: hns3: Remove set but not used variable 'reset_level' + - net: hns3: fix spelling mistake, "assertting" -> "asserting" + - net: hns3: add reset_hdev to reinit the hdev in VF's reset process + - net: hns3: adjust VF's reset process + - net: hns3: add reset handling for VF when doing PF reset + - net: hns3: add reset handling for VF when doing Core/Global/IMP reset + - net: hns3: stop handling command queue while resetting VF + - net: hns3: add error handler for hclgevf_reset() + - net: hns3: stop napi polling when HNS3_NIC_STATE_DOWN is set + - net: hns3: implement the IMP reset processing for PF + - net: hns3: add PCIe FLR support for PF + - net: hns3: do VF's pci re-initialization while PF doing FLR + - net: hns3: add PCIe FLR support for VF + - net: hns3: Enable HW GRO for Rev B(=0x21) HNS3 hardware + - net: hns3: Add handling of GRO Pkts not fully RX'ed in NAPI poll + - net: hns3: Add support for ethtool -K to enable/disable HW GRO + - net: hns3: Add skb chain when num of RX buf exceeds MAX_SKB_FRAGS + - net: hns3: Adds GRO params to SKB for the stack + - scsi: hisi_sas: use dma_set_mask_and_coherent + - scsi: hisi_sas: Create separate host attributes per HBA + - scsi: hisi_sas: Add support for interrupt converge for v3 hw + - scsi: hisi_sas: Add support for interrupt coalescing for v3 hw + - scsi: hisi_sas: Relocate some codes to avoid an unused check + - scsi: hisi_sas: change the time of SAS SSP connection + - net: hns3: fix spelling mistake "failded" -> "failed" + - net: hns3: Support two vlan header when setting mtu + - net: hns3: Refactor mac mtu setting related functions + - net: hns3: Add vport alive state checking support + - net: hns3: Add mtu setting support for vf + - net: hns3: up/down netdev in hclge module when setting mtu + - net: hns3: add common validation in hclge_dcb + - net: hns3: Add debugfs framework registration + - net: hns3: Add "queue info" query function + - net: hns3: Add "FD flow table" info query function + - net: hns3: Add "tc config" info query function + - net: hns3: Add "tm config" info query function + - net: hns3: Add "qos pause" config info query function + - net: hns3: Add "qos prio map" info query function + - net: hns3: Add "qos buffer" config info query function + - net: hns3: Support "ethtool -d" for HNS3 VF driver + - net: hns3: Adds support to dump(using ethool-d) PCIe regs in HNS3 PF driver + - net: hns3: remove existing process error functions and reorder hw_blk table + - net: hns3: rename enable error interrupt functions + - net: hns3: re-enable error interrupts on hw reset + - net: hns3: deletes unnecessary settings of the descriptor data + - net: hns3: rename process_hw_error function + - net: hns3: add optimization in the hclge_hw_error_set_state + - net: hns3: add handling of hw ras errors using new set of commands + - net: hns3: deleted logging 1 bit errors + - net: hns3: add handling of hw errors reported through MSIX + - net: hns3: add handling of hw errors of MAC + - net: hns3: handle hw errors of PPP PF + - net: hns3: handle hw errors of PPU(RCB) + - net: hns3: handle hw errors of SSU + - net: hns3: add handling of RDMA RAS errors + - net: hns3: fix spelling mistake "offser" -> "offset" + - scsi: hisi_sas: Fix warnings detected by sparse + - scsi: hisi_sas: Relocate some code to reduce complexity + - scsi: hisi_sas: Make sg_tablesize consistent value + - hns3: prevent building without CONFIG_INET + - net: hns3: Add "bd info" query function + - net: hns3: Add "manager table" information query function + - net: hns3: Add "status register" information query function + - net: hns3: Add "dcb register" status information query function + - net: hns3: Add "queue map" information query function + - net: hns3: Add "tm map" status information query function + - net: hns3: fix error handling int the hns3_get_vector_ring_chain + - net: hns3: uninitialize pci in the hclgevf_uninit + - net: hns3: fix napi_disable not return problem + - net: hns3: update some variables while hclge_reset()/hclgevf_reset() done + - net: hns3: remove unnecessary configuration recapture while resetting + - net: hns3: fix incomplete uninitialization of IRQ in the + hns3_nic_uninit_vector_data() + - net: hns3: update coalesce param per second + - net: hns3: remove 1000M/half support of phy + - net: hns3: synchronize speed and duplex from phy when phy link up + - net: hns3: getting tx and dv buffer size through firmware + - net: hns3: aligning buffer size in SSU to 256 bytes + - net: hns3: fix a SSU buffer checking bug + - scsi: hisi_sas: Add support for DIF feature for v2 hw + - net: hns3: refine the handle for hns3_nic_net_open/stop() + - net: hns3: change default tc state to close + - net: hns3: fix a bug caused by udelay + - net: hns3: add max vector number check for pf + - net: hns3: reset tqp while doing DOWN operation + - net: hns3: fix vf id check issue when add flow director rule + - net: hns3: don't restore rules when flow director is disabled + - net: hns3: fix the descriptor index when get rss type + - net: hns3: remove redundant variable initialization + - net: hns3: call hns3_nic_net_open() while doing HNAE3_UP_CLIENT + * Cosmic update: 4.18.20 upstream stable release (LP: #1810821) + - powerpc/traps: restore recoverability of machine_check interrupts + - powerpc/64/module: REL32 relocation range check + - powerpc/mm: Fix page table dump to work on Radix + - powerpc/mm: fix always true/false warning in slice.c + - drm/amd/display: fix bug of accessing invalid memory + - Input: wm97xx-ts - fix exit path + - powerpc/Makefile: Fix PPC_BOOK3S_64 ASFLAGS + - powerpc/eeh: Fix possible null deref in eeh_dump_dev_log() + - tty: check name length in tty_find_polling_driver() + - tracing/kprobes: Check the probe on unloaded module correctly + - drm/amdgpu/powerplay: fix missing break in switch statements + - ARM: imx_v6_v7_defconfig: Select CONFIG_TMPFS_POSIX_ACL + - powerpc/nohash: fix undefined behaviour when testing page size support + - powerpc/mm: Don't report hugepage tables as memory leaks when using kmemleak + - drm/omap: fix memory barrier bug in DMM driver + - drm/amd/display: fix gamma not being applied + - drm/hisilicon: hibmc: Do not carry error code in HiBMC framebuffer pointer + - media: pci: cx23885: handle adding to list failure + - media: coda: don't overwrite h.264 profile_idc on decoder instance + - MIPS: kexec: Mark CPU offline before disabling local IRQ + - powerpc/boot: Ensure _zimage_start is a weak symbol + - powerpc/memtrace: Remove memory in chunks + - MIPS/PCI: Call pcie_bus_configure_settings() to set MPS/MRRS + - sc16is7xx: Fix for multi-channel stall + - media: tvp5150: fix width alignment during set_selection() + - powerpc/selftests: Wait all threads to join + - staging:iio:ad7606: fix voltage scales + - drm: rcar-du: Update Gen3 output limitations + - drm/amdgpu: Fix SDMA TO after GPU reset v3 + - staging: most: video: fix registration of an empty comp core_component + - 9p locks: fix glock.client_id leak in do_lock + - udf: Prevent write-unsupported filesystem to be remounted read-write + - ARM: dts: imx6ull: keep IMX6UL_ prefix for signals on both i.MX6UL and + i.MX6ULL + - 9p: clear dangling pointers in p9stat_free + - ovl: fix error handling in ovl_verify_set_fh() + - ovl: check whiteout in ovl_create_over_whiteout() + - serial: sh-sci: Fix could not remove dev_attr_rx_fifo_timeout + - scsi: qla2xxx: Fix incorrect port speed being set for FC adapters + - scsi: qla2xxx: Fix process response queue for ISP26XX and above + - scsi: qla2xxx: Remove stale debug trace message from tcm_qla2xxx + - scsi: qla2xxx: shutdown chip if reset fail + - scsi: qla2xxx: Fix duplicate switch database entries + - scsi: qla2xxx: Fix driver hang when FC-NVMe LUNs are configured + - fuse: Fix use-after-free in fuse_dev_do_read() + - fuse: Fix use-after-free in fuse_dev_do_write() + - fuse: fix blocked_waitq wakeup + - fuse: set FR_SENT while locked + - ovl: fix recursive oi->lock in ovl_link() + - scsi: qla2xxx: Fix re-using LoopID when handle is in use + - scsi: qla2xxx: Fix NVMe session hang on unload + - arm64: dts: stratix10: Support Ethernet Jumbo frame + - arm64: dts: stratix10: fix multicast filtering + - clk: meson-gxbb: set fclk_div3 as CLK_IS_CRITICAL + - clk: meson: axg: mark fdiv2 and fdiv3 as critical + - zram: close udev startup race condition as default groups + - MIPS: Loongson-3: Fix CPU UART irq delivery problem + - MIPS: Loongson-3: Fix BRIDGE irq delivery problem + - xtensa: add NOTES section to the linker script + - xtensa: make sure bFLT stack is 16 byte aligned + - xtensa: fix boot parameters address translation + - um: Drop own definition of PTRACE_SYSEMU/_SINGLESTEP + - clk: s2mps11: Fix matching when built as module and DT node contains + compatible + - clk: at91: Fix division by zero in PLL recalc_rate() + - clk: sunxi-ng: h6: fix bus clocks' divider position + - clk: rockchip: fix wrong mmc sample phase shift for rk3328 + - clk: rockchip: Fix static checker warning in rockchip_ddrclk_get_parent call + - libceph: bump CEPH_MSG_MAX_DATA_LEN + - Revert "ceph: fix dentry leak in splice_dentry()" + - thermal: core: Fix use-after-free in thermal_cooling_device_destroy_sysfs + - mach64: fix display corruption on big endian machines + - mach64: fix image corruption due to reading accelerator registers + - acpi/nfit, x86/mce: Handle only uncorrectable machine checks + - acpi/nfit, x86/mce: Validate a MCE's address before using it + - acpi, nfit: Fix ARS overflow continuation + - reset: hisilicon: fix potential NULL pointer dereference + - vhost/scsi: truncate T10 PI iov_iter to prot_bytes + - scsi: qla2xxx: Initialize port speed to avoid setting lower speed + - SCSI: fix queue cleanup race before queue initialization is done + - Revert "powerpc/8xx: Use L1 entry APG to handle _PAGE_ACCESSED for + CONFIG_SWAP" + - soc: ti: QMSS: Fix usage of irq_set_affinity_hint + - ocfs2: fix a misuse a of brelse after failing ocfs2_check_dir_entry + - ocfs2: free up write context when direct IO failed + - mm: thp: relax __GFP_THISNODE for MADV_HUGEPAGE mappings + - memory_hotplug: cond_resched in __remove_pages + - netfilter: conntrack: fix calculation of next bucket number in early_drop + - ARM: 8809/1: proc-v7: fix Thumb annotation of cpu_v7_hvc_switch_mm + - bonding/802.3ad: fix link_failure_count tracking + - mtd: spi-nor: cadence-quadspi: Return error code in + cqspi_direct_read_execute() + - mtd: nand: Fix nanddev_neraseblocks() + - mtd: docg3: don't set conflicting BCH_CONST_PARAMS option + - hwmon: (core) Fix double-free in __hwmon_device_register() + - perf stat: Handle different PMU names with common prefix + - of, numa: Validate some distance map rules + - x86/cpu/vmware: Do not trace vmware_sched_clock() + - x86/hyper-v: Enable PIT shutdown quirk + - termios, tty/tty_baudrate.c: fix buffer overrun + - arch/alpha, termios: implement BOTHER, IBSHIFT and termios2 + - watchdog/core: Add missing prototypes for weak functions + - btrfs: fix pinned underflow after transaction aborted + - Btrfs: fix cur_offset in the error case for nocow + - Btrfs: fix infinite loop on inode eviction after deduplication of eof block + - Btrfs: fix data corruption due to cloning of eof block + - clockevents/drivers/i8253: Add support for PIT shutdown quirk + - ext4: add missing brelse() update_backups()'s error path + - ext4: add missing brelse() in set_flexbg_block_bitmap()'s error path + - ext4: add missing brelse() add_new_gdb_meta_bg()'s error path + - ext4: avoid potential extra brelse in setup_new_flex_group_blocks() + - ext4: missing !bh check in ext4_xattr_inode_write() + - ext4: fix possible inode leak in the retry loop of ext4_resize_fs() + - ext4: avoid buffer leak on shutdown in ext4_mark_iloc_dirty() + - ext4: avoid buffer leak in ext4_orphan_add() after prior errors + - ext4: fix missing cleanup if ext4_alloc_flex_bg_array() fails while resizing + - ext4: avoid possible double brelse() in add_new_gdb() on error path + - ext4: fix possible leak of sbi->s_group_desc_leak in error path + - ext4: fix possible leak of s_journal_flag_rwsem in error path + - ext4: fix buffer leak in ext4_xattr_get_block() on error path + - ext4: release bs.bh before re-using in ext4_xattr_block_find() + - ext4: fix buffer leak in ext4_xattr_move_to_block() on error path + - ext4: fix buffer leak in ext4_expand_extra_isize_ea() on error path + - ext4: fix buffer leak in __ext4_read_dirblock() on error path + - mount: Prevent MNT_DETACH from disconnecting locked mounts + - mnt: fix __detach_mounts infinite loop + - kdb: use correct pointer when 'btc' calls 'btt' + - kdb: print real address of pointers instead of hashed addresses + - sunrpc: correct the computation for page_ptr when truncating + - NFSv4: Don't exit the state manager without clearing + NFS4CLNT_MANAGER_RUNNING + - nfsd: COPY and CLONE operations require the saved filehandle to be set + - rtc: hctosys: Add missing range error reporting + - fuse: fix use-after-free in fuse_direct_IO() + - fuse: fix leaked notify reply + - selinux: check length properly in SCTP bind hook + - configfs: replace strncpy with memcpy + - gfs2: Put bitmap buffers in put_super + - gfs2: Fix metadata read-ahead during truncate (2) + - libata: blacklist SAMSUNG MZ7TD256HAFV-000L9 SSD + - crypto: user - fix leaking uninitialized memory to userspace + - lib/ubsan.c: don't mark __ubsan_handle_builtin_unreachable as noreturn + - hugetlbfs: fix kernel BUG at fs/hugetlbfs/inode.c:444! + - mm/swapfile.c: use kvzalloc for swap_info_struct allocation + - efi/arm/libstub: Pack FDT after populating it + - drm/rockchip: Allow driver to be shutdown on reboot/kexec + - drm/msm: fix OF child-node lookup + - drm/amdgpu: Fix typo in amdgpu_vmid_mgr_init + - drm/amdgpu: add missing CHIP_HAINAN in amdgpu_ucode_get_load_type + - drm/nouveau: Check backlight IDs are >= 0, not > 0 + - drm/nouveau: Fix nv50_mstc->best_encoder() + - drm/amd/powerplay: Enable/Disable NBPSTATE on On/OFF of UVD + - drm/etnaviv: fix bogus fence complete check in timeout handler + - drm/dp_mst: Check if primary mstb is null + - drm: panel-orientation-quirks: Add quirk for Acer One 10 (S1003) + - drm/i915/dp: Link train Fallback on eDP only if fallback link BW can fit + panel's native mode + - drm/i915: Restore vblank interrupts earlier + - drm/i915: Don't unset intel_connector->mst_port + - drm/i915: Skip vcpi allocation for MSTB ports that are gone + - drm/i915: Large page offsets for pread/pwrite + - drm/i915/dp: Fix link retraining comment in intel_dp_long_pulse() + - drm/i915/dp: Restrict link retrain workaround to external monitors + - drm/i915/hdmi: Add HDMI 2.0 audio clock recovery N values + - drm/i915: Fix error handling for the NV12 fb dimensions check + - drm/i915: Fix ilk+ watermarks when disabling pipes + - drm/i915: Compare user's 64b GTT offset even on 32b + - drm/i915: Don't oops during modeset shutdown after lpe audio deinit + - drm/i915: Mark pin flags as u64 + - drm/i915/ringbuffer: Delay after EMIT_INVALIDATE for gen4/gen5 + - drm/i915/execlists: Force write serialisation into context image vs + execution + - drm/i915: Fix possible race in intel_dp_add_mst_connector() + - CONFIG_XEN_PV breaks xen_create_contiguous_region on ARM + - Linux 4.18.20 + * Cosmic update: 4.18.19 upstream stable release (LP: #1810820) + - mtd: rawnand: marvell: fix the IRQ handler complete() condition + - mtd: spi-nor: fsl-quadspi: fix read error for flash size larger than 16MB + - mtd: spi-nor: intel-spi: Add support for Intel Ice Lake SPI serial flash + - mtd: spi-nor: fsl-quadspi: Don't let -EINVAL on the bus + - spi: spi-mem: Adjust op len based on message/transfer size limitations + - spi: bcm-qspi: switch back to reading flash using smaller chunks + - spi: bcm-qspi: fix calculation of address length + - bcache: trace missed reading by cache_missed + - bcache: correct dirty data statistics + - bcache: fix miss key refill->end in writeback + - hwmon: (pmbus) Fix page count auto-detection. + - jffs2: free jffs2_sb_info through jffs2_kill_sb() + - block: setup bounce bio_sets properly + - block: don't deal with discard limit in blkdev_issue_discard() + - block: make sure discard bio is aligned with logical block size + - block: make sure writesame bio is aligned with logical block size + - cpufreq: conservative: Take limits changes into account properly + - dma-mapping: fix panic caused by passing empty cma command line argument + - pcmcia: Implement CLKRUN protocol disabling for Ricoh bridges + - ACPI / OSL: Use 'jiffies' as the time bassis for acpi_os_get_timer() + - ACPICA: AML Parser: fix parse loop to correctly skip erroneous extended + opcodes + - kprobes/x86: Use preempt_enable() in optimized_callback() + - mailbox: PCC: handle parse error + - acpi, nfit: Fix Address Range Scrub completion tracking + - parisc: Fix address in HPMC IVA + - parisc: Fix map_pages() to not overwrite existing pte entries + - parisc: Fix exported address of os_hpmc handler + - ALSA: hda - Add quirk for ASUS G751 laptop + - ALSA: hda - Fix headphone pin config for ASUS G751 + - ALSA: hda - Add mic quirk for the Lenovo G50-30 (17aa:3905) + - ALSA: hda: Add 2 more models to the power_save blacklist + - ALSA: ca0106: Disable IZD on SB0570 DAC to fix audio pops + - x86/speculation: Enable cross-hyperthread spectre v2 STIBP mitigation + - x86/xen: Fix boot loader version reported for PVH guests + - x86/corruption-check: Fix panic in memory_corruption_check() when boot + option without value is provided + - x86/mm/pat: Disable preemption around __flush_tlb_all() + - ARM: dts: exynos: Disable pull control for MAX8997 interrupts on Origen + - drm: fix use of freed memory in drm_mode_setcrtc + - bpf: do not blindly change rlimit in reuseport net selftest + - nvme: remove ns sibling before clearing path + - Revert "perf tools: Fix PMU term format max value calculation" + - selftests: usbip: add wait after attach and before checking port status + - xsk: do not call synchronize_net() under RCU read lock + - xfrm: policy: use hlist rcu variants on insert + - perf vendor events intel: Fix wrong filter_band* values for uncore events + - nfp: flower: fix pedit set actions for multiple partial masks + - nfp: flower: use offsets provided by pedit instead of index for ipv6 + - sched/fair: Fix the min_vruntime update logic in dequeue_entity() + - perf evsel: Store ids for events with their own cpus + perf_event__synthesize_event_update_cpus + - perf tools: Fix use of alternatives to find JDIR + - perf cpu_map: Align cpu map synthesized events properly. + - perf report: Don't crash on invalid inline debug information + - x86/fpu: Remove second definition of fpu in __fpu__restore_sig() + - net: qla3xxx: Remove overflowing shift statement + - drm: Get ref on CRTC commit object when waiting for flip_done + - selftests: ftrace: Add synthetic event syntax testcase + - i2c: rcar: cleanup DMA for all kinds of failure + - net: socionext: Reset tx queue in ndo_stop + - locking/lockdep: Fix debug_locks off performance problem + - netfilter: xt_nat: fix DNAT target for shifted portmap ranges + - ataflop: fix error handling during setup + - swim: fix cleanup on setup error + - arm64: cpufeature: ctr: Fix cpu capability check for late CPUs + - nfp: devlink port split support for 1x100G CXP NIC + - tun: Consistently configure generic netdev params via rtnetlink + - s390/sthyi: Fix machine name validity indication + - hwmon: (pwm-fan) Set fan speed to 0 on suspend + - lightnvm: pblk: fix race on sysfs line state + - lightnvm: pblk: fix two sleep-in-atomic-context bugs + - lightnvm: pblk: fix race condition on metadata I/O + - spi: spi-ep93xx: Use dma_data_direction for ep93xx_spi_dma_{finish,prepare} + - perf tools: Free temporary 'sys' string in read_event_files() + - perf tools: Cleanup trace-event-info 'tdata' leak + - perf strbuf: Match va_{add,copy} with va_end + - cpupower: Fix coredump on VMWare + - bcache: Populate writeback_rate_minimum attribute + - mmc: sdhci-pci-o2micro: Add quirk for O2 Micro dev 0x8620 rev 0x01 + - sdhci: acpi: add free_slot callback + - mtd: rawnand: denali: set SPARE_AREA_SKIP_BYTES register to 8 if unset + - iwlwifi: pcie: avoid empty free RB queue + - iwlwifi: mvm: clear HW_RESTART_REQUESTED when stopping the interface + - iwlwifi: mvm: check for n_profiles validity in EWRD ACPI + - x86/olpc: Indicate that legacy PC XO-1 platform should not register RTC + - ACPI/PPTT: Handle architecturally unknown cache types + - ACPI / PM: LPIT: Register sysfs attributes based on FADT + - ACPI / processor: Fix the return value of acpi_processor_ids_walk() + - cpufreq: dt: Try freeing static OPPs only if we have added them + - x86/intel_rdt: Show missing resctrl mount options + - mtd: rawnand: atmel: Fix potential NULL pointer dereference + - signal: Introduce COMPAT_SIGMINSTKSZ for use in compat_sys_sigaltstack + - ice: fix changing of ring descriptor size (ethtool -G) + - ice: update fw version check logic + - net: hns3: Fix for packet buffer setting bug + - Bluetooth: btbcm: Add entry for BCM4335C0 UART bluetooth + - x86: boot: Fix EFI stub alignment + - net: hns3: Add nic state check before calling netif_tx_wake_queue + - net: hns3: Fix ets validate issue + - pinctrl: sunxi: fix 'pctrl->functions' allocation in + sunxi_pinctrl_build_state + - pinctrl: qcom: spmi-mpp: Fix err handling of pmic_mpp_set_mux + - brcmfmac: fix for proper support of 160MHz bandwidth + - net: hns3: Check hdev state when getting link status + - net: hns3: Set STATE_DOWN bit of hdev state when stopping net + - net: phy: phylink: ensure the carrier is off when starting phylink + - block, bfq: correctly charge and reset entity service in all cases + - arm64: entry: Allow handling of undefined instructions from EL1 + - kprobes: Return error if we fail to reuse kprobe instead of BUG_ON() + - spi: gpio: No MISO does not imply no RX + - ACPI / LPSS: Add alternative ACPI HIDs for Cherry Trail DMA controllers + - pinctrl: qcom: spmi-mpp: Fix drive strength setting + - bpf/verifier: fix verifier instability + - failover: Add missing check to validate 'slave_dev' in + net_failover_slave_unregister + - perf tests: Fix record+probe_libc_inet_pton.sh without ping's debuginfo + - pinctrl: spmi-mpp: Fix pmic_mpp_config_get() to be compliant + - pinctrl: ssbi-gpio: Fix pm8xxx_pin_config_get() to be compliant + - net: hns3: Preserve vlan 0 in hardware table + - net: hns3: Fix ping exited problem when doing lp selftest + - net: hns3: Fix for vf vlan delete failed problem + - net: dsa: mv88e6xxx: Fix writing to a PHY page. + - rsi: fix memory alignment issue in ARM32 platforms + - iwlwifi: mvm: fix BAR seq ctrl reporting + - gpio: brcmstb: allow 0 width GPIO banks + - ixgbe: disallow IPsec Tx offload when in SR-IOV mode + - ixgbevf: VF2VF TCP RSS + - ath10k: schedule hardware restart if WMI command times out + - libata: Apply NOLPM quirk for SAMSUNG MZ7TD256HAFV-000L9 + - thermal: rcar_thermal: Prevent doing work after unbind + - thermal: da9062/61: Prevent hardware access during system suspend + - cgroup, netclassid: add a preemption point to write_classid + - net: stmmac: dwmac-sun8i: fix OF child-node lookup + - f2fs: fix to account IO correctly for cgroup writeback + - MD: Memory leak when flush bio size is zero + - md: fix memleak for mempool + - scsi: esp_scsi: Track residual for PIO transfers + - scsi: ufs: Schedule clk gating work on correct queue + - UAPI: ndctl: Fix g++-unsupported initialisation in headers + - KVM: nVMX: Clear reserved bits of #DB exit qualification + - scsi: megaraid_sas: fix a missing-check bug + - RDMA/core: Do not expose unsupported counters + - IB/ipoib: Clear IPCB before icmp_send + - RDMA/bnxt_re: Avoid accessing nq->bar_reg_iomem in failure case + - RDMA/bnxt_re: Fix recursive lock warning in debug kernel + - usb: host: ohci-at91: fix request of irq for optional gpio + - PCI: mediatek: Fix mtk_pcie_find_port() endpoint/port matching logic + - PCI: cadence: Use AXI region 0 to signal interrupts from EP + - usb: typec: tcpm: Report back negotiated PPS voltage and current + - tpm: suppress transmit cmd error logs when TPM 1.2 is disabled/deactivated + - f2fs: clear PageError on the read path + - Drivers: hv: vmbus: Use cpumask_var_t for on-stack cpu mask + - VMCI: Resource wildcard match fixed + - PCI / ACPI: Enable wake automatically for power managed bridges + - xprtrdma: Reset credit grant properly after a disconnect + - irqchip/pdc: Setup all edge interrupts as rising edge at GIC + - usb: dwc2: fix a race with external vbus supply + - usb: gadget: udc: atmel: handle at91sam9rl PMC + - ext4: fix argument checking in EXT4_IOC_MOVE_EXT + - MD: fix invalid stored role for a disk + - nvmem: check the return value of nvmem_add_cells() + - xhci: Avoid USB autosuspend when resuming USB2 ports. + - f2fs: fix to recover inode's crtime during POR + - f2fs: fix to recover inode's i_flags during POR + - PCI/MSI: Warn and return error if driver enables MSI/MSI-X twice + - coresight: etb10: Fix handling of perf mode + - PCI: dwc: pci-dra7xx: Enable errata i870 for both EP and RC mode + - crypto: caam - fix implicit casts in endianness helpers + - usb: chipidea: Prevent unbalanced IRQ disable + - Smack: ptrace capability use fixes + - driver/dma/ioat: Call del_timer_sync() without holding prep_lock + - firmware: coreboot: Unmap ioregion after device population + - IB/mlx5: Allow transition of DCI QP to reset + - uio: ensure class is registered before devices + - scsi: lpfc: Correct soft lockup when running mds diagnostics + - scsi: lpfc: Correct race with abort on completion path + - f2fs: avoid sleeping under spin_lock + - f2fs: report error if quota off error during umount + - signal: Always deliver the kernel's SIGKILL and SIGSTOP to a pid namespace + init + - mfd: menelaus: Fix possible race condition and leak + - dmaengine: dma-jz4780: Return error if not probed from DT + - IB/rxe: fix for duplicate request processing and ack psns + - ALSA: hda: Check the non-cached stream buffers more explicitly + - cpupower: Fix AMD Family 0x17 msr_pstate size + - Revert "f2fs: fix to clear PG_checked flag in set_page_dirty()" + - f2fs: fix to recover cold bit of inode block during POR + - f2fs: fix to account IO correctly + - OPP: Free OPP table properly on performance state irregularities + - arm: dts: exynos: Add missing cooling device properties for CPUs + - ARM: dts: exynos: Convert exynos5250.dtsi to opp-v2 bindings + - ARM: dts: exynos: Mark 1 GHz CPU OPP as suspend OPP on Exynos5250 + - xen-swiotlb: use actually allocated size on check physical continuous + - tpm: Restore functionality to xen vtpm driver. + - xen/blkfront: avoid NULL blkfront_info dereference on device removal + - xen/balloon: Support xend-based toolstack + - xen: fix race in xen_qlock_wait() + - xen: make xen_qlock_wait() nestable + - xen/pvh: increase early stack size + - xen/pvh: don't try to unplug emulated devices + - libertas: don't set URB_ZERO_PACKET on IN USB transfer + - usbip:vudc: BUG kmalloc-2048 (Not tainted): Poison overwritten + - usb: typec: tcpm: Fix APDO PPS order checking to be based on voltage + - usb: gadget: udc: renesas_usb3: Fix b-device mode for "workaround" + - mt76: mt76x2: fix multi-interface beacon configuration + - iwlwifi: mvm: check return value of rs_rate_from_ucode_rate() + - net/ipv4: defensive cipso option parsing + - dmaengine: ppc4xx: fix off-by-one build failure + - libnvdimm: Hold reference on parent while scheduling async init + - libnvdimm, region: Fail badblocks listing for inactive regions + - libnvdimm, pmem: Fix badblocks population for 'raw' namespaces + - ASoC: intel: skylake: Add missing break in skl_tplg_get_token() + - ASoC: sta32x: set ->component pointer in private struct + - IB/mlx5: Fix MR cache initialization + - IB/rxe: Revise the ib_wr_opcode enum + - jbd2: fix use after free in jbd2_log_do_checkpoint() + - gfs2_meta: ->mount() can get NULL dev_name + - ext4: fix EXT4_IOC_SWAP_BOOT + - ext4: initialize retries variable in ext4_da_write_inline_data_begin() + - ext4: fix setattr project check in fssetxattr ioctl + - ext4: propagate error from dquot_initialize() in EXT4_IOC_FSSETXATTR + - ext4: fix use-after-free race in ext4_remount()'s error path + - selinux: fix mounting of cgroup2 under older policies + - HID: wacom: Work around HID descriptor bug in DTK-2451 and DTH-2452 + - HID: hiddev: fix potential Spectre v1 + - EDAC, amd64: Add Family 17h, models 10h-2fh support + - EDAC, {i7core,sb,skx}_edac: Fix uncorrected error counting + - EDAC, skx_edac: Fix logical channel intermediate decoding + - ARM: dts: dra7: Fix up unaligned access setting for PCIe EP + - PCI/ASPM: Fix link_state teardown on device removal + - PCI: Add Device IDs for Intel GPU "spurious interrupt" quirk + - PCI: vmd: White list for fast interrupt handlers + - signal/GenWQE: Fix sending of SIGKILL + - signal: Guard against negative signal numbers in copy_siginfo_from_user32 + - crypto: lrw - Fix out-of bounds access on counter overflow + - crypto: tcrypt - fix ghash-generic speed test + - crypto: aesni - don't use GFP_ATOMIC allocation if the request doesn't cross + a page in gcm + - crypto: morus/generic - fix for big endian systems + - crypto: aegis/generic - fix for big endian systems + - [config] remove deprecated CRYPTO_SPECK, CRYPTO_SPECK_NEON + - crypto: speck - remove Speck + - mm: /proc/pid/smaps_rollup: fix NULL pointer deref in smaps_pte_range() + - ima: fix showing large 'violations' or 'runtime_measurements_count' + - hugetlbfs: dirty pages as they are added to pagecache + - mm/rmap: map_pte() was not handling private ZONE_DEVICE page properly + - mm/hmm: fix race between hmm_mirror_unregister() and mmu_notifier callback + - KVM: arm/arm64: Ensure only THP is candidate for adjustment + - KVM: arm64: Fix caching of host MDCR_EL2 value + - kbuild: fix kernel/bounds.c 'W=1' warning + - iio: ad5064: Fix regulator handling + - iio: adc: imx25-gcq: Fix leak of device_node in mx25_gcq_setup_cfgs() + - iio: adc: at91: fix acking DRDY irq on simple conversions + - iio: adc: at91: fix wrong channel number in triggered buffer mode + - w1: omap-hdq: fix missing bus unregister at removal + - smb3: allow stats which track session and share reconnects to be reset + - smb3: do not attempt cifs operation in smb3 query info error path + - smb3: on kerberos mount if server doesn't specify auth type use krb5 + - printk: Fix panic caused by passing log_buf_len to command line + - genirq: Fix race on spurious interrupt detection + - NFC: nfcmrvl_uart: fix OF child-node lookup + - NFSv4.1: Fix the r/wsize checking + - nfs: Fix a missed page unlock after pg_doio() + - nfsd: correctly decrement odstate refcount in error path + - nfsd: Fix an Oops in free_session() + - lockd: fix access beyond unterminated strings in prints + - dm ioctl: harden copy_params()'s copy_from_user() from malicious users + - dm zoned: fix metadata block ref counting + - dm zoned: fix various dmz_get_mblock() issues + - media: ov7670: make "xclk" clock optional + - fsnotify: Fix busy inodes during unmount + - powerpc/msi: Fix compile error on mpc83xx + - powerpc/tm: Fix HFSCR bit for no suspend case + - powerpc/64s/hash: Do not use PPC_INVALIDATE_ERAT on CPUs before POWER9 + - MIPS: memset: Fix CPU_DADDI_WORKAROUNDS `small_fixup' regression + - MIPS: OCTEON: fix out of bounds array access on CN68XX + - rtc: ds1307: fix ds1339 wakealarm support + - rtc: cmos: Fix non-ACPI undefined reference to `hpet_rtc_interrupt' + - rtc: cmos: Remove the `use_acpi_alarm' module parameter for !ACPI + - power: supply: twl4030-charger: fix OF sibling-node lookup + - ocxl: Fix access to the AFU Descriptor Data + - iommu/arm-smmu: Ensure that page-table updates are visible before TLBI + - TC: Set DMA masks for devices + - net: bcmgenet: fix OF child-node lookup + - media: v4l2-tpg: fix kernel oops when enabling HFLIP and OSD + - Revert "media: dvbsky: use just one mutex for serializing device R/W ops" + - kgdboc: Passing ekgdboc to command line causes panic + - media: cec: make cec_get_edid_spa_location() an inline function + - media: cec: integrate cec_validate_phys_addr() in cec-api.c + - xen: fix xen_qlock_wait() + - xen: remove size limit of privcmd-buf mapping interface + - xen-blkfront: fix kernel panic with negotiate_mq error path + - media: cec: add new tx/rx status bits to detect aborts/timeouts + - media: cec: fix the Signal Free Time calculation + - media: cec: forgot to cancel delayed work + - media: em28xx: use a default format if TRY_FMT fails + - media: tvp5150: avoid going past array on v4l2_querymenu() + - media: em28xx: fix input name for Terratec AV 350 + - media: em28xx: make v4l2-compliance happier by starting sequence on zero + - media: em28xx: fix handler for vidioc_s_input() + - media: adv7604: when the EDID is cleared, unconfigure CEC as well + - media: adv7842: when the EDID is cleared, unconfigure CEC as well + - drm/mediatek: fix OF sibling-node lookup + - media: media colorspaces*.rst: rename AdobeRGB to opRGB + - media: replace ADOBERGB by OPRGB + - media: hdmi.h: rename ADOBE_RGB to OPRGB and ADOBE_YCC to OPYCC + - arm64: lse: remove -fcall-used-x0 flag + - rpmsg: smd: fix memory leak on channel create + - Cramfs: fix abad comparison when wrap-arounds occur + - ARM: dts: socfpga: Fix SDRAM node address for Arria10 + - arm64: dts: stratix10: Correct System Manager register size + - soc: qcom: rmtfs-mem: Validate that scm is available + - soc/tegra: pmc: Fix child-node lookup + - selftests/ftrace: Fix synthetic event test to delete event correctly + - selftests/powerpc: Fix ptrace tm failure + - tracing: Return -ENOENT if there is no target synthetic event + - btrfs: qgroup: Avoid calling qgroup functions if qgroup is not enabled + - btrfs: Handle owner mismatch gracefully when walking up tree + - btrfs: locking: Add extra check in btrfs_init_new_buffer() to avoid deadlock + - btrfs: fix error handling in free_log_tree + - btrfs: fix error handling in btrfs_dev_replace_start + - btrfs: Enhance btrfs_trim_fs function to handle error better + - btrfs: Ensure btrfs_trim_fs can trim the whole filesystem + - btrfs: iterate all devices during trim, instead of fs_devices::alloc_list + - btrfs: don't attempt to trim devices that don't support it + - btrfs: keep trim from interfering with transaction commits + - btrfs: wait on caching when putting the bg cache + - Btrfs: don't clean dirty pages during buffered writes + - btrfs: release metadata before running delayed refs + - btrfs: protect space cache inode alloc with GFP_NOFS + - btrfs: reset max_extent_size on clear in a bitmap + - btrfs: make sure we create all new block groups + - Btrfs: fix warning when replaying log after fsync of a tmpfile + - Btrfs: fix wrong dentries after fsync of file that got its parent replaced + - btrfs: qgroup: Dirty all qgroups before rescan + - Btrfs: fix null pointer dereference on compressed write path error + - Btrfs: fix assertion on fsync of regular file when using no-holes feature + - Btrfs: fix deadlock when writing out free space caches + - btrfs: reset max_extent_size properly + - btrfs: set max_extent_size properly + - btrfs: don't use ctl->free_space for max_extent_size + - btrfs: only free reserved extent if we didn't insert it + - btrfs: fix insert_reserved error handling + - btrfs: don't run delayed_iputs in commit + - btrfs: move the dio_sem higher up the callchain + - Btrfs: fix use-after-free during inode eviction + - Btrfs: fix use-after-free when dumping free space + - net: sched: Remove TCA_OPTIONS from policy + - bpf: wait for running BPF programs when updating map-in-map + - MD: fix invalid stored role for a disk - try2 + - Linux 4.18.19 + * Cosmic update: 4.18.18 upstream stable release (LP: #1810818) + - eeprom: at24: Add support for address-width property + - vfs: swap names of {do,vfs}_clone_file_range() + - bpf: fix partial copy of map_ptr when dst is scalar + - gpio: mxs: Get rid of external API call + - clk: sunxi-ng: sun4i: Set VCO and PLL bias current to lowest setting + - fscache: Fix incomplete initialisation of inline key space + - cachefiles: fix the race between cachefiles_bury_object() and rmdir(2) + - fscache: Fix out of bound read in long cookie keys + - ptp: fix Spectre v1 vulnerability + - drm/edid: VSDB yCBCr420 Deep Color mode bit definitions + - drm: fb-helper: Reject all pixel format changing requests + - RDMA/ucma: Fix Spectre v1 vulnerability + - IB/ucm: Fix Spectre v1 vulnerability + - cdc-acm: do not reset notification buffer index upon urb unlinking + - cdc-acm: correct counting of UART states in serial state notification + - cdc-acm: fix race between reset and control messaging + - usb: usbip: Fix BUG: KASAN: slab-out-of-bounds in vhci_hub_control() + - usb: gadget: storage: Fix Spectre v1 vulnerability + - usb: roles: intel_xhci: Fix Unbalanced pm_runtime_enable + - usb: xhci: pci: Enable Intel USB role mux on Apollo Lake platforms + - USB: fix the usbfs flag sanitization for control transfers + - tracing: Fix synthetic event to accept unsigned modifier + - tracing: Fix synthetic event to allow semicolon at end + - Input: elan_i2c - add ACPI ID for Lenovo IdeaPad 330-15IGM + - drm/sun4i: Fix an ulong overflow in the dotclock driver + - sched/fair: Fix throttle_list starvation with low CFS quota + - x86/tsc: Force inlining of cyc2ns bits + - x86, hibernate: Fix nosave_regions setup for hibernation + - x86/percpu: Fix this_cpu_read() + - x86/time: Correct the attribute on jiffies' definition + - x86/swiotlb: Enable swiotlb for > 4GiG RAM on 32-bit kernels + - x86/fpu: Fix i486 + no387 boot crash by only saving FPU registers on context + switch if there is an FPU + - Linux 4.18.18 + * Colour banding in HP Pavilion 15-n233sl integrated display (LP: #1794387) // + Cosmic update: 4.18.18 upstream stable release (LP: #1810818) + - drm/edid: Add 6 bpc quirk for BOE panel in HP Pavilion 15-n233sl + * lineout jack can't work on a Dell machine (LP: #1810892) + - ALSA: hda/realtek - Support Dell headset mode for New AIO platform + * Ethernet[10ec:8136] doesn't work after S3 with kernel 4.15.0.43.64 + (LP: #1809847) + - r8169: Enable MSI-X on RTL8106e + - r8169: re-enable MSI-X on RTL8168g + * Support new Realtek ethernet chips (LP: #1811055) + - r8169: Add support for new Realtek Ethernet + * PC SN720 NVMe WDC 256GB consumes more power in S2Idle than during long idle + (LP: #1805775) + - SAUCE: pci/nvme: prevent WDC PC SN720 NVMe from entering D3 and being + disabled + * Power consumption during s2idle is higher than long idle (Intel SSDPEKKF) + (LP: #1804588) + - SAUCE: pci: prevent Intel NVMe SSDPEKKF from entering D3 + - SAUCE: nvme: add quirk to not call disable function when suspending + * mpt3sas - driver using the wrong register to update a queue index in FW + (LP: #1810781) + - scsi: mpt3sas: As per MPI-spec, use combined reply queue for SAS3.5 + controllers when HBA supports more than 16 MSI-x vectors. + * Enable new Realtek card reader (LP: #1806335) + - USB: usb-storage: Add new IDs to ums-realtek + - SAUCE: (noup) USB: usb-storage: Make MMC support optional on ums-realtek + * The line-out on the Dell Dock station can't work (LP: #1806532) + - ALSA: usb-audio: Add vendor and product name for Dell WD19 Dock + * linux-buildinfo: pull out ABI information into its own package + (LP: #1806380) + - [Packaging] getabis -- handle all known package combinations + - [Packaging] getabis -- support parsing a simple version + * Fix Intel I210 doesn't work when ethernet cable gets plugged (LP: #1806818) + - igb: Fix an issue that PME is not enabled during runtime suspend + * Fix Terminus USB hub that may breaks connected USB devices after S3 + (LP: #1806850) + - USB: Wait for extra delay time after USB_PORT_FEAT_RESET for quirky hub + * Add support for 0cf3:535b QCA_ROME device (LP: #1807333) + - Bluetooth: btusb: Add support for 0cf3:535b QCA_ROME device + * the new Steam Controller driver breaks it on Steam (LP: #1798583) + - HID: steam: remove input device when a hid client is running. + * The mute led can't work anymore on the lenovo x1 carbon (LP: #1808465) + - ALSA: hda/realtek - Fix the mute LED regresion on Lenovo X1 Carbon + * click/pop noise in the headphone on several lenovo laptops (LP: #1805079) // + click/pop noise in the headphone on several lenovo laptops (LP: #1805079) + - ALSA: hda/realtek - fix the pop noise on headphone for lenovo laptops + * MAC address pass through on RTL8153-BND for docking station (LP: #1808729) + - r8152: Add support for MAC address pass through on RTL8153-BND + * powerpc test in ubuntu_kernel_selftest failed on Cosmic P8/P9 (LP: #1808318) + - selftests/powerpc: Fix Makefiles for headers_install change + * [Ubuntu] kernel: zcrypt: reinit ap queue state machine (LP: #1805414) + - s390/zcrypt: reinit ap queue state machine during device probe + * [UBUNTU] qeth: fix length check in SNMP processing (LP: #1805802) + - s390/qeth: fix length check in SNMP processing + * ASPEED server console output extremely slow after upgrade to 18.04 + (LP: #1808183) + - drm/ast: Remove existing framebuffers before loading driver + + -- Stefan Bader Mon, 14 Jan 2019 16:28:20 +0100 + +linux-azure (4.18.0-1007.7) cosmic; urgency=medium + + * linux-azure: 4.18.0-1007.7 -proposed tracker (LP: #1806422) + + * Packaging resync (LP: #1786013) + - [Packaging] update helper scripts + - [Packaging] update update.conf + + [ Ubuntu: 4.18.0-13.14 ] + + * linux: 4.18.0-13.14 -proposed tracker (LP: #1806409) + * linux-buildinfo: pull out ABI information into its own package + (LP: #1806380) + - [Packaging] limit preparation to linux-libc-dev in headers + - [Packaging] commonise debhelper invocation + - [Packaging] ABI -- accumulate abi information at the end of the build + - [Packaging] buildinfo -- add basic build information + - [Packaging] buildinfo -- add firmware information to the flavour ABI + - [Packaging] buildinfo -- add compiler information to the flavour ABI + - [Packaging] buildinfo -- add buildinfo support to getabis + * linux packages should own /usr/lib/linux/triggers (LP: #1770256) + - [Packaging] own /usr/lib/linux/triggers + * Regression: hinic performance degrades over time (LP: #1805248) + - Revert "net-next/hinic: add checksum offload and TSO support" + * CVE-2018-18710 + - cdrom: fix improper type cast, which can leat to information leak. + + -- Marcelo Henrique Cerri Thu, 06 Dec 2018 18:04:26 +0000 + +linux-azure (4.18.0-1006.6) cosmic; urgency=medium + + * linux-azure: 4.18.0-1006.6 -proposed tracker (LP: #1805244) + + * Accelerated networking (SR-IOV VF) broken in 18.10 daily (LP: #1794477) + - [Packaging] Move pci-hyperv and autofs4 back to linux-modules + + -- Marcelo Henrique Cerri Mon, 26 Nov 2018 21:48:04 +0000 + +linux-azure (4.18.0-1005.5) cosmic; urgency=medium + + * linux-azure: 4.18.0-1005.5 -proposed tracker (LP: #1802752) + + * [Hyper-V] Fix IRQ spreading on NVMe devices with lower numbers of channels + (LP: #1802358) + - SAUCE: genirq/affinity: Spread IRQs to all available NUMA nodes + - SAUCE: irq/matrix: Split out the CPU selection code into a helper + - SAUCE: irq/matrix: Spread managed interrupts on allocation + - SAUCE: genirq/matrix: Improve target CPU selection for managed interrupts. + + [ Ubuntu: 4.18.0-12.13 ] + + * linux: 4.18.0-12.13 -proposed tracker (LP: #1802743) + * [FEAT] Guest-dedicated Crypto Adapters (LP: #1787405) + - s390/zcrypt: Add ZAPQ inline function. + - s390/zcrypt: Review inline assembler constraints. + - s390/zcrypt: Integrate ap_asm.h into include/asm/ap.h. + - s390/zcrypt: fix ap_instructions_available() returncodes + - KVM: s390: vsie: simulate VCPU SIE entry/exit + - KVM: s390: introduce and use KVM_REQ_VSIE_RESTART + - KVM: s390: refactor crypto initialization + - s390: vfio-ap: base implementation of VFIO AP device driver + - s390: vfio-ap: register matrix device with VFIO mdev framework + - s390: vfio-ap: sysfs interfaces to configure adapters + - s390: vfio-ap: sysfs interfaces to configure domains + - s390: vfio-ap: sysfs interfaces to configure control domains + - s390: vfio-ap: sysfs interface to view matrix mdev matrix + - KVM: s390: interface to clear CRYCB masks + - s390: vfio-ap: implement mediated device open callback + - s390: vfio-ap: implement VFIO_DEVICE_GET_INFO ioctl + - s390: vfio-ap: zeroize the AP queues + - s390: vfio-ap: implement VFIO_DEVICE_RESET ioctl + - KVM: s390: Clear Crypto Control Block when using vSIE + - KVM: s390: vsie: Do the CRYCB validation first + - KVM: s390: vsie: Make use of CRYCB FORMAT2 clear + - KVM: s390: vsie: Allow CRYCB FORMAT-2 + - KVM: s390: vsie: allow CRYCB FORMAT-1 + - KVM: s390: vsie: allow CRYCB FORMAT-0 + - KVM: s390: vsie: allow guest FORMAT-0 CRYCB on host FORMAT-1 + - KVM: s390: vsie: allow guest FORMAT-1 CRYCB on host FORMAT-2 + - KVM: s390: vsie: allow guest FORMAT-0 CRYCB on host FORMAT-2 + - KVM: s390: device attrs to enable/disable AP interpretation + - KVM: s390: CPU model support for AP virtualization + - s390: doc: detailed specifications for AP virtualization + - KVM: s390: fix locking for crypto setting error path + - KVM: s390: Tracing APCB changes + - s390: vfio-ap: setup APCB mask using KVM dedicated function + - [Config:] Enable CONFIG_S390_AP_IOMMU and set CONFIG_VFIO_AP to module. + * Bypass of mount visibility through userns + mount propagation (LP: #1789161) + - mount: Retest MNT_LOCKED in do_umount + - mount: Don't allow copying MNT_UNBINDABLE|MNT_LOCKED mounts + * CVE-2018-18955: nested user namespaces with more than five extents + incorrectly grant privileges over inode (LP: #1801924) // CVE-2018-18955 + - userns: also map extents in the reverse map to kernel IDs + * kdump fail due to an IRQ storm (LP: #1797990) + - SAUCE: x86/PCI: Export find_cap() to be used in early PCI code + - SAUCE: x86/quirks: Add parameter to clear MSIs early on boot + - SAUCE: x86/quirks: Scan all busses for early PCI quirks + * crash in ENA driver on removing an interface (LP: #1802341) + - SAUCE: net: ena: fix crash during ena_remove() + * Ubuntu 18.04.1 - [s390x] Kernel panic while stressing network bonding + (LP: #1797367) + - s390/qeth: reduce hard-coded access to ccw channels + - s390/qeth: sanitize strings in debug messages + * Add checksum offload and TSO support for HiNIC adapters (LP: #1800664) + - net-next/hinic: add checksum offload and TSO support + * smartpqi updates for ubuntu 18.04.2 (LP: #1798208) + - scsi: smartpqi: improve handling for sync requests + - scsi: smartpqi: improve error checking for sync requests + - scsi: smartpqi: add inspur advantech ids + - scsi: smartpqi: fix critical ARM issue reading PQI index registers + - scsi: smartpqi: bump driver version to 1.1.4-130 + * [GLK/CLX] Enhanced IBRS (LP: #1786139) + - x86/speculation: Remove SPECTRE_V2_IBRS in enum spectre_v2_mitigation + - x86/speculation: Support Enhanced IBRS on future CPUs + * Enable keyboard wakeup for S2Idle laptops (LP: #1798552) + - Input: i8042 - enable keyboard wakeups by default when s2idle is used + * Overlayfs in user namespace leaks directory content of inaccessible + directories (LP: #1793458) // CVE-2018-6559 + - SAUCE: overlayfs: ensure mounter privileges when reading directories + * Update ENA driver to version 2.0.1K (LP: #1798182) + - net: ena: remove ndo_poll_controller + - net: ena: fix auto casting to boolean + - net: ena: minor performance improvement + - net: ena: complete host info to match latest ENA spec + - net: ena: introduce Low Latency Queues data structures according to ENA spec + - net: ena: add functions for handling Low Latency Queues in ena_com + - net: ena: add functions for handling Low Latency Queues in ena_netdev + - net: ena: use CSUM_CHECKED device indication to report skb's checksum status + - net: ena: explicit casting and initialization, and clearer error handling + - net: ena: limit refill Rx threshold to 256 to avoid latency issues + - net: ena: change rx copybreak default to reduce kernel memory pressure + - net: ena: remove redundant parameter in ena_com_admin_init() + - net: ena: update driver version to 2.0.1 + - net: ena: fix indentations in ena_defs for better readability + - net: ena: Fix Kconfig dependency on X86 + - net: ena: enable Low Latency Queues + - net: ena: fix compilation error in xtensa architecture + * Cosmic update: 4.18.17 upstream stable release (LP: #1802119) + - xfrm: Validate address prefix lengths in the xfrm selector. + - xfrm6: call kfree_skb when skb is toobig + - xfrm: reset transport header back to network header after all input + transforms ahave been applied + - xfrm: reset crypto_done when iterating over multiple input xfrms + - mac80211: Always report TX status + - cfg80211: reg: Init wiphy_idx in regulatory_hint_core() + - mac80211: fix pending queue hang due to TX_DROP + - cfg80211: Address some corner cases in scan result channel updating + - mac80211: TDLS: fix skb queue/priority assignment + - mac80211: fix TX status reporting for ieee80211s + - ARM: 8799/1: mm: fix pci_ioremap_io() offset check + - xfrm: validate template mode + - drm/i2c: tda9950: fix timeout counter check + - drm/i2c: tda9950: set MAX_RETRIES for errors only + - netfilter: bridge: Don't sabotage nf_hook calls from an l3mdev + - netfilter: conntrack: get rid of double sizeof + - arm64: hugetlb: Fix handling of young ptes + - ARM: dts: BCM63xx: Fix incorrect interrupt specifiers + - net: macb: Clean 64b dma addresses if they are not detected + - soc: fsl: qbman: qman: avoid allocating from non existing gen_pool + - soc: fsl: qe: Fix copy/paste bug in ucc_get_tdm_sync_shift() + - nl80211: Fix possible Spectre-v1 for NL80211_TXRATE_HT + - mac80211_hwsim: fix locking when iterating radios during ns exit + - mac80211_hwsim: fix race in radio destruction from netlink notifier + - mac80211_hwsim: do not omit multicast announce of first added radio + - Bluetooth: SMP: fix crash in unpairing + - pxa168fb: prepare the clock + - qed: Avoid implicit enum conversion in qed_set_tunn_cls_info + - qed: Fix mask parameter in qed_vf_prep_tunn_req_tlv + - qed: Avoid implicit enum conversion in qed_roce_mode_to_flavor + - qed: Avoid constant logical operation warning in qed_vf_pf_acquire + - qed: Avoid implicit enum conversion in qed_iwarp_parse_rx_pkt + - nl80211: Fix possible Spectre-v1 for CQM RSSI thresholds + - scsi: qedi: Initialize the stats mutex lock + - rxrpc: Fix checks as to whether we should set up a new call + - rxrpc: Fix RTT gathering + - rxrpc: Fix transport sockopts to get IPv4 errors on an IPv6 socket + - rxrpc: Fix error distribution + - netfilter: nft_set_rbtree: add missing rb_erase() in GC routine + - netfilter: avoid erronous array bounds warning + - asix: Check for supported Wake-on-LAN modes + - ax88179_178a: Check for supported Wake-on-LAN modes + - lan78xx: Check for supported Wake-on-LAN modes + - sr9800: Check for supported Wake-on-LAN modes + - r8152: Check for supported Wake-on-LAN Modes + - smsc75xx: Check for Wake-on-LAN modes + - smsc95xx: Check for Wake-on-LAN modes + - cfg80211: fix use-after-free in reg_process_hint() + - KVM: nVMX: Do not expose MPX VMX controls when guest MPX disabled + - KVM: x86: Do not use kvm_x86_ops->mpx_supported() directly + - KVM: nVMX: Fix emulation of VM_ENTRY_LOAD_BNDCFGS + - perf/core: Fix perf_pmu_unregister() locking + - perf/x86/intel/uncore: Use boot_cpu_data.phys_proc_id instead of hardcorded + physical package ID 0 + - perf/ring_buffer: Prevent concurent ring buffer access + - perf/x86/intel/uncore: Fix PCI BDF address of M3UPI on SKX + - perf/x86/amd/uncore: Set ThreadMask and SliceMask for L3 Cache perf events + - thunderbolt: Do not handle ICM events after domain is stopped + - thunderbolt: Initialize after IOMMUs + - net: fec: fix rare tx timeout + - declance: Fix continuation with the adapter identification message + - RISCV: Fix end PFN for low memory + - Revert "serial: 8250_dw: Fix runtime PM handling" + - locking/ww_mutex: Fix runtime warning in the WW mutex selftest + - drm/amd/display: Signal hw_done() after waiting for flip_done() + - be2net: don't flip hw_features when VXLANs are added/deleted + - powerpc/numa: Skip onlining a offline node in kdump path + - net: cxgb3_main: fix a missing-check bug + - yam: fix a missing-check bug + - ocfs2: fix crash in ocfs2_duplicate_clusters_by_page() + - mm/gup_benchmark: fix unsigned comparison to zero in __gup_benchmark_ioctl + - mm/migrate.c: split only transparent huge pages when allocation fails + - x86/paravirt: Fix some warning messages + - clk: mvebu: armada-37xx-periph: Remove unused var num_parents + - libertas: call into generic suspend code before turning off power + - perf report: Don't try to map ip to invalid map + - tls: Fix improper revert in zerocopy_from_iter + - HID: i2c-hid: Remove RESEND_REPORT_DESCR quirk and its handling + - compiler.h: Allow arch-specific asm/compiler.h + - ARM: dts: imx53-qsb: disable 1.2GHz OPP + - perf python: Use -Wno-redundant-decls to build with PYTHON=python3 + - perf record: Use unmapped IP for inline callchain cursors + - rxrpc: Don't check RXRPC_CALL_TX_LAST after calling rxrpc_rotate_tx_window() + - rxrpc: Carry call state out of locked section in rxrpc_rotate_tx_window() + - rxrpc: Only take the rwind and mtu values from latest ACK + - rxrpc: Fix connection-level abort handling + - KVM: x86: support CONFIG_KVM_AMD=y with CONFIG_CRYPTO_DEV_CCP_DD=m + - net: ena: fix warning in rmmod caused by double iounmap + - net: ena: fix rare bug when failed restart/resume is followed by driver + removal + - net: ena: fix NULL dereference due to untimely napi initialization + - gpio: Assign gpio_irq_chip::parents to non-stack pointer + - IB/mlx5: Unmap DMA addr from HCA before IOMMU + - rds: RDS (tcp) hangs on sendto() to unresponding address + - selftests: rtnetlink.sh explicitly requires bash. + - selftests: udpgso_bench.sh explicitly requires bash + - vmlinux.lds.h: Fix incomplete .text.exit discards + - vmlinux.lds.h: Fix linker warnings about orphan .LPBX sections + - afs: Fix cell proc list + - fs/fat/fatent.c: add cond_resched() to fat_count_free_clusters() + - Revert "mm: slowly shrink slabs with a relatively small number of objects" + - Revert "netfilter: ipv6: nf_defrag: drop skb dst before queueing" + - perf tools: Disable parallelism for 'make clean' + - bridge: do not add port to router list when receives query with source + 0.0.0.0 + - ipv6: mcast: fix a use-after-free in inet6_mc_check + - ipv6/ndisc: Preserve IPv6 control buffer if protocol error handlers are + called + - ipv6: rate-limit probes for neighbourless routes + - llc: set SOCK_RCU_FREE in llc_sap_add_socket() + - net: fec: don't dump RX FIFO register when not available + - net/ipv6: Fix index counter for unicast addresses in in6_dump_addrs + - net/mlx5e: fix csum adjustments caused by RXFCS + - net: sched: gred: pass the right attribute to gred_change_table_def() + - net: socket: fix a missing-check bug + - net: stmmac: Fix stmmac_mdio_reset() when building stmmac as modules + - net: udp: fix handling of CHECKSUM_COMPLETE packets + - r8169: fix NAPI handling under high load + - rtnetlink: Disallow FDB configuration for non-Ethernet device + - sctp: fix race on sctp_id2asoc + - tipc: fix unsafe rcu locking when accessing publication list + - udp6: fix encap return code for resubmitting + - vhost: Fix Spectre V1 vulnerability + - virtio_net: avoid using netif_tx_disable() for serializing tx routine + - ethtool: fix a privilege escalation bug + - bonding: fix length of actor system + - ip6_tunnel: Fix encapsulation layout + - openvswitch: Fix push/pop ethernet validation + - net: ipmr: fix unresolved entry dumps + - net/mlx5: Take only bit 24-26 of wqe.pftype_wq for page fault type + - net: bcmgenet: Poll internal PHY for GENETv5 + - net: sched: Fix for duplicate class dump + - net/sched: cls_api: add missing validation of netlink attributes + - net/ipv6: Allow onlink routes to have a device mismatch if it is the default + route + - sctp: fix the data size calculation in sctp_data_size + - sctp: not free the new asoc when sctp_wait_for_connect returns err + - net/mlx5: Fix memory leak when setting fpga ipsec caps + - net/smc: fix smc_buf_unuse to use the lgr pointer + - mlxsw: spectrum_switchdev: Don't ignore deletions of learned MACs + - net: bpfilter: use get_pid_task instead of pid_task + - net: drop skb on failure in ip_check_defrag() + - net: fix pskb_trim_rcsum_slow() with odd trim offset + - mlxsw: core: Fix devlink unregister flow + - sparc64: Export __node_distance. + - sparc64: Make corrupted user stacks more debuggable. + - sparc64: Make proc_id signed. + - sparc64: Set %l4 properly on trap return after handling signals. + - sparc64: Wire up compat getpeername and getsockname. + - sparc: Fix single-pcr perf event counter management. + - sparc: Fix syscall fallback bugs in VDSO. + - sparc: Throttle perf events properly. + - net: bridge: remove ipv6 zero address check in mcast queries + - Linux 4.18.17 + * Cosmic update: 4.18.16 upstream stable release (LP: #1802100) + - soundwire: Fix duplicate stream state assignment + - soundwire: Fix incorrect exit after configuring stream + - soundwire: Fix acquiring bus lock twice during master release + - media: af9035: prevent buffer overflow on write + - spi: gpio: Fix copy-and-paste error + - batman-adv: Avoid probe ELP information leak + - batman-adv: Fix segfault when writing to throughput_override + - batman-adv: Fix segfault when writing to sysfs elp_interval + - batman-adv: Prevent duplicated gateway_node entry + - batman-adv: Prevent duplicated nc_node entry + - batman-adv: Prevent duplicated softif_vlan entry + - batman-adv: Prevent duplicated global TT entry + - batman-adv: Prevent duplicated tvlv handler + - batman-adv: fix backbone_gw refcount on queue_work() failure + - batman-adv: fix hardif_neigh refcount on queue_work() failure + - cxgb4: fix abort_req_rss6 struct + - clocksource/drivers/ti-32k: Add CLOCK_SOURCE_SUSPEND_NONSTOP flag for non- + am43 SoCs + - scsi: ibmvscsis: Fix a stringop-overflow warning + - scsi: ibmvscsis: Ensure partition name is properly NUL terminated + - intel_th: pci: Add Ice Lake PCH support + - Input: atakbd - fix Atari keymap + - Input: atakbd - fix Atari CapsLock behaviour + - selftests: pmtu: properly redirect stderr to /dev/null + - net: emac: fix fixed-link setup for the RTL8363SB switch + - ravb: do not write 1 to reserved bits + - net/smc: fix non-blocking connect problem + - net/smc: fix sizeof to int comparison + - qed: Fix populating the invalid stag value in multi function mode. + - qed: Do not add VLAN 0 tag to untagged frames in multi-function mode. + - PCI: dwc: Fix scheduling while atomic issues + - RDMA/uverbs: Fix validity check for modify QP + - scsi: lpfc: Synchronize access to remoteport via rport + - drm: mali-dp: Call drm_crtc_vblank_reset on device init + - scsi: ipr: System hung while dlpar adding primary ipr adapter back + - scsi: sd: don't crash the host on invalid commands + - bpf: sockmap only allow ESTABLISHED sock state + - bpf: sockmap, fix transition through disconnect without close + - bpf: test_maps, only support ESTABLISHED socks + - net/mlx4: Use cpumask_available for eq->affinity_mask + - clocksource/drivers/fttmr010: Fix set_next_event handler + - RDMA/bnxt_re: Fix system crash during RDMA resource initialization + - RISC-V: include linux/ftrace.h in asm-prototypes.h + - iommu/rockchip: Free irqs in shutdown handler + - pinctrl/amd: poll InterruptEnable bits in amd_gpio_irq_set_type + - powerpc/tm: Fix userspace r13 corruption + - powerpc/tm: Avoid possible userspace r1 corruption on reclaim + - powerpc/numa: Use associativity if VPHN hcall is successful + - iommu/amd: Return devid as alias for ACPI HID devices + - x86/boot: Fix kexec booting failure in the SEV bit detection code + - Revert "vfs: fix freeze protection in mnt_want_write_file() for overlayfs" + - mremap: properly flush TLB before releasing the page + - ARC: build: Get rid of toolchain check + - ARC: build: Don't set CROSS_COMPILE in arch's Makefile + - Linux 4.18.16 + * Cosmic update: 4.18.15 upstream stable release (LP: #1802082) + - bnxt_en: Fix TX timeout during netpoll. + - bnxt_en: free hwrm resources, if driver probe fails. + - bonding: avoid possible dead-lock + - ip6_tunnel: be careful when accessing the inner header + - ip_tunnel: be careful when accessing the inner header + - ipv4: fix use-after-free in ip_cmsg_recv_dstaddr() + - ipv6: take rcu lock in rawv6_send_hdrinc() + - net: dsa: bcm_sf2: Call setup during switch resume + - net: hns: fix for unmapping problem when SMMU is on + - net: ipv4: update fnhe_pmtu when first hop's MTU changes + - net/ipv6: Display all addresses in output of /proc/net/if_inet6 + - netlabel: check for IPV4MASK in addrinfo_get + - net: mvpp2: Extract the correct ethtype from the skb for tx csum offload + - net: mvpp2: fix a txq_done race condition + - net: sched: Add policy validation for tc attributes + - net: sched: cls_u32: fix hnode refcounting + - net: systemport: Fix wake-up interrupt race during resume + - net/usb: cancel pending work when unbinding smsc75xx + - qlcnic: fix Tx descriptor corruption on 82xx devices + - qmi_wwan: Added support for Gemalto's Cinterion ALASxx WWAN interface + - rtnl: limit IFLA_NUM_TX_QUEUES and IFLA_NUM_RX_QUEUES to 4096 + - sctp: update dst pmtu with the correct daddr + - team: Forbid enslaving team device to itself + - tipc: fix flow control accounting for implicit connect + - udp: Unbreak modules that rely on external __skb_recv_udp() availability + - net: qualcomm: rmnet: Skip processing loopback packets + - net: qualcomm: rmnet: Fix incorrect allocation flag in transmit + - net: qualcomm: rmnet: Fix incorrect allocation flag in receive path + - tun: remove unused parameters + - tun: initialize napi_mutex unconditionally + - tun: napi flags belong to tfile + - net: stmmac: Fixup the tail addr setting in xmit path + - net/packet: fix packet drop as of virtio gso + - net: dsa: bcm_sf2: Fix unbind ordering + - net/mlx5e: Set vlan masks for all offloaded TC rules + - net: aquantia: memory corruption on jumbo frames + - net/mlx5: E-Switch, Fix out of bound access when setting vport rate + - bonding: pass link-local packets to bonding master also. + - bonding: fix warning message + - net: stmmac: Rework coalesce timer and fix multi-queue races + - nfp: avoid soft lockups under control message storm + - bnxt_en: don't try to offload VLAN 'modify' action + - net-ethtool: ETHTOOL_GUFO did not and should not require CAP_NET_ADMIN + - net: phy: phylink: fix SFP interface autodetection + - sfp: fix oops with ethtool -m + - tcp/dccp: fix lockdep issue when SYN is backlogged + - inet: make sure to grab rcu_read_lock before using ireq->ireq_opt + - net: dsa: b53: Keep CPU port as tagged in all VLANs + - rtnetlink: Fail dump if target netnsid is invalid + - bnxt_en: Fix VNIC reservations on the PF. + - net: ipv4: don't let PMTU updates increase route MTU + - net/mlx5: Check for SQ and not RQ state when modifying hairpin SQ + - bnxt_en: Fix enables field in HWRM_QUEUE_COS2BW_CFG request + - bnxt_en: get the reduced max_irqs by the ones used by RDMA + - net/ipv6: Remove extra call to ip6_convert_metrics for multipath case + - net/ipv6: stop leaking percpu memory in fib6 info + - net: mscc: fix the frame extraction into the skb + - qed: Fix shmem structure inconsistency between driver and the mfw. + - r8169: fix network stalls due to missing bit TXCFG_AUTO_FIFO + - r8169: set RX_MULTI_EN bit in RxConfig for 8168F-family chips + - vxlan: fill ttl inherit info + - ASoC: dapm: Fix NULL pointer deference on CODEC to CODEC DAIs + - ASoC: max98373: Added speaker FS gain cotnrol register to volatile. + - ASoC: rt5514: Fix the issue of the delay volume applied again + - selftests: android: move config up a level + - selftests: kselftest: Remove outdated comment + - ASoC: max98373: Added 10ms sleep after amp software reset + - ASoC: wm8804: Add ACPI support + - ASoC: sigmadsp: safeload should not have lower byte limit + - ASoC: q6routing: initialize data correctly + - selftests: add headers_install to lib.mk + - selftests/efivarfs: add required kernel configs + - selftests: memory-hotplug: add required configs + - ASoC: rsnd: adg: care clock-frequency size + - ASoC: rsnd: don't fallback to PIO mode when -EPROBE_DEFER + - hwmon: (nct6775) Fix access to fan pulse registers + - Fix cg_read_strcmp() + - ASoC: AMD: Ensure reset bit is cleared before configuring + - drm/pl111: Make sure of_device_id tables are NULL terminated + - Bluetooth: SMP: Fix trying to use non-existent local OOB data + - Bluetooth: Use correct tfm to generate OOB data + - Bluetooth: hci_ldisc: Free rw_semaphore on close + - mfd: omap-usb-host: Fix dts probe of children + - KVM: PPC: Book3S HV: Don't use compound_order to determine host mapping size + - scsi: iscsi: target: Don't use stack buffer for scatterlist + - scsi: qla2xxx: Fix an endian bug in fcpcmd_is_corrupted() + - sound: enable interrupt after dma buffer initialization + - sound: don't call skl_init_chip() to reset intel skl soc + - bpf: btf: Fix end boundary calculation for type section + - bpf: use __GFP_COMP while allocating page + - hwmon: (nct6775) Fix virtual temperature sources for NCT6796D + - hwmon: (nct6775) Fix RPM output for fan7 on NCT6796D + - stmmac: fix valid numbers of unicast filter entries + - hwmon: (nct6775) Use different register to get fan RPM for fan7 + - net: ethernet: ti: add missing GENERIC_ALLOCATOR dependency + - net: macb: disable scatter-gather for macb on sama5d3 + - ARM: dts: at91: add new compatibility string for macb on sama5d3 + - PCI: hv: support reporting serial number as slot information + - clk: x86: add "ether_clk" alias for Bay Trail / Cherry Trail + - clk: x86: Stop marking clocks as CLK_IS_CRITICAL + - pinctrl: cannonlake: Fix gpio base for GPP-E + - x86/kvm/lapic: always disable MMIO interface in x2APIC mode + - drm/amdgpu: Fix SDMA HQD destroy error on gfx_v7 + - drm/amdkfd: Change the control stack MTYPE from UC to NC on GFX9 + - drm/amdkfd: Fix ATS capablity was not reported correctly on some APUs + - mm: slowly shrink slabs with a relatively small number of objects + - mm/vmstat.c: fix outdated vmstat_text + - afs: Fix afs_server struct leak + - afs: Fix clearance of reply + - MIPS: Fix CONFIG_CMDLINE handling + - MIPS: VDSO: Always map near top of user memory + - mach64: detect the dot clock divider correctly on sparc + - vsprintf: Fix off-by-one bug in bstr_printf() processing dereferenced + pointers + - percpu: stop leaking bitmap metadata blocks + - perf script python: Fix export-to-postgresql.py occasional failure + - perf script python: Fix export-to-sqlite.py sample columns + - s390/cio: Fix how vfio-ccw checks pinned pages + - dm cache: destroy migration_cache if cache target registration failed + - dm: fix report zone remapping to account for partition offset + - dm linear: eliminate linear_end_io call if CONFIG_DM_ZONED disabled + - dm linear: fix linear_end_io conditional definition + - cgroup: Fix dom_cgrp propagation when enabling threaded mode + - Input: xpad - add support for Xbox1 PDP Camo series gamepad + - drm/nouveau/drm/nouveau: Grab runtime PM ref in nv50_mstc_detect() + - mmc: block: avoid multiblock reads for the last sector in SPI mode + - pinctrl: mcp23s08: fix irq and irqchip setup order + - arm64: perf: Reject stand-alone CHAIN events for PMUv3 + - mm/mmap.c: don't clobber partially overlapping VMA with MAP_FIXED_NOREPLACE + - mm/thp: fix call to mmu_notifier in set_pmd_migration_entry() v2 + - filesystem-dax: Fix dax_layout_busy_page() livelock + - mm: Preserve _PAGE_DEVMAP across mprotect() calls + - i2c: i2c-scmi: fix for i2c_smbus_write_block_data + - KVM: PPC: Book3S HV: Avoid crash from THP collapse during radix page fault + - Linux 4.18.15 + * Cosmic update: 4.18.14 upstream stable release (LP: #1801986) + - perf/core: Add sanity check to deal with pinned event failure + - mm: migration: fix migration of huge PMD shared pages + - mm, thp: fix mlocking THP page with migration enabled + - mm/vmstat.c: skip NR_TLB_REMOTE_FLUSH* properly + - KVM: VMX: check for existence of secondary exec controls before accessing + - blk-mq: I/O and timer unplugs are inverted in blktrace + - pstore/ram: Fix failure-path memory leak in ramoops_init + - clocksource/drivers/timer-atmel-pit: Properly handle error cases + - fbdev/omapfb: fix omapfb_memory_read infoleak + - mmc: core: Fix debounce time to use microseconds + - mmc: slot-gpio: Fix debounce time to use miliseconds again + - mac80211: allocate TXQs for active monitor interfaces + - drm/amdgpu: Fix vce work queue was not cancelled when suspend + - drm: fix use-after-free read in drm_mode_create_lease_ioctl() + - x86/vdso: Fix asm constraints on vDSO syscall fallbacks + - selftests/x86: Add clock_gettime() tests to test_vdso + - x86/vdso: Only enable vDSO retpolines when enabled and supported + - x86/vdso: Fix vDSO syscall fallback asm constraint regression + - Revert "UBUNTU: SAUCE: PCI: Reprogram bridge prefetch registers on resume" + - PCI: Reprogram bridge prefetch registers on resume + - mac80211: fix setting IEEE80211_KEY_FLAG_RX_MGMT for AP mode keys + - PM / core: Clear the direct_complete flag on errors + - dm mpath: fix attached_handler_name leak and dangling hw_handler_name + pointer + - dm cache metadata: ignore hints array being too small during resize + - dm cache: fix resize crash if user doesn't reload cache table + - xhci: Add missing CAS workaround for Intel Sunrise Point xHCI + - usb: xhci-mtk: resume USB3 roothub first + - USB: serial: simple: add Motorola Tetra MTP6550 id + - USB: serial: option: improve Quectel EP06 detection + - USB: serial: option: add two-endpoints device-id flag + - usb: cdc_acm: Do not leak URB buffers + - tty: Drop tty->count on tty_reopen() failure + - of: unittest: Disable interrupt node tests for old world MAC systems + - powerpc: Avoid code patching freed init sections + - powerpc/lib: fix book3s/32 boot failure due to code patching + - ARC: clone syscall to setp r25 as thread pointer + - f2fs: fix invalid memory access + - tipc: call start and done ops directly in __tipc_nl_compat_dumpit() + - ucma: fix a use-after-free in ucma_resolve_ip() + - ubifs: Check for name being NULL while mounting + - rds: rds_ib_recv_alloc_cache() should call alloc_percpu_gfp() instead + - ath10k: fix scan crash due to incorrect length calculation + - Linux 4.18.14 + * Cosmic update: 4.18.13 upstream stable release (LP: #1801931) + - rseq/selftests: fix parametrized test with -fpie + - mac80211: Run TXQ teardown code before de-registering interfaces + - mac80211_hwsim: require at least one channel + - Btrfs: fix unexpected failure of nocow buffered writes after snapshotting + when low on space + - KVM: PPC: Book3S HV: Don't truncate HPTE index in xlate function + - cfg80211: remove division by size of sizeof(struct ieee80211_wmm_rule) + - btrfs: btrfs_shrink_device should call commit transaction at the end + - scsi: csiostor: add a check for NULL pointer after kmalloc() + - scsi: csiostor: fix incorrect port capabilities + - scsi: libata: Add missing newline at end of file + - scsi: aacraid: fix a signedness bug + - bpf, sockmap: fix potential use after free in bpf_tcp_close + - bpf, sockmap: fix psock refcount leak in bpf_tcp_recvmsg + - bpf: sockmap, decrement copied count correctly in redirect error case + - mac80211: correct use of IEEE80211_VHT_CAP_RXSTBC_X + - mac80211_hwsim: correct use of IEEE80211_VHT_CAP_RXSTBC_X + - cfg80211: make wmm_rule part of the reg_rule structure + - mac80211_hwsim: Fix possible Spectre-v1 for hwsim_world_regdom_custom + - nl80211: Fix nla_put_u8 to u16 for NL80211_WMMR_TXOP + - nl80211: Pass center frequency in kHz instead of MHz + - bpf: fix several offset tests in bpf_msg_pull_data + - gpio: adp5588: Fix sleep-in-atomic-context bug + - mac80211: mesh: fix HWMP sequence numbering to follow standard + - mac80211: avoid kernel panic when building AMSDU from non-linear SKB + - gpiolib: acpi: Switch to cansleep version of GPIO library call + - gpiolib-acpi: Register GpioInt ACPI event handlers from a late_initcall + - gpio: dwapb: Fix error handling in dwapb_gpio_probe() + - bpf: fix msg->data/data_end after sg shift repair in bpf_msg_pull_data + - bpf: fix shift upon scatterlist ring wrap-around in bpf_msg_pull_data + - bpf: fix sg shift repair start offset in bpf_msg_pull_data + - tipc: switch to rhashtable iterator + - sh_eth: Add R7S9210 support + - net: mvpp2: initialize port of_node pointer + - tc-testing: add test-cases for numeric and invalid control action + - cfg80211: nl80211_update_ft_ies() to validate NL80211_ATTR_IE + - mac80211: do not convert to A-MSDU if frag/subframe limited + - mac80211: always account for A-MSDU header changes + - tools/kvm_stat: fix python3 issues + - tools/kvm_stat: fix handling of invalid paths in debugfs provider + - tools/kvm_stat: fix updates for dead guests + - gpio: Fix crash due to registration race + - ARC: atomics: unbork atomic_fetch_##op() + - Revert "blk-throttle: fix race between blkcg_bio_issue_check() and + cgroup_rmdir()" + - md/raid5-cache: disable reshape completely + - RAID10 BUG_ON in raise_barrier when force is true and conf->barrier is 0 + - selftests: pmtu: maximum MTU for vti4 is 2^16-1-20 + - selftests: pmtu: detect correct binary to ping ipv6 addresses + - ibmvnic: Include missing return code checks in reset function + - bpf: Fix bpf_msg_pull_data() + - bpf: avoid misuse of psock when TCP_ULP_BPF collides with another ULP + - i2c: uniphier: issue STOP only for last message or I2C_M_STOP + - i2c: uniphier-f: issue STOP only for last message or I2C_M_STOP + - net: cadence: Fix a sleep-in-atomic-context bug in macb_halt_tx() + - fs/cifs: don't translate SFM_SLASH (U+F026) to backslash + - mac80211: fix an off-by-one issue in A-MSDU max_subframe computation + - cfg80211: fix a type issue in ieee80211_chandef_to_operating_class() + - mac80211: fix WMM TXOP calculation + - mac80211: fix a race between restart and CSA flows + - mac80211: Fix station bandwidth setting after channel switch + - mac80211: don't Tx a deauth frame if the AP forbade Tx + - mac80211: shorten the IBSS debug messages + - fsnotify: fix ignore mask logic in fsnotify() + - net/ibm/emac: wrong emac_calc_base call was used by typo + - nds32: fix logic for module + - nds32: add NULL entry to the end of_device_id array + - nds32: Fix empty call trace + - nds32: Fix get_user/put_user macro expand pointer problem + - nds32: fix build error because of wrong semicolon + - tools/vm/slabinfo.c: fix sign-compare warning + - tools/vm/page-types.c: fix "defined but not used" warning + - nds32: linker script: GCOV kernel may refers data in __exit + - ceph: avoid a use-after-free in ceph_destroy_options() + - firmware: arm_scmi: fix divide by zero when sustained_perf_level is zero + - afs: Fix cell specification to permit an empty address list + - mm: madvise(MADV_DODUMP): allow hugetlbfs pages + - bpf: 32-bit RSH verification must truncate input before the ALU op + - netfilter: xt_cluster: add dependency on conntrack module + - netfilter: xt_checksum: ignore gso skbs + - HID: intel-ish-hid: Enable Sunrise Point-H ish driver + - HID: add support for Apple Magic Keyboards + - usb: gadget: fotg210-udc: Fix memory leak of fotg210->ep[i] + - HID: hid-saitek: Add device ID for RAT 7 Contagion + - scsi: iscsi: target: Set conn->sess to NULL when iscsi_login_set_conn_values + fails + - scsi: iscsi: target: Fix conn_ops double free + - scsi: qedi: Add the CRC size within iSCSI NVM image + - perf annotate: Properly interpret indirect call + - perf evsel: Fix potential null pointer dereference in perf_evsel__new_idx() + - perf util: Fix bad memory access in trace info. + - perf probe powerpc: Ignore SyS symbols irrespective of endianness + - perf annotate: Fix parsing aarch64 branch instructions after objdump update + - netfilter: kconfig: nat related expression depend on nftables core + - netfilter: nf_tables: release chain in flushing set + - Revert "iio: temperature: maxim_thermocouple: add MAX31856 part" + - iio: imu: st_lsm6dsx: take into account ts samples in wm configuration + - RDMA/ucma: check fd type in ucma_migrate_id() + - riscv: Do not overwrite initrd_start and initrd_end + - HID: sensor-hub: Restore fixup for Lenovo ThinkPad Helix 2 sensor hub report + - usb: host: xhci-plat: Iterate over parent nodes for finding quirks + - USB: yurex: Check for truncation in yurex_read() + - nvmet-rdma: fix possible bogus dereference under heavy load + - bnxt_re: Fix couple of memory leaks that could lead to IOMMU call traces + - net/mlx5: Consider PCI domain in search for next dev + - dm raid: fix reshape race on small devices + - drm/nouveau: fix oops in client init failure path + - drm/nouveau/mmu: don't attempt to dereference vmm without valid instance + pointer + - drm/nouveau/TBDdevinit: don't fail when PMU/PRE_OS is missing from VBIOS + - drm/nouveau/disp: fix DP disable race + - drm/nouveau/disp/gm200-: enforce identity-mapped SOR assignment for LVDS/eDP + panels + - dm raid: fix stripe adding reshape deadlock + - dm raid: fix rebuild of specific devices by updating superblock + - dm raid: fix RAID leg rebuild errors + - r8169: set TxConfig register after TX / RX is enabled, just like RxConfig + - fs/cifs: suppress a string overflow warning + - perf/x86/intel: Add support/quirk for the MISPREDICT bit on Knights Landing + CPUs + - sched/topology: Set correct NUMA topology type + - dm thin metadata: try to avoid ever aborting transactions + - netfilter: nfnetlink_queue: Solve the NFQUEUE/conntrack clash for NF_REPEAT + - netfilter: xt_hashlimit: use s->file instead of s->private + - arch/hexagon: fix kernel/dma.c build warning + - hexagon: modify ffs() and fls() to return int + - drm/amdgpu: Fix SDMA hang in prt mode v2 + - arm64: jump_label.h: use asm_volatile_goto macro instead of "asm goto" + - drm/amdgpu: fix error handling in amdgpu_cs_user_fence_chunk + - r8169: Clear RTL_FLAG_TASK_*_PENDING when clearing RTL_FLAG_TASK_ENABLED + - s390/qeth: don't dump past end of unknown HW header + - cifs: read overflow in is_valid_oplock_break() + - asm-generic: io: Fix ioport_map() for !CONFIG_GENERIC_IOMAP && + CONFIG_INDIRECT_PIO + - xen/manage: don't complain about an empty value in control/sysrq node + - xen: avoid crash in disable_hotplug_cpu + - xen: fix GCC warning and remove duplicate EVTCHN_ROW/EVTCHN_COL usage + - x86/APM: Fix build warning when PROC_FS is not enabled + - new primitive: discard_new_inode() + - vfs: don't evict uninitialized inode + - ovl: set I_CREATING on inode being created + - ovl: fix access beyond unterminated strings + - ovl: fix memory leak on unlink of indexed file + - ovl: fix format of setxattr debug + - sysfs: Do not return POSIX ACL xattrs via listxattr + - b43: fix DMA error related regression with proprietary firmware + - firmware: Fix security issue with request_firmware_into_buf() + - firmware: Always initialize the fw_priv list object + - cpufreq: qcom-kryo: Fix section annotations + - smb2: fix missing files in root share directory listing + - iommu/amd: Clear memory encryption mask from physical address + - crypto: qat - Fix KASAN stack-out-of-bounds bug in adf_probe() + - crypto: chelsio - Fix memory corruption in DMA Mapped buffers. + - crypto: mxs-dcp - Fix wait logic on chan threads + - crypto: caam/jr - fix ablkcipher_edesc pointer arithmetic + - gpiolib: Free the last requested descriptor + - Drivers: hv: vmbus: Use get/put_cpu() in vmbus_connect() + - tools: hv: fcopy: set 'error' in case an unknown operation was requested + - proc: restrict kernel stack dumps to root + - ocfs2: fix locking for res->tracking and dlm->tracking_list + - HID: i2c-hid: disable runtime PM operations on hantick touchpad + - ixgbe: check return value of napi_complete_done() + - dm thin metadata: fix __udivdi3 undefined on 32-bit + - Revert "drm/amd/pp: Send khz clock values to DC for smu7/8" + - Linux 4.18.13 + * Volume control not working Dell XPS 27 (7760) (LP: #1775068) // Cosmic + update: 4.18.13 upstream stable release (LP: #1801931) + - ALSA: hda/realtek - Cannot adjust speaker's volume on Dell XPS 27 7760 + * [Bionic][Cosmic] ipmi: Fix timer race with module unload (LP: #1799281) + - ipmi: Fix timer race with module unload + * [Bionic][Cosmic] Fix to ipmi to support vendor specific messages greater + than 255 bytes (LP: #1799794) + - ipmi:ssif: Add support for multi-part transmit messages > 2 parts + * 18.10 kernel does not appear to validate kernel module signatures correctly + (LP: #1798863) // CVE-2018-18653 + - SAUCE: (efi-lockdown) module: remove support for deferring module signature + verification to IMA + * 18.10 kernel does not appear to validate kernel module signatures correctly + (LP: #1798863) + - SAUCE: (efi-lockdown) module: trust keys from secondary keyring for module + signing + * [Ubuntu] net/af_iucv: fix skb leaks for HiperTransport (LP: #1800639) + - net/af_iucv: drop inbound packets with invalid flags + - net/af_iucv: fix skb handling on HiperTransport xmit error + * Power consumption during s2idle is higher than long idle(sk hynix) + (LP: #1801875) + - SAUCE: pci: prevent sk hynix nvme from entering D3 + - SAUCE: nvme: add quirk to not call disable function when suspending + * NULL pointer dereference at 0000000000000020 when access + dst_orig->ops->family in function xfrm_lookup_with_ifid() (LP: #1801878) + - xfrm: Fix NULL pointer dereference when skb_dst_force clears the dst_entry. + * hns3: map tx ring to tc (LP: #1802023) + - net: hns3: Set tx ring' tc info when netdev is up + * [Ubuntu] qeth: Fix potential array overrun in cmd/rc lookup (LP: #1800641) + - s390: qeth_core_mpc: Use ARRAY_SIZE instead of reimplementing its function + - s390: qeth: Fix potential array overrun in cmd/rc lookup + * Mellanox CX5 stops pinging with rx_wqe_err (mlx5_core) (LP: #1799393) + - net/mlx5: WQ, fixes for fragmented WQ buffers API + * Vulkan applications cause permanent memory leak with Intel GPU + (LP: #1798165) + - drm/syncobj: Don't leak fences when WAIT_FOR_SUBMIT is set + * Packaging resync (LP: #1786013) + - [Package] add support for specifying the primary makefile + + -- Khalid Elmously Thu, 15 Nov 2018 21:20:34 -0500 + +linux-azure (4.18.0-1004.4) cosmic; urgency=medium + + * linux-azure: 4.18.0-1004.4 -proposed tracker (LP: #1799451) + + * Shared folders cannot be mounted in ubuntu/cosmic64 due to missing vbox + modules (LP: #1796647) + - [Config] azure: CONFIG_VBOXGUEST=n + + * netfilter: nf_conntrack: resolve clash for matching conntracks + (LP: #1795493) + - SAUCE: netfilter: nf_conntrack: resolve clash for matching conntracks + - SAUCE: netfilter: nf_nat: return the same reply tuple for matching CTs + + * [Hyper-V] Enable NVME devices (LP: #1793386) + - [Config] linux-azure: CONFIG_BLK_DEV_NVME=y + + * linux-azure: fix getabis information (LP: #1793462) + - [Packaging] linux-azure: fix getabis + + [ Ubuntu: 4.18.0-11.12 ] + + * linux: 4.18.0-11.12 -proposed tracker (LP: #1799445) + * arm64: snapdragon: WARNING: CPU: 0 PID: 1 arch/arm64/kernel/setup.c:271 + reserve_memblock_reserved_regions (LP: #1797139) + - SAUCE: arm64: Fix /proc/iomem for reserved but not memory regions + * arm64: snapdragon: WARNING: CPU: 0 PID: 1 at drivers/irqchip/irq-gic.c:1016 + gic_irq_domain_translate (LP: #1797143) + - SAUCE: arm64: dts: msm8916: camms: fix gic_irq_domain_translate warnings + * The front MIC can't work on the Lenovo M715 (LP: #1797292) + - ALSA: hda/realtek - Fix the problem of the front MIC on the Lenovo M715 + * Provide mode where all vCPUs on a core must be the same VM (LP: #1792957) + - KVM: PPC: Book3S HV: Provide mode where all vCPUs on a core must be the same + VM + * fscache: bad refcounting in fscache_op_complete leads to OOPS (LP: #1797314) + - SAUCE: fscache: Fix race in decrementing refcount of op->npages + * hns3: autoneg settings get lost on down/up (LP: #1797654) + - net: hns3: Fix for information of phydev lost problem when down/up + * not able to unwind the stack from within __kernel_clock_gettime in the Linux + vDSO (LP: #1797963) + - powerpc/vdso: Correct call frame information + * Signal 7 error when running GPFS tracing in cluster (LP: #1792195) + - powerpc/mm/books3s: Add new pte bit to mark pte temporarily invalid. + - powerpc/mm/radix: Only need the Nest MMU workaround for R -> RW transition + * Support Edge Gateway's WIFI LED (LP: #1798330) + - SAUCE: mwifiex: Switch WiFi LED state according to the device status + * Support Edge Gateway's Bluetooth LED (LP: #1798332) + - SAUCE: Bluetooth: Support for LED on Edge Gateways + * kvm doesn't work on 36 physical bits systems (LP: #1798427) + - KVM: x86: fix L1TF's MMIO GFN calculation + * CVE-2018-15471 + - xen-netback: fix input validation in xenvif_set_hash_mapping() + * regression in 'ip --family bridge neigh' since linux v4.12 (LP: #1796748) + - rtnetlink: fix rtnl_fdb_dump() for ndmsg header + + [ Ubuntu: 4.18.0-10.11 ] + + * linux: 4.18.0-10.11 -proposed tracker (LP: #1797379) + * the machine of lenovo M715 with the AMD GPU (Radeon Vega 8 Mobile, rev ca, + 1002:15dd) often hangs randomly (LP: #1796789) + - drm/amd: Add missing fields in atom_integrated_system_info_v1_11 + * Miscellaneous Ubuntu changes + - [Config] CONFIG_VBOXGUEST=n + - ubuntu: vbox -- update to 5.2.18-dfsg-2 + - ubuntu: enable vbox build + + -- Stefan Bader Wed, 24 Oct 2018 14:21:28 +0200 + +linux-azure (4.18.0-1003.3) cosmic; urgency=medium + + * linux-azure: 4.18.0-1003.3 -proposed tracker (LP: #1796350) + + * iptables --list --numeric fails on -virtual kernel / -virtual missing + bpfilter (LP: #1795036) + - [Config] add bpfilter.ko to generic inclusion list + + [ Ubuntu: 4.18.0-9.10 ] + + * linux: 4.18.0-9.10 -proposed tracker (LP: #1796346) + * Cosmic update: v4.18.12 upstream stable release (LP: #1796139) + - crypto: skcipher - Fix -Wstringop-truncation warnings + - iio: adc: ina2xx: avoid kthread_stop() with stale task_struct + - tsl2550: fix lux1_input error in low light + - misc: ibmvmc: Use GFP_ATOMIC under spin lock + - vmci: type promotion bug in qp_host_get_user_memory() + - siox: don't create a thread without starting it + - x86/numa_emulation: Fix emulated-to-physical node mapping + - staging: rts5208: fix missing error check on call to rtsx_write_register + - power: supply: axp288_charger: Fix initial constant_charge_current value + - misc: sram: enable clock before registering regions + - serial: sh-sci: Stop RX FIFO timer during port shutdown + - uwb: hwa-rc: fix memory leak at probe + - power: vexpress: fix corruption in notifier registration + - iommu/amd: make sure TLB to be flushed before IOVA freed + - Bluetooth: Add a new Realtek 8723DE ID 0bda:b009 + - USB: serial: kobil_sct: fix modem-status error handling + - 6lowpan: iphc: reset mac_header after decompress to fix panic + - iommu/msm: Don't call iommu_device_{,un}link from atomic context + - s390/mm: correct allocate_pgste proc_handler callback + - power: remove possible deadlock when unregistering power_supply + - drm/amd/display/dc/dce: Fix multiple potential integer overflows + - drm/amd/display: fix use of uninitialized memory + - md-cluster: clear another node's suspend_area after the copy is finished + - cxgb4: Fix the condition to check if the card is T5 + - RDMA/bnxt_re: Fix a couple off by one bugs + - RDMA/i40w: Hold read semaphore while looking after VMA + - RDMA/bnxt_re: Fix a bunch of off by one bugs in qplib_fp.c + - IB/core: type promotion bug in rdma_rw_init_one_mr() + - media: exynos4-is: Prevent NULL pointer dereference in __isp_video_try_fmt() + - IB/mlx4: Test port number before querying type. + - powerpc/kdump: Handle crashkernel memory reservation failure + - media: fsl-viu: fix error handling in viu_of_probe() + - vhost_net: Avoid tx vring kicks during busyloop + - media: staging/imx: fill vb2_v4l2_buffer field entry + - IB/mlx5: Fix GRE flow specification + - include/rdma/opa_addr.h: Fix an endianness issue + - x86/tsc: Add missing header to tsc_msr.c + - ARM: hwmod: RTC: Don't assume lock/unlock will be called with irq enabled + - x86/entry/64: Add two more instruction suffixes + - ARM: dts: ls1021a: Add missing cooling device properties for CPUs + - scsi: target/iscsi: Make iscsit_ta_authentication() respect the output + buffer size + - thermal: i.MX: Allow thermal probe to fail gracefully in case of bad + calibration. + - scsi: klist: Make it safe to use klists in atomic context + - scsi: ibmvscsi: Improve strings handling + - scsi: target: Avoid that EXTENDED COPY commands trigger lock inversion + - usb: wusbcore: security: cast sizeof to int for comparison + - ath10k: sdio: use same endpoint id for all packets in a bundle + - ath10k: sdio: set skb len for all rx packets + - powerpc/powernv/ioda2: Reduce upper limit for DMA window size + - platform/x86: asus-wireless: Fix uninitialized symbol usage + - ACPI / button: increment wakeup count only when notified + - s390/sysinfo: add missing #ifdef CONFIG_PROC_FS + - alarmtimer: Prevent overflow for relative nanosleep + - s390/dasd: correct numa_node in dasd_alloc_queue + - s390/scm_blk: correct numa_node in scm_blk_dev_setup + - s390/extmem: fix gcc 8 stringop-overflow warning + - mtd: rawnand: atmel: add module param to avoid using dma + - iio: accel: adxl345: convert address field usage in iio_chan_spec + - posix-timers: Make forward callback return s64 + - posix-timers: Sanitize overrun handling + - ALSA: snd-aoa: add of_node_put() in error path + - selftests: forwarding: Tweak tc filters for mirror-to-gretap tests + - ath10k: use locked skb_dequeue for rx completions + - media: s3c-camif: ignore -ENOIOCTLCMD from v4l2_subdev_call for s_power + - media: soc_camera: ov772x: correct setting of banding filter + - media: omap3isp: zero-initialize the isp cam_xclk{a,b} initial data + - media: ov772x: add checks for register read errors + - staging: android: ashmem: Fix mmap size validation + - media: ov772x: allow i2c controllers without I2C_FUNC_PROTOCOL_MANGLING + - staging: mt7621-eth: Fix memory leak in mtk_add_mac() error path + - drivers/tty: add error handling for pcmcia_loop_config + - arm64: dts: renesas: salvator-common: Fix adv7482 decimal unit addresses + - serial: pxa: Fix an error handling path in 'serial_pxa_probe()' + - staging: mt7621-dts: Fix remaining pcie warnings + - media: tm6000: add error handling for dvb_register_adapter + - ASoC: qdsp6: qdafe: fix some off by one bugs + - net: phy: xgmiitorgmii: Check read_status results + - ath10k: protect ath10k_htt_rx_ring_free with rx_ring.lock + - drm/sun4i: Enable DW HDMI PHY clock + - net: phy: xgmiitorgmii: Check phy_driver ready before accessing + - drm/sun4i: Fix releasing node when enumerating enpoints + - ath10k: transmit queued frames after processing rx packets + - mt76x2: fix mrr idx/count estimation in mt76x2_mac_fill_tx_status() + - rndis_wlan: potential buffer overflow in rndis_wlan_auth_indication() + - brcmsmac: fix wrap around in conversion from constant to s16 + - bitfield: fix *_encode_bits() + - wlcore: Add missing PM call for wlcore_cmd_wait_for_event_or_timeout() + - drm/omap: gem: Fix mm_list locking + - ARM: mvebu: declare asm symbols as character arrays in pmsu.c + - RDMA/uverbs: Don't overwrite NULL pointer with ZERO_SIZE_PTR + - Documentation/process: fix reST table border error + - perf/hw_breakpoint: Split attribute parse and commit + - arm: dts: mediatek: Add missing cooling device properties for CPUs + - HID: hid-ntrig: add error handling for sysfs_create_group + - HID: i2c-hid: Use devm to allocate i2c_hid struct + - MIPS: boot: fix build rule of vmlinux.its.S + - arm64: dts: renesas: Fix VSPD registers range + - drm/v3d: Take a lock across GPU scheduler job creation and queuing. + - perf/x86/intel/lbr: Fix incomplete LBR call stack + - scsi: bnx2i: add error handling for ioremap_nocache + - iomap: complete partial direct I/O writes synchronously + - spi: orion: fix CS GPIO handling again + - scsi: megaraid_sas: Update controller info during resume + - ASoC: Intel: bytcr_rt5640: Fix Acer Iconia 8 over-current detect threshold + - ASoC: rt1305: Use ULL suffixes for 64-bit constants + - ASoC: rsnd: SSI parent cares SWSP bit + - EDAC, i7core: Fix memleaks and use-after-free on probe and remove + - ASoC: dapm: Fix potential DAI widget pointer deref when linking DAIs + - module: exclude SHN_UNDEF symbols from kallsyms api + - gpio: Fix wrong rounding in gpio-menz127 + - nfsd: fix corrupted reply to badly ordered compound + - EDAC: Fix memleak in module init error path + - EDAC, altera: Fix an error handling path in altr_s10_sdram_probe() + - staging: pi433: fix race condition in pi433_ioctl + - ath10k: fix incorrect size of dma_free_coherent in + ath10k_ce_alloc_src_ring_64 + - ath10k: snoc: use correct bus-specific pointer in RX retry + - fs/lock: skip lock owner pid translation in case we are in init_pid_ns + - ath10k: fix memory leak of tpc_stats + - Input: xen-kbdfront - fix multi-touch XenStore node's locations + - iio: 104-quad-8: Fix off-by-one error in register selection + - drm/vc4: Add missing formats to vc4_format_mod_supported(). + - ARM: dts: dra7: fix DCAN node addresses + - drm/vc4: plane: Expand the lower bits by repeating the higher bits + - perf tests: Fix indexing when invoking subtests + - gpio: tegra: Fix tegra_gpio_irq_set_type() + - block: fix deadline elevator drain for zoned block devices + - x86/mm: Expand static page table for fixmap space + - tty: serial: lpuart: avoid leaking struct tty_struct + - serial: imx: restore handshaking irq for imx1 + - serial: mvebu-uart: Fix reporting of effective CSIZE to userspace + - serial: cpm_uart: return immediately from console poll + - intel_th: Fix device removal logic + - intel_th: Fix resource handling for ACPI glue layer + - spi: tegra20-slink: explicitly enable/disable clock + - spi: sh-msiof: Fix invalid SPI use during system suspend + - spi: sh-msiof: Fix handling of write value for SISTR register + - spi: rspi: Fix invalid SPI use during system suspend + - spi: rspi: Fix interrupted DMA transfers + - regulator: fix crash caused by null driver data + - regulator: Fix 'do-nothing' value for regulators without suspend state + - USB: fix error handling in usb_driver_claim_interface() + - USB: handle NULL config in usb_find_alt_setting() + - usb: roles: Take care of driver module reference counting + - usb: musb: dsps: do not disable CPPI41 irq in driver teardown + - USB: usbdevfs: sanitize flags more + - USB: usbdevfs: restore warning for nonsensical flags + - Revert "usb: cdc-wdm: Fix a sleep-in-atomic-context bug in + service_outstanding_interrupt()" + - USB: remove LPM management from usb_driver_claim_interface() + - uaccess: Fix is_source param for check_copy_size() in copy_to_iter_mcsafe() + - ext2, dax: set ext2_dax_aops for dax files + - filesystem-dax: Fix use of zero page + - IB/srp: Avoid that sg_reset -d ${srp_device} triggers an infinite loop + - IB/hfi1: Fix SL array bounds check + - IB/hfi1: Invalid user input can result in crash + - IB/hfi1: Fix context recovery when PBC has an UnsupportedVL + - IB/hfi1: Fix destroy_qp hang after a link down + - ACPI / hotplug / PCI: Don't scan for non-hotplug bridges if slot is not + bridge + - RDMA/uverbs: Atomically flush and mark closed the comp event queue + - arm64: KVM: Tighten guest core register access from userspace + - ARM: OMAP2+: Fix null hwmod for ti-sysc debug + - ARM: OMAP2+: Fix module address for modules using mpu_rt_idx + - bus: ti-sysc: Fix module register ioremap for larger offsets + - qed: Wait for ready indication before rereading the shmem + - qed: Wait for MCP halt and resume commands to take place + - qed: Prevent a possible deadlock during driver load and unload + - qed: Avoid sending mailbox commands when MFW is not responsive + - thermal: of-thermal: disable passive polling when thermal zone is disabled + - isofs: reject hardware sector size > 2048 bytes + - mmc: atmel-mci: fix bad logic of sg_copy_{from,to}_buffer conversion + - mmc: android-goldfish: fix bad logic of sg_copy_{from,to}_buffer conversion + - bus: ti-sysc: Fix no_console_suspend handling + - ARM: dts: omap4-droid4: fix vibrations on Droid 4 + - bpf, sockmap: fix sock_hash_alloc and reject zero-sized keys + - bpf, sockmap: fix sock hash count in alloc_sock_hash_elem + - tls: possible hang when do_tcp_sendpages hits sndbuf is full case + - bpf: sockmap: write_space events need to be passed to TCP handler + - drm/amdgpu: fix VM clearing for the root PD + - drm/amdgpu: fix preamble handling + - amdgpu: fix multi-process hang issue + - net/ncsi: Fixup .dumpit message flags and ID check in Netlink handler + - tcp_bbr: add bbr_check_probe_rtt_done() helper + - tcp_bbr: in restart from idle, see if we should exit PROBE_RTT + - net: hns: fix length and page_offset overflow when CONFIG_ARM64_64K_PAGES + - net: hns: fix skb->truesize underestimation + - net: hns3: fix page_offset overflow when CONFIG_ARM64_64K_PAGES + - ice: Fix multiple static analyser warnings + - ice: Report stats for allocated queues via ethtool stats + - ice: Clean control queues only when they are initialized + - ice: Fix bugs in control queue processing + - ice: Use order_base_2 to calculate higher power of 2 + - ice: Set VLAN flags correctly + - tools: bpftool: return from do_event_pipe() on bad arguments + - ice: Fix a few null pointer dereference issues + - ice: Fix potential return of uninitialized value + - e1000: check on netif_running() before calling e1000_up() + - e1000: ensure to free old tx/rx rings in set_ringparam() + - ixgbe: fix driver behaviour after issuing VFLR + - i40e: Fix for Tx timeouts when interface is brought up if DCB is enabled + - i40e: fix condition of WARN_ONCE for stat strings + - crypto: chtls - fix null dereference chtls_free_uld() + - crypto: cavium/nitrox - fix for command corruption in queue full case with + backlog submissions. + - hwmon: (ina2xx) fix sysfs shunt resistor read access + - hwmon: (adt7475) Make adt7475_read_word() return errors + - Revert "ARM: dts: imx7d: Invert legacy PCI irq mapping" + - drm/amdgpu: Enable/disable gfx PG feature in rlc safe mode + - drm/amdgpu: Update power state at the end of smu hw_init. + - ata: ftide010: Add a quirk for SQ201 + - nvme-fcloop: Fix dropped LS's to removed target port + - ARM: dts: omap4-droid4: Fix emmc errors seen on some devices + - drm/amdgpu: Need to set moved to true when evict bo + - arm/arm64: smccc-1.1: Make return values unsigned long + - arm/arm64: smccc-1.1: Handle function result as parameters + - i2c: i801: Allow ACPI AML access I/O ports not reserved for SMBus + - clk: x86: Set default parent to 48Mhz + - x86/pti: Fix section mismatch warning/error + - KVM: PPC: Book3S HV: Fix guest r11 corruption with POWER9 TM workarounds + - powerpc: fix csum_ipv6_magic() on little endian platforms + - powerpc/pkeys: Fix reading of ibm, processor-storage-keys property + - powerpc/pseries: Fix unitialized timer reset on migration + - arm64: KVM: Sanitize PSTATE.M when being set from userspace + - media: v4l: event: Prevent freeing event subscriptions while accessed + - Linux 4.18.12 + * Fix usbcore.quirks when used at boot (LP: #1795784) + - usb: core: safely deal with the dynamic quirk lists + * Dell new AIO requires a new uart backlight driver (LP: #1727235) + - SAUCE: platform/x86: dell-uart-backlight: new backlight driver for DELL AIO + - updateconfigs for Dell UART backlight driver + * Please make CONFIG_PWM_LPSS_PCI and CONFIG_PWM_LPSS_PLATFORM built in to + make brightness adjustment working on various BayTrail/CherryTrail-based + devices (LP: #1783964) + - [Config]: Make PWM_LPSS_* built-in + * CVE-2018-5391 + - SAUCE: Revert "net: increase fragment memory usage limits" + * check and fix zkey required kernel modules locations in debs, udebs, and + initramfs (LP: #1794346) + - [Config] add s390 crypto modules to crypt-modules udeb + * iptables --list --numeric fails on -virtual kernel / -virtual missing + bpfilter (LP: #1795036) + - [Config] add bpfilter.ko to generic inclusion list + * fails to build on armhf because of module rename (LP: #1795665) + - [Config] omapfb was renamed to omap2fb + * qeth: use vzalloc for QUERY OAT buffer (LP: #1793086) + - s390/qeth: use vzalloc for QUERY OAT buffer + * Cosmic update to 4.18.11 stable release (LP: #1795486) + - gso_segment: Reset skb->mac_len after modifying network header + - ipv6: fix possible use-after-free in ip6_xmit() + - net/appletalk: fix minor pointer leak to userspace in SIOCFINDIPDDPRT + - net: hp100: fix always-true check for link up state + - pppoe: fix reception of frames with no mac header + - qmi_wwan: set DTR for modems in forced USB2 mode + - udp4: fix IP_CMSG_CHECKSUM for connected sockets + - tls: don't copy the key out of tls12_crypto_info_aes_gcm_128 + - tls: zero the crypto information from tls_context before freeing + - tls: clear key material from kernel memory when do_tls_setsockopt_conf fails + - neighbour: confirm neigh entries when ARP packet is received + - udp6: add missing checks on edumux packet processing + - net/sched: act_sample: fix NULL dereference in the data path + - hv_netvsc: fix schedule in RCU context + - net: dsa: mv88e6xxx: Fix ATU Miss Violation + - socket: fix struct ifreq size in compat ioctl + - tls: fix currently broken MSG_PEEK behavior + - ipv6: use rt6_info members when dst is set in rt6_fill_node + - net/ipv6: do not copy dst flags on rt init + - net: mvpp2: let phylink manage the carrier state + - net: rtnl_configure_link: fix dev flags changes arg to __dev_notify_flags + - NFC: Fix possible memory corruption when handling SHDLC I-Frame commands + - NFC: Fix the number of pipes + - ASoC: wm9712: fix replace codec to component + - ASoC: cs4265: fix MMTLR Data switch control + - ASoC: tas6424: Save last fault register even when clear + - ASoC: rsnd: fixup not to call clk_get/set under non-atomic + - ASoC: uapi: fix sound/skl-tplg-interface.h userspace compilation errors + - ALSA: bebob: fix memory leak for M-Audio FW1814 and ProjectMix I/O at error + path + - ALSA: bebob: use address returned by kmalloc() instead of kernel stack for + streaming DMA mapping + - ALSA: emu10k1: fix possible info leak to userspace on + SNDRV_EMU10K1_IOCTL_INFO + - ALSA: fireface: fix memory leak in ff400_switch_fetching_mode() + - ALSA: firewire-digi00x: fix memory leak of private data + - ALSA: firewire-tascam: fix memory leak of private data + - ALSA: fireworks: fix memory leak of response buffer at error path + - ALSA: oxfw: fix memory leak for model-dependent data at error path + - ALSA: oxfw: fix memory leak of discovered stream formats at error path + - ALSA: oxfw: fix memory leak of private data + - mtd: devices: m25p80: Make sure the buffer passed in op is DMA-able + - mtd: rawnand: denali: fix a race condition when DMA is kicked + - platform/x86: dell-smbios-wmi: Correct a memory leak + - platform/x86: alienware-wmi: Correct a memory leak + - xen/netfront: don't bug in case of too many frags + - xen/x86/vpmu: Zero struct pt_regs before calling into sample handling code + - spi: fix IDR collision on systems with both fixed and dynamic SPI bus + numbers + - Revert "PCI: Add ACS quirk for Intel 300 series" + - ring-buffer: Allow for rescheduling when removing pages + - crypto: x86/aegis,morus - Do not require OSXSAVE for SSE2 + - fork: report pid exhaustion correctly + - mm: disable deferred struct page for 32-bit arches + - mm: shmem.c: Correctly annotate new inodes for lockdep + - Revert "rpmsg: core: add support to power domains for devices" + - bpf/verifier: disallow pointer subtraction + - Revert "uapi/linux/keyctl.h: don't use C++ reserved keyword as a struct + member name" + - scsi: target: iscsi: Use bin2hex instead of a re-implementation + - Revert "ubifs: xattr: Don't operate on deleted inodes" + - libata: mask swap internal and hardware tag + - ocfs2: fix ocfs2 read block panic + - drm/i915/bdw: Increase IPS disable timeout to 100ms + - drm/nouveau: Reset MST branching unit before enabling + - drm/nouveau: Only write DP_MSTM_CTRL when needed + - drm/nouveau: Remove duplicate poll_enable() in pmops_runtime_suspend() + - drm/nouveau: Fix deadlocks in nouveau_connector_detect() + - drm/nouveau/drm/nouveau: Don't forget to cancel hpd_work on suspend/unload + - drm/nouveau/drm/nouveau: Fix bogus drm_kms_helper_poll_enable() placement + - drm/nouveau/drm/nouveau: Fix deadlock with fb_helper with async RPM requests + - drm/nouveau/drm/nouveau: Use pm_runtime_get_noresume() in connector_detect() + - drm/nouveau/drm/nouveau: Prevent handling ACPI HPD events too early + - drm/vc4: Fix the "no scaling" case on multi-planar YUV formats + - drm: udl: Destroy framebuffer only if it was initialized + - drm/amdgpu: add new polaris pci id + - tty: vt_ioctl: fix potential Spectre v1 + - ext4: check to make sure the rename(2)'s destination is not freed + - ext4: avoid divide by zero fault when deleting corrupted inline directories + - ext4: avoid arithemetic overflow that can trigger a BUG + - ext4: recalucate superblock checksum after updating free blocks/inodes + - ext4: fix online resize's handling of a too-small final block group + - ext4: fix online resizing for bigalloc file systems with a 1k block size + - ext4: don't mark mmp buffer head dirty + - ext4: show test_dummy_encryption mount option in /proc/mounts + - ext4, dax: add ext4_bmap to ext4_dax_aops + - ext4, dax: set ext4_dax_aops for dax files + - sched/fair: Fix vruntime_normalized() for remote non-migration wakeup + - vmw_balloon: include asm/io.h + - iw_cxgb4: only allow 1 flush on user qps + - spi: Fix double IDR allocation with DT aliases + - Linux 4.18.11 + * CVE-2018-14633 + - scsi: target: iscsi: Use hex2bin instead of a re-implementation + * Cosmic update to 4.18.10 stable release (LP: #1794597) + - be2net: Fix memory leak in be_cmd_get_profile_config() + - net/mlx5: Fix use-after-free in self-healing flow + - net: qca_spi: Fix race condition in spi transfers + - rds: fix two RCU related problems + - tipc: orphan sock in tipc_release() + - net/mlx5: E-Switch, Fix memory leak when creating switchdev mode FDB tables + - net/tls: Set count of SG entries if sk_alloc_sg returns -ENOSPC + - net/mlx5: Check for error in mlx5_attach_interface + - net/mlx5: Fix debugfs cleanup in the device init/remove flow + - erspan: fix error handling for erspan tunnel + - erspan: return PACKET_REJECT when the appropriate tunnel is not found + - tcp: really ignore MSG_ZEROCOPY if no SO_ZEROCOPY + - net/mlx5: Fix not releasing read lock when adding flow rules + - net/mlx5: Fix possible deadlock from lockdep when adding fte to fg + - net/mlx5: Use u16 for Work Queue buffer fragment size + - usb: dwc3: change stream event enable bit back to 13 + - iommu/arm-smmu-v3: sync the OVACKFLG to PRIQ consumer register + - iommu/io-pgtable-arm-v7s: Abort allocation when table address overflows the + PTE + - iommu/io-pgtable-arm: Fix pgtable allocation in selftest + - ALSA: msnd: Fix the default sample sizes + - ALSA: usb-audio: Add support for Encore mDSD USB DAC + - ALSA: usb-audio: Fix multiple definitions in AU0828_DEVICE() macro + - xfrm: fix 'passing zero to ERR_PTR()' warning + - amd-xgbe: use dma_mapping_error to check map errors + - nfp: don't fail probe on pci_sriov_set_totalvfs() errors + - iwlwifi: cancel the injective function between hw pointers to tfd entry + index + - gfs2: Special-case rindex for gfs2_grow + - clk: imx6ul: fix missing of_node_put() + - clk: imx6sll: fix missing of_node_put() + - clk: mvebu: armada-37xx-periph: Fix wrong return value in get_parent + - Input: pxrc - fix freeing URB on device teardown + - clk: core: Potentially free connection id + - clk: clk-fixed-factor: Clear OF_POPULATED flag in case of failure + - kbuild: add .DELETE_ON_ERROR special target + - kbuild: do not update config when running install targets + - media: tw686x: Fix oops on buffer alloc failure + - dmaengine: pl330: fix irq race with terminate_all + - MIPS: ath79: fix system restart + - media: videobuf2-core: check for q->error in vb2_core_qbuf() + - IB/rxe: Drop QP0 silently + - block: allow max_discard_segments to be stacked + - IB/ipoib: Fix error return code in ipoib_dev_init() + - mtd/maps: fix solutionengine.c printk format warnings + - media: ov5645: Supported external clock is 24MHz + - perf test: Fix subtest number when showing results + - gfs2: Don't reject a supposedly full bitmap if we have blocks reserved + - perf tools: Synthesize GROUP_DESC feature in pipe mode + - perf tests: Fix record+probe_libc_inet_pton.sh for powerpc64 + - perf tests: Fix record+probe_libc_inet_pton.sh when event exists + - perf tests: Fix record+probe_libc_inet_pton.sh to ensure cleanups + - fbdev: omapfb: off by one in omapfb_register_client() + - perf tools: Fix struct comm_str removal crash + - video: goldfishfb: fix memory leak on driver remove + - fbdev/via: fix defined but not used warning + - perf powerpc: Fix callchain ip filtering when return address is in a + register + - video: fbdev: pxafb: clear allocated memory for video modes + - fbdev: Distinguish between interlaced and progressive modes + - omapfb: rename omap2 module to omap2fb.ko + - ARM: exynos: Clear global variable on init error path + - perf powerpc: Fix callchain ip filtering + - nvmet: fix file discard return status + - nvme-rdma: unquiesce queues when deleting the controller + - KVM: arm/arm64: vgic: Fix possible spectre-v1 write in vgic_mmio_write_apr() + - powerpc/powernv: opal_put_chars partial write fix + - perf script: Show correct offsets for DWARF-based unwinding + - staging: bcm2835-camera: fix timeout handling in wait_for_completion_timeout + - staging: bcm2835-camera: handle wait_for_completion_timeout return properly + - ASoC: rt5514: Fix the issue of the delay volume applied + - MIPS: jz4740: Bump zload address + - mac80211: restrict delayed tailroom needed decrement + - Smack: Fix handling of IPv4 traffic received by PF_INET6 sockets + - wan/fsl_ucc_hdlc: use IS_ERR_VALUE() to check return value of qe_muram_alloc + - arm64: fix possible spectre-v1 write in ptrace_hbp_set_event() + - reset: imx7: Fix always writing bits as 0 + - ALSA: usb-audio: Generic DSD detection for Thesycon-based implementations + - nfp: avoid buffer leak when FW communication fails + - xen-netfront: fix queue name setting + - arm64: dts: qcom: db410c: Fix Bluetooth LED trigger + - ARM: dts: qcom: msm8974-hammerhead: increase load on l20 for sdhci + - soc: qcom: smem: Correct check for global partition + - s390/qeth: fix race in used-buffer accounting + - s390/qeth: reset layer2 attribute on layer switch + - platform/x86: toshiba_acpi: Fix defined but not used build warnings + - KVM: arm/arm64: Fix vgic init race + - drivers/base: stop new probing during shutdown + - i2c: aspeed: Fix initial values of master and slave state + - drm/amd/pp: Set Max clock level to display by default + - regulator: qcom_spmi: Use correct regmap when checking for error + - regulator: qcom_spmi: Fix warning Bad of_node_put() + - iommu/ipmmu-vmsa: IMUCTRn.TTSEL needs a special usage on R-Car Gen3 + - dmaengine: mv_xor_v2: kill the tasklets upon exit + - crypto: sharah - Unregister correct algorithms for SAHARA 3 + - x86/pti: Check the return value of pti_user_pagetable_walk_p4d() + - x86/pti: Check the return value of pti_user_pagetable_walk_pmd() + - x86/mm/pti: Add an overflow check to pti_clone_pmds() + - PCI/AER: Honor "pcie_ports=native" even if HEST sets FIRMWARE_FIRST + - xen-netfront: fix warn message as irq device name has '/' + - RDMA/cma: Protect cma dev list with lock + - pstore: Fix incorrect persistent ram buffer mapping + - xen/netfront: fix waiting for xenbus state change + - IB/ipoib: Avoid a race condition between start_xmit and cm_rep_handler + - mmc: omap_hsmmc: fix wakeirq handling on removal + - ipmi: Rework SMI registration failure + - ipmi: Move BT capabilities detection to the detect call + - ipmi: Fix I2C client removal in the SSIF driver + - ovl: fix oopses in ovl_fill_super() failure paths + - vmbus: don't return values for uninitalized channels + - Tools: hv: Fix a bug in the key delete code + - misc: ibmvsm: Fix wrong assignment of return code + - misc: hmc6352: fix potential Spectre v1 + - xhci: Fix use after free for URB cancellation on a reallocated endpoint + - usb: Don't die twice if PCI xhci host is not responding in resume + - usb: xhci: fix interrupt transfer error happened on MTK platforms + - usb: mtu3: fix error of xhci port id when enable U3 dual role + - mei: ignore not found client in the enumeration + - mei: bus: fix hw module get/put balance + - mei: bus: need to unlink client before freeing + - dm verity: fix crash on bufio buffer that was allocated with vmalloc + - USB: Add quirk to support DJI CineSSD + - usb: uas: add support for more quirk flags + - usb: Avoid use-after-free by flushing endpoints early in usb_set_interface() + - usb: host: u132-hcd: Fix a sleep-in-atomic-context bug in u132_get_frame() + - USB: add quirk for WORLDE Controller KS49 or Prodipe MIDI 49C USB controller + - usb: gadget: udc: renesas_usb3: fix maxpacket size of ep0 + - USB: net2280: Fix erroneous synchronization change + - USB: serial: io_ti: fix array underflow in completion handler + - usb: misc: uss720: Fix two sleep-in-atomic-context bugs + - USB: serial: ti_usb_3410_5052: fix array underflow in completion handler + - USB: yurex: Fix buffer over-read in yurex_write() + - usb: cdc-wdm: Fix a sleep-in-atomic-context bug in + service_outstanding_interrupt() + - Revert "cdc-acm: implement put_char() and flush_chars()" + - cifs: prevent integer overflow in nxt_dir_entry() + - CIFS: fix wrapping bugs in num_entries() + - cifs: integer overflow in in SMB2_ioctl() + - xtensa: ISS: don't allocate memory in platform_setup + - perf/core: Force USER_DS when recording user stack data + - perf tools: Fix maps__find_symbol_by_name() + - of: fix phandle cache creation for DTs with no phandles + - x86/EISA: Don't probe EISA bus for Xen PV guests + - NFSv4: Fix a tracepoint Oops in initiate_file_draining() + - NFSv4.1 fix infinite loop on I/O. + - of: add helper to lookup compatible child node + - mmc: meson-mx-sdio: fix OF child-node lookup + - binfmt_elf: Respect error return from `regset->active' + - net/mlx5: Add missing SET_DRIVER_VERSION command translation + - arm64: dts: uniphier: Add missing cooling device properties for CPUs + - audit: fix use-after-free in audit_add_watch + - mtdchar: fix overflows in adjustment of `count` + - vfs: fix freeze protection in mnt_want_write_file() for overlayfs + - bpf: fix rcu annotations in compute_effective_progs() + - spi: dw: fix possible race condition + - Bluetooth: Use lock_sock_nested in bt_accept_enqueue + - evm: Don't deadlock if a crypto algorithm is unavailable + - KVM: PPC: Book3S HV: Add of_node_put() in success path + - security: check for kstrdup() failure in lsm_append() + - PM / devfreq: use put_device() instead of kfree() + - KVM: PPC: Book3S: Fix matching of hardware and emulated TCE tables + - MIPS: loongson64: cs5536: Fix PCI_OHCI_INT_REG reads + - configfs: fix registered group removal + - pinctrl: mt7622: Fix probe fail by misuse the selector + - pinctrl: rza1: Fix selector use for groups and functions + - arm64: dts: mt7622: update a clock property for UART0 + - sched/core: Use smp_mb() in wake_woken_function() + - efi/esrt: Only call efi_mem_reserve() for boot services memory + - ARM: hisi: handle of_iomap and fix missing of_node_put + - ARM: hisi: fix error handling and missing of_node_put + - ARM: hisi: check of_iomap and fix missing of_node_put + - liquidio: fix hang when re-binding VF host drv after running DPDK VF driver + - gpu: ipu-v3: csi: pass back mbus_code_to_bus_cfg error codes + - ASoC: hdmi-codec: fix routing + - serial: 8250: of: Correct of_platform_serial_setup() error handling + - tty: fix termios input-speed encoding when using BOTHER + - tty: fix termios input-speed encoding + - mmc: sdhci-of-esdhc: set proper dma mask for ls104x chips + - mmc: tegra: prevent HS200 on Tegra 3 + - mmc: sdhci: do not try to use 3.3V signaling if not supported + - drm/nouveau: Fix runtime PM leak in drm_open() + - drm/nouveau/debugfs: Wake up GPU before doing any reclocking + - drm/nouveau: tegra: Detach from ARM DMA/IOMMU mapping + - tls: Fix zerocopy_from_iter iov handling + - parport: sunbpp: fix error return code + - sched/fair: Fix util_avg of new tasks for asymmetric systems + - coresight: Handle errors in finding input/output ports + - coresight: tpiu: Fix disabling timeouts + - coresight: ETM: Add support for Arm Cortex-A73 and Cortex-A35 + - f2fs: do checkpoint in kill_sb + - tools/testing/nvdimm: Fix support for emulating controller temperature + - drm/amd/display: support access ddc for mst branch + - ASoC: qdsp6: q6afe-dai: fix a range check in of_q6afe_parse_dai_data() + - lightnvm: pblk: assume that chunks are closed on 1.2 devices + - lightnvm: pblk: enable line minor version detection + - staging: bcm2835-audio: Don't leak workqueue if open fails + - gpio: pxa: Fix potential NULL dereference + - gpiolib: Mark gpio_suffixes array with __maybe_unused + - net: gemini: Allow multiple ports to instantiate + - net: mvpp2: make sure we use single queue mode on PPv2.1 + - rcutorture: Use monotonic timestamp for stall detection + - mfd: 88pm860x-i2c: switch to i2c_lock_bus(..., I2C_LOCK_SEGMENT) + - input: rohm_bu21023: switch to i2c_lock_bus(..., I2C_LOCK_SEGMENT) + - drm/amdkfd: Fix kernel queue 64 bit doorbell offset calculation + - drm/amdkfd: Fix error codes in kfd_get_process + - rtc: bq4802: add error handling for devm_ioremap + - selftests: vDSO - fix to return KSFT_SKIP when test couldn't be run + - selftests/android: initialize heap_type to avoid compiling warning + - ALSA: pcm: Fix snd_interval_refine first/last with open min/max + - scsi: libfc: fixup 'sleeping function called from invalid context' + - scsi: lpfc: Fix NVME Target crash in defer rcv logic + - scsi: lpfc: Fix panic if driver unloaded when port is offline + - remoteproc: qcom: q6v5-pil: fix modem hang on SDM845 after axis2 clk unvote + - selftest: timers: Tweak raw_skew to SKIP when ADJ_OFFSET/other clock + adjustments are in progress + - ASoC: rt5651: Fix workqueue cancel vs irq free race on remove + - drm/panel: type promotion bug in s6e8aa0_read_mtp_id() + - arm64: perf: Disable PMU while processing counter overflows + - drm/amd/pp: Send khz clock values to DC for smu7/8 + - dmaengine: sh: rcar-dmac: avoid to write CHCR.TE to 1 if TCR is set to 0 + - staging: fsl-dpaa2/eth: Fix DMA mapping direction + - block/DAC960.c: fix defined but not used build warnings + - IB/mlx5: fix uaccess beyond "count" in debugfs read/write handlers + - blk-mq: only attempt to merge bio if there is rq in sw queue + - blk-mq: avoid to synchronize rcu inside blk_cleanup_queue() + - pinctrl: msm: Fix msm_config_group_get() to be compliant + - pinctrl: qcom: spmi-gpio: Fix pmic_gpio_config_get() to be compliant + - clk: tegra: bpmp: Don't crash when a clock fails to register + - mei: bus: type promotion bug in mei_nfc_if_version() + - crypto: ccp - add timeout support in the SEV command + - Linux 4.18.10 + * Fix MCE handling for user access of poisoned device-dax mapping + (LP: #1774366) + - x86/mce: Fix set_mce_nospec() to avoid #GP fault + * [Ubuntu] s390/crypto: Fix return code checking in cbc_paes_crypt. + (LP: #1794294) + - s390/crypto: Fix return code checking in cbc_paes_crypt() + * Oracle cosmic image does not find broadcom network device in Shape + VMStandard2.1 (LP: #1790652) + - SAUCE: bnxt_en: Fix VF mac address regression. + * Page leaking in cachefiles_read_backing_file while vmscan is active + (LP: #1793430) + - SAUCE: cachefiles: Page leaking in cachefiles_read_backing_file while vmscan + is active + * hns3: enable ethtool rx-vlan-filter on supported hw (LP: #1793394) + - net: hns3: Add vlan filter setting by ethtool command -K + * hns3: Modifying channel parameters will reset ring parameters back to + defaults (LP: #1793404) + - net: hns3: Fix desc num set to default when setting channel + * hisi_sas: Add SATA FIX check for v3 hw (LP: #1794151) + - scsi: hisi_sas: Add SATA FIS check for v3 hw + * Fix potential corruption using SAS controller on HiSilicon arm64 boards + (LP: #1794156) + - scsi: hisi_sas: add memory barrier in task delivery function + * hisi_sas: Reduce unnecessary spin lock contention (LP: #1794165) + - scsi: hisi_sas: Tidy hisi_sas_task_prep() + * Add functional level reset support for the SAS controller on HiSilicon D06 + systems (LP: #1794166) + - scsi: hisi_sas: tidy host controller reset function a bit + - scsi: hisi_sas: relocate some common code for v3 hw + - scsi: hisi_sas: Implement handlers of PCIe FLR for v3 hw + * HiSilicon SAS controller doesn't recover from PHY STP link timeout + (LP: #1794172) + - scsi: hisi_sas: tidy channel interrupt handler for v3 hw + - scsi: hisi_sas: Fix the failure of recovering PHY from STP link timeout + * Cosmic update to 4.18.9 stable release (LP: #1793682) + - i2c: xiic: Make the start and the byte count write atomic + - i2c: i801: fix DNV's SMBCTRL register offset + - HID: multitouch: fix Elan panels with 2 input modes declaration + - HID: core: fix grouping by application + - HID: input: fix leaking custom input node name + - mm/hugetlb: filter out hugetlb pages if HUGEPAGE migration is not supported. + - memory_hotplug: fix kernel_panic on offline page processing + - mac80211: don't update the PM state of a peer upon a multicast frame + - scsi: lpfc: Correct MDS diag and nvmet configuration + - nbd: don't allow invalid blocksize settings + - block: don't warn when doing fsync on read-only devices + - block: bfq: swap puts in bfqg_and_blkg_put + - android: binder: fix the race mmap and alloc_new_buf_locked + - MIPS: VDSO: Match data page cache colouring when D$ aliases + - SMB3: Backup intent flag missing for directory opens with backupuid mounts + - smb3: check for and properly advertise directory lease support + - cifs: connect to servername instead of IP for IPC$ share + - btrfs: fix qgroup_free wrong num_bytes in btrfs_subvolume_reserve_metadata + - Btrfs: fix data corruption when deduplicating between different files + - arm64: KVM: Only force FPEXC32_EL2.EN if trapping FPSIMD + - KVM: arm/arm64: Clean dcache to PoC when changing PTE due to CoW + - KVM: PPC: Book3S HV: Use correct pagesize in kvm_unmap_radix() + - KVM: s390: vsie: copy wrapping keys to right place + - KVM: x86: SVM: Set EMULTYPE_NO_REEXECUTE for RSM emulation + - KVM: VMX: Do not allow reexecute_instruction() when skipping MMIO instr + - KVM: x86: Invert emulation re-execute behavior to make it opt-in + - KVM: x86: Merge EMULTYPE_RETRY and EMULTYPE_ALLOW_REEXECUTE + - KVM: x86: Default to not allowing emulation retry in kvm_mmu_page_fault + - KVM: x86: Do not re-{try,execute} after failed emulation in L2 + - ARC: [plat-axs*/plat-hsdk]: Allow U-Boot to pass MAC-address to the kernel + - ACPI / LPSS: Force LPSS quirks on boot + - memory: ti-aemif: fix a potential NULL-pointer dereference + - ALSA: hda - Fix cancel_work_sync() stall from jackpoll work + - cpu/hotplug: Adjust misplaced smb() in cpuhp_thread_fun() + - cpu/hotplug: Prevent state corruption on error rollback + - x86/microcode: Make sure boot_cpu_data.microcode is up-to-date + - x86/microcode: Update the new microcode revision unconditionally + - x86/process: Don't mix user/kernel regs in 64bit __show_regs() + - x86/apic/vector: Make error return value negative + - switchtec: Fix Spectre v1 vulnerability + - ARC: [plat-axs*]: Enable SWAP + - tc-testing: flush gact actions on test teardown + - tc-testing: remove duplicate spaces in connmark match patterns + - misc: mic: SCIF Fix scif_get_new_port() error handling + - ALSA: hda/realtek - Add mute LED quirk for HP Spectre x360 + - ethtool: Remove trailing semicolon for static inline + - i2c: aspeed: Add an explicit type casting for *get_clk_reg_val + - Bluetooth: h5: Fix missing dependency on BT_HCIUART_SERDEV + - pinctrl: berlin: fix 'pctrl->functions' allocation in + berlin_pinctrl_build_state + - gpio: tegra: Move driver registration to subsys_init level + - powerpc/4xx: Fix error return path in ppc4xx_msi_probe() + - selftests/bpf: fix a typo in map in map test + - media: davinci: vpif_display: Mix memory leak on probe error path + - media: dw2102: Fix memleak on sequence of probes + - net: phy: Fix the register offsets in Broadcom iProc mdio mux driver + - scsi: qla2xxx: Fix unintended Logout + - scsi: qla2xxx: Fix session state stuck in Get Port DB + - scsi: qla2xxx: Silent erroneous message + - clk: scmi: Fix the rounding of clock rate + - blk-mq: fix updating tags depth + - scsi: lpfc: Fix driver crash when re-registering NVME rports. + - scsi: target: fix __transport_register_session locking + - md/raid5: fix data corruption of replacements after originals dropped + - timers: Clear timer_base::must_forward_clk with timer_base::lock held + - media: camss: csid: Configure data type and decode format properly + - gpu: ipu-v3: default to id 0 on missing OF alias + - misc: ti-st: Fix memory leak in the error path of probe() + - uio: potential double frees if __uio_register_device() fails + - firmware: vpd: Fix section enabled flag on vpd_section_destroy + - Drivers: hv: vmbus: Cleanup synic memory free path + - tty: rocket: Fix possible buffer overwrite on register_PCI + - uio: fix possible circular locking dependency + - iwlwifi: pcie: don't access periphery registers when not available + - IB/IPoIB: Set ah valid flag in multicast send flow + - f2fs: fix to active page in lru list for read path + - f2fs: do not set free of current section + - f2fs: Keep alloc_valid_block_count in sync + - f2fs: issue discard align to section in LFS mode + - f2fs: fix defined but not used build warnings + - f2fs: fix to detect looped node chain correctly + - ASoC: soc-pcm: Use delay set in component pointer function + - perf tools: Allow overriding MAX_NR_CPUS at compile time + - device-dax: avoid hang on error before devm_memremap_pages() + - NFSv4.0 fix client reference leak in callback + - perf c2c report: Fix crash for empty browser + - perf evlist: Fix error out while applying initial delay and LBR + - powerpc/pseries: fix EEH recovery of some IOV devices + - macintosh/via-pmu: Add missing mmio accessors + - perf build: Fix installation directory for eBPF + - ath9k: report tx status on EOSP + - ath9k_hw: fix channel maximum power level test + - ath10k: prevent active scans on potential unusable channels + - wlcore: Set rx_status boottime_ns field on rx + - rpmsg: core: add support to power domains for devices + - mtd: rawnand: make subop helpers return unsigned values + - scsi: tcmu: do not set max_blocks if data_bitmap has been setup + - MIPS: Fix ISA virt/bus conversion for non-zero PHYS_OFFSET + - ata: libahci: Allow reconfigure of DEVSLP register + - ata: libahci: Correct setting of DEVSLP register + - nfs: Referrals not inheriting proto setting from parent + - scsi: 3ware: fix return 0 on the error path of probe + - tools/testing/nvdimm: kaddr and pfn can be NULL to ->direct_access() + - ath10k: disable bundle mgmt tx completion event support + - media: em28xx: explicitly disable TS packet filter + - PCI: mobiveil: Add missing ../pci.h include + - PCI: mobiveil: Fix struct mobiveil_pcie.pcie_reg_base address type + - powerpc/mm: Don't report PUDs as memory leaks when using kmemleak + - Bluetooth: hidp: Fix handling of strncpy for hid->name information + - x86/mm: Remove in_nmi() warning from vmalloc_fault() + - regulator: tps65217: Fix NULL pointer dereference on probe + - pinctrl: imx: off by one in imx_pinconf_group_dbg_show() + - gpio: pxa: disable pinctrl calls for PXA3xx + - gpio: ml-ioh: Fix buffer underwrite on probe error path + - pinctrl/amd: only handle irq if it is pending and unmasked + - net: mvneta: fix mtu change on port without link + - f2fs: try grabbing node page lock aggressively in sync scenario + - pktcdvd: Fix possible Spectre-v1 for pkt_devs + - f2fs: fix to skip GC if type in SSA and SIT is inconsistent + - tpm_tis_spi: Pass the SPI IRQ down to the driver + - tpm/tpm_i2c_infineon: switch to i2c_lock_bus(..., I2C_LOCK_SEGMENT) + - f2fs: fix to do sanity check with reserved blkaddr of inline inode + - MIPS: Octeon: add missing of_node_put() + - MIPS: generic: fix missing of_node_put() + - thermal: rcar_thermal: avoid NULL dereference in absence of IRQ resources + - thermal_hwmon: Sanitize attribute name passed to hwmon + - net: dcb: For wild-card lookups, use priority -1, not 0 + - dm cache: only allow a single io_mode cache feature to be requested + - Input: atmel_mxt_ts - only use first T9 instance + - media: s5p-mfc: Fix buffer look up in s5p_mfc_handle_frame_{new, copy_time} + functions + - media: rcar-csi2: update stream start for V3M + - media: helene: fix xtal frequency setting at power on + - drm/amd/display: Prevent PSR from being enabled if initialization fails + - media: em28xx: Fix dual transport stream operation + - iommu/arm-smmu-v3: Abort all transactions if SMMU is enabled in kdump kernel + - f2fs: fix to wait on page writeback before updating page + - f2fs: Fix uninitialized return in f2fs_ioc_shutdown() + - media: em28xx: Fix DualHD disconnect oops + - f2fs: avoid potential deadlock in f2fs_sbi_store + - f2fs: fix to do sanity check with secs_per_zone + - mfd: rave-sp: Initialize flow control and parity of the port + - iommu/ipmmu-vmsa: Fix allocation in atomic context + - mfd: ti_am335x_tscadc: Fix struct clk memory leak + - f2fs: fix to do sanity check with {sit,nat}_ver_bitmap_bytesize + - f2fs: fix to propagate return value of scan_nat_page() + - f2fs: fix to do sanity check with extra_attr feature + - RDMA/hns: Add illegal hop_num judgement + - NFSv4.1: Fix a potential layoutget/layoutrecall deadlock + - RDMA/hns: Update the data type of immediate data + - MIPS: WARN_ON invalid DMA cache maintenance, not BUG_ON + - MIPS: mscc: ocelot: fix length of memory address space for MIIM + - RDMA/cma: Do not ignore net namespace for unbound cm_id + - clocksource: Revert "Remove kthread" + - autofs: fix autofs_sbi() does not check super block type + - mm: get rid of vmacache_flush_all() entirely + - Linux 4.18.9 + * SRU: Enable middle button of touchpad on ThinkPad P72 (LP: #1793463) + - Input: elantech - enable middle button of touchpad on ThinkPad P72 + * Improvements to the kernel source package preparation (LP: #1793461) + - [Packaging] startnewrelease: add support for backport kernels + * hns3: Retrieve RoCE MSI-X config from firmware (LP: #1793221) + - net: hns3: Fix MSIX allocation issue for VF + - net: hns3: Refine the MSIX allocation for PF + * Fix unusable NVIDIA GPU after S3 (LP: #1793338) + - SAUCE: PCI: Reprogram bridge prefetch registers on resume + * net: hns: Avoid hang when link is changed while handling packets + (LP: #1792209) + - net: hns: add the code for cleaning pkt in chip + - net: hns: add netif_carrier_off before change speed and duplex + * Cosmic update to v4.18.8 stable release (LP: #1793069) + - act_ife: fix a potential use-after-free + - ipv4: tcp: send zero IPID for RST and ACK sent in SYN-RECV and TIME-WAIT + state + - net: bcmgenet: use MAC link status for fixed phy + - net: macb: do not disable MDIO bus at open/close time + - net: sched: Fix memory exposure from short TCA_U32_SEL + - qlge: Fix netdev features configuration. + - r8169: add support for NCube 8168 network card + - tcp: do not restart timewait timer on rst reception + - vti6: remove !skb->ignore_df check from vti6_xmit() + - act_ife: move tcfa_lock down to where necessary + - act_ife: fix a potential deadlock + - net: sched: action_ife: take reference to meta module + - bnxt_en: Clean up unused functions. + - bnxt_en: Do not adjust max_cp_rings by the ones used by RDMA. + - net/sched: act_pedit: fix dump of extended layered op + - tipc: fix a missing rhashtable_walk_exit() + - hv_netvsc: Fix a deadlock by getting rtnl lock earlier in netvsc_probe() + - tipc: fix the big/little endian issue in tipc_dest + - sctp: remove useless start_fail from sctp_ht_iter in proc + - erspan: set erspan_ver to 1 by default when adding an erspan dev + - net: macb: Fix regression breaking non-MDIO fixed-link PHYs + - ipv6: don't get lwtstate twice in ip6_rt_copy_init() + - net/ipv6: init ip6 anycast rt->dst.input as ip6_input + - net/ipv6: Only update MTU metric if it set + - net/ipv6: Put lwtstate when destroying fib6_info + - net/mlx5: Fix SQ offset in QPs with small RQ + - r8169: set RxConfig after tx/rx is enabled for RTL8169sb/8110sb devices + - Revert "net: stmmac: Do not keep rearming the coalesce timer in stmmac_xmit" + - ip6_vti: fix creating fallback tunnel device for vti6 + - ip6_vti: fix a null pointer deference when destroy vti6 tunnel + - nfp: wait for posted reconfigs when disabling the device + - sctp: hold transport before accessing its asoc in sctp_transport_get_next + - mlxsw: spectrum_switchdev: Do not leak RIFs when removing bridge + - vhost: correctly check the iova range when waking virtqueue + - hv_netvsc: ignore devices that are not PCI + - cifs: check if SMB2 PDU size has been padded and suppress the warning + - hfsplus: don't return 0 when fill_super() failed + - hfs: prevent crash on exit from failed search + - sunrpc: Don't use stack buffer with scatterlist + - fork: don't copy inconsistent signal handler state to child + - fs/proc/vmcore.c: hide vmcoredd_mmap_dumps() for nommu builds + - reiserfs: change j_timestamp type to time64_t + - iommu/rockchip: Handle errors returned from PM framework + - hfsplus: fix NULL dereference in hfsplus_lookup() + - iommu/rockchip: Move irq request past pm_runtime_enable + - fs/proc/kcore.c: use __pa_symbol() for KCORE_TEXT list entries + - fat: validate ->i_start before using + - workqueue: skip lockdep wq dependency in cancel_work_sync() + - workqueue: re-add lockdep dependencies for flushing + - scripts: modpost: check memory allocation results + - apparmor: fix an error code in __aa_create_ns() + - virtio: pci-legacy: Validate queue pfn + - x86/mce: Add notifier_block forward declaration + - i2c: core: ACPI: Make acpi_gsb_i2c_read_bytes() check i2c_transfer return + value + - IB/hfi1: Invalid NUMA node information can cause a divide by zero + - pwm: meson: Fix mux clock names + - powerpc/topology: Get topology for shared processors at boot + - mm/fadvise.c: fix signed overflow UBSAN complaint + - mm: make DEFERRED_STRUCT_PAGE_INIT explicitly depend on SPARSEMEM + - fs/dcache.c: fix kmemcheck splat at take_dentry_name_snapshot() + - platform/x86: intel_punit_ipc: fix build errors + - bpf, sockmap: fix map elem deletion race with smap_stop_sock + - tcp, ulp: fix leftover icsk_ulp_ops preventing sock from reattach + - bpf, sockmap: fix sock_map_ctx_update_elem race with exist/noexist + - net/xdp: Fix suspicious RCU usage warning + - bpf, sockmap: fix leakage of smap_psock_map_entry + - samples/bpf: all XDP samples should unload xdp/bpf prog on SIGTERM + - netfilter: ip6t_rpfilter: set F_IFACE for linklocal addresses + - s390/kdump: Fix memleak in nt_vmcoreinfo + - ipvs: fix race between ip_vs_conn_new() and ip_vs_del_dest() + - mfd: sm501: Set coherent_dma_mask when creating subdevices + - netfilter: x_tables: do not fail xt_alloc_table_info too easilly + - platform/x86: asus-nb-wmi: Add keymap entry for lid flip action on UX360 + - netfilter: fix memory leaks on netlink_dump_start error + - tcp, ulp: add alias for all ulp modules + - ubi: Initialize Fastmap checkmapping correctly + - RDMA/hns: Fix usage of bitmap allocation functions return values + - ACPICA: ACPICA: add status check for acpi_hw_read before assigning return + value + - perf arm spe: Fix uninitialized record error variable + - net: hns3: Fix for command format parsing error in + hclge_is_all_function_id_zero + - block: don't warn for flush on read-only device + - PCI: Match Root Port's MPS to endpoint's MPSS as necessary + - drm/amd/display: Guard against null crtc in CRC IRQ + - coccicheck: return proper error code on fail + - perf tools: Check for null when copying nsinfo. + - f2fs: avoid race between zero_range and background GC + - f2fs: fix avoid race between truncate and background GC + - RISC-V: Use KBUILD_CFLAGS instead of KCFLAGS when building the vDSO + - irqchip/stm32: Fix init error handling + - irqchip/bcm7038-l1: Hide cpu offline callback when building for !SMP + - net/9p/trans_fd.c: fix race by holding the lock + - net/9p: fix error path of p9_virtio_probe + - f2fs: fix to clear PG_checked flag in set_page_dirty() + - pinctrl: axp209: Fix NULL pointer dereference after allocation + - bpf: fix bpffs non-array map seq_show issue + - powerpc/uaccess: Enable get_user(u64, *p) on 32-bit + - powerpc: Fix size calculation using resource_size() + - perf probe powerpc: Fix trace event post-processing + - block: bvec_nr_vecs() returns value for wrong slab + - brcmfmac: fix brcmf_wiphy_wowl_params() NULL pointer dereference + - s390/dasd: fix hanging offline processing due to canceled worker + - s390/dasd: fix panic for failed online processing + - ACPI / scan: Initialize status to ACPI_STA_DEFAULT + - blk-mq: count the hctx as active before allocating tag + - scsi: aic94xx: fix an error code in aic94xx_init() + - NFSv4: Fix error handling in nfs4_sp4_select_mode() + - Input: do not use WARN() in input_alloc_absinfo() + - xen/balloon: fix balloon initialization for PVH Dom0 + - PCI: mvebu: Fix I/O space end address calculation + - dm kcopyd: avoid softlockup in run_complete_job + - staging: comedi: ni_mio_common: fix subdevice flags for PFI subdevice + - ASoC: rt5677: Fix initialization of rt5677_of_match.data + - iommu/omap: Fix cache flushes on L2 table entries + - selftests/powerpc: Kill child processes on SIGINT + - selinux: cleanup dentry and inodes on error in selinuxfs + - RDS: IB: fix 'passing zero to ERR_PTR()' warning + - cfq: Suppress compiler warnings about comparisons + - smb3: fix reset of bytes read and written stats + - CIFS: fix memory leak and remove dead code + - SMB3: Number of requests sent should be displayed for SMB3 not just CIFS + - smb3: if server does not support posix do not allow posix mount option + - powerpc/platforms/85xx: fix t1042rdb_diu.c build errors & warning + - powerpc/64s: Make rfi_flush_fallback a little more robust + - um: fix parallel building with O= option + - powerpc/pseries: Avoid using the size greater than RTAS_ERROR_LOG_MAX. + - clk: rockchip: Add pclk_rkpwm_pmu to PMU critical clocks in rk3399 + - drm/amd/display: Read back max backlight value at boot + - KVM: vmx: track host_state.loaded using a loaded_vmcs pointer + - kvm: nVMX: Fix fault vector for VMX operation at CPL > 0 + - drm/etnaviv: fix crash in GPU suspend when init failed due to buffer + placement + - btrfs: Exit gracefully when chunk map cannot be inserted to the tree + - btrfs: replace: Reset on-disk dev stats value after replace + - btrfs: fix in-memory value of total_devices after seed device deletion + - btrfs: relocation: Only remove reloc rb_trees if reloc control has been + initialized + - btrfs: tree-checker: Detect invalid and empty essential trees + - btrfs: check-integrity: Fix NULL pointer dereference for degraded mount + - btrfs: lift uuid_mutex to callers of btrfs_open_devices + - btrfs: Don't remove block group that still has pinned down bytes + - btrfs: Fix a C compliance issue + - arm64: rockchip: Force CONFIG_PM on Rockchip systems + - ARM: rockchip: Force CONFIG_PM on Rockchip systems + - btrfs: do btrfs_free_stale_devices outside of device_list_add + - btrfs: extend locked section when adding a new device in device_list_add + - btrfs: rename local devices for fs_devices in btrfs_free_stale_devices( + - btrfs: use device_list_mutex when removing stale devices + - btrfs: lift uuid_mutex to callers of btrfs_scan_one_device + - btrfs: lift uuid_mutex to callers of btrfs_parse_early_options + - btrfs: reorder initialization before the mount locks uuid_mutex + - btrfs: fix mount and ioctl device scan ioctl race + - drm/i915/lpe: Mark LPE audio runtime pm as "no callbacks" + - drm/i915: Nuke the LVDS lid notifier + - drm/i915: Increase LSPCON timeout + - drm/i915: Free write_buf that we allocated with kzalloc. + - drm/amdgpu: update uvd_v6_0_ring_vm_funcs to use new nop packet + - drm/amdgpu: fix a reversed condition + - drm/amdgpu: Fix RLC safe mode test in gfx_v9_0_enter_rlc_safe_mode + - drm/amd/pp: Convert voltage unit in mV*4 to mV on CZ/ST + - drm/amd/powerplay: fixed uninitialized value + - drm/amd/pp/Polaris12: Fix a chunk of registers missed to program + - drm/edid: Quirk Vive Pro VR headset non-desktop. + - drm/amd/display: fix type of variable + - drm/amd/display: Don't share clk source between DP and HDMI + - drm/amd/display: update clk for various HDMI color depths + - drm/amd/display: Use requested HDMI aspect ratio + - drm/amd/display: Report non-DP display as disconnected without EDID + - drm/rockchip: lvds: add missing of_node_put + - drm/rockchip: vop: split out core clock enablement into separate functions + - drm/rockchip: vop: fix irq disabled after vop driver probed + - drm/amd/display: Pass connector id when executing VBIOS CT + - drm/amd/display: Check if clock source in use before disabling + - drm/amdgpu: update tmr mc address + - drm/amdgpu:add tmr mc address into amdgpu_firmware_info + - drm/amdgpu:add new firmware id for VCN + - drm/amdgpu:add VCN support in PSP driver + - drm/amdgpu:add VCN booting with firmware loaded by PSP + - drm/amdgpu: fix incorrect use of fcheck + - drm/amdgpu: fix incorrect use of drm_file->pid + - drm/i915: Re-apply "Perform link quality check, unconditionally during long + pulse" + - uapi/linux/keyctl.h: don't use C++ reserved keyword as a struct member name + - mm: respect arch_dup_mmap() return value + - drm/i915: set DP Main Stream Attribute for color range on DDI platforms + - x86/tsc: Prevent result truncation on 32bit + - drm/amdgpu: Keep track of amount of pinned CPU visible VRAM + - drm/amdgpu: Make pin_size values atomic + - drm/amdgpu: Warn and update pin_size values when destroying a pinned BO + - drm/amdgpu: Don't warn on destroying a pinned BO + - debugobjects: Make stack check warning more informative + - x86/pae: use 64 bit atomic xchg function in native_ptep_get_and_clear + - x86/xen: don't write ptes directly in 32-bit PV guests + - kbuild: make missing $DEPMOD a Warning instead of an Error + - kvm: x86: Set highest physical address bits in non-present/reserved SPTEs + - x86: kvm: avoid unused variable warning + - HID: redragon: fix num lock and caps lock LEDs + - ASoC: wm8994: Fix missing break in switch + - Linux 4.18.8 + * [Regression] Colour banding appears on Lenovo B50-80 integrated display + (LP: #1788308) // Cosmic update to v4.18.8 stable release (LP: #1793069) + - drm/edid: Add 6 bpc quirk for SDC panel in Lenovo B50-80 + * Fix I2C touchpanels' interrupt storms after system suspend (LP: #1792309) + - HID: i2c-hid: Fix flooded incomplete report after S3 on Rayd touchscreen + - HID: i2c-hid: Don't reset device upon system resume + * Error reported when creating ZFS pool with "-t" option, despite successful + pool creation (LP: #1769937) + - SAUCE: (noup) Update zfs to 0.7.9-3ubuntu6 + * update ENA driver to latest mainline version (LP: #1792044) + - net: ena: fix surprise unplug NULL dereference kernel crash + - net: ena: fix driver when PAGE_SIZE == 64kB + - net: ena: fix device destruction to gracefully free resources + - net: ena: fix potential double ena_destroy_device() + - net: ena: fix missing lock during device destruction + - net: ena: fix missing calls to READ_ONCE + - net: ena: fix incorrect usage of memory barriers + * device hotplug of vfio devices can lead to deadlock in vfio_pci_release + (LP: #1792099) + - SAUCE: vfio -- release device lock before userspace requests + * [AEP-bug] ext4: more rare direct I/O vs unmap failures (LP: #1787089) + - dax: dax_layout_busy_page() warn on !exceptional + - ext4: handle layout changes to pinned DAX mappings + - xfs: Close race between direct IO and xfs_break_layouts() + * [Bug][CLX]assertion failure with util_range_rw using libpmemlog, possible + kernel DAX bug (LP: #1789146) + - dax: remove VM_MIXEDMAP for fsdax and device dax + * [Feature] Optimize huge page clear/copy cache behavior (LP: #1730836) + - mm, clear_huge_page: move order algorithm into a separate function + - mm, huge page: copy target sub-page last when copy huge page + - mm, hugetlbfs: rename address to haddr in hugetlb_cow() + - mm, hugetlbfs: pass fault address to cow handler + * [ICL] Touch support (LP: #1771245) + - mfd: intel-lpss: Add Ice Lake PCI IDs + * Miscellaneous Ubuntu changes + - [Packaging] retpoline -- fix temporary filenaming + - SAUCE: update aufs to aufs4.18 20180910 + - CONFIG_BCH_CONST_PARAMS=n + - Packaging: final-checks: remove trailing backport suffix + + -- Marcelo Henrique Cerri Tue, 09 Oct 2018 14:07:50 -0300 + +linux-azure (4.18.0-1002.2) cosmic; urgency=medium + + * linux-azure: 4.18.0-1002.2 -proposed tracker (LP: #1791664) + + * Miscellaneous Ubuntu changes + - [Config] updateconfigs after rebase to Ubuntu-4.18.0-8.9 + + [ Ubuntu: 4.18.0-8.9 ] + + * linux: 4.18.0-8.9 -proposed tracker (LP: #1791663) + * Cosmic update to v4.18.7 stable release (LP: #1791660) + - rcu: Make expedited GPs handle CPU 0 being offline + - net: 6lowpan: fix reserved space for single frames + - net: mac802154: tx: expand tailroom if necessary + - 9p/net: Fix zero-copy path in the 9p virtio transport + - spi: davinci: fix a NULL pointer dereference + - spi: pxa2xx: Add support for Intel Ice Lake + - spi: spi-fsl-dspi: Fix imprecise abort on VF500 during probe + - spi: cadence: Change usleep_range() to udelay(), for atomic context + - mmc: block: Fix unsupported parallel dispatch of requests + - mmc: renesas_sdhi_internal_dmac: mask DMAC interrupts + - mmc: renesas_sdhi_internal_dmac: fix #define RST_RESERVED_BITS + - readahead: stricter check for bdi io_pages + - block: fix infinite loop if the device loses discard capability + - block: blk_init_allocated_queue() set q->fq as NULL in the fail case + - block: really disable runtime-pm for blk-mq + - blkcg: Introduce blkg_root_lookup() + - block: Introduce blk_exit_queue() + - block: Ensure that a request queue is dissociated from the cgroup controller + - apparmor: fix bad debug check in apparmor_secid_to_secctx() + - dma-buf: Move BUG_ON from _add_shared_fence to _add_shared_inplace + - libertas: fix suspend and resume for SDIO connected cards + - media: Revert "[media] tvp5150: fix pad format frame height" + - mailbox: xgene-slimpro: Fix potential NULL pointer dereference + - Replace magic for trusting the secondary keyring with #define + - Fix kexec forbidding kernels signed with keys in the secondary keyring to + boot + - powerpc/fadump: handle crash memory ranges array index overflow + - powerpc/64s: Fix page table fragment refcount race vs speculative references + - powerpc/pseries: Fix endianness while restoring of r3 in MCE handler. + - powerpc/pkeys: Give all threads control of their key permissions + - powerpc/pkeys: Deny read/write/execute by default + - powerpc/pkeys: key allocation/deallocation must not change pkey registers + - powerpc/pkeys: Save the pkey registers before fork + - powerpc/pkeys: Fix calculation of total pkeys. + - powerpc/pkeys: Preallocate execute-only key + - powerpc/nohash: fix pte_access_permitted() + - powerpc64/ftrace: Include ftrace.h needed for enable/disable calls + - powerpc/powernv/pci: Work around races in PCI bridge enabling + - cxl: Fix wrong comparison in cxl_adapter_context_get() + - IB/mlx5: Honor cnt_set_id_valid flag instead of set_id + - IB/mlx5: Fix leaking stack memory to userspace + - IB/srpt: Fix srpt_cm_req_recv() error path (1/2) + - IB/srpt: Fix srpt_cm_req_recv() error path (2/2) + - IB/srpt: Support HCAs with more than two ports + - overflow.h: Add arithmetic shift helper + - RDMA/mlx5: Fix shift overflow in mlx5_ib_create_wq + - ib_srpt: Fix a use-after-free in srpt_close_ch() + - ib_srpt: Fix a use-after-free in __srpt_close_all_ch() + - RDMA/rxe: Set wqe->status correctly if an unexpected response is received + - 9p: fix multiple NULL-pointer-dereferences + - fs/9p/xattr.c: catch the error of p9_client_clunk when setting xattr failed + - 9p/virtio: fix off-by-one error in sg list bounds check + - net/9p/client.c: version pointer uninitialized + - net/9p/trans_fd.c: fix race-condition by flushing workqueue before the + kfree() + - dm integrity: change 'suspending' variable from bool to int + - dm thin: stop no_space_timeout worker when switching to write-mode + - dm cache metadata: save in-core policy_hint_size to on-disk superblock + - dm cache metadata: set dirty on all cache blocks after a crash + - dm crypt: don't decrease device limits + - dm writecache: fix a crash due to reading past end of dirty_bitmap + - uart: fix race between uart_put_char() and uart_shutdown() + - Drivers: hv: vmbus: Fix the offer_in_progress in vmbus_process_offer() + - Drivers: hv: vmbus: Reset the channel callback in vmbus_onoffer_rescind() + - iio: sca3000: Fix missing return in switch + - iio: ad9523: Fix displayed phase + - iio: ad9523: Fix return value for ad952x_store() + - extcon: Release locking when sending the notification of connector state + - eventpoll.h: wrap casts in () properly + - vmw_balloon: fix inflation of 64-bit GFNs + - vmw_balloon: do not use 2MB without batching + - vmw_balloon: VMCI_DOORBELL_SET does not check status + - vmw_balloon: fix VMCI use when balloon built into kernel + - rtc: omap: fix resource leak in registration error path + - rtc: omap: fix potential crash on power off + - tracing: Do not call start/stop() functions when tracing_on does not change + - tracing/blktrace: Fix to allow setting same value + - printk/tracing: Do not trace printk_nmi_enter() + - livepatch: Validate module/old func name length + - uprobes: Use synchronize_rcu() not synchronize_sched() + - mfd: hi655x: Fix regmap area declared size for hi655x + - ovl: fix wrong use of impure dir cache in ovl_iterate() + - ACPICA: AML Parser: skip opcodes that open a scope upon parse failure + - ACPICA: Clear status of all events when entering sleep states + - drivers/block/zram/zram_drv.c: fix bug storing backing_dev + - sched: idle: Avoid retaining the tick when it has been stopped + - cpuidle: menu: Handle stopped tick more aggressively + - cpufreq: governor: Avoid accessing invalid governor_data + - PM / sleep: wakeup: Fix build error caused by missing SRCU support + - ALSA: ac97: fix device initialization in the compat layer + - ALSA: ac97: fix check of pm_runtime_get_sync failure + - ALSA: ac97: fix unbalanced pm_runtime_enable + - i2c: designware: Re-init controllers with pm_disabled set on resume + - KVM: VMX: fixes for vmentry_l1d_flush module parameter + - KVM: PPC: Book3S: Fix guest DMA when guest partially backed by THP pages + - xtensa: limit offsets in __loop_cache_{all,page} + - xtensa: increase ranges in ___invalidate_{i,d}cache_all + - block, bfq: return nbytes and not zero from struct cftype .write() method + - pnfs/blocklayout: off by one in bl_map_stripe() + - nfsd: fix leaked file lock with nfs exported overlayfs + - NFSv4 client live hangs after live data migration recovery + - NFSv4: Fix locking in pnfs_generic_recover_commit_reqs + - NFSv4: Fix a sleep in atomic context in nfs4_callback_sequence() + - ARM: tegra: Fix Tegra30 Cardhu PCA954x reset + - ARM: dts: am57xx-idk: Enable dual role for USB2 port + - pwm: omap-dmtimer: Return -EPROBE_DEFER if no dmtimer platform data + - mm/tlb: Remove tlb_remove_table() non-concurrent condition + - iommu/ipmmu-vmsa: Don't register as BUS IOMMU if machine doesn't have IPMMU- + VMSA + - iommu/vt-d: Add definitions for PFSID + - iommu/vt-d: Fix dev iotlb pfsid use + - sys: don't hold uts_sem while accessing userspace memory + - userns: move user access out of the mutex + - ubifs: Fix memory leak in lprobs self-check + - Revert "UBIFS: Fix potential integer overflow in allocation" + - ubifs: Check data node size before truncate + - ubifs: xattr: Don't operate on deleted inodes + - ubifs: Fix directory size calculation for symlinks + - ubifs: Fix synced_i_size calculation for xattr inodes + - pwm: tiehrpwm: Don't use emulation mode bits to control PWM output + - pwm: tiehrpwm: Fix disabling of output of PWMs + - fb: fix lost console when the user unplugs a USB adapter + - udlfb: fix semaphore value leak + - udlfb: fix display corruption of the last line + - udlfb: don't switch if we are switching to the same videomode + - udlfb: set optimal write delay + - udlfb: make a local copy of fb_ops + - udlfb: handle allocation failure + - udlfb: set line_length in dlfb_ops_set_par + - getxattr: use correct xattr length + - libnvdimm: Use max contiguous area for namespace size + - libnvdimm: fix ars_status output length calculation + - bcache: release dc->writeback_lock properly in bch_writeback_thread() + - kconfig: fix "Can't open ..." in parallel build + - perf auxtrace: Fix queue resize + - crypto: vmx - Fix sleep-in-atomic bugs + - crypto: aesni - Use unaligned loads from gcm_context_data + - crypto: arm64/sm4-ce - check for the right CPU feature bit + - crypto: caam - fix DMA mapping direction for RSA forms 2 & 3 + - crypto: caam/jr - fix descriptor DMA unmapping + - crypto: caam/qi - fix error path in xts setkey + - fs/quota: Fix spectre gadget in do_quotactl + - udf: Fix mounting of Win7 created UDF filesystems + - cpuidle: menu: Retain tick when shallow state is selected + - arm64: mm: always enable CONFIG_HOLES_IN_ZONE + - Linux 4.18.7 + * CVE-2017-5715 + - s390: detect etoken facility + - KVM: s390: add etoken support for guests + * Missing Intel GPU pci-id's (LP: #1789924) + - drm/i915/whl: Introducing Whiskey Lake platform + - drm/i915/aml: Introducing Amber Lake platform + - drm/i915/cfl: Add a new CFL PCI ID. + * [18.10 FEAT] Add kernel config options for SMC-R/D (LP: #1789934) + - s390/ism: add device driver for internal shared memory + - CONFIG_ISM=y for s390 + * Cosmic update to v4.18.6 stable release (LP: #1791105) + - PATCH scripts/kernel-doc + - scripts/kernel-doc: Escape all literal braces in regexes + - scsi: libsas: dynamically allocate and free ata host + - xprtrdma: Fix disconnect regression + - mei: don't update offset in write + - cifs: add missing support for ACLs in SMB 3.11 + - CIFS: fix uninitialized ptr deref in smb2 signing + - cifs: add missing debug entries for kconfig options + - cifs: use a refcount to protect open/closing the cached file handle + - cifs: check kmalloc before use + - smb3: enumerating snapshots was leaving part of the data off end + - smb3: Do not send SMB3 SET_INFO if nothing changed + - smb3: don't request leases in symlink creation and query + - smb3: fill in statfs fsid and correct namelen + - btrfs: use correct compare function of dirty_metadata_bytes + - btrfs: don't leak ret from do_chunk_alloc + - Btrfs: fix mount failure after fsync due to hard link recreation + - Btrfs: fix btrfs_write_inode vs delayed iput deadlock + - Btrfs: fix send failure when root has deleted files still open + - Btrfs: send, fix incorrect file layout after hole punching beyond eof + - hwmon: (k10temp) 27C Offset needed for Threadripper2 + - bpf, arm32: fix stack var offset in jit + - regulator: arizona-ldo1: Use correct device to get enable GPIO + - iommu/arm-smmu: Error out only if not enough context interrupts + - printk: Split the code for storing a message into the log buffer + - printk: Create helper function to queue deferred console handling + - printk/nmi: Prevent deadlock when accessing the main log buffer in NMI + - kprobes/arm64: Fix %p uses in error messages + - arm64: Fix mismatched cache line size detection + - arm64: Handle mismatched cache type + - arm64: mm: check for upper PAGE_SHIFT bits in pfn_valid() + - arm64: dts: rockchip: corrected uart1 clock-names for rk3328 + - KVM: arm/arm64: Fix potential loss of ptimer interrupts + - KVM: arm/arm64: Fix lost IRQs from emulated physcial timer when blocked + - KVM: arm/arm64: Skip updating PMD entry if no change + - KVM: arm/arm64: Skip updating PTE entry if no change + - s390/kvm: fix deadlock when killed by oom + - perf kvm: Fix subcommands on s390 + - stop_machine: Reflow cpu_stop_queue_two_works() + - stop_machine: Atomically queue and wake stopper threads + - ext4: check for NUL characters in extended attribute's name + - ext4: use ext4_warning() for sb_getblk failure + - ext4: sysfs: print ext4_super_block fields as little-endian + - ext4: reset error code in ext4_find_entry in fallback + - ext4: fix race when setting the bitmap corrupted flag + - x86/gpu: reserve ICL's graphics stolen memory + - platform/x86: wmi: Do not mix pages and kmalloc + - platform/x86: ideapad-laptop: Apply no_hw_rfkill to Y20-15IKBM, too + - mm: move tlb_table_flush to tlb_flush_mmu_free + - mm/tlb, x86/mm: Support invalidating TLB caches for RCU_TABLE_FREE + - x86/speculation/l1tf: Fix overflow in l1tf_pfn_limit() on 32bit + - x86/speculation/l1tf: Fix off-by-one error when warning that system has too + much RAM + - x86/speculation/l1tf: Suggest what to do on systems with too much RAM + - x86/vdso: Fix vDSO build if a retpoline is emitted + - x86/process: Re-export start_thread() + - KVM: x86: ensure all MSRs can always be KVM_GET/SET_MSR'd + - KVM: x86: SVM: Call x86_spec_ctrl_set_guest/host() with interrupts disabled + - fuse: Don't access pipe->buffers without pipe_lock() + - fuse: fix initial parallel dirops + - fuse: fix double request_end() + - fuse: fix unlocked access to processing queue + - fuse: umount should wait for all requests + - fuse: Fix oops at process_init_reply() + - fuse: Add missed unlock_page() to fuse_readpages_fill() + - lib/vsprintf: Do not handle %pO[^F] as %px + - udl-kms: change down_interruptible to down + - udl-kms: handle allocation failure + - udl-kms: fix crash due to uninitialized memory + - udl-kms: avoid division + - b43legacy/leds: Ensure NUL-termination of LED name string + - b43/leds: Ensure NUL-termination of LED name string + - ASoC: dpcm: don't merge format from invalid codec dai + - ASoC: zte: Fix incorrect PCM format bit usages + - ASoC: sirf: Fix potential NULL pointer dereference + - ASoC: wm_adsp: Correct DSP pointer for preloader control + - soc: qcom: rmtfs-mem: fix memleak in probe error paths + - pinctrl: freescale: off by one in imx1_pinconf_group_dbg_show() + - scsi: qla2xxx: Fix stalled relogin + - x86/vdso: Fix lsl operand order + - x86/nmi: Fix NMI uaccess race against CR3 switching + - x86/irqflags: Mark native_restore_fl extern inline + - x86/spectre: Add missing family 6 check to microcode check + - x86/speculation/l1tf: Increase l1tf memory limit for Nehalem+ + - hwmon: (nct6775) Fix potential Spectre v1 + - x86/entry/64: Wipe KASAN stack shadow before rewind_stack_do_exit() + - x86: Allow generating user-space headers without a compiler + - s390/mm: fix addressing exception after suspend/resume + - s390/lib: use expoline for all bcr instructions + - s390: fix br_r1_trampoline for machines without exrl + - s390/qdio: reset old sbal_state flags + - s390/numa: move initial setup of node_to_cpumask_map + - s390/purgatory: Fix crash with expoline enabled + - s390/purgatory: Add missing FORCE to Makefile targets + - kprobes: Show blacklist addresses as same as kallsyms does + - kprobes: Replace %p with other pointer types + - kprobes/arm: Fix %p uses in error messages + - kprobes: Make list and blacklist root user read only + - MIPS: Correct the 64-bit DSP accumulator register size + - MIPS: memset.S: Fix byte_fixup for MIPSr6 + - MIPS: Always use -march=, not - shortcuts + - MIPS: Change definition of cpu_relax() for Loongson-3 + - MIPS: lib: Provide MIPS64r6 __multi3() for GCC < 7 + - tpm: Return the actual size when receiving an unsupported command + - tpm: separate cmd_ready/go_idle from runtime_pm + - scsi: mpt3sas: Fix calltrace observed while running IO & reset + - scsi: mpt3sas: Fix _transport_smp_handler() error path + - scsi: sysfs: Introduce sysfs_{un,}break_active_protection() + - scsi: core: Avoid that SCSI device removal through sysfs triggers a deadlock + - iscsi target: fix session creation failure handling + - mtd: rawnand: hynix: Use ->exec_op() in hynix_nand_reg_write_op() + - mtd: rawnand: fsmc: Stop using chip->read_buf() + - mtd: rawnand: marvell: add suspend and resume hooks + - mtd: rawnand: qcom: wait for desc completion in all BAM channels + - clk: rockchip: fix clk_i2sout parent selection bits on rk3399 + - clk: npcm7xx: fix memory allocation + - PM / clk: signedness bug in of_pm_clk_add_clks() + - power: generic-adc-battery: fix out-of-bounds write when copying channel + properties + - power: generic-adc-battery: check for duplicate properties copied from iio + channels + - watchdog: Mark watchdog touch functions as notrace + - cdrom: Fix info leak/OOB read in cdrom_ioctl_drive_status + - x86/dumpstack: Don't dump kernel memory based on usermode RIP + - Linux 4.18.6 + - updateconfigs after v4.18.6 stable update + * random oopses on s390 systems using NVMe devices (LP: #1790480) + - s390/pci: fix out of bounds access during irq setup + * [18.10 FEAT] zcrypt DD: introduce APQN tags to support deterministic driver + binding (LP: #1784331) + - s390/zcrypt: code beautify + - s390/zcrypt: AP bus support for alternate driver(s) + - s390/zcrypt: hex string mask improvements for apmask and aqmask. + * performance drop with ATS enabled (LP: #1788097) + - powerpc/powernv: Fix concurrency issue with npu->mmio_atsd_usage + * Fix MCE handling for user access of poisoned device-dax mapping + (LP: #1774366) + - device-dax: Convert to vmf_insert_mixed and vm_fault_t + - device-dax: Enable page_mapping() + - device-dax: Set page->index + - filesystem-dax: Set page->index + - mm, madvise_inject_error: Disable MADV_SOFT_OFFLINE for ZONE_DEVICE pages + - mm, dev_pagemap: Do not clear ->mapping on final put + - mm, madvise_inject_error: Let memory_failure() optionally take a page + reference + - mm, memory_failure: Collect mapping size in collect_procs() + - filesystem-dax: Introduce dax_lock_mapping_entry() + - mm, memory_failure: Teach memory_failure() about dev_pagemap pages + - x86/mm/pat: Prepare {reserve, free}_memtype() for "decoy" addresses + - x86/memory_failure: Introduce {set, clear}_mce_nospec() + - libnvdimm, pmem: Restore page attributes when clearing errors + * Reconcile hns3 SAUCE patches with upstream (LP: #1787477) + - Revert "UBUNTU: SAUCE: {topost} net: hns3: fix comments for + hclge_get_ring_chain_from_mbx" + - Revert "UBUNTU: SAUCE: {topost} net: hns3: fix for using wrong mask and + shift in hclge_get_ring_chain_from_mbx" + - Revert "UBUNTU: SAUCE: {topost} net: hns3: fix for reset_level default + assignment probelm" + - Revert "UBUNTU: SAUCE: {topost} net: hns3: remove unnecessary ring + configuration operation while resetting" + - Revert "UBUNTU: SAUCE: {topost} net: hns3: fix return value error in + hns3_reset_notify_down_enet" + - Revert "UBUNTU: SAUCE: net: hns3: Fix for phy link issue when using marvell + phy driver" + - Revert "UBUNTU: SAUCE: {topost} net: hns3: separate roce from nic when + resetting" + - Revert "UBUNTU: SAUCE: {topost} net: hns3: correct reset event status + register" + - Revert "UBUNTU: SAUCE: {topost} net: hns3: prevent to request reset + frequently" + - Revert "UBUNTU: SAUCE: {topost} net: hns3: reset net device with rtnl_lock" + - Revert "UBUNTU: SAUCE: {topost} net: hns3: modify the order of initializeing + command queue register" + - Revert "UBUNTU: SAUCE: {topost} net: hns3: prevent sending command during + global or core reset" + - Revert "UBUNTU: SAUCE: {topost} net: hns3: Use roce handle when calling roce + callback function" + - Revert "UBUNTU: SAUCE: {topost} net: hns3: remove the warning when clear + reset cause" + - Revert "UBUNTU: SAUCE: {topost} net: hns3: fix get_vector ops in + hclgevf_main module" + - Revert "UBUNTU: SAUCE: {topost} net: hns3: fix warning bug when doing lp + selftest" + - Revert "UBUNTU: SAUCE: {topost} net: hns3: Add configure for mac minimal + frame size" + - Revert "UBUNTU: SAUCE: {topost} net: hns3: fix for mailbox message truncated + problem" + - Revert "UBUNTU: SAUCE: {topost} net: hns3: fix for l4 checksum offload bug" + - Revert "UBUNTU: SAUCE: {topost} net: hns3: fix for waterline not setting + correctly" + - Revert "UBUNTU: SAUCE: {topost} net: hns3: fix for mac pause not disable in + pfc mode" + - Revert "UBUNTU: SAUCE: {topost} net: hns3: fix tc setup when netdev is first + up" + - Revert "UBUNTU: SAUCE: {topost} net: hns3: Add calling roce callback + function when link status change" + - Revert "UBUNTU: SAUCE: {topost} net: hns3: optimize the process of notifying + roce client" + - Revert "UBUNTU: SAUCE: {topost} net: hns3: Add pf reset for hip08 RoCE" + - Revert "UBUNTU: SAUCE: {topost} net: hns3: Add SPDX tags to hns3 driver" + - Revert "UBUNTU: SAUCE: {topost} net: hns3: remove unused struct member and + definition" + - Revert "UBUNTU: SAUCE: {topost} net: hns3: fix mislead parameter name" + - Revert "UBUNTU: SAUCE: {topost} net: hns3: modify inconsistent bit mask + macros" + - Revert "UBUNTU: SAUCE: {topost} net: hns3: use decimal for bit offset + macros" + - Revert "UBUNTU: SAUCE: {topost} net: hns3: fix unreasonable code comments" + - Revert "UBUNTU: SAUCE: {topost} net: hns3: remove extra space and brackets" + - Revert "UBUNTU: SAUCE: {topost} net: hns3: standardize the handle of return + value" + - Revert "UBUNTU: SAUCE: {topost} net: hns3: remove some redundant + assignments" + - Revert "UBUNTU: SAUCE: {topost} net: hns3: modify hnae_ to hnae3_" + - Revert "UBUNTU: SAUCE: {topost} net: hns3: use dma_zalloc_coherent instead + of kzalloc/dma_map_single" + - Revert "UBUNTU: SAUCE: {topost} net: hns3: give default option while + dependency HNS3 set" + - Revert "UBUNTU: SAUCE: {topost} net: hns3: remove some unused members of + some structures" + - Revert "UBUNTU: SAUCE: {topost} net: hns3: remove a redundant + hclge_cmd_csq_done" + - Revert "UBUNTU: SAUCE: {topost} net: hns3: using modulo for cyclic counters + in hclge_cmd_send" + - Revert "UBUNTU: SAUCE: {topost} net: hns3: simplify hclge_cmd_csq_clean" + - Revert "UBUNTU: SAUCE: {topost} net: hns3: remove some redundant + assignments" + - Revert "UBUNTU: SAUCE: {topost} net: hns3: remove useless code in + hclge_cmd_send" + - Revert "UBUNTU: SAUCE: {topost} net: hns3: remove unused + hclge_ring_to_dma_dir" + - Revert "UBUNTU: SAUCE: {topost} net: hns3: use lower_32_bits and + upper_32_bits" + - Revert "UBUNTU: SAUCE: {topost} net: hns3: remove back in struct hclge_hw" + - Revert "UBUNTU: SAUCE: {topost} net: hns3: add unlikely for error check" + - Revert "UBUNTU: SAUCE: {topost} net: hns3: remove the Redundant put_vector + in hns3_client_uninit" + - Revert "UBUNTU: SAUCE: {topost} net: hns3: print the ret value in error + information" + - Revert "UBUNTU: SAUCE: {topost} net: hns3: extraction an interface for state + state init|uninit" + - Revert "UBUNTU: SAUCE: {topost} net: hns3: remove unused head file in + hnae3.c" + - Revert "UBUNTU: SAUCE: {topost} net: hns3: add l4_type check for both ipv4 + and ipv6" + - Revert "UBUNTU: SAUCE: {topost} net: hns3: add vector status check before + free vector" + - Revert "UBUNTU: SAUCE: {topost} net: hns3: rename the interface for + init_client_instance and uninit_client_instance" + - Revert "UBUNTU: SAUCE: {topost} net: hns3: remove hclge_get_vector_index + from hclge_bind_ring_with_vector" + - Revert "UBUNTU: SAUCE: {topost} net: hns3: RX BD information valid only in + last BD except VLD bit and buffer size" + - Revert "UBUNTU: SAUCE: {topost} net: hns3: add support for serdes loopback + selftest" + - net: hns3: Updates RX packet info fetch in case of multi BD + - net: hns3: remove hclge_get_vector_index from hclge_bind_ring_with_vector + - net: hns3: rename the interface for init_client_instance and + uninit_client_instance + - net: hns3: add vector status check before free vector + - net: hns3: add l4_type check for both ipv4 and ipv6 + - net: hns3: add unlikely for error check + - net: hns3: remove unused head file in hnae3.c + - net: hns3: extraction an interface for state init|uninit + - net: hns3: print the ret value in error information + - net: hns3: remove the Redundant put_vector in hns3_client_uninit + - net: hns3: remove back in struct hclge_hw + - net: hns3: use lower_32_bits and upper_32_bits + - net: hns3: remove unused hclge_ring_to_dma_dir + - net: hns3: remove useless code in hclge_cmd_send + - net: hns3: remove some redundant assignments + - net: hns3: simplify hclge_cmd_csq_clean + - net: hns3: remove a redundant hclge_cmd_csq_done + - net: hns3: remove some unused members of some structures + - net: hns3: give default option while dependency HNS3 set + - net: hns3: use dma_zalloc_coherent instead of kzalloc/dma_map_single + - net: hns3: modify hnae_ to hnae3_ + - net: hns3: Fix tc setup when netdev is first up + - net: hns3: Fix for mac pause not disable in pfc mode + - net: hns3: Fix for waterline not setting correctly + - net: hns3: Fix for l4 checksum offload bug + - net: hns3: Fix for mailbox message truncated problem + - net: hns3: Add configure for mac minimal frame size + - net: hns3: Fix warning bug when doing lp selftest + - net: hns3: Fix get_vector ops in hclgevf_main module + - net: hns3: Remove the warning when clear reset cause + - net: hns3: Prevent sending command during global or core reset + - net: hns3: Modify the order of initializing command queue register + - net: hns3: Reset net device with rtnl_lock + - net: hns3: Prevent to request reset frequently + - net: hns3: Correct reset event status register + - net: hns3: Fix return value error in hns3_reset_notify_down_enet + - net: hns3: remove unnecessary ring configuration operation while resetting + - net: hns3: Fix for reset_level default assignment probelm + - net: hns3: Fix for using wrong mask and shift in + hclge_get_ring_chain_from_mbx + - net: hns3: Fix comments for hclge_get_ring_chain_from_mbx + - net: hns3: Remove some redundant assignments + - net: hns3: Standardize the handle of return value + - net: hns3: Remove extra space and brackets + - net: hns3: Correct unreasonable code comments + - net: hns3: Use decimal for bit offset macros + - net: hns3: Modify inconsistent bit mask macros + - net: hns3: Fix misleading parameter name + - net: hns3: Remove unused struct member and definition + - net: hns3: Add SPDX tags to HNS3 PF driver + - net: hns3: Add support for serdes loopback selftest + - net: hns3: Fix for phy link issue when using marvell phy driver + * [Regression] kernel crashdump fails on arm64 (LP: #1786878) + - arm64: export memblock_reserve()d regions via /proc/iomem + - drivers: acpi: add dependency of EFI for arm64 + - efi/arm: preserve early mapping of UEFI memory map longer for BGRT + - efi/arm: map UEFI memory map even w/o runtime services enabled + - arm64: acpi: fix alignment fault in accessing ACPI + - [Config] CONFIG_ARCH_SUPPORTS_ACPI=y + - arm64: fix ACPI dependencies + - ACPI: fix menuconfig presentation of ACPI submenu + * TB 16 issue on Dell Lattitude 7490 with large amount of data (LP: #1785780) + - r8152: disable RX aggregation on new Dell TB16 dock + * Support Power Management for Thunderbolt Controller (LP: #1789358) + - thunderbolt: Use 64-bit DMA mask if supported by the platform + - thunderbolt: Do not unnecessarily call ICM get route + - thunderbolt: No need to take tb->lock in domain suspend/complete + - thunderbolt: Use correct ICM commands in system suspend + - thunderbolt: Add support for runtime PM + * Enable AMD PCIe MP2 for AMDI0011 (LP: #1773940) + - SAUCE: i2c:amd I2C Driver based on PCI Interface for upcoming platform + - SAUCE: i2c:amd move out pointer in union i2c_event_base + - SAUCE: i2c:amd Depends on ACPI + - [Config] i2c: CONFIG_I2C_AMD_MP2=y on x86 + * Microphone cannot be detected with front panel audio combo jack on HP Z8-G4 + machine (LP: #1789145) + - ALSA: hda/realtek - Fix HP Headset Mic can't record + * Please enable CONFIG_PAGE_POISONING (LP: #1783651) + - [Config] Enable CONFIG_PAGE_POISONING configs + * Tango platform uses __initcall without further checks (LP: #1787945) + - [Config] disable ARCH_TANGO + * [18.10 FEAT] SMC-Direct (LP: #1786902) + - net/smc: determine port attributes independent from pnet table + - net/smc: add pnetid support + - net/smc: add base infrastructure for SMC-D and ISM + - net/smc: add pnetid support for SMC-D and ISM + - net/smc: add SMC-D support in CLC messages + - net/smc: add SMC-D support in data transfer + - net/smc: add SMC-D support in af_smc + - net/smc: add SMC-D diag support + - net/smc: provide smc mode in smc_diag.c + - net/smc: eliminate cursor read and write calls + - net/smc: add function to get link group from link + - net/smc: use DECLARE_BITMAP for rtokens_used_mask + - net/smc: remove local variable page in smc_rx_splice() + - net/smc: Remove a WARN_ON() statement + - net/smc: Simplify ib_post_(send|recv|srq_recv)() calls + - net/smc: fewer parameters for smc_llc_send_confirm_link() + - net/smc: use correct vlan gid of RoCE device + - net/smc: provide fallback reason code + - net/smc: improve delete link processing + - net: simplify sock_poll_wait + - net/smc: send response to test link signal + * Miscellaneous Ubuntu changes + - [Config] update annotations for CONFIG_CRYPTO_SPECK_NEON + - [Config] fix up annotatios for CONFIG_CRYPTO_SPECK + + -- Marcelo Henrique Cerri Mon, 17 Sep 2018 10:52:13 -0300 + +linux-azure (4.18.0-1001.1) cosmic; urgency=medium + + * linux-azure: 4.18.0-1001.1 -proposed tracker (LP: #1791377) + + * linux-azure: make sure CONFIG_MLX{4,5}_INFINIBAND stays as "y" + (LP: #1785822) + - [Config] azure: Ensure CONFIG_MLX5_INFINIBAND=y + + * Miscellaneous Ubuntu changes + - SAUCE: vmbus-rdma: do not use rdma_addr_{un,}register_client anymore + - [Config] updateconfigs after rebase to Ubuntu-4.18.0-7.8 + + [ Ubuntu: 4.18.0-7.8 ] + + * linux: 4.18.0-7.8 -proposed tracker (LP: #1789459) + * pmtu.sh fails on 4.18 kernel (LP: #1789436) + - SAUCE: Revert "vti6: fix PMTU caching and reporting on xmit" + + [ Ubuntu: 4.18.0-6.7 ] + + * linux: 4.18.0-6.7 -proposed tracker (LP: #1788881) + * systemd 237-3ubuntu10 ADT test failure with linux 4.18.0-5.6 (LP: #1787440) + - Config: Disable BPF_JIT_ALWAYS_ON on i386 + * execveat03 in ubuntu_ltp_syscalls failed on X/B (LP: #1786729) + - cap_inode_getsecurity: use d_find_any_alias() instead of d_find_alias() + * Cosmic update to v4.18.5 stable release (LP: #1788874) + - EDAC: Add missing MEM_LRDDR4 entry in edac_mem_types[] + - pty: fix O_CLOEXEC for TIOCGPTPEER + - mm: Allow non-direct-map arguments to free_reserved_area() + - x86/mm/init: Pass unconverted symbol addresses to free_init_pages() + - x86/mm/init: Add helper for freeing kernel image pages + - x86/mm/init: Remove freed kernel image areas from alias mapping + - powerpc64s: Show ori31 availability in spectre_v1 sysfs file not v2 + - ext4: fix spectre gadget in ext4_mb_regular_allocator() + - drm/i915/kvmgt: Fix potential Spectre v1 + - drm/amdgpu/pm: Fix potential Spectre v1 + - parisc: Remove unnecessary barriers from spinlock.h + - parisc: Remove ordered stores from syscall.S + - PCI: Restore resized BAR state on resume + - PCI / ACPI / PM: Resume all bridges on suspend-to-RAM + - PCI: hotplug: Don't leak pci_slot on registration failure + - PCI: aardvark: Size bridges before resources allocation + - PCI: Skip MPS logic for Virtual Functions (VFs) + - PCI: pciehp: Fix use-after-free on unplug + - PCI: pciehp: Fix unprotected list iteration in IRQ handler + - i2c: core: ACPI: Properly set status byte to 0 for multi-byte writes + - i2c: imx: Fix race condition in dma read + - reiserfs: fix broken xattr handling (heap corruption, bad retval) + - Linux 4.18.5 + * [18.10 FEAT] Add kernel config option "CONFIG_SCLP_OFB" (LP: #1787898) + - [Config] CONFIG_SCLP_OFB=y for s390x + * errors when scanning partition table of corrupted AIX disk (LP: #1787281) + - partitions/aix: fix usage of uninitialized lv_info and lvname structures + - partitions/aix: append null character to print data from disk + * Apply NVMe bugfix from Google that bjf asked for (LP: #1787635) + - nvme-pci: add a memory barrier to nvme_dbbuf_update_and_check_event + * ThinkPad systems have no HDMI sound when using the nvidia GPU (LP: #1787058) + - ACPI / OSI: Add OEM _OSI string to enable NVidia HDMI audio + * Cosmic update to v4.18.4 stable release (LP: #1788454) + - l2tp: use sk_dst_check() to avoid race on sk->sk_dst_cache + - net_sched: fix NULL pointer dereference when delete tcindex filter + - net_sched: Fix missing res info when create new tc_index filter + - r8169: don't use MSI-X on RTL8168g + - ALSA: hda - Sleep for 10ms after entering D3 on Conexant codecs + - ALSA: hda - Turn CX8200 into D3 as well upon reboot + - ALSA: vx222: Fix invalid endian conversions + - ALSA: virmidi: Fix too long output trigger loop + - ALSA: cs5535audio: Fix invalid endian conversion + - ALSA: dice: fix wrong copy to rx parameters for Alesis iO26 + - ALSA: hda: Correct Asrock B85M-ITX power_save blacklist entry + - ALSA: memalloc: Don't exceed over the requested size + - ALSA: vxpocket: Fix invalid endian conversions + - ALSA: seq: Fix poll() error return + - media: gl861: fix probe of dvb_usb_gl861 + - USB: serial: sierra: fix potential deadlock at close + - USB: serial: pl2303: add a new device id for ATEN + - USB: option: add support for DW5821e + - ACPI / PM: save NVS memory for ASUS 1025C laptop + - tty: serial: 8250: Revert NXP SC16C2552 workaround + - serial: 8250_exar: Read INT0 from slave device, too + - serial: 8250_dw: always set baud rate in dw8250_set_termios + - serial: 8250_dw: Add ACPI support for uart on Broadcom SoC + - uio: fix wrong return value from uio_mmap() + - misc: sram: fix resource leaks in probe error path + - Revert "uio: use request_threaded_irq instead" + - Bluetooth: avoid killing an already killed socket + - isdn: Disable IIOCDBGVAR + - net: sock_diag: Fix spectre v1 gadget in __sock_diag_cmd() + - hv/netvsc: Fix NULL dereference at single queue mode fallback + - r8169: don't use MSI-X on RTL8106e + - ip_vti: fix a null pointer deferrence when create vti fallback tunnel + - net: ethernet: mvneta: Fix napi structure mixup on armada 3700 + - net: mvneta: fix mvneta_config_rss on armada 3700 + - cls_matchall: fix tcf_unbind_filter missing + - Linux 4.18.4 + * Cosmic update to v4.18.3 stable release (LP: #1788453) + - x86/speculation/l1tf: Exempt zeroed PTEs from inversion + - Linux 4.18.3 + * Cosmic update to v4.18.2 stable release (LP: #1788452) + - x86/l1tf: Fix build error seen if CONFIG_KVM_INTEL is disabled + - x86: i8259: Add missing include file + - x86/hyper-v: Check for VP_INVAL in hyperv_flush_tlb_others() + - x86/platform/UV: Mark memblock related init code and data correctly + - x86/mm/pti: Clear Global bit more aggressively + - xen/pv: Call get_cpu_address_sizes to set x86_virt/phys_bits + - x86/mm: Disable ioremap free page handling on x86-PAE + - kbuild: verify that $DEPMOD is installed + - crypto: ccree - fix finup + - crypto: ccree - fix iv handling + - crypto: ccp - Check for NULL PSP pointer at module unload + - crypto: ccp - Fix command completion detection race + - crypto: x86/sha256-mb - fix digest copy in sha256_mb_mgr_get_comp_job_avx2() + - crypto: vmac - require a block cipher with 128-bit block size + - crypto: vmac - separate tfm and request context + - crypto: blkcipher - fix crash flushing dcache in error path + - crypto: ablkcipher - fix crash flushing dcache in error path + - crypto: skcipher - fix aligning block size in skcipher_copy_iv() + - crypto: skcipher - fix crash flushing dcache in error path + - ioremap: Update pgtable free interfaces with addr + - x86/mm: Add TLB purge to free pmd/pte page interfaces + - Linux 4.18.2 + * Cosmic update to v4.18.2 stable release (LP: #1788452) // CVE-2018-9363 + - Bluetooth: hidp: buffer overflow in hidp_process_report + * linux-cloud-tools-common: Ensure hv-kvp-daemon.service starts before + walinuxagent.service (LP: #1739107) + - [Debian] hyper-v -- Ensure that hv-kvp-daemon.service starts before + walinuxagent.service + * Miscellaneous Ubuntu changes + - SAUCE: ipvs: remove nbsp characters from Kconfig + - [Config] CONFIG_MPROFILE_KERNEL=y for ppc64el + - [Config] CONFIG_DRM_RCAR_LVDS=m for snapdragon + - [Config] CONFIG_MDIO_MSCC_MIIM=n for s390x + - [Config] CONFIG_NET_VENDOR_MICROSEMI=n, CONFIG_NET_VENDOR_NI=n for s390x + - [Config] update annotations following config review + - [Debian] set CROSS_COMPILE when generating kernel configs + - [Config] Disable the Speck cipher + + [ Ubuntu: 4.18.0-5.6 ] + + * Cosmic update to v4.18.1 stable release (LP: #1787264) + - x86/paravirt: Fix spectre-v2 mitigations for paravirt guests + - x86/speculation: Protect against userspace-userspace spectreRSB + - kprobes/x86: Fix %p uses in error messages + - x86/irqflags: Provide a declaration for native_save_fl + - x86/speculation/l1tf: Increase 32bit PAE __PHYSICAL_PAGE_SHIFT + - x86/speculation/l1tf: Change order of offset/type in swap entry + - x86/speculation/l1tf: Protect swap entries against L1TF + - x86/speculation/l1tf: Protect PROT_NONE PTEs against speculation + - x86/speculation/l1tf: Make sure the first page is always reserved + - x86/speculation/l1tf: Add sysfs reporting for l1tf + - x86/speculation/l1tf: Disallow non privileged high MMIO PROT_NONE mappings + - x86/speculation/l1tf: Limit swap file size to MAX_PA/2 + - x86/bugs: Move the l1tf function and define pr_fmt properly + - sched/smt: Update sched_smt_present at runtime + - x86/smp: Provide topology_is_primary_thread() + - x86/topology: Provide topology_smt_supported() + - cpu/hotplug: Make bringup/teardown of smp threads symmetric + - cpu/hotplug: Split do_cpu_down() + - cpu/hotplug: Provide knobs to control SMT + - x86/cpu: Remove the pointless CPU printout + - x86/cpu/AMD: Remove the pointless detect_ht() call + - x86/cpu/common: Provide detect_ht_early() + - x86/cpu/topology: Provide detect_extended_topology_early() + - x86/cpu/intel: Evaluate smp_num_siblings early + - x86/CPU/AMD: Do not check CPUID max ext level before parsing SMP info + - x86/cpu/AMD: Evaluate smp_num_siblings early + - x86/apic: Ignore secondary threads if nosmt=force + - x86/speculation/l1tf: Extend 64bit swap file size limit + - x86/cpufeatures: Add detection of L1D cache flush support. + - x86/CPU/AMD: Move TOPOEXT reenablement before reading smp_num_siblings + - x86/speculation/l1tf: Protect PAE swap entries against L1TF + - x86/speculation/l1tf: Fix up pte->pfn conversion for PAE + - Revert "x86/apic: Ignore secondary threads if nosmt=force" + - cpu/hotplug: Boot HT siblings at least once + - x86/KVM: Warn user if KVM is loaded SMT and L1TF CPU bug being present + - x86/KVM/VMX: Add module argument for L1TF mitigation + - x86/KVM/VMX: Add L1D flush algorithm + - x86/KVM/VMX: Add L1D MSR based flush + - x86/KVM/VMX: Add L1D flush logic + - x86/KVM/VMX: Split the VMX MSR LOAD structures to have an host/guest numbers + - x86/KVM/VMX: Add find_msr() helper function + - x86/KVM/VMX: Separate the VMX AUTOLOAD guest/host number accounting + - x86/KVM/VMX: Extend add_atomic_switch_msr() to allow VMENTER only MSRs + - x86/KVM/VMX: Use MSR save list for IA32_FLUSH_CMD if required + - cpu/hotplug: Online siblings when SMT control is turned on + - x86/litf: Introduce vmx status variable + - x86/kvm: Drop L1TF MSR list approach + - x86/l1tf: Handle EPT disabled state proper + - x86/kvm: Move l1tf setup function + - x86/kvm: Add static key for flush always + - x86/kvm: Serialize L1D flush parameter setter + - x86/kvm: Allow runtime control of L1D flush + - cpu/hotplug: Expose SMT control init function + - cpu/hotplug: Set CPU_SMT_NOT_SUPPORTED early + - x86/bugs, kvm: Introduce boot-time control of L1TF mitigations + - Documentation: Add section about CPU vulnerabilities + - x86/speculation/l1tf: Unbreak !__HAVE_ARCH_PFN_MODIFY_ALLOWED architectures + - x86/KVM/VMX: Initialize the vmx_l1d_flush_pages' content + - Documentation/l1tf: Fix typos + - cpu/hotplug: detect SMT disabled by BIOS + - x86/KVM/VMX: Don't set l1tf_flush_l1d to true from vmx_l1d_flush() + - x86/KVM/VMX: Replace 'vmx_l1d_flush_always' with 'vmx_l1d_flush_cond' + - x86/KVM/VMX: Move the l1tf_flush_l1d test to vmx_l1d_flush() + - x86/irq: Demote irq_cpustat_t::__softirq_pending to u16 + - x86/KVM/VMX: Introduce per-host-cpu analogue of l1tf_flush_l1d + - x86: Don't include linux/irq.h from asm/hardirq.h + - x86/irq: Let interrupt handlers set kvm_cpu_l1tf_flush_l1d + - x86/KVM/VMX: Don't set l1tf_flush_l1d from vmx_handle_external_intr() + - Documentation/l1tf: Remove Yonah processors from not vulnerable list + - x86/speculation: Simplify sysfs report of VMX L1TF vulnerability + - x86/speculation: Use ARCH_CAPABILITIES to skip L1D flush on vmentry + - KVM: VMX: Tell the nested hypervisor to skip L1D flush on vmentry + - cpu/hotplug: Fix SMT supported evaluation + - x86/speculation/l1tf: Invert all not present mappings + - x86/speculation/l1tf: Make pmd/pud_mknotpresent() invert + - x86/mm/pat: Make set_memory_np() L1TF safe + - x86/mm/kmmio: Make the tracer robust against L1TF + - tools headers: Synchronise x86 cpufeatures.h for L1TF additions + - x86/microcode: Allow late microcode loading with SMT disabled + - x86/smp: fix non-SMP broken build due to redefinition of + apic_id_is_primary_thread + - cpu/hotplug: Non-SMP machines do not make use of booted_once + - x86/init: fix build with CONFIG_SWAP=n + - Linux 4.18.1 + - [Config] updateconfigs after v4.18.1 stable update + * Consider enabling CONFIG_NETWORK_PHY_TIMESTAMPING (LP: #1785816) + - [Config] Enable timestamping in network PHY devices + * Miscellaneous Ubuntu changes + - [Config] CONFIG_SYSCTL_SYSCALL=n + * Rebase to v4.18 + + [ Ubuntu: 4.18.0-4.5 ] + + * Rebase to v4.18-rc8 + + [ Ubuntu: 4.18.0-3.4 ] + + * Suspend fails in Ubuntu and Kubuntu 18.04 but works fine in Ubuntu and + Kubuntu 17.10 (and on Kubuntu 18.04 using kernel 4.14.47) (LP: #1774950) + - ACPI / LPSS: Avoid PM quirks on suspend and resume from hibernation + * hinic interfaces aren't getting predictable names (LP: #1783138) + - hinic: Link the logical network device to the pci device in sysfs + * libvirtd is unable to configure bridge devices inside of LXD containers + (LP: #1784501) + - kernfs: allow creating kernfs objects with arbitrary uid/gid + - sysfs, kobject: allow creating kobject belonging to arbitrary users + - kobject: kset_create_and_add() - fetch ownership info from parent + - driver core: set up ownership of class devices in sysfs + - net-sysfs: require net admin in the init ns for setting tx_maxrate + - net-sysfs: make sure objects belong to container's owner + - net: create reusable function for getting ownership info of sysfs inodes + - bridge: make sure objects belong to container's owner + - sysfs: Fix regression when adding a file to an existing group + * locking sockets broken due to missing AppArmor socket mediation patches + (LP: #1780227) + - UBUNTU SAUCE: apparmor: fix apparmor mediating locking non-fs, unix sockets + * Update2 for ocxl driver (LP: #1781436) + - ocxl: Fix page fault handler in case of fault on dying process + * HDMI/DP audio can't work on the laptop of Dell Latitude 5495 (LP: #1782689) + - ALSA: hda: use PCI_BASE_CLASS_DISPLAY to replace PCI_CLASS_DISPLAY_VGA + - vga_switcheroo: set audio client id according to bound GPU id + * Allow Raven Ridge's audio controller to be runtime suspended (LP: #1782540) + - ALSA: hda: Add AZX_DCAPS_PM_RUNTIME for AMD Raven Ridge + * Invoking obsolete 'firmware_install' target breaks snap build (LP: #1782166) + - snapcraft.yaml: stop invoking the obsolete (and non-existing) + 'firmware_install' target + * snapcraft.yaml: missing ubuntu-retpoline-extract-one script breaks the build + (LP: #1782116) + - snapcraft.yaml: copy retpoline-extract-one to scripts before build + * Rebase to v4.18-rc7 + + [ Ubuntu: 4.18.0-2.3 ] + + * Kernel error "task zfs:pid blocked for more than 120 seconds" (LP: #1781364) + - SAUCE: (noup) zfs to 0.7.9-3ubuntu4 + * [Regression] EXT4-fs error (device sda1): ext4_validate_inode_bitmap:99: + comm stress-ng: Corrupt inode bitmap (LP: #1780137) + - SAUCE: ext4: fix ext4_validate_inode_bitmap: comm stress-ng: Corrupt inode + bitmap + * Cloud-init causes potentially huge boot delays with 4.15 kernels + (LP: #1780062) + - random: Make getrandom() ready earlier + * hisi_sas_v3_hw: internal task abort: timeout and not done. (LP: #1777736) + - scsi: hisi_sas: Update a couple of register settings for v3 hw + * hisi_sas: Add missing PHY spinlock init (LP: #1777734) + - scsi: hisi_sas: Add missing PHY spinlock init + * hisi_sas: improve read performance by pre-allocating slot DMA buffers + (LP: #1777727) + - scsi: hisi_sas: Use dmam_alloc_coherent() + - scsi: hisi_sas: Pre-allocate slot DMA buffers + * hisi_sas: Failures during host reset (LP: #1777696) + - scsi: hisi_sas: Only process broadcast change in phy_bcast_v3_hw() + - scsi: hisi_sas: Fix the conflict between dev gone and host reset + - scsi: hisi_sas: Adjust task reject period during host reset + - scsi: hisi_sas: Add a flag to filter PHY events during reset + - scsi: hisi_sas: Release all remaining resources in clear nexus ha + * Miscellaneous Ubuntu changes + - SAUCE: (noup) Update spl to 0.7.9-3ubuntu2, zfs to 0.7.9-3ubuntu3 + - SAUCE: mm: Fix exports that inadvertently make put_page() EXPORT_SYMBOL_GPL + - Enable zfs build + - SAUCE: Import aufs driver + - Revert "UBUNTU: [Config]: set CONFIG_EDAC_DEBUG=y for ARM64" + - [Config] retpoline -- review and accept retpoline changes + * Rebase to v4.18-rc5 + * Rebase to v4.18-rc6 + + [ Ubuntu: 4.18.0-1.2 ] + + * Rebase to v4.18-rc4 + + [ Ubuntu: 4.18.0-0.1 ] + + * Miscellaneous Ubuntu changes + - ubuntu -- disable vbox build + - Disable zfs build + - SAUCE: (efi-lockdown) Add the ability to lock down access to the running + kernel image + - SAUCE: (efi-lockdown) Add a SysRq option to lift kernel lockdown + - SAUCE: (efi-lockdown) ima: require secure_boot rules in lockdown mode + - SAUCE: (efi-lockdown) Enforce module signatures if the kernel is locked down + - SAUCE: (efi-lockdown) Restrict /dev/{mem,kmem,port} when the kernel is + locked down + - SAUCE: (efi-lockdown) kexec_load: Disable at runtime if the kernel is locked + down + - SAUCE: (efi-lockdown) hibernate: Disable when the kernel is locked down + - SAUCE: (efi-lockdown) uswsusp: Disable when the kernel is locked down + - SAUCE: (efi-lockdown) PCI: Lock down BAR access when the kernel is locked + down + - SAUCE: (efi-lockdown) x86: Lock down IO port access when the kernel is + locked down + - SAUCE: (efi-lockdown) x86/msr: Restrict MSR access when the kernel is locked + down + - SAUCE: (efi-lockdown) ACPI: Limit access to custom_method when the kernel is + locked down + - SAUCE: (efi-lockdown) acpi: Ignore acpi_rsdp kernel param when the kernel + has been locked down + - SAUCE: (efi-lockdown) acpi: Disable ACPI table override if the kernel is + locked down + - SAUCE: (efi-lockdown) acpi: Disable APEI error injection if the kernel is + locked down + - SAUCE: (efi-lockdown) Prohibit PCMCIA CIS storage when the kernel is locked + down + - SAUCE: (efi-lockdown) Lock down TIOCSSERIAL + - SAUCE: (efi-lockdown) Lock down module params that specify hardware + parameters (eg. ioport) + - SAUCE: (efi-lockdown) x86/mmiotrace: Lock down the testmmiotrace module + - SAUCE: (efi-lockdown) Lock down /proc/kcore + - SAUCE: (efi-lockdown) Lock down kprobes + - SAUCE: (efi-lockdown) bpf: Restrict kernel image access functions when the + kernel is locked down + - SAUCE: (efi-lockdown) Lock down perf + - SAUCE: (efi-lockdown) debugfs: Restrict debugfs when the kernel is locked + down + - SAUCE: (efi-lockdown) Copy secure_boot flag in boot params across kexec + reboot + - SAUCE: (efi-lockdown) efi: Add an EFI_SECURE_BOOT flag to indicate secure + boot mode + - SAUCE: (efi-lockdown) efi: Lock down the kernel if booted in secure boot + mode + - SAUCE: (efi-lockdown) KEYS: Allow unrestricted boot-time addition of keys to + secondary keyring + - SAUCE: (efi-lockdown) efi: Add EFI signature data types + - SAUCE: (efi-lockdown) efi: Add an EFI signature blob parser + - SAUCE: (efi-lockdown) MODSIGN: Import certificates from UEFI Secure Boot + - SAUCE: (efi-lockdown) MODSIGN: Allow the "db" UEFI variable to be suppressed + - SAUCE: (efi-lockdown) Make get_cert_list() not complain about cert lists + that aren't present. + - SAUCE: (efi-lockdown) Add efi_status_to_str() and rework + efi_status_to_err(). + - SAUCE: (efi-lockdown) Make get_cert_list() use efi_status_to_str() to print + error messages. + - SAUCE: (efi-lockdown) lockdown: fix coordination of kernel module signature + verification + - SAUCE: (efi-lockdown) efi: Sanitize boot_params in efi stub + - SAUCE: (efi-lockdown) efi: Don't print secure boot state from the efi stub + - SAUCE: (namespace) block_dev: Support checking inode permissions in + lookup_bdev() + - SAUCE: (namespace) block_dev: Check permissions towards block device inode + when mounting + - SAUCE: (namespace) mtd: Check permissions towards mtd block device inode + when mounting + - SAUCE: (namespace) ext4: Add support for unprivileged mounts from user + namespaces + - SAUCE: (namespace) ext4: Add module parameter to enable user namespace + mounts + - SAUCE: (namespace) block_dev: Forbid unprivileged mounting when device is + opened for writing + - SAUCE: Import aufs driver + - Update dropped.txt + - [Config] updateconfigs after 4.18-rc3 rebase + - SAUCE: (no-up): ASoC: Intel: bytcr-rt5660: Remove snd_soc_codec use for 4.18 + * Rebase to v4.18-rc3 + + [ Ubuntu: 4.18.0-0.0 ] + + * Dummy entry. + + -- Marcelo Henrique Cerri Fri, 07 Sep 2018 18:01:04 -0300 + +linux-azure (4.18.0-1000.0) cosmic; urgency=medium + + * Kernel 4.18. + + -- Marcelo Henrique Cerri Fri, 07 Sep 2018 14:41:00 -0300 + +linux-azure (4.17.0-1001.1) cosmic; urgency=medium + + * linux-azure: 4.17.0-1001.1 -proposed tracker (LP: #1783766) + + * Miscellaneous Ubuntu changes + - [Config] updateconfigs after rebase to Ubuntu-4.17.0-4.5 + - [Config] updateconfigs after rebase to Ubuntu-4.17.0-6.7 + + [ Ubuntu: 4.17.0-6.7 ] + + * linux: 4.17.0-6.7 -proposed tracker (LP: #1783396) + * [Regression] EXT4-fs error (device sda2): ext4_validate_block_bitmap:383: + comm stress-ng: bg 4705: bad block bitmap checksum (LP: #1781709) + - SAUCE: Revert "UBUNTU: SAUCE: ext4: fix ext4_validate_inode_bitmap: comm + stress-ng: Corrupt inode bitmap" + - SAUCE: ext4: check for allocation block validity with block group locked + * Cosmic update to 4.17.9 stable release (LP: #1783201) + - userfaultfd: hugetlbfs: fix userfaultfd_huge_must_wait() pte access + - mm: hugetlb: yield when prepping struct pages + - mm: teach dump_page() to correctly output poisoned struct pages + - PCI / ACPI / PM: Resume bridges w/o drivers on suspend-to-RAM + - ACPICA: Drop leading newlines from error messages + - ACPI / battery: Safe unregistering of hooks + - drm/amdgpu: Make struct amdgpu_atif private to amdgpu_acpi.c + - tracing: Avoid string overflow + - tracing: Fix missing return symbol in function_graph output + - scsi: sg: mitigate read/write abuse + - scsi: aacraid: Fix PD performance regression over incorrect qd being set + - scsi: target: Fix truncated PR-in ReadKeys response + - s390: Correct register corruption in critical section cleanup + - drbd: fix access after free + - vfio: Use get_user_pages_longterm correctly + - ARM: dts: imx51-zii-rdu1: fix touchscreen pinctrl + - ARM: dts: omap3: Fix am3517 mdio and emac clock references + - ARM: dts: dra7: Disable metastability workaround for USB2 + - cifs: Fix use after free of a mid_q_entry + - cifs: Fix memory leak in smb2_set_ea() + - cifs: Fix slab-out-of-bounds in send_set_info() on SMB2 ACE setting + - cifs: Fix infinite loop when using hard mount option + - drm: Use kvzalloc for allocating blob property memory + - drm/udl: fix display corruption of the last line + - drm/amdgpu: Add amdgpu_atpx_get_dhandle() + - drm/amdgpu: Dynamically probe for ATIF handle (v2) + - jbd2: don't mark block as modified if the handle is out of credits + - ext4: add corruption check in ext4_xattr_set_entry() + - ext4: always verify the magic number in xattr blocks + - ext4: make sure bitmaps and the inode table don't overlap with bg + descriptors + - ext4: always check block group bounds in ext4_init_block_bitmap() + - ext4: only look at the bg_flags field if it is valid + - ext4: verify the depth of extent tree in ext4_find_extent() + - ext4: include the illegal physical block in the bad map ext4_error msg + - ext4: clear i_data in ext4_inode_info when removing inline data + - ext4: never move the system.data xattr out of the inode body + - ext4: avoid running out of journal credits when appending to an inline file + - ext4: add more inode number paranoia checks + - ext4: add more mount time checks of the superblock + - ext4: check superblock mapped prior to committing + - HID: i2c-hid: Fix "incomplete report" noise + - HID: hiddev: fix potential Spectre v1 + - HID: debug: check length before copy_to_user() + - HID: core: allow concurrent registration of drivers + - i2c: core: smbus: fix a potential missing-check bug + - i2c: smbus: kill memory leak on emulated and failed DMA SMBus xfers + - fs: allow per-device dax status checking for filesystems + - dax: change bdev_dax_supported() to support boolean returns + - dax: check for QUEUE_FLAG_DAX in bdev_dax_supported() + - dm: prevent DAX mounts if not supported + - mtd: cfi_cmdset_0002: Change definition naming to retry write operation + - mtd: cfi_cmdset_0002: Change erase functions to retry for error + - mtd: cfi_cmdset_0002: Change erase functions to check chip good only + - netfilter: nf_log: don't hold nf_log_mutex during user access + - staging: comedi: quatech_daqp_cs: fix no-op loop daqp_ao_insn_write() + - Revert mm/vmstat.c: fix vmstat_update() preemption BUG + - Linux 4.17.6 + - bpf: reject passing modified ctx to helper functions + - MIPS: Call dump_stack() from show_regs() + - MIPS: Use async IPIs for arch_trigger_cpumask_backtrace() + - MIPS: Fix ioremap() RAM check + - drm/etnaviv: Check for platform_device_register_simple() failure + - drm/etnaviv: Fix driver unregistering + - drm/etnaviv: bring back progress check in job timeout handler + - ACPICA: Clear status of all events when entering S5 + - mmc: sdhci-esdhc-imx: allow 1.8V modes without 100/200MHz pinctrl states + - mmc: dw_mmc: fix card threshold control configuration + - mmc: renesas_sdhi_internal_dmac: Cannot clear the RX_IN_USE in abort + - ibmasm: don't write out of bounds in read handler + - staging: rtl8723bs: Prevent an underflow in rtw_check_beacon_data(). + - staging: r8822be: Fix RTL8822be can't find any wireless AP + - ata: Fix ZBC_OUT command block check + - ata: Fix ZBC_OUT all bit handling + - mei: discard messages from not connected client during power down. + - mtd: spi-nor: cadence-quadspi: Fix direct mode write timeouts + - tracing/kprobe: Release kprobe print_fmt properly + - vmw_balloon: fix inflation with batching + - ahci: Add Intel Ice Lake LP PCI ID + - ahci: Disable LPM on Lenovo 50 series laptops with a too old BIOS + - thunderbolt: Notify userspace when boot_acl is changed + - USB: serial: ch341: fix type promotion bug in ch341_control_in() + - USB: serial: cp210x: add another USB ID for Qivicon ZigBee stick + - USB: serial: keyspan_pda: fix modem-status error handling + - USB: yurex: fix out-of-bounds uaccess in read handler + - USB: serial: mos7840: fix status-register error handling + - usb: quirks: add delay quirks for Corsair Strafe + - xhci: xhci-mem: off by one in xhci_stream_id_to_ring() + - Fix up non-directory creation in SGID directories + - mm: zero unavailable pages before memmap init + - ALSA: hda/realtek - two more lenovo models need fixup of MIC_LOCATION + - ALSA: hda - Handle pm failure during hotplug + - mm: do not drop unused pages when userfaultd is running + - fs/proc/task_mmu.c: fix Locked field in /proc/pid/smaps* + - x86/purgatory: add missing FORCE to Makefile target + - fs, elf: make sure to page align bss in load_elf_library + - mm: do not bug_on on incorrect length in __mm_populate() + - tracing: Reorder display of TGID to be after PID + - kbuild: delete INSTALL_FW_PATH from kbuild documentation + - acpi, nfit: Fix scrub idle detection + - arm64: neon: Fix function may_use_simd() return error status + - tools build: fix # escaping in .cmd files for future Make + - IB/hfi1: Fix incorrect mixing of ERR_PTR and NULL return values + - i2c: tegra: Fix NACK error handling + - i2c: recovery: if possible send STOP with recovery pulses + - iw_cxgb4: correctly enforce the max reg_mr depth + - xen: remove global bit from __default_kernel_pte_mask for pv guests + - xen: setup pv irq ops vector earlier + - bsg: fix bogus EINVAL on non-data commands + - crypto: x86/salsa20 - remove x86 salsa20 implementations + - uprobes/x86: Remove incorrect WARN_ON() in uprobe_init_insn() + - netfilter: nf_queue: augment nfqa_cfg_policy + - crypto: don't optimize keccakf() + - netfilter: x_tables: initialise match/target check parameter struct + - loop: add recursion validation to LOOP_CHANGE_FD + - xfs: fix inobt magic number check + - PM / hibernate: Fix oops at snapshot_write() + - RDMA/ucm: Mark UCM interface as BROKEN + - loop: remember whether sysfs_create_group() was done + - kvm: vmx: Nested VM-entry prereqs for event inj. + - f2fs: give message and set need_fsck given broken node id + - f2fs: avoid bug_on on corrupted inode + - f2fs: sanity check on sit entry + - f2fs: sanity check for total valid node blocks + - ARM: dts: armada-38x: use the new thermal binding + - Linux 4.17.7 + - mm: don't do zero_resv_unavail if memmap is not allocated + - Linux 4.17.8 + - compiler-gcc.h: Add __attribute__((gnu_inline)) to all inline declarations + - x86/asm: Add _ASM_ARG* constants for argument registers to + - x86/paravirt: Make native_save_fl() extern inline + - pinctrl: sh-pfc: r8a77970: remove SH_PFC_PIN_CFG_DRIVE_STRENGTH flag + - pinctrl: mt7622: fix error path on failing at groups building + - pinctrl: mt7622: stop using the deprecated pinctrl_add_gpio_range + - pinctrl: mt7622: fix a kernel panic when gpio-hog is being applied + - alx: take rtnl before calling __alx_open from resume + - atm: Preserve value of skb->truesize when accounting to vcc + - atm: zatm: Fix potential Spectre v1 + - hv_netvsc: split sub-channel setup into async and sync + - ipv6: sr: fix passing wrong flags to crypto_alloc_shash() + - ipvlan: fix IFLA_MTU ignored on NEWLINK + - ixgbe: split XDP_TX tail and XDP_REDIRECT map flushing + - net: dccp: avoid crash in ccid3_hc_rx_send_feedback() + - net: dccp: switch rx_tstamp_last_feedback to monotonic clock + - net: fix use-after-free in GRO with ESP + - net: macb: Fix ptp time adjustment for large negative delta + - net/mlx5e: Avoid dealing with vport representors if not being e-switch + manager + - net/mlx5e: Don't attempt to dereference the ppriv struct if not being + eswitch manager + - net/mlx5: E-Switch, Avoid setup attempt if not being e-switch manager + - net/mlx5: Fix command interface race in polling mode + - net/mlx5: Fix incorrect raw command length parsing + - net/mlx5: Fix required capability for manipulating MPFS + - net/mlx5: Fix wrong size allocation for QoS ETC TC regitster + - net: mvneta: fix the Rx desc DMA address in the Rx path + - net/packet: fix use-after-free + - net/sched: act_ife: fix recursive lock and idr leak + - net/sched: act_ife: preserve the action control in case of error + - net_sched: blackhole: tell upper qdisc about dropped packets + - net: sungem: fix rx checksum support + - net/tcp: Fix socket lookups with SO_BINDTODEVICE + - qede: Adverstise software timestamp caps when PHC is not available. + - qed: Fix setting of incorrect eswitch mode. + - qed: Fix use of incorrect size in memcpy call. + - qed: Limit msix vectors in kdump kernel to the minimum required count. + - qmi_wwan: add support for the Dell Wireless 5821e module + - r8152: napi hangup fix after disconnect + - s390/qeth: don't clobber buffer on async TX completion + - stmmac: fix DMA channel hang in half-duplex mode + - strparser: Remove early eaten to fix full tcp receive buffer stall + - tcp: fix Fast Open key endianness + - tcp: prevent bogus FRTO undos with non-SACK flows + - vhost_net: validate sock before trying to put its fd + - VSOCK: fix loopback on big-endian systems + - hinic: reset irq affinity before freeing irq + - nfp: flower: fix mpls ether type detection + - net: macb: initialize bp->queues[0].bp for at91rm9200 + - net: use dev_change_tx_queue_len() for SIOCSIFTXQLEN + - nfp: reject binding to shared blocks + - xen-netfront: Fix mismatched rtnl_unlock + - xen-netfront: Update features after registering netdev + - enic: do not overwrite error code + - i40e: split XDP_TX tail and XDP_REDIRECT map flushing + - IB/mlx5: Avoid dealing with vport representors if not being e-switch manager + - Revert "s390/qeth: use Read device to query hypervisor for MAC" + - s390/qeth: avoid using is_multicast_ether_addr_64bits on (u8 *)[6] + - s390/qeth: fix race when setting MAC address + - sfc: correctly initialise filter rwsem for farch + - virtio_net: split XDP_TX kick and XDP_REDIRECT map flushing + - x86/kvm/Kconfig: Ensure CRYPTO_DEV_CCP_DD state at minimum matches KVM_AMD + - net: cxgb3_main: fix potential Spectre v1 + - rtlwifi: Fix kernel Oops "Fw download fail!!" + - rtlwifi: rtl8821ae: fix firmware is not ready to run + - net: lan78xx: Fix race in tx pending skb size calculation + - crypto: af_alg - Initialize sg_num_bytes in error code path + - PCI: hv: Disable/enable IRQs rather than BH in hv_compose_msi_msg() + - netfilter: ebtables: reject non-bridge targets + - reiserfs: fix buffer overflow with long warning messages + - KEYS: DNS: fix parsing multiple options + - tls: Stricter error checking in zerocopy sendmsg path + - autofs: fix slab out of bounds read in getname_kernel() + - nsh: set mac len based on inner packet + - netfilter: ipv6: nf_defrag: drop skb dst before queueing + - bdi: Fix another oops in wb_workfn() + - bpf: reject any prog that failed read-only lock + - rds: avoid unenecessary cong_update in loop transport + - block: don't use blocking queue entered for recursive bio submits + - bpf: sockmap, fix crash when ipv6 sock is added + - bpf: sockmap, consume_skb in close path + - bpf: don't leave partial mangled prog in jit_subprogs error path + - net/nfc: Avoid stalls when nfc_alloc_send_skb() returned NULL. + - ipvs: initialize tbl->entries after allocation + - ipvs: initialize tbl->entries in ip_vs_lblc_init_svc() + - arm/arm64: smccc: Add SMCCC-specific return codes + - arm64: Call ARCH_WORKAROUND_2 on transitions between EL0 and EL1 + - arm64: Add per-cpu infrastructure to call ARCH_WORKAROUND_2 + - arm64: Add ARCH_WORKAROUND_2 probing + - arm64: Add 'ssbd' command-line option + - arm64: ssbd: Add global mitigation state accessor + - arm64: ssbd: Skip apply_ssbd if not using dynamic mitigation + - arm64: ssbd: Restore mitigation status on CPU resume + - arm64: ssbd: Introduce thread flag to control userspace mitigation + - arm64: ssbd: Add prctl interface for per-thread mitigation + - arm64: KVM: Add HYP per-cpu accessors + - arm64: KVM: Add ARCH_WORKAROUND_2 support for guests + - arm64: KVM: Handle guest's ARCH_WORKAROUND_2 requests + - arm64: KVM: Add ARCH_WORKAROUND_2 discovery through ARCH_FEATURES_FUNC_ID + - bpf: enforce correct alignment for instructions + - bpf, arm32: fix to use bpf_jit_binary_lock_ro api + - bpf: undo prog rejection on read-only lock failure + - Linux 4.17.9 + * linux 4.17.0-5 fails to build on ppc64el with gcc-8 (LP: #1783167) + - kbuild: add macro for controlling warnings to linux/compiler.h + - disable -Wattribute-alias warning for SYSCALL_DEFINEx() + - powerpc/64: Fix strncpy() related build failures with GCC 8.1 + * Kernel error "task zfs:pid blocked for more than 120 seconds" (LP: #1781364) + - SAUCE: (noup) zfs to 0.7.9-3ubuntu4 + * [Regression] EXT4-fs error (device sda1): ext4_validate_inode_bitmap:99: + comm stress-ng: Corrupt inode bitmap (LP: #1780137) + - SAUCE: ext4: fix ext4_validate_inode_bitmap: comm stress-ng: Corrupt inode + bitmap + * Miscellaneous Ubuntu changes + - SAUCE: (noup) Update spl to 0.7.9-3ubuntu2, zfs to 0.7.9-3ubuntu3 + - ABI: ib_ucm is being dropped upstream + - ABI: salsa20-{x86_64,i586} modules are no longer upstream + - [Config] updateconfigs after applying stable fixes + - [Config] retpoline -- review and accept retpoline changes + * Miscellaneous upstream changes + - Revert "UBUNTU: [Config]: set CONFIG_EDAC_DEBUG=y for ARM64" + + [ Ubuntu: 4.17.0-5.6 ] + + * linux: 4.17.0-5.6 -proposed tracker (LP: #1780956) + * Cloud-init causes potentially huge boot delays with 4.15 kernels + (LP: #1780062) + - random: Make getrandom() ready earlier + * xhci_hcd 0000:00:14.0: Root hub is not suspended (LP: #1779823) + - usb: xhci: dbc: Don't decrement runtime PM counter if DBC is not started + * hisi_sas_v3_hw: internal task abort: timeout and not done. (LP: #1777736) + - scsi: hisi_sas: Update a couple of register settings for v3 hw + * hisi_sas: Add missing PHY spinlock init (LP: #1777734) + - scsi: hisi_sas: Add missing PHY spinlock init + * hisi_sas: improve read performance by pre-allocating slot DMA buffers + (LP: #1777727) + - scsi: hisi_sas: use dma_zalloc_coherent() + - scsi: hisi_sas: Use dmam_alloc_coherent() + - scsi: hisi_sas: Pre-allocate slot DMA buffers + * hisi_sas: Failures during host reset (LP: #1777696) + - scsi: hisi_sas: Only process broadcast change in phy_bcast_v3_hw() + - scsi: hisi_sas: Fix the conflict between dev gone and host reset + - scsi: hisi_sas: Adjust task reject period during host reset + - scsi: hisi_sas: Add a flag to filter PHY events during reset + - scsi: hisi_sas: Release all remaining resources in clear nexus ha + * Cosmic update to v4.17.5 stable release (LP: #1780833) + - usb: cdc_acm: Add quirk for Uniden UBC125 scanner + - USB: serial: cp210x: add CESINEL device ids + - USB: serial: cp210x: add Silicon Labs IDs for Windows Update + - usb: dwc2: fix the incorrect bitmaps for the ports of multi_tt hub + - usb: typec: tcpm: fix logbuffer index is wrong if _tcpm_log is re-entered + - acpi: Add helper for deactivating memory region + - usb: typec: ucsi: acpi: Workaround for cache mode issue + - usb: typec: ucsi: Fix for incorrect status data issue + - xhci: Fix kernel oops in trace_xhci_free_virt_device + - n_tty: Fix stall at n_tty_receive_char_special(). + - n_tty: Access echo_* variables carefully. + - staging: android: ion: Return an ERR_PTR in ion_map_kernel + - iio: mma8452: Fix ignoring MMA8452_INT_DRDY + - serial: 8250_pci: Remove stalled entries in blacklist + - serdev: fix memleak on module unload + - vt: prevent leaking uninitialized data to userspace via /dev/vcs* + - drm/amdgpu: Add APU support in vi_set_uvd_clocks + - drm/amdgpu: Add APU support in vi_set_vce_clocks + - drm/amdgpu: fix the missed vcn fw version report + - drm/amdgpu: Grab/put runtime PM references in atomic_commit_tail() + - drm/amdgpu: fix clear_all and replace handling in the VM (v2) + - drm/sti: Depend on OF rather than selecting it + - drm/amd/display: Clear connector's edid pointer + - drm/i915/dp: Send DPCD ON for MST before phy_up + - drm/qxl: Call qxl_bo_unref outside atomic context + - drm/atmel-hlcdc: check stride values in the first plane + - Revert "drm/sun4i: Handle DRM_BUS_FLAG_PIXDATA_*EDGE" + - drm/amdgpu: Don't default to DC support for Kaveri and older + - drm/amdgpu: Use kvmalloc_array for allocating VRAM manager nodes array + - drm/amdgpu: Refactor amdgpu_vram_mgr_bo_invisible_size helper + - drm/amdgpu: Make amdgpu_vram_mgr_bo_invisible_size always accurate + - drm/amdgpu: Update pin_size values before unpinning BO + - drm/amdgpu: GPU vs CPU page size fixes in amdgpu_vm_bo_split_mapping + - drm/amdgpu: Count disabled CRTCs in commit tail earlier + - drm/amd/display: release spinlock before committing updates to stream + - drm/i915: Allow DBLSCAN user modes with eDP/LVDS/DSI + - drm/i915: Fix PIPESTAT irq ack on i965/g4x + - drm/i915: Disallow interlaced modes on g4x DP outputs + - drm/i915: Turn off g4x DP port in .post_disable() + - drm/i915: Enable provoking vertex fix on Gen9 systems. + - netfilter: ip6t_rpfilter: provide input interface for route lookup + - netfilter: xt_connmark: fix list corruption on rmmod + - netfilter: nf_tables: use WARN_ON_ONCE instead of BUG_ON in nft_do_chain() + - ARM64: dts: meson-gxl-s905x-p212: Add phy-supply for usb0 + - x86/mm: Don't free P4D table when it is folded at runtime + - ARM: dts: imx6q: Use correct SDMA script for SPI5 core + - Linux 4.17.5 + * Cosmic update to v4.17.4 stable release (LP: #1780832) + - x86/spectre_v1: Disable compiler optimizations over + array_index_mask_nospec() + - x86/xen: Add call of speculative_store_bypass_ht_init() to PV paths + - x86/platform/UV: Add adjustable set memory block size function + - x86/platform/UV: Use new set memory block size function + - x86/platform/UV: Add kernel parameter to set memory block size + - x86/mce: Improve error message when kernel cannot recover + - x86/mce: Check for alternate indication of machine check recovery on Skylake + - x86/mce: Fix incorrect "Machine check from unknown source" message + - x86/mce: Do not overwrite MCi_STATUS in mce_no_way_out() + - x86: Call fixup_exception() before notify_die() in math_error() + - m68k/mm: Adjust VM area to be unmapped by gap size for __iounmap() + - m68k/mac: Fix SWIM memory resource end address + - platform/chrome: cros_ec_lpc: do not try DMI match when ACPI device found + - hwmon: (k10temp) Add support for Stoney Ridge and Bristol Ridge CPUs + - mtd: spi-nor: intel-spi: Fix atomic sequence handling + - serial: sh-sci: Use spin_{try}lock_irqsave instead of open coding version + - signal/xtensa: Consistenly use SIGBUS in do_unaligned_user + - PM / Domains: Fix error path during attach in genpd + - PCI / PM: Do not clear state_saved for devices that remain suspended + - ACPI / LPSS: Avoid PM quirks on suspend and resume from S3 + - PM / core: Fix supplier device runtime PM usage counter imbalance + - PM / OPP: Update voltage in case freq == old_freq + - mmc: renesas_sdhi: really fix WP logic regressions + - usb: do not reset if a low-speed or full-speed device timed out + - 1wire: family module autoload fails because of upper/lower case mismatch. + - ASoC: dapm: delete dapm_kcontrol_data paths list before freeing it + - ASoC: cs35l35: Add use_single_rw to regmap config + - ASoC: mediatek: preallocate pages use platform device + - ASoC: cirrus: i2s: Fix LRCLK configuration + - ASoC: cirrus: i2s: Fix {TX|RX}LinCtrlData setup + - thermal: bcm2835: Stop using printk format %pCr + - clk: renesas: cpg-mssr: Stop using printk format %pCr + - lib/vsprintf: Remove atomic-unsafe support for %pCr + - ftrace/selftest: Have the reset_trigger code be a bit more careful + - mips: ftrace: fix static function graph tracing + - branch-check: fix long->int truncation when profiling branches + - ipmi:bt: Set the timeout before doing a capabilities check + - Bluetooth: hci_qca: Avoid missing rampatch failure with userspace fw loader + - printk: fix possible reuse of va_list variable + - fuse: fix congested state leak on aborted connections + - fuse: atomic_o_trunc should truncate pagecache + - fuse: don't keep dead fuse_conn at fuse_fill_super(). + - fuse: fix control dir setup and teardown + - powerpc/mm/hash: Add missing isync prior to kernel stack SLB switch + - powerpc/pkeys: Detach execute_only key on !PROT_EXEC + - powerpc/ptrace: Fix setting 512B aligned breakpoints with + PTRACE_SET_DEBUGREG + - powerpc/ptrace: Fix enforcement of DAWR constraints + - powerpc/powernv/ioda2: Remove redundant free of TCE pages + - powerpc/powernv: copy/paste - Mask SO bit in CR + - cpuidle: powernv: Fix promotion from snooze if next state disabled + - powerpc/fadump: Unregister fadump on kexec down path. + - libnvdimm, pmem: Do not flush power-fail protected CPU caches + - soc: rockchip: power-domain: Fix wrong value when power up pd with writemask + - powerpc/64s/radix: Fix radix_kvm_prefetch_workaround paca access of not + possible CPU + - powerpc/e500mc: Set assembler machine type to e500mc + - powerpc/64s: Fix DT CPU features Power9 DD2.1 logic + - ARM: 8764/1: kgdb: fix NUMREGBYTES so that gdb_regs[] is the correct size + - ARM: dts: sun8i: h3: fix ALL-H3-CC H3 ver VDD-CPUX voltage + - ARM: dts: sun8i: h3: fix ALL-H3-CC H3 ver VCC-1V2 regulator voltage + - ARM: dts: Fix SPI node for Arria10 + - ARM: dts: socfpga: Fix NAND controller node compatible + - ARM: dts: socfpga: Fix NAND controller clock supply + - ARM: dts: socfpga: Fix NAND controller node compatible for Arria10 + - hwrng: core - Always drop the RNG in hwrng_unregister() + - softirq: Reorder trace_softirqs_on to prevent lockdep splat + - arm64: Fix syscall restarting around signal suppressed by tracer + - crypto: arm64/aes-blk - fix and move skcipher_walk_done out of + kernel_neon_begin, _end + - arm64: kpti: Use early_param for kpti= command-line option + - arm64: mm: Ensure writes to swapper are ordered wrt subsequent cache + maintenance + - arm64: dts: marvell: fix CP110 ICU node size + - arm64: dts: stratix10: Fix SPI nodes for Stratix10 + - ARM64: dts: meson: disable sd-uhs modes on the libretech-cc + - ARM64: dts: meson-gx: fix ATF reserved memory region + - of: overlay: validate offset from property fixups + - of: unittest: for strings, account for trailing \0 in property length field + - of: platform: stop accessing invalid dev in of_platform_device_destroy + - tpm: fix use after free in tpm2_load_context() + - tpm: fix race condition in tpm_common_write() + - efi/libstub/tpm: Initialize efi_physical_addr_t vars to zero for mixed mode + - IB/qib: Fix DMA api warning with debug kernel + - IB/{hfi1, qib}: Add handling of kernel restart + - IB/mlx4: Mark user MR as writable if actual virtual memory is writable + - IB/core: Make testing MR flags for writability a static inline function + - IB/mlx5: Fetch soft WQE's on fatal error state + - IB/isert: Fix for lib/dma_debug check_sync warning + - IB/isert: fix T10-pi check mask setting + - IB/hfi1: Fix fault injection init/exit issues + - IB/hfi1: Reorder incorrect send context disable + - IB/hfi1: Optimize kthread pointer locking when queuing CQ entries + - IB/hfi1: Fix user context tail allocation for DMA_RTAIL + - IB/uverbs: Fix ordering of ucontext check in ib_uverbs_write + - RDMA/mlx4: Discard unknown SQP work requests + - xprtrdma: Return -ENOBUFS when no pages are available + - RDMA/core: Save kernel caller name when creating CQ using ib_create_cq() + - mtd: rawnand: Do not check FAIL bit when executing a SET_FEATURES op + - mtd: cfi_cmdset_0002: Change write buffer to check correct value + - mtd: rawnand: denali_dt: set clk_x_rate to 200 MHz unconditionally + - mtd: rawnand: fix return value check for bad block status + - mtd: rawnand: mxc: set spare area size register explicitly + - mtd: rawnand: micron: add ONFI_FEATURE_ON_DIE_ECC to supported features + - mtd: rawnand: All AC chips have a broken GET_FEATURES(TIMINGS). + - mtd: cfi_cmdset_0002: Use right chip in do_ppb_xxlock() + - mtd: cfi_cmdset_0002: fix SEGV unlocking multiple chips + - mtd: cfi_cmdset_0002: Fix unlocking requests crossing a chip boudary + - mtd: cfi_cmdset_0002: Avoid walking all chips when unlocking. + - MIPS: BCM47XX: Enable 74K Core ExternalSync for PCIe erratum + - clk:aspeed: Fix reset bits for PCI/VGA and PECI + - PCI: hv: Make sure the bus domain is really unique + - PCI: Add ACS quirk for Intel 7th & 8th Gen mobile + - PCI: Add ACS quirk for Intel 300 series + - PCI: pciehp: Clear Presence Detect and Data Link Layer Status Changed on + resume + - PCI: Account for all bridges on bus when distributing bus numbers + - auxdisplay: fix broken menu + - pinctrl: armada-37xx: Fix spurious irq management + - pinctrl: samsung: Correct EINTG banks order + - pinctrl: devicetree: Fix pctldev pointer overwrite + - cpufreq: intel_pstate: Fix scaling max/min limits with Turbo 3.0 + - MIPS: pb44: Fix i2c-gpio GPIO descriptor table + - MIPS: io: Add barrier after register read in inX() + - time: Make sure jiffies_to_msecs() preserves non-zero time periods + - irqchip/gic-v3-its: Don't bind LPI to unavailable NUMA node + - locking/rwsem: Fix up_read_non_owner() warning with DEBUG_RWSEMS + - X.509: unpack RSA signatureValue field from BIT STRING + - Btrfs: fix return value on rename exchange failure + - iio: adc: ad7791: remove sample freq sysfs attributes + - iio: sca3000: Fix an error handling path in 'sca3000_probe()' + - mm: fix __gup_device_huge vs unmap + - scsi: scsi_debug: Fix memory leak on module unload + - scsi: hpsa: disable device during shutdown + - scsi: qla2xxx: Delete session for nport id change + - scsi: qla2xxx: Fix setting lower transfer speed if GPSC fails + - scsi: qla2xxx: Mask off Scope bits in retry delay + - scsi: qla2xxx: Spinlock recursion in qla_target + - scsi: zfcp: fix missing SCSI trace for result of eh_host_reset_handler + - scsi: zfcp: fix missing SCSI trace for retry of abort / scsi_eh TMF + - scsi: zfcp: fix misleading REC trigger trace where erp_action setup failed + - scsi: zfcp: fix missing REC trigger trace on terminate_rport_io early return + - scsi: zfcp: fix missing REC trigger trace on terminate_rport_io for + ERP_FAILED + - scsi: zfcp: fix missing REC trigger trace for all objects in ERP_FAILED + - scsi: zfcp: fix missing REC trigger trace on enqueue without ERP thread + - linvdimm, pmem: Preserve read-only setting for pmem devices + - libnvdimm, pmem: Unconditionally deep flush on *sync + - clk: meson: meson8b: mark fclk_div2 gate clocks as CLK_IS_CRITICAL + - clk: at91: PLL recalc_rate() now using cached MUL and DIV values + - rtc: sun6i: Fix bit_idx value for clk_register_gate + - md: fix two problems with setting the "re-add" device state. + - rpmsg: smd: do not use mananged resources for endpoints and channels + - ubi: fastmap: Cancel work upon detach + - ubi: fastmap: Correctly handle interrupted erasures in EBA + - UBIFS: Fix potential integer overflow in allocation + - backlight: as3711_bl: Fix Device Tree node lookup + - backlight: max8925_bl: Fix Device Tree node lookup + - backlight: tps65217_bl: Fix Device Tree node lookup + - Revert "iommu/amd_iommu: Use CONFIG_DMA_DIRECT_OPS=y and + dma_direct_{alloc,free}()" + - f2fs: don't use GFP_ZERO for page caches + - um: Fix initialization of vector queues + - um: Fix raw interface options + - mfd: twl-core: Fix clock initialization + - mfd: intel-lpss: Program REMAP register in PIO mode + - mfd: intel-lpss: Fix Intel Cannon Lake LPSS I2C input clock + - remoteproc: Prevent incorrect rproc state on xfer mem ownership failure + - arm: dts: mt7623: fix invalid memory node being generated + - perf tools: Fix symbol and object code resolution for vdso32 and vdsox32 + - perf intel-pt: Fix sync_switch INTEL_PT_SS_NOT_TRACING + - perf intel-pt: Fix decoding to accept CBR between FUP and corresponding TIP + - perf intel-pt: Fix MTC timing after overflow + - perf intel-pt: Fix "Unexpected indirect branch" error + - perf intel-pt: Fix packet decoding of CYC packets + - media: vsp1: Release buffers for each video node + - Revert "UBUNTU: SAUCE: media: uvcvideo: Support realtek's UVC 1.5 device" + - media: cx231xx: Ignore an i2c mux adapter + - media: v4l2-compat-ioctl32: prevent go past max size + - media: rc: mce_kbd decoder: fix stuck keys + - media: dvb_frontend: fix locking issues at dvb_frontend_get_event() + - nfsd: restrict rd_maxcount to svc_max_payload in nfsd_encode_readdir + - NFSv4: Fix possible 1-byte stack overflow in + nfs_idmap_read_and_verify_message + - NFSv4: Revert commit 5f83d86cf531d ("NFSv4.x: Fix wraparound issues..") + - NFSv4: Fix a typo in nfs41_sequence_process + - video: uvesafb: Fix integer overflow in allocation + - ACPI / LPSS: Add missing prv_offset setting for byt/cht PWM devices + - Input: silead - add MSSL0002 ACPI HID + - Input: elan_i2c - add ELAN0618 (Lenovo v330 15IKB) ACPI ID + - pwm: lpss: platform: Save/restore the ctrl register over a suspend/resume + - rbd: flush rbd_dev->watch_dwork after watch is unregistered + - mm/ksm.c: ignore STABLE_FLAG of rmap_item->address in rmap_walk_ksm() + - mm: fix devmem_is_allowed() for sub-page System RAM intersections + - tracing: Check for no filter when processing event filters + - xen: Remove unnecessary BUG_ON from __unbind_from_irq() + - net: ethernet: fix suspend/resume in davinci_emac + - udf: Detect incorrect directory size + - Input: xpad - fix GPD Win 2 controller name + - Input: psmouse - fix button reporting for basic protocols + - Input: elan_i2c_smbus - fix more potential stack buffer overflows + - Input: elantech - enable middle button of touchpads on ThinkPad P52 + - Input: elantech - fix V4 report decoding for module with middle key + - ALSA: timer: Fix UBSAN warning at SNDRV_TIMER_IOCTL_NEXT_DEVICE ioctl + - ALSA: hda - Force to link down at runtime suspend on ATI/AMD HDMI + - ALSA: hda/realtek - Fix pop noise on Lenovo P50 & co + - ALSA: hda/realtek - Add a quirk for FSC ESPRIMO U9210 + - ALSA: hda/realtek - Fix the problem of two front mics on more machines + - Revert "i2c: algo-bit: init the bus to a known state" + - i2c: gpio: initialize SCL to HIGH again + - slub: fix failure when we delete and create a slab cache + - kasan: depend on CONFIG_SLUB_DEBUG + - dm: use bio_split() when splitting out the already processed bio + - pmem: only set QUEUE_FLAG_DAX for fsdax mode + - block: Fix transfer when chunk sectors exceeds max + - block: Fix cloning of requests with a special payload + - x86/e820: put !E820_TYPE_RAM regions into memblock.reserved + - selinux: move user accesses in selinuxfs out of locked regions + - x86/entry/64/compat: Fix "x86/entry/64/compat: Preserve r8-r11 in int $0x80" + - x86/efi: Fix efi_call_phys_epilog() with CONFIG_X86_5LEVEL=y + - dm zoned: avoid triggering reclaim from inside dmz_map() + - dm thin: handle running out of data space vs concurrent discard + - virt: vbox: Only copy_from_user the request-header once + - Linux 4.17.4 + * Support AverMedia DVD EZMaker 7 USB video capture dongle (LP: #1620762) // + Cosmic update to v4.17.4 stable release (LP: #1780832) + - media: cx231xx: Add support for AverMedia DVD EZMaker 7 + + [ Ubuntu: 4.17.0-4.5 ] + + * linux: 4.17.0-4.5 -proposed tracker (LP: #1779399) + * Update to ocxl driver for 18.04.1 (LP: #1775786) + - powerpc: Add TIDR CPU feature for POWER9 + - powerpc: Use TIDR CPU feature to control TIDR allocation + - powerpc: use task_pid_nr() for TID allocation + - ocxl: Rename pnv_ocxl_spa_remove_pe to clarify it's action + - ocxl: Expose the thread_id needed for wait on POWER9 + - ocxl: Add an IOCTL so userspace knows what OCXL features are available + - ocxl: Document new OCXL IOCTLs + - ocxl: Fix missing unlock on error in afu_ioctl_enable_p9_wait() + * Please include ax88179_178a and r8152 modules in d-i udeb (LP: #1771823) + - [Config:] d-i: Add ax88179_178a and r8152 to nic-modules + * glibc pkeys test fail on powerpc (LP: #1776967) + - [Config] Temporarily disable CONFIG_PPC_MEM_KEYS + * After update to 4.13-43 Intel Graphics are Laggy (LP: #1773520) + - Revert "drm/i915/edp: Allow alternate fixed mode for eDP if available." + * Miscellaneous Ubuntu changes + - SAUCE: (noup) Update spl to 0.7.9-3ubuntu1, zfs to 0.7.9-3ubuntu1 + + [ Ubuntu: 4.17.0-3.4 ] + + * linux: 4.17.0-3.4 -proposed tracker (LP: #1779124) + * Cosmic update to v4.17.3 stable release (LP: #1778997) + - net: aquantia: fix unsigned numvecs comparison with less than zero + - bonding: re-evaluate force_primary when the primary slave name changes + - cdc_ncm: avoid padding beyond end of skb + - ipv6: allow PMTU exceptions to local routes + - net: dsa: add error handling for pskb_trim_rcsum + - net: phy: dp83822: use BMCR_ANENABLE instead of BMSR_ANEGCAPABLE for DP83620 + - net/sched: act_simple: fix parsing of TCA_DEF_DATA + - tcp: verify the checksum of the first data segment in a new connection + - tls: fix use-after-free in tls_push_record + - tls: fix waitall behavior in tls_sw_recvmsg + - socket: close race condition between sock_close() and sockfs_setattr() + - udp: fix rx queue len reported by diag and proc interface + - net: in virtio_net_hdr only add VLAN_HLEN to csum_start if payload holds + vlan + - hv_netvsc: Fix a network regression after ifdown/ifup + - ACPICA: AML parser: attempt to continue loading table after error + - ext4: fix hole length detection in ext4_ind_map_blocks() + - ext4: update mtime in ext4_punch_hole even if no blocks are released + - ext4: do not allow external inodes for inline data + - ext4: bubble errors from ext4_find_inline_data_nolock() up to ext4_iget() + - ext4: correctly handle a zero-length xattr with a non-zero e_value_offs + - ext4: fix fencepost error in check for inode count overflow during resize + - driver core: Don't ignore class_dir_create_and_add() failure. + - Btrfs: allow empty subvol= again + - Btrfs: fix clone vs chattr NODATASUM race + - Btrfs: fix memory and mount leak in btrfs_ioctl_rm_dev_v2() + - btrfs: return error value if create_io_em failed in cow_file_range + - btrfs: scrub: Don't use inode pages for device replace + - ALSA: usb-audio: Disable the quirk for Nura headset + - ALSA: hda/conexant - Add fixup for HP Z2 G4 workstation + - ALSA: hda - Handle kzalloc() failure in snd_hda_attach_pcm_stream() + - ALSA: hda: add dock and led support for HP EliteBook 830 G5 + - ALSA: hda: add dock and led support for HP ProBook 640 G4 + - x86/MCE: Fix stack out-of-bounds write in mce-inject.c: Flags_read() + - smb3: fix various xid leaks + - smb3: on reconnect set PreviousSessionId field + - CIFS: 511c54a2f69195b28afb9dd119f03787b1625bb4 adds a check for session + expiry + - cifs: For SMB2 security informaion query, check for minimum sized security + descriptor instead of sizeof FileAllInformation class + - nbd: fix nbd device deletion + - nbd: update size when connected + - nbd: use bd_set_size when updating disk size + - blk-mq: reinit q->tag_set_list entry only after grace period + - bdi: Move cgroup bdi_writeback to a dedicated low concurrency workqueue + - cpufreq: Fix new policy initialization during limits updates via sysfs + - cpufreq: ti-cpufreq: Fix an incorrect error return value + - cpufreq: governors: Fix long idle detection logic in load calculation + - libata: zpodd: small read overflow in eject_tray() + - libata: Drop SanDisk SD7UB3Q*G1001 NOLPM quirk + - nvme/pci: Sync controller reset for AER slot_reset + - w1: mxc_w1: Enable clock before calling clk_get_rate() on it + - x86/vector: Fix the args of vector_alloc tracepoint + - x86/apic/vector: Prevent hlist corruption and leaks + - x86/apic: Provide apic_ack_irq() + - x86/ioapic: Use apic_ack_irq() + - x86/platform/uv: Use apic_ack_irq() + - irq_remapping: Use apic_ack_irq() + - genirq/generic_pending: Do not lose pending affinity update + - genirq/affinity: Defer affinity setting if irq chip is busy + - genirq/migration: Avoid out of line call if pending is not set + - x86/intel_rdt: Enable CMT and MBM on new Skylake stepping + - media: uvcvideo: Prevent setting unavailable flags + - media: rc: ensure input/lirc device can be opened after register + - iwlwifi: fw: harden page loading code + - orangefs: set i_size on new symlink + - orangefs: report attributes_mask and attributes for statx + - HID: intel_ish-hid: ipc: register more pm callbacks to support hibernation + - HID: wacom: Correct logical maximum Y for 2nd-gen Intuos Pro large + - vhost: fix info leak due to uninitialized memory + - mm, page_alloc: do not break __GFP_THISNODE by zonelist reset + - Linux 4.17.3 + * Use-after-free in sk_peer_label (LP: #1778646) + - SAUCE: apparmor: fix use after free in sk_peer_label + * kernel: Fix memory leak on CCA and EP11 CPRB processing. (LP: #1775390) + - s390/zcrypt: Fix CCA and EP11 CPRB processing failure memory leak. + * Various fixes for CXL kernel module (LP: #1774471) + - cxl: Configure PSL to not use APC virtual machines + - cxl: Disable prefault_mode in Radix mode + * Bluetooth not working (LP: #1764645) + - Bluetooth: btusb: Apply QCA Rome patches for some ATH3012 models + * Fake SAS addresses for SATA disks on HiSilicon D05 are non-unique + (LP: #1776750) + - scsi: hisi_sas: make SAS address of SATA disks unique + * linux-snapdragon: wcn36xx: mac address generation on boot (LP: #1776491) + - [Config] arm64: snapdragon: WCN36XX_SNAPDRAGON_HACKS=y + - SAUCE: wcn36xx: read MAC from file or randomly generate one + * Lenovo V330 needs patch in ideapad_laptop module for rfkill (LP: #1774636) + - SAUCE: Add Lenovo V330 to the ideapad_laptop rfkill blacklist + * register on binfmt_misc may overflow and crash the system (LP: #1775856) + - fs/binfmt_misc.c: do not allow offset overflow + * Network installs fail on SocioNext board (LP: #1775884) + - net: socionext: reset hardware in ndo_stop + - net: netsec: enable tx-irq during open callback + * Fix several bugs in RDMA/hns driver (LP: #1770974) + - RDMA/hns: Drop local zgid in favor of core defined variable + - RDMA/hns: Add 64KB page size support for hip08 + - RDMA/hns: Rename the idx field of db + - RDMA/hns: Modify uar allocation algorithm to avoid bitmap exhaust + - RDMA/hns: Increase checking CMQ status timeout value + - RDMA/hns: Add reset process for RoCE in hip08 + - RDMA/hns: Fix the illegal memory operation when cross page + - RDMA/hns: Implement the disassociate_ucontext API + * powerpc/livepatch: Implement reliable stack tracing for the consistency + model (LP: #1771844) + - powerpc/livepatch: Implement reliable stack tracing for the consistency + model + * Adding back alx WoL feature (LP: #1772610) + - SAUCE: Revert "alx: remove WoL support" + - SAUCE: alx: add enable_wol paramenter + * Lancer A0 Asic HBA's won't boot with 18.04 (LP: #1768103) + - scsi: lpfc: Fix WQ/CQ creation for older asic's. + - scsi: lpfc: Fix 16gb hbas failing cq create. + * [LTCTest][OPAL][OP920] cpupower idle-info is not listing stop4 and stop5 + idle states when all CORES are guarded (LP: #1771780) + - powerpc/powernv/cpuidle: Init all present cpus for deep states + * Huawei 25G/100G Network Adapters Unsupported (LP: #1770970) + - net-next/hinic: add pci device ids for 25ge and 100ge card + * Expose arm64 CPU topology to userspace (LP: #1770231) + - drivers: base: cacheinfo: move cache_setup_of_node() + - drivers: base: cacheinfo: setup DT cache properties early + - cacheinfo: rename of_node to fw_token + - arm64/acpi: Create arch specific cpu to acpi id helper + - ACPI/PPTT: Add Processor Properties Topology Table parsing + - [Config] CONFIG_ACPI_PPTT=y + - ACPI: Enable PPTT support on ARM64 + - drivers: base cacheinfo: Add support for ACPI based firmware tables + - arm64: Add support for ACPI based firmware tables + - arm64: topology: rename cluster_id + - arm64: topology: enable ACPI/PPTT based CPU topology + - ACPI: Add PPTT to injectable table list + - arm64: topology: divorce MC scheduling domain from core_siblings + * Vcs-Git header on bionic linux source package points to zesty git tree + (LP: #1766055) + - [Packaging]: Update Vcs-Git + * Request to revert SAUCE patches in the 18.04 SRU and update with upstream + version (LP: #1768431) + - scsi: cxlflash: Handle spurious interrupts + - scsi: cxlflash: Remove commmands from pending list on timeout + - scsi: cxlflash: Synchronize reset and remove ops + - SAUCE: (no-up) cxlflash: OCXL diff between v2 and v3 + * hisi_sas robustness fixes (LP: #1774466) + - scsi: hisi_sas: delete timer when removing hisi_sas driver + - scsi: hisi_sas: print device id for errors + - scsi: hisi_sas: Add some checks to avoid free'ing a sas_task twice + - scsi: hisi_sas: check host frozen before calling "done" function + - scsi: hisi_sas: check sas_dev gone earlier in hisi_sas_abort_task() + - scsi: hisi_sas: stop controller timer for reset + - scsi: hisi_sas: update PHY linkrate after a controller reset + - scsi: hisi_sas: change slot index allocation mode + - scsi: hisi_sas: Change common allocation mode of device id + - scsi: hisi_sas: Reset disks when discovered + - scsi: hisi_sas: Create a scsi_host_template per HW module + - scsi: hisi_sas: Init disks after controller reset + - scsi: hisi_sas: Try wait commands before before controller reset + - scsi: hisi_sas: Include TMF elements in struct hisi_sas_slot + - scsi: hisi_sas: Add v2 hw force PHY function for internal ATA command + - scsi: hisi_sas: Terminate STP reject quickly for v2 hw + - scsi: hisi_sas: Fix return value when get_free_slot() failed + - scsi: hisi_sas: Mark PHY as in reset for nexus reset + * hisi_sas: Support newer v3 hardware (LP: #1774467) + - scsi: hisi_sas: update RAS feature for later revision of v3 HW + - scsi: hisi_sas: check IPTT is valid before using it for v3 hw + - scsi: hisi_sas: fix PI memory size + - scsi: hisi_sas: config ATA de-reset as an constrained command for v3 hw + - scsi: hisi_sas: remove redundant handling to event95 for v3 + - scsi: hisi_sas: add readl poll timeout helper wrappers + - scsi: hisi_sas: workaround a v3 hw hilink bug + - scsi: hisi_sas: Add LED feature for v3 hw + * hisi_sas: improve performance by optimizing DQ locking (LP: #1774472) + - scsi: hisi_sas: optimise the usage of DQ locking + - scsi: hisi_sas: relocate smp sg map + - scsi: hisi_sas: make return type of prep functions void + - scsi: hisi_sas: allocate slot buffer earlier + - scsi: hisi_sas: Don't lock DQ for complete task sending + - scsi: hisi_sas: Use device lock to protect slot alloc/free + - scsi: hisi_sas: add check of device in hisi_sas_task_exec() + - scsi: hisi_sas: fix a typo in hisi_sas_task_prep() + * FS-Cache: Assertion failed: FS-Cache: 6 == 5 is false (LP: #1774336) + - SAUCE: CacheFiles: fix a read_waiter/read_copier race + * enable mic-mute hotkey and led on Lenovo M820z and M920z (LP: #1774306) + - ALSA: hda/realtek - Enable mic-mute hotkey for several Lenovo AIOs + * hns3 driver updates (LP: #1768670) + - net: hns3: Remove error log when getting pfc stats fails + - net: hns3: fix to correctly fetch l4 protocol outer header + - net: hns3: Fixes the out of bounds access in hclge_map_tqp + - net: hns3: Fixes the error legs in hclge_init_ae_dev function + - net: hns3: fix for phy_addr error in hclge_mac_mdio_config + - net: hns3: Fix to support autoneg only for port attached with phy + - net: hns3: fix a dead loop in hclge_cmd_csq_clean + - net: hns3: Fix for packet loss due wrong filter config in VLAN tbls + - net: hns3: Remove packet statistics in the range of 8192~12287 + - net: hns3: Add support of hardware rx-vlan-offload to HNS3 VF driver + - net: hns3: Fix for setting mac address when resetting + - net: hns3: remove add/del_tunnel_udp in hns3_enet module + - net: hns3: fix for cleaning ring problem + - net: hns3: refactor the loopback related function + - net: hns3: Fix for deadlock problem occurring when unregistering ae_algo + - net: hns3: Fix for the null pointer problem occurring when initializing + ae_dev failed + - net: hns3: Add a check for client instance init state + - net: hns3: Change return type of hnae3_register_ae_dev + - net: hns3: Change return type of hnae3_register_ae_algo + - net: hns3: Change return value in hnae3_register_client + - net: hns3: Fixes the back pressure setting when sriov is enabled + - net: hns3: Fix for fiber link up problem + - net: hns3: Add support of .sriov_configure in HNS3 driver + - net: hns3: Fixes the missing PCI iounmap for various legs + - net: hns3: Fixes error reported by Kbuild and internal review + - net: hns3: Fixes API to fetch ethernet header length with kernel default + - net: hns3: cleanup of return values in hclge_init_client_instance() + - net: hns3: Fix the missing client list node initialization + - net: hns3: Fix for hns3 module is loaded multiple times problem + - net: hns3: Use enums instead of magic number in hclge_is_special_opcode + - net: hns3: Fix for netdev not running problem after calling net_stop and + net_open + - net: hns3: Fixes kernel panic issue during rmmod hns3 driver + - net: hns3: Fix for CMDQ and Misc. interrupt init order problem + - net: hns3: Updates RX packet info fetch in case of multi BD + - net: hns3: Add support for tx_accept_tag2 and tx_accept_untag2 config + - net: hns3: Add STRP_TAGP field support for hardware revision 0x21 + - net: hns3: Add support to enable TX/RX promisc mode for H/W rev(0x21) + - net: hns3: Fix for PF mailbox receving unknown message + - net: hns3: Fixes the state to indicate client-type initialization + - net: hns3: Fixes the init of the VALID BD info in the descriptor + - net: hns3: Removes unnecessary check when clearing TX/RX rings + - net: hns3: Clear TX/RX rings when stopping port & un-initializing client + - net: hns3: Remove unused led control code + - net: hns3: Adds support for led locate command for copper port + - net: hns3: Fixes initalization of RoCE handle and makes it conditional + - net: hns3: Disable vf vlan filter when vf vlan table is full + - net: hns3: Add support for IFF_ALLMULTI flag + - net: hns3: Add repeat address checking for setting mac address + - net: hns3: Fix setting mac address error + - net: hns3: Fix for service_task not running problem after resetting + - net: hns3: Fix for hclge_reset running repeatly problem + - net: hns3: Fix for phy not link up problem after resetting + - net: hns3: Add missing break in misc_irq_handle + - net: hns3: Fix for vxlan tx checksum bug + - net: hns3: Optimize the PF's process of updating multicast MAC + - net: hns3: Optimize the VF's process of updating multicast MAC + - SAUCE: {topost} net: hns3: add support for serdes loopback selftest + - SAUCE: {topost} net: hns3: RX BD information valid only in last BD except + VLD bit and buffer size + - SAUCE: {topost} net: hns3: remove hclge_get_vector_index from + hclge_bind_ring_with_vector + - SAUCE: {topost} net: hns3: rename the interface for init_client_instance and + uninit_client_instance + - SAUCE: {topost} net: hns3: add vector status check before free vector + - SAUCE: {topost} net: hns3: add l4_type check for both ipv4 and ipv6 + - SAUCE: {topost} net: hns3: remove unused head file in hnae3.c + - SAUCE: {topost} net: hns3: extraction an interface for state state + init|uninit + - SAUCE: {topost} net: hns3: print the ret value in error information + - SAUCE: {topost} net: hns3: remove the Redundant put_vector in + hns3_client_uninit + - SAUCE: {topost} net: hns3: add unlikely for error check + - SAUCE: {topost} net: hns3: remove back in struct hclge_hw + - SAUCE: {topost} net: hns3: use lower_32_bits and upper_32_bits + - SAUCE: {topost} net: hns3: remove unused hclge_ring_to_dma_dir + - SAUCE: {topost} net: hns3: remove useless code in hclge_cmd_send + - SAUCE: {topost} net: hns3: remove some redundant assignments + - SAUCE: {topost} net: hns3: simplify hclge_cmd_csq_clean + - SAUCE: {topost} net: hns3: using modulo for cyclic counters in + hclge_cmd_send + - SAUCE: {topost} net: hns3: remove a redundant hclge_cmd_csq_done + - SAUCE: {topost} net: hns3: remove some unused members of some structures + - SAUCE: {topost} net: hns3: give default option while dependency HNS3 set + - SAUCE: {topost} net: hns3: use dma_zalloc_coherent instead of + kzalloc/dma_map_single + - SAUCE: {topost} net: hns3: modify hnae_ to hnae3_ + - SAUCE: {topost} net: hns3: fix unused function warning in VF driver + - SAUCE: {topost} net: hns3: remove some redundant assignments + - SAUCE: {topost} net: hns3: standardize the handle of return value + - SAUCE: {topost} net: hns3: remove extra space and brackets + - SAUCE: {topost} net: hns3: fix unreasonable code comments + - SAUCE: {topost} net: hns3: use decimal for bit offset macros + - SAUCE: {topost} net: hns3: modify inconsistent bit mask macros + - SAUCE: {topost} net: hns3: fix mislead parameter name + - SAUCE: {topost} net: hns3: remove unused struct member and definition + - SAUCE: {topost} net: hns3: Add SPDX tags to hns3 driver + - SAUCE: {topost} net: hns3: Add pf reset for hip08 RoCE + - SAUCE: {topost} net: hns3: optimize the process of notifying roce client + - SAUCE: {topost} net: hns3: Add calling roce callback function when link + status change + - SAUCE: {topost} net: hns3: fix tc setup when netdev is first up + - SAUCE: {topost} net: hns3: fix for mac pause not disable in pfc mode + - SAUCE: {topost} net: hns3: fix for waterline not setting correctly + - SAUCE: {topost} net: hns3: fix for l4 checksum offload bug + - SAUCE: {topost} net: hns3: fix for mailbox message truncated problem + - SAUCE: {topost} net: hns3: Add configure for mac minimal frame size + - SAUCE: {topost} net: hns3: fix warning bug when doing lp selftest + - SAUCE: {topost} net: hns3: fix get_vector ops in hclgevf_main module + - SAUCE: {topost} net: hns3: remove the warning when clear reset cause + - SAUCE: {topost} net: hns3: Use roce handle when calling roce callback + function + - SAUCE: {topost} net: hns3: prevent sending command during global or core + reset + - SAUCE: {topost} net: hns3: modify the order of initializeing command queue + register + - SAUCE: {topost} net: hns3: reset net device with rtnl_lock + - SAUCE: {topost} net: hns3: prevent to request reset frequently + - SAUCE: {topost} net: hns3: correct reset event status register + - SAUCE: {topost} net: hns3: separate roce from nic when resetting + - SAUCE: net: hns3: Fix for phy link issue when using marvell phy driver + - SAUCE: {topost} net: hns3: fix return value error in + hns3_reset_notify_down_enet + - SAUCE: {topost} net: hns3: remove unnecessary ring configuration operation + while resetting + - SAUCE: {topost} net: hns3: fix for reset_level default assignment probelm + - SAUCE: {topost} net: hns3: fix for using wrong mask and shift in + hclge_get_ring_chain_from_mbx + - SAUCE: {topost} net: hns3: fix comments for hclge_get_ring_chain_from_mbx + - SAUCE: net: hns3: Fix for VF mailbox cannot receiving PF response + - SAUCE: net: hns3: Fix for VF mailbox receiving unknown message + - SAUCE: net: hns3: Optimize PF CMDQ interrupt switching process + * CVE-2018-7755 + - SAUCE: floppy: Do not copy a kernel pointer to user memory in FDGETPRM ioctl + * Incorrect blacklist of bcm2835_wdt (LP: #1766052) + - [Packaging] Fix missing watchdog for Raspberry Pi + * kernel: Fix arch random implementation (LP: #1775391) + - s390/archrandom: Rework arch random implementation. + * [Ubuntu 1804][boston][ixgbe] EEH causes kernel BUG at /build/linux- + jWa1Fv/linux-4.15.0/drivers/pci/msi.c:352 (i2S) (LP: #1776389) + - ixgbe/ixgbevf: Free IRQ when PCI error recovery removes the device + * Cosmic update to v4.17.2 stable release (LP: #1779117) + - crypto: chelsio - request to HW should wrap + - blkdev_report_zones_ioctl(): Use vmalloc() to allocate large buffers + - KVM: X86: Fix reserved bits check for MOV to CR3 + - KVM: x86: introduce linear_{read,write}_system + - kvm: fix typo in flag name + - kvm: nVMX: Enforce cpl=0 for VMX instructions + - KVM: x86: pass kvm_vcpu to kvm_read_guest_virt and + kvm_write_guest_virt_system + - kvm: x86: use correct privilege level for sgdt/sidt/fxsave/fxrstor access + - staging: android: ion: Switch to pr_warn_once in ion_buffer_destroy + - NFC: pn533: don't send USB data off of the stack + - usbip: vhci_sysfs: fix potential Spectre v1 + - usb-storage: Add support for FL_ALWAYS_SYNC flag in the UAS driver + - usb-storage: Add compatibility quirk flags for G-Technologies G-Drive + - Input: xpad - add GPD Win 2 Controller USB IDs + - phy: qcom-qusb2: Fix crash if nvmem cell not specified + - usb: core: message: remove extra endianness conversion in + usb_set_isoch_delay + - usb: typec: wcove: Remove dependency on HW FSM + - usb: gadget: function: printer: avoid wrong list handling in printer_write() + - usb: gadget: udc: renesas_usb3: fix double phy_put() + - usb: gadget: udc: renesas_usb3: should remove debugfs + - usb: gadget: udc: renesas_usb3: should call pm_runtime_enable() before add + udc + - usb: gadget: udc: renesas_usb3: should call devm_phy_get() before add udc + - usb: gadget: udc: renesas_usb3: should fail if devm_phy_get() returns error + - usb: gadget: udc: renesas_usb3: disable the controller's irqs for + reconnecting + - serial: sh-sci: Stop using printk format %pCr + - tty/serial: atmel: use port->name as name in request_irq() + - serial: samsung: fix maxburst parameter for DMA transactions + - serial: 8250: omap: Fix idling of clocks for unused uarts + - vmw_balloon: fixing double free when batching mode is off + - doc: fix sysfs ABI documentation + - arm64: defconfig: Enable CONFIG_PINCTRL_MT7622 by default + - tty: pl011: Avoid spuriously stuck-off interrupts + - crypto: ccree - correct host regs offset + - Input: goodix - add new ACPI id for GPD Win 2 touch screen + - Input: elan_i2c - add ELAN0612 (Lenovo v330 14IKB) ACPI ID + - crypto: caam - strip input zeros from RSA input buffer + - crypto: caam - fix DMA mapping dir for generated IV + - crypto: caam - fix IV DMA mapping and updating + - crypto: caam/qi - fix IV DMA mapping and updating + - crypto: caam - fix size of RSA prime factor q + - crypto: cavium - Fix fallout from CONFIG_VMAP_STACK + - crypto: cavium - Limit result reading attempts + - crypto: vmx - Remove overly verbose printk from AES init routines + - crypto: vmx - Remove overly verbose printk from AES XTS init + - crypto: omap-sham - fix memleak + - Linux 4.17.2 + * Cosmic update to v4.17.1 stable release (LP: #1779116) + - netfilter: nf_flow_table: attach dst to skbs + - bnx2x: use the right constant + - ip6mr: only set ip6mr_table from setsockopt when ip6mr_new_table succeeds + - ipv6: omit traffic class when calculating flow hash + - l2tp: fix refcount leakage on PPPoL2TP sockets + - netdev-FAQ: clarify DaveM's position for stable backports + - net: metrics: add proper netlink validation + - net/packet: refine check for priv area size + - rtnetlink: validate attributes in do_setlink() + - sctp: not allow transport timeout value less than HZ/5 for hb_timer + - team: use netdev_features_t instead of u32 + - vrf: check the original netdevice for generating redirect + - net: dsa: b53: Fix for brcm tag issue in Cygnus SoC + - ipmr: fix error path when ipmr_new_table fails + - PCI: hv: Do not wait forever on a device that has disappeared + - Linux 4.17.1 + * Miscellaneous Ubuntu changes + - Revert "UBUNTU: SAUCE: crypto: thunderx_zip: Fix fallout from + CONFIG_VMAP_STACK" + - Revert "UBUNTU: SAUCE: cred: Add clone_cred() interface" + - SAUCE: apparmor: userspace queries + - SAUCE: apparmor: patch to provide compatibility with v2.x net rules + - SAUCE: apparmor: af_unix mediation + + [ Ubuntu: 4.17.0-2.3 ] + + * linux: 4.17.0-2.3 -proposed tracker (LP: #1776276) + * Miscellaneous Ubuntu changes + - Config: remove IrDA from annotations + - Config: remove scsi drivers from annotations + - Config: remove BT_HCIBTUART from annotations + - Config: pstore zlib support was renamed + - Config: disable NVRAM for armhf on annotations + - Config: Disable VT on s390x + - Config: Update SSB and B43/B44 options + - Config: some options not supported on some arches anymore + - Config: renamed and removed options + - Config: TCG_CRB is required for IMA on ACPI systems + - Config: EXTCON_AXP288 depends on X86 + - Config: CONFIG_FSI depends on OF + - Config: DRM_RCAR_LVDS now depends on DRM + - CONFIG: Allow CONFIG_LEDS_MLXCPLD for i386 + - Config: Enable HINIC on arm64 + - Config: Set PPS and PTP_1588_CLOCK as y + - Config: Some NF_TABLES options are built-in now + - Config: GENERIC_CPU for ppc64el + - Config: KEXEC_FILE=n for s390x + - Config: CRYPTO_DEFLATE is needed by PSTORE_DEFLATE_COMPRESS + - Config: Disable STM32 support + - Config: Enable FORTIFY_SOURCE for armhf + - Config: use STRONG instead of AUTO for CC_STACKPROTECTOR + * Rebase to v4.17 + + [ Ubuntu: 4.17.0-1.2 ] + + * [Config] enable EDAC_DEBUG on ARM64 (LP: #1772516) + - [Config]: set CONFIG_EDAC_DEBUG=y for ARM64 + * Ubuntu 18.04 kernel crashed while in degraded mode (LP: #1770849) + - SAUCE: powerpc/perf: Fix memory allocation for core-imc based on + num_possible_cpus() + * Integrated Webcam Realtek Integrated_Webcam_HD (0bda:58f4) not working in + DELL XPS 13 9370 with firmware 1.50 (LP: #1763748) + - SAUCE: media: uvcvideo: Support realtek's UVC 1.5 device + * Switch Build-Depends: transfig to fig2dev (LP: #1770770) + - [Config] update Build-Depends: transfig to fig2dev + * update-initramfs not adding i915 GuC firmware for Kaby Lake, firmware fails + to load (LP: #1728238) + - Revert "UBUNTU: SAUCE: (no-up) i915: Remove MODULE_FIRMWARE statements for + unreleased firmware" + * No driver for Huawei network adapters on arm64 (LP: #1769899) + - net-next/hinic: add arm64 support + * linux-snapdragon: reduce EPROBEDEFER noise during boot (LP: #1768761) + - [Config] snapdragon: DRM_I2C_ADV7511=y + * Add d-i support for Huawei NICs (LP: #1767490) + - d-i: add hinic to nic-modules udeb + * Acer Swift sf314-52 power button not managed (LP: #1766054) + - SAUCE: platform/x86: acer-wmi: add another KEY_POWER keycode + * Include nfp driver in linux-modules (LP: #1768526) + - [Config] Add nfp.ko to generic inclusion list + * Miscellaneous Ubuntu changes + - SAUCE: Import aufs driver + - [Config] Enable AUFS config options + - SAUCE: (efi-lockdown) Fix for module sig verification + - SAUCE: (efi-lockdown) Copy secure_boot flag in boot params across kexec + reboot + - SAUCE: (efi-lockdown) efi: Add an EFI_SECURE_BOOT flag to indicate secure + boot mode + - SAUCE: (efi-lockdown) efi: Lock down the kernel if booted in secure boot + mode + - SAUCE: (efi-lockdown) efi: Sanitize boot_params in efi stub + - SAUCE: (efi-lockdown) efi: Don't print secure boot state from the efi stub + - [Config] CONFIG_LOCK_DOWN_IN_EFI_SECURE_BOOT=y + - SAUCE: (efi-lockdown) really lock down kernel under EFI secure boot + - SAUCE: (noup) Update spl to 0.7.5-1ubuntu3, zfs to 0.7.5-1ubuntu17 + - enable zfs build + * Miscellaneous upstream changes + - Revert "UBUNTU: SAUCE: (efi-lockdown) ima: require secure_boot rules in + lockdown mode" + - Rebased to v4.17-rc6 + + [ Ubuntu: 4.17.0-0.1 ] + + * Rebase to v4.17-rc4 + + [ Ubuntu: 4.17.0-0.0 ] + + * Dummy entry. + + [ Ubuntu: 4.16.0-4.5 ] + + * [18.04 FEAT] Add kvm_stat from kernel tree (LP: #1734130) + - tools/kvm_stat: Fix python3 syntax + - tools/kvm_stat: Don't use deprecated file() + - tools/kvm_stat: Remove unused function + - [Packaging] Add linux-tools-host package for VM host tools + - [Config] do_tools_host=true for amd64 + * [Featire] CNL: Enable RAPL support (LP: #1685712) + - powercap: RAPL: Add support for Cannon Lake + * Bionic update to v4.16.2 stable release (LP: #1763388) + - sparc64: Oracle DAX driver depends on SPARC64 + - arp: fix arp_filter on l3slave devices + - net: dsa: Discard frames from unused ports + - net/ipv6: Increment OUTxxx counters after netfilter hook + - net/sched: fix NULL dereference in the error path of tcf_bpf_init() + - pptp: remove a buggy dst release in pptp_connect() + - sctp: do not leak kernel memory to user space + - sctp: sctp_sockaddr_af must check minimal addr length for AF_INET6 + - vlan: also check phy_driver ts_info for vlan's real device + - net: fool proof dev_valid_name() + - ip_tunnel: better validate user provided tunnel names + - ipv6: sit: better validate user provided tunnel names + - ip6_gre: better validate user provided tunnel names + - ip6_tunnel: better validate user provided tunnel names + - vti6: better validate user provided tunnel names + - net_sched: fix a missing idr_remove() in u32_delete_key() + - nfp: use full 40 bits of the NSP buffer address + - Linux 4.16.2 + * sky2 gigabit ethernet driver sometimes stops working after lid-open resume + from sleep (88E8055) (LP: #1758507) // Bionic update to v4.16.2 stable + release (LP: #1763388) + - sky2: Increase D3 delay to sky2 stops working after suspend + * Merge the linux-snapdragon kernel into bionic master/snapdragon + (LP: #1763040) + - arm64: defconfig: enable REMOTEPROC + - arm64: defconfig: enable QCOM audio drivers for APQ8016 and DB410c + - kernel: configs; add distro.config + - arm64: configs: enable WCN36xx + - kernel: distro.config: enable debug friendly USB network adpater + - arm64: configs: enable QCOM Venus + - arm64: defconfig: Enable a53/apcs and avs + - arm64: defconfig: enable ondemand governor as default + - arm64: defconfig: enable QCOM_TSENS + - kernel: configs: enable dm_mod and dm_crypt + - Force the SMD regulator driver to be compiled-in + - arm64: defconfig: enable CFG80211_DEFAULT_PS by default + - arm64: configs: enable BT_QCOMSMD + - kernel: configs: add more USB net drivers + - arm64: defconfig: disable ANALOG_TV and DIGITAL_TV + - arm64: configs: Enable camera drivers + - kernel: configs: add freq stat to sysfs + - arm64: defconfig: enable CONFIG_USB_CONFIGFS_F_FS by default + - arm64: defconfig: Enable QRTR features + - kernel: configs: set USB_CONFIG_F_FS in distro.config + - kernel: distro.config: enable 'schedutil' CPUfreq governor + - kernel: distro.config: enable 'fq' and 'fq_codel' qdiscs + - kernel: distro.config: enable 'BBR' TCP congestion algorithm + - arm64: defconfig: enable LEDS_QCOM_LPG + - HACK: drm/msm/iommu: Remove runtime_put calls in map/unmap + - power: avs: Add support for CPR (Core Power Reduction) + - power: avs: cpr: Use raw mem access for qfprom + - power: avs: cpr: fix with new reg_sequence structures + - power: avs: cpr: Register with cpufreq-dt + - regulator: smd: Add floor and corner operations + - PM / OPP: Support adjusting OPP voltages at runtime + - PM / OPP: Drop RCU usage in dev_pm_opp_adjust_voltage() + - PM / OPP: HACK: Allow to set regulator without opp_list + - PM / OPP: Add a helper to get an opp regulator for device + - cpufreq: Add apq8016 to cpufreq-dt-platdev blacklist + - regulator: smd: Allow REGULATOR_QCOM_SMD_RPM=m + - ov5645: I2C address change + - i2c: Add Qualcomm Camera Control Interface driver + - camss: vfe: Skip first four frames from sensor + - camss: Do not register if no cameras are present + - i2c-qcom-cci: Fix run queue completion timeout + - i2c-qcom-cci: Fix I2C address bug + - media: ov5645: Fix I2C address + - drm/bridge/adv7511: Delay clearing of HPD interrupt status + - HACK: drm/msm/adv7511: Don't rely on interrupts for EDID parsing + - leds: Add driver for Qualcomm LPG + - wcn36xx: Fix warning due to duplicate scan_completed notification + - arm64: dts: Add CPR DT node for msm8916 + - arm64: dts: add spmi-regulator nodes + - arm64: dts: msm8916: Add cpufreq support + - arm64: dts: msm8916: Add a shared CPU opp table + - arm64: dts: msm8916: Add cpu cooling maps + - arm64: dts: pm8916: Mark the s2 regulator as always-on + - arm64: dts: qcom: msm8916: Add msm8916 A53 PLL DT node + - arm64: dts: qcom: msm8916: Use the new APCS mailbox driver + - arm64: dts: qcom: msm8916: Add clock properties to the APCS node + - dt-bindings: media: Binding document for Qualcomm Camera Control Interface + driver + - MAINTAINERS: Add Qualcomm Camera Control Interface driver + - DT: leds: Add Qualcomm Light Pulse Generator binding + - arm64: dts: qcom: msm8996: Add mpp and lpg blocks + - arm64: dts: qcom: Add pwm node for pm8916 + - arm64: dts: qcom: Add user LEDs on db820c + - arm64: dts: qcom: Add WiFI/BT LEDs on db820c + - ARM: dts: qcom: Add LPG node to pm8941 + - ARM: dts: qcom: honami: Add LPG node and RGB LED + - arm64: dts: qcom: Add Camera Control Interface support + - arm64: dts: qcom: Add apps_iommu vfe child node + - arm64: dts: qcom: Add camss device node + - arm64: dts: qcom: Add ov5645 device nodes + - arm64: dts: msm8916: Fix camera sensors I2C addresses + - arm: dts: qcom: db410c: Enable PWM signal on MPP4 + - packaging: arm64: add a uboot flavour - part1 + - packaging: arm64: add a uboot flavour - part2 + - packaging: arm64: add a uboot flavour - part3 + - packaging: arm64: add a uboot flavour - part4 + - packaging: arm64: add a uboot flavour - part5 + - packaging: arm64: rename uboot flavour to snapdragon + - [Config] updateconfigs after qcomlt import + - [Config] arm64: snapdragon: COMMON_CLK_QCOM=y + - [Config] arm64: snapdragon: MSM_GCC_8916=y + - [Config] arm64: snapdragon: REGULATOR_FIXED_VOLTAGE=y + - [Config] arm64: snapdragon: PINCTRL_MSM8916=y + - [Config] arm64: snapdragon: HWSPINLOCK_QCOM=y + - [Config] arm64: snapdragon: SPMI=y, SPMI_MSM_PMIC_ARB=y + - [Config] arm64: snapdragon: REGMAP_SPMI=y, PINCTRL_QCOM_SPMI_PMIC=y + - [Config] arm64: snapdragon: REGULATOR_QCOM_SPMI=y + - [Config] arm64: snapdragon: MFD_SPMI_PMIC=y + - [Config] arm64: snapdragon: QCOM_SMEM=y + - [Config] arm64: snapdragon: RPMSG=y, RPMSG_QCOM_SMD=y + - [Config] arm64: snapdragon: QCOM_SMD_RPM=y, REGULATOR_QCOM_SMD_RPM=y + - [Config] arm64: snapdragon: QCOM_CLK_SMD_RPM=y + - [Config] arm64: snapdragon: QCOM_BAM_DMA=y + - [Config] arm64: snapdragon: QCOM_HIDMA=y, QCOM_HIDMA_MGMT=y + - [Config] arm64: snapdragon: QCOM_CPR=y + - [Config] arm64: snapdragon: QCOM_QFPROM=y, QCOM_TSENS=y + - [Config] arm64: snapdragon: MMC_SDHCI=y, MMC_SDHCI_PLTFM=y, MMC_SDHCI_MSM=y + - [Config] turn off DRM_MSM_REGISTER_LOGGING + - [Config] arm64: snapdragon: I2C_QUP=y + - [Config] arm64: snapdragon: SPI_QUP=y + - [Config] arm64: snapdragon: USB_ULPI_BUS=y, PHY_QCOM_USB_HS=y + - [Config] arm64: snapdragon: QCOM_APCS_IPC=y + - [Config] arm64: snapdragon: QCOM_WCNSS_CTRL=y + - [Config] arm64: snapdragon: QCOM_SMSM=y + - [Config] arm64: snapdragon: QCOM_SMP2P=y + - [Config] arm64: snapdragon: DRM_MSM=y + - [Config] arm64: snapdragon: SND_SOC=y + - [Config] arm64: snapdragon: QCOM_WCNSS_PIL=m + - [Config] arm64: snapdragon: INPUT_PM8941_PWRKEY=y + - [Config] arm64: snapdragon: MEDIA_SUBDRV_AUTOSELECT=y, VIDEO_OV5645=m + - [Config] arm64: snapdragon: SND_SOC_APQ8016_SBC=y, SND_SOC_LPASS_APQ8016=y + - [Config] arm64: snapdragon: SND_SOC_MSM8916_WCD_ANALOG=y, + SND_SOC_MSM8916_WCD_DIGITAL=y + - SAUCE: media: ov5645: skip address change if dt addr == default addr + - SAUCE: drm/msm/adv7511: wrap hacks under CONFIG_ADV7511_SNAPDRAGON_HACKS + #ifdefs + - [Config] arm64: snapdragon: ADV7511_SNAPDRAGON_HACKS=y + - [Packaging] fix up snapdragon abi paths + * LSM stacking patches for bionic (LP: #1763062) + - SAUCE: LSM stacking: procfs: add smack subdir to attrs + - SAUCE: LSM stacking: LSM: Manage credential security blobs + - SAUCE: LSM stacking: LSM: Manage file security blobs + - SAUCE: LSM stacking: LSM: Manage task security blobs + - SAUCE: LSM stacking: LSM: Manage remaining security blobs + - SAUCE: LSM stacking: LSM: General stacking + - SAUCE: LSM stacking: fixup initialize task->security + - SAUCE: LSM stacking: fixup: alloc_task_ctx is dead code + - SAUCE: LSM stacking: add support for stacking getpeersec_stream + - SAUCE: LSM stacking: add stacking support to apparmor network hooks + - SAUCE: LSM stacking: fixup apparmor stacking enablement + - SAUCE: LSM stacking: fixup stacking kconfig + - SAUCE: LSM stacking: allow selecting multiple LSMs using kernel boot params + - SAUCE: LSM stacking: provide prctl interface for setting context + - SAUCE: LSM stacking: inherit current display LSM + - SAUCE: LSM stacking: keep an index for each registered LSM + - SAUCE: LSM stacking: verify display LSM + - SAUCE: LSM stacking: provide a way to specify the default display lsm + - SAUCE: LSM stacking: make sure LSM blob align on 64 bit boundaries + - SAUCE: LSM stacking: add /proc//attr/display_lsm + - SAUCE: LSM stacking: add Kconfig to set default display LSM + - SAUCE: LSM stacking: add configs for LSM stacking + - SAUCE: LSM stacking: add apparmor and selinux proc dirs + - SAUCE: LSM stacking: remove procfs context interface + * linux 4.13.0-13.14 ADT test failure with linux 4.13.0-13.14 + (LP: #1720779) // LSM stacking patches for bionic (LP: #1763062) + - SAUCE: LSM stacking: check for invalid zero sized writes + * Support cq/rq record doorbell for RDMA on HSilicon hip08 systems + (LP: #1762755) + - RDMA/hns: Support rq record doorbell for the user space + - RDMA/hns: Support cq record doorbell for the user space + - RDMA/hns: Support rq record doorbell for kernel space + - RDMA/hns: Support cq record doorbell for kernel space + - RDMA/hns: Fix cqn type and init resp + - RDMA/hns: Fix init resp when alloc ucontext + - RDMA/hns: Fix cq record doorbell enable in kernel + * Replace LPC patchset with upstream version (LP: #1762758) + - Revert "UBUNTU: SAUCE: MAINTAINERS: Add maintainer for HiSilicon LPC driver" + - Revert "UBUNTU: SAUCE: HISI LPC: Add ACPI support" + - Revert "UBUNTU: SAUCE: ACPI / scan: do not enumerate Indirect IO host + children" + - Revert "UBUNTU: SAUCE: HISI LPC: Support the LPC host on Hip06/Hip07 with DT + bindings" + - Revert "UBUNTU: SAUCE: OF: Add missing I/O range exception for indirect-IO + devices" + - Revert "UBUNTU: SAUCE: PCI: Apply the new generic I/O management on PCI IO + hosts" + - Revert "UBUNTU: SAUCE: PCI: Add fwnode handler as input param of + pci_register_io_range()" + - Revert "UBUNTU: SAUCE: PCI: Remove unused __weak attribute in + pci_register_io_range()" + - Revert "UBUNTU: SAUCE: LIB: Introduce a generic PIO mapping method" + - lib: Add generic PIO mapping method + - PCI: Remove __weak tag from pci_register_io_range() + - PCI: Add fwnode handler as input param of pci_register_io_range() + - PCI: Apply the new generic I/O management on PCI IO hosts + - of: Add missing I/O range exception for indirect-IO devices + - HISI LPC: Support the LPC host on Hip06/Hip07 with DT bindings + - ACPI / scan: Rename acpi_is_serial_bus_slave() for more general use + - ACPI / scan: Do not enumerate Indirect IO host children + - HISI LPC: Add ACPI support + - MAINTAINERS: Add John Garry as maintainer for HiSilicon LPC driver + * Enable Tunneled Operations on POWER9 (LP: #1762448) + - powerpc/powernv: Enable tunneled operations + - cxl: read PHB indications from the device tree + * PSL traces reset after PERST for debug AFU image (LP: #1762462) + - cxl: Enable NORST bit in PSL_DEBUG register for PSL9 + * NFS + sec=krb5 is broken (LP: #1759791) + - sunrpc: remove incorrect HMAC request initialization + * Raspberry Pi 3 microSD support missing from the installer (LP: #1729128) + - d-i: add bcm2835 to block-modules + * Backport USB core quirks (LP: #1762695) + - usb: core: Add "quirks" parameter for usbcore + - usb: core: Copy parameter string correctly and remove superfluous null check + - usb: core: Add USB_QUIRK_DELAY_CTRL_MSG to usbcore quirks + * [Ubuntu 18.04] cryptsetup: 'device-mapper: reload ioctl on failed' when + setting up a second end-to-end encrypted disk (LP: #1762353) + - SAUCE: s390/crypto: Adjust s390 aes and paes cipher + * System Z {kernel} UBUNTU18.04 wrong kernel config (LP: #1762719) + - s390: move nobp parameter functions to nospec-branch.c + - s390: add automatic detection of the spectre defense + - s390: report spectre mitigation via syslog + - s390: add sysfs attributes for spectre + - [Config] CONFIG_EXPOLINE_AUTO=y, CONFIG_KERNEL_NOBP=n for s390 + - s390: correct nospec auto detection init order + * Additional spectre and meltdown patches (LP: #1760099) // CVE-2017-5715 + - powerpc/64s: Wire up cpu_show_spectre_v2() + * Additional spectre and meltdown patches (LP: #1760099) // CVE-2017-5753 + - powerpc/64s: Wire up cpu_show_spectre_v1() + * Additional spectre and meltdown patches (LP: #1760099) // CVE-2017-5754 + - powerpc/rfi-flush: Move the logic to avoid a redo into the debugfs code + - powerpc/rfi-flush: Make it possible to call setup_rfi_flush() again + - powerpc/rfi-flush: Always enable fallback flush on pseries + - powerpc/rfi-flush: Differentiate enabled and patched flush types + - powerpc/rfi-flush: Call setup_rfi_flush() after LPM migration + - powerpc/64s: Move cpu_show_meltdown() + - powerpc/64s: Enhance the information in cpu_show_meltdown() + - powerpc/powernv: Use the security flags in pnv_setup_rfi_flush() + - powerpc/pseries: Use the security flags in pseries_setup_rfi_flush() + * Additional spectre and meltdown patches (LP: #1760099) // CVE-2017-5715 // + CVE-2017-5753 // CVE-2017-5754 + - powerpc/pseries: Add new H_GET_CPU_CHARACTERISTICS flags + - powerpc: Add security feature flags for Spectre/Meltdown + - powerpc/pseries: Set or clear security feature flags + - powerpc/powernv: Set or clear security feature flags + * Hisilicon network subsystem 3 support (LP: #1761610) + - net: hns3: export pci table of hclge and hclgevf to userspace + - d-i: Add hns3 drivers to nic-modules + * "ip a" command on a guest VM shows UNKNOWN status (LP: #1761534) + - virtio-net: Fix operstate for virtio when no VIRTIO_NET_F_STATUS + * perf vendor events arm64: Enable JSON events for ThunderX2 B0 (LP: #1760712) + - perf vendor events: Drop incomplete multiple mapfile support + - perf vendor events: Fix error code in json_events() + - perf vendor events: Drop support for unused topic directories + - perf vendor events: Add support for pmu events vendor subdirectory + - perf vendor events arm64: Relocate ThunderX2 JSON to cavium subdirectory + - perf vendor events arm64: Relocate Cortex A53 JSONs to arm subdirectory + - perf vendor events: Add support for arch standard events + - perf vendor events arm64: Add armv8-recommended.json + - perf vendor events arm64: Fixup ThunderX2 to use recommended events + - perf vendor events arm64: fixup A53 to use recommended events + - perf vendor events arm64: add HiSilicon hip08 JSON file + - perf vendor events arm64: Enable JSON events for ThunderX2 B0 + * Warning "cache flush timed out!" seen when unloading the cxl driver + (LP: #1762367) + - cxl: Check if PSL data-cache is available before issue flush request + * Bionic update to v4.16.1 stable release (LP: #1763170) + - bitmap: fix memset optimization on big-endian systems + - USB: serial: ftdi_sio: add RT Systems VX-8 cable + - USB: serial: ftdi_sio: add support for Harman FirmwareHubEmulator + - USB: serial: cp210x: add ELDAT Easywave RX09 id + - serial: 8250: Add Nuvoton NPCM UART + - mei: remove dev_err message on an unsupported ioctl + - /dev/mem: Avoid overwriting "err" in read_mem() + - media: usbtv: prevent double free in error case + - parport_pc: Add support for WCH CH382L PCI-E single parallel port card. + - crypto: lrw - Free rctx->ext with kzfree + - crypto: ccp - Fill the result buffer only on digest, finup, and final ops + - crypto: talitos - don't persistently map req_ctx->hw_context and + req_ctx->buf + - crypto: inside-secure - fix clock management + - crypto: testmgr - Fix incorrect values in PKCS#1 test vector + - crypto: talitos - fix IPsec cipher in length + - crypto: ahash - Fix early termination in hash walk + - crypto: caam - Fix null dereference at error path + - crypto: ccp - return an actual key size from RSA max_size callback + - crypto: arm,arm64 - Fix random regeneration of S_shipped + - crypto: x86/cast5-avx - fix ECB encryption when long sg follows short one + - Bluetooth: hci_bcm: Add 6 new ACPI HIDs + - Btrfs: fix unexpected cow in run_delalloc_nocow + - siox: fix possible buffer overflow in device_add_store + - staging: comedi: ni_mio_common: ack ai fifo error interrupts. + - Revert "base: arch_topology: fix section mismatch build warnings" + - Input: ALPS - fix TrackStick detection on Thinkpad L570 and Latitude 7370 + - Input: i8042 - add Lenovo ThinkPad L460 to i8042 reset list + - Input: i8042 - enable MUX on Sony VAIO VGN-CS series to fix touchpad + - vt: change SGR 21 to follow the standards + - Fix slab name "biovec-(1<<(21-12))" + - signal: Correct the offset of si_pkey and si_lower in struct siginfo on m68k + - Linux 4.16.1 + * [18.04][config] regression: nvme and nvme_core couldn't be built as modules + starting 4.15-rc2 (LP: #1759893) + - SAUCE: Revert "lightnvm: include NVM Express driver if OCSSD is selected for + build" + - [Config] CONFIG_BLK_DEV_NMVE=m + * FFe: Enable configuring resume offset via sysfs (LP: #1760106) + - PM / hibernate: Make passing hibernate offsets more friendly + * Ubuntu18.04:POWER9:DD2.2 - Unable to start a KVM guest with default machine + type(pseries-bionic) complaining "KVM implementation does not support + Transactional Memory, try cap-htm=off" (kvm) (LP: #1752026) + - powerpc: Use feature bit for RTC presence rather than timebase presence + - powerpc: Book E: Remove unused CPU_FTR_L2CSR bit + - powerpc: Free up CPU feature bits on 64-bit machines + - powerpc: Add CPU feature bits for TM bug workarounds on POWER9 v2.2 + - powerpc/powernv: Provide a way to force a core into SMT4 mode + - KVM: PPC: Book3S HV: Work around transactional memory bugs in POWER9 + - KVM: PPC: Book3S HV: Work around XER[SO] bug in fake suspend mode + - KVM: PPC: Book3S HV: Work around TEXASR bug in fake suspend state + * [Feature][CFL][ICL] [CNL]Thunderbolt support (Titan Ridge) (LP: #1730775) + - thunderbolt: Resume control channel after hibernation image is created + - thunderbolt: Serialize PCIe tunnel creation with PCI rescan + - thunderbolt: Handle connecting device in place of host properly + - thunderbolt: Do not overwrite error code when domain adding fails + - thunderbolt: Wait a bit longer for root switch config space + - thunderbolt: Wait a bit longer for ICM to authenticate the active NVM + - thunderbolt: Handle rejected Thunderbolt devices + - thunderbolt: Factor common ICM add and update operations out + - thunderbolt: Correct function name in kernel-doc comment + - thunderbolt: Add tb_switch_get() + - thunderbolt: Add tb_switch_find_by_route() + - thunderbolt: Add tb_xdomain_find_by_route() + - thunderbolt: Add constant for approval timeout + - thunderbolt: Move driver ready handling to struct icm + - thunderbolt: Add 'boot' attribute for devices + - thunderbolt: Add support for preboot ACL + - thunderbolt: Introduce USB only (SL4) security level + - thunderbolt: Add support for Intel Titan Ridge + * QCA9377 requires more IRAM banks for its new firmware (LP: #1748345) + - ath10k: update the IRAM bank number for QCA9377 + * Fix an issue that when system in S3, USB keyboard can't wake up the system. + (LP: #1759511) + - ACPI / PM: Allow deeper wakeup power states with no _SxD nor _SxW + * cxl: Fix timebase synchronization status on POWER9 missing (CAPI) + (LP: #1757228) + - cxl: Fix timebase synchronization status on P9 + * [Feature]Update Ubuntu 18.04 lpfc FC driver with 32/64GB HBA support and bug + fixes (LP: #1752182) + - scsi: lpfc: Fix frequency of Release WQE CQEs + - scsi: lpfc: Increase CQ and WQ sizes for SCSI + - scsi: lpfc: move placement of target destroy on driver detach + - scsi: lpfc: correct debug counters for abort + - scsi: lpfc: Add WQ Full Logic for NVME Target + - scsi: lpfc: Fix PRLI handling when topology type changes + - scsi: lpfc: Fix IO failure during hba reset testing with nvme io. + - scsi: lpfc: Fix RQ empty firmware trap + - scsi: lpfc: Allow set of maximum outstanding SCSI cmd limit for a target + - scsi: lpfc: Fix soft lockup in lpfc worker thread during LIP testing + - scsi: lpfc: Fix issue_lip if link is disabled + - scsi: lpfc: Indicate CONF support in NVMe PRLI + - scsi: lpfc: Fix SCSI io host reset causing kernel crash + - scsi: lpfc: Validate adapter support for SRIU option + - scsi: lpfc: Fix header inclusion in lpfc_nvmet + - scsi: lpfc: Treat SCSI Write operation Underruns as an error + - scsi: lpfc: Fix nonrecovery of NVME controller after cable swap. + - scsi: lpfc: update driver version to 11.4.0.7 + - scsi: lpfc: Update 11.4.0.7 modified files for 2018 Copyright + - scsi: lpfc: Rework lpfc to allow different sli4 cq and eq handlers + - scsi: lpfc: Rework sli4 doorbell infrastructure + - scsi: lpfc: Add SLI-4 if_type=6 support to the code base + - scsi: lpfc: Add push-to-adapter support to sli4 + - scsi: lpfc: Add PCI Ids for if_type=6 hardware + - scsi: lpfc: Add 64G link speed support + - scsi: lpfc: Add if_type=6 support for cycling valid bits + - scsi: lpfc: Enable fw download on if_type=6 devices + - scsi: lpfc: Add embedded data pointers for enhanced performance + - scsi: lpfc: Fix nvme embedded io length on new hardware + - scsi: lpfc: Work around NVME cmd iu SGL type + - scsi: lpfc: update driver version to 12.0.0.0 + - scsi: lpfc: Change Copyright of 12.0.0.0 modified files to 2018 + - scsi: lpfc: use __raw_writeX on DPP copies + - scsi: lpfc: Add missing unlock in WQ full logic + * /dev/bcache/by-uuid links not created after reboot (LP: #1729145) + - SAUCE: (no-up) bcache: decouple emitting a cached_dev CHANGE uevent + * DKMS driver builds fail with: Cannot use CONFIG_STACK_VALIDATION=y, please + install libelf-dev, libelf-devel or elfutils-libelf-devel (LP: #1760876) + - [Packaging] include the retpoline extractor in the headers + * Use med_with_dipm SATA LPM to save more power for mobile platforms + (LP: #1759547) + - [Config] CONFIG_SATA_MOBILE_LPM_POLICY=3 + * Miscellaneous Ubuntu changes + - [Packaging] Only install cloud init files when do_tools_common=true + - SAUCE: Import aufs driver + - [Config] Enable AUFS config options + + [ Ubuntu: 4.16.0-3.4 ] + + * Allow multiple mounts of zfs datasets (LP: #1759848) + - SAUCE: Allow mounting datasets more than once (LP: #1759848) + * zfs system process hung on container stop/delete (LP: #1754584) + - SAUCE: Fix non-prefaulted page deadlock (LP: #1754584) + - Revert "UBUNTU: SAUCE: Fix non-prefaulted page deadlock (LP: #1754584)" + - SAUCE: Fix non-prefaulted page deadlock (LP: #1754584) + * ubuntu_zram_smoke test will cause soft lockup on Artful ThunderX ARM64 + (LP: #1755073) + - SAUCE: crypto: thunderx_zip: Fix fallout from CONFIG_VMAP_STACK + * CAPI Flash (cxlflash) update (LP: #1752672) + - SAUCE: cxlflash: Preserve number of interrupts for master contexts + - SAUCE: cxlflash: Avoid clobbering context control register value + - SAUCE: cxlflash: Add argument identifier names + - SAUCE: cxlflash: Introduce OCXL backend + - SAUCE: cxlflash: Hardware AFU for OCXL + - SAUCE: cxlflash: Read host function configuration + - SAUCE: cxlflash: Setup function acTag range + - SAUCE: cxlflash: Read host AFU configuration + - SAUCE: cxlflash: Setup AFU acTag range + - SAUCE: cxlflash: Setup AFU PASID + - SAUCE: cxlflash: Adapter context support for OCXL + - SAUCE: cxlflash: Use IDR to manage adapter contexts + - SAUCE: cxlflash: Support adapter file descriptors for OCXL + - SAUCE: cxlflash: Support adapter context discovery + - SAUCE: cxlflash: Support image reload policy modification + - SAUCE: cxlflash: MMIO map the AFU + - SAUCE: cxlflash: Support starting an adapter context + - SAUCE: cxlflash: Support process specific mappings + - SAUCE: cxlflash: Support AFU state toggling + - SAUCE: cxlflash: Support reading adapter VPD data + - SAUCE: cxlflash: Setup function OCXL link + - SAUCE: cxlflash: Setup OCXL transaction layer + - SAUCE: cxlflash: Support process element lifecycle + - SAUCE: cxlflash: Support AFU interrupt management + - SAUCE: cxlflash: Support AFU interrupt mapping and registration + - SAUCE: cxlflash: Support starting user contexts + - SAUCE: cxlflash: Support adapter context polling + - SAUCE: cxlflash: Support adapter context reading + - SAUCE: cxlflash: Support adapter context mmap and release + - SAUCE: cxlflash: Support file descriptor mapping + - SAUCE: cxlflash: Introduce object handle fop + - SAUCE: cxlflash: Setup LISNs for user contexts + - SAUCE: cxlflash: Setup LISNs for master contexts + - SAUCE: cxlflash: Update synchronous interrupt status bits + - SAUCE: cxlflash: Introduce OCXL context state machine + - SAUCE: cxlflash: Register for translation errors + - SAUCE: cxlflash: Support AFU reset + - SAUCE: cxlflash: Enable OCXL operations + * [Artful][Wyse 3040] System hang when trying to enable an offlined CPU core + (LP: #1736393) + - SAUCE: drm/i915:Don't set chip specific data + - SAUCE: drm/i915: make previous commit affects Wyse 3040 only + * zed process consuming 100% cpu (LP: #1751796) + - SAUCE: Fix ioctl loop-spin in zed (LP: #1751796) + * Ubuntu18.04:PowerPC - Set Transparent Huge Pages (THP) by default to + "always" (LP: #1753708) + - Config: Set TRANSPARENT_HUGEPAGE_ALWAYS=y on ppc64el + * retpoline hints: primary infrastructure and initial hints (LP: #1758856) + - [Packaging] retpoline -- add safe usage hint support + - [Packaging] retpoline-check -- only report additions + - [Packaging] retpoline -- widen indirect call/jmp detection + - [Packaging] retpoline -- elide %rip relative indirections + - [Packaging] retpoline -- clear hint information from packages + - SAUCE: apm -- annotate indirect calls within + firmware_restrict_branch_speculation_{start,end} + - SAUCE: EFI -- annotate indirect calls within + firmware_restrict_branch_speculation_{start,end} + - SAUCE: early/late -- annotate indirect calls in early/late initialisation + code + - SAUCE: vga_set_mode -- avoid jump tables + - [Config] retpoine -- switch to new format + * Miscellaneous Ubuntu changes + - [Packaging] final-checks -- remove check for empty retpoline files + - [Packaging] skip cloud tools packaging when not building package + * Rebase to v4.16 + + [ Ubuntu: 4.16.0-2.3 ] + + * devpts: handle bind-mounts (LP: #1755857) + - SAUCE: devpts: hoist out check for DEVPTS_SUPER_MAGIC + - SAUCE: devpts: resolve devpts bind-mounts + - SAUCE: devpts: comment devpts_mntget() + - SAUCE: selftests: add devpts selftests + * [bionic][arm64] d-i: add hisi_sas_v3_hw to scsi-modules (LP: #1756103) + - d-i: add hisi_sas_v3_hw to scsi-modules + * [Bionic][ARM64] PCI and SAS driver patches for hip08 SoCs (LP: #1756094) + - SAUCE: scsi: hisi_sas: config for hip08 ES + - SAUCE: scsi: hisi_sas: export device table of v3 hw to userspace + * s390/crypto: Fix kernel crash on aes_s390 module remove (LP: #1753424) + - SAUCE: s390/crypto: Fix kernel crash on aes_s390 module remove. + * Fix ARC hit rate (LP: #1755158) + - SAUCE: Fix ARC hit rate (LP: #1755158) + * ZFS setgid broken on 0.7 (LP: #1753288) + - SAUCE: Fix ZFS setgid + * CONFIG_EFI=y on armhf (LP: #1726362) + - [Config] CONFIG_EFI=y on armhf, reconcile secureboot EFI settings + * [Feature] Add xHCI debug device support in the driver (LP: #1730832) + - [Config] CONFIG_USB_XHCI_DBGCAP=y + * retpoline: ignore %cs:0xNNN constant indirections (LP: #1752655) + - [Packaging] retpoline -- elide %cs:0xNNNN constants on i386 + - [Config] retpoline -- clean up i386 retpoline files + * Miscellaneous Ubuntu changes + - [Packaging] retpoline-extract: flag *0xNNN(%reg) branches + - [Config] fix up retpoline abi files + - [Config] fix up retpoline abi files + - d-i: Add netsec to nic-modules + * Rebase to v4.16-rc6 + + [ Ubuntu: 4.16.0-1.2 ] + + * Driver not found in Ubuntu kernel does not detect interface (LP: #1745927) + - d-i: add cxgb4 to nic-modules + * Support low-pin-count devices on Hisilicon SoCs (LP: #1677319) + - [Config] CONFIG_INDIRECT_PIO=y + - SAUCE: LIB: Introduce a generic PIO mapping method + - SAUCE: PCI: Remove unused __weak attribute in pci_register_io_range() + - SAUCE: PCI: Add fwnode handler as input param of pci_register_io_range() + - SAUCE: PCI: Apply the new generic I/O management on PCI IO hosts + - SAUCE: OF: Add missing I/O range exception for indirect-IO devices + - [Config] CONFIG_HISILICON_LPC=y + - SAUCE: HISI LPC: Support the LPC host on Hip06/Hip07 with DT bindings + - SAUCE: ACPI / scan: do not enumerate Indirect IO host children + - SAUCE: HISI LPC: Add ACPI support + - SAUCE: MAINTAINERS: Add maintainer for HiSilicon LPC driver + * Miscellaneous Ubuntu changes + - SAUCE: tools: use CC for linking acpi tools + * Rebase to v4.16-rc3 + + [ Ubuntu: 4.16.0-0.1 ] + + * retpoline abi files are empty on i386 (LP: #1751021) + - [Packaging] retpoline-extract -- instantiate retpoline files for i386 + - [Packaging] final-checks -- sanity checking ABI contents + - [Packaging] final-checks -- check for empty retpoline files + * Miscellaneous upstream changes + - disable vbox build + - Disable zfs build + * Rebase to v4.16-rc2 + + [ Ubuntu: 4.16.0-0.0 ] + + * Dummy entry + + -- Marcelo Henrique Cerri Thu, 26 Jul 2018 09:49:11 -0300 + +linux-azure (4.17.0-1000.0) cosmic; urgency=medium + + * Empty. + + -- Marcelo Henrique Cerri Mon, 23 Jul 2018 11:16:46 -0300 + +linux-azure (4.15.0-1018.18) bionic; urgency=medium + + * linux-azure: 4.15.0-1018.18 -proposed tracker (LP: #1782178) + + + [ Ubuntu: 4.15.0-29.31 ] + + * linux: 4.15.0-29.31 -proposed tracker (LP: #1782173) + * [SRU Bionic][Cosmic] kernel panic in ipmi_ssif at msg_done_handler + (LP: #1777716) + - ipmi_ssif: Fix kernel panic at msg_done_handler + * Update to ocxl driver for 18.04.1 (LP: #1775786) + - misc: ocxl: use put_device() instead of device_unregister() + - powerpc: Add TIDR CPU feature for POWER9 + - powerpc: Use TIDR CPU feature to control TIDR allocation + - powerpc: use task_pid_nr() for TID allocation + - ocxl: Rename pnv_ocxl_spa_remove_pe to clarify it's action + - ocxl: Expose the thread_id needed for wait on POWER9 + - ocxl: Add an IOCTL so userspace knows what OCXL features are available + - ocxl: Document new OCXL IOCTLs + - ocxl: Fix missing unlock on error in afu_ioctl_enable_p9_wait() + * Critical upstream bugfix missing in Ubuntu 18.04 - frequent Xorg crash after + suspend (LP: #1776887) + - ocxl: Document the OCXL_IOCTL_GET_METADATA IOCTL + * Hard LOCKUP observed on stressing Ubuntu 18 04 (LP: #1777194) + - powerpc: use NMI IPI for smp_send_stop + - powerpc: Fix smp_send_stop NMI IPI handling + * IPL: ppc64_cpu --frequency hang with INFO: rcu_sched detected stalls on + CPUs/tasks on w34 and wsbmc016 with 920.1714.20170330n (LP: #1773964) + - rtc: opal: Fix OPAL RTC driver OPAL_BUSY loops + * [Regression] EXT4-fs error (device sda2): ext4_validate_block_bitmap:383: + comm stress-ng: bg 4705: bad block bitmap checksum (LP: #1781709) + - SAUCE: Revert "UBUNTU: SAUCE: ext4: fix ext4_validate_inode_bitmap: comm + stress-ng: Corrupt inode bitmap" + - SAUCE: ext4: check for allocation block validity with block group locked + + [ Ubuntu: 4.15.0-28.30 ] + + * linux: 4.15.0-28.30 -proposed tracker (LP: #1781433) + * Cannot set MTU higher than 1500 in Xen instance (LP: #1781413) + - xen-netfront: Fix mismatched rtnl_unlock + - xen-netfront: Update features after registering netdev + + -- Marcelo Henrique Cerri Thu, 19 Jul 2018 09:03:45 -0300 + +linux-azure (4.15.0-1017.17) bionic; urgency=medium + + * linux-azure: 4.15.0-1017.17 -proposed tracker (LP: #1781066) + + * [Hyper-V] Please set CONFIG_BLK_DEV_DRBD to "m" (LP: #1780309) + - [Config] linux-azure: CONFIG_BLK_DEV_DRBD=m + + [ Ubuntu: 4.15.0-27.29 ] + + * linux: 4.15.0-27.29 -proposed tracker (LP: #1781062) + * [Regression] EXT4-fs error (device sda1): ext4_validate_inode_bitmap:99: + comm stress-ng: Corrupt inode bitmap (LP: #1780137) + - SAUCE: ext4: fix ext4_validate_inode_bitmap: comm stress-ng: Corrupt inode + bitmap + + -- Marcelo Henrique Cerri Wed, 11 Jul 2018 18:53:37 -0300 + +linux-azure (4.15.0-1016.16) bionic; urgency=medium + + * linux-azure: 4.15.0-1016.16 -proposed tracker (LP: #1780117) + + + [ Ubuntu: 4.15.0-26.28 ] + + * linux: 4.15.0-26.28 -proposed tracker (LP: #1780112) + * failure to boot with linux-image-4.15.0-24-generic (LP: #1779827) // Cloud- + init causes potentially huge boot delays with 4.15 kernels (LP: #1780062) + - random: Make getrandom() ready earlier + + -- Marcelo Henrique Cerri Wed, 04 Jul 2018 14:17:07 -0300 + +linux-azure (4.15.0-1015.15) bionic; urgency=medium + + * linux-azure: 4.15.0-1015.15 -proposed tracker (LP: #1779360) + + * linux-azure: fix Vcs-Git tag (LP: #1779929) + - [Packaging]: Update Vcs-Git + + [ Ubuntu: 4.15.0-25.27 ] + + * linux: 4.15.0-25.27 -proposed tracker (LP: #1779354) + * hisi_sas_v3_hw: internal task abort: timeout and not done. (LP: #1777736) + - scsi: hisi_sas: Update a couple of register settings for v3 hw + * hisi_sas: Add missing PHY spinlock init (LP: #1777734) + - scsi: hisi_sas: Add missing PHY spinlock init + * hisi_sas: improve read performance by pre-allocating slot DMA buffers + (LP: #1777727) + - scsi: hisi_sas: use dma_zalloc_coherent() + - scsi: hisi_sas: Use dmam_alloc_coherent() + - scsi: hisi_sas: Pre-allocate slot DMA buffers + * hisi_sas: Failures during host reset (LP: #1777696) + - scsi: hisi_sas: Only process broadcast change in phy_bcast_v3_hw() + - scsi: hisi_sas: Fix the conflict between dev gone and host reset + - scsi: hisi_sas: Adjust task reject period during host reset + - scsi: hisi_sas: Add a flag to filter PHY events during reset + - scsi: hisi_sas: Release all remaining resources in clear nexus ha + * Fake SAS addresses for SATA disks on HiSilicon D05 are non-unique + (LP: #1776750) + - scsi: hisi_sas: make SAS address of SATA disks unique + * Vcs-Git header on bionic linux source package points to zesty git tree + (LP: #1766055) + - [Packaging]: Update Vcs-Git + * large KVM instances run out of IRQ routes (LP: #1778261) + - SAUCE: kvm -- increase KVM_MAX_IRQ_ROUTES to 2048 on x86 + + -- Marcelo Henrique Cerri Tue, 03 Jul 2018 16:17:05 -0300 + +linux-azure (4.15.0-1014.14) bionic; urgency=medium + + * linux-azure: 4.15.0-1014.14 -proposed tracker (LP: #1776342) + + * [Hyper-V] Disable CONFIG_HOTPLUG_CPU in linux-azure (LP: #1776293) + - [Config] azure: CONFIG_HOTPLUG_CPU=n + + * [Hyper-V] IB/mlx5: Respect new UMR capabilities (LP: #1762554) + - IB/mlx5: Enable ECN capable bits for UD RoCE v2 QPs + - IB/mlx5: Respect new UMR capabilities + + [ Ubuntu: 4.15.0-24.26 ] + + * linux: 4.15.0-24.26 -proposed tracker (LP: #1776338) + * Bionic update: upstream stable patchset 2018-06-06 (LP: #1775483) + - drm: bridge: dw-hdmi: Fix overflow workaround for Amlogic Meson GX SoCs + - i40e: Fix attach VF to VM issue + - tpm: cmd_ready command can be issued only after granting locality + - tpm: tpm-interface: fix tpm_transmit/_cmd kdoc + - tpm: add retry logic + - Revert "ath10k: send (re)assoc peer command when NSS changed" + - bonding: do not set slave_dev npinfo before slave_enable_netpoll in + bond_enslave + - ipv6: add RTA_TABLE and RTA_PREFSRC to rtm_ipv6_policy + - ipv6: sr: fix NULL pointer dereference in seg6_do_srh_encap()- v4 pkts + - KEYS: DNS: limit the length of option strings + - l2tp: check sockaddr length in pppol2tp_connect() + - net: validate attribute sizes in neigh_dump_table() + - llc: delete timers synchronously in llc_sk_free() + - tcp: don't read out-of-bounds opsize + - net: af_packet: fix race in PACKET_{R|T}X_RING + - tcp: md5: reject TCP_MD5SIG or TCP_MD5SIG_EXT on established sockets + - net: fix deadlock while clearing neighbor proxy table + - team: avoid adding twice the same option to the event list + - net/smc: fix shutdown in state SMC_LISTEN + - team: fix netconsole setup over team + - packet: fix bitfield update race + - tipc: add policy for TIPC_NLA_NET_ADDR + - pppoe: check sockaddr length in pppoe_connect() + - vlan: Fix reading memory beyond skb->tail in skb_vlan_tagged_multi + - amd-xgbe: Add pre/post auto-negotiation phy hooks + - sctp: do not check port in sctp_inet6_cmp_addr + - amd-xgbe: Improve KR auto-negotiation and training + - strparser: Do not call mod_delayed_work with a timeout of LONG_MAX + - amd-xgbe: Only use the SFP supported transceiver signals + - strparser: Fix incorrect strp->need_bytes value. + - net: sched: ife: signal not finding metaid + - tcp: clear tp->packets_out when purging write queue + - net: sched: ife: handle malformed tlv length + - net: sched: ife: check on metadata length + - llc: hold llc_sap before release_sock() + - llc: fix NULL pointer deref for SOCK_ZAPPED + - net: ethernet: ti: cpsw: fix tx vlan priority mapping + - virtio_net: split out ctrl buffer + - virtio_net: fix adding vids on big-endian + - KVM: s390: force bp isolation for VSIE + - s390: correct module section names for expoline code revert + - microblaze: Setup dependencies for ASM optimized lib functions + - commoncap: Handle memory allocation failure. + - scsi: mptsas: Disable WRITE SAME + - cdrom: information leak in cdrom_ioctl_media_changed() + - m68k/mac: Don't remap SWIM MMIO region + - block/swim: Check drive type + - block/swim: Don't log an error message for an invalid ioctl + - block/swim: Remove extra put_disk() call from error path + - block/swim: Rename macros to avoid inconsistent inverted logic + - block/swim: Select appropriate drive on device open + - block/swim: Fix array bounds check + - block/swim: Fix IO error at end of medium + - tracing: Fix missing tab for hwlat_detector print format + - s390/cio: update chpid descriptor after resource accessibility event + - s390/dasd: fix IO error for newly defined devices + - s390/uprobes: implement arch_uretprobe_is_alive() + - ACPI / video: Only default only_lcd to true on Win8-ready _desktops_ + - docs: ip-sysctl.txt: fix name of some ipv6 variables + - net: mvpp2: Fix DMA address mask size + - net: stmmac: Disable ACS Feature for GMAC >= 4 + - l2tp: hold reference on tunnels in netlink dumps + - l2tp: hold reference on tunnels printed in pppol2tp proc file + - l2tp: hold reference on tunnels printed in l2tp/tunnels debugfs file + - l2tp: fix {pppol2tp, l2tp_dfs}_seq_stop() in case of seq_file overflow + - s390/qeth: fix error handling in adapter command callbacks + - s390/qeth: avoid control IO completion stalls + - s390/qeth: handle failure on workqueue creation + - bnxt_en: Fix memory fault in bnxt_ethtool_init() + - virtio-net: add missing virtqueue kick when flushing packets + - VSOCK: make af_vsock.ko removable again + - hwmon: (k10temp) Add temperature offset for Ryzen 2700X + - hwmon: (k10temp) Add support for AMD Ryzen w/ Vega graphics + - s390/cpum_cf: rename IBM z13/z14 counter names + - kprobes: Fix random address output of blacklist file + - Revert "pinctrl: intel: Initialize GPIO properly when used through irqchip" + * Lenovo V330 needs patch in ideapad_laptop module for rfkill (LP: #1774636) + - SAUCE: Add Lenovo V330 to the ideapad_laptop rfkill blacklist + * bluetooth controller fail after suspend with USB autosuspend on XPS 13 9360 + (LP: #1775217) + - Bluetooth: btusb: Add Dell XPS 13 9360 to btusb_needs_reset_resume_table + * [Hyper-V] PCI: hv: Fix 2 hang issues in hv_compose_msi_msg (LP: #1758378) + - PCI: hv: Only queue new work items in hv_pci_devices_present() if necessary + - PCI: hv: Remove the bogus test in hv_eject_device_work() + - PCI: hv: Fix a comment typo in _hv_pcifront_read_config() + * register on binfmt_misc may overflow and crash the system (LP: #1775856) + - fs/binfmt_misc.c: do not allow offset overflow + * CVE-2018-11508 + - compat: fix 4-byte infoleak via uninitialized struct field + * Network installs fail on SocioNext board (LP: #1775884) + - net: netsec: reduce DMA mask to 40 bits + - net: socionext: reset hardware in ndo_stop + - net: netsec: enable tx-irq during open callback + * r8169 ethernet card don't work after returning from suspension + (LP: #1752772) + - PCI: Add pcim_set_mwi(), a device-managed pci_set_mwi() + - r8169: switch to device-managed functions in probe + - r8169: remove netif_napi_del in probe error path + - r8169: remove some WOL-related dead code + - r8169: disable WOL per default + - r8169: improve interrupt handling + - r8169: fix interrupt number after adding support for MSI-X interrupts + * ISST-LTE:KVM:Ubuntu18.04:BostonLC:boslcp3:boslcp3g3:Guest conosle hangs + after hotplug CPU add operation. (LP: #1759723) + - genirq/affinity: assign vectors to all possible CPUs + - genirq/affinity: Don't return with empty affinity masks on error + - genirq/affinity: Rename *node_to_possible_cpumask as *node_to_cpumask + - genirq/affinity: Move actual irq vector spreading into a helper function + - genirq/affinity: Allow irq spreading from a given starting point + - genirq/affinity: Spread irq vectors among present CPUs as far as possible + - blk-mq: simplify queue mapping & schedule with each possisble CPU + - blk-mq: make sure hctx->next_cpu is set correctly + - blk-mq: Avoid that blk_mq_delay_run_hw_queue() introduces unintended delays + - blk-mq: make sure that correct hctx->next_cpu is set + - blk-mq: avoid to write intermediate result to hctx->next_cpu + - blk-mq: introduce blk_mq_hw_queue_first_cpu() to figure out first cpu + - blk-mq: don't check queue mapped in __blk_mq_delay_run_hw_queue() + - nvme: pci: pass max vectors as num_possible_cpus() to pci_alloc_irq_vectors + - scsi: hpsa: fix selection of reply queue + - scsi: megaraid_sas: fix selection of reply queue + - scsi: core: introduce force_blk_mq + - scsi: virtio_scsi: fix IO hang caused by automatic irq vector affinity + - scsi: virtio_scsi: unify scsi_host_template + * Fix several bugs in RDMA/hns driver (LP: #1770974) + - RDMA/hns: Use structs to describe the uABI instead of opencoding + - RDMA/hns: Remove unnecessary platform_get_resource() error check + - RDMA/hns: Remove unnecessary operator + - RDMA/hns: Add names to function arguments in function pointers + - RDMA/hns: Fix misplaced call to hns_roce_cleanup_hem_table + - RDMA/hns: Fix a bug with modifying mac address + - RDMA/hns: Use free_pages function instead of free_page + - RDMA/hns: Replace __raw_write*(cpu_to_le*()) with LE write*() + - RDMA/hns: Bugfix for init hem table + - RDMA/hns: Intercept illegal RDMA operation when use inline data + - RDMA/hns: Fix the qp context state diagram + - RDMA/hns: Only assign mtu if IB_QP_PATH_MTU bit is set + - RDMA/hns: Remove some unnecessary attr_mask judgement + - RDMA/hns: Only assign dqpn if IB_QP_PATH_DEST_QPN bit is set + - RDMA/hns: Adjust the order of cleanup hem table + - RDMA/hns: Update assignment method for owner field of send wqe + - RDMA/hns: Submit bad wr + - RDMA/hns: Fix a couple misspellings + - RDMA/hns: Add rq inline flags judgement + - RDMA/hns: Bugfix for rq record db for kernel + - RDMA/hns: Load the RoCE dirver automatically + - RDMA/hns: Update convert function of endian format + - RDMA/hns: Add return operation when configured global param fail + - RDMA/hns: Not support qp transition from reset to reset for hip06 + - RDMA/hns: Fix the bug with rq sge + - RDMA/hns: Set desc_dma_addr for zero when free cmq desc + - RDMA/hns: Enable inner_pa_vld filed of mpt + - RDMA/hns: Set NULL for __internal_mr + - RDMA/hns: Fix the bug with NULL pointer + - RDMA/hns: Bugfix for cq record db for kernel + - RDMA/hns: Move the location for initializing tmp_len + - RDMA/hns: Drop local zgid in favor of core defined variable + - RDMA/hns: Add 64KB page size support for hip08 + - RDMA/hns: Rename the idx field of db + - RDMA/hns: Modify uar allocation algorithm to avoid bitmap exhaust + - RDMA/hns: Increase checking CMQ status timeout value + - RDMA/hns: Add reset process for RoCE in hip08 + - RDMA/hns: Fix the illegal memory operation when cross page + - RDMA/hns: Implement the disassociate_ucontext API + * powerpc/livepatch: Implement reliable stack tracing for the consistency + model (LP: #1771844) + - powerpc/livepatch: Implement reliable stack tracing for the consistency + model + * vmxnet3: update to latest ToT (LP: #1768143) + - vmxnet3: avoid xmit reset due to a race in vmxnet3 + - vmxnet3: use correct flag to indicate LRO feature + - vmxnet3: fix incorrect dereference when rxvlan is disabled + * 4.15.0-22-generic fails to boot on IBM S822LC (POWER8 (raw), altivec + supported) (LP: #1773162) + - Revert "powerpc/64s: Add support for a store forwarding barrier at kernel + entry/exit" + - powerpc/64s: Add support for a store forwarding barrier at kernel entry/exit + * Decode ARM CPER records in kernel (LP: #1770244) + - [Config] CONFIG_UEFI_CPER_ARM=y + - efi: Move ARM CPER code to new file + - efi: Parse ARM error information value + * Adding back alx WoL feature (LP: #1772610) + - SAUCE: Revert "alx: remove WoL support" + - SAUCE: alx: add enable_wol paramenter + * Lancer A0 Asic HBA's won't boot with 18.04 (LP: #1768103) + - scsi: lpfc: Fix WQ/CQ creation for older asic's. + - scsi: lpfc: Fix 16gb hbas failing cq create. + * [LTCTest][OPAL][OP920] cpupower idle-info is not listing stop4 and stop5 + idle states when all CORES are guarded (LP: #1771780) + - SAUCE: cpuidle/powernv : init all present cpus for deep states + * Huawei 25G/100G Network Adapters Unsupported (LP: #1770970) + - net-next/hinic: add pci device ids for 25ge and 100ge card + * [Ubuntu 18.04.1] POWER9 - Nvidia Volta - Kernel changes to enable Nvidia + driver on bare metal (LP: #1772991) + - powerpc/powernv/npu: Fix deadlock in mmio_invalidate() + - powerpc/powernv/mce: Don't silently restart the machine + - powerpc/npu-dma.c: Fix crash after __mmu_notifier_register failure + - powerpc/mm: Flush cache on memory hot(un)plug + - powerpc/powernv/memtrace: Let the arch hotunplug code flush cache + - powerpc/powernv/npu: Add lock to prevent race in concurrent context + init/destroy + - powerpc/powernv/npu: Prevent overwriting of pnv_npu2_init_contex() callback + parameters + - powerpc/powernv/npu: Do a PID GPU TLB flush when invalidating a large + address range + - powerpc/mce: Fix a bug where mce loops on memory UE. + * cpum_sf: ensure sample freq is non-zero (LP: #1772593) + - s390/cpum_sf: ensure sample frequency of perf event attributes is non-zero + * PCIe link speeds of 16 GT/s are shown as "Unknown speed" (LP: #1773243) + - PCI: Add decoding for 16 GT/s link speed + * False positive ACPI _PRS error messages (LP: #1773295) + - ACPI / PCI: pci_link: Allow the absence of _PRS and change log level + * Dell systems crash when disabling Nvidia dGPU (LP: #1773299) + - ACPI / OSI: Add OEM _OSI strings to disable NVidia RTD3 + * wlp3s0: failed to remove key (1, ff:ff:ff:ff:ff:ff) from hardware (-22) + (LP: #1720930) + - iwlwifi: mvm: fix "failed to remove key" message + * Expose arm64 CPU topology to userspace (LP: #1770231) + - ACPICA: ACPI 6.2: Additional PPTT flags + - drivers: base: cacheinfo: move cache_setup_of_node() + - drivers: base: cacheinfo: setup DT cache properties early + - cacheinfo: rename of_node to fw_token + - arm64/acpi: Create arch specific cpu to acpi id helper + - ACPI/PPTT: Add Processor Properties Topology Table parsing + - [Config] CONFIG_ACPI_PPTT=y + - ACPI: Enable PPTT support on ARM64 + - drivers: base cacheinfo: Add support for ACPI based firmware tables + - arm64: Add support for ACPI based firmware tables + - arm64: topology: rename cluster_id + - arm64: topology: enable ACPI/PPTT based CPU topology + - ACPI: Add PPTT to injectable table list + - arm64: topology: divorce MC scheduling domain from core_siblings + * hisi_sas robustness fixes (LP: #1774466) + - scsi: hisi_sas: delete timer when removing hisi_sas driver + - scsi: hisi_sas: print device id for errors + - scsi: hisi_sas: Add some checks to avoid free'ing a sas_task twice + - scsi: hisi_sas: check host frozen before calling "done" function + - scsi: hisi_sas: check sas_dev gone earlier in hisi_sas_abort_task() + - scsi: hisi_sas: stop controller timer for reset + - scsi: hisi_sas: update PHY linkrate after a controller reset + - scsi: hisi_sas: change slot index allocation mode + - scsi: hisi_sas: Change common allocation mode of device id + - scsi: hisi_sas: Reset disks when discovered + - scsi: hisi_sas: Create a scsi_host_template per HW module + - scsi: hisi_sas: Init disks after controller reset + - scsi: hisi_sas: Try wait commands before before controller reset + - scsi: hisi_sas: Include TMF elements in struct hisi_sas_slot + - scsi: hisi_sas: Add v2 hw force PHY function for internal ATA command + - scsi: hisi_sas: Terminate STP reject quickly for v2 hw + - scsi: hisi_sas: Fix return value when get_free_slot() failed + - scsi: hisi_sas: Mark PHY as in reset for nexus reset + * hisi_sas: Support newer v3 hardware (LP: #1774467) + - scsi: hisi_sas: update RAS feature for later revision of v3 HW + - scsi: hisi_sas: check IPTT is valid before using it for v3 hw + - scsi: hisi_sas: fix PI memory size + - scsi: hisi_sas: config ATA de-reset as an constrained command for v3 hw + - scsi: hisi_sas: remove redundant handling to event95 for v3 + - scsi: hisi_sas: add readl poll timeout helper wrappers + - scsi: hisi_sas: workaround a v3 hw hilink bug + - scsi: hisi_sas: Add LED feature for v3 hw + * hisi_sas: improve performance by optimizing DQ locking (LP: #1774472) + - scsi: hisi_sas: initialize dq spinlock before use + - scsi: hisi_sas: optimise the usage of DQ locking + - scsi: hisi_sas: relocate smp sg map + - scsi: hisi_sas: make return type of prep functions void + - scsi: hisi_sas: allocate slot buffer earlier + - scsi: hisi_sas: Don't lock DQ for complete task sending + - scsi: hisi_sas: Use device lock to protect slot alloc/free + - scsi: hisi_sas: add check of device in hisi_sas_task_exec() + - scsi: hisi_sas: fix a typo in hisi_sas_task_prep() + * Request to revert SAUCE patches in the 18.04 SRU and update with upstream + version (LP: #1768431) + - scsi: cxlflash: Handle spurious interrupts + - scsi: cxlflash: Remove commmands from pending list on timeout + - scsi: cxlflash: Synchronize reset and remove ops + - SAUCE: (no-up) cxlflash: OCXL diff between v2 and v3 + * After update to 4.13-43 Intel Graphics are Laggy (LP: #1773520) + - SAUCE: Revert "drm/i915/edp: Allow alternate fixed mode for eDP if + available." + * ELANPAD ELAN0612 does not work, patch available (LP: #1773509) + - SAUCE: Input: elan_i2c - add ELAN0612 to the ACPI table + * FS-Cache: Assertion failed: FS-Cache: 6 == 5 is false (LP: #1774336) + - SAUCE: CacheFiles: fix a read_waiter/read_copier race + * hns3 driver updates (LP: #1768670) + - net: hns3: VF should get the real rss_size instead of rss_size_max + - net: hns3: set the cmdq out_vld bit to 0 after used + - net: hns3: fix endian issue when PF get mbx message flag + - net: hns3: fix the queue id for tqp enable&&reset + - net: hns3: set the max ring num when alloc netdev + - net: hns3: add support for VF driver inner interface + hclgevf_ops.get_tqps_and_rss_info + - net: hns3: refactor the hclge_get/set_rss function + - net: hns3: refactor the hclge_get/set_rss_tuple function + - net: hns3: fix for RSS configuration loss problem during reset + - net: hns3: fix for pause configuration lost during reset + - net: hns3: fix for use-after-free when setting ring parameter + - net: hns3: refactor the get/put_vector function + - net: hns3: fix for coalesce configuration lost during reset + - net: hns3: refactor the coalesce related struct + - net: hns3: fix for coal configuation lost when setting the channel + - net: hns3: add existence check when remove old uc mac address + - net: hns3: fix for netdev not running problem after calling net_stop and + net_open + - net: hns3: fix for ipv6 address loss problem after setting channels + - net: hns3: unify the pause params setup function + - net: hns3: fix rx path skb->truesize reporting bug + - net: hns3: add support for querying pfc puase packets statistic + - net: hns3: fix for loopback failure when vlan filter is enable + - net: hns3: fix for buffer overflow smatch warning + - net: hns3: fix error type definition of return value + - net: hns3: fix return value error of hclge_get_mac_vlan_cmd_status() + - net: hns3: add existence checking before adding unicast mac address + - net: hns3: add result checking for VF when modify unicast mac address + - net: hns3: reallocate tx/rx buffer after changing mtu + - net: hns3: fix the VF queue reset flow error + - net: hns3: fix for vlan table lost problem when resetting + - net: hns3: increase the max time for IMP handle command + - net: hns3: change GL update rate + - net: hns3: change the time interval of int_gl calculating + - net: hns3: fix for getting wrong link mode problem + - net: hns3: add get_link support to VF + - net: hns3: add querying speed and duplex support to VF + - net: hns3: fix for not returning problem in get_link_ksettings when phy + exists + - net: hns3: Changes to make enet watchdog timeout func common for PF/VF + - net: hns3: Add VF Reset Service Task to support event handling + - net: hns3: Add VF Reset device state and its handling + - net: hns3: Add support to request VF Reset to PF + - net: hns3: Add support to reset the enet/ring mgmt layer + - net: hns3: Add support to re-initialize the hclge device + - net: hns3: Changes to support ARQ(Asynchronous Receive Queue) + - net: hns3: Add *Asserting Reset* mailbox message & handling in VF + - net: hns3: Changes required in PF mailbox to support VF reset + - net: hns3: hclge_inform_reset_assert_to_vf() can be static + - net: hns3: fix for returning wrong value problem in hns3_get_rss_key_size + - net: hns3: fix for returning wrong value problem in hns3_get_rss_indir_size + - net: hns3: fix for the wrong shift problem in hns3_set_txbd_baseinfo + - net: hns3: fix for not initializing VF rss_hash_key problem + - net: hns3: never send command queue message to IMP when reset + - net: hns3: remove unnecessary pci_set_drvdata() and devm_kfree() + - net: hns3: fix length overflow when CONFIG_ARM64_64K_PAGES + - net: hns3: Remove error log when getting pfc stats fails + - net: hns3: fix to correctly fetch l4 protocol outer header + - net: hns3: Fixes the out of bounds access in hclge_map_tqp + - net: hns3: Fixes the error legs in hclge_init_ae_dev function + - net: hns3: fix for phy_addr error in hclge_mac_mdio_config + - net: hns3: Fix to support autoneg only for port attached with phy + - net: hns3: fix a dead loop in hclge_cmd_csq_clean + - net: hns3: Fix for packet loss due wrong filter config in VLAN tbls + - net: hns3: Remove packet statistics in the range of 8192~12287 + - net: hns3: Add support of hardware rx-vlan-offload to HNS3 VF driver + - net: hns3: Fix for setting mac address when resetting + - net: hns3: remove add/del_tunnel_udp in hns3_enet module + - net: hns3: fix for cleaning ring problem + - net: hns3: refactor the loopback related function + - net: hns3: Fix for deadlock problem occurring when unregistering ae_algo + - net: hns3: Fix for the null pointer problem occurring when initializing + ae_dev failed + - net: hns3: Add a check for client instance init state + - net: hns3: Change return type of hnae3_register_ae_dev + - net: hns3: Change return type of hnae3_register_ae_algo + - net: hns3: Change return value in hnae3_register_client + - net: hns3: Fixes the back pressure setting when sriov is enabled + - net: hns3: Fix for fiber link up problem + - net: hns3: Add support of .sriov_configure in HNS3 driver + - net: hns3: Fixes the missing PCI iounmap for various legs + - net: hns3: Fixes error reported by Kbuild and internal review + - net: hns3: Fixes API to fetch ethernet header length with kernel default + - net: hns3: cleanup of return values in hclge_init_client_instance() + - net: hns3: Fix the missing client list node initialization + - net: hns3: Fix for hns3 module is loaded multiple times problem + - net: hns3: Use enums instead of magic number in hclge_is_special_opcode + - net: hns3: Fix for netdev not running problem after calling net_stop and + net_open + - net: hns3: Fixes kernel panic issue during rmmod hns3 driver + - net: hns3: Fix for CMDQ and Misc. interrupt init order problem + - net: hns3: Updates RX packet info fetch in case of multi BD + - net: hns3: Add support for tx_accept_tag2 and tx_accept_untag2 config + - net: hns3: Add STRP_TAGP field support for hardware revision 0x21 + - net: hns3: Add support to enable TX/RX promisc mode for H/W rev(0x21) + - net: hns3: Fix for PF mailbox receving unknown message + - net: hns3: Fixes the state to indicate client-type initialization + - net: hns3: Fixes the init of the VALID BD info in the descriptor + - net: hns3: Removes unnecessary check when clearing TX/RX rings + - net: hns3: Clear TX/RX rings when stopping port & un-initializing client + - net: hns3: Remove unused led control code + - net: hns3: Adds support for led locate command for copper port + - net: hns3: Fixes initalization of RoCE handle and makes it conditional + - net: hns3: Disable vf vlan filter when vf vlan table is full + - net: hns3: Add support for IFF_ALLMULTI flag + - net: hns3: Add repeat address checking for setting mac address + - net: hns3: Fix setting mac address error + - net: hns3: Fix for service_task not running problem after resetting + - net: hns3: Fix for hclge_reset running repeatly problem + - net: hns3: Fix for phy not link up problem after resetting + - net: hns3: Add missing break in misc_irq_handle + - net: hns3: Fix for vxlan tx checksum bug + - net: hns3: Optimize the PF's process of updating multicast MAC + - net: hns3: Optimize the VF's process of updating multicast MAC + - SAUCE: {topost} net: hns3: add support for serdes loopback selftest + - SAUCE: {topost} net: hns3: RX BD information valid only in last BD except + VLD bit and buffer size + - SAUCE: {topost} net: hns3: remove hclge_get_vector_index from + hclge_bind_ring_with_vector + - SAUCE: {topost} net: hns3: rename the interface for init_client_instance and + uninit_client_instance + - SAUCE: {topost} net: hns3: add vector status check before free vector + - SAUCE: {topost} net: hns3: add l4_type check for both ipv4 and ipv6 + - SAUCE: {topost} net: hns3: remove unused head file in hnae3.c + - SAUCE: {topost} net: hns3: extraction an interface for state state + init|uninit + - SAUCE: {topost} net: hns3: print the ret value in error information + - SAUCE: {topost} net: hns3: remove the Redundant put_vector in + hns3_client_uninit + - SAUCE: {topost} net: hns3: add unlikely for error check + - SAUCE: {topost} net: hns3: remove back in struct hclge_hw + - SAUCE: {topost} net: hns3: use lower_32_bits and upper_32_bits + - SAUCE: {topost} net: hns3: remove unused hclge_ring_to_dma_dir + - SAUCE: {topost} net: hns3: remove useless code in hclge_cmd_send + - SAUCE: {topost} net: hns3: remove some redundant assignments + - SAUCE: {topost} net: hns3: simplify hclge_cmd_csq_clean + - SAUCE: {topost} net: hns3: using modulo for cyclic counters in + hclge_cmd_send + - SAUCE: {topost} net: hns3: remove a redundant hclge_cmd_csq_done + - SAUCE: {topost} net: hns3: remove some unused members of some structures + - SAUCE: {topost} net: hns3: give default option while dependency HNS3 set + - SAUCE: {topost} net: hns3: use dma_zalloc_coherent instead of + kzalloc/dma_map_single + - SAUCE: {topost} net: hns3: modify hnae_ to hnae3_ + - SAUCE: {topost} net: hns3: fix unused function warning in VF driver + - SAUCE: {topost} net: hns3: remove some redundant assignments + - SAUCE: {topost} net: hns3: standardize the handle of return value + - SAUCE: {topost} net: hns3: remove extra space and brackets + - SAUCE: {topost} net: hns3: fix unreasonable code comments + - SAUCE: {topost} net: hns3: use decimal for bit offset macros + - SAUCE: {topost} net: hns3: modify inconsistent bit mask macros + - SAUCE: {topost} net: hns3: fix mislead parameter name + - SAUCE: {topost} net: hns3: remove unused struct member and definition + - SAUCE: {topost} net: hns3: Add SPDX tags to hns3 driver + - SAUCE: {topost} net: hns3: Add pf reset for hip08 RoCE + - SAUCE: {topost} net: hns3: optimize the process of notifying roce client + - SAUCE: {topost} net: hns3: Add calling roce callback function when link + status change + - SAUCE: {topost} net: hns3: fix tc setup when netdev is first up + - SAUCE: {topost} net: hns3: fix for mac pause not disable in pfc mode + - SAUCE: {topost} net: hns3: fix for waterline not setting correctly + - SAUCE: {topost} net: hns3: fix for l4 checksum offload bug + - SAUCE: {topost} net: hns3: fix for mailbox message truncated problem + - SAUCE: {topost} net: hns3: Add configure for mac minimal frame size + - SAUCE: {topost} net: hns3: fix warning bug when doing lp selftest + - SAUCE: {topost} net: hns3: fix get_vector ops in hclgevf_main module + - SAUCE: {topost} net: hns3: remove the warning when clear reset cause + - SAUCE: {topost} net: hns3: Use roce handle when calling roce callback + function + - SAUCE: {topost} net: hns3: prevent sending command during global or core + reset + - SAUCE: {topost} net: hns3: modify the order of initializeing command queue + register + - SAUCE: {topost} net: hns3: reset net device with rtnl_lock + - SAUCE: {topost} net: hns3: prevent to request reset frequently + - SAUCE: {topost} net: hns3: correct reset event status register + - SAUCE: {topost} net: hns3: separate roce from nic when resetting + - SAUCE: net: hns3: Fix for phy link issue when using marvell phy driver + - SAUCE: {topost} net: hns3: fix return value error in + hns3_reset_notify_down_enet + - SAUCE: {topost} net: hns3: remove unnecessary ring configuration operation + while resetting + - SAUCE: {topost} net: hns3: fix for reset_level default assignment probelm + - SAUCE: {topost} net: hns3: fix for using wrong mask and shift in + hclge_get_ring_chain_from_mbx + - SAUCE: {topost} net: hns3: fix comments for hclge_get_ring_chain_from_mbx + - SAUCE: net: hns3: Fix for VF mailbox cannot receiving PF response + - SAUCE: net: hns3: Fix for VF mailbox receiving unknown message + - SAUCE: net: hns3: Optimize PF CMDQ interrupt switching process + * enable mic-mute hotkey and led on Lenovo M820z and M920z (LP: #1774306) + - ALSA: hda/realtek - Enable mic-mute hotkey for several Lenovo AIOs + * Bionic update: upstream stable patchset 2018-05-29 (LP: #1774063) + - cifs: do not allow creating sockets except with SMB1 posix exensions + - btrfs: fix unaligned access in readdir + - x86/acpi: Prevent X2APIC id 0xffffffff from being accounted + - clocksource/imx-tpm: Correct -ETIME return condition check + - x86/tsc: Prevent 32bit truncation in calc_hpet_ref() + - drm/vc4: Fix memory leak during BO teardown + - drm/i915/gvt: throw error on unhandled vfio ioctls + - drm/i915/audio: Fix audio detection issue on GLK + - drm/i915: Do no use kfree() to free a kmem_cache_alloc() return value + - drm/i915: Fix LSPCON TMDS output buffer enabling from low-power state + - drm/i915/bxt, glk: Increase PCODE timeouts during CDCLK freq changing + - usb: musb: fix enumeration after resume + - usb: musb: call pm_runtime_{get,put}_sync before reading vbus registers + - usb: musb: Fix external abort in musb_remove on omap2430 + - firewire-ohci: work around oversized DMA reads on JMicron controllers + - x86/tsc: Allow TSC calibration without PIT + - NFSv4: always set NFS_LOCK_LOST when a lock is lost. + - ACPI / LPSS: Do not instiate platform_dev for devs without MMIO resources + - ALSA: hda - Use IS_REACHABLE() for dependency on input + - ASoC: au1x: Fix timeout tests in au1xac97c_ac97_read() + - kvm: x86: fix KVM_XEN_HVM_CONFIG ioctl + - RDMA/core: Clarify rdma_ah_find_type + - KVM: PPC: Book3S HV: Enable migration of decrementer register + - netfilter: ipv6: nf_defrag: Pass on packets to stack per RFC2460 + - tracing/hrtimer: Fix tracing bugs by taking all clock bases and modes into + account + - KVM: s390: use created_vcpus in more places + - platform/x86: dell-laptop: Filter out spurious keyboard backlight change + events + - xprtrdma: Fix backchannel allocation of extra rpcrdma_reps + - selftest: ftrace: Fix to pick text symbols for kprobes + - PCI: Add function 1 DMA alias quirk for Marvell 9128 + - Input: psmouse - fix Synaptics detection when protocol is disabled + - libbpf: Makefile set specified permission mode + - Input: synaptics - reset the ABS_X/Y fuzz after initializing MT axes + - i40iw: Free IEQ resources + - i40iw: Zero-out consumer key on allocate stag for FMR + - perf unwind: Do not look just at the global callchain_param.record_mode + - tools lib traceevent: Simplify pointer print logic and fix %pF + - perf callchain: Fix attr.sample_max_stack setting + - tools lib traceevent: Fix get_field_str() for dynamic strings + - perf record: Fix failed memory allocation for get_cpuid_str + - iommu/exynos: Don't unconditionally steal bus ops + - powerpc: System reset avoid interleaving oops using die synchronisation + - iommu/vt-d: Use domain instead of cache fetching + - dm thin: fix documentation relative to low water mark threshold + - dm mpath: return DM_MAPIO_REQUEUE on blk-mq rq allocation failure + - ubifs: Fix uninitialized variable in search_dh_cookie() + - net: stmmac: dwmac-meson8b: fix setting the RGMII TX clock on Meson8b + - net: stmmac: dwmac-meson8b: propagate rate changes to the parent clock + - spi: a3700: Clear DATA_OUT when performing a read + - IB/cq: Don't force IB_POLL_DIRECT poll context for ib_process_cq_direct + - nfs: Do not convert nfs_idmap_cache_timeout to jiffies + - MIPS: Fix clean of vmlinuz.{32,ecoff,bin,srec} + - PCI: Add dummy pci_irqd_intx_xlate() for CONFIG_PCI=n build + - watchdog: sp5100_tco: Fix watchdog disable bit + - kconfig: Don't leak main menus during parsing + - kconfig: Fix automatic menu creation mem leak + - kconfig: Fix expr_free() E_NOT leak + - ipmi/powernv: Fix error return code in ipmi_powernv_probe() + - Btrfs: set plug for fsync + - btrfs: Fix out of bounds access in btrfs_search_slot + - Btrfs: fix scrub to repair raid6 corruption + - btrfs: fail mount when sb flag is not in BTRFS_SUPER_FLAG_SUPP + - Btrfs: fix unexpected EEXIST from btrfs_get_extent + - Btrfs: raid56: fix race between merge_bio and rbio_orig_end_io + - RDMA/cma: Check existence of netdevice during port validation + - f2fs: avoid hungtask when GC encrypted block if io_bits is set + - scsi: devinfo: fix format of the device list + - scsi: fas216: fix sense buffer initialization + - Input: stmfts - set IRQ_NOAUTOEN to the irq flag + - HID: roccat: prevent an out of bounds read in kovaplus_profile_activated() + - nfp: fix error return code in nfp_pci_probe() + - block: Set BIO_TRACE_COMPLETION on new bio during split + - bpf: test_maps: cleanup sockmaps when test ends + - i40evf: Don't schedule reset_task when device is being removed + - i40evf: ignore link up if not running + - platform/x86: thinkpad_acpi: suppress warning about palm detection + - KVM: s390: vsie: use READ_ONCE to access some SCB fields + - blk-mq-debugfs: don't allow write on attributes with seq_operations set + - ASoC: rockchip: Use dummy_dai for rt5514 dsp dailink + - igb: Allow to remove administratively set MAC on VFs + - igb: Clear TXSTMP when ptp_tx_work() is timeout + - fm10k: fix "failed to kill vid" message for VF + - x86/hyperv: Stop suppressing X86_FEATURE_PCID + - tty: serial: exar: Relocate sleep wake-up handling + - device property: Define type of PROPERTY_ENRTY_*() macros + - crypto: artpec6 - remove select on non-existing CRYPTO_SHA384 + - RDMA/uverbs: Use an unambiguous errno for method not supported + - jffs2: Fix use-after-free bug in jffs2_iget()'s error handling path + - ixgbe: don't set RXDCTL.RLPML for 82599 + - i40e: program fragmented IPv4 filter input set + - i40e: fix reported mask for ntuple filters + - samples/bpf: Partially fixes the bpf.o build + - powerpc/numa: Use ibm,max-associativity-domains to discover possible nodes + - powerpc/numa: Ensure nodes initialized for hotplug + - RDMA/mlx5: Avoid memory leak in case of XRCD dealloc failure + - ntb_transport: Fix bug with max_mw_size parameter + - gianfar: prevent integer wrapping in the rx handler + - x86/hyperv: Check for required priviliges in hyperv_init() + - netfilter: x_tables: fix pointer leaks to userspace + - tcp_nv: fix potential integer overflow in tcpnv_acked + - kvm: Map PFN-type memory regions as writable (if possible) + - x86/kvm/vmx: do not use vm-exit instruction length for fast MMIO when + running nested + - fs/dax.c: release PMD lock even when there is no PMD support in DAX + - ocfs2: return -EROFS to mount.ocfs2 if inode block is invalid + - ocfs2/acl: use 'ip_xattr_sem' to protect getting extended attribute + - ocfs2: return error when we attempt to access a dirty bh in jbd2 + - mm/mempolicy: fix the check of nodemask from user + - mm/mempolicy: add nodes_empty check in SYSC_migrate_pages + - asm-generic: provide generic_pmdp_establish() + - sparc64: update pmdp_invalidate() to return old pmd value + - mm: thp: use down_read_trylock() in khugepaged to avoid long block + - mm: pin address_space before dereferencing it while isolating an LRU page + - mm/fadvise: discard partial page if endbyte is also EOF + - openvswitch: Remove padding from packet before L3+ conntrack processing + - blk-mq: fix discard merge with scheduler attached + - IB/hfi1: Re-order IRQ cleanup to address driver cleanup race + - IB/hfi1: Fix for potential refcount leak in hfi1_open_file() + - IB/ipoib: Fix for potential no-carrier state + - IB/core: Map iWarp AH type to undefined in rdma_ah_find_type + - drm/nouveau/pmu/fuc: don't use movw directly anymore + - s390/eadm: fix CONFIG_BLOCK include dependency + - netfilter: ipv6: nf_defrag: Kill frag queue on RFC2460 failure + - x86/power: Fix swsusp_arch_resume prototype + - x86/dumpstack: Avoid uninitlized variable + - firmware: dmi_scan: Fix handling of empty DMI strings + - ACPI: processor_perflib: Do not send _PPC change notification if not ready + - ACPI / bus: Do not call _STA on battery devices with unmet dependencies + - ACPI / scan: Use acpi_bus_get_status() to initialize ACPI_TYPE_DEVICE devs + - MIPS: TXx9: use IS_BUILTIN() for CONFIG_LEDS_CLASS + - perf record: Fix period option handling + - MIPS: Generic: Support GIC in EIC mode + - perf evsel: Fix period/freq terms setup + - xen-netfront: Fix race between device setup and open + - xen/grant-table: Use put_page instead of free_page + - bpf: sockmap, fix leaking maps with attached but not detached progs + - RDS: IB: Fix null pointer issue + - arm64: spinlock: Fix theoretical trylock() A-B-A with LSE atomics + - proc: fix /proc/*/map_files lookup + - PM / domains: Fix up domain-idle-states OF parsing + - cifs: silence compiler warnings showing up with gcc-8.0.0 + - bcache: properly set task state in bch_writeback_thread() + - bcache: fix for allocator and register thread race + - bcache: fix for data collapse after re-attaching an attached device + - bcache: return attach error when no cache set exist + - cpufreq: intel_pstate: Enable HWP during system resume on CPU0 + - selftests/ftrace: Add some missing glob checks + - rxrpc: Don't put crypto buffers on the stack + - svcrdma: Fix Read chunk round-up + - net: Extra '_get' in declaration of arch_get_platform_mac_address + - tools/libbpf: handle issues with bpf ELF objects containing .eh_frames + - SUNRPC: Don't call __UDPX_INC_STATS() from a preemptible context + - net: stmmac: discard disabled flags in interrupt status register + - bpf: fix rlimit in reuseport net selftest + - ACPI / EC: Restore polling during noirq suspend/resume phases + - PM / wakeirq: Fix unbalanced IRQ enable for wakeirq + - vfs/proc/kcore, x86/mm/kcore: Fix SMAP fault when dumping vsyscall user page + - powerpc/mm/hash64: Zero PGD pages on allocation + - x86/platform/UV: Fix GAM Range Table entries less than 1GB + - locking/qspinlock: Ensure node->count is updated before initialising node + - powerpc/powernv: IMC fix out of bounds memory access at shutdown + - perf test: Fix test trace+probe_libc_inet_pton.sh for s390x + - irqchip/gic-v3: Ignore disabled ITS nodes + - cpumask: Make for_each_cpu_wrap() available on UP as well + - irqchip/gic-v3: Change pr_debug message to pr_devel + - RDMA/core: Reduce poll batch for direct cq polling + - alarmtimer: Init nanosleep alarm timer on stack + - netfilter: x_tables: cap allocations at 512 mbyte + - netfilter: x_tables: add counters allocation wrapper + - netfilter: compat: prepare xt_compat_init_offsets to return errors + - netfilter: compat: reject huge allocation requests + - netfilter: x_tables: limit allocation requests for blob rule heads + - perf: Fix sample_max_stack maximum check + - perf: Return proper values for user stack errors + - RDMA/mlx5: Fix NULL dereference while accessing XRC_TGT QPs + - Revert "KVM: X86: Fix SMRAM accessing even if VM is shutdown" + - mac80211_hwsim: fix use-after-free bug in hwsim_exit_net + - btrfs: Fix race condition between delayed refs and blockgroup removal + - mm,vmscan: Allow preallocating memory for register_shrinker(). + * Bionic update: upstream stable patchset 2018-05-24 (LP: #1773233) + - tty: make n_tty_read() always abort if hangup is in progress + - cpufreq: CPPC: Use transition_delay_us depending transition_latency + - ubifs: Check ubifs_wbuf_sync() return code + - ubi: fastmap: Don't flush fastmap work on detach + - ubi: Fix error for write access + - ubi: Reject MLC NAND + - mm/ksm.c: fix inconsistent accounting of zero pages + - mm/hmm: hmm_pfns_bad() was accessing wrong struct + - task_struct: only use anon struct under randstruct plugin + - fs/reiserfs/journal.c: add missing resierfs_warning() arg + - resource: fix integer overflow at reallocation + - ipc/shm: fix use-after-free of shm file via remap_file_pages() + - mm, slab: reschedule cache_reap() on the same CPU + - usb: musb: gadget: misplaced out of bounds check + - phy: allwinner: sun4i-usb: poll vbus changes on A23/A33 when driving VBUS + - usb: gadget: udc: core: update usb_ep_queue() documentation + - ARM64: dts: meson: reduce odroid-c2 eMMC maximum rate + - KVM: arm/arm64: vgic-its: Fix potential overrun in vgic_copy_lpi_list + - ARM: EXYNOS: Fix coupled CPU idle freeze on Exynos4210 + - arm: dts: mt7623: fix USB initialization fails on bananapi-r2 + - ARM: dts: at91: at91sam9g25: fix mux-mask pinctrl property + - ARM: dts: exynos: Fix IOMMU support for GScaler devices on Exynos5250 + - ARM: dts: at91: sama5d4: fix pinctrl compatible string + - spi: atmel: init FIFOs before spi enable + - spi: Fix scatterlist elements size in spi_map_buf + - spi: Fix unregistration of controller with fixed SPI bus number + - media: atomisp_fops.c: disable atomisp_compat_ioctl32 + - media: vivid: check if the cec_adapter is valid + - media: vsp1: Fix BRx conditional path in WPF + - x86/xen: Delay get_cpu_cap until stack canary is established + - regmap: Fix reversed bounds check in regmap_raw_write() + - ACPI / video: Add quirk to force acpi-video backlight on Samsung 670Z5E + - ACPI / hotplug / PCI: Check presence of slot itself in get_slot_status() + - USB: gadget: f_midi: fixing a possible double-free in f_midi + - USB:fix USB3 devices behind USB3 hubs not resuming at hibernate thaw + - usb: dwc3: prevent setting PRTCAP to OTG from debugfs + - usb: dwc3: pci: Properly cleanup resource + - usb: dwc3: gadget: never call ->complete() from ->ep_queue() + - cifs: fix memory leak in SMB2_open() + - fix smb3-encryption breakage when CONFIG_DEBUG_SG=y + - smb3: Fix root directory when server returns inode number of zero + - HID: i2c-hid: fix size check and type usage + - i2c: i801: Save register SMBSLVCMD value only once + - i2c: i801: Restore configuration at shutdown + - CIFS: refactor crypto shash/sdesc allocation&free + - CIFS: add sha512 secmech + - CIFS: fix sha512 check in cifs_crypto_secmech_release + - powerpc/64s: Fix dt_cpu_ftrs to have restore_cpu clear unwanted LPCR bits + - powerpc/64: Call H_REGISTER_PROC_TBL when running as a HPT guest on POWER9 + - powerpc/64: Fix smp_wmb barrier definition use use lwsync consistently + - powerpc/kprobes: Fix call trace due to incorrect preempt count + - powerpc/kexec_file: Fix error code when trying to load kdump kernel + - powerpc/powernv: define a standard delay for OPAL_BUSY type retry loops + - powerpc/powernv: Fix OPAL NVRAM driver OPAL_BUSY loops + - HID: Fix hid_report_len usage + - HID: core: Fix size as type u32 + - soc: mediatek: fix the mistaken pointer accessed when subdomains are added + - ASoC: ssm2602: Replace reg_default_raw with reg_default + - ASoC: topology: Fix kcontrol name string handling + - irqchip/gic: Take lock when updating irq type + - random: use a tighter cap in credit_entropy_bits_safe() + - extcon: intel-cht-wc: Set direction and drv flags for V5 boost GPIO + - block: use 32-bit blk_status_t on Alpha + - jbd2: if the journal is aborted then don't allow update of the log tail + - ext4: shutdown should not prevent get_write_access + - ext4: eliminate sleep from shutdown ioctl + - ext4: pass -ESHUTDOWN code to jbd2 layer + - ext4: don't update checksum of new initialized bitmaps + - ext4: protect i_disksize update by i_data_sem in direct write path + - ext4: limit xattr size to INT_MAX + - ext4: always initialize the crc32c checksum driver + - ext4: don't allow r/w mounts if metadata blocks overlap the superblock + - ext4: move call to ext4_error() into ext4_xattr_check_block() + - ext4: add bounds checking to ext4_xattr_find_entry() + - ext4: add extra checks to ext4_xattr_block_get() + - dm crypt: limit the number of allocated pages + - RDMA/ucma: Don't allow setting RDMA_OPTION_IB_PATH without an RDMA device + - RDMA/mlx5: Protect from NULL pointer derefence + - RDMA/rxe: Fix an out-of-bounds read + - ALSA: pcm: Fix UAF at PCM release via PCM timer access + - IB/srp: Fix srp_abort() + - IB/srp: Fix completion vector assignment algorithm + - dmaengine: at_xdmac: fix rare residue corruption + - cxl: Fix possible deadlock when processing page faults from cxllib + - tpm: self test failure should not cause suspend to fail + - libnvdimm, dimm: fix dpa reservation vs uninitialized label area + - libnvdimm, namespace: use a safe lookup for dimm device name + - nfit, address-range-scrub: fix scrub in-progress reporting + - nfit: skip region registration for incomplete control regions + - ring-buffer: Check if memory is available before allocation + - um: Compile with modern headers + - um: Use POSIX ucontext_t instead of struct ucontext + - iommu/vt-d: Fix a potential memory leak + - mmc: jz4740: Fix race condition in IRQ mask update + - mmc: tmio: Fix error handling when issuing CMD23 + - PCI: Mark Broadcom HT1100 and HT2000 Root Port Extended Tags as broken + - clk: mvebu: armada-38x: add support for missing clocks + - clk: fix false-positive Wmaybe-uninitialized warning + - clk: mediatek: fix PWM clock source by adding a fixed-factor clock + - clk: bcm2835: De-assert/assert PLL reset signal when appropriate + - pwm: rcar: Fix a condition to prevent mismatch value setting to duty + - thermal: imx: Fix race condition in imx_thermal_probe() + - dt-bindings: clock: mediatek: add binding for fixed-factor clock axisel_d4 + - watchdog: f71808e_wdt: Fix WD_EN register read + - ALSA: pcm: Use ERESTARTSYS instead of EINTR in OSS emulation + - ALSA: pcm: Avoid potential races between OSS ioctls and read/write + - ALSA: pcm: Return -EBUSY for OSS ioctls changing busy streams + - ALSA: pcm: Fix mutex unbalance in OSS emulation ioctls + - ALSA: pcm: Fix endless loop for XRUN recovery in OSS emulation + - drm/amdgpu: Add an ATPX quirk for hybrid laptop + - drm/amdgpu: Fix always_valid bos multiple LRU insertions. + - drm/amdgpu/sdma: fix mask in emit_pipeline_sync + - drm/amdgpu: Fix PCIe lane width calculation + - drm/amdgpu/si: implement get/set pcie_lanes asic callback + - drm/rockchip: Clear all interrupts before requesting the IRQ + - drm/radeon: add PX quirk for Asus K73TK + - drm/radeon: Fix PCIe lane width calculation + - ALSA: line6: Use correct endpoint type for midi output + - ALSA: rawmidi: Fix missing input substream checks in compat ioctls + - ALSA: hda - New VIA controller suppor no-snoop path + - random: fix crng_ready() test + - random: use a different mixing algorithm for add_device_randomness() + - random: crng_reseed() should lock the crng instance that it is modifying + - random: add new ioctl RNDRESEEDCRNG + - HID: input: fix battery level reporting on BT mice + - HID: hidraw: Fix crash on HIDIOCGFEATURE with a destroyed device + - HID: wacom: bluetooth: send exit report for recent Bluetooth devices + - MIPS: uaccess: Add micromips clobbers to bzero invocation + - MIPS: memset.S: EVA & fault support for small_memset + - MIPS: memset.S: Fix return of __clear_user from Lpartial_fixup + - MIPS: memset.S: Fix clobber of v1 in last_fixup + - powerpc/eeh: Fix enabling bridge MMIO windows + - powerpc/lib: Fix off-by-one in alternate feature patching + - udf: Fix leak of UTF-16 surrogates into encoded strings + - fanotify: fix logic of events on child + - mmc: sdhci-pci: Only do AMD tuning for HS200 + - drm/i915: Correctly handle limited range YCbCr data on VLV/CHV + - jffs2_kill_sb(): deal with failed allocations + - hypfs_kill_super(): deal with failed allocations + - orangefs_kill_sb(): deal with allocation failures + - rpc_pipefs: fix double-dput() + - Don't leak MNT_INTERNAL away from internal mounts + - autofs: mount point create should honour passed in mode + - mm/filemap.c: fix NULL pointer in page_cache_tree_insert() + - Revert "media: lirc_zilog: driver only sends LIRCCODE" + - media: staging: lirc_zilog: incorrect reference counting + - writeback: safer lock nesting + - Bluetooth: hci_bcm: Add irq_polarity module option + - mm: hwpoison: disable memory error handling on 1GB hugepage + - media: rc: oops in ir_timer_keyup after device unplug + - acpi, nfit: rework NVDIMM leaf method detection + - ceph: always update atime/mtime/ctime for new inode + - ext4: fix offset overflow on 32-bit archs in ext4_iomap_begin() + - ext4: force revalidation of directory pointer after seekdir(2) + - RDMA/core: Avoid that ib_drain_qp() triggers an out-of-bounds stack access + - xprtrdma: Fix latency regression on NUMA NFS/RDMA clients + - xprtrdma: Fix corner cases when handling device removal + - IB/srpt: Fix an out-of-bounds stack access in srpt_zerolength_write() + - drivers/infiniband/core/verbs.c: fix build with gcc-4.4.4 + - drivers/infiniband/ulp/srpt/ib_srpt.c: fix build with gcc-4.4.4 + - mmc: core: Prevent bus reference leak in mmc_blk_init() + - drm/amd/display: HDMI has no sound after Panel power off/on + - trace_uprobe: Use %lx to display offset + - clk: tegra: Mark HCLK, SCLK and EMC as critical + - pwm: mediatek: Fix up PWM4 and PWM5 malfunction on MT7623 + - pwm: mediatek: Improve precision in rate calculation + - HID: i2c-hid: Fix resume issue on Raydium touchscreen device + - s390: add support for IBM z14 Model ZR1 + - drm/i915: Fix hibernation with ACPI S0 target state + - libnvdimm, dimm: handle EACCES failures from label reads + - device-dax: allow MAP_SYNC to succeed + - HID: i2c-hid: fix inverted return value from i2c_hid_command() + * CVE-2018-7755 + - SAUCE: floppy: Do not copy a kernel pointer to user memory in FDGETPRM ioctl + + -- Marcelo Henrique Cerri Thu, 14 Jun 2018 10:55:10 -0300 + +linux-azure (4.15.0-1013.13) bionic; urgency=medium + + * linux-azure: 4.15.0-1013.13 -proposed tracker (LP: #1772930) + + * Switch Build-Depends: transfig to fig2dev (LP: #1770770) + - [Config] update Build-Depends: transfig to fig2dev + + [ Ubuntu: 4.15.0-23.25 ] + + * linux: 4.15.0-23.25 -proposed tracker (LP: #1772927) + * arm64 SDEI support needs trampoline code for KPTI (LP: #1768630) + - arm64: mmu: add the entry trampolines start/end section markers into + sections.h + - arm64: sdei: Add trampoline code for remapping the kernel + * Some PCIe errors not surfaced through rasdaemon (LP: #1769730) + - ACPI: APEI: handle PCIe AER errors in separate function + - ACPI: APEI: call into AER handling regardless of severity + * qla2xxx: Fix page fault at kmem_cache_alloc_node() (LP: #1770003) + - scsi: qla2xxx: Fix session cleanup for N2N + - scsi: qla2xxx: Remove unused argument from qlt_schedule_sess_for_deletion() + - scsi: qla2xxx: Serialize session deletion by using work_lock + - scsi: qla2xxx: Serialize session free in qlt_free_session_done + - scsi: qla2xxx: Don't call dma_free_coherent with IRQ disabled. + - scsi: qla2xxx: Fix warning in qla2x00_async_iocb_timeout() + - scsi: qla2xxx: Prevent relogin trigger from sending too many commands + - scsi: qla2xxx: Fix double free bug after firmware timeout + - scsi: qla2xxx: Fixup locking for session deletion + * Several hisi_sas bug fixes (LP: #1768974) + - scsi: hisi_sas: dt-bindings: add an property of signal attenuation + - scsi: hisi_sas: support the property of signal attenuation for v2 hw + - scsi: hisi_sas: fix the issue of link rate inconsistency + - scsi: hisi_sas: fix the issue of setting linkrate register + - scsi: hisi_sas: increase timer expire of internal abort task + - scsi: hisi_sas: remove unused variable hisi_sas_devices.running_req + - scsi: hisi_sas: fix return value of hisi_sas_task_prep() + - scsi: hisi_sas: Code cleanup and minor bug fixes + * [bionic] machine stuck and bonding not working well when nvmet_rdma module + is loaded (LP: #1764982) + - nvmet-rdma: Don't flush system_wq by default during remove_one + - nvme-rdma: Don't flush delete_wq by default during remove_one + * Warnings/hang during error handling of SATA disks on SAS controller + (LP: #1768971) + - scsi: libsas: defer ata device eh commands to libata + * Hotplugging a SATA disk into a SAS controller may cause crash (LP: #1768948) + - ata: do not schedule hot plug if it is a sas host + * ISST-LTE:pKVM:Ubuntu1804: rcu_sched self-detected stall on CPU follow by CPU + ATTEMPT TO RE-ENTER FIRMWARE! (LP: #1767927) + - powerpc/powernv: Handle unknown OPAL errors in opal_nvram_write() + - powerpc/64s: return more carefully from sreset NMI + - powerpc/64s: sreset panic if there is no debugger or crash dump handlers + * fsnotify: Fix fsnotify_mark_connector race (LP: #1765564) + - fsnotify: Fix fsnotify_mark_connector race + * Hang on network interface removal in Xen virtual machine (LP: #1771620) + - xen-netfront: Fix hang on device removal + * HiSilicon HNS NIC names are truncated in /proc/interrupts (LP: #1765977) + - net: hns: Avoid action name truncation + * Ubuntu 18.04 kernel crashed while in degraded mode (LP: #1770849) + - SAUCE: powerpc/perf: Fix memory allocation for core-imc based on + num_possible_cpus() + * Switch Build-Depends: transfig to fig2dev (LP: #1770770) + - [Config] update Build-Depends: transfig to fig2dev + * smp_call_function_single/many core hangs with stop4 alone (LP: #1768898) + - cpufreq: powernv: Fix hardlockup due to synchronous smp_call in timer + interrupt + * Add d-i support for Huawei NICs (LP: #1767490) + - d-i: add hinic to nic-modules udeb + * unregister_netdevice: waiting for eth0 to become free. Usage count = 5 + (LP: #1746474) + - xfrm: reuse uncached_list to track xdsts + * Include nfp driver in linux-modules (LP: #1768526) + - [Config] Add nfp.ko to generic inclusion list + * Kernel panic on boot (m1.small in cn-north-1) (LP: #1771679) + - x86/xen: Reset VCPU0 info pointer after shared_info remap + * CVE-2018-3639 (x86) + - x86/bugs: Fix the parameters alignment and missing void + - KVM: SVM: Move spec control call after restore of GS + - x86/speculation: Use synthetic bits for IBRS/IBPB/STIBP + - x86/cpufeatures: Disentangle MSR_SPEC_CTRL enumeration from IBRS + - x86/cpufeatures: Disentangle SSBD enumeration + - x86/cpufeatures: Add FEATURE_ZEN + - x86/speculation: Handle HT correctly on AMD + - x86/bugs, KVM: Extend speculation control for VIRT_SPEC_CTRL + - x86/speculation: Add virtualized speculative store bypass disable support + - x86/speculation: Rework speculative_store_bypass_update() + - x86/bugs: Unify x86_spec_ctrl_{set_guest,restore_host} + - x86/bugs: Expose x86_spec_ctrl_base directly + - x86/bugs: Remove x86_spec_ctrl_set() + - x86/bugs: Rework spec_ctrl base and mask logic + - x86/speculation, KVM: Implement support for VIRT_SPEC_CTRL/LS_CFG + - KVM: SVM: Implement VIRT_SPEC_CTRL support for SSBD + - x86/bugs: Rename SSBD_NO to SSB_NO + - bpf: Prevent memory disambiguation attack + - KVM: VMX: Expose SSBD properly to guests. + * Suspend to idle: Open lid didn't resume (LP: #1771542) + - ACPI / PM: Do not reconfigure GPEs for suspend-to-idle + * Fix initialization failure detection in SDEI for device-tree based systems + (LP: #1768663) + - firmware: arm_sdei: Fix return value check in sdei_present_dt() + * No driver for Huawei network adapters on arm64 (LP: #1769899) + - net-next/hinic: add arm64 support + * CVE-2018-1092 + - ext4: fail ext4_iget for root directory if unallocated + * kernel 4.15 breaks nouveau on Lenovo P50 (LP: #1763189) + - drm/nouveau: Fix deadlock in nv50_mstm_register_connector() + * update-initramfs not adding i915 GuC firmware for Kaby Lake, firmware fails + to load (LP: #1728238) + - Revert "UBUNTU: SAUCE: (no-up) i915: Remove MODULE_FIRMWARE statements for + unreleased firmware" + * Battery drains when laptop is off (shutdown) (LP: #1745646) + - PCI / PM: Check device_may_wakeup() in pci_enable_wake() + * Dell Latitude 5490/5590 BIOS update 1.1.9 causes black screen at boot + (LP: #1764194) + - drm/i915/bios: filter out invalid DDC pins from VBT child devices + * Intel 9462 A370:42A4 doesn't work (LP: #1748853) + - iwlwifi: add shared clock PHY config flag for some devices + - iwlwifi: add a bunch of new 9000 PCI IDs + * Fix an issue that some PCI devices get incorrectly suspended (LP: #1764684) + - PCI / PM: Always check PME wakeup capability for runtime wakeup support + * [SRU][Bionic/Artful] fix false positives in W+X checking (LP: #1769696) + - init: fix false positives in W+X checking + * Bionic update to v4.15.18 stable release (LP: #1769723) + - netfilter: ipset: Missing nfnl_lock()/nfnl_unlock() is added to + ip_set_net_exit() + - cdc_ether: flag the Cinterion AHS8 modem by gemalto as WWAN + - rds: MP-RDS may use an invalid c_path + - slip: Check if rstate is initialized before uncompressing + - vhost: fix vhost_vq_access_ok() log check + - l2tp: fix races in tunnel creation + - l2tp: fix race in duplicate tunnel detection + - ip_gre: clear feature flags when incompatible o_flags are set + - vhost: Fix vhost_copy_to_user() + - lan78xx: Correctly indicate invalid OTP + - media: v4l2-compat-ioctl32: don't oops on overlay + - media: v4l: vsp1: Fix header display list status check in continuous mode + - ipmi: Fix some error cleanup issues + - parisc: Fix out of array access in match_pci_device() + - parisc: Fix HPMC handler by increasing size to multiple of 16 bytes + - Drivers: hv: vmbus: do not mark HV_PCIE as perf_device + - PCI: hv: Serialize the present and eject work items + - PCI: hv: Fix 2 hang issues in hv_compose_msi_msg() + - KVM: PPC: Book3S HV: trace_tlbie must not be called in realmode + - perf/core: Fix use-after-free in uprobe_perf_close() + - x86/mce/AMD: Get address from already initialized block + - hwmon: (ina2xx) Fix access to uninitialized mutex + - ath9k: Protect queue draining by rcu_read_lock() + - x86/apic: Fix signedness bug in APIC ID validity checks + - f2fs: fix heap mode to reset it back + - block: Change a rcu_read_{lock,unlock}_sched() pair into + rcu_read_{lock,unlock}() + - nvme: Skip checking heads without namespaces + - lib: fix stall in __bitmap_parselist() + - blk-mq: order getting budget and driver tag + - blk-mq: don't keep offline CPUs mapped to hctx 0 + - ovl: fix lookup with middle layer opaque dir and absolute path redirects + - xen: xenbus_dev_frontend: Fix XS_TRANSACTION_END handling + - hugetlbfs: fix bug in pgoff overflow checking + - nfsd: fix incorrect umasks + - scsi: qla2xxx: Fix small memory leak in qla2x00_probe_one on probe failure + - block/loop: fix deadlock after loop_set_status + - nfit: fix region registration vs block-data-window ranges + - s390/qdio: don't retry EQBS after CCQ 96 + - s390/qdio: don't merge ERROR output buffers + - s390/ipl: ensure loadparm valid flag is set + - get_user_pages_fast(): return -EFAULT on access_ok failure + - mm/gup_benchmark: handle gup failures + - getname_kernel() needs to make sure that ->name != ->iname in long case + - Bluetooth: Fix connection if directed advertising and privacy is used + - Bluetooth: hci_bcm: Treat Interrupt ACPI resources as always being active- + low + - rtl8187: Fix NULL pointer dereference in priv->conf_mutex + - ovl: set lower layer st_dev only if setting lower st_ino + - Linux 4.15.18 + * Kernel bug when unplugging Thunderbolt 3 cable, leaves xHCI host controller + dead (LP: #1768852) + - xhci: Fix Kernel oops in xhci dbgtty + * Incorrect blacklist of bcm2835_wdt (LP: #1766052) + - [Packaging] Fix missing watchdog for Raspberry Pi + * CVE-2018-8087 + - mac80211_hwsim: fix possible memory leak in hwsim_new_radio_nl() + * Integrated Webcam Realtek Integrated_Webcam_HD (0bda:58f4) not working in + DELL XPS 13 9370 with firmware 1.50 (LP: #1763748) + - SAUCE: media: uvcvideo: Support realtek's UVC 1.5 device + * [ALSA] [PATCH] Clevo P950ER ALC1220 Fixup (LP: #1769721) + - SAUCE: ALSA: hda/realtek - Clevo P950ER ALC1220 Fixup + * Bionic: Intermittently sent to Emergency Mode on boot with unhandled kernel + NULL pointer dereference at 0000000000000980 (LP: #1768292) + - thunderbolt: Prevent crash when ICM firmware is not running + * linux-snapdragon: reduce EPROBEDEFER noise during boot (LP: #1768761) + - [Config] snapdragon: DRM_I2C_ADV7511=y + * regression Aquantia Corp. AQC107 4.15.0-13-generic -> 4.15.0-20-generic ? + (LP: #1767088) + - net: aquantia: Regression on reset with 1.x firmware + - net: aquantia: oops when shutdown on already stopped device + * e1000e msix interrupts broken in linux-image-4.15.0-15-generic + (LP: #1764892) + - e1000e: Remove Other from EIAC + * Acer Swift sf314-52 power button not managed (LP: #1766054) + - SAUCE: platform/x86: acer-wmi: add another KEY_POWER keycode + * set PINCFG_HEADSET_MIC to parse_flags for Dell precision 3630 (LP: #1766398) + - ALSA: hda/realtek - set PINCFG_HEADSET_MIC to parse_flags + * Change the location for one of two front mics on a lenovo thinkcentre + machine (LP: #1766477) + - ALSA: hda/realtek - adjust the location of one mic + * SRU: bionic: apply 50 ZFS upstream bugfixes (LP: #1764690) + - SAUCE: (noup) Update zfs to 0.7.5-1ubuntu15 (LP: #1764690) + * [8086:3e92] display becomes blank after S3 (LP: #1763271) + - drm/i915/edp: Do not do link training fallback or prune modes on EDP + + -- Marcelo Henrique Cerri Thu, 24 May 2018 10:44:42 -0300 + +linux-azure (4.15.0-1012.12) bionic; urgency=medium + + * linux-image-4.15.0-20-generic install after upgrade from xenial breaks + (LP: #1767133) + - Packaging: Add versioned dependency for linux-base + + [ Ubuntu: 4.15.0-22.24 ] + + * CVE-2018-3639 (powerpc) + - powerpc/64s: Add support for a store forwarding barrier at kernel entry/exit + - stf-barrier: set eieio instruction bit 6 for future optimisations + * CVE-2018-3639 (x86) + - x86/nospec: Simplify alternative_msr_write() + - x86/bugs: Concentrate bug detection into a separate function + - x86/bugs: Concentrate bug reporting into a separate function + - x86/bugs: Read SPEC_CTRL MSR during boot and re-use reserved bits + - x86/bugs, KVM: Support the combination of guest and host IBRS + - x86/bugs: Expose /sys/../spec_store_bypass + - x86/cpufeatures: Add X86_FEATURE_RDS + - x86/bugs: Provide boot parameters for the spec_store_bypass_disable + mitigation + - x86/bugs/intel: Set proper CPU features and setup RDS + - x86/bugs: Whitelist allowed SPEC_CTRL MSR values + - x86/bugs/AMD: Add support to disable RDS on Fam[15,16,17]h if requested + - x86/KVM/VMX: Expose SPEC_CTRL Bit(2) to the guest + - x86/speculation: Create spec-ctrl.h to avoid include hell + - prctl: Add speculation control prctls + - x86/process: Allow runtime control of Speculative Store Bypass + - x86/speculation: Add prctl for Speculative Store Bypass mitigation + - nospec: Allow getting/setting on non-current task + - proc: Provide details on speculation flaw mitigations + - seccomp: Enable speculation flaw mitigations + - x86/bugs: Make boot modes __ro_after_init + - prctl: Add force disable speculation + - seccomp: Use PR_SPEC_FORCE_DISABLE + - seccomp: Add filter flag to opt-out of SSB mitigation + - seccomp: Move speculation migitation control to arch code + - x86/speculation: Make "seccomp" the default mode for Speculative Store + Bypass + - x86/bugs: Rename _RDS to _SSBD + - proc: Use underscores for SSBD in 'status' + - Documentation/spec_ctrl: Do some minor cleanups + - x86/bugs: Fix __ssb_select_mitigation() return type + - x86/bugs: Make cpu_show_common() static + * LSM Stacking prctl values should be redefined as to not collide with + upstream prctls (LP: #1769263) // CVE-2018-3639 + - SAUCE: LSM stacking: adjust prctl values + + [ Ubuntu: 4.15.0-21.22 ] + + * linux: 4.15.0-21.22 -proposed tracker (LP: #1767397) + * initramfs-tools exception during pm.DoInstall with do-release-upgrade from + 16.04 to 18.04 (LP: #1766727) + - Add linux-image-* Breaks on s390-tools (<< 2.3.0-0ubuntu3) + * linux-image-4.15.0-20-generic install after upgrade from xenial breaks + (LP: #1767133) + - Packaging: Depends on linux-base that provides the necessary tools + * linux-image packages need to Breaks flash-kernel << 3.90ubuntu2 + (LP: #1766629) + - linux-image-* breaks on flash-kernel (<< 3.90ubuntu2) + + -- Stefan Bader Wed, 16 May 2018 18:31:36 +0200 + +linux-azure (4.15.0-1011.11) bionic; urgency=medium + + * linux-azure: 4.15.0-1011.11 -proposed tracker (LP: #1770294) + + * fsnotify: Fix fsnotify_mark_connector race (LP: #1765564) + - fsnotify: Fix fsnotify_mark_connector race + + -- Kamal Mostafa Wed, 09 May 2018 18:43:32 -0700 + +linux-azure (4.15.0-1009.9) bionic; urgency=medium + + * linux-azure: 4.15.0-1009.9 -proposed tracker (LP: #1766467) + + [ Ubuntu: 4.15.0-20.21 ] + + * linux: 4.15.0-20.21 -proposed tracker (LP: #1766452) + * package shim-signed (not installed) failed to install/upgrade: installed + shim-signed package post-installation script subprocess returned error exit + status 5 (LP: #1766391) + - [Packaging] fix invocation of header postinst hooks + + -- Kleber Sacilotto de Souza Tue, 24 Apr 2018 12:19:14 +0200 + +linux-azure (4.15.0-1008.8) bionic; urgency=medium + + * linux-azure: 4.15.0-1008.8 -proposed tracker (LP: #1766025) + + [ Ubuntu: 4.15.0-19.20 ] + + * linux: 4.15.0-19.20 -proposed tracker (LP: #1766021) + * Kernel 4.15.0-15 breaks Dell PowerEdge 12th Gen servers (LP: #1765232) + - Revert "blk-mq: simplify queue mapping & schedule with each possisble CPU" + - Revert "genirq/affinity: assign vectors to all possible CPUs" + + -- Seth Forshee Sat, 21 Apr 2018 20:11:42 -0500 + +linux-azure (4.15.0-1007.7) bionic; urgency=medium + + * linux-azure: 4.15.0-1007.7 -proposed tracker (LP: #1765495) + + * Miscellaneous Ubuntu changes + - [Config] updateconfigs after rebase to Ubuntu-4.15.0-18.19 + - [Packaging] update flavour-control.stub for signing changes + + [ Ubuntu: 4.15.0-18.19 ] + + * linux: 4.15.0-18.19 -proposed tracker (LP: #1765490) + * [regression] Ubuntu 18.04:[4.15.0-17-generic #18] KVM Guest Kernel: + meltdown: rfi/fallback displacement flush not enabled bydefault (kvm) + (LP: #1765429) + - powerpc/pseries: Fix clearing of security feature flags + * signing: only install a signed kernel (LP: #1764794) + - [Packaging] update to Debian like control scripts + - [Packaging] switch to triggers for postinst.d postrm.d handling + - [Packaging] signing -- switch to raw-signing tarballs + - [Packaging] signing -- switch to linux-image as signed when available + - [Config] signing -- enable Opal signing for ppc64el + - [Packaging] printenv -- add signing options + * [18.04 FEAT] Sign POWER host/NV kernels (LP: #1696154) + - [Packaging] signing -- add support for signing Opal kernel binaries + * Please cherrypick s390 unwind fix (LP: #1765083) + - s390/compat: fix setup_frame32 + * Ubuntu 18.04 installer does not detect any IPR based HDD/RAID array [S822L] + [ipr] (LP: #1751813) + - d-i: move ipr to storage-core-modules on ppc64el + * drivers/gpu/drm/bridge/adv7511/adv7511.ko missing (LP: #1764816) + - SAUCE: (no-up) rename the adv7511 drm driver to adv7511_drm + * Miscellaneous Ubuntu changes + - [Packaging] Add linux-oem to rebuild test blacklist. + + [ Ubuntu: 4.15.0-17.18 ] + + * linux: 4.15.0-17.18 -proposed tracker (LP: #1764498) + * Eventual OOM with profile reloads (LP: #1750594) + - SAUCE: apparmor: fix memory leak when duplicate profile load + + [ Ubuntu: 4.15.0-16.17 ] + + * linux: 4.15.0-16.17 -proposed tracker (LP: #1763785) + * [18.04] [bug] CFL-S(CNP)/CNL GPIO testing failed (LP: #1757346) + - [Config]: Set CONFIG_PINCTRL_CANNONLAKE=y + * [Ubuntu 18.04] USB Type-C test failed on GLK (LP: #1758797) + - SAUCE: usb: typec: ucsi: Increase command completion timeout value + * Fix trying to "push" an already active pool VP (LP: #1763386) + - SAUCE: powerpc/xive: Fix trying to "push" an already active pool VP + * hisi_sas: Revert and replace SAUCE patches w/ upstream (LP: #1762824) + - Revert "UBUNTU: SAUCE: scsi: hisi_sas: export device table of v3 hw to + userspace" + - Revert "UBUNTU: SAUCE: scsi: hisi_sas: config for hip08 ES" + - scsi: hisi_sas: modify some register config for hip08 + - scsi: hisi_sas: add v3 hw MODULE_DEVICE_TABLE() + * Realtek card reader - RTS5243 [VEN_10EC&DEV_5260] (LP: #1737673) + - misc: rtsx: Move Realtek Card Reader Driver to misc + - updateconfigs for Realtek Card Reader Driver + - misc: rtsx: Add support for RTS5260 + - misc: rtsx: Fix symbol clashes + * Mellanox [mlx5] [bionic] UBSAN: Undefined behaviour in + ./include/linux/net_dim.h (LP: #1763269) + - net/mlx5e: Fix int overflow + * apparmor bug fixes for bionic (LP: #1763427) + - apparmor: fix logging of the existence test for signals + - apparmor: make signal label match work when matching stacked labels + - apparmor: audit unknown signal numbers + - apparmor: fix memory leak on buffer on error exit path + - apparmor: fix mediation of prlimit + * dangling symlinks to loaded apparmor policy (LP: #1755563) // apparmor bug + fixes for bionic (LP: #1763427) + - apparmor: fix dangling symlinks to policy rawdata after replacement + * [OPAL] Assert fail: + core/mem_region.c:447:lock_held_by_me(®ion->free_list_lock) + (LP: #1762913) + - powerpc/watchdog: remove arch_trigger_cpumask_backtrace + * [LTC Test] Ubuntu 18.04: tm_trap_test failed on P8 compat mode guest + (LP: #1762928) + - powerpc/tm: Fix endianness flip on trap + * Add support for RT5660 codec based sound cards on Baytrail (LP: #1657674) + - SAUCE: (no-up) ASoC: Intel: Support machine driver for RT5660 on Baytrail + - SAUCE: (no-up) ASoC: rt5660: Add ACPI support + - SAUCE: (no-up): ASoC: Intel: bytcr-rt5660: Add MCLK, quirks + - [Config] CONFIG_SND_SOC_INTEL_BYTCR_RT5660_MACH=m, CONFIG_SND_SOC_RT5660=m + * /dev/ipmi enumeration flaky on Cavium Sabre nodes (LP: #1762812) + - i2c: xlp9xx: return ENXIO on slave address NACK + - i2c: xlp9xx: Handle transactions with I2C_M_RECV_LEN properly + - i2c: xlp9xx: Check for Bus state before every transfer + - i2c: xlp9xx: Handle NACK on DATA properly + * [18.04 FEAT] Add kvm_stat from kernel tree (LP: #1734130) + - tools/kvm_stat: simplify the sortkey function + - tools/kvm_stat: use a namedtuple for storing the values + - tools/kvm_stat: use a more pythonic way to iterate over dictionaries + - tools/kvm_stat: avoid 'is' for equality checks + - tools/kvm_stat: fix crash when filtering out all non-child trace events + - tools/kvm_stat: print error on invalid regex + - tools/kvm_stat: fix debugfs handling + - tools/kvm_stat: mark private methods as such + - tools/kvm_stat: eliminate extra guest/pid selection dialog + - tools/kvm_stat: separate drilldown and fields filtering + - tools/kvm_stat: group child events indented after parent + - tools/kvm_stat: print 'Total' line for multiple events only + - tools/kvm_stat: Fix python3 syntax + - tools/kvm_stat: Don't use deprecated file() + - tools/kvm_stat: Remove unused function + - [Packaging] Add linux-tools-host package for VM host tools + - [Config] do_tools_host=true for amd64 + * Bionic update to v4.15.17 stable release (LP: #1763366) + - i40iw: Fix sequence number for the first partial FPDU + - i40iw: Correct Q1/XF object count equation + - i40iw: Validate correct IRD/ORD connection parameters + - clk: meson: mpll: use 64-bit maths in params_from_rate + - ARM: dts: ls1021a: add "fsl,ls1021a-esdhc" compatible string to esdhc node + - Bluetooth: Add a new 04ca:3015 QCA_ROME device + - ipv6: Reinject IPv6 packets if IPsec policy matches after SNAT + - thermal: power_allocator: fix one race condition issue for thermal_instances + list + - perf probe: Find versioned symbols from map + - perf probe: Add warning message if there is unexpected event name + - perf evsel: Fix swap for samples with raw data + - perf evsel: Enable ignore_missing_thread for pid option + - l2tp: fix missing print session offset info + - rds; Reset rs->rs_bound_addr in rds_add_bound() failure path + - ACPI / video: Default lcd_only to true on Win8-ready and newer machines + - IB/mlx5: Report inner RSS capability + - VFS: close race between getcwd() and d_move() + - watchdog: dw_wdt: add stop watchdog operation + - clk: divider: fix incorrect usage of container_of + - PM / devfreq: Fix potential NULL pointer dereference in governor_store + - gpiolib: don't dereference a desc before validation + - net_sch: red: Fix the new offload indication + - selftests/net: fix bugs in address and port initialization + - thermal/drivers/hisi: Remove bogus const from function return type + - RDMA/cma: Mark end of CMA ID messages + - hwmon: (ina2xx) Make calibration register value fixed + - f2fs: fix lock dependency in between dio_rwsem & i_mmap_sem + - clk: sunxi-ng: a83t: Add M divider to TCON1 clock + - media: videobuf2-core: don't go out of the buffer range + - ASoC: Intel: Skylake: Disable clock gating during firmware and library + download + - ASoC: Intel: cht_bsw_rt5645: Analog Mic support + - drm/msm: Fix NULL deref in adreno_load_gpu + - IB/ipoib: Fix for notify send CQ failure messages + - spi: sh-msiof: Fix timeout failures for TX-only DMA transfers + - scsi: mpt3sas: Proper handling of set/clear of "ATA command pending" flag. + - irqchip/ompic: fix return value check in ompic_of_init() + - irqchip/gic-v3: Fix the driver probe() fail due to disabled GICC entry + - ACPI: EC: Fix debugfs_create_*() usage + - mac80211: Fix setting TX power on monitor interfaces + - vfb: fix video mode and line_length being set when loaded + - crypto: crypto4xx - perform aead icv check in the driver + - gpio: label descriptors using the device name + - arm64: asid: Do not replace active_asids if already 0 + - powernv-cpufreq: Add helper to extract pstate from PMSR + - IB/rdmavt: Allocate CQ memory on the correct node + - blk-mq: avoid to map CPU into stale hw queue + - blk-mq: fix race between updating nr_hw_queues and switching io sched + - backlight: tdo24m: Fix the SPI CS between transfers + - nvme-fabrics: protect against module unload during create_ctrl + - nvme-fabrics: don't check for non-NULL module in nvmf_register_transport + - pinctrl: baytrail: Enable glitch filter for GPIOs used as interrupts + - nvme_fcloop: disassocate local port structs + - nvme_fcloop: fix abort race condition + - tpm: return a TPM_RC_COMMAND_CODE response if command is not implemented + - perf report: Fix a no annotate browser displayed issue + - staging: lustre: disable preempt while sampling processor id. + - ASoC: Intel: sst: Fix the return value of 'sst_send_byte_stream_mrfld()' + - power: supply: axp288_charger: Properly stop work on probe-error / remove + - rt2x00: do not pause queue unconditionally on error path + - wl1251: check return from call to wl1251_acx_arp_ip_filter + - net/mlx5: Fix race for multiple RoCE enable + - bcache: ret IOERR when read meets metadata error + - bcache: stop writeback thread after detaching + - bcache: segregate flash only volume write streams + - net: Fix netdev_WARN_ONCE macro + - net/mlx5e: IPoIB, Use correct timestamp in child receive flow + - blk-mq: fix kernel oops in blk_mq_tag_idle() + - tty: n_gsm: Allow ADM response in addition to UA for control dlci + - block, bfq: put async queues for root bfq groups too + - serdev: Fix serdev_uevent failure on ACPI enumerated serdev-controllers + - EDAC, mv64x60: Fix an error handling path + - uio_hv_generic: check that host supports monitor page + - Bluetooth: hci_bcm: Mandate presence of shutdown and device wake GPIO + - Bluetooth: hci_bcm: Validate IRQ before using it + - Bluetooth: hci_bcm: Make shutdown and device wake GPIO optional + - i40evf: don't rely on netif_running() outside rtnl_lock() + - drm/amd/powerplay: fix memory leakage when reload (v2) + - cxgb4vf: Fix SGE FL buffer initialization logic for 64K pages + - PM / domains: Don't skip driver's ->suspend|resume_noirq() callbacks + - scsi: megaraid_sas: Error handling for invalid ldcount provided by firmware + in RAID map + - scsi: megaraid_sas: unload flag should be set after scsi_remove_host is + called + - RDMA/cma: Fix rdma_cm path querying for RoCE + - gpio: thunderx: fix error return code in thunderx_gpio_probe() + - x86/gart: Exclude GART aperture from vmcore + - sdhci: Advertise 2.0v supply on SDIO host controller + - Input: goodix - disable IRQs while suspended + - mtd: mtd_oobtest: Handle bitflips during reads + - crypto: aes-generic - build with -Os on gcc-7+ + - perf tools: Fix copyfile_offset update of output offset + - tcmu: release blocks for partially setup cmds + - thermal: int3400_thermal: fix error handling in int3400_thermal_probe() + - drm/i915/cnp: Ignore VBT request for know invalid DDC pin. + - drm/i915/cnp: Properly handle VBT ddc pin out of bounds. + - x86/microcode: Propagate return value from updating functions + - x86/CPU: Add a microcode loader callback + - x86/CPU: Check CPU feature bits after microcode upgrade + - x86/microcode: Get rid of struct apply_microcode_ctx + - x86/microcode/intel: Check microcode revision before updating sibling + threads + - x86/microcode/intel: Writeback and invalidate caches before updating + microcode + - x86/microcode: Do not upload microcode if CPUs are offline + - x86/microcode/intel: Look into the patch cache first + - x86/microcode: Request microcode on the BSP + - x86/microcode: Synchronize late microcode loading + - x86/microcode: Attempt late loading only when new microcode is present + - x86/microcode: Fix CPU synchronization routine + - arp: fix arp_filter on l3slave devices + - ipv6: the entire IPv6 header chain must fit the first fragment + - lan78xx: Crash in lan78xx_writ_reg (Workqueue: events + lan78xx_deferred_multicast_write) + - net: dsa: Discard frames from unused ports + - net: fix possible out-of-bound read in skb_network_protocol() + - net/ipv6: Fix route leaking between VRFs + - net/ipv6: Increment OUTxxx counters after netfilter hook + - netlink: make sure nladdr has correct size in netlink_connect() + - net/mlx5e: Verify coalescing parameters in range + - net sched actions: fix dumping which requires several messages to user space + - net/sched: fix NULL dereference in the error path of tcf_bpf_init() + - pptp: remove a buggy dst release in pptp_connect() + - r8169: fix setting driver_data after register_netdev + - sctp: do not leak kernel memory to user space + - sctp: sctp_sockaddr_af must check minimal addr length for AF_INET6 + - vhost: correctly remove wait queue during poll failure + - vlan: also check phy_driver ts_info for vlan's real device + - vrf: Fix use after free and double free in vrf_finish_output + - bonding: fix the err path for dev hwaddr sync in bond_enslave + - bonding: move dev_mc_sync after master_upper_dev_link in bond_enslave + - bonding: process the err returned by dev_set_allmulti properly in + bond_enslave + - net: fool proof dev_valid_name() + - ip_tunnel: better validate user provided tunnel names + - ipv6: sit: better validate user provided tunnel names + - ip6_gre: better validate user provided tunnel names + - ip6_tunnel: better validate user provided tunnel names + - vti6: better validate user provided tunnel names + - net/mlx5e: Set EQE based as default TX interrupt moderation mode + - net_sched: fix a missing idr_remove() in u32_delete_key() + - net/sched: fix NULL dereference in the error path of tcf_vlan_init() + - net/mlx5e: Avoid using the ipv6 stub in the TC offload neigh update path + - net/mlx5e: Fix memory usage issues in offloading TC flows + - net/sched: fix NULL dereference in the error path of tcf_sample_init() + - nfp: use full 40 bits of the NSP buffer address + - ipv6: sr: fix seg6 encap performances with TSO enabled + - net/mlx5e: Don't override vport admin link state in switchdev mode + - net/mlx5e: Sync netdev vxlan ports at open + - net/sched: fix NULL dereference in the error path of tunnel_key_init() + - net/sched: fix NULL dereference on the error path of tcf_skbmod_init() + - strparser: Fix sign of err codes + - net/mlx4_en: Fix mixed PFC and Global pause user control requests + - net/mlx5e: Fix traffic being dropped on VF representor + - vhost: validate log when IOTLB is enabled + - route: check sysctl_fib_multipath_use_neigh earlier than hash + - team: move dev_mc_sync after master_upper_dev_link in team_port_add + - vhost_net: add missing lock nesting notation + - net/mlx4_core: Fix memory leak while delete slave's resources + - Linux 4.15.17 + * sky2 gigabit ethernet driver sometimes stops working after lid-open resume + from sleep (88E8055) (LP: #1758507) // Bionic update to v4.15.17 stable + release (LP: #1763366) + - sky2: Increase D3 delay to sky2 stops working after suspend + * [Featire] CNL: Enable RAPL support (LP: #1685712) + - powercap: RAPL: Add support for Cannon Lake + * System Z {kernel} UBUNTU18.04 wrong kernel config (LP: #1762719) + - s390: move nobp parameter functions to nospec-branch.c + - s390: add automatic detection of the spectre defense + - s390: report spectre mitigation via syslog + - s390: add sysfs attributes for spectre + - [Config] CONFIG_EXPOLINE_AUTO=y, CONFIG_KERNEL_NOBP=n for s390 + - s390: correct nospec auto detection init order + * Merge the linux-snapdragon kernel into bionic master/snapdragon + (LP: #1763040) + - drm/msm: fix spelling mistake: "ringubffer" -> "ringbuffer" + - drm/msm: fix msm_rd_dump_submit prototype + - drm/msm: gpu: Only sync fences on rings that exist + - wcn36xx: set default BTLE coexistence config + - wcn36xx: Add hardware scan offload support + - wcn36xx: Reduce spinlock in indication handler + - wcn36xx: fix incorrect assignment to msg_body.min_ch_time + - wcn36xx: release DMA memory in case of error + - mailbox: qcom: Convert APCS IPC driver to use regmap + - mailbox: qcom: Create APCS child device for clock controller + - clk: qcom: Add A53 PLL support + - clk: qcom: Add regmap mux-div clocks support + - clk: qcom: Add APCS clock controller support + - clk: qcom: msm8916: Fix return value check in qcom_apcs_msm8916_clk_probe() + - media: venus: venc: set correctly GOP size and number of B-frames + - media: venus: venc: configure entropy mode + - media: venus: venc: Apply inloop deblocking filter + - media: venus: cleanup set_property controls + - arm64: defconfig: enable REMOTEPROC + - arm64: defconfig: enable QCOM audio drivers for APQ8016 and DB410c + - kernel: configs; add distro.config + - arm64: configs: enable WCN36xx + - kernel: distro.config: enable debug friendly USB network adpater + - arm64: configs: enable QCOM Venus + - arm64: defconfig: Enable a53/apcs and avs + - arm64: defconfig: enable ondemand governor as default + - arm64: defconfig: enable QCOM_TSENS + - arm64: defconfig: enable new trigger modes for leds + - kernel: configs: enable dm_mod and dm_crypt + - Force the SMD regulator driver to be compiled-in + - arm64: defconfig: enable CFG80211_DEFAULT_PS by default + - arm64: configs: enable BT_QCOMSMD + - kernel: configs: add more USB net drivers + - arm64: defconfig: disable ANALOG_TV and DIGITAL_TV + - arm64: configs: Enable camera drivers + - kernel: configs: add freq stat to sysfs + - arm64: defconfig: enable CONFIG_USB_CONFIGFS_F_FS by default + - arm64: defconfig: Enable QRTR features + - kernel: configs: set USB_CONFIG_F_FS in distro.config + - kernel: distro.config: enable 'schedutil' CPUfreq governor + - kernel: distro.config: enable 'fq' and 'fq_codel' qdiscs + - kernel: distro.config: enable 'BBR' TCP congestion algorithm + - arm64: defconfig: enable LEDS_QCOM_LPG + - HACK: drm/msm/iommu: Remove runtime_put calls in map/unmap + - power: avs: Add support for CPR (Core Power Reduction) + - power: avs: cpr: Use raw mem access for qfprom + - power: avs: cpr: fix with new reg_sequence structures + - power: avs: cpr: Register with cpufreq-dt + - regulator: smd: Add floor and corner operations + - PM / OPP: Support adjusting OPP voltages at runtime + - PM / OPP: Drop RCU usage in dev_pm_opp_adjust_voltage() + - PM / OPP: HACK: Allow to set regulator without opp_list + - PM / OPP: Add a helper to get an opp regulator for device + - cpufreq: Add apq8016 to cpufreq-dt-platdev blacklist + - regulator: smd: Allow REGULATOR_QCOM_SMD_RPM=m + - ov5645: I2C address change + - i2c: Add Qualcomm Camera Control Interface driver + - camss: vfe: Skip first four frames from sensor + - camss: Do not register if no cameras are present + - i2c-qcom-cci: Fix run queue completion timeout + - i2c-qcom-cci: Fix I2C address bug + - media: ov5645: Fix I2C address + - drm/bridge/adv7511: Delay clearing of HPD interrupt status + - HACK: drm/msm/adv7511: Don't rely on interrupts for EDID parsing + - leds: Add driver for Qualcomm LPG + - wcn36xx: Fix warning due to duplicate scan_completed notification + - arm64: dts: Add CPR DT node for msm8916 + - arm64: dts: add spmi-regulator nodes + - arm64: dts: msm8916: Add cpufreq support + - arm64: dts: msm8916: Add a shared CPU opp table + - arm64: dts: msm8916: Add cpu cooling maps + - arm64: dts: pm8916: Mark the s2 regulator as always-on + - dt-bindings: mailbox: qcom: Document the APCS clock binding + - arm64: dts: qcom: msm8916: Add msm8916 A53 PLL DT node + - arm64: dts: qcom: msm8916: Use the new APCS mailbox driver + - arm64: dts: qcom: msm8916: Add clock properties to the APCS node + - arm64: dts: qcom: apq8016-sbc: Allow USR4 LED to notify kernel panic + - dt-bindings: media: Binding document for Qualcomm Camera Control Interface + driver + - MAINTAINERS: Add Qualcomm Camera Control Interface driver + - DT: leds: Add Qualcomm Light Pulse Generator binding + - arm64: dts: qcom: msm8996: Add mpp and lpg blocks + - arm64: dts: qcom: Add pwm node for pm8916 + - arm64: dts: qcom: Add user LEDs on db820c + - arm64: dts: qcom: Add WiFI/BT LEDs on db820c + - ARM: dts: qcom: Add LPG node to pm8941 + - ARM: dts: qcom: honami: Add LPG node and RGB LED + - arm64: dts: qcom: Add Camera Control Interface support + - arm64: dts: qcom: Add apps_iommu vfe child node + - arm64: dts: qcom: Add camss device node + - arm64: dts: qcom: Add ov5645 device nodes + - arm64: dts: msm8916: Fix camera sensors I2C addresses + - arm: dts: qcom: db410c: Enable PWM signal on MPP4 + - packaging: arm64: add a uboot flavour - part1 + - packaging: arm64: add a uboot flavour - part2 + - packaging: arm64: add a uboot flavour - part3 + - packaging: arm64: add a uboot flavour - part4 + - packaging: arm64: add a uboot flavour - part5 + - packaging: arm64: rename uboot flavour to snapdragon + - [Config] updateconfigs after qcomlt import + - [Config] arm64: snapdragon: COMMON_CLK_QCOM=y + - [Config] arm64: snapdragon: MSM_GCC_8916=y + - [Config] arm64: snapdragon: REGULATOR_FIXED_VOLTAGE=y + - [Config] arm64: snapdragon: PINCTRL_MSM8916=y + - [Config] arm64: snapdragon: HWSPINLOCK_QCOM=y + - [Config] arm64: snapdragon: SPMI=y, SPMI_MSM_PMIC_ARB=y + - [Config] arm64: snapdragon: REGMAP_SPMI=y, PINCTRL_QCOM_SPMI_PMIC=y + - [Config] arm64: snapdragon: REGULATOR_QCOM_SPMI=y + - [Config] arm64: snapdragon: MFD_SPMI_PMIC=y + - [Config] arm64: snapdragon: QCOM_SMEM=y + - [Config] arm64: snapdragon: RPMSG=y, RPMSG_QCOM_SMD=y + - [Config] arm64: snapdragon: QCOM_SMD_RPM=y, REGULATOR_QCOM_SMD_RPM=y + - [Config] arm64: snapdragon: QCOM_CLK_SMD_RPM=y + - [Config] arm64: snapdragon: QCOM_BAM_DMA=y + - [Config] arm64: snapdragon: QCOM_HIDMA=y, QCOM_HIDMA_MGMT=y + - [Config] arm64: snapdragon: QCOM_CPR=y + - [Config] arm64: snapdragon: QCOM_QFPROM=y, QCOM_TSENS=y + - [Config] arm64: snapdragon: MMC_SDHCI=y, MMC_SDHCI_PLTFM=y, MMC_SDHCI_MSM=y + - [Config] turn off DRM_MSM_REGISTER_LOGGING + - [Config] arm64: snapdragon: I2C_QUP=y + - [Config] arm64: snapdragon: SPI_QUP=y + - [Config] arm64: snapdragon: USB_ULPI_BUS=y, PHY_QCOM_USB_HS=y + - [Config] arm64: snapdragon: QCOM_APCS_IPC=y + - [Config] arm64: snapdragon: QCOM_WCNSS_CTRL=y + - [Config] arm64: snapdragon: QCOM_SMSM=y + - [Config] arm64: snapdragon: QCOM_SMP2P=y + - [Config] arm64: snapdragon: DRM_MSM=y + - [Config] arm64: snapdragon: SND_SOC=y + - [Config] arm64: snapdragon: QCOM_WCNSS_PIL=m + - [Config] arm64: snapdragon: QCOM_A53PLL=y, QCOM_CLK_APCS_MSM8916=y + - [Config] arm64: snapdragon: INPUT_PM8941_PWRKEY=y + - [Config] arm64: snapdragon: MEDIA_SUBDRV_AUTOSELECT=y, VIDEO_OV5645=m + - [Config] arm64: snapdragon: SND_SOC_APQ8016_SBC=y, SND_SOC_LPASS_APQ8016=y + - [Config] arm64: snapdragon: SND_SOC_MSM8916_WCD_ANALOG=y, + SND_SOC_MSM8916_WCD_DIGITAL=y + - SAUCE: media: ov5645: skip address change if dt addr == default addr + - SAUCE: drm/msm/adv7511: wrap hacks under CONFIG_ADV7511_SNAPDRAGON_HACKS + #ifdefs + - [Config] arm64: snapdragon: ADV7511_SNAPDRAGON_HACKS=y + - packaging: snapdragon: fixup ABI paths + * LSM stacking patches for bionic (LP: #1763062) + - SAUCE: LSM stacking: procfs: add smack subdir to attrs + - SAUCE: LSM stacking: LSM: Manage credential security blobs + - SAUCE: LSM stacking: LSM: Manage file security blobs + - SAUCE: LSM stacking: LSM: Manage task security blobs + - SAUCE: LSM stacking: LSM: Manage remaining security blobs + - SAUCE: LSM stacking: LSM: General stacking + - SAUCE: LSM stacking: fixup initialize task->security + - SAUCE: LSM stacking: fixup: alloc_task_ctx is dead code + - SAUCE: LSM stacking: add support for stacking getpeersec_stream + - SAUCE: LSM stacking: add stacking support to apparmor network hooks + - SAUCE: LSM stacking: fixup apparmor stacking enablement + - SAUCE: LSM stacking: fixup stacking kconfig + - SAUCE: LSM stacking: allow selecting multiple LSMs using kernel boot params + - SAUCE: LSM stacking: provide prctl interface for setting context + - SAUCE: LSM stacking: inherit current display LSM + - SAUCE: LSM stacking: keep an index for each registered LSM + - SAUCE: LSM stacking: verify display LSM + - SAUCE: LSM stacking: provide a way to specify the default display lsm + - SAUCE: LSM stacking: make sure LSM blob align on 64 bit boundaries + - SAUCE: LSM stacking: add /proc//attr/display_lsm + - SAUCE: LSM stacking: add Kconfig to set default display LSM + - SAUCE: LSM stacking: add configs for LSM stacking + - SAUCE: LSM stacking: add apparmor and selinux proc dirs + - SAUCE: LSM stacking: remove procfs context interface + * linux 4.13.0-13.14 ADT test failure with linux 4.13.0-13.14 + (LP: #1720779) // LSM stacking patches for bionic (LP: #1763062) + - SAUCE: LSM stacking: check for invalid zero sized writes + * RDMA/hns: ensure for-loop actually iterates and free's buffers + (LP: #1762757) + - RDMA/hns: ensure for-loop actually iterates and free's buffers + * Support cq/rq record doorbell for RDMA on HSilicon hip08 systems + (LP: #1762755) + - RDMA/hns: Fix the endian problem for hns + - RDMA/hns: Support rq record doorbell for the user space + - RDMA/hns: Support cq record doorbell for the user space + - RDMA/hns: Support rq record doorbell for kernel space + - RDMA/hns: Support cq record doorbell for kernel space + - RDMA/hns: Fix cqn type and init resp + - RDMA/hns: Fix init resp when alloc ucontext + - RDMA/hns: Fix cq record doorbell enable in kernel + * Replace LPC patchset with upstream version (LP: #1762758) + - Revert "UBUNTU: SAUCE: MAINTAINERS: Add maintainer for HiSilicon LPC driver" + - Revert "UBUNTU: SAUCE: HISI LPC: Add ACPI support" + - Revert "UBUNTU: SAUCE: ACPI / scan: do not enumerate Indirect IO host + children" + - Revert "UBUNTU: SAUCE: HISI LPC: Support the LPC host on Hip06/Hip07 with DT + bindings" + - Revert "UBUNTU: SAUCE: OF: Add missing I/O range exception for indirect-IO + devices" + - Revert "UBUNTU: SAUCE: PCI: Apply the new generic I/O management on PCI IO + hosts" + - Revert "UBUNTU: SAUCE: PCI: Add fwnode handler as input param of + pci_register_io_range()" + - Revert "UBUNTU: SAUCE: PCI: Remove unused __weak attribute in + pci_register_io_range()" + - Revert "UBUNTU: SAUCE: LIB: Introduce a generic PIO mapping method" + - lib: Add generic PIO mapping method + - PCI: Remove __weak tag from pci_register_io_range() + - PCI: Add fwnode handler as input param of pci_register_io_range() + - PCI: Apply the new generic I/O management on PCI IO hosts + - of: Add missing I/O range exception for indirect-IO devices + - HISI LPC: Support the LPC host on Hip06/Hip07 with DT bindings + - ACPI / scan: Rename acpi_is_serial_bus_slave() for more general use + - ACPI / scan: Do not enumerate Indirect IO host children + - HISI LPC: Add ACPI support + - MAINTAINERS: Add John Garry as maintainer for HiSilicon LPC driver + * Enable Tunneled Operations on POWER9 (LP: #1762448) + - powerpc/powernv: Enable tunneled operations + - cxl: read PHB indications from the device tree + * PSL traces reset after PERST for debug AFU image (LP: #1762462) + - cxl: Enable NORST bit in PSL_DEBUG register for PSL9 + * NFS + sec=krb5 is broken (LP: #1759791) + - sunrpc: remove incorrect HMAC request initialization + * Raspberry Pi 3 microSD support missing from the installer (LP: #1729128) + - d-i: add bcm2835 to block-modules + * Backport USB core quirks (LP: #1762695) + - usb: core: Add "quirks" parameter for usbcore + - usb: core: Copy parameter string correctly and remove superfluous null check + - usb: core: Add USB_QUIRK_DELAY_CTRL_MSG to usbcore quirks + * [Ubuntu 18.04] cryptsetup: 'device-mapper: reload ioctl on failed' when + setting up a second end-to-end encrypted disk (LP: #1762353) + - SAUCE: s390/crypto: Adjust s390 aes and paes cipher + * Additional spectre and meltdown patches (LP: #1760099) // CVE-2017-5715 + - powerpc/64s: Wire up cpu_show_spectre_v2() + * Additional spectre and meltdown patches (LP: #1760099) // CVE-2017-5753 + - powerpc/64s: Wire up cpu_show_spectre_v1() + * Additional spectre and meltdown patches (LP: #1760099) // CVE-2017-5754 + - powerpc/rfi-flush: Move the logic to avoid a redo into the debugfs code + - powerpc/rfi-flush: Make it possible to call setup_rfi_flush() again + - powerpc/rfi-flush: Always enable fallback flush on pseries + - powerpc/rfi-flush: Differentiate enabled and patched flush types + - powerpc/rfi-flush: Call setup_rfi_flush() after LPM migration + - powerpc/64s: Move cpu_show_meltdown() + - powerpc/64s: Enhance the information in cpu_show_meltdown() + - powerpc/powernv: Use the security flags in pnv_setup_rfi_flush() + - powerpc/pseries: Use the security flags in pseries_setup_rfi_flush() + * Additional spectre and meltdown patches (LP: #1760099) // CVE-2017-5715 // + CVE-2017-5753 // CVE-2017-5754 + - powerpc/pseries: Add new H_GET_CPU_CHARACTERISTICS flags + - powerpc: Add security feature flags for Spectre/Meltdown + - powerpc/pseries: Set or clear security feature flags + - powerpc/powernv: Set or clear security feature flags + * Hisilicon network subsystem 3 support (LP: #1761610) + - net: hns3: export pci table of hclge and hclgevf to userspace + - d-i: Add hns3 drivers to nic-modules + * "ip a" command on a guest VM shows UNKNOWN status (LP: #1761534) + - virtio-net: Fix operstate for virtio when no VIRTIO_NET_F_STATUS + * perf vendor events arm64: Enable JSON events for ThunderX2 B0 (LP: #1760712) + - perf vendor events aarch64: Add JSON metrics for ARM Cortex-A53 Processor + - perf vendor events: Drop incomplete multiple mapfile support + - perf vendor events: Fix error code in json_events() + - perf vendor events: Drop support for unused topic directories + - perf vendor events: Add support for pmu events vendor subdirectory + - perf vendor events arm64: Relocate ThunderX2 JSON to cavium subdirectory + - perf vendor events arm64: Relocate Cortex A53 JSONs to arm subdirectory + - perf vendor events: Add support for arch standard events + - perf vendor events arm64: Add armv8-recommended.json + - perf vendor events arm64: Fixup ThunderX2 to use recommended events + - perf vendor events arm64: fixup A53 to use recommended events + - perf vendor events arm64: add HiSilicon hip08 JSON file + - perf vendor events arm64: Enable JSON events for ThunderX2 B0 + * Warning "cache flush timed out!" seen when unloading the cxl driver + (LP: #1762367) + - cxl: Check if PSL data-cache is available before issue flush request + * Bionic update to 4.15.16 stable release (LP: #1762370) + - ARM: OMAP: Fix SRAM W+X mapping + - ARM: 8746/1: vfp: Go back to clearing vfp_current_hw_state[] + - ARM: dts: sun6i: a31s: bpi-m2: improve pmic properties + - ARM: dts: sun6i: a31s: bpi-m2: add missing regulators + - mtd: jedec_probe: Fix crash in jedec_read_mfr() + - mtd: nand: atmel: Fix get_sectorsize() function + - ALSA: usb-audio: Add native DSD support for TEAC UD-301 + - ALSA: pcm: Use dma_bytes as size parameter in dma_mmap_coherent() + - ALSA: pcm: potential uninitialized return values + - x86/platform/uv/BAU: Add APIC idt entry + - perf/hwbp: Simplify the perf-hwbp code, fix documentation + - ceph: only dirty ITER_IOVEC pages for direct read + - ipc/shm.c: add split function to shm_vm_ops + - i2c: i2c-stm32f7: fix no check on returned setup + - powerpc/mm: Add tracking of the number of coprocessors using a context + - powerpc/mm: Workaround Nest MMU bug with TLB invalidations + - powerpc/64s: Fix i-side SLB miss bad address handler saving nonvolatile GPRs + - partitions/msdos: Unable to mount UFS 44bsd partitions + - xfrm_user: uncoditionally validate esn replay attribute struct + - RDMA/ucma: Check AF family prior resolving address + - RDMA/ucma: Fix use-after-free access in ucma_close + - RDMA/ucma: Ensure that CM_ID exists prior to access it + - RDMA/rdma_cm: Fix use after free race with process_one_req + - RDMA/ucma: Check that device is connected prior to access it + - RDMA/ucma: Check that device exists prior to accessing it + - RDMA/ucma: Introduce safer rdma_addr_size() variants + - ipv6: fix possible deadlock in rt6_age_examine_exception() + - net: xfrm: use preempt-safe this_cpu_read() in ipcomp_alloc_tfms() + - xfrm: Refuse to insert 32 bit userspace socket policies on 64 bit systems + - percpu: add __GFP_NORETRY semantics to the percpu balancing path + - netfilter: x_tables: make allocation less aggressive + - netfilter: bridge: ebt_among: add more missing match size checks + - l2tp: fix races with ipv4-mapped ipv6 addresses + - netfilter: drop template ct when conntrack is skipped. + - netfilter: x_tables: add and use xt_check_proc_name + - phy: qcom-ufs: add MODULE_LICENSE tag + - Bluetooth: Fix missing encryption refresh on Security Request + - drm/i915/dp: Write to SET_POWER dpcd to enable MST hub. + - bitmap: fix memset optimization on big-endian systems + - USB: serial: ftdi_sio: add RT Systems VX-8 cable + - USB: serial: ftdi_sio: add support for Harman FirmwareHubEmulator + - USB: serial: cp210x: add ELDAT Easywave RX09 id + - serial: 8250: Add Nuvoton NPCM UART + - mei: remove dev_err message on an unsupported ioctl + - /dev/mem: Avoid overwriting "err" in read_mem() + - media: usbtv: prevent double free in error case + - parport_pc: Add support for WCH CH382L PCI-E single parallel port card. + - crypto: lrw - Free rctx->ext with kzfree + - crypto: talitos - don't persistently map req_ctx->hw_context and + req_ctx->buf + - crypto: inside-secure - fix clock management + - crypto: testmgr - Fix incorrect values in PKCS#1 test vector + - crypto: talitos - fix IPsec cipher in length + - crypto: ahash - Fix early termination in hash walk + - crypto: caam - Fix null dereference at error path + - crypto: ccp - return an actual key size from RSA max_size callback + - crypto: arm,arm64 - Fix random regeneration of S_shipped + - crypto: x86/cast5-avx - fix ECB encryption when long sg follows short one + - Btrfs: fix unexpected cow in run_delalloc_nocow + - staging: comedi: ni_mio_common: ack ai fifo error interrupts. + - Revert "base: arch_topology: fix section mismatch build warnings" + - Input: ALPS - fix TrackStick detection on Thinkpad L570 and Latitude 7370 + - Input: i8042 - add Lenovo ThinkPad L460 to i8042 reset list + - Input: i8042 - enable MUX on Sony VAIO VGN-CS series to fix touchpad + - vt: change SGR 21 to follow the standards + - ARM: dts: DRA76-EVM: Set powerhold property for tps65917 + - net: hns: Fix ethtool private flags + - Fix slab name "biovec-(1<<(21-12))" + - Revert "ARM: dts: am335x-pepper: Fix the audio CODEC's reset pin" + - Revert "ARM: dts: omap3-n900: Fix the audio CODEC's reset pin" + - Revert "cpufreq: Fix governor module removal race" + - Revert "ip6_vti: adjust vti mtu according to mtu of lower device" + - Linux 4.15.16 + * [18.04][config] regression: nvme and nvme_core couldn't be built as modules + starting 4.15-rc2 (LP: #1759893) + - SAUCE: Revert "lightnvm: include NVM Express driver if OCSSD is selected for + build" + - [Config] CONFIG_BLK_DEV_NMVE=m + * Miscellaneous Ubuntu changes + - [Packaging] Only install cloud init files when do_tools_common=true + + -- Seth Forshee Fri, 20 Apr 2018 11:29:31 -0500 + +linux-azure (4.15.0-1006.6) bionic; urgency=medium + + * linux-azure: 4.15.0-1006.6 -proposed tracker (LP: #1763772) + + * zram module is missing in linux-azure (LP: #1762756) + - [Config] linux-azure: CONFIG_ZRAM=m + + * Disable nouveau driver in linux-azure kernel (LP: #1763456) + - [Config] linux-azure: CONFIG_DRM_NOUVEAU=n + + * linux-azure-edge should follow bionic/linux-azure in a similar way to linux- + hwe (LP: #1763494) + - [Packaging] Increase version + + -- Marcelo Henrique Cerri Fri, 13 Apr 2018 13:33:53 -0300 + +linux-azure (4.15.0-1004.4) bionic; urgency=medium + + * linux-azure: 4.15.0-1004.4 -proposed tracker (LP: #1761181) + + * [Hyper-V] hv_netvsc: enable multicast if necessary (LP: #1759885) + - hv_netvsc: fix filter flags + - SAUCE: hv_netvsc: enable multicast if necessary + + * [Hyper-V][linux-azure] Change config for MLX4 and MLX5 (LP: #1759656) + - [Config] azure: CONFIG_MLX{4,5}_INFINIBAND=y + + * [Hyper-V] Improvements for UDP on SRIOV (LP: #1756414) + - SAUCE: hv_netvsc: avoid retry on send during shutdown + - SAUCE: hv_netvsc: only wake transmit queue if link is up + - SAUCE: hv_netvsc: fix error unwind handling if vmbus_open fails + - SAUCE: hv_netvsc: cancel subchannel setup before halting device + - SAUCE: hv_netvsc: fix race in napi poll when rescheduling + - SAUCE: hv_netvsc: use napi_schedule_irqoff + - SAUCE: hv_netvsc: defer queue selection to VF + - SAUCE: hv_netvsc: filter multicast/broadcast + - SAUCE: hv_netvsc: propagate rx filters to VF + + * [Hyper-V] PCI: hv: Fix 2 hang issues in hv_compose_msi_msg (LP: #1758378) + - SAUCE: PCI: hv: Serialize the present and eject work items + - SAUCE: PCI: hv: Fix 2 hang issues in hv_compose_msi_msg() + - SAUCE: PCI: hv: Fix a comment typo in _hv_pcifront_read_config() + - SAUCE: PCI: hv: Remove the bogus test in hv_eject_device_work() + - SAUCE: PCI: hv: Only queue new work items in hv_pci_devices_present() if + necessary + + * Miscellaneous Ubuntu changes + - [Packaging] Only install cloud init files when do_tools_common=true + + [ Ubuntu: 4.15.0-15.16 ] + + * linux: 4.15.0-15.16 -proposed tracker (LP: #1761177) + * FFe: Enable configuring resume offset via sysfs (LP: #1760106) + - PM / hibernate: Make passing hibernate offsets more friendly + * /dev/bcache/by-uuid links not created after reboot (LP: #1729145) + - SAUCE: (no-up) bcache: decouple emitting a cached_dev CHANGE uevent + * Ubuntu18.04:POWER9:DD2.2 - Unable to start a KVM guest with default machine + type(pseries-bionic) complaining "KVM implementation does not support + Transactional Memory, try cap-htm=off" (kvm) (LP: #1752026) + - powerpc: Use feature bit for RTC presence rather than timebase presence + - powerpc: Book E: Remove unused CPU_FTR_L2CSR bit + - powerpc: Free up CPU feature bits on 64-bit machines + - powerpc: Add CPU feature bits for TM bug workarounds on POWER9 v2.2 + - powerpc/powernv: Provide a way to force a core into SMT4 mode + - KVM: PPC: Book3S HV: Work around transactional memory bugs in POWER9 + - KVM: PPC: Book3S HV: Work around XER[SO] bug in fake suspend mode + - KVM: PPC: Book3S HV: Work around TEXASR bug in fake suspend state + * Important Kernel fixes to be backported for Power9 (kvm) (LP: #1758910) + - powerpc/mm: Fixup tlbie vs store ordering issue on POWER9 + * Ubuntu 18.04 - IO Hang on some namespaces when running HTX with 16 + namespaces (Bolt / NVMe) (LP: #1757497) + - powerpc/64s: Fix lost pending interrupt due to race causing lost update to + irq_happened + * fwts-efi-runtime-dkms 18.03.00-0ubuntu1: fwts-efi-runtime-dkms kernel module + failed to build (LP: #1760876) + - [Packaging] include the retpoline extractor in the headers + + [ Ubuntu: 4.15.0-14.15 ] + + * linux: 4.15.0-14.15 -proposed tracker (LP: #1760678) + * [Bionic] mlx4 ETH - mlnx_qos failed when set some TC to vendor + (LP: #1758662) + - net/mlx4_en: Change default QoS settings + * AT_BASE_PLATFORM in AUXV is absent on kernels available on Ubuntu 17.10 + (LP: #1759312) + - powerpc/64s: Fix NULL AT_BASE_PLATFORM when using DT CPU features + * Bionic update to 4.15.15 stable release (LP: #1760585) + - net: dsa: Fix dsa_is_user_port() test inversion + - openvswitch: meter: fix the incorrect calculation of max delta_t + - qed: Fix MPA unalign flow in case header is split across two packets. + - tcp: purge write queue upon aborting the connection + - qed: Fix non TCP packets should be dropped on iWARP ll2 connection + - sysfs: symlink: export sysfs_create_link_nowarn() + - net: phy: relax error checking when creating sysfs link netdev->phydev + - devlink: Remove redundant free on error path + - macvlan: filter out unsupported feature flags + - net: ipv6: keep sk status consistent after datagram connect failure + - ipv6: old_dport should be a __be16 in __ip6_datagram_connect() + - ipv6: sr: fix NULL pointer dereference when setting encap source address + - ipv6: sr: fix scheduling in RCU when creating seg6 lwtunnel state + - mlxsw: spectrum_buffers: Set a minimum quota for CPU port traffic + - net: phy: Tell caller result of phy_change() + - ipv6: Reflect MTU changes on PMTU of exceptions for MTU-less routes + - net sched actions: return explicit error when tunnel_key mode is not + specified + - ppp: avoid loop in xmit recursion detection code + - rhashtable: Fix rhlist duplicates insertion + - test_rhashtable: add test case for rhltable with duplicate objects + - kcm: lock lower socket in kcm_attach + - sch_netem: fix skb leak in netem_enqueue() + - ieee802154: 6lowpan: fix possible NULL deref in lowpan_device_event() + - net: use skb_to_full_sk() in skb_update_prio() + - net: Fix hlist corruptions in inet_evict_bucket() + - s390/qeth: free netdevice when removing a card + - s390/qeth: when thread completes, wake up all waiters + - s390/qeth: lock read device while queueing next buffer + - s390/qeth: on channel error, reject further cmd requests + - soc/fsl/qbman: fix issue in qman_delete_cgr_safe() + - dpaa_eth: fix error in dpaa_remove() + - dpaa_eth: remove duplicate initialization + - dpaa_eth: increment the RX dropped counter when needed + - dpaa_eth: remove duplicate increment of the tx_errors counter + - dccp: check sk for closed state in dccp_sendmsg() + - ipv6: fix access to non-linear packet in ndisc_fill_redirect_hdr_option() + - l2tp: do not accept arbitrary sockets + - net: ethernet: arc: Fix a potential memory leak if an optional regulator is + deferred + - net: ethernet: ti: cpsw: add check for in-band mode setting with RGMII PHY + interface + - net: fec: Fix unbalanced PM runtime calls + - net/iucv: Free memory obtained by kzalloc + - netlink: avoid a double skb free in genlmsg_mcast() + - net: Only honor ifindex in IP_PKTINFO if non-0 + - net: systemport: Rewrite __bcm_sysport_tx_reclaim() + - qede: Fix qedr link update + - skbuff: Fix not waking applications when errors are enqueued + - team: Fix double free in error path + - Linux 4.15.15 + * Ubuntu 18.04 [ WSP DD2.2 with stop4 and stop5 enabled ]: kdump fails to + capture dump when smt=2 or off. (LP: #1758206) + - powerpc/crash: Remove the test for cpu_online in the IPI callback + - powernv/kdump: Fix cases where the kdump kernel can get HMI's + - powerpc/kdump: Fix powernv build break when KEXEC_CORE=n + * [Intel Ubuntu 18.04 Bug] Null pointer dereference, when disconnecting RAID + rebuild target (LP: #1759279) + - md: document lifetime of internal rdev pointer. + * [Feature]Crystal Ridge:add support for the platform capabilities NFIT sub- + table in ACPI 6.2A (LP: #1730829) + - ACPICA: ACPI 6.0A: Changes to the NFIT ACPI table + - acpi: nfit: Add support for detect platform CPU cache flush on power loss + - acpi: nfit: add persistent memory control flag for nd_region + - libnvdimm: expose platform persistence attribute for nd_region + - libnvdimm: re-enable deep flush for pmem devices via fsync() + - libnvdimm, nfit: fix persistence domain reporting + * Allow multiple mounts of zfs datasets (LP: #1759848) + - SAUCE: Allow mounting datasets more than once (LP: #1759848) + * Update Aquantia driver to fix various issues (LP: #1759303) + - net: aquantia: Eliminate AQ_DIMOF, replace with ARRAY_SIZE + - net: aquantia: Cleanup status flags accesses + - net: aquantia: Cleanup hardware access modules + - net: aquantia: Remove duplicate hardware descriptors declarations + - net: aquantia: Add const qualifiers for hardware ops tables + - net: aquantia: Simplify dependencies between pci modules + - net: aquantia: Eliminate aq_nic structure abstraction + - net: aquantia: Fix register definitions to linux style + - net: aquantia: Prepend hw access functions declarations with prefix + - net: aquantia: Fix internal stats calculation on rx + - net: aquantia: Introduce new device ids and constants + - net: aquantia: Introduce new AQC devices and capabilities + - net: aquantia: Convert hw and caps structures to const static pointers + - net: aquantia: Cleanup pci functions module + - net: aquantia: Remove create/destroy from hw ops + - net: aquantia: Change confusing no_ff_addr to more meaningful name + - net: aquantia: Introduce firmware ops callbacks + - net: aquantia: Introduce support for new firmware on AQC cards + - net: aquantia: Introduce global AQC hardware reset sequence + - net: aquantia: Report correct mediatype via ethtool + - net: aquantia: bump driver version to match aquantia internal numbering + - net: aquantia: Fix hardware reset when SPI may rarely hangup + - net: aquantia: Fix a regression with reset on old firmware + - net: aquantia: Change inefficient wait loop on fw data reads + - net: aquantia: Add tx clean budget and valid budget handling logic + - net: aquantia: Allow live mac address changes + - net: aquantia: Implement pci shutdown callback + - net: aquantia: driver version bump + * ISST-LTE:KVM:Ubuntu1804:BostonLC:boslcp3: cpu hotplug on boslcp3g4 guest + dumping call traces continuously. (LP: #1759722) + - blk-mq: turn WARN_ON in __blk_mq_run_hw_queue into printk + * ISST-LTE:KVM:Ubuntu18.04:BostonLC:boslcp3:boslcp3g3:Guest conosle hangs + after hotplug CPU add operation. (LP: #1759723) + - genirq/affinity: assign vectors to all possible CPUs + - blk-mq: simplify queue mapping & schedule with each possisble CPU + * test_bpf fails (LP: #1756150) + - test_bpf: Fix testing with CONFIG_BPF_JIT_ALWAYS_ON=y on other arches + * Bionic update to v4.15.14 stable release (LP: #1759655) + - MIPS: ralink: Remove ralink_halt() + - MIPS: ralink: Fix booting on MT7621 + - MIPS: lantiq: Fix Danube USB clock + - MIPS: lantiq: Enable AHB Bus for USB + - MIPS: lantiq: ase: Enable MFD_SYSCON + - iio: chemical: ccs811: Corrected firmware boot/application mode transition + - iio: st_pressure: st_accel: pass correct platform data to init + - iio: adc: meson-saradc: unlock on error in meson_sar_adc_lock() + - ALSA: usb-audio: Fix parsing descriptor of UAC2 processing unit + - ALSA: aloop: Sync stale timer before release + - ALSA: aloop: Fix access to not-yet-ready substream via cable + - ALSA: hda - Force polling mode on CFL for fixing codec communication + - ALSA: hda/realtek - Fix speaker no sound after system resume + - ALSA: hda/realtek - Fix Dell headset Mic can't record + - ALSA: hda/realtek - Always immediately update mute LED with pin VREF + - mmc: core: Fix tracepoint print of blk_addr and blksz + - mmc: core: Disable HPI for certain Micron (Numonyx) eMMC cards + - mmc: block: fix updating ext_csd caches on ioctl call + - mmc: dw_mmc: Fix the DTO/CTO timeout overflow calculation for 32-bit systems + - mmc: dw_mmc: exynos: fix the suspend/resume issue for exynos5433 + - mmc: dw_mmc: fix falling from idmac to PIO mode when dw_mci_reset occurs + - PCI: Add function 1 DMA alias quirk for Highpoint RocketRAID 644L + - ahci: Add PCI-id for the Highpoint Rocketraid 644L card + - lockdep: fix fs_reclaim warning + - clk: bcm2835: Fix ana->maskX definitions + - clk: bcm2835: Protect sections updating shared registers + - clk: sunxi-ng: a31: Fix CLK_OUT_* clock ops + - RDMA/mlx5: Fix crash while accessing garbage pointer and freed memory + - Drivers: hv: vmbus: Fix ring buffer signaling + - pinctrl: samsung: Validate alias coming from DT + - Bluetooth: btusb: Remove Yoga 920 from the btusb_needs_reset_resume_table + - Bluetooth: btusb: Add Dell OptiPlex 3060 to btusb_needs_reset_resume_table + - Bluetooth: btusb: Fix quirk for Atheros 1525/QCA6174 + - libata: fix length validation of ATAPI-relayed SCSI commands + - libata: remove WARN() for DMA or PIO command without data + - libata: don't try to pass through NCQ commands to non-NCQ devices + - libata: Apply NOLPM quirk to Crucial MX100 512GB SSDs + - libata: Enable queued TRIM for Samsung SSD 860 + - libata: Apply NOLPM quirk to Crucial M500 480 and 960GB SSDs + - libata: Make Crucial BX100 500GB LPM quirk apply to all firmware versions + - libata: Modify quirks for MX100 to limit NCQ_TRIM quirk to MU01 version + - sched, cgroup: Don't reject lower cpu.max on ancestors + - cgroup: fix rule checking for threaded mode switching + - nfsd: remove blocked locks on client teardown + - media: tegra-cec: reset rx_buf_cnt when start bit detected + - hugetlbfs: check for pgoff value overflow + - h8300: remove extraneous __BIG_ENDIAN definition + - mm/vmalloc: add interfaces to free unmapped page table + - x86/mm: implement free pmd/pte page interfaces + - mm/khugepaged.c: convert VM_BUG_ON() to collapse fail + - mm/thp: do not wait for lock_page() in deferred_split_scan() + - mm/shmem: do not wait for lock_page() in shmem_unused_huge_shrink() + - Revert "mm: page_alloc: skip over regions of invalid pfns where possible" + - drm/vmwgfx: Fix black screen and device errors when running without fbdev + - drm/vmwgfx: Fix a destoy-while-held mutex problem. + - drm/radeon: Don't turn off DP sink when disconnected + - drm/amd/display: We shouldn't set format_default on plane as atomic driver + - drm/amd/display: Add one to EDID's audio channel count when passing to DC + - drm: Reject getfb for multi-plane framebuffers + - drm: udl: Properly check framebuffer mmap offsets + - mm/vmscan: wake up flushers for legacy cgroups too + - module: propagate error in modules_open() + - acpi, numa: fix pxm to online numa node associations + - ACPI / watchdog: Fix off-by-one error at resource assignment + - libnvdimm, {btt, blk}: do integrity setup before add_disk() + - brcmfmac: fix P2P_DEVICE ethernet address generation + - rtlwifi: rtl8723be: Fix loss of signal + - tracing: probeevent: Fix to support minus offset from symbol + - mtdchar: fix usage of mtd_ooblayout_ecc() + - mtd: nand: fsl_ifc: Fix nand waitfunc return value + - mtd: nand: fsl_ifc: Fix eccstat array overflow for IFC ver >= 2.0.0 + - mtd: nand: fsl_ifc: Read ECCSTAT0 and ECCSTAT1 registers for IFC 2.0 + - staging: ncpfs: memory corruption in ncp_read_kernel() + - can: peak/pcie_fd: fix echo_skb is occupied! bug + - can: peak/pcie_fd: remove useless code when interface starts + - can: ifi: Repair the error handling + - can: ifi: Check core revision upon probe + - can: cc770: Fix stalls on rt-linux, remove redundant IRQ ack + - can: cc770: Fix queue stall & dropped RTR reply + - can: cc770: Fix use after free in cc770_tx_interrupt() + - tty: vt: fix up tabstops properly + - x86/entry/64: Don't use IST entry for #BP stack + - selftests/x86/ptrace_syscall: Fix for yet more glibc interference + - x86/vsyscall/64: Use proper accessor to update P4D entry + - x86/efi: Free efi_pgd with free_pages() + - posix-timers: Protect posix clock array access against speculation + - kvm/x86: fix icebp instruction handling + - x86/build/64: Force the linker to use 2MB page size + - x86/boot/64: Verify alignment of the LOAD segment + - hwmon: (k10temp) Only apply temperature offset if result is positive + - hwmon: (k10temp) Add temperature offset for Ryzen 1900X + - perf/x86/intel/uncore: Fix Skylake UPI event format + - perf stat: Fix CVS output format for non-supported counters + - perf/core: Fix ctx_event_type in ctx_resched() + - trace/bpf: remove helper bpf_perf_prog_read_value from tracepoint type + programs + - perf/x86/intel: Don't accidentally clear high bits in bdw_limit_period() + - perf/x86/intel/uncore: Fix multi-domain PCI CHA enumeration bug on Skylake + servers + - iio: ABI: Fix name of timestamp sysfs file + - iio: imu: st_lsm6dsx: fix endianness in st_lsm6dsx_read_oneshot() + - iio: imu: st_lsm6dsx: introduce conf_lock mutex + - staging: android: ion: Zero CMA allocated memory + - kbuild: disable clang's default use of -fmerge-all-constants + - bpf: skip unnecessary capability check + - bpf, x64: increase number of passes + - Linux 4.15.14 + * System fails to start (boot) on battery due to read-only root file-system + (LP: #1726930) // Bionic update to v4.15.14 stable release (LP: #1759655) + - libata: disable LPM for Crucial BX100 SSD 500GB drive + * [Feature][CFL][ICL] [CNL]Thunderbolt support (Titan Ridge) (LP: #1730775) + - thunderbolt: Resume control channel after hibernation image is created + - thunderbolt: Serialize PCIe tunnel creation with PCI rescan + - thunderbolt: Handle connecting device in place of host properly + - thunderbolt: Do not overwrite error code when domain adding fails + - thunderbolt: Wait a bit longer for root switch config space + - thunderbolt: Wait a bit longer for ICM to authenticate the active NVM + - thunderbolt: Handle rejected Thunderbolt devices + - thunderbolt: Factor common ICM add and update operations out + - thunderbolt: Correct function name in kernel-doc comment + - thunderbolt: Add tb_switch_get() + - thunderbolt: Add tb_switch_find_by_route() + - thunderbolt: Add tb_xdomain_find_by_route() + - thunderbolt: Add constant for approval timeout + - thunderbolt: Move driver ready handling to struct icm + - thunderbolt: Add 'boot' attribute for devices + - thunderbolt: Add support for preboot ACL + - Documentation/admin-guide: fixes for thunderbolt.rst + - thunderbolt: Introduce USB only (SL4) security level + - thunderbolt: Add support for Intel Titan Ridge + * QCA9377 requires more IRAM banks for its new firmware (LP: #1748345) + - ath10k: update the IRAM bank number for QCA9377 + * nfp: fix disabling on hw-tc-offload in flower (LP: #1752828) + - nfp: bpf: require ETH table + - nfp: don't advertise hw-tc-offload on non-port netdevs + - nfp: forbid disabling hw-tc-offload on representors while offload active + * Fix an issue that when system in S3, USB keyboard can't wake up the system. + (LP: #1759511) + - ACPI / PM: Allow deeper wakeup power states with no _SxD nor _SxW + * retpoline hints: primary infrastructure and initial hints (LP: #1758856) + - [Packaging] retpoline -- add safe usage hint support + - [Packaging] retpoline-check -- only report additions + - [Packaging] retpoline -- widen indirect call/jmp detection + - [Packaging] retpoline -- elide %rip relative indirections + - [Packaging] retpoline -- clear hint information from packages + - SAUCE: apm -- annotate indirect calls within + firmware_restrict_branch_speculation_{start,end} + - SAUCE: EFI -- annotate indirect calls within + firmware_restrict_branch_speculation_{start,end} + - SAUCE: early/late -- annotate indirect calls in early/late initialisation + code + - SAUCE: vga_set_mode -- avoid jump tables + - [Config] retpoine -- switch to new format + * zfs system process hung on container stop/delete (LP: #1754584) + - SAUCE: Fix non-prefaulted page deadlock (LP: #1754584) + - Revert "UBUNTU: SAUCE: Fix non-prefaulted page deadlock (LP: #1754584)" + - SAUCE: Fix non-prefaulted page deadlock (LP: #1754584) + * Important KVM fixes for ppc64el (LP: #1759045) + - KVM: PPC: Book3S HV: Do SLB load/unload with guest LPCR value loaded + - KVM: PPC: Book3S HV: Fix handling of secondary HPTEG in HPT resizing code + - KVM: PPC: Book3S HV: Make HPT resizing work on POWER9 + - KVM: PPC: Book3S: Add MMIO emulation for VMX instructions + - KVM: PPC: Book3S: Fix compile error that occurs with some gcc versions + - KVM: PPC: Book3S HV: Fix trap number return from __kvmppc_vcore_entry + - KVM: PPC: Book3S HV: Fix duplication of host SLB entries + * ubuntu_zram_smoke test will cause soft lockup on Artful ThunderX ARM64 + (LP: #1755073) + - SAUCE: crypto: thunderx_zip: Fix fallout from CONFIG_VMAP_STACK + * Update to ocxl driver (LP: #1755161) + - ocxl: fix signed comparison with less than zero + - ocxl: Fix potential bad errno on irq allocation + - ocxl: Add get_metadata IOCTL to share OCXL information to userspace + * CAPI Flash (cxlflash) update (LP: #1752672) + - scsi: cxlflash: Update cxl-specific arguments to generic cookie + - scsi: cxlflash: Explicitly cache number of interrupts per context + - scsi: cxlflash: Remove embedded CXL work structures + - scsi: cxlflash: Adapter context init can return error + - scsi: cxlflash: Staging to support future accelerators + - SAUCE: cxlflash: Preserve number of interrupts for master contexts + - SAUCE: cxlflash: Avoid clobbering context control register value + - SAUCE: cxlflash: Add argument identifier names + - SAUCE: cxlflash: Introduce OCXL backend + - SAUCE: cxlflash: Hardware AFU for OCXL + - SAUCE: cxlflash: Read host function configuration + - SAUCE: cxlflash: Setup function acTag range + - SAUCE: cxlflash: Read host AFU configuration + - SAUCE: cxlflash: Setup AFU acTag range + - SAUCE: cxlflash: Setup AFU PASID + - SAUCE: cxlflash: Adapter context support for OCXL + - SAUCE: cxlflash: Use IDR to manage adapter contexts + - SAUCE: cxlflash: Support adapter file descriptors for OCXL + - SAUCE: cxlflash: Support adapter context discovery + - SAUCE: cxlflash: Support image reload policy modification + - SAUCE: cxlflash: MMIO map the AFU + - SAUCE: cxlflash: Support starting an adapter context + - SAUCE: cxlflash: Support process specific mappings + - SAUCE: cxlflash: Support AFU state toggling + - SAUCE: cxlflash: Support reading adapter VPD data + - SAUCE: cxlflash: Setup function OCXL link + - SAUCE: cxlflash: Setup OCXL transaction layer + - SAUCE: cxlflash: Support process element lifecycle + - SAUCE: cxlflash: Support AFU interrupt management + - SAUCE: cxlflash: Support AFU interrupt mapping and registration + - SAUCE: cxlflash: Support starting user contexts + - SAUCE: cxlflash: Support adapter context polling + - SAUCE: cxlflash: Support adapter context reading + - SAUCE: cxlflash: Support adapter context mmap and release + - SAUCE: cxlflash: Support file descriptor mapping + - SAUCE: cxlflash: Introduce object handle fop + - SAUCE: cxlflash: Setup LISNs for user contexts + - SAUCE: cxlflash: Setup LISNs for master contexts + - SAUCE: cxlflash: Update synchronous interrupt status bits + - SAUCE: cxlflash: Introduce OCXL context state machine + - SAUCE: cxlflash: Register for translation errors + - SAUCE: cxlflash: Support AFU reset + - SAUCE: cxlflash: Enable OCXL operations + * [Feature][CFL] Enable pmc_core driver for H, S, and U SKUs (LP: #1730770) + - platform/x86: intel_pmc_core: Remove unused EXPORTED API + - platform/x86: intel_pmc_core: Change driver to a module + - platform/x86: intel_pmc_core: Fix file permission warnings + - platform/x86: intel_pmc_core: Refactor debugfs entries + - platform/x86: intel_pmc_core: Substitute PCI with CPUID enumeration + - platform/x86: intel_pmc_core: Convert to ICPU macro + - platform/x86: intel_pmc_core: Remove unused header file + - ACPI / LPIT: Export lpit_read_residency_count_address() + - platform/x86: intel_pmc_core: Read base address from LPIT + - x86/cpu: Add Cannonlake to Intel family + - platform/x86: intel_pmc_core: Add CannonLake PCH support + - platform/x86: intel_pmc_core: Special case for Coffeelake + * Cpu utilization showing system time for kvm guests (performance) (sysstat) + (LP: #1755979) + - KVM: PPC: Book3S HV: Fix guest time accounting with VIRT_CPU_ACCOUNTING_GEN + * [Artful][Wyse 3040] System hang when trying to enable an offlined CPU core + (LP: #1736393) + - SAUCE: drm/i915:Don't set chip specific data + - SAUCE: drm/i915: make previous commit affects Wyse 3040 only + * [Bug] ISH support for CFL-H (LP: #1739522) + - HID: intel-ish-hid: Enable Cannon Lake and Coffee Lake laptop/desktop + * ath9k can't connect to wifi AP (LP: #1727228) + - ath9k: add MSI support + - ath9k: add a quirk to set use_msi automatically + * [P9,Power NV][Witherspoon][Ubuntu 18.04][Perf] : PMU events by name it is + not listed under perf list (LP: #1755470) + - iperf vendor events: Use more flexible pattern matching for CPU + identification for mapfile.csv + * zed process consuming 100% cpu (LP: #1751796) + - SAUCE: Fix ioctl loop-spin in zed (LP: #1751796) + * Bionic update to 4.15.13 stable release (LP: #1758886) + - scsi: megaraid_sas: Do not use 32-bit atomic request descriptor for Ventura + controllers + - staging: android: ashmem: Fix possible deadlock in ashmem_ioctl + - drm/amdgpu: use polling mem to set SDMA3 wptr for VF + - Bluetooth: hci_qca: Avoid setup failure on missing rampatch + - Bluetooth: btqcomsmd: Fix skb double free corruption + - cpufreq: longhaul: Revert transition_delay_us to 200 ms + - media: c8sectpfe: fix potential NULL pointer dereference in + c8sectpfe_timer_interrupt + - drm/msm: fix leak in failed get_pages + - IB/ipoib: Warn when one port fails to initialize + - RDMA/iwpm: Fix uninitialized error code in iwpm_send_mapinfo() + - hv_netvsc: Fix the receive buffer size limit + - hv_netvsc: Fix the TX/RX buffer default sizes + - tcp: allow TLP in ECN CWR + - spi: sh-msiof: Avoid writing to registers from spi_master.setup() + - libbpf: prefer global symbols as bpf program name source + - rtlwifi: rtl_pci: Fix the bug when inactiveps is enabled. + - rtlwifi: always initialize variables given to RT_TRACE() + - media: bt8xx: Fix err 'bt878_probe()' + - ath10k: handling qos at STA side based on AP WMM enable/disable + - media: [RESEND] media: dvb-frontends: Add delay to Si2168 restart + - qmi_wwan: set FLAG_SEND_ZLP to avoid network initiated disconnect + - tty: goldfish: Enable 'earlycon' only if built-in + - serial: 8250_dw: Disable clock on error + - cros_ec: fix nul-termination for firmware build info + - watchdog: Fix potential kref imbalance when opening watchdog + - watchdog: Fix kref imbalance seen if handle_boot_enabled=0 + - platform/chrome: Use proper protocol transfer function + - dmaengine: zynqmp_dma: Fix race condition in the probe + - drm/tilcdc: ensure nonatomic iowrite64 is not used + - mmc: avoid removing non-removable hosts during suspend + - mmc: block: fix logical error to avoid memory leak + - /dev/mem: Add bounce buffer for copy-out + - net: phy: meson-gxl: check phy_write return value + - sfp: fix EEPROM reading in the case of non-SFF8472 SFPs + - sfp: fix non-detection of PHY + - media: s5p-mfc: Fix lock contention - request_firmware() once + - rtc: ac100: Fix multiple race conditions + - IB/ipoib: Avoid memory leak if the SA returns a different DGID + - RDMA/cma: Use correct size when writing netlink stats + - IB/umem: Fix use of npages/nmap fields + - iser-target: avoid reinitializing rdma contexts for isert commands + - bpf/cgroup: fix a verification error for a CGROUP_DEVICE type prog + - vgacon: Set VGA struct resource types + - omapdrm: panel: fix compatible vendor string for td028ttec1 + - mmc: sdhci-xenon: wait 5ms after set 1.8V signal enable + - drm/omap: DMM: Check for DMM readiness after successful transaction commit + - pty: cancel pty slave port buf's work in tty_release + - coresight: Fix disabling of CoreSight TPIU + - PCI: designware-ep: Fix ->get_msi() to check MSI_EN bit + - PCI: endpoint: Fix find_first_zero_bit() usage + - PCI: rcar: Handle rcar_pcie_parse_request_of_pci_ranges() failures + - media: davinci: fix a debug printk + - clk: check ops pointer on clock register + - dt-bindings: display: panel: Fix compatible string for Toshiba LT089AC29000 + - clk: use round rate to bail out early in set_rate + - pinctrl: Really force states during suspend/resume + - pinctrl: rockchip: enable clock when reading pin direction register + - iommu/vt-d: clean up pr_irq if request_threaded_irq fails + - ip6_vti: adjust vti mtu according to mtu of lower device + - ip_gre: fix error path when erspan_rcv failed + - ip_gre: fix potential memory leak in erspan_rcv + - soc: qcom: smsm: fix child-node lookup + - RDMA/ocrdma: Fix permissions for OCRDMA_RESET_STATS + - ARM: dts: aspeed-evb: Add unit name to memory node + - nfsd4: permit layoutget of executable-only files + - clk: at91: pmc: Wait for clocks when resuming + - clk: Don't touch hardware when reparenting during registration + - clk: axi-clkgen: Correctly handle nocount bit in recalc_rate() + - clk: si5351: Rename internal plls to avoid name collisions + - crypto: artpec6 - set correct iv size for gcm(aes) + - hwrng: core - Clean up RNG list when last hwrng is unregistered + - dmaengine: ti-dma-crossbar: Fix event mapping for TPCC_EVT_MUX_60_63 + - IB/mlx5: Fix integer overflows in mlx5_ib_create_srq + - IB/mlx5: Fix out-of-bounds read in create_raw_packet_qp_rq + - RDMA/vmw_pvrdma: Fix usage of user response structures in ABI file + - serial: 8250_pci: Don't fail on multiport card class + - RDMA/core: Do not use invalid destination in determining port reuse + - clk: migrate the count of orphaned clocks at init + - RDMA/ucma: Fix access to non-initialized CM_ID object + - RDMA/ucma: Don't allow join attempts for unsupported AF family + - Linux 4.15.13 + * Ubuntu18.04:PowerPC - Set Transparent Huge Pages (THP) by default to + "always" (LP: #1753708) + - Config: Set TRANSPARENT_HUGEPAGE_ALWAYS=y on ppc64el + * Bionic update to 4.15.12 stable release (LP: #1757465) + - x86/cpufeatures: Add Intel Total Memory Encryption cpufeature + - x86/cpufeatures: Add Intel PCONFIG cpufeature + - selftests/x86/entry_from_vm86: Exit with 1 if we fail + - selftests/x86/entry_from_vm86: Add test cases for POPF + - x86/vm86/32: Fix POPF emulation + - x86/speculation, objtool: Annotate indirect calls/jumps for objtool on + 32-bit kernels + - x86/speculation: Remove Skylake C2 from Speculation Control microcode + blacklist + - KVM: x86: Fix device passthrough when SME is active + - x86/mm: Fix vmalloc_fault to use pXd_large + - parisc: Handle case where flush_cache_range is called with no context + - ALSA: pcm: Fix UAF in snd_pcm_oss_get_formats() + - ALSA: hda - Revert power_save option default value + - ALSA: seq: Fix possible UAF in snd_seq_check_queue() + - ALSA: seq: Clear client entry before deleting else at closing + - drm/nouveau/bl: Fix oops on driver unbind + - drm/nouveau/mmu: ALIGN_DOWN correct variable + - drm/amdgpu: fix prime teardown order + - drm/radeon: fix prime teardown order + - drm/amdgpu/dce: Don't turn off DP sink when disconnected + - fs: Teach path_connected to handle nfs filesystems with multiple roots. + - KVM: arm/arm64: Reduce verbosity of KVM init log + - KVM: arm/arm64: Reset mapped IRQs on VM reset + - kvm: arm/arm64: vgic-v3: Tighten synchronization for guests using v2 on v3 + - KVM: arm/arm64: vgic: Don't populate multiple LRs with the same vintid + - lock_parent() needs to recheck if dentry got __dentry_kill'ed under it + - fs/aio: Add explicit RCU grace period when freeing kioctx + - fs/aio: Use RCU accessors for kioctx_table->table[] + - RDMAVT: Fix synchronization around percpu_ref + - irqchip/gic-v3-its: Ensure nr_ites >= nr_lpis + - nvme: fix subsystem multiple controllers support check + - xfs: preserve i_rdev when recycling a reclaimable inode + - btrfs: Fix NULL pointer exception in find_bio_stripe + - btrfs: add missing initialization in btrfs_check_shared + - btrfs: alloc_chunk: fix DUP stripe size handling + - btrfs: Fix use-after-free when cleaning up fs_devs with a single stale + device + - btrfs: remove spurious WARN_ON(ref->count < 0) in find_parent_nodes + - btrfs: Fix memory barriers usage with device stats counters + - scsi: qla2xxx: Fix smatch warning in qla25xx_delete_{rsp|req}_que + - scsi: qla2xxx: Fix NULL pointer access for fcport structure + - scsi: qla2xxx: Fix logo flag for qlt_free_session_done() + - scsi: qla2xxx: Fix crashes in qla2x00_probe_one on probe failure + - usb: dwc2: fix STM32F7 USB OTG HS compatible + - dt-bindings: usb: fix the STM32F7 DWC2 OTG HS core binding + - USB: gadget: udc: Add missing platform_device_put() on error in + bdc_pci_probe() + - usb: dwc3: Fix GDBGFIFOSPACE_TYPE values + - usb: dwc3: core: Power-off core/PHYs on system_suspend in host mode + - usb: dwc3: of-simple: fix oops by unbalanced clk disable call + - usb: gadget: udc: renesas_usb3: fix oops in renesas_usb3_remove() + - phy: phy-brcm-usb: Fix two DT properties to match bindings doc + - phy: phy-brcm-usb-init: Some Low Speed keyboards fail on 7271 + - phy: phy-brcm-usb-init: DRD mode can cause crash on startup + - phy: phy-brcm-usb-init: Power down USB 3.0 PHY when XHCI disabled + - Linux 4.15.12 + * cxl: Fix timebase synchronization status on POWER9 missing (CAPI) + (LP: #1757228) + - cxl: Fix timebase synchronization status on P9 + * [Feature][GLK] Enable L2 CDP (Code and Data Prioritization) (LP: #1737873) + - x86/intel_rdt: Enumerate L2 Code and Data Prioritization (CDP) feature + - x86/intel_rdt: Add command line parameter to control L2_CDP + * [Feature] Crystal Ridge-Restrict DAX to configurations with struct page + (LP: #1751724) + - mm, dax: introduce pfn_t_special() + - ext2: auto disable dax instead of failing mount + - ext4: auto disable dax instead of failing mount + - dax: require 'struct page' by default for filesystem dax + - Config: Enable CONFIG_FS_DAX_LIMITED + * Bionic update to 4.15.11 stable release (LP: #1756978) + - x86: Treat R_X86_64_PLT32 as R_X86_64_PC32 + - ASoC: sun4i-i2s: Fix RX slot number of SUN8I + - ASoC: sgtl5000: Fix suspend/resume + - ASoC: wm_adsp: For TLV controls only register TLV get/set + - ASoC: rt5651: Fix regcache sync errors on resume + - usb: host: xhci-rcar: add support for r8a77965 + - xhci: Fix front USB ports on ASUS PRIME B350M-A + - xhci: fix endpoint context tracer output + - serial: sh-sci: prevent lockup on full TTY buffers + - tty/serial: atmel: add new version check for usart + - uas: fix comparison for error code + - staging: comedi: fix comedi_nsamples_left. + - staging: android: ashmem: Fix lockdep issue during llseek + - scsi: sd_zbc: Fix potential memory leak + - USB: storage: Add JMicron bridge 152d:2567 to unusual_devs.h + - usbip: vudc: fix null pointer dereference on udc->lock + - usb: quirks: add control message delay for 1b1c:1b20 + - usb: usbmon: Read text within supplied buffer size + - usb: gadget: f_fs: Fix use-after-free in ffs_fs_kill_sb() + - usb: dwc3: Fix lock-up on ID change during system suspend/resume + - serial: 8250_pci: Add Brainboxes UC-260 4 port serial device + - serial: core: mark port as initialized in autoconfig + - earlycon: add reg-offset to physical address before mapping + - dm mpath: fix passing integrity data + - Revert "btrfs: use proper endianness accessors for super_copy" + - gfs2: Clean up {lookup,fillup}_metapath + - gfs2: Fixes to "Implement iomap for block_map" (2) + - drm/panel: rpi-touchscreen: propagate errors in rpi_touchscreen_i2c_read() + - spi: imx: Fix failure path leak on GPIO request error correctly + - HID: multitouch: Only look at non touch fields in first packet of a frame + - KVM: PPC: Book3S HV: Avoid shifts by negative amounts + - drm/edid: set ELD connector type in drm_edid_to_eld() + - dma-buf/fence: Fix lock inversion within dma-fence-array + - video/hdmi: Allow "empty" HDMI infoframes + - KVM: PPC: Book3S HV: Fix typo in kvmppc_hv_get_dirty_log_radix() + - HID: elo: clear BTN_LEFT mapping + - iwlwifi: mvm: rs: don't override the rate history in the search cycle + - ARM: dts: koelsch: Move cec_clock to root node + - clk: meson: gxbb: fix wrong clock for SARADC/SANA + - ARM: dts: exynos: Correct Trats2 panel reset line + - drm/amdgpu: fix get_max_engine_clock_in_mhz + - staging: rtl8822be: fix missing null check on dev_alloc_skb return + - typec: tcpm: fusb302: Resolve out of order messaging events + - USB: ledtrig-usbport: fix of-node leak + - dt-bindings: serial: Add common rs485 binding for RTS polarity + - sched: Stop switched_to_rt() from sending IPIs to offline CPUs + - sched: Stop resched_cpu() from sending IPIs to offline CPUs + - crypto: chelsio - Fix an error code in chcr_hash_dma_map() + - crypto: ecc - Fix NULL pointer deref. on no default_rng + - crypto: keywrap - Add missing ULL suffixes for 64-bit constants + - crypto: cavium - fix memory leak on info + - test_firmware: fix setting old custom fw path back on exit + - drm/vblank: Fix vblank timestamp debugs + - net: ieee802154: adf7242: Fix bug if defined DEBUG + - rtc: brcmstb-waketimer: fix error handling in brcmstb_waketmr_probe() + - perf report: Fix -D output for user metadata events + - net: xfrm: allow clearing socket xfrm policies. + - gpiolib: don't allow OPEN_DRAIN & OPEN_SOURCE flags simultaneously + - mtd: nand: fix interpretation of NAND_CMD_NONE in nand_command[_lp]() + - net: thunderx: Set max queue count taking XDP_TX into account + - ARM: dts: am335x-pepper: Fix the audio CODEC's reset pin + - ARM: dts: omap3-n900: Fix the audio CODEC's reset pin + - mtd: nand: ifc: update bufnum mask for ver >= 2.0.0 + - userns: Don't fail follow_automount based on s_user_ns + - xfrm: Fix xfrm_replay_overflow_offload_esn + - leds: pm8058: Silence pointer to integer size warning + - bpf: fix stack state printing in verifier log + - power: supply: sbs-message: double left shift bug in sbsm_select() + - power: supply: ab8500_charger: Fix an error handling path + - power: supply: ab8500_charger: Bail out in case of error in + 'ab8500_charger_init_hw_registers()' + - drm/etnaviv: make THERMAL selectable + - iio: adc: ina2xx: Shift bus voltage register to mask flag bits + - iio: health: max30102: Add power enable parameter to get_temp function + - ath10k: update tdls teardown state to target + - cpufreq: Fix governor module removal race + - KVM: X86: Restart the guest when insn_len is zero and SEV is enabled + - drm/amdgpu:fix random missing of FLR NOTIFY + - scsi: ses: don't ask for diagnostic pages repeatedly during probe + - pwm: stmpe: Fix wrong register offset for hwpwm=2 case + - drm/sun4i: Fix format mask in DE2 driver + - pinctrl: sh-pfc: r8a7791: Add can_clk function + - pinctrl: sh-pfc: r8a7795-es1: Fix MOD_SEL1 bit[25:24] to 0x3 when using + STP_ISEN_1_D + - perf annotate: Fix unnecessary memory allocation for s390x + - perf annotate: Fix objdump comment parsing for Intel mov dissassembly + - iwlwifi: mvm: avoid dumping assert log when device is stopped + - drm/amdgpu:fix virtual dce bug + - drm/amdgpu: fix amdgpu_sync_resv v2 + - bnxt_en: Uninitialized variable in bnxt_tc_parse_actions() + - clk: qcom: msm8916: fix mnd_width for codec_digcodec + - mwifiex: cfg80211: do not change virtual interface during scan processing + - ath10k: fix invalid STS_CAP_OFFSET_MASK + - tools/usbip: fixes build with musl libc toolchain + - spi: sun6i: disable/unprepare clocks on remove + - bnxt_en: Don't print "Link speed -1 no longer supported" messages. + - scsi: core: scsi_get_device_flags_keyed(): Always return device flags + - scsi: devinfo: apply to HP XP the same flags as Hitachi VSP + - scsi: dh: add new rdac devices + - clk: renesas: r8a77970: Add LVDS clock + - staging: fsl-dpaa2/eth: Fix access to FAS field + - media: vsp1: Prevent suspending and resuming DRM pipelines + - dm raid: fix raid set size revalidation + - media: cpia2: Fix a couple off by one bugs + - media: davinci: vpif_capture: add NULL check on devm_kzalloc return value + - virtio_net: Disable interrupts if napi_complete_done rescheduled napi + - net: sched: drop qdisc_reset from dev_graft_qdisc + - veth: set peer GSO values + - drm/amdkfd: Fix memory leaks in kfd topology + - powerpc/64: Don't trace irqs-off at interrupt return to soft-disabled + context + - arm64: dts: renesas: salvator-common: Add EthernetAVB PHY reset + - agp/intel: Flush all chipset writes after updating the GGTT + - mac80211_hwsim: enforce PS_MANUAL_POLL to be set after PS_ENABLED + - mac80211: remove BUG() when interface type is invalid + - crypto: caam/qi - use correct print specifier for size_t + - ASoC: nuc900: Fix a loop timeout test + - mmc: mmc_test: Ensure command queue is disabled for testing + - Fix misannotated out-of-line _copy_to_user() + - ipvlan: add L2 check for packets arriving via virtual devices + - rcutorture/configinit: Fix build directory error message + - locking/locktorture: Fix num reader/writer corner cases + - ima: relax requiring a file signature for new files with zero length + - IB/mlx5: revisit -Wmaybe-uninitialized warning + - dmaengine: qcom_hidma: check pending interrupts + - drm/i915/glk: Disable Guc and HuC on GLK + - Linux 4.15.11 + - Config: Enable CONFIG_DRM_ETNAVIV_THERMAL=y + * [FFE][Feature] KVM CLX avx512_vnni (LP: #1739665) + - KVM: x86: add support for UMIP + - KVM: Expose new cpu features to guest + * Ubuntu18.04[P9 DD2.2 Boston]:Unable to boot power8 compat mode + guests(ubuntu14.04.5) (kvm) (LP: #1756254) + - KVM: PPC: Book3S HV: Allow HPT and radix on the same core for POWER9 v2.2 + * Allow hugepage backing for "p8compat" mode kvm guests (LP: #1754206) + - KVM: PPC: Book3S HV: Fix VRMA initialization with 2MB or 1GB memory backing + * [Bug][KVM][Crystal Ridge] Terrible performance of vNVDIMM on QEMU with + device DAX backend (LP: #1745899) + - x86/mm: add a function to check if a pfn is UC/UC-/WC + - KVM: MMU: consider host cache mode in MMIO page check + * nfp: read ME frequency from vNIC ctrl memory (LP: #1752818) + - nfp: add TLV capabilities to the BAR + - nfp: read ME frequency from vNIC ctrl memory + - nfp: fix TLV offset calculation + * Miscellaneous Ubuntu changes + - [Packaging] skip cloud tools packaging when not building package + - [Packaging] final-checks -- remove check for empty retpoline files + + -- Marcelo Henrique Cerri Wed, 04 Apr 2018 18:08:55 -0300 + +linux-azure (4.15.0-1003.3) bionic; urgency=medium + + * linux-azure: 4.15.0-1003.3 -proposed tracker (LP: #1757167) + + * Enable secure boot on linux-azure (LP: #1754042) + - Revert "UBUNTU: [debian] azure: do not build uefi signed binary" + + * [Hyper-v] Set CONFIG_I2C_PIIX4 to "n" (LP: #1752999) + - [Config] azure: CONFIG_I2C_PIIX4=n + + * [Hyper-V] set config: CONFIG_EDAC_DECODE_MCE=y (LP: #1751123) + - [Config] azure: CONFIG_EDAC_DECODE_MCE=y + + * Miscellaneous Ubuntu changes + - [Config] updateconfigs after rebase to Ubuntu-4.15.0-13.14 + - [Config] fix up retpoline abi files + + [ Ubuntu: 4.15.0-13.14 ] + + * linux: 4.15.0-13.14 -proposed tracker (LP: #1756408) + * devpts: handle bind-mounts (LP: #1755857) + - SAUCE: devpts: hoist out check for DEVPTS_SUPER_MAGIC + - SAUCE: devpts: resolve devpts bind-mounts + - SAUCE: devpts: comment devpts_mntget() + - SAUCE: selftests: add devpts selftests + * [bionic][arm64] d-i: add hisi_sas_v3_hw to scsi-modules (LP: #1756103) + - d-i: add hisi_sas_v3_hw to scsi-modules + * [Bionic][ARM64] enable ROCE and HNS3 driver support for hip08 SoC + (LP: #1756097) + - RDMA/hns: Refactor eq code for hip06 + - RDMA/hns: Add eq support of hip08 + - RDMA/hns: Add detailed comments for mb() call + - RDMA/hns: Add rq inline data support for hip08 RoCE + - RDMA/hns: Update the usage of sr_max and rr_max field + - RDMA/hns: Set access flags of hip08 RoCE + - RDMA/hns: Filter for zero length of sge in hip08 kernel mode + - RDMA/hns: Fix QP state judgement before sending work requests + - RDMA/hns: Assign dest_qp when deregistering mr + - RDMA/hns: Fix endian problems around imm_data and rkey + - RDMA/hns: Assign the correct value for tx_cqn + - RDMA/hns: Create gsi qp in hip08 + - RDMA/hns: Add gsi qp support for modifying qp in hip08 + - RDMA/hns: Fill sq wqe context of ud type in hip08 + - RDMA/hns: Assign zero for pkey_index of wc in hip08 + - RDMA/hns: Update the verbs of polling for completion + - RDMA/hns: Set the guid for hip08 RoCE device + - net: hns3: Refactor of the reset interrupt handling logic + - net: hns3: Add reset service task for handling reset requests + - net: hns3: Refactors the requested reset & pending reset handling code + - net: hns3: Add HNS3 VF IMP(Integrated Management Proc) cmd interface + - net: hns3: Add mailbox support to VF driver + - net: hns3: Add HNS3 VF HCL(Hardware Compatibility Layer) Support + - net: hns3: Add HNS3 VF driver to kernel build framework + - net: hns3: Unified HNS3 {VF|PF} Ethernet Driver for hip08 SoC + - net: hns3: Add mailbox support to PF driver + - net: hns3: Change PF to add ring-vect binding & resetQ to mailbox + - net: hns3: Add mailbox interrupt handling to PF driver + - net: hns3: add support to query tqps number + - net: hns3: add support to modify tqps number + - net: hns3: change the returned tqp number by ethtool -x + - net: hns3: free the ring_data structrue when change tqps + - net: hns3: get rss_size_max from configuration but not hardcode + - net: hns3: add a mask initialization for mac_vlan table + - net: hns3: add vlan offload config command + - net: hns3: add ethtool related offload command + - net: hns3: add handling vlan tag offload in bd + - net: hns3: cleanup mac auto-negotiation state query + - net: hns3: fix for getting auto-negotiation state in hclge_get_autoneg + - net: hns3: add support for set_pauseparam + - net: hns3: add support to update flow control settings after autoneg + - net: hns3: add Asym Pause support to phy default features + - net: hns3: add support for querying advertised pause frame by ethtool ethx + - net: hns3: Increase the default depth of bucket for TM shaper + - net: hns3: change TM sched mode to TC-based mode when SRIOV enabled + - net: hns3: hns3_get_channels() can be static + - net: hns3: Add ethtool interface for vlan filter + - net: hns3: Disable VFs change rxvlan offload status + - net: hns3: Unify the strings display of packet statistics + - net: hns3: Fix spelling errors + - net: hns3: Remove repeat statistic of rx_errors + - net: hns3: Modify the update period of packet statistics + - net: hns3: Mask the packet statistics query when NIC is down + - net: hns3: Fix an error of total drop packet statistics + - net: hns3: Fix a loop index error of tqp statistics query + - net: hns3: Fix an error macro definition of HNS3_TQP_STAT + - net: hns3: Remove a useless member of struct hns3_stats + - net: hns3: Add packet statistics of netdev + - net: hns3: Fix a response data read error of tqp statistics query + - net: hns3: fix for updating fc_mode_last_time + - net: hns3: fix for setting MTU + - net: hns3: fix for changing MTU + - net: hns3: add MTU initialization for hardware + - net: hns3: fix for not setting pause parameters + - net: hns3: remove redundant semicolon + - net: hns3: Add more packet size statisctics + - Revert "net: hns3: Add packet statistics of netdev" + - net: hns3: report the function type the same line with hns3_nic_get_stats64 + - net: hns3: add ethtool_ops.get_channels support for VF + - net: hns3: remove TSO config command from VF driver + - net: hns3: add ethtool_ops.get_coalesce support to PF + - net: hns3: add ethtool_ops.set_coalesce support to PF + - net: hns3: refactor interrupt coalescing init function + - net: hns3: refactor GL update function + - net: hns3: remove unused GL setup function + - net: hns3: change the unit of GL value macro + - net: hns3: add int_gl_idx setup for TX and RX queues + - net: hns3: add feature check when feature changed + - net: hns3: check for NULL function pointer in hns3_nic_set_features + - net: hns: Fix for variable may be used uninitialized warnings + - net: hns3: add support for get_regs + - net: hns3: add manager table initialization for hardware + - net: hns3: add ethtool -p support for fiber port + - net: hns3: add net status led support for fiber port + - net: hns3: converting spaces into tabs to avoid checkpatch.pl warning + - net: hns3: add get/set_coalesce support to VF + - net: hns3: add int_gl_idx setup for VF + - [Config]: enable CONFIG_HNS3_HCLGEVF as module. + * [Bionic][ARM64] add RAS extension and SDEI features (LP: #1756096) + - KVM: arm64: Store vcpu on the stack during __guest_enter() + - KVM: arm/arm64: Convert kvm_host_cpu_state to a static per-cpu allocation + - KVM: arm64: Change hyp_panic()s dependency on tpidr_el2 + - arm64: alternatives: use tpidr_el2 on VHE hosts + - KVM: arm64: Stop save/restoring host tpidr_el1 on VHE + - Docs: dt: add devicetree binding for describing arm64 SDEI firmware + - firmware: arm_sdei: Add driver for Software Delegated Exceptions + - arm64: Add vmap_stack header file + - arm64: uaccess: Add PAN helper + - arm64: kernel: Add arch-specific SDEI entry code and CPU masking + - firmware: arm_sdei: Add support for CPU and system power states + - firmware: arm_sdei: add support for CPU private events + - arm64: acpi: Remove __init from acpi_psci_use_hvc() for use by SDEI + - firmware: arm_sdei: Discover SDEI support via ACPI + - arm64: sysreg: Move to use definitions for all the SCTLR bits + - arm64: cpufeature: Detect CPU RAS Extentions + - arm64: kernel: Survive corrected RAS errors notified by SError + - arm64: Unconditionally enable IESB on exception entry/return for firmware- + first + - arm64: kernel: Prepare for a DISR user + - KVM: arm/arm64: mask/unmask daif around VHE guests + - KVM: arm64: Set an impdef ESR for Virtual-SError using VSESR_EL2. + - KVM: arm64: Save/Restore guest DISR_EL1 + - KVM: arm64: Save ESR_EL2 on guest SError + - KVM: arm64: Handle RAS SErrors from EL1 on guest exit + - KVM: arm64: Handle RAS SErrors from EL2 on guest exit + - KVM: arm64: Emulate RAS error registers and set HCR_EL2's TERR & TEA + - [Config]: enable RAS_EXTN and ARM_SDE_INTERFACE + * [Bionic][ARM64] PCI and SAS driver patches for hip08 SoCs (LP: #1756094) + - scsi: hisi_sas: fix dma_unmap_sg() parameter + - scsi: ata: enhance the definition of SET MAX feature field value + - scsi: hisi_sas: relocate clearing ITCT and freeing device + - scsi: hisi_sas: optimise port id refresh function + - scsi: hisi_sas: some optimizations of host controller reset + - scsi: hisi_sas: modify hisi_sas_dev_gone() for reset + - scsi: hisi_sas: add an mechanism to do reset work synchronously + - scsi: hisi_sas: change ncq process for v3 hw + - scsi: hisi_sas: add RAS feature for v3 hw + - scsi: hisi_sas: add some print to enhance debugging + - scsi: hisi_sas: improve int_chnl_int_v2_hw() consistency with v3 hw + - scsi: hisi_sas: add v2 hw port AXI error handling support + - scsi: hisi_sas: use an general way to delay PHY work + - scsi: hisi_sas: do link reset for some CHL_INT2 ints + - scsi: hisi_sas: judge result of internal abort + - scsi: hisi_sas: add internal abort dev in some places + - scsi: hisi_sas: fix SAS_QUEUE_FULL problem while running IO + - scsi: hisi_sas: re-add the lldd_port_deformed() + - scsi: hisi_sas: add v3 hw suspend and resume + - scsi: hisi_sas: Change frame type for SET MAX commands + - scsi: hisi_sas: make local symbol host_attrs static + - scsi: hisi_sas: fix a bug in hisi_sas_dev_gone() + - SAUCE: scsi: hisi_sas: config for hip08 ES + - SAUCE: scsi: hisi_sas: export device table of v3 hw to userspace + - PM / core: Add LEAVE_SUSPENDED driver flag + - PCI / PM: Support for LEAVE_SUSPENDED driver flag + - PCI/AER: Skip recovery callbacks for correctable errors from ACPI APEI + - PCI/ASPM: Calculate LTR_L1.2_THRESHOLD from device characteristics + - PCI/ASPM: Enable Latency Tolerance Reporting when supported + - PCI/ASPM: Unexport internal ASPM interfaces + - PCI: Make PCI_SCAN_ALL_PCIE_DEVS work for Root as well as Downstream Ports + - PCI/AER: Return error if AER is not supported + - PCI/DPC: Enable DPC only if AER is available + * [CVE] Spectre: System Z {kernel} UBUNTU18.04 (LP: #1754580) + - s390: scrub registers on kernel entry and KVM exit + - s390: add optimized array_index_mask_nospec + - s390/alternative: use a copy of the facility bit mask + - s390: add options to change branch prediction behaviour for the kernel + - s390: run user space and KVM guests with modified branch prediction + - s390: introduce execute-trampolines for branches + - s390: Replace IS_ENABLED(EXPOLINE_*) with IS_ENABLED(CONFIG_EXPOLINE_*) + - s390: do not bypass BPENTER for interrupt system calls + - s390/entry.S: fix spurious zeroing of r0 + * s390/crypto: Fix kernel crash on aes_s390 module remove (LP: #1753424) + - SAUCE: s390/crypto: Fix kernel crash on aes_s390 module remove. + * [Feature]Update Ubuntu 18.04 lpfc FC driver with 32/64GB HBA support and bug + fixes (LP: #1752182) + - scsi: lpfc: FLOGI failures are reported when connected to a private loop. + - scsi: lpfc: Expand WQE capability of every NVME hardware queue + - scsi: lpfc: Handle XRI_ABORTED_CQE in soft IRQ + - scsi: lpfc: Fix NVME LS abort_xri + - scsi: lpfc: Raise maximum NVME sg list size for 256 elements + - scsi: lpfc: Driver fails to detect direct attach storage array + - scsi: lpfc: Fix display for debugfs queInfo + - scsi: lpfc: Adjust default value of lpfc_nvmet_mrq + - scsi: lpfc: Fix ndlp ref count for pt2pt mode issue RSCN + - scsi: lpfc: Linux LPFC driver does not process all RSCNs + - scsi: lpfc: correct port registrations with nvme_fc + - scsi: lpfc: Correct driver deregistrations with host nvme transport + - scsi: lpfc: Fix crash during driver unload with running nvme traffic + - scsi: lpfc: Fix driver handling of nvme resources during unload + - scsi: lpfc: small sg cnt cleanup + - scsi: lpfc: Fix random heartbeat timeouts during heavy IO + - scsi: lpfc: update driver version to 11.4.0.5 + - scsi: lpfc: Fix -EOVERFLOW behavior for NVMET and defer_rcv + - scsi: lpfc: Fix receive PRLI handling + - scsi: lpfc: Increase SCSI CQ and WQ sizes. + - scsi: lpfc: Fix SCSI LUN discovery when SCSI and NVME enabled + - scsi: lpfc: Fix issues connecting with nvme initiator + - scsi: lpfc: Fix infinite wait when driver unregisters a remote NVME port. + - scsi: lpfc: Beef up stat counters for debug + - scsi: lpfc: update driver version to 11.4.0.6 + - scsi: lpfc: correct sg_seg_cnt attribute min vs default + - scsi: scsi_transport_fc: fix typos on 64/128 GBit define names + - scsi: lpfc: don't dereference localport before it has been null checked + - scsi: lpfc: fix a couple of minor indentation issues + - treewide: Use DEVICE_ATTR_RW + - treewide: Use DEVICE_ATTR_RO + - treewide: Use DEVICE_ATTR_WO + - scsi: lpfc: Fix frequency of Release WQE CQEs + - scsi: lpfc: Increase CQ and WQ sizes for SCSI + - scsi: lpfc: move placement of target destroy on driver detach + - scsi: lpfc: correct debug counters for abort + - scsi: lpfc: Add WQ Full Logic for NVME Target + - scsi: lpfc: Fix PRLI handling when topology type changes + - scsi: lpfc: Fix IO failure during hba reset testing with nvme io. + - scsi: lpfc: Fix RQ empty firmware trap + - scsi: lpfc: Allow set of maximum outstanding SCSI cmd limit for a target + - scsi: lpfc: Fix soft lockup in lpfc worker thread during LIP testing + - scsi: lpfc: Fix issue_lip if link is disabled + - scsi: lpfc: Indicate CONF support in NVMe PRLI + - scsi: lpfc: Fix SCSI io host reset causing kernel crash + - scsi: lpfc: Validate adapter support for SRIU option + - scsi: lpfc: Fix header inclusion in lpfc_nvmet + - scsi: lpfc: Treat SCSI Write operation Underruns as an error + - scsi: lpfc: Fix nonrecovery of NVME controller after cable swap. + - scsi: lpfc: update driver version to 11.4.0.7 + - scsi: lpfc: Update 11.4.0.7 modified files for 2018 Copyright + - scsi: lpfc: Rework lpfc to allow different sli4 cq and eq handlers + - scsi: lpfc: Rework sli4 doorbell infrastructure + - scsi: lpfc: Add SLI-4 if_type=6 support to the code base + - scsi: lpfc: Add push-to-adapter support to sli4 + - scsi: lpfc: Add PCI Ids for if_type=6 hardware + - scsi: lpfc: Add 64G link speed support + - scsi: lpfc: Add if_type=6 support for cycling valid bits + - scsi: lpfc: Enable fw download on if_type=6 devices + - scsi: lpfc: Add embedded data pointers for enhanced performance + - scsi: lpfc: Fix nvme embedded io length on new hardware + - scsi: lpfc: Work around NVME cmd iu SGL type + - scsi: lpfc: update driver version to 12.0.0.0 + - scsi: lpfc: Change Copyright of 12.0.0.0 modified files to 2018 + - scsi: lpfc: use __raw_writeX on DPP copies + - scsi: lpfc: Add missing unlock in WQ full logic + * CVE-2018-8043 + - net: phy: mdio-bcm-unimac: fix potential NULL dereference in + unimac_mdio_probe() + * Bionic update to 4.15.10 stable release (LP: #1756100) + - Revert "UBUNTU: SAUCE: ALSA: hda/realtek - Add support headset mode for DELL + WYSE" + - RDMA/ucma: Limit possible option size + - RDMA/ucma: Check that user doesn't overflow QP state + - RDMA/mlx5: Fix integer overflow while resizing CQ + - bpf: cpumap: use GFP_KERNEL instead of GFP_ATOMIC in __cpu_map_entry_alloc() + - IB/uverbs: Improve lockdep_check + - mac80211_hwsim: don't use WQ_MEM_RECLAIM + - net/smc: fix NULL pointer dereference on sock_create_kern() error path + - regulator: stm32-vrefbuf: fix check on ready flag + - drm/i915: Check for fused or unused pipes + - drm/i915/audio: fix check for av_enc_map overflow + - drm/i915: Fix rsvd2 mask when out-fence is returned + - drm/i915: Clear the in-use marker on execbuf failure + - drm/i915: Disable DC states around GMBUS on GLK + - drm/i915: Update watermark state correctly in sanitize_watermarks + - drm/i915: Try EDID bitbanging on HDMI after failed read + - drm/i915/perf: fix perf stream opening lock + - scsi: core: Avoid that ATA error handling can trigger a kernel hang or oops + - scsi: qla2xxx: Fix NULL pointer crash due to active timer for ABTS + - drm/i915: Always call to intel_display_set_init_power() in resume_early. + - workqueue: Allow retrieval of current task's work struct + - drm: Allow determining if current task is output poll worker + - drm/nouveau: Fix deadlock on runtime suspend + - drm/radeon: Fix deadlock on runtime suspend + - drm/amdgpu: Fix deadlock on runtime suspend + - drm/nouveau: prefer XBGR2101010 for addfb ioctl + - drm/amd/powerplay/smu7: allow mclk switching with no displays + - drm/amd/powerplay/vega10: allow mclk switching with no displays + - Revert "drm/radeon/pm: autoswitch power state when in balanced mode" + - drm/amd/display: check for ipp before calling cursor operations + - drm/radeon: insist on 32-bit DMA for Cedar on PPC64/PPC64LE + - drm/amd/powerplay: fix power over limit on Fiji + - drm/amd/display: Default HDMI6G support to true. Log VBIOS table error. + - drm/amdgpu: used cached pcie gen info for SI (v2) + - drm/amdgpu: Notify sbios device ready before send request + - drm/radeon: fix KV harvesting + - drm/amdgpu: fix KV harvesting + - drm/amdgpu:Correct max uvd handles + - drm/amdgpu:Always save uvd vcpu_bo in VM Mode + - ovl: redirect_dir=nofollow should not follow redirect for opaque lower + - MIPS: BMIPS: Do not mask IPIs during suspend + - MIPS: ath25: Check for kzalloc allocation failure + - MIPS: OCTEON: irq: Check for null return on kzalloc allocation + - PCI: dwc: Fix enumeration end when reaching root subordinate + - Input: matrix_keypad - fix race when disabling interrupts + - Revert "Input: synaptics - Lenovo Thinkpad T460p devices should use RMI" + - bug: use %pB in BUG and stack protector failure + - lib/bug.c: exclude non-BUG/WARN exceptions from report_bug() + - mm/memblock.c: hardcode the end_pfn being -1 + - Documentation/sphinx: Fix Directive import error + - loop: Fix lost writes caused by missing flag + - virtio_ring: fix num_free handling in error case + - KVM: s390: fix memory overwrites when not using SCA entries + - arm64: mm: fix thinko in non-global page table attribute check + - IB/core: Fix missing RDMA cgroups release in case of failure to register + device + - Revert "nvme: create 'slaves' and 'holders' entries for hidden controllers" + - kbuild: Handle builtin dtb file names containing hyphens + - dm bufio: avoid false-positive Wmaybe-uninitialized warning + - IB/mlx5: Fix incorrect size of klms in the memory region + - bcache: fix crashes in duplicate cache device register + - bcache: don't attach backing with duplicate UUID + - x86/MCE: Save microcode revision in machine check records + - x86/MCE: Serialize sysfs changes + - perf tools: Fix trigger class trigger_on() + - x86/spectre_v2: Don't check microcode versions when running under + hypervisors + - ALSA: hda/realtek - Add support headset mode for DELL WYSE + - ALSA: hda/realtek - Add headset mode support for Dell laptop + - ALSA: hda/realtek: Limit mic boost on T480 + - ALSA: hda/realtek - Fix dock line-out volume on Dell Precision 7520 + - ALSA: hda/realtek - Make dock sound work on ThinkPad L570 + - ALSA: seq: More protection for concurrent write and ioctl races + - ALSA: hda: add dock and led support for HP EliteBook 820 G3 + - ALSA: hda: add dock and led support for HP ProBook 640 G2 + - scsi: qla2xxx: Fix NULL pointer crash due to probe failure + - scsi: qla2xxx: Fix recursion while sending terminate exchange + - dt-bindings: Document mti,mips-cpc binding + - MIPS: CPC: Map registers using DT in mips_cpc_default_phys_base() + - nospec: Kill array_index_nospec_mask_check() + - nospec: Include dependency + - x86/entry: Reduce the code footprint of the 'idtentry' macro + - x86/entry/64: Use 'xorl' for faster register clearing + - x86/mm: Remove stale comment about KMEMCHECK + - x86/asm: Improve how GEN_*_SUFFIXED_RMWcc() specify clobbers + - x86/IO-APIC: Avoid warning in 32-bit builds + - x86/LDT: Avoid warning in 32-bit builds with older gcc + - x86-64/realmode: Add instruction suffix + - Revert "x86/retpoline: Simplify vmexit_fill_RSB()" + - x86/speculation: Use IBRS if available before calling into firmware + - x86/retpoline: Support retpoline builds with Clang + - x86/speculation, objtool: Annotate indirect calls/jumps for objtool + - x86/speculation: Move firmware_restrict_branch_speculation_*() from C to CPP + - x86/paravirt, objtool: Annotate indirect calls + - x86/boot, objtool: Annotate indirect jump in secondary_startup_64() + - x86/mm/sme, objtool: Annotate indirect call in sme_encrypt_execute() + - objtool: Use existing global variables for options + - objtool: Add retpoline validation + - objtool: Add module specific retpoline rules + - objtool, retpolines: Integrate objtool with retpoline support more closely + - objtool: Fix another switch table detection issue + - objtool: Fix 32-bit build + - x86/kprobes: Fix kernel crash when probing .entry_trampoline code + - watchdog: hpwdt: SMBIOS check + - watchdog: hpwdt: Check source of NMI + - watchdog: hpwdt: fix unused variable warning + - watchdog: hpwdt: Remove legacy NMI sourcing. + - netfilter: add back stackpointer size checks + - netfilter: ipt_CLUSTERIP: fix a race condition of proc file creation + - netfilter: xt_hashlimit: fix lock imbalance + - netfilter: x_tables: fix missing timer initialization in xt_LED + - netfilter: nat: cope with negative port range + - netfilter: IDLETIMER: be syzkaller friendly + - netfilter: ebtables: CONFIG_COMPAT: don't trust userland offsets + - netfilter: bridge: ebt_among: add missing match size checks + - netfilter: ipv6: fix use-after-free Write in nf_nat_ipv6_manip_pkt + - netfilter: use skb_to_full_sk in ip6_route_me_harder + - tpm_tis: Move ilb_base_addr to tpm_tis_data + - tpm: Keep CLKRUN enabled throughout the duration of transmit_cmd() + - tpm: delete the TPM_TIS_CLK_ENABLE flag + - tpm: remove unused variables + - tpm: only attempt to disable the LPC CLKRUN if is already enabled + - x86/xen: Calculate __max_logical_packages on PV domains + - scsi: qla2xxx: Fix system crash for Notify ack timeout handling + - scsi: qla2xxx: Fix gpnid error processing + - scsi: qla2xxx: Move session delete to driver work queue + - scsi: qla2xxx: Skip IRQ affinity for Target QPairs + - scsi: qla2xxx: Fix re-login for Nport Handle in use + - scsi: qla2xxx: Retry switch command on time out + - scsi: qla2xxx: Serialize GPNID for multiple RSCN + - scsi: qla2xxx: Fix login state machine stuck at GPDB + - scsi: qla2xxx: Fix NPIV host cleanup in target mode + - scsi: qla2xxx: Relogin to target port on a cable swap + - scsi: qla2xxx: Fix Relogin being triggered too fast + - scsi: qla2xxx: Fix PRLI state check + - scsi: qla2xxx: Fix abort command deadlock due to spinlock + - scsi: qla2xxx: Replace fcport alloc with qla2x00_alloc_fcport + - scsi: qla2xxx: Fix scan state field for fcport + - scsi: qla2xxx: Clear loop id after delete + - scsi: qla2xxx: Defer processing of GS IOCB calls + - scsi: qla2xxx: Remove aborting ELS IOCB call issued as part of timeout. + - scsi: qla2xxx: Fix system crash in qlt_plogi_ack_unref + - scsi: qla2xxx: Fix memory leak in dual/target mode + - NFS: Fix an incorrect type in struct nfs_direct_req + - pNFS: Prevent the layout header refcount going to zero in pnfs_roc() + - NFS: Fix unstable write completion + - Linux 4.15.10 + * Bionic update to 4.15.10 stable release (LP: #1756100) // CVE-2018-1000004. + - ALSA: seq: Don't allow resizing pool in use + * nfp: prioritize stats updates (LP: #1752061) + - nfp: flower: prioritize stats updates + * Ubuntu 18.04 - Kernel crash on nvme subsystem-reset /dev/nvme0 (Bolt / NVMe) + (LP: #1753371) + - nvme-pci: Fix EEH failure on ppc + * sbsa watchdog crashes thunderx2 system (LP: #1755595) + - watchdog: sbsa: use 32-bit read for WCV + * KVM: s390: add vcpu stat counters for many instruction (LP: #1755132) + - KVM: s390: diagnoses are instructions as well + - KVM: s390: add vcpu stat counters for many instruction + * CIFS SMB2/SMB3 does not work for domain based DFS (LP: #1747572) + - CIFS: make IPC a regular tcon + - CIFS: use tcon_ipc instead of use_ipc parameter of SMB2_ioctl + - CIFS: dump IPC tcon in debug proc file + * i2c-thunderx: erroneous error message "unhandled state: 0" (LP: #1754076) + - i2c: octeon: Prevent error message on bus error + * Boston-LC:bos1u1: Stress test on Qlogic Fibre Channel on Ubuntu KVM guest + that caused KVM host crashed in qlt_free_session_done call (LP: #1750441) + - scsi: qla2xxx: Fix memory corruption during hba reset test + * Ubuntu 18.04 - Performance: Radix page fault handler bug in KVM + (LP: #1752236) + - KVM: PPC: Book3S HV: Fix handling of large pages in radix page fault handler + * Fix ARC hit rate (LP: #1755158) + - SAUCE: Fix ARC hit rate (LP: #1755158) + * Bionic update to 4.15.9 stable release (LP: #1755275) + - bpf: fix mlock precharge on arraymaps + - bpf: fix memory leak in lpm_trie map_free callback function + - bpf: fix rcu lockdep warning for lpm_trie map_free callback + - bpf, x64: implement retpoline for tail call + - bpf, arm64: fix out of bounds access in tail call + - bpf: add schedule points in percpu arrays management + - bpf: allow xadd only on aligned memory + - bpf, ppc64: fix out of bounds access in tail call + - scsi: mpt3sas: fix oops in error handlers after shutdown/unload + - scsi: mpt3sas: wait for and flush running commands on shutdown/unload + - KVM: x86: fix backward migration with async_PF + - Linux 4.15.9 + * Bionic update to 4.15.8 stable release (LP: #1755179) + - hrtimer: Ensure POSIX compliance (relative CLOCK_REALTIME hrtimers) + - ipmi_si: Fix error handling of platform device + - platform/x86: dell-laptop: Allocate buffer on heap rather than globally + - powerpc/pseries: Enable RAS hotplug events later + - Bluetooth: btusb: Use DMI matching for QCA reset_resume quirking + - ixgbe: fix crash in build_skb Rx code path + - tpm: st33zp24: fix potential buffer overruns caused by bit glitches on the + bus + - tpm: fix potential buffer overruns caused by bit glitches on the bus + - tpm_i2c_infineon: fix potential buffer overruns caused by bit glitches on + the bus + - tpm_i2c_nuvoton: fix potential buffer overruns caused by bit glitches on the + bus + - tpm_tis: fix potential buffer overruns caused by bit glitches on the bus + - ALSA: usb-audio: Add a quirck for B&W PX headphones + - ALSA: control: Fix memory corruption risk in snd_ctl_elem_read + - ALSA: x86: Fix missing spinlock and mutex initializations + - ALSA: hda: Add a power_save blacklist + - ALSA: hda - Fix pincfg at resume on Lenovo T470 dock + - mmc: sdhci-pci: Fix S0i3 for Intel BYT-based controllers + - mmc: dw_mmc-k3: Fix out-of-bounds access through DT alias + - mmc: dw_mmc: Avoid accessing registers in runtime suspended state + - mmc: dw_mmc: Factor out dw_mci_init_slot_caps + - mmc: dw_mmc: Fix out-of-bounds access for slot's caps + - timers: Forward timer base before migrating timers + - parisc: Use cr16 interval timers unconditionally on qemu + - parisc: Reduce irq overhead when run in qemu + - parisc: Fix ordering of cache and TLB flushes + - parisc: Hide virtual kernel memory layout + - btrfs: use proper endianness accessors for super_copy + - block: fix the count of PGPGOUT for WRITE_SAME + - block: kyber: fix domain token leak during requeue + - block: pass inclusive 'lend' parameter to truncate_inode_pages_range + - vfio: disable filesystem-dax page pinning + - cpufreq: s3c24xx: Fix broken s3c_cpufreq_init() + - dax: fix vma_is_fsdax() helper + - direct-io: Fix sleep in atomic due to sync AIO + - x86/xen: Zero MSR_IA32_SPEC_CTRL before suspend + - x86/platform/intel-mid: Handle Intel Edison reboot correctly + - x86/cpu_entry_area: Sync cpu_entry_area to initial_page_table + - bridge: check brport attr show in brport_show + - fib_semantics: Don't match route with mismatching tclassid + - hdlc_ppp: carrier detect ok, don't turn off negotiation + - ipv6 sit: work around bogus gcc-8 -Wrestrict warning + - net: amd-xgbe: fix comparison to bitshift when dealing with a mask + - net: ethernet: ti: cpsw: fix net watchdog timeout + - net: fix race on decreasing number of TX queues + - net: ipv4: don't allow setting net.ipv4.route.min_pmtu below 68 + - netlink: ensure to loop over all netns in genlmsg_multicast_allns() + - net: sched: report if filter is too large to dump + - ppp: prevent unregistered channels from connecting to PPP units + - sctp: verify size of a new chunk in _sctp_make_chunk() + - udplite: fix partial checksum initialization + - net/mlx5e: Fix TCP checksum in LRO buffers + - sctp: fix dst refcnt leak in sctp_v4_get_dst + - mlxsw: spectrum_switchdev: Check success of FDB add operation + - net/mlx5e: Specify numa node when allocating drop rq + - net: phy: fix phy_start to consider PHY_IGNORE_INTERRUPT + - tcp: Honor the eor bit in tcp_mtu_probe + - rxrpc: Fix send in rxrpc_send_data_packet() + - tcp_bbr: better deal with suboptimal GSO + - doc: Change the min default value of tcp_wmem/tcp_rmem. + - net/mlx5e: Fix loopback self test when GRO is off + - net_sched: gen_estimator: fix broken estimators based on percpu stats + - net/sched: cls_u32: fix cls_u32 on filter replace + - sctp: do not pr_err for the duplicated node in transport rhlist + - mlxsw: spectrum_router: Fix error path in mlxsw_sp_vr_create + - net: ipv4: Set addr_type in hash_keys for forwarded case + - sctp: fix dst refcnt leak in sctp_v6_get_dst() + - bridge: Fix VLAN reference count problem + - net/mlx5e: Verify inline header size do not exceed SKB linear size + - tls: Use correct sk->sk_prot for IPV6 + - amd-xgbe: Restore PCI interrupt enablement setting on resume + - cls_u32: fix use after free in u32_destroy_key() + - mlxsw: spectrum_router: Do not unconditionally clear route offload + indication + - netlink: put module reference if dump start fails + - tcp: purge write queue upon RST + - tuntap: correctly add the missing XDP flush + - tuntap: disable preemption during XDP processing + - virtio-net: disable NAPI only when enabled during XDP set + - cxgb4: fix trailing zero in CIM LA dump + - net/mlx5: Fix error handling when adding flow rules + - net: phy: Restore phy_resume() locking assumption + - tcp: tracepoint: only call trace_tcp_send_reset with full socket + - l2tp: don't use inet_shutdown on tunnel destroy + - l2tp: don't use inet_shutdown on ppp session destroy + - l2tp: fix races with tunnel socket close + - l2tp: fix race in pppol2tp_release with session object destroy + - l2tp: fix tunnel lookup use-after-free race + - s390/qeth: fix underestimated count of buffer elements + - s390/qeth: fix SETIP command handling + - s390/qeth: fix overestimated count of buffer elements + - s390/qeth: fix IP removal on offline cards + - s390/qeth: fix double-free on IP add/remove race + - Revert "s390/qeth: fix using of ref counter for rxip addresses" + - s390/qeth: fix IP address lookup for L3 devices + - s390/qeth: fix IPA command submission race + - tcp: revert F-RTO middle-box workaround + - tcp: revert F-RTO extension to detect more spurious timeouts + - blk-mq: don't call io sched's .requeue_request when requeueing rq to + ->dispatch + - media: m88ds3103: don't call a non-initalized function + - EDAC, sb_edac: Fix out of bound writes during DIMM configuration on KNL + - KVM: s390: take care of clock-comparator sign control + - KVM: s390: provide only a single function for setting the tod (fix SCK) + - KVM: s390: consider epoch index on hotplugged CPUs + - KVM: s390: consider epoch index on TOD clock syncs + - nospec: Allow index argument to have const-qualified type + - x86/mm: Fix {pmd,pud}_{set,clear}_flags() + - ARM: orion: fix orion_ge00_switch_board_info initialization + - ARM: dts: rockchip: Remove 1.8 GHz operation point from phycore som + - ARM: mvebu: Fix broken PL310_ERRATA_753970 selects + - ARM: kvm: fix building with gcc-8 + - KVM: X86: Fix SMRAM accessing even if VM is shutdown + - KVM: mmu: Fix overlap between public and private memslots + - KVM/x86: Remove indirect MSR op calls from SPEC_CTRL + - KVM: x86: move LAPIC initialization after VMCS creation + - KVM/VMX: Optimize vmx_vcpu_run() and svm_vcpu_run() by marking the RDMSR + path as unlikely() + - KVM: x86: fix vcpu initialization with userspace lapic + - KVM/x86: remove WARN_ON() for when vm_munmap() fails + - ACPI / bus: Parse tables as term_list for Dell XPS 9570 and Precision M5530 + - ARM: dts: LogicPD SOM-LV: Fix I2C1 pinmux + - ARM: dts: LogicPD Torpedo: Fix I2C1 pinmux + - powerpc/64s/radix: Boot-time NULL pointer protection using a guard-PID + - md: only allow remove_and_add_spares when no sync_thread running. + - platform/x86: dell-laptop: fix kbd_get_state's request value + - Linux 4.15.8 + * ZFS setgid broken on 0.7 (LP: #1753288) + - SAUCE: Fix ZFS setgid + * /proc/kallsyms prints "(null)" for null addresses in 4.15 (LP: #1754297) + - vsprintf: avoid misleading "(null)" for %px + * Miscellaneous Ubuntu changes + - d-i: Add netsec to nic-modules + - [Config] fix up retpoline abi files + - [Config] set NOBP and expoline options for s390 + + [ Ubuntu: 4.15.0-12.13 ] + + * linux: 4.15.0-12.13 -proposed tracker (LP: #1754059) + * CONFIG_EFI=y on armhf (LP: #1726362) + - [Config] CONFIG_EFI=y on armhf, reconcile secureboot EFI settings + * ppc64el: Support firmware disable of RFI flush (LP: #1751994) + - powerpc/pseries: Support firmware disable of RFI flush + - powerpc/powernv: Support firmware disable of RFI flush + * [Feature] CFL/CNL (PCH:CNP-H): New GPIO Commit added (GPIO Driver needed) + (LP: #1751714) + - gpio / ACPI: Drop unnecessary ACPI GPIO to Linux GPIO translation + - pinctrl: intel: Allow custom GPIO base for pad groups + - pinctrl: cannonlake: Align GPIO number space with Windows + * [Feature] Add xHCI debug device support in the driver (LP: #1730832) + - usb: xhci: Make some static functions global + - usb: xhci: Add DbC support in xHCI driver + - [Config] USB_XHCI_DBGCAP=y for commit mainline dfba2174dc42. + * [SRU] Lenovo E41 Mic mute hotkey is not responding (LP: #1753347) + - platform/x86: ideapad-laptop: Increase timeout to wait for EC answer + * headset mic can't be detected on two Dell machines (LP: #1748807) + - ALSA: hda - Fix a wrong FIXUP for alc289 on Dell machines + * hisi_sas: Add disk LED support (LP: #1752695) + - scsi: hisi_sas: directly attached disk LED feature for v2 hw + * [Feature] [Graphics]Whiskey Lake (Coffelake-U 4+2) new PCI Device ID adds + (LP: #1742561) + - drm/i915/cfl: Adding more Coffee Lake PCI IDs. + * [Bug] [USB Function][CFL-CNL PCH]Stall Error and USB Transaction Error in + trace, Disable of device-initiated U1/U2 failed and rebind failed: -517 + during suspend/resume with usb storage. (LP: #1730599) + - usb: Don't print a warning if interface driver rebind is deferred at resume + * retpoline: ignore %cs:0xNNN constant indirections (LP: #1752655) + - [Packaging] retpoline -- elide %cs:0xNNNN constants on i386 + - [Config] retpoline -- clean up i386 retpoline files + * hisilicon hibmc regression due to ea642c3216cb ("drm/ttm: add io_mem_pfn + callback") (LP: #1738334) + - drm/ttm: add ttm_bo_io_mem_pfn to check io_mem_pfn + * [Asus UX360UA] battery status in unity-panel is not changing when battery is + being charged (LP: #1661876) // AC adapter status not detected on Asus + ZenBook UX410UAK (LP: #1745032) + - ACPI / battery: Add quirk for Asus UX360UA and UX410UAK + * ASUS UX305LA - Battery state not detected correctly (LP: #1482390) + - ACPI / battery: Add quirk for Asus GL502VSK and UX305LA + * [18.04 FEAT] Automatically detect layer2 setting in the qeth device driver + (LP: #1747639) + - s390/diag: add diag26c support for VNIC info + - s390/qeth: support early setup for z/VM NICs + * Bionic update to v4.15.7 stable release (LP: #1752317) + - netfilter: drop outermost socket lock in getsockopt() + - arm64: mm: don't write garbage into TTBR1_EL1 register + - kconfig.h: Include compiler types to avoid missed struct attributes + - MIPS: boot: Define __ASSEMBLY__ for its.S build + - xtensa: fix high memory/reserved memory collision + - scsi: ibmvfc: fix misdefined reserved field in ibmvfc_fcp_rsp_info + - MIPS: Drop spurious __unused in struct compat_flock + - cfg80211: fix cfg80211_beacon_dup + - i2c: designware: must wait for enable + - i2c: bcm2835: Set up the rising/falling edge delays + - X.509: fix BUG_ON() when hash algorithm is unsupported + - X.509: fix NULL dereference when restricting key with unsupported_sig + - PKCS#7: fix certificate chain verification + - PKCS#7: fix certificate blacklisting + - extcon: int3496: process id-pin first so that we start with the right status + - genirq/matrix: Handle CPU offlining proper + - RDMA/uverbs: Protect from races between lookup and destroy of uobjects + - RDMA/uverbs: Protect from command mask overflow + - RDMA/uverbs: Fix bad unlock balance in ib_uverbs_close_xrcd + - RDMA/uverbs: Fix circular locking dependency + - RDMA/uverbs: Sanitize user entered port numbers prior to access it + - iio: adc: stm32: fix stm32h7_adc_enable error handling + - iio: srf08: fix link error "devm_iio_triggered_buffer_setup" undefined + - iio: buffer: check if a buffer has been set up when poll is called + - iio: adis_lib: Initialize trigger before requesting interrupt + - Kbuild: always define endianess in kconfig.h + - x86/apic/vector: Handle vector release on CPU unplug correctly + - x86/oprofile: Fix bogus GCC-8 warning in nmi_setup() + - mm, swap, frontswap: fix THP swap if frontswap enabled + - mm: don't defer struct page initialization for Xen pv guests + - uapi/if_ether.h: move __UAPI_DEF_ETHHDR libc define + - irqchip/gic-v3: Use wmb() instead of smb_wmb() in gic_raise_softirq() + - irqchip/mips-gic: Avoid spuriously handling masked interrupts + - PCI/cxgb4: Extend T3 PCI quirk to T4+ devices + - net: thunderbolt: Tear down connection properly on suspend + - net: thunderbolt: Run disconnect flow asynchronously when logout is received + - ohci-hcd: Fix race condition caused by ohci_urb_enqueue() and + io_watchdog_func() + - usb: ohci: Proper handling of ed_rm_list to handle race condition between + usb_kill_urb() and finish_unlinks() + - arm64: Remove unimplemented syscall log message + - arm64: Disable unhandled signal log messages by default + - arm64: cpufeature: Fix CTR_EL0 field definitions + - Add delay-init quirk for Corsair K70 RGB keyboards + - usb: host: ehci: use correct device pointer for dma ops + - usb: dwc3: gadget: Set maxpacket size for ep0 IN + - usb: dwc3: ep0: Reset TRB counter for ep0 IN + - usb: phy: mxs: Fix NULL pointer dereference on i.MX23/28 + - usb: ldusb: add PIDs for new CASSY devices supported by this driver + - Revert "usb: musb: host: don't start next rx urb if current one failed" + - usb: gadget: f_fs: Process all descriptors during bind + - usb: gadget: f_fs: Use config_ep_by_speed() + - usb: renesas_usbhs: missed the "running" flag in usb_dmac with rx path + - drm/cirrus: Load lut in crtc_commit + - drm/atomic: Fix memleak on ERESTARTSYS during non-blocking commits + - drm: Handle unexpected holes in color-eviction + - drm/amdgpu: disable MMHUB power gating on raven + - drm/amdgpu: fix VA hole handling on Vega10 v3 + - drm/amdgpu: Add dpm quirk for Jet PRO (v2) + - drm/amdgpu: only check mmBIF_IOV_FUNC_IDENTIFIER on tonga/fiji + - drm/amdgpu: Avoid leaking PM domain on driver unbind (v2) + - drm/amdgpu: add new device to use atpx quirk + - arm64: __show_regs: Only resolve kernel symbols when running at EL1 + - drm/i915/breadcrumbs: Ignore unsubmitted signalers + - microblaze: fix endian handling + - Linux 4.15.7 + * [regression] Colour banding and artefacts appear system-wide on an Asus + Zenbook UX303LA with Intel HD 4400 graphics (LP: #1749420) // Bionic update + to v4.15.7 stable release (LP: #1752317) + - drm/edid: Add 6 bpc quirk for CPT panel in Asus UX303LA + * errors with sas hotplug (LP: #1752146) + - scsi: libsas: fix memory leak in sas_smp_get_phy_events() + - scsi: libsas: fix error when getting phy events + - scsi: libsas: initialize sas_phy status according to response of DISCOVER + - scsi: libsas: Use dynamic alloced work to avoid sas event lost + - scsi: libsas: shut down the PHY if events reached the threshold + - scsi: libsas: make the event threshold configurable + - scsi: libsas: Use new workqueue to run sas event and disco event + - scsi: libsas: use flush_workqueue to process disco events synchronously + - scsi: libsas: direct call probe and destruct + - scsi: libsas: notify event PORTE_BROADCAST_RCVD in sas_enable_revalidation() + * rtnetlink: enable namespace identifying properties in rtnetlink requests + (LP: #1748232) + - rtnetlink: enable IFLA_IF_NETNSID in do_setlink() + - rtnetlink: enable IFLA_IF_NETNSID for RTM_SETLINK + - rtnetlink: enable IFLA_IF_NETNSID for RTM_DELLINK + - rtnetlink: enable IFLA_IF_NETNSID for RTM_NEWLINK + - rtnetlink: remove check for IFLA_IF_NETNSID + - rtnetlink: require unique netns identifier + * Bionic update to v4.15.6 stable release (LP: #1752119) + - tun: fix tun_napi_alloc_frags() frag allocator + - ptr_ring: fail early if queue occupies more than KMALLOC_MAX_SIZE + - ptr_ring: try vmalloc() when kmalloc() fails + - selinux: ensure the context is NUL terminated in + security_context_to_sid_core() + - selinux: skip bounded transition processing if the policy isn't loaded + - media: pvrusb2: properly check endpoint types + - crypto: x86/twofish-3way - Fix %rbp usage + - staging: android: ion: Add __GFP_NOWARN for system contig heap + - staging: android: ion: Switch from WARN to pr_warn + - blk_rq_map_user_iov: fix error override + - KVM: x86: fix escape of guest dr6 to the host + - kcov: detect double association with a single task + - netfilter: x_tables: fix int overflow in xt_alloc_table_info() + - netfilter: x_tables: avoid out-of-bounds reads in + xt_request_find_{match|target} + - netfilter: ipt_CLUSTERIP: fix out-of-bounds accesses in clusterip_tg_check() + - netfilter: on sockopt() acquire sock lock only in the required scope + - netfilter: xt_cgroup: initialize info->priv in cgroup_mt_check_v1() + - netfilter: xt_RATEEST: acquire xt_rateest_mutex for hash insert + - rds: tcp: correctly sequence cleanup on netns deletion. + - rds: tcp: atomically purge entries from rds_tcp_conn_list during netns + delete + - net: avoid skb_warn_bad_offload on IS_ERR + - net_sched: gen_estimator: fix lockdep splat + - soc: qcom: rmtfs_mem: add missing MODULE_DESCRIPTION/AUTHOR/LICENSE + - ASoC: ux500: add MODULE_LICENSE tag + - video: fbdev/mmp: add MODULE_LICENSE + - ARM: 8743/1: bL_switcher: add MODULE_LICENSE tag + - arm64: dts: add #cooling-cells to CPU nodes + - dn_getsockoptdecnet: move nf_{get/set}sockopt outside sock lock + - ANDROID: binder: remove WARN() for redundant txn error + - ANDROID: binder: synchronize_rcu() when using POLLFREE. + - staging: android: ashmem: Fix a race condition in pin ioctls + - binder: check for binder_thread allocation failure in binder_poll() + - binder: replace "%p" with "%pK" + - staging: fsl-mc: fix build testing on x86 + - staging: iio: adc: ad7192: fix external frequency setting + - staging: iio: ad5933: switch buffer mode to software + - xhci: Fix NULL pointer in xhci debugfs + - xhci: Fix xhci debugfs devices node disappearance after hibernation + - xhci: xhci debugfs device nodes weren't removed after device plugged out + - xhci: fix xhci debugfs errors in xhci_stop + - usbip: keep usbip_device sockfd state in sync with tcp_socket + - crypto: s5p-sss - Fix kernel Oops in AES-ECB mode + - mei: me: add cannon point device ids + - mei: me: add cannon point device ids for 4th device + - vmalloc: fix __GFP_HIGHMEM usage for vmalloc_32 on 32b systems + - Linux 4.15.6 + * Unable to insert test_bpf module on Bionic s390x (LP: #1751234) + - bpf: fix selftests/bpf test_kmod.sh failure when CONFIG_BPF_JIT_ALWAYS_ON=y + * [Ubuntu 18.04 FEAT] OpenCAPI enabling (LP: #1746988) + - powerpc/powernv: Introduce new PHB type for opencapi links + - powerpc/powernv: Set correct configuration space size for opencapi devices + - powerpc/powernv: Add opal calls for opencapi + - powerpc/powernv: Add platform-specific services for opencapi + - powerpc/powernv: Capture actag information for the device + - ocxl: Driver code for 'generic' opencapi devices + - ocxl: Add AFU interrupt support + - ocxl: Add a kernel API for other opencapi drivers + - ocxl: Add trace points + - ocxl: Add Makefile and Kconfig + - [Config] CONFIG_OCXL=m for ppc64el + - cxl: Remove support for "Processing accelerators" class + - ocxl: Documentation + - ocxl: add MAINTAINERS entry + - cxl: Add support for ASB_Notify on POWER9 + * Request to update 18.04 kernel aacraid to upstream 4.16 version + (LP: #1746801) + - scsi: aacraid: remove unused variable managed_request_id + - scsi: aacraid: Do not attempt abort when Fw panicked + - scsi: aacraid: Do not remove offlined devices + - scsi: aacraid: Fix ioctl reset hang + - scsi: aacraid: Allow reset_host sysfs var to recover Panicked Fw + - scsi: aacraid: Refactor reset_host store function + - scsi: aacraid: Move code to wait for IO completion to shutdown func + - scsi: aacraid: Create bmic submission function from bmic identify + - scsi: aacraid: Change phy luns function to use common bmic function + - scsi: aacraid: Refactor and rename to make mirror existing changes + - scsi: aacraid: Add target setup helper function + - scsi: aacraid: Untangle targets setup from report phy luns + - scsi: aacraid: Move function around to match existing code + - scsi: aacraid: Create helper functions to get lun info + - scsi: aacraid: Save bmic phy information for each phy + - scsi: aacraid: Add helper function to set queue depth + - scsi: aacraid: Merge func to get container information + - scsi: aacraid: Process hba and container hot plug events in single function + - scsi: aacraid: Added macros to help loop through known buses and targets + - scsi: aacraid: Refactor resolve luns code and scsi functions + - scsi: aacraid: Merge adapter setup with resolve luns + - scsi: aacraid: Block concurrent hotplug event handling + - scsi: aacraid: Use hotplug handling function in place of scsi_scan_host + - scsi: aacraid: Reschedule host scan in case of failure + - scsi: aacraid: Fix hang while scanning in eh recovery + - scsi: aacraid: Skip schedule rescan in case of kdump + - scsi: aacraid: Remove unused rescan variable + - scsi: aacraid: Remove AAC_HIDE_DISK check in queue command + - scsi: aacraid: Update driver version to 50877 + - scsi: aacraid: Fix driver oops with dead battery + - scsi: aacraid: remove redundant setting of variable c + - scsi: aacraid: Get correct lun count + - scsi: aacraid: Delay for rescan worker needs to be 10 seconds + * [18.04] kpatch - Add livepatch hook support for ppc64le (LP: #1741992) + - powerpc/modules: Add REL24 relocation support of livepatch symbols + - powerpc/modules: Don't try to restore r2 after a sibling call + - powerpc/modules: Improve restore_r2() error message + * Ubuntu 18.04 - Include latest ibmvnic fixes in Ubuntu kernel (LP: #1748517) + - ibmvnic: Rename IBMVNIC_MAX_TX_QUEUES to IBMVNIC_MAX_QUEUES + - ibmvnic: Increase maximum number of RX/TX queues + - ibmvnic: Include header descriptor support for ARP packets + - ibmvnic: Don't handle RX interrupts when not up. + - ibmvnic: Wait for device response when changing MAC + - ibmvnic: fix firmware version when no firmware level has been provided by + the VIOS server + - ibmvnic: fix empty firmware version and errors cleanup + - ibmvnic: Fix rx queue cleanup for non-fatal resets + - ibmvnic: Ensure that buffers are NULL after free + - ibmvnic: queue reset when CRQ gets closed during reset + - ibmvnic: Reset long term map ID counter + - ibmvnic: Remove skb->protocol checks in ibmvnic_xmit + - ibmvnic: Wait until reset is complete to set carrier on + - ibmvnic: Fix login buffer memory leaks + - ibmvnic: Fix NAPI structures memory leak + - ibmvnic: Free RX socket buffer in case of adapter error + - ibmvnic: Clean RX pool buffers during device close + - ibmvnic: Check for NULL skb's in NAPI poll routine + - ibmvnic: Fix early release of login buffer + * Power9 DD 2.2 needs HMI fixup backport of upstream + patch(d075745d893c78730e4a3b7a60fca23c2f764081) into kernel (LP: #1751834) + - KVM: PPC: Book3S HV: Improve handling of debug-trigger HMIs on POWER9 + * Driver not found in Ubuntu kernel does not detect interface (LP: #1745927) + - d-i: add cxgb4 to nic-modules + * BCM5719/tg3 loses connectivity due to missing heartbeats between fw and + driver (LP: #1751337) + - tg3: APE heartbeat changes + * Miscellaneous Ubuntu changes + - ubuntu: vbox -- update to 5.2.6-dfsg-5 + - Revert "UBUNTU: SAUCE: Import aufs driver" + - SAUCE: Import aufs driver + - Revert "UBUNTU: SAUCE: (no-up) Convert bnx2x firmware files to ihex format" + - [Packaging] retpoline-extract: flag *0xNNN(%reg) branches + - [Config] fix up retpoline abi files + - ubuntu: vbox -- update to 5.2.8-dfsg-2 + + [ Ubuntu: 4.15.0-11.12 ] + + * linux: 4.15.0-11.12 -proposed tracker (LP: #1751285) + * Support low-pin-count devices on Hisilicon SoCs (LP: #1677319) + - [Config] CONFIG_INDIRECT_PIO=y + - SAUCE: LIB: Introduce a generic PIO mapping method + - SAUCE: PCI: Remove unused __weak attribute in pci_register_io_range() + - SAUCE: PCI: Add fwnode handler as input param of pci_register_io_range() + - SAUCE: PCI: Apply the new generic I/O management on PCI IO hosts + - SAUCE: OF: Add missing I/O range exception for indirect-IO devices + - [Config] CONFIG_HISILICON_LPC=y + - SAUCE: HISI LPC: Support the LPC host on Hip06/Hip07 with DT bindings + - SAUCE: ACPI / scan: do not enumerate Indirect IO host children + - SAUCE: HISI LPC: Add ACPI support + - SAUCE: MAINTAINERS: Add maintainer for HiSilicon LPC driver + * Bionic update to v4.15.5 stable release (LP: #1751131) + - scsi: smartpqi: allow static build ("built-in") + - IB/umad: Fix use of unprotected device pointer + - IB/qib: Fix comparison error with qperf compare/swap test + - IB/mlx4: Fix incorrectly releasing steerable UD QPs when have only ETH ports + - IB/core: Fix two kernel warnings triggered by rxe registration + - IB/core: Fix ib_wc structure size to remain in 64 bytes boundary + - IB/core: Avoid a potential OOPs for an unused optional parameter + - selftests: seccomp: fix compile error seccomp_bpf + - kselftest: fix OOM in memory compaction test + - RDMA/rxe: Fix a race condition related to the QP error state + - RDMA/rxe: Fix a race condition in rxe_requester() + - RDMA/rxe: Fix rxe_qp_cleanup() + - cpufreq: powernv: Dont assume distinct pstate values for nominal and pmin + - PM / devfreq: Propagate error from devfreq_add_device() + - mwifiex: resolve reset vs. remove()/shutdown() deadlocks + - ocfs2: try a blocking lock before return AOP_TRUNCATED_PAGE + - trace_uprobe: Display correct offset in uprobe_events + - powerpc/radix: Remove trace_tlbie call from radix__flush_tlb_all + - powerpc/kernel: Block interrupts when updating TIDR + - powerpc/vas: Don't set uses_vas for kernel windows + - powerpc/numa: Invalidate numa_cpu_lookup_table on cpu remove + - powerpc/mm: Flush radix process translations when setting MMU type + - powerpc/xive: Use hw CPU ids when configuring the CPU queues + - dma-buf: fix reservation_object_wait_timeout_rcu once more v2 + - s390: fix handling of -1 in set{,fs}[gu]id16 syscalls + - arm64: dts: msm8916: Correct ipc references for smsm + - ARM: lpc3250: fix uda1380 gpio numbers + - ARM: dts: STi: Add gpio polarity for "hdmi,hpd-gpio" property + - ARM: dts: nomadik: add interrupt-parent for clcd + - arm: dts: mt7623: fix card detection issue on bananapi-r2 + - arm: spear600: Add missing interrupt-parent of rtc + - arm: spear13xx: Fix dmas cells + - arm: spear13xx: Fix spics gpio controller's warning + - x86/gpu: add CFL to early quirks + - x86/kexec: Make kexec (mostly) work in 5-level paging mode + - x86/xen: init %gs very early to avoid page faults with stack protector + - x86: PM: Make APM idle driver initialize polling state + - mm, memory_hotplug: fix memmap initialization + - x86/entry/64: Clear extra registers beyond syscall arguments, to reduce + speculation attack surface + - x86/entry/64/compat: Clear registers for compat syscalls, to reduce + speculation attack surface + - compiler-gcc.h: Introduce __optimize function attribute + - compiler-gcc.h: __nostackprotector needs gcc-4.4 and up + - crypto: sun4i_ss_prng - fix return value of sun4i_ss_prng_generate + - crypto: sun4i_ss_prng - convert lock to _bh in sun4i_ss_prng_generate + - powerpc/mm/radix: Split linear mapping on hot-unplug + - x86/mm/pti: Fix PTI comment in entry_SYSCALL_64() + - x86/speculation: Update Speculation Control microcode blacklist + - x86/speculation: Correct Speculation Control microcode blacklist again + - Revert "x86/speculation: Simplify indirect_branch_prediction_barrier()" + - KVM/x86: Reduce retpoline performance impact in slot_handle_level_range(), + by always inlining iterator helper methods + - X86/nVMX: Properly set spec_ctrl and pred_cmd before merging MSRs + - KVM/nVMX: Set the CPU_BASED_USE_MSR_BITMAPS if we have a valid L02 MSR + bitmap + - x86/speculation: Clean up various Spectre related details + - PM / runtime: Update links_count also if !CONFIG_SRCU + - PM: cpuidle: Fix cpuidle_poll_state_init() prototype + - platform/x86: wmi: fix off-by-one write in wmi_dev_probe() + - x86/entry/64: Clear registers for exceptions/interrupts, to reduce + speculation attack surface + - x86/entry/64: Merge SAVE_C_REGS and SAVE_EXTRA_REGS, remove unused + extensions + - x86/entry/64: Merge the POP_C_REGS and POP_EXTRA_REGS macros into a single + POP_REGS macro + - x86/entry/64: Interleave XOR register clearing with PUSH instructions + - x86/entry/64: Introduce the PUSH_AND_CLEAN_REGS macro + - x86/entry/64: Use PUSH_AND_CLEAN_REGS in more cases + - x86/entry/64: Get rid of the ALLOC_PT_GPREGS_ON_STACK and + SAVE_AND_CLEAR_REGS macros + - x86/entry/64: Indent PUSH_AND_CLEAR_REGS and POP_REGS properly + - x86/entry/64: Fix paranoid_entry() frame pointer warning + - x86/entry/64: Remove the unused 'icebp' macro + - selftests/x86: Fix vDSO selftest segfault for vsyscall=none + - selftests/x86: Clean up and document sscanf() usage + - selftests/x86/pkeys: Remove unused functions + - selftests/x86: Fix build bug caused by the 5lvl test which has been moved to + the VM directory + - selftests/x86: Do not rely on "int $0x80" in test_mremap_vdso.c + - gfs2: Fixes to "Implement iomap for block_map" + - selftests/x86: Do not rely on "int $0x80" in single_step_syscall.c + - selftests/x86: Disable tests requiring 32-bit support on pure 64-bit systems + - objtool: Fix segfault in ignore_unreachable_insn() + - x86/debug, objtool: Annotate WARN()-related UD2 as reachable + - x86/debug: Use UD2 for WARN() + - x86/speculation: Fix up array_index_nospec_mask() asm constraint + - nospec: Move array_index_nospec() parameter checking into separate macro + - x86/speculation: Add dependency + - x86/mm: Rename flush_tlb_single() and flush_tlb_one() to + __flush_tlb_one_[user|kernel]() + - selftests/x86/mpx: Fix incorrect bounds with old _sigfault + - x86/cpu: Rename cpu_data.x86_mask to cpu_data.x86_stepping + - x86/spectre: Fix an error message + - x86/cpu: Change type of x86_cache_size variable to unsigned int + - x86/entry/64: Fix CR3 restore in paranoid_exit() + - drm/ttm: Don't add swapped BOs to swap-LRU list + - drm/ttm: Fix 'buf' pointer update in ttm_bo_vm_access_kmap() (v2) + - drm/qxl: unref cursor bo when finished with it + - drm/qxl: reapply cursor after resetting primary + - drm/amd/powerplay: Fix smu_table_entry.handle type + - drm/ast: Load lut in crtc_commit + - drm: Check for lessee in DROP_MASTER ioctl + - arm64: Add missing Falkor part number for branch predictor hardening + - drm/radeon: Add dpm quirk for Jet PRO (v2) + - drm/radeon: adjust tested variable + - x86/smpboot: Fix uncore_pci_remove() indexing bug when hot-removing a + physical CPU + - rtc-opal: Fix handling of firmware error codes, prevent busy loops + - mbcache: initialize entry->e_referenced in mb_cache_entry_create() + - mmc: sdhci: Implement an SDHCI-specific bounce buffer + - mmc: bcm2835: Don't overwrite max frequency unconditionally + - Revert "mmc: meson-gx: include tx phase in the tuning process" + - mlx5: fix mlx5_get_vector_affinity to start from completion vector 0 + - Revert "apple-gmux: lock iGP IO to protect from vgaarb changes" + - jbd2: fix sphinx kernel-doc build warnings + - ext4: fix a race in the ext4 shutdown path + - ext4: save error to disk in __ext4_grp_locked_error() + - ext4: correct documentation for grpid mount option + - mm: hide a #warning for COMPILE_TEST + - mm: Fix memory size alignment in devm_memremap_pages_release() + - MIPS: Fix typo BIG_ENDIAN to CPU_BIG_ENDIAN + - MIPS: CPS: Fix MIPS_ISA_LEVEL_RAW fallout + - MIPS: Fix incorrect mem=X@Y handling + - PCI: Disable MSI for HiSilicon Hip06/Hip07 only in Root Port mode + - PCI: iproc: Fix NULL pointer dereference for BCMA + - PCI: pciehp: Assume NoCompl+ for Thunderbolt ports + - PCI: keystone: Fix interrupt-controller-node lookup + - video: fbdev: atmel_lcdfb: fix display-timings lookup + - console/dummy: leave .con_font_get set to NULL + - rbd: whitelist RBD_FEATURE_OPERATIONS feature bit + - xen: Fix {set,clear}_foreign_p2m_mapping on autotranslating guests + - xenbus: track caller request id + - seq_file: fix incomplete reset on read from zero offset + - tracing: Fix parsing of globs with a wildcard at the beginning + - mpls, nospec: Sanitize array index in mpls_label_ok() + - rtlwifi: rtl8821ae: Fix connection lost problem correctly + - arm64: proc: Set PTE_NG for table entries to avoid traversing them twice + - xprtrdma: Fix calculation of ri_max_send_sges + - xprtrdma: Fix BUG after a device removal + - blk-wbt: account flush requests correctly + - target/iscsi: avoid NULL dereference in CHAP auth error path + - iscsi-target: make sure to wake up sleeping login worker + - dm: correctly handle chained bios in dec_pending() + - Btrfs: fix deadlock in run_delalloc_nocow + - Btrfs: fix crash due to not cleaning up tree log block's dirty bits + - Btrfs: fix extent state leak from tree log + - Btrfs: fix btrfs_evict_inode to handle abnormal inodes correctly + - Btrfs: fix use-after-free on root->orphan_block_rsv + - Btrfs: fix unexpected -EEXIST when creating new inode + - 9p/trans_virtio: discard zero-length reply + - mtd: nand: vf610: set correct ooblayout + - ALSA: usb-audio: Fix UAC2 get_ctl request with a RANGE attribute + - ALSA: hda/realtek - Add headset mode support for Dell laptop + - ALSA: hda/realtek - Enable Thinkpad Dock device for ALC298 platform + - ALSA: hda/realtek: PCI quirk for Fujitsu U7x7 + - ALSA: usb-audio: add implicit fb quirk for Behringer UFX1204 + - ALSA: usb: add more device quirks for USB DSD devices + - ALSA: seq: Fix racy pool initializations + - mvpp2: fix multicast address filter + - usb: Move USB_UHCI_BIG_ENDIAN_* out of USB_SUPPORT + - x86/mm, mm/hwpoison: Don't unconditionally unmap kernel 1:1 pages + - ARM: dts: exynos: fix RTC interrupt for exynos5410 + - ARM: pxa/tosa-bt: add MODULE_LICENSE tag + - arm64: dts: msm8916: Add missing #phy-cells + - ARM: dts: s5pv210: add interrupt-parent for ohci + - arm: dts: mt7623: Update ethsys binding + - arm: dts: mt2701: Add reset-cells + - ARM: dts: Delete bogus reference to the charlcd + - media: r820t: fix r820t_write_reg for KASAN + - mmc: sdhci-of-esdhc: fix eMMC couldn't work after kexec + - mmc: sdhci-of-esdhc: fix the mmc error after sleep on ls1046ardb + - Linux 4.15.5 + * retpoline abi files are empty on i386 (LP: #1751021) + - [Packaging] retpoline-extract -- instantiate retpoline files for i386 + - [Packaging] final-checks -- sanity checking ABI contents + - [Packaging] final-checks -- check for empty retpoline files + - [Config] Disable i386 retpoline check for next upload + * Bionic update to v4.15.4 stable release (LP: #1751064) + - watchdog: indydog: Add dependency on SGI_HAS_INDYDOG + - cifs: Fix missing put_xid in cifs_file_strict_mmap + - cifs: Fix autonegotiate security settings mismatch + - CIFS: zero sensitive data when freeing + - cpufreq: mediatek: add mediatek related projects into blacklist + - dmaengine: dmatest: fix container_of member in dmatest_callback + - ssb: Do not disable PCI host on non-Mips + - watchdog: gpio_wdt: set WDOG_HW_RUNNING in gpio_wdt_stop + - Revert "drm/i915: mark all device info struct with __initconst" + - sched/rt: Use container_of() to get root domain in rto_push_irq_work_func() + - sched/rt: Up the root domain ref count when passing it around via IPIs + - media: dvb-usb-v2: lmedm04: Improve logic checking of warm start + - media: dvb-usb-v2: lmedm04: move ts2020 attach to dm04_lme2510_tuner + - media: hdpvr: Fix an error handling path in hdpvr_probe() + - arm64: mm: Use non-global mappings for kernel space + - arm64: mm: Temporarily disable ARM64_SW_TTBR0_PAN + - arm64: mm: Move ASID from TTBR0 to TTBR1 + - arm64: mm: Remove pre_ttbr0_update_workaround for Falkor erratum #E1003 + - arm64: mm: Rename post_ttbr0_update_workaround + - arm64: mm: Fix and re-enable ARM64_SW_TTBR0_PAN + - arm64: mm: Allocate ASIDs in pairs + - arm64: mm: Add arm64_kernel_unmapped_at_el0 helper + - arm64: mm: Invalidate both kernel and user ASIDs when performing TLBI + - arm64: entry: Add exception trampoline page for exceptions from EL0 + - arm64: mm: Map entry trampoline into trampoline and kernel page tables + - arm64: entry: Explicitly pass exception level to kernel_ventry macro + - arm64: entry: Hook up entry trampoline to exception vectors + - arm64: erratum: Work around Falkor erratum #E1003 in trampoline code + - arm64: cpu_errata: Add Kryo to Falkor 1003 errata + - arm64: tls: Avoid unconditional zeroing of tpidrro_el0 for native tasks + - arm64: entry: Add fake CPU feature for unmapping the kernel at EL0 + - arm64: kaslr: Put kernel vectors address in separate data page + - arm64: use RET instruction for exiting the trampoline + - arm64: Kconfig: Add CONFIG_UNMAP_KERNEL_AT_EL0 + - arm64: Kconfig: Reword UNMAP_KERNEL_AT_EL0 kconfig entry + - arm64: Take into account ID_AA64PFR0_EL1.CSV3 + - arm64: capabilities: Handle duplicate entries for a capability + - arm64: mm: Introduce TTBR_ASID_MASK for getting at the ASID in the TTBR + - arm64: kpti: Fix the interaction between ASID switching and software PAN + - arm64: cputype: Add MIDR values for Cavium ThunderX2 CPUs + - arm64: kpti: Make use of nG dependent on arm64_kernel_unmapped_at_el0() + - arm64: mm: Permit transitioning from Global to Non-Global without BBM + - arm64: kpti: Add ->enable callback to remap swapper using nG mappings + - arm64: Force KPTI to be disabled on Cavium ThunderX + - arm64: entry: Reword comment about post_ttbr_update_workaround + - arm64: idmap: Use "awx" flags for .idmap.text .pushsection directives + - perf: arm_spe: Fail device probe when arm64_kernel_unmapped_at_el0() + - arm64: barrier: Add CSDB macros to control data-value prediction + - arm64: Implement array_index_mask_nospec() + - arm64: Make USER_DS an inclusive limit + - arm64: Use pointer masking to limit uaccess speculation + - arm64: entry: Ensure branch through syscall table is bounded under + speculation + - arm64: uaccess: Prevent speculative use of the current addr_limit + - arm64: uaccess: Don't bother eliding access_ok checks in __{get, put}_user + - arm64: uaccess: Mask __user pointers for __arch_{clear, copy_*}_user + - arm64: futex: Mask __user pointers prior to dereference + - arm64: cpufeature: __this_cpu_has_cap() shouldn't stop early + - arm64: Run enable method for errata work arounds on late CPUs + - arm64: cpufeature: Pass capability structure to ->enable callback + - drivers/firmware: Expose psci_get_version through psci_ops structure + - arm64: Move post_ttbr_update_workaround to C code + - arm64: Add skeleton to harden the branch predictor against aliasing attacks + - arm64: Move BP hardening to check_and_switch_context + - arm64: KVM: Use per-CPU vector when BP hardening is enabled + - arm64: entry: Apply BP hardening for high-priority synchronous exceptions + - arm64: entry: Apply BP hardening for suspicious interrupts from EL0 + - arm64: cputype: Add missing MIDR values for Cortex-A72 and Cortex-A75 + - arm64: Implement branch predictor hardening for affected Cortex-A CPUs + - arm64: Implement branch predictor hardening for Falkor + - arm64: Branch predictor hardening for Cavium ThunderX2 + - arm64: KVM: Increment PC after handling an SMC trap + - arm/arm64: KVM: Consolidate the PSCI include files + - arm/arm64: KVM: Add PSCI_VERSION helper + - arm/arm64: KVM: Add smccc accessors to PSCI code + - arm/arm64: KVM: Implement PSCI 1.0 support + - arm/arm64: KVM: Advertise SMCCC v1.1 + - arm64: KVM: Make PSCI_VERSION a fast path + - arm/arm64: KVM: Turn kvm_psci_version into a static inline + - arm64: KVM: Report SMCCC_ARCH_WORKAROUND_1 BP hardening support + - arm64: KVM: Add SMCCC_ARCH_WORKAROUND_1 fast handling + - firmware/psci: Expose PSCI conduit + - firmware/psci: Expose SMCCC version through psci_ops + - arm/arm64: smccc: Make function identifiers an unsigned quantity + - arm/arm64: smccc: Implement SMCCC v1.1 inline primitive + - arm64: Add ARM_SMCCC_ARCH_WORKAROUND_1 BP hardening support + - arm64: Kill PSCI_GET_VERSION as a variant-2 workaround + - mtd: cfi: convert inline functions to macros + - mtd: nand: brcmnand: Disable prefetch by default + - mtd: nand: Fix nand_do_read_oob() return value + - mtd: nand: sunxi: Fix ECC strength choice + - ubi: Fix race condition between ubi volume creation and udev + - ubi: fastmap: Erase outdated anchor PEBs during attach + - ubi: block: Fix locking for idr_alloc/idr_remove + - ubifs: free the encrypted symlink target + - nfs/pnfs: fix nfs_direct_req ref leak when i/o falls back to the mds + - nfs41: do not return ENOMEM on LAYOUTUNAVAILABLE + - NFS: Add a cond_resched() to nfs_commit_release_pages() + - NFS: Fix nfsstat breakage due to LOOKUPP + - NFS: commit direct writes even if they fail partially + - NFS: reject request for id_legacy key without auxdata + - NFS: Fix a race between mmap() and O_DIRECT + - nfsd: Detect unhashed stids in nfsd4_verify_open_stid() + - kernfs: fix regression in kernfs_fop_write caused by wrong type + - ahci: Annotate PCI ids for mobile Intel chipsets as such + - ahci: Add PCI ids for Intel Bay Trail, Cherry Trail and Apollo Lake AHCI + - ahci: Add Intel Cannon Lake PCH-H PCI ID + - crypto: hash - introduce crypto_hash_alg_has_setkey() + - crypto: cryptd - pass through absence of ->setkey() + - crypto: mcryptd - pass through absence of ->setkey() + - crypto: poly1305 - remove ->setkey() method + - crypto: hash - annotate algorithms taking optional key + - crypto: hash - prevent using keyed hashes without setting key + - media: v4l2-ioctl.c: use check_fmt for enum/g/s/try_fmt + - media: v4l2-ioctl.c: don't copy back the result for -ENOTTY + - media: v4l2-compat-ioctl32.c: add missing VIDIOC_PREPARE_BUF + - media: v4l2-compat-ioctl32.c: fix the indentation + - media: v4l2-compat-ioctl32.c: move 'helper' functions to + __get/put_v4l2_format32 + - media: v4l2-compat-ioctl32.c: avoid sizeof(type) + - media: v4l2-compat-ioctl32.c: copy m.userptr in put_v4l2_plane32 + - media: v4l2-compat-ioctl32.c: fix ctrl_is_pointer + - media: v4l2-compat-ioctl32.c: copy clip list in put_v4l2_window32 + - media: v4l2-compat-ioctl32.c: drop pr_info for unknown buffer type + - media: v4l2-compat-ioctl32.c: don't copy back the result for certain errors + - media: v4l2-compat-ioctl32.c: refactor compat ioctl32 logic + - media: v4l2-compat-ioctl32.c: make ctrl_is_pointer work for subdevs + - crypto: caam - fix endless loop when DECO acquire fails + - crypto: sha512-mb - initialize pending lengths correctly + - crypto: talitos - fix Kernel Oops on hashing an empty file + - arm: KVM: Fix SMCCC handling of unimplemented SMC/HVC calls + - KVM: nVMX: Fix races when sending nested PI while dest enters/leaves L2 + - KVM: nVMX: Fix bug of injecting L2 exception into L1 + - KVM: PPC: Book3S HV: Make sure we don't re-enter guest without XIVE loaded + - KVM: PPC: Book3S HV: Drop locks before reading guest memory + - KVM: arm/arm64: Handle CPU_PM_ENTER_FAILED + - KVM: PPC: Book3S PR: Fix broken select due to misspelling + - ASoC: acpi: fix machine driver selection based on quirk + - ASoC: rockchip: i2s: fix playback after runtime resume + - ASoC: skl: Fix kernel warning due to zero NHTL entry + - ASoC: compress: Correct handling of copy callback + - watchdog: imx2_wdt: restore previous timeout after suspend+resume + - afs: Add missing afs_put_cell() + - afs: Need to clear responded flag in addr cursor + - afs: Fix missing cursor clearance + - afs: Fix server list handling + - btrfs: Handle btrfs_set_extent_delalloc failure in fixup worker + - Btrfs: raid56: iterate raid56 internal bio with bio_for_each_segment_all + - kasan: don't emit builtin calls when sanitization is off + - kasan: rework Kconfig settings + - media: dvb_frontend: be sure to init dvb_frontend_handle_ioctl() return code + - media: dvb-frontends: fix i2c access helpers for KASAN + - media: dt-bindings/media/cec-gpio.txt: mention the CEC/HPD max voltages + - media: ts2020: avoid integer overflows on 32 bit machines + - media: vivid: fix module load error when enabling fb and no_error_inj=1 + - media: cxusb, dib0700: ignore XC2028_I2C_FLUSH + - fs/proc/kcore.c: use probe_kernel_read() instead of memcpy() + - kernel/async.c: revert "async: simplify lowest_in_progress()" + - kernel/relay.c: revert "kernel/relay.c: fix potential memory leak" + - pipe: actually allow root to exceed the pipe buffer limits + - pipe: fix off-by-one error when checking buffer limits + - HID: quirks: Fix keyboard + touchpad on Toshiba Click Mini not working + - Bluetooth: btsdio: Do not bind to non-removable BCM43341 + - ipmi: use dynamic memory for DMI driver override + - signal/openrisc: Fix do_unaligned_access to send the proper signal + - signal/sh: Ensure si_signo is initialized in do_divide_error + - alpha: fix crash if pthread_create races with signal delivery + - alpha: osf_sys.c: fix put_tv32 regression + - alpha: Fix mixed up args in EXC macro in futex operations + - alpha: fix reboot on Avanti platform + - alpha: fix formating of stack content + - xtensa: fix futex_atomic_cmpxchg_inatomic + - EDAC, octeon: Fix an uninitialized variable warning + - genirq: Make legacy autoprobing work again + - pinctrl: intel: Initialize GPIO properly when used through irqchip + - pinctrl: mcp23s08: fix irq setup order + - pinctrl: sx150x: Unregister the pinctrl on release + - pinctrl: sx150x: Register pinctrl before adding the gpiochip + - pinctrl: sx150x: Add a static gpio/pinctrl pin range mapping + - pktcdvd: Fix pkt_setup_dev() error path + - pktcdvd: Fix a recently introduced NULL pointer dereference + - blk-mq: quiesce queue before freeing queue + - clocksource/drivers/stm32: Fix kernel panic with multiple timers + - lib/ubsan.c: s/missaligned/misaligned/ + - lib/ubsan: add type mismatch handler for new GCC/Clang + - objtool: Fix switch-table detection + - arm64: dts: marvell: add Ethernet aliases + - drm/i915: Avoid PPS HW/SW state mismatch due to rounding + - ACPI: sbshc: remove raw pointer from printk() message + - acpi, nfit: fix register dimm error handling + - ovl: force r/o mount when index dir creation fails + - ovl: fix failure to fsync lower dir + - ovl: take mnt_want_write() for work/index dir setup + - ovl: take mnt_want_write() for removing impure xattr + - ovl: hash directory inodes for fsnotify + - mn10300/misalignment: Use SIGSEGV SEGV_MAPERR to report a failed user copy + - devpts: fix error handling in devpts_mntget() + - ftrace: Remove incorrect setting of glob search field + - scsi: core: Ensure that the SCSI error handler gets woken up + - scsi: lpfc: Fix crash after bad bar setup on driver attachment + - scsi: cxlflash: Reset command ioasc + - rcu: Export init_rcu_head() and destroy_rcu_head() to GPL modules + - Linux 4.15.4 + - updateconfigs after v4.14.4 stable updates + * Bionic update to v4.15.4 stable release (LP: #1751064) // CVE-2017-5754 and + do not need KPTI when KASLR is off. + - arm64: Turn on KPTI only on CPUs that need it + * Miscellaneous Ubuntu changes + - [Config] fix up removed retpoline call sites + + -- Marcelo Henrique Cerri Wed, 21 Mar 2018 18:25:41 -0300 + +linux-azure (4.15.0-1002.2) bionic; urgency=medium + + * linux-azure: 4.15.0-1002.2 -proposed tracker (LP: #1749771) + + * CVE-2017-5715 (Spectre v2 retpoline) + - [Config] azure: disable retpoline checks for another upload + + * [Hyper-V] Fixes for Network Direct InfiniBand/RDMA driver (LP: #1749332) + - SAUCE: vmbus-rdma: ND142: don't wait forever for disconnection from remote + connector + - SAUCE: vmbus-rdma: ND142: remove idr handle before calling ND on freeing CQ + and QP + - SAUCE: vmbus-rdma: ND142: do not crash on idr allocation failure - warn + instead + - SAUCE: vmbus-rdma: ND144: don't wait forever for disconnection from remote + connector + - SAUCE: vmbus-rdma: ND144: remove idr handle before calling ND on freeing CQ + and QP + - SAUCE: vmbus-rdma: ND144: do not crash on idr allocation failure - warn + instead + + * [Hyper-V] Drivers: hv: vmbus: Fix ring buffer signaling (LP: #1748662) + - Revert "UBUNTU: SAUCE: vmbus: fix performance regression" + - SAUCE: hv: vmbus: Fix ring buffer signaling + + * Update the source code location in the debian package for cloud kernels + (LP: #1747890) + - [Debian] Update git repository URI + + * Miscellaneous upstream changes + - [Config] updateconfigs after rebase to Ubuntu-4.15.0-10.11 + + [ Ubuntu: 4.15.0-10.11 ] + + * linux: 4.15.0-10.11 -proposed tracker (LP: #1749250) + * "swiotlb: coherent allocation failed" dmesg spam with linux 4.15.0-9.10 + (LP: #1749202) + - swiotlb: suppress warning when __GFP_NOWARN is set + - drm/ttm: specify DMA_ATTR_NO_WARN for huge page pools + * linux-tools: perf incorrectly linking libbfd (LP: #1748922) + - SAUCE: tools -- add ability to disable libbfd + - [Packaging] correct disablement of libbfd + * [Artful] Realtek ALC225: 2 secs noise when a headset plugged in + (LP: #1744058) + - ALSA: hda/realtek - update ALC225 depop optimize + * [Artful] Support headset mode for DELL WYSE (LP: #1723913) + - SAUCE: ALSA: hda/realtek - Add support headset mode for DELL WYSE + * headset mic can't be detected on two Dell machines (LP: #1748807) + - ALSA: hda/realtek - Support headset mode for ALC215/ALC285/ALC289 + - ALSA: hda - Fix headset mic detection problem for two Dell machines + * Bionic update to v4.15.3 stable release (LP: #1749191) + - ip6mr: fix stale iterator + - net: igmp: add a missing rcu locking section + - qlcnic: fix deadlock bug + - qmi_wwan: Add support for Quectel EP06 + - r8169: fix RTL8168EP take too long to complete driver initialization. + - tcp: release sk_frag.page in tcp_disconnect + - vhost_net: stop device during reset owner + - ipv6: addrconf: break critical section in addrconf_verify_rtnl() + - ipv6: change route cache aging logic + - Revert "defer call to mem_cgroup_sk_alloc()" + - net: ipv6: send unsolicited NA after DAD + - rocker: fix possible null pointer dereference in + rocker_router_fib_event_work + - tcp_bbr: fix pacing_gain to always be unity when using lt_bw + - cls_u32: add missing RCU annotation. + - ipv6: Fix SO_REUSEPORT UDP socket with implicit sk_ipv6only + - soreuseport: fix mem leak in reuseport_add_sock() + - net_sched: get rid of rcu_barrier() in tcf_block_put_ext() + - net: sched: fix use-after-free in tcf_block_put_ext + - media: mtk-vcodec: add missing MODULE_LICENSE/DESCRIPTION + - media: soc_camera: soc_scale_crop: add missing + MODULE_DESCRIPTION/AUTHOR/LICENSE + - media: tegra-cec: add missing MODULE_DESCRIPTION/AUTHOR/LICENSE + - gpio: uniphier: fix mismatch between license text and MODULE_LICENSE + - crypto: tcrypt - fix S/G table for test_aead_speed() + - Linux 4.15.3 + * bnx2x_attn_int_deasserted3:4323 MC assert! (LP: #1715519) // + CVE-2018-1000026 + - net: create skb_gso_validate_mac_len() + - bnx2x: disable GSO where gso_size is too big for hardware + * ethtool -p fails to light NIC LED on HiSilicon D05 systems (LP: #1748567) + - net: hns: add ACPI mode support for ethtool -p + * CVE-2017-5715 (Spectre v2 Intel) + - [Packaging] retpoline files must be sorted + - [Packaging] pull in retpoline files + * [Feature] PXE boot with Intel Omni-Path (LP: #1712031) + - d-i: Add hfi1 to nic-modules + * CVE-2017-5715 (Spectre v2 retpoline) + - [Packaging] retpoline -- add call site validation + - [Config] disable retpoline checks for first upload + * Do not duplicate changelog entries assigned to more than one bug or CVE + (LP: #1743383) + - [Packaging] git-ubuntu-log -- handle multiple bugs/cves better + + [ Ubuntu: 4.15.0-9.10 ] + + * linux: 4.15.0-9.10 -proposed tracker (LP: #1748244) + * Miscellaneous Ubuntu changes + - [Debian] tests -- remove gcc-multilib dependency for arm64 + + [ Ubuntu: 4.15.0-8.9 ] + + * linux: 4.15.0-8.9 -proposed tracker (LP: #1748075) + * Bionic update to v4.15.2 stable release (LP: #1748072) + - KVM: x86: Make indirect calls in emulator speculation safe + - KVM: VMX: Make indirect call speculation safe + - module/retpoline: Warn about missing retpoline in module + - x86/cpufeatures: Add CPUID_7_EDX CPUID leaf + - x86/cpufeatures: Add Intel feature bits for Speculation Control + - x86/cpufeatures: Add AMD feature bits for Speculation Control + - x86/msr: Add definitions for new speculation control MSRs + - x86/pti: Do not enable PTI on CPUs which are not vulnerable to Meltdown + - x86/cpufeature: Blacklist SPEC_CTRL/PRED_CMD on early Spectre v2 microcodes + - x86/speculation: Add basic IBPB (Indirect Branch Prediction Barrier) support + - x86/alternative: Print unadorned pointers + - x86/nospec: Fix header guards names + - x86/bugs: Drop one "mitigation" from dmesg + - x86/cpu/bugs: Make retpoline module warning conditional + - x86/cpufeatures: Clean up Spectre v2 related CPUID flags + - x86/retpoline: Simplify vmexit_fill_RSB() + - x86/speculation: Simplify indirect_branch_prediction_barrier() + - auxdisplay: img-ascii-lcd: add missing MODULE_DESCRIPTION/AUTHOR/LICENSE + - iio: adc/accel: Fix up module licenses + - pinctrl: pxa: pxa2xx: add missing MODULE_DESCRIPTION/AUTHOR/LICENSE + - ASoC: pcm512x: add missing MODULE_DESCRIPTION/AUTHOR/LICENSE + - KVM: nVMX: Eliminate vmcs02 pool + - KVM: VMX: introduce alloc_loaded_vmcs + - objtool: Improve retpoline alternative handling + - objtool: Add support for alternatives at the end of a section + - objtool: Warn on stripped section symbol + - x86/mm: Fix overlap of i386 CPU_ENTRY_AREA with FIX_BTMAP + - x86/spectre: Check CONFIG_RETPOLINE in command line parser + - x86/entry/64: Remove the SYSCALL64 fast path + - x86/entry/64: Push extra regs right away + - x86/asm: Move 'status' from thread_struct to thread_info + - Documentation: Document array_index_nospec + - array_index_nospec: Sanitize speculative array de-references + - x86: Implement array_index_mask_nospec + - x86: Introduce barrier_nospec + - x86: Introduce __uaccess_begin_nospec() and uaccess_try_nospec + - x86/usercopy: Replace open coded stac/clac with __uaccess_{begin, end} + - x86/uaccess: Use __uaccess_begin_nospec() and uaccess_try_nospec + - x86/get_user: Use pointer masking to limit speculation + - x86/syscall: Sanitize syscall table de-references under speculation + - vfs, fdtable: Prevent bounds-check bypass via speculative execution + - nl80211: Sanitize array index in parse_txq_params + - x86/spectre: Report get_user mitigation for spectre_v1 + - x86/spectre: Fix spelling mistake: "vunerable"-> "vulnerable" + - x86/cpuid: Fix up "virtual" IBRS/IBPB/STIBP feature bits on Intel + - x86/speculation: Use Indirect Branch Prediction Barrier in context switch + - x86/paravirt: Remove 'noreplace-paravirt' cmdline option + - KVM: VMX: make MSR bitmaps per-VCPU + - x86/kvm: Update spectre-v1 mitigation + - x86/retpoline: Avoid retpolines for built-in __init functions + - x86/spectre: Simplify spectre_v2 command line parsing + - x86/pti: Mark constant arrays as __initconst + - x86/speculation: Fix typo IBRS_ATT, which should be IBRS_ALL + - KVM/x86: Update the reverse_cpuid list to include CPUID_7_EDX + - KVM/x86: Add IBPB support + - KVM/VMX: Emulate MSR_IA32_ARCH_CAPABILITIES + - KVM/VMX: Allow direct access to MSR_IA32_SPEC_CTRL + - KVM/SVM: Allow direct access to MSR_IA32_SPEC_CTRL + - serial: core: mark port as initialized after successful IRQ change + - fpga: region: release of_parse_phandle nodes after use + - Linux 4.15.2 + * Add support for the NIC on SynQuacer E-Series boards (LP: #1747792) + - net: phy: core: remove now uneeded disabling of interrupts + - [Config] CONFIG_NET_VENDOR_SOCIONEXT=y & CONFIG_SNI_NETSEC=m + - net: socionext: Add Synquacer NetSec driver + - net: socionext: include linux/io.h to fix build + - net: socionext: Fix error return code in netsec_netdev_open() + * [Artful/Bionic] [Config] enable EDAC_GHES for ARM64 (LP: #1747746) + - [Config] CONFIG_EDAC_GHES=y + * support thunderx2 vendor pmu events (LP: #1747523) + - perf pmu: Pass pmu as a parameter to get_cpuid_str() + - perf tools arm64: Add support for get_cpuid_str function. + - perf pmu: Add helper function is_pmu_core to detect PMU CORE devices + - perf vendor events arm64: Add ThunderX2 implementation defined pmu core + events + - perf pmu: Add check for valid cpuid in perf_pmu__find_map() + * linux 4.14.0-7.9 ADT test failure with linux 4.14.0-7.9 (LP: #1732463) + - SAUCE: mm: disable vma based swap readahead by default + - SAUCE: mm: fix memory hotplug in ZONE_HIGHMEM + * Miscellaneous Ubuntu changes + - [Config] Fix CONFIG_PROFILE_ALL_BRANCHES annotations + + [ Ubuntu: 4.15.0-7.8 ] + + * Bionic update to v4.15.1 stable release (LP: #1747169) + - Bluetooth: hci_serdev: Init hci_uart proto_lock to avoid oops + - tools/gpio: Fix build error with musl libc + - gpio: stmpe: i2c transfer are forbiden in atomic context + - gpio: Fix kernel stack leak to userspace + - ALSA: hda - Reduce the suspend time consumption for ALC256 + - crypto: ecdh - fix typo in KPP dependency of CRYPTO_ECDH + - crypto: aesni - handle zero length dst buffer + - crypto: aesni - fix typo in generic_gcmaes_decrypt + - crypto: aesni - add wrapper for generic gcm(aes) + - crypto: aesni - Fix out-of-bounds access of the data buffer in generic-gcm- + aesni + - crypto: aesni - Fix out-of-bounds access of the AAD buffer in generic-gcm- + aesni + - crypto: inside-secure - fix hash when length is a multiple of a block + - crypto: inside-secure - avoid unmapping DMA memory that was not mapped + - crypto: sha3-generic - fixes for alignment and big endian operation + - crypto: af_alg - whitelist mask and type + - HID: wacom: EKR: ensure devres groups at higher indexes are released + - HID: wacom: Fix reporting of touch toggle (WACOM_HID_WD_MUTE_DEVICE) events + - power: reset: zx-reboot: add missing MODULE_DESCRIPTION/AUTHOR/LICENSE + - gpio: iop: add missing MODULE_DESCRIPTION/AUTHOR/LICENSE + - gpio: ath79: add missing MODULE_DESCRIPTION/LICENSE + - mtd: nand: denali_pci: add missing MODULE_DESCRIPTION/AUTHOR/LICENSE + - igb: Free IRQs when device is hotplugged + - ima/policy: fix parsing of fsuuid + - scsi: aacraid: Fix udev inquiry race condition + - scsi: aacraid: Fix hang in kdump + - scsi: storvsc: missing error code in storvsc_probe() + - staging: lustre: separate a connection destroy from free struct kib_conn + - staging: ccree: NULLify backup_info when unused + - staging: ccree: fix fips event irq handling build + - tty: fix data race between tty_init_dev and flush of buf + - usb: option: Add support for FS040U modem + - USB: serial: pl2303: new device id for Chilitag + - USB: cdc-acm: Do not log urb submission errors on disconnect + - CDC-ACM: apply quirk for card reader + - USB: serial: io_edgeport: fix possible sleep-in-atomic + - usbip: prevent bind loops on devices attached to vhci_hcd + - usbip: list: don't list devices attached to vhci_hcd + - USB: serial: simple: add Motorola Tetra driver + - usb: f_fs: Prevent gadget unbind if it is already unbound + - usb: uas: unconditionally bring back host after reset + - usb/gadget: Fix "high bandwidth" check in usb_gadget_ep_match_desc() + - ANDROID: binder: remove waitqueue when thread exits. + - android: binder: use VM_ALLOC to get vm area + - mei: me: allow runtime pm for platform with D0i3 + - serial: 8250_of: fix return code when probe function fails to get reset + - serial: 8250_uniphier: fix error return code in uniphier_uart_probe() + - serial: 8250_dw: Revert "Improve clock rate setting" + - serial: imx: Only wakeup via RTSDEN bit if the system has RTS/CTS + - spi: imx: do not access registers while clocks disabled + - iio: adc: stm32: fix scan of multiple channels with DMA + - iio: chemical: ccs811: Fix output of IIO_CONCENTRATION channels + - test_firmware: fix missing unlock on error in config_num_requests_store() + - Input: synaptics-rmi4 - unmask F03 interrupts when port is opened + - Input: synaptics-rmi4 - do not delete interrupt memory too early + - x86/efi: Clarify that reset attack mitigation needs appropriate userspace + - Linux 4.15.1 + * Dell XPS 13 9360 bluetooth (Atheros) won't connect after resume + (LP: #1744712) + - Revert "Bluetooth: btusb: fix QCA Rome suspend/resume" + - Bluetooth: btusb: Restore QCA Rome suspend/resume fix with a "rewritten" + version + * apparmor profile load in stacked policy container fails (LP: #1746463) + - SAUCE: apparmor: fix display of .ns_name for containers + + -- Marcelo Henrique Cerri Thu, 15 Feb 2018 16:19:59 -0200 + +linux-azure (4.15.0-1001.1) bionic; urgency=low + + * linux-azure: 4.15.0-1001.1 -proposed tracker (LP: #1746739) + + * ubuntu/xr-usb-serial didn't get built in zesty and artful (LP: #1733281) + - ubuntu: Only build ubuntu/xr-usb-serial when USB is enabled + + * Miscellaneous Ubuntu changes + - [Config] updateconfigs after rebase to Ubuntu-4.15.0-5.6 + + [ Ubuntu: 4.15.0-6.7 ] + + * upload urgency should be medium by default (LP: #1745338) + - [Packaging] update urgency to medium by default + * Shutdown hang on 16.04 with iscsi targets (LP: #1569925) + - scsi: libiscsi: Allow sd_shutdown on bad transport + * Miscellaneous Ubuntu changes + - SAUCE: (noup) Update spl to 0.7.5-1ubuntu1, zfs to 0.7.5-1ubuntu1 + - Revert "UBUNTU: SAUCE: mm: fix memory hotplug in ZONE_HIGHMEM" + - Revert "UBUNTU: SAUCE: mm: disable vma based swap readahead by default" + * Rebase to v4.15 + + [ Ubuntu: 4.15.0-5.6 ] + + * $(LOCAL_ENV_CC) and $(LOCAL_ENV_DISTCC_HOSTS) should be properly quoted + (LP: #1744077) + - [Debian] pass LOCAL_ENV_CC and LOCAL_ENV_DISTCC_HOSTS properly + * Missing install-time driver for QLogic QED 25/40/100Gb Ethernet NIC + (LP: #1743638) + - [d-i] Add qede to nic-modules udeb + * boot failure on AMD Raven + WesternXT (LP: #1742759) + - SAUCE: drm/amdgpu: add atpx quirk handling (v2) + * Unable to handle kernel NULL pointer dereference at isci_task_abort_task + (LP: #1726519) + - SAUCE: Revert "scsi: libsas: allow async aborts" + * Update Ubuntu-4.15.0 config to support Intel Atom devices (LP: #1739939) + - [Config] CONFIG_SERIAL_DEV_BUS=y, CONFIG_SERIAL_DEV_CTRL_TTYPORT=y + * Miscellaneous Ubuntu changes + - Rebase to v4.15-rc7 + - [Config] CONFIG_CPU_ISOLATION=y + - [Config] Update annotations following config review + - Revert "UBUNTU: SAUCE: Import aufs driver" + - SAUCE: Import aufs driver + - ubuntu: vbox -- update to 5.2.6-dfsg-1 + - ubuntu: vbox: build fixes for 4.15 + - ubuntu: vbox -- update to 5.2.6-dfsg-2 + - hio: updates for timer api changes in 4.15 + - enable hio build + - Rebase to v4.15-rc9 + * Rebase to v4.15-rc9 + + [ Ubuntu: 4.15.0-4.5 ] + + * [0cf3:e010] QCA6174A XR failed to pair with bt 4.0 device (LP: #1741166) + - SAUCE: Bluetooth: btusb: Add support for 0cf3:e010 + * External HDMI monitor failed to show screen on Lenovo X1 series + (LP: #1738523) + - SAUCE: drm/i915: Disable writing of TMDS_OE on Lenovo ThinkPad X1 series + * Miscellaneous Ubuntu changes + - [Debian] autoreconstruct - add resoration of execute permissions + * Rebase to v4.15-rc4 + + [ Ubuntu: 4.15.0-3.4 ] + + * ubuntu/xr-usb-serial didn't get built in zesty and artful (LP: #1733281) + - SAUCE: make sure ubuntu/xr-usb-serial builds for x86 + * Rebase to v4.15-rc6 + + [ Ubuntu: 4.15.0-2.3 ] + + * nvidia-graphics-drivers-384 384.90-0ubuntu6 ADT test failure with linux + 4.15.0-1.2 (LP: #1737752) + - x86/mm: Unbreak modules that use the DMA API + * Ubuntu 17.10 corrupting BIOS - many LENOVO laptops models (LP: #1734147) + - [Config] CONFIG_SPI_INTEL_SPI_*=n + * power: commonise configs IBMVETH/IBMVSCSI and ensure both are in linux-image + and udebs (LP: #1521712) + - [Config] Include ibmvnic in nic-modules + * Enable arm64 emulation of removed ARMv7 instructions (LP: #1545542) + - [Config] Enable support for emulation of deprecated ARMv8 instructions + * Miscellaneous Ubuntu changes + - SAUCE: (noup) Update spl with 4.15 compat fix (LP:#1737761) + - Enable zfs build + - [Debian] add icp to zfs-modules.ignore + * Rebase to v4.15-rc4 + + [ Ubuntu: 4.15.0-1.2 ] + + * Disabling zfs does not always disable module checks for the zfs modules + (LP: #1737176) + - [Packaging] disable zfs module checks when zfs is disabled + * Miscellaneous Ubuntu changes + - [Config] CONFIG_UNWINDER_FRAME_POINTER=y for amd64 + * Rebase to v4.15-rc3 + + [ Ubuntu: 4.15.0-0.1 ] + + * Miscellaneous Ubuntu changes + - ubuntu: vbox -- update to 5.2.2-dfsg-2 + - ubuntu: vbox: build fixes for 4.15 + - disable hio build + - [Config] Update kernel lockdown options to fix build errors + - Disable zfs build + - SAUCE: Import aufs driver + - [Config] Enable AUFS config options + * Rebase to v4.15-rc2 + + [ Ubuntu: 4.14.0-11.13 ] + + * linux: 4.14.0-11.13 -proposed tracker (LP: #1736168) + * CVE-2017-1000405 + - mm, thp: Do not make page table dirty unconditionally in touch_p[mu]d() + * linux 4.14.0-7.9 ADT test failure with linux 4.14.0-7.9 (LP: #1732463) + - SAUCE: mm: disable vma based swap readahead by default + - SAUCE: mm: fix memory hotplug in ZONE_HIGHMEM + * Bionic update to v4.14.3 stable release (LP: #1735843) + - s390: fix transactional execution control register handling + - s390/noexec: execute kexec datamover without DAT + - s390/runtime instrumention: fix possible memory corruption + - s390/guarded storage: fix possible memory corruption + - s390/disassembler: add missing end marker for e7 table + - s390/disassembler: increase show_code buffer size + - ACPI / PM: Fix acpi_pm_notifier_lock vs flush_workqueue() deadlock + - ACPI / EC: Fix regression related to triggering source of EC event handling + - cpufreq: schedutil: Reset cached_raw_freq when not in sync with next_freq + - serdev: fix registration of second slave + - sched: Make resched_cpu() unconditional + - lib/mpi: call cond_resched() from mpi_powm() loop + - x86/boot: Fix boot failure when SMP MP-table is based at 0 + - x86/decoder: Add new TEST instruction pattern + - x86/entry/64: Fix entry_SYSCALL_64_after_hwframe() IRQ tracing + - x86/entry/64: Add missing irqflags tracing to native_load_gs_index() + - perf/x86/intel: Hide TSX events when RTM is not supported + - arm64: Implement arch-specific pte_access_permitted() + - ARM: 8722/1: mm: make STRICT_KERNEL_RWX effective for LPAE + - ARM: 8721/1: mm: dump: check hardware RO bit for LPAE + - uapi: fix linux/tls.h userspace compilation error + - uapi: fix linux/rxrpc.h userspace compilation errors + - MIPS: cmpxchg64() and HAVE_VIRT_CPU_ACCOUNTING_GEN don't work for 32-bit SMP + - MIPS: ralink: Fix MT7628 pinmux + - MIPS: ralink: Fix typo in mt7628 pinmux function + - net: mvneta: fix handling of the Tx descriptor counter + - nbd: wait uninterruptible for the dead timeout + - nbd: don't start req until after the dead connection logic + - PM / OPP: Add missing of_node_put(np) + - PCI/ASPM: Account for downstream device's Port Common_Mode_Restore_Time + - PCI/ASPM: Use correct capability pointer to program LTR_L1.2_THRESHOLD + - PCI: hv: Use effective affinity mask + - PCI: Set Cavium ACS capability quirk flags to assert RR/CR/SV/UF + - PCI: Apply Cavium ThunderX ACS quirk to more Root Ports + - ALSA: hda: Add Raven PCI ID + - dm integrity: allow unaligned bv_offset + - dm cache: fix race condition in the writeback mode overwrite_bio + optimisation + - dm crypt: allow unaligned bv_offset + - dm zoned: ignore last smaller runt zone + - dm mpath: remove annoying message of 'blk_get_request() returned -11' + - dm bufio: fix integer overflow when limiting maximum cache size + - ovl: Put upperdentry if ovl_check_origin() fails + - dm: allocate struct mapped_device with kvzalloc + - sched/rt: Simplify the IPI based RT balancing logic + - MIPS: pci: Remove KERN_WARN instance inside the mt7620 driver + - dm: fix race between dm_get_from_kobject() and __dm_destroy() + - dm: discard support requires all targets in a table support discards + - MIPS: Fix odd fp register warnings with MIPS64r2 + - MIPS: Fix MIPS64 FP save/restore on 32-bit kernels + - MIPS: dts: remove bogus bcm96358nb4ser.dtb from dtb-y entry + - MIPS: Fix an n32 core file generation regset support regression + - MIPS: BCM47XX: Fix LED inversion for WRT54GSv1 + - MIPS: math-emu: Fix final emulation phase for certain instructions + - rt2x00usb: mark device removed when get ENOENT usb error + - mm/z3fold.c: use kref to prevent page free/compact race + - autofs: don't fail mount for transient error + - nilfs2: fix race condition that causes file system corruption + - fscrypt: lock mutex before checking for bounce page pool + - eCryptfs: use after free in ecryptfs_release_messaging() + - libceph: don't WARN() if user tries to add invalid key + - bcache: check ca->alloc_thread initialized before wake up it + - fs: guard_bio_eod() needs to consider partitions + - fanotify: fix fsnotify_prepare_user_wait() failure + - isofs: fix timestamps beyond 2027 + - btrfs: change how we decide to commit transactions during flushing + - f2fs: expose some sectors to user in inline data or dentry case + - NFS: Fix typo in nomigration mount option + - NFS: Revert "NFS: Move the flock open mode check into nfs_flock()" + - nfs: Fix ugly referral attributes + - NFS: Avoid RCU usage in tracepoints + - NFS: revalidate "." etc correctly on "open". + - nfsd: deal with revoked delegations appropriately + - rtlwifi: rtl8192ee: Fix memory leak when loading firmware + - rtlwifi: fix uninitialized rtlhal->last_suspend_sec time + - iwlwifi: fix firmware names for 9000 and A000 series hw + - md: fix deadlock error in recent patch. + - md: don't check MD_SB_CHANGE_CLEAN in md_allow_write + - Bluetooth: btqcomsmd: Add support for BD address setup + - md/bitmap: revert a patch + - fsnotify: clean up fsnotify_prepare/finish_user_wait() + - fsnotify: pin both inode and vfsmount mark + - fsnotify: fix pinning group in fsnotify_prepare_user_wait() + - ata: fixes kernel crash while tracing ata_eh_link_autopsy event + - ext4: fix interaction between i_size, fallocate, and delalloc after a crash + - ext4: prevent data corruption with inline data + DAX + - ext4: prevent data corruption with journaling + DAX + - ALSA: pcm: update tstamp only if audio_tstamp changed + - ALSA: usb-audio: Add sanity checks to FE parser + - ALSA: usb-audio: Fix potential out-of-bound access at parsing SU + - ALSA: usb-audio: Add sanity checks in v2 clock parsers + - ALSA: timer: Remove kernel warning at compat ioctl error paths + - ALSA: hda/realtek - Fix ALC275 no sound issue + - ALSA: hda: Fix too short HDMI/DP chmap reporting + - ALSA: hda - Fix yet remaining issue with vmaster 0dB initialization + - ALSA: hda/realtek - Fix ALC700 family no sound issue + - ASoC: sun8i-codec: Invert Master / Slave condition + - ASoC: sun8i-codec: Fix left and right channels inversion + - ASoC: sun8i-codec: Set the BCLK divider + - mfd: lpc_ich: Avoton/Rangeley uses SPI_BYT method + - fix a page leak in vhost_scsi_iov_to_sgl() error recovery + - 9p: Fix missing commas in mount options + - fs/9p: Compare qid.path in v9fs_test_inode + - net/9p: Switch to wait_event_killable() + - scsi: qla2xxx: Suppress a kernel complaint in qla_init_base_qpair() + - scsi: sd_zbc: Fix sd_zbc_read_zoned_characteristics() + - scsi: lpfc: fix pci hot plug crash in timer management routines + - scsi: lpfc: fix pci hot plug crash in list_add call + - scsi: lpfc: Fix crash receiving ELS while detaching driver + - scsi: lpfc: Fix FCP hba_wqidx assignment + - scsi: lpfc: Fix oops if nvmet_fc_register_targetport fails + - iscsi-target: Make TASK_REASSIGN use proper se_cmd->cmd_kref + - iscsi-target: Fix non-immediate TMR reference leak + - target: fix null pointer regression in core_tmr_drain_tmr_list + - target: fix buffer offset in core_scsi3_pri_read_full_status + - target: Fix QUEUE_FULL + SCSI task attribute handling + - target: Fix caw_sem leak in transport_generic_request_failure + - target: Fix quiese during transport_write_pending_qf endless loop + - target: Avoid early CMD_T_PRE_EXECUTE failures during ABORT_TASK + - mtd: Avoid probe failures when mtd->dbg.dfs_dir is invalid + - mtd: nand: Export nand_reset() symbol + - mtd: nand: atmel: Actually use the PM ops + - mtd: nand: omap2: Fix subpage write + - mtd: nand: Fix writing mtdoops to nand flash. + - mtd: nand: mtk: fix infinite ECC decode IRQ issue + - mailbox: bcm-flexrm-mailbox: Fix FlexRM ring flush sequence + - p54: don't unregister leds when they are not initialized + - block: Fix a race between blk_cleanup_queue() and timeout handling + - raid1: prevent freeze_array/wait_all_barriers deadlock + - genirq: Track whether the trigger type has been set + - irqchip/gic-v3: Fix ppi-partitions lookup + - lockd: double unregister of inetaddr notifiers + - KVM: PPC: Book3S HV: Don't call real-mode XICS hypercall handlers if not + enabled + - KVM: nVMX: set IDTR and GDTR limits when loading L1 host state + - KVM: SVM: obey guest PAT + - kvm: vmx: Reinstate support for CPUs without virtual NMI + - dax: fix PMD faults on zero-length files + - dax: fix general protection fault in dax_alloc_inode + - SUNRPC: Fix tracepoint storage issues with svc_recv and svc_rqst_status + - clk: ti: dra7-atl-clock: fix child-node lookups + - libnvdimm, dimm: clear 'locked' status on successful DIMM enable + - libnvdimm, pfn: make 'resource' attribute only readable by root + - libnvdimm, namespace: fix label initialization to use valid seq numbers + - libnvdimm, region : make 'resource' attribute only readable by root + - libnvdimm, namespace: make 'resource' attribute only readable by root + - svcrdma: Preserve CB send buffer across retransmits + - IB/srpt: Do not accept invalid initiator port names + - IB/cm: Fix memory corruption in handling CM request + - IB/hfi1: Fix incorrect available receive user context count + - IB/srp: Avoid that a cable pull can trigger a kernel crash + - IB/core: Avoid crash on pkey enforcement failed in received MADs + - IB/core: Only maintain real QPs in the security lists + - NFC: fix device-allocation error return + - spi-nor: intel-spi: Fix broken software sequencing codes + - i40e: Use smp_rmb rather than read_barrier_depends + - igb: Use smp_rmb rather than read_barrier_depends + - igbvf: Use smp_rmb rather than read_barrier_depends + - ixgbevf: Use smp_rmb rather than read_barrier_depends + - i40evf: Use smp_rmb rather than read_barrier_depends + - fm10k: Use smp_rmb rather than read_barrier_depends + - ixgbe: Fix skb list corruption on Power systems + - parisc: Fix validity check of pointer size argument in new CAS + implementation + - powerpc: Fix boot on BOOK3S_32 with CONFIG_STRICT_KERNEL_RWX + - powerpc/mm/radix: Fix crashes on Power9 DD1 with radix MMU and STRICT_RWX + - powerpc/perf/imc: Use cpu_to_node() not topology_physical_package_id() + - powerpc/signal: Properly handle return value from uprobe_deny_signal() + - powerpc/64s: Fix masking of SRR1 bits on instruction fault + - powerpc/64s/radix: Fix 128TB-512TB virtual address boundary case allocation + - powerpc/64s/hash: Fix 512T hint detection to use >= 128T + - powerpc/64s/hash: Fix 128TB-512TB virtual address boundary case allocation + - powerpc/64s/hash: Fix fork() with 512TB process address space + - powerpc/64s/hash: Allow MAP_FIXED allocations to cross 128TB boundary + - media: Don't do DMA on stack for firmware upload in the AS102 driver + - media: rc: check for integer overflow + - media: rc: nec decoder should not send both repeat and keycode + - cx231xx-cards: fix NULL-deref on missing association descriptor + - media: v4l2-ctrl: Fix flags field on Control events + - media: venus: fix wrong size on dma_free + - media: venus: venc: fix bytesused v4l2_plane field + - media: venus: reimplement decoder stop command + - ARM64: dts: meson-gxl: Add alternate ARM Trusted Firmware reserved memory + zone + - iwlwifi: fix wrong struct for a000 device + - iwlwifi: add a new a000 device + - iwlwifi: pcie: sort IDs for the 9000 series for easier comparisons + - iwlwifi: add new cards for a000 series + - iwlwifi: add new cards for 8265 series + - iwlwifi: add new cards for 8260 series + - iwlwifi: fix PCI IDs and configuration mapping for 9000 series + - iwlwifi: mvm: support version 7 of the SCAN_REQ_UMAC FW command + - e1000e: Fix error path in link detection + - e1000e: Fix return value test + - e1000e: Separate signaling for link check/link up + - e1000e: Avoid receiver overrun interrupt bursts + - e1000e: fix buffer overrun while the I219 is processing DMA transactions + - Linux 4.14.3 + * Miscellaneous Ubuntu changes + - SAUCE: s390/topology: don't inline cpu_to_node + - SAUCE: (noup) Update spl to 0.7.3-1ubuntu1, zfs to 0.7.3-1ubuntu1 + + [ Ubuntu: 4.14.0-10.12 ] + + * linux: 4.14.0-10.12 -proposed tracker (LP: #1734901) + * Miscellaneous Ubuntu changes + - SAUCE: Enable the ACPI kernel debugger and acpidbg tool + - [Packaging] Include arch/arm64/kernel/ftrace-mod.o in headers package + + [ Ubuntu: 4.14.0-9.11 ] + + * linux: 4.14.0-9.11 -proposed tracker (LP: #1734728) + * Miscellaneous Ubuntu changes + - Revert "UBUNTU: SAUCE: (noup) Update spl to 0.7.3-1ubuntu1, zfs to + 0.7.3-1ubuntu1" + + [ Ubuntu: 4.14.0-8.10 ] + + * linux: 4.14.0-8.10 -proposed tracker (LP: #1734695) + * Bionic update to v4.14.2 stable release (LP: #1734694) + - bio: ensure __bio_clone_fast copies bi_partno + - af_netlink: ensure that NLMSG_DONE never fails in dumps + - vxlan: fix the issue that neigh proxy blocks all icmpv6 packets + - net: cdc_ncm: GetNtbFormat endian fix + - fealnx: Fix building error on MIPS + - net/sctp: Always set scope_id in sctp_inet6_skb_msgname + - ima: do not update security.ima if appraisal status is not INTEGRITY_PASS + - serial: omap: Fix EFR write on RTS deassertion + - serial: 8250_fintek: Fix finding base_port with activated SuperIO + - tpm-dev-common: Reject too short writes + - rcu: Fix up pending cbs check in rcu_prepare_for_idle + - mm/pagewalk.c: report holes in hugetlb ranges + - ocfs2: fix cluster hang after a node dies + - ocfs2: should wait dio before inode lock in ocfs2_setattr() + - ipmi: fix unsigned long underflow + - mm/page_alloc.c: broken deferred calculation + - mm/page_ext.c: check if page_ext is not prepared + - coda: fix 'kernel memory exposure attempt' in fsync + - ipmi: Prefer ACPI system interfaces over SMBIOS ones + - Linux 4.14.2 + * Bionic update to v4.14.1 stable release (LP: #1734693) + - EDAC, sb_edac: Don't create a second memory controller if HA1 is not present + - dmaengine: dmatest: warn user when dma test times out + - media: imon: Fix null-ptr-deref in imon_probe + - media: dib0700: fix invalid dvb_detach argument + - crypto: dh - Fix double free of ctx->p + - crypto: dh - Don't permit 'p' to be 0 + - crypto: dh - Don't permit 'key' or 'g' size longer than 'p' + - crypto: brcm - Explicity ACK mailbox message + - USB: early: Use new USB product ID and strings for DbC device + - USB: usbfs: compute urb->actual_length for isochronous + - USB: Add delay-init quirk for Corsair K70 LUX keyboards + - usb: gadget: f_fs: Fix use-after-free in ffs_free_inst + - USB: serial: metro-usb: stop I/O after failed open + - USB: serial: Change DbC debug device binding ID + - USB: serial: qcserial: add pid/vid for Sierra Wireless EM7355 fw update + - USB: serial: garmin_gps: fix I/O after failed probe and remove + - USB: serial: garmin_gps: fix memory leak on probe errors + - selftests/x86/protection_keys: Fix syscall NR redefinition warnings + - x86/MCE/AMD: Always give panic severity for UC errors in kernel context + - platform/x86: peaq-wmi: Add DMI check before binding to the WMI interface + - platform/x86: peaq_wmi: Fix missing terminating entry for peaq_dmi_table + - HID: cp2112: add HIDRAW dependency + - HID: wacom: generic: Recognize WACOM_HID_WD_PEN as a type of pen collection + - rpmsg: glink: Add missing MODULE_LICENSE + - staging: wilc1000: Fix bssid buffer offset in Txq + - staging: sm750fb: Fix parameter mistake in poke32 + - staging: ccree: fix 64 bit scatter/gather DMA ops + - staging: greybus: spilib: fix use-after-free after deregistration + - staging: rtl8188eu: Revert 4 commits breaking ARP + - spi: fix use-after-free at controller deregistration + - sparc32: Add cmpxchg64(). + - sparc64: mmu_context: Add missing include files + - sparc64: Fix page table walk for PUD hugepages + - Linux 4.14.1 + * Set PANIC_TIMEOUT=10 on Power Systems (LP: #1730660) + - [Config]: Set PANIC_TIMEOUT=10 on ppc64el + * enable CONFIG_SND_SOC_INTEL_BYT_CHT_NOCODEC_MACH easily confuse users + (LP: #1732627) + - [Config] CONFIG_SND_SOC_INTEL_BYT_CHT_NOCODEC_MACH=n + * Miscellaneous Ubuntu changes + - SAUCE: (noup) Update spl to 0.7.3-1ubuntu1, zfs to 0.7.3-1ubuntu1 + + [ Ubuntu: 4.14.0-7.9 ] + + * Miscellaneous Ubuntu changes + - SAUCE: apparmor: add base infastructure for socket mediation + - SAUCE: apparmor: af_unix mediation + - SAUCE: LSM stacking: procfs: add smack subdir to attrs + - SAUCE: LSM stacking: LSM: manage credential security blobs + - SAUCE: LSM stacking: LSM: Manage file security blobs + - SAUCE: LSM stacking: LSM: manage task security blobs + - SAUCE: LSM stacking: LSM: Infrastructure management of the remaining blobs + - SAUCE: LSM stacking: LSM: general but not extreme module stacking + - SAUCE: LSM stacking: LSM: Complete task_alloc hook + - SAUCE: LSM stacking: fixup procsfs: add smack subdir to attrs + - SAUCE: LSM stacking: fixup initialize task->security + - SAUCE: LSM stacking: fixup: alloc_task_ctx is dead code + - SAUCE: LSM stacking: add support for stacking getpeersec_stream + - SAUCE: LSM stacking: add stacking support to apparmor network hooks + - SAUCE: LSM stacking: fixup apparmor stacking enablement + - SAUCE: LSM stacking: fixup stacking kconfig + - SAUCE: LSM stacking: allow selecting multiple LSMs using kernel boot params + - SAUCE: LSM stacking: provide prctl interface for setting context + - SAUCE: LSM stacking: inherit current display LSM + - SAUCE: LSM stacking: keep an index for each registered LSM + - SAUCE: LSM stacking: verify display LSM + - SAUCE: LSM stacking: provide a way to specify the default display lsm + - SAUCE: LSM stacking: make sure LSM blob align on 64 bit boundaries + - SAUCE: LSM stacking: add /proc//attr/display_lsm + - SAUCE: LSM stacking: add Kconfig to set default display LSM + - SAUCE: LSM stacking: add configs for LSM stacking + - SAUCE: LSM stacking: check for invalid zero sized writes + - [Config] Run updateconfigs after merging LSM stacking + - [Config] CONFIG_AMD_MEM_ENCRYPT=y + * Rebase to v4.14 + + [ Ubuntu: 4.14.0-6.8 ] + + * Miscellaneous Ubuntu changes + - SAUCE: add workarounds to enable ZFS for 4.14 + * Rebase to v4.14-rc8 + + [ Ubuntu: 4.14.0-5.7 ] + + * Miscellaneous Ubuntu changes + - [Debian] Fix invocation of dh_prep for dbgsym packages + + [ Ubuntu: 4.14.0-4.5 ] + + * Miscellaneous Ubuntu changes + - [Packaging] virtualbox -- reduce in kernel module versions + - vbox-update: Fix up KERN_DIR definitions + - ubuntu: vbox -- update to 5.2.0-dfsg-2 + - [Config] CONFIG_AMD_MEM_ENCRYPT=n + * Rebase to v4.14-rc7 + + [ Ubuntu: 4.14.0-3.4 ] + + * Touchpad and TrackPoint Dose Not Work on Lenovo X1C6 and X280 (LP: #1723986) + - SAUCE: Input: synaptics-rmi4 - RMI4 can also use SMBUS version 3 + - SAUCE: Input: synaptics - Lenovo X1 Carbon 5 should use SMBUS/RMI + - SAUCE: Input: synaptics - add Intertouch support on X1 Carbon 6th and X280 + * powerpc/64s: Add workaround for P9 vector CI load issuenext (LP: #1721070) + - powerpc/64s: Add workaround for P9 vector CI load issue + * Miscellaneous Ubuntu changes + - SAUCE: staging: vboxvideo: Fix reporting invalid suggested-offset-properties + - [Config] CONFIG_DRM_VBOXVIDEO=m + - SAUCE: Import aufs driver + - [Config] Enable aufs + - [Config] Reorder annotations file after enabling aufs + - vbox-update: Disable imported vboxvideo module + - ubuntu: vbox -- update to 5.1.30-dfsg-1 + - Enable vbox + - hio: Use correct sizes when initializing ssd_index_bits* arrays + - hio: Update io stat accounting for 4.14 + - Enable hio + * Rebase to v4.14-rc5 + * Rebase to v4.14-rc6 + + [ Ubuntu: 4.14.0-2.3 ] + + * [Bug] USB controller failed to respond on Denverton after loading + intel_th_pci module (LP: #1715833) + - SAUCE: PCI: Disable broken RTIT_BAR of Intel TH + * CONFIG_DEBUG_FS is not enabled by "make zfcpdump_defconfig" with Ubuntu + 17.10 (kernel 4.13) (LP: #1719290) + - SAUCE: s390: update zfcpdump_defconfig + * Add installer support for Broadcom BCM573xx network drivers. (LP: #1720466) + - d-i: Add bnxt_en to nic-modules. + * Miscellaneous Ubuntu changes + - [Config] Update annotations for 4.14-rc2 + * Rebase to v4.14-rc3 + * Rebase to v4.14-rc4 + + [ Ubuntu: 4.14.0-1.2 ] + + * [Bug] USB 3.1 Gen2 works as 5Gbps (LP: #1720045) + - xhci: set missing SuperSpeedPlus Link Protocol bit in roothub descriptor + * Please make linux-libc-dev Provide: aufs-dev (LP: #1716091) + - [Packaging] Add aufs-dev to the Provides: for linux-libc-dev + * Upgrade to 4.13.0-11.12 in artful amd64 VM breaks display on wayland + (LP: #1718679) + - [Config] CONFIG_DRM_VBOXVIDEO=n + * ipmmu-vmsa driver breaks arm64 boots (LP: #1718734) + - [Config] Disable CONFIG_IPMMU_VMSA on arm64 + * autopkgtest profile fails to build on armhf (LP: #1717920) + - [Packaging] autopkgtest -- disable d-i when dropping flavours + * Miscellaneous Ubuntu changes + - [Config] CONFIG_I2C_XLP9XX=m + - [Packaging] Use SRCPKGNAME rather than hard-coding the source package name + * Rebase to v4.14-rc2 + + [ Ubuntu: 4.14.0-0.1 ] + + * Miscellaneous Ubuntu changes + - Disable vbox build + - Disable hio build + - Disable zfs build + * Rebase to v4.14-rc1 + + -- Marcelo Henrique Cerri Thu, 01 Feb 2018 11:56:07 -0200 + +linux-azure (4.15.0-1000.0) bionic; urgency=low + + * Empty. + + -- Marcelo Henrique Cerri Wed, 31 Jan 2018 15:15:26 -0200 + +linux-azure (4.13.0-1008.11) xenial; urgency=low + + * linux-azure: 4.13.0-1008.11 -proposed tracker (LP: #1745669) + + * [Hyper-V] x86/hyperv: Stop suppressing X86_FEATURE_PCID (LP: #1745247) + - x86/hyperv: Stop suppressing X86_FEATURE_PCID + + * [Hyper-V] scsi: storvsc: Spread interrupts when picking a channel for I/O + requests (LP: #1745260) + - SAUCE: scsi: storvsc: Spread interrupts when picking a channel for I/O + requests + + * [Hyper-V] scsi: storvsc: Increase cmd_per_lun for higher speed devices + (LP: #1745261) + - SAUCE: scsi: storvsc: Increase cmd_per_lun for higher speed devices + - [Config] CONFIG_SCSI_MQ_DEFAULT=y + + -- Marcelo Henrique Cerri Mon, 29 Jan 2018 10:58:22 -0200 + +linux-azure (4.13.0-1007.9) xenial; urgency=low + + [ Ubuntu: 4.13.0-32.35 ] + + * CVE-2017-5715 // CVE-2017-5753 + - SAUCE: x86/entry: Fix up retpoline assembler labels + + [ Ubuntu: 4.13.0-31.34 ] + + * linux: 4.13.0-31.34 -proposed tracker (LP: #1744294) + * CVE-2017-5715 // CVE-2017-5753 + - SAUCE: s390: improve cpu alternative handling for gmb and nobp + - SAUCE: s390: print messages for gmb and nobp + - [Config] KERNEL_NOBP=y + + [ Ubuntu: 4.13.0-30.33 ] + + * linux: 4.13.0-30.33 -proposed tracker (LP: #1743412) + * Do not duplicate changelog entries assigned to more than one bug or CVE + (LP: #1743383) + - [Packaging] git-ubuntu-log -- handle multiple bugs/cves better + * Unable to handle kernel NULL pointer dereference at isci_task_abort_task + (LP: #1726519) + - Revert "scsi: libsas: allow async aborts" + * CVE-2017-5715 // CVE-2017-5753 + - SAUCE: x86/microcode: Extend post microcode reload to support IBPB feature + -- repair missmerge + - Revert "x86/svm: Add code to clear registers on VM exit" + - kvm: vmx: Scrub hardware GPRs at VM-exit + + -- Stefan Bader Thu, 25 Jan 2018 11:18:29 +0100 + +linux-azure (4.13.0-1006.8) xenial; urgency=low + + * linux-azure: 4.13.0-1006.8 -proposed tracker (LP: #1742723) + + + [ Ubuntu: 4.13.0-29.32 ] + + * linux: 4.13.0-29.32 -proposed tracker (LP: #1742722) + * CVE-2017-5754 + - Revert "x86/cpu: Implement CPU vulnerabilites sysfs functions" + - Revert "sysfs/cpu: Fix typos in vulnerability documentation" + - Revert "sysfs/cpu: Add vulnerability folder" + - Revert "UBUNTU: [Config] updateconfigs to enable + GENERIC_CPU_VULNERABILITIES" + + [ Ubuntu: 4.13.0-28.31 ] + + * CVE-2017-5753 + - SAUCE: x86/kvm: Fix stuff_RSB() for 32-bit + * CVE-2017-5715 + - SAUCE: x86/kvm: Fix stuff_RSB() for 32-bit + + [ Ubuntu: 4.13.0-27.30 ] + + * CVE-2017-5753 + - locking/barriers: introduce new memory barrier gmb() + - bpf: prevent speculative execution in eBPF interpreter + - x86, bpf, jit: prevent speculative execution when JIT is enabled + - uvcvideo: prevent speculative execution + - carl9170: prevent speculative execution + - p54: prevent speculative execution + - qla2xxx: prevent speculative execution + - cw1200: prevent speculative execution + - Thermal/int340x: prevent speculative execution + - userns: prevent speculative execution + - ipv6: prevent speculative execution + - fs: prevent speculative execution + - net: mpls: prevent speculative execution + - udf: prevent speculative execution + - x86/feature: Enable the x86 feature to control Speculation + - x86/feature: Report presence of IBPB and IBRS control + - x86/enter: MACROS to set/clear IBRS and set IBPB + - x86/enter: Use IBRS on syscall and interrupts + - x86/idle: Disable IBRS entering idle and enable it on wakeup + - x86/idle: Disable IBRS when offlining cpu and re-enable on wakeup + - x86/mm: Set IBPB upon context switch + - x86/mm: Only set IBPB when the new thread cannot ptrace current thread + - x86/entry: Stuff RSB for entry to kernel for non-SMEP platform + - x86/kvm: add MSR_IA32_SPEC_CTRL and MSR_IA32_PRED_CMD to kvm + - x86/kvm: Set IBPB when switching VM + - x86/kvm: Toggle IBRS on VM entry and exit + - x86/kvm: Pad RSB on VM transition + - x86/spec_ctrl: Add sysctl knobs to enable/disable SPEC_CTRL feature + - x86/spec_ctrl: Add lock to serialize changes to ibrs and ibpb control + - x86/syscall: Clear unused extra registers on syscall entrance + - x86/syscall: Clear unused extra registers on 32-bit compatible syscall + entrance + - x86/entry: Use retpoline for syscall's indirect calls + - x86/cpu/AMD: Add speculative control support for AMD + - x86/microcode: Extend post microcode reload to support IBPB feature + - KVM: SVM: Do not intercept new speculative control MSRs + - x86/svm: Set IBRS value on VM entry and exit + - x86/svm: Set IBPB when running a different VCPU + - KVM: x86: Add speculative control CPUID support for guests + - x86/svm: Add code to clobber the RSB on VM exit + - x86/svm: Add code to clear registers on VM exit + - x86/cpu/AMD: Remove now unused definition of MFENCE_RDTSC feature + - powerpc: add gmb barrier + - s390/spinlock: add gmb memory barrier + - x86/microcode/AMD: Add support for fam17h microcode loading + * CVE-2017-5715 + - locking/barriers: introduce new memory barrier gmb() + - bpf: prevent speculative execution in eBPF interpreter + - x86, bpf, jit: prevent speculative execution when JIT is enabled + - uvcvideo: prevent speculative execution + - carl9170: prevent speculative execution + - p54: prevent speculative execution + - qla2xxx: prevent speculative execution + - cw1200: prevent speculative execution + - Thermal/int340x: prevent speculative execution + - userns: prevent speculative execution + - ipv6: prevent speculative execution + - fs: prevent speculative execution + - net: mpls: prevent speculative execution + - udf: prevent speculative execution + - x86/feature: Enable the x86 feature to control Speculation + - x86/feature: Report presence of IBPB and IBRS control + - x86/enter: MACROS to set/clear IBRS and set IBPB + - x86/enter: Use IBRS on syscall and interrupts + - x86/idle: Disable IBRS entering idle and enable it on wakeup + - x86/idle: Disable IBRS when offlining cpu and re-enable on wakeup + - x86/mm: Set IBPB upon context switch + - x86/mm: Only set IBPB when the new thread cannot ptrace current thread + - x86/entry: Stuff RSB for entry to kernel for non-SMEP platform + - x86/kvm: add MSR_IA32_SPEC_CTRL and MSR_IA32_PRED_CMD to kvm + - x86/kvm: Set IBPB when switching VM + - x86/kvm: Toggle IBRS on VM entry and exit + - x86/kvm: Pad RSB on VM transition + - x86/spec_ctrl: Add sysctl knobs to enable/disable SPEC_CTRL feature + - x86/spec_ctrl: Add lock to serialize changes to ibrs and ibpb control + - x86/syscall: Clear unused extra registers on syscall entrance + - x86/syscall: Clear unused extra registers on 32-bit compatible syscall + entrance + - x86/entry: Use retpoline for syscall's indirect calls + - x86/cpu/AMD: Add speculative control support for AMD + - x86/microcode: Extend post microcode reload to support IBPB feature + - KVM: SVM: Do not intercept new speculative control MSRs + - x86/svm: Set IBRS value on VM entry and exit + - x86/svm: Set IBPB when running a different VCPU + - KVM: x86: Add speculative control CPUID support for guests + - x86/svm: Add code to clobber the RSB on VM exit + - x86/svm: Add code to clear registers on VM exit + - x86/cpu/AMD: Remove now unused definition of MFENCE_RDTSC feature + - powerpc: add gmb barrier + - s390/spinlock: add gmb memory barrier + - x86/microcode/AMD: Add support for fam17h microcode loading + * CVE-2017-5754 + - x86/pti: Enable PTI by default + - x86/pti: Make sure the user/kernel PTEs match + - x86/dumpstack: Fix partial register dumps + - x86/dumpstack: Print registers for first stack frame + - x86/process: Define cpu_tss_rw in same section as declaration + - x86/mm: Set MODULES_END to 0xffffffffff000000 + - x86/mm: Map cpu_entry_area at the same place on 4/5 level + - x86/kaslr: Fix the vaddr_end mess + - x86/events/intel/ds: Use the proper cache flush method for mapping ds + buffers + - x86/tlb: Drop the _GPL from the cpu_tlbstate export + - x86/alternatives: Add missing '\n' at end of ALTERNATIVE inline asm + - x86/pti: Rename BUG_CPU_INSECURE to BUG_CPU_MELTDOWN + - x86/pti: Unbreak EFI old_memmap + - x86/Documentation: Add PTI description + - x86/cpufeatures: Add X86_BUG_SPECTRE_V[12] + - sysfs/cpu: Add vulnerability folder + - x86/cpu: Implement CPU vulnerabilites sysfs functions + - x86/tboot: Unbreak tboot with PTI enabled + - x86/mm/pti: Remove dead logic in pti_user_pagetable_walk*() + - x86/cpu/AMD: Make LFENCE a serializing instruction + - x86/cpu/AMD: Use LFENCE_RDTSC in preference to MFENCE_RDTSC + - sysfs/cpu: Fix typos in vulnerability documentation + - x86/alternatives: Fix optimize_nops() checking + - x86/pti: Make unpoison of pgd for trusted boot work for real + - s390: introduce CPU alternatives + - s390: add ppa to kernel entry / exit + - SAUCE: powerpc: Secure memory rfi flush + - SAUCE: rfi-flush: Make DEBUG_RFI a CONFIG option + - SAUCE: rfi-flush: Add HRFI_TO_UNKNOWN and use it in denorm + - SAUCE: rfi-flush: kvmppc_skip_(H)interrupt returns to host kernel + - SAUCE: KVM: Revert the implementation of H_GET_CPU_CHARACTERISTICS + - SAUCE: rfi-flush: Implement congruence-first fallback flush + - SAUCE: rfi-flush: Make l1d_flush_type bit flags + - SAUCE: rfi-flush: Push the instruction selection down to the patching + routine + - SAUCE: rfi-flush: Expand the RFI section to two nop slots + - SAUCE: rfi-flush: Support more than one flush type at once + - SAUCE: rfi-flush: Allow HV to advertise multiple flush types + - SAUCE: rfi-flush: Add speculation barrier before ori 30,30,0 flush + - SAUCE: rfi-flush: Add barriers to the fallback L1D flushing + - SAUCE: rfi-flush: Rework powernv logic to be more cautious + - SAUCE: rfi-flush: Rework pseries logic to be more cautious + - SAUCE: rfi-flush: Put the fallback flushes in the real trampoline section + - SAUCE: rfi-flush: Fix the fallback flush to actually activate + - SAUCE: rfi-flush: Fix HRFI_TO_UNKNOWN + - SAUCE: rfi-flush: Refactor the macros so the nops are defined once + - SAUCE: rfi-flush: Add no_rfi_flush and nopti comandline options + - SAUCE: rfi-flush: Use rfi-flush in printks + - SAUCE: rfi-flush: Fallback flush add load dependency + - SAUCE: rfi-flush: Fix the 32-bit KVM build + - SAUCE: rfi-flush: Fix some RFI conversions in the KVM code + - SAUCE: rfi-flush: Make the fallback robust against memory corruption + - [Config] Disable CONFIG_PPC_DEBUG_RFI + - [Config] updateconfigs to enable GENERIC_CPU_VULNERABILITIES + * powerpc: flush L1D on return to use (LP: #1742772) + - SAUCE: powerpc: Secure memory rfi flush + - SAUCE: rfi-flush: Make DEBUG_RFI a CONFIG option + - SAUCE: rfi-flush: Add HRFI_TO_UNKNOWN and use it in denorm + - SAUCE: rfi-flush: kvmppc_skip_(H)interrupt returns to host kernel + - SAUCE: KVM: Revert the implementation of H_GET_CPU_CHARACTERISTICS + - SAUCE: rfi-flush: Implement congruence-first fallback flush + - SAUCE: rfi-flush: Make l1d_flush_type bit flags + - SAUCE: rfi-flush: Push the instruction selection down to the patching + routine + - SAUCE: rfi-flush: Expand the RFI section to two nop slots + - SAUCE: rfi-flush: Support more than one flush type at once + - SAUCE: rfi-flush: Allow HV to advertise multiple flush types + - SAUCE: rfi-flush: Add speculation barrier before ori 30,30,0 flush + - SAUCE: rfi-flush: Add barriers to the fallback L1D flushing + - SAUCE: rfi-flush: Rework powernv logic to be more cautious + - SAUCE: rfi-flush: Rework pseries logic to be more cautious + - SAUCE: rfi-flush: Put the fallback flushes in the real trampoline section + - SAUCE: rfi-flush: Fix the fallback flush to actually activate + - SAUCE: rfi-flush: Fix HRFI_TO_UNKNOWN + - SAUCE: rfi-flush: Refactor the macros so the nops are defined once + - SAUCE: rfi-flush: Add no_rfi_flush and nopti comandline options + - SAUCE: rfi-flush: Use rfi-flush in printks + - SAUCE: rfi-flush: Fallback flush add load dependency + - SAUCE: rfi-flush: Fix the 32-bit KVM build + - SAUCE: rfi-flush: Fix some RFI conversions in the KVM code + - SAUCE: rfi-flush: Make the fallback robust against memory corruption + - [Config] Disable CONFIG_PPC_DEBUG_RFI + * s390: add ppa to kernel entry/exit (LP: #1742771) + - s390: introduce CPU alternatives + - s390: add ppa to kernel entry / exit + + -- Marcelo Henrique Cerri Fri, 12 Jan 2018 10:09:43 -0200 + +linux-azure (4.13.0-1005.7) xenial; urgency=low + + * linux-azure: 4.13.0-1005.7 -proposed tracker (LP: #1741957) + + * CVE-2017-5754 + - Revert "UBUNTU: [Config] azure: updateconfigs to enable PTI" + - [Config] azure: Enable PTI with UNWINDER_FRAME_POINTER + + [ Ubuntu: 4.13.0-25.29 ] + + * linux: 4.13.0-25.29 -proposed tracker (LP: #1741955) + * CVE-2017-5754 + - Revert "UBUNTU: [Config] updateconfigs to enable PTI" + - [Config] Enable PTI with UNWINDER_FRAME_POINTER + + -- Marcelo Henrique Cerri Mon, 08 Jan 2018 19:15:21 -0200 + +linux-azure (4.13.0-1004.6) xenial; urgency=low + + * linux-azure: 4.13.0-1004.6 -proposed tracker (LP: #1741747) + + + [ Ubuntu: 4.13.0-24.28 ] + + * linux: 4.13.0-24.28 -proposed tracker (LP: #1741745) + * CVE-2017-5754 + - x86/cpu, x86/pti: Do not enable PTI on AMD processors + + -- Marcelo Henrique Cerri Sun, 07 Jan 2018 14:35:50 -0200 + +linux-azure (4.13.0-1003.5) xenial; urgency=low + + * linux-azure: 4.13.0-1003.5 -proposed tracker (LP: #1741557) + + * CVE-2017-5754 + - [Config] azure: updateconfigs to enable PTI + + [ Ubuntu: 4.13.0-23.27 ] + + * linux: 4.13.0-23.27 -proposed tracker (LP: #1741556) + * CVE-2017-5754 + - x86/mm: Add the 'nopcid' boot option to turn off PCID + - x86/mm: Enable CR4.PCIDE on supported systems + - x86/mm: Document how CR4.PCIDE restore works + - x86/entry/64: Refactor IRQ stacks and make them NMI-safe + - x86/entry/64: Initialize the top of the IRQ stack before switching stacks + - x86/entry/64: Add unwind hint annotations + - xen/x86: Remove SME feature in PV guests + - x86/xen/64: Rearrange the SYSCALL entries + - irq: Make the irqentry text section unconditional + - x86/xen/64: Fix the reported SS and CS in SYSCALL + - x86/paravirt/xen: Remove xen_patch() + - x86/traps: Simplify pagefault tracing logic + - x86/idt: Unify gate_struct handling for 32/64-bit kernels + - x86/asm: Replace access to desc_struct:a/b fields + - x86/xen: Get rid of paravirt op adjust_exception_frame + - x86/paravirt: Remove no longer used paravirt functions + - x86/entry: Fix idtentry unwind hint + - x86/mm/64: Initialize CR4.PCIDE early + - objtool: Add ORC unwind table generation + - objtool, x86: Add facility for asm code to provide unwind hints + - x86/unwind: Add the ORC unwinder + - x86/kconfig: Consolidate unwinders into multiple choice selection + - objtool: Upgrade libelf-devel warning to error for CONFIG_ORC_UNWINDER + - x86/ldt/64: Refresh DS and ES when modify_ldt changes an entry + - x86/mm: Give each mm TLB flush generation a unique ID + - x86/mm: Track the TLB's tlb_gen and update the flushing algorithm + - x86/mm: Rework lazy TLB mode and TLB freshness tracking + - x86/mm: Implement PCID based optimization: try to preserve old TLB entries + using PCID + - x86/mm: Factor out CR3-building code + - x86/mm/64: Stop using CR3.PCID == 0 in ASID-aware code + - x86/mm: Flush more aggressively in lazy TLB mode + - Revert "x86/mm: Stop calling leave_mm() in idle code" + - kprobes/x86: Set up frame pointer in kprobe trampoline + - x86/tracing: Introduce a static key for exception tracing + - x86/boot: Add early cmdline parsing for options with arguments + - mm, x86/mm: Fix performance regression in get_user_pages_fast() + - x86/asm: Remove unnecessary \n\t in front of CC_SET() from asm templates + - objtool: Don't report end of section error after an empty unwind hint + - x86/head: Remove confusing comment + - x86/head: Remove unused 'bad_address' code + - x86/head: Fix head ELF function annotations + - x86/boot: Annotate verify_cpu() as a callable function + - x86/xen: Fix xen head ELF annotations + - x86/xen: Add unwind hint annotations + - x86/head: Add unwind hint annotations + - ACPI / APEI: adjust a local variable type in ghes_ioremap_pfn_irq() + - x86/unwinder: Make CONFIG_UNWINDER_ORC=y the default in the 64-bit defconfig + - x86/fpu/debug: Remove unused 'x86_fpu_state' and 'x86_fpu_deactivate_state' + tracepoints + - x86/unwind: Rename unwinder config options to 'CONFIG_UNWINDER_*' + - x86/unwind: Make CONFIG_UNWINDER_ORC=y the default in kconfig for 64-bit + - bitops: Add clear/set_bit32() to linux/bitops.h + - x86/cpuid: Add generic table for CPUID dependencies + - x86/fpu: Parse clearcpuid= as early XSAVE argument + - x86/fpu: Make XSAVE check the base CPUID features before enabling + - x86/fpu: Remove the explicit clearing of XSAVE dependent features + - x86/platform/UV: Convert timers to use timer_setup() + - objtool: Print top level commands on incorrect usage + - x86/cpuid: Prevent out of bound access in do_clear_cpu_cap() + - x86/entry: Use SYSCALL_DEFINE() macros for sys_modify_ldt() + - mm/sparsemem: Allocate mem_section at runtime for CONFIG_SPARSEMEM_EXTREME=y + - x86/kasan: Use the same shadow offset for 4- and 5-level paging + - x86/xen: Provide pre-built page tables only for CONFIG_XEN_PV=y and + CONFIG_XEN_PVH=y + - x86/xen: Drop 5-level paging support code from the XEN_PV code + - ACPI / APEI: remove the unused dead-code for SEA/NMI notification type + - x86/asm: Don't use the confusing '.ifeq' directive + - x86/build: Beautify build log of syscall headers + - x86/mm/64: Rename the register_page_bootmem_memmap() 'size' parameter to + 'nr_pages' + - x86/cpufeatures: Enable new SSE/AVX/AVX512 CPU features + - x86/mm: Relocate page fault error codes to traps.h + - x86/boot: Relocate definition of the initial state of CR0 + - ptrace,x86: Make user_64bit_mode() available to 32-bit builds + - x86/entry/64: Remove the restore_c_regs_and_iret label + - x86/entry/64: Split the IRET-to-user and IRET-to-kernel paths + - x86/entry/64: Move SWAPGS into the common IRET-to-usermode path + - x86/entry/64: Simplify reg restore code in the standard IRET paths + - x86/entry/64: Shrink paranoid_exit_restore and make labels local + - x86/entry/64: Use pop instead of movq in syscall_return_via_sysret + - x86/entry/64: Merge the fast and slow SYSRET paths + - x86/entry/64: Use POP instead of MOV to restore regs on NMI return + - x86/entry/64: Remove the RESTORE_..._REGS infrastructure + - xen, x86/entry/64: Add xen NMI trap entry + - x86/entry/64: De-Xen-ify our NMI code + - x86/entry/32: Pull the MSR_IA32_SYSENTER_CS update code out of + native_load_sp0() + - x86/entry/64: Pass SP0 directly to load_sp0() + - x86/entry: Add task_top_of_stack() to find the top of a task's stack + - x86/xen/64, x86/entry/64: Clean up SP code in cpu_initialize_context() + - x86/entry/64: Stop initializing TSS.sp0 at boot + - x86/entry/64: Remove all remaining direct thread_struct::sp0 reads + - x86/entry/32: Fix cpu_current_top_of_stack initialization at boot + - x86/entry/64: Remove thread_struct::sp0 + - x86/traps: Use a new on_thread_stack() helper to clean up an assertion + - x86/entry/64: Shorten TEST instructions + - x86/cpuid: Replace set/clear_bit32() + - bitops: Revert cbe96375025e ("bitops: Add clear/set_bit32() to + linux/bitops.h") + - x86/mm: Define _PAGE_TABLE using _KERNPG_TABLE + - x86/cpufeatures: Re-tabulate the X86_FEATURE definitions + - x86/cpufeatures: Fix various details in the feature definitions + - selftests/x86/protection_keys: Fix syscall NR redefinition warnings + - selftests/x86/ldt_gdt: Robustify against set_thread_area() and LAR oddities + - selftests/x86/ldt_gdt: Add infrastructure to test set_thread_area() + - selftests/x86/ldt_gdt: Run most existing LDT test cases against the GDT as + well + - selftests/x86/ldt_get: Add a few additional tests for limits + - ACPI / APEI: Replace ioremap_page_range() with fixmap + - x86/virt, x86/platform: Merge 'struct x86_hyper' into 'struct x86_platform' + and 'struct x86_init' + - x86/virt: Add enum for hypervisors to replace x86_hyper + - drivers/misc/intel/pti: Rename the header file to free up the namespace + - x86/cpufeature: Add User-Mode Instruction Prevention definitions + - x86: Make X86_BUG_FXSAVE_LEAK detectable in CPUID on AMD + - perf/x86: Enable free running PEBS for REGS_USER/INTR + - bpf: fix build issues on um due to mising bpf_perf_event.h + - locking/barriers: Add implicit smp_read_barrier_depends() to READ_ONCE() + - locking/barriers: Convert users of lockless_dereference() to READ_ONCE() + - x86/mm/kasan: Don't use vmemmap_populate() to initialize shadow + - mm/sparsemem: Fix ARM64 boot crash when CONFIG_SPARSEMEM_EXTREME=y + - objtool: Move synced files to their original relative locations + - objtool: Move kernel headers/code sync check to a script + - objtool: Fix cross-build + - tools/headers: Sync objtool UAPI header + - objtool: Fix 64-bit build on 32-bit host + - x86/decoder: Fix and update the opcodes map + - x86/decoder: Add new TEST instruction pattern + - x86/insn-eval: Add utility functions to get segment selector + - x86/entry/64/paravirt: Use paravirt-safe macro to access eflags + - x86/unwinder/orc: Dont bail on stack overflow + - x86/unwinder: Handle stack overflows more gracefully + - x86/irq: Remove an old outdated comment about context tracking races + - x86/irq/64: Print the offending IP in the stack overflow warning + - x86/entry/64: Allocate and enable the SYSENTER stack + - x86/dumpstack: Add get_stack_info() support for the SYSENTER stack + - x86/entry/gdt: Put per-CPU GDT remaps in ascending order + - x86/mm/fixmap: Generalize the GDT fixmap mechanism, introduce struct + cpu_entry_area + - x86/kasan/64: Teach KASAN about the cpu_entry_area + - x86/entry: Fix assumptions that the HW TSS is at the beginning of cpu_tss + - x86/dumpstack: Handle stack overflow on all stacks + - x86/entry: Move SYSENTER_stack to the beginning of struct tss_struct + - x86/entry: Remap the TSS into the CPU entry area + - x86/entry/64: Separate cpu_current_top_of_stack from TSS.sp0 + - x86/espfix/64: Stop assuming that pt_regs is on the entry stack + - x86/entry/64: Use a per-CPU trampoline stack for IDT entries + - x86/entry/64: Return to userspace from the trampoline stack + - x86/entry/64: Create a per-CPU SYSCALL entry trampoline + - x86/entry/64: Move the IST stacks into struct cpu_entry_area + - x86/entry/64: Remove the SYSENTER stack canary + - x86/entry: Clean up the SYSENTER_stack code + - x86/entry/64: Make cpu_entry_area.tss read-only + - x86/paravirt: Dont patch flush_tlb_single + - x86/paravirt: Provide a way to check for hypervisors + - x86/cpufeatures: Make CPU bugs sticky + - x86/Kconfig: Limit NR_CPUS on 32-bit to a sane amount + - x86/mm/dump_pagetables: Check PAGE_PRESENT for real + - x86/mm/dump_pagetables: Make the address hints correct and readable + - x86/vsyscall/64: Explicitly set _PAGE_USER in the pagetable hierarchy + - x86/vsyscall/64: Warn and fail vsyscall emulation in NATIVE mode + - arch, mm: Allow arch_dup_mmap() to fail + - x86/ldt: Rework locking + - x86/ldt: Prevent LDT inheritance on exec + - x86/mm/64: Improve the memory map documentation + - x86/doc: Remove obvious weirdnesses from the x86 MM layout documentation + - x86/entry: Rename SYSENTER_stack to CPU_ENTRY_AREA_entry_stack + - x86/uv: Use the right TLB-flush API + - x86/microcode: Dont abuse the TLB-flush interface + - x86/mm: Use __flush_tlb_one() for kernel memory + - x86/mm: Remove superfluous barriers + - x86/mm: Add comments to clarify which TLB-flush functions are supposed to + flush what + - x86/mm: Move the CR3 construction functions to tlbflush.h + - x86/mm: Remove hard-coded ASID limit checks + - x86/mm: Put MMU to hardware ASID translation in one place + - x86/mm: Create asm/invpcid.h + - x86/cpu_entry_area: Move it to a separate unit + - x86/cpu_entry_area: Move it out of the fixmap + - init: Invoke init_espfix_bsp() from mm_init() + - x86/cpu_entry_area: Prevent wraparound in setup_cpu_entry_area_ptes() on + 32bit + - x86/cpufeatures: Add X86_BUG_CPU_INSECURE + - x86/mm/pti: Disable global pages if PAGE_TABLE_ISOLATION=y + - x86/mm/pti: Prepare the x86/entry assembly code for entry/exit CR3 switching + - x86/mm/pti: Add infrastructure for page table isolation + - x86/pti: Add the pti= cmdline option and documentation + - x86/mm/pti: Add mapping helper functions + - x86/mm/pti: Allow NX poison to be set in p4d/pgd + - x86/mm/pti: Allocate a separate user PGD + - x86/mm/pti: Populate user PGD + - x86/mm/pti: Add functions to clone kernel PMDs + - x86/mm/pti: Force entry through trampoline when PTI active + - x86/mm/pti: Share cpu_entry_area with user space page tables + - x86/entry: Align entry text section to PMD boundary + - x86/mm/pti: Share entry text PMD + - x86/mm/pti: Map ESPFIX into user space + - x86/cpu_entry_area: Add debugstore entries to cpu_entry_area + - x86/events/intel/ds: Map debug buffers in cpu_entry_area + - x86/mm/64: Make a full PGD-entry size hole in the memory map + - x86/pti: Put the LDT in its own PGD if PTI is on + - x86/pti: Map the vsyscall page if needed + - x86/mm: Allow flushing for future ASID switches + - x86/mm: Abstract switching CR3 + - x86/mm: Use/Fix PCID to optimize user/kernel switches + - x86/mm: Optimize RESTORE_CR3 + - x86/mm: Use INVPCID for __native_flush_tlb_single() + - x86/mm: Clarify the whole ASID/kernel PCID/user PCID naming + - x86/dumpstack: Indicate in Oops whether PTI is configured and enabled + - x86/mm/pti: Add Kconfig + - x86/mm/dump_pagetables: Add page table directory to the debugfs VFS + hierarchy + - x86/mm/dump_pagetables: Check user space page table for WX pages + - x86/mm/dump_pagetables: Allow dumping current pagetables + - x86/ldt: Make the LDT mapping RO + - x86/smpboot: Remove stale TLB flush invocations + - x86/mm: Remove preempt_disable/enable() from __native_flush_tlb() + - x86/ldt: Plug memory leak in error path + - x86/ldt: Make LDT pgtable free conditional + - [Config] updateconfigs to enable PTI + - kvm: x86: fix RSM when PCID is non-zero + - x86/pti: Switch to kernel CR3 at early in entry_SYSCALL_compat() + - SAUCE: only attempt to use PCID in 64 bit builds + - SAUCE: BODGE: temporarily disable some kprobe trace points which are + cratering + - s390/mm: use generic mm_hooks + - objtool: use sh to invoke sync-check.sh in the Makefile + * CVE-2017-17862 + - bpf: fix branch pruning logic + * CVE-2017-17864 + - SAUCE: bpf/verifier: Fix states_equal() comparison of pointer and UNKNOWN + * CVE-2017-16995 + - bpf: fix incorrect sign extension in check_alu_op() + * CVE-2017-17863 + - SAUCE: bpf: reject out-of-bounds stack pointer calculation + + [ Ubuntu: 4.13.0-21.24 ] + + * linux: 4.13.0-21.24 -proposed tracker (LP: #1738823) + * Ubuntu 17.10 corrupting BIOS - many LENOVO laptops models (LP: #1734147) + - [Config] CONFIG_SPI_INTEL_SPI_PLATFORM=n + + -- Marcelo Henrique Cerri Sat, 06 Jan 2018 19:32:50 -0200 + +linux-azure (4.13.0-1002.3) xenial; urgency=low + + * linux-azure: 4.13.0-1002.3 -proposed tracker (LP: #1737951) + + * [hyper-v] reloading netvsc issue on linux-azure 4.13.0-1001.1 (LP: #1735546) + - hv_netvsc: netvsc_teardown_gpadl() split + + * linux-azure-edge: [Ubuntu-azure-edge-4.13.0-1005.5]: refresh the rescind- + handling, hv_sock and vPCI drivers (LP: #1736283) + - Revert "UBUNTU: SAUCE: hv-sock: avoid double FINs if shutdown() is called" + - Revert "UBUNTU: SAUCE: hv-sock: a temporary workaround for the + pending_send_size issue" + - Revert "UBUNTU: SAUCE: hvsock: fix a race in hvs_stream_dequeue()" + - Revert "UBUNTU: SAUCE: hv_sock: add the support of auto-loading" + - Revert "UBUNTU: SAUCE: hv_sock: implements Hyper-V transport for Virtual + Sockets (AF_VSOCK)" + - Revert "UBUNTU: SAUCE: vmbus: dynamically enqueue/dequeue a channel on + vmbus_open/close" + - Revert "UBUNTU: SAUCE: vmbus: remove "goto error_clean_msglist" in + vmbus_open()" + - Revert "UBUNTU: SAUCE: vmbus: vmbus_open(): reset onchannel_callback on + error" + - Revert "UBUNTU: SAUCE: tools: hv_sock: 2 simple test cases." + - Revert "UBUNTU: SAUCE: hvsock: fix vsock_dequeue/enqueue_accept race" + - Revert "UBUNTU:SAUCE: vmbus: suppress uevents for hv_sock devices" + - Revert "UBUNTU: SAUCE: vmbus: add vmbus onoffer/onoffer_rescind sync." + - Revert "UBUNTU: SAUCE: vmbus: fix hv_percpu_channel_deq/enq race" + - SAUCE: vmbus: unregister device_obj->channels_kset + - Drivers: hv: vmbus: Fix a rescind issue + - vmbus: hvsock: add proper sync for vmbus_hvsock_device_unregister() + - hv_sock: implements Hyper-V transport for Virtual Sockets (AF_VSOCK) + - hv_sock: add locking in the open/close/release code paths + - PCI: hv: Use effective affinity mask + + [ Ubuntu: 4.13.0-19.22 ] + + * linux: 4.13.0-19.22 -proposed tracker (LP: #1736118) + * CVE-2017-1000405 + - mm, thp: Do not make page table dirty unconditionally in touch_p[mu]d() + + -- Marcelo Henrique Cerri Wed, 13 Dec 2017 09:00:12 -0200 + +linux-azure (4.13.0-1001.1) xenial; urgency=low + + * linux-azure: 4.13.0-1001.1 -proposed tracker (LP: #1733535) + + * TLB updates from 4.14 for linux-azure (LP: #1729412) + - x86/hyperv: Clear vCPU banks between calls to avoid flushing unneeded vCPUs + - x86/hyperv: Don't use percpu areas for pcpu_flush/pcpu_flush_ex structures + - x86/hyperv: Fix hypercalls with extended CPU ranges for TLB flushing + + * Update linux-azure and linux-azure-edge kernels with 4.13 patches + (LP: #1731994) + - SAUCE: Adding file to support building user level daemon + - vmbus: remove unused vmbus_sendpacket_multipagebuffer + - vmbus: remove unused vmbus_sendpacket_ctl + - SAUCE: x86/hyper-v: sync fast hypercall implementation with 4.14 + - x86/hyper-v: Use hypercall for remote TLB flush + - x86/hyper-v: Support extended CPU ranges for TLB flush hypercalls + - tracing/hyper-v: Trace hyperv_mmu_flush_tlb_others() + - netvsc: force link update after MTU change + - netvsc: need rcu_derefence when accessing internal device info + - netvsc: save pointer to parent netvsc_device in channel table + - netvsc: add rtnl annotations in rndis + - netvsc: fix ptr_ret.cocci warnings + - netvsc: remove bogus rtnl_unlock + - netvsc: Remove redundant use of ipv6_hdr() + - netvsc: fix netvsc_set_channels + - netvsc: remove no longer used max_num_rss queues + - netvsc: fix return value for set_channels + - netvsc: fix warnings reported by lockdep + - netvsc: don't print pointer value in error message + - netvsc: remove unnecessary indirection of page_buffer + - netvsc: fix error unwind on device setup failure + - netvsc: signal host if receive ring is emptied + - hyperv: netvsc: Neaten netvsc_send_pkt by using a temporary + - netvsc: check error return when restoring channels and mtu + - netvsc: no need to allocate send/receive on numa node + - netvsc: keep track of some non-fatal overload conditions + - Tools: hv: vss: Skip freezing filesystems backed by loop + - Drivers: hv: balloon: Correctly update onlined page count + - Drivers: hv: balloon: Show the max dynamic memory assigned + - Drivers: hv: balloon: Initialize last_post_time on startup + - Drivers: hv: kvp: Use MAX_ADAPTER_ID_SIZE for translating adapter id + - netvsc: don't signal host twice if empty + - SAUCE: vmbus: simplify packet iterator + - SAUCE: vmbus: fix performance regression + - netvsc: whitespace cleanup + - netvsc: remove unnecessary cast of void pointer + - netvsc: remove unnecessary check for NULL hdr + - Tools: hv: fix snprintf warning in kvp_daemon + - Tools: hv: update buffer handling in hv_fcopy_daemon + - SAUCE: vmbus: suppress uevents for hv_sock devices + - hv_netvsc: Clean up unused parameter from netvsc_get_hash() + - hv_netvsc: Clean up unused parameter from netvsc_get_rss_hash_opts() + - hv_netvsc: Add ethtool handler to set and get UDP hash levels + - SAUCE: vmbus: add per-channel sysfs info + - SAUCE: vmbus: expose per-channel interrupts and events counters + - SAUCE: vmbus: make vmbus_set_event local + - hv_netvsc: Fix rndis_filter_close error during netvsc_remove + - netvsc: cleanup datapath switch + - netvsc: allow driver to be removed even if VF is present + - hv_netvsc: Clean up an unused parameter in rndis_filter_set_rss_param() + - hv_netvsc: Simplify num_chn checking in rndis_filter_device_add() + - hv_netvsc: Simplify the limit check in netvsc_set_channels() + - hv_netvsc: Fix the channel limit in netvsc_set_rxfh() + - SAUCE: netvsc: defer initializing sub-channels + - hv_netvsc: avoid unnecessary wakeups on subchannel creation + - netvsc: pass net_device to netvsc_init_buf and netvsc_connect_vsp + + * linux-azure-edge: Rebase to Artful Ubuntu-4.13.0-17.20 (LP: #1730444) + - [Debian] Sync debian/control templates with Artful + - [Config] updateconfigs after rebase to Ubuntu-4.13.0-17.20 + + * Rebase linux-azure to 4.13 (LP: #1719610) + - SAUCE: netvsc: do not use get_outbound_net_device() + - SAUCE: vmbus-rdma: rename struct ib_ah_attr to rdma_ah_attr + - [Config] updateconfigs for 4.13 + + [ Ubuntu: 4.13.0-18.21 ] + + * linux: 4.13.0-18.21 -proposed tracker (LP: #1733530) + * NVMe timeout is too short (LP: #1729119) + - nvme: update timeout module parameter type + * CPU call trace on AMD Raven Ridge after S3 (LP: #1732894) + - x86/mce/AMD: Allow any CPU to initialize the smca_banks array + * Set PANIC_TIMEOUT=10 on Power Systems (LP: #1730660) + - [Config]: Set PANIC_TIMEOUT=10 on ppc64el + * Cannot pair BLE remote devices when using combo BT SoC (LP: #1731467) + - Bluetooth: increase timeout for le auto connections + * enable CONFIG_SND_SOC_INTEL_BYT_CHT_NOCODEC_MACH easily confuse users + (LP: #1732627) + - [Config] CONFIG_SND_SOC_INTEL_BYT_CHT_NOCODEC_MACH=n + * Plantronics P610 does not support sample rate reading (LP: #1719853) + - ALSA: usb-audio: Add sample rate quirk for Plantronics P610 + * Allow drivers to use Relaxed Ordering on capable root ports (LP: #1721365) + - Revert commit 1a8b6d76dc5b ("net:add one common config...") + - net: ixgbe: Use new PCI_DEV_FLAGS_NO_RELAXED_ORDERING flag + * support GICv3 ITS save/restore & migration (LP: #1710019) + - KVM: arm/arm64: vgic-its: Fix return value for device table restore + * Device hotplugging with MPT SAS cannot work for VMWare ESXi (LP: #1730852) + - scsi: mptsas: Fixup device hotplug for VMWare ESXi + * Artful update to 4.13.13 stable release (LP: #1732726) + - netfilter: nat: Revert "netfilter: nat: convert nat bysrc hash to + rhashtable" + - netfilter: nft_set_hash: disable fast_ops for 2-len keys + - workqueue: Fix NULL pointer dereference + - crypto: ccm - preserve the IV buffer + - crypto: x86/sha1-mb - fix panic due to unaligned access + - crypto: x86/sha256-mb - fix panic due to unaligned access + - KEYS: fix NULL pointer dereference during ASN.1 parsing [ver #2] + - ACPI / PM: Blacklist Low Power S0 Idle _DSM for Dell XPS13 9360 + - ARM: 8720/1: ensure dump_instr() checks addr_limit + - ALSA: timer: Limit max instances per timer + - ALSA: usb-audio: support new Amanero Combo384 firmware version + - ALSA: hda - fix headset mic problem for Dell machines with alc274 + - ALSA: seq: Fix OSS sysex delivery in OSS emulation + - ALSA: seq: Avoid invalid lockdep class warning + - MIPS: Fix CM region target definitions + - MIPS: BMIPS: Fix missing cbr address + - MIPS: AR7: Defer registration of GPIO + - MIPS: AR7: Ensure that serial ports are properly set up + - KVM: PPC: Book3S HV: Fix exclusion between HPT resizing and other HPT + updates + - Input: elan_i2c - add ELAN060C to the ACPI table + - rbd: use GFP_NOIO for parent stat and data requests + - drm/vmwgfx: Fix Ubuntu 17.10 Wayland black screen issue + - Revert "x86: CPU: Fix up "cpu MHz" in /proc/cpuinfo" + - can: sun4i: handle overrun in RX FIFO + - can: peak: Add support for new PCIe/M2 CAN FD interfaces + - can: ifi: Fix transmitter delay calculation + - can: c_can: don't indicate triple sampling support for D_CAN + - x86/debug: Handle warnings before the notifier chain, to fix KGDB crash + - x86/smpboot: Make optimization of delay calibration work correctly + - x86/oprofile/ppro: Do not use __this_cpu*() in preemptible context + - Linux 4.13.13 + * ELANTECH Touchpad is not detected in 'Lenovo Ideapad 320 14AST' after fresh + install (LP: #1727544) + - Input: elan_i2c - add ELAN060C to the ACPI table + * Power8 Nest PMU Instrumentation support (LP: #1481347) + - powerpc/powernv: Add IMC OPAL APIs + - powerpc/powernv: Detect and create IMC device + - powerpc/perf: Add nest IMC PMU support + - powerpc/perf: Add core IMC PMU support + - powerpc/perf: Add thread IMC PMU support + - powerpc/perf: Fix double unlock in imc_common_cpuhp_mem_free() + - powerpc/perf/imc: Fix nest events on muti socket system + - powerpc/powernv: Fix build error in opal-imc.c when NUMA=n + - powerpc/perf: Fix usage of nest_imc_refc + - powerpc/perf: Fix for core/nest imc call trace on cpuhotplug + - powerpc/perf: Add ___GFP_NOWARN flag to alloc_pages_node() + - powerpc/perf: Fix IMC initialization crash + * Artful update to 4.13.12 stable release (LP: #1731971) + - ALSA: timer: Add missing mutex lock for compat ioctls + - ALSA: seq: Fix nested rwsem annotation for lockdep splat + - cifs: check MaxPathNameComponentLength != 0 before using it + - KEYS: return full count in keyring_read() if buffer is too small + - KEYS: trusted: fix writing past end of buffer in trusted_read() + - KEYS: fix out-of-bounds read during ASN.1 parsing + - ASoC: adau17x1: Workaround for noise bug in ADC + - virtio_blk: Fix an SG_IO regression + - arm64: ensure __dump_instr() checks addr_limit + - KVM: arm64: its: Fix missing dynamic allocation check in scan_its_table + - arm/arm64: KVM: set right LR register value for 32 bit guest when inject + abort + - arm/arm64: kvm: Disable branch profiling in HYP code + - ARM: dts: mvebu: pl310-cache disable double-linefill + - ARM: 8715/1: add a private asm/unaligned.h + - drm/amdgpu: return -ENOENT from uvd 6.0 early init for harvesting + - drm/amdgpu: allow harvesting check for Polaris VCE + - userfaultfd: hugetlbfs: prevent UFFDIO_COPY to fill beyond the end of i_size + - ocfs2: fstrim: Fix start offset of first cluster group during fstrim + - fs/hugetlbfs/inode.c: fix hwpoison reserve accounting + - mm, swap: fix race between swap count continuation operations + - drm/i915: Do not rely on wm preservation for ILK watermarks + - drm/i915/edp: read edp display control registers unconditionally + - Revert "powerpc64/elfv1: Only dereference function descriptor for non-text + symbols" + - MIPS: bpf: Fix a typo in build_one_insn() + - MIPS: smp-cmp: Use right include for task_struct + - MIPS: microMIPS: Fix incorrect mask in insn_table_MM + - MIPS: SMP: Fix deadlock & online race + - Revert "x86: do not use cpufreq_quick_get() for /proc/cpuinfo "cpu MHz"" + - x86: CPU: Fix up "cpu MHz" in /proc/cpuinfo + - powerpc/kprobes: Dereference function pointers only if the address does not + belong to kernel text + - futex: Fix more put_pi_state() vs. exit_pi_state_list() races + - perf/cgroup: Fix perf cgroup hierarchy support + - x86/mcelog: Get rid of RCU remnants + - irqchip/irq-mvebu-gicp: Add missing spin_lock init + - Linux 4.13.12 + * Artful update to 4.13.11 stable release (LP: #1731961) + - workqueue: replace pool->manager_arb mutex with a flag + - nvme-fc: fix iowait hang + - ALSA: hda/realtek - Add support for ALC236/ALC3204 + - ALSA: hda - fix headset mic problem for Dell machines with alc236 + - ceph: unlock dangling spinlock in try_flush_caps() + - Fix tracing sample code warning. + - KVM: PPC: Fix oops when checking KVM_CAP_PPC_HTM + - KVM: PPC: Book3S HV: POWER9 more doorbell fixes + - KVM: PPC: Book3S: Protect kvmppc_gpa_to_ua() with SRCU + - s390/kvm: fix detection of guest machine checks + - nbd: handle interrupted sendmsg with a sndtimeo set + - spi: uapi: spidev: add missing ioctl header + - spi: a3700: Return correct value on timeout detection + - spi: bcm-qspi: Fix use after free in bcm_qspi_probe() in error path + - spi: armada-3700: Fix failing commands with quad-SPI + - ovl: add NULL check in ovl_alloc_inode + - ovl: fix EIO from lookup of non-indexed upper + - ovl: handle ENOENT on index lookup + - ovl: do not cleanup unsupported index entries + - fuse: fix READDIRPLUS skipping an entry + - xen/gntdev: avoid out of bounds access in case of partial gntdev_mmap() + - xen: fix booting ballooned down hvm guest + - cifs: Select all required crypto modules + - CIFS: Fix NULL pointer deref on SMB2_tcon() failure + - Input: elan_i2c - add ELAN0611 to the ACPI table + - Input: gtco - fix potential out-of-bound access + - Fix encryption labels and lengths for SMB3.1.1 + - SMB3: Validate negotiate request must always be signed + - assoc_array: Fix a buggy node-splitting case + - scsi: zfcp: fix erp_action use-before-initialize in REC action trace + - scsi: aacraid: Fix controller initialization failure + - scsi: qla2xxx: Initialize Work element before requesting IRQs + - scsi: sg: Re-fix off by one in sg_fill_request_table() + - x86/cpu/AMD: Apply the Erratum 688 fix when the BIOS doesn't + - drm/amd/powerplay: fix uninitialized variable + - drm/i915/perf: fix perf enable/disable ioctls with 32bits userspace + - can: sun4i: fix loopback mode + - can: kvaser_usb: Correct return value in printout + - can: kvaser_usb: Ignore CMD_FLUSH_QUEUE_REPLY messages + - cfg80211: fix connect/disconnect edge cases + - ipsec: Fix aborted xfrm policy dump crash + - regulator: fan53555: fix I2C device ids + - powerpc/xive: Fix the size of the cpumask used in xive_find_target_in_mask() + - Linux 4.13.11 + * Touchpad not detected - Lenovo ideapad 320-15IKB (LP: #1723736) + - Input: elan_i2c - add ELAN0611 to the ACPI table + * Artful update to 4.13.10 stable release (LP: #1731951) + - staging: bcm2835-audio: Fix memory corruption + - USB: devio: Revert "USB: devio: Don't corrupt user memory" + - USB: core: fix out-of-bounds access bug in usb_get_bos_descriptor() + - USB: serial: metro-usb: add MS7820 device id + - usb: cdc_acm: Add quirk for Elatec TWN3 + - usb: quirks: add quirk for WORLDE MINI MIDI keyboard + - usb: hub: Allow reset retry for USB2 devices on connect bounce + - ALSA: usb-audio: Add native DSD support for Pro-Ject Pre Box S2 Digital + - can: gs_usb: fix busy loop if no more TX context is available + - scsi: qla2xxx: Fix uninitialized work element + - nbd: don't set the device size until we're connected + - s390/cputime: fix guest/irq/softirq times after CPU hotplug + - parisc: Fix double-word compare and exchange in LWS code on 32-bit kernels + - parisc: Fix detection of nonsynchronous cr16 cycle counters + - iio: dummy: events: Add missing break + - usb: musb: sunxi: Explicitly release USB PHY on exit + - USB: musb: fix session-bit runtime-PM quirk + - USB: musb: fix late external abort on suspend + - usb: musb: musb_cppi41: Fix the address of teardown and autoreq registers + - usb: musb: musb_cppi41: Fix cppi41_set_dma_mode() for DA8xx + - usb: musb: musb_cppi41: Configure the number of channels for DA8xx + - usb: musb: Check for host-mode using is_host_active() on reset interrupt + - xhci: Identify USB 3.1 capable hosts by their port protocol capability + - xhci: Cleanup current_cmd in xhci_cleanup_command_queue() + - usb: xhci: Reset halted endpoint if trb is noop + - usb: xhci: Handle error condition in xhci_stop_device() + - can: esd_usb2: Fix can_dlc value for received RTR, frames + - can: af_can: can_pernet_init(): add missing error handling for kzalloc + returning NULL + - can: flexcan: fix state transition regression + - can: flexcan: rename legacy error state quirk + - can: flexcan: implement error passive state quirk + - can: flexcan: fix i.MX6 state transition issue + - can: flexcan: fix i.MX28 state transition issue + - can: flexcan: fix p1010 state transition issue + - KEYS: encrypted: fix dereference of NULL user_key_payload + - mmc: sdhci-pci: Fix default d3_retune for Intel host controllers + - drm/i915: Use bdw_ddi_translations_fdi for Broadwell + - drm/nouveau/kms/nv50: fix oops during DP IRQ handling on non-MST boards + - drm/nouveau/bsp/g92: disable by default + - drm/nouveau/mmu: flush tlbs before deleting page tables + - media: s5p-cec: add NACK detection support + - media: cec: Respond to unregistered initiators, when applicable + - media: dvb: i2c transfers over usb cannot be done from stack + - tracing/samples: Fix creation and deletion of simple_thread_fn creation + - ALSA: seq: Enable 'use' locking in all configurations + - ALSA: hda: Remove superfluous '-' added by printk conversion + - ALSA: hda: Abort capability probe at invalid register read + - i2c: ismt: Separate I2C block read from SMBus block read + - i2c: piix4: Fix SMBus port selection for AMD Family 17h chips + - Revert "tools/power turbostat: stop migrating, unless '-m'" + - Input: stmfts - fix setting ABS_MT_POSITION_* maximum size + - brcmfmac: Add check for short event packets + - brcmsmac: make some local variables 'static const' to reduce stack size + - ARM: dts: sun6i: Fix endpoint IDs in second display pipeline + - bus: mbus: fix window size calculation for 4GB windows + - clockevents/drivers/cs5535: Improve resilience to spurious interrupts + - rtlwifi: rtl8821ae: Fix connection lost problem + - x86/microcode/intel: Disable late loading on model 79 + - lib/digsig: fix dereference of NULL user_key_payload + - fscrypt: fix dereference of NULL user_key_payload + - ecryptfs: fix dereference of NULL user_key_payload + - KEYS: Fix race between updating and finding a negative key + - FS-Cache: fix dereference of NULL user_key_payload + - KEYS: don't let add_key() update an uninstantiated key + - pkcs7: Prevent NULL pointer dereference, since sinfo is not always set. + - arm64: dts: rockchip: correct vqmmc voltage for rk3399 platforms + - ALSA: hda - Fix incorrect TLV callback check introduced during set_fs() + removal + - iomap_dio_rw: Allocate AIO completion queue before submitting dio + - xfs: don't unconditionally clear the reflink flag on zero-block files + - xfs: evict CoW fork extents when performing finsert/fcollapse + - fs/xfs: Use %pS printk format for direct addresses + - xfs: report zeroed or not correctly in xfs_zero_range() + - xfs: update i_size after unwritten conversion in dio completion + - xfs: perag initialization should only touch m_ag_max_usable for AG 0 + - xfs: Capture state of the right inode in xfs_iflush_done + - xfs: always swap the cow forks when swapping extents + - xfs: handle racy AIO in xfs_reflink_end_cow + - xfs: Don't log uninitialised fields in inode structures + - xfs: move more RT specific code under CONFIG_XFS_RT + - xfs: don't change inode mode if ACL update fails + - xfs: reinit btree pointer on attr tree inactivation walk + - xfs: handle error if xfs_btree_get_bufs fails + - xfs: cancel dirty pages on invalidation + - xfs: trim writepage mapping to within eof + - xfs: move two more RT specific functions into CONFIG_XFS_RT + - Linux 4.13.10 + * Artful update to 4.13.9 stable release (LP: #1731926) + - perf pmu: Unbreak perf record for arm/arm64 with events with explicit PMU + - mm: page_vma_mapped: ensure pmd is loaded with READ_ONCE outside of lock + - HID: hid-elecom: extend to fix descriptor for HUGE trackball + - Drivers: hv: vmbus: Fix rescind handling issues + - Drivers: hv: vmbus: Fix bugs in rescind handling + - vmbus: simplify hv_ringbuffer_read + - vmbus: refactor hv_signal_on_read + - vmbus: eliminate duplicate cached index + - vmbus: more host signalling avoidance + - Linux 4.13.9 + + [ Ubuntu: 4.13.0-17.20 ] + + * linux: 4.13.0-17.20 -proposed tracker (LP: #1728927) + * thunderx2 ahci errata workaround needs additional delays (LP: #1724117) + - SAUCE: ahci: thunderx2: stop engine fix update + * usb 3-1: 2:1: cannot get freq at ep 0x1 (LP: #1708499) + - ALSA: usb-audio: Add sample rate quirk for Plantronics C310/C520-M + * Plantronics Blackwire C520-M - Cannot get freq at ep 0x1, 0x81 + (LP: #1709282) + - ALSA: usb-audio: Add sample rate quirk for Plantronics C310/C520-M + * TSC_DEADLINE incorrectly disabled inside virtual guests (LP: #1724912) + - x86/apic: Silence "FW_BUG TSC_DEADLINE disabled due to Errata" on CPUs + without the feature + - x86/apic: Silence "FW_BUG TSC_DEADLINE disabled due to Errata" on + hypervisors + * x86/apic: Update TSC_DEADLINE quirk with additional SKX stepping + (LP: #1724612) + - x86/apic: Update TSC_DEADLINE quirk with additional SKX stepping + * [Artful] Add support for Dell/Wyse 3040 audio codec (LP: #1723916) + - SAUCE: ASoC: rt5670: Add support for Wyse 3040 + * [Artful] Some Dell Monitors Doesn't Work Well with Dell/Wyse 3040 + (LP: #1723915) + - SAUCE: drm/i915: Workaround for DP DPMS D3 on Dell monitor + * [Artful] Support headset mode for DELL WYSE (LP: #1723913) + - SAUCE: ALSA: hda/realtek - Add support headset mode for DELL WYSE + * Touchpad and TrackPoint Dose Not Work on Lenovo X1C6 and X280 (LP: #1723986) + - SAUCE: Input: synaptics-rmi4 - RMI4 can also use SMBUS version 3 + - SAUCE: Input: synaptics - Lenovo X1 Carbon 5 should use SMBUS/RMI + - SAUCE: Input: synaptics - add Intertouch support on X1 Carbon 6th and X280 + * Artful update to v4.13.8 stable release (LP: #1724669) + - USB: dummy-hcd: Fix deadlock caused by disconnect detection + - MIPS: math-emu: Remove pr_err() calls from fpu_emu() + - MIPS: bpf: Fix uninitialised target compiler error + - mei: always use domain runtime pm callbacks. + - dmaengine: edma: Align the memcpy acnt array size with the transfer + - dmaengine: ti-dma-crossbar: Fix possible race condition with dma_inuse + - NFS: Fix uninitialized rpc_wait_queue + - nfs/filelayout: fix oops when freeing filelayout segment + - HID: usbhid: fix out-of-bounds bug + - crypto: skcipher - Fix crash on zero-length input + - crypto: shash - Fix zero-length shash ahash digest crash + - KVM: MMU: always terminate page walks at level 1 + - KVM: nVMX: fix guest CR4 loading when emulating L2 to L1 exit + - usb: renesas_usbhs: Fix DMAC sequence for receiving zero-length packet + - pinctrl/amd: Fix build dependency on pinmux code + - iommu/amd: Finish TLB flush in amd_iommu_unmap() + - device property: Track owner device of device property + - Revert "vmalloc: back off when the current task is killed" + - fs/mpage.c: fix mpage_writepage() for pages with buffers + - ALSA: usb-audio: Kill stray URB at exiting + - ALSA: seq: Fix use-after-free at creating a port + - ALSA: seq: Fix copy_from_user() call inside lock + - ALSA: caiaq: Fix stray URB at probe error path + - ALSA: line6: Fix NULL dereference at podhd_disconnect() + - ALSA: line6: Fix missing initialization before error path + - ALSA: line6: Fix leftover URB at error-path during probe + - drm/atomic: Unref duplicated drm_atomic_state in drm_atomic_helper_resume() + - drm/i915/edp: Get the Panel Power Off timestamp after panel is off + - drm/i915: Read timings from the correct transcoder in intel_crtc_mode_get() + - drm/i915/bios: parse DDI ports also for CHV for HDMI DDC pin and DP AUX + channel + - drm/i915: Use crtc_state_is_legacy_gamma in intel_color_check + - usb: gadget: configfs: Fix memory leak of interface directory data + - usb: gadget: composite: Fix use-after-free in + usb_composite_overwrite_options + - PCI: aardvark: Move to struct pci_host_bridge IRQ mapping functions + - Revert "PCI: tegra: Do not allocate MSI target memory" + - direct-io: Prevent NULL pointer access in submit_page_section + - fix unbalanced page refcounting in bio_map_user_iov + - more bio_map_user_iov() leak fixes + - bio_copy_user_iov(): don't ignore ->iov_offset + - perf script: Add missing separator for "-F ip,brstack" (and brstackoff) + - genirq/cpuhotplug: Enforce affinity setting on startup of managed irqs + - genirq/cpuhotplug: Add sanity check for effective affinity mask + - USB: serial: ftdi_sio: add id for Cypress WICED dev board + - USB: serial: cp210x: fix partnum regression + - USB: serial: cp210x: add support for ELV TFD500 + - USB: serial: option: add support for TP-Link LTE module + - USB: serial: qcserial: add Dell DW5818, DW5819 + - USB: serial: console: fix use-after-free on disconnect + - USB: serial: console: fix use-after-free after failed setup + - RAS/CEC: Use the right length for "cec_disable" + - x86/microcode: Do the family check first + - x86/alternatives: Fix alt_max_short macro to really be a max() + - KVM: nVMX: update last_nonleaf_level when initializing nested EPT + - Linux 4.13.8 + * Artful update to v4.13.7 stable release (LP: #1724668) + - watchdog: Revert "iTCO_wdt: all versions count down twice" + - Linux 4.13.7 + * libvirt - vnc port selection regression with newer kernels (LP: #1722702) + - net: set tb->fast_sk_family + - net: use inet6_rcv_saddr to compare sockets + - inet: fix improper empty comparison + * powerpc/64s: Add workaround for P9 vector CI load issue (LP: #1721070) + - powerpc/mce: Move 64-bit machine check code into mce.c + - powerpc/64s: Add workaround for P9 vector CI load issue + * Artful update to v4.13.6 stable release (LP: #1723145) + - imx-media-of: avoid uninitialized variable warning + - usb: dwc3: ep0: fix DMA starvation by assigning req->trb on ep0 + - mlxsw: spectrum: Fix EEPROM access in case of SFP/SFP+ + - net: bonding: Fix transmit load balancing in balance-alb mode if specified + by sysfs + - openvswitch: Fix an error handling path in 'ovs_nla_init_match_and_action()' + - mlxsw: spectrum: Prevent mirred-related crash on removal + - net: bonding: fix tlb_dynamic_lb default value + - net_sched: gen_estimator: fix scaling error in bytes/packets samples + - net: sched: fix use-after-free in tcf_action_destroy and tcf_del_walker + - sctp: potential read out of bounds in sctp_ulpevent_type_enabled() + - tcp: update skb->skb_mstamp more carefully + - bpf/verifier: reject BPF_ALU64|BPF_END + - tcp: fix data delivery rate + - udpv6: Fix the checksum computation when HW checksum does not apply + - ip6_gre: skb_push ipv6hdr before packing the header in ip6gre_header + - net: phy: Fix mask value write on gmii2rgmii converter speed register + - ip6_tunnel: do not allow loading ip6_tunnel if ipv6 is disabled in cmdline + - net/sched: cls_matchall: fix crash when used with classful qdisc + - 8139too: revisit napi_complete_done() usage + - bpf: do not disable/enable BH in bpf_map_free_id() + - tcp: fastopen: fix on syn-data transmit failure + - net: emac: Fix napi poll list corruption + - net: ipv6: fix regression of no RTM_DELADDR sent after DAD failure + - packet: hold bind lock when rebinding to fanout hook + - bpf: one perf event close won't free bpf program attached by another perf + event + - net: change skb->mac_header when Generic XDP calls adjust_head + - isdn/i4l: fetch the ppp_write buffer in one shot + - net_sched: always reset qdisc backlog in qdisc_reset() + - net: stmmac: Cocci spatch "of_table" + - net: qcom/emac: specify the correct size when mapping a DMA buffer + - vti: fix use after free in vti_tunnel_xmit/vti6_tnl_xmit + - l2tp: fix race condition in l2tp_tunnel_delete + - tun: bail out from tun_get_user() if the skb is empty + - net: dsa: mv88e6xxx: Allow dsa and cpu ports in multiple vlans + - net: dsa: Fix network device registration order + - packet: in packet_do_bind, test fanout with bind_lock held + - packet: only test po->has_vnet_hdr once in packet_snd + - net: dsa: mv88e6xxx: lock mutex when freeing IRQs + - net: Set sk_prot_creator when cloning sockets to the right proto + - net/mlx5e: IPoIB, Fix access to invalid memory address + - netlink: do not proceed if dump's start() errs + - ip6_gre: ip6gre_tap device should keep dst + - ip6_tunnel: update mtu properly for ARPHRD_ETHER tunnel device in tx path + - IPv4: early demux can return an error code + - tipc: use only positive error codes in messages + - l2tp: fix l2tp_eth module loading + - socket, bpf: fix possible use after free + - net: rtnetlink: fix info leak in RTM_GETSTATS call + - bpf: fix bpf_tail_call() x64 JIT + - usb: gadget: core: fix ->udc_set_speed() logic + - USB: gadgetfs: Fix crash caused by inadequate synchronization + - USB: gadgetfs: fix copy_to_user while holding spinlock + - usb: gadget: udc: atmel: set vbus irqflags explicitly + - usb: gadget: udc: renesas_usb3: fix for no-data control transfer + - usb: gadget: udc: renesas_usb3: fix Pn_RAMMAP.Pn_MPKT value + - usb: gadget: udc: renesas_usb3: Fix return value of usb3_write_pipe() + - usb-storage: unusual_devs entry to fix write-access regression for Seagate + external drives + - usb-storage: fix bogus hardware error messages for ATA pass-thru devices + - usb: renesas_usbhs: fix the BCLR setting condition for non-DCP pipe + - usb: renesas_usbhs: fix usbhsf_fifo_clear() for RX direction + - ALSA: usb-audio: Check out-of-bounds access by corrupted buffer descriptor + - usb: pci-quirks.c: Corrected timeout values used in handshake + - USB: cdc-wdm: ignore -EPIPE from GetEncapsulatedResponse + - USB: dummy-hcd: fix connection failures (wrong speed) + - USB: dummy-hcd: fix infinite-loop resubmission bug + - USB: dummy-hcd: Fix erroneous synchronization change + - USB: devio: Prevent integer overflow in proc_do_submiturb() + - USB: devio: Don't corrupt user memory + - USB: g_mass_storage: Fix deadlock when driver is unbound + - USB: uas: fix bug in handling of alternate settings + - USB: core: harden cdc_parse_cdc_header + - usb: Increase quirk delay for USB devices + - USB: fix out-of-bounds in usb_set_configuration + - usb: xhci: Free the right ring in xhci_add_endpoint() + - xhci: fix finding correct bus_state structure for USB 3.1 hosts + - xhci: fix wrong endpoint ESIT value shown in tracing + - usb: host: xhci-plat: allow sysdev to inherit from ACPI + - xhci: Fix sleeping with spin_lock_irq() held in ASmedia 1042A workaround + - Revert "xhci: Limit USB2 port wake support for AMD Promontory hosts" + - iio: adc: twl4030: Fix an error handling path in 'twl4030_madc_probe()' + - iio: adc: twl4030: Disable the vusb3v1 rugulator in the error handling path + of 'twl4030_madc_probe()' + - iio: ad_sigma_delta: Implement a dedicated reset function + - staging: iio: ad7192: Fix - use the dedicated reset function avoiding dma + from stack. + - iio: core: Return error for failed read_reg + - IIO: BME280: Updates to Humidity readings need ctrl_reg write! + - iio: trigger: stm32-timer: preset shouldn't be buffered + - iio: trigger: stm32-timer: fix a corner case to write preset + - iio: ad7793: Fix the serial interface reset + - iio: adc: stm32: fix bad error check on max_channels + - iio: adc: mcp320x: Fix readout of negative voltages + - iio: adc: mcp320x: Fix oops on module unload + - uwb: properly check kthread_run return value + - uwb: ensure that endpoint is interrupt + - staging: vchiq_2835_arm: Fix NULL ptr dereference in free_pagelist + - ksm: fix unlocked iteration over vmas in cmp_and_merge_page() + - mm, hugetlb, soft_offline: save compound page order before page migration + - mm, oom_reaper: skip mm structs with mmu notifiers + - mm: fix RODATA_TEST failure "rodata_test: test data was not read only" + - mm: avoid marking swap cached page as lazyfree + - mm: fix data corruption caused by lazyfree page + - userfaultfd: non-cooperative: fix fork use after free + - lib/ratelimit.c: use deferred printk() version + - lsm: fix smack_inode_removexattr and xattr_getsecurity memleak + - ALSA: compress: Remove unused variable + - Revert "ALSA: echoaudio: purge contradictions between dimension matrix + members and total number of members" + - ALSA: usx2y: Suppress kernel warning at page allocation failures + - powerpc/powernv: Increase memory block size to 1GB on radix + - powerpc: Fix action argument for cpufeatures-based TLB flush + - powerpc/64s: Use emergency stack for kernel TM Bad Thing program checks + - powerpc/tm: Fix illegal TM state in signal handler + - percpu: make this_cpu_generic_read() atomic w.r.t. interrupts + - intel_th: pci: Add Lewisburg PCH support + - driver core: platform: Don't read past the end of "driver_override" buffer + - cgroup: Reinit cgroup_taskset structure before cgroup_migrate_execute() + returns + - Drivers: hv: fcopy: restore correct transfer length + - vmbus: don't acquire the mutex in vmbus_hvsock_device_unregister() + - stm class: Fix a use-after-free + - auxdisplay: charlcd: properly restore atomic counter on error path + - ftrace: Fix kmemleak in unregister_ftrace_graph + - ovl: fix error value printed in ovl_lookup_index() + - ovl: fix dput() of ERR_PTR in ovl_cleanup_index() + - ovl: fix dentry leak in ovl_indexdir_cleanup() + - ovl: fix missing unlock_rename() in ovl_do_copy_up() + - ovl: fix regression caused by exclusive upper/work dir protection + - arm64: dt marvell: Fix AP806 system controller size + - arm64: Ensure the instruction emulation is ready for userspace + - HID: rmi: Make sure the HID device is opened on resume + - HID: i2c-hid: allocate hid buffers for real worst case + - HID: wacom: leds: Don't try to control the EKR's read-only LEDs + - HID: wacom: Properly report negative values from Intuos Pro 2 Bluetooth + - HID: wacom: Correct coordinate system of touchring and pen twist + - HID: wacom: generic: Send MSC_SERIAL and ABS_MISC when leaving prox + - HID: wacom: generic: Clear ABS_MISC when tool leaves proximity + - HID: wacom: Always increment hdev refcount within wacom_get_hdev_data + - HID: wacom: bits shifted too much for 9th and 10th buttons + - btrfs: avoid overflow when sector_t is 32 bit + - Btrfs: fix overlap of fs_info::flags values + - rocker: fix rocker_tlv_put_* functions for KASAN + - netlink: fix nla_put_{u8,u16,u32} for KASAN + - dm crypt: reject sector_size feature if device length is not aligned to it + - dm ioctl: fix alignment of event number in the device list + - dm crypt: fix memory leak in crypt_ctr_cipher_old() + - KVM: PPC: Book3S: Fix server always zero from kvmppc_xive_get_xive() + - kvm/x86: Avoid async PF preempting the kernel incorrectly + - iwlwifi: mvm: use IWL_HCMD_NOCOPY for MCAST_FILTER_CMD + - scsi: sd: Implement blacklist option for WRITE SAME w/ UNMAP + - scsi: sd: Do not override max_sectors_kb sysfs setting + - brcmfmac: add length check in brcmf_cfg80211_escan_handler() + - brcmfmac: setup passive scan if requested by user-space + - drm/i915: always update ELD connector type after get modes + - drm/i915/bios: ignore HDMI on port A + - bsg-lib: fix use-after-free under memory-pressure + - nvme-pci: Use PCI bus address for data/queues in CMB + - mmc: core: add driver strength selection when selecting hs400es + - nl80211: Define policy for packet pattern attributes + - clk: samsung: exynos4: Enable VPLL and EPLL clocks for suspend/resume cycle + - udp: perform source validation for mcast early demux + - udp: fix bcast packet reception + - base: arch_topology: fix section mismatch build warnings + - Linux 4.13.6 + * Artful update to v4.13.5 stable release (LP: #1721777) + - cifs: check rsp for NULL before dereferencing in SMB2_open + - cifs: release cifs root_cred after exit_cifs + - cifs: release auth_key.response for reconnect. + - nvme-pci: fix host memory buffer allocation fallback + - nvme-pci: use appropriate initial chunk size for HMB allocation + - nvme-pci: propagate (some) errors from host memory buffer setup + - dax: remove the pmem_dax_ops->flush abstraction + - dm integrity: do not check integrity for failed read operations + - mmc: block: Fix incorrectly initialized requests + - fs/proc: Report eip/esp in /prod/PID/stat for coredumping + - scsi: scsi_transport_fc: fix NULL pointer dereference in fc_bsg_job_timeout + - SMB3: Add support for multidialect negotiate (SMB2.1 and later) + - mac80211: fix VLAN handling with TXQs + - mac80211_hwsim: Use proper TX power + - mac80211: flush hw_roc_start work before cancelling the ROC + - mac80211: fix deadlock in driver-managed RX BA session start + - genirq: Make sparse_irq_lock protect what it should protect + - genirq/msi: Fix populating multiple interrupts + - genirq: Fix cpumask check in __irq_startup_managed() + - KVM: PPC: Book3S HV: Hold kvm->lock around call to kvmppc_update_lpcr + - KVM: PPC: Book3S HV: Fix bug causing host SLB to be restored incorrectly + - KVM: PPC: Book3S HV: Don't access XIVE PIPR register using byte accesses + - tracing: Fix trace_pipe behavior for instance traces + - tracing: Erase irqsoff trace with empty write + - tracing: Remove RCU work arounds from stack tracer + - md/raid5: fix a race condition in stripe batch + - md/raid5: preserve STRIPE_ON_UNPLUG_LIST in break_stripe_batch_list + - scsi: scsi_transport_iscsi: fix the issue that iscsi_if_rx doesn't parse + nlmsg properly + - scsi: aacraid: Fix 2T+ drives on SmartIOC-2000 + - scsi: aacraid: Add a small delay after IOP reset + - drm/exynos: Fix locking in the suspend/resume paths + - drm/i915/gvt: Fix incorrect PCI BARs reporting + - Revert "drm/i915/bxt: Disable device ready before shutdown command" + - drm/amdgpu: revert tile table update for oland + - drm/radeon: disable hard reset in hibernate for APUs + - crypto: drbg - fix freeing of resources + - crypto: talitos - Don't provide setkey for non hmac hashing algs. + - crypto: talitos - fix sha224 + - crypto: talitos - fix hashing + - security/keys: properly zero out sensitive key material in big_key + - security/keys: rewrite all of big_key crypto + - KEYS: fix writing past end of user-supplied buffer in keyring_read() + - KEYS: prevent creating a different user's keyrings + - KEYS: prevent KEYCTL_READ on negative key + - libnvdimm, namespace: fix btt claim class crash + - powerpc/eeh: Create PHB PEs after EEH is initialized + - powerpc/pseries: Fix parent_dn reference leak in add_dt_node() + - powerpc/tm: Flush TM only if CPU has TM feature + - MIPS: Fix perf event init + - s390/perf: fix bug when creating per-thread event + - s390/mm: make pmdp_invalidate() do invalidation only + - s390/mm: fix write access check in gup_huge_pmd() + - PM: core: Fix device_pm_check_callbacks() + - Revert "IB/ipoib: Update broadcast object if PKey value was changed in index + 0" + - Fix SMB3.1.1 guest authentication to Samba + - SMB3: Fix endian warning + - SMB3: Warn user if trying to sign connection that authenticated as guest + - SMB: Validate negotiate (to protect against downgrade) even if signing off + - SMB3: handle new statx fields + - SMB3: Don't ignore O_SYNC/O_DSYNC and O_DIRECT flags + - vfs: Return -ENXIO for negative SEEK_HOLE / SEEK_DATA offsets + - libceph: don't allow bidirectional swap of pg-upmap-items + - nl80211: check for the required netlink attributes presence + - brd: fix overflow in __brd_direct_access + - gfs2: Fix debugfs glocks dump + - bsg-lib: don't free job in bsg_prepare_job + - iw_cxgb4: drop listen destroy replies if no ep found + - iw_cxgb4: remove the stid on listen create failure + - iw_cxgb4: put ep reference in pass_accept_req() + - rcu: Allow for page faults in NMI handlers + - mmc: sdhci-pci: Fix voltage switch for some Intel host controllers + - extable: Consolidate *kernel_text_address() functions + - extable: Enable RCU if it is not watching in kernel_text_address() + - seccomp: fix the usage of get/put_seccomp_filter() in seccomp_get_filter() + - arm64: Make sure SPsel is always set + - arm64: fault: Route pte translation faults via do_translation_fault + - KVM: VMX: extract __pi_post_block + - KVM: VMX: avoid double list add with VT-d posted interrupts + - KVM: VMX: simplify and fix vmx_vcpu_pi_load + - KVM: nVMX: fix HOST_CR3/HOST_CR4 cache + - kvm/x86: Handle async PF in RCU read-side critical sections + - kvm: nVMX: Don't allow L2 to access the hardware CR8 + - xfs: validate bdev support for DAX inode flag + - fix infoleak in waitid(2) + - sched/sysctl: Check user input value of sysctl_sched_time_avg + - irq/generic-chip: Don't replace domain's name + - mtd: Fix partition alignment check on multi-erasesize devices + - mtd: nand: atmel: fix buffer overflow in atmel_pmecc_user + - etnaviv: fix submit error path + - etnaviv: fix gem object list corruption + - futex: Fix pi_state->owner serialization + - md: fix a race condition for flush request handling + - md: separate request handling + - PCI: Fix race condition with driver_override + - btrfs: fix NULL pointer dereference from free_reloc_roots() + - btrfs: clear ordered flag on cleaning up ordered extents + - btrfs: finish ordered extent cleaning if no progress is found + - btrfs: propagate error to btrfs_cmp_data_prepare caller + - btrfs: prevent to set invalid default subvolid + - platform/x86: fujitsu-laptop: Don't oops when FUJ02E3 is not presnt + - PM / OPP: Call notifier without holding opp_table->lock + - x86/mm: Fix fault error path using unsafe vma pointer + - x86/fpu: Don't let userspace set bogus xcomp_bv + - KVM: VMX: do not change SN bit in vmx_update_pi_irte() + - KVM: VMX: remove WARN_ON_ONCE in kvm_vcpu_trigger_posted_interrupt + - KVM: VMX: use cmpxchg64 + - video: fbdev: aty: do not leak uninitialized padding in clk to userspace + - Linux 4.13.5 + - [Config] Update configs for v4.13.5 + + [ Ubuntu: 4.13.0-16.19 ] + + * 20170817 - ISO hangs on boot on qemu with splash screen enabled and qxl + graphics driver (LP: #1711358) + - qxl: fix framebuffer unpinning + * [Bug] USB controller failed to respond on Denverton after loading + intel_th_pci module (LP: #1715833) + - SAUCE: PCI: Disable broken RTIT_BAR of Intel TH + * CVE-2017-5123 + - waitid(): Add missing access_ok() checks + + [ Ubuntu: 4.13.0-15.16 ] + + * linux: 4.13.0-15.16 -proposed tracker (LP: #1721373) + * Boot regression on POWER9 (LP: #1721391) + - Revert "crypto/nx: Add P9 NX support for 842 compression engine" + - Revert "crypto/nx: Add P9 NX specific error codes for 842 engine" + - Revert "crypto/nx: Use kzalloc for workmem allocation" + - Revert "crypto/nx: Add nx842_add_coprocs_list function" + - Revert "crypto/nx: Create nx842_delete_coprocs function" + - Revert "crypto/nx: Create nx842_configure_crb function" + - Revert "crypto/nx: Rename nx842_powernv_function as icswx function" + - Revert "UBUNTU: [Config] CONFIG_PPC_VAS=y" + - Revert "powerpc/powernv/vas: Define copy/paste interfaces" + - Revert "powerpc/powernv/vas: Define vas_tx_win_open()" + - Revert "powerpc/powernv/vas: Define vas_win_close() interface" + - Revert "powerpc/powernv/vas: Define vas_rx_win_open() interface" + - Revert "powerpc/powernv/vas: Define helpers to alloc/free windows" + - Revert "powerpc/powernv/vas: Define helpers to init window context" + - Revert "powerpc/powernv/vas: Define helpers to access MMIO regions" + - Revert "powerpc/powernv/vas: Define vas_init() and vas_exit()" + - Revert "powerpc/powernv: Move GET_FIELD/SET_FIELD to vas.h" + - Revert "powerpc/powernv/vas: Define macros, register fields and structures" + - Revert "powerpc/powernv: Enable PCI peer-to-peer" + - Revert "powerpc/powernv: Add support to set power-shifting-ratio" + - Revert "powerpc/powernv: Add support for powercap framework" + - Revert "powerpc/perf: Add nest IMC PMU support" + - Revert "powerpc/powernv: Detect and create IMC device" + - Revert "powerpc/powernv: Add IMC OPAL APIs" + * smartpqi patches for Artful (LP: #1721381) + - scsi: smartpqi: add pqi reset quiesce support + - scsi: smartpqi: enhance BMIC cache flush + - scsi: smartpqi: update pqi passthru ioctl + - scsi: smartpqi: cleanup doorbell register usage. + - scsi: smartpqi: update kexec and power down support + - scsi: smartpqi: add in new controller ids + - scsi: smartpqi: change driver version to 1.1.2-125 + * CONFIG_DEBUG_FS is not enabled by "make zfcpdump_defconfig" with Ubuntu + 17.10 (kernel 4.13) (LP: #1719290) + - SAUCE: s390: update zfcpdump_defconfig + * [Feature] PXE boot with Intel Omni-Path (LP: #1712031) + - d-i: Add hfi1 to nic-modules + * [Feature]CNL:New device IDs for CNL (LP: #1685729) + - pinctrl: intel: Add Intel Cannon Lake PCH-H pin controller support + + [ Ubuntu: 4.13.0-14.15 ] + + * linux: 4.13.0-14.15 -proposed tracker (LP: #1721122) + * [Artful] ltp rwtest - Unable to handle kernel paging request at virtual + address (LP: #1721067) + - arm64: mm: Use READ_ONCE when dereferencing pointer to pte table + * linux 4.13.0-13.14 ADT test failure with linux 4.13.0-13.14 (LP: #1720779) + - SAUCE: LSM stacking: check for invalid zero sized writes + * Add installer support for Broadcom BCM573xx network drivers. (LP: #1720466) + - d-i: Add bnxt_en to nic-modules. + * Miscellaneous Ubuntu changes + - [Packaging] Include arch/arm64/kernel/ftrace-mod.o in headers package + + [ Ubuntu: 4.13.0-13.14 ] + + * linux: 4.13.0-13.14 -proposed tracker (LP: #1720239) + * [Bug] USB 3.1 Gen2 works as 5Gbps (LP: #1720045) + - xhci: set missing SuperSpeedPlus Link Protocol bit in roothub descriptor + * [Feature]Memory Bandwidth Monitoring(MBM) port to new Cache Quality + Monitoring (CQM) (LP: #1591609) + - x86/perf/cqm: Wipe out perf based cqm + - x86/intel_rdt/cqm: Documentation for resctrl based RDT Monitoring + - x86/intel_rdt: Introduce a common compile option for RDT + - x86/intel_rdt: Change file names to accommodate RDT monitor code + - x86/intel_rdt: Mark rdt_root and closid_alloc as static + - x86/intel_rdt: Cleanup namespace to support RDT monitoring + - x86/intel_rdt: Make rdt_resources_all more readable + - x86/intel_rdt/cqm: Add RDT monitoring initialization + - x86/intel_rdt/cqm: Add RMID (Resource monitoring ID) management + - x86/intel_rdt: Simplify info and base file lists + - x86/intel_rdt/cqm: Add info files for RDT monitoring + - x86/intel_rdt: Prepare for RDT monitoring mkdir support + - x86/intel_rdt/cqm: Add mkdir support for RDT monitoring + - x86/intel_rdt: Change closid type from int to u32 + - x86/intel_rdt/cqm: Add tasks file support + - x86/intel_rdt: Prepare to add RDT monitor cpus file support + - x86/intel_rdt/cqm: Add cpus file support + - x86/intel_rdt: Prepare for RDT monitor data support + - x86/intel_rdt/cqm: Add mon_data + - x86/intel_rdt: Separate the ctrl bits from rmdir + - x86/intel_rdt/cqm: Add rmdir support + - x86/intel_rdt/cqm: Add mount,umount support + - x86/intel_rdt: Introduce rdt_enable_key for scheduling + - x86/intel_rdt/cqm: Add sched_in support + - x86/intel_rdt/cqm: Add CPU hotplug support + - x86/intel_rdt/mbm: Basic counting of MBM events (total and local) + - x86/intel_rdt/mbm: Add mbm counter initialization + - x86/intel_rdt/mbm: Handle counter overflow + - x86/intel_rdt: Show bitmask of shareable resource with other executing units + - x86/intel_rdt/cqm: Clear the default RMID during hotcpu + - x86/intel_rdt: Modify the intel_pqr_state for better performance + - x86/intel_rdt/mbm: Fix MBM overflow handler during CPU hotplug + - x86/intel_rdt/cqm: Improve limbo list processing + - x86/intel_rdt: Remove redundant ternary operator on return + - [Config] CONFIG_INTEL_RDT=y + * [Feature] RDT: Disable most RDT features on Skylake server (LP: #1713619) + - x86/intel_rdt: Move special case code for Haswell to a quirk function + - x86/intel_rdt: Add command line options for resource director technology + - x86/intel_rdt: Turn off most RDT features on Skylake + * CVE-2017-1000252 + - KVM: VMX: Do not BUG() on out-of-bounds guest IRQ + * POWER9: NX842 module changes (LP: #1718292) + - crypto/nx: Rename nx842_powernv_function as icswx function + - crypto/nx: Create nx842_configure_crb function + - crypto/nx: Create nx842_delete_coprocs function + - crypto/nx: Add nx842_add_coprocs_list function + - crypto/nx: Use kzalloc for workmem allocation + - crypto/nx: Add P9 NX specific error codes for 842 engine + - crypto/nx: Add P9 NX support for 842 compression engine + * [Ubuntu 17.10] POWER9 - Base - Integrate P9 VAS (Virtual Accelerator + Switchboard) support in kernel (LP: #1718293) + - powerpc/powernv: Add IMC OPAL APIs + - powerpc/powernv: Detect and create IMC device + - powerpc/perf: Add nest IMC PMU support + - powerpc/powernv: Add support for powercap framework + - powerpc/powernv: Add support to set power-shifting-ratio + - powerpc/powernv: Enable PCI peer-to-peer + - powerpc/powernv/vas: Define macros, register fields and structures + - powerpc/powernv: Move GET_FIELD/SET_FIELD to vas.h + - powerpc/powernv/vas: Define vas_init() and vas_exit() + - powerpc/powernv/vas: Define helpers to access MMIO regions + - powerpc/powernv/vas: Define helpers to init window context + - powerpc/powernv/vas: Define helpers to alloc/free windows + - powerpc/powernv/vas: Define vas_rx_win_open() interface + - powerpc/powernv/vas: Define vas_win_close() interface + - powerpc/powernv/vas: Define vas_tx_win_open() + - powerpc/powernv/vas: Define copy/paste interfaces + - [Config] CONFIG_PPC_VAS=y + * Artful update to v4.13.4 stable release (LP: #1720154) + - orangefs: Don't clear SGID when inheriting ACLs + - : Fix copy_in_user() declaration + - IB/hfi1: Revert egress pkey check enforcement + - IB/{qib, hfi1}: Avoid flow control testing for RDMA write operation + - IB/mlx5: Fix cached MR allocation flow + - srcu: Provide ordering for CPU not involved in grace period + - smp/hotplug: Handle removal correctly in cpuhp_store_callbacks() + - Input: xpad - validate USB endpoint type during probe + - drm/amdgpu: read reg in each iterator of psp_wait_for loop + - tty: improve tty_insert_flip_char() fast path + - tty: improve tty_insert_flip_char() slow path + - tty: fix __tty_insert_flip_char regression + - pinctrl: samsung: Fix invalid register offset used for Exynos5433 external + interrupts + - pinctrl: samsung: Fix NULL pointer exception on external interrupts on + S3C24xx + - pinctrl/amd: save pin registers over suspend/resume + - MIPS: math-emu: .: Fix quiet NaN propagation + - MIPS: math-emu: .: Fix cases of both inputs zero + - MIPS: math-emu: .: Fix cases of both inputs negative + - MIPS: math-emu: .: Fix cases of input values with opposite + signs + - MIPS: math-emu: .: Fix cases of both infinite inputs + - MIPS: math-emu: MINA.: Fix some cases of infinity and zero inputs + - MIPS: math-emu: .: Fix NaN propagation + - MIPS: math-emu: .: Fix some cases of infinite inputs + - MIPS: math-emu: .: Fix some cases of zero inputs + - MIPS: math-emu: .: Clean up "maddf_flags" enumeration + - MIPS: math-emu: .S: Fix accuracy (32-bit case) + - MIPS: math-emu: .D: Fix accuracy (64-bit case) + - docs: disable KASLR when debugging kernel + - crypto: ccp - Fix XTS-AES-128 support on v5 CCPs + - crypto: scompress - don't sleep with preemption disabled + - crypto: caam/qi - fix typo in authenc alg driver name + - crypto: caam/qi - properly set IV after {en,de}crypt + - crypto: AF_ALG - remove SGL terminator indicator when chaining + - regulator: cpcap: Fix standby mode + - wcn36xx: Introduce mutual exclusion of fw configuration + - ext4: in ext4_seek_{hole,data}, return -ENXIO for negative offsets + - ext4: fix incorrect quotaoff if the quota feature is enabled + - ext4: fix quota inconsistency during orphan cleanup for read-only mounts + - cxl: Fix driver use count + - powerpc/powernv/npu: Move tlb flush before launching ATSD + - powerpc/pseries: Don't attempt to acquire drc during memory hot add for + assigned lmbs + - powerpc: Fix DAR reporting when alignment handler faults + - block: Relax a check in blk_start_queue() + - block: directly insert blk-mq request from blk_insert_cloned_request() + - md/bitmap: copy correct data for bitmap super + - md/bitmap: disable bitmap_resize for file-backed bitmaps. + - skd: Avoid that module unloading triggers a use-after-free + - skd: Submit requests to firmware before triggering the doorbell + - scsi: zfcp: fix queuecommand for scsi_eh commands when DIX enabled + - scsi: zfcp: add handling for FCP_RESID_OVER to the fcp ingress path + - scsi: zfcp: fix capping of unsuccessful GPN_FT SAN response trace records + - scsi: zfcp: fix passing fsf_req to SCSI trace on TMF to correlate with HBA + - scsi: zfcp: fix missing trace records for early returns in TMF eh handlers + - scsi: zfcp: fix payload with full FCP_RSP IU in SCSI trace records + - scsi: zfcp: trace HBA FSF response by default on dismiss or timedout late + response + - scsi: zfcp: trace high part of "new" 64 bit SCSI LUN + - scsi: qedi: off by one in qedi_get_cmd_from_tid() + - scsi: aacraid: Fix command send race condition + - scsi: megaraid_sas: mismatch of allocated MFI frame size and length exposed + in MFI MPT pass through command + - scsi: megaraid_sas: set minimum value of resetwaittime to be 1 secs + - scsi: megaraid_sas: Check valid aen class range to avoid kernel panic + - scsi: megaraid_sas: Return pended IOCTLs with cmd_status + MFI_STAT_WRONG_STATE in case adapter is dead + - scsi: storvsc: fix memory leak on ring buffer busy + - scsi: sg: factor out sg_fill_request_table() + - scsi: sg: fixup infoleak when using SG_GET_REQUEST_TABLE + - scsi: qla2xxx: Update fw_started flags at qpair creation. + - scsi: qla2xxx: Correction to vha->vref_count timeout + - scsi: qla2xxx: Fix target multiqueue configuration + - scsi: qla2xxx: Use BIT_6 to acquire FAWWPN from switch + - scsi: qla2xxx: Use fabric name for Get Port Speed command + - scsi: qla2xxx: Fix an integer overflow in sysfs code + - mailbox: bcm-flexrm-mailbox: Fix mask used in CMPL_START_ADDR_VALUE() + - ftrace: Fix debug preempt config name in stack_tracer_{en,dis}able + - ftrace: Fix selftest goto location on error + - ftrace: Fix memleak when unregistering dynamic ops when tracing disabled + - tracing: Add barrier to trace_printk() buffer nesting modification + - tracing: Fix clear of RECORDED_TGID flag when disabling trace event + - tracing: Apply trace_clock changes to instance max buffer + - ARC: Re-enable MMU upon Machine Check exception + - PCI: shpchp: Enable bridge bus mastering if MSI is enabled + - PCI: pciehp: Report power fault only once until we clear it + - net/netfilter/nf_conntrack_core: Fix net_conntrack_lock() + - media: v4l2-compat-ioctl32: Fix timespec conversion + - media: Revert "[media] lirc_dev: remove superfluous get/put_device() calls" + - media: venus: fix copy/paste error in return_buf_error + - media: uvcvideo: Prevent heap overflow when accessing mapped controls + - media: adv7180: add missing adv7180cp, adv7180st i2c device IDs + - PM / devfreq: Fix memory leak when fail to register device + - ALSA: seq: Cancel pending autoload work at unbinding device + - bcache: initialize dirty stripes in flash_dev_run() + - bcache: Fix leak of bdev reference + - bcache: do not subtract sectors_to_gc for bypassed IO + - bcache: correct cache_dirty_target in __update_writeback_rate() + - bcache: Correct return value for sysfs attach errors + - bcache: fix sequential large write IO bypass + - bcache: fix for gc and write-back race + - bcache: fix bch_hprint crash and improve output + - sched/cpuset/pm: Fix cpuset vs. suspend-resume bugs + - iwlwifi: add workaround to disable wide channels in 5GHz + - Linux 4.13.4 + * [17.10 FEAT] KVM: CPU Model z14 (LP: #1719297) + - KVM: s390: Support Configuration z/Architecture Mode + * sata reset hangs w/ early cn99xx silicon (LP: #1719031) + - SAUCE: ahci: thunderx2: Fix for errata that affects stop engine + - SAUCE: ahci: thunderx2: stop engine fix update + * PCI quirk required for SATA on early cn99xx silicon (LP: #1718760) + - SAUCE: PCI: Vulcan: AHCI PCI bar fix for Broadcom Vulcan early silicon + * Please make linux-libc-dev Provide: aufs-dev (LP: #1716091) + - [Packaging] Add aufs-dev to the Provides: for linux-libc-dev + * Miscellaneous Ubuntu changes + - [Packaging] Use SRCPKGNAME rather than hard-coding the source package name + - SAUCE: LSM stacking: procfs: add smack subdir to attrs + - SAUCE: LSM stacking: LSM: manage credential security blobs + - SAUCE: LSM stacking: LSM: Manage file security blobs + - SAUCE: LSM stacking: LSM: manage task security blobs + - SAUCE: LSM stacking: LSM: Infrastructure management of the remaining blobs + - SAUCE: LSM stacking: LSM: general but not extreme module stacking + - SAUCE: LSM stacking: LSM: Complete task_alloc hook + - SAUCE: LSM stacking: fixup procsfs: add smack subdir to attrs + - SAUCE: LSM stacking: fixup initialize task->security + - SAUCE: LSM stacking: fixup: alloc_task_ctx is dead code + - SAUCE: LSM stacking: add support for stacking getpeersec_stream + - SAUCE: LSM stacking: add stacking support to apparmor network hooks + - SAUCE: LSM stacking: fixup apparmor stacking enablement + - SAUCE: LSM stacking: fixup stacking kconfig + - SAUCE: LSM stacking: allow selecting multiple LSMs using kernel boot params + - SAUCE: LSM stacking: provide prctl interface for setting context + - SAUCE: LSM stacking: inherit current display LSM + - SAUCE: LSM stacking: keep an index for each registered LSM + - SAUCE: LSM stacking: verify display LSM + - SAUCE: LSM stacking: provide a way to specify the default display lsm + - SAUCE: LSM stacking: make sure LSM blob align on 64 bit boundaries + - SAUCE: LSM stacking: add /proc//attr/display_lsm + - SAUCE: LSM stacking: add Kconfig to set default display LSM + - SAUCE: LSM stacking: add configs for LSM stacking + - [Config] Run updateconfigs after merging LSM stacking + + [ Ubuntu: 4.13.0-12.13 ] + + * linux: 4.13.0-12.13 -proposed tracker (LP: #1718980) + * [Feature] SKX: Support crystall ridge / far / near memory indication in PEBS + (LP: #1591813) + - perf/x86: Move Nehalem PEBS code to flag + - perf/x86: Fix data source decoding for Skylake + * Upgrade to 4.13.0-11.12 in artful amd64 VM breaks display on wayland + (LP: #1718679) + - [Config] CONFIG_DRM_VBOXVIDEO=n + * ipmmu-vmsa driver breaks arm64 boots (LP: #1718734) + - [Config] Disable CONFIG_IPMMU_VMSA on arm64 + * Vlun resize request could fail with cxlflash driver (LP: #1713575) + - scsi: cxlflash: Fix vlun resize failure in the shrink path + * multipath -ll is not showing the disks which are actually multipath + (LP: #1718397) + - fs: aio: fix the increment of aio-nr and counting against aio-max-nr + * [Feature] Crystal Ridge - BTT - Rework error clearing (LP: #1704350) + - libnvdimm, btt: fix a missed NVDIMM_IO_ATOMIC case in the write path + - libnvdimm, btt: refactor map entry operations with macros + - libnvdimm, btt: ensure that flags were also unchanged during a map_read + - libnvdimm, btt: cache sector_size in arena_info + - libnvdimm: fix potential deadlock while clearing errors + - libnvdimm, btt: rework error clearing + * [Feature] Crystal Ridge - have 4k DAX faults use a common zero page + (LP: #1704439) + - mm: add vm_insert_mixed_mkwrite() + - dax: relocate some dax functions + - dax: use common 4k zero page for dax mmap reads + - dax: remove DAX code from page_cache_tree_insert() + - dax: move all DAX radix tree defs to fs/dax.c + * [bug] 17.10: CDP test fail on platform of Purley-2S/4S/Neoncity,BDW- + de/ep/ex, (LP: #1716843) + - SAUCE: (no-up) x86/intel_rdt: Fix cdp info directory files issue + * [featue] GPIO support for Denverton (LP: #1591829) + - pinctrl: intel: Add Intel Denverton pin controller support + * ETPS/2 Elantech Touchpad inconsistently detected (Gigabyte P57W laptop) + (LP: #1594214) + - Input: i8042 - add Gigabyte P57 to the keyboard reset table + * autopkgtest profile fails to build on armhf (LP: #1717920) + - [Packaging] autopkgtest -- disable d-i when dropping flavours + * Artful update to v4.13.3 stable release (LP: #1718412) + - Revert "net: use lib/percpu_counter API for fragmentation mem accounting" + - Revert "net: fix percpu memory leaks" + - gianfar: Fix Tx flow control deactivation + - vhost_net: correctly check tx avail during rx busy polling + - ip6_gre: update mtu properly in ip6gre_err + - udp: drop head states only when all skb references are gone + - ipv6: fix memory leak with multiple tables during netns destruction + - ipv6: fix typo in fib6_net_exit() + - sctp: fix missing wake ups in some situations + - tcp: fix a request socket leak + - ip_tunnel: fix setting ttl and tos value in collect_md mode + - f2fs: let fill_super handle roll-forward errors + - f2fs: check hot_data for roll-forward recovery + - x86/fsgsbase/64: Fully initialize FS and GS state in start_thread_common + - x86/fsgsbase/64: Report FSBASE and GSBASE correctly in core dumps + - x86/switch_to/64: Rewrite FS/GS switching yet again to fix AMD CPUs + - x86/mm, mm/hwpoison: Clear PRESENT bit for kernel 1:1 mappings of poison + pages + - ovl: fix false positive ESTALE on lookup + - fuse: allow server to run in different pid_ns + - idr: remove WARN_ON_ONCE() when trying to replace negative ID + - libnvdimm, btt: check memory allocation failure + - libnvdimm: fix integer overflow static analysis warning + - xfs: write unmount record for ro mounts + - xfs: toggle readonly state around xfs_log_mount_finish + - xfs: Add infrastructure needed for error propagation during buffer IO + failure + - xfs: Properly retry failed inode items in case of error during buffer + writeback + - xfs: fix recovery failure when log record header wraps log end + - xfs: always verify the log tail during recovery + - xfs: fix log recovery corruption error due to tail overwrite + - xfs: handle -EFSCORRUPTED during head/tail verification + - xfs: stop searching for free slots in an inode chunk when there are none + - xfs: evict all inodes involved with log redo item + - xfs: check for race with xfs_reclaim_inode() in xfs_ifree_cluster() + - xfs: open-code xfs_buf_item_dirty() + - xfs: remove unnecessary dirty bli format check for ordered bufs + - xfs: ordered buffer log items are never formatted + - xfs: refactor buffer logging into buffer dirtying helper + - xfs: don't log dirty ranges for ordered buffers + - xfs: skip bmbt block ino validation during owner change + - xfs: move bmbt owner change to last step of extent swap + - xfs: disallow marking previously dirty buffers as ordered + - xfs: relog dirty buffers during swapext bmbt owner change + - xfs: disable per-inode DAX flag + - xfs: fix incorrect log_flushed on fsync + - xfs: don't set v3 xflags for v2 inodes + - xfs: open code end_buffer_async_write in xfs_finish_page_writeback + - xfs: use kmem_free to free return value of kmem_zalloc + - md/raid1/10: reset bio allocated from mempool + - md/raid5: release/flush io in raid5_do_work() + - xfs: fix compiler warnings + - Linux 4.13.3 + * Artful update to v4.13.2 stable release (LP: #1717549) + - mtd: nand: make Samsung SLC NAND usable again + - mtd: nand: hynix: add support for 20nm NAND chips + - mtd: nand: mxc: Fix mxc_v1 ooblayout + - mtd: nand: qcom: fix read failure without complete bootchain + - mtd: nand: qcom: fix config error for BCH + - nvme-fabrics: generate spec-compliant UUID NQNs + - btrfs: resume qgroup rescan on rw remount + - rtlwifi: btcoexist: Fix breakage of ant_sel for rtl8723be + - rtlwifi: btcoexist: Fix antenna selection code + - radix-tree: must check __radix_tree_preload() return value + - brcmfmac: feature check for multi-scheduled scan fails on bcm4345 devices + - kselftests: timers: leap-a-day: Change default arguments to help test runs + - selftests: timers: Fix run_destructive_tests target to handle skipped tests + - selftests/x86/fsgsbase: Test selectors 1, 2, and 3 + - mm: kvfree the swap cluster info if the swap file is unsatisfactory + - mm/swapfile.c: fix swapon frontswap_map memory leak on error + - mm/sparse.c: fix typo in online_mem_sections + - mm/memory.c: fix mem_cgroup_oom_disable() call missing + - KVM: SVM: Limit PFERR_NESTED_GUEST_PAGE error_code check to L1 guest + - Revert "firmware: add sanity check on shutdown/suspend" + - rt2800: fix TX_PIN_CFG setting for non MT7620 chips + - ARM64: dts: marvell: armada-37xx: Fix GIC maintenance interrupt + - ARM: 8692/1: mm: abort uaccess retries upon fatal signal + - NFS: Fix 2 use after free issues in the I/O code + - NFS: Sync the correct byte range during synchronous writes + - NFSv4: Fix up mirror allocation + - xfs: XFS_IS_REALTIME_INODE() should be false if no rt device present + - Linux 4.13.2 + * [Bug] Thunderbolt-patches: Related to the way the key for secure connection + is handled (LP: #1717430) + - thunderbolt: Remove superfluous check + - thunderbolt: Make key root-only accessible + - thunderbolt: Allow clearing the key + * [Bug] Thunderbolt-patches: Fixes the issue regarding the order of ACPI calls + w.r.t. PCI enumeration (LP: #1717431) + - ACPICA: Dispatch active GPEs at init time + - ACPICA: Make it possible to enable runtime GPEs earlier + - ACPI / scan: Enable GPEs before scanning the namespace + * Miscellaneous Ubuntu changes + - ubuntu: vbox -- update to 5.1.28-dfsg-1 + - [Config] CONFIG_PINCTRL_DENVERTON=m + - [Config] CONFIG_I2C_XLP9XX=m + * Miscellaneous upstream changes + - Introduce v3 namespaced file capabilities + + [ Ubuntu: 4.13.0-11.12 ] + + * linux: 4.13.0-11.12 -proposed tracker (LP: #1716699) + * kernel panic -not syncing: Fatal exception: panic_on_oops (LP: #1708399) + - s390/mm: fix local TLB flushing vs. detach of an mm address space + - s390/mm: fix race on mm->context.flush_mm + * CVE-2017-1000251 + - Bluetooth: Properly check L2CAP config option output buffer length + + [ Ubuntu: 4.13.0-10.11 ] + + * linux: 4.13.0-10.11 -proposed tracker (LP: #1716287) + * please add aufs-dkms to the Provides: for the kernel packages (LP: #1716093) + - [Packaging] Add aufs-dkms to the Provides: for kernel packages + * Artful update to v4.13.1 stable release (LP: #1716284) + - usb: quirks: add delay init quirk for Corsair Strafe RGB keyboard + - USB: serial: option: add support for D-Link DWM-157 C1 + - usb: Add device quirk for Logitech HD Pro Webcam C920-C + - usb:xhci:Fix regression when ATI chipsets detected + - USB: musb: fix external abort on suspend + - ANDROID: binder: add padding to binder_fd_array_object. + - ANDROID: binder: add hwbinder,vndbinder to BINDER_DEVICES. + - USB: core: Avoid race of async_completed() w/ usbdev_release() + - staging/rts5208: fix incorrect shift to extract upper nybble + - staging: ccree: save ciphertext for CTS IV + - staging: fsl-dpaa2/eth: fix off-by-one FD ctrl bitmaks + - iio: adc: ti-ads1015: fix incorrect data rate setting update + - iio: adc: ti-ads1015: fix scale information for ADS1115 + - iio: adc: ti-ads1015: enable conversion when CONFIG_PM is not set + - iio: adc: ti-ads1015: avoid getting stale result after runtime resume + - iio: adc: ti-ads1015: don't return invalid value from buffer setup callbacks + - iio: adc: ti-ads1015: add adequate wait time to get correct conversion + - driver core: bus: Fix a potential double free + - HID: wacom: Do not completely map WACOM_HID_WD_TOUCHRINGSTATUS usage + - binder: free memory on error + - crypto: caam/qi - fix compilation with CONFIG_DEBUG_FORCE_WEAK_PER_CPU=y + - crypto: caam/qi - fix compilation with DEBUG enabled + - thunderbolt: Fix reset response_type + - fpga: altera-hps2fpga: fix multiple init of l3_remap_lock + - intel_th: pci: Add Cannon Lake PCH-H support + - intel_th: pci: Add Cannon Lake PCH-LP support + - ath10k: fix memory leak in rx ring buffer allocation + - drm/vgem: Pin our pages for dmabuf exports + - drm/ttm: Fix accounting error when fail to get pages for pool + - drm/dp/mst: Handle errors from drm_atomic_get_private_obj_state() correctly + - rtlwifi: rtl_pci_probe: Fix fail path of _rtl_pci_find_adapter + - Bluetooth: Add support of 13d3:3494 RTL8723BE device + - iwlwifi: pci: add new PCI ID for 7265D + - dlm: avoid double-free on error path in dlm_device_{register,unregister} + - mwifiex: correct channel stat buffer overflows + - MCB: add support for SC31 to mcb-lpc + - s390/mm: avoid empty zero pages for KVM guests to avoid postcopy hangs + - drm/nouveau/pci/msi: disable MSI on big-endian platforms by default + - drm/nouveau: Fix error handling in nv50_disp_atomic_commit + - workqueue: Fix flag collision + - ahci: don't use MSI for devices with the silly Intel NVMe remapping scheme + - cs5536: add support for IDE controller variant + - scsi: sg: protect against races between mmap() and SG_SET_RESERVED_SIZE + - scsi: sg: recheck MMAP_IO request length with lock held + - of/device: Prevent buffer overflow in of_device_modalias() + - rtlwifi: Fix memory leak when firmware request fails + - rtlwifi: Fix fallback firmware loading + - Linux 4.13.1 + * Kernel has trouble recognizing Corsair Strafe RGB keyboard (LP: #1678477) + - usb: quirks: add delay init quirk for Corsair Strafe RGB keyboard + * SRIOV: warning if unload VFs (LP: #1715073) + - PCI: Disable VF decoding before pcibios_sriov_disable() updates resources + * [Patch] network-i40e:NVM bug fixes (cherrypick from 4.14) (LP: #1715578) + - i40e: avoid NVM acquire deadlock during NVM update + - i40e: point wb_desc at the nvm_wb_desc during i40e_read_nvm_aq + * [P9,POwer NV] Perf PMU event : pm_br_2path and pm_ld_miss_l1 is counted + twice when perf stat is done (perf:) (LP: #1714571) + - perf vendor events powerpc: Remove duplicate events + * Unable to install Ubuntu on the NVMe disk under VMD PCI domain + (LP: #1703339) + - [Config] Include vmd in storage-core-modules udeb + * 17.10 fails to boot on POWER9 DD2.0 with Deep stop states (LP: #1715064) + - powerpc/powernv: Save/Restore additional SPRs for stop4 cpuidle + - powerpc/powernv: Clear PECE1 in LPCR via stop-api only on Hotplug + - SAUCE: powerpc/powernv: Clear LPCR[PECE1] via stop-api only for deep state + offline + * Miscellaneous Ubuntu changes + - SAUCE: selftests/seccomp: Support glibc 2.26 siginfo_t.h + - Revert "UBUNTU: SAUCE: Import aufs driver" + - SAUCE: Import aufs driver + + [ Ubuntu: 4.13.0-9.10 ] + + * linux: 4.13.0-9.10 -proposed tracker (LP: #1715145) + * EDAC sbridge: Failed to register device with error -22. (LP: #1714112) + - [Config] CONFIG_EDAC_GHES=n + * Miscellaneous Ubuntu changes + - ubuntu: vbox -- update to 5.1.26-dfsg-2 + * Rebase to v4.13 + + [ Ubuntu: 4.13.0-8.9 ] + + * snapd 2.27.3+17.10 ADT test failure with linux 4.13.0-6.7 (LP: #1713103) + - SAUCE: apparmor: fix apparmorfs DAC access, permissions + * enable ARCH_SUNXI (and friends) in arm64 kernel .config (LP: #1701137) + - [Config] Enable CONFIG_ARCH_SUNXI and related options for arm64 + * [Bug] Harrisonville: pnd2_edac always fail to load on B1 stepping + Harrisonville SDP (LP: #1709257) + - EDAC, pnd2: Build in a minimal sideband driver for Apollo Lake + - EDAC, pnd2: Mask off the lower four bits of a BAR + - EDAC, pnd2: Conditionally unhide/hide the P2SB PCI device to read BAR + - EDAC, pnd2: Properly toggle hidden state for P2SB PCI device + - SAUCE: i2c: i801: Restore the presence state of P2SB PCI device after + reading BAR + * Miscellaneous Ubuntu changes + - Revert "UBUNTU: SAUCE: Import aufs driver" + - SAUCE: Import aufs driver + - SAUCE: selftests/powerpc: Disable some ptrace selftests + - [Config] CONFIG_CRYPTO_DEV_NITROX_CNN55XX=n for s390x + - [Config] CONFIG_I2C_SLAVE=n for amd64, i386, ppc64el + - [Config] Disable CONFIG_MDIO_* options for s390x + - [Config] CONFIG_SCSI_MQ_DEFAULT=n for s390x + - [Config] Update annotations for 4.13 + + [ Ubuntu: 4.13.0-7.8 ] + + * linux 4.12.0-11.12 ADT test failure with linux 4.12.0-11.12 (LP: #1710904) + - SAUCE: selftests/powerpc: Use snprintf to construct DSCR sysfs interface + paths + * Miscellaneous Ubuntu changes + - Revert "UBUNTU: SAUCE: seccomp: log actions even when audit is disabled" + * Miscellaneous upstream changes + - seccomp: Provide matching filter for introspection + - seccomp: Sysctl to display available actions + - seccomp: Operation for checking if an action is available + - seccomp: Sysctl to configure actions that are allowed to be logged + - seccomp: Selftest for detection of filter flag support + - seccomp: Filter flag to log all actions except SECCOMP_RET_ALLOW + - seccomp: Action to log before allowing + * Rebase to v4.13-rc7 + + [ Ubuntu: 4.13.0-6.7 ] + + * HID: multitouch: Support ALPS PTP Stick and Touchpad devices (LP: #1712481) + - SAUCE: HID: multitouch: Support ALPS PTP stick with pid 0x120A + * sort ABI files with C.UTF-8 locale (LP: #1712345) + - [Packaging] sort ABI files with C.UTF-8 locale + * igb: Support using Broadcom 54616 as PHY (LP: #1712024) + - SAUCE: igb: add support for using Broadcom 54616 as PHY + * RPT related fixes missing in Ubuntu 16.04.3 (LP: #1709220) + - powerpc/mm/radix: Improve _tlbiel_pid to be usable for PWC flushes + - powerpc/mm/radix: Improve TLB/PWC flushes + - powerpc/mm/radix: Avoid flushing the PWC on every flush_tlb_range + * Linux 4.12 refuses to load self-signed modules under Secure Boot with + properly enrolled keys (LP: #1712168) + - SAUCE: (efi-lockdown) MODSIGN: Fix module signature verification + * [17.10 FEAT] Enable NVMe driver - kernel (LP: #1708432) + - [Config] CONFIG_BLK_DEV_NVME=m for s390 + * Artful: 4.12.0-11.12: Boot panic in vlv2_plat_configure_clock+0x3b/0xa0 + (LP: #1711298) + - [Config] CONFIG_INTEL_ATOMISP=n + * Miscellaneous Ubuntu changes + - SAUCE: apparmor: af_unix mediation + * Miscellaneous upstream changes + - apparmor: Fix shadowed local variable in unpack_trans_table() + - apparmor: Fix logical error in verify_header() + - apparmor: Fix an error code in aafs_create() + - apparmor: Redundant condition: prev_ns. in [label.c:1498] + - apparmor: add the ability to mediate signals + - apparmor: add mount mediation + - apparmor: cleanup conditional check for label in label_print + - apparmor: add support for absolute root view based labels + - apparmor: make policy_unpack able to audit different info messages + - apparmor: add more debug asserts to apparmorfs + - apparmor: add base infastructure for socket mediation + - apparmor: move new_null_profile to after profile lookup fns() + - apparmor: fix race condition in null profile creation + - apparmor: ensure unconfined profiles have dfas initialized + - apparmor: fix incorrect type assignment when freeing proxies + * Rebase to v4.13-rc6 + + [ Ubuntu: 4.13.0-5.6 ] + + * Ubuntu17.10 - perf: Update Power9 PMU event JSON files (LP: #1708630) + - perf pmu-events: Support additional POWER8+ PVR in mapfile + - perf vendor events: Add POWER9 PMU events + - perf vendor events: Add POWER9 PVRs to mapfile + - SAUCE: perf vendor events powerpc: remove suffix in mapfile + - SAUCE: perf vendor events powerpc: Update POWER9 events + * Disable CONFIG_MEMORY_HOTPLUG_DEFAULT_ONLINE (LP: #1709171) + - [Config] CONFIG_MEMORY_HOTPLUG_DEFAULT_ONLINE=n for ppc64el + * Please only recommend or suggest initramfs-tools | linux-initramfs-tool for + kernels able to boot without initramfs (LP: #1700972) + - [Debian] Don't depend on initramfs-tools + * Miscellaneous Ubuntu changes + - SAUCE: Import aufs driver + - SAUCE: aufs -- Add missing argument to loop_switch() call + - [Config] Enable aufs + - SAUCE: (noup) Update spl to 0.6.5.11-ubuntu1, zfs to 0.6.5.11-1ubuntu3 + - Enable zfs build + - SAUCE: powerpc: Always initialize input array when calling epapr_hypercall() + - [Packaging] switch up to debhelper 9 + * Rebase to v4.13-rc5 + + [ Ubuntu: 4.13.0-4.5 ] + + * Lenovo Yoga 910 Sensors (LP: #1708120) + - SAUCE: (no-up) HID: Add quirk for Lenovo Yoga 910 with ITE Chips + * Unable to install Ubuntu on the NVMe disk under VMD PCI domain + (LP: #1703339) + - [Config] Add vmd driver to generic inclusion list + * Set CONFIG_SATA_HIGHBANK=y on armhf (LP: #1703430) + - [Config] CONFIG_SATA_HIGHBANK=y + * Miscellaneous Ubuntu changes + - ubuntu: vbox -- update to 5.1.26-dfsg-1 + - SAUCE: hio: Build fixes for 4.13 + - Enable hio build + - SAUCE: (noup) Update spl to 0.6.5.11-1, zfs to 0.6.5.11-1ubuntu1 + - [debian] use all rather than amd64 dkms debs for sync + * Rebase to v4.13-rc4 + + [ Ubuntu: 4.13.0-3.4 ] + + * Adt tests of src:linux time out often on armhf lxc containers (LP: #1705495) + - [Packaging] tests -- reduce rebuild test to one flavour + - [Packaging] tests -- reduce rebuild test to one flavour -- use filter + * snapd 2.26.8+17.10 ADT test failure with linux 4.12.0-6.7 (LP: #1704158) + - SAUCE: virtio_net: Revert mergeable buffer handling rework + * Rebase to v4.13-rc3 + + [ Ubuntu: 4.13.0-2.3 ] + + * Change CONFIG_IBMVETH to module (LP: #1704479) + - [Config] CONFIG_IBMVETH=m + * Rebase to v4.13-rc2 + + [ Ubuntu: 4.13.0-1.2 ] + + * Miscellaneous Ubuntu changes + - [Debian] Support sphinx-based kernel documentation + + [ Ubuntu: 4.13.0-0.1 ] + + * Miscellaneous Ubuntu changes + - Disable hio + - Disable zfs build + - ubuntu: vbox -- update to 5.1.24-dfsg-1 + * Rebase to v4.13-rc1 + + [ Ubuntu: 4.12.0-7.8 ] + + * ThunderX: soft lockup on 4.8+ kernels when running qemu-efi with vhost=on + (LP: #1673564) + - arm64: Add a facility to turn an ESR syndrome into a sysreg encoding + - KVM: arm/arm64: vgic-v3: Add accessors for the ICH_APxRn_EL2 registers + - KVM: arm64: Make kvm_condition_valid32() accessible from EL2 + - KVM: arm64: vgic-v3: Add hook to handle guest GICv3 sysreg accesses at EL2 + - KVM: arm64: vgic-v3: Add ICV_BPR1_EL1 handler + - KVM: arm64: vgic-v3: Add ICV_IGRPEN1_EL1 handler + - KVM: arm64: vgic-v3: Add ICV_IAR1_EL1 handler + - KVM: arm64: vgic-v3: Add ICV_EOIR1_EL1 handler + - KVM: arm64: vgic-v3: Add ICV_AP1Rn_EL1 handler + - KVM: arm64: vgic-v3: Add ICV_HPPIR1_EL1 handler + - KVM: arm64: vgic-v3: Enable trapping of Group-1 system registers + - KVM: arm64: Enable GICv3 Group-1 sysreg trapping via command-line + - KVM: arm64: vgic-v3: Add ICV_BPR0_EL1 handler + - KVM: arm64: vgic-v3: Add ICV_IGNREN0_EL1 handler + - KVM: arm64: vgic-v3: Add misc Group-0 handlers + - KVM: arm64: vgic-v3: Enable trapping of Group-0 system registers + - KVM: arm64: Enable GICv3 Group-0 sysreg trapping via command-line + - arm64: Add MIDR values for Cavium cn83XX SoCs + - arm64: Add workaround for Cavium Thunder erratum 30115 + - KVM: arm64: vgic-v3: Add ICV_DIR_EL1 handler + - KVM: arm64: vgic-v3: Add ICV_RPR_EL1 handler + - KVM: arm64: vgic-v3: Add ICV_CTLR_EL1 handler + - KVM: arm64: vgic-v3: Add ICV_PMR_EL1 handler + - KVM: arm64: Enable GICv3 common sysreg trapping via command-line + - KVM: arm64: vgic-v3: Log which GICv3 system registers are trapped + - KVM: arm64: Log an error if trapping a read-from-write-only GICv3 access + - KVM: arm64: Log an error if trapping a write-to-read-only GICv3 access + * hns: under heavy load, NIC may fail and require reboot (LP: #1704146) + - net: hns: Bugfix for Tx timeout handling in hns driver + * New ACPI identifiers for ThunderX SMMU (LP: #1703437) + - iommu/arm-smmu: Plumb in new ACPI identifiers + * Transparent hugepages should default to enabled=madvise (LP: #1703742) + - SAUCE: use CONFIG_TRANSPARENT_HUGEPAGE_MADVISE=y as default + * Artful update to v4.12.1 stable release (LP: #1703858) + - driver core: platform: fix race condition with driver_override + - RDMA/uverbs: Check port number supplied by user verbs cmds + - usb: dwc3: replace %p with %pK + - USB: serial: cp210x: add ID for CEL EM3588 USB ZigBee stick + - usb: usbip: set buffer pointers to NULL after free + - Add USB quirk for HVR-950q to avoid intermittent device resets + - usb: Fix typo in the definition of Endpoint[out]Request + - USB: core: fix device node leak + - USB: serial: option: add two Longcheer device ids + - USB: serial: qcserial: new Sierra Wireless EM7305 device ID + - xhci: Limit USB2 port wake support for AMD Promontory hosts + - gfs2: Fix glock rhashtable rcu bug + - Add "shutdown" to "struct class". + - tpm: Issue a TPM2_Shutdown for TPM2 devices. + - tpm: fix a kernel memory leak in tpm-sysfs.c + - powerpc/powernv: Fix CPU_HOTPLUG=n idle.c compile error + - x86/uaccess: Optimize copy_user_enhanced_fast_string() for short strings + - sched/fair, cpumask: Export for_each_cpu_wrap() + - sched/core: Implement new approach to scale select_idle_cpu() + - sched/numa: Use down_read_trylock() for the mmap_sem + - sched/numa: Override part of migrate_degrades_locality() when idle balancing + - sched/fair: Simplify wake_affine() for the single socket case + - sched/numa: Implement NUMA node level wake_affine() + - sched/fair: Remove effective_load() + - sched/numa: Hide numa_wake_affine() from UP build + - xen: avoid deadlock in xenbus driver + - crypto: drbg - Fixes panic in wait_for_completion call + - Linux 4.12.1 + * cxlflash update request in the Xenial SRU stream (LP: #1702521) + - scsi: cxlflash: Combine the send queue locks + - scsi: cxlflash: Update cxlflash_afu_sync() to return errno + - scsi: cxlflash: Reset hardware queue context via specified register + - scsi: cxlflash: Schedule asynchronous reset of the host + - scsi: cxlflash: Handle AFU sync failures + - scsi: cxlflash: Track pending scsi commands in each hardware queue + - scsi: cxlflash: Flush pending commands in cleanup path + - scsi: cxlflash: Add scsi command abort handler + - scsi: cxlflash: Create character device to provide host management interface + - scsi: cxlflash: Separate AFU internal command handling from AFU sync + specifics + - scsi: cxlflash: Introduce host ioctl support + - scsi: cxlflash: Refactor AFU capability checking + - scsi: cxlflash: Support LUN provisioning + - scsi: cxlflash: Support AFU debug + - scsi: cxlflash: Support WS16 unmap + - scsi: cxlflash: Remove zeroing of private command data + - scsi: cxlflash: Update TMF command processing + - scsi: cxlflash: Avoid double free of character device + - scsi: cxlflash: Update send_tmf() parameters + - scsi: cxlflash: Update debug prints in reset handlers + * make snap-pkg support (LP: #1700747) + - make snap-pkg support + * Quirk for non-compliant PCI bridge on HiSilicon D05 board (LP: #1698706) + - SAUCE: PCI: Support hibmc VGA cards behind a misbehaving HiSilicon bridge + * arm64: fix crash reading /proc/kcore (LP: #1702749) + - fs/proc: kcore: use kcore_list type to check for vmalloc/module address + - arm64: mm: select CONFIG_ARCH_PROC_KCORE_TEXT + * Opal and POWER9 DD2 (LP: #1702159) + - SAUCE: powerpc/powernv: Tell OPAL about our MMU mode on POWER9 + * Data corruption with hio driver (LP: #1701316) + - SAUCE: hio: Fix incorrect use of enum req_opf values + * Miscellaneous Ubuntu changes + - SAUCE: (noup) Update spl to 0.6.5.10-1, zfs to 0.6.5.10-1ubuntu2 + - snapcraft.yaml: Sync with xenial + - [Config] CONFIG_CAVIUM_ERRATUM_30115=y + * Miscellaneous upstream changes + - Revert "UBUNTU: SAUCE: (efi-lockdown) efi: Add sysctls for secureboot and + MokSBState" + + [ Ubuntu: 4.12.0-6.7 ] + + * update ENA driver to 1.2.0k from net-next (LP: #1701575) + - net: ena: change return value for unsupported features unsupported return + value + - net: ena: add hardware hints capability to the driver + - net: ena: change sizeof() argument to be the type pointer + - net: ena: add reset reason for each device FLR + - net: ena: add support for out of order rx buffers refill + - net: ena: allow the driver to work with small number of msix vectors + - net: ena: use napi_schedule_irqoff when possible + - net: ena: separate skb allocation to dedicated function + - net: ena: use lower_32_bits()/upper_32_bits() to split dma address + - net: ena: update driver's rx drop statistics + - net: ena: update ena driver to version 1.2.0 + * APST gets enabled against explicit kernel option (LP: #1699004) + - nvme: explicitly disable APST on quirked devices + * Miscellaneous Ubuntu changes + - SAUCE: hio: Update to Huawei ES3000_V2 (2.1.0.40) + - SAUCE: hio updates for 4.12 + - SAUCE: Enable hio build + + [ Ubuntu: 4.12.0-5.6 ] + + * ERAT invalidate on context switch removal (LP: #1700819) + - powerpc: Only do ERAT invalidate on radix context switch on P9 DD1 + * powerpc: Invalidate ERAT on powersave wakeup for POWER9 (LP: #1700521) + - SAUCE: powerpc: Invalidate ERAT on powersave wakeup for POWER9 + * Miscellaneous Ubuntu changes + - d-i: Move qcom-emac from arm64 to shared nic-modules + * Rebase to v4.12 + + [ Ubuntu: 4.12.0-4.5 ] + + * aacraid driver may return uninitialized stack data to userspace + (LP: #1700077) + - SAUCE: scsi: aacraid: Don't copy uninitialized stack memory to userspace + * KILLER1435-S[0489:e0a2] BT cannot search BT 4.0 device (LP: #1699651) + - Bluetooth: btusb: Add support for 0489:e0a2 QCA_ROME device + * AACRAID for power9 platform (LP: #1689980) + - scsi: aacraid: Remove __GFP_DMA for raw srb memory + - scsi: aacraid: Fix DMAR issues with iommu=pt + - scsi: aacraid: Added 32 and 64 queue depth for arc natives + - scsi: aacraid: Set correct Queue Depth for HBA1000 RAW disks + - scsi: aacraid: Remove reset support from check_health + - scsi: aacraid: Change wait time for fib completion + - scsi: aacraid: Log count info of scsi cmds before reset + - scsi: aacraid: Print ctrl status before eh reset + - scsi: aacraid: Using single reset mask for IOP reset + - scsi: aacraid: Rework IOP reset + - scsi: aacraid: Add periodic checks to see IOP reset status + - scsi: aacraid: Rework SOFT reset code + - scsi: aacraid: Rework aac_src_restart + - scsi: aacraid: Use correct function to get ctrl health + - scsi: aacraid: Make sure ioctl returns on controller reset + - scsi: aacraid: Enable ctrl reset for both hba and arc + - scsi: aacraid: Add reset debugging statements + - scsi: aacraid: Remove reference to Series-9 + - scsi: aacraid: Update driver version to 50834 + * hibmc driver does not include "pci:" prefix in bus ID (LP: #1698700) + - SAUCE: drm: hibmc: Use set_busid function from drm core + * HiSilicon D05: installer doesn't appear on VGA (LP: #1698954) + - d-i: Add hibmc-drm to kernel-image udeb + * Fix /proc/cpuinfo revision for POWER9 DD2 (LP: #1698844) + - SAUCE: powerpc: Fix /proc/cpuinfo revision for POWER9 DD2 + * Miscellaneous Ubuntu changes + - [Config] CONFIG_SATA_MV=n and CONFIG_GENERIC_PHY=n for s390x + - [Config] CONFIG_ATA=n for s390x + - [Config] Update annotations for 4.12 + * Rebase to v4.12-rc7 + + [ Ubuntu: 4.12.0-3.4 ] + + * Miscellaneous upstream changes + - ufs: fix the logics for tail relocation + * Rebase to v4.12-rc6 + + [ Ubuntu: 4.12.0-2.3 ] + + * CVE-2014-9900 + - SAUCE: (no-up) net: Zeroing the structure ethtool_wolinfo in + ethtool_get_wol() + * System doesn't boot properly on Gigabyte AM4 motherboards (AMD Ryzen) + (LP: #1671360) + - pinctrl/amd: Use regular interrupt instead of chained + * extend-diff-ignore should use exact matches (LP: #1693504) + - [Packaging] exact extend-diff-ignore matches + * Miscellaneous Ubuntu changes + - SAUCE: efi: Don't print secure boot state from the efi stub + - ubuntu: vbox -- Update to 5.1.22-dfsg-1 + - SAUCE: vbox fixes for 4.12 + - Re-enable virtualbox build + - [Config] CONFIG_ORANGEFS_FS=m + - SAUCE: (noup) Update spl to 0.6.5.9-1ubuntu2, zfs to 0.6.5.9-5ubuntu7 + - Enable zfs build + * Rebase to v4.12-rc4 + * Rebase to v4.12-rc5 + + [ Ubuntu: 4.12.0-1.2 ] + + * Enable Matrox driver for Ubuntu 16.04.3 (LP: #1693337) + - [Config] Enable CONFIG_DRM_MGAG200 as module + * Support low-pin-count devices on Hisilicon SoCs (LP: #1677319) + - [Config] CONFIG_LIBIO=y on arm64 only + - SAUCE: LIBIO: Introduce a generic PIO mapping method + - SAUCE: OF: Add missing I/O range exception for indirect-IO devices + - [Config] CONFIG_HISILICON_LPC=y + - SAUCE: LPC: Support the device-tree LPC host on Hip06/Hip07 + - SAUCE: LIBIO: Support the dynamically logical PIO registration of ACPI host + I/O + - SAUCE: LPC: Add the ACPI LPC support + - SAUCE: PCI: Apply the new generic I/O management on PCI IO hosts + - SAUCE: PCI: Restore codepath for !CONFIG_LIBIO + * POWER9: Additional patches for TTY and CPU_IDLE (LP: #1674325) + - SAUCE: tty: Fix ldisc crash on reopened tty + * Miscellaneous Ubuntu changes + - [Debian] Add build-dep on libnuma-dev to enable 'perf bench numa' + - Rebase to v4.12-rc3 + * Rebase to v4.12-rc3 + + [ Ubuntu: 4.12.0-0.1 ] + + * please enable CONFIG_ARM64_LSE_ATOMICS (LP: #1691614) + - [Config] CONFIG_ARM64_LSE_ATOMICS=y + * [Regression] NUMA_BALANCING disabled on arm64 (LP: #1690914) + - [Config] CONFIG_NUMA_BALANCING{,_DEFAULT_ENABLED}=y on arm64 + * exec'ing a setuid binary from a threaded program sometimes fails to setuid + (LP: #1672819) + - SAUCE: exec: ensure file system accounting in check_unsafe_exec is correct + * Miscellaneous Ubuntu changes + - Update find-missing-sauce.sh to compare to artful + - Update dropped.txt + - SAUCE: (efi-lockdown) efi: Add EFI_SECURE_BOOT bit + - SAUCE: (efi-lockdown) Add the ability to lock down access to the running + kernel image + - SAUCE: (efi-lockdown) efi: Lock down the kernel if booted in secure boot + mode + - SAUCE: (efi-lockdown) Enforce module signatures if the kernel is locked down + - SAUCE: (efi-lockdown) Restrict /dev/mem and /dev/kmem when the kernel is + locked down + - SAUCE: (efi-lockdown) Add a sysrq option to exit secure boot mode + - SAUCE: (efi-lockdown) kexec: Disable at runtime if the kernel is locked down + - SAUCE: (efi-lockdown) Copy secure_boot flag in boot params across kexec + reboot + - SAUCE: (efi-lockdown) kexec_file: Disable at runtime if securelevel has been + set + - SAUCE: (efi-lockdown) hibernate: Disable when the kernel is locked down + - SAUCE: (efi-lockdown) uswsusp: Disable when the kernel is locked down + - SAUCE: (efi-lockdown) PCI: Lock down BAR access when the kernel is locked + down + - SAUCE: (efi-lockdown) x86: Lock down IO port access when the kernel is + locked down + - SAUCE: (efi-lockdown) x86: Restrict MSR access when the kernel is locked + down + - SAUCE: (efi-lockdown) asus-wmi: Restrict debugfs interface when the kernel + is locked down + - SAUCE: (efi-lockdown) ACPI: Limit access to custom_method when the kernel is + locked down + - SAUCE: (efi-lockdown) acpi: Ignore acpi_rsdp kernel param when the kernel + has been locked down + - SAUCE: (efi-lockdown) acpi: Disable ACPI table override if the kernel is + locked down + - SAUCE: (efi-lockdown) acpi: Disable APEI error injection if the kernel is + locked down + - SAUCE: (efi-lockdown) Enable cold boot attack mitigation + - SAUCE: (efi-lockdown) bpf: Restrict kernel image access functions when the + kernel is locked down + - SAUCE: (efi-lockdown) scsi: Lock down the eata driver + - SAUCE: (efi-lockdown) Prohibit PCMCIA CIS storage when the kernel is locked + down + - SAUCE: (efi-lockdown) Lock down TIOCSSERIAL + - SAUCE: (efi-lockdown) KEYS: Allow unrestricted boot-time addition of keys to + secondary keyring + - SAUCE: (efi-lockdown) efi: Add EFI signature data types + - SAUCE: (efi-lockdown) efi: Add an EFI signature blob parser + - SAUCE: (efi-lockdown) MODSIGN: Import certificates from UEFI Secure Boot + - SAUCE: (efi-lockdown) MODSIGN: Allow the "db" UEFI variable to be suppressed + - SAUCE: (efi-lockdown) efi: Sanitize boot_params in efi stub + - SAUCE: (efi-lockdown) efi: Add secure_boot state and status bit for + MokSBState + - SAUCE: (efi-lockdown) efi: Add sysctls for secureboot and MokSBState + - [Config] Set values for UEFI secure boot lockdown options + - Disable virtualbox build + - Disable hio build + - SAUCE: securityfs: Replace CURRENT_TIME with current_time() + - Disable zfs build + - [Debian] Work out upstream tag for use with gen-auto-reconstruct + - SAUCE: Import aufs driver + - SAUCE: aufs -- Include linux/mm.h in fs/aufs/file.h + - [Config] Enable aufs + - SAUCE: perf callchain: Include errno.h on x86 unconditinally + * Rebase to v4.12-rc2 + + -- Marcelo Henrique Cerri Wed, 22 Nov 2017 13:58:15 -0200 + +linux-azure (4.13.0-1000.0) xenial; urgency=low + + * Empty. + + -- Marcelo Henrique Cerri Wed, 22 Nov 2017 11:17:34 -0200 + +linux-azure (4.11.0-1016.16) xenial; urgency=low + + * linux-azure: 4.11.0-1016.16 -proposed tracker (LP: #1736123) + + * CVE-2017-1000405 + - mm, thp: Do not make page table dirty unconditionally in touch_p[mu]d() + + * CVE-2017-16939 + - ipsec: Fix aborted xfrm policy dump crash + + -- Marcelo Henrique Cerri Tue, 05 Dec 2017 14:20:03 -0200 + +linux-azure (4.11.0-1015.15) xenial; urgency=low + + * linux-azure: 4.11.0-1015.15 -proposed tracker (LP: #1728930) + + * CVE-2017-12188 + - KVM: nVMX: update last_nonleaf_level when initializing nested EPT + - KVM: MMU: always terminate page walks at level 1 + + -- Kleber Sacilotto de Souza Thu, 02 Nov 2017 17:43:02 +0100 + +linux-azure (4.11.0-1014.14) xenial; urgency=low + + * linux-azure: 4.11.0-1014.14 -proposed tracker (LP: #1724060) + + * [Hyper-V] linux-azure cifs mount error caused by missing nls_utf8.ko module + (LP: #1719624) + - [config] azure: move nls_utf8.ko to linux-image package + + -- Thadeu Lima de Souza Cascardo Mon, 16 Oct 2017 17:24:42 -0200 + +linux-azure (4.11.0-1013.13) xenial; urgency=low + + * linux-azure: 4.11.0-1013.13 -proposed tracker (LP: #1720818) + + * [Hyper-V] Docker failures with linux-azure 4.11.0-1011 (LP: #1719045) + - Revert "UBUNTU: SAUCE: tracing/hyper-v: trace hyperv_mmu_flush_tlb_others()" + - Revert "UBUNTU: SAUCE: x86/hyper-v: support extended CPU ranges for TLB + flush hypercalls" + - Revert "UBUNTU: SAUCE: x86/hyper-v: use hypercall for remote TLB flush" + + -- Marcelo Henrique Cerri Mon, 02 Oct 2017 12:20:26 -0300 + +linux-azure (4.11.0-1012.12) xenial; urgency=low + + * linux-azure: 4.11.0-1012.12 -proposed tracker (LP: #1718763) + + * linux-azure: KVM nested virtualization is disabled (LP: #1718740) + - [Config] azure: enable KVM support + + -- Marcelo Henrique Cerri Thu, 21 Sep 2017 16:41:14 -0300 + +linux-azure (4.11.0-1011.11) xenial; urgency=low + + * linux-azure: 4.11.0-1011.11 -proposed tracker (LP: #1718265) + + * KVP scripts location for linux-azure image (LP: #1718264) + - SAUCE: azure: hv_kvp_daemon: search for HV scripts in /usr/sbin/ + + * [linux-azure] RTC options not present in kernel config (LP: #1718262) + - [Config] azure: Enable RTC + + -- Marcelo Henrique Cerri Tue, 19 Sep 2017 15:47:22 -0300 + +linux-azure (4.11.0-1010.10) xenial; urgency=low + + * linux-azure: 4.11.0-1010.10 -proposed tracker (LP: #1717616) + + * linux-azure: persistent memory is not working (LP: #1715755) + - ext4: fix fault handling when mounted with -o dax,ro + - [Config] azure: CONFIG_ND_BLK=y + - [Config] azure: CONFIG_ACPI_NFIT=y + + * [Hyper-V] 16.04 kexec-tools doesn't match linux-azure (LP: #1712867) + - x86/KASLR: Fix kexec kernel boot crash when KASLR randomization fails + + -- Marcelo Henrique Cerri Fri, 15 Sep 2017 20:06:10 -0300 + +linux-azure (4.11.0-1009.9) xenial; urgency=low + + * linux-azure: 4.11.0-1009.9 -proposed tracker (LP: #1715731) + + * [Hyper-V] Read TSC frequency from a synthetic MSR (LP: #1715489) + - x86/hyperv: Check frequency MSRs presence according to the specification + - x86/hyperv: Read TSC frequency from a synthetic MSR + + * [Hyper-V] linux-azure: rdma_ucm should autoload on HPC images (LP: #1712915) + - azure: force rdma_ucm to be loaded when hv_network_direct_* is loaded + + -- Marcelo Henrique Cerri Thu, 07 Sep 2017 16:28:39 -0300 + +linux-azure (4.11.0-1008.8) xenial; urgency=low + + * linux-azure: 4.11.0-1008.8 -proposed tracker (LP: #1713823) + + * linux-azure: add support for opengcs (LP: #1713812) + - SAUCE: Added vsock transport support to 9pfs + - SAUCE: NVDIMM: reducded ND_MIN_NAMESPACE_SIZE from 4MB to 4KB (page size) + + -- Marcelo Henrique Cerri Tue, 29 Aug 2017 18:14:56 -0300 + +linux-azure (4.11.0-1007.7) xenial; urgency=low + + * linux-azure: 4.11.0-1007.7 -proposed tracker (LP: #1712446) + + * [Hyper-V] linux-azure merge netvsc upstream VF & misc patches (LP: #1711243) + - netvsc: delay setup of VF device + - netvsc: Initialize 64-bit stats seqcount + - netvsc: fix race on sub channel creation + - netvsc: propagate MAC address change to VF slave + - netvsc: optimize receive completions + + * linux-azure: Please move the rdma_ucm driver from -extras to the main kernel + package (LP: #1711408) + - azure: move rdma_ucm module to the main kernel package + + * linux-azure: enable DAX config options (LP: #1711230) + - [config] azure: DAX support + + * Miscellaneous upstream changes + - Revert "UBUNTU: [Config] select gcc-6 explicitly" + + [ Ubuntu: 4.11.0-14.22 ] + + * CVE-2017-1000112 + - udp: consistently apply ufo or fragmentation + * CVE-2017-1000111 + - packet: fix tp_reserve race in packet_set_ring + * linux 4.11.0-13.19 ADT test failure with linux 4.11.0-13.19 (LP: #1709590) + - SAUCE: ZFS: Don't take spin lock on rwlock owner + * [Config] select gcc-6 explicitly + + [ Ubuntu: 4.11.0-13.19 ] + + * CVE-2017-7533 + - dentry name snapshots + + [ Ubuntu: 4.11.0-12.18 ] + + * linux: 4.11.0-12.18 -proposed tracker (LP: #1707635) + - no change rebuild to pick up the new binutils. + * Adt tests of src:linux time out often on armhf lxc containers (LP: #1705495) + - [Packaging] tests -- reduce rebuild test to one flavour + - [Packaging] tests -- reduce rebuild test to one flavour -- use filter + * [ARM64] config EDAC_GHES=y depends on EDAC_MM_EDAC=y (LP: #1706141) + - [Config] set EDAC_MM_EDAC=y for ARM64 + * [Hyper-V] hv_netvsc: Exclude non-TCP port numbers from vRSS hashing + (LP: #1690174) + - hv_netvsc: Exclude non-TCP port numbers from vRSS hashing + * ath10k doesn't report full RSSI information (LP: #1706531) + - ath10k: add per chain RSSI reporting + * ideapad_laptop don't support v310-14isk (LP: #1705378) + - platform/x86: ideapad-laptop: Add several models to no_hw_rfkill + * Ubuntu 16.04.3: Qemu fails on P9 (LP: #1686019) + - KVM: PPC: Pass kvm* to kvmppc_find_table() + - KVM: PPC: Use preregistered memory API to access TCE list + - KVM: PPC: VFIO: Add in-kernel acceleration for VFIO + - powerpc/powernv/iommu: Add real mode version of iommu_table_ops::exchange() + - powerpc/iommu/vfio_spapr_tce: Cleanup iommu_table disposal + - powerpc/vfio_spapr_tce: Add reference counting to iommu_table + - powerpc/mmu: Add real mode support for IOMMU preregistered memory + - KVM: PPC: Reserve KVM_CAP_SPAPR_TCE_VFIO capability number + - KVM: PPC: Book3S HV: Add radix checks in real-mode hypercall handlers + * hns: ethtool selftest crashes system (LP: #1705712) + - net/hns:bugfix of ethtool -t phy self_test + * ThunderX: soft lockup on 4.8+ kernels when running qemu-efi with vhost=on + (LP: #1673564) + - KVM: arm/arm64: vgic-v3: Use PREbits to infer the number of ICH_APxRn_EL2 + registers + - KVM: arm/arm64: vgic-v3: Fix nr_pre_bits bitfield extraction + - arm64: Add a facility to turn an ESR syndrome into a sysreg encoding + - KVM: arm/arm64: vgic-v3: Add accessors for the ICH_APxRn_EL2 registers + - KVM: arm64: Make kvm_condition_valid32() accessible from EL2 + - KVM: arm64: vgic-v3: Add hook to handle guest GICv3 sysreg accesses at EL2 + - KVM: arm64: vgic-v3: Add ICV_BPR1_EL1 handler + - KVM: arm64: vgic-v3: Add ICV_IGRPEN1_EL1 handler + - KVM: arm64: vgic-v3: Add ICV_IAR1_EL1 handler + - KVM: arm64: vgic-v3: Add ICV_EOIR1_EL1 handler + - KVM: arm64: vgic-v3: Add ICV_AP1Rn_EL1 handler + - KVM: arm64: vgic-v3: Add ICV_HPPIR1_EL1 handler + - KVM: arm64: vgic-v3: Enable trapping of Group-1 system registers + - KVM: arm64: Enable GICv3 Group-1 sysreg trapping via command-line + - KVM: arm64: vgic-v3: Add ICV_BPR0_EL1 handler + - KVM: arm64: vgic-v3: Add ICV_IGNREN0_EL1 handler + - KVM: arm64: vgic-v3: Add misc Group-0 handlers + - KVM: arm64: vgic-v3: Enable trapping of Group-0 system registers + - KVM: arm64: Enable GICv3 Group-0 sysreg trapping via command-line + - arm64: Add MIDR values for Cavium cn83XX SoCs + - arm64: Add workaround for Cavium Thunder erratum 30115 + - KVM: arm64: vgic-v3: Add ICV_DIR_EL1 handler + - KVM: arm64: vgic-v3: Add ICV_RPR_EL1 handler + - KVM: arm64: vgic-v3: Add ICV_CTLR_EL1 handler + - KVM: arm64: vgic-v3: Add ICV_PMR_EL1 handler + - KVM: arm64: Enable GICv3 common sysreg trapping via command-line + - KVM: arm64: vgic-v3: Log which GICv3 system registers are trapped + - arm64: KVM: Make unexpected reads from WO registers inject an undef + - KVM: arm64: Log an error if trapping a read-from-write-only GICv3 access + - KVM: arm64: Log an error if trapping a write-to-read-only GICv3 access + * ath9k freezes suspend resume Ubuntu 17.04 (LP: #1697027) + - ath9k: fix an invalid pointer dereference in ath9k_rng_stop() + * xhci_hcd: ERROR Transfer event TRB DMA ptr not part of current TD ep_index 2 + comp_code 13 (LP: #1667750) + - xhci: Bad Ethernet performance plugged in ASM1042A host + * Migrating KSM page causes the VM lock up as the KSM page merging list is too + large (LP: #1680513) + - ksm: introduce ksm_max_page_sharing per page deduplication limit + - ksm: fix use after free with merge_across_nodes = 0 + - ksm: cleanup stable_node chain collapse case + - ksm: swap the two output parameters of chain/chain_prune + - ksm: optimize refile of stable_node_dup at the head of the chain + * Artful update to v4.11.12 stable release (LP: #1706067) + - net/phy: micrel: configure intterupts after autoneg workaround + - ipv6: avoid unregistering inet6_dev for loopback + - netvsc: don't access netdev->num_rx_queues directly + - sfc: Fix MCDI command size for filter operations + - net: account for current skb length when deciding about UFO + - net: dp83640: Avoid NULL pointer dereference. + - tcp: reset sk_rx_dst in tcp_disconnect() + - net: prevent sign extension in dev_get_stats() + - virtio-net: serialize tx routine during reset + - net: sched: Fix one possible panic when no destroy callback + - mlxsw: spectrum_router: Fix NULL pointer dereference + - rocker: move dereference before free + - bpf: prevent leaking pointer via xadd on unpriviledged + - net: handle NAPI_GRO_FREE_STOLEN_HEAD case also in napi_frags_finish() + - net/mlx5: Cancel delayed recovery work when unloading the driver + - net/mlx5e: Fix TX carrier errors report in get stats ndo + - ipv6: dad: don't remove dynamic addresses if link is down + - vxlan: fix hlist corruption + - geneve: fix hlist corruption + - net: core: Fix slab-out-of-bounds in netdev_stats_to_stats64 + - liquidio: fix bug in soft reset failure detection + - net: ipv6: Compare lwstate in detecting duplicate nexthops + - vrf: fix bug_on triggered by rx when destroying a vrf + - rds: tcp: use sock_create_lite() to create the accept socket + - net/mlx5e: Initialize CEE's getpermhwaddr address buffer to 0xff + - cxgb4: fix BUG() on interrupt deallocating path of ULD + - tap: convert a mutex to a spinlock + - bridge: mdb: fix leak on complete_info ptr on fail path + - brcmfmac: fix possible buffer overflow in brcmf_cfg80211_mgmt_tx() + - sfc: don't read beyond unicast address list + - Adding asm-prototypes.h for genksyms to generate crc + - sed regex in Makefile.build requires line break between exported symbols + - Adding the type of exported symbols + - sparc64: Fix gup_huge_pmd + - block: Fix a blk_exit_rl() regression + - brcmfmac: Fix a memory leak in error handling path in + 'brcmf_cfg80211_attach' + - brcmfmac: Fix glom_skb leak in brcmf_sdiod_recv_chain + - efi: Process the MEMATTR table only if EFI_MEMMAP is enabled + - cfg80211: Define nla_policy for NL80211_ATTR_LOCAL_MESH_POWER_MODE + - cfg80211: Validate frequencies nested in NL80211_ATTR_SCAN_FREQUENCIES + - cfg80211: Check if PMKID attribute is of expected size + - cfg80211: Check if NAN service ID is of expected size + - drm/amdgpu/gfx6: properly cache mc_arb_ramcfg + - irqchip/gic-v3: Fix out-of-bound access in gic_set_affinity + - parisc: Report SIGSEGV instead of SIGBUS when running out of stack + - parisc: use compat_sys_keyctl() + - parisc: DMA API: return error instead of BUG_ON for dma ops on non dma devs + - parisc/mm: Ensure IRQs are off in switch_mm() + - tools/lib/lockdep: Reduce MAX_LOCK_DEPTH to avoid overflowing lock_chain/: + Depth + - thp, mm: fix crash due race in MADV_FREE handling + - kernel/extable.c: mark core_kernel_text notrace + - mm/list_lru.c: fix list_lru_count_node() to be race free + - fs/dcache.c: fix spin lockup issue on nlru->lock + - checkpatch: silence perl 5.26.0 unescaped left brace warnings + - binfmt_elf: use ELF_ET_DYN_BASE only for PIE + - arm: move ELF_ET_DYN_BASE to 4MB + - arm64: move ELF_ET_DYN_BASE to 4GB / 4MB + - powerpc: move ELF_ET_DYN_BASE to 4GB / 4MB + - s390: reduce ELF_ET_DYN_BASE + - exec: Limit arg stack to at most 75% of _STK_LIM + - powerpc/kexec: Fix radix to hash kexec due to IAMR/AMOR + - ARM64: dts: marvell: armada37xx: Fix timer interrupt specifiers + - arm64: Preventing READ_IMPLIES_EXEC propagation + - vt: fix unchecked __put_user() in tioclinux ioctls + - rcu: Add memory barriers for NOCB leader wakeup + - nvmem: core: fix leaks on registration errors + - Drivers: hv: vmbus: Close timing hole that can corrupt per-cpu page + - mnt: In umount propagation reparent in a separate pass + - mnt: In propgate_umount handle visiting mounts in any order + - mnt: Make propagate_umount less slow for overlapping mount propagation trees + - selftests/capabilities: Fix the test_execve test + - mm: fix overflow check in expand_upwards() + - crypto: talitos - Extend max key length for SHA384/512-HMAC and AEAD + - crypto: atmel - only treat EBUSY as transient if backlog + - crypto: sha1-ssse3 - Disable avx2 + - crypto: caam - properly set IV after {en,de}crypt + - crypto: caam - fix signals handling + - sched/fair, cpumask: Export for_each_cpu_wrap() + - sched/topology: Fix building of overlapping sched-groups + - sched/topology: Optimize build_group_mask() + - sched/topology: Fix overlapping sched_group_mask + - PM / wakeirq: Convert to SRCU + - ALSA: x86: Clear the pdata.notify_lpe_audio pointer before teardown + - PM / QoS: return -EINVAL for bogus strings + - kvm: vmx: Do not disable intercepts for BNDCFGS + - kvm: x86: Guest BNDCFGS requires guest MPX support + - kvm: vmx: Check value written to IA32_BNDCFGS + - kvm: vmx: allow host to access guest MSR_IA32_BNDCFGS + - Linux 4.11.12 + * Artful update to v4.11.11 stable release (LP: #1706066) + - mqueue: fix a use-after-free in sys_mq_notify() + - proc: Fix proc_sys_prune_dcache to hold a sb reference + - locking/rwsem-spinlock: Fix EINTR branch in __down_write_common() + - staging: vt6556: vnt_start Fix missing call to vnt_key_init_table. + - staging: comedi: fix clean-up of comedi_class in comedi_init() + - crypto: caam - fix gfp allocation flags (part I) + - crypto: rsa-pkcs1pad - use constant time memory comparison for MACs + - ext4: check return value of kstrtoull correctly in reserved_clusters_store + - x86/mm/pat: Don't report PAT on CPUs that don't support it + - Linux 4.11.11 + * Change CONFIG_IBMVETH to module (LP: #1704479) + - [Config] CONFIG_IBMVETH=m + * hns: use after free in hns_nic_net_xmit_hw (LP: #1704885) + - net: hns: Fix a skb used after free bug + * Opal and POWER9 DD2 (LP: #1702159) + - powerpc/powernv: Fix boot on Power8 bare metal due to opal_configure_cores() + * CVE-2017-1000364 + - mm/mmap.c: do not blow on PROT_NONE MAP_FIXED holes in the stack + - mm/mmap.c: expand_downwards: don't require the gap if !vm_prev + * [Xenial] nvme: Quirks for PM1725 controllers (LP: #1704435) + - nvme: Quirks for PM1725 controllers + * bonding: stack dump when unregistering a netdev (LP: #1704102) + - bonding: avoid NETDEV_CHANGEMTU event when unregistering slave + * Ubuntu 16.04 IOB Error when the Mustang board rebooted (LP: #1693673) + - drivers: net: xgene: Fix redundant prefetch buffer cleanup + * Ubuntu16.04: NVMe 4K+T10 DIF/DIX format returns I/O error on dd with split + op (LP: #1689946) + - blk-mq: NVMe 512B/4K+T10 DIF/DIX format returns I/O error on dd with split + op + * linux >= 4.2: bonding 802.3ad does not work with 5G, 25G and 50G link speeds + (LP: #1697892) + - bonding: add 802.3ad support for 25G speeds + - bonding: fix 802.3ad support for 5G and 50G speeds + * hns: under heavy load, NIC may fail and require reboot (LP: #1704146) + - net: hns: Bugfix for Tx timeout handling in hns driver + * New ACPI identifiers for ThunderX SMMU (LP: #1703437) + - iommu/arm-smmu: Plumb in new ACPI identifiers + * Transparent hugepages should default to enabled=madvise (LP: #1703742) + - [Config] use CONFIG_TRANSPARENT_HUGEPAGE_MADVISE=y as default + * Miscellaneous Ubuntu changes + - [Config] CONFIG_CAVIUM_ERRATUM_30115=y + * Miscellaneous upstream changes + - platform/x86: thinkpad_acpi: guard generic hotkey case + - platform/x86: thinkpad_acpi: add mapping for new hotkeys + - selftest/memfd/Makefile: Fix build error + + -- Marcelo Henrique Cerri Tue, 22 Aug 2017 20:28:34 -0300 + +linux-azure (4.11.0-1006.6) xenial; urgency=low + + * linux-azure: 4.11.0-1006.6 -proposed tracker (LP: #1710944) + + * Please only recommend or suggest initramfs-tools | linux-initramfs-tool for + kernels able to boot without initramfs (LP: #1700972) + - [Debian] Don't abort installation if update-initramfs is missing + + * linux-azure: vmbus-rdma: Use underscore to separate major and minor host OS + version (LP: #1709101) + - SAUCE: vmbus-rdma: Use _ to separate major and minor host OS version + + * linux-azure: prevent RDMA drivers from being hot plugged (LP: #1708699) + - azure: Prevent hv_network_direct_* drivers from being hot plugged + + * Infiniband: add missing values in queue pair attributes (LP: #1709681) + - RDMA/core: Initialize port_num in qp_attr + + * [Hyper-V] Transparent SR-IOV solves bonding race conditions (LP: #1708469) + - Revert "UBUNTU: SAUCE: netvsc: keep track of vf passthrough statistics" + - Revert "UBUNTU: SAUCE: netvsc: optional transparent fail over" + - Revert "UBUNTU: SAUCE: netvsc: optimize calculation of number of slots" + - hv_netvsc: Fix the carrier state error when data path is off + - SAUCE: netvsc: add some rtnl_dereference annotations + - SAUCE: netvsc: include rtnetlink.h + - SAUCE: netvsc: transparent VF management + - SAUCE: netvsc: add documentation + - netvsc: remove bonding setup script + - SAUCE: netvsc: make sure and unregister datapath + + * [Hyper-V] netvsc: fix rtnl deadlock on unregister of vf (LP: #1708995) + - SAUCE: netvsc: fix rtnl deadlock on unregister of vf + + -- Kamal Mostafa Tue, 15 Aug 2017 11:40:28 -0700 + +linux-azure (4.11.0-1005.5) xenial; urgency=low + + * linux-azure: 4.11.0-1005.5 -proposed tracker (LP: #1708017) + + * linux-azure: Update Hyper-V support (LP: #1707285) + - x86/hyperv: Implement hv_get_tsc_page() + - x86/hyperv: Move TSC reading method to asm/mshyperv.h + - x86/vdso: Add VCLOCK_HVCLOCK vDSO clock read method + - netvsc: fix hang on netvsc module removal + - hyperv: remove unnecessary return variable + - vmbus: simplify hv_ringbuffer_read + - scsi: storvsc: use in place iterator function + - netvsc: Fix a bug in sub-channel handling + - vmbus: refactor hv_signal_on_read + - vmbus: eliminate duplicate cached index + - vmbus: more host signalling avoidance + - tools: hv: properly handle long paths + - HV: properly delay KVP packets when negotiation is in progress + - netvsc: Initialize all channel related state prior to opening the channel + - netvsc: use napi_consume_skb + - netvsc: fix use after free on module removal + - netvsc: pass net_device to netvsc_init_buf and netvsc_connect_vsp + - netvsc: move filter setting to rndis_device + - netvsc: Properly initialize the return value + - netvsc: change order of steps in setting queues + - netvsc: change logic for change mtu and set_queues + - netvsc: use ERR_PTR to avoid dereference issues + - netvsc: prefetch the first incoming ring element + - SAUCE: netvsc: convert ring_size to unsigned + - SAUCE: netvsc: allow overriding send/recv buffer size + - hv_utils: drop .getcrosststamp() support from PTP driver + - vmbus: add prefetch to ring buffer iterator + - netvsc: make sure napi enabled before vmbus_open + - Drivers: hv: util: Make hv_poll_channel() a little more efficient + - hv_utils: fix TimeSync work on pre-TimeSync-v4 hosts + - x86/hyper-v: stash the max number of virtual/logical processor + - SAUCE: x86/hyper-v: make hv_do_hypercall() inline + - SAUCE: x86/hyper-v: fast hypercall implementation + - SAUCE: hyper-v: use fast hypercall for HVCALL_SIGNAL_EVENT + - SAUCE: x86/hyper-v: implement rep hypercalls + - SAUCE: hyper-v: globalize vp_index + - SAUCE: x86/hyper-v: use hypercall for remote TLB flush + - SAUCE: x86/hyper-v: support extended CPU ranges for TLB flush hypercalls + - SAUCE: tracing/hyper-v: trace hyperv_mmu_flush_tlb_others() + - netvsc: fix net poll mode + - netvsc: fix RCU warning in get_stats + - Drivers: hv: vmbus: Close timing hole that can corrupt per-cpu page + - PCI: hv: Convert hv_pci_dev.refs from atomic_t to refcount_t + - PCI: hv: Fix comment formatting and use proper integer fields + - PCI: hv: Use page allocation for hbus structure + - PCI: hv: Temporary own CPU-number-to-vCPU-number infra + - PCI: hv: Add vPCI version protocol negotiation + - PCI: hv: Use vPCI protocol version 1.2 + - Revert "UBUNTU: SAUCE: vmbus: add the matching tasklet_enable() in + vmbus_close_internal()" + - vmbus: re-enable channel tasklet + - SAUCE: vmbus: don't need to check interrupt mask on read side + - netvsc: use hv_get_bytes_to_read + - SAUCE: netvsc: optimize calculation of number of slots + - SAUCE: netvsc: optional transparent fail over + - SAUCE: netvsc: keep track of vf passthrough statistics + - SAUCE: hv-sock: a temporary workaround for the pending_send_size issue + - SAUCE: hv-sock: avoid double FINs if shutdown() is called + + -- Marcelo Henrique Cerri Tue, 01 Aug 2017 17:52:08 -0300 + +linux-azure (4.11.0-1004.4) xenial; urgency=low + + * linux-azure: 4.11.0-1004.4 -proposed tracker (LP: #1707061) + + * Please only recommend or suggest initramfs-tools | linux-initramfs-tool for + kernels able to boot without initramfs (LP: #1700972) + - [Debian] Don't depend on initramfs-tools + + * [Hyper-V] hv_netvsc: Exclude non-TCP port numbers from vRSS hashing + (LP: #1690174) + - hv_netvsc: Exclude non-TCP port numbers from vRSS hashing + + * [Hyper-V] Add infiniband support for Azure HPC (LP: #1701744) + - SAUCE: Add infiniband driver for Azure HPC + - SAUCE: Add driver build configuration to infiniband + - SAUCE: move vmbus-rdma to vmbus-rdma/vmbus-rdma-142 + - SAUCE: vmbus-rdma: add driver for host OS version 144 + - [Config] CONFIG_HYPERV_INFINIBAND_ND=m + - SAUCE: vmbus-rdma: add minor host OS version to modules + + * linux-azure: disable unused modules in the -extra package (LP: #1706165) + - [Config] Remove unused modules from -extra package + + [ Ubuntu: 4.11.0-11.16 ] + + * linux: 4.11.0-11.16 -proposed tracker (LP: #1703901) + * Artful update to v4.11.10 stable release (LP: #1703854) + - fs: add a VALID_OPEN_FLAGS + - fs: completely ignore unknown open flags + - driver core: platform: fix race condition with driver_override + - RDMA/uverbs: Check port number supplied by user verbs cmds + - ceph: choose readdir frag based on previous readdir reply + - tracing/kprobes: Allow to create probe with a module name starting with a + digit + - usb: dwc3: replace %p with %pK + - USB: serial: cp210x: add ID for CEL EM3588 USB ZigBee stick + - Add USB quirk for HVR-950q to avoid intermittent device resets + - usb: usbip: set buffer pointers to NULL after free + - usb: Fix typo in the definition of Endpoint[out]Request + - USB: core: fix device node leak + - arm: remove wrong CONFIG_PROC_SYSCTL ifdef + - pinctrl: sh-pfc: r8a7794: Swap ATA signals + - pinctrl: sh-pfc: r8a7791: Fix SCIF2 pinmux data + - pinctrl: sh-pfc: r8a7791: Add missing DVC_MUTE signal + - pinctrl: sh-pfc: r8a7795: Fix hscif2_clk_b and hscif4_ctrl + - pinctrl: meson: meson8b: fix the NAND DQS pins + - pinctrl: stm32: Fix bad function call + - pinctrl: sunxi: Fix SPDIF function name for A83T + - pinctrl: core: Fix warning by removing bogus code + - pinctrl: mxs: atomically switch mux and drive strength config + - pinctrl: sh-pfc: r8a7791: Add missing HSCIF1 pinmux data + - pinctrl: sh-pfc: Update info pointer after SoC-specific init + - USB: serial: option: add two Longcheer device ids + - USB: serial: qcserial: new Sierra Wireless EM7305 device ID + - xhci: Limit USB2 port wake support for AMD Promontory hosts + - gfs2: Fix glock rhashtable rcu bug + - Add "shutdown" to "struct class". + - tpm: Issue a TPM2_Shutdown for TPM2 devices. + - tpm: fix a kernel memory leak in tpm-sysfs.c + - x86/uaccess: Optimize copy_user_enhanced_fast_string() for short strings + - xen: avoid deadlock in xenbus driver + - crypto: drbg - Fixes panic in wait_for_completion call + - rt286: add Thinkpad Helix 2 to force_combo_jack_table + - Linux 4.11.10 + * CVE-2017-10810 + - drm/virtio: don't leak bo on drm_gem_object_init failure + * cxlflash update request in the Xenial SRU stream (LP: #1702521) + - scsi: cxlflash: Separate RRQ processing from the RRQ interrupt handler + - scsi: cxlflash: Serialize RRQ access and support offlevel processing + - scsi: cxlflash: Implement IRQ polling for RRQ processing + - scsi: cxlflash: Update sysfs helper routines to pass config structure + - scsi: cxlflash: Support dynamic number of FC ports + - scsi: cxlflash: Remove port configuration assumptions + - scsi: cxlflash: Hide FC internals behind common access routine + - scsi: cxlflash: SISlite updates to support 4 ports + - scsi: cxlflash: Support up to 4 ports + - scsi: cxlflash: Fence EEH during probe + - scsi: cxlflash: Remove unnecessary DMA mapping + - scsi: cxlflash: Fix power-of-two validations + - scsi: cxlflash: Fix warnings/errors + - scsi: cxlflash: Improve asynchronous interrupt processing + - scsi: cxlflash: Support multiple hardware queues + - scsi: cxlflash: Add hardware queues attribute + - scsi: cxlflash: Introduce hardware queue steering + - cxl: Enable PCI device IDs for future IBM CXL adapters + - scsi: cxlflash: Select IRQ_POLL + - scsi: cxlflash: Combine the send queue locks + - scsi: cxlflash: Update cxlflash_afu_sync() to return errno + - scsi: cxlflash: Reset hardware queue context via specified register + - scsi: cxlflash: Schedule asynchronous reset of the host + - scsi: cxlflash: Handle AFU sync failures + - scsi: cxlflash: Track pending scsi commands in each hardware queue + - scsi: cxlflash: Flush pending commands in cleanup path + - scsi: cxlflash: Add scsi command abort handler + - scsi: cxlflash: Create character device to provide host management interface + - scsi: cxlflash: Separate AFU internal command handling from AFU sync + specifics + - scsi: cxlflash: Introduce host ioctl support + - scsi: cxlflash: Refactor AFU capability checking + - scsi: cxlflash: Support LUN provisioning + - scsi: cxlflash: Support AFU debug + - scsi: cxlflash: Support WS16 unmap + - scsi: cxlflash: Remove zeroing of private command data + - scsi: cxlflash: Update TMF command processing + - scsi: cxlflash: Avoid double free of character device + - scsi: cxlflash: Update send_tmf() parameters + - scsi: cxlflash: Update debug prints in reset handlers + * make snap-pkg support (LP: #1700747) + - make snap-pkg support + * Quirk for non-compliant PCI bridge on HiSilicon D05 board (LP: #1698706) + - SAUCE: PCI: Support hibmc VGA cards behind a misbehaving HiSilicon bridge + * arm64: fix crash reading /proc/kcore (LP: #1702749) + - fs/proc: kcore: use kcore_list type to check for vmalloc/module address + - arm64: mm: select CONFIG_ARCH_PROC_KCORE_TEXT + * Opal and POWER9 DD2 (LP: #1702159) + - SAUCE: powerpc/powernv: Tell OPAL about our MMU mode on POWER9 + * Data corruption with hio driver (LP: #1701316) + - SAUCE: hio: Fix incorrect use of enum req_opf values + * Artful update to v4.11.9 stable release (LP: #1702515) + - net: don't call strlen on non-terminated string in dev_set_alias() + - net: Fix inconsistent teardown and release of private netdev state. + - net: s390: fix up for "Fix inconsistent teardown and release of private + netdev state" + - mac80211: free netdev on dev_alloc_name() error + - decnet: dn_rtmsg: Improve input length sanitization in + dnrmg_receive_user_skb + - net: Zero ifla_vf_info in rtnl_fill_vfinfo() + - net: ipv6: Release route when device is unregistering + - net: vrf: Make add_fib_rules per network namespace flag + - af_unix: Add sockaddr length checks before accessing sa_family in bind and + connect handlers + - Fix an intermittent pr_emerg warning about lo becoming free. + - sctp: disable BH in sctp_for_each_endpoint + - net: caif: Fix a sleep-in-atomic bug in cfpkt_create_pfx + - net: tipc: Fix a sleep-in-atomic bug in tipc_msg_reverse + - net/mlx5: Remove several module events out of ethtool stats + - net/mlx5e: Added BW check for DIM decision mechanism + - net/mlx5e: Fix wrong indications in DIM due to counter wraparound + - net/mlx5: Enable 4K UAR only when page size is bigger than 4K + - proc: snmp6: Use correct type in memset + - igmp: acquire pmc lock for ip_mc_clear_src() + - igmp: add a missing spin_lock_init() + - qmi_wwan: new Telewell and Sierra device IDs + - net: don't global ICMP rate limit packets originating from loopback + - ipv6: fix calling in6_ifa_hold incorrectly for dad work + - sctp: return next obj by passing pos + 1 into sctp_transport_get_idx + - net/mlx5e: Fix min inline value for VF rep SQs + - net/mlx5e: Avoid doing a cleanup call if the profile doesn't have it + - net/mlx5: Wait for FW readiness before initializing command interface + - net/mlx5e: Fix timestamping capabilities reporting + - decnet: always not take dst->__refcnt when inserting dst into hash table + - net: 8021q: Fix one possible panic caused by BUG_ON in free_netdev + - ipv6: Do not leak throw route references + - rtnetlink: add IFLA_GROUP to ifla_policy + - netfilter: synproxy: fix conntrackd interaction + - NFSv4.x/callback: Create the callback service through svc_create_pooled + - xen/blkback: don't use xen_blkif_get() in xen-blkback kthread + - MIPS: head: Reorder instructions missing a delay slot + - MIPS: Avoid accidental raw backtrace + - MIPS: pm-cps: Drop manual cache-line alignment of ready_count + - MIPS: Fix IRQ tracing & lockdep when rescheduling + - ALSA: hda - Fix endless loop of codec configure + - ALSA: hda - set input_path bitmap to zero after moving it to new place + - NFSv4.2: Don't send mode again in post-EXCLUSIVE4_1 SETATTR with umask + - NFSv4.1: Fix a race in nfs4_proc_layoutget + - Revert "NFS: nfs_rename() handle -ERESTARTSYS dentry left behind" + - ovl: copy-up: don't unlock between lookup and link + - gpiolib: fix filtering out unwanted events + - x86/intel_rdt: Fix memory leak on mount failure + - perf/x86/intel/uncore: Fix wrong box pointer check + - drm/vmwgfx: Free hash table allocated by cmdbuf managed res mgr + - dm thin: do not queue freed thin mapping for next stage processing + - x86/mm: Fix boot crash caused by incorrect loop count calculation in + sync_global_pgds() + - mm/vmalloc.c: huge-vmap: fail gracefully on unexpected huge vmap mappings + - xen/blkback: don't free be structure too early + - xfrm6: Fix IPv6 payload_len in xfrm6_transport_finish + - xfrm: move xfrm_garbage_collect out of xfrm_policy_flush + - xfrm: fix stack access out of bounds with CONFIG_XFRM_SUB_POLICY + - xfrm: NULL dereference on allocation failure + - xfrm: Oops on error in pfkey_msg2xfrm_state() + - watchdog: bcm281xx: Fix use of uninitialized spinlock. + - ARM64: PCI: Fix struct acpi_pci_root_ops allocation failure path + - ARM64/ACPI: Fix BAD_MADT_GICC_ENTRY() macro implementation + - ARM: 8685/1: ensure memblock-limit is pmd-aligned + - ARM: davinci: PM: Free resources in error handling path in 'davinci_pm_init' + - ARM: davinci: PM: Do not free useful resources in normal path in + 'davinci_pm_init' + - tools arch: Sync arch/x86/lib/memcpy_64.S with the kernel + - Revert "x86/entry: Fix the end of the stack for newly forked tasks" + - x86/mshyperv: Remove excess #includes from mshyperv.h + - x86/boot/KASLR: Fix kexec crash due to 'virt_addr' calculation bug + - perf/x86: Fix spurious NMI with PEBS Load Latency event + - x86/mpx: Correctly report do_mpx_bt_fault() failures to user-space + - x86/mm: Fix flush_tlb_page() on Xen + - ocfs2: o2hb: revert hb threshold to keep compatible + - ocfs2: fix deadlock caused by recursive locking in xattr + - iommu/dma: Don't reserve PCI I/O windows + - iommu/amd: Fix incorrect error handling in amd_iommu_bind_pasid() + - iommu/amd: Fix interrupt remapping when disable guest_mode + - infiniband: hns: avoid gcc-7.0.1 warning for uninitialized data + - mtd: nand: brcmnand: Check flash #WP pin status before nand erase/program + - mtd: nand: fsmc: fix NAND width handling + - KVM: x86: fix emulation of RSM and IRET instructions + - KVM: x86/vPMU: fix undefined shift in intel_pmu_refresh() + - KVM: x86: zero base3 of unusable segments + - KVM: nVMX: Fix exception injection + - esp4: Fix udpencap for local TCP packets. + - hsi: Fix build regression due to netdev destructor fix. + - Linux 4.11.9 + * update ENA driver to 1.2.0k from net-next (LP: #1701575) + - net/ena: switch to pci_alloc_irq_vectors + - net: ena: fix rare uncompleted admin command false alarm + - net: ena: fix bug that might cause hang after consecutive open/close + interface. + - net: ena: add missing return when ena_com_get_io_handlers() fails + - net: ena: fix race condition between submit and completion admin command + - net: ena: add missing unmap bars on device removal + - net: ena: fix theoretical Rx hang on low memory systems + - net: ena: disable admin msix while working in polling mode + - net: ena: bug fix in lost tx packets detection mechanism + - net: ena: update ena driver to version 1.1.7 + - net: ena: change return value for unsupported features unsupported return + value + - net: ena: add hardware hints capability to the driver + - net: ena: change sizeof() argument to be the type pointer + - net: ena: add reset reason for each device FLR + - net: ena: add support for out of order rx buffers refill + - net: ena: allow the driver to work with small number of msix vectors + - net: ena: use napi_schedule_irqoff when possible + - net: ena: separate skb allocation to dedicated function + - net: ena: use lower_32_bits()/upper_32_bits() to split dma address + - net: ena: update driver's rx drop statistics + - net: ena: update ena driver to version 1.2.0 + * APST gets enabled against explicit kernel option (LP: #1699004) + - nvme: Display raw APST configuration via DYNAMIC_DEBUG + - nvme: Add nvme_core.force_apst to ignore the NO_APST quirk + - nvme: explicitly disable APST on quirked devices + * New NVLINK2 patches (LP: #1701272) + - powerpc/powernv/npu-dma: Add explicit flush when sending an ATSD + - powerpc/npu-dma: Remove spurious WARN_ON when a PCI device has no of_node + * ERAT invalidate on context switch removal (LP: #1700819) + - powerpc: Only do ERAT invalidate on radix context switch on P9 DD1 + * Miscellaneous Ubuntu changes + - SAUCE: (noup) Update spl to 0.6.5.10-1, zfs to 0.6.5.10-1ubuntu2 + - snapcraft.yaml: Sync with xenial + * Miscellaneous upstream changes + - Revert "UBUNTU: SAUCE: (efi-lockdown) efi: Add sysctls for secureboot and + MokSBState" + + [ Ubuntu: 4.11.0-10.15 ] + + * linux: 4.11.0-10.15 -proposed tracker (LP: #1701271) + * Artful update to v4.11.8 stable release (LP: #1701269) + - clk: sunxi-ng: a31: Correct lcd1-ch1 clock register offset + - clk: sunxi-ng: v3s: Fix usb otg device reset bit + - clk: sunxi-ng: sun5i: Fix ahb_bist_clk definition + - xen/blkback: fix disconnect while I/Os in flight + - xen-blkback: don't leak stack data via response ring + - ALSA: firewire-lib: Fix stall of process context at packet error + - ALSA: pcm: Don't treat NULL chmap as a fatal error + - ALSA: hda - Add Coffelake PCI ID + - ALSA: hda - Apply quirks to Broxton-T, too + - fs/exec.c: account for argv/envp pointers + - powerpc/perf: Fix oops when kthread execs user process + - autofs: sanity check status reported with AUTOFS_DEV_IOCTL_FAIL + - fs/dax.c: fix inefficiency in dax_writeback_mapping_range() + - lib/cmdline.c: fix get_options() overflow while parsing ranges + - perf/x86/intel: Add 1G DTLB load/store miss support for SKL + - perf probe: Fix probe definition for inlined functions + - KVM: x86: fix singlestepping over syscall + - KVM: MIPS: Fix maybe-uninitialized build failure + - KVM: s390: gaccess: fix real-space designation asce handling for gmap + shadows + - KVM: PPC: Book3S HV: Cope with host using large decrementer mode + - KVM: PPC: Book3S HV: Preserve userspace HTM state properly + - KVM: PPC: Book3S HV: Ignore timebase offset on POWER9 DD1 + - KVM: PPC: Book3S HV: Context-switch EBB registers properly + - KVM: PPC: Book3S HV: Restore critical SPRs to host values on guest exit + - KVM: PPC: Book3S HV: Save/restore host values of debug registers + - CIFS: Improve readdir verbosity + - CIFS: Fix some return values in case of error in 'crypt_message' + - cxgb4: notify uP to route ctrlq compl to rdma rspq + - HID: Add quirk for Dell PIXART OEM mouse + - random: silence compiler warnings and fix race + - signal: Only reschedule timers on signals timers have sent + - powerpc/kprobes: Pause function_graph tracing during jprobes handling + - powerpc/64s: Handle data breakpoints in Radix mode + - Input: i8042 - add Fujitsu Lifebook AH544 to notimeout list + - brcmfmac: add parameter to pass error code in firmware callback + - brcmfmac: use firmware callback upon failure to load + - brcmfmac: unbind all devices upon failure in firmware callback + - time: Fix clock->read(clock) race around clocksource changes + - time: Fix CLOCK_MONOTONIC_RAW sub-nanosecond accounting + - arm64/vdso: Fix nsec handling for CLOCK_MONOTONIC_RAW + - target: Fix kref->refcount underflow in transport_cmd_finish_abort + - iscsi-target: Fix delayed logout processing greater than + SECONDS_FOR_LOGOUT_COMP + - iscsi-target: Reject immediate data underflow larger than SCSI transfer + length + - drm/radeon: add a PX quirk for another K53TK variant + - drm/radeon: add a quirk for Toshiba Satellite L20-183 + - drm/amdgpu/atom: fix ps allocation size for EnableDispPowerGating + - drm/amdgpu: adjust default display clock + - drm/amdgpu: add Polaris12 DID + - ACPI / scan: Apply default enumeration to devices with ACPI drivers + - ACPI / scan: Fix enumeration for special SPI and I2C devices + - rxrpc: Fix several cases where a padded len isn't checked in ticket decode + - drm: Fix GETCONNECTOR regression + - usb: gadget: f_fs: avoid out of bounds access on comp_desc + - spi: double time out tolerance + - net: phy: fix marvell phy status reading + - brcmfmac: fix uninitialized warning in brcmf_usb_probe_phase2() + - Linux 4.11.8 + * powerpc: Invalidate ERAT on powersave wakeup for POWER9 (LP: #1700521) + - SAUCE: powerpc: Invalidate ERAT on powersave wakeup for POWER9 + * Miscellaneous Ubuntu changes + - d-i: Move qcom-emac from arm64 to shared nic-modules + + -- Marcelo Henrique Cerri Thu, 27 Jul 2017 17:24:12 -0300 + +linux-azure (4.11.0-1003.3) xenial; urgency=low + + * linux-azure: 4.11.0-1003.3 -proposed tracker (LP: #1700833) + + + [ Ubuntu: 4.11.0-9.14 ] + + * linux: 4.11.0-9.14 -proposed tracker (LP: #1700537) + * Artful update to v4.11.7 stable release (LP: #1700372) + - Revert "Allow stack to grow up to address space limit" + - Revert "UBUNTU: SAUCE: mm: fix new crash in unmapped_area_topdown()" + - Revert "mm: larger stack guard gap, between vmas" + - fs: pass on flags in compat_writev + - configfs: Fix race between create_link and configfs_rmdir + - can: gs_usb: fix memory leak in gs_cmd_reset() + - ila_xlat: add missing hash secret initialization + - cpufreq: conservative: Allow down_threshold to take values from 1 to 10 + - vb2: Fix an off by one error in 'vb2_plane_vaddr' + - cec: race fix: don't return -ENONET in cec_receive() + - selinux: fix double free in selinux_parse_opts_str() + - mac80211: don't look at the PM bit of BAR frames + - mac80211/wpa: use constant time memory comparison for MACs + - drm: mxsfb_crtc: Reset the eLCDIF controller + - drm/amdgpu: Fix overflow of watermark calcs at > 4k resolutions. + - drm/i915: Fix GVT-g PVINFO version compatibility check + - drm/i915: Fix scaling check for 90/270 degree plane rotation + - drm/i915: Do not sync RCU during shrinking + - mac80211: fix IBSS presp allocation size + - mac80211: strictly check mesh address extension mode + - mac80211: fix dropped counter in multiqueue RX + - mac80211: don't send SMPS action frame in AP mode when not needed + - drm/mediatek: fix mtk_hdmi_setup_vendor_specific_infoframe mistake + - drm/vc4: Fix OOPSes from trying to cache a partially constructed BO. + - serial: efm32: Fix parity management in 'efm32_uart_console_get_options()' + - serial: 8250_lpss: Unconditionally set PCI master for Quark + - serial: sh-sci: Fix (AUTO)RTS in sci_init_pins() + - serial: sh-sci: Fix late enablement of AUTORTS + - x86/mm/32: Set the '__vmalloc_start_set' flag in initmem_init() + - mfd: omap-usb-tll: Fix inverted bit use for USB TLL mode + - mfd: axp20x: Add support for dts property "xpowers,master-mode" + - dt-bindings: mfd: axp20x: Add "xpowers,master-mode" property for AXP806 + PMICs + - mfd: cpcap: Fix interrupt to use level interrupt + - mfd: cpcap: Use ack_invert interrupts + - mfd: cpcap: Fix bad use of IRQ sense register + - phy: rcar-gen3-usb2: fix implementation for runtime PM + - mtd: physmap_of: really fix the physmap add-ons + - powerpc/mm: Add physical address to Linux page table dump + - staging: rtl8188eu: prevent an underflow in rtw_check_beacon_data() + - staging: bcm2835-camera: fix error handling in init + - staging: iio: tsl2x7x_core: Fix standard deviation calculation + - iio: imu: st_lsm6dsx: do not apply ODR configuration in write_raw handler + - iio: proximity: as3935: recalibrate RCO after resume + - iio: adc: ti_am335x_adc: allocating too much in probe + - ALSA: hda: Add Geminilake id to SKL_PLUS + - ALSA: usb-audio: fix Amanero Combo384 quirk on big-endian hosts + - usb: gadget: udc: renesas_usb3: fix pm_runtime functions calling + - usb: gadget: udc: renesas_usb3: fix deadlock by spinlock + - usb: gadget: udc: renesas_usb3: lock for PN_ registers access + - USB: hub: fix SS max number of ports + - usb: core: fix potential memory leak in error path during hcd creation + - USB: usbip: fix nonconforming hub descriptor + - usb: dwc3: gadget: Fix ISO transfer performance + - pvrusb2: reduce stack usage pvr2_eeprom_analyze() + - USB: gadget: dummy_hcd: fix hub-descriptor removable fields + - usb: r8a66597-hcd: select a different endpoint on timeout + - usb: r8a66597-hcd: decrease timeout + - coda: restore original firmware locations + - drivers/misc/c2port/c2port-duramar2150.c: checking for NULL instead of + IS_ERR() + - usb: xhci: Fix USB 3.1 supported protocol parsing + - usb: xhci: ASMedia ASM1042A chipset need shorts TX quirk + - USB: gadget: fix GPF in gadgetfs + - USB: gadgetfs, dummy-hcd, net2280: fix locking for callbacks + - mm/memory-failure.c: use compound_head() flags for huge pages + - swap: cond_resched in swap_cgroup_prepare() + - mm: numa: avoid waiting on freed migrated pages + - userfaultfd: shmem: handle coredumping in handle_userfault() + - iio: imu: inv_mpu6050: add accel lpf setting for chip >= MPU6500 + - staging: iio: ad7152: Fix deadlock in ad7152_write_raw_samp_freq() + - iio: adc: meson-saradc: fix potential crash in meson_sar_adc_clear_fifo + - sched/core: Idle_task_exit() shouldn't use switch_mm_irqs_off() + - genirq: Release resources in __setup_irq() error path + - alarmtimer: Prevent overflow of relative timers + - alarmtimer: Rate limit periodic intervals + - virtio_balloon: disable VIOMMU support + - MIPS: Fix bnezc/jialc return address calculation + - MIPS: .its targets depend on vmlinux + - crypto: Work around deallocated stack frame reference gcc bug on sparc. + - ARM: dts: am335x-sl50: Fix card detect pin for mmc1 + - ARM: dts: am335x-sl50: Fix cannot claim requested pins for spi0 + - mm: larger stack guard gap, between vmas + - Allow stack to grow up to address space limit + - mm: fix new crash in unmapped_area_topdown() + - Linux 4.11.7 + * aacraid driver may return uninitialized stack data to userspace + (LP: #1700077) + - SAUCE: scsi: aacraid: Don't copy uninitialized stack memory to userspace + * KILLER1435-S[0489:e0a2] BT cannot search BT 4.0 device (LP: #1699651) + - Bluetooth: btusb: Add support for 0489:e0a2 QCA_ROME device + * arm64 kernel crashdump support (LP: #1694859) + - memblock: add memblock_clear_nomap() + - memblock: add memblock_cap_memory_range() + - arm64: limit memory regions based on DT property, usable-memory-range + - arm64: kdump: reserve memory for crash dump kernel + - arm64: mm: add set_memory_valid() + - arm64: kdump: protect crash dump kernel memory + - arm64: hibernate: preserve kdump image around hibernation + - arm64: kdump: implement machine_crash_shutdown() + - arm64: kdump: add VMCOREINFO's for user-space tools + - [Config] CONFIG_CRASH_DUMP=y on arm64 + - arm64: kdump: provide /proc/vmcore file + - Documentation: kdump: describe arm64 port + - Documentation: dt: chosen properties for arm64 kdump + - efi/libstub/arm*: Set default address and size cells values for an empty dtb + * AACRAID for power9 platform (LP: #1689980) + - scsi: aacraid: pci_alloc_consistent() failures on ARM64 + - scsi: aacraid: Remove __GFP_DMA for raw srb memory + - scsi: aacraid: Fix DMAR issues with iommu=pt + - scsi: aacraid: Added 32 and 64 queue depth for arc natives + - scsi: aacraid: Set correct Queue Depth for HBA1000 RAW disks + - scsi: aacraid: Remove reset support from check_health + - scsi: aacraid: Change wait time for fib completion + - scsi: aacraid: Log count info of scsi cmds before reset + - scsi: aacraid: Print ctrl status before eh reset + - scsi: aacraid: Using single reset mask for IOP reset + - scsi: aacraid: Rework IOP reset + - scsi: aacraid: Add periodic checks to see IOP reset status + - scsi: aacraid: Rework SOFT reset code + - scsi: aacraid: Rework aac_src_restart + - scsi: aacraid: Use correct function to get ctrl health + - scsi: aacraid: Make sure ioctl returns on controller reset + - scsi: aacraid: Enable ctrl reset for both hba and arc + - scsi: aacraid: Add reset debugging statements + - scsi: aacraid: Remove reference to Series-9 + - scsi: aacraid: Update driver version to 50834 + * Miscellaneous upstream changes + - Allow stack to grow up to address space limit + + [ Ubuntu: 4.11.0-8.13 ] + + * Release Tracking Bug + - LP: #1699184 + * hibmc driver does not include "pci:" prefix in bus ID (LP: #1698700) + - SAUCE: drm: hibmc: Use set_busid function from drm core + * HiSilicon D05: installer doesn't appear on VGA (LP: #1698954) + - d-i: Add hibmc-drm to kernel-image udeb + * Fix /proc/cpuinfo revision for POWER9 DD2 (LP: #1698844) + - SAUCE: powerpc: Fix /proc/cpuinfo revision for POWER9 DD2 + * Miscellaneous Ubuntu changes + - SAUCE: mm: fix new crash in unmapped_area_topdown() + + -- Marcelo Henrique Cerri Tue, 27 Jun 2017 17:02:07 -0300 + +linux-azure (4.11.0-1002.2) xenial; urgency=low + + * linux-azure: 4.11.0-1002.2 -proposed tracker (LP: #1699331) + + * Azure: add support for Hyper-V sockets via VSOCK (LP: #1698425) + - SAUCE: vmbus: vmbus_open(): reset onchannel_callback on error + - SAUCE: vmbus: add the matching tasklet_enable() in vmbus_close_internal() + - SAUCE: vmbus: remove "goto error_clean_msglist" in vmbus_open() + - SAUCE: vmbus: dynamically enqueue/dequeue a channel on vmbus_open/close + - SAUCE: hv_sock: implements Hyper-V transport for Virtual Sockets (AF_VSOCK) + - SAUCE: VMCI: only try to load on VMware hypervisor + - SAUCE: hv_sock: add the support of auto-loading + - SAUCE: tools: hv_sock: 2 simple test cases. + - SAUCE: hvsock: fix a race in hvs_stream_dequeue() + - SAUCE: hvsock: fix vsock_dequeue/enqueue_accept race + - SAUCE: Drivers: hv: vmbus: Fix rescind handling + - SAUCE: vmbus: fix hv_percpu_channel_deq/enq race + - SAUCE: vmbus: add vmbus onoffer/onoffer_rescind sync. + - [Config] CONFIG_HYPERV_VSOCKETS=m + + * Re-enable -extra package for linux-azure (LP: #1699157) + - Revert "UBUNTU: [config] azure: ship_extras_package=false" + + -- Marcelo Henrique Cerri Tue, 20 Jun 2017 17:44:18 -0300 + +linux-azure (4.11.0-1001.1) xenial; urgency=low + + * linux-azure: 4.11.0-1001.1 -proposed tracker (LP: #1698442) + + * Azure: throughput performance regression after #1690177 (LP: #1698371) + - Revert "vmbus: only reschedule tasklet if time limit exceeded" + + * Azure: remove AF_HYPERV socket (LP: #1698372) + - Revert "UBUNTU: SAUCE: 9p: net/9p: add hv_sock transport" + - Revert "UBUNTU: SAUCE: azure: hv_sock: 4.11 update" + - Revert "UBUNTU: [Config] azure: CONFIG_HYPERV_SOCK=m" + - Revert "UBUNTU: SAUCE: azure: hv_sock: introduce Hyper-V Sockets" + + * Rebase linux-azure to 4.11 (LP: #1698367) + - [Config] updateconfigs for 4.11 + - SAUCE: Fix check for PF_MAX after rebase to 4.11 + - [Config] update module list for 4.11 + - [Config] CONFIG_LOCK_DOWN_KERNEL=y + + -- Marcelo Henrique Cerri Fri, 16 Jun 2017 15:22:32 -0300 + +linux-azure (4.11.0-1000.0) xenial; urgency=low + + [ Marcelo Henrique Cerri ] + + * empty entry + + -- Marcelo Henrique Cerri Fri, 09 Jun 2017 14:04:22 -0300 + +linux-azure (4.10.0-1006.6) xenial; urgency=low + + [ Marcelo Cerri ] + + * linux-azure: 4.10.0-1006.6 -proposed tracker (LP: #1694731) + + * [Hyper-V][SAUCE] hv_sock for 4.10 (LP: #1690196) + - SAUCE: azure: hv_sock: introduce Hyper-V Sockets + - [Config] azure: CONFIG_HYPERV_SOCK=m + - SAUCE: azure: hv_sock: 4.11 update + - SAUCE: 9p: net/9p: add hv_sock transport + + * Azure kernel fails in ADT tests (LP: #1693494) + - Revert "UBUNTU: [config] azure: disable VIRTIO drivers" + + * linux-azure should be able to boot in a local Hyper-V (LP: #1692920) + - Revert "UBUNTU: [config] azure: disable CONFIG_EFI" + + * [Hyper-V] Rebase Hyper-V to upstream 4.11 kernel plus some cherry-picks from + linux-next (LP: #1690177) + - Input: serio - drop unnecessary calls to device_init_wakeup + - scsi: mvumi: remove fake transport template + - scsi: libsas: remove sas_scsi_timed_out + - scsi: remove eh_timed_out methods in the transport template + - netvsc: negotiate checksum and segmentation parameters + - netvsc: report number of rx queues in ethtool + - netvsc: add ethtool ops to get/set RSS key + - netvsc: allow more flexible setting of number of channels + - netvsc: remove unused variables + - netvsc: remove no longer needed receive staging buffers + - netvsc: enhance transmit select_queue + - netvsc: group all per-channel state together + - netvsc: optimize receive path + - netvsc: don't pass void * to internal device_add + - netvsc: simplify rndis_filter_remove + - netvsc: eliminate per-device outstanding send counter + - netvsc: account for packets/bytes transmitted after completion + - netvsc: call netif_receive_skb + - vmbus: use kernel bitops for traversing interrupt mask + - vmbus: drop no longer used kick_q argument + - vmbus: remove no longer used signal_policy + - vmbus: remove unused kickq argument to sendpacket + - vmbus: put related per-cpu variable together + - vmbus: callback is in softirq not workqueue + - vmbus: change to per channel tasklet + - vmbus: add direct isr callback mode + - vmbus: expose hv_begin/end_read + - vmbus: remove conditional locking of vmbus_write + - vmbus: constify parameters where possible + - net-next: treewide use is_vlan_dev() helper function. + - scripts/spelling.txt: add "intialization" pattern and fix typo instances + - netvsc: handle select_queue when device is being removed + - netvsc: simplify get next send section + - netvsc: fix calculation of available send sections + - PCI: hv: Specify CPU_AFFINITY_ALL for MSI affinity when >= 32 CPUs + - refcount_t: Introduce a special purpose refcount type + - locking/refcounts: Out-of-line everything + - locking/refcounts: Add missing kernel.h header to have UINT_MAX defined + - locking/refcount: Add refcount_t API kernel-doc comments + - netvsc: don't overload variable in same function + - vmbus: introduce in-place packet iterator + - netvsc: implement NAPI + - netvsc: replace netdev_alloc_skb_ip_align with napi_alloc_skb + - net: hyperv: use new api ethtool_{get|set}_link_ksettings + - vmbus: only reschedule tasklet if time limit exceeded + - vmbus: remove useless return's + - vmbus: remove unnecessary initialization + - vmbus: fix spelling errors + - vmbus: make channel_message table constant + - vmbus: cleanup header file style + - vmbus: expose debug info for drivers + - Drivers: hv: Fix a typo + - Drivers: hv: Base autoeoi enablement based on hypervisor hints + - scsi: storvsc: Prefer kcalloc over kzalloc with multiply + - scsi: storvsc: remove return at end of void function + - scsi: scsi_transport_fc: Add dummy initiator role to rport + - scsi: storvsc: Add support for FC rport. + - netvsc: remove unused #define + - netvsc: need napi scheduled during removal + - netvsc: avoid race with callback + - netvsc: add comments about callback's and NAPI + - netvsc: fix NAPI performance regression + - netvsc: allow get/set of RSS indirection table + - netvsc: handle offline mtu and channel change + - netvsc: change max channel calculation + - qed*: Update to dual-license + - qede: Break datapath logic into its own file + - qede: Split filtering logic to its own file + - qed*: Change maximal number of queues + - qede: Postpone reallocation until NAPI end + - qed*: RSS indirection based on queue-handles + - qed*: Add support for ndo_set_vf_trust + - net: make ndo_get_stats64 a void function + - netvsc: report per-channel stats in ethtool statistics + - netvsc: enable GRO + - netvsc: use RCU to protect inner device structure + - netvsc: fix use-after-free in netvsc_change_mtu() + - netvsc: uses RCU instead of removal flag + - SAUCE: include refcount.h in hyperv_net.h + - netvsc: use refcount_t for keeping track of sub channels + - netvsc: remove unnecessary lock on shutdown + - netvsc: eliminate unnecessary skb == NULL checks + - netvsc: fix and cleanup rndis_filter_set_packet_filter + - Drivers: hv: Issue explicit EOI when autoeoi is not enabled + - hv_netvsc: Fix the queue index computation in forwarding case + - hv_netvsc: change netvsc device default duplex to FULL + - netvsc: Deal with rescinded channels correctly + + -- Marcelo Henrique Cerri Wed, 31 May 2017 11:59:08 -0300 + +linux-azure (4.10.0-1005.5) xenial; urgency=low + + [ Marcelo Henrique Cerri ] + * Azure: make it possible to boot without initrd (LP: #1690136) + - [Config] CONFIG_HYPERV_STORAGE=y + + * linux-aws/linux-gke incorrectly producing an empty linux-*-source package-* + (LP: #1690183) + - [Packaging] drop linux-azure-source-* package + + * linux-aws/linux-gke incorrectly producing and using linux-*-tools- + common/linux-*-cloud-tools-common (LP: #1688579) + - [Config] linux-tools-* linux-cloud-tools-* share -common packages with linux + + -- Thadeu Lima de Souza Cascardo Mon, 15 May 2017 22:48:23 -0300 + +linux-azure (4.10.0-1004.4) xenial; urgency=low + + * Azure: update configs based on Zesty 4.10.0-21.23 (LP: #1688296) + - [Config] Sync debian.azure with zesty 4.10.0-21.23 + + * move aufs.ko from -extra to linux-image package (LP: #1673498) + - [config] aufs.ko moved to linux-image package + + [ Ubuntu: 4.10.0-21.23 ] + + * linux: 4.10.0-21.23 -proposed tracker (LP: #1686414) + * Need to stop using bzip2 compression in packages for zesty onward + (LP: #1686782) + - [Debian] Use default compression for all packages + * [Hyper-V][SAUCE] pci-hyperv: Use only 16 bit integer for PCI domain + (LP: #1684971) + - SAUCE: pci-hyperv: Use only 16 bit integer for PCI domain + * CVE-2017-7477: macsec: avoid heap overflow in skb_to_sgvec (LP: #1685892) + - macsec: avoid heap overflow in skb_to_sgvec + - macsec: dynamically allocate space for sglist + * Zesty update to 4.10.11 stable release (LP: #1685140) + - drm/i915: Fix forcewake active domain tracking + - drm/i915: Move updating color management to before vblank evasion + - drm/i915/fbdev: Stop repeating tile configuration on stagnation + - drm/i915: Squelch any ktime/jiffie rounding errors for wait-ioctl + - drm/i915/gen9: Increase PCODE request timeout to 50ms + - drm/i915: Store a permanent error in obj->mm.pages + - drm/i915: Nuke debug messages from the pipe update critical section + - drm/i915: Avoid tweaking evaluation thresholds on Baytrail v3 + - drm/i915: Reject HDMI 12bpc if the sink doesn't indicate support + - drm/i915: Only enable hotplug interrupts if the display interrupts are + enabled + - drm/i915: Drop support for I915_EXEC_CONSTANTS_* execbuf parameters. + - drm/i915: Stop using RP_DOWN_EI on Baytrail + - drm/i915: Avoid rcu_barrier() from reclaim paths (shrinker) + - drm/i915: Do .init_clock_gating() earlier to avoid it clobbering watermarks + - orangefs: Dan Carpenter influenced cleanups... + - orangefs: fix buffer size mis-match between kernel space and user space. + - nfs: flexfiles: fix kernel OOPS if MDS returns unsupported DS type + - rt2x00usb: fix anchor initialization + - rt2x00usb: do not anchor rx and tx urb's + - MIPS: Introduce irq_stack + - MIPS: Stack unwinding while on IRQ stack + - MIPS: Only change $28 to thread_info if coming from user mode + - MIPS: Switch to the irq_stack in interrupts + - MIPS: Select HAVE_IRQ_EXIT_ON_IRQ_STACK + - MIPS: IRQ Stack: Fix erroneous jal to plat_irq_dispatch + - crypto: caam - fix RNG deinstantiation error checking + - crypto: caam - fix invalid dereference in caam_rsa_init_tfm() + - dma-buf: add support for compat ioctl + - Linux 4.10.11 + * Zesty update to v4.10.10 stable release (LP: #1682130) + - drm/vmwgfx: Type-check lookups of fence objects + - drm/vmwgfx: NULL pointer dereference in vmw_surface_define_ioctl() + - drm/vmwgfx: avoid calling vzalloc with a 0 size in vmw_get_cap_3d_ioctl() + - drm/ttm, drm/vmwgfx: Relax permission checking when opening surfaces + - drm/vmwgfx: Remove getparam error message + - drm/vmwgfx: fix integer overflow in vmw_surface_define_ioctl() + - PCI: thunder-pem: Add legacy firmware support for Cavium ThunderX host + controller + - PCI: thunder-pem: Fix legacy firmware PEM-specific resources + - sysfs: be careful of error returns from ops->show() + - staging: android: ashmem: lseek failed due to no FMODE_LSEEK. + - arm/arm64: KVM: Take mmap_sem in stage2_unmap_vm + - arm/arm64: KVM: Take mmap_sem in kvm_arch_prepare_memory_region + - kvm: arm/arm64: Fix locking for kvm_free_stage2_pgd + - iio: core: Fix IIO_VAL_FRACTIONAL_LOG2 for negative values + - iio: st_pressure: initialize lps22hb bootime + - iio: bmg160: reset chip when probing + - arm64: mm: unaligned access by user-land should be received as SIGBUS + - cfg80211: check rdev resume callback only for registered wiphy + - Reset TreeId to zero on SMB2 TREE_CONNECT + - mm/page_alloc.c: fix print order in show_free_areas() + - ptrace: fix PTRACE_LISTEN race corrupting task->state + - dax: fix radix tree insertion race + - dm verity fec: limit error correction recursion + - dm verity fec: fix bufio leaks + - ACPI / gpio: do not fall back to parsing _CRS when we get a deferral + - ACPI / scan: Prefer devices without _HID for _ADR matching + - Kbuild: use cc-disable-warning consistently for maybe-uninitialized + - jump label: fix passing kbuild_cflags when checking for asm goto support + - orangefs: move features validation to fix filesystem hang + - xfs: Honor FALLOC_FL_KEEP_SIZE when punching ends of files + - ring-buffer: Fix return value check in test_ringbuffer() + - mac80211: unconditionally start new netdev queues with iTXQ support + - brcmfmac: use local iftype avoiding use-after-free of virtual interface + - metag/usercopy: Drop unused macros + - metag/usercopy: Fix alignment error checking + - metag/usercopy: Add early abort to copy_to_user + - metag/usercopy: Zero rest of buffer from copy_from_user + - metag/usercopy: Set flags before ADDZ + - metag/usercopy: Fix src fixup in from user rapf loops + - metag/usercopy: Add missing fixups + - drm/msm: adreno: fix build error without debugfs + - powerpc: Disable HFSCR[TM] if TM is not supported + - powerpc/mm: Add missing global TLB invalidate if cxl is active + - powerpc/64: Fix flush_(d|i)cache_range() called from modules + - powerpc: Don't try to fix up misaligned load-with-reservation instructions + - powerpc/crypto/crc32c-vpmsum: Fix missing preempt_disable() + - dm raid: fix NULL pointer dereference for raid1 without bitmap + - x86/mce: Don't print MCEs when mcelog is active + - nios2: reserve boot memory for device tree + - xtensa: make __pa work with uncached KSEG addresses + - s390/decompressor: fix initrd corruption caused by bss clear + - s390/uaccess: get_user() should zero on failure (again) + - MIPS: Force o32 fp64 support on 32bit MIPS64r6 kernels + - MIPS: ralink: Fix typos in rt3883 pinctrl + - MIPS: End spinlocks with .insn + - MIPS: Lantiq: fix missing xbar kernel panic + - MIPS: Check TLB before handle_ri_rdhwr() for Loongson-3 + - MIPS: Add MIPS_CPU_FTLB for Loongson-3A R2 + - MIPS: Flush wrong invalid FTLB entry for huge page + - MIPS: c-r4k: Fix Loongson-3's vcache/scache waysize calculation + - drm/i915/gvt: Fix gvt scheduler interval time + - drm/i915/kvmgt: fix suspicious rcu dereference usage + - usb: dwc3: gadget: delay unmap of bounced requests + - Documentation: stable-kernel-rules: fix stable-tag format + - mm/mempolicy.c: fix error handling in set_mempolicy and mbind. + - random: use chacha20 for get_random_int/long + - kvm: fix page struct leak in handle_vmon + - drm/edid: constify edid quirk list + - drm/i915: fix INTEL_BDW_IDS definition + - drm/i915: more .is_mobile cleanups for BDW + - drm/i915: actually drive the BDW reserved IDs + - ASoC: Intel: bytcr_rt5640: quirks for Insyde devices + - usb: chipidea: msm: Rely on core to override AHBBURST + - serial: 8250_omap: Add OMAP_DMA_TX_KICK quirk for AM437x + - usb: xhci: add quirk flag for broken PED bits + - usb: host: xhci-plat: enable BROKEN_PED quirk if platform requested + - usb: dwc3: host: pass quirk-broken-port-ped property for known broken + revisions + - drm/mga: remove device_is_agp callback + - PCI: Add ACS quirk for Intel Union Point + - PCI: xgene: Fix double free on init error + - sata: ahci-da850: implement a workaround for the softreset quirk + - ACPI / button: Change default behavior to lid_init_state=open + - ASoC: codecs: rt5670: add quirk for Lenovo Thinkpad 10 + - ASoC: Intel: Baytrail: add quirk for Lenovo Thinkpad 10 + - ASoC: Intel: cht_bsw_rt5645: harden ACPI device detection + - ASoC: Intel: cht_bsw_rt5645: add Baytrail MCLK support + - ACPI: save NVS memory for Lenovo G50-45 + - ASoC: sun4i-i2s: Add quirks to handle a31 compatible + - HID: wacom: don't apply generic settings to old devices + - arm: kernel: Add SMC structure parameter + - firmware: qcom: scm: Fix interrupted SCM calls + - ARM: smccc: Update HVC comment to describe new quirk parameter + - PCI: Add Broadcom Northstar2 PAXC quirk for device class and MPSS + - PCI: Disable MSI for HiSilicon Hip06/Hip07 Root Ports + - mmc: sdhci-of-esdhc: remove default broken-cd for ARM + - PCI: Sort the list of devices with D3 delay quirk by ID + - watchdog: s3c2410: Fix infinite interrupt in soft mode + - platform/x86: asus-wmi: Detect quirk_no_rfkill from the DSDT + - x86/reboot/quirks: Add ASUS EeeBook X205TA reboot quirk + - x86/reboot/quirks: Add ASUS EeeBook X205TA/W reboot quirk + - usb-storage: Add ignore-residue quirk for Initio INIC-3619 + - x86/reboot/quirks: Fix typo in ASUS EeeBook X205TA reboot quirk + - Linux 4.10.10 + * Broken PowerNV PCI hotplug driver - Patch backporting to zesty + (LP: #1680328) + - drivers/pci/hotplug: Mask PDC interrupt if required + * Zesty update to v4.10.9 stable release (LP: #1681875) + - libceph: force GFP_NOIO for socket allocations + - KVM: nVMX: fix nested EPT detection + - xfs: pull up iolock from xfs_free_eofblocks() + - xfs: sync eofblocks scans under iolock are livelock prone + - xfs: fix eofblocks race with file extending async dio writes + - xfs: fix toctou race when locking an inode to access the data map + - xfs: fail _dir_open when readahead fails + - xfs: filter out obviously bad btree pointers + - xfs: check for obviously bad level values in the bmbt root + - xfs: verify free block header fields + - xfs: allow unwritten extents in the CoW fork + - xfs: mark speculative prealloc CoW fork extents unwritten + - xfs: reset b_first_retry_time when clear the retry status of xfs_buf_t + - xfs: reject all unaligned direct writes to reflinked files + - xfs: update ctime and mtime on clone destinatation inodes + - xfs: correct null checks and error processing in xfs_initialize_perag + - xfs: don't fail xfs_extent_busy allocation + - xfs: handle indlen shortage on delalloc extent merge + - xfs: split indlen reservations fairly when under reserved + - xfs: fix uninitialized variable in _reflink_convert_cow + - xfs: don't reserve blocks for right shift transactions + - xfs: Use xfs_icluster_size_fsb() to calculate inode chunk alignment + - xfs: tune down agno asserts in the bmap code + - xfs: only reclaim unwritten COW extents periodically + - xfs: fix and streamline error handling in xfs_end_io + - xfs: Use xfs_icluster_size_fsb() to calculate inode alignment mask + - xfs: use iomap new flag for newly allocated delalloc blocks + - xfs: try any AG when allocating the first btree block when reflinking + - scsi: sg: check length passed to SG_NEXT_CMD_LEN + - scsi: libsas: fix ata xfer length + - scsi: scsi_dh_alua: Check scsi_device_get() return value + - scsi: scsi_dh_alua: Ensure that alua_activate() calls the completion + function + - PCI: iproc: Save host bridge window resource in struct iproc_pcie + - PCI: thunder-pem: Use Cavium assigned hardware ID for ThunderX host + controller + - ALSA: seq: Fix race during FIFO resize + - ALSA: hda - fix a problem for lineout on a Dell AIO machine + - ASoC: atmel-classd: fix audio clock rate + - ASoC: Intel: Skylake: fix invalid memory access due to wrong reference of + pointer + - ASoC: rt5665: fix getting wrong work handler container + - HID: wacom: Don't add ghost interface as shared data + - mmc: sdhci: Disable runtime pm when the sdio_irq is enabled + - mmc: sdhci-of-at91: fix MMC_DDR_52 timing selection + - crypto: ccp - Make some CCP DMA channels private + - crypto: xts,lrw - fix out-of-bounds write after kmalloc failure + - ARCv2: SLC: Make sure busy bit is set properly on SLC flushing + - NFSv4.1 fix infinite loop on IO BAD_STATEID error + - nfsd: map the ENOKEY to nfserr_perm for avoiding warning + - dt-bindings: rng: clocks property on omap_rng not always mandatory + - parisc: Clean up fixup routines for get_user()/put_user() + - parisc: Avoid stalled CPU warnings after system shutdown + - parisc: Fix access fault handling in pa_memcpy() + - ACPI: Fix incompatibility with mcount-based function graph tracing + - ACPI: Do not create a platform_device for IOAPIC/IOxAPIC + - tty/serial: atmel: fix race condition (TX+DMA) + - tty/serial: atmel: fix TX path in atmel_console_write() + - xhci: Set URB actual length for stopped control transfers + - USB: fix linked-list corruption in rh_call_control() + - serial: mxs-auart: Fix baudrate calculation + - KVM: x86: clear bus pointer when destroyed + - KVM: kvm_io_bus_unregister_dev() should never fail + - drm/radeon: Override fpfn for all VRAM placements in radeon_evict_flags + - drm/vc4: Allocate the right amount of space for boot-time CRTC state. + - drm/etnaviv: (re-)protect fence allocation with GPU mutex + - drm/i915/kvmgt: Hold struct kvm reference + - x86/mm/KASLR: Exclude EFI region from KASLR VA space randomization + - x86/mce: Fix copy/paste error in exception table entries + - lib/syscall: Clear return values when no stack + - mm: rmap: fix huge file mmap accounting in the memcg stats + - mm: workingset: fix premature shadow node shrinking with cgroups + - mm, hugetlb: use pte_present() instead of pmd_present() in follow_huge_pmd() + - drm/armada: Fix compile fail + - ARM: dts: BCM5301X: Correct GIC_PPI interrupt flags + - MIPS: Lantiq: Fix cascaded IRQ setup + - blk: improve order of bio handling in generic_make_request() + - blk: Ensure users for current->bio_list can see the full list. + - padata: avoid race in reordering + - nvme/core: Fix race kicking freed request_queue + - nvme/pci: Disable on removal when disconnected + - drm/i915: Move the release of PT page to the upper caller + - drm/i915: Let execlist_update_context() cover !FULL_PPGTT mode. + - drm/i915: A hotfix for making aliasing PPGTT work for GVT-g + - Linux 4.10.9 + * POWER9: Improve performance on memory management (LP: #1681429) + - SAUCE: powerpc/mm/radix: Don't do page walk cache flush when doing full mm + flush + - SAUCE: powerpc/mm/radix: Remove unnecessary ptesync + * Disable CONFIG_HVC_UDBG on ppc64el (LP: #1680888) + - [Config] Disable CONFIG_HVC_UDBG on ppc64el + + [ Ubuntu: 4.10.0-20.22 ] + + * linux: 4.10.0-20.22 -proposed tracker (LP: #1684491) + * [Hyper-V] hv: util: move waiting for release to hv_utils_transport itself + (LP: #1682561) + - Drivers: hv: util: move waiting for release to hv_utils_transport itself + + [ Ubuntu: 4.10.0-19.21 ] + + * Release Tracking Bug + - LP: #1680535 + * ADT regressions caused by "audit: fix auditd/kernel connection state + tracking" (LP: #1680532) + - SAUCE: Revert "audit: fix auditd/kernel connection state tracking" + * Miscellaneous Ubuntu changes + - [Config] updateconfigs to update CONFIG_GENERIC_CSUM for ppc64el + This cleans up behind a Kconfig change that went undetected. + + [ Ubuntu: 4.10.0-18.20 ] + + * Release Tracking Bug + - LP: #1680168 + * smartpqi driver needed in initram disk and installer (LP: #1680156) + - UBUNU: [Config] Add smartpqi to d-i + + [ Ubuntu: 4.10.0-17.19 ] + + * Release Tracking Bug + - LP: #1679718 + * Fix CVE-2017-7308 (LP: #1678009) + - net/packet: fix overflow in check for priv area size + - net/packet: fix overflow in check for tp_frame_nr + - net/packet: fix overflow in check for tp_reserve + * apparmor: oops on boot if parameters set on grub command line (LP: #1678048) + - SAUCE: apparmor: fix parameters so that the permission test is bypassed at boot + * apparmor: does not provide a way to detect policy updataes (LP: #1678032) + - SAUCE: apparmor: add policy revision file interface + * apparmor does not make support of query data visible (LP: #1678023) + - SAUCE: apparmor: add label data availability to the feature set + * apparmor query interface does not make supported query info available + (LP: #1678030) + - SAUCE: apparmor: add information about the query inteface to the feature set + * change_profile incorrect when using namespaces with a compound stack + (LP: #1677959) + - SAUCE: apparmor: fix label parse for stacked labels + * Zesty update to v4.10.8 stable release (LP: #1678930) + - xfrm: policy: init locks early + - xfrm_user: validate XFRM_MSG_NEWAE XFRMA_REPLAY_ESN_VAL replay_window + - xfrm_user: validate XFRM_MSG_NEWAE incoming ESN size harder + - KVM: nVMX: Fix nested VPID vmx exec control + - KVM: x86: cleanup the page tracking SRCU instance + - virtio_balloon: init 1st buffer in stats vq + - pinctrl: qcom: Don't clear status bit on irq_unmask + - c6x/ptrace: Remove useless PTRACE_SETREGSET implementation + - h8300/ptrace: Fix incorrect register transfer count + - mips/ptrace: Preserve previous registers for short regset write + - sparc/ptrace: Preserve previous registers for short regset write + - metag/ptrace: Preserve previous registers for short regset write + - metag/ptrace: Provide default TXSTATUS for short NT_PRSTATUS + - metag/ptrace: Reject partial NT_METAG_RPIPE writes + - qla2xxx: Allow vref count to timeout on vport delete. + - sched/rt: Add a missing rescheduling point + - usb: musb: fix possible spinlock deadlock + - Linux 4.10.8 + * [Hyper-V] pci-hyperv: Use device serial number as PCI domain (LP: #1667527) + - net/mlx4_core: Use cq quota in SRIOV when creating completion EQs + - PCI: hv: Use device serial number as PCI domain + * Miscellaneous Ubuntu changes + - [Config] flash-kernel should be a Breaks + - [Config] drop the info directory + - [Config] drop NOTES as obsolete + - [Config] drop changelog.historical as obsolete + + [ Ubuntu: 4.10.0-16.18 ] + + * Release Tracking Bug + - LP: #1677697 + * [Feature] ISH (Intel Sensor Hub) support (LP: #1645521) + - iio: accel: hid-sensor-accel-3d: Add timestamp + * Zesty update to v4.10.7 stable release (LP: #1677589) + - net/openvswitch: Set the ipv6 source tunnel key address attribute correctly + - net: bcmgenet: Do not suspend PHY if Wake-on-LAN is enabled + - net: properly release sk_frag.page + - amd-xgbe: Fix jumbo MTU processing on newer hardware + - openvswitch: Add missing case OVS_TUNNEL_KEY_ATTR_PAD + - net: unix: properly re-increment inflight counter of GC discarded candidates + - qmi_wwan: add Dell DW5811e + - net: vrf: Reset rt6i_idev in local dst after put + - net/mlx5: Add missing entries for set/query rate limit commands + - net/mlx5e: Use the proper UAPI values when offloading TC vlan actions + - net/mlx5: Increase number of max QPs in default profile + - net/mlx5e: Count GSO packets correctly + - net/mlx5e: Count LRO packets correctly + - ipv6: make sure to initialize sockc.tsflags before first use + - net: bcmgenet: remove bcmgenet_internal_phy_setup() + - ipv4: provide stronger user input validation in nl_fib_input() + - socket, bpf: fix sk_filter use after free in sk_clone_lock + - genetlink: fix counting regression on ctrl_dumpfamily() + - tcp: initialize icsk_ack.lrcvtime at session start time + - amd-xgbe: Fix the ECC-related bit position definitions + - net: solve a NAPI race + - HID: sony: Fix input device leak when connecting a DS4 twice using USB/BT + - Input: ALPS - fix V8+ protocol handling (73 03 28) + - Input: ALPS - fix trackstick button handling on V8 devices + - Input: elan_i2c - add ASUS EeeBook X205TA special touchpad fw + - Input: i8042 - add noloop quirk for Dell Embedded Box PC 3000 + - Input: iforce - validate number of endpoints before using them + - Input: ims-pcu - validate number of endpoints before using them + - Input: hanwang - validate number of endpoints before using them + - Input: yealink - validate number of endpoints before using them + - Input: cm109 - validate number of endpoints before using them + - Input: kbtab - validate number of endpoints before using them + - Input: sur40 - validate number of endpoints before using them + - ALSA: seq: Fix racy cell insertions during snd_seq_pool_done() + - ALSA: ctxfi: Fix the incorrect check of dma_set_mask() call + - ALSA: hda - Adding a group of pin definition to fix headset problem + - USB: serial: option: add Quectel UC15, UC20, EC21, and EC25 modems + - USB: serial: qcserial: add Dell DW5811e + - ACM gadget: fix endianness in notifications + - usb: gadget: f_uvc: Fix SuperSpeed companion descriptor's wBytesPerInterval + - dvb-usb-firmware: don't do DMA on stack + - usb-core: Add LINEAR_FRAME_INTR_BINTERVAL USB quirk + - USB: uss720: fix NULL-deref at probe + - USB: lvtest: fix NULL-deref at probe + - USB: idmouse: fix NULL-deref at probe + - USB: wusbcore: fix NULL-deref at probe + - usb: musb: cppi41: don't check early-TX-interrupt for Isoch transfer + - usb: hub: Fix crash after failure to read BOS descriptor + - USB: usbtmc: add missing endpoint sanity check + - USB: usbtmc: fix probe error path + - uwb: i1480-dfu: fix NULL-deref at probe + - uwb: hwa-rc: fix NULL-deref at probe + - mmc: ushc: fix NULL-deref at probe + - nl80211: fix dumpit error path RTNL deadlocks + - mmc: core: Fix access to HS400-ES devices + - iio: adc: ti_am335x_adc: fix fifo overrun recovery + - iio: sw-device: Fix config group initialization + - iio: hid-sensor-trigger: Change get poll value function order to avoid + sensor properties losing after resume from S3 + - iio: magnetometer: ak8974: remove incorrect __exit markups + - mei: fix deadlock on mei reset + - mei: don't wait for os version message reply + - parport: fix attempt to write duplicate procfiles + - ppdev: fix registering same device name + - ext4: mark inode dirty after converting inline directory + - powerpc/64s: Fix idle wakeup potential to clobber registers + - audit: fix auditd/kernel connection state tracking + - mmc: sdhci-of-at91: Support external regulators + - mmc: sdhci-of-arasan: fix incorrect timeout clock + - mmc: sdhci: Do not disable interrupts while waiting for clock + - mmc: sdhci-pci: Do not disable interrupts in sdhci_intel_set_power + - hwrng: amd - Revert managed API changes + - hwrng: geode - Revert managed API changes + - clk: sunxi-ng: sun6i: Fix enable bit offset for hdmi-ddc module clock + - clk: sunxi-ng: mp: Adjust parent rate for pre-dividers + - mwifiex: pcie: don't leak DMA buffers when removing + - ath10k: fix incorrect wlan_mac_base in qca6174_regs + - crypto: ccp - Assign DMA commands to the channel's CCP + - fscrypt: remove broken support for detecting keyring key revocation + - vfio: Rework group release notifier warning + - xen/acpi: upload PM state from init-domain to Xen + - iommu/vt-d: Fix NULL pointer dereference in device_to_iommu + - iommu/exynos: Block SYSMMU while invalidating FLPD cache + - iommu/exynos: Workaround FLPD cache flush issues for SYSMMU v5 + - Revert "ARM: at91/dt: sama5d2: Use new compatible for ohci node" + - ARM: at91: pm: cpu_idle: switch DDR to power-down mode + - arm64: kaslr: Fix up the kernel image alignment + - cpufreq: Restore policy min/max limits on CPU online + - cgroup, net_cls: iterate the fds of only the tasks which are being migrated + - blk-mq: don't complete un-started request in timeout handler + - cpsw/netcp: cpts depends on posix_timers + - drm/amdgpu: reinstate oland workaround for sclk + - drm/amd/amdgpu: add POLARIS12 PCI ID + - auxdisplay: img-ascii-lcd: add missing sentinel entry in + img_ascii_lcd_matches + - jbd2: don't leak memory if setting up journal fails + - intel_th: Don't leak module refcount on failure to activate + - Drivers: hv: vmbus: Don't leak channel ids + - Drivers: hv: vmbus: Don't leak memory when a channel is rescinded + - mmc: block: Fix is_waiting_last_req set incorrectly + - libceph: don't set weight to IN when OSD is destroyed + - device-dax: fix pmd/pte fault fallback handling + - scsi: sd: Check for unaligned partial completion + - cpuidle: Validate cpu_dev in cpuidle_add_sysfs() + - xen: do not re-use pirq number cached in pci device msi msg data + - drm: reference count event->completion + - fbcon: Fix vc attr at deinit + - crypto: algif_hash - avoid zero-sized array + - Linux 4.10.7 + * PS/2 mouse does not work on Dell embedded computer (LP: #1591053) + - Input: i8042 - add noloop quirk for Dell Embedded Box PC 3000 + * [Zesty] mlx5_core Kernel oops with bonding mode 1 and 6 (LP: #1676786) + - SAUCE: (no-up) net/mlx5: Avoid dereferencing uninitialized pointer + * [Hyper-V] Implement Hyper-V PTP Source (LP: #1676635) + - Revert "hv: don't reset hv_context.tsc_page on crash" + - Revert "Drivers: hv: vmbus: Raise retry/wait limits in vmbus_post_msg()" + - Revert "hv: allocate synic pages for all present CPUs" + - Revert "hv: init percpu_list in hv_synic_alloc()" + - Revert "Drivers: hv: vmbus: Prevent sending data on a rescinded channel" + - Revert "Drivers: hv: vmbus: Fix a rescind handling bug" + - Revert "Drivers: hv: util: kvp: Fix a rescind processing issue" + - Revert "Drivers: hv: util: Fcopy: Fix a rescind processing issue" + - Revert "Drivers: hv: util: Backup: Fix a rescind processing issue" + - Revert "drivers: hv: Turn off write permission on the hypercall page" + - Revert "UBUNTU: SAUCE: (no-up) hv: Supply vendor ID and package ABI" + - Drivers: hv: vmbus: Raise retry/wait limits in vmbus_post_msg() + - hv: allocate synic pages for all present CPUs + - hv: init percpu_list in hv_synic_alloc() + - hv: don't reset hv_context.tsc_page on crash + - Drivers: hv: vmbus: Prevent sending data on a rescinded channel + - hv: switch to cpuhp state machine for synic init/cleanup + - hv: make CPU offlining prevention fine-grained + - Drivers: hv: vmbus: Fix a rescind handling bug + - Drivers: hv: util: kvp: Fix a rescind processing issue + - Drivers: hv: util: Fcopy: Fix a rescind processing issue + - Drivers: hv: util: Backup: Fix a rescind processing issue + - Drivers: hv: vmbus: Move the definition of hv_x64_msr_hypercall_contents + - Drivers: hv: vmbus: Move the definition of generate_guest_id() + - Drivers: hv vmbus: Move Hypercall page setup out of common code + - Drivers: hv: vmbus: Move Hypercall invocation code out of common code + - Drivers: hv: vmbus: Consolidate all Hyper-V specific clocksource code + - Drivers: hv: vmbus: Move the extracting of Hypervisor version information + - Drivers: hv: vmbus: Move the crash notification function + - Drivers: hv: vmbus: Move the check for hypercall page setup + - Drivers: hv: vmbus: Move the code to signal end of message + - Drivers: hv: vmbus: Restructure the clockevents code + - Drivers: hv: util: Use hv_get_current_tick() to get current tick + - Drivers: hv: vmbus: Get rid of an unsused variable + - Drivers: hv: vmbus: Define APIs to manipulate the message page + - Drivers: hv: vmbus: Define APIs to manipulate the event page + - Drivers: hv: vmbus: Define APIs to manipulate the synthetic interrupt controller + - Drivers: hv: vmbus: Define an API to retrieve virtual processor index + - Drivers: hv: vmbus: Define an APIs to manage interrupt state + - Drivers: hv: vmbus: Cleanup hyperv_vmbus.h + - hv_util: switch to using timespec64 + - Drivers: hv: restore hypervcall page cleanup before kexec + - Drivers: hv: restore TSC page cleanup before kexec + - Drivers: hv: balloon: add a fall through comment to hv_memory_notifier() + - Drivers: hv: vmbus: Use all supported IC versions to negotiate + - Drivers: hv: Log the negotiated IC versions. + - Drivers: hv: Fix the bug in generating the guest ID + - hv: export current Hyper-V clocksource + - hv_utils: implement Hyper-V PTP source + - SAUCE: (no-up) hv: Supply vendor ID and package ABI + - drivers: hv: Turn off write permission on the hypercall page + * Populating Hyper-V MSR for Ubuntu 13.10 (LP: #1193172) + - SAUCE: (no-up) hv: Supply vendor ID and package ABI + * Ubuntu 16.10: Network checksum fixes needed for IPoIB for Mellanox CX4/CX5 + card (LP: #1670247) + - powerpc/64: Fix checksum folding in csum_tcpudp_nofold and ip_fast_csum_nofold + - powerpc/64: Use optimized checksum routines on little-endian + * Kernel linux-image-4.4.0-67-generic prevent the boot on Microsoft Hyper-v + 2012r2 Gen2 VM (LP: #1674635) + - scsi: storvsc: Workaround for virtual DVD SCSI version + * POWER9 Radix mode KVM (LP: #1675806) + - Revert "powerpc: Update to new option-vector-5 format for CAS" + - Revert "powerpc/powernv: Initialise nest mmu" + - Revert "KVM: PPC: Book 3S: XICS: Don't lock twice when checking for resend" + - KVM: PPC: Book3S: Change interrupt call to reduce scratch space use on HV + - KVM: PPC: Book3S: Move 64-bit KVM interrupt handler out from alt section + - KVM: PPC: Book3S: 64-bit CONFIG_RELOCATABLE support for interrupts + - powerpc/64: More definitions for POWER9 + - powerpc/64: Export pgtable_cache and pgtable_cache_add for KVM + - powerpc/64: Make type of partition table flush depend on partition type + - powerpc/64: Allow for relocation-on interrupts from guest to host + - KVM: PPC: Book3S HV: Add userspace interfaces for POWER9 MMU + - KVM: PPC: Book3S HV: Set process table for HPT guests on POWER9 + - KVM: PPC: Book3S HV: Use ASDR for HPT guests on POWER9 + - KVM: PPC: Book3S HV: Add basic infrastructure for radix guests + - KVM: PPC: Book3S HV: Modify guest entry/exit paths to handle radix guests + - KVM: PPC: Book3S HV: Page table construction and page faults for radix guests + - KVM: PPC: Book3S HV: MMU notifier callbacks for radix guests + - KVM: PPC: Book3S HV: Implement dirty page logging for radix guests + - KVM: PPC: Book3S HV: Make HPT-specific hypercalls return error in radix mode + - KVM: PPC: Book3S HV: Invalidate TLB on radix guest vcpu movement + - KVM: PPC: Book3S HV: Allow guest exit path to have MMU on + - KVM: PPC: Book3S HV: Invalidate ERAT on guest entry/exit for POWER9 DD1 + - KVM: PPC: Book3S HV: Enable radix guest support + - powerpc/64: CONFIG_RELOCATABLE support for hmi interrupts + - KVM: PPC: Book3S HV: Fix software walk of guest process page tables + - KVM: PPC: Book3S HV: Don't use ASDR for real-mode HPT faults on POWER9 + - KVM: PPC: Book3S HV: Don't try to signal cpu -1 + - KVM: PPC: Book 3S: Fix error return in kvm_vm_ioctl_create_spapr_tce() + - powerpc/64: Invalidate process table caching after setting process table + - powerpc: Update to new option-vector-5 format for CAS + - KVM: PPC: Book 3S: XICS: Don't lock twice when checking for resend + - powerpc/powernv: Initialise nest mmu + - powerpc/powernv: Remove separate entry for OPAL real mode calls + * [Hyper-V][Mellanox] net/mlx4_core: Avoid delays during VF driver device shutdown (LP: #1672785) + - net/mlx4_core: Avoid delays during VF driver device shutdown + * [zesty] mlx4_core OOM with 32 bit arch (LP: #1676858) + - mlx4: reduce OOM risk on arches with large pages + * [Feature] GLK Northpeak Enabling (LP: #1645963) + - intel_th: pci: Add Denverton SOC support + - intel_th: pci: Add Gemini Lake support + * [zesty] mlx5e OVS fixes (LP: #1676388) + - net/mlx5: Fix create autogroup prev initializer + - net/mlx5e: Avoid supporting udp tunnel port ndo for VF reps + - net/mlx5e: Avoid wrong identification of rules on deletion + - devlink: fix the name of eswitch commands + - devlink: rename devlink_eswitch_fill to devlink_nl_eswitch_fill + - devlink: use nla_put_failure goto label instead of out + - devlink: allow to fillup eswitch attrs even if mode_get op does not exist + - net/mlx5e: Change the TC offload rule add/del code path to be per NIC or E-Switch + - net/mlx5: E-Switch, Don't allow changing inline mode when flows are configured + * [ARM64] Support systems where the physical memory footprint exceeds the size + of the linear mapping. (LP: #1675046) + - SAUCE: efi: arm-stub: Correct FDT and initrd allocation rules for arm64 + - SAUCE: efi: arm-stub: Round up FDT allocation to mapping size + * AACRAID Driver: Add 3 patch fixes to Kernel release (LP: #1675872) + - scsi: aacraid: remove redundant zero check on ret + - scsi: aacraid: Fix typo in blink status + - scsi: aacraid: Fix potential null access + * stress_smoke_test passing and exiting rc=9 (linux 4.9.0-12.13 ADT test + failure with linux 4.9.0-12.13) (LP: #1658633) + - ext4: lock the xattr block before checksuming it + * ARM arch_timer erratum (LP: #1675509) + - arm64: ptrace: add XZR-safe regs accessors + - SAUCE: arm64: Allow checking of a CPU-local erratum + - SAUCE: arm64: Add CNTVCT_EL0 trap handler + - SAUCE: arm64: Define Cortex-A73 MIDR + - SAUCE: arm64: cpu_errata: Allow an erratum to be match for all revisions of a core + - SAUCE: arm64: cpu_errata: Add capability to advertise Cortex-A73 erratum 858921 + - SAUCE: arm64: arch_timer: Add infrastructure for multiple erratum detection methods + - SAUCE: arm64: arch_timer: Add erratum handler for globally defined capability + - SAUCE: arm64: arch_timer: Add erratum handler for CPU-specific capability + - SAUCE: arm64: arch_timer: Move arch_timer_reg_read/write around + - SAUCE: arm64: arch_timer: Get rid of erratum_workaround_set_sne + - SAUCE: arm64: arch_timer: Rework the set_next_event workarounds + - SAUCE: arm64: arch_timer: Make workaround methods optional + - SAUCE: arm64: arch_timer: Allows a CPU-specific erratum to only affect a subset of CPUs + - SAUCE: arm64: arch_timer: Move clocksource_counter and co around + - SAUCE: arm64: arch_timer: Enable CNTVCT_EL0 trap if workaround is enabled + - SAUCE: arm64: arch_timer: Workaround for Cortex-A73 erratum 858921 + - SAUCE: arm64: arch_timer: Allow erratum matching with ACPI OEM information + - SAUCE: arm64: arch_timer: Add HISILICON_ERRATUM_161010101 ACPI matching data + - SAUCE: arm64: arch_timer: Add check for unknown erratum + * Zesty update to v4.10.6 stable release (LP: #1676429) + - give up on gcc ilog2() constant optimizations + - qla2xxx: Fix memory leak for abts processing + - qla2xxx: Fix request queue corruption. + - parisc: Optimize flush_kernel_vmap_range and invalidate_kernel_vmap_range + - parisc: support R_PARISC_SECREL32 relocation in modules + - parisc: Fix system shutdown halt + - perf/core: Fix use-after-free in perf_release() + - perf/core: Fix event inheritance on fork() + - md/r5cache: fix set_syndrome_sources() for data in cache + - xprtrdma: Squelch kbuild sparse complaint + - NFS prevent double free in async nfs4_exchange_id + - cpufreq: Fix and clean up show_cpuinfo_cur_freq() + - powerpc/boot: Fix zImage TOC alignment + - hwrng: omap - write registers after enabling the clock + - hwrng: omap - use devm_clk_get() instead of of_clk_get() + - hwrng: omap - Do not access INTMASK_REG on EIP76 + - md/raid1/10: fix potential deadlock + - target/pscsi: Fix TYPE_TAPE + TYPE_MEDIMUM_CHANGER export + - scsi: lpfc: Add shutdown method for kexec + - scsi: libiscsi: add lock around task lists to fix list corruption regression + - scsi: mpt3sas: Avoid sleeping in interrupt context + - target: Fix VERIFY_16 handling in sbc_parse_cdb + - isdn/gigaset: fix NULL-deref at probe + - gfs2: Avoid alignment hole in struct lm_lockname + - percpu: acquire pcpu_lock when updating pcpu_nr_empty_pop_pages + - cgroup/pids: remove spurious suspicious RCU usage warning + - drm/amdgpu/si: add dpm quirk for Oland + - Linux 4.10.6 + * Miscellaneous Ubuntu changes + - [Config] CONFIG_ARM64_ERRATUM_858921=y + - [Debian] add rprovides for spl-modules and zfs-modules + + [ Ubuntu: 4.10.0-15.17 ] + + * Release Tracking Bug + - LP: #1675868 + * In ZZ-BML (POWER9):ubuntu17.04 installation Fails (LP: #1675771) + - powerpc/64s: fix handling of non-synchronous machine checks + - powerpc/64s: allow machine check handler to set severity and initiator + - powerpc/64s: POWER9 machine check handler + * [Feature] R3 mwait support for Knights Mill (LP: #1637550) + - x86/cpufeature: Enable RING3MWAIT for Knights Landing + - x86/cpufeature: Enable RING3MWAIT for Knights Mill + - x86/msr: Add MSR_MISC_FEATURE_ENABLES and RING3MWAIT bit + - x86/elf: Add HWCAP2 to expose ring 3 MONITOR/MWAIT + - x86/cpufeature: Add RING3MWAIT to CPU features + * [Feature] GLK:New device IDs (LP: #1645951) + - mfd: intel-lpss: Add Intel Gemini Lake PCI IDs + - pwm: lpss: Add Intel Gemini Lake PCI ID + - i2c: i801: Add support for Intel Gemini Lake + - spi: pxa2xx: Add support for Intel Gemini Lake + - [Config] CONFIG_PINCTRL_GEMINILAKE=m + - pinctrl: intel: Add Intel Gemini Lake pin controller support + * Zesty update to v4.10.5 stable release (LP: #1675032) + - net/mlx5e: Register/unregister vport representors on interface attach/detach + - net/mlx5e: Do not reduce LRO WQE size when not using build_skb + - net/mlx5e: Fix broken CQE compression initialization + - net/mlx5e: Update MPWQE stride size when modifying CQE compress state + - net/mlx5e: Fix wrong CQE decompression + - vxlan: correctly validate VXLAN ID against VXLAN_N_VID + - vti6: return GRE_KEY for vti6 + - vxlan: don't allow overwrite of config src addr + - ipv4: add missing initialization for flowi4_uid + - ipv4: mask tos for input route + - sctp: set sin_port for addr param when checking duplicate address + - net sched actions: decrement module reference count after table flush. + - l2tp: avoid use-after-free caused by l2tp_ip_backlog_recv + - vxlan: lock RCU on TX path + - geneve: lock RCU on TX path + - mlxsw: spectrum_router: Avoid potential packets loss + - net: bridge: allow IPv6 when multicast flood is disabled + - net: don't call strlen() on the user buffer in packet_bind_spkt() + - net: net_enable_timestamp() can be called from irq contexts + - ipv6: orphan skbs in reassembly unit + - dccp: Unlock sock before calling sk_free() + - amd-xgbe: Stop the PHY before releasing interrupts + - amd-xgbe: Be sure to set MDIO modes on device (re)start + - amd-xgbe: Don't overwrite SFP PHY mod_absent settings + - bonding: use ETH_MAX_MTU as max mtu + - strparser: destroy workqueue on module exit + - tcp: fix various issues for sockets morphing to listen state + - net: fix socket refcounting in skb_complete_wifi_ack() + - net: fix socket refcounting in skb_complete_tx_timestamp() + - net/sched: act_skbmod: remove unneeded rcu_read_unlock in tcf_skbmod_dump + - dccp: fix use-after-free in dccp_feat_activate_values + - team: use ETH_MAX_MTU as max mtu + - vrf: Fix use-after-free in vrf_xmit + - net/tunnel: set inner protocol in network gro hooks + - uapi: fix linux/packet_diag.h userspace compilation error + - amd-xgbe: Enable IRQs only if napi_complete_done() is true + - act_connmark: avoid crashing on malformed nlattrs with null parms + - mpls: Send route delete notifications when router module is unloaded + - mpls: Do not decrement alive counter for unregister events + - ipv6: make ECMP route replacement less greedy + - ipv6: avoid write to a possibly cloned skb + - net: use net->count to check whether a netns is alive or not + - dccp/tcp: fix routing redirect race + - tun: fix premature POLLOUT notification on tun devices + - dccp: fix memory leak during tear-down of unsuccessful connection request + - arm64: KVM: VHE: Clear HCR_TGE when invalidating guest TLBs + - drm/i915/lspcon: Enable AUX interrupts for resume time initialization + - drm/i915/gen9+: Enable hotplug detection early + - drm/i915/lspcon: Fix resume time initialization due to unasserted HPD + - x86/unwind: Fix last frame check for aligned function stacks + - x86/tsc: Fix ART for TSC_KNOWN_FREQ + - x86/kasan: Fix boot with KASAN=y and PROFILE_ANNOTATED_BRANCHES=y + - x86/intel_rdt: Put group node in rdtgroup_kn_unlock + - x86/perf: Fix CR4.PCE propagation to use active_mm instead of mm + - futex: Fix potential use-after-free in FUTEX_REQUEUE_PI + - futex: Add missing error handling to FUTEX_REQUEUE_PI + - locking/rwsem: Fix down_write_killable() for CONFIG_RWSEM_GENERIC_SPINLOCK=y + - crypto: powerpc - Fix initialisation of crc32c context + - crypto: s5p-sss - Fix spinlock recursion on LRW(AES) + - Linux 4.10.5 + * Ubuntu server enables screenblanking, concealing crashdumps (DPMS is not + used) (LP: #869017) + - SAUCE: Disable default console blanking interval + * CVE-CVE-2017-5986 + - sctp: deny peeloff operation on asocs with threads sleeping on it + * tty: acpi/spcr: QDF2400 E44 checks for wrong OEM revision (LP: #1674466) + - tty: acpi/spcr: QDF2400 E44 checks for wrong OEM revision + * Ubuntu 17.04: machine crashes with Oops in dccp_v4_ctl_send_reset while + running stress-ng. (LP: #1654073) + - tcp/dccp: block BH for SYN processing + * POWER9: Additional patches for TTY and CPU_IDLE (LP: #1674325) + - tty: Fix ldisc crash on reopened tty + - SAUCE: powerpc/powernv/cpuidle: Pass correct drv->cpumask for registration + * Fix MODULE_FIRMWARE for intel 6030 wireless (LP: #1674334) + - iwlwifi: fix MODULE_FIRMWARE for 6030 + * [zesty] net sched actions - Adding support for user cookies (LP: #1674087) + - net sched actions: Add support for user cookies + - net sched actions: do not overwrite status of action creation. + * Zesty update to v4.10.4 stable release (LP: #1674288) + - iio: 104-quad-8: Fix off-by-one error when addressing flag register + - ARM: qcom_defconfig: Enable RPM/RPM-SMD clocks + - USB: serial: digi_acceleport: fix OOB data sanity check + - USB: serial: digi_acceleport: fix OOB-event processing + - crypto: improve gcc optimization flags for serpent and wp512 + - MIPS: Update defconfigs for NF_CT_PROTO_DCCP/UDPLITE change + - MIPS: VDSO: avoid duplicate CAC_BASE definition + - MIPS: ip27: Disable qlge driver in defconfig + - MIPS: Update ip27_defconfig for SCSI_DH change + - MIPS: ip22: Fix ip28 build for modern gcc + - MIPS: Update lemote2f_defconfig for CPU_FREQ_STAT change + - mtd: pmcmsp: use kstrndup instead of kmalloc+strncpy + - MIPS: ralink: Cosmetic change to prom_init(). + - MIPS: ralink: Remove unused timer functions + - MIPS: ralink: Remove unused rt*_wdt_reset functions + - i2c: bcm2835: Avoid possible NULL ptr dereference + - tracing: Add #undef to fix compile error + - ucount: Remove the atomicity from ucount->count + - efi/arm: Fix boot crash with CONFIG_CPUMASK_OFFSTACK=y + - dw2102: don't do DMA on stack + - i2c: add missing of_node_put in i2c_mux_del_adapters + - powerpc: Emulation support for load/store instructions on LE + - powerpc/booke: Fix boot crash due to null hugepd + - powerpc/xics: Work around limitations of OPAL XICS priority handling + - PCI: Prevent VPD access for QLogic ISP2722 + - usb: gadget: dummy_hcd: clear usb_gadget region before registration + - usb: dwc3: gadget: make Set Endpoint Configuration macros safe + - usb: dwc3-omap: Fix missing break in dwc3_omap_set_mailbox() + - usb: ohci-at91: Do not drop unhandled USB suspend control requests + - usb: gadget: function: f_fs: pass companion descriptor along + - Revert "usb: gadget: uvc: Add missing call for additional setup data" + - usb: host: xhci-dbg: HCIVERSION should be a binary number + - usb: host: xhci-plat: Fix timeout on removal of hot pluggable xhci controllers + - USB: serial: safe_serial: fix information leak in completion handler + - USB: serial: omninet: fix reference leaks at open + - USB: iowarrior: fix NULL-deref at probe + - USB: iowarrior: fix NULL-deref in write + - USB: serial: io_ti: fix NULL-deref in interrupt callback + - USB: serial: io_ti: fix information leak in completion handler + - serial: samsung: Continue to work if DMA request fails + - KVM: s390: Fix guest migration for huge guests resulting in panic + - KVM: arm/arm64: Let vcpu thread modify its own active state + - drm/i915/gvt: Fix superfluous newline in GVT_DISPLAY_READY env var + - serial_ir: ensure we're ready to receive interrupts + - dm: flush queued bios when process blocks to avoid deadlock + - rc: raw decoder for keymap protocol is not loaded on register + - ext4: don't BUG when truncating encrypted inodes on the orphan list + - IB/mlx5: Verify that Q counters are supported + - Linux 4.10.4 + * ip_rcv_finish() NULL pointer kernel panic (LP: #1672470) + - bridge: drop netfilter fake rtable unconditionally + * Miscellaneous Ubuntu changes + - [Config] Remove powerpc architecture build + - [Config] updateconfigs after removing powerpc builds + - [Config] Update annotations after removing powerpc configs + + [ Ubuntu: 4.10.0-14.16 ] + + * Release Tracking Bug + - LP: #1673805 + * msleep() bug causes Nuvoton I2C TPM device driver delays (LP: #1667567) + - tpm: msleep() delays - replace with usleep_range() in i2c nuvoton driver + - SAUCE: tpm: add sleep only for retry in i2c_nuvoton_write_status() + * C++ demangling support missing from perf (LP: #1396654) + - [Config] added binutils-dev to Build-deps + * dm-queue-length module is not included in installer/initramfs (LP: #1673350) + - [Config] d-i: Also add dm-queue-length to multipath modules + * move aufs.ko from -extra to linux-image package (LP: #1673498) + - [config] aufs.ko moved to linux-image package + * Using an NVMe drive causes huge power drain (LP: #1664602) + - nvme: Add a quirk mechanism that uses identify_ctrl + - nvme: Enable autonomous power state transitions + * Broadcom bluetooth modules sometimes fail to initialize (LP: #1483101) + - Bluetooth: btbcm: Add a delay for module reset + * Need support of Broadcom bluetooth device [413c:8143] (LP: #1166113) + - Bluetooth: btusb: Add support for 413c:8143 + * Zesty update to v4.10.3 stable release (LP: #1673118) + - serial: 8250_pci: Add MKS Tenta SCOM-0800 and SCOM-0801 cards + - KVM: s390: Disable dirty log retrieval for UCONTROL guests + - KVM: VMX: use correct vmcs_read/write for guest segment selector/base + - Bluetooth: Add another AR3012 04ca:3018 device + - phy: qcom-ufs: Don't kfree devres resource + - phy: qcom-ufs: Fix misplaced jump label + - s390/qdio: clear DSCI prior to scanning multiple input queues + - s390/dcssblk: fix device size calculation in dcssblk_direct_access() + - s390/kdump: Use "LINUX" ELF note name instead of "CORE" + - s390/chsc: Add exception handler for CHSC instruction + - s390: TASK_SIZE for kernel threads + - s390/topology: correct allocation of topology information + - s390: make setup_randomness work + - s390: use correct input data address for setup_randomness + - net: mvpp2: fix DMA address calculation in mvpp2_txq_inc_put() + - cxl: Prevent read/write to AFU config space while AFU not configured + - cxl: fix nested locking hang during EEH hotplug + - brcmfmac: fix incorrect event channel deduction + - mnt: Tuck mounts under others instead of creating shadow/side mounts. + - IB/ipoib: Fix deadlock between rmmod and set_mode + - IB/IPoIB: Add destination address when re-queue packet + - IB/mlx5: Fix out-of-bound access + - IB/SRP: Avoid using IB_MR_TYPE_SG_GAPS + - IB/srp: Avoid that duplicate responses trigger a kernel bug + - IB/srp: Fix race conditions related to task management + - Btrfs: fix data loss after truncate when using the no-holes feature + - orangefs: Use RCU for destroy_inode + - memory/atmel-ebi: Fix ns <-> cycles conversions + - tracing: Fix return value check in trace_benchmark_reg() + - ktest: Fix child exit code processing + - ceph: remove req from unsafe list when unregistering it + - target: Fix NULL dereference during LUN lookup + active I/O shutdown + - drivers/pci/hotplug: Handle presence detection change properly + - drivers/pci/hotplug: Fix initial state for empty slot + - nlm: Ensure callback code also checks that the files match + - pwm: pca9685: Fix period change with same duty cycle + - xtensa: move parse_tag_fdt out of #ifdef CONFIG_BLK_DEV_INITRD + - nfit, libnvdimm: fix interleave set cookie calculation + - mac80211: flush delayed work when entering suspend + - mac80211: don't reorder frames with SN smaller than SSN + - mac80211: don't handle filtered frames within a BA session + - mac80211: use driver-indicated transmitter STA only for data frames + - drm/amdgpu: add more cases to DCE11 possible crtc mask setup + - drm/amdgpu/pm: check for headless before calling compute_clocks + - Revert "drm/amdgpu: update tile table for oland/hainan" + - drm/ast: Fix AST2400 POST failure without BMC FW or VBIOS + - drm/radeon: handle vfct with multiple vbios images + - drm/edid: Add EDID_QUIRK_FORCE_8BPC quirk for Rotel RSX-1058 + - drm/ttm: Make sure BOs being swapped out are cacheable + - drm/vmwgfx: Work around drm removal of control nodes + - drm/imx: imx-tve: Do not set the regulator voltage + - drm/atomic: fix an error code in mode_fixup() + - drm/i915/gvt: Disable access to stolen memory as a guest + - drm: Cancel drm_fb_helper_dirty_work on unload + - drm: Cancel drm_fb_helper_resume_work on unload + - drm/i915: Recreate internal objects with single page segments if dmar fails + - drm/i915: Avoid spurious WARNs about the wrong pipe in the PPS code + - drm/i915: Check for timeout completion when waiting for the rq to submitted + - drm/i915: Pass timeout==0 on to i915_gem_object_wait_fence() + - drm/i915: Fix not finding the VBT when it overlaps with OPREGION_ASLE_EXT + - libceph: use BUG() instead of BUG_ON(1) + - x86, mm: fix gup_pte_range() vs DAX mappings + - x86/tlb: Fix tlb flushing when lguest clears PGE + - thp: fix another corner case of munlock() vs. THPs + - mm: do not call mem_cgroup_free() from within mem_cgroup_alloc() + - kasan: resched in quarantine_remove_cache() + - fat: fix using uninitialized fields of fat_inode/fsinfo_inode + - drivers: hv: Turn off write permission on the hypercall page + - Linux 4.10.3 + * Zesty update to v4.10.2 stable release (LP: #1672544) + - MIPS: pic32mzda: Fix linker error for pic32_get_pbclk() + - MIPS: Fix special case in 64 bit IP checksumming. + - MIPS: BCM47XX: Fix button inversion for Asus WL-500W + - MIPS: OCTEON: Fix copy_from_user fault handling for large buffers + - MIPS: Lantiq: Keep ethernet enabled during boot + - MIPS: Clear ISA bit correctly in get_frame_info() + - MIPS: Prevent unaligned accesses during stack unwinding + - MIPS: Fix get_frame_info() handling of microMIPS function size + - MIPS: Fix is_jump_ins() handling of 16b microMIPS instructions + - MIPS: Calculate microMIPS ra properly when unwinding the stack + - MIPS: Handle microMIPS jumps in the same way as MIPS32/MIPS64 jumps + - mmc: sdhci-acpi: support deferred probe + - am437x-vpfe: always assign bpp variable + - uvcvideo: Fix a wrong macro + - media: fix dm1105.c build error + - cxd2820r: fix gpio null pointer dereference + - dvb-usb: don't use stack for firmware load + - lirc_dev: LIRC_{G,S}ET_REC_MODE do not work + - media: Properly pass through media entity types in entity enumeration + - ext4: fix deadlock between inline_data and ext4_expand_extra_isize_ea() + - spi: s3c64xx: fix inconsistency between binding and driver + - ARM: at91: define LPDDR types + - ARM: dts: at91: Enable DMA on sama5d4_xplained console + - ARM: dts: at91: Enable DMA on sama5d2_xplained console + - ALSA: hda/realtek - Cannot adjust speaker's volume on a Dell AIO + - ALSA: hda - fix Lewisburg audio issue + - ALSA: timer: Reject user params with too small ticks + - ALSA: ctxfi: Fallback DMA mask to 32bit + - ALSA: seq: Fix link corruption by event error handling + - ALSA: hda - Add subwoofer support for Dell Inspiron 17 7000 Gaming + - ALSA: hda - Fix micmute hotkey problem for a lenovo AIO machine + - hwmon: (it87) Do not overwrite bit 2..6 of pwm control registers + - hwmon: (it87) Ensure that pwm control cache is current before updating values + - staging: greybus: loopback: fix broken udelay + - staging/lustre/lnet: Fix allocation size for sv_cpt_data + - staging: rtl: fix possible NULL pointer dereference + - coresight: STM: Balance enable/disable + - coresight: fix kernel panic caused by invalid CPU + - regulator: Fix regulator_summary for deviceless consumers + - tpm_tis: use default timeout value if chip reports it as zero + - tpm_tis: fix the error handling of init_tis() + - iommu/vt-d: Fix some macros that are incorrectly specified in intel-iommu + - iommu/vt-d: Tylersburg isoch identity map check is done too late. + - CIFS: Fix splice read for non-cached files + - mm, devm_memremap_pages: hold device_hotplug lock over mem_hotplug_{begin, done} + - mm/page_alloc: fix nodes for reclaim in fast path + - mm: vmpressure: fix sending wrong events on underflow + - mm: do not access page->mapping directly on page_endio + - mm balloon: umount balloon_mnt when removing vb device + - mm, vmscan: cleanup lru size claculations + - mm, vmscan: consider eligible zones in get_scan_count + - sigaltstack: support SS_AUTODISARM for CONFIG_COMPAT + - ipc/shm: Fix shmat mmap nil-page protection + - ima: fix ima_d_path() possible race with rename + - PM / devfreq: Fix available_governor sysfs + - PM / devfreq: Fix wrong trans_stat of passive devfreq device + - dm cache: fix corruption seen when using cache > 2TB + - dm stats: fix a leaked s->histogram_boundaries array + - dm round robin: revert "use percpu 'repeat_count' and 'current_path'" + - dm raid: fix data corruption on reshape request + - scsi: qla2xxx: Cleaned up queue configuration code. + - scsi: qla2xxx: Fix response queue count for Target mode. + - scsi: qla2xxx: Fix Regression introduced by pci_alloc_irq_vectors_affinity call. + - Revert "scsi: aacraid: Reorder Adapter status check" + - scsi: aacraid: Reorder Adapter status check + - scsi: use 'scsi_device_from_queue()' for scsi_dh + - power: reset: at91-poweroff: timely shutdown LPDDR memories + - Fix: Disable sys_membarrier when nohz_full is enabled + - jbd2: don't leak modified metadata buffers on an aborted journal + - block/loop: fix race between I/O and set_status + - loop: fix LO_FLAGS_PARTSCAN hang + - ext4: Include forgotten start block on fallocate insert range + - ext4: do not polute the extents cache while shifting extents + - ext4: trim allocation requests to group size + - ext4: fix data corruption in data=journal mode + - ext4: fix use-after-iput when fscrypt contexts are inconsistent + - ext4: fix inline data error paths + - ext4: preserve the needs_recovery flag when the journal is aborted + - ext4: return EROFS if device is r/o and journal replay is needed + - ext4: fix fencepost in s_first_meta_bg validation + - samples/seccomp: fix 64-bit comparison macros + - mei: remove support for broken parallel read + - ath10k: fix boot failure in UTF mode/testmode + - ath5k: drop bogus warning on drv_set_key with unsupported cipher + - ath9k: fix race condition in enabling/disabling IRQs + - ath9k: use correct OTP register offsets for the AR9340 and AR9550 + - PCI: hv: Fix wslot_to_devfn() to fix warnings on device removal + - PCI: altera: Fix TLP_CFG_DW0 for TLP write + - Drivers: hv: vmbus: Raise retry/wait limits in vmbus_post_msg() + - crypto: xts - Add ECB dependency + - crypto: testmgr - Pad aes_ccm_enc_tv_template vector + - crypto: xts - Propagate NEED_FALLBACK bit + - crypto: api - Add crypto_requires_off helper + - fuse: add missing FR_FORCE + - x86/pkeys: Check against max pkey to avoid overflows + - arm/arm64: KVM: Enforce unconditional flush to PoC when mapping to stage-2 + - arm64: dma-mapping: Fix dma_mapping_error() when bypassing SWIOTLB + - arm64: fix erroneous __raw_read_system_reg() cases + - KVM: arm/arm64: vgic: Stop injecting the MSI occurrence twice + - Revert "arm64: mm: set the contiguous bit for kernel mappings where appropriate" + - iio: pressure: mpl115: do not rely on structure field ordering + - iio: pressure: mpl3115: do not rely on structure field ordering + - can: gs_usb: Don't use stack memory for USB transfers + - can: usb_8dev: Fix memory leak of priv->cmd_msg_buffer + - w1: don't leak refcount on slave attach failure in w1_attach_slave_device() + - w1: ds2490: USB transfer buffers need to be DMAable + - usb: musb: da8xx: Remove CPPI 3.0 quirk and methods + - usb: dwc3: gadget: skip Set/Clear Halt when invalid + - usb: host: xhci: plat: check hcc_params after add hcd + - usb: gadget: udc-core: Rescan pending list on driver unbind + - usb: gadget: udc: fsl: Add missing complete function. + - usb: gadget: f_hid: fix: Free out requests + - usb: gadget: f_hid: fix: Prevent accessing released memory + - usb: gadget: f_hid: Use spinlock instead of mutex + - usb: gadget: f_hid: fix: Move IN request allocation to set_alt() + - hv: allocate synic pages for all present CPUs + - hv: init percpu_list in hv_synic_alloc() + - Drivers: hv: vmbus: Prevent sending data on a rescinded channel + - Drivers: hv: vmbus: Fix a rescind handling bug + - Drivers: hv: util: kvp: Fix a rescind processing issue + - Drivers: hv: util: Fcopy: Fix a rescind processing issue + - Drivers: hv: util: Backup: Fix a rescind processing issue + - RDMA/core: Fix incorrect structure packing for booleans + - rdma_cm: fail iwarp accepts w/o connection params + - gfs2: Add missing rcu locking for glock lookup + - remoteproc: qcom: mdt_loader: Don't overwrite firmware object + - rtlwifi: Fix alignment issues + - rtlwifi: rtl8192c-common: Fix "BUG: KASAN: + - VME: restore bus_remove function causing incomplete module unload + - nfsd: minor nfsd_setattr cleanup + - nfsd: special case truncates some more + - NFSv4: Fix memory and state leak in _nfs4_open_and_get_state + - NFSv4: Fix reboot recovery in copy offload + - pNFS/flexfiles: If the layout is invalid, it must be updated before retrying + - Revert "NFSv4.1: Handle NFS4ERR_BADSESSION/NFS4ERR_DEADSESSION replies to OP_SEQUENCE" + - NFSv4: fix getacl head length estimation + - NFSv4: fix getacl ERANGE for some ACL buffer sizes + - f2fs: fix a problem of using memory after free + - f2fs: fix multiple f2fs_add_link() calls having same name + - f2fs: add ovp valid_blocks check for bg gc victim to fg_gc + - f2fs: avoid to issue redundant discard commands + - f2fs: Fix zoned block device support + - rtc: sun6i: Disable the build as a module + - rtc: sun6i: Add some locking + - rtc: sun6i: Switch to the external oscillator + - md linear: fix a race between linear_add() and linear_congested() + - bcma: use (get|put)_device when probing/removing device driver + - mtd: nand: ifc: Fix location of eccstat registers for IFC V1.0 + - dmaengine: ipu: Make sure the interrupt routine checks all interrupts. + - xprtrdma: Fix Read chunk padding + - xprtrdma: Per-connection pad optimization + - xprtrdma: Disable pad optimization by default + - xprtrdma: Reduce required number of send SGEs + - powerpc/xmon: Fix data-breakpoint + - powerpc/mm: Add MMU_FTR_KERNEL_RO to possible feature mask + - module: fix memory leak on early load_module() failures + - MIPS: IP22: Reformat inline assembler code to modern standards. + - MIPS: IP22: Fix build error due to binutils 2.25 uselessnes. + - ceph: update readpages osd request according to size of pages + - Linux 4.10.2 + * kernel selftests ADT failure with linux 4.10.0-13.15 on ppc64el (LP: #1672510) + - SAUCE: Add '-fno-ie -no-pie' to cflags for powerpc ptrace tests + * arm64: Workaround QDF2400 erratum 0065 (LP: #1672486) + - [Config] CONFIG_QCOM_QDF2400_ERRATUM_0065=y + - irqchip/gicv3-its: Add workaround for QDF2400 ITS erratum 0065 + * arm64 MSI/PCIe passthrough patches break build of certain configs (LP: #1672502) + - irqdomain: Add empty irq_domain_check_msi_remap + * pinctrl: qcom: add get_direction function (LP: #1672504) + - pinctrl: qcom: add get_direction function + * perf probes on arm64 don't work with 4.10 kernel b/c of register name issue (LP: #1671917) + - perf probe: Fix wrong register name for arm64 + * cleanup primary tree for linux-hwe layering issues (LP: #1637473) + - [Config] linux-source-* is in the primary linux namespace + * hv_set_ifconfig script parsing fails for certain configuration (LP: #1640109) + - hv_set_ifconfig -- handle DHCP interfaces correctly + - hv_set_ifconfig -- ensure we include the last stanza + * Revert "UBUNTU: SAUCE: Disable timers selftest for now" (LP: #1672372) + - Revert "UBUNTU: SAUCE: Disable timers selftest for now" + * Ubuntu 16.10: Network checksum fixes needed for IPoIB for Mellanox CX4/CX5 card (LP: #1670247) + - powerpc/64: Fix checksum folding in csum_add() + * POWER9: Additional power9 patches (LP: #1671613) + - mm/autonuma: don't use set_pte_at when updating protnone ptes + - mm/autonuma: let architecture override how the write bit should be stashed in a protnone pte. + - powerpc/mm/autonuma: switch ppc64 to its own implementation of saved write + - mm/gup: check for protnone only if it is a PTE entry + - mm/thp/autonuma: use TNF flag instead of vm fault + - SAUCE: powerpc/mm: handle protnone ptes on fork + - SAUCE: power/mm: update pte_write and pte_wrprotect to handle savedwrite + - mm/ksm: improve deduplication of zero pages with colouring + - mm: introduce page_vma_mapped_walk() + - mm, ksm: convert write_protect_page() to use page_vma_mapped_walk() + - mm/ksm: handle protnone saved writes when making page write protect + * POWER9 : Enable Stop 0-2 with ESL=EC=0 (LP: #1666197) + - powerpc/powernv: Fix bug due to labeling ambiguity in power_enter_stop + * Miscellaneous Ubuntu changes + - [Debian] consider renames in gen-auto-reconstruct + + [ Ubuntu: 4.10.0-13.15 ] + + * Release Tracking Bug + - LP: #1671614 + * ehci-platform needed in usb-modules udeb (LP: #1671589) + - d-i: add ehci-platform to usb-modules + * irqchip/gic-v3-its: Enable cacheable attribute Read-allocate hints + (LP: #1671598) + - irqchip/gic-v3-its: Enable cacheable attribute Read-allocate hints + * iommu: Fix static checker warning in iommu_insert_device_resv_regions + (LP: #1671599) + - iommu: Fix static checker warning in iommu_insert_device_resv_regions + * QDF2400: Fix panic introduced by erratum 1003 (LP: #1671602) + - arm64: Avoid clobbering mm in erratum workaround on QDF2400 + * QDF2400 PCI ports require ACS quirk (LP: #1671601) + - PCI: Add ACS quirk for Qualcomm QDF2400 and QDF2432 + * tty: pl011: Work around QDF2400 E44 stuck BUSY bit (LP: #1671600) + - tty: pl011: Work around QDF2400 E44 stuck BUSY bit + * CVE-2017-2636 + - tty: n_hdlc: get rid of racy n_hdlc.tbuf + * Sync virtualbox to 5.1.16-dfsg-1 in zesty (LP: #1671470) + - ubuntu: vbox -- Update to 5.1.16-dfsg-1 + + [ Ubuntu: 4.10.0-12.14 ] + + * Release Tracking Bug + - LP: #1671235 + * POWER9: Improve CAS negotiation (LP: #1671169) + - powerpc: Parse the command line before calling CAS + - powerpc: Update to new option-vector-5 format for CAS + * lowlatency kernel is lacking support for latencytop (LP: #1655986) + - [Config] CONFIG_LATENCYTOP=y for amd64 lowlatency + * Power9 kernel: add virtualization patches (LP: #1670800) + - powerpc: Add POWER9 architected mode to cputable + * h-prod does not function across cores (LP: #1670726) + - KVM: PPC: Book3S HV: Fix H_PROD to actually wake the target vcpu + * CIFS: Enable encryption for SMB3 (LP: #1670508) + - cifs: Simplify SMB2 and SMB311 dependencies + - cifs: Only select the required crypto modules + - cifs: Add soft dependencies + - CIFS: Separate SMB2 header structure + - CIFS: Make SendReceive2() takes resp iov + - CIFS: Make send_cancel take rqst as argument + - CIFS: Send RFC1001 length in a separate iov + - CIFS: Separate SMB2 sync header processing + - CIFS: Separate RFC1001 length processing for SMB2 read + - CIFS: Add capability to transform requests before sending + - CIFS: Enable encryption during session setup phase + - CIFS: Encrypt SMB3 requests before sending + - CIFS: Add transform header handling callbacks + - CIFS: Add mid handle callback + - CIFS: Add copy into pages callback for a read operation + - CIFS: Decrypt and process small encrypted packets + - CIFS: Add capability to decrypt big read responses + - CIFS: Allow to switch on encryption with seal mount option + - CIFS: Fix possible use after free in demultiplex thread + * FC Adapter (LPe32000-based) prints "iotag out of range", goes offline, and + delays boot a lot (Ubuntu17.04/Emulex/lpfc)) (LP: #1670490) + - scsi: lpfc: Correct WQ creation for pagesize + - scsi: lpfc: Add missing memory barrier + * Ubuntu 17.04: Guest does not reflect all the cpus hotplugged (LP: #1670315) + - powerpc/64: Don't try to use radix MMU under a hypervisor + - powerpc/pseries: Fixes for the "ibm,architecture-vec-5" options + - powerpc/64: Enable use of radix MMU under hypervisor on POWER9 + - powerpc/pseries: Advertise HPT resizing support via CAS + - powerpc/pseries: Advertise Hot Plug Event support to firmware + - powerpc/pseries: Report DLPAR capabilities + - powerpc/pseries: Make the acquire/release of the drc for memory a seperate step + - powerpc/pseries: Introduce memory hotplug READD operation + - powerpc/pseries: Fix build break when MEMORY_HOTREMOVE=n + - powerpc/pseries: Implement indexed-count hotplug memory add + - powerpc/pseries: Implement indexed-count hotplug memory remove + - powerpc/pseries: Revert 'Auto-online hotplugged memory' + * Allow Unity8 to run inside Virtualbox (LP: #1669807) + - ubuntu: vbox -- Update to 5.1.14-dfsg-3 + * ecryptfs fails to load block cipher on ppc64el (LP: #1666483) + - crypto: vmx - Use skcipher for cbc fallback + - crypto: vmx - Use skcipher for xts fallback + - [Config] CONFIG_CRYPTO_DEV_VMX=y + * Regression in 4.4.0-65-generic causes very frequent system crashes + (LP: #1669611) + - Revert "UBUNTU: SAUCE: apparmor: fix lock ordering for mkdir" + - Revert "UBUNTU: SAUCE: apparmor: fix leak on securityfs pin count" + - Revert "UBUNTU: SAUCE: apparmor: fix reference count leak when securityfs_setup_d_inode() fails" + - Revert "UBUNTU: SAUCE: apparmor: fix not handling error case when securityfs_pin_fs() fails" + * [ubuntu 16.10] Enable OPTPROBES for powerpc (LP: #1585741) + - powerpc/optprobes: Fix TOC handling in optprobes trampoline + * [Ubuntu 17.04] Kernel panics when large number of hugepages is passed as an + boot argument to kernel. (LP: #1665113) + - SAUCE: mm/cgroup: avoid panic when init with low memory + * bcache device numbers increase by 16 (LP: #1667078) + - SAUCE: bcache: Fix bcache device names + * [Feature] GLK Intel PT write (LP: #1645962) + - perf/x86/intel/pt: Add format strings for PTWRITE and power event tracing + * arm64: ACPI platform MSI support required for new systems (LP: #1669061) + - SAUCE: ACPI: IORT: fix the indentation in iort_scan_node() + - SAUCE: ACPI: IORT: add missing comment for iort_dev_find_its_id() + - SAUCE: ACPI: IORT: minor cleanup for iort_match_node_callback() + - SAUCE: irqchip: gic-v3-its: keep the head file include in alphabetic order + - SAUCE: irqchip: gicv3-its: platform-msi: refactor its_pmsi_prepare() + - SAUCE: irqchip: gicv3-its: platform-msi: refactor its_pmsi_init() to prepare for ACPI + - SAUCE: irqchip: gicv3-its: platform-msi: scan MADT to create platform msi domain + - SAUCE: ACPI: IORT: rename iort_node_map_rid() to make it generic + - SAUCE: ACPI: IORT: introduce iort_node_map_platform_id() to retrieve dev id + - SAUCE: ACPI: platform-msi: retrieve dev id from IORT + - SAUCE: ACPI: platform: setup MSI domain for ACPI based platform device + - SAUCE: msi: platform: make platform_msi_create_device_domain() ACPI aware + - SAUCE: irqchip: mbigen: drop module owner + - SAUCE: irqchip: mbigen: introduce mbigen_of_create_domain() + - SAUCE: irqchip: mbigen: Add ACPI support + * Miscellaneous Ubuntu changes + - [Debian] Don't attempt to sign files if CONFIG_MODULE_SIG=n + + [ Ubuntu: 4.10.0-11.13 ] + + * Release Tracking Bug + - LP: #1669127 + * linux-tools-common should Depends: lsb-release (LP: #1667571) + - [Config] linux-tools-common depends on lsb-release + * Ubuntu (Zesty): When we miss LSI/INTx interrupts on slot, message is too + imprecise (LP: #1668382) + - of/irq: improve error report on irq discovery process failure + * Zesty update to v4.10.1 stable release (LP: #1668993) + - ptr_ring: fix race conditions when resizing + - ip: fix IP_CHECKSUM handling + - net: socket: fix recvmmsg not returning error from sock_error + - tty: serial: msm: Fix module autoload + - USB: serial: mos7840: fix another NULL-deref at open + - USB: serial: cp210x: add new IDs for GE Bx50v3 boards + - USB: serial: ftdi_sio: fix modem-status error handling + - USB: serial: ftdi_sio: fix extreme low-latency setting + - USB: serial: ftdi_sio: fix line-status over-reporting + - USB: serial: spcp8x5: fix modem-status handling + - USB: serial: opticon: fix CTS retrieval at open + - USB: serial: ark3116: fix register-accessor error handling + - USB: serial: console: fix uninitialised spinlock + - x86/platform/goldfish: Prevent unconditional loading + - goldfish: Sanitize the broken interrupt handler + - netfilter: nf_ct_helper: warn when not applying default helper assignment + - ACPICA: Linuxize: Restore and fix Intel compiler build + - block: fix double-free in the failure path of cgwb_bdi_init() + - rtlwifi: rtl_usb: Fix for URB leaking when doing ifconfig up/down + - xfs: clear delalloc and cache on buffered write failure + - Linux 4.10.1 + * [UBUNTU Zesty] mlx5 - Improve OVS offload driver (LP: #1668019) + - net/sched: cls_flower: Disallow duplicate internal elements + - net/sched: cls_flower: Properly handle classifier flags dumping + - net/sched: cls_matchall: Dump the classifier flags + - net/sched: Reflect HW offload status + - net/sched: cls_flower: Reflect HW offload status + - net/sched: cls_matchall: Reflect HW offloading status + - net/sched: cls_u32: Reflect HW offload status + - net/sched: cls_bpf: Reflect HW offload status + - net/mlx5: Push min-inline mode resolution helper into the core + - IB/mlx5: Enable Eth VFs to query their min-inline value for user-space + - net/mlx5: Use exact encap header size for the FW input buffer + - net/mlx5e: Add TC offloads matching on IPv6 encapsulation headers + - net/mlx5e: TC ipv4 tunnel encap offload cosmetic changes + - net/mlx5e: Use the full tunnel key info for encapsulation offload house- keeping + - net/mlx5e: Maximize ip tunnel key usage on the TC offloading path + - net/mlx5e: Support SRIOV TC encapsulation offloads for IPv6 tunnels + - net/mlx5: E-Switch, Enlarge the FDB size for the switchdev mode + - net/mlx5: Fix static checker warnings + * [Hyper-V] Ubuntu 14.04.2 LTS Generation 2 SCSI Errors on VSS Based Backups + (LP: #1470250) + - SAUCE: Tools: hv: vss: Thaw the filesystem and continue after freeze fails + * Ubuntu17.04: Need more patches for aacraid to bring up Boston System + (LP: #1668726) + - scsi: aacraid: Remove duplicate irq management code + - scsi: aacraid: Added aacraid.h include guard + - scsi: aacraid: added support for init_struct_8 + - scsi: aacraid: Added sa firmware support + - scsi: aacraid: Retrieve and update the device types + - scsi: aacraid: Reworked scsi command submission path + - scsi: aacraid: Process Error for response I/O + - scsi: aacraid: Added support for response path + - scsi: aacraid: Added support for read medium error + - scsi: aacraid: Reworked aac_command_thread + - scsi: aacraid: Added support for periodic wellness sync + - scsi: aacraid: Retrieve Queue Depth from Adapter FW + - scsi: aacraid: Added support to set QD of attached drives + - scsi: aacraid: Added support for hotplug + - scsi: aacraid: Include HBA direct interface + - scsi: aacraid: Add task management functionality + - scsi: aacraid: Added support to abort cmd and reset lun + - scsi: aacraid: VPD 83 type3 support + - scsi: aacraid: Added new IWBR reset + - scsi: aacraid: Added ioctl to trigger IOP/IWBR reset + - scsi: aacraid: Retrieve HBA host information ioctl + - scsi: aacraid: Update copyrights + - scsi: aacraid: Change Driver Version Prefix + - scsi: aacraid: update version + - scsi: aacraid: rcode is unsigned and should be signed int + - scsi: aacraid: avoid open-coded upper_32_bits + - scsi: aacraid: Fix camel case + - scsi: aacraid: Use correct channel number for raw srb + - scsi: aacraid: Fix for excessive prints on EEH + - scsi: aacraid: Prevent E3 lockup when deleting units + - scsi: aacraid: Fix memory leak in fib init path + - scsi: aacraid: Added sysfs for driver version + - scsi: aacraid: Fix sync fibs time out on controller reset + - scsi: aacraid: Skip wellness sync on controller failure + - scsi: aacraid: Reload offlined drives after controller reset + - scsi: aacraid: Decrease adapter health check interval + - scsi: aacraid: Skip IOP reset on controller panic(SMART Family) + - scsi: aacraid: Reorder Adapter status check + - scsi: aacraid: Save adapter fib log before an IOP reset + - scsi: aacraid: Fix a potential spinlock double unlock bug + - scsi: aacraid: Update driver version + - scsi: aacraid: Fixed expander hotplug for SMART family + * Ubuntu 17.04: "Oops: Exception in kernel mode, sig: 5 [#1]" seen during + fadump over ssh on Alpine machine. (LP: #1655241) + - Revert "UBUNTU: SAUCE: powerpc/fadump: set an upper limit for boot memory size" + - SAUCE: powerpc/fadump: set an upper limit for boot memory size (V2) + * CAPI:Ubuntu: Kernel panic while rebooting (LP: #1667599) + - pci/hotplug/pnv-php: Remove WARN_ON() in pnv_php_put_slot() + - pci/hotplug/pnv-php: Disable surprise hotplug capability on conflicts + - pci/hotplug/pnv-php: Disable MSI and PCI device properly + * Nvlink2: Additional patches (LP: #1667081) + - powerpc/powernv: Initialise nest mmu + - powerpc/powernv: Use OPAL call for TCE kill on NVLink2 + - powerpc/mm: refactor radix physical page mapping + - powerpc/mm: add radix__create_section_mapping() + - powerpc/mm: add radix__remove_section_mapping() + - powerpc/mm: unstub radix__vmemmap_remove_mapping() + - [Config] Enforce CONFIG_MOVABLE_NODE=y for ppc64el + * PowerNV: No rate limit for kernel error "KVM can't copy data from" + (LP: #1667416) + - SAUCE: KVM: PPC: Book3S: Ratelimit copy data failure error messages + * Please disable unnecessary config options in the Ubuntu 17.04 kernel config + (LP: #1667490) + - [Config] Disable experimental IMA options + * POWER9: AST: Improve AST 2500 support (LP: #1667424) + - SAUCE: drm/ast: Handle configuration without P2A bridge + - SAUCE: drm/ast: const'ify mode setting tables + - SAUCE: drm/ast: Remove spurrious include + - SAUCE: drm/ast: Fix calculation of MCLK + - SAUCE: drm/ast: Base support for AST2500 + - SAUCE: drm/ast: Fixed vram size incorrect issue on POWER + - SAUCE: drm/ast: Factor mmc_test code in POST code + - SAUCE: drm/ast: Rename ast_init_dram_2300 to ast_post_chip_2300 + - SAUCE: drm/ast: POST code for the new AST2500 + - SAUCE: drm/ast: Fix test for VGA enabled + - SAUCE: drm/ast: Call open_key before enable_mmio in POST code + * POWER9: Additional patches for 17.04 and 16.04.2 (LP: #1667116) + - powerpc/mm: Update PROTFAULT handling in the page fault path + - powerpc/mm/radix: Update pte update sequence for pte clear case + - powerpc/mm/radix: Use ptep_get_and_clear_full when clearing pte for full mm + - powerpc/mm/radix: Skip ptesync in pte update helpers + - SAUCE: powerpc/mm/hash: Always clear UPRT and Host Radix bits when setting up CPU + * POWER9: Improve PMU capabilites (LP: #1667413) + - powerpc/perf: use is_kernel_addr macro in perf_get_misc_flags() + - powerpc/perf: Avoid FAB_*_MATCH checks for power9 + - powerpc/perf: Add restrictions to PMC5 in power9 DD1 + - powerpc/perf: Use Instruction Counter value + - powerpc/perf: Use PM_INST_DISP for generic instructions sample + - powerpc/perf: Add alternative event table and function for power9 + - powerpc/perf: Add PM_INST_DISP event to Power9 event list + - powerpc/perf: Factor out event_alternative function + * Miscellaneous Ubuntu changes + - [Config] CONFIG_QCOM_FALKOR_ERRATUM_1009=y + - [Config] CONFIG_QCOM_L2_PMU=y + - [Config] CONFIG_QCOM_FALKOR_ERRATUM_1003=y + - ubuntu: vbox -- Update to 5.1.14-dfsg-2 + * Miscellaneous upstream changes + - arm64: errata: Provide macro for major and minor cpu revisions + - arm64: Define Falkor v1 CPU + - arm64: Use __tlbi() macros in KVM code + - arm64: Work around Falkor erratum 1009 + - perf: add qcom l2 cache perf events driver + - arm64: arch_timer: document Hisilicon erratum 161010101 + - arm64: Work around Falkor erratum 1003 + - ACPI/IORT: Fix iort_node_get_id() mapping entries indexing + - net: qcom/emac: add ethtool support + - Revert "net: qcom/emac: configure the external phy to allow pause frames" + - net: qcom/emac: rename emac_phy to emac_sgmii and move it + - net: qcom/emac: claim the irq only when the device is opened + - net: qcom/emac: display the phy driver info after we connect + - net: qcom/emac: always use autonegotiation to configure the SGMII link + - net: qcom/emac: do not call emac_mac_start twice + - net: qcom/emac: remove extraneous wake-on-lan code + - net: qcom/emac: add an error interrupt handler for the sgmii + - net: qcom/emac: add ethool support for setting pause parameters + - net: qcom/emac: fix semicolon.cocci warnings + - net: qcom/emac: add ethtool support for reading hardware registers + - net: qcom/emac: add ethtool support for setting ring parameters + - net: qcom/emac: fix a sizeof() typo + + [ Ubuntu: 4.10.0-10.12 ] + + * Release Tracking Bug + - LP: #1666636 + * POWER9 : Enable Stop 0-2 with ESL=EC=0 (LP: #1666197) + - powernv:idle: Add IDLE_STATE_ENTER_SEQ_NORET macro + - powernv:stop: Rename pnv_arch300_idle_init to pnv_power9_idle_init + - cpuidle:powernv: Add helper function to populate powernv idle states. + - powernv: Pass PSSCR value and mask to power9_idle_stop + - Documentation:powerpc: Add device-tree bindings for power-mgt + * ecryptfs fails to load block cipher on ppc64el (LP: #1666483) + - [Config] CONFIG_CRYPTO_DEV_VMX=n + * [ubuntu 16.10] Enable OPTPROBES for powerpc (LP: #1585741) + - powerpc/bpf: Introduce __PPC_SH64() + - powerpc: Add helper to check if offset is within relative branch range + - powerpc/kprobes: Fixes for kprobe_lookup_name() on BE + - powerpc/kprobes: Implement Optprobes + - powerpc/kprobes: Optimize kprobe in kretprobe_trampoline() + * Miscellaneous Ubuntu changes + - [Config] CONFIG_QCOM_IRQ_COMBINER=y + - [Config] CONFIG_ARM_ARCH_TIMER_OOL_WORKAROUND=y + - [Config] CONFIG_HISILICON_ERRATUM_161010101=y + * Miscellaneous upstream changes + - ACPI: Generic GSI: Do not attempt to map non-GSI IRQs during bus scan + - ACPI: Add support for ResourceSource/IRQ domain mapping + - irqchip/qcom: Add IRQ combiner driver + - clocksource/drivers/arm_arch_timer: Add dt binding for hisilicon-161010101 erratum + - clocksource/drivers/arm_arch_timer: Remove fsl-a008585 parameter + - clocksource/drivers/arm_arch_timer: Introduce generic errata handling infrastructure + - clocksource/drivers/arm_arch_timer: Work around Hisilicon erratum 161010101 + - iommu/dma: Allow MSI-only cookies + - iommu: Rename iommu_dm_regions into iommu_resv_regions + - iommu: Add a new type field in iommu_resv_region + - iommu: iommu_alloc_resv_region + - iommu: Only map direct mapped regions + - iommu: iommu_get_group_resv_regions + - iommu: Implement reserved_regions iommu-group sysfs file + - iommu/vt-d: Implement reserved region get/put callbacks + - iommu/amd: Declare MSI and HT regions as reserved IOVA regions + - iommu/arm-smmu: Implement reserved region get/put callbacks + - iommu/arm-smmu-v3: Implement reserved region get/put callbacks + - irqdomain: Add irq domain MSI and MSI_REMAP flags + - genirq/msi: Set IRQ_DOMAIN_FLAG_MSI on MSI domain creation + - irqdomain: irq_domain_check_msi_remap + - irqchip/gicv3-its: Sets IRQ_DOMAIN_FLAG_MSI_REMAP + - vfio/type1: Allow transparent MSI IOVA allocation + - vfio/type1: Check MSI remapping at irq domain level + - iommu/arm-smmu: Do not advertise IOMMU_CAP_INTR_REMAP anymore + - iommu/arm-smmu-v3: Clear prior settings when updating STEs + - iommu/arm-smmu-v3: limit use of 2-level stream tables + - iommu/arm-smmu: Support for Extended Stream ID (16 bit) + - iommu/arm-smmu: Fix for ThunderX erratum #27704 + + -- Stefan Bader Thu, 27 Apr 2017 17:53:22 +0200 + +linux-azure (4.10.0-1003.3) xenial; urgency=low + + * CVE-2017-7184 + - xfrm_user: validate XFRM_MSG_NEWAE XFRMA_REPLAY_ESN_VAL replay_window + - xfrm_user: validate XFRM_MSG_NEWAE incoming ESN size harder + + * Miscellaneous Ubuntu changes + - getabis: fix source and package list + + -- Stefan Bader Fri, 24 Mar 2017 15:42:16 +0100 + +linux-azure (4.10.0-1002.2) xenial; urgency=low + + * [Hyper-V][Mellanox] net/mlx4_core: Avoid delays during VF driver device + shutdown (LP: #1672785) + - SAUCE: net/mlx4_core: Avoid delays during VF driver device shutdown + + * CIFS: Enable encryption for SMB3 (LP: #1670508) + - cifs: Simplify SMB2 and SMB311 dependencies + - cifs: Only select the required crypto modules + - cifs: Add soft dependencies + - CIFS: Separate SMB2 header structure + - CIFS: Make SendReceive2() takes resp iov + - CIFS: Make send_cancel take rqst as argument + - CIFS: Send RFC1001 length in a separate iov + - CIFS: Separate SMB2 sync header processing + - CIFS: Separate RFC1001 length processing for SMB2 read + - CIFS: Add capability to transform requests before sending + - CIFS: Enable encryption during session setup phase + - CIFS: Encrypt SMB3 requests before sending + - CIFS: Add transform header handling callbacks + - CIFS: Add mid handle callback + - CIFS: Add copy into pages callback for a read operation + - CIFS: Decrypt and process small encrypted packets + - CIFS: Add capability to decrypt big read responses + - CIFS: Allow to switch on encryption with seal mount option + - CIFS: Fix possible use after free in demultiplex thread + + * [Hyper-V] pci-hyperv: Use device serial number as PCI domain (LP: #1667527) + - net/mlx4_core: Use cq quota in SRIOV when creating completion EQs + - PCI: hv: Use device serial number as PCI domain + + * linux-azure: disable unused hypervisors and misc configs (LP: #1671203) + - [config] azure: disable CONFIG_KVM + - [config] azure: disable VMware drivers + - [config] azure: disable VIRTIO drivers + - [config] azure: disable USB + - [config] azure: disable CONFIG_EFI + - [config] azure: limit elevator to noop + - [config] azure: disable CONFIG_ACPI_HOTPLUG_MEMORY + - [config] azure: disable CONFIG_NET_FC + - [config] azure: disable CONFIG_LIBFC + + -- Marcelo Henrique Cerri Thu, 16 Mar 2017 12:28:53 -0300 + +linux-azure (4.10.0-1001.1) xenial; urgency=low + + * [Hyper-V] SAUCE: pci-hyperv fixes for SR-IOV on Azure (LP: #1665097) + - SAUCE: pci-hyperv: properly handle pci bus remove + - SAUCE: pci-hyperv: lock pci bus on device eject + - SAUCE: PCI: hv: Fix wslot_to_devfn() to fix warnings on device removal + + * Miscellaneous Ubuntu changes + - linux-azure packaging + - [config] azure: ship_extras_package=false + - SAUCE: Increase the ext4 default commit age + - [config] disable CONFIG_POWERCAP as azure does not make use of this + - [config] disable CONFIG_FUJITSU_ES driver, it is not used by azure + - [config] Disable CONFIG_INPUT_LEDS for azure + - [config] Disable ATA drivers that azure does not use + - [config] azure: Disable x86 platform drivers where appropriate + - [config] disable sound for azure + - [config] azure: disable unnecessary ACPI features + - [config] azure: Disable joystick drivers + - [config] azure: Disable touchscreen drivers + - [config] azure: disable CONFIG_MEDIA_RADIO_SUPPORT + - [config] azure: Disable Blue Tooth support + - [config] azure: disable CONFIG_MEDIA_CAMERA_SUPPORT + - [config] azure: disable MEDIA_ANALOG_TV_SUPPORT + - [config] azure: disable MEDIA_DIGITAL_TV_SUPPORT + - [config] azure: disable MEDIA_RC_SUPPORT + - [config] azure: disable MEDIA_SDR_SUPPORT + - [config] azure: disable MEDIA_PCI_SUPPORT + - [config] azure disable CONFIG_SPEAKUP synth + - [config] azure: disable LED support + - [config] azure: disable comedi data acquisition support + - [config] azure: disable charger configs + - [config] azure: disable firewire + - [config] azure: disable gameport + - [config] azure: disable CONFIG_MOUSE + - [config] azure: disable CONFIG_ISDN + - [config] azure: disable various misc LCD drivers + - [config] azure disable CONFIG_MACINTOSH_DRIVERS + - [config] azure: disable CONFIG_PCMCIA + - [config] azure: disable misc backlight drivers + - [config] disable CONFIG_MTD for azure + - [config] azure: disable some battery drivers + - [config] azure: disable WLAN wireless + - [config] azure: disable WIMAX support + - [config] azure: disable Dallas 1 wire support + - [config] azure: disable Ultra Wideband devices + - [config] azure disable FPGA support + - [Config] azure: Move some drivers to the main kernel package + - [config] azure: disable CONFIG_MMC + - [config] azure: disable CONFIG_THUNDERBOLT + - [config] azure: disable CONFIG_FMC (FPGA Mezzanine Carrier) + - [config] azure: disable Chrome OS support + - [config] azure: disable CONFIG_XEN + - [config] azure: disable CONFIG_AUXDISPLAY + - [config] azure: disable CONFIG_MEMSTICK + - [config] azure: disable additional ACPI configs + - [config] azure: disable some ADC/DAC drivers + - [config] azure: disable some block devices + - [config] azure: disable some ambient light drivers + - [config] azure: disable some graphic drivers + - [config] azure: disable some HID drivers + - [config] azure: disable CONFIG_NET_VENDOR_* + + -- Brad Figg Mon, 27 Feb 2017 12:33:00 -0800 + +linux-azure (4.10.0-1000.0) xenial; urgency=low + + [ Marcelo Henrique Cerri ] + + * empty entry + + -- Marcelo Henrique Cerri Tue, 14 Feb 2017 15:04:42 -0200 + +linux (4.10.0-8.10) zesty; urgency=low + + [ Tim Gardner ] + + * Release Tracking Bug + - LP: #1664217 + + * [Hyper-V] Bug fixes for storvsc (tagged queuing, error conditions) + (LP: #1663687) + - scsi: storvsc: Enable tracking of queue depth + - scsi: storvsc: Remove the restriction on max segment size + - scsi: storvsc: Enable multi-queue support + - scsi: storvsc: use tagged SRB requests if supported by the device + - scsi: storvsc: properly handle SRB_ERROR when sense message is present + - scsi: storvsc: properly set residual data length on errors + + * Ubuntu16.10-KVM:Big configuration with multiple guests running SRIOV VFs + caused KVM host hung and all KVM guests down. (LP: #1651248) + - KVM: PPC: Book 3S: XICS cleanup: remove XICS_RM_REJECT + - KVM: PPC: Book 3S: XICS: correct the real mode ICP rejecting counter + - KVM: PPC: Book 3S: XICS: Fix potential issue with duplicate IRQ resends + - KVM: PPC: Book 3S: XICS: Implement ICS P/Q states + - KVM: PPC: Book 3S: XICS: Don't lock twice when checking for resend + + * overlay: mkdir fails if directory exists in lowerdir in a user namespace + (LP: #1531747) + - SAUCE: overlayfs: Skip permission checking for trusted.overlayfs.* xattrs + + * CVE-2016-1575 (LP: #1534961) + - SAUCE: overlayfs: Skip permission checking for trusted.overlayfs.* xattrs + + * CVE-2016-1576 (LP: #1535150) + - SAUCE: overlayfs: Skip permission checking for trusted.overlayfs.* xattrs + + * Miscellaneous Ubuntu changes + - SAUCE: md/raid6 algorithms: scale test duration for speedier boots + - SAUCE: Import aufs driver + - d-i: Build message-modules udeb for arm64 + - rebase to v4.10-rc8 + + * Miscellaneous upstream changes + - Revert "UBUNTU: SAUCE: aufs -- remove .readlink assignment" + - Revert "UBUNTU: SAUCE: (no-up) aufs: for v4.9-rc1, support setattr_prepare()" + - Revert "UBUNTU: SAUCE: aufs -- Add flags argument to aufs_rename()" + - Revert "UBUNTU: SAUCE: aufs -- Convert to use xattr handlers" + - Revert "UBUNTU: SAUCE: Import aufs driver" + + [ Upstream Kernel Changes ] + + * rebase to v4.10-rc8 + + -- Tim Gardner Mon, 06 Feb 2017 08:34:24 -0700 + +linux (4.10.0-7.9) zesty; urgency=low + + [ Tim Gardner ] + + * Release Tracking Bug + - LP: #1662201 + + * AMDGPU support for CIK parts in kernel config? (LP: #1661887) + - [Config] CONFIG_DRM_AMDGPU_CIK=y + + * regession tests failing after stackprofile test is run (LP: #1661030) + - fix regression with domain change in complain mode + + * Permission denied and inconsistent behavior in complain mode with 'ip netns + list' command (LP: #1648903) + - fix regression with domain change in complain mode + + * flock not mediated by 'k' (LP: #1658219) + - SAUCE: apparmor: flock mediation is not being enforced on cache check + + * unexpected errno=13 and disconnected path when trying to open /proc/1/ns/mnt + from a unshared mount namespace (LP: #1656121) + - SAUCE: apparmor: null profiles should inherit parent control flags + + * apparmor refcount leak of profile namespace when removing profiles + (LP: #1660849) + - SAUCE: apparmor: fix ns ref count link when removing profiles from policy + + * tor in lxd: apparmor="DENIED" operation="change_onexec" + namespace="root//CONTAINERNAME_" profile="unconfined" + name="system_tor" (LP: #1648143) + - SAUCE: apparmor: Fix no_new_privs blocking change_onexec when using stacked + namespaces + + * apparmor_parser hangs indefinitely when called by multiple threads + (LP: #1645037) + - SAUCE: apparmor: fix lock ordering for mkdir + + * apparmor leaking securityfs pin count (LP: #1660846) + - SAUCE: apparmor: fix leak on securityfs pin count + + * apparmor reference count leak when securityfs_setup_d_inode\ () fails + (LP: #1660845) + - SAUCE: apparmor: fix reference count leak when securityfs_setup_d_inode() + fails + + * apparmor not checking error if security_pin_fs() fails (LP: #1660842) + - SAUCE: apparmor: fix not handling error case when securityfs_pin_fs() fails + + * apparmor oops in bind_mnt when dev_path lookup fails (LP: #1660840) + - SAUCE: apparmor: fix oops in bind_mnt when dev_path lookup fails + + * apparmor auditing denied access of special apparmor .null fi\ le + (LP: #1660836) + - SAUCE: apparmor: Don't audit denied access of special apparmor .null file + + * apparmor label leak when new label is unused (LP: #1660834) + - SAUCE: apparmor: fix label leak when new label is unused + + * apparmor reference count bug in label_merge_insert() (LP: #1660833) + - SAUCE: apparmor: fix reference count bug in label_merge_insert() + + * apparmor's raw_data file in securityfs is sometimes truncated (LP: #1638996) + - SAUCE: apparmor: fix replacement race in reading rawdata + + * unix domain socket cross permission check failing with nested namespaces + (LP: #1660832) + - SAUCE: apparmor: fix cross ns perm of unix domain sockets + + * Regression tests can not detect binfmt_elf mmpa semantic change + (LP: #1630069) + - SAUCE: apparmor: add flag to detect semantic change, to binfmt_elf mmap + + * Support snaps inside of lxd containers (LP: #1611078) + - apparmor: add interface to be able to grab loaded policy + - apparmor: refactor aa_prepare_ns into prepare_ns and create_ns routines + - apparmor: add __aa_find_ns fn + - apparmor: add mkdir/rmdir interface to manage policy namespaces + - apparmor: fix oops in pivot_root mediation + - apparmor: fix warning that fn build_pivotroot discards const + - apparmor: add interface to advertise status of current task stacking + - apparmor: update policy permissions to consider ns being viewed/managed + - apparmor: add per ns policy management interface + - apparmor: bump domain stacking version to 1.2 + + * change_hat is logging failures during expected hat probing (LP: #1615893) + - SAUCE: apparmor: Fix auditing behavior for change_hat probing + + * deleted files outside of the namespace are not being treated as disconnected + (LP: #1615892) + - SAUCE: apparmor: deleted dentries can be disconnected + + * stacking to unconfined in a child namespace confuses mediation + (LP: #1615890) + - SAUCE: apparmor: special case unconfined when determining the mode + + * apparmor module parameters can be changed after the policy is locked + (LP: #1615895) + - SAUCE: apparmor: fix: parameters can be changed after policy is locked + + * AppArmor profile reloading causes an intermittent kernel BUG (LP: #1579135) + - SAUCE: apparmor: fix vec_unique for vectors larger than 8 + + * label vec reductions can result in reference labels instead of direct access + to labels (LP: #1615889) + - SAUCE: apparmor: reduction of vec to single entry is just that entry + + * profiles from different namespaces can block other namespaces from being + able to load a profile (LP: #1615887) + - SAUCE: apparmor: profiles in one ns can affect mediation in another ns + + * The label build for onexec when stacking is wrong (LP: #1615881) + - SAUCE: apparmor: Fix label build for onexec stacking. + + * The inherit check for new to old label comparison for domain transitions is + wrong (LP: #1615880) + - SAUCE: apparmor: Fix new to old label comparison for domain transitions + + * warning stack trace while playing with apparmor namespaces (LP: #1593874) + - SAUCE: apparmor: fix stack trace when removing namespace with profiles + + * __label_update proxy comparison test is wrong (LP: #1615878) + - SAUCE: apparmor: Fix __label_update proxy comparison test + + * reading /sys/kernel/security/apparmor/profiles requires CAP_MAC_ADMIN + (LP: #1560583) + - SAUCE: apparmor: Allow ns_root processes to open profiles file + - SAUCE: apparmor: Consult sysctl when reading profiles in a user ns + + * policy namespace stacking (LP: #1379535) + - SAUCE: (no-up) apparmor: rebase of apparmor3.5-beta1 snapshot for 4.8 + - SAUCE: add a sysctl to enable unprivileged user ns AppArmor policy loading + + * brd module compiled as built-in (LP: #1593293) + - [Config] CONFIG_BLK_DEV_RAM=m + + * Miscellaneous Ubuntu changes + - SAUCE: apparmor: Fix FTBFS due to bad include path + - SAUCE: apparmor: add data query support + - rebase to v4.10-rc7 + + * Miscellaneous upstream changes + - fixup backout policy view capable for forward port + - apparmor: fix: Rework the iter loop for label_update + - apparmor: add more assertions for updates/merges to help catch errors + - apparmor: Make pivot root transitions work with stacking + - apparmor: convert delegating deleted files to mediate deleted files + - apparmor: add missing parens. not a bug fix but highly recommended + - apparmor: add a stack_version file to allow detection of bug fixes + - apparmor: push path lookup into mediation loop + - apparmor: default to allowing unprivileged userns policy + - apparmor: fix: permissions test to view and manage policy + - apparmor: Add Basic ns cross check condition for ipc + + [ Upstream Kernel Changes ] + + * rebase to v4.10-rc7 + + -- Tim Gardner Thu, 02 Feb 2017 10:48:30 -0700 + +linux (4.10.0-6.8) zesty; urgency=low + + [ Tim Gardner ] + + * Release Tracking Bug + - LP: #1661300 + + * flock not mediated by 'k' (LP: #1658219) + - SAUCE: apparmor: flock mediation is not being enforced on cache check + + * unexpected errno=13 and disconnected path when trying to open /proc/1/ns/mnt + from a unshared mount namespace (LP: #1656121) + - SAUCE: apparmor: null profiles should inherit parent control flags + + * apparmor refcount leak of profile namespace when removing profiles + (LP: #1660849) + - SAUCE: apparmor: fix ns ref count link when removing profiles from policy + + * tor in lxd: apparmor="DENIED" operation="change_onexec" + namespace="root//CONTAINERNAME_" profile="unconfined" + name="system_tor" (LP: #1648143) + - SAUCE: apparmor: Fix no_new_privs blocking change_onexec when using stacked + namespaces + + * apparmor_parser hangs indefinitely when called by multiple threads + (LP: #1645037) + - SAUCE: apparmor: fix lock ordering for mkdir + + * apparmor leaking securityfs pin count (LP: #1660846) + - SAUCE: apparmor: fix leak on securityfs pin count + + * apparmor reference count leak when securityfs_setup_d_inode\ () fails + (LP: #1660845) + - SAUCE: apparmor: fix reference count leak when securityfs_setup_d_inode() + fails + + * apparmor not checking error if security_pin_fs() fails (LP: #1660842) + - SAUCE: apparmor: fix not handling error case when securityfs_pin_fs() fails + + * apparmor oops in bind_mnt when dev_path lookup fails (LP: #1660840) + - SAUCE: apparmor: fix oops in bind_mnt when dev_path lookup fails + + * apparmor auditing denied access of special apparmor .null fi\ le + (LP: #1660836) + - SAUCE: apparmor: Don't audit denied access of special apparmor .null file + + * apparmor label leak when new label is unused (LP: #1660834) + - SAUCE: apparmor: fix label leak when new label is unused + + * apparmor reference count bug in label_merge_insert() (LP: #1660833) + - SAUCE: apparmor: fix reference count bug in label_merge_insert() + + * apparmor's raw_data file in securityfs is sometimes truncated (LP: #1638996) + - SAUCE: apparmor: fix replacement race in reading rawdata + + * unix domain socket cross permission check failing with nested namespaces + (LP: #1660832) + - SAUCE: apparmor: fix cross ns perm of unix domain sockets + + * Kdump through NMI SMP and single core not working on Ubuntu16.10 + (LP: #1630924) + - hv: don't reset hv_context.tsc_page on crash + + * [17.04 FEAT] Integrate kernel message catalogue for s390x into Ubuntu + distribution (LP: #1628889) + - SAUCE: s390: kernel message catalog + + * Miscellaneous Ubuntu changes + - [Config] Drop powerpc ABI files + + -- Tim Gardner Wed, 01 Feb 2017 15:21:35 -0700 + +linux (4.10.0-5.7) zesty; urgency=low + + * [regression 4.8.0-14 -> 4.8.0-17] keyboard and touchscreen lost on Acer + Chromebook R11 (LP: #1630238) + - [Config] CONFIG_TOUCHSCREEN_ELAN=y,CONFIG_PINCTRL_CHERRYVIEW=y for amd64 + + * Enable CONFIG_NET_DROP_MONITOR=m in Ubuntu Kernel (LP: #1660634) + - [Config] Update annotations for CONFIG_NET_DROP_MONITOR + + * Miscellaneous Ubuntu changes + - d-i: initrd needs msm_emac on amberwing platform. + - [Config] Remove powerpc architecture builds + - [Config] updateconfigs after removing powerpc configs + - [Config] Update annotations after removing powerpc configs + - SAUCE: Disable timers selftest for now + - Rebase to v4.10-rc6 + - SAUCE: (no-up) Update zfs to 0.6.5.8-0ubuntu9 + - Enable zfs build + - [Config] CONFIG_NET_DROP_MONITOR=m + + [ Upstream Kernel Changes ] + + * rebase to v4.10-rc6 + + -- Seth Forshee Wed, 01 Feb 2017 12:26:09 -0600 + +linux (4.10.0-4.6) zesty; urgency=low + + * Miscellaneous upstream changes + - Revert "UBUNTU: Disable all flavors for the powerpc architecture" + + -- Seth Forshee Tue, 24 Jan 2017 07:13:15 -0600 + +linux (4.10.0-3.5) zesty; urgency=low + + * KVM module handling different per Architecture - ppc64el (LP: #1657734) + - [Config] powerpc: Add kvm-hv and kvm-pr to the generic inclusion list + + * ENA network driver moved to -extra (LP: #1657767) + - [Config] Move Amazon ENA network driver to the main kernel package + + * [Hyper-V] mkfs regression in 4.10 fixed by patch in "for-4.11" + (LP: #1657539) + - block: relax check on sg gap + + * i915 module requests unreleased GUC firmware files (LP: #1626740) + - SAUCE: (no-up) i915: Remove MODULE_FIRMWARE statements for unreleased + firmware + + * [17.04 FEAT] Integrate kernel message catalogue for s390x into Ubuntu + distribution (LP: #1628889) + - [Config] CONFIG_KMSG_IDS=y for s390 + - SAUCE: s390 Kernel message catalog + + * Miscellaneous Ubuntu changes + - ubuntu: vbox -- Update to 5.1.14-dfsg-1 + - SAUCE: vbox -- remove .readlink assignment + - Enable vbox build + - [Config] CONFIG_DEFAULT_IOSCHED=cfq + - [Config] Bump CONFIG_NR_CPUS up to 256 on arm64 + - [Config] Fix up s390x config options changed during 4.10 rebase + - [Config] Update annotations for 4.10 + - Disable all flavors for the powerpc architecture + + [ Upstream Kernel Changes ] + + * rebase to v4.10-rc5 + + -- Seth Forshee Mon, 23 Jan 2017 15:48:35 -0600 + +linux (4.10.0-2.4) zesty; urgency=low + + * Move some kernel modules to the main kernel package (part 2) (LP: #1655002) + - [Config] Add IBM power drivers to the inclusion list + + * Miscellaneous Ubuntu changes + - [Config] linux-source Provides should not be a macro + - [Config] Correct the note URL for LATENCYTOP + - rebase to v4.10-rc4 + + [ Upstream Kernel Changes ] + + * rebase to v4.10-rc4 + + -- Tim Gardner Wed, 11 Jan 2017 07:17:34 -0700 + +linux (4.10.0-1.3) zesty; urgency=low + + [ Upstream Kernel Changes ] + + * rebase to v4.10-rc3 + + -- Seth Forshee Mon, 09 Jan 2017 11:41:13 -0600 + +linux (4.10.0-0.2) zesty; urgency=low + + * [17.04 FEAT] Build IMA and the TPM device drivers into the KVM on POWER + host/NV kernel (LP: #1643652) + - [Config] Update and enforce IMA options + + * Miscellaneous Ubuntu changes + - [Config] Disble stack protector for powerpc-smp + + -- Seth Forshee Sat, 07 Jan 2017 19:07:55 -0600 + +linux (4.10.0-0.1) zesty; urgency=low + + * IP-over-DDP packets dropped (LP: #1559772) + - [Config] CONFIG_IPDDP=n + + * Miscellaneous Ubuntu changes + - [Config] Update annotations with recent config changes + - SAUCE: aufs -- remove .readlink assignment + - disable vbox build + - disable ZFS build + + [ Upstream Kernel Changes ] + + * rebase to v4.10-rc2 + + -- Seth Forshee Fri, 06 Jan 2017 07:55:57 -0600 + +linux (4.9.0-11.12) zesty; urgency=low + + * Miscellaneous Ubuntu changes + - UBUNTU: SAUCE: Add '-fno-pie -no-pie' to cflags for x86 selftests + - UBUNTU: SAUCE: (no-up) aufs: for v4.9-rc1, support setattr_prepare() + + [ Upstream Kernel Changes ] + + * rebase to v4.9 + + -- Tim Gardner Mon, 12 Dec 2016 06:40:40 -0700 + +linux (4.9.0-10.11) zesty; urgency=low + + * d-i is missing usb support for platforms that use the xhci-platform driver + (LP: #1625222) + - d-i initrd needs additional usb modules to support the merlin platform + + * Miscellaneous Ubuntu changes + - SAUCE: Import aufs driver + - SAUCE: aufs -- Convert to use xattr handlers + - SAUCE: aufs -- Add flags argument to aufs_rename() + - [Config] Enable aufs + - [Config] CONFIG_FSL_FMAN=y for powerpc + - SAUCE: powerpc64: Fix legacy cmpi mneomonic assumption + - [Config] Restore powerpc64-emb + + -- Tim Gardner Thu, 08 Dec 2016 20:38:12 -0700 + +linux (4.9.0-9.10) zesty; urgency=low + + * Kernel Fixes to get TCMU File Backed Optical to work (LP: #1646204) + - SAUCE: target/user: Fix use-after-free of tcmu_cmds if they are expired + + * Yakkety: arm64: CONFIG_ARM64_ERRATUM_845719 isn't enabled (LP: #1647793) + - [Config] CONFIG_ARM64_ERRATUM_845719=y + + * Update hio driver to 2.1.0.28 (LP: #1646643) + - SAUCE: hio: update to Huawei ES3000_V2 (2.1.0.28) + + * Miscellaneous Ubuntu changes + - ubuntu: vbox -- Update to 5.1.10-dfsg-2 + - Build vbox for ARCH=x86 + - SAUCE: Add aufs driver + - SAUCE: aufs -- Convert to use xattr handlers + - SAUCE: aufs -- Updates for rename2 + - SAUCE: Export symbols used by aufs + - [Config] Enable aufs + + -- Tim Gardner Mon, 05 Dec 2016 13:02:18 -0700 + +linux (4.9.0-8.9) zesty; urgency=low + + * Miscellaneous Ubuntu changes + - SAUCE: xr-usb-serial: only build for x86 + Fixes s390x FTBS + + -- Tim Gardner Mon, 05 Dec 2016 12:35:33 -0700 + +linux (4.9.0-7.8) zesty; urgency=low + + * Driver for Exar USB UART (LP: #1645591) + - SAUCE: xr-usb-serial: Driver for Exar USB serial ports + - SAUCE: xr-usb-serial: interface for switching modes + - SAUCE: cdc-acm: Exclude Exar USB serial ports + + [ Upstream Kernel Changes ] + + * rebase to v4.9-rc8 + + -- Tim Gardner Mon, 05 Dec 2016 07:41:58 -0700 + +linux (4.9.0-6.7) zesty; urgency=low + + * Miscellaneous Ubuntu changes + - Set build_arch=x86 for i386 + + -- Tim Gardner Thu, 01 Dec 2016 21:00:11 -0700 + +linux (4.9.0-5.6) zesty; urgency=low + + * Miscellaneous Ubuntu changes + - [Debian] restore tools build + - Set build_arch=x86 for amd64 and x32 + + -- Tim Gardner Thu, 01 Dec 2016 07:06:20 -0700 + +linux (4.9.0-4.5) zesty; urgency=low + + * linux: Staging modules should be unsigned (LP: #1642368) + - [Debian] Suppress module signing for staging drivers + - SAUCE: Add rtl drivers to signature inclusion list + + * [17.04 FEAT] Build IMA and the TPM device drivers into the KVM on POWER + host/NV kernel (LP: #1643652) + - [Config] CONFIG_IMA=y + + * Miscellaneous Ubuntu changes + - [Debian] config-check -- Make it easier to find annotations syntax errors + - [Config] Enable various drivers for ARM platforms + - [Config] Fix s390x config carnage + - [Config] Set CONFIG_KEXEC=y for all architectures + - [Config] Fix up CONFIG_I2C_SLAVE values + - [Config] Set CONFIG_WLAN_VENDOR_TI=y for all supported kernels + - [Config] Set CONFIG_PWM_PCA9685=m for amd64 and i386 + - [Config] Set CONFIG_ZONE_DMA=m for amd64-generic + - [Config] Update annotations + - [Config] CONFIG_NR_CPUS=8192 for amd64 + + -- Tim Gardner Mon, 28 Nov 2016 12:57:09 -0700 + +linux (4.9.0-3.4) zesty; urgency=low + + * Miscellaneous Ubuntu changes + - SAUCE: (namespace) security/integrity: Harden against malformed xattrs + - SAUCE: (namespace) block_dev: Support checking inode permissions in lookup_bdev() + - SAUCE: (namespace) block_dev: Check permissions towards block device inode when mounting + - SAUCE: (namespace) mtd: Check permissions towards mtd block device inode when mounting + - SAUCE: (namespace) fs: Allow superblock owner to change ownership of inodes + - SAUCE: (namespace) fs: Don't remove suid for CAP_FSETID for userns root + - SAUCE: (namespace) fs: Allow superblock owner to access do_remount_sb() + - SAUCE: (namespace) capabilities: Allow privileged user in s_user_ns to set security.* xattrs + - SAUCE: (namespace) fs: Allow CAP_SYS_ADMIN in s_user_ns to freeze and thaw filesystems + - SAUCE: (namespace) posix_acl: Export posix_acl_fix_xattr_userns() to modules + - SAUCE: (namespace) fuse: Add support for pid namespaces + - SAUCE: (namespace) fuse: Support fuse filesystems outside of init_user_ns + - SAUCE: (namespace) fuse: Translate ids in posix acl xattrs + - SAUCE: (namespace) fuse: Restrict allow_other to the superblock's namespace or a descendant + - SAUCE: (namespace) fuse: Allow user namespace mounts + - SAUCE: (namespace) ext4: Add support for unprivileged mounts from user namespaces + - SAUCE: (namespace) ext4: Add module parameter to enable user namespace mounts + - SAUCE: (namespace) block_dev: Forbid unprivileged mounting when device is opened for writing + - SAUCE: (noup) Update spl to 0.6.5.8-0ubuntu7, zfs to 0.6.5.8-2ubuntu1 + + * Miscellaneous upstream changes + - Revert "UBUNTU: SAUCE: overlayfs: Skip permission checking for trusted.overlayfs.* xattrs" + + [ Upstream Kernel Changes ] + + * rebase to v4.9-rc7 + + -- Tim Gardner Tue, 22 Nov 2016 07:51:48 -0700 + +linux (4.9.0-2.3) zesty; urgency=low + + * Fix Kernel Crashing under IBM Virtual Scsi Driver (LP: #1642299) + - SAUCE: ibmvscsis: Rearrange functions for future patches + - SAUCE: ibmvscsis: Synchronize cmds at tpg_enable_store time + - SAUCE: ibmvscsis: Synchronize cmds at remove time + - SAUCE: ibmvscsis: Clean up properly if target_submit_cmd/tmr fails + - SAUCE: ibmvscsis: Return correct partition name/# to client + - SAUCE: ibmvscsis: Issues from Dan Carpenter/Smatch + + * Move some kernel modules to the main kernel package (LP: #1642228) + - [Config] Move some powerpc kernel modules to the main kernel package + + * linux: Staging modules should be unsigned (LP: #1642368) + - [Debian] Suppress module signing for staging drivers + + * Miscellaneous Ubuntu changes + - SAUCE: UEFI: bpf: disable bpf when module security is enabled + + [ Upstream Kernel Changes ] + + * rebase to v4.9-rc6 + + -- Tim Gardner Tue, 15 Nov 2016 10:59:54 -0700 + +linux (4.9.0-1.2) zesty; urgency=low + + * hio: SSD data corruption under stress test (LP: #1638700) + - SAUCE: hio: set bi_error field to signal an I/O error on a BIO + - SAUCE: hio: splitting bio in the entry of .make_request_fn + + * hio Ubuntu sauce driver needs porting to 4.8 (LP: #1635594) + - SAUCE: import Huawei ES3000_V2 (2.1.0.23) + - SAUCE: hio: bio_endio() no longer takes errors arg + - SAUCE: hio: blk_queue make_request_fn now returns a blk_qc_t + - SAUCE: hio: use alloc_cpumask_var to avoid -Wframe-larger-than + - SAUCE: hio: fix mask maybe-uninitialized warning + - SAUCE: hio: port to v4.8 base + - [config] enable CONFIG_HIO (Huawei ES3000_V2 PCIe SSD driver) + - SAUCE: hio: Makefile and Kconfig + - [Config] Enforce CONFIG_HIO + + * Miscellaneous Ubuntu changes + - rebase to v4.9-rc5 + - zfs: remove the never implemented aio_fsync file operation + - [Config] Disable powerpc64-emb for FTBS + + [ Upstream Kernel Changes ] + + * rebase to v4.9-rc5 + + -- Tim Gardner Tue, 08 Nov 2016 08:02:32 -0700 + +linux (4.9.0-0.1) zesty; urgency=low + + [ Upstream Kernel Changes ] + + * rebase to v4.9-rc4 + - LP: #1465724 + - LP: #1535802 + + -- Tim Gardner Sun, 16 Oct 2016 21:46:31 -0600 + +linux (4.9.0-0.0) yakkety; urgency=low + + [ Seth Forshee ] + + * Release Tracking Bug + - LP: #1632918 + + * Revert "If zone is so small that watermarks are the same, stop zone balance" + in yakkety (LP: #1632894) + - Revert "UBUNTU: SAUCE: (no-up) If zone is so small that watermarks are the + same, stop zone balance." + + -- Seth Forshee Wed, 12 Oct 2016 21:57:07 -0500 + +linux (4.8.0-24.26) yakkety; urgency=low + + [ Seth Forshee ] + + * Release Tracking Bug + - LP: #1632749 + + * lts-yakkety 4.8 cannot mount lvm raid1 (LP: #1631298) + - SAUCE: (no-up) dm raid: fix compat_features validation + + * kswapd0 100% CPU usage (LP: #1518457) + - SAUCE: (no-up) If zone is so small that watermarks are the same, stop zone + balance. + + -- Seth Forshee Wed, 12 Oct 2016 10:21:44 -0500 + +linux (4.8.0-23.25) yakkety; urgency=low + + [ Seth Forshee ] + + * Release Tracking Bug + - LP: #1632484 + + * [Trusty->Yakkety] powerpc/64: Fix incorrect return value from + __copy_tofrom_user (LP: #1632462) + - SAUCE: (no-up) powerpc/64: Fix incorrect return value from + __copy_tofrom_user + + * Ubuntu 16.10: Oops panic in move_page_tables/page_remove_rmap after running + memory_stress_ng. (LP: #1628976) + - SAUCE: (no-up) powerpc/pseries: Fix stack corruption in htpe code + + * Paths not failed properly when unmapping virtual FC ports in VIOS (using + ibmvfc) (LP: #1632116) + - scsi: ibmvfc: Fix I/O hang when port is not mapped + + * [Ubuntu16.10]KV4.8: kernel livepatch config options are not set + (LP: #1626983) + - [Config] Enable live patching on powerpc/ppc64el + + * CONFIG_AUFS_XATTR is not set (LP: #1557776) + - [Config] CONFIG_AUFS_XATTR=y + + * Yakkety update to 4.8.1 stable release (LP: #1632445) + - arm64: debug: avoid resetting stepping state machine when TIF_SINGLESTEP + - Using BUG_ON() as an assert() is _never_ acceptable + - usb: misc: legousbtower: Fix NULL pointer deference + - Staging: fbtft: Fix bug in fbtft-core + - usb: usbip: vudc: fix left shift overflow + - USB: serial: cp210x: Add ID for a Juniper console + - Revert "usbtmc: convert to devm_kzalloc" + - ALSA: hda - Adding one more ALC255 pin definition for headset problem + - ALSA: hda - Fix headset mic detection problem for several Dell laptops + - ALSA: hda - Add the top speaker pin config for HP Spectre x360 + - Linux 4.8.1 + + * PSL data cache should be flushed before resetting CAPI adapter + (LP: #1632049) + - cxl: Flush PSL cache before resetting the adapter + + * thunder nic: avoid link delays due to RX_PACKET_DIS (LP: #1630038) + - net: thunderx: Don't set RX_PACKET_DIS while initializing + + * crypto/vmx/p8_ghash memory corruption (LP: #1630970) + - crypto: ghash-generic - move common definitions to a new header file + - crypto: vmx - Fix memory corruption caused by p8_ghash + - crypto: vmx - Ensure ghash-generic is enabled + + * arm64: SPCR console not autodetected (LP: #1630311) + - of/serial: move earlycon early_param handling to serial + - [Config] CONFIG_ACPI_SPCR_TABLE=y + - ACPI: parse SPCR and enable matching console + - ARM64: ACPI: enable ACPI_SPCR_TABLE + - serial: pl011: add console matching function + + * include/linux/security.h header syntax error with !CONFIG_SECURITYFS + (LP: #1630990) + - SAUCE: (no-up) include/linux/security.h -- fix syntax error with + CONFIG_SECURITYFS=n + + * sha1-powerpc returning wrong results (LP: #1629977) + - crypto: sha1-powerpc - little-endian support + + -- Seth Forshee Tue, 11 Oct 2016 16:38:45 -0500 + +linux (4.8.0-22.24) yakkety; urgency=low + + * CVE-2016-7039 (LP: #1631287) + - SAUCE: net: add recursion limit to GRO + + -- Andy Whitcroft Fri, 07 Oct 2016 22:46:28 +0100 + +linux (4.8.0-21.23) yakkety; urgency=low + + [ Tim Gardner ] + + * Release Tracking Bug + - LP: #1630279 + + * powerpc 4.8.0-17 fails to boot on PowerMac G5 (LP: #1628968) + - Revert "Revert "powerpc: Simplify module TOC handling"" + + * Regression tests can not detect binfmt_elf mmpa semantic change + (LP: #1630069) + - SAUCE: apparmor: add flag to detect semantic change, to binfmt_elf mmap + + * Autofs parameter substitution broken in kernel 4.4.0-38 and 4.4.0-40 + (LP: #1629204) + - SAUCE: (namespace) autofs4: Use real_cred for requestor's ids + + -- Tim Gardner Tue, 04 Oct 2016 08:01:21 -0600 + +linux (4.8.0-20.22) yakkety; urgency=low + + [ Tim Gardner ] + + * Release Tracking Bug + - LP: #1629730 + + [ Upstream Kernel Changes ] + + * rebase to v4.8 + + -- Tim Gardner Sun, 02 Oct 2016 19:10:40 -0600 + +linux (4.8.0-19.21) yakkety; urgency=low + + [ Tim Gardner ] + + * Release Tracking Bug + - LP: #1629057 + + * 4.8.0 kernels do not complete boot process on VM (LP: #1627198) + - [Config] CONFIG_HARDENED_USERCOPY_PAGESPAN=n + + * mount-image-callback cannot mount partitioned disk image (LP: #1628336) + - SAUCE: nbd: Only delay uevent until connected + + * Support snaps inside of lxd containers (LP: #1611078) + - apparmor: add interface to be able to grab loaded policy + - securityfs: update interface to allow inode_ops, and setup from vfs fns + - apparmor: refactor aa_prepare_ns into prepare_ns and create_ns routines + - apparmor: add __aa_find_ns fn + - apparmor: add mkdir/rmdir interface to manage policy namespaces + - apparmor: fix oops in pivot_root mediation + - apparmor: fix warning that fn build_pivotroot discards const + - apparmor: add interface to advertise status of current task stacking + - apparmor: update policy permissions to consider ns being viewed/managed + - apparmor: add per ns policy management interface + - apparmor: bump domain stacking version to 1.2 + + * linux-image-extra-4.8.0-17-generic does not provide many sound card modules + (LP: #1628523) + - [Config] CONFIG_ZONE_DMA=y for generic + + * Yakkety - disable ARCH_ZX (LP: #1628503) + - [Config] armhf: disable ARCH_ZX + + * Enable switchdev config parameter for Yakkety (LP: #1628241) + - [Config] CONFIG_NET_SWITCHDEV=y for amd64/arm64 + + * Ubuntu 16.10 kernel v4.8: Installation failing on Habanero with Shiner card + (LP: #1628009) + - firmware: Update bnx2x to 7.13.1.0 + + * vNIC driver missing in 4.8 kernel package (LP: #1628187) + - [Config] Enable CONFIG_IBMVNIC=m + + * Yakkety - armhf: MFD_TPS65217 and REGULATOR_TPS65217 are boot essential + (LP: #1628112) + - [Config] armhf: MFD_TPS65217=y && REGULATOR_TPS65217=y + + * Miscellaneous Ubuntu changes + - Rebase to v4.8-rc8 + - [Config] skip Ubuntu-4.8.0-18.20 + - [Config] missing modules in armhf/s390x + + * Miscellaneous Ubuntu changes + - rebase to v4.8-rc8 + + -- Leann Ogasawara Sun, 25 Sep 2016 12:13:35 -0700 + +linux (4.8.0-17.19) yakkety; urgency=low + + * Release Tracking Bug + - LP: #1627387 + + * build squashfs into xenial kernels by default (LP: #1593134) + - Remove squashfs udeb + + * [Yakkety] Fix up ATA_GENERIC to match annotations file. (LP: #1627322) + - Add d-i support for ata_generic + + * [Yakkety] Fix up CONFIG_BLK_DEV_SD to match annotations (LP: #1627330) + - [Config] Enforce CONFIG_BLK_DEV_SD=y,CONFIG_BLK_DEV_SR=y + + * [Yakkety] Fix up ATA_PIIX to match annotations file (LP: #1627324) + - [Config] Enforce CONFIG_ATA_PIIX=y for amd64/i386 + + * Yakkety - USB drivers must be built in (LP: #1627323) + - Update annotation enforcement for CONFIG_USB_[E|O|U|X]HCI_HCD + + * 4.8.0-16.17: genirq: Flags mismatch serial vs goldfish_pdev_bus + (LP: #1627052) + - [Config] CONFIG_GOLDFISH=n + + * yakkety 4.8, remove module noise kernel-4.8 (LP: #1626104) + - Revert "UBUNTU: SAUCE: Clear Linux: bootstats: add printk's to measure boot + time in more detail" + + * Permission denied in CIFS with kernel 4.4.0-38 (LP: #1626112) + - SAUCE: Fix regression which breaks DFS mounting + + * Miscellaneous Ubuntu changes + - [Config] apply xenial configuration annotations + - s390x -- DEBUG_RODATA is now valid + - [Config] s390x -- CONFIG_SQUASHFS=y + - [Config] s390x -- CONFIG_ECRYPT_FS=y + - [Config] Enable CONFIG_ACPI_PCI_SLOT=y for arm64 + - [Config] Enable CONFIG_ACPI_HED=y for arm64 + - [Config] Enable CONFIG_QUICC_ENGINE=y + + * Miscellaneous upstream changes + - annotations: pull back to xenial + + -- Leann Ogasawara Sat, 24 Sep 2016 21:31:31 -0700 + +linux (4.8.0-16.17) yakkety; urgency=low + + [ Tim Gardner ] + + * Release Tracking Bug + - LP: #1626768 + + * Support ARM GIC ITS in ACPI mode (LP: #1626631) + - [Config] CONFIG_ACPI_IORT=y + - SAUCE: ACPI: I/O Remapping Table (IORT) initial support + - SAUCE: ACPI: Add new IORT functions to support MSI domain handling + - SAUCE: irqchip/gicv3-its: Cleanup for ITS domain initialization + - SAUCE: irqchip/gicv3-its: Refactor ITS DT init code to prepare for ACPI + - SAUCE: irqchip/gicv3-its: Probe ITS in the ACPI way + - SAUCE: irqchip/gicv3-its: Factor out PCI-MSI part that might be reused for ACPI + - SAUCE: irqchip/gicv3-its: Use MADT ITS subtable to do PCI/MSI domain initialization + - SAUCE: PCI/MSI: Setup MSI domain on a per-device basis using IORT ACPI table + + * 4.8 dropped CONFIG_ATA=y (breaks systemd's TEST-08-ISSUE-2730 upstream test) + (LP: #1626394) + - [Config] CONFIG_ATA=y + + * Yakkety: Enable drivers with respect to Xenial (LP: #1626543) + - [Config] CONFIG_VMD=m + - [Config] CONFIG_MAC80211_RC_MINSTREL_VHT=y for all arches + - [Config] CONFIG_OF=y for all arches + - [Config] CONFIG_BLK_DEV_NVME_SCSI=y + - [Config] Xenial device settings sync with amd64 + - [Config] Xenial device settings sync with i386 + - [Config] CONFIG_MTD_UBI_GLUEBI=m + - [Config] Xenial device settings sync with armhf + - [Config] Xenial device settings sync with arm64 + + * yakkety 4.8, missing config CONFIG_USERFAULTFD=y (LP: #1626149) + - [Config] CONFIG_USERFAULTFD=y + + * 4.8 regression: SLAB is being used instead of SLUB (LP: #1626564) + - [Config] CONFIG_SLUB=y + + * image won't boot after upgrading to yakkety's 4.8 kernel because efi + (LP: #1626158) + - add nls_cp437 to the generic.inclusion-list + + -- Tim Gardner Thu, 22 Sep 2016 06:51:45 -0600 + +linux (4.8.0-15.16) yakkety; urgency=low + + [ Tim Gardner ] + + * Release Tracking Bug + - LP: #1626239 + + * image won't boot after upgrading to yakkety's 4.8 kernel because efi + (LP: #1626158) + - [Config] CONFIG_FAT_DEFAULT_IOCHARSET=iso8859-1 + - [Config] CONFIG_NLS_CODEPAGE_437=y + - [Config] CONFIG_VFAT_FS=y + + * Miscellaneous Ubuntu changes + - SAUCE: seccomp: log actions even when audit is disabled + + -- Tim Gardner Wed, 21 Sep 2016 06:41:03 -0600 + +linux (4.8.0-14.15) yakkety; urgency=low + + * CVE-2016-1575 (LP: #1534961) + - SAUCE: overlayfs: Skip permission checking for trusted.overlayfs.* xattrs + - SAUCE: overlayfs: Be more careful about copying up sxid files + - SAUCE: overlayfs: Propogate nosuid from lower and upper mounts + + * CVE-2016-1576 (LP: #1535150) + - SAUCE: overlayfs: Skip permission checking for trusted.overlayfs.* xattrs + - SAUCE: overlayfs: Be more careful about copying up sxid files + - SAUCE: overlayfs: Propogate nosuid from lower and upper mounts + + * overlay: mkdir fails if directory exists in lowerdir in a user namespace + (LP: #1531747) + - SAUCE: overlayfs: Skip permission checking for trusted.overlayfs.* xattrs + + * Miscellaneous Ubuntu changes + - [Config] CONFIG_PM_WAKELOCKS=y + - [Config] CONFIG_CLEANCACHE=y + - [Config] CONFIG_WQ_POWER_EFFICIENT_DEFAULT=y + - [Config] CONFIG_PROCESSOR_SELECT=y + - [Config] Enabled some networking options + - SAUCE: overlayfs: Enable user namespace mounts + + -- Leann Ogasawara Tue, 20 Sep 2016 13:56:58 -0700 + +linux (4.8.0-13.14) yakkety; urgency=low + + [ Tim Gardner ] + + * Release Tracking Bug + - LP: #1625733 + + * fails to mount ext4 crypto-crc32 is missing (LP: #1625728) + - [Config] Add some CRC crypto modules to d-i + + * Linux netfilter IPT_SO_SET_REPLACE memory corruption (LP: #1555338) + - SAUCE: [nf,v2] netfilter: x_tables: don't rely on well-behaving userspace + + * Brightness control on Lenovo ThinkPad T430 does not work. (LP: #1183856) + - SAUCE: (no-up) ACPI: Disable Windows 8 compatibility for some Lenovo + ThinkPads + + * Option GE0301 3G modem doesn't work (LP: #348861) + - SAUCE: (no-up) Added quirk to recognize GE0301 3G modem as an interface. + + * [regression 4.4 -> 4.8] Please re-enable CONFIG_TOUCHSCREEN_ELAN + (LP: #1625259) + - [Config] CONFIG_TOUCHSCREEN_ELAN=m for all arches + + * Miscellaneous Ubuntu changes + - SAUCE: (namespace) block_dev: Forbid unprivileged mounting when device is + opened for writing + - SAUCE: fan: add VXLAN implementation + - [Config] CONFIG_VFIO=m for ppc64el + + -- Tim Gardner Mon, 19 Sep 2016 10:50:29 -0600 + +linux (4.8.0-12.13) yakkety; urgency=low + + [ Tim Gardner ] + + * Release Tracking Bug + - LP: #1625233 + + * Miscellaneous Ubuntu changes + - rebase to v4.8-rc7 + - [Config] CONFIG_SCSI_DEBUG=m for all arches + + -- Tim Gardner Mon, 19 Sep 2016 06:35:21 -0600 + +linux (4.8.0-11.12) yakkety; urgency=low + + * change_hat is logging failures during expected hat probing (LP: #1615893) + - SAUCE: apparmor: Fix auditing behavior for change_hat probing + + * deleted files outside of the namespace are not being treated as + disconnected + (LP: #1615892) + - SAUCE: apparmor: deleted dentries can be disconnected + + * stacking to unconfined in a child namespace confuses mediation + (LP: #1615890) + - SAUCE: apparmor: special case unconfined when determining the mode + + * apparmor module parameters can be changed after the policy is locked + (LP: #1615895) + - SAUCE: apparmor: fix: parameters can be changed after policy is locked + + * AppArmor profile reloading causes an intermittent kernel BUG (LP: + #1579135) + - SAUCE: apparmor: fix vec_unique for vectors larger than 8 + + * label vec reductions can result in reference labels instead of direct + access + to labels (LP: #1615889) + - SAUCE: apparmor: reduction of vec to single entry is just that entry + + * profiles from different namespaces can block other namespaces from being + able to load a profile (LP: #1615887) + - SAUCE: apparmor: profiles in one ns can affect mediation in another ns + + * The label build for onexec when stacking is wrong (LP: #1615881) + - SAUCE: apparmor: Fix label build for onexec stacking. + + * The inherit check for new to old label comparison for domain transitions + is + wrong (LP: #1615880) + - SAUCE: apparmor: Fix new to old label comparison for domain transitions + + * warning stack trace while playing with apparmor namespaces (LP: #1593874) + - SAUCE: apparmor: fix stack trace when removing namespace with profiles + + * __label_update proxy comparison test is wrong (LP: #1615878) + - SAUCE: apparmor: Fix __label_update proxy comparison test + + * reading /sys/kernel/security/apparmor/profiles requires CAP_MAC_ADMIN + (LP: #1560583) + - SAUCE: apparmor: Allow ns_root processes to open profiles file + - SAUCE: apparmor: Consult sysctl when reading profiles in a user ns + + * policy namespace stacking (LP: #1379535) + - SAUCE: (no-up) apparmor: rebase of apparmor3.5-beta1 snapshot for 4.8 + - SAUCE: add a sysctl to enable unprivileged user ns AppArmor policy loading + + * Miscellaneous Ubuntu changes + - [Debian] Dynamically determine linux udebs package name + - [Debian] d-i -- fix dtb handling in new kernel-wedge form + - SAUCE: apparmor: Fix FTBFS due to bad include path + - SAUCE: apparmor: add data query support + - [Config] Set CONFIG_SECURITY_APPARMOR_UNCONFINED_INIT=y + + * Miscellaneous upstream changes + - fixup backout policy view capable for forward port + - apparmor: fix: Rework the iter loop for label_update + - apparmor: add more assertions for updates/merges to help catch errors + - apparmor: Make pivot root transitions work with stacking + - apparmor: convert delegating deleted files to mediate deleted files + - apparmor: add missing parens. not a bug fix but highly recommended + - apparmor: add a stack_version file to allow detection of bug fixes + - apparmor: push path lookup into mediation loop + - apparmor: default to allowing unprivileged userns policy + - apparmor: fix: permissions test to view and manage policy + - apparmor: Add Basic ns cross check condition for ipc + + -- Leann Ogasawara Sat, 17 Sep 2016 10:03:16 -0700 + +linux (4.8.0-10.11) yakkety; urgency=low + + * Miscellaneous Ubuntu changes + - ubuntu: vbox -- update to 5.1.6-dfsg-1 + - SAUCE: Enable vbox build + + -- Tim Gardner Thu, 15 Sep 2016 07:10:51 -0600 + +linux (4.8.0-9.10) yakkety; urgency=low + + * Miscellaneous Ubuntu changes + - [Config] arm64: CONFIG_ARCH_THUNDER=y + - [Config] arm64: CONFIG_PCI_HOST_THUNDER_*=y + - [Config] arm64: CONFIG_NUMA_BALANCING_DEFAULT_ENABLED=y + - [Config] arm64: CONFIG_DRM_AST=m + - [Config] arm64: CONFIG_FRAMEBUFFER_CONSOLE=y + - d-i: initrd needs ext4 and scsi modules + - SAUCE: AUFS aufs4.x-rcN 20160912 + - [Config] Enable CONFIG_GPIO_XGENE* + - [Config] Disable CONFIG_POWER_RESET_XGENE + - [Config] CONFIG_EDAC_XGENE=m + - [Config] CONFIG_ARM64_ACPI_PARKING_PROTOCOL=y + - [Config] CONFIG_XGENE_DMA=m + + -- Tim Gardner Mon, 12 Sep 2016 10:26:12 -0600 + +linux (4.8.0-8.9) yakkety; urgency=low + + * New device ID for Kabypoint (LP: #1622469) + - mfd: lpss: Add Intel Kaby Lake PCH-H PCI IDs + - SAUCE: i2c: i801: Add support for Kaby Lake PCH-H + + * Miscellaneous Ubuntu changes + - rebase to v4.8-rc6 + - SAUCE: (noup) Update spl to 0.6.5.8-0ubuntu1, zfs to 0.6.5.8-0ubuntu1 + + [ Upstream Kernel Changes ] + + * rebase to v4.8-rc6 + - LP: #1617900 + + -- Tim Gardner Fri, 09 Sep 2016 10:53:40 -0600 + +linux (4.8.0-7.8) yakkety; urgency=low + + * Miscellaneous Ubuntu changes + - [Debian] Use src_pkg_name when constructing udeb control files + + -- Tim Gardner Fri, 09 Sep 2016 07:26:25 -0600 + +linux (4.8.0-6.7) yakkety; urgency=low + + * Enable virtual scsi server driver for Power (LP: #1615665) + - SAUCE: Ibmvscsis: Properly deregister target sessions + - SAUCE: Return TCMU-generated sense data to fabric module + - SAUCE: Ibmvscsis: Code cleanup of print statements + - SAUCE: Ibmvscsis: Fixed a bug reported by Dan Carpenter + + * Miscellaneous Ubuntu changes + - [Config] CONFIG_XEN_FBDEV_FRONTEND=m + - rebase to v4.8-rc5 + + [ Upstream Kernel Changes ] + + * rebase to v4.8-rc5 + + -- Tim Gardner Thu, 01 Sep 2016 12:09:26 -0600 + +linux (4.8.0-5.6) yakkety; urgency=low + + * support compressed kernels on arm64 (LP: #1384955) + - [Config] Switch to compressed Image on arm64 + + * Miscellaneous Ubuntu changes + - SAUCE: (namespace) security/integrity: Harden against malformed xattrs + - SAUCE: (namespace) block_dev: Support checking inode permissions in + lookup_bdev() + - SAUCE: (namespace) block_dev: Check permissions towards block device inode + when mounting + - SAUCE: (namespace) mtd: Check permissions towards mtd block device inode + when mounting + - SAUCE: (namespace) fs: Allow superblock owner to change ownership of inodes + - SAUCE: (namespace) fs: Don't remove suid for CAP_FSETID for userns root + - SAUCE: (namespace) fs: Allow superblock owner to access do_remount_sb() + - SAUCE: (namespace) capabilities: Allow privileged user in s_user_ns to set + security.* xattrs + - SAUCE: (namespace) fs: Allow CAP_SYS_ADMIN in s_user_ns to freeze and thaw + filesystems + - SAUCE: (namespace) posix_acl: Export posix_acl_fix_xattr_userns() to modules + - SAUCE: (namespace) fuse: Add support for pid namespaces + - SAUCE: (namespace) fuse: Support fuse filesystems outside of init_user_ns + - SAUCE: (namespace) fuse: Translate ids in posix acl xattrs + - SAUCE: (namespace) fuse: Restrict allow_other to the superblock's namespace + or a descendant + - SAUCE: (namespace) fuse: Allow user namespace mounts + - SAUCE: (namespace) ext4: Add support for unprivileged mounts from user + namespaces + - SAUCE: (namespace) ext4: Add module parameter to enable user namespace + mounts + - rebase to v4.8-rc4 + + [ Upstream Kernel Changes ] + + * rebase to v4.8-rc4 + + -- Tim Gardner Thu, 25 Aug 2016 07:13:03 -0600 + +linux (4.8.0-4.5) yakkety; urgency=low + + * Miscellaneous Ubuntu changes + - [Config] CONFIG_AUFS_FS=m + - SAUCE: AUFS 27ef55c6d5f4726b33f60b33a9888963d26fa7fb + + -- Tim Gardner Tue, 23 Aug 2016 12:25:59 -0600 + +linux (4.8.0-3.4) yakkety; urgency=low + + * MacBookPro11,4 fails to poweroff or suspend (LP: #1587714) + - SAUCE: PCI: Workaround to enable poweroff on Mac Pro 11 + + * Miscellaneous Ubuntu changes + - rebase to v4.8-rc3 + + -- Tim Gardner Thu, 18 Aug 2016 10:33:07 -0600 + +linux (4.8.0-2.3) yakkety; urgency=low + + * Miscellaneous Ubuntu changes + - [Config] Add fuse to inclusion list + - SAUCE: update spl/zfs to support v4.8 + + * Miscellaneous upstream changes + - Revert "UBUNTU: [Debian] do_zfs=false" + + -- Tim Gardner Wed, 17 Aug 2016 08:06:33 -0600 + +linux (4.8.0-1.2) yakkety; urgency=low + + * Miscellaneous Ubuntu changes + - [Config] Enabled enforcement for CONFIG_HOTPLUG_PCI_PCIE + - [Config] Enabled enforcement for CONFIG_NVRAM + - [Config] Enabled enforcement for CONFIG_FRAMEBUFFER_CONSOLE + - [Config] Enabled enforcement for CONFIG_DRM_MGAG200 + - [Config] Enabled enforcement for CONFIG_INPUT_UINPUT + - [Config] Enabled enforcement for CONFIG_THERM_ADT746X + - [Config] Enabled enforcement for CONFIG_REGULATOR_TWL4030 + - [Config] Enabled enforcement for CONFIG_SECCOMP + - [Config] Enabled enforcement for + - rebase to v4.8-rc2 + - [Config] Dropped CONFIG_OVERLAY_FS_V1 from annotations + - [Config] CONFIG_SECURITY_PERF_EVENTS_RESTRICT=y + - SAUCE: security,perf: Allow further restriction of perf_event_open + + [ Upstream Kernel Changes ] + + * rebase to v4.8-rc2 + + -- Tim Gardner Thu, 11 Aug 2016 11:08:14 -0600 + +linux (4.8.0-0.1) yakkety; urgency=low + + [ Upstream Kernel Changes ] + + * rebase to v4.8-rc1 + - LP: #1607647 + - LP: #1498667 + - LP: #1592547 + - LP: #1319984 + - LP: #1268727 + - LP: #1600623 + - LP: #1465724 + - LP: #1333569 + + -- Tim Gardner Tue, 02 Aug 2016 14:23:12 -0600 + +linux (4.8.0-0.0) yakkety; urgency=low + + * empty stanza + + -- Tim Gardner Tue, 02 Aug 2016 10:53:17 -0600 + +linux (4.7.0-0.2) yakkety; urgency=low + + * Miscellaneous Ubuntu changes fixing various FTBS issues + - [Config] CONFIG_BLK_DEV_CRYPTOLOOP=m + - [Config] make powerpc udeb block modules optional + - [Config] CONFIG_PLIP=m + - [Config] CONFIG_IRDA=m armhf/arm64 + - [Config] CONFIG_IPMI_HANDLER=m armhf/arm64 + - [Config] CONFIG_MOUSE_PS2=m + - [Config] remove ppc64el fb-modules + + -- Tim Gardner Mon, 01 Aug 2016 10:00:57 -0600 + +linux (4.7.0-0.1) yakkety; urgency=low + + [ Upstream Kernel Changes ] + + * rebase to v4.7 + - LP: #972604 + + -- Tim Gardner Mon, 06 Jun 2016 12:00:45 -0600 + +linux (4.7.0-0.0) yakkety; urgency=low + + [ Tim Gardner ] + + * Release Tracking Bug + - LP: #1588856 + + * linux: 4.6 kernel fails to boot on ppc64el multi-path system (LP: #1588421) + - scsi_dh_alua: do not fail for unknown VPD identification + + * [Hyper-V] Put tools/hv/lsvmbus in /usr/sbin (LP: #1585311) + - [Config] Install lsvmbus in cloud tools + - SAUCE: tools/hv/lsvmbus -- convert to python3 + - SAUCE: tools/hv/lsvmbus -- add manual page + + * boot stalls on USB detection errors (LP: #1437492) + - usb: core: hub: hub_port_init lock controller instead of bus + + * [Bug]KNL:Spread MWAIT cache lines over all nodes (LP: #1585850) + - kernek/fork.c: allocate idle task for a CPU always on its local node + + * VirtIO (and probably other modules as well) is built-in, make it modular... + (LP: #1475078) + - [Config] CONFIG_VIRTIO_*=m for all but s390x + - [Config] CONFIG_USB=m + - [Config] CONFIG_BLK_DEV_*=m + - [Config] CONFIG_ATA=m + - [Config] CONFIG_SCSI=m + - [Config] CONFIG_DEVFREQ_GOV_*=m + - [Config] CONFIG_XEN_NETDEV_*=m + - [Config] CONFIG_AGP=m + - [Config] CONFIG_ECRYPT_FS=m + - [Config] CONFIG_ACPI_*=m + - [Config] CONFIG_CPU_FREQ_GOV_*=m for all but powerpc/ppc64el + - [Config] Modularize some CRYPTO + - [Config] CONFIG_FDDI=m + - [Config] CONFIG_FIXED_PHY=m + - [Config] CONFIG_VFAT_FS=m for all but armhf + - [Config] CONFIG_TUN=m + - [Config] CONFIG_UNIX=m + - [Config] CONFIG_TRUSTED_KEYS=m + - [Config] CONFIG_LEDS_CLASS=m for amd64,i386,ppc64el + + * debian.master/.../getabis bogus warnings "inconsistant compiler versions" + and "not a git repository" (LP: #1584890) + - [debian] getabis: Only git add $abidir if running in local repo + - [debian] getabis: Fix inconsistent compiler versions check + + * conflicting modules in udebs - arc4.ko (LP: #1582991) + - [Config] Remove arc4 from nic-modules + + * arm64: statically link rtc-efi (LP: #1583738) + - [Config] Link rtc-efi statically on arm64 + + * Miscellaneous Ubuntu changes + - [Debian] zfs: transform symlink into referent file/dir + - [Debian] Added tristate.sh + - [Config] CONFIG_FUSE_FS=m + - [Config] CONFIG_ACPI_APEI_ERST_DEBUG=m + - [Config] CONFIG_PSTORE_CONSOLE=y + - Added Snapcraft files + - [Config] Mark CONFIG_UNIX enforced + + * Miscellaneous upstream changes + - Revert "UBUNTU: [Config] CONFIG_UNIX=m" + + -- Tim Gardner Tue, 17 May 2016 11:20:20 -0600 + +linux (4.6.0-6.7) yakkety; urgency=low + + [ Tim Gardner ] + + * Release Tracking Bug + - LP: #1582753 + + * Unsharing user and ipc namespaces simultaneously makes mqueue unmountable + (LP: #1582378) + - SAUCE: (namespace) mqueue: Super blocks must be owned by the user ns which + owns the ipc ns + + * Miscellaneous Ubuntu changes + - [Config] Add Description to kernel-image udeb + - SAUCE: (noup) mm: Use phys_addr_t for reserve_bootmem_region arguments + - SAUCE: (noup) Update spl to 0.6.5.7-0ubuntu1, zfs to 0.6.5.7-0ubuntu1 + + * Miscellaneous upstream changes + - Drivers: hv: vmbus: Introduce functions for estimating room in the ring buffer + - Drivers: hv: vmbus: Use READ_ONCE() to read variables that are volatile + - Drivers: hv: vmbus: Use the new virt_xx barrier code + - Drivers: hv: vmbus: Export the vmbus_set_event() API + - Drivers: hv: vmbus: Move some ring buffer functions to hyperv.h + - Drivers: hv: vmbus: Implement APIs to support "in place" consumption of vmbus packets + - drivers:hv: Lock access to hyperv_mmio resource tree + - drivers:hv: Make a function to free mmio regions through vmbus + - drivers:hv: Reverse order of resources in hyperv_mmio + - drivers:hv: Track allocations of children of hv_vmbus in private resource tree + - drivers:hv: Record MMIO range in use by frame buffer + - drivers:hv: Separate out frame buffer logic when picking MMIO range + - Drivers: hv: kvp: fix IP Failover + - Drivers: hv: vmbus: handle various crash scenarios + - Drivers: hv: balloon: don't crash when memory is added in non-sorted order + - Drivers: hv: balloon: reset host_specified_ha_region + + [ Tim Gardner ] + + * Dropped hv SAUCE patches in favor of linux-next. + + -- Tim Gardner Mon, 16 May 2016 13:50:30 -0600 + +linux (4.6.0-5.6) yakkety; urgency=low + + [ Tim Gardner ] + + * Release Tracking Bug + - LP: #1582351 + + * aufs CONFIG_AUFS_EXPORT build option should be enabled (LP: #1121699) + - [Config] enable CONFIG_AUFS_EXPORT + + * promote *_diag modules from linux-image-extra to linux-image (LP: #1580355) + - [Config] Update inclusion list for CRIU + + * zfs: disable module checks for zfs when cross-compiling (LP: #1581127) + - [Debian] disable zfs module checks when cross-compiling + + * insecure overlayfs xattrs handling in copy_up (LP: #1534961) + - SAUCE: overlayfs: Propogate nosuid from lower and upper mounts + + * overlayfs over fuse should refuse copy_up of files if uid/gid not mapped + (LP: #1535150) + - SAUCE: overlayfs: Propogate nosuid from lower and upper mounts + + * Ubuntu-4.6.0-5.6 configuration has CONFIG_GOLDFISH and CONFIG_GOLDFISH_BUS + enabled, breaking serial support on normal systems (LP: #1580960) + - [Config] disable CONFIG_GOLDFISH + + * Miscellaneous Ubuntu changes + - [Config] d-i -- update local configuration to new form + - [Config] kernel-wedge -- switch to explicit versions + - [Config] powerpc64-smp --> generic + - [Config] CONFIG_AUFS_FS=m + - SAUCE: AUFS + - SAUCE: (namespace) fs: Add user namesapace member to struct super_block + - SAUCE: (namespace) fs: Limit file caps to the user namespace of the super block + - SAUCE: (namespace) Smack: Add support for unprivileged mounts from user namespaces + - SAUCE: (namespace) fs: fix a posible leak of allocated superblock + - SAUCE: (namespace) fs: Allow sysfs and cgroupfs to share super blocks between user namespaces + - SAUCE: (namespace) block_dev: Support checking inode permissions in lookup_bdev() + - SAUCE: (namespace) block_dev: Check permissions towards block device inode when mounting + - SAUCE: (namespace) fs: Treat foreign mounts as nosuid + - SAUCE: (namespace) selinux: Add support for unprivileged mounts from user namespaces + - SAUCE: (namespace) userns: Replace in_userns with current_in_userns + - SAUCE: (namespace) Smack: Handle labels consistently in untrusted mounts + - SAUCE: (namespace) fs: Check for invalid i_uid in may_follow_link() + - SAUCE: (namespace) cred: Reject inodes with invalid ids in set_create_file_as() + - SAUCE: (namespace) fs: Refuse uid/gid changes which don't map into s_user_ns + - SAUCE: (namespace) fs: Update posix_acl support to handle user namespace mounts + - SAUCE: (namespace) fs: Allow superblock owner to change ownership of inodes with unmappable ids + - SAUCE: (namespace) fs: Don't remove suid for CAP_FSETID in s_user_ns + - SAUCE: (namespace) fs: Allow superblock owner to access do_remount_sb() + - SAUCE: (namespace) capabilities: Allow privileged user in s_user_ns to set security.* xattrs + - SAUCE: (namespace) fuse: Add support for pid namespaces + - SAUCE: (namespace) fuse: Support fuse filesystems outside of init_user_ns + - SAUCE: (namespace) fuse: Restrict allow_other to the superblock's namespace or a descendant + - SAUCE: (namespace) fuse: Allow user namespace mounts + - SAUCE: (namespace) mtd: Check permissions towards mtd block device inode when mounting + - SAUCE: (namespace) block_dev: Forbid unprivileged mounting when device is opened for writing + - SAUCE: (namespace) fs: Update i_[ug]id_(read|write) to translate relative to s_user_ns + - SAUCE: (namespace) quota: Add support for user namespace mounts + - SAUCE: (namespace) evm: Translate user/group ids relative to s_user_ns when computing HMAC + - SAUCE: (namespace) fs: Allow CAP_SYS_ADMIN in s_user_ns to freeze and thaw filesystems + - SAUCE: (namespace) ext4: Add support for unprivileged mounts from user namespaces + - SAUCE: (namespace) fuse: Add module parameter to enable user namespace mounts + - SAUCE: (namespace) ext4: Add module parameter to enable user namespace mounts + - rebase to v4.6 + - SAUCE: Powernv: Remove the usage of PACAR1 from opal wrappers + - SAUCE: powerpc/book3s: Fix TB corruption in guest exit path on HMI interrupt. + + * Miscellaneous upstream changes + - Revert "powerpc/eeh: Fix crash in eeh_add_device_early() on Cell" + - powerpc/iommu: Remove the dependency on EEH struct in DDW mechanism + + [ Upstream Kernel Changes ] + + * rebase to v4.6 + + -- Tim Gardner Mon, 09 May 2016 12:08:54 -0600 + +linux (4.6.0-4.5) yakkety; urgency=low + + * Kernel Panic on EC2 After Upgrading from 14.04 to 16.04 via do-release- + upgrade -d (LP: #1573231) + - SAUCE: (no-up) x86/topology: Handle CPUID bogosity gracefully + + * Really cleaned out the last of the i915_bpo SAUCE patches. ricotz on + IRC pointed out some leftover SAUCE patches that were causing issues. + + * Dropped the attempt to convert powerpc64-smb to generic. kernel-wedge + has some issues. + + -- Tim Gardner Mon, 09 May 2016 10:56:54 -0600 + +linux (4.6.0-3.4) xenial; urgency=low + + * Release Tracking Bug + - LP: #1579594 + + * linux-generic: enable linux-extra split on all architectures (LP: #1568832) + - [Config] Generate an -extras package for arm64 and powerpc + + * Missing libunwind support in perf (LP: #1248289) + - [Config] Add liblzma-dev to enable libunwind support in perf + + * ZFS is confused by user namespaces (uid/gid mapping) when used with + acltype=posixac (LP: #1567558) + - zfs: Fix user namespaces uid/gid mapping + + * Miscellaneous Ubuntu changes + - rebase to v4.6-rc7 + + [ Upstream Kernel Changes ] + + * rebase to v4.6-rc7 + + -- Tim Gardner Thu, 05 May 2016 14:03:17 -0600 + +linux (4.6.0-2.3) yakkety; urgency=low + + * Miscellaneous Ubuntu changes + - [Config] CONFIG_AUFS_FS=m + - SAUCE: AUFS + - zfs: gcc build error: -Wbool-compare in metaslab.c + - zfs: Linux 4.6 compat: PAGE_CACHE_SIZE removal + - zfs: Fix ZPL miswrite of default POSIX ACL + - zfs: Linux 4.5 compat: Use xattr_handler->name for acl + - SAUCE: Dropped ubuntu/i915 + - SAUCE: Dropped ubuntu/dm-raid4-5 + + * Miscellaneous upstream changes + - Revert "UBUNTU: [Debian] Disable ZFS until an update catches it up with the + kernel" + + -- Tim Gardner Thu, 05 May 2016 10:41:17 -0600 + +linux (4.6.0-1.2) yakkety; urgency=low + + * Miscellaneous Ubuntu changes + - [Config] CONFIG_NR_CPUS=8192 for amd64 + + -- Tim Gardner Thu, 05 May 2016 07:25:31 -0600 + +linux (4.6.0-0.1) yakkety; urgency=low + + + [ Upstream Kernel Changes ] + + * rebase to v4.6-rc6 + - LP: #1564712 + - LP: #1555912 + - LP: #1552925 + - LP: #1546694 + - LP: #1549660 + - LP: #1549620 + - LP: #1542944 + - LP: #1542564 + - LP: #1533009 + - LP: #1533461 + - LP: #1529624 + - LP: #1522949 + + -- Tim Gardner Mon, 25 Apr 2016 14:24:45 -0600 + +linux (4.6.0-0.0) yakkety; urgency=low + + [ Kamal Mostafa ] + + * Release Tracking Bug + - LP: #1573817 + + * autoreconstruct: need to also generate extend-diff-ignore options for links + (LP: #1574362) + - [Packaging] autoreconstruct -- generate extend-diff-ignore for links + + * tipc: missing linearization of sk_buff (LP: #1567064) + - tipc: move linearization of buffers to generic code + + * [Hyper-V] In-flight PCI Passthrough Patches (LP: #1570124) + - SAUCE:(noup) drivers:hv: Lock access to hyperv_mmio resource tree + - SAUCE:(noup) drivers:hv: Call vmbus_mmio_free() to reverse + vmbus_mmio_allocate() + - SAUCE:(noup) drivers:hv: Reverse order of resources in hyperv_mmio + - SAUCE:(noup) drivers:hv: Track allocations of children of hv_vmbus in + private resource tree + - SAUCE:(noup) drivers:hv: Record MMIO range in use by frame buffer + - SAUCE:(noup) drivers:hv: Separate out frame buffer logic when picking MMIO + range + + * vbox: resync with 5.0.18-dfsg-2build1 (LP: #1571156) + - ubuntu: vbox -- update to 5.0.18-dfsg-2build1 + + * CONFIG_AUFS_XATTR is not set (LP: #1557776) + - [Config] CONFIG_AUFS_XATTR=y + + * CVE-2016-3672 (LP: #1568523) + - x86/mm/32: Enable full randomization on i386 and X86_32 + + * CVE-2016-3955 (LP: #1572666) + - USB: usbip: fix potential out-of-bounds write + + * Xenial update to v4.4.8 stable release (LP: #1573034) + - hwmon: (max1111) Return -ENODEV from max1111_read_channel if not + instantiated + - PKCS#7: pkcs7_validate_trust(): initialize the _trusted output argument + - parisc: Avoid function pointers for kernel exception routines + - parisc: Fix kernel crash with reversed copy_from_user() + - parisc: Unbreak handling exceptions from kernel modules + - ALSA: timer: Use mod_timer() for rearming the system timer + - ALSA: hda - Asus N750JV external subwoofer fixup + - ALSA: hda - Fix white noise on Asus N750JV headphone + - ALSA: hda - Apply fix for white noise on Asus N550JV, too + - mm: fix invalid node in alloc_migrate_target() + - powerpc/mm: Fixup preempt underflow with huge pages + - libnvdimm: fix smart data retrieval + - libnvdimm, pfn: fix uuid validation + - compiler-gcc: disable -ftracer for __noclone functions + - arm64: opcodes.h: Add arm big-endian config options before including arm + header + - drm/dp: move hw_mutex up the call stack + - drm/udl: Use unlocked gem unreferencing + - drm/radeon: add a dpm quirk for sapphire Dual-X R7 370 2G D5 + - drm/radeon: add another R7 370 quirk + - drm/radeon: add a dpm quirk for all R7 370 parts + - drm/amdgpu/gmc: move vram type fetching into sw_init + - drm/amdgpu/gmc: use proper register for vram type on Fiji + - xen/events: Mask a moving irq + - tcp: convert cached rtt from usec to jiffies when feeding initial rto + - tunnel: Clear IPCB(skb)->opt before dst_link_failure called + - net: jme: fix suspend/resume on JMC260 + - net: vrf: Remove direct access to skb->data + - net: qca_spi: Don't clear IFF_BROADCAST + - net: qca_spi: clear IFF_TX_SKB_SHARING + - net: fix bridge multicast packet checksum validation + - sctp: lack the check for ports in sctp_v6_cmp_addr + - mld, igmp: Fix reserved tailroom calculation + - tipc: Revert "tipc: use existing sk_write_queue for outgoing packet chain" + - qmi_wwan: add Sierra Wireless EM74xx device ID + - ipv6: re-enable fragment header matching in ipv6_find_hdr + - vxlan: fix missing options_len update on RX with collect metadata + - cdc_ncm: toggle altsetting to force reset before setup + - udp6: fix UDP/IPv6 encap resubmit path + - tcp: fix tcpi_segs_in after connection establishment + - ppp: release rtnl mutex when interface creation fails + - net: validate variable length ll headers + - ax25: add link layer header validation function + - packet: validate variable length ll headers + - bpf: avoid copying junk bytes in bpf_get_current_comm() + - sh_eth: fix NULL pointer dereference in sh_eth_ring_format() + - sh_eth: advance 'rxdesc' later in sh_eth_ring_format() + - qlcnic: Remove unnecessary usage of atomic_t + - qlcnic: Fix mailbox completion handling during spurious interrupt + - macvtap: always pass ethernet header in linear + - mlxsw: spectrum: Check requested ageing time is valid + - rocker: set FDB cleanup timer according to lowest ageing time + - bridge: allow zero ageing time + - ipv4: Don't do expensive useless work during inetdev destroy. + - net: Fix use after free in the recvmmsg exit path + - mlx4: add missing braces in verify_qp_parameters + - farsync: fix off-by-one bug in fst_add_one + - ath9k: fix buffer overrun for ar9287 + - ppp: ensure file->private_data can't be overridden + - tcp/dccp: remove obsolete WARN_ON() in icmp handlers + - qlge: Fix receive packets drop. + - net: bcmgenet: fix dma api length mismatch + - bonding: fix bond_get_stats() + - ipv4: fix broadcast packets reception + - ipv4: initialize flowi4_flags before calling fib_lookup() + - ppp: take reference on channels netns + - xfrm: Fix crash observed during device unregistration and decryption + - qmi_wwan: add "D-Link DWM-221 B1" device id + - ipv6: udp: fix UDP_MIB_IGNOREDMULTI updates + - bridge: Allow set bridge ageing time when switchdev disabled + - rtnl: fix msg size calculation in if_nlmsg_size() + - tun, bpf: fix suspicious RCU usage in tun_{attach, detach}_filter + - tuntap: restore default qdisc + - ipv4: l2tp: fix a potential issue in l2tp_ip_recv + - ipv6: l2tp: fix a potential issue in l2tp_ip6_recv + - ip6_tunnel: set rtnl_link_ops before calling register_netdevice + - ipv6: Count in extension headers in skb->network_header + - mpls: find_outdev: check for err ptr in addition to NULL check + - USB: uas: Limit qdepth at the scsi-host level + - USB: uas: Add a new NO_REPORT_LUNS quirk + - cdc-acm: fix NULL pointer reference + - KVM: x86: Inject pending interrupt even if pending nmi exist + - KVM: x86: reduce default value of halt_poll_ns parameter + - MIPS: Fix MSA ld unaligned failure cases + - pinctrl: pistachio: fix mfio84-89 function description and pinmux. + - pinctrl: sh-pfc: only use dummy states for non-DT platforms + - pinctrl: sunxi: Fix A33 external interrupts not working + - pinctrl: nomadik: fix pull debug print inversion + - pinctrl: freescale: imx: fix bogus check of of_iomap() return value + - au0828: fix au0828_v4l2_close() dev_state race condition + - au0828: Fix dev_state handling + - coda: fix error path in case of missing pdata on non-DT platform + - v4l: vsp1: Set the SRU CTRL0 register when starting the stream + - pcmcia: db1xxx_ss: fix last irq_to_gpio user + - rbd: use GFP_NOIO consistently for request allocations + - virtio: virtio 1.0 cs04 spec compliance for reset + - mac80211: properly deal with station hashtable insert errors + - mac80211: avoid excessive stack usage in sta_info + - mac80211: fix ibss scan parameters + - mac80211: fix unnecessary frame drops in mesh fwding + - mac80211: fix txq queue related crashes + - usb: renesas_usbhs: avoid NULL pointer derefernce in usbhsf_pkt_handler() + - usb: renesas_usbhs: disable TX IRQ before starting TX DMAC transfer + - usb: renesas_usbhs: fix to avoid using a disabled ep in usbhsg_queue_done() + - iio: st_magn: always define ST_MAGN_TRIGGER_SET_STATE + - iio: accel: bmc150: fix endianness when reading axes + - iio: gyro: bmg160: fix buffer read values + - iio: gyro: bmg160: fix endianness when reading axes + - sd: Fix excessive capacity printing on devices with blocks bigger than 512 + bytes + - fs: add file_dentry() + - nfs: use file_dentry() + - btrfs: fix crash/invalid memory access on fsync when using overlayfs + - ext4: add lockdep annotations for i_data_sem + - ext4: ignore quota mount options if the quota feature is enabled + - iommu: Don't overwrite domain pointer when there is no default_domain + - Btrfs: fix file/data loss caused by fsync after rename and new inode + - arm64: replace read_lock to rcu lock in call_step_hook + - perf: Do not double free + - perf: Cure event->pending_disable race + - mmc: sdhci-pci: Add support and PCI IDs for more Broxton host controllers + - ALSA: hda - Fixup speaker pass-through control for nid 0x14 on ALC225 + - ALSA: hda - Fix headset support and noise on HP EliteBook 755 G2 + - ALSA: hda/realtek - Enable the ALC292 dock fixup on the Thinkpad T460s + - ALSA: usb-audio: Add a sample rate quirk for Phoenix Audio TMX320 + - ALSA: usb-audio: Add a quirk for Plantronics BT300 + - ALSA: usb-audio: Skip volume controls triggers hangup on Dell USB Dock + - HID: wacom: fix Bamboo ONE oops + - HID: usbhid: fix inconsistent reset/resume/reset-resume behavior + - Revert "x86/PCI: Don't alloc pcibios-irq when MSI is enabled" + - Revert "PCI: Add helpers to manage pci_dev->irq and pci_dev->irq_managed" + - Revert "PCI, x86: Implement pcibios_alloc_irq() and pcibios_free_irq()" + - staging: android: ion: Set the length of the DMA sg entries in buffer + - usbvision: fix crash on detecting device with invalid configuration + - Revert "usb: hub: do not clear BOS field during reset device" + - Linux 4.4.8 + + * Fix speaker volume on a Dell machine (LP: #1549660) + - ALSA: hda - Fixup speaker pass-through control for nid 0x14 on ALC225 + + * Xenial update to v4.4.7 stable release (LP: #1572722) + - regulator: core: avoid unused variable warning + - regulator: core: Fix nested locking of supplies + - ASoC: samsung: pass DMA channels as pointers + - mmc: sh_mmcif: rework dma channel handling + - mmc: sh_mmcif: Correct TX DMA channel allocation + - x86/microcode/intel: Make early loader look for builtin microcode too + - x86/microcode: Untangle from BLK_DEV_INITRD + - x86/entry/compat: Keep TS_COMPAT set during signal delivery + - perf/x86/intel: Add definition for PT PMI bit + - x86/PCI: Mark Broadwell-EP Home Agent & PCU as having non-compliant BARs + - KVM: i8254: change PIT discard tick policy + - KVM: fix spin_lock_init order on x86 + - KVM: VMX: avoid guest hang on invalid invept instruction + - KVM: VMX: avoid guest hang on invalid invvpid instruction + - KVM: VMX: fix nested vpid for old KVM guests + - perf/core: Fix perf_sched_count derailment + - perf tools: Dont stop PMU parsing on alias parse error + - perf tools: Fix checking asprintf return value + - perf tools: Fix python extension build + - sched/cputime: Fix steal_account_process_tick() to always return jiffies + - sched/preempt, sh: kmap_coherent relies on disabled preemption + - EDAC, amd64_edac: Shift wrapping issue in f1x_get_norm_dct_addr() + - s390: fix floating pointer register corruption (again) + - s390/cpumf: add missing lpp magic initialization + - pinctrl-bcm2835: Fix cut-and-paste error in "pull" parsing + - PCI: Disable IO/MEM decoding for devices with non-compliant BARs + - PCI: ACPI: IA64: fix IO port generic range check + - x86/irq: Cure live lock in fixup_irqs() + - x86/apic: Fix suspicious RCU usage in smp_trace_call_function_interrupt() + - x86/iopl/64: Properly context-switch IOPL on Xen PV + - x86/iopl: Fix iopl capability check on Xen PV + - x86/mm: TLB_REMOTE_SEND_IPI should count pages + - sg: fix dxferp in from_to case + - aacraid: Fix RRQ overload + - aacraid: Fix memory leak in aac_fib_map_free + - aacraid: Set correct msix count for EEH recovery + - sd: Fix discard granularity when LBPRZ=1 + - scsi: storvsc: fix SRB_STATUS_ABORTED handling + - be2iscsi: set the boot_kset pointer to NULL in case of failure + - aic7xxx: Fix queue depth handling + - libnvdimm: Fix security issue with DSM IOCTL. + - dm snapshot: disallow the COW and origin devices from being identical + - dm: fix excessive dm-mq context switching + - dm thin metadata: don't issue prefetches if a transaction abort has failed + - dm cache: make sure every metadata function checks fail_io + - dm: fix rq_end_stats() NULL pointer in dm_requeue_original_request() + - usb: retry reset if a device times out + - usb: hub: fix a typo in hub_port_init() leading to wrong logic + - USB: uas: Reduce can_queue to MAX_CMNDS + - USB: cdc-acm: more sanity checking + - USB: iowarrior: fix oops with malicious USB descriptors + - USB: usb_driver_claim_interface: add sanity checking + - USB: mct_u232: add sanity checking in probe + - USB: digi_acceleport: do sanity checking for the number of ports + - USB: cypress_m8: add endpoint sanity check + - USB: serial: cp210x: Adding GE Healthcare Device ID + - USB: serial: ftdi_sio: Add support for ICP DAS I-756xU devices + - USB: option: add "D-Link DWM-221 B1" device id + - pwc: Add USB id for Philips Spc880nc webcam + - Input: powermate - fix oops with malicious USB descriptors + - ALSA: usb-audio: Fix NULL dereference in create_fixed_stream_quirk() + - ALSA: usb-audio: Add sanity checks for endpoint accesses + - ALSA: usb-audio: add Microsoft HD-5001 to quirks + - ALSA: usb-audio: Minor code cleanup in create_fixed_stream_quirk() + - ALSA: usb-audio: Fix double-free in error paths after + snd_usb_add_audio_stream() call + - Bluetooth: btusb: Add new AR3012 ID 13d3:3395 + - Bluetooth: btusb: Add a new AR3012 ID 04ca:3014 + - Bluetooth: btusb: Add a new AR3012 ID 13d3:3472 + - crypto: ccp - Add hash state import and export support + - crypto: ccp - Limit the amount of information exported + - crypto: ccp - Don't assume export/import areas are aligned + - crypto: ccp - memset request context to zero during import + - crypto: keywrap - memzero the correct memory + - crypto: atmel - fix checks of error code returned by devm_ioremap_resource() + - crypto: ux500 - fix checks of error code returned by devm_ioremap_resource() + - crypto: marvell/cesa - forward devm_ioremap_resource() error code + - X.509: Fix leap year handling again + - mei: bus: check if the device is enabled before data transfer + - HID: logitech: fix Dual Action gamepad support + - HID: i2c-hid: fix OOB write in i2c_hid_set_or_send_report() + - HID: multitouch: force retrieving of Win8 signature blob + - HID: fix hid_ignore_special_drivers module parameter + - staging: comedi: ni_tiocmd: change mistaken use of start_src for start_arg + - staging: android: ion_test: fix check of platform_device_register_simple() + error code + - staging: comedi: ni_mio_common: fix the ni_write[blw]() functions + - tty: Fix GPF in flush_to_ldisc(), part 2 + - net: irda: Fix use-after-free in irtty_open() + - 8250: use callbacks to access UART_DLL/UART_DLM + - saa7134: Fix bytesperline not being set correctly for planar formats + - adv7511: TX_EDID_PRESENT is still 1 after a disconnect + - bttv: Width must be a multiple of 16 when capturing planar formats + - coda: fix first encoded frame payload + - media: v4l2-compat-ioctl32: fix missing length copy in put_v4l2_buffer32 + - mtip32xx: Avoid issuing standby immediate cmd during FTL rebuild + - mtip32xx: Fix broken service thread handling + - mtip32xx: Remove unwanted code from taskfile error handler + - mtip32xx: Print exact time when an internal command is interrupted + - mtip32xx: Fix for rmmod crash when drive is in FTL rebuild + - mtip32xx: Handle safe removal during IO + - mtip32xx: Handle FTL rebuild failure state during device initialization + - mtip32xx: Implement timeout handler + - mtip32xx: Cleanup queued requests after surprise removal + - ALSA: pcm: Avoid "BUG:" string for warnings again + - ALSA: intel8x0: Add clock quirk entry for AD1981B on IBM ThinkPad X41. + - ALSA: hda - Don't handle ELD notify from invalid port + - ALSA: hda - fix the mic mute button and led problem for a Lenovo AIO + - ALSA: hda - Fix unconditional GPIO toggle via automute + - tools/hv: Use include/uapi with __EXPORTED_HEADERS__ + - jbd2: fix FS corruption possibility in jbd2_journal_destroy() on umount path + - brd: Fix discard request processing + - IB/srpt: Simplify srpt_handle_tsk_mgmt() + - bcache: cleaned up error handling around register_cache() + - bcache: fix race of writeback thread starting before complete initialization + - bcache: fix cache_set_flush() NULL pointer dereference on OOM + - mm: memcontrol: reclaim when shrinking memory.high below usage + - mm: memcontrol: reclaim and OOM kill when shrinking memory.max below usage + - ia64: define ioremap_uc() + - watchdog: don't run proc_watchdog_update if new value is same as old + - watchdog: rc32434_wdt: fix ioctl error handling + - Bluetooth: Add new AR3012 ID 0489:e095 + - Bluetooth: Fix potential buffer overflow with Add Advertising + - cgroup: ignore css_sets associated with dead cgroups during migration + - net: mvneta: enable change MAC address when interface is up + - of: alloc anywhere from memblock if range not specified + - vfs: show_vfsstat: do not ignore errors from show_devname method + - splice: handle zero nr_pages in splice_to_pipe() + - xtensa: ISS: don't hang if stdin EOF is reached + - xtensa: fix preemption in {clear,copy}_user_highpage + - xtensa: clear all DBREAKC registers on start + - ARC: [BE] readl()/writel() to work in Big Endian CPU configuration + - ARC: bitops: Remove non relevant comments + - quota: Fix possible GPF due to uninitialised pointers + - xfs: fix two memory leaks in xfs_attr_list.c error paths + - raid1: include bio_end_io_list in nr_queued to prevent freeze_array hang + - md/raid5: Compare apples to apples (or sectors to sectors) + - RAID5: check_reshape() shouldn't call mddev_suspend + - RAID5: revert e9e4c377e2f563 to fix a livelock + - raid10: include bio_end_io_list in nr_queued to prevent freeze_array hang + - md/raid5: preserve STRIPE_PREREAD_ACTIVE in break_stripe_batch_list + - md: multipath: don't hardcopy bio in .make_request path + - Revert "UBUNTU: SAUCE: (noup) fuse: Add reference counting for fuse_io_priv" + - Revert "UBUNTU: SAUCE: (noup) fuse: do not use iocb after it may have been + freed" + - fuse: do not use iocb after it may have been freed + - fuse: Add reference counting for fuse_io_priv + - fs/coredump: prevent fsuid=0 dumps into user-controlled directories + - rapidio/rionet: fix deadlock on SMP + - ipr: Fix out-of-bounds null overwrite + - ipr: Fix regression when loading firmware + - iwlwifi: mvm: Fix paging memory leak + - drm/radeon: disable runtime pm on PX laptops without dGPU power control + - drm/radeon: Don't drop DP 2.7 Ghz link setup on some cards. + - drm/amdgpu: disable runtime pm on PX laptops without dGPU power control + - drm/amdgpu: include the right version of gmc header files for iceland + - IB/ipoib: fix for rare multicast join race condition + - tracing: Have preempt(irqs)off trace preempt disabled functions + - tracing: Fix crash from reading trace_pipe with sendfile + - tracing: Fix trace_printk() to print when not using bprintk() + - bitops: Do not default to __clear_bit() for __clear_bit_unlock() + - scripts/coccinelle: modernize & + - scripts/kconfig: allow building with make 3.80 again + - kbuild/mkspec: fix grub2 installkernel issue + - MAINTAINERS: Update mailing list and web page for hwmon subsystem + - ideapad-laptop: Add ideapad Y700 (15) to the no_hw_rfkill DMI list + - mmc: block: fix ABI regression of mmc_blk_ioctl + - mmc: mmc_spi: Add Card Detect comments and fix CD GPIO case + - mmc: sdhci: fix data timeout (part 1) + - mmc: sdhci: fix data timeout (part 2) + - mmc: sdhci: Fix override of timeout clk wrt max_busy_timeout + - clk: rockchip: rk3368: fix cpuclk mux bit of big cpu-cluster + - clk: rockchip: rk3368: fix cpuclk core dividers + - clk: rockchip: rk3368: fix parents of video encoder/decoder + - clk: rockchip: rk3368: fix hdmi_cec gate-register + - clk: rockchip: add hclk_cpubus to the list of rk3188 critical clocks + - clk: bcm2835: Fix setting of PLL divider clock rates + - target: Fix target_release_cmd_kref shutdown comp leak + - iser-target: Fix identification of login rx descriptor type + - iser-target: Add new state ISER_CONN_BOUND to isert_conn + - iser-target: Separate flows for np listeners and connections cma events + - iser-target: Rework connection termination + - nfsd4: fix bad bounds checking + - nfsd: fix deadlock secinfo+readdir compound + - ARM: dts: at91: sama5d3 Xplained: don't disable hsmci regulator + - ARM: dts: at91: sama5d4 Xplained: don't disable hsmci regulator + - ACPI / PM: Runtime resume devices when waking from hibernate + - writeback, cgroup: fix premature wb_put() in + locked_inode_to_wb_and_lock_list() + - writeback, cgroup: fix use of the wrong bdi_writeback which mismatches the + inode + - Revert "UBUNTU: SAUCE: (noup) Input: synaptics - handle spurious release of + trackstick buttons, again" + - Input: synaptics - handle spurious release of trackstick buttons, again + - Input: ims-pcu - sanity check against missing interfaces + - Input: ati_remote2 - fix crashes on detecting device with invalid descriptor + - ocfs2/dlm: fix race between convert and recovery + - ocfs2/dlm: fix BUG in dlm_move_lockres_to_recovery_list + - mm/page_alloc: prevent merging between isolated and other pageblocks + - mtd: onenand: fix deadlock in onenand_block_markbad + - PM / sleep: Clear pm_suspend_global_flags upon hibernate + - scsi_common: do not clobber fixed sense information + - sched/cputime: Fix steal time accounting vs. CPU hotplug + - perf/x86/pebs: Add workaround for broken OVFL status on HSW+ + - perf/x86/intel: Fix PEBS warning by only restoring active PMU in pmi + - perf/x86/intel: Fix PEBS data source interpretation on Nehalem/Westmere + - Linux 4.4.7 + + * QCA9565 / AR9565 bluetooth not work (LP: #1542944) + - Bluetooth: Add new AR3012 ID 0489:e095 + + * The mic mute key and led can't work on a Lenovo AIO machine (LP: #1555912) + - ALSA: hda - fix the mic mute button and led problem for a Lenovo AIO + + * 13d3:3472 bluetooth not working, 4.2 low latency kernel 14.04.1 on asus ROG + gl552jx (LP: #1552925) + - Bluetooth: btusb: Add a new AR3012 ID 13d3:3472 + + * Bluetooth cannot detect other devices (Lite-on 3014 + Atheros AR9565) + (LP: #1546694) + - Bluetooth: btusb: Add a new AR3012 ID 04ca:3014 + + * Atheros AR9462 Bluetooth cannot detect other devices (LP: #1542564) + - Bluetooth: btusb: Add new AR3012 ID 13d3:3395 + + * s390/pci: add extra padding to function measurement block (LP: #1572291) + - s390/pci: add extra padding to function measurement block + + * CVE-2016-3951 (LP: #1567191) + - cdc_ncm: do not call usbnet_link_change from cdc_ncm_bind + - usbnet: cleanup after bind() in probe() + + * linux: Add UEFI keyring for externally signed modules (LP: #1569924) + - efi: Remove redundant efi_set_variable_nonblocking() prototype + - efi/runtime-wrappers: Add a nonblocking version of QueryVariableInfo() + - efi: Add nonblocking option to efi_query_variable_store() + - efi: Add NV memory attribute + - efi: Reformat GUID tables to follow the format in UEFI spec + - efi: stub: implement efi_get_random_bytes() based on EFI_RNG_PROTOCOL + - SAUCE: (noup) Add EFI signature data types + - crypto: KEYS: convert public key and digsig asym to the akcipher api + - [Config] CONFIG_EFI_SIGNATURE_LIST_PARSER=y + - SAUCE: (noup) Add an EFI signature blob parser and key loader. + - [Config] CONFIG_IMA_MOK_KEYRING=y + - IMA: create machine owner and blacklist keyrings + - KEYS: Add an alloc flag to convey the builtinness of a key + - [Config] CONFIG_MODULE_SIG_UEFI=y, CONFIG_SYSTEM_BLACKLIST_KEYRING=y + - SAUCE: (noup) KEYS: Add a system blacklist keyring + - SAUCE: (noup) MODSIGN: Support not importing certs from db + + * Miscellaneous Ubuntu changes + - [Config] CONFIG_PUBLIC_KEY_ALGO_RSA=y + + -- Kamal Mostafa Sun, 24 Apr 2016 12:12:13 -0700 + +linux (4.4.0-21.37) xenial; urgency=low + + [ Tim Gardner ] + + * Release Tracking Bug + - LP: #1571791 + + * linux: MokSBState is ignored (LP: #1571691) + - SAUCE: (noup) MODSIGN: Import certificates from UEFI Secure Boot + - SAUCE: (noup) efi: Disable secure boot if shim is in insecure mode + - SAUCE: (noup) Display MOKSBState when disabled + + -- Tim Gardner Mon, 18 Apr 2016 07:00:22 -0600 + +linux (4.4.0-20.36) xenial; urgency=low + + [ Tim Gardner ] + + * Release Tracking Bug + - LP: #1571069 + + * sysfs mount failure during stateful lxd snapshots (LP: #1570906) + - SAUCE: kernfs: Do not match superblock in another user namespace when + mounting + + * Kernel Panic in Ubuntu 16.04 netboot installer (LP: #1570441) + - x86/topology: Fix logical package mapping + - x86/topology: Fix Intel HT disable + - x86/topology: Use total_cpus not nr_cpu_ids for logical packages + - xen/apic: Provide Xen-specific version of cpu_present_to_apicid APIC op + - x86/topology: Fix AMD core count + + * [regression]: Failed to call clock_adjtime(): Invalid argument + (LP: #1566465) + - ntp: Fix ADJ_SETOFFSET being used w/ ADJ_NANO + + -- Tim Gardner Thu, 14 Apr 2016 06:31:56 -0600 + +linux (4.4.0-19.35) xenial; urgency=low + + [ Tim Gardner ] + + * Release Tracking Bug + - LP: #1570348 + + * CVE-2016-2847 (LP: #1554260) + - pipe: limit the per-user amount of pages allocated in pipes + + * xenial kernel crash on HP BL460c G7 (qla24xx problem?) (LP: #1554003) + - SAUCE: (noup) qla2xxx: Add irq affinity notification V2 + + * arm64: guest hangs when ntpd is running (LP: #1549494) + - SAUCE: (noup) KVM: arm/arm64: Handle forward time correction gracefully + + * linux: Enforce signed module loading when UEFI secure boot (LP: #1566221) + - [Config] CONFIG_EFI_SECURE_BOOT_SIG_ENFORCE=y + + * s390/cpumf: Fix lpp detection (LP: #1555344) + - s390/facilities: use stfl mnemonic instead of insn magic + - s390/facilities: always use lowcore's stfle field for storing facility bits + - s390/cpumf: Fix lpp detection + + * s390x kernel image needs weightwatchers (LP: #1536245) + - [Config] s390x: Use compressed kernel bzImage + + * Surelock GA2 SP1: surelock02p05: Not seeing sgX devices for LUNs after + upgrading to Ubuntu 16.04 (LP: #1567581) + - Revert "UBUNTU: SAUCE: (noup) powerpc/pci: Assign fixed PHB number based on + device-tree properties" + + * Backport upstream bugfixes to ubuntu-16.04 (LP: #1555765) + - cpufreq: powernv: Define per_cpu chip pointer to optimize hot-path + - Revert "cpufreq: postfix policy directory with the first CPU in related_cpus" + - cpufreq: powernv: Add sysfs attributes to show throttle stats + + * systemd-modules-load.service: Failing due to missing module 'ib_iser' (LP: #1566468) + - [Config] Add ib_iser to generic inclusion list + + * thunderx nic performance improvements (LP: #1567093) + - net: thunderx: Set recevie buffer page usage count in bulk + - net: thunderx: Adjust nicvf structure to reduce cache misses + + * fixes for thunderx nic in multiqueue mode (LP: #1567091) + - net: thunderx: Fix for multiqset not configured upon interface toggle + - net: thunderx: Fix for HW TSO not enabled for secondary qsets + - net: thunderx: Fix receive packet stats + + * Miscellaneous Ubuntu changes + - [Config] updateconfigs after CONFIG_DRM_I915_BPO_PRELIMINARY_HW_SUPPORT=n + + * Miscellaneous upstream changes (LP: #1564901) + - Input: xpad - correctly handle concurrent LED and FF requests + + -- Tim Gardner Thu, 07 Apr 2016 07:32:16 +0100 + +linux (4.4.0-18.34) xenial; urgency=low + + [ Tim Gardner ] + + * Release Tracking Bug + - LP: #1566868 + + * [i915_bpo] Fix RC6 on SKL GT3 & GT4 (LP: #1564759) + - SAUCE: i915_bpo: drm/i915/skl: Fix rc6 based gpu/system hang + - SAUCE: i915_bpo: drm/i915/skl: Fix spurious gpu hang with gt3/gt4 revs + + * CONFIG_ARCH_ROCKCHIP not enabled in armhf generic kernel (LP: #1566283) + - [Config] CONFIG_ARCH_ROCKCHIP=y + + * [Feature] Memory Bandwidth Monitoring (LP: #1397880) + - perf/x86/cqm: Fix CQM handling of grouping events into a cache_group + - perf/x86/cqm: Fix CQM memory leak and notifier leak + - x86/cpufeature: Carve out X86_FEATURE_* + - Merge branch 'timers-core-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip + - x86/topology: Create logical package id + - perf/x86/mbm: Add Intel Memory B/W Monitoring enumeration and init + - perf/x86/mbm: Add memory bandwidth monitoring event management + - perf/x86/mbm: Implement RMID recycling + - perf/x86/mbm: Add support for MBM counter overflow handling + + * User namespace mount updates (LP: #1566505) + - SAUCE: quota: Require that qids passed to dqget() be valid and map into s_user_ns + - SAUCE: fs: Allow superblock owner to change ownership of inodes with unmappable ids + - SAUCE: fuse: Don't initialize user_id or group_id in mount options + - SAUCE: cgroup: Use a new super block when mounting in a cgroup namespace + - SAUCE: fs: fix a posible leak of allocated superblock + + * [arm64] kernel BUG at /build/linux-StrpB2/linux-4.4.0/fs/ext4/inode.c:2394! + (LP: #1566518) + - arm64: Honour !PTE_WRITE in set_pte_at() for kernel mappings + - arm64: Update PTE_RDONLY in set_pte_at() for PROT_NONE permission + + * [Feature]USB core and xHCI tasks for USB 3.1 SuperSpeedPlus (SSP) support + for Alpine Ridge on SKL (LP: #1519623) + - usb: define USB_SPEED_SUPER_PLUS speed for SuperSpeedPlus USB3.1 devices + - usb: set USB 3.1 roothub device speed to USB_SPEED_SUPER_PLUS + - usb: show speed "10000" in sysfs for USB 3.1 SuperSpeedPlus devices + - usb: add device descriptor for usb 3.1 root hub + - usb: Support USB 3.1 extended port status request + - xhci: Make sure xhci handles USB_SPEED_SUPER_PLUS devices. + - xhci: set roothub speed to USB_SPEED_SUPER_PLUS for USB3.1 capable controllers + - xhci: USB 3.1 add default Speed Attributes to SuperSpeedPlus device capability + - xhci: set slot context speed field to SuperSpeedPlus for USB 3.1 SSP devices + - usb: Add USB3.1 SuperSpeedPlus Isoc Endpoint Companion descriptor + - usb: Parse the new USB 3.1 SuperSpeedPlus Isoc endpoint companion descriptor + - usb: Add USB 3.1 Precision time measurement capability descriptor support + - xhci: refactor and cleanup endpoint initialization. + - xhci: Add SuperSpeedPlus high bandwidth isoc support to xhci endpoints + - xhci: cleanup isoc tranfers queuing code + - xhci: Support extended burst isoc TRB structure used by xhci 1.1 for USB 3.1 + - SAUCE: (noup) usb: fix regression in SuperSpeed endpoint descriptor parsing + + * wrong/missing permissions for device file /dev/prandom (prng.ko) + (LP: #1558275) + - s390/crypto: provide correct file mode at device register. + + * The Front MIC jack can't work on a HP desktop machine (LP: #1564712) + - ALSA: hda - fix front mic problem for a HP desktop + + * HP Notebook Probook 440 G3 HDA Intel PCH horrible sounds while booting + (LP: #1556228) + - ALSA: hda - Apply reboot D3 fix for CX20724 codec, too + + * please provide mmc-modules udeb (LP: #1565765) + - [Config] Add mmc block drivers to d-i + + * linux: Enforce signed module loading when UEFI secure boot (LP: #1566221) + - Add secure_modules() call + - PCI: Lock down BAR access when module security is enabled + - x86: Lock down IO port access when module security is enabled + - ACPI: Limit access to custom_method + - asus-wmi: Restrict debugfs interface when module loading is restricted + - Restrict /dev/mem and /dev/kmem when module loading is restricted + - acpi: Ignore acpi_rsdp kernel parameter when module loading is restricted + - kexec: Disable at runtime if the kernel enforces module loading restrictions + - x86: Restrict MSR access when module loading is restricted + - [Config] CONFIG_EFI_SECURE_BOOT_SIG_ENFORCE=n + - Add option to automatically enforce module signatures when in Secure Boot mode + - efi: Make EFI_SECURE_BOOT_SIG_ENFORCE depend on EFI + - efi: Add EFI_SECURE_BOOT bit + - hibernate: Disable in a signed modules environment + + * [Hyper-V] Additional PCI passthrough commits (LP: #1565967) + - PCI: Add fwnode_handle to x86 pci_sysdata + - PCI: Look up IRQ domain by fwnode_handle + - [Config] CONFIG_PCI_HYPERV=m + - PCI: hv: Add paravirtual PCI front-end for Microsoft Hyper-V VMs + + * [Bug]Lenovo Yoga 260 and Carbon X1 4th gen freeze on HWP enable + (LP: #1559923) + - ACPI / processor: Request native thermal interrupt handling via _OSC + + * Sync kernel zfs 0.6.5.6 - align with zfsutils-linux and spl packages + (LP: #1564591) + - SAUCE: (noup) Update spl to 0.6.5.6-0ubuntu1, zfs to 0.6.5.6-0ubuntu3 + + * [Ubuntu 16.04.1] RELEASE and ACQUIRE atomics on Power (LP: #1556096) + - atomics: Allow architectures to define their own __atomic_op_* helpers + - powerpc: atomic: Implement atomic{, 64}_*_return_* variants + - powerpc: atomic: Implement acquire/release/relaxed variants for xchg + - powerpc: atomic: Implement acquire/release/relaxed variants for cmpxchg + + * fix for do_tools_cpupower when cross-compiling (LP: #1564206) + - [Debian] cpupower uses non-standard CROSS + + * ISST:LTE: Regression: roselp2 Oops in kernel during setup io (LP: #1546439) + - SAUCE: block: partition: initialize percpuref before sending out KOBJ_ADD + + * Unable to migrate container (LP: #1563921) + - SAUCE: cgroup mount: ignore nsroot= + + * [Hyper-V] patch inclusion in 16.04 for NIC hot add/remove (LP: #1563688) + - hv_netvsc: Move subchannel waiting to rndis_filter_device_remove() + + * /proc/$pid/maps performance regression (LP: #1547231) + - proc: revert /proc//maps [stack:TID] annotation + + * TPM2.0 trusted keys fixes (LP: #1398274) + - tpm: remove unneeded include of actbl2.h + - tpm: fix checks for policy digest existence in tpm2_seal_trusted() + - tpm_crb: Use the common ACPI definition of struct acpi_tpm2 + - tpm_tis: Disable interrupt auto probing on a per-device basis + - tpm_tis: Do not fall back to a hardcoded address for TPM2 + - tpm_tis: Use devm_ioremap_resource + - tpm_tis: Clean up the force=1 module parameter + - tpm_crb: Drop le32_to_cpu(ioread32(..)) + - tpm_crb: Use devm_ioremap_resource + - tpm: fix the rollback in tpm_chip_register() + - tpm: fix the cleanup of struct tpm_chip + - tpm: fix: set continueSession attribute for the unseal operation + - tpm: fix: return rc when devm_add_action() fails + - tpm_eventlog.c: fix binary_bios_measurements + - tpm_crb/tis: fix: use dev_name() for /proc/iomem + - tpm_crb: tpm2_shutdown() must be called before tpm_chip_unregister() + - tpm_tis: fix build warning with tpm_tis_resume + + * [Feature]intel_idle driver support for Knights Landing (LP: #1461365) + - intel_idle: Support for Intel Xeon Phi Processor x200 Product Family + + * cxlflash: Backport upstream cxlflash commits and submitting a noup patch to + Xenial (LP: #1563485) + - cxlflash: Fix to avoid unnecessary scan with internal LUNs + - cxlflash: Increase cmd_per_lun for better throughput + - SAUCE: (noup) cxlflash: Move to exponential back-off when cmd_room is not available + + * Miscellaneous Ubuntu changes + - [Config] do_zfs_powerpc64-smp = true + - [Debian] fix linux_tools when cross-compiling + - [Config] do_zfs_powerpc64-smp use default value + - SAUCE: apparmor: Fix FTBFS due to bad include path + - SAUCE: i915_bpo: Disable preliminary hw support + + -- Tim Gardner Tue, 29 Mar 2016 15:31:33 -0600 + +linux (4.4.0-17.33) xenial; urgency=low + + [ Tim Gardner ] + + * Release Tracking Bug + - LP: #1563441 + + * ISST-LTE: pVM:high cpus number need a high crashkernel value in kdump + (LP: #1560552) + - SAUCE: (noup) ppc64 boot: Wait for boot cpu to show up if nr_cpus limit is + about to hit. + + * Predictable naming mechanism is leading to issues in DLPAR operations of + NICs (LP: #1560514) + - SAUCE: (noup) powerpc/pci: Assign fixed PHB number based on device-tree + properties + + * ThunderX: support alternative phy implementations (LP: #1562968) + - net: thunderx: Cleanup PHY probing code. + - [Config] CONFIG_MDIO_CAVIUM=m + - phy: mdio-octeon: Refactor into two files/modules + - [Config] CONFIG_MDIO_THUNDER=m + - phy: mdio-thunder: Add driver for Cavium Thunder SoC MDIO buses. + - phy: mdio-cavium: Add missing MODULE_* annotations. + - net: cavium: For Kconfig THUNDER_NIC_BGX, select MDIO_THUNDER. + - phy: mdio-thunder: Fix some Kconfig typos + - [d-i] Add phy drivers for Cavium ThunderX to nic-modules udeb + + * linux: exclude ZONE_DEVICE from GFP_ZONE_TABLE (LP: #1563293) + - Revert "mm: CONFIG_NR_ZONES_EXTENDED" + - mm: exclude ZONE_DEVICE from GFP_ZONE_TABLE + + * lots of printk to serial console can hang system for long time + (LP: #1534216) + - printk: set may_schedule for some of console_trylock() callers + + * [i915_bpo] Update i915 backport driver (LP: #1560395) + - SAUCE: i915_bpo: Update to drm-intel-next-fixes-2016-03-16 + - PM / runtime: Add new helper for conditional usage count incrementation + - drm/core: Add drm_for_each_encoder_mask, v2. + - drm/atomic-helper: Implement subsystem-level suspend/resume + + * [Hyper-V] VM Sockets (LP: #1541585) + - Drivers: hv: vmbus: Cleanup vmbus_set_event() + - Drivers: hv: vmbus: Add vendor and device atttributes + - Drivers: hv: vmbus: avoid infinite loop in init_vp_index() + - Drivers: hv: vmbus: avoid scheduling in interrupt context in vmbus_initiate_unload() + - Drivers: hv: vmbus: don't manipulate with clocksources on crash + - Drivers: hv: vmbus: add a helper function to set a channel's pending send size + - Drivers: hv: vmbus: define the new offer type for Hyper-V socket (hvsock) + - Drivers: hv: vmbus: vmbus_sendpacket_ctl: hvsock: avoid unnecessary signaling + - Drivers: hv: vmbus: define a new VMBus message type for hvsock + - Drivers: hv: vmbus: add a hvsock flag in struct hv_driver + - Drivers: hv: vmbus: add a per-channel rescind callback + - Drivers: hv: vmbus: add an API vmbus_hvsock_device_unregister() + - Drivers: hv: vmbus: Eliminate the spin lock on the read path + - Drivers: hv: vmbus: Give control over how the ring access is serialized + - drivers/hv: Move VMBus hypercall codes into Hyper-V UAPI header + - Drivers: hv: vmbus: don't loose HVMSG_TIMER_EXPIRED messages + - Drivers: hv: vmbus: avoid wait_for_completion() on crash + - Drivers: hv: vmbus: remove code duplication in message handling + - Drivers: hv: vmbus: avoid unneeded compiler optimizations in vmbus_wait_for_unload() + - Drivers: hv: util: Pass the channel information during the init call + - Drivers: hv: utils: Remove util transport handler from list if registration fails + - Revert "Drivers: hv: vmbus: Support handling messages on multiple CPUs" + - Drivers: hv: vmbus: Support handling messages on multiple CPUs + + * [Bug]SKL-H boot hang when c8+c9+c10 enabled by intel_idle driver + (LP: #1559918) + - intel_idle: prevent SKL-H boot failure when C8+C9+C10 enabled + + * ixgbe: Update to Fortville SW5 release (LP: #1562326) + - net: add tc offload feature flag + - net: tc: helper functions to query action types + - sctp: Rename NETIF_F_SCTP_CSUM to NETIF_F_SCTP_CRC + - net: rework ndo tc op to consume additional qdisc handle parameter + - net: rework setup_tc ndo op to consume general tc operand + - net: sched: add cls_u32 offload hooks for netdevs + - net: ixgbe: add support for tc_u32 offload + - net: ixgbe: abort with cls u32 divisor groups greater than 1 + + * Bring fm10k up to Fortville SW5 (LP: #1562310) + - net: add netif_is_team_master helper + - net: add netif_is_team_port helper + - net: add netif_is_lag_master helper + - net: add netif_is_lag_port helper + - ethtool: correctly ensure {GS}CHANNELS doesn't conflict with GS{RXFH} + - fm10k: don't reinitialize RSS flow table when RXFH configured + + * [Feature]Always Running Timer (ART) to System Time translation + (LP: #1519625) + - time: Verify time values in adjtimex ADJ_SETOFFSET to avoid overflow + - timekeeping: Provide internal function __ktime_get_real_seconds + - timekeeping: Cap adjustments so they don't exceed the maxadj value + - clocksource: Make clocksource validation work for all clocksources + - time: Add cycles to nanoseconds translation + - time: Add timekeeping snapshot code capturing system time and counter + - time: Remove duplicated code in ktime_get_raw_and_real() + - time: Add driver cross timestamp interface for higher precision time synchronization + - time: Add history to cross timestamp interface supporting slower devices + - time/timekeeping: Work around false positive GCC warning + - x86/tsc: Always Running Timer (ART) correlated clocksource + - ptp: Add PTP_SYS_OFFSET_PRECISE for driver crosstimestamping + - [Config] CONFIG_E1000E_HWTS=y + - e1000e: Adds hardware supported cross timestamp on e1000e nic + + * x-gene2: add SoC v2 support to clock (LP: #1561604) + - clk: xgene: Add SoC and PMD PLL clocks with v2 hardware + + * [Bug]Disable multi-record PEBS on Merom (LP: #1559914) + - perf/x86: Move perf_event.c ............... => x86/events/core.c + - perf/x86: Move perf_event_amd.c ........... => x86/events/amd/core.c + - perf/x86: Move perf_event_amd_ibs.c ....... => x86/events/amd/ibs.c + - perf/x86: Move perf_event_amd_iommu.[ch] .. => x86/events/amd/iommu.[ch] + - perf/x86: Move perf_event_amd_uncore.c .... => x86/events/amd/uncore.c + - perf/x86: Move perf_event_intel_bts.c ........ => x86/events/intel/bts.c + - perf/x86: Move perf_event_intel.c ............ => x86/events/intel/core.c + - perf/x86: Move perf_event_intel_cqm.c ........ => x86/events/intel/cqm.c + - perf/x86: Move perf_event_intel_cstate.c ..... => x86/events/intel/cstate.c + - perf/x86: Move perf_event_intel_ds.c ......... => x86/events/intel/ds.c + - perf/x86: Move perf_event_intel_lbr.c ........ => x86/events/intel/lbr.c + - perf/x86: Move perf_event_intel_pt.[ch] ...... => x86/events/intel/pt.[ch] + - perf/x86: Move perf_event_intel_rapl.c ....... => x86/events/intel/rapl.c + - perf/x86: Move perf_event_intel_uncore.[ch] .. => + x86/events/intel/uncore.[ch] + - perf/x86: Move perf_event_intel_uncore_nhmex.c => + x86/events/intel/uncore_nmhex.c + - perf/x86: Move perf_event_intel_uncore_snb.c => + x86/events/intel/uncore_snb.c + - perf/x86: Move perf_event_intel_uncore_snbep.c => + x86/events/intel/uncore_snbep.c + - perf/x86: Move perf_event_knc.c .............. => x86/events/intel/knc.c + - perf/x86: Move perf_event_p4.c ............... => x86/events/intel/p4.c + - perf/x86: Move perf_event_p6.c ............... => x86/events/intel/p6.c + - perf/x86: Move perf_event_msr.c .............. => x86/events/msr.c + - perf/x86: Move perf_event.h to its new home + - perf/x86/intel: Use PAGE_SIZE for PEBS buffer size on Core2 + + * [Feature] Enable I2C on Broxton-P (LP: #1520139) + - mfd: intel-lpss: Pass I2C configuration via properties on BXT + + -- Tim Gardner Thu, 24 Mar 2016 20:40:27 -0600 + +linux (4.4.0-16.32) xenial; urgency=low + + [ Tim Gardner ] + + * Release Tracking Bug + - LP: #1561727 + + * fix thermal throttling due to commit "Thermal: initialize thermal zone + device correctly" (LP: #1561676) + - Thermal: Ignore invalid trip points + + * Thinkpad T460: Trackpoint mouse buttons instantly generate "release" event + on press (LP: #1553811) + - SAUCE: (noup) Input: synaptics - handle spurious release of trackstick + buttons, again + + * reading /sys/kernel/security/apparmor/profiles requires CAP_MAC_ADMIN + (LP: #1560583) + - SAUCE: apparmor: Allow ns_root processes to open profiles file + - SAUCE: apparmor: Consult sysctl when reading profiles in a user ns + + * linux: sync virtualbox drivers to 5.0.16-dfsg-2 (LP: #1561492) + - ubuntu: vbox -- update to 5.0.16-dfsg-2 + + * s390/kconfig: CONFIG_NUMA without CONFIG_NUMA_EMU does not make any sense on + s390x (LP: #1557690) + - [Config] CONFIG_NUMA_BALANCING_DEFAULT_ENABLED=n for s390x + + * spl/zfs fails to build on s390x (LP: #1519814) + - [Config] s390x -- re-enable zfs + - [Config] zfs -- disable powerpc until the test failures can be resolved + + * linux: sync to ZFS 0.6.5.6 stable release (LP: #1561483) + - SAUCE: (noup) Update spl to 0.6.5.6-0ubuntu1, zfs to 0.6.5.6-0ubuntu1 + + * zfs: enable zfs for 64bit powerpc kernels (LP: #1558871) + - [Packaging] zfs -- handle rprovides via dpkg-gencontrol + - [Config] powerpc -- convert zfs configuration to custom_override + + * Memory arena corruption with FUSE (was Memory allocation failure crashes + kernel hard, presumably related to FUSE) (LP: #1505948) + - SAUCE: (noup) fuse: do not use iocb after it may have been freed + - SAUCE: (noup) fuse: Add reference counting for fuse_io_priv + + * cgroup namespaces: add a 'nsroot=' mountinfo field (LP: #1560489) + - SAUCE: (noup) cgroup namespaces: add a 'nsroot=' mountinfo field + + * linux packaging: clear remaining redundant delta (LP: #1560445) + - [Debian] Remove generated intermediate files on clean + + * arm64: guest hangs when ntpd is running (LP: #1549494) + - Revert "hrtimer: Add support for CLOCK_MONOTONIC_RAW" + - Revert "hrtimer: Catch illegal clockids" + - Revert "KVM: arm/arm64: timer: Switch to CLOCK_MONOTONIC_RAW" + + * Need enough contiguous memory to support GICv3 ITS table (LP: #1558828) + - [Config] CONFIG_FORCE_MAX_ZONEORDER=13 on arm64 + - SAUCE: (no-up) arm64: gicv3: its: Increase FORCE_MAX_ZONEORDER for Cavium + ThunderX + + * update arcmsr to version v1.30.00.22-20151126 to fix card timeouts + (LP: #1559609) + - arcmsr: fixed getting wrong configuration data + - arcmsr: fixes not release allocated resource + - arcmsr: make code more readable + - arcmsr: adds code to support new Areca adapter ARC1203 + - arcmsr: changes driver version number + - arcmsr: more readability improvements + - arcmsr: Split dma resource allocation to a new function + - arcmsr: change driver version to v1.30.00.22-20151126 + + * server image has no keyboard, desktop image works (LP: #1559692) + - [Config] Rework input-modules (d-i) list + + * PMU support for Cavium ThunderX (LP: #1559349) + - arm64: perf: Rename Cortex A57 events + - arm64/perf: Add Cavium ThunderX PMU support + - arm64: perf: Enable PMCR long cycle counter bit + - arm64: perf: Extend event mask for ARMv8.1 + - arm64: dts: Add Cavium ThunderX specific PMU + + * Show ARM PMU events in perf stat (LP: #1559350) + - drivers/perf: kill armpmu_register + - arm: perf: Convert event enums to #defines + - arm: perf: Add event descriptions + - arm64: perf: Convert event enums to #defines + - arm64: perf: Add event descriptions + - ARM: perf: add format entry to describe event -> config mapping + - arm64: perf: add format entry to describe event -> config mapping + + * [Bug]HSW/BDW EDAC driver reports wrong DIMM (LP: #1559904) + - EDAC/sb_edac: Fix computation of channel address + + * 5-10 second delay in kernel boot with kernel command line ip= (LP: #1259861) + - [Config] disable CONFIG_IP_PNP + + * Miscellaneous Ubuntu changes + - [Debian] Silence the reconstruct script + + -- Tim Gardner Mon, 21 Mar 2016 10:15:31 -0600 + +linux (4.4.0-15.31) xenial; urgency=low + + [ Tim Gardner ] + + * Release Tracking Bug + - LP: #1559252 + + * Xilinx KU3 Capi card does not show up in Ubuntu 16.04 (LP: #1557001) + - SAUCE: (noup) cxl: Allow initialization on timebase sync failures + + * policy namespace stacking (LP: #1379535) + - Revert "UBUNTU: SAUCE: Move replacedby allocation into label_alloc" + - Revert "UBUNTU: SAUCE: Fixup: __label_update() still doesn't handle some cases correctly." + - Revert "UBUNTU: SAUCE: fix: audit "no_new_privs" case for exec failure" + - Revert "UBUNTU: SAUCE: fixup: warning about aa_label_vec_find_or_create not being static" + - Revert "UBUNTU: SAUCE: apparmor: fix refcount race when finding a child profile" + - Revert "UBUNTU: SAUCE: fixup: cast poison values to remove warnings" + - Revert "UBUNTU: SAUCE: fixup: get rid of unused var build warning" + - Revert "UBUNTU: SAUCE: fixup: 20/23 locking issue around in __label_update" + - Revert "UBUNTU: SAUCE: fixup: make __share_replacedby private to get rid of build warning" + - Revert "UBUNTU: SAUCE: fix: replacedby forwarding is not being properly update when ns is destroyed" + - Revert "UBUNTU: SAUCE: apparmor: fix log of apparmor audit message when kern_path() fails" + - Revert "UBUNTU: SAUCE: fixup: cleanup return handling of labels" + - Revert "UBUNTU: SAUCE: apparmor: fix: ref count leak when profile sha1 hash is read" + - Revert "UBUNTU: SAUCE: apparmor: Fix: query label file permission" + - Revert "UBUNTU: SAUCE: apparmor: Don't remove label on rcu callback if the label has already been removed" + - Revert "UBUNTU: SAUCE: apparmor: Fix: break circular refcount for label that is directly freed." + - Revert "UBUNTU: SAUCE: apparmor: Fix: refcount bug when inserting label update that transitions ns" + - Revert "UBUNTU: SAUCE: apparmor: Fix: now that insert can force replacement use it instead of remove_and_insert" + - Revert "UBUNTU: SAUCE: apparmor Fix: refcount bug in pivotroot mediation" + - Revert "UBUNTU: SAUCE: apparmor: ensure that repacedby sharing is done correctly" + - Revert "UBUNTU: SAUCE: apparmor: Fix: update replacedby allocation to take a gfp parameter" + - Revert "UBUNTU: SAUCE: apparmor: Fix: convert replacedby update to be protected by the labelset lock" + - Revert "UBUNTU: SAUCE: apparmor: Fix: add required locking of __aa_update_replacedby on merge path" + - Revert "UBUNTU: SAUCE: apparmor: Fix: deadlock in aa_put_label() call chain" + - Revert "UBUNTU: SAUCE: apparmor: Fix: label_vec_merge insertion" + - Revert "UBUNTU: SAUCE: apparmor: Fix: ensure new labels resulting from merge have a replacedby" + - Revert "UBUNTU: SAUCE: apparmor: Fix: refcount leak in aa_label_merge" + - Revert "UBUNTU: SAUCE: apparmor: Fix: refcount race between locating in labelset and get" + - Revert "UBUNTU: SAUCE: apparmor: Fix: label merge handling of marking unconfined and stale" + - Revert "UBUNTU: SAUCE: apparmor: add underscores to indicate aa_label_next_not_in_set() use needs locking" + - Revert "UBUNTU: SAUCE: apparmor: debug: POISON label and replaceby pointer on free" + - Revert "UBUNTU: SAUCE: apparmor: Fix: ensure aa_get_newest will trip debugging if the replacedby is not setup" + - Revert "UBUNTU: SAUCE: apparmor: Fix: insert race between label_update and label_merge" + - Revert "UBUNTU: SAUCE: apparmor: rework retrieval of the current label in the profile update case" + - Revert "UBUNTU: SAUCE: apparmor: Disallow update of cred when then subjective != the objective cred" + - Revert "UBUNTU: SAUCE: apparmor: Fix: oops do to invalid null ptr deref in label print fns" + - Revert "UBUNTU: SAUCE: fix-up: kern_mount fail path should not be doing put_buffers()" + - Revert "UBUNTU: SAUCE: apparmor: fix sleep from invalid context" + - Revert "UBUNTU: SAUCE: (no-up): apparmor: fix for failed mediation of socket that is being shutdown" + - Revert "UBUNTU: SAUCE: (no-up) apparmor: Fix incompatible pointer type warnings" + - Revert "UBUNTU: SAUCE: (no-up) apparmor: fix mount not handling disconnected paths" + - Revert "UBUNTU: SAUCE: (no-up): apparmor: fix mediation of fs unix sockets" + - Revert "UBUNTU: apparmor -- follow change to this_cpu_ptr" + - Revert "UBUNTU: SAUCE: (no-up) fix: bad unix_addr_fs macro" + - Revert "UBUNTU: SAUCE: Revert: fix: only allow a single threaded process to ..." + - Revert "UBUNTU: SAUCE: (no-up) apparmor: Sync to apparmor3 - RC1 snapshot" + - Revert "UBUNTU: SAUCE: (no-up) apparmor: add parameter to control whether policy hashing is used" + - SAUCE: (no-up) apparmor: sync of apparmor3.5-beta1 snapshot + - SAUCE: add a sysctl to enable unprivileged user ns AppArmor policy loading + + * Add arm64 NUMA support (LP: #1558765) + - SAUCE: (noup) efi: ARM/arm64: ignore DT memory nodes instead of removing them + - SAUCE: (noup) Documentation, dt, numa: dt bindings for NUMA. + - [Config] CONFIG_OF_NUMA=y + - SAUCE: (noup) of, numa: Add NUMA of binding implementation. + - SAUCE: (noup) arm64: Move unflatten_device_tree() call earlier. + - [Config] CONFIG_NUMA=y and CONFIG_NODES_SHIFT=2 on arm64 + - SAUCE: (noup) arm64, numa: Add NUMA support for arm64 platforms. + - SAUCE: (noup) arm64, mm, numa: Add NUMA balancing support for arm64. + + * vivid/linux: total ADT test failures (LP: #1558447) + - Revert "Revert "af_unix: Revert 'lock_interruptible' in stream receive code"" + + * [Hyper-V] patches to allow kdump crash through NMI (LP: #1558720) + - Drivers: hv: vmbus: Support handling messages on multiple CPUs + - Drivers: hv: vmbus: Support kexec on ws2012 r2 and above + + * s390/pci: enforce fmb page boundary rule (LP: #1558625) + - s390/pci: enforce fmb page boundary rule + + * s390/pci: backport upstream commits since v4.4 (LP: #1558624) + - s390/pci_dma: fix DMA table corruption with > 4 TB main memory + - page_to_phys() always returns a multiple of PAGE_SIZE + - s390/pci: provide ZPCI_ADDR macro + - s390/pci: improve ZPCI_* macros + - s390/pci: resize iomap + - s390/pci: fix bar check + - s390/pci: set error state for unusable functions + - s390/pci: remove iomap sanity checks + - s390/pci: remove pdev pointer from arch data + - s390/pci: add ioctl interface for CLP + + * IMA-appraisal is unusable in Ubuntu 16.04 (LP: #1558553) + - [Config] CONFIG_SYSTEM_EXTRA_CERTIFICATE=y, CONFIG_SYSTEM_EXTRA_CERTIFICATE_SIZE=4096 + - KEYS: Use the symbol value for list size, updated by scripts/insert-sys-cert + - KEYS: Reserve an extra certificate symbol for inserting without recompiling + - SAUCE: (noup) KEYS: Support for inserting a certificate into x86 bzImage + + * skb_warn_bad_offload Crash (LP: #1558025) + - ipv4: only create late gso-skb if skb is already set up with CHECKSUM_PARTIAL + + * Add PCIe root complex to Cavium arm64 (LP: #1558342) + - [Config] CONFIG_PCI_HOST_COMMON=y + - [Config] CONFIG_PCI_HOST_THUNDER_PEM=y + - [Config] CONFIG_PCI_HOST_THUNDER_ECAM=y + - PCI: generic: Move structure definitions to separate header file + - PCI: generic: Add pci_host_common_probe(), based on gen_pci_probe() + - PCI: generic: Expose pci_host_common_probe() for use by other drivers + - PCI: thunder: Add PCIe host driver for ThunderX processors + - PCI: thunder: Add driver for ThunderX-pass{1,2} on-chip devices + + * [Hyper-V] vmbus: Fix a bug in hv_need_to_signal_on_read() (LP: #1556264) + - SAUCE: (noup) Drivers: hv: vmbus: Fix a bug in hv_need_to_signal_on_read() + + * Xenial update to v4.4.6 stable release (LP: #1558330) + - arm64: account for sparsemem section alignment when choosing vmemmap offset + - ARM: mvebu: fix overlap of Crypto SRAM with PCIe memory window + - ARM: dts: dra7: do not gate cpsw clock due to errata i877 + - ARM: OMAP2+: hwmod: Introduce ti,no-idle dt property + - PCI: Allow a NULL "parent" pointer in pci_bus_assign_domain_nr() + - kvm: cap halt polling at exactly halt_poll_ns + - KVM: VMX: disable PEBS before a guest entry + - KVM: s390: correct fprs on SIGP (STOP AND) STORE STATUS + - KVM: PPC: Book3S HV: Sanitize special-purpose register values on guest exit + - KVM: MMU: fix ept=0/pte.u=1/pte.w=0/CR0.WP=0/CR4.SMEP=1/EFER.NX=0 combo + - KVM: MMU: fix reserved bit check for ept=0/CR0.WP=0/CR4.SMEP=1/EFER.NX=0 + - s390/dasd: fix diag 0x250 inline assembly + - tracing: Fix check for cpu online when event is disabled + - dmaengine: at_xdmac: fix residue computation + - jffs2: reduce the breakage on recovery from halfway failed rename() + - ncpfs: fix a braino in OOM handling in ncp_fill_cache() + - ASoC: dapm: Fix ctl value accesses in a wrong type + - ASoC: samsung: Use IRQ safe spin lock calls + - ASoC: wm8994: Fix enum ctl accesses in a wrong type + - ASoC: wm8958: Fix enum ctl accesses in a wrong type + - ovl: ignore lower entries when checking purity of non-directory entries + - ovl: fix working on distributed fs as lower layer + - wext: fix message delay/ordering + - cfg80211/wext: fix message ordering + - can: gs_usb: fixed disconnect bug by removing erroneous use of kfree() + - iwlwifi: mvm: inc pending frames counter also when txing non-sta + - mac80211: minstrel: Change expected throughput unit back to Kbps + - mac80211: fix use of uninitialised values in RX aggregation + - mac80211: minstrel_ht: set default tx aggregation timeout to 0 + - mac80211: minstrel_ht: fix a logic error in RTS/CTS handling + - mac80211: check PN correctly for GCMP-encrypted fragmented MPDUs + - mac80211: Fix Public Action frame RX in AP mode + - gpu: ipu-v3: Do not bail out on missing optional port nodes + - drm/amdgpu: Fix error handling in amdgpu_flip_work_func. + - drm/radeon: Fix error handling in radeon_flip_work_func. + - Revert "drm/radeon/pm: adjust display configuration after powerstate" + - userfaultfd: don't block on the last VM updates at exit time + - ovl: fix getcwd() failure after unsuccessful rmdir + - MIPS: Fix build error when SMP is used without GIC + - MIPS: smp.c: Fix uninitialised temp_foreign_map + - block: don't optimize for non-cloned bio in bio_get_last_bvec() + - target: Drop incorrect ABORT_TASK put for completed commands + - ld-version: Fix awk regex compile failure + - Linux 4.4.6 + + * linux fails to load x.509 built-in certificate (LP: #1557250) + - lib/mpi: Endianness fix + + * s390/kconfig: setting for CONFIG...9P.... (LP: #1557994) + - [Config] CONFIG_NET_9P=m for s390x + + * mlx5_core kernel trace after "ethtool -C eth1 adaptive-rx on" flow + (LP: #1557950) + - net/mlx5e: Don't try to modify CQ moderation if it is not supported + - net/mlx5e: Don't modify CQ before it was created + + * [Feature]SD/SDIO/eMMC support for Broxton-P (LP: #1520454) + - mmc: sdhci: Do not BUG on invalid vdd + - mmc: enable MMC/SD/SDIO device to suspend/resume asynchronously + - mmc: It is not an error for the card to be removed while suspended + + * s390/kconfig: disable CONFIG_VIRTIO_MMIO (LP: #1557689) + - [Config] CONFIG_VIRTIO_MMIO=n for s390x + + * s390/kconfig: CONFIG_NUMA without CONFIG_NUMA_EMU does not make any sense on s390x (LP: #1557690) + - [Config] CONFIG_NUMA_EMU=y for s390x + + * Miscellaneous Ubuntu changes + - [Debian] git-ubuntu-log -- prevent bug references being split + - [Debian] git-ubuntu-log -- git log output is UTF-8 + + -- Tim Gardner Tue, 15 Mar 2016 13:18:58 -0600 + +linux (4.4.0-14.30) xenial; urgency=low + + [ Tim Gardner ] + + * Release Tracking Bug + - LP: #1557508 + + * Current 4.4 kernel won't boot on powerpc (LP: #1557130) + - powerpc: Fix dedotify for binutils >= 2.26 + + * ZFS: send fails to transmit some holes [corruption] (LP: #1557151) + - Illumos 6370 - ZFS send fails to transmit some holes + + * Request to cherry-pick uvcvideo patch for Xenial kernel support of RealSense + camera (LP: #1557138) + - UVC: Add support for ds4 depth camera + + * use after free of task_struct->numa_faults in task_numa_find_cpu (LP: #1527643) + - sched/numa: Fix use-after-free bug in the task_numa_compare + + * overlay fs regression: chmod fails with "Operation not permitted" on chowned + files (LP: #1555997) + - ovl: copy new uid/gid into overlayfs runtime inode + + * Miscellaneous Ubuntu changes + - SAUCE: Dump stack when X.509 certificates cannot be loaded + + -- Tim Gardner Mon, 14 Mar 2016 07:16:19 -0600 + +linux (4.4.0-13.29) xenial; urgency=low + + [ Tim Gardner ] + + * Release Tracking Bug + - LP: #1556247 + + * s390/mm: four page table levels vs. fork (LP: #1556141) + - s390/mm: four page table levels vs. fork + + * [Hyper-V] network performance patches for Xenial 16.04 (LP: #1556037) + - hv_netvsc: use skb_get_hash() instead of a homegrown implementation + - hv_netvsc: cleanup netdev feature flags for netvsc + + * fails to boot on megaraid (LP: #1552903) + - SAUCE: (noup) megaraid_sas: Don't issue kill adapter for MFI controllers in + case of PD list DCMD failure + + * ALSA: hda - add codec support for Kabylake display audio codec (LP: #1556002) + - ALSA: hda - add codec support for Kabylake display audio codec + + * Backport upstream bugfixes to ubuntu-16.04 (LP: #1555765) + - cpufreq: powernv: Free 'chips' on module exit + - cpufreq: powernv: Hot-plug safe the kworker thread + - cpufreq: powernv: Remove cpu_to_chip_id() from hot-path + - cpufreq: powernv/tracing: Add powernv_throttle tracepoint + - cpufreq: powernv: Replace pr_info with trace print for throttle event + - SAUCE: (noup) cpufreq: powernv: Fix bugs in powernv_cpufreq_{init/exit} + + * Linux netfilter IPT_SO_SET_REPLACE memory corruption (LP: #1555338) + - SAUCE: [nf,v2] netfilter: x_tables: don't rely on well-behaving userspace + + * integer overflow in xt_alloc_table_info (LP: #1555353) + - SAUCE: (noup) netfilter: x_tables: check for size overflow + + * linux: auto-generate the reconstruct information from the git tag (LP: #1555543) + - [Packaging] reconstruct -- automatically reconstruct against base tag + - [Config] reconstruct -- update to autoreconstruct output + - [Packaging] reconstruct -- update when inserting final changes + + * Xenial update to v4.4.5 stable release (LP: #1555640) + - use ->d_seq to get coherency between ->d_inode and ->d_flags + - drivers: sh: Restore legacy clock domain on SuperH platforms + - Btrfs: fix deadlock running delayed iputs at transaction commit time + - btrfs: Fix no_space in write and rm loop + - btrfs: async-thread: Fix a use-after-free error for trace + - block: Initialize max_dev_sectors to 0 + - PCI: keystone: Fix MSI code that retrieves struct pcie_port pointer + - parisc: Fix ptrace syscall number and return value modification + - mips/kvm: fix ioctl error handling + - kvm: x86: Update tsc multiplier on change. + - fbcon: set a default value to blink interval + - cifs: fix out-of-bounds access in lease parsing + - CIFS: Fix SMB2+ interim response processing for read requests + - Fix cifs_uniqueid_to_ino_t() function for s390x + - vfio: fix ioctl error handling + - KVM: x86: fix root cause for missed hardware breakpoints + - arm/arm64: KVM: Fix ioctl error handling + - iommu/amd: Apply workaround for ATS write permission check + - iommu/amd: Fix boot warning when device 00:00.0 is not iommu covered + - iommu/vt-d: Use BUS_NOTIFY_REMOVED_DEVICE in hotplug path + - target: Fix WRITE_SAME/DISCARD conversion to linux 512b sectors + - drm/ast: Fix incorrect register check for DRAM width + - drm/radeon/pm: update current crtc info after setting the powerstate + - drm/amdgpu/pm: update current crtc info after setting the powerstate + - drm/amdgpu: apply gfx_v8 fixes to gfx_v7 as well + - drm/amdgpu/gfx8: specify which engine to wait before vm flush + - drm/amdgpu: return from atombios_dp_get_dpcd only when error + - libata: fix HDIO_GET_32BIT ioctl + - libata: Align ata_device's id on a cacheline + - block: bio: introduce helpers to get the 1st and last bvec + - writeback: flush inode cgroup wb switches instead of pinning super_block + - Adding Intel Lewisburg device IDs for SATA + - arm64: vmemmap: use virtual projection of linear region + - PM / sleep / x86: Fix crash on graph trace through x86 suspend + - ata: ahci: don't mark HotPlugCapable Ports as external/removable + - tracing: Do not have 'comm' filter override event 'comm' field + - pata-rb532-cf: get rid of the irq_to_gpio() call + - Btrfs: fix loading of orphan roots leading to BUG_ON + - Revert "jffs2: Fix lock acquisition order bug in jffs2_write_begin" + - jffs2: Fix page lock / f->sem deadlock + - Fix directory hardlinks from deleted directories + - dmaengine: pxa_dma: fix cyclic transfers + - adv7604: fix tx 5v detect regression + - ALSA: usb-audio: Add a quirk for Plantronics DA45 + - ALSA: ctl: Fix ioctls for X32 ABI + - ALSA: hda - Fix mic issues on Acer Aspire E1-472 + - ALSA: rawmidi: Fix ioctls X32 ABI + - ALSA: timer: Fix ioctls for X32 ABI + - ALSA: pcm: Fix ioctls for X32 ABI + - ALSA: seq: oss: Don't drain at closing a client + - ALSA: hdspm: Fix wrong boolean ctl value accesses + - ALSA: hdsp: Fix wrong boolean ctl value accesses + - ALSA: hdspm: Fix zero-division + - ALSA: timer: Fix broken compat timer user status ioctl + - usb: chipidea: otg: change workqueue ci_otg as freezable + - USB: cp210x: Add ID for Parrot NMEA GPS Flight Recorder + - USB: qcserial: add Dell Wireless 5809e Gobi 4G HSPA+ (rev3) + - USB: qcserial: add Sierra Wireless EM74xx device ID + - USB: serial: option: add support for Telit LE922 PID 0x1045 + - USB: serial: option: add support for Quectel UC20 + - MIPS: scache: Fix scache init with invalid line size. + - MIPS: traps: Fix SIGFPE information leak from `do_ov' and `do_trap_or_bp' + - ubi: Fix out of bounds write in volume update code + - i2c: brcmstb: allocate correct amount of memory for regmap + - thermal: cpu_cooling: fix out of bounds access in time_in_idle + - block: check virt boundary in bio_will_gap() + - block: get the 1st and last bvec via helpers + - drm/i915: more virtual south bridge detection + - drm/i915: refine qemu south bridge detection + - modules: fix longstanding /proc/kallsyms vs module insertion race. + - drm/amdgpu: fix topaz/tonga gmc assignment in 4.4 stable + - Linux 4.4.5 + + * QEMU: causes vCPU steal time overflow on live migration (LP: #1494350) + - x86/mm: Fix slow_virt_to_phys() for X86_PAE again + + * TPM2.0 trusted keys fixes (LP: #1398274) + - tpm_tis: further simplify calculation of ordinal duration + - tpm_tis: Use devm_free_irq not free_irq + - tpm_tis: Ensure interrupts are disabled when the driver starts + - tpm: rework tpm_get_timeouts() + - tpm_tis: Get rid of the duplicate IRQ probing code + - tpm_tis: Refactor the interrupt setup + - tpm_tis: Tighten IRQ auto-probing + - tpm_ibmvtpm: properly handle interrupted packet receptions + + * linux: review all versioned depends/conflicts/replaces/breaks for validility (LP: #1555033) + - [Config] control.stub.in -- review versioned Build-Depends: + - [Config] control.stub.in -- review versioned + Depends/Breaks/Conflicts/Replaces + - [Config] flavour-control.stub -- review versioned Breaks/Conflicts/Replaces + - [Config] x86 vars.* -- review versioned Breaks/Conflicts/Replaces + + -- Tim Gardner Wed, 09 Mar 2016 05:11:51 -0700 + +linux (4.4.0-12.28) xenial; urgency=low + + * Miscellaneous Ubuntu changes + - reconstruct: Work around orig tarball packaging limitiations + Fixes FTBS + + -- Tim Gardner Tue, 08 Mar 2016 13:26:08 -0700 + +linux (4.4.0-12.27) xenial; urgency=low + + [ Tim Gardner ] + + * Release Tracking Bug + - LP: #1554704 + + * Fails to detect (second) display (LP: #1543683) + - drm/i915: Fix hpd live status bits for g4x + + * s390x -- various configuration changes (LP: #1543165) + - [Config] s390x -- enable CONFIG_NUMA + - [Config] s390x -- disable CONFIG_NET_VENDOR_EMULEX + - [Config] s390x -- disable CONFIG_NET_VENDOR_SYNOPSYS + - [Config] s390x -- disable CONFIG_NVMEM + - [Config] s390x -- switch preempt mode to none + + * Radeon hybrid graphics problem on resume (LP: #1554608) + - Revert "drm/radeon: call hpd_irq_event on resume" + + * Pull in upstream AMD code (amdgpu) in Xenial (LP: #1546572) + - [Config] CONFIG_DRM_AMD_POWERPLAY=y + - drm/amdgpu: use $(src) in Makefile (v2) + - drm/radeon: constify radeon_asic_ring structures + - drm/amdgpu: add a callback for reading the bios from the rom directly + - drm/amdgpu: add read_bios_from_rom callback for CI parts + - drm/amdgpu: add read_bios_from_rom callback for VI parts + - drm/amdgpu: Use new read bios from rom callback + - drm/amdgpu: Use unlocked gem unreferencing + - drm/radeon: Use unlocked gem unreferencing + - drm/amd: add new gfx8 register definitions for EDC + - drm/amdgpu: add EDC support for CZ (v3) + - drm/amd: abstract kernel rq and normal rq to priority of run queue + - drm/amdgpu/gfx8: Enable interrupt on ME1_PIPE3 + - drm/amdgpu/gfx8: update PA_SC_RASTER_CONFIG:PKR_MAP only + - drm/amdgpu: update rev id register for VI + - drm/amdgpu: add more debugging output for driver failures + - drm/amdgpu: add entity only when first job come + - drm/amdgpu: handle error case for ctx + - drm/amdgpu: unify AMDGPU_CTX_MAX_CS_PENDING and amdgpu_sched_jobs + - drm/amdgpu: change default sched jobs to 32 + - drm/amdgpu: limit visible vram if it's smaller than the BAR + - drm/amdgpu: restrict the sched jobs number to power of two + - drm/amdgpu: put VM page tables directly into duplicates list + - drm/amdgpu: split VM PD and PT handling during CS + - drm/amdgpu: keep the PTs validation list in the VM v2 + - drm/radeon: Update radeon_get_vblank_counter_kms() + - drm/radeon: only increment sync_seq when a fence is really emitted + - drm/fb-helper: Use proper plane mask for fb cleanup + - drm/amdgpu: fix dp link rate selection (v2) + - drm/radeon: fix dp link rate selection (v2) + - drm/amdgpu: share struct amdgpu_pm_state_type with powerplay module + - drm/amdgpu: mv some definition from amdgpu_acpi.c to amdgpu_acpi.h + - drm/amdgpu: mv amdgpu_acpi.h to amd/include/amd_acpi.h + - drm/amdgpu: implement new cgs interface for acpi function + - drm/amdgpu: implement cgs interface to query system info + - drm/amdgpu: add new cgs interface to get display info (v2) + - drm/amd/powerplay: add basic powerplay framework + - drm/amdgpu: disable legacy path of firmware check if powerplay is enabled + - drm/amdgpu: export amd_powerplay_func to amdgpu and other ip block + - drm/amd/powerplay: add SMU manager sub-component + - drm/amd/powerplay: add hardware manager sub-component + - SAUCE: amd: Include errno.h + - drm/amd/powerplay: add Carrizo smu support + - drm/amd/powerplay: add Carrizo dpm support + - drm/amd/powerplay: add CG and PG support for carrizo + - drm/amd/powerplay: add event manager sub-component + - drm/amd/powerplay: implement functions of amd_powerplay_func + - drm/amd/powerplay: Add ixSWRST_COMMAND_1 in bif_5_0_d.h + - drm/amd/powerplay: Move smu7*.h from amdgpu to powerplay. + - drm/amd/powerplay: add header file for tonga smu and dpm + - drm/amd/powerplay: Add Tonga SMU support + - drm/amd/powerplay: add Tonga dpm support (v3) + - drm/amd/powerplay: add/update headers for Fiji SMU and DPM + - drm/amd/powerplay: update atomctrl for fiji + - drm/amd/powerplay: add Fiji SMU support. + - drm/amd/powerplay: add Fiji DPM support. + - drm/amdgpu: add amdgpu.powerplay module option + - drm/amd/amdgpu: enable powerplay and smc firmware loading for Fiji. + - drm/amdgpu/powerplay: add function point in hwmgr_funcs for program display gap + - drm/amdgpu/poweprlay: export program display gap function to eventmgr + - drm/amdgpu/powerplay: implement pem_task for display_configuration_change + - drm/amdgpu/powerplay: program display gap for tonga. + - drm/amdgpu: enable powerplay module by default for tonga. + - drm/amdgpu: enable powerplay module by default for fiji. + - drm/amdgpu/powerplay: add some definition for other ip block to update cg pg. + - drm/amd/powerplay: add new function point in hwmgr_func for CG/PG. + - drm/amd/powerplay: Add CG and PG support for tonga + - drm/amdgpu/powerplay: add new function point in hwmgr_funcs for thermal control + - drm/amdgpu/powerplay: mv ppinterrupt.h to inc folder to share with other submodule. + - drm/amdgpu/powerplay: add thermal control interface in hwmgr. + - drm/amdgpu/powerplay: enable thermal interrupt task in eventmgr. + - drm/amdgpu/powerplay: implement thermal control for tonga. + - drm/amdgpu/powerplay: implement fan control interface in amd_powerplay_funcs + - drm/amdgpu: export fan control functions to amdgpu + - drm/amdgpu: enable sysfs interface for powerplay + - drm/amdgpu: support per device powerplay enablement (v2) + - drm/amd/powerplay: add and export hwmgr interface to eventmgr to check hw states. + - drm/amd/powerplay: implement new funcs to check current states for tonga. + - drm/amd/powerplay: refine the logic of whether need to update power state. + - drm/amd/powerplay/tonga: enable pcie and mclk forcing for low + - drm/amd/powerplay/fiji: enable pcie and mclk forcing for low + - drm/amdgpu: extract pcie helpers to common header + - drm: add drm_pcie_get_max_link_width helper (v2) + - drm/amdgpu: store pcie gen mask and link width + - drm/amdgpu/cgs: add sys info query for pcie gen and link width + - drm/amdgpu/powerplay/tonga: query supported pcie info from cgs (v2) + - drm/amdgpu/powerplay/fiji: query supported pcie info from cgs (v2) + - drm/amd/powerplay: fix boolreturn.cocci warnings + - drm/amd/powerplay/tonga: Add UVD DPM init + - drm/amd/amdgpu: add gfx clock gating support for Fiji. + - drm/amd/amdgpu: add gmc clock gating support for Fiji. + - drm/amdgpu: add sdma clock gating support for Fiji. + - drm/amd/powerplay: add parts of system clock gating support for Fiji. (v2) + - drm/amd/powerplay: enable clock gating for Fiji. + - drm/amd/powerplay: add atomctrl function to calculate CZ sclk dividers + - drm/amd/powerplay: implement smc state upload for CZ + - drm/amd/powerplay: fix warning of cast to pointer from integer of different size. + - drm/amd/powerplay: fix warning of cast to pointer from integer of different size. + - drm/amd/powerplay: add new function point in hwmgr. + - drm/amd/powerplay: add smc msg for NB P-State switch + - drm/amd/powerplay: export interface to DAL to init/change display configuration. + - drm/amd/powerplay: enable set_cpu_power_state task. (v2) + - drm/amd/powerplay: enable/disable NB pstate feature for Carrizo. + - drm/amd/powerplay: Add PPLib debug print macro. + - drm/amdgpu: rename tonga_smumgr.h to tonga_smum.h + - drm/amdgpu: rename fiji_smumgr.h to fiji_smum.h + - drm/amd/powerplay: add multimedia power gating support for Fiji. + - drm/amd/amdgpu: add uvd6.0 clock gating support. (v2) + - drm/amd/amdgpu: add vce3.0 clock gating support. (v2) + - drm/amd/amdgpu: enable uvd&vce clock gating for Fiji. + - drm/amdgpu: Prepare DKMS build for powerplay module. + - drm/amd/powerplay: add display configeration changed function in hwmgr for Fiji. + - drm/amd/powerplay: Add thermal protection support for Fiji. + - drm/amd/powerplay: Fix a bug in fan control setting default mode for Tonga and Fiji. + - drm/amd/powerplay: add functions set/get_fan_control_mode in hwmgr for Tonga. + - drm/amd/powerplay: add functions set/get_fan_control_mode in hwmgr for Fiji. + - drm/amd/powerplay: fix boolreturn.cocci warnings + - drm/amd/powerplay: fix bug that dpm funcs in debugfs/sysfs missing. + - drm/amd/powerplay: check whether enable dpm in powerplay. + - drm/amd/powerplay: move shared function of vi to hwmgr. (v2) + - drm/amdgpu/powerplay: enable sysfs and debugfs interfaces late + - drm/amd/powerplay: display gpu load when print performance for tonga. + - drm/powerplay: add debugging output to tonga_processpptables.c + - drm/powerplay: add debugging output to processpptables.c + - drm/powerplay/hwmgr: log errors in tonga_hwmgr_backend_init + - drm/amd/powerplay: Don't return an error if fan table is missing + - amd\powerplay Implement get dal power level + - amd/powerplay: Fix get dal power level + - amd/powerplay: Add structures required to report configuration change + - drm/amdgpu/powerplay: Program a calculated value as Deep Sleep clock. + - drm/amd/powerplay: add point check to avoid NULL point hang. + - drm/amd/powerplay: check whether need to enable thermal control. (v2) + - drm/amd/powerplay: show gpu load when print gpu performance for Cz. (v2) + - drm: powerplay: use div64_s64 instead of do_div + - drm/amd/powerplay: fix a reversed condition + - drm/amdgpu/cgs: cleanup some indenting + - drm/amd/powerplay: precedence bug in init_non_clock_fields() + - drm/amdgpu: fix NULL in vm_grab_id while S3 back + - drm/amd/powerplay: fix bug that NULL checks are reversed. + - drm/amd/powerplay: fix Smatch static checker warnings with indenting (v2) + - drm/amd/powerplay: fix Smatch static checker warnings + - drm/amd/powerplay: add powerplay valid check to avoid null point. (v2) + - drm/amd/powerplay: Reload and initialize the smc firmware on powerplay resume. + - drm/amdgpu: Show gpu load when display gpu performance for Ci. + - drm/amdgpu: Show gpu load when display gpu performance for Fiji of VI. + - drm/amdgpu: fix hex/decimal bug when show gpu load. + - drm/amd/powerplay: add thermal control task when resume. + - drm/amd/powerplay: enable set boot state task + - drm/amd/powerplay: enable power down asic task. (v2) + - drm/amd/powerplay: implement power down asic task for CZ + - drm/amdgpu: add warning to amdgpu_bo_gpu_offset() v2 + - drm/amdgpu/cgs: add an interface to access PCI resources + - drm/amdgpu: add irq domain support + - drm/amdgpu/powerplay: include asm/div64.h for do_div() + - drm/sysfs: use kobj_to_dev() + - drm/amd/powerplay: fix static checker warning for return meaningless value. + - drm/amdgpu/cz: add code to enable forcing UVD clocks + - drm/amdgpu/cz: add code to enable forcing VCE clocks + - drm/amdgpu/cz: force uvd clocks when sclks are forced + - drm/amdgpu/cz: force vce clocks when sclks are forced + - drm/amdgpu: use kobj_to_dev() + - drm/radeon: use kobj_to_dev() + - drm/ttm: fix adding foreign BOs to the LRU during init v2 + - drm/ttm: fix adding foreign BOs to the swap LRU + - drm/ttm: add ttm_bo_move_to_lru_tail function v2 + - drm/amdgpu: move VM page tables to the LRU end on CS v2 + - drm/amdgpu: validate duplicates first + - drm/amdgpu: add missing irq.h include + - drm/fb_cma_helper: Remove implicit call to disable_unused_functions + - drm/amdgpu: Add some tweaks to gfx 8 soft reset + - amdkfd: don't open-code memdup_user() + - amdkfd: Copy from the proper user command pointer + - drm/amdgpu: Use drm_calloc_large for VM page_tables array + - amd/powerplay: disable powerplay by default initially + - drm/amdgpu: Allow the driver to load if amdgpu.powerplay=1 on asics without powerplay support + - drm/atomic-helper: Export framebuffer_changed() + - drm/amd/amdgpu: Improve amdgpu_dpm* macros to avoid unexpected result (v2) + - drm/amdgpu: add a message to indicate when powerplay is enabled (v2) + - drm/amdgpu: fix next_rptr handling for debugfs + - drm/radeon: Ensure radeon bo is unreserved in radeon_gem_va_ioctl + - drm/radeon: only init fbdev if we have connectors + - drm/amdgpu: don't init fbdev if we don't have any connectors + - drm/amd/powerplay: Update SMU firmware loading for Stoney + - drm/amdgpu: fix non-ANSI declaration of amdgpu_amdkfd_gfx_*_get_functions() + - drm/amdkfd: Remove unnecessary cast in kfree + - drm/amdgpu: only move pt bos in LRU list on success + - drm/amdgpu: mask out WC from BO on unsupported arches + - drm/amdgpu/gfx8: enable cp inst/reg error interrupts + - drm/amdgpu/gfx7: enable cp inst/reg error interrupts + - drm/amdgpu: load MEC ucode manually on iceland + - drm/amdgpu: disable uvd and vce clockgating on Fiji + - drm/amdgpu: add pcie cap module parameters (v2) + - drm/amdgpu/cik: don't mess with aspm if gpu is root bus + - drm/amdgpu/dpm/ci: switch over to the common pcie caps interface + - drm/amdgpu: handle uvd pg flags properly + - drm/amdgpu: handle vce pg flags properly + - drm/amdgpu: clean up vce pg flags for cz/st + - drm/amdgpu: be consistent with uvd cg flags + - drm/amd/powerplay/cz: disable uvd pg + - drm/amd/powerplay/cz: disable vce pg + - drm/amd/powerplay/tonga: disable uvd pg + - drm/amd/powerplay/tonga: disable vce pg + - drm/amdgpu: add a cgs interface to fetch cg and pg flags + - drm/amdgpu: remove unused cg defines + - drma/dmgpu: move cg and pg flags into shared headers + - drm/amdgpu/tonga: plumb pg flags through to powerplay + - drm/amdgpu/cz: plumb pg flags through to powerplay + - SAUCE: drm/amdgpu/cz: enable/disable vce dpm even if vce pg is disabled + + * mlx4_core Set UAR page size to 4KB regardless of system page size (LP: + #1552632) + - net/mlx4_core: Set UAR page size to 4KB regardless of system page size + + * Miscellaneous Ubuntu changes + - [Config] CONFIG_CAVIUM_ERRATUM_27456=y + + * Miscellaneous upstream changes + - net: thunderx: Fix for Qset error due to CQ full + - ahci: Workaround for ThunderX Errata#22536 + - arm64: Add workaround for Cavium erratum 27456 + - tipc: fix nullptr crash during subscription cancel + + -- Tim Gardner Mon, 07 Mar 2016 05:04:22 -0700 + +linux (4.4.0-11.26) xenial; urgency=low + + [ Tim Gardner ] + + * Release Tracking Bug + - LP: #1553391 + + * Xenial update to v4.4.4 stable release (LP: #1553179) + - af_iucv: Validate socket address length in iucv_sock_bind() + - gro: Make GRO aware of lightweight tunnels. + - net: dp83640: Fix tx timestamp overflow handling. + - tunnels: Allow IPv6 UDP checksums to be correctly controlled. + - lwt: fix rx checksum setting for lwt devices tunneling over ipv6 + - tcp: fix NULL deref in tcp_v4_send_ack() + - af_unix: fix struct pid memory leak + - pptp: fix illegal memory access caused by multiple bind()s + - sctp: allow setting SCTP_SACK_IMMEDIATELY by the application + - net: dsa: fix mv88e6xxx switches + - tipc: fix connection abort during subscription cancel + - inet: frag: Always orphan skbs inside ip_defrag() + - switchdev: Require RTNL mutex to be held when sending FDB notifications + - tcp: beware of alignments in tcp_get_info() + - ipv6: enforce flowi6_oif usage in ip6_dst_lookup_tail() + - ipv6/udp: use sticky pktinfo egress ifindex on connect() + - ipv6: addrconf: Fix recursive spin lock call + - ipv6: fix a lockdep splat + - unix: correctly track in-flight fds in sending process user_struct + - tcp: do not drop syn_recv on all icmp reports + - net:Add sysctl_max_skb_frags + - tg3: Fix for tg3 transmit queue 0 timed out when too many gso_segs + - enic: increment devcmd2 result ring in case of timeout + - sctp: translate network order to host order when users get a hmacid + - net: Copy inner L3 and L4 headers as unaligned on GRE TEB + - flow_dissector: Fix unaligned access in __skb_flow_dissector when used by + eth_get_headlen + - bpf: fix branch offset adjustment on backjumps after patching ctx expansion + - bonding: Fix ARP monitor validation + - ipv4: fix memory leaks in ip_cmsg_send() callers + - af_unix: Don't set err in unix_stream_read_generic unless there was an error + - af_unix: Guard against other == sk in unix_dgram_sendmsg + - tipc: fix premature addition of node to lookup table + - tcp: md5: release request socket instead of listener + - qmi_wwan: add "4G LTE usb-modem U901" + - net/mlx4_en: Count HW buffer overrun only once + - net/mlx4_en: Avoid changing dev->features directly in run-time + - l2tp: Fix error creating L2TP tunnels + - pppoe: fix reference counting in PPPoE proxy + - net_sched fix: reclassification needs to consider ether protocol changes + - route: check and remove route cache when we get route + - tcp/dccp: fix another race at listener dismantle + - IFF_NO_QUEUE: Fix for drivers not calling ether_setup() + - rtnl: RTM_GETNETCONF: fix wrong return value + - tipc: unlock in error path + - unix_diag: fix incorrect sign extension in unix_lookup_by_ino + - sctp: Fix port hash table size computation + - ext4: fix bh->b_state corruption + - ARM: debug-ll: fix BCM63xx entry for multiplatform + - arm64: errata: Add -mpc-relative-literal-loads to build flags + - KVM: s390: fix guest fprs memory leak + - devm_memremap: Fix error value when memremap failed + - drm/gma500: Use correct unref in the gem bo create function + - ARM: 8457/1: psci-smp is built only for SMP + - lib/ucs2_string: Add ucs2 -> utf8 helper functions + - efi: Use ucs2_as_utf8 in efivarfs instead of open coding a bad version + - efi: Do variable name validation tests in utf8 + - efi: Make our variable validation list include the guid + - efi: Make efivarfs entries immutable by default + - efi: Add pstore variables to the deletion whitelist + - lib/ucs2_string: Correct ucs2 -> utf8 conversion + - bcache: fix a livelock when we cause a huge number of cache misses + - bcache: Add a cond_resched() call to gc + - bcache: clear BCACHE_DEV_UNLINK_DONE flag when attaching a backing device + - bcache: fix a leak in bch_cached_dev_run() + - bcache: unregister reboot notifier if bcache fails to unregister device + - bcache: allows use of register in udev to avoid "device_busy" error. + - bcache: Change refill_dirty() to always scan entire disk if necessary + - dm thin: fix race condition when destroying thin pool workqueue + - can: ems_usb: Fix possible tx overflow + - usb: dwc3: Fix assignment of EP transfer resources + - USB: cp210x: add IDs for GE B650V3 and B850V3 boards + - USB: option: add support for SIM7100E + - USB: option: add "4G LTE usb-modem U901" + - drivers: android: correct the size of struct binder_uintptr_t for + BC_DEAD_BINDER_DONE + - spi: omap2-mcspi: Prevent duplicate gpio_request + - iw_cxgb3: Fix incorrectly returning error on success + - drm/i915: shut up gen8+ SDE irq dmesg noise + - ocfs2: unlock inode if deleting inode from orphan fails + - mm: thp: fix SMP race condition between THP page fault and MADV_DONTNEED + - mm: numa: quickly fail allocations for NUMA balancing on full nodes + - genirq: Validate action before dereferencing it in handle_irq_event_percpu() + - clocksource/drivers/vt8500: Increase the minimum delta + - s390/kvm: remove dependency on struct save_area definition + - KVM: s390: fix memory overwrites when vx is disabled + - Btrfs: add missing brelse when superblock checksum fails + - Btrfs: igrab inode in writepage + - btrfs: statfs: report zero available if metadata are exhausted + - Btrfs: send, don't BUG_ON() when an empty symlink is found + - Btrfs: fix number of transaction units required to create symlink + - Btrfs: fix transaction handle leak on failure to create hard link + - Btrfs: Initialize btrfs_root->highest_objectid when loading tree root and + subvolume roots + - btrfs: initialize the seq counter in struct btrfs_device + - s390: fix normalization bug in exception table sorting + - s390/dasd: prevent incorrect length error under z/VM after PAV changes + - s390/dasd: fix refcount for PAV reassignment + - s390/dasd: fix performance drop + - uml: flush stdout before forking + - uml: fix hostfs mknod() + - um: link with -lpthread + - locks: fix unlock when fcntl_setlk races with a close + - rtlwifi: rtl_pci: Fix kernel panic + - rtlwifi: rtl8192cu: Add missing parameter setup + - rtlwifi: rtl8192ce: Fix handling of module parameters + - rtlwifi: rtl8192de: Fix incorrect module parameter descriptions + - rtlwifi: rtl8723ae: Fix initialization of module parameters + - rtlwifi: rtl8192se: Fix module parameter initialization + - rtlwifi: rtl8188ee: Fix module parameter initialization + - rtlwifi: rtl8723be: Fix module parameter initialization + - mei: fix fasync return value on error + - mei: validate request value in client notify request ioctl + - namei: ->d_inode of a pinned dentry is stable only for positives + - rc: sunxi-cir: Initialize the spinlock properly + - media: dvb-core: Don't force CAN_INVERSION_AUTO in oneshot mode + - si2157: return -EINVAL if firmware blob is too big + - gspca: ov534/topro: prevent a division by 0 + - vb2: fix a regression in poll() behavior for output,streams + - tda1004x: only update the frontend properties if locked + - dm space map metadata: remove unused variable in brb_pop() + - dm snapshot: fix hung bios when copy error occurs + - dm: fix dm_rq_target_io leak on faults with .request_fn DM w/ blk-mq paths + - coresight: checking for NULL string in coresight_name_match() + - irqchip/omap-intc: Add support for spurious irq handling + - irqchip/mxs: Add missing set_handle_irq() + - irqchip/atmel-aic: Fix wrong bit operation for IRQ priority + - irqchip/gic-v3-its: Fix double ICC_EOIR write for LPI in EOImode==1 + - posix-clock: Fix return code on the poll method's error path + - clockevents/tcb_clksrc: Prevent disabling an already disabled clock + - mmc: usdhi6rol0: handle NULL data in timeout + - mmc: sdhci-pci: Do not default to 33 Ohm driver strength for Intel SPT + - mmc: sdio: Fix invalid vdd in voltage switch power cycle + - mmc: mmc: Fix incorrect use of driver strength switching HS200 and HS400 + - mmc: sdhci: Fix sdhci_runtime_pm_bus_on/off() + - mmc: core: Enable tuning according to the actual timing + - mmc: mmci: fix an ages old detection error + - mmc: sdhci-acpi: Fix card detect race for Intel BXT/APL + - mmc: pxamci: fix again read-only gpio detection polarity + - mmc: sdhci-pci: Fix card detect race for Intel BXT/APL + - mmc: sdhci: Allow override of mmc host operations + - mmc: sdhci: Allow override of get_cd() called from sdhci_request() + - Bluetooth: Use continuous scanning when creating LE connections + - Bluetooth: Add support of Toshiba Broadcom based devices + - Bluetooth: Fix incorrect removing of IRKs + - Bluetooth: 6lowpan: Fix kernel NULL pointer dereferences + - Bluetooth: 6lowpan: Fix handling of uncompressed IPv6 packets + - time: Avoid signed overflow in timekeeping_get_ns() + - cputime: Prevent 32bit overflow in time[val|spec]_to_cputime() + - Revert "MIPS: Fix PAGE_MASK definition" + - MIPS: Loongson-3: Fix SMP_ASK_C0COUNT IPI handler + - MIPS: hpet: Choose a safe value for the ETIME check + - MIPS: Fix some missing CONFIG_CPU_MIPSR6 #ifdefs + - MIPS: Fix buffer overflow in syscall_get_arguments() + - EDAC: Robustify workqueues destruction + - EDAC, mc_sysfs: Fix freeing bus' name + - sparc64: fix incorrect sign extension in sys_sparc64_personality + - clk: exynos: use irqsave version of spin_lock to avoid deadlock with irqs + - regulator: axp20x: Fix GPIO LDO enable value for AXP22x + - regulator: mt6311: MT6311_REGULATOR needs to select REGMAP_I2C + - virtio_balloon: fix race by fill and leak + - virtio_balloon: fix race between migration and ballooning + - virtio_pci: fix use after free on release + - drm/vmwgfx: Fix an incorrect lock check + - drm/vmwgfx: Fix a width / pitch mismatch on framebuffer updates + - drm/vmwgfx: respect 'nomodeset' + - drm/amdgpu: Fix off-by-one errors in amdgpu_vm_bo_map + - drm/amdgpu: call hpd_irq_event on resume + - drm/amdgpu: fix lost sync_to if scheduler is enabled. + - drm/amdgpu: fix tonga smu resume + - drm/amdgpu: fix amdgpu_bo_pin_restricted VRAM placing v2 + - drm/amdgpu: no need to load MC firmware on fiji + - drm/amdgpu: move gmc7 support out of CIK dependency + - drm/amdgpu: iceland use CI based MC IP + - drm/amdgpu: The VI specific EXE bit should only apply to GMC v8.0 above + - drm/amdgpu: pull topaz gmc bits into gmc_v7 + - drm/amdgpu: drop topaz support from gmc8 module + - drm/amdgpu: don't load MEC2 on topaz + - drm/amdgpu: remove exp hardware support from iceland + - drm/amdgpu: fix s4 resume + - drm/amdgpu: remove unnecessary forward declaration + - drm/amdgpu: hold reference to fences in amdgpu_sa_bo_new (v2) + - drm/amdgpu: fix issue with overlapping userptrs + - drm/amdgpu: use post-decrement in error handling + - drm/amdgpu: Don't hang in amdgpu_flip_work_func on disabled crtc. + - drm/amdgpu/pm: adjust display configuration after powerstate + - drm/nouveau/kms: take mode_config mutex in connector hotplug path + - drm/nouveau/display: Enable vblank irqs after display engine is on again. + - drm/nouveau/disp/dp: ensure sink is powered up before attempting link + training + - drm/nouveau: platform: Fix deferred probe + - drm/dp/mst: process broadcast messages correctly + - drm/dp/mst: always send reply for UP request + - drm/dp/mst: fix in MSTB RAD initialization + - drm/dp/mst: fix in RAD element access + - drm: Add drm_fixp_from_fraction and drm_fixp2int_ceil + - drm/dp/mst: Calculate MST PBN with 31.32 fixed point + - drm/dp/mst: move GUID storage from mgr, port to only mst branch + - drm/dp/mst: Reverse order of MST enable and clearing VC payload table. + - drm/dp/mst: deallocate payload on port destruction + - drm/radeon: Fix off-by-one errors in radeon_vm_bo_set_addr + - drm/radeon: call hpd_irq_event on resume + - drm/radeon: Fix "slow" audio over DP on DCE8+ + - drm/radeon: clean up fujitsu quirks + - drm/radeon: properly byte swap vce firmware setup + - drm/radeon: cleaned up VCO output settings for DP audio + - drm/radeon: Add a common function for DFS handling + - drm/radeon: fix DP audio support for APU with DCE4.1 display engine + - drm: add helper to check for wc memory support + - drm/radeon: mask out WC from BO on unsupported arches + - drm/radeon: hold reference to fences in radeon_sa_bo_new + - drm: fix missing reference counting decrease + - drm/i915: Restore inhibiting the load of the default context + - drm/i915: intel_hpd_init(): Fix suspend/resume reprobing + - drm/i915: Init power domains early in driver load + - drm/i915: Make sure DC writes are coherent on flush. + - drm/i915/dp: fall back to 18 bpp when sink capability is unknown + - drm/i915: Don't reject primary plane windowing with color keying enabled on + SKL+ + - drm/i915/skl: Don't skip mst encoders in skl_ddi_pll_select() + - drm/i915/dsi: defend gpio table against out of bounds access + - drm/i915/dsi: don't pass arbitrary data to sideband + - drm/i915: fix error path in intel_setup_gmbus() + - drm/qxl: use kmalloc_array to alloc reloc_info in qxl_process_single_command + - drm/radeon: use post-decrement in error handling + - drm: No-Op redundant calls to drm_vblank_off() (v2) + - drm: Prevent vblank counter bumps > 1 with active vblank clients. (v2) + - drm: Fix drm_vblank_pre/post_modeset regression from Linux 4.4 + - drm: Fix treatment of drm_vblank_offdelay in drm_vblank_on() (v2) + - drm/radeon: Don't hang in radeon_flip_work_func on disabled crtc. (v2) + - drm/radeon/pm: adjust display configuration after powerstate + - make sure that freeing shmem fast symlinks is RCU-delayed + - toshiba_acpi: Fix blank screen at boot if transflective backlight is + supported + - ideapad-laptop: Add Lenovo ideapad Y700-17ISK to no_hw_rfkill dmi list + - ideapad-laptop: Add Lenovo Yoga 700 to no_hw_rfkill dmi list + - uapi: update install list after nvme.h rename + - lib: sw842: select crc32 + - ACPI / video: Add disable_backlight_sysfs_if quirk for the Toshiba Portege + R700 + - ACPI / video: Add disable_backlight_sysfs_if quirk for the Toshiba Satellite + R830 + - ACPI: Revert "ACPI / video: Add Dell Inspiron 5737 to the blacklist" + - ACPI / PCI / hotplug: unlock in error path in acpiphp_enable_slot() + - nfit: fix multi-interface dimm handling, acpi6.1 compatibility + - dmaengine: dw: fix cyclic transfer setup + - dmaengine: dw: fix cyclic transfer callbacks + - dmaengine: at_xdmac: fix resume for cyclic transfers + - dmaengine: dw: disable BLOCK IRQs for non-cyclic xfer + - IB/cm: Fix a recently introduced deadlock + - IB/qib: fix mcast detach when qp not attached + - IB/qib: Support creating qps with GFP_NOIO flag + - IB/mlx5: Expose correct maximum number of CQE capacity + - Thermal: initialize thermal zone device correctly + - Thermal: handle thermal zone device properly during system sleep + - Thermal: do thermal zone update after a cooling device registered + - hwmon: (dell-smm) Blacklist Dell Studio XPS 8000 + - hwmon: (gpio-fan) Remove un-necessary speed_index lookup for thermal hook + - hwmon: (ads1015) Handle negative conversion values correctly + - cpufreq: pxa2xx: fix pxa_cpufreq_change_voltage prototype + - cpufreq: Fix NULL reference crash while accessing policy->governor_data + - seccomp: always propagate NO_NEW_PRIVS on tsync + - libceph: fix ceph_msg_revoke() + - libceph: don't bail early from try_read() when skipping a message + - libceph: use the right footer size when skipping a message + - libceph: don't spam dmesg with stray reply warnings + - sd: Optimal I/O size is in bytes, not sectors + - Staging: speakup: Fix getting port information + - Revert "Staging: panel: usleep_range is preferred over udelay" + - cdc-acm:exclude Samsung phone 04e8:685d + - perf stat: Do not clean event's private stats + - tick/nohz: Set the correct expiry when switching to nohz/lowres mode + - rfkill: fix rfkill_fop_read wait_event usage + - mac80211: Requeue work after scan complete for all VIF types. + - workqueue: handle NUMA_NO_NODE for unbound pool_workqueue lookup + - Revert "workqueue: make sure delayed work run in local cpu" + - ALSA: hda - Apply clock gate workaround to Skylake, too + - ALSA: hda - Fixing background noise on Dell Inspiron 3162 + - target: Fix LUN_RESET active I/O handling for ACK_KREF + - target: Fix LUN_RESET active TMR descriptor handling + - target: Fix TAS handling for multi-session se_node_acls + - target: Fix remote-port TMR ABORT + se_cmd fabric stop + - target: Fix race with SCF_SEND_DELAYED_TAS handling + - spi: atmel: fix gpio chip-select in case of non-DT platform + - libata: fix sff host state machine locking while polling + - ARCv2: STAR 9000950267: Handle return from intr to Delay Slot #2 + - ARCv2: SMP: Emulate IPI to self using software triggered interrupt + - PCI/AER: Flush workqueue on device remove to avoid use-after-free + - cpuset: make mm migration asynchronous + - cgroup: make sure a parent css isn't offlined before its children + - writeback: keep superblock pinned during cgroup writeback association + switches + - phy: core: fix wrong err handle for phy_power_on + - i2c: i801: Adding Intel Lewisburg support for iTCO + - bio: return EINTR if copying to user space got interrupted + - block: fix use-after-free in dio_bio_complete + - nfs: fix nfs_size_to_loff_t + - NFSv4: Fix a dentry leak on alias use + - of/irq: Fix msi-map calculation for nonzero rid-base + - KVM: async_pf: do not warn on page allocation failures + - KVM: arm/arm64: vgic: Ensure bitmaps are long enough + - KVM: x86: fix missed hardware breakpoints + - KVM: x86: MMU: fix ubsan index-out-of-range warning + - powerpc/eeh: Fix partial hotplug criterion + - tracing: Fix showing function event in available_events + - sunrpc/cache: fix off-by-one in qword_get() + - kernel/resource.c: fix muxed resource handling in __request_region() + - do_last(): don't let a bogus return value from ->open() et.al. to confuse us + - ARM: OMAP2+: Fix onenand initialization to avoid filesystem corruption + - ARM: at91/dt: fix typo in sama5d2 pinmux descriptions + - xen/arm: correctly handle DMA mapping of compound pages + - xen/scsiback: correct frontend counting + - xen/pciback: Check PF instead of VF for PCI_COMMAND_MEMORY + - xen/pciback: Save the number of MSI-X entries to be copied later. + - xen/pcifront: Fix mysterious crashes when NUMA locality information was + extracted. + - should_follow_link(): validate ->d_seq after having decided to follow + - do_last(): ELOOP failure exit should be done after leaving RCU mode + - hpfs: don't truncate the file when delete fails + - x86/irq: Call chip->irq_set_affinity in proper context + - x86/irq: Fix a race in x86_vector_free_irqs() + - x86/irq: Validate that irq descriptor is still active + - x86/irq: Do not use apic_chip_data.old_domain as temporary buffer + - x86/irq: Reorganize the return path in assign_irq_vector + - x86/irq: Reorganize the search in assign_irq_vector + - x86/irq: Check vector allocation early + - x86/irq: Copy vectormask instead of an AND operation + - x86/irq: Get rid of code duplication + - x86/irq: Remove offline cpus from vector cleanup + - x86/irq: Clear move_in_progress before sending cleanup IPI + - x86/irq: Remove the cpumask allocation from send_cleanup_vector() + - x86/irq: Remove outgoing CPU from vector cleanup mask + - x86/irq: Call irq_force_move_complete with irq descriptor + - x86/irq: Plug vector cleanup race + - IB/cma: Fix RDMA port validation for iWarp + - iwlwifi: dvm: fix WoWLAN + - iwlwifi: pcie: properly configure the debug buffer size for 8000 + - iwlwifi: update and fix 7265 series PCI IDs + - iwlwifi: mvm: don't allow sched scans without matches to be started + - Revert "UBUNTU: SAUCE: bcache: prevent crash on changing writeback_running" + - bcache: prevent crash on changing writeback_running + - Linux 4.4.4 + + * mlx4_en didn't choose time-stamping shift value according to HW frequency + (LP: #1552627) + - net/mlx4_en: Choose time-stamping shift value according to HW frequency + + * [Ubuntu 16.04] Help to flush kernel panics to console (LP: #1552332) + - target/transport: add flag to indicate CPU Affinity is observed + - powerpc/powernv: Add a kmsg_dumper that flushes console output on panic + - powerpc/powernv: Fix OPAL_CONSOLE_FLUSH prototype and usages + + * [Ubuntu 16.04] Update qla2xxx driver for POWER (QLogic) (LP: #1541456) + - qla2xxx: Fix warning reported by static checker + - qla2xxx: Fix TMR ABORT interaction issue between qla2xxx and TCM + - qla2xxx: Fix stale pointer access. + - qla2xxx: Use ATIO type to send correct tmr response + - qla2xxx: use TARGET_SCF_USE_CPUID flag to indiate CPU Affinity + + * [s390x] zfcp.ko missing from scsi-modules udeb (LP: #1552314) + - [Config] Add s390x zfcp to scsi-modules udeb + + -- Tim Gardner Wed, 02 Mar 2016 08:08:16 -0700 + +linux (4.4.0-10.25) xenial; urgency=low + + [ Tim Gardner ] + + * Release Tracking Bug + - LP: #1552247 + + * linux: 4.4.0-9.X fails yama ptrace restrictions tests (LP: #1551894) + - security: let security modules use PTRACE_MODE_* with bitmasks + + * [wily][regression] systemtap script compilation broken by new kernels (LP: #1545330) + - SAUCE: (noup) locking/qspinlock: Move __ARCH_SPIN_LOCK_UNLOCKED to qspinlock_types.h + + * [Feature]SD/SDIO/eMMC support for Broxton-P (LP: #1520454) + - mmc: sdhci: 64-bit DMA actually has 4-byte alignment + - mmc: sdhci: Fix DMA descriptor with zero data length + + * Miscellaneous Ubuntu changes + - SAUCE: (noup) cgroup: fix and restructure error handling in copy_cgroup_ns() + + -- Tim Gardner Mon, 29 Feb 2016 13:04:14 -0700 + +linux (4.4.0-9.24) xenial; urgency=low + + [ Tim Gardner ] + + * Release Tracking Bug + - LP: #1551319 + + * AppArmor logs denial for when the device path is ENOENT (LP: #1482943) + - SAUCE: apparmor: fix log of apparmor audit message when kern_path() fails + + * BUG: unable to handle kernel NULL pointer dereference (aa_label_merge) (LP: + #1448912) + - SAUCE: apparmor: Fix: insert race between label_update and label_merge + - SAUCE: apparmor: Fix: ensure aa_get_newest will trip debugging if the + replacedby is not setup + - SAUCE: apparmor: Fix: label merge handling of marking unconfined and stale + - SAUCE: apparmor: Fix: refcount race between locating in labelset and get + - SAUCE: apparmor: Fix: ensure new labels resulting from merge have a + replacedby + - SAUCE: apparmor: Fix: label_vec_merge insertion + - SAUCE: apparmor: Fix: deadlock in aa_put_label() call chain + - SAUCE: apparmor: Fix: add required locking of __aa_update_replacedby on + merge path + - SAUCE: apparmor: Fix: convert replacedby update to be protected by the + labelset lock + - SAUCE: apparmor: Fix: update replacedby allocation to take a gfp parameter + + * apparmor kernel BUG kills firefox (LP: #1430546) + - SAUCE: apparmor: Disallow update of cred when then subjective != the + objective cred + - SAUCE: apparmor: rework retrieval of the current label in the profile update + case + + * sleep from invalid context in aa_move_mount (LP: #1539349) + - SAUCE: apparmor: fix sleep from invalid context + + * s390x: correct restore of high gprs on signal return (LP: #1550468) + - s390/compat: correct restore of high gprs on signal return + + * missing SMAP support (LP: #1550517) + - x86/entry/compat: Add missing CLAC to entry_INT80_32 + + * Floating-point exception handler receives empty Data-Exception Code in + Floating Point Control register (LP: #1548414) + - s390/fpu: signals vs. floating point control register + + * kvm fails to boot GNU Hurd kernels with 4.4 Xenial kernel (LP: #1550596) + - KVM: x86: fix conversion of addresses to linear in 32-bit protected mode + + * Surelock GA2 SP1: capiredp01: cxl_init_adapter fails for CAPI devices + 0000:01:00.0 and 0005:01:00.0 after upgrading to 840.10 Platform firmware + build fips840/b1208b_1604.840 (LP: #1532914) + - cxl: Fix PSL timebase synchronization detection + + * [Feature]EDAC support for Knights Landing (LP: #1519631) + - EDAC, sb_edac: Set fixed DIMM width on Xeon Knights Landing + + * Various failures of kernel_security suite on Xenial kernel on s390x arch + (LP: #1531327) + - [config] s390x -- CONFIG_DEFAULT_MMAP_MIN_ADDR=65536 + + * Unable to install VirtualBox Guest Service in 15.04 (LP: #1434579) + - [Config] Provides: virtualbox-guest-modules when appropriate + + * linux is missing provides for virtualbox-guest-modules [i386 amd64 x32] (LP: + #1507588) + - [Config] Provides: virtualbox-guest-modules when appropriate + + * Backport more recent driver for SKL, KBL and BXT graphics (LP: #1540390) + - SAUCE: i915_bpo: Provide a backport driver for SKL, KBL & BXT graphics + - SAUCE: i915_bpo: Update intel_ips.h file location + - SAUCE: i915_bpo: Rename the backport driver to i915_bpo + - SAUCE: i915_bpo: Add i915_bpo_*() calls for ubuntu/i915 + - drm/i915: remove an extra level of indirection in PCI ID list + - drm/i915/kbl: Add Kabylake PCI ID + - drm/i915/kbl: Add Kabylake GT4 PCI ID + - mm: Export nr_swap_pages + - async: export current_is_async() + - drm: fix potential dangling else problems in for_each_ macros + - dp/mst: add SDP stream support + - drm: Implement drm_modeset_lock_all_ctx() + - drm: Add "prefix" parameter to drm_rect_debug_print() + - drm/i915: Set connector_state->connector using the helper. + - drm/atomic: add connector mask to drm_crtc_state. + - drm/i915: Report context GTT size + - drm/i915: Add get_eld audio component + - SAUCE: Backport I915_PARAM_HAS_EXEC_SOFTPIN and EXEC_OBJECT_PINNED + - SAUCE: i915_bpo: Revert passing plane/encoder name + - SAUCE: sound/hda: Load i915_bpo from the hda driver on SKL/KBL/BXT + - SAUCE: i915_bpo: Support only SKL, KBL and BXT with the backport driver + - drm/i915/bxt: update list of PCIIDs + - drm/i915/skl: Add missing SKL ids + - SAUCE: i915_bpo: Revert "drm/i915: Defer probe if gmux is present but its + driver isn't" + - SAUCE: uapi/drm/i915: Backport I915_EXEC_BSD_MASK + - drm/atomic: Do not unset crtc when an encoder is stolen + - drm/i915: Update connector_mask during readout, v2. + - drm/atomic: Add encoder_mask to crtc_state, v3. + - SAUCE: drm/core: Add drm_encoder_index. + - SAUCE: i915_bpo: Revert "drm/i915: Switch DDC when reading the EDID" + - i915_bpo: [Config] Enable CONFIG_DRM_I915_BPO=m + + * arm64: guest hangs when ntpd is running (LP: #1549494) + - hrtimer: Add support for CLOCK_MONOTONIC_RAW + - hrtimer: Catch illegal clockids + - KVM: arm/arm64: timer: Switch to CLOCK_MONOTONIC_RAW + + * Miscellaneous Ubuntu changes + - [Debian] git-ubuntu-log -- wrap long bug and commit titles + - [Config] CONFIG_ARM_SMMU=y on arm64 + - rebase to v4.4.3 + - [Debian] git-ubuntu-log -- ensure we get the last commit + - [Config] fix up spelling of probably again + - [Debian] perf -- build in the context of the full generated local headers + - SAUCE: tools: lib/bpf -- add generated headers to search path + - SAUCE: proc: Always set super block owner to init_user_ns + - SAUCE: fix-up: kern_mount fail path should not be doing put_buffers() + - SAUCE: apparmor: Fix: oops do to invalid null ptr deref in label print fns + - SAUCE: apparmor: debug: POISON label and replaceby pointer on free + - SAUCE: apparmor: add underscores to indicate aa_label_next_not_in_set() use + needs locking + - SAUCE: apparmor: Fix: refcount leak in aa_label_merge + - SAUCE: apparmor: ensure that repacedby sharing is done correctly + - SAUCE: apparmor Fix: refcount bug in pivotroot mediation + - SAUCE: apparmor: Fix: now that insert can force replacement use it instead + of remove_and_insert + - SAUCE: apparmor: Fix: refcount bug when inserting label update that + transitions ns + - SAUCE: apparmor: Fix: break circular refcount for label that is directly + freed. + - SAUCE: apparmor: Don't remove label on rcu callback if the label has already + been removed + - SAUCE: apparmor: Fix: query label file permission + - SAUCE: apparmor: fix: ref count leak when profile sha1 hash is read + - SAUCE: fixup: cleanup return handling of labels + - SAUCE: fix: replacedby forwarding is not being properly update when ns is + destroyed + - SAUCE: fixup: make __share_replacedby private to get rid of build warning + - SAUCE: fixup: 20/23 locking issue around in __label_update + - SAUCE: fixup: get rid of unused var build warning + - SAUCE: fixup: cast poison values to remove warnings + - SAUCE: apparmor: fix refcount race when finding a child profile + - SAUCE: fixup: warning about aa_label_vec_find_or_create not being static + - SAUCE: fix: audit "no_new_privs" case for exec failure + - SAUCE: Fixup: __label_update() still doesn't handle some cases correctly. + - SAUCE: Move replacedby allocation into label_alloc + - [Debian] supply zfs dkms Provides: based on do_zfs + - [Config] supply zfs dkms Provides: based on do_zfs + - [Config] drop linux-image-3.0 provides + + * Miscellaneous upstream changes + - x86/mpx: Fix off-by-one comparison with nr_registers + + [ Upstream Kernel Changes ] + + * rebase to v4.4.3 + + -- Tim Gardner Thu, 25 Feb 2016 19:47:55 -0700 + +linux (4.4.0-8.23) xenial; urgency=low + + * cgroup namespace mounts broken in containers (LP: #1549398) + - SAUCE: kernfs: Always set super block owner to init_user_ns + + * 4.4.0-7.22 no longer boots on arm64 (LP: #1547718) + - arm64: mm: avoid calling apply_to_page_range on empty range + - UBUNTU SAUCE: arm: mm: avoid calling apply_to_page_range on empty range + + * kernel install failed /bin/cp: cannot stat ‘/boot/initrd.img-4.3.0-7-generic’: No such file or directory (LP: #1536810) + - [Config] postinst -- handle recreating symlinks when a real file is present + + * insecure overlayfs xattrs handling in copy_up (LP: #1534961) + - SAUCE: cred: Add clone_cred() interface + - SAUCE: overlayfs: Use mounter's credentials instead of selectively raising caps + - SAUCE: overlayfs: Skip permission checking for trusted.overlayfs.* xattrs + - SAUCE: overlayfs: Be more careful about copying up sxid files + - SAUCE: overlayfs: Propogate nosuid from lower and upper mounts + + * overlayfs over fuse should refuse copy_up of files if uid/gid not mapped (LP: #1535150) + - SAUCE: cred: Add clone_cred() interface + - SAUCE: overlayfs: Use mounter's credentials instead of selectively raising caps + - SAUCE: overlayfs: Skip permission checking for trusted.overlayfs.* xattrs + - SAUCE: overlayfs: Be more careful about copying up sxid files + - SAUCE: overlayfs: Propogate nosuid from lower and upper mounts + + * overlay: mkdir fails if directory exists in lowerdir in a user namespace (LP: #1531747) + - SAUCE: cred: Add clone_cred() interface + - SAUCE: overlayfs: Use mounter's credentials instead of selectively raising caps + - SAUCE: overlayfs: Skip permission checking for trusted.overlayfs.* xattrs + + * Update Intel ethernet drivers to Fortville SW5 (LP: #1547674) + - net: bulk free infrastructure for NAPI context, use napi_consume_skb + - net: Add eth_platform_get_mac_address() helper. + - i40e: Add mac_filter_element at the end of the list instead of HEAD + - i40e/i40evf: Fix RSS rx-flow-hash configuration through ethtool + - i40e: Replace X722 mac check in ethtool get_settings + - i40evf: allow channel bonding of VFs + - i40e: define function capabilities in only one place + - i40evf: null out ring pointers on free + - i40e: Cleanup the code with respect to restarting autoneg + - i40e: update features with right offload + - i40e: bump version to 1.4.10 + - i40e: add new device IDs for X722 + - i40e: Extend ethtool RSS hooks for X722 + - i40e/i40evf: Fix for UDP/TCP RSS for X722 + - i40evf: add new write-back mode + - i40e/i40evf: Use private workqueue + - i40e: add new proxy-wol bit for X722 + - i40e: Limit DCB FW version checks to X710/XL710 devices + - i40e: AQ Add Run PHY Activity struct + - i40e: AQ Geneve cloud tunnel type + - i40e: AQ Add external power class to get link status + - i40e: add 100Mb ethtool reporting + - ixgbe: bulk free SKBs during TX completion cleanup cycle + - igb: Remove unnecessary flag setting in igb_set_flag_queue_pairs() + - igb: Unpair the queues when changing the number of queues + - igb/igbvf: don't give up + - igb: clean up code for setting MAC address + - igb: Refactor VFTA configuration + - igb: Allow asymmetric configuration of MTU versus Rx frame size + - igb: Do not factor VLANs into RLPML calculation + - igb: Always enable VLAN 0 even if 8021q is not loaded + - igb: Merge VLVF configuration into igb_vfta_set + - igb: Clean-up configuration of VF port VLANs + - igb: Add support for VLAN promiscuous with SR-IOV and NTUPLE + - igb: Drop unnecessary checks in transmit path + - igb: Enable use of "bridge fdb add" to set unicast table entries + - igb: Add workaround for VLAN tag stripping on 82576 + - i40e: AQ Shared resource flags + - i40e: AQ Add set_switch_config + - i40e: AQ Add VXLAN-GPE tunnel type + - i40e: AQ thermal sensor control struct + - i40e: Bump AQ minor version to 1.5 for new FW features + - i40e: Store lan_vsi_idx and lan_vsi_id in the right size + - i40e: fix write-back-on-itr to work with legacy itr + - i40e: add counter for arq overflows + - i40e: add 20G speed for Tx bandwidth calculations + - i40e: refactor DCB function + - i40e: add a little more to an NVM update debug message + - i40evf: enable bus master after reset + - i40e: add netdev info to VSI dump + - i40e: remove VF device IDs from PF + - i40e: trivial: remove unnecessary local var + - i40e/i40evf: Bump i40e to 1.4.11 and i40evf to 1.4.7 + - net: ixgbe: add minimal parser details for ixgbe + - i40e: trivial: drop duplicate definition + - i40e: trivial: fix missing space + - i40e: fix bug in dma sync + - i40e: do TSO only if CHECKSUM_PARTIAL is set + - i40e: allocate memory safer + - i40e: fix: do not sleep in netdev_ops + - i40e: APIs to Add/remove port mirroring rules + - i40e: negate PHY int mask bits + - i40e: drop unused function + - i40e: count allocation errors + - i40e: avoid large memcpy by assigning struct + - i40e/i40evf: bump version to 1.4.12/1.4.8 + - i40e: Enable Geneve offload for FW API ver > 1.4 for XL710/X710 devices + - i40e: add priv flag for automatic rule eviction + - i40e: use eth_platform_get_mac_address() + - i40e: move sync_vsi_filters up in service_task + - i40e: Make the DCB firmware checks for X710/XL710 only + - i40e: set shared bit for multicast filters + - i40e: add VEB stat control and remove L2 cloud filter + - i40e: use new add_veb calling with VEB stats control + - i40e: Refactor force_wb and WB_ON_ITR functionality code + - i40evf: Change vf driver string to reflect all products i40evf supports + - i40e/i40evf: don't lose interrupts + - i40e/i40evf: try again after failure + - i40e: dump descriptor indexes in hex + - i40e/i40evf: use __GFP_NOWARN + - i40e/i40evf: use pages correctly in Rx + - i40e/i40evf: use logical operators, not bitwise + - i40e: properly show packet split status in debugfs + - i40e/i40evf: Bump version + - ixgbe: use u32 instead of __u32 in model header + - ixgbe: fix dates on header of ixgbe_model.h + - i40e: get rid of magic number + - i40e: drop unused debugfs file "dump" + - i40evf: support packet split receive + - i40e: trivial: cleanup use of pf->hw + - i40e: Add a SW workaround for lost interrupts + - i40e: Fix PROMISC mode for Multi-function per port (MFP) devices + - i40e: Removal of code which relies on BASE VEB SEID + - i40e/i40evf: avoid atomics + - i40e: Do not disable queues in the Legacy/MSI Interrupt handler + - i40e: expand comment + - i40e: better error reporting for nvmupdate + - i40evf: set adapter state on reset failure + - i40e: clean event descriptor before use + - i40e: When in promisc mode apply promisc mode to Tx Traffic as well + - i40e/i40evf: Bump i40e to 1.4.15 and i40evf to 1.4.11. + - i40e/i40evf: Drop outer checksum offload that was not requested + - i40e/i40evf: Use u64 values instead of casting them in TSO function + - i40e/i40evf: Factor out L4 header and checksum from L3 bits in TSO path + - i40e/i40evf: Consolidate all header changes into TSO function + - i40e/i40evf: Replace header pointers with unions of pointers in Tx checksum path + - i40e/i40evf: Add support for IPv4 encapsulated in IPv6 + - i40e/i40evf: Handle IPv6 extension headers in checksum offload + - i40e/i40evf: Do not write to descriptor unless we complete + - i40e/i40evf: Add exception handling for Tx checksum + - i40e/i40evf: Clean-up Rx packet checksum handling + - i40e/i40evf: Enable support for SKB_GSO_UDP_TUNNEL_CSUM + - i40e: Fix ATR in relation to tunnels + - i40e: Do not drop support for IPv6 VXLAN or GENEVE tunnels + - i40e: Update feature flags to reflect newly enabled features + - i40evf: Update feature flags to reflect newly enabled features + - i40e: Add support for ATR w/ IPv6 extension headers + - i40e/i40evf: Break up xmit_descriptor_count from maybe_stop_tx + - i40e/i40evf: Rewrite logic for 8 descriptor per packet check + - i40e/i40evf: Move Tx checksum closer to TSO + - i40e: Add functions to blink led on 10GBaseT PHY + - i40e: Fix led blink capability for 10GBaseT PHY + - i40e: Increase timeout when checking GLGEN_RSTAT_DEVSTATE bit + - i40e: Do not wait for Rx queue disable in DCB reconfig + - i40e: Fix for unexpected messaging + - i40e: Expose some registers to program parser, FD and RSS logic + - i40e: add check for null VSI + - i40e: add adminq commands for Rx CTL registers + - i40e: implement and use Rx CTL helper functions + - i40e: Use the new rx ctl register helpers. Don't use AQ calls from clear_hw. + - i40e: suspend scheduling during driver unload + - i40e: let go of the past + - i40e/i40evf: Bump i40e to 1.4.25 and i40evf to 1.4.15 + + * MPT3SAS Driver update for next kernel release (LP: #1512221) + - mpt3sas: A correction in unmap_resources + - mpt3sas: Added support for high port count HBA variants. + - mpt3sas: Used IEEE SGL instead of MPI SGL while framing a SMP Passthrough request message. + - mpt3sas: Fix static analyzer(coverity) tool identified defects + - mpt3sas: Never block the Enclosure device + - mpt3sas: Make use of additional HighPriority credit message frames for sending SCSI IO's + - mpt3sas: Added smp_affinity_enable module parameter. + - mpt3sas: Add support for configurable Chain Frame Size + - mpt3sas: Updated MPI Header to 2.00.42 + - mpt3sas: Fix for Asynchronous completion of timedout IO and task abort of timedout IO. + - mpt3sas: Updating mpt3sas driver version to 12.100.00.00 + - mpt3sas: Remove cpumask_clear for zalloc_cpumask_var and don't free free_cpu_mask_var before reply_q + + * /sys/class/scsi_host/hostN/partition_number and .../mad_version showing up BE on LE Ubuntu. (ibmvscsi) (LP: #1547153) + - ibmvscsi: Add endian conversions to sysfs attribute show functions + + * Miscellaneous Ubuntu changes + - [Packaging] git-ubuntu-log -- output should be utf-8 + - [Packaging] git-ubuntu-log -- handle invalid or private bugs + + -- Andy Whitcroft Wed, 24 Feb 2016 20:34:49 +0000 + +linux (4.4.0-7.22) xenial; urgency=low + + [ Tim Gardner ] + + * Release Tracking Bug + - LP: #1547205 + + * need arm64 acpi parking protocol support in xenial (LP: #1547047) + - [Config] Enabled ARM64_ACPI_PARKING_PROTOCOL + - arm64: kernel: implement ACPI parking protocol + + * Please pull cgroup namespaces (LP: #1546775) + - SAUCE: (noup) kernfs: Add API to generate relative kernfs path + - SAUCE: (noup) sched: new clone flag CLONE_NEWCGROUP for cgroup namespace + - SAUCE: (noup) cgroup: introduce cgroup namespaces + - SAUCE: (noup) cgroup: cgroup namespace setns support + - SAUCE: (noup) kernfs: define kernfs_node_dentry + - SAUCE: (noup) cgroup: mount cgroupns-root when inside non-init cgroupns + - SAUCE: (noup) Add FS_USERNS_FLAG to cgroup fs + - SAUCE: (noup) cgroup: Add documentation for cgroup namespaces + + * [Feature]Pulse-Width Modulation enabling on Broxton-P (LP: #1520436) + - [Config] CONFIG_PWM_OMAP_DMTIMER=m + - pwm: lpss: Remove ->free() callback + - pwm: bcm2835: Calculate scaler in ->config() + - pwm: bcm2835: Prevent division by zero + - pwm: bcm2835: Fix email address specification + - pwm: lpss: Update PWM setting for Broxton + - pwm: lpss: Select core part automatically + - pwm: lpss: Rework the sequence of programming PWM_SW_UPDATE + - pwm: fsl-ftm: Fix clock enable/disable when using PM + - pwm: lpc32xx: correct number of PWM channels from 2 to 1 + - pwm: lpc32xx: make device usable with common clock framework + - pwm: lpc32xx: fix and simplify duty cycle and period calculations + - pwm: lpc32xx: return ERANGE, if requested period is not supported + - pwm: rcar: Improve accuracy of frequency division setting + - pwm: Add PWM driver for OMAP using dual-mode timers + - pwm: add HAS_IOMEM dependency to PWM_FSL_FTM + - pwm: omap-dmtimer: Potential NULL dereference on error + - pwm: Mark all devices as "might sleep" + + * [Hyper-V] Netmask value is not parsed by hv_set_ifconfig - IP injection (LP: #1540586) + - [Debian] hv: hv_set_ifconfig -- switch to approved indentation + - [Debian] hv: hv_set_ifconfig -- fix numerous parameter handling issues + + * Update megaraid driver to MR6.10 (LP: #1544679) + - megaraid_sas: Do not allow PCI access during OCR + - megaraid_sas: MFI IO timeout handling + - megaraid_sas: Syncing request flags macro names with firmware + - megaraid_sas: Task management support + - megaraid_sas: Update device queue depth based on interface type + - megaraid_sas: Fastpath region lock bypass + - megaraid_sas: Reply Descriptor Post Queue (RDPQ) support + - megaraid_sas: Code optimization build_and_issue_cmd return-type + - megaraid_sas: Dual queue depth support + - megaraid_sas: IO throttling support + - megaraid_sas: Make adprecovery variable atomic + - megaraid_sas: MFI adapter OCR changes + - megaraid_sas: Introduce module parameter for SCSI command timeout + - megaraid_sas: SPERC OCR changes + - megaraid_sas: driver version upgrade + - megaraid: fix null pointer check in megasas_detach_one(). + - megaraid_sas: Fix for IO failing post OCR in SRIOV environment + - megaraid_sas: Fix SMAP issue + - megaraid_sas: Add an i/o barrier + + * Surelock-GA2:kernel panic @ cxl_configure_adapter+0x418/0x8b0 (LP: #1546145) + - powerpc/powernv: Fix stale PE primary bus + + * In A Single Power VM LPAR : Network Configuration Fails in Ubuntu16.04 while installation (LP: #1544321) + - [Config] Update bnx2x d-i firmware to 7.12.30 + + * Miscellaneous Ubuntu changes + - rebase to v4.4.2 + + * Miscellaneous upstream changes + - openvswitch: allow management from inside user namespaces + - net: thunderx: nicvf_queues: nivc_*_intr: remove duplication + - net, thunderx: Remove unnecessary rcv buffer start address management + - net: thunderx: HW TSO support for pass-2 hardware + - net: thunderx: Enable CQE count threshold interrupt + - net: cavium: liquidio: use helpers ns_to_timespec64() + - irqchip/gic-v3: Make sure read from ICC_IAR1_EL1 is visible on redestributor + - arm64: KVM: Configure TCR_EL2.PS at runtime + - arm64: prefetch: don't provide spin_lock_prefetch with LSE + - arm64: prefetch: add alternative pattern for CPUs without a prefetcher + - arm64: lib: improve copy_page to deal with 128 bytes at a time + - arm64: lib: patch in prfm for copy_page if requested + - arm64: prefetch: add missing #include for spin_lock_prefetch + - net, thunderx: Add TX timeout and RX buffer alloc failure stats. + - net: thunderx: Use napi_schedule_irqoff() + - net: thunderx: Assign affinity hints to vf's interrupts + - net: thunderx: bgx: Use standard firmware node infrastructure. + - net: thunderx: bgx: Add log message when setting mac address + - net: thunderx: Alloc higher order pages when pagesize is small + - net: cavium: liquidio: Return correct error code + - net: cavium: liquidio: fix check for in progress flag + - livepatch: add old_sympos as disambiguator field to klp_func + - livepatch: add sympos as disambiguator field to klp_reloc + - livepatch: function,sympos scheme in livepatch sysfs directory + - module: Use the same logic for setting and unsetting RO/NX + - gcov: use within_module() helper. + - module: use a structure to encapsulate layout. + - module: clean up RO/NX handling. + - module: keep percpu symbols in module's symtab + - livepatch: Cleanup module page permission changes + + [ Upstream Kernel Changes ] + + * rebase to v4.4.2 + + -- Tim Gardner Tue, 16 Feb 2016 14:24:45 -0700 + +linux (4.4.0-6.21) xenial; urgency=low + + [ Tim Gardner ] + + * Release Tracking Bug + - LP: #1546283 + + * Naples/Zen, NTB Driver (LP: #1542071) + - [Config] CONFIG_NTB_AMD=m + - NTB: Add support for AMD PCI-Express Non-Transparent Bridge + + * [Hyper-V] kernel panic occurs when installing Ubuntu Server x32 (LP: #1495983) + - SAUCE: storvsc: use small sg_tablesize on x86 + + * Enable arm64 emulation of removed ARMv7 instructions (LP: #1545542) + - [Config] CONFIG_ARMV8_DEPRECATED=y + + * Surelock-GA2:kernel panic/ exception @ pcibios_set_pcie_reset_state+0x118/0x280 + cxl_reset+0x5c/0xc0 (LP: #1545037) + - powerpc/eeh: Fix stale cached primary bus + + * Miscellaneous Ubuntu changes + - SAUCE: fs: Add user namesapace member to struct super_block + - SAUCE: fs: Limit file caps to the user namespace of the super block + - SAUCE: Smack: Add support for unprivileged mounts from user namespaces + - SAUCE: block_dev: Support checking inode permissions in lookup_bdev() + - SAUCE: block_dev: Check permissions towards block device inode when mounting + - SAUCE: fs: Treat foreign mounts as nosuid + - SAUCE: selinux: Add support for unprivileged mounts from user namespaces + - SAUCE: userns: Replace in_userns with current_in_userns + - SAUCE: Smack: Handle labels consistently in untrusted mounts + - SAUCE: fs: Check for invalid i_uid in may_follow_link() + - SAUCE: cred: Reject inodes with invalid ids in set_create_file_as() + - SAUCE: fs: Refuse uid/gid changes which don't map into s_user_ns + - SAUCE: fs: Update posix_acl support to handle user namespace mounts + - SAUCE: fs: Ensure the mounter of a filesystem is privileged towards its inodes + - SAUCE: fs: Don't remove suid for CAP_FSETID in s_user_ns + - SAUCE: fs: Allow superblock owner to access do_remount_sb() + - SAUCE: capabilities: Allow privileged user in s_user_ns to set security.* xattrs + - SAUCE: fuse: Add support for pid namespaces + - SAUCE: fuse: Support fuse filesystems outside of init_user_ns + - SAUCE: fuse: Restrict allow_other to the superblock's namespace or a descendant + - SAUCE: fuse: Allow user namespace mounts + - SAUCE: mtd: Check permissions towards mtd block device inode when mounting + - SAUCE: fs: Update i_[ug]id_(read|write) to translate relative to s_user_ns + - SAUCE: quota: Convert ids relative to s_user_ns + - SAUCE: evm: Translate user/group ids relative to s_user_ns when computing HMAC + - SAUCE: fs: Allow CAP_SYS_ADMIN in s_user_ns to freeze and thaw filesystems + - SAUCE: quota: Treat superblock owner as privilged + - SAUCE: ima/evm: Allow root in s_user_ns to set xattrs + - SAUCE: block_dev: Forbid unprivileged mounting when device is opened for writing + - SAUCE: ext4: Add support for unprivileged mounts from user namespaces + - SAUCE: ext4: Add module parameter to enable user namespace mounts + - SAUCE: fuse: Add module parameter to enable user namespace mounts + + * Miscellaneous upstream changes + - megaraid: Fix possible NULL pointer deference in mraid_mm_ioctl + - libahci: Implement the capability to override the generic ahci interrupt handler. + - ata: Remove the AHCI_HFLAG_EDGE_IRQ support from libahci. + - ahci_xgene: Implement the workaround to fix the missing of the edge interrupt for the HOST_IRQ_STAT. + + -- Tim Gardner Fri, 12 Feb 2016 09:49:05 -0700 + +linux (4.4.0-5.20) xenial; urgency=low + + [ Tim Gardner ] + + * Release Tracking Bug + - LP: #1544637 + + * s390/cio: update measurement characteristics (LP: #1541534) + - s390/cio: fix measurement characteristics memleak + - s390/cio: ensure consistent measurement state + - s390/cio: update measurement characteristics + + * qeth: layer2 reports unknown state to network tools. (LP: #1541907) + - qeth: initialize net_device with carrier off + + * Collateral damage due to kernel configuration change enabling CONFIG_ZONE_DEVICE (Kernel 4.4 amd64) (LP: #1534647) + - [Config] CONFIG_ZONE_DMA=y + - mm: CONFIG_NR_ZONES_EXTENDED + + * perf enahancements for ppc64 (LP: #1521678) + - perf kvm/{x86,s390}: Remove dependency on uapi/kvm_perf.h + - perf kvm/{x86,s390}: Remove const from kvm_events_tp + - perf kvm/powerpc: Port perf kvm stat to powerpc + - perf kvm/powerpc: Add support for HCALL reasons + + * Soft lockup with "block nbdX: Attempted send on closed socket" spam (LP: #1505564) + - SAUCE: nbd: ratelimit error msgs after socket close + + * sleep from invalid context in aa_move_mount (LP: #1539349) + - SAUCE: apparmor: fix sleep from invalid context + + * Introducing ConnectX-4 Ethernet SRIOV (LP: #1540435) + - net/mlx5_core: Modify enable/disable hca functions + - net/mlx5_core: Add base sriov support + - net/mlx5: Add HW capabilities and structs for SR-IOV E-Switch + - net/mlx5: Update access functions to Query/Modify vport MAC address + - net/mlx5: Introduce access functions to modify/query vport mac lists + - net/mlx5: Introduce access functions to modify/query vport state + - net/mlx5: Introduce access functions to modify/query vport promisc mode + - net/mlx5: Introduce access functions to modify/query vport vlans + - net/mlx5e: Write UC/MC list and promisc mode into vport context + - net/mlx5e: Write vlan list into vport context + - net/mlx5: Introducing E-Switch and l2 table + - net/mlx5: E-Switch, Introduce FDB hardware capabilities + - net/mlx5: E-Switch, Add SR-IOV (FDB) support + - net/mlx5: E-Switch, Introduce Vport administration functions + - net/mlx5: E-Switch, Introduce HCA cap and E-Switch vport context + - net/mlx5: E-Switch, Introduce set vport vlan (VST mode) + - net/mlx5: E-Switch, Introduce get vf statistics + - net/mlx5e: Add support for SR-IOV ndos + - net/mlx5: Fix query E-Switch capabilities + - net/mlx5e: Assign random MAC address if needed + + * make wacom_w8001 work well in xenial (LP: #1542771) + - Input: wacom_w8001 - use __set_bit for evbits + - Input: wacom_w8001 - set BTN_TOOL_DOUBLETAP if we have 2fg support + - Input: wacom_w8001 - handle touch error case correctly + - Input: wacom_w8001 - split pen and touch initialization up + - Input: wacom_w8001 - split the touch and pen devices into two devices + - Input: wacom_w8001 - drop use of ABS_MT_TOOL_TYPE + + * virtualbox: update to 5.0.14-dfsg-2 (LP: #1542728) + - ubuntu: vbox -- update to 5.0.14-dfsg-2 + + * Miscellaneous Ubuntu changes + - [Packaging] git-ubuntu-log -- fix empty section formatting + - SAUCE: (noup) Update spl to 0.6.5.4-0ubuntu2, zfs to 0.6.5.4-0ubuntu2 + + -- Andy Whitcroft Sat, 06 Feb 2016 22:32:10 +0000 + +linux (4.4.0-4.19) xenial; urgency=low + + * update ZFS and SPL to 0.6.5.4 (LP: #1542296) + - [Config] update spl/zfs version + - SAUCE: (noup) Update spl to 0.6.5.4-0ubuntu2, zfs to 0.6.5.4-0ubuntu1 + - [Config] reconstruct -- drop links for zfs userspace components + - [Config] reconstruct -- drop links for zfs userspace components -- restore spec links + + * recvmsg() fails SCM_CREDENTIALS request with EOPNOTSUPP. (LP: #1540731) + - Revert "af_unix: Revert 'lock_interruptible' in stream receive code" + + * lxc: ADT exercise test failing with linux-4.4.0-3.17 (LP: #1542049) + - Revert "UBUNTU: SAUCE: apparmor: fix sleep from invalid context" + + * WARNING: at /build/linux-lts-wily-W0lTWH/linux-lts-wily-4.2.0/net/core/skbuff.c:4174 (Travis IB) (LP: #1541326) + - SAUCE: IB/IPoIB: Do not set skb truesize since using one linearskb + + * backport Microsoft Precision Touchpad palm rejection patch (LP: #1541671) + - HID: multitouch: enable palm rejection if device implements confidence usage + + * [Ubuntu 16.04] Update qla2xxx driver for POWER (QLogic) (LP: #1541456) + - qla2xxx: Remove unavailable firmware files + - qla2xxx: Enable Extended Logins support + - qla2xxx: Enable Exchange offload support. + - qla2xxx: Enable Target counters in DebugFS. + - qla2xxx: Add FW resource count in DebugFS. + - qla2xxx: Added interface to send explicit LOGO. + - qla2xxx: Delete session if initiator is gone from FW + - qla2xxx: Wait for all conflicts before ack'ing PLOGI + - qla2xxx: Replace QLA_TGT_STATE_ABORTED with a bit. + - qla2xxx: Remove dependency on hardware_lock to reduce lock contention. + - qla2xxx: Add irq affinity notification + - qla2xxx: Add selective command queuing + - qla2xxx: Move atioq to a different lock to reduce lock contention + - qla2xxx: Disable ZIO at start time. + - qla2xxx: Set all queues to 4k + - qla2xxx: Check for online flag instead of active reset when transmitting responses + - scsi: qla2xxxx: avoid type mismatch in comparison + + * [Hyper-V] PCI Passthrough (LP: #1541120) + - x86/irq: Export functions to allow MSI domains in modules + - genirq/msi: Export functions to allow MSI domains in modules + + * Update lpfc driver to 11.0.0.10 (LP: #1541592) + - lpfc: Fix FCF Infinite loop in lpfc_sli4_fcf_rr_next_index_get. + - lpfc: Fix the FLOGI discovery logic to comply with T11 standards + - lpfc: Fix RegLogin failed error seen on Lancer FC during port bounce + - lpfc: Fix driver crash when module parameter lpfc_fcp_io_channel set to 16 + - lpfc: Fix crash in fcp command completion path. + - lpfc: Modularize and cleanup FDMI code in driver + - lpfc: Fix RDP Speed reporting. + - lpfc: Fix RDP ACC being too long. + - lpfc: Make write check error processing more resilient + - lpfc: Use new FDMI speed definitions for 10G, 25G and 40G FCoE. + - lpfc: Fix mbox reuse in PLOGI completion + - lpfc: Fix external loopback failure. + - lpfc: Add logging for misconfigured optics. + - lpfc: Delete unnecessary checks before the function call "mempool_destroy" + - lpfc: Use kzalloc instead of kmalloc + - lpfc: Update version to 11.0.0.10 for upstream patch set + + * Miscellaneous Ubuntu changes + - [Config] CONFIG_ARM64_VA_BITS=48 + - [Config] Fixed Vcs-Git + + * Miscellaneous upstream changes + - cxl: Fix possible idr warning when contexts are released + - cxl: use correct operator when writing pcie config space values + - cxlflash: drop unlikely before IS_ERR_OR_NULL + - cxl: Fix DSI misses when the context owning task exits + - cxlflash: Removed driver date print + - cxlflash: Fix to resolve cmd leak after host reset + - cxlflash: Resolve oops in wait_port_offline + - cxlflash: Enable device id for future IBM CXL adapter + - cxl: fix build for GCC 4.6.x + - cxl: use -Werror only with CONFIG_PPC_WERROR + - cxl: Enable PCI device ID for future IBM CXL adapter + + -- Andy Whitcroft Fri, 05 Feb 2016 14:58:51 +0000 + +linux (4.4.0-3.17) xenial; urgency=low + + [ Tim Gardner ] + + * Release Tracking Bug + - LP: #1541058 + * [Config] CONFIG_BLK_DEV_NVME_SCSI=y + - LP: #1531539 + * SAUCE: nvme merge cleanup + - LP: #1531539 + * rebase to v4.4.1 + + [ Andy Whitcroft ] + + * Revert "SAUCE: dm: introduce a target_ioctl op to allow target specific + ioctls" + - LP: #1538618 + * postinst -- detect symlinks correctly + - LP: #1536810 + + [ John Johansen ] + + * SAUCE: apparmor: fix sleep from invalid context + - LP: #1539349 + + [ Upstream Kernel Changes ] + + * powerpc/eeh: Fix PE location code + - LP: #1538909 + * powerpc/pseries: Limit EPOW reset event warnings + - LP: #1539102 + * lightnvm: fix bio submission issue + - LP: #1531539 + * lightnvm: fix incorrect nr_free_blocks stat + - LP: #1531539 + * lightnvm: add check after mempool allocation + - LP: #1531539 + * lightnvm: unlock rq and free ppa_list on submission fail + - LP: #1531539 + * lightnvm: move ppa erase logic to core + - LP: #1531539 + * lightnvm: refactor rqd ppa list into set/free + - LP: #1531539 + * lightnvm: refactor end_io functions for sync + - LP: #1531539 + * lightnvm: return the get_bb_tbl return value + - LP: #1531539 + * lightnvm: check bi_error in gc + - LP: #1531539 + * lightnvm: put block back to gc list on its reclaim fail + - LP: #1531539 + * lightnvm: fix locking and mempool in rrpc_lun_gc + - LP: #1531539 + * lightnvm: sectors first in ppa list + - LP: #1531539 + * lightnvm: move the pages per block check out of the loop + - LP: #1531539 + * lightnvm: support multiple ppas in nvm_erase_ppa + - LP: #1531539 + * lightnvm: move rq->error to nvm_rq->error + - LP: #1531539 + * lightnvm: introduce nvm_submit_ppa + - LP: #1531539 + * lightnvm: reference rrpc lun in rrpc block + - LP: #1531539 + * lightnvm: fix missing grown bad block type + - LP: #1531539 + * lightnvm: manage open and closed blocks separately + - LP: #1531539 + * lightnvm: add mccap support + - LP: #1531539 + * lightnvm: introduce mlc lower page table mappings + - LP: #1531539 + * lightnvm: core on-disk initialization + - LP: #1531539 + * lightnvm: introduce ioctl to initialize device + - LP: #1531539 + * lightnvm: use system block for mm initialization + - LP: #1531539 + * lightnvm: introduce factory reset + - LP: #1531539 + * lightnvm: ensure that nvm_dev_ops can be used without CONFIG_NVM + - LP: #1531539 + * blk-mq: add a flags parameter to blk_mq_alloc_request + - LP: #1531539 + * nvme: move struct nvme_iod to pci.c + - LP: #1531539 + * nvme: split command submission helpers out of pci.c + - LP: #1531539 + * nvme: use offset instead of a struct for registers + - LP: #1531539 + * nvme: split nvme_trans_device_id_page + - LP: #1531539 + * nvme: use vendor it from identify + - LP: #1531539 + * nvme: split a new struct nvme_ctrl out of struct nvme_dev + - LP: #1531539 + * nvme: simplify nvme_setup_prps calling convention + - LP: #1531539 + * nvme: refactor nvme_queue_rq + - LP: #1531539 + * nvme: factor out a nvme_unmap_data helper + - LP: #1531539 + * nvme: move nvme_error_status to common code + - LP: #1531539 + * nvme: move nvme_setup_flush and nvme_setup_rw to common code + - LP: #1531539 + * nvme: split __nvme_submit_sync_cmd + - LP: #1531539 + * nvme: use the block layer for userspace passthrough metadata + - LP: #1531539 + * nvme: move block_device_operations and ns/ctrl freeing to common code + - LP: #1531539 + * nvme: add explicit quirk handling + - LP: #1531539 + * nvme: move remaining CC setup into nvme_enable_ctrl + - LP: #1531539 + * nvme: move nvme_{enable,disable,shutdown}_ctrl to common code + - LP: #1531539 + * nvme: add a common helper to read Identify Controller data + - LP: #1531539 + * nvme: move the call to nvme_init_identify earlier + - LP: #1531539 + * nvme: move namespace scanning to common code + - LP: #1531539 + * nvme: move chardev and sysfs interface to common code + - LP: #1531539 + * nvme: refactor set_queue_count + - LP: #1531539 + * blk-integrity: empty implementation when disabled + - LP: #1531539 + * NVMe: fix build with CONFIG_NVM enabled + - LP: #1531539 + * nvme: fix another 32-bit build warning + - LP: #1531539 + * nvme: precedence bug in nvme_pr_clear() + - LP: #1531539 + * nvme: only ignore hardware errors in nvme_create_io_queues + - LP: #1531539 + * nvme: only add a controller to dev_list after it's been fully + initialized + - LP: #1531539 + * nvme: protect against simultaneous shutdown invocations + - LP: #1531539 + * nvme: don't take the I/O queue q_lock in nvme_timeout + - LP: #1531539 + * nvme: merge nvme_abort_req and nvme_timeout + - LP: #1531539 + * nvme: add NVME_SC_CANCELLED + - LP: #1531539 + * nvme: simplify resets + - LP: #1531539 + * nvme: do not restart the request timeout if we're resetting the + controller + - LP: #1531539 + * nvme: merge probe_work and reset_work + - LP: #1531539 + * nvme: remove dead controllers from a work item + - LP: #1531539 + * nvme: switch abort_limit to an atomic_t + - LP: #1531539 + * NVMe: Implement namespace list scanning + - LP: #1531539 + * NVMe: Use unbounded work queue for all work + - LP: #1531539 + * NVMe: Remove device management handles on remove + - LP: #1531539 + * NVMe: Simplify metadata setup + - LP: #1531539 + * nvme: fix admin queue depth + - LP: #1531539 + * nvme: factor out a few helpers from req_completion + - LP: #1531539 + * nvme: switch delete SQ/CQ to blk_execute_rq_nowait + - LP: #1531539 + * nvme: switch abort to blk_execute_rq_nowait + - LP: #1531539 + * nvme: special case AEN requests + - LP: #1531539 + * nvme: simplify completion handling + - LP: #1531539 + * nvme: properly free resources for cancelled command + - LP: #1531539 + * nvme: meta_sg doesn't have to be an array + - LP: #1531539 + * nvme: merge iod and cmd_info + - LP: #1531539 + * NVMe: Add pci error handlers + - LP: #1531539 + * NVMe: Export namespace attributes to sysfs + - LP: #1531539 + * nvme: Move nvme_freeze/unfreeze_queues to nvme core + - LP: #1531539 + * nvme: synchronize access to ctrl->namespaces + - LP: #1531539 + * nvme: fixes for NVME_IOCTL_IO_CMD on the char device + - LP: #1531539 + * nvme: make SG_IO support optional + - LP: #1531539 + * NVMe: Fix admin queue ring wrap + - LP: #1531539 + * NVMe: Use a retryable error code on reset + - LP: #1531539 + * NVMe: Remove queue freezing on resets + - LP: #1531539 + * NVMe: IO queue deletion re-write + - LP: #1531539 + * NVMe: Shutdown controller only for power-off + - LP: #1531539 + * NVMe: Export NVMe attributes to sysfs group + - LP: #1531539 + * i40e: fix build warnings + * net: i40e: shut up uninitialized variable warnings + * Drivers: hv: vmbus: fix build warning + * Drivers: hv: util: Increase the timeout for util services + * Drivers: hv: utils: run polling callback always in interrupt context + * tools: hv: report ENOSPC errors in hv_fcopy_daemon + * tools: hv: remove repeated HV_FCOPY string + * Drivers: hv: util: catch allocation errors + * Drivers: hv: utils: use memdup_user in hvt_op_write + * drivers/hv: cleanup synic msrs if vmbus connect failed + * drivers:hv: Export a function that maps Linux CPU num onto Hyper-V proc + num + * drivers:hv: Export the API to invoke a hypercall on Hyper-V + * drivers:hv: Define the channel type for Hyper-V PCI Express + pass-through + * Drivers: hv: vss: run only on supported host versions + * Drivers: hv: vmbus: Use uuid_le type consistently + * Drivers: hv: vmbus: Use uuid_le_cmp() for comparing GUIDs + * Drivers: hv: vmbus: Get rid of the unused macro + * Drivers: hv: vmbus: Get rid of the unused irq variable + * Drivers: hv: vmbus: serialize process_chn_event() and + vmbus_close_internal() + * Drivers: hv: vmbus: do sanity check of channel state in + vmbus_close_internal() + * Drivers: hv: vmbus: fix rescind-offer handling for device without a + driver + * Drivers: hv: vmbus: release relid on error in vmbus_process_offer() + * Drivers: hv: vmbus: channge vmbus_connection.channel_lock to mutex + * drivers:hv: Allow for MMIO claims that span ACPI _CRS records + * Drivers: hv: vmbus: Fix a Host signaling bug + * drivers/hv: correct tsc page sequence invalid value + * Drivers: hv: vmbus: Force all channel messages to be delivered on CPU 0 + * Drivers: hv: utils: Invoke the poll function after handshake + * tools: hv: vss: fix the write()'s argument: error -> vss_msg + * Drivers: hv: utils: fix memory leak on on_msg() failure + * Drivers: hv: utils: rename outmsg_lock + * Drivers: hv: utils: introduce HVUTIL_TRANSPORT_DESTROY mode + * Drivers: hv: utils: fix crash when device is removed from host side + * Drivers: hv: ring_buffer.c: fix comment style + * Drivers: hv: ring_buffer: remove stray smp_read_barrier_depends() + * Drivers: hv: ring_buffer: remove code duplication from + hv_ringbuffer_peek/read() + * Drivers: hv: remove code duplication between + vmbus_recvpacket()/vmbus_recvpacket_raw() + * Drivers: hv: ring_buffer: eliminate hv_ringbuffer_peek() + * drivers/hv: replace enum hv_message_type by u32 + * drivers/hv: Move HV_SYNIC_STIMER_COUNT into Hyper-V UAPI x86 header + * drivers/hv: Move struct hv_message into UAPI Hyper-V x86 header + * drivers/hv: Move struct hv_timer_message_payload into UAPI Hyper-V x86 + header + * Drivers: hv: vmbus: fix the building warning with hyperv-keyboard + * Drivers: hv: utils: fix hvt_op_poll() return value on transport destroy + * Drivers: hv: vmbus: Treat Fibre Channel devices as performance critical + + [ Upstream Kernel Changes ] + + * rebase to v4.4.1 + - LP: #1533461 + - LP: #1529624 + + -- Tim Gardner Fri, 29 Jan 2016 08:06:37 -0700 + +linux (4.4.0-2.16) xenial; urgency=low + + [ Andy Whitcroft ] + + * Release Tracking Bug + - LP: #1539090 + * SAUCE: hv: hv_set_ifconfig -- convert to python3 + - LP: #1506521 + * SAUCE: dm: introduce a target_ioctl op to allow target specific ioctls + - LP: #1538618 + + [ Colin Ian King ] + + * SAUCE: ACPI / tables: Add acpi_force_32bit_fadt_addr option to force 32 + bit FADT addresses (LP: #1529381) + - LP: #1529381 + + [ John Johansen ] + + * SAUCE: (no-up): apparmor: fix for failed mediation of socket that is + being shutdown + - LP: #1446906 + + [ Mahesh Salgaonkar ] + + * SAUCE: Powernv: Remove the usage of PACAR1 from opal wrappers + - LP: #1537881 + * SAUCE: powerpc/book3s: Fix TB corruption in guest exit path on HMI + interrupt. + - LP: #1537881 + * SAUCE: KVM: PPC: Book3S HV: Fix soft lockups in KVM on HMI for time + base errors + - LP: #1537881 + + [ Paolo Pisati ] + + * SAUCE: arm64: errata: Add -mpc-relative-literal-loads to erratum + #843419 build flags + - LP: #1533009 + * [Config] MFD_TPS65217=y && REGULATOR_TPS65217=y + * [Config] disable ARCH_ZX (ZTE ZX Soc) + + [ Tim Gardner ] + + * Revert "SAUCE: (noup) cxlflash: a couple off by one bugs" + * SAUCE: (no-up) Update bnx2x firmware to 7.12.30.0 + - LP: #1536719 + * SAUCE: drop obsolete bnx2x firmware + * SAUCE: i40e: Silence 'may be used uninitialized' warnings + - LP: #1536474 + * [Config] CONFIG_ZONE_DMA=y for amd64 lowlatency + - LP: #1534647 + * [Config] Add pvpanic to virtual flavour + - LP: #1537923 + * [Config] CONFIG_INTEL_PUNIT_IPC=m, CONFIG_INTEL_TELEMETRY=m + - LP: #1520457 + + [ Upstream Kernel Changes ] + + * i40evf: fix compiler warning of unused variable + - LP: #1536474 + * intel: i40e: fix confused code + - LP: #1536474 + * i40e/i40evf: remove unused tunnel parameter + - LP: #1536474 + * i40e: Change BUG_ON to WARN_ON in service event complete + - LP: #1536474 + * i40e: remove BUG_ON from feature string building + - LP: #1536474 + * i40e: remove BUG_ON from FCoE setup + - LP: #1536474 + * i40e: Workaround fix for mss < 256 issue + - LP: #1536474 + * i40e/i40evf: Add a stat to track how many times we have to do a force + WB + - LP: #1536474 + * i40e: Move the saving of old link info from handle_link_event to + link_event + - LP: #1536474 + * i40e/i40evf: Add comment to #endif + - LP: #1536474 + * i40e/i40evf: clean up error messages + - LP: #1536474 + * i40evf: handle many MAC filters correctly + - LP: #1536474 + * i40e: return the number of enabled queues for ETHTOOL_GRXRINGS + - LP: #1536474 + * i40e: rework the functions to configure RSS with similar parameters + - LP: #1536474 + * i40e: create a generic configure rss function + - LP: #1536474 + * i40e: Bump version to 1.4.2 + - LP: #1536474 + * i40e: add new fields to store user configuration + - LP: #1536474 + * i40e: rename rss_size to alloc_rss_size in i40e_pf + - LP: #1536474 + * i40e/i40evf: Fix RS bit update in Tx path and disable force WB + workaround + - LP: #1536474 + * i40e/i40evf: prefetch skb data on transmit + - LP: #1536474 + * i40evf: rename VF adapter specific RSS function + - LP: #1536474 + * i40evf: create a generic config RSS function + - LP: #1536474 + * i40evf: create a generic get RSS function + - LP: #1536474 + * i40evf: add new fields to store user configuration of RSS + - LP: #1536474 + * i40e: Update error messaging + - LP: #1536474 + * i40e: fix confusing message + - LP: #1536474 + * i40e: make error message more useful + - LP: #1536474 + * i40evf: quoth the VF driver, Nevermore + - LP: #1536474 + * i40evf: allocate queue vectors dynamically + - LP: #1536474 + * i40evf: allocate ring structs dynamically + - LP: #1536474 + * i40e/i40evf: Bump i40e version to 1.4.4 and i40evf to 1.4.1 + - LP: #1536474 + * i40e: fix: do not sleep in netdev_ops + - LP: #1536474 + * i40e: remove unused argument + - LP: #1536474 + * i40evf: increase max number of queues + - LP: #1536474 + * i40evf: set real num queues + - LP: #1536474 + * i40evf: remove duplicate string + - LP: #1536474 + * i40e: Detection and recovery of TX queue hung logic moved to + service_task from tx_timeout + - LP: #1536474 + * i40e: Fix memory leaks, sideband filter programming + - LP: #1536474 + * i40evf: don't use atomic allocation + - LP: #1536474 + * i40e: propagate properly + - LP: #1536474 + * i40evf: use correct types + - LP: #1536474 + * i40e: use priv flags to control packet split + - LP: #1536474 + * i40e: Remove separate functions gathering XOFF Rx stats + - LP: #1536474 + * i40e: fix whitespace + - LP: #1536474 + * i40e/i40evf: use logical operator + - LP: #1536474 + * i40e/i40evf: Bump version to 1.4.7 for i40e and 1.4.3 for i40evf + - LP: #1536474 + * i40e: trivial fixes + - LP: #1536474 + * i40e: Fix i40e_print_features() VEB mode output + - LP: #1536474 + * i40e: chomp the BIT(_ULL) + - LP: #1536474 + * i40e: properly delete VF MAC filters + - LP: #1536474 + * i40e: don't add zero MAC filter + - LP: #1536474 + * i40evf: check rings before freeing resources + - LP: #1536474 + * i40e: use explicit cast from u16 to u8 + - LP: #1536474 + * i40e: Opcode and structures required by OEM Post Update AQ command and + add new NVM arq message + - LP: #1536474 + * i40e: hush little warnings + - LP: #1536474 + * i40e/i40evf: Add a new offload for RSS PCTYPE V2 for X722 + - LP: #1536474 + * i40e: clean whole mac filter list + - LP: #1536474 + * i40evf: change version string generation + - LP: #1536474 + * i40e/i40evf: Bump i40e to 1.4.8 and i40evf to 1.4.4 + - LP: #1536474 + * geneve: UDP checksum configuration via netlink + - LP: #1536474 + * geneve: Add geneve udp port offload for ethernet devices + - LP: #1536474 + * i40e: geneve tunnel offload support + - LP: #1536474 + * geneve: Add geneve_get_rx_port support + - LP: #1536474 + * i40e: Call geneve_get_rx_port to get the existing Geneve ports + - LP: #1536474 + * i40e: change log messages and error returns + - LP: #1536474 + * i40e: allow zero MAC address for VFs + - LP: #1536474 + * i40e: Look up MAC address in Open Firmware or IDPROM + - LP: #1536474 + * i40e: Fix Rx hash reported to the stack by our driver + - LP: #1536474 + * i40e: remove forever unused ID + - LP: #1536474 + * igb: add 88E1543 initialization code + * igb: don't unmap NULL hw_addr + * igb: use the correct i210 register for EEMNGCTL + * igb: fix NULL derefs due to skipped SR-IOV enabling + * igb: improve handling of disconnected adapters + * igb: Remove GS40G specific defines/functions + * igb: Don't add PHY address to PCDL address + * igb: Improve cable length function for I210, etc. + * igb: Explicitly label self-test result indices + * ixgbe: drop null test before destroy functions + - LP: #1536473 + * ixgbe: Delete redundant include file + - LP: #1536473 + * ixgbe: fix multiple kernel-doc errors + - LP: #1536473 + * ixgbe: Fix handling of NAPI budget when multiple queues are enabled per + vector + - LP: #1536473 + * ixgbe: Add KR mode support for CS4227 chip + - LP: #1536473 + * ixgbevf: Limit lowest interrupt rate for adaptive interrupt moderation + to 12K + - LP: #1536473 + * ixgbe/ixgbevf: use napi_schedule_irqoff() + - LP: #1536473 + * ixgbe: Remove CS4227 diagnostic code + - LP: #1536473 + * ixgbevf: use ether_addr_copy instead of memcpy + - LP: #1536473 + * ixgbevf: fix spoofed packets with random MAC + - LP: #1536473 + * ixgbe: Prevent KR PHY reset in ixgbe_init_phy_ops_x550em + - LP: #1536473 + * ixgbe: Add support for newer thermal alarm + - LP: #1536473 + * ixgbe: Use private workqueue to avoid certain possible hangs + - LP: #1536473 + * ixgbevf: Use a private workqueue to avoid certain possible hangs + - LP: #1536473 + * ixgbevf: Minor cleanups + - LP: #1536473 + * ixgbe: Refactor MAC address configuration code + - LP: #1536473 + * ixgbe: Use __dev_uc_sync and __dev_uc_unsync for unicast addresses + - LP: #1536473 + * ixgbe: Allow FDB entries access to more RAR filters + - LP: #1536473 + * ixgbe: Update PTP to support X550EM_x devices + - LP: #1536473 + * ixgbe: Correct spec violations by waiting after reset + - LP: #1536473 + * ixgbe: Wait for master disable to be set + - LP: #1536473 + * ixgbe: Save VF info and take references + - LP: #1536473 + * ixgbe: Handle extended IPv6 headers in Tx path + - LP: #1536473 + * ixgbe: Always turn PHY power on when requested + - LP: #1536473 + * ixgbevf: Handle extended IPv6 headers in Tx path + - LP: #1536473 + * ixgbe: Return error on failure to allocate mac_table + - LP: #1536473 + * ixgbe: Fix SR-IOV VLAN pool configuration + - LP: #1536473 + * ixgbe: Simplify definitions for regidx and bit in set_vfta + - LP: #1536473 + * ixgbe: Reduce VT code indent in set_vfta by introducing jump label + - LP: #1536473 + * ixgbe: Simplify configuration of setting VLVF and VLVFB + - LP: #1536473 + * ixgbe: Add support for adding/removing VLAN on PF bypassing the VLVF + - LP: #1536473 + * ixgbe: Reorder search to work from the top down instead of bottom up + - LP: #1536473 + * ixgbe: Add support for VLAN promiscuous with SR-IOV + - LP: #1536473 + * ixgbe: Fix VLAN promisc in relation to SR-IOV + - LP: #1536473 + * ixgbe: Clear stale pool mappings + - LP: #1536473 + * ixgbe: Clean stale VLANs when changing port VLAN or resetting + - LP: #1536473 + * ixgbe: do not report 2.5 Gbps as supported + - LP: #1536473 + * ixgbevf: Fix handling of NAPI budget when multiple queues are enabled + per vector + - LP: #1536473 + * ixgbevf: minor cleanups for ixgbevf_set_itr() + - LP: #1536473 + * ixgbe: add support for QSFP PHY types in ixgbe_get_settings() + - LP: #1536473 + * ixgbe: report correct media type for KR, KX and KX4 interfaces + - LP: #1536473 + * ixgbe: Clean up redundancy in hw_enc_features + - LP: #1536473 + * ixgbe: fix RSS limit for X550 + - LP: #1536473 + * ixgbe: Correct X550EM_x revision check + - LP: #1536473 + * ixgbe: Fix bugs in ixgbe_clear_vf_vlans() + - LP: #1536473 + * ixgbe: Fill at least min credits to a TC credit refills + - LP: #1536473 + * ixgbe: use correct FCoE DDP max check + - LP: #1536473 + * ixgbe: fix broken PFC with X550 + - LP: #1536473 + * ixgbe: do not call check_link for ethtool in ixgbe_get_settings() + - LP: #1536473 + * ixgbe: Correct handling of any outer UDP checksum setting + - LP: #1536473 + * ixgbe: Fix to get FDMI HBA attributes information with X550 + - LP: #1536473 + * ixgbe: Fix MDD events generated when FCoE+SRIOV are enabled + - LP: #1536473 + * ixgbe: Make ATR recognize IPv6 extended headers + - LP: #1536473 + * e1000: make eeprom read/write scheduler friendly + * e1000: fix data race between tx_ring->next_to_clean + * e1000: Remove checkpatch coding style errors + * e1000: clean up the checking logic + * e1000: fix a typo in the comment + * e1000e: clean up the local variable + * e1000: fix kernel-doc argument being missing + * e1000: get rid of duplicate exit path + * e1000: Elementary checkpatch warnings and checks removed + * e1000e: fix division by zero on jumbo MTUs + * e1000e: Increase timeout of polling bit RSPCIPHY + * e1000e: initial support for i219-LM (3) + * e1000e: Switch e1000e_up to void, drop code checking for error result + * e1000e: Remove unreachable code + * e1000e: Do not read ICR in Other interrupt + * e1000e: Do not write lsc to ics in msi-x mode + * e1000e: Fix msi-x interrupt automask + * acpi: pci: Setup MSI domain for ACPI based pci devices + * irqdomain: Introduce is_fwnode_irqchip helper + * irqchip/gic-v2m: Refactor to prepare for ACPI support + * irqchip/gic-v2m: acpi: Introducing GICv2m ACPI support + * clk: xgene: Fix divider with non-zero shift value + * i2c: designware: Do not require clock when SSCN and FFCN are provided + * fm10k: do not assume VF always has 1 queue + - LP: #1536475 + * fm10k: Correct MTU for jumbo frames + - LP: #1536475 + * fm10k: Fix handling of NAPI budget when multiple queues are enabled per + vector + - LP: #1536475 + * fm10k: use napi_schedule_irqoff() + - LP: #1536475 + * fm10k: set netdev features in one location + - LP: #1536475 + * fm10k: reset max_queues on init_hw_vf failure + - LP: #1536475 + * fm10k: always check init_hw for errors + - LP: #1536475 + * fm10k: reinitialize queuing scheme after calling init_hw + - LP: #1536475 + * fm10k: Correct typecast in fm10k_update_xc_addr_pf + - LP: #1536475 + * fm10k: explicitly typecast vlan values to u16 + - LP: #1536475 + * fm10k: add statistics for actual DWORD count of mbmem mailbox + - LP: #1536475 + * fm10k: rename mbx_tx_oversized statistic to mbx_tx_dropped + - LP: #1536475 + * fm10k: Add support for ITR scaling based on PCIe link speed + - LP: #1536475 + * fm10k: introduce ITR_IS_ADAPTIVE macro + - LP: #1536475 + * fm10k: Update adaptive ITR algorithm + - LP: #1536475 + * fm10k: use macro for default Tx and Rx ITR values + - LP: #1536475 + * fm10k: change default Tx ITR to 25usec + - LP: #1536475 + * fm10k: TRIVIAL fix typo of hardware + - LP: #1536475 + * fm10k: TRIVIAL cleanup order at top of fm10k_xmit_frame + - LP: #1536475 + * fm10k: use ether_addr_copy to copy MAC address + - LP: #1536475 + * fm10k: do not use CamelCase + - LP: #1536475 + * fm10k: remove unnecessary else block from if statements with return + - LP: #1536475 + * fm10k: remove namespace pollution of fm10k_iov_msg_data_pf + - LP: #1536475 + * fm10k: consistently refer to VLANs and VLAN IDs + - LP: #1536475 + * fm10k: bump driver version + - LP: #1536475 + * fm10k: conditionally compile DCB and DebugFS support + - LP: #1536475 + * fm10k: Cleanup MSI-X interrupts in case of failure + - LP: #1536475 + * fm10k: Cleanup exception handling for mailbox interrupt + - LP: #1536475 + * fm10k: do not inline fm10k_iov_select_vid() + - LP: #1536475 + * fm10k: whitespace cleanups + - LP: #1536475 + * fm10k: use BIT() macro instead of open-coded bit-shifting + - LP: #1536475 + * fm10k: cleanup namespace pollution + - LP: #1536475 + * fm10k: cleanup overly long lines + - LP: #1536475 + * fm10k: initialize xps at driver load + - LP: #1536475 + * fm10k: don't initialize fm10k_workqueue at global level + - LP: #1536475 + * fm10k: correctly pack TLV structures and explain reasoning + - LP: #1536475 + * fm10k: Cleanup exception handling for changing queues + - LP: #1536475 + * fm10k: use ether_addr_equal instead of memcmp + - LP: #1536475 + * fm10k: address operator not needed when declaring function pointers + - LP: #1536475 + * fm10k: constify fm10k_mac_ops, fm10k_iov_ops and fm10k_info structures + - LP: #1536475 + * fm10k: remove unused struct element + - LP: #1536475 + * fm10k: use true/false for boolean get_host_state + - LP: #1536475 + * fm10k: cleanup mailbox code comments etc + - LP: #1536475 + * fm10k: IS_ENABLED() is not appropriate for boolean kconfig option + - LP: #1536475 + * device property: always check for fwnode type + - LP: #1533035 + * device property: rename helper functions + - LP: #1533035 + * device property: refactor built-in properties support + - LP: #1533035 + * device property: keep single value inplace + - LP: #1533035 + * device property: helper macros for property entry creation + - LP: #1533035 + * device property: improve readability of macros + - LP: #1533035 + * device property: return -EINVAL when property isn't found in ACPI + - LP: #1533035 + * device property: Fallback to secondary fwnode if primary misses the + property + - LP: #1533035 + * device property: Take a copy of the property set + - LP: #1533035 + * driver core: platform: Add support for built-in device properties + - LP: #1533035 + * driver core: Do not overwrite secondary fwnode with NULL if it is set + - LP: #1533035 + * mfd: core: propagate device properties to sub devices drivers + - LP: #1533035 + * mfd: intel-lpss: Add support for passing device properties + - LP: #1533035 + * mfd: intel-lpss: Pass SDA hold time to I2C host controller driver + - LP: #1533035 + * mfd: intel-lpss: Pass HSUART configuration via properties + - LP: #1533035 + * i2c: designware: Convert to use unified device property API + - LP: #1533035 + * keys, trusted: fix: *do not* allow duplicate key options + - LP: #1398274 + * keys, trusted: select hash algorithm for TPM2 chips + - LP: #1398274 + * keys, trusted: seal with a TPM2 authorization policy + - LP: #1398274 + * perf/x86/intel: Add perf core PMU support for Intel Knights Landing + - LP: #1461360 + * perf/x86/intel/uncore: Add Knights Landing uncore PMU support + - LP: #1461360 + * perf/x86/intel/uncore: Remove hard coding of PMON box control MSR + offset + - LP: #1461360 + * drm/i915: WaRsDisableCoarsePowerGating + - LP: #1527462 + * drm/i915/skl: Add SKL GT4 PCI IDs + - LP: #1527462 + * drm/i915/skl: Disable coarse power gating up until F0 + - LP: #1527462 + * platform:x86: add Intel P-Unit mailbox IPC driver + - LP: #1520457 + * intel_punit_ipc: add NULL check for input parameters + - LP: #1520457 + * platform/x86: Add Intel Telemetry Core Driver + - LP: #1520457 + * intel_pmc_ipc: update acpi resource structure for Punit + - LP: #1520457 + * platform:x86: Add Intel telemetry platform device + - LP: #1520457 + * platform:x86: Add Intel telemetry platform driver + - LP: #1520457 + * platform:x86: Add Intel Telemetry Debugfs interfaces + - LP: #1520457 + * cxlflash: a couple off by one bugs + + -- Andy Whitcroft Thu, 28 Jan 2016 13:56:00 +0000 + +linux (4.4.0-1.15) xenial; urgency=low + + [ Tim Gardner ] + + * Release Tracking Bug + - LP: #1536803 + + [ Upstream Kernel Changes ] + + * Revert "[SCSI] libiscsi: Reduce locking contention in fast path" + - LP: #1517142 + + -- Tim Gardner Wed, 20 Jan 2016 07:41:40 -0700 + +linux (4.4.0-0.14) xenial; urgency=low + + [ Upstream Kernel Changes ] + + * Revert "powerpc/pci: Remove unused struct pci_dn.pcidev field" + - LP: #1522415 + * powerpc: Add __raw_rm_writeq() function + - LP: #1522415 + + -- Tim Gardner Tue, 19 Jan 2016 11:24:26 -0700 + +linux (4.4.0-0.13) xenial; urgency=low + + [ Andy Whitcroft ] + + * [Config] s390x -- the kernel provides ppp-modules such as there are + * SAUCE: (no-up) add compat_uts_machine= kernel command line override + + [ Tim Gardner ] + + * [Config] Update annotations for VIRTIO_{NET,BLK} + - LP: #1533382 + + [ Upstream Kernel Changes ] + + * powerpc/powernv: Add support for Nvlink NPUs + - LP: #1522415 + * powerpc/powernv: Fix update of NVLink DMA mask + - LP: #1522415 + * powerpc/powernv: Change NPU PE# assignment + - LP: #1522415 + * powerpc/powernv: Reserve PE#0 on NPU + - LP: #1522415 + * KEYS: Fix keyring ref leak in join_session_keyring() + - LP: #1534887 + - CVE-2016-0728 + + -- Tim Gardner Tue, 19 Jan 2016 05:49:09 -0700 + +linux (4.4.0-0.12) xenial; urgency=low + + [ Eric Dumazet ] + + * SAUCE: (no-up) udp: properly support MSG_PEEK with truncated buffers + - LP: #1527902 + + [ Guilherme G. Piccoli ] + + * SAUCE: powerpc/eeh: Validate arch in eeh_add_device_early() + - LP: #1486180 + + [ Tim Gardner ] + + * SAUCE: AUFS - update to aufs4.x-rcN 20160111 + * [Config] CONFIG_VIRTIO_BLK=y, CONFIG_VIRTIO_NET=y for s390 + - LP: #1532886 + * [Config] nvme.ko moved to drivers/nvme/host + * [Config] scsi_dh morphed into 4 modules + * [Config] CONFIG_IBMVNIC=m + * [Config] Add DRM ast driver to udeb installer image + - LP: #1514711 + * [Config] CONFIG_KVM=y for s390x + - LP: #1532886 + * [Config] Install spl/zfs under the kernel modules directory + Fixes some errors in generic.inclusion-list.log + + [ Upstream Kernel Changes ] + + * perf/x86/intel/uncore: Add Broadwell-EP uncore support + - LP: #1524574 + * EDAC: Add DDR4 flag + - LP: #1519631 + * EDAC, sb_edac: Virtualize several hard-coded functions + - LP: #1519631 + * EDAC, sb_edac: Add support for duplicate device IDs + - LP: #1519631 + * EDAC, sb_edac: Add Knights Landing (Xeon Phi gen 2) support + - LP: #1519631 + * Driver for IBM System i/p VNIC protocol + - LP: #1532303 + + -- Tim Gardner Mon, 11 Jan 2016 09:57:16 -0700 + +linux (4.4.0-0.11) xenial; urgency=low + + [ Tim Gardner ] + + * [Config] Fix bogus reconstruct script + + -- Tim Gardner Mon, 11 Jan 2016 07:29:17 -0700 + +linux (4.4.0-0.10) xenial; urgency=low + + [ Haren Myneni ] + + * SAUCE: crypto: nx-842 - Mask XERS0 bit in return value + - LP: #1529666 + + [ Serge Hallyn ] + + * SAUCE: add a sysctl to disable unprivileged user namespace unsharing + + [ Tim Gardner ] + + * [Config] CONFIG_ZONE_DEVICE=y for amd64 + * [Config] CONFIG_BLK_DEV_LOOP=y for s390x + - LP: #1526869 + * SAUCE: (no-up) apparmor: Fix incompatible pointer type warnings + * SAUCE: radeon: r100: Silence 'may be used uninitialized' warnings + * SAUCE: dmaengine: ioatdma: Squelch framesize warnings + * rebase to v4.4 + + [ Upstream Kernel Changes ] + + * rebase to v4.4 + + -- Tim Gardner Mon, 04 Jan 2016 17:43:51 -0700 + +linux (4.4.0-0.9) xenial; urgency=low + + [ Tim Gardner ] + + * rebase to v4.4-rc8 + + [ Upstream Kernel Changes ] + + * rebase to v4.4-rc8 + + -- Tim Gardner Sun, 03 Jan 2016 18:50:33 -0700 + +linux (4.4.0-0.8) xenial; urgency=low + + [ Tim Gardner ] + + * rebase to v4.4-rc7 + + [ Upstream Kernel Changes ] + + * rebase to v4.4-rc7 + + -- Tim Gardner Mon, 28 Dec 2015 16:13:11 -0700 + +linux (4.4.0-0.7) xenial; urgency=low + + [ Hui Wang ] + + * [Config] CONFIG_I2C_DESIGNWARE_BAYTRAIL=y, CONFIG_IOSF_MBI=y + - LP: #1527096 + + [ Jann Horn ] + + * SAUCE: (noup) ptrace: being capable wrt a process requires mapped + uids/gids + - LP: #1527374 + + [ Tim Gardner ] + + * rebase to v4.4-rc6 + + [ Upstream Kernel Changes ] + + * rebase to v4.4-rc6 + - LP: #1526330 + + -- Tim Gardner Thu, 17 Dec 2015 05:28:27 -0700 + +linux (4.4.0-0.6) xenial; urgency=low + + [ Andy Whitcroft ] + + * [Config] disable CONFIG_ARM64_LSE_ATOMICS to avoid issues with ARMv8.1 + support in latest compilers + * [Config] disable CONFIG_CRYPTO_AES_ARM64_CE* to avoid issues with + ARMv8.1 support in latest compilers + + [ Tim Gardner ] + + * [Config] s390 -> s390x + * SAUCE: include/linux/mmdebug.h: #include + + -- Tim Gardner Tue, 15 Dec 2015 06:46:26 -0700 + +linux (4.4.0-0.5) xenial; urgency=low + + [ Andy Whitcroft ] + + * [Config] s390x -- enable tools + - LP: #1524319 + * [Config] s390x -- add architecture to getabis + * [Config] s390x -- add s390x ABI information + * [Config] s390x -- enable ABI checks + + [ Tim Gardner ] + + * [Debian] config-check and prepare using ${DEBIAN}/config/annotations + * [Config] Add s390 modules to nic-modules udeb + - LP: #1525297 + * rebase to v4.4-rc5 + + [ Upstream Kernel Changes ] + + * rebase to v4.4-rc5 + - LP: #1523517 + - LP: #1523232 + + -- Tim Gardner Mon, 14 Dec 2015 05:28:05 -0700 + +linux (4.4.0-0.4) xenial; urgency=low + + [ Upstream Kernel Changes ] + + * cgroup: make css_set pin its css's to avoid use-afer-free + * cgroup_freezer: simplify propagation of CGROUP_FROZEN clearing in + freezer_attach() + * cgroup: fix handling of multi-destination migration from + subtree_control enabling + + -- Tim Gardner Tue, 08 Dec 2015 11:20:41 -0700 + +linux (4.4.0-0.3) xenial; urgency=low + + [ Upstream Kernel Changes ] + + * rebase to v4.4-rc4 + + -- Tim Gardner Sun, 06 Dec 2015 16:50:15 -0700 + +linux (4.4.0-0.2) xenial; urgency=low + + [ Tim Gardner ] + + * [Config] Add spl/zfs provides to generic and powerpc64-smp + * [Config] Add zfs to d-i fs-core-modules + * [Config] Include all s390 specific drivers in linux-image + - LP: #1522210 + + -- Tim Gardner Thu, 03 Dec 2015 07:05:56 -0700 + +linux (4.4.0-0.1) xenial; urgency=low + + [ Andy Whitcroft ] + + * [Tests] gcc-multilib does not exist on ppc64el redux + - LP: #1515541 + * [Config] libunwind8-dev is not available on s390x + * [Debian] Disable SPL/ZFS for cross compiling -- redux + * [Config] s390x -- add dasd udebs + - LP: #1519833 + * [Config] s390x -- include dasd modules in linux-image + - LP: #1519833 + * [Config] s390x -- disable ZFS temporarily + - LP: #1519820 + * [Config] s390s -- disable ABI/module checks + * [Config] make IBMVETH consistent on powerpc/ppc64el + - LP: #1521712 + * [Config] follow ibmvscsi name change + - LP: #1521712 + * [Config] move ibm disk and ethernet drivers to linux-image + - LP: #1521712 + * [Config] include ibmveth in nic-modules for ppc64el + - LP: #1521712 + * [Config] s390x -- disable abi/module checks for s390x + + [ Joseph Salisbury ] + + * SAUCE: scsi_sysfs: protect against double execution of + __scsi_remove_device() + - LP: #1509029 + + [ Seth Forshee ] + + * [Config] CONFIG_DRM_AMDGPU_CIK=n + - LP: #1510405 + + [ Tim Gardner ] + + * [Debian] Disable SPL/ZFS for cross compiling + * [Config] CONFIG_SCSI_IBMVSCSI=m + - LP: #1515872 + * rebase to v4.4-rc2 + * [Config] updateconfigs + * [Config] CONFIG_WILC1000_DRIVER=n for FTBS + * SAUCE: do_zfs=false temporarily + * [Config] CONFIG_LUSTRE_FS=n + * [Debian] Disable udebs when cross compiling + * rebase to v4.4-rc3 + * [Config] CONFIG_AUFS_FS=m + * SAUCE: AUFS + + [ Upstream Kernel Changes ] + + * ZFS: Update with 4.4 support + * SPL: Update with 4.4 support + + [ Upstream Kernel Changes ] + + * rebase to v4.4-rc3 + - LP: #1519168 + * rebase to v4.4-rc2 + - LP: #1506615 + - LP: #1502781 + + -- Tim Gardner Mon, 23 Nov 2015 13:22:37 -0700 + +linux (4.3.0-0.8) xenial; urgency=low + + [ Andy Whitcroft ] + + * [Config] re-enable OSS support and blacklist + - LP: #1434842 + * [Config] enable CONFIG_CC_STACKPROTECTOR_STRONG=y + * [Packaging] config-check -- improve syntax diagnostics + * [Packaging] module-inclusion -- add dependency inclusion for a list + * [Packaging] config-check -- accumulate multi-line annotations correctly + * [Packaging] config-check -- handle V2 annotations format + * [Packaging] s390x -- add architecture to kernelconfig + - LP: #1488653 + * [Config] s390x -- initial configuration + * [Config] s390x -- add initial binary image + * [Config] s390x -- initial configuration update + * [Config] s390x -- produce linux-image + * [Config] s390x -- d-i module exclusions + * [Config] apply Device Drivers >> LED Support >> LED Class Support + * [Config] apply File systems >> Miscellaneous filesystems >> SquashFS 4.0 - Squashed file system support + * [Config] apply Device Drivers >> Generic Driver Options >> Userspace firmware loading support + * SAUCE: leds: lp55xx -- do not force use of the fallback loader + * [Config] -- s390x -- configuration review updates + * [Config] annotations -- add review marks + * [Config] annotations -- config review 4.3 updates + * [Config] annotations -- expose reviews + * [Config] updateconfigs following incoporation of s390x configs + * [Tests] gcc-multilib does not exist on ppc64el + - LP: #1515541 + + [ Dan Carpenter ] + + * SAUCE: (noup) cxlflash: a couple off by one bugs + - LP: #1499849 + + [ Haren Myneni ] + + * Revert "SAUCE: (noup) crypto: 842 - Add CRC and validation support" + + [ Jay Vosburgh ] + + * SAUCE: fan: add VXLAN implementation + + [ Manoj Kumar ] + + * SAUCE: (noup) cxlflash: Fix to escalate LINK_RESET also on port 1 + - LP: #1513583 + + [ Matthew R. Ochs ] + + * SAUCE: (noup) cxlflash: Fix to avoid virtual LUN failover failure + - LP: #1513583 + + [ Tim Gardner ] + + * [Config] CONFIG_AUFS_EXPORT=y + - LP: #1121699 + + [ Upstream Kernel Changes ] + + * misc/genwqe: get rid of atomic allocations + * crypto: 842 - Add CRC and validation support + - LP: #1497878 + * cxlflash: Fix to avoid invalid port_sel value + * cxlflash: Replace magic numbers with literals + * cxlflash: Fix read capacity timeout + * cxlflash: Fix potential oops following LUN removal + * cxlflash: Fix data corruption when vLUN used over multiple cards + * cxlflash: Fix to avoid sizeof(bool) + * cxlflash: Fix context encode mask width + * cxlflash: Fix to avoid CXL services during EEH + * cxlflash: Correct naming of limbo state and waitq + * cxlflash: Make functions static + * cxlflash: Refine host/device attributes + * cxlflash: Fix to avoid spamming the kernel log + * cxlflash: Fix to avoid stall while waiting on TMF + * cxlflash: Fix location of setting resid + * cxlflash: Fix host link up event handling + * cxlflash: Fix async interrupt bypass logic + * cxlflash: Remove dual port online dependency + * cxlflash: Fix AFU version access/storage and add check + * cxlflash: Correct usage of scsi_host_put() + * cxlflash: Fix to prevent workq from accessing freed memory + * cxlflash: Correct behavior in device reset handler following EEH + * cxlflash: Remove unnecessary scsi_block_requests + * cxlflash: Fix function prolog parameters and return codes + * cxlflash: Fix MMIO and endianness errors + * cxlflash: Fix to prevent EEH recovery failure + * cxlflash: Correct spelling, grammar, and alignment mistakes + * cxlflash: Fix to prevent stale AFU RRQ + * cxlflash: Fix to double the delay each time + * cxlflash: Fix to avoid corrupting adapter fops + * cxlflash: Correct trace string + * cxlflash: Fix to avoid potential deadlock on EEH + * cxlflash: Fix to avoid leaving dangling interrupt resources + * cxlflash: Fix to escalate to LINK_RESET on login timeout + * cxlflash: Fix to avoid corrupting port selection mask + * cxlflash: Fix to avoid lock instrumentation rejection + * cxlflash: Fix to avoid bypassing context cleanup + + -- Tim Gardner Fri, 06 Nov 2015 10:15:07 -0600 + +linux (4.3.0-0.7) xenial; urgency=low + + [ Tim Gardner ] + + * Revert "Bypass spl/zfs config" + Causes unresolved symbols on load. + * [Config] Enable ZFS for powerpc64-smp + + -- Tim Gardner Thu, 05 Nov 2015 11:42:37 -0600 + +linux (4.3.0-0.6) xenial; urgency=low + + [ Tim Gardner ] + + * Release Tracking Bug + - LP: #1512704 + * UBUNTU: SAUCE: AUFS aufs4.x-rcN 20151102 + + [ Andy Whitcroft ] + + * [Packaging] add feature interlock with mainline builds + * apparmor -- follow change to this_cpu_ptr + + [ John Johansen ] + + * SAUCE: (no-up) apparmor: add parameter to control whether policy hashing is used + - LP: #1383886 + * SAUCE: (no-up) apparmor: Sync to apparmor3 - RC1 snapshot + - LP: #1362199 + * SAUCE: Revert: fix: only allow a single threaded process to ... + - LP: #1371310 + * SAUCE: (no-up) fix: bad unix_addr_fs macro + - LP: #1390223 + * SAUCE: (no-up): apparmor: fix mediation of fs unix sockets + - LP: #1408833 + * SAUCE: (no-up) apparmor: fix mount not handling disconnected paths + - LP: #1496430 + + [ Tim Gardner ] + + * [Config] Add iscsi_ibft and iscsi_boot_sysfs to generic inclusion list + - LP: #1511006 + * rebase to v4.3 + * Bypass spl/zfs config + * SPL/ZFS: Add Makefiles in order to avoid the lengthy config + * [Config] Default AppArmor settings + + [ Upstream Kernel Changes ] + + * rebase to v4.3 + + -- Tim Gardner Thu, 29 Oct 2015 09:16:26 -0600 + +linux (4.3.0-0.5) xenial; urgency=low + + * Update spl to 0.6.5.3-0ubuntu1, zfs to 0.6.5.3-0ubuntu1 + + [ Upstream Kernel Changes ] + + * rebase to v4.3-rc7 + - LP: #1504778 + + -- Tim Gardner Fri, 23 Oct 2015 13:59:52 -0600 + +linux (4.3.0-0.4) xenial; urgency=low + + [ Tim Gardner ] + + * [Debian] Update to new signing key type and location + + -- Tim Gardner Wed, 21 Oct 2015 13:07:30 -0600 + +linux (4.3.0-0.3) wily; urgency=low + + [ Tim Gardner ] + + * [Debian] sign-file is now compiled + + -- Tim Gardner Wed, 21 Oct 2015 09:26:34 -0600 + +linux (4.3.0-0.2) wily; urgency=low + + [ Tim Gardner ] + + * [Config] Added libssl-dev to Build-Depends + + -- Tim Gardner Tue, 20 Oct 2015 14:01:55 -0600 + +linux (4.3.0-0.1) wily; urgency=low + + [ Upstream Kernel Changes ] + + * rebase to v4.3-rc6 + * rebase to v4.3-rc5 + * rebase to v4.3-rc4 + * rebase to v4.3-rc3 + * rebase to v4.3-rc2 + * rebase to v4.3-rc1 + - LP: #1492132 + - LP: #1481575 + + -- Tim Gardner Mon, 14 Sep 2015 07:30:36 -0600 + +linux (4.2.0-10.11) wily; urgency=low + + [ Andy Whitcroft ] + + * Release Tracking Bug + - LP: #1495208 + * No change rebuild to avoid issues with leading zero bytes on + internal module signing key. (see launchpad bug 1494943) + + [ Ming Lei ] + + * [Config] SERIAL_8250_DW=y for arm64 + + [ Upstream Kernel Changes ] + + * drm/i915: Move WaBarrierPerformanceFixDisable:skl to skl code from chv + code + - LP: #1484486 + * drm/i915/gen8: Add infrastructure to initialize WA batch buffers + - LP: #1484486 + * drm/i915/gen8: Re-order init pipe_control in lrc mode + - LP: #1484486 + * drm/i915/gen8: Add WaDisableCtxRestoreArbitration workaround + - LP: #1484486 + * drm/i915/gen8: Add WaFlushCoherentL3CacheLinesAtContextSwitch + workaround + - LP: #1484486 + * drm/i915: Bail out early if WA batch is not available for given Gen + - LP: #1484486 + * drm/i915/gen8: Add WaClearSlmSpaceAtContextSwitch workaround + - LP: #1484486 + * drm/i915: Update WaFlushCoherentL3CacheLinesAtContextSwitch + - LP: #1484486 + * drm/i915/gen9: Implement WaDisableKillLogic for gen 9 + - LP: #1484486 + * drm/i915: Enable WA batch buffers for Gen9 + - LP: #1484486 + * drm/i915/gen9: Add WaDisableCtxRestoreArbitration workaround + - LP: #1484486 + * drm/i915: Update wa_ctx_emit() macro as per kernel coding guidelines + - LP: #1484486 + * drm/i915/gen9: Add WaFlushCoherentL3CacheLinesAtContextSwitch + workaround + - LP: #1484486 + * drm/i915/gen9: Add + WaSetDisablePixMaskCammingAndRhwoInCommonSliceChicken + - LP: #1484486 + * drm/i915:skl: Add WaEnableGapsTsvCreditFix + - LP: #1484486 + * drm/i915/skl: revert duplicated WaBarrierPerformanceFixDisable:skl + - LP: #1484486 + * drm/i915/skl: Don't expose the top most plane on gen9 display + - LP: #1484486 + * drm/i915/skl WaDisableSbeCacheDispatchPortSharing + - LP: #1484486 + * drm/i915/skl: WaIgnoreDDIAStrap is forever, always init DDI A + - LP: #1484486 + * drm/i915: reduce indent in i9xx_hpd_irq_handler + - LP: #1484531 + * drm/i915: reduce duplicate conditions in i9xx_hpd_irq_handler + - LP: #1484531 + * drm/i915: reduce indent in intel_hpd_irq_handler + - LP: #1484531 + * drm/i915: group all hotplug related fields into a new struct in + dev_priv + - LP: #1484531 + * drm/i915: add for_each_hpd_pin to iterate over hotplug pins + - LP: #1484531 + * drm/i915: simplify conditions for skipping the 2nd hpd loop iterations + - LP: #1484531 + * drm/i915: put back the indent in intel_hpd_irq_handler + - LP: #1484531 + * drm/i915: merge the two hpd loops in intel_hpd_irq_handler to one + - LP: #1484531 + * drm/i915: simplify condition for digital port + - LP: #1484531 + * drm/i915: abstract away platform specific parts from hpd handling + - LP: #1484531 + * drm/i915: Handle HPD when it has actually occurred + - LP: #1484531 + * drm/i915: Set power domain for DDI-E + - LP: #1484531 + * drm/i915: Set alternate aux for DDI-E + - LP: #1484531 + * drm/i915/skl: enable DDI-E hotplug + - LP: #1484531 + * drm/i915/bxt: fix DDI PHY vswing scale value setting + - LP: #1494163 + * drm/i915/skl: Buffer translation improvements + - LP: #1494163 + * drm/i915: Per-DDI I_boost override + - LP: #1494163 + * drm/i915: fix VBT parsing for SDVO child device mapping + - LP: #1494163 + * drm/i915/bxt: edp1.4 Intermediate Freq support + - LP: #1494163 + * drm/i915: fix link rates reported for SKL + - LP: #1494163 + * drm/i915: Allow parsing of variable size child device entries from VBT + - LP: #1494163 + * drm/i915/skl: Update DDI buffer translation programming. + - LP: #1494163 + * drm/i915: Enable HDMI on DDI-E + - LP: #1484531 + * drm/i915/skl: Enable DDI-E + - LP: #1484531 + * drm/i915: eDP can be present on DDI-E + - LP: #1484531 + * drm/i915/skl: Adding DDI_E power well domain + - LP: #1484531 + * drm/i915: set CDCLK if DPLL0 enabled during resuming from S3 + - LP: #1490035 + * drm/i915: Split atomic wm update to pre and post variants + - LP: #1493746 + * drm/i915/skl: Drop the preliminary_hw_support flag + - LP: #1486868 + * drm/i915: set FDI translations to NULL on SKL + - LP: #1494163 + + -- Andy Whitcroft Sun, 13 Sep 2015 11:32:02 +0100 + +linux (4.2.0-9.9) wily; urgency=low + + [ Tim Gardner ] + + * Release Tracking Bug + - LP: #1493970 + * [Config] CONFIG_MFD_INTEL_LPSS=m + - LP: #1397876 + + [ dann frazier ] + + * [Config] Disable CONFIG_IPMI_SI_PROBE_DEFAULTS on armhf and arm64 + - LP: #1388952 + + [ Michael Ellerman ] + + * SAUCE: crypto: vmx - VMX crypto should depend on CONFIG_VSX + Fixes FTBS on 32 bit powerpc, patch sent upstream. + + [ Upstream Kernel Changes ] + + * thermal/powerclamp: add cpu id for skylake h/s + - LP: #1398269 + * perf/x86/intel/uncore: Add Broadwell-DE uncore support + - LP: #1397852 + * mfd: watchdog: iTCO_wdt: Expose watchdog properties using platform data + - LP: #1460905 + * i2c: i801: Create iTCO device on newer Intel PCHs + - LP: #1460905 + * watchdog: iTCO_wdt: Add support for TCO on Intel Sunrisepoint + - LP: #1460905 + * perf/x86: Add a native_perf_sched_clock_from_tsc() + - LP: #1397867 + * perf/x86/intel: Add support for PEBSv3 profiling + - LP: #1397867 + * perf/x86/intel/lbr: Allow time stamp for free running PEBSv3 + - LP: #1397867 + * x86: Add new MSRs and MSR bits used for Intel Skylake PMU support + - LP: #1397867 + * perf: Add cycles to branch_info + - LP: #1397867 + * perf/x86/intel/lbr: Add support for LBRv5 + - LP: #1397867 + * perf/x86/intel: Handle new arch perfmon v4 status bits + - LP: #1397867 + * perf/x86/intel: Move PMU ACK to after LBR read + - LP: #1397867 + * perf/x86/intel/lbr: Optimize v4 LBR unfreezing + - LP: #1397867 + * perf/x86/intel: Add Intel Skylake PMU support + - LP: #1397867 + * perf/x86/intel/lbr: Use correct index to save/restore LBR_INFO with + call stack + - LP: #1397867 + * perf/x86/intel/lbr: Limit LBR accesses to TOS in callstack mode + - LP: #1397867 + * perf/x86: Make merge_attr() global to use from perf_event_intel + - LP: #1397867 + * perf/x86/intel: Use 0x11 as extra reg test value + - LP: #1397867 + * perf tools: Add support for cycles, weight branch_info field + - LP: #1397867 + * perf report: Add flag for non ANY branch mode + - LP: #1397867 + * perf report: Add infrastructure for a cycles histogram + - LP: #1397867 + * perf report: Add processing for cycle histograms + - LP: #1397867 + * perf annotate: Compute IPC and basic block cycles + - LP: #1397867 + * perf annotate: Finally display IPC and cycle accounting + - LP: #1397867 + * perf top: Add branch annotation code to top + - LP: #1397867 + * perf report: Display cycles in branch sort mode + - LP: #1397867 + * perf annotate: Fix 32-bit compilation error in util/annotate.c + - LP: #1397867 + * PM / QoS: Make it possible to expose device latency tolerance to + userspace + - LP: #1460908 + * ACPI / PM: Attach ACPI power domain only once + - LP: #1460908 + * Driver core: wakeup the parent device before trying probe + - LP: #1460908 + * klist: implement klist_prev() + - LP: #1460908 + * driver core: implement device_for_each_child_reverse() + - LP: #1460908 + * mfd: make mfd_remove_devices() iterate in reverse order + - LP: #1460908 + * dmaengine: add a driver for Intel integrated DMA 64-bit + - LP: #1460908 + * mfd: Add support for Intel Sunrisepoint LPSS devices + - LP: #1460908 + * spi: pxa2xx: Add support for Intel Sunrisepoint + - LP: #1397876 + * spi: spi-pxa2xx: Remove unused legacy PXA DMA API channel numbers + - LP: #1397876 + * spi: pxa2xx: Add terminating entry for pxa2xx_spi_pci_compound_match + - LP: #1397876 + * spi: spi-pxa2xx: Remove unused legacy null dma buffer and allocation + for it + - LP: #1397876 + * intel_idle: Skylake Client Support + - LP: #1397877 + * powerpc/kernel: Switch to using MAX_ERRNO + - LP: #1458876 + * powerpc/kernel: Change the do_syscall_trace_enter() API + - LP: #1458876 + * powerpc: Drop unused syscall_get_error() + - LP: #1458876 + * powerpc: Don't negate error in syscall_set_return_value() + - LP: #1458876 + * powerpc: Rework syscall_get_arguments() so there is only one loop + - LP: #1458876 + * powerpc: Use orig_gpr3 in syscall_get_arguments() + - LP: #1458876 + * powerpc: Change syscall_get_nr() to return int + - LP: #1458876 + * powerpc/kernel: Add SIG_SYS support for compat tasks + - LP: #1458876 + * powerpc/kernel: Enable seccomp filter + - LP: #1458876 + * selftests/seccomp: Make seccomp tests work on big endian + - LP: #1458876 + * selftests/seccomp: Add powerpc support + - LP: #1458876 + * eCryptfs: Invalidate dcache entries when lower i_nlink is zero + + -- Tim Gardner Tue, 08 Sep 2015 19:17:57 -0600 + +linux (4.2.0-8.8) wily; urgency=low + + [ Tim Gardner ] + + * Release Tracking Bug + - LP: #1493357 + * [Config] CONFIG_CRYPTO_DEV_NX_COMPRESS_CRYPTO obsolete + - LP: #1488495 + * [Config] CONFIG_CXLFLASH=m + * [Config] CONFIG_CXL_EEH=y for ppc64el, powerpc64-smp + + + [ Andy Whitcroft ] + + * [Packaging] standardise on stage1 for the bootstrap stage in line with debian + * [Packaging] mark up control for stage1 + * [Config] kernel-versions -- clean up deps field + * [Config] s390x -- build linux-libc-dev + - LP: #1488653 + * [Packaging] control -- prepare for new kernel-wedge semantics + + [ Upstream Kernel Changes ] + + * crypto: vmx - Fixing AES-CTR counter bug + - LP: #1484519 + * crypto: vmx - Fixing GHASH Key issue on little endian + - LP: #1484519 + * powerpc: Uncomment and make enable_kernel_vsx() routine available + - LP: #1484519 + * crypto: vmx - Adding enable_kernel_vsx() to access VSX instructions + - LP: #1484519 + * crypto: nx - nx842_OF_upd_status should return ENODEV if device is not + 'okay' + - LP: #1488495 + * crypto: nx - rename nx842_{init, exit} to nx842_pseries_{init, exit} + - LP: #1488495 + * crypto: nx - do not emit extra output if status is disabled + - LP: #1488495 + * crypto: nx - reduce chattiness of platform drivers + - LP: #1488495 + * crypto: nx/842 - Fix context corruption + - LP: #1488495 + * crypto: nx - remove __init/__exit from VIO functions + - LP: #1488495 + * crypto: nx - remove pSeries NX 'status' field + - LP: #1488495 + * crypto: nx - move kzalloc() out of spinlock + - LP: #1488495 + * crypto: nx - don't register pSeries driver if ENODEV + - LP: #1488495 + * crypto: nx - use common code for both NX decompress success cases + - LP: #1488495 + * crypto: nx - merge nx-compress and nx-compress-crypto + - LP: #1488495 + * crypto: nx - rename nx-842-crypto.c to nx-842.c + - LP: #1488495 + * crypto: nx - make platform drivers directly register with crypto + - LP: #1488495 + * cxlflash: Base support for IBM CXL Flash Adapter + - LP: #1449121 + * cxlflash: Base error recovery support + - LP: #1449121 + * cxlflash: Superpipe support + - LP: #1449121 + * cxlflash: Virtual LUN support + - LP: #1449121 + * cxlflash: off by one bug in cxlflash_show_port_status() + - LP: #1449121 + * cxlflash: shift wrapping bug in afu_link_reset() + - LP: #1449121 + * cxlflash: Remove unused variable from queuecommand + - LP: #1449121 + * powerpc/powernv: move dma_get_required_mask from pnv_phb to + pci_controller_ops + * powerpc/eeh: Probe after unbalanced kref check + * misc: cxl: clean up afu_read_config() + * cxl: Add explicit precision specifiers + * cxl: use more common format specifier + * cxl: Destroy cxl_adapter_idr on module_exit + * cxl: Destroy afu->contexts_idr on release of an afu + * cxl: Don't ignore add_process_element() result when attaching context + * cxl: Compile with -Werror + * cxl: sparse: Make declarations static + * cxl: sparse: Silence iomem warning in debugfs file creation + * cxl: Convert MMIO read/write macros to inline functions + * cxl: Drop commands if the PCI channel is not in normal state + * cxl: Allocate and release the SPA with the AFU + * cxl: Make IRQ release idempotent + * cxl: Clean up adapter MMIO unmap path. + * cxl: Refactor adaptor init/teardown + * cxl: Refactor AFU init/teardown + * cxl: Don't remove AFUs/vPHBs in cxl_reset + * cxl: Allow the kernel to trust that an image won't change on PERST. + * cxl: EEH support + * cxl: Add CONFIG_CXL_EEH symbol + * cxl: Plug irq_bitmap getting leaked in cxl_context + * cxl: Add alternate MMIO error handling + * cxl: Allow release of contexts which have been OPENED but not STARTED + * cxl: Remove use of macro DEFINE_PCI_DEVICE_TABLE + * cxl: Release irqs if memory allocation fails + * cxl: Remove racy attempt to force EEH invocation in reset + * cxl: Fix + cleanup error paths in cxl_dev_context_init + * cxl: Fix force unmapping mmaps of contexts allocated through the kernel api + * cxl: Set up and enable PSL Timebase + + -- Tim Gardner Tue, 01 Sep 2015 07:38:43 -0600 + +linux (4.2.0-7.7) wily; urgency=low + + [ Tim Gardner ] + + * Release Tracking Bug + - LP: #1490564 + * rebase to v4.2 + + [ Wen Xiong ] + + * SAUCE: ipr: Byte swapping for device_id attribute in sysfs + - LP: #1453892 + + [ Upstream Kernel Changes ] + + * rebase to v4.2 + - LP: #1487345 + + -- Tim Gardner Wed, 26 Aug 2015 07:06:10 -0600 + +linux (4.2.0-6.6) wily; urgency=low + + [ Tim Gardner ] + + * Release Tracking Bug + - LP: #1488138 + + [ Andy Whitcroft ] + + * rebase to v4.2-rc8 + + [ Shilpasri G Bhat ] + + * SAUCE: cpufreq: powernv: Handle throttling due to Pmax capping at chip + level + - LP: #1480894 + * SAUCE: powerpc/powernv: Add definition of OPAL_MSG_OCC message type + - LP: #1480894 + * SAUCE: cpufreq: powernv: Register for OCC related opal_message + notification + - LP: #1480894 + * SAUCE: cpufreq: powernv: Call throttle_check() on receiving + OCC_THROTTLE + - LP: #1480894 + * SAUCE: cpufreq: powernv: Report Psafe only if PMSR.psafe_mode_active + bit is set + - LP: #1480894 + * SAUCE: cpufreq: powernv: Restore cpu frequency to policy->cur on + unthrottling + - LP: #1480894 + + [ Upstream Kernel Changes ] + + * rebase to v4.2-rc8 + - LP: #1483440 + - LP: #1484334 + + -- Tim Gardner Fri, 21 Aug 2015 07:12:11 -0600 + +linux (4.2.0-5.5) wily; urgency=low + + [ Tim Gardner ] + + * Release Tracking Bug + - LP: #1487173 + + [ Andy Whitcroft ] + + * [Packaging] correct spelling of probabaly on the tools packages + - LP: #1256822 + * rebase to v4.2-rc7 + + [ dann frazier ] + + * d-i: Add nicpf and nicvf to nic-modules + * d-i: Enable usb modules on arm64 + + [ Mahesh Salgaonkar ] + + * SAUCE: powerpc/powernv: display reason for Malfunction Alert HMI. + - LP: #1482343 + * SAUCE: powerpc/powernv: Pull all HMI events before panic. + - LP: #1482343 + * SAUCE: powerpc/powernv: Invoke opal_cec_reboot2() on unrecoverable + machine check errors. + - LP: #1482343 + * SAUCE: powerpc/powernv: Invoke opal_cec_reboot2() on unrecoverable HMI. + - LP: #1482343 + + [ Vipin K Parashar ] + + * SAUCE: powerpc/powernv: Add poweroff (EPOW, DPO) events support for + PowerNV platform + - LP: #1469771 + + [ Upstream Kernel Changes ] + + * rebase to v4.2-rc7 + + -- Tim Gardner Tue, 11 Aug 2015 09:48:40 -0600 + +linux (4.2.0-4.4) wily; urgency=low + + [ Tim Gardner ] + + * Release Tracking Bug + - LP: #1483677 + + [ Achiad Shochat ] + + * SAUCE: net/mlx5e: Support TX packet copy into WQE + * SAUCE: net/mlx5e: TX latency optimization to save DMA reads + * SAUCE: net/mlx5e: Cosmetics: use BIT() instead of "1 <<", and others + * SAUCE: net/mlx5e: Input IPSEC.SPI into the RX RSS hash function + + [ Adam Lee ] + + * SAUCE: serial: 8250_pci: Add support for Pericom PI7C9X795[1248] + - LP: #1480142 + + [ dann frazier ] + + * [Config] CONFIG_NR_CPUS=128 on arm64 + + [ Leann Ogasawara ] + + * [Config] d-i -- Add sfc to nic-modules udeb + - LP: #1481490 + + [ Saeed Mahameed ] + + * SAUCE: net/mlx5e: Support ETH_RSS_HASH_XOR + * SAUCE: net/mlx5e: Allocate DMA coherent memory on reader NUMA node + + [ Tim Gardner ] + + * [Config] CONFIG_X86_INTEL_MPX=y + - LP: #1460902 + * [Debian] change dependency on module-init-tools to kmod + - LP: #1481986 + * rebase to v4.2-rc6 + + [ Upstream Kernel Changes ] + + * rebase to v4.2-rc6 + + -- Tim Gardner Tue, 04 Aug 2015 16:59:45 -0600 + +linux (4.2.0-3.3) wily; urgency=low + + [ Tim Gardner ] + + * Release Tracking Bug + - LP: #1481462 + * SAUCE: workqueue: Make flush_workqueue() available again to non GPL modules + Fixes an FTBS for at least one DKMS package. + + -- Tim Gardner Tue, 04 Aug 2015 11:26:53 -0600 + +linux (4.2.0-2.2) wily; urgency=low + + [ Tim Gardner ] + + * Release Tracking Bug + - LP: #1481067 + * rebase to v4.2-rc5 + + [ Andy Whitcroft ] + + * [Packaging] module-inclusion -- commonise copy code and simplify + * [Packaging] module-inclusion -- add manual command entries + * [Packaging] module blacklists -- add support for manual blacklists + * [Packaging] do_common_tools should always be on + * [Packaging] initscripts need installing when making the package + * [Packaging] initscripts work around bug in debhelper systemd support + * [Config] exclude oss modules from linux-image + - LP: #1434842 + * hyper-v -- add hid and fb drivers to linux-virtual + - LP: #1444179 + * ubuntu: (no-squash) vbox -- infrastructure and updater + * ubuntu: vbox -- elide the new symlinks and reconstruct on clean: + - LP: #1426113 + * ubuntu: vbox -- update to 5.0.0-dfsg-1 + - LP: #1480879 + * SAUCE: vbox: follow v4.2 updates to follow_link()/put_link() API + * [Config] move vbox modules into linux-image + + [ Upstream Kernel Changes ] + + * rebase to v4.2-rc5 + - LP: #1478497 + - LP: #1477900 + + -- Andy Whitcroft Mon, 03 Aug 2015 12:20:10 +0100 + +linux (4.2.0-1.1~rc1) wily; urgency=low + + [ Andy Whitcroft ] + + * Release Tracking Bug + - LP: #1479903 + * Initial upload of v4.2 based kernel (currently v4.-rc4) + + [ Upstream Kernel Changes ] + + * rebase to v4.2-rc4 + - LP: #1476987 + - LP: #1476888 + * rebase to v4.2-rc3 + * rebase to v4.2-rc2 + * rebase to v4.2-rc1 + - LP: #1394368 + - LP: #1427680 + - LP: #1462614 + - LP: #1397021 + + -- Andy Whitcroft Thu, 30 Jul 2015 18:42:46 +0100 + +linux (4.1.0-3.3) wily; urgency=low + + [ Andy Whitcroft ] + + * Release Tracking Bug + - LP: #1478897 + + [ Colin Ian King ] + + * SAUCE: KEYS: ensure we free the assoc array edit if edit is valid + - CVE-2015-1333 + + [ Seth Forshee ] + + * SAUCE: overlayfs: Enable user namespace mounts for the "overlay" fstype + - LP: #1478578 + + [ Upstream Kernel Changes ] + + * sched/stop_machine: Fix deadlock between multiple stop_two_cpus() + - LP: #1461620 + * x86/nmi: Enable nested do_nmi() handling for 64-bit kernels + * x86/nmi/64: Remove asm code that saves cr2 + * x86/nmi/64: Switch stacks on userspace NMI entry + * x86/nmi/64: Reorder nested NMI checks + * x86/nmi/64: Use DF to avoid userspace RSP confusing nested NMI + detection + + -- Andy Whitcroft Tue, 28 Jul 2015 11:59:03 +0100 + +linux (4.1.0-2.4) wily; urgency=low + + [ Andy Whitcroft ] + + * SAUCE: overlayfs: when copying up and reading directories ensure + mounter had permissions V2 + - CVE-2015-1328 + + [ Leann Ogasawara ] + + * Release Tracking Bug + - LP: #1465419 + + -- Leann Ogasawara Mon, 15 Jun 2015 14:09:22 -0700 + +linux (4.1.0-2.2) wily; urgency=low + + [ Tim Gardner ] + + * rebase to v4.1.3 + * [Config] Add i40e[vf] to d-i + - LP: #1476393 + + [ Upstream Kernel Changes ] + + * rebase to v4.1.3 + - LP: #1427680 + - LP: #1462614 + - LP: #1394368 + + -- Tim Gardner Wed, 22 Jul 2015 09:13:02 -0600 + +linux (4.1.0-1.1) wily; urgency=low + + [ Andy Whitcroft ] + + * SAUCE: overlay: add backwards compatible overlayfs format support V3 + - LP: #1395877, #1410480 + * SAUCE: overlayfs: when copying up and reading directories ensure + mounter had permissions V2 + - CVE-2015-1328 + * [Packaging] fix up Vcs-Git: to point to launchpad + * [Config] correct linux-initramfs-tool virtual linkage + - LP: #1474810 + + [ Chris J Arges ] + + * [Config] Add dm-service-time to multipath-modules + - LP: #1469240 + * [Config] Add MTD_POWERNV_FLASH and OPAL_PRD + - LP: #1464560 + + [ Jay Vosburgh ] + + * SAUCE: fan: Proof of concept implementation (v2) + - LP: #1439706 + * SAUCE: fan: tunnel multiple mapping mode (v3) + - LP: #1470091 + + [ Leann Ogasawara ] + + * Revert "SAUCE: ext4: disable ext4_punch_hole for indirect filesystems" + * Revert "SAUCE: intel_pstate: inform user that thermald is worth + considering" + * Revert "SAUCE: Work around broken ACPI backlight on Dell Inspiron 5537" + * Revert "SAUCE: dm-crypt: never use write same" + * Release Tracking Bug + - LP: #1476333 + + [ Tim Gardner ] + + * Rebase to v4.1 + - LP: #1443371 + * [Config] Enable Apparmor + * [Config] CONFIG_OVERLAY_FS_V1=y + * [Config] DEFAULT_IOSCHED="deadline" for ppc64el + - LP: #1469829 + * [Config] CONFIG_VM86=n + - LP: #1473447 + * [Config] ACORN_PARTITION=n + - LP: #1453117 + + [ Timo Aaltonen ] + + * [Config] Disable CONFIG_DRM_I915_PRELIMINARY_HW_SUPPORT + - LP: #1473319 + + [ Upstream Kernel Changes ] + + * efi: efivar_create_sysfs_entry() should return negative error codes + * efi: Add esrt support + * x86, doc: Remove cmdline_size from list of fields to be filled in for + EFI handover + * efi/esrt: Fix some compiler warnings + * efi: dmi: List SMBIOS3 table before SMBIOS table + * efi: Add 'systab' information to Documentation/ABI + * ALSA: hda - restore the MIC FIXUP for some Dell machines + - LP: #1473560 + * mtd: powernv: Add powernv flash MTD abstraction driver + - LP: #1464560 + * powerpc/powernv: Expose OPAL APIs required by PRD interface + - LP: #1464560 + * powerpc/powernv: Add opal-prd channel + - LP: #1464560 + * powerpc/powernv: fix construction of opal PRD messages + - LP: #1464560 + * powerpc/include: Add opal-prd to installed uapi headers + - LP: #1464560 + * powerpc/powernv: Fix vma page prot flags in opal-prd driver + - LP: #1464560 + + -- Leann Ogasawara Mon, 20 Jul 2015 10:16:06 -0700 + +linux (4.0.0-2.4) wily; urgency=low + + [ Andy Whitcroft ] + + * SAUCE: overlayfs: when copying up and reading directories ensure + mounter had permissions V2 + - CVE-2015-1328 + + [ Leann Ogasawara ] + + * Release Tracking Bug + - LP: #1465419 + + -- Leann Ogasawara Mon, 15 Jun 2015 14:09:22 -0700 + +linux (4.0.0-1.2) wily; urgency=low + + [ Andy Whitcroft ] + + * SAUCE: overlay: add backwards compatible overlayfs format support V3 + - LP: #1395877, #1410480 + * [Config] enable CONFIG_OVERLAY_FS_V1 + + [ Tai Nguyen ] + + * SAUCE: power: reset: Add syscon reboot device node for APM X-Gene platform + - LP: #1463211 + + [ Tim Gardner ] + + * [Config] CONFIG_HIBERNATION=n for ppc64el + - LP: #1463836 + + -- Tim Gardner Fri, 12 Jun 2015 06:11:53 -0600 + +linux (4.0.0-1.1) wily; urgency=low + + [ Leann Ogasawara ] + + * Revert "md/raid0: fix bug with chunksize not a power of 2." + - LP: #1457510 + * powerpc/powernv: Check image loaded or not before calling flash + - LP: #1461553 + + [ Tim Gardner ] + + * [Config] armhf: CPUFREQ_DT=y + - LP: #1457781 + + [ Upstream Kernel Changes ] + + * rebase to v4.0.5 + - LP: #1429756 + - LP: #1452175 + - LP: #1454656 + - LP: #1447909 + - LP: #1446517 + - LP: #1428947 + - LP: #1410704 + - LP: #1412800 + - LP: #1400215 + - LP: #1411193 + - LP: #1412800 + - LP: #1408295 + - LP: #1436745 + + -- Leann Ogasawara Tue, 09 Jun 2015 05:58:46 -0700 + +linux (3.19.0-10.10) vivid; urgency=low + + [ Andy Whitcroft ] + + * [Packaging] control -- make element ordering deterministic + * [Config] allow dracult to support initramfs as well + - LP: #1109029 + * [Packaging] generate live watchdog blacklists + - LP: #1432837 + + [ Leann Ogasawara ] + + * [Config] CONFIG_KVM_GENERIC_DIRTYLOG_READ_PROTECT=y + - LP: #1397860 + * rebase to v3.19.2 + + [ Upstream Kernel Changes ] + + * thinkpad_acpi: support new BIOS version string pattern + - LP: #1417915 + * arm64: Invalidate the TLB corresponding to intermediate page table + levels + - LP: #1432546 + * perf tools: Support parsing parameterized events + - LP: #1430341 + * perf tools: Extend format_alias() to include event parameters + - LP: #1430341 + * perf Documentation: Add event parameters + - LP: #1430341 + * perf tools: Document parameterized and symbolic events + - LP: #1430341 + * perf: provide sysfs_show for struct perf_pmu_events_attr + - LP: #1430341 + * perf: add PMU_EVENT_ATTR_STRING() helper + - LP: #1430341 + * perf: define EVENT_DEFINE_RANGE_FORMAT_LITE helper + - LP: #1430341 + * powerpc/perf/hv-24x7: parse catalog and populate sysfs with events + - LP: #1430341 + * powerpc/perf/{hv-gpci, hv-common}: generate requests with counters + annotated + - LP: #1430341 + * powerpc/perf/hv-gpci: add the remaining gpci requests + - LP: #1430341 + * powerpc/perf/hv-24x7: Document sysfs event description entries + - LP: #1430341 + * powerpc/iommu: Remove IOMMU device references via bus notifier + - LP: #1425202 + * powerpc/pseries: Fix endian problems with LE migration + - LP: #1428351 + * intel_idle: support additional Broadwell model + - LP: #1400970 + * tools/power turbostat: support additional Broadwell model + - LP: #1400970 + * KVM: x86: flush TLB when D bit is manually changed. + - LP: #1397860 + * Optimize TLB flush in kvm_mmu_slot_remove_write_access. + - LP: #1397860 + * KVM: Add generic support for dirty page logging + - LP: #1397860 + * KVM: x86: switch to kvm_get_dirty_log_protect + - LP: #1397860 + * KVM: Rename kvm_arch_mmu_write_protect_pt_masked to be more generic for + log dirty + - LP: #1397860 + * KVM: MMU: Add mmu help functions to support PML + - LP: #1397860 + * KVM: MMU: Explicitly set D-bit for writable spte. + - LP: #1397860 + * KVM: x86: Change parameter of kvm_mmu_slot_remove_write_access + - LP: #1397860 + * KVM: x86: Add new dirty logging kvm_x86_ops for PML + - LP: #1397860 + * KVM: VMX: Add PML support in VMX + - LP: #1397860 + * HID: multitouch: add support of clickpads + * HID: multitouch: Add support for button type usage + + [ Upstream Kernel Changes ] + + * rebase to v3.19.2 + - LP: #1428947 + + -- Andy Whitcroft Mon, 23 Mar 2015 15:28:16 +0000 + +linux (3.19.0-9.9) vivid; urgency=low + + [ Leann Ogasawara ] + + * Release Tracking Bug + - LP: #1430930 + + [ Shachar Raindel ] + + * SAUCE: IB/core: Prevent integer overflow in ib_umem_get address + arithmetic + - LP: #1413741 + - CVE-2014-8159 + + -- Leann Ogasawara Wed, 11 Mar 2015 10:29:17 -0700 + +linux (3.19.0-8.8) vivid; urgency=low + + [ Andy Whitcroft ] + + * ubuntu: vbox -- elide the new symlinks and reconstruct on clean: + - LP: #1426113 + * rebase to stable v3.19.1 + + [ John Johansen ] + + * SAUCE: (no-up): apparmor: fix mediation of fs unix sockets + - LP: #1408833 + + [ Leann Ogasawara ] + + * Release Tracking Bug + - LP: #1429940 + + [ Upstream Kernel Changes ] + + * xen: correct bug in p2m list initialization + * net/mlx5_core: Fix configuration of log_uar_page_sz + - LP: #1419938 + * tpm/ibmvtpm: Additional LE support for tpm_ibmvtpm_send + - LP: #1420575 + * net/mlx4_core: Maintain a persistent memory for mlx4 device + - LP: #1422481 + * net/mlx4_core: Set device configuration data to be persistent across + reset + - LP: #1422481 + * net/mlx4_core: Refactor the catas flow to work per device + - LP: #1422481 + * net/mlx4_core: Enhance the catas flow to support device reset + - LP: #1422481 + * net/mlx4_core: Activate reset flow upon fatal command cases + - LP: #1422481 + * net/mlx4_core: Manage interface state for Reset flow cases + - LP: #1422481 + * net/mlx4_core: Handle AER flow properly + - LP: #1422481 + * net/mlx4_core: Enable device recovery flow with SRIOV + - LP: #1422481 + * net/mlx4_core: Reset flow activation upon SRIOV fatal command cases + - LP: #1422481 + * tg3: Hold tp->lock before calling tg3_halt() from tg3_init_one() + - LP: #1428111 + * rebase to v3.19.1 + - LP: #1410704 + - LP: #1411193 + - LP: #1400215 + + -- Leann Ogasawara Mon, 09 Mar 2015 10:08:29 -0700 + +linux (3.19.0-7.7) vivid; urgency=low + + [ Andy Whitcroft ] + + * Release Tracking Bug + - LP: #1426013 + + [ Upstream Kernel Changes ] + + * x86/irq: Fix regression caused by commit b568b8601f05 + * cxl: Fix leaking interrupts if attach process fails + - LP: #1415102 + * cxl: Early return from cxl_handle_fault for a shut down context + - LP: #1415102 + * cxl: Disable AFU debug flag + - LP: #1415102 + * cxl: Disable SPAP register when freeing SPA + - LP: #1415102 + * cxl: remove redundant increment of hwirq + - LP: #1415102 + * cxl: Add tracepoints + - LP: #1415102 + * cxl: Update CXL ABI documentation + - LP: #1415102 + * cxl: Use image state defaults for reloading FPGA + - LP: #1415102 + * cxl: Add image control to sysfs + - LP: #1415102 + * cxl: Enable CAPP recovery + - LP: #1415102 + * cxl: Add ability to reset the card + - LP: #1415102 + * cxl: Fix device_node reference counting + - LP: #1415102 + * cxl: Export optional AFU configuration record in sysfs + - LP: #1415102 + * cxl: Fail AFU initialisation if an invalid configuration record is + found + - LP: #1415102 + * cxl: Add missing return statement after handling AFU errror + - LP: #1415102 + * powerpc/eeh: Introduce flag EEH_PE_REMOVED + - LP: #1415102 + * powerpc/eeh: Allow to set maximal frozen times + - LP: #1415102 + * HID: i2c-hid: Limit reads to wMaxInputLength bytes for input events + + -- Andy Whitcroft Thu, 26 Feb 2015 16:00:18 +0000 + +linux (3.19.0-6.6) vivid; urgency=low + + [ Andy Whitcroft ] + + * systemd -- fix hyper-v units to be non-forking + - LP: #1401525 + * [Config] move vbox modules into linux-image + * ubuntu: vbox -- update to 4.3.22-dfsg-1 + + [ Brad Figg ] + + * SAUCE: DEP8 test to run our regression tests + + [ Paolo Pisati ] + + * [Config] I2C_CHARDEV=y + - LP: #1417032 + + [ Upstream Kernel Changes ] + + * PCI: Fix infinite loop with ROM image of size 0 + * tpm: Fix NULL return in tpm_ibmvtpm_get_desired_dma + * Bluetooth: ath3k: workaround the compatibility issue with xHCI + controller + - LP: #1400215 + + -- Andy Whitcroft Thu, 19 Feb 2015 12:44:43 +0000 + +linux (3.19.0-5.5) vivid; urgency=low + + [ Andy Whitcroft ] + + * [Config] CONFIG_FA_DUMP=y + - LP: #1415562 + * ubuntu: (no-squash) vbox -- infrastructure and updater + * ubuntu: vbox -- update to 4.3.20-dfsg-1ubuntu1 + * rebase to v3.19 final + + [ Chris J Arges ] + + * [Config] Add ibmvfc to d-i + - LP: #1416001 + * SAUCE: ext4: disable ext4_punch_hole for indirect filesystems + - LP: #1292234 + + [ Upstream Kernel Changes ] + + * rebase to v3.19 + + -- Andy Whitcroft Mon, 09 Feb 2015 10:41:11 +0000 + +linux (3.19.0-4.4) vivid; urgency=low + + [ Andy Whitcroft ] + + * [Config] apply Kernel hacking >> Tracers config defaults + * hyper-v -- fix comment handing in /etc/network/interfaces + - LP: #1413020 + * rebase to v3.19-rc7 + * updateconfigs following rebase to v3.19-rc7 + + [ Ben Hutchings ] + + * SAUCE: rtsx_usb_ms: Use msleep_interruptible() in polling loop + - LP: #1413149 + + [ Upstream Kernel Changes ] + + * rebase to v3.19-rc7 + + -- Andy Whitcroft Mon, 02 Feb 2015 17:03:07 +0200 + +linux (3.19.0-3.3) vivid; urgency=low + + [ Andy Whitcroft ] + + * [Debian] arm64 -- build ubuntu drivers + - LP: #1411284 + * [Packaging] config-check -- add support for enforced annotations + * [Config] annotations -- switch to ENFORCED annotations + * [Packaging] config-check -- drop support for enforce file + * [Packaging] enforce -- drop empty enforce file + * rebase to v3.19-rc5 + * [Config] add modules removed due to tighter dependencies + * [Config] updateconfigs following rebase to v3.19-rc5 + * [Config] enforce CONFIG_FHANDLE=y + - LP: #1412543 + * [Packaging] hyper-v -- daemons now require -n for non-forking startup + - LP: #1408355 + * [Config] CONFIG_DEBUG_INFO_SPLIT=n + - LP: #1413646 + * [Config] apply Device Drivers >> Character devices >> IPMI top-level + message handler config defaults + * [Config] apply Device Drivers >> Character devices >> Serial drivers + config defaults + * [Config] apply Device Drivers >> GPIO Support config defaults + * [Config] apply Device Drivers >> Graphics support >> Direct Rendering + Manager >> Direct Rendering Manager (XFree86 4.1.0 and higher DRI + support) config defaults + * [Config] apply Device Drivers >> Graphics support >> Frame buffer + Devices >> Support for frame buffer devices config defaults + * [Config] apply Device Drivers >> HID support >> HID bus support >> + Special HID drivers config defaults + * [Config] apply Device Drivers >> Hardware Monitoring support config + defaults + * [Config] apply Device Drivers >> I2C support >> I2C support >> I2C + Hardware Bus support config defaults + * [Config] apply Device Drivers >> Industrial I/O support >> Analog to + digital converters config defaults + * [Config] apply Device Drivers >> Industrial I/O support >> Humidity + sensors config defaults + * [Config] apply Device Drivers >> Industrial I/O support >> Pressure + sensors config defaults + * [Config] apply Device Drivers >> Input device support >> Generic input + layer (needed for keyboard, mouse, ...) >> Mice config defaults + * [Config] apply Device Drivers >> Input device support >> Generic input + layer (needed for keyboard, mouse, ...) >> Touchscreens config defaults + * [Config] apply Device Drivers >> LED Support >> LED Class Support + config defaults + * [Config] apply Device Drivers >> MMC/SD/SDIO card support config + defaults + * [Config] apply Device Drivers >> Multifunction device drivers config + defaults + * [Config] apply Device Drivers >> Multimedia support >> Cameras/video + grabbers support >> Media test drivers config defaults + * [Config] apply Device Drivers >> Multimedia support >> Media PCI + Adapters config defaults + * [Config] apply Device Drivers >> Multimedia support >> Remote + Controller devices config defaults + * [Config] apply Device Drivers >> Network device support >> Distributed + Switch Architecture drivers config defaults + * [Config] apply Device Drivers >> Network device support >> Network core + driver support config defaults + * [Config] apply Device Drivers >> Network device support >> Wireless LAN + >> Hermes chipset 802.11b support (Orinoco/Prism2/Symbol) config + defaults + * [Config] apply Device Drivers >> Network device support >> Wireless LAN + >> Intel PRO/Wireless 2200BG and 2915ABG Network Connection config + defaults + * [Config] apply Device Drivers >> PHY Subsystem config defaults + * [Config] apply Device Drivers >> Pin controllers config defaults + * [Config] apply Device Drivers >> SPI support config defaults + * [Config] apply Device Drivers >> Sound card support >> Advanced Linux + Sound Architecture >> ALSA for SoC audio support config defaults + * [Config] apply Device Drivers >> Sound card support >> Advanced Linux + Sound Architecture >> FireWire sound devices config defaults + * [Config] apply Device Drivers >> Sound card support >> Advanced Linux + Sound Architecture >> HD-Audio config defaults + * [Config] apply Device Drivers >> Staging drivers >> Lustre file system + client support config defaults + * [Config] apply Device Drivers >> Staging drivers >> Media staging + drivers config defaults + * [Config] apply Device Drivers >> USB support >> USB Gadget Support >> + USB Gadget Drivers >> USB functions configurable through configfs + config defaults + * [Config] apply Device Drivers >> USB support >> USB Gadget Support >> + USB Peripheral Controller config defaults + * [Config] apply Networking support >> NFC subsystem support >> Near + Field Communication (NFC) devices config defaults + * [Config] apply Networking support >> Networking options >> Network + packet filtering framework (Netfilter) >> Core Netfilter Configuration + >> Netfilter nf_tables support config defaults + * [Config] apply Networking support >> Networking options >> QoS and/or + fair queueing >> Actions config defaults + * [Config] apply Networking support >> Networking options >> TCP/IP + networking config defaults + * [Config] apply Networking support >> Wireless >> Generic IEEE 802.11 + Networking Stack (mac80211) config defaults + * [Config] apply Device Drivers >> Input device support >> Generic input + layer (needed for keyboard, mouse, ...) >> Keyboards config defaults + * [Config] apply Device Drivers >> Input device support >> Generic input + layer (needed for keyboard, mouse, ...) >> Mice config defaults + * [Config] apply Device Drivers >> Pulse-Width Modulation (PWM) Support + config defaults + * [Config] apply Networking support >> Networking options >> Network + packet filtering framework (Netfilter) >> IP: Netfilter Configuration + >> IPv4 NAT config defaults + * [Config] apply Networking support >> Networking options >> Network + packet filtering framework (Netfilter) >> IPv6: Netfilter Configuration + >> IPv6 NAT config defaults + * [Config] apply Kernel hacking >> Kernel debugging config defaults + * [Config] apply General setup >> Timers subsystem >> Timer tick handling + config defaults + * SAUCE: arm64 -- psci tell the compiler which registers we are needing + values in + - LP: #1414002 + * [Config] apply Device Drivers >> Network device support >> Wireless LAN + >> Intel Wireless WiFi Next Gen AGN - Wireless-N/Advanced-N/Ultimate-N + (iwlwifi) config defaults + * [Config] apply Device Drivers >> Real Time Clock config defaults + * [Config] apply Device Drivers >> SCSI device support >> SCSI device + support >> SCSI low-level drivers config defaults + * [Config] apply General setup >> CPU/Task time and stats accounting >> + Cputime accounting config defaults + * [Config] apply Device Drivers >> Mailbox Hardware Support config + defaults + * rebase to v3.19-rc6 + * [Config] updateconfigs following rebase to v3.19-rc6 + + [ Kamal Mostafa ] + + * [Packaging] force "dpkg-source -I -i" behavior + + [ Leann Ogasawara ] + + * [Config] Disable CONFIG_USB_OTG + - LP: #1411295 + + [ Upstream Kernel Changes ] + + * overlay: add backwards compatible overlayfs format support (fixes) + - LP: #1410480 + + [ Upstream Kernel Changes ] + + * rebase to v3.19-rc5 + * rebase to v3.19-rc6 + + -- Andy Whitcroft Mon, 26 Jan 2015 11:37:39 +0000 + +linux (3.19.0-2.2) vivid; urgency=low + + [ Andy Whitcroft ] + + * rebase to v3.19-rc4 + * [Config] updateconfigs following rebase to v3.19-rc4 + * [Packaging] install all dtb files + - LP: #1408002 + * [Config] switch on "all" dtbs + - LP: #1408002 + + [ Colin Ian King ] + + * SAUCE: drivers/rtc/interface.c: ignore exprired times when enqueing new + timers + - LP: #1333569 + + [ Joseph Salisbury ] + + * [Config] Enable CONFIG_N_GSM as module. + - LP: #1404670 + + [ K. Y. Srinivasan ] + + * SAUCE: storvsc: force SPC-3 compliance on win8 and win8 r2 hosts + - LP: #1406867 + + [ Steve McIntyre ] + + * SAUCE: efi: Expose underlying UEFI firmware platform size to userland + - LP: #1409750 + + [ Upstream Kernel Changes ] + + * rebase to v3.19-rc4 + + -- Andy Whitcroft Tue, 13 Jan 2015 12:35:58 +0000 + +linux (3.19.0-1.1) vivid; urgency=low + + [ Andy Whitcroft ] + + * Revert "SAUCE: AUFS -- aufs3-standalone.patch" + * Revert "SAUCE: AUFS -- aufs3-mmap.patch" + * Revert "SAUCE: AUFS -- aufs3-base.patch" + * ubuntu: AUFS3 -- follow switch to vfs_fallocate + * rebase to v3.19-rc1 + * rebase to v3.19-rc2 + * [Config] defaultconfigs following rebase to v3.19-rc2 + * ubuntu: aufs3 -- follow rename of d_child + * ubuntu: aufs3 -- follow switch to d_splice_alias + * ubuntu: aufs3 -- follow switch to get_unused_fd_flags() + * ubuntu: aufs3 -- follow rename for d_alias + * apparmor -- follow change to this_cpu_ptr + * disable module checks for rebase + * ubuntu: AUFS -- substrate: aufs3-base.patch + * ubuntu: AUFS -- substrate: aufs3-mmap.patch + * ubuntu: AUFS -- substrate: aufs3-standalone.patch + * ubuntu: AUFS -- update to 92ad9cc8bd289bf8e59b6bd8d83137d8e1a58c1c + * [Configs] updateconfigs following aufs update + * v3.19 series start + * rebase to v3.19-rc3 + * [Configs] updateconfigs following rebase to v3.19-rc3 + * [Packaging] uploadnum should be the remainder of the version + - LP: #1407755 + * [Packaging] handle dts directories + - LP: #1408004 + * [Config] follow move of arm64 dts' into vendor directories + + [ Upstream Kernel Changes ] + + * arm64: optimized copy_to_user and copy_from_user assembly code + - LP: #1400349 + * iommu/ipmmu-vmsa: follow flag switch to IOMMU_NOEXEC + + [ Upstream Kernel Changes ] + + * rebase to v3.19-rc1 + - LP: #1173681 + * rebase to v3.19-rc2 + * rebase to v3.19-rc3 + + -- Andy Whitcroft Tue, 06 Jan 2015 14:30:02 +0000 + +linux (3.18.0-7.8) vivid; urgency=low + + [ Leann Ogasawara ] + + * Release Tracking Bug + - LP: #1401590 + + [ John Johansen ] + + * SAUCE: (no-up) apparmor: Sync to apparmor3 - RC1 snapshot + - LP: #1362199 + * SAUCE: Revert: fix: only allow a single threaded process to ... + - LP: #1371310 + * SAUCE: (no-up) fix: bad unix_addr_fs macro + - LP: #1390223 + * SAUCE: (no-up) apparmor: add parameter to control whether policy + hashing is used + - LP: #1383886 + * [config] set apparmor config options + + [ Seth Forshee ] + + * [Config] CONFIG_FW_LOADER_USER_HELPER_FALLBACK=n + - LP: #1398458 + + [ Upstream Kernel Changes ] + + * mfd: rtsx: Fix PM suspend for 5227 & 5249 + - LP: #1359052 + * mmc: sdhci-pci-o2micro: Fix Dell E5440 issue + - LP: #1346067 + + -- Leann Ogasawara Thu, 11 Dec 2014 08:36:36 -0800 + +linux (3.18.0-6.7) vivid; urgency=low + + [ Andy Whitcroft ] + + * Revert "SAUCE: (no-up) arm64: optimized copy_to_user and copy_from_user + assembly code" + - LP: #1398596 + * rebase to v3.18 + + [ Chris J Arges ] + + * [Config] CONFIG_PCIEASPM_DEBUG=y + - LP: #1398544 + + [ Paolo Pisati ] + + * [Config] armhf: VIRTIO_[BALLOON|MMIO]=y + - LP: #1396470 + + [ Upstream Kernel Changes ] + + * drivers:scsi:storvsc: Fix a bug in handling ring buffer failures that + may result in I/O freeze + - LP: #1400289 + + [ Upstream Kernel Changes ] + + * rebase to v3.18 + + -- Leann Ogasawara Mon, 08 Dec 2014 09:15:17 -0800 + +linux (3.18.0-5.6) vivid; urgency=low + + [ Leann Ogasawara ] + + * Release Tracking Bug + - LP: #1398109 + + [ Andy Whitcroft ] + + * [Config] CONFIG_SCSI_MQ_DEFAULT=n + - LP: #1397061 + * rebase to v3.18-rc7 + + [ Chris J Arges ] + + * [Config] CONFIG_SCOM_DEBUGFS=y for powerpc/powerpc64-smp + ppc64el/generic + - LP: #1395855 + + [ Upstream Kernel Changes ] + + * rebase to v3.18-rc7 + - LP: #1389497 + + -- Leann Ogasawara Mon, 01 Dec 2014 10:09:09 -0800 + +linux (3.18.0-4.5) vivid; urgency=low + + [ Leann Ogasawara ] + + * Release Tracking Bug + - LP: #1395891 + + [ Andy Whitcroft ] + + * rebase to v3.18-rc6 + * [Config] update configs following rebase to v3.18-rc6 + * [Config] enable overlayfs v1 support + + [ Tim Gardner ] + + * rebase to v3.18-rc5 + + [ Upstream Kernel Changes ] + + * overlay: add backwards compatible overlayfs format support + - LP: #1395877 + + [ Upstream Kernel Changes ] + + * rebase to v3.18-rc5 + * rebase to v3.18-rc6 + + -- Leann Ogasawara Mon, 24 Nov 2014 13:12:48 -0800 + +linux (3.18.0-3.4) vivid; urgency=low + + [ Andy Whitcroft ] + + * Revert "[Config] CONFIG_AUFS_FS=n for FTBS" + * Revert "SAUCE: AUFS -- update to + dcf336a754c86d5ee1c3d50699fd75c586d037cb" + * Revert "SAUCE: aufs3 -- (no-up) aufs3-standalone.patch" + * Revert "SAUCE: aufs3 -- (no-up) aufs3-base.patch" + * [Config] amd64 is now the indep architecture + * [Debian] basic hook support + * SAUCE: AUFS -- aufs3-base.patch + * SAUCE: AUFS -- aufs3-mmap.patch + * SAUCE: AUFS -- aufs3-standalone.patch + * ubuntu: AUFS -- update to 9d5c349d5c452170b8e813d86956f896a0aef170 + * [Config] updateconfigs following aufs3 update + * SAUCE: AUFS (no-squash): basic framework and update machinary -- part 2 + + [ dann frazier ] + + * [Config] Disable CONFIG_IPMI_SI_PROBE_DEFAULTS on armhf and arm64 + - LP: #1388952 + * [Config] disable CONFIG_ARM64_RANDOMIZE_TEXT_OFFSET + * [Config] Disable CONFIG_RCU_USER_QS on arm64 + + [ Tim Gardner ] + + * rebase to v3.18-rc4 + + [ Upstream Kernel Changes ] + + * rebase to v3.18-rc4 + - LP: #1389497 + - LP: #1387128 + + -- Andy Whitcroft Tue, 11 Nov 2014 17:16:13 +0000 + +linux (3.18.0-2.2) vivid; urgency=low + + [ Tim Gardner ] + + * SAUCE: nft_reject_bridge.c: Include net/ip6_checksum.h + + [ Upstream Kernel Changes ] + + * rebase to v3.18-rc3 + + -- Tim Gardner Mon, 03 Nov 2014 06:09:06 -0700 + +linux (3.18.0-1.1) vivid; urgency=low + + [ Andy Whitcroft ] + + * Revert "[Config] Switch kernel to vmlinuz (from vmlinux) on ppc64el" + * [Config] tools -- only build common tools when enabled + * [Config] follow rename of DEB_BUILD_PROFILES + * [Config] linux-image-extra is additive to linux-image + - LP: #1375310 + * [Config] linux-image-extra postrm is not needed on purge + * [Config] enable cloud tools on i386 + - LP: #1367399 + + [ Marc Dietrich ] + + * [Config] arm/tegra/d-i: framebuffer and usb support for Tegra SoCs + + [ Paolo Pisati ] + + * [Config] armhf: REGULATOR_TWL4030=y + * [Config] armhf: disable JUMP_LABEL + - LP: #1378856 + + [ Tim Gardner ] + + * rebase to v3.17-rc2 + * updateconfigs + * [Config] CONFIG_NFC_ST21NFCB=n + * [Config] Added net/6lowpan/* to generic inclusion list + * [Config] Add arm64 to enforcer CONFIG_CC_STACKPROTECTOR + * rebase to v3.17-rc3 + * rebase to v3.17-rc4 + * rebase to v3.17-rc5 + * [Config] armhf: USB_[E|O]HCI_EXYNOS=y + * [Config] CONFIG_XMON=y + - LP: #1365655 + * [Config] CONFIG_KVM_BOOK3S_64=m for ppc64el + - LP: #1362514 + * [Config] CONFIG_KVM_BOOK3S_64_HV=m + - LP: #1362514 + * [Config] CONFIG_DMA_CMA=n + - LP: #1362261 + * [Config] Add mpt3sas to d-i + - LP: #1368907 + * [Debian] set do_*_tools after stage1 or bootstrap is determined + - LP: #1370211 + * [Config] CONFIG_USB_OHCI_HCD_PCI=y + - LP: #1244176 + * rebase to v3.17-rc6 + * SAUCE: usbip: Update include path + * [Debian] usbip tools packaging + - LP: #898003 + * [Config] Enable usbip tools + - LP: #898003 + * [Config] CONFIG_CRASH_DUMP=n for powerpc-smp + - LP: #1363180 + * [Config] Correct annotation regarding CONFIG_DMA_CMA + - LP: #1362261 + * [Config] CONFIG_SND_HDA_INTEL=n for ppc64el + - LP: #1374438 + * [Config] CONFIG_HOTPLUG_PCI_SHPC=n for ppc64el + - LP: #1374440 + * [Debian] Don't fail if a symlink already exists + * rebase to v3.17-rc7 + * [Config] CONFIG_HOTPLUG_PCI_PCIE=n for ppc64el + - LP: #1374440 + * rebase to v3.17 + * rebase to v3.18-rc1 + * [Config] CONFIG_AUFS_FS=n for FTBS + * Enable vivid + * [Config] CONFIG_SOUND_OSS_CORE_PRECLAIM=n + - LP: #1385510 + * rebase to v3.18-rc2 + * [Debian] Fix linux-doc dangling symlinks + - LP: #661306 + * CONFIG_MODULE_COMPRESS=n + * [Config] dropped scsi_tgt from generic inclusion list + * [Config] Added drivers/uio to generic inclusion list + * [Config] CONFIG_PATA_MACIO=y + - LP: #1378894 + * [Config] CONFIG_DRM_BOCHS=n + * [Debian] install usbipd + - LP: #898003 + + [ Upstream Kernel Changes ] + + * rebase to v3.18-rc2 + + [ Upstream Kernel Changes ] + + * rebase to v3.18-rc1 + - LP: #1316518 + - LP: #1371591 + - LP: #1357928 + + [ Upstream Kernel Changes ] + + * rebase to v3.17 + + [ Upstream Kernel Changes ] + + * rebase to v3.17-rc7 + + [ Upstream Kernel Changes ] + + * rebase to v3.17-rc6 + + [ Upstream Kernel Changes ] + + * rebase to v3.17-rc5 + + [ Upstream Kernel Changes ] + + * rebase to v3.17-rc4 + + [ Upstream Kernel Changes ] + + * rebase to v3.17-rc3 + + [ Upstream Kernel Changes ] + + * rebase to v3.17-rc2 + - LP: #1358116 + - LP: #1350148 + - LP: #1334950 + - LP: #1329580 + - LP: #1329580 + - LP: #1329580 + + [ Upstream Kernel Changes ] + + * rebase to v3.17-rc2 + + -- Tim Gardner Tue, 26 Aug 2014 10:36:19 -0600 + +linux (3.17.0-0.0) utopic; urgency=medium + + * Empty entry + + -- Tim Gardner Tue, 26 Aug 2014 10:34:44 -0600 + +linux (3.16.0-11.16) utopic; urgency=low + + [ Mauricio Faria de Oliveira ] + + * [Config] Switch kernel to vmlinuz (from vmlinux) on ppc64el + - LP: #1358920 + + [ Peter Zijlstra ] + + * SAUCE: (no-up) mmu_notifier: add call_srcu and sync function for listener to delay call and sync + - LP: #1361300 + + [ Tim Gardner ] + + * [Config] CONFIG_ZPOOL=y + - LP: #1360428 + * Release Tracking Bug + - LP: #1361308 + + [ Upstream Kernel Changes ] + + * Revert "net/mlx4_en: Fix bad use of dev_id" + - LP: #1347012 + * net/mlx4_en: Reduce memory consumption on kdump kernel + - LP: #1347012 + * net/mlx4_en: Fix mac_hash database inconsistency + - LP: #1347012 + * net/mlx4_en: Disable blueflame using ethtool private flags + - LP: #1347012 + * net/mlx4_en: current_mac isn't updated in port up + - LP: #1347012 + * net/mlx4_core: Use low memory profile on kdump kernel + - LP: #1347012 + * Drivers: scsi: storvsc: Change the limits to reflect the values on the host + - LP: #1347169 + * Drivers: scsi: storvsc: Set cmd_per_lun to reflect value supported by the Host + - LP: #1347169 + * Drivers: scsi: storvsc: Filter commands based on the storage protocol version + - LP: #1347169 + * Drivers: scsi: storvsc: Fix a bug in handling VMBUS protocol version + - LP: #1347169 + * Drivers: scsi: storvsc: Implement a eh_timed_out handler + - LP: #1347169 + * drivers: scsi: storvsc: Set srb_flags in all cases + - LP: #1347169 + * drivers: scsi: storvsc: Correctly handle TEST_UNIT_READY failure + - LP: #1347169 + * namespaces: Use task_lock and not rcu to protect nsproxy + - LP: #1328088 + * net: xgene: Check negative return value of xgene_enet_get_ring_size() + * mm/zbud: change zbud_alloc size type to size_t + - LP: #1360428 + * mm/zpool: implement common zpool api to zbud/zsmalloc + - LP: #1360428 + * mm/zpool: zbud/zsmalloc implement zpool + - LP: #1360428 + * mm/zpool: update zswap to use zpool + - LP: #1360428 + * ideapad-laptop: Change Lenovo Yoga 2 series rfkill handling + - LP: #1341296 + * iommu/amd: Fix for pasid initialization + - LP: #1361300 + * iommu/amd: Moving PPR fault flags macros definitions + - LP: #1361300 + * iommu/amd: Drop oprofile dependency + - LP: #1361300 + * iommu/amd: Fix typo in amd_iommu_v2 driver + - LP: #1361300 + * iommu/amd: Don't call mmu_notifer_unregister in __unbind_pasid + - LP: #1361300 + * iommu/amd: Don't free pasid_state in mn_release path + - LP: #1361300 + * iommu/amd: Get rid of __unbind_pasid + - LP: #1361300 + * iommu/amd: Drop pasid_state reference in ppr_notifer error path + - LP: #1361300 + * iommu/amd: Add pasid_state->invalid flag + - LP: #1361300 + * iommu/amd: Don't hold a reference to mm_struct + - LP: #1361300 + * iommu/amd: Don't hold a reference to task_struct + - LP: #1361300 + * iommu/amd: Don't call the inv_ctx_cb when pasid is not set up + - LP: #1361300 + * iommu/amd: Don't set pasid_state->mm to NULL in unbind_pasid + - LP: #1361300 + * iommu/amd: Remove change_pte mmu_notifier call-back + - LP: #1361300 + * iommu/amd: Fix device_state reference counting + - LP: #1361300 + * iommu/amd: Fix 2 typos in comments + - LP: #1361300 + + -- Tim Gardner Fri, 22 Aug 2014 08:45:54 -0400 + +linux (3.16.0-10.15) utopic; urgency=low + + [ dann frazier ] + + * [debian] Fix regression with ABI subversions and backport + + [ Feng Kan ] + + * SAUCE: (no-up) irqchip:gic: change access of gicc_ctrl register to read + modify write. + - LP: #1357527 + * SAUCE: (no-up) arm64: optimized copy_to_user and copy_from_user + assembly code + - LP: #1358949 + + [ Stefan Bader ] + + * SAUCE: bcache: prevent crash on changing writeback_running + - LP: #1357295 + + [ Tim Gardner ] + + * [Config] CONFIG_XFRM_STATISTICS=y + * [Config] CONFIG_SECURITY_NETWORK_XFRM=y + * [Config] CONFIG_SENSORS_IBMPOWERNV=m + - LP: #1353005 + * Release Tracking Bug + - LP: #1359783 + + [ Upstream Kernel Changes ] + + * intel_idle: Broadwell support + - LP: #1256170 + * powerpc/book3s: Add basic infrastructure to handle HMI in Linux. + - LP: #1357108 + * powerpc/powernv: Invoke opal call to handle hmi. + - LP: #1357108 + * powerpc/book3s: handle HMIs for cpus in nap mode. + - LP: #1357108 + * powerpc/book3s: Fix endianess issue for HMI handling on napping cpus. + - LP: #1357108 + * powerpc: Add smp_mb() to arch_spin_is_locked() + - LP: #1358569 + * powerpc: Add smp_mb()s to arch_spin_unlock_wait() + - LP: #1358569 + * hwmon: (powerpc/powernv) hwmon driver for power, fan rpm, voltage and + temperature + - LP: #1353005 + * tools/testing/selftests/ptrace/peeksiginfo.c: add PAGE_SIZE definition + - LP: #1358855 + * printk: Add function to return log buffer address and size + - LP: #1359423 + * powerpc/powernv: Interface to register/unregister opal dump region + - LP: #1359423 + * bcache: fix crash on shutdown in passthrough mode + - LP: #1357295 + * bcache: fix uninterruptible sleep in writeback thread + - LP: #1357295 + + [ Vinayak Kale ] + + * SAUCE: (no-up) dt-bindings: Add Potenza PMU binding + - LP: #1357527 + * SAUCE: (no-up) arm64: dts: Add PMU node for APM X-Gene Storm SOC + - LP: #1357527 + + -- Tim Gardner Fri, 15 Aug 2014 12:34:33 -0600 + +linux (3.16.0-9.14) utopic; urgency=low + + [ Tim Gardner ] + + * Release Tracking Bug + - LP: #1357370 + + [ Serge Hallyn ] + + * SAUCE: Overlayfs: allow unprivileged mounts + - LP: #1357025 + + [ Upstream Kernel Changes ] + + * MAINTAINERS: Add entry for APM X-Gene SoC ethernet driver + * Documentation: dts: Add bindings for APM X-Gene SoC ethernet driver + * dts: Add bindings for APM X-Gene SoC ethernet driver + * drivers: net: Add APM X-Gene SoC ethernet driver support. + * powerpc/thp: Add write barrier after updating the valid bit + - LP: #1357014 + * powerpc/thp: Don't recompute vsid and ssize in loop on invalidate + - LP: #1357014 + * powerpc/thp: Invalidate old 64K based hash page mapping before insert + of 4k pte + - LP: #1357014 + * powerpc/thp: Handle combo pages in invalidate + - LP: #1357014 + * powerpc/thp: Invalidate with vpn in loop + - LP: #1357014 + * powerpc/thp: Use ACCESS_ONCE when loading pmdp + - LP: #1357014 + * powerpc/mm: Use read barrier when creating real_pte + - LP: #1357014 + * powerpc/thp: Add tracepoints to track hugepage invalidate + - LP: #1357014 + * rebase to v3.16.1 + + -- Tim Gardner Thu, 14 Aug 2014 08:18:02 -0400 + +linux (3.16.0-8.13) utopic; urgency=low + + [ Tim Gardner ] + + * Release Tracking Bug + - LP: #1356403 + + [ dann frazier ] + + * [debian] Allow for package revisions condusive for branching + + [ Upstream Kernel Changes ] + + * ahci_xgene: Fix the watermark threshold for the APM X-Gene SATA host controller driver. + - LP: #1350087 + * ahci_xgene: Use correct OOB tunning parameters for APM X-Gene SoC AHCI SATA Host controller driver. + - LP: #1350087 + * powerpc/powernv: Enable M64 aperatus for PHB3 + - LP: #1355469 + * powerpc: Fail remap_4k_pfn() if PFN doesn't fit inside PTE + - LP: #1352994 + * powerpc: Add machine_early_initcall() + - LP: #1352640 + * powerpc/powernv: Switch powernv drivers to use machine_xxx_initcall() + - LP: #1352640 + * powerpc/eeh: Avoid event on passed PE + - LP: #1352640 + * powerpc/eeh: EEH support for VFIO PCI device + - LP: #1352640 + * powerpc/eeh: sysfs entries lost + - LP: #1352640 + * powerpc/powernv: Fix IOMMU table for VFIO dev + - LP: #1352640 + * powerpc/eeh: Fetch IOMMU table in reliable way + - LP: #1352640 + * powerpc/eeh: Refactor EEH flag accessors + - LP: #1352640 + * powerpc/eeh: Selectively enable IO for error log + - LP: #1352640 + * powerpc/eeh: Reduce lines of log dump + - LP: #1352640 + * powerpc/eeh: Replace pr_warning() with pr_warn() + - LP: #1352640 + * powerpc/eeh: Make diag-data not endian dependent + - LP: #1352640 + * powerpc/eeh: Aux PE data for error log + - LP: #1352640 + * PCI: Support BAR sizes up to 128GB + - LP: #1352640 + * powerpc/powernv: Allow to freeze PE + - LP: #1352640 + * powerpc/powernv: Split ioda_eeh_get_state() + - LP: #1352640 + * powerpc/powernv: Handle compound PE + - LP: #1352640 + * powerpc/powernv: Handle compound PE for EEH + - LP: #1352640 + * powerpc/powernv: Handle compound PE in config accessors + - LP: #1352640 + * mnt: Only change user settable mount flags in remount + - LP: #1356318 + - CVE-2014-5206 + * mnt: Move the test for MNT_LOCK_READONLY from change_mount_flags into do_remount + - LP: #1356318 + - CVE-2014-5206 + * mnt: Correct permission checks in do_remount + - LP: #1356323 + - CVE-2014-5207 + * mnt: Change the default remount atime from relatime to the existing value + - LP: #1356323 + - CVE-2014-5207 + + -- Tim Gardner Sun, 10 Aug 2014 09:10:51 -0600 + +linux (3.16.0-7.12) utopic; urgency=low + + [ Andy Whitcroft ] + + * rebase to v3.16 final + * [Config] d-i -- add virtio_scsi to virtio-modules + - LP: #1342000 + + [ dann frazier ] + + * [Packaging] Fix 'printchanges' to work with versions containing '+' + + [ Tim Gardner ] + + * [Config] CONFIG_MICROCODE=y + - LP: #1084373 + * [Config] CONFIG_CONTEXT_TRACKING_FORCE=n + - LP: #1349028 + * [Config] Add hv_balloon to d-i virtio-modules + - LP: #1292216 + * Release Tracking Bug + - LP: #1354530 + + [ Upstream Kernel Changes ] + + * rebase to v3.16 + + -- Tim Gardner Tue, 29 Jul 2014 09:55:15 -0400 + +linux (3.16.0-6.11) utopic; urgency=low + + [ Paolo Pisati ] + + * [Config] armhf: MXS_DMA=y && MTD_NAND_GPMI_NAND=m + * [Config] armhf: KEYBOARD_IMX=m + * [Config] armhf: build cubox & imx6 DTBs + * [Config] armhf: RTC_DRV_PCF8523=y + + [ Tim Gardner ] + + * [Config] CONFIG_KEYS_DEBUG_PROC_KEYS=y + - LP: #1344405 + * [Config] CONFIG_SCSI_IPR_TRACE=y, CONFIG_SCSI_IPR_DUMP=y + - LP: #1343109 + * Release Tracking Bug + - LP: #1349196 + + [ Upstream Kernel Changes ] + + * rebase to v3.16-rc7 + + -- Tim Gardner Thu, 24 Jul 2014 09:08:55 -0400 + +linux (3.16.0-5.10) utopic; urgency=low + + [ Tim Gardner ] + + * Release Tracking Bug + - LP: #1346298 + * [Config] CONFIG_GPIO_SYSFS=y + - LP: #1342153 + * rebase to v3.16-rc6 + + [ Paolo Pisati ] + + * [Config] enable ARCH_MVEBU* + * [Config] AHCI_MVEBU=m + * [Config] ARMADA_THERMAL=y + * [Config] ARM_ARMADA_370_XP_CPUIDLE=y + * [Config] CRYPTO_DEV_MV_CESA=m + * [Config] I2C_MV64XXX=m + * [Config] MMC_MVSDIO=m + * [Config] MMC_SDHCI_DOVE=m + * [Config] MTD_NAND_ORION=m + * [Config] MTD_NAND_PXA3xx=m + * [Config] MVNETA=m + * [Config] MV_XOR=y + * [Config] ORION_WATCHDOG=m + * [Config] PCI_MVEBU=y + * [Config] RTC_DRV_MV=y + * [Config] SND_KIRKWOOD_SOC*=m + * [Config] SPI_ORION=m + * [Config] USB_XHCI_MVEBU=m + * [Config] armhf: build all Armada and Dove DTBs + * [Config] armhf: SERIAL_8250_DW=y + + [ Upstream Kernel Changes ] + + * rebase to v3.16-rc6 + + -- Tim Gardner Tue, 15 Jul 2014 07:49:42 -0400 + +linux (3.16.0-4.9) utopic; urgency=low + + [ Tim Gardner ] + + * Release Tracking Bug + - LP: #1341543 + + [ Upstream Kernel Changes ] + + * rebase to v3.16-rc5 + + -- Tim Gardner Sun, 13 Jul 2014 21:30:27 -0400 + +linux (3.16.0-3.8) utopic; urgency=low + + [ Tim Gardner ] + + * Release Tracking Bug + - LP: #1340091 + + -- Tim Gardner Thu, 10 Jul 2014 10:06:47 +0100 + +linux (3.16.0-2.7) utopic; urgency=low + + [ Andy Whitcroft ] + + * ubuntu: aufs3 -- avoid aufs3-mmap.patch include hell for arm64 + ubuntu: aufs3 -- (no-up) aufs3-mmap.patch + + -- Tim Gardner Wed, 09 Jul 2014 16:16:28 +0100 + +linux (3.16.0-2.6) utopic; urgency=low + + [ Andy Whitcroft ] + + * Revert "ubuntu: aufs3 -- (no-up) aufs3-mmap.patch" + Fixes FTBS. + + -- Tim Gardner Tue, 08 Jul 2014 17:29:26 +0100 + +linux (3.16.0-2.5) utopic; urgency=low + + [ Andy Whitcroft ] + + * ubuntu -- fix basic format for ubuntu/Makefile + * ubuntu: AUFS (no-squash): basic framework and update machinary + * ubuntu: aufs3 -- update update scripting + * ubuntu: aufs3 -- (no-up) aufs3-base.patch + * ubuntu: aufs3 -- (no-up) aufs3-mmap.patch + * ubuntu: aufs3 -- (no-up) aufs3-standalone.patch + * ubuntu: AUFS -- update to dcf336a754c86d5ee1c3d50699fd75c586d037cb + * [Configs] AUFS configs + * ubuntu: aufs3 -- reenable + + [ Tim Gardner ] + + * CONFIG_LATENCYTOP=n + + -- Tim Gardner Tue, 08 Jul 2014 15:27:35 +0100 + +linux (3.16.0-2.4) utopic; urgency=low + + [ Andy Whitcroft ] + + * [Config] flip VIRTIO*=y + * [Config] commonise CONFIG_SWIOTLB=y + * [Config] apply Bus options (PCI etc.) >> PCI support config defaults + * [Config] apply Device Drivers >> ATA/ATAPI/MFM/RLL support (DEPRECATED) + config defaults + * [Config] apply Device Drivers >> Block devices config defaults + * [Config] apply Device Drivers >> Character devices config defaults + * [Config] apply Device Drivers >> DMA Engine support config defaults + * [Config] apply Device Drivers >> EDAC (Error Detection And Correction) + reporting config defaults + * [Config] apply Device Drivers >> Graphics support >> Direct Rendering + Manager >> Direct Rendering Manager (XFree86 4.1.0 and higher DRI + support) config defaults + * [Config] apply Device Drivers >> GPIO Support config defaults + * [Config] apply Device Drivers >> Graphics support >> Console display + driver support config defaults + * [Config] apply Device Drivers >> IIO staging drivers >> Accelerometers + config defaults + * [Config] apply Device Drivers >> IOMMU Hardware Support config defaults + * [Config] apply Device Drivers >> Input device support >> Generic input + layer (needed for keyboard, mouse, ...) >> Miscellaneous devices config + defaults + * [Config] apply Device Drivers >> Input device support >> Hardware I/O + ports config defaults + * [Config] apply Device Drivers >> LED Support >> LED Class Support + config defaults + * [Config] apply Device Drivers >> Hardware Spinlock drivers config + defaults + * [Config] apply Device Drivers >> Multimedia support >> Cameras/video + grabbers support config defaults + * [Config] apply Security options config defaults + * [Config] apply Networking options >> Network packet filtering framework + (Netfilter) >> Core Netfilter Configuration config defaults + * [Config] apply Device Drivers >> MMC/SD/SDIO card support config + defaults + * [Config] apply Device Drivers >> Graphics support >> Frame buffer + Devices >> Support for frame buffer devices config defaults + * [Config] apply Power management and ACPI options >> CPU Frequency + scaling config defaults + * [Config] apply Processor type and features config defaults + * [Config] apply Partition Types config defaults + * [Config] apply Power management and ACPI options config defaults + * [Config] apply Device Drivers >> InfiniBand support config defaults + * [Config] apply Device Drivers >> Misc devices config defaults + * [Config] apply Device Drivers >> Multifunction device drivers config + defaults + * [Config] apply Device Drivers >> SCSI device support >> SCSI device + support >> SCSI low-level drivers config defaults + * [Config] apply Device Drivers >> Network device support >> Ethernet + driver support config defaults + * [Config] apply Device Drivers >> Network device support >> Network core + driver support config defaults + * [Config] apply Device Drivers >> Network device support >> PHY Device + support and infrastructure config defaults + * [Config] apply File systems >> Network File Systems config defaults + * [Config] apply Device Drivers >> Input device support >> Generic input + layer (needed for keyboard, mouse, ...) >> Touchscreens config defaults + * [Config] apply Device Drivers >> Memory Technology Device (MTD) support + >> NAND Device Support config defaults + * [Config] apply Device Drivers >> Network device support >> Wireless LAN + >> Ralink driver support config defaults + * [Config] apply Device Drivers >> Staging drivers config defaults + * [Config] apply Cryptographic API >> Hardware crypto devices config + defaults + * [Config] apply Device Drivers >> Macintosh device drivers config + defaults + * [Config] apply Device Drivers >> Network device support >> Wireless LAN + config defaults + * [Config] apply Device Drivers >> PPS support config defaults + * [Config] apply Device Drivers >> Sound card support config defaults + * [Config] apply Networking support >> RF switch subsystem support config + defaults + * [Config] apply Library routines config defaults + * [Config] apply Device Drivers >> CODEC drivers config defaults + * [Config] apply Device Drivers >> PHY Subsystem config defaults + * [Config] apply Device Drivers >> Pulse-Width Modulation (PWM) Support + config defaults + * [Config] apply Kernel hacking >> Tracers config defaults + * [Config] apply Kernel hacking >> Runtime Testing config defaults + * [Config] apply Kernel hacking >> Architecture: powerpc config defaults + * [Config] apply Device Drivers >> USB support config defaults + * [Config] apply Device Drivers >> Power supply class support config + defaults + * [Config] apply Device Drivers >> USB Network Adapters config defaults + * [Config] apply General setup >> IRQ subsystem config defaults + * [Config] apply General setup config defaults + * [Config] apply File systems >> Miscellaneous filesystems config + defaults + * [Config] apply File systems config defaults + * [Config] apply Device Drivers >> Userspace I/O drivers config defaults + * [Config] apply Device Drivers >> Virtio drivers config defaults + * [Config] apply Device Drivers >> USB Peripheral Controller config + defaults + * [Config] apply Device Drivers >> SCSI device support >> SCSI device + support >> SCSI Transports config defaults + * [Config] apply Device Drivers >> Real Time Clock config defaults + * [Config] apply Device Drivers >> Serial ATA and Parallel ATA drivers + (libata) config defaults + * [Config] apply Device Drivers >> SoC Audio for Freescale CPUs config + defaults + * [Config] apply Device Drivers >> Voltage and Current Regulator Support + config defaults + * [Config] apply Device Drivers >> USB Physical Layer drivers config + defaults + * [Config] apply Device Drivers >> Watchdog Timer Support config defaults + * [Config] powerpc-powerpc-e500mc FTBFS -- CONFIG_CRASH_DUMP=n + * [Config] powerpc-powerpc64-emb FTBFS -- CONFIG_IMA=n + * [Config] powerpc-powerpc64-emb FTBFS -- CONFIG_HIBERNATION=n + CONFIG_HOTPLUG_CPU=n + * [Config] ppc64el-generic FTBFS -- CONFIG_LUSTRE_FS=n + * [Config] drivers/message/fusion needs scsi_transport_spi in virtual + * [Config] drivers/acpi/acpi_ipmi.ko needs + drivers/char/ipmi/ipmi_msghandler.ko in virtual + * [Config] armhf-* FTBFS -- CONFIG_STACK_TRACER=n + CONFIG_FUNCTION_TRACER=n + * [Config] ignore modules changing following major config changes + + [ Tim Gardner ] + + * rebase to v3.16-rc4 + + [ Upstream Kernel Changes ] + + * rebase to v3.16-rc4 + - LP: #1297581 + + -- Andy Whitcroft Thu, 03 Jul 2014 11:00:43 +0100 + +linux (3.16.0-1.3) utopic; urgency=low + + [ Andy Whitcroft ] + + * Revert "Disable do_tools_perf for FTBS" + * SAUCE: fix perf_regs definitions for arm64 + + [ Paolo Pisati ] + + * [Config] armhf: ARCH_EXYNOS5* support + * [Config] armhf: CPU_IDLE=y and ARM_EXYNOS_CPUIDLE=y + * [Config] armhf: EXYNOS_THERMAL=y + * [Config] armhf: EXYNOS_IOMMU=y + * [Config] armhf: EXYNOS_ADC=m + * [Config] armhf: EXYNOS_I2C_EXYNOS5=m + * [Config] armhf: MMC_SDHCI_S3C=m + * [Config] armhf: PCI_EXYNOS=y + * [Config] armhf: PHY_EXYNOS5250_SATA=y + * [Config] armhf: USB_[E|O]HCI_EXYNOS=y && SAMSUNG_USBPHY=y + * [Config] armhf: PWM_SAMSUNG=m + * [Config] armhf: RTC_DRV_S3C=y + * [Config] armhf: S3C2410_WATCHDOG=m + * [Config] armhf: MMC_DW_EXYNOS=m + * [Config] armhf: SERIAL_SAMSUNG=y + * [Config] armhf: SND_SOC_SAMSUNG=m + * [Config] armhf: SPI_S3C64XX=m + * [Config] armhf: EXYNOS_VIDEO=y and VIDEO_SAMSUNG*=m + * [Config] armhf: FB_S3C=m + * [Config] armhf: build all Exynos 5 DTBs + * [Config] armhf: disable CPUFREQ_EXYNOS + + [ Tim Gardner ] + + * rebase to v3.16-rc3 + + [ Upstream Kernel Changes ] + + * rebase to v3.16-rc3 + - LP: #1331915 + + -- Tim Gardner Tue, 24 Jun 2014 08:58:09 -0600 + +linux (3.16.0-0.2) utopic; urgency=low + + [ Tim Gardner ] + + * Revert "SAUCE: intel_pstate -- toggle default to disable" + - LP: #1333322 + * CONFIG_BOOKE_WDT=y + * Disable do_tools_perf for FTBS (just until I can figure it out) + + -- Tim Gardner Mon, 23 Jun 2014 13:37:53 -0600 + +linux (3.16.0-0.1) utopic; urgency=low + + [ Tim Gardner ] + + * Release Tracking Bug + - LP: #1333265 + + [ Andy Whitcroft ] + + * [Config] cloud-tools -- add systemd units + - LP: #1329027 + + [ dann frazier ] + + * [Config] CONFIG_RTC_DRV_XGENE=y for arm64 + * [Config] CONFIG_NET_XGENE=m for arm64 + * [Config] Restrict CONFIG_POWER_RESET_SYSCON to arm64 only + + [ Feng Kan ] + + * SAUCE: (no-up) arm64: dts: Add X-Gene reboot driver dts node + * SAUCE: (no-up) Add documentation for generic SYSCON reboot driver. + * SAUCE: (no-up) Select reboot driver for X-Gene platform. + + [ Iyappan Subramanian ] + + * SAUCE: (no-up) MAINTAINERS: Add entry for APM X-Gene SoC ethernet driver + * SAUCE: (no-up) Documentation: dts: Add bindings for APM X-Gene SoC ethernet driver + * SAUCE: (no-up) dts: Add bindings for APM X-Gene SoC ethernet driver + * SAUCE: (no-up) drivers: net: Add APM X-Gene SoC ethernet driver support. + + [ Tim Gardner ] + + * updateconfigs + * Fix arm64 crypto Makefile + * [Config] CONFIG_BOOKE_WDT=n for FTBS + * [Debian] Add UTS_UBUNTU_RELEASE_ABI to utsrelease.h + - LP: #1327619 + * Disabled powerpc64-emb for FTBS + * [Config] CONFIG_DRM_TEGRA=m + * [Config] CONFIG_CMA_SIZE_MBYTES=64 + * rebase to v3.16-rc2 + * Clean up generic.inclusion-list warnings + + [ Upstream Kernel Changes ] + + * rebase to v3.16-rc2 + - LP: #1328587 + - LP: #1319291 + - LP: #1310512 + - LP: #1310512 + - LP: #1305480 + + -- Tim Gardner Thu, 12 Jun 2014 12:26:09 +0000 + +linux (3.15.0-6.11) utopic; urgency=low + + [ Adam Conrad ] + + * Enable building the sata-modules udeb on ppc64el. + - LP: #1323980 + * [Packaging] Set bootloader and loader on ppc64el to grub + + [ Adam Lee ] + + * SAUCE: (no-up) rtlwifi: rtl8723be: disable MSI interrupts mode + - LP: #1310512, #1320070 + + [ Alex Hung ] + + * SAUCE: (no-up) dell-led: add mic mute led interface + - LP: #1308297 + + [ Andy Whitcroft ] + + * [Config] d-i -- add hyperv_keyboard to serial-modules udeb + - LP: #1285434 + * [Config] tools -- enable cpupower on ppc64el + * [Config] ppc64el -- enable perf tools + * [Config] powerpc -- enable perf tools + * [Config] ppc64el -- reduce MAX_ORDER with 64k pages + * [Config] arm64 -- enable tools + - LP: #1326050 + * [Config] switch hyper-keyboard to virtual + - LP: #1325306 + * [Config] fix up Breaks/Replaces on linux-cloud-tools-common to fix + upgrades + * SAUCE: kvm: BIOS disabled kvm support should be a warning + - LP: #1300247 + * SAUCE: nouveau: missing outputs should be warnings + - LP: #1300244 + * [Config] d-i -- add nvme devices to block-modules udeb + - LP: #1303710 + + [ Anton Blanchard ] + + * SAUCE: (no-up) powerpc: 64bit sendfile is capped at 2GB + - LP: #1328230 + + [ Colin Ian King ] + + * SAUCE: intel_pstate: inform user that thermald is worth considering + + [ Dave Chiluk ] + + * [Config] Enable CONFIG_IP_VS_IPV6=y + - LP: #1300739 + + [ Paolo Pisati ] + + * [Config] build vexpress a9 dtb + - LP: #1303657 + + [ Tetsuo Handa ] + + * SAUCE: kthread: Do not leave kthread_create() immediately upon SIGKILL. + + [ Tim Gardner ] + + * Release Tracking Bug + - LP: #1329045 + * [Debian] Treat vdso install as an environment variable + - LP: #1325713 + * [Config] Treat vdso install as an environment variable + - LP: #1325713 + * [config] Set IPMI suppoort default to "y" + * [Config] powerpc -- CONFIG_SCSI_IBMVSCSI=y + * [Config] CONFIG_RT_GROUP_SCHED=n + - LP: #1284731 + * [Config] ppc64el -- switch to 64K system pages + * [Config] CONFIG_MICROCODE_EARLY=y + * [Config] SND_DAVINCI_SOC && SND_AM33XX_SOC_EVM =m + * [Config] armhf: DRM_TILCDC=m + * SAUCE: (no-up) mei_me: Add module parameter to disable MSI + * [Config] arm64: KVM=y + * [Config] armhf: LEDS_TRIGGER_HEARTBEAT=y + * [Config] armhf: generic: disable CPU_IDLE + * [Config] armhf: CPU_FREQ=y + * [Config] Add new mlx modules to d-i + * [Config] Added Muti-Arch support for linux-headers-PKGVER-ABINUM, linux-tools-common, and linux-cloud-tools-common + - LP: #1295112 + * [Config] CONFIG_EXYNOS_ADC=n, CONFIG_HW_RANDOM_EXYNOS=n, CONFIG_MMC_DW_EXYNOS=n, CONFIG_USB_DWC3_EXYNOS=n + - LP: #1294353 + * [Config] CONFIG_ABX500_CORE=y for ppc64el + * [Config] CONFIG_ALX=m for powerpc + * [Config] CONFIG_ACENIC_OMIT_TIGON_I=n for ppc64el + * [Config] CONFIG_ACORN_PARTITION_*=n for ppc64el + * [Config] CONFIG_ANDROID=n for powerpc + * [Config] CONFIG_ASYNC_RAID6_TEST=m for ppc64el + * [Config] CONFIG_BIG_KEYS=y for ppc64el + * [Config] CONFIG_BSD_PROCESS_ACCT=y for ppc64el + * rebase to v3.15 + * [Config] CONFIG_PHY_XGENE=y + * [Config] CONFIG_MLX4_DEBUG=y + - LP: #1328256 + * [Config] CONFIG_POWERNV_CPUFREQ=y for powerpc, ppc64el + - LP: #1324571 + * [Config] CONFIG_BLK_DEV_SR_VENDOR=n for ppc64el + * [Config] CONFIG_CFG80211=m for ppc64el + * [Config] CONFIG_CHARGER_BQ24190=m for powerpc + * [Config] CONFIG_CHARGER_BQ24735=m for powerpc + * [Config] CONFIG_EXPERT=y for ppc64el + * [Config] CONFIG_ATA_SFF=y on ppc64el + * [Config] CONFIG_ATA_GENERIC=y for ppc64el, powerpc + * [Config] CONFIG_CHR_DEV_ST=m for ppc64el + * [Config] CONFIG_CHECKPOINT_RESTORE=y for ppc64el + * [Config] CONFIG_CHELSIO_T1_1G=y for ppc64el + * [Config] CONFIG_CHR_DEV_OSST=m for ppc64el + * [Config] CONFIG_CHR_DEV_SCH=m for ppc64el + * [Config] CONFIG_CPU_FREQ_STAT=y for powerpc + * [Config] CONFIG_DDR=y for ppc64el + * [Config] CONFIG_DEBUG_BUGVERBOSE=y for powerpc + * [Config] CONFIG_E100=m, CONFIG_E1000=m, CONFIG_E1000E=m for ppc64el + * [Config] CONFIG_EZX_PCAP=n for all arches + * [Config] CONFIG_DYNAMIC_DEBUG=y for powerpc + * [Config] CONFIG_ENABLE_MUST_CHECK=n for ppc64el + * [Config] CONFIG_ENABLE_WARN_DEPRECATED=n for ppc64el + * [Config] CONFIG_FB_3DFX=m for all arches + * [Config] CONFIG_FB_MATROX=m for ppc64el + * [Config] CONFIG_FB_RADEON=m for ppc64el + * [Config] CONFIG_FB_SAVAGE_I2C=y for all arches + * [Config] CONFIG_FIREWIRE=m for ppc64el + * [Config] CONFIG_FTR_FIXUP_SELFTEST=n for ppc64el + * [Config] CONFIG_HAMRADIO=y for ppc64el + * [Config] CONFIG_I2C_CHARDEV=m for ppc64el + * [Config] CONFIG_I2C_MUX=m for ppc64el + * [Config] CONFIG_I2C_STUB=m for ppc64el + * [Config] CONFIG_I2O=m for ppc64el + * [Config] CONFIG_INET_XFRM_MODE_BEET=m, CONFIG_INET_XFRM_MODE_TRANSPORT=m, CONFIG_INET_XFRM_MODE_TUNNEL=m for ppc64el + * [Config] CONFIG_INFINIBAND_IPOIB_DEBUG=n, CONFIG_INFINIBAND_MTHCA_DEBUG=n for ppc64el + * [Config] CONFIG_INFINIBAND_NES=m, CONFIG_INFINIBAND_OCRDMA=m, CONFIG_INFINIBAND_QIB=m for ppc64el + * [Config] CONFIG_INPUT_FF_MEMLESS=m for ppc64el + * [Config] CONFIG_INTERVAL_TREE_TEST=m for ppc64el + * [Config] CONFIG_IPACK_BUS=m for ppc64el + * [Config] CONFIG_ISDN=y for ppc64el + * [Config] CONFIG_ISO9660_FS=m for ppc64el + * [Config] CONFIG_KGDB=y for ppc64el + * [Config] CONFIG_KVM_GUEST=y for ppc64el + * [Config] CONFIG_L2TP_V3=y for powerpc + * [Config] CONFIG_MAILBOX=y for ppc64el + * [Config] CONFIG_MD_LINEAR=m, CONFIG_MD_RAID0=m, CONFIG_MD_RAID1=m for ppc64el + * [Config] CONFIG_MEDIA_SUPPORT=m for ppc64el + * [Config] CONFIG_MEMORY=y for ppc64el + * [Config] CONFIG_MEMSTICK=m for ppc64el + * [Config] CONFIG_MFD_SM501_GPIO=n for ppc64el + * [Config] CONFIG_MMC_BLOCK=m for ppc64el + * [Config] CONFIG_MOUSE_PS2=m for ppc64el + * [Config] CONFIG_NET_9P=m for ppc64el + * [Config] CONFIG_MSDOS_FS=m for ppc64el + * [Config] CONFIG_MSI_BITMAP_SELFTEST=n for ppc64el + * [Config] CONFIG_MTD=m for arm64 + * [Config] CONFIG_NETCONSOLE=m for ppc64el + * [Config] CONFIG_NETFILTER_XT_TARGET_NOTRACK=m for ppc64el + * [Config] CONFIG_NET_IPIP=m for ppc64el + * [Config] CONFIG_NET_TEAM=m for all arches + * [Config] CONFIG_NFC=m for ppc64el + * [Config] CONFIG_NL80211_TESTMODE=n for all arches + * [Config] CONFIG_NLS_CODEPAGE_437=y for powerpc + * [Config] CONFIG_NLS_ASCII=m, CONFIG_NLS_ISO8859_1=m, CONFIG_NLS_UTF8=m for ppc64el + * [Config] CONFIG_NOP_USB_XCEIV=m for ppc64el + * [Config] CONFIG_NOTIFIER_ERROR_INJECTION=m for ppc64el + * [Config] CONFIG_OPROFILE=m for ppc64el + * [Config] CONFIG_PARPORT_1284=y for ppc64el + * [Config] CONFIG_PARPORT_AX88796=m, CONFIG_PARPORT_PC_FIFO=y, CONFIG_PARPORT_SERIAL=m for ppc64el + * [Config] CONFIG_8723AU_P2P=n + * [Config] CONFIG_PCI_IOV=y, CONFIG_PCI_PASID=y, CONFIG_PCI_PRI=y, CONFIG_PCI_REALLOC_ENABLE_AUTO=y, CONFIG_PCI_STUB=m for ppc64el + * [Config] CONFIG_PCNET32=m for ppc64el + * [Config] CONFIG_SCSI_DH_EMC=m for ppc64el + * [Config] CONFIG_SCSI_DH_HP_SW=m for ppc64el + * [Config] CONFIG_SCSI_FC_ATTRS=m for ppc64el + * [Config] CONFIG_SCSI_IPR=m for ppc64el + * [Config] CONFIG_SCSI_LOGGING=y for ppc64el + * [Config] CONFIG_SCSI_OSD_INITIATOR=m for ppc64el + * [Config] CONFIG_SCSI_SCAN_ASYNC=y for ppc64el + * [Config] CONFIG_SCSI_SYM53C8XX_2=m for ppc64el + * [Config] CONFIG_XILINX_LL_TEMAC=m for powerpc + * [Config] CONFIG_WQ_POWER_EFFICIENT_DEFAULT=y for ppc64el + * [Config] CONFIG_WLAN=y for arm64 + * [Config] CONFIG_VORTEX=m for ppc64el + * [Config] CONFIG_WIMAX=m for ppc64el + * [Config] CONFIG_WATCHDOG=y for ppc64el + * [Config] CONFIG_VIRT_DRIVERS=y for ppc64el + * [Config] CONFIG_VERSION_SIGNATURE="" for powerpc64-emb + * [Config] CONFIG_UWB=m for ppc64el + * [Config] CONFIG_USB_STORAGE=y + * [Config] CONFIG_SATA_AHCI_PLATFORM=y for armhf + * [Config] CONFIG_HID_RMI=m + * [Config] CONFIG_HVC_DCC=n + - LP: #1303657 + + [ Upstream Kernel Changes ] + + * mm/numa: Remove BUG_ON() in __handle_mm_fault() + - LP: #1323165 + * powerpc/powernv: Add calls to support little endian host + - LP: #1327400 + * HID: rmi: introduce RMI driver for Synaptics touchpads + * HID: rmi: do not stop the device at the end of probe + * HID: rmi: check for the existence of some optional queries before reading query 12 + * HID: rmi: do not fetch more than 16 bytes in a query + * HID: rmi: fix wrong struct field name + * HID: rmi: fix masks for x and w_x data + * HID: rmi: do not handle touchscreens through hid-rmi + * ALSA: pcm: 'BUG:' message unnecessarily triggers kerneloops + - LP: #1305480 + * rebase to v3.15 + + -- Tim Gardner Tue, 03 Jun 2014 17:02:49 +0000 + +linux (3.15.0-5.10) utopic; urgency=low + + [ Tim Gardner ] + + * Release Tracking Bug + - LP: #1325596 + * [Config] CONFIG_POWERNV_CPUFREQ=y for ppc64el + * rebase to v3.15-rc8 + + [ Upstream Kernel Changes ] + + * rebase to v3.15-rc8 + + -- Tim Gardner Mon, 02 Jun 2014 12:59:34 +0000 + +linux (3.15.0-4.9) utopic; urgency=low + + * no change rebuild to fix embeded debhelper. + + -- Andy Whitcroft Thu, 29 May 2014 12:41:58 +0100 + +linux (3.15.0-4.8) utopic; urgency=low + + [ Andy Whitcroft ] + + * Release Tracking Bug + - LP: #1324107 + * [Config] enable SECURITY_APPARMOR_UNCONFINED_INIT + + [ Javier Martinez Canillas ] + + * SAUCE: (no-up) apparmor: fix bug that constantly spam the console + - LP: #1323526 + + [ John Johansen ] + + * SAUCE: (no-up) apparmor: Sync to apparmor3 - alpha6 snapshot + - LP: #1323528 + * SAUCE: (no-up) apparmor: fix apparmor spams log with warning message + - LP: #1308761 + * SAUCE: (no-up) apparmor: fix refcount bug in apparmor pivotroot + - LP: #1308765 + * SAUCE: (no-up): apparmor: fix apparmor refcount bug in apparmor_kill + - LP: #1308764 + * SAUCE: (no-up): apparmor: use custom write_is_locked macro + - LP: #1323530 + + [ Kamal Mostafa ] + + * [Config] add debian/gbp.conf + + [ Tim Gardner ] + + * [Config] CONFIG_SATA_AHCI=m for ppc64el + - LP: #1323980 + + -- Andy Whitcroft Wed, 28 May 2014 12:47:17 +0100 + +linux (3.15.0-3.7) utopic; urgency=low + + [ Tim Gardner ] + + * Release Tracking Bug + - LP: #1323189 + + [ Andy Whitcroft ] + + * [Config] autopkgtest -- need fakeroot for tests + + [ Upstream Kernel Changes ] + + * rebase to v3.15-rc7 + + -- Tim Gardner Mon, 26 May 2014 08:12:50 +0200 + +linux (3.15.0-2.6) utopic; urgency=low + + [ Andy Whitcroft ] + + * [Config] remove the kernel-image firmware list on clean + + [ Martin Pitt ] + + * [Config] autopkgtest -- switch to significantly faster rebuild + + [ Stefan Bader ] + + * [Config]: Add missing modules to inclusion list + + [ Tim Gardner ] + + * [debian] Dynamically generate the kernel-image udebs firmware list + * [d-i] firmware/kernel-image is generated + * rebase to v3.15-rc6 + * Release Tracking Bug + - LP: #1322251 + + [ Upstream Kernel Changes ] + + * rebase to v3.15-rc6 + - LP: #1297581 + + -- Tim Gardner Wed, 21 May 2014 10:51:29 -0700 + +linux (3.15.0-1.5) utopic; urgency=low + + [ Tim Gardner ] + + * [Config] Add apm-mustang.dtb to kernel-image udeb + + -- Tim Gardner Mon, 19 May 2014 14:47:42 -0700 + +linux (3.15.0-1.4) utopic; urgency=low + + [ Andy Whitcroft ] + + * Revert "SAUCE: (no-up) hv -- bodge hv_vss_daemon so it can use the + local linux/hyperv.h" + * Revert "SAUCE: (no-up) hv -- bodge hv_kvp_daemon so it can use the + local linux/hyperv.h" + * [Packaging] tools -- hv tools build correctly against the built headers + * [Packaging] cloud-tools -- add the hv_fcopy_daemon to the package + * cloud-tools -- pull in init scripts for Hyper-V daemons + * cloud-tools -- detect Hyper-V VM to avoid starting + * cloud-tools -- update IF_NAME to DEVICE in hv_* scripts + - LP: #1295401 + * [Config] cloud-tools: reenable cloud-tools + + -- Andy Whitcroft Sun, 18 May 2014 19:21:04 +0100 + +linux (3.15.0-1.3) utopic; urgency=low + + [ Andy Whitcroft ] + + * [Packaging] ppc64el is a powerpc kernel arch and needs its quirks + - LP: #1318848 + + [ Ben Collins ] + + * [Config] Switch to grub-ieee1275 as recommended on book3e systems + - LP: #1318629 + + [ Tim Gardner ] + + * [Config] CONFIG_FSL_PAMU=n + - LP: #1311738 + * Release Tracking Bug + - LP: #1320239 + + -- Tim Gardner Fri, 16 May 2014 07:37:07 -0600 + +linux (3.15.0-1.2) utopic; urgency=low + + [ Tim Gardner ] + + * Release Tracking Bug + - LP: #1318171 + * Add rpcsec_gss_krb5 to generic inclusion list + - LP: #769527 + * rebase to v3.15-rc5 + + [ Upstream Kernel Changes ] + + * rebase to v3.15-rc5 + - LP: #1297581 + + -- Tim Gardner Tue, 06 May 2014 15:20:10 -0500 + +linux (3.15.0-0.1) utopic; urgency=low + + [ Upstream Kernel Changes ] + + * rebase to v3.15-rc4 + - LP: #1297581 + - LP: #1297581 + - LP: #1305133 + - LP: #1297581 + - LP: #1297581 + - LP: #871808 + - LP: #1260303 + - LP: #1268468 + - LP: #1248116 + - LP: #1211920 + - LP: #1259790 + - LP: #1259437 + - LP: #1259435 + - LP: #1268468 + + -- Tim Gardner Fri, 07 Feb 2014 09:35:13 -0700 + +linux (3.15.0-0.0) utopic; urgency=low + + * Initial version for 3.15. + + -- Andy Whitcroft Fri, 02 May 2014 15:06:39 +0100 + +linux (3.13.0-8.27) trusty; urgency=low + + [ John Johansen ] + + * SAUCE: Add config option to disable new apparmor 3 semantics + -LP: #1270215 + + [ Tim Gardner ] + + * [debian] Fix indep_hdrs_pkg_name + - LP: #1134441 + * Update lttng to 00808267d3ba7cdcddfed7bec7e62a40463c1307 Version 2.4.0-rc3 + * Enabled lttng build + * Don't build lttng for armhf + lttng hates gcc-4.8 for armhf + * Release Tracking Bug + - LP: #1277309 + + [ Upstream Kernel Changes ] + + * rebase to v3.13.2 + - LP: #1260303 + - LP: #1260303 + - LP: #1268468 + + -- Tim Gardner Thu, 06 Feb 2014 09:25:51 -0700 + +linux (3.13.0-7.26) trusty; urgency=low + + [ John Johansen ] + + * SAUCE: apparmor: fix uninitialized lsm_audit membe + - LP: #1268727 + * Add config option to optionally enable new apparmor 3 semantics + + [ Tim Gardner ] + + * [Config] Add lowlatency to getabis + * [Config] CONFIG_SECURITY_APPARMOR_AA3_SEMANTICS=y + - LP: #1270215 + * Release Tracking Bug + - LP: #1276810 + + [ Upstream Kernel Changes ] + + * x86, x32: Correct invalid use of user timespec in the kernel + - LP: #1274349 + - CVE-2014-0038 + + -- Tim Gardner Wed, 05 Feb 2014 15:49:44 -0500 + +linux (3.13.0-7.25) trusty; urgency=low + + [ Andy Whitcroft ] + + * Revert "SAUCE: fix fmd headers" + * SAUCE: fix fmd headers + + -- Andy Whitcroft Tue, 04 Feb 2014 09:36:09 +0000 + +linux (3.13.0-7.24) trusty; urgency=low + + [ Stefan Bader ] + + * [Config] Make vmwgfx driver enable the framebuffer device + + [ Tim Gardner ] + + * rebase to v3.13.1 + * [Config] CONFIG_NFS_FS=m for ppc64el + * [Config] CONFIG_X86_SYSFB=n + https://lists.ubuntu.com/archives/kernel-team/2014-February/038166.html + * Release Tracking Bug + - LP: #1275898 + + [ Upstream Kernel Changes ] + + * i2c: piix4: Add support for AMD ML and CZ SMBus changes + - LP: #1272525 + * i2c: piix4: Use different message for AMD Auxiliary SMBus Controller + - LP: #1272525 + * mm: ignore VM_SOFTDIRTY on VMA merging + - LP: #1274917 + * drm/radeon: disable dpm on BTC + - LP: #1266984 + + [ Upstream Kernel Changes ] + + * rebase to v3.13.1 + + -- Tim Gardner Thu, 30 Jan 2014 15:24:48 +0000 + +linux (3.13.0-6.23) trusty; urgency=low + + [ Andy Whitcroft ] + + * [Config] fix up architecture for linux-tools + + -- Andy Whitcroft Thu, 30 Jan 2014 09:00:41 +0000 + +linux (3.13.0-6.22) trusty; urgency=low + + [ Andy Whitcroft ] + + * [Packaging] limit linux-udebs- to matching arch + * [Config] powerpc -- disable perf to fix FTBFS + * [Config] ppc64el -- fix up missing udebs + + -- Andy Whitcroft Wed, 29 Jan 2014 16:00:28 +0000 + +linux (3.13.0-6.21) trusty; urgency=low + + [ Andy Fleming ] + + * SAUCE: net: Add support for handling queueing in hardware + * SAUCE: of_mdio: Add of_phy_attach function + * SAUCE: phylib: Add generic 10G driver + * SAUCE: phylib: Support attaching to gen10g_driver + * SAUCE: phylib: Add Clause 45 read/write functions + + [ Andy Whitcroft ] + + * SAUCE: fix fmd headers + * [Packaging] lowlatency -- merge out of tree flavours + * SAUCE: allow IRQs to be irq-threaded by default via config + * [Config]: enable CONFIG_IRQ_FORCED_THREADING_DEFAULT for lowlatency + * [Config] powerpc -- fix up Build-depends: + * Release Tracking Bug + - LP: #1273747 + + [ Ben Collins ] + + * SAUCE: PPC: PCI: Fix pcibios_io_space_offset() so it works for 32-bit + ptr/64-bit rsrcs + * SAUCE: Revert "phy: vitesse make vsc824x_add_skew static" + * SAUCE: Fixup freescale usb phy driver to work on ppc64 + * SAUCE: xgmac_mdio: Silence read errors + * SAUCE: Provide booke stub for kvmppc_is_bigendian() + * SAUCE: Fix stack overflow on ppc32 + * SAUCE: Use resource_size_t instead of long for PCI resource address + * SAUCE: net/phy: Export function for use by dpaa_eth + * [Packaging] powerpc -- merge out of tree powerpc arch + + [ Bjorn Helgaas ] + + * SAUCE: Revert "EISA: Log device resources in dmesg" + - LP: #1251816 + * SAUCE: Revert "EISA: Initialize device before its resources" + - LP: #1251816 + + [ Emil Medve ] + + * SAUCE: phylib: Minimum hack to get the generic 10G PHY driver to work + with 10G "fixed-link"s + + [ Kumar Gala ] + + * SAUCE: fsl_qbman: Add drivers for Freescale DPAA Qman & Bman + * SAUCE: fsl_pme2: Add support for DPAA PME + * SAUCE: fmd: FMD14 integration + * SAUCE: dpaa_eth: Ethernet driver for Freescale QorIQ DPA Architecture + * SAUCE: powerpc/85xx: Add DPAA/networking support for CoreNet + + [ Madalin Bucur ] + + * SAUCE: net/flow: remove sleeping and deferral mechanism from + flow_cache_flush + * SAUCE: net/phy: abort genphy_read_status when link changes during speed + and duplex reading + + [ Stefan Bader ] + + * [Config] move some VMWare related modules into main package + - LP: #1271669 + + [ Tim Gardner ] + + * [Config] Add r815x to nic-modules + - LP: #1273735 + * [Config] CONFIG_FRAMEBUFFER_CONSOLE_ROTATION=y + - LP: #239479 + + [ Upstream Kernel Changes ] + + * mmc: sdhci-pci: break out definitions to header file + - LP: #1239938 + * mmc: sdhci-pci: add support of O2Micro/BayHubTech SD hosts + - LP: #1239938 + * powerpc/book3e: rename interrupt_end_book3e with __end_interrupts + * powerpc/book3e: support CONFIG_RELOCATABLE + * book3e/kexec/kdump: enable kexec for kernel + * book3e/kexec/kdump: create a 1:1 TLB mapping + * book3e/kexec/kdump: introduce a kexec kernel flag + * book3e/kexec/kdump: implement ppc64 kexec specfic + * book3e/kexec/kdump: redefine VIRT_PHYS_OFFSET + * book3e/kexec/kdump: recover "r4 = 0" to create the initial TLB + + -- Andy Whitcroft Tue, 28 Jan 2014 22:59:46 +0000 + +linux (3.13.0-5.20) trusty; urgency=low + + [ Andy Whitcroft ] + + * [Packaging] tools -- do not make symlinks when not making packages + * [Packaging] tools -- tidy up control.stub.in ordering + * [Packaging] tools -- tools-common is shared and not conditional + * rebase to v3.13 + + [ Dirk Brandewie ] + + * SAUCE: intel_pstate: Add setting voltage value for baytrail P states. + + [ KY Srinivasan ] + + * SAUCE: Drivers: hv: vmbus: Specify the target CPU that should receive + notification + + [ Upstream Kernel Changes ] + + * rebase to v3.13 + - LP: #1270603 + + -- Andy Whitcroft Fri, 17 Jan 2014 15:45:31 +0000 + +linux (3.13.0-4.19) trusty; urgency=low + + [ Andy Whitcroft ] + + * [Config] libunwind8-dev is now available for ppc64el + * [Packaging] tools -- make cpupower optional + * [Packaging] tools -- enable correctly for x86 + + [ Tim Gardner ] + + * Release Tracking Bug + - LP: #1269872 + + [ Upstream Kernel Changes ] + + * SAUCE: ARM: OMAP: hwmod: Add SYSC offsets for AES IP + * SAUCE: ARM: OMAP4: hwmod: Add hwmod data for AES IP + * SAUCE: OMAP: AM33xx: hwmod: Correct AES module SYSC type + * SAUCE: crypto: omap-aes: add error check for pm_runtime_get_sync + + [ Upstream Kernel Changes ] + + * rebase to 85ce70fdf48aa290b4845311c2dd815d7f8d1fa5 + + -- Tim Gardner Wed, 15 Jan 2014 13:23:05 +0000 + +linux (3.13.0-3.18) trusty; urgency=low + + [ Andy Whitcroft ] + + * rebase to v3.13-rc8 + * [Packaging] efi -- allow EFI signatures on any arch + + [ Tim Gardner ] + + * [Config] Fix vcs-git path + * Release Tracking Bug + - LP: #1268683 + + [ Upstream Kernel Changes ] + + * rebase to v3.13-rc8 + + -- Andy Whitcroft Sun, 12 Jan 2014 11:58:01 +0000 + +linux (3.13.0-2.17) trusty; urgency=low + + [ Andy Whitcroft ] + + * Release Tracking Bug + - LP: #1267809 + * [Config] apply Platform support>>CPUIdle driver>>CPU Idle config + defaults + * [Config] apply Platform support>>CPU Frequency scaling config defaults + * [Config] CONFIG_PARIDE_EPATC8=y + * [Config] apply Device Drivers >> Broadcom specific AMBA config defaults + * [Config] apply Bus options >> PCI support >> RapidIO support >> RapidIO + Switch drivers config defaults + * [Config] apply Cryptographic API config defaults + * [Config] apply Device Drivers >> Common Clock Framework config defaults + * [Config] apply Device Drivers >> Distributed Switch Architecture + drivers config defaults + * [Config] apply Device Drivers >> Graphics support >> Backlight & LCD + device support config defaults + * [Config] apply Device Drivers >> Graphics support >> Support for frame + buffer devices >> Bootup logo config defaults + * annotations -- update in tree annotations + * [Config] apply Bus options >> PCI support >> RapidIO support config + defaults + * [Config] CONFIG_POWER_AVS=y CONFIG_RESET_CONTROLLER=y + * [Config] apply Device Drivers >> 1-wire Bus Masters config defaults + * [Config] apply CAN Device Drivers >> Platform CAN drivers with Netlink + support config defaults + * [Config] apply Device Drivers >> Character devices >> Serial drivers + config defaults + * [Config] apply Device Drivers >> Generic Thermal sysfs driver config + defaults + * [Config] apply Device Drivers >> Character devices >> TPM Hardware + Support config defaults + * [Config] apply Device Drivers >> Character devices config defaults + * [Config] apply Device Drivers >> HID support >> USB HID support >> USB + HID transport layer config defaults + * [Config] apply Device Drivers >> HID support >> HID bus support config + defaults + * [Config] apply Device Drivers >> HID support >> USB HID support config + defaults + * annotations -- update in tree annotations + * [Config] apply Device Drivers >> GPIO Support config defaults + * [Config] update configs for apparmour update + + [ John Johansen ] + + * SAUCE: (no-up) apparmor: Sync to apparmor 3 - alpha 4 snapshot + * SAUCE: apparmor: fix unix domain sockets to be mediated on connection + - LP: #1208988 + * SAUCE: apparmor: allocate path lookup buffers during init + - LP: #1208988 + * SAUCE: (no-up) apparmor: Fix tasks not subject to, reloaded policy + - LP: #1236455 + + [ Tim Gardner ] + + * Revert "[Debian] getabis: Preface module with package name" + * [Config] Added ppc64el to getabis + * [packaging] Bump ABI for every new release + + -- Andy Whitcroft Fri, 10 Jan 2014 11:48:39 +0000 + +linux (3.13.0-1.16) trusty; urgency=low + + * First 3.13 upload. + * Release tracker + - LP: #1266852 + + -- Tim Gardner Tue, 07 Jan 2014 09:21:26 -0700 + +linux (3.13.0-0.15) trusty; urgency=low + + [ Tim Gardner ] + + * rebase to v3.13-rc7 + + [ Upstream Kernel Changes ] + + * rebase to v3.13-rc7 + + -- Tim Gardner Sun, 05 Jan 2014 06:13:33 -0700 + +linux (3.13.0-0.14) trusty; urgency=low + + [ Andy Whitcroft ] + + * rebase to 7a262d2ed9fa42fad8c4f243f8025580b58cf2f6 + + [ Tim Gardner ] + + * Remove ubuntu/dm-raid4-5 in favor of CONFIG_MD_RAID456 + * Update lttng to Version 2.4.0-rc2 + * lttng: Disabled trace_kvm_async_pf_completed + * [Config] CONFIG_IMA=y + - LP: #1244627 + + [ Upstream Kernel Changes ] + + * rebase to 7a262d2ed9fa42fad8c4f243f8025580b58cf2f6 + + -- Tim Gardner Thu, 02 Jan 2014 12:57:13 -0700 + +linux (3.13.0-0.13) trusty; urgency=low + + [ Andy Whitcroft ] + + * ubuntu: aufs3 -- (no-up) aufs3-base.patch + * ubuntu: aufs3 -- (no-up) aufs3-mmap.patch + * ubuntu: aufs3 -- (no-up) aufs3-standalone.patch + * ubuntu: AUFS (no-squash): basic framework and update machinary + * ubuntu: AUFS -- update to 7b136a27b021da9010d8b6c101939dd298e46be7 + * ubuntu: aufs3 -- enable + * ubuntu: aufs3 -- update configs + + -- Andy Whitcroft Thu, 02 Jan 2014 09:41:02 +0000 + +linux (3.13.0-0.12) trusty; urgency=low + + [ Upstream Kernel Changes ] + + * rebase to v3.13-rc6 + + -- Tim Gardner Tue, 31 Dec 2013 06:16:03 -0700 + +linux (3.13.0-0.11) trusty; urgency=low + + [ Andy Whitcroft ] + + * SAUCE: suspicious unlocked ->status reading and writing in ipc/sem.c + * [Config] ppc64el -- initial defconfig based -generic flavour + * [Config] initial defconfig for ppc64el + * [Config] ubuntuise ppc64el config + * [Config] ubuntuise ppc64el config part 2 + * [Config] d-i -- update empty udebs list + * [Config] ppc64el -- split extras package + + [ Anton Blanchard ] + + * SAUCE: KVM: PPC: Book3S HV: Add little-endian guest support + + [ Benjamin Herrenschmidt ] + + * SAUCE: powerpc/powernv: Add calls to support little endian + + [ Cédric Le Goater ] + + * SAUCE: KVM: PPC: Book3S: add helper routine to load guest instructions + * SAUCE: KVM: PPC: Book3S: add helper routines to detect endian order + * SAUCE: KVM: PPC: Book3S: MMIO emulation support for little endian + guests + + [ Paul E. McKenney ] + + * SAUCE: powerpc: Make 64-bit non-VMX copy_tofrom_user() bi-endian + + -- Andy Whitcroft Fri, 27 Dec 2013 16:48:55 +0000 + +linux (3.13.0-0.10) trusty; urgency=low + + [ Andy Whitcroft ] + + * rebase to v3.13-rc5 + * [Config] updateconfigs following rebase to v3.13-rc5 + + [ Upstream Kernel Changes ] + + * rebase to v3.13-rc5 + - LP: #1260303 + - LP: #1260303 + - LP: #1260225 + + -- Andy Whitcroft Mon, 23 Dec 2013 12:48:28 +0000 + +linux (3.13.0-0.9) trusty; urgency=low + + [ Andy Whitcroft ] + + * [Config] d-i -- allow missing firmware + + -- Andy Whitcroft Fri, 20 Dec 2013 17:57:06 +0000 + +linux (3.13.0-0.8) trusty; urgency=low + + [ Andy Whitcroft ] + + * [Config] annotations -- first pass over entire config + * [Config] drop libunwind8-dev from Build-Depends for ppc64el + + [ Tim Gardner ] + + * [Config] Add arm64 device tree files + - LP: #1262901 + + -- Andy Whitcroft Thu, 19 Dec 2013 18:36:43 +0000 + +linux (3.13.0-0.7) trusty; urgency=low + + [ Rajesh B Prathipati ] + + * SAUCE: powerpc: Make unaligned accesses endian-safe for powerpc + + [ Tim Gardner ] + + * [Config] CONFIG_REGULATOR_S2MPS11=n for FTBS + + [ Upstream Kernel Changes ] + + * rebase to v3.13-rc4 + - LP: #1259790 + - LP: #1259437 + - LP: #1259435 + + -- Tim Gardner Fri, 13 Dec 2013 07:56:34 -0700 + +linux (3.13.0-0.6) trusty; urgency=low + + [ Paolo Pisati ] + + * [Config] armhf: arm64: VIRTIO_[BLK|MMIO|NET|CONSOLE|BALLOON]=y + * [Config] i386: amd64: VIRTIO_CONSOLE=y + + [ Tim Gardner ] + + * [Config] CONFIG_TRANSPARENT_HUGEPAGE_ALWAYS=y + + -- Tim Gardner Sun, 08 Dec 2013 09:22:01 -0700 + +linux (3.13.0-0.5) trusty; urgency=low + + [ Andy Whitcroft ] + + * correct bug listing for v3.13-rc2 rebase + * [Config] ppc64el -- create linux-libc-dev + * [Debian] Improve tools version message + - LP: #1257715 + + [ Serge Hallyn ] + + * SAUCE: fork: Allow CLONE_PARENT after setns(CLONE_NEWPID)] + - LP: #1248590 + * SAUCE: vfs: Fix a regression in mounting proc + + [ Tim Gardner ] + + * [Config] Build-in ohci-pci + - LP: #1244176 + * Rebase to v3.13-rc3 + + [ Upstream Kernel Changes ] + + * Revert "Revert "fork: unify and tighten up CLONE_NEWUSER/CLONE_NEWPID + checks"" + - LP: #1248590 + + [ Upstream Kernel Changes ] + + * rebase to v3.13-rc3 + - LP: #1256840 + - LP: #1256212 + + -- Tim Gardner Sat, 07 Dec 2013 07:55:39 -0700 + +linux (3.13.0-0.4) trusty; urgency=low + + [ Tim Gardner ] + + * Rebase to v3.13-rc2 + + [ Upstream Kernel Changes ] + + * rebase to v3.13-rc2 + + -- Tim Gardner Fri, 29 Nov 2013 23:54:05 -0500 + +linux (3.13.0-0.3) trusty; urgency=low + + [ Andy Whitcroft ] + + * Revert "SAUCE: Fix DocBook FTBS" + + [ Tim Gardner ] + + * [Debian] Re-sign modules after debug objcopy + - LP: #1253155 + * [Config] CONFIG_EXT4_USE_FOR_EXT23=y + + [ Upstream Kernel Changes ] + + * doc: fix generation of device-drivers + * rebase to b975dc3689fc6a3718ad288ce080924f9cb7e176 + + -- Tim Gardner Tue, 26 Nov 2013 12:24:42 -0700 + +linux (3.13.0-0.2) trusty; urgency=low + + [ Tim Gardner ] + + * SAUCE: Fix DocBook FTBS + + -- Tim Gardner Mon, 25 Nov 2013 13:24:15 -0700 + +linux (3.13.0-0.1) trusty; urgency=low + + [ Upstream Kernel Changes ] + + * rebase to 7e3528c3660a2e8602abc7858b0994d611f74bc3 + + -- Tim Gardner Tue, 12 Nov 2013 07:28:53 -0700 + +linux (3.13.0-0.0) trusty; urgency=low + + * Major release bump. + + -- Andy Whitcroft Tue, 12 Nov 2013 21:37:52 +0000 + +linux (3.12.0-2.7) trusty; urgency=low + + * Fixed armhf ABI build failure. + * Release tracker + - LP: #1249477 + + -- Tim Gardner Fri, 08 Nov 2013 16:22:45 -0700 + +linux (3.12.0-2.6) trusty; urgency=low + + [ Joseph Salisbury ] + + * SAUCE: tg3: Add support for new 57786 device id. + - LP: #1242610 + + [ Tim Gardner ] + + * [Config] CONFIG_OABI_COMPAT=n + * [Config] add the wandboard to shipped dtb + - LP: #1249421 + * Release tracker + - LP: #1249477 + + -- Tim Gardner Fri, 08 Nov 2013 12:23:18 -0700 + +linux (3.12.0-2.5) trusty; urgency=low + + [ Andy Whitcroft ] + + * rebase to mainline v3.12 + * [Config] updateconfigs following rebase to v3.12 + * postinst -- improve relative symlink detection with missing files + - LP: #1248053 + * postinst -- fix unchanged link detection + * [Config] update configs following addition of apparmor fixes + + [ Anthony Wong ] + + * SAUCE: Work around broken ACPI backlight on Dell Inspiron 5537 + - LP: #1231305 + + [ John Johansen ] + + * SAUCE: (no-up) apparmor: Sync to apparmor 3 - alpha 4 snapshot + * SAUCE: apparmor: fix unix domain sockets to be mediated on connection + - LP: #1208988 + * SAUCE: apparmor: allocate path lookup buffers during init + - LP: #1208988 + + [ Tim Gardner ] + + * [Config] Remove superfluous ubuntu/lttng-modules + + [ Upstream Kernel Changes ] + + * Revert "fork: unify and tighten up CLONE_NEWUSER/CLONE_NEWPID checks" + - LP: #1248590 + + [ Upstream Kernel Changes ] + + * rebase to v3.12 + - LP: #1222850 + + [ Adam Conrad ] + * etc/getabis: Fetch arm64/generic abis as well + + -- Andy Whitcroft Wed, 06 Nov 2013 21:00:21 +0000 + +linux (3.12.0-1.3) trusty; urgency=low + + [ Andy Whitcroft ] + + * [Config] arm64 -- add arch to the configuration handlers + * [Config] arm64 -- add generic flavour + * [Config] arm64 -- default config + * [Config] arm64 -- fix up various FTBFS config options + * SAUCE: arm64: export __copy_in_user to modules + * [Config] arm64 -- disable ABI/module checks + * [Config] arm64 -- enforcer -- add arm64 to the enforcer + * [Config] arm64 -- enable udebs for arm64 + + [ Colin Watson ] + + * [Config] Clean up various udeb Provides + + [ Paolo Pisati ] + + * [Config] AHCI_IMX=y + * [Config] build imx*-wandboard dtbs + + [ Serge Hallyn ] + + * SAUCE: device_cgroup: remove can_attach + + [ Tim Gardner ] + + * rebase to v3.12-rc7 + * SAUCE: KVM: Fix modprobe failure for kvm_intel/kvm_amd + * Release tracker + - LP: #1245932 + + [ Upstream Kernel Changes ] + + * rebase to v3.12-rc7 + - LP: #1180881 + - LP: #1180881 + - LP: #1217957 + + -- Tim Gardner Sun, 27 Oct 2013 22:08:55 -0600 + +linux (3.12.0-0.2) trusty; urgency=low + + [ Andy Whitcroft ] + + * Revert "SAUCE: (no-up) scsi: hyper-v storage -- mark as preferring READ + CAPACITY (16) at SPC-2" + * Revert "SAUCE: (no-up) scsi: hyper-v storage -- mark as VPD capable at + SPC-2" + * Revert "SAUCE: (no-up) scsi: add scsi device flag to request READ + CAPACITY (16) be preferred" + * Revert "SAUCE: (no-up) scsi: add scsi device flag to request VPD pages + be used at SPC-2" + * Revert "overlayfs: Update to v19" + * Revert "ubuntu: overlayfs v18 -- -- overlayfs: implement show_options" + * Revert "ubuntu: overlayfs v18 -- -- overlayfs: add statfs support" + * Revert "ubuntu: overlayfs v18 -- -- overlay filesystem" + * Revert "ubuntu: overlayfs v18 -- -- vfs: introduce + clone_private_mount()" + * Revert "ubuntu: overlayfs v18 -- -- vfs: export do_splice_direct() to + modules" + * Revert "ubuntu: overlayfs v18 -- -- overlay: overlay filesystem + documentation" + * ubuntu: overlayfs v20 -- overlayfs: add statfs support + * [Config] fix linux-libc-dev generation for arm64 + * [Config] fix linux-libc-dev generation for x32 + * [Config] add linux-libc-dev generation for ppc64el + + [ Erez Zadok ] + + * ubuntu: overlayfs v20 -- overlayfs: implement show_options + + [ Miklos Szeredi ] + + * ubuntu: overlayfs v20 -- vfs: add i_op->dentry_open() + * ubuntu: overlayfs v20 -- vfs: export do_splice_direct() to modules + * ubuntu: overlayfs v20 -- vfs: export __inode_permission() to modules + * ubuntu: overlayfs v20 -- vfs: introduce clone_private_mount() + * ubuntu: overlayfs v20 -- overlay filesystem + * ubuntu: overlayfs v20 -- fs: limit filesystem stacking depth + + [ Neil Brown ] + + * ubuntu: overlayfs v20 -- overlay: overlay filesystem documentation + + [ Paolo Pisati ] + + * [Config] arm: VIRTIO_[BLK|NET|MMIO]=y + + [ Seth Forshee ] + + * SAUCE: (no-up) ACPI: Disable Windows 8 compatibility for some Lenovo + ThinkPads + - LP: #1183856 + + [ Tim Gardner ] + + * [Config] CONFIG_CRYPTO_CRCT10DIF=y, CONFIG_CRYPTO_CRCT10DIF_PCLMUL=m + * rebase to v3.12-rc2 + * updateconfigs + * [Config] disable CONFIG_FB_VESA enforcer check + * [Config] Disable lttng for FTBS + * rebase to v3.12-rc3 + * rebase to v3.12-rc4 + * [Config] CONFIG_ANDROID=n + - LP: #1235161 + * [Config] CONFIG_L2TP_V3=y + - LP: #1235914 + * [Config] CONFIG_USB_OTG=n for all arches + * Release tracker + - LP: #1242811 + + [ Upstream Kernel Changes ] + + * scsi: hyper-v storsvc switch up to SPC-3 + + * rebase to v3.12-rc6 + - LP: #1235977 + - LP: #1235523 + - LP: #1239392 + - LP: #1227491 + + * rebase to v3.12-rc3 + - LP: #1231931 + + * rebase to v3.12-rc2 + - LP: #1213820 + - LP: #1213055 + - LP: #1198030 + + -- Tim Gardner Mon, 23 Sep 2013 07:41:07 -0600 + +linux (3.11.0-8.15) saucy; urgency=low + + [ Tim Gardner ] + + * Release tracker + - LP: #1227969 + + * Update lttng + Updated to git://git.lttng.org/lttng-modules.git 9998f5216f4641a79e158135 + Version 2.3.0+ + + [ Upstream Kernel Changes ] + + * igb: Add additional get_phy_id call for i354 devices + - LP: #1219619 + * igb: Read flow control for i350 from correct EEPROM section + - LP: #1219619 + * timekeeping: Fix HRTICK related deadlock from ntp lock changes + Required for lttng update. + + -- Tim Gardner Thu, 19 Sep 2013 07:41:49 -0600 + +linux (3.11.0-7.14) saucy; urgency=low + + [ Andy Whitcroft ] + + * [Packaging] sort out linux-tools naming + - LP: #1205284 + * [Packaging] linux-tools: switch to common generic version helper + + [ Paolo Pisati ] + + * [Config] highbank: ecx1000: CPU_IDLE causes instabilities, disable it + + [ Tim Gardner ] + + * Release tracker + - LP: #1226160 + + [ Tony Lindgren ] + + * SAUCE: ARM: dts: Fix muxing and regulator for wl12xx on the SDIO bus + for pandaboard + + [ Upstream Kernel Changes ] + + * USB: handle LPM errors during device suspend correctly + - LP: #1011415 + * usb: don't check pm qos NO_POWER_OFF flag in usb_port_suspend() + - LP: #1011415 + * usb: Don't fail port power resume on device disconnect. + - LP: #1011415 + + [ Upstream Kernel Changes ] + + * rebase to v3.11.1 + + -- Tim Gardner Wed, 11 Sep 2013 07:30:17 -0600 + +linux (3.11.0-7.13) saucy; urgency=low + + * Release tracker + - LP: #1223545 + + [ Andy Whitcroft ] + + * SAUCE: (no-up) scsi: add scsi device flag to request VPD pages be used at SPC-2 + - LP: #1223499 + * SAUCE: (no-up) scsi: add scsi device flag to request READ CAPACITY (16) be preferred + - LP: #1223499 + * SAUCE: (no-up) scsi: hyper-v storage -- mark as VPD capable at SPC-2 + - LP: #1223499 + * SAUCE: (no-up) scsi: hyper-v storage -- mark as preferring READ CAPACITY (16) at SPC-2 + - LP: #1223499 + + [ Maximiliano Curia ] + + * SAUCE: (no-up) Only let characters through when there are active readers. + - LP: #1208740 + + [ Tim Gardner ] + + * [Debian] getabis: Commit new ABI directory, remove the old + * [Config] CONFIG_EFIVAR_FS=y + - LP: #1223195 + * [Config] CONFIG_EFI_VARS_PSTORE=m, + CONFIG_EFI_VARS_PSTORE_DEFAULT_DISABLE=n + * SAUCE: (no-up) USB: input: cm109.c: Convert high volume dev_err() to dev_err_ratelimited() + - LP: #1222850 + + [ Upstream Kernel Changes ] + + * Intel xhci: refactor EHCI/xHCI port switching + - LP: #1210858 + + -- Tim Gardner Tue, 10 Sep 2013 09:00:19 -0600 + +linux (3.11.0-6.12) saucy; urgency=low + + * Release tracker + - LP: #1222893 + + [ Andy Whitcroft ] + + * Revert "ubuntu: (no-squash) AUFS3 -- aufs3-standalone.patch" + * Revert "ubuntu: (no-squash) AUFS3 -- aufs3-base.patch" + * ubuntu: (no-squash) AUFS3 -- aufs3-base.patch + * ubuntu: (no-squash) AUFS3 -- aufs3-standalone.patch + - LP: #1222407 + + [ Paolo Pisati ] + + * [Config] restore mmc boot on panda + + [ Tyler Hicks ] + + * SAUCE: apparmor: Use shash crypto API interface for profile hashes + - LP: #1216294 + + [ Upstream Kernel Changes ] + + * net: calxedaxgmac: remove NETIF_F_FRAGLIST setting + * net: calxedaxgmac: read correct field in xgmac_desc_get_buf_len + * net: calxedaxgmac: fix race between xgmac_tx_complete and xgmac_tx_err + * net: calxedaxgmac: fix possible skb free before tx complete + * net: calxedaxgmac: update ring buffer tx_head after barriers + * net: calxedaxgmac: fix race with tx queue stop/wake + * net: calxedaxgmac: enable interrupts after napi_enable + * net: calxedaxgmac: fix various errors in xgmac_set_rx_mode + * net: calxedaxgmac: remove some unused statistic counters + * net: calxedaxgmac: fix rx DMA mapping API size mismatches + * net: calxedaxgmac: fix xgmac_xmit DMA mapping error handling + * mfd: rtsx: Read vendor setting from config space + - LP: #1201698 + + -- Tim Gardner Mon, 09 Sep 2013 07:21:06 -0600 + +linux (3.11.0-5.11) saucy; urgency=low + + * Release tracker + - LP: #1221886 + + [ Adam Lee ] + + * SAUCE: Bluetooth: Add support for 04ca:2007 + - LP: #1153448 + * SAUCE: Bluetooth: Add support for 105b:e065 + - LP: #1161261 + + [ Gavin Guo ] + + * SAUCE: Bluetooth: Add support for Broadcom 413c:8143 + - LP: #1166113 + + [ Upstream Kernel Changes ] + + * igb: Reset the link when EEE setting changed + - LP: #1219619 + * igb: Read register for latch_on without return value + - LP: #1219619 + * igb: Added rcu_lock to avoid race + - LP: #1219619 + * igb: don't allow SR-IOV without MSI-X + - LP: #1219619 + * igb: Update MTU so that it is always at least a standard frame size + - LP: #1219619 + * igb: Refactor of init_nvm_params + - LP: #1219619 + * igb: Refactor NVM read functions to accommodate devices with no flash + - LP: #1219619 + * igb: Add device support for flashless SKU of i210 device + - LP: #1219619 + * igb: Fix get_fw_version function for all parts + - LP: #1219619 + * igb: Add macro for size of RETA indirection table + - LP: #1219619 + * igb: Expose RSS indirection table for ethtool + - LP: #1219619 + * igb: Don't look for a PBA in the iNVM when flashless + - LP: #1219619 + * igb: Implementation of 1-sec delay for i210 devices + - LP: #1219619 + * igb: New PHY_ID for i354 device + - LP: #1219619 + * igb: M88E1543 PHY downshift implementation + - LP: #1219619 + * igb: No PHPM support in i354 devices + - LP: #1219619 + * igb: Support to get 2_5G link status for appropriate media type + - LP: #1219619 + * igb: Get speed and duplex for 1G non_copper devices + - LP: #1219619 + * igb: Implementation to report advertised/supported link on i354 devices + - LP: #1219619 + * igb: Update version number + - LP: #1219619 + * Bluetooth: Take proper tty_struct references + - LP: #1189998 + * Bluetooth: Remove the device from the list in the destructor + - LP: #1189998 + * Bluetooth: Move the tty initialization and cleanup out of open/close + - LP: #1189998 + * Bluetooth: Implement .activate, .shutdown and .carrier_raised methods + - LP: #1189998 + * Bluetooth: Fix the reference counting of tty_port + - LP: #1189998 + * Bluetooth: Purge the dlc->tx_queue to avoid circular dependency + - LP: #1189998 + + [ Wen-chien Jesse Sung ] + + * SAUCE: Bluetooth: Support for loading broadcom patchram firmware + - LP: #1065400 + * SAUCE: Bluetooth: Add support for 13d3:3388 and 13d3:3389 + - LP: #1065400 + + -- Tim Gardner Thu, 05 Sep 2013 08:06:17 -0600 + +linux (3.11.0-5.10) saucy; urgency=low + + [ Andy Whitcroft ] + + * Release tracker + - LP: #1220222 + * Revert "[Config] Fix ubuntu directoy Kbuilds" + * Revert "aufs update dropped some Kbuild files" + * Revert "ubuntu: AUFS -- follow rename of loop.h into drivers/block" + * Revert "ubuntu: AUFS -- update to + 8e503d4142c189ed6c47a2177ad2cd058e8d340e" + * Revert "ubuntu: (no-squash) AUFS3 -- aufs3-standalone.patch" + * Revert "ubuntu: (no-squash) AUFS3 -- aufs3-base.patch" + * rebase to v3.11 final + * [Config] clean up ubuntu/Kconfig and ubuntu/Makefile + * ubuntu: AUFS (no-squash): basic framework and update machinary + * ubuntu: (no-squash) AUFS3 -- aufs3-base.patch + * ubuntu: (no-squash) AUFS3 -- aufs3-standalone.patch + * ubuntu: AUFS -- update to 5ac5fe26a90a818218310e208d17688fddb07622 + * ubuntu: (no-squash) AUFS -- enable aufs + * ubuntu: AUFS -- fix remaining d_count references to use accessor + * ubuntu: lttng -- follow rename of pid_ns + * SAUCE: disable stack-protector for ARM compressed bootloader + + [ Paolo Pisati ] + + * [Config] ARM_ATAG_DTB_COMPAT=y + + [ Rob Herring ] + + * [Config] Enable KVM and virtio for armhf generic-lpae + + [ Tim Gardner ] + + * [Config] CONFIG_ARPD=y + * [Config] CONFIG_ZSWAP=y + - LP: #1215379 + + [ Upstream Kernel Changes ] + + * uvcvideo: quirk PROBE_DEF for Dell SP2008WFP monitor. + - LP: #1217957 + * ARM: use phys_addr_t for DMA zone sizes + * ARM: highbank: enable DMA zone for LPAE + * ARM: highbank: select ARCH_HAS_HOLES_MEMORYMODEL + * ARM: highbank: select required errata work-arounds + * DMA: fix AMBA PL08x compilation issue with 64bit DMA address type + * DMA: fix printk warning in AMBA PL08x DMA driver + * ARM: highbank: select ARCH_DMA_ADDR_T_64BIT for LPAE + * ARM: move outer_cache declaration out of ifdef + * ARM: highbank: avoid L2 cache smc calls when PL310 is not present + * ARM: highbank: clean-up some unused includes + * ARM: xen: only set pm function ptrs for Xen guests + + [ Upstream Kernel Changes ] + + * rebase to v3.11 + + -- Andy Whitcroft Tue, 03 Sep 2013 17:08:06 +0100 + +linux (3.11.0-4.9) saucy; urgency=low + + [ Tim Gardner ] + + * rebase to v3.11-rc7 + * Release tracker + - LP: #1216962 + + [ Upstream Kernel Changes ] + + * mwifiex: do not create AP and P2P interfaces upon driver loading + - LP: #1212720 + + -- Tim Gardner Mon, 26 Aug 2013 06:25:35 -0600 + +linux (3.11.0-3.8) saucy; urgency=low + + [ Johannes Berg ] + + * SAUCE: mac80211: ignore (E)CSA in probe response frames + - LP: #1201470 + + -- Tim Gardner Fri, 23 Aug 2013 09:47:36 -0600 + +linux (3.11.0-3.7) saucy; urgency=low + + [ Tim Gardner ] + + * SAUCE: (no-up) hv_vss_daemon -- prevent self-daemonising to allow + upstart to track + * SAUCE: (no-up) hv -- bodge hv_vss_daemon so it can use the local + linux/hyperv.h + * SAUCE: hv: Add vss daemon to Makefile + * [Debian] Add hv_vss_daemon to tools package + - LP: #1213282 + * [Config] Fix ubuntu directoy Kbuilds + - LP: #1181755 + + -- Tim Gardner Tue, 20 Aug 2013 08:34:05 -0600 + +linux (3.11.0-3.6) saucy; urgency=low + + [ Andy Whitcroft ] + + * [Packaging] tools: conditionalise x86 and hyper-v tools sensibly + * [Config] tools: enable x86 and hyper-v + + [ John Johansen ] + + * Revert "SAUCE: (no-up) apparmor: Sync to apparmor 3 dev stable + snapshot" + * Revert "SAUCE: (no-up) apparmor: fix apparmor module status for none + root users" + * SAUCE: (no-up) apparmor: Sync to apparmor 3 - alpha 4 snapshot + + [ Joseph Salisbury ] + + * SAUCE: (no-up) intel_ips: blacklist ASUSTek G60JX laptops + - LP: #1210848 + + [ Kamal Mostafa ] + + * [debian] tools: ship 'cpupower' in linux-tools + - LP: #1158668 + * [Config] Build-dep on libpci-dev for cpu tools + - LP: #1158668 + + [ Tim Gardner ] + + * rebase to v3.11-rc6 + * Release tracker + - LP: #1213941 + + -- Tim Gardner Fri, 16 Aug 2013 07:02:07 -0600 + +linux (3.11.0-2.5) saucy; urgency=low + + [ Tim Gardner ] + + * [Config] CONFIG_PM_DEBUG=y + - LP: #1210539 + * rebase to v3.11-rc5 + * Release tracker + - LP: #1211378 + + -- Tim Gardner Mon, 12 Aug 2013 06:10:39 -0600 + +linux (3.11.0-1.4) saucy; urgency=low + + [ Tim Gardner ] + + * Bump ABI when making changes to the inclusion list lest + you cause conflicts with existing installed kernel + packages. + - LP: #1210331 + + -- Tim Gardner Fri, 09 Aug 2013 03:03:51 +0100 + +linux (3.11.0-0.3) saucy; urgency=low + + [ Tim Gardner ] + + * [Config] Include rbd and kvm in the virtual inclusion list + - LP: #1206961 + * [Config] Removed obsolete inclusion list entries + + -- Tim Gardner Tue, 06 Aug 2013 08:52:14 +0100 + +linux (3.11.0-0.2) saucy; urgency=low + + [ Bruce Allan ] + + * SAUCE: (no-up) e1000e: fix I217/I218 PHY initialization flow + - LP: #1206757 + * SAUCE: (no-up) e1000e: enable support for new device IDs + - LP: #1206757 + + [ John Johansen ] + + * SAUCE: (no-up) apparmor: Sync to apparmor 3 dev stable snapshot + + [ Paolo Pisati ] + + * build vexpress a15 dtb + * [Config] disable Broadcom bcm support (ARCH_BCM) + * [Config] disable Allwinner a1x support (ARCH_SUNXI) + * [Config] disable WonderMedia WM8850 support (ARCH_WM8850) + * [Config] disable Rockchip support (ARCH_ROCKCHIP) + * [Config] disable STMicroelectronics STiH41x SOCs (ARCH_STI) + * [Config] disable TI Keystone, AM43xx and OMAP5 support + * [Config] ARM_APPENDED_DTB=y + + [ Tim Gardner ] + + * rebase to v3.11-rc4 + * overlayfs: Update to v19 + * [Config] Enable overlayfs + * SAUCE: Fix lttng compile errors + + [ Upstream Kernel Changes ] + + * rebase to v3.11-rc4 + - LP: #1163720 + - LP: #1162026 + - LP: #1195636 + - LP: #1195597 + - LP: #1180409 + - LP: #1168430 + + -- Tim Gardner Sun, 04 Aug 2013 03:45:31 -0600 + +linux (3.11.0-0.1) saucy; urgency=low + + [ Upstream Kernel Changes ] + + * rebase to 64ccccf8525fee499625b517c0faadf784c79e93 + - LP: #1163720 + - LP: #1162026 + - LP: #1195636 + - LP: #1195597 + - LP: #1180409 + - LP: #1168430 + + -- Tim Gardner Mon, 08 Jul 2013 08:50:46 -0600 + +linux (3.10.0-2.10) saucy; urgency=low + + [ Andy Whitcroft ] + + * [Config] CONFIG_INTEL_MEI*=m + - LP: #1196155 + * [Config] CONFIG_DEBUG_INFO=y + + [ Stephen Warren ] + + * [Config] fix Calxeda xgmac module filename + + [ Upstream Kernel Changes ] + + * Revert "serial: 8250_pci: add support for another kind of NetMos + Technology PCI 9835 Multi-I/O Controller" + - LP: #1190967 + * mfd: lpc_ich: Add support for Intel Avoton SoC + - LP: #1196658 + + -- Andy Whitcroft Fri, 05 Jul 2013 18:08:02 +0100 + +linux (3.10.0-2.9) saucy; urgency=low + + [ Andy Whitcroft ] + + * rebase to v3.10 + + [ John Johansen ] + + * Revert "SAUCE: (no-up) apparmor: Fix quieting of audit messages for + network mediation" + * Revert "SAUCE: (no-up) apparmor: Fix compile warnings" + * Revert "SAUCE: (no-up) AppArmor: basic networking rules" + * Revert "SAUCE: (no-up) apparmor: Add the ability to mediate mount" + * Revert "SAUCE: (no-up) AppArmor: Add profile introspection file to + interface" + * Revert "SAUCE: (no-up) AppArmor: Disable Add PR_{GET,SET}_NO_NEW_PRIVS + to prevent execve from granting privs" + * SAUCE: (no-up) apparmor: Sync to apparmor 3 dev stable snapshot + + [ Upstream Kernel Changes ] + + * rebase to v3.10 + + -- Andy Whitcroft Mon, 01 Jul 2013 17:42:29 +0100 + +linux (3.10.0-1.8) saucy; urgency=low + + [ Andy Whitcroft ] + + * Release Tracking Bug + - LP: #1195717 + + [ Andy Whitcroft ] + + * Revert "ubuntu: overlayfs -- follow change to do_splice_direct + interface" + * Revert "ubuntu: overlayfs -- expose do_splice_direct prototype" + * Revert "SAUCE: ubuntu: overlayfs -- ovl_path_open should not take path + reference" + * Revert "ubuntu: overlayfs -- add FS_ALIAS" + * Revert "ubuntu: overlayfs -- + overlayfs-copy-up-i_uid-i_gid-from-the-underlying-inode" + * Revert "ubuntu: overlayfs -- ovl-switch-to-inode_permission" + * Revert "ubuntu: overlayfs -- vfs-export-inode_permission-to-modules" + * Revert "ubuntu: overlayfs -- overlayfs-create-new-inode-in-ovl_link" + * Revert "ubuntu: overlayfs -- + overlayfs-fix-possible-leak-in-ovl_new_inode" + * Revert "ubuntu: overlayfs -- fs-limit-filesystem-stacking-depth" + * Revert "ubuntu: overlayfs -- overlay-overlay-filesystem-documentation" + * Revert "ubuntu: overlayfs -- overlayfs-implement-show_options" + * Revert "ubuntu: overlayfs -- overlayfs-add-statfs-support" + * Revert "ubuntu: overlayfs -- overlay filesystem" + * Revert "ubuntu: overlayfs -- vfs-introduce-clone_private_mount" + * Revert "ubuntu: overlayfs -- vfs-export-do_splice_direct-to-modules" + * Revert "ubuntu: overlayfs -- vfs-add-i_op-dentry_open" + * ubuntu: overlayfs v18 -- -- overlayfs: add statfs support + + [ Erez Zadok ] + + * ubuntu: overlayfs v18 -- -- overlayfs: implement show_options + + [ Miklos Szeredi ] + + * ubuntu: overlayfs v18 -- -- vfs: add i_op->dentry_open() + * ubuntu: overlayfs v18 -- -- vfs: export do_splice_direct() to modules + * ubuntu: overlayfs v18 -- -- vfs: export __inode_permission() to modules + * ubuntu: overlayfs v18 -- -- vfs: introduce clone_private_mount() + * ubuntu: overlayfs v18 -- -- overlay filesystem + * ubuntu: overlayfs v18 -- -- fs: limit filesystem stacking depth + + [ Neil Brown ] + + * ubuntu: overlayfs v18 -- -- overlay: overlay filesystem documentation + + [ Tim Gardner ] + + * [Config] CONFIG_SUNRPC_DEBUG=y + - LP: #1127319 + + -- Andy Whitcroft Fri, 28 Jun 2013 10:26:52 +0100 + +linux (3.10.0-0.7) saucy; urgency=low + + [ Andy Whitcroft ] + + * autopkgtest: switch Depends: to build-essential + + -- Andy Whitcroft Tue, 25 Jun 2013 08:40:55 +0100 + +linux (3.10.0-0.6) saucy; urgency=low + + [ Andy Whitcroft ] + + * [Config] enable CONFIG_ARCH_TEGRA to fix FTBFS on armhf + * SAUCE: ubuntu: overlayfs -- ovl_path_open should not take path reference + - LP: #1098378 + * ubuntu: AUFS -- update to 4f14cef47eb7c23eda7198931fbab1040866b6ee + * ubuntu: overlayfs -- expose do_splice_direct prototype + * ubuntu: overlayfs -- follow change to do_splice_direct interface + * [Config] flip CONFIG_NO_HZ_FULL_ALL off as it is overheating machines + - LP: #1192691 + + [ Stefan Bader ] + + * (d-i) Add dm-snapshot to md-modules + - LP: #1191726 + + [ Tim Gardner ] + + * Release tracker + - LP: #1194149 + * [Config] CONFIG_WIL6210=n for armhf + * [Config] d-i: Add calxedaxgmac to nic-modules + - LP: #1192358 + * [debian] Use dh_strip + - LP: #1192759 + * [Config] Enable perf for armhf + * do_tools=false when cross compiling + * [Config] CONFIG_CORE_DUMP_DEFAULT_ELF_HEADERS=y + - LP: #1108082 + + [ Upstream Kernel Changes ] + + * nsp32: switch reset delay to msleep() as it is tooo long + * alx: add a simple AR816x/AR817x device driver + Plucked from linux-next. replaces ubuntu/alx in favor of + 'to be merged' version in 3.11. + * rebase to v3.10-rc7 + - LP: #1189363 + + -- Tim Gardner Sat, 22 Jun 2013 18:10:31 -0600 + +linux (3.10.0-0.5) saucy; urgency=low + + [ Andy Whitcroft ] + + * rebase to v3.10-rc6 + * [Config] updateconfigs following rebase to v3.10-rc6 + + [ Upstream Kernel Changes ] + + * rebase to v3.10-rc6 + + -- Andy Whitcroft Mon, 17 Jun 2013 11:12:39 +0100 + +linux (3.10.0-0.4) saucy; urgency=low + + [ Andy Whitcroft ] + + * [Config] updateconfigs following rebase to v3.10-rc4 + + -- Andy Whitcroft Mon, 10 Jun 2013 11:42:28 +0100 + +linux (3.10.0-0.3) saucy; urgency=low + + [ Andy Whitcroft ] + + * rebase to v3.10-rc5 + + [ Upstream Kernel Changes ] + + * rebase to v3.10-rc5 + - LP: #1186170 + + -- Andy Whitcroft Mon, 10 Jun 2013 09:23:31 +0100 + +linux (3.10.0-0.2) saucy; urgency=low + + [ Andy Whitcroft ] + + * rebase to v3.10-rc4 + * [Config] CONFIG_BINFMT_SCRIPT=y to fix booting initramfs scripts + * [Config] enable SND_PCM_DEBUG SND_PCM_XRUN_DEBUG + - LP: #1187744 + * [Config] enforce CONFIG_BINFMT_SCRIPT=y + + [ Dave Chiluk ] + + * SAUCE: ncpfs: fix rmdir returns Device or resource busy + - LP: #1035226 + + [ Tim Gardner ] + + * rebase to v3.10-rc3 + * [Config] sparc be gone + * [Config] ia64 be gone + * d-i: block-modules provides nbd-modules + + [ Upstream Kernel Changes ] + + * rebase to v3.10-rc4 + * rebase to v3.10-rc3 + + -- Tim Gardner Tue, 28 May 2013 06:16:46 -0600 + +linux (3.10.0-0.1) saucy; urgency=low + + [ Tim Gardner ] + + * UBUNTU: Disabled lttng + * UBUNTU: Disable aufs for FTBS + * UBUNTU: Disabled alx + * UBUNTU: alx: rename NETIF_F_HW_VLAN_* feature flags to NETIF_F_HW_VLAN_CTAG_* + * UBUNTU: rebase to v3.10-rc2 + * UBUNTU: SAUCE: uvcvideo: quirk PROBE_DEF for Alienware X51 OmniVision webcam + + [ Andy Whitcroft ] + + * UBUNTU: [Config] update standards version to 3.9.4.0 + * UBUNTU: [Config] squash duplicate package description (long and short) + * UBUNTU: [Config] fix up Vcs-git: to point to saucy + * UBUNTU: [Config] drop depenancy on util-linux as is Essential + * UBUNTU: [Config] drop redundant Build-Conficts: + + [ Upstream Kernel Changes ] + + * rebase to v3.10-rc2 + - LP: #1180351 + + [ Upstream Kernel Changes ] + + * rebase to v3.10-rc1 + - LP: #1172151 + - LP: #1089795 + - LP: #1167270 + - LP: #1128840 + + -- Tim Gardner Tue, 14 May 2013 13:41:07 -0600 + +linux (3.10.0-0.0) saucy; urgency=low + + * Dummy + + -- Tim Gardner Thu, 09 May 2013 20:30:40 +0100 + +linux (3.9.0-2.6) saucy; urgency=low + + [ Tim Gardner ] + + * rebase to v3.9.2 + + -- Tim Gardner Thu, 09 May 2013 20:30:40 +0100 + +linux (3.9.0-1.5) saucy; urgency=low + + [ Tim Gardner ] + + * rebase to v3.9.1 + + -- Tim Gardner Wed, 08 May 2013 12:49:45 -0400 + +linux (3.9.0-0.4) saucy; urgency=low + + [ Andy Whitcroft ] + + * ubuntu: overlayfs -- add FS_ALIAS + + [ Tim Gardner ] + + * Added lttng + - LP: #1175784 + + -- Tim Gardner Thu, 02 May 2013 17:17:13 -0400 + +linux (3.9.0-0.3) saucy; urgency=low + + [ Upstream Kernel Changes ] + + * rebase to v3.9 + + -- Tim Gardner Mon, 29 Apr 2013 18:20:00 -0400 + +linux (3.9.0-0.2) saucy; urgency=low + + [ Tim Gardner ] + + * Enable extras packaging for amd64/i386. + Fixes build depenencies with brittany and linux-meta. + + -- Tim Gardner Mon, 29 Apr 2013 05:37:01 -0600 + +linux (3.9.0-0.1) saucy; urgency=low + + [ Upstream Kernel Changes ] + + * rebase to v3.9-rc8 + + [ Upstream Kernel Changes ] + + * rebase to v3.9-rc7 + - LP: #1128840 + + [ Upstream Kernel Changes ] + + * rebase to v3.9-rc6 + + [ Upstream Kernel Changes ] + + * rebase to v3.9-rc5 + + [ Upstream Kernel Changes ] + + * rebase to v3.8-rc4 + - LP: #1095315 + - LP: #886975 + - LP: #1086921 + + [ Upstream Kernel Changes ] + + * rebase to v3.9-rc3 + - LP: #1155016 + - LP: #1103594 + + [ Upstream Kernel Changes ] + + * rebase to v3.9-rc2 + + [ Upstream Kernel Changes ] + + * rebase to v3.9-rc1 + - LP: #901105 + - LP: #961286 + - LP: #1011792 + - LP: #1128934 + - LP: #886975 + - LP: #978807 + + -- Tim Gardner Wed, 20 Feb 2013 09:12:39 -0700 + +linux (3.8.0-7.14) raring; urgency=low + + [ Andy Whitcroft ] + + * [Config] CONFIG_RCU_USER_QS=n + * [Config] CONFIG_MTD_ONENAND_SIM=n + * annotations: add annotations for CONFIG_CC_STACKPROTECTOR + + [ Upstream Kernel Changes ] + + * rebase to v3.8 + + [Tim Gardner] + + * Release Tracking Bug + - LP: #1130111 + * UBUNTU: SAUCE: rt2x00: rt2x00pci_regbusy_read() - only print register access failure once + - LP: #1128840 + + -- Tim Gardner Mon, 18 Feb 2013 09:25:56 -0700 + +linux (3.8.0-6.13) raring; urgency=low + + [Tim Gardner] + + * Release Tracking Bug + - LP: #1125364 + * Add ahci modules to d-i + - LP: #1124415 + + + [ Chris Wilson ] + + * SAUCE: drm/i915: Wait for pending flips to complete before tearing down + the encoders + - LP: #1097315 + + -- Tim Gardner Wed, 13 Feb 2013 12:16:48 -0700 + +linux (3.8.0-6.12) raring; urgency=low + + [Tim Gardner] + + * perf: NO_LIBPERL=1 + * Fix linux-headers dependency + * Release Tracking Bug + - LP: #1124362 + + [ Andy Whitcroft ] + + * [Config] enable CONFIG_AUFS_EXPORT to allow nfs exports + - LP: #1121699 + + [ Daniel Vetter ] + + * SAUCE: drm/i915: write backlight harder + - LP: #954661 + + -- Tim Gardner Wed, 13 Feb 2013 10:25:11 -0700 + +linux (3.8.0-6.11) raring; urgency=low + + [Tim Gardner] + + * Release Tracking Bug + - LP: #1122071 + * rebase to v3.8-rc7 + * Add libaudit-dev as a build dependency + * Build perf with NO_LIBPYTHON=1 to avoid a python build dependency. + + [ Leann Ogasawara ] + + * [Config] Remove CONFIG_SATA_AHCI annotation + + -- Tim Gardner Fri, 08 Feb 2013 07:41:13 -0500 + +linux (3.8.0-5.10) raring; urgency=low + + [Tim Gardner] + + * Release Tracking Bug + - LP: #1118568 + + * Bump ABI to fix install issue with 3.8.0-4.8. + Moving drivers/ata/*ahci* to linux-image caused an + install conflict with linux-image-extras without an + ABI bump. + + [ Jan Beulich ] + + * SAUCE: xen-pciback: rate limit error messages from + xen_pcibk_enable_msi{, x}() + - LP: #1117336 + - CVE-2013-0231 + + -- Tim Gardner Thu, 07 Feb 2013 05:38:12 -0700 + +linux (3.8.0-4.9) raring; urgency=low + + [ Herton Ronaldo Krzesinski ] + + * d-i: Add mellanox ethernet drivers to nic-modules + - LP: #1015339 + + [ Joseph Salisbury ] + + * SAUCE: ACPI: Add DMI entry for Sony VGN-FW41E_H + - LP: #1113547 + + [ Kamal Mostafa ] + + * SAUCE: alx driver import script + + [ Qualcomm Atheros, Inc ] + + * SAUCE: alx: Update to heads/master + + [ Tim Gardner ] + + * Release Tracking Bug + - LP: #1117673 + + * [debian] Remove dangling symlink from headers package + - LP: #1112442 + * [config] CONFIG_ALX=m + * [Config] Add alx to d-i nic-modules + * [Config] CONFIG_SATA_AHCI=m + - LP: #1056563 + + -- Leann Ogasawara Tue, 05 Feb 2013 05:54:32 -0800 + +linux (3.8.0-4.8) raring; urgency=low + + [ Allen Ibara ] + + * SAUCE: imx6: dts: Add IMX6Q AHCI support + + [ Andy Whitcroft ] + + * rebase to v3.8-rc6 + * updateconfigs following rebase to v3.8-rc6 + + [Leann Ogasawara] + + * Release Tracking Bug + - LP: #1112573 + + [ Paolo Pisati ] + + * SAUCE: imx6: enable sata clk if SATA_AHCI_PLATFORM + * [Config] SERIAL_AMBA_PL011=y (vexpress serial console) + * [Config] MMC_ARMMMCI=y (vexpress mmc) + * [Config] FB_ARMCLCD=y (vexpress framebuffer) + + [ Seth Forshee ] + + * [Config] CONFIG_MAC80211_MESSAGE_TRACING=y + + [ Upstream Kernel Changes ] + + * rebase to v3.8-rc6 + - LP: #1107477 + + -- Leann Ogasawara Fri, 01 Feb 2013 07:20:59 -0800 + +linux (3.8.0-3.7) raring; urgency=low + + [ Andy Green ] + + * SAUCE: ARM: OMAP2+: add cpu id register to MAC address helper + * SAUCE: ARM: omap2 add mac address allocation register api + * SAUCE: ARM: omap2 panda register ethernet and wlan for automatic mac + allocation + + [ Leann Ogasawara ] + + * rebase to v3.8-rc5 + * Release Tracking Bug + - LP: #1111486 + + [ Paolo Pisati ] + + * SAUCE: davinci: vpss: compilation fix + * [Config] enable TI OMAP4 support (Pandaboard/ES) + * [Config] OMAP_USB2=y (since TWL6030_USB depends on it) + * [Config] enable Freescale IMX6 support (SabreLite) + * [Config] SERIAL_IMX_CONSOLE=y + * [Config] MMC_*_IMX=y + * [Config] disable USB_SUSPEND + * [Config] USB_MXS_PHY=y + * [Config] USB_CHIPIDEA=y + * SAUCE: DTB: add support for multiple DTBs + * SAUCE: DTB: build imx6q-sabrelite + * SAUCE: DTB: build beaglexm + * SAUCE: DTB: build panda/panda es + * [Config] disable CPU_FREQ + * [Config] PANEL_TFP410=y (video DVI output) + * [Config] SND_OMAP_SOC*=y + * [Config] SND_IMX_SOC*=y + * [Config] I2C_IMX=y + * [Config] SPI_IMX=m + + [ Stefan Bader ] + + * [Config] Move 9p modules into generic package + - LP: #1107658 + + [ Tony Lindgren ] + + * SAUCE: ARM: OMAP2+: Limit omap initcalls to omap only on multiplatform + kernels + * SAUCE: ARM: OMAP2+: Use omap initcalls + * SAUCE: ARM: OMAP: Fix i2c cmdline initcall for multiplatform + * SAUCE: ARM: OMAP: Fix dmaengine init for multiplatform + * SAUCE: ARM: OMAP2+: Add multiplatform debug_ll support + * SAUCE: ARM: OMAP2+: Disable code that currently does not work with + multiplaform + * SAUCE: ARM: OMAP2+: Enable ARCH_MULTIPLATFORM support + * SAUCE: ARM: OMAP2+: Add minimal support for booting vexpress + * SAUCE: ARM: OMAP2+: Remove now obsolete uncompress.h and debug-macro.S + + [ Upstream Kernel Changes ] + + * rebase to v3.8-rc5 + - LP: #1096789 + + -- Leann Ogasawara Thu, 31 Jan 2013 06:44:52 -0800 + +linux (3.8.0-2.6) raring; urgency=low + + [ Adam Conrad ] + + * Fix up linux-tools -> SRCPKGNAME-tools rename + + [ Andy Whitcroft ] + + * [Config] re-disable CONFIG_SOUND_OSS + - LP: #1105230 + + [ Arend van Spriel ] + + * SAUCE: brcmsmac: fix tx status processing + + [Leann Ogasawara] + + * Release Tracking Bug + - LP: #1105104 + + -- Leann Ogasawara Fri, 25 Jan 2013 11:56:30 -0800 + +linux (3.8.0-1.5) raring; urgency=low + + [Tim Gardner] + + * Release Tracking Bug + - LP: #1101235 + + [ Dudley Du ] + + * SAUCE: Input: add support for Cypress PS/2 Trackpads + - LP: #978807 + + [ Kamal Mostafa ] + + * SAUCE: Input: increase struct ps2dev cmdbuf[] to 8 bytes + * SAUCE: Input: Cypress PS/2 Trackpad simulated multitouch + * [Config] Add CONFIG_PS2_CYPRESS + + [ Tim Gardner ] + + * rebase to v3.8-rc4 + + [ Upstream Kernel Changes ] + + * rebase to v3.8-rc4 + - LP: #1095315 + - LP: #886975 + - LP: #1086921 + + -- Leann Ogasawara Thu, 17 Jan 2013 10:50:22 -0800 + +linux (3.8.0-0.4) raring; urgency=low + + [ Leann Ogasawara ] + + * [Config] Update CONFIG_TOUCHSCREEN_EGALAX build annotation + * [Config] Update CONFIG_IIO build annotation + * [Config] Update CONFIG_TOUCHSCREEN_EETI annotation + * [Config] Remove CONFIG_SPI_DW_MMIO annotation + * [Config] Remove CONFIG_SPI_PL022 annotation + * [Config] Update CONFIG_EZX_PCAP annotation + * [Config] Update CONFIG_SENSORS_AK8975 annotation + * [Config] Disable CONFIG_DRM_MGAG200 + - LP: #1042903 + + -- Leann Ogasawara Mon, 14 Jan 2013 10:01:50 -0800 + +linux (3.8.0-0.3) raring; urgency=low + + [ Andy Whitcroft ] + + * Revert "SAUCE: (no-up) trace: add trace events for open(), exec() and + uselib()" + + [ Scott James Remnant ] + + * SAUCE: (no-up) trace: add trace events for open(), exec() and uselib() + (for v3.7+) + - LP: #1085766, #462111 + + -- Andy Whitcroft Fri, 11 Jan 2013 16:57:27 +0000 + +linux (3.8.0-0.2) raring; urgency=low + + [ Tim Gardner ] + + * [packaging] Add macro to selectively disable building perf + * [packaging] Cannot depend on universe package libaudit-dev + + -- Tim Gardner Thu, 10 Jan 2013 12:43:24 -0700 + +linux (3.8.0-0.1) raring; urgency=low + + + [ Upstream Kernel Changes ] + + * rebase to v3.8-rc3 + - LP: #1096789 + + [ Upstream Kernel Changes ] + + * rebase to v3.8-rc2 + - LP: #1082357 + - LP: #1075882 + + -- Andy Whitcroft Mon, 17 Dec 2012 10:35:09 +0000 + +linux (3.7.0-7.15) raring; urgency=low + + [ Chris J Arges ] + + * SAUCE: add eeprom_bad_csum_allow module parameter + - LP: #1070182 + + [ Leann Ogasawara ] + + * Add ceph to linux-image for virtual instances + - LP: #1063784 + + [ Serge Hallyn ] + + * SAUCE: net: dev_change_net_namespace: send a KOBJ_REMOVED/KOBJ_ADD + + [ Tim Gardner ] + + * [Config] CONFIG_SLUB_DEBUG=y + - LP: #1090308 + + [ Upstream Kernel Changes ] + + * Revert "[SCSI] sd: Implement support for WRITE SAME" + - LP: #1089818 + + -- Leann Ogasawara Wed, 12 Dec 2012 06:50:20 -0800 + +linux (3.7.0-6.14) raring; urgency=low + + [ Andy Whitcroft ] + + * [Config] annotations: all new annotations scheme including defaults + * [Configs] apply annotation updates to main configs (top section) + + [ Leann Ogasawara ] + + * Revert "SAUCE: include and for mmc_core arm + build" + * Revert "SAUCE: [arm] fixup __aeabi_uldivmod undefined build error" + * Temporarily disable module check for build + + [ Stefan Bader ] + + * ubuntu: dm-raid45: Adapt to upstream interface changes + * Re-enable build of dm-raid45 + + [ Tim Gardner ] + + * SAUCE: Moved scripts/fw-to-ihex.sh to debian/scripts/misc + * SAUCE: ACPICA: Fix ACPI mutex object allocation memory leak on error + * SAUCE: drm: Fix possible EDID memory allocation oops + * SAUCE: ttm: Fix possible _manager memory allocation oops + * SAUCE: iwlwifi: iwlagn_request_scan: Fix check for priv->scan_request + * SAUCE: i915: intel_set_mode: Reduce stack allocation from 500 bytes to + 2 pointers + + [ Tomas Hozza ] + + * SAUCE: tools: hv: Netlink source address validation allows DoS + - LP: #1084777 + - CVE-2012-5532 + + [ Upstream Kernel Changes ] + + * rebase to v3.7 + + -- Leann Ogasawara Wed, 05 Dec 2012 14:11:12 -0800 + +linux (3.7.0-5.13) raring; urgency=low + + [ Lino Sanfilippo ] + + * SAUCE: inotify, fanotify: replace fsnotify_put_group() with + fsnotify_destroy_group() + - LP: #922906 + * SAUCE: fsnotify: introduce fsnotify_get_group() + - LP: #922906 + * SAUCE: fsnotify: use reference counting for groups + - LP: #922906 + * SAUCE: fsnotify: take groups mark_lock before mark lock + - LP: #922906 + * SAUCE: fanotify: add an extra flag to mark_remove_from_mask that + indicates wheather a mark should be destroyed + - LP: #922906 + * SAUCE: fsnotify: use a mutex instead of a spinlock to protect a groups + mark list + - LP: #922906 + * SAUCE: fsnotify: pass group to fsnotify_destroy_mark() + - LP: #922906 + * SAUCE: fsnotify: introduce locked versions of fsnotify_add_mark() and + fsnotify_remove_mark() + - LP: #922906 + * SAUCE: fsnotify: dont put marks on temporary list when clearing marks + by group + - LP: #922906 + * SAUCE: fsnotify: change locking order + - LP: #922906 + + [ Tim Gardner ] + + * [Config] CONFIG_NFC_LLCP=y + * [Config] get-firmware: Filter new files through fwinfo + * [Config] CONFIG_MTD_NAND_DOCG4=m for all arches + * [Config] CONFIG_DRM_EXYNOS_HDMI=y + * [Config] CONFIG_XEN=y for all arches + * [Config] CONFIG_SND_OMAP_SOC_ZOOM2=m + * [Config] CONFIG_MMC_DW_EXYNOS=m + * [Config] CONFIG_GPIO_ADNP=m + * [Config] find-obsolete-firmware: Use correct path + * rebase to v3.7-rc8 + - LP: #1084640 + + [ Upstream Kernel Changes ] + + * Revert "VFS: don't do protected {sym,hard}links by default" + - LP: #1084192 + + -- Tim Gardner Wed, 28 Nov 2012 16:07:08 +0000 + +linux (3.7.0-4.12) raring; urgency=low + + [ Tim Gardner ] + + * Revert "[Config] Use -j1 for headers_install" + * Revert "[Config] install-arch-headers needs a valid config" + Strayed into the weeds in search of the root cause of the periodic + build failure. + Fixes powerpc FTBS introduced in -4.11. + * [Config] hmake -j1 + The kernel makefile appears to have parallel dependency + problems for the install_headers target. This appears to be root + cause for a periodic build failure on N-way machines. + + -- Leann Ogasawara Tue, 27 Nov 2012 12:33:06 -0800 + +linux (3.7.0-4.11) raring; urgency=low + + [ Tim Gardner ] + + * [Config] Use -j1 for headers_install + Also fixes a powerpc FTBS introduced by + "[Config] install-arch-headers needs a valid config". + + -- Tim Gardner Tue, 27 Nov 2012 10:19:30 -0700 + +linux (3.7.0-4.10) raring; urgency=low + + [ Andy Whitcroft ] + + * [Config] add rebuild-test support for autopkgtest + - LP: #1081500 + * [tests] move build tests out of the way + - LP: #1081500 + * [tests] add an autopkgtest rebuild test + - LP: #1081500 + + [ Tim Gardner ] + + * rebase to v3.7-rc7 + * SAUCE: Remove emi62 files duplicated in linux-firmware + * SAUCE: Remove sb16 files duplicated in linux-firmware + * SAUCE: Remove whiteheat files duplicated in linux-firmware + * SAUCE: Remove yamaha files duplicated in linux-firmware + * SAUCE: Remove dsp56k files used only by m68k + * SAUCE: firmware: Remove last vestiges of dabusb + * SAUCE: Remove vicam files duplicated in linux-firmware + * [Config] install-arch-headers needs a valid config + + [ Upstream Kernel Changes ] + + * rebase to v3.7-rc7 + - LP: #1076840 + - LP: #1081466 + + -- Leann Ogasawara Wed, 21 Nov 2012 06:07:23 -0800 + +linux (3.7.0-3.9) raring; urgency=low + + [ Leann Ogasawara ] + + * [Config] Enable CONFIG_X86_CPUFREQ_NFORCE2=y + - LP: #1079900 + * Add nfsv3 to nfs-modules udeb + + [ Paolo Pisati ] + + * [Config] SND_OMAP_SOC*=y + - LP: #1019321 + + [ Stefan Bader ] + + * SAUCE: (no-up) xen/netfront: handle compound page fragments on transmit + - LP: #1078926 + + [ Tim Gardner ] + + * Revert "SAUCE: SECCOMP: audit: always report seccomp violations" + - LP: #1079469 + * Revert "SAUCE: omap3 clocks .dev_id = NULL" + * rebase to v3.7-rc6 + * SAUCE: script to detect obsolete firmware + * SAUCE: Remove yam files duplicated in linux-firmware + * SAUCE: Remove tehuti files duplicated in linux-firmware + * SAUCE: Remove matrox files duplicated in linux-firmware + * SAUCE: Remove cxgb3 files duplicated in linux-firmware + * SAUCE: Remove r128 files duplicated in linux-firmware + * SAUCE: Remove acenic files duplicated in linux-firmware + * SAUCE: Remove keyspan files duplicated in linux-firmware + * SAUCE: Remove sun files duplicated in linux-firmware + * SAUCE: Remove radeon files duplicated in linux-firmware + * SAUCE: Update bnx2x firmware to 7.8.2.0 + * [Config] generic.inclusion-list: econet has disappeared + + [ Upstream Kernel Changes ] + + * seccomp: forcing auditing of kill condition + - LP: #1079469 + * rebase to v3.7-rc6 + + -- Leann Ogasawara Tue, 20 Nov 2012 12:28:55 -0800 + +linux (3.7.0-2.8) raring; urgency=low + + [ Andy Whitcroft ] + + * Revert "overlayfs: disable until FTBS is fixed" + * Revert "ubuntu: overlayfs" + * Revert "ubuntu: AUFS" + * ubuntu: overlayfs -- overlayfs: add statfs support + * ubuntu: overlayfs -- ovl: switch to __inode_permission() + * ubuntu: overlayfs -- overlayfs: copy up i_uid/i_gid from the underlying + inode + - LP: #944386 + * ubuntu: AUFS (no-squash): basic framework and update machinary + * ubuntu: AUFS (no-squash) -- aufs3-base.patch + * ubuntu: AUFS (no-squash) -- aufs3-standalone.patch + * ubuntu: AUFS: aufs-update -- follow the uapi header changes + * ubuntu: AUFS -- update to f2873474324d0a31af4340554b9715f51331bc7f + * ubuntu: AUFS (no-squash) -- reenable + - LP: #1079193 + + [ Erez Zadok ] + + * ubuntu: overlayfs -- overlayfs: implement show_options + + [ Miklos Szeredi ] + + * ubuntu: overlayfs -- vfs: add i_op->dentry_open() + * ubuntu: overlayfs -- vfs: export do_splice_direct() to modules + * ubuntu: overlayfs -- vfs: introduce clone_private_mount() + * ubuntu: overlayfs -- overlay filesystem + * ubuntu: overlayfs -- fs: limit filesystem stacking depth + * ubuntu: overlayfs -- vfs: export __inode_permission() to modules + + [ Neil Brown ] + + * ubuntu: overlayfs -- overlay: overlay filesystem documentation + + [ Robin Dong ] + + * ubuntu: overlayfs -- overlayfs: fix possible leak in ovl_new_inode + * ubuntu: overlayfs -- overlayfs: create new inode in ovl_link + + -- Andy Whitcroft Thu, 15 Nov 2012 13:35:12 +0000 + +linux (3.7.0-1.7) raring; urgency=low + + [ Tim Gardner ] + + * [Config] Drop dependency on libaudit-dev + Its a universe package which causes an FTBS on the builders. + libaudit-dev is not strictly required for the perf tools build. + + -- Tim Gardner Wed, 14 Nov 2012 10:08:13 -0700 + +linux (3.7.0-1.6) raring; urgency=low + + [ Andy Whitcroft ] + + * [Config] enforce -- switch CONFIG_NVRAM to more readable form + * [Config] better encode the CONFIG_NVRAM constaint + * enforcer -- fix debugging output + + [ Ben Collins ] + + * [Config] Add custom_override rule to allow for alternate kernel + file/install + * [Config] Use SRCPKGNAME as prefix for indep linux headers package + + [ Tim Gardner ] + + * [Config] Dropped armel + * Drop highbank from ABI fetch list + * [Config] Use dh_prep instead of 'dh_clean -k' + * [Config] Build depend on libaudit-dev, libunwind8-dev for tools + * [Config] Document binary-indep dependency chain + * rebase to v3.7-rc5 + + [ Upstream Kernel Changes ] + + * rebase to v3.7-rc5 + + -- Tim Gardner Tue, 13 Nov 2012 07:13:37 -0500 + +linux (3.7.0-0.5) raring; urgency=low + + [ Tim Gardner ] + + * [Config] CONFIG_AMD_IOMMU_V2=m + - LP: #1071520 + * [Config] CONFIG_MTD_ONENAND_SIM=n for armel + Fixes FTBS + + -- Tim Gardner Thu, 08 Nov 2012 15:45:39 -0500 + +linux (3.7.0-0.4) raring; urgency=low + + [ Ben Collins ] + + * [Config] Update enforce rule for CONFIG_NVRAM to better suit flavours + + [ Tim Gardner ] + + * [Config] do_tools=false for arm + + -- Tim Gardner Thu, 08 Nov 2012 05:39:51 -0700 + +linux (3.7.0-0.3) raring; urgency=low + + [ Tim Gardner ] + + * [Config] CONFIG_DRM_EXYNOS_HDMI=n for armhf + * [Config] CONFIG_MTD_NAND_DOCG4=n for armel/armhf + * [Config] Drop highbank harder + + -- Tim Gardner Wed, 07 Nov 2012 18:11:45 +0000 + +linux (3.7.0-0.2) raring; urgency=low + + [ Andy Whitcroft ] + + * [Config] add fs/udf to linux-image to support DVD/CD formats in virtual + instances + - LP: #1066921 + * [Config] drop highbank builds + + [ Jeremy Kerr ] + + * SAUCE: efivarfs: Implement exclusive access for {get, set}_variable + - LP: #1063061 + + [ Leann Ogasawara ] + + * Reinstate dropped.txt from Ubuntu-3.7.0-0.1-rc1 + + [ Tim Gardner ] + + * [Config] Dropped powerpc/ppc64 in favour of the community kernel + * [Config] CONFIG_MODULE_SIG=y for amd64,i386, and highbank + * rebase to v3.7-rc4 + * SAUCE: MODSIGN: Emit error for incorrectly signed module + + [ Upstream Kernel Changes ] + + * rebase to v3.7-rc4 + + -- Tim Gardner Mon, 05 Nov 2012 05:35:41 -0700 + +linux (3.7.0-0.1) raring; urgency=low + + + [ Upstream Kernel Changes ] + + * rebase to v3.7-rc3 + - LP: #1056078 + + [ Upstream Kernel Changes ] + + * rebase to v3.7-rc2 + - LP: #1060729 + - LP: #1059523 + - LP: #1006690 + - LP: #1049623 + - LP: #1046512 + - LP: #1052499 + - LP: #1037642 + - LP: #559939 + - LP: #1052460 + - LP: #939161 + - LP: #1046734 + + -- Tim Gardner Tue, 02 Oct 2012 08:13:07 -0600 + +linux (3.6.0-0.1) UNRELEASED; urgency=low + + + [ Upstream Kernel Changes ] + + * rebase to v3.6 + + [ Upstream Kernel Changes ] + + * rebase to v3.6-rc7 + + [ Upstream Kernel Changes ] + + * rebase to v3.6-rc6 + - LP: #1000424 + + [ Upstream Kernel Changes ] + + * rebase to v3.6-rc5 + - LP: #1040077 + + [ Upstream Kernel Changes ] + + * rebase to v3.6-rc4 + + [ Upstream Kernel Changes ] + + * rebase to v3.6-rc3 + - LP: #1038651 + - LP: #1034779 + + -- Leann Ogasawara Tue, 24 Jul 2012 06:37:09 -0700 + +linux (3.5.0-6.6) quantal-proposed; urgency=low + + [ Andy Whitcroft ] + + * [Config] CONFIG_INET6_XFRM_MODE_ROUTEOPTIMIZATION enable IPv6 + experimental features + * SAUCE: highbank -- export clock functions for modules + * [Config] highbank -- reenable CONFIG_TOUCHSCREEN_W90X900 + * [Config] highbank -- renenable CONFIG_SERIO_AMBAKMI + * [Config] highbank -- reenable CONFIG_RFKILL_GPIO + * [Config] highbank -- reenable CONFIG_MMC_SDHCI_PXAV3 + * [Config] highbank -- reenable CONFIG_MMC_SDHCI_PXAV3 + * [Config] highbank -- reenable CONFIG_KEYBOARD_SAMSUNG + * [Config] highbank -- reenable CONFIG_FB_ARMCLCD + * [Config] highbank -- reenable CONFIG_DW_DMAC + * [Config] highbank -- reenable CONFIG_USB_R8A66597_HCD + * [Config] highbank -- reenable CONFIG_USB_MV_UDC + * [Config] highbank -- reenable CONFIG_USB_DWC3 + * [Config] highbank -- reenable CONFIG_SATA_MV + * [Config] highbank -- reenable CONFIG_PATA_ARASAN_CF + * [Config] highbank -- CONFIG_CAN_C_CAN_PLATFORM + * [Config] highbank -- reenable CONFIG_MMC_ARMMMCI + * [Config] highbank -- reenable CONFIG_SERIAL_AMBA_PL010 + * [Config] highbank -- reenable CONFIG_ATMEL_PWM + * [Config] highbank -- enable CONFIG_CHECKPOINT_RESTORE + * [Config] highbank -- enable CONFIG_EXPERT + * [Config] highbank -- enable CONFIG_CHECKPOINT_RESTORE + * [Config] enable CONFIG_USB_DYNAMIC_MINORS + * [Config] enable CONFIG_USB_EHCI_TT_NEWSCHED + * [Config] enable CONFIG_USB_ETH_EEM + * [Config] enable CONFIG_USB_HCD_BCMA/CONFIG_USB_HCD_SSB + * [Config] disable CONFIG_USB_M66592 + * [Config] enable CONFIG_USB_NET2272 + * [Config] enable CONFIG_USB_R8A66597 + * [Config] annotate: CONFIG_USB_OMAP not required for our h/w + * [Config] set CONFIG_USB_MUSB_HDRC=m for omap + * [Config] annotate: CONFIG_USB_G_MULTI fix rule + * [Config] CONFIG_USB_GPIO_VBUS=m for OMAP + * [Config] Enable CONFIG_DRM_AST/_CIRRUS_QEMU/_MGAG200 + * [Config] sync configuration armhf omap -> armel omap + * [Config] annotate: CONFIG_IIO triggers build failures on OMAP4 + * [Config] disable CONFIG_OMAP_IOVMM is deprecated + + [ Bryan Wu ] + + * [Config] change default IO scheduler from CFQ to Deadline + + [ Leann Ogasawara ] + + * Revert "[Config] Temporarily disable CONFIG_MV643XX_ETH on powerpc" + * [Config] Disable CONFIG_MOUSE_INPORT + + [ Tim Gardner ] + + * SAUCE: firmware: Update bnx2x to current firmware version 7.2.51 + * [Config] Add bnx2x firmware to nic-modules udeb + * SAUCE: Add script to convert firmware to ihex format + * SAUCE: firmware: Upgrade bnx2 to current versions + * [Config] Add tigon firmware to nic-modules udeb + * [Config] CONFIG_EARLY_PRINTK_DBGP=y + - LP: #1026761 + * SAUCE: Remove redundant cis firmware + * SAUCE: Remove redundant emi26 firmware + * SAUCE: Remove redundant ttusb-budget firmware + * SAUCE: Remove redundant sun/cassini firmware + * SAUCE: Remove redundant ositech/Xilinx7OD firmware + * SAUCE: Remove redundant 3com/typhoon.bin firmware + * SAUCE: Remove redundant yamaha/ds1 firmware + * SAUCE: Remove redundant keyspan_pda firmware + * rebase to v3.5 + + [ Upstream Kernel Changes ] + + * rebase to v3.5 + - LP: #1027828 + + -- Leann Ogasawara Mon, 23 Jul 2012 05:57:04 -0700 + +linux (3.5.0-5.5) quantal-proposed; urgency=low + + [ Andy Whitcroft ] + + * [Config] annotations: initial import of configuration annotations + + [ Bryan Wu ] + + * [Config] enforcer -- add CONFIG_I2C_DESIGNWARE_PLATFORM enforce checker + + [ Leann Ogasawara ] + + * Rebase to v3.5-rc7 + + [ Manoj Iyer ] + + * SAUCE: Bluetooth: btusb: Add vendor specific ID (0a5c:21f4) BCM20702A0 + - LP: #1010281 + + [ Tim Gardner ] + + * [Config] enable CONFIG_I2C_HELPER_AUTO for all flavours as policy + expects + * [Config] CONFIG_I2O_CONFIG_OLD_IOCTL=n + * [Config] CONFIG_BRIDGE_EBT_ULOG=n + * [Config] CONFIG_IP_NF_QUEUE=n + * [Config] CONFIG_MTD_DOC2000=n + * [Config] CONFIG_PRINT_QUOTA_WARNING=n + * [Config] CONFIG_PRISM54=n + * [Config] CONFIG_SCx200_I2C=n + * [Config] CONFIG_USB_ANNOUNCE_NEW_DEVICES=y + + [ Upstream Kernel Changes ] + + * rebase to v3.5-rc7 + + -- Leann Ogasawara Mon, 16 Jul 2012 15:38:41 -0700 + +linux (3.5.0-4.4) quantal-proposed; urgency=low + + [ Andy Whitcroft ] + + * [Packaging] getabis should be extracting all packages + - LP: #1021174 + * [Config] getabis -- series uses linux-image-extra + - LP: #1021174 + * rebase to v3.5-rc6 + + [ Bryan Wu ] + + * [Config] built-in CONFIG_MICREL_PHY as other PHY drivers for all + flavours + * [Config] sync CONFIG_MOUSE_PS2_ config for all flavours + + [ Leann Ogasawara ] + + * [Config] Enable CONFIG_RT2800USB_RT35XX and CONFIG_RT2800USB_RT53XX + - LP: #1019561 + + [ Paolo Pisati ] + + * [Config] SND_OMAP_SOC, SND_OMAP_SOC_MCBSP and SND_OMAP_SOC_OMAP3_BEAGLE =y + - LP: #1019321 + + [ Stefan Bader ] + + * SAUCE: (pre-up) net: dont use __netdev_alloc_skb for bounce buffer + - LP: #1018456 + * (config) Disable ACPI_PROCFS_POWER + + [ Tim Gardner ] + + * [Config] CONFIG_ACPI_BGRT=y + * Extract firmware module info during getabi + - LP: #1021174 + + [ Upstream Kernel Changes ] + + * rebase to v3.5-rc6 + + -- Leann Ogasawara Mon, 09 Jul 2012 08:50:20 -0700 + +linux (3.5.0-3.3) quantal-proposed; urgency=low + + [ Andy Whitcroft ] + + * [Config] enable CONFIG_MEMTEST=y + - LP: #1004535 + * [Config] config-check: add support for a cut operation + * [Config] enforcer -- switch to cut where appropriate + + [ Leann Ogasawara ] + + * Rebase to v3.5-rc5 + * [Config] Updateconfigs after rebase to v3.5-rc5 + + [ Luis Henriques ] + + * SAUCE: ocfs2: Fix NULL pointer dereferrence in + __ocfs2_change_file_space + - LP: #1006012 + + [ Seth Forshee ] + + * SAUCE: (drop after 3.5) drm/i915: ignore pipe select bit when checking + for LVDS register initialization + - LP: #1012800 + + [ Upstream Kernel Changes ] + + * rebase to v3.5-rc5 + - LP: #1013183 + - LP: #1017017 + - LP: #884652 + + -- Leann Ogasawara Mon, 02 Jul 2012 06:41:58 -0700 + +linux (3.5.0-2.2) quantal-proposed; urgency=low + + [ Andy Whitcroft ] + + * rebase to v3.5-rc4 + + [ Arend van Spriel ] + + * SAUCE: (drop after 3.5) brcmsmac: fix NULL pointer crash in + brcms_c_regd_init() + - LP: #950320 + + [ Bryan Wu ] + + * [Config] Sync CONFIG_CGROUP_MEM_RES_CTLR_SWAP for ARM + + [ Chris J Arges ] + + * PACKAGING: add .gnu_debuglink sections to .ko files + - LP: #669641 + + [ Leann Ogasawara ] + + * d-i: Add hid-generic to input-modules + - LP: #1017879 + + [ Ming Lei ] + + * SAUCE: Revert "mmc: omap_hsmmc: Enable Auto CMD12" + - LP: #1017717, #225 + + [ Paolo Pisati ] + + * SAUCE: Revert "Fix OMAP EHCI suspend/resume failure (i693)" + - LP: #1017718 + * [Config] Disable generic USB_EHCI_HCD_PLATFORM on omap3 + + [ Seth Forshee ] + + * SAUCE: (drop after 3.5) brcm80211: smac: don't set up tx power limits + during initialization + - LP: #950320 + * SAUCE: (drop after 3.5) brcm80211: smac: always set channel specified + by mac80211 + - LP: #950320 + * SAUCE: (drop after 3.5) brcm80211: smac: remove unused code for 40MHz + channels + - LP: #950320 + * SAUCE: (drop after 3.5) brcm80211: smac: clean up channel.c + - LP: #950320 + * SAUCE: (drop after 3.5) brcm80211: smac: inform mac80211 of the X2 + regulatory domain + - LP: #950320 + * SAUCE: (drop after 3.5) brcm80211: smac: enable/disable radio on + regulatory updates + - LP: #950320 + * SAUCE: (drop after 3.5) brcm80211: smac: use mac80211 channel data for + tx power limits + - LP: #950320 + * SAUCE: (drop after 3.5) brcm80211: smac: don't validate channels + against internal regulatory data + - LP: #950320 + * SAUCE: (drop after 3.5) brcm80211: smac: use current regulatory domain + when checking whether OFDM is allowed + - LP: #950320 + + [ Tim Gardner ] + + * [Config] Enable CONFIG_CGROUPS for highbank + - LP: #1014692 + * [Config] FB_OMAP*=y and PANEL_TFP410=y + + [ Upstream Kernel Changes ] + + * rebase to v3.5-rc4 + + -- Leann Ogasawara Tue, 26 Jun 2012 06:21:05 -0700 + +linux (3.5.0-1.1) quantal-proposed; urgency=low + + [ Andy Whitcroft ] + + * [Config] highbank -- enable CONFIG_RFKILL=y and CONFIG_CAN=m + + [ Leann Ogasawara ] + + * Rebase to v3.5-rc1 + * [Config] Remove USB_DEVICEFS from the config enforcer + * [Config] Updateconfigs after rebase to v3.5-rc1 + * [Config] Temporarily disable CONFIG_MACH_NOKIA_RX51 on arm + * [Config] Temporarily disable CONFIG_TOUCHSCREEN_EETI on arm + * [Config] Temporarily disable CONFIG_TOUCHSCREEN_EGALAX on arm + * [Config] Temporarily disable CONFIG_EZX_PCAP on arm + * [Config] Temporarily disable CONFIG_LIS3L02DQ on arm + * [Config] Temporarily disable CONFIG_TI_CPSW on arm + * [Config] Temporarily disable CONFIG_GPIO_EM on arm + * [Config] Temporarily disable CONFIG_SERIAL_8250_EM on armhf + * [Config] Temporarily disable CONFIG_STMMAC_ETH on armhf + * [Config] Temporarily disable CONFIG_HW_RANDOM_ATMEL on armhf + * Rebase to v3.5-rc2 + * [Config] Updateconfigs after rebase to v3.5-rc2 + * [Config] Temporarily disable CONFIG_MV643XX_ETH on powerpc + * Rebase to v3.5-rc3 + * [Config] Updateconfigs after rebase to v3.5-rc3 + + [ Paul Mundt ] + + * SAUCE: fix bug.h's inclusion of kernel.h + + [ Stefan Bader ] + + * SAUCE: Fix compile failures of dm-raid45 + * [Config] Enable dm-raid45 + * Move dependency on crda to extra package + - LP: #657901 + * SAUCE: Mask CR4 writes on older Xen hypervisors + + [ Upstream Kernel Changes ] + + * rebase to v3.5-rc3 + - LP: #993162 + - LP: #925577 + * rebase to v3.5-rc2 + * rebase to v3.5-rc1 + - LP: #955892 + - LP: #978038 + - LP: #987371 + - LP: #929545 + - LP: #942316 + - LP: #903853 + + -- Leann Ogasawara Fri, 08 Jun 2012 14:28:46 -0700 + +linux (3.4.0-5.11) quantal-proposed; urgency=low + + [ Leann Ogasawara ] + + * [Config] Disable CONFIG_ARM_LPAE + - LP: #1009061 + + [ Oleksij Rempel ] + + * SAUCE: b43: do not call ieee80211_unregister_hw if we are not registred + - LP: #1008905 + + [ Paolo Pisati ] + + * [Config] omap3: MFD_OMAP_USB_HOST is usb host in omap2+. + - LP: #1009061 + + -- Leann Ogasawara Tue, 05 Jun 2012 08:06:28 -0700 + +linux (3.4.0-4.10) quantal; urgency=low + + [ Leann Ogasawara ] + + * Temporarily disable ABI and module check + + -- Leann Ogasawara Mon, 04 Jun 2012 20:27:31 -0700 + +linux (3.4.0-4.9) quantal; urgency=low + + [ Andy Whitcroft ] + + * [Config] fix config split to avoid the shared config + * [Config] updateconfigs following split config fix + * [Config] linux-image-extras needs full postinst + * [Config] CONFIG_BLK_DEV_NVME commonise across architectures + * [Config] CONFIG_HP_WATCHDOG enable as module + * [Config] CONFIG_PDC_ADMA is not boot essential + * [Config] CONFIG_XEN_ACPI_PROCESSOR should be enabled on x86 + * [Config] CONFIG_VT6655/CONFIG_VT6656=m + * [Config] CONFIG_TRANZPORT=m commonise + * [Config] CONFIG_R3964=m commonise + * [Config] CONFIG_SCSI_DH=m commonise + * [Config] CONFIG_SCSI_IBMVSCSIS=m commonise + * [Config] CONFIG_AMD_PHY=y phys are not autoloadable + * [Config] CONFIG_SCSI_QLA_ISCSI=m commonise + * [Config] CONFIG_SCSI_SPI_ATTR=m commonise + * [Config] CONFIG_USB_SN9C102 is deprecated disable + * [Config] CONFIG_USB_SI470X=m commonise + * [Config] CONFIG_USB_ET61X251=m commonise + * [Config] CONFIG_RTS_PSTOR=m commonise + * [Config] CONFIG_SCANLOG=m commonise + * [Config] CONFIG_SCSI_SYM53C8XX_2=m commonise + * [Config] CONFIG_SM_FTL=m commonise + * [Config] CONFIG_SOLO6X10=m commonise + * [Config] CONFIG_SND_PCM_OSS=n using pulseaudio emulation instead + * [Config] CONFIG_SPI_DESIGNWARE=m commonise + * [Config] CONFIG_SPI_SPIDEV=m commonise + * [Config] CONFIG_TABLET_USB_WACOM=m commonise + * [Config] CONFIG_TPS65010=m commonise + * [Config] CONFIG_STE10XP=y commonise + * [Config] CONFIG_X25_ASY=m commonise + * [Config] CONFIG_USB_MON=m commonise + * [Config] CONFIG_VME_BUS=m commonise + * [Config] CONFIG_W35UND=m commonise + * [Config] -CONFIG_TCG_TPM=y commonise + * [Config] highbank -- commonise filesystems + * [Config] highbank -- commonise subsystems + * [Config] highbank -- commonise network protocols + * [Config] highbank -- commonise input drivers + * [Config] highbank -- commonise CRYPTO options + * [Config] highbank -- commonise HID options + * [Config] highbank -- commonise sensors options + * [Config] highbank -- commonise EXPORTFS/FHANDLE + * [Config] highbank -- commonise CONFIG_CRYPTO_LZO + * [Config] highbank -- commonise ENCRYPTED_KEYS + * [Config] highbank -- commonise CONFIG_ATALK + * [Config] highbank -- commonise INET/INET6 + * [Config] highbank -- commonise NLS + * [Config] highbank -- commonise BLK/CHR + * [Config] highbank -- CONFIG_EXT2_FS=y boot essential on highbank + * [Config] highbank -- commonise INET/INET6 part 2 + * [Config] highbank -- commonise PHY settings + * [Config] highbank -- commonise CRC settings + * [Config] highbank -- commonise BINFMT settings + * [Config] highbank -- commonise DM settings + * [Config] highbank -- commonise RTC_DRV settings + * [Config] highbank -- commonise KEYBOARD/MOUSE settings + * [Config] highbank -- commonise USB settings + * [Config] highbank -- commonise GPIO settings + * [Config] highbank -- commonise I2C settings + * [Config] highbank -- commonise numerous subsystem selectors + * [Config] highbank -- commonise A-C modules missmatches + * [Config] highbank -- commonise D-F modules missmatches + * [Config] CONFIG_AUDIT_LOGINUID_IMMUTABLE incompatible with upstart + * [Config] highbank -- commonise G-I modules missmatches + * [Config] highbank -- commonise J-L modules missmatches + * [Config] highbank -- commonise M modules missmatches + * [Config] highbank -- commonise N-P modules missmatches + * [Config] highbank -- commonise Q-R modules missmatches + * [Config] highbank -- commonise S modules missmatches -- part 1 + * [Config] highbank -- commonise S modules missmatches -- part 2 + * [Config] highbank -- commonise T modules missmatches + * [Config] highbank -- commonise U-Z modules missmatches + + [ Ike Panhc ] + + * [Config] add highbank flavour + - LP: #1000831 + + [ Mark Langsdorf ] + + * SAUCE: arm highbank: add support for pl320-ipc driver + - LP: #1000831 + + [ Rob Herring ] + + * SAUCE: input: add a key driver for highbank + - LP: #1000831 + * SAUCE: ARM: highbank: Add smc calls to enable/disable the L2 + - LP: #1000831 + * SAUCE: force DMA buffers to non-bufferable on highbank + - LP: #1000831 + * SAUCE: net: calxedaxgmac: fix net timeout recovery + - LP: #1000831 + + [ Tim Gardner ] + + * [Config] CONFIG_IWLWIFI_EXPERIMENTAL_MFP=n + * [Config] CONFIG_PCI_REALLOC_ENABLE_AUTO=y + * [Config] CONFIG_CIFS_EXPERIMENTAL has disappeared + * [Config] Homogenize CIFS configs across all arches + * [Config] armhf should not be skipabi or skipmodules + - LP: #1006913 + + -- Leann Ogasawara Mon, 04 Jun 2012 05:52:49 -0700 + +linux (3.4.0-3.8) quantal; urgency=low + + [ Andy Whitcroft ] + + * [Config] include include/generated/compile.h + - LP: #942569 + * [Config] fix up postinst to ensure we know which error is which + - LP: #1002388 + + [ Herton Ronaldo Krzesinski ] + + * SAUCE: async_populate_rootfs: fix build warnings + - LP: #1003417 + + [ John Johansen ] + + * Revert "SAUCE: AppArmor: Add the ability to mediate mount" + * SAUCE: apparmor: Add the ability to mediate mount + * SAUCE: AppArmor: basic networking rules + * SAUCE: apparmor: fix profile lookup for unconfined + - LP: #978038, #987371 + * SAUCE: apparmor: fix long path failure due to disconnected path + - LP: #955892 + + [ Mario Limonciello ] + + * SAUCE: dell-laptop: rfkill blacklist Dell XPS 13z, 15 + - LP: #901410 + + [ Stefan Bader ] + + * (config) Built-in xen-acpi-processor + + [ Tim Gardner ] + + * [Config] CONFIG_NET_DSA=m + - LP: #1004148 + * [Config] Ensure CONFIG_XEN_ACPI_PROCESSOR=y for amd64 + + -- Leann Ogasawara Fri, 25 May 2012 11:38:33 -0700 + +linux (3.4.0-3.7) quantal; urgency=low + + [ Andy Whitcroft ] + + * [Config] drop the virtual flavour in favour of a split generic et al + * [Config] enforcer -- drop IDLE enforcement + * [Config] enable CONFIG_SCSI_VIRTIO=m for amd64 + * [Config] updateconfigs following removal of -virtual + + [ Leann Ogasawara ] + + * Rebase to v3.4 + + [ Seth Forshee ] + + * [Config] disable CONFIG_B43_BCMA_EXTRA + + [ Tim Gardner ] + + * [Config] Check for extras when building udebs + * [Config] Collapsed generic-pae into generic [i386] + + [ Upstream Kernel Changes ] + + * rebase to v3.4 + + -- Leann Ogasawara Mon, 21 May 2012 07:23:47 -0700 + +linux (3.4.0-2.6) quantal; urgency=low + + [ Andy Whitcroft ] + + * Revert "ubuntu: overlayfs -- overlayfs: update touch_atime() usage" + * Revert "ubuntu: overlayfs -- overlayfs: switch from d_alloc_root() to + d_make_root()" + * Revert "ubuntu: overlayfs -- overlayfs: follow header cleanup" + * Revert "ubuntu: overlayfs -- overlayfs: apply device cgroup and + security permissions to overlay files" + * Revert "ubuntu: overlayfs -- fs: limit filesystem stacking depth" + * Revert "ubuntu: overlayfs -- overlay: overlay filesystem documentation" + * Revert "ubuntu: overlayfs -- overlayfs: implement show_options" + * Revert "ubuntu: overlayfs -- overlayfs: add statfs support" + * Revert "ubuntu: overlayfs -- overlay filesystem" + * Revert "ubuntu: overlayfs -- vfs: introduce clone_private_mount()" + * Revert "ubuntu: overlayfs -- vfs: export do_splice_direct() to modules" + * Revert "ubuntu: overlayfs -- vfs: add i_op->open()" + * Revert "ubuntu: overlayfs -- vfs: pass struct path to __dentry_open()" + * ubuntu: overlayfs -- overlayfs: add statfs support + * ubuntu: overlayfs -- inode_only_permission: export inode level + permissions checks + * ubuntu: overlayfs -- overlayfs: switch to use inode_only_permissions + + [ Erez Zadok ] + + * ubuntu: overlayfs -- overlayfs: implement show_options + + [ Miklos Szeredi ] + + * ubuntu: overlayfs -- vfs: pass struct path to __dentry_open() + * ubuntu: overlayfs -- vfs: add i_op->open() + * ubuntu: overlayfs -- vfs: export do_splice_direct() to modules + * ubuntu: overlayfs -- vfs: introduce clone_private_mount() + * ubuntu: overlayfs -- overlay filesystem + * ubuntu: overlayfs -- fs: limit filesystem stacking depth + + [ Neil Brown ] + + * ubuntu: overlayfs -- overlay: overlay filesystem documentation + + [ Robin Dong ] + + * ubuntu: overlayfs -- overlayfs: fix possible leak in ovl_new_inode + * ubuntu: overlayfs -- overlayfs: create new inode in ovl_link + + [ Tim Gardner ] + + * [Config] perarch and indep tools builds need separate build directories + * Prevent upgrading a non-PAE CPU + * perf is not parallel build safe + + -- Leann Ogasawara Wed, 16 May 2012 08:43:18 -0700 + +linux (3.4.0-2.5) quantal; urgency=low + + [ Andy Whitcroft ] + + * [Config] perarch and indep tools builds need separate build directories + + [ Tim Gardner ] + + * Prevent upgrading a non-PAE CPU + * [Config] build debug + * [Config] perf tools are not parallel build safe + + -- Leann Ogasawara Tue, 15 May 2012 11:37:53 -0700 + +linux (3.4.0-2.4) quantal; urgency=low + + [ Leann Ogasawara ] + + * Revert "SAUCE: fsam7400: use UMH_WAIT_PROC consistently" + * Revert "ubuntu: fsam7400 select CHECK_SIGNATURE and depend on X86" + * Revert "ubuntu: fsam7400: Depend on CHECK_SIGNATURE" + * Revert "ubuntu: fsam7400 -- Cleanup Makefile" + * Revert "ubuntu: fsam7400 -- kill switch for Fujitsu Siemens Amilo M + 7400" + * Revert "ubuntu: omnibook: fix source file newline" + * Revert "ubuntu: omnibook -- update BOM" + * Revert "SAUCE: Make CONFIG_{OMNIBOOK, AVERATEC_5100P, PACKARDBELL_E5} + depend on X86" + * Revert "ubuntu: omnibook -- Added missing BOM file" + * Revert "ubuntu: omnibook -- support Toshiba (HP) netbooks" + * Revert "ubuntu: nx-emu - i386: mmap randomization for executable + mappings" + * Revert "SAUCE: disable_nx should not be in __cpuinitdata section for + X86_32" + * Revert "ubuntu: nx-emu - i386: NX emulation" + * Revert "ubuntu: rfkill drivers -- version 1.3" + * Temporarily disable module check + * [Config] Remove CONFIG_FSAM7400 + * [Config] Remove CONFIG_OMNIBOOK + * [Config] Update configs + * Rebase to v3.4-rc7 + * SAUCE: genirq: export handle_edge_irq() and irq_to_desc() + + [ Tim Gardner ] + + * Updated generic-pae description + * Rebase to v3.4-rc6 + * install-tools depends on build targets + + [ Upstream Kernel Changes ] + + * kconfig: in debug mode some 0 length message prints occur + * rebase to v3.4-rc7 + * rebase to v3.3-rc6 + + -- Leann Ogasawara Mon, 14 May 2012 08:22:56 -0700 + +linux (3.4.0-1.3) quantal; urgency=low + + [ Andy Whitcroft ] + + * [Config] control.stub is an intermediate product not a dependancy + - LP: #992414 + + [ Leann Ogasawara ] + + * remove i386 generic from getabis + + [ Upstream Kernel Changes ] + + * (pre-stable) b43: only reload config after successful initialization + - LP: #950295 + + -- Leann Ogasawara Wed, 02 May 2012 09:48:14 -0700 + +linux (3.4.0-1.2) quantal; urgency=low + + [ Andy Whitcroft ] + + * [Config] add build depends for flex, bison and pkg-config + + -- Andy Whitcroft Tue, 01 May 2012 13:15:41 +0100 + +linux (3.4.0-1.1) quantal; urgency=low + + [ Andy Whitcroft ] + + * ubuntu: overlayfs -- overlayfs: apply device cgroup and security + permissions to overlay files + - LP: #915941, #918212 + - CVE-2012-0055 + + [ Leann Ogasawara ] + + * Open Q + * Rebase to v3.4-rc5 + * [Config] Temporarily disable CONFIG_TOUCHSCREEN_EETI on arm + * [Config] Temporarily disable CONFIG_TOUCHSCREEN_EGALAX on arm + * [Config] Temporarily disable CONFIG_EZX_PCAP on arm + * [Config] Temporarily disable CONFIG_MFD_OMAP_USB_HOST on arm + * [Config] Temporarily disable CONFIG_LIS3L02DQ on arm + * [Config] Temporarily disable CONFIG_USB_EHCI_HCD_PLATFORM on arm + * [Config] Temporarily disable CONFIG_TI_CPSW on arm + * [Config] Temporarily disable CONFIG_AX88796 on arm + + [ Upstream Kernel Changes ] + + * vfs: pass struct path to __dentry_open() + * vfs: add i_op->open() + * vfs: export do_splice_direct() to modules + * vfs: introduce clone_private_mount() + * overlay filesystem + * overlayfs: add statfs support + * overlayfs: implement show_options + * overlay: overlay filesystem documentation + * fs: limit filesystem stacking depth + * overlayfs: follow header cleanup + * overlayfs: switch from d_alloc_root() to d_make_root() + * overlayfs: update touch_atime() usage + * rebase to v3.4-rc5 + - LP: #950490 + * rebase to v3.4-rc4 + * rebase to v3.4-rc3 + * rebase to v3.4-rc2 + * rebase to v3.4-rc1 + * rebase to v3.3 + * rebase to v3.3-rc7 + * rebase to v3.3-rc6 + * rebase to v3.3-rc5 + * rebase to v3.3-rc4 + - LP: #900802 + - LP: #930842 + * rebase to v3.3-rc3 + - LP: #924320 + - LP: #923316 + - LP: #923409 + - LP: #918254 + * rebase to v3.3-rc2 + * rebase to v3.3-rc1 + - LP: #795823 + - LP: #909419 + - LP: #910792 + - LP: #878701 + - LP: #724831 + + -- Leann Ogasawara Wed, 25 Jan 2012 06:50:04 -0800 + +linux (3.2.0-10.18) precise; urgency=low + + [ Tim Gardner ] + + * SAUCE: ecryptfs: Print inode on metadata error + + [ Upstream Kernel Changes ] + + * Revert "proc: enable writing to /proc/pid/mem" + - LP: #919115 + - CVE-2012-0056 + * (pre-stable) ALSA: HDA: Use LPIB position fix for Macbook Pro 7, 1 + - LP: #909419 + + -- Andy Whitcroft Tue, 24 Jan 2012 10:15:12 +0000 + +linux (3.2.0-10.17) precise; urgency=low + + [ Andy Whitcroft ] + + * Revert "SAUCE: overlayfs -- fs: limit filesystem stacking depth" + * Revert "SAUCE: overlayfs -- overlay: overlay filesystem documentation" + * Revert "SAUCE: overlayfs -- overlayfs: implement show_options" + * Revert "SAUCE: overlayfs -- overlayfs: add statfs support" + * Revert "SAUCE: overlayfs -- overlay filesystem" + * Revert "SAUCE: overlayfs -- vfs: introduce clone_private_mount()" + * Revert "SAUCE: overlayfs -- vfs: export do_splice_direct() to modules" + * Revert "SAUCE: overlayfs -- vfs: add i_op->open()" + * ensure debian/ is not excluded from git by default + * add new scripting to handle buglinks in rebases + * ubuntu: overlayfs -- overlayfs: add statfs support + * ubuntu: overlayfs -- overlayfs: apply device cgroup and security + permissions to overlay files + - LP: #915941, #918212 + - CVE-2012-0055 + + [ Erez Zadok ] + + * ubuntu: overlayfs -- overlayfs: implement show_options + + [ Leann Ogasawara ] + + * Revert "SAUCE: dmar: disable if ricoh multifunction detected" + * [Config] Disable CONFIG_INTEL_IOMMU_DEFAULT_ON + - LP: #907377, #911236 + * [Config] Enable CONFIG_IRQ_REMAP + + [ Miklos Szeredi ] + + * ubuntu: overlayfs -- vfs: pass struct path to __dentry_open() + * ubuntu: overlayfs -- vfs: add i_op->open() + * ubuntu: overlayfs -- vfs: export do_splice_direct() to modules + * ubuntu: overlayfs -- vfs: introduce clone_private_mount() + * ubuntu: overlayfs -- overlay filesystem + * ubuntu: overlayfs -- fs: limit filesystem stacking depth + + [ Neil Brown ] + + * ubuntu: overlayfs -- overlay: overlay filesystem documentation + + [ Upstream Kernel Changes ] + + * (pre-stable) x86/PCI: amd: factor out MMCONFIG discovery + - LP: #647043 + * (pre-stable) PNP: work around Dell 1536/1546 BIOS MMCONFIG bug that + breaks USB + - LP: #647043 + + -- Leann Ogasawara Mon, 16 Jan 2012 07:10:08 -0800 + +linux (3.2.0-9.16) precise; urgency=low + + [ Andy Whitcroft ] + + * [Config] Enable numerous CONFIG_VIDEO_* cards on ARM + * [Config] pull ARM sound modules =m + * [Config] CONFIG_RTC_DRV_TEST is for testing only + * [Config] CONFIG_USB_DUMMY_HCD is testing only + * [Config] CONFIG_USB_FILE_STORAGE is deprecated + + [ Leann Ogasawara ] + + * Revert "[Config] Temporarily disable CONFIG_CAN_TI_HECC on armel" + * [Config] Enable CONFIG_HW_RANDOM_PASEMI=m + * [Config] Enable CONFIG_MMC_TMIO=m + * [Config] Enable CONFIG_MTD_NAND_FSL_ELBC=m + * [Config] Enable CONFIG_ISI=m + * [Config] Enable CONFIG_MMC=y + * [Config] Enable CONFIG_LIRC_PARALLEL=m + * [Config] Enable CONFIG_MAC_EMUMOUSEBTN=m + * [Config] Enable CONFIG_CHR_DEV_SG=y + * [Config] Enable CONFIG_GPIO_PCA953X=m + * [Config] Enable CONFIG_GPIO_TWL4030=m + * [Config] Enable CONFIG_INET_DIAG=m + * [Config] Enable CONFIG_NLS_ISO8859_1=m + * [Config] Enable CONFIG_NVRAM=m + * [Config] Enable CONFIG_SLIP=m + * [Config] Enable CONFIG_PC300TOO=m + * [Config] Enable CONFIG_TUN=y + * [Config] Enable CONFIG_NET_CLS_CGROUP=m + * [Config] Enable CONFIG_THERMAL=y + * [Config] Enable CONFIG_PPP=y + * [Config] Enable CONFIG_PCI_STUB=m + * Rebase to v3.2.1 + * [Config] Enable CONFIG_RTL8192E=m + * [Config] Enable CONFIG_RTS5139=m + + [ Stefan Bader ] + + * [Config] Make CONFIG_VIRTIO_(NET|BLK)=y + + [ Upstream Kernel Changes ] + + * ARM: restart: add restart hook to machine_desc record + * ARM: restart: allow platforms more flexibility specifying restart mode + * ARM: restart: move reboot failure handing into machine_restart() + * ARM: restart: remove argument to setup_mm_for_reboot() + * ARM: 7159/1: OMAP: Introduce local common.h files + * ARM: restart: only perform setup for restart when soft-restarting + * ARM: 7189/1: OMAP3: Fix build break in cpuidle34xx.c because of irq + function + * ARM: idmap: populate identity map pgd at init time using .init.text + * ARM: suspend: use idmap_pgd instead of suspend_pgd + * ARM: proc-*.S: place cpu_reset functions into .idmap.text section + * ARM: idmap: use idmap_pgd when setting up mm for reboot + * ARM: head.S: only include __turn_mmu_on in the initial identity mapping + * ARM: SMP: use idmap_pgd for mapping MMU enable during secondary booting + * ARM: 7194/1: OMAP: Fix build after a merge between v3.2-rc4 and ARM + restart changes + * ARM: lib: add call_with_stack function for safely changing stack + * ARM: reset: implement soft_restart for jumping to a physical address + * ARM: stop: execute platform callback from cpu_stop code + * ARM: kexec: use soft_restart for branching to the reboot buffer + * ARM: restart: omap: use new restart hook + * topdown mmap support + - LP: #861296 + + [ Upstream Kernel Changes ] + + * Rebase to v3.2.1 + + -- Leann Ogasawara Fri, 13 Jan 2012 20:32:08 +0100 + +linux (3.2.0-8.15) precise; urgency=low + + [ Leann Ogasawara ] + + * [Config] Disable CONFIG_ACPI_PROCFS + * Remove server from getabis + * Temporarily disable module check + * [Config] Disable CONFIG_MTD_TESTS + * [Config] Disable CONFIG_X86_E_POWERSAVER + * [Config] Set CONFIG_ARCNET=m + * [Config] Enable CONFIG_ATM_DUMMY=m + * [Config] Enable CONFIG_BLK_DEV_MD=y + * ubuntu: fsam7400 select CHECK_SIGNATURE and depend on X86 + * [Config] Enable CONFIG_BLK_DEV_SD=y + * [Config] Enable CONFIG_BLK_DEV_SR=y + * [Config] Enable CONFIG_BLK_DEV_UB=m + * [Config] Enable CONFIG_COPS=m + * [Config] Enable CONFIG_DVB_USB_EC168=m + * [Config] Enable CONFIG_ENC28J60=m + * [Config] Enable CONFIG_FB_UVESA=m + * [Config] Enable CONFIG_FB_ATY=m + * [Config] Enable CONFIG_BROADCOM_PHY=y + * [Config] Enable CONFIG_CICADA_PHY=y + * [Config] Enable CONFIG_DAVICOM_PHY=y + * [Config] Enable CONFIG_ICPLUS_PHY=y + * [Config] Enable CONFIG_LSI_ET1011C_PHY=y + * [Config] Enable CONFIG_LXT_PHY=y + * [Config] Enable CONFIG_MARVELL_PHY=y + * [Config] Enable CONFIG_NATIONAL_PHY=y + * [Config] Enable CONFIG_QSEMI_PHY=y + * [Config] Enable CONFIG_SMSC_PHY=y + * [Config] Enable CONFIG_VITESSE_PHY=y + * Add 3w-sas to scsi-modules + - LP: #776542 + + [ Mathieu Trudel-Lapierre ] + + * SAUCE: ipv6: make the net.ipv6.conf.all.use_tempaddr sysctl propagate + to interface settings + + [ Paolo Pisati ] + + * Revert "SAUCE: omap3: beagle: if rev unknown, assume xM revision C" + - LP: #912199 + * Revert "SAUCE: omap3: beagle: detect new xM revision B" + - LP: #912199 + * Revert "SAUCE: omap3: beaglexm: fix DVI initialization" + - LP: #912199 + + [ Upstream Kernel Changes ] + + * Bluetooth: Add support for BCM20702A0 [0a5c:21e3] + - LP: #906832 + + -- Leann Ogasawara Fri, 06 Jan 2012 10:02:03 -0800 + +linux (3.2.0-8.14) precise; urgency=low + + [ Andy Whitcroft ] + + * [Config] enable CONFIG_SND_USB_6FIRE + - LP: #912197 + * rebase to mainline v3.2 final release + * updateconfigs following rebase to v3.2 final + * ubuntu: AUFS -- add BOM and automated update script + * ubuntu: AUFS -- include the aufs_types.h file in linux-libc-headers + - LP: #684666 + * ubuntu: AUFS -- update aufs-update to track new locations of headers + * ubuntu: AUFS -- clean up the aufs updater and BOM + * ubuntu: AUFS -- documentation on updating aufs2 + * ubuntu: AUFS -- aufs3-base.patch + * ubuntu: AUFS -- aufs3-standalone.patch + * ubuntu: AUFS -- fix undefined __devcgroup_inode_permission + * ubuntu: AUFS -- fix undefined security_path_link + * ubuntu: AUFS -- update to 4cf5db36bcd9748e8e7270022f295f84d1fc2245 + * ubuntu: AUFS -- updateconfigs following update + * ubuntu: AUFS -- suppress benign plink warning messages + - LP: #621195 + * ubuntu: AUFS -- enable in config and makefile + * ubuntu: AUFS -- disable in favor of overlayfs + * [Config] linux-virtual -- should include the extX modules + - LP: #912308 + + [ Tyler Hicks ] + + * SAUCE: eCryptfs: Improve statfs reporting + - LP: #885744 + + [ Upstream Kernel Changes ] + + * rebase to upstream v3.2 + + -- Leann Ogasawara Mon, 26 Dec 2011 20:24:30 -0800 + +linux (3.2.0-7.13) precise; urgency=low + + [ Upstream Kernel Changes ] + + * rebase to upstream 3.2-rc7 + + -- Leann Ogasawara Mon, 19 Dec 2011 09:14:34 -0800 + +linux (3.2.0-6.12) precise; urgency=low + + [ Upstream Kernel Changes ] + + * rebase to upstream v3.2-rc6 + + -- Leann Ogasawara Fri, 16 Dec 2011 10:19:02 -0800 + +linux (3.2.0-5.11) precise; urgency=low + + [ Andy Whitcroft ] + + * enforcer -- allow arch and flavour predicates to take lists + * enforcer -- simplify armel/armhf specific options + * enforcer -- fix incorrectly specified flavour matches + + [ Leann Ogasawara ] + + * [Config] Disable IRQ_REMAP + * [Config] Enable CONFIG_SENSORS_LM95245=m + * [Config] Enable CONFIG_SENSORS_MAX1668=m + * [Config] Enable CONFIG_SENSORS_NTC_THERMISTOR=m + * [Config] Enable CONFIG_SENSORS_MAX6639=m + * [Config] Enable CONFIG_SENSORS_MAX6642=m + * [Config] Enable CONFIG_SENSORS_LINEAGE=m + * [Config] Enable CONFIG_CRYPTO_SALSA20=m + * [Config] Enable CONFIG_PATA_TOSHIBA=m + * [Config] Enable CONFIG_POHMELFS=m + * [Config] Enable CONFIG_NET_PACKET_ENGINE=y + * [Config] Enable CONFIG_PATA_OPTI=m + * add overlayfs to virtual inclusion list + - LP: #903897 + * add veth to virtual inclusion list + - LP: #903897 + * SAUCE: resolve WARNING: at drivers/block/floppy.c:2929 do_fd_request + + [ Paolo Pisati ] + + * [Config] DEFAULT_MMAP_MIN_ADDR=32k on arm + - LP: #903346 + + [ Tim Gardner ] + + * [Config] CONFIG_LOCKUP_DETECTOR=y + - LP: #903615 + + [ Upstream Kernel Changes ] + + * rebase to upstream 55b02d2f + + -- Leann Ogasawara Mon, 12 Dec 2011 07:08:10 -0800 + +linux (3.2.0-4.10) precise; urgency=low + + [ Kyle McMartin ] + + * SAUCE: dmar: disable if ricoh multifunction detected + - LP: #894070 + + [ Seth Forshee ] + + * SAUCE: dell-wmi: Demote unknown WMI event message to pr_debug + - LP: #581312 + + [ Tim Gardner ] + + * Start new release, Bump ABI, rebase to 3.2-rc5 + + [ Leann Ogasawara ] + + * [Config] Enable CONFIG_SENSORS_AK8975=m + + -- Tim Gardner Sat, 10 Dec 2011 08:57:04 -0700 + +linux (3.2.0-3.9) precise; urgency=low + + [ Andy Whitcroft ] + + * SAUCE: ext4: correct partial write discard size calculation + - LP: #894768 + + [ Leann Ogasawara ] + + * Revert "SAUCE: x86, microcode, AMD: Restrict microcode reporting" + - LP: #892615 + + [ Matthew Garrett ] + + * SAUCE: pci: Rework ASPM disable code + + [ Upstream Kernel Changes ] + + * x86: Fix boot failures on older AMD CPU's + - LP: #892615 + * EHCI : Fix a regression in the ISO scheduler + - LP: #899165 + + -- Leann Ogasawara Mon, 05 Dec 2011 10:37:36 -0800 + +linux (3.2.0-3.8) precise; urgency=low + + [ Andy Whitcroft ] + + * armhf -- add d-i configuration + * armhf -- disable ABI checks for armhf + * armhf -- add arch to getabis config + + -- Andy Whitcroft Sat, 03 Dec 2011 14:22:52 +0000 + +linux (3.2.0-3.7) precise; urgency=low + + [ Stefan Bader ] + + * SAUCE: x86/paravirt: PTE updates in k(un)map_atomic need to be + synchronous, regardless of lazy_mmu mode + - LP: #854050 + + [ Tim Gardner ] + + * rebase to v3.2-rc4 + + -- Leann Ogasawara Fri, 02 Dec 2011 11:53:56 -0800 + +linux (3.2.0-2.6) precise; urgency=low + + [ Andy Whitcroft ] + + * armhf -- fix omap flavour to build on armhf + * [Config] CONFIG_PATA_MACIO=y to fix MAC qemu boot + + [ Borislav Petkov ] + + * SAUCE: x86, microcode, AMD: Restrict microcode reporting + - LP: #892615 + + [ Colin Watson ] + + * Add pata_macio to pata-modules + + [ Tim Gardner ] + + * [Config] Prefer crda over wireless-crda + * [Config] Fix virtual inclusion list. + - LP: #897795 + + -- Leann Ogasawara Wed, 30 Nov 2011 06:09:35 -0800 + +linux (3.2.0-2.5) precise; urgency=low + + [ Paolo Pisati ] + + * [Config] PANEL_DVI=y + + -- Leann Ogasawara Mon, 28 Nov 2011 09:13:24 -0800 + +linux (3.2.0-2.4) precise; urgency=low + + [ Andy Whitcroft ] + + * rebase to v3.2-rc3 + + [ Leann Ogasawara ] + + * Revert "SAUCE: xen: Do not use pv spinlocks on HVM" + * Revert "fix ERROR: __devcgroup_inode_permission undefined" + * Revert "olpc_dcon_xo_1_5 needs delay.h" + * Revert "olpc_dcon_xo_1 needs delay.h" + * rebase to 6fe4c6d4 + * [Config] updateconfigs after rebase to 6fe4c6d4 + + [ Tim Gardner ] + + * [Config] Replace wireless-crda with crda,wireless-regdb + - LP: #856421 + * [Config] Relax the dependencies on crda + + [ Upstream Kernel Changes ] + + * (pre-stable) HID: bump maximum global item tag report size to 96 bytes + - LP: #724831 + * Ubuntu: remove coreutils|fileutils package dependency + - LP: #892814 + * iio: iio_event_getfd -- fix ev_int build failure + + [ Upstream Kernel Changes ] + + * Rebase to v3.2-rc3 + + -- Andy Whitcroft Thu, 24 Nov 2011 16:20:45 +0000 + +linux (3.2.0-1.3) precise; urgency=low + + [ Upstream Kernel Changes ] + + * Ubuntu: Add ext2 to fs-core-modules + - LP: #893395 + + -- Leann Ogasawara Mon, 21 Nov 2011 20:42:33 -0800 + +linux (3.2.0-1.2) precise; urgency=low + + [ Andy Whitcroft ] + + * [Config] enable CONFIG_NFC and associated devices + * SAUCE: allow brcmsmac and b43 to both build + + [ Soren Hansen ] + + * Add ixgbe driver to d-i + - LP: #891969 + + -- Leann Ogasawara Mon, 21 Nov 2011 08:33:46 -0800 + +linux (3.2.0-1.1) precise; urgency=low + [ Andy Whitcroft ] + + * armhf -- enable armhf and create the first flavours + * SAUCE: ensure root is ready before running usermodehelpers in it + * [Config] enforcer -- ensure CONFIG_FAT_FS is built-in on arm + + [ Leann Ogasawara ] + + * Temporarily ignore module check + * [Config] Enable PCI_IOV on powerpc + * [Config] Temporarily disable CONFIG_PASEMI_MAC on powerpc + * rebase to v3.2-rc2 + * SAUCE: include for cpuidle34xx arm build + * SAUCE: include for linux/mtd/map.h arm build + * SAUCE: include and for mmc_core arm build + * SAUCE: select ARM_AMBA if OMAP3_EMU + * [Config] updateconfigs after select ARM_AMBA + * [Config] Temporarily disable CONFIG_KVM_BOOK3S_32 on powerpc + * [Config] Enable CONFIG_EXT2_FS=m + * [Config] Build in CONFIG_SATA_AHCI=y + * Resolve linux-image-extra's install dependency + + [ Seth Forshee ] + + * [Config] Enable EVENT_POWER_TRACING_DEPRECATED=y for powertop + * SAUCE: (drop after 3.2) Input: ALPS - move protocol information to + Documentation + * SAUCE: (drop after 3.2) Input: ALPS - add protocol version field in + alps_model_info + * SAUCE: (drop after 3.2) Input: ALPS - remove assumptions about packet + size + * SAUCE: (drop after 3.2) Input: ALPS - add support for protocol versions + 3 and 4 + * SAUCE: (drop after 3.2) Input: ALPS - add semi-MT support for v3 + protocol + * SAUCE: (drop after 3.2) Input: ALPS - add documentation for protocol + versions 3 and 4 + + [ Stefan Bader ] + + * [Config] Built-in xen-netfront and xen-blkfront + * Fix build of dm-raid45 and re-enable it + + [ Tim Gardner ] + + * [Config] CONFIG_USB_XHCI_HCD=y + - LP: #886167 + * [Config] CONFIG_R6040=m + - LP: #650899 + * SAUCE: Add a new entry (413c:8197) to Bluetooth USB device ID table + - LP: #854399 + * [Config] Consolidated amd64 server flavour into generic + * [Config] updateconfigs after rebase to 3.2-rc1 + * [Config] Disabled dm-raid4-5 + * [Config] Disabled ndiswrapper + * [Config] Disable vt6656 + * [Config] exclude ppp-modules for virtual flavour + * [Config] CONFIG_MEMSTICK_R592=m + - LP: #238208 + + [ Upstream Kernel Changes ] + + * CHROMIUM: seccomp_filter: new mode with configurable syscall filters + - LP: #887780 + * CHROMIUM: seccomp_filter: add process state reporting + - LP: #887780 + * CHROMIUM: seccomp_filter: Document what seccomp_filter is and how it + works. + - LP: #887780 + * CHROMIUM: x86: add HAVE_SECCOMP_FILTER and seccomp_execve + - LP: #887780 + * CHROMIUM: arm: select HAVE_SECCOMP_FILTER + - LP: #887780 + * CHROMIUM: seccomp_filters: move to btrees + * CHROMIUM: enable CONFIG_BTREE + * CHROMIUM: seccomp_filter: kill NR_syscall references + * CHROMIUM: seccomp_filters: guard all ftrace wrapper code + * CHROMIUM: seccomp_filters: clean up warnings; kref mistake + * CHROMIUM: seccomp_filter: remove "skip" from copy and add drop helper + * CHROMIUM: seccomp_filter: allow CAP_SYS_ADMIN management of execve + * CHROMIUM: seccomp_filter: inheritance documentation + * CHROMIUM: seccomp_filter: make inherited filters composable + * CHROMIUM: Fix seccomp_t compile error + - LP: #887780 + * CHROMIUM: Fix kref usage + - LP: #887780 + * CHROMIUM: enable CONFIG_SECCOMP_FILTER and CONFIG_HAVE_SECCOMP_FILTER + * rebase to v3.2-rc2 + + -- Leann Ogasawara Mon, 31 Oct 2011 09:24:39 -0400 + +linux (3.1.0-2.3) precise; urgency=low + + [ Tim Gardner ] + + * Add postinit and postrm scripts to the extras package + - LP: #882120 + + -- Leann Ogasawara Fri, 28 Oct 2011 12:48:33 -0700 + +linux (3.1.0-2.2) precise; urgency=low + + [ Andy Whitcroft ] + + * debian: add locking to protect debian/files from parallel update + + [ Leann Ogasawara ] + + * rebase to v3.1 + + [ Upstream Kernel Changes ] + + * rebase to v3.1 + + -- Leann Ogasawara Wed, 19 Oct 2011 07:12:38 -0700 + +linux (3.1.0-1.1) precise; urgency=low + + [ Andiry Xu ] + + * SAUCE: (drop during 3.2 merge) xHCI: AMD isoc link TRB chain bit quirk + - LP: #872811 + + [ Andy Whitcroft ] + + * Revert "ubuntu: compcache -- follow changes to bd_claim/bd_release" + - LP: #832694 + * Revert "ubuntu: compcache -- version 0.5.3" + - LP: #832694 + * [Config] standardise CONFIG_NETFILTER_XT_TARGET_TCPOPTSTRIP=m + * [Config] Enable CONFIG_MACVTAP=m + - LP: #822601 + * record the compiler in the ABI and check for inconsistant builds + * [Config] move ECRYPT_FS back to =y for all architectures + - LP: #827197 + * [Config] enable CONFIG_DRM_VMWGFX=m + - LP: #698009 + * [Config] re-fix ECRYPT_FS=y + - LP: #827197 + * enforcer -- ensure we have CONFIG_ECRYPT_FS=y + - LP: #827197 + * [Config] dropping compcache configuration options + * [Config] standardise on HZ=250 + * SAUCE: headers_install: fix #include "..." usage for userspace + - LP: #824377 + * make module-inclusion selection retain the left overs + * add a new linux-image-extras package for virtual + + [ Colin Watson ] + + * Deliver more Atheros, Ralink, and iwlagn NIC drivers to d-i + + [ edwin_rong ] + + * SAUCE: Staging: add driver for Realtek RTS5139 cardreader + - LP: #824273 + + [ Greg Kroah-Hartman ] + + * SAUCE: staging: rts5139: add vmalloc.h to some files to fix the build. + - LP: #824273 + + [ Jesse Sung ] + + * SAUCE: Unregister input device only if it is registered + - LP: #839238 + + [ Jiri Kosina ] + + * SAUCE: HID: add MacBookAir4, 2 to hid_have_special_driver[] + + [ Joshua V. Dillon ] + + * SAUCE: HID: add support for MacBookAir4,2 keyboard. + + [ Kees Cook ] + + * [Config] enable and enforce SECCOMP_FILTER on x86 + + [ Keng-Yu Lin ] + + * [Config] Enable CONFIG_RTS5139=m on i386/amd64 + - LP: #824273 + + [ Leann Ogasawara ] + + * Revert "ubuntu: overlayfs -- ovl: make lower mount read-only" + * Revert "ubuntu: overlayfs -- fs: limit filesystem stacking depth" + * Revert "ubuntu: overlayfs -- ovl: improve stack use of lookup and + readdir" + * Revert "ubuntu: overlayfs -- ovl: fix overlayfs over overlayfs" + * Revert "ubuntu: overlayfs -- overlayfs: implement show_options" + * Revert "ubuntu: overlayfs -- overlayfs: add statfs support" + * Revert "ubuntu: overlayfs -- overlay filesystem" + * Revert "ubuntu: overlayfs -- overlay: overlay filesystem documentation" + * Revert "SAUCE: ARM: OMAP: Add macros for comparing silicon revision" + * Revert "SAUCE: OMAP: DSS2: check for both cpu type and revision, rather + than just revision" + * Revert "SAUCE: OMAP: DSS2: enable hsclk in dsi_pll_init for OMAP36XX" + * Revert "ubuntu: fsam7400 disable driver" + - LP: #876030 + * rebase to v3.1-rc1 + * [Config] updateconfigs after rebase to v3.1-rc1 + * rebase to v3.1-rc2 + * [Config] Updateconfigs after rebase to v3.1-rc2 + * ubuntu: Yama - update calls to generic_permission() and + inode->i_op->permission() + * ubuntu: ndiswrapper -- remove netdev_priv macro + * ubuntu: aufs -- Temporarily disable due to build failure + * [Config] Diable INTEL_MID_PTI on armel + * [Config] Temporarily disable CONFIG_FTMAC100 on armel + * [Config] Temporarily disable CONFIG_FTGMAC100 on armel + * [Config] Temporarily disable CONFIG_CAN_TI_HECC on armel + * [Config] Temporarily disable CONFIG_VIDEO_OMAP2_VOUT on armel + * [Config] Set CONFIG_DM_MIRROR=m on amd64, i386, and arm + * [Config] Set CONFIG_DM_MULTIPATH=m on amd64, i386, and arm + * [Config] Set CONFIG_DM_SNAPSHOT=m on amd64, i386, and arm + * [Config] Enable CONFIG_EDAC_AMD8111=m on powerpc + * [Config] Enable CONFIG_EDAC_AMD8131=m on powerpc + * [Config] Enable CONFIG_EDAC_CPC925=m on powerpc + * [Config] Enable CONFIG_EDAC_PASEMI=m on powerpc + * [Config] Enable CONFIG_ECHO=m on powerpc + * [Config] Enable CONFIG_ET131X=m on powerpc + * [Config] Set CONFIG_FB_MATROX=m + * [Config] Enable CONFIG_FB_UDL=m on powerpc + * [Config] Set CONFIG_FB_VIRTUAL=n + * [Config] Enable CONFIG_FB_VGA16=m on powerpc + * [Config] Enable CONFIG_GPIO_MAX732X=m on arm + * [Config] Enable CONFIG_GPIO_PCF857X=m on arm + * [Config] Set CONFIG_HOTPLUG_PCI_FAKE=m + * [Config] Enable CONFIG_HOTPLUG_PCI=y on powerpc + * [Config] Enable CONFIG_HOTPLUG_PCI_CPCI=y on powerpc + * [Config] Enable CONFIG_HP_ILO=m on powerpc-smp + * [Config] Enable CONFIG_I2C_PASEMI=m on powerpc + * [Config] Enable CONFIG_IBM_BSR=m on powerpc + * [Config] Enable CONFIG_IBMVETH=m on powerpc + * [Config] Enable CONFIG_IDE_PHISON=m on powerpc + * [Config] Enable CONFIG_IGB=m on powerpc + * [Config] Enable CONFIG_IIO=m on powerpc + * [Config] Enable CONFIG_INFINIBAND_NES=m + * [Config] Enable CONFIG_IPMI_HANDLER=m on arm + * [Config] Enable CONFIG_IWL3945=m on powerpc + * [Config] Disable CONFIG_KVM_BOOK3S_64 + * [Config] Enable CONFIG_LAPBETHER=m on arm + * [Config] Enable CONFIG_LEDS_GPIO=m on powerpc + * [Config] Enable CONFIG_LEDS_CLEVO_MAIL=m all arch's + * [Config] Enable CONFIG_LEDS_PCA9532=m on powerpc + * [Config] Enable CONFIG_LEDS_PCA955X=m on powerpc + * [Config] Enable CONFIG_LEDS_TRIGGER_DEFAULT_ON=m on powerpc + * [Config] Set CONFIG_LEDS_TRIGGER_HEARTBEAT=m on arm and powerpc + * [Config] Set CONFIG_LEDS_TRIGGER_TIMER=m on powerpc + * [Config] Enable CONFIG_LINE6_USB=m on arm and powerpc + * [Config] Enable CONFIG_MEMSTICK=m on arm + * [Config] Enable CONFIG_MTD_AFS_PARTS=m on arm + * [Config] Enable CONFIG_MTD_ALAUDA=m on arm + * [Config] Enable CONFIG_MTD_AR7_PARTS=m on arm + * [Config] Enable CONFIG_MTD_ARM_INTEGRATOR=m on arm + * [Config] Enable CONFIG_MOXA_SMARTIO=m on powerpc + * [Config] Enable CONFIG_MTD_DATAFLASH=m on arm + * [Config] Enable CONFIG_MTD_GPIO_ADDR=m on arm + * [Config] Enable CONFIG_MTD_IMPA7=m on arm + * [Config] Enable CONFIG_MTD_NAND_GPIO=m on arm + * [Config] Enable CONFIG_MTD_NAND_NANDSIM=m on arm + * [Config] Enable CONFIG_MTD_NAND_PASEMI=m on powerpc + * [Config] Enable CONFIG_MTD_NAND_PLATFORM=m on arm + * [Config] Enable CONFIG_MTD_NAND_TMIO=m on arm + * [Config] Enable CONFIG_MTD_SST25L=m on arm + * [Config] Enable CONFIG_NET_CLS_CGROUP=y on arm + * [Config] Enable CONFIG_NET_CLS_FLOW=m on arm + * [Config] Enable CONFIG_NET_CLS_U32=m on arm + * [Config] Enable CONFIG_NET_DCCPPROBE=m on arm + * [Config] Enable CONFIG_NET_SCH_INGRESS=m on arm + * [Config] Enable CONFIG_NET_TCPPROBE=m on arm + * [Config] Enable CONFIG_PASEMI_MAC=m on powerpc + * [Config] Enable CONFIG_PATA_NS87410=m on powerpc + * [Config] Enable CONFIG_I2C_GPIO=m on powerpc64-smp + * [Config] Enable CONFIG_PANEL=m on powerpc + * [Config] Enable CONFIG_PATA_CMD640_PCI=m on powerpc + * SAUCE: x86: reboot: Make Dell Latitude E6520 use reboot=pci + - LP: #833705 + * [Config] Add CONFIG_EFI_VARS=y to the enforcer + - LP: #837332 + * [Config] Update CONFIG_EFI_VARS enforcer check + * [Config] Add aufs to virtual flavor inclusion list + - LP: #844159 + * SAUCE: x86: reboot: Make Dell Optiplex 790 use reboot=pci + - LP: #818933 + * SAUCE: x86: reboot: Make Dell Optiplex 990 use reboot=pci + - LP: #768039 + * SAUCE: x86: reboot: Make Dell Latitude E6220 use reboot=pci + - LP: #838402 + * [Config] Add igbvf to the virtual flavor inclusion list + - LP: #794570 + * [Config] Add ixgbevf to the virtual inclusion list + - LP: #872411 + * [Config] Transition -generic and -server to be identical + * rebase to v3.1-rc10 + + [ Luke Yelavich ] + + * [Config] Disable legacy IDE drivers on powerpc + + [ Ming Lei ] + + * SAUCE: fireware: add NO_MSI quirks for o2micro controller + - LP: #801719 + * SAUCE: ata_piix: make DVD Drive recognisable on systems with Intel + Sandybridge chipsets(v2) + - LP: #737388, #782389, #794642 + + [ Paolo Pisati ] + + * [Config] Compile-in vfat support for armel + - LP: #853783 + + [ Randy Dunlap ] + + * SAUCE: staging: fix rts5139 depends & build + - LP: #824273 + + [ Rene Bolldorf ] + + * SAUCE: (drop after 3.0) ideapad: Check if acpi already handle backlight + power in 'ideapad_backlight_notify_power' to avoid a page fault + + [ Seth Forshee ] + + * SAUCE: (no-up) Input: elantech - Add v3 hardware support + - LP: #681904 + * SAUCE: (drop after 3.1) usb_storage: Don't freeze in usb-stor-scan + - LP: #810020 + + [ Stefan Bader ] + + * (config) Package macvlan and macvtap for virtual + * [Config] Force perf to use libiberty for demangling + - LP: #783660 + * SAUCE: xen: Do not use pv spinlocks on HVM + - LP: #838026 + + [ Tim Gardner ] + + * [Config] Clean up tools rules + * [Config] Package x86_energy_perf_policy and turbostat + - LP: #797556 + * rebase to v3.1-rc3 + * [Config] Simplify binary-udebs dependencies + * [Config] kernel preparation cannot be parallelized + * [Config] Linearize module/abi checks + * [Config] Linearize and simplify tree preparation rules + * [Config] Build kernel image in parallel with modules + * [Config] Set concurrency for kmake invocations + * [Config] Improve install-arch-headers speed + * [Config] Fix binary-perarch dependencies + * [Config] Removed stamp-flavours target + * [Config] Serialize binary indep targets + * [Config] Use build stamp directly + * [Config] Restore prepare-% target + * rebase to v3.1-rc4 + * rebase to v3.1-rc5 + * [Config] Disable makedumpfile for i386/amd64 + * rebase to v3.1-rc6 + * [Config] Fix binary-% build target + * rebase to v3.1-rc7 + * rebase to v3.1-rc8 + * SAUCE: Add a new entry (413c:8197) to Bluetooth USB device ID table + - LP: #854399 + * [Config] Enable ftrace support in the mac80211 layer + - LP: #865171 + * rebase to v3.1-rc9 + * SAUCE: usb/core/devio.c: Check for printer class specific request + - LP: #872711 + + [ Upstream Kernel Changes ] + + * overlay filesystem + * overlayfs: add statfs support + * overlayfs: implement show_options + * overlay: overlay filesystem documentation + * fs: limit filesystem stacking depth + + [ Will Drewry ] + + * SAUCE: seccomp_filter: new mode with configurable syscall filters + * SAUCE: seccomp_filter: add process state reporting + * SAUCE: seccomp_filter: Document what seccomp_filter is and how it + works. + * SAUCE: seccomp_filter: add HAVE_SECCOMP_FILTER and seccomp_execve + + [ Upstream Kernel Changes ] + + * rebase to v3.1-rc1 + * rebase to v3.1-rc2 + * rebase to v3.1-rc3 + +CONFIG_BLK_DEV_BSGLIB=y + +CONFIG_BLK_DEV_LOOP_MIN_COUNT=8 + -CONFIG_VIDEO_OMAP2_VOUT_VRFB=y + * rebase to v3.1-rc4 + * rebase to v3.1-rc5 + * rebase to v3.1-rc6 + * rebase to v3.1-rc7 + * rebase to v3.1-rc8 + * rebase to v3.1-rc9 + * rebase to v3.1-rc10 + + -- Leann Ogasawara Wed, 10 Aug 2011 15:43:38 -0700 + +linux (3.1.0-1.0) oneiric; urgency=low + + [ Leann Ogasawara ] + + * Open P-series + + -- Leann Ogasawara Wed, 10 Aug 2011 13:42:40 -0700 + +linux (3.0.0-8.10) oneiric; urgency=low + + [ Adam Jackson ] + + * SAUCE: drm/i915/pch: Fix integer math bugs in panel fitting + - LP: #753994 + + [ John Johansen ] + + * [Config] Enable missing IPv6 options + + [ Leann Ogasawara ] + + * [Config] Disable config IWLWIFI_DEVICE_SVTOOL + - LP: #819925 + * Rebase to 3.0.1 + + [ Upstream Kernel Changes ] + + * x86, intel, power: Correct the MSR_IA32_ENERGY_PERF_BIAS message + * ALSA: hda - Turn on extra EAPDs on Conexant codecs + - LP: #783582 + * KVM: Remove SMEP bit from CR4_RESERVED_BITS + - LP: #796476 + * KVM: Add SMEP support when setting CR4 + - LP: #796476 + * KVM: Mask function7 ebx against host capability word9 + - LP: #796476 + * KVM: Add instruction fetch checking when walking guest page table + - LP: #796476 + + [ Upstream Kernel Changes ] + + * rebase to v3.0.1 + + -- Leann Ogasawara Fri, 05 Aug 2011 11:32:25 -0700 + +linux (3.0.0-7.9) oneiric; urgency=low + + [ Andy Whitcroft ] + + * Revert "[Upstream] add local prefix to oss local change_bits" + * Revert "SAUCE: add tracing for user initiated readahead requests" + * Revert "SAUCE: vfs: Add a trace point in the mark_inode_dirty function" + * Revert "SAUCE: Input: ALPS - Enable Intellimouse mode for Lenovo + Zhaoyang E47" + * Revert "SAUCE: fix documentation strings for struct input_keymap_entry" + * Revert "SAUCE: vt -- fix handoff numbering to 1..n and add range checks + (grub)" + * Revert "SAUCE: vt -- fix handoff numbering to 1..n and add range + checks" + * Revert "SAUCE: vt -- allow grub to request automatic vt_handoff" + * Revert "SAUCE: vt -- maintain bootloader screen mode and content until + vt switch" + * [Config] enable CONFIG_MTRR_SANITIZER_ENABLE_DEFAULT=1 + - LP: #816035 + * ubuntu: Yama: if an underlying filesystem provides a permissions op use + it + * SAUCE: (no-up) add tracing for user initiated readahead requests + * SAUCE: vt -- maintain bootloader screen mode and content until vt + switch + * SAUCE: vt -- allow grub to request automatic vt_handoff + + [ Arjan van de Ven ] + + * SAUCE: (no-up) vfs: Add a trace point in the mark_inode_dirty function + + [ Kees Cook ] + + * Revert "SAUCE: (no-up) Disable building the ACPI debugfs source" + * [Config] enforce ACPI_CUSTOM_METHOD disabled + + [ Keng-Yu Lin ] + + * SAUCE: (no-up) Input: ALPS - Enable Intellimouse mode for Lenovo + Zhaoyang E47 + - LP: #632884, #803005 + + [ Leann Ogasawara ] + + * [Config] Enable CONFIG_BLK_DEV_CMD64X=m on powerpc + - LP: #513131 + * [Config] Enable CONFIG_RT2800PCI_RT53XX=y + - LP: #815064 + + [ Rezwanul Kabir ] + + * SAUCE: (no-up) Add support for Intellimouse Mode in ALPS touchpad on + Dell E2 series Laptops + - LP: #632884 + + [ Upstream Kernel Changes ] + + * Revert "yama: if an underlying filesystem provides a permissions op use + it" + * Revert "Add support for Intellimouse Mode in ALPS touchpad on Dell E2 + series Laptops" + * Revert "tty: include linux/slab.h for kfree" + * Revert "gpio/ml_ioh_gpio: include linux/slab.h for kfree" + * Revert "pch_dma: add include/slab.h for kfree" + * mmc: Added quirks for Ricoh 1180:e823 lower base clock frequency + - LP: #773524 + * oss: rename local change_bits to avoid powerpc bitsops.h definition + + -- Leann Ogasawara Mon, 25 Jul 2011 09:08:01 -0700 + +linux (3.0.0-7.8) oneiric; urgency=low + + [ Andy Whitcroft ] + + * ubuntu: overlayfs -- overlayfs: add statfs support + * [Config] enable CONFIG_OVERLAYFS + + [ Erez Zadok ] + + * ubuntu: overlayfs -- overlayfs: implement show_options + + [ Leann Ogasawara ] + + * [Config] Enable CONFIG_ALIM7101_WDT=m on powerpc + * [Config] Enable CONFIG_ASUS_OLED=m on powerpc + * [Config] Disable CONFIG_ATM_DUMMY on arm + * [Config] Enable CONFIG_BLK_DEV_DRBD=m on powerpc + * Temporarily disable module check on arm + * Rebase to 3.0 final + * [Config] Enable CONFIG_CAN_TI_HECC=m on arm + * [Config] Set CONFIG_CDROM_PKTCDVD=m on amd64 and i386 + * [Config] Enable CONFIG_CRYPTO_CCM=m on powerpc + * [Config] Enable CONFIG_CRYPTO_DEV_HIFN_795X=m on powerpc + * [Config] Enable CONFIG_CRYPTO_GCM=m on powerpc + * [Config] Set CRYPTO_LZO=m on powerpc64-smp + * [Config] Enable CONFIG_DM9000=m on arm + * [Config] Set CONFIG_DISPLAY_SUPPORT=m on arm + * [Config] Enable CONFIG_DL2K=m on amd64 and i386 + + [ Miklos Szeredi ] + + * ubuntu: overlayfs -- vfs: add i_op->open() + * ubuntu: overlayfs -- vfs: export do_splice_direct() to modules + * ubuntu: overlayfs -- vfs: introduce clone_private_mount() + * ubuntu: overlayfs -- overlay filesystem + * ubuntu: overlayfs -- ovl: fix overlayfs over overlayfs + * ubuntu: overlayfs -- ovl: improve stack use of lookup and readdir + * ubuntu: overlayfs -- fs: limit filesystem stacking depth + * ubuntu: overlayfs -- ovl: make lower mount read-only + + [ Neil Brown ] + + * ubuntu: overlayfs -- overlay: overlay filesystem documentation + + [ Tim Gardner ] + + * [Config] Add enic/fnic to udebs + - LP: #801610 + + [ Upstream Kernel Changes ] + + * yama: if an underlying filesystem provides a permissions op use it + + [ Major Kernel Changes ] + + * Rebase to 3.0 final + + -- Leann Ogasawara Thu, 21 Jul 2011 07:01:32 -0700 + +linux (3.0.0-6.7) oneiric; urgency=low + + [ Eagon Yager ] + + * [Config] Fix misspelled 'skipmodule' in arm makefile. + + [ Keng-Yu Lin ] + + * SAUCE: Input: ALPS - Enable Intellimouse mode for Lenovo Zhaoyang E47 + - LP: #632884, #803005 + + [ Leann Ogasawara ] + + * Revert "[Config] Temporarily disable CONFIG_SMC91X on armel-omap" + * Revert "[Config] Temporarily Disable CONFIG_BRCMSMAC on arm" + * Revert "[Config] Temporarily Disable CONFIG_RTL8192SE on powerpc" + * Revert "[Config] Temporarily Disable CONFIG_RTL8192SE on arm" + * Revert "[Config] Temporarily disable CONFIG_BRCMSMAC on powerpc" + * [Config] Set CONFIG_ACPI_PCI_SLOT=m + * [Config] Set CONFIG_ACPI_SBS=m + * [Config] Set CONFIG_ACPI_WMI=m + * [Config] Set CONFIG_AD7150=m on arm + * [Config] Set CONFIG_AD7152=m on arm + * [Config] Drop CONFIG_GPIO_S5PV210 + * [Config] Drop CONFIG_GPIO_S5PC100 + * [Config] Drop CONFIG_GPIO_PLAT_SAMSUNG + * [Config] Drop CONFIG_GPIO_EXYNOS4 + + [ Stefan Bader ] + + * SAUCE: Re-enable RODATA for i386 virtual + - LP: #809838 + + [ Upstream Kernel Changes ] + + * Revert "Quirk to fix suspend/resume on Lenovo Edge 11,13,14,15" + * (drop after 3.0.0) acer-wmi: Add support for Aspire 1830 wlan hotkey + - LP: #771758 + + -- Leann Ogasawara Wed, 20 Jul 2011 06:36:02 -0700 + +linux (3.0.0-5.6) oneiric; urgency=low + + [ Tim Gardner ] + + * [Config] CONFIG_RTL8192CU=m + * Rebase to -rc7 + + -- Tim Gardner Mon, 11 Jul 2011 22:13:50 +0100 + +linux (3.0.0-4.5) oneiric; urgency=low + + [ Ming Lei ] + + * SAUCE: fix yama_ptracer_del lockdep warning + - LP: #791019 + + [ Seth Forshee ] + + * SAUCE: (drop after 3.0) asus-wmi: Add callback for hotkey filtering + * SAUCE: (drop after 3.0) eeepc-wmi: Add support for T101MT Home/Express Gate key + * SAUCE: (drop after 3.0) asus-wmi: Enable autorepeat for hotkey input device + * [Config] CONFIG_{ASUS,ASUS_NB,EEEPC}_WMI=m + - LP: #805218 + + [ Tim Gardner ] + + * [Config] updateconfigs after rebase to -rc6+ + Rebased against 4dd1b49c6d215dc41ce50c80b4868388b93f31a3 + * Adopt a 3 digit verion, e.g., 3.0.0-x.x + * Revert "UBUNTU: add dependancies for module-init-tools" + This dependency is no longer required for a 3 digit version. + + -- Tim Gardner Tue, 05 Jul 2011 14:03:04 +0100 + +linux (3.0-3.4) oneiric; urgency=low + + [ Keng-Yu Lin ] + + * SAUCE: Revert: "dell-laptop: Toggle the unsupported hardware + killswitch" + - LP: #775281 + + [ Leann Ogasawara ] + + * rebase to v3.0-rc5 + * [Config] updateconfigs after rebase to 3.0-rc5 + + [ Tim Gardner ] + + * [Config] Remove ubuntu/rtl8192se + * [Config] Added armel ABI files + * [Config] Removed armel versatile flavour + * [Config] CONFIG_INTEL_MEI=m + - LP: #716867 + + [ Upstream Kernel Changes ] + + * ALSA: hda - Enable auto-parser as default for Conexant codecs + + [ Upstream Kernel Changes ] + + * rebase to v3.0-rc5 + + -- Leann Ogasawara Thu, 30 Jun 2011 14:27:10 +0100 + +linux (3.0-2.3) oneiric; urgency=low + + [ Andy Whitcroft ] + + * ubuntu: AUFS -- update to 0e2bafab74f0d1463383faeb93f9fc5eb8c2c54e + + [ Leann Ogasawara ] + + * rebase to v3.0-rc4 + * [Config] updateconfigs after rebase to 3.0-rc4 + * fix ERROR: __devcgroup_inode_permission undefined + + [ Stefan Bader ] + + * SAUCE: iscsitarget: Remove driver from the kernel + + [ Tim Gardner ] + + * SAUCE: rtl8192se: Force a build for a 2.6/3.0 kernel + * [Config] Add grub-efi as a recommended bootloader for server and + generic + - LP: #800910 + + [ Upstream Kernel Changes ] + + * Fix node_start/end_pfn() definition for mm/page_cgroup.c + + [ Leann Ogasawara ] + + * rebase to v3.0-rc4 + + -- Leann Ogasawara Fri, 24 Jun 2011 11:51:12 -0700 + +linux (3.0-1.2) oneiric; urgency=low + + [ Andy Whitcroft ] + + * [Config] enable CONFIG_CAN_CALC_BITTIMING + + [ Leann Ogasawara ] + + * rebase to v3.0-rc3 + * [Config] updateconfigs after rebase to 3.0-rc3 + + [ Upstream Kernel Changes ] + + * perf: clear out make flags when calling kernel make kernelver + + [ Leann Ogasawara ] + + * rebase to v3.0-rc3 + + -- Leann Ogasawara Tue, 14 Jun 2011 07:25:35 -0700 + +linux (3.0-0.1) oneiric; urgency=low + + [ Andy Whitcroft ] + + * use the packaging version in the kernel + * use the kernels idea of its version for version_signature + * add dependancies for module-init-tools + * update control files to version 3 + * printchanges/insertchanges allow override of prev_release + * correct Vcs-Git: to point to oneiric + + [ Leann Ogasawara ] + + * rebase to v3.0-rc1 + * [Config] updateconfigs after rebase to 3.0-rc1 + * ubuntu: dm-raid4-5 fix up build failure + * [Config] Temporarily Disable CONFIG_GPIO_EXYNOS4 on arm + * [Config] Temporarily Disable CONFIG_GPIO_PLAT_SAMSUNG on arm + * [Config] Temporarily Disable CONFIG_GPIO_S5PC100 on arm + * [Config] Temporarily Disable CONFIG_GPIO_S5PV210 on arm + * [Config] Temporarily disable CONFIG_BRCMSMAC on powerpc + * [Config] Temporarily Disable CONFIG_BRCMSMAC on arm + * [Config] Temporarily Disable CONFIG_RTL8192SE on arm + * [Config] Temporarily Disable CONFIG_RTL8192SE on powerpc + * [Config] Temporarily disable CONFIG_SMC91X on armel-omap + * rebase to v3.0-rc2 + + [ Manoj Iyer ] + + * SAUCE: mmc: Enable MMC card reader for RICOH [1180:e823] + - LP: #790754 + + [ Upstream Kernel Changes ] + + * Revert "x86 idle: EXPORT_SYMBOL(default_idle, pm_idle) only when APM + demands it" + * drm/i915: fix regression after clock gating init split + + [ Major Kernel Changes ] + + * rebase from v2.6.39 to v3.0-rc1 + * rebase from v3.0-rc1 to v3.0-rc2 + + -- Andy Whitcroft Thu, 09 Jun 2011 15:18:33 +0100 + +linux (2.6.39-3.10) oneiric; urgency=low + + [ Colin Ian King ] + + * SAUCE: S3 early resume debug via keyboard LEDs + + [ Ingo Molnar ] + + * ubuntu: nx-emu - i386: NX emulation + * ubuntu: nx-emu - i386: mmap randomization for executable mappings + + [ Leann Ogasawara ] + + * Revert "[Config] Disable CONFIG_FT1000 on powerpc64-smp" + * Revert "[Config] Disable CONFIG_DM_RAID45" + * [Config] enable CONFIG_BRCMFMAC=y + * [Config] enable CONFIG_MDIO_BITBANG=m across all arch's and flavors + * [Config] enable CONFIG_VIDEO_OUTPUT_CONTROL=m on armel-omap + + [ Robert Nelson ] + + * SAUCE: omap3: beagle: detect new xM revision B + - LP: #770679 + * SAUCE: omap3: beagle: detect new xM revision C + - LP: #770679 + * SAUCE: omap3: beagle: if rev unknown, assume xM revision C + - LP: #770679 + + [ Stefan Bader ] + + * SAUCE: Convert dm-raid45 to new block plugging + + -- Leann Ogasawara Mon, 23 May 2011 11:46:43 -0700 + +linux (2.6.39-3.9) oneiric; urgency=low + + [ Leann Ogasawara ] + + * [Config] Disable CONFIG_SCSI_LPFC_DEBUG_FS + * rebase to v2.6.39 + * [Config] enable CONFIG_LLC2=m across all arch's and flavours + * [Config] enable CONFIG_INPUT_APANEL=m + + [ Thomas Schlichter ] + + * SAUCE: vesafb: mtrr module parameter is uint, not bool + - LP: #778043 + * SAUCE: vesafb: enable mtrr WC by default + - LP: #778043 + + [ Major Kernel Changes ] + + * rebase from v2.6.39-rc7 to v2.6.39 + + -- Andy Whitcroft Fri, 20 May 2011 09:52:32 +0100 + +linux (2.6.39-2.8) oneiric; urgency=low + + [ Andy Whitcroft ] + + * Revert "ubuntu: AUFS -- aufs2-standalone.patch aufs2.1-37" + * Revert "ubuntu: AUFS -- aufs2-base.patch aufs2.1-37" + * Revert "[Config] Disable CONFIG_AUFS_FS" + * ubuntu: AUFS -- aufs2-base.patch aufs2.1-39 + * ubuntu: AUFS -- aufs2-standalone.patch aufs2.1-39 + * ubuntu: AUFS -- update to c6b76974311efc5bf3eddf921cd015b6aae46935 + * ubuntu: AUFS -- clean up the aufs updater and BOM + * ubuntu: AUFS -- documentation on updating aufs2 + + [ Kees Cook ] + + * ubuntu: Yama - LSM hooks + * ubuntu: Yama - create task_free security callback + * ubuntu: Yama - add ptrace relationship tracking interface + * ubuntu: Yama - unconditionally chain to Yama LSM + + [ Leann Ogasawara ] + + * Revert "SAUCE: Fix drivers/staging/easycap FTBS" + * Revert "[Config] Disable CONFIG_EASYCAP" + * ubuntu: fsam7400 disable driver + * ubuntu: omnibook disable driver + * ubuntu: rfkill disable driver + + [ Tim Gardner ] + + * SAUCE: Fix extra reference in fb_open() + + -- Leann Ogasawara Mon, 16 May 2011 09:23:56 -0700 + +linux (2.6.39-2.7) oneiric; urgency=low + + [ Leann Ogasawara ] + + * rebase to v2.6.39-rc7 + + [ Major Kernel Changes ] + + * rebase from v2.6.39-rc6 to v2.6.39-rc7 + + -- Leann Ogasawara Tue, 10 May 2011 10:18:28 +0200 + +linux (2.6.39-1.6) oneiric; urgency=low + + [ Leann Ogasawara ] + + * rebase to v2.6.39-rc6 + * SAUCE: [arm] fixup __aeabi_uldivmod undefined build error + + [ Tim Gardner ] + + * [Config] updateconfigs after rebase to 2.6.39-rc6 + + [ Major Kernel Changes ] + + * rebase from v2.6.39-rc5 to v2.6.39-rc6 + - LP: #740126 + + -- Leann Ogasawara Thu, 05 May 2011 09:46:12 -0700 + +linux (2.6.39-0.5) oneiric; urgency=low + + [ Herton Ronaldo Krzesinski ] + + * SAUCE: Revert "x86, hibernate: Initialize mmu_cr4_features during boot" + - LP: #764758 + + [ Leann Ogasawara ] + + * rebase to v2.6.39-rc5 + * [Config] updateconfigs following rebase to v2.6.39-rc5 + + [ Paolo Pisati ] + + * [Config] s/USB_MUSB_TUSB6010/USB_MUSB_OMAP2PLUS/ on omap3 to get musb + - LP: #759913 + + [ Stefan Bader ] + + * Include nls_iso8859-1 for virtual images + - LP: #732046 + + [ Major Kernel Changes ] + + * rebase from v2.6.39-rc4 to v2.6.39-rc5 + + -- Leann Ogasawara Wed, 27 Apr 2011 06:39:42 -0700 + +linux (2.6.39-0.4) oneiric; urgency=low + + [ Leann Ogasawara ] + + * rebase to v2.6.39-rc4 + * [Config] updateconfigs following rebase to v2.6.39-rc4 + * fixup powerpc implicit declaration of function + 'crash_kexec_wait_realmode' + * [Config] Disable CONFIG_FT1000 on powerpc64-smp + + [ Tim Gardner ] + + * [Config] CONFIG_TRANSPARENT_HUGEPAGE=y + - LP: #769503 + * [Config] Add cachefiles.ko to virtual flavour + - LP: #770430 + + [ Major Kernel Changes ] + + * rebase from v2.6.39-rc3 to v2.6.39-rc4 + + -- Leann Ogasawara Tue, 19 Apr 2011 06:25:20 -0700 + +linux (2.6.39-0.3) oneiric; urgency=low + + [ Leann Ogasawara ] + + * rebase to v2.6.39-rc3 + * crash_kexec_wait_realmode() undefined when !SMP + + [ Tim Gardner ] + + * [Config] CONFIG_PM_ADVANCED_DEBUG=y for i386/amd64 + - LP: #632327 + + [ Major Kernel Changes ] + + * rebase from v2.6.39-rc2 to v2.6.39-rc3 + + -- Leann Ogasawara Tue, 12 Apr 2011 06:52:24 -0700 + +linux (2.6.39-0.2) oneiric; urgency=low + + [ Gustavo F. Padovan ] + + * SAUCE: Revert "Bluetooth: Add new PID for Atheros 3011" + - LP: #720949 + + [ John Johansen ] + + * AppArmor: Fix masking of capabilities in complain mode + - LP: #748656 + + [ Leann Ogasawara ] + + * rebase to v2.6.39-rc2 + * [Config] updateconfigs following rebase to v2.6.39-rc2 + * hv_mouse needs delay.h + * olpc_dcon_xo_1 needs delay.h + * olpc_dcon_xo_1_5 needs delay.h + * Update dropped.txt for Oneiric + + [ Steve Langasek ] + + * [Config] Make linux-libc-dev coinstallable under multiarch + - LP: #750585 + + [ Upstream Kernel Changes ] + + * x86, hibernate: Initialize mmu_cr4_features during boot + - LP: #752870 + + [ Major Kernel Changes ] + + * rebase from v2.6.39-rc1 to v2.6.39-rc2 + + -- Leann Ogasawara Wed, 06 Apr 2011 11:04:15 -0700 + +linux (2.6.39-0.1) oneiric; urgency=low + + [ Brad Figg ] + + * [Config] Set CONFIG_NR_CPUS=256 for amd64 generic + - LP: #737124 + + [ Henrik Rydberg ] + + * SAUCE: HID: hid-ntrig: add support for 1b96:0006 model + * SAUCE: HID: ntrig: fix suspend/resume on recent models + + [ Herton Ronaldo Krzesinski ] + + * SAUCE: (drop after 2.6.39) v4l: make sure drivers supply a zeroed + struct v4l2_subdev + - LP: #745213 + + [ Kees Cook ] + + * [Config] packaging: adjust perms on vmlinuz as well + * SAUCE: nx-emu: further clarify dmesg reporting + - LP: #745181 + + [ Leann Ogasawara ] + + * rebase to v2.6.39-rc1 + * [Config] updateconfigs following rebase to v2.6.39-rc1 + * [Config] Disable CONFIG_DM_RAID45 + * [Config] Disable CONFIG_SCSI_ISCSITARGET + * [Config] Disable CONFIG_EASYCAP + * [Config] Disable CONFIG_AUFS_FS + * update bnx2 firmware files in d-i/firmware/nic-modules + * xhci-pci.c resolve implicit declaration of kzalloc + * [Config] Enable CONFIG_DRM_PSB for only x86 + * [Config] Enable CONFIG_RTS_PSTOR for only x86 + * mfd/asic3: Fix typo, s/irq_data/data/ + + [ Luke Yelavich ] + + * [Config] Disable CONFIG_CRASH_DUMP on 32-bit powerpc kernels + - LP: #745358 + * [Config] Disable CONFIG_DRM_RADEON_KMS on powerpc kernels + * [Config] Build some framebuffer drivers as modules for powerpc kernels. + + [ Manoj Iyer ] + + * SAUCE: thinkpad-acpi: module autoloading for newer Lenovo ThinkPads. + - LP: #745217 + + [ Tim Gardner ] + + * SAUCE: INR_OPEN=4096 + - LP: #663090 + * SAUCE: Increase the default hard limit for open FDs to 4096 + - LP: #663090 + + [ Upstream Kernel Changes ] + + * (drop after 2.6.39-rc1) arm: versatile : Fix typo introduced in irq + namespace cleanup + * (drop after 2.6.39-rc1) [media] staging: altera-jtag needs delay.h + * ALSA: pcm: fix infinite loop in snd_pcm_update_hw_ptr0() + + [ Major Kernel Changes ] + + * rebase from v2.6.38 to v2.6.39-rc1 + + -- Leann Ogasawara Thu, 31 Mar 2011 12:50:10 -0700 + +linux (2.6.39-0.0) oneiric; urgency=low + + [ Leann Ogasawara ] + + * Open Oneiric + + -- Leann Ogasawara Thu, 31 Mar 2011 12:29:23 -0700 + +linux (2.6.38-7.39) natty; urgency=low + + [ Leann Ogasawara ] + + * No change upload. This is just to rebuild with gcc-4.5.2-7ubuntu1. + + -- Leann Ogasawara Thu, 24 Mar 2011 09:27:45 -0700 + +linux (2.6.38-7.38) natty; urgency=low + + [ Leann Ogasawara ] + + * No change upload take 2. 2.6.38-7.37 was accidentally uploaded before + gcc-4.5.2-6ubuntu5 finished building on all arches. + + -- Leann Ogasawara Tue, 22 Mar 2011 06:12:47 -0700 + +linux (2.6.38-7.37) natty; urgency=low + + [ Leann Ogasawara ] + + * No change upload. This is just to rebuild with gcc-4.5.2-6ubuntu5. + + -- Leann Ogasawara Sun, 20 Mar 2011 16:02:48 -0700 + +linux (2.6.38-7.36) natty; urgency=low + + [ Andy Whitcroft ] + + * Revert "SAUCE: KLUDGE: work around failed 'shrink-wrap' compiler + optimisation" + * purge last vestiges of maverick + * [Config] switch CONFIG_FB_VESA back to module + + [ Chris Wilson ] + + * SAUCE: drm/i915: Fix pipelined fencing + - LP: #717114 + + [ Loïc Minier ] + + * Include nls_cp437 module in virtual for fat + - LP: #732046 + * Support arch= cross-compilation for any arch + * Fix couple of typos in 0-common-vars.mk + * Enforce DEFAULT_MMAP_MIN_ADDR on armhf + * Add armhf to Debian -> Linux arch map + * Add initial armhf.mk + * Enable common packages for armhf + + [ Upstream Kernel Changes ] + + * Yama: fix default relationship to check thread group + - LP: #737676 + + -- Andy Whitcroft Fri, 18 Mar 2011 18:18:02 +0000 + +linux (2.6.38-7.35) natty; urgency=low + + [ Andy Whitcroft ] + + * rebase to 2fbfac4e053861925fa3fffcdc327649b09af54c + * rebase fixes bug #715330 + * [Config] disable CONFIG_SCSI_QLA_ISCSI for powerpc 32bit to fix FTBS + * rebase to v2.6.38 final + + [ Herton Ronaldo Krzesinski ] + + * SAUCE: Apply OPTION_BLACKLIST_SENDSETUP also for ZTE MF626 + - LP: #636091 + + [ Tim Gardner ] + + * [Confg] CONFIG_BOOT_PRINTK_DELAY=y + + [ Upstream Kernel Changes ] + + * Yama: use thread group leader when creating match + - LP: #729839 + * (drop after 2.6.38) ahci: AHCI mode SATA patch for Intel Patsburg SATA + RAID controller + - LP: #735240 + * (drop after v2.6.38) x86, quirk: Fix SB600 revision check + + [ Major Kernel Changes ] + + * rebase from v2.6.38-rc8 to v2.6.38 final + - LP: #715330 + + -- Andy Whitcroft Tue, 15 Mar 2011 19:04:19 +0000 + +linux (2.6.38-6.34) natty; urgency=low + + [ Andy Whitcroft ] + + * [Config] normalise CONFIG_INTEL_TXT + * SAUCE: KLUDGE: work around failed 'shrink-wrap' compiler optimisation + - LP: #730860 + * rebase to mainline v2.6.38-rc8 + + [ Major Kernel Changes ] + + * rebase from v2.6.38-rc7 + fb62c00a6d8942775abc23d1621db1252e2d93d1 + to v2.6.38-rc8 + + -- Andy Whitcroft Tue, 08 Mar 2011 11:54:48 +0000 + +linux (2.6.38-6.33) natty; urgency=low + + [ Andy Whitcroft ] + + * d-i -- enable speakup-modules udeb + - LP: #672699 + * rebase to 493f3358cb289ccf716c5a14fa5bb52ab75943e5 + * [Config] debian PPC64 configuration + * [Config] cleanup powerpc config fixing unexpected inconsistancies + * [Config] resync ppc64 configuration + * SAUCE: match up ENTRY/END naming for 32/64 bit + * rebase to fb62c00a6d8942775abc23d1621db1252e2d93d1 + * [Config] update configs after rebase to + fb62c00a6d8942775abc23d1621db1252e2d93d1 + * [Config] pps_gen_parport no longer built + + [ Corentin Chary ] + + * SAUCE: (drop after 2.6.38) eeepc-wmi: reorder keymap + - LP: #689393 + * SAUCE: (drop after 2.6.38) eeepc-wmi: add wlan key found on 1015P + - LP: #689393 + + [ John Johansen ] + + * SAUCE: Fix aufs calling of security_path_mknod + - LP: #724456 + + [ Kees Cook ] + + * SAUCE: proc: hide kernel addresses via %pK in /proc//stack + + [ Tim Gardner ] + + * rebase to 2.6.38-rc7 + + [ Upstream Kernel Changes ] + + * Revert "drm/i915: fix corruptions on i8xx due to relaxed fencing" + + [ Major Kernel Changes ] + + * rebase from v2.6.38-rc6 to v2.6.38-rc7 + + fb62c00a6d8942775abc23d1621db1252e2d93d1 + - LP: #721389 + - LP: #722925 + - LP: #723672 + - LP: #723676 + - LP: #715318 + + -- Andy Whitcroft Mon, 07 Mar 2011 15:33:17 +0000 + +linux (2.6.38-5.32) natty; urgency=low + + [ Andy Whitcroft ] + + * rebase to mainline 6f576d57f1fa0d6026b495d8746d56d949989161 + * [Config] updateconfigs following rebase to v2.6.38-rc6 + * [Config] enable CONFIG_DMAR + - LP: #552311 + + [ Upstream Kernel Changes ] + + * drm/i915: skip FDI & PCH enabling for DP_A + - LP: #561802, #600453, #681877 + + [ Major Kernel Changes ] + + * rebase from v2.6.38-rc5 to v2.6.38-rc6 + - LP: #718402 + - LP: #719524 + - LP: #721126 + - LP: #719691 + - LP: #722689 + - LP: #722310 + + -- Andy Whitcroft Tue, 22 Feb 2011 13:28:39 +0000 + +linux (2.6.38-4.31) natty; urgency=low + + [ Andy Whitcroft ] + + * add in bugs closed by upstream patches pulled in by rebases + * rebase to 795abaf1e4e188c4171e3cd3dbb11a9fcacaf505 + * [Config] enable CONFIG_VSX to allow use of vector instuctions + * resync with maverick 98defa1c5773a3d7e4c524967eb01d5bae035816 + * rebase to mainline v2.6.38-rc5 + * SAUCE: ecryptfs: read on a directory should return EISDIR if not + supported + - LP: #719691 + + [ Colin Ian King ] + + * SAUCE: Dell All-In-One: Remove need for Dell module alias + + [ Manoj Iyer ] + + * SAUCE: (drop after 2.6.38) add ricoh 0xe823 pci id. + - LP: #717435 + + [ Tim Gardner ] + + * [Config] CONFIG_CRYPTO_CRC32C_INTEL=y + + [ Upstream Kernel Changes ] + + * Quirk to fix suspend/resume on Lenovo Edge 11,13,14,15 + - LP: #702434 + * vfs: fix BUG_ON() in fs/namei.c:1461 + + [ Vladislav P ] + + * SAUCE: Release BTM while sleeping to avoid deadlock. + - LP: #713837 + + [ Major Kernel Changes ] + + * rebase from v2.6.38-rc4 to v2.6.38-rc5 + - LP: #579276 + - LP: #715877 + - LP: #713769 + - LP: #716811 + * resync with Maverick Ubuntu-2.6.35-27.47 + + -- Andy Whitcroft Fri, 11 Feb 2011 17:24:09 +0000 + +linux (2.6.38-3.30) natty; urgency=low + + [ Andy Whitcroft ] + + * rebase to v2.6.38-rc4 + * ppc64 -- add basic architecture + * ubuntu: AUFS -- update to 65835da20b77c98fb538c9114fc31f5de1328230 + + [ Colin Ian King ] + + * SAUCE: Add WMI hotkeys support for Dell All-In-One series + - LP: #676997 + * SAUCE: Add WMI hotkeys support for another Dell All-In-One series + - LP: #701530 + * SAUCE: Dell WMI: Use sparse keymaps and tidy up code. + - LP: #701530 + + [ Dan Rosenberg ] + + * SAUCE: (drop after 2.6.38) Convert net %p usage %pK + + [ Kees Cook ] + + * Revert "SAUCE: kernel: make /proc/kallsyms mode 400 to reduce ease of + attacking" + * SAUCE: (drop after 2.6.38) use %pK for /proc/kallsyms and /proc/modules + + [ Tim Gardner ] + + * [Config] CONFIG_BLK_CGROUP=y + - LP: #706394 + * [Config] CONFIG_DELL_WMI_AIO=m + + [ Upstream Kernel Changes ] + + * drm/i915/lvds: Restore dithering on native modes for gen2/3 + - LP: #711568 + + [ Upstream Kernel Changes ] + + * rebase from v2.6.38-rc3 to v2.6.38-rc4. + - LP: #701271 + - LP: #708521 + - LP: #710371 + + -- Andy Whitcroft Tue, 08 Feb 2011 02:07:18 +0000 + +linux (2.6.38-2.29) natty; urgency=low + + [ Andy Whitcroft ] + + * rebase to 1f0324caefd39985e9fe052fac97da31694db31e + * [Config] updateconfigs following rebase to + 1f0324caefd39985e9fe052fac97da31694db31e + * rebase to 70d1f365568e0cdbc9f4ab92428e1830fdb09ab0 + * [Config] reenable HIBERNATE + - LP: #710877 + * rebase to v2.6.38-rc3 + * [Config] reenable CONFIG_CRASH_DUMP + + [ Kamal Mostafa ] + + * SAUCE: rtl8192se: fix source file perms + * SAUCE: rtl8192se: fix source file newline + * SAUCE: omnibook: fix source file newline + + [ Kees Cook ] + + * [Config] packaging: really make System.map mode 0600 + + [ Ricardo Salveti de Araujo ] + + * SAUCE: OMAP3630: PM: don't warn the user with a trace in case of + PM34XX_ERRATUM + + [ Soren Hansen ] + + * SAUCE: nbd: Remove module-level ioctl mutex + + [ Tim Gardner ] + + * SAUCE: Disable building the ACPI debugfs source + + [ Upstream Kernel Changes ] + + * Set physical start and alignment 1M for virtual i386 + - LP: #710754 + + [ Upstream Kernel Changes ] + + * rebase from v2.6.38-rc2 + c723fdab8aa728dc2bf0da6a0de8bb9c3f588d84 + to v2.6.38-rc3 + - LP: #707902 + + -- Andy Whitcroft Fri, 28 Jan 2011 16:30:32 +0000 + +linux (2.6.38-1.28) natty; urgency=low + + [ Andy Whitcroft ] + + * ubuntu: AUFS -- update to b1cee06249dfa0ab30951e7f06490a75c155b620 + + [ Ricardo Salveti de Araujo ] + + * SAUCE: omap3: beaglexm: fix DVI initialization + * [Config] omap: move CONFIG_PANEL_GENERIC_DPI to build in to make + display work at Beagle + + -- Andy Whitcroft Fri, 28 Jan 2011 10:51:57 +0000 + +linux (2.6.38-1.27) natty; urgency=low + + [ Andy Whitcroft ] + + * ubuntu: AUFS -- update aufs-update to track new locations of headers + * ubuntu: AUFS -- update to c5021514085a5d96364e096dbd34cadb2251abfd + * SAUCE: ensure root is ready before running usermodehelpers in it + * correct the Vcs linkage to point to natty + * rebase to linux tip e78bf5e6cbe837daa6ab628a5f679548742994d3 + * [Config] update configs following rebase + e78bf5e6cbe837daa6ab628a5f679548742994d3 + * SAUCE: Yama: follow changes to generic_permission + * ubuntu: compcache -- follow changes to bd_claim/bd_release + * ubuntu: iscsitarget -- follow changes to open_bdev_exclusive + * ubuntu: ndiswrapper -- fix interaction between __packed and packed + * ubuntu: AUFS -- update to 806051bcbeec27748aae2b7957726a4e63ff308e + * update package version to match payload version + * rebase to e6f597a1425b5af64917be3448b29e2d5a585ac8 + * rebase to v2.6.38-rc1 + * [Config] updateconfigs following rebase to v2.6.38-rc1 + * SAUCE: x86 fix up jiffies/jiffies_64 handling + * rebase to linus tip 2b1caf6ed7b888c95a1909d343799672731651a5 + * [Config] updateconfigs following rebase to + 2b1caf6ed7b888c95a1909d343799672731651a5 + * [Config] disable CONFIG_TRANSPARENT_HUGEPAGE to fix i386 boot crashes + * ubuntu: AUFS -- suppress benign plink warning messages + - LP: #621195 + * [Config] CONFIG_NR_CPUS=256 for amd64 -server flavour + * rebase to v2.6.38-rc2 + * rebase to mainline d315777b32a4696feb86f2a0c9e9f39c94683649 + * rebase to c723fdab8aa728dc2bf0da6a0de8bb9c3f588d84 + * [Config] update configs following rebase to + c723fdab8aa728dc2bf0da6a0de8bb9c3f588d84 + * [Config] disable CONFIG_AD7152 to fix FTBS on armel versatile + * [Config] disable CONFIG_AD7150 to fix FTBS on armel versatile + * [Config] disable CONFIG_RTL8192CE to fix FTBS on armel omap + * [Config] disable CONFIG_MANTIS_CORE to fix FTBS on armel versatile + + [ Kees Cook ] + + * SAUCE: kernel: make /proc/kallsyms mode 400 to reduce ease of attacking + + [ Stefan Bader ] + + * Temporarily disable RODATA for virtual i386 + - LP: #699828 + + [ Tim Gardner ] + + * [Config] CONFIG_NLS_DEFAULT=utf8 + - LP: #683690 + * [Config] CONFIG_HIBERNATION=n + * update bnx2 firmware files in d-i/firmware/nic-modules + + [ Upstream Kernel Changes ] + + * Revert "drm/radeon/bo: add some fallback placements for VRAM only + objects." + * packaging: make System.map mode 0600 + * thinkpad_acpi: Always report scancodes for hotkeys + - LP: #702407 + * sched: tg->se->load should be initialised to tg->shares + * Input: sysrq -- ensure sysrq_enabled and __sysrq_enabled are consistent + * brcm80211: include linux/slab.h for kfree + * pch_dma: add include/slab.h for kfree + * i2c-eg20t: include linux/slab.h for kfree + * gpio/ml_ioh_gpio: include linux/slab.h for kfree + * tty: include linux/slab.h for kfree + * winbond: include linux/delay.h for mdelay et al + + [ Upstream Kernel Changes ] + + * mark the start of v2.6.38 versioning + * rebase v2.6.37 to v2.6.38-rc2 + c723fdab8aa728dc2bf0da6a0de8bb9c3f588d84 + - LP: #689886 + - LP: #702125 + - LP: #608775 + - LP: #215802 + - LP: #686333 + - LP: #677830 + - LP: #677652 + - LP: #696493 + - LP: #697240 + - LP: #689036 + - LP: #705323 + - LP: #686692 + + -- Andy Whitcroft Sun, 09 Jan 2011 13:44:52 +0000 + +linux (2.6.37-12.26) natty; urgency=low + + [ Andy Whitcroft ] + + * rebase to v2.6.37-rc8 + * [Config] armel -- reenable omap flavour + * [Config] disable CONFIG_MACH_OMAP3517EVM to fix FTBS on armel omap + * [Config] disable CONFIG_GPIO_VX855 to fix FTBS on omap armel + * [Config] disable CONFIG_WESTBRIDGE_ASTORIA to fix FTBS on omap armel + * [Config] disable CONFIG_TI_DAVINCI_EMAC to fix FTBS on omap armel + * rebase to mainline 989d873fc5b6a96695b97738dea8d9f02a60f8ab + * [Config] track missing modules + * rebase to v2.6.37 final + + [ Chase Douglas ] + + * SAUCE: (drop after 2.6.37) HID: magicmouse: Don't report REL_{X, Y} for + Magic Trackpad + + [ Stefan Bader ] + + * Revert "SAUCE: blkfront: default to sd devices" + - LP: #684875 + + [ Tim Gardner ] + + * Revert "SAUCE: (no-up) libata: Ignore HPA by default." + - LP: #380138 + * [Config] Added autofs4.ko to -virtual flavour + - LP: #692917 + + [ Upstream Kernel Changes ] + + * Add support for Intellimouse Mode in ALPS touchpad on Dell E2 series + Laptops + - LP: #632884 + + [ Upstream Kernel Changes ] + + * rebase to v2.6.37-rc8 + * rebase to mainline 989d873fc5b6a96695b97738dea8d9f02a60f8ab + * rebase to v2.6.37 final + + -- Andy Whitcroft Thu, 23 Dec 2010 18:34:13 +0000 + +linux (2.6.37-11.25) natty; urgency=low + + [ Andy Whitcroft ] + + * [Config] d-i -- add hpsa to the list of block devices + - LP: #684304 + * [Config] add vmw-balloon driver to -virtual flavour + - LP: #592039 + * rebase to v2.6.37-rc7 + + [ Upstream Kernel Changes ] + + * rebase to v2.6.37-rc7 + + -- Andy Whitcroft Tue, 21 Dec 2010 13:35:28 +0000 + +linux (2.6.37-10.24) natty; urgency=low + + [ Andy Whitcroft ] + + * rebase to v2.6.37-rc6 + * updateconfigs following rebase to v2.6.37-rc6 + + [ Upstream Kernel Changes ] + + * rebase to v2.6.37-rc6 + + -- Andy Whitcroft Thu, 16 Dec 2010 12:34:19 +0000 + +linux (2.6.37-9.23) natty; urgency=low + + [ Andy Whitcroft ] + + * SAUCE: vt -- fix handoff numbering to 1..n and add range checks + - LP: #689606 + * SAUCE: vt -- fix handoff numbering to 1..n and add range checks (grub) + - LP: #689606 + + [ Kees Cook ] + + * SAUCE: RO/NX protection for loadable kernel, fix ftrace + - LP: #690190 + + -- Andy Whitcroft Wed, 15 Dec 2010 19:29:57 +0000 + +linux (2.6.37-9.22) natty; urgency=low + + [ Andy Whitcroft ] + + * rebase to v2.6.35-rc5 + * [Config] updateconfigs following rebase to v2.6.37-rc5 + * (no-up) add support for installed header files to ubuntu directory + - LP: #684666 + * ubuntu: AUFS -- include the aufs_types.h file in linux-libc-headers + - LP: #684666 + * ubuntu: dm-raid4-5 -- follow changes to bio flags + * ubuntu: dm-raid4-5 -- re-enable + * ubuntu: omnibook -- update BOM + * ubuntu: ndiswrapper -- update BOM to match actual version + * ubuntu: ndiswrapper -- follow removal of the BKL and locked ioctl + * ubuntu: ndiswrapper -- re-enable + * ubuntu: iscsitarget -- re-instate copy_io_context + * ubuntu: iscsitarget -- follow changes to semaphore initialisation + * ubuntu: iscsitarget -- convert NIPQUAD to %pI4 + * ubuntu: iscsitarget -- re-enable + + [ Kees Cook ] + + * [Config] update config for CONFIG_DEBUG_SET_MODULE_RONX + + [ Manoj Iyer ] + + * SAUCE: Enable jack sense for Thinkpad Edge 13 + - LP: #685015 + + [ Tim Gardner ] + + * [Config] CONFIG_9P_FSCACHE=y,CONFIG_9P_FS_POSIX_ACL=y + * [Config] CONFIG_CRYPTO_CRC32C=y + - LP: #681819 + * [Config] CONFIG_9P_FSCACHE=n + * [Config] Add nfsd modules to -virtual flavour + - LP: #688070 + + [ Upstream Kernel Changes ] + + * Revert "Staging: zram: work around oops due to startup ordering snafu" + * NFS: Fix panic after nfs_umount() + - LP: #683938 + * x86: Add NX protection for kernel data + * x86: Add RO/NX protection for loadable kernel modules + * x86: Resume trampoline must be executable + * x86: RO/NX protection for loadable kernel, jump_table fix + + [ Upstream Kernel Changes ] + + * rebase to v2.6.37-rc5 + + -- Andy Whitcroft Thu, 09 Dec 2010 18:15:35 +0000 + +linux (2.6.37-8.21) natty; urgency=low + + [ Andy Whitcroft ] + + * Revert "ubuntu: AUFS -- include the aufs_types.h file in + linux-libc-headers" + * Revert "(no-up) add support for installed header files to ubuntu + directory" + + -- Andy Whitcroft Sun, 05 Dec 2010 17:33:28 +0000 + +linux (2.6.37-8.20) natty; urgency=low + + [ Andy Whitcroft ] + + * Revert "[Upstream] drivers/serial/mfd.c: Fix ARM compile error" + * Revert "SAUCE: Nouveau: Disable acceleration on MacBook Pros" + * Revert "SAUCE: Nouveau: Add quirk framework to disable acceleration" + * Revert "SAUCE: i915 -- disable powersave by default" + * SAUCE: enable Marvell 9128 PCIe SATA controller + - LP: #658521 + * [Config] evtchn has been renamed + * (no-up) add support for installed header files to ubuntu directory + - LP: #684666 + * ubuntu: AUFS -- include the aufs_types.h file in linux-libc-headers + - LP: #684666 + + [ Tim Gardner ] + + * [Config] MISS: evtchn, NEW : xen-evtchn + * rebase to v2.6.37-rc4 + + [ Upstream Kernel Changes ] + + * drm/i915: Clean conflicting modesetting registers upon init + - LP: #683775 + * rebase to v2.6.37-rc4 + + -- Andy Whitcroft Fri, 03 Dec 2010 18:42:07 +0000 + +linux (2.6.37-7.19) natty; urgency=low + + [ Tim Gardner ] + + * [Config] Add bnx2 firmware to nic-modules udeb + - LP: #676245 + + -- Andy Whitcroft Fri, 26 Nov 2010 17:53:45 +0000 + +linux (2.6.37-7.18) natty; urgency=low + + [ Andy Whitcroft ] + + * Revert "[Upstream] USB: option: Remove duplicate AMOI_VENDOR_ID" + * Revert "SAUCE: Add extra headers to linux-libc-dev" + * Revert "SAUCE: Enable speedstep for sonoma processors." + * [Config] enable CONFIG_BT_HCIUART_ATH3K + * [Config] enable CONFIG_IWLWIFI_DEBUGFS + * [Config] standardise CONFIG_MII + * [Config] standardise CONFIG_PRISM2_USB + * [Config] standardise CONFIG_SCSI_QLA_ISCSI + * [Config] build in CONFIG_AGP + * [Config] build in CONFIG_AGP_INTEL + * [Config] build in CONFIG_AGP_AMD + * [Config] build in CONFIG_AGP_AMD64 + * [Config] build in CONFIG_AGP_NVIDIA + * [Config] build in CONFIG_AGP_VIA + * [Config] disable CONFIG_SCSI_QLA_ISCSI for FTBS (arm) + * (no-up): document the new ## scheme + * [Config] harmonise CONFIG_SERIAL_8250_NR_UARTS + * [Config] update CONFIG_SERIAL_8250_RUNTIME_UARTS=32 + - LP: #675453 + + [ Mathieu J. Poirier ] + + * SAUCE: ARM: Adding vdd_sdi regulator supply to OMAP3EVM + + [ Upstream Kernel Changes ] + + * nx-emu: fix inverted report of disable_nx + + -- Andy Whitcroft Tue, 23 Nov 2010 21:00:39 +0000 + +linux (2.6.37-6.17) natty; urgency=low + + [ Andy Whitcroft ] + + * Revert "ubuntu: AUFS -- aufs2-standalone.patch + aufs2.1-36-UNRELEASED-20101103" + * Revert "ubuntu: AUFS -- aufs2-base.patch + aufs2.1-36-UNRELEASED-20101103" + * [Config] standardise CONFIG_BT + * [Config] standardise CONFIG_IRDA + * [Config] standardise CONFIG_LAPB + * [Config] standardise CONFIG_RDS + * [Config] standardise CONFIG_RFKILL + * [Config] standardise CONFIG_TIPC + * [Config] standardise CONFIG_X25 + * [Config] standardise CONFIG_INPUT_EVDEV + * [Config] standardise CONFIG_INPUT_JOYDEV + * [Config] standardise CONFIG_INPUT_JOYSTICK + * [Config] standardise CONFIG_INPUT_TOUCHSCREEN + * [Config] CONFIG_INPUT_TOUCHSCREEN=n for FTBS (arm) + * [Config] CONFIG_IRDA=n for FTBS (arm) + * ubuntu: AUFS -- aufs2-base.patch aufs2.1-37 + * ubuntu: AUFS -- aufs2-standalone.patch aufs2.1-37 + * ubuntu: AUFS -- update to 097bf62d6f49619359d34bf17f242df38562489a + + [ Tim Gardner ] + + * SAUCE: Fix drivers/staging/easycap FTBS + * [Config] CONFIG_EASYCAP=m after fixing FTBS + + [ Upstream Kernel Changes ] + + * Revert "x86: Add NX protection for kernel data" + + -- Andy Whitcroft Mon, 22 Nov 2010 18:09:10 +0000 + +linux (2.6.37-6.16) natty; urgency=low + + [ Andy Whitcroft ] + + * Revert "[Config] update config for CONFIG_DEBUG_SET_MODULE_RONX" + * rebase to v2.6.37-rc3 + + [ Tim Gardner ] + + * [Config] CONFIG_SCHED_AUTOGROUP=y + + [ Upstream Kernel Changes ] + + * Revert "x86: Add RO/NX protection for loadable kernel modules" + * sched: automated per session task groups + * rebase to v2.6.37-rc3 + + -- Andy Whitcroft Mon, 22 Nov 2010 10:11:13 +0000 + +linux (2.6.37-6.15) natty; urgency=low + + [ Andy Whitcroft ] + + * [Config] standardise CONFIG_CEPH_FS + * [Config] standardise CONFIG_SCSI_LPFC_DEBUG_FS + * [Config] standardise CONFIG_SCSI_PROC_FS + * [Config] standardise CONFIG_UBIFS_FS + * [Config] standardise CONFIG_USB_GADGET_DEBUG_FS + + [ Kees Cook ] + + * [Config] update config for CONFIG_DEBUG_SET_MODULE_RONX + + [ Manoj Iyer ] + + * SAUCE: Enable jack sense for Thinkpad Edge 11 + - LP: #677210 + * SAUCE: enable rfkill for rtl8192se driver + - LP: #640992 + + [ Tim Gardner ] + + * [Config] CONFIG_EASYCAP=n for FTBS + * Rebase to v2.6.32-rc2+git + + [ Upstream Kernel Changes ] + + * x86: Fix improper large page preservation + * x86: Add NX protection for kernel data + * x86: Add RO/NX protection for loadable kernel modules + + [ Upstream Kernel Changes ] + + * Rebase to Linus 2.6.37-rc2+git + + -- Andy Whitcroft Sat, 20 Nov 2010 11:40:00 +0000 + +linux (2.6.37-5.14) natty; urgency=low + + [ Upstream Kernel Changes ] + + * PCI: fix offset check for sysfs mmapped files + - LP: #676963 + + -- Andy Whitcroft Thu, 18 Nov 2010 18:12:27 +0000 + +linux (2.6.37-5.13) natty; urgency=low + + [ Andy Whitcroft ] + + * rebased to v2.6.37-rc2 + * updateconfigs following rebase to v2.6.37-rc2 + + [ Tim Gardner ] + + * [Config] Added NFS and related modules to virtual flavour + - LP: #659084 + + [ Upstream Kernel Changes ] + + * x86, cpu: Rename verify_cpu_64.S to verify_cpu.S + * x86, cpu: Clear XD_DISABLED flag on Intel to regain NX + * x86, cpu: Call verify_cpu during 32bit CPU startup + * x86, cpu: Only CPU features determine NX capabilities + + [ Upstream Changes ] + + * rebased to v2.67.37-rc2 + + -- Andy Whitcroft Tue, 16 Nov 2010 13:13:29 +0000 + +linux (2.6.37-4.12) natty; urgency=low + + [ Andy Whitcroft ] + + * Revert "[Upstream] HID: magicmouse: add param for scroll speed" + * Revert "[Upstream] HID: magicmouse: properly account for scroll + movement in state" + * Revert "[Upstream] HID: magicmouse: disable and add module param for + scroll acceleration" + * Revert "[Upstream] HID: magicmouse: scroll on entire surface, not just + middle of mouse" + + [ Henrik Rydberg ] + + * SAUCE: hid: ntrig: remove sysfs nodes + * SAUCE: hid: ntrig: Setup input filtering manually + * SAUCE: hid: ntrig: New ghost-filtering event logic + + [ Manoj Iyer ] + + * SAUCE: Added quirk to recognize GE0301 3G modem as an interface. + - LP: #348861 + + [ Upstream Kernel Changes ] + + * Revert "mmc: fix all hangs related to mmc/sd card insert/removal during + suspend/resume" + * Revert "[ARM] implement arch_randomize_brk()" + * Revert "ARM: stack protector: change the canary value per task" + * Revert "ARM: initial stack protector (-fstack-protector) support" + * Revert "ALSA: hda - Handle pin NID 0x1a on ALC259/269" + * Revert "ALSA: hda - Handle missing NID 0x1b on ALC259 codec" + * Revert "perf probe: Add kernel source path option" + * hid: ntrig: Support single-touch devices + * hid: ntrig: Mask pen switch events + * net: rtnetlink.h -- only include linux/netdevice.h when used by the + kernel + - LP: #673073 + * Fix userspace build of linux/fs.h + + -- Andy Whitcroft Mon, 15 Nov 2010 19:31:44 +0000 + +linux (2.6.37-3.11) natty; urgency=low + + [ Andy Whitcroft ] + + * Revert "ubuntu: AUFS -- update to + b37c575759dc4535ccc03241c584ad5fe69e3b25" + * Revert "ubuntu: AUFS -- track changes to the arguements to fop fsync()" + * Revert "ubuntu: AUFS -- update to standalone 2.6.35-rcN as at 20100601" + * Revert "ubuntu: AUFS -- update to standalone 2.6.34 as at 20100601" + * Revert "ubuntu: AUFS -- aufs2 base patch for linux-2.6.34" + * [Config] Disable intel_idle for -virtual kernels + - LP: #651370 + * [Config] enforcer -- ensure we never enable CONFIG_IMA + * debian -- pass the correct flavour name when checking configs + * [Config] enforcer -- ensure CONFIG_INTEL_IDLE is off for -virtual + * [Config] ensure CONFIG_IPV6=y for powerpc + * [Config] enforcer -- ensure CONFIG_IPV6=y + * ubuntu: AUFS -- aufs2-base.patch aufs2.1-36-UNRELEASED-20101103 + * ubuntu: AUFS -- aufs2-standalone.patch aufs2.1-36-UNRELEASED-20101103 + * ubuntu: AUFS -- update to aufs2.1-36-UNRELEASED-20101103 + * ubuntu: AUFS -- re-enable + * ubuntu: AUFS -- track changes to work queue initialisation + * ubuntu: AUFS -- track changes to llseek in v2.6.37-rc1 + * SAUCE: fbcon -- fix race between open and removal of framebuffers + * SAUCE: fbcon -- fix OOPs triggered by race prevention fixes + - LP: #614008 + * SAUCE: drm -- stop early access to drm devices + + [ Jeremy Kerr ] + + * [Config] Build-in powermac ZILOG serial driver + - LP: #673346 + + [ Kees Cook ] + + * SAUCE: nx-emu: use upstream ASLR when possible + + [ Tim Gardner ] + + * [Config] Use correct be2iscsi module name in d-i/modules/scsi-modules + - LP: #628776 + + [ Upstream Kernel Changes ] + + * i386: NX emulation + * nx-emu: drop exec-shield sysctl, merge with disable_nx + * nx-emu: standardize boottime message prefix + * mmap randomization for executable mappings on 32-bit + * exec-randomization: brk away from exec rand area + + -- Andy Whitcroft Thu, 11 Nov 2010 23:46:37 +0000 + +linux (2.6.37-2.10) natty; urgency=low + + [ Andy Whitcroft ] + + * reinstate armel config changes: + * [Config] CONFIG_GPIO_PCH=n for armel FTBS + * [Config] CONFIG_GPIO_VX855=n for armel FTBS + + -- Andy Whitcroft Wed, 03 Nov 2010 22:20:35 +0000 + +linux (2.6.37-2.9) natty; urgency=low + + [ Andy Whitcroft ] + + * config -- fix genportsconfig + * [Config] move powerpc over from ports to distro + * bump master version number to match contained kernel + * SAUCE: fix documentation strings for struct input_keymap_entry + * usb: gadget: goku_udc: add registered flag bit + + -- Andy Whitcroft Tue, 02 Nov 2010 15:14:11 +0000 + +linux (2.6.36-2.8) natty; urgency=low + + [ Tim Gardner ] + + * [Config]: fix changed CONFIG_SYSFS_DEPRECATED_V2 enforcement rules + * [Config]: TWL4030_CORE=n for FTBS + * [Config]: CONFIG_ATH6K_LEGACY=n for FTBS + * [Config]: CONFIG_SOLO6X10=n for FTBS + * [Config]: CONFIG_GPIO_PCH=n for armel FTBS + * [Config]: CONFIG_GPIO_VX855=n for armel FTBS + * [Config]: CONFIG_DRM_NOUVEAU=n for armel FTBS + * [Config]: CONFIG_LINE6_USB=n for armel FTBS + * [Config]: CONFIG_SENSORS_AK8975=n for armel FTBS + * [Config]: CONFIG_I2C_I801=n for armel FTBS + * UBUNTU: SAUCE: AppArmor: Fix unpack of network tables. + * AppArmor: compatibility patch for v5 interface + * AppArmor: compatibility patch for v5 network controll + * Dropped (pre-stable): input: Support Clickpad devices in ClickZone mode + * Dropped: UBUNTU: SAUCE: libata: Add ALPM power state accounting to the AHCI driver + * Dropped: UBUNTU: SAUCE: Added quirk to recognize GE0301 3G modem as an interface. + * Dropped: hid: 3m: Convert to MT slots + * Dropped: HID: magicmouse: don't allow hidinput to initialize the device + * Dropped: HID: magicmouse: simplify touch data bit manipulation + * Dropped: HID: magicmouse: simplify touch down logic + * Dropped: HID: magicmouse: enable Magic Trackpad support + * Dropped: UBUNTU: SAUCE: hid: ntrig: remove sysfs nodes + * Dropped: UBUNTU: SAUCE: hid: ntrig: Setup input filtering manually + * Dropped: UBUNTU: SAUCE: hid: ntrig: New ghost-filtering event logic + * Dropped: UBUNTU: SAUCE: hid: ntrig: identify firmware version (wiggled) + * Dropped: UBUNTU: (pre-stable): input: Support Clickpad devices in ClickZone mode + * Dropped: UBUNTU: SAUCE: KMS: cache the EDID information of the LVDS + * Dropped: UBUNTU: SAUCE: fbcon -- fix race between open and removal of framebuffers + * Dropped: UBUNTU: SAUCE: fbcon -- fix OOPs triggered by race prevention fixes + * Dropped: UBUNTU: SAUCE: x86: implement cs-limit nx-emulation for ia32 + * Dropped: UBUNTU: SAUCE: x86: more tightly confine cs-limit nx-emulation to ia32 only + * Dropped: UBUNTU: SAUCE: [um] Don't use nx_enabled under UML + * Dropped: UBUNTU: SAUCE: x86: brk away from exec rand area + + [ Upstream Kernel Changes ] + + * rebased against 2.6.27-rc1 + + -- Tim Gardner Fri, 22 Oct 2010 19:35:05 -0600 + +linux (2.6.36-1.7) natty; urgency=low + + [ Andy Whitcroft ] + + * rebased to v2.6.36 final + * [Config] update configs following rebase to v2.6.36 final + * [Config] update ports configs following rebase to v2.6.36 final + + [ Upstream Kernel Changes ] + + * rebased to v2.6.36 final + + -- Andy Whitcroft Thu, 21 Oct 2010 14:28:57 +0100 + +linux (2.6.36-1.6) natty; urgency=low + + [ Upstream Kernel Changes ] + + * drop broadcom staging driver preview: + * Revert "Staging: Add initial release of brcm80211 - Broadcom 802.11n + wireless LAN driver." + + -- Andy Whitcroft Wed, 20 Oct 2010 10:41:25 +0100 + +linux (2.6.36-1.5) natty; urgency=low + + [ Andy Whitcroft ] + + * rebase to v2.6.36-rc8 + * updateconfigs following rebase to v2.6.36-rc8 + * updateportsconfigs following rebase to v2.6.36-rc8 + * config -- simplify the kernelconfig interface + * config -- add new config mode 'dumpconfigs' + + [ Tim Gardner ] + + * Simplify the use of CROSS_COMPILER + + [ Upstream Kernel Changes ] + + * drop broadcom staging driver preview: + * Revert "staging: brcm80211: Make compiling of brcm80211.ko and + brcmfmac.ko mutually exclusive." + * Revert "staging: brcm80211: Fix compile issue when BRCM80211_PCI is not + set." + * Revert "Staging: brcm80211: remove driver specific -W options" + * Revert "Staging: brcm80211: clean up makefile cflag lines" + * Revert "staging: brcm80211: add fullmac driver" + * Revert "staging: brcm80211: use string native library" + * Revert "staging: brcm80211: use native ctype library" + * Revert "staging: brcm80211: fix remaining checkpatch errors." + * Revert "staging: brcm80211: fix "ERROR: trailing whitespace."" + * Revert "staging: brcm80211: fix "ERROR: spaces required around that + ..."" + * Revert "staging: brcm80211: fix "ERROR: spaces prohibited around that + ':' ..."" + * Revert "staging: brcm80211: fix "ERROR: space required before that + ..."" + * Revert "staging: brcm80211: fix "ERROR: space required after that ..."" + * Revert "staging: brcm80211: fix "ERROR: space required after that close + brace"" + * Revert "staging: brcm80211: fix "ERROR: space prohibited before + ...close square bracket"" + * Revert "staging: brcm80211: fix "ERROR: space prohibited after that + ..."" + * Revert "staging: brcm80211: fix "ERROR: need consistent spacing around + '*'"" + * Revert "staging: brcm80211: fix 'ERROR: "(foo*)" should be "(foo *)"'" + * Revert "staging: brcm80211: fix "ERROR: Macros w/ mult. statements ... + do - while loop"" + * Revert "staging: brcm80211: fix "ERROR: Macros w/ complex values ... + parenthesis"" + * Revert "staging: brcm80211: fix "ERROR: do not initialise statics to 0 + or NULL"" + * Revert "staging: brcm80211: fix "ERROR: do not initialise globals to 0 + or NULL"" + * Revert "staging: brcm80211: fix "ERROR: while should follow close brace + '}'"" + * Revert "staging: brcm80211: fix "ERROR: that open brace { ... prev + line"" + * Revert "staging: brcm80211: fix "ERROR: trailing statements should be + on next line"" + * Revert "staging: brcm80211: fix "ERROR: do not use assignment in if + condition"" + * Revert "staging: brcm80211: fix "ERROR: return is not a function, + paren..."" + * Revert "staging: brcm80211: fix "ERROR: open brace '{' following + function dec..."" + * Revert "staging: brcm80211: fix 'ERROR: "foo * bar" should be "foo + *bar"'" + * Revert "staging: brcm80211: Fix URLs for firmware files." + * Revert "staging: brcm80211: use '%pM' format to print MAC address" + * Revert "staging: brcm80211: Add contact info to TODO list." + * Revert "staging: brcm80211: Fix some initialisation failure paths" + * Export dump_{write,seek} to binary loader modules + * rebase to v2.6.36-rc8. + + -- Andy Whitcroft Tue, 19 Oct 2010 18:58:11 +0100 + +linux (2.6.36-0.4) natty; urgency=low + + [ Andy Whitcroft ] + + * SAUCE: perf: increase stack footprint to avoid stack-protector warning + (fixes FTBS on powerpc) + + -- Andy Whitcroft Thu, 14 Oct 2010 13:16:16 +0100 + +linux (2.6.36-0.3) natty; urgency=low + + [ Andy Whitcroft ] + + * [Config] disable CONFIG_SCSI_QLA_ISCSI to fix FTBS on powerpc + + -- Andy Whitcroft Thu, 14 Oct 2010 03:01:30 +0100 + +linux (2.6.36-0.2) natty; urgency=low + + [ Andy Whitcroft ] + + * [Config] updateportsconfigs following rebase to 2.6.36-rc7 + (fix FTBS on powerpc) + + -- Andy Whitcroft Wed, 13 Oct 2010 23:25:12 +0100 + +linux (2.6.36-0.1) natty; urgency=low + + [ Andy Whitcroft ] + + * reduce disk usage during buildd builds + - LP: #645653 + * [Config] enforcer -- ensure CONFIG_INIT_PASS_ALL_PARAMS is y + * [Config] armel -- drop omap flavour + + [ Tim Gardner ] + + * Added dropped patch list + * more dropped patches + * [Config] Disable aufs, dmraid-4.5, ndis-wrapper + * [Config] Add support for cross compiling armel + * [Config] CONFIG_SCSI_QLA_ISCSI=n for armel + * [Upstream] drivers/serial/mfd.c: Fix ARM compile error + * [Config]: updateconfigs after adding brcm80211 + * staging: brcm80211: Fix Makefile syntax error + * rebased to v2.6.36-rc7 + + [ Upstream Kernel Changes ] + + * (upstream) IPS driver: don't toggle CPU turbo on unsupported CPUs + * (upstream) IPS driver: verify BIOS provided limits + * intel_ips: Print MCP limit exceeded values. + * Staging: Add initial release of brcm80211 - Broadcom 802.11n wireless + LAN driver. + * staging: brcm80211: Fix some initialisation failure paths + * staging: brcm80211: Add contact info to TODO list. + * staging: brcm80211: use '%pM' format to print MAC address + * staging: brcm80211: Fix URLs for firmware files. + * staging: brcm80211: fix 'ERROR: "foo * bar" should be "foo *bar"' + * staging: brcm80211: fix "ERROR: open brace '{' following function + dec..." + * staging: brcm80211: fix "ERROR: return is not a function, paren..." + * staging: brcm80211: fix "ERROR: do not use assignment in if condition" + * staging: brcm80211: fix "ERROR: trailing statements should be on next + line" + * staging: brcm80211: fix "ERROR: that open brace { ... prev line" + * staging: brcm80211: fix "ERROR: while should follow close brace '}'" + * staging: brcm80211: fix "ERROR: do not initialise globals to 0 or NULL" + * staging: brcm80211: fix "ERROR: do not initialise statics to 0 or NULL" + * staging: brcm80211: fix "ERROR: Macros w/ complex values ... + parenthesis" + * staging: brcm80211: fix "ERROR: Macros w/ mult. statements ... do - + while loop" + * staging: brcm80211: fix 'ERROR: "(foo*)" should be "(foo *)"' + * staging: brcm80211: fix "ERROR: need consistent spacing around '*'" + * staging: brcm80211: fix "ERROR: space prohibited after that ..." + * staging: brcm80211: fix "ERROR: space prohibited before ...close square + bracket" + * staging: brcm80211: fix "ERROR: space required after that close brace" + * staging: brcm80211: fix "ERROR: space required after that ..." + * staging: brcm80211: fix "ERROR: space required before that ..." + * staging: brcm80211: fix "ERROR: spaces prohibited around that ':' ..." + * staging: brcm80211: fix "ERROR: spaces required around that ..." + * staging: brcm80211: fix "ERROR: trailing whitespace." + * staging: brcm80211: fix remaining checkpatch errors. + * staging: brcm80211: use native ctype library + * staging: brcm80211: use string native library + * staging: brcm80211: add fullmac driver + * Staging: brcm80211: clean up makefile cflag lines + * Staging: brcm80211: remove driver specific -W options + * staging: brcm80211: Fix compile issue when BRCM80211_PCI is not set. + * staging: brcm80211: Make compiling of brcm80211.ko and brcmfmac.ko + mutually exclusive. + + -- Andy Whitcroft Tue, 12 Oct 2010 16:00:27 +0100 + +linux (2.6.35-22.33) maverick; urgency=low + + [ Andy Whitcroft ] + + * Revert "SAUCE: Add support for Intellimouse Mode in ALPS touchpad on + Dell E2 series Laptops" + - LP: #641320 + + [ Brian Rogers ] + + * SAUCE: ir-core: Fix null dereferences in the protocols sysfs interface + - LP: #624701 + + [ Christopher James Halse Rogers ] + + * SAUCE: Nouveau: Add quirk framework to disable acceleration + - LP: #544088, #546393 + * SAUCE: Nouveau: Disable acceleration on MacBook Pros + - LP: #546393 + + [ John Johansen ] + + * Revert "SAUCE: AppArmor: allow newer tools to load policy on older + kernels" + * SAUCE: AppArmor: allow newer tools to load policy on older kernels + - LP: #639758 + + [ Mathieu J. Poirier ] + + * SAUCE: Adding vdd_sdi regulator supply to OMAP3EVM + + [ Upstream Kernel Changes ] + + * ALSA: HDA: Enable internal speaker on Dell M101z + - LP: #640254 + + -- Leann Ogasawara Fri, 17 Sep 2010 13:21:28 -0700 + +linux (2.6.35-22.32) maverick; urgency=low + + [ Arjan van de Ven ] + + * SAUCE: libata: Add ALPM power state accounting to the AHCI driver + + [ David Henningsson ] + + * SAUCE: ALSA: HDA: Enable internal mic on Dell E6410 and Dell E6510 + - LP: #605047, #628961 + + [ John Johansen ] + + * [Upstream] AppArmor: Fix splitting an fqname into separate namespace + and profile names + - LP: #615947 + * [Upstream] AppArmor: Fix locking from removal of profile namespace + - LP: #615947 + * SAUCE: AppArmor: allow newer tools to load policy on older kernels + - LP: #639758 + * SAUCE: Improve Amazon EBS performance for EC2 + - LP: #634316 + + [ Leann Ogasawara ] + + * Revert "SAUCE: i915 KMS -- blacklist i855" + * Revert "SAUCE: i915 KMS -- blacklist i845g" + * Revert "SAUCE: i915 KMS -- blacklist i830" + * Revert "SAUCE: i915 KMS -- support disabling KMS for known broken + devices" + * execute module-inclusion within a subshell + - LP: #621175 + + [ Upstream Kernel Changes ] + + * (pre-stable) bounce: call flush_dcache_page() after bounce_copy_vec() + - LP: #633227 + * (pre-stable) drm/i915: don't enable self-refresh on Ironlake + - LP: #629711 + * (pre-stable) mm: Move vma_stack_continue into mm.h + * x86, hwmon: Fix unsafe smp_processor_id() in thermal_throttle_add_dev + - LP: #601073 + * PM / Runtime: Make runtime_status attribute not debug-only (v. 2) + * PM / Runtime: Add runtime PM statistics (v3) + * compat: Make compat_alloc_user_space() incorporate the access_ok() + - CVE-2010-3081 + * x86-64, compat: Test %rax for the syscall number, not %eax + - CVE-2010-3301 + * x86-64, compat: Retruncate rax after ia32 syscall entry tracing + - CVE-2010-3301 + + -- Leann Ogasawara Tue, 14 Sep 2010 08:46:49 -0700 + +linux (2.6.35-21.31) maverick; urgency=low + + [ Andy Whitcroft ] + + * bodge linux-libc-dev package version due to ti-omap4 error + * linux-libc-dev -- ensure we can only build this on debian.master + + -- Leann Ogasawara Mon, 13 Sep 2010 09:54:31 -0700 + +linux (2.6.35-21.30) maverick; urgency=low + + [ Andy Whitcroft ] + + * SAUCE: fbcon -- fix OOPs triggered by race prevention fixes + - LP: #614008 + + [ Daniel Lezcano ] + + * SAUCE: fix compilation warning when CONFIG_SECURITY is not set + + [ Henrik Rydberg ] + + * SAUCE: Input: wacom - add fuzz parameters to features + * SAUCE: Input: wacom - collect device quirks into single function + * SAUCE: Input: wacom - add support for the Bamboo Touch trackpad + * SAUCE: Input: wacom - add a quirk for low resolution Bamboo devices + * SAUCE: hid: ntrig: Remove unused device ids + * SAUCE: hid: ntrig: remove sysfs nodes + * SAUCE: hid: ntrig: Correct logic for quirks + * SAUCE: hid: ntrig: zero-initialize ntrig struct + * SAUCE: hid: ntrig: Setup input filtering manually + * SAUCE: hid: ntrig: New ghost-filtering event logic + + [ Leann Ogasawara ] + + * SAUCE: ndiswrapper: Initialize buffer index and check its value + - LP: #613796 + + [ Manoj Iyer ] + + * SAUCE: Add support for Intellimouse Mode in ALPS touchpad on Dell E2 + series Laptops + - LP: #632884 + + [ Ping Cheng ] + + * SAUCE: Input: wacom - parse the Bamboo device family + + [ Rafi Rubin ] + + * SAUCE: hid: ntrig: identify firmware version (wiggled) + + [ Tim Gardner ] + + * [Config] CONFIG_NL80211_TESTMODE=n + + [ Upstream Kernel Changes ] + + * Revert "input: mt: Add support for the Bamboo Touch trackpad" + * e1000e: initial support for 82579 LOMs + * e1000e: correct MAC-PHY interconnect register offset for 82579 + * (pre-stable) ALSA: hda - Add a new hp-laptop model for Conexant 5066, + tested on HP G60 + - LP: #587388 + * DSS2: Don't power off a panel twice + - LP: #588243 + * mmc: build fix: mmc_pm_notify is only available with CONFIG_PM=y + * Input: i8042 - reset keyboard controller wehen resuming from S2R + - LP: #86820 + * ALSA: hda - Fix beep frequency on IDT 92HD73xx and 92HD71Bxx codecs + - LP: #414795 + * agp/intel: Support the extended physical addressing bits on + Sandybridge. + - LP: #632488 + * drm/i915,intel_agp: Add support for Sandybridge D0 + - LP: #632488 + * (pre-stable) intel_agp,i915: Add more sandybridge graphics device ids + - LP: #632488 + * mmc: omap: fix for bus width which improves SD card's peformance. + + -- Leann Ogasawara Tue, 07 Sep 2010 09:58:52 -0700 + +linux (2.6.35-20.29) maverick; urgency=low + + [ Andy Whitcroft ] + + * SAUCE: i915 KMS -- support disabling KMS for known broken devices + - LP: #563277 + * SAUCE: i915 KMS -- blacklist i830 + - LP: #542208, #563277 + * SAUCE: i915 KMS -- blacklist i845g + - LP: #541492, #563277 + * SAUCE: i915 KMS -- blacklist i855 + - LP: #511001, #541511, #563277 + + [ Leann Ogasawara ] + + * [Config] Enable CONFIG_SENSORS_PKGTEMP=m + - LP: #601073 + * ARM: Temporarily disable module check for armel + * rebase to v2.6.35.4 + * [Config] update configs following rebase to v2.6.35.4 + + [ Ricardo Salveti de Araujo ] + + * [Config] Change CONFIG_LEDS_TRIGGER_HEARTBEAT from module to built-in + in Omap + + [ Tim Gardner ] + + * [Config] Added be2net, be2scsi to udebs + - LP: #628776 + + [ Upstream Kernel Changes ] + + * x86, cpu: Package Level Thermal Control, Power Limit Notification + definitions + - LP: #601073 + * x86, hwmon: Package Level Thermal/Power: pkgtemp hwmon driver + - LP: #601073 + * x86, hwmon: Package Level Thermal/Power: thermal throttling handler + - LP: #601073 + * x86, hwmon: Package Level Thermal/Power: power limit + - LP: #601073 + * x86, hwmon: Package Level Thermal/Power: pkgtemp documentation + - LP: #601073 + * hid: 3m: Adjust to sequential MT HID protocol + * hid: 3m: Convert to MT slots + * hid: 3m: Correct touchscreen emulation + * hid: 3m: Adjust major / minor axes to scale + * input: bcm5974: Adjust major / minor to scale + * HID: magicmouse: don't allow hidinput to initialize the device + * HID: magicmouse: simplify multitouch feature request + * HID: magicmouse: simplify touch data bit manipulation + * HID: magicmouse: simplify touch down logic + * HID: magicmouse: remove timestamp logic + * HID: magicmouse: enable Magic Trackpad support + * HID: magicmouse: Adjust major / minor axes to scale + * mmc: fix all hangs related to mmc/sd card insert/removal during + suspend/resume + - LP: #477106 + * drm/i915: fix VGA plane disable for Ironlake+ + - LP: #602281 + + -- Leann Ogasawara Mon, 30 Aug 2010 08:38:01 -0700 + +linux (2.6.35-19.28) maverick; urgency=low + + [ Leann Ogasawara ] + + * No changes from 2.6.35-19.27. Some armel udebs were accidentally deleted + from the archive and a no-change rebuild was attempted. However, the ABI + did not get bumped and resulted in build failures for 2.6.35-19.27. Fix + up the ABI and re-upload. + + -- Leann Ogasawara Sat, 28 Aug 2010 16:42:27 -0700 + +linux (2.6.35-19.27) maverick; urgency=low + + [ Leann Ogasawara ] + + * No changes from 2.6.35-19.26. Some armel udebs were accidentally deleted + from the archive. + + -- Leann Ogasawara Fri, 27 Aug 2010 08:58:35 -0700 + +linux (2.6.35-19.26) maverick; urgency=low + + [ Upstream Kernel Changes ] + + * ARM: OMAP: Beagle: revision detection + * ARM: OMAP: Beagle: only Cx boards use pin 23 for write protect + * ARM: OMAP: Beagle: no gpio_wp pin connection on xM + + -- Leann Ogasawara Thu, 26 Aug 2010 09:15:09 -0700 + +linux (2.6.35-19.25) maverick; urgency=low + + [ Jarod Wilson ] + + * SAUCE: Bring in staging/lirc from 2.6.36 + - LP: #609234 + * SAUCE: Update ir-core to linuxtv/other which should be merged for + 2.6.36. + - LP: #609234 + * SAUCE: Fix memleaks in imon and mceusb drivers + - LP: #609234 + * SAUCE: Bring in streamzap support from linuxtv/other + - LP: #609234 + + [ Mario Limonciello ] + + * Remove ubuntu/lirc in favor of staging/lirc from 2.6.36 + - LP: #609234 + + [ Mathieu J. Poirier ] + + * SAUCE: ARM: adding i2c eeprom driver to read EDID + - LP: #608279 + + [ Upstream Kernel Changes ] + + * intel_idle: disable module support + - LP: #615265 + * (pre-stable) ALSA: hda - Ensure codec patch files are checked for the + correct codec ID + * (pre-stable) ALSA: hda - Rename iMic to Int Mic on Lenovo NB0763 + - LP: #605101 + * (pre-stable) ALSA: HDA: Use model=auto for LG R510 + - LP: #495134 + * (pre-stable) ALSA: HDA: Add Sony VAIO quirk for ALC269 + - LP: #519066 + * (pre-stable) ALSA: HDA: Fix front mic on Dell Precision M6500 + - LP: #519066 + * input: mt: Initialize slots to unused (rev2) + * input: mt: Add support for the Bamboo Touch trackpad + * hid: Add a hid quirk for input sync override + + -- Leann Ogasawara Mon, 23 Aug 2010 12:42:52 -0700 + +linux (2.6.35-18.24) maverick; urgency=low + + [ Colin Watson ] + + * Pass DEB_MAINT_PARAMS to hook scripts + + [ Leann Ogasawara ] + + * [Config] Add CONFIG_INPUT_UINPUT=y to config enforcer + - LP: #584812 + * rebase to v2.6.35.3 + + [ Upstream Kernel Changes ] + + * (pre-stable) dell-wmi: Add support for eject key on Dell Studio 1555 + - LP: #609234 + * can: add limit for nframes and clean up signed/unsigned variables + - CVE-2010-2959 + * drm: Initialize ioctl struct when no user data is present + - CVE-2010-2803 + * ARM: initial stack protector (-fstack-protector) support + * ARM: stack protector: change the canary value per task + * [ARM] implement arch_randomize_brk() + * [ARM] add address randomization to mmap() + * ARM: fix ASLR of PIE executables + + -- Leann Ogasawara Sun, 22 Aug 2010 19:22:04 -0700 + +linux (2.6.35-17.23) maverick; urgency=low + + [ Jeremy Kerr ] + + * [Config] build-in uinput module + - LP: #584812 + + [ Leann Ogasawara ] + + * Revert "[Config] [FTBS] ia64: Temporarily disable CONFIG_CEPH_FS" + * Revert "[Config] [FTBS] ia64: Temporarily disable gpiolib" + * Revert "[Config] [FTBS] sparc: Temporarily disable + CONFIG_MTD_NAND_DENALI" + * Revert "[Config] [FTBS] sparc: Temporarily disable + CONFIG_MFD_JANZ_CMODIO" + * Revert "[Config] [FTBS] sparc: Temporarily disable + CONFIG_INFINIBAND_QIB" + * [Config] Enable INTEL_IPS + - LP: #601057 + * Remove ia64 support + * [Config] Update portsconfigs after removing ia64 support + * Remove sparc support + * [Config] Update portsconfigs after removing sparc support + + [ Linus Torvalds ] + + * (pre-stable) mm: fix page table unmap for stack guard page properly + + [ Mathieu J. Poirier ] + + * SAUCE: (no-up) ARM: Resetting power_mode to its original value. + - LP: #591941 + + [ Upstream Kernel Changes ] + + * timer: add on-stack deferrable timer interfaces + - LP: #601057 + * x86 platform driver: intelligent power sharing driver + - LP: #601057 + * IPS driver: add GPU busy and turbo checking + - LP: #601057 + * X86: intel_ips, check for kzalloc properly + - LP: #601057 + * ips driver: make it less chatty + - LP: #601057 + + -- Leann Ogasawara Tue, 17 Aug 2010 09:38:08 -0700 + +linux (2.6.35-16.22) maverick; urgency=low + + [ Andy Whitcroft ] + + * debian -- more agressivly clean up after depmod on purge + - LP: #618591 + + [ Henrik Rydberg ] + + * SAUCE: hid: 3m: Simplify touchsreen emulation logic + + [ Leann Ogasawara ] + + * ubuntu: iscsitarget -- version 1.4.20.2 + * ubuntu: rtl8192se -- update to version 0017.0507.2010 + * rebase to v2.6.35.2 + * [Config] update configs following rebase to v2.6.35.2 + * [Config] update ports configs following rebase to v2.6.35.2 + + [ Luke Yelavich ] + + * [Config] Enable new firewire stack on powerpc + + [ Mathieu J. Poirier ] + + * SAUCE: (drop after 2.6.35) ARM: Using gpmc function to init nand flash. + - LP: #608266 + + -- Leann Ogasawara Thu, 12 Aug 2010 09:58:01 -0700 + +linux (2.6.35-15.21) maverick; urgency=low + + [ Luke Yelavich ] + + * [Config] CONFIG_SND_USB_UA101=m for all architectures + + [ Upstream Kernel Changes ] + + * Input: introduce MT event slots + * Input: document the MT event slot protocol + * (pre-stable) sched: Revert nohz_ratelimit() for now + * (pre-stable) drm/radeon/kms: add missing copy from user + - LP: #606081 + + [ Leann Ogasawara ] + + * rebase to v2.6.35.1 + + -- Leann Ogasawara Mon, 09 Aug 2010 09:24:04 -0700 + +linux (2.6.35-14.20) maverick; urgency=low + + [ Andy Whitcroft ] + + * update Vcs-Git to point to maverick repo + * debian -- include the debian packaging in the -source package + - LP: #608674 + * select debian source format 1.0 + * add support for building selected stages of kernel + - LP: #603087 + * cleanup conditional dependancy handling + - LP: #603087 + + [ Upstream Kernel Changes ] + + * ALSA: hda - Handle missing NID 0x1b on ALC259 codec + - LP: #582199, #586418, #588031 + * ALSA: hda - Handle pin NID 0x1a on ALC259/269 + - LP: #582199, #586418, #588031 + * sched: Revert nohz_ratelimit() for now + + -- Leann Ogasawara Tue, 03 Aug 2010 08:46:47 -0700 + +linux (2.6.35-14.19) maverick; urgency=low + + [ Leann Ogasawara ] + + * rebase to v2.6.35 + + -- Leann Ogasawara Sun, 01 Aug 2010 10:35:56 -0700 + +linux (2.6.35-13.18) maverick; urgency=low + + [ Andy Whitcroft ] + + * SAUCE: (no-up) Modularize vesafb -- fix initialisation + * SAUCE: add tracing for user initiated readahead requests + * SAUCE: vt -- maintain bootloader screen mode and content until vt + switch + * SAUCE: vt -- allow grub to request automatic vt_handoff + * SAUCE: fbcon -- fix race between open and removal of framebuffers + * SAUCE: drm -- stop early access to drm devices + + [ Bryan Wu ] + + * CONFIG: compile in OTG driver and Transceiver driver + - LP: #566645 + * remove OTG modules from modules list file + + [ John Johansen ] + + * SAUCE: AppArmor: -- sync to AppArmor mainline 2010-07-27 + - LP: #581525, #599450 + * SAUCE: AppArmor: -- sync to AppArmor mainline 2010-07-29 + * SAUCE: AppArmor 2.4 compatibility patch + * SAUCE: AppArmor: Allow dfa backward compatibility with broken userspace + * SAUCE: fix pv-ops for legacy Xen + * SAUCE: blkfront: default to sd devices + * [Config] Build in drivers required for Xen pv-ops + + [ Leann Ogasawara ] + + * Revert "[Upstream] i915: Use the correct mask to detect i830 aperture + size." + + [ Lee Jones ] + + * SAUCE: ARM: OMAP: Add macros for comparing silicon revision + - LP: #608095 + * SAUCE: OMAP: DSS2: check for both cpu type and revision, rather than + just revision + - LP: #608095 + * SAUCE: OMAP: DSS2: enable hsclk in dsi_pll_init for OMAP36XX + - LP: #608095 + * SAUCE: ARM: OMAP: Beagle: support twl gpio differences on xM + - LP: #608095 + + [ Upstream Kernel Changes ] + + * agp/intel: Use the correct mask to detect i830 aperture size. + - LP: #597075 + + -- Leann Ogasawara Fri, 30 Jul 2010 15:46:59 -0700 + +linux (2.6.35-12.17) maverick; urgency=low + + [ Leann Ogasawara ] + + * rebase to v2.6.35-rc6 + * [Config] update configs following rebase to v2.6.35-rc6 + * [Config] update ports configs following rebase to v2.6.35-rc6 + * SAUCE: [FTBS] armel: define KEY_F10 and KEYF11 + + [ Leann Ogasawara ] + + * rebase to v2.6.35-rc6 + + -- Leann Ogasawara Fri, 23 Jul 2010 16:16:38 +0200 + +linux (2.6.35-11.16) maverick; urgency=low + + [ Leann Ogasawara ] + + * Bump ABI for new compiler update + + -- Leann Ogasawara Fri, 23 Jul 2010 10:24:58 +0200 + +linux (2.6.35-10.15) maverick; urgency=low + + [ Leann Ogasawara ] + + * Revert "SAUCE: ensure vga16fb loads if no other driver claims the VGA + device" + * [Config] Enable CONFIG_M686=y + - LP: #592495 + + [ Upstream Kernel Changes ] + + * tracing: Add alignment to syscall metadata declarations + + -- Leann Ogasawara Tue, 20 Jul 2010 18:18:49 +0200 + +linux (2.6.35-9.14) maverick; urgency=low + + [ Andy Whitcroft ] + + * ubuntu: AUFS -- add BOM and automated update script + * ubuntu: AUFS -- update to b37c575759dc4535ccc03241c584ad5fe69e3b25 + + [ John Johansen ] + + * [Config] Enable DRBD as a module + + [ Kees Cook ] + + * SAUCE: Yama: verify inode is symlink to avoid bind mounts + - LP: #604407 + + [ Leann Ogasawara ] + + * [Config] Disable CONFIG_DRM_VMWGFX (staging driver) + - LP: #606139 + * [Config] ports: Disable CONFIG_DRM_VMWGFX (staging driver) + - LP: #606139 + * [Config] Enable CONFIG_DEBUG_STRICT_USER_COPY_CHECKS=y + * [Config] ports: Enable CONFIG_DEBUG_STRICT_USER_COPY_CHECKS=y + + [ Lee Jones ] + + * Stop ARM boards crashing when CUPS is loaded + - LP: #601226 + + [ Upstream Kernel Changes ] + + * perf probe: Support tracing an entry of array + * perf probe: Support static and global variables + + -- Leann Ogasawara Fri, 16 Jul 2010 14:38:17 -0700 + +linux (2.6.35-8.13) maverick; urgency=low + + [ Kees Cook ] + + * SAUCE: Yama: check PTRACE using thread group leader + * SAUCE: Yama: search for PTRACE exceptions via thread group leader + - LP: #603716 + + [ Leann Ogasawara ] + + * rebase to v2.6.35-rc5 + * [Config] update configs following rebase to v2.6.35-rc5 + + [ Nicolas Pitre ] + + * SAUCE: make ndiswrapper available on X86 only + + [ Tim Gardner ] + + * [Config] Added ums-cypress to udeb + - LP: #576066 + * SAUCE: fix build error with CONFIG_BLK_DEV_INITRD=n + * [Config] CONFIG_NDISWRAPPER=m across all configs + + [ Upstream Kernel Changes ] + + * HID: magicmouse: report last touch up + * rebase to 2.6.35-rc5 + + -- Leann Ogasawara Tue, 13 Jul 2010 18:57:59 -0700 + +linux (2.6.35-7.12) maverick; urgency=low + + [ Tim Gardner ] + + * [Upstream] i915: Use the correct mask to detect i830 aperture size. + - LP: #597075 + + [ Upstream Kernel Changes ] + + * (drop after 2.6.35) drm/radeon/kms: add ioport register access + (squashed) + + -- Tim Gardner Thu, 08 Jul 2010 09:53:13 -0600 + +linux (2.6.35-7.11) maverick; urgency=low + + [ Tim Gardner ] + + * [Config] CONFIG_X86_MRST=n + + [ Upstream Kernel Changes ] + + * (drop after 2.6.35-rc5) writeback: remove writeback_inodes_wbc + * (drop after 2.6.35-rc5) writeback: split writeback_inodes_wb + * (drop after 2.6.35-rc5) writeback: simplify the write back thread queue + + -- Tim Gardner Tue, 06 Jul 2010 18:39:08 -0600 + +linux (2.6.35-7.10) maverick; urgency=low + + [ Kees Cook ] + + * SAUCE: security: create task_free security callback + * SAUCE: Yama: add PTRACE exception tracking and interface + * SAUCE: security: unconditionally chain to Yama LSM + * Revert "SAUCE: ptrace: restrict ptrace scope to children" + * Revert "SAUCE: fs: block hardlinks to non-accessible sources" + * Revert "SAUCE: fs: block cross-uid sticky symlinks" + * [Upstream] security: Yama LSM + * [Config] Enable CONFIG_SECURITY_YAMA=y + + [ Tim Gardner ] + + * [Config] updateconfigs/updateportsconfigs after rebase to 2.6.35-rc4 + + [ Upstream Kernel Changes ] + + * rebase to 2.6.35-rc4 + + -- Leann Ogasawara Thu, 01 Jul 2010 08:55:57 -0700 + +linux (2.6.35-6.9) maverick; urgency=low + + [ Tim Gardner ] + + * [Upstream] direct_splice_actor() should not use pos in sd + - LP: #588861 + + -- Leann Ogasawara Mon, 28 Jun 2010 12:35:49 -0700 + +linux (2.6.35-6.8) maverick; urgency=low + + [ Mathieu J. Poirier ] + + * ARM: Adding regulator supply for vdds_sdi. + - LP: #597904 + + -- Leann Ogasawara Sun, 27 Jun 2010 16:34:43 -0700 + +linux (2.6.35-6.7) maverick; urgency=low + + [ Alberto Milone ] + + * [Upstream] Add support for the ATIF ACPI method to the radeon driver + + [ Chase Douglas ] + + * [Upstream] HID: magicmouse: scroll on entire surface, not just middle + of mouse + * [Upstream] HID: magicmouse: disable and add module param for scroll + acceleration + * [Upstream] HID: magicmouse: properly account for scroll movement in + state + * [Upstream] HID: magicmouse: add param for scroll speed + * [Upstream] HID: magicmouse: enable horizontal scrolling + + [ Henrik Rydberg ] + + * [Upstream] Input: evdev - convert to dynamic event buffer + * [Upstream] Input: evdev - use driver hint to compute size of event + buffer + * [Upstream] Input: bcm5974 - set the average number of events per MT + event packet + * [Upstream] Input: hid-input - use a larger event buffer for MT devices + * [Upstream] Input: evdev - never leave the client buffer empty after + write + + [ John Johansen ] + + * SAUCE: AppArmor: -- mainline 2010-06-23 + * SAUCE: AppArmor 2.4 compatibility patch + * SAUCE: fs: block hardlinks to non-accessible sources AppArmor portion + + [ Leann Ogasawara ] + + * [Config] Enable CONFIG_INTR_REMAP=y + - LP: #597091 + * [Config] Enable CONFIG_X86_X2APIC + - LP: #597091 + + [ Mathieu J. Poirier ] + + * [Config] ARM: Turning off CONFIG_CPU_IDLE on omap + - LP: #594382 + + -- Leann Ogasawara Thu, 24 Jun 2010 12:19:48 -0700 + +linux (2.6.35-5.6) maverick; urgency=low + + [ Amit Kucheria ] + + * [Config] update omap flavour description + + [ Andy Whitcroft ] + + * update to ubuntu-debian:508b7aa34b578c0d1e51bfb571f2bfb824dc65ac + - LP: #570500, #576274 + * SAUCE: add option to hand off all kernel parameters to init + - LP: #586386 + * [Config] enable passing all kernel command line to init + - LP: #586386 + * [Config] disable CONFIG_VMI + - LP: #537601 + * [Config] enable CONFIG_IPV6_SIT_6RD + - LP: #591869 + * [Config] enable CONFIG_VMWARE_BALOON as module + - LP: #592039 + + [ Leann Ogasawara ] + + * Revert "SAUCE: pm: Config option to disable handling of console during + suspend/resume" + - LP: #594885 + * [Config] Remove CONFIG_PM_DISABLE_CONSOLE + * [Config] ports: enable passing all kernel command line to init + - LP: #586386 + * [Config] Enable CONFIG_FB_VESA=y for x86 + * [Config] Add CONFIG_FRAMEBUFFER_CONSOLE=y to config enforcer + * [Config] Add CONFIG_FB_VESA=y for x86 to config enforcer + * [Config] Enable CONFIG_TASK_DELAY_ACCT=y + - LP: #493156 + + [ Mathieu Poirier ] + + * ARM: Adding MosChip MCS7830 to nic-usb + - LP: #584920 + + [ Upstream Kernel Changes ] + + * Revert "[Upstream] docbook: need xmldoclinks for all doc types" + * docbook: need xmldoclinks for all doc types + * perf probe: Add kernel source path option + + -- Leann Ogasawara Thu, 17 Jun 2010 08:05:29 -0700 + +linux (2.6.35-4.5) maverick; urgency=low + + [ Leann Ogasawara ] + + * Revert "[Upstream] (evdev) Use driver hint to compute the evdev buffer + size (rev2)" + * Revert "[Upstream] (evdev) Convert to dynamic event buffer (rev4)" + * Revert "[Upstream] (evdev) Use multi-reader buffer to save space + (rev4)" + * Revert "SAUCE: drivers: Remove some duplicate device entries in various + modules" + * [Upstream] USB: option: Remove duplicate AMOI_VENDOR_ID + * [Upstream] Revert "USB: Adding support for HTC Smartphones to ipaq" + * [Upstream] p54usb: Comment out duplicate Medion MD40900 device id + + [ Tim Gardner ] + + * [Config] CONFIG_NFS_FSCACHE=y + - LP: #440522 + * [Config] CONFIG_FSCACHE_STATS=y, CONFIG_FSCACHE_HISTOGRAM=y + - LP: #440522 + + -- Leann Ogasawara Wed, 16 Jun 2010 08:43:07 -0700 + +linux (2.6.35-3.4) maverick; urgency=low + + [ Andy Whitcroft ] + + * debian -- ensure the version number is clean + + [ Henrik Rydberg ] + + * [Upstream] Introduce MT event slots (rev 5) + * [Upstream] Document the MT event slot protocol (rev5) + * [Upstream] (evdev) Use multi-reader buffer to save space (rev4) + * [Upstream] (evdev) Convert to dynamic event buffer (rev4) + * [Upstream] (evdev) Use driver hint to compute the evdev buffer size + (rev2) + + [ Leann Ogasawara ] + + * Revert "SAUCE: Add MODULE_ALIAS for Dell WMI module" + * Revert "SAUCE: hostap: send events on data interface as well as master + interface" + * Revert "Fix webcam having USB ID 0ac8:303b" + * Revert "SAUCE: toshiba_acpi -- pull in current -dev version of driver" + * rebase to v2.6.35-rc3 + + [ Maxim Levitsky ] + + * [Config] Enable new Smartmedia/xD translation layer + - LP: #202490 + + [ Upstream Kernel Changes ] + + * net: fix deliver_no_wcard regression on loopback device + + [ Upstream changes ] + + * rebased to v2.6.35-rc3 + + -- Leann Ogasawara Thu, 10 Jun 2010 16:15:22 -0700 + +linux (2.6.35-2.3) maverick; urgency=low + + [ Bryan Wu ] + + * CONFIG: enforce -- make sure we disable CONFIG_LOCALVERSION_AUTO + + [ Leann Ogasawara ] + + * [Config] armel: Enable CONFIG_BNX2=m + * [Config] ports: Enable CONFIG_BNX2X=m + * SAUCE: armel: define get_dma_ops to fix FTBS + + [ Tim Gardner ] + + * [Upstream] net: Print num_rx_queues imbalance warning only when there + are allocated queues + - LP: #591416 + + -- Leann Ogasawara Wed, 09 Jun 2010 08:27:41 -0700 + +linux (2.6.35-2.2) maverick; urgency=low + + [ Andy Whitcroft ] + + * [Config] d-i: make armel configuration versatile flavour specific + - LP: #588805 + * [Config] d-i: enable .udebs for omap flavour + - LP: #588805 + + [ Kees Cook ] + + * ptrace: limit scope to attach only (allow read) + - LP: #589656 + + [ Leann Ogasawara ] + + * rebase to v2.6.35-rc2 + * [Config] update configs following rebase to v2.6.35-rc2 + * [Config] update port configs following rebase to v2.6.35-rc2 + + [ Lee Jones ] + + * Enable perf to be more helpful when perf_ does not exist. + - LP: #570500 + * 'fdr editconfig' modification. Easily skip over unwanted menuconfigs. + + [ Tim Gardner ] + + * [Config] Update bnx2 udeb firmware files + - LP: #589304 + + [ Upstream changes ] + + * rebased to v2.6.35-rc2 + + -- Leann Ogasawara Mon, 07 Jun 2010 09:45:04 -0700 + +linux (2.6.35-1.1) maverick; urgency=low + + [ Andy Whitcroft ] + + * ubuntu: AUFS -- update to standalone 2.6.35-rcN as at 20100601 + - LP: #587888 + * ubuntu: AUFS -- track changes to the arguements to fop fsync() + + [ Leann Ogasawara ] + + * rebase to v2.6.35-rc1 + * [Config] update configs following rebase to v2.6.35-rc1 + * [Config] update port configs following rebase to v2.6.35-rc1 + * SAUCE: lirc: rename usb_buffer_alloc() and usb_buffer_free() + * SAUCE: ndiswrapper: rename usb_buffer_alloc() and usb_buffer_free() + * SAUCE: ndiswrapper: convert multicast list to list_head + * [Config] [FTBS] armel: Temporarily disable CONFIG_GPIO_JANZ_TTL + * [Config] [FTBS] ia64: Temporarily disable gpiolib + * [Config] [FTBS] ia64: Temporarily disable CONFIG_CEPH_FS + * [Config] [FTBS] sparc: Temporarily disable CONFIG_INFINIBAND_QIB + * [Config] [FTBS] sparc: Temporarily disable CONFIG_MFD_JANZ_CMODIO + * [Config] [FTBS] armel: Temporarily disable CONFIG_MFD_JANZ_CMODIO + * [Config] [FTBS] armel: Temporarily disable CONFIG_DT3155 + * [Config] [FTBS] sparc: Temporarily disable CONFIG_MTD_NAND_DENALI + * [Config] [FTBS] armel: Temporarily disable bnx2 + * [Config] [FTBS] armel: Temporarily disable CONFIG_SERIAL_UARTLITE + * SAUCE: [FTBS] armel: Don't include asm/agp.h for ttm + * SAUCE: [FTBS] armel: include linux/dma-mapping.h + * SAUCE: [FTBS] armel: replace omap_set_gpio_debounce with + gpio_set_debounce + + [ Upstream Kernel Changes ] + + * of/usb: fix build error due to of_node pointer move + * n2_crypto: Fix build after of_device/of_platform_driver changes. + * powerpc/fsl-booke: fix the case where we are not in the first page + * powerpc/fsl-booke: Move the entry setup code into a seperate file + * powerpc/kexec: Add support for FSL-BookE + * greth: Fix build after OF device conversions. + + [ Upstream changes ] + + * rebased to v2.6.35-rc1 + + -- Leann Ogasawara Fri, 04 Jun 2010 23:01:52 -0700 + +linux (2.6.35-1.0) UNRELEASED; urgency=low + + [ Leann Ogasawara ] + + * Null entry. + + -- Leann Ogasawara Wed, 02 Jun 2010 15:17:41 -0700 + +linux (2.6.34-5.14) maverick; urgency=low + + [ Tim Gardner ] + + * [Config] Added module inclusion support + * [Config] Added virtual flavour module inclusion list and d-i package + definitions + + -- Leann Ogasawara Wed, 02 Jun 2010 12:58:14 -0700 + +linux (2.6.34-5.13) maverick; urgency=low + + [ Andy Whitcroft ] + + * Revert "ubuntu: AUFS -- aufs2 20091209" + * Revert "ubuntu: AUFS -- export various core functions + (aufs2-standalone.patch)" + * Revert "ubuntu: AUFS -- export various core functions + (aufs2-base.patch)" + * ubuntu: AUFS -- aufs2 base patch for linux-2.6.34 + - LP: #587888 + * ubuntu: AUFS -- aufs2 standalone patch for linux-2.6.34 + - LP: #587888 + * ubuntu: AUFS -- update to standalone 2.6.34 as at 20100601 + - LP: #587888 + * [Config] AUFS -- enable aufs options + - LP: #587888 + + -- Leann Ogasawara Tue, 01 Jun 2010 08:56:43 -0700 + +linux (2.6.34-5.12) maverick; urgency=low + + [ Andy Whitcroft ] + + * enforce -- ensure SYSFS compatibility is disabled + + [ Chase Douglas ] + + * build with libdw-dev for perf probe symbol support + * maverick ftrace configuration changes + + [ Kees Cook ] + + * Revert "SAUCE: x86: brk away from exec rand area" + * Revert "SAUCE: [um] Don't use nx_enabled under UML" + * Revert "SAUCE: [x86] implement cs-limit nx-emulation for ia32" + * SAUCE: x86: implement cs-limit nx-emulation for ia32 + - LP: #369978 + * SAUCE: x86: more tightly confine cs-limit nx-emulation to ia32 only + * SAUCE: x86: brk away from exec rand area + - LP: #452175 + * SAUCE: ptrace: restrict ptrace scope to children + + [ Leann Ogasawara ] + + * Add new omap flavour to getabis + * [Config] Enable CONFIG_FRAMEBUFFER_CONSOLE=y for all archs + - LP: #585490 + * build/modules: Temorarily add ignore.modules + * ubuntu: iscsitarget -- version 1.4.20.1 + + [ Loïc Minier ] + + * SAUCE: [um] Don't use nx_enabled under UML + - LP: #524849 + + -- Leann Ogasawara Fri, 28 May 2010 08:27:17 -0700 + +linux (2.6.34-4.11) maverick; urgency=low + + [ Amit Kucheria ] + + * SAUCE: omap: remove calls to usb_nop_xceiv_register from board files + * [Config] Add support for OMAP-mainline flavour + + [ Andy Whitcroft ] + + * SAUCE: powerpc: fix compile error when ptrace.h is included from + userspace + - LP: #583733 + + [ Chase Douglas ] + + * Revert "SAUCE: Don't register vga16fb framebuffer if other framebuffers + are present" + * Revert "SAUCE: Disable function tracing after hitting __schedule_bug" + * Revert "SAUCE: drm/i915: don't change DRM configuration when releasing + load detect pipe" + + [ Kees Cook ] + + * SAUCE: fs: block cross-uid sticky symlinks + * SAUCE: fs: block hardlinks to non-accessible sources + + [ Koen Kooi ] + + * SAUCE: board-omap3-beagle: add DSS2 support + + [ Leann Ogasawara ] + + * Revert "staging/go7007 -- disable" + * Revert "[Config] staging/winbond -- disable" + * Revert "Disable 4MB page tables for Atom, work around errata AAE44" + * Revert "SAUCE: sync before umount to reduce time taken by ext4 umount" + * Revert "SAUCE: Enable an e1000e Intel Corporation 82567 Gigabit + controller" + * Revert "SAUCE: Fix MODULE_IMPORT/MODULE_EXPORT" + * Revert "SAUCE: Created MODULE_EXPORT/MODULE_IMPORT macros" + * Revert "SAUCE: input/mouse/alps: Do not call psmouse_reset() for alps" + * Revert "SAUCE: r8169: disable TSO by default for RTL8111/8168B + chipsets." + * Revert "[Upstream] b43: Declare all possible firmware files." + * Revert "add Breaks: against hardy lvm2" + * Revert "SAUCE: Guest OS does not recognize a lun with non zero target + id on Vmware ESX Server" + * Revert "SAUCE: Catch nonsense keycodes and silently ignore" + * [Config] Enable CONFIG_ECRYPT_FS=y for ports + * [Config] Enable CONFIG_USB=y for armel and sparc + * [Config] Enable CONFIG_SCSI=y for ia64 and sparc + * [Config] Enable CONFIG_RFKILL=y for ports + * [Config] Enable CONFIG_ATH9K_DEBUGFS=y + * [Config] Enable CONFIG_IWMC3200TOP_DEBUGFS=y + * [Config] Enable CONFIG_RCU_FAST_NO_HZ=y + * [Config] Enable CONFIG_IWLWIFI_DEVICE_TRACING=y + * [Config] Enable CONFIG_LIBERTAS_MESH=y + * [Config] Enable CONFIG_MMC_RICOH_MMC=y + * [Config] CONFIG_RT2800USB_UNKNOWN=y + * [Config] Enable CONFIG_VGA_SWITCHEROO=y + * [Config] Enable CONFIG_CEPH_FS=m + * [Config] Enable CONFIG_CRYPTO_PCRYPT=m + * [Config] Enable CONFIG_EEEPC_WMI=m + * [Config] Enable CONFIG_RT2800PCI=m + * [Config] Enable CONFIG_SCSI_HPSA=m + * [Config] Enable CONFIG_VHOST_NET=m + * [Config] Disable CONFIG_SND_HDA_INPUT_BEEP_MODE by default + - LP: #582350 + * [Config] Disable CONFIG_SOUND_OSS* and CONFIG_SND_*OSS + - LP: #579300 + * [Config] Enable CONFIG_PCIEASPM=y + - LP: #333990 + * [Config] updateconfigs for OMAP flavour + + [ Loïc Minier ] + + * Enable perf tools on armel + + [ Tim Gardner ] + + * SAUCE: Updated ndiswrapper to 1.56 + - LP: #582555 + * [Config] Added virtual flavour + * [Config] Remove support for sub-flavours + * [Config] Removed amd64 preempt flavour + * [Config] updateconfigs, updateportsconfigs after flavour munging + + -- Leann Ogasawara Tue, 25 May 2010 09:34:55 -0700 + +linux (2.6.34-3.10) maverick; urgency=low + + [ Leann Ogasawara ] + + * rebase to v2.6.34 + + [ Upstream changes ] + + * rebased to v2.6.34 + + -- Leann Ogasawara Tue, 18 May 2010 17:35:35 -0700 + +linux (2.6.34-2.9) maverick; urgency=low + + [ Leann Ogasawara ] + + * [Config] [FTBS] Disable comedi for armel + + -- Leann Ogasawara Thu, 13 May 2010 23:20:55 +0200 + +linux (2.6.34-2.8) maverick; urgency=low + + [ Leann Ogasawara ] + + * Drop lpia + * [Config] [FTBS] disable KVM + * [Config] [FTBS] disable ipr for armel + + -- Leann Ogasawara Thu, 13 May 2010 16:07:52 +0200 + +linux (2.6.34-2.7) maverick; urgency=low + + [ Leann Ogasawara ] + + * [Config] disable CONFIG_SCSI_IPR on powerpc + * [Config] Remove 386 flavour per UDS discussion + + -- Leann Ogasawara Wed, 12 May 2010 18:26:43 +0200 + +linux (2.6.34-1.6) maverick; urgency=low + + [ Chase Douglas ] + + * enforce CONFIG_TMPFS_POSIX_ACL=y + - LP: #575940 + * don't force module dependency checking + - LP: #577029 + + [ Kees Cook ] + + * SAUCE: mmap_min_addr check CAP_SYS_RAWIO only for write + - LP: #568844 + + [ Leann Ogasawara ] + + * Revert "SAUCE: ata: blacklist FUJITSU MHW2160BH PL" + * rebase to v2.6.34-rc7 + * [Config] update configs following rebase to v2.6.34-rc7 + * [Config] update port configs following rebase to v2.6.34-rc7 + * Add btrfs to the udebs + + [ Tim Gardner ] + + * [Config] Add atl1c to nic-modules udeb + - LP: #557130 + + [ Upstream changes ] + + * rebased to v2.6.34-rc7 + + -- Leann Ogasawara Tue, 11 May 2010 11:29:08 +0200 + +linux (2.6.34-1.5) UNRELEASED; urgency=low + + [ Leann Ogasawara ] + + * rebase to v2.6.34-rc6 + * [Config] update configs following rebase to v2.6.34-rc6 + * [Config] update port configs following rebase to v2.6.34-rc6 + + [ Upstream changes ] + + * rebased to v2.6.34-rc6 + + -- Leann Ogasawara Fri, 30 Apr 2010 15:54:05 +0100 + +linux (2.6.34-1.4) UNRELEASED; urgency=low + + [ Leann Ogasawara ] + + * rebase to v2.6.34-rc5 + * [Config] update ports configs following rebase to v2.6.34-rc5 + + [ Upstream changes ] + + * rebased to v2.6.34-rc5 + + -- Leann Ogasawara Thu, 22 Apr 2010 15:36:12 -0700 + +linux (2.6.34-1.3) UNRELEASED; urgency=low + + [ Leann Ogasawara ] + + * rebase to v2.6.34-rc4 + * [Config] update configs following rebase to v2.6.34-rc4 + * [Config] update port configs following rebase to v2.6.34-rc4 + * ubuntu: dm-raid4-5 -- update to compile with 2.6.34-rc4 + + [ Upstream changes ] + + * rebased to v2.6.34-rc4 + + -- Leann Ogasawara Tue, 13 Apr 2010 18:33:44 -0700 + +linux (2.6.34-1.2) UNRELEASED; urgency=low + + [ Leann Ogasawara ] + + * Temorarily disable building linux-doc + * rebase to v2.6.34-rc3 + * [Config] update configs following rebase to v2.6.34-rc3 + * [Config] update port configs following rebase to v2.6.34-rc3 + + [ Upstream changes ] + + * rebased to v2.6.34-rc3 + + -- Leann Ogasawara Tue, 30 Mar 2010 16:55:44 -0700 + +linux (2.6.34-1.1) UNRELEASED; urgency=low + + [ Leann Ogasawara ] + + * rebase to v2.6.34-rc2 + * ubuntu: dm-raid4-5 -- update to compile with 2.6.34-rc2 + * [Config] update port configs following rebase to v2.6.34-rc2 + * [Config] update configs following rebase to v2.6.34-rc2 + + [ Upstream changes ] + + * rebased to v2.6.34-rc2 + + -- Leann Ogasawara Wed, 24 Mar 2010 23:00:39 -0700 + +linux (2.6.33-1.1) UNRELEASED; urgency=low + + [ Leann Ogasawara ] + + * ubuntu: dm-raid4-5 -- update to compile with 2.6.33 + * ubuntu: lirc -- drop explicit include of linux/autoconf.h + * ubuntu: lirc -- pass kfifo to kfifo_alloc and move spinlock + * ubuntu: lirc -- rename kfifo_put and kfifo_get + * ubuntu: iscsitarget -- rename daddr inet_sock field + * rebased to v2.6.33 + * [Config] update configs following rebase to v2.6.33 + * [Config] update ports configs following rebase to v2.6.33 + + [ Upstream changes ] + + * rebased to v2.6.33 + + -- Leann Ogasawara Tue, 23 Mar 2010 03:55:46 -0700 + +linux (2.6.33-0.0) UNRELEASED; urgency=low + + [ Leann Ogasawara ] + + * Null entry. + + -- Leann Ogasawara Wed, 17 Mar 2010 07:48:56 -0700 + +linux (2.6.32-16.25) lucid; urgency=low + + [ Andy Whitcroft ] + + * linux-tools -- move to Suggests: with explicit seeding + - LP: #534635 + + [ Tim Gardner ] + + * [Config] CONFIG_HID=m + + [ Upstream Kernel Changes ] + + * (pre-stable) sched: Fix SMT scheduler regression in + find_busiest_queue() + * KVM: introduce kvm_vcpu_on_spin + * KVM: VMX: Add support for Pause-Loop Exiting + + -- Andy Whitcroft Tue, 09 Mar 2010 14:13:51 +0000 + +linux (2.6.32-16.24) lucid; urgency=low + + [ Andy Whitcroft ] + + * armel -- perf userspace does not support arm + * ia64 -- libelf-dev/binutils-dev to not provide necessary libraries + + -- Andy Whitcroft Sat, 06 Mar 2010 11:42:12 +0000 + +linux (2.6.32-16.23) lucid; urgency=low + + [ Andy Whitcroft ] + + * SAUCE: PM report driver and device suspend/resume times -- move config + * update to standards version 3.8.4.0 + * printenv -- expose all of the package selectors + * source package -- cleanup source content control + * doc package -- ensure we do build package content on buildd + * lintian -- correct the address in the debian/copyright + * lintian -- update debhelper package version dependancy + * lintian -- fix ghostscript dependancy + * lintian -- add required misc:Depends + * lintian -- move our debhelper compat level to debian/compat + * perf -- build the kernel carried tools + * perf -- add linux-tools carrying the version switches and manuals + * SAUCE: fix up Kconfig for staging drivers + * [Config] enable NOUVEAU etc following drm backport + * update DRM to mainline v2.6.33 + * [Config] Remove AppArmor config options that no longer exist (ports) + * [Config] updateportsconfigs following drm update + + [ John Johansen ] + + * ubuntu: AppArmor -- update to mainline 2010-03-04 + * SAUCE: AppArmor: Reintroduce AppArmor 2.4 compatibility + * SAUCE: AppArmor: replace strim with strstrip for 2.6.32 kernels + * [Config] Remove AppArmor config options that no longer exist + + [ Manoj Iyer ] + + * ubuntu: rtl8192se -- version 2010-0115,0014 + - LP: #530275 + * [Config] added CONFIG_RTL8192SE module. + - LP: #530275 + + [ Tim Gardner ] + + * [Config] Added vmw_pvscsi to d-i/scsi-modules + - LP: #531017 + * [Upstream] netfilter: xt_recent: Add an entry reaper + + [ Upstream Kernel Changes ] + + * Revert "KVM: x86 emulator: Check CPL level during privilege instruction + emulation" + * Revert "KVM: x86 emulator: Fix popf emulation" + * Revert "KVM: x86 emulator: Check IOPL level during io instruction + emulation" + * Revert "KVM: x86 emulator: Add Virtual-8086 mode of emulation" + * Revert "KVM: fix memory access during x86 emulation." + * Add vlan (8021.Q) module package for d-i. + * (pre-stable) drm/i915: blacklist lid status: Sony VGN-BX196VP, Dell + Inspiron 700m + - LP: #515246 + * [Upstream] docbook: need xmldoclinks for all doc types + * x86: set_personality_ia32() misses force_personality32 + * lib: Introduce generic list_sort function + * drm/nv50: Implement ctxprog/state generation. + * drm/nv50: Remove redundant/incorrect ctxvals initialisation. + * (pre-stable) drm/i915: blacklist lid status: Sony VGN-BX196VP, Dell + Inspiron 700m + - LP: #515246 + + -- Andy Whitcroft Fri, 05 Mar 2010 15:40:38 +0000 + +linux (2.6.32-15.22) lucid; urgency=low + + [ Andy Whitcroft ] + + * Revert "[Config] added new config option CONFIG_SR_REPORT_TIME_LIMIT" + * Revert "SAUCE: PM report driver and device suspend/resume times." + * [Config] set CONFIG_SR_REPORT_TIME_LIMIT + + [ Manoj Iyer ] + + * SAUCE: PM report driver and device suspend/resume times. + + -- Andy Whitcroft Tue, 02 Mar 2010 01:35:37 +0000 + +linux (2.6.32-15.21) lucid; urgency=low + + [ Andy Whitcroft ] + + * Revert "(pre-stable) drm/i915: Increase fb alignment to 64k" + * Revert "[Config] lenovo-sl-laptop -- enable" + * Revert "ubuntu: lenovo-sl-laptop -- git tip (b19a08f81f)" + * armel -- cramfs module will no longer be built + * d-i -- make all modules optional + * rename the debug packages to match archive standard + - LP: #527837 + * lenovo-sl-laptop is no longer built + + [ Colin Ian King ] + + * Disable 4MB page tables for Atom, work around errata AAE44 + - LP: #523112 + + [ Colin Watson ] + + * ubuntu: dm-raid4-5: Depend on XOR_BLOCKS + * ubuntu: fsam7400: Depend on CHECK_SIGNATURE + + [ Jesse Barnes ] + + * SAUCE: drm/i915: don't change DRM configuration when releasing load + detect pipe + - LP: #488328 + + [ Loïc Minier ] + + * [Config] armel Update versatile initrd configs + - LP: #524893 + * SAUCE: [um] Don't use nx_enabled under UML + - LP: #524849 + + [ Manoj Iyer ] + + * [Config] added new config option CONFIG_SR_REPORT_TIME_LIMIT + + [ Mario Limonciello ] + + * SAUCE: v3 - Add Dell Business Class Netbook LED driver + + [ Rafael J. Wysocki ] + + * SAUCE: PM report driver and device suspend/resume times. + + [ Surbhi Palande ] + + * Revert "[Upstream] e1000e: enhance frame fragment detection" + - CVE-2009-4538 + * Revert "[Upstream] e1000: enhance frame fragment detection" + - CVE-2009-4536 + + [ Tim Gardner ] + + * [Config] Enabled CONFIG_LEDS_DELL_NETBOOKS=m + * SAUCE: (pre-stable) netfilter: xt_recent: fix buffer overflow + * SAUCE: (pre-stable) netfilter: xt_recent: fix false match + + [ Upstream Kernel Changes ] + + * Revert "(pre-stable) eCryptfs: Add getattr function" + * Fix potential crash with sys_move_pages + * futex_lock_pi() key refcnt fix + * futex: Handle user space corruption gracefully + * futex: Handle futex value corruption gracefully + * Fix race in tty_fasync() properly + * hwmon: (w83781d) Request I/O ports individually for probing + * hwmon: (lm78) Request I/O ports individually for probing + * hwmon: (adt7462) Wrong ADT7462_VOLT_COUNT + * ALSA: ctxfi - fix PTP address initialization + * drm/i915: disable hotplug detect before Ironlake CRT detect + * drm/i915: enable self-refresh on 965 + * drm/i915: Disable SR when more than one pipe is enabled + * drm/i915: Fix DDC on some systems by clearing BIOS GMBUS setup. + * drm/i915: Add HP nx9020/SamsungSX20S to ACPI LID quirk list + * drm/i915: Fix the incorrect DMI string for Samsung SX20S laptop + * drm/i915: Add MALATA PC-81005 to ACPI LID quirk list + * usb: r8a66597-hcd: Flush the D-cache for the pipe-in transfer buffers. + * i2c-tiny-usb: Fix on big-endian systems + * drm/i915: handle FBC and self-refresh better + * drm/i915: Increase fb alignment to 64k + * drm/i915: Update write_domains on active list after flush. + * regulator: Fix display of null constraints for regulators + * ALSA: hda-intel: Avoid divide by zero crash + * CPUFREQ: Fix use after free of struct powernow_k8_data + * freeze_bdev: don't deactivate successfully frozen MS_RDONLY sb + * cciss: Make cciss_seq_show handle holes in the h->drv[] array + * ioat: fix infinite timeout checking in ioat2_quiesce + * resource: add helpers for fetching rlimits + * fs/exec.c: restrict initial stack space expansion to rlimit + * cifs: fix length calculation for converted unicode readdir names + * NFS: Fix a reference leak in nfs_wb_cancel_page() + * NFS: Try to commit unstable writes in nfs_release_page() + * NFSv4: Don't allow posix locking against servers that don't support it + * NFSv4: Ensure that the NFSv4 locking can recover from stateid errors + * NFS: Fix an Oops when truncating a file + * NFS: Fix a umount race + * NFS: Fix a bug in nfs_fscache_release_page() + * NFS: Fix the mapping of the NFSERR_SERVERFAULT error + * md: fix 'degraded' calculation when starting a reshape. + * V4L/DVB: dvb-core: fix initialization of feeds list in demux filter + * Export the symbol of getboottime and mmonotonic_to_bootbased + * kvmclock: count total_sleep_time when updating guest clock + * KVM: PIT: control word is write-only + * tpm_infineon: fix suspend/resume handler for pnp_driver + * amd64_edac: Do not falsely trigger kerneloops + * netfilter: nf_conntrack: fix memory corruption with multiple namespaces + * netfilter: nf_conntrack: per netns nf_conntrack_cachep + * netfilter: nf_conntrack: restrict runtime expect hashsize modifications + * netfilter: xtables: compat out of scope fix + * netfilter: nf_conntrack: fix hash resizing with namespaces + * drm/i915: remove full registers dump debug + * drm/i915: add i915_lp_ring_sync helper + * drm/i915: Don't wait interruptible for possible plane buffer flush + * dasd: remove strings from s390dbf + * crypto: padlock-sha - Add import/export support + * wmi: Free the allocated acpi objects through wmi_get_event_data + * dell-wmi, hp-wmi, msi-wmi: check wmi_get_event_data() return value + * /dev/mem: introduce size_inside_page() + * devmem: check vmalloc address on kmem read/write + * devmem: fix kmem write bug on memory holes + * SCSI: mptfusion : mptscsih_abort return value should be SUCCESS instead + of value 0. + * sh: Couple kernel and user write page perm bits for CONFIG_X2TLB + * ALSA: hda - use WARN_ON_ONCE() for zero-division detection + * dst: call cond_resched() in dst_gc_task() + * ALSA: hda - Improved MacBook (Pro) 5,1 / 5,2 support + * befs: fix leak + * rtc-fm3130: add missing braces + * Call flush_dcache_page after PIO data transfers in libata-sff.c + * ahci: add Acer G725 to broken suspend list + * pktgen: Fix freezing problem + * x86/amd-iommu: Fix IOMMU-API initialization for iommu=pt + * x86/amd-iommu: Fix deassignment of a device from the pt_domain + * x86: Re-get cfg_new in case reuse/move irq_desc + * Staging: fix rtl8187se compilation errors with mac80211 + * ALSA: usb-audio - Avoid Oops after disconnect + * serial: 8250: add serial transmitter fully empty test + * sysfs: sysfs_sd_setattr set iattrs unconditionally + * class: Free the class private data in class_release + * USB: usbfs: only copy the actual data received + * USB: usbfs: properly clean up the as structure on error paths + * rtl8187: Add new device ID + * ACPI: Add NULL pointer check in acpi_bus_start + * ACPI: fix High cpu temperature with 2.6.32 + * drm/radeon/kms: use udelay for short delays + * NFS: Too many GETATTR and ACCESS calls after direct I/O + * eCryptfs: Add getattr function + * b43: Fix throughput regression + * ath9k: Fix sequence numbers for PAE frames + * mac80211: Fix probe request filtering in IBSS mode + * iwlwifi: Fix to set correct ht configuration + * dm stripe: avoid divide by zero with invalid stripe count + * dm log: userspace fix overhead_size calcuations + * Linux 2.6.32.9 + * sfc: Fix SFE4002 initialisation + * sfc: Fix sign of efx_mcdi_poll_reboot() error in efx_mcdi_poll() + * sfc: SFE4002/SFN4112F: Widen temperature and voltage tolerances + * (pre-stable) HID: handle joysticks with large number of buttons + - LP: #492056 + * (pre-stable) HID: extend mask for BUTTON usage page + - LP: #492056 + * PM: Measure device suspend and resume times + * e1000: enhance frame fragment detection + - CVE-2009-4536 + * e1000e: enhance frame fragment detection + - CVE-2009-4538 + * KVM: fix memory access during x86 emulation. + - CVE-2010-0306 + * KVM: x86 emulator: Add Virtual-8086 mode of emulation + - CVE-2010-0306 + * KVM: x86 emulator: Check IOPL level during io instruction emulation + - CVE-2010-0306 + * KVM: x86 emulator: Fix popf emulation + - CVE-2010-0306 + * KVM: x86 emulator: Check CPL level during privilege instruction + emulation + - CVE-2010-0306 + * Input: wacom - ensure the device is initialized properly upon resume + * Input: wacom - add defines for packet lengths of various devices + * Input: wacom - add support for new LCD tablets + - LP: #516777 + + -- Andy Whitcroft Mon, 01 Mar 2010 22:56:28 +0000 + +linux (2.6.32-14.20) lucid; urgency=low + + [ Andy Whitcroft ] + + * rebuild following the GCC update to match compiler for out of tree modules + * Revert "[Config] drbd -- enable" + * Revert "ubuntu: drbd -- version 8.3.1" + * SAUCE: khubd -- switch USB product/manufacturer/serial handling to RCU + - LP: #510937 + + -- Andy Whitcroft Fri, 19 Feb 2010 18:47:18 +0000 + +linux (2.6.32-14.19) lucid; urgency=low + + [ Andy Whitcroft ] + + * ensure we build the source package contents when enabled + - LP: #522308 + * [Config] enable CONFIG_X86_MCE_XEON75XX + * SAUCE: AppArmor -- add linux/kref.h for struct kref + * [Config] enable CONFIG_HID_ORTEK + * enable udeb generation for arm versatile flavour + - LP: #522515 + + [ John Johansen ] + + * ubuntu: AppArmor -- update to mainline 2010-02-18 + - LP: #439560, #496110, #507069 + + [ Johnathon Harris ] + + * SAUCE: HID: add support for Ortek WKB-2000 + - LP: #405390 + + [ Upstream Kernel Changes ] + + * tpm_tis: TPM_STS_DATA_EXPECT workaround + - LP: #490487 + * x86, mce: Xeon75xx specific interface to get corrected memory error + information + * x86, mce: Rename cpu_specific_poll to mce_cpu_specific_poll + * x86, mce: Make xeon75xx memory driver dependent on PCI + * drm/edid: Unify detailed block parsing between base and extension + blocks + - LP: #500999 + * (pre-stable) eCryptfs: Add getattr function + - LP: #390833 + + -- Andy Whitcroft Thu, 18 Feb 2010 19:22:02 +0000 + +linux (2.6.32-13.18) lucid; urgency=low + + [ Andy Whitcroft ] + + * Revert "enforcer -- make the enforcement configuration common" + * Revert "(pre-stable) Input: ALPS - add interleaved protocol support + (Dell E6x00 series)" + * Revert "(pre-stable) driver-core: fix devtmpfs crash on s390" + * Revert "(pre-stable) Driver-Core: devtmpfs - set root directory mode to + 0755" + * Revert "SAUCE: Adds support for COMPAL JHL90 webcam" + * Revert "SAUCE: fix kernel oops in VirtualBox during paravirt patching" + * Revert "SAUCE: make fc transport removal of target configurable" + * enforcer -- make the enforcement configuration common + * getabis -- add preempt flavour to the list + * [Config] enforce DEVTMPFS options + * [Config] armel -- cleanup to-be builtin modules + * [Config] cleanup ports configs + * [Config] enable CRYPTO_GHASH_CLMUL_NI_INTEL + - LP: #485536 + * add printdebian target to find branch target + * distclean -- do not remove debian.env + * [Config] generic-pae switch to M586TSC + - LP: #519448 + * git-ubuntu-log -- commonise duplicated log handling + * git-ubuntu-log -- tighten up Bug: NNNN matching + * git-ubuntu-log -- sort the bug numbers + + [ Chris Wilson ] + + * (pre-stable) drm/i915: Increase fb alignment to 64k + - LP: #404064 + + [ Eric Miao ] + + * arm -- enable ubuntu/ directory + + [ Huang Ying ] + + * SAUCE: crypto: ghash - Add PCLMULQDQ accelerated implementation + * SAUCE: crypto: ghash-intel - Fix building failure on x86_32 + + [ Loïc Minier ] + + * [Config] cleanup preempt configuration + * [Config] versatile: Fix video output + - LP: #517594 + * [Config] armel DEFAULT_MMAP_MIN_ADDR=32768 + * [Config] Large update to armel/versatile + * [Config] versatile: Add RTC support + * [Config] armel: Enable NEON + * [Config] versatile: Builtin MMC support + * [Config] versatile Builtin SCSI controller + * [Config] armel Disable dma_cache_sync callers + * [Config] armel Disable asm/time.h users + * [Config] armel Disable out of range udelay() + * [Config] armel Disable flush_cache_range() users + * [Config] armel -- Enable ubuntu/ drivers + + [ Steve Conklin ] + + * SAUCE: drm/i915: Add display hotplug event on Ironlake + * SAUCE: drm/i915: Add ACPI OpRegion support for Ironlake + + [ Upstream Kernel Changes ] + + * Revert "[Upstream]: oprofile/x86: add Xeon 7500 series support" + * Revert "Revert "[Bluetooth] Eliminate checks for impossible conditions + in IRQ handler"" + * clockevent: Don't remove broadcast device when cpu is dead + * clockevents: Add missing include to pacify sparse + * ACPI: don't cond_resched if irq is disabled + * be2net: Add support for next generation of BladeEngine device. + * be2net: Add the new PCI IDs to PCI_DEVICE_TABLE. + * mpt2sas: New device SAS2208 support is added + * ar9170: Add support for D-Link DWA 160 A2 + * powerpc/fsl: Add PCI device ids for new QoirQ chips + * davinci: dm646x: Add support for 3.x silicon revision + * Input: ALPS - add interleaved protocol support (Dell E6x00 series) + * Driver-Core: devtmpfs - set root directory mode to 0755 + * driver-core: fix devtmpfs crash on s390 + * vfs: get_sb_single() - do not pass options twice + * ALSA: hda - Add PCI IDs for Nvidia G2xx-series + * V4L/DVB (13569): smsusb: add autodetection support for five additional + Hauppauge USB IDs + * USB: mos7840: add device IDs for B&B electronics devices + * USB: ftdi_sio: add USB device ID's for B&B Electronics line + * V4L/DVB (13168): Add support for Asus Europa Hybrid DVB-T card (SAA7134 + SubVendor ID: 0x1043 Device ID: 0x4847) + * iTCO_wdt: Add support for Intel Ibex Peak + * atl1c:use common_task instead of reset_task and link_chg_task + * atl1e:disable NETIF_F_TSO6 for hardware limit + * V4L/DVB (13680a): DocBook/media: copy images after building HTML + * V4L/DVB (13680b): DocBook/media: create links for included sources + * netfilter: xtables: fix conntrack match v1 ipt-save output + * partitions: read whole sector with EFI GPT header + * partitions: use sector size for EFI GPT + * ALSA: ice1724 - Patch for suspend/resume for ESI Juli@ + * sched: Fix isolcpus boot option + * sched: Fix missing sched tunable recalculation on cpu add/remove + * nohz: Prevent clocksource wrapping during idle + * nfsd: Fix sort_pacl in fs/nfsd/nf4acl.c to actually sort groups + * timers, init: Limit the number of per cpu calibration bootup messages + * PCI: Always set prefetchable base/limit upper32 registers + * iscsi class: modify handling of replacement timeout + * NFS: Revert default r/wsize behavior + * HID: fixup quirk for NCR devices + * scsi_devinfo: update Hitachi entries (v2) + * scsi_dh: create sysfs file, dh_state for all SCSI disk devices + * scsi_transport_fc: remove invalid BUG_ON + * lpfc: fix hang on SGI ia64 platform + * libfc: fix typo in retry check on received PRLI + * libfc: fix ddp in fc_fcp for 0 xid + * fcoe: remove redundant checking of netdev->netdev_ops + * libfc: Fix wrong scsi return status under FC_DATA_UNDRUN + * libfc: lport: fix minor documentation errors + * libfc: don't WARN_ON in lport_timeout for RESET state + * fcoe: initialize return value in fcoe_destroy + * libfc: Fix frags in frame exceeding SKB_MAX_FRAGS in fc_fcp_send_data + * libfc: fix memory corruption caused by double frees and bad error + handling + * libfc: fix free of fc_rport_priv with timer pending + * libfc: remote port gets stuck in restart state without really + restarting + * fcoe, libfc: fix an libfc issue with queue ramp down in libfc + * fcoe: Fix checking san mac address + * fcoe: Fix getting san mac for VLAN interface + * qlge: Remove explicit setting of PCI Dev CTL reg. + * qlge: Set PCIE max read request size. + * qlge: Don't fail open when port is not initialized. + * qlge: Add handler for DCBX firmware event. + * qlge: Bonding fix for mode 6. + * PCI: AER: fix aer inject result in kernel oops + * DMI: allow omitting ident strings in DMI tables + * Input: i8042 - remove identification strings from DMI tables + * Input: i8042 - add Gigabyte M1022M to the noloop list + * Input: i8042 - add Dritek quirk for Acer Aspire 5610. + * ALSA: hda - select IbexPeak handler for Calpella + * ALSA: hda - Fix quirk for Maxdata obook4-1 + * ALSA: hda - Add missing Line-Out and PCM switches as slave + * iTCO_wdt.c - cleanup chipset documentation + * iTCO_wdt: add PCI ID for the Intel EP80579 (Tolapai) SoC + * iTCO_wdt: Add Intel Cougar Point and PCH DeviceIDs + * ahci: disable SNotification capability for ich8 + * ata_piix: fix MWDMA handling on PIIX3 + * md: fix small irregularity with start_ro module parameter + * V4L/DVB (13826): uvcvideo: Fix controls blacklisting + * cio: fix double free in case of probe failure + * cio: dont panic in non-fatal conditions + * netiucv: displayed TX bytes value much too high + * ipc ns: fix memory leak (idr) + * ALSA: hda - Fix HP T5735 automute + * hwmon: (fschmd) Fix a memleak on multiple opens of /dev/watchdog + * UBI: fix memory leak in update path + * UBI: initialise update marker + * ASoC: fix a memory-leak in wm8903 + * mac80211: check that ieee80211_set_power_mgmt only handles STA + interfaces. + * cfg80211: fix channel setting for wext + * KVM: S390: fix potential array overrun in intercept handling + * KVM: only allow one gsi per fd + * KVM: Fix race between APIC TMR and IRR + * KVM: MMU: bail out pagewalk on kvm_read_guest error + * KVM: x86: Fix host_mapping_level() + * KVM: x86: Fix probable memory leak of vcpu->arch.mce_banks + * KVM: x86: Fix leak of free lapic date in kvm_arch_vcpu_init() + * KVM: fix lock imbalance in kvm_*_irq_source_id() + * KVM: only clear irq_source_id if irqchip is present + * IPoIB: Clear ipoib_neigh.dgid in ipoib_neigh_alloc() + * x86: Reenable TSC sync check at boot, even with NONSTOP_TSC + * ACPI: enable C2 and Turbo-mode on Nehalem notebooks on A/C + - LP: #516325 + * iwlwifi: Fix throughput stall issue in HT mode for 5000 + * fnctl: f_modown should call write_lock_irqsave/restore + * x86, msr/cpuid: Pass the number of minors when unregistering MSR and + CPUID drivers. + * Linux 2.6.32.7 + * scsi_lib: Fix bug in completion of bidi commands + * mptsas: Fix issue with chain pools allocation on katmai + * mm: add new 'read_cache_page_gfp()' helper function + * drm/i915: Selectively enable self-reclaim + * firewire: ohci: fix crashes with TSB43AB23 on 64bit systems + * S390: fix single stepped svcs with TRACE_IRQFLAGS=y + * x86: Set hotpluggable nodes in nodes_possible_map + * x86: Remove "x86 CPU features in debugfs" (CONFIG_X86_CPU_DEBUG) + * libata: retry FS IOs even if it has failed with AC_ERR_INVALID + * zcrypt: Do not remove coprocessor for error 8/72 + * dasd: fix possible NULL pointer errors + * ACPI: Add a generic API for _OSC -v2 + * ACPI: Add platform-wide _OSC support. + * ACPI: fix OSC regression that caused aer and pciehp not to load + * ACPI: Advertise to BIOS in _OSC: _OST on _PPC changes + * UBI: fix volume creation input checking + * e1000/e1000e: don't use small hardware rx buffers + * drm/i915: Reload hangcheck timer too for Ironlake + * Fix a leak in affs_fill_super() + * Fix failure exits in bfs_fill_super() + * fix oops in fs/9p late mount failure + * fix leak in romfs_fill_super() + * Fix remount races with symlink handling in affs + * fix affs parse_options() + * Fix failure exit in ipathfs + * mm: fix migratetype bug which slowed swapping + * FDPIC: Respect PT_GNU_STACK exec protection markings when creating + NOMMU stack + * Split 'flush_old_exec' into two functions + * sparc: TIF_ABI_PENDING bit removal + * x86: get rid of the insane TIF_ABI_PENDING bit + * Input: winbond-cir - remove dmesg spam + * x86: Disable HPET MSI on ATI SB700/SB800 + * iwlwifi: set default aggregation frame count limit to 31 + * drm/i915: only enable hotplug for detected outputs + * firewire: core: add_descriptor size check + * SECURITY: selinux, fix update_rlimit_cpu parameter + * regulator: Specify REGULATOR_CHANGE_STATUS for WM835x LED constraints + * x86: Add Dell OptiPlex 760 reboot quirk + - LP: #488319 + * x86: Add quirk for Intel DG45FC board to avoid low memory corruption + * x86/amd-iommu: Fix possible integer overflow + * clocksource: fix compilation if no GENERIC_TIME + * tcp: update the netstamp_needed counter when cloning sockets + * sky2: Fix oops in sky2_xmit_frame() after TX timeout + * net: restore ip source validation + * af_packet: Don't use skb after dev_queue_xmit() + * ax25: netrom: rose: Fix timer oopses + * KVM: allow userspace to adjust kvmclock offset + * oprofile/x86: add Xeon 7500 series support + * oprofile/x86: fix crash when profiling more than 28 events + * libata: retry link resume if necessary + * mm: percpu-vmap fix RCU list walking + * mm: purge fragmented percpu vmap blocks + * block: fix bio_add_page for non trivial merge_bvec_fn case + * Fix 'flush_old_exec()/setup_new_exec()' split + * random: drop weird m_time/a_time manipulation + * random: Remove unused inode variable + * block: fix bugs in bio-integrity mempool usage + * usb: r8a66597-hdc disable interrupts fix + * connector: Delete buggy notification code. + * be2net: Bug fix to support newer generation of BE ASIC + * be2net: Fix memset() arg ordering. + * mm: flush dcache before writing into page to avoid alias + * mac80211: fix NULL pointer dereference when ftrace is enabled + * imxfb: correct location of callbacks in suspend and resume + * mx3fb: some debug and initialisation fixes + * starfire: clean up properly if firmware loading fails + * kernel/cred.c: use kmem_cache_free + * uartlite: fix crash when using as console + * pktcdvd: removing device does not remove its sysfs dir + * ath9k: fix eeprom INI values override for 2GHz-only cards + * ath9k: fix beacon slot/buffer leak + * powerpc: TIF_ABI_PENDING bit removal + * NET: fix oops at bootime in sysctl code + * Linux 2.6.32.8 + + -- Andy Whitcroft Wed, 10 Feb 2010 18:56:52 +0000 + +linux (2.6.32-12.17) lucid; urgency=low + + [ Andy Whitcroft ] + + * restore linux-image prefix -- master + * enforce -- we require SELINUX enabled -- master + * enforce -- ensure APPARMOR is our default LSM -- master + * make doc package completely optional -- master + * make source package completely optional -- master + * make linux-libc-dev completly optional -- master + * convert package disable to a deps list -- master + * allow common headers to switch from indep to arch -- master + * convert binary package disable to a deps list -- master + * add configuration option for a full source build tree -- master + * add support for uImage kernels in package control scripts + * getabis -- cleanup and parameterise repository list -- master + * getabis -- move configuration to etc/getabi -- master + * kernelconfig -- move configuration to etc -- master + * rules -- make debian/debian.env master for branch name + * set the current branch name -- master + * pull back common debian.master files into debian -- master + * enforcer -- make the enforcement configuration common + * insert-changes -- correctly link to debian/rules in DROOT + + [ Colin Watson ] + + * future-proof ddeb handling against buildd changes + + [ Eric Miao ] + + * SAUCE: Make CONFIG_{OMNIBOOK, AVERATEC_5100P, PACKARDBELL_E5} depend on + X86 + + [ Loïc Minier ] + + * Add modules.builtin.bin to prerm rm list + - LP: #516584 + + [ Tim Gardner ] + + * [Config] Implement the amd64 preempt flavour + + [ Upstream Kernel Changes ] + + * syslog: distinguish between /proc/kmsg and syscalls + - LP: #515623 + * sfc: Fix polling for slow MCDI operations + * sfc: Fix conditions for MDIO self-test + * sfc: QT202x: Remove unreliable MMD check at initialisation + * sfc: Add workspace for GMAC bug workaround to MCDI MAC_STATS buffer + * sfc: Use fixed-size buffers for MCDI NVRAM requests + + -- Andy Whitcroft Fri, 05 Feb 2010 07:09:31 +0000 + +linux (2.6.32-12.16) lucid; urgency=low + + [ Andy Whitcroft ] + + * Revert "SAUCE: acpi battery -- delay first lookup of the battery until + first use" + * SAUCE: acpi battery -- move first lookup asynchronous + - LP: #507211 + * [Config] update configs to cleanup generic configs + * [Config] disable CONFIG_X86_CPU_DEBUG for amd64 + * [Config] enable USER_NS + - LP: #480739, #509808 + + [ Heiko Carstens ] + + * (pre-stable) driver-core: fix devtmpfs crash on s390 + - LP: #512370 + + [ John Johansen ] + + * [Config] for server and virtual flavours make CONFIG_SCSI_SYM53C8XX_2=y + - LP: #494565 + * [Config] VIRTIO=y for server/virtual flavours + - LP: #494565 + + [ Kay Sievers ] + + * (pre-stable) Driver-Core: devtmpfs - set root directory mode to 0755 + - LP: #512370 + + [ Kees Cook ] + + * SAUCE: x86: brk away from exec rand area + - LP: #452175 + + [ Leann Ogasawara ] + + * [Upstream] e1000: enhance frame fragment detection + - CVE-2009-4536 + * [Upstream] e1000e: enhance frame fragment detection + - CVE-2009-4538 + + [ Sebastian Kapfer ] + + * (pre-stable) Input: ALPS - add interleaved protocol support (Dell E6x00 + series) + - LP: #296610 + + [ Upstream Kernel Changes ] + + * inotify: do not reuse watch descriptors + - LP: #485556 + * inotify: only warn once for inotify problems + * revert "drivers/video/s3c-fb.c: fix clock setting for Samsung SoC + Framebuffer" + * memcg: ensure list is empty at rmdir + * drm/i915: remove loop in Ironlake interrupt handler + * block: Fix incorrect reporting of partition alignment + * x86, mce: Thermal monitoring depends on APIC being enabled + * futexes: Remove rw parameter from get_futex_key() + * page allocator: update NR_FREE_PAGES only when necessary + * x86, apic: use physical mode for IBM summit platforms + * edac: i5000_edac critical fix panic out of bounds + * x86: SGI UV: Fix mapping of MMIO registers + * mfd: WM835x GPIO direction register is not locked + * mfd: Correct WM835x ISINK ramp time defines + * ALSA: hda - Fix missing capture mixer for ALC861/660 codecs + * V4L/DVB (13868): gspca - sn9c20x: Fix test of unsigned. + * reiserfs: truncate blocks not used by a write + * HID: add device IDs for new model of Apple Wireless Keyboard + * PCI/cardbus: Add a fixup hook and fix powerpc + * Input: pmouse - move Sentelic probe down the list + * asus-laptop: add Lenovo SL hotkey support + * sched: Fix cpu_clock() in NMIs, on !CONFIG_HAVE_UNSTABLE_SCHED_CLOCK + * sparc64: Fix NMI programming when perf events are active. + * sparc64: Fix Niagara2 perf event handling. + * i2c: Do not use device name after device_unregister + * i2c/pca: Don't use *_interruptible + * serial/8250_pnp: add a new Fujitsu Wacom Tablet PC device + * sched: Fix task priority bug + * vfs: Fix vmtruncate() regression + * Linux 2.6.32.5 + * x86, msr/cpuid: Register enough minors for the MSR and CPUID drivers + * V4L/DVB (13900): gspca - sunplus: Fix bridge exchanges. + * Staging: asus_oled: fix oops in 2.6.32.2 + * Staging: hv: fix smp problems in the hyperv core code + * tty: fix race in tty_fasync + * ecryptfs: use after free + * ecryptfs: initialize private persistent file before dereferencing + pointer + * nozomi: quick fix for the close/close bug + * serial: 8250_pnp: use wildcard for serial Wacom tablets + * usb: serial: fix memory leak in generic driver + * USB: fix bitmask merge error + * USB: Don't use GFP_KERNEL while we cannot reset a storage device + * USB: EHCI: fix handling of unusual interrupt intervals + * USB: EHCI & UHCI: fix race between root-hub suspend and port resume + * USB: add missing delay during remote wakeup + * USB: add speed values for USB 3.0 and wireless controllers + * ACPI: EC: Accelerate query execution + * ACPI: EC: Add wait for irq storm + * SCSI: enclosure: fix oops while iterating enclosure_status array + * drm/i915: Read the response after issuing DDC bus switch command + * drm/i915: try another possible DDC bus for the SDVO device with + multiple outputs + * block: bdev_stack_limits wrapper + * DM: Fix device mapper topology stacking + * x86/PCI/PAT: return EINVAL for pci mmap WC request for !pat_enabled + * USB: fix usbstorage for 2770:915d delivers no FAT + * vmalloc: remove BUG_ON due to racy counting of VM_LAZY_FREE + * perf timechart: Use tid not pid for COMM change + * perf events: Dont report side-band events on each cpu for + per-task-per-cpu events + * perf: Honour event state for aux stream data + * Linux 2.6.32.6 + + -- Andy Whitcroft Wed, 27 Jan 2010 16:40:23 +0000 + +linux (2.6.32-11.15) lucid; urgency=low + + [ Andy Whitcroft ] + + * Revert "(pre-stable) drm/radeon/kms: fix crtc vblank update for r600" + * Revert "(pre-stable) sched: Fix balance vs hotplug race" + * Revert "[Upstream] acerhdf: Limit modalias matching to supported + boards" + * Revert "[Upstream] mmc: prevent dangling block device from accessing + stale queues" + * Revert "SAUCE: Fix nx_enable reporting" + * Revert "SAUCE: [x86] fix report of cs-limit nx-emulation" + * Revert "SAUCE: [x86] implement cs-limit nx-emulation for ia32" + * SAUCE: i915 -- disable powersave by default + - LP: #492392 + + [ Kees Cook ] + + * SAUCE: [x86] implement cs-limit nx-emulation for ia32 + - LP: #369978 + * SAUCE: [x86] fix report of cs-limit nx-emulation + - LP: #454285 + * SAUCE: Fix nx_enable reporting + - LP: #454285 + + [ Tim Gardner ] + + * [Upstream] b43: Declare all possible firmware files. + - LP: #488636 + * [Config] updateconfigs after adding pvscsi + - LP: #497156 + * [Config] CONFIG_BT=m + + [ Upstream Kernel Changes ] + + * Revert "x86: Side-step lguest problem by only building cmpxchg8b_emu + for pre-Pentium" + * SCSI: ipr: fix EEH recovery + * SCSI: qla2xxx: dpc thread can execute before scsi host has been added + * SCSI: st: fix mdata->page_order handling + * SCSI: fc class: fix fc_transport_init error handling + * sched: Fix task_hot() test order + * x86, cpuid: Add "volatile" to asm in native_cpuid() + * sched: Select_task_rq_fair() must honour SD_LOAD_BALANCE + * clockevents: Prevent clockevent_devices list corruption on cpu hotplug + * pata_hpt3x2n: fix clock turnaround + * pata_cmd64x: fix overclocking of UDMA0-2 modes + * ASoC: wm8974: fix a wrong bit definition + * sound: sgio2audio/pdaudiocf/usb-audio: initialize PCM buffer + * ALSA: hda - Fix missing capsrc_nids for ALC88x + * acerhdf: limit modalias matching to supported + - LP: #435958 + * ACPI: EC: Fix MSI DMI detection + * ACPI: Use the return result of ACPI lid notifier chain correctly + * powerpc: Handle VSX alignment faults correctly in little-endian mode + * ASoC: Do not write to invalid registers on the wm9712. + * drm/radeon: fix build on 64-bit with some compilers. + * USB: emi62: fix crash when trying to load EMI 6|2 firmware + * USB: option: support hi speed for modem Haier CE100 + * USB: Fix a bug on appledisplay.c regarding signedness + * USB: musb: gadget_ep0: avoid SetupEnd interrupt + * Bluetooth: Prevent ill-timed autosuspend in USB driver + * USB: rename usb_configure_device + * USB: fix bugs in usb_(de)authorize_device + * drivers/net/usb: Correct code taking the size of a pointer + * x86: SGI UV: Fix writes to led registers on remote uv hubs + * md: Fix unfortunate interaction with evms + * dma: at_hdmac: correct incompatible type for argument 1 of + 'spin_lock_bh' + * dma-debug: Do not add notifier when dma debugging is disabled. + * dma-debug: Fix bug causing build warning + * cifs: NULL out tcon, pSesInfo, and srvTcp pointers when chasing DFS + referrals + * x86/amd-iommu: Fix initialization failure panic + * ioat3: fix p-disabled q-continuation + * ioat2,3: put channel hardware in known state at init + * KVM: MMU: remove prefault from invlpg handler + * KVM: LAPIC: make sure IRR bitmap is scanned after vm load + * Libertas: fix buffer overflow in lbs_get_essid() + * iwmc3200wifi: fix array out-of-boundary access + * mac80211: fix propagation of failed hardware reconfigurations + * mac80211: fix WMM AP settings application + * mac80211: Fix IBSS merge + * cfg80211: fix race between deauth and assoc response + * ath5k: fix SWI calibration interrupt storm + * ath9k: wake hardware for interface IBSS/AP/Mesh removal + * ath9k: Fix TX queue draining + * ath9k: fix missed error codes in the tx status check + * ath9k: wake hardware during AMPDU TX actions + * ath9k: fix suspend by waking device prior to stop + * ath9k_hw: Fix possible OOB array indexing in gen_timer_index[] on + 64-bit + * ath9k_hw: Fix AR_GPIO_INPUT_EN_VAL_BT_PRIORITY_BB and its shift value + in 0x4054 + * iwl3945: disable power save + * iwl3945: fix panic in iwl3945 driver + * iwlwifi: fix EEPROM/OTP reading endian annotations and a bug + * iwlwifi: fix more eeprom endian bugs + * iwlwifi: fix 40MHz operation setting on cards that do not allow it + * mac80211: fix race with suspend and dynamic_ps_disable_work + * NOMMU: Optimise away the {dac_,}mmap_min_addr tests + * 'sysctl_max_map_count' should be non-negative + * kernel/sysctl.c: fix the incomplete part of + sysctl_max_map_count-should-be-non-negative.patch + * V4L/DVB (13596): ov511.c typo: lock => unlock + * x86/ptrace: make genregs[32]_get/set more robust + * memcg: avoid oom-killing innocent task in case of use_hierarchy + * e100: Fix broken cbs accounting due to missing memset. + * ipv6: reassembly: use seperate reassembly queues for conntrack and + local delivery + * netfilter: fix crashes in bridge netfilter caused by fragment jumps + * hwmon: (sht15) Off-by-one error in array index + incorrect constants + * b43: avoid PPC fault during resume + * Keys: KEYCTL_SESSION_TO_PARENT needs TIF_NOTIFY_RESUME architecture + support + * sched: Fix balance vs hotplug race + * drm/radeon/kms: fix crtc vblank update for r600 + * drm: disable all the possible outputs/crtcs before entering KMS mode + * S390: dasd: support DIAG access for read-only devices + * xen: fix is_disconnected_device/exists_disconnected_device + * xen: improvement to wait_for_devices() + * xen: wait up to 5 minutes for device connetion + * orinoco: fix GFP_KERNEL in orinoco_set_key with interrupts disabled + * udf: Try harder when looking for VAT inode + * Add unlocked version of inode_add_bytes() function + * quota: decouple fs reserved space from quota reservation + * ext4: Convert to generic reserved quota's space management. + * ext4: fix sleep inside spinlock issue with quota and dealloc (#14739) + * x86, msr: Unify rdmsr_on_cpus/wrmsr_on_cpus + * cpumask: use modern cpumask style in drivers/edac/amd64_edac.c + * amd64_edac: unify MCGCTL ECC switching + * x86, msr: Add support for non-contiguous cpumasks + * x86, msr: msrs_alloc/free for CONFIG_SMP=n + * amd64_edac: fix driver instance freeing + * amd64_edac: make driver loading more robust + * amd64_edac: fix forcing module load/unload + * sched: Sched_rt_periodic_timer vs cpu hotplug + * ext4: Update documentation to correct the inode_readahead_blks option + name + * lguest: fix bug in setting guest GDT entry + * vmscan: do not evict inactive pages when skipping an active list scan + * ksm: fix mlockfreed to munlocked + * rt2x00: Disable powersaving for rt61pci and rt2800pci. + * generic_permission: MAY_OPEN is not write access + * Linux 2.6.32.3 + * untangle the do_mremap() mess + * fasync: split 'fasync_helper()' into separate add/remove functions + * ASoC: fix params_rate() macro use in several codecs + * modules: Skip empty sections when exporting section notes + * exofs: simple_write_end does not mark_inode_dirty + * nfsd: make sure data is on disk before calling ->fsync + * sunrpc: fix peername failed on closed listener + * SUNRPC: Fix up an error return value in + gss_import_sec_context_kerberos() + * SUNRPC: Fix the return value in gss_import_sec_context() + * sunrpc: on successful gss error pipe write, don't return error + * drm/i915: Update LVDS connector status when receiving ACPI LID event + * drm/i915: fix order of fence release wrt flushing + * drm/i915: Permit pinning whilst the device is 'suspended' + * drm: remove address mask param for drm_pci_alloc() + * drm/i915: Enable/disable the dithering for LVDS based on VBT setting + * drm/i915: Make the BPC in FDI rx/transcoder be consistent with that in + pipeconf on Ironlake + * drm/i915: Select the correct BPC for LVDS on Ironlake + * drm/i915: fix unused var + * rtc_cmos: convert shutdown to new pnp_driver->shutdown + * drivers/cpuidle/governors/menu.c: fix undefined reference to + `__udivdi3' + * cgroups: fix 2.6.32 regression causing BUG_ON() in cgroup_diput() + * lib/rational.c needs module.h + * dma-debug: allow DMA_BIDIRECTIONAL mappings to be synced with + DMA_FROM_DEVICE and + * kernel/signal.c: fix kernel information leak with print-fatal-signals=1 + * mmc_block: add dev_t initialization check + * mmc_block: fix probe error cleanup bug + * mmc_block: fix queue cleanup + * ALSA: hda - Fix ALC861-VD capture source mixer + * ALSA: ac97: Add Dell Dimension 2400 to Headphone/Line Jack Sense + blacklist + * ALSA: atiixp: Specify codec for Foxconn RC4107MA-RS2 + - LP: #498863 + * ASoC: Fix WM8350 DSP mode B configuration + * netfilter: ebtables: enforce CAP_NET_ADMIN + * netfilter: nf_ct_ftp: fix out of bounds read in update_nl_seq() + * hwmon: (coretemp) Fix TjMax for Atom N450/D410/D510 CPUs + * hwmon: (adt7462) Fix pin 28 monitoring + * quota: Fix dquot_transfer for filesystems different from ext4 + * xen: fix hang on suspend. + * iwlwifi: fix iwl_queue_used bug when read_ptr == write_ptr + * ath5k: Fix eeprom checksum check for custom sized eeproms + * cfg80211: fix syntax error on user regulatory hints + * iwl: off by one bug + * mac80211: add missing sanity checks for action frames + * drm/i915: remove render reclock support + * libertas: Remove carrier signaling from the scan code + * kernel/sysctl.c: fix stable merge error in NOMMU mmap_min_addr + * mac80211: fix skb buffering issue (and fixes to that) + * fix braindamage in audit_tree.c untag_chunk() + * fix more leaks in audit_tree.c tag_chunk() + * module: handle ppc64 relocating kcrctabs when CONFIG_RELOCATABLE=y + * ipv6: skb_dst() can be NULL in ipv6_hop_jumbo(). + * agp/intel-agp: Clear entire GTT on startup + * Linux 2.6.32.4 + * ethtool: Add reset operation + * gro: Name the GRO result enumeration type + * gro: Change all receive functions to return GRO result codes + * sfc: 10Xpress: Initialise pause advertising flags + * sfc: 10Xpress: Report support for pause frames + * sfc: Remove redundant header gmii.h + * sfc: Remove redundant hardware initialisation + * sfc: Rename Falcon-specific board code and types + * sfc: Remove boards.h, moving last remaining declaration to falcon.h + * sfc: Remove versioned bitfield macros + * sfc: Move RX data FIFO thresholds out of struct efx_nic_type + * sfc: Update hardware definitions for Siena + * sfc: Rename register I/O header and functions used by both Falcon and + Siena + * sfc: Eliminate indirect lookups of queue size constants + * sfc: Define DMA address mask explicitly in terms of descriptor field + width + * sfc: Move all TX DMA length limiting into tx.c + * sfc: Change order of device removal to reverse of probe order + * sfc: Remove declarations of nonexistent functions + * sfc: Move efx_xmit_done() declaration into correct stanza + * sfc: Move shared members of struct falcon_nic_data into struct efx_nic + * sfc: Maintain interrupt moderation values in ticks, not microseconds + * sfc: Removed kernel-doc for nonexistent member of efx_phy_operations + * sfc: Remove pointless abstraction of memory BAR number + * sfc: Remove incorrect assertion from efx_pci_remove_main() + * sfc: Remove unnecessary tests of efx->membase + * sfc: Move MTD probe after netdev registration and name allocation + * sfc: Remove unused code for non-autoneg speed/duplex switching + * sfc: Rename 'xfp' file and functions to reflect reality + * sfc: Really allow RX checksum offload to be disabled + * sfc: Feed GRO result into RX allocation policy and interrupt moderation + * sfc: Enable heuristic selection between page and skb RX buffers + * sfc: Remove pointless abstraction of memory BAR number (2) + * sfc: Remove redundant gotos from __efx_rx_packet() + * sfc: Remove ridiculously paranoid assertions + * sfc: Move assertions and buffer cleanup earlier in efx_rx_packet_lro() + * sfc: Record RX queue number on GRO path + * sfc: SFT9001: Reset LED configuration correctly after blinking + * sfc: Use a single blink implementation + * sfc: Rename efx_board::init_leds to init_phy and use for SFN4111T + * sfc: Make board information explicitly Falcon-specific + * sfc: Move definition of struct falcon_nic_data into falcon.h + * sfc: Move struct falcon_board into struct falcon_nic_data + * sfc: Move all I2C stuff into struct falcon_board + * sfc: Gather link state fields in struct efx_nic into new struct + efx_link_state + * sfc: Remove unnecessary casts to struct sk_buff * + * sfc: Remove redundant efx_xmit() function + * sfc: Combine high-level header files + * sfc: Log interrupt and reset type names, not numbers + * sfc: Fix descriptor cache sizes + * sfc: Treat all MAC registers as 128-bit + * sfc: Strengthen EFX_ASSERT_RESET_SERIALISED + * sfc: Comment corrections + * sfc: Remove unused constant + * sfc: Clean up struct falcon_board and struct falcon_board_data + * sfc: Fix bugs in RX queue flushing + * sfc: Remove unused function efx_flush_queues() + * sfc: Only switch Falcon MAC clocks as necessary + * sfc: Hold MAC lock for longer in efx_init_port() + * sfc: Split MAC stats DMA initiation and completion + * sfc: Move Falcon board/PHY/MAC monitoring code to falcon.c + * sfc: Simplify XMAC link polling + * sfc: Change MAC promiscuity and multicast hash at the same time + * sfc: Move inline comment into kernel-doc + * sfc: Do not set net_device::trans_start in self-test + * sfc: Simplify PHY polling + * sfc: QT202x: Reset before reading PHY id + * sfc: Replace MDIO spinlock with mutex + * sfc: Always start Falcon using the XMAC + * sfc: Limit some hardware workarounds to Falcon + * sfc: Remove EFX_WORKAROUND_9141 macro + * sfc: Remove another unused workaround macro + * sfc: Remove some redundant whitespace + * sfc: Decouple NIC revision number from Falcon PCI revision number + * sfc: Move descriptor cache base addresses to struct efx_nic_type + * sfc: Clean up RX event handling + * sfc: Remove redundant writes to INT_ADR_KER + * sfc: Remove duplicate hardware structure definitions + * sfc: Turn pause frame generation on and off at the MAC, not the RX FIFO + * sfc: Move Falcon NIC operations to efx_nic_type + * sfc: Refactor link configuration + * sfc: Generalise link state monitoring + * sfc: Add power-management and wake-on-LAN support + * sfc: Implement ethtool reset operation + * sfc: Add efx_nic_type operation for register self-test + * sfc: Add efx_nic_type operation for NVRAM self-test + * sfc: Add efx_nic_type operation for identity LED control + * sfc: Separate shared NIC code from Falcon-specific and rename + accordingly + * sfc: Fold falcon_probe_nic_variant() into falcon_probe_nic() + * sfc: Extend loopback mode enumeration + * sfc: Remove static PHY data and enumerations + * sfc: Extend MTD driver for use with new NICs + * sfc: Allow for additional checksum offload features + * sfc: Rename falcon.h to nic.h + * sfc: Move shared NIC code from falcon.c to new source file nic.c + * sfc: Add firmware protocol definitions (MCDI) + * sfc: Add support for SFC9000 family (1) + * sfc: Add support for SFC9000 family (2) + * sfc: Implement TSO for TCP/IPv6 + * sfc: Update version, copyright dates, authors + * drivers/net/sfc: Correct code taking the size of a pointer + * sfc: Move PHY software state initialisation from init() into probe() + * sfc: Include XGXS in XMAC link status check except in XGMII loopback + * sfc: Fix DMA mapping cleanup in case of an error in TSO + * sfc: QT2025C: Work around PHY bug + * sfc: QT2025C: Switch into self-configure mode when not in loopback + * sfc: QT2025C: Work around PHY firmware initialisation bug + * sfc: QT2025C: Add error message for suspected bad SFP+ cables + * sfc: Disable TX descriptor prefetch watchdog + * [SCSI] vmw_pvscsi: SCSI driver for VMware's virtual HBA. + - LP: #497156 + + -- Andy Whitcroft Tue, 19 Jan 2010 16:12:47 +0000 + +linux (2.6.32-10.14) lucid; urgency=low + + [ Alex Deucher ] + + * SAUCE: drm/radeon/kms: fix LVDS setup on r4xx + - LP: #493795 + + [ Andy Whitcroft ] + + * Revert "(pre-stable) acpi: Use the ARB_DISABLE for the CPU which model + id is less than 0x0f." + * config-check -- ensure the checks get run at build time + * config-check -- check the processed config during updateconfigs + * config-check -- CONFIG_SECCOMP may not be present + * TUN is now built in ignore + * SAUCE: acpi battery -- delay first lookup of the battery until first + use + * SAUCE: async_populate_rootfs: move rootfs init earlier + * ubuntu: AppArmor -- update to mainline 2010-01-06 + * SAUCE: move RLIMIT_CORE pipe dumper marker to 1 + - LP: #498525 + + [ Dave Airlie ] + + * (pre-stable) drm/radeon/kms: fix crtc vblank update for r600 + + [ Leann Ogasawara ] + + * Add asix to nic-usb-modules file + - LP: #499785 + + [ Peter Zijlstra ] + + * (pre-stable) sched: Fix balance vs hotplug race + + [ Tim Gardner ] + + * [Config] Enable CONFIG_FUNCTION_TRACER + - LP: #497989 + * [Config] Drop lpia from getabis + * [Config] Build in TUN/TAP driver + - LP: #499491 + * [Config] DH_COMPAT=5 + + [ Upstream Kernel Changes ] + + * Revert "(pre-stable) drm/i915: Avoid NULL dereference with + component_only tv_modes" + * Revert "(pre-stable) drm/i915: Fix sync to vblank when VGA output is + turned off" + * USB: usb-storage: fix bug in fill_inquiry + * USB: option: add pid for ZTE + * firewire: ohci: handle receive packets with a data length of zero + * rcu: Prepare for synchronization fixes: clean up for non-NO_HZ handling + of ->completed counter + * rcu: Fix synchronization for rcu_process_gp_end() uses of ->completed + counter + * rcu: Fix note_new_gpnum() uses of ->gpnum + * rcu: Remove inline from forward-referenced functions + * perf_event: Fix invalid type in ioctl definition + * perf_event: Initialize data.period in perf_swevent_hrtimer() + * perf: Don't free perf_mmap_data until work has been done + * PM / Runtime: Fix lockdep warning in __pm_runtime_set_status() + * sched: Check for an idle shared cache in select_task_rq_fair() + * sched: Fix affinity logic in select_task_rq_fair() + * sched: Rate-limit newidle + * sched: Fix and clean up rate-limit newidle code + * x86/amd-iommu: attach devices to pre-allocated domains early + * x86/amd-iommu: un__init iommu_setup_msi + * x86, Calgary IOMMU quirk: Find nearest matching Calgary while walking + up the PCI tree + * x86: Fix iommu=nodac parameter handling + * x86: GART: pci-gart_64.c: Use correct length in strncmp + * x86: ASUS P4S800 reboot=bios quirk + - LP: #366682 + * x86, apic: Enable lapic nmi watchdog on AMD Family 11h + * ssb: Fix range check in sprom write + * ath5k: allow setting txpower to 0 + * ath5k: enable EEPROM checksum check + * hrtimer: Fix /proc/timer_list regression + * ALSA: hrtimer - Fix lock-up + * ALSA: hda - Terradici HDA controllers does not support 64-bit mode + * KVM: x86 emulator: limit instructions to 15 bytes + * KVM: s390: Fix prefix register checking in arch/s390/kvm/sigp.c + * KVM: s390: Make psw available on all exits, not just a subset + * KVM: fix irq_source_id size verification + * KVM: x86: include pvclock MSRs in msrs_to_save + * x86: Prevent GCC 4.4.x (pentium-mmx et al) function prologue wreckage + * x86: Use -maccumulate-outgoing-args for sane mcount prologues + * x86, mce: don't restart timer if disabled + * x86/mce: Set up timer unconditionally + * x86: SGI UV: Fix BAU initialization + * x86: Fix duplicated UV BAU interrupt vector + * x86: Add new Intel CPU cache size descriptors + * x86: Fix typo in Intel CPU cache size descriptor + * pata_hpt{37x|3x2n}: fix timing register masks (take 2) + * s390: clear high-order bits of registers after sam64 + * V4L/DVB: Fix test in copy_reg_bits() + * bsdacct: fix uid/gid misreporting + * UBI: flush wl before clearing update marker + * jbd2: don't wipe the journal on a failed journal checksum + * USB: xhci: Add correct email and files to MAINTAINERS entry. + * USB: musb_gadget_ep0: fix unhandled endpoint 0 IRQs, again + * USB: option.c: add support for D-Link DWM-162-U5 + * USB: usbtmc: repeat usb_bulk_msg until whole message is transfered + * USB: usb-storage: add BAD_SENSE flag + * USB: Close usb_find_interface race v3 + * pxa/em-x270: fix usb hub power up/reset sequence + * hfs: fix a potential buffer overflow + * SUNRPC: IS_ERR/PTR_ERR confusion + * NFS: Fix nfs_migrate_page() + * md/bitmap: protect against bitmap removal while being updated. + * futex: Take mmap_sem for get_user_pages in fault_in_user_writeable + * devpts_get_tty() should validate inode + * debugfs: fix create mutex racy fops and private data + * Driver core: fix race in dev_driver_string + * Serial: Do not read IIR in serial8250_start_tx when UART_BUG_TXEN + * mac80211: Fix bug in computing crc over dynamic IEs in beacon + * mac80211: Fixed bug in mesh portal paths + * mac80211: Revert 'Use correct sign for mesh active path refresh' + * mac80211: fix scan abort sanity checks + * wireless: correctly report signal value for IEEE80211_HW_SIGNAL_UNSPEC + * rtl8187: Fix wrong rfkill switch mask for some models + * x86: Fix bogus warning in apic_noop.apic_write() + * mm: hugetlb: fix hugepage memory leak in mincore() + * mm: hugetlb: fix hugepage memory leak in walk_page_range() + * powerpc/windfarm: Add detection for second cpu pump + * powerpc/therm_adt746x: Record pwm invert bit at module load time] + * powerpc: Fix usage of 64-bit instruction in 32-bit altivec code + * drm/radeon/kms: Add quirk for HIS X1300 board + * drm/radeon/kms: handle vblanks properly with dpms on + * drm/radeon/kms: fix legacy crtc2 dpms + * drm/radeon/kms: fix vram setup on rs600 + * drm/radeon/kms: rs6xx/rs740: clamp vram to aperture size + * drm/ttm: Fix build failure due to missing struct page + * drm/i915: Set the error code after failing to insert new offset into mm + ht. + * drm/i915: Add the missing clonemask for display port on Ironlake + * xen/xenbus: make DEVICE_ATTR()s static + * xen: re-register runstate area earlier on resume. + * xen: restore runstate_info even if !have_vcpu_info_placement + * xen: correctly restore pfn_to_mfn_list_list after resume + * xen: register timer interrupt with IRQF_TIMER + * xen: register runstate on secondary CPUs + * xen: don't call dpm_resume_noirq() with interrupts disabled. + * xen: register runstate info for boot CPU early + * xen: call clock resume notifier on all CPUs + * xen: improve error handling in do_suspend. + * xen: don't leak IRQs over suspend/resume. + * xen: use iret for return from 64b kernel to 32b usermode + * xen: explicitly create/destroy stop_machine workqueues outside + suspend/resume region. + * Xen balloon: fix totalram_pages counting. + * xen: try harder to balloon up under memory pressure. + * dm exception store: free tmp_store on persistent flag error + * dm snapshot: only take lock for statustype info not table + * dm crypt: move private iv fields to structs + * dm crypt: restructure essiv error path + * dm: avoid _hash_lock deadlock + * dm snapshot: cope with chunk size larger than origin + * dm crypt: separate essiv allocation from initialisation + * dm crypt: make wipe message also wipe essiv key + * slc90e66: fix UDMA handling + * tcp: Stalling connections: Fix timeout calculation routine + * ip_fragment: also adjust skb->truesize for packets not owned by a + socket + * b44 WOL setup: one-bit-off stack corruption kernel panic fix + * sparc64: Don't specify IRQF_SHARED for LDC interrupts. + * sparc64: Fix overly strict range type matching for PCI devices. + * sparc64: Fix stack debugging IRQ stack regression. + * sparc: Set UTS_MACHINE correctly. + * b43legacy: avoid PPC fault during resume + * tracing: Fix event format export + * ath9k: Fix TX hang poll routine + * ath9k: fix processing of TX PS null data frames + * ath9k: Fix maximum tx fifo settings for single stream devices + * ath9k: fix tx status reporting + * mac80211: Fix dynamic power save for scanning. + * drm/i915: Fix sync to vblank when VGA output is turned off + * memcg: fix memory.memsw.usage_in_bytes for root cgroup + * thinkpad-acpi: fix default brightness_mode for R50e/R51 + * thinkpad-acpi: preserve rfkill state across suspend/resume + * ipw2100: fix rebooting hang with driver loaded + * matroxfb: fix problems with display stability + * acerhdf: add new BIOS versions + * asus-laptop: change light sens default values. + * vmalloc: conditionalize build of pcpu_get_vm_areas() + * ACPI: Use the ARB_DISABLE for the CPU which model id is less than 0x0f. + * net: Fix userspace RTM_NEWLINK notifications. + * ext3: Fix data / filesystem corruption when write fails to copy data + * V4L/DVB (13116): gspca - ov519: Webcam 041e:4067 added. + * bcm63xx_enet: fix compilation failure after get_stats_count removal + * x86: Under BIOS control, restore AP's APIC_LVTTHMR to the BSP value + * drm/i915: Avoid NULL dereference with component_only tv_modes + * drm/i915: PineView only has LVDS and CRT ports + * drm/i915: Fix LVDS stability issue on Ironlake + * mm: sigbus instead of abusing oom + * ipvs: zero usvc and udest + * jffs2: Fix long-standing bug with symlink garbage collection. + * intel-iommu: Detect DMAR in hyperspace at probe time. + * intel-iommu: Apply BIOS sanity checks for interrupt remapping too. + * intel-iommu: Check for an RMRR which ends before it starts. + * intel-iommu: Fix oops with intel_iommu=igfx_off + * intel-iommu: ignore page table validation in pass through mode + * netfilter: xtables: document minimal required version + * perf_event: Fix incorrect range check on cpu number + * implement early_io{re,un}map for ia64 + * Linux 2.6.32.2 + + -- Andy Whitcroft Thu, 07 Jan 2010 15:28:43 +0000 + +linux (2.6.32-9.13) lucid; urgency=low + + [ Andy Whitcroft ] + + * [Config] enable CONFIG_B43_PHY_LP + - LP: #493059 + * include modules.builtin in the binary debs + * config-check -- add a configuration enforcer + * config-check -- add a unit-test suite to the checker + * [Config] Enable CONFIG_SYN_COOKIES for versatile + * [Config] Enable CONFIG_SECURITY_SMACK for ports + * [Config] Enable CONFIG_SECURITY_FILE_CAPABILITIES for ports + * [Config] Disable CONFIG_COMPAT_BRK for ports + * getabis -- add armel versatile to the list + + [ Brad Figg ] + + * SAUCE: Increase the default prealloc buffer for HDA audio devices + (non-modem) + + [ Manoj Iyer ] + + * ubuntu: onmibook -- Added missing BOM file + + [ Tim Gardner ] + + * ubuntu: fsam7400 -- Cleanup Makefile + + [ Upstream Kernel Changes ] + + * Revert "ext4: Fix insufficient checks in EXT4_IOC_MOVE_EXT" + * signal: Fix alternate signal stack check + * SCSI: scsi_lib_dma: fix bug with dma maps on nested scsi objects + * SCSI: osd_protocol.h: Add missing #include + * SCSI: megaraid_sas: fix 64 bit sense pointer truncation + * ext4: fix potential buffer head leak when add_dirent_to_buf() returns + ENOSPC + * ext4: avoid divide by zero when trying to mount a corrupted file system + * ext4: fix the returned block count if EXT4_IOC_MOVE_EXT fails + * ext4: fix lock order problem in ext4_move_extents() + * ext4: fix possible recursive locking warning in EXT4_IOC_MOVE_EXT + * ext4: plug a buffer_head leak in an error path of ext4_iget() + * ext4: make sure directory and symlink blocks are revoked + * ext4: fix i_flags access in ext4_da_writepages_trans_blocks() + * ext4: journal all modifications in ext4_xattr_set_handle + * ext4: don't update the superblock in ext4_statfs() + * ext4: fix uninit block bitmap initialization when s_meta_first_bg is + non-zero + * ext4: fix block validity checks so they work correctly with meta_bg + * ext4: avoid issuing unnecessary barriers + * ext4: fix error handling in ext4_ind_get_blocks() + * ext4: make trim/discard optional (and off by default) + * ext4: make "norecovery" an alias for "noload" + * ext4: Fix double-free of blocks with EXT4_IOC_MOVE_EXT + * ext4: initialize moved_len before calling ext4_move_extents() + * ext4: move_extent_per_page() cleanup + * jbd2: Add ENOMEM checking in and for + jbd2_journal_write_metadata_buffer() + * ext4: Return the PTR_ERR of the correct pointer in + setup_new_group_blocks() + * ext4: Avoid data / filesystem corruption when write fails to copy data + * ext4: wait for log to commit when umounting + * ext4: remove blocks from inode prealloc list on failure + * ext4: ext4_get_reserved_space() must return bytes instead of blocks + * ext4: quota macros cleanup + * ext4: fix incorrect block reservation on quota transfer. + * ext4: Wait for proper transaction commit on fsync + * ext4: Fix insufficient checks in EXT4_IOC_MOVE_EXT + * ext4: Fix potential fiemap deadlock (mmap_sem vs. i_data_sem) + * Linux 2.6.32.1 + * kbuild: generate modules.builtin + * (pre-stable) drm/i915: Fix sync to vblank when VGA output is turned off + - LP: #494461 + * (pre-stable) drm/i915: Avoid NULL dereference with component_only + tv_modes + - LP: #494045 + + [ Zhao Yakui ] + + * (pre-stable) acpi: Use the ARB_DISABLE for the CPU which model id is + less than 0x0f. + - LP: #481765 + + -- Andy Whitcroft Thu, 17 Dec 2009 15:41:21 +0000 + +linux (2.6.32-8.12) lucid; urgency=low + + [ Andy Whitcroft ] + + * SAUCE: AppArmor -- add linux/err.h for ERR_PTR + + -- Andy Whitcroft Sat, 12 Dec 2009 10:56:16 +0000 + +linux (2.6.32-8.11) lucid; urgency=low + + [ Andy Whitcroft ] + + * Revert "SAUCE: default ATI Radeon KMS to off until userspace catches + up" + * Revert "SAUCE: AppArmor: Fix oops there is no tracer and doing unsafe + transition." + * Revert "SAUCE: AppArmor: Fix refcounting bug causing leak of creds" + * Revert "SAUCE: AppArmor: Fix cap audit_caching preemption disabling" + * Revert "SAUCE: AppArmor: Fix Oops when in apparmor_bprm_set_creds" + * Revert "SAUCE: AppArmor: Fix oops after profile removal" + * Revert "SAUCE: AppArmor: AppArmor disallows truncate of deleted files." + * Revert "SAUCE: AppArmor: AppArmor fails to audit change_hat correctly" + * Revert "SAUCE: AppArmor: Policy load and replacement can fail to alloc + mem" + * Revert "SAUCE: AppArmor: AppArmor wrongly reports allow perms as + denied" + * Revert "SAUCE: AppArmor: Fix mediation of "deleted" paths" + * Revert "SAUCE: AppArmor: Fix off by 2 error in getprocattr mem + allocation" + * Revert "SAUCE: AppArmor: Set error code after structure + initialization." + * Revert "AppArmor -- fix pstrace_may_access rename" + * Revert "ubuntu: AppArmor security module" + * Revert "SAUCE: Add config option to set a default LSM" + * Revert "ubuntu: fsam7400 -- sw kill switch driver" + * Revert "[Config] fsam7400 -- enable" + * Revert "[Config] AUFS -- enable" + * Revert "ubuntu: AUFS -- aufs2-30 20090727" + * Revert "ubuntu: AUFS -- export various core functions -- fixes" + * Revert "ubuntu: AUFS -- export various core functions" + * Revert "[Config] ubuntu/iscsitarget -- disable" + * Revert "[Config] iscsitarget -- enable" + * Revert "ubuntu: iscsitarget -- SVN revision r214" + * update Vcs-Git to point to the correct repository + - LP: #493589 + * update build environment overrides to lucid + - LP: #493589 + * [Config] enable CONFIG_DEVTMPFS + * [Config] update all configs following AppArmor 2009-12-08 update + * SAUCE: isapnp_init: make isa PNP scans occur async + * [Config] fsam7400 -- enable + * [Config] omnibook -- enable + * [Config] cleanup CONFIG_AUDIT + * ubuntu: AUFS -- export various core functions (aufs2-base.patch) + * ubuntu: AUFS -- export various core functions (aufs2-standalone.patch) + * ubuntu: AUFS -- aufs2 20091209 + * [Config] AUFS -- enable + * [Config] iscsitarget -- enable + + [ Arjan van de Ven ] + + * SAUCE: KMS: cache the EDID information of the LVDS + + [ Colin Watson ] + + * bnx2: update d-i firmware filenames + - LP: #494052 + * add cdc_ether to nic-usb-modules udeb + - LP: #495060 + + [ John Johansen ] + + * ubuntu: AppArmor -- mainline 2009-10-08 + + [ Manoj Iyer ] + + * ubuntu: fsam7400 -- kill switch for Fujitsu Siemens Amilo M 7400 + * ubuntu: omnibook -- support Toshiba (HP) netbooks + * ubuntu: iscsitarget --- version 1.4.19 + - LP: #494693 + + [ Surbhi Palande ] + + * SAUCE: Make populate_rootfs asynchronous + + [ Tim Gardner ] + + * Parallelize flavour builds and packaging + * [Config] Enable CONFIG_KSM + + [ Upstream Kernel Changes ] + + * Config option to set a default LSM + * LSM: Add security_path_chroot(). + * LSM: Add security_path_chroot(). + * LSM: Move security_path_chmod()/security_path_chown() to after + mutex_lock(). + * ext4: Fix insufficient checks in EXT4_IOC_MOVE_EXT + + -- Andy Whitcroft Fri, 11 Dec 2009 17:45:19 +0000 + +linux (2.6.32-7.10) lucid; urgency=low + + [ Andy Whitcroft ] + + * [Config] disable CONFIG_THUMB2_KERNEL to fix arm FTBFS + + -- Andy Whitcroft Sun, 06 Dec 2009 12:56:48 +0000 + +linux (2.6.32-7.9) lucid; urgency=low + + [ Andy Whitcroft ] + + * SAUCE: set /proc/acpi/video/*/DOS to 4 by default + - LP: #458982 + * SAUCE: ensure vga16fb loads if no other driver claims the VGA device + * [Config] update configs following versatile switch to V7 + * rebased to v2.6.32 + * [Config] update configs following rebase to v2.6.32 + * [Config] update ports configs following rebase to v2.6.32 + * SAUCE: default ATI Radeon KMS to off until userspace catches up + + [ Arjan van de Ven ] + + * SAUCE: vfs: Add a trace point in the mark_inode_dirty function + + [ Leann Ogasawara ] + + * [SCSI] megaraid_sas: remove sysfs poll_mode_io world writeable + permissions + - CVE-2009-3939 + + [ Loic Minier ] + + * SAUCE: select a v7 CPU for versatile + + [ Takashi Iwai ] + + * SAUCE: ALSA: hda - Add power on/off counter + + [ Upstream changes ] + + * rebased to v2.6.32 + + -- Andy Whitcroft Fri, 04 Dec 2009 10:44:50 +0000 + +linux (2.6.32-6.8) lucid; urgency=low + + [ Andy Whitcroft ] + + * [Config] disable SSB devices for armel + + -- Andy Whitcroft Sat, 28 Nov 2009 12:16:40 +0000 + +linux (2.6.32-6.7) lucid; urgency=low + + [ Andy Whitcroft ] + + * Revert "SAUCE: default ATI Radeon KMS to off until userspace catches up" + * Revert "SAUCE: Dell XPS710 reboot quirk" + * Revert "SAUCE: Link acpi-cpufreq.o first" + * Revert "SAUCE: LPIA Logical reset of USB port on resume" + * Revert "SAUCE: LPIA Reboot fix for Intel Crownbeach development boards" + * Revert "SAUCE: Enable HDMI audio codec on Studio XPS 1340" + * Revert "SAUCE: Dell laptop digital mic does not work, PCI 1028:0271" + * Revert "Add Dell Dimension 9200 reboot quirk" + * Revert "SAUCE: Correctly blacklist Thinkpad r40e in ACPI" + * Revert "SAUCE: tulip: Define ULI PCI ID's" + * Revert "SAUCE: Lower warning level of some PCI messages" + * Revert "mac80211: fix two issues in debugfs" + Drop a number of known redundant commits as identified in the Ubuntu + delta review blueprint. + + * reenable armel versatile flavour + * [Config] disable CONFIG_USB_DEVICEFS + + [ Tim Gardner ] + + * [Config] udeb: Add squashfs to fs-core-modules + - LP: #352615 + * [Config] Create a real squashfs udeb + - LP: #352615 + + + -- Andy Whitcroft Fri, 27 Nov 2009 17:31:16 +0000 + +linux (2.6.32-5.6) lucid; urgency=low + + [ Andy Whitcroft ] + + * rebase to v2.6.32-rc8 + * update configs following rebase to v2.6.32-rc8 + * update ports configs since rebase to v2.6.32-rc8 + * [Config] enable cgroup options + - LP: #480739 + + [ Upstream Kernel Changes ] + + * rebase to v2.6.32-rc8 + + -- Andy Whitcroft Mon, 23 Nov 2009 11:16:14 +0000 + +linux (2.6.32-4.5) lucid; urgency=low + + [ Andy Whitcroft ] + + * [Config] SERIO_LIBPS2 and SERIO_I8042 must match + * rebase to v2.6.32-rc7 + * resync with Karmic proposed + + [ John Johansen ] + + * SAUCE: AppArmor: Fix oops after profile removal + - LP: #475619 + * SAUCE: AppArmor: Fix Oops when in apparmor_bprm_set_creds + - LP: #437258 + * SAUCE: AppArmor: Fix cap audit_caching preemption disabling + - LP: #479102 + * SAUCE: AppArmor: Fix refcounting bug causing leak of creds + - LP: #479115 + * SAUCE: AppArmor: Fix oops there is no tracer and doing unsafe + transition. + - LP: #480112 + + [ Ubuntu Changes ] + + * resync with Karmic proposed (ddbc670a86a3dee18541a3734149f250ff307adf) + + [ Upstream Kernel Changes ] + + * rebase to v2.6.32-rc7 + + -- Andy Whitcroft Fri, 13 Nov 2009 11:35:13 +0000 + +linux (2.6.32-3.4) lucid; urgency=low + + [ Andy Whitcroft ] + + * [Config] SERIO_LIBPS2 and SERIO_I8042 must match + * [Upstream] add local prefix to oss local change_bits + + [ Upstream Kernel Changes ] + + * mtd/maps: gpio-addr-flash: pull in linux/ headers rather than asm/ + * mtd/maps: gpio-addr-flash: depend on GPIO arch support + + -- Andy Whitcroft Wed, 11 Nov 2009 14:47:04 +0000 + +linux (2.6.32-3.3) lucid; urgency=low + + [ Andy Whitcroft ] + + * rebase to v2.6.32-rc6 + * [Config] update configs following rebase to v2.6.32-rc6 + * [Config] update ports configs following rebase to v2.6.32-rc6 + * resync with Karmic Ubuntu-2.6.31-15.49 + * [Config] add module ignores for broken drivers + + [ John Johansen ] + + * SAUCE: AppArmor: AppArmor wrongly reports allow perms as denied + - LP: #453335 + * SAUCE: AppArmor: Policy load and replacement can fail to alloc mem + - LP: #458299 + * SAUCE: AppArmor: AppArmor fails to audit change_hat correctly + - LP: #462824 + * SAUCE: AppArmor: AppArmor disallows truncate of deleted files. + - LP: #451375 + + [ Kees Cook ] + + * SAUCE: Fix nx_enable reporting + - LP: #454285 + + [ Scott James Remnant ] + + * Revert "SAUCE: trace: add trace_event for the open() syscall" + * SAUCE: trace: add trace events for open(), exec() and uselib() + - LP: #462111 + + [ Stefan Bader ] + + * SAUCE: Fix sub-flavour script to not stop on missing directories + - LP: #453073 + + [ Ubuntu Changes ] + + * resync with Karmic Ubuntu-2.6.31-15.49 + + [ Upstream Kernel Changes ] + + * rebase to v2.6.32-rc6 + - LP: #464552 + + -- Andy Whitcroft Tue, 10 Nov 2009 15:00:57 +0000 + +linux (2.6.32-2.2) lucid; urgency=low + + [ Andy Whitcroft ] + + * install the full changelog with the binary package + * changelog -- explicitly note rebases and clean history + * reinstate armel.mk with no flavours + - LP: #449637 + * [Upstream] block: silently error unsupported empty barriers too + - LP: #420423 + * [Config] udate configs following karmic resync + * [Config] update ports configs following karmic resync + * [Upstream] lirc -- follow removal of .id element + + [ Colin Watson ] + + * Use section 'admin' rather than 'base' + * Add more e100 firmware to nic-modules + - LP: #451872 + * Add qla1280 firmware to scsi-modules + - LP: #381037 + + [ John Johansen ] + + * SAUCE: AppArmor: Set error code after structure initialization. + - LP: #427948 + * SAUCE: AppArmor: Fix off by 2 error in getprocattr mem allocation + - LP: #446595 + * SAUCE: AppArmor: Fix mediation of "deleted" paths + + [ Kees Cook ] + + * SAUCE: [x86] fix report of cs-limit nx-emulation + - LP: #454285 + + [ Leann Ogasawara ] + + * SAUCE: (drop after 2.6.31) input: Add support for filtering input + events + - LP: #430809 + * SAUCE: (drop after 2.6.31) dell-laptop: Trigger rfkill updates on wifi + toggle switch press + - LP: #430809 + + [ Luke Yelavich ] + + * SAUCE: Add sr_mod to the scsi-modules udeb for powerpc + * [Config] Add sd_mod to scsi-modules udeb for powerpc + + [ Mario Limonciello ] + + * SAUCE: Update to LIRC 0.8.6 + - LP: #432678 + * SAUCE: dell-laptop: Store the HW switch status internally rather than + requerying every time + - LP: #430809 + * SAUCE: dell-laptop: Blacklist machines not supporting dell-laptop + - LP: #430809 + + [ Stefan Bader ] + + * [Upstream] acerhdf: Limit modalias matching to supported boards + - LP: #435958 + + [ Tim Gardner ] + + * [Upstream] i915: Fix i2c init message + - LP: #409361 + * [Config] Add sym53c8xx.ko to virtual sub-flavour + - LP: #439415 + * [Config] Add d101m_ucode.bin to d-i/firmware/nic-modules + - LP: #439456 + * [Config] Set default I/O scheduler back to CFQ for desktop flavours + - LP: #381300 + * SAUCE: Created MODULE_EXPORT/MODULE_IMPORT macros + - LP: #430694 + * SAUCE: Use MODULE_IMPORT macro to tie intel_agp to i915 + - LP: #430694 + * [Config] CONFIG_GFS2_FS_LOCKING_DLM=y + - LP: #416325 + * SAUCE: Fix MODULE_IMPORT/MODULE_EXPORT + - LP: #430694 + * SAUCE: Raise the default console 'quiet' level to 2 + * [Config] CONFIG_X86_PAT=y + * [Config] Add armel arch to linux-libc-dev arches. + - LP: #449637 + * [Config] CONFIG_X86_MCE + * [Upstream] (drop after 2.6.31) Input: synaptics - add another Protege + M300 to rate blacklist + - LP: #433801 + + [ Upstream Kernel Changes ] + + * sgi-gru: Fix kernel stack buffer overrun, CVE-2009-2584 + * drm/i915: Fix FDI M/N setting according with correct color depth + - LP: #416792 + + -- Andy Whitcroft Thu, 22 Oct 2009 16:53:33 +0100 + +linux (2.6.32-1.1) lucid; urgency=low + + [ Andy Whitcroft ] + + * rebase to v2.6.32-rc3 + * [Config] update configs following rebase to 2.6.32-rc3 + * [Config] update ports configs following rebase to 2.6.32-rc3 + * AppArmor -- fix pstrace_may_access rename + * staging/android -- disable + * ubuntu: dm-raid-45 -- update to compile with 2.6.32 + * ubuntu: drbd -- disable + * staging/comdi -- disable + * staging/go7007 -- disable + * [Config] staging/winbond -- disable + * [Config] ubuntu/iscsitarget -- disable + * [d-i] cbc and ecb are builtin make them optional in udebs + * rebase to v2.6.32-rc5 + * [Config] update configs following rebase to v2.6.32-rc5 + * [Config] update ports configs following rebase to v2.6.31-rc5 + + [ Tim Gardner ] + + * [Config] Add cpio as a build dependency. + + [ Upstream Kernel Changes ] + + * rebase to v2.6.32-rc3 + * rebase to v2.6.32-rc5 + + -- Andy Whitcroft Mon, 05 Oct 2009 15:48:58 +0100 + +linux (2.6.31-11.37) karmic; urgency=low + + [ Tim Gardner ] + + * [Config] Increase kernel log buffer to 256K for amd64 flavours + - LP: #424810 + * [Config] Set HZ=100 for amd64 flavours + - LP: #438234 + * [Upstream] e1000e: Emit notice instead of an error when + pci_enable_pcie_error_reporting() fails + - LP: #436370 + + [ Upstream Kernel Changes ] + + * n_tty: honor opost flag for echoes + * n_tty: move echoctl check and clean up logic + - LP: #438310 + + * Revert "[Upstream] drm/i915: Check that the relocation points to within + the target" - Use upstream cherry-pick. + * drm/i915: Check that the relocation points to within the target + - LP: #429241 + + * drm/i915: fix tiling on IGDNG + * drm/i915: add B43 chipset support + * agp/intel: Add B43 chipset support + Intel request from kernel team mailing list. + + * HID: completely remove apple mightymouse from blacklist + - LP: #428111 + + -- Tim Gardner Mon, 28 Sep 2009 11:47:29 -0600 + +linux (2.6.31-11.36) karmic; urgency=low + + [ Brian Rogers ] + + * SAUCE: (drop after 2.6.31) em28xx: ir-kbd-i2c init data needs a + persistent object + * SAUCE: (drop after 2.6.31) saa7134: ir-kbd-i2c init data needs a + persistent object + + [ Takashi Iwai ] + + * [Upstream] ALSA: hda - Add another entry for Nvidia HDMI device + - LP: #416482 + + [ Tyler Hicks ] + + * SAUCE: (drop after 2.6.31) eCryptfs: Prevent lower dentry from going + negative during unlink + + [ Upstream Kernel Changes ] + + * sg: fix oops in the error path in sg_build_indirect() + * mpt2sas : Rescan topology from Interrupt context instead of work thread + * mpt2sas: Prevent sending command to FW while Host Reset + * mpt2sas: setting SDEV into RUNNING state from Interrupt context + * mpt2sas: Raid 10 Volume is showing as Raid 1E in dmesg + * SCSI: fix oops during scsi scanning + * SCSI: libsrp: fix memory leak in srp_ring_free() + * cfg80211: fix looping soft lockup in find_ie() + * ath5k: write PCU registers on initial reset + * binfmt_elf: fix PT_INTERP bss handling + * TPM: Fixup boot probe timeout for tpm_tis driver + * md: Fix "strchr" [drivers/md/dm-log-userspace.ko] undefined! + * x86/amd-iommu: fix broken check in amd_iommu_flush_all_devices + * fix undefined reference to user_shm_unlock + * perf_counter: Fix buffer overflow in perf_copy_attr() + * perf_counter: Start counting time enabled when group leader gets + enabled + * powerpc/perf_counters: Reduce stack usage of power_check_constraints + * powerpc: Fix bug where perf_counters breaks oprofile + * powerpc/ps3: Workaround for flash memory I/O error + * block: don't assume device has a request list backing in nr_requests + store + * agp/intel: remove restore in resume + * ALSA: cs46xx - Fix minimum period size + * ASoC: Fix WM835x Out4 capture enumeration + * sound: oxygen: work around MCE when changing volume + * mlx4_core: Allocate and map sufficient ICM memory for EQ context + * perf stat: Change noise calculation to use stddev + * x86: Fix x86_model test in es7000_apic_is_cluster() + * x86/i386: Make sure stack-protector segment base is cache aligned + * PCI: apply nv_msi_ht_cap_quirk on resume too + * x86, pat: Fix cacheflush address in change_page_attr_set_clr() + * ARM: 5691/1: fix cache aliasing issues between kmap() and kmap_atomic() + with highmem + * KVM guest: do not batch pte updates from interrupt context + * KVM: Fix coalesced interrupt reporting in IOAPIC + * KVM: VMX: Check cpl before emulating debug register access + * KVM guest: fix bogus wallclock physical address calculation + * KVM: x86: Disallow hypercalls for guest callers in rings > 0 + * KVM: VMX: Fix cr8 exiting control clobbering by EPT + * KVM: x86 emulator: Implement zero-extended immediate decoding + * KVM: MMU: make __kvm_mmu_free_some_pages handle empty list + * KVM: x86 emulator: fix jmp far decoding (opcode 0xea) + * KVM: limit lapic periodic timer frequency + * libata: fix off-by-one error in ata_tf_read_block() + * PCI quirk: update 82576 device ids in SR-IOV quirks list + * PCI: Unhide the SMBus on the Compaq Evo D510 USDT + * powerpc/pseries: Fix to handle slb resize across migration + * Linux 2.6.31.1 + + -- Tim Gardner Thu, 24 Sep 2009 13:04:28 -0600 + +linux (2.6.31-10.35) karmic; urgency=low + + [ Amit Kucheria ] + + * Disable CONFIG_UEVENT_HELPER_PATH + + [ Andy Whitcroft ] + + * [Config] Enable CONFIG_USB_GADGET_DUMMY_HCD + * remove the tlsup driver + * remove lmpcm logitech driver support + + [ Bryan Wu ] + + * Add 3 missing files to prerm remove file list + - LP: #345623, #415832 + + [ Chris Wilson ] + + * [Upstream] drm/i915: Check that the relocation points to within the + target + - LP: #429241 + + [ Luke Yelavich ] + + * [Config] Set CONFIG_EXT4_FS=y on ports architectures + + [ Manoj Iyer ] + + * SAUCE: Added quirk to recognize GE0301 3G modem as an interface. + - LP: #348861 + + [ Tim Gardner ] + + * Revert "[Upstream] ACPI: Add Thinkpad W500, W700, & W700ds to OSI(Linux) white-list" + * Revert "[Upstream] ACPI: Add Thinkpad R400 & Thinkpad R500 to OSI(Linux) white-list" + * Revert "[Upstream] ACPI: Add Thinkpad X300 & Thinkpad X301 to OSI(Linux) white-list" + * Revert "[Upstream] ACPI: Add Thinkpad X200, X200s, X200t to OSI(Linux) white-list" + * Revert "[Upstream] ACPI: Add Thinkpad T400 & Thinkpad T500 to OSI(Linux) white-list" + Upstream suggests that this is not the right approach. + + * [Config] Set default I/O scheduler to DEADLINE + CFQ seems to have some load related problems which are often exacerbated by sreadahead. + - LP: #381300 + + [ ubuntu@tjworld.net ] + + * SAUCE: ipw2200: Enable LED by default + - LP: #21367 + + [ Upstream Kernel Changes ] + + * ALSA: hda - Add support for new AMD HD audio devices + - LP: #430564 + + -- Andy Whitcroft Wed, 16 Sep 2009 15:37:49 +0100 + +linux (2.6.31-10.34) karmic; urgency=low + + [ Ted Tso ] + + * [Upstream] ext3: Don't update superblock write time when filesystem is + read-only + - LP: #427822 + + -- Tim Gardner Tue, 15 Sep 2009 16:00:45 -0600 + +linux (2.6.31-10.33) karmic; urgency=low + + [ Leann Ogasawara ] + + * [Upstream] dvb-usb: fix tuning with Cinergy T2 + - LP: #421258 + + [ Tim Gardner ] + + * [Config] Unconditionally copy files from sub-flavours lists. + (really, really fix it this time) + - LP: #423426 + * [Config] Set CONFIG_CACHEFILES=m for all flavours + + [ Upstream Kernel Changes ] + + * ext4: Don't update superblock write time when filesystem is read-only + - LP: #427822 + + -- Tim Gardner Tue, 15 Sep 2009 07:50:21 -0600 + +linux (2.6.31-10.32) karmic; urgency=low + + [ Eric Miao ] + + * [Config] enable module support for memory stick + - LP: #159951 + + [ Tim Gardner ] + + * [Config] Unconditionally copy files from sub-flavours lists. + - LP: #423426 + + -- Tim Gardner Thu, 10 Sep 2009 15:57:55 -0600 + +linux (2.6.31-10.31) karmic; urgency=low + + [ Andy Whitcroft ] + + * rebase to v2.6.31 final + + [ Colin Watson ] + + * [Config] Recommend grub-pc in linux-image + - LP: #385741 + + [ Ike Panhc ] + + * [Upstream] Pull latest update of lenovo-sl-laptop + + [ Peter Feuerer ] + + * [Upstream] (drop after 2.6.31) acerhdf: fix fan control for AOA150 + model + - LP: #426691 + + [ Tim Gardner ] + + * [Config] De-macro some package names. + + [ Upstream Changes ] + + * rebase to 2.6.31 final. + + -- Andy Whitcroft Thu, 10 Sep 2009 09:38:10 +0100 + +linux (2.6.31-10.30) karmic; urgency=low + + [ Amit Kucheria ] + + * [Config] Enable CONFIG_USB_DEVICEFS + - LP: #417748 + * [Config] Populate the config-update template a bit more + + [ Andy Whitcroft ] + + * rebase to v2.6.31-rc9 + * [Config] update configs following rebase to v2.6.31-rc9 + * [Config] update ports configs following rebase to v2.6.31-rc9 + + [ Colin Ian King ] + + * SAUCE: wireless: hostap, fix oops due to early probing interrupt + - LP: #254837 + + [ Jerone Young ] + + * [Upstream] ACPI: Add Thinkpad T400 & Thinkpad T500 to OSI(Linux) + white-list + - LP: #281732 + * [Upstream] ACPI: Add Thinkpad X200, X200s, X200t to OSI(Linux) + white-list + - LP: #281732 + * [Upstream] ACPI: Add Thinkpad X300 & Thinkpad X301 to OSI(Linux) + white-list + - LP: #281732 + * [Upstream] ACPI: Add Thinkpad R400 & Thinkpad R500 to OSI(Linux) + white-list + - LP: #281732 + * [Upstream] ACPI: Add Thinkpad W500, W700, & W700ds to OSI(Linux) + white-list + - LP: #281732 + + [ John Johansen ] + + * SAUCE: AppArmor: Fix profile attachment for regexp based profile names + - LP: #419308 + * SAUCE: AppArmor: Return the correct error codes on profile + addition/removal + - LP: #408473 + * SAUCE: AppArmor: Fix OOPS in profile listing, and display full list + - LP: #408454 + * SAUCE: AppArmor: Fix mapping of pux to new internal permission format + - LP: #419222 + * SAUCE: AppArmor: Fix change_profile failure + - LP: #401931 + * SAUCE: AppArmor: Tell git to ignore generated include files + - LP: #419505 + + [ Stefan Bader ] + + * [Upstream] acpi: video: Loosen strictness of video bus detection code + - LP: #333386 + * SAUCE: Remove ov511 driver from ubuntu subdirectory + + [ Tim Gardner ] + + * [Config] Exclude char-modules from non-x86 udeb creation + * SAUCE: Notify the ACPI call chain of AC events + * [Config] CONFIG_SATA_VIA=m + - LP: #403385 + * [Config] Build in all phylib support modules. + * [Config] Don't fail when sub-flavour files are missing + - LP: #423426 + * [Config] Set CONFIG_LSM_MMAP_MIN_ADDR=0 + - LP: #423513 + + [ Upstream ] + + * Rebased against v2.6.31-rc9 + + -- Andy Whitcroft Mon, 07 Sep 2009 11:33:45 +0100 + +linux (2.6.31-9.29) karmic; urgency=low + + [ Leann Ogasawara ] + + * [Upstream] agp/intel: support for new chip variant of IGDNG mobile + - LP: #419993 + * [Config] d-i/modules: Add new char-modules file, initialize with + intel-agp + - LP: #420605 + + [ Upstream ] + + * Rebased against 2.6.31-rc8 plus some inotify regression patches: + up through git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux-2.6.git + adda766193ea1cf3137484a9521972d080d0b7af. + + -- Tim Gardner Fri, 28 Aug 2009 06:31:30 -0600 + +linux (2.6.31-8.28) karmic; urgency=low + + [ Ike Panhc ] + + * [Config] Let nic-shared-modules depends on crypto-modules + - LP: #360966 + + [ Leann Ogasawara ] + + * [Upstream] (drop after 2.6.31) drm/i915: increase default latency + constant + - LP: #412492 + + [ Mario Limonciello ] + + * [Upstream]: (drop after 2.6.31) dell-laptop: don't change softblock + status if HW switch is disabled + - LP: #418721 + * [Upstream]: (drop after 2.6.31) compal-laptop: Add support for known + Compal made Dell laptops + * [Upstream]: (drop after 2.6.31) compal-laptop: Replace sysfs support + with rfkill support + + [ Tim Gardner ] + + * [Config] Add acpiphp to virtual sub-flavour + - LP: #364916 + * Drop KSM patch set for now because of instabilities with encrypted swap. + - LP: #418781 + + -- Tim Gardner Wed, 26 Aug 2009 08:14:26 -0600 + +linux (2.6.31-7.27) karmic; urgency=low + + [ Tim Gardner ] + + * [Config] updateconfigs updateportsconfigs after 2.6.31-rc7 rebase + * SAUCE: (drop after 2.6.31) Added KSM from mmotm-2009-08-20-19-18 + Replaces previous ksm patches from 2.6.31-6.25 + * [Config] KSM=y + + [ Upstream ] + + * Rebased against v2.6.31-rc7 + + -- Tim Gardner Sat, 22 Aug 2009 20:32:11 -0600 + +linux (2.6.31-6.26) karmic; urgency=low + + [ Andy Whitcroft ] + + * [Config] enable CONFIG_AUFS_BR_RAMFS + - LP: #414738 + * split out debian directory ready for abstraction + * add printdebian target to find branch target + * abstracted debian -- debian/files is not abstracted + * abstracted debian -- packages must be built in debian/ + * abstracted debian -- kernel-wedge needs to work in debian/ + * abstracted debian -- ensure we install the copyright file + * abstracted-debian -- drop the debian directories from headers + * abstracted-debian -- drop the debian directories from headers part 2 + * SAUCE: ubuntu-insert-changes -- follow abstracted debian + * [Upstream] aoe: ensure we initialise the request_queue correctly V2 + - LP: #410198 + + [ Luke Yelavich ] + + * [Config] Ports: Disable CONFIG_CPU_FREQ_DEBUG on powerpc-smp + * [Config] Ports: Re-enable windfarm modules on powerpc64-smp + - LP: #413150 + * [Config] Ports: Build all cpu frequency scaling governors into ports + kernels + * [Config] Ports: Build ext2 and ext3 modules into ports kernels + * [Config] Ports: CONFIG_PACKET=y for all ports kernels + * [Config] Ports: Enable PS3 network driver + + [ Stefan Bader ] + + * abstracted debian -- call $(DEBIAN)/rules using make + + [ Tim Gardner ] + + * [Config] Abstract the debian directory + * SAUCE: Improve error reporting in postinst + - LP: #358564 + + -- Tim Gardner Sun, 16 Aug 2009 20:33:28 -0600 + +linux (2.6.31-6.25) karmic; urgency=low + + [ Andy Whitcroft ] + + * script to generate Ubuntu changes from changelog + * [Config] standardise ANDROID options + * [Config] standardise CONFIG_ATM as module + * [Config] standardise CONFIG_LIB80211 as module + * [Config] disable CONFIG_PRINT_QUOTA_WARNING + * [Config] set CONFIG_CRAMFS as module + * [Config] enable CONFIG_DAB and modules + * [Config] set CONFIG_MAC80211_HWSIM as module + * [Config] set CONFIG_NET_CLS_FLOW as module + * [Config] set CONFIG_NF_CONNTRACK_SANE as module + * [Config] set CONFIG_NF_CT_PROTO_DCCP as module + * [Config] set CONFIG_RTC_DRV_DS1511 as module + * [Config] set CONFIG_RTC_DRV_R9701 as module + * [Config] set CONFIG_RTC_DRV_S35390A as module + * [Config] set CONFIG_TOIM3232_DONGLE as module + * [Config] standardise CONFIG_USB_MIDI_GADGET as module + * [Config] standardise CONFIG_USB_G_PRINTER as module + * [Config] standardise CONFIG_USB_SERIAL_IR as module + * [Config] set CONFIG_USB_SERIAL_IUU as module + * [Config] standardise CONFIG_USB_STORAGE_CYPRESS_ATACB as module + * [Config] standardise CONFIG_USB_STORAGE_ONETOUCH as module + * cleanup remains of dm-loop + * drop thinkpad ec and smapi support + * drop appleir + * [Config] update configs following rebase to v2.6.31-rc6 + * rebase to v2.6.31-rc6 + + [ Hugh Dickins ] + + * SAUCE: ksm patch 1, drop after 2.6.31 + * SAUCE: ksm patch 2, drop after 2.6.31 + * SAUCE: ksm patch 3, drop after 2.6.31 + * SAUCE: ksm patch 4, drop after 2.6.31 + * SAUCE: ksm patch 5, drop after 2.6.31 + * SAUCE: ksm patch 7, drop after 2.6.31 + + [ Izik Eidus ] + + * SAUCE: ksm patch 0, drop after 2.6.31 + * SAUCE: ksm patch 6, drop after 2.6.31 + * SAUCE: ksm patch 8, drop after 2.6.31 + * SAUCE: ksm patch 9, drop after 2.6.31 + + [ Luke Yelavich ] + + * [Config] Ports: Re-add PS3 modules to udebs + + [ Michael Casadevall ] + + * [Config] Update SPARC config and d-i files to reflect what can be built + + [ Tim Gardner ] + + * [Config] Removed armel package support + * [Config] Enabled CONFIG_KSM=y + + [ Upstream Kernel Changes ] + + * Rebased against v2.6.31-rc6 + * ARM: Cleanup: Revert "ARM: Add more cache memory types macros" + * ARM: Cleanup: Revert "Do not use OOB with MLC NAND" + * ARM: Cleanup: Revert "ARM: Make ARM arch aware of ubuntu/ drivers" + * ARM: Cleanup: Revert "ARM: IMX51: Make video capture drivers compile" + * ARM: Cleanup: Revert "ARM: IMX51: Fix isl29003 HWMON driver for i2c + changes" + * ARM: Cleanup: Revert "ARM: IMX51: IPU irq handler deadlock fix" + * ARM: Cleanup: Revert "ARM: IMX51: Babbage 2.5 needs a different system + revision" + * ARM: Cleanup: Revert "ARM: IMX51: Compile-in the IMX51 cpufreq driver + by default" + * ARM: Cleanup: Revert "ARM: IMX51: Enable ZONE_DMA for ARCH_MXC" + * ARM: Cleanup: Revert "ARM: IMX51: Make ARCH_MXC auto-enable + ARCH_MXC_CANONICAL" + * ARM: Cleanup: Revert "ARM: IMX51: Unconditionally disable + CONFIG_GPIOLIB" + * ARM: Cleanup: Revert "ARM: IMX51: Minimal changes for USB to work on + 2.6.31" + * ARM: Cleanup: Revert "ARM: IMX51: Fix plat-mxc/timer.c to handle imx51" + * ARM: Cleanup: Revert "ARM: IMX51: Make it compile." + * ARM: Cleanup: Revert "ARM: IMX51: Clean-up the craziness of including + mxc_uart.h _everywhere_" + * ARM: Cleanup: Revert "ARM: IMX51: Move board-mx51* header files to the + correct location" + * ARM: Cleanup: Revert "ARM: IMX51: Changed from snd_card_new to + snd_card_create" + * ARM: Cleanup: Revert "ARM: IMX51: Fix up merge error in Kconfig" + * ARM: Cleanup: Revert "ARM: IMX51: mxc_timer_init prototype" + * ARM: Cleanup: Revert "ARM: IMX51: Removed the mxc_gpio_port structure." + * ARM: Cleanup: Revert "ARM: IMX51: Added external declaration for + mxc_map_io." + * ARM: Cleanup: Revert "ARM: IMX51: Get to bus_id by calling dev_name." + * ARM: Cleanup: Revert "ARM: IMX51: Get to bus_id by calling dev_name." + * ARM: Cleanup: Revert "ARM: IMX51: snd_soc_machine structure replaced + with snd_soc_card." + * ARM: Cleanup: Revert "ARM: IMX51: codec structure was moved to the card + structure" + * ARM: Cleanup: Revert "ARM: IMX51: Hack to add defines for + DMA_MODE_READ/WRITE/MASK" + * ARM: Cleanup: Revert "ARM: IMX51: Add SoC and board support for + Freescale mx51 platform" + * Driver core: add new device to bus's list before probing + * [Upstream] (drop after 2.6.31) ALSA: hda - Reduce click noise at + power-saving + - LP: #381693, #399750, #380892 + + -- Andy Whitcroft Fri, 14 Aug 2009 11:32:23 +0100 + +linux (2.6.31-5.24) karmic; urgency=low + + [ Amit Kucheria ] + + * ARM: IMX51: Make video capture drivers compile + * [Config] IMX51: Config updates + + [ Andy Whitcroft ] + + * remove leftovers of dm-bbr + + [ Leann Ogasawara ] + + * Add pata_cs5535 to pata-modules + - LP: #318805 + + [ Luke Yelavich ] + + * [Config] CONFIG_PPC64=y for powerpc64-smp + * [Config] Set the maximum number of CPUs to 1024 for powerpc64-smp + * [Config] CONFIG_PPC_PS3=y for powerpc64-smp + * [Config] CONFIG_PPC_MAPLE=y on powerpc64-smp + * [Config] CONFIG_PPC_PASEMI=y on powerpc64-smp + * [Config] CONFIG_CPU_FREQ_PMAC64=y on powerpc64-smp + * [Config] Enable all PS3 drivers in powerpc64-smp + + [ Mario Limonciello ] + + * LIRC -- fix lirc-i2c 2.6.31 compilation + + [ Matthew Garrett ] + + * [Upstream] dell-laptop: Fix rfkill state queries + + [ Tim Gardner ] + + * [Config] Ignore armel ABI and module changes + * [Config] Update configs after rebase against 2.6.31-rc5 + + [ Upstream ] + + * Rebased to 2.6.31-rc5 + + -- Andy Whitcroft Tue, 28 Jul 2009 10:10:09 +0100 + +linux (2.6.31-4.23) karmic; urgency=low + + [ Andy Whitcroft ] + + * AUFS -- update to aufs2-30 20090727 + * [Config] enable AUFS FUSE support + + [ Luke Yelavich ] + + * [Config] CONFIG_JFS_FS=m on sparc + + [ Tim Gardner ] + + * [Upstream] dell-laptop: Fix rfkill state setting. + + -- Andy Whitcroft Mon, 27 Jul 2009 11:11:47 +0100 + +linux (2.6.31-4.22) karmic; urgency=low + + [ Amit Kucheria ] + + * ARM: IMX51: Add SoC and board support for Freescale mx51 platform + * ARM: IMX51: Move board-mx51* header files to the correct location + * ARM: IMX51: Clean-up the craziness of including mxc_uart.h _everywhere_ + * ARM: IMX51: Make it compile. + * ARM: IMX51: Unconditionally disable CONFIG_GPIOLIB + * ARM: IMX51: Make ARCH_MXC auto-enable ARCH_MXC_CANONICAL + * ARM: IMX51: Enable ZONE_DMA for ARCH_MXC + * ARM: IMX51: Compile-in the IMX51 cpufreq driver by default + * ARM: IMX51: Fix isl29003 HWMON driver for i2c changes + * ARM: USB: musb: Refer to musb_otg_timer_func under correct #ifdef + * ARM: staging: udlfb: Add vmalloc.h include + * UBUNTU [Config]: Bring imx51 config upto date with other flavours + + [ Brad Figg ] + + * ARM: IMX51: Hack to add defines for DMA_MODE_READ/WRITE/MASK + * ARM: IMX51: codec structure was moved to the card structure + * ARM: IMX51: snd_soc_machine structure replaced with snd_soc_card. + * ARM: IMX51: Get to bus_id by calling dev_name. + * ARM: IMX51: Get to bus_id by calling dev_name. + * ARM: IMX51: Added external declaration for mxc_map_io. + * ARM: IMX51: Removed the mxc_gpio_port structure. + * ARM: IMX51: mxc_timer_init prototype + * ARM: IMX51: Fix up merge error in Kconfig + * ARM: IMX51: Changed from snd_card_new to snd_card_create + + [ Dinh Nguyen ] + + * ARM: IMX51: Fix plat-mxc/timer.c to handle imx51 + * ARM: IMX51: Minimal changes for USB to work on 2.6.31 + * ARM: IMX51: Babbage 2.5 needs a different system revision + * ARM: IMX51: IPU irq handler deadlock fix + + [ Tim Gardner ] + + * [Config] Enabled CONFIG_CAN=m + - LP: #327243 + * [Config] Enabled CONFIG_SERIAL=m + - LP: #397189 + + -- Tim Gardner Fri, 24 Jul 2009 06:19:10 -0600 + +linux (2.6.31-4.21) karmic; urgency=low + + [ Amit Kucheria ] + + * dm-raid-4-5: Add missing brackets around test_bit() + + [ John Johansen ] + + * AppArmor: Fix change_profile failing lpn401931 + * AppArmor: Fix determination of forced AUDIT messages. + * AppArmor: Fix oops in auditing of the policy interface offset + + -- Andy Whitcroft Thu, 23 Jul 2009 19:18:30 +0100 + +linux (2.6.31-4.20) karmic; urgency=low + + [ Andy Whitcroft ] + + * SAUCE: iscsitarget -- update to SVN revision r214 + * SAUCE: iscsitarget -- renable driver + * [Config] consolidate lpia/lpia and i386/generic configs + * [Config] enable CRYPTO modules for all architectures + * [Config] enable cryptoloop + * [Config] enable various filesystems for armel + * [Config] sync i386 generic and generic-pae + * [Config] add the 386 (486 processors and above) flavour + * [Config] re-set DEFAULT_MMAP_MIN_ADDR + - LP: #399914 + * add genconfigs/genportsconfigs to extract the built configs + * updateconfigs -- alter concatenation order allow easier updates + * intelfb -- INTELFB now conflicts with DRM_I915 + * printchanges -- rebase tree does not have stable tags use changelog + * AppArmor: fix argument size missmatch on 64 bit builds + + [ Ike Panhc ] + + * Ship bnx2x firmware in nic-modules udeb + - LP: #360966 + + [ Jeff Mahoney ] + + * AppArmor: fix build failure on ia64 + + [ John Johansen ] + + * AppArmour: ensure apparmor enabled parmater is off if AppArmor fails to + initialize. + * AppArmour: fix auditing of domain transitions to include target profile + information + * AppArmor: fix C99 violation + * AppArmor: revert reporting of create to write permission. + * SAUCE: Add config option to set a default LSM + * [Config] enable AppArmor by default + * AppArmor: Fix NULL pointer dereference oops in profile attachment. + + [ Keith Packard ] + + * SAUCE: drm/i915: Allow frame buffers up to 4096x4096 on 915/945 class + hardware + - LP: #351756 + + [ Luke Yelavich ] + + * [Config] add .o files found in arch/powerpc/lib to all powerpc kernel + header packages + - LP: #355344 + + [ Michael Casadevall ] + + * [Config] update SPARC config files to allow success build + + [ Scott James Remnant ] + + * SAUCE: trace: add trace_event for the open() syscall + + [ Stefan Bader ] + + * SAUCE: jfs: Fix early release of acl in jfs_get_acl + - LP: #396780 + + [ Tim Gardner ] + + * [Upstream] Fix Soltech TA12 volume hotkeys not sending key release + - LP: #397499 + * [Upstream] USB Option driver - Add USB ID for Novatel MC727/U727/USB727 + refresh + - LP: #365291 + * [Config] SSB/B44 are common across all arches/flavours. + + [ Upstream ] + + * Rebased to 2.6.31-rc4 + + -- Andy Whitcroft Thu, 23 Jul 2009 08:41:39 +0100 + +linux (2.6.31-3.19) karmic; urgency=low + + [ Andy Whitcroft ] + + * Revert "[Config] Disabled NDISWRAPPER" + * ndiswrapper -- fix i386 compilation failures on cmpxchg8b + * AUFS -- export various core functions + * AUFS -- export various core functions -- fixes + * AUFS -- core filesystem + * AUFS -- track changes in v2.6.31 + * [Config] Enable AUFS + * droppped 'iwl3945: do not send scan command if channel count zero' as it + is already upstream but failed to auto-drop on rebase. + + [ Eric Paris ] + + * SAUCE: fsnotify: use def_bool in kconfig instead of letting the user + choose + * SAUCE: inotify: check filename before dropping repeat events + * SAUCE: fsnotify: fix inotify tail drop check with path entries + + -- Andy Whitcroft Tue, 14 Jul 2009 12:52:55 +0100 + +linux (2.6.31-3.18) karmic; urgency=low + + [ Andy Whitcroft ] + + * Revert "Add splice-2.6.23.patch from AUFS to export a symbol needed by + AUFS" + * Revert "Add put_filp.patch from AUFS to export a symbol needed by AUFS" + * Revert "Add sec_perm-2.6.24.patch from AUFS - export + security_inode_permission" + * clear out left over AUFS files and modifications + + [ Luke Yelavich ] + + * [Config] Enable CONFIG_USB_ISP116X_HCD on sparc + * SAUCE: Explicitly include header files to allow apparmor to build on + powerpc + * [Config] Enable CONFIG_BLK_DEV_IDECD on powerpc + + [ Tim Gardner ] + + * [Config] Dropped ubuntu/misc/wireless/acx + * [Config] Disabled NDISWRAPPER until the compile issues are fixed. + + [ Upstream ] + + * Rebased to 2.6.31-rc3 + + -- Andy Whitcroft Fri, 10 Jul 2009 18:59:33 +0100 + +linux (2.6.31-2.17) karmic; urgency=low + + [ Andy Whitcroft ] + + * [Config] CONFIG_BLK_DEV_CRYPTOLOOP=m for sparc + * compcache -- remove redundant Kconfig entries part 2 + * compcache -- clean up CCFLAGS declarations + * [Config] enable AppArmor + * AppArmor: fix operator precidence issue in as_path_link + + [ John Johansen ] + + * AppArmor security module + * AppArmor: Correct mapping of file permissions. + * AppArmor: Turn auditing of ptrace on + + [ Luke Yelavich ] + + * [Config] disable CONFIG_DM_RAID45 on powerpc + + -- Andy Whitcroft Fri, 10 Jul 2009 15:02:05 +0100 + +linux (2.6.31-2.16) karmic; urgency=low + + [ Andy Whitcroft ] + + * compcache -- remove redundant Kconfig entries + added ignore and ignore.modules for all arches since the compcache update + changes the modules names as well as some compcache ABI values. + + [ Manoj Iyer ] + + * SAUCE: updated dm-raid45 module version to 2009.04.24 (2.6.30-rc3) + * SAUCE: update compcache version to 0.5.3 + + [ Tim Gardner ] + + * [Config]: Fix sparc FTBS by adding ignore.modules + + -- Tim Gardner Mon, 06 Jul 2009 13:35:29 -0600 + +linux (2.6.31-2.15) karmic; urgency=low + + [ Andy Whitcroft ] + + * SAUCE: default ATI Radeon KMS to off until userspace catches up + * [Config] Update configs following rebase to 2.6.31-rc2 + * [Config] update ports configs following update to 2.6.31-rc2 + + [ Luke Yelavich ] + + * [Config] powerpc - Disable CONFIG_RDS + + [ Matt Zimmerman ] + + * Rename linux-doc-PKGVER to linux-doc and clean up its description + - LP: #382115 + + [ Upstream Kernel Changes ] + + * rebased to mainline 2.6.31-rc2 + + -- Andy Whitcroft Sat, 04 Jul 2009 17:39:13 +0100 + +linux (2.6.31-1.14) karmic; urgency=low + + [ Andy Whitcroft ] + + * update ndiswrapper to 1.55 + * remove leftovers of gfs + * [Config] powerpc: enable CONFIG_PPC_DISABLE_WERROR + + [ Luke Yelavich ] + + * [Config] re-enable and build the ide-pmac driver into powerpc kernels + * [Config] Build the ServerWorks Frodo / Apple K2 SATA driver into the + kernel + + [ Manoj Iyer ] + + * Remove snd-bt-sco ubuntu driver + + [ Michael Casadevall ] + + * [Config] updates ia64 config and d-i folders to allow succesful build + * [Config] Update powerpc and sparc for 2.6.31 + + [ Upstream Kernel Changes ] + + * intel-iommu: fix Identity Mapping to be arch independent + - LP: #384695 + * ACPI: video: prevent NULL deref in acpi_get_pci_dev() + + -- Andy Whitcroft Tue, 30 Jun 2009 17:47:32 +0100 + +linux (2.6.31-1.13) karmic; urgency=low + + [ Andy Whitcroft ] + + * REBASE: rebased to mainline 2.6.31-rc1 + - "UBUNTU: SAUCE: UHCI USB quirk for resume" + no longer applies, using deprecated interfaces, LPIA only, dropped + - "UBUNTU: SAUCE: Mask off garbage in Dell WMI scan code data" + changes now upstream, dropped + * [Config] Update configs following rebase to 2.6.31-rc1 + * [Config] update ports configs following update to 2.6.31-rc1 + + * [Config] disable broken staging driver CONFIG_STLC45XX + * SAUCE: fix compcache to use updates accessors + * [Config] disable staging driver CONFIG_VT6655 + * SAUCE: fix DRDB to use updates accessors + * [Disable] ndiswrapper needs update + * [Disable] LIRC I2C needs update + * [Disable] CONFIG_LENOVO_SL_LAPTOP needs update + * [Config] disable I2C_DESIGNWARE does not compile + * [Config] disable CONFIG_TLSUP for lpia + * [Config] disable CONFIG_FB_UDL for arm + * SAUCE: disable adding scsi headers to linux-libc-dev + + [ Mario Limonciello ] + + * SAUCE: Add LIRC drivers + + -- Andy Whitcroft Thu, 25 Jun 2009 12:06:22 +0100 + +linux (2.6.30-10.12) karmic; urgency=low + + [ Andy Whitcroft ] + + * [Config] split out the ports configs into their own family + * [Config] update configs following introduction of ports family + + [ Upstream Kernel Changes ] + + * Revert "Rename linux-doc-PKGVER to linux-doc and clean up its + description". Fixes linux-doc package name conflicts for now. + - LP: #382115 + + -- Tim Gardner Mon, 22 Jun 2009 09:17:14 -0600 + +linux (2.6.30-10.11) karmic; urgency=low + + [ Amit Kucheria ] + + * [Config] Comment splitconfig.pl and misc cleanup + * [Config] Rename all configs to the new naming scheme + * [Config] Splitconfig rework + * [Config] Rename scripts/misc/oldconfig to kernelconfig + * [Config] Fix build system for new config split + * [Config] Run updateconfigs after the splitconfig rework + + [ Andy Whitcroft ] + + * Revert "SAUCE: Default to i915.modeset=0 if CONFIG_DRM_I915_KMS=y" + * [Config] standardise CONFIG_STAGING=y + * [Config] standardise CONFIG_RD_LZMA=y + * [Config] CONFIG_PCI_IOV=y + * [Config] CONFIG_PCI_STUB=m + * [Config] merge kernel configs more agressively + + [ Colin Watson ] + + * [Config] Run kernel-wedge in $(builddir) rather than at the top level + * [Config] Add support for including firmware in udebs + * [Config] Ship bnx2 firmware in nic-modules udeb + - LP: #384861 + + [ Luke Yelavich ] + + * [Config] ports - Import of ports architectures into kernel packaging + infrastructure + * [Config] ports - Do not update ports kernel configurations by default + * [Config] ports - Disable ABI checking for ports architectures + * [Config] ports - Build drivers in ubuntu sub-directory on powerpc + * [Config] ports - Add control.d/vars.* files for ports architectures + * [Config] ports - Add ports architectures for linux-libc-dev + * [Config] ports - Create powerpc specific message-modules and + block-modules udebs + * [Config] ports - Add configuration files for ports architectures + + [ Manoj Iyer ] + + * [Config] Enable CONFIG_BLK_DEV_AEC62XX=m for amd64 and i386 + - LP: #329864 + + [ Michael Casadevall ] + + * [Config] ports - Fix compression of kernels + + [ Stefan Bader ] + + * [Upstream] mmc: prevent dangling block device from accessing stale + queues + - LP: #383668 + + [ Tim Gardner ] + + * [Config] Recommend grub-pc in linux-image + - LP: #385741 + * [Config] Implement i386 generic and generic-pae flavours + * [Config] ports - Add control info after integrating ports arches + * [Config] Removed auto-generated files from git + * [Config] Added netxen_nic to nic-modules + - LP: #389603 + + [ Matt Zimmerman ] + + * Rename linux-doc-PKGVER to linux-doc and clean up its description + - LP: #382115 + + -- Tim Gardner Mon, 15 Jun 2009 14:38:26 -0600 + +linux (2.6.30-9.10) karmic; urgency=low + + [ Andy Whitcroft ] + + * [Config] CONFIG_SECURITY_TOMOYO=y (amd64, i386, lpia) + * [Config] CONFIG_KEXEC_JUMP=y (amd64, lpia) + * [Config] CONFIG_LENOVO_SL_LAPTOP=m (amd64, lpia) + * [Config] CONFIG_POHMELFS_CRYPTO=y (i386, amd64) + * [Config] CONFIG_SERIAL_MAX3100=m (i386, amd64, lpia) + * [Config] CONFIG_VIDEO_GO7007=m (amd64, i386) + + [ Upstream Kernel Changes ] + + * rebased to 2.6.30 final + + -- Andy Whitcroft Fri, 05 Jun 2009 11:42:53 +0100 + +linux (2.6.30-8.9) karmic; urgency=low + + [ Andy Whitcroft ] + + * Config update removed the following options: + CONFIG_EDAC_AMD8111=m + CONFIG_EDAC_AMD8131=m + + [ Upstream Kernel Changes ] + + * rebased to 2.6.30-rc8 + + -- Andy Whitcroft Wed, 03 Jun 2009 09:21:13 +0100 + +linux (2.6.30-7.8) karmic; urgency=low + + [ Andy Whitcroft ] + + * Enabled NEW configration options: + Paravirtualization layer for spinlocks (PARAVIRT_SPINLOCKS) [N/y/?] Y + Cisco FNIC Driver (FCOE_FNIC) [N/m/y/?] M + + [ Upstream Kernel Changes ] + + * rebased to 2.6.30-rc7 + + -- Andy Whitcroft Sat, 23 May 2009 23:47:24 +0100 + +linux (2.6.30-6.7) karmic; urgency=low + + [ Andy Whitcroft ] + + * Dropped: UBUNTU: SAUCE: input: Blacklist digitizers from joydev.c (now + upstream) + + [ Upstream Kernel Changes ] + + * rebased to 2.6.30-rc6 + + -- Andy Whitcroft Mon, 18 May 2009 18:05:54 +0100 + +linux (2.6.30-5.6) karmic; urgency=low + + [ Tim Gardner ] + + * [Config] Enable Keyspan USB serial device firmware in kernel module + - LP: #334285 + + [ Upstream Kernel Changes ] + + * rebased to 2.6.30-rc5 + + -- Tim Gardner Mon, 11 May 2009 12:02:16 -0600 + +linux (2.6.30-4.5) karmic; urgency=low + + [ Colin Watson ] + + * Build-Conflict with findutils (= 4.4.1-1ubuntu1), to avoid + /usr/include/asm/* going missing + - LP: #373214 + + -- Stefan Bader Fri, 08 May 2009 11:09:08 +0200 + +linux (2.6.30-3.4) karmic; urgency=low + + [ Kees Cook ] + + * SAUCE: [x86] implement cs-limit nx-emulation for ia32 + - LP: #369978 + + [ Stefan Bader ] + + * SAUCE: input: Blacklist digitizers from joydev.c + - LP: #300143 + + -- Tim Gardner Fri, 01 May 2009 14:00:42 -0600 + +linux (2.6.30-2.3) karmic; urgency=low + + [ Tim Gardner ] + + * [Config] Enabled CC_STACKPROTECTOR=y for all x86en + - LP: #369152 + * SAUCE: Default to i915_modeset=0 if CONFIG_DRM_I915_KMS=y + * [Config] CONFIG_DRM_I915_KMS=y + * [Config] Set CONFIG_SECURITY_DEFAULT_MMAP_MIN_ADDR to appropriate ARCH + minimums + + [ Upstream Kernel Changes ] + + * rebased to 2.6.30-rc4 + + -- Tim Gardner Thu, 30 Apr 2009 09:17:05 -0600 + +linux (2.6.30-1.2) karmic; urgency=low + + [ Tim Gardner ] + + * [Config] armel: disable staging drivers, fixes FTBS + * [Config] armel imx51: Disable CONFIG_MTD_NAND_MXC, fixes FTBS + + [ Upstream Kernel Changes ] + + * mpt2sas: Change reset_type enum to avoid namespace collision. + Submitted upstream. + + -- Tim Gardner Tue, 28 Apr 2009 16:54:41 -0600 + +linux (2.6.30-1.1) karmic; urgency=low + + * Initial release after rebasing against v2.6.30-rc3 + + -- Tim Gardner Thu, 12 Mar 2009 19:16:07 -0600 + --- linux-azure-5.8-5.8.0.orig/debian.azure/config/amd64/config.common.amd64 +++ linux-azure-5.8-5.8.0/debian.azure/config/amd64/config.common.amd64 @@ -0,0 +1,3 @@ +# +# Config options for config.common.amd64 automatically generated by splitconfig.pl +# --- linux-azure-5.8-5.8.0.orig/debian.azure/config/amd64/config.flavour.azure +++ linux-azure-5.8-5.8.0/debian.azure/config/amd64/config.flavour.azure @@ -0,0 +1,3 @@ +# +# Config options for config.flavour.azure automatically generated by splitconfig.pl +# --- linux-azure-5.8-5.8.0.orig/debian.azure/config/annotations +++ linux-azure-5.8-5.8.0/debian.azure/config/annotations @@ -0,0 +1,285 @@ +# Menu: HEADER +# FORMAT: 3 +# ARCH: x86 + +include "../../debian.master/config/annotations" + +CONFIG_FPGA_MGR_XILINX_SPI mark note +CONFIG_FPGA_MGR_XILINX_SPI policy<{'amd64': 'm'}> + +CONFIG_ANDROID policy<{'amd64': 'y'}> +CONFIG_ANDROID mark note + +CONFIG_ASHMEM policy<{'amd64': 'm'}> +CONFIG_ASHMEM mark note + +CONFIG_ANDROID_BINDER_IPC policy<{'amd64': 'm'}> +CONFIG_ANDROID_BINDER_IPC mark note + +CONFIG_MLX5_CORE policy<{'amd64': 'm'}> +CONFIG_MLX5_CORE mark note + +CONFIG_MLX4_CORE policy<{'amd64': 'm'}> +CONFIG_MLX4_CORE mark note + +CONFIG_MLX4_INFINIBAND policy<{'amd64': 'm'}> +CONFIG_MLX4_INFINIBAND mark note + +CONFIG_MLX5_INFINIBAND policy<{'amd64': 'm'}> +CONFIG_MLX5_INFINIBAND mark note + +CONFIG_INFINIBAND_USER_MAD policy<{'amd64': 'm'}> +CONFIG_INFINIBAND_USER_MAD mark note + +CONFIG_INFINIBAND_IPOIB policy<{'amd64': 'm'}> +CONFIG_INFINIBAND_IPOIB mark note + +CONFIG_BLK_DEV_NVME policy<{'amd64': 'y'}> +CONFIG_BLK_DEV_NVME mark note note + +CONFIG_PCI_HYPERV policy<{'amd64': 'y'}> +CONFIG_PCI_HYPERV mark note + +CONFIG_EDAC_DECODE_MCE policy<{'amd64': 'y'}> +CONFIG_EDAC_DECODE_MCE mark note + +CONFIG_EDAC_AMD64 policy<{'amd64': 'm'}> +CONFIG_EDAC_AMD64 mark note + +CONFIG_INFINIBAND_IPOIB_DEBUG policy<{'amd64': 'y'}> +CONFIG_INFINIBAND_IPOIB_DEBUG note note mark + +CONFIG_NO_HZ_FULL policy<{'amd64': 'y'}> +CONFIG_NO_HZ_FULL note mark note + +CONFIG_NO_HZ_IDLE policy<{'amd64': 'n'}> +CONFIG_NO_HZ_IDLE note mark note + +CONFIG_HOTPLUG_CPU policy<{'amd64': 'y'}> +CONFIG_HOTPLUG_CPU note mark + +CONFIG_CATAPULT_PCI policy<{'amd64': 'm'}> +CONFIG_CATAPULT_PCI mark note + +CONFIG_HYPERV policy<{'amd64': 'y'}> +CONFIG_HYPERV mark note + +CONFIG_HYPERV_STORAGE policy<{'amd64': 'y'}> +CONFIG_HYPERV_STORAGE mark note + +CONFIG_EFI_VARS policy<{'amd64': 'y'}> +CONFIG_EFI_VARS mark note + +CONFIG_HYPERV_VSOCKETS policy<{'amd64': 'm'}> +CONFIG_HYPERV_VSOCKETS mark note + +CONFIG_HYPERV_INFINIBAND_ND policy<{'amd64': 'm'}> +CONFIG_HYPERV_INFINIBAND_ND mark note + +CONFIG_DEV_DAX policy<{'amd64': 'y'}> +CONFIG_DEV_DAX mark note + +CONFIG_BLK_DEV_PMEM policy<{'amd64': 'y'}> +CONFIG_BLK_DEV_PMEM mark note + +CONFIG_OVERLAY_FS_REDIRECT_DIR policy<{'amd64': 'y'}> +CONFIG_OVERLAY_FS_REDIRECT_DIR mark note + +CONFIG_ND_BLK policy<{'amd64': 'y'}> +CONFIG_ND_BLK mark note + +CONFIG_ACPI_NFIT policy<{'amd64': 'y'}> +CONFIG_ACPI_NFIT mark note + +CONFIG_RTC_CLASS policy<{'amd64': 'y'}> +CONFIG_RTC_CLASS mark note + +CONFIG_I2C_PIIX4 policy<{'amd64': 'n'}> +CONFIG_I2C_PIIX4 mark note + +CONFIG_DRM_NOUVEAU policy<{'amd64': 'n'}> +CONFIG_DRM_NOUVEAU mark note + +CONFIG_BLK_DEV_DRBD policy<{'amd64': 'm'}> +CONFIG_BLK_DEV_DRBD mark note + +CONFIG_VBOXGUEST policy<{'amd64': 'n'}> +CONFIG_VBOXGUEST mark note + +CONFIG_XEN_ACPI_PROCESSOR policy<{'amd64': '-'}> +CONFIG_XEN_ACPI_PROCESSOR mark note + +CONFIG_USB_XHCI_HCD policy<{'amd64': 'y'}> +CONFIG_USB_XHCI_HCD mark note note + +CONFIG_USB_XHCI_PCI policy<{'amd64': 'y'}> +CONFIG_USB_XHCI_PCI mark note note + +CONFIG_USB_XHCI_PLATFORM policy<{'amd64': 'm'}> +CONFIG_USB_XHCI_PLATFORM mark note note + +CONFIG_CONTEXT_TRACKING_FORCE policy<{'amd64': 'n'}> +CONFIG_CONTEXT_TRACKING_FORCE flag note + +CONFIG_ATARI_PARTITION policy<{'amd64': 'n'}> +CONFIG_ATARI_PARTITION mark note + +# From linux-azure initial packaging + +CONFIG_POWERCAP policy<{'amd64': 'n'}> +CONFIG_POWERCAP mark note + +CONFIG_CHROME_PLATFORMS policy<{'amd64': 'n'}> +CONFIG_CHROME_PLATFORMS mark note + +CONFIG_USB_UHCI_HCD policy<{'amd64': 'n'}> +CONFIG_USB_UHCI_HCD mark note + +CONFIG_USB_EHCI_HCD policy<{'amd64': 'n'}> +CONFIG_USB_EHCI_HCD mark note + +CONFIG_USB_EHCI_HCD_PLATFORM policy<{'amd64': '-'}> +CONFIG_USB_EHCI_HCD_PLATFORM mark note + +CONFIG_TOUCHSCREEN_ELAN policy<{'amd64': '-'}> +CONFIG_TOUCHSCREEN_ELAN mark note + +CONFIG_SOUND policy<{'amd64': 'n'}> +CONFIG_SOUND mark note + +CONFIG_FUJITSU_ES policy<{'amd64': 'n'}> +CONFIG_FUJITSU_ES mark note + +CONFIG_INPUT_LEDS policy<{'amd64': 'n'}> +CONFIG_INPUT_LEDS mark note + +CONFIG_SATA_ACARD_AHCI policy<{'amd64': 'n'}> +CONFIG_SATA_ACARD_AHCI mark note + +CONFIG_SATA_INIC162X policy<{'amd64': 'n'}> +CONFIG_SATA_INIC162X mark note + +CONFIG_SATA_MV policy<{'amd64': 'n'}> +CONFIG_SATA_MV mark note + +CONFIG_SATA_NV policy<{'amd64': 'n'}> +CONFIG_SATA_NV mark note + +CONFIG_SATA_PROMISE policy<{'amd64': 'n'}> +CONFIG_SATA_PROMISE mark note + +CONFIG_SATA_QSTOR policy<{'amd64': 'n'}> +CONFIG_SATA_QSTOR mark note + +CONFIG_SATA_SIL policy<{'amd64': 'n'}> +CONFIG_SATA_SIL mark note + +CONFIG_SATA_SIL24 policy<{'amd64': 'n'}> +CONFIG_SATA_SIL24 mark note + +CONFIG_SATA_SIS policy<{'amd64': 'n'}> +CONFIG_SATA_SIS mark note + +CONFIG_SATA_SVW policy<{'amd64': 'n'}> +CONFIG_SATA_SVW mark note + +CONFIG_SATA_SX4 policy<{'amd64': 'n'}> +CONFIG_SATA_SX4 mark note + +CONFIG_SATA_ULI policy<{'amd64': 'n'}> +CONFIG_SATA_ULI mark note + +CONFIG_SATA_VIA policy<{'amd64': 'n'}> +CONFIG_SATA_VIA mark note + +CONFIG_SATA_VITESSE policy<{'amd64': 'n'}> +CONFIG_SATA_VITESSE mark note + +CONFIG_SATA_ZPODD policy<{'amd64': 'n'}> +CONFIG_SATA_ZPODD mark note + +CONFIG_HYPERV_IOMMU policy<{'amd64': 'y'}> +CONFIG_HYPERV_IOMMU mark note + +CONFIG_LOOPBACK_TARGET policy<{'amd64': 'm'}> +CONFIG_LOOPBACK_TARGET mark note + +# Changes made to the generic kernel that are not necessary in the Azure kernel + +CONFIG_REGULATOR_TWL4030 policy<{'amd64': '-'}> +CONFIG_REGULATOR_TWL4030 note + +CONFIG_GPIO_TWL4030 policy<{'amd64': '-'}> +CONFIG_GPIO_TWL4030 note + +CONFIG_SOUND_OSS_CORE_PRECLAIM policy<{'amd64': '-'}> +CONFIG_SOUND_OSS_CORE_PRECLAIM note + +CONFIG_SND_SOC_SOF_HDA_AUDIO_CODEC policy<{'amd64': '-'}> +CONFIG_SND_SOC_SOF_HDA_AUDIO_CODEC note + +CONFIG_SND_SOC_SOF_HDA_LINK policy<{'amd64': '-'}> +CONFIG_SND_SOC_SOF_HDA_LINK note + +CONFIG_SND_SOC_SOF_NOCODEC_SUPPORT policy<{'amd64': '-'}> +CONFIG_SND_SOC_SOF_NOCODEC_SUPPORT note + +CONFIG_NETWORK_PHY_TIMESTAMPING policy<{'amd64': 'n'}> +CONFIG_NETWORK_PHY_TIMESTAMPING note + +CONFIG_SND_SOC_INTEL_CML_H policy<{'amd64': '-'}> +CONFIG_SND_SOC_INTEL_CML_H note + +CONFIG_SND_SOC_SOF_HDA_COMMON_HDMI_CODEC policy<{'amd64': '-'}> +CONFIG_SND_SOC_SOF_HDA_COMMON_HDMI_CODEC note + +CONFIG_SND_SOC_INTEL_CML_LP policy<{'amd64': '-'}> +CONFIG_SND_SOC_INTEL_CML_LP note + +CONFIG_SND_SOC_INTEL_CFL policy<{'amd64': '-'}> +CONFIG_SND_SOC_INTEL_CFL note + +CONFIG_LATENCYTOP policy<{'amd64': '-'}> +CONFIG_LATENCYTOP note + +CONFIG_USB_OHCI_HCD policy<{'amd64': '-'}> +CONFIG_USB_OHCI_HCD note + +CONFIG_SND_SOC_INTEL_SKYLAKE policy<{'amd64': '-'}> +CONFIG_SND_SOC_INTEL_SKYLAKE note + +CONFIG_SND_SOC_INTEL_SKYLAKE_HDAUDIO_CODEC policy<{'amd64': '-'}> +CONFIG_SND_SOC_INTEL_SKYLAKE_HDAUDIO_CODEC note + +CONFIG_SND_SOC_INTEL_CNL policy<{'amd64': '-'}> +CONFIG_SND_SOC_INTEL_CNL note + +CONFIG_X86_UV policy<{'amd64': 'n'}> +CONFIG_X86_UV note + +CONFIG_SND_SOC_AMD_RENOIR policy<{'amd64': '-'}> +CONFIG_SND_SOC_AMD_RENOIR note + +CONFIG_SND_SOC_AMD_RENOIR_MACH policy<{'amd64': '-'}> +CONFIG_SND_SOC_AMD_RENOIR_MACH note + +CONFIG_BT_HS policy<{'amd64': '-'}> +CONFIG_BT_HS mark note + +CONFIG_DRM_BOCHS policy<{'amd64': 'n'}> +CONFIG_DRM_BOCHS note + +CONFIG_SND_SOC_SOF_HDA_ALWAYS_ENABLE_DMI_L1 policy<{'amd64': '-'}> +CONFIG_SND_SOC_SOF_HDA_ALWAYS_ENABLE_DMI_L1 mark note note + +CONFIG_SPI_INTEL_SPI_PCI policy<{'amd64': '-'}> +CONFIG_SPI_INTEL_SPI_PCI mark note note + +CONFIG_SPI_INTEL_SPI_PLATFORM policy<{'amd64': '-'}> +CONFIG_SPI_INTEL_SPI_PLATFORM mark note note + +CONFIG_MTD_DOCG3 policy<{'amd64': '-'}> +CONFIG_MTD_DOCG3 mark note + +CONFIG_SAMPLE_TRACE_PRINTK policy<{'amd64': '-'}> +CONFIG_SAMPLE_TRACE_PRINTK mark note --- linux-azure-5.8-5.8.0.orig/debian.azure/config/config.common.ports +++ linux-azure-5.8-5.8.0/debian.azure/config/config.common.ports @@ -0,0 +1,3 @@ +# +# Common config options automatically generated by splitconfig.pl +# --- linux-azure-5.8-5.8.0.orig/debian.azure/config/config.common.ubuntu +++ linux-azure-5.8-5.8.0/debian.azure/config/config.common.ubuntu @@ -0,0 +1,5695 @@ +# +# Common config options automatically generated by splitconfig.pl +# +CONFIG_60XX_WDT=m +CONFIG_64BIT=y +CONFIG_6LOWPAN=m +# CONFIG_6LOWPAN_DEBUGFS is not set +# CONFIG_6LOWPAN_GHC_EXT_HDR_DEST is not set +# CONFIG_6LOWPAN_GHC_EXT_HDR_FRAG is not set +# CONFIG_6LOWPAN_GHC_EXT_HDR_HOP is not set +# CONFIG_6LOWPAN_GHC_EXT_HDR_ROUTE is not set +# CONFIG_6LOWPAN_GHC_ICMPV6 is not set +# CONFIG_6LOWPAN_GHC_UDP is not set +CONFIG_6LOWPAN_NHC=m +CONFIG_6LOWPAN_NHC_DEST=m +CONFIG_6LOWPAN_NHC_FRAGMENT=m +CONFIG_6LOWPAN_NHC_HOP=m +CONFIG_6LOWPAN_NHC_IPV6=m +CONFIG_6LOWPAN_NHC_MOBILITY=m +CONFIG_6LOWPAN_NHC_ROUTING=m +CONFIG_6LOWPAN_NHC_UDP=m +# CONFIG_6PACK is not set +CONFIG_8139CP=m +CONFIG_8139TOO=m +CONFIG_8139TOO_8129=y +CONFIG_8139TOO_PIO=y +# CONFIG_8139TOO_TUNE_TWISTER is not set +# CONFIG_8139_OLD_RX_RESET is not set +CONFIG_842_COMPRESS=m +CONFIG_842_DECOMPRESS=m +CONFIG_9P_FS=m +CONFIG_9P_FSCACHE=y +CONFIG_9P_FS_POSIX_ACL=y +CONFIG_9P_FS_SECURITY=y +# CONFIG_ABX500_CORE is not set +# CONFIG_ACCESSIBILITY is not set +# CONFIG_ACERHDF is not set +CONFIG_ACER_WIRELESS=m +# CONFIG_ACER_WMI is not set +# CONFIG_ACORN_PARTITION is not set +CONFIG_ACPI=y +# CONFIG_ACPI_AC is not set +CONFIG_ACPI_ADXL=y +CONFIG_ACPI_APEI=y +# CONFIG_ACPI_APEI_EINJ is not set +# CONFIG_ACPI_APEI_ERST_DEBUG is not set +# CONFIG_ACPI_APEI_GHES is not set +CONFIG_ACPI_APEI_MEMORY_FAILURE=y +CONFIG_ACPI_APEI_PCIEAER=y +# CONFIG_ACPI_BATTERY is not set +# CONFIG_ACPI_BGRT is not set +CONFIG_ACPI_BUTTON=y +# CONFIG_ACPI_CMPC is not set +# CONFIG_ACPI_CONFIGFS is not set +CONFIG_ACPI_CONTAINER=y +CONFIG_ACPI_CPPC_LIB=y +CONFIG_ACPI_CPU_FREQ_PSS=y +CONFIG_ACPI_CUSTOM_DSDT_FILE="" +# CONFIG_ACPI_CUSTOM_METHOD is not set +# CONFIG_ACPI_DEBUG is not set +# CONFIG_ACPI_DEBUGGER is not set +# CONFIG_ACPI_DOCK is not set +CONFIG_ACPI_EC_DEBUGFS=m +# CONFIG_ACPI_EXTLOG is not set +# CONFIG_ACPI_FAN is not set +CONFIG_ACPI_HED=y +CONFIG_ACPI_HMAT=y +CONFIG_ACPI_HOTPLUG_CPU=y +CONFIG_ACPI_HOTPLUG_IOAPIC=y +# CONFIG_ACPI_HOTPLUG_MEMORY is not set +CONFIG_ACPI_IPMI=m +CONFIG_ACPI_LEGACY_TABLES_LOOKUP=y +CONFIG_ACPI_LPIT=y +CONFIG_ACPI_NFIT=y +CONFIG_ACPI_NUMA=y +# CONFIG_ACPI_PCI_SLOT is not set +CONFIG_ACPI_PROCESSOR=y +CONFIG_ACPI_PROCESSOR_AGGREGATOR=m +CONFIG_ACPI_PROCESSOR_CSTATE=y +CONFIG_ACPI_PROCESSOR_IDLE=y +# CONFIG_ACPI_PROCFS_POWER is not set +# CONFIG_ACPI_REDUCED_HARDWARE_ONLY is not set +# CONFIG_ACPI_REV_OVERRIDE_POSSIBLE is not set +# CONFIG_ACPI_SBS is not set +CONFIG_ACPI_SLEEP=y +CONFIG_ACPI_SPCR_TABLE=y +CONFIG_ACPI_SYSTEM_POWER_STATES_SUPPORT=y +# CONFIG_ACPI_TABLE_UPGRADE is not set +# CONFIG_ACPI_TAD is not set +# CONFIG_ACPI_THERMAL is not set +CONFIG_ACPI_VIDEO=m +CONFIG_ACPI_WATCHDOG=y +CONFIG_ACPI_WMI=m +CONFIG_ACQUIRE_WDT=m +CONFIG_ACRN_GUEST=y +# CONFIG_AD525X_DPOT is not set +CONFIG_ADFS_FS=m +# CONFIG_ADFS_FS_RW is not set +CONFIG_ADIN_PHY=m +CONFIG_ADVANTECH_WDT=m +CONFIG_ADVISE_SYSCALLS=y +CONFIG_AFFS_FS=m +# CONFIG_AFS_DEBUG is not set +# CONFIG_AFS_DEBUG_CURSOR is not set +CONFIG_AFS_FS=m +CONFIG_AFS_FSCACHE=y +CONFIG_AF_KCM=m +CONFIG_AF_RXRPC=m +# CONFIG_AF_RXRPC_DEBUG is not set +# CONFIG_AF_RXRPC_INJECT_LOSS is not set +CONFIG_AF_RXRPC_IPV6=y +CONFIG_AGP=y +CONFIG_AGP_AMD64=y +CONFIG_AGP_INTEL=y +CONFIG_AGP_SIS=m +CONFIG_AGP_VIA=y +CONFIG_AIC79XX_CMDS_PER_DEVICE=32 +# CONFIG_AIC79XX_DEBUG_ENABLE is not set +CONFIG_AIC79XX_DEBUG_MASK=0 +CONFIG_AIC79XX_REG_PRETTY_PRINT=y +CONFIG_AIC79XX_RESET_DELAY_MS=5000 +CONFIG_AIC7XXX_CMDS_PER_DEVICE=8 +# CONFIG_AIC7XXX_DEBUG_ENABLE is not set +CONFIG_AIC7XXX_DEBUG_MASK=0 +CONFIG_AIC7XXX_REG_PRETTY_PRINT=y +CONFIG_AIC7XXX_RESET_DELAY_MS=5000 +# CONFIG_AIC94XX_DEBUG is not set +CONFIG_AIO=y +CONFIG_AIX_PARTITION=y +# CONFIG_ALIENWARE_WMI is not set +CONFIG_ALIM1535_WDT=m +CONFIG_ALIM7101_WDT=m +CONFIG_ALLOW_DEV_COREDUMP=y +# CONFIG_ALTERA_MBOX is not set +CONFIG_ALTERA_MSGDMA=m +# CONFIG_ALTERA_PR_IP_CORE is not set +# CONFIG_ALTERA_STAPL is not set +# CONFIG_ALTERA_TSE is not set +CONFIG_AMDTEE=m +CONFIG_AMD_IOMMU=y +CONFIG_AMD_IOMMU_V2=m +CONFIG_AMD_MEM_ENCRYPT=y +# CONFIG_AMD_MEM_ENCRYPT_ACTIVE_BY_DEFAULT is not set +CONFIG_AMD_NB=y +CONFIG_AMD_NUMA=y +# CONFIG_AMD_PHY is not set +CONFIG_AMIGA_PARTITION=y +# CONFIG_AMILO_RFKILL is not set +CONFIG_ANDROID=y +# CONFIG_ANDROID_BINDERFS is not set +CONFIG_ANDROID_BINDER_DEVICES="binder,hwbinder,vndbinder" +CONFIG_ANDROID_BINDER_IPC=m +# CONFIG_ANDROID_BINDER_IPC_SELFTEST is not set +CONFIG_APDS9802ALS=m +# CONFIG_APPLE_GMUX is not set +CONFIG_APPLE_MFI_FASTCHARGE=m +CONFIG_APPLE_PROPERTIES=y +CONFIG_APPLICOM=m +CONFIG_AQTION=m +# CONFIG_AQUANTIA_PHY is not set +CONFIG_ARCH_CLOCKSOURCE_INIT=y +CONFIG_ARCH_CPUIDLE_HALTPOLL=y +CONFIG_ARCH_DMA_ADDR_T_64BIT=y +CONFIG_ARCH_ENABLE_HUGEPAGE_MIGRATION=y +CONFIG_ARCH_ENABLE_MEMORY_HOTPLUG=y +CONFIG_ARCH_ENABLE_MEMORY_HOTREMOVE=y +CONFIG_ARCH_ENABLE_SPLIT_PMD_PTLOCK=y +CONFIG_ARCH_ENABLE_THP_MIGRATION=y +CONFIG_ARCH_HAS_ACPI_TABLE_UPGRADE=y +CONFIG_ARCH_HAS_ADD_PAGES=y +CONFIG_ARCH_HAS_CACHE_LINE_SIZE=y +CONFIG_ARCH_HAS_COPY_MC=y +CONFIG_ARCH_HAS_CPU_RELAX=y +CONFIG_ARCH_HAS_DEBUG_VIRTUAL=y +CONFIG_ARCH_HAS_DEBUG_VM_PGTABLE=y +CONFIG_ARCH_HAS_DEBUG_WX=y +CONFIG_ARCH_HAS_DEVMEM_IS_ALLOWED=y +CONFIG_ARCH_HAS_EARLY_DEBUG=y +CONFIG_ARCH_HAS_ELF_RANDOMIZE=y +CONFIG_ARCH_HAS_FAST_MULTIPLIER=y +CONFIG_ARCH_HAS_FILTER_PGPROT=y +CONFIG_ARCH_HAS_FORCE_DMA_UNENCRYPTED=y +CONFIG_ARCH_HAS_FORTIFY_SOURCE=y +CONFIG_ARCH_HAS_GCOV_PROFILE_ALL=y +CONFIG_ARCH_HAS_GIGANTIC_PAGE=y +CONFIG_ARCH_HAS_KCOV=y +CONFIG_ARCH_HAS_KEXEC_PURGATORY=y +CONFIG_ARCH_HAS_MEMBARRIER_SYNC_CORE=y +CONFIG_ARCH_HAS_MEM_ENCRYPT=y +CONFIG_ARCH_HAS_NON_OVERLAPPING_ADDRESS_SPACE=y +CONFIG_ARCH_HAS_PKEYS=y +CONFIG_ARCH_HAS_PMEM_API=y +CONFIG_ARCH_HAS_PTE_DEVMAP=y +CONFIG_ARCH_HAS_PTE_SPECIAL=y +CONFIG_ARCH_HAS_SET_DIRECT_MAP=y +CONFIG_ARCH_HAS_SET_MEMORY=y +CONFIG_ARCH_HAS_STRICT_KERNEL_RWX=y +CONFIG_ARCH_HAS_STRICT_MODULE_RWX=y +CONFIG_ARCH_HAS_SYNC_CORE_BEFORE_USERMODE=y +CONFIG_ARCH_HAS_SYSCALL_WRAPPER=y +CONFIG_ARCH_HAS_UACCESS_FLUSHCACHE=y +CONFIG_ARCH_HAS_UBSAN_SANITIZE_ALL=y +CONFIG_ARCH_HAVE_NMI_SAFE_CMPXCHG=y +CONFIG_ARCH_HIBERNATION_HEADER=y +CONFIG_ARCH_HIBERNATION_POSSIBLE=y +CONFIG_ARCH_MAY_HAVE_PC_FDC=y +CONFIG_ARCH_MEMORY_PROBE=y +CONFIG_ARCH_MIGHT_HAVE_ACPI_PDC=y +CONFIG_ARCH_MIGHT_HAVE_PC_PARPORT=y +CONFIG_ARCH_MIGHT_HAVE_PC_SERIO=y +CONFIG_ARCH_MMAP_RND_BITS=28 +CONFIG_ARCH_MMAP_RND_BITS_MAX=32 +CONFIG_ARCH_MMAP_RND_BITS_MIN=28 +CONFIG_ARCH_MMAP_RND_COMPAT_BITS=8 +CONFIG_ARCH_MMAP_RND_COMPAT_BITS_MAX=16 +CONFIG_ARCH_MMAP_RND_COMPAT_BITS_MIN=8 +CONFIG_ARCH_PROC_KCORE_TEXT=y +CONFIG_ARCH_RANDOM=y +CONFIG_ARCH_SELECT_MEMORY_MODEL=y +CONFIG_ARCH_SPARSEMEM_DEFAULT=y +CONFIG_ARCH_SPARSEMEM_ENABLE=y +CONFIG_ARCH_STACKWALK=y +CONFIG_ARCH_SUPPORTS_ACPI=y +CONFIG_ARCH_SUPPORTS_ATOMIC_RMW=y +CONFIG_ARCH_SUPPORTS_DEBUG_PAGEALLOC=y +CONFIG_ARCH_SUPPORTS_INT128=y +CONFIG_ARCH_SUPPORTS_MEMORY_FAILURE=y +CONFIG_ARCH_SUPPORTS_NUMA_BALANCING=y +CONFIG_ARCH_SUPPORTS_UPROBES=y +CONFIG_ARCH_SUSPEND_POSSIBLE=y +CONFIG_ARCH_USES_HIGH_VMA_FLAGS=y +CONFIG_ARCH_USES_PG_UNCACHED=y +CONFIG_ARCH_USE_BUILTIN_BSWAP=y +CONFIG_ARCH_USE_CMPXCHG_LOCKREF=y +CONFIG_ARCH_USE_MEMREMAP_PROT=y +CONFIG_ARCH_USE_QUEUED_RWLOCKS=y +CONFIG_ARCH_USE_QUEUED_SPINLOCKS=y +CONFIG_ARCH_USE_SYM_ANNOTATIONS=y +CONFIG_ARCH_WANTS_DYNAMIC_TASK_STRUCT=y +CONFIG_ARCH_WANTS_THP_SWAP=y +CONFIG_ARCH_WANT_BATCHED_UNMAP_TLB_FLUSH=y +CONFIG_ARCH_WANT_COMPAT_IPC_PARSE_VERSION=y +CONFIG_ARCH_WANT_DEFAULT_BPF_JIT=y +CONFIG_ARCH_WANT_GENERAL_HUGETLB=y +CONFIG_ARCH_WANT_HUGE_PMD_SHARE=y +CONFIG_ARCH_WANT_OLD_COMPAT_IPC=y +CONFIG_ARCNET=m +CONFIG_ARCNET_1051=m +CONFIG_ARCNET_1201=m +CONFIG_ARCNET_CAP=m +CONFIG_ARCNET_COM20020=m +CONFIG_ARCNET_COM20020_PCI=m +CONFIG_ARCNET_COM90xx=m +CONFIG_ARCNET_COM90xxIO=m +CONFIG_ARCNET_RAW=m +CONFIG_ARCNET_RIM_I=m +CONFIG_ASHMEM=m +CONFIG_ASM_MODVERSIONS=y +CONFIG_ASN1=y +CONFIG_ASSOCIATIVE_ARRAY=y +# CONFIG_ASUS_LAPTOP is not set +CONFIG_ASUS_WIRELESS=m +CONFIG_ASYMMETRIC_KEY_TYPE=y +CONFIG_ASYMMETRIC_PUBLIC_KEY_SUBTYPE=y +CONFIG_ASYMMETRIC_TPM_KEY_SUBTYPE=m +CONFIG_ASYNC_CORE=m +CONFIG_ASYNC_MEMCPY=m +CONFIG_ASYNC_PQ=m +CONFIG_ASYNC_RAID6_RECOV=m +CONFIG_ASYNC_TX_DMA=y +CONFIG_ASYNC_XOR=m +CONFIG_AS_AVX512=y +CONFIG_AS_SHA1_NI=y +CONFIG_AS_SHA256_NI=y +CONFIG_AS_TPAUSE=y +# CONFIG_AT803X_PHY is not set +CONFIG_ATA=y +CONFIG_ATALK=m +# CONFIG_ATARI_PARTITION is not set +CONFIG_ATA_ACPI=y +CONFIG_ATA_BMDMA=y +CONFIG_ATA_FORCE=y +CONFIG_ATA_GENERIC=y +# CONFIG_ATA_OVER_ETH is not set +CONFIG_ATA_PIIX=y +CONFIG_ATA_SFF=y +CONFIG_ATA_VERBOSE_ERROR=y +CONFIG_ATM=m +CONFIG_ATM_AMBASSADOR=m +# CONFIG_ATM_AMBASSADOR_DEBUG is not set +CONFIG_ATM_BR2684=m +# CONFIG_ATM_BR2684_IPFILTER is not set +CONFIG_ATM_CLIP=m +# CONFIG_ATM_CLIP_NO_ICMP is not set +CONFIG_ATM_DRIVERS=y +CONFIG_ATM_DUMMY=m +CONFIG_ATM_ENI=m +# CONFIG_ATM_ENI_DEBUG is not set +# CONFIG_ATM_ENI_TUNE_BURST is not set +CONFIG_ATM_FIRESTREAM=m +CONFIG_ATM_FORE200E=m +CONFIG_ATM_FORE200E_DEBUG=0 +CONFIG_ATM_FORE200E_TX_RETRY=16 +# CONFIG_ATM_FORE200E_USE_TASKLET is not set +CONFIG_ATM_HE=m +CONFIG_ATM_HE_USE_SUNI=y +CONFIG_ATM_HORIZON=m +# CONFIG_ATM_HORIZON_DEBUG is not set +CONFIG_ATM_IA=m +# CONFIG_ATM_IA_DEBUG is not set +CONFIG_ATM_IDT77252=m +# CONFIG_ATM_IDT77252_DEBUG is not set +# CONFIG_ATM_IDT77252_RCV_ALL is not set +CONFIG_ATM_IDT77252_USE_SUNI=y +CONFIG_ATM_LANAI=m +CONFIG_ATM_LANE=m +CONFIG_ATM_MPOA=m +CONFIG_ATM_NICSTAR=m +# CONFIG_ATM_NICSTAR_USE_IDT77105 is not set +# CONFIG_ATM_NICSTAR_USE_SUNI is not set +CONFIG_ATM_SOLOS=m +CONFIG_ATM_TCP=m +CONFIG_ATM_ZATM=m +# CONFIG_ATM_ZATM_DEBUG is not set +CONFIG_ATP=m +CONFIG_AUDIT=y +CONFIG_AUDITSYSCALL=y +CONFIG_AUDIT_ARCH=y +CONFIG_AUFS_BDEV_LOOP=y +# CONFIG_AUFS_BRANCH_MAX_1023 is not set +CONFIG_AUFS_BRANCH_MAX_127=y +# CONFIG_AUFS_BRANCH_MAX_32767 is not set +# CONFIG_AUFS_BRANCH_MAX_511 is not set +# CONFIG_AUFS_BR_FUSE is not set +CONFIG_AUFS_BR_HFSPLUS=y +# CONFIG_AUFS_BR_RAMFS is not set +# CONFIG_AUFS_DEBUG is not set +CONFIG_AUFS_DIRREN=y +CONFIG_AUFS_EXPORT=y +# CONFIG_AUFS_FHSM is not set +CONFIG_AUFS_FS=m +# CONFIG_AUFS_HNOTIFY is not set +CONFIG_AUFS_INO_T_64=y +# CONFIG_AUFS_RDU is not set +CONFIG_AUFS_SBILIST=y +# CONFIG_AUFS_SHWH is not set +CONFIG_AUFS_XATTR=y +CONFIG_AUTOFS4_FS=m +CONFIG_AUTOFS_FS=m +CONFIG_AUXDISPLAY=y +CONFIG_AX25=m +CONFIG_AX25_DAMA_SLAVE=y +CONFIG_AX88796B_PHY=m +CONFIG_B44=m +CONFIG_B44_PCI=y +CONFIG_B44_PCICORE_AUTOSELECT=y +CONFIG_B44_PCI_AUTOSELECT=y +CONFIG_B53=m +CONFIG_B53_MDIO_DRIVER=m +CONFIG_B53_MMAP_DRIVER=m +CONFIG_B53_SERDES=m +CONFIG_B53_SPI_DRIVER=m +CONFIG_B53_SRAB_DRIVER=m +# CONFIG_BACKLIGHT_ADP8860 is not set +# CONFIG_BACKLIGHT_ADP8870 is not set +# CONFIG_BACKLIGHT_APPLE is not set +CONFIG_BACKLIGHT_ARCXCNN=m +# CONFIG_BACKLIGHT_BD6107 is not set +CONFIG_BACKLIGHT_CLASS_DEVICE=y +# CONFIG_BACKLIGHT_DA9052 is not set +# CONFIG_BACKLIGHT_GENERIC is not set +# CONFIG_BACKLIGHT_GPIO is not set +# CONFIG_BACKLIGHT_LM3639 is not set +# CONFIG_BACKLIGHT_LV5207LP is not set +# CONFIG_BACKLIGHT_PCF50633 is not set +CONFIG_BACKLIGHT_QCOM_WLED=m +# CONFIG_BACKLIGHT_SAHARA is not set +# CONFIG_BACKLIGHT_SKY81452 is not set +# CONFIG_BACKLIGHT_WM831X is not set +CONFIG_BALLOON_COMPACTION=y +CONFIG_BAREUDP=m +CONFIG_BASE_FULL=y +CONFIG_BASE_SMALL=0 +CONFIG_BATMAN_ADV=m +# CONFIG_BATMAN_ADV_BATMAN_V is not set +CONFIG_BATMAN_ADV_BLA=y +CONFIG_BATMAN_ADV_DAT=y +# CONFIG_BATMAN_ADV_DEBUG is not set +# CONFIG_BATMAN_ADV_DEBUGFS is not set +CONFIG_BATMAN_ADV_MCAST=y +CONFIG_BATMAN_ADV_NC=y +CONFIG_BATMAN_ADV_SYSFS=y +# CONFIG_BATMAN_ADV_TRACING is not set +# CONFIG_BATTERY_BQ27XXX is not set +CONFIG_BATTERY_CW2015=m +# CONFIG_BATTERY_DA9052 is not set +# CONFIG_BATTERY_DS2780 is not set +# CONFIG_BATTERY_DS2781 is not set +# CONFIG_BATTERY_DS2782 is not set +# CONFIG_BATTERY_GAUGE_LTC2941 is not set +# CONFIG_BATTERY_MAX17040 is not set +# CONFIG_BATTERY_MAX17042 is not set +# CONFIG_BATTERY_RT5033 is not set +# CONFIG_BATTERY_SBS is not set +# CONFIG_BAYCOM_PAR is not set +# CONFIG_BAYCOM_SER_FDX is not set +# CONFIG_BAYCOM_SER_HDX is not set +CONFIG_BCACHE=m +CONFIG_BCACHE_ASYNC_REGISTRAION=y +# CONFIG_BCACHE_CLOSURES_DEBUG is not set +# CONFIG_BCACHE_DEBUG is not set +CONFIG_BCM54140_PHY=m +CONFIG_BCM7XXX_PHY=m +CONFIG_BCM84881_PHY=y +# CONFIG_BCM87XX_PHY is not set +CONFIG_BCMA=m +# CONFIG_BCMA_DEBUG is not set +CONFIG_BCMA_DRIVER_GMAC_CMN=y +CONFIG_BCMA_DRIVER_GPIO=y +CONFIG_BCMA_DRIVER_PCI=y +CONFIG_BCMA_HOST_PCI=y +CONFIG_BCMA_HOST_PCI_POSSIBLE=y +CONFIG_BCMA_HOST_SOC=y +CONFIG_BCMA_POSSIBLE=y +CONFIG_BCMA_SFLASH=y +CONFIG_BCMGENET=m +# CONFIG_BCM_KONA_USB2_PHY is not set +CONFIG_BCM_NET_PHYLIB=m +CONFIG_BE2ISCSI=m +CONFIG_BE2NET=m +CONFIG_BE2NET_BE2=y +CONFIG_BE2NET_BE3=y +CONFIG_BE2NET_HWMON=y +CONFIG_BE2NET_LANCER=y +CONFIG_BE2NET_SKYHAWK=y +# CONFIG_BEFS_DEBUG is not set +CONFIG_BEFS_FS=m +# CONFIG_BFQ_CGROUP_DEBUG is not set +CONFIG_BFQ_GROUP_IOSCHED=y +CONFIG_BFS_FS=m +CONFIG_BINARY_PRINTF=y +CONFIG_BINFMT_ELF=y +CONFIG_BINFMT_MISC=m +CONFIG_BINFMT_SCRIPT=y +CONFIG_BITREVERSE=y +CONFIG_BLK_CGROUP=y +CONFIG_BLK_CGROUP_IOCOST=y +# CONFIG_BLK_CGROUP_IOLATENCY is not set +CONFIG_BLK_CGROUP_RWSTAT=y +CONFIG_BLK_CMDLINE_PARSER=y +CONFIG_BLK_DEBUG_FS=y +CONFIG_BLK_DEBUG_FS_ZONED=y +CONFIG_BLK_DEV=y +# CONFIG_BLK_DEV_3W_XXXX_RAID is not set +CONFIG_BLK_DEV_BSG=y +CONFIG_BLK_DEV_BSGLIB=y +CONFIG_BLK_DEV_CRYPTOLOOP=m +CONFIG_BLK_DEV_DM=y +CONFIG_BLK_DEV_DM_BUILTIN=y +CONFIG_BLK_DEV_DRBD=m +# CONFIG_BLK_DEV_FD is not set +CONFIG_BLK_DEV_INITRD=y +CONFIG_BLK_DEV_INTEGRITY=y +CONFIG_BLK_DEV_INTEGRITY_T10=y +CONFIG_BLK_DEV_IO_TRACE=y +CONFIG_BLK_DEV_LOOP=y +CONFIG_BLK_DEV_LOOP_MIN_COUNT=8 +CONFIG_BLK_DEV_MD=y +CONFIG_BLK_DEV_NBD=m +# CONFIG_BLK_DEV_NULL_BLK is not set +CONFIG_BLK_DEV_NVME=y +# CONFIG_BLK_DEV_PCIESSD_MTIP32XX is not set +CONFIG_BLK_DEV_PMEM=y +CONFIG_BLK_DEV_RAM=m +CONFIG_BLK_DEV_RAM_COUNT=16 +CONFIG_BLK_DEV_RAM_SIZE=65536 +CONFIG_BLK_DEV_RBD=m +CONFIG_BLK_DEV_RNBD=y +CONFIG_BLK_DEV_RNBD_CLIENT=m +CONFIG_BLK_DEV_RNBD_SERVER=m +# CONFIG_BLK_DEV_RSXX is not set +CONFIG_BLK_DEV_SD=y +# CONFIG_BLK_DEV_SKD is not set +CONFIG_BLK_DEV_SR=y +# CONFIG_BLK_DEV_SX8 is not set +CONFIG_BLK_DEV_THROTTLING=y +# CONFIG_BLK_DEV_THROTTLING_LOW is not set +# CONFIG_BLK_DEV_UMEM is not set +CONFIG_BLK_DEV_ZONED=y +CONFIG_BLK_INLINE_ENCRYPTION=y +CONFIG_BLK_INLINE_ENCRYPTION_FALLBACK=y +CONFIG_BLK_MQ_PCI=y +CONFIG_BLK_MQ_RDMA=y +CONFIG_BLK_MQ_VIRTIO=y +CONFIG_BLK_PM=y +CONFIG_BLK_RQ_ALLOC_TIME=y +CONFIG_BLK_SCSI_REQUEST=y +CONFIG_BLK_SED_OPAL=y +CONFIG_BLK_WBT=y +CONFIG_BLK_WBT_MQ=y +CONFIG_BLOCK=y +CONFIG_BLOCK_COMPAT=y +CONFIG_BNX2=m +CONFIG_BNX2X=m +CONFIG_BNX2X_SRIOV=y +CONFIG_BNXT=m +CONFIG_BNXT_DCB=y +CONFIG_BNXT_FLOWER_OFFLOAD=y +CONFIG_BNXT_HWMON=y +CONFIG_BNXT_SRIOV=y +CONFIG_BOARD_TPCI200=m +CONFIG_BONDING=m +# CONFIG_BOOTPARAM_HARDLOCKUP_PANIC is not set +CONFIG_BOOTPARAM_HARDLOCKUP_PANIC_VALUE=0 +# CONFIG_BOOTPARAM_HOTPLUG_CPU0 is not set +# CONFIG_BOOTPARAM_HUNG_TASK_PANIC is not set +CONFIG_BOOTPARAM_HUNG_TASK_PANIC_VALUE=0 +# CONFIG_BOOTPARAM_SOFTLOCKUP_PANIC is not set +CONFIG_BOOTPARAM_SOFTLOCKUP_PANIC_VALUE=0 +CONFIG_BOOTTIME_TRACING=y +CONFIG_BOOT_CONFIG=y +CONFIG_BOOT_PRINTK_DELAY=y +CONFIG_BOUNCE=y +CONFIG_BPF=y +CONFIG_BPFILTER=y +CONFIG_BPFILTER_UMH=m +CONFIG_BPF_EVENTS=y +CONFIG_BPF_JIT=y +CONFIG_BPF_JIT_ALWAYS_ON=y +CONFIG_BPF_JIT_DEFAULT_ON=y +CONFIG_BPF_KPROBE_OVERRIDE=y +# CONFIG_BPF_LSM is not set +CONFIG_BPF_STREAM_PARSER=y +CONFIG_BPF_SYSCALL=y +# CONFIG_BPQETHER is not set +CONFIG_BQL=y +CONFIG_BRANCH_PROFILE_NONE=y +CONFIG_BRIDGE=m +CONFIG_BRIDGE_EBT_802_3=m +CONFIG_BRIDGE_EBT_AMONG=m +CONFIG_BRIDGE_EBT_ARP=m +CONFIG_BRIDGE_EBT_ARPREPLY=m +CONFIG_BRIDGE_EBT_BROUTE=m +CONFIG_BRIDGE_EBT_DNAT=m +CONFIG_BRIDGE_EBT_IP=m +CONFIG_BRIDGE_EBT_IP6=m +CONFIG_BRIDGE_EBT_LIMIT=m +CONFIG_BRIDGE_EBT_LOG=m +CONFIG_BRIDGE_EBT_MARK=m +CONFIG_BRIDGE_EBT_MARK_T=m +CONFIG_BRIDGE_EBT_NFLOG=m +CONFIG_BRIDGE_EBT_PKTTYPE=m +CONFIG_BRIDGE_EBT_REDIRECT=m +CONFIG_BRIDGE_EBT_SNAT=m +CONFIG_BRIDGE_EBT_STP=m +CONFIG_BRIDGE_EBT_T_FILTER=m +CONFIG_BRIDGE_EBT_T_NAT=m +CONFIG_BRIDGE_EBT_VLAN=m +CONFIG_BRIDGE_IGMP_SNOOPING=y +CONFIG_BRIDGE_MRP=y +CONFIG_BRIDGE_NETFILTER=m +CONFIG_BRIDGE_NF_EBTABLES=m +CONFIG_BRIDGE_VLAN_FILTERING=y +# CONFIG_BROADCOM_PHY is not set +CONFIG_BSD_DISKLABEL=y +CONFIG_BSD_PROCESS_ACCT=y +CONFIG_BSD_PROCESS_ACCT_V3=y +# CONFIG_BT is not set +CONFIG_BTREE=y +# CONFIG_BTRFS_ASSERT is not set +# CONFIG_BTRFS_DEBUG is not set +CONFIG_BTRFS_FS=m +# CONFIG_BTRFS_FS_CHECK_INTEGRITY is not set +CONFIG_BTRFS_FS_POSIX_ACL=y +# CONFIG_BTRFS_FS_REF_VERIFY is not set +# CONFIG_BTRFS_FS_RUN_SANITY_TESTS is not set +CONFIG_BTT=y +CONFIG_BUG=y +# CONFIG_BUG_ON_DATA_CORRUPTION is not set +CONFIG_BUILDTIME_TABLE_SORT=y +CONFIG_BUILD_BIN2C=y +CONFIG_BUILD_SALT="" +CONFIG_BXT_WC_PMIC_OPREGION=y +# CONFIG_C2PORT is not set +CONFIG_CACHEFILES=m +# CONFIG_CACHEFILES_DEBUG is not set +# CONFIG_CACHEFILES_HISTOGRAM is not set +CONFIG_CADENCE_WATCHDOG=m +CONFIG_CAIF=m +# CONFIG_CAIF_DEBUG is not set +CONFIG_CAIF_DRIVERS=y +# CONFIG_CAIF_HSI is not set +CONFIG_CAIF_NETDEV=m +# CONFIG_CAIF_SPI_SLAVE is not set +# CONFIG_CAIF_TTY is not set +CONFIG_CAIF_USB=m +CONFIG_CAIF_VIRTIO=m +CONFIG_CAN=m +# CONFIG_CAN_8DEV_USB is not set +CONFIG_CAN_BCM=m +CONFIG_CAN_CALC_BITTIMING=y +# CONFIG_CAN_CC770 is not set +CONFIG_CAN_C_CAN=m +CONFIG_CAN_C_CAN_PCI=m +CONFIG_CAN_C_CAN_PLATFORM=m +# CONFIG_CAN_DEBUG_DEVICES is not set +CONFIG_CAN_DEV=m +CONFIG_CAN_EMS_PCI=m +# CONFIG_CAN_EMS_USB is not set +# CONFIG_CAN_ESD_USB2 is not set +CONFIG_CAN_F81601=m +# CONFIG_CAN_GS_USB is not set +CONFIG_CAN_GW=m +CONFIG_CAN_HI311X=m +# CONFIG_CAN_IFI_CANFD is not set +CONFIG_CAN_J1939=m +CONFIG_CAN_JANZ_ICAN3=m +CONFIG_CAN_KVASER_PCI=m +CONFIG_CAN_KVASER_PCIEFD=m +# CONFIG_CAN_KVASER_USB is not set +# CONFIG_CAN_MCBA_USB is not set +# CONFIG_CAN_MCP251X is not set +# CONFIG_CAN_M_CAN is not set +CONFIG_CAN_PEAK_PCI=m +CONFIG_CAN_PEAK_PCIEC=y +CONFIG_CAN_PEAK_PCIEFD=m +# CONFIG_CAN_PEAK_USB is not set +CONFIG_CAN_PLX_PCI=m +CONFIG_CAN_RAW=m +CONFIG_CAN_SJA1000=m +CONFIG_CAN_SJA1000_ISA=m +CONFIG_CAN_SJA1000_PLATFORM=m +CONFIG_CAN_SLCAN=m +# CONFIG_CAN_SOFTING is not set +# CONFIG_CAN_UCAN is not set +CONFIG_CAN_VCAN=m +CONFIG_CAN_VXCAN=m +CONFIG_CARDBUS=y +CONFIG_CATAPULT_PCI=m +# CONFIG_CB710_CORE is not set +CONFIG_CC_CAN_LINK=y +CONFIG_CC_CAN_LINK_STATIC=y +CONFIG_CC_HAS_ASM_GOTO=y +CONFIG_CC_HAS_ASM_INLINE=y +CONFIG_CC_HAS_INT128=y +CONFIG_CC_HAS_KASAN_GENERIC=y +CONFIG_CC_HAS_SANCOV_TRACE_PC=y +CONFIG_CC_HAS_SANE_STACKPROTECTOR=y +CONFIG_CC_HAS_STACKPROTECTOR_NONE=y +CONFIG_CC_HAS_WORKING_NOSANITIZE_ADDRESS=y +CONFIG_CC_IS_GCC=y +CONFIG_CC_OPTIMIZE_FOR_PERFORMANCE=y +# CONFIG_CC_OPTIMIZE_FOR_SIZE is not set +CONFIG_CC_VERSION_TEXT="gcc (Ubuntu 10.2.0-13ubuntu1) 10.2.0" +CONFIG_CDNS_I3C_MASTER=m +CONFIG_CDROM=y +CONFIG_CDROM_PKTCDVD=m +CONFIG_CDROM_PKTCDVD_BUFFERS=8 +# CONFIG_CDROM_PKTCDVD_WCACHE is not set +CONFIG_CEC_CORE=m +CONFIG_CEC_NOTIFIER=y +CONFIG_CEC_SECO=m +CONFIG_CEC_SECO_RC=y +CONFIG_CEPH_FS=m +CONFIG_CEPH_FSCACHE=y +CONFIG_CEPH_FS_POSIX_ACL=y +CONFIG_CEPH_FS_SECURITY_LABEL=y +CONFIG_CEPH_LIB=m +# CONFIG_CEPH_LIB_PRETTYDEBUG is not set +CONFIG_CEPH_LIB_USE_DNS_RESOLVER=y +CONFIG_CFAG12864B=m +CONFIG_CFAG12864B_RATE=20 +CONFIG_CFG80211=m +# CONFIG_CFG80211_CERTIFICATION_ONUS is not set +CONFIG_CFG80211_CRDA_SUPPORT=y +CONFIG_CFG80211_DEBUGFS=y +CONFIG_CFG80211_DEFAULT_PS=y +# CONFIG_CFG80211_DEVELOPER_WARNINGS is not set +CONFIG_CFG80211_REQUIRE_SIGNED_REGDB=y +CONFIG_CFG80211_USE_KERNEL_REGDB_KEYS=y +CONFIG_CFG80211_WEXT=y +CONFIG_CFS_BANDWIDTH=y +CONFIG_CGROUPS=y +CONFIG_CGROUP_BPF=y +CONFIG_CGROUP_CPUACCT=y +# CONFIG_CGROUP_DEBUG is not set +CONFIG_CGROUP_DEVICE=y +CONFIG_CGROUP_FREEZER=y +CONFIG_CGROUP_HUGETLB=y +CONFIG_CGROUP_NET_CLASSID=y +CONFIG_CGROUP_NET_PRIO=y +CONFIG_CGROUP_PERF=y +CONFIG_CGROUP_PIDS=y +CONFIG_CGROUP_RDMA=y +CONFIG_CGROUP_SCHED=y +CONFIG_CGROUP_WRITEBACK=y +CONFIG_CHARGER_ADP5061=m +CONFIG_CHARGER_BD99954=m +# CONFIG_CHARGER_BQ2415X is not set +# CONFIG_CHARGER_BQ24257 is not set +# CONFIG_CHARGER_BQ24735 is not set +# CONFIG_CHARGER_BQ25890 is not set +# CONFIG_CHARGER_GPIO is not set +# CONFIG_CHARGER_LP8727 is not set +CONFIG_CHARGER_LT3651=m +# CONFIG_CHARGER_MANAGER is not set +# CONFIG_CHARGER_MAX14577 is not set +# CONFIG_CHARGER_MAX77693 is not set +# CONFIG_CHARGER_MAX8903 is not set +# CONFIG_CHARGER_PCF50633 is not set +# CONFIG_CHARGER_RT9455 is not set +# CONFIG_CHARGER_SBS is not set +# CONFIG_CHARGER_SMB347 is not set +CONFIG_CHARLCD=m +CONFIG_CHARLCD_BL_FLASH=y +# CONFIG_CHARLCD_BL_OFF is not set +# CONFIG_CHARLCD_BL_ON is not set +CONFIG_CHECKPOINT_RESTORE=y +CONFIG_CHECK_SIGNATURE=y +CONFIG_CHELSIO_IPSEC_INLINE=y +CONFIG_CHELSIO_T1=m +CONFIG_CHELSIO_T1_1G=y +CONFIG_CHELSIO_T3=m +CONFIG_CHELSIO_T4=m +CONFIG_CHELSIO_T4VF=m +CONFIG_CHELSIO_T4_DCB=y +CONFIG_CHELSIO_TLS_DEVICE=y +# CONFIG_CHROME_PLATFORMS is not set +CONFIG_CHR_DEV_SCH=m +CONFIG_CHR_DEV_SG=y +CONFIG_CHR_DEV_ST=m +CONFIG_CHT_DC_TI_PMIC_OPREGION=y +# CONFIG_CICADA_PHY is not set +CONFIG_CIFS=m +CONFIG_CIFS_ALLOW_INSECURE_LEGACY=y +CONFIG_CIFS_DEBUG=y +# CONFIG_CIFS_DEBUG2 is not set +# CONFIG_CIFS_DEBUG_DUMP_KEYS is not set +CONFIG_CIFS_DFS_UPCALL=y +CONFIG_CIFS_FSCACHE=y +CONFIG_CIFS_POSIX=y +# CONFIG_CIFS_SMB_DIRECT is not set +# CONFIG_CIFS_STATS2 is not set +CONFIG_CIFS_UPCALL=y +CONFIG_CIFS_WEAK_PW_HASH=y +CONFIG_CIFS_XATTR=y +CONFIG_CLANG_VERSION=0 +CONFIG_CLEANCACHE=y +CONFIG_CLKBLD_I8253=y +CONFIG_CLKDEV_LOOKUP=y +CONFIG_CLKEVT_I8253=y +CONFIG_CLOCKSOURCE_VALIDATE_LAST_CYCLE=y +CONFIG_CLOCKSOURCE_WATCHDOG=y +# CONFIG_CLOCK_THERMAL is not set +CONFIG_CLS_U32_MARK=y +# CONFIG_CLS_U32_PERF is not set +CONFIG_CLZ_TAB=y +# CONFIG_CMA is not set +# CONFIG_CMDLINE_BOOL is not set +CONFIG_CMDLINE_PARTITION=y +CONFIG_CNIC=m +CONFIG_CODA_FS=m +# CONFIG_COMEDI is not set +CONFIG_COMMON_CLK=y +# CONFIG_COMMON_CLK_CDCE706 is not set +# CONFIG_COMMON_CLK_CS2000_CP is not set +CONFIG_COMMON_CLK_MAX9485=m +CONFIG_COMMON_CLK_SI5341=m +# CONFIG_COMMON_CLK_SI5351 is not set +CONFIG_COMMON_CLK_SI544=m +# CONFIG_COMMON_CLK_WM831X is not set +CONFIG_COMPACTION=y +# CONFIG_COMPAL_LAPTOP is not set +CONFIG_COMPAT=y +CONFIG_COMPAT_32=y +CONFIG_COMPAT_32BIT_TIME=y +CONFIG_COMPAT_BINFMT_ELF=y +# CONFIG_COMPAT_BRK is not set +CONFIG_COMPAT_FOR_U64_ALIGNMENT=y +CONFIG_COMPAT_NETLINK_MESSAGES=y +CONFIG_COMPAT_OLD_SIGACTION=y +# CONFIG_COMPAT_VDSO is not set +# CONFIG_COMPILE_TEST is not set +CONFIG_CONFIGFS_FS=y +CONFIG_CONNECTOR=y +CONFIG_CONSOLE_LOGLEVEL_DEFAULT=7 +CONFIG_CONSOLE_LOGLEVEL_QUIET=4 +CONFIG_CONSOLE_POLL=y +CONFIG_CONSOLE_TRANSLATIONS=y +CONFIG_CONTEXT_SWITCH_TRACER=y +CONFIG_CONTEXT_TRACKING=y +# CONFIG_CONTEXT_TRACKING_FORCE is not set +CONFIG_CONTIG_ALLOC=y +CONFIG_COPS=m +CONFIG_COPS_DAYNA=y +CONFIG_COPS_TANGENT=y +CONFIG_CORDIC=m +CONFIG_COREDUMP=y +CONFIG_CORE_DUMP_DEFAULT_ELF_HEADERS=y +CONFIG_CORTINA_PHY=m +CONFIG_COUNTER=m +# CONFIG_CPA_DEBUG is not set +CONFIG_CPU5_WDT=m +CONFIG_CPUMASK_OFFSTACK=y +CONFIG_CPUSETS=y +CONFIG_CPU_FREQ=y +# CONFIG_CPU_FREQ_DEFAULT_GOV_CONSERVATIVE is not set +# CONFIG_CPU_FREQ_DEFAULT_GOV_ONDEMAND is not set +CONFIG_CPU_FREQ_DEFAULT_GOV_PERFORMANCE=y +# CONFIG_CPU_FREQ_DEFAULT_GOV_POWERSAVE is not set +# CONFIG_CPU_FREQ_DEFAULT_GOV_SCHEDUTIL is not set +# CONFIG_CPU_FREQ_DEFAULT_GOV_USERSPACE is not set +CONFIG_CPU_FREQ_GOV_ATTR_SET=y +CONFIG_CPU_FREQ_GOV_COMMON=y +CONFIG_CPU_FREQ_GOV_CONSERVATIVE=y +CONFIG_CPU_FREQ_GOV_ONDEMAND=y +CONFIG_CPU_FREQ_GOV_PERFORMANCE=y +CONFIG_CPU_FREQ_GOV_POWERSAVE=y +CONFIG_CPU_FREQ_GOV_SCHEDUTIL=y +CONFIG_CPU_FREQ_GOV_USERSPACE=y +CONFIG_CPU_FREQ_STAT=y +# CONFIG_CPU_HOTPLUG_STATE_CONTROL is not set +CONFIG_CPU_IDLE=y +CONFIG_CPU_IDLE_GOV_HALTPOLL=y +CONFIG_CPU_IDLE_GOV_LADDER=y +CONFIG_CPU_IDLE_GOV_MENU=y +CONFIG_CPU_IDLE_GOV_TEO=y +CONFIG_CPU_ISOLATION=y +CONFIG_CPU_RMAP=y +CONFIG_CPU_SUP_AMD=y +CONFIG_CPU_SUP_CENTAUR=y +CONFIG_CPU_SUP_HYGON=y +CONFIG_CPU_SUP_INTEL=y +CONFIG_CPU_SUP_ZHAOXIN=y +CONFIG_CRAMFS=m +CONFIG_CRAMFS_BLOCKDEV=y +CONFIG_CRASH_CORE=y +CONFIG_CRASH_DUMP=y +CONFIG_CRC16=y +CONFIG_CRC32=y +# CONFIG_CRC32_BIT is not set +# CONFIG_CRC32_SARWATE is not set +# CONFIG_CRC32_SELFTEST is not set +# CONFIG_CRC32_SLICEBY4 is not set +CONFIG_CRC32_SLICEBY8=y +CONFIG_CRC4=m +CONFIG_CRC64=m +CONFIG_CRC7=m +CONFIG_CRC8=m +CONFIG_CRC_CCITT=y +CONFIG_CRC_ITU_T=m +CONFIG_CRC_T10DIF=y +CONFIG_CROSS_MEMORY_ATTACH=y +CONFIG_CRYPTO=y +CONFIG_CRYPTO_842=m +CONFIG_CRYPTO_ACOMP2=y +CONFIG_CRYPTO_ADIANTUM=m +CONFIG_CRYPTO_AEAD=y +CONFIG_CRYPTO_AEAD2=y +CONFIG_CRYPTO_AEGIS128=m +CONFIG_CRYPTO_AEGIS128_AESNI_SSE2=m +CONFIG_CRYPTO_AES=y +CONFIG_CRYPTO_AES_NI_INTEL=m +# CONFIG_CRYPTO_AES_TI is not set +CONFIG_CRYPTO_AKCIPHER=y +CONFIG_CRYPTO_AKCIPHER2=y +CONFIG_CRYPTO_ALGAPI=y +CONFIG_CRYPTO_ALGAPI2=y +CONFIG_CRYPTO_ANSI_CPRNG=m +CONFIG_CRYPTO_ANUBIS=m +CONFIG_CRYPTO_ARC4=m +CONFIG_CRYPTO_ARCH_HAVE_LIB_BLAKE2S=m +CONFIG_CRYPTO_ARCH_HAVE_LIB_CHACHA=m +CONFIG_CRYPTO_ARCH_HAVE_LIB_CURVE25519=m +CONFIG_CRYPTO_ARCH_HAVE_LIB_POLY1305=m +CONFIG_CRYPTO_AUTHENC=m +CONFIG_CRYPTO_BLAKE2B=m +CONFIG_CRYPTO_BLAKE2S=m +CONFIG_CRYPTO_BLAKE2S_X86=m +CONFIG_CRYPTO_BLOWFISH=m +CONFIG_CRYPTO_BLOWFISH_COMMON=m +CONFIG_CRYPTO_BLOWFISH_X86_64=m +CONFIG_CRYPTO_CAMELLIA=m +CONFIG_CRYPTO_CAMELLIA_AESNI_AVX2_X86_64=m +CONFIG_CRYPTO_CAMELLIA_AESNI_AVX_X86_64=m +CONFIG_CRYPTO_CAMELLIA_X86_64=m +CONFIG_CRYPTO_CAST5=m +CONFIG_CRYPTO_CAST5_AVX_X86_64=m +CONFIG_CRYPTO_CAST6=m +CONFIG_CRYPTO_CAST6_AVX_X86_64=m +CONFIG_CRYPTO_CAST_COMMON=m +CONFIG_CRYPTO_CBC=y +CONFIG_CRYPTO_CCM=m +CONFIG_CRYPTO_CFB=m +CONFIG_CRYPTO_CHACHA20=m +CONFIG_CRYPTO_CHACHA20POLY1305=m +CONFIG_CRYPTO_CHACHA20_X86_64=m +CONFIG_CRYPTO_CMAC=m +CONFIG_CRYPTO_CRC32=m +CONFIG_CRYPTO_CRC32C=y +CONFIG_CRYPTO_CRC32C_INTEL=y +CONFIG_CRYPTO_CRC32_PCLMUL=m +CONFIG_CRYPTO_CRCT10DIF=y +CONFIG_CRYPTO_CRCT10DIF_PCLMUL=m +CONFIG_CRYPTO_CRYPTD=m +CONFIG_CRYPTO_CTR=y +CONFIG_CRYPTO_CTS=y +CONFIG_CRYPTO_CURVE25519=m +CONFIG_CRYPTO_CURVE25519_X86=m +CONFIG_CRYPTO_DEFLATE=y +CONFIG_CRYPTO_DES=m +CONFIG_CRYPTO_DES3_EDE_X86_64=m +CONFIG_CRYPTO_DEV_AMLOGIC_GXL=m +# CONFIG_CRYPTO_DEV_AMLOGIC_GXL_DEBUG is not set +CONFIG_CRYPTO_DEV_ATMEL_ECC=m +CONFIG_CRYPTO_DEV_ATMEL_I2C=m +CONFIG_CRYPTO_DEV_ATMEL_SHA204A=m +CONFIG_CRYPTO_DEV_CCP=y +CONFIG_CRYPTO_DEV_CCP_CRYPTO=m +CONFIG_CRYPTO_DEV_CCP_DD=m +# CONFIG_CRYPTO_DEV_CCP_DEBUGFS is not set +CONFIG_CRYPTO_DEV_CHELSIO=m +CONFIG_CRYPTO_DEV_NITROX=m +CONFIG_CRYPTO_DEV_NITROX_CNN55XX=m +CONFIG_CRYPTO_DEV_PADLOCK=y +CONFIG_CRYPTO_DEV_PADLOCK_AES=m +CONFIG_CRYPTO_DEV_PADLOCK_SHA=m +CONFIG_CRYPTO_DEV_QAT=m +# CONFIG_CRYPTO_DEV_QAT_C3XXX is not set +# CONFIG_CRYPTO_DEV_QAT_C3XXXVF is not set +# CONFIG_CRYPTO_DEV_QAT_C62X is not set +# CONFIG_CRYPTO_DEV_QAT_C62XVF is not set +CONFIG_CRYPTO_DEV_QAT_DH895xCC=m +CONFIG_CRYPTO_DEV_QAT_DH895xCCVF=m +CONFIG_CRYPTO_DEV_SAFEXCEL=m +CONFIG_CRYPTO_DEV_SP_CCP=y +CONFIG_CRYPTO_DEV_SP_PSP=y +CONFIG_CRYPTO_DEV_VIRTIO=m +CONFIG_CRYPTO_DH=y +CONFIG_CRYPTO_DRBG=y +CONFIG_CRYPTO_DRBG_CTR=y +CONFIG_CRYPTO_DRBG_HASH=y +CONFIG_CRYPTO_DRBG_HMAC=y +CONFIG_CRYPTO_DRBG_MENU=y +CONFIG_CRYPTO_ECB=y +CONFIG_CRYPTO_ECC=m +CONFIG_CRYPTO_ECDH=m +CONFIG_CRYPTO_ECHAINIV=m +CONFIG_CRYPTO_ECRDSA=m +CONFIG_CRYPTO_ENGINE=m +CONFIG_CRYPTO_ESSIV=m +CONFIG_CRYPTO_FCRYPT=m +CONFIG_CRYPTO_GCM=y +CONFIG_CRYPTO_GF128MUL=y +CONFIG_CRYPTO_GHASH=y +CONFIG_CRYPTO_GHASH_CLMUL_NI_INTEL=m +CONFIG_CRYPTO_GLUE_HELPER_X86=m +CONFIG_CRYPTO_HASH=y +CONFIG_CRYPTO_HASH2=y +CONFIG_CRYPTO_HASH_INFO=y +CONFIG_CRYPTO_HMAC=y +CONFIG_CRYPTO_HW=y +CONFIG_CRYPTO_JITTERENTROPY=y +CONFIG_CRYPTO_KEYWRAP=m +CONFIG_CRYPTO_KHAZAD=m +CONFIG_CRYPTO_KPP=y +CONFIG_CRYPTO_KPP2=y +CONFIG_CRYPTO_LIB_AES=y +CONFIG_CRYPTO_LIB_ARC4=m +CONFIG_CRYPTO_LIB_BLAKE2S=m +CONFIG_CRYPTO_LIB_BLAKE2S_GENERIC=m +CONFIG_CRYPTO_LIB_CHACHA=m +CONFIG_CRYPTO_LIB_CHACHA20POLY1305=m +CONFIG_CRYPTO_LIB_CHACHA_GENERIC=m +CONFIG_CRYPTO_LIB_CURVE25519=m +CONFIG_CRYPTO_LIB_CURVE25519_GENERIC=m +CONFIG_CRYPTO_LIB_DES=m +CONFIG_CRYPTO_LIB_POLY1305=m +CONFIG_CRYPTO_LIB_POLY1305_GENERIC=m +CONFIG_CRYPTO_LIB_POLY1305_RSIZE=11 +CONFIG_CRYPTO_LIB_SHA256=y +CONFIG_CRYPTO_LRW=m +CONFIG_CRYPTO_LZ4=m +CONFIG_CRYPTO_LZ4HC=m +CONFIG_CRYPTO_LZO=y +CONFIG_CRYPTO_MANAGER=y +CONFIG_CRYPTO_MANAGER2=y +CONFIG_CRYPTO_MANAGER_DISABLE_TESTS=y +CONFIG_CRYPTO_MD4=m +CONFIG_CRYPTO_MD5=y +CONFIG_CRYPTO_MICHAEL_MIC=m +CONFIG_CRYPTO_NHPOLY1305=m +CONFIG_CRYPTO_NHPOLY1305_AVX2=m +CONFIG_CRYPTO_NHPOLY1305_SSE2=m +CONFIG_CRYPTO_NULL=y +CONFIG_CRYPTO_NULL2=y +CONFIG_CRYPTO_OFB=m +CONFIG_CRYPTO_PCBC=m +CONFIG_CRYPTO_PCRYPT=m +CONFIG_CRYPTO_POLY1305=m +CONFIG_CRYPTO_POLY1305_X86_64=m +CONFIG_CRYPTO_RMD128=m +CONFIG_CRYPTO_RMD160=m +CONFIG_CRYPTO_RMD256=m +CONFIG_CRYPTO_RMD320=m +CONFIG_CRYPTO_RNG=y +CONFIG_CRYPTO_RNG2=y +CONFIG_CRYPTO_RNG_DEFAULT=y +CONFIG_CRYPTO_RSA=y +CONFIG_CRYPTO_SALSA20=m +CONFIG_CRYPTO_SEED=m +CONFIG_CRYPTO_SEQIV=y +CONFIG_CRYPTO_SERPENT=m +CONFIG_CRYPTO_SERPENT_AVX2_X86_64=m +CONFIG_CRYPTO_SERPENT_AVX_X86_64=m +CONFIG_CRYPTO_SERPENT_SSE2_X86_64=m +CONFIG_CRYPTO_SHA1=y +CONFIG_CRYPTO_SHA1_SSSE3=m +CONFIG_CRYPTO_SHA256=y +CONFIG_CRYPTO_SHA256_SSSE3=m +CONFIG_CRYPTO_SHA3=m +CONFIG_CRYPTO_SHA512=y +CONFIG_CRYPTO_SHA512_SSSE3=m +CONFIG_CRYPTO_SIMD=m +CONFIG_CRYPTO_SKCIPHER=y +CONFIG_CRYPTO_SKCIPHER2=y +CONFIG_CRYPTO_SM3=m +CONFIG_CRYPTO_SM4=m +CONFIG_CRYPTO_STATS=y +CONFIG_CRYPTO_STREEBOG=m +CONFIG_CRYPTO_TEA=m +CONFIG_CRYPTO_TEST=m +CONFIG_CRYPTO_TGR192=m +CONFIG_CRYPTO_TWOFISH=m +CONFIG_CRYPTO_TWOFISH_AVX_X86_64=m +CONFIG_CRYPTO_TWOFISH_COMMON=m +CONFIG_CRYPTO_TWOFISH_X86_64=m +CONFIG_CRYPTO_TWOFISH_X86_64_3WAY=m +CONFIG_CRYPTO_USER=m +CONFIG_CRYPTO_USER_API=m +CONFIG_CRYPTO_USER_API_AEAD=m +CONFIG_CRYPTO_USER_API_HASH=m +CONFIG_CRYPTO_USER_API_RNG=m +CONFIG_CRYPTO_USER_API_SKCIPHER=m +CONFIG_CRYPTO_VMAC=m +CONFIG_CRYPTO_WP512=m +CONFIG_CRYPTO_XCBC=m +CONFIG_CRYPTO_XTS=y +CONFIG_CRYPTO_XXHASH=m +CONFIG_CRYPTO_ZSTD=m +CONFIG_CS89x0=m +CONFIG_CS89x0_PLATFORM=y +CONFIG_CUSE=m +CONFIG_CX_ECAT=m +CONFIG_CYCLADES=m +# CONFIG_CYZ_INTR is not set +CONFIG_DA9052_WATCHDOG=m +CONFIG_DA9063_WATCHDOG=m +# CONFIG_DAVICOM_PHY is not set +CONFIG_DAX=y +CONFIG_DAX_DRIVER=y +CONFIG_DCA=m +CONFIG_DCACHE_WORD_ACCESS=y +CONFIG_DCB=y +# CONFIG_DCDBAS is not set +# CONFIG_DEBUG_ATOMIC_SLEEP is not set +# CONFIG_DEBUG_BLOCK_EXT_DEVT is not set +# CONFIG_DEBUG_BOOT_PARAMS is not set +CONFIG_DEBUG_BUGVERBOSE=y +# CONFIG_DEBUG_CREDENTIALS is not set +# CONFIG_DEBUG_DEVRES is not set +# CONFIG_DEBUG_DRIVER is not set +# CONFIG_DEBUG_ENTRY is not set +# CONFIG_DEBUG_FORCE_WEAK_PER_CPU is not set +CONFIG_DEBUG_FS=y +# CONFIG_DEBUG_GPIO is not set +# CONFIG_DEBUG_HOTPLUG_CPU0 is not set +CONFIG_DEBUG_INFO=y +CONFIG_DEBUG_INFO_BTF=y +# CONFIG_DEBUG_INFO_COMPRESSED is not set +CONFIG_DEBUG_INFO_DWARF4=y +# CONFIG_DEBUG_INFO_REDUCED is not set +# CONFIG_DEBUG_INFO_SPLIT is not set +CONFIG_DEBUG_KERNEL=y +# CONFIG_DEBUG_KERNEL_DC is not set +# CONFIG_DEBUG_KMEMLEAK is not set +# CONFIG_DEBUG_KOBJECT is not set +# CONFIG_DEBUG_LIST is not set +# CONFIG_DEBUG_LOCKING_API_SELFTESTS is not set +# CONFIG_DEBUG_LOCK_ALLOC is not set +# CONFIG_DEBUG_MEMORY_INIT is not set +CONFIG_DEBUG_MISC=y +# CONFIG_DEBUG_MUTEXES is not set +# CONFIG_DEBUG_NMI_SELFTEST is not set +# CONFIG_DEBUG_NOTIFIERS is not set +# CONFIG_DEBUG_OBJECTS is not set +# CONFIG_DEBUG_PAGEALLOC is not set +# CONFIG_DEBUG_PAGE_REF is not set +# CONFIG_DEBUG_PERF_USE_VMALLOC is not set +# CONFIG_DEBUG_PER_CPU_MAPS is not set +# CONFIG_DEBUG_PINCTRL is not set +# CONFIG_DEBUG_PLIST is not set +# CONFIG_DEBUG_RODATA_TEST is not set +# CONFIG_DEBUG_RSEQ is not set +# CONFIG_DEBUG_RT_MUTEXES is not set +# CONFIG_DEBUG_RWSEMS is not set +# CONFIG_DEBUG_SECTION_MISMATCH is not set +# CONFIG_DEBUG_SG is not set +# CONFIG_DEBUG_SHIRQ is not set +# CONFIG_DEBUG_SPINLOCK is not set +# CONFIG_DEBUG_STACK_USAGE is not set +# CONFIG_DEBUG_TEST_DRIVER_REMOVE is not set +# CONFIG_DEBUG_TIMEKEEPING is not set +# CONFIG_DEBUG_TLBFLUSH is not set +# CONFIG_DEBUG_VIRTUAL is not set +# CONFIG_DEBUG_VM is not set +# CONFIG_DEBUG_VM_PGTABLE is not set +# CONFIG_DEBUG_WQ_FORCE_RR_CPU is not set +# CONFIG_DEBUG_WW_MUTEX_SLOWPATH is not set +CONFIG_DEBUG_WX=y +CONFIG_DECNET=m +CONFIG_DECNET_NF_GRABULATOR=m +# CONFIG_DECNET_ROUTER is not set +CONFIG_DECOMPRESS_BZIP2=y +CONFIG_DECOMPRESS_GZIP=y +CONFIG_DECOMPRESS_LZ4=y +CONFIG_DECOMPRESS_LZMA=y +CONFIG_DECOMPRESS_LZO=y +CONFIG_DECOMPRESS_XZ=y +CONFIG_DEFAULT_CUBIC=y +CONFIG_DEFAULT_HOSTNAME="(none)" +CONFIG_DEFAULT_HUNG_TASK_TIMEOUT=120 +CONFIG_DEFAULT_INIT="" +CONFIG_DEFAULT_MMAP_MIN_ADDR=65536 +# CONFIG_DEFAULT_RENO is not set +CONFIG_DEFAULT_SECURITY_APPARMOR=y +# CONFIG_DEFAULT_SECURITY_DAC is not set +# CONFIG_DEFAULT_SECURITY_SELINUX is not set +# CONFIG_DEFAULT_SECURITY_SMACK is not set +# CONFIG_DEFAULT_SECURITY_TOMOYO is not set +CONFIG_DEFAULT_TCP_CONG="cubic" +# CONFIG_DEFERRED_STRUCT_PAGE_INIT is not set +CONFIG_DEFXX=m +# CONFIG_DEFXX_MMIO is not set +# CONFIG_DELL_LAPTOP is not set +# CONFIG_DELL_RBTN is not set +# CONFIG_DELL_RBU is not set +CONFIG_DELL_SMBIOS=m +CONFIG_DELL_SMBIOS_WMI=y +# CONFIG_DELL_SMO8800 is not set +# CONFIG_DELL_UART_BACKLIGHT is not set +# CONFIG_DELL_WMI is not set +# CONFIG_DELL_WMI_AIO is not set +CONFIG_DELL_WMI_DESCRIPTOR=m +CONFIG_DELL_WMI_LED=m +CONFIG_DETECT_HUNG_TASK=y +CONFIG_DEVFREQ_GOV_PASSIVE=y +CONFIG_DEVFREQ_GOV_PERFORMANCE=y +CONFIG_DEVFREQ_GOV_POWERSAVE=y +CONFIG_DEVFREQ_GOV_SIMPLE_ONDEMAND=y +CONFIG_DEVFREQ_GOV_USERSPACE=y +CONFIG_DEVFREQ_THERMAL=y +CONFIG_DEVICE_PRIVATE=y +# CONFIG_DEVKMEM is not set +CONFIG_DEVMEM=y +CONFIG_DEVPORT=y +CONFIG_DEVTMPFS=y +CONFIG_DEVTMPFS_MOUNT=y +CONFIG_DEV_APPLETALK=m +CONFIG_DEV_DAX=y +CONFIG_DEV_DAX_HMEM=m +CONFIG_DEV_DAX_KMEM=m +CONFIG_DEV_DAX_PMEM=y +CONFIG_DEV_PAGEMAP_OPS=y +CONFIG_DIMLIB=y +CONFIG_DL2K=m +CONFIG_DLCI=m +CONFIG_DLCI_MAX=8 +CONFIG_DLM=m +# CONFIG_DLM_DEBUG is not set +CONFIG_DMABUF_HEAPS=y +CONFIG_DMABUF_HEAPS_SYSTEM=y +# CONFIG_DMABUF_MOVE_NOTIFY is not set +# CONFIG_DMABUF_SELFTESTS is not set +CONFIG_DMADEVICES=y +# CONFIG_DMADEVICES_DEBUG is not set +CONFIG_DMAR_TABLE=y +# CONFIG_DMATEST is not set +CONFIG_DMA_ACPI=y +# CONFIG_DMA_API_DEBUG is not set +CONFIG_DMA_COHERENT_POOL=y +CONFIG_DMA_ENGINE=y +CONFIG_DMA_ENGINE_RAID=y +# CONFIG_DMA_FENCE_TRACE is not set +CONFIG_DMA_SHARED_BUFFER=y +CONFIG_DMA_VIRTUAL_CHANNELS=m +CONFIG_DMA_VIRT_OPS=y +CONFIG_DMI=y +CONFIG_DMIID=y +CONFIG_DMI_SCAN_MACHINE_NON_EFI_FALLBACK=y +# CONFIG_DMI_SYSFS is not set +CONFIG_DM_BIO_PRISON=m +CONFIG_DM_BUFIO=m +CONFIG_DM_CACHE=m +CONFIG_DM_CACHE_SMQ=m +CONFIG_DM_CLONE=m +CONFIG_DM_CRYPT=m +# CONFIG_DM_DEBUG is not set +# CONFIG_DM_DEBUG_BLOCK_MANAGER_LOCKING is not set +CONFIG_DM_DELAY=m +# CONFIG_DM_DUST is not set +CONFIG_DM_EBS=m +CONFIG_DM_ERA=m +CONFIG_DM_FLAKEY=m +CONFIG_DM_INIT=y +CONFIG_DM_INTEGRITY=m +CONFIG_DM_LOG_USERSPACE=m +CONFIG_DM_LOG_WRITES=m +CONFIG_DM_MIRROR=m +CONFIG_DM_MULTIPATH=m +CONFIG_DM_MULTIPATH_HST=m +CONFIG_DM_MULTIPATH_QL=m +CONFIG_DM_MULTIPATH_ST=m +CONFIG_DM_PERSISTENT_DATA=m +CONFIG_DM_RAID=m +CONFIG_DM_SNAPSHOT=m +CONFIG_DM_SWITCH=m +CONFIG_DM_THIN_PROVISIONING=m +CONFIG_DM_UEVENT=y +CONFIG_DM_UNSTRIPED=m +CONFIG_DM_VERITY=m +# CONFIG_DM_VERITY_FEC is not set +CONFIG_DM_VERITY_VERIFY_ROOTHASH_SIG=y +CONFIG_DM_WRITECACHE=m +CONFIG_DM_ZERO=m +CONFIG_DM_ZONED=m +CONFIG_DNET=m +CONFIG_DNOTIFY=y +CONFIG_DNS_RESOLVER=y +CONFIG_DP83822_PHY=m +# CONFIG_DP83848_PHY is not set +# CONFIG_DP83867_PHY is not set +CONFIG_DP83869_PHY=m +CONFIG_DP83TC811_PHY=m +# CONFIG_DPM_WATCHDOG is not set +CONFIG_DPTF_POWER=m +CONFIG_DQL=y +# CONFIG_DRBD_FAULT_INJECTION is not set +CONFIG_DRM=m +CONFIG_DRM_AMDGPU=m +CONFIG_DRM_AMDGPU_CIK=y +# CONFIG_DRM_AMDGPU_GART_DEBUGFS is not set +CONFIG_DRM_AMDGPU_SI=y +CONFIG_DRM_AMDGPU_USERPTR=y +CONFIG_DRM_AMD_ACP=y +CONFIG_DRM_AMD_DC=y +CONFIG_DRM_AMD_DC_DCN=y +CONFIG_DRM_AMD_DC_HDCP=y +# CONFIG_DRM_ANALOGIX_ANX78XX is not set +CONFIG_DRM_AST=m +# CONFIG_DRM_BOCHS is not set +CONFIG_DRM_BRIDGE=y +# CONFIG_DRM_CIRRUS_QEMU is not set +# CONFIG_DRM_DEBUG_DP_MST_TOPOLOGY_REFS is not set +# CONFIG_DRM_DEBUG_SELFTEST is not set +CONFIG_DRM_DP_AUX_CHARDEV=y +CONFIG_DRM_DP_CEC=y +# CONFIG_DRM_ETNAVIV is not set +CONFIG_DRM_FBDEV_EMULATION=y +# CONFIG_DRM_FBDEV_LEAK_PHYS_SMEM is not set +CONFIG_DRM_FBDEV_OVERALLOC=100 +CONFIG_DRM_GEM_CMA_HELPER=y +CONFIG_DRM_GEM_SHMEM_HELPER=y +# CONFIG_DRM_GM12U320 is not set +CONFIG_DRM_GMA3600=y +CONFIG_DRM_GMA500=m +CONFIG_DRM_GMA600=y +# CONFIG_DRM_I2C_CH7006 is not set +CONFIG_DRM_I2C_NXP_TDA9950=m +# CONFIG_DRM_I2C_NXP_TDA998X is not set +# CONFIG_DRM_I2C_SIL164 is not set +CONFIG_DRM_I915=m +CONFIG_DRM_I915_CAPTURE_ERROR=y +CONFIG_DRM_I915_COMPRESS_ERROR=y +# CONFIG_DRM_I915_DEBUG is not set +# CONFIG_DRM_I915_DEBUG_GUC is not set +# CONFIG_DRM_I915_DEBUG_MMIO is not set +# CONFIG_DRM_I915_DEBUG_RUNTIME_PM is not set +# CONFIG_DRM_I915_DEBUG_VBLANK_EVADE is not set +CONFIG_DRM_I915_FENCE_TIMEOUT=10000 +CONFIG_DRM_I915_FORCE_PROBE="" +CONFIG_DRM_I915_GVT=y +# CONFIG_DRM_I915_GVT_KVMGT is not set +CONFIG_DRM_I915_HEARTBEAT_INTERVAL=2500 +# CONFIG_DRM_I915_LOW_LEVEL_TRACEPOINTS is not set +CONFIG_DRM_I915_MAX_REQUEST_BUSYWAIT=8000 +CONFIG_DRM_I915_PREEMPT_TIMEOUT=640 +# CONFIG_DRM_I915_SELFTEST is not set +CONFIG_DRM_I915_STOP_TIMEOUT=100 +# CONFIG_DRM_I915_SW_FENCE_CHECK_DAG is not set +# CONFIG_DRM_I915_SW_FENCE_DEBUG_OBJECTS is not set +CONFIG_DRM_I915_TIMESLICE_DURATION=1 +CONFIG_DRM_I915_USERFAULT_AUTOSUSPEND=250 +CONFIG_DRM_I915_USERPTR=y +# CONFIG_DRM_I915_WERROR is not set +CONFIG_DRM_KMS_CMA_HELPER=y +CONFIG_DRM_KMS_FB_HELPER=y +CONFIG_DRM_KMS_HELPER=m +# CONFIG_DRM_LEGACY is not set +CONFIG_DRM_LOAD_EDID_FIRMWARE=y +# CONFIG_DRM_MGAG200 is not set +CONFIG_DRM_MIPI_DBI=m +CONFIG_DRM_MIPI_DSI=y +# CONFIG_DRM_NOUVEAU is not set +CONFIG_DRM_PANEL=y +CONFIG_DRM_PANEL_BRIDGE=y +CONFIG_DRM_PANEL_ORIENTATION_QUIRKS=m +CONFIG_DRM_PANEL_RASPBERRYPI_TOUCHSCREEN=m +CONFIG_DRM_QXL=m +CONFIG_DRM_RADEON=m +# CONFIG_DRM_RADEON_USERPTR is not set +CONFIG_DRM_SCHED=m +CONFIG_DRM_TTM=m +CONFIG_DRM_TTM_DMA_PAGE_POOL=y +CONFIG_DRM_TTM_HELPER=m +# CONFIG_DRM_UDL is not set +CONFIG_DRM_VBOXVIDEO=m +# CONFIG_DRM_VGEM is not set +CONFIG_DRM_VIRTIO_GPU=m +CONFIG_DRM_VKMS=m +# CONFIG_DRM_VMWGFX is not set +CONFIG_DRM_VRAM_HELPER=m +CONFIG_DS1682=m +CONFIG_DST_CACHE=y +CONFIG_DUMMY=m +CONFIG_DUMMY_CONSOLE=y +CONFIG_DUMMY_CONSOLE_COLUMNS=80 +CONFIG_DUMMY_CONSOLE_ROWS=25 +CONFIG_DUMMY_IRQ=m +CONFIG_DWC_XLGMAC=m +CONFIG_DWC_XLGMAC_PCI=m +# CONFIG_DW_DMAC is not set +CONFIG_DW_DMAC_CORE=m +CONFIG_DW_DMAC_PCI=m +CONFIG_DW_EDMA=m +CONFIG_DW_EDMA_PCIE=m +CONFIG_DW_I3C_MASTER=m +CONFIG_DW_WATCHDOG=m +CONFIG_DYNAMIC_DEBUG=y +CONFIG_DYNAMIC_DEBUG_CORE=y +CONFIG_DYNAMIC_EVENTS=y +CONFIG_DYNAMIC_FTRACE=y +CONFIG_DYNAMIC_FTRACE_WITH_DIRECT_CALLS=y +CONFIG_DYNAMIC_FTRACE_WITH_REGS=y +CONFIG_DYNAMIC_MEMORY_LAYOUT=y +CONFIG_DYNAMIC_PHYSICAL_MASK=y +CONFIG_E100=m +CONFIG_E1000=m +CONFIG_E1000E=m +CONFIG_E1000E_HWTS=y +CONFIG_EARLY_PRINTK=y +CONFIG_EARLY_PRINTK_DBGP=y +CONFIG_EARLY_PRINTK_USB=y +# CONFIG_EARLY_PRINTK_USB_XDBC is not set +CONFIG_EBC_C384_WDT=m +# CONFIG_ECHO is not set +CONFIG_ECRYPT_FS=y +CONFIG_ECRYPT_FS_MESSAGING=y +CONFIG_EDAC=y +CONFIG_EDAC_AMD64=m +# CONFIG_EDAC_AMD64_ERROR_INJECTION is not set +CONFIG_EDAC_ATOMIC_SCRUB=y +# CONFIG_EDAC_DEBUG is not set +CONFIG_EDAC_DECODE_MCE=y +CONFIG_EDAC_E752X=m +CONFIG_EDAC_I10NM=m +CONFIG_EDAC_I3000=m +CONFIG_EDAC_I3200=m +CONFIG_EDAC_I5000=m +CONFIG_EDAC_I5100=m +CONFIG_EDAC_I5400=m +CONFIG_EDAC_I7300=m +CONFIG_EDAC_I7CORE=m +CONFIG_EDAC_I82975X=m +CONFIG_EDAC_IE31200=m +# CONFIG_EDAC_LEGACY_SYSFS is not set +CONFIG_EDAC_PND2=m +CONFIG_EDAC_SBRIDGE=m +CONFIG_EDAC_SKX=m +CONFIG_EDAC_SUPPORT=y +CONFIG_EDAC_X38=m +CONFIG_EDD=y +CONFIG_EDD_OFF=y +# CONFIG_EEEPC_LAPTOP is not set +CONFIG_EEPROM_93CX6=m +# CONFIG_EEPROM_93XX46 is not set +CONFIG_EEPROM_AT24=m +# CONFIG_EEPROM_AT25 is not set +CONFIG_EEPROM_EE1004=m +# CONFIG_EEPROM_IDT_89HPESX is not set +# CONFIG_EEPROM_LEGACY is not set +# CONFIG_EEPROM_MAX6875 is not set +CONFIG_EFI=y +CONFIG_EFIVAR_FS=y +CONFIG_EFI_BOOTLOADER_CONTROL=m +CONFIG_EFI_CAPSULE_LOADER=m +CONFIG_EFI_CUSTOM_SSDT_OVERLAYS=y +CONFIG_EFI_DEV_PATH_PARSER=y +# CONFIG_EFI_DISABLE_PCI_DMA is not set +CONFIG_EFI_EARLYCON=y +CONFIG_EFI_ESRT=y +# CONFIG_EFI_FAKE_MEMMAP is not set +CONFIG_EFI_GENERIC_STUB_INITRD_CMDLINE_LOADER=y +CONFIG_EFI_MIXED=y +CONFIG_EFI_PARTITION=y +# CONFIG_EFI_PGT_DUMP is not set +CONFIG_EFI_RCI2_TABLE=y +CONFIG_EFI_RUNTIME_MAP=y +CONFIG_EFI_RUNTIME_WRAPPERS=y +CONFIG_EFI_SOFT_RESERVE=y +CONFIG_EFI_STUB=y +CONFIG_EFI_TEST=m +CONFIG_EFI_VARS=y +CONFIG_EFI_VARS_PSTORE=m +# CONFIG_EFI_VARS_PSTORE_DEFAULT_DISABLE is not set +CONFIG_EFS_FS=m +CONFIG_EISA=y +CONFIG_EISA_NAMES=y +CONFIG_EISA_PCI_EISA=y +CONFIG_EISA_VIRTUAL_ROOT=y +CONFIG_EISA_VLB_PRIMING=y +CONFIG_ELFCORE=y +CONFIG_ELF_CORE=y +# CONFIG_EMBEDDED is not set +# CONFIG_ENABLE_MUST_CHECK is not set +# CONFIG_ENC28J60 is not set +CONFIG_ENCLOSURE_SERVICES=m +CONFIG_ENCRYPTED_KEYS=y +# CONFIG_ENCX24J600 is not set +CONFIG_ENERGY_MODEL=y +CONFIG_ENIC=m +CONFIG_EPOLL=y +CONFIG_EQUALIZER=m +CONFIG_EROFS_FS=m +# CONFIG_EROFS_FS_DEBUG is not set +CONFIG_EROFS_FS_POSIX_ACL=y +CONFIG_EROFS_FS_SECURITY=y +CONFIG_EROFS_FS_XATTR=y +# CONFIG_EROFS_FS_ZIP is not set +CONFIG_ET131X=m +CONFIG_ETHERNET=y +CONFIG_ETHOC=m +CONFIG_ETHTOOL_NETLINK=y +CONFIG_EUROTECH_WDT=m +CONFIG_EVENTFD=y +CONFIG_EVENT_TRACING=y +CONFIG_EVM=y +CONFIG_EVM_ADD_XATTRS=y +CONFIG_EVM_ATTR_FSUUID=y +CONFIG_EVM_EXTRA_SMACK_XATTRS=y +# CONFIG_EVM_LOAD_X509 is not set +CONFIG_EXFAT_DEFAULT_IOCHARSET="utf8" +CONFIG_EXFAT_FS=m +CONFIG_EXPERT=y +CONFIG_EXPORTFS=y +CONFIG_EXPORTFS_BLOCK_OPS=y +# CONFIG_EXT2_FS is not set +# CONFIG_EXT3_FS is not set +# CONFIG_EXT4_DEBUG is not set +CONFIG_EXT4_FS=y +CONFIG_EXT4_FS_POSIX_ACL=y +CONFIG_EXT4_FS_SECURITY=y +CONFIG_EXT4_USE_FOR_EXT2=y +# CONFIG_EXTCON is not set +CONFIG_EXTRA_FIRMWARE="" +CONFIG_EZX_PCAP=y +# CONFIG_F2FS_CHECK_FS is not set +# CONFIG_F2FS_FAULT_INJECTION is not set +CONFIG_F2FS_FS=m +CONFIG_F2FS_FS_COMPRESSION=y +CONFIG_F2FS_FS_LZ4=y +CONFIG_F2FS_FS_LZO=y +CONFIG_F2FS_FS_LZORLE=y +CONFIG_F2FS_FS_POSIX_ACL=y +CONFIG_F2FS_FS_SECURITY=y +CONFIG_F2FS_FS_XATTR=y +CONFIG_F2FS_FS_ZSTD=y +# CONFIG_F2FS_IO_TRACE is not set +CONFIG_F2FS_STAT_FS=y +CONFIG_F71808E_WDT=m +CONFIG_FAILOVER=m +CONFIG_FAIR_GROUP_SCHED=y +CONFIG_FANOTIFY=y +CONFIG_FANOTIFY_ACCESS_PERMISSIONS=y +CONFIG_FARSYNC=m +CONFIG_FAT_DEFAULT_CODEPAGE=437 +CONFIG_FAT_DEFAULT_IOCHARSET="iso8859-1" +# CONFIG_FAT_DEFAULT_UTF8 is not set +CONFIG_FAT_FS=y +# CONFIG_FAULT_INJECTION is not set +CONFIG_FB=y +# CONFIG_FB_3DFX is not set +# CONFIG_FB_ARC is not set +# CONFIG_FB_ARK is not set +# CONFIG_FB_ASILIANT is not set +# CONFIG_FB_ATY is not set +# CONFIG_FB_ATY128 is not set +CONFIG_FB_BACKLIGHT=m +# CONFIG_FB_CARMINE is not set +CONFIG_FB_CFB_COPYAREA=m +CONFIG_FB_CFB_FILLRECT=m +CONFIG_FB_CFB_IMAGEBLIT=m +# CONFIG_FB_CIRRUS is not set +CONFIG_FB_CMDLINE=y +# CONFIG_FB_CYBER2000 is not set +CONFIG_FB_DDC=m +CONFIG_FB_DEFERRED_IO=y +# CONFIG_FB_EFI is not set +# CONFIG_FB_FOREIGN_ENDIAN is not set +# CONFIG_FB_HGA is not set +CONFIG_FB_HYPERV=m +# CONFIG_FB_I740 is not set +# CONFIG_FB_IBM_GXT4500 is not set +# CONFIG_FB_IMSTT is not set +CONFIG_FB_INTEL=m +# CONFIG_FB_INTEL_DEBUG is not set +CONFIG_FB_INTEL_I2C=y +# CONFIG_FB_KYRO is not set +# CONFIG_FB_LE80578 is not set +# CONFIG_FB_MATROX is not set +# CONFIG_FB_MB862XX is not set +# CONFIG_FB_METRONOME is not set +CONFIG_FB_MODE_HELPERS=y +# CONFIG_FB_N411 is not set +# CONFIG_FB_NEOMAGIC is not set +CONFIG_FB_NOTIFY=y +# CONFIG_FB_NVIDIA is not set +# CONFIG_FB_OPENCORES is not set +# CONFIG_FB_PM2 is not set +# CONFIG_FB_PM3 is not set +# CONFIG_FB_RADEON is not set +# CONFIG_FB_RIVA is not set +# CONFIG_FB_S1D13XXX is not set +# CONFIG_FB_S3 is not set +# CONFIG_FB_SAVAGE is not set +# CONFIG_FB_SIMPLE is not set +# CONFIG_FB_SIS is not set +CONFIG_FB_SM501=m +# CONFIG_FB_SM712 is not set +CONFIG_FB_SM750=m +# CONFIG_FB_SMSCUFX is not set +CONFIG_FB_SYS_COPYAREA=m +CONFIG_FB_SYS_FILLRECT=m +CONFIG_FB_SYS_FOPS=m +CONFIG_FB_SYS_IMAGEBLIT=m +CONFIG_FB_TFT=m +CONFIG_FB_TFT_AGM1264K_FL=m +CONFIG_FB_TFT_BD663474=m +CONFIG_FB_TFT_HX8340BN=m +CONFIG_FB_TFT_HX8347D=m +CONFIG_FB_TFT_HX8353D=m +CONFIG_FB_TFT_HX8357D=m +CONFIG_FB_TFT_ILI9163=m +CONFIG_FB_TFT_ILI9320=m +CONFIG_FB_TFT_ILI9325=m +CONFIG_FB_TFT_ILI9340=m +CONFIG_FB_TFT_ILI9341=m +CONFIG_FB_TFT_ILI9481=m +CONFIG_FB_TFT_ILI9486=m +CONFIG_FB_TFT_PCD8544=m +CONFIG_FB_TFT_RA8875=m +CONFIG_FB_TFT_S6D02A1=m +CONFIG_FB_TFT_S6D1121=m +CONFIG_FB_TFT_SEPS525=m +CONFIG_FB_TFT_SH1106=m +CONFIG_FB_TFT_SSD1289=m +CONFIG_FB_TFT_SSD1305=m +CONFIG_FB_TFT_SSD1306=m +CONFIG_FB_TFT_SSD1331=m +CONFIG_FB_TFT_SSD1351=m +CONFIG_FB_TFT_ST7735R=m +CONFIG_FB_TFT_ST7789V=m +CONFIG_FB_TFT_TINYLCD=m +CONFIG_FB_TFT_TLS8204=m +CONFIG_FB_TFT_UC1611=m +CONFIG_FB_TFT_UC1701=m +CONFIG_FB_TFT_UPD161704=m +CONFIG_FB_TFT_WATTEROTT=m +CONFIG_FB_TILEBLITTING=y +# CONFIG_FB_TRIDENT is not set +# CONFIG_FB_UDL is not set +# CONFIG_FB_UVESA is not set +# CONFIG_FB_VESA is not set +# CONFIG_FB_VGA16 is not set +CONFIG_FB_VIA=m +# CONFIG_FB_VIA_DIRECT_PROCFS is not set +CONFIG_FB_VIA_X_COMPATIBILITY=y +# CONFIG_FB_VIRTUAL is not set +# CONFIG_FB_VOODOO1 is not set +# CONFIG_FB_VT8623 is not set +CONFIG_FDDI=y +CONFIG_FEALNX=m +CONFIG_FHANDLE=y +CONFIG_FIB_RULES=y +CONFIG_FIELDBUS_DEV=m +CONFIG_FILE_LOCKING=y +# CONFIG_FIREWIRE is not set +CONFIG_FIREWIRE_NOSY=m +CONFIG_FIRMWARE_EDID=y +CONFIG_FIRMWARE_MEMMAP=y +CONFIG_FIXED_PHY=y +CONFIG_FIX_EARLYCON_MEM=y +CONFIG_FM10K=m +# CONFIG_FONTS is not set +CONFIG_FONT_8x16=y +CONFIG_FONT_8x8=y +CONFIG_FONT_SUPPORT=y +CONFIG_FORTIFY_SOURCE=y +CONFIG_FPGA=m +# CONFIG_FPGA_BRIDGE is not set +# CONFIG_FPGA_DFL is not set +# CONFIG_FPGA_MGR_ALTERA_CVP is not set +# CONFIG_FPGA_MGR_ALTERA_PS_SPI is not set +# CONFIG_FPGA_MGR_MACHXO2_SPI is not set +CONFIG_FPGA_MGR_XILINX_SPI=m +CONFIG_FRAMEBUFFER_CONSOLE=y +# CONFIG_FRAMEBUFFER_CONSOLE_DEFERRED_TAKEOVER is not set +CONFIG_FRAMEBUFFER_CONSOLE_DETECT_PRIMARY=y +CONFIG_FRAMEBUFFER_CONSOLE_ROTATION=y +CONFIG_FRAME_POINTER=y +CONFIG_FRAME_VECTOR=y +CONFIG_FRAME_WARN=1024 +CONFIG_FREEZER=y +CONFIG_FRONTSWAP=y +CONFIG_FSCACHE=m +# CONFIG_FSCACHE_DEBUG is not set +# CONFIG_FSCACHE_HISTOGRAM is not set +# CONFIG_FSCACHE_OBJECT_LIST is not set +CONFIG_FSCACHE_STATS=y +CONFIG_FSNOTIFY=y +CONFIG_FS_DAX=y +CONFIG_FS_DAX_PMD=y +CONFIG_FS_ENCRYPTION=y +CONFIG_FS_ENCRYPTION_ALGS=y +CONFIG_FS_IOMAP=y +CONFIG_FS_MBCACHE=y +CONFIG_FS_POSIX_ACL=y +CONFIG_FS_VERITY=y +CONFIG_FS_VERITY_BUILTIN_SIGNATURES=y +# CONFIG_FS_VERITY_DEBUG is not set +CONFIG_FTRACE=y +CONFIG_FTRACE_MCOUNT_RECORD=y +# CONFIG_FTRACE_STARTUP_TEST is not set +CONFIG_FTRACE_SYSCALLS=y +# CONFIG_FUJITSU_ES is not set +# CONFIG_FUJITSU_LAPTOP is not set +# CONFIG_FUJITSU_TABLET is not set +CONFIG_FUNCTION_ERROR_INJECTION=y +CONFIG_FUNCTION_GRAPH_TRACER=y +CONFIG_FUNCTION_PROFILER=y +CONFIG_FUNCTION_TRACER=y +CONFIG_FUSE_FS=y +CONFIG_FUSION=y +CONFIG_FUSION_CTL=m +CONFIG_FUSION_FC=m +CONFIG_FUSION_LOGGING=y +CONFIG_FUSION_MAX_SGE=128 +CONFIG_FUSION_SAS=m +CONFIG_FUSION_SPI=m +CONFIG_FUTEX=y +CONFIG_FUTEX_PI=y +CONFIG_FW_CACHE=y +# CONFIG_FW_CFG_SYSFS is not set +CONFIG_FW_LOADER=y +CONFIG_FW_LOADER_COMPRESS=y +CONFIG_FW_LOADER_PAGED_BUF=y +CONFIG_FW_LOADER_USER_HELPER=y +# CONFIG_FW_LOADER_USER_HELPER_FALLBACK is not set +CONFIG_GACT_PROB=y +# CONFIG_GAMEPORT is not set +CONFIG_GARP=m +CONFIG_GART_IOMMU=y +CONFIG_GCC_VERSION=100200 +# CONFIG_GCOV_KERNEL is not set +CONFIG_GDB_SCRIPTS=y +CONFIG_GENERIC_ALLOCATOR=y +CONFIG_GENERIC_BUG=y +CONFIG_GENERIC_BUG_RELATIVE_POINTERS=y +CONFIG_GENERIC_CALIBRATE_DELAY=y +CONFIG_GENERIC_CLOCKEVENTS=y +CONFIG_GENERIC_CLOCKEVENTS_BROADCAST=y +CONFIG_GENERIC_CLOCKEVENTS_MIN_ADJUST=y +CONFIG_GENERIC_CMOS_UPDATE=y +CONFIG_GENERIC_CPU=y +CONFIG_GENERIC_CPU_AUTOPROBE=y +CONFIG_GENERIC_CPU_VULNERABILITIES=y +CONFIG_GENERIC_EARLY_IOREMAP=y +CONFIG_GENERIC_FIND_FIRST_BIT=y +CONFIG_GENERIC_GETTIMEOFDAY=y +CONFIG_GENERIC_IOMAP=y +CONFIG_GENERIC_IRQ_CHIP=y +# CONFIG_GENERIC_IRQ_DEBUGFS is not set +CONFIG_GENERIC_IRQ_EFFECTIVE_AFF_MASK=y +CONFIG_GENERIC_IRQ_MATRIX_ALLOCATOR=y +CONFIG_GENERIC_IRQ_MIGRATION=y +CONFIG_GENERIC_IRQ_PROBE=y +CONFIG_GENERIC_IRQ_RESERVATION_MODE=y +CONFIG_GENERIC_IRQ_SHOW=y +CONFIG_GENERIC_ISA_DMA=y +CONFIG_GENERIC_MSI_IRQ=y +CONFIG_GENERIC_MSI_IRQ_DOMAIN=y +CONFIG_GENERIC_NET_UTILS=y +CONFIG_GENERIC_PCI_IOMAP=y +CONFIG_GENERIC_PENDING_IRQ=y +CONFIG_GENERIC_PHY=y +CONFIG_GENERIC_PINCONF=y +CONFIG_GENERIC_PTDUMP=y +CONFIG_GENERIC_SMP_IDLE_THREAD=y +CONFIG_GENERIC_STRNCPY_FROM_USER=y +CONFIG_GENERIC_STRNLEN_USER=y +CONFIG_GENERIC_TIME_VSYSCALL=y +CONFIG_GENERIC_TRACER=y +CONFIG_GENERIC_VDSO_TIME_NS=y +CONFIG_GENEVE=m +CONFIG_GENWQE=m +CONFIG_GENWQE_PLATFORM_ERROR_RECOVERY=0 +CONFIG_GFS2_FS=m +CONFIG_GFS2_FS_LOCKING_DLM=y +CONFIG_GLOB=y +# CONFIG_GLOB_SELFTEST is not set +CONFIG_GNSS=m +# CONFIG_GOLDFISH is not set +# CONFIG_GOOGLE_FIRMWARE is not set +CONFIG_GPD_POCKET_FAN=m +CONFIG_GPIOLIB=y +CONFIG_GPIOLIB_FASTPATH_LIMIT=512 +CONFIG_GPIOLIB_IRQCHIP=y +CONFIG_GPIO_104_DIO_48E=m +CONFIG_GPIO_104_IDIO_16=m +CONFIG_GPIO_104_IDI_48=m +CONFIG_GPIO_ACPI=y +CONFIG_GPIO_ADP5588=m +CONFIG_GPIO_AGGREGATOR=m +CONFIG_GPIO_AMD8111=m +CONFIG_GPIO_AMDPT=m +CONFIG_GPIO_AMD_FCH=m +CONFIG_GPIO_ARIZONA=m +CONFIG_GPIO_BD9571MWV=m +# CONFIG_GPIO_BT8XX is not set +CONFIG_GPIO_DA9052=m +CONFIG_GPIO_DWAPB=m +CONFIG_GPIO_EXAR=m +CONFIG_GPIO_F7188X=m +CONFIG_GPIO_GENERIC=m +CONFIG_GPIO_GENERIC_PLATFORM=m +CONFIG_GPIO_GPIO_MM=m +CONFIG_GPIO_ICH=m +CONFIG_GPIO_IT87=m +CONFIG_GPIO_JANZ_TTL=m +CONFIG_GPIO_LP3943=m +CONFIG_GPIO_LP873X=m +CONFIG_GPIO_MADERA=m +CONFIG_GPIO_MAX3191X=m +CONFIG_GPIO_MAX7300=m +CONFIG_GPIO_MAX7301=m +CONFIG_GPIO_MAX730X=m +CONFIG_GPIO_MAX732X=m +CONFIG_GPIO_MB86S7X=m +CONFIG_GPIO_MC33880=m +CONFIG_GPIO_MENZ127=m +CONFIG_GPIO_ML_IOH=m +CONFIG_GPIO_MOCKUP=m +CONFIG_GPIO_MSIC=y +CONFIG_GPIO_PCA953X=m +CONFIG_GPIO_PCA953X_IRQ=y +CONFIG_GPIO_PCF857X=m +CONFIG_GPIO_PCIE_IDIO_24=m +CONFIG_GPIO_PCI_IDIO_16=m +CONFIG_GPIO_PISOSR=m +CONFIG_GPIO_RDC321X=m +CONFIG_GPIO_SCH=m +CONFIG_GPIO_SCH311X=m +CONFIG_GPIO_SIOX=m +CONFIG_GPIO_SYSFS=y +CONFIG_GPIO_TPIC2810=m +CONFIG_GPIO_TPS65086=m +CONFIG_GPIO_TPS65912=m +CONFIG_GPIO_TQMX86=m +CONFIG_GPIO_VX855=m +CONFIG_GPIO_WHISKEY_COVE=m +CONFIG_GPIO_WINBOND=m +CONFIG_GPIO_WM831X=m +CONFIG_GPIO_WM8994=m +CONFIG_GPIO_WS16C48=m +CONFIG_GPIO_XILINX=y +CONFIG_GPIO_XRA1403=m +CONFIG_GRACE_PERIOD=m +# CONFIG_GREYBUS is not set +CONFIG_GRO_CELLS=y +# CONFIG_GS_FPGABOOT is not set +CONFIG_GTP=m +# CONFIG_GUP_BENCHMARK is not set +CONFIG_GVE=m +CONFIG_HABANA_AI=m +CONFIG_HALTPOLL_CPUIDLE=m +CONFIG_HAMACHI=m +CONFIG_HAMRADIO=y +CONFIG_HANGCHECK_TIMER=m +CONFIG_HARDENED_USERCOPY=y +CONFIG_HARDENED_USERCOPY_FALLBACK=y +# CONFIG_HARDENED_USERCOPY_PAGESPAN is not set +CONFIG_HARDIRQS_SW_RESEND=y +CONFIG_HARDLOCKUP_CHECK_TIMESTAMP=y +CONFIG_HARDLOCKUP_DETECTOR=y +CONFIG_HARDLOCKUP_DETECTOR_PERF=y +CONFIG_HAS_DMA=y +CONFIG_HAS_IOMEM=y +CONFIG_HAS_IOPORT_MAP=y +CONFIG_HAVE_ACPI_APEI=y +CONFIG_HAVE_ACPI_APEI_NMI=y +CONFIG_HAVE_ALIGNED_STRUCT_PAGE=y +CONFIG_HAVE_ARCH_AUDITSYSCALL=y +CONFIG_HAVE_ARCH_COMPAT_MMAP_BASES=y +CONFIG_HAVE_ARCH_HUGE_VMAP=y +CONFIG_HAVE_ARCH_JUMP_LABEL=y +CONFIG_HAVE_ARCH_JUMP_LABEL_RELATIVE=y +CONFIG_HAVE_ARCH_KASAN=y +CONFIG_HAVE_ARCH_KASAN_VMALLOC=y +CONFIG_HAVE_ARCH_KCSAN=y +CONFIG_HAVE_ARCH_KGDB=y +CONFIG_HAVE_ARCH_MMAP_RND_BITS=y +CONFIG_HAVE_ARCH_MMAP_RND_COMPAT_BITS=y +CONFIG_HAVE_ARCH_PREL32_RELOCATIONS=y +CONFIG_HAVE_ARCH_SECCOMP_FILTER=y +CONFIG_HAVE_ARCH_SOFT_DIRTY=y +CONFIG_HAVE_ARCH_STACKLEAK=y +CONFIG_HAVE_ARCH_THREAD_STRUCT_WHITELIST=y +CONFIG_HAVE_ARCH_TRACEHOOK=y +CONFIG_HAVE_ARCH_TRANSPARENT_HUGEPAGE=y +CONFIG_HAVE_ARCH_TRANSPARENT_HUGEPAGE_PUD=y +CONFIG_HAVE_ARCH_USERFAULTFD_WP=y +CONFIG_HAVE_ARCH_VMAP_STACK=y +CONFIG_HAVE_ARCH_WITHIN_STACK_FRAMES=y +CONFIG_HAVE_ASM_MODVERSIONS=y +CONFIG_HAVE_BOOTMEM_INFO_NODE=y +CONFIG_HAVE_CLK=y +CONFIG_HAVE_CLK_PREPARE=y +CONFIG_HAVE_CMPXCHG_DOUBLE=y +CONFIG_HAVE_CMPXCHG_LOCAL=y +CONFIG_HAVE_CONTEXT_TRACKING=y +CONFIG_HAVE_COPY_THREAD_TLS=y +CONFIG_HAVE_C_RECORDMCOUNT=y +CONFIG_HAVE_DEBUG_KMEMLEAK=y +CONFIG_HAVE_DMA_CONTIGUOUS=y +CONFIG_HAVE_DYNAMIC_FTRACE=y +CONFIG_HAVE_DYNAMIC_FTRACE_WITH_DIRECT_CALLS=y +CONFIG_HAVE_DYNAMIC_FTRACE_WITH_REGS=y +CONFIG_HAVE_EBPF_JIT=y +CONFIG_HAVE_EFFICIENT_UNALIGNED_ACCESS=y +CONFIG_HAVE_EISA=y +CONFIG_HAVE_EXIT_THREAD=y +CONFIG_HAVE_FAST_GUP=y +CONFIG_HAVE_FENTRY=y +CONFIG_HAVE_FTRACE_MCOUNT_RECORD=y +CONFIG_HAVE_FUNCTION_ARG_ACCESS_API=y +CONFIG_HAVE_FUNCTION_ERROR_INJECTION=y +CONFIG_HAVE_FUNCTION_GRAPH_TRACER=y +CONFIG_HAVE_FUNCTION_TRACER=y +CONFIG_HAVE_GCC_PLUGINS=y +CONFIG_HAVE_GENERIC_VDSO=y +CONFIG_HAVE_HARDENED_USERCOPY_ALLOCATOR=y +CONFIG_HAVE_HARDLOCKUP_DETECTOR_PERF=y +CONFIG_HAVE_HW_BREAKPOINT=y +CONFIG_HAVE_IDE=y +CONFIG_HAVE_INTEL_TXT=y +CONFIG_HAVE_IOREMAP_PROT=y +CONFIG_HAVE_IRQ_TIME_ACCOUNTING=y +CONFIG_HAVE_KERNEL_BZIP2=y +CONFIG_HAVE_KERNEL_GZIP=y +CONFIG_HAVE_KERNEL_LZ4=y +CONFIG_HAVE_KERNEL_LZMA=y +CONFIG_HAVE_KERNEL_LZO=y +CONFIG_HAVE_KERNEL_XZ=y +CONFIG_HAVE_KPROBES=y +CONFIG_HAVE_KPROBES_ON_FTRACE=y +CONFIG_HAVE_KRETPROBES=y +CONFIG_HAVE_KVM=y +CONFIG_HAVE_KVM_CPU_RELAX_INTERCEPT=y +CONFIG_HAVE_KVM_EVENTFD=y +CONFIG_HAVE_KVM_IRQCHIP=y +CONFIG_HAVE_KVM_IRQFD=y +CONFIG_HAVE_KVM_IRQ_BYPASS=y +CONFIG_HAVE_KVM_IRQ_ROUTING=y +CONFIG_HAVE_KVM_MSI=y +CONFIG_HAVE_KVM_NO_POLL=y +CONFIG_HAVE_LIVEPATCH=y +CONFIG_HAVE_MEMORY_PRESENT=y +CONFIG_HAVE_MIXED_BREAKPOINTS_REGS=y +CONFIG_HAVE_MMIOTRACE_SUPPORT=y +CONFIG_HAVE_MOD_ARCH_SPECIFIC=y +CONFIG_HAVE_MOVE_PMD=y +CONFIG_HAVE_NET_DSA=y +CONFIG_HAVE_NMI=y +CONFIG_HAVE_OPROFILE=y +CONFIG_HAVE_OPTPROBES=y +CONFIG_HAVE_PCI=y +CONFIG_HAVE_PCSPKR_PLATFORM=y +CONFIG_HAVE_PERF_EVENTS=y +CONFIG_HAVE_PERF_EVENTS_NMI=y +CONFIG_HAVE_PERF_REGS=y +CONFIG_HAVE_PERF_USER_STACK_DUMP=y +CONFIG_HAVE_REGS_AND_STACK_ACCESS_API=y +CONFIG_HAVE_RELIABLE_STACKTRACE=y +CONFIG_HAVE_RSEQ=y +CONFIG_HAVE_SETUP_PER_CPU_AREA=y +CONFIG_HAVE_STACKPROTECTOR=y +CONFIG_HAVE_STACK_VALIDATION=y +CONFIG_HAVE_SYSCALL_TRACEPOINTS=y +CONFIG_HAVE_UID16=y +CONFIG_HAVE_UNSTABLE_SCHED_CLOCK=y +CONFIG_HAVE_USER_RETURN_NOTIFIER=y +CONFIG_HAVE_VIRT_CPU_ACCOUNTING_GEN=y +CONFIG_HD44780=m +CONFIG_HDLC=m +CONFIG_HDLC_CISCO=m +CONFIG_HDLC_FR=m +CONFIG_HDLC_PPP=m +CONFIG_HDLC_RAW=m +CONFIG_HDLC_RAW_ETH=m +CONFIG_HDLC_X25=m +CONFIG_HDMI=y +# CONFIG_HEADERS_INSTALL is not set +CONFIG_HFSPLUS_FS=m +CONFIG_HFS_FS=m +CONFIG_HIBERNATE_CALLBACKS=y +CONFIG_HIBERNATION=y +CONFIG_HIBERNATION_SNAPSHOT_DEV=y +CONFIG_HID=m +CONFIG_HIDRAW=y +# CONFIG_HID_A4TECH is not set +# CONFIG_HID_ACRUX is not set +# CONFIG_HID_ALPS is not set +# CONFIG_HID_APPLE is not set +# CONFIG_HID_AUREAL is not set +# CONFIG_HID_BATTERY_STRENGTH is not set +# CONFIG_HID_BELKIN is not set +# CONFIG_HID_CHERRY is not set +# CONFIG_HID_CHICONY is not set +# CONFIG_HID_CMEDIA is not set +# CONFIG_HID_CORSAIR is not set +CONFIG_HID_COUGAR=m +# CONFIG_HID_CYPRESS is not set +# CONFIG_HID_DRAGONRISE is not set +# CONFIG_HID_ELECOM is not set +# CONFIG_HID_EMS_FF is not set +# CONFIG_HID_EZKEY is not set +# CONFIG_HID_GEMBIRD is not set +CONFIG_HID_GENERIC=m +# CONFIG_HID_GFRM is not set +CONFIG_HID_GLORIOUS=m +# CONFIG_HID_GREENASIA is not set +# CONFIG_HID_GYRATION is not set +CONFIG_HID_HYPERV_MOUSE=m +# CONFIG_HID_ICADE is not set +CONFIG_HID_ITE=m +CONFIG_HID_JABRA=m +# CONFIG_HID_KENSINGTON is not set +# CONFIG_HID_KEYTOUCH is not set +# CONFIG_HID_KYE is not set +# CONFIG_HID_LCPOWER is not set +CONFIG_HID_LED=m +# CONFIG_HID_LENOVO is not set +# CONFIG_HID_LOGITECH is not set +CONFIG_HID_MACALLY=m +# CONFIG_HID_MAGICMOUSE is not set +CONFIG_HID_MALTRON=m +CONFIG_HID_MAYFLASH=m +# CONFIG_HID_MICROSOFT is not set +# CONFIG_HID_MONTEREY is not set +# CONFIG_HID_MULTITOUCH is not set +CONFIG_HID_NTI=m +# CONFIG_HID_ORTEK is not set +# CONFIG_HID_PANTHERLORD is not set +# CONFIG_HID_PETALYNX is not set +# CONFIG_HID_PICOLCD is not set +# CONFIG_HID_PID is not set +# CONFIG_HID_PLANTRONICS is not set +# CONFIG_HID_PRIMAX is not set +CONFIG_HID_REDRAGON=m +# CONFIG_HID_RMI is not set +# CONFIG_HID_SAITEK is not set +# CONFIG_HID_SAMSUNG is not set +CONFIG_HID_SENSOR_CUSTOM_SENSOR=m +CONFIG_HID_SENSOR_HUB=m +# CONFIG_HID_SMARTJOYPLUS is not set +# CONFIG_HID_SPEEDLINK is not set +CONFIG_HID_STEAM=m +# CONFIG_HID_STEELSERIES is not set +# CONFIG_HID_SUNPLUS is not set +CONFIG_HID_THINGM=m +# CONFIG_HID_THRUSTMASTER is not set +# CONFIG_HID_TIVO is not set +# CONFIG_HID_TOPSEED is not set +# CONFIG_HID_TWINHAN is not set +CONFIG_HID_UDRAW_PS3=m +CONFIG_HID_VIEWSONIC=m +# CONFIG_HID_WALTOP is not set +CONFIG_HID_WIIMOTE=m +# CONFIG_HID_XINMO is not set +# CONFIG_HID_ZEROPLUS is not set +# CONFIG_HID_ZYDACRON is not set +CONFIG_HIGH_RES_TIMERS=y +CONFIG_HINIC=m +CONFIG_HIO=m +# CONFIG_HIPPI is not set +CONFIG_HIST_TRIGGERS=y +# CONFIG_HIST_TRIGGERS_DEBUG is not set +CONFIG_HMC6352=m +CONFIG_HMEM_REPORTING=y +CONFIG_HMM_MIRROR=y +CONFIG_HOTPLUG_CPU=y +CONFIG_HOTPLUG_PCI=y +CONFIG_HOTPLUG_PCI_ACPI=y +CONFIG_HOTPLUG_PCI_ACPI_IBM=m +CONFIG_HOTPLUG_PCI_CPCI=y +CONFIG_HOTPLUG_PCI_CPCI_GENERIC=m +CONFIG_HOTPLUG_PCI_CPCI_ZT5550=m +CONFIG_HOTPLUG_PCI_PCIE=y +CONFIG_HOTPLUG_PCI_SHPC=y +CONFIG_HOTPLUG_SMT=y +CONFIG_HPET=y +CONFIG_HPET_EMULATE_RTC=y +CONFIG_HPET_MMAP=y +CONFIG_HPET_MMAP_DEFAULT=y +CONFIG_HPET_TIMER=y +CONFIG_HPFS_FS=m +# CONFIG_HP_ACCEL is not set +# CONFIG_HP_ILO is not set +# CONFIG_HP_WATCHDOG is not set +# CONFIG_HP_WIRELESS is not set +# CONFIG_HP_WMI is not set +# CONFIG_HSA_AMD is not set +# CONFIG_HSI is not set +CONFIG_HSR=m +CONFIG_HSU_DMA=m +CONFIG_HTC_PASIC3=m +CONFIG_HUGETLBFS=y +CONFIG_HUGETLB_PAGE=y +CONFIG_HVC_DRIVER=y +CONFIG_HWLAT_TRACER=y +CONFIG_HWMON=y +# CONFIG_HWMON_DEBUG_CHIP is not set +CONFIG_HWMON_VID=m +CONFIG_HWPOISON_INJECT=m +CONFIG_HWSPINLOCK=y +CONFIG_HW_CONSOLE=y +CONFIG_HW_RANDOM=y +CONFIG_HW_RANDOM_AMD=m +CONFIG_HW_RANDOM_INTEL=m +CONFIG_HW_RANDOM_TIMERIOMEM=m +CONFIG_HW_RANDOM_TPM=y +CONFIG_HW_RANDOM_VIA=m +CONFIG_HW_RANDOM_VIRTIO=m +CONFIG_HYPERV=y +CONFIG_HYPERVISOR_GUEST=y +CONFIG_HYPERV_BALLOON=m +CONFIG_HYPERV_INFINIBAND_ND=m +CONFIG_HYPERV_IOMMU=y +CONFIG_HYPERV_KEYBOARD=m +CONFIG_HYPERV_NET=m +CONFIG_HYPERV_STORAGE=y +# CONFIG_HYPERV_TESTING is not set +CONFIG_HYPERV_TIMER=y +CONFIG_HYPERV_UTILS=m +CONFIG_HYPERV_VSOCKETS=m +CONFIG_HZ=250 +# CONFIG_HZ_100 is not set +# CONFIG_HZ_1000 is not set +CONFIG_HZ_250=y +# CONFIG_HZ_300 is not set +# CONFIG_HZ_PERIODIC is not set +CONFIG_I2C=m +CONFIG_I2C_ALGOBIT=m +CONFIG_I2C_ALGOPCA=m +CONFIG_I2C_ALI1535=m +CONFIG_I2C_ALI1563=m +CONFIG_I2C_ALI15X3=m +CONFIG_I2C_AMD756=m +CONFIG_I2C_AMD756_S4882=m +CONFIG_I2C_AMD8111=m +# CONFIG_I2C_AMD_MP2 is not set +CONFIG_I2C_BOARDINFO=y +CONFIG_I2C_CBUS_GPIO=m +CONFIG_I2C_CHARDEV=m +CONFIG_I2C_COMPAT=y +# CONFIG_I2C_DEBUG_ALGO is not set +# CONFIG_I2C_DEBUG_BUS is not set +# CONFIG_I2C_DEBUG_CORE is not set +CONFIG_I2C_DESIGNWARE_BAYTRAIL=y +CONFIG_I2C_DESIGNWARE_CORE=m +CONFIG_I2C_DESIGNWARE_PCI=m +CONFIG_I2C_DESIGNWARE_PLATFORM=m +# CONFIG_I2C_DESIGNWARE_SLAVE is not set +# CONFIG_I2C_DIOLAN_U2C is not set +# CONFIG_I2C_EMEV2 is not set +CONFIG_I2C_GPIO=m +# CONFIG_I2C_GPIO_FAULT_INJECTOR is not set +CONFIG_I2C_HELPER_AUTO=y +# CONFIG_I2C_HID is not set +CONFIG_I2C_I801=m +CONFIG_I2C_ISCH=m +CONFIG_I2C_ISMT=m +CONFIG_I2C_MLXCPLD=m +CONFIG_I2C_MULTI_INSTANTIATE=m +CONFIG_I2C_MUX=m +# CONFIG_I2C_MUX_GPIO is not set +CONFIG_I2C_MUX_LTC4306=m +# CONFIG_I2C_MUX_MLXCPLD is not set +# CONFIG_I2C_MUX_PCA9541 is not set +# CONFIG_I2C_MUX_PCA954x is not set +# CONFIG_I2C_MUX_REG is not set +CONFIG_I2C_NFORCE2=m +CONFIG_I2C_NFORCE2_S4985=m +CONFIG_I2C_NVIDIA_GPU=m +CONFIG_I2C_OCORES=m +CONFIG_I2C_PARPORT=m +CONFIG_I2C_PCA_PLATFORM=m +# CONFIG_I2C_PIIX4 is not set +# CONFIG_I2C_ROBOTFUZZ_OSIF is not set +CONFIG_I2C_SCMI=m +CONFIG_I2C_SIMTEC=m +CONFIG_I2C_SIS5595=m +CONFIG_I2C_SIS630=m +CONFIG_I2C_SIS96X=m +# CONFIG_I2C_SLAVE is not set +CONFIG_I2C_SMBUS=m +CONFIG_I2C_STUB=m +CONFIG_I2C_TAOS_EVM=m +# CONFIG_I2C_TINY_USB is not set +CONFIG_I2C_VIA=m +CONFIG_I2C_VIAPRO=m +CONFIG_I2C_XILINX=m +CONFIG_I3C=m +CONFIG_I40E=m +CONFIG_I40EVF=m +CONFIG_I40E_DCB=y +CONFIG_I6300ESB_WDT=m +CONFIG_I8253_LOCK=y +CONFIG_I8K=m +CONFIG_IA32_EMULATION=y +CONFIG_IA32_FEAT_CTL=y +CONFIG_IAVF=m +CONFIG_IB700_WDT=m +CONFIG_IBMASR=m +CONFIG_IBM_ASM=m +# CONFIG_IBM_RTL is not set +CONFIG_ICE=m +# CONFIG_ICPLUS_PHY is not set +CONFIG_ICS932S401=m +# CONFIG_IDE is not set +# CONFIG_IDEAPAD_LAPTOP is not set +CONFIG_IDLE_PAGE_TRACKING=y +CONFIG_IE6XX_WDT=m +CONFIG_IEEE802154=m +CONFIG_IEEE802154_6LOWPAN=m +# CONFIG_IEEE802154_ADF7242 is not set +# CONFIG_IEEE802154_AT86RF230 is not set +# CONFIG_IEEE802154_ATUSB is not set +CONFIG_IEEE802154_CA8210=m +CONFIG_IEEE802154_CA8210_DEBUGFS=y +# CONFIG_IEEE802154_CC2520 is not set +CONFIG_IEEE802154_DRIVERS=m +# CONFIG_IEEE802154_FAKELB is not set +CONFIG_IEEE802154_HWSIM=m +CONFIG_IEEE802154_MCR20A=m +# CONFIG_IEEE802154_MRF24J40 is not set +# CONFIG_IEEE802154_NL802154_EXPERIMENTAL is not set +CONFIG_IEEE802154_SOCKET=m +CONFIG_IFB=m +CONFIG_IFCVF=m +CONFIG_IGB=m +CONFIG_IGBVF=m +CONFIG_IGB_DCA=y +CONFIG_IGB_HWMON=y +CONFIG_IGC=m +# CONFIG_IIO is not set +# CONFIG_IKCONFIG is not set +CONFIG_IKHEADERS=m +CONFIG_ILLEGAL_POINTER_VALUE=0xdead000000000000 +CONFIG_IMA=y +CONFIG_IMA_APPRAISE=y +CONFIG_IMA_APPRAISE_BOOTPARAM=y +# CONFIG_IMA_APPRAISE_BUILD_POLICY is not set +CONFIG_IMA_APPRAISE_MODSIG=y +# CONFIG_IMA_ARCH_POLICY is not set +# CONFIG_IMA_BLACKLIST_KEYRING is not set +CONFIG_IMA_DEFAULT_HASH="sha1" +CONFIG_IMA_DEFAULT_HASH_SHA1=y +# CONFIG_IMA_DEFAULT_HASH_SHA256 is not set +# CONFIG_IMA_DEFAULT_HASH_SHA512 is not set +CONFIG_IMA_DEFAULT_TEMPLATE="ima-ng" +# CONFIG_IMA_KEYRINGS_PERMIT_SIGNED_BY_BUILTIN_OR_SECONDARY is not set +# CONFIG_IMA_LOAD_X509 is not set +CONFIG_IMA_LSM_RULES=y +CONFIG_IMA_MEASURE_ASYMMETRIC_KEYS=y +CONFIG_IMA_MEASURE_PCR_IDX=10 +CONFIG_IMA_NG_TEMPLATE=y +CONFIG_IMA_QUEUE_EARLY_BOOT_KEYS=y +# CONFIG_IMA_READ_POLICY is not set +# CONFIG_IMA_SECURE_AND_OR_TRUSTED_BOOT is not set +# CONFIG_IMA_SIG_TEMPLATE is not set +# CONFIG_IMA_TEMPLATE is not set +CONFIG_IMA_TRUSTED_KEYRING=y +# CONFIG_IMA_WRITE_POLICY is not set +CONFIG_IMG_ASCII_LCD=m +CONFIG_INET=y +CONFIG_INET6_AH=m +CONFIG_INET6_ESP=m +CONFIG_INET6_ESPINTCP=y +CONFIG_INET6_ESP_OFFLOAD=m +CONFIG_INET6_IPCOMP=m +CONFIG_INET6_TUNNEL=m +CONFIG_INET6_XFRM_TUNNEL=m +CONFIG_INET_AH=m +CONFIG_INET_DCCP_DIAG=m +CONFIG_INET_DIAG=m +CONFIG_INET_DIAG_DESTROY=y +CONFIG_INET_ESP=m +CONFIG_INET_ESPINTCP=y +CONFIG_INET_ESP_OFFLOAD=m +CONFIG_INET_IPCOMP=m +CONFIG_INET_RAW_DIAG=m +CONFIG_INET_SCTP_DIAG=m +CONFIG_INET_TCP_DIAG=m +CONFIG_INET_TUNNEL=m +CONFIG_INET_UDP_DIAG=m +CONFIG_INET_XFRM_TUNNEL=m +CONFIG_INFINIBAND=m +CONFIG_INFINIBAND_ADDR_TRANS=y +CONFIG_INFINIBAND_ADDR_TRANS_CONFIGFS=y +# CONFIG_INFINIBAND_BNXT_RE is not set +# CONFIG_INFINIBAND_CXGB4 is not set +CONFIG_INFINIBAND_EFA=m +# CONFIG_INFINIBAND_EXP_LEGACY_VERBS_NEW_UAPI is not set +# CONFIG_INFINIBAND_I40IW is not set +CONFIG_INFINIBAND_IPOIB=m +# CONFIG_INFINIBAND_IPOIB_CM is not set +CONFIG_INFINIBAND_IPOIB_DEBUG=y +# CONFIG_INFINIBAND_IPOIB_DEBUG_DATA is not set +CONFIG_INFINIBAND_ISER=m +CONFIG_INFINIBAND_ISERT=m +CONFIG_INFINIBAND_MTHCA=m +# CONFIG_INFINIBAND_MTHCA_DEBUG is not set +# CONFIG_INFINIBAND_OCRDMA is not set +CONFIG_INFINIBAND_ON_DEMAND_PAGING=y +CONFIG_INFINIBAND_OPA_VNIC=m +# CONFIG_INFINIBAND_RDMAVT is not set +CONFIG_INFINIBAND_RTRS=m +CONFIG_INFINIBAND_RTRS_CLIENT=m +CONFIG_INFINIBAND_RTRS_SERVER=m +CONFIG_INFINIBAND_SRP=m +# CONFIG_INFINIBAND_SRPT is not set +CONFIG_INFINIBAND_USER_ACCESS=m +CONFIG_INFINIBAND_USER_MAD=m +CONFIG_INFINIBAND_USER_MEM=y +CONFIG_INFINIBAND_USNIC=m +CONFIG_INFINIBAND_VIRT_DMA=y +CONFIG_INITRAMFS_SOURCE="" +CONFIG_INIT_ENV_ARG_LIMIT=32 +CONFIG_INIT_ON_ALLOC_DEFAULT_ON=y +# CONFIG_INIT_ON_FREE_DEFAULT_ON is not set +CONFIG_INIT_STACK_NONE=y +CONFIG_INLINE_READ_UNLOCK=y +CONFIG_INLINE_READ_UNLOCK_IRQ=y +CONFIG_INLINE_SPIN_UNLOCK_IRQ=y +CONFIG_INLINE_WRITE_UNLOCK=y +CONFIG_INLINE_WRITE_UNLOCK_IRQ=y +CONFIG_INOTIFY_USER=y +CONFIG_INPUT=y +# CONFIG_INPUT_AD714X is not set +# CONFIG_INPUT_ADXL34X is not set +# CONFIG_INPUT_APANEL is not set +# CONFIG_INPUT_ATI_REMOTE2 is not set +# CONFIG_INPUT_ATLAS_BTNS is not set +# CONFIG_INPUT_AXP20X_PEK is not set +# CONFIG_INPUT_BMA150 is not set +# CONFIG_INPUT_CM109 is not set +# CONFIG_INPUT_CMA3000 is not set +# CONFIG_INPUT_DA9052_ONKEY is not set +# CONFIG_INPUT_DA9063_ONKEY is not set +# CONFIG_INPUT_DRV260X_HAPTICS is not set +# CONFIG_INPUT_DRV2665_HAPTICS is not set +# CONFIG_INPUT_DRV2667_HAPTICS is not set +# CONFIG_INPUT_E3X0_BUTTON is not set +CONFIG_INPUT_EVBUG=m +CONFIG_INPUT_EVDEV=y +CONFIG_INPUT_FF_MEMLESS=m +# CONFIG_INPUT_GPIO_BEEPER is not set +# CONFIG_INPUT_GPIO_DECODER is not set +# CONFIG_INPUT_GPIO_ROTARY_ENCODER is not set +CONFIG_INPUT_GPIO_VIBRA=m +# CONFIG_INPUT_IDEAPAD_SLIDEBAR is not set +# CONFIG_INPUT_IMS_PCU is not set +CONFIG_INPUT_IQS269A=m +CONFIG_INPUT_JOYDEV=m +# CONFIG_INPUT_JOYSTICK is not set +CONFIG_INPUT_KEYBOARD=y +# CONFIG_INPUT_KEYSPAN_REMOTE is not set +# CONFIG_INPUT_KXTJ9 is not set +# CONFIG_INPUT_LEDS is not set +CONFIG_INPUT_MATRIXKMAP=m +# CONFIG_INPUT_MC13783_PWRBUTTON is not set +CONFIG_INPUT_MISC=y +# CONFIG_INPUT_MMA8450 is not set +# CONFIG_INPUT_MOUSE is not set +CONFIG_INPUT_MOUSEDEV=y +CONFIG_INPUT_MOUSEDEV_PSAUX=y +CONFIG_INPUT_MOUSEDEV_SCREEN_X=1024 +CONFIG_INPUT_MOUSEDEV_SCREEN_Y=768 +# CONFIG_INPUT_PCAP is not set +# CONFIG_INPUT_PCF50633_PMU is not set +# CONFIG_INPUT_PCF8574 is not set +# CONFIG_INPUT_PCSPKR is not set +CONFIG_INPUT_POLLDEV=m +# CONFIG_INPUT_POWERMATE is not set +# CONFIG_INPUT_REGULATOR_HAPTIC is not set +# CONFIG_INPUT_RETU_PWRBUTTON is not set +CONFIG_INPUT_SPARSEKMAP=m +CONFIG_INPUT_TABLET=y +# CONFIG_INPUT_TOUCHSCREEN is not set +CONFIG_INPUT_UINPUT=y +# CONFIG_INPUT_WM831X_ON is not set +# CONFIG_INPUT_YEALINK is not set +CONFIG_INSTRUCTION_DECODER=y +# CONFIG_INT340X_THERMAL is not set +CONFIG_INTEGRITY=y +CONFIG_INTEGRITY_ASYMMETRIC_KEYS=y +CONFIG_INTEGRITY_AUDIT=y +CONFIG_INTEGRITY_PLATFORM_KEYRING=y +CONFIG_INTEGRITY_SIGNATURE=y +CONFIG_INTEGRITY_TRUSTED_KEYRING=y +CONFIG_INTEL_ATOMISP=y +CONFIG_INTEL_BXTWC_PMIC_TMU=m +CONFIG_INTEL_BXT_PMIC_THERMAL=m +CONFIG_INTEL_CHTDC_TI_PWRBTN=m +CONFIG_INTEL_GTT=y +CONFIG_INTEL_HID_EVENT=m +CONFIG_INTEL_IDLE=y +CONFIG_INTEL_IDMA64=m +CONFIG_INTEL_IDXD=m +CONFIG_INTEL_INT0002_VGPIO=m +CONFIG_INTEL_IOATDMA=m +CONFIG_INTEL_IOMMU=y +# CONFIG_INTEL_IOMMU_DEFAULT_ON is not set +CONFIG_INTEL_IOMMU_FLOPPY_WA=y +# CONFIG_INTEL_IOMMU_SCALABLE_MODE_DEFAULT_ON is not set +CONFIG_INTEL_IOMMU_SVM=y +CONFIG_INTEL_IPS=m +CONFIG_INTEL_ISH_FIRMWARE_DOWNLOADER=m +CONFIG_INTEL_ISH_HID=m +CONFIG_INTEL_MEI=m +CONFIG_INTEL_MEI_HDCP=m +CONFIG_INTEL_MEI_ME=m +# CONFIG_INTEL_MEI_TXE is not set +CONFIG_INTEL_MEI_WDT=m +CONFIG_INTEL_MFLD_THERMAL=m +# CONFIG_INTEL_MIC_BUS is not set +CONFIG_INTEL_MID_POWER_BUTTON=m +CONFIG_INTEL_MRFLD_PWRBTN=m +# CONFIG_INTEL_OAKTRAIL is not set +CONFIG_INTEL_PCH_THERMAL=m +CONFIG_INTEL_PMC_CORE=y +CONFIG_INTEL_POWERCLAMP=m +CONFIG_INTEL_PUNIT_IPC=m +CONFIG_INTEL_RST=m +CONFIG_INTEL_SCU=y +CONFIG_INTEL_SCU_IPC=y +CONFIG_INTEL_SCU_IPC_UTIL=m +CONFIG_INTEL_SCU_PCI=y +CONFIG_INTEL_SCU_PLATFORM=m +CONFIG_INTEL_SMARTCONNECT=m +CONFIG_INTEL_SOC_DTS_IOSF_CORE=m +CONFIG_INTEL_SOC_DTS_THERMAL=m +CONFIG_INTEL_SOC_PMIC_BXTWC=m +CONFIG_INTEL_SOC_PMIC_CHTDC_TI=m +CONFIG_INTEL_SOC_PMIC_MRFLD=m +CONFIG_INTEL_SPEED_SELECT_INTERFACE=m +CONFIG_INTEL_TELEMETRY=m +# CONFIG_INTEL_TH is not set +CONFIG_INTEL_TURBO_MAX_3=y +CONFIG_INTEL_TXT=y +CONFIG_INTEL_UNCORE_FREQ_CONTROL=m +# CONFIG_INTEL_VBTN is not set +CONFIG_INTEL_WMI_SBL_FW_UPDATE=m +CONFIG_INTEL_WMI_THUNDERBOLT=m +# CONFIG_INTEL_XWAY_PHY is not set +CONFIG_INTERCONNECT=y +CONFIG_INTERVAL_TREE=y +CONFIG_IOASID=y +CONFIG_IOMMU_API=y +# CONFIG_IOMMU_DEBUG is not set +# CONFIG_IOMMU_DEBUGFS is not set +# CONFIG_IOMMU_DEFAULT_PASSTHROUGH is not set +CONFIG_IOMMU_DMA=y +CONFIG_IOMMU_HELPER=y +CONFIG_IOMMU_IOVA=y +CONFIG_IOMMU_SUPPORT=y +# CONFIG_ION is not set +CONFIG_IONIC=m +CONFIG_IOSCHED_BFQ=m +CONFIG_IOSF_MBI=y +CONFIG_IOSF_MBI_DEBUG=y +# CONFIG_IO_DELAY_0X80 is not set +CONFIG_IO_DELAY_0XED=y +# CONFIG_IO_DELAY_NONE is not set +# CONFIG_IO_DELAY_UDELAY is not set +# CONFIG_IO_STRICT_DEVMEM is not set +CONFIG_IO_URING=y +CONFIG_IO_WQ=y +CONFIG_IP6_NF_FILTER=m +CONFIG_IP6_NF_IPTABLES=m +CONFIG_IP6_NF_MANGLE=m +CONFIG_IP6_NF_MATCH_AH=m +CONFIG_IP6_NF_MATCH_EUI64=m +CONFIG_IP6_NF_MATCH_FRAG=m +CONFIG_IP6_NF_MATCH_HL=m +CONFIG_IP6_NF_MATCH_IPV6HEADER=m +CONFIG_IP6_NF_MATCH_MH=m +CONFIG_IP6_NF_MATCH_OPTS=m +CONFIG_IP6_NF_MATCH_RPFILTER=m +CONFIG_IP6_NF_MATCH_RT=m +CONFIG_IP6_NF_MATCH_SRH=m +CONFIG_IP6_NF_NAT=m +CONFIG_IP6_NF_RAW=m +CONFIG_IP6_NF_SECURITY=m +CONFIG_IP6_NF_TARGET_HL=m +CONFIG_IP6_NF_TARGET_MASQUERADE=m +CONFIG_IP6_NF_TARGET_NPT=m +CONFIG_IP6_NF_TARGET_REJECT=m +CONFIG_IP6_NF_TARGET_SYNPROXY=m +CONFIG_IPACK_BUS=m +CONFIG_IPC_NS=y +# CONFIG_IPDDP is not set +CONFIG_IPMI_DEVICE_INTERFACE=m +CONFIG_IPMI_DMI_DECODE=y +CONFIG_IPMI_HANDLER=m +# CONFIG_IPMI_PANIC_EVENT is not set +CONFIG_IPMI_PLAT_DATA=y +CONFIG_IPMI_POWEROFF=m +CONFIG_IPMI_SI=m +CONFIG_IPMI_SSIF=m +CONFIG_IPMI_WATCHDOG=m +CONFIG_IPV6=y +CONFIG_IPV6_FOU=m +CONFIG_IPV6_FOU_TUNNEL=m +CONFIG_IPV6_GRE=m +CONFIG_IPV6_ILA=m +CONFIG_IPV6_MIP6=m +CONFIG_IPV6_MROUTE=y +CONFIG_IPV6_MROUTE_MULTIPLE_TABLES=y +CONFIG_IPV6_MULTIPLE_TABLES=y +CONFIG_IPV6_NDISC_NODETYPE=y +# CONFIG_IPV6_OPTIMISTIC_DAD is not set +CONFIG_IPV6_PIMSM_V2=y +CONFIG_IPV6_ROUTER_PREF=y +CONFIG_IPV6_ROUTE_INFO=y +# CONFIG_IPV6_RPL_LWTUNNEL is not set +CONFIG_IPV6_SEG6_BPF=y +CONFIG_IPV6_SEG6_HMAC=y +CONFIG_IPV6_SEG6_LWTUNNEL=y +CONFIG_IPV6_SIT=m +CONFIG_IPV6_SIT_6RD=y +CONFIG_IPV6_SUBTREES=y +CONFIG_IPV6_TUNNEL=m +CONFIG_IPV6_VTI=m +CONFIG_IPVLAN=m +CONFIG_IPVLAN_L3S=y +CONFIG_IPVTAP=m +CONFIG_IP_ADVANCED_ROUTER=y +CONFIG_IP_DCCP=m +# CONFIG_IP_DCCP_CCID2_DEBUG is not set +# CONFIG_IP_DCCP_CCID3 is not set +# CONFIG_IP_DCCP_DEBUG is not set +CONFIG_IP_FIB_TRIE_STATS=y +CONFIG_IP_MROUTE=y +CONFIG_IP_MROUTE_COMMON=y +# CONFIG_IP_MROUTE_MULTIPLE_TABLES is not set +CONFIG_IP_MULTICAST=y +CONFIG_IP_MULTIPLE_TABLES=y +CONFIG_IP_NF_ARPFILTER=m +CONFIG_IP_NF_ARPTABLES=m +CONFIG_IP_NF_ARP_MANGLE=m +CONFIG_IP_NF_FILTER=m +CONFIG_IP_NF_IPTABLES=m +CONFIG_IP_NF_MANGLE=m +CONFIG_IP_NF_MATCH_AH=m +CONFIG_IP_NF_MATCH_ECN=m +CONFIG_IP_NF_MATCH_RPFILTER=m +CONFIG_IP_NF_MATCH_TTL=m +CONFIG_IP_NF_NAT=m +CONFIG_IP_NF_RAW=m +CONFIG_IP_NF_SECURITY=m +CONFIG_IP_NF_TARGET_CLUSTERIP=m +CONFIG_IP_NF_TARGET_ECN=m +CONFIG_IP_NF_TARGET_MASQUERADE=m +CONFIG_IP_NF_TARGET_NETMAP=m +CONFIG_IP_NF_TARGET_REDIRECT=m +CONFIG_IP_NF_TARGET_REJECT=m +CONFIG_IP_NF_TARGET_SYNPROXY=m +CONFIG_IP_NF_TARGET_TTL=m +CONFIG_IP_PIMSM_V1=y +CONFIG_IP_PIMSM_V2=y +# CONFIG_IP_PNP is not set +CONFIG_IP_ROUTE_CLASSID=y +CONFIG_IP_ROUTE_MULTIPATH=y +CONFIG_IP_ROUTE_VERBOSE=y +CONFIG_IP_SCTP=m +CONFIG_IP_SET=m +CONFIG_IP_SET_BITMAP_IP=m +CONFIG_IP_SET_BITMAP_IPMAC=m +CONFIG_IP_SET_BITMAP_PORT=m +CONFIG_IP_SET_HASH_IP=m +CONFIG_IP_SET_HASH_IPMAC=m +CONFIG_IP_SET_HASH_IPMARK=m +CONFIG_IP_SET_HASH_IPPORT=m +CONFIG_IP_SET_HASH_IPPORTIP=m +CONFIG_IP_SET_HASH_IPPORTNET=m +CONFIG_IP_SET_HASH_MAC=m +CONFIG_IP_SET_HASH_NET=m +CONFIG_IP_SET_HASH_NETIFACE=m +CONFIG_IP_SET_HASH_NETNET=m +CONFIG_IP_SET_HASH_NETPORT=m +CONFIG_IP_SET_HASH_NETPORTNET=m +CONFIG_IP_SET_LIST_SET=m +CONFIG_IP_SET_MAX=256 +CONFIG_IP_VS=m +# CONFIG_IP_VS_DEBUG is not set +CONFIG_IP_VS_DH=m +CONFIG_IP_VS_FO=m +CONFIG_IP_VS_FTP=m +CONFIG_IP_VS_IPV6=y +CONFIG_IP_VS_LBLC=m +CONFIG_IP_VS_LBLCR=m +CONFIG_IP_VS_LC=m +CONFIG_IP_VS_MH=m +CONFIG_IP_VS_MH_TAB_INDEX=12 +CONFIG_IP_VS_NFCT=y +CONFIG_IP_VS_NQ=m +CONFIG_IP_VS_OVF=m +CONFIG_IP_VS_PE_SIP=m +CONFIG_IP_VS_PROTO_AH=y +CONFIG_IP_VS_PROTO_AH_ESP=y +CONFIG_IP_VS_PROTO_ESP=y +CONFIG_IP_VS_PROTO_SCTP=y +CONFIG_IP_VS_PROTO_TCP=y +CONFIG_IP_VS_PROTO_UDP=y +CONFIG_IP_VS_RR=m +CONFIG_IP_VS_SED=m +CONFIG_IP_VS_SH=m +CONFIG_IP_VS_SH_TAB_BITS=8 +CONFIG_IP_VS_TAB_BITS=12 +CONFIG_IP_VS_WLC=m +CONFIG_IP_VS_WRR=m +# CONFIG_IRQSOFF_TRACER is not set +CONFIG_IRQ_BYPASS_MANAGER=y +CONFIG_IRQ_DOMAIN=y +CONFIG_IRQ_DOMAIN_HIERARCHY=y +CONFIG_IRQ_FORCED_THREADING=y +# CONFIG_IRQ_FORCED_THREADING_DEFAULT is not set +CONFIG_IRQ_MSI_IOMMU=y +CONFIG_IRQ_POLL=y +CONFIG_IRQ_REMAP=y +CONFIG_IRQ_SIM=y +# CONFIG_IRQ_TIME_ACCOUNTING is not set +CONFIG_IRQ_WORK=y +CONFIG_IR_ENE=m +CONFIG_IR_FINTEK=m +# CONFIG_IR_IGORPLUGUSB is not set +# CONFIG_IR_IGUANA is not set +# CONFIG_IR_IMON is not set +CONFIG_IR_IMON_DECODER=m +# CONFIG_IR_IMON_RAW is not set +CONFIG_IR_ITE_CIR=m +CONFIG_IR_JVC_DECODER=m +# CONFIG_IR_MCEUSB is not set +CONFIG_IR_MCE_KBD_DECODER=m +CONFIG_IR_NEC_DECODER=m +CONFIG_IR_NUVOTON=m +CONFIG_IR_RC5_DECODER=m +CONFIG_IR_RC6_DECODER=m +CONFIG_IR_RCMM_DECODER=m +# CONFIG_IR_REDRAT3 is not set +CONFIG_IR_SANYO_DECODER=m +CONFIG_IR_SERIAL=m +CONFIG_IR_SERIAL_TRANSMITTER=y +CONFIG_IR_SHARP_DECODER=m +CONFIG_IR_SIR=m +CONFIG_IR_SONY_DECODER=m +# CONFIG_IR_STREAMZAP is not set +# CONFIG_IR_TTUSBIR is not set +CONFIG_IR_WINBOND_CIR=m +CONFIG_IR_XMP_DECODER=m +CONFIG_ISA_BUS=y +CONFIG_ISA_BUS_API=y +CONFIG_ISA_DMA_API=y +CONFIG_ISCSI_BOOT_SYSFS=m +CONFIG_ISCSI_IBFT=m +CONFIG_ISCSI_IBFT_FIND=y +CONFIG_ISCSI_TARGET=m +# CONFIG_ISCSI_TARGET_CXGB4 is not set +CONFIG_ISCSI_TCP=m +# CONFIG_ISDN is not set +CONFIG_ISI=m +CONFIG_ISL29003=m +CONFIG_ISL29020=m +CONFIG_ISO9660_FS=m +CONFIG_IT8712F_WDT=m +CONFIG_IT87_WDT=m +CONFIG_ITCO_VENDOR_SUPPORT=y +CONFIG_ITCO_WDT=m +CONFIG_IXGB=m +CONFIG_IXGBE=m +CONFIG_IXGBEVF=m +CONFIG_IXGBEVF_IPSEC=y +CONFIG_IXGBE_DCA=y +CONFIG_IXGBE_DCB=y +CONFIG_IXGBE_HWMON=y +CONFIG_IXGBE_IPSEC=y +CONFIG_JAILHOUSE_GUEST=y +CONFIG_JBD2=y +# CONFIG_JBD2_DEBUG is not set +# CONFIG_JFS_DEBUG is not set +CONFIG_JFS_FS=m +CONFIG_JFS_POSIX_ACL=y +CONFIG_JFS_SECURITY=y +CONFIG_JFS_STATISTICS=y +CONFIG_JME=m +CONFIG_JOLIET=y +CONFIG_JUMP_LABEL=y +CONFIG_KALLSYMS=y +CONFIG_KALLSYMS_ABSOLUTE_PERCPU=y +CONFIG_KALLSYMS_ALL=y +CONFIG_KALLSYMS_BASE_RELATIVE=y +CONFIG_KARMA_PARTITION=y +# CONFIG_KASAN is not set +CONFIG_KASAN_STACK=1 +CONFIG_KCMP=y +# CONFIG_KCOV is not set +CONFIG_KDB_CONTINUE_CATASTROPHIC=0 +CONFIG_KDB_DEFAULT_ENABLE=0x1 +CONFIG_KDB_KEYBOARD=y +# CONFIG_KERNEL_BZIP2 is not set +CONFIG_KERNEL_GZIP=y +# CONFIG_KERNEL_LZ4 is not set +# CONFIG_KERNEL_LZMA is not set +# CONFIG_KERNEL_LZO is not set +# CONFIG_KERNEL_XZ is not set +CONFIG_KERNFS=y +CONFIG_KEXEC=y +CONFIG_KEXEC_BZIMAGE_VERIFY_SIG=y +CONFIG_KEXEC_CORE=y +CONFIG_KEXEC_FILE=y +CONFIG_KEXEC_JUMP=y +CONFIG_KEXEC_SIG=y +# CONFIG_KEXEC_SIG_FORCE is not set +# CONFIG_KEYBOARD_ADP5588 is not set +# CONFIG_KEYBOARD_ADP5589 is not set +CONFIG_KEYBOARD_APPLESPI=m +CONFIG_KEYBOARD_ATKBD=y +CONFIG_KEYBOARD_DLINK_DIR685=m +# CONFIG_KEYBOARD_GPIO is not set +CONFIG_KEYBOARD_GPIO_POLLED=m +CONFIG_KEYBOARD_IQS62X=m +# CONFIG_KEYBOARD_LKKBD is not set +# CONFIG_KEYBOARD_LM8323 is not set +# CONFIG_KEYBOARD_LM8333 is not set +# CONFIG_KEYBOARD_MATRIX is not set +# CONFIG_KEYBOARD_MAX7359 is not set +# CONFIG_KEYBOARD_MCS is not set +# CONFIG_KEYBOARD_MPR121 is not set +# CONFIG_KEYBOARD_NEWTON is not set +# CONFIG_KEYBOARD_OPENCORES is not set +CONFIG_KEYBOARD_QT1050=m +# CONFIG_KEYBOARD_QT1070 is not set +# CONFIG_KEYBOARD_QT2160 is not set +# CONFIG_KEYBOARD_SAMSUNG is not set +# CONFIG_KEYBOARD_STOWAWAY is not set +# CONFIG_KEYBOARD_SUNKBD is not set +# CONFIG_KEYBOARD_TCA6416 is not set +# CONFIG_KEYBOARD_TCA8418 is not set +# CONFIG_KEYBOARD_TM2_TOUCHKEY is not set +# CONFIG_KEYBOARD_XTKBD is not set +CONFIG_KEYS=y +CONFIG_KEYS_REQUEST_CACHE=y +CONFIG_KEY_DH_OPERATIONS=y +CONFIG_KEY_NOTIFICATIONS=y +CONFIG_KGDB=y +CONFIG_KGDB_KDB=y +CONFIG_KGDB_LOW_LEVEL_TRAP=y +CONFIG_KGDB_SERIAL_CONSOLE=y +# CONFIG_KGDB_TESTS is not set +CONFIG_KPC2000=y +CONFIG_KPC2000_CORE=m +CONFIG_KPC2000_DMA=m +CONFIG_KPC2000_I2C=m +CONFIG_KPC2000_SPI=m +CONFIG_KPROBES=y +CONFIG_KPROBES_ON_FTRACE=y +CONFIG_KPROBE_EVENTS=y +# CONFIG_KPROBE_EVENTS_ON_NOTRACE is not set +# CONFIG_KPROBE_EVENT_GEN_TEST is not set +CONFIG_KRETPROBES=y +CONFIG_KS0108=m +CONFIG_KS0108_DELAY=2 +CONFIG_KS0108_PORT=0x378 +CONFIG_KSM=y +# CONFIG_KUNIT is not set +CONFIG_KVM=m +CONFIG_KVM_AMD=m +CONFIG_KVM_AMD_SEV=y +CONFIG_KVM_ASYNC_PF=y +CONFIG_KVM_COMPAT=y +CONFIG_KVM_GENERIC_DIRTYLOG_READ_PROTECT=y +CONFIG_KVM_GUEST=y +CONFIG_KVM_INTEL=m +CONFIG_KVM_MMIO=y +# CONFIG_KVM_MMU_AUDIT is not set +CONFIG_KVM_VFIO=y +CONFIG_KVM_WERROR=y +CONFIG_L2TP=m +CONFIG_L2TP_DEBUGFS=m +CONFIG_L2TP_ETH=m +CONFIG_L2TP_IP=m +CONFIG_L2TP_V3=y +CONFIG_LAN743X=m +# CONFIG_LANMEDIA is not set +CONFIG_LAPB=m +CONFIG_LAPBETHER=m +# CONFIG_LATENCYTOP is not set +CONFIG_LATTICE_ECP3_CONFIG=m +# CONFIG_LCD_CLASS_DEVICE is not set +CONFIG_LDISC_AUTOLOAD=y +# CONFIG_LDM_DEBUG is not set +CONFIG_LDM_PARTITION=y +CONFIG_LD_VERSION=235010000 +CONFIG_LEDS_APU=m +# CONFIG_LEDS_BD2802 is not set +# CONFIG_LEDS_BLINKM is not set +CONFIG_LEDS_BRIGHTNESS_HW_CHANGED=y +CONFIG_LEDS_CLASS=m +# CONFIG_LEDS_CLASS_FLASH is not set +# CONFIG_LEDS_CLEVO_MAIL is not set +# CONFIG_LEDS_DA9052 is not set +# CONFIG_LEDS_DAC124S085 is not set +CONFIG_LEDS_GPIO=m +# CONFIG_LEDS_INTEL_SS4200 is not set +# CONFIG_LEDS_LM3530 is not set +CONFIG_LEDS_LM3532=m +# CONFIG_LEDS_LM355x is not set +CONFIG_LEDS_LM36274=m +# CONFIG_LEDS_LM3642 is not set +# CONFIG_LEDS_LP3944 is not set +# CONFIG_LEDS_LP3952 is not set +# CONFIG_LEDS_LP5521 is not set +# CONFIG_LEDS_LP5523 is not set +# CONFIG_LEDS_LP5562 is not set +# CONFIG_LEDS_LP8501 is not set +# CONFIG_LEDS_MC13783 is not set +# CONFIG_LEDS_MENF21BMC is not set +# CONFIG_LEDS_MLXCPLD is not set +CONFIG_LEDS_MLXREG=m +# CONFIG_LEDS_NIC78BX is not set +# CONFIG_LEDS_PCA9532 is not set +# CONFIG_LEDS_PCA955X is not set +# CONFIG_LEDS_PCA963X is not set +# CONFIG_LEDS_REGULATOR is not set +# CONFIG_LEDS_TCA6507 is not set +CONFIG_LEDS_TI_LMU_COMMON=m +# CONFIG_LEDS_TLC591XX is not set +CONFIG_LEDS_TPS6105X=m +CONFIG_LEDS_TRIGGERS=y +CONFIG_LEDS_TRIGGER_ACTIVITY=m +CONFIG_LEDS_TRIGGER_AUDIO=m +# CONFIG_LEDS_TRIGGER_BACKLIGHT is not set +# CONFIG_LEDS_TRIGGER_CAMERA is not set +# CONFIG_LEDS_TRIGGER_CPU is not set +# CONFIG_LEDS_TRIGGER_DEFAULT_ON is not set +# CONFIG_LEDS_TRIGGER_DISK is not set +# CONFIG_LEDS_TRIGGER_GPIO is not set +# CONFIG_LEDS_TRIGGER_HEARTBEAT is not set +CONFIG_LEDS_TRIGGER_NETDEV=m +# CONFIG_LEDS_TRIGGER_ONESHOT is not set +# CONFIG_LEDS_TRIGGER_PANIC is not set +CONFIG_LEDS_TRIGGER_PATTERN=m +# CONFIG_LEDS_TRIGGER_TIMER is not set +# CONFIG_LEDS_TRIGGER_TRANSIENT is not set +# CONFIG_LEDS_USER is not set +# CONFIG_LEDS_WM831X_STATUS is not set +# CONFIG_LED_TRIGGER_PHY is not set +CONFIG_LEGACY_PTYS=y +CONFIG_LEGACY_PTY_COUNT=0 +CONFIG_LEGACY_VSYSCALL_EMULATE=y +# CONFIG_LEGACY_VSYSCALL_NONE is not set +# CONFIG_LEGACY_VSYSCALL_XONLY is not set +CONFIG_LG_LAPTOP=m +CONFIG_LIBCRC32C=m +# CONFIG_LIBFC is not set +CONFIG_LIBNVDIMM=y +CONFIG_LINEAR_RANGES=y +CONFIG_LIRC=y +CONFIG_LIVEPATCH=y +CONFIG_LLC=m +CONFIG_LLC2=m +CONFIG_LOAD_UEFI_KEYS=y +CONFIG_LOCALVERSION="" +# CONFIG_LOCALVERSION_AUTO is not set +CONFIG_LOCKD=m +CONFIG_LOCKDEP_SUPPORT=y +CONFIG_LOCKD_V4=y +CONFIG_LOCKUP_DETECTOR=y +CONFIG_LOCK_DEBUGGING_SUPPORT=y +CONFIG_LOCK_DOWN_IN_SECURE_BOOT=y +# CONFIG_LOCK_DOWN_KERNEL_FORCE_CONFIDENTIALITY is not set +# CONFIG_LOCK_DOWN_KERNEL_FORCE_INTEGRITY is not set +CONFIG_LOCK_DOWN_KERNEL_FORCE_NONE=y +# CONFIG_LOCK_EVENT_COUNTS is not set +CONFIG_LOCK_SPIN_ON_OWNER=y +# CONFIG_LOCK_STAT is not set +CONFIG_LOCK_TORTURE_TEST=m +# CONFIG_LOGO is not set +CONFIG_LOG_BUF_SHIFT=18 +CONFIG_LOG_CPU_MAX_BUF_SHIFT=12 +CONFIG_LOOPBACK_TARGET=m +CONFIG_LPC_ICH=m +CONFIG_LPC_SCH=m +# CONFIG_LP_CONSOLE is not set +CONFIG_LRU_CACHE=m +# CONFIG_LSI_ET1011C_PHY is not set +CONFIG_LSM="lockdown,yama,integrity,apparmor" +CONFIG_LSM_MMAP_MIN_ADDR=0 +# CONFIG_LTE_GDM724X is not set +CONFIG_LTPC=m +CONFIG_LWTUNNEL=y +CONFIG_LWTUNNEL_BPF=y +# CONFIG_LXT_PHY is not set +CONFIG_LZ4HC_COMPRESS=m +CONFIG_LZ4_COMPRESS=y +CONFIG_LZ4_DECOMPRESS=y +CONFIG_LZO_COMPRESS=y +CONFIG_LZO_DECOMPRESS=y +CONFIG_MAC80211=m +CONFIG_MAC80211_DEBUGFS=y +# CONFIG_MAC80211_DEBUG_MENU is not set +CONFIG_MAC80211_HAS_RC=y +CONFIG_MAC80211_LEDS=y +CONFIG_MAC80211_MESH=y +CONFIG_MAC80211_MESSAGE_TRACING=y +CONFIG_MAC80211_RC_DEFAULT="minstrel_ht" +CONFIG_MAC80211_RC_DEFAULT_MINSTREL=y +CONFIG_MAC80211_RC_MINSTREL=y +CONFIG_MAC80211_STA_HASH_MAX_SIZE=0 +CONFIG_MAC802154=m +# CONFIG_MACB is not set +CONFIG_MACHZ_WDT=m +# CONFIG_MACINTOSH_DRIVERS is not set +CONFIG_MACSEC=m +CONFIG_MACVLAN=m +CONFIG_MACVTAP=m +CONFIG_MAC_PARTITION=y +CONFIG_MADERA_IRQ=m +CONFIG_MAGIC_SYSRQ=y +CONFIG_MAGIC_SYSRQ_DEFAULT_ENABLE=0x01b6 +CONFIG_MAGIC_SYSRQ_SERIAL=y +CONFIG_MAGIC_SYSRQ_SERIAL_SEQUENCE="" +CONFIG_MAILBOX=y +CONFIG_MANAGER_SBS=m +CONFIG_MANDATORY_FILE_LOCKING=y +CONFIG_MARVELL_10G_PHY=m +# CONFIG_MARVELL_PHY is not set +# CONFIG_MATOM is not set +CONFIG_MAX63XX_WATCHDOG=m +CONFIG_MAXSMP=y +CONFIG_MAX_RAW_DEVS=256 +CONFIG_MCB=m +CONFIG_MCB_LPC=m +CONFIG_MCB_PCI=m +# CONFIG_MCORE2 is not set +CONFIG_MD=y +CONFIG_MDIO=m +CONFIG_MDIO_BCM_UNIMAC=m +# CONFIG_MDIO_BITBANG is not set +CONFIG_MDIO_BUS=y +CONFIG_MDIO_DEVICE=y +CONFIG_MDIO_I2C=m +CONFIG_MDIO_MSCC_MIIM=m +CONFIG_MDIO_MVUSB=m +# CONFIG_MDIO_THUNDER is not set +CONFIG_MDIO_XPCS=m +CONFIG_MD_AUTODETECT=y +CONFIG_MD_CLUSTER=m +CONFIG_MD_FAULTY=m +CONFIG_MD_LINEAR=m +CONFIG_MD_MULTIPATH=m +CONFIG_MD_RAID0=m +CONFIG_MD_RAID1=m +CONFIG_MD_RAID10=m +CONFIG_MD_RAID456=m +# CONFIG_MEDIA_ANALOG_TV_SUPPORT is not set +# CONFIG_MEDIA_CAMERA_SUPPORT is not set +CONFIG_MEDIA_CEC_RC=y +CONFIG_MEDIA_CEC_SUPPORT=y +CONFIG_MEDIA_CONTROLLER=y +CONFIG_MEDIA_CONTROLLER_REQUEST_API=y +# CONFIG_MEDIA_DIGITAL_TV_SUPPORT is not set +# CONFIG_MEDIA_PCI_SUPPORT is not set +CONFIG_MEDIA_PLATFORM_SUPPORT=y +# CONFIG_MEDIA_RADIO_SUPPORT is not set +# CONFIG_MEDIA_SDR_SUPPORT is not set +CONFIG_MEDIA_SUBDRV_AUTOSELECT=y +CONFIG_MEDIA_SUPPORT=m +CONFIG_MEDIA_SUPPORT_FILTER=y +CONFIG_MEDIA_TEST_SUPPORT=y +# CONFIG_MEDIA_USB_SUPPORT is not set +CONFIG_MEGARAID_LEGACY=m +CONFIG_MEGARAID_MAILBOX=m +CONFIG_MEGARAID_MM=m +CONFIG_MEGARAID_NEWGEN=y +CONFIG_MEGARAID_SAS=m +CONFIG_MELLANOX_PLATFORM=y +CONFIG_MEMBARRIER=y +CONFIG_MEMCG=y +CONFIG_MEMCG_KMEM=y +CONFIG_MEMCG_SWAP=y +CONFIG_MEMFD_CREATE=y +CONFIG_MEMORY=y +CONFIG_MEMORY_BALLOON=y +CONFIG_MEMORY_FAILURE=y +CONFIG_MEMORY_HOTPLUG=y +CONFIG_MEMORY_HOTPLUG_DEFAULT_ONLINE=y +CONFIG_MEMORY_HOTPLUG_SPARSE=y +CONFIG_MEMORY_HOTREMOVE=y +CONFIG_MEMORY_ISOLATION=y +CONFIG_MEMORY_NOTIFIER_ERROR_INJECT=m +CONFIG_MEMREGION=y +# CONFIG_MEMSTICK is not set +CONFIG_MEMTEST=y +CONFIG_MEM_SOFT_DIRTY=y +CONFIG_MENF21BMC_WATCHDOG=m +CONFIG_MENZ069_WATCHDOG=m +CONFIG_MEN_A21_WDT=m +CONFIG_MESSAGE_LOGLEVEL_DEFAULT=4 +# CONFIG_MFD_88PM800 is not set +CONFIG_MFD_88PM805=m +CONFIG_MFD_ARIZONA=y +CONFIG_MFD_ARIZONA_I2C=m +CONFIG_MFD_ARIZONA_SPI=m +CONFIG_MFD_AXP20X=m +CONFIG_MFD_AXP20X_I2C=m +CONFIG_MFD_BCM590XX=m +CONFIG_MFD_BD9571MWV=m +CONFIG_MFD_CORE=y +# CONFIG_MFD_CROS_EC is not set +CONFIG_MFD_CS47L15=y +CONFIG_MFD_CS47L24=y +CONFIG_MFD_CS47L35=y +CONFIG_MFD_CS47L85=y +CONFIG_MFD_CS47L90=y +CONFIG_MFD_CS47L92=y +CONFIG_MFD_DA9052_SPI=y +# CONFIG_MFD_DA9062 is not set +CONFIG_MFD_DA9063=m +# CONFIG_MFD_DA9150 is not set +# CONFIG_MFD_DLN2 is not set +CONFIG_MFD_INTEL_LPSS=m +CONFIG_MFD_INTEL_LPSS_ACPI=m +CONFIG_MFD_INTEL_LPSS_PCI=m +CONFIG_MFD_INTEL_MSIC=y +CONFIG_MFD_INTEL_PMC_BXT=m +CONFIG_MFD_INTEL_QUARK_I2C_GPIO=m +CONFIG_MFD_IQS62X=m +CONFIG_MFD_JANZ_CMODIO=m +# CONFIG_MFD_KEMPLD is not set +# CONFIG_MFD_LM3533 is not set +CONFIG_MFD_LP3943=m +CONFIG_MFD_MADERA=m +CONFIG_MFD_MADERA_I2C=m +CONFIG_MFD_MADERA_SPI=m +CONFIG_MFD_MAX14577=m +CONFIG_MFD_MAX77693=m +CONFIG_MFD_MAX8907=m +CONFIG_MFD_MC13XXX=m +CONFIG_MFD_MC13XXX_I2C=m +CONFIG_MFD_MC13XXX_SPI=m +CONFIG_MFD_MENF21BMC=m +CONFIG_MFD_MP2629=m +CONFIG_MFD_MT6360=m +# CONFIG_MFD_MT6397 is not set +CONFIG_MFD_PCF50633=m +CONFIG_MFD_RDC321X=m +CONFIG_MFD_RETU=m +CONFIG_MFD_RT5033=m +# CONFIG_MFD_SI476X_CORE is not set +CONFIG_MFD_SKY81452=m +CONFIG_MFD_SM501=m +CONFIG_MFD_SM501_GPIO=y +CONFIG_MFD_SYSCON=y +CONFIG_MFD_TI_AM335X_TSCADC=m +CONFIG_MFD_TI_LMU=m +CONFIG_MFD_TI_LP873X=m +CONFIG_MFD_TPS65086=m +CONFIG_MFD_TPS65912=y +CONFIG_MFD_TPS65912_I2C=m +CONFIG_MFD_TPS65912_SPI=y +CONFIG_MFD_TQMX86=m +# CONFIG_MFD_VIPERBOARD is not set +CONFIG_MFD_VX855=m +CONFIG_MFD_WCD934X=m +# CONFIG_MFD_WL1273_CORE is not set +CONFIG_MFD_WM5102=y +CONFIG_MFD_WM5110=y +CONFIG_MFD_WM831X=y +CONFIG_MFD_WM831X_SPI=y +CONFIG_MFD_WM8994=m +CONFIG_MFD_WM8997=y +CONFIG_MFD_WM8998=y +CONFIG_MHI_BUS=m +# CONFIG_MICREL_KS8995MA is not set +# CONFIG_MICREL_PHY is not set +# CONFIG_MICROCHIP_PHY is not set +CONFIG_MICROCHIP_T1_PHY=m +CONFIG_MICROCODE=y +CONFIG_MICROCODE_AMD=y +CONFIG_MICROCODE_INTEL=y +CONFIG_MICROCODE_OLD_INTERFACE=y +# CONFIG_MICROSEMI_PHY is not set +CONFIG_MIGRATION=y +CONFIG_MII=m +CONFIG_MINIX_FS=m +CONFIG_MINIX_SUBPARTITION=y +CONFIG_MISC_ALCOR_PCI=m +CONFIG_MISC_FILESYSTEMS=y +CONFIG_MISC_RTSX=m +CONFIG_MISC_RTSX_PCI=m +# CONFIG_MISC_RTSX_USB is not set +# CONFIG_MK8 is not set +# CONFIG_MKISS is not set +CONFIG_MLX4_CORE=m +CONFIG_MLX4_CORE_GEN2=y +CONFIG_MLX4_DEBUG=y +CONFIG_MLX4_EN=m +CONFIG_MLX4_EN_DCB=y +CONFIG_MLX4_INFINIBAND=m +CONFIG_MLX5_ACCEL=y +CONFIG_MLX5_CLS_ACT=y +CONFIG_MLX5_CORE=m +CONFIG_MLX5_CORE_EN=y +CONFIG_MLX5_CORE_EN_DCB=y +CONFIG_MLX5_CORE_IPOIB=y +CONFIG_MLX5_EN_ARFS=y +CONFIG_MLX5_EN_IPSEC=y +CONFIG_MLX5_EN_RXNFC=y +CONFIG_MLX5_EN_TLS=y +CONFIG_MLX5_ESWITCH=y +CONFIG_MLX5_FPGA=y +CONFIG_MLX5_FPGA_IPSEC=y +CONFIG_MLX5_FPGA_TLS=y +CONFIG_MLX5_INFINIBAND=m +CONFIG_MLX5_MPFS=y +CONFIG_MLX5_SW_STEERING=y +CONFIG_MLX5_TC_CT=y +CONFIG_MLX5_TLS=y +CONFIG_MLXFW=m +CONFIG_MLXREG_HOTPLUG=m +CONFIG_MLXREG_IO=m +CONFIG_MLXSW_CORE=m +CONFIG_MLXSW_CORE_HWMON=y +CONFIG_MLXSW_CORE_THERMAL=y +CONFIG_MLXSW_I2C=m +CONFIG_MLXSW_MINIMAL=m +CONFIG_MLXSW_PCI=m +CONFIG_MLXSW_SPECTRUM=m +CONFIG_MLXSW_SPECTRUM_DCB=y +CONFIG_MLXSW_SWITCHIB=m +CONFIG_MLXSW_SWITCHX2=m +CONFIG_MLX_PLATFORM=m +CONFIG_MLX_WDT=m +# CONFIG_MMC is not set +CONFIG_MMCONF_FAM10H=y +CONFIG_MMIOTRACE=y +# CONFIG_MMIOTRACE_TEST is not set +CONFIG_MMU=y +CONFIG_MMU_GATHER_RCU_TABLE_FREE=y +CONFIG_MMU_GATHER_TABLE_FREE=y +CONFIG_MMU_NOTIFIER=y +CONFIG_MODIFY_LDT_SYSCALL=y +CONFIG_MODULES=y +CONFIG_MODULES_TREE_LOOKUP=y +CONFIG_MODULES_USE_ELF_RELA=y +# CONFIG_MODULE_ALLOW_MISSING_NAMESPACE_IMPORTS is not set +# CONFIG_MODULE_COMPRESS is not set +# CONFIG_MODULE_FORCE_LOAD is not set +# CONFIG_MODULE_FORCE_UNLOAD is not set +CONFIG_MODULE_SIG=y +CONFIG_MODULE_SIG_ALL=y +# CONFIG_MODULE_SIG_FORCE is not set +CONFIG_MODULE_SIG_FORMAT=y +CONFIG_MODULE_SIG_HASH="sha512" +CONFIG_MODULE_SIG_KEY="certs/signing_key.pem" +# CONFIG_MODULE_SIG_SHA1 is not set +# CONFIG_MODULE_SIG_SHA224 is not set +# CONFIG_MODULE_SIG_SHA256 is not set +# CONFIG_MODULE_SIG_SHA384 is not set +CONFIG_MODULE_SIG_SHA512=y +CONFIG_MODULE_SRCVERSION_ALL=y +CONFIG_MODULE_UNLOAD=y +CONFIG_MODVERSIONS=y +CONFIG_MOST=m +CONFIG_MOST_CDEV=m +CONFIG_MOST_COMPONENTS=m +CONFIG_MOST_I2C=m +CONFIG_MOST_NET=m +# CONFIG_MOST_USB is not set +CONFIG_MOST_VIDEO=m +CONFIG_MOXA_INTELLIO=m +CONFIG_MOXA_SMARTIO=m +CONFIG_MPILIB=y +CONFIG_MPLS=y +CONFIG_MPLS_IPTUNNEL=m +CONFIG_MPLS_ROUTING=m +# CONFIG_MPSC is not set +CONFIG_MPTCP=y +# CONFIG_MPTCP_HMAC_TEST is not set +CONFIG_MPTCP_IPV6=y +CONFIG_MQ_IOSCHED_DEADLINE=y +CONFIG_MQ_IOSCHED_KYBER=m +CONFIG_MRP=m +CONFIG_MSCC_OCELOT_SWITCH=m +CONFIG_MSDOS_FS=m +CONFIG_MSDOS_PARTITION=y +# CONFIG_MSI_LAPTOP is not set +# CONFIG_MSI_WMI is not set +# CONFIG_MTD is not set +CONFIG_MTRR=y +CONFIG_MTRR_SANITIZER=y +CONFIG_MTRR_SANITIZER_ENABLE_DEFAULT=1 +CONFIG_MTRR_SANITIZER_SPARE_REG_NR_DEFAULT=1 +CONFIG_MULTIPLEXER=m +CONFIG_MULTIUSER=y +CONFIG_MUTEX_SPIN_ON_OWNER=y +CONFIG_MUX_ADG792A=m +CONFIG_MUX_ADGS1408=m +CONFIG_MUX_GPIO=m +CONFIG_MVMDIO=m +# CONFIG_MWAVE is not set +CONFIG_MXM_WMI=m +CONFIG_NAMESPACES=y +# CONFIG_NATIONAL_PHY is not set +CONFIG_NCSI_OEM_CMD_GET_MAC=y +CONFIG_ND_BLK=y +CONFIG_ND_BTT=y +CONFIG_ND_CLAIM=y +CONFIG_ND_PFN=y +CONFIG_NEED_DMA_MAP_STATE=y +CONFIG_NEED_MULTIPLE_NODES=y +CONFIG_NEED_PER_CPU_EMBED_FIRST_CHUNK=y +CONFIG_NEED_PER_CPU_PAGE_FIRST_CHUNK=y +CONFIG_NEED_SG_DMA_LENGTH=y +CONFIG_NET=y +CONFIG_NETCONSOLE=m +CONFIG_NETCONSOLE_DYNAMIC=y +CONFIG_NETDEVICES=y +CONFIG_NETDEVSIM=m +# CONFIG_NETDEV_NOTIFIER_ERROR_INJECT is not set +CONFIG_NETFILTER=y +CONFIG_NETFILTER_ADVANCED=y +CONFIG_NETFILTER_CONNCOUNT=m +CONFIG_NETFILTER_FAMILY_ARP=y +CONFIG_NETFILTER_FAMILY_BRIDGE=y +CONFIG_NETFILTER_INGRESS=y +CONFIG_NETFILTER_NETLINK=m +CONFIG_NETFILTER_NETLINK_ACCT=m +CONFIG_NETFILTER_NETLINK_GLUE_CT=y +CONFIG_NETFILTER_NETLINK_LOG=m +CONFIG_NETFILTER_NETLINK_OSF=m +CONFIG_NETFILTER_NETLINK_QUEUE=m +CONFIG_NETFILTER_SYNPROXY=m +CONFIG_NETFILTER_XTABLES=m +CONFIG_NETFILTER_XT_CONNMARK=m +CONFIG_NETFILTER_XT_MARK=m +CONFIG_NETFILTER_XT_MATCH_ADDRTYPE=m +CONFIG_NETFILTER_XT_MATCH_BPF=m +CONFIG_NETFILTER_XT_MATCH_CGROUP=m +CONFIG_NETFILTER_XT_MATCH_CLUSTER=m +CONFIG_NETFILTER_XT_MATCH_COMMENT=m +CONFIG_NETFILTER_XT_MATCH_CONNBYTES=m +CONFIG_NETFILTER_XT_MATCH_CONNLABEL=m +CONFIG_NETFILTER_XT_MATCH_CONNLIMIT=m +CONFIG_NETFILTER_XT_MATCH_CONNMARK=m +CONFIG_NETFILTER_XT_MATCH_CONNTRACK=m +CONFIG_NETFILTER_XT_MATCH_CPU=m +CONFIG_NETFILTER_XT_MATCH_DCCP=m +CONFIG_NETFILTER_XT_MATCH_DEVGROUP=m +CONFIG_NETFILTER_XT_MATCH_DSCP=m +CONFIG_NETFILTER_XT_MATCH_ECN=m +CONFIG_NETFILTER_XT_MATCH_ESP=m +CONFIG_NETFILTER_XT_MATCH_HASHLIMIT=m +CONFIG_NETFILTER_XT_MATCH_HELPER=m +CONFIG_NETFILTER_XT_MATCH_HL=m +CONFIG_NETFILTER_XT_MATCH_IPCOMP=m +CONFIG_NETFILTER_XT_MATCH_IPRANGE=m +CONFIG_NETFILTER_XT_MATCH_IPVS=m +CONFIG_NETFILTER_XT_MATCH_L2TP=m +CONFIG_NETFILTER_XT_MATCH_LENGTH=m +CONFIG_NETFILTER_XT_MATCH_LIMIT=m +CONFIG_NETFILTER_XT_MATCH_MAC=m +CONFIG_NETFILTER_XT_MATCH_MARK=m +CONFIG_NETFILTER_XT_MATCH_MULTIPORT=m +CONFIG_NETFILTER_XT_MATCH_NFACCT=m +CONFIG_NETFILTER_XT_MATCH_OSF=m +CONFIG_NETFILTER_XT_MATCH_OWNER=m +CONFIG_NETFILTER_XT_MATCH_PHYSDEV=m +CONFIG_NETFILTER_XT_MATCH_PKTTYPE=m +CONFIG_NETFILTER_XT_MATCH_POLICY=m +CONFIG_NETFILTER_XT_MATCH_QUOTA=m +CONFIG_NETFILTER_XT_MATCH_RATEEST=m +CONFIG_NETFILTER_XT_MATCH_REALM=m +CONFIG_NETFILTER_XT_MATCH_RECENT=m +CONFIG_NETFILTER_XT_MATCH_SCTP=m +CONFIG_NETFILTER_XT_MATCH_SOCKET=m +CONFIG_NETFILTER_XT_MATCH_STATE=m +CONFIG_NETFILTER_XT_MATCH_STATISTIC=m +CONFIG_NETFILTER_XT_MATCH_STRING=m +CONFIG_NETFILTER_XT_MATCH_TCPMSS=m +CONFIG_NETFILTER_XT_MATCH_TIME=m +CONFIG_NETFILTER_XT_MATCH_U32=m +CONFIG_NETFILTER_XT_NAT=m +CONFIG_NETFILTER_XT_SET=m +CONFIG_NETFILTER_XT_TARGET_AUDIT=m +CONFIG_NETFILTER_XT_TARGET_CHECKSUM=m +CONFIG_NETFILTER_XT_TARGET_CLASSIFY=m +CONFIG_NETFILTER_XT_TARGET_CONNMARK=m +CONFIG_NETFILTER_XT_TARGET_CONNSECMARK=m +CONFIG_NETFILTER_XT_TARGET_CT=m +CONFIG_NETFILTER_XT_TARGET_DSCP=m +CONFIG_NETFILTER_XT_TARGET_HL=m +CONFIG_NETFILTER_XT_TARGET_HMARK=m +CONFIG_NETFILTER_XT_TARGET_IDLETIMER=m +CONFIG_NETFILTER_XT_TARGET_LED=m +CONFIG_NETFILTER_XT_TARGET_LOG=m +CONFIG_NETFILTER_XT_TARGET_MARK=m +CONFIG_NETFILTER_XT_TARGET_MASQUERADE=m +CONFIG_NETFILTER_XT_TARGET_NETMAP=m +CONFIG_NETFILTER_XT_TARGET_NFLOG=m +CONFIG_NETFILTER_XT_TARGET_NFQUEUE=m +# CONFIG_NETFILTER_XT_TARGET_NOTRACK is not set +CONFIG_NETFILTER_XT_TARGET_RATEEST=m +CONFIG_NETFILTER_XT_TARGET_REDIRECT=m +CONFIG_NETFILTER_XT_TARGET_SECMARK=m +CONFIG_NETFILTER_XT_TARGET_TCPMSS=m +CONFIG_NETFILTER_XT_TARGET_TCPOPTSTRIP=m +CONFIG_NETFILTER_XT_TARGET_TEE=m +CONFIG_NETFILTER_XT_TARGET_TPROXY=m +CONFIG_NETFILTER_XT_TARGET_TRACE=m +CONFIG_NETLABEL=y +CONFIG_NETLINK_DIAG=m +CONFIG_NETPOLL=y +CONFIG_NETROM=m +CONFIG_NETWORK_FILESYSTEMS=y +# CONFIG_NETWORK_PHY_TIMESTAMPING is not set +CONFIG_NETWORK_SECMARK=y +CONFIG_NET_9P=m +# CONFIG_NET_9P_DEBUG is not set +CONFIG_NET_9P_RDMA=m +CONFIG_NET_9P_VIRTIO=m +CONFIG_NET_ACT_BPF=m +CONFIG_NET_ACT_CONNMARK=m +CONFIG_NET_ACT_CSUM=m +CONFIG_NET_ACT_CT=m +CONFIG_NET_ACT_CTINFO=m +CONFIG_NET_ACT_GACT=m +CONFIG_NET_ACT_GATE=m +# CONFIG_NET_ACT_IFE is not set +CONFIG_NET_ACT_IPT=m +CONFIG_NET_ACT_MIRRED=m +CONFIG_NET_ACT_MPLS=m +CONFIG_NET_ACT_NAT=m +CONFIG_NET_ACT_PEDIT=m +CONFIG_NET_ACT_POLICE=m +CONFIG_NET_ACT_SAMPLE=m +CONFIG_NET_ACT_SIMP=m +CONFIG_NET_ACT_SKBEDIT=m +CONFIG_NET_ACT_SKBMOD=m +CONFIG_NET_ACT_TUNNEL_KEY=m +CONFIG_NET_ACT_VLAN=m +CONFIG_NET_CLS=y +CONFIG_NET_CLS_ACT=y +CONFIG_NET_CLS_BASIC=m +CONFIG_NET_CLS_BPF=m +CONFIG_NET_CLS_CGROUP=m +CONFIG_NET_CLS_FLOW=m +CONFIG_NET_CLS_FLOWER=m +CONFIG_NET_CLS_FW=m +CONFIG_NET_CLS_MATCHALL=m +CONFIG_NET_CLS_ROUTE4=m +CONFIG_NET_CLS_RSVP=m +CONFIG_NET_CLS_RSVP6=m +CONFIG_NET_CLS_TCINDEX=m +CONFIG_NET_CLS_U32=m +CONFIG_NET_CORE=y +CONFIG_NET_DEVLINK=y +CONFIG_NET_DROP_MONITOR=y +CONFIG_NET_DSA=m +CONFIG_NET_DSA_AR9331=m +CONFIG_NET_DSA_BCM_SF2=m +CONFIG_NET_DSA_LANTIQ_GSWIP=m +# CONFIG_NET_DSA_LOOP is not set +CONFIG_NET_DSA_MICROCHIP_KSZ8795=m +CONFIG_NET_DSA_MICROCHIP_KSZ8795_SPI=m +CONFIG_NET_DSA_MICROCHIP_KSZ9477=m +CONFIG_NET_DSA_MICROCHIP_KSZ9477_I2C=m +CONFIG_NET_DSA_MICROCHIP_KSZ9477_SPI=m +CONFIG_NET_DSA_MICROCHIP_KSZ_COMMON=m +CONFIG_NET_DSA_MT7530=m +# CONFIG_NET_DSA_MV88E6060 is not set +# CONFIG_NET_DSA_MV88E6XXX is not set +# CONFIG_NET_DSA_QCA8K is not set +CONFIG_NET_DSA_REALTEK_SMI=m +CONFIG_NET_DSA_SJA1105=m +CONFIG_NET_DSA_SJA1105_PTP=y +CONFIG_NET_DSA_SJA1105_TAS=y +CONFIG_NET_DSA_SJA1105_VL=y +CONFIG_NET_DSA_SMSC_LAN9303=m +CONFIG_NET_DSA_SMSC_LAN9303_I2C=m +CONFIG_NET_DSA_SMSC_LAN9303_MDIO=m +CONFIG_NET_DSA_TAG_8021Q=m +CONFIG_NET_DSA_TAG_AR9331=m +CONFIG_NET_DSA_TAG_BRCM=m +CONFIG_NET_DSA_TAG_BRCM_COMMON=m +CONFIG_NET_DSA_TAG_BRCM_PREPEND=m +CONFIG_NET_DSA_TAG_DSA=m +CONFIG_NET_DSA_TAG_EDSA=m +CONFIG_NET_DSA_TAG_GSWIP=m +CONFIG_NET_DSA_TAG_KSZ=m +CONFIG_NET_DSA_TAG_LAN9303=m +CONFIG_NET_DSA_TAG_MTK=m +CONFIG_NET_DSA_TAG_OCELOT=m +CONFIG_NET_DSA_TAG_QCA=m +CONFIG_NET_DSA_TAG_SJA1105=m +CONFIG_NET_DSA_TAG_TRAILER=m +CONFIG_NET_DSA_VITESSE_VSC73XX=m +CONFIG_NET_DSA_VITESSE_VSC73XX_PLATFORM=m +CONFIG_NET_DSA_VITESSE_VSC73XX_SPI=m +CONFIG_NET_EGRESS=y +CONFIG_NET_EMATCH=y +CONFIG_NET_EMATCH_CANID=m +CONFIG_NET_EMATCH_CMP=m +CONFIG_NET_EMATCH_IPSET=m +CONFIG_NET_EMATCH_IPT=m +CONFIG_NET_EMATCH_META=m +CONFIG_NET_EMATCH_NBYTE=m +CONFIG_NET_EMATCH_STACK=32 +CONFIG_NET_EMATCH_TEXT=m +CONFIG_NET_EMATCH_U32=m +CONFIG_NET_FAILOVER=m +# CONFIG_NET_FC is not set +CONFIG_NET_FLOW_LIMIT=y +CONFIG_NET_FOU=m +CONFIG_NET_FOU_IP_TUNNELS=y +CONFIG_NET_IFE=m +CONFIG_NET_INGRESS=y +CONFIG_NET_IPGRE=m +CONFIG_NET_IPGRE_BROADCAST=y +CONFIG_NET_IPGRE_DEMUX=m +CONFIG_NET_IPIP=m +CONFIG_NET_IPVTI=m +CONFIG_NET_IP_TUNNEL=y +CONFIG_NET_KEY=m +# CONFIG_NET_KEY_MIGRATE is not set +CONFIG_NET_L3_MASTER_DEV=y +CONFIG_NET_MPLS_GSO=m +CONFIG_NET_NCSI=y +CONFIG_NET_NS=y +CONFIG_NET_NSH=m +CONFIG_NET_PKTGEN=m +CONFIG_NET_POLL_CONTROLLER=y +CONFIG_NET_PTP_CLASSIFY=y +CONFIG_NET_REDIRECT=y +CONFIG_NET_RX_BUSY_POLL=y +CONFIG_NET_SB1000=m +CONFIG_NET_SCHED=y +CONFIG_NET_SCH_ATM=m +CONFIG_NET_SCH_CAKE=m +CONFIG_NET_SCH_CBQ=m +CONFIG_NET_SCH_CBS=m +CONFIG_NET_SCH_CHOKE=m +CONFIG_NET_SCH_CODEL=m +# CONFIG_NET_SCH_DEFAULT is not set +CONFIG_NET_SCH_DRR=m +CONFIG_NET_SCH_DSMARK=m +CONFIG_NET_SCH_ETF=m +CONFIG_NET_SCH_ETS=m +CONFIG_NET_SCH_FIFO=y +CONFIG_NET_SCH_FQ=m +CONFIG_NET_SCH_FQ_CODEL=m +CONFIG_NET_SCH_FQ_PIE=m +CONFIG_NET_SCH_GRED=m +CONFIG_NET_SCH_HFSC=m +CONFIG_NET_SCH_HHF=m +CONFIG_NET_SCH_HTB=m +CONFIG_NET_SCH_INGRESS=m +CONFIG_NET_SCH_MQPRIO=m +CONFIG_NET_SCH_MULTIQ=m +CONFIG_NET_SCH_NETEM=m +CONFIG_NET_SCH_PIE=m +CONFIG_NET_SCH_PLUG=m +CONFIG_NET_SCH_PRIO=m +CONFIG_NET_SCH_QFQ=m +CONFIG_NET_SCH_RED=m +CONFIG_NET_SCH_SFB=m +CONFIG_NET_SCH_SFQ=m +CONFIG_NET_SCH_SKBPRIO=m +CONFIG_NET_SCH_TAPRIO=m +CONFIG_NET_SCH_TBF=m +CONFIG_NET_SCH_TEQL=m +CONFIG_NET_SOCK_MSG=y +CONFIG_NET_SWITCHDEV=y +CONFIG_NET_TC_SKB_EXT=y +# CONFIG_NET_TEAM is not set +CONFIG_NET_UDP_TUNNEL=y +# CONFIG_NET_VENDOR_3COM is not set +# CONFIG_NET_VENDOR_ADAPTEC is not set +CONFIG_NET_VENDOR_AGERE=y +CONFIG_NET_VENDOR_ALACRITECH=y +# CONFIG_NET_VENDOR_ALTEON is not set +# CONFIG_NET_VENDOR_AMAZON is not set +# CONFIG_NET_VENDOR_AMD is not set +CONFIG_NET_VENDOR_AQUANTIA=y +# CONFIG_NET_VENDOR_ARC is not set +# CONFIG_NET_VENDOR_ATHEROS is not set +# CONFIG_NET_VENDOR_AURORA is not set +CONFIG_NET_VENDOR_BROADCOM=y +# CONFIG_NET_VENDOR_BROCADE is not set +CONFIG_NET_VENDOR_CADENCE=y +# CONFIG_NET_VENDOR_CAVIUM is not set +CONFIG_NET_VENDOR_CHELSIO=y +CONFIG_NET_VENDOR_CIRRUS=y +CONFIG_NET_VENDOR_CISCO=y +CONFIG_NET_VENDOR_CORTINA=y +# CONFIG_NET_VENDOR_DEC is not set +CONFIG_NET_VENDOR_DLINK=y +CONFIG_NET_VENDOR_EMULEX=y +# CONFIG_NET_VENDOR_EZCHIP is not set +CONFIG_NET_VENDOR_GOOGLE=y +CONFIG_NET_VENDOR_HUAWEI=y +CONFIG_NET_VENDOR_I825XX=y +CONFIG_NET_VENDOR_INTEL=y +CONFIG_NET_VENDOR_MARVELL=y +CONFIG_NET_VENDOR_MELLANOX=y +# CONFIG_NET_VENDOR_MICREL is not set +CONFIG_NET_VENDOR_MICROCHIP=y +CONFIG_NET_VENDOR_MICROSEMI=y +# CONFIG_NET_VENDOR_MYRI is not set +# CONFIG_NET_VENDOR_NATSEMI is not set +CONFIG_NET_VENDOR_NETERION=y +CONFIG_NET_VENDOR_NETRONOME=y +CONFIG_NET_VENDOR_NI=y +# CONFIG_NET_VENDOR_NVIDIA is not set +# CONFIG_NET_VENDOR_OKI is not set +CONFIG_NET_VENDOR_PACKET_ENGINES=y +CONFIG_NET_VENDOR_PENSANDO=y +# CONFIG_NET_VENDOR_QLOGIC is not set +# CONFIG_NET_VENDOR_QUALCOMM is not set +# CONFIG_NET_VENDOR_RDC is not set +CONFIG_NET_VENDOR_REALTEK=y +# CONFIG_NET_VENDOR_RENESAS is not set +# CONFIG_NET_VENDOR_ROCKER is not set +# CONFIG_NET_VENDOR_SAMSUNG is not set +# CONFIG_NET_VENDOR_SEEQ is not set +# CONFIG_NET_VENDOR_SILAN is not set +# CONFIG_NET_VENDOR_SIS is not set +# CONFIG_NET_VENDOR_SMSC is not set +# CONFIG_NET_VENDOR_SOCIONEXT is not set +CONFIG_NET_VENDOR_SOLARFLARE=y +# CONFIG_NET_VENDOR_STMICRO is not set +# CONFIG_NET_VENDOR_SUN is not set +CONFIG_NET_VENDOR_SYNOPSYS=y +# CONFIG_NET_VENDOR_TEHUTI is not set +# CONFIG_NET_VENDOR_TI is not set +# CONFIG_NET_VENDOR_VIA is not set +# CONFIG_NET_VENDOR_WIZNET is not set +CONFIG_NET_VENDOR_XILINX=y +CONFIG_NET_VRF=m +CONFIG_NEW_LEDS=y +CONFIG_NFC=m +CONFIG_NFC_DIGITAL=m +# CONFIG_NFC_FDP is not set +CONFIG_NFC_HCI=m +CONFIG_NFC_MEI_PHY=m +CONFIG_NFC_MICROREAD=m +# CONFIG_NFC_MICROREAD_I2C is not set +CONFIG_NFC_MICROREAD_MEI=m +# CONFIG_NFC_MRVL_UART is not set +# CONFIG_NFC_MRVL_USB is not set +CONFIG_NFC_NCI=m +CONFIG_NFC_NCI_SPI=m +CONFIG_NFC_NCI_UART=m +# CONFIG_NFC_NXP_NCI is not set +# CONFIG_NFC_PN533_I2C is not set +# CONFIG_NFC_PN533_USB is not set +CONFIG_NFC_PN544=m +# CONFIG_NFC_PN544_I2C is not set +CONFIG_NFC_PN544_MEI=m +# CONFIG_NFC_PORT100 is not set +# CONFIG_NFC_S3FWRN5_I2C is not set +CONFIG_NFC_SHDLC=y +# CONFIG_NFC_SIM is not set +# CONFIG_NFC_ST21NFCA_I2C is not set +# CONFIG_NFC_ST95HF is not set +# CONFIG_NFC_ST_NCI_I2C is not set +# CONFIG_NFC_ST_NCI_SPI is not set +# CONFIG_NFC_TRF7970A is not set +# CONFIG_NFIT_SECURITY_DEBUG is not set +CONFIG_NFP=m +CONFIG_NFP_APP_ABM_NIC=y +CONFIG_NFP_APP_FLOWER=y +# CONFIG_NFP_DEBUG is not set +CONFIG_NFSD=m +CONFIG_NFSD_BLOCKLAYOUT=y +CONFIG_NFSD_FLEXFILELAYOUT=y +CONFIG_NFSD_PNFS=y +CONFIG_NFSD_SCSILAYOUT=y +CONFIG_NFSD_V2_ACL=y +CONFIG_NFSD_V3=y +CONFIG_NFSD_V3_ACL=y +CONFIG_NFSD_V4=y +CONFIG_NFSD_V4_SECURITY_LABEL=y +CONFIG_NFS_ACL_SUPPORT=m +CONFIG_NFS_COMMON=y +CONFIG_NFS_DEBUG=y +CONFIG_NFS_DISABLE_UDP_SUPPORT=y +CONFIG_NFS_FS=m +CONFIG_NFS_FSCACHE=y +CONFIG_NFS_SWAP=y +CONFIG_NFS_USE_KERNEL_DNS=y +# CONFIG_NFS_USE_LEGACY_DNS is not set +CONFIG_NFS_V2=m +CONFIG_NFS_V3=m +CONFIG_NFS_V3_ACL=y +CONFIG_NFS_V4=m +CONFIG_NFS_V4_1=y +CONFIG_NFS_V4_1_IMPLEMENTATION_ID_DOMAIN="kernel.org" +CONFIG_NFS_V4_1_MIGRATION=y +CONFIG_NFS_V4_2=y +CONFIG_NFS_V4_SECURITY_LABEL=y +CONFIG_NFT_BRIDGE_META=m +CONFIG_NFT_BRIDGE_REJECT=m +CONFIG_NFT_COMPAT=m +CONFIG_NFT_CONNLIMIT=m +CONFIG_NFT_COUNTER=m +CONFIG_NFT_CT=m +CONFIG_NFT_DUP_IPV4=m +CONFIG_NFT_DUP_IPV6=m +CONFIG_NFT_DUP_NETDEV=m +CONFIG_NFT_FIB=m +CONFIG_NFT_FIB_INET=m +CONFIG_NFT_FIB_IPV4=m +CONFIG_NFT_FIB_IPV6=m +CONFIG_NFT_FIB_NETDEV=m +CONFIG_NFT_FLOW_OFFLOAD=m +CONFIG_NFT_FWD_NETDEV=m +CONFIG_NFT_HASH=m +CONFIG_NFT_LIMIT=m +CONFIG_NFT_LOG=m +CONFIG_NFT_MASQ=m +CONFIG_NFT_NAT=m +CONFIG_NFT_NUMGEN=m +CONFIG_NFT_OBJREF=m +CONFIG_NFT_OSF=m +CONFIG_NFT_QUEUE=m +CONFIG_NFT_QUOTA=m +CONFIG_NFT_REDIR=m +CONFIG_NFT_REJECT=m +CONFIG_NFT_REJECT_INET=m +CONFIG_NFT_REJECT_IPV4=m +CONFIG_NFT_REJECT_IPV6=m +CONFIG_NFT_SOCKET=m +CONFIG_NFT_SYNPROXY=m +CONFIG_NFT_TPROXY=m +CONFIG_NFT_TUNNEL=m +CONFIG_NFT_XFRM=m +CONFIG_NF_CONNTRACK=m +CONFIG_NF_CONNTRACK_AMANDA=m +CONFIG_NF_CONNTRACK_BRIDGE=m +CONFIG_NF_CONNTRACK_BROADCAST=m +CONFIG_NF_CONNTRACK_EVENTS=y +CONFIG_NF_CONNTRACK_FTP=m +CONFIG_NF_CONNTRACK_H323=m +CONFIG_NF_CONNTRACK_IRC=m +CONFIG_NF_CONNTRACK_LABELS=y +CONFIG_NF_CONNTRACK_MARK=y +CONFIG_NF_CONNTRACK_NETBIOS_NS=m +CONFIG_NF_CONNTRACK_PPTP=m +# CONFIG_NF_CONNTRACK_PROCFS is not set +CONFIG_NF_CONNTRACK_SANE=m +CONFIG_NF_CONNTRACK_SECMARK=y +CONFIG_NF_CONNTRACK_SIP=m +CONFIG_NF_CONNTRACK_SNMP=m +CONFIG_NF_CONNTRACK_TFTP=m +CONFIG_NF_CONNTRACK_TIMEOUT=y +CONFIG_NF_CONNTRACK_TIMESTAMP=y +CONFIG_NF_CONNTRACK_ZONES=y +CONFIG_NF_CT_NETLINK=m +CONFIG_NF_CT_NETLINK_HELPER=m +CONFIG_NF_CT_NETLINK_TIMEOUT=m +CONFIG_NF_CT_PROTO_DCCP=y +CONFIG_NF_CT_PROTO_GRE=y +CONFIG_NF_CT_PROTO_SCTP=y +CONFIG_NF_CT_PROTO_UDPLITE=y +CONFIG_NF_DEFRAG_IPV4=m +CONFIG_NF_DEFRAG_IPV6=m +CONFIG_NF_DUP_IPV4=m +CONFIG_NF_DUP_IPV6=m +CONFIG_NF_DUP_NETDEV=m +CONFIG_NF_FLOW_TABLE=m +CONFIG_NF_FLOW_TABLE_INET=m +CONFIG_NF_FLOW_TABLE_IPV4=m +CONFIG_NF_FLOW_TABLE_IPV6=m +CONFIG_NF_LOG_ARP=m +CONFIG_NF_LOG_BRIDGE=m +CONFIG_NF_LOG_COMMON=m +CONFIG_NF_LOG_IPV4=m +CONFIG_NF_LOG_IPV6=m +CONFIG_NF_LOG_NETDEV=m +CONFIG_NF_NAT=m +CONFIG_NF_NAT_AMANDA=m +CONFIG_NF_NAT_FTP=m +CONFIG_NF_NAT_H323=m +CONFIG_NF_NAT_IRC=m +CONFIG_NF_NAT_MASQUERADE=y +CONFIG_NF_NAT_PPTP=m +CONFIG_NF_NAT_REDIRECT=y +CONFIG_NF_NAT_SIP=m +CONFIG_NF_NAT_SNMP_BASIC=m +CONFIG_NF_NAT_TFTP=m +CONFIG_NF_REJECT_IPV4=m +CONFIG_NF_REJECT_IPV6=m +CONFIG_NF_SOCKET_IPV4=m +CONFIG_NF_SOCKET_IPV6=m +CONFIG_NF_TABLES=m +CONFIG_NF_TABLES_ARP=y +CONFIG_NF_TABLES_BRIDGE=m +CONFIG_NF_TABLES_INET=y +CONFIG_NF_TABLES_IPV4=y +CONFIG_NF_TABLES_IPV6=y +CONFIG_NF_TABLES_NETDEV=y +CONFIG_NF_TPROXY_IPV4=m +CONFIG_NF_TPROXY_IPV6=m +CONFIG_NI903X_WDT=m +CONFIG_NIC7018_WDT=m +CONFIG_NILFS2_FS=m +CONFIG_NI_XGE_MANAGEMENT_ENET=m +# CONFIG_NL80211_TESTMODE is not set +CONFIG_NLATTR=y +CONFIG_NLMON=m +CONFIG_NLS=y +CONFIG_NLS_ASCII=m +CONFIG_NLS_CODEPAGE_1250=m +CONFIG_NLS_CODEPAGE_1251=m +CONFIG_NLS_CODEPAGE_437=y +CONFIG_NLS_CODEPAGE_737=m +CONFIG_NLS_CODEPAGE_775=m +CONFIG_NLS_CODEPAGE_850=m +CONFIG_NLS_CODEPAGE_852=m +CONFIG_NLS_CODEPAGE_855=m +CONFIG_NLS_CODEPAGE_857=m +CONFIG_NLS_CODEPAGE_860=m +CONFIG_NLS_CODEPAGE_861=m +CONFIG_NLS_CODEPAGE_862=m +CONFIG_NLS_CODEPAGE_863=m +CONFIG_NLS_CODEPAGE_864=m +CONFIG_NLS_CODEPAGE_865=m +CONFIG_NLS_CODEPAGE_866=m +CONFIG_NLS_CODEPAGE_869=m +CONFIG_NLS_CODEPAGE_874=m +CONFIG_NLS_CODEPAGE_932=m +CONFIG_NLS_CODEPAGE_936=m +CONFIG_NLS_CODEPAGE_949=m +CONFIG_NLS_CODEPAGE_950=m +CONFIG_NLS_DEFAULT="utf8" +CONFIG_NLS_ISO8859_1=m +CONFIG_NLS_ISO8859_13=m +CONFIG_NLS_ISO8859_14=m +CONFIG_NLS_ISO8859_15=m +CONFIG_NLS_ISO8859_2=m +CONFIG_NLS_ISO8859_3=m +CONFIG_NLS_ISO8859_4=m +CONFIG_NLS_ISO8859_5=m +CONFIG_NLS_ISO8859_6=m +CONFIG_NLS_ISO8859_7=m +CONFIG_NLS_ISO8859_8=m +CONFIG_NLS_ISO8859_9=m +CONFIG_NLS_KOI8_R=m +CONFIG_NLS_KOI8_U=m +CONFIG_NLS_MAC_CELTIC=m +CONFIG_NLS_MAC_CENTEURO=m +CONFIG_NLS_MAC_CROATIAN=m +CONFIG_NLS_MAC_CYRILLIC=m +CONFIG_NLS_MAC_GAELIC=m +CONFIG_NLS_MAC_GREEK=m +CONFIG_NLS_MAC_ICELAND=m +CONFIG_NLS_MAC_INUIT=m +CONFIG_NLS_MAC_ROMAN=m +CONFIG_NLS_MAC_ROMANIAN=m +CONFIG_NLS_MAC_TURKISH=m +CONFIG_NLS_UTF8=m +CONFIG_NODES_SHIFT=10 +CONFIG_NOP_TRACER=y +# CONFIG_NOP_USB_XCEIV is not set +CONFIG_NOTIFIER_ERROR_INJECTION=m +CONFIG_NOZOMI=m +CONFIG_NO_HZ=y +CONFIG_NO_HZ_COMMON=y +CONFIG_NO_HZ_FULL=y +# CONFIG_NO_HZ_IDLE is not set +CONFIG_NR_CPUS=8192 +CONFIG_NR_CPUS_DEFAULT=8192 +CONFIG_NR_CPUS_RANGE_BEGIN=8192 +CONFIG_NR_CPUS_RANGE_END=8192 +CONFIG_NTB=m +# CONFIG_NTB_AMD is not set +CONFIG_NTB_IDT=m +CONFIG_NTB_INTEL=m +CONFIG_NTB_MSI=y +# CONFIG_NTB_MSI_TEST is not set +CONFIG_NTB_NETDEV=m +# CONFIG_NTB_PERF is not set +# CONFIG_NTB_PINGPONG is not set +CONFIG_NTB_SWITCHTEC=m +# CONFIG_NTB_TOOL is not set +CONFIG_NTB_TRANSPORT=m +# CONFIG_NTFS_DEBUG is not set +CONFIG_NTFS_FS=m +# CONFIG_NTFS_RW is not set +CONFIG_NULL_TTY=m +CONFIG_NUMA=y +CONFIG_NUMA_BALANCING=y +CONFIG_NUMA_BALANCING_DEFAULT_ENABLED=y +# CONFIG_NUMA_EMU is not set +CONFIG_NUMA_KEEP_MEMINFO=y +CONFIG_NVDIMM_DAX=y +CONFIG_NVDIMM_KEYS=y +CONFIG_NVDIMM_PFN=y +# CONFIG_NVM is not set +CONFIG_NVMEM=y +CONFIG_NVMEM_SYSFS=y +CONFIG_NVME_CORE=y +CONFIG_NVME_FABRICS=m +CONFIG_NVME_FC=m +CONFIG_NVME_HWMON=y +CONFIG_NVME_MULTIPATH=y +CONFIG_NVME_RDMA=m +CONFIG_NVME_TARGET=m +CONFIG_NVME_TARGET_FC=m +# CONFIG_NVME_TARGET_FCLOOP is not set +# CONFIG_NVME_TARGET_LOOP is not set +# CONFIG_NVME_TARGET_RDMA is not set +CONFIG_NVME_TARGET_TCP=m +CONFIG_NVME_TCP=m +CONFIG_NVRAM=m +CONFIG_NV_TCO=m +CONFIG_NXP_TJA11XX_PHY=m +CONFIG_N_GSM=m +CONFIG_N_HDLC=m +CONFIG_OBJAGG=m +# CONFIG_OCFS2_DEBUG_FS is not set +CONFIG_OCFS2_DEBUG_MASKLOG=y +CONFIG_OCFS2_FS=m +CONFIG_OCFS2_FS_O2CB=m +CONFIG_OCFS2_FS_STATS=y +CONFIG_OCFS2_FS_USERSPACE_CLUSTER=m +# CONFIG_OF is not set +CONFIG_OID_REGISTRY=y +CONFIG_OLD_SIGSUSPEND3=y +CONFIG_OMFS_FS=m +CONFIG_OPENVSWITCH=m +CONFIG_OPENVSWITCH_GENEVE=m +CONFIG_OPENVSWITCH_GRE=m +CONFIG_OPENVSWITCH_VXLAN=m +CONFIG_OPROFILE=m +# CONFIG_OPROFILE_EVENT_MULTIPLEX is not set +CONFIG_OPROFILE_NMI_TIMER=y +CONFIG_OPTPROBES=y +# CONFIG_ORANGEFS_FS is not set +CONFIG_OSF_PARTITION=y +CONFIG_OUTPUT_FORMAT="elf64-x86-64" +CONFIG_OVERLAY_FS=m +# CONFIG_OVERLAY_FS_INDEX is not set +# CONFIG_OVERLAY_FS_METACOPY is not set +CONFIG_OVERLAY_FS_REDIRECT_ALWAYS_FOLLOW=y +CONFIG_OVERLAY_FS_REDIRECT_DIR=y +CONFIG_OVERLAY_FS_XINO_AUTO=y +CONFIG_PACKET=y +CONFIG_PACKET_DIAG=m +CONFIG_PACKING=y +CONFIG_PADATA=y +CONFIG_PAGE_COUNTER=y +# CONFIG_PAGE_EXTENSION is not set +# CONFIG_PAGE_OWNER is not set +CONFIG_PAGE_POISONING=y +CONFIG_PAGE_POISONING_NO_SANITY=y +CONFIG_PAGE_POISONING_ZERO=y +CONFIG_PAGE_POOL=y +CONFIG_PAGE_REPORTING=y +CONFIG_PAGE_TABLE_ISOLATION=y +# CONFIG_PANASONIC_LAPTOP is not set +CONFIG_PANEL=m +# CONFIG_PANEL_CHANGE_MESSAGE is not set +CONFIG_PANEL_PARPORT=0 +CONFIG_PANEL_PROFILE=5 +# CONFIG_PANIC_ON_OOPS is not set +CONFIG_PANIC_ON_OOPS_VALUE=0 +CONFIG_PANIC_TIMEOUT=0 +CONFIG_PARAVIRT=y +CONFIG_PARAVIRT_CLOCK=y +# CONFIG_PARAVIRT_DEBUG is not set +CONFIG_PARAVIRT_SPINLOCKS=y +# CONFIG_PARAVIRT_TIME_ACCOUNTING is not set +# CONFIG_PARIDE is not set +CONFIG_PARMAN=m +CONFIG_PARPORT=m +CONFIG_PARPORT_1284=y +CONFIG_PARPORT_AX88796=m +CONFIG_PARPORT_NOT_PC=y +CONFIG_PARPORT_PANEL=m +CONFIG_PARPORT_PC=m +CONFIG_PARPORT_PC_FIFO=y +# CONFIG_PARPORT_PC_SUPERIO is not set +CONFIG_PARPORT_SERIAL=m +CONFIG_PARTITION_ADVANCED=y +CONFIG_PATA_ACPI=m +CONFIG_PATA_ALI=m +CONFIG_PATA_AMD=m +CONFIG_PATA_ARTOP=m +CONFIG_PATA_ATIIXP=m +CONFIG_PATA_ATP867X=m +CONFIG_PATA_CMD640_PCI=m +CONFIG_PATA_CMD64X=m +CONFIG_PATA_CYPRESS=m +CONFIG_PATA_EFAR=m +CONFIG_PATA_HPT366=m +CONFIG_PATA_HPT37X=m +CONFIG_PATA_HPT3X2N=m +CONFIG_PATA_HPT3X3=m +# CONFIG_PATA_HPT3X3_DMA is not set +CONFIG_PATA_IT8213=m +CONFIG_PATA_IT821X=m +CONFIG_PATA_JMICRON=m +CONFIG_PATA_LEGACY=m +CONFIG_PATA_MARVELL=m +CONFIG_PATA_MPIIX=m +CONFIG_PATA_NETCELL=m +CONFIG_PATA_NINJA32=m +CONFIG_PATA_NS87410=m +CONFIG_PATA_NS87415=m +CONFIG_PATA_OLDPIIX=m +CONFIG_PATA_OPTI=m +CONFIG_PATA_OPTIDMA=m +CONFIG_PATA_PDC2027X=m +CONFIG_PATA_PDC_OLD=m +CONFIG_PATA_PLATFORM=m +CONFIG_PATA_RADISYS=m +CONFIG_PATA_RDC=m +CONFIG_PATA_RZ1000=m +CONFIG_PATA_SCH=m +CONFIG_PATA_SERVERWORKS=m +CONFIG_PATA_SIL680=m +CONFIG_PATA_SIS=y +CONFIG_PATA_TIMINGS=y +CONFIG_PATA_TOSHIBA=m +CONFIG_PATA_TRIFLEX=m +CONFIG_PATA_VIA=m +CONFIG_PATA_WINBOND=m +CONFIG_PC104=y +CONFIG_PC300TOO=m +CONFIG_PC87413_WDT=m +CONFIG_PCC=y +CONFIG_PCCARD=m +CONFIG_PCENGINES_APU2=m +CONFIG_PCF50633_ADC=m +CONFIG_PCF50633_GPIO=m +CONFIG_PCI=y +CONFIG_PCI200SYN=m +CONFIG_PCIEAER=y +# CONFIG_PCIEAER_INJECT is not set +CONFIG_PCIEASPM=y +CONFIG_PCIEASPM_DEFAULT=y +# CONFIG_PCIEASPM_PERFORMANCE is not set +# CONFIG_PCIEASPM_POWERSAVE is not set +# CONFIG_PCIEASPM_POWER_SUPERSAVE is not set +CONFIG_PCIEPORTBUS=y +# CONFIG_PCIE_BW is not set +CONFIG_PCIE_DPC=y +CONFIG_PCIE_DW=y +CONFIG_PCIE_DW_EP=y +CONFIG_PCIE_DW_HOST=y +CONFIG_PCIE_DW_PLAT=y +CONFIG_PCIE_DW_PLAT_EP=y +CONFIG_PCIE_DW_PLAT_HOST=y +# CONFIG_PCIE_ECRC is not set +# CONFIG_PCIE_EDR is not set +CONFIG_PCIE_PME=y +CONFIG_PCIE_PTM=y +CONFIG_PCIPCWATCHDOG=m +CONFIG_PCI_ATS=y +# CONFIG_PCI_CNB20LE_QUIRK is not set +# CONFIG_PCI_DEBUG is not set +CONFIG_PCI_DIRECT=y +CONFIG_PCI_DOMAINS=y +CONFIG_PCI_ENDPOINT=y +CONFIG_PCI_ENDPOINT_CONFIGFS=y +# CONFIG_PCI_ENDPOINT_TEST is not set +# CONFIG_PCI_EPF_TEST is not set +CONFIG_PCI_HYPERV=y +CONFIG_PCI_HYPERV_INTERFACE=y +CONFIG_PCI_IOV=y +CONFIG_PCI_LABEL=y +CONFIG_PCI_LOCKLESS_CONFIG=y +CONFIG_PCI_MESON=y +CONFIG_PCI_MMCONFIG=y +CONFIG_PCI_MSI=y +CONFIG_PCI_MSI_IRQ_DOMAIN=y +# CONFIG_PCI_P2PDMA is not set +CONFIG_PCI_PASID=y +CONFIG_PCI_PF_STUB=m +CONFIG_PCI_PRI=y +CONFIG_PCI_QUIRKS=y +CONFIG_PCI_REALLOC_ENABLE_AUTO=y +CONFIG_PCI_STUB=m +CONFIG_PCI_SW_SWITCHTEC=m +# CONFIG_PCMCIA is not set +CONFIG_PCSPKR_PLATFORM=y +# CONFIG_PDA_POWER is not set +CONFIG_PDC_ADMA=m +CONFIG_PEAQ_WMI=m +# CONFIG_PERCPU_STATS is not set +CONFIG_PERF_EVENTS=y +# CONFIG_PERF_EVENTS_AMD_POWER is not set +CONFIG_PERF_EVENTS_INTEL_CSTATE=m +CONFIG_PERF_EVENTS_INTEL_RAPL=m +CONFIG_PERF_EVENTS_INTEL_UNCORE=y +CONFIG_PERSISTENT_KEYRINGS=y +CONFIG_PGTABLE_LEVELS=5 +CONFIG_PHANTOM=m +CONFIG_PHONET=m +CONFIG_PHYLIB=y +CONFIG_PHYLINK=m +CONFIG_PHYSICAL_ALIGN=0x200000 +CONFIG_PHYSICAL_START=0x1000000 +CONFIG_PHYS_ADDR_T_64BIT=y +CONFIG_PHY_INTEL_EMMC=m +# CONFIG_PHY_PXA_28NM_HSIC is not set +# CONFIG_PHY_PXA_28NM_USB2 is not set +CONFIG_PI433=m +CONFIG_PID_NS=y +CONFIG_PINCONF=y +CONFIG_PINCTRL=y +# CONFIG_PINCTRL_AMD is not set +CONFIG_PINCTRL_BAYTRAIL=y +# CONFIG_PINCTRL_BROXTON is not set +CONFIG_PINCTRL_CANNONLAKE=m +CONFIG_PINCTRL_CEDARFORK=m +CONFIG_PINCTRL_CHERRYVIEW=y +CONFIG_PINCTRL_CS47L15=y +CONFIG_PINCTRL_CS47L35=y +CONFIG_PINCTRL_CS47L85=y +CONFIG_PINCTRL_CS47L90=y +CONFIG_PINCTRL_CS47L92=y +CONFIG_PINCTRL_DENVERTON=m +# CONFIG_PINCTRL_GEMINILAKE is not set +CONFIG_PINCTRL_ICELAKE=m +CONFIG_PINCTRL_INTEL=m +CONFIG_PINCTRL_JASPERLAKE=m +CONFIG_PINCTRL_LEWISBURG=m +CONFIG_PINCTRL_LYNXPOINT=m +CONFIG_PINCTRL_MADERA=m +CONFIG_PINCTRL_MCP23S08=m +CONFIG_PINCTRL_MCP23S08_I2C=m +CONFIG_PINCTRL_MCP23S08_SPI=m +# CONFIG_PINCTRL_SUNRISEPOINT is not set +CONFIG_PINCTRL_TIGERLAKE=m +CONFIG_PINMUX=y +CONFIG_PKCS7_MESSAGE_PARSER=y +CONFIG_PKCS7_TEST_KEY=m +CONFIG_PKCS8_PRIVATE_KEY_PARSER=m +# CONFIG_PLIP is not set +CONFIG_PLX_DMA=m +CONFIG_PM=y +# CONFIG_PMBUS is not set +CONFIG_PMC_ATOM=y +CONFIG_PMIC_DA9052=y +CONFIG_PMIC_OPREGION=y +CONFIG_PM_ADVANCED_DEBUG=y +# CONFIG_PM_AUTOSLEEP is not set +CONFIG_PM_CLK=y +CONFIG_PM_DEBUG=y +CONFIG_PM_DEVFREQ=y +CONFIG_PM_DEVFREQ_EVENT=y +CONFIG_PM_GENERIC_DOMAINS=y +CONFIG_PM_GENERIC_DOMAINS_SLEEP=y +CONFIG_PM_NOTIFIER_ERROR_INJECT=m +CONFIG_PM_OPP=y +CONFIG_PM_SLEEP=y +CONFIG_PM_SLEEP_DEBUG=y +CONFIG_PM_SLEEP_SMP=y +CONFIG_PM_STD_PARTITION="" +# CONFIG_PM_TEST_SUSPEND is not set +CONFIG_PM_TRACE=y +CONFIG_PM_TRACE_RTC=y +CONFIG_PM_WAKELOCKS=y +CONFIG_PM_WAKELOCKS_GC=y +CONFIG_PM_WAKELOCKS_LIMIT=100 +CONFIG_PNFS_BLOCK=m +CONFIG_PNFS_FILE_LAYOUT=m +CONFIG_PNFS_FLEXFILE_LAYOUT=m +CONFIG_PNP=y +CONFIG_PNPACPI=y +# CONFIG_PNP_DEBUG_MESSAGES is not set +CONFIG_POSIX_MQUEUE=y +CONFIG_POSIX_MQUEUE_SYSCTL=y +CONFIG_POSIX_TIMERS=y +# CONFIG_POWERCAP is not set +CONFIG_POWER_AVS=y +CONFIG_POWER_RESET=y +CONFIG_POWER_RESET_RESTART=y +CONFIG_POWER_SUPPLY=y +# CONFIG_POWER_SUPPLY_DEBUG is not set +CONFIG_POWER_SUPPLY_HWMON=y +CONFIG_PPDEV=m +CONFIG_PPP=y +CONFIG_PPPOATM=m +CONFIG_PPPOE=m +CONFIG_PPPOL2TP=m +CONFIG_PPP_ASYNC=m +CONFIG_PPP_BSDCOMP=m +CONFIG_PPP_DEFLATE=m +CONFIG_PPP_FILTER=y +CONFIG_PPP_MPPE=m +CONFIG_PPP_MULTILINK=y +CONFIG_PPP_SYNC_TTY=m +CONFIG_PPS=y +# CONFIG_PPS_CLIENT_GPIO is not set +# CONFIG_PPS_CLIENT_KTIMER is not set +# CONFIG_PPS_CLIENT_LDISC is not set +# CONFIG_PPS_CLIENT_PARPORT is not set +# CONFIG_PPS_DEBUG is not set +CONFIG_PPTP=m +# CONFIG_PREEMPT is not set +# CONFIG_PREEMPTIRQ_DELAY_TEST is not set +# CONFIG_PREEMPT_NONE is not set +CONFIG_PREEMPT_NOTIFIERS=y +CONFIG_PREEMPT_VOLUNTARY=y +CONFIG_PREVENT_FIRMWARE_BUILD=y +# CONFIG_PRIME_NUMBERS is not set +CONFIG_PRINTER=m +CONFIG_PRINTK=y +# CONFIG_PRINTK_CALLER is not set +CONFIG_PRINTK_NMI=y +CONFIG_PRINTK_SAFE_LOG_BUF_SHIFT=13 +CONFIG_PRINTK_TIME=y +# CONFIG_PRINT_QUOTA_WARNING is not set +CONFIG_PROBE_EVENTS=y +CONFIG_PROCESSOR_SELECT=y +CONFIG_PROC_CHILDREN=y +CONFIG_PROC_CPU_RESCTRL=y +CONFIG_PROC_EVENTS=y +CONFIG_PROC_FS=y +CONFIG_PROC_KCORE=y +CONFIG_PROC_PAGE_MONITOR=y +CONFIG_PROC_PID_ARCH_STATUS=y +CONFIG_PROC_PID_CPUSET=y +CONFIG_PROC_SYSCTL=y +CONFIG_PROC_VMCORE=y +CONFIG_PROC_VMCORE_DEVICE_DUMP=y +# CONFIG_PROFILE_ANNOTATED_BRANCHES is not set +CONFIG_PROFILING=y +# CONFIG_PROVE_LOCKING is not set +# CONFIG_PROVIDE_OHCI1394_DMA_INIT is not set +CONFIG_PSAMPLE=m +CONFIG_PSI=y +# CONFIG_PSI_DEFAULT_DISABLED is not set +CONFIG_PSTORE=y +# CONFIG_PSTORE_842_COMPRESS is not set +CONFIG_PSTORE_BLK=m +CONFIG_PSTORE_BLK_BLKDEV="" +CONFIG_PSTORE_BLK_KMSG_SIZE=64 +CONFIG_PSTORE_BLK_MAX_REASON=2 +CONFIG_PSTORE_COMPRESS=y +CONFIG_PSTORE_COMPRESS_DEFAULT="deflate" +# CONFIG_PSTORE_CONSOLE is not set +CONFIG_PSTORE_DEFLATE_COMPRESS=y +CONFIG_PSTORE_DEFLATE_COMPRESS_DEFAULT=y +# CONFIG_PSTORE_FTRACE is not set +# CONFIG_PSTORE_LZ4HC_COMPRESS is not set +# CONFIG_PSTORE_LZ4_COMPRESS is not set +# CONFIG_PSTORE_LZO_COMPRESS is not set +# CONFIG_PSTORE_PMSG is not set +CONFIG_PSTORE_RAM=m +CONFIG_PSTORE_ZONE=m +# CONFIG_PSTORE_ZSTD_COMPRESS is not set +CONFIG_PTDUMP_CORE=y +# CONFIG_PTDUMP_DEBUGFS is not set +CONFIG_PTP_1588_CLOCK=y +CONFIG_PTP_1588_CLOCK_IDT82P33=m +CONFIG_PTP_1588_CLOCK_IDTCM=m +CONFIG_PTP_1588_CLOCK_KVM=m +CONFIG_PTP_1588_CLOCK_VMW=m +CONFIG_PUNIT_ATOM_DEBUG=m +CONFIG_PVH=y +CONFIG_PVPANIC=m +# CONFIG_PWM is not set +CONFIG_QCOM_CPR=m +# CONFIG_QCOM_HIDMA is not set +# CONFIG_QCOM_HIDMA_MGMT is not set +CONFIG_QFMT_V1=m +CONFIG_QFMT_V2=m +CONFIG_QLGE=m +CONFIG_QNX4FS_FS=m +# CONFIG_QNX6FS_DEBUG is not set +CONFIG_QNX6FS_FS=m +CONFIG_QRTR=m +CONFIG_QRTR_MHI=m +CONFIG_QRTR_SMD=m +CONFIG_QRTR_TUN=m +# CONFIG_QSEMI_PHY is not set +CONFIG_QUEUED_RWLOCKS=y +CONFIG_QUEUED_SPINLOCKS=y +CONFIG_QUOTA=y +CONFIG_QUOTACTL=y +CONFIG_QUOTACTL_COMPAT=y +# CONFIG_QUOTA_DEBUG is not set +CONFIG_QUOTA_NETLINK_INTERFACE=y +CONFIG_QUOTA_TREE=m +CONFIG_R8169=m +CONFIG_RAID6_PQ=m +CONFIG_RAID6_PQ_BENCHMARK=y +CONFIG_RAID_ATTRS=m +# CONFIG_RANDOM32_SELFTEST is not set +CONFIG_RANDOMIZE_BASE=y +CONFIG_RANDOMIZE_MEMORY=y +CONFIG_RANDOMIZE_MEMORY_PHYSICAL_PADDING=0xa +CONFIG_RANDOM_TRUST_BOOTLOADER=y +CONFIG_RANDOM_TRUST_CPU=y +CONFIG_RAPIDIO=y +CONFIG_RAPIDIO_CHMAN=m +# CONFIG_RAPIDIO_CPS_GEN2 is not set +# CONFIG_RAPIDIO_CPS_XX is not set +# CONFIG_RAPIDIO_DEBUG is not set +CONFIG_RAPIDIO_DISC_TIMEOUT=30 +CONFIG_RAPIDIO_DMA_ENGINE=y +# CONFIG_RAPIDIO_ENABLE_RX_TX_PORTS is not set +CONFIG_RAPIDIO_ENUM_BASIC=m +CONFIG_RAPIDIO_MPORT_CDEV=m +# CONFIG_RAPIDIO_RXS_GEN3 is not set +# CONFIG_RAPIDIO_TSI568 is not set +# CONFIG_RAPIDIO_TSI57X is not set +CONFIG_RAPIDIO_TSI721=m +CONFIG_RAS=y +CONFIG_RAS_CEC=y +# CONFIG_RAS_CEC_DEBUG is not set +CONFIG_RATIONAL=y +CONFIG_RAW_DRIVER=m +CONFIG_RCU_CPU_STALL_TIMEOUT=60 +# CONFIG_RCU_EQS_DEBUG is not set +# CONFIG_RCU_EXPERT is not set +CONFIG_RCU_NEED_SEGCBLIST=y +CONFIG_RCU_NOCB_CPU=y +CONFIG_RCU_PERF_TEST=m +CONFIG_RCU_STALL_COMMON=y +# CONFIG_RCU_TORTURE_TEST is not set +# CONFIG_RCU_TRACE is not set +# CONFIG_RC_ATI_REMOTE is not set +CONFIG_RC_CORE=m +CONFIG_RC_DECODERS=y +CONFIG_RC_DEVICES=y +CONFIG_RC_LOOPBACK=m +CONFIG_RC_MAP=m +# CONFIG_RC_XBOX_DVD is not set +# CONFIG_RDMA_RXE is not set +CONFIG_RDMA_SIW=m +CONFIG_RDS=m +# CONFIG_RDS_DEBUG is not set +CONFIG_RDS_RDMA=m +CONFIG_RDS_TCP=m +CONFIG_RD_BZIP2=y +CONFIG_RD_GZIP=y +CONFIG_RD_LZ4=y +CONFIG_RD_LZMA=y +CONFIG_RD_LZO=y +CONFIG_RD_XZ=y +# CONFIG_READABLE_ASM is not set +# CONFIG_READ_ONLY_THP_FOR_FS is not set +CONFIG_REALTEK_PHY=m +CONFIG_REED_SOLOMON=m +CONFIG_REED_SOLOMON_DEC8=y +CONFIG_REED_SOLOMON_ENC8=y +CONFIG_REGMAP=y +CONFIG_REGMAP_I2C=m +CONFIG_REGMAP_IRQ=y +CONFIG_REGMAP_MMIO=y +CONFIG_REGMAP_SLIMBUS=m +CONFIG_REGMAP_SPI=y +CONFIG_REGULATOR=y +CONFIG_REGULATOR_88PG86X=m +# CONFIG_REGULATOR_ACT8865 is not set +# CONFIG_REGULATOR_AD5398 is not set +# CONFIG_REGULATOR_AXP20X is not set +# CONFIG_REGULATOR_BCM590XX is not set +CONFIG_REGULATOR_BD9571MWV=m +# CONFIG_REGULATOR_DA9052 is not set +# CONFIG_REGULATOR_DA9210 is not set +# CONFIG_REGULATOR_DA9211 is not set +# CONFIG_REGULATOR_DEBUG is not set +# CONFIG_REGULATOR_FAN53555 is not set +CONFIG_REGULATOR_FIXED_VOLTAGE=m +# CONFIG_REGULATOR_GPIO is not set +# CONFIG_REGULATOR_ISL6271A is not set +# CONFIG_REGULATOR_ISL9305 is not set +CONFIG_REGULATOR_LM363X=m +# CONFIG_REGULATOR_LP3971 is not set +# CONFIG_REGULATOR_LP3972 is not set +# CONFIG_REGULATOR_LP872X is not set +# CONFIG_REGULATOR_LP8755 is not set +# CONFIG_REGULATOR_LTC3589 is not set +# CONFIG_REGULATOR_LTC3676 is not set +# CONFIG_REGULATOR_MAX14577 is not set +# CONFIG_REGULATOR_MAX1586 is not set +# CONFIG_REGULATOR_MAX77693 is not set +CONFIG_REGULATOR_MAX77826=m +# CONFIG_REGULATOR_MAX8649 is not set +# CONFIG_REGULATOR_MAX8660 is not set +# CONFIG_REGULATOR_MAX8907 is not set +# CONFIG_REGULATOR_MAX8952 is not set +# CONFIG_REGULATOR_MC13783 is not set +# CONFIG_REGULATOR_MC13892 is not set +CONFIG_REGULATOR_MP8859=m +# CONFIG_REGULATOR_MT6311 is not set +# CONFIG_REGULATOR_PCAP is not set +# CONFIG_REGULATOR_PCF50633 is not set +# CONFIG_REGULATOR_PFUZE100 is not set +# CONFIG_REGULATOR_PV88060 is not set +# CONFIG_REGULATOR_PV88080 is not set +# CONFIG_REGULATOR_PV88090 is not set +# CONFIG_REGULATOR_RT5033 is not set +# CONFIG_REGULATOR_SKY81452 is not set +CONFIG_REGULATOR_SLG51000=m +# CONFIG_REGULATOR_TPS51632 is not set +# CONFIG_REGULATOR_TPS6105X is not set +# CONFIG_REGULATOR_TPS62360 is not set +# CONFIG_REGULATOR_TPS65023 is not set +# CONFIG_REGULATOR_TPS6507X is not set +# CONFIG_REGULATOR_TPS65086 is not set +CONFIG_REGULATOR_TPS65132=m +# CONFIG_REGULATOR_TPS6524X is not set +# CONFIG_REGULATOR_TPS65912 is not set +# CONFIG_REGULATOR_USERSPACE_CONSUMER is not set +# CONFIG_REGULATOR_VIRTUAL_CONSUMER is not set +# CONFIG_REGULATOR_WM831X is not set +# CONFIG_REGULATOR_WM8994 is not set +# CONFIG_REISERFS_CHECK is not set +CONFIG_REISERFS_FS=m +CONFIG_REISERFS_FS_POSIX_ACL=y +CONFIG_REISERFS_FS_SECURITY=y +CONFIG_REISERFS_FS_XATTR=y +# CONFIG_REISERFS_PROC_INFO is not set +CONFIG_RELAY=y +CONFIG_RELOCATABLE=y +# CONFIG_REMOTEPROC is not set +CONFIG_RENESAS_PHY=m +CONFIG_RESET_ATTACK_MITIGATION=y +CONFIG_RESET_BRCMSTB_RESCAL=y +CONFIG_RESET_CONTROLLER=y +CONFIG_RESET_TI_SYSCON=m +CONFIG_RETPOLINE=y +CONFIG_RETU_WATCHDOG=m +CONFIG_RFKILL=y +CONFIG_RFKILL_GPIO=m +CONFIG_RFKILL_INPUT=y +CONFIG_RFKILL_LEDS=y +CONFIG_RFS_ACCEL=y +CONFIG_RING_BUFFER=y +CONFIG_RING_BUFFER_ALLOW_SWAP=y +# CONFIG_RING_BUFFER_BENCHMARK is not set +# CONFIG_RING_BUFFER_STARTUP_TEST is not set +CONFIG_RIONET=m +CONFIG_RIONET_RX_SIZE=128 +CONFIG_RIONET_TX_SIZE=128 +# CONFIG_RMI4_CORE is not set +CONFIG_ROCKCHIP_PHY=m +CONFIG_ROCKETPORT=m +CONFIG_ROMFS_BACKED_BY_BLOCK=y +CONFIG_ROMFS_FS=m +CONFIG_ROMFS_ON_BLOCK=y +CONFIG_ROSE=m +CONFIG_RPCSEC_GSS_KRB5=m +CONFIG_RPMSG=m +CONFIG_RPMSG_CHAR=m +CONFIG_RPMSG_QCOM_GLINK=m +CONFIG_RPMSG_QCOM_GLINK_RPM=m +CONFIG_RPMSG_VIRTIO=m +CONFIG_RPS=y +CONFIG_RSEQ=y +CONFIG_RTC_CLASS=y +# CONFIG_RTC_DEBUG is not set +# CONFIG_RTC_DRV_ABB5ZES3 is not set +CONFIG_RTC_DRV_ABEOZ9=m +# CONFIG_RTC_DRV_ABX80X is not set +# CONFIG_RTC_DRV_BQ32K is not set +# CONFIG_RTC_DRV_BQ4802 is not set +CONFIG_RTC_DRV_CMOS=y +# CONFIG_RTC_DRV_DA9052 is not set +# CONFIG_RTC_DRV_DA9063 is not set +# CONFIG_RTC_DRV_DS1286 is not set +# CONFIG_RTC_DRV_DS1302 is not set +# CONFIG_RTC_DRV_DS1305 is not set +# CONFIG_RTC_DRV_DS1307 is not set +# CONFIG_RTC_DRV_DS1343 is not set +# CONFIG_RTC_DRV_DS1347 is not set +# CONFIG_RTC_DRV_DS1374 is not set +# CONFIG_RTC_DRV_DS1390 is not set +# CONFIG_RTC_DRV_DS1511 is not set +# CONFIG_RTC_DRV_DS1553 is not set +# CONFIG_RTC_DRV_DS1672 is not set +# CONFIG_RTC_DRV_DS1685_FAMILY is not set +# CONFIG_RTC_DRV_DS1742 is not set +# CONFIG_RTC_DRV_DS2404 is not set +# CONFIG_RTC_DRV_DS3232 is not set +# CONFIG_RTC_DRV_EM3027 is not set +# CONFIG_RTC_DRV_FM3130 is not set +CONFIG_RTC_DRV_FTRTC010=m +# CONFIG_RTC_DRV_ISL12022 is not set +# CONFIG_RTC_DRV_ISL1208 is not set +# CONFIG_RTC_DRV_M41T80 is not set +# CONFIG_RTC_DRV_M41T93 is not set +# CONFIG_RTC_DRV_M41T94 is not set +# CONFIG_RTC_DRV_M48T35 is not set +# CONFIG_RTC_DRV_M48T59 is not set +# CONFIG_RTC_DRV_M48T86 is not set +# CONFIG_RTC_DRV_MAX6900 is not set +# CONFIG_RTC_DRV_MAX6902 is not set +# CONFIG_RTC_DRV_MAX6916 is not set +# CONFIG_RTC_DRV_MAX8907 is not set +# CONFIG_RTC_DRV_MC13XXX is not set +# CONFIG_RTC_DRV_MCP795 is not set +# CONFIG_RTC_DRV_MSM6242 is not set +# CONFIG_RTC_DRV_PCAP is not set +# CONFIG_RTC_DRV_PCF2123 is not set +# CONFIG_RTC_DRV_PCF2127 is not set +# CONFIG_RTC_DRV_PCF50633 is not set +# CONFIG_RTC_DRV_PCF85063 is not set +# CONFIG_RTC_DRV_PCF8523 is not set +CONFIG_RTC_DRV_PCF85363=m +# CONFIG_RTC_DRV_PCF8563 is not set +# CONFIG_RTC_DRV_PCF8583 is not set +# CONFIG_RTC_DRV_R9701 is not set +# CONFIG_RTC_DRV_RP5C01 is not set +# CONFIG_RTC_DRV_RS5C348 is not set +# CONFIG_RTC_DRV_RS5C372 is not set +CONFIG_RTC_DRV_RV3028=m +# CONFIG_RTC_DRV_RV3029C2 is not set +# CONFIG_RTC_DRV_RV8803 is not set +# CONFIG_RTC_DRV_RX4581 is not set +# CONFIG_RTC_DRV_RX6110 is not set +# CONFIG_RTC_DRV_RX8010 is not set +# CONFIG_RTC_DRV_RX8025 is not set +# CONFIG_RTC_DRV_RX8581 is not set +# CONFIG_RTC_DRV_S35390A is not set +CONFIG_RTC_DRV_SD3078=m +# CONFIG_RTC_DRV_STK17TA8 is not set +# CONFIG_RTC_DRV_TEST is not set +# CONFIG_RTC_DRV_V3020 is not set +# CONFIG_RTC_DRV_WM831X is not set +# CONFIG_RTC_DRV_X1205 is not set +CONFIG_RTC_HCTOSYS=y +CONFIG_RTC_HCTOSYS_DEVICE="rtc0" +CONFIG_RTC_I2C_AND_SPI=m +CONFIG_RTC_INTF_DEV=y +# CONFIG_RTC_INTF_DEV_UIE_EMUL is not set +CONFIG_RTC_INTF_PROC=y +CONFIG_RTC_INTF_SYSFS=y +CONFIG_RTC_LIB=y +CONFIG_RTC_MC146818_LIB=y +CONFIG_RTC_NVMEM=y +CONFIG_RTC_SYSTOHC=y +CONFIG_RTC_SYSTOHC_DEVICE="rtc0" +CONFIG_RTS5208=m +# CONFIG_RT_GROUP_SCHED is not set +CONFIG_RT_MUTEXES=y +# CONFIG_RUNTIME_TESTING_MENU is not set +CONFIG_RWSEM_SPIN_ON_OWNER=y +CONFIG_RXKAD=y +CONFIG_S2IO=m +# CONFIG_SAMPLES is not set +# CONFIG_SAMSUNG_LAPTOP is not set +# CONFIG_SAMSUNG_Q10 is not set +# CONFIG_SATA_ACARD_AHCI is not set +CONFIG_SATA_AHCI=m +CONFIG_SATA_AHCI_PLATFORM=m +CONFIG_SATA_DWC=m +# CONFIG_SATA_DWC_DEBUG is not set +CONFIG_SATA_DWC_OLD_DMA=y +CONFIG_SATA_HOST=y +# CONFIG_SATA_INIC162X is not set +CONFIG_SATA_MOBILE_LPM_POLICY=3 +# CONFIG_SATA_MV is not set +# CONFIG_SATA_NV is not set +CONFIG_SATA_PMP=y +# CONFIG_SATA_PROMISE is not set +# CONFIG_SATA_QSTOR is not set +# CONFIG_SATA_SIL is not set +# CONFIG_SATA_SIL24 is not set +# CONFIG_SATA_SIS is not set +# CONFIG_SATA_SVW is not set +# CONFIG_SATA_SX4 is not set +# CONFIG_SATA_ULI is not set +# CONFIG_SATA_VIA is not set +# CONFIG_SATA_VITESSE is not set +# CONFIG_SATA_ZPODD is not set +CONFIG_SBC_EPX_C3_WATCHDOG=m +CONFIG_SBC_FITPC2_WATCHDOG=m +CONFIG_SBITMAP=y +CONFIG_SBNI=m +# CONFIG_SBNI_MULTILINE is not set +CONFIG_SC1200_WDT=m +CONFIG_SCHEDSTATS=y +CONFIG_SCHED_AUTOGROUP=y +CONFIG_SCHED_DEBUG=y +CONFIG_SCHED_HRTICK=y +CONFIG_SCHED_INFO=y +CONFIG_SCHED_MC=y +CONFIG_SCHED_MC_PRIO=y +CONFIG_SCHED_OMIT_FRAME_POINTER=y +CONFIG_SCHED_SMT=y +CONFIG_SCHED_STACK_END_CHECK=y +# CONFIG_SCHED_THERMAL_PRESSURE is not set +CONFIG_SCHED_TRACER=y +# CONFIG_SCIF_BUS is not set +CONFIG_SCSI=y +CONFIG_SCSI_3W_9XXX=m +CONFIG_SCSI_3W_SAS=m +CONFIG_SCSI_AACRAID=m +CONFIG_SCSI_ACARD=m +CONFIG_SCSI_ADVANSYS=m +CONFIG_SCSI_AHA1740=m +CONFIG_SCSI_AIC79XX=m +CONFIG_SCSI_AIC7XXX=m +CONFIG_SCSI_AIC94XX=m +CONFIG_SCSI_AM53C974=m +CONFIG_SCSI_ARCMSR=m +CONFIG_SCSI_BFA_FC=m +# CONFIG_SCSI_BNX2_ISCSI is not set +CONFIG_SCSI_BUSLOGIC=m +CONFIG_SCSI_CHELSIO_FCOE=m +CONFIG_SCSI_CONSTANTS=y +# CONFIG_SCSI_CXGB3_ISCSI is not set +# CONFIG_SCSI_CXGB4_ISCSI is not set +CONFIG_SCSI_DC395x=m +CONFIG_SCSI_DEBUG=m +CONFIG_SCSI_DH=y +CONFIG_SCSI_DH_ALUA=m +CONFIG_SCSI_DH_EMC=m +CONFIG_SCSI_DH_HP_SW=m +CONFIG_SCSI_DH_RDAC=m +CONFIG_SCSI_DMA=y +CONFIG_SCSI_DMX3191D=m +CONFIG_SCSI_DPT_I2O=m +CONFIG_SCSI_ENCLOSURE=m +CONFIG_SCSI_ESAS2R=m +CONFIG_SCSI_FC_ATTRS=y +CONFIG_SCSI_FDOMAIN=m +CONFIG_SCSI_FDOMAIN_PCI=m +CONFIG_SCSI_FLASHPOINT=y +CONFIG_SCSI_GDTH=m +CONFIG_SCSI_HPSA=m +CONFIG_SCSI_HPTIOP=m +CONFIG_SCSI_IMM=m +CONFIG_SCSI_INIA100=m +CONFIG_SCSI_INITIO=m +CONFIG_SCSI_IPR=m +CONFIG_SCSI_IPR_DUMP=y +CONFIG_SCSI_IPR_TRACE=y +CONFIG_SCSI_IPS=m +# CONFIG_SCSI_ISCI is not set +CONFIG_SCSI_ISCSI_ATTRS=m +# CONFIG_SCSI_IZIP_EPP16 is not set +# CONFIG_SCSI_IZIP_SLOW_CTR is not set +CONFIG_SCSI_LOGGING=y +CONFIG_SCSI_LOWLEVEL=y +CONFIG_SCSI_LPFC=m +# CONFIG_SCSI_LPFC_DEBUG_FS is not set +CONFIG_SCSI_MOD=y +CONFIG_SCSI_MPT2SAS=m +CONFIG_SCSI_MPT2SAS_MAX_SGE=128 +CONFIG_SCSI_MPT3SAS=m +CONFIG_SCSI_MPT3SAS_MAX_SGE=128 +CONFIG_SCSI_MVSAS=m +# CONFIG_SCSI_MVSAS_DEBUG is not set +# CONFIG_SCSI_MVSAS_TASKLET is not set +CONFIG_SCSI_MVUMI=m +CONFIG_SCSI_MYRB=m +CONFIG_SCSI_MYRS=m +CONFIG_SCSI_NETLINK=y +CONFIG_SCSI_PM8001=m +CONFIG_SCSI_PMCRAID=m +CONFIG_SCSI_PPA=m +CONFIG_SCSI_PROC_FS=y +CONFIG_SCSI_QLA_FC=m +CONFIG_SCSI_QLA_ISCSI=m +CONFIG_SCSI_QLOGIC_1280=m +CONFIG_SCSI_SAS_ATA=y +CONFIG_SCSI_SAS_ATTRS=m +CONFIG_SCSI_SAS_HOST_SMP=y +CONFIG_SCSI_SAS_LIBSAS=m +CONFIG_SCSI_SCAN_ASYNC=y +CONFIG_SCSI_SIM710=m +CONFIG_SCSI_SMARTPQI=m +CONFIG_SCSI_SNIC=m +# CONFIG_SCSI_SNIC_DEBUG_FS is not set +CONFIG_SCSI_SPI_ATTRS=m +CONFIG_SCSI_SRP_ATTRS=m +CONFIG_SCSI_STEX=m +CONFIG_SCSI_SYM53C8XX_2=m +CONFIG_SCSI_SYM53C8XX_DEFAULT_TAGS=16 +CONFIG_SCSI_SYM53C8XX_DMA_ADDRESSING_MODE=1 +CONFIG_SCSI_SYM53C8XX_MAX_TAGS=64 +CONFIG_SCSI_SYM53C8XX_MMIO=y +# CONFIG_SCSI_UFSHCD is not set +CONFIG_SCSI_VIRTIO=m +CONFIG_SCSI_WD719X=m +CONFIG_SCTP_COOKIE_HMAC_MD5=y +CONFIG_SCTP_COOKIE_HMAC_SHA1=y +# CONFIG_SCTP_DBG_OBJCNT is not set +# CONFIG_SCTP_DEFAULT_COOKIE_HMAC_MD5 is not set +# CONFIG_SCTP_DEFAULT_COOKIE_HMAC_NONE is not set +CONFIG_SCTP_DEFAULT_COOKIE_HMAC_SHA1=y +CONFIG_SECCOMP=y +CONFIG_SECCOMP_FILTER=y +CONFIG_SECONDARY_TRUSTED_KEYRING=y +CONFIG_SECTION_MISMATCH_WARN_ONLY=y +CONFIG_SECURITY=y +CONFIG_SECURITYFS=y +CONFIG_SECURITY_APPARMOR=y +CONFIG_SECURITY_APPARMOR_DEBUG=y +# CONFIG_SECURITY_APPARMOR_DEBUG_ASSERTS is not set +# CONFIG_SECURITY_APPARMOR_DEBUG_MESSAGES is not set +CONFIG_SECURITY_APPARMOR_HASH=y +CONFIG_SECURITY_APPARMOR_HASH_DEFAULT=y +CONFIG_SECURITY_DMESG_RESTRICT=y +CONFIG_SECURITY_INFINIBAND=y +# CONFIG_SECURITY_LOADPIN is not set +CONFIG_SECURITY_LOCKDOWN_LSM=y +CONFIG_SECURITY_LOCKDOWN_LSM_EARLY=y +CONFIG_SECURITY_NETWORK=y +CONFIG_SECURITY_NETWORK_XFRM=y +CONFIG_SECURITY_PATH=y +CONFIG_SECURITY_PERF_EVENTS_RESTRICT=y +CONFIG_SECURITY_SAFESETID=y +CONFIG_SECURITY_SELINUX=y +CONFIG_SECURITY_SELINUX_AVC_STATS=y +CONFIG_SECURITY_SELINUX_BOOTPARAM=y +CONFIG_SECURITY_SELINUX_CHECKREQPROT_VALUE=1 +CONFIG_SECURITY_SELINUX_DEVELOP=y +# CONFIG_SECURITY_SELINUX_DISABLE is not set +CONFIG_SECURITY_SELINUX_SID2STR_CACHE_SIZE=256 +CONFIG_SECURITY_SELINUX_SIDTAB_HASH_BITS=9 +CONFIG_SECURITY_SMACK=y +CONFIG_SECURITY_SMACK_APPEND_SIGNALS=y +# CONFIG_SECURITY_SMACK_BRINGUP is not set +CONFIG_SECURITY_SMACK_NETFILTER=y +CONFIG_SECURITY_TOMOYO=y +CONFIG_SECURITY_TOMOYO_ACTIVATION_TRIGGER="/sbin/init" +# CONFIG_SECURITY_TOMOYO_INSECURE_BUILTIN_SETTING is not set +CONFIG_SECURITY_TOMOYO_MAX_ACCEPT_ENTRY=2048 +CONFIG_SECURITY_TOMOYO_MAX_AUDIT_LOG=1024 +# CONFIG_SECURITY_TOMOYO_OMIT_USERSPACE_LOADER is not set +CONFIG_SECURITY_TOMOYO_POLICY_LOADER="/sbin/tomoyo-init" +CONFIG_SECURITY_YAMA=y +CONFIG_SELECT_MEMORY_MODEL=y +CONFIG_SENSORS_ABITUGURU=m +CONFIG_SENSORS_ABITUGURU3=m +CONFIG_SENSORS_ACPI_POWER=m +CONFIG_SENSORS_AD7314=m +CONFIG_SENSORS_AD7414=m +CONFIG_SENSORS_AD7418=m +CONFIG_SENSORS_ADC128D818=m +CONFIG_SENSORS_ADCXX=m +CONFIG_SENSORS_ADM1021=m +CONFIG_SENSORS_ADM1025=m +CONFIG_SENSORS_ADM1026=m +CONFIG_SENSORS_ADM1029=m +CONFIG_SENSORS_ADM1031=m +CONFIG_SENSORS_ADM1177=m +CONFIG_SENSORS_ADM9240=m +CONFIG_SENSORS_ADS7828=m +CONFIG_SENSORS_ADS7871=m +CONFIG_SENSORS_ADT7310=m +CONFIG_SENSORS_ADT7410=m +CONFIG_SENSORS_ADT7411=m +CONFIG_SENSORS_ADT7462=m +CONFIG_SENSORS_ADT7470=m +CONFIG_SENSORS_ADT7475=m +CONFIG_SENSORS_ADT7X10=m +CONFIG_SENSORS_AMC6821=m +CONFIG_SENSORS_AMD_ENERGY=m +CONFIG_SENSORS_APDS990X=m +CONFIG_SENSORS_APPLESMC=m +CONFIG_SENSORS_AS370=m +CONFIG_SENSORS_ASB100=m +CONFIG_SENSORS_ASC7621=m +CONFIG_SENSORS_ASPEED=m +CONFIG_SENSORS_ATK0110=m +CONFIG_SENSORS_ATXP1=m +CONFIG_SENSORS_AXI_FAN_CONTROL=m +CONFIG_SENSORS_BH1770=m +CONFIG_SENSORS_CORETEMP=m +CONFIG_SENSORS_DA9052_ADC=m +CONFIG_SENSORS_DELL_SMM=m +CONFIG_SENSORS_DME1737=m +CONFIG_SENSORS_DRIVETEMP=m +CONFIG_SENSORS_DS1621=m +CONFIG_SENSORS_DS620=m +CONFIG_SENSORS_EMC1403=m +CONFIG_SENSORS_EMC2103=m +CONFIG_SENSORS_EMC6W201=m +CONFIG_SENSORS_F71805F=m +CONFIG_SENSORS_F71882FG=m +CONFIG_SENSORS_F75375S=m +CONFIG_SENSORS_FAM15H_POWER=m +CONFIG_SENSORS_FSCHMD=m +CONFIG_SENSORS_FTSTEUTATES=m +CONFIG_SENSORS_G760A=m +CONFIG_SENSORS_G762=m +CONFIG_SENSORS_GL518SM=m +CONFIG_SENSORS_GL520SM=m +# CONFIG_SENSORS_HDAPS is not set +CONFIG_SENSORS_HIH6130=m +CONFIG_SENSORS_I5500=m +CONFIG_SENSORS_I5K_AMB=m +CONFIG_SENSORS_IBMAEM=m +CONFIG_SENSORS_IBMPEX=m +CONFIG_SENSORS_INA209=m +CONFIG_SENSORS_INA2XX=m +CONFIG_SENSORS_INA3221=m +CONFIG_SENSORS_IT87=m +CONFIG_SENSORS_JC42=m +CONFIG_SENSORS_K10TEMP=m +CONFIG_SENSORS_K8TEMP=m +CONFIG_SENSORS_LINEAGE=m +# CONFIG_SENSORS_LIS3_I2C is not set +CONFIG_SENSORS_LM63=m +CONFIG_SENSORS_LM70=m +CONFIG_SENSORS_LM73=m +CONFIG_SENSORS_LM75=m +CONFIG_SENSORS_LM77=m +CONFIG_SENSORS_LM78=m +CONFIG_SENSORS_LM80=m +CONFIG_SENSORS_LM83=m +CONFIG_SENSORS_LM85=m +CONFIG_SENSORS_LM87=m +CONFIG_SENSORS_LM90=m +CONFIG_SENSORS_LM92=m +CONFIG_SENSORS_LM93=m +CONFIG_SENSORS_LM95234=m +CONFIG_SENSORS_LM95241=m +CONFIG_SENSORS_LM95245=m +CONFIG_SENSORS_LTC2945=m +CONFIG_SENSORS_LTC2947=m +CONFIG_SENSORS_LTC2947_I2C=m +CONFIG_SENSORS_LTC2947_SPI=m +CONFIG_SENSORS_LTC2990=m +CONFIG_SENSORS_LTC4151=m +CONFIG_SENSORS_LTC4215=m +CONFIG_SENSORS_LTC4222=m +CONFIG_SENSORS_LTC4245=m +CONFIG_SENSORS_LTC4260=m +CONFIG_SENSORS_LTC4261=m +CONFIG_SENSORS_MAX1111=m +CONFIG_SENSORS_MAX16065=m +CONFIG_SENSORS_MAX1619=m +CONFIG_SENSORS_MAX1668=m +CONFIG_SENSORS_MAX197=m +CONFIG_SENSORS_MAX31722=m +CONFIG_SENSORS_MAX31730=m +CONFIG_SENSORS_MAX31790=m +CONFIG_SENSORS_MAX6621=m +CONFIG_SENSORS_MAX6639=m +CONFIG_SENSORS_MAX6642=m +CONFIG_SENSORS_MAX6650=m +CONFIG_SENSORS_MAX6697=m +CONFIG_SENSORS_MC13783_ADC=m +CONFIG_SENSORS_MCP3021=m +CONFIG_SENSORS_MENF21BMC_HWMON=m +CONFIG_SENSORS_MLXREG_FAN=m +CONFIG_SENSORS_NCT6683=m +CONFIG_SENSORS_NCT6775=m +CONFIG_SENSORS_NCT7802=m +CONFIG_SENSORS_NCT7904=m +CONFIG_SENSORS_NPCM7XX=m +CONFIG_SENSORS_NTC_THERMISTOR=m +CONFIG_SENSORS_PC87360=m +CONFIG_SENSORS_PC87427=m +CONFIG_SENSORS_PCF8591=m +CONFIG_SENSORS_POWR1220=m +CONFIG_SENSORS_SCH5627=m +CONFIG_SENSORS_SCH5636=m +CONFIG_SENSORS_SCH56XX_COMMON=m +CONFIG_SENSORS_SHT15=m +CONFIG_SENSORS_SHT21=m +CONFIG_SENSORS_SHT3x=m +CONFIG_SENSORS_SHTC1=m +CONFIG_SENSORS_SIS5595=m +CONFIG_SENSORS_SMM665=m +CONFIG_SENSORS_SMSC47B397=m +CONFIG_SENSORS_SMSC47M1=m +CONFIG_SENSORS_SMSC47M192=m +CONFIG_SENSORS_STTS751=m +CONFIG_SENSORS_TC654=m +CONFIG_SENSORS_TC74=m +CONFIG_SENSORS_THMC50=m +CONFIG_SENSORS_TMP102=m +CONFIG_SENSORS_TMP103=m +CONFIG_SENSORS_TMP108=m +CONFIG_SENSORS_TMP401=m +CONFIG_SENSORS_TMP421=m +CONFIG_SENSORS_TMP513=m +CONFIG_SENSORS_TSL2550=m +CONFIG_SENSORS_VIA686A=m +CONFIG_SENSORS_VIA_CPUTEMP=m +CONFIG_SENSORS_VT1211=m +CONFIG_SENSORS_VT8231=m +CONFIG_SENSORS_W83627EHF=m +CONFIG_SENSORS_W83627HF=m +CONFIG_SENSORS_W83773G=m +CONFIG_SENSORS_W83781D=m +CONFIG_SENSORS_W83791D=m +CONFIG_SENSORS_W83792D=m +CONFIG_SENSORS_W83793=m +CONFIG_SENSORS_W83795=m +# CONFIG_SENSORS_W83795_FANCTRL is not set +CONFIG_SENSORS_W83L785TS=m +CONFIG_SENSORS_W83L786NG=m +CONFIG_SENSORS_WM831X=m +CONFIG_SENSORS_XGENE=m +CONFIG_SERIAL_8250=y +CONFIG_SERIAL_8250_16550A_VARIANTS=y +CONFIG_SERIAL_8250_CONSOLE=y +# CONFIG_SERIAL_8250_DEPRECATED_OPTIONS is not set +# CONFIG_SERIAL_8250_DETECT_IRQ is not set +CONFIG_SERIAL_8250_DMA=y +CONFIG_SERIAL_8250_DW=m +CONFIG_SERIAL_8250_DWLIB=y +CONFIG_SERIAL_8250_EXAR=m +CONFIG_SERIAL_8250_EXTENDED=y +CONFIG_SERIAL_8250_FINTEK=y +CONFIG_SERIAL_8250_LPSS=m +CONFIG_SERIAL_8250_MANY_PORTS=y +CONFIG_SERIAL_8250_MEN_MCB=m +CONFIG_SERIAL_8250_MID=m +CONFIG_SERIAL_8250_NR_UARTS=48 +CONFIG_SERIAL_8250_PCI=y +CONFIG_SERIAL_8250_PNP=y +CONFIG_SERIAL_8250_RSA=y +CONFIG_SERIAL_8250_RT288X=y +CONFIG_SERIAL_8250_RUNTIME_UARTS=32 +CONFIG_SERIAL_8250_SHARE_IRQ=y +CONFIG_SERIAL_ALTERA_JTAGUART=m +CONFIG_SERIAL_ALTERA_UART=m +CONFIG_SERIAL_ALTERA_UART_BAUDRATE=115200 +CONFIG_SERIAL_ALTERA_UART_MAXPORTS=4 +CONFIG_SERIAL_ARC=m +CONFIG_SERIAL_ARC_NR_PORTS=1 +CONFIG_SERIAL_CORE=y +CONFIG_SERIAL_CORE_CONSOLE=y +# CONFIG_SERIAL_DEV_BUS is not set +CONFIG_SERIAL_EARLYCON=y +CONFIG_SERIAL_FSL_LINFLEXUART=m +CONFIG_SERIAL_FSL_LPUART=m +# CONFIG_SERIAL_IFX6X60 is not set +# CONFIG_SERIAL_IPOCTAL is not set +CONFIG_SERIAL_JSM=m +CONFIG_SERIAL_KGDB_NMI=y +CONFIG_SERIAL_LANTIQ=m +CONFIG_SERIAL_MAX3100=m +CONFIG_SERIAL_MAX310X=y +CONFIG_SERIAL_MCTRL_GPIO=y +CONFIG_SERIAL_MEN_Z135=m +CONFIG_SERIAL_NONSTANDARD=y +CONFIG_SERIAL_RP2=m +CONFIG_SERIAL_RP2_NR_UARTS=32 +CONFIG_SERIAL_SC16IS7XX=m +CONFIG_SERIAL_SC16IS7XX_CORE=m +CONFIG_SERIAL_SC16IS7XX_I2C=y +CONFIG_SERIAL_SC16IS7XX_SPI=y +CONFIG_SERIAL_SCCNXP=y +CONFIG_SERIAL_SCCNXP_CONSOLE=y +CONFIG_SERIAL_SPRD=m +CONFIG_SERIAL_UARTLITE=m +CONFIG_SERIAL_UARTLITE_NR_UARTS=1 +CONFIG_SERIO=y +CONFIG_SERIO_ALTERA_PS2=m +CONFIG_SERIO_ARC_PS2=m +CONFIG_SERIO_CT82C710=m +CONFIG_SERIO_GPIO_PS2=m +CONFIG_SERIO_I8042=y +CONFIG_SERIO_LIBPS2=y +CONFIG_SERIO_PARKBD=m +CONFIG_SERIO_PCIPS2=m +CONFIG_SERIO_PS2MULT=m +CONFIG_SERIO_RAW=m +CONFIG_SERIO_SERPORT=m +CONFIG_SFC=m +CONFIG_SFC_FALCON=m +CONFIG_SFC_MCDI_LOGGING=y +CONFIG_SFC_MCDI_MON=y +CONFIG_SFC_SRIOV=y +CONFIG_SFI=y +CONFIG_SFP=m +CONFIG_SF_PDMA=m +CONFIG_SGETMASK_SYSCALL=y +CONFIG_SGI_PARTITION=y +CONFIG_SGL_ALLOC=y +CONFIG_SG_POOL=y +CONFIG_SHIFT_FS=m +CONFIG_SHIFT_FS_POSIX_ACL=y +CONFIG_SHMEM=y +CONFIG_SHUFFLE_PAGE_ALLOCATOR=y +CONFIG_SIGNALFD=y +CONFIG_SIGNATURE=y +CONFIG_SIGNED_PE_FILE_VERIFICATION=y +CONFIG_SIOX=m +CONFIG_SIOX_BUS_GPIO=m +CONFIG_SKB_EXTENSIONS=y +CONFIG_SKFP=m +CONFIG_SKGE=m +# CONFIG_SKGE_DEBUG is not set +CONFIG_SKGE_GENESIS=y +CONFIG_SKY2=m +# CONFIG_SKY2_DEBUG is not set +# CONFIG_SLAB is not set +CONFIG_SLAB_FREELIST_HARDENED=y +CONFIG_SLAB_FREELIST_RANDOM=y +CONFIG_SLAB_MERGE_DEFAULT=y +CONFIG_SLHC=y +CONFIG_SLICOSS=m +CONFIG_SLIMBUS=m +CONFIG_SLIM_QCOM_CTRL=m +CONFIG_SLIP=m +CONFIG_SLIP_COMPRESSED=y +CONFIG_SLIP_MODE_SLIP6=y +CONFIG_SLIP_SMART=y +# CONFIG_SLOB is not set +CONFIG_SLUB=y +CONFIG_SLUB_CPU_PARTIAL=y +CONFIG_SLUB_DEBUG=y +# CONFIG_SLUB_DEBUG_ON is not set +CONFIG_SLUB_MEMCG_SYSFS_ON=y +# CONFIG_SLUB_STATS is not set +CONFIG_SMC=m +CONFIG_SMC_DIAG=m +CONFIG_SMP=y +CONFIG_SMSC37B787_WDT=m +# CONFIG_SMSC_PHY is not set +CONFIG_SMSC_SCH311X_WDT=m +CONFIG_SOCK_CGROUP_DATA=y +CONFIG_SOCK_VALIDATE_XMIT=y +CONFIG_SOC_TI=y +CONFIG_SOFTLOCKUP_DETECTOR=y +CONFIG_SOFT_WATCHDOG=m +CONFIG_SOFT_WATCHDOG_PRETIMEOUT=y +CONFIG_SOLARIS_X86_PARTITION=y +# CONFIG_SONY_LAPTOP is not set +# CONFIG_SOUND is not set +CONFIG_SOUNDWIRE=m +CONFIG_SP5100_TCO=m +CONFIG_SPARSEMEM=y +CONFIG_SPARSEMEM_EXTREME=y +CONFIG_SPARSEMEM_MANUAL=y +CONFIG_SPARSEMEM_VMEMMAP=y +CONFIG_SPARSEMEM_VMEMMAP_ENABLE=y +CONFIG_SPARSE_IRQ=y +# CONFIG_SPEAKUP is not set +CONFIG_SPI=y +CONFIG_SPI_ALTERA=m +CONFIG_SPI_AMD=m +CONFIG_SPI_AXI_SPI_ENGINE=m +CONFIG_SPI_BITBANG=m +CONFIG_SPI_BUTTERFLY=m +CONFIG_SPI_CADENCE=m +# CONFIG_SPI_DEBUG is not set +CONFIG_SPI_DESIGNWARE=m +CONFIG_SPI_DW_DMA=y +CONFIG_SPI_DW_MMIO=m +CONFIG_SPI_DW_PCI=m +CONFIG_SPI_DYNAMIC=y +CONFIG_SPI_GPIO=m +CONFIG_SPI_LM70_LLP=m +CONFIG_SPI_LOOPBACK_TEST=m +CONFIG_SPI_MASTER=y +CONFIG_SPI_MEM=y +CONFIG_SPI_MUX=m +CONFIG_SPI_MXIC=m +CONFIG_SPI_NXP_FLEXSPI=m +CONFIG_SPI_OC_TINY=m +CONFIG_SPI_PXA2XX=m +CONFIG_SPI_PXA2XX_PCI=m +# CONFIG_SPI_ROCKCHIP is not set +CONFIG_SPI_SC18IS602=m +CONFIG_SPI_SIFIVE=m +CONFIG_SPI_SLAVE=y +CONFIG_SPI_SLAVE_SYSTEM_CONTROL=m +CONFIG_SPI_SLAVE_TIME=m +CONFIG_SPI_SPIDEV=m +CONFIG_SPI_TLE62X0=m +CONFIG_SPI_XCOMM=m +# CONFIG_SPI_XILINX is not set +CONFIG_SPI_ZYNQMP_GQSPI=m +CONFIG_SPLIT_PTLOCK_CPUS=4 +# CONFIG_SPMI is not set +CONFIG_SQUASHFS=y +# CONFIG_SQUASHFS_4K_DEVBLK_SIZE is not set +# CONFIG_SQUASHFS_DECOMP_MULTI is not set +# CONFIG_SQUASHFS_DECOMP_MULTI_PERCPU is not set +CONFIG_SQUASHFS_DECOMP_SINGLE=y +# CONFIG_SQUASHFS_EMBEDDED is not set +# CONFIG_SQUASHFS_FILE_CACHE is not set +CONFIG_SQUASHFS_FILE_DIRECT=y +CONFIG_SQUASHFS_FRAGMENT_CACHE_SIZE=3 +CONFIG_SQUASHFS_LZ4=y +CONFIG_SQUASHFS_LZO=y +CONFIG_SQUASHFS_XATTR=y +CONFIG_SQUASHFS_XZ=y +CONFIG_SQUASHFS_ZLIB=y +CONFIG_SQUASHFS_ZSTD=y +CONFIG_SRAM=y +CONFIG_SRCU=y +CONFIG_SSB=m +CONFIG_SSB_DRIVER_GPIO=y +CONFIG_SSB_DRIVER_PCICORE=y +CONFIG_SSB_DRIVER_PCICORE_POSSIBLE=y +CONFIG_SSB_PCIHOST=y +CONFIG_SSB_PCIHOST_POSSIBLE=y +CONFIG_SSB_POSSIBLE=y +CONFIG_SSB_SPROM=y +CONFIG_STACKPROTECTOR=y +CONFIG_STACKPROTECTOR_STRONG=y +CONFIG_STACKTRACE=y +CONFIG_STACKTRACE_SUPPORT=y +CONFIG_STACK_TRACER=y +CONFIG_STACK_VALIDATION=y +CONFIG_STAGING=y +CONFIG_STAGING_APEX_DRIVER=m +CONFIG_STAGING_GASKET_FRAMEWORK=m +CONFIG_STAGING_MEDIA=y +# CONFIG_STANDALONE is not set +# CONFIG_STATIC_KEYS_SELFTEST is not set +# CONFIG_STATIC_USERMODEHELPER is not set +# CONFIG_STE10XP is not set +# CONFIG_STM is not set +CONFIG_STP=m +CONFIG_STREAM_PARSER=y +CONFIG_STRICT_DEVMEM=y +CONFIG_STRICT_KERNEL_RWX=y +CONFIG_STRICT_MODULE_RWX=y +# CONFIG_STRING_SELFTEST is not set +# CONFIG_STRIP_ASM_SYMS is not set +CONFIG_SUNDANCE=m +# CONFIG_SUNDANCE_MMIO is not set +CONFIG_SUNRPC=m +CONFIG_SUNRPC_BACKCHANNEL=y +CONFIG_SUNRPC_DEBUG=y +# CONFIG_SUNRPC_DISABLE_INSECURE_ENCTYPES is not set +CONFIG_SUNRPC_GSS=m +CONFIG_SUNRPC_SWAP=y +CONFIG_SUNRPC_XPRT_RDMA=m +CONFIG_SUN_PARTITION=y +CONFIG_SURFACE3_WMI=m +CONFIG_SURFACE_3_POWER_OPREGION=m +# CONFIG_SURFACE_PRO3_BUTTON is not set +CONFIG_SUSPEND=y +CONFIG_SUSPEND_FREEZER=y +# CONFIG_SUSPEND_SKIP_SYNC is not set +CONFIG_SWAP=y +CONFIG_SWIOTLB=y +CONFIG_SWPHY=y +CONFIG_SW_SYNC=y +CONFIG_SYMBOLIC_ERRNAME=y +CONFIG_SYNCLINK=m +CONFIG_SYNCLINKMP=m +CONFIG_SYNCLINK_GT=m +CONFIG_SYNC_FILE=y +CONFIG_SYNTH_EVENTS=y +# CONFIG_SYNTH_EVENT_GEN_TEST is not set +CONFIG_SYN_COOKIES=y +CONFIG_SYSCTL=y +CONFIG_SYSCTL_EXCEPTION_TRACE=y +CONFIG_SYSFS=y +# CONFIG_SYSFS_DEPRECATED is not set +CONFIG_SYSFS_SYSCALL=y +CONFIG_SYSTEM76_ACPI=m +CONFIG_SYSTEMPORT=m +CONFIG_SYSTEM_BLACKLIST_HASH_LIST="" +CONFIG_SYSTEM_BLACKLIST_KEYRING=y +CONFIG_SYSTEM_DATA_VERIFICATION=y +CONFIG_SYSTEM_EXTRA_CERTIFICATE=y +CONFIG_SYSTEM_EXTRA_CERTIFICATE_SIZE=4096 +CONFIG_SYSTEM_TRUSTED_KEYRING=y +CONFIG_SYSTEM_TRUSTED_KEYS="debian/canonical-certs.pem" +CONFIG_SYSV68_PARTITION=y +CONFIG_SYSVIPC=y +CONFIG_SYSVIPC_COMPAT=y +CONFIG_SYSVIPC_SYSCTL=y +CONFIG_SYSV_FS=m +# CONFIG_TABLET_SERIAL_WACOM4 is not set +# CONFIG_TABLET_USB_ACECAD is not set +# CONFIG_TABLET_USB_AIPTEK is not set +# CONFIG_TABLET_USB_GTCO is not set +# CONFIG_TABLET_USB_HANWANG is not set +# CONFIG_TABLET_USB_KBTAB is not set +# CONFIG_TABLET_USB_PEGASUS is not set +# CONFIG_TAHVO_USB is not set +CONFIG_TAP=m +CONFIG_TARGET_CORE=m +CONFIG_TASKSTATS=y +CONFIG_TASKS_RCU=y +CONFIG_TASKS_RCU_GENERIC=y +CONFIG_TASKS_RUDE_RCU=y +CONFIG_TASKS_TRACE_RCU=y +CONFIG_TASK_DELAY_ACCT=y +CONFIG_TASK_IO_ACCOUNTING=y +CONFIG_TASK_XACCT=y +# CONFIG_TCG_ATMEL is not set +CONFIG_TCG_CRB=y +# CONFIG_TCG_INFINEON is not set +# CONFIG_TCG_NSC is not set +CONFIG_TCG_TIS=y +CONFIG_TCG_TIS_CORE=y +# CONFIG_TCG_TIS_I2C_ATMEL is not set +# CONFIG_TCG_TIS_I2C_INFINEON is not set +# CONFIG_TCG_TIS_I2C_NUVOTON is not set +# CONFIG_TCG_TIS_SPI is not set +# CONFIG_TCG_TIS_ST33ZP24_I2C is not set +# CONFIG_TCG_TIS_ST33ZP24_SPI is not set +CONFIG_TCG_TPM=y +# CONFIG_TCG_VTPM_PROXY is not set +CONFIG_TCM_FILEIO=m +CONFIG_TCM_IBLOCK=m +CONFIG_TCM_PSCSI=m +CONFIG_TCM_USER2=m +CONFIG_TCP_CONG_ADVANCED=y +CONFIG_TCP_CONG_BBR=m +CONFIG_TCP_CONG_BIC=m +CONFIG_TCP_CONG_CDG=m +CONFIG_TCP_CONG_CUBIC=y +CONFIG_TCP_CONG_DCTCP=m +CONFIG_TCP_CONG_HSTCP=m +CONFIG_TCP_CONG_HTCP=m +CONFIG_TCP_CONG_HYBLA=m +CONFIG_TCP_CONG_ILLINOIS=m +CONFIG_TCP_CONG_LP=m +CONFIG_TCP_CONG_NV=m +CONFIG_TCP_CONG_SCALABLE=m +CONFIG_TCP_CONG_VEGAS=m +CONFIG_TCP_CONG_VENO=m +CONFIG_TCP_CONG_WESTWOOD=m +CONFIG_TCP_CONG_YEAH=m +CONFIG_TCP_MD5SIG=y +CONFIG_TEE=m +CONFIG_TELCLOCK=m +# CONFIG_TERANETICS_PHY is not set +# CONFIG_TEST_ASYNC_DRIVER_PROBE is not set +# CONFIG_TEST_LOCKUP is not set +# CONFIG_TEST_POWER is not set +CONFIG_TEXTSEARCH=y +CONFIG_TEXTSEARCH_BM=m +CONFIG_TEXTSEARCH_FSM=m +CONFIG_TEXTSEARCH_KMP=m +CONFIG_THERMAL=y +# CONFIG_THERMAL_DEFAULT_GOV_FAIR_SHARE is not set +# CONFIG_THERMAL_DEFAULT_GOV_POWER_ALLOCATOR is not set +CONFIG_THERMAL_DEFAULT_GOV_STEP_WISE=y +# CONFIG_THERMAL_DEFAULT_GOV_USER_SPACE is not set +CONFIG_THERMAL_EMERGENCY_POWEROFF_DELAY_MS=0 +CONFIG_THERMAL_EMULATION=y +CONFIG_THERMAL_GOV_BANG_BANG=y +CONFIG_THERMAL_GOV_FAIR_SHARE=y +CONFIG_THERMAL_GOV_POWER_ALLOCATOR=y +CONFIG_THERMAL_GOV_STEP_WISE=y +CONFIG_THERMAL_GOV_USER_SPACE=y +CONFIG_THERMAL_HWMON=y +CONFIG_THERMAL_STATISTICS=y +CONFIG_THERMAL_WRITABLE_TRIPS=y +CONFIG_THP_SWAP=y +CONFIG_THREAD_INFO_IN_TASK=y +CONFIG_TICK_ONESHOT=y +CONFIG_TIFM_7XX1=m +CONFIG_TIFM_CORE=m +CONFIG_TIGON3=m +CONFIG_TIGON3_HWMON=y +CONFIG_TIMERFD=y +CONFIG_TIME_NS=y +CONFIG_TINYDRM_HX8357D=m +CONFIG_TINYDRM_ILI9225=m +CONFIG_TINYDRM_ILI9341=m +CONFIG_TINYDRM_ILI9486=m +CONFIG_TINYDRM_MI0283QT=m +CONFIG_TINYDRM_REPAPER=m +CONFIG_TINYDRM_ST7586=m +CONFIG_TINYDRM_ST7735R=m +CONFIG_TIPC=m +CONFIG_TIPC_CRYPTO=y +CONFIG_TIPC_DIAG=m +# CONFIG_TIPC_MEDIA_IB is not set +CONFIG_TIPC_MEDIA_UDP=y +# CONFIG_TI_ST is not set +CONFIG_TLS=m +CONFIG_TLS_DEVICE=y +# CONFIG_TLS_TOE is not set +CONFIG_TMPFS=y +CONFIG_TMPFS_POSIX_ACL=y +CONFIG_TMPFS_XATTR=y +# CONFIG_TOPSTAR_LAPTOP is not set +CONFIG_TORTURE_TEST=m +# CONFIG_TOSHIBA_BT_RFKILL is not set +# CONFIG_TOSHIBA_HAPS is not set +# CONFIG_TOSHIBA_WMI is not set +CONFIG_TPM_KEY_PARSER=m +CONFIG_TPS6105X=m +CONFIG_TPS65010=m +CONFIG_TPS6507X=m +CONFIG_TQMX86_WDT=m +CONFIG_TRACEPOINTS=y +# CONFIG_TRACEPOINT_BENCHMARK is not set +CONFIG_TRACER_MAX_TRACE=y +CONFIG_TRACER_SNAPSHOT=y +# CONFIG_TRACER_SNAPSHOT_PER_CPU_SWAP is not set +CONFIG_TRACE_CLOCK=y +# CONFIG_TRACE_EVAL_MAP_FILE is not set +CONFIG_TRACE_EVENT_INJECT=y +CONFIG_TRACE_IRQFLAGS_SUPPORT=y +CONFIG_TRACE_ROUTER=m +CONFIG_TRACE_SINK=m +CONFIG_TRACING=y +CONFIG_TRACING_MAP=y +CONFIG_TRACING_SUPPORT=y +CONFIG_TRANSPARENT_HUGEPAGE=y +CONFIG_TRANSPARENT_HUGEPAGE_ALWAYS=y +# CONFIG_TRANSPARENT_HUGEPAGE_MADVISE is not set +CONFIG_TREE_RCU=y +CONFIG_TREE_SRCU=y +CONFIG_TRUSTED_KEYS=y +CONFIG_TTY=y +CONFIG_TTY_PRINTK=y +CONFIG_TTY_PRINTK_LEVEL=6 +CONFIG_TUN=y +# CONFIG_TUN_VNET_CROSS_LE is not set +# CONFIG_TYPEC is not set +CONFIG_UACCE=m +# CONFIG_UBSAN is not set +CONFIG_UBUNTU_HOST=m +CONFIG_UCLAMP_BUCKETS_COUNT=5 +CONFIG_UCLAMP_TASK=y +CONFIG_UCLAMP_TASK_GROUP=y +CONFIG_UCS2_STRING=y +CONFIG_UDF_FS=m +CONFIG_UDMABUF=y +CONFIG_UEFI_CPER=y +CONFIG_UEFI_CPER_X86=y +CONFIG_UEVENT_HELPER=y +CONFIG_UEVENT_HELPER_PATH="" +# CONFIG_UFS_DEBUG is not set +CONFIG_UFS_FS=m +# CONFIG_UFS_FS_WRITE is not set +CONFIG_UHID=m +CONFIG_UID16=y +CONFIG_UIO=m +CONFIG_UIO_AEC=m +CONFIG_UIO_CIF=m +CONFIG_UIO_DMEM_GENIRQ=m +CONFIG_UIO_HV_GENERIC=m +CONFIG_UIO_MF624=m +CONFIG_UIO_NETX=m +CONFIG_UIO_PCI_GENERIC=m +CONFIG_UIO_PDRV_GENIRQ=m +CONFIG_UIO_PRUSS=m +CONFIG_UIO_SERCOS3=m +CONFIG_ULTRIX_PARTITION=y +CONFIG_UNICODE=y +# CONFIG_UNICODE_NORMALIZATION_SELFTEST is not set +CONFIG_UNISYSSPAR=y +# CONFIG_UNISYS_VISORBUS is not set +CONFIG_UNIX=y +CONFIG_UNIX98_PTYS=y +CONFIG_UNIXWARE_DISKLABEL=y +CONFIG_UNIX_DIAG=m +CONFIG_UNIX_SCM=y +CONFIG_UNUSED_SYMBOLS=y +CONFIG_UNWINDER_FRAME_POINTER=y +# CONFIG_UNWINDER_GUESS is not set +# CONFIG_UNWINDER_ORC is not set +CONFIG_UPROBES=y +CONFIG_UPROBE_EVENTS=y +CONFIG_USB=y +CONFIG_USB4=m +CONFIG_USB4_NET=m +# CONFIG_USBIP_CORE is not set +# CONFIG_USBPCWATCHDOG is not set +CONFIG_USB_ACM=m +# CONFIG_USB_ADUTUX is not set +# CONFIG_USB_ANNOUNCE_NEW_DEVICES is not set +# CONFIG_USB_APPLEDISPLAY is not set +CONFIG_USB_ARCH_HAS_HCD=y +# CONFIG_USB_ATM is not set +CONFIG_USB_AUTOSUSPEND_DELAY=2 +# CONFIG_USB_C67X00_HCD is not set +# CONFIG_USB_CDNS3 is not set +# CONFIG_USB_CHAOSKEY is not set +CONFIG_USB_COMMON=y +# CONFIG_USB_CONN_GPIO is not set +# CONFIG_USB_CYPRESS_CY7C63 is not set +# CONFIG_USB_CYTHERM is not set +# CONFIG_USB_DEFAULT_PERSIST is not set +# CONFIG_USB_DWC2 is not set +# CONFIG_USB_DWC3 is not set +# CONFIG_USB_DYNAMIC_MINORS is not set +# CONFIG_USB_EHCI_HCD is not set +# CONFIG_USB_EHSET_TEST_FIXTURE is not set +# CONFIG_USB_EMI26 is not set +# CONFIG_USB_EMI62 is not set +# CONFIG_USB_EZUSB_FX2 is not set +# CONFIG_USB_FOTG210_HCD is not set +# CONFIG_USB_FTDI_ELAN is not set +# CONFIG_USB_GADGET is not set +# CONFIG_USB_GPIO_VBUS is not set +# CONFIG_USB_HCD_BCMA is not set +# CONFIG_USB_HCD_SSB is not set +# CONFIG_USB_HCD_TEST_MODE is not set +# CONFIG_USB_HID is not set +# CONFIG_USB_HSIC_USB3503 is not set +# CONFIG_USB_HSIC_USB4604 is not set +# CONFIG_USB_HUB_USB251XB is not set +# CONFIG_USB_IDMOUSE is not set +# CONFIG_USB_IOWARRIOR is not set +# CONFIG_USB_ISIGHTFW is not set +# CONFIG_USB_ISP116X_HCD is not set +# CONFIG_USB_ISP1301 is not set +# CONFIG_USB_ISP1760 is not set +# CONFIG_USB_KBD is not set +# CONFIG_USB_LCD is not set +# CONFIG_USB_LD is not set +# CONFIG_USB_LEDS_TRIGGER_USBPORT is not set +# CONFIG_USB_LED_TRIG is not set +# CONFIG_USB_LEGOTOWER is not set +# CONFIG_USB_LINK_LAYER_TEST is not set +# CONFIG_USB_MAX3421_HCD is not set +# CONFIG_USB_MDC800 is not set +# CONFIG_USB_MICROTEK is not set +# CONFIG_USB_MON is not set +# CONFIG_USB_MOUSE is not set +# CONFIG_USB_MUSB_HDRC is not set +# CONFIG_USB_NET_DRIVERS is not set +# CONFIG_USB_OHCI_HCD is not set +CONFIG_USB_OHCI_LITTLE_ENDIAN=y +# CONFIG_USB_OTG is not set +# CONFIG_USB_OTG_BLACKLIST_HUB is not set +# CONFIG_USB_OTG_WHITELIST is not set +# CONFIG_USB_OXU210HP_HCD is not set +CONFIG_USB_PCI=y +# CONFIG_USB_PRINTER is not set +CONFIG_USB_PULSE8_CEC=m +# CONFIG_USB_R8A66597_HCD is not set +CONFIG_USB_RAINSHADOW_CEC=m +# CONFIG_USB_ROLE_SWITCH is not set +# CONFIG_USB_SERIAL is not set +# CONFIG_USB_SEVSEG is not set +# CONFIG_USB_SL811_HCD is not set +# CONFIG_USB_STORAGE is not set +CONFIG_USB_SUPPORT=y +# CONFIG_USB_TEST is not set +# CONFIG_USB_TMC is not set +# CONFIG_USB_TRANCEVIBRATOR is not set +# CONFIG_USB_UHCI_HCD is not set +# CONFIG_USB_ULPI_BUS is not set +# CONFIG_USB_USS720 is not set +# CONFIG_USB_WDM is not set +CONFIG_USB_XHCI_DBGCAP=y +CONFIG_USB_XHCI_HCD=y +CONFIG_USB_XHCI_PCI=y +# CONFIG_USB_XHCI_PCI_RENESAS is not set +CONFIG_USB_XHCI_PLATFORM=m +# CONFIG_USB_YUREX is not set +CONFIG_USELIB=y +CONFIG_USERFAULTFD=y +CONFIG_USERIO=m +CONFIG_USER_NS=y +CONFIG_USER_RETURN_NOTIFIER=y +CONFIG_USER_STACKTRACE_SUPPORT=y +CONFIG_USE_PERCPU_NUMA_NODE_ID=y +CONFIG_UTS_NS=y +CONFIG_V4L2_FWNODE=m +CONFIG_V4L2_MEM2MEM_DEV=m +CONFIG_V4L_MEM2MEM_DRIVERS=y +CONFIG_V4L_PLATFORM_DRIVERS=y +CONFIG_V4L_TEST_DRIVERS=y +CONFIG_VALIDATE_FS_PARSER=y +# CONFIG_VBOXGUEST is not set +CONFIG_VDPA=m +CONFIG_VERSION_SIGNATURE="" +CONFIG_VETH=m +CONFIG_VFAT_FS=y +CONFIG_VFIO=y +CONFIG_VFIO_IOMMU_TYPE1=y +CONFIG_VFIO_MDEV=m +CONFIG_VFIO_MDEV_DEVICE=m +CONFIG_VFIO_NOIOMMU=y +CONFIG_VFIO_PCI=y +CONFIG_VFIO_PCI_IGD=y +CONFIG_VFIO_PCI_INTX=y +CONFIG_VFIO_PCI_MMAP=y +CONFIG_VFIO_PCI_VGA=y +CONFIG_VFIO_VIRQFD=y +CONFIG_VGA_ARB=y +CONFIG_VGA_ARB_MAX_GPUS=16 +CONFIG_VGA_CONSOLE=y +CONFIG_VGA_SWITCHEROO=y +CONFIG_VHOST=m +# CONFIG_VHOST_CROSS_ENDIAN_LEGACY is not set +CONFIG_VHOST_IOTLB=m +CONFIG_VHOST_MENU=y +CONFIG_VHOST_NET=m +CONFIG_VHOST_RING=m +CONFIG_VHOST_SCSI=m +CONFIG_VHOST_VDPA=m +CONFIG_VHOST_VSOCK=m +CONFIG_VIA_WDT=m +CONFIG_VIDEOBUF2_CORE=m +CONFIG_VIDEOBUF2_DMA_CONTIG=m +CONFIG_VIDEOBUF2_DMA_SG=m +CONFIG_VIDEOBUF2_MEMOPS=m +CONFIG_VIDEOBUF2_V4L2=m +CONFIG_VIDEOBUF2_VMALLOC=m +CONFIG_VIDEOBUF_GEN=m +CONFIG_VIDEOBUF_VMALLOC=m +CONFIG_VIDEO_AD9389B=m +CONFIG_VIDEO_ADV7170=m +CONFIG_VIDEO_ADV7175=m +CONFIG_VIDEO_ADV7180=m +CONFIG_VIDEO_ADV7183=m +CONFIG_VIDEO_ADV7343=m +CONFIG_VIDEO_ADV7393=m +CONFIG_VIDEO_ADV7511=m +CONFIG_VIDEO_ADV7511_CEC=y +CONFIG_VIDEO_ADV7604=m +CONFIG_VIDEO_ADV7604_CEC=y +CONFIG_VIDEO_ADV7842=m +CONFIG_VIDEO_ADV7842_CEC=y +# CONFIG_VIDEO_ADV_DEBUG is not set +CONFIG_VIDEO_AK881X=m +CONFIG_VIDEO_ASPEED=m +CONFIG_VIDEO_ATOMISP=m +CONFIG_VIDEO_ATOMISP_GC0310=m +CONFIG_VIDEO_ATOMISP_GC2235=m +# CONFIG_VIDEO_ATOMISP_ISP2401 is not set +CONFIG_VIDEO_ATOMISP_LM3554=m +CONFIG_VIDEO_ATOMISP_MSRLIST_HELPER=m +CONFIG_VIDEO_ATOMISP_MT9M114=m +CONFIG_VIDEO_ATOMISP_OV2680=m +CONFIG_VIDEO_ATOMISP_OV2722=m +CONFIG_VIDEO_ATOMISP_OV5693=m +CONFIG_VIDEO_BT819=m +CONFIG_VIDEO_BT856=m +CONFIG_VIDEO_BT866=m +CONFIG_VIDEO_CADENCE=y +CONFIG_VIDEO_CADENCE_CSI2RX=m +CONFIG_VIDEO_CADENCE_CSI2TX=m +CONFIG_VIDEO_CAFE_CCIC=m +CONFIG_VIDEO_CS3308=m +CONFIG_VIDEO_CS5345=m +CONFIG_VIDEO_CS53L32A=m +CONFIG_VIDEO_CX25840=m +CONFIG_VIDEO_DEV=m +# CONFIG_VIDEO_FIXED_MINOR_RANGES is not set +CONFIG_VIDEO_GS1662=m +CONFIG_VIDEO_I2C=m +CONFIG_VIDEO_IPU3_IMGU=m +CONFIG_VIDEO_IR_I2C=m +CONFIG_VIDEO_KS0127=m +CONFIG_VIDEO_M52790=m +CONFIG_VIDEO_MEM2MEM_DEINTERLACE=m +CONFIG_VIDEO_ML86V7667=m +CONFIG_VIDEO_MSP3400=m +CONFIG_VIDEO_OV7670=m +CONFIG_VIDEO_SAA6588=m +CONFIG_VIDEO_SAA6752HS=m +CONFIG_VIDEO_SAA7110=m +CONFIG_VIDEO_SAA711X=m +CONFIG_VIDEO_SAA7127=m +CONFIG_VIDEO_SAA717X=m +CONFIG_VIDEO_SAA7185=m +CONFIG_VIDEO_SONY_BTF_MPX=m +CONFIG_VIDEO_ST_MIPID02=m +CONFIG_VIDEO_TC358743=m +CONFIG_VIDEO_TC358743_CEC=y +CONFIG_VIDEO_TDA7432=m +CONFIG_VIDEO_TDA9840=m +CONFIG_VIDEO_TEA6415C=m +CONFIG_VIDEO_TEA6420=m +CONFIG_VIDEO_THS7303=m +CONFIG_VIDEO_THS8200=m +CONFIG_VIDEO_TLV320AIC23B=m +CONFIG_VIDEO_TVAUDIO=m +CONFIG_VIDEO_TVP514X=m +CONFIG_VIDEO_TVP5150=m +CONFIG_VIDEO_TVP7002=m +CONFIG_VIDEO_TW2804=m +CONFIG_VIDEO_TW9903=m +CONFIG_VIDEO_TW9906=m +CONFIG_VIDEO_TW9910=m +CONFIG_VIDEO_UDA1342=m +CONFIG_VIDEO_UPD64031A=m +CONFIG_VIDEO_UPD64083=m +CONFIG_VIDEO_V4L2=m +CONFIG_VIDEO_V4L2_I2C=y +CONFIG_VIDEO_V4L2_SUBDEV_API=y +CONFIG_VIDEO_V4L2_TPG=m +CONFIG_VIDEO_VIA_CAMERA=m +CONFIG_VIDEO_VICODEC=m +CONFIG_VIDEO_VIM2M=m +CONFIG_VIDEO_VIMC=m +CONFIG_VIDEO_VIVID=m +CONFIG_VIDEO_VIVID_CEC=y +CONFIG_VIDEO_VIVID_MAX_DEVS=64 +CONFIG_VIDEO_VP27SMPX=m +CONFIG_VIDEO_VPX3220=m +CONFIG_VIDEO_WM8739=m +CONFIG_VIDEO_WM8775=m +CONFIG_VIRTIO=y +CONFIG_VIRTIO_BALLOON=y +CONFIG_VIRTIO_BLK=m +CONFIG_VIRTIO_CONSOLE=y +CONFIG_VIRTIO_FS=m +CONFIG_VIRTIO_INPUT=m +CONFIG_VIRTIO_MEM=m +CONFIG_VIRTIO_MENU=y +CONFIG_VIRTIO_MMIO=y +CONFIG_VIRTIO_MMIO_CMDLINE_DEVICES=y +CONFIG_VIRTIO_NET=m +CONFIG_VIRTIO_PCI=y +CONFIG_VIRTIO_PCI_LEGACY=y +CONFIG_VIRTIO_PMEM=m +CONFIG_VIRTIO_VDPA=m +CONFIG_VIRTIO_VSOCKETS=m +CONFIG_VIRTIO_VSOCKETS_COMMON=m +CONFIG_VIRTUALIZATION=y +CONFIG_VIRT_CPU_ACCOUNTING=y +CONFIG_VIRT_CPU_ACCOUNTING_GEN=y +CONFIG_VIRT_DRIVERS=y +CONFIG_VIRT_TO_BUS=y +CONFIG_VITESSE_PHY=m +CONFIG_VLAN_8021Q=m +CONFIG_VLAN_8021Q_GVRP=y +CONFIG_VLAN_8021Q_MVRP=y +CONFIG_VMAP_STACK=y +# CONFIG_VMD is not set +CONFIG_VME_BUS=y +CONFIG_VME_CA91CX42=m +CONFIG_VME_FAKE=m +CONFIG_VME_TSI148=m +# CONFIG_VME_USER is not set +CONFIG_VMIVME_7805=m +# CONFIG_VMWARE_PVSCSI is not set +# CONFIG_VMWARE_VMCI is not set +# CONFIG_VMXNET3 is not set +CONFIG_VM_EVENT_COUNTERS=y +# CONFIG_VOP_BUS is not set +CONFIG_VSOCKETS=m +CONFIG_VSOCKETS_DIAG=m +CONFIG_VSOCKETS_LOOPBACK=m +CONFIG_VSOCKMON=m +CONFIG_VT=y +CONFIG_VT6655=m +CONFIG_VT_CONSOLE=y +CONFIG_VT_CONSOLE_SLEEP=y +CONFIG_VT_HW_CONSOLE_BINDING=y +CONFIG_VXFS_FS=m +CONFIG_VXGE=m +# CONFIG_VXGE_DEBUG_TRACE_ALL is not set +CONFIG_VXLAN=y +# CONFIG_W1 is not set +CONFIG_W83627HF_WDT=m +CONFIG_W83877F_WDT=m +CONFIG_W83977F_WDT=m +CONFIG_WAFER_WDT=m +CONFIG_WAN=y +CONFIG_WANXL=m +# CONFIG_WARN_ALL_UNSEEDED_RANDOM is not set +CONFIG_WATCHDOG=y +CONFIG_WATCHDOG_CORE=y +CONFIG_WATCHDOG_HANDLE_BOOT_ENABLED=y +# CONFIG_WATCHDOG_NOWAYOUT is not set +CONFIG_WATCHDOG_OPEN_TIMEOUT=0 +CONFIG_WATCHDOG_PRETIMEOUT_DEFAULT_GOV_NOOP=y +# CONFIG_WATCHDOG_PRETIMEOUT_DEFAULT_GOV_PANIC is not set +CONFIG_WATCHDOG_PRETIMEOUT_GOV=y +CONFIG_WATCHDOG_PRETIMEOUT_GOV_NOOP=y +CONFIG_WATCHDOG_PRETIMEOUT_GOV_PANIC=m +CONFIG_WATCHDOG_PRETIMEOUT_GOV_SEL=m +CONFIG_WATCHDOG_SYSFS=y +CONFIG_WATCH_QUEUE=y +CONFIG_WDAT_WDT=m +CONFIG_WDTPCI=m +CONFIG_WEXT_CORE=y +CONFIG_WEXT_PROC=y +CONFIG_WFX=m +# CONFIG_WILC1000_SPI is not set +# CONFIG_WIMAX is not set +CONFIG_WIREGUARD=m +# CONFIG_WIREGUARD_DEBUG is not set +CONFIG_WIRELESS=y +# CONFIG_WLAN is not set +# CONFIG_WM831X_BACKUP is not set +# CONFIG_WM831X_POWER is not set +CONFIG_WM831X_WATCHDOG=m +CONFIG_WMI_BMOF=m +CONFIG_WQ_POWER_EFFICIENT_DEFAULT=y +# CONFIG_WQ_WATCHDOG is not set +# CONFIG_WW_MUTEX_SELFTEST is not set +CONFIG_X25=m +CONFIG_X25_ASY=m +CONFIG_X509_CERTIFICATE_PARSER=y +CONFIG_X86=y +CONFIG_X86_16BIT=y +CONFIG_X86_5LEVEL=y +CONFIG_X86_64=y +CONFIG_X86_64_ACPI_NUMA=y +CONFIG_X86_64_SMP=y +CONFIG_X86_ACPI_CPUFREQ=y +CONFIG_X86_ACPI_CPUFREQ_CPB=y +# CONFIG_X86_AMD_FREQ_SENSITIVITY is not set +CONFIG_X86_AMD_PLATFORM_DEVICE=y +CONFIG_X86_BOOTPARAM_MEMORY_CORRUPTION_CHECK=y +CONFIG_X86_CHECK_BIOS_CORRUPTION=y +CONFIG_X86_CMOV=y +CONFIG_X86_CMPXCHG64=y +# CONFIG_X86_CPA_STATISTICS is not set +CONFIG_X86_CPUID=m +CONFIG_X86_CPU_RESCTRL=y +CONFIG_X86_DEBUGCTLMSR=y +CONFIG_X86_DEBUG_FPU=y +# CONFIG_X86_DECODER_SELFTEST is not set +CONFIG_X86_DIRECT_GBPAGES=y +CONFIG_X86_ESPFIX64=y +CONFIG_X86_EXTENDED_PLATFORM=y +CONFIG_X86_FEATURE_NAMES=y +# CONFIG_X86_GOLDFISH is not set +CONFIG_X86_HV_CALLBACK_VECTOR=y +CONFIG_X86_INTEL_LPSS=y +CONFIG_X86_INTEL_MEMORY_PROTECTION_KEYS=y +# CONFIG_X86_INTEL_MID is not set +CONFIG_X86_INTEL_PSTATE=y +# CONFIG_X86_INTEL_TSX_MODE_AUTO is not set +CONFIG_X86_INTEL_TSX_MODE_OFF=y +# CONFIG_X86_INTEL_TSX_MODE_ON is not set +CONFIG_X86_INTERNODE_CACHE_SHIFT=6 +CONFIG_X86_IOPL_IOPERM=y +CONFIG_X86_IO_APIC=y +CONFIG_X86_L1_CACHE_SHIFT=6 +CONFIG_X86_LOCAL_APIC=y +CONFIG_X86_MCE=y +CONFIG_X86_MCELOG_LEGACY=y +CONFIG_X86_MCE_AMD=y +CONFIG_X86_MCE_INJECT=m +CONFIG_X86_MCE_INTEL=y +CONFIG_X86_MCE_THRESHOLD=y +CONFIG_X86_MINIMUM_CPU_FAMILY=64 +CONFIG_X86_MPPARSE=y +CONFIG_X86_MSR=m +CONFIG_X86_NEED_RELOCS=y +CONFIG_X86_NUMACHIP=y +# CONFIG_X86_P4_CLOCKMOD is not set +CONFIG_X86_PAT=y +CONFIG_X86_PCC_CPUFREQ=y +CONFIG_X86_PKG_TEMP_THERMAL=m +CONFIG_X86_PLATFORM_DEVICES=y +CONFIG_X86_PMEM_LEGACY=y +CONFIG_X86_PMEM_LEGACY_DEVICE=y +CONFIG_X86_PM_TIMER=y +CONFIG_X86_POWERNOW_K8=y +CONFIG_X86_REROUTE_FOR_BROKEN_BOOT_IRQS=y +CONFIG_X86_RESERVE_LOW=64 +CONFIG_X86_SMAP=y +CONFIG_X86_SPEEDSTEP_CENTRINO=y +CONFIG_X86_SUPPORTS_MEMORY_FAILURE=y +# CONFIG_X86_SYSFB is not set +CONFIG_X86_THERMAL_VECTOR=y +CONFIG_X86_TSC=y +CONFIG_X86_UMIP=y +# CONFIG_X86_UV is not set +# CONFIG_X86_VERBOSE_BOOTUP is not set +CONFIG_X86_VMX_FEATURE_NAMES=y +# CONFIG_X86_VSMP is not set +CONFIG_X86_VSYSCALL_EMULATION=y +CONFIG_X86_X2APIC=y +CONFIG_X86_X32=y +CONFIG_XARRAY_MULTI=y +CONFIG_XDP_SOCKETS=y +CONFIG_XDP_SOCKETS_DIAG=m +# CONFIG_XEN is not set +CONFIG_XFRM=y +CONFIG_XFRM_AH=m +CONFIG_XFRM_ALGO=m +CONFIG_XFRM_ESP=m +CONFIG_XFRM_ESPINTCP=y +CONFIG_XFRM_INTERFACE=m +CONFIG_XFRM_IPCOMP=m +# CONFIG_XFRM_MIGRATE is not set +CONFIG_XFRM_OFFLOAD=y +CONFIG_XFRM_STATISTICS=y +# CONFIG_XFRM_SUB_POLICY is not set +CONFIG_XFRM_USER=m +# CONFIG_XFS_DEBUG is not set +CONFIG_XFS_FS=m +# CONFIG_XFS_ONLINE_SCRUB is not set +CONFIG_XFS_POSIX_ACL=y +CONFIG_XFS_QUOTA=y +CONFIG_XFS_RT=y +# CONFIG_XFS_WARN is not set +CONFIG_XIAOMI_WMI=m +CONFIG_XILINX_AXI_EMAC=m +# CONFIG_XILINX_GMII2RGMII is not set +CONFIG_XILINX_LL_TEMAC=m +CONFIG_XILINX_SDFEC=m +CONFIG_XILINX_VCU=m +CONFIG_XILINX_WATCHDOG=m +# CONFIG_XILLYBUS is not set +CONFIG_XOR_BLOCKS=m +CONFIG_XPOWER_PMIC_OPREGION=y +CONFIG_XPS=y +CONFIG_XXHASH=y +CONFIG_XZ_DEC=y +CONFIG_XZ_DEC_ARM=y +CONFIG_XZ_DEC_ARMTHUMB=y +CONFIG_XZ_DEC_BCJ=y +CONFIG_XZ_DEC_IA64=y +CONFIG_XZ_DEC_POWERPC=y +CONFIG_XZ_DEC_SPARC=y +CONFIG_XZ_DEC_TEST=m +CONFIG_XZ_DEC_X86=y +# CONFIG_YAM is not set +CONFIG_YELLOWFIN=m +CONFIG_YENTA=m +CONFIG_YENTA_ENE_TUNE=y +CONFIG_YENTA_O2=y +CONFIG_YENTA_RICOH=y +CONFIG_YENTA_TI=y +CONFIG_YENTA_TOSHIBA=y +CONFIG_Z3FOLD=m +CONFIG_ZBUD=y +CONFIG_ZIIRAVE_WATCHDOG=m +CONFIG_ZISOFS=y +CONFIG_ZLIB_DEFLATE=y +CONFIG_ZLIB_INFLATE=y +CONFIG_ZONEFS_FS=m +CONFIG_ZONE_DEVICE=y +CONFIG_ZONE_DMA=y +CONFIG_ZONE_DMA32=y +CONFIG_ZPOOL=y +CONFIG_ZRAM=m +CONFIG_ZRAM_MEMORY_TRACKING=y +CONFIG_ZRAM_WRITEBACK=y +CONFIG_ZSMALLOC=y +# CONFIG_ZSMALLOC_STAT is not set +CONFIG_ZSTD_COMPRESS=y +CONFIG_ZSTD_DECOMPRESS=y +CONFIG_ZSWAP=y +CONFIG_ZSWAP_COMPRESSOR_DEFAULT="lzo" +# CONFIG_ZSWAP_COMPRESSOR_DEFAULT_842 is not set +# CONFIG_ZSWAP_COMPRESSOR_DEFAULT_DEFLATE is not set +# CONFIG_ZSWAP_COMPRESSOR_DEFAULT_LZ4 is not set +# CONFIG_ZSWAP_COMPRESSOR_DEFAULT_LZ4HC is not set +CONFIG_ZSWAP_COMPRESSOR_DEFAULT_LZO=y +# CONFIG_ZSWAP_COMPRESSOR_DEFAULT_ZSTD is not set +# CONFIG_ZSWAP_DEFAULT_ON is not set +CONFIG_ZSWAP_ZPOOL_DEFAULT="zbud" +# CONFIG_ZSWAP_ZPOOL_DEFAULT_Z3FOLD is not set +CONFIG_ZSWAP_ZPOOL_DEFAULT_ZBUD=y +# CONFIG_ZSWAP_ZPOOL_DEFAULT_ZSMALLOC is not set --- linux-azure-5.8-5.8.0.orig/debian.azure/control.d/azure.inclusion-list +++ linux-azure-5.8-5.8.0/debian.azure/control.d/azure.inclusion-list @@ -0,0 +1,277 @@ +arch/*/{crypto,kernel,oprofile} +arch/*/kvm/kvm.ko +arch/powerpc/kvm/kvm-hv.ko +arch/powerpc/kvm/kvm-pr.ko +arch/powerpc/kvm/vfio.ko +arch/powerpc/platforms/powernv/opal-prd.ko +arch/s390/* +arch/x86/kvm/kvm-amd.ko +arch/x86/kvm/kvm-intel.ko +block/bfq.ko +block/cfq-iosched.ko +block/deadline-iosched.ko +block/kyber-iosched.ko +block/mq-deadline.ko +crypto/* +drivers/acpi/* +drivers/ata/acard-ahci.ko +drivers/ata/ahci.ko +drivers/ata/ahci_platform.ko +drivers/ata/ata_generic.ko +drivers/ata/libahci.ko +drivers/ata/libahci_platform.ko +drivers/ata/pata_acpi.ko +drivers/block/brd.ko +drivers/block/cryptoloop.ko +drivers/block/drbd/drbd.ko +drivers/block/floppy.ko +drivers/block/loop.ko +drivers/block/nbd.ko +drivers/block/rbd.ko +drivers/block/virtio_blk.ko +drivers/block/xen-blkfront.ko +drivers/catapult/catapult.ko +drivers/char/hangcheck-timer.ko +drivers/char/hw_random/powernv-rng.ko +drivers/char/hw_random/virtio-rng.ko +drivers/char/ipmi/* +drivers/char/ipmi/ipmi_msghandler.ko +drivers/char/lp.ko +drivers/char/nvram.ko +drivers/char/ppdev.ko +drivers/char/raw.ko +drivers/char/virtio_console.ko +drivers/crypto/nx/* +drivers/crypto/vmx/vmx-crypto.ko +drivers/dax/* +drivers/firmware/efi/* +drivers/firmware/iscsi_ibft.ko +drivers/fpga/* +drivers/gpu/drm/ast/ast.ko +drivers/gpu/drm/drm_kms_helper.ko +drivers/gpu/drm/drm.ko +drivers/gpu/drm/ttm/ttm.ko +drivers/hid/hid-generic.ko +drivers/hid/hid-hyperv.ko +drivers/hid/hid.ko +drivers/hid/usbhid/usbhid.ko +drivers/hv/* +drivers/hwmon/ibmpowernv.ko +drivers/i2c/busses/i2c-piix4.ko +drivers/infiniband/core/ib_addr.ko +drivers/infiniband/core/ib_cm.ko +drivers/infiniband/core/ib_core.ko +drivers/infiniband/core/ib_mad.ko +drivers/infiniband/core/ib_sa.ko +drivers/infiniband/core/ib_umad.ko +drivers/infiniband/core/iw_cm.ko +drivers/infiniband/core/rdma_cm.ko +drivers/infiniband/core/rdma_ucm.ko +drivers/infiniband/hw/mlx4/* +drivers/infiniband/hw/mlx5/* +drivers/infiniband/hw/vmbus-rdma/* +drivers/infiniband/ulp/ipoib/ib_ipoib.ko +drivers/infiniband/ulp/iser/ib_iser.ko +drivers/infiniband/ulp/isert/ib_isert.ko +drivers/input/evbug.ko +drivers/input/gameport/gameport.ko +drivers/input/input-leds.ko +drivers/input/joydev.ko +drivers/input/misc/xen-kbdfront.ko +drivers/input/mouse/psmouse.ko +drivers/input/serio/hyperv-keyboard.ko +drivers/input/serio/serio_raw.ko +drivers/input/serio/serport.ko +drivers/input/touchscreen/usbtouchscreen.ko +drivers/leds/leds-powernv.ko +drivers/md/* +drivers/message/fusion* +drivers/misc/cxl/* +drivers/misc/eeprom/at24.ko +drivers/misc/vmw_balloon.ko +drivers/misc/vmw_vmci/vmw_vmci.ko +drivers/mtd/cmdlinepart.ko +drivers/mtd/devices/powernv_flash.ko +drivers/mtd/ofpart.ko +drivers/net/appletalk/ipddp.ko +drivers/net/bonding/bonding.ko +drivers/net/caif/caif_virtio.ko +drivers/net/dummy.ko +drivers/net/eql.ko +drivers/net/ethernet/8390/8390.ko +drivers/net/ethernet/8390/ne2k-pci.ko +drivers/net/ethernet/amazon/ena/ena.ko +drivers/net/ethernet/amd/pcnet32.ko +drivers/net/ethernet/broadcom/bnx2x/* +drivers/net/ethernet/broadcom/tg3.ko +drivers/net/ethernet/dec/tulip/* +drivers/net/ethernet/emulex/benet/* +drivers/net/ethernet/ibm/* +drivers/net/ethernet/intel/e1000/e1000.ko +drivers/net/ethernet/intel/e1000e/e1000e.ko +drivers/net/ethernet/intel/i40e/* +drivers/net/ethernet/intel/igb/* +drivers/net/ethernet/intel/igbvf/igbvf.ko +drivers/net/ethernet/intel/ixgbe/* +drivers/net/ethernet/intel/ixgbevf/ixgbevf.ko +drivers/net/ethernet/mellanox/* +drivers/net/ethernet/realtek/8139cp.ko +drivers/net/ethernet/realtek/8139too.ko +drivers/net/fddi/* +drivers/net/geneve.ko +drivers/net/hyperv/hv_netvsc.ko +drivers/net/ifb.ko +drivers/net/ipvlan/* +drivers/net/macvlan.ko +drivers/net/macvtap.ko +drivers/net/mii.ko +drivers/net/netconsole.ko +drivers/net/ppp/* +drivers/net/ppp/bsd_comp.ko +drivers/net/slip/* +drivers/net/veth.ko +drivers/net/virtio_net.ko +drivers/net/vmxnet3/vmxnet3.ko +drivers/net/vxlan.ko +drivers/net/wireguard/wireguard.ko +drivers/net/xen-netback/* +drivers/net/xen-netfront.ko +drivers/nvdimm/* +drivers/nvme/host/nvme.ko +drivers/nvmem/nvmem_core.ko +drivers/parport/parport.ko +drivers/parport/parport_pc.ko +drivers/pci/controller/pci-hyperv.ko +drivers/platform/x86/pvpanic.ko +drivers/pps/pps_core.ko +drivers/ptp/ptp.ko +drivers/s390/* +drivers/s390/block/xpram.ko +drivers/scsi/aacraid/* +drivers/scsi/BusLogic.ko +drivers/scsi/cxlflash/* +drivers/scsi/device_handler/scsi_dh_alua.ko +drivers/scsi/device_handler/scsi_dh_emc.ko +drivers/scsi/device_handler/scsi_dh_hp_sw.ko +drivers/scsi/device_handler/scsi_dh_rdac.ko +drivers/scsi/hv_storvsc.ko +drivers/scsi/ibmvscsi/* +drivers/scsi/ipr.ko +drivers/scsi/iscsi_boot_sysfs.ko +drivers/scsi/iscsi_tcp.ko +drivers/scsi/libiscsi.ko +drivers/scsi/libiscsi_tcp.ko +drivers/scsi/libsas/* +drivers/scsi/lpfc/* +drivers/scsi/megaraid/* +drivers/scsi/mpt3sas/* +drivers/scsi/osd/libosd.ko +drivers/scsi/osd/osd.ko +drivers/scsi/qla1280.ko +drivers/scsi/qla2xxx/* +drivers/scsi/raid_class.ko +drivers/scsi/scsi_transport_fc.ko +drivers/scsi/scsi_transport_iscsi.ko +drivers/scsi/scsi_transport_sas.ko +drivers/scsi/scsi_transport_spi.ko +drivers/scsi/sd_mod.ko +drivers/scsi/sr_mod.ko +drivers/scsi/virtio_scsi.ko +drivers/scsi/vmw_pvscsi.ko +drivers/target/loopback/tcm_loop.ko +drivers/target/target_core*.ko +drivers/tty/serial/jsm/* +drivers/uio/uio_hv_generic.ko +drivers/uio/uio.ko +drivers/uio/uio_pci_generic.ko +drivers/uio/uio_pdrv_genirq.ko +drivers/usb/host/* +drivers/usb/storage/uas.ko +drivers/usb/storage/usb-storage.ko +drivers/vfio/* +drivers/vhost/* +drivers/video/fbdev/* +drivers/video/vgastate.ko +drivers/virtio/* +drivers/watchdog/softdog.ko +drivers/xen/* +! find sound/core -name oss -prune -o -name *.ko -print +fs/9p/* +fs/aufs/aufs.ko +fs/autofs/autofs4.ko +fs/binfmt_misc.ko +fs/btrfs/* +fs/cachefiles/cachefiles.ko +fs/ceph/* +fs/cifs/* +fs/configfs/* +fs/dlm/dlm.ko +fs/ecryptfs/* +fs/efivarfs/* +fs/exofs/libore.ko +fs/ext4/* +fs/fat/* +fs/fscache/* +fs/fuse/* +fs/isofs/* +fs/lockd/* +fs/nfs/* +fs/nfs_common/* +fs/nfsd/* +fs/nls/nls_cp437.ko +fs/nls/nls_iso8859-1.ko +fs/nls/nls_utf8.ko +fs/overlayfs/* +fs/squashfs/* +fs/udf/* +fs/ufs/* +fs/xfs/* +lib/* +net/6lowpan/* +net/802/* +net/8021q/* +net/9p/* +net/appletalk/* +net/atm/* +net/ax25/* +net/bpfilter/bpfilter.ko +net/bridge/* +net/can/* +net/ceph/libceph.ko +net/core/* +net/dccp/* +net/decnet/* +net/ieee802154/* +net/ipv4/* +net/ipv6/* +net/ipx/* +net/irda/* +net/key/* +net/lapb/* +net/llc/* +net/netfilter/* +net/netlink/netlink_diag.ko +net/netrom/* +net/openvswitch/* +net/packet/af_packet_diag.ko +net/phonet/* +net/rose/* +net/rxrpc/* +net/sched/* +net/sctp/* +net/sunrpc/auth_gss/auth_rpcgss.ko +net/sunrpc/auth_gss/rpcsec_gss_krb5.ko +net/sunrpc/sunrpc.ko +net/tipc/* +net/unix/unix_diag.ko +net/vmw_vsock/* +net/x25/* +net/xfrm/* +sound/drivers/pcsp/snd-pcsp.ko +sound/pci/snd-ens1370.ko +sound/soundcore.ko +ubuntu/sgx/* +ubuntu/vbox/vboxguest/vboxguest.ko +ubuntu/vbox/vboxsf/vboxsf.ko +zfs/* +ubuntu/ubuntu-host/ubuntu-host.ko --- linux-azure-5.8-5.8.0.orig/debian.azure/control.d/flavour-control.stub +++ linux-azure-5.8-5.8.0/debian.azure/control.d/flavour-control.stub @@ -0,0 +1,152 @@ +# Items that get replaced: +# FLAVOUR +# DESC +# ARCH +# SUPPORTED +# TARGET +# BOOTLOADER +# =PROVIDES= +# +# Items marked with =FOO= are optional +# +# This file describes the template for packages that are created for each flavour +# in debian/control.d/vars.* +# +# This file gets edited in a couple of places. See the debian/control.stub rule in +# debian/rules. PGGVER, ABINUM, and SRCPKGNAME are all converted in the +# process of creating debian/control. +# +# The flavour specific strings (ARCH, DESC, etc) are converted using values from the various +# flavour files in debian/control.d/vars.* +# +# XXX: Leave the blank line before the first package!! + +Package: linux-image=SIGN-ME-PKG=-PKGVER-ABINUM-FLAVOUR +Build-Profiles: +Architecture: ARCH +Section: kernel +Priority: optional +Provides: linux-image, fuse-module, aufs-dkms, =PROVIDES=${linux:rprovides} +Depends: ${misc:Depends}, ${shlibs:Depends}, kmod, linux-base (>= 4.5ubuntu1~16.04.1), linux-modules-PKGVER-ABINUM-FLAVOUR +Recommends: BOOTLOADER +Breaks: flash-kernel (<< 3.0~rc.4ubuntu64) [arm64] +Conflicts: linux-image=SIGN-PEER-PKG=-PKGVER-ABINUM-FLAVOUR +Suggests: fdutils, SRCPKGNAME-doc-PKGVER | SRCPKGNAME-source-PKGVER, SRCPKGNAME-tools, linux-headers-PKGVER-ABINUM-FLAVOUR, initramfs-tools | linux-initramfs-tool +Description: Linux kernel image for version PKGVER on DESC + This package contains the=SIGN-ME-TXT= Linux kernel image for version PKGVER on + DESC. + . + Supports SUPPORTED processors. + . + TARGET + . + You likely do not want to install this package directly. Instead, install + the linux-FLAVOUR meta-package, which will ensure that upgrades work + correctly, and that supporting packages are also installed. + +Package: linux-modules-PKGVER-ABINUM-FLAVOUR +Build-Profiles: +Architecture: ARCH +Section: kernel +Priority: optional +Depends: ${misc:Depends}, ${shlibs:Depends}, linux-base-sgx +Built-Using: ${linux:BuiltUsing} +Description: Linux kernel extra modules for version PKGVER on DESC + Contains the corresponding System.map file, the modules built by the + packager, and scripts that try to ensure that the system is not left in an + unbootable state after an update. + . + Supports SUPPORTED processors. + . + TARGET + . + You likely do not want to install this package directly. Instead, install + the linux-FLAVOUR meta-package, which will ensure that upgrades work + correctly, and that supporting packages are also installed. + +Package: linux-modules-extra-PKGVER-ABINUM-FLAVOUR +Build-Profiles: +Architecture: ARCH +Section: kernel +Priority: optional +Depends: ${misc:Depends}, ${shlibs:Depends}, linux-image-PKGVER-ABINUM-FLAVOUR | linux-image-unsigned-PKGVER-ABINUM-FLAVOUR, crda | wireless-crda +Description: Linux kernel extra modules for version PKGVER on DESC + This package contains the Linux kernel extra modules for version PKGVER on + DESC. + . + Also includes the corresponding System.map file, the modules built by the + packager, and scripts that try to ensure that the system is not left in an + unbootable state after an update. + . + Supports SUPPORTED processors. + . + TARGET + . + You likely do not want to install this package directly. Instead, install + the linux-FLAVOUR meta-package, which will ensure that upgrades work + correctly, and that supporting packages are also installed. + +Package: linux-headers-PKGVER-ABINUM-FLAVOUR +Build-Profiles: +Architecture: ARCH +Section: devel +Priority: optional +Depends: ${misc:Depends}, SRCPKGNAME-headers-PKGVER-ABINUM, ${shlibs:Depends} +Provides: linux-headers, linux-headers-3.0 +Description: Linux kernel headers for version PKGVER on DESC + This package provides kernel header files for version PKGVER on + DESC. + . + This is for sites that want the latest kernel headers. Please read + /usr/share/doc/linux-headers-PKGVER-ABINUM/debian.README.gz for details. + +Package: linux-image=SIGN-ME-PKG=-PKGVER-ABINUM-FLAVOUR-dbgsym +Build-Profiles: +Architecture: ARCH +Section: devel +Priority: optional +Depends: ${misc:Depends} +Provides: linux-debug +Description: Linux kernel debug image for version PKGVER on DESC + This package provides the=SIGN-ME-TXT= kernel debug image for version PKGVER on + DESC. + . + This is for sites that wish to debug the kernel. + . + The kernel image contained in this package is NOT meant to boot from. It + is uncompressed, and unstripped. This package also includes the + unstripped modules. + +Package: linux-tools-PKGVER-ABINUM-FLAVOUR +Build-Profiles: +Architecture: ARCH +Section: devel +Priority: optional +Depends: ${misc:Depends}, SRCPKGNAME-tools-PKGVER-ABINUM +Description: Linux kernel version specific tools for version PKGVER-ABINUM + This package provides the architecture dependant parts for kernel + version locked tools (such as perf and x86_energy_perf_policy) for + version PKGVER-ABINUM on + =HUMAN=. + +Package: linux-cloud-tools-PKGVER-ABINUM-FLAVOUR +Build-Profiles: +Architecture: ARCH +Section: devel +Priority: optional +Depends: ${misc:Depends}, SRCPKGNAME-cloud-tools-PKGVER-ABINUM +Description: Linux kernel version specific cloud tools for version PKGVER-ABINUM + This package provides the architecture dependant parts for kernel + version locked tools for cloud for version PKGVER-ABINUM on + =HUMAN=. + +Package: linux-udebs-FLAVOUR +Build-Profiles: +XC-Package-Type: udeb +Section: debian-installer +Architecture: ARCH +Depends: ${udeb:Depends} +Description: Metapackage depending on kernel udebs + This package depends on the all udebs that the kernel build generated, + for easier version and migration tracking. + --- linux-azure-5.8-5.8.0.orig/debian.azure/control.d/vars.azure +++ linux-azure-5.8-5.8.0/debian.azure/control.d/vars.azure @@ -0,0 +1,6 @@ +arch="amd64" +supported="Azure" +target="Geared toward Azure systems." +desc="=HUMAN= SMP" +bootloader="grub-pc [amd64] | grub-efi-amd64 [amd64] | grub-efi-ia32 [amd64] | grub [amd64]" +provides="kvm-api-4, redhat-cluster-modules, ivtv-modules, virtualbox-guest-modules [amd64]" --- linux-azure-5.8-5.8.0.orig/debian.azure/control.stub.in +++ linux-azure-5.8-5.8.0/debian.azure/control.stub.in @@ -0,0 +1,90 @@ +Source: SRCPKGNAME +Section: devel +Priority: optional +Maintainer: Ubuntu Kernel Team +Standards-Version: 3.9.4.0 +Build-Depends: + debhelper-compat (= 10), + dh-systemd, + cpio, + kernel-wedge, + kmod , + libcap-dev , + makedumpfile [amd64] , + libelf-dev , + libnewt-dev , + libiberty-dev , + rsync , + libdw-dev , + libpci-dev , + pkg-config , + flex , + bison , + libunwind8-dev [amd64 arm64 armhf ppc64el] , + liblzma-dev , + openssl , + libssl-dev , + libaudit-dev , + bc , + gawk , + libudev-dev , + autoconf , + automake , + libtool , + uuid-dev , + libnuma-dev [amd64 arm64 ppc64el s390x] , + dkms , + curl , + dwarves, +Build-Depends-Indep: + xmlto , + docbook-utils , + ghostscript , + fig2dev , + bzip2 , + sharutils , + asciidoc , + python3-sphinx , + python3-sphinx-rtd-theme , + python3-docutils , +Vcs-Git: git://git.launchpad.net/~canonical-kernel/ubuntu/+source/linux-azure/+git/=SERIES= +XS-Testsuite: autopkgtest +#XS-Testsuite-Depends: gcc-4.7 binutils + +Package: SRCPKGNAME-headers-PKGVER-ABINUM +Build-Profiles: +Architecture: all +Multi-Arch: foreign +Section: devel +Priority: optional +Depends: ${misc:Depends}, coreutils +Description: Header files related to Linux kernel version PKGVER + This package provides kernel header files for version PKGVER, for sites + that want the latest kernel headers. Please read + /usr/share/doc/SRCPKGNAME-headers-PKGVER-ABINUM/debian.README.gz for details + +Package: SRCPKGNAME-tools-PKGVER-ABINUM +Build-Profiles: +Architecture: amd64 +Section: devel +Priority: optional +Depends: ${misc:Depends}, ${shlibs:Depends}, linux-tools-common +Description: Linux kernel version specific tools for version PKGVER-ABINUM + This package provides the architecture dependant parts for kernel + version locked tools (such as perf and x86_energy_perf_policy) for + version PKGVER-ABINUM on + =HUMAN=. + You probably want to install linux-tools-PKGVER-ABINUM-. + +Package: SRCPKGNAME-cloud-tools-PKGVER-ABINUM +Build-Profiles: +Architecture: amd64 +Section: devel +Priority: optional +Depends: ${misc:Depends}, ${shlibs:Depends}, linux-cloud-tools-common +Description: Linux kernel version specific cloud tools for version PKGVER-ABINUM + This package provides the architecture dependant parts for kernel + version locked tools for cloud tools for version PKGVER-ABINUM on + =HUMAN=. + You probably want to install linux-cloud-tools-PKGVER-ABINUM-. + --- linux-azure-5.8-5.8.0.orig/debian.azure/copyright +++ linux-azure-5.8-5.8.0/debian.azure/copyright @@ -0,0 +1,29 @@ +This is the Ubuntu prepackaged version of the Linux kernel. +Linux was written by Linus Torvalds +and others. + +This package was put together by the Ubuntu Kernel Team, from +sources retrieved from upstream linux git. +The sources may be found at most Linux ftp sites, including +ftp://ftp.kernel.org/pub/linux/kernel/ + +This package is currently maintained by the +Ubuntu Kernel Team + +Linux is copyrighted by Linus Torvalds and others. + + This program is free software; you can redistribute it and/or modify + it under the terms of the GNU General Public License as published by + the Free Software Foundation; version 2 dated June, 1991. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License + along with this program; if not, write to the Free Software + Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA + +On Ubuntu Linux systems, the complete text of the GNU General +Public License v2 can be found in `/usr/share/common-licenses/GPL-2'. --- linux-azure-5.8-5.8.0.orig/debian.azure/d-i/firmware/README.txt +++ linux-azure-5.8-5.8.0/debian.azure/d-i/firmware/README.txt @@ -0,0 +1,4 @@ +# +# Place the names of udeb modules into this directory that require +# runtime firmware. +# --- linux-azure-5.8-5.8.0.orig/debian.azure/d-i/kernel-versions +++ linux-azure-5.8-5.8.0/debian.azure/d-i/kernel-versions @@ -0,0 +1,2 @@ +# arch version flavour installedname suffix bdep +amd64 - azure - - - --- linux-azure-5.8-5.8.0.orig/debian.azure/d-i/package-list +++ linux-azure-5.8-5.8.0/debian.azure/d-i/package-list @@ -0,0 +1,208 @@ +Package: kernel-image +Provides: ext3-modules, ext4-modules +Provides_amd64: efi-modules, ext3-modules, ext4-modules +Provides_i386: efi-modules, ext3-modules, ext4-modules +Provides_ppc64el: ext3-modules, ext4-modules, fat-modules +Provides_s390x: ext3-modules, ext4-modules, ppp-modules +Description: kernel image and system map + +Package: dasd-modules +Depends: kernel-image, storage-core-modules +Priority: standard +Description: DASD storage support + +Package: dasd-extra-modules +Depends: dasd-modules +Priority: extra +Description: DASD storage support -- extras + +Package: fat-modules +Depends: kernel-image +Priority: standard +Description: FAT filesystem support + This includes Windows FAT and VFAT support. + +Package: fb-modules +Depends: kernel-image +Priority: standard +Description: Framebuffer modules + +Package: firewire-core-modules +Depends: kernel-image, storage-core-modules +Priority: standard +Description: Firewire (IEEE-1394) Support + +Package: floppy-modules +Depends: kernel-image +Priority: standard +Description: Floppy driver support + +Package: fs-core-modules +Depends: kernel-image +Priority: standard +Provides: ext2-modules, jfs-modules, reiserfs-modules, xfs-modules +Description: Base filesystem modules + This includes jfs, reiserfs and xfs. + +Package: fs-secondary-modules +Depends: kernel-image, fat-modules +Priority: standard +Provides: btrfs-modules, ntfs-modules, hfs-modules +Description: Extra filesystem modules + This includes support for Windows NTFS and MacOS HFS/HFSPlus + +Package: input-modules +Depends: kernel-image, usb-modules +Priority: standard +Description: Support for various input methods + +Package: irda-modules +Depends: kernel-image, nic-shared-modules +Priority: standard +Description: Support for Infrared protocols + +Package: md-modules +Depends: kernel-image +Priority: standard +Provides: crypto-dm-modules +Description: Multi-device support (raid, device-mapper, lvm) + +Package: nic-modules +Depends: kernel-image, nic-shared-modules, virtio-modules +Priority: standard +Description: Network interface support + +Package: nic-pcmcia-modules +Depends: kernel-image, nic-shared-modules, nic-modules +Priority: standard +Description: PCMCIA network interface support + +Package: nic-usb-modules +Depends: kernel-image, nic-shared-modules, usb-modules +Priority: standard +Description: USB network interface support + +Package: nic-shared-modules +Depends: kernel-image, crypto-modules +Priority: standard +Description: nic shared modules + This package contains modules which support nic modules + +Package: parport-modules +Depends: kernel-image +Priority: standard +Description: Parallel port support + +Package: pata-modules +Depends: kernel-image, storage-core-modules +Priority: standard +Description: PATA support modules + +Package: pcmcia-modules +Depends: kernel-image +Priority: standard +Description: PCMCIA Modules + +Package: pcmcia-storage-modules +Depends: kernel-image, scsi-modules +Priority: standard +Description: PCMCIA storage support + +Package: plip-modules +Depends: kernel-image, nic-shared-modules, parport-modules +Priority: standard +Description: PLIP (parallel port) networking support + +Package: ppp-modules +Depends: kernel-image, nic-shared-modules, serial-modules +Priority: standard +Description: PPP (serial port) networking support + +Package: sata-modules +Depends: kernel-image, storage-core-modules +Priority: standard +Description: SATA storage support + +Package: scsi-modules +Depends: kernel-image, storage-core-modules +Priority: standard +Description: SCSI storage support + +Package: serial-modules +Depends: kernel-image +Priority: standard +Description: Serial port support + +Package: storage-core-modules +Depends: kernel-image +Priority: standard +Provides: loop-modules +Description: Core storage support + Includes core SCSI, LibATA, USB-Storage. Also includes related block + devices for CD, Disk and Tape medium (and IDE Floppy). + +Package: usb-modules +Depends: kernel-image, storage-core-modules +Priority: standard +Description: Core USB support + +Package: nfs-modules +Priority: standard +Depends: kernel-image +Description: NFS filesystem drivers + Includes the NFS client driver, and supporting modules. + +Package: block-modules +Priority: standard +Provides: nbd-modules +Depends: kernel-image, storage-core-modules, parport-modules, virtio-modules +Description: Block storage devices + This package contains the block storage devices, including DAC960 and + paraide. + +Package: message-modules +Priority: standard +Depends: kernel-image, storage-core-modules, scsi-modules +Description: Fusion and i2o storage modules + This package containes the fusion and i2o storage modules. + +Package: crypto-modules +Priority: extra +Depends: kernel-image +Description: crypto modules + This package contains crypto modules. + +Package: virtio-modules +Priority: standard +Depends: kernel-image +Description: VirtIO Modules + Includes modules for VirtIO (virtual machine, generally kvm guests) + +Package: socket-modules +Depends: kernel-image +Priority: standard +Description: Unix socket support + +Package: mouse-modules +Depends: kernel-image, input-modules, usb-modules +Priority: extra +Description: Mouse support + This package contains mouse drivers for the Linux kernel. + +Package: vlan-modules +Depends: kernel-image +Priority: extra +Description: vlan modules + This package contains vlan (8021.Q) modules. + +Package: ipmi-modules +Depends: kernel-image +Priority: standard +Description: ipmi modules + +Package: multipath-modules +Depends: kernel-image +Priority: extra +Description: DM-Multipath support + This package contains modules for device-mapper multipath support. + --- linux-azure-5.8-5.8.0.orig/debian.azure/etc/getabis +++ linux-azure-5.8-5.8.0/debian.azure/etc/getabis @@ -0,0 +1,17 @@ +repo_list=( + "http://ppa.launchpad.net/mhcerri/azure/ubuntu/pool/main/l/linux-azure" + "http://archive.ubuntu.com/ubuntu/pool/main/l/linux-azure" + "http://ports.ubuntu.com/ubuntu-ports/pool/main/l/linux-azure" + "http://archive.ubuntu.com/ubuntu/pool/universe/l/linux-azure" + "http://ports.ubuntu.com/ubuntu-ports/pool/universe/l/linux-azure" + "http://ppa.launchpad.net/canonical-kernel-team/ppa/ubuntu/pool/main/l/linux-azure" + "http://ppa.launchpad.net/canonical-kernel-team/ppa/ubuntu/pool/main/l/linux-signed-azure" + "http://ppa.launchpad.net/canonical-kernel-team/unstable/ubuntu/pool/main/l/linux-azure" + "http://ppa.launchpad.net/canonical-kernel-team/bootstrap/ubuntu/pool/main/l/linux-azure" +) + +package_prefixes linux-image linux-modules linux-modules-extra + +getall amd64 azure + +# Ports arches and flavours. --- linux-azure-5.8-5.8.0.orig/debian.azure/etc/kernelconfig +++ linux-azure-5.8-5.8.0/debian.azure/etc/kernelconfig @@ -0,0 +1,7 @@ +if [ "$variant" = "ports" ]; then + archs="" + family='ports' +else + archs="amd64" + family='ubuntu' +fi --- linux-azure-5.8-5.8.0.orig/debian.azure/etc/update.conf +++ linux-azure-5.8-5.8.0/debian.azure/etc/update.conf @@ -0,0 +1,7 @@ +# WARNING: we do not create update.conf when we are not a +# derivative. Various cranky components make use of this. +# If we start unconditionally creating update.conf we need +# to fix at least cranky close and cranky rebase. +RELEASE_REPO=git://git.launchpad.net/~ubuntu-kernel/ubuntu/+source/linux/+git/groovy +SOURCE_RELEASE_BRANCH=master-next +DEBIAN_MASTER=debian.master --- linux-azure-5.8-5.8.0.orig/debian.azure/modprobe.d/common.conf +++ linux-azure-5.8-5.8.0/debian.azure/modprobe.d/common.conf @@ -0,0 +1,7 @@ +# LP:1434842 -- disable OSS drivers by default to allow pulseaudio to emulate +blacklist snd-mixer-oss +blacklist snd-pcm-oss +# LP:1708699 -- prevent RDMA drivers from being hot plugged +install vmbus:3daf2e8ca732094bab99bd1f1c86b501 true +# LP:1712915 -- [Hyper-V] linux-azure: rdma_ucm should autoload on HPC images +softdep hv_network_direct_* post: rdma_ucm --- linux-azure-5.8-5.8.0.orig/debian.azure/reconstruct +++ linux-azure-5.8-5.8.0/debian.azure/reconstruct @@ -0,0 +1,67 @@ +# Recreate any symlinks created since the orig. +# Remove any files deleted from the orig. +rm -f 'arch/alpha/include/asm/local64.h' +rm -f 'arch/ia64/include/asm/local64.h' +rm -f 'arch/powerpc/lib/memcpy_mcsafe_64.S' +rm -f 'arch/powerpc/platforms/pseries/offline_states.h' +rm -f 'arch/x86/include/asm/local64.h' +rm -f 'arch/x86/include/asm/mcsafe_test.h' +rm -f 'drivers/net/ethernet/mscc/ocelot_board.c' +rm -f 'drivers/staging/mt7621-dma/mtk-hsdma.c' +rm -f 'kernel/elfcore.c' +rm -f 'lib/zlib_dfltcc/dfltcc_syms.c' +rm -f 'tools/arch/x86/include/asm/mcsafe_test.h' +rm -f 'tools/perf/bench/mem-memcpy-x86-64-lib.c' +rm -f 'tools/testing/kunit/.gitattributes' +chmod +x 'arch/riscv/kernel/vdso/so2s.sh' +chmod +x 'debian/cloud-tools/hv_get_dhcp_info' +chmod +x 'debian/cloud-tools/hv_get_dns_info' +chmod +x 'debian/cloud-tools/hv_set_ifconfig' +chmod +x 'debian/rules' +chmod +x 'debian/scripts/abi-check' +chmod +x 'debian/scripts/config-check' +chmod +x 'debian/scripts/control-create' +chmod +x 'debian/scripts/dkms-build' +chmod +x 'debian/scripts/dkms-build--nvidia-N' +chmod +x 'debian/scripts/file-downloader' +chmod +x 'debian/scripts/helpers/close' +chmod +x 'debian/scripts/helpers/open' +chmod +x 'debian/scripts/helpers/rebase' +chmod +x 'debian/scripts/link-headers' +chmod +x 'debian/scripts/misc/final-checks' +chmod +x 'debian/scripts/misc/find-missing-sauce.sh' +chmod +x 'debian/scripts/misc/find-obsolete-firmware' +chmod +x 'debian/scripts/misc/fw-to-ihex.sh' +chmod +x 'debian/scripts/misc/gen-auto-reconstruct' +chmod +x 'debian/scripts/misc/get-firmware' +chmod +x 'debian/scripts/misc/getabis' +chmod +x 'debian/scripts/misc/git-ubuntu-log' +chmod +x 'debian/scripts/misc/insert-changes.pl' +chmod +x 'debian/scripts/misc/insert-mainline-changes' +chmod +x 'debian/scripts/misc/insert-ubuntu-changes' +chmod +x 'debian/scripts/misc/kernel-wedge-arch.pl' +chmod +x 'debian/scripts/misc/kernelconfig' +chmod +x 'debian/scripts/misc/retag' +chmod +x 'debian/scripts/misc/splitconfig.pl' +chmod +x 'debian/scripts/misc/tristate.sh' +chmod +x 'debian/scripts/misc/update-aufs.sh' +chmod +x 'debian/scripts/module-check' +chmod +x 'debian/scripts/module-inclusion' +chmod +x 'debian/scripts/retpoline-check' +chmod +x 'debian/scripts/retpoline-extract' +chmod +x 'debian/scripts/retpoline-extract-one' +chmod +x 'debian/templates/extra.postinst.in' +chmod +x 'debian/templates/extra.postrm.in' +chmod +x 'debian/templates/headers.postinst.in' +chmod +x 'debian/templates/image.postinst.in' +chmod +x 'debian/templates/image.postrm.in' +chmod +x 'debian/templates/image.preinst.in' +chmod +x 'debian/templates/image.prerm.in' +chmod +x 'debian/tests-build/check-aliases' +chmod +x 'debian/tests/rebuild' +chmod +x 'debian/tests/ubuntu-regression-suite' +chmod +x 'samples/bpf/lwt_len_hist.sh' +chmod +x 'samples/bpf/test_lwt_bpf.sh' +chmod +x 'scripts/kmsg-doc' +chmod +x 'update-version-dkms' +exit 0 --- linux-azure-5.8-5.8.0.orig/debian.azure/rules.d/amd64.mk +++ linux-azure-5.8-5.8.0/debian.azure/rules.d/amd64.mk @@ -0,0 +1,27 @@ +human_arch = 64 bit x86 +build_arch = x86 +header_arch = $(build_arch) +defconfig = defconfig +flavours = azure +build_image = bzImage +kernel_file = arch/$(build_arch)/boot/bzImage +install_file = vmlinuz +loader = grub +vdso = vdso_install +no_dumpfile = true +uefi_signed = true +do_tools_usbip = true +do_tools_cpupower = true +do_tools_perf = true +do_tools_bpftool = true +do_tools_x86 = true +do_tools_hyperv = true +do_extras_package = true +do_tools_common = false +do_zfs = true +do_libc_dev_package=false +disable_d_i=true +do_source_package = false +do_doc_package = false +do_dkms_nvidia = true +do_dkms_nvidia_server = true --- linux-azure-5.8-5.8.0.orig/debian.azure/tracking-bug +++ linux-azure-5.8-5.8.0/debian.azure/tracking-bug @@ -0,0 +1 @@ +1923744 --- linux-azure-5.8-5.8.0.orig/debian.master/abi/5.8.0-50.56/abiname +++ linux-azure-5.8-5.8.0/debian.master/abi/5.8.0-50.56/abiname @@ -0,0 +1 @@ +50 --- linux-azure-5.8-5.8.0.orig/debian.master/abi/5.8.0-50.56/amd64/generic +++ linux-azure-5.8-5.8.0/debian.master/abi/5.8.0-50.56/amd64/generic @@ -0,0 +1,24513 @@ +EXPORT_SYMBOL arch/x86/crypto/blake2s-x86_64 0x23aa18fe blake2s_compress_arch +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 0x7c904efe poly1305_init_arch +EXPORT_SYMBOL arch/x86/crypto/poly1305-x86_64 0xd9ec23eb poly1305_update_arch +EXPORT_SYMBOL arch/x86/crypto/poly1305-x86_64 0xfaeb41b2 poly1305_final_arch +EXPORT_SYMBOL arch/x86/kvm/kvm 0x48649d10 kvm_cpu_has_pending_timer +EXPORT_SYMBOL crypto/ecc 0x16e410ff vli_from_be64 +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 0x9263b417 ecc_point_mult_shamir +EXPORT_SYMBOL crypto/ecc 0x92668805 vli_cmp +EXPORT_SYMBOL crypto/ecc 0x9f6efabd vli_sub +EXPORT_SYMBOL crypto/ecc 0xa76b31a2 crypto_ecdh_shared_secret +EXPORT_SYMBOL crypto/ecc 0xd6315f31 ecc_gen_privkey +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 0x52ac1fc0 crypto_nhpoly1305_final +EXPORT_SYMBOL crypto/nhpoly1305 0x92c8d8dc crypto_nhpoly1305_final_helper +EXPORT_SYMBOL crypto/nhpoly1305 0xad885ab4 crypto_nhpoly1305_update +EXPORT_SYMBOL crypto/nhpoly1305 0xbc311978 crypto_nhpoly1305_update_helper +EXPORT_SYMBOL crypto/nhpoly1305 0xd427b31b crypto_nhpoly1305_setkey +EXPORT_SYMBOL crypto/nhpoly1305 0xeffd1d99 crypto_nhpoly1305_init +EXPORT_SYMBOL crypto/sha3_generic 0x2dce519b crypto_sha3_update +EXPORT_SYMBOL crypto/sha3_generic 0x75df2d28 crypto_sha3_final +EXPORT_SYMBOL crypto/sha3_generic 0x79819f28 crypto_sha3_init +EXPORT_SYMBOL crypto/sm3_generic 0x271d72f9 crypto_sm3_finup +EXPORT_SYMBOL crypto/sm3_generic 0xfaff366a crypto_sm3_update +EXPORT_SYMBOL crypto/xor 0x5b6c00e6 xor_blocks +EXPORT_SYMBOL drivers/acpi/nfit/nfit 0xceec93be to_nfit_uuid +EXPORT_SYMBOL drivers/acpi/video 0x6de7f7ff acpi_video_get_backlight_type +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 0x8826c13b acpi_video_register +EXPORT_SYMBOL drivers/acpi/video 0xbd15dd33 acpi_video_get_edid +EXPORT_SYMBOL drivers/acpi/video 0xe38e3d40 acpi_video_get_levels +EXPORT_SYMBOL drivers/acpi/video 0xe92ca535 acpi_video_set_dmi_backlight_type +EXPORT_SYMBOL drivers/atm/suni 0xb284ac43 suni_init +EXPORT_SYMBOL drivers/atm/uPD98402 0xe0579f0c uPD98402_init +EXPORT_SYMBOL drivers/bcma/bcma 0x3e212792 bcma_core_irq +EXPORT_SYMBOL drivers/bcma/bcma 0x75def893 bcma_core_dma_translation +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/block/paride/paride 0x13120d67 paride_unregister +EXPORT_SYMBOL drivers/block/paride/paride 0x278e99f9 pi_init +EXPORT_SYMBOL drivers/block/paride/paride 0x4267110a pi_register_driver +EXPORT_SYMBOL drivers/block/paride/paride 0x4de0f006 pi_read_block +EXPORT_SYMBOL drivers/block/paride/paride 0x56b3f78d pi_disconnect +EXPORT_SYMBOL drivers/block/paride/paride 0x5c30f359 pi_release +EXPORT_SYMBOL drivers/block/paride/paride 0x7b762948 pi_connect +EXPORT_SYMBOL drivers/block/paride/paride 0x9a00edcb pi_write_block +EXPORT_SYMBOL drivers/block/paride/paride 0xa37bb9e8 pi_do_claimed +EXPORT_SYMBOL drivers/block/paride/paride 0xab4ed06e pi_schedule_claimed +EXPORT_SYMBOL drivers/block/paride/paride 0xb21ba07d pi_unregister_driver +EXPORT_SYMBOL drivers/block/paride/paride 0xbda495a7 paride_register +EXPORT_SYMBOL drivers/block/paride/paride 0xcfb38a0c pi_read_regr +EXPORT_SYMBOL drivers/block/paride/paride 0xf32e64ea pi_write_regr +EXPORT_SYMBOL drivers/bluetooth/btbcm 0x2bdaedd6 btbcm_patchram +EXPORT_SYMBOL drivers/bluetooth/btrsi 0x52edb05a rsi_bt_ops +EXPORT_SYMBOL drivers/bus/mhi/core/mhi 0x1731e47d 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 0x230094ac ipmi_smi_watchdog_pretimeout +EXPORT_SYMBOL drivers/char/ipmi/ipmi_msghandler 0x2dd8b10d ipmi_add_smi +EXPORT_SYMBOL drivers/char/ipmi/ipmi_msghandler 0x31cab048 ipmi_smi_msg_received +EXPORT_SYMBOL drivers/char/ipmi/ipmi_msghandler 0x40f2b10c ipmi_alloc_smi_msg +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 0x67369b42 ipmi_addr_src_to_str +EXPORT_SYMBOL drivers/char/ipmi/ipmi_msghandler 0x6faeab02 ipmi_smi_watcher_unregister +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 0x917f8fb8 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 0xe9729703 ipmi_smi_watcher_register +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 0x28351d3e st33zp24_pm_resume +EXPORT_SYMBOL drivers/char/tpm/st33zp24/tpm_st33zp24 0x38bbb800 st33zp24_pm_suspend +EXPORT_SYMBOL drivers/char/tpm/st33zp24/tpm_st33zp24 0x8c1f08fe st33zp24_probe +EXPORT_SYMBOL drivers/char/tpm/st33zp24/tpm_st33zp24 0xe6309953 st33zp24_remove +EXPORT_SYMBOL drivers/char/xillybus/xillybus_core 0x25978d50 xillybus_isr +EXPORT_SYMBOL drivers/char/xillybus/xillybus_core 0x64a1ba4b xillybus_endpoint_remove +EXPORT_SYMBOL drivers/char/xillybus/xillybus_core 0xa6b1a176 xillybus_endpoint_discovery +EXPORT_SYMBOL drivers/char/xillybus/xillybus_core 0xd08bc3b8 xillybus_init_endpoint +EXPORT_SYMBOL drivers/crypto/atmel-i2c 0x09577f7a atmel_i2c_enqueue +EXPORT_SYMBOL drivers/crypto/atmel-i2c 0x59adad7e atmel_i2c_send_receive +EXPORT_SYMBOL drivers/crypto/atmel-i2c 0x80a11b1d atmel_i2c_init_read_cmd +EXPORT_SYMBOL drivers/crypto/atmel-i2c 0xa567f89f atmel_i2c_probe +EXPORT_SYMBOL drivers/crypto/atmel-i2c 0xc71ed50c atmel_i2c_init_genkey_cmd +EXPORT_SYMBOL drivers/crypto/atmel-i2c 0xf283e995 atmel_i2c_init_random_cmd +EXPORT_SYMBOL drivers/crypto/atmel-i2c 0xfaab573f atmel_i2c_init_ecdh_cmd +EXPORT_SYMBOL drivers/crypto/ccp/ccp 0x47d3c97f psp_check_tee_status +EXPORT_SYMBOL drivers/crypto/ccp/ccp 0xaa04056c psp_tee_process_cmd +EXPORT_SYMBOL drivers/firewire/firewire-core 0x0bc6094c fw_core_remove_descriptor +EXPORT_SYMBOL drivers/firewire/firewire-core 0x0ce7932d fw_iso_context_queue +EXPORT_SYMBOL drivers/firewire/firewire-core 0x16c84067 fw_fill_response +EXPORT_SYMBOL drivers/firewire/firewire-core 0x171d14d8 fw_schedule_bus_reset +EXPORT_SYMBOL drivers/firewire/firewire-core 0x27f722aa fw_iso_context_queue_flush +EXPORT_SYMBOL drivers/firewire/firewire-core 0x2885fec5 fw_get_request_speed +EXPORT_SYMBOL drivers/firewire/firewire-core 0x2a2bcf0a fw_iso_context_start +EXPORT_SYMBOL drivers/firewire/firewire-core 0x3044ab50 fw_iso_context_create +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 0x44164435 fw_device_enable_phys_dma +EXPORT_SYMBOL drivers/firewire/firewire-core 0x4b31a605 fw_cancel_transaction +EXPORT_SYMBOL drivers/firewire/firewire-core 0x5200973a fw_core_handle_request +EXPORT_SYMBOL drivers/firewire/firewire-core 0x5a7d88ed fw_iso_context_destroy +EXPORT_SYMBOL drivers/firewire/firewire-core 0x6dc50487 fw_csr_string +EXPORT_SYMBOL drivers/firewire/firewire-core 0x6e5a5b3f fw_core_remove_card +EXPORT_SYMBOL drivers/firewire/firewire-core 0x727c72cc fw_run_transaction +EXPORT_SYMBOL drivers/firewire/firewire-core 0x758c6698 fw_iso_buffer_init +EXPORT_SYMBOL drivers/firewire/firewire-core 0x7e819957 fw_card_initialize +EXPORT_SYMBOL drivers/firewire/firewire-core 0x86468d44 fw_rcode_string +EXPORT_SYMBOL drivers/firewire/firewire-core 0x874a02ce fw_iso_resource_manage +EXPORT_SYMBOL drivers/firewire/firewire-core 0x8bd5d270 fw_core_add_address_handler +EXPORT_SYMBOL drivers/firewire/firewire-core 0xa144d95f fw_card_add +EXPORT_SYMBOL drivers/firewire/firewire-core 0xae747387 fw_bus_type +EXPORT_SYMBOL drivers/firewire/firewire-core 0xaedf84ce fw_high_memory_region +EXPORT_SYMBOL drivers/firewire/firewire-core 0xc2e9d09c fw_send_request +EXPORT_SYMBOL drivers/firewire/firewire-core 0xc3037306 fw_iso_context_flush_completions +EXPORT_SYMBOL drivers/firewire/firewire-core 0xcc3d5be4 fw_send_response +EXPORT_SYMBOL drivers/firewire/firewire-core 0xe3fde125 fw_csr_iterator_next +EXPORT_SYMBOL drivers/firewire/firewire-core 0xe48db39e fw_core_handle_bus_reset +EXPORT_SYMBOL drivers/firewire/firewire-core 0xe80e5087 fw_csr_iterator_init +EXPORT_SYMBOL drivers/firewire/firewire-core 0xee8c62fb fw_core_handle_response +EXPORT_SYMBOL drivers/firewire/firewire-core 0xf375eb9f fw_iso_context_stop +EXPORT_SYMBOL drivers/firewire/firewire-core 0xf73577fd fw_core_remove_address_handler +EXPORT_SYMBOL drivers/firewire/firewire-core 0xf7a9f7fe fw_iso_buffer_destroy +EXPORT_SYMBOL drivers/gpu/drm/drm 0x0088b1b5 drm_atomic_state_init +EXPORT_SYMBOL drivers/gpu/drm/drm 0x00e350f2 drm_dev_unregister +EXPORT_SYMBOL drivers/gpu/drm/drm 0x010d48cb drm_gtf_mode_complex +EXPORT_SYMBOL drivers/gpu/drm/drm 0x013f2275 drm_connector_cleanup +EXPORT_SYMBOL drivers/gpu/drm/drm 0x0147783b drm_mode_create_suggested_offset_properties +EXPORT_SYMBOL drivers/gpu/drm/drm 0x014c1427 drm_gem_unlock_reservations +EXPORT_SYMBOL drivers/gpu/drm/drm 0x029eb67d drm_crtc_wait_one_vblank +EXPORT_SYMBOL drivers/gpu/drm/drm 0x03c63897 __drm_get_edid_firmware_path +EXPORT_SYMBOL drivers/gpu/drm/drm 0x0410f9a8 drm_encoder_init +EXPORT_SYMBOL drivers/gpu/drm/drm 0x0414665f drm_warn_on_modeset_not_all_locked +EXPORT_SYMBOL drivers/gpu/drm/drm 0x043ccd29 drm_gem_unmap_dma_buf +EXPORT_SYMBOL drivers/gpu/drm/drm 0x04a65bc4 drm_property_create +EXPORT_SYMBOL drivers/gpu/drm/drm 0x057630d7 drm_panel_add +EXPORT_SYMBOL drivers/gpu/drm/drm 0x0661fc03 drm_dev_unplug +EXPORT_SYMBOL drivers/gpu/drm/drm 0x06a9600b drm_property_add_enum +EXPORT_SYMBOL drivers/gpu/drm/drm 0x06aaa7a3 drm_crtc_vblank_on +EXPORT_SYMBOL drivers/gpu/drm/drm 0x070b28aa drm_ht_remove_item +EXPORT_SYMBOL drivers/gpu/drm/drm 0x0712e21d drm_edid_get_monitor_name +EXPORT_SYMBOL drivers/gpu/drm/drm 0x07eb0877 drm_plane_from_index +EXPORT_SYMBOL drivers/gpu/drm/drm 0x07f88521 drm_edid_is_valid +EXPORT_SYMBOL drivers/gpu/drm/drm 0x07fb449a drm_vma_offset_manager_destroy +EXPORT_SYMBOL drivers/gpu/drm/drm 0x08e57ecb drm_agp_init +EXPORT_SYMBOL drivers/gpu/drm/drm 0x09804f2a drm_hdcp_update_content_protection +EXPORT_SYMBOL drivers/gpu/drm/drm 0x0a72f765 drm_clflush_virt_range +EXPORT_SYMBOL drivers/gpu/drm/drm 0x0ab9f2eb drm_property_create_enum +EXPORT_SYMBOL drivers/gpu/drm/drm 0x0bd000a0 drm_color_lut_check +EXPORT_SYMBOL drivers/gpu/drm/drm 0x0cd012da drm_modeset_unlock +EXPORT_SYMBOL drivers/gpu/drm/drm 0x0d8e424e drm_framebuffer_unregister_private +EXPORT_SYMBOL drivers/gpu/drm/drm 0x0dee1c9a drm_match_cea_mode +EXPORT_SYMBOL drivers/gpu/drm/drm 0x0e3200e4 drm_mode_object_find +EXPORT_SYMBOL drivers/gpu/drm/drm 0x0ed25ae3 drm_open +EXPORT_SYMBOL drivers/gpu/drm/drm 0x0edda541 drm_panel_disable +EXPORT_SYMBOL drivers/gpu/drm/drm 0x0f01d95e drm_panel_of_backlight +EXPORT_SYMBOL drivers/gpu/drm/drm 0x0f7f7980 drm_modeset_lock_all +EXPORT_SYMBOL drivers/gpu/drm/drm 0x0faf1328 drm_gem_map_dma_buf +EXPORT_SYMBOL drivers/gpu/drm/drm 0x0fd60df2 drm_get_connector_status_name +EXPORT_SYMBOL drivers/gpu/drm/drm 0x0feeec9e drm_dev_alloc +EXPORT_SYMBOL drivers/gpu/drm/drm 0x107742a9 drm_get_subpixel_order_name +EXPORT_SYMBOL drivers/gpu/drm/drm 0x10c62b61 __drm_printfn_debug +EXPORT_SYMBOL drivers/gpu/drm/drm 0x10cac678 drm_mode_prune_invalid +EXPORT_SYMBOL drivers/gpu/drm/drm 0x10db9e13 drm_gem_object_release +EXPORT_SYMBOL drivers/gpu/drm/drm 0x10e461e0 drm_gem_vm_open +EXPORT_SYMBOL drivers/gpu/drm/drm 0x10f11efa drm_gem_object_put +EXPORT_SYMBOL drivers/gpu/drm/drm 0x110f69ab drm_wait_one_vblank +EXPORT_SYMBOL drivers/gpu/drm/drm 0x11b9567a drm_vma_node_is_allowed +EXPORT_SYMBOL drivers/gpu/drm/drm 0x127a8c6b drm_flip_work_queue +EXPORT_SYMBOL drivers/gpu/drm/drm 0x13e14103 drm_mode_equal_no_clocks_no_stereo +EXPORT_SYMBOL drivers/gpu/drm/drm 0x14f10f48 drm_gem_dma_resv_wait +EXPORT_SYMBOL drivers/gpu/drm/drm 0x14fb818a drm_writeback_queue_job +EXPORT_SYMBOL drivers/gpu/drm/drm 0x15899c92 drm_property_create_object +EXPORT_SYMBOL drivers/gpu/drm/drm 0x15d8aa41 __drm_printfn_seq_file +EXPORT_SYMBOL drivers/gpu/drm/drm 0x16ac2597 drm_printf +EXPORT_SYMBOL drivers/gpu/drm/drm 0x16ef3402 drm_dev_set_unique +EXPORT_SYMBOL drivers/gpu/drm/drm 0x19256260 drm_client_buffer_vunmap +EXPORT_SYMBOL drivers/gpu/drm/drm 0x19ab4f03 drm_mode_create +EXPORT_SYMBOL drivers/gpu/drm/drm 0x1a411479 drm_syncobj_free +EXPORT_SYMBOL drivers/gpu/drm/drm 0x1a96ca57 drm_mode_create_scaling_mode_property +EXPORT_SYMBOL drivers/gpu/drm/drm 0x1af3d6c6 drm_atomic_state_alloc +EXPORT_SYMBOL drivers/gpu/drm/drm 0x1c34302c drm_i2c_encoder_mode_set +EXPORT_SYMBOL drivers/gpu/drm/drm 0x1e1e232e drm_release_noglobal +EXPORT_SYMBOL drivers/gpu/drm/drm 0x1e788f2d drm_syncobj_find +EXPORT_SYMBOL drivers/gpu/drm/drm 0x1f920445 drm_writeback_get_out_fence +EXPORT_SYMBOL drivers/gpu/drm/drm 0x20163fd2 drm_connector_set_panel_orientation +EXPORT_SYMBOL drivers/gpu/drm/drm 0x202c6b41 drm_crtc_vblank_helper_get_vblank_timestamp +EXPORT_SYMBOL drivers/gpu/drm/drm 0x205fdf49 drm_sysfs_hotplug_event +EXPORT_SYMBOL drivers/gpu/drm/drm 0x2183c08c drm_mm_scan_add_block +EXPORT_SYMBOL drivers/gpu/drm/drm 0x2197d15f drm_master_get +EXPORT_SYMBOL drivers/gpu/drm/drm 0x21d541eb drm_flip_work_queue_task +EXPORT_SYMBOL drivers/gpu/drm/drm 0x231635ab drm_mode_find_dmt +EXPORT_SYMBOL drivers/gpu/drm/drm 0x238f9908 drm_gem_shmem_vmap +EXPORT_SYMBOL drivers/gpu/drm/drm 0x2396d2f5 devm_drm_dev_init +EXPORT_SYMBOL drivers/gpu/drm/drm 0x239ff4f3 drm_modeset_lock_init +EXPORT_SYMBOL drivers/gpu/drm/drm 0x23d38f58 drm_agp_bind +EXPORT_SYMBOL drivers/gpu/drm/drm 0x246181ef drm_event_cancel_free +EXPORT_SYMBOL drivers/gpu/drm/drm 0x2532689b drm_mode_is_420 +EXPORT_SYMBOL drivers/gpu/drm/drm 0x255cda24 drm_property_blob_get +EXPORT_SYMBOL drivers/gpu/drm/drm 0x25daad93 __drm_mm_interval_first +EXPORT_SYMBOL drivers/gpu/drm/drm 0x262a19ba drm_crtc_arm_vblank_event +EXPORT_SYMBOL drivers/gpu/drm/drm 0x2631f075 drm_object_property_get_value +EXPORT_SYMBOL drivers/gpu/drm/drm 0x2754dad8 drm_mm_reserve_node +EXPORT_SYMBOL drivers/gpu/drm/drm 0x29768891 drm_framebuffer_remove +EXPORT_SYMBOL drivers/gpu/drm/drm 0x29f078d1 drm_mode_legacy_fb_format +EXPORT_SYMBOL drivers/gpu/drm/drm 0x2a566db2 drm_object_property_set_value +EXPORT_SYMBOL drivers/gpu/drm/drm 0x2a962499 drm_mm_scan_init_with_range +EXPORT_SYMBOL drivers/gpu/drm/drm 0x2ae0bfea drm_vma_offset_lookup_locked +EXPORT_SYMBOL drivers/gpu/drm/drm 0x2bd55fdf drm_hdmi_vendor_infoframe_from_display_mode +EXPORT_SYMBOL drivers/gpu/drm/drm 0x2c013679 drm_crtc_vblank_helper_get_vblank_timestamp_internal +EXPORT_SYMBOL drivers/gpu/drm/drm 0x2d50570f drm_rect_calc_hscale +EXPORT_SYMBOL drivers/gpu/drm/drm 0x2e1050ba drm_poll +EXPORT_SYMBOL drivers/gpu/drm/drm 0x2e43417e drm_connector_list_iter_begin +EXPORT_SYMBOL drivers/gpu/drm/drm 0x2e613988 drm_gtf_mode +EXPORT_SYMBOL drivers/gpu/drm/drm 0x30cad434 drm_crtc_vblank_restore +EXPORT_SYMBOL drivers/gpu/drm/drm 0x3129c466 drm_agp_free +EXPORT_SYMBOL drivers/gpu/drm/drm 0x31b5269e drm_connector_set_path_property +EXPORT_SYMBOL drivers/gpu/drm/drm 0x31b8a5e3 __drm_set_edid_firmware_path +EXPORT_SYMBOL drivers/gpu/drm/drm 0x32be26ad drm_gem_lock_reservations +EXPORT_SYMBOL drivers/gpu/drm/drm 0x3345d80f drm_cvt_mode +EXPORT_SYMBOL drivers/gpu/drm/drm 0x3503d682 drm_mode_vrefresh +EXPORT_SYMBOL drivers/gpu/drm/drm 0x35afae24 __drm_puts_seq_file +EXPORT_SYMBOL drivers/gpu/drm/drm 0x360ade11 drm_atomic_set_fb_for_plane +EXPORT_SYMBOL drivers/gpu/drm/drm 0x36144129 drm_atomic_get_new_bridge_state +EXPORT_SYMBOL drivers/gpu/drm/drm 0x36efb85d drm_mode_validate_driver +EXPORT_SYMBOL drivers/gpu/drm/drm 0x371caf59 drm_gem_prime_import_dev +EXPORT_SYMBOL drivers/gpu/drm/drm 0x3765a0d0 drm_agp_unbind +EXPORT_SYMBOL drivers/gpu/drm/drm 0x378d294c drm_mode_is_420_also +EXPORT_SYMBOL drivers/gpu/drm/drm 0x384ce69a drm_property_create_signed_range +EXPORT_SYMBOL drivers/gpu/drm/drm 0x38a59417 drm_vblank_restore +EXPORT_SYMBOL drivers/gpu/drm/drm 0x398e90ea drm_send_event_locked +EXPORT_SYMBOL drivers/gpu/drm/drm 0x39e2f623 drm_agp_acquire +EXPORT_SYMBOL drivers/gpu/drm/drm 0x3a0d59d7 drm_crtc_send_vblank_event +EXPORT_SYMBOL drivers/gpu/drm/drm 0x3a204511 drm_dev_has_vblank +EXPORT_SYMBOL drivers/gpu/drm/drm 0x3a331488 drm_writeback_cleanup_job +EXPORT_SYMBOL drivers/gpu/drm/drm 0x3a451e9c drm_connector_init_with_ddc +EXPORT_SYMBOL drivers/gpu/drm/drm 0x3ae87fb4 drm_mode_object_put +EXPORT_SYMBOL drivers/gpu/drm/drm 0x3aec1bec drm_vma_node_allow +EXPORT_SYMBOL drivers/gpu/drm/drm 0x3ba17eab drm_ht_insert_item +EXPORT_SYMBOL drivers/gpu/drm/drm 0x3c22a4d8 drm_vma_offset_manager_init +EXPORT_SYMBOL drivers/gpu/drm/drm 0x3c4ebbfb drm_bridge_chain_enable +EXPORT_SYMBOL drivers/gpu/drm/drm 0x3c967c98 drm_property_create_bitmask +EXPORT_SYMBOL drivers/gpu/drm/drm 0x3d6f7290 drm_debugfs_remove_files +EXPORT_SYMBOL drivers/gpu/drm/drm 0x3e3f305a drm_mode_probed_add +EXPORT_SYMBOL drivers/gpu/drm/drm 0x3e50b109 drm_gem_fence_array_add +EXPORT_SYMBOL drivers/gpu/drm/drm 0x3e975264 drm_modeset_lock +EXPORT_SYMBOL drivers/gpu/drm/drm 0x3ec32401 drm_bridge_remove +EXPORT_SYMBOL drivers/gpu/drm/drm 0x3fad73c8 drm_clflush_pages +EXPORT_SYMBOL drivers/gpu/drm/drm 0x42f1547a drm_atomic_bridge_chain_disable +EXPORT_SYMBOL drivers/gpu/drm/drm 0x4394f815 drm_framebuffer_init +EXPORT_SYMBOL drivers/gpu/drm/drm 0x44a2e45a __drm_atomic_helper_set_config +EXPORT_SYMBOL drivers/gpu/drm/drm 0x44bcd546 drm_property_replace_global_blob +EXPORT_SYMBOL drivers/gpu/drm/drm 0x44bf9874 drm_i2c_encoder_dpms +EXPORT_SYMBOL drivers/gpu/drm/drm 0x456935d0 drmm_mode_config_init +EXPORT_SYMBOL drivers/gpu/drm/drm 0x474156b5 drm_mode_equal +EXPORT_SYMBOL drivers/gpu/drm/drm 0x47f985aa drm_edid_duplicate +EXPORT_SYMBOL drivers/gpu/drm/drm 0x4938b3bc __drm_atomic_helper_disable_plane +EXPORT_SYMBOL drivers/gpu/drm/drm 0x49442b2b drm_legacy_ioremap +EXPORT_SYMBOL drivers/gpu/drm/drm 0x49a2a386 drm_client_release +EXPORT_SYMBOL drivers/gpu/drm/drm 0x49e045e4 drm_gem_vm_close +EXPORT_SYMBOL drivers/gpu/drm/drm 0x49f6fb6c drm_handle_vblank +EXPORT_SYMBOL drivers/gpu/drm/drm 0x4b7ebf95 drm_mm_remove_node +EXPORT_SYMBOL drivers/gpu/drm/drm 0x4bdb0958 drm_irq_uninstall +EXPORT_SYMBOL drivers/gpu/drm/drm 0x4bf61717 drm_client_modeset_dpms +EXPORT_SYMBOL drivers/gpu/drm/drm 0x4c500e16 drm_display_info_set_bus_formats +EXPORT_SYMBOL drivers/gpu/drm/drm 0x4c68036f drm_crtc_vblank_put +EXPORT_SYMBOL drivers/gpu/drm/drm 0x4ce2e2e6 drm_mode_create_tv_margin_properties +EXPORT_SYMBOL drivers/gpu/drm/drm 0x4d993071 drm_dev_register +EXPORT_SYMBOL drivers/gpu/drm/drm 0x4dd63259 drm_syncobj_create +EXPORT_SYMBOL drivers/gpu/drm/drm 0x4e095f11 drm_get_format_name +EXPORT_SYMBOL drivers/gpu/drm/drm 0x4e0e3188 drm_probe_ddc +EXPORT_SYMBOL drivers/gpu/drm/drm 0x4ecd2d4f drm_agp_info +EXPORT_SYMBOL drivers/gpu/drm/drm 0x4f18a150 __drm_debug +EXPORT_SYMBOL drivers/gpu/drm/drm 0x4f4c3b2a drm_add_edid_modes +EXPORT_SYMBOL drivers/gpu/drm/drm 0x4fcddeb2 drm_gem_shmem_print_info +EXPORT_SYMBOL drivers/gpu/drm/drm 0x4ff32222 drm_plane_create_zpos_immutable_property +EXPORT_SYMBOL drivers/gpu/drm/drm 0x50674de7 drm_timeout_abs_to_jiffies +EXPORT_SYMBOL drivers/gpu/drm/drm 0x50d41876 drmm_add_final_kfree +EXPORT_SYMBOL drivers/gpu/drm/drm 0x50eec933 drm_property_lookup_blob +EXPORT_SYMBOL drivers/gpu/drm/drm 0x5149d1e5 drm_connector_attach_content_protection_property +EXPORT_SYMBOL drivers/gpu/drm/drm 0x5150a57d drm_dev_printk +EXPORT_SYMBOL drivers/gpu/drm/drm 0x51516ef0 drm_atomic_private_obj_init +EXPORT_SYMBOL drivers/gpu/drm/drm 0x51c1f2c2 drm_master_put +EXPORT_SYMBOL drivers/gpu/drm/drm 0x51f5dc9a drm_connector_list_iter_next +EXPORT_SYMBOL drivers/gpu/drm/drm 0x51f866cd drm_master_internal_release +EXPORT_SYMBOL drivers/gpu/drm/drm 0x5276c266 drm_get_edid_switcheroo +EXPORT_SYMBOL drivers/gpu/drm/drm 0x53472315 drm_modeset_unlock_all +EXPORT_SYMBOL drivers/gpu/drm/drm 0x5486c416 drm_hdmi_avi_infoframe_content_type +EXPORT_SYMBOL drivers/gpu/drm/drm 0x54c7d629 drm_framebuffer_lookup +EXPORT_SYMBOL drivers/gpu/drm/drm 0x54d968a6 drm_gem_shmem_purge +EXPORT_SYMBOL drivers/gpu/drm/drm 0x5542443b drm_flip_work_init +EXPORT_SYMBOL drivers/gpu/drm/drm 0x5663ef28 drm_atomic_set_mode_for_crtc +EXPORT_SYMBOL drivers/gpu/drm/drm 0x566c7016 drm_gem_shmem_create_with_handle +EXPORT_SYMBOL drivers/gpu/drm/drm 0x56c6e828 drm_mode_get_hv_timing +EXPORT_SYMBOL drivers/gpu/drm/drm 0x56d336c1 drm_crtc_enable_color_mgmt +EXPORT_SYMBOL drivers/gpu/drm/drm 0x57698a50 drm_mm_takedown +EXPORT_SYMBOL drivers/gpu/drm/drm 0x579572fe drm_agp_release +EXPORT_SYMBOL drivers/gpu/drm/drm 0x579f5a79 drm_plane_create_zpos_property +EXPORT_SYMBOL drivers/gpu/drm/drm 0x57b6efe3 drm_ioctl_flags +EXPORT_SYMBOL drivers/gpu/drm/drm 0x58237802 drm_gem_free_mmap_offset +EXPORT_SYMBOL drivers/gpu/drm/drm 0x58fe19b3 drm_property_create_blob +EXPORT_SYMBOL drivers/gpu/drm/drm 0x59056243 drm_mm_replace_node +EXPORT_SYMBOL drivers/gpu/drm/drm 0x5927e9e7 drm_agp_alloc +EXPORT_SYMBOL drivers/gpu/drm/drm 0x5948ed9b drm_atomic_normalize_zpos +EXPORT_SYMBOL drivers/gpu/drm/drm 0x59e0e850 drm_add_modes_noedid +EXPORT_SYMBOL drivers/gpu/drm/drm 0x59e8584f drm_modeset_lock_single_interruptible +EXPORT_SYMBOL drivers/gpu/drm/drm 0x5b8a336f drm_panel_get_modes +EXPORT_SYMBOL drivers/gpu/drm/drm 0x5c321d70 drm_mode_set_config_internal +EXPORT_SYMBOL drivers/gpu/drm/drm 0x5cabaad6 drm_mode_create_tv_properties +EXPORT_SYMBOL drivers/gpu/drm/drm 0x5df30c9c drm_property_create_range +EXPORT_SYMBOL drivers/gpu/drm/drm 0x5f096225 drm_vma_offset_remove +EXPORT_SYMBOL drivers/gpu/drm/drm 0x5f1a55a8 drm_crtc_cleanup +EXPORT_SYMBOL drivers/gpu/drm/drm 0x5f7985a5 drm_mm_scan_remove_block +EXPORT_SYMBOL drivers/gpu/drm/drm 0x60786275 drm_mode_create_dp_colorspace_property +EXPORT_SYMBOL drivers/gpu/drm/drm 0x637cac19 drm_mode_set_crtcinfo +EXPORT_SYMBOL drivers/gpu/drm/drm 0x64b08c52 drm_gem_cma_print_info +EXPORT_SYMBOL drivers/gpu/drm/drm 0x64cdaef2 drm_panel_unprepare +EXPORT_SYMBOL drivers/gpu/drm/drm 0x66551bc7 drm_detect_monitor_audio +EXPORT_SYMBOL drivers/gpu/drm/drm 0x667bb511 drm_compat_ioctl +EXPORT_SYMBOL drivers/gpu/drm/drm 0x672a1b61 drm_bridge_chain_disable +EXPORT_SYMBOL drivers/gpu/drm/drm 0x67d466ca drm_event_reserve_init +EXPORT_SYMBOL drivers/gpu/drm/drm 0x68552c3f drm_modeset_lock_all_ctx +EXPORT_SYMBOL drivers/gpu/drm/drm 0x688f28d0 drm_atomic_state_clear +EXPORT_SYMBOL drivers/gpu/drm/drm 0x6b25d4f1 drm_object_attach_property +EXPORT_SYMBOL drivers/gpu/drm/drm 0x6b5f2790 drm_connector_attach_max_bpc_property +EXPORT_SYMBOL drivers/gpu/drm/drm 0x6c11b408 drm_client_modeset_commit +EXPORT_SYMBOL drivers/gpu/drm/drm 0x6e30ba8e drm_rect_rotate_inv +EXPORT_SYMBOL drivers/gpu/drm/drm 0x6ff8434f drm_crtc_vblank_count +EXPORT_SYMBOL drivers/gpu/drm/drm 0x70e01694 drm_send_event +EXPORT_SYMBOL drivers/gpu/drm/drm 0x70eb6dc4 drm_noop +EXPORT_SYMBOL drivers/gpu/drm/drm 0x7128ec43 drm_atomic_get_old_private_obj_state +EXPORT_SYMBOL drivers/gpu/drm/drm 0x713cead7 drm_panel_enable +EXPORT_SYMBOL drivers/gpu/drm/drm 0x715504c7 drm_master_internal_acquire +EXPORT_SYMBOL drivers/gpu/drm/drm 0x71953e84 drm_mode_parse_command_line_for_connector +EXPORT_SYMBOL drivers/gpu/drm/drm 0x71b2d07c drm_gem_dmabuf_vunmap +EXPORT_SYMBOL drivers/gpu/drm/drm 0x722e3577 drm_gem_create_mmap_offset +EXPORT_SYMBOL drivers/gpu/drm/drm 0x741267fb drm_syncobj_find_fence +EXPORT_SYMBOL drivers/gpu/drm/drm 0x742e664a drm_gem_object_lookup +EXPORT_SYMBOL drivers/gpu/drm/drm 0x7472b23e drm_syncobj_get_fd +EXPORT_SYMBOL drivers/gpu/drm/drm 0x74b14b4c drm_vma_offset_add +EXPORT_SYMBOL drivers/gpu/drm/drm 0x759c39f7 drm_gem_prime_handle_to_fd +EXPORT_SYMBOL drivers/gpu/drm/drm 0x76000b1f drm_atomic_get_new_private_obj_state +EXPORT_SYMBOL drivers/gpu/drm/drm 0x77255840 drm_gem_shmem_vunmap +EXPORT_SYMBOL drivers/gpu/drm/drm 0x77660a64 drm_i2c_encoder_destroy +EXPORT_SYMBOL drivers/gpu/drm/drm 0x7811a7a6 drm_framebuffer_cleanup +EXPORT_SYMBOL drivers/gpu/drm/drm 0x78658c56 drm_gem_create_mmap_offset_size +EXPORT_SYMBOL drivers/gpu/drm/drm 0x7923f9a8 drm_put_dev +EXPORT_SYMBOL drivers/gpu/drm/drm 0x7952a9bb drm_panel_init +EXPORT_SYMBOL drivers/gpu/drm/drm 0x798578b2 drm_read +EXPORT_SYMBOL drivers/gpu/drm/drm 0x7a1f7ee5 drm_print_regset32 +EXPORT_SYMBOL drivers/gpu/drm/drm 0x7a8843ac drm_atomic_state_default_release +EXPORT_SYMBOL drivers/gpu/drm/drm 0x7ade1623 drm_modeset_acquire_init +EXPORT_SYMBOL drivers/gpu/drm/drm 0x7ae81134 drm_i2c_encoder_detect +EXPORT_SYMBOL drivers/gpu/drm/drm 0x7b4860c9 drm_client_register +EXPORT_SYMBOL drivers/gpu/drm/drm 0x7c11e146 drm_plane_create_alpha_property +EXPORT_SYMBOL drivers/gpu/drm/drm 0x7d0110ad drm_modeset_drop_locks +EXPORT_SYMBOL drivers/gpu/drm/drm 0x7d5fdadc drm_connector_register +EXPORT_SYMBOL drivers/gpu/drm/drm 0x7e2c0b71 drm_agp_enable +EXPORT_SYMBOL drivers/gpu/drm/drm 0x7e8598d3 drm_atomic_set_fence_for_plane +EXPORT_SYMBOL drivers/gpu/drm/drm 0x7e9ad059 drm_state_dump +EXPORT_SYMBOL drivers/gpu/drm/drm 0x7ea3084b drm_client_dev_hotplug +EXPORT_SYMBOL drivers/gpu/drm/drm 0x7edc546f drm_mm_print +EXPORT_SYMBOL drivers/gpu/drm/drm 0x8108949d drm_mode_equal_no_clocks +EXPORT_SYMBOL drivers/gpu/drm/drm 0x81992424 drm_edid_header_is_valid +EXPORT_SYMBOL drivers/gpu/drm/drm 0x83eb5a70 drm_prime_sg_to_page_addr_arrays +EXPORT_SYMBOL drivers/gpu/drm/drm 0x83f562a2 drm_client_framebuffer_delete +EXPORT_SYMBOL drivers/gpu/drm/drm 0x842dd90c drm_flip_work_commit +EXPORT_SYMBOL drivers/gpu/drm/drm 0x84c2e5ff drm_gem_mmap +EXPORT_SYMBOL drivers/gpu/drm/drm 0x8563a554 drm_ht_remove +EXPORT_SYMBOL drivers/gpu/drm/drm 0x866cb73f drm_gem_dmabuf_export +EXPORT_SYMBOL drivers/gpu/drm/drm 0x87024e4c drm_hdmi_avi_infoframe_bars +EXPORT_SYMBOL drivers/gpu/drm/drm 0x87137677 drm_syncobj_replace_fence +EXPORT_SYMBOL drivers/gpu/drm/drm 0x871ab41a drm_rect_intersect +EXPORT_SYMBOL drivers/gpu/drm/drm 0x8725d839 drm_mode_config_cleanup +EXPORT_SYMBOL drivers/gpu/drm/drm 0x872cbb9d drm_mode_get_tile_group +EXPORT_SYMBOL drivers/gpu/drm/drm 0x875005af drm_ioctl_kernel +EXPORT_SYMBOL drivers/gpu/drm/drm 0x8779f48f drm_crtc_check_viewport +EXPORT_SYMBOL drivers/gpu/drm/drm 0x8786db52 drm_panel_attach +EXPORT_SYMBOL drivers/gpu/drm/drm 0x88d077df drm_panel_detach +EXPORT_SYMBOL drivers/gpu/drm/drm 0x893763a8 drm_bridge_add +EXPORT_SYMBOL drivers/gpu/drm/drm 0x89c3e9ca drm_syncobj_get_handle +EXPORT_SYMBOL drivers/gpu/drm/drm 0x89cebad6 drm_panel_remove +EXPORT_SYMBOL drivers/gpu/drm/drm 0x8a6696a5 drm_plane_init +EXPORT_SYMBOL drivers/gpu/drm/drm 0x8a92c53d drmm_kfree +EXPORT_SYMBOL drivers/gpu/drm/drm 0x8af3057d drm_atomic_add_encoder_bridges +EXPORT_SYMBOL drivers/gpu/drm/drm 0x8b023f5f drm_connector_unregister +EXPORT_SYMBOL drivers/gpu/drm/drm 0x8bd84694 drm_atomic_get_bridge_state +EXPORT_SYMBOL drivers/gpu/drm/drm 0x8c467635 drm_cma_gem_create_object_default_funcs +EXPORT_SYMBOL drivers/gpu/drm/drm 0x8c4fd37c drm_mode_set_name +EXPORT_SYMBOL drivers/gpu/drm/drm 0x8d8c40fc drm_bridge_attach +EXPORT_SYMBOL drivers/gpu/drm/drm 0x8f0d4a9a drm_gem_mmap_obj +EXPORT_SYMBOL drivers/gpu/drm/drm 0x8f399a59 drm_gem_prime_mmap +EXPORT_SYMBOL drivers/gpu/drm/drm 0x8fc07ff8 drm_hdmi_avi_infoframe_colorspace +EXPORT_SYMBOL drivers/gpu/drm/drm 0x8ffb7754 drm_i2c_encoder_mode_fixup +EXPORT_SYMBOL drivers/gpu/drm/drm 0x903ce055 drm_client_buffer_vmap +EXPORT_SYMBOL drivers/gpu/drm/drm 0x915eb8db drm_writeback_prepare_job +EXPORT_SYMBOL drivers/gpu/drm/drm 0x91716244 drm_gem_objects_lookup +EXPORT_SYMBOL drivers/gpu/drm/drm 0x91fec1cc drm_rect_calc_vscale +EXPORT_SYMBOL drivers/gpu/drm/drm 0x9213f5c3 drm_edid_to_speaker_allocation +EXPORT_SYMBOL drivers/gpu/drm/drm 0x92587ffd drm_panel_prepare +EXPORT_SYMBOL drivers/gpu/drm/drm 0x92b63293 drm_gem_prime_export +EXPORT_SYMBOL drivers/gpu/drm/drm 0x946e720d drm_gem_private_object_init +EXPORT_SYMBOL drivers/gpu/drm/drm 0x9496165b drm_connector_list_update +EXPORT_SYMBOL drivers/gpu/drm/drm 0x95dbc76d drm_ht_create +EXPORT_SYMBOL drivers/gpu/drm/drm 0x95f21c0c drm_client_init +EXPORT_SYMBOL drivers/gpu/drm/drm 0x979de6cb drm_client_modeset_probe +EXPORT_SYMBOL drivers/gpu/drm/drm 0x982698bd drm_mode_match +EXPORT_SYMBOL drivers/gpu/drm/drm 0x98796081 drm_connector_has_possible_encoder +EXPORT_SYMBOL drivers/gpu/drm/drm 0x98a74161 drm_mode_create_hdmi_colorspace_property +EXPORT_SYMBOL drivers/gpu/drm/drm 0x994178a0 drm_connector_attach_encoder +EXPORT_SYMBOL drivers/gpu/drm/drm 0x99fd20aa drm_rect_clip_scaled +EXPORT_SYMBOL drivers/gpu/drm/drm 0x9b8a53f5 drm_ht_just_insert_please +EXPORT_SYMBOL drivers/gpu/drm/drm 0x9c46c52b drm_mode_create_from_cmdline_mode +EXPORT_SYMBOL drivers/gpu/drm/drm 0x9d353935 drm_i2c_encoder_restore +EXPORT_SYMBOL drivers/gpu/drm/drm 0x9da419a4 drm_encoder_cleanup +EXPORT_SYMBOL drivers/gpu/drm/drm 0x9daee935 drm_gem_dmabuf_mmap +EXPORT_SYMBOL drivers/gpu/drm/drm 0x9de62d7a drm_dev_dbg +EXPORT_SYMBOL drivers/gpu/drm/drm 0x9ee4dee9 drm_client_rotation +EXPORT_SYMBOL drivers/gpu/drm/drm 0xa009e0ba drm_gem_map_attach +EXPORT_SYMBOL drivers/gpu/drm/drm 0xa0713087 drm_ht_find_item +EXPORT_SYMBOL drivers/gpu/drm/drm 0xa11bdff9 drm_gem_handle_delete +EXPORT_SYMBOL drivers/gpu/drm/drm 0xa1ab2afd drm_gem_dmabuf_release +EXPORT_SYMBOL drivers/gpu/drm/drm 0xa1cf31af drm_framebuffer_plane_height +EXPORT_SYMBOL drivers/gpu/drm/drm 0xa2ef9061 drm_plane_cleanup +EXPORT_SYMBOL drivers/gpu/drm/drm 0xa323422c drm_invalid_op +EXPORT_SYMBOL drivers/gpu/drm/drm 0xa39050a4 drm_atomic_add_affected_planes +EXPORT_SYMBOL drivers/gpu/drm/drm 0xa3e65650 drm_syncobj_add_point +EXPORT_SYMBOL drivers/gpu/drm/drm 0xa4427a14 drm_calc_timestamping_constants +EXPORT_SYMBOL drivers/gpu/drm/drm 0xa5266ee7 drm_crtc_vblank_waitqueue +EXPORT_SYMBOL drivers/gpu/drm/drm 0xa5945b5a drm_ioctl +EXPORT_SYMBOL drivers/gpu/drm/drm 0xa5acb1fa drm_atomic_get_crtc_state +EXPORT_SYMBOL drivers/gpu/drm/drm 0xa631c29c drm_gem_prime_import +EXPORT_SYMBOL drivers/gpu/drm/drm 0xa650042a drm_gem_dmabuf_vmap +EXPORT_SYMBOL drivers/gpu/drm/drm 0xa6bc86a9 drm_atomic_add_affected_connectors +EXPORT_SYMBOL drivers/gpu/drm/drm 0xa793cfe8 drm_client_modeset_commit_locked +EXPORT_SYMBOL drivers/gpu/drm/drm 0xa8ad5d01 drm_detect_hdmi_monitor +EXPORT_SYMBOL drivers/gpu/drm/drm 0xa91b0431 drm_gem_shmem_unpin +EXPORT_SYMBOL drivers/gpu/drm/drm 0xa9fc5d3b drm_mode_create_tile_group +EXPORT_SYMBOL drivers/gpu/drm/drm 0xaa27408a drm_bridge_chain_mode_set +EXPORT_SYMBOL drivers/gpu/drm/drm 0xaa90a123 drm_atomic_bridge_chain_post_disable +EXPORT_SYMBOL drivers/gpu/drm/drm 0xaaa4e14c drm_hdmi_avi_infoframe_from_display_mode +EXPORT_SYMBOL drivers/gpu/drm/drm 0xaac39ff3 __drm_printfn_info +EXPORT_SYMBOL drivers/gpu/drm/drm 0xad4e902b drm_color_ctm_s31_32_to_qm_n +EXPORT_SYMBOL drivers/gpu/drm/drm 0xad654aa8 drm_crtc_vblank_off +EXPORT_SYMBOL drivers/gpu/drm/drm 0xad84e701 drm_bridge_chain_mode_valid +EXPORT_SYMBOL drivers/gpu/drm/drm 0xadc87701 drm_property_blob_put +EXPORT_SYMBOL drivers/gpu/drm/drm 0xae277372 __drm_crtc_commit_free +EXPORT_SYMBOL drivers/gpu/drm/drm 0xafcff058 drm_atomic_bridge_chain_check +EXPORT_SYMBOL drivers/gpu/drm/drm 0xb03593bd drm_crtc_handle_vblank +EXPORT_SYMBOL drivers/gpu/drm/drm 0xb053adda drm_rect_rotate +EXPORT_SYMBOL drivers/gpu/drm/drm 0xb0602937 drm_mode_config_reset +EXPORT_SYMBOL drivers/gpu/drm/drm 0xb0b05ff5 drm_clflush_sg +EXPORT_SYMBOL drivers/gpu/drm/drm 0xb101411a drm_set_preferred_mode +EXPORT_SYMBOL drivers/gpu/drm/drm 0xb11ac7a7 __drm_err +EXPORT_SYMBOL drivers/gpu/drm/drm 0xb12794a9 drm_connector_list_iter_end +EXPORT_SYMBOL drivers/gpu/drm/drm 0xb1f21473 drm_prime_gem_destroy +EXPORT_SYMBOL drivers/gpu/drm/drm 0xb2535536 drm_i2c_encoder_init +EXPORT_SYMBOL drivers/gpu/drm/drm 0xb37a5297 drm_crtc_vblank_reset +EXPORT_SYMBOL drivers/gpu/drm/drm 0xb4032484 drm_mm_insert_node_in_range +EXPORT_SYMBOL drivers/gpu/drm/drm 0xb43e3dc2 drm_dev_init +EXPORT_SYMBOL drivers/gpu/drm/drm 0xb5891722 drm_connector_init +EXPORT_SYMBOL drivers/gpu/drm/drm 0xb6127243 drm_need_swiotlb +EXPORT_SYMBOL drivers/gpu/drm/drm 0xb6c02659 drmm_kmalloc +EXPORT_SYMBOL drivers/gpu/drm/drm 0xb765ce3b drm_vblank_init +EXPORT_SYMBOL drivers/gpu/drm/drm 0xb853833f drm_mode_validate_size +EXPORT_SYMBOL drivers/gpu/drm/drm 0xb881252f drm_mode_put_tile_group +EXPORT_SYMBOL drivers/gpu/drm/drm 0xb8bdb3f5 drm_puts +EXPORT_SYMBOL drivers/gpu/drm/drm 0xb9cad492 __drm_atomic_state_free +EXPORT_SYMBOL drivers/gpu/drm/drm 0xb9f56e22 drm_format_info_block_width +EXPORT_SYMBOL drivers/gpu/drm/drm 0xba130fba drm_crtc_vblank_get +EXPORT_SYMBOL drivers/gpu/drm/drm 0xba1a05cb drm_framebuffer_plane_width +EXPORT_SYMBOL drivers/gpu/drm/drm 0xbb33ee7b drm_default_rgb_quant_range +EXPORT_SYMBOL drivers/gpu/drm/drm 0xbb39b224 drm_dev_enter +EXPORT_SYMBOL drivers/gpu/drm/drm 0xbb5ad7b6 drm_atomic_get_plane_state +EXPORT_SYMBOL drivers/gpu/drm/drm 0xbbd3a760 drm_crtc_from_index +EXPORT_SYMBOL drivers/gpu/drm/drm 0xbd95b82f drm_plane_create_rotation_property +EXPORT_SYMBOL drivers/gpu/drm/drm 0xbe0f2408 drm_driver_legacy_fb_format +EXPORT_SYMBOL drivers/gpu/drm/drm 0xbe1b2378 drm_property_create_bool +EXPORT_SYMBOL drivers/gpu/drm/drm 0xbea3c77b drm_connector_set_tile_property +EXPORT_SYMBOL drivers/gpu/drm/drm 0xbf2bb6ff drm_ioctl_permit +EXPORT_SYMBOL drivers/gpu/drm/drm 0xbf31727d drm_gem_prime_fd_to_handle +EXPORT_SYMBOL drivers/gpu/drm/drm 0xbf510c8a drm_gem_object_put_unlocked +EXPORT_SYMBOL drivers/gpu/drm/drm 0xc0161dec drm_any_plane_has_format +EXPORT_SYMBOL drivers/gpu/drm/drm 0xc01f1aed drm_gem_shmem_madvise +EXPORT_SYMBOL drivers/gpu/drm/drm 0xc07a2726 drm_gem_shmem_get_pages +EXPORT_SYMBOL drivers/gpu/drm/drm 0xc1107b4a drm_writeback_connector_init +EXPORT_SYMBOL drivers/gpu/drm/drm 0xc1df2650 drm_connector_set_vrr_capable_property +EXPORT_SYMBOL drivers/gpu/drm/drm 0xc28c4e57 drm_client_framebuffer_create +EXPORT_SYMBOL drivers/gpu/drm/drm 0xc2c36138 drm_mode_is_420_only +EXPORT_SYMBOL drivers/gpu/drm/drm 0xc313abda drm_atomic_get_old_connector_for_encoder +EXPORT_SYMBOL drivers/gpu/drm/drm 0xc324efb9 drm_edid_to_sad +EXPORT_SYMBOL drivers/gpu/drm/drm 0xc43b4c86 drm_atomic_get_new_connector_for_encoder +EXPORT_SYMBOL drivers/gpu/drm/drm 0xc527abdd drm_atomic_set_crtc_for_connector +EXPORT_SYMBOL drivers/gpu/drm/drm 0xc58b8bf3 drm_atomic_bridge_chain_pre_enable +EXPORT_SYMBOL drivers/gpu/drm/drm 0xc5992401 __drm_puts_coredump +EXPORT_SYMBOL drivers/gpu/drm/drm 0xc6323239 drm_flip_work_cleanup +EXPORT_SYMBOL drivers/gpu/drm/drm 0xc7f0f027 drm_format_info_min_pitch +EXPORT_SYMBOL drivers/gpu/drm/drm 0xc829df08 drm_connector_attach_scaling_mode_property +EXPORT_SYMBOL drivers/gpu/drm/drm 0xc89cf5ba drm_connector_attach_tv_margin_properties +EXPORT_SYMBOL drivers/gpu/drm/drm 0xc8faed3b drm_gem_handle_create +EXPORT_SYMBOL drivers/gpu/drm/drm 0xc9a2b282 drm_atomic_bridge_chain_enable +EXPORT_SYMBOL drivers/gpu/drm/drm 0xcaea7755 drm_mode_duplicate +EXPORT_SYMBOL drivers/gpu/drm/drm 0xcb2340b8 drm_rect_debug_print +EXPORT_SYMBOL drivers/gpu/drm/drm 0xccbc2590 drm_gem_object_init +EXPORT_SYMBOL drivers/gpu/drm/drm 0xccd4ab83 drm_event_reserve_init_locked +EXPORT_SYMBOL drivers/gpu/drm/drm 0xcceeaba7 drm_mode_plane_set_obj_prop +EXPORT_SYMBOL drivers/gpu/drm/drm 0xcd521ff5 drm_i2c_encoder_commit +EXPORT_SYMBOL drivers/gpu/drm/drm 0xcf11a549 drm_flip_work_allocate_task +EXPORT_SYMBOL drivers/gpu/drm/drm 0xd0cf9383 drm_mode_create_aspect_ratio_property +EXPORT_SYMBOL drivers/gpu/drm/drm 0xd0d9a2a0 drm_connector_attach_vrr_capable_property +EXPORT_SYMBOL drivers/gpu/drm/drm 0xd0f6595b drm_gem_map_detach +EXPORT_SYMBOL drivers/gpu/drm/drm 0xd13f9985 drm_edid_block_valid +EXPORT_SYMBOL drivers/gpu/drm/drm 0xd1434302 drm_gem_shmem_purge_locked +EXPORT_SYMBOL drivers/gpu/drm/drm 0xd1b62bf1 drm_legacy_ioremap_wc +EXPORT_SYMBOL drivers/gpu/drm/drm 0xd20a658d drm_connector_set_panel_orientation_with_quirk +EXPORT_SYMBOL drivers/gpu/drm/drm 0xd23a836b drm_plane_create_color_properties +EXPORT_SYMBOL drivers/gpu/drm/drm 0xd25ade1a drm_atomic_get_private_obj_state +EXPORT_SYMBOL drivers/gpu/drm/drm 0xd30345a2 drm_writeback_signal_completion +EXPORT_SYMBOL drivers/gpu/drm/drm 0xd42eaf05 drm_bridge_chain_mode_fixup +EXPORT_SYMBOL drivers/gpu/drm/drm 0xd4a61e39 drm_property_replace_blob +EXPORT_SYMBOL drivers/gpu/drm/drm 0xd4bfbad5 drm_gem_dumb_destroy +EXPORT_SYMBOL drivers/gpu/drm/drm 0xd4e3bc7e drm_crtc_set_max_vblank_count +EXPORT_SYMBOL drivers/gpu/drm/drm 0xd5d2e47a drm_hdmi_avi_infoframe_quant_range +EXPORT_SYMBOL drivers/gpu/drm/drm 0xd5f5c00b drm_prime_pages_to_sg +EXPORT_SYMBOL drivers/gpu/drm/drm 0xd652b179 drm_debugfs_create_files +EXPORT_SYMBOL drivers/gpu/drm/drm 0xd6737bbe drm_mode_create_dvi_i_properties +EXPORT_SYMBOL drivers/gpu/drm/drm 0xd680a377 drm_gem_object_free +EXPORT_SYMBOL drivers/gpu/drm/drm 0xd7c5413b drm_universal_plane_init +EXPORT_SYMBOL drivers/gpu/drm/drm 0xd852aa11 drm_get_edid +EXPORT_SYMBOL drivers/gpu/drm/drm 0xd96b425a __drm_printfn_coredump +EXPORT_SYMBOL drivers/gpu/drm/drm 0xd9b48c14 drm_is_current_master +EXPORT_SYMBOL drivers/gpu/drm/drm 0xdb2c82b8 drm_i2c_encoder_save +EXPORT_SYMBOL drivers/gpu/drm/drm 0xdb390990 drm_dev_put +EXPORT_SYMBOL drivers/gpu/drm/drm 0xdd3339c0 drm_mode_object_get +EXPORT_SYMBOL drivers/gpu/drm/drm 0xddae035a drm_mode_validate_ycbcr420 +EXPORT_SYMBOL drivers/gpu/drm/drm 0xdebdb4a7 drm_release +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 0xe116d3a4 drm_vma_node_revoke +EXPORT_SYMBOL drivers/gpu/drm/drm 0xe2e8a92c drm_hdmi_infoframe_set_hdr_metadata +EXPORT_SYMBOL drivers/gpu/drm/drm 0xe330d47a drm_gem_shmem_pin +EXPORT_SYMBOL drivers/gpu/drm/drm 0xe39e939d drm_crtc_accurate_vblank_count +EXPORT_SYMBOL drivers/gpu/drm/drm 0xe5c01720 drm_atomic_commit +EXPORT_SYMBOL drivers/gpu/drm/drm 0xe668721c drm_crtc_vblank_count_and_time +EXPORT_SYMBOL drivers/gpu/drm/drm 0xe6847341 drm_gem_shmem_put_pages +EXPORT_SYMBOL drivers/gpu/drm/drm 0xe72c1970 drm_atomic_set_mode_prop_for_crtc +EXPORT_SYMBOL drivers/gpu/drm/drm 0xe7599f85 drm_gem_get_pages +EXPORT_SYMBOL drivers/gpu/drm/drm 0xe7e7f342 drm_connector_update_edid_property +EXPORT_SYMBOL drivers/gpu/drm/drm 0xe817eb01 __drm_printfn_err +EXPORT_SYMBOL drivers/gpu/drm/drm 0xe8758868 drm_atomic_state_default_clear +EXPORT_SYMBOL drivers/gpu/drm/drm 0xe8a034df drm_dev_exit +EXPORT_SYMBOL drivers/gpu/drm/drm 0xe8da7ff2 drm_atomic_check_only +EXPORT_SYMBOL drivers/gpu/drm/drm 0xeb911c04 drm_crtc_init_with_planes +EXPORT_SYMBOL drivers/gpu/drm/drm 0xeba40af7 __drmm_add_action_or_reset +EXPORT_SYMBOL drivers/gpu/drm/drm 0xebcf6fb1 drm_add_override_edid_modes +EXPORT_SYMBOL drivers/gpu/drm/drm 0xec12af74 __drm_dbg +EXPORT_SYMBOL drivers/gpu/drm/drm 0xec4357b2 drm_plane_force_disable +EXPORT_SYMBOL drivers/gpu/drm/drm 0xecb22a81 drm_atomic_get_old_bridge_state +EXPORT_SYMBOL drivers/gpu/drm/drm 0xee670bfc drm_connector_attach_content_type_property +EXPORT_SYMBOL drivers/gpu/drm/drm 0xeebf4e13 drm_connector_set_link_status_property +EXPORT_SYMBOL drivers/gpu/drm/drm 0xeed51a81 drm_dev_get +EXPORT_SYMBOL drivers/gpu/drm/drm 0xeef14d8c drm_format_info_block_height +EXPORT_SYMBOL drivers/gpu/drm/drm 0xeef1b8e7 drm_irq_install +EXPORT_SYMBOL drivers/gpu/drm/drm 0xeefe2525 drm_atomic_private_obj_fini +EXPORT_SYMBOL drivers/gpu/drm/drm 0xef08354d drm_mode_destroy +EXPORT_SYMBOL drivers/gpu/drm/drm 0xef5e6e0f drm_modeset_backoff +EXPORT_SYMBOL drivers/gpu/drm/drm 0xef8f3343 drm_atomic_nonblocking_commit +EXPORT_SYMBOL drivers/gpu/drm/drm 0xf02b17c1 drm_i2c_encoder_prepare +EXPORT_SYMBOL drivers/gpu/drm/drm 0xf0517d7a drm_mm_init +EXPORT_SYMBOL drivers/gpu/drm/drm 0xf11b122c drm_gem_put_pages +EXPORT_SYMBOL drivers/gpu/drm/drm 0xf133357b drm_bridge_chain_post_disable +EXPORT_SYMBOL drivers/gpu/drm/drm 0xf135a933 drm_modeset_acquire_fini +EXPORT_SYMBOL drivers/gpu/drm/drm 0xf1421d13 drm_mode_sort +EXPORT_SYMBOL drivers/gpu/drm/drm 0xf312f3c6 drm_sysfs_connector_status_event +EXPORT_SYMBOL drivers/gpu/drm/drm 0xf31894d9 drm_mode_crtc_set_gamma_size +EXPORT_SYMBOL drivers/gpu/drm/drm 0xf406e46a drm_get_connector_type_name +EXPORT_SYMBOL drivers/gpu/drm/drm 0xf4341935 drm_av_sync_delay +EXPORT_SYMBOL drivers/gpu/drm/drm 0xf4a6a212 __drmm_add_action +EXPORT_SYMBOL drivers/gpu/drm/drm 0xf5527d4b drm_gem_cma_prime_import_sg_table_vmap +EXPORT_SYMBOL drivers/gpu/drm/drm 0xf6646e56 drm_mode_create_content_type_property +EXPORT_SYMBOL drivers/gpu/drm/drm 0xf6c2c04e drm_gem_fence_array_add_implicit +EXPORT_SYMBOL drivers/gpu/drm/drm 0xf7a7b58e drm_connector_attach_edid_property +EXPORT_SYMBOL drivers/gpu/drm/drm 0xf826786c drm_format_info +EXPORT_SYMBOL drivers/gpu/drm/drm 0xf85ab0b2 drm_atomic_get_connector_state +EXPORT_SYMBOL drivers/gpu/drm/drm 0xfbd25a97 drm_bridge_chain_pre_enable +EXPORT_SYMBOL drivers/gpu/drm/drm 0xfc39877c drm_get_format_info +EXPORT_SYMBOL drivers/gpu/drm/drm 0xfca5dcfe drm_property_destroy +EXPORT_SYMBOL drivers/gpu/drm/drm 0xfd6a12b8 drm_plane_create_blend_mode_property +EXPORT_SYMBOL drivers/gpu/drm/drm 0xfdd1348e drm_legacy_ioremapfree +EXPORT_SYMBOL drivers/gpu/drm/drm 0xfe216463 drm_atomic_set_crtc_for_plane +EXPORT_SYMBOL drivers/gpu/drm/drm 0xfea832ba __devm_drm_dev_alloc +EXPORT_SYMBOL drivers/gpu/drm/drm 0xfed795af drm_mode_debug_printmodeline +EXPORT_SYMBOL drivers/gpu/drm/drm 0xff8de91d drm_print_bits +EXPORT_SYMBOL drivers/gpu/drm/drm 0xff90a292 drm_mode_copy +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x008bb349 drm_atomic_get_mst_topology_state +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x010e9fa5 drm_fb_helper_debug_leave +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x015beaa1 drm_atomic_helper_wait_for_vblanks +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x01a01a8a drm_fb_swab16 +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x025eb6c5 drm_helper_mode_fill_fb_struct +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x028f03ed drm_fb_xrgb8888_to_rgb565_dstclip +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x059d5aba drm_atomic_helper_set_config +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x06c49551 drm_dp_dsc_sink_line_buf_depth +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x09ca7785 drm_atomic_helper_disable_all +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x0b18b01e drm_simple_display_pipe_attach_bridge +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x0b43557e drm_fb_helper_setcmap +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x0c1e0ed5 drm_atomic_helper_cleanup_planes +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x0cdc15e2 drm_kms_helper_poll_enable +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x0d802810 drm_fb_helper_hotplug_event +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x0ed9451e drm_atomic_helper_wait_for_flip_done +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x0f0e83ee drm_panel_bridge_connector +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x13cba946 drm_atomic_helper_bridge_destroy_state +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x149297e5 drm_dp_mst_topology_mgr_destroy +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x14ad948e drm_dp_mst_reset_vcpi_slots +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x151bcdab drm_lspcon_set_mode +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x15e1c09a drm_dp_mst_atomic_check +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x18b752ba drm_atomic_helper_crtc_destroy_state +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x1ae5dfa9 drm_dp_mst_dump_topology +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x1b0091b7 drm_atomic_helper_bridge_duplicate_state +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x1d570a66 drm_scdc_write +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x1d835949 drm_scdc_get_scrambling_status +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x1dbc7b32 drm_dp_get_phy_test_pattern +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x1ece62bc __drm_atomic_helper_connector_destroy_state +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x1edae0d6 drm_helper_probe_detect +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x1f80be8a drm_atomic_helper_crtc_reset +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x1faa63ff drm_helper_crtc_in_use +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x2085c0a8 drm_crtc_helper_set_mode +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x208647b6 drm_dp_dpcd_read +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x217cf99a drm_atomic_helper_plane_reset +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x21a252d1 drm_fbdev_generic_setup +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x21a9dd52 drm_atomic_helper_plane_duplicate_state +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x21ec864a drm_fb_helper_sys_copyarea +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x21fde068 drm_fb_helper_fini +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x222d518a drm_dp_dpcd_write +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x23cd6e21 drm_scdc_read +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x261111cf drm_atomic_helper_commit_duplicated_state +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x26815dbc drm_dp_link_rate_to_bw_code +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x26bd4769 drm_fb_helper_lastclose +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x27204349 drm_gem_fb_create_handle +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x28463439 drm_primary_helper_destroy +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x28c0f55b drm_fb_helper_sys_imageblit +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x29b72e8f drm_dp_dual_mode_read +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x30a244fc drm_helper_disable_unused_functions +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x30d3fa4e __drm_atomic_helper_connector_duplicate_state +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x33f91288 drm_mode_config_helper_resume +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x34db7b72 drm_fb_helper_sys_read +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x363ecad2 __drm_atomic_helper_bridge_duplicate_state +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x37e71bb3 drm_atomic_helper_check_plane_state +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x387e9e94 drm_fb_helper_unregister_fbi +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x3979afa9 drm_atomic_helper_update_legacy_modeset_state +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x3991d79e __drm_atomic_helper_crtc_destroy_state +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x3a3a3634 drm_dp_atomic_release_vcpi_slots +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x3a8063f3 drm_dp_dsc_sink_supported_input_bpcs +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x3e12cd7b drm_lspcon_get_mode +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x3fe68bbc drm_atomic_helper_crtc_duplicate_state +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x4225bc73 drm_dp_mst_get_port_malloc +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x42b417f1 drm_atomic_helper_page_flip +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x430aaf58 drm_atomic_helper_update_plane +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x43232e8b drm_atomic_helper_commit_planes_on_crtc +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x467e3b20 drm_dp_mst_allocate_vcpi +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x479150ca drm_crtc_helper_set_config +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x48b62a57 drm_dp_link_train_channel_eq_delay +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x49af4903 drm_helper_hpd_irq_event +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x49b47cae drm_dp_mst_topology_mgr_resume +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x4a8bef26 drm_scdc_set_scrambling +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x4b680993 drm_atomic_helper_connector_reset +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x4d759919 drm_dp_mst_topology_mgr_init +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x4da08281 drm_atomic_helper_commit_hw_done +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x4e5829f5 drm_atomic_helper_fake_vblank +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x4e8a98b0 drm_atomic_helper_legacy_gamma_set +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x4f0bd8c2 drm_dp_mst_deallocate_vcpi +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x4f59be89 drm_fb_helper_alloc_fbi +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x4f7c0982 devm_drm_panel_bridge_add +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x5182ea5d __drm_atomic_helper_connector_state_reset +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x5407ae9e drm_dp_get_dual_mode_type_name +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x550c4021 drm_plane_enable_fb_damage_clips +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x57d0f52b drm_dp_mst_topology_mgr_set_mst +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x582f248e drm_dp_get_adjust_request_pre_emphasis +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x58d8fcaa drm_dsc_pps_payload_pack +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x59dc4ec8 drm_fb_memcpy +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x5a4734d1 drm_kms_helper_is_poll_worker +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x5ad41d7a drm_fb_helper_debug_enter +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x5c1ce299 __drm_atomic_helper_private_obj_duplicate_state +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x5e96cf0e drm_dp_mst_hpd_irq +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x5fe22555 drm_atomic_helper_check_plane_damage +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x60c44d45 drm_atomic_helper_check_modeset +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x61664962 drm_fb_helper_cfb_copyarea +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x627d8942 drm_fb_helper_set_suspend +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x62bd03ae drm_atomic_helper_bridge_propagate_bus_fmt +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x62fe5c17 drm_self_refresh_helper_update_avg_times +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x63787415 drm_dp_dpcd_read_link_status +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x63999598 drm_helper_connector_dpms +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x648d953b drm_dsc_dp_pps_header_init +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x6544b269 drm_dp_downstream_id +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x6615069e drm_dp_dsc_sink_max_slice_count +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x6741a98d drm_fb_helper_deferred_io +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x68a6308e drm_dp_mst_get_edid +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x69e422c0 __drm_atomic_helper_crtc_reset +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x6ad38b5a drm_atomic_helper_suspend +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x6b5c2b06 drm_atomic_helper_damage_iter_next +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x6b68769c drm_dp_send_power_updown_phy +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x6bc0f47b drm_simple_display_pipe_init +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x6c272fca drm_helper_probe_single_connector_modes +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x6d8b2436 drm_atomic_helper_commit_tail_rpm +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x6fb0ce56 drm_dp_mst_connector_late_register +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x72d863d8 drm_atomic_helper_async_commit +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x73011db0 drm_dp_bw_code_to_link_rate +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x76e86174 drm_fb_memcpy_dstclip +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x784c54b9 drm_fb_helper_prepare +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x788932e3 drm_atomic_helper_disable_planes_on_crtc +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x7a9d259e drm_atomic_helper_commit_planes +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x7ba360b5 drm_gem_fb_destroy +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x7cb04ead __drm_atomic_helper_plane_state_reset +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x7dcff517 drm_atomic_helper_wait_for_fences +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x7f511d02 drm_self_refresh_helper_init +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x7f59c720 __drm_atomic_helper_crtc_duplicate_state +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x809b12d1 drm_dp_mst_topology_mgr_suspend +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x8202d7e6 drm_dp_find_vcpi_slots +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x820e2b92 drm_atomic_helper_setup_commit +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x8249f442 drm_dp_set_phy_test_pattern +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x839317bc drm_dp_cec_unregister_connector +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x83b5749b drm_simple_encoder_init +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x87633b98 drm_helper_force_disable_all +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x87fd9e03 drm_atomic_helper_check_planes +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x888ccc20 drm_atomic_helper_commit_tail +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x890d3e1c drm_gem_fb_simple_display_pipe_prepare_fb +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x89361f08 drm_dp_dual_mode_get_tmds_output +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x894b1f57 drm_dp_get_adjust_request_post_cursor +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x8a68cf2f __drm_atomic_helper_plane_destroy_state +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x8ca2d9e4 drm_dp_calc_pbn_mode +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x8d701329 drm_dp_clock_recovery_ok +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x8eec7a46 drm_kms_helper_hotplug_event +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x8f4171ed __drm_atomic_helper_plane_duplicate_state +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x9213db42 drm_scdc_set_high_tmds_clock_ratio +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x92340566 drm_fb_xrgb8888_to_rgb565 +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x92d6455a drm_fb_xrgb8888_to_gray8 +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x9360eb10 drm_self_refresh_helper_alter_state +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x941eb74d drm_kms_helper_poll_disable +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x94c30f9f drm_fb_helper_cfb_fillrect +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x95c636ea drm_fb_helper_pan_display +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x9704a6df drm_dp_cec_irq +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x987ed49c drm_panel_bridge_add_typed +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x99e3ec5d drm_panel_bridge_remove +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x9e9073e5 drm_dp_mst_detect_port +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x9f97c7e6 __drm_atomic_helper_bridge_reset +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x9fc623fa drm_dp_mst_get_vcpi_slots +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x9ffaaa2d drm_dp_send_real_edid_checksum +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xa0e31aaf drm_panel_bridge_add +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xa1fefe6a drm_dp_psr_setup_time +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xa2b7e8ea drm_dp_check_act_status +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xa2f5c65b drm_dp_get_edid_quirks +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xa3be3241 drm_atomic_helper_page_flip_target +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xa5dc1dac drm_atomic_helper_connector_destroy_state +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xa6b55544 drm_fb_helper_ioctl +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xa6ff9496 drm_dp_link_train_clock_recovery_delay +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xaaf97594 drm_dp_aux_init +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xab0e7cd4 drm_fb_helper_modinit +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xabbf80a7 drm_dp_get_vc_payload_bw +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xac7b9c50 drm_dp_mst_atomic_enable_dsc +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xae1e8505 drm_fb_helper_set_suspend_unlocked +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xae3ed020 drm_atomic_helper_async_check +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xae41d3d4 __drm_atomic_helper_plane_reset +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xaf18e732 drm_atomic_helper_commit_cleanup_done +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xaff920de drm_dp_dual_mode_detect +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xb16c08b0 drm_atomic_helper_connector_tv_reset +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xb17905ba drm_helper_move_panel_connectors_to_head +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xb569797c drm_fb_helper_blank +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xb70d6e3a drm_atomic_helper_damage_iter_init +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xb7be2103 drm_dp_vsc_sdp_log +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xb80153ed drm_dp_cec_register_connector +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xb8738178 drm_atomic_helper_plane_destroy_state +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xb94ffd20 devm_drm_panel_bridge_add_typed +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xbb5504ea drm_fb_helper_sys_write +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xbb93f413 drm_atomic_helper_damage_merged +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xbbfd040c drm_dp_stop_crc +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xbf9b1aa7 drm_dp_dual_mode_set_tmds_output +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xc0d8275d drm_dp_aux_unregister +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xc0fd972a drm_atomic_helper_dirtyfb +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xc363134d drm_helper_resume_force_mode +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xc5874f84 drm_dp_cec_unset_edid +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xc5c99a79 drm_dp_get_adjust_request_voltage +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xc5e53c02 drm_mode_config_helper_suspend +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xc8bdf1db __drm_atomic_helper_connector_reset +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xca343257 drm_dp_mst_topology_state_funcs +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xcadeff3f drm_dp_atomic_find_vcpi_slots +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xcd6655be drm_atomic_helper_resume +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xce477f28 drm_helper_encoder_in_use +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xcfef09fe drm_atomic_helper_shutdown +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xd0fedfe5 drm_self_refresh_helper_cleanup +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xd2c241e4 drm_fb_helper_init +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xd449c0b7 drm_fb_helper_sys_fillrect +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xd4ceccc5 drm_fb_helper_fill_info +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xd5186ffb drm_dp_dual_mode_max_tmds_clock +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xd5b2db0b drm_atomic_helper_wait_for_dependencies +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xd5ee5e8b drm_fb_xrgb8888_to_rgb888_dstclip +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xd6efa30f drm_dp_start_crc +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xd6efe32d drm_atomic_helper_duplicate_state +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xd843319f drm_fb_helper_check_var +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xd944b033 drm_dp_dual_mode_write +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xdc0f7407 drm_dp_update_payload_part2 +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xdc4a623e drm_atomic_helper_swap_state +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xde2abbe4 drm_atomic_helper_commit_modeset_disables +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xdeeb6d90 drm_fb_helper_initial_config +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xe02abfbb drm_dp_downstream_max_bpc +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xe083d943 drm_dp_mst_dsc_aux_for_port +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xe17dee1c drm_dp_mst_put_port_malloc +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xe34948ab drm_atomic_helper_disable_plane +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xe3b2d4b7 __drm_atomic_helper_crtc_state_reset +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xe3eb5781 drm_atomic_helper_connector_duplicate_state +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xe95f2fce drm_kms_helper_poll_fini +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xe9667eae drm_dp_cec_set_edid +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xe9a830ec drm_fb_helper_cfb_imageblit +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xedcf81ce drm_dp_channel_eq_ok +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xef305858 drm_dp_downstream_debug +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xefafa942 drm_atomic_helper_prepare_planes +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xf1354e0e drm_atomic_helper_commit_modeset_enables +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xf17040e1 drm_atomic_helper_bridge_reset +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xf2178c9b drm_kms_helper_poll_init +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xf2329e89 drm_dp_downstream_max_clock +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xf28138c9 drm_dp_update_payload_part1 +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xf2c07eb5 drm_dp_mst_add_affected_dsc_crtcs +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xf389db7a drm_primary_helper_funcs +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xf4ab0750 drm_dp_aux_register +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xf6c1e33d drm_dp_mst_connector_early_unregister +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xf70a760a drm_dp_read_desc +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xf9c4522b drm_atomic_helper_commit +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xf9f9b005 drm_fb_helper_restore_fbdev_mode_unlocked +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xfd2790aa drm_crtc_init +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xfd2f6bd0 drm_fb_helper_output_poll_changed +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xfd316d97 drm_atomic_helper_check +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xfe0978b3 drm_fb_helper_set_par +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xfe12bcb9 drm_dsc_compute_rc_parameters +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xfef2b0d4 drm_dp_remote_aux_init +EXPORT_SYMBOL drivers/gpu/drm/drm_mipi_dbi 0x23379b31 mipi_dbi_buf_copy +EXPORT_SYMBOL drivers/gpu/drm/drm_mipi_dbi 0x2c083594 mipi_dbi_dev_init_with_formats +EXPORT_SYMBOL drivers/gpu/drm/drm_mipi_dbi 0x4d720e1c mipi_dbi_poweron_conditional_reset +EXPORT_SYMBOL drivers/gpu/drm/drm_mipi_dbi 0x523f8324 mipi_dbi_spi_init +EXPORT_SYMBOL drivers/gpu/drm/drm_mipi_dbi 0x52debc0e mipi_dbi_command_read +EXPORT_SYMBOL drivers/gpu/drm/drm_mipi_dbi 0x62f11c8d mipi_dbi_poweron_reset +EXPORT_SYMBOL drivers/gpu/drm/drm_mipi_dbi 0x6a0cae9f mipi_dbi_spi_cmd_max_speed +EXPORT_SYMBOL drivers/gpu/drm/drm_mipi_dbi 0x745e44b2 mipi_dbi_enable_flush +EXPORT_SYMBOL drivers/gpu/drm/drm_mipi_dbi 0x79176e2c mipi_dbi_display_is_on +EXPORT_SYMBOL drivers/gpu/drm/drm_mipi_dbi 0x8345f6b0 mipi_dbi_pipe_update +EXPORT_SYMBOL drivers/gpu/drm/drm_mipi_dbi 0x8e8140bc mipi_dbi_spi_transfer +EXPORT_SYMBOL drivers/gpu/drm/drm_mipi_dbi 0xa18c3d05 mipi_dbi_dev_init +EXPORT_SYMBOL drivers/gpu/drm/drm_mipi_dbi 0xca3395f0 mipi_dbi_pipe_disable +EXPORT_SYMBOL drivers/gpu/drm/drm_mipi_dbi 0xe615fed9 mipi_dbi_debugfs_init +EXPORT_SYMBOL drivers/gpu/drm/drm_mipi_dbi 0xe7158ace mipi_dbi_hw_reset +EXPORT_SYMBOL drivers/gpu/drm/drm_mipi_dbi 0xf5a8f889 mipi_dbi_command_buf +EXPORT_SYMBOL drivers/gpu/drm/drm_mipi_dbi 0xf8c0042a mipi_dbi_command_stackbuf +EXPORT_SYMBOL drivers/gpu/drm/drm_ttm_helper 0x400231b2 drm_gem_ttm_print_info +EXPORT_SYMBOL drivers/gpu/drm/drm_ttm_helper 0xa27dea46 drm_gem_ttm_mmap +EXPORT_SYMBOL drivers/gpu/drm/drm_vram_helper 0x011984ff drm_gem_vram_pin +EXPORT_SYMBOL drivers/gpu/drm/drm_vram_helper 0x1b2685f4 drm_vram_helper_alloc_mm +EXPORT_SYMBOL drivers/gpu/drm/drm_vram_helper 0x1c5bb5f9 drm_gem_vram_simple_display_pipe_prepare_fb +EXPORT_SYMBOL drivers/gpu/drm/drm_vram_helper 0x1e38a150 drm_gem_vram_put +EXPORT_SYMBOL drivers/gpu/drm/drm_vram_helper 0x1e55912a drm_gem_vram_kmap +EXPORT_SYMBOL drivers/gpu/drm/drm_vram_helper 0x2086d651 drm_gem_vram_vmap +EXPORT_SYMBOL drivers/gpu/drm/drm_vram_helper 0x287bddc1 drm_vram_mm_debugfs_init +EXPORT_SYMBOL drivers/gpu/drm/drm_vram_helper 0x2f6e4e95 drm_gem_vram_driver_dumb_create +EXPORT_SYMBOL drivers/gpu/drm/drm_vram_helper 0x46047c98 drm_gem_vram_simple_display_pipe_cleanup_fb +EXPORT_SYMBOL drivers/gpu/drm/drm_vram_helper 0x56bea259 drm_gem_vram_offset +EXPORT_SYMBOL drivers/gpu/drm/drm_vram_helper 0x57d144c2 drm_gem_vram_plane_helper_cleanup_fb +EXPORT_SYMBOL drivers/gpu/drm/drm_vram_helper 0x5cc8abd3 drm_gem_vram_plane_helper_prepare_fb +EXPORT_SYMBOL drivers/gpu/drm/drm_vram_helper 0x747fb0f4 drm_gem_vram_kunmap +EXPORT_SYMBOL drivers/gpu/drm/drm_vram_helper 0x82d9f981 drm_gem_vram_unpin +EXPORT_SYMBOL drivers/gpu/drm/drm_vram_helper 0x9c54be40 drm_vram_helper_mode_valid +EXPORT_SYMBOL drivers/gpu/drm/drm_vram_helper 0xa62305db drm_vram_helper_release_mm +EXPORT_SYMBOL drivers/gpu/drm/drm_vram_helper 0xa7abdde6 drm_gem_vram_driver_dumb_mmap_offset +EXPORT_SYMBOL drivers/gpu/drm/drm_vram_helper 0xab9ec5fc drm_gem_vram_mmap_offset +EXPORT_SYMBOL drivers/gpu/drm/drm_vram_helper 0xd5092024 drm_gem_vram_vunmap +EXPORT_SYMBOL drivers/gpu/drm/drm_vram_helper 0xd8f115fc drm_gem_vram_create +EXPORT_SYMBOL drivers/gpu/drm/drm_vram_helper 0xdc0c267b drm_gem_vram_fill_create_dumb +EXPORT_SYMBOL drivers/gpu/drm/scheduler/gpu-sched 0x02f4b424 drm_sched_entity_init +EXPORT_SYMBOL drivers/gpu/drm/scheduler/gpu-sched 0x049413a5 drm_sched_stop +EXPORT_SYMBOL drivers/gpu/drm/scheduler/gpu-sched 0x2bee5a46 drm_sched_resubmit_jobs +EXPORT_SYMBOL drivers/gpu/drm/scheduler/gpu-sched 0x459de5df drm_sched_pick_best +EXPORT_SYMBOL drivers/gpu/drm/scheduler/gpu-sched 0x5e0e9cbc to_drm_sched_fence +EXPORT_SYMBOL drivers/gpu/drm/scheduler/gpu-sched 0x63682c97 drm_sched_dependency_optimized +EXPORT_SYMBOL drivers/gpu/drm/scheduler/gpu-sched 0x67e95142 drm_sched_init +EXPORT_SYMBOL drivers/gpu/drm/scheduler/gpu-sched 0x6d8f7555 drm_sched_start +EXPORT_SYMBOL drivers/gpu/drm/scheduler/gpu-sched 0x87397a2a drm_sched_job_cleanup +EXPORT_SYMBOL drivers/gpu/drm/scheduler/gpu-sched 0x9438c5c9 drm_sched_entity_fini +EXPORT_SYMBOL drivers/gpu/drm/scheduler/gpu-sched 0x950c4d49 drm_sched_entity_destroy +EXPORT_SYMBOL drivers/gpu/drm/scheduler/gpu-sched 0x9b94d6cc drm_sched_increase_karma +EXPORT_SYMBOL drivers/gpu/drm/scheduler/gpu-sched 0xabe648f0 drm_sched_job_init +EXPORT_SYMBOL drivers/gpu/drm/scheduler/gpu-sched 0xc12e7f53 drm_sched_fault +EXPORT_SYMBOL drivers/gpu/drm/scheduler/gpu-sched 0xcb7d92e9 drm_sched_fini +EXPORT_SYMBOL drivers/gpu/drm/scheduler/gpu-sched 0xd7e43be5 drm_sched_suspend_timeout +EXPORT_SYMBOL drivers/gpu/drm/scheduler/gpu-sched 0xdb707803 drm_sched_entity_flush +EXPORT_SYMBOL drivers/gpu/drm/scheduler/gpu-sched 0xe26c8beb drm_sched_entity_set_priority +EXPORT_SYMBOL drivers/gpu/drm/scheduler/gpu-sched 0xf0faa946 drm_sched_entity_modify_sched +EXPORT_SYMBOL drivers/gpu/drm/scheduler/gpu-sched 0xf845aedf drm_sched_entity_push_job +EXPORT_SYMBOL drivers/gpu/drm/scheduler/gpu-sched 0xfee8e7c9 drm_sched_resume_timeout +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x0709a7fc ttm_tt_init +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x11ab117a ttm_dma_tt_init +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x163b89be ttm_agp_tt_populate +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x17d67d5b ttm_bo_pipeline_move +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x1c1b0585 ttm_io_prot +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x1ffca310 ttm_bo_mmap +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x2313dc2f ttm_bo_create +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x281229f0 ttm_bo_swapout_all +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x2b6ae8b8 ttm_bo_dma_acc_size +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x30a47782 ttm_populate_and_map_pages +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x334ef895 ttm_get_kernel_zone_memory_size +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x33a665eb ttm_tt_set_placement_caching +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x3a05875a ttm_bo_unmap_virtual +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x3eb0218c ttm_bo_lock_delayed_workqueue +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x423d026e ttm_agp_tt_unpopulate +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x4c5db1e6 ttm_bo_mmap_obj +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x4d158469 ttm_bo_vm_open +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x507be2f6 ttm_bo_mem_put +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x54dfe880 ttm_bo_move_memcpy +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x599a20db ttm_bo_move_accel_cleanup +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x5dfd34e6 ttm_dma_tt_fini +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x5e538dc3 ttm_page_alloc_debugfs +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x6031900a ttm_bo_kunmap +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x6052860c ttm_round_pot +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x618668e3 ttm_bo_init +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x675755a6 ttm_bo_move_ttm +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x69982125 ttm_pool_populate +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x6a89746f ttm_bo_mem_compat +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x6c61a5a1 ttm_bo_init_mm +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x6cdc05e4 ttm_bo_clean_mm +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x6fe5f918 ttm_bo_move_to_lru_tail +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x71398e65 ttm_mem_global_free +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x761cd36c ttm_bo_wait +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x7f20aaeb ttm_bo_unlock_delayed_workqueue +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x83a39d03 ttm_bo_bulk_move_lru_tail +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x88170520 ttm_bo_device_release +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x88f688cf ttm_bo_evict_mm +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x8d28c79a ttm_bo_swapout +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x9410e145 ttm_bo_put +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xa1ba2c54 ttm_bo_vm_fault_reserved +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xa8dd0ebf ttm_sg_tt_init +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xaa50db72 ttm_eu_backoff_reservation +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xacb60c5c ttm_bo_vm_access +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xad14899d ttm_mem_global_alloc +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xaf45c9e1 ttm_bo_vm_reserve +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xb59459cb ttm_tt_bind +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xb77ce429 ttm_bo_mem_space +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xb7c4a992 ttm_agp_tt_create +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xba15d0b2 ttm_bo_glob +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xba628b6e ttm_bo_device_init +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xc05b17fc ttm_bo_vm_fault +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xc0f3f08e ttm_bo_kmap +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xc35b73cf ttm_pool_unpopulate +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xc780d198 ttm_bo_manager_func +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xc80cb161 ttm_bo_validate +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xccc9cbd3 ttm_tt_fini +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xd13f3e17 ttm_mem_glob +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xd69608b6 ttm_bo_acc_size +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xd7b53a1e ttm_check_under_lowerlimit +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xdb7ab373 ttm_eu_fence_buffer_objects +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xdc904c07 ttm_bo_init_reserved +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xe2078b3c ttm_bo_eviction_valuable +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xe9334536 ttm_unmap_and_unpopulate_pages +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xec2a1039 ttm_bo_vm_close +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xfae61cf9 ttm_eu_reserve_buffers +EXPORT_SYMBOL drivers/gpu/drm/vmwgfx/vmwgfx 0x446c961c ttm_base_object_noref_lookup +EXPORT_SYMBOL drivers/hid/hid 0xb365749f hid_bus_type +EXPORT_SYMBOL drivers/hid/intel-ish-hid/intel-ishtp 0x0ab3b24c ishtp_get_pci_device +EXPORT_SYMBOL drivers/hid/intel-ish-hid/intel-ishtp 0x0e2a072e ishtp_fw_cl_by_uuid +EXPORT_SYMBOL drivers/hid/intel-ish-hid/intel-ishtp 0x10468140 ish_hw_reset +EXPORT_SYMBOL drivers/hid/intel-ish-hid/intel-ishtp 0x124469f6 ishtp_cl_io_rb_recycle +EXPORT_SYMBOL drivers/hid/intel-ish-hid/intel-ishtp 0x21e64069 ishtp_get_device +EXPORT_SYMBOL drivers/hid/intel-ish-hid/intel-ishtp 0x2321f188 ishtp_get_client_data +EXPORT_SYMBOL drivers/hid/intel-ish-hid/intel-ishtp 0x260b2074 ishtp_register_event_cb +EXPORT_SYMBOL drivers/hid/intel-ish-hid/intel-ishtp 0x2ad4b508 ishtp_cl_disconnect +EXPORT_SYMBOL drivers/hid/intel-ish-hid/intel-ishtp 0x3425bde7 ishtp_cl_set_fw_client_id +EXPORT_SYMBOL drivers/hid/intel-ish-hid/intel-ishtp 0x3b46f2a1 ishtp_get_ishtp_device +EXPORT_SYMBOL drivers/hid/intel-ish-hid/intel-ishtp 0x3e8428c5 ishtp_cl_get_tx_free_rings +EXPORT_SYMBOL drivers/hid/intel-ish-hid/intel-ishtp 0x47da5794 ishtp_device_init +EXPORT_SYMBOL drivers/hid/intel-ish-hid/intel-ishtp 0x5a9f95b3 ishtp_fw_cl_get_client +EXPORT_SYMBOL drivers/hid/intel-ish-hid/intel-ishtp 0x5b6ad4bf ishtp_cl_tx_empty +EXPORT_SYMBOL drivers/hid/intel-ish-hid/intel-ishtp 0x5cbce25b ishtp_send_resume +EXPORT_SYMBOL drivers/hid/intel-ish-hid/intel-ishtp 0x5f9b0501 ishtp_get_fw_client_id +EXPORT_SYMBOL drivers/hid/intel-ish-hid/intel-ishtp 0x68e4dfd7 ishtp_cl_unlink +EXPORT_SYMBOL drivers/hid/intel-ish-hid/intel-ishtp 0x6a52f1e2 ishtp_start +EXPORT_SYMBOL drivers/hid/intel-ish-hid/intel-ishtp 0x6e996c5d ishtp_set_client_data +EXPORT_SYMBOL drivers/hid/intel-ish-hid/intel-ishtp 0x7312193a ishtp_get_drvdata +EXPORT_SYMBOL drivers/hid/intel-ish-hid/intel-ishtp 0x7f46f8f3 ishtp_cl_free +EXPORT_SYMBOL drivers/hid/intel-ish-hid/intel-ishtp 0x800c27c4 ishtp_reset_compl_handler +EXPORT_SYMBOL drivers/hid/intel-ish-hid/intel-ishtp 0x8901e681 ishtp_cl_driver_unregister +EXPORT_SYMBOL drivers/hid/intel-ish-hid/intel-ishtp 0x89cd73d3 ishtp_cl_send +EXPORT_SYMBOL drivers/hid/intel-ish-hid/intel-ishtp 0x952729e1 ishtp_cl_connect +EXPORT_SYMBOL drivers/hid/intel-ish-hid/intel-ishtp 0x96d97298 ishtp_cl_get_tx_free_buffer_size +EXPORT_SYMBOL drivers/hid/intel-ish-hid/intel-ishtp 0x9e054e37 ishtp_cl_allocate +EXPORT_SYMBOL drivers/hid/intel-ish-hid/intel-ishtp 0xace5d080 ishtp_put_device +EXPORT_SYMBOL drivers/hid/intel-ish-hid/intel-ishtp 0xadfbf963 ishtp_cl_link +EXPORT_SYMBOL drivers/hid/intel-ish-hid/intel-ishtp 0xb6212d0f ishtp_send_suspend +EXPORT_SYMBOL drivers/hid/intel-ish-hid/intel-ishtp 0xbcc26eb7 ishtp_trace_callback +EXPORT_SYMBOL drivers/hid/intel-ish-hid/intel-ishtp 0xc41b29ac ishtp_cl_rx_get_rb +EXPORT_SYMBOL drivers/hid/intel-ish-hid/intel-ishtp 0xcaa2fc8f ishtp_bus_remove_all_clients +EXPORT_SYMBOL drivers/hid/intel-ish-hid/intel-ishtp 0xd2a201b0 ishtp_reset_handler +EXPORT_SYMBOL drivers/hid/intel-ish-hid/intel-ishtp 0xd6fc3de2 ishtp_dev_to_cl_device +EXPORT_SYMBOL drivers/hid/intel-ish-hid/intel-ishtp 0xdcb0af9f ishtp_cl_flush_queues +EXPORT_SYMBOL drivers/hid/intel-ish-hid/intel-ishtp 0xe28244c8 ishtp_set_tx_ring_size +EXPORT_SYMBOL drivers/hid/intel-ish-hid/intel-ishtp 0xe4e0593a ishtp_set_drvdata +EXPORT_SYMBOL drivers/hid/intel-ish-hid/intel-ishtp 0xe81ab38e ishtp_device +EXPORT_SYMBOL drivers/hid/intel-ish-hid/intel-ishtp 0xf06ab01f ishtp_cl_driver_register +EXPORT_SYMBOL drivers/hid/intel-ish-hid/intel-ishtp 0xf4bc538d ishtp_recv +EXPORT_SYMBOL drivers/hid/intel-ish-hid/intel-ishtp 0xfadc1a24 ishtp_set_connection_state +EXPORT_SYMBOL drivers/hid/intel-ish-hid/intel-ishtp 0xfb01896b ishtp_set_rx_ring_size +EXPORT_SYMBOL drivers/hv/hv_vmbus 0x54126264 vmbus_sendpacket +EXPORT_SYMBOL drivers/hv/hv_vmbus 0x6d4d76bf vmbus_recvpacket +EXPORT_SYMBOL drivers/hwmon/hwmon-vid 0x2f9e7f8e vid_which_vrm +EXPORT_SYMBOL drivers/hwmon/hwmon-vid 0x446615bd vid_from_reg +EXPORT_SYMBOL drivers/hwmon/sch56xx-common 0x01568393 sch56xx_read_virtual_reg +EXPORT_SYMBOL drivers/hwmon/sch56xx-common 0x34257f35 sch56xx_watchdog_unregister +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/hwmon/sch56xx-common 0xd271ffbe sch56xx_watchdog_register +EXPORT_SYMBOL drivers/i2c/algos/i2c-algo-bit 0x06a13d1f i2c_bit_add_bus +EXPORT_SYMBOL drivers/i2c/algos/i2c-algo-bit 0x961567e0 i2c_bit_algo +EXPORT_SYMBOL drivers/i2c/algos/i2c-algo-bit 0xd21a7d91 i2c_bit_add_numbered_bus +EXPORT_SYMBOL drivers/i2c/algos/i2c-algo-pca 0x0f1f542f i2c_pca_add_bus +EXPORT_SYMBOL drivers/i2c/algos/i2c-algo-pca 0x64ca63e6 i2c_pca_add_numbered_bus +EXPORT_SYMBOL drivers/i2c/busses/i2c-amd756 0xbb9debf9 amd756_smbus +EXPORT_SYMBOL drivers/iio/accel/bma400_core 0x4dc501ac bma400_remove +EXPORT_SYMBOL drivers/iio/accel/bma400_core 0x4f21022d bma400_regmap_config +EXPORT_SYMBOL drivers/iio/accel/bma400_core 0xb252307d bma400_probe +EXPORT_SYMBOL drivers/iio/accel/kxsd9 0x46edf2a7 kxsd9_common_probe +EXPORT_SYMBOL drivers/iio/accel/kxsd9 0xcbb09e6e kxsd9_dev_pm_ops +EXPORT_SYMBOL drivers/iio/accel/kxsd9 0xef54eb08 kxsd9_common_remove +EXPORT_SYMBOL drivers/iio/accel/mma9551_core 0x09c4206c mma9551_read_status_word +EXPORT_SYMBOL drivers/iio/accel/mma9551_core 0x1ed0cf16 mma9551_read_config_byte +EXPORT_SYMBOL drivers/iio/accel/mma9551_core 0x32f56435 mma9551_read_version +EXPORT_SYMBOL drivers/iio/accel/mma9551_core 0x39e587b9 mma9551_set_power_state +EXPORT_SYMBOL drivers/iio/accel/mma9551_core 0x41ef446c mma9551_read_accel_scale +EXPORT_SYMBOL drivers/iio/accel/mma9551_core 0x51b4664c mma9551_update_config_bits +EXPORT_SYMBOL drivers/iio/accel/mma9551_core 0x522cb445 mma9551_write_config_words +EXPORT_SYMBOL drivers/iio/accel/mma9551_core 0x75f03f09 mma9551_read_accel_chan +EXPORT_SYMBOL drivers/iio/accel/mma9551_core 0x8132a006 mma9551_read_config_word +EXPORT_SYMBOL drivers/iio/accel/mma9551_core 0x952cd0ef mma9551_read_config_words +EXPORT_SYMBOL drivers/iio/accel/mma9551_core 0xa0b139dc mma9551_write_config_word +EXPORT_SYMBOL drivers/iio/accel/mma9551_core 0xbcd7fe96 mma9551_sleep +EXPORT_SYMBOL drivers/iio/accel/mma9551_core 0xbe609f7b mma9551_write_config_byte +EXPORT_SYMBOL drivers/iio/accel/mma9551_core 0xc18e4f02 mma9551_read_status_words +EXPORT_SYMBOL drivers/iio/accel/mma9551_core 0xc8e91258 mma9551_app_reset +EXPORT_SYMBOL drivers/iio/accel/mma9551_core 0xd7f74875 mma9551_set_device_state +EXPORT_SYMBOL drivers/iio/accel/mma9551_core 0xe00a43ce mma9551_read_status_byte +EXPORT_SYMBOL drivers/iio/accel/mma9551_core 0xe0cf803c mma9551_gpio_config +EXPORT_SYMBOL drivers/iio/accel/st_accel 0x80371383 st_accel_common_probe +EXPORT_SYMBOL drivers/iio/accel/st_accel 0x8e4c69ff st_accel_get_settings +EXPORT_SYMBOL drivers/iio/accel/st_accel 0xf15400ab st_accel_common_remove +EXPORT_SYMBOL drivers/iio/adc/qcom-vadc-common 0x70e6eca1 qcom_vadc_decimation_from_dt +EXPORT_SYMBOL drivers/iio/adc/qcom-vadc-common 0xcae36995 qcom_vadc_scale +EXPORT_SYMBOL drivers/iio/adc/qcom-vadc-common 0xf253ae31 qcom_adc5_hw_scale +EXPORT_SYMBOL drivers/iio/buffer/industrialio-buffer-dmaengine 0xbe0a9845 iio_dmaengine_buffer_alloc +EXPORT_SYMBOL drivers/iio/buffer/industrialio-triggered-buffer 0xbd8d2d48 iio_triggered_buffer_setup +EXPORT_SYMBOL drivers/iio/buffer/industrialio-triggered-buffer 0xfe44525b iio_triggered_buffer_cleanup +EXPORT_SYMBOL drivers/iio/buffer/kfifo_buf 0x118e55ed iio_kfifo_allocate +EXPORT_SYMBOL drivers/iio/buffer/kfifo_buf 0x7b1c29b3 iio_kfifo_free +EXPORT_SYMBOL drivers/iio/buffer/kfifo_buf 0xdde74f72 devm_iio_kfifo_allocate +EXPORT_SYMBOL drivers/iio/chemical/bme680_core 0xf5f88dd2 bme680_regmap_config +EXPORT_SYMBOL drivers/iio/common/hid-sensors/hid-sensor-iio-common 0x1dddf2af hid_sensor_convert_timestamp +EXPORT_SYMBOL drivers/iio/common/hid-sensors/hid-sensor-iio-common 0x2bc63427 hid_sensor_read_raw_hyst_value +EXPORT_SYMBOL drivers/iio/common/hid-sensors/hid-sensor-iio-common 0x40e8a5d1 hid_sensor_set_report_latency +EXPORT_SYMBOL drivers/iio/common/hid-sensors/hid-sensor-iio-common 0x746ac2b8 hid_sensor_get_report_latency +EXPORT_SYMBOL drivers/iio/common/hid-sensors/hid-sensor-iio-common 0x7f7621ec hid_sensor_format_scale +EXPORT_SYMBOL drivers/iio/common/hid-sensors/hid-sensor-iio-common 0x8ded01c2 hid_sensor_read_samp_freq_value +EXPORT_SYMBOL drivers/iio/common/hid-sensors/hid-sensor-iio-common 0x904f91e3 hid_sensor_parse_common_attributes +EXPORT_SYMBOL drivers/iio/common/hid-sensors/hid-sensor-iio-common 0x93e26a99 hid_sensor_read_poll_value +EXPORT_SYMBOL drivers/iio/common/hid-sensors/hid-sensor-iio-common 0xb85e32c7 hid_sensor_write_raw_hyst_value +EXPORT_SYMBOL drivers/iio/common/hid-sensors/hid-sensor-iio-common 0xba743de2 hid_sensor_batch_mode_supported +EXPORT_SYMBOL drivers/iio/common/hid-sensors/hid-sensor-iio-common 0xfa9bdd4e hid_sensor_write_samp_freq_value +EXPORT_SYMBOL drivers/iio/common/hid-sensors/hid-sensor-trigger 0x50f7b29e hid_sensor_pm_ops +EXPORT_SYMBOL drivers/iio/common/hid-sensors/hid-sensor-trigger 0xa4899fe9 hid_sensor_power_state +EXPORT_SYMBOL drivers/iio/common/hid-sensors/hid-sensor-trigger 0xe4325989 hid_sensor_setup_trigger +EXPORT_SYMBOL drivers/iio/common/hid-sensors/hid-sensor-trigger 0xeb661a93 hid_sensor_remove_trigger +EXPORT_SYMBOL drivers/iio/common/ms_sensors/ms_sensors_i2c 0x045688dd ms_sensors_read_prom_word +EXPORT_SYMBOL drivers/iio/common/ms_sensors/ms_sensors_i2c 0x13e288a1 ms_sensors_ht_read_humidity +EXPORT_SYMBOL drivers/iio/common/ms_sensors/ms_sensors_i2c 0x1e1bda1a ms_sensors_read_temp_and_pressure +EXPORT_SYMBOL drivers/iio/common/ms_sensors/ms_sensors_i2c 0x23d13631 ms_sensors_write_heater +EXPORT_SYMBOL drivers/iio/common/ms_sensors/ms_sensors_i2c 0x2d2f5cd5 ms_sensors_reset +EXPORT_SYMBOL drivers/iio/common/ms_sensors/ms_sensors_i2c 0x42b6a050 ms_sensors_convert_and_read +EXPORT_SYMBOL drivers/iio/common/ms_sensors/ms_sensors_i2c 0x4a7748db ms_sensors_read_serial +EXPORT_SYMBOL drivers/iio/common/ms_sensors/ms_sensors_i2c 0x5f2556af ms_sensors_tp_read_prom +EXPORT_SYMBOL drivers/iio/common/ms_sensors/ms_sensors_i2c 0x720b9a4e ms_sensors_show_heater +EXPORT_SYMBOL drivers/iio/common/ms_sensors/ms_sensors_i2c 0xc92be48a ms_sensors_write_resolution +EXPORT_SYMBOL drivers/iio/common/ms_sensors/ms_sensors_i2c 0xd7eb08b1 ms_sensors_show_battery_low +EXPORT_SYMBOL drivers/iio/common/ms_sensors/ms_sensors_i2c 0xdb3065a1 ms_sensors_ht_read_temperature +EXPORT_SYMBOL drivers/iio/common/ssp_sensors/sensorhub 0x243e6833 ssp_change_delay +EXPORT_SYMBOL drivers/iio/common/ssp_sensors/sensorhub 0x571de9d9 ssp_disable_sensor +EXPORT_SYMBOL drivers/iio/common/ssp_sensors/sensorhub 0x68569601 ssp_get_sensor_delay +EXPORT_SYMBOL drivers/iio/common/ssp_sensors/sensorhub 0xcf315833 ssp_enable_sensor +EXPORT_SYMBOL drivers/iio/common/ssp_sensors/sensorhub 0xe0307adc ssp_register_consumer +EXPORT_SYMBOL drivers/iio/common/ssp_sensors/ssp_iio 0x220c4f94 ssp_common_process_data +EXPORT_SYMBOL drivers/iio/common/ssp_sensors/ssp_iio 0xe7c24c7b ssp_common_buffer_postdisable +EXPORT_SYMBOL drivers/iio/common/ssp_sensors/ssp_iio 0xf15ccc29 ssp_common_buffer_postenable +EXPORT_SYMBOL drivers/iio/common/st_sensors/st_sensors 0x074d7047 st_sensors_trigger_handler +EXPORT_SYMBOL drivers/iio/common/st_sensors/st_sensors 0x12106896 st_sensors_init_sensor +EXPORT_SYMBOL drivers/iio/common/st_sensors/st_sensors 0x1225c3d7 st_sensors_power_enable +EXPORT_SYMBOL drivers/iio/common/st_sensors/st_sensors 0x226a64ee st_sensors_validate_device +EXPORT_SYMBOL drivers/iio/common/st_sensors/st_sensors 0x2830fc9d st_sensors_dev_name_probe +EXPORT_SYMBOL drivers/iio/common/st_sensors/st_sensors 0x3f8e90aa st_sensors_set_enable +EXPORT_SYMBOL drivers/iio/common/st_sensors/st_sensors 0x4b787b9f st_sensors_debugfs_reg_access +EXPORT_SYMBOL drivers/iio/common/st_sensors/st_sensors 0x5463928c st_sensors_set_fullscale_by_gain +EXPORT_SYMBOL drivers/iio/common/st_sensors/st_sensors 0x5a353f58 st_sensors_set_odr +EXPORT_SYMBOL drivers/iio/common/st_sensors/st_sensors 0x7e1f4bb1 st_sensors_set_dataready_irq +EXPORT_SYMBOL drivers/iio/common/st_sensors/st_sensors 0x7f042876 st_sensors_read_info_raw +EXPORT_SYMBOL drivers/iio/common/st_sensors/st_sensors 0x8a26e019 st_sensors_allocate_trigger +EXPORT_SYMBOL drivers/iio/common/st_sensors/st_sensors 0x8eead08a st_sensors_sysfs_sampling_frequency_avail +EXPORT_SYMBOL drivers/iio/common/st_sensors/st_sensors 0x9f82b336 st_sensors_get_settings_index +EXPORT_SYMBOL drivers/iio/common/st_sensors/st_sensors 0xa17a83b3 st_sensors_sysfs_scale_avail +EXPORT_SYMBOL drivers/iio/common/st_sensors/st_sensors 0xba76cfe9 st_sensors_set_axis_enable +EXPORT_SYMBOL drivers/iio/common/st_sensors/st_sensors 0xc542a713 st_sensors_deallocate_trigger +EXPORT_SYMBOL drivers/iio/common/st_sensors/st_sensors 0xdb4d6973 st_sensors_power_disable +EXPORT_SYMBOL drivers/iio/common/st_sensors/st_sensors 0xe95faeec st_sensors_verify_id +EXPORT_SYMBOL drivers/iio/common/st_sensors/st_sensors_i2c 0x768be167 st_sensors_i2c_configure +EXPORT_SYMBOL drivers/iio/common/st_sensors/st_sensors_spi 0x3bd31091 st_sensors_spi_configure +EXPORT_SYMBOL drivers/iio/gyro/mpu3050 0x177c63ce mpu3050_dev_pm_ops +EXPORT_SYMBOL drivers/iio/gyro/mpu3050 0x8fda7981 mpu3050_common_probe +EXPORT_SYMBOL drivers/iio/gyro/mpu3050 0xc06399f5 mpu3050_common_remove +EXPORT_SYMBOL drivers/iio/gyro/st_gyro 0x37538433 st_gyro_get_settings +EXPORT_SYMBOL drivers/iio/gyro/st_gyro 0x7a210056 st_gyro_common_probe +EXPORT_SYMBOL drivers/iio/gyro/st_gyro 0xffaf4e26 st_gyro_common_remove +EXPORT_SYMBOL drivers/iio/humidity/hts221 0xc7046334 hts221_pm_ops +EXPORT_SYMBOL drivers/iio/humidity/hts221 0xe78a84f7 hts221_probe +EXPORT_SYMBOL drivers/iio/imu/adis_lib 0x1246fe73 adis_debugfs_reg_access +EXPORT_SYMBOL drivers/iio/imu/adis_lib 0x6384bd7d adis_enable_irq +EXPORT_SYMBOL drivers/iio/imu/bmi160/bmi160_core 0xbc506ebf bmi160_regmap_config +EXPORT_SYMBOL drivers/iio/imu/bmi160/bmi160_core 0xca19cfae bmi160_enable_irq +EXPORT_SYMBOL drivers/iio/imu/fxos8700_core 0x7cad686e fxos8700_regmap_config +EXPORT_SYMBOL drivers/iio/imu/st_lsm6dsx/st_lsm6dsx 0x0b3fa65f st_lsm6dsx_probe +EXPORT_SYMBOL drivers/iio/imu/st_lsm6dsx/st_lsm6dsx 0x2069e353 st_lsm6dsx_pm_ops +EXPORT_SYMBOL drivers/iio/industrialio 0x07dedcdf iio_trigger_free +EXPORT_SYMBOL drivers/iio/industrialio 0x0b84a272 __iio_device_register +EXPORT_SYMBOL drivers/iio/industrialio 0x13013ba0 iio_read_mount_matrix +EXPORT_SYMBOL drivers/iio/industrialio 0x1d8d5230 iio_device_alloc +EXPORT_SYMBOL drivers/iio/industrialio 0x237f6051 iio_get_time_res +EXPORT_SYMBOL drivers/iio/industrialio 0x274986ea iio_read_const_attr +EXPORT_SYMBOL drivers/iio/industrialio 0x2c835083 iio_trigger_alloc +EXPORT_SYMBOL drivers/iio/industrialio 0x2d6bcdcb iio_trigger_generic_data_rdy_poll +EXPORT_SYMBOL drivers/iio/industrialio 0x52057295 iio_trigger_using_own +EXPORT_SYMBOL drivers/iio/industrialio 0x5db0388e iio_buffer_init +EXPORT_SYMBOL drivers/iio/industrialio 0x6152881a iio_trigger_poll_chained +EXPORT_SYMBOL drivers/iio/industrialio 0x76768e55 iio_trigger_set_immutable +EXPORT_SYMBOL drivers/iio/industrialio 0x7b10e6be iio_get_time_ns +EXPORT_SYMBOL drivers/iio/industrialio 0x8e0a369c iio_device_free +EXPORT_SYMBOL drivers/iio/industrialio 0x9432a332 iio_trigger_validate_own_device +EXPORT_SYMBOL drivers/iio/industrialio 0xb0ca9b3c iio_device_unregister +EXPORT_SYMBOL drivers/iio/industrialio 0xb43087aa __iio_trigger_register +EXPORT_SYMBOL drivers/iio/industrialio 0xba23d82d iio_trigger_unregister +EXPORT_SYMBOL drivers/iio/industrialio 0xdbce2c52 iio_bus_type +EXPORT_SYMBOL drivers/iio/industrialio 0xded40e46 iio_trigger_notify_done +EXPORT_SYMBOL drivers/iio/industrialio 0xdf64ed2d iio_push_event +EXPORT_SYMBOL drivers/iio/industrialio 0xdf76bbeb iio_pollfunc_store_time +EXPORT_SYMBOL drivers/iio/industrialio 0xe8dfe1a7 iio_triggered_buffer_postenable +EXPORT_SYMBOL drivers/iio/industrialio 0xe992819b iio_trigger_poll +EXPORT_SYMBOL drivers/iio/industrialio 0xf1744700 iio_device_set_clock +EXPORT_SYMBOL drivers/iio/industrialio 0xf2024aa4 iio_triggered_buffer_predisable +EXPORT_SYMBOL drivers/iio/industrialio-configfs 0x9259ab3c iio_configfs_subsys +EXPORT_SYMBOL drivers/iio/industrialio-sw-device 0x295caec4 iio_register_sw_device_type +EXPORT_SYMBOL drivers/iio/industrialio-sw-device 0x79dae209 iio_sw_device_create +EXPORT_SYMBOL drivers/iio/industrialio-sw-device 0x7af1255c iio_sw_device_destroy +EXPORT_SYMBOL drivers/iio/industrialio-sw-device 0x8f0b3462 iio_unregister_sw_device_type +EXPORT_SYMBOL drivers/iio/industrialio-sw-trigger 0x4c06cc32 iio_sw_trigger_destroy +EXPORT_SYMBOL drivers/iio/industrialio-sw-trigger 0x676b853b iio_unregister_sw_trigger_type +EXPORT_SYMBOL drivers/iio/industrialio-sw-trigger 0x97f787f0 iio_sw_trigger_create +EXPORT_SYMBOL drivers/iio/industrialio-sw-trigger 0xc3e4779c iio_register_sw_trigger_type +EXPORT_SYMBOL drivers/iio/industrialio-triggered-event 0x2b73c29e iio_triggered_event_cleanup +EXPORT_SYMBOL drivers/iio/industrialio-triggered-event 0x684297ab iio_triggered_event_setup +EXPORT_SYMBOL drivers/iio/light/st_uvis25_core 0xd6418904 st_uvis25_probe +EXPORT_SYMBOL drivers/iio/light/st_uvis25_core 0xf1ad75e4 st_uvis25_pm_ops +EXPORT_SYMBOL drivers/iio/magnetometer/bmc150_magn 0x442c2a41 bmc150_magn_regmap_config +EXPORT_SYMBOL drivers/iio/magnetometer/bmc150_magn 0x4c74d50d bmc150_magn_probe +EXPORT_SYMBOL drivers/iio/magnetometer/bmc150_magn 0x8b83695d bmc150_magn_remove +EXPORT_SYMBOL drivers/iio/magnetometer/bmc150_magn 0xba2186e5 bmc150_magn_pm_ops +EXPORT_SYMBOL drivers/iio/magnetometer/hmc5843_core 0x5da02e09 hmc5843_common_probe +EXPORT_SYMBOL drivers/iio/magnetometer/hmc5843_core 0x888d5624 hmc5843_common_suspend +EXPORT_SYMBOL drivers/iio/magnetometer/hmc5843_core 0xca1a7d03 hmc5843_common_resume +EXPORT_SYMBOL drivers/iio/magnetometer/hmc5843_core 0xe6a930ba hmc5843_common_remove +EXPORT_SYMBOL drivers/iio/magnetometer/st_magn 0x3e276813 st_magn_common_probe +EXPORT_SYMBOL drivers/iio/magnetometer/st_magn 0xa6a74f92 st_magn_get_settings +EXPORT_SYMBOL drivers/iio/magnetometer/st_magn 0xf95dfd51 st_magn_common_remove +EXPORT_SYMBOL drivers/iio/pressure/bmp280 0x0f6f4e55 bmp280_regmap_config +EXPORT_SYMBOL drivers/iio/pressure/bmp280 0x7aee13bd bmp280_dev_pm_ops +EXPORT_SYMBOL drivers/iio/pressure/bmp280 0x81894ff3 bmp280_common_probe +EXPORT_SYMBOL drivers/iio/pressure/bmp280 0xe5e99337 bmp180_regmap_config +EXPORT_SYMBOL drivers/iio/pressure/ms5611_core 0x0f1f2d6a ms5611_probe +EXPORT_SYMBOL drivers/iio/pressure/ms5611_core 0x22588a67 ms5611_remove +EXPORT_SYMBOL drivers/iio/pressure/st_pressure 0x882843b1 st_press_get_settings +EXPORT_SYMBOL drivers/iio/pressure/st_pressure 0xadd92144 st_press_common_remove +EXPORT_SYMBOL drivers/iio/pressure/st_pressure 0xbe7cf838 st_press_common_probe +EXPORT_SYMBOL drivers/infiniband/core/ib_cm 0x0ccbafff ib_send_cm_rtu +EXPORT_SYMBOL drivers/infiniband/core/ib_cm 0x3480ea1b ib_cm_init_qp_attr +EXPORT_SYMBOL drivers/infiniband/core/ib_cm 0x53e6b203 cm_class +EXPORT_SYMBOL drivers/infiniband/core/ib_cm 0x5dc406ad ib_destroy_cm_id +EXPORT_SYMBOL drivers/infiniband/core/ib_cm 0x5f8b7f34 ib_send_cm_req +EXPORT_SYMBOL drivers/infiniband/core/ib_cm 0x69824a14 ibcm_reject_msg +EXPORT_SYMBOL drivers/infiniband/core/ib_cm 0x6f55271e ib_cm_listen +EXPORT_SYMBOL drivers/infiniband/core/ib_cm 0x74b35023 ib_cm_notify +EXPORT_SYMBOL drivers/infiniband/core/ib_cm 0x893c5c96 ib_send_cm_drep +EXPORT_SYMBOL drivers/infiniband/core/ib_cm 0x9d964a96 ib_send_cm_sidr_req +EXPORT_SYMBOL drivers/infiniband/core/ib_cm 0xa448c383 ib_send_cm_mra +EXPORT_SYMBOL drivers/infiniband/core/ib_cm 0xb725d45e ib_send_cm_rep +EXPORT_SYMBOL drivers/infiniband/core/ib_cm 0xba8bd7e8 ib_send_cm_rej +EXPORT_SYMBOL drivers/infiniband/core/ib_cm 0xd0c84e32 ib_send_cm_dreq +EXPORT_SYMBOL drivers/infiniband/core/ib_cm 0xe768914a ib_cm_insert_listen +EXPORT_SYMBOL drivers/infiniband/core/ib_cm 0xe945ebbd ib_create_cm_id +EXPORT_SYMBOL drivers/infiniband/core/ib_cm 0xf7c74fe5 ib_send_cm_sidr_rep +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x015e00f8 ib_find_pkey +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x01f2afd5 ib_get_cached_port_state +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x022e7def ib_create_rwq_ind_table +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x024f7342 rdma_move_grh_sgid_attr +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x036e7d34 ib_drain_qp +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x0395d7f1 ib_init_ah_from_mcmember +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x04163972 ib_query_pkey +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x062a9a26 ib_create_wq +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x077e09b2 ib_mad_kernel_rmpp_agent +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x07cd268b ib_post_send_mad +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x0a043fd9 __ib_alloc_cq_any +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x0c86f5cb ib_sa_register_client +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x0d534a40 rdma_translate_ip +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x0e15220e __ib_alloc_cq +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x0eeb2251 ib_advise_mr +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x109a28dc ib_register_event_handler +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x10e22cf8 ib_sa_service_rec_query +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x1107e54a rdma_read_gid_hw_context +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x12daf2a4 rdma_rw_ctx_signature_init +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x12e6db8e rdma_restrack_kadd +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x14b0afdb __ib_create_cq +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x151b66ab rdma_user_mmap_io +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x1777ab79 rdma_rw_ctx_init +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x184621a4 ib_get_rdma_header_version +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x18e24e31 ib_get_net_dev_by_params +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x19ae7c0d ibdev_printk +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x1b037462 __rdma_block_iter_start +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x1bf7e3cd ib_device_get_by_name +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x1d68ae4d rdma_nl_multicast +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x1e21d3ea rdma_read_gid_l2_fields +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x1e89b3b1 ib_cq_pool_put +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x1ee69fec ib_detach_mcast +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x1f5c78b0 rdma_hold_gid_attr +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x1ff0878f rdma_restrack_get +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x207c2beb ibdev_crit +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x22f3cf93 ib_pack +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x2672cea6 ib_create_srq_user +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x26e4446a ib_mr_pool_get +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x291a4d0b rdma_dev_access_netns +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x2a5adb63 rdma_restrack_del +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x2a91bb33 ib_cache_gid_type_str +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x2c36ca80 rdma_user_mmap_entry_insert +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x2d62f241 ib_modify_qp +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x2d72fabd rdma_find_gid_by_port +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x2e2c4fc0 ib_query_qp +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x2e59d7c1 rdma_modify_ah +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x2fa67eeb rdma_port_get_link_layer +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x305e5701 rdma_addr_size_kss +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x31b00c69 rdma_copy_ah_attr +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x3451479c ib_device_get_by_netdev +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x35021871 rdma_rw_ctx_post +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x38c737ee ib_dealloc_device +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x390d3fe8 ib_find_exact_cached_pkey +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x39da1f57 ib_close_qp +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x3bf42285 rdma_destroy_ah_user +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x3c4ae840 rdma_umap_priv_init +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x3cd5346b ibdev_alert +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x3db0aa52 ib_modify_srq +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x3e314c7e ib_register_mad_agent +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x3fc2387c ib_ud_header_unpack +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x417824bb rdma_copy_src_l2_addr +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x41a1b24c rdma_rw_mr_factor +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x428c29bb rdma_get_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 0x43da19af _ib_alloc_device +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x454be825 ib_process_cq_direct +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x45fb8985 rdma_nl_chk_listeners +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x472dc5a2 rdma_user_mmap_entry_get +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x475feaf3 rdma_user_mmap_entry_get_pgoff +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x48ac678f __ib_alloc_pd +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x49e86a0e ib_get_gids_from_rdma_hdr +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x4a1795ca rdma_nl_unicast_wait +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x4b3f4dc8 ib_create_ah_from_wc +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x4d66a0c7 ib_unregister_client +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x4d6eb28b ib_rdmacg_try_charge +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x4e155af0 ib_response_mad +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x4e6831a3 ib_find_cached_pkey +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x4e90435c ib_sa_free_multicast +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x4ebf826b ib_destroy_wq +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x517019f7 ib_sa_get_mcmember_rec +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x53fa72ef ib_get_cached_lmc +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x545c2ebd rdma_replace_ah_attr +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x55746054 ib_get_rmpp_segment +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x5688cb89 ib_unregister_device_queued +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x56bc8824 rdma_nl_put_driver_u64 +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x5732fff5 ib_sa_join_multicast +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x589e5cc5 ib_init_ah_attr_from_path +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x5a811790 rdma_user_mmap_entry_put +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x6060df19 ib_check_mr_status +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x60c082fe ib_sa_sendonly_fullmem_support +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x6116c831 rdma_roce_rescan_device +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x611870d2 ibdev_info +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x613b1e2e ib_is_mad_class_rmpp +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x61d24c52 ib_rate_to_mbps +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x636e486d ib_free_cq +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x63b672bf rdma_nl_put_driver_string +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x69327561 ib_port_register_module_stat +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x6991563b ibdev_warn +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x6acde978 ib_get_eth_speed +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x6ad52b3b ib_mr_pool_destroy +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x6b958320 ib_ud_ip4_csum +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x6bf3f131 rdma_nl_put_driver_u32 +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x6d7c52b4 ib_get_vf_stats +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x6e613fd6 rdma_link_unregister +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x6f3614b6 rdma_is_zero_gid +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x6fe9dc69 ib_sa_guid_info_rec_query +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x6feeb134 ib_find_gid +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x71bc3470 ib_alloc_mr_integrity +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x71d06ef1 ib_unregister_mad_agent +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x73328a59 rdma_restrack_put +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x73a121bc ib_unregister_event_handler +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x73b0e744 ib_mr_pool_init +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x75a729a0 rdma_nl_unregister +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x7753c067 roce_gid_type_mask_support +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x78050c85 ib_rdmacg_uncharge +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x787ccc4c ib_get_mad_data_offset +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x79661110 ib_destroy_cq_user +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x7aec2ee5 ib_register_client +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x7b56b034 ib_unregister_driver +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x7f92aedc ib_create_send_mad +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x7fb94178 rdma_destroy_ah_attr +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x80b9ea6f rdma_link_register +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x80ba9a13 ib_sa_path_rec_get +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x813d9f40 ib_mr_pool_put +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x81d7c562 rdma_restrack_get_byid +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x82117924 ib_attach_mcast +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x8245bb52 ib_init_ah_attr_from_wc +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x82f6578a rdma_nl_register +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x86070770 ibnl_put_msg +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x86cef180 rdma_addr_size +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x88eb8f12 rdma_find_gid +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x8b9df15a ib_resize_cq +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x8d969cca ib_dealloc_xrcd +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x8e17e0ba ib_modify_mad +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x8e444a29 rdma_move_ah_attr +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x8e7528da __rdma_block_iter_next +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x8f059472 rdma_read_gid_attr_ndev_rcu +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x909d5640 ib_set_vf_link_state +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x90e807c7 ib_cache_gid_parse_type_str +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x92b1d954 ib_get_vf_guid +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x93248e57 ib_cancel_mad +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x9743c785 ib_free_recv_mad +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x97eb7205 ib_drain_rq +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x986f832d ib_drain_sq +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x99380d65 rdma_user_mmap_entry_insert_range +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x9b47d7c3 rdma_create_ah +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xa3641d4d ibdev_err +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xa432baf6 ib_unpack +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xa43f8860 ib_register_device +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xa49c2641 ibnl_put_attr +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xa590fac1 ib_create_qp_security +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xa5e526d6 ibdev_emerg +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xa69406be ib_reg_user_mr +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xa6a5406f rdma_nl_put_driver_u64_hex +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xa6bbfca6 ib_get_cached_pkey +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xa9280314 ib_alloc_mr_user +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xaa046033 ibdev_notice +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xaae0fa91 ib_set_vf_guid +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xacc2a7b9 rdma_put_gid_attr +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xae956dce ib_rate_to_mult +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xb1edd943 ib_get_vf_config +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xb2065b8b rdma_rw_ctx_destroy_signature +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xb2139109 ib_device_put +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xb36e4148 ib_sa_pack_path +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xb7852a05 ib_ud_header_init +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xb8875d13 rdma_user_mmap_entry_remove +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xb9ba2fe5 ib_get_device_fw_str +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xba2455a1 rdma_nl_stat_hwcounter_entry +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xbad5dc6c ib_port_unregister_module_stat +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xbbcb114f ib_dealloc_pd_user +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xbbebd7d6 ib_map_mr_sg +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xbca3712b rdma_restrack_count +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xbceeb503 ib_device_set_netdev +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xbde21c28 ib_modify_qp_with_udata +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xc14633ac ib_modify_device +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xc3b1a136 rdma_restrack_set_task +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xc44ab8e9 ib_unregister_device +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xc46dd390 ib_query_port +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xc4e0f60b rdma_set_cq_moderation +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xcaa2f39f ib_dereg_mr_user +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xcd42bdc7 ib_create_qp +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xcd6e58c2 rdma_query_gid +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xcdee5304 __ib_alloc_xrcd +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xce66d517 ib_modify_port +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xce7c41a8 ib_set_device_ops +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xce9d3cf6 ib_destroy_qp_user +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xd097eb35 ib_open_qp +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xd1385b3a rdma_alloc_netdev +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xd1fe61eb rdma_rw_ctx_wrs +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xd22d5d16 ib_free_send_mad +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xd4b837a2 rdma_nl_put_driver_u32_hex +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xd5838dc2 rdma_create_user_ah +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xd6636ca6 rdma_addr_size_in6 +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xd6e65d77 ib_modify_qp_is_ok +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xd79cfcd6 ib_set_client_data +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xd877b8bf ib_get_cached_subnet_prefix +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xda0d50ec ib_sa_cancel_query +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xdc04b746 ib_sg_to_pages +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xdd0c3e34 ib_map_mr_sg_pi +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xdeed8bd0 rdma_resolve_ip +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xdf4162eb ib_dispatch_event +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xe121db4b rdma_init_netdev +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xe249950f ib_cq_pool_get +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xe3374b9d ib_unregister_device_and_put +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xe43a634e ib_destroy_srq_user +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xe5840ec6 ib_wc_status_msg +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xe5a78c1e ib_sa_unpack_path +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xe68ee349 rdma_rw_ctx_destroy +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xe717e7f3 rdma_nl_unicast +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xe7b52e5f mult_to_ib_rate +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xe97a1b35 ib_modify_wq +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xe9e799fc ib_ud_header_pack +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xea3bfa7a ib_destroy_rwq_ind_table +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xf13619ac ib_query_srq +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xf296d814 rdma_query_ah +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xf3bb9f08 rdma_restrack_uadd +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xf5963f15 rdma_addr_cancel +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_uverbs 0x02852207 ib_copy_qp_attr_to_user +EXPORT_SYMBOL drivers/infiniband/core/ib_uverbs 0x1b54bd5d ib_copy_path_rec_from_user +EXPORT_SYMBOL drivers/infiniband/core/ib_uverbs 0x21c6f871 ib_umem_copy_from +EXPORT_SYMBOL drivers/infiniband/core/ib_uverbs 0x2203849d _uverbs_alloc +EXPORT_SYMBOL drivers/infiniband/core/ib_uverbs 0x3f4b88a5 uverbs_destroy_def_handler +EXPORT_SYMBOL drivers/infiniband/core/ib_uverbs 0x43233bda ib_umem_odp_alloc_child +EXPORT_SYMBOL drivers/infiniband/core/ib_uverbs 0x4f5cfa04 ib_umem_release +EXPORT_SYMBOL drivers/infiniband/core/ib_uverbs 0x4fe1c63b ib_umem_odp_release +EXPORT_SYMBOL drivers/infiniband/core/ib_uverbs 0x53300ce4 ib_umem_find_best_pgsz +EXPORT_SYMBOL drivers/infiniband/core/ib_uverbs 0x57a5644e _uverbs_get_const +EXPORT_SYMBOL drivers/infiniband/core/ib_uverbs 0x5948f2d7 uverbs_get_flags64 +EXPORT_SYMBOL drivers/infiniband/core/ib_uverbs 0x5d53290b uverbs_copy_to +EXPORT_SYMBOL drivers/infiniband/core/ib_uverbs 0x63057f4b ib_copy_path_rec_to_user +EXPORT_SYMBOL drivers/infiniband/core/ib_uverbs 0x656f402f ib_umem_get +EXPORT_SYMBOL drivers/infiniband/core/ib_uverbs 0x735a70f2 ib_umem_odp_get +EXPORT_SYMBOL drivers/infiniband/core/ib_uverbs 0x77cfae0a ib_umem_page_count +EXPORT_SYMBOL drivers/infiniband/core/ib_uverbs 0x7d2c758f ib_uverbs_get_ucontext_file +EXPORT_SYMBOL drivers/infiniband/core/ib_uverbs 0x81275b8f ib_copy_ah_attr_to_user +EXPORT_SYMBOL drivers/infiniband/core/ib_uverbs 0x8d5b11f7 ib_umem_odp_unmap_dma_pages +EXPORT_SYMBOL drivers/infiniband/core/ib_uverbs 0x8efb9c40 flow_resources_add +EXPORT_SYMBOL drivers/infiniband/core/ib_uverbs 0xb2af3333 uverbs_uobject_fd_release +EXPORT_SYMBOL drivers/infiniband/core/ib_uverbs 0xbeab8e5c uverbs_get_flags32 +EXPORT_SYMBOL drivers/infiniband/core/ib_uverbs 0xca1f650e uverbs_finalize_uobj_create +EXPORT_SYMBOL drivers/infiniband/core/ib_uverbs 0xcd949048 uverbs_idr_class +EXPORT_SYMBOL drivers/infiniband/core/ib_uverbs 0xd301100a ib_umem_odp_alloc_implicit +EXPORT_SYMBOL drivers/infiniband/core/ib_uverbs 0xd36dc3f4 uverbs_fd_class +EXPORT_SYMBOL drivers/infiniband/core/ib_uverbs 0xd52f56cf uverbs_uobject_put +EXPORT_SYMBOL drivers/infiniband/core/ib_uverbs 0xe0e6972f ib_uverbs_flow_resources_free +EXPORT_SYMBOL drivers/infiniband/core/ib_uverbs 0xe26fcfef ib_umem_odp_map_dma_pages +EXPORT_SYMBOL drivers/infiniband/core/ib_uverbs 0xfd23a65b flow_resources_alloc +EXPORT_SYMBOL drivers/infiniband/core/iw_cm 0x07de66fe iw_cm_connect +EXPORT_SYMBOL drivers/infiniband/core/iw_cm 0x1f49b96c iw_cm_disconnect +EXPORT_SYMBOL drivers/infiniband/core/iw_cm 0x5ff15d3a iw_cm_init_qp_attr +EXPORT_SYMBOL drivers/infiniband/core/iw_cm 0x83f19275 iw_cm_accept +EXPORT_SYMBOL drivers/infiniband/core/iw_cm 0x888a20bf iw_create_cm_id +EXPORT_SYMBOL drivers/infiniband/core/iw_cm 0x8bc33621 iw_cm_listen +EXPORT_SYMBOL drivers/infiniband/core/iw_cm 0x8edff2a7 iw_destroy_cm_id +EXPORT_SYMBOL drivers/infiniband/core/iw_cm 0xc6843ab7 iw_cm_reject +EXPORT_SYMBOL drivers/infiniband/core/iw_cm 0xf3df871f iwcm_reject_msg +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0x03cdd95f rdma_create_qp +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0x03ea2469 rdma_read_gids +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0x07094abc rdma_init_qp_attr +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0x177108bd rdma_res_to_id +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0x1a04c8e9 rdma_iw_cm_id +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0x33157003 rdma_get_service_id +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0x333aab53 rdma_join_multicast +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0x3da8ce1a rdma_set_service_type +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0x3f46f859 rdma_set_afonly +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0x434c5c20 rdma_set_ack_timeout +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0x4bced5ca rdma_resolve_route +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0x56732d9e rdma_reject_msg +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0x71295b50 rdma_destroy_qp +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0x769548d8 rdma_notify +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0x80cfdcc2 rdma_resolve_addr +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0x82144759 rdma_reject +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0x896b46f4 __rdma_create_id +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0x8d173201 rdma_bind_addr +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0x8fc7e183 __rdma_accept_ece +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0x907df803 rdma_event_msg +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0xa872661b rdma_destroy_id +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0xac345833 __rdma_accept +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0xac6620b3 rdma_connect +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0xb8114859 rdma_connect_ece +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0xc1c069ab rdma_consumer_reject_data +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0xd11785fd rdma_disconnect +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0xd25a2166 rdma_set_reuseaddr +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0xe0f89bc7 rdma_leave_multicast +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0xe482bfa2 rdma_listen +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0xefa727ec rdma_set_ib_path +EXPORT_SYMBOL drivers/infiniband/sw/rdmavt/rdmavt 0x0e385842 ib_rvt_state_ops +EXPORT_SYMBOL drivers/infiniband/sw/rdmavt/rdmavt 0x109d44e5 rvt_dealloc_device +EXPORT_SYMBOL drivers/infiniband/sw/rdmavt/rdmavt 0x185c987e rvt_qp_iter_next +EXPORT_SYMBOL drivers/infiniband/sw/rdmavt/rdmavt 0x1ee4a72a rvt_comm_est +EXPORT_SYMBOL drivers/infiniband/sw/rdmavt/rdmavt 0x2b5b93c0 rvt_rc_error +EXPORT_SYMBOL drivers/infiniband/sw/rdmavt/rdmavt 0x32bb68df rvt_add_rnr_timer +EXPORT_SYMBOL drivers/infiniband/sw/rdmavt/rdmavt 0x4824297c rvt_rc_rnr_retry +EXPORT_SYMBOL drivers/infiniband/sw/rdmavt/rdmavt 0x4dac4b7e rvt_invalidate_rkey +EXPORT_SYMBOL drivers/infiniband/sw/rdmavt/rdmavt 0x4e81056b rvt_error_qp +EXPORT_SYMBOL drivers/infiniband/sw/rdmavt/rdmavt 0x5feb050a rvt_fast_reg_mr +EXPORT_SYMBOL drivers/infiniband/sw/rdmavt/rdmavt 0x66c9661a rvt_rkey_ok +EXPORT_SYMBOL drivers/infiniband/sw/rdmavt/rdmavt 0x6a69f2cd rvt_send_complete +EXPORT_SYMBOL drivers/infiniband/sw/rdmavt/rdmavt 0x6b833815 rvt_get_credit +EXPORT_SYMBOL drivers/infiniband/sw/rdmavt/rdmavt 0x788d4b95 rvt_del_timers_sync +EXPORT_SYMBOL drivers/infiniband/sw/rdmavt/rdmavt 0x78f8c19b rvt_get_rwqe +EXPORT_SYMBOL drivers/infiniband/sw/rdmavt/rdmavt 0x8349982b rvt_check_ah +EXPORT_SYMBOL drivers/infiniband/sw/rdmavt/rdmavt 0x85b141c9 rvt_cq_enter +EXPORT_SYMBOL drivers/infiniband/sw/rdmavt/rdmavt 0x89efa946 rvt_register_device +EXPORT_SYMBOL drivers/infiniband/sw/rdmavt/rdmavt 0x8b568fd8 rvt_ruc_loopback +EXPORT_SYMBOL drivers/infiniband/sw/rdmavt/rdmavt 0x8bec275b rvt_qp_iter_init +EXPORT_SYMBOL drivers/infiniband/sw/rdmavt/rdmavt 0x97da88ff rvt_qp_iter +EXPORT_SYMBOL drivers/infiniband/sw/rdmavt/rdmavt 0xa664df02 rvt_stop_rc_timers +EXPORT_SYMBOL drivers/infiniband/sw/rdmavt/rdmavt 0xbd7e63b8 rvt_restart_sge +EXPORT_SYMBOL drivers/infiniband/sw/rdmavt/rdmavt 0xd1ab2a55 rvt_add_retry_timer_ext +EXPORT_SYMBOL drivers/infiniband/sw/rdmavt/rdmavt 0xd1dfc4bd rvt_unregister_device +EXPORT_SYMBOL drivers/infiniband/sw/rdmavt/rdmavt 0xdba14128 rvt_mcast_find +EXPORT_SYMBOL drivers/infiniband/sw/rdmavt/rdmavt 0xdcaeccd1 rvt_compute_aeth +EXPORT_SYMBOL drivers/infiniband/sw/rdmavt/rdmavt 0xe2b77ce3 rvt_alloc_device +EXPORT_SYMBOL drivers/infiniband/sw/rdmavt/rdmavt 0xe9cf3e43 rvt_rnr_tbl_to_usec +EXPORT_SYMBOL drivers/infiniband/sw/rdmavt/rdmavt 0xea600936 rvt_init_port +EXPORT_SYMBOL drivers/infiniband/sw/rdmavt/rdmavt 0xeb918207 rvt_lkey_ok +EXPORT_SYMBOL drivers/infiniband/sw/rdmavt/rdmavt 0xf5fb98f6 rvt_copy_sge +EXPORT_SYMBOL drivers/infiniband/ulp/rtrs/rtrs-client 0x2a12cf93 rtrs_clt_get_permit +EXPORT_SYMBOL drivers/infiniband/ulp/rtrs/rtrs-client 0x41c7dcfd rtrs_clt_put_permit +EXPORT_SYMBOL drivers/infiniband/ulp/rtrs/rtrs-client 0x501f598d rtrs_permit_to_pdu +EXPORT_SYMBOL drivers/infiniband/ulp/rtrs/rtrs-client 0x6e06f1e1 rtrs_clt_request +EXPORT_SYMBOL drivers/infiniband/ulp/rtrs/rtrs-client 0xadac8fe6 rtrs_clt_open +EXPORT_SYMBOL drivers/infiniband/ulp/rtrs/rtrs-client 0xbd4c1829 rtrs_clt_close +EXPORT_SYMBOL drivers/infiniband/ulp/rtrs/rtrs-client 0xe5d88637 rtrs_clt_query +EXPORT_SYMBOL drivers/infiniband/ulp/rtrs/rtrs-core 0x2aca267d rtrs_rdma_dev_pd_deinit +EXPORT_SYMBOL drivers/infiniband/ulp/rtrs/rtrs-core 0x5b01e41d sockaddr_to_str +EXPORT_SYMBOL drivers/infiniband/ulp/rtrs/rtrs-core 0x805cb58f rtrs_rdma_dev_pd_init +EXPORT_SYMBOL drivers/infiniband/ulp/rtrs/rtrs-core 0x887302f3 rtrs_addr_to_sockaddr +EXPORT_SYMBOL drivers/infiniband/ulp/rtrs/rtrs-core 0xb5ff0fb9 rtrs_ib_dev_put +EXPORT_SYMBOL drivers/infiniband/ulp/rtrs/rtrs-core 0xc6d398a5 rtrs_ib_dev_find_or_add +EXPORT_SYMBOL drivers/infiniband/ulp/rtrs/rtrs-server 0x462aae0e rtrs_srv_resp_rdma +EXPORT_SYMBOL drivers/infiniband/ulp/rtrs/rtrs-server 0x5479981a rtrs_srv_open +EXPORT_SYMBOL drivers/infiniband/ulp/rtrs/rtrs-server 0x62dd62e6 rtrs_srv_get_queue_depth +EXPORT_SYMBOL drivers/infiniband/ulp/rtrs/rtrs-server 0x7cf162a9 rtrs_srv_set_sess_priv +EXPORT_SYMBOL drivers/infiniband/ulp/rtrs/rtrs-server 0xcd80ab31 rtrs_srv_close +EXPORT_SYMBOL drivers/infiniband/ulp/rtrs/rtrs-server 0xd4ce4d81 rtrs_srv_get_sess_name +EXPORT_SYMBOL drivers/input/gameport/gameport 0x201c2e58 __gameport_register_port +EXPORT_SYMBOL drivers/input/gameport/gameport 0x2292afbe gameport_set_phys +EXPORT_SYMBOL drivers/input/gameport/gameport 0x5cbc5851 gameport_unregister_port +EXPORT_SYMBOL drivers/input/gameport/gameport 0x7daf3ce1 gameport_unregister_driver +EXPORT_SYMBOL drivers/input/gameport/gameport 0x88821d4d gameport_stop_polling +EXPORT_SYMBOL drivers/input/gameport/gameport 0x8dec2985 gameport_close +EXPORT_SYMBOL drivers/input/gameport/gameport 0x9fca95e8 gameport_start_polling +EXPORT_SYMBOL drivers/input/gameport/gameport 0xb269cc1f gameport_open +EXPORT_SYMBOL drivers/input/gameport/gameport 0xf8664db1 __gameport_register_driver +EXPORT_SYMBOL drivers/input/input-polldev 0x30b19d18 input_unregister_polled_device +EXPORT_SYMBOL drivers/input/input-polldev 0x8b81f9b5 input_register_polled_device +EXPORT_SYMBOL drivers/input/input-polldev 0x9c7eb33a input_allocate_polled_device +EXPORT_SYMBOL drivers/input/input-polldev 0xc079312b devm_input_allocate_polled_device +EXPORT_SYMBOL drivers/input/input-polldev 0xd01ec496 input_free_polled_device +EXPORT_SYMBOL drivers/input/joystick/iforce/iforce 0x2e968bcf iforce_init_device +EXPORT_SYMBOL drivers/input/joystick/iforce/iforce 0x3090775e iforce_process_packet +EXPORT_SYMBOL drivers/input/joystick/iforce/iforce 0x7c5919d8 iforce_send_packet +EXPORT_SYMBOL drivers/input/matrix-keymap 0xef434878 matrix_keypad_build_keymap +EXPORT_SYMBOL drivers/input/misc/ad714x 0x9ecca4a8 ad714x_enable +EXPORT_SYMBOL drivers/input/misc/ad714x 0xa7fcbfd2 ad714x_probe +EXPORT_SYMBOL drivers/input/misc/ad714x 0xda84c385 ad714x_disable +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 0x92d774c0 cma3000_init +EXPORT_SYMBOL drivers/input/misc/cma3000_d0x 0xca3f100a cma3000_suspend +EXPORT_SYMBOL drivers/input/rmi4/rmi_core 0xba993fd9 rmi_unregister_transport_device +EXPORT_SYMBOL drivers/input/sparse-keymap 0x2e77c661 sparse_keymap_entry_from_scancode +EXPORT_SYMBOL drivers/input/sparse-keymap 0x3cbc72fd sparse_keymap_setup +EXPORT_SYMBOL drivers/input/sparse-keymap 0x5a6763f1 sparse_keymap_report_event +EXPORT_SYMBOL drivers/input/sparse-keymap 0x665b904b sparse_keymap_report_entry +EXPORT_SYMBOL drivers/input/sparse-keymap 0xdb68176b sparse_keymap_entry_from_keycode +EXPORT_SYMBOL drivers/input/touchscreen/ad7879 0x1269082e ad7879_pm_ops +EXPORT_SYMBOL drivers/input/touchscreen/ad7879 0xe2d5a6b4 ad7879_probe +EXPORT_SYMBOL drivers/iommu/amd/iommu_v2 0x18333455 amd_iommu_bind_pasid +EXPORT_SYMBOL drivers/iommu/amd/iommu_v2 0x6d3c9056 amd_iommu_set_invalidate_ctx_cb +EXPORT_SYMBOL drivers/iommu/amd/iommu_v2 0x81ed55ff amd_iommu_unbind_pasid +EXPORT_SYMBOL drivers/iommu/amd/iommu_v2 0x89a97c01 amd_iommu_init_device +EXPORT_SYMBOL drivers/iommu/amd/iommu_v2 0xfb754f4f amd_iommu_set_invalid_ppr_cb +EXPORT_SYMBOL drivers/iommu/amd/iommu_v2 0xfc44692c amd_iommu_free_device +EXPORT_SYMBOL drivers/isdn/capi/kernelcapi 0x33b65980 detach_capi_ctr +EXPORT_SYMBOL drivers/isdn/capi/kernelcapi 0x79b2c053 attach_capi_ctr +EXPORT_SYMBOL drivers/isdn/capi/kernelcapi 0x8ef26387 capi_ctr_handle_message +EXPORT_SYMBOL drivers/isdn/capi/kernelcapi 0xae201759 capi_ctr_ready +EXPORT_SYMBOL drivers/isdn/capi/kernelcapi 0xc90f8061 capi_ctr_down +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 0x0546ee1f mISDNipac_init +EXPORT_SYMBOL drivers/isdn/hardware/mISDN/mISDNipac 0x969b7548 mISDNisac_irq +EXPORT_SYMBOL drivers/isdn/hardware/mISDN/mISDNipac 0xc655a4a3 mISDNipac_irq +EXPORT_SYMBOL drivers/isdn/hardware/mISDN/mISDNipac 0xf9e84593 mISDNisac_init +EXPORT_SYMBOL drivers/isdn/hardware/mISDN/mISDNisar 0xa2f70991 mISDNisar_init +EXPORT_SYMBOL drivers/isdn/hardware/mISDN/mISDNisar 0xe9deb1ef mISDNisar_irq +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0x03a68066 mISDN_FsmRestartTimer +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0x0936e6bb get_next_bframe +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0x0b092eae mISDN_freedchannel +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0x13292ba3 mISDN_ctrl_bchannel +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0x1e43918e mISDNDevName4ch +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0x1e6700cf get_next_dframe +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0x2348cc3c mISDN_FsmFree +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0x25e87ed2 recv_Dchannel +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0x26236de8 mISDN_clock_update +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0x2e700026 bchannel_get_rxbuf +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 0x46609f71 recv_Bchannel +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 0x5dbd0d9a mISDN_freebchannel +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0x6047df40 mISDN_FsmInitTimer +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0x611d6a56 mISDN_unregister_device +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0x70b85307 mISDN_register_Bprotocol +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0x8d7a7ef5 recv_Bchannel_skb +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0x9438ed81 create_l1 +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0x990c3fec mISDN_initdchannel +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0x997dcf6d mISDN_initbchannel +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0x9c928457 mISDN_FsmNew +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0xad07dd0f mISDN_unregister_Bprotocol +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0xad33f033 queue_ch_frame +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0xb86ceb70 dchannel_senddata +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0xbc080ec9 recv_Echannel +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0xc3401729 mISDN_register_clock +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0xc4d75da8 recv_Dchannel_skb +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0xcce761c6 bchannel_senddata +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 0xd9c8494d mISDN_register_device +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0xda9e19c7 mISDN_clear_bchannel +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0xe8f617eb mISDN_unregister_clock +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 0x54a12ec4 ti_lmu_common_set_ramp +EXPORT_SYMBOL drivers/leds/leds-ti-lmu-common 0x58f40219 ti_lmu_common_get_ramp_params +EXPORT_SYMBOL drivers/leds/leds-ti-lmu-common 0xced72aae ti_lmu_common_set_brightness +EXPORT_SYMBOL drivers/leds/leds-ti-lmu-common 0xdfe3ebdd ti_lmu_common_get_brt_res +EXPORT_SYMBOL drivers/md/dm-log 0x26dc784c dm_dirty_log_type_unregister +EXPORT_SYMBOL drivers/md/dm-log 0x4b9d833a dm_dirty_log_type_register +EXPORT_SYMBOL drivers/md/dm-log 0xd1a554c7 dm_dirty_log_destroy +EXPORT_SYMBOL drivers/md/dm-log 0xfd2f12fd dm_dirty_log_create +EXPORT_SYMBOL drivers/md/dm-snapshot 0x21abae9e dm_exception_store_destroy +EXPORT_SYMBOL drivers/md/dm-snapshot 0x23bb12a2 dm_exception_store_type_unregister +EXPORT_SYMBOL drivers/md/dm-snapshot 0x6b348625 dm_exception_store_type_register +EXPORT_SYMBOL drivers/md/dm-snapshot 0xa2d4648f dm_exception_store_create +EXPORT_SYMBOL drivers/md/dm-snapshot 0xd6613c65 dm_snap_origin +EXPORT_SYMBOL drivers/md/dm-snapshot 0xd8d57a9c dm_snap_cow +EXPORT_SYMBOL drivers/md/raid456 0x2f75ea9f raid5_set_cache_size +EXPORT_SYMBOL drivers/md/raid456 0x810e637f r5c_journal_mode_set +EXPORT_SYMBOL drivers/media/common/b2c2/b2c2-flexcop 0x333bdf67 flexcop_device_kfree +EXPORT_SYMBOL drivers/media/common/b2c2/b2c2-flexcop 0x4296c035 flexcop_pid_feed_control +EXPORT_SYMBOL drivers/media/common/b2c2/b2c2-flexcop 0x62fdade2 flexcop_sram_ctrl +EXPORT_SYMBOL drivers/media/common/b2c2/b2c2-flexcop 0x6da0938e flexcop_pass_dmx_packets +EXPORT_SYMBOL drivers/media/common/b2c2/b2c2-flexcop 0x7b7fd8b8 flexcop_wan_set_speed +EXPORT_SYMBOL drivers/media/common/b2c2/b2c2-flexcop 0x84b28761 flexcop_i2c_request +EXPORT_SYMBOL drivers/media/common/b2c2/b2c2-flexcop 0x8feb5002 flexcop_pass_dmx_data +EXPORT_SYMBOL drivers/media/common/b2c2/b2c2-flexcop 0xb0fa2ce3 flexcop_device_exit +EXPORT_SYMBOL drivers/media/common/b2c2/b2c2-flexcop 0xbe7dec3a flexcop_device_initialize +EXPORT_SYMBOL drivers/media/common/b2c2/b2c2-flexcop 0xc1773c4d flexcop_sram_set_dest +EXPORT_SYMBOL drivers/media/common/b2c2/b2c2-flexcop 0xc4490765 flexcop_device_kmalloc +EXPORT_SYMBOL drivers/media/common/b2c2/b2c2-flexcop 0xc8f0130f flexcop_eeprom_check_mac_addr +EXPORT_SYMBOL drivers/media/common/b2c2/b2c2-flexcop 0xe3e04cae flexcop_dump_reg +EXPORT_SYMBOL drivers/media/common/cx2341x 0x174443cd cx2341x_handler_set_50hz +EXPORT_SYMBOL drivers/media/common/cx2341x 0x4913c4af cx2341x_handler_set_busy +EXPORT_SYMBOL drivers/media/common/cx2341x 0x51627931 cx2341x_handler_setup +EXPORT_SYMBOL drivers/media/common/cx2341x 0x55aa7c5f cx2341x_mpeg_ctrls +EXPORT_SYMBOL drivers/media/common/cx2341x 0x8d3a49fd cx2341x_ctrl_get_menu +EXPORT_SYMBOL drivers/media/common/cx2341x 0xb5c909ec cx2341x_handler_init +EXPORT_SYMBOL drivers/media/common/cx2341x 0xb9c8f3f1 cx2341x_update +EXPORT_SYMBOL drivers/media/common/cx2341x 0xc889377e cx2341x_log_status +EXPORT_SYMBOL drivers/media/common/cx2341x 0xdaff62f9 cx2341x_fill_defaults +EXPORT_SYMBOL drivers/media/common/cx2341x 0xe197a5dd cx2341x_ext_ctrls +EXPORT_SYMBOL drivers/media/common/cx2341x 0xeb854f47 cx2341x_ctrl_query +EXPORT_SYMBOL drivers/media/common/cypress_firmware 0x26f66482 cypress_load_firmware +EXPORT_SYMBOL drivers/media/common/tveeprom 0x0dbf0296 tveeprom_hauppauge_analog +EXPORT_SYMBOL drivers/media/common/tveeprom 0x552378fc tveeprom_read +EXPORT_SYMBOL drivers/media/common/videobuf2/videobuf2-common 0x23225459 vb2_verify_memory_type +EXPORT_SYMBOL drivers/media/common/videobuf2/videobuf2-common 0x35ee3176 vb2_buffer_in_use +EXPORT_SYMBOL drivers/media/common/videobuf2/videobuf2-dvb 0x06976ff0 vb2_dvb_alloc_frontend +EXPORT_SYMBOL drivers/media/common/videobuf2/videobuf2-dvb 0x0bb237e4 vb2_dvb_register_bus +EXPORT_SYMBOL drivers/media/common/videobuf2/videobuf2-dvb 0x61c76382 vb2_dvb_find_frontend +EXPORT_SYMBOL drivers/media/common/videobuf2/videobuf2-dvb 0x775cf428 vb2_dvb_unregister_bus +EXPORT_SYMBOL drivers/media/common/videobuf2/videobuf2-dvb 0x9527bb70 vb2_dvb_dealloc_frontends +EXPORT_SYMBOL drivers/media/common/videobuf2/videobuf2-dvb 0xde57fcfa vb2_dvb_get_frontend +EXPORT_SYMBOL drivers/media/common/videobuf2/videobuf2-memops 0xa21fa765 vb2_create_framevec +EXPORT_SYMBOL drivers/media/common/videobuf2/videobuf2-memops 0xccd197c7 vb2_destroy_framevec +EXPORT_SYMBOL drivers/media/common/videobuf2/videobuf2-v4l2 0x6f351759 vb2_querybuf +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x08733236 intlog10 +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x09aca03d dvb_unregister_device +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x11aa0267 dvb_free_device +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x17019653 dvb_unregister_frontend +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x2dd9f7a6 dvb_ca_en50221_release +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x2e47cb60 dvb_unregister_adapter +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x2f5cdf80 dvb_ringbuffer_write +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x3b93d71a dvb_frontend_sleep_until +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x3feecaf6 dvb_dmx_swfilter_raw +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x4c07e5f9 dvb_frontend_reinitialise +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 0x626b72b6 dvb_generic_release +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x67480317 dvb_dmx_init +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x7751ad77 dvb_dmx_swfilter_204 +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x7b0d51ce dvb_dmx_release +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x7d8b77df dvb_dmxdev_release +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x7e756d45 dvb_ca_en50221_frda_irq +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x80985cc4 dvb_dmx_swfilter +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x80f20497 dvb_ca_en50221_camready_irq +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x8cc10b36 dvb_register_adapter +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x8e428bf4 dvb_frontend_suspend +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x91a6794b dvb_ringbuffer_read_user +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x9dfa391c dvb_register_device +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0xa0bad0dd dvb_ca_en50221_init +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0xa29eadfb dvb_dmxdev_init +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0xa4cdd04f dvb_ca_en50221_camchange_irq +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0xb3352dd2 dvb_ringbuffer_empty +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0xba2c3cfd dvb_net_init +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0xc3f679f9 dvb_ringbuffer_write_user +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0xc6fbdc39 dvb_generic_open +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0xc9ffdef7 dvb_frontend_detach +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0xda1c5112 dvb_net_release +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0xdcf60586 dvb_dmx_swfilter_packets +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0xe0c05e5d dvb_frontend_resume +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0xe138ce6b dvb_ringbuffer_avail +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0xe379da6d dvb_generic_ioctl +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0xe6b7f8b0 dvb_register_frontend +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0xebbc2d9b dvb_ringbuffer_init +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0xf8190ab1 dvb_remove_device +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-frontends/ascot2e 0xb0e2d4d9 ascot2e_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/atbm8830 0x715405b2 atbm8830_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/au8522_common 0x08471823 au8522_analog_i2c_gate_ctrl +EXPORT_SYMBOL drivers/media/dvb-frontends/au8522_common 0x3295a61c au8522_sleep +EXPORT_SYMBOL drivers/media/dvb-frontends/au8522_common 0x56fff1a1 au8522_led_ctrl +EXPORT_SYMBOL drivers/media/dvb-frontends/au8522_common 0x64c2c3b4 au8522_readreg +EXPORT_SYMBOL drivers/media/dvb-frontends/au8522_common 0x9579ae53 au8522_release_state +EXPORT_SYMBOL drivers/media/dvb-frontends/au8522_common 0xe3511ca0 au8522_init +EXPORT_SYMBOL drivers/media/dvb-frontends/au8522_common 0xeaafd6b1 au8522_get_state +EXPORT_SYMBOL drivers/media/dvb-frontends/au8522_common 0xf7a327ce au8522_writereg +EXPORT_SYMBOL drivers/media/dvb-frontends/au8522_common 0xf9afc6c6 au8522_i2c_gate_ctrl +EXPORT_SYMBOL drivers/media/dvb-frontends/au8522_dig 0xfc3b015a au8522_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/bcm3510 0x8f02527b bcm3510_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/cx22700 0x5156bc41 cx22700_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/cx22702 0xa7fe9890 cx22702_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/cx24110 0x681bbdb4 cx24110_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/cx24113 0x381fb284 cx24113_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/cx24113 0xa23ea555 cx24113_agc_callback +EXPORT_SYMBOL drivers/media/dvb-frontends/cx24116 0x9fdc4ad1 cx24116_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/cx24120 0xba39d0e6 cx24120_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/cx24123 0xdb736cbe cx24123_get_tuner_i2c_adapter +EXPORT_SYMBOL drivers/media/dvb-frontends/cx24123 0xe765f046 cx24123_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/cxd2820r 0x0e0a5ea0 cxd2820r_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/cxd2841er 0x1cf145d7 cxd2841er_attach_t_c +EXPORT_SYMBOL drivers/media/dvb-frontends/cxd2841er 0x796081be cxd2841er_attach_s +EXPORT_SYMBOL drivers/media/dvb-frontends/cxd2880/cxd2880 0xc6fa741f cxd2880_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/dib0070 0x2108b309 dib0070_ctrl_agc_filter +EXPORT_SYMBOL drivers/media/dvb-frontends/dib0070 0x6b96f0c4 dib0070_set_rf_output +EXPORT_SYMBOL drivers/media/dvb-frontends/dib0070 0x7b8cd7b7 dib0070_get_rf_output +EXPORT_SYMBOL drivers/media/dvb-frontends/dib0070 0xa9752ac5 dib0070_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/dib0070 0xd3e3832c dib0070_wbd_offset +EXPORT_SYMBOL drivers/media/dvb-frontends/dib0090 0x4cd99fb5 dib0090_fw_register +EXPORT_SYMBOL drivers/media/dvb-frontends/dib0090 0x4f887a5e dib0090_update_tuning_table_7090 +EXPORT_SYMBOL drivers/media/dvb-frontends/dib0090 0x611621f8 dib0090_update_rframp_7090 +EXPORT_SYMBOL drivers/media/dvb-frontends/dib0090 0x6ea2bf15 dib0090_set_switch +EXPORT_SYMBOL drivers/media/dvb-frontends/dib0090 0x6eec11e0 dib0090_register +EXPORT_SYMBOL drivers/media/dvb-frontends/dib0090 0x6f4f5190 dib0090_gain_control +EXPORT_SYMBOL drivers/media/dvb-frontends/dib0090 0x7846c843 dib0090_get_tune_state +EXPORT_SYMBOL drivers/media/dvb-frontends/dib0090 0x8e1c39c0 dib0090_pwm_gain_reset +EXPORT_SYMBOL drivers/media/dvb-frontends/dib0090 0x94695fe3 dib0090_dcc_freq +EXPORT_SYMBOL drivers/media/dvb-frontends/dib0090 0xa7436ccd dib0090_set_dc_servo +EXPORT_SYMBOL drivers/media/dvb-frontends/dib0090 0xad0ccc4a dib0090_get_wbd_offset +EXPORT_SYMBOL drivers/media/dvb-frontends/dib0090 0xc69b158f dib0090_set_vga +EXPORT_SYMBOL drivers/media/dvb-frontends/dib0090 0xd1677d42 dib0090_get_current_gain +EXPORT_SYMBOL drivers/media/dvb-frontends/dib0090 0xed792312 dib0090_set_tune_state +EXPORT_SYMBOL drivers/media/dvb-frontends/dib0090 0xee0b3789 dib0090_get_wbd_target +EXPORT_SYMBOL drivers/media/dvb-frontends/dib3000mb 0xd59e5fda dib3000mb_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/dib3000mc 0x0a2bce45 dib3000mc_i2c_enumeration +EXPORT_SYMBOL drivers/media/dvb-frontends/dib3000mc 0x215c0591 dib3000mc_get_tuner_i2c_master +EXPORT_SYMBOL drivers/media/dvb-frontends/dib3000mc 0x80eec425 dib3000mc_pid_control +EXPORT_SYMBOL drivers/media/dvb-frontends/dib3000mc 0xa8dbe06a dib3000mc_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/dib3000mc 0xd1367e22 dib3000mc_pid_parse +EXPORT_SYMBOL drivers/media/dvb-frontends/dib3000mc 0xefcc8e7b dib3000mc_set_config +EXPORT_SYMBOL drivers/media/dvb-frontends/dib7000m 0x3b878fa2 dib7000m_get_i2c_master +EXPORT_SYMBOL drivers/media/dvb-frontends/dib7000m 0x48777f88 dib7000m_pid_filter +EXPORT_SYMBOL drivers/media/dvb-frontends/dib7000m 0x8df044dd dib7000m_pid_filter_ctrl +EXPORT_SYMBOL drivers/media/dvb-frontends/dib7000m 0xe105c9d8 dib7000m_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/dib7000p 0xb9cdba6b dib7000p_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/dib8000 0xf61097be dib8000_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/dib9000 0x03d59410 dib9000_fw_pid_filter_ctrl +EXPORT_SYMBOL drivers/media/dvb-frontends/dib9000 0x10b3643d dib9000_fw_pid_filter +EXPORT_SYMBOL drivers/media/dvb-frontends/dib9000 0x25928e0c dib9000_firmware_post_pll_init +EXPORT_SYMBOL drivers/media/dvb-frontends/dib9000 0x30e9cf7c dib9000_fw_set_component_bus_speed +EXPORT_SYMBOL drivers/media/dvb-frontends/dib9000 0x43254739 dib9000_get_slave_frontend +EXPORT_SYMBOL drivers/media/dvb-frontends/dib9000 0x54acad48 dib9000_i2c_enumeration +EXPORT_SYMBOL drivers/media/dvb-frontends/dib9000 0x5541cd76 dib9000_get_component_bus_interface +EXPORT_SYMBOL drivers/media/dvb-frontends/dib9000 0x691751c6 dib9000_get_i2c_master +EXPORT_SYMBOL drivers/media/dvb-frontends/dib9000 0x80869c79 dib9000_set_gpio +EXPORT_SYMBOL drivers/media/dvb-frontends/dib9000 0x92d9a420 dib9000_set_i2c_adapter +EXPORT_SYMBOL drivers/media/dvb-frontends/dib9000 0xa930a295 dib9000_get_tuner_interface +EXPORT_SYMBOL drivers/media/dvb-frontends/dib9000 0xbe15b114 dib9000_set_slave_frontend +EXPORT_SYMBOL drivers/media/dvb-frontends/dib9000 0xbf21718a dib9000_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/dibx000_common 0x312d4d95 dibx000_init_i2c_master +EXPORT_SYMBOL drivers/media/dvb-frontends/dibx000_common 0xb326a60e dibx000_reset_i2c_master +EXPORT_SYMBOL drivers/media/dvb-frontends/dibx000_common 0xb3effe74 dibx000_exit_i2c_master +EXPORT_SYMBOL drivers/media/dvb-frontends/dibx000_common 0xca02393c dibx000_get_i2c_adapter +EXPORT_SYMBOL drivers/media/dvb-frontends/dibx000_common 0xdf05e470 dibx000_i2c_set_speed +EXPORT_SYMBOL drivers/media/dvb-frontends/drx39xyj/drx39xyj 0x4b8e6243 drx39xxj_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/drxd 0x5d39e0be drxd_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/drxk 0x4eb223cb drxk_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/ds3000 0x4b729d1c ds3000_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/dvb-pll 0x7f4230f7 dvb_pll_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/dvb_dummy_fe 0x0cec2665 dvb_dummy_fe_ofdm_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/dvb_dummy_fe 0x10fc815c dvb_dummy_fe_qam_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/dvb_dummy_fe 0xa722020d dvb_dummy_fe_qpsk_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/ec100 0xcffae13b ec100_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/helene 0x87816a52 helene_attach_s +EXPORT_SYMBOL drivers/media/dvb-frontends/helene 0xb648cceb helene_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/horus3a 0x8e4d4be2 horus3a_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/isl6405 0x93c7848e isl6405_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/isl6421 0xd34e06af isl6421_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/isl6423 0x128527fd isl6423_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/itd1000 0xd8277124 itd1000_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/ix2505v 0x34b30f85 ix2505v_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/l64781 0xd251f60f l64781_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/lg2160 0x68d1c266 lg2160_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/lgdt3305 0x01cd5c07 lgdt3305_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/lgdt3306a 0x2b45d8dc lgdt3306a_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/lgdt330x 0x210834ac lgdt330x_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/lgs8gl5 0xcc3d30fd lgs8gl5_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/lgs8gxx 0xd15bda38 lgs8gxx_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/lnbh25 0x44de2d7d lnbh25_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/lnbh29 0xd339f44d lnbh29_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/lnbp21 0x1c4e4e97 lnbp21_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/lnbp21 0x8a17c6bd lnbh24_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/lnbp22 0x29b9616d lnbp22_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/m88ds3103 0x57f687bc m88ds3103_get_agc_pwm +EXPORT_SYMBOL drivers/media/dvb-frontends/m88ds3103 0xadbc90d9 m88ds3103_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/m88rs2000 0xcb75d697 m88rs2000_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/mb86a16 0x17e3e041 mb86a16_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/mb86a20s 0xffe27f5b mb86a20s_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/mt312 0xac4540fb mt312_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/mt352 0xc0ae751f mt352_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/nxt200x 0xccb9b36b nxt200x_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/nxt6000 0x374ca89f nxt6000_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/or51132 0x409e512c or51132_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/or51211 0xdb93bcf9 or51211_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/s5h1409 0x583bd2d7 s5h1409_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/s5h1411 0xb9eac23c s5h1411_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/s5h1420 0x020d0039 s5h1420_get_tuner_i2c_adapter +EXPORT_SYMBOL drivers/media/dvb-frontends/s5h1420 0x87771cd5 s5h1420_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/s5h1432 0x2352c078 s5h1432_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/s921 0xe35b726a s921_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/si21xx 0x40802230 si21xx_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/sp8870 0xf178608e sp8870_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/sp887x 0x6e99cbb7 sp887x_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/stb0899 0x9b93fcd8 stb0899_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/stb6000 0x08c2c53f stb6000_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/stb6100 0xcc74d5ea stb6100_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/stv0288 0xded77436 stv0288_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/stv0297 0x0c2d2f43 stv0297_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/stv0299 0x7a65ec04 stv0299_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/stv0367 0x1ba80285 stv0367ddb_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/stv0367 0x6b367d64 stv0367ter_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/stv0367 0xde957b8c stv0367cab_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/stv0900 0x0047c2d1 stv0900_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/stv090x 0x78388903 stv090x_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/stv6110 0xf1c847ce stv6110_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/stv6110x 0xad5af7b2 stv6110x_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/tda10021 0x8107cd4c tda10021_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/tda10023 0x9261fb6b tda10023_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/tda10048 0x928ec4c3 tda10048_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/tda1004x 0xd1cf580e tda10046_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/tda1004x 0xeece108c tda10045_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/tda10086 0x31842123 tda10086_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/tda665x 0xfda49357 tda665x_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/tda8083 0x26b10d21 tda8083_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/tda8261 0x3ccf5656 tda8261_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/tda826x 0xbd6c3e8c tda826x_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/ts2020 0xd6ee8811 ts2020_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/tua6100 0x60d86a76 tua6100_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/ves1820 0xe61a4186 ves1820_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/ves1x93 0x031d5e92 ves1x93_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/zd1301_demod 0x839d1041 zd1301_demod_get_i2c_adapter +EXPORT_SYMBOL drivers/media/dvb-frontends/zd1301_demod 0xb4aa5126 zd1301_demod_get_dvb_frontend +EXPORT_SYMBOL drivers/media/dvb-frontends/zl10036 0x3860386c zl10036_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/zl10039 0x7b8a435e zl10039_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/zl10353 0xaa419d78 zl10353_attach +EXPORT_SYMBOL drivers/media/pci/b2c2/b2c2-flexcop-pci 0x012b784a flexcop_dma_xfer_control +EXPORT_SYMBOL drivers/media/pci/b2c2/b2c2-flexcop-pci 0x28e6171e flexcop_dma_config +EXPORT_SYMBOL drivers/media/pci/b2c2/b2c2-flexcop-pci 0x2fe4a260 flexcop_dma_allocate +EXPORT_SYMBOL drivers/media/pci/b2c2/b2c2-flexcop-pci 0x3a0289f7 flexcop_dma_control_size_irq +EXPORT_SYMBOL drivers/media/pci/b2c2/b2c2-flexcop-pci 0x5107122b flexcop_dma_config_timer +EXPORT_SYMBOL drivers/media/pci/b2c2/b2c2-flexcop-pci 0x89774034 flexcop_dma_control_timer_irq +EXPORT_SYMBOL drivers/media/pci/b2c2/b2c2-flexcop-pci 0xa876457a flexcop_dma_free +EXPORT_SYMBOL drivers/media/pci/bt8xx/bt878 0x2e083b6a bt878_stop +EXPORT_SYMBOL drivers/media/pci/bt8xx/bt878 0x5261e31e bt878_device_control +EXPORT_SYMBOL drivers/media/pci/bt8xx/bt878 0x7b4572b8 bt878_start +EXPORT_SYMBOL drivers/media/pci/bt8xx/bt878 0xa3c8a9a0 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 0x488a383b bttv_sub_unregister +EXPORT_SYMBOL drivers/media/pci/bt8xx/bttv 0x7a156909 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/bttv 0xf28a060c bttv_sub_register +EXPORT_SYMBOL drivers/media/pci/bt8xx/dst 0x0360f543 dst_wait_dst_ready +EXPORT_SYMBOL drivers/media/pci/bt8xx/dst 0x29702133 rdc_reset_state +EXPORT_SYMBOL drivers/media/pci/bt8xx/dst 0x2eb3f0c1 dst_error_recovery +EXPORT_SYMBOL drivers/media/pci/bt8xx/dst 0x40f0a20b read_dst +EXPORT_SYMBOL drivers/media/pci/bt8xx/dst 0x43a983fd dst_check_sum +EXPORT_SYMBOL drivers/media/pci/bt8xx/dst 0x83cd2d00 dst_pio_disable +EXPORT_SYMBOL drivers/media/pci/bt8xx/dst 0xae5a2f0b dst_error_bailout +EXPORT_SYMBOL drivers/media/pci/bt8xx/dst 0xca2aa620 dst_comm_init +EXPORT_SYMBOL drivers/media/pci/bt8xx/dst 0xeef2b512 write_dst +EXPORT_SYMBOL drivers/media/pci/bt8xx/dst 0xf04b0920 dst_attach +EXPORT_SYMBOL drivers/media/pci/bt8xx/dst_ca 0x3e24fcc5 dst_ca_attach +EXPORT_SYMBOL drivers/media/pci/cx18/cx18 0x19cd4f20 cx18_release_stream +EXPORT_SYMBOL drivers/media/pci/cx18/cx18 0x2cdea06d cx18_reset_ir_gpio +EXPORT_SYMBOL drivers/media/pci/cx18/cx18 0x68d11f80 cx18_claim_stream +EXPORT_SYMBOL drivers/media/pci/cx18/cx18 0xa2a7e2e0 cx18_ext_init +EXPORT_SYMBOL drivers/media/pci/cx18/cx18 0xe6ab7663 cx18_stop_v4l2_encode_stream +EXPORT_SYMBOL drivers/media/pci/cx18/cx18 0xf42c0f88 cx18_start_v4l2_encode_stream +EXPORT_SYMBOL drivers/media/pci/cx23885/altera-ci 0x55e9d0ec altera_ci_init +EXPORT_SYMBOL drivers/media/pci/cx23885/altera-ci 0x6ff7510d altera_ci_tuner_reset +EXPORT_SYMBOL drivers/media/pci/cx23885/altera-ci 0xdb3faf38 altera_ci_release +EXPORT_SYMBOL drivers/media/pci/cx23885/altera-ci 0xe66b9812 altera_ci_irq +EXPORT_SYMBOL drivers/media/pci/cx25821/cx25821 0x17b8e405 cx25821_set_gpiopin_direction +EXPORT_SYMBOL drivers/media/pci/cx25821/cx25821 0x1f9f7387 cx25821_riscmem_alloc +EXPORT_SYMBOL drivers/media/pci/cx25821/cx25821 0x44b517f5 cx25821_print_irqbits +EXPORT_SYMBOL drivers/media/pci/cx25821/cx25821 0xa41a15b2 cx25821_risc_databuffer_audio +EXPORT_SYMBOL drivers/media/pci/cx25821/cx25821 0xb30e933d cx25821_dev_unregister +EXPORT_SYMBOL drivers/media/pci/cx25821/cx25821 0xc968eff6 cx25821_dev_get +EXPORT_SYMBOL drivers/media/pci/cx25821/cx25821 0xdda5f2cb cx25821_sram_channel_dump_audio +EXPORT_SYMBOL drivers/media/pci/cx25821/cx25821 0xe9050411 cx25821_sram_channels +EXPORT_SYMBOL drivers/media/pci/cx25821/cx25821 0xef43dcec cx25821_sram_channel_setup_audio +EXPORT_SYMBOL drivers/media/pci/cx88/cx88-vp3054-i2c 0x0cb0fe3f vp3054_i2c_remove +EXPORT_SYMBOL drivers/media/pci/cx88/cx88-vp3054-i2c 0xb0d2807e vp3054_i2c_probe +EXPORT_SYMBOL drivers/media/pci/cx88/cx8800 0x6fc27ebc cx88_set_freq +EXPORT_SYMBOL drivers/media/pci/cx88/cx8800 0x9995c3d2 cx88_querycap +EXPORT_SYMBOL drivers/media/pci/cx88/cx8800 0x9cb8d5f0 cx88_enum_input +EXPORT_SYMBOL drivers/media/pci/cx88/cx8800 0xe49c515a cx88_video_mux +EXPORT_SYMBOL drivers/media/pci/cx88/cx8802 0x029bd6e0 cx8802_unregister_driver +EXPORT_SYMBOL drivers/media/pci/cx88/cx8802 0x141a6a3e cx8802_buf_prepare +EXPORT_SYMBOL drivers/media/pci/cx88/cx8802 0x22c466c6 cx8802_register_driver +EXPORT_SYMBOL drivers/media/pci/cx88/cx8802 0x28b0cb00 cx8802_buf_queue +EXPORT_SYMBOL drivers/media/pci/cx88/cx8802 0x342399f9 cx8802_get_driver +EXPORT_SYMBOL drivers/media/pci/cx88/cx8802 0x45ea4aa7 cx8802_cancel_buffers +EXPORT_SYMBOL drivers/media/pci/cx88/cx8802 0xa523838d cx8802_start_dma +EXPORT_SYMBOL drivers/media/pci/cx88/cx88xx 0x0526aae6 cx88_sram_channel_dump +EXPORT_SYMBOL drivers/media/pci/cx88/cx88xx 0x06f1c810 cx88_sram_channel_setup +EXPORT_SYMBOL drivers/media/pci/cx88/cx88xx 0x0fbb2bd2 cx88_set_tvnorm +EXPORT_SYMBOL drivers/media/pci/cx88/cx88xx 0x34618262 cx88_newstation +EXPORT_SYMBOL drivers/media/pci/cx88/cx88xx 0x38519167 cx88_core_put +EXPORT_SYMBOL drivers/media/pci/cx88/cx88xx 0x3956413e cx88_core_get +EXPORT_SYMBOL drivers/media/pci/cx88/cx88xx 0x4663cc89 cx88_shutdown +EXPORT_SYMBOL drivers/media/pci/cx88/cx88xx 0x5b46a433 cx88_set_stereo +EXPORT_SYMBOL drivers/media/pci/cx88/cx88xx 0x5edb7ae5 cx88_print_irqbits +EXPORT_SYMBOL drivers/media/pci/cx88/cx88xx 0x5eeae8f7 cx88_wakeup +EXPORT_SYMBOL drivers/media/pci/cx88/cx88xx 0x6141c8c5 cx88_tuner_callback +EXPORT_SYMBOL drivers/media/pci/cx88/cx88xx 0x6b339bee cx88_get_stereo +EXPORT_SYMBOL drivers/media/pci/cx88/cx88xx 0x8d88137a cx88_sram_channels +EXPORT_SYMBOL drivers/media/pci/cx88/cx88xx 0x8db63834 cx88_risc_buffer +EXPORT_SYMBOL drivers/media/pci/cx88/cx88xx 0x904b8696 cx88_audio_thread +EXPORT_SYMBOL drivers/media/pci/cx88/cx88xx 0xb06450ea cx88_dsp_detect_stereo_sap +EXPORT_SYMBOL drivers/media/pci/cx88/cx88xx 0xb9770441 cx88_reset +EXPORT_SYMBOL drivers/media/pci/cx88/cx88xx 0xc3bb67ba cx88_risc_databuffer +EXPORT_SYMBOL drivers/media/pci/cx88/cx88xx 0xc678d32d cx88_set_scale +EXPORT_SYMBOL drivers/media/pci/cx88/cx88xx 0xd3128db1 cx88_core_irq +EXPORT_SYMBOL drivers/media/pci/cx88/cx88xx 0xd5c095f0 cx88_vdev_init +EXPORT_SYMBOL drivers/media/pci/cx88/cx88xx 0xda91657e cx88_ir_stop +EXPORT_SYMBOL drivers/media/pci/cx88/cx88xx 0xe576b3a1 cx88_ir_start +EXPORT_SYMBOL drivers/media/pci/cx88/cx88xx 0xe81f9e13 cx88_set_tvaudio +EXPORT_SYMBOL drivers/media/pci/ddbridge/ddbridge-dummy-fe 0x49c6eb14 ddbridge_dummy_fe_qam_attach +EXPORT_SYMBOL drivers/media/pci/ivtv/ivtv 0x051017f1 ivtv_claim_stream +EXPORT_SYMBOL drivers/media/pci/ivtv/ivtv 0x054b658a ivtv_start_v4l2_encode_stream +EXPORT_SYMBOL drivers/media/pci/ivtv/ivtv 0x14f67530 ivtv_debug +EXPORT_SYMBOL drivers/media/pci/ivtv/ivtv 0x2533c05f ivtv_vapi +EXPORT_SYMBOL drivers/media/pci/ivtv/ivtv 0x3d828cd8 ivtv_set_irq_mask +EXPORT_SYMBOL drivers/media/pci/ivtv/ivtv 0x42efb7dc ivtv_vapi_result +EXPORT_SYMBOL drivers/media/pci/ivtv/ivtv 0x559f7bfc ivtv_reset_ir_gpio +EXPORT_SYMBOL drivers/media/pci/ivtv/ivtv 0x5ad6c9e9 ivtv_udma_unmap +EXPORT_SYMBOL drivers/media/pci/ivtv/ivtv 0x6e484e25 ivtv_udma_alloc +EXPORT_SYMBOL drivers/media/pci/ivtv/ivtv 0x9bd0e56b ivtv_ext_init +EXPORT_SYMBOL drivers/media/pci/ivtv/ivtv 0xa9a31ac3 ivtv_udma_setup +EXPORT_SYMBOL drivers/media/pci/ivtv/ivtv 0xad7319c6 ivtv_api +EXPORT_SYMBOL drivers/media/pci/ivtv/ivtv 0xb69ce1c3 ivtv_firmware_check +EXPORT_SYMBOL drivers/media/pci/ivtv/ivtv 0xbe1e3d43 ivtv_init_on_first_open +EXPORT_SYMBOL drivers/media/pci/ivtv/ivtv 0xd7dd7e82 ivtv_clear_irq_mask +EXPORT_SYMBOL drivers/media/pci/ivtv/ivtv 0xe03fe014 ivtv_release_stream +EXPORT_SYMBOL drivers/media/pci/ivtv/ivtv 0xfa78cd09 ivtv_stop_v4l2_encode_stream +EXPORT_SYMBOL drivers/media/pci/ivtv/ivtv 0xfd61d908 ivtv_udma_prepare +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 0x12460fc4 saa7134_tvaudio_setmute +EXPORT_SYMBOL drivers/media/pci/saa7134/saa7134 0x3ae27301 saa7134_set_gpio +EXPORT_SYMBOL drivers/media/pci/saa7134/saa7134 0x3e4827f3 saa_dsp_writel +EXPORT_SYMBOL drivers/media/pci/saa7134/saa7134 0x486bb46d saa7134_pgtable_build +EXPORT_SYMBOL drivers/media/pci/saa7134/saa7134 0x5091cb19 saa7134_dmasound_exit +EXPORT_SYMBOL drivers/media/pci/saa7134/saa7134 0x581824fa saa7134_devlist_lock +EXPORT_SYMBOL drivers/media/pci/saa7134/saa7134 0x730c4be3 saa7134_boards +EXPORT_SYMBOL drivers/media/pci/saa7134/saa7134 0x845d4fde saa7134_ts_unregister +EXPORT_SYMBOL drivers/media/pci/saa7134/saa7134 0x9ba2b2c5 saa7134_ts_register +EXPORT_SYMBOL drivers/media/pci/saa7134/saa7134 0xacd148c2 saa7134_pgtable_alloc +EXPORT_SYMBOL drivers/media/pci/saa7134/saa7134 0xdb67bf8e saa7134_set_dmabits +EXPORT_SYMBOL drivers/media/pci/saa7134/saa7134 0xdfc5b588 saa7134_pgtable_free +EXPORT_SYMBOL drivers/media/pci/saa7134/saa7134 0xf899b712 saa7134_dmasound_init +EXPORT_SYMBOL drivers/media/pci/ttpci/ttpci-eeprom 0x041b0362 ttpci_eeprom_parse_mac +EXPORT_SYMBOL drivers/media/pci/ttpci/ttpci-eeprom 0x693e74ba ttpci_eeprom_decode_mac +EXPORT_SYMBOL drivers/media/radio/tea575x 0x165b643c snd_tea575x_init +EXPORT_SYMBOL drivers/media/radio/tea575x 0x1db3ac14 snd_tea575x_g_tuner +EXPORT_SYMBOL drivers/media/radio/tea575x 0x4200f0c5 snd_tea575x_exit +EXPORT_SYMBOL drivers/media/radio/tea575x 0x5c692fc4 snd_tea575x_hw_init +EXPORT_SYMBOL drivers/media/radio/tea575x 0xa0b54758 snd_tea575x_s_hw_freq_seek +EXPORT_SYMBOL drivers/media/radio/tea575x 0xd59d6b6b snd_tea575x_enum_freq_bands +EXPORT_SYMBOL drivers/media/radio/tea575x 0xe7cbbf0d snd_tea575x_set_freq +EXPORT_SYMBOL drivers/media/rc/rc-core 0x03ca17f3 ir_raw_handler_register +EXPORT_SYMBOL drivers/media/rc/rc-core 0x2ad91f6e ir_raw_gen_pl +EXPORT_SYMBOL drivers/media/rc/rc-core 0x3131b773 ir_raw_encode_scancode +EXPORT_SYMBOL drivers/media/rc/rc-core 0x4725eda1 ir_raw_encode_carrier +EXPORT_SYMBOL drivers/media/rc/rc-core 0x7cf52901 ir_raw_gen_manchester +EXPORT_SYMBOL drivers/media/rc/rc-core 0x9e12e343 ir_raw_gen_pd +EXPORT_SYMBOL drivers/media/rc/rc-core 0xc3e49376 ir_raw_handler_unregister +EXPORT_SYMBOL drivers/media/tuners/fc0011 0xb7b87116 fc0011_attach +EXPORT_SYMBOL drivers/media/tuners/fc0012 0x8d2f1b1f fc0012_attach +EXPORT_SYMBOL drivers/media/tuners/fc0013 0x2af64076 fc0013_rc_cal_reset +EXPORT_SYMBOL drivers/media/tuners/fc0013 0x74b6902f fc0013_rc_cal_add +EXPORT_SYMBOL drivers/media/tuners/fc0013 0x98ca802f fc0013_attach +EXPORT_SYMBOL drivers/media/tuners/max2165 0x7083fc59 max2165_attach +EXPORT_SYMBOL drivers/media/tuners/mc44s803 0x7c6b422e mc44s803_attach +EXPORT_SYMBOL drivers/media/tuners/mt2060 0x9bafc8fa mt2060_attach +EXPORT_SYMBOL drivers/media/tuners/mt2131 0xd054d806 mt2131_attach +EXPORT_SYMBOL drivers/media/tuners/mt2266 0x4b0ef3a2 mt2266_attach +EXPORT_SYMBOL drivers/media/tuners/mxl5005s 0x435a09f3 mxl5005s_attach +EXPORT_SYMBOL drivers/media/tuners/qt1010 0x6cff1570 qt1010_attach +EXPORT_SYMBOL drivers/media/tuners/tda18218 0xcfa2d01d tda18218_attach +EXPORT_SYMBOL drivers/media/tuners/tuner-types 0x4c48939e tuners +EXPORT_SYMBOL drivers/media/tuners/tuner-types 0xc2821775 tuner_count +EXPORT_SYMBOL drivers/media/tuners/tuner-xc2028 0x0e87e350 xc2028_attach +EXPORT_SYMBOL drivers/media/tuners/xc4000 0xa84b24db xc4000_attach +EXPORT_SYMBOL drivers/media/tuners/xc5000 0x1bb3089f xc5000_attach +EXPORT_SYMBOL drivers/media/usb/cx231xx/cx231xx 0xa9c75457 cx231xx_unregister_extension +EXPORT_SYMBOL drivers/media/usb/cx231xx/cx231xx 0xcb835f92 cx231xx_register_extension +EXPORT_SYMBOL drivers/media/usb/dvb-usb-v2/dvb_usb_v2 0x123365b4 dvb_usbv2_generic_rw_locked +EXPORT_SYMBOL drivers/media/usb/dvb-usb-v2/dvb_usb_v2 0x23ca4e79 dvb_usbv2_reset_resume +EXPORT_SYMBOL drivers/media/usb/dvb-usb-v2/dvb_usb_v2 0x2c94ba22 dvb_usbv2_generic_rw +EXPORT_SYMBOL drivers/media/usb/dvb-usb-v2/dvb_usb_v2 0x42748475 dvb_usbv2_resume +EXPORT_SYMBOL drivers/media/usb/dvb-usb-v2/dvb_usb_v2 0x473826c0 dvb_usbv2_suspend +EXPORT_SYMBOL drivers/media/usb/dvb-usb-v2/dvb_usb_v2 0x49ba6ff4 dvb_usbv2_generic_write +EXPORT_SYMBOL drivers/media/usb/dvb-usb-v2/dvb_usb_v2 0x4d58edcc dvb_usbv2_probe +EXPORT_SYMBOL drivers/media/usb/dvb-usb-v2/dvb_usb_v2 0x738b088f dvb_usbv2_generic_write_locked +EXPORT_SYMBOL drivers/media/usb/dvb-usb-v2/dvb_usb_v2 0xfd5e98c8 dvb_usbv2_disconnect +EXPORT_SYMBOL drivers/media/usb/dvb-usb/dvb-usb 0x03a7e00b dvb_usb_generic_write +EXPORT_SYMBOL drivers/media/usb/dvb-usb/dvb-usb 0x53601919 dvb_usb_generic_rw +EXPORT_SYMBOL drivers/media/usb/dvb-usb/dvb-usb 0x8b6f5395 dvb_usb_get_hexline +EXPORT_SYMBOL drivers/media/usb/dvb-usb/dvb-usb 0x9521a406 usb_cypress_load_firmware +EXPORT_SYMBOL drivers/media/usb/dvb-usb/dvb-usb 0xa3ad941d dvb_usb_device_exit +EXPORT_SYMBOL drivers/media/usb/dvb-usb/dvb-usb 0xd0ea2768 dvb_usb_nec_rc_key_to_event +EXPORT_SYMBOL drivers/media/usb/dvb-usb/dvb-usb 0xf14ff5d1 dvb_usb_device_init +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 0xd4e288db rc_map_af9005_table_size +EXPORT_SYMBOL drivers/media/usb/dvb-usb/dvb-usb-af9005-remote 0xeea40536 af9005_rc_decode +EXPORT_SYMBOL drivers/media/usb/dvb-usb/dvb-usb-dibusb-common 0x069e9fcd dibusb_read_eeprom_byte +EXPORT_SYMBOL drivers/media/usb/dvb-usb/dvb-usb-dibusb-common 0x0bc891cd dibusb_pid_filter_ctrl +EXPORT_SYMBOL drivers/media/usb/dvb-usb/dvb-usb-dibusb-common 0x1425f04f dibusb_pid_filter +EXPORT_SYMBOL drivers/media/usb/dvb-usb/dvb-usb-dibusb-common 0x40f85f13 dibusb2_0_streaming_ctrl +EXPORT_SYMBOL drivers/media/usb/dvb-usb/dvb-usb-dibusb-common 0x7746a05a dibusb_rc_query +EXPORT_SYMBOL drivers/media/usb/dvb-usb/dvb-usb-dibusb-common 0x7af7a5e1 dibusb2_0_power_ctrl +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 0xb8c4daea dibusb_power_ctrl +EXPORT_SYMBOL drivers/media/usb/dvb-usb/dvb-usb-dibusb-common 0xdb9530cd dibusb_streaming_ctrl +EXPORT_SYMBOL drivers/media/usb/dvb-usb/dvb-usb-dibusb-common 0xe842f1e3 dibusb_i2c_algo +EXPORT_SYMBOL drivers/media/usb/dvb-usb/dvb-usb-dibusb-mc-common 0x1683e82a dibusb_dib3000mc_tuner_attach +EXPORT_SYMBOL drivers/media/usb/dvb-usb/dvb-usb-dibusb-mc-common 0xfd8642ac dibusb_dib3000mc_frontend_attach +EXPORT_SYMBOL drivers/media/usb/em28xx/em28xx 0x23082990 em28xx_unregister_extension +EXPORT_SYMBOL drivers/media/usb/em28xx/em28xx 0x61d20687 em28xx_register_extension +EXPORT_SYMBOL drivers/media/usb/go7007/go7007 0x217a1557 go7007_snd_init +EXPORT_SYMBOL drivers/media/usb/go7007/go7007 0x2b81c241 go7007_read_interrupt +EXPORT_SYMBOL drivers/media/usb/go7007/go7007 0x32824ef2 go7007_register_encoder +EXPORT_SYMBOL drivers/media/usb/go7007/go7007 0x33ee6f53 go7007_update_board +EXPORT_SYMBOL drivers/media/usb/go7007/go7007 0x72a9ffc0 go7007_parse_video_stream +EXPORT_SYMBOL drivers/media/usb/go7007/go7007 0xa1255d75 go7007_alloc +EXPORT_SYMBOL drivers/media/usb/go7007/go7007 0xa477bba9 go7007_snd_remove +EXPORT_SYMBOL drivers/media/usb/go7007/go7007 0xacc9f9e3 go7007_boot_encoder +EXPORT_SYMBOL drivers/media/usb/go7007/go7007 0xf81d3e24 go7007_read_addr +EXPORT_SYMBOL drivers/media/usb/gspca/gspca_main 0x3615cb98 gspca_suspend +EXPORT_SYMBOL drivers/media/usb/gspca/gspca_main 0x5729e3d3 gspca_coarse_grained_expo_autogain +EXPORT_SYMBOL drivers/media/usb/gspca/gspca_main 0x7528a1c6 gspca_dev_probe +EXPORT_SYMBOL drivers/media/usb/gspca/gspca_main 0x7b225152 gspca_disconnect +EXPORT_SYMBOL drivers/media/usb/gspca/gspca_main 0x7b6f8371 gspca_frame_add +EXPORT_SYMBOL drivers/media/usb/gspca/gspca_main 0x8f9c9610 gspca_resume +EXPORT_SYMBOL drivers/media/usb/gspca/gspca_main 0x9670af2c gspca_debug +EXPORT_SYMBOL drivers/media/usb/gspca/gspca_main 0x9737adbe gspca_expo_autogain +EXPORT_SYMBOL drivers/media/usb/gspca/gspca_main 0xc6054e71 gspca_dev_probe2 +EXPORT_SYMBOL drivers/media/usb/tm6000/tm6000 0x2e2f8035 tm6000_unregister_extension +EXPORT_SYMBOL drivers/media/usb/tm6000/tm6000 0x3b723b55 tm6000_register_extension +EXPORT_SYMBOL drivers/media/usb/tm6000/tm6000 0x41eebc22 tm6000_init_digital_mode +EXPORT_SYMBOL drivers/media/usb/ttusb-dec/ttusbdecfe 0xc4f9a706 ttusbdecfe_dvbs_attach +EXPORT_SYMBOL drivers/media/usb/ttusb-dec/ttusbdecfe 0xef3ea6cc ttusbdecfe_dvbt_attach +EXPORT_SYMBOL drivers/media/v4l2-core/v4l2-mem2mem 0x21b4c875 v4l2_m2m_mmap +EXPORT_SYMBOL drivers/media/v4l2-core/v4l2-mem2mem 0x459e133f v4l2_m2m_get_curr_priv +EXPORT_SYMBOL drivers/media/v4l2-core/v4l2-mem2mem 0x8fc9a586 v4l2_m2m_buf_done_and_job_finish +EXPORT_SYMBOL drivers/media/v4l2-core/v4l2-mem2mem 0xb25290b5 v4l2_m2m_get_vq +EXPORT_SYMBOL drivers/media/v4l2-core/v4l2-mem2mem 0xbe442d0f v4l2_m2m_job_finish +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x02b00980 __v4l2_clk_register_fixed +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x0469dbf7 v4l2_clk_get_rate +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x048b3f28 v4l2_s_ctrl +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x0614dd5a v4l2_video_std_frame_period +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x06294393 v4l2_ctrl_g_ctrl +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x082737e8 v4l2_ctrl_merge +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 0x1e177ccc v4l2_ctrl_new_std +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x2342f1ae v4l2_prio_open +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x28b12cc9 v4l2_format_info +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x2b561534 v4l2_ctrl_subscribe_event +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x2c0fec1d v4l2_ctrl_new_custom +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 0x3420452e v4l2_ctrl_sub_ev_ops +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x3adbd595 v4l2_field_names +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x3b18717e v4l2_clk_disable +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x3b8b1f25 v4l2_ctrl_new_std_menu +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x3bdd0f94 v4l2_prio_change +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x3bdece06 v4l2_clk_register +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x3d63d7af v4l2_async_notifier_unregister +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x3e9435ff __v4l2_ctrl_grab +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x3f9f83a4 v4l2_subdev_init +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x425ad3c0 v4l2_s_ext_ctrls +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x427a9f8f v4l2_ctrl_log_status +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x46636b85 v4l2_clk_get +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x484d2b63 __video_register_device +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x4dac123b v4l2_ctrl_radio_filter +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x514453a9 v4l2_clk_enable +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x600a27f4 v4l2_ctrl_handler_free +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x71bddc16 v4l2_clk_set_rate +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x73a1b7d2 v4l2_async_notifier_init +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x741301d6 video_ioctl2 +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x768d6f89 video_device_release +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x7b2942bb __v4l2_ctrl_s_ctrl_int64 +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x7ff72ec2 __v4l2_ctrl_s_ctrl_compound +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x8106095a v4l2_prio_max +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x8280534c v4l2_ctrl_fill +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x84aa4537 v4l2_clk_unregister +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x86be4b61 v4l2_ctrl_add_handler +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x86e84791 v4l2_ctrl_subdev_subscribe_event +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x89e3897d v4l2_ctrl_query_fill +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x8a08354c video_device_release_empty +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x905311f6 v4l2_ctrl_notify +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x944e9f27 v4l2_async_register_subdev +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x97df0705 v4l2_async_subdev_notifier_register +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x9b0176b3 v4l2_ctrl_auto_cluster +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x9e376fe0 v4l2_ctrl_handler_init_class +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xa4535e75 v4l2_ctrl_cluster +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xa534a6b7 video_devdata +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xa57ed57f v4l2_queryctrl +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xa6b82ce5 video_unregister_device +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xa9eef3a1 __v4l2_ctrl_modify_range +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xaa39624c v4l2_clk_unregister_fixed +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xacb5853c v4l2_ctrl_poll +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xacd3c3b5 v4l2_try_ext_ctrls +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xb0b0cecf v4l2_subdev_call_wrappers +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xb1241ee7 v4l2_async_notifier_register +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xb77b0159 v4l2_prio_init +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xb860c62a v4l2_ctrl_request_setup +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xbbc10a22 v4l2_ctrl_handler_log_status +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xbc5671dc v4l_printk_ioctl +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xbd987b29 v4l2_ctrl_new_fwnode_properties +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xc135ea33 v4l2_ctrl_find +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xc739d927 video_device_alloc +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xc8d37255 __v4l2_ctrl_s_ctrl +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xccaf55a5 __v4l2_ctrl_s_ctrl_string +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xcce69e6e v4l2_g_ctrl +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 0xd28da8be v4l2_ctrl_new_std_compound +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xd664186d v4l2_ctrl_request_complete +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xd9b7c753 v4l2_ctrl_activate +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xe06a2266 v4l2_g_ext_ctrls +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xe2b92059 v4l2_video_std_construct +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xe3c521ff v4l2_ctrl_handler_setup +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xe7f927f3 v4l2_async_unregister_subdev +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xe7ffea0b v4l2_clk_put +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xeb1005c3 v4l2_ctrl_new_std_menu_items +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xeed7f723 v4l2_querymenu +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xf23ab45b v4l2_ctrl_subdev_log_status +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xf3251e7b v4l2_norm_to_name +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xf379d42c v4l2_ctrl_new_int_menu +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xf4f39ed0 v4l2_query_ext_ctrl +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xf50fecbc v4l2_ctrl_replace +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xf7acf382 v4l2_ctrl_g_ctrl_int64 +EXPORT_SYMBOL drivers/memstick/core/memstick 0x18311c8c memstick_unregister_driver +EXPORT_SYMBOL drivers/memstick/core/memstick 0x198e5cb5 memstick_resume_host +EXPORT_SYMBOL drivers/memstick/core/memstick 0x1ea9ffb6 memstick_new_req +EXPORT_SYMBOL drivers/memstick/core/memstick 0x32c6abbe memstick_suspend_host +EXPORT_SYMBOL drivers/memstick/core/memstick 0x3599c5ed memstick_remove_host +EXPORT_SYMBOL drivers/memstick/core/memstick 0x376f5b17 memstick_next_req +EXPORT_SYMBOL drivers/memstick/core/memstick 0x4a4e5778 memstick_init_req_sg +EXPORT_SYMBOL drivers/memstick/core/memstick 0x5804d73a memstick_detect_change +EXPORT_SYMBOL drivers/memstick/core/memstick 0x5b9b6144 memstick_free_host +EXPORT_SYMBOL drivers/memstick/core/memstick 0x978a0105 memstick_add_host +EXPORT_SYMBOL drivers/memstick/core/memstick 0xacbfbce1 memstick_set_rw_addr +EXPORT_SYMBOL drivers/memstick/core/memstick 0xacfbc05e memstick_register_driver +EXPORT_SYMBOL drivers/memstick/core/memstick 0xae50437c memstick_init_req +EXPORT_SYMBOL drivers/memstick/core/memstick 0xcf6a7446 memstick_alloc_host +EXPORT_SYMBOL drivers/memstick/host/r592 0x52f1b23b memstick_debug_get_tpc_name +EXPORT_SYMBOL drivers/message/fusion/mptbase 0x02bd166d mpt_get_msg_frame +EXPORT_SYMBOL drivers/message/fusion/mptbase 0x0918d18a mpt_send_handshake_request +EXPORT_SYMBOL drivers/message/fusion/mptbase 0x092b8719 mpt_register +EXPORT_SYMBOL drivers/message/fusion/mptbase 0x0e2990f0 mpt_raid_phys_disk_pg0 +EXPORT_SYMBOL drivers/message/fusion/mptbase 0x14a1b5e5 mpt_Soft_Hard_ResetHandler +EXPORT_SYMBOL drivers/message/fusion/mptbase 0x1df56f93 mpt_config +EXPORT_SYMBOL drivers/message/fusion/mptbase 0x4647b3f9 mpt_verify_adapter +EXPORT_SYMBOL drivers/message/fusion/mptbase 0x502108d0 mpt_fwfault_debug +EXPORT_SYMBOL drivers/message/fusion/mptbase 0x50ec6954 mpt_attach +EXPORT_SYMBOL drivers/message/fusion/mptbase 0x536e95bd mpt_raid_phys_disk_pg1 +EXPORT_SYMBOL drivers/message/fusion/mptbase 0x610b257e mpt_reset_deregister +EXPORT_SYMBOL drivers/message/fusion/mptbase 0x659b607c mpt_device_driver_register +EXPORT_SYMBOL drivers/message/fusion/mptbase 0x67b8e5f7 mpt_put_msg_frame_hi_pri +EXPORT_SYMBOL drivers/message/fusion/mptbase 0x74a0134a mpt_device_driver_deregister +EXPORT_SYMBOL drivers/message/fusion/mptbase 0x754687fa mpt_findImVolumes +EXPORT_SYMBOL drivers/message/fusion/mptbase 0x7720b0db mpt_raid_phys_disk_get_num_paths +EXPORT_SYMBOL drivers/message/fusion/mptbase 0x84b15ba4 mpt_free_fw_memory +EXPORT_SYMBOL drivers/message/fusion/mptbase 0x859dbada mpt_set_taskmgmt_in_progress_flag +EXPORT_SYMBOL drivers/message/fusion/mptbase 0x8b1f0af1 mpt_reset_register +EXPORT_SYMBOL drivers/message/fusion/mptbase 0x8c7a1820 mpt_print_ioc_summary +EXPORT_SYMBOL drivers/message/fusion/mptbase 0x8cbccb08 mpt_put_msg_frame +EXPORT_SYMBOL drivers/message/fusion/mptbase 0x93134a8d mpt_alloc_fw_memory +EXPORT_SYMBOL drivers/message/fusion/mptbase 0x981efe92 mpt_deregister +EXPORT_SYMBOL drivers/message/fusion/mptbase 0x9c017159 mpt_clear_taskmgmt_in_progress_flag +EXPORT_SYMBOL drivers/message/fusion/mptbase 0xa31fe5f6 mpt_resume +EXPORT_SYMBOL drivers/message/fusion/mptbase 0xacefcf9c mptbase_sas_persist_operation +EXPORT_SYMBOL drivers/message/fusion/mptbase 0xb50bfe71 mpt_event_register +EXPORT_SYMBOL drivers/message/fusion/mptbase 0xc63fb6f9 mpt_free_msg_frame +EXPORT_SYMBOL drivers/message/fusion/mptbase 0xc6944bcb mpt_halt_firmware +EXPORT_SYMBOL drivers/message/fusion/mptbase 0xd6624778 mpt_suspend +EXPORT_SYMBOL drivers/message/fusion/mptbase 0xd7643e45 mpt_detach +EXPORT_SYMBOL drivers/message/fusion/mptbase 0xdd805159 ioc_list +EXPORT_SYMBOL drivers/message/fusion/mptbase 0xe1bdcee9 mpt_HardResetHandler +EXPORT_SYMBOL drivers/message/fusion/mptbase 0xe6c1e126 mpt_event_deregister +EXPORT_SYMBOL drivers/message/fusion/mptbase 0xfa28fccb mpt_GetIocState +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0x0aafbeee mptscsih_ioc_reset +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0x1896e91a mptscsih_taskmgmt_response_code +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0x1d79bce2 mptscsih_info +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0x20e388ac mptscsih_change_queue_depth +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0x22f4c0d1 mptscsih_remove +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0x27348fb1 mptscsih_host_attrs +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0x291aef8d mptscsih_shutdown +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0x2eee03d8 mptscsih_raid_id_to_num +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0x46a9db17 mptscsih_is_phys_disk +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0x4caa5932 mptscsih_event_process +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0x597aea4c mptscsih_abort +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0x606b83b9 mptscsih_slave_configure +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0x80b35ee4 mptscsih_dev_reset +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0x9166c572 mptscsih_io_done +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0x9592cbb9 mptscsih_scandv_complete +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0x999831dd mptscsih_get_scsi_lookup +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0xbee179b5 mptscsih_taskmgmt_complete +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0xc1184f7c mptscsih_IssueTaskMgmt +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0xc7996c5c mptscsih_suspend +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0xc876234b mptscsih_show_info +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0xcd4584d0 mptscsih_qcmd +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0xd3a831c3 mptscsih_host_reset +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0xd6ed2d2f mptscsih_slave_destroy +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0xda04d21a mptscsih_bus_reset +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0xeb5e5181 mptscsih_resume +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0xef96c73e mptscsih_flush_running_cmds +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0xf5a0c357 mptscsih_bios_param +EXPORT_SYMBOL drivers/mfd/axp20x 0x2a7f9a0c axp20x_device_probe +EXPORT_SYMBOL drivers/mfd/axp20x 0x365e3136 axp20x_match_device +EXPORT_SYMBOL drivers/mfd/axp20x 0xa58bcb8c axp20x_device_remove +EXPORT_SYMBOL drivers/mfd/dln2 0xbf47def2 dln2_register_event_cb +EXPORT_SYMBOL drivers/mfd/dln2 0xebb15396 dln2_unregister_event_cb +EXPORT_SYMBOL drivers/mfd/dln2 0xebe82575 dln2_transfer +EXPORT_SYMBOL drivers/mfd/htc-pasic3 0x77070ab5 pasic3_read_register +EXPORT_SYMBOL drivers/mfd/htc-pasic3 0xeb5b2b58 pasic3_write_register +EXPORT_SYMBOL drivers/mfd/mc13xxx-core 0x0960da15 mc13xxx_unlock +EXPORT_SYMBOL drivers/mfd/mc13xxx-core 0x0a73f6f1 mc13xxx_irq_status +EXPORT_SYMBOL drivers/mfd/mc13xxx-core 0x1722918a mc13xxx_irq_request +EXPORT_SYMBOL drivers/mfd/mc13xxx-core 0x40a2b930 mc13xxx_reg_read +EXPORT_SYMBOL drivers/mfd/mc13xxx-core 0x573a400d mc13xxx_irq_free +EXPORT_SYMBOL drivers/mfd/mc13xxx-core 0x5f9662df mc13xxx_irq_mask +EXPORT_SYMBOL drivers/mfd/mc13xxx-core 0xbc3135aa mc13xxx_get_flags +EXPORT_SYMBOL drivers/mfd/mc13xxx-core 0xc9216eed mc13xxx_irq_unmask +EXPORT_SYMBOL drivers/mfd/mc13xxx-core 0xda5b98ee mc13xxx_reg_rmw +EXPORT_SYMBOL drivers/mfd/mc13xxx-core 0xf309fcb0 mc13xxx_lock +EXPORT_SYMBOL drivers/mfd/mc13xxx-core 0xfe30c340 mc13xxx_reg_write +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 0x0992994a wm8994_base_regmap_config +EXPORT_SYMBOL drivers/mfd/wm8994 0x152ce87d wm8994_irq_init +EXPORT_SYMBOL drivers/mfd/wm8994 0x4738fe44 wm8994_irq_exit +EXPORT_SYMBOL drivers/mfd/wm8994 0x5d1ba407 wm8994_regmap_config +EXPORT_SYMBOL drivers/mfd/wm8994 0x6f211f9e wm8958_regmap_config +EXPORT_SYMBOL drivers/mfd/wm8994 0xf0431db3 wm1811_regmap_config +EXPORT_SYMBOL drivers/misc/ad525x_dpot 0x600fcc3a ad_dpot_remove +EXPORT_SYMBOL drivers/misc/ad525x_dpot 0xdd15db59 ad_dpot_probe +EXPORT_SYMBOL drivers/misc/altera-stapl/altera-stapl 0x5bafa76e altera_init +EXPORT_SYMBOL drivers/misc/c2port/core 0x0a959e04 c2port_device_register +EXPORT_SYMBOL drivers/misc/c2port/core 0x0d1a2e17 c2port_device_unregister +EXPORT_SYMBOL drivers/misc/mei/mei 0x1545cfd0 __tracepoint_mei_reg_read +EXPORT_SYMBOL drivers/misc/mei/mei 0xa5bff49d __tracepoint_mei_pci_cfg_read +EXPORT_SYMBOL drivers/misc/mei/mei 0xb93bb2a0 __tracepoint_mei_reg_write +EXPORT_SYMBOL drivers/misc/tifm_core 0x0ffb277f tifm_queue_work +EXPORT_SYMBOL drivers/misc/tifm_core 0x1490d2c5 tifm_unmap_sg +EXPORT_SYMBOL drivers/misc/tifm_core 0x198a0cd9 tifm_has_ms_pif +EXPORT_SYMBOL drivers/misc/tifm_core 0x592c784f tifm_free_device +EXPORT_SYMBOL drivers/misc/tifm_core 0x8da8412a tifm_alloc_adapter +EXPORT_SYMBOL drivers/misc/tifm_core 0xa0cee9e2 tifm_remove_adapter +EXPORT_SYMBOL drivers/misc/tifm_core 0xa767f157 tifm_free_adapter +EXPORT_SYMBOL drivers/misc/tifm_core 0xae17067f tifm_alloc_device +EXPORT_SYMBOL drivers/misc/tifm_core 0xb5d799af tifm_eject +EXPORT_SYMBOL drivers/misc/tifm_core 0xc609ea39 tifm_add_adapter +EXPORT_SYMBOL drivers/misc/tifm_core 0xcb0081bd tifm_register_driver +EXPORT_SYMBOL drivers/misc/tifm_core 0xf48bec29 tifm_unregister_driver +EXPORT_SYMBOL drivers/misc/tifm_core 0xf95d0c9d tifm_map_sg +EXPORT_SYMBOL drivers/mmc/host/cqhci 0x0a9cccac cqhci_deactivate +EXPORT_SYMBOL drivers/mmc/host/cqhci 0x1788074a cqhci_pltfm_init +EXPORT_SYMBOL drivers/mmc/host/cqhci 0x6be2ad2d cqhci_init +EXPORT_SYMBOL drivers/mmc/host/cqhci 0xa7a93106 cqhci_irq +EXPORT_SYMBOL drivers/mmc/host/cqhci 0xb8621f7c cqhci_resume +EXPORT_SYMBOL drivers/mtd/chips/cfi_util 0x367c43d8 cfi_varsize_frob +EXPORT_SYMBOL drivers/mtd/chips/cfi_util 0x5d8f05d3 cfi_merge_status +EXPORT_SYMBOL drivers/mtd/chips/cfi_util 0x697c7c8d cfi_build_cmd_addr +EXPORT_SYMBOL drivers/mtd/chips/cfi_util 0x97a2635e cfi_read_pri +EXPORT_SYMBOL drivers/mtd/chips/cfi_util 0xc197e5d8 cfi_send_gen_cmd +EXPORT_SYMBOL drivers/mtd/chips/cfi_util 0xf456382a cfi_fixup +EXPORT_SYMBOL drivers/mtd/chips/cfi_util 0xff9fa623 cfi_udelay +EXPORT_SYMBOL drivers/mtd/chips/cfi_util 0xffb2217f cfi_build_cmd +EXPORT_SYMBOL drivers/mtd/chips/chipreg 0x064bbc0d map_destroy +EXPORT_SYMBOL drivers/mtd/chips/chipreg 0x9aaa7846 unregister_mtd_chip_driver +EXPORT_SYMBOL drivers/mtd/chips/chipreg 0xae71eb24 register_mtd_chip_driver +EXPORT_SYMBOL drivers/mtd/chips/chipreg 0xf268f2d9 do_map_probe +EXPORT_SYMBOL drivers/mtd/chips/gen_probe 0x93f92b25 mtd_do_chip_probe +EXPORT_SYMBOL drivers/mtd/lpddr/lpddr_cmds 0xbf73c0e4 lpddr_cmdset +EXPORT_SYMBOL drivers/mtd/maps/map_funcs 0x4174d874 simple_map_init +EXPORT_SYMBOL drivers/mtd/mtd 0x4368680a mtd_concat_create +EXPORT_SYMBOL drivers/mtd/mtd 0x8fad6a7b mtd_concat_destroy +EXPORT_SYMBOL drivers/mtd/nand/onenand/onenand 0x3e1717de onenand_addr +EXPORT_SYMBOL drivers/mtd/nand/onenand/onenand 0xdf73a571 flexonenand_region +EXPORT_SYMBOL drivers/mtd/nand/raw/denali 0x30db096f denali_calc_ecc_bytes +EXPORT_SYMBOL drivers/mtd/nand/raw/denali 0x95283b9a denali_init +EXPORT_SYMBOL drivers/mtd/nand/raw/denali 0xb5ba6c0b denali_remove +EXPORT_SYMBOL drivers/mtd/nand/raw/nand 0x110ee948 nand_write_oob_std +EXPORT_SYMBOL drivers/mtd/nand/raw/nand 0x1d2daf62 nand_bch_calculate_ecc +EXPORT_SYMBOL drivers/mtd/nand/raw/nand 0x1e19e7e4 nand_write_page_raw +EXPORT_SYMBOL drivers/mtd/nand/raw/nand 0x40ab9005 nand_bch_init +EXPORT_SYMBOL drivers/mtd/nand/raw/nand 0x4792ea0a nand_bch_correct_data +EXPORT_SYMBOL drivers/mtd/nand/raw/nand 0x4b05cef5 nand_scan_with_ids +EXPORT_SYMBOL drivers/mtd/nand/raw/nand 0x66c7f5e7 nand_read_page_raw +EXPORT_SYMBOL drivers/mtd/nand/raw/nand 0x70097aa0 nand_bch_free +EXPORT_SYMBOL drivers/mtd/nand/raw/nand 0x87fc0542 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 0x909d938e nand_create_bbt +EXPORT_SYMBOL drivers/mtd/nand/raw/nand 0xa62aadfe nand_monolithic_write_page_raw +EXPORT_SYMBOL drivers/mtd/nand/raw/nand 0xd0d95472 nand_read_oob_std +EXPORT_SYMBOL drivers/mtd/nand/raw/nand 0xe48fb8e3 nand_get_set_features_notsupp +EXPORT_SYMBOL drivers/mtd/nand/raw/nand_ecc 0x07c8a160 nand_calculate_ecc +EXPORT_SYMBOL drivers/mtd/nand/raw/nand_ecc 0x396ef158 nand_correct_data +EXPORT_SYMBOL drivers/mtd/nand/raw/nand_ecc 0xa43d1c72 __nand_correct_data +EXPORT_SYMBOL drivers/mtd/nand/raw/nand_ecc 0xb636dd73 __nand_calculate_ecc +EXPORT_SYMBOL drivers/net/arcnet/arcnet 0x0f2f4bee arcnet_close +EXPORT_SYMBOL drivers/net/arcnet/arcnet 0x357d778e arcnet_send_packet +EXPORT_SYMBOL drivers/net/arcnet/arcnet 0x38cf06cc arc_bcast_proto +EXPORT_SYMBOL drivers/net/arcnet/arcnet 0x4f1f9684 arcnet_timeout +EXPORT_SYMBOL drivers/net/arcnet/arcnet 0x6534792a arcnet_debug +EXPORT_SYMBOL drivers/net/arcnet/arcnet 0x6627f64f arcnet_open +EXPORT_SYMBOL drivers/net/arcnet/arcnet 0x6ff56681 arc_raw_proto +EXPORT_SYMBOL drivers/net/arcnet/arcnet 0xd14df17d arc_proto_map +EXPORT_SYMBOL drivers/net/arcnet/arcnet 0xd38c5650 alloc_arcdev +EXPORT_SYMBOL drivers/net/arcnet/arcnet 0xdd62a795 arc_proto_default +EXPORT_SYMBOL drivers/net/arcnet/arcnet 0xecb5906b arcnet_unregister_proto +EXPORT_SYMBOL drivers/net/arcnet/arcnet 0xecb730b0 arcnet_interrupt +EXPORT_SYMBOL drivers/net/arcnet/com20020 0x347a9fc4 com20020_netdev_ops +EXPORT_SYMBOL drivers/net/arcnet/com20020 0x5026e6a9 com20020_found +EXPORT_SYMBOL drivers/net/arcnet/com20020 0x8ddc5e6f com20020_check +EXPORT_SYMBOL drivers/net/dsa/b53/b53_common 0x00b85c7b b53_get_ethtool_stats +EXPORT_SYMBOL drivers/net/dsa/b53/b53_common 0x01afe415 b53_phylink_mac_link_state +EXPORT_SYMBOL drivers/net/dsa/b53/b53_common 0x02e0f3bc b53_br_join +EXPORT_SYMBOL drivers/net/dsa/b53/b53_common 0x0b5b522a b53_phylink_mac_link_up +EXPORT_SYMBOL drivers/net/dsa/b53/b53_common 0x10518f59 b53_mirror_add +EXPORT_SYMBOL drivers/net/dsa/b53/b53_common 0x1a8b3825 b53_br_set_stp_state +EXPORT_SYMBOL drivers/net/dsa/b53/b53_common 0x1a952fb6 b53_get_ethtool_phy_stats +EXPORT_SYMBOL drivers/net/dsa/b53/b53_common 0x1be97b45 b53_brcm_hdr_setup +EXPORT_SYMBOL drivers/net/dsa/b53/b53_common 0x27b391ee b53_get_strings +EXPORT_SYMBOL drivers/net/dsa/b53/b53_common 0x2cdbc03a b53_switch_detect +EXPORT_SYMBOL drivers/net/dsa/b53/b53_common 0x2ea87c7f b53_get_sset_count +EXPORT_SYMBOL drivers/net/dsa/b53/b53_common 0x2fcef141 b53_switch_alloc +EXPORT_SYMBOL drivers/net/dsa/b53/b53_common 0x3898834a b53_vlan_del +EXPORT_SYMBOL drivers/net/dsa/b53/b53_common 0x3fdb9911 b53_disable_port +EXPORT_SYMBOL drivers/net/dsa/b53/b53_common 0x3fe6729c b53_phylink_mac_link_down +EXPORT_SYMBOL drivers/net/dsa/b53/b53_common 0x46c02202 b53_vlan_prepare +EXPORT_SYMBOL drivers/net/dsa/b53/b53_common 0x59ab185a b53_mdb_prepare +EXPORT_SYMBOL drivers/net/dsa/b53/b53_common 0x5ce1d301 b53_mirror_del +EXPORT_SYMBOL drivers/net/dsa/b53/b53_common 0x87574628 b53_set_mac_eee +EXPORT_SYMBOL drivers/net/dsa/b53/b53_common 0x8ba4896a b53_br_egress_floods +EXPORT_SYMBOL drivers/net/dsa/b53/b53_common 0x8dc1ed7d b53_fdb_dump +EXPORT_SYMBOL drivers/net/dsa/b53/b53_common 0x8e48f17f b53_br_leave +EXPORT_SYMBOL drivers/net/dsa/b53/b53_common 0x985cd580 b53_mdb_del +EXPORT_SYMBOL drivers/net/dsa/b53/b53_common 0x9e03bc01 b53_configure_vlan +EXPORT_SYMBOL drivers/net/dsa/b53/b53_common 0xa92c4de7 b53_vlan_add +EXPORT_SYMBOL drivers/net/dsa/b53/b53_common 0xabd254dc b53_phylink_mac_config +EXPORT_SYMBOL drivers/net/dsa/b53/b53_common 0xb0582c35 b53_switch_register +EXPORT_SYMBOL drivers/net/dsa/b53/b53_common 0xb28a2029 b53_mdb_add +EXPORT_SYMBOL drivers/net/dsa/b53/b53_common 0xbb2add86 b53_br_fast_age +EXPORT_SYMBOL drivers/net/dsa/b53/b53_common 0xc079e5a5 b53_enable_port +EXPORT_SYMBOL drivers/net/dsa/b53/b53_common 0xc433c4c5 b53_port_event +EXPORT_SYMBOL drivers/net/dsa/b53/b53_common 0xd2fbb691 b53_fdb_add +EXPORT_SYMBOL drivers/net/dsa/b53/b53_common 0xd4d0c3d2 b53_vlan_filtering +EXPORT_SYMBOL drivers/net/dsa/b53/b53_common 0xd8686d18 b53_eee_init +EXPORT_SYMBOL drivers/net/dsa/b53/b53_common 0xe22c7da8 b53_get_mac_eee +EXPORT_SYMBOL drivers/net/dsa/b53/b53_common 0xe5768c45 b53_imp_vlan_setup +EXPORT_SYMBOL drivers/net/dsa/b53/b53_common 0xeb35e830 b53_get_tag_protocol +EXPORT_SYMBOL drivers/net/dsa/b53/b53_common 0xf52fca53 b53_eee_enable_set +EXPORT_SYMBOL drivers/net/dsa/b53/b53_common 0xfa333c46 b53_phylink_validate +EXPORT_SYMBOL drivers/net/dsa/b53/b53_common 0xfc100aad b53_fdb_del +EXPORT_SYMBOL drivers/net/dsa/b53/b53_common 0xfd2f778a b53_phylink_mac_an_restart +EXPORT_SYMBOL drivers/net/dsa/b53/b53_serdes 0x0200fff1 b53_serdes_init +EXPORT_SYMBOL drivers/net/dsa/b53/b53_serdes 0x34b6235d b53_serdes_config +EXPORT_SYMBOL drivers/net/dsa/b53/b53_serdes 0x43a5482d b53_serdes_an_restart +EXPORT_SYMBOL drivers/net/dsa/b53/b53_serdes 0x76435fea b53_serdes_link_set +EXPORT_SYMBOL drivers/net/dsa/b53/b53_serdes 0x85684212 b53_serdes_phylink_validate +EXPORT_SYMBOL drivers/net/dsa/b53/b53_serdes 0xc479682b b53_serdes_link_state +EXPORT_SYMBOL drivers/net/dsa/lan9303-core 0x6ca4e448 lan9303_probe +EXPORT_SYMBOL drivers/net/dsa/lan9303-core 0xa4084c09 lan9303_remove +EXPORT_SYMBOL drivers/net/dsa/lan9303-core 0xada83f40 lan9303_register_set +EXPORT_SYMBOL drivers/net/dsa/microchip/ksz8795 0x0c223666 ksz8795_switch_register +EXPORT_SYMBOL drivers/net/dsa/microchip/ksz9477 0xf8ef154c ksz9477_switch_register +EXPORT_SYMBOL drivers/net/dsa/microchip/ksz_common 0x15f680c9 ksz_switch_register +EXPORT_SYMBOL drivers/net/dsa/microchip/ksz_common 0xa1411f06 ksz_switch_alloc +EXPORT_SYMBOL drivers/net/dsa/microchip/ksz_common 0xf7a1d79c ksz_switch_remove +EXPORT_SYMBOL drivers/net/dsa/vitesse-vsc73xx-core 0x8a868edd vsc73xx_probe +EXPORT_SYMBOL drivers/net/dsa/vitesse-vsc73xx-core 0x8adfe93f vsc73xx_remove +EXPORT_SYMBOL drivers/net/dsa/vitesse-vsc73xx-core 0x99d242fe vsc73xx_is_addr_valid +EXPORT_SYMBOL drivers/net/ethernet/8390/8390 0x119721ac ei_interrupt +EXPORT_SYMBOL drivers/net/ethernet/8390/8390 0x2a3b9e2f ei_tx_timeout +EXPORT_SYMBOL drivers/net/ethernet/8390/8390 0x54358766 NS8390_init +EXPORT_SYMBOL drivers/net/ethernet/8390/8390 0x5fa8f50b ei_open +EXPORT_SYMBOL drivers/net/ethernet/8390/8390 0x82387e25 ei_close +EXPORT_SYMBOL drivers/net/ethernet/8390/8390 0x9668afa6 ei_start_xmit +EXPORT_SYMBOL drivers/net/ethernet/8390/8390 0x98c5fcb0 ei_netdev_ops +EXPORT_SYMBOL drivers/net/ethernet/8390/8390 0xb5c0e467 ei_poll +EXPORT_SYMBOL drivers/net/ethernet/8390/8390 0xbd1e6805 __alloc_ei_netdev +EXPORT_SYMBOL drivers/net/ethernet/8390/8390 0xce8e9863 ei_get_stats +EXPORT_SYMBOL drivers/net/ethernet/8390/8390 0xfe094b4e ei_set_multicast_list +EXPORT_SYMBOL drivers/net/ethernet/broadcom/cnic 0x1976c658 cnic_register_driver +EXPORT_SYMBOL drivers/net/ethernet/broadcom/cnic 0x636af174 cnic_unregister_driver +EXPORT_SYMBOL drivers/net/ethernet/cavium/common/cavium_ptp 0xc9bfb158 cavium_ptp_put +EXPORT_SYMBOL drivers/net/ethernet/cavium/common/cavium_ptp 0xf60dabad cavium_ptp_get +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 0x04651e22 t3_l2t_send_slow +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb3/cxgb3 0x06716434 cxgb3_ofld_send +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb3/cxgb3 0x1a3a12d5 cxgb3_free_atid +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb3/cxgb3 0x224baad7 cxgb3_alloc_stid +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb3/cxgb3 0x33a6ad5d cxgb3_register_client +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb3/cxgb3 0x3c3f8f4c cxgb3_insert_tid +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb3/cxgb3 0x3c6245be t3_l2e_free +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb3/cxgb3 0x637165c8 cxgb3_queue_tid_release +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb3/cxgb3 0x6c12025e t3_l2t_get +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb3/cxgb3 0x6d052efb dev2t3cdev +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb3/cxgb3 0x71933663 t3_register_cpl_handler +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb3/cxgb3 0x827a445f t3_l2t_send_event +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb3/cxgb3 0x8bd762ee cxgb3_remove_tid +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb3/cxgb3 0x93751b37 cxgb3_free_stid +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb3/cxgb3 0xa83a8fcf cxgb3_unregister_client +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb3/cxgb3 0xc2fdc27c cxgb3_alloc_atid +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0x0b0af463 cxgb4_iscsi_init +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0x1014bd0f cxgb4_ofld_send +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0x14aab740 cxgb4_write_sgl +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0x184f3765 cxgb4_get_srq_entry +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0x21f5c444 cxgb4_select_ntuple +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0x23fc6f9b cxgb4_clip_get +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0x29163b22 cxgb4_create_server +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0x2d99bef4 cxgb4_reclaim_completed_tx +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0x2e25d565 cxgb4_get_tcp_stats +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0x30434745 cxgb4_smt_alloc_switching +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0x3a012555 cxgb4_create_server6 +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0x3f05f311 cxgb4_alloc_sftid +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0x451c40ab cxgb4_port_chan +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0x45f73361 cxgb4_read_sge_timestamp +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0x460b9134 cxgb4_check_l2t_valid +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0x4a7a79c1 cxgb4_free_atid +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0x50ee5c07 cxgb4_best_aligned_mtu +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0x52648d23 cxgb4_immdata_send +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0x561e791d cxgb4_port_idx +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0x5d07dac8 cxgb4_port_viid +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0x5f53d914 cxgb4_dbfifo_count +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0x676a11a9 cxgb4_unregister_uld +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0x676e71ec cxgb4_l2t_get +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0x69e996ea cxgb4_port_e2cchan +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0x6f96f799 cxgb4_l2t_send +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0x7430cd7f cxgb4_remove_server_filter +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0x784d366f cxgb4_l2t_alloc_switching +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0x7d8da169 cxgb4_create_server_filter +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0x8eabb0ca cxgb4_map_skb +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0x95024a6d cxgb4_alloc_atid +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0x968737fa cxgb4_read_tpte +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0x9d5d63ff cxgb4_ring_tx_db +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0x9f9c1264 cxgb4_sync_txq_pidx +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0xa048210c cxgb4_l2t_release +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0xa54f8153 cxgb4_pktgl_to_skb +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0xa8a669ed cxgb4_register_uld +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0xa8db193f cxgb4_smt_release +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0xb4e0f495 cxgb4_free_stid +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0xb6b5b67f cxgb4_remove_tid +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0xc4efc0e7 cxgb4_update_root_dev_clip +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0xc78dc726 cxgb4_flush_eq_cache +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0xce09fb31 cxgb4_crypto_send +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0xcf9f8d5a cxgb4_alloc_stid +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0xd69a0294 cxgb4_best_mtu +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0xe3711a1e cxgb4_inline_tx_skb +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0xe6a3ef80 t4_cleanup_clip_tbl +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0xed857c4d cxgb4_bar2_sge_qregs +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0xf015016e cxgb4_remove_server +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0xfb8d7ef0 cxgb4_clip_release +EXPORT_SYMBOL drivers/net/ethernet/chelsio/libcxgb/libcxgb 0x1bdaafe1 cxgbi_tagmask_set +EXPORT_SYMBOL drivers/net/ethernet/chelsio/libcxgb/libcxgb 0x238db99e cxgbi_ppm_make_ppod_hdr +EXPORT_SYMBOL drivers/net/ethernet/chelsio/libcxgb/libcxgb 0x255ab30f cxgb_get_4tuple +EXPORT_SYMBOL drivers/net/ethernet/chelsio/libcxgb/libcxgb 0x2ac5e633 cxgbi_ppm_init +EXPORT_SYMBOL drivers/net/ethernet/chelsio/libcxgb/libcxgb 0x6ae972ec cxgb_find_route +EXPORT_SYMBOL drivers/net/ethernet/chelsio/libcxgb/libcxgb 0x7b66a454 cxgbi_ppm_ppod_release +EXPORT_SYMBOL drivers/net/ethernet/chelsio/libcxgb/libcxgb 0x973babcb cxgbi_ppm_release +EXPORT_SYMBOL drivers/net/ethernet/chelsio/libcxgb/libcxgb 0xa6e96bdc cxgbi_ppm_ppods_reserve +EXPORT_SYMBOL drivers/net/ethernet/chelsio/libcxgb/libcxgb 0xed210d99 cxgb_find_route6 +EXPORT_SYMBOL drivers/net/ethernet/cisco/enic/enic 0x545cb3bd vnic_dev_register +EXPORT_SYMBOL drivers/net/ethernet/cisco/enic/enic 0x6b0f383e enic_api_devcmd_proxy_by_index +EXPORT_SYMBOL drivers/net/ethernet/cisco/enic/enic 0x7389b0cb vnic_dev_get_pdev +EXPORT_SYMBOL drivers/net/ethernet/cisco/enic/enic 0xb7abea52 vnic_dev_unregister +EXPORT_SYMBOL drivers/net/ethernet/cisco/enic/enic 0xcdb4f2b6 vnic_dev_get_res_count +EXPORT_SYMBOL drivers/net/ethernet/cisco/enic/enic 0xe97bea20 vnic_dev_get_res +EXPORT_SYMBOL drivers/net/ethernet/emulex/benet/be2net 0x49ac148b be_roce_unregister_driver +EXPORT_SYMBOL drivers/net/ethernet/emulex/benet/be2net 0x4e2e10d2 be_roce_mcc_cmd +EXPORT_SYMBOL drivers/net/ethernet/emulex/benet/be2net 0xe3814aa0 be_roce_register_driver +EXPORT_SYMBOL drivers/net/ethernet/intel/i40e/i40e 0xa5909740 i40e_unregister_client +EXPORT_SYMBOL drivers/net/ethernet/intel/i40e/i40e 0xc639c30d i40e_register_client +EXPORT_SYMBOL drivers/net/ethernet/intel/iavf/iavf 0x103d2135 iavf_register_client +EXPORT_SYMBOL drivers/net/ethernet/intel/iavf/iavf 0x53b216dd iavf_unregister_client +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x06c032e6 mlx4_SET_PORT_qpn_calc +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x0834c298 mlx4_get_is_vlan_offload_disabled +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x0a29a7cd mlx4_SET_PORT_BEACON +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x0a60a643 mlx4_is_eq_shared +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x12c72874 mlx4_get_slave_port_state +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x1e1a3301 mlx4_SET_PORT_user_mtu +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x1ea53798 mlx4_SET_MCAST_FLTR +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x20d838cc mlx4_SET_VPORT_QOS_get +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x270a6987 set_and_calc_slave_port_state +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x4567052e mlx4_assign_eq +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x46903077 mlx4_ALLOCATE_VPP_get +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x528a487e mlx4_ALLOCATE_VPP_set +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x52a42c30 mlx4_get_roce_gid_from_slave +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x5698cee2 mlx4_SET_PORT_PRIO2TC +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x598ea045 mlx4_query_diag_counters +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x5da57e32 mlx4_get_module_info +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x630b8621 mlx4_gen_pkey_eqe +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x67e0ee3d get_phv_bit +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x6dbade8c mlx4_is_slave_active +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x7d36f581 mlx4_sync_pkey_table +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 0x8110d465 mlx4_SET_PORT_user_mac +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x85563bf1 mlx4_gen_slaves_port_mgt_ev +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x8a015cf1 mlx4_SET_PORT_VXLAN +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x8c11d8f2 mlx4_get_parav_qkey +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x9bbe7b4e mlx4_is_eq_vector_valid +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x9c026872 mlx4_gen_port_state_change_eqe +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x9cf5a4e5 mlx4_tunnel_steer_add +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x9dc73f8e mlx4_SET_PORT_fcs_check +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xa19e0475 mlx4_test_async +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xa6038852 mlx4_gen_guid_change_eqe +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xb1c01f98 set_phv_bit +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xb815e306 mlx4_get_cpu_rmap +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xbb3fe471 mlx4_get_slave_pkey_gid_tbl_len +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xc619f70a mlx4_release_eq +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xc7f32f80 mlx4_get_slave_from_roce_gid +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xc800c913 mlx4_get_slave_node_guid +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xcdf58a1f mlx4_SET_VPORT_QOS_set +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xcf8f1671 mlx4_test_interrupt +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xd8845351 mlx4_get_eqs_per_port +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xe703b963 mlx4_SET_PORT_SCHEDULER +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xe8b85e6a mlx4_put_slave_node_guid +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xea225e80 mlx4_SET_PORT_general +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xede1e453 mlx4_max_tc +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xf4299f80 mlx4_eq_get_irq +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x000d46b8 mlx5_core_alloc_transport_domain +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x0063198d mlx5_core_alloc_pd +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x017e21c9 mlx5_lag_get_slave_port +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x01c73d0e mlx5_core_create_rqt +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x0ad7d841 mlx5_core_modify_cq +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x0caf026f mlx5_fpga_sbu_conn_create +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x15a4eb7f mlx5_core_detach_mcg +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x1717ed13 mlx5_rl_is_in_range +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x1ef4872a mlx5_lag_is_active +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x2671aa45 mlx5_core_modify_cq_moderation +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x27fa4d63 __tracepoint_mlx5_fs_del_fg +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x29dacb23 mlx5_add_flow_rules +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x29ebbc9c mlx5_core_destroy_tir +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x2f678173 mlx5_core_destroy_tis +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x317390a7 mlx5_fc_destroy +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x32705594 __tracepoint_mlx5_fs_del_rule +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x32b9a1b5 mlx5_eswitch_reg_c1_loopback_enabled +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x3479917c mlx5_register_interface +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x36e756af mlx5_lag_query_cong_counters +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x37651b47 __tracepoint_mlx5_fs_set_fte +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x3c07bf1a mlx5_rl_add_rate_raw +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x3d98d81b mlx5_core_query_sq +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x3e960390 __tracepoint_mlx5_fw +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x3fb9179e mlx5_create_auto_grouped_flow_table +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x40b21afc mlx5_eq_notifier_register +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x42310825 mlx5_notifier_register +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x43f58ba4 mlx5_query_port_ib_proto_oper +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x46150cf1 __tracepoint_mlx5_fs_del_ft +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x4658f639 mlx5_eq_get_eqe +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x48b8466c mlx5_core_query_mkey +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x49054895 mlx5_eswitch_uplink_get_proto_dev +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x49bf66d8 mlx5_cmd_create_vport_lag +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x4abbb5a5 mlx5_core_dealloc_pd +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x4d323b06 mlx5_core_create_mkey +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x4d3b1b70 mlx5_rl_remove_rate +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x4ddf6b6d mlx5_vector2eqn +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x4ea62b2a mlx5_cmd_cleanup_async_ctx +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x52a14a5a mlx5_packet_reformat_alloc +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x541ae42a mlx5_fs_remove_rx_underlay_qpn +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x547e9afe mlx5_notifier_unregister +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x5a021a4c mlx5_qp_debugfs_init +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x5b497103 mlx5_lag_is_sriov +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x5db66735 mlx5_eq_notifier_unregister +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x5f30b316 mlx5_core_query_rq +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x5fe82594 mlx5_eq_update_ci +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 0x62fc0a7e mlx5_debug_qp_add +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x63bacd93 mlx5_rdma_rn_get_params +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x64e27927 mlx5_core_query_vendor_id +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x66a2a186 mlx5_debugfs_root +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x67040efc mlx5_cmd_init_async_ctx +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x68494c97 mlx5_lag_is_roce +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x6e3948db mlx5_core_destroy_rqt +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x6f16f49a mlx5_fpga_get_sbu_caps +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x6ffd2138 mlx5_eswitch_get_vport_metadata_for_match +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x7016e474 mlx5_put_uars_page +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x7036121c mlx5_eswitch_vport_rep +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x727ef422 mlx5_rl_remove_rate_raw +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x7367a894 mlx5_eq_destroy_generic +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x73eb99dc mlx5_rl_add_rate +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x748f81ea mlx5_cmd_exec +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x76bf0912 mlx5_core_modify_tis +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x77c4e401 mlx5_cmd_set_state +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x78633b9d mlx5_eswitch_vport_match_metadata_enabled +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x8122d6e0 mlx5_modify_header_alloc +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x829f9c1a mlx5_eswitch_get_encap_mode +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x832e24e1 mlx5_core_attach_mcg +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x83f4f91d mlx5_eswitch_unregister_vport_reps +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x84272719 mlx5_cmd_free_uar +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x8668af0c mlx5_core_destroy_cq +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x87a25e22 __tracepoint_mlx5_fs_add_rule +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x8c254021 mlx5_cmd_cleanup +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x8cd44aca mlx5_core_modify_sq +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x8d1f9465 mlx5_cmd_alloc_uar +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x8eeefaa0 __tracepoint_mlx5_fs_add_fg +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x8f71085c mlx5_core_create_tis +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x916f275c mlx5_core_dealloc_transport_domain +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x930b495c mlx5_fpga_sbu_conn_destroy +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x953bfccd mlx5_eswitch_add_send_to_vport_rule +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x96eb2c99 mlx5_fc_id +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x9713bbe6 mlx5_eq_disable +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x9884865a mlx5_del_flow_rules +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x98ab7cc6 mlx5_destroy_flow_table +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x9f5d5c08 mlx5_get_fdb_sub_ns +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xa1b9db74 mlx5_fs_add_rx_underlay_qpn +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xa49061f5 mlx5_eq_create_generic +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xaa2d2605 mlx5_fc_create +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xadf630bf mlx5_fpga_mem_write +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xae9ea383 __tracepoint_mlx5_fs_del_fte +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xaef5d0c3 mlx5_core_destroy_rq +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xb18acb8e mlx5_eswitch_register_vport_reps +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xb1efb9f3 mlx5_get_uars_page +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xb4bf3b5a mlx5_cmd_exec_polling +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xb7ae257f mlx5_core_create_rq +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xbc22ffda mlx5_core_destroy_mkey +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xc24adbc3 mlx5_unregister_interface +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xc2564583 mlx5_fc_query +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xc32b2951 mlx5_qp_debugfs_cleanup +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xc3df544e mlx5_lag_get_roce_netdev +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xc5d35e4d mlx5_eswitch_get_proto_dev +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xc8c69840 mlx5_buf_alloc +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xc95da4ee mlx5_cmd_destroy_vport_lag +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xca64f825 mlx5_core_create_psv +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xcb41353a mlx5_modify_header_dealloc +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xd509703d mlx5_core_query_cq +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xd5a462b3 mlx5_eq_enable +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xd8ba0e26 mlx5_fpga_mem_read +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xd9ec757b mlx5_core_roce_gid_set +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xde25b2ce mlx5_comp_irq_get_affinity_mask +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xdecbd598 mlx5_alloc_bfreg +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xe320ef06 mlx5_fpga_sbu_conn_sendmsg +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xe6ccaad0 mlx5_comp_vectors_count +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xe8bb6b9d mlx5_cmd_exec_cb +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xee7c21c7 mlx5_core_modify_rq +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xeecce890 mlx5_debug_qp_remove +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xef01bb32 __tracepoint_mlx5_fs_add_ft +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xf120e368 mlx5_create_lag_demux_flow_table +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xf1a2dc8a mlx5_core_create_tir +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xf656152e mlx5_packet_reformat_dealloc +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xf8107d1f mlx5_core_create_cq +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xf94d992f mlx5_cmd_init +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xf98fb3a0 mlx5_get_flow_namespace +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xfc183692 mlx5_core_destroy_psv +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xfc888846 mlx5_nic_vport_disable_roce +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xfcf0697c mlx5_free_bfreg +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxfw/mlxfw 0xd636ed7a mlxfw_firmware_flash +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0x02998acf mlxsw_afa_block_append_counter +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 0x07abcc0c mlxsw_afa_block_append_trap +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0x0ca34ccf mlxsw_core_max_ports +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0x0e2b5842 mlxsw_afa_block_append_vlan_modify +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0x0e81c09c mlxsw_afk_destroy +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0x1292207f mlxsw_core_rx_listener_register +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0x14ab632d mlxsw_core_skb_transmit +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0x15801382 mlxsw_afk_key_info_put +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 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 0x2c68ced3 mlxsw_core_read_frc_h +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0x2decde87 mlxsw_core_fw_flash_start +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0x2f2c4887 mlxsw_afa_block_append_qos_switch_prio +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0x35ba2254 mlxsw_afk_values_add_u32 +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0x39235e5a mlxsw_core_skb_receive +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0x3a0e3ba0 mlxsw_core_trap_unregister +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0x3c270747 mlxsw_core_ptp_transmitted +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0x3de38d84 mlxsw_core_driver_unregister +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0x3f123442 mlxsw_core_kvd_sizes_get +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0x41055a45 mlxsw_core_event_listener_unregister +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0x43a9b87e mlxsw_afa_block_terminate +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0x458f067a mlxsw_core_port_devlink_port_get +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 0x47fd6eee mlxsw_core_fw_flash_end +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0x484489a4 mlxsw_cmd_exec +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0x4a6ed376 mlxsw_core_port_fini +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0x5c48ef7b mlxsw_afa_block_append_mirror +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0x5cf3dd79 mlxsw_core_bus_device_unregister +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0x5ff17b5c mlxsw_afa_block_destroy +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0x615ef5fc mlxsw_afa_block_append_qos_dscp +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 0x65e16da4 mlxsw_afk_key_info_get +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0x692ac04e mlxsw_afk_create +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0x69e7d2bb mlxsw_core_driver_register +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0x71e1d813 mlxsw_core_port_clear +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0x73cf1d7a mlxsw_core_res_get +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0x749556a2 mlxsw_afk_key_info_subset +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0x76a65e3b mlxsw_core_port_init +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0x77768221 mlxsw_core_module_max_width +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0x77d83398 mlxsw_core_read_frc_l +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 0x858c30d0 mlxsw_afa_block_create +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0x8854d198 mlxsw_reg_write +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0x8ba5fa7e mlxsw_core_lag_mapping_set +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0x8d6a80b1 mlxsw_core_trap_register +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0x902c3533 mlxsw_core_schedule_dw +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0x963cfb6a mlxsw_core_resources_query +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 0x9e41f494 mlxsw_afk_encode +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0xa043bfe5 mlxsw_core_bus_device_register +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0xa3d0d2b6 mlxsw_afa_block_append_fwd +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0xa7765e88 mlxsw_reg_query +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0xa7ccb62a mlxsw_afa_block_append_qos_dsfield +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0xacc8a48f mlxsw_env_get_module_eeprom +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0xaf8e9a3f mlxsw_core_port_eth_set +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0xb0717797 mlxsw_afa_block_append_fid_set +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0xb2f24677 mlxsw_core_res_valid +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0xb5e762fa mlxsw_afk_values_add_buf +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 0xba05b3b0 mlxsw_core_emad_string_tlv_enable +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0xbc222a8d mlxsw_afk_clear +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0xbe82d6cc mlxsw_env_get_module_info +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0xbfb7df3c mlxsw_core_driver_priv +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0xbfd01f33 mlxsw_core_port_ib_set +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0xc9c2e4cc mlxsw_core_lag_mapping_clear +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0xcb2aaf8b mlxsw_core_trap_state_set +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 0xcd9a40a4 mlxsw_afa_block_append_drop +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0xd1a82f0b mlxsw_core_lag_mapping_get +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0xd252e62d mlxsw_core_skb_transmit_busy +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 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 0xdeb1dc2e mlxsw_afa_block_first_kvdl_index +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0xdeff4950 mlxsw_core_event_listener_register +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0xe16986dd mlxsw_afa_block_activity_get +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0xe51aafe5 mlxsw_afa_create +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0xecab212a mlxsw_afa_cookie_lookup +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0xf2ca3bae mlxsw_core_res_query_enabled +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0xf4909bea mlxsw_core_port_type_get +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0xf7a97f5d mlxsw_core_rx_listener_unregister +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0xf7fbba9f mlxsw_afa_block_append_qos_ecn +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0xff007c25 mlxsw_core_cpu_port_fini +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_i2c 0x403ccc73 mlxsw_i2c_driver_register +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_i2c 0xcb433433 mlxsw_i2c_driver_unregister +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_pci 0xde9d4d6c mlxsw_pci_driver_register +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_pci 0xfdc27fb9 mlxsw_pci_driver_unregister +EXPORT_SYMBOL drivers/net/ethernet/mscc/mscc_ocelot_common 0x00b30584 ocelot_port_writel +EXPORT_SYMBOL drivers/net/ethernet/mscc/mscc_ocelot_common 0x01f5942d ocelot_ptp_verify +EXPORT_SYMBOL drivers/net/ethernet/mscc/mscc_ocelot_common 0x0458c45a ocelot_set_ageing_time +EXPORT_SYMBOL drivers/net/ethernet/mscc/mscc_ocelot_common 0x0496f9df ocelot_hwstamp_get +EXPORT_SYMBOL drivers/net/ethernet/mscc/mscc_ocelot_common 0x0582d52c ocelot_vlan_add +EXPORT_SYMBOL drivers/net/ethernet/mscc/mscc_ocelot_common 0x0b150222 ocelot_netdevice_nb +EXPORT_SYMBOL drivers/net/ethernet/mscc/mscc_ocelot_common 0x1a38f42f ocelot_get_sset_count +EXPORT_SYMBOL drivers/net/ethernet/mscc/mscc_ocelot_common 0x2254a02d ocelot_probe_port +EXPORT_SYMBOL drivers/net/ethernet/mscc/mscc_ocelot_common 0x31e62dc4 ocelot_port_bridge_leave +EXPORT_SYMBOL drivers/net/ethernet/mscc/mscc_ocelot_common 0x402df4bb ocelot_get_txtstamp +EXPORT_SYMBOL drivers/net/ethernet/mscc/mscc_ocelot_common 0x41d6750a ocelot_port_bridge_join +EXPORT_SYMBOL drivers/net/ethernet/mscc/mscc_ocelot_common 0x44d16440 ocelot_port_disable +EXPORT_SYMBOL drivers/net/ethernet/mscc/mscc_ocelot_common 0x5355e176 ocelot_chip_init +EXPORT_SYMBOL drivers/net/ethernet/mscc/mscc_ocelot_common 0x5666b242 ocelot_init_port +EXPORT_SYMBOL drivers/net/ethernet/mscc/mscc_ocelot_common 0x570645ce ocelot_regfields_init +EXPORT_SYMBOL drivers/net/ethernet/mscc/mscc_ocelot_common 0x5e4e1350 ocelot_regmap_init +EXPORT_SYMBOL drivers/net/ethernet/mscc/mscc_ocelot_common 0x66984212 ocelot_get_max_mtu +EXPORT_SYMBOL drivers/net/ethernet/mscc/mscc_ocelot_common 0x725600be ocelot_ptp_settime64 +EXPORT_SYMBOL drivers/net/ethernet/mscc/mscc_ocelot_common 0x77cffa40 ocelot_vlan_del +EXPORT_SYMBOL drivers/net/ethernet/mscc/mscc_ocelot_common 0x78555994 ocelot_port_vlan_filtering +EXPORT_SYMBOL drivers/net/ethernet/mscc/mscc_ocelot_common 0x82980b3d ocelot_fdb_dump +EXPORT_SYMBOL drivers/net/ethernet/mscc/mscc_ocelot_common 0x9e371d4e ocelot_fdb_del +EXPORT_SYMBOL drivers/net/ethernet/mscc/mscc_ocelot_common 0xa7525d6f ocelot_port_add_txtstamp_skb +EXPORT_SYMBOL drivers/net/ethernet/mscc/mscc_ocelot_common 0xa9ea0187 ocelot_get_ethtool_stats +EXPORT_SYMBOL drivers/net/ethernet/mscc/mscc_ocelot_common 0xaa154373 __ocelot_rmw_ix +EXPORT_SYMBOL drivers/net/ethernet/mscc/mscc_ocelot_common 0xae1d5c1f ocelot_fdb_add +EXPORT_SYMBOL drivers/net/ethernet/mscc/mscc_ocelot_common 0xb75456a3 ocelot_get_strings +EXPORT_SYMBOL drivers/net/ethernet/mscc/mscc_ocelot_common 0xba176b6c ocelot_port_readl +EXPORT_SYMBOL drivers/net/ethernet/mscc/mscc_ocelot_common 0xc00befee ocelot_ptp_adjtime +EXPORT_SYMBOL drivers/net/ethernet/mscc/mscc_ocelot_common 0xc071d500 __ocelot_write_ix +EXPORT_SYMBOL drivers/net/ethernet/mscc/mscc_ocelot_common 0xc08e73c0 ocelot_init +EXPORT_SYMBOL drivers/net/ethernet/mscc/mscc_ocelot_common 0xc571b97d ocelot_hwstamp_set +EXPORT_SYMBOL drivers/net/ethernet/mscc/mscc_ocelot_common 0xc5b08847 ocelot_configure_cpu +EXPORT_SYMBOL drivers/net/ethernet/mscc/mscc_ocelot_common 0xcc3cf045 ocelot_bridge_stp_state_set +EXPORT_SYMBOL drivers/net/ethernet/mscc/mscc_ocelot_common 0xd0348add ocelot_switchdev_nb +EXPORT_SYMBOL drivers/net/ethernet/mscc/mscc_ocelot_common 0xd20d4d65 ocelot_deinit +EXPORT_SYMBOL drivers/net/ethernet/mscc/mscc_ocelot_common 0xd71efa18 ocelot_port_set_maxlen +EXPORT_SYMBOL drivers/net/ethernet/mscc/mscc_ocelot_common 0xd9b05dea ocelot_port_policer_add +EXPORT_SYMBOL drivers/net/ethernet/mscc/mscc_ocelot_common 0xdd2a6cb8 ocelot_deinit_timestamp +EXPORT_SYMBOL drivers/net/ethernet/mscc/mscc_ocelot_common 0xe37593c8 ocelot_ptp_adjfine +EXPORT_SYMBOL drivers/net/ethernet/mscc/mscc_ocelot_common 0xe54a91e8 ocelot_switchdev_blocking_nb +EXPORT_SYMBOL drivers/net/ethernet/mscc/mscc_ocelot_common 0xe6af9c43 ocelot_ptp_enable +EXPORT_SYMBOL drivers/net/ethernet/mscc/mscc_ocelot_common 0xecf658f0 ocelot_adjust_link +EXPORT_SYMBOL drivers/net/ethernet/mscc/mscc_ocelot_common 0xed20593d ocelot_get_ts_info +EXPORT_SYMBOL drivers/net/ethernet/mscc/mscc_ocelot_common 0xf30cc89b ocelot_port_policer_del +EXPORT_SYMBOL drivers/net/ethernet/mscc/mscc_ocelot_common 0xf3a6d3b0 ocelot_ptp_gettime64 +EXPORT_SYMBOL drivers/net/ethernet/mscc/mscc_ocelot_common 0xf471ed68 ocelot_port_enable +EXPORT_SYMBOL drivers/net/ethernet/mscc/mscc_ocelot_common 0xf5d61c61 ocelot_init_timestamp +EXPORT_SYMBOL drivers/net/ethernet/mscc/mscc_ocelot_common 0xfdd22982 __ocelot_read_ix +EXPORT_SYMBOL drivers/net/ethernet/qlogic/qed/qed 0x22f0ec5f qed_get_eth_ops +EXPORT_SYMBOL drivers/net/ethernet/qlogic/qed/qed 0x4f264472 qed_put_iscsi_ops +EXPORT_SYMBOL drivers/net/ethernet/qlogic/qed/qed 0x5d97b3fb qed_get_rdma_ops +EXPORT_SYMBOL drivers/net/ethernet/qlogic/qed/qed 0x72193700 qed_get_fcoe_ops +EXPORT_SYMBOL drivers/net/ethernet/qlogic/qed/qed 0x8f958341 qed_get_iscsi_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/qede/qede 0x22bfac70 qede_rdma_unregister_driver +EXPORT_SYMBOL drivers/net/ethernet/qlogic/qede/qede 0xb598d74c qede_rdma_register_driver +EXPORT_SYMBOL drivers/net/hamradio/hdlcdrv 0x0d615bd1 hdlcdrv_unregister +EXPORT_SYMBOL drivers/net/hamradio/hdlcdrv 0x2daaa26a hdlcdrv_receiver +EXPORT_SYMBOL drivers/net/hamradio/hdlcdrv 0x5ada0710 hdlcdrv_register +EXPORT_SYMBOL drivers/net/hamradio/hdlcdrv 0x93470a9d hdlcdrv_arbitrate +EXPORT_SYMBOL drivers/net/hamradio/hdlcdrv 0xa28f8457 hdlcdrv_transmitter +EXPORT_SYMBOL drivers/net/mdio 0x3e17f466 mdio_set_flag +EXPORT_SYMBOL drivers/net/mdio 0x60443957 mdio45_probe +EXPORT_SYMBOL drivers/net/mdio 0x63e0fee5 mdio45_links_ok +EXPORT_SYMBOL drivers/net/mdio 0x652fb0b6 mdio45_ethtool_ksettings_get_npage +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/mii 0x1b6738b4 mii_check_media +EXPORT_SYMBOL drivers/net/mii 0x38770a8b generic_mii_ioctl +EXPORT_SYMBOL drivers/net/mii 0x540a1570 mii_ethtool_set_link_ksettings +EXPORT_SYMBOL drivers/net/mii 0x6fb21897 mii_nway_restart +EXPORT_SYMBOL drivers/net/mii 0x75e742c0 mii_ethtool_gset +EXPORT_SYMBOL drivers/net/mii 0x7c28e7b1 mii_ethtool_sset +EXPORT_SYMBOL drivers/net/mii 0x96c33a2e mii_check_link +EXPORT_SYMBOL drivers/net/mii 0x96d42819 mii_link_ok +EXPORT_SYMBOL drivers/net/mii 0x9ba8ea4d mii_check_gmii_support +EXPORT_SYMBOL drivers/net/mii 0xda6376bc mii_ethtool_get_link_ksettings +EXPORT_SYMBOL drivers/net/phy/bcm-phy-lib 0x93e038a9 bcm54xx_auxctl_write +EXPORT_SYMBOL drivers/net/phy/mdio-bitbang 0x03dd285f alloc_mdio_bitbang +EXPORT_SYMBOL drivers/net/phy/mdio-bitbang 0xe5c2de7a free_mdio_bitbang +EXPORT_SYMBOL drivers/net/phy/mdio-cavium 0x30e6c81a cavium_mdiobus_write +EXPORT_SYMBOL drivers/net/phy/mdio-cavium 0x4c86b6dd cavium_mdiobus_read +EXPORT_SYMBOL drivers/net/ppp/pppox 0x0500da2b register_pppox_proto +EXPORT_SYMBOL drivers/net/ppp/pppox 0x3e5b97d9 pppox_unbind_sock +EXPORT_SYMBOL drivers/net/ppp/pppox 0x54172624 pppox_ioctl +EXPORT_SYMBOL drivers/net/ppp/pppox 0xb5dc3390 pppox_compat_ioctl +EXPORT_SYMBOL drivers/net/ppp/pppox 0xe0ff7a18 unregister_pppox_proto +EXPORT_SYMBOL drivers/net/sungem_phy 0xac3558a3 sungem_phy_probe +EXPORT_SYMBOL drivers/net/team/team 0x16a0402c team_options_unregister +EXPORT_SYMBOL drivers/net/team/team 0x17d2c971 team_mode_unregister +EXPORT_SYMBOL drivers/net/team/team 0x1f348736 team_modeop_port_change_dev_addr +EXPORT_SYMBOL drivers/net/team/team 0x305a8216 team_mode_register +EXPORT_SYMBOL drivers/net/team/team 0x5835a2cd team_options_change_check +EXPORT_SYMBOL drivers/net/team/team 0x5dbe1534 team_modeop_port_enter +EXPORT_SYMBOL drivers/net/team/team 0x8184aa27 team_option_inst_set_change +EXPORT_SYMBOL drivers/net/team/team 0xdec1ed6d team_options_register +EXPORT_SYMBOL drivers/net/usb/usbnet 0x194d4dc3 usbnet_device_suggests_idle +EXPORT_SYMBOL drivers/net/usb/usbnet 0x72d82c1e usbnet_link_change +EXPORT_SYMBOL drivers/net/usb/usbnet 0xaf7845cf usbnet_manage_power +EXPORT_SYMBOL drivers/net/wan/hdlc 0x061baa18 hdlc_ioctl +EXPORT_SYMBOL drivers/net/wan/hdlc 0x080962b5 attach_hdlc_protocol +EXPORT_SYMBOL drivers/net/wan/hdlc 0x225370f2 unregister_hdlc_device +EXPORT_SYMBOL drivers/net/wan/hdlc 0x2aaea5da hdlc_start_xmit +EXPORT_SYMBOL drivers/net/wan/hdlc 0x566275f0 alloc_hdlcdev +EXPORT_SYMBOL drivers/net/wan/hdlc 0x5770501a hdlc_open +EXPORT_SYMBOL drivers/net/wan/hdlc 0x5a31200e detach_hdlc_protocol +EXPORT_SYMBOL drivers/net/wan/hdlc 0xa18f7610 hdlc_close +EXPORT_SYMBOL drivers/net/wan/hdlc 0xa871dc7a register_hdlc_protocol +EXPORT_SYMBOL drivers/net/wan/hdlc 0xfbc6526e unregister_hdlc_protocol +EXPORT_SYMBOL drivers/net/wimax/i2400m/i2400m 0x1e723439 i2400m_unknown_barker +EXPORT_SYMBOL drivers/net/wireless/ath/ath 0x07a5f00d ath_hw_setbssidmask +EXPORT_SYMBOL drivers/net/wireless/ath/ath 0x108b188f ath_is_49ghz_allowed +EXPORT_SYMBOL drivers/net/wireless/ath/ath 0x1ddc40a0 ath_key_config +EXPORT_SYMBOL drivers/net/wireless/ath/ath 0x2b0004e9 ath_hw_keyreset +EXPORT_SYMBOL drivers/net/wireless/ath/ath 0x2e2da475 dfs_pattern_detector_init +EXPORT_SYMBOL drivers/net/wireless/ath/ath 0x3da2c40e ath_reg_notifier_apply +EXPORT_SYMBOL drivers/net/wireless/ath/ath 0x4571aea8 ath_is_world_regd +EXPORT_SYMBOL drivers/net/wireless/ath/ath 0x4d7d8b61 ath_hw_cycle_counters_update +EXPORT_SYMBOL drivers/net/wireless/ath/ath 0x5606a67a ath_hw_get_listen_time +EXPORT_SYMBOL drivers/net/wireless/ath/ath 0x574717b5 ath_printk +EXPORT_SYMBOL drivers/net/wireless/ath/ath 0x61aece26 ath_key_delete +EXPORT_SYMBOL drivers/net/wireless/ath/ath 0x6d85f857 ath_rxbuf_alloc +EXPORT_SYMBOL drivers/net/wireless/ath/ath 0x74a6d1bb ath_regd_init +EXPORT_SYMBOL drivers/net/wireless/ath/ath 0x88f370b1 ath_is_mybeacon +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 0xf08b651e ath_regd_get_band_ctl +EXPORT_SYMBOL drivers/net/wireless/ath/ath10k/ath10k_core 0x015e5db2 ath10k_debug_mask +EXPORT_SYMBOL drivers/net/wireless/ath/ath10k/ath10k_core 0x0a094fd3 ath10k_core_start +EXPORT_SYMBOL drivers/net/wireless/ath/ath10k/ath10k_core 0x16ba710b ath10k_ce_completed_send_next +EXPORT_SYMBOL drivers/net/wireless/ath/ath10k/ath10k_core 0x196b017d ath10k_err +EXPORT_SYMBOL drivers/net/wireless/ath/ath10k/ath10k_core 0x1f294e8b ath10k_htt_t2h_msg_handler +EXPORT_SYMBOL drivers/net/wireless/ath/ath10k/ath10k_core 0x2348e6f9 ath10k_htc_rx_completion_handler +EXPORT_SYMBOL drivers/net/wireless/ath/ath10k/ath10k_core 0x256730f1 ath10k_ce_revoke_recv_next +EXPORT_SYMBOL drivers/net/wireless/ath/ath10k/ath10k_core 0x26d4dfef ath10k_ce_free_rri +EXPORT_SYMBOL drivers/net/wireless/ath/ath10k/ath10k_core 0x2984a025 ath10k_ce_cancel_send_next +EXPORT_SYMBOL drivers/net/wireless/ath/ath10k/ath10k_core 0x2d83c4b8 ath10k_htt_txrx_compl_task +EXPORT_SYMBOL drivers/net/wireless/ath/ath10k/ath10k_core 0x31e20bfe ath10k_htt_rx_pktlog_completion_handler +EXPORT_SYMBOL drivers/net/wireless/ath/ath10k/ath10k_core 0x3389fa5a ath10k_ce_completed_recv_next +EXPORT_SYMBOL drivers/net/wireless/ath/ath10k/ath10k_core 0x34baf4c0 ath10k_coredump_get_mem_layout +EXPORT_SYMBOL drivers/net/wireless/ath/ath10k/ath10k_core 0x35cafc27 __ath10k_ce_send_revert +EXPORT_SYMBOL drivers/net/wireless/ath/ath10k/ath10k_core 0x3d689343 ath10k_ce_dump_registers +EXPORT_SYMBOL drivers/net/wireless/ath/ath10k/ath10k_core 0x43fb67ad ath10k_ce_deinit_pipe +EXPORT_SYMBOL drivers/net/wireless/ath/ath10k/ath10k_core 0x50dd77c4 __tracepoint_ath10k_log_dbg +EXPORT_SYMBOL drivers/net/wireless/ath/ath10k/ath10k_core 0x53cf7989 ath10k_core_free_board_files +EXPORT_SYMBOL drivers/net/wireless/ath/ath10k/ath10k_core 0x54454cfb ath10k_ce_completed_send_next_nolock +EXPORT_SYMBOL drivers/net/wireless/ath/ath10k/ath10k_core 0x54cd8501 ath10k_ce_alloc_rri +EXPORT_SYMBOL drivers/net/wireless/ath/ath10k/ath10k_core 0x6544c337 ath10k_htc_process_trailer +EXPORT_SYMBOL drivers/net/wireless/ath/ath10k/ath10k_core 0x67a71fe7 ath10k_ce_free_pipe +EXPORT_SYMBOL drivers/net/wireless/ath/ath10k/ath10k_core 0x78caa626 ath10k_coredump_new +EXPORT_SYMBOL drivers/net/wireless/ath/ath10k/ath10k_core 0x7bb6fdbb ath10k_core_unregister +EXPORT_SYMBOL drivers/net/wireless/ath/ath10k/ath10k_core 0x88a87281 ath10k_core_register +EXPORT_SYMBOL drivers/net/wireless/ath/ath10k/ath10k_core 0x88ae47da ath10k_ce_send_nolock +EXPORT_SYMBOL drivers/net/wireless/ath/ath10k/ath10k_core 0x8c14d4a0 ath10k_core_fetch_board_file +EXPORT_SYMBOL drivers/net/wireless/ath/ath10k/ath10k_core 0x90ea8d7d ath10k_ce_init_pipe +EXPORT_SYMBOL drivers/net/wireless/ath/ath10k/ath10k_core 0x927b24a4 ath10k_core_destroy +EXPORT_SYMBOL drivers/net/wireless/ath/ath10k/ath10k_core 0x9f53bbfc ath10k_ce_disable_interrupts +EXPORT_SYMBOL drivers/net/wireless/ath/ath10k/ath10k_core 0xacae68af __ath10k_ce_rx_num_free_bufs +EXPORT_SYMBOL drivers/net/wireless/ath/ath10k/ath10k_core 0xaf7dee83 ath10k_print_driver_info +EXPORT_SYMBOL drivers/net/wireless/ath/ath10k/ath10k_core 0xb2785df8 ath10k_warn +EXPORT_SYMBOL drivers/net/wireless/ath/ath10k/ath10k_core 0xc05f9a60 ath10k_ce_per_engine_service_any +EXPORT_SYMBOL drivers/net/wireless/ath/ath10k/ath10k_core 0xc13b1de1 ath10k_htc_notify_tx_completion +EXPORT_SYMBOL drivers/net/wireless/ath/ath10k/ath10k_core 0xc1b67b01 ath10k_ce_completed_recv_next_nolock +EXPORT_SYMBOL drivers/net/wireless/ath/ath10k/ath10k_core 0xc798cafa ath10k_htt_hif_tx_complete +EXPORT_SYMBOL drivers/net/wireless/ath/ath10k/ath10k_core 0xca050bde ath10k_ce_per_engine_service +EXPORT_SYMBOL drivers/net/wireless/ath/ath10k/ath10k_core 0xcba1e852 ath10k_ce_rx_update_write_idx +EXPORT_SYMBOL drivers/net/wireless/ath/ath10k/ath10k_core 0xccd83da5 ath10k_ce_num_free_src_entries +EXPORT_SYMBOL drivers/net/wireless/ath/ath10k/ath10k_core 0xd06248da ath10k_htt_rx_hl_indication +EXPORT_SYMBOL drivers/net/wireless/ath/ath10k/ath10k_core 0xd3c29370 ath10k_ce_alloc_pipe +EXPORT_SYMBOL drivers/net/wireless/ath/ath10k/ath10k_core 0xd4dbcd4c ath10k_ce_enable_interrupts +EXPORT_SYMBOL drivers/net/wireless/ath/ath10k/ath10k_core 0xdd3849b5 ath10k_core_stop +EXPORT_SYMBOL drivers/net/wireless/ath/ath10k/ath10k_core 0xe2fbb6be ath10k_info +EXPORT_SYMBOL drivers/net/wireless/ath/ath10k/ath10k_core 0xe9125c90 ath10k_ce_rx_post_buf +EXPORT_SYMBOL drivers/net/wireless/ath/ath10k/ath10k_core 0xee8cbd08 ath10k_mac_tx_push_pending +EXPORT_SYMBOL drivers/net/wireless/ath/ath10k/ath10k_core 0xf2d427e7 ath10k_core_create +EXPORT_SYMBOL drivers/net/wireless/ath/ath10k/ath10k_core 0xf8821f4d ath10k_ce_send +EXPORT_SYMBOL drivers/net/wireless/ath/ath10k/ath10k_core 0xf962afcc ath10k_htc_tx_completion_handler +EXPORT_SYMBOL drivers/net/wireless/ath/ath6kl/ath6kl_core 0x019fb347 ath6kl_cfg80211_resume +EXPORT_SYMBOL drivers/net/wireless/ath/ath6kl/ath6kl_core 0x1354043d ath6kl_warn +EXPORT_SYMBOL drivers/net/wireless/ath/ath6kl/ath6kl_core 0x13f5235c ath6kl_read_tgt_stats +EXPORT_SYMBOL drivers/net/wireless/ath/ath6kl/ath6kl_core 0x1c7c396f ath6kl_core_create +EXPORT_SYMBOL drivers/net/wireless/ath/ath6kl/ath6kl_core 0x3502feef ath6kl_info +EXPORT_SYMBOL drivers/net/wireless/ath/ath6kl/ath6kl_core 0x402189db ath6kl_core_init +EXPORT_SYMBOL drivers/net/wireless/ath/ath6kl/ath6kl_core 0x4a12e48d ath6kl_core_tx_complete +EXPORT_SYMBOL drivers/net/wireless/ath/ath6kl/ath6kl_core 0x68cb505b ath6kl_core_cleanup +EXPORT_SYMBOL drivers/net/wireless/ath/ath6kl/ath6kl_core 0x91cfb84a ath6kl_hif_rw_comp_handler +EXPORT_SYMBOL drivers/net/wireless/ath/ath6kl/ath6kl_core 0x987c3710 ath6kl_core_rx_complete +EXPORT_SYMBOL drivers/net/wireless/ath/ath6kl/ath6kl_core 0x9f0e701c ath6kl_cfg80211_suspend +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 0xcb149627 ath6kl_core_destroy +EXPORT_SYMBOL drivers/net/wireless/ath/ath6kl/ath6kl_core 0xd042186d ath6kl_hif_intr_bh_handler +EXPORT_SYMBOL drivers/net/wireless/ath/ath6kl/ath6kl_core 0xe2900987 ath6kl_stop_txrx +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_common 0x0ccabd42 ath9k_cmn_rx_accept +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_common 0x0e359656 ath9k_cmn_spectral_scan_trigger +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_common 0x17c8fb9e ath9k_cmn_spectral_deinit_debug +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_common 0x1ba0b680 ath9k_cmn_debug_phy_err +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_common 0x3bbe6ca1 ath9k_cmn_setup_ht_cap +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_common 0x48bf1ba3 ath9k_cmn_debug_base_eeprom +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_common 0x48dd6487 ath9k_cmn_spectral_scan_config +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_common 0x4da0fbff ath9k_cmn_get_hw_crypto_keytype +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_common 0x589d485b ath9k_cmn_process_rssi +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_common 0x59c321a2 ath9k_cmn_debug_recv +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_common 0x59d8888e ath9k_cmn_reload_chainmask +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_common 0x69748e62 ath9k_cmn_spectral_init_debug +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_common 0x80c1e35e ath9k_cmn_beacon_config_ap +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_common 0x929628b7 ath9k_cmn_update_txpow +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_common 0xa158746b ath9k_cmn_get_channel +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_common 0xb39bea3a ath_cmn_process_fft +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_common 0xb54edfdf ath9k_cmn_init_crypto +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_common 0xb76fccc7 ath9k_cmn_debug_stat_rx +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_common 0xc6bac6bf ath9k_cmn_init_channels_rates +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_common 0xced960b8 ath9k_cmn_beacon_config_sta +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_common 0xd2981357 ath9k_cmn_count_streams +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_common 0xe19de427 ath9k_cmn_process_rate +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_common 0xe3e8e77a ath9k_cmn_beacon_config_adhoc +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_common 0xfc722d39 ath9k_cmn_debug_modal_eeprom +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_common 0xff3e027a ath9k_cmn_rx_skb_postprocess +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x00b1eda0 ath9k_hw_setopmode +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x03585cbe ath9k_hw_wait +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x0454eff3 ath9k_hw_set_rx_bufsize +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x05c2ba42 ath9k_hw_deinit +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x081a9ad8 ath9k_hw_disable +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x0895dc14 ath9k_hw_enable_interrupts +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x0bebba4a ar9003_paprd_setup_gain_table +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x0f1293e4 ath9k_hw_set_tsfadjust +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x0f77dafc ath9k_hw_get_tsf_offset +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x1318c34f ath9k_hw_updatetxtriglevel +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x1a80b94e ath9k_hw_init_btcoex_hw +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x1cb5e8a0 ath9k_hw_init_global_settings +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x23646ac3 ath9k_hw_btcoex_set_weight +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x25237c81 ath9k_hw_settsf64 +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x276ea5dd ath9k_hw_gpio_request_out +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x2a5b0e9a ath9k_hw_abort_tx_dma +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x2d26e0d9 ath9k_hw_setuprxdesc +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x30c26aea ar9003_paprd_is_done +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x3221be51 ath9k_hw_btcoex_deinit +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x3302d29a ath9k_hw_setup_statusring +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x33ae42ea ath9k_hw_beaconinit +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x345efd9d ath9k_hw_kill_interrupts +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x356452e9 ath9k_hw_btcoex_disable +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x374ed768 ar9003_hw_bb_watchdog_dbg_info +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x3ca666f4 ath9k_hw_phy_disable +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x3ee50b0f ar9003_mci_send_wlan_channels +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x40d161a8 ar9003_hw_disable_phy_restart +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x413e3cbd ath9k_hw_resettxqueue +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x42b581e1 ath9k_hw_getchan_noise +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x47d7a991 ath9k_hw_gettxbuf +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x4ae590e5 ath9k_hw_rxprocdesc +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x4bd7ceac ath9k_hw_wow_apply_pattern +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x5196d208 ar9003_mci_set_bt_version +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x531559f4 ath9k_hw_beaconq_setup +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x57d6f83f ath9k_hw_name +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x5a5e32f8 ath9k_hw_set_txq_props +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x5b5405d4 ath9k_hw_setpower +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x5d229001 ath9k_hw_reset_calvalid +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x5fdcf207 ath9k_hw_reset +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x61bccd4a ath9k_hw_getrxfilter +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x66e27581 ath9k_hw_txstart +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x690cc309 ath9k_hw_wow_wakeup +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x6b71be84 ar9003_hw_bb_watchdog_check +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x6c5920b3 ath9k_hw_btcoex_init_scheme +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x6f5550c8 ath9k_hw_puttxbuf +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x71b3bc16 ath9k_hw_bstuck_nfcal +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x76c22ce1 ar9003_is_paprd_enabled +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x78f5ed9c ath_gen_timer_isr +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x7c99cbf7 ath9k_hw_gen_timer_start +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x7d58890d ath9k_hw_gpio_free +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x7ec61993 ath9k_hw_set_txpowerlimit +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x805a61b7 ath9k_hw_loadnf +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x82b875c7 ath9k_hw_btcoex_init_2wire +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x86aae335 ar9003_paprd_enable +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x897739eb ar9003_mci_state +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x8a053f4b ath9k_hw_resume_interrupts +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x8a75f579 ath_gen_timer_free +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x911114af ath9k_hw_btcoex_init_3wire +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x93e421d0 ath9k_hw_releasetxqueue +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x9589ae24 ar9003_paprd_populate_single_table +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x971148f5 ath9k_hw_ani_monitor +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x97ef8d0c ath9k_hw_set_gpio +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x9805d5b6 ar9003_mci_get_interrupt +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x9e615d81 ath9k_hw_numtxpending +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xa210d61f ar9003_mci_setup +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xa271f38e ath9k_hw_setrxfilter +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xaa1112a8 ar9003_paprd_init_table +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xaa252b77 ath9k_hw_gettsf64 +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xaa579f66 ath9k_hw_btcoex_init_mci +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xabd70217 ath9k_hw_gpio_get +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xadcefbe9 ath9k_hw_process_rxdesc_edma +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xb7a71cc7 ath9k_hw_wow_enable +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xbaf57a52 ath9k_hw_check_nav +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xbb792823 ath9k_hw_setuptxqueue +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xbe647884 ath9k_hw_set_tx_filter +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xbe8804ee ath9k_hw_computetxtime +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xbf6b2790 ath9k_hw_check_alive +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xc3f1e4fb ath9k_hw_gpio_request_in +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xc43d8b9e ath9k_hw_setantenna +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xc76a5527 ath9k_hw_setmcastfilter +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xc9e0563f ath9k_hw_gettsf32 +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xca01fb3f ath9k_hw_intrpend +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xcab63573 ar9003_mci_send_message +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xcd10ceb2 ath9k_hw_btcoex_bt_stomp +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xd121078a ath9k_hw_btcoex_set_concur_txprio +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xd180e104 ath9k_hw_putrxbuf +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xd4357041 ar9003_mci_get_next_gpm_offset +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xd75d6325 ath9k_hw_gen_timer_stop +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xd7759666 ath9k_hw_set_sta_beacon_timers +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xddbae8f9 ath9k_hw_abortpcurecv +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xde46f92d ath9k_hw_init +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xe099e7d3 ar9003_paprd_create_curve +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xe135c6fd ath9k_hw_get_txq_props +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xe356429e ath9k_hw_btcoex_enable +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xe379eb18 ar9003_get_pll_sqsum_dvc +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xe9b17503 ath9k_hw_setrxabort +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xecbb319d ath_gen_timer_alloc +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xee1c005c ath9k_hw_set_interrupts +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xf8de004f ath9k_hw_write_associd +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xf905f988 ath9k_hw_stopdmarecv +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xf95612f1 ath9k_hw_disable_mib_counters +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xfb254323 ath9k_hw_reset_tsf +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xfb87f86b ath9k_hw_stop_dma_queue +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xfc903f33 ar9003_mci_cleanup +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xfd0201fa ath9k_hw_startpcureceive +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xfec849d7 ath9k_hw_getnf +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xfef40316 ath9k_hw_disable_interrupts +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xffcf032c ath9k_hw_addrxbuf_edma +EXPORT_SYMBOL drivers/net/wireless/atmel/atmel 0x7bacd57e stop_atmel_card +EXPORT_SYMBOL drivers/net/wireless/atmel/atmel 0xec47e533 init_atmel_card +EXPORT_SYMBOL drivers/net/wireless/atmel/atmel 0xfe1d4784 atmel_open +EXPORT_SYMBOL drivers/net/wireless/broadcom/brcm80211/brcmutil/brcmutil 0x101ccb55 brcmu_pktq_pdeq_match +EXPORT_SYMBOL drivers/net/wireless/broadcom/brcm80211/brcmutil/brcmutil 0x1906648e brcmu_boardrev_str +EXPORT_SYMBOL drivers/net/wireless/broadcom/brcm80211/brcmutil/brcmutil 0x3283441c brcmu_pktq_flush +EXPORT_SYMBOL drivers/net/wireless/broadcom/brcm80211/brcmutil/brcmutil 0x50dad07c brcmu_pktq_pflush +EXPORT_SYMBOL drivers/net/wireless/broadcom/brcm80211/brcmutil/brcmutil 0x782e792f brcmu_pkt_buf_get_skb +EXPORT_SYMBOL drivers/net/wireless/broadcom/brcm80211/brcmutil/brcmutil 0x8cd6dde7 brcmu_pktq_pdeq +EXPORT_SYMBOL drivers/net/wireless/broadcom/brcm80211/brcmutil/brcmutil 0x97f09db9 brcmu_pktq_init +EXPORT_SYMBOL drivers/net/wireless/broadcom/brcm80211/brcmutil/brcmutil 0xa17c0ccf brcmu_dotrev_str +EXPORT_SYMBOL drivers/net/wireless/broadcom/brcm80211/brcmutil/brcmutil 0xa1f87aa3 brcmu_pktq_mlen +EXPORT_SYMBOL drivers/net/wireless/broadcom/brcm80211/brcmutil/brcmutil 0xa3b87a77 brcmu_pkt_buf_free_skb +EXPORT_SYMBOL drivers/net/wireless/broadcom/brcm80211/brcmutil/brcmutil 0xa6271388 brcmu_pktq_pdeq_tail +EXPORT_SYMBOL drivers/net/wireless/broadcom/brcm80211/brcmutil/brcmutil 0xaa4ce716 brcmu_pktq_penq_head +EXPORT_SYMBOL drivers/net/wireless/broadcom/brcm80211/brcmutil/brcmutil 0xce87591b brcmu_pktq_peek_tail +EXPORT_SYMBOL drivers/net/wireless/broadcom/brcm80211/brcmutil/brcmutil 0xd6217d91 brcmu_d11_attach +EXPORT_SYMBOL drivers/net/wireless/broadcom/brcm80211/brcmutil/brcmutil 0xf6f24637 brcmu_pktq_mdeq +EXPORT_SYMBOL drivers/net/wireless/broadcom/brcm80211/brcmutil/brcmutil 0xf746af44 brcmu_pktq_penq +EXPORT_SYMBOL drivers/net/wireless/cisco/airo 0x07451629 init_airo_card +EXPORT_SYMBOL drivers/net/wireless/cisco/airo 0x81859430 reset_airo_card +EXPORT_SYMBOL drivers/net/wireless/cisco/airo 0xa78d0129 stop_airo_card +EXPORT_SYMBOL drivers/net/wireless/intel/ipw2x00/libipw 0x0a3898d4 libipw_set_geo +EXPORT_SYMBOL drivers/net/wireless/intel/ipw2x00/libipw 0x126aedca libipw_channel_to_freq +EXPORT_SYMBOL drivers/net/wireless/intel/ipw2x00/libipw 0x18f55f74 libipw_wx_set_encode +EXPORT_SYMBOL drivers/net/wireless/intel/ipw2x00/libipw 0x1eea338b libipw_rx_mgt +EXPORT_SYMBOL drivers/net/wireless/intel/ipw2x00/libipw 0x25368ded libipw_wx_set_encodeext +EXPORT_SYMBOL drivers/net/wireless/intel/ipw2x00/libipw 0x44599d0e libipw_networks_age +EXPORT_SYMBOL drivers/net/wireless/intel/ipw2x00/libipw 0x69b65946 libipw_is_valid_channel +EXPORT_SYMBOL drivers/net/wireless/intel/ipw2x00/libipw 0x6aaf62cc libipw_get_geo +EXPORT_SYMBOL drivers/net/wireless/intel/ipw2x00/libipw 0x6d42072c libipw_get_channel +EXPORT_SYMBOL drivers/net/wireless/intel/ipw2x00/libipw 0x80890bdb libipw_wx_get_encodeext +EXPORT_SYMBOL drivers/net/wireless/intel/ipw2x00/libipw 0x8bf000e1 libipw_txb_free +EXPORT_SYMBOL drivers/net/wireless/intel/ipw2x00/libipw 0x90395125 libipw_channel_to_index +EXPORT_SYMBOL drivers/net/wireless/intel/ipw2x00/libipw 0x9517a67b libipw_get_channel_flags +EXPORT_SYMBOL drivers/net/wireless/intel/ipw2x00/libipw 0x96e26e06 libipw_rx +EXPORT_SYMBOL drivers/net/wireless/intel/ipw2x00/libipw 0xbec7fb15 free_libipw +EXPORT_SYMBOL drivers/net/wireless/intel/ipw2x00/libipw 0xc9dea90e alloc_libipw +EXPORT_SYMBOL drivers/net/wireless/intel/ipw2x00/libipw 0xcd8077a3 libipw_freq_to_channel +EXPORT_SYMBOL drivers/net/wireless/intel/ipw2x00/libipw 0xd4c0352d libipw_xmit +EXPORT_SYMBOL drivers/net/wireless/intel/ipw2x00/libipw 0xe9e8f0fc libipw_wx_get_encode +EXPORT_SYMBOL drivers/net/wireless/intel/ipw2x00/libipw 0xf6b6fac3 libipw_wx_get_scan +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x05c8ec12 il_init_scan_params +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x072b9a2f il_rx_queue_space +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x0ce3c45a il_clear_ucode_stations +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x12f90f20 il_send_add_sta +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x16981c25 il_scan_cancel_timeout +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x16de534d il_cmd_queue_unmap +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x21fe854f il_cancel_scan_deferred_work +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x228b7295 il_usecs_to_beacons +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x229769d0 il_hdl_csa +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x23f972af il_dbgfs_register +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x27b26db2 il_set_flags_for_band +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x2bf7eea6 il_queue_space +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x2cc75ef2 il_connection_init_rx_config +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x2d3761ea il_cmd_queue_free +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x33be7f05 il_apm_init +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x3495fa4b il_get_channel_info +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x372dc919 il_mac_bss_info_changed +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x38ffe39c _il_poll_bit +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x3ecb98dc il_fill_probe_req +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x40c5f676 il_read_targ_mem +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x416bd26a il_debug_level +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x46b9e800 il_leds_exit +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x46f0bd88 il_setup_scan_deferred_work +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x48557b3e il_alloc_txq_mem +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x49ba962b il_tx_queue_unmap +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x4c4accd9 il_update_stats +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x4d87dc7b il_get_single_channel_number +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x508f52ff il_rx_queue_alloc +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x50e2466c il_eeprom_init +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x55d2e515 il_send_cmd_pdu_async +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x58902098 il_set_tx_power +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x5b8a79c8 il_free_txq_mem +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x5d2e854b il_send_rxon_timing +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x5d49c21a il_tx_cmd_protection +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x5da53de3 il_mac_sta_remove +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x641c72d5 il_chswitch_done +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x65b425b3 il_wr_prph +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x663b94ba il_mac_reset_tsf +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x6a6c573a il_force_reset +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x6a94be46 il_pm_ops +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x6b19a80f il_send_stats_request +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x6b41db74 il_send_cmd +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x6f05108a il_eeprom_query16 +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x6f60d591 il_send_cmd_pdu +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x6f7e5435 il_power_initialize +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x74ac20a0 il_setup_rx_scan_handlers +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x78cab4c2 il_mac_flush +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x7ae6ad2b il_apm_stop +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x7ce7338e il_tx_queue_free +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x80c37438 il_tx_cmd_complete +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x829ba419 il_get_lowest_plcp +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x839934d4 il_tx_queue_reset +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x87ff49dd il_is_ht40_tx_allowed +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x89bbcb64 il_write_targ_mem +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x8b0e7df3 il_leds_init +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x91e8e8b5 il_rd_prph +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x92caa9dd il_set_rxon_channel +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x930d9118 il_add_beacon_time +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x935823e0 il_free_channel_map +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x962f27b1 il_mac_hw_scan +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x9715ef8c il_hdl_pm_sleep +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x9b1aead1 il_hdl_error +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x9b95ede5 il_send_lq_cmd +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x9cc714af il_bg_watchdog +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0xa2f2e9c7 il_mac_conf_tx +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0xa51a3018 il_clear_bit +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0xa60b12d9 il_hdl_spectrum_measurement +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0xa6514b74 il_send_cmd_sync +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0xa6d20125 il_mac_add_interface +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0xa88710c8 il_set_rate +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0xb484d33e il_mac_change_interface +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0xb65510a3 il_get_cmd_string +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0xb7bd33ff il_isr +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0xc013ad8f il_power_update_mode +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0xc5a2527e il_send_bt_config +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0xc90babce il_set_rxon_hwcrypto +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0xc99c7101 il_set_decrypted_flag +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0xca58c560 il_get_active_dwell_time +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0xcf725c94 il_poll_bit +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0xd2d7997a il_eeprom_free +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0xd70519c3 il_scan_cancel +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0xd71791a0 il_hdl_pm_debug_stats +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0xdb826384 il_irq_handle_error +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0xdc45bb6b il_check_rxon_cmd +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0xe19707c7 il_init_geos +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0xe269250b il_setup_watchdog +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0xe64cd4cf il_full_rxon_required +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0xe704b329 il_free_geos +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0xe7392807 il_get_free_ucode_key_idx +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0xe78a32c6 il_set_rxon_ht +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0xe944b289 il_add_station_common +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0xe9649899 il_eeprom_query_addr +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0xed9e0f9f il_dbgfs_unregister +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0xede12de2 il_set_bit +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0xf0a9485a il_restore_stations +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0xf1f882ae il_mac_remove_interface +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0xf22f09af _il_apm_stop +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0xf251add5 il_init_channel_map +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0xf3061701 il_txq_update_write_ptr +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0xf61a2021 il_get_passive_dwell_time +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0xf70a693b il_bcast_addr +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0xf833258f il_tx_queue_init +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0xf9d3019e il_mac_config +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0xfeea97ec il_rx_queue_update_write_ptr +EXPORT_SYMBOL drivers/net/wireless/intel/iwlwifi/iwlwifi 0x1ee9c199 __tracepoint_iwlwifi_dev_ucode_event +EXPORT_SYMBOL drivers/net/wireless/intel/iwlwifi/iwlwifi 0x20a6a247 __tracepoint_iwlwifi_dev_ucode_cont_event +EXPORT_SYMBOL drivers/net/wireless/intel/iwlwifi/iwlwifi 0xb72ade7d __tracepoint_iwlwifi_dev_ucode_wrap_event +EXPORT_SYMBOL drivers/net/wireless/intersil/hostap/hostap 0x086de031 hostap_set_hostapd +EXPORT_SYMBOL drivers/net/wireless/intersil/hostap/hostap 0x13abdd5a hostap_dump_tx_header +EXPORT_SYMBOL drivers/net/wireless/intersil/hostap/hostap 0x14a14be4 hostap_set_antsel +EXPORT_SYMBOL drivers/net/wireless/intersil/hostap/hostap 0x2870c3f0 hostap_add_interface +EXPORT_SYMBOL drivers/net/wireless/intersil/hostap/hostap 0x297472a0 hostap_check_sta_fw_version +EXPORT_SYMBOL drivers/net/wireless/intersil/hostap/hostap 0x39627114 hostap_info_init +EXPORT_SYMBOL drivers/net/wireless/intersil/hostap/hostap 0x3cb31674 hostap_init_data +EXPORT_SYMBOL drivers/net/wireless/intersil/hostap/hostap 0x450c8e28 hostap_set_roaming +EXPORT_SYMBOL drivers/net/wireless/intersil/hostap/hostap 0x49446711 hostap_info_process +EXPORT_SYMBOL drivers/net/wireless/intersil/hostap/hostap 0x4c63db8c hostap_set_string +EXPORT_SYMBOL drivers/net/wireless/intersil/hostap/hostap 0x502ca6a1 hostap_free_data +EXPORT_SYMBOL drivers/net/wireless/intersil/hostap/hostap 0x54d7e296 hostap_init_ap_proc +EXPORT_SYMBOL drivers/net/wireless/intersil/hostap/hostap 0x5d33a4e8 hostap_set_auth_algs +EXPORT_SYMBOL drivers/net/wireless/intersil/hostap/hostap 0x5ee653ad hostap_80211_rx +EXPORT_SYMBOL drivers/net/wireless/intersil/hostap/hostap 0x63251a00 hostap_handle_sta_tx_exc +EXPORT_SYMBOL drivers/net/wireless/intersil/hostap/hostap 0x735136b3 hostap_remove_interface +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 0x8d8b0c3b hostap_set_word +EXPORT_SYMBOL drivers/net/wireless/intersil/hostap/hostap 0x91df0330 prism2_update_comms_qual +EXPORT_SYMBOL drivers/net/wireless/intersil/hostap/hostap 0xa5e85704 hostap_80211_ops +EXPORT_SYMBOL drivers/net/wireless/intersil/hostap/hostap 0xb4b77c8b hostap_80211_get_hdrlen +EXPORT_SYMBOL drivers/net/wireless/intersil/hostap/hostap 0xbb20fe38 hostap_init_proc +EXPORT_SYMBOL drivers/net/wireless/intersil/hostap/hostap 0xc6d47253 hostap_remove_proc +EXPORT_SYMBOL drivers/net/wireless/intersil/hostap/hostap 0xce050a5b hostap_set_encryption +EXPORT_SYMBOL drivers/net/wireless/intersil/hostap/hostap 0xd3d34c5a hostap_get_porttype +EXPORT_SYMBOL drivers/net/wireless/intersil/hostap/hostap 0xd633cc9a hostap_master_start_xmit +EXPORT_SYMBOL drivers/net/wireless/intersil/hostap/hostap 0xe479663d hostap_setup_dev +EXPORT_SYMBOL drivers/net/wireless/intersil/hostap/hostap 0xfc0c78ea hostap_set_hostapd_sta +EXPORT_SYMBOL drivers/net/wireless/intersil/orinoco/orinoco 0x1281b746 orinoco_tx_timeout +EXPORT_SYMBOL drivers/net/wireless/intersil/orinoco/orinoco 0x20b542b4 hermes_struct_init +EXPORT_SYMBOL drivers/net/wireless/intersil/orinoco/orinoco 0x26965515 orinoco_change_mtu +EXPORT_SYMBOL drivers/net/wireless/intersil/orinoco/orinoco 0x2f67d5ff orinoco_set_multicast_list +EXPORT_SYMBOL drivers/net/wireless/intersil/orinoco/orinoco 0x351ba05c __orinoco_ev_rx +EXPORT_SYMBOL drivers/net/wireless/intersil/orinoco/orinoco 0x37831be0 orinoco_process_xmit_skb +EXPORT_SYMBOL drivers/net/wireless/intersil/orinoco/orinoco 0x5ebb82a5 orinoco_if_add +EXPORT_SYMBOL drivers/net/wireless/intersil/orinoco/orinoco 0x61706302 orinoco_open +EXPORT_SYMBOL drivers/net/wireless/intersil/orinoco/orinoco 0x85a60e4f alloc_orinocodev +EXPORT_SYMBOL drivers/net/wireless/intersil/orinoco/orinoco 0x9753e4c9 __orinoco_ev_info +EXPORT_SYMBOL drivers/net/wireless/intersil/orinoco/orinoco 0x997f9775 orinoco_up +EXPORT_SYMBOL drivers/net/wireless/intersil/orinoco/orinoco 0xa83d2fe5 orinoco_down +EXPORT_SYMBOL drivers/net/wireless/intersil/orinoco/orinoco 0xb20fbb6a orinoco_stop +EXPORT_SYMBOL drivers/net/wireless/intersil/orinoco/orinoco 0xc761ae54 orinoco_if_del +EXPORT_SYMBOL drivers/net/wireless/intersil/orinoco/orinoco 0xfa6683ac orinoco_init +EXPORT_SYMBOL drivers/net/wireless/intersil/orinoco/orinoco 0xfe9b5fee free_orinocodev +EXPORT_SYMBOL drivers/net/wireless/intersil/orinoco/orinoco 0xffe27bca orinoco_interrupt +EXPORT_SYMBOL drivers/net/wireless/mediatek/mt76/mt76 0x95cc9f67 mt76_wcid_key_setup +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/btcoexist/btcoexist 0x64f4ec52 rtl_btc_get_ops_pointer +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtl8192c/rtl8192c-common 0x05de7db3 rtl92c_phy_sw_chnl_callback +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtl8192c/rtl8192c-common 0x1792fcf6 rtl92c_set_fw_rsvdpagepkt +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtl8192c/rtl8192c-common 0x18dd6469 rtl92c_phy_set_io_cmd +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 0x31c79e04 _rtl92c_store_pwrindex_diffrate_offset +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtl8192c/rtl8192c-common 0x393c2274 _rtl92c_phy_dbm_to_txpwr_idx +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtl8192c/rtl8192c-common 0x3ab381dd rtl92c_dm_check_txpower_tracking +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtl8192c/rtl8192c-common 0x47bb8ed7 _rtl92c_phy_rf_serial_read +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtl8192c/rtl8192c-common 0x541d20f0 rtl92c_firmware_selfreset +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtl8192c/rtl8192c-common 0x54f5ad38 _rtl92c_phy_fw_rf_serial_write +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtl8192c/rtl8192c-common 0x59b6476e rtl92c_set_fw_joinbss_report_cmd +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtl8192c/rtl8192c-common 0x5e9cb63e rtl92c_phy_rf_config +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtl8192c/rtl8192c-common 0x63087fdc rtl92c_dm_init +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtl8192c/rtl8192c-common 0x6aac4290 rtl92ce_phy_set_rf_on +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtl8192c/rtl8192c-common 0x752a6f14 rtl92c_phy_lc_calibrate +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtl8192c/rtl8192c-common 0x7d7737ae rtl92c_set_fw_pwrmode_cmd +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtl8192c/rtl8192c-common 0x7d946d9a rtl92c_dm_watchdog +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtl8192c/rtl8192c-common 0x83589610 rtl92c_phy_iq_calibrate +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtl8192c/rtl8192c-common 0x93ffc764 rtl92c_fill_h2c_cmd +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtl8192c/rtl8192c-common 0x9e3ae10a _rtl92c_phy_bb8192c_config_parafile +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtl8192c/rtl8192c-common 0xa39547a3 rtl92c_download_fw +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtl8192c/rtl8192c-common 0xa490afb7 rtl92c_phy_query_bb_reg +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtl8192c/rtl8192c-common 0xaaf544d4 rtl92c_phy_set_bw_mode +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtl8192c/rtl8192c-common 0xab143dd3 rtl92c_phy_ap_calibrate +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtl8192c/rtl8192c-common 0xab86e3b9 rtl92c_phy_set_txpower_level +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtl8192c/rtl8192c-common 0xae635c38 rtl92c_phy_sw_chnl +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtl8192c/rtl8192c-common 0xb6a02fc1 _rtl92c_phy_init_bb_rf_register_definition +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtl8192c/rtl8192c-common 0xb93e48b5 _rtl92c_phy_set_rf_sleep +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtl8192c/rtl8192c-common 0xbf256096 rtl92c_bt_rssi_state_change +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtl8192c/rtl8192c-common 0xc6f7d45c rtl92c_phy_update_txpower_dbm +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtl8192c/rtl8192c-common 0xcba4482e rtl92c_dm_rf_saving +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtl8192c/rtl8192c-common 0xccacdf18 rtl92c_phy_set_rfpath_switch +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtl8192c/rtl8192c-common 0xd6b79a57 _rtl92c_phy_fw_rf_serial_read +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtl8192c/rtl8192c-common 0xd8c8422e rtl92c_dm_init_rate_adaptive_mask +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtl8192c/rtl8192c-common 0xdc2aef40 rtl92c_dm_bt_coexist +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtl8192c/rtl8192c-common 0xde7d62f5 rtl92c_phy_set_bb_reg +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtl8192c/rtl8192c-common 0xe009636c _rtl92c_phy_rf_serial_write +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtl8192c/rtl8192c-common 0xe40f2979 rtl92c_dm_write_dig +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtl8192c/rtl8192c-common 0xeb12c6c9 _rtl92c_phy_txpwr_idx_to_dbm +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtl8192c/rtl8192c-common 0xf36faaa4 rtl92c_phy_set_io +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtl8192c/rtl8192c-common 0xf87f4f3f rtl92c_dm_init_edca_turbo +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtl8192c/rtl8192c-common 0xff9a5c61 rtl8192_phy_check_is_legal_rfpath +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtl_pci 0x69e42ba0 rtl_pci_probe +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtl_pci 0x8acdd60b rtl_pci_resume +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtl_pci 0xa7b08353 rtl_pci_suspend +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtl_pci 0xda32bf53 rtl_pci_disconnect +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtl_usb 0x1da4db90 rtl_usb_probe +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtl_usb 0x2504aa53 rtl_usb_disconnect +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtl_usb 0x876aea65 rtl_usb_suspend +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtl_usb 0xea4cfe77 rtl_usb_resume +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtlwifi 0x018f8b84 efuse_shadow_read +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtlwifi 0x03fa42c4 rtl_hal_pwrseqcmdparsing +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtlwifi 0x0b038e24 channel5g_80m +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtlwifi 0x0cba0b32 rtl_signal_scale_mapping +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtlwifi 0x11b66d8d rtl_phy_scan_operation_backup +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtlwifi 0x1b945315 rtl_addr_delay +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtlwifi 0x21dff863 efuse_power_switch +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtlwifi 0x26433f7b rtl_ps_enable_nic +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtlwifi 0x305a4254 rtl_ps_disable_nic +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtlwifi 0x30a956d7 rtl_query_rxpwrpercentage +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtlwifi 0x3eecd95c rtl_cmd_send_packet +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtlwifi 0x4c426c35 rtl_bb_delay +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtlwifi 0x4cd6e330 rtl_rfreg_delay +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtlwifi 0x4ed81122 rtl_process_phyinfo +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtlwifi 0x4f33534d rtl_efuse_shadow_map_update +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtlwifi 0x54824f58 channel5g +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtlwifi 0x61f41cb5 rtl_mrate_idx_to_arfr_id +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtlwifi 0x755e30ad rtl_init_rfkill +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtlwifi 0x79ccf3a2 efuse_one_byte_read +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtlwifi 0x7ba74ee6 rtl_cam_add_one_entry +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtlwifi 0x7f00fb29 rtl_cam_mark_invalid +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtlwifi 0x7fe8c38a rtl_cam_delete_one_entry +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtlwifi 0x8ea60059 rtl_fw_cb +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtlwifi 0x9895f6c0 rtl_cam_del_entry +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtlwifi 0x9f5d7c95 rtl_cam_get_free_entry +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtlwifi 0xa25afce9 rtl_send_smps_action +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtlwifi 0xa468c3cb rtl_collect_scan_list +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtlwifi 0xa6666333 rtl_dm_diginit +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtlwifi 0xae6025ad rtl_cam_reset_all_entry +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtlwifi 0xb24d67c3 rtl_cam_empty_entry +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtlwifi 0xb7d5a040 efuse_read_1byte +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtlwifi 0xb7ff4663 rtlwifi_rate_mapping +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtlwifi 0xbdb04359 rtl_rx_ampdu_apply +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtlwifi 0xcb9c8e38 rtl_get_tcb_desc +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 0xf3730d62 rtl_c2hcmd_enqueue +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw88/rtw88_8723d 0xb77b5921 rtw8723d_hw_spec +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw88/rtw88_8822b 0x5c9b2393 rtw8822b_hw_spec +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw88/rtw88_8822c 0xb35948ad rtw8822c_hw_spec +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw88/rtw88_core 0x086468c6 rtw_phy_write_rf_reg_mix +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw88/rtw88_core 0x0cd6d62e rtw_restore_reg +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw88/rtw88_core 0x178c1e63 rtw_phy_cfg_agc +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw88/rtw88_core 0x1b4187ef rtw_tx_write_data_rsvd_page_get +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw88/rtw88_core 0x1e22abb6 rtw_phy_set_tx_power_level +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw88/rtw88_core 0x325149a4 rtw_bf_enable_bfee_mu +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw88/rtw88_core 0x33b3f3c0 rtw_debug_mask +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw88/rtw88_core 0x34c702c4 rtw_coex_write_indirect_reg +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw88/rtw88_core 0x3b6dfe9e rtw_phy_cfg_rf +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw88/rtw88_core 0x401ffe3d rtw_core_deinit +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw88/rtw88_core 0x434bedc3 rtw_phy_init +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 0x442ea24a rtw_phy_cfg_mac +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw88/rtw88_core 0x4a17a2b0 rtw_parse_tbl_txpwr_lmt +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw88/rtw88_core 0x519c8ba9 rtw_rate_size +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw88/rtw88_core 0x58210e60 rtw_rate_section +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw88/rtw88_core 0x598151f0 rtw_bf_set_gid_table +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw88/rtw88_core 0x60e831c5 rtw_phy_pwrtrack_get_pwridx +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw88/rtw88_core 0x656cc0b7 rtw_parse_tbl_bb_pg +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw88/rtw88_core 0x69925745 rtw_rx_stats +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw88/rtw88_core 0x71ed0113 rtw_coex_read_indirect_reg +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw88/rtw88_core 0x79dde290 rtw_register_hw +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw88/rtw88_core 0x7efb6e42 rtw_tx_fill_tx_desc +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw88/rtw88_core 0x81db4861 rtw_phy_pwrtrack_need_iqk +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw88/rtw88_core 0x8b81c41e rtw_phy_read_rf_sipi +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw88/rtw88_core 0x8ec00a41 rtw_bf_enable_bfee_su +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw88/rtw88_core 0x92aa1376 rtw_tx_write_data_h2c_get +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw88/rtw88_core 0x966e2112 rtw_phy_pwrtrack_avg +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw88/rtw88_core 0x98065867 rtw_bf_phy_init +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw88/rtw88_core 0x99519abe rtw_phy_pwrtrack_thermal_changed +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw88/rtw88_core 0x9a60698d rtw_ops +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw88/rtw88_core 0x9fc629b5 rtw_fw_c2h_cmd_rx_irqsafe +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw88/rtw88_core 0xa05a66d4 rtw_phy_write_rf_reg_sipi +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw88/rtw88_core 0xa89fb549 rtw_coex_write_scbd +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw88/rtw88_core 0xab4051c5 rtw_chip_info_setup +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw88/rtw88_core 0xaba1795e rtw_phy_pwrtrack_get_delta +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw88/rtw88_core 0xad5bb9ed rtw_rx_fill_rx_status +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw88/rtw88_core 0xb6475a50 check_hw_ready +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw88/rtw88_core 0xba2a5bfa rtw_phy_get_tx_power_index +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw88/rtw88_core 0xbef4b856 rtw_phy_read_rf +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw88/rtw88_core 0xbf4c4646 rtw_phy_cfg_bb +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw88/rtw88_core 0xbfefe4d8 rtw_phy_load_tables +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw88/rtw88_core 0xc8ee08f0 rtw_core_init +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw88/rtw88_core 0xcbef54a5 rtw_bf_cfg_csi_rate +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw88/rtw88_core 0xd03e0534 rtw_phy_config_swing_table +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw88/rtw88_core 0xd4925e9e rtw_read8_physical_efuse +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw88/rtw88_core 0xd51c169a rtw_bf_remove_bfee_mu +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw88/rtw88_core 0xdb08447d rtw_unregister_hw +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw88/rtw88_core 0xdb6491a2 rtw_set_channel_mac +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw88/rtw88_core 0xdbea6050 rtw_tx_report_enqueue +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw88/rtw88_core 0xea8ef790 rtw_fw_do_iqk +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw88/rtw88_core 0xeb8f31d5 __rtw_dbg +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw88/rtw88_core 0xef1c1d61 rtw_parse_tbl_phy_cond +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw88/rtw88_core 0xef69fcd8 rtw_power_mode_change +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw88/rtw88_core 0xf34249ad rtw_fw_lps_deep_mode +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw88/rtw88_core 0xfd8d0dfd rtw_bf_remove_bfee_su +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw88/rtw88_pci 0x40d7bb9e rtw_pci_probe +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw88/rtw88_pci 0x569f33e1 rtw_pci_shutdown +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw88/rtw88_pci 0xa35879a5 rtw_pm_ops +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw88/rtw88_pci 0xb7b2a616 rtw_pci_remove +EXPORT_SYMBOL drivers/net/wireless/rsi/rsi_91x 0xd0dd2051 rsi_config_wowlan +EXPORT_SYMBOL drivers/net/wireless/ti/wlcore/wlcore 0x150a6f54 wl12xx_is_dummy_packet +EXPORT_SYMBOL drivers/net/wireless/ti/wlcore/wlcore 0xb289723b wl1271_free_tx_id +EXPORT_SYMBOL drivers/net/wireless/ti/wlcore/wlcore 0xb7489dfd wlcore_calc_packet_alignment +EXPORT_SYMBOL drivers/net/wireless/ti/wlcore/wlcore 0xde7dbc3b wlcore_tx_complete +EXPORT_SYMBOL drivers/nfc/fdp/fdp 0x2515d06f fdp_nci_remove +EXPORT_SYMBOL drivers/nfc/fdp/fdp 0x4ad7eb1a fdp_nci_probe +EXPORT_SYMBOL drivers/nfc/fdp/fdp 0xd7e3687d fdp_nci_recv_frame +EXPORT_SYMBOL drivers/nfc/microread/microread 0x24bbc633 microread_probe +EXPORT_SYMBOL drivers/nfc/microread/microread 0xff34dfb9 microread_remove +EXPORT_SYMBOL drivers/nfc/nxp-nci/nxp-nci 0x5f1c02fc nxp_nci_probe +EXPORT_SYMBOL drivers/nfc/nxp-nci/nxp-nci 0x6b79a745 nxp_nci_remove +EXPORT_SYMBOL drivers/nfc/nxp-nci/nxp-nci 0xac0105a7 nxp_nci_fw_recv_frame +EXPORT_SYMBOL drivers/nfc/pn533/pn533 0xa1d60367 pn533_recv_frame +EXPORT_SYMBOL drivers/nfc/pn544/pn544 0x2dbec342 pn544_hci_probe +EXPORT_SYMBOL drivers/nfc/pn544/pn544 0x5dcf1331 pn544_hci_remove +EXPORT_SYMBOL drivers/nfc/s3fwrn5/s3fwrn5 0x4a0f5a3d s3fwrn5_probe +EXPORT_SYMBOL drivers/nfc/s3fwrn5/s3fwrn5 0x5795f551 s3fwrn5_remove +EXPORT_SYMBOL drivers/nfc/s3fwrn5/s3fwrn5 0xf02756cb s3fwrn5_recv_frame +EXPORT_SYMBOL drivers/nfc/st-nci/st-nci 0x0f1abae5 ndlc_recv +EXPORT_SYMBOL drivers/nfc/st-nci/st-nci 0x1ef35298 st_nci_se_io +EXPORT_SYMBOL drivers/nfc/st-nci/st-nci 0x2514a962 ndlc_probe +EXPORT_SYMBOL drivers/nfc/st-nci/st-nci 0x4b5653db ndlc_remove +EXPORT_SYMBOL drivers/nfc/st-nci/st-nci 0x61f61c6f ndlc_send +EXPORT_SYMBOL drivers/nfc/st-nci/st-nci 0x66d5e83a ndlc_close +EXPORT_SYMBOL drivers/nfc/st-nci/st-nci 0x7dd639c6 st_nci_se_deinit +EXPORT_SYMBOL drivers/nfc/st-nci/st-nci 0x9fb71495 st_nci_se_init +EXPORT_SYMBOL drivers/nfc/st-nci/st-nci 0xef86ff5f st_nci_vendor_cmds_init +EXPORT_SYMBOL drivers/nfc/st-nci/st-nci 0xf49fa84a ndlc_open +EXPORT_SYMBOL drivers/nfc/st21nfca/st21nfca_hci 0x2cf4a521 st21nfca_hci_se_io +EXPORT_SYMBOL drivers/nfc/st21nfca/st21nfca_hci 0x36883bb5 st21nfca_vendor_cmds_init +EXPORT_SYMBOL drivers/nfc/st21nfca/st21nfca_hci 0x3d3677cb st21nfca_dep_deinit +EXPORT_SYMBOL drivers/nfc/st21nfca/st21nfca_hci 0x52ffaf0e st21nfca_se_init +EXPORT_SYMBOL drivers/nfc/st21nfca/st21nfca_hci 0x57065647 st21nfca_hci_probe +EXPORT_SYMBOL drivers/nfc/st21nfca/st21nfca_hci 0x6d10c969 st21nfca_im_send_dep_req +EXPORT_SYMBOL drivers/nfc/st21nfca/st21nfca_hci 0x7d9f232a st21nfca_hci_disable_se +EXPORT_SYMBOL drivers/nfc/st21nfca/st21nfca_hci 0x88353fe7 st21nfca_tm_send_dep_res +EXPORT_SYMBOL drivers/nfc/st21nfca/st21nfca_hci 0x9d918ba0 st21nfca_hci_remove +EXPORT_SYMBOL drivers/nfc/st21nfca/st21nfca_hci 0xa026c6f6 st21nfca_hci_enable_se +EXPORT_SYMBOL drivers/nfc/st21nfca/st21nfca_hci 0xa23d2720 st21nfca_dep_init +EXPORT_SYMBOL drivers/nfc/st21nfca/st21nfca_hci 0xaa07aefb st21nfca_hci_loopback_event_received +EXPORT_SYMBOL drivers/nfc/st21nfca/st21nfca_hci 0xac3ebadc st21nfca_connectivity_event_received +EXPORT_SYMBOL drivers/nfc/st21nfca/st21nfca_hci 0xd5528537 st21nfca_se_deinit +EXPORT_SYMBOL drivers/nfc/st21nfca/st21nfca_hci 0xd7ea4bb7 st21nfca_dep_event_received +EXPORT_SYMBOL drivers/nfc/st21nfca/st21nfca_hci 0xdb917b39 st21nfca_apdu_reader_event_received +EXPORT_SYMBOL drivers/nfc/st21nfca/st21nfca_hci 0xea38737e st21nfca_hci_discover_se +EXPORT_SYMBOL drivers/nfc/st21nfca/st21nfca_hci 0xfcf0759b st21nfca_im_send_atr_req +EXPORT_SYMBOL drivers/ntb/ntb 0x07c9bb71 ntb_unregister_device +EXPORT_SYMBOL drivers/ntb/ntb 0x1ce9afee ntb_msi_init +EXPORT_SYMBOL drivers/ntb/ntb 0x228864cf ntb_unregister_client +EXPORT_SYMBOL drivers/ntb/ntb 0x29a18e77 ntb_db_event +EXPORT_SYMBOL drivers/ntb/ntb 0x3546651e ntb_default_peer_port_idx +EXPORT_SYMBOL drivers/ntb/ntb 0x40def721 ntb_register_device +EXPORT_SYMBOL drivers/ntb/ntb 0x498ad347 ntb_msg_event +EXPORT_SYMBOL drivers/ntb/ntb 0x714c23a1 ntb_set_ctx +EXPORT_SYMBOL drivers/ntb/ntb 0x715c0cd5 ntb_msi_peer_trigger +EXPORT_SYMBOL drivers/ntb/ntb 0x8b7b4a50 __ntb_register_client +EXPORT_SYMBOL drivers/ntb/ntb 0x91c3dbb8 ntbm_msi_free_irq +EXPORT_SYMBOL drivers/ntb/ntb 0xa21c7975 ntb_msi_setup_mws +EXPORT_SYMBOL drivers/ntb/ntb 0xa40dbdaa ntb_default_port_number +EXPORT_SYMBOL drivers/ntb/ntb 0xafa99fe1 ntb_msi_peer_addr +EXPORT_SYMBOL drivers/ntb/ntb 0xb52a2831 ntb_msi_clear_mws +EXPORT_SYMBOL drivers/ntb/ntb 0xc2383a70 ntb_clear_ctx +EXPORT_SYMBOL drivers/ntb/ntb 0xd14cd87a ntb_link_event +EXPORT_SYMBOL drivers/ntb/ntb 0xe185a3d0 ntbm_msi_request_threaded_irq +EXPORT_SYMBOL drivers/ntb/ntb 0xe3c678d4 ntb_default_peer_port_count +EXPORT_SYMBOL drivers/ntb/ntb 0xf6096fd9 ntb_default_peer_port_number +EXPORT_SYMBOL drivers/nvdimm/nd_btt 0x2e719b04 nvdimm_namespace_attach_btt +EXPORT_SYMBOL drivers/nvdimm/nd_btt 0xd899e780 nvdimm_namespace_detach_btt +EXPORT_SYMBOL drivers/parport/parport 0x04aa1921 parport_ieee1284_ecp_write_data +EXPORT_SYMBOL drivers/parport/parport 0x05f22fc6 parport_register_port +EXPORT_SYMBOL drivers/parport/parport 0x21c6b2bf __parport_register_driver +EXPORT_SYMBOL drivers/parport/parport 0x271ca016 parport_find_base +EXPORT_SYMBOL drivers/parport/parport 0x2bf1ebfc parport_unregister_driver +EXPORT_SYMBOL drivers/parport/parport 0x2c7623fc parport_ieee1284_epp_write_addr +EXPORT_SYMBOL drivers/parport/parport 0x31d14498 parport_wait_peripheral +EXPORT_SYMBOL drivers/parport/parport 0x36261a81 parport_write +EXPORT_SYMBOL drivers/parport/parport 0x3fae1a47 parport_negotiate +EXPORT_SYMBOL drivers/parport/parport 0x4b07bf59 parport_claim_or_block +EXPORT_SYMBOL drivers/parport/parport 0x4d2a941b parport_ieee1284_interrupt +EXPORT_SYMBOL drivers/parport/parport 0x4de72d7e parport_ieee1284_epp_write_data +EXPORT_SYMBOL drivers/parport/parport 0x50ed3707 parport_wait_event +EXPORT_SYMBOL drivers/parport/parport 0x54215914 parport_set_timeout +EXPORT_SYMBOL drivers/parport/parport 0x5e3a3912 parport_irq_handler +EXPORT_SYMBOL drivers/parport/parport 0x653b17a3 parport_ieee1284_ecp_write_addr +EXPORT_SYMBOL drivers/parport/parport 0x663bd6ee parport_remove_port +EXPORT_SYMBOL drivers/parport/parport 0x72aa5604 parport_read +EXPORT_SYMBOL drivers/parport/parport 0x730c89e6 parport_get_port +EXPORT_SYMBOL drivers/parport/parport 0x7bcf11f4 parport_ieee1284_ecp_read_data +EXPORT_SYMBOL drivers/parport/parport 0xb722daa8 parport_unregister_device +EXPORT_SYMBOL drivers/parport/parport 0xb7a68ab7 parport_announce_port +EXPORT_SYMBOL drivers/parport/parport 0xc0c96a5f parport_ieee1284_write_compat +EXPORT_SYMBOL drivers/parport/parport 0xc249decb parport_find_number +EXPORT_SYMBOL drivers/parport/parport 0xc986b4ce parport_ieee1284_read_nibble +EXPORT_SYMBOL drivers/parport/parport 0xcbd3def7 parport_register_dev_model +EXPORT_SYMBOL drivers/parport/parport 0xd9a1f9a1 parport_ieee1284_epp_read_addr +EXPORT_SYMBOL drivers/parport/parport 0xdf1f7530 parport_release +EXPORT_SYMBOL drivers/parport/parport 0xe79a3915 parport_ieee1284_epp_read_data +EXPORT_SYMBOL drivers/parport/parport 0xe9296e3c parport_claim +EXPORT_SYMBOL drivers/parport/parport 0xebe3c8f7 parport_put_port +EXPORT_SYMBOL drivers/parport/parport 0xefcc78d0 parport_del_port +EXPORT_SYMBOL drivers/parport/parport 0xf608de42 parport_ieee1284_read_byte +EXPORT_SYMBOL drivers/parport/parport_pc 0x2e128775 parport_pc_unregister_port +EXPORT_SYMBOL drivers/parport/parport_pc 0xcdead602 parport_pc_probe_port +EXPORT_SYMBOL drivers/pcmcia/pcmcia 0x0afecea2 pcmcia_request_irq +EXPORT_SYMBOL drivers/pcmcia/pcmcia 0x104aee36 pcmcia_write_config_byte +EXPORT_SYMBOL drivers/pcmcia/pcmcia 0x2e5c6ad8 pcmcia_loop_config +EXPORT_SYMBOL drivers/pcmcia/pcmcia 0x30d1a754 pcmcia_get_mac_from_cis +EXPORT_SYMBOL drivers/pcmcia/pcmcia 0x326ca6fa pcmcia_unregister_driver +EXPORT_SYMBOL drivers/pcmcia/pcmcia 0x34fcc55e pcmcia_read_config_byte +EXPORT_SYMBOL drivers/pcmcia/pcmcia 0x36a75076 pcmcia_register_driver +EXPORT_SYMBOL drivers/pcmcia/pcmcia 0x431a74bb pcmcia_get_tuple +EXPORT_SYMBOL drivers/pcmcia/pcmcia 0x48856947 pcmcia_fixup_vpp +EXPORT_SYMBOL drivers/pcmcia/pcmcia 0x6e7bf5b5 pcmcia_disable_device +EXPORT_SYMBOL drivers/pcmcia/pcmcia 0x7ff36ea2 pcmcia_fixup_iowidth +EXPORT_SYMBOL drivers/pcmcia/pcmcia 0x82fd7025 pcmcia_dev_present +EXPORT_SYMBOL drivers/pcmcia/pcmcia 0x9132db24 pcmcia_map_mem_page +EXPORT_SYMBOL drivers/pcmcia/pcmcia 0x9ed0b1ea pcmcia_release_window +EXPORT_SYMBOL drivers/pcmcia/pcmcia 0xa1a7ac83 pcmcia_request_window +EXPORT_SYMBOL drivers/pcmcia/pcmcia 0xbb312663 pcmcia_parse_tuple +EXPORT_SYMBOL drivers/pcmcia/pcmcia 0xd1839da3 pcmcia_loop_tuple +EXPORT_SYMBOL drivers/pcmcia/pcmcia 0xe0533ab2 pcmcia_enable_device +EXPORT_SYMBOL drivers/pcmcia/pcmcia 0xec339852 pcmcia_request_io +EXPORT_SYMBOL drivers/pcmcia/pcmcia_core 0x066a89d3 pcmcia_get_socket +EXPORT_SYMBOL drivers/pcmcia/pcmcia_core 0x212db8d2 pcmcia_socket_list +EXPORT_SYMBOL drivers/pcmcia/pcmcia_core 0x265b2a69 pcmcia_register_socket +EXPORT_SYMBOL drivers/pcmcia/pcmcia_core 0x4e2a8fe4 pcmcia_get_socket_by_nr +EXPORT_SYMBOL drivers/pcmcia/pcmcia_core 0x58520946 pccard_register_pcmcia +EXPORT_SYMBOL drivers/pcmcia/pcmcia_core 0x5d58b529 pcmcia_parse_uevents +EXPORT_SYMBOL drivers/pcmcia/pcmcia_core 0x62aa5045 pcmcia_put_socket +EXPORT_SYMBOL drivers/pcmcia/pcmcia_core 0x7c640d82 pcmcia_unregister_socket +EXPORT_SYMBOL drivers/pcmcia/pcmcia_core 0xb1ae132b pcmcia_socket_class +EXPORT_SYMBOL drivers/pcmcia/pcmcia_core 0xb2bd6f7a pcmcia_reset_card +EXPORT_SYMBOL drivers/pcmcia/pcmcia_core 0xcf97f3bd dead_socket +EXPORT_SYMBOL drivers/pcmcia/pcmcia_core 0xe1a6b592 pcmcia_parse_events +EXPORT_SYMBOL drivers/pcmcia/pcmcia_core 0xf942709b pcmcia_socket_list_rwsem +EXPORT_SYMBOL drivers/pcmcia/pcmcia_rsrc 0xb96b2aba pccard_nonstatic_ops +EXPORT_SYMBOL drivers/pcmcia/pcmcia_rsrc 0xfa9fbfd2 pccard_static_ops +EXPORT_SYMBOL drivers/platform/chrome/cros_ec 0x17c9d2d1 cros_ec_unregister +EXPORT_SYMBOL drivers/platform/chrome/cros_ec 0x187ba708 cros_ec_suspend +EXPORT_SYMBOL drivers/platform/chrome/cros_ec 0x7015a965 cros_ec_resume +EXPORT_SYMBOL drivers/platform/chrome/cros_ec 0x97d96bac cros_ec_handle_event +EXPORT_SYMBOL drivers/platform/chrome/cros_ec 0xb60ea7b5 cros_ec_register +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/chrome/cros_ec_lpcs 0xf5c87c59 cros_ec_lpc_mec_destroy +EXPORT_SYMBOL drivers/platform/x86/dcdbas 0xa75079d6 dcdbas_smi_request +EXPORT_SYMBOL drivers/platform/x86/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 0x607e10ee wmi_driver_unregister +EXPORT_SYMBOL drivers/platform/x86/wmi 0x68c42e94 __wmi_driver_register +EXPORT_SYMBOL drivers/rpmsg/rpmsg_core 0x18022364 rpmsg_send +EXPORT_SYMBOL drivers/rpmsg/rpmsg_core 0x1dbdc172 rpmsg_poll +EXPORT_SYMBOL drivers/rpmsg/rpmsg_core 0x318f8c96 rpmsg_trysend_offchannel +EXPORT_SYMBOL drivers/rpmsg/rpmsg_core 0x31c56161 rpmsg_send_offchannel +EXPORT_SYMBOL drivers/rpmsg/rpmsg_core 0x3d7f7fe4 rpmsg_trysendto +EXPORT_SYMBOL drivers/rpmsg/rpmsg_core 0x46ef3c7d rpmsg_find_device +EXPORT_SYMBOL drivers/rpmsg/rpmsg_core 0x4fd46f5d __register_rpmsg_driver +EXPORT_SYMBOL drivers/rpmsg/rpmsg_core 0x58a2f7d2 rpmsg_sendto +EXPORT_SYMBOL drivers/rpmsg/rpmsg_core 0x5e067198 rpmsg_create_ept +EXPORT_SYMBOL drivers/rpmsg/rpmsg_core 0x6b66e074 rpmsg_unregister_device +EXPORT_SYMBOL drivers/rpmsg/rpmsg_core 0xeb64e190 unregister_rpmsg_driver +EXPORT_SYMBOL drivers/rpmsg/rpmsg_core 0xf14f1fa9 rpmsg_destroy_ept +EXPORT_SYMBOL drivers/rpmsg/rpmsg_core 0xf154c242 rpmsg_trysend +EXPORT_SYMBOL drivers/rpmsg/rpmsg_core 0xf1aed14d rpmsg_register_device +EXPORT_SYMBOL drivers/rtc/rtc-ds1685 0x26b9393f ds1685_rtc_poweroff +EXPORT_SYMBOL drivers/scsi/53c700 0x25bd2169 NCR_700_release +EXPORT_SYMBOL drivers/scsi/53c700 0x3d9cece0 NCR_700_intr +EXPORT_SYMBOL drivers/scsi/53c700 0x5629a2a7 NCR_700_detect +EXPORT_SYMBOL drivers/scsi/esp_scsi 0x4a29ab38 scsi_esp_intr +EXPORT_SYMBOL drivers/scsi/esp_scsi 0x6eadbcef scsi_esp_unregister +EXPORT_SYMBOL drivers/scsi/esp_scsi 0x7608b3af scsi_esp_template +EXPORT_SYMBOL drivers/scsi/esp_scsi 0xc5c61060 scsi_esp_register +EXPORT_SYMBOL drivers/scsi/esp_scsi 0xdf0b443b scsi_esp_cmd +EXPORT_SYMBOL drivers/scsi/fcoe/libfcoe 0x22df20ce fcoe_ctlr_init +EXPORT_SYMBOL drivers/scsi/fcoe/libfcoe 0x25c9424d fcoe_fcf_get_selected +EXPORT_SYMBOL drivers/scsi/fcoe/libfcoe 0x3ce889e9 fcoe_ctlr_recv +EXPORT_SYMBOL drivers/scsi/fcoe/libfcoe 0x63b499f1 fcoe_transport_detach +EXPORT_SYMBOL drivers/scsi/fcoe/libfcoe 0x6fbcb6a7 fcoe_ctlr_destroy +EXPORT_SYMBOL drivers/scsi/fcoe/libfcoe 0x7bfce663 fcoe_ctlr_set_fip_mode +EXPORT_SYMBOL drivers/scsi/fcoe/libfcoe 0x84d91f26 fcoe_ctlr_els_send +EXPORT_SYMBOL drivers/scsi/fcoe/libfcoe 0x90310f4b fcoe_ctlr_recv_flogi +EXPORT_SYMBOL drivers/scsi/fcoe/libfcoe 0xa63dd36a fcoe_transport_attach +EXPORT_SYMBOL drivers/scsi/fcoe/libfcoe 0xd2b0c9b4 fcoe_ctlr_link_down +EXPORT_SYMBOL drivers/scsi/fcoe/libfcoe 0xfe8ad26d fcoe_ctlr_link_up +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x13daf3c5 fc_queuecommand +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x18500120 fc_rport_lookup +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x1e7f0d28 fc_fabric_logoff +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x22b90986 fc_exch_mgr_del +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x24f7c28f fc_lport_iterate +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x2c0b681d fc_fc4_deregister_provider +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x2ca74c62 fc_exch_init +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x30a991cc fc_exch_mgr_alloc +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x31451c0e fc_vport_setlink +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x3a9a083f fc_fcp_destroy +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x3ef94209 fc_disc_init +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x4021a2a6 fc_linkdown +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x44fe65c7 fc_get_host_speed +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x45834437 fc_get_host_stats +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x46af4aac fc_seq_set_resp +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x4b4c8f1f fc_eh_device_reset +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x4c8ceb54 fc_lport_destroy +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x50a48b98 fc_lport_bsg_request +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x53ce2920 fc_exch_update_stats +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x557f9f3b fc_fcp_init +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x5959d83b fc_exch_mgr_list_clone +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x59f6d828 fc_elsct_init +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x66d090ba fc_rport_create +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x69219e2a fc_frame_crc_check +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x69dd97f1 fc_fabric_login +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x71d81ac1 _fc_frame_alloc +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x7897d953 fc_rport_recv_req +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x7e4b4446 fc_rport_terminate_io +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x7f3407a7 fc_seq_start_next +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x80c39b68 fc_elsct_send +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x80c6ae33 fc_set_rport_loss_tmo +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x811811e0 fc_exch_done +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x857fb416 fc_lport_reset +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x85e01831 fc_frame_alloc_fill +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x8774c9ac fc_lport_config +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x8d1cbeec fc_seq_assign +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x8fe738c0 fc_rport_login +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x930177a2 fc_seq_send +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x9aca1e73 fc_linkup +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x9ca2b00d fc_set_mfs +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x9d50ed7e fc_rport_destroy +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x9d79045d libfc_vport_create +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0xa0bb68e8 fc_disc_config +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0xa1bcd198 fc_cpu_mask +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0xa38df985 fc_lport_logo_resp +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0xa3bcccab fc_fill_reply_hdr +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0xa61436af fc_lport_recv +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0xa7e2d533 fc_fc4_register_provider +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0xa99b2bfd fc_rport_logoff +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0xab01e5cf fc_exch_seq_send +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0xb0ddd5a1 fc_rport_flush_queue +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0xb870030b fc_exch_mgr_reset +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0xbf88e521 fc_eh_abort +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0xc0355689 fc_exch_mgr_free +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0xc9619924 fc_lport_init +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0xd11072ce fc_slave_alloc +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0xd1e2b432 fc_fill_hdr +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0xd2a8c739 fc_get_host_port_state +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0xd9c069a4 fc_exch_recv +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0xdcc311c2 fc_lport_set_local_id +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0xe1e34d2d fc_vport_id_lookup +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0xe3fdcc2c fc_exch_mgr_add +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0xe5cf06b5 fc_lport_notifier_head +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0xe8b7dfe2 fc_lport_flogi_resp +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0xfa4667d1 fc_seq_release +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0xffc036fc fc_eh_host_reset +EXPORT_SYMBOL drivers/scsi/libsas/libsas 0x4a8e3d34 try_test_sas_gpio_gp_bit +EXPORT_SYMBOL drivers/scsi/libsas/libsas 0xa20fe978 sas_prep_resume_ha +EXPORT_SYMBOL drivers/scsi/libsas/libsas 0xbbf20193 sas_resume_ha +EXPORT_SYMBOL drivers/scsi/libsas/libsas 0xe91c0e30 sas_suspend_ha +EXPORT_SYMBOL drivers/scsi/megaraid/megaraid_mm 0x12c37f88 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 0x1f936bf2 qlt_rdy_to_xfer +EXPORT_SYMBOL drivers/scsi/qla2xxx/qla2xxx 0x42f9f179 qlt_unreg_sess +EXPORT_SYMBOL drivers/scsi/qla2xxx/qla2xxx 0x4977c2a0 qlt_stop_phase1 +EXPORT_SYMBOL drivers/scsi/qla2xxx/qla2xxx 0x945045eb qlt_enable_vha +EXPORT_SYMBOL drivers/scsi/qla2xxx/qla2xxx 0xbb9c4ed8 qlt_lport_deregister +EXPORT_SYMBOL drivers/scsi/qla2xxx/qla2xxx 0xbe551027 qlt_free_mcmd +EXPORT_SYMBOL drivers/scsi/qla2xxx/qla2xxx 0xc29d56d7 qlt_free_cmd +EXPORT_SYMBOL drivers/scsi/qla2xxx/qla2xxx 0xcd287e23 qlt_lport_register +EXPORT_SYMBOL drivers/scsi/qla2xxx/qla2xxx 0xcd29a1e7 qlt_abort_cmd +EXPORT_SYMBOL drivers/scsi/qla2xxx/qla2xxx 0xdda5c1db qlt_stop_phase2 +EXPORT_SYMBOL drivers/scsi/qla2xxx/qla2xxx 0xf086a9e2 qlt_xmit_response +EXPORT_SYMBOL drivers/scsi/qla2xxx/qla2xxx 0xf9ea4913 qlt_xmit_tm_rsp +EXPORT_SYMBOL drivers/scsi/qlogicfas408 0x0e48bf54 qlogicfas408_info +EXPORT_SYMBOL drivers/scsi/qlogicfas408 0x1f55cd70 qlogicfas408_ihandl +EXPORT_SYMBOL drivers/scsi/qlogicfas408 0x25b5349c qlogicfas408_host_reset +EXPORT_SYMBOL drivers/scsi/qlogicfas408 0x3fd8cd71 qlogicfas408_detect +EXPORT_SYMBOL drivers/scsi/qlogicfas408 0xb1c5d62e qlogicfas408_queuecommand +EXPORT_SYMBOL drivers/scsi/qlogicfas408 0xdaa41911 qlogicfas408_abort +EXPORT_SYMBOL drivers/scsi/qlogicfas408 0xdec5aa21 qlogicfas408_disable_ints +EXPORT_SYMBOL drivers/scsi/qlogicfas408 0xe76b3b20 qlogicfas408_get_chip_type +EXPORT_SYMBOL drivers/scsi/qlogicfas408 0xf2b95199 qlogicfas408_setup +EXPORT_SYMBOL drivers/scsi/qlogicfas408 0xf42484e0 qlogicfas408_biosparam +EXPORT_SYMBOL drivers/scsi/raid_class 0x35a79e82 raid_class_release +EXPORT_SYMBOL drivers/scsi/raid_class 0x3d80db43 raid_class_attach +EXPORT_SYMBOL drivers/scsi/raid_class 0xc1f76224 raid_component_add +EXPORT_SYMBOL drivers/scsi/scsi_transport_fc 0x09c9c134 fc_remote_port_rolechg +EXPORT_SYMBOL drivers/scsi/scsi_transport_fc 0x1fbabb5f fc_attach_transport +EXPORT_SYMBOL drivers/scsi/scsi_transport_fc 0x2129d7d8 fc_remote_port_add +EXPORT_SYMBOL drivers/scsi/scsi_transport_fc 0x23dec484 fc_vport_terminate +EXPORT_SYMBOL drivers/scsi/scsi_transport_fc 0x2f953885 fc_release_transport +EXPORT_SYMBOL drivers/scsi/scsi_transport_fc 0x375f8bbd fc_get_event_number +EXPORT_SYMBOL drivers/scsi/scsi_transport_fc 0x6cd054be fc_block_scsi_eh +EXPORT_SYMBOL drivers/scsi/scsi_transport_fc 0x77080179 fc_host_post_event +EXPORT_SYMBOL drivers/scsi/scsi_transport_fc 0xc104d6a6 fc_remote_port_delete +EXPORT_SYMBOL drivers/scsi/scsi_transport_fc 0xc5fb854e fc_host_post_vendor_event +EXPORT_SYMBOL drivers/scsi/scsi_transport_fc 0xd7fe90fe fc_host_fpin_rcv +EXPORT_SYMBOL drivers/scsi/scsi_transport_fc 0xdb57f35f scsi_is_fc_rport +EXPORT_SYMBOL drivers/scsi/scsi_transport_fc 0xdfdeaafe fc_block_rport +EXPORT_SYMBOL drivers/scsi/scsi_transport_fc 0xe10e590e fc_host_post_fc_event +EXPORT_SYMBOL drivers/scsi/scsi_transport_fc 0xf3ddc659 fc_eh_timed_out +EXPORT_SYMBOL drivers/scsi/scsi_transport_fc 0xf6839c7f fc_vport_create +EXPORT_SYMBOL drivers/scsi/scsi_transport_fc 0xfe7696e2 fc_remove_host +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0x0168620d sas_rphy_free +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0x017b5065 sas_port_delete_phy +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0x037802a1 sas_rphy_add +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0x0b90208d sas_port_delete +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0x1c0212cf sas_remove_children +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0x1e1115ba scsi_is_sas_port +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0x272069eb sas_release_transport +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0x2c75d09e sas_rphy_unlink +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0x402df783 scsi_is_sas_rphy +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0x4ef32799 sas_port_free +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0x59fe240d sas_get_address +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0x5d0a1cf4 sas_remove_host +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0x6648b867 sas_phy_add +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0x6bebb04e sas_expander_alloc +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0x6dae78d8 sas_port_add_phy +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0x81b71466 sas_rphy_delete +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0x83c71027 sas_phy_delete +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0x9491045f sas_read_port_mode_page +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0x96825180 sas_port_mark_backlink +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0xa6c76528 scsi_is_sas_phy +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0xb1f3b289 sas_port_alloc_num +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0xbaf60b60 sas_port_add +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0xbc1950d0 sas_port_get_phy +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0xbe8d0aad sas_phy_free +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0xcd135099 sas_end_device_alloc +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0xcfea1b2e sas_attach_transport +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0xd3eeeab0 sas_port_alloc +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0xdb4ad953 sas_phy_alloc +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0xe6483f6f sas_rphy_remove +EXPORT_SYMBOL drivers/scsi/scsi_transport_spi 0x2ffc19d1 spi_schedule_dv_device +EXPORT_SYMBOL drivers/scsi/scsi_transport_spi 0x3686ea09 spi_print_msg +EXPORT_SYMBOL drivers/scsi/scsi_transport_spi 0x558925ac spi_dv_device +EXPORT_SYMBOL drivers/scsi/scsi_transport_spi 0x7ea55007 spi_release_transport +EXPORT_SYMBOL drivers/scsi/scsi_transport_spi 0x90b8e8bd spi_attach_transport +EXPORT_SYMBOL drivers/scsi/scsi_transport_spi 0xb88d69b1 spi_display_xfer_agreement +EXPORT_SYMBOL drivers/scsi/scsi_transport_srp 0x158bbf52 srp_rport_get +EXPORT_SYMBOL drivers/scsi/scsi_transport_srp 0x2c4d54d1 srp_rport_put +EXPORT_SYMBOL drivers/scsi/scsi_transport_srp 0x405b6e05 srp_parse_tmo +EXPORT_SYMBOL drivers/scsi/scsi_transport_srp 0x4851a015 srp_start_tl_fail_timers +EXPORT_SYMBOL drivers/scsi/scsi_transport_srp 0x5560bb0d srp_timed_out +EXPORT_SYMBOL drivers/scsi/scsi_transport_srp 0x85ae8051 srp_reconnect_rport +EXPORT_SYMBOL drivers/scsi/ufs/tc-dwc-g210 0x9f37ac2c tc_dwc_g210_config_40_bit +EXPORT_SYMBOL drivers/scsi/ufs/tc-dwc-g210 0xdd5fcb6f tc_dwc_g210_config_20_bit +EXPORT_SYMBOL drivers/scsi/ufs/ufshcd-core 0x013af52b ufshcd_get_local_unipro_ver +EXPORT_SYMBOL drivers/scsi/ufs/ufshcd-core 0x2e5eea36 ufshcd_runtime_resume +EXPORT_SYMBOL drivers/scsi/ufs/ufshcd-core 0x4c1f655c ufshcd_runtime_idle +EXPORT_SYMBOL drivers/scsi/ufs/ufshcd-core 0x5c715c8a ufshcd_map_desc_id_to_length +EXPORT_SYMBOL drivers/scsi/ufs/ufshcd-core 0x65225a62 ufshcd_system_resume +EXPORT_SYMBOL drivers/scsi/ufs/ufshcd-core 0x93b43064 ufshcd_system_suspend +EXPORT_SYMBOL drivers/scsi/ufs/ufshcd-core 0xa54838d9 ufshcd_shutdown +EXPORT_SYMBOL drivers/scsi/ufs/ufshcd-core 0xf118eed8 ufshcd_alloc_host +EXPORT_SYMBOL drivers/scsi/ufs/ufshcd-core 0xfff9d939 ufshcd_runtime_suspend +EXPORT_SYMBOL drivers/scsi/ufs/ufshcd-dwc 0x037c6fd1 ufshcd_dwc_link_startup_notify +EXPORT_SYMBOL drivers/scsi/ufs/ufshcd-dwc 0x7f22ab5e ufshcd_dwc_dme_set_attrs +EXPORT_SYMBOL drivers/soundwire/soundwire-bus 0x0d7b04aa sdw_bus_master_add +EXPORT_SYMBOL drivers/soundwire/soundwire-bus 0x1148b7d3 sdw_nread +EXPORT_SYMBOL drivers/soundwire/soundwire-bus 0x16d1706b sdw_prepare_stream +EXPORT_SYMBOL drivers/soundwire/soundwire-bus 0x1a7f23b0 sdw_master_read_prop +EXPORT_SYMBOL drivers/soundwire/soundwire-bus 0x1deee061 sdw_find_row_index +EXPORT_SYMBOL drivers/soundwire/soundwire-bus 0x20b2f71a sdw_stream_add_master +EXPORT_SYMBOL drivers/soundwire/soundwire-bus 0x40b93420 sdw_bus_master_delete +EXPORT_SYMBOL drivers/soundwire/soundwire-bus 0x4cde88bf sdw_disable_stream +EXPORT_SYMBOL drivers/soundwire/soundwire-bus 0x60e31fbb sdw_find_col_index +EXPORT_SYMBOL drivers/soundwire/soundwire-bus 0x71891d59 sdw_deprepare_stream +EXPORT_SYMBOL drivers/soundwire/soundwire-bus 0x89745491 sdw_stream_add_slave +EXPORT_SYMBOL drivers/soundwire/soundwire-bus 0x89c43297 sdw_stream_remove_slave +EXPORT_SYMBOL drivers/soundwire/soundwire-bus 0x9d7e66b1 sdw_clear_slave_status +EXPORT_SYMBOL drivers/soundwire/soundwire-bus 0x9e122d79 sdw_alloc_stream +EXPORT_SYMBOL drivers/soundwire/soundwire-bus 0xb72a53c6 sdw_bus_exit_clk_stop +EXPORT_SYMBOL drivers/soundwire/soundwire-bus 0xbbec2c2e sdw_enable_stream +EXPORT_SYMBOL drivers/soundwire/soundwire-bus 0xc754c748 sdw_slave_read_prop +EXPORT_SYMBOL drivers/soundwire/soundwire-bus 0xd3e71e0c sdw_read +EXPORT_SYMBOL drivers/soundwire/soundwire-bus 0xd4b4c2a3 sdw_bus_prep_clk_stop +EXPORT_SYMBOL drivers/soundwire/soundwire-bus 0xd662c5bf sdw_nwrite +EXPORT_SYMBOL drivers/soundwire/soundwire-bus 0xda5bce09 sdw_release_stream +EXPORT_SYMBOL drivers/soundwire/soundwire-bus 0xe82073b9 sdw_write +EXPORT_SYMBOL drivers/soundwire/soundwire-bus 0xfaf2ad13 sdw_handle_slave_status +EXPORT_SYMBOL drivers/soundwire/soundwire-bus 0xfc1f7975 sdw_stream_remove_master +EXPORT_SYMBOL drivers/soundwire/soundwire-bus 0xfd2ddcf2 sdw_bus_clk_stop +EXPORT_SYMBOL drivers/soundwire/soundwire-cadence 0x1009fcdc cdns_xfer_msg +EXPORT_SYMBOL drivers/soundwire/soundwire-cadence 0x18320dd4 cdns_bus_conf +EXPORT_SYMBOL drivers/soundwire/soundwire-cadence 0x34712074 sdw_cdns_irq +EXPORT_SYMBOL drivers/soundwire/soundwire-cadence 0x683b0b18 sdw_cdns_exit_reset +EXPORT_SYMBOL drivers/soundwire/soundwire-cadence 0x6dd043ea sdw_cdns_config_stream +EXPORT_SYMBOL drivers/soundwire/soundwire-cadence 0x72f6b032 sdw_cdns_clock_stop +EXPORT_SYMBOL drivers/soundwire/soundwire-cadence 0x79c1217e sdw_cdns_clock_restart +EXPORT_SYMBOL drivers/soundwire/soundwire-cadence 0x7de72453 cdns_set_sdw_stream +EXPORT_SYMBOL drivers/soundwire/soundwire-cadence 0x84d66b1f cdns_xfer_msg_defer +EXPORT_SYMBOL drivers/soundwire/soundwire-cadence 0x98090f23 sdw_cdns_probe +EXPORT_SYMBOL drivers/soundwire/soundwire-cadence 0xa76a6fcb sdw_cdns_thread +EXPORT_SYMBOL drivers/soundwire/soundwire-cadence 0xa8495537 sdw_cdns_pdi_init +EXPORT_SYMBOL drivers/soundwire/soundwire-cadence 0xbdf13f96 sdw_cdns_init +EXPORT_SYMBOL drivers/soundwire/soundwire-cadence 0xce3cffd5 sdw_cdns_alloc_pdi +EXPORT_SYMBOL drivers/soundwire/soundwire-cadence 0xd656a60e cdns_reset_page_addr +EXPORT_SYMBOL drivers/soundwire/soundwire-cadence 0xdd00b106 sdw_cdns_enable_interrupt +EXPORT_SYMBOL drivers/soundwire/soundwire-cadence 0xfe1d3625 sdw_cdns_is_clock_stop +EXPORT_SYMBOL drivers/soundwire/soundwire-intel 0x4beb90f4 sdw_intel_exit +EXPORT_SYMBOL drivers/ssb/ssb 0x15bda8c5 ssb_bus_sdiobus_register +EXPORT_SYMBOL drivers/ssb/ssb 0x1cf8e622 __ssb_driver_register +EXPORT_SYMBOL drivers/ssb/ssb 0x25d3a2e5 ssb_device_is_enabled +EXPORT_SYMBOL drivers/ssb/ssb 0x349b041b ssb_bus_powerup +EXPORT_SYMBOL drivers/ssb/ssb 0x36167c4f ssb_bus_resume +EXPORT_SYMBOL drivers/ssb/ssb 0x430e1eba ssb_bus_unregister +EXPORT_SYMBOL drivers/ssb/ssb 0x49838eda ssb_chipco_gpio_control +EXPORT_SYMBOL drivers/ssb/ssb 0x55982c46 ssb_pcicore_dev_irqvecs_enable +EXPORT_SYMBOL drivers/ssb/ssb 0x64fc4356 ssb_clockspeed +EXPORT_SYMBOL drivers/ssb/ssb 0x66117e1d ssb_pmu_set_ldo_paref +EXPORT_SYMBOL drivers/ssb/ssb 0x7a3b9fa3 ssb_commit_settings +EXPORT_SYMBOL drivers/ssb/ssb 0x85e3ef17 ssb_set_devtypedata +EXPORT_SYMBOL drivers/ssb/ssb 0x898eced1 ssb_device_disable +EXPORT_SYMBOL drivers/ssb/ssb 0x8b04fd56 ssb_pcihost_register +EXPORT_SYMBOL drivers/ssb/ssb 0xadee8258 ssb_pmu_set_ldo_voltage +EXPORT_SYMBOL drivers/ssb/ssb 0xb2e8410d ssb_driver_unregister +EXPORT_SYMBOL drivers/ssb/ssb 0xb5c8a954 ssb_bus_may_powerdown +EXPORT_SYMBOL drivers/ssb/ssb 0xb69bd512 ssb_bus_suspend +EXPORT_SYMBOL drivers/ssb/ssb 0xcb17f1cb ssb_admatch_base +EXPORT_SYMBOL drivers/ssb/ssb 0xcdf4a476 ssb_device_enable +EXPORT_SYMBOL drivers/ssb/ssb 0xd6d69f0a ssb_dma_translation +EXPORT_SYMBOL drivers/ssb/ssb 0xdfc7c6ef ssb_admatch_size +EXPORT_SYMBOL drivers/staging/fbtft/fbtft 0x0069f97d fbtft_unregister_framebuffer +EXPORT_SYMBOL drivers/staging/fbtft/fbtft 0x07d51625 fbtft_register_backlight +EXPORT_SYMBOL drivers/staging/fbtft/fbtft 0x0d8ff9ad fbtft_write_buf_dc +EXPORT_SYMBOL drivers/staging/fbtft/fbtft 0x203d1f87 fbtft_write_gpio8_wr +EXPORT_SYMBOL drivers/staging/fbtft/fbtft 0x23ef2a78 fbtft_write_vmem8_bus8 +EXPORT_SYMBOL drivers/staging/fbtft/fbtft 0x28357f0a fbtft_write_reg8_bus8 +EXPORT_SYMBOL drivers/staging/fbtft/fbtft 0x2836e2d7 fbtft_dbg_hex +EXPORT_SYMBOL drivers/staging/fbtft/fbtft 0x3ff7da31 fbtft_write_gpio16_wr_latched +EXPORT_SYMBOL drivers/staging/fbtft/fbtft 0x6053dc22 fbtft_write_spi +EXPORT_SYMBOL drivers/staging/fbtft/fbtft 0x676de4e9 fbtft_framebuffer_release +EXPORT_SYMBOL drivers/staging/fbtft/fbtft 0x682a7607 fbtft_write_gpio16_wr +EXPORT_SYMBOL drivers/staging/fbtft/fbtft 0x6f51d232 fbtft_framebuffer_alloc +EXPORT_SYMBOL drivers/staging/fbtft/fbtft 0x810a96a7 fbtft_write_vmem16_bus16 +EXPORT_SYMBOL drivers/staging/fbtft/fbtft 0x87b200a5 fbtft_init_display +EXPORT_SYMBOL drivers/staging/fbtft/fbtft 0x9bf261ae fbtft_write_reg16_bus8 +EXPORT_SYMBOL drivers/staging/fbtft/fbtft 0xa77ab896 fbtft_unregister_backlight +EXPORT_SYMBOL drivers/staging/fbtft/fbtft 0xac173a5b fbtft_write_vmem16_bus8 +EXPORT_SYMBOL drivers/staging/fbtft/fbtft 0xb3fb22e3 fbtft_write_spi_emulate_9 +EXPORT_SYMBOL drivers/staging/fbtft/fbtft 0xb7845fa8 fbtft_register_framebuffer +EXPORT_SYMBOL drivers/staging/fbtft/fbtft 0xc955fe01 fbtft_write_vmem16_bus9 +EXPORT_SYMBOL drivers/staging/fbtft/fbtft 0xd0cbbdae fbtft_remove_common +EXPORT_SYMBOL drivers/staging/fbtft/fbtft 0xd3efe65a fbtft_write_reg16_bus16 +EXPORT_SYMBOL drivers/staging/fbtft/fbtft 0xdee74f65 fbtft_read_spi +EXPORT_SYMBOL drivers/staging/fbtft/fbtft 0xefe23d93 fbtft_probe_common +EXPORT_SYMBOL drivers/staging/fbtft/fbtft 0xf23c0fe6 fbtft_write_reg8_bus9 +EXPORT_SYMBOL drivers/staging/gasket/gasket 0x065f9c9d gasket_page_table_max_size +EXPORT_SYMBOL drivers/staging/gasket/gasket 0x192e5deb gasket_sysfs_create_entries +EXPORT_SYMBOL drivers/staging/gasket/gasket 0x1f8a80b2 gasket_reset +EXPORT_SYMBOL drivers/staging/gasket/gasket 0x28b2f290 gasket_enable_device +EXPORT_SYMBOL drivers/staging/gasket/gasket 0x339c2b95 gasket_page_table_map +EXPORT_SYMBOL drivers/staging/gasket/gasket 0x3563b69d gasket_get_ioctl_permissions_cb +EXPORT_SYMBOL drivers/staging/gasket/gasket 0x372973e0 gasket_page_table_are_addrs_bad +EXPORT_SYMBOL drivers/staging/gasket/gasket 0x38c3d415 gasket_page_table_num_active_pages +EXPORT_SYMBOL drivers/staging/gasket/gasket 0x4109757c gasket_page_table_partition +EXPORT_SYMBOL drivers/staging/gasket/gasket 0x4292ff96 gasket_page_table_is_dev_addr_bad +EXPORT_SYMBOL drivers/staging/gasket/gasket 0x65477d6b gasket_pci_add_device +EXPORT_SYMBOL drivers/staging/gasket/gasket 0x6c562069 gasket_sysfs_get_attr +EXPORT_SYMBOL drivers/staging/gasket/gasket 0x77311f6a gasket_page_table_unmap_all +EXPORT_SYMBOL drivers/staging/gasket/gasket 0x7b214a2f gasket_sysfs_put_attr +EXPORT_SYMBOL drivers/staging/gasket/gasket 0x8c92da47 gasket_page_table_num_simple_entries +EXPORT_SYMBOL drivers/staging/gasket/gasket 0x920332ef gasket_unregister_device +EXPORT_SYMBOL drivers/staging/gasket/gasket 0x94cb3449 gasket_mm_unmap_region +EXPORT_SYMBOL drivers/staging/gasket/gasket 0xa7b5067b gasket_pci_remove_device +EXPORT_SYMBOL drivers/staging/gasket/gasket 0xaace6b96 gasket_register_device +EXPORT_SYMBOL drivers/staging/gasket/gasket 0xb0a3a5da gasket_sysfs_get_device_data +EXPORT_SYMBOL drivers/staging/gasket/gasket 0xb5d65654 gasket_reset_nolock +EXPORT_SYMBOL drivers/staging/gasket/gasket 0xbaa2668a gasket_num_name_lookup +EXPORT_SYMBOL drivers/staging/gasket/gasket 0xbaf2f8cd gasket_page_table_unmap +EXPORT_SYMBOL drivers/staging/gasket/gasket 0xc077abeb gasket_wait_with_reschedule +EXPORT_SYMBOL drivers/staging/gasket/gasket 0xc225208c gasket_page_table_num_entries +EXPORT_SYMBOL drivers/staging/gasket/gasket 0xc489c9bf gasket_disable_device +EXPORT_SYMBOL drivers/staging/gasket/gasket 0xceee1170 gasket_sysfs_put_device_data +EXPORT_SYMBOL drivers/staging/gasket/gasket 0xd0eb7216 gasket_sysfs_register_store +EXPORT_SYMBOL drivers/staging/iio/addac/adt7316 0x43918112 adt7316_probe +EXPORT_SYMBOL drivers/staging/iio/meter/ade7854 0x2fc214d0 ade7854_probe +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x0063535e rtllib_ps_tx_ack +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x02dd28b0 rtllib_rx +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x093b5cc0 rtllib_wx_get_mode +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x0e78b99b rtllib_xmit +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x10c8b167 alloc_rtllib +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x21d1aed0 rtllib_wx_set_rawtx +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x22166084 rt_global_debug_component +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x24709caa rtllib_wx_get_encode +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x286c3e9b rtllib_wx_set_mlme +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x33a05f4a rtllib_wx_get_name +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x3a77cf1e rtllib_wx_set_rate +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x3b62ff68 rtllib_wx_get_freq +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x3e555266 rtllib_wx_set_power +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x4160a65f rtllib_stop_scan_syncro +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x4213cdc4 dot11d_init +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x443c4f94 rtllib_MgntDisconnect +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x461f5fd7 dot11d_channel_map +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x485f0567 RemovePeerTS +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x495be544 rtllib_wx_set_mode +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x55097b2c rtllib_softmac_start_protocol +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x5e5ab4b7 rtllib_wx_get_rts +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x5fda4716 rtllib_wx_get_essid +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x60d9dbcf rtllib_wx_set_auth +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x631510a6 rtllib_wx_set_wap +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x6420386a rtllib_wx_set_gen_ie +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x6598e7cc rtllib_start_scan_syncro +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x79535675 rtllib_legal_channel +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x7a17769a rtllib_wx_get_rate +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x7b0246ec rtllib_wx_set_freq +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x86169a48 notify_wx_assoc_event +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x8a639f13 HT_update_self_and_peer_setting +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x90542f36 rtllib_act_scanning +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x9f2bcd7c rtllib_DisableIntelPromiscuousMode +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0xa367bea6 rtllib_stop_scan +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0xa42a8983 rtllib_reset_queue +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0xaf070bdb rtllib_wx_get_scan +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0xb304d158 rtllib_start_send_beacons +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0xb36fa9a1 rtllib_softmac_stop_protocol +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0xb54f6096 rtllib_wx_set_essid +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0xba61592a rtllib_wx_set_encode_ext +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0xc9228aad rtllib_wx_set_encode +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0xcd604593 rtllib_EnableIntelPromiscuousMode +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0xd4c075e6 rtllib_wx_get_power +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0xd8c77fd0 rtllib_stop_send_beacons +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0xdca7f24c rtllib_wx_get_wap +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0xdf78f620 rtllib_wlan_frequencies +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0xe1e8565d rtllib_wx_set_rts +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0xe7ff00e9 rtllib_sta_ps_send_null_frame +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0xec32d4b6 free_rtllib +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0xef67b25f rtllib_wx_set_scan +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0xffb59d1f rtllib_get_beacon +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x0b175931 ieee80211_wake_queue_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x0b198de6 ieee80211_wx_set_rate_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x0c0abdb2 notify_wx_assoc_event_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x0c600c10 HTUpdateSelfAndPeerSetting +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x1446d0f8 ieee80211_rx_mgt_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x19859da3 ieee80211_stop_queue_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x1c956438 ieee80211_stop_send_beacons_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x1d66a0ff ieee80211_is_shortslot_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x1dabc75a ieee80211_disassociate_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x1e9a9832 ieee80211_wx_set_rts_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x1f8b3b79 ieee80211_ps_tx_ack_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x328bfee4 ieee80211_wpa_supplicant_ioctl_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x3431e32c ieee80211_wx_get_rate_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x3500aac8 ieee80211_wx_set_gen_ie_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x4076dacc ieee80211_softmac_stop_protocol_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x44cd9b73 is_legal_channel +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x47c08479 dot11d_reset +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x4a933725 ieee80211_wx_set_scan_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x592e7f22 ieee80211_wx_get_mode_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x5a126703 ieee80211_wx_get_encode_ext_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x5ae88a0a ieee80211_wx_get_wap_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x5e274007 ieee80211_rx_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x5e9be133 ieee80211_txb_free_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x63f463ad dot11d_scan_complete +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x660611e8 ieee80211_wx_set_mode_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x72060481 ieee80211_softmac_xmit_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x75546a54 ieee80211_wx_get_encode_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x75bb59ef ieee80211_wx_get_scan_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x79fe372e SendDisassociation_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x812b5422 to_legal_channel +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x83f28f94 ieee80211_wx_get_rts_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x86d2b681 ieee80211_wx_set_encode_ext_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x8acc7f2b ieee80211_stop_scan_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x8cf82019 ieee80211_wx_set_power_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x93968d85 ieee80211_start_scan_syncro_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x97318434 ieee80211_wx_get_essid_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x99345a5e dot11d_get_max_tx_pwr_in_dbm +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x9e9cedcc ieee80211_wx_set_auth_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x9ee907a7 ieee80211_softmac_scan_syncro_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0xa3a0ceca rtl8192u_dot11d_init +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0xad101da2 ieee80211_get_beacon_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0xb41db3bc ieee80211_softmac_start_protocol_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0xc192192f dot11d_update_country_ie +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0xc370a43e ieee80211_wlan_frequencies_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0xc7809dac ieee80211_wx_set_wap_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0xca9e6449 ieee80211_wx_set_mlme_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0xccd0958e ieee80211_wx_set_rawtx_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0xcfa36376 ieee80211_wx_get_freq_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0xd5c889fd ieee80211_reset_queue_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0xd960ea29 ieee80211_start_send_beacons_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0xde70b908 ieee80211_wx_get_name_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0xecbf87f4 ieee80211_wx_set_essid_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0xecc5fb1b ieee80211_is_54g_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0xee4b26e7 ieee80211_wx_set_encode_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0xf08b0dbc ieee80211_wx_set_freq_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0xf77623d9 ieee80211_wx_get_power_rsl +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x02e41a42 iscsit_logout_post_handler +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x07deb2fe iscsit_build_reject +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x088818ef iscsit_aborted_task +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x0d3d6113 iscsit_process_text_cmd +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x1f363f4a iscsit_allocate_cmd +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x291feaa9 iscsit_process_scsi_cmd +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x293a43f6 iscsit_register_transport +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x2c0c101c iscsit_tmr_post_handler +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x33a2de59 iscsit_build_r2ts_for_cmd +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x38222c08 iscsit_handle_task_mgt_cmd +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x3b45c03b iscsit_free_cmd +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x50ef2928 iscsit_stop_dataout_timer +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x514d5b86 iscsit_sequence_cmd +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x558182d3 iscsit_check_dataout_hdr +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x5d168d71 iscsit_increment_maxcmdsn +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x625d4fca iscsit_handle_logout_cmd +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x651b0307 iscsit_build_logout_rsp +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x6fb018ad iscsit_immediate_queue +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x70e9c2de iscsit_queue_rsp +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x7c9fbc1d iscsit_release_cmd +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x7f877c47 iscsit_set_unsolicited_dataout +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x83cb4632 iscsit_cause_connection_reinstatement +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x841d01ac iscsit_setup_text_cmd +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x8e8e9d50 iscsit_get_datain_values +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x9695d088 iscsi_change_param_sprintf +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x9d7e576b iscsit_setup_scsi_cmd +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0xa0b80386 iscsit_add_cmd_to_immediate_queue +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0xa51b0920 iscsit_build_rsp_pdu +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0xa6d6e8d6 iscsit_build_task_mgt_rsp +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0xb1cc71f9 iscsit_build_text_rsp +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0xb5c6a074 iscsit_process_nop_out +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0xc218cd12 iscsit_setup_nop_out +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0xc3ae72c3 iscsit_handle_snack +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0xce3094a6 iscsit_check_dataout_payload +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0xcf3c17e2 iscsit_find_cmd_from_itt_or_dump +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0xd43290ed iscsi_target_check_login_request +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0xdc0d13a4 iscsit_find_cmd_from_itt +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0xddb32505 iscsit_reject_cmd +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0xde79b50c iscsit_build_nopin_rsp +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0xe4ff9d2d iscsit_add_reject +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0xe94270c0 __iscsit_check_dataout_hdr +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0xef413fec iscsit_unregister_transport +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0xf34332f0 iscsi_find_param_from_key +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0xf3e36c05 iscsit_build_datain_pdu +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0xf66d795e iscsit_response_queue +EXPORT_SYMBOL drivers/target/target_core_mod 0x01f08e94 target_nacl_find_deve +EXPORT_SYMBOL drivers/target/target_core_mod 0x0385b5fc core_tpg_get_initiator_node_acl +EXPORT_SYMBOL drivers/target/target_core_mod 0x056f6d16 target_show_dynamic_sessions +EXPORT_SYMBOL drivers/target/target_core_mod 0x05a350af transport_free_session +EXPORT_SYMBOL drivers/target/target_core_mod 0x07a78c01 target_show_cmd +EXPORT_SYMBOL drivers/target/target_core_mod 0x0871ffd6 transport_set_vpd_ident +EXPORT_SYMBOL drivers/target/target_core_mod 0x119fd803 transport_handle_cdb_direct +EXPORT_SYMBOL drivers/target/target_core_mod 0x137772d9 sbc_dif_copy_prot +EXPORT_SYMBOL drivers/target/target_core_mod 0x142072c0 transport_set_vpd_assoc +EXPORT_SYMBOL drivers/target/target_core_mod 0x14576af0 core_tpg_set_initiator_node_queue_depth +EXPORT_SYMBOL drivers/target/target_core_mod 0x1764f0b1 transport_deregister_session_configfs +EXPORT_SYMBOL drivers/target/target_core_mod 0x1fcce07f core_tpg_set_initiator_node_tag +EXPORT_SYMBOL drivers/target/target_core_mod 0x2489e67d transport_copy_sense_to_cmd +EXPORT_SYMBOL drivers/target/target_core_mod 0x259689c1 transport_init_se_cmd +EXPORT_SYMBOL drivers/target/target_core_mod 0x2968576b target_register_template +EXPORT_SYMBOL drivers/target/target_core_mod 0x29995e93 target_to_linux_sector +EXPORT_SYMBOL drivers/target/target_core_mod 0x2a890ae5 target_undepend_item +EXPORT_SYMBOL drivers/target/target_core_mod 0x2b273c7b transport_init_session +EXPORT_SYMBOL drivers/target/target_core_mod 0x32c7d142 spc_emulate_evpd_83 +EXPORT_SYMBOL drivers/target/target_core_mod 0x33d1de29 sbc_attrib_attrs +EXPORT_SYMBOL drivers/target/target_core_mod 0x345e9d86 target_wait_for_sess_cmds +EXPORT_SYMBOL drivers/target/target_core_mod 0x35a0ac0a target_backend_unregister +EXPORT_SYMBOL drivers/target/target_core_mod 0x37cd8a5e target_complete_cmd +EXPORT_SYMBOL drivers/target/target_core_mod 0x3969b463 target_sess_cmd_list_set_waiting +EXPORT_SYMBOL drivers/target/target_core_mod 0x3a20a9d7 transport_set_vpd_ident_type +EXPORT_SYMBOL drivers/target/target_core_mod 0x42b2fbc1 target_put_nacl +EXPORT_SYMBOL drivers/target/target_core_mod 0x48ae4e27 transport_kunmap_data_sg +EXPORT_SYMBOL drivers/target/target_core_mod 0x4917e9a8 target_submit_cmd_map_sgls +EXPORT_SYMBOL drivers/target/target_core_mod 0x4ff5a169 target_cmd_init_cdb +EXPORT_SYMBOL drivers/target/target_core_mod 0x51aa70ac spc_parse_cdb +EXPORT_SYMBOL drivers/target/target_core_mod 0x59f5dc8e transport_generic_request_failure +EXPORT_SYMBOL drivers/target/target_core_mod 0x60be39ee transport_register_session +EXPORT_SYMBOL drivers/target/target_core_mod 0x638bffb7 target_free_sgl +EXPORT_SYMBOL drivers/target/target_core_mod 0x6db90812 transport_backend_register +EXPORT_SYMBOL drivers/target/target_core_mod 0x6ebf6ffc passthrough_pr_attrib_attrs +EXPORT_SYMBOL drivers/target/target_core_mod 0x701920cf target_remove_session +EXPORT_SYMBOL drivers/target/target_core_mod 0x71072210 core_tpg_deregister +EXPORT_SYMBOL drivers/target/target_core_mod 0x7a1d0d3c target_alloc_sgl +EXPORT_SYMBOL drivers/target/target_core_mod 0x7c060704 sbc_get_device_type +EXPORT_SYMBOL drivers/target/target_core_mod 0x7f043eda target_complete_cmd_with_length +EXPORT_SYMBOL drivers/target/target_core_mod 0x8066e93d spc_emulate_report_luns +EXPORT_SYMBOL drivers/target/target_core_mod 0x886ec943 core_alua_check_nonop_delay +EXPORT_SYMBOL drivers/target/target_core_mod 0x8a87d199 target_setup_session +EXPORT_SYMBOL drivers/target/target_core_mod 0x8d3f8589 target_submit_tmr +EXPORT_SYMBOL drivers/target/target_core_mod 0x924948f5 target_configure_unmap_from_queue +EXPORT_SYMBOL drivers/target/target_core_mod 0x93b5cead transport_kmap_data_sg +EXPORT_SYMBOL drivers/target/target_core_mod 0x9c8211aa core_tpg_check_initiator_node_acl +EXPORT_SYMBOL drivers/target/target_core_mod 0x9d5830c8 transport_lookup_cmd_lun +EXPORT_SYMBOL drivers/target/target_core_mod 0x9f0154f5 transport_generic_new_cmd +EXPORT_SYMBOL drivers/target/target_core_mod 0xa75630c4 transport_deregister_session +EXPORT_SYMBOL drivers/target/target_core_mod 0xa8b4e9a0 passthrough_attrib_attrs +EXPORT_SYMBOL drivers/target/target_core_mod 0xa92b0e3c sbc_parse_cdb +EXPORT_SYMBOL drivers/target/target_core_mod 0xac4c8462 transport_alloc_session_tags +EXPORT_SYMBOL drivers/target/target_core_mod 0xb08ae6d4 core_tmr_alloc_req +EXPORT_SYMBOL drivers/target/target_core_mod 0xb170e7df sbc_get_write_same_sectors +EXPORT_SYMBOL drivers/target/target_core_mod 0xb3fd55e6 passthrough_parse_cdb +EXPORT_SYMBOL drivers/target/target_core_mod 0xb7a2bc2f target_depend_item +EXPORT_SYMBOL drivers/target/target_core_mod 0xb9328ece core_tpg_register +EXPORT_SYMBOL drivers/target/target_core_mod 0xc1abc270 target_get_sess_cmd +EXPORT_SYMBOL drivers/target/target_core_mod 0xc7c43c2a target_unregister_template +EXPORT_SYMBOL drivers/target/target_core_mod 0xc9601a14 target_cmd_parse_cdb +EXPORT_SYMBOL drivers/target/target_core_mod 0xca4fd39e target_lun_is_rdonly +EXPORT_SYMBOL drivers/target/target_core_mod 0xca5ecabb transport_wait_for_tasks +EXPORT_SYMBOL drivers/target/target_core_mod 0xcb53e830 transport_send_check_condition_and_sense +EXPORT_SYMBOL drivers/target/target_core_mod 0xcd1d97b8 core_allocate_nexus_loss_ua +EXPORT_SYMBOL drivers/target/target_core_mod 0xcdb7fc35 sbc_dif_verify +EXPORT_SYMBOL drivers/target/target_core_mod 0xd1f97dcf target_submit_cmd +EXPORT_SYMBOL drivers/target/target_core_mod 0xd4131f0c transport_lookup_tmr_lun +EXPORT_SYMBOL drivers/target/target_core_mod 0xd5a11715 transport_generic_free_cmd +EXPORT_SYMBOL drivers/target/target_core_mod 0xd88a5de6 target_send_busy +EXPORT_SYMBOL drivers/target/target_core_mod 0xe0e7102e transport_alloc_session +EXPORT_SYMBOL drivers/target/target_core_mod 0xe241f327 transport_generic_handle_tmr +EXPORT_SYMBOL drivers/target/target_core_mod 0xe2a93aaf target_put_sess_cmd +EXPORT_SYMBOL drivers/target/target_core_mod 0xe8006b0d __transport_register_session +EXPORT_SYMBOL drivers/target/target_core_mod 0xee48d426 target_tpg_has_node_acl +EXPORT_SYMBOL drivers/target/target_core_mod 0xf3c2dfe0 transport_set_vpd_proto_id +EXPORT_SYMBOL drivers/target/target_core_mod 0xf7360859 spc_emulate_inquiry_std +EXPORT_SYMBOL drivers/target/target_core_mod 0xf902c631 target_execute_cmd +EXPORT_SYMBOL drivers/thermal/intel/int340x_thermal/acpi_thermal_rel 0x111eefed acpi_parse_art +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 0xf0f9fe0d acpi_parse_trt +EXPORT_SYMBOL drivers/usb/class/cdc-wdm 0x2890258e usb_cdc_wdm_register +EXPORT_SYMBOL drivers/usb/gadget/libcomposite 0xcf8e54e9 usb_os_desc_prepare_interf_dir +EXPORT_SYMBOL drivers/usb/host/sl811-hcd 0x01344965 sl811h_driver +EXPORT_SYMBOL drivers/usb/serial/usb_wwan 0x27d39d84 usb_wwan_close +EXPORT_SYMBOL drivers/usb/serial/usb_wwan 0x333b1410 usb_wwan_write_room +EXPORT_SYMBOL drivers/usb/serial/usb_wwan 0x3e7dea3c usb_wwan_tiocmset +EXPORT_SYMBOL drivers/usb/serial/usb_wwan 0x4311753d usb_wwan_write +EXPORT_SYMBOL drivers/usb/serial/usb_wwan 0x88912355 usb_wwan_chars_in_buffer +EXPORT_SYMBOL drivers/usb/serial/usb_wwan 0x9a4fba56 usb_wwan_open +EXPORT_SYMBOL drivers/usb/serial/usb_wwan 0x9c387a30 usb_wwan_dtr_rts +EXPORT_SYMBOL drivers/usb/serial/usb_wwan 0xb309711e usb_wwan_get_serial_info +EXPORT_SYMBOL drivers/usb/serial/usb_wwan 0xb38a1801 usb_wwan_set_serial_info +EXPORT_SYMBOL drivers/usb/serial/usb_wwan 0xbbc72646 usb_wwan_port_remove +EXPORT_SYMBOL drivers/usb/serial/usb_wwan 0xdb090cbe usb_wwan_tiocmget +EXPORT_SYMBOL drivers/usb/serial/usb_wwan 0xe3dc7321 usb_wwan_resume +EXPORT_SYMBOL drivers/usb/serial/usb_wwan 0xe696021f usb_wwan_suspend +EXPORT_SYMBOL drivers/usb/serial/usbserial 0x6fdfb4e0 usb_serial_suspend +EXPORT_SYMBOL drivers/usb/serial/usbserial 0xaf06144a usb_serial_resume +EXPORT_SYMBOL drivers/vfio/mdev/mdev 0x172a603c mdev_register_device +EXPORT_SYMBOL drivers/vfio/mdev/mdev 0x2172e7d3 mdev_uuid +EXPORT_SYMBOL drivers/vfio/mdev/mdev 0x38b8c249 mdev_set_iommu_device +EXPORT_SYMBOL drivers/vfio/mdev/mdev 0x4090bfe0 mdev_get_iommu_device +EXPORT_SYMBOL drivers/vfio/mdev/mdev 0x49624667 mdev_register_driver +EXPORT_SYMBOL drivers/vfio/mdev/mdev 0x62173e25 mdev_get_drvdata +EXPORT_SYMBOL drivers/vfio/mdev/mdev 0x86a48d2e mdev_from_dev +EXPORT_SYMBOL drivers/vfio/mdev/mdev 0x8a3cd624 mdev_parent_dev +EXPORT_SYMBOL drivers/vfio/mdev/mdev 0x9f0b400c mdev_dev +EXPORT_SYMBOL drivers/vfio/mdev/mdev 0xb0d7def7 mdev_unregister_device +EXPORT_SYMBOL drivers/vfio/mdev/mdev 0xb4b07ba1 mdev_unregister_driver +EXPORT_SYMBOL drivers/vfio/mdev/mdev 0xd57a5d48 mdev_set_drvdata +EXPORT_SYMBOL drivers/vhost/vhost 0x6c92c6fd vhost_chr_write_iter +EXPORT_SYMBOL drivers/vhost/vhost 0xeb486fe0 vhost_chr_poll +EXPORT_SYMBOL drivers/vhost/vringh 0x3b304ebb vringh_iov_push_user +EXPORT_SYMBOL drivers/vhost/vringh 0x3ecc1eea vringh_getdesc_kern +EXPORT_SYMBOL drivers/vhost/vringh 0x4311cd91 vringh_iov_pull_user +EXPORT_SYMBOL drivers/vhost/vringh 0x44d6f41b vringh_notify_enable_kern +EXPORT_SYMBOL drivers/vhost/vringh 0x4b6a6e23 vringh_iov_pull_iotlb +EXPORT_SYMBOL drivers/vhost/vringh 0x4d0529ee vringh_complete_multi_user +EXPORT_SYMBOL drivers/vhost/vringh 0x56f694fc vringh_abandon_kern +EXPORT_SYMBOL drivers/vhost/vringh 0x58bc86ac vringh_complete_user +EXPORT_SYMBOL drivers/vhost/vringh 0x5aa88061 vringh_init_user +EXPORT_SYMBOL drivers/vhost/vringh 0x5e47ee29 vringh_notify_enable_user +EXPORT_SYMBOL drivers/vhost/vringh 0x6d95262b vringh_getdesc_user +EXPORT_SYMBOL drivers/vhost/vringh 0x80ad788a vringh_notify_disable_user +EXPORT_SYMBOL drivers/vhost/vringh 0x85665842 vringh_notify_enable_iotlb +EXPORT_SYMBOL drivers/vhost/vringh 0x8701069c vringh_abandon_iotlb +EXPORT_SYMBOL drivers/vhost/vringh 0x8bfb5a2b vringh_complete_iotlb +EXPORT_SYMBOL drivers/vhost/vringh 0x8d40c6f4 vringh_getdesc_iotlb +EXPORT_SYMBOL drivers/vhost/vringh 0x8e78a074 vringh_need_notify_user +EXPORT_SYMBOL drivers/vhost/vringh 0x91b5a92c vringh_abandon_user +EXPORT_SYMBOL drivers/vhost/vringh 0x97fa07e9 vringh_iov_push_kern +EXPORT_SYMBOL drivers/vhost/vringh 0xac2d6746 vringh_init_kern +EXPORT_SYMBOL drivers/vhost/vringh 0xaf01a583 vringh_set_iotlb +EXPORT_SYMBOL drivers/vhost/vringh 0xbf4f4fbd vringh_need_notify_iotlb +EXPORT_SYMBOL drivers/vhost/vringh 0xd3a14d7d vringh_complete_kern +EXPORT_SYMBOL drivers/vhost/vringh 0xde804bb9 vringh_iov_pull_kern +EXPORT_SYMBOL drivers/vhost/vringh 0xe544457e vringh_notify_disable_iotlb +EXPORT_SYMBOL drivers/vhost/vringh 0xee1c7df3 vringh_init_iotlb +EXPORT_SYMBOL drivers/vhost/vringh 0xf1bbb2ad vringh_need_notify_kern +EXPORT_SYMBOL drivers/vhost/vringh 0xf6784994 vringh_iov_push_iotlb +EXPORT_SYMBOL drivers/vhost/vringh 0xff6e6a53 vringh_notify_disable_kern +EXPORT_SYMBOL drivers/video/backlight/lcd 0x3dbdde00 devm_lcd_device_unregister +EXPORT_SYMBOL drivers/video/backlight/lcd 0x50d90285 lcd_device_register +EXPORT_SYMBOL drivers/video/backlight/lcd 0xc78b7177 devm_lcd_device_register +EXPORT_SYMBOL drivers/video/backlight/lcd 0xf6c40e42 lcd_device_unregister +EXPORT_SYMBOL drivers/video/fbdev/core/svgalib 0x08ee8bdf svga_tilecursor +EXPORT_SYMBOL drivers/video/fbdev/core/svgalib 0x11b09e20 svga_get_tilemax +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 0x34381954 svga_tilecopy +EXPORT_SYMBOL drivers/video/fbdev/core/svgalib 0x3a44c45b svga_settile +EXPORT_SYMBOL drivers/video/fbdev/core/svgalib 0x4ab38ef2 svga_set_default_crt_regs +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 0x983e434d 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 0xebf05f55 svga_tileblit +EXPORT_SYMBOL drivers/video/fbdev/core/svgalib 0xfac0119b svga_get_caps +EXPORT_SYMBOL drivers/video/fbdev/core/syscopyarea 0xc05e853a sys_copyarea +EXPORT_SYMBOL drivers/video/fbdev/core/sysfillrect 0xc468f786 sys_fillrect +EXPORT_SYMBOL drivers/video/fbdev/core/sysimgblt 0x907c496a sys_imageblit +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 0x56713c5c 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 0x9976c399 mac_find_mode +EXPORT_SYMBOL drivers/video/fbdev/macmodes 0xe2304303 mac_map_monitor_sense +EXPORT_SYMBOL drivers/video/fbdev/matrox/g450_pll 0x5305b545 g450_mnp2f +EXPORT_SYMBOL drivers/video/fbdev/matrox/g450_pll 0x6360d727 matroxfb_g450_setpll_cond +EXPORT_SYMBOL drivers/video/fbdev/matrox/g450_pll 0x6cab8f9b matroxfb_g450_setclk +EXPORT_SYMBOL drivers/video/fbdev/matrox/matroxfb_DAC1064 0x2a98aa78 DAC1064_global_restore +EXPORT_SYMBOL drivers/video/fbdev/matrox/matroxfb_DAC1064 0x56ea0cac matrox_mystique +EXPORT_SYMBOL drivers/video/fbdev/matrox/matroxfb_DAC1064 0xcc0509c8 DAC1064_global_init +EXPORT_SYMBOL drivers/video/fbdev/matrox/matroxfb_DAC1064 0xce94beb5 matrox_G100 +EXPORT_SYMBOL drivers/video/fbdev/matrox/matroxfb_Ti3026 0x58d8c765 matrox_millennium +EXPORT_SYMBOL drivers/video/fbdev/matrox/matroxfb_accel 0xe8f5c302 matrox_cfbX_init +EXPORT_SYMBOL drivers/video/fbdev/matrox/matroxfb_base 0x22ad19f0 matroxfb_register_driver +EXPORT_SYMBOL drivers/video/fbdev/matrox/matroxfb_base 0x36c46b60 matroxfb_unregister_driver +EXPORT_SYMBOL drivers/video/fbdev/matrox/matroxfb_base 0x54962760 matroxfb_wait_for_sync +EXPORT_SYMBOL drivers/video/fbdev/matrox/matroxfb_base 0xaadb8ffc matroxfb_enable_irq +EXPORT_SYMBOL drivers/video/fbdev/matrox/matroxfb_g450 0x74080da2 matroxfb_g450_shutdown +EXPORT_SYMBOL drivers/video/fbdev/matrox/matroxfb_g450 0xfec9730b matroxfb_g450_connect +EXPORT_SYMBOL drivers/video/fbdev/matrox/matroxfb_misc 0x25cf8049 matroxfb_PLL_calcclock +EXPORT_SYMBOL drivers/video/fbdev/matrox/matroxfb_misc 0x4beda39b matroxfb_read_pins +EXPORT_SYMBOL drivers/video/fbdev/matrox/matroxfb_misc 0xa1d8ed43 matroxfb_vgaHWinit +EXPORT_SYMBOL drivers/video/fbdev/matrox/matroxfb_misc 0xb8c11ed3 matroxfb_DAC_out +EXPORT_SYMBOL drivers/video/fbdev/matrox/matroxfb_misc 0xc10fd7fa matroxfb_vgaHWrestore +EXPORT_SYMBOL drivers/video/fbdev/matrox/matroxfb_misc 0xcdc90c64 matroxfb_var2my +EXPORT_SYMBOL drivers/video/fbdev/matrox/matroxfb_misc 0xff9a5b70 matroxfb_DAC_in +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 0x1428306e vbg_hgcm_connect +EXPORT_SYMBOL drivers/virt/vboxguest/vboxguest 0x260590c0 vbg_err +EXPORT_SYMBOL drivers/virt/vboxguest/vboxguest 0x4573d924 vbg_get_gdev +EXPORT_SYMBOL drivers/virt/vboxguest/vboxguest 0x50398ea5 vbg_put_gdev +EXPORT_SYMBOL drivers/virt/vboxguest/vboxguest 0x569b312f vbg_info +EXPORT_SYMBOL drivers/virt/vboxguest/vboxguest 0x70cdcbfd vbg_warn +EXPORT_SYMBOL drivers/virt/vboxguest/vboxguest 0x9c072aa8 vbg_status_code_to_errno +EXPORT_SYMBOL drivers/virt/vboxguest/vboxguest 0xdcbc4616 vbg_hgcm_call +EXPORT_SYMBOL drivers/virt/vboxguest/vboxguest 0xe6a67a08 vbg_hgcm_disconnect +EXPORT_SYMBOL drivers/w1/slaves/w1_ds2780 0x12784236 w1_ds2780_eeprom_cmd +EXPORT_SYMBOL drivers/w1/slaves/w1_ds2780 0xcb8100d6 w1_ds2780_io +EXPORT_SYMBOL drivers/w1/slaves/w1_ds2781 0x62289b95 w1_ds2781_io +EXPORT_SYMBOL drivers/w1/slaves/w1_ds2781 0x71ab3cef w1_ds2781_eeprom_cmd +EXPORT_SYMBOL drivers/w1/wire 0x490d8612 w1_add_master_device +EXPORT_SYMBOL drivers/w1/wire 0x72ebd469 w1_unregister_family +EXPORT_SYMBOL drivers/w1/wire 0x83a13f2c w1_register_family +EXPORT_SYMBOL drivers/w1/wire 0xa428ae97 w1_remove_master_device +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 0x025c7f33 __fscache_uncache_all_inode_pages +EXPORT_SYMBOL fs/fscache/fscache 0x0a91dcf1 fscache_object_destroy +EXPORT_SYMBOL fs/fscache/fscache 0x0b1ef4c8 __fscache_wait_on_invalidate +EXPORT_SYMBOL fs/fscache/fscache 0x1e6d950e fscache_withdraw_cache +EXPORT_SYMBOL fs/fscache/fscache 0x1f4665ed __fscache_relinquish_cookie +EXPORT_SYMBOL fs/fscache/fscache 0x20f65d56 fscache_operation_init +EXPORT_SYMBOL fs/fscache/fscache 0x2db5d29e fscache_io_error +EXPORT_SYMBOL fs/fscache/fscache 0x35d0b7cb fscache_add_cache +EXPORT_SYMBOL fs/fscache/fscache 0x41e478f9 fscache_obtained_object +EXPORT_SYMBOL fs/fscache/fscache 0x43aff1ad __fscache_check_consistency +EXPORT_SYMBOL fs/fscache/fscache 0x4b05e5a2 __fscache_acquire_cookie +EXPORT_SYMBOL fs/fscache/fscache 0x5b37f639 __fscache_unregister_netfs +EXPORT_SYMBOL fs/fscache/fscache 0x6042e525 fscache_fsdef_index +EXPORT_SYMBOL fs/fscache/fscache 0x69883921 __fscache_disable_cookie +EXPORT_SYMBOL fs/fscache/fscache 0x6acefa42 fscache_cache_cleared_wq +EXPORT_SYMBOL fs/fscache/fscache 0x73f4d21e __fscache_read_or_alloc_page +EXPORT_SYMBOL fs/fscache/fscache 0x74530ecd fscache_op_debug_id +EXPORT_SYMBOL fs/fscache/fscache 0x7ad0133b fscache_mark_page_cached +EXPORT_SYMBOL fs/fscache/fscache 0x8a4bb3e1 fscache_mark_pages_cached +EXPORT_SYMBOL fs/fscache/fscache 0x8d1b4e98 fscache_init_cache +EXPORT_SYMBOL fs/fscache/fscache 0xa5482065 __fscache_readpages_cancel +EXPORT_SYMBOL fs/fscache/fscache 0xa6a84b91 __fscache_register_netfs +EXPORT_SYMBOL fs/fscache/fscache 0xae298d83 __fscache_update_cookie +EXPORT_SYMBOL fs/fscache/fscache 0xb135793e fscache_check_aux +EXPORT_SYMBOL fs/fscache/fscache 0xc37f73aa __fscache_uncache_page +EXPORT_SYMBOL fs/fscache/fscache 0xc3c6acec __fscache_alloc_page +EXPORT_SYMBOL fs/fscache/fscache 0xc83d49da fscache_object_lookup_negative +EXPORT_SYMBOL fs/fscache/fscache 0xd0094d52 __fscache_enable_cookie +EXPORT_SYMBOL fs/fscache/fscache 0xd042efb6 __fscache_write_page +EXPORT_SYMBOL fs/fscache/fscache 0xd56fad52 __fscache_invalidate +EXPORT_SYMBOL fs/fscache/fscache 0xd6d39a56 __fscache_check_page_write +EXPORT_SYMBOL fs/fscache/fscache 0xd733c316 fscache_object_mark_killed +EXPORT_SYMBOL fs/fscache/fscache 0xdc747315 fscache_object_init +EXPORT_SYMBOL fs/fscache/fscache 0xdfc9a587 __fscache_maybe_release_page +EXPORT_SYMBOL fs/fscache/fscache 0xec3b3bb6 fscache_put_operation +EXPORT_SYMBOL fs/fscache/fscache 0xef2268f9 fscache_object_retrying_stale +EXPORT_SYMBOL fs/fscache/fscache 0xf18c72d8 __fscache_attr_changed +EXPORT_SYMBOL fs/fscache/fscache 0xf330493d fscache_op_complete +EXPORT_SYMBOL fs/fscache/fscache 0xfc3ddc4b __fscache_read_or_alloc_pages +EXPORT_SYMBOL fs/fscache/fscache 0xfc5d52e2 __fscache_wait_on_page_write +EXPORT_SYMBOL fs/fscache/fscache 0xfdcd663c fscache_enqueue_operation +EXPORT_SYMBOL fs/ocfs2/cluster/ocfs2_nodemanager 0xbfd7d7a2 o2hb_global_heartbeat_active +EXPORT_SYMBOL fs/quota/quota_tree 0x19250cce qtree_entry_unused +EXPORT_SYMBOL fs/quota/quota_tree 0x54a9b3cd qtree_get_next_id +EXPORT_SYMBOL fs/quota/quota_tree 0x6b554b08 qtree_delete_dquot +EXPORT_SYMBOL fs/quota/quota_tree 0x80c3ee90 qtree_release_dquot +EXPORT_SYMBOL fs/quota/quota_tree 0x841a6383 qtree_read_dquot +EXPORT_SYMBOL fs/quota/quota_tree 0xfbd82927 qtree_write_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 0xaa8106bc crc8_populate_msb +EXPORT_SYMBOL lib/crc8 0xc3cd034d crc8_populate_lsb +EXPORT_SYMBOL lib/crc8 0xe2aae5cc crc8 +EXPORT_SYMBOL lib/crypto/libarc4 0x2bb32ad1 arc4_setkey +EXPORT_SYMBOL lib/crypto/libarc4 0xcd47fcc4 arc4_crypt +EXPORT_SYMBOL lib/crypto/libblake2s 0x7bcc24fd blake2s256_hmac +EXPORT_SYMBOL lib/crypto/libblake2s 0xa3cefaa0 blake2s_update +EXPORT_SYMBOL lib/crypto/libblake2s 0xadae6df8 blake2s_final +EXPORT_SYMBOL lib/crypto/libblake2s-generic 0x755f4ba3 blake2s_compress_generic +EXPORT_SYMBOL lib/crypto/libchacha 0xcec122d7 chacha_crypt_generic +EXPORT_SYMBOL lib/crypto/libchacha20poly1305 0x147c3f2e chacha20poly1305_encrypt +EXPORT_SYMBOL lib/crypto/libchacha20poly1305 0x1c679fe2 chacha20poly1305_decrypt +EXPORT_SYMBOL lib/crypto/libchacha20poly1305 0x37b34b92 chacha20poly1305_encrypt_sg_inplace +EXPORT_SYMBOL lib/crypto/libchacha20poly1305 0x5b19e187 chacha20poly1305_decrypt_sg_inplace +EXPORT_SYMBOL lib/crypto/libchacha20poly1305 0xbaf4d923 xchacha20poly1305_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 0x4dba97c6 poly1305_core_setkey +EXPORT_SYMBOL lib/crypto/libpoly1305 0xbcb90cb3 poly1305_core_emit +EXPORT_SYMBOL lib/libcrc32c 0x89a0cd52 crc32c_impl +EXPORT_SYMBOL lib/libcrc32c 0xb15b4109 crc32c +EXPORT_SYMBOL lib/lru_cache 0x0641307b lc_destroy +EXPORT_SYMBOL lib/lru_cache 0x098d2ed9 lc_try_get +EXPORT_SYMBOL lib/lru_cache 0x1b11832a lc_seq_printf_stats +EXPORT_SYMBOL lib/lru_cache 0x2d47ac83 lc_committed +EXPORT_SYMBOL lib/lru_cache 0x2f3dcecb lc_index_of +EXPORT_SYMBOL lib/lru_cache 0x4522d82a lc_reset +EXPORT_SYMBOL lib/lru_cache 0x4cf5f5a8 lc_is_used +EXPORT_SYMBOL lib/lru_cache 0x5752f31b lc_del +EXPORT_SYMBOL lib/lru_cache 0x7257beee lc_element_by_index +EXPORT_SYMBOL lib/lru_cache 0x8b8fe44a lc_seq_dump_details +EXPORT_SYMBOL lib/lru_cache 0x9134feb7 lc_get +EXPORT_SYMBOL lib/lru_cache 0xb672aa97 lc_create +EXPORT_SYMBOL lib/lru_cache 0xbfbe53d5 lc_get_cumulative +EXPORT_SYMBOL lib/lru_cache 0xc3a98c1d lc_try_lock +EXPORT_SYMBOL lib/lru_cache 0xcc979a91 lc_set +EXPORT_SYMBOL lib/lru_cache 0xefec290a lc_find +EXPORT_SYMBOL lib/lru_cache 0xfd525ec7 lc_put +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 0x1cb6e515 lowpan_nhc_add +EXPORT_SYMBOL net/6lowpan/6lowpan 0x46c362e6 lowpan_register_netdev +EXPORT_SYMBOL net/6lowpan/6lowpan 0x6f465aaa lowpan_unregister_netdevice +EXPORT_SYMBOL net/6lowpan/6lowpan 0x96d62c7d lowpan_unregister_netdev +EXPORT_SYMBOL net/6lowpan/6lowpan 0xcc4fc5c9 lowpan_register_netdevice +EXPORT_SYMBOL net/6lowpan/6lowpan 0xdfb2873b lowpan_nhc_del +EXPORT_SYMBOL net/802/p8022 0xd43fe453 register_8022_client +EXPORT_SYMBOL net/802/p8022 0xfad0a3c7 unregister_8022_client +EXPORT_SYMBOL net/802/psnap 0x67614729 register_snap_client +EXPORT_SYMBOL net/802/psnap 0xa4a92719 unregister_snap_client +EXPORT_SYMBOL net/9p/9pnet 0x00a749aa p9_client_setattr +EXPORT_SYMBOL net/9p/9pnet 0x010f940a p9_tag_lookup +EXPORT_SYMBOL net/9p/9pnet 0x08fdb857 p9_client_write +EXPORT_SYMBOL net/9p/9pnet 0x1430723c p9_req_put +EXPORT_SYMBOL net/9p/9pnet 0x1a689687 v9fs_get_trans_by_name +EXPORT_SYMBOL net/9p/9pnet 0x1e2cae92 p9_client_destroy +EXPORT_SYMBOL net/9p/9pnet 0x211fd70b p9_client_walk +EXPORT_SYMBOL net/9p/9pnet 0x26047138 p9_client_mkdir_dotl +EXPORT_SYMBOL net/9p/9pnet 0x2a294b0b p9_client_attach +EXPORT_SYMBOL net/9p/9pnet 0x3ce69cf2 p9_client_read_once +EXPORT_SYMBOL net/9p/9pnet 0x3d73a797 p9_errstr2errno +EXPORT_SYMBOL net/9p/9pnet 0x3f688c36 p9_client_create +EXPORT_SYMBOL net/9p/9pnet 0x41ce9823 p9stat_read +EXPORT_SYMBOL net/9p/9pnet 0x4371639d p9_client_getattr_dotl +EXPORT_SYMBOL net/9p/9pnet 0x4bb67742 p9_client_fsync +EXPORT_SYMBOL net/9p/9pnet 0x53e4fd69 p9_client_mknod_dotl +EXPORT_SYMBOL net/9p/9pnet 0x60c698b3 p9_client_disconnect +EXPORT_SYMBOL net/9p/9pnet 0x61a8cdf8 p9_client_readdir +EXPORT_SYMBOL net/9p/9pnet 0x62964144 p9_client_stat +EXPORT_SYMBOL net/9p/9pnet 0x697e6dfb p9_release_pages +EXPORT_SYMBOL net/9p/9pnet 0x6ca4c5b7 p9_client_link +EXPORT_SYMBOL net/9p/9pnet 0x760616c8 p9_client_renameat +EXPORT_SYMBOL net/9p/9pnet 0x790bd6ed p9_client_create_dotl +EXPORT_SYMBOL net/9p/9pnet 0x7d083451 p9_client_readlink +EXPORT_SYMBOL net/9p/9pnet 0x812a970d v9fs_register_trans +EXPORT_SYMBOL net/9p/9pnet 0x95bd8f96 p9dirent_read +EXPORT_SYMBOL net/9p/9pnet 0x984c5e73 p9_fcall_fini +EXPORT_SYMBOL net/9p/9pnet 0x9d14c0a1 p9_client_lock_dotl +EXPORT_SYMBOL net/9p/9pnet 0x9d37a525 p9_show_client_options +EXPORT_SYMBOL net/9p/9pnet 0x9e4fbe09 p9_client_symlink +EXPORT_SYMBOL net/9p/9pnet 0xa3d542bf p9_client_read +EXPORT_SYMBOL net/9p/9pnet 0xa9470b97 v9fs_unregister_trans +EXPORT_SYMBOL net/9p/9pnet 0xaaf04e27 p9_client_clunk +EXPORT_SYMBOL net/9p/9pnet 0xb79f25fd p9_parse_header +EXPORT_SYMBOL net/9p/9pnet 0xb7aea567 p9_is_proto_dotu +EXPORT_SYMBOL net/9p/9pnet 0xb7fbb479 p9_client_statfs +EXPORT_SYMBOL net/9p/9pnet 0xbe690854 p9_client_wstat +EXPORT_SYMBOL net/9p/9pnet 0xc4024d8f p9_client_open +EXPORT_SYMBOL net/9p/9pnet 0xc44722f7 p9_client_begin_disconnect +EXPORT_SYMBOL net/9p/9pnet 0xc5ee1b1b p9_client_getlock_dotl +EXPORT_SYMBOL net/9p/9pnet 0xd244c272 p9_client_cb +EXPORT_SYMBOL net/9p/9pnet 0xd384c683 p9stat_free +EXPORT_SYMBOL net/9p/9pnet 0xd65b08cb p9_is_proto_dotl +EXPORT_SYMBOL net/9p/9pnet 0xdf250eb7 v9fs_get_default_trans +EXPORT_SYMBOL net/9p/9pnet 0xdf3384b8 p9_client_fcreate +EXPORT_SYMBOL net/9p/9pnet 0xe2fd963e p9_client_remove +EXPORT_SYMBOL net/9p/9pnet 0xe4d051f1 p9_client_rename +EXPORT_SYMBOL net/9p/9pnet 0xe58a3360 p9_error_init +EXPORT_SYMBOL net/9p/9pnet 0xef1bd833 p9_client_unlinkat +EXPORT_SYMBOL net/appletalk/appletalk 0x2a4c8e2e aarp_send_ddp +EXPORT_SYMBOL net/appletalk/appletalk 0x5e6f155d atrtr_get_dev +EXPORT_SYMBOL net/appletalk/appletalk 0x7fbff5c1 atalk_find_dev_addr +EXPORT_SYMBOL net/appletalk/appletalk 0x97155bc7 alloc_ltalkdev +EXPORT_SYMBOL net/atm/atm 0x2cc2d52d vcc_hash +EXPORT_SYMBOL net/atm/atm 0x4443d399 atm_proc_root +EXPORT_SYMBOL net/atm/atm 0x44c6e633 vcc_sklist_lock +EXPORT_SYMBOL net/atm/atm 0x4a3989f8 register_atm_ioctl +EXPORT_SYMBOL net/atm/atm 0x5b3aa83d deregister_atm_ioctl +EXPORT_SYMBOL net/atm/atm 0x723e1ec4 vcc_release_async +EXPORT_SYMBOL net/atm/atm 0x9feaf287 sonet_subtract_stats +EXPORT_SYMBOL net/atm/atm 0xaa024146 sonet_copy_stats +EXPORT_SYMBOL net/atm/atm 0xac3abaf8 atm_dev_release_vccs +EXPORT_SYMBOL net/atm/atm 0xd17e56e1 atm_dev_register +EXPORT_SYMBOL net/atm/atm 0xdc1a2c48 atm_dev_signal_change +EXPORT_SYMBOL net/atm/atm 0xdcea0331 atm_charge +EXPORT_SYMBOL net/atm/atm 0xdd1719cc atm_dev_lookup +EXPORT_SYMBOL net/atm/atm 0xe0b10cb4 atm_init_aal5 +EXPORT_SYMBOL net/atm/atm 0xec985742 atm_dev_deregister +EXPORT_SYMBOL net/atm/atm 0xed3f395c atm_alloc_charge +EXPORT_SYMBOL net/atm/atm 0xf49bc67a atm_pcr_goal +EXPORT_SYMBOL net/atm/atm 0xfe137dc0 vcc_process_recv_queue +EXPORT_SYMBOL net/atm/atm 0xfea3317a vcc_insert_socket +EXPORT_SYMBOL net/ax25/ax25 0x14cecd59 ax25_display_timer +EXPORT_SYMBOL net/ax25/ax25 0x242852b9 ax25_uid_policy +EXPORT_SYMBOL net/ax25/ax25 0x3320d4b4 ax25_ip_xmit +EXPORT_SYMBOL net/ax25/ax25 0x4502c65a asc2ax +EXPORT_SYMBOL net/ax25/ax25 0x4fc5c343 ax25_send_frame +EXPORT_SYMBOL net/ax25/ax25 0x53dea1ff ax2asc +EXPORT_SYMBOL net/ax25/ax25 0x62ed4838 ax25_linkfail_register +EXPORT_SYMBOL net/ax25/ax25 0x7f4c8376 ax25_header_ops +EXPORT_SYMBOL net/ax25/ax25 0x8ede9e26 ax25_protocol_release +EXPORT_SYMBOL net/ax25/ax25 0xc1444946 ax25cmp +EXPORT_SYMBOL net/ax25/ax25 0xc3e12ddd ax25_linkfail_release +EXPORT_SYMBOL net/ax25/ax25 0xce4e3f2f ax25_listen_register +EXPORT_SYMBOL net/ax25/ax25 0xd43ecbf1 null_ax25_address +EXPORT_SYMBOL net/ax25/ax25 0xed4dbaa3 ax25_listen_release +EXPORT_SYMBOL net/ax25/ax25 0xee02e420 ax25_findbyuid +EXPORT_SYMBOL net/ax25/ax25 0xf20cb99e ax25_find_cb +EXPORT_SYMBOL net/bluetooth/bluetooth 0x0718b8b7 bt_info +EXPORT_SYMBOL net/bluetooth/bluetooth 0x0fc1981d hci_register_dev +EXPORT_SYMBOL net/bluetooth/bluetooth 0x0ffd80ba hci_suspend_dev +EXPORT_SYMBOL net/bluetooth/bluetooth 0x12323363 hci_reset_dev +EXPORT_SYMBOL net/bluetooth/bluetooth 0x17725cd2 bt_accept_dequeue +EXPORT_SYMBOL net/bluetooth/bluetooth 0x18302d85 hci_unregister_cb +EXPORT_SYMBOL net/bluetooth/bluetooth 0x1de9cb07 bt_sock_poll +EXPORT_SYMBOL net/bluetooth/bluetooth 0x214e4265 bt_warn +EXPORT_SYMBOL net/bluetooth/bluetooth 0x219a28ba bt_sock_reclassify_lock +EXPORT_SYMBOL net/bluetooth/bluetooth 0x2c64cac9 l2cap_conn_get +EXPORT_SYMBOL net/bluetooth/bluetooth 0x38c92fed bt_sock_recvmsg +EXPORT_SYMBOL net/bluetooth/bluetooth 0x39a03d46 bt_sock_stream_recvmsg +EXPORT_SYMBOL net/bluetooth/bluetooth 0x4369d39c hci_get_route +EXPORT_SYMBOL net/bluetooth/bluetooth 0x44ad1baf hci_unregister_dev +EXPORT_SYMBOL net/bluetooth/bluetooth 0x4b640599 hci_conn_security +EXPORT_SYMBOL net/bluetooth/bluetooth 0x5048960a hci_recv_frame +EXPORT_SYMBOL net/bluetooth/bluetooth 0x62217dbd bt_sock_unlink +EXPORT_SYMBOL net/bluetooth/bluetooth 0x71339c07 hci_alloc_dev +EXPORT_SYMBOL net/bluetooth/bluetooth 0x76d71907 bt_sock_wait_state +EXPORT_SYMBOL net/bluetooth/bluetooth 0x77c1c4f3 __hci_cmd_send +EXPORT_SYMBOL net/bluetooth/bluetooth 0x78535d58 l2cap_is_socket +EXPORT_SYMBOL net/bluetooth/bluetooth 0x78fcd620 hci_mgmt_chan_unregister +EXPORT_SYMBOL net/bluetooth/bluetooth 0x7aad008b bt_to_errno +EXPORT_SYMBOL net/bluetooth/bluetooth 0x7b5ce5c3 baswap +EXPORT_SYMBOL net/bluetooth/bluetooth 0x7b8c32f1 bt_err +EXPORT_SYMBOL net/bluetooth/bluetooth 0x7c694aa4 bt_accept_unlink +EXPORT_SYMBOL net/bluetooth/bluetooth 0x8ad46947 __hci_cmd_sync +EXPORT_SYMBOL net/bluetooth/bluetooth 0x8fea24bd bt_sock_unregister +EXPORT_SYMBOL net/bluetooth/bluetooth 0x90a1b508 hci_conn_check_secure +EXPORT_SYMBOL net/bluetooth/bluetooth 0x985a13a1 hci_cmd_sync +EXPORT_SYMBOL net/bluetooth/bluetooth 0x9df30e99 bt_sock_wait_ready +EXPORT_SYMBOL net/bluetooth/bluetooth 0xa328f0aa hci_free_dev +EXPORT_SYMBOL net/bluetooth/bluetooth 0xa58fa5ae l2cap_conn_put +EXPORT_SYMBOL net/bluetooth/bluetooth 0xab437f97 bt_sock_register +EXPORT_SYMBOL net/bluetooth/bluetooth 0xac302e50 hci_recv_diag +EXPORT_SYMBOL net/bluetooth/bluetooth 0xaefb2e37 l2cap_chan_close +EXPORT_SYMBOL net/bluetooth/bluetooth 0xb282498f bt_sock_link +EXPORT_SYMBOL net/bluetooth/bluetooth 0xbf803a3f bt_procfs_cleanup +EXPORT_SYMBOL net/bluetooth/bluetooth 0xc905e18f bt_sock_ioctl +EXPORT_SYMBOL net/bluetooth/bluetooth 0xcfcdb0fa l2cap_unregister_user +EXPORT_SYMBOL net/bluetooth/bluetooth 0xd33200d0 bt_procfs_init +EXPORT_SYMBOL net/bluetooth/bluetooth 0xd5b47200 hci_set_fw_info +EXPORT_SYMBOL net/bluetooth/bluetooth 0xd7613212 bt_err_ratelimited +EXPORT_SYMBOL net/bluetooth/bluetooth 0xdc3066b7 hci_set_hw_info +EXPORT_SYMBOL net/bluetooth/bluetooth 0xdc76a66a hci_resume_dev +EXPORT_SYMBOL net/bluetooth/bluetooth 0xddacccf6 bt_warn_ratelimited +EXPORT_SYMBOL net/bluetooth/bluetooth 0xe3ed0c3c l2cap_register_user +EXPORT_SYMBOL net/bluetooth/bluetooth 0xeac382bf hci_register_cb +EXPORT_SYMBOL net/bluetooth/bluetooth 0xeb6ebd77 hci_conn_switch_role +EXPORT_SYMBOL net/bluetooth/bluetooth 0xf01c3966 bt_accept_enqueue +EXPORT_SYMBOL net/bluetooth/bluetooth 0xf2adb1d5 __hci_cmd_sync_ev +EXPORT_SYMBOL net/bluetooth/bluetooth 0xf5720522 hci_mgmt_chan_register +EXPORT_SYMBOL net/bridge/netfilter/ebtables 0x96f198eb ebt_do_table +EXPORT_SYMBOL net/bridge/netfilter/ebtables 0xd28db88d ebt_unregister_table +EXPORT_SYMBOL net/bridge/netfilter/ebtables 0xec394e93 ebt_register_table +EXPORT_SYMBOL net/caif/caif 0x1446b60a caif_client_register_refcnt +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 0x50124b6b cfcnfg_add_phy_layer +EXPORT_SYMBOL net/caif/caif 0x7a14e76c caif_connect_client +EXPORT_SYMBOL net/caif/caif 0x839ddb7b cfcnfg_set_phy_state +EXPORT_SYMBOL net/caif/caif 0x9e3e305d cfpkt_set_prio +EXPORT_SYMBOL net/caif/caif 0xaa2a4991 get_cfcnfg +EXPORT_SYMBOL net/caif/caif 0xb7b6874e caif_free_client +EXPORT_SYMBOL net/caif/caif 0xbe726252 caif_disconnect_client +EXPORT_SYMBOL net/caif/caif 0xfe9e105e caif_enroll_dev +EXPORT_SYMBOL net/can/can 0x4bc4cd78 can_rx_unregister +EXPORT_SYMBOL net/can/can 0x6013d5a9 can_send +EXPORT_SYMBOL net/can/can 0x892603bc can_proto_unregister +EXPORT_SYMBOL net/can/can 0xbd999509 can_sock_destruct +EXPORT_SYMBOL net/can/can 0xe211045f can_rx_register +EXPORT_SYMBOL net/can/can 0xfc6a26a2 can_proto_register +EXPORT_SYMBOL net/ceph/libceph 0x04b6034f ceph_messenger_init +EXPORT_SYMBOL net/ceph/libceph 0x061baf5d __ceph_open_session +EXPORT_SYMBOL net/ceph/libceph 0x08a8f1b7 ceph_con_open +EXPORT_SYMBOL net/ceph/libceph 0x09871f53 ceph_messenger_fini +EXPORT_SYMBOL net/ceph/libceph 0x0bfff7a9 osd_req_op_extent_osd_data +EXPORT_SYMBOL net/ceph/libceph 0x11dbdfa5 ceph_auth_add_authorizer_challenge +EXPORT_SYMBOL net/ceph/libceph 0x1258aee6 ceph_wait_for_latest_osdmap +EXPORT_SYMBOL net/ceph/libceph 0x13eb2188 ceph_copy_to_page_vector +EXPORT_SYMBOL net/ceph/libceph 0x165b1948 ceph_pagelist_free_reserve +EXPORT_SYMBOL net/ceph/libceph 0x18d623c2 ceph_cls_break_lock +EXPORT_SYMBOL net/ceph/libceph 0x1919f97b ceph_osdc_flush_notifies +EXPORT_SYMBOL net/ceph/libceph 0x19c97ee9 ceph_cls_unlock +EXPORT_SYMBOL net/ceph/libceph 0x1bb9e4f3 ceph_auth_update_authorizer +EXPORT_SYMBOL net/ceph/libceph 0x2087719e ceph_oid_copy +EXPORT_SYMBOL net/ceph/libceph 0x20c8c19f ceph_osdc_sync +EXPORT_SYMBOL net/ceph/libceph 0x2101cbc9 ceph_oid_destroy +EXPORT_SYMBOL net/ceph/libceph 0x21d5ee38 ceph_msg_put +EXPORT_SYMBOL net/ceph/libceph 0x2494626d ceph_object_locator_to_pg +EXPORT_SYMBOL net/ceph/libceph 0x26be0e7f osd_req_op_xattr_init +EXPORT_SYMBOL net/ceph/libceph 0x2a983d26 ceph_pagelist_release +EXPORT_SYMBOL net/ceph/libceph 0x2c201cec ceph_msg_new +EXPORT_SYMBOL net/ceph/libceph 0x31651ddc ceph_con_send +EXPORT_SYMBOL net/ceph/libceph 0x36cc108e ceph_con_keepalive +EXPORT_SYMBOL net/ceph/libceph 0x382adde1 ceph_monc_got_map +EXPORT_SYMBOL net/ceph/libceph 0x389bc2d9 ceph_auth_invalidate_authorizer +EXPORT_SYMBOL net/ceph/libceph 0x38f2d94e ceph_file_to_extents +EXPORT_SYMBOL net/ceph/libceph 0x39f5dd99 ceph_monc_blacklist_add +EXPORT_SYMBOL net/ceph/libceph 0x3c8d7111 ceph_get_num_objects +EXPORT_SYMBOL net/ceph/libceph 0x417a9131 ceph_oloc_destroy +EXPORT_SYMBOL net/ceph/libceph 0x439924ec ceph_parse_param +EXPORT_SYMBOL net/ceph/libceph 0x46555f2e ceph_pg_poolid_by_name +EXPORT_SYMBOL net/ceph/libceph 0x466b85b8 libceph_compatible +EXPORT_SYMBOL net/ceph/libceph 0x46b4d6a7 ceph_osdc_unwatch +EXPORT_SYMBOL net/ceph/libceph 0x47e94568 ceph_put_page_vector +EXPORT_SYMBOL net/ceph/libceph 0x4b32f726 osd_req_op_alloc_hint_init +EXPORT_SYMBOL net/ceph/libceph 0x4ee3aeea ceph_create_client +EXPORT_SYMBOL net/ceph/libceph 0x4ff30c94 ceph_cls_lock_info +EXPORT_SYMBOL net/ceph/libceph 0x50446256 ceph_osdc_watch +EXPORT_SYMBOL net/ceph/libceph 0x523f02a5 ceph_msg_data_add_bio +EXPORT_SYMBOL net/ceph/libceph 0x57baf885 ceph_str_hash +EXPORT_SYMBOL net/ceph/libceph 0x57ec63bc osd_req_op_cls_init +EXPORT_SYMBOL net/ceph/libceph 0x58bca734 ceph_monc_validate_auth +EXPORT_SYMBOL net/ceph/libceph 0x59a89b39 ceph_auth_is_authenticated +EXPORT_SYMBOL net/ceph/libceph 0x5aeeee62 ceph_oid_aprintf +EXPORT_SYMBOL net/ceph/libceph 0x5b0ce8df ceph_compare_options +EXPORT_SYMBOL net/ceph/libceph 0x5e0ec6a3 ceph_pg_pool_name_by_id +EXPORT_SYMBOL net/ceph/libceph 0x5e373f8d ceph_con_close +EXPORT_SYMBOL net/ceph/libceph 0x5fad39d1 osd_req_op_cls_request_data_bvecs +EXPORT_SYMBOL net/ceph/libceph 0x63758856 ceph_str_hash_name +EXPORT_SYMBOL net/ceph/libceph 0x653cd8fa osd_req_op_init +EXPORT_SYMBOL net/ceph/libceph 0x6603935a ceph_osdc_new_request +EXPORT_SYMBOL net/ceph/libceph 0x6a7a38a0 ceph_pr_addr +EXPORT_SYMBOL net/ceph/libceph 0x6c6e0d3f osd_req_op_extent_dup_last +EXPORT_SYMBOL net/ceph/libceph 0x6cd39629 ceph_msg_data_add_pages +EXPORT_SYMBOL net/ceph/libceph 0x6ddb2e15 osd_req_op_cls_request_data_pages +EXPORT_SYMBOL net/ceph/libceph 0x72ae665b ceph_osdc_cancel_request +EXPORT_SYMBOL net/ceph/libceph 0x7358e4c4 ceph_alloc_options +EXPORT_SYMBOL net/ceph/libceph 0x79775fcf ceph_monc_do_statfs +EXPORT_SYMBOL net/ceph/libceph 0x7b485f16 ceph_osdc_update_epoch_barrier +EXPORT_SYMBOL net/ceph/libceph 0x7ca2cd54 ceph_parse_mon_ips +EXPORT_SYMBOL net/ceph/libceph 0x7d8a9b0d ceph_msg_new2 +EXPORT_SYMBOL net/ceph/libceph 0x7e8d3a61 ceph_reset_client_addr +EXPORT_SYMBOL net/ceph/libceph 0x82cc53bc osd_req_op_extent_osd_data_pagelist +EXPORT_SYMBOL net/ceph/libceph 0x86526b00 ceph_osdc_maybe_request_map +EXPORT_SYMBOL net/ceph/libceph 0x86da1fc9 ceph_msg_get +EXPORT_SYMBOL net/ceph/libceph 0x86fca7e4 ceph_put_snap_context +EXPORT_SYMBOL net/ceph/libceph 0x882ec72c ceph_open_session +EXPORT_SYMBOL net/ceph/libceph 0x9236b767 ceph_release_page_vector +EXPORT_SYMBOL net/ceph/libceph 0x993e188b ceph_monc_stop +EXPORT_SYMBOL net/ceph/libceph 0x9b2f3478 ceph_pg_pool_flags +EXPORT_SYMBOL net/ceph/libceph 0x9bc6b539 ceph_find_or_create_string +EXPORT_SYMBOL net/ceph/libceph 0x9c408d64 osd_req_op_extent_osd_data_pages +EXPORT_SYMBOL net/ceph/libceph 0x9ca95932 ceph_create_snap_context +EXPORT_SYMBOL net/ceph/libceph 0x9ec01b3e ceph_osdc_abort_requests +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 0xa698f998 ceph_free_lockers +EXPORT_SYMBOL net/ceph/libceph 0xa826c53c ceph_osdc_clear_abort_err +EXPORT_SYMBOL net/ceph/libceph 0xa9626204 ceph_monc_get_version +EXPORT_SYMBOL net/ceph/libceph 0xa9637a20 ceph_osdc_wait_request +EXPORT_SYMBOL net/ceph/libceph 0xaa66261f ceph_alloc_page_vector +EXPORT_SYMBOL net/ceph/libceph 0xab0845e8 ceph_osdc_put_request +EXPORT_SYMBOL net/ceph/libceph 0xab5fc625 ceph_monc_get_version_async +EXPORT_SYMBOL net/ceph/libceph 0xad703657 ceph_auth_destroy_authorizer +EXPORT_SYMBOL net/ceph/libceph 0xaf66fe8d osd_req_op_raw_data_in_pages +EXPORT_SYMBOL net/ceph/libceph 0xafb8a407 ceph_msgr_flush +EXPORT_SYMBOL net/ceph/libceph 0xb004baa7 ceph_monc_want_map +EXPORT_SYMBOL net/ceph/libceph 0xb3f29ad3 osd_req_op_extent_osd_data_bio +EXPORT_SYMBOL net/ceph/libceph 0xb54676fa ceph_msg_type_name +EXPORT_SYMBOL net/ceph/libceph 0xb72c162e ceph_buffer_release +EXPORT_SYMBOL net/ceph/libceph 0xb7c7acdb ceph_cls_set_cookie +EXPORT_SYMBOL net/ceph/libceph 0xb97a2562 ceph_client_addr +EXPORT_SYMBOL net/ceph/libceph 0xbbc643c7 ceph_msg_data_add_bvecs +EXPORT_SYMBOL net/ceph/libceph 0xbd2f79ae ceph_oloc_copy +EXPORT_SYMBOL net/ceph/libceph 0xbd8c1313 ceph_destroy_options +EXPORT_SYMBOL net/ceph/libceph 0xbdd3559a ceph_print_client_options +EXPORT_SYMBOL net/ceph/libceph 0xbe3879aa ceph_get_snap_context +EXPORT_SYMBOL net/ceph/libceph 0xbecf87fe ceph_auth_verify_authorizer_reply +EXPORT_SYMBOL net/ceph/libceph 0xbf563fcb ceph_osdc_call +EXPORT_SYMBOL net/ceph/libceph 0xc0780858 osd_req_op_extent_update +EXPORT_SYMBOL net/ceph/libceph 0xc1fe153d ceph_osdc_copy_from +EXPORT_SYMBOL net/ceph/libceph 0xc29d1f8c ceph_client_gid +EXPORT_SYMBOL net/ceph/libceph 0xc366bfa1 ceph_pagelist_truncate +EXPORT_SYMBOL net/ceph/libceph 0xc542fd44 ceph_osdc_alloc_messages +EXPORT_SYMBOL net/ceph/libceph 0xc76dda54 osd_req_op_extent_osd_data_bvecs +EXPORT_SYMBOL net/ceph/libceph 0xc954dc4b ceph_copy_from_page_vector +EXPORT_SYMBOL net/ceph/libceph 0xc95b3515 ceph_cls_lock +EXPORT_SYMBOL net/ceph/libceph 0xca80437b ceph_extent_to_file +EXPORT_SYMBOL net/ceph/libceph 0xcb20dabf ceph_copy_user_to_page_vector +EXPORT_SYMBOL net/ceph/libceph 0xd2507141 ceph_destroy_client +EXPORT_SYMBOL net/ceph/libceph 0xd27c606f ceph_osdc_get_request +EXPORT_SYMBOL net/ceph/libceph 0xd4eb7735 ceph_decode_entity_addr +EXPORT_SYMBOL net/ceph/libceph 0xd5b8bde1 osd_req_op_extent_osd_data_bvec_pos +EXPORT_SYMBOL net/ceph/libceph 0xd7aa1742 ceph_monc_open_session +EXPORT_SYMBOL net/ceph/libceph 0xd8821d6b ceph_cls_assert_locked +EXPORT_SYMBOL net/ceph/libceph 0xdd1f6a35 ceph_msg_data_add_pagelist +EXPORT_SYMBOL net/ceph/libceph 0xde8f8c0b ceph_check_fsid +EXPORT_SYMBOL net/ceph/libceph 0xdf09d3dc ceph_zero_page_vector_range +EXPORT_SYMBOL net/ceph/libceph 0xdf6ef4a1 ceph_oid_printf +EXPORT_SYMBOL net/ceph/libceph 0xdfc091f9 ceph_entity_type_name +EXPORT_SYMBOL net/ceph/libceph 0xe30c903f osd_req_op_cls_request_data_pagelist +EXPORT_SYMBOL net/ceph/libceph 0xe414ba67 osd_req_op_extent_init +EXPORT_SYMBOL net/ceph/libceph 0xe76e7226 ceph_pagelist_alloc +EXPORT_SYMBOL net/ceph/libceph 0xe97ced59 ceph_auth_create_authorizer +EXPORT_SYMBOL net/ceph/libceph 0xebeca686 ceph_con_init +EXPORT_SYMBOL net/ceph/libceph 0xebfb9142 ceph_osdc_notify +EXPORT_SYMBOL net/ceph/libceph 0xee120c03 ceph_release_string +EXPORT_SYMBOL net/ceph/libceph 0xeef6cfa3 ceph_iterate_extents +EXPORT_SYMBOL net/ceph/libceph 0xef65f2f5 ceph_pg_to_acting_primary +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 0xf3d400eb osd_req_op_cls_response_data_pages +EXPORT_SYMBOL net/ceph/libceph 0xf3f57ac7 ceph_osdc_notify_ack +EXPORT_SYMBOL net/ceph/libceph 0xf43accac ceph_monc_init +EXPORT_SYMBOL net/ceph/libceph 0xf647c56b ceph_osdc_start_request +EXPORT_SYMBOL net/ceph/libceph 0xf6ae945a ceph_monc_wait_osdmap +EXPORT_SYMBOL net/ceph/libceph 0xf8950cc2 ceph_osdc_alloc_request +EXPORT_SYMBOL net/ceph/libceph 0xf8bb8016 ceph_osdc_list_watchers +EXPORT_SYMBOL net/ceph/libceph 0xf8de71e7 ceph_monc_renew_subs +EXPORT_SYMBOL net/ceph/libceph 0xff024ceb ceph_msg_dump +EXPORT_SYMBOL net/dccp/dccp_ipv4 0x950d8216 dccp_syn_ack_timeout +EXPORT_SYMBOL net/dccp/dccp_ipv4 0xef059161 dccp_req_err +EXPORT_SYMBOL net/dsa/dsa_core 0x8bb29b75 dsa_port_vid_del +EXPORT_SYMBOL net/dsa/dsa_core 0xed99ff6d dsa_port_vid_add +EXPORT_SYMBOL net/ieee802154/ieee802154 0x0a9cba6a wpan_phy_register +EXPORT_SYMBOL net/ieee802154/ieee802154 0x0b216515 wpan_phy_free +EXPORT_SYMBOL net/ieee802154/ieee802154 0x0e032964 wpan_phy_unregister +EXPORT_SYMBOL net/ieee802154/ieee802154 0x94d3e550 wpan_phy_find +EXPORT_SYMBOL net/ieee802154/ieee802154 0xc36c143d wpan_phy_for_each +EXPORT_SYMBOL net/ieee802154/ieee802154 0xd09e8e10 wpan_phy_new +EXPORT_SYMBOL net/ipv4/fou 0x1757d1a4 fou_encap_hlen +EXPORT_SYMBOL net/ipv4/fou 0x3f08aebf __fou_build_header +EXPORT_SYMBOL net/ipv4/fou 0xdfd22116 __gue_build_header +EXPORT_SYMBOL net/ipv4/fou 0xf13914b3 gue_encap_hlen +EXPORT_SYMBOL net/ipv4/gre 0x47f4f983 gre_parse_header +EXPORT_SYMBOL net/ipv4/ip_tunnel 0x0a7f1fd4 ip_tunnel_encap_del_ops +EXPORT_SYMBOL net/ipv4/ip_tunnel 0x937281c3 ip_tunnel_get_iflink +EXPORT_SYMBOL net/ipv4/ip_tunnel 0xb2045253 ip_tunnel_get_link_net +EXPORT_SYMBOL net/ipv4/ip_tunnel 0xcaeeb2d0 ip_tunnel_encap_add_ops +EXPORT_SYMBOL net/ipv4/netfilter/arp_tables 0x49753b2e arpt_do_table +EXPORT_SYMBOL net/ipv4/netfilter/arp_tables 0x990fa86a arpt_unregister_table +EXPORT_SYMBOL net/ipv4/netfilter/arp_tables 0x9f870a20 arpt_register_table +EXPORT_SYMBOL net/ipv4/netfilter/ip_tables 0x44d01dfe ipt_register_table +EXPORT_SYMBOL net/ipv4/netfilter/ip_tables 0x49f901b3 ipt_unregister_table_exit +EXPORT_SYMBOL net/ipv4/netfilter/ip_tables 0x528bce91 ipt_do_table +EXPORT_SYMBOL net/ipv4/netfilter/ip_tables 0x8044f35e ipt_unregister_table +EXPORT_SYMBOL net/ipv4/netfilter/ip_tables 0x9e72f63a ipt_unregister_table_pre_exit +EXPORT_SYMBOL net/ipv4/tunnel4 0x220598ac xfrm4_tunnel_deregister +EXPORT_SYMBOL net/ipv4/tunnel4 0xcf927df4 xfrm4_tunnel_register +EXPORT_SYMBOL net/ipv4/udp_tunnel 0xe86391d0 udp_sock_create4 +EXPORT_SYMBOL net/ipv6/ip6_tunnel 0x539853f1 ip6_tnl_get_link_net +EXPORT_SYMBOL net/ipv6/ip6_tunnel 0x6bf77a04 ip6_tnl_rcv +EXPORT_SYMBOL net/ipv6/ip6_tunnel 0x73b2e9dc ip6_tnl_encap_add_ops +EXPORT_SYMBOL net/ipv6/ip6_tunnel 0xc0ca3663 ip6_tnl_change_mtu +EXPORT_SYMBOL net/ipv6/ip6_tunnel 0xcaf221f9 ip6_tnl_xmit +EXPORT_SYMBOL net/ipv6/ip6_tunnel 0xdeff9ea3 ip6_tnl_get_iflink +EXPORT_SYMBOL net/ipv6/ip6_tunnel 0xe1e9fad7 ip6_tnl_encap_del_ops +EXPORT_SYMBOL net/ipv6/ip6_tunnel 0xf0f8c355 ip6_tnl_get_cap +EXPORT_SYMBOL net/ipv6/ip6_tunnel 0xfaaaafe0 ip6_tnl_parse_tlv_enc_lim +EXPORT_SYMBOL net/ipv6/netfilter/ip6_tables 0x179fbe1a ip6t_unregister_table_exit +EXPORT_SYMBOL net/ipv6/netfilter/ip6_tables 0x228431b4 ip6t_unregister_table +EXPORT_SYMBOL net/ipv6/netfilter/ip6_tables 0x7b24ca7d ip6t_unregister_table_pre_exit +EXPORT_SYMBOL net/ipv6/netfilter/ip6_tables 0xf6973c4c ip6t_do_table +EXPORT_SYMBOL net/ipv6/netfilter/ip6_tables 0xfbcd2e6c ip6t_register_table +EXPORT_SYMBOL net/ipv6/tunnel6 0x56486d1c xfrm6_tunnel_deregister +EXPORT_SYMBOL net/ipv6/tunnel6 0x8cb7bc34 xfrm6_tunnel_register +EXPORT_SYMBOL net/ipv6/xfrm6_tunnel 0x42e810fa xfrm6_tunnel_spi_lookup +EXPORT_SYMBOL net/ipv6/xfrm6_tunnel 0xb07d4dda xfrm6_tunnel_alloc_spi +EXPORT_SYMBOL net/l2tp/l2tp_core 0x1f62d35d l2tp_tunnel_free +EXPORT_SYMBOL net/l2tp/l2tp_core 0x9600a399 l2tp_recv_common +EXPORT_SYMBOL net/l2tp/l2tp_ip 0x318b7206 l2tp_ioctl +EXPORT_SYMBOL net/lapb/lapb 0x04a0f491 lapb_connect_request +EXPORT_SYMBOL net/lapb/lapb 0x1ddc2db8 lapb_data_request +EXPORT_SYMBOL net/lapb/lapb 0x32fda514 lapb_disconnect_request +EXPORT_SYMBOL net/lapb/lapb 0x3a038750 lapb_register +EXPORT_SYMBOL net/lapb/lapb 0x63450944 lapb_getparms +EXPORT_SYMBOL net/lapb/lapb 0x66a2c2dd lapb_setparms +EXPORT_SYMBOL net/lapb/lapb 0xac9d9934 lapb_unregister +EXPORT_SYMBOL net/lapb/lapb 0xb2172af8 lapb_data_received +EXPORT_SYMBOL net/llc/llc 0x12df616d llc_set_station_handler +EXPORT_SYMBOL net/llc/llc 0x38b92846 llc_remove_pack +EXPORT_SYMBOL net/llc/llc 0x499102be llc_sap_find +EXPORT_SYMBOL net/llc/llc 0x52d7b2fd llc_sap_list +EXPORT_SYMBOL net/llc/llc 0x59997737 llc_sap_close +EXPORT_SYMBOL net/llc/llc 0x5ae47cc9 llc_build_and_send_ui_pkt +EXPORT_SYMBOL net/llc/llc 0x890bc956 llc_mac_hdr_init +EXPORT_SYMBOL net/llc/llc 0xa72139dc llc_sap_open +EXPORT_SYMBOL net/llc/llc 0xf6852bf7 llc_add_pack +EXPORT_SYMBOL net/mac80211/mac80211 0x01389d1e ieee80211_radar_detected +EXPORT_SYMBOL net/mac80211/mac80211 0x0250bcba ieee80211_sta_ps_transition +EXPORT_SYMBOL net/mac80211/mac80211 0x03863bc8 ieee80211_nan_func_match +EXPORT_SYMBOL net/mac80211/mac80211 0x03e0d53b ieee80211_rts_get +EXPORT_SYMBOL net/mac80211/mac80211 0x04c103ce ieee80211_report_wowlan_wakeup +EXPORT_SYMBOL net/mac80211/mac80211 0x05cfc39b ieee80211_rate_control_unregister +EXPORT_SYMBOL net/mac80211/mac80211 0x063f5308 ieee80211_get_tkip_p1k_iv +EXPORT_SYMBOL net/mac80211/mac80211 0x06c3e01c ieee80211_nullfunc_get +EXPORT_SYMBOL net/mac80211/mac80211 0x0d1c5cf5 __ieee80211_get_tx_led_name +EXPORT_SYMBOL net/mac80211/mac80211 0x0dc7d563 ieee80211_queue_delayed_work +EXPORT_SYMBOL net/mac80211/mac80211 0x0efd3b3c ieee80211_sta_eosp +EXPORT_SYMBOL net/mac80211/mac80211 0x12956fcd ieee80211_probereq_get +EXPORT_SYMBOL net/mac80211/mac80211 0x135fa9e0 ieee80211_sta_pspoll +EXPORT_SYMBOL net/mac80211/mac80211 0x161cefc8 ieee80211_beacon_loss +EXPORT_SYMBOL net/mac80211/mac80211 0x183dcd3b ieee80211_get_key_rx_seq +EXPORT_SYMBOL net/mac80211/mac80211 0x19f37f0d ieee80211_update_p2p_noa +EXPORT_SYMBOL net/mac80211/mac80211 0x1a66fc17 ieee80211_get_tkip_rx_p1k +EXPORT_SYMBOL net/mac80211/mac80211 0x1ba8d9a2 __ieee80211_get_radio_led_name +EXPORT_SYMBOL net/mac80211/mac80211 0x1d721ceb ieee80211_txq_get_depth +EXPORT_SYMBOL net/mac80211/mac80211 0x1da35a07 ieee80211_chswitch_done +EXPORT_SYMBOL net/mac80211/mac80211 0x1db4bf86 __ieee80211_schedule_txq +EXPORT_SYMBOL net/mac80211/mac80211 0x23496aa8 ieee80211_cqm_rssi_notify +EXPORT_SYMBOL net/mac80211/mac80211 0x2739dbb1 ieee80211_pspoll_get +EXPORT_SYMBOL net/mac80211/mac80211 0x28afa3c3 ieee80211_csa_update_counter +EXPORT_SYMBOL net/mac80211/mac80211 0x2a0ee95a ieee80211_txq_airtime_check +EXPORT_SYMBOL net/mac80211/mac80211 0x2a4f3659 ieee80211_csa_is_complete +EXPORT_SYMBOL net/mac80211/mac80211 0x2a609445 ieee80211_sta_block_awake +EXPORT_SYMBOL net/mac80211/mac80211 0x2f455eda ieee80211_proberesp_get +EXPORT_SYMBOL net/mac80211/mac80211 0x3af40715 ieee80211_stop_tx_ba_cb_irqsafe +EXPORT_SYMBOL net/mac80211/mac80211 0x3b5818c5 __ieee80211_get_assoc_led_name +EXPORT_SYMBOL net/mac80211/mac80211 0x3bdc333f ieee80211_ctstoself_get +EXPORT_SYMBOL net/mac80211/mac80211 0x3daeccfd ieee80211_tx_rate_update +EXPORT_SYMBOL net/mac80211/mac80211 0x3e72dc9f ieee80211_alloc_hw_nm +EXPORT_SYMBOL net/mac80211/mac80211 0x43ffac49 ieee80211_unregister_hw +EXPORT_SYMBOL net/mac80211/mac80211 0x4cfc14c6 ieee80211_set_hw_80211_encap +EXPORT_SYMBOL net/mac80211/mac80211 0x52abfbb3 ieee80211_get_tx_rates +EXPORT_SYMBOL net/mac80211/mac80211 0x55697018 ieee80211_sta_register_airtime +EXPORT_SYMBOL net/mac80211/mac80211 0x58a5a042 ieee80211_tx_status_irqsafe +EXPORT_SYMBOL net/mac80211/mac80211 0x62290e3d ieee80211_restart_hw +EXPORT_SYMBOL net/mac80211/mac80211 0x64268cc3 ieee80211_disable_rssi_reports +EXPORT_SYMBOL net/mac80211/mac80211 0x6626f3ae ieee80211_find_sta +EXPORT_SYMBOL net/mac80211/mac80211 0x67b967e4 ieee80211_csa_finish +EXPORT_SYMBOL net/mac80211/mac80211 0x6a32c79d ieee80211_reserve_tid +EXPORT_SYMBOL net/mac80211/mac80211 0x76563143 ieee80211_sta_set_buffered +EXPORT_SYMBOL net/mac80211/mac80211 0x7963cbff ieee80211_stop_queues +EXPORT_SYMBOL net/mac80211/mac80211 0x7cae5d2a ieee80211_next_txq +EXPORT_SYMBOL net/mac80211/mac80211 0x7d6875f6 ieee80211_get_buffered_bc +EXPORT_SYMBOL net/mac80211/mac80211 0x86a95b81 ieee80211_connection_loss +EXPORT_SYMBOL net/mac80211/mac80211 0x87d30a04 rate_control_set_rates +EXPORT_SYMBOL net/mac80211/mac80211 0x8d96f6a7 ieee80211_tdls_oper_request +EXPORT_SYMBOL net/mac80211/mac80211 0x8de02511 ieee80211_iter_keys_rcu +EXPORT_SYMBOL net/mac80211/mac80211 0x92b6643c ieee80211_tx_status_8023 +EXPORT_SYMBOL net/mac80211/mac80211 0x94cfaef4 ieee80211_beacon_get_tim +EXPORT_SYMBOL net/mac80211/mac80211 0x9659b8c7 ieee80211_start_tx_ba_session +EXPORT_SYMBOL net/mac80211/mac80211 0x98fb0936 __ieee80211_get_rx_led_name +EXPORT_SYMBOL net/mac80211/mac80211 0x991a0ca0 ieee80211_parse_p2p_noa +EXPORT_SYMBOL net/mac80211/mac80211 0x9e465436 ieee80211_stop_queue +EXPORT_SYMBOL net/mac80211/mac80211 0xa0776c6e ieee80211_rx_irqsafe +EXPORT_SYMBOL net/mac80211/mac80211 0xa31579fa ieee80211_sta_uapsd_trigger +EXPORT_SYMBOL net/mac80211/mac80211 0xa77aece2 __ieee80211_create_tpt_led_trigger +EXPORT_SYMBOL net/mac80211/mac80211 0xacddbe2f ieee80211_tx_status_ext +EXPORT_SYMBOL net/mac80211/mac80211 0xb2115100 ieee80211_stop_tx_ba_session +EXPORT_SYMBOL net/mac80211/mac80211 0xb2f737fa ieee80211_wake_queue +EXPORT_SYMBOL net/mac80211/mac80211 0xb40fdc31 ieee80211_unreserve_tid +EXPORT_SYMBOL net/mac80211/mac80211 0xb51fd70a ieee80211_tx_prepare_skb +EXPORT_SYMBOL net/mac80211/mac80211 0xb60c2319 ieee80211_queue_stopped +EXPORT_SYMBOL net/mac80211/mac80211 0xbb8bd2ef ieee80211_free_hw +EXPORT_SYMBOL net/mac80211/mac80211 0xbd806a1b ieee80211_wake_queues +EXPORT_SYMBOL net/mac80211/mac80211 0xbe355972 ieee80211_get_tkip_p2k +EXPORT_SYMBOL net/mac80211/mac80211 0xbf70ccab ieee80211_tx_dequeue +EXPORT_SYMBOL net/mac80211/mac80211 0xc074d567 ieee80211_manage_rx_ba_offl +EXPORT_SYMBOL net/mac80211/mac80211 0xc1432a7c ieee80211_ap_probereq_get +EXPORT_SYMBOL net/mac80211/mac80211 0xc1f2fd12 ieee80211_send_eosp_nullfunc +EXPORT_SYMBOL net/mac80211/mac80211 0xc235ebfb ieee80211_enable_rssi_reports +EXPORT_SYMBOL net/mac80211/mac80211 0xc427981a ieee80211_beacon_get_template +EXPORT_SYMBOL net/mac80211/mac80211 0xc6e5a5d8 ieee80211_rate_control_register +EXPORT_SYMBOL net/mac80211/mac80211 0xce7aecca ieee80211_ctstoself_duration +EXPORT_SYMBOL net/mac80211/mac80211 0xcfa3c01d ieee80211_csa_set_counter +EXPORT_SYMBOL net/mac80211/mac80211 0xd0a47b08 ieee80211_scan_completed +EXPORT_SYMBOL net/mac80211/mac80211 0xd13dfd59 ieee80211_report_low_ack +EXPORT_SYMBOL net/mac80211/mac80211 0xd1a41508 ieee80211_start_tx_ba_cb_irqsafe +EXPORT_SYMBOL net/mac80211/mac80211 0xd9ca2d66 ieee80211_generic_frame_duration +EXPORT_SYMBOL net/mac80211/mac80211 0xdacfd5c5 ieee80211_sched_scan_stopped +EXPORT_SYMBOL net/mac80211/mac80211 0xdc63f49c ieee80211_stop_rx_ba_session +EXPORT_SYMBOL net/mac80211/mac80211 0xdfdefe1a ieee80211_free_txskb +EXPORT_SYMBOL net/mac80211/mac80211 0xe16097cd ieee80211_rts_duration +EXPORT_SYMBOL net/mac80211/mac80211 0xe1f5cf60 ieee80211_queue_work +EXPORT_SYMBOL net/mac80211/mac80211 0xe2bd8bba ieee80211_txq_schedule_start +EXPORT_SYMBOL net/mac80211/mac80211 0xe75f5b22 ieee80211_register_hw +EXPORT_SYMBOL net/mac80211/mac80211 0xe91740aa wiphy_to_ieee80211_hw +EXPORT_SYMBOL net/mac80211/mac80211 0xeb46ebc9 ieee80211_mark_rx_ba_filtered_frames +EXPORT_SYMBOL net/mac80211/mac80211 0xeb8d658d ieee80211_send_bar +EXPORT_SYMBOL net/mac80211/mac80211 0xeec3e7d1 ieee80211_tx_status +EXPORT_SYMBOL net/mac80211/mac80211 0xf26d1c1b ieee80211_sched_scan_results +EXPORT_SYMBOL net/mac80211/mac80211 0xf2fbd6c2 ieee80211_rx_napi +EXPORT_SYMBOL net/mac80211/mac80211 0xf3f76295 ieee80211_txq_may_transmit +EXPORT_SYMBOL net/mac80211/mac80211 0xf488ea3f ieee80211_iter_keys +EXPORT_SYMBOL net/mac80211/mac80211 0xf6f8710b ieee80211_rx_ba_timer_expired +EXPORT_SYMBOL net/mac80211/mac80211 0xf87d127f ieee80211_cqm_beacon_loss_notify +EXPORT_SYMBOL net/mac80211/mac80211 0xfada00bc ieee80211_nan_func_terminated +EXPORT_SYMBOL net/mac802154/mac802154 0x2f5db4ff ieee802154_alloc_hw +EXPORT_SYMBOL net/mac802154/mac802154 0x3b0f01ce ieee802154_stop_queue +EXPORT_SYMBOL net/mac802154/mac802154 0x406b9fc1 ieee802154_free_hw +EXPORT_SYMBOL net/mac802154/mac802154 0x57fbc04e ieee802154_wake_queue +EXPORT_SYMBOL net/mac802154/mac802154 0x932720c5 ieee802154_rx_irqsafe +EXPORT_SYMBOL net/mac802154/mac802154 0xbb0850ac ieee802154_register_hw +EXPORT_SYMBOL net/mac802154/mac802154 0xc1bb7745 ieee802154_xmit_complete +EXPORT_SYMBOL net/mac802154/mac802154 0xea25741c ieee802154_unregister_hw +EXPORT_SYMBOL net/netfilter/ipvs/ip_vs 0x71ba27ea ip_vs_proto_data_get +EXPORT_SYMBOL net/netfilter/ipvs/ip_vs 0x890ce23b unregister_ip_vs_scheduler +EXPORT_SYMBOL net/netfilter/ipvs/ip_vs 0x8a1cce02 register_ip_vs_app +EXPORT_SYMBOL net/netfilter/ipvs/ip_vs 0x8e061227 ip_vs_tcp_conn_listen +EXPORT_SYMBOL net/netfilter/ipvs/ip_vs 0x8e629ea1 register_ip_vs_scheduler +EXPORT_SYMBOL net/netfilter/ipvs/ip_vs 0x94fd8c89 ip_vs_nfct_expect_related +EXPORT_SYMBOL net/netfilter/ipvs/ip_vs 0xa1086ac8 register_ip_vs_app_inc +EXPORT_SYMBOL net/netfilter/ipvs/ip_vs 0xaa83ce0e ip_vs_conn_in_get +EXPORT_SYMBOL net/netfilter/ipvs/ip_vs 0xacc237f5 ip_vs_conn_put +EXPORT_SYMBOL net/netfilter/ipvs/ip_vs 0xae371609 ip_vs_new_conn_out +EXPORT_SYMBOL net/netfilter/ipvs/ip_vs 0xb798ec4f ip_vs_proto_get +EXPORT_SYMBOL net/netfilter/ipvs/ip_vs 0xbb35ea58 ip_vs_conn_new +EXPORT_SYMBOL net/netfilter/ipvs/ip_vs 0xc7b46203 ip_vs_conn_out_get +EXPORT_SYMBOL net/netfilter/ipvs/ip_vs 0xd831a1a2 ip_vs_proto_name +EXPORT_SYMBOL net/netfilter/ipvs/ip_vs 0xdbb002c8 unregister_ip_vs_app +EXPORT_SYMBOL net/netfilter/ipvs/ip_vs 0xfef1da1a ip_vs_scheduler_err +EXPORT_SYMBOL net/netfilter/nf_conntrack 0x7064288d nf_ct_ext_add +EXPORT_SYMBOL net/netfilter/nf_conntrack_pptp 0xf2a36612 pptp_msg_name +EXPORT_SYMBOL net/netfilter/nf_nat 0x3e0df18d __nf_nat_mangle_tcp_packet +EXPORT_SYMBOL net/netfilter/nf_nat 0x4abde482 nf_nat_setup_info +EXPORT_SYMBOL net/netfilter/nf_nat 0x53f584b4 nf_nat_follow_master +EXPORT_SYMBOL net/netfilter/nf_nat 0x9a3bef0c nf_xfrm_me_harder +EXPORT_SYMBOL net/netfilter/nf_nat 0xbcf39277 nf_nat_mangle_udp_packet +EXPORT_SYMBOL net/netfilter/nft_fib 0xe8203072 nft_fib_policy +EXPORT_SYMBOL net/netfilter/x_tables 0x0d7f5fcd xt_alloc_entry_offsets +EXPORT_SYMBOL net/netfilter/x_tables 0x28ecdcf7 xt_unregister_targets +EXPORT_SYMBOL net/netfilter/x_tables 0x2bbdcaee xt_register_match +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 0x7d52e6f2 xt_unregister_matches +EXPORT_SYMBOL net/netfilter/x_tables 0x86e2b8a8 xt_register_matches +EXPORT_SYMBOL net/netfilter/x_tables 0x9339ed9b xt_unregister_target +EXPORT_SYMBOL net/netfilter/x_tables 0x977fd4bf xt_alloc_table_info +EXPORT_SYMBOL net/netfilter/x_tables 0xa25fc115 xt_compat_check_entry_offsets +EXPORT_SYMBOL net/netfilter/x_tables 0xa3a9d443 xt_register_targets +EXPORT_SYMBOL net/netfilter/x_tables 0xc8eea92b xt_table_get_private_protected +EXPORT_SYMBOL net/netfilter/x_tables 0xcb3e91cc xt_counters_alloc +EXPORT_SYMBOL net/netfilter/x_tables 0xcbe1ebc4 xt_find_match +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 0xf071065f xt_unregister_match +EXPORT_SYMBOL net/netfilter/x_tables 0xfc352735 xt_register_target +EXPORT_SYMBOL net/netfilter/x_tables 0xfef779fa xt_find_jump_offset +EXPORT_SYMBOL net/nfc/hci/hci 0x03b7557b nfc_hci_reset_pipes_per_host +EXPORT_SYMBOL net/nfc/hci/hci 0x2eaa1ec0 nfc_hci_get_clientdata +EXPORT_SYMBOL net/nfc/hci/hci 0x329e16fd nfc_hci_set_clientdata +EXPORT_SYMBOL net/nfc/hci/hci 0x3c711e45 nfc_hci_set_param +EXPORT_SYMBOL net/nfc/hci/hci 0x3f16d837 nfc_hci_allocate_device +EXPORT_SYMBOL net/nfc/hci/hci 0x5163f398 nfc_llc_start +EXPORT_SYMBOL net/nfc/hci/hci 0x5477f4b3 nfc_llc_stop +EXPORT_SYMBOL net/nfc/hci/hci 0x57b69fc3 nfc_hci_unregister_device +EXPORT_SYMBOL net/nfc/hci/hci 0x74fe3670 nfc_hci_result_to_errno +EXPORT_SYMBOL net/nfc/hci/hci 0x7b86d635 nfc_hci_send_cmd +EXPORT_SYMBOL net/nfc/hci/hci 0x9528319c nfc_hci_reset_pipes +EXPORT_SYMBOL net/nfc/hci/hci 0xa11218a4 nfc_hci_get_param +EXPORT_SYMBOL net/nfc/hci/hci 0xa5c86f3e nfc_hci_send_cmd_async +EXPORT_SYMBOL net/nfc/hci/hci 0xa6900a72 nfc_hci_recv_frame +EXPORT_SYMBOL net/nfc/hci/hci 0xb23e066e nfc_hci_disconnect_gate +EXPORT_SYMBOL net/nfc/hci/hci 0xb91db8ee nfc_hci_disconnect_all_gates +EXPORT_SYMBOL net/nfc/hci/hci 0xc2273f9e nfc_hci_driver_failure +EXPORT_SYMBOL net/nfc/hci/hci 0xc3579c13 nfc_hci_connect_gate +EXPORT_SYMBOL net/nfc/hci/hci 0xcac50b7c nfc_hci_target_discovered +EXPORT_SYMBOL net/nfc/hci/hci 0xd8689c6d nfc_hci_register_device +EXPORT_SYMBOL net/nfc/hci/hci 0xdd231c55 nfc_hci_sak_to_protocol +EXPORT_SYMBOL net/nfc/hci/hci 0xe211b835 nfc_hci_send_event +EXPORT_SYMBOL net/nfc/hci/hci 0xfe243eed nfc_hci_free_device +EXPORT_SYMBOL net/nfc/nci/nci 0x014d2d64 nci_hci_connect_gate +EXPORT_SYMBOL net/nfc/nci/nci 0x01856849 nci_nfcc_loopback +EXPORT_SYMBOL net/nfc/nci/nci 0x03b61304 nci_hci_set_param +EXPORT_SYMBOL net/nfc/nci/nci 0x09f356c5 nci_hci_open_pipe +EXPORT_SYMBOL net/nfc/nci/nci 0x0c00d08b nci_nfcee_discover +EXPORT_SYMBOL net/nfc/nci/nci 0x124178bc nci_allocate_device +EXPORT_SYMBOL net/nfc/nci/nci 0x133c8ff7 nci_hci_clear_all_pipes +EXPORT_SYMBOL net/nfc/nci/nci 0x1443c5da nci_hci_get_param +EXPORT_SYMBOL net/nfc/nci/nci 0x2049c090 nci_conn_max_data_pkt_payload_size +EXPORT_SYMBOL net/nfc/nci/nci 0x25124de6 nci_hci_send_cmd +EXPORT_SYMBOL net/nfc/nci/nci 0x46ca1bc0 nci_core_reset +EXPORT_SYMBOL net/nfc/nci/nci 0x53f14495 nci_register_device +EXPORT_SYMBOL net/nfc/nci/nci 0x5f2d61c6 nci_core_conn_create +EXPORT_SYMBOL net/nfc/nci/nci 0x7b2def0d nci_unregister_device +EXPORT_SYMBOL net/nfc/nci/nci 0x80f0c07e nci_set_config +EXPORT_SYMBOL net/nfc/nci/nci 0x8fd49ef7 nci_get_conn_info_by_dest_type_params +EXPORT_SYMBOL net/nfc/nci/nci 0x9b1a77fc nci_prop_cmd +EXPORT_SYMBOL net/nfc/nci/nci 0xa1f4f66c nci_hci_dev_session_init +EXPORT_SYMBOL net/nfc/nci/nci 0xb074492a nci_hci_send_event +EXPORT_SYMBOL net/nfc/nci/nci 0xba490602 nci_to_errno +EXPORT_SYMBOL net/nfc/nci/nci 0xbb08f24a nci_req_complete +EXPORT_SYMBOL net/nfc/nci/nci 0xbb67436b nci_core_conn_close +EXPORT_SYMBOL net/nfc/nci/nci 0xbcf8ddbd nci_send_cmd +EXPORT_SYMBOL net/nfc/nci/nci 0xc1e67e35 nci_send_frame +EXPORT_SYMBOL net/nfc/nci/nci 0xc7c57348 nci_core_cmd +EXPORT_SYMBOL net/nfc/nci/nci 0xd5dce02f nci_core_init +EXPORT_SYMBOL net/nfc/nci/nci 0xd85a0918 nci_free_device +EXPORT_SYMBOL net/nfc/nci/nci 0xe94afd19 nci_recv_frame +EXPORT_SYMBOL net/nfc/nci/nci 0xea1de61d nci_send_data +EXPORT_SYMBOL net/nfc/nci/nci 0xed6dda1e nci_nfcee_mode_set +EXPORT_SYMBOL net/nfc/nfc 0x03cd8386 nfc_set_remote_general_bytes +EXPORT_SYMBOL net/nfc/nfc 0x20fff18c nfc_find_se +EXPORT_SYMBOL net/nfc/nfc 0x3410bcd4 nfc_dep_link_is_up +EXPORT_SYMBOL net/nfc/nfc 0x35e92f24 nfc_remove_se +EXPORT_SYMBOL net/nfc/nfc 0x387b1033 nfc_proto_unregister +EXPORT_SYMBOL net/nfc/nfc 0x3ed2ddaa nfc_allocate_device +EXPORT_SYMBOL net/nfc/nfc 0x3f219eed nfc_vendor_cmd_reply +EXPORT_SYMBOL net/nfc/nfc 0x49e01d57 nfc_proto_register +EXPORT_SYMBOL net/nfc/nfc 0x581d1970 nfc_tm_deactivated +EXPORT_SYMBOL net/nfc/nfc 0x5b188d32 nfc_tm_activated +EXPORT_SYMBOL net/nfc/nfc 0x673b3a03 nfc_se_connectivity +EXPORT_SYMBOL net/nfc/nfc 0x76c6e270 nfc_unregister_device +EXPORT_SYMBOL net/nfc/nfc 0x8ed8d9be nfc_targets_found +EXPORT_SYMBOL net/nfc/nfc 0x96bcfc98 nfc_fw_download_done +EXPORT_SYMBOL net/nfc/nfc 0x9b18eabc nfc_tm_data_received +EXPORT_SYMBOL net/nfc/nfc 0xabbbc52c nfc_add_se +EXPORT_SYMBOL net/nfc/nfc 0xb657a95b nfc_send_to_raw_sock +EXPORT_SYMBOL net/nfc/nfc 0xc012d098 nfc_class +EXPORT_SYMBOL net/nfc/nfc 0xc2a21903 nfc_register_device +EXPORT_SYMBOL net/nfc/nfc 0xc99bf34e nfc_get_local_general_bytes +EXPORT_SYMBOL net/nfc/nfc 0xd1b565cb nfc_driver_failure +EXPORT_SYMBOL net/nfc/nfc 0xdebf275b nfc_alloc_recv_skb +EXPORT_SYMBOL net/nfc/nfc 0xf15236ad __nfc_alloc_vendor_cmd_reply_skb +EXPORT_SYMBOL net/nfc/nfc 0xf84baf0c nfc_target_lost +EXPORT_SYMBOL net/nfc/nfc 0xfbd9a886 nfc_se_transaction +EXPORT_SYMBOL net/nfc/nfc_digital 0x6c4075b8 nfc_digital_allocate_device +EXPORT_SYMBOL net/nfc/nfc_digital 0x92c5a8d8 nfc_digital_free_device +EXPORT_SYMBOL net/nfc/nfc_digital 0x95001c53 nfc_digital_unregister_device +EXPORT_SYMBOL net/nfc/nfc_digital 0xb8fffdb3 nfc_digital_register_device +EXPORT_SYMBOL net/phonet/phonet 0x160431f2 phonet_proto_register +EXPORT_SYMBOL net/phonet/phonet 0x5df14925 pn_skb_send +EXPORT_SYMBOL net/phonet/phonet 0x6f2f3e7d phonet_proto_unregister +EXPORT_SYMBOL net/phonet/phonet 0x8d624893 pn_sock_get_port +EXPORT_SYMBOL net/phonet/phonet 0x97817668 phonet_stream_ops +EXPORT_SYMBOL net/phonet/phonet 0xd3213384 pn_sock_hash +EXPORT_SYMBOL net/phonet/phonet 0xec8c005e phonet_header_ops +EXPORT_SYMBOL net/phonet/phonet 0xf8c0c454 pn_sock_unhash +EXPORT_SYMBOL net/rxrpc/rxrpc 0x127b6f77 rxrpc_get_null_key +EXPORT_SYMBOL net/rxrpc/rxrpc 0x2412279d rxrpc_kernel_set_max_life +EXPORT_SYMBOL net/rxrpc/rxrpc 0x31bf3ca3 rxrpc_debug_id +EXPORT_SYMBOL net/rxrpc/rxrpc 0x3ccb6473 rxrpc_kernel_begin_call +EXPORT_SYMBOL net/rxrpc/rxrpc 0x453ab6a4 rxrpc_kernel_get_srtt +EXPORT_SYMBOL net/rxrpc/rxrpc 0x572a6c57 rxrpc_kernel_new_call_notification +EXPORT_SYMBOL net/rxrpc/rxrpc 0x603a3960 rxrpc_kernel_abort_call +EXPORT_SYMBOL net/rxrpc/rxrpc 0x604a9744 rxrpc_kernel_check_life +EXPORT_SYMBOL net/rxrpc/rxrpc 0x6398a003 rxrpc_kernel_charge_accept +EXPORT_SYMBOL net/rxrpc/rxrpc 0x68a1df84 rxrpc_kernel_end_call +EXPORT_SYMBOL net/rxrpc/rxrpc 0x7090d6ab rxrpc_kernel_send_data +EXPORT_SYMBOL net/rxrpc/rxrpc 0x7c8ef8c7 rxrpc_kernel_recv_data +EXPORT_SYMBOL net/rxrpc/rxrpc 0x84730dc5 rxrpc_kernel_get_epoch +EXPORT_SYMBOL net/rxrpc/rxrpc 0x85178e0f key_type_rxrpc +EXPORT_SYMBOL net/rxrpc/rxrpc 0x9177e233 rxrpc_kernel_get_peer +EXPORT_SYMBOL net/rxrpc/rxrpc 0xde7daf76 rxrpc_kernel_get_reply_time +EXPORT_SYMBOL net/rxrpc/rxrpc 0xe143ac9f rxrpc_get_server_data_key +EXPORT_SYMBOL net/rxrpc/rxrpc 0xedf78367 rxrpc_kernel_set_tx_length +EXPORT_SYMBOL net/rxrpc/rxrpc 0xfe272f2f rxrpc_sock_set_min_security_level +EXPORT_SYMBOL net/sctp/sctp 0x90032be4 sctp_do_peeloff +EXPORT_SYMBOL net/sunrpc/auth_gss/auth_rpcgss 0x0100af8a gss_pseudoflavor_to_service +EXPORT_SYMBOL net/sunrpc/auth_gss/auth_rpcgss 0xcf815632 gss_mech_get +EXPORT_SYMBOL net/sunrpc/auth_gss/auth_rpcgss 0xd2c4ec83 gss_mech_put +EXPORT_SYMBOL net/sunrpc/sunrpc 0x7c673c7c xdr_truncate_encode +EXPORT_SYMBOL net/sunrpc/sunrpc 0x7d1a5a61 svc_pool_stats_open +EXPORT_SYMBOL net/sunrpc/sunrpc 0x9124e661 xdr_restrict_buflen +EXPORT_SYMBOL net/tipc/tipc 0x02be6f08 tipc_dump_done +EXPORT_SYMBOL net/tipc/tipc 0x040ec9e5 tipc_dump_start +EXPORT_SYMBOL net/tipc/tipc 0x18864927 tipc_sk_fill_sock_diag +EXPORT_SYMBOL net/tipc/tipc 0xe520845a tipc_nl_sk_walk +EXPORT_SYMBOL net/tls/tls 0xcd458c0a tls_get_record +EXPORT_SYMBOL net/wimax/wimax 0x81413f6d wimax_reset +EXPORT_SYMBOL net/wimax/wimax 0xf175e4c4 wimax_rfkill +EXPORT_SYMBOL net/wireless/cfg80211 0x00eaeac9 wiphy_unregister +EXPORT_SYMBOL net/wireless/cfg80211 0x0c921812 cfg80211_get_bss +EXPORT_SYMBOL net/wireless/cfg80211 0x0d569417 cfg80211_auth_timeout +EXPORT_SYMBOL net/wireless/cfg80211 0x117aca91 cfg80211_merge_profile +EXPORT_SYMBOL net/wireless/cfg80211 0x15a37cf3 cfg80211_calculate_bitrate +EXPORT_SYMBOL net/wireless/cfg80211 0x1879fcbd bridge_tunnel_header +EXPORT_SYMBOL net/wireless/cfg80211 0x18b53545 cfg80211_chandef_create +EXPORT_SYMBOL net/wireless/cfg80211 0x19275009 cfg80211_pmksa_candidate_notify +EXPORT_SYMBOL net/wireless/cfg80211 0x1b1631b2 cfg80211_port_authorized +EXPORT_SYMBOL net/wireless/cfg80211 0x1ce2497f reg_query_regdb_wmm +EXPORT_SYMBOL net/wireless/cfg80211 0x1d840145 cfg80211_remain_on_channel_expired +EXPORT_SYMBOL net/wireless/cfg80211 0x20d3d941 cfg80211_iter_combinations +EXPORT_SYMBOL net/wireless/cfg80211 0x22e37e6e cfg80211_inform_bss_frame_data +EXPORT_SYMBOL net/wireless/cfg80211 0x235574f9 cfg80211_mgmt_tx_status +EXPORT_SYMBOL net/wireless/cfg80211 0x275269b3 ieee80211_ie_split_ric +EXPORT_SYMBOL net/wireless/cfg80211 0x28446f90 ieee80211_get_response_rate +EXPORT_SYMBOL net/wireless/cfg80211 0x28dc8da6 ieee80211_get_hdrlen_from_skb +EXPORT_SYMBOL net/wireless/cfg80211 0x31cc7438 cfg80211_new_sta +EXPORT_SYMBOL net/wireless/cfg80211 0x3851d7f4 cfg80211_tx_mlme_mgmt +EXPORT_SYMBOL net/wireless/cfg80211 0x3b69680e __cfg80211_alloc_reply_skb +EXPORT_SYMBOL net/wireless/cfg80211 0x3bd8aaa1 ieee80211_operating_class_to_band +EXPORT_SYMBOL net/wireless/cfg80211 0x3cb9b606 cfg80211_sched_scan_stopped_rtnl +EXPORT_SYMBOL net/wireless/cfg80211 0x3edbb00c cfg80211_nan_func_terminated +EXPORT_SYMBOL net/wireless/cfg80211 0x43715864 cfg80211_ref_bss +EXPORT_SYMBOL net/wireless/cfg80211 0x43f5efcf cfg80211_sinfo_alloc_tid_stats +EXPORT_SYMBOL net/wireless/cfg80211 0x46312808 ieee80211_radiotap_iterator_next +EXPORT_SYMBOL net/wireless/cfg80211 0x4a5bb3bc wiphy_register +EXPORT_SYMBOL net/wireless/cfg80211 0x4dc4a44d cfg80211_connect_done +EXPORT_SYMBOL net/wireless/cfg80211 0x4f25c3e1 cfg80211_chandef_usable +EXPORT_SYMBOL net/wireless/cfg80211 0x4fd13aac cfg80211_unlink_bss +EXPORT_SYMBOL net/wireless/cfg80211 0x52f0f793 cfg80211_put_bss +EXPORT_SYMBOL net/wireless/cfg80211 0x55628976 regulatory_set_wiphy_regd_sync_rtnl +EXPORT_SYMBOL net/wireless/cfg80211 0x571eadb1 regulatory_pre_cac_allowed +EXPORT_SYMBOL net/wireless/cfg80211 0x599dc918 cfg80211_nan_match +EXPORT_SYMBOL net/wireless/cfg80211 0x5afa6420 cfg80211_sta_opmode_change_notify +EXPORT_SYMBOL net/wireless/cfg80211 0x5b0554db cfg80211_notify_new_peer_candidate +EXPORT_SYMBOL net/wireless/cfg80211 0x5f07ba05 cfg80211_cac_event +EXPORT_SYMBOL net/wireless/cfg80211 0x6032d499 cfg80211_report_wowlan_wakeup +EXPORT_SYMBOL net/wireless/cfg80211 0x618ac8b9 wiphy_free +EXPORT_SYMBOL net/wireless/cfg80211 0x659cb31c cfg80211_assoc_timeout +EXPORT_SYMBOL net/wireless/cfg80211 0x67d86dcd ieee80211_chandef_to_operating_class +EXPORT_SYMBOL net/wireless/cfg80211 0x683daa66 cfg80211_rx_spurious_frame +EXPORT_SYMBOL net/wireless/cfg80211 0x68600c40 ieee80211_mandatory_rates +EXPORT_SYMBOL net/wireless/cfg80211 0x69b18f43 rfc1042_header +EXPORT_SYMBOL net/wireless/cfg80211 0x6bedf402 ieee80211_freq_khz_to_channel +EXPORT_SYMBOL net/wireless/cfg80211 0x75aa40f8 cfg80211_disconnected +EXPORT_SYMBOL net/wireless/cfg80211 0x773fd702 cfg80211_michael_mic_failure +EXPORT_SYMBOL net/wireless/cfg80211 0x776ade88 cfg80211_conn_failed +EXPORT_SYMBOL net/wireless/cfg80211 0x7960f6de cfg80211_iftype_allowed +EXPORT_SYMBOL net/wireless/cfg80211 0x79b82a71 cfg80211_find_vendor_elem +EXPORT_SYMBOL net/wireless/cfg80211 0x7a5f63a4 cfg80211_external_auth_request +EXPORT_SYMBOL net/wireless/cfg80211 0x7c3ac925 ieee80211_get_vht_max_nss +EXPORT_SYMBOL net/wireless/cfg80211 0x7c7653d8 cfg80211_rx_mlme_mgmt +EXPORT_SYMBOL net/wireless/cfg80211 0x7c953c05 cfg80211_reg_can_beacon_relax +EXPORT_SYMBOL net/wireless/cfg80211 0x7ef39823 ieee80211_hdrlen +EXPORT_SYMBOL net/wireless/cfg80211 0x7ff6b3ba cfg80211_ready_on_channel +EXPORT_SYMBOL net/wireless/cfg80211 0x81a471d6 cfg80211_chandef_valid +EXPORT_SYMBOL net/wireless/cfg80211 0x832b8a12 cfg80211_rx_assoc_resp +EXPORT_SYMBOL net/wireless/cfg80211 0x867551f2 cfg80211_ft_event +EXPORT_SYMBOL net/wireless/cfg80211 0x892c45e2 wiphy_apply_custom_regulatory +EXPORT_SYMBOL net/wireless/cfg80211 0x8d173ea5 cfg80211_rx_control_port +EXPORT_SYMBOL net/wireless/cfg80211 0x8fa02936 cfg80211_free_nan_func +EXPORT_SYMBOL net/wireless/cfg80211 0x91a4d33c wiphy_rfkill_set_hw_state +EXPORT_SYMBOL net/wireless/cfg80211 0x958080d4 wiphy_rfkill_stop_polling +EXPORT_SYMBOL net/wireless/cfg80211 0x97052e0f cfg80211_crit_proto_stopped +EXPORT_SYMBOL net/wireless/cfg80211 0x9a27ce11 cfg80211_bss_iter +EXPORT_SYMBOL net/wireless/cfg80211 0x9a2a502a freq_reg_info +EXPORT_SYMBOL net/wireless/cfg80211 0x9aa33603 ieee80211_data_to_8023_exthdr +EXPORT_SYMBOL net/wireless/cfg80211 0x9b9ddf8f cfg80211_cqm_rssi_notify +EXPORT_SYMBOL net/wireless/cfg80211 0x9c8f04f7 cfg80211_reg_can_beacon +EXPORT_SYMBOL net/wireless/cfg80211 0x9d6cba30 cfg80211_find_elem_match +EXPORT_SYMBOL net/wireless/cfg80211 0xa1aba4b4 cfg80211_check_station_change +EXPORT_SYMBOL net/wireless/cfg80211 0xa4f69776 cfg80211_rx_unprot_mlme_mgmt +EXPORT_SYMBOL net/wireless/cfg80211 0xa63a24dc cfg80211_get_station +EXPORT_SYMBOL net/wireless/cfg80211 0xa68a07f2 cfg80211_update_owe_info_event +EXPORT_SYMBOL net/wireless/cfg80211 0xa6c2260f cfg80211_report_obss_beacon_khz +EXPORT_SYMBOL net/wireless/cfg80211 0xa979a8d8 cfg80211_roamed +EXPORT_SYMBOL net/wireless/cfg80211 0xab04f8bc cfg80211_check_combinations +EXPORT_SYMBOL net/wireless/cfg80211 0xab3bcff9 cfg80211_send_layer2_update +EXPORT_SYMBOL net/wireless/cfg80211 0xabf2b002 cfg80211_get_drvinfo +EXPORT_SYMBOL net/wireless/cfg80211 0xac97a207 ieee80211_radiotap_iterator_init +EXPORT_SYMBOL net/wireless/cfg80211 0xafe1c9c8 ieee80211_get_channel_khz +EXPORT_SYMBOL net/wireless/cfg80211 0xafe8b001 ieee80211_channel_to_freq_khz +EXPORT_SYMBOL net/wireless/cfg80211 0xb5541b37 cfg80211_rx_mgmt_khz +EXPORT_SYMBOL net/wireless/cfg80211 0xb63c7ab7 cfg80211_tx_mgmt_expired +EXPORT_SYMBOL net/wireless/cfg80211 0xb89fd82d cfg80211_ch_switch_notify +EXPORT_SYMBOL net/wireless/cfg80211 0xba624ae4 cfg80211_stop_iface +EXPORT_SYMBOL net/wireless/cfg80211 0xbd623b45 cfg80211_del_sta_sinfo +EXPORT_SYMBOL net/wireless/cfg80211 0xbd98b20f regulatory_hint +EXPORT_SYMBOL net/wireless/cfg80211 0xbeceba5c cfg80211_probe_status +EXPORT_SYMBOL net/wireless/cfg80211 0xbf11e3f7 __cfg80211_alloc_event_skb +EXPORT_SYMBOL net/wireless/cfg80211 0xc06b260b wiphy_rfkill_start_polling +EXPORT_SYMBOL net/wireless/cfg80211 0xc2023b78 cfg80211_sched_scan_results +EXPORT_SYMBOL net/wireless/cfg80211 0xca7b1bf8 ieee80211_amsdu_to_8023s +EXPORT_SYMBOL net/wireless/cfg80211 0xcc1a7c48 cfg80211_is_element_inherited +EXPORT_SYMBOL net/wireless/cfg80211 0xcd30cb44 cfg80211_ch_switch_started_notify +EXPORT_SYMBOL net/wireless/cfg80211 0xce4a2008 cfg80211_cqm_beacon_loss_notify +EXPORT_SYMBOL net/wireless/cfg80211 0xd56d55f3 ieee80211_get_mesh_hdrlen +EXPORT_SYMBOL net/wireless/cfg80211 0xd947431c __cfg80211_send_event_skb +EXPORT_SYMBOL net/wireless/cfg80211 0xdba126c1 reg_initiator_name +EXPORT_SYMBOL net/wireless/cfg80211 0xde7780d8 cfg80211_abandon_assoc +EXPORT_SYMBOL net/wireless/cfg80211 0xdeaf7e50 cfg80211_ibss_joined +EXPORT_SYMBOL net/wireless/cfg80211 0xe168ac0c cfg80211_classify8021d +EXPORT_SYMBOL net/wireless/cfg80211 0xe58bf31f cfg80211_gtk_rekey_notify +EXPORT_SYMBOL net/wireless/cfg80211 0xe7a1f5fa cfg80211_cqm_txe_notify +EXPORT_SYMBOL net/wireless/cfg80211 0xeb3ad9ca ieee80211_get_num_supported_channels +EXPORT_SYMBOL net/wireless/cfg80211 0xebdea65f cfg80211_unregister_wdev +EXPORT_SYMBOL net/wireless/cfg80211 0xed66846b cfg80211_chandef_dfs_required +EXPORT_SYMBOL net/wireless/cfg80211 0xf14ddf66 regulatory_set_wiphy_regd +EXPORT_SYMBOL net/wireless/cfg80211 0xf3ee1d0f cfg80211_scan_done +EXPORT_SYMBOL net/wireless/cfg80211 0xf424364b cfg80211_control_port_tx_status +EXPORT_SYMBOL net/wireless/cfg80211 0xf5596d89 cfg80211_get_p2p_attr +EXPORT_SYMBOL net/wireless/cfg80211 0xf6e94fd1 wiphy_new_nm +EXPORT_SYMBOL net/wireless/cfg80211 0xf833105f cfg80211_tdls_oper_request +EXPORT_SYMBOL net/wireless/cfg80211 0xf8c1e6bc cfg80211_radar_event +EXPORT_SYMBOL net/wireless/cfg80211 0xfae8514f cfg80211_chandef_compatible +EXPORT_SYMBOL net/wireless/cfg80211 0xfd6f7e55 cfg80211_inform_bss_data +EXPORT_SYMBOL net/wireless/cfg80211 0xfd92bded cfg80211_cqm_pktloss_notify +EXPORT_SYMBOL net/wireless/cfg80211 0xfd9872f0 cfg80211_rx_unexpected_4addr_frame +EXPORT_SYMBOL net/wireless/cfg80211 0xff0c113a ieee80211_bss_get_elem +EXPORT_SYMBOL net/wireless/cfg80211 0xff60639d cfg80211_sched_scan_stopped +EXPORT_SYMBOL net/wireless/lib80211 0x1dcd8892 lib80211_crypt_delayed_deinit +EXPORT_SYMBOL net/wireless/lib80211 0x64bb009e lib80211_register_crypto_ops +EXPORT_SYMBOL net/wireless/lib80211 0x674a59fd lib80211_crypt_info_free +EXPORT_SYMBOL net/wireless/lib80211 0x6b003285 lib80211_unregister_crypto_ops +EXPORT_SYMBOL net/wireless/lib80211 0x7c80e5ff lib80211_get_crypto_ops +EXPORT_SYMBOL net/wireless/lib80211 0x9c0cc6eb lib80211_crypt_info_init +EXPORT_SYMBOL sound/ac97_bus 0x7267b5f2 ac97_bus_type +EXPORT_SYMBOL sound/core/oss/snd-mixer-oss 0x0a5ebed1 snd_mixer_oss_ioctl_card +EXPORT_SYMBOL sound/core/seq/snd-seq 0x1a724fcc snd_seq_kernel_client_ctl +EXPORT_SYMBOL sound/core/seq/snd-seq 0x3061c52d snd_use_lock_sync_helper +EXPORT_SYMBOL sound/core/seq/snd-seq 0x3fb4d161 snd_seq_kernel_client_dispatch +EXPORT_SYMBOL sound/core/seq/snd-seq 0x6bb71038 snd_seq_delete_kernel_client +EXPORT_SYMBOL sound/core/seq/snd-seq 0x7ac2f329 snd_seq_expand_var_event +EXPORT_SYMBOL sound/core/seq/snd-seq 0x7b8699eb snd_seq_event_port_detach +EXPORT_SYMBOL sound/core/seq/snd-seq 0xa23866ef snd_seq_create_kernel_client +EXPORT_SYMBOL sound/core/seq/snd-seq 0xa4b45782 snd_seq_kernel_client_enqueue +EXPORT_SYMBOL sound/core/seq/snd-seq 0xb8e448a0 snd_seq_set_queue_tempo +EXPORT_SYMBOL sound/core/seq/snd-seq 0xbd502dc0 snd_seq_kernel_client_write_poll +EXPORT_SYMBOL sound/core/seq/snd-seq 0xe311d13a snd_seq_event_port_attach +EXPORT_SYMBOL sound/core/seq/snd-seq 0xe934da1d snd_seq_dump_var_event +EXPORT_SYMBOL sound/core/seq/snd-seq-midi-emul 0x6ea09972 snd_midi_channel_alloc_set +EXPORT_SYMBOL sound/core/seq/snd-seq-midi-emul 0x833a3e07 snd_midi_channel_set_clear +EXPORT_SYMBOL sound/core/seq/snd-seq-midi-emul 0xb9948d2c snd_midi_channel_free_set +EXPORT_SYMBOL sound/core/seq/snd-seq-midi-emul 0xf912f0c8 snd_midi_process_event +EXPORT_SYMBOL sound/core/seq/snd-seq-midi-event 0x734e4fba snd_midi_event_encode_byte +EXPORT_SYMBOL sound/core/seq/snd-seq-midi-event 0x7a3e0db5 snd_midi_event_no_status +EXPORT_SYMBOL sound/core/seq/snd-seq-midi-event 0x8150b379 snd_midi_event_reset_encode +EXPORT_SYMBOL sound/core/seq/snd-seq-midi-event 0xb8620ad8 snd_midi_event_reset_decode +EXPORT_SYMBOL sound/core/seq/snd-seq-midi-event 0xdd70dbf6 snd_midi_event_decode +EXPORT_SYMBOL sound/core/seq/snd-seq-midi-event 0xdd935c83 snd_midi_event_free +EXPORT_SYMBOL sound/core/seq/snd-seq-midi-event 0xe9e6c50c snd_midi_event_new +EXPORT_SYMBOL sound/core/seq/snd-seq-virmidi 0xaaf22f4b snd_virmidi_new +EXPORT_SYMBOL sound/core/snd 0x021db29c snd_card_file_add +EXPORT_SYMBOL sound/core/snd 0x0e5e81cf snd_power_wait +EXPORT_SYMBOL sound/core/snd 0x0f6b0919 snd_ctl_remove_id +EXPORT_SYMBOL sound/core/snd 0x13a046d5 snd_jack_report +EXPORT_SYMBOL sound/core/snd 0x18e1683f snd_dma_program +EXPORT_SYMBOL sound/core/snd 0x191e88cf snd_dma_pointer +EXPORT_SYMBOL sound/core/snd 0x198788b4 snd_lookup_oss_minor_data +EXPORT_SYMBOL sound/core/snd 0x24a94b26 snd_info_get_line +EXPORT_SYMBOL sound/core/snd 0x2ab4fbe0 snd_ctl_remove +EXPORT_SYMBOL sound/core/snd 0x31291fce snd_ctl_add +EXPORT_SYMBOL sound/core/snd 0x31ec4849 snd_ctl_free_one +EXPORT_SYMBOL sound/core/snd 0x342a2354 copy_to_user_fromio +EXPORT_SYMBOL sound/core/snd 0x35c53af0 snd_card_new +EXPORT_SYMBOL sound/core/snd 0x3971b4df snd_ecards_limit +EXPORT_SYMBOL sound/core/snd 0x3a207617 snd_mixer_oss_notify_callback +EXPORT_SYMBOL sound/core/snd 0x3b9876b1 snd_register_device +EXPORT_SYMBOL sound/core/snd 0x3e0b742c snd_device_free +EXPORT_SYMBOL sound/core/snd 0x4a3ea5c0 snd_request_card +EXPORT_SYMBOL sound/core/snd 0x570b9281 snd_register_oss_device +EXPORT_SYMBOL sound/core/snd 0x57fb0d47 _snd_ctl_add_slave +EXPORT_SYMBOL sound/core/snd 0x5a3dec74 snd_ctl_register_ioctl +EXPORT_SYMBOL sound/core/snd 0x5b104912 snd_jack_new +EXPORT_SYMBOL sound/core/snd 0x6118ab18 snd_ctl_rename_id +EXPORT_SYMBOL sound/core/snd 0x61300851 snd_ctl_boolean_mono_info +EXPORT_SYMBOL sound/core/snd 0x62ac111a snd_info_free_entry +EXPORT_SYMBOL sound/core/snd 0x6917b246 snd_ctl_register_ioctl_compat +EXPORT_SYMBOL sound/core/snd 0x70c15ac1 snd_dma_disable +EXPORT_SYMBOL sound/core/snd 0x71fe1c96 snd_card_free +EXPORT_SYMBOL sound/core/snd 0x73076315 snd_pci_quirk_lookup_id +EXPORT_SYMBOL sound/core/snd 0x74f9b7f4 snd_ctl_find_numid +EXPORT_SYMBOL sound/core/snd 0x7d9dcca0 snd_unregister_device +EXPORT_SYMBOL sound/core/snd 0x8a8a93a6 snd_ctl_notify +EXPORT_SYMBOL sound/core/snd 0x8df3789f snd_oss_info_register +EXPORT_SYMBOL sound/core/snd 0x8f595b11 snd_major +EXPORT_SYMBOL sound/core/snd 0x94a994fc snd_card_set_id +EXPORT_SYMBOL sound/core/snd 0x9a6730ca snd_jack_add_new_kctl +EXPORT_SYMBOL sound/core/snd 0x9d49ae9c snd_pci_quirk_lookup +EXPORT_SYMBOL sound/core/snd 0x9e6d79f8 snd_info_get_str +EXPORT_SYMBOL sound/core/snd 0xa87d791f snd_seq_root +EXPORT_SYMBOL sound/core/snd 0xb20e3396 snd_card_file_remove +EXPORT_SYMBOL sound/core/snd 0xb2e5ae4a snd_lookup_minor_data +EXPORT_SYMBOL sound/core/snd 0xb56d841b snd_device_new +EXPORT_SYMBOL sound/core/snd 0xba65dd7c snd_jack_set_key +EXPORT_SYMBOL sound/core/snd 0xbc205361 snd_card_register +EXPORT_SYMBOL sound/core/snd 0xbecc7d0e snd_ctl_find_id +EXPORT_SYMBOL sound/core/snd 0xbf387107 snd_ctl_new1 +EXPORT_SYMBOL sound/core/snd 0xc5a6d10b release_and_free_resource +EXPORT_SYMBOL sound/core/snd 0xc889e9d6 snd_info_register +EXPORT_SYMBOL sound/core/snd 0xcc6a729f snd_ctl_enum_info +EXPORT_SYMBOL sound/core/snd 0xcf412538 snd_unregister_oss_device +EXPORT_SYMBOL sound/core/snd 0xd1c600bd snd_jack_set_parent +EXPORT_SYMBOL sound/core/snd 0xddf2a230 snd_ctl_replace +EXPORT_SYMBOL sound/core/snd 0xdfb75f10 snd_ctl_make_virtual_master +EXPORT_SYMBOL sound/core/snd 0xdfec2c4a snd_info_create_card_entry +EXPORT_SYMBOL sound/core/snd 0xe21e3b85 snd_ctl_unregister_ioctl_compat +EXPORT_SYMBOL sound/core/snd 0xe472901b snd_device_register +EXPORT_SYMBOL sound/core/snd 0xeaec1467 snd_component_add +EXPORT_SYMBOL sound/core/snd 0xed1ff5e8 snd_ctl_boolean_stereo_info +EXPORT_SYMBOL sound/core/snd 0xede98ba9 snd_card_disconnect +EXPORT_SYMBOL sound/core/snd 0xef38aa30 snd_ctl_unregister_ioctl +EXPORT_SYMBOL sound/core/snd 0xef44a22c snd_info_create_module_entry +EXPORT_SYMBOL sound/core/snd 0xfaacff88 snd_card_free_when_closed +EXPORT_SYMBOL sound/core/snd 0xfffd89db copy_from_user_toio +EXPORT_SYMBOL sound/core/snd-compress 0xafe71e3b snd_compr_free_pages +EXPORT_SYMBOL sound/core/snd-compress 0xe12a53fa snd_compr_malloc_pages +EXPORT_SYMBOL sound/core/snd-hwdep 0x85649636 snd_hwdep_new +EXPORT_SYMBOL sound/core/snd-pcm 0x015e10ac snd_pcm_lib_preallocate_free_for_all +EXPORT_SYMBOL sound/core/snd-pcm 0x0283dfe3 _snd_pcm_hw_params_any +EXPORT_SYMBOL sound/core/snd-pcm 0x04cda566 snd_interval_refine +EXPORT_SYMBOL sound/core/snd-pcm 0x0ab1a89b snd_pcm_lib_get_vmalloc_page +EXPORT_SYMBOL sound/core/snd-pcm 0x0f347b49 __snd_pcm_lib_xfer +EXPORT_SYMBOL sound/core/snd-pcm 0x11eba48e snd_pcm_create_iec958_consumer_hw_params +EXPORT_SYMBOL sound/core/snd-pcm 0x14bb45d9 snd_pcm_hw_constraint_mask64 +EXPORT_SYMBOL sound/core/snd-pcm 0x17eaea8f snd_pcm_set_managed_buffer +EXPORT_SYMBOL sound/core/snd-pcm 0x1961fb2e snd_pcm_create_iec958_consumer +EXPORT_SYMBOL sound/core/snd-pcm 0x1d027e4b snd_pcm_format_signed +EXPORT_SYMBOL sound/core/snd-pcm 0x24e8ac1d snd_pcm_hw_constraint_msbits +EXPORT_SYMBOL sound/core/snd-pcm 0x29251736 snd_pcm_lib_preallocate_pages +EXPORT_SYMBOL sound/core/snd-pcm 0x331bf473 snd_pcm_hw_param_first +EXPORT_SYMBOL sound/core/snd-pcm 0x33fc948c snd_pcm_set_ops +EXPORT_SYMBOL sound/core/snd-pcm 0x354cc08e snd_pcm_lib_malloc_pages +EXPORT_SYMBOL sound/core/snd-pcm 0x3796bdcc snd_pcm_format_little_endian +EXPORT_SYMBOL sound/core/snd-pcm 0x383b64d9 snd_pcm_lib_free_pages +EXPORT_SYMBOL sound/core/snd-pcm 0x39bf9301 _snd_pcm_hw_param_setempty +EXPORT_SYMBOL sound/core/snd-pcm 0x424e914d _snd_pcm_lib_alloc_vmalloc_buffer +EXPORT_SYMBOL sound/core/snd-pcm 0x43302b24 snd_pcm_hw_rule_add +EXPORT_SYMBOL sound/core/snd-pcm 0x43cb7f73 snd_pcm_hw_rule_noresample +EXPORT_SYMBOL sound/core/snd-pcm 0x47851bcc snd_pcm_lib_mmap_iomem +EXPORT_SYMBOL sound/core/snd-pcm 0x4f816e9b snd_pcm_format_big_endian +EXPORT_SYMBOL sound/core/snd-pcm 0x503bd137 snd_interval_ranges +EXPORT_SYMBOL sound/core/snd-pcm 0x52e3e4a5 snd_pcm_hw_param_value +EXPORT_SYMBOL sound/core/snd-pcm 0x5c926896 snd_pcm_hw_constraint_ranges +EXPORT_SYMBOL sound/core/snd-pcm 0x5e5424c4 snd_pcm_lib_preallocate_pages_for_all +EXPORT_SYMBOL sound/core/snd-pcm 0x5e7f4920 snd_pcm_format_set_silence +EXPORT_SYMBOL sound/core/snd-pcm 0x6179a17c snd_pcm_stop +EXPORT_SYMBOL sound/core/snd-pcm 0x64831c81 snd_pcm_new_stream +EXPORT_SYMBOL sound/core/snd-pcm 0x650f8603 snd_pcm_format_silence_64 +EXPORT_SYMBOL sound/core/snd-pcm 0x6771ef84 snd_pcm_new +EXPORT_SYMBOL sound/core/snd-pcm 0x68a24153 snd_pcm_format_physical_width +EXPORT_SYMBOL sound/core/snd-pcm 0x69255f54 snd_pcm_hw_limit_rates +EXPORT_SYMBOL sound/core/snd-pcm 0x6a5c79c2 snd_pcm_open_substream +EXPORT_SYMBOL sound/core/snd-pcm 0x6ef8fcd8 snd_pcm_format_linear +EXPORT_SYMBOL sound/core/snd-pcm 0x71054362 snd_pcm_lib_free_vmalloc_buffer +EXPORT_SYMBOL sound/core/snd-pcm 0x75870b9a snd_sgbuf_get_chunk_size +EXPORT_SYMBOL sound/core/snd-pcm 0x76fc0553 snd_pcm_hw_constraint_pow2 +EXPORT_SYMBOL sound/core/snd-pcm 0x7f34c625 snd_pcm_kernel_ioctl +EXPORT_SYMBOL sound/core/snd-pcm 0x834dc955 snd_pcm_format_size +EXPORT_SYMBOL sound/core/snd-pcm 0x89dc7bd5 snd_dma_alloc_pages_fallback +EXPORT_SYMBOL sound/core/snd-pcm 0x8c03dd40 snd_pcm_hw_constraint_list +EXPORT_SYMBOL sound/core/snd-pcm 0x902dac5c snd_dma_alloc_pages +EXPORT_SYMBOL sound/core/snd-pcm 0x94098ff8 snd_interval_list +EXPORT_SYMBOL sound/core/snd-pcm 0x944ee81b snd_pcm_set_managed_buffer_all +EXPORT_SYMBOL sound/core/snd-pcm 0x9cb40d36 snd_dma_free_pages +EXPORT_SYMBOL sound/core/snd-pcm 0xa37070e4 snd_pcm_hw_refine +EXPORT_SYMBOL sound/core/snd-pcm 0xa61aa028 snd_pcm_format_unsigned +EXPORT_SYMBOL sound/core/snd-pcm 0xa7c4080f snd_pcm_hw_constraint_ratnums +EXPORT_SYMBOL sound/core/snd-pcm 0xac437f7b snd_interval_ratnum +EXPORT_SYMBOL sound/core/snd-pcm 0xb9638db4 snd_pcm_rate_to_rate_bit +EXPORT_SYMBOL sound/core/snd-pcm 0xc0a09dd0 snd_pcm_suspend_all +EXPORT_SYMBOL sound/core/snd-pcm 0xc11f472a snd_pcm_hw_constraint_minmax +EXPORT_SYMBOL sound/core/snd-pcm 0xc607d22c snd_pcm_new_internal +EXPORT_SYMBOL sound/core/snd-pcm 0xc939170b snd_pcm_set_sync +EXPORT_SYMBOL sound/core/snd-pcm 0xcb36e532 snd_pcm_lib_ioctl +EXPORT_SYMBOL sound/core/snd-pcm 0xcb72a695 snd_pcm_hw_constraint_ratdens +EXPORT_SYMBOL sound/core/snd-pcm 0xdf431e34 snd_pcm_hw_param_last +EXPORT_SYMBOL sound/core/snd-pcm 0xe549fa97 snd_pcm_mmap_data +EXPORT_SYMBOL sound/core/snd-pcm 0xe56a9336 snd_pcm_format_width +EXPORT_SYMBOL sound/core/snd-pcm 0xe9301ed2 snd_pcm_hw_constraint_integer +EXPORT_SYMBOL sound/core/snd-pcm 0xefb08d91 snd_pcm_hw_constraint_step +EXPORT_SYMBOL sound/core/snd-pcm 0xfc229909 snd_pcm_release_substream +EXPORT_SYMBOL sound/core/snd-pcm 0xfd95b893 snd_pcm_period_elapsed +EXPORT_SYMBOL sound/core/snd-pcm 0xff6104d0 snd_pcm_rate_bit_to_rate +EXPORT_SYMBOL sound/core/snd-rawmidi 0x472acca3 snd_rawmidi_input_params +EXPORT_SYMBOL sound/core/snd-rawmidi 0x5a858805 __snd_rawmidi_transmit_ack +EXPORT_SYMBOL sound/core/snd-rawmidi 0x5dbb9516 snd_rawmidi_drain_output +EXPORT_SYMBOL sound/core/snd-rawmidi 0x69b9bbe2 snd_rawmidi_info_select +EXPORT_SYMBOL sound/core/snd-rawmidi 0x883d729c snd_rawmidi_transmit_ack +EXPORT_SYMBOL sound/core/snd-rawmidi 0x9740da35 snd_rawmidi_transmit +EXPORT_SYMBOL sound/core/snd-rawmidi 0x997a886f snd_rawmidi_transmit_empty +EXPORT_SYMBOL sound/core/snd-rawmidi 0xa31c9753 snd_rawmidi_receive +EXPORT_SYMBOL sound/core/snd-rawmidi 0xab57e86d snd_rawmidi_output_params +EXPORT_SYMBOL sound/core/snd-rawmidi 0xabbf0e2b snd_rawmidi_proceed +EXPORT_SYMBOL sound/core/snd-rawmidi 0xbd341924 __snd_rawmidi_transmit_peek +EXPORT_SYMBOL sound/core/snd-rawmidi 0xca53b4f3 snd_rawmidi_kernel_read +EXPORT_SYMBOL sound/core/snd-rawmidi 0xcdb2107d snd_rawmidi_kernel_open +EXPORT_SYMBOL sound/core/snd-rawmidi 0xe17d3377 snd_rawmidi_set_ops +EXPORT_SYMBOL sound/core/snd-rawmidi 0xe9c8ffe7 snd_rawmidi_transmit_peek +EXPORT_SYMBOL sound/core/snd-rawmidi 0xea29a104 snd_rawmidi_kernel_release +EXPORT_SYMBOL sound/core/snd-rawmidi 0xf30a5ee3 snd_rawmidi_drop_output +EXPORT_SYMBOL sound/core/snd-rawmidi 0xf8f11155 snd_rawmidi_new +EXPORT_SYMBOL sound/core/snd-rawmidi 0xfb33bd18 snd_rawmidi_kernel_write +EXPORT_SYMBOL sound/core/snd-rawmidi 0xfb92d31d snd_rawmidi_drain_input +EXPORT_SYMBOL sound/core/snd-seq-device 0x091def1c snd_seq_autoload_exit +EXPORT_SYMBOL sound/core/snd-seq-device 0x370a0736 snd_seq_autoload_init +EXPORT_SYMBOL sound/core/snd-seq-device 0x6339b6d0 snd_seq_device_load_drivers +EXPORT_SYMBOL sound/core/snd-seq-device 0xbdb5523f snd_seq_device_new +EXPORT_SYMBOL sound/core/snd-timer 0x305865b7 snd_timer_global_free +EXPORT_SYMBOL sound/core/snd-timer 0x45cbde8e snd_timer_notify +EXPORT_SYMBOL sound/core/snd-timer 0x5502639c snd_timer_stop +EXPORT_SYMBOL sound/core/snd-timer 0x686be283 snd_timer_pause +EXPORT_SYMBOL sound/core/snd-timer 0x6dab1d10 snd_timer_start +EXPORT_SYMBOL sound/core/snd-timer 0x71a8e44d snd_timer_global_register +EXPORT_SYMBOL sound/core/snd-timer 0x71c9a404 snd_timer_open +EXPORT_SYMBOL sound/core/snd-timer 0xc18119eb snd_timer_resolution +EXPORT_SYMBOL sound/core/snd-timer 0xc44ec7ed snd_timer_instance_free +EXPORT_SYMBOL sound/core/snd-timer 0xc4f306b6 snd_timer_interrupt +EXPORT_SYMBOL sound/core/snd-timer 0xd918e536 snd_timer_close +EXPORT_SYMBOL sound/core/snd-timer 0xdf7704f0 snd_timer_instance_new +EXPORT_SYMBOL sound/core/snd-timer 0xebea1d9f snd_timer_new +EXPORT_SYMBOL sound/core/snd-timer 0xf23aaa0e snd_timer_global_new +EXPORT_SYMBOL sound/core/snd-timer 0xf81488cb snd_timer_continue +EXPORT_SYMBOL sound/drivers/mpu401/snd-mpu401-uart 0x6a28c9e2 snd_mpu401_uart_new +EXPORT_SYMBOL sound/drivers/mpu401/snd-mpu401-uart 0x6d629c59 snd_mpu401_uart_interrupt_tx +EXPORT_SYMBOL sound/drivers/mpu401/snd-mpu401-uart 0xc0fec227 snd_mpu401_uart_interrupt +EXPORT_SYMBOL sound/drivers/opl3/snd-opl3-lib 0x05060a19 snd_opl3_regmap +EXPORT_SYMBOL sound/drivers/opl3/snd-opl3-lib 0x31aa8777 snd_opl3_timer_new +EXPORT_SYMBOL sound/drivers/opl3/snd-opl3-lib 0x3f39d2db snd_opl3_new +EXPORT_SYMBOL sound/drivers/opl3/snd-opl3-lib 0x696bdf63 snd_opl3_reset +EXPORT_SYMBOL sound/drivers/opl3/snd-opl3-lib 0x8d94a61f snd_opl3_create +EXPORT_SYMBOL sound/drivers/opl3/snd-opl3-lib 0xac77bc09 snd_opl3_find_patch +EXPORT_SYMBOL sound/drivers/opl3/snd-opl3-lib 0xb0a8905f snd_opl3_init +EXPORT_SYMBOL sound/drivers/opl3/snd-opl3-lib 0xb2004c57 snd_opl3_interrupt +EXPORT_SYMBOL sound/drivers/opl3/snd-opl3-lib 0xdb1ec429 snd_opl3_hwdep_new +EXPORT_SYMBOL sound/drivers/opl3/snd-opl3-lib 0xe02672ce snd_opl3_load_patch +EXPORT_SYMBOL sound/drivers/vx/snd-vx-lib 0x226138b0 snd_vx_threaded_irq_handler +EXPORT_SYMBOL sound/drivers/vx/snd-vx-lib 0x3aeb3cc9 snd_vx_check_reg_bit +EXPORT_SYMBOL sound/drivers/vx/snd-vx-lib 0x3e8d7107 snd_vx_resume +EXPORT_SYMBOL sound/drivers/vx/snd-vx-lib 0x440728df snd_vx_dsp_load +EXPORT_SYMBOL sound/drivers/vx/snd-vx-lib 0x46b01e02 snd_vx_free_firmware +EXPORT_SYMBOL sound/drivers/vx/snd-vx-lib 0x4c38bea0 snd_vx_setup_firmware +EXPORT_SYMBOL sound/drivers/vx/snd-vx-lib 0x7eb81e21 snd_vx_suspend +EXPORT_SYMBOL sound/drivers/vx/snd-vx-lib 0x9610cd6d snd_vx_create +EXPORT_SYMBOL sound/drivers/vx/snd-vx-lib 0xccaa7a08 snd_vx_load_boot_image +EXPORT_SYMBOL sound/drivers/vx/snd-vx-lib 0xd907b027 snd_vx_dsp_boot +EXPORT_SYMBOL sound/drivers/vx/snd-vx-lib 0xf1f04d23 snd_vx_irq_handler +EXPORT_SYMBOL sound/firewire/snd-firewire-lib 0x00099b45 amdtp_stream_pcm_prepare +EXPORT_SYMBOL sound/firewire/snd-firewire-lib 0x089771f8 fw_iso_resources_free +EXPORT_SYMBOL sound/firewire/snd-firewire-lib 0x0fa14a75 fw_iso_resources_init +EXPORT_SYMBOL sound/firewire/snd-firewire-lib 0x1679d472 amdtp_stream_update +EXPORT_SYMBOL sound/firewire/snd-firewire-lib 0x1e0752f8 amdtp_stream_pcm_abort +EXPORT_SYMBOL sound/firewire/snd-firewire-lib 0x20254e45 amdtp_syt_intervals +EXPORT_SYMBOL sound/firewire/snd-firewire-lib 0x223f78b9 cmp_connection_init +EXPORT_SYMBOL sound/firewire/snd-firewire-lib 0x27a2f149 fcp_avc_transaction +EXPORT_SYMBOL sound/firewire/snd-firewire-lib 0x2ca821e2 cmp_connection_reserve +EXPORT_SYMBOL sound/firewire/snd-firewire-lib 0x2ed9374b avc_general_get_sig_fmt +EXPORT_SYMBOL sound/firewire/snd-firewire-lib 0x36481ddc amdtp_stream_get_max_payload +EXPORT_SYMBOL sound/firewire/snd-firewire-lib 0x3b9880a1 fcp_bus_reset +EXPORT_SYMBOL sound/firewire/snd-firewire-lib 0x3c667d79 fw_iso_resources_allocate +EXPORT_SYMBOL sound/firewire/snd-firewire-lib 0x4536cccb cmp_connection_break +EXPORT_SYMBOL sound/firewire/snd-firewire-lib 0x4553201b cmp_connection_destroy +EXPORT_SYMBOL sound/firewire/snd-firewire-lib 0x45b40aab snd_fw_transaction +EXPORT_SYMBOL sound/firewire/snd-firewire-lib 0x513b757d fw_iso_resources_update +EXPORT_SYMBOL sound/firewire/snd-firewire-lib 0x53ca18e8 amdtp_rate_table +EXPORT_SYMBOL sound/firewire/snd-firewire-lib 0x54776695 avc_general_get_plug_info +EXPORT_SYMBOL sound/firewire/snd-firewire-lib 0x58d9e824 iso_packets_buffer_init +EXPORT_SYMBOL sound/firewire/snd-firewire-lib 0x67dfb232 fw_iso_resources_destroy +EXPORT_SYMBOL sound/firewire/snd-firewire-lib 0x8afeba16 cmp_connection_check_used +EXPORT_SYMBOL sound/firewire/snd-firewire-lib 0x8bc5d82c cmp_connection_update +EXPORT_SYMBOL sound/firewire/snd-firewire-lib 0xae89c875 cmp_connection_establish +EXPORT_SYMBOL sound/firewire/snd-firewire-lib 0xbcc1c9e0 amdtp_stream_destroy +EXPORT_SYMBOL sound/firewire/snd-firewire-lib 0xc59fb769 avc_general_set_sig_fmt +EXPORT_SYMBOL sound/firewire/snd-firewire-lib 0xd51b2e63 iso_packets_buffer_destroy +EXPORT_SYMBOL sound/firewire/snd-firewire-lib 0xe907903f amdtp_stream_add_pcm_hw_constraints +EXPORT_SYMBOL sound/firewire/snd-firewire-lib 0xe9a12072 amdtp_stream_set_parameters +EXPORT_SYMBOL sound/firewire/snd-firewire-lib 0xebe26170 cmp_connection_release +EXPORT_SYMBOL sound/firewire/snd-firewire-lib 0xf065b226 snd_fw_schedule_registration +EXPORT_SYMBOL sound/firewire/snd-firewire-lib 0xf0deca05 amdtp_stream_init +EXPORT_SYMBOL sound/i2c/other/snd-ak4113 0x26b9da92 snd_ak4113_resume +EXPORT_SYMBOL sound/i2c/other/snd-ak4113 0x342bc502 snd_ak4113_suspend +EXPORT_SYMBOL sound/i2c/other/snd-ak4114 0x2ab1cb16 snd_ak4114_resume +EXPORT_SYMBOL sound/i2c/other/snd-ak4114 0x3d3bdbde snd_ak4114_check_rate_and_errors +EXPORT_SYMBOL sound/i2c/other/snd-ak4114 0x457ffccb snd_ak4114_reinit +EXPORT_SYMBOL sound/i2c/other/snd-ak4114 0x495867cd snd_ak4114_build +EXPORT_SYMBOL sound/i2c/other/snd-ak4114 0x592d9969 snd_ak4114_external_rate +EXPORT_SYMBOL sound/i2c/other/snd-ak4114 0x5ea5b07e snd_ak4114_reg_write +EXPORT_SYMBOL sound/i2c/other/snd-ak4114 0x61fe1566 snd_ak4114_suspend +EXPORT_SYMBOL sound/i2c/other/snd-ak4114 0x6553cee8 snd_ak4114_create +EXPORT_SYMBOL sound/i2c/other/snd-ak4117 0x29c84353 snd_ak4117_reg_write +EXPORT_SYMBOL sound/i2c/other/snd-ak4117 0x7b7ba941 snd_ak4117_reinit +EXPORT_SYMBOL sound/i2c/other/snd-ak4117 0x8cf157f9 snd_ak4117_build +EXPORT_SYMBOL sound/i2c/other/snd-ak4117 0x9bf080c9 snd_ak4117_create +EXPORT_SYMBOL sound/i2c/other/snd-ak4117 0xe10ec0a2 snd_ak4117_external_rate +EXPORT_SYMBOL sound/i2c/other/snd-ak4117 0xf13abb47 snd_ak4117_check_rate_and_errors +EXPORT_SYMBOL sound/i2c/other/snd-ak4xxx-adda 0x7b0c34bc snd_akm4xxx_build_controls +EXPORT_SYMBOL sound/i2c/other/snd-ak4xxx-adda 0x9009cdfc snd_akm4xxx_write +EXPORT_SYMBOL sound/i2c/other/snd-ak4xxx-adda 0xd94567e0 snd_akm4xxx_reset +EXPORT_SYMBOL sound/i2c/other/snd-ak4xxx-adda 0xf0992fd6 snd_akm4xxx_init +EXPORT_SYMBOL sound/i2c/other/snd-pt2258 0x23aa08c4 snd_pt2258_reset +EXPORT_SYMBOL sound/i2c/other/snd-pt2258 0x5cb07532 snd_pt2258_build_controls +EXPORT_SYMBOL sound/i2c/snd-cs8427 0x41821c9b snd_cs8427_iec958_pcm +EXPORT_SYMBOL sound/i2c/snd-cs8427 0x4cef8008 snd_cs8427_create +EXPORT_SYMBOL sound/i2c/snd-cs8427 0x5b98bbed snd_cs8427_init +EXPORT_SYMBOL sound/i2c/snd-cs8427 0x8cbe2339 snd_cs8427_reg_write +EXPORT_SYMBOL sound/i2c/snd-cs8427 0xae737d61 snd_cs8427_iec958_build +EXPORT_SYMBOL sound/i2c/snd-cs8427 0xc47497fc snd_cs8427_iec958_active +EXPORT_SYMBOL sound/i2c/snd-i2c 0x089675dc snd_i2c_sendbytes +EXPORT_SYMBOL sound/i2c/snd-i2c 0x1af4d578 snd_i2c_device_create +EXPORT_SYMBOL sound/i2c/snd-i2c 0x2ddae798 snd_i2c_probeaddr +EXPORT_SYMBOL sound/i2c/snd-i2c 0x37e46940 snd_i2c_bus_create +EXPORT_SYMBOL sound/i2c/snd-i2c 0x8fc66096 snd_i2c_readbytes +EXPORT_SYMBOL sound/i2c/snd-i2c 0x9fc40c53 snd_i2c_device_free +EXPORT_SYMBOL sound/isa/sb/snd-sb-common 0x1492a532 snd_sbmixer_new +EXPORT_SYMBOL sound/isa/sb/snd-sb-common 0x250149bd snd_sbdsp_command +EXPORT_SYMBOL sound/isa/sb/snd-sb-common 0x2f894214 snd_sbdsp_get_byte +EXPORT_SYMBOL sound/isa/sb/snd-sb-common 0x36dbeb70 snd_sbdsp_create +EXPORT_SYMBOL sound/isa/sb/snd-sb-common 0x392ece2d snd_sbdsp_reset +EXPORT_SYMBOL sound/isa/sb/snd-sb-common 0xad4652c5 snd_sbmixer_suspend +EXPORT_SYMBOL sound/isa/sb/snd-sb-common 0xb15dc9a3 snd_sbmixer_resume +EXPORT_SYMBOL sound/isa/sb/snd-sb-common 0xc29b8a26 snd_sbmixer_read +EXPORT_SYMBOL sound/isa/sb/snd-sb-common 0xd3ca11b1 snd_sbmixer_write +EXPORT_SYMBOL sound/isa/sb/snd-sb-common 0xfe6d95aa snd_sbmixer_add_ctl +EXPORT_SYMBOL sound/pci/ac97/snd-ac97-codec 0x13f4d409 snd_ac97_pcm_double_rate_rules +EXPORT_SYMBOL sound/pci/ac97/snd-ac97-codec 0x21406cc3 snd_ac97_suspend +EXPORT_SYMBOL sound/pci/ac97/snd-ac97-codec 0x2835394b snd_ac97_read +EXPORT_SYMBOL sound/pci/ac97/snd-ac97-codec 0x28f78a4f snd_ac97_tune_hardware +EXPORT_SYMBOL sound/pci/ac97/snd-ac97-codec 0x5a98132b snd_ac97_bus +EXPORT_SYMBOL sound/pci/ac97/snd-ac97-codec 0x7fd8339d snd_ac97_update +EXPORT_SYMBOL sound/pci/ac97/snd-ac97-codec 0x8b60eb71 snd_ac97_set_rate +EXPORT_SYMBOL sound/pci/ac97/snd-ac97-codec 0x9077082a snd_ac97_mixer +EXPORT_SYMBOL sound/pci/ac97/snd-ac97-codec 0x9cde9c4e snd_ac97_write +EXPORT_SYMBOL sound/pci/ac97/snd-ac97-codec 0x9ea0fca8 snd_ac97_write_cache +EXPORT_SYMBOL sound/pci/ac97/snd-ac97-codec 0xaa8120e6 snd_ac97_update_power +EXPORT_SYMBOL sound/pci/ac97/snd-ac97-codec 0xac65a69d snd_ac97_get_short_name +EXPORT_SYMBOL sound/pci/ac97/snd-ac97-codec 0xc015ff1a snd_ac97_resume +EXPORT_SYMBOL sound/pci/ac97/snd-ac97-codec 0xc407d925 snd_ac97_pcm_assign +EXPORT_SYMBOL sound/pci/ac97/snd-ac97-codec 0xc9b0b46c snd_ac97_pcm_open +EXPORT_SYMBOL sound/pci/ac97/snd-ac97-codec 0xe9749f43 snd_ac97_pcm_close +EXPORT_SYMBOL sound/pci/ac97/snd-ac97-codec 0xee8b80d5 snd_ac97_update_bits +EXPORT_SYMBOL sound/pci/asihpi/snd-asihpi 0xbed1d3ab hpi_send_recv +EXPORT_SYMBOL sound/pci/emu10k1/snd-emu10k1 0x051bf2a7 snd_emu10k1_synth_bzero +EXPORT_SYMBOL sound/pci/emu10k1/snd-emu10k1 0x368acf3a snd_emu10k1_synth_alloc +EXPORT_SYMBOL sound/pci/emu10k1/snd-emu10k1 0x6195722d snd_emu10k1_ptr_write +EXPORT_SYMBOL sound/pci/emu10k1/snd-emu10k1 0x87c5a9ad snd_emu10k1_voice_free +EXPORT_SYMBOL sound/pci/emu10k1/snd-emu10k1 0x8b3631db snd_emu10k1_voice_alloc +EXPORT_SYMBOL sound/pci/emu10k1/snd-emu10k1 0xa4bab80b snd_emu10k1_synth_copy_from_user +EXPORT_SYMBOL sound/pci/emu10k1/snd-emu10k1 0xadf62232 snd_emu10k1_ptr_read +EXPORT_SYMBOL sound/pci/emu10k1/snd-emu10k1 0xb68df2fa snd_emu10k1_synth_free +EXPORT_SYMBOL sound/pci/emu10k1/snd-emu10k1 0xfe96eb49 snd_emu10k1_memblk_map +EXPORT_SYMBOL sound/pci/ice1712/snd-ice17xx-ak4xxx 0x1ed96dab snd_ice1712_akm4xxx_free +EXPORT_SYMBOL sound/pci/ice1712/snd-ice17xx-ak4xxx 0x92465e5e snd_ice1712_akm4xxx_init +EXPORT_SYMBOL sound/pci/ice1712/snd-ice17xx-ak4xxx 0xb4f5a768 snd_ice1712_akm4xxx_build_controls +EXPORT_SYMBOL sound/pci/oxygen/snd-oxygen-lib 0x1f0cec71 oxygen_write_i2c +EXPORT_SYMBOL sound/pci/oxygen/snd-oxygen-lib 0x2dc723d4 oxygen_write32 +EXPORT_SYMBOL sound/pci/oxygen/snd-oxygen-lib 0x3198f1d6 oxygen_write_ac97_masked +EXPORT_SYMBOL sound/pci/oxygen/snd-oxygen-lib 0x474e8595 oxygen_pci_remove +EXPORT_SYMBOL sound/pci/oxygen/snd-oxygen-lib 0x4ebddabb oxygen_write_spi +EXPORT_SYMBOL sound/pci/oxygen/snd-oxygen-lib 0x50e1499b oxygen_write_uart +EXPORT_SYMBOL sound/pci/oxygen/snd-oxygen-lib 0x58dfd931 oxygen_write_ac97 +EXPORT_SYMBOL sound/pci/oxygen/snd-oxygen-lib 0x5a40be79 oxygen_read16 +EXPORT_SYMBOL sound/pci/oxygen/snd-oxygen-lib 0x635afe9d oxygen_reset_uart +EXPORT_SYMBOL sound/pci/oxygen/snd-oxygen-lib 0x6e87e771 oxygen_read32 +EXPORT_SYMBOL sound/pci/oxygen/snd-oxygen-lib 0x70e2efc9 oxygen_update_dac_routing +EXPORT_SYMBOL sound/pci/oxygen/snd-oxygen-lib 0x76652a51 oxygen_write16 +EXPORT_SYMBOL sound/pci/oxygen/snd-oxygen-lib 0x784f541b oxygen_pci_probe +EXPORT_SYMBOL sound/pci/oxygen/snd-oxygen-lib 0x7d99c1d6 oxygen_pci_shutdown +EXPORT_SYMBOL sound/pci/oxygen/snd-oxygen-lib 0xa16bf86a oxygen_write8_masked +EXPORT_SYMBOL sound/pci/oxygen/snd-oxygen-lib 0xc70166bd oxygen_pci_pm +EXPORT_SYMBOL sound/pci/oxygen/snd-oxygen-lib 0xc9adc74b oxygen_write16_masked +EXPORT_SYMBOL sound/pci/oxygen/snd-oxygen-lib 0xd2dc08f1 oxygen_write8 +EXPORT_SYMBOL sound/pci/oxygen/snd-oxygen-lib 0xd35d8428 oxygen_write32_masked +EXPORT_SYMBOL sound/pci/oxygen/snd-oxygen-lib 0xd931a573 oxygen_read_ac97 +EXPORT_SYMBOL sound/pci/oxygen/snd-oxygen-lib 0xdd469543 oxygen_read8 +EXPORT_SYMBOL sound/pci/trident/snd-trident 0x8f078ebe snd_trident_alloc_voice +EXPORT_SYMBOL sound/pci/trident/snd-trident 0x97f49e87 snd_trident_free_voice +EXPORT_SYMBOL sound/pci/trident/snd-trident 0xb2bca4a2 snd_trident_write_voice_regs +EXPORT_SYMBOL sound/pci/trident/snd-trident 0xe2c303a5 snd_trident_stop_voice +EXPORT_SYMBOL sound/pci/trident/snd-trident 0xed26bd3f snd_trident_start_voice +EXPORT_SYMBOL sound/soc/amd/acp_audio_dma 0xea74f232 bt_uart_enable +EXPORT_SYMBOL sound/soc/codecs/snd-soc-pcm3060 0x8e443c33 pcm3060_regmap +EXPORT_SYMBOL sound/soc/codecs/snd-soc-pcm3060 0xd8e4f1be pcm3060_probe +EXPORT_SYMBOL sound/soc/codecs/snd-soc-rt715 0xed2acb24 hda_to_sdw +EXPORT_SYMBOL sound/soc/codecs/snd-soc-tlv320aic23 0x152e97ce tlv320aic23_regmap +EXPORT_SYMBOL sound/soc/codecs/snd-soc-tlv320aic23 0xe2bf3f2d tlv320aic23_probe +EXPORT_SYMBOL sound/soc/codecs/snd-soc-tlv320aic32x4 0x0f4821c4 aic32x4_remove +EXPORT_SYMBOL sound/soc/codecs/snd-soc-tlv320aic32x4 0x2c2ec78a aic32x4_probe +EXPORT_SYMBOL sound/soc/codecs/snd-soc-tlv320aic32x4 0xc20c5ce8 aic32x4_regmap_config +EXPORT_SYMBOL sound/soc/snd-soc-core 0xaf23b787 snd_soc_alloc_ac97_component +EXPORT_SYMBOL sound/soc/sof/snd-sof 0x0d0d86ef snd_sof_pci_update_bits +EXPORT_SYMBOL sound/soc/sof/snd-sof 0x0f3770cb sof_mailbox_read +EXPORT_SYMBOL sound/soc/sof/snd-sof 0x12e143d2 snd_sof_runtime_idle +EXPORT_SYMBOL sound/soc/sof/snd-sof 0x160a603b snd_sof_load_topology +EXPORT_SYMBOL sound/soc/sof/snd-sof 0x18eede7e snd_sof_device_remove +EXPORT_SYMBOL sound/soc/sof/snd-sof 0x19995a33 snd_sof_create_page_table +EXPORT_SYMBOL sound/soc/sof/snd-sof 0x1b325f87 sof_io_write +EXPORT_SYMBOL sound/soc/sof/snd-sof 0x1ca2e2d0 sof_block_write +EXPORT_SYMBOL sound/soc/sof/snd-sof 0x1d22a5ea sof_ipc_tx_message_no_pm +EXPORT_SYMBOL sound/soc/sof/snd-sof 0x21b4db9a snd_sof_release_trace +EXPORT_SYMBOL sound/soc/sof/snd-sof 0x25ac14a5 snd_sof_dsp_mailbox_init +EXPORT_SYMBOL sound/soc/sof/snd-sof 0x27ca601a snd_sof_suspend +EXPORT_SYMBOL sound/soc/sof/snd-sof 0x345aa53f snd_sof_complete +EXPORT_SYMBOL sound/soc/sof/snd-sof 0x34752efd sof_io_write64 +EXPORT_SYMBOL sound/soc/sof/snd-sof 0x34ddbae4 sof_io_read +EXPORT_SYMBOL sound/soc/sof/snd-sof 0x3cbb3114 sof_machine_register +EXPORT_SYMBOL sound/soc/sof/snd-sof 0x3ec74ef4 sof_io_read64 +EXPORT_SYMBOL sound/soc/sof/snd-sof 0x433fc0dd snd_sof_dsp_update_bits64 +EXPORT_SYMBOL sound/soc/sof/snd-sof 0x46d46e9e snd_sof_ipc_init +EXPORT_SYMBOL sound/soc/sof/snd-sof 0x48c265bd snd_sof_ipc_msgs_rx +EXPORT_SYMBOL sound/soc/sof/snd-sof 0x5249ed0f sof_block_read +EXPORT_SYMBOL sound/soc/sof/snd-sof 0x52d8f99f sof_machine_unregister +EXPORT_SYMBOL sound/soc/sof/snd-sof 0x6037f05e snd_sof_ipc_set_get_comp_data +EXPORT_SYMBOL sound/soc/sof/snd-sof 0x62bd479b snd_sof_ipc_valid +EXPORT_SYMBOL sound/soc/sof/snd-sof 0x6771f0a6 snd_sof_trace_notify_for_error +EXPORT_SYMBOL sound/soc/sof/snd-sof 0x731993e5 sof_mailbox_write +EXPORT_SYMBOL sound/soc/sof/snd-sof 0x733f0799 snd_sof_ipc_stream_posn +EXPORT_SYMBOL sound/soc/sof/snd-sof 0x8222fa09 snd_sof_dsp_panic +EXPORT_SYMBOL sound/soc/sof/snd-sof 0x83b37e6a snd_sof_dsp_update_bits_forced +EXPORT_SYMBOL sound/soc/sof/snd-sof 0x88108b83 snd_sof_prepare +EXPORT_SYMBOL sound/soc/sof/snd-sof 0x99996bf8 snd_sof_ipc_reply +EXPORT_SYMBOL sound/soc/sof/snd-sof 0x9abe5773 snd_sof_get_status +EXPORT_SYMBOL sound/soc/sof/snd-sof 0x9ce9e15d snd_sof_dsp_update_bits +EXPORT_SYMBOL sound/soc/sof/snd-sof 0xa0e20211 snd_sof_dsp_update_bits64_unlocked +EXPORT_SYMBOL sound/soc/sof/snd-sof 0xa9224f2b snd_sof_parse_module_memcpy +EXPORT_SYMBOL sound/soc/sof/snd-sof 0xab281a5f snd_sof_fw_parse_ext_data +EXPORT_SYMBOL sound/soc/sof/snd-sof 0xb17de5a6 snd_sof_free_trace +EXPORT_SYMBOL sound/soc/sof/snd-sof 0xb34467f0 snd_sof_handle_fw_exception +EXPORT_SYMBOL sound/soc/sof/snd-sof 0xc24b23ed snd_sof_run_firmware +EXPORT_SYMBOL sound/soc/sof/snd-sof 0xc2a6896c snd_sof_dsp_only_d0i3_compatible_stream_active +EXPORT_SYMBOL sound/soc/sof/snd-sof 0xcda14a56 snd_sof_load_firmware_raw +EXPORT_SYMBOL sound/soc/sof/snd-sof 0xcfbdf545 snd_sof_init_trace +EXPORT_SYMBOL sound/soc/sof/snd-sof 0xcfdc5f98 sof_ipc_tx_message +EXPORT_SYMBOL sound/soc/sof/snd-sof 0xd65b88c6 sof_machine_check +EXPORT_SYMBOL sound/soc/sof/snd-sof 0xd8014aa9 snd_sof_fw_unload +EXPORT_SYMBOL sound/soc/sof/snd-sof 0xda65ac57 sof_fw_ready +EXPORT_SYMBOL sound/soc/sof/snd-sof 0xda701c96 snd_sof_load_firmware +EXPORT_SYMBOL sound/soc/sof/snd-sof 0xdb309eb2 snd_sof_pcm_period_elapsed +EXPORT_SYMBOL sound/soc/sof/snd-sof 0xdbc29e06 snd_sof_dsp_update_bits_unlocked +EXPORT_SYMBOL sound/soc/sof/snd-sof 0xee0cb738 snd_sof_device_probe +EXPORT_SYMBOL sound/soc/sof/snd-sof 0xf2548ad9 snd_sof_resume +EXPORT_SYMBOL sound/soc/sof/snd-sof 0xf5e56930 snd_sof_runtime_resume +EXPORT_SYMBOL sound/soc/sof/snd-sof 0xfa5b83e7 snd_sof_ipc_free +EXPORT_SYMBOL sound/soc/sof/snd-sof 0xfe1b8b25 snd_sof_runtime_suspend +EXPORT_SYMBOL sound/soc/sof/snd-sof 0xfe27c597 snd_sof_load_firmware_memcpy +EXPORT_SYMBOL sound/soundcore 0x01891a0e sound_class +EXPORT_SYMBOL sound/soundcore 0x173356c2 register_sound_special +EXPORT_SYMBOL sound/soundcore 0x4379d4e1 register_sound_mixer +EXPORT_SYMBOL sound/soundcore 0x7afc9d8a unregister_sound_mixer +EXPORT_SYMBOL sound/soundcore 0x8de9dfe7 register_sound_dsp +EXPORT_SYMBOL sound/soundcore 0x99c95fa5 unregister_sound_special +EXPORT_SYMBOL sound/soundcore 0xbdd0ab41 register_sound_special_device +EXPORT_SYMBOL sound/soundcore 0xcd083b10 unregister_sound_dsp +EXPORT_SYMBOL sound/synth/emux/snd-emux-synth 0x0102d872 snd_emux_register +EXPORT_SYMBOL sound/synth/emux/snd-emux-synth 0x3353c529 snd_emux_unlock_voice +EXPORT_SYMBOL sound/synth/emux/snd-emux-synth 0x39b0474c snd_emux_terminate_all +EXPORT_SYMBOL sound/synth/emux/snd-emux-synth 0x655cb202 snd_sf_linear_to_log +EXPORT_SYMBOL sound/synth/emux/snd-emux-synth 0x89d7a066 snd_emux_lock_voice +EXPORT_SYMBOL sound/synth/emux/snd-emux-synth 0xe622f6b4 snd_emux_new +EXPORT_SYMBOL sound/synth/emux/snd-emux-synth 0xed11d8cd snd_emux_free +EXPORT_SYMBOL sound/synth/snd-util-mem 0x293ac667 snd_util_mem_free +EXPORT_SYMBOL sound/synth/snd-util-mem 0x34ac95ae snd_util_memhdr_new +EXPORT_SYMBOL sound/synth/snd-util-mem 0x48f920c4 __snd_util_mem_alloc +EXPORT_SYMBOL sound/synth/snd-util-mem 0x7d95566f snd_util_mem_avail +EXPORT_SYMBOL sound/synth/snd-util-mem 0x85659341 snd_util_mem_alloc +EXPORT_SYMBOL sound/synth/snd-util-mem 0x97bb24f2 __snd_util_memblk_new +EXPORT_SYMBOL sound/synth/snd-util-mem 0x9db98086 __snd_util_mem_free +EXPORT_SYMBOL sound/synth/snd-util-mem 0xe2935f8c snd_util_memhdr_free +EXPORT_SYMBOL sound/usb/snd-usbmidi-lib 0x16756dc0 snd_usbmidi_input_start +EXPORT_SYMBOL sound/usb/snd-usbmidi-lib 0x63343b1d snd_usbmidi_input_stop +EXPORT_SYMBOL sound/usb/snd-usbmidi-lib 0xb2af19e1 snd_usbmidi_resume +EXPORT_SYMBOL sound/usb/snd-usbmidi-lib 0xbed43a41 snd_usbmidi_suspend +EXPORT_SYMBOL sound/usb/snd-usbmidi-lib 0xd9d2bb03 snd_usbmidi_disconnect +EXPORT_SYMBOL sound/usb/snd-usbmidi-lib 0xdb7407ae __snd_usbmidi_create +EXPORT_SYMBOL ubuntu/hio/hio 0x0634485f ssd_set_otprotect +EXPORT_SYMBOL ubuntu/hio/hio 0x065109a3 ssd_register_event_notifier +EXPORT_SYMBOL ubuntu/hio/hio 0x15e0c6ec ssd_get_label +EXPORT_SYMBOL ubuntu/hio/hio 0x24c58393 ssd_get_pciaddr +EXPORT_SYMBOL ubuntu/hio/hio 0x28c47449 ssd_bm_status +EXPORT_SYMBOL ubuntu/hio/hio 0x56813db9 ssd_get_temperature +EXPORT_SYMBOL ubuntu/hio/hio 0x81bb5f81 ssd_unregister_event_notifier +EXPORT_SYMBOL ubuntu/hio/hio 0x8a684252 ssd_reset +EXPORT_SYMBOL ubuntu/hio/hio 0xf2c26db2 ssd_get_version +EXPORT_SYMBOL ubuntu/hio/hio 0xfe8097fb ssd_set_wmode +EXPORT_SYMBOL ubuntu/hio/hio 0xfe901c7e ssd_submit_pbio +EXPORT_SYMBOL vmlinux 0x0000453b no_seek_end_llseek +EXPORT_SYMBOL vmlinux 0x001eece4 pci_get_slot +EXPORT_SYMBOL vmlinux 0x00323825 xfrm_state_check_expire +EXPORT_SYMBOL vmlinux 0x004a1eac ipv6_push_frag_opts +EXPORT_SYMBOL vmlinux 0x0053e2ca touch_buffer +EXPORT_SYMBOL vmlinux 0x0076cf09 stream_open +EXPORT_SYMBOL vmlinux 0x009801cf d_instantiate_new +EXPORT_SYMBOL vmlinux 0x00a2ede0 cdrom_mode_select +EXPORT_SYMBOL vmlinux 0x00a4b044 amd_iommu_deactivate_guest_mode +EXPORT_SYMBOL vmlinux 0x00a5db75 mpage_writepage +EXPORT_SYMBOL vmlinux 0x00ae6aa1 param_ops_byte +EXPORT_SYMBOL vmlinux 0x00b4e615 posix_acl_equiv_mode +EXPORT_SYMBOL vmlinux 0x00cbd9b7 iov_iter_kvec +EXPORT_SYMBOL vmlinux 0x00ce8411 dmaengine_get_unmap_data +EXPORT_SYMBOL vmlinux 0x00d31162 jbd2_journal_update_sb_errno +EXPORT_SYMBOL vmlinux 0x00d7e722 vme_lm_count +EXPORT_SYMBOL vmlinux 0x00dbfa03 devm_input_allocate_device +EXPORT_SYMBOL vmlinux 0x00e07efc mmc_can_erase +EXPORT_SYMBOL vmlinux 0x00fcdd89 mpage_writepages +EXPORT_SYMBOL vmlinux 0x01000e51 schedule +EXPORT_SYMBOL vmlinux 0x011b8da7 dquot_transfer +EXPORT_SYMBOL vmlinux 0x011ca083 convert_art_to_tsc +EXPORT_SYMBOL vmlinux 0x013f26ae dma_fence_get_stub +EXPORT_SYMBOL vmlinux 0x0147812c kblockd_mod_delayed_work_on +EXPORT_SYMBOL vmlinux 0x0150cb3d blk_execute_rq +EXPORT_SYMBOL vmlinux 0x01553371 vm_brk_flags +EXPORT_SYMBOL vmlinux 0x01580090 acpi_dev_hid_uid_match +EXPORT_SYMBOL vmlinux 0x015af7f4 system_state +EXPORT_SYMBOL vmlinux 0x01757935 rdmacg_register_device +EXPORT_SYMBOL vmlinux 0x01763b5d sk_alloc +EXPORT_SYMBOL vmlinux 0x017de3d5 nr_cpu_ids +EXPORT_SYMBOL vmlinux 0x017ed0aa md_finish_reshape +EXPORT_SYMBOL vmlinux 0x018574a1 mb_cache_entry_delete +EXPORT_SYMBOL vmlinux 0x0188cd88 vme_alloc_consistent +EXPORT_SYMBOL vmlinux 0x01b6865c xa_get_mark +EXPORT_SYMBOL vmlinux 0x01bf55fc paddr_vmcoreinfo_note +EXPORT_SYMBOL vmlinux 0x01db9029 setattr_copy +EXPORT_SYMBOL vmlinux 0x01e84445 pcie_capability_read_word +EXPORT_SYMBOL vmlinux 0x020dbf27 bitmap_alloc +EXPORT_SYMBOL vmlinux 0x02124474 ip_send_check +EXPORT_SYMBOL vmlinux 0x0214753a xp_set_rxq_info +EXPORT_SYMBOL vmlinux 0x0215a233 __breadahead +EXPORT_SYMBOL vmlinux 0x0215ef48 mmc_wait_for_req +EXPORT_SYMBOL vmlinux 0x0228925f iowrite64_hi_lo +EXPORT_SYMBOL vmlinux 0x02293ac3 dma_fence_chain_ops +EXPORT_SYMBOL vmlinux 0x022f07c4 tc_setup_flow_action +EXPORT_SYMBOL vmlinux 0x0237b57a arch_unregister_cpu +EXPORT_SYMBOL vmlinux 0x023cb756 get_user_pages_remote +EXPORT_SYMBOL vmlinux 0x023d1b90 wrmsr_on_cpu +EXPORT_SYMBOL vmlinux 0x02448893 xfrm_state_update +EXPORT_SYMBOL vmlinux 0x025483b1 set_current_groups +EXPORT_SYMBOL vmlinux 0x025b60ca genphy_read_abilities +EXPORT_SYMBOL vmlinux 0x026b1cfe simple_get_link +EXPORT_SYMBOL vmlinux 0x02713038 phy_device_remove +EXPORT_SYMBOL vmlinux 0x02739d79 agp_generic_insert_memory +EXPORT_SYMBOL vmlinux 0x0274dc2b netif_get_num_default_rss_queues +EXPORT_SYMBOL vmlinux 0x027b4ede configfs_unregister_default_group +EXPORT_SYMBOL vmlinux 0x02819236 kern_path +EXPORT_SYMBOL vmlinux 0x0296695f refcount_warn_saturate +EXPORT_SYMBOL vmlinux 0x02a18c74 nf_conntrack_destroy +EXPORT_SYMBOL vmlinux 0x02a24b8d tcf_action_update_stats +EXPORT_SYMBOL vmlinux 0x02b8ab42 sg_copy_to_buffer +EXPORT_SYMBOL vmlinux 0x02c656b6 acpi_enable_all_runtime_gpes +EXPORT_SYMBOL vmlinux 0x02ea111e scsi_driverbyte_string +EXPORT_SYMBOL vmlinux 0x0306e02c __alloc_disk_node +EXPORT_SYMBOL vmlinux 0x030c4859 mmc_command_done +EXPORT_SYMBOL vmlinux 0x03144975 blkdev_compat_ptr_ioctl +EXPORT_SYMBOL vmlinux 0x0334da4e scsi_command_size_tbl +EXPORT_SYMBOL vmlinux 0x033e8c1b pci_add_new_bus +EXPORT_SYMBOL vmlinux 0x035c1a05 param_set_byte +EXPORT_SYMBOL vmlinux 0x0366307a console_suspend_enabled +EXPORT_SYMBOL vmlinux 0x037a0cba kfree +EXPORT_SYMBOL vmlinux 0x037dc67f __invalidate_device +EXPORT_SYMBOL vmlinux 0x03815f35 ledtrig_disk_activity +EXPORT_SYMBOL vmlinux 0x039690f8 inet_frag_pull_head +EXPORT_SYMBOL vmlinux 0x0397edd5 fb_edid_to_monspecs +EXPORT_SYMBOL vmlinux 0x039d8e26 pin_user_pages +EXPORT_SYMBOL vmlinux 0x03cba478 mdiobus_unregister_device +EXPORT_SYMBOL vmlinux 0x03d9be14 security_tun_dev_attach +EXPORT_SYMBOL vmlinux 0x03fd2571 vm_unmap_ram +EXPORT_SYMBOL vmlinux 0x0416da24 intel_gmch_probe +EXPORT_SYMBOL vmlinux 0x041b0e00 xfrm4_protocol_deregister +EXPORT_SYMBOL vmlinux 0x0420b07f kmem_cache_alloc_node +EXPORT_SYMBOL vmlinux 0x04401cd0 mmc_can_gpio_ro +EXPORT_SYMBOL vmlinux 0x04474af1 buffer_migrate_page +EXPORT_SYMBOL vmlinux 0x04482cdb __refrigerator +EXPORT_SYMBOL vmlinux 0x046e43bb sock_no_socketpair +EXPORT_SYMBOL vmlinux 0x047b41a2 sync_inodes_sb +EXPORT_SYMBOL vmlinux 0x0484c6c4 acpi_enter_sleep_state_prep +EXPORT_SYMBOL vmlinux 0x04863e28 hdmi_audio_infoframe_pack_only +EXPORT_SYMBOL vmlinux 0x049d655f dev_load +EXPORT_SYMBOL vmlinux 0x049d6b7c pci_clear_mwi +EXPORT_SYMBOL vmlinux 0x049ed353 generic_iommu_put_resv_regions +EXPORT_SYMBOL vmlinux 0x04a2cc6f dev_uc_unsync +EXPORT_SYMBOL vmlinux 0x04af47cd pci_find_parent_resource +EXPORT_SYMBOL vmlinux 0x04c62fd7 __memset +EXPORT_SYMBOL vmlinux 0x04d61ca5 kmem_cache_alloc_node_trace +EXPORT_SYMBOL vmlinux 0x04d8c750 release_perfctr_nmi +EXPORT_SYMBOL vmlinux 0x04ea56f9 _kstrtol +EXPORT_SYMBOL vmlinux 0x04ea5d10 ksize +EXPORT_SYMBOL vmlinux 0x04f99395 uart_register_driver +EXPORT_SYMBOL vmlinux 0x050877b9 dmi_first_match +EXPORT_SYMBOL vmlinux 0x05192e03 pci_find_bus +EXPORT_SYMBOL vmlinux 0x051d58e8 dma_fence_wait_any_timeout +EXPORT_SYMBOL vmlinux 0x05240ee7 percpu_counter_batch +EXPORT_SYMBOL vmlinux 0x053345ee devm_devfreq_remove_device +EXPORT_SYMBOL vmlinux 0x05380a85 scsi_free_host_dev +EXPORT_SYMBOL vmlinux 0x053c7e32 padata_stop +EXPORT_SYMBOL vmlinux 0x054496b4 schedule_timeout_interruptible +EXPORT_SYMBOL vmlinux 0x0558f037 devm_backlight_device_unregister +EXPORT_SYMBOL vmlinux 0x055e77e8 jiffies_64 +EXPORT_SYMBOL vmlinux 0x05875fe3 pci_get_class +EXPORT_SYMBOL vmlinux 0x059a1c69 crypto_sha512_finup +EXPORT_SYMBOL vmlinux 0x059d199d compat_sock_common_getsockopt +EXPORT_SYMBOL vmlinux 0x059d3d32 phy_queue_state_machine +EXPORT_SYMBOL vmlinux 0x05b08c83 inet_gro_complete +EXPORT_SYMBOL vmlinux 0x05c55af3 user_path_at_empty +EXPORT_SYMBOL vmlinux 0x05c7aff9 mr_mfc_find_any_parent +EXPORT_SYMBOL vmlinux 0x06052f8d __memmove +EXPORT_SYMBOL vmlinux 0x06065570 tcp_sock_set_syncnt +EXPORT_SYMBOL vmlinux 0x0608b0b9 __genphy_config_aneg +EXPORT_SYMBOL vmlinux 0x060ba97c gen_pool_free_owner +EXPORT_SYMBOL vmlinux 0x061651be strcat +EXPORT_SYMBOL vmlinux 0x061d8dc5 ip6tun_encaps +EXPORT_SYMBOL vmlinux 0x062784af pcie_port_service_unregister +EXPORT_SYMBOL vmlinux 0x0634100a bitmap_parselist_user +EXPORT_SYMBOL vmlinux 0x065246b8 frame_vector_create +EXPORT_SYMBOL vmlinux 0x067b8285 nf_log_unregister +EXPORT_SYMBOL vmlinux 0x067bb98a security_sb_set_mnt_opts +EXPORT_SYMBOL vmlinux 0x06a86bc1 iowrite16 +EXPORT_SYMBOL vmlinux 0x06b6c604 scsi_remove_host +EXPORT_SYMBOL vmlinux 0x06bd88b5 ucs2_strnlen +EXPORT_SYMBOL vmlinux 0x06c5f66f cdev_set_parent +EXPORT_SYMBOL vmlinux 0x06c8f2de slhc_compress +EXPORT_SYMBOL vmlinux 0x06d95ad7 twl6040_get_pll +EXPORT_SYMBOL vmlinux 0x06e16786 scsi_vpd_tpg_id +EXPORT_SYMBOL vmlinux 0x06efa04c misc_deregister +EXPORT_SYMBOL vmlinux 0x06fd8548 jbd2_journal_load +EXPORT_SYMBOL vmlinux 0x070424bc agp_unbind_memory +EXPORT_SYMBOL vmlinux 0x0717f017 vc_resize +EXPORT_SYMBOL vmlinux 0x071eae17 d_alloc_name +EXPORT_SYMBOL vmlinux 0x072f901c vme_master_rmw +EXPORT_SYMBOL vmlinux 0x07381990 mmc_is_req_done +EXPORT_SYMBOL vmlinux 0x073ae854 fib_notifier_ops_unregister +EXPORT_SYMBOL vmlinux 0x0745a981 xa_erase +EXPORT_SYMBOL vmlinux 0x0749b55e vc_cons +EXPORT_SYMBOL vmlinux 0x0782f582 tcf_idr_cleanup +EXPORT_SYMBOL vmlinux 0x07930b3e qdisc_reset +EXPORT_SYMBOL vmlinux 0x079bb7c7 acpi_match_device_ids +EXPORT_SYMBOL vmlinux 0x07a1ae54 netlink_set_err +EXPORT_SYMBOL vmlinux 0x07a454c7 pnp_release_card_device +EXPORT_SYMBOL vmlinux 0x07a890c8 fb_alloc_cmap +EXPORT_SYMBOL vmlinux 0x07ac4b34 security_path_mknod +EXPORT_SYMBOL vmlinux 0x07bf4e8f ipv6_mc_check_icmpv6 +EXPORT_SYMBOL vmlinux 0x07cc4a5d printk_timed_ratelimit +EXPORT_SYMBOL vmlinux 0x07ceeac9 panic_notifier_list +EXPORT_SYMBOL vmlinux 0x07dd74b2 input_inject_event +EXPORT_SYMBOL vmlinux 0x07e9bf94 skb_mac_gso_segment +EXPORT_SYMBOL vmlinux 0x07f57478 pci_unmap_iospace +EXPORT_SYMBOL vmlinux 0x0805f2c8 ecryptfs_get_auth_tok_key +EXPORT_SYMBOL vmlinux 0x080b1573 remap_pfn_range +EXPORT_SYMBOL vmlinux 0x08162c74 free_bucket_spinlocks +EXPORT_SYMBOL vmlinux 0x081e45fe make_bad_inode +EXPORT_SYMBOL vmlinux 0x08249512 iwe_stream_add_point +EXPORT_SYMBOL vmlinux 0x082c3213 pci_root_buses +EXPORT_SYMBOL vmlinux 0x083eb21c rfkill_unregister +EXPORT_SYMBOL vmlinux 0x0841271b km_policy_notify +EXPORT_SYMBOL vmlinux 0x085135df mmc_detect_card_removed +EXPORT_SYMBOL vmlinux 0x0882a449 security_xfrm_policy_alloc +EXPORT_SYMBOL vmlinux 0x088f08bb nd_namespace_blk_validate +EXPORT_SYMBOL vmlinux 0x089fbc5f crypto_sha512_update +EXPORT_SYMBOL vmlinux 0x08a2b40a udp_set_csum +EXPORT_SYMBOL vmlinux 0x08a4a9d5 skb_recv_datagram +EXPORT_SYMBOL vmlinux 0x08af5015 genl_register_family +EXPORT_SYMBOL vmlinux 0x08be823d ptp_clock_index +EXPORT_SYMBOL vmlinux 0x08c70b7e kthread_create_worker_on_cpu +EXPORT_SYMBOL vmlinux 0x08da7f39 pfifo_fast_ops +EXPORT_SYMBOL vmlinux 0x08df26b9 tcf_exts_dump +EXPORT_SYMBOL vmlinux 0x092e26bf acpi_remove_address_space_handler +EXPORT_SYMBOL vmlinux 0x093712e5 acpi_purge_cached_objects +EXPORT_SYMBOL vmlinux 0x093b2a66 fbcon_rotate_cw +EXPORT_SYMBOL vmlinux 0x094038d4 get_tz_trend +EXPORT_SYMBOL vmlinux 0x0944c43f node_states +EXPORT_SYMBOL vmlinux 0x09460b11 __remove_inode_hash +EXPORT_SYMBOL vmlinux 0x0951e73c eth_prepare_mac_addr_change +EXPORT_SYMBOL vmlinux 0x09682235 down_timeout +EXPORT_SYMBOL vmlinux 0x09769037 dmt_modes +EXPORT_SYMBOL vmlinux 0x0978ce61 inet_sendpage +EXPORT_SYMBOL vmlinux 0x097af021 neigh_proc_dointvec_jiffies +EXPORT_SYMBOL vmlinux 0x097cbbab mmc_wait_for_cmd +EXPORT_SYMBOL vmlinux 0x09877c98 scsi_device_lookup_by_target +EXPORT_SYMBOL vmlinux 0x098b71c6 fb_dealloc_cmap +EXPORT_SYMBOL vmlinux 0x09919f97 posix_acl_chmod +EXPORT_SYMBOL vmlinux 0x09a3fd49 __find_get_block +EXPORT_SYMBOL vmlinux 0x09ad2025 tcp_child_process +EXPORT_SYMBOL vmlinux 0x09c8eb55 font_vga_8x16 +EXPORT_SYMBOL vmlinux 0x09cbdca5 fb_validate_mode +EXPORT_SYMBOL vmlinux 0x09d44df9 in_lock_functions +EXPORT_SYMBOL vmlinux 0x09da0ba4 xa_set_mark +EXPORT_SYMBOL vmlinux 0x09f3bdb6 tcf_idrinfo_destroy +EXPORT_SYMBOL vmlinux 0x0a064745 generic_listxattr +EXPORT_SYMBOL vmlinux 0x0a072c9c __skb_recv_datagram +EXPORT_SYMBOL vmlinux 0x0a0bd171 xfrm_state_lookup_byaddr +EXPORT_SYMBOL vmlinux 0x0a0ebc08 __xa_cmpxchg +EXPORT_SYMBOL vmlinux 0x0a156bf9 bio_alloc_bioset +EXPORT_SYMBOL vmlinux 0x0a1dbc76 tcp_rx_skb_cache_key +EXPORT_SYMBOL vmlinux 0x0a291a83 dma_alloc_attrs +EXPORT_SYMBOL vmlinux 0x0a292872 reservation_seqcount_class +EXPORT_SYMBOL vmlinux 0x0a320c6c pnp_stop_dev +EXPORT_SYMBOL vmlinux 0x0a42932f tty_set_operations +EXPORT_SYMBOL vmlinux 0x0a4ab3fa xsk_clear_tx_need_wakeup +EXPORT_SYMBOL vmlinux 0x0a502767 simple_fill_super +EXPORT_SYMBOL vmlinux 0x0a55cb1c tcp_filter +EXPORT_SYMBOL vmlinux 0x0a5d7114 import_iovec +EXPORT_SYMBOL vmlinux 0x0a68c0a4 devfreq_update_status +EXPORT_SYMBOL vmlinux 0x0a770832 register_memory_notifier +EXPORT_SYMBOL vmlinux 0x0a8fdfe8 try_module_get +EXPORT_SYMBOL vmlinux 0x0a9524b1 phy_get_eee_err +EXPORT_SYMBOL vmlinux 0x0a97bf66 nf_register_sockopt +EXPORT_SYMBOL vmlinux 0x0a98ecdd inode_set_bytes +EXPORT_SYMBOL vmlinux 0x0aa309cf synchronize_hardirq +EXPORT_SYMBOL vmlinux 0x0aaccc92 pci_remap_iospace +EXPORT_SYMBOL vmlinux 0x0ab2255b mnt_set_expiry +EXPORT_SYMBOL vmlinux 0x0aceac46 blk_rq_unmap_user +EXPORT_SYMBOL vmlinux 0x0acf7679 dma_issue_pending_all +EXPORT_SYMBOL vmlinux 0x0ad10eb8 _raw_read_unlock_bh +EXPORT_SYMBOL vmlinux 0x0adbd3e9 bd_set_size +EXPORT_SYMBOL vmlinux 0x0af20eae down_read_interruptible +EXPORT_SYMBOL vmlinux 0x0b000546 uart_suspend_port +EXPORT_SYMBOL vmlinux 0x0b119f97 xfrm6_protocol_register +EXPORT_SYMBOL vmlinux 0x0b19c0e3 kernel_write +EXPORT_SYMBOL vmlinux 0x0b1beb31 vmalloc_32_user +EXPORT_SYMBOL vmlinux 0x0b1cdbb1 sock_sendmsg +EXPORT_SYMBOL vmlinux 0x0b247771 __scm_destroy +EXPORT_SYMBOL vmlinux 0x0b26b8c8 acpi_run_osc +EXPORT_SYMBOL vmlinux 0x0b290ada dma_fence_chain_walk +EXPORT_SYMBOL vmlinux 0x0b2cb334 psched_ratecfg_precompute +EXPORT_SYMBOL vmlinux 0x0b30f0be set_security_override_from_ctx +EXPORT_SYMBOL vmlinux 0x0b36fffb xfrm4_protocol_register +EXPORT_SYMBOL vmlinux 0x0b3ac53e clk_add_alias +EXPORT_SYMBOL vmlinux 0x0b3f5950 alloc_pages_current +EXPORT_SYMBOL vmlinux 0x0b532ac2 pipe_lock +EXPORT_SYMBOL vmlinux 0x0b637410 cr4_update_irqsoff +EXPORT_SYMBOL vmlinux 0x0b654fc7 kfree_skb_list +EXPORT_SYMBOL vmlinux 0x0b742fd7 simple_strtol +EXPORT_SYMBOL vmlinux 0x0ba41b82 dentry_path_raw +EXPORT_SYMBOL vmlinux 0x0bc2208b xfrm_input_resume +EXPORT_SYMBOL vmlinux 0x0bc477a2 irq_set_irq_type +EXPORT_SYMBOL vmlinux 0x0bd7f130 mdio_bus_type +EXPORT_SYMBOL vmlinux 0x0bf3b907 ilookup5_nowait +EXPORT_SYMBOL vmlinux 0x0c0f79af ZSTD_getDictID_fromFrame +EXPORT_SYMBOL vmlinux 0x0c105f9c scsi_host_lookup +EXPORT_SYMBOL vmlinux 0x0c17f924 skb_dequeue +EXPORT_SYMBOL vmlinux 0x0c25ec48 secure_tcpv6_seq +EXPORT_SYMBOL vmlinux 0x0c38a2aa __check_sticky +EXPORT_SYMBOL vmlinux 0x0c38f935 pci_free_irq_vectors +EXPORT_SYMBOL vmlinux 0x0c4d58a4 nf_ip_checksum +EXPORT_SYMBOL vmlinux 0x0c5f179a agp_generic_alloc_page +EXPORT_SYMBOL vmlinux 0x0c671f49 cros_ec_query_all +EXPORT_SYMBOL vmlinux 0x0c6bdc3f vme_master_read +EXPORT_SYMBOL vmlinux 0x0c7c17f6 ip_mc_inc_group +EXPORT_SYMBOL vmlinux 0x0c87aa92 blk_queue_split +EXPORT_SYMBOL vmlinux 0x0c9f77d9 pm8606_osc_enable +EXPORT_SYMBOL vmlinux 0x0cb264a1 security_lock_kernel_down +EXPORT_SYMBOL vmlinux 0x0cc4b4b6 crc_ccitt_false +EXPORT_SYMBOL vmlinux 0x0ccc9811 __cleancache_get_page +EXPORT_SYMBOL vmlinux 0x0cd5835b ipv6_flowlabel_exclusive +EXPORT_SYMBOL vmlinux 0x0ce13244 vme_new_dma_list +EXPORT_SYMBOL vmlinux 0x0ce19729 mb_cache_entry_touch +EXPORT_SYMBOL vmlinux 0x0d07f543 get_anon_bdev +EXPORT_SYMBOL vmlinux 0x0d2509ce __dev_kfree_skb_any +EXPORT_SYMBOL vmlinux 0x0d48cffb vme_unregister_bridge +EXPORT_SYMBOL vmlinux 0x0d4b4664 compat_ip_setsockopt +EXPORT_SYMBOL vmlinux 0x0d4d403c end_buffer_read_sync +EXPORT_SYMBOL vmlinux 0x0d542439 __ipv6_addr_type +EXPORT_SYMBOL vmlinux 0x0d61eeee __bitmap_subset +EXPORT_SYMBOL vmlinux 0x0d7fa8bb generic_block_fiemap +EXPORT_SYMBOL vmlinux 0x0d8b498a phy_write_mmd +EXPORT_SYMBOL vmlinux 0x0d9d0c14 __module_put_and_exit +EXPORT_SYMBOL vmlinux 0x0d9dcbc8 invalidate_mapping_pages +EXPORT_SYMBOL vmlinux 0x0daf9fee get_tree_bdev +EXPORT_SYMBOL vmlinux 0x0dcbe840 csum_and_copy_to_iter +EXPORT_SYMBOL vmlinux 0x0deaa19e reuseport_detach_sock +EXPORT_SYMBOL vmlinux 0x0e17678a siphash_4u64 +EXPORT_SYMBOL vmlinux 0x0e23b37f alloc_cpumask_var_node +EXPORT_SYMBOL vmlinux 0x0e27a2dd ZSTD_initCCtx +EXPORT_SYMBOL vmlinux 0x0e2c46da ip_sock_set_tos +EXPORT_SYMBOL vmlinux 0x0e726576 page_cache_next_miss +EXPORT_SYMBOL vmlinux 0x0e74ad2d utf8ncursor +EXPORT_SYMBOL vmlinux 0x0e780017 iommu_put_dma_cookie +EXPORT_SYMBOL vmlinux 0x0e924440 fget +EXPORT_SYMBOL vmlinux 0x0ebd6aa2 set_pages_array_wc +EXPORT_SYMBOL vmlinux 0x0ec5babe vme_dma_free +EXPORT_SYMBOL vmlinux 0x0f05c7b8 __x86_indirect_thunk_r15 +EXPORT_SYMBOL vmlinux 0x0f09cc34 schedule_timeout_killable +EXPORT_SYMBOL vmlinux 0x0f25e7cd flow_rule_match_enc_opts +EXPORT_SYMBOL vmlinux 0x0f2ea6b3 ipv6_dev_mc_dec +EXPORT_SYMBOL vmlinux 0x0f37ca89 lockref_put_not_zero +EXPORT_SYMBOL vmlinux 0x0f3ad133 phy_disconnect +EXPORT_SYMBOL vmlinux 0x0f50739c __dst_destroy_metrics_generic +EXPORT_SYMBOL vmlinux 0x0f5546b3 remove_arg_zero +EXPORT_SYMBOL vmlinux 0x0f5d4167 watchdog_register_governor +EXPORT_SYMBOL vmlinux 0x0f63957a elv_bio_merge_ok +EXPORT_SYMBOL vmlinux 0x0f6c5f2e cros_ec_check_result +EXPORT_SYMBOL vmlinux 0x0f6d07d4 input_register_device +EXPORT_SYMBOL vmlinux 0x0f86f560 kthread_delayed_work_timer_fn +EXPORT_SYMBOL vmlinux 0x0f97dd0d blk_pm_runtime_init +EXPORT_SYMBOL vmlinux 0x0f99bb98 mr_dump +EXPORT_SYMBOL vmlinux 0x0f99fb75 tcf_exts_num_actions +EXPORT_SYMBOL vmlinux 0x0fab1ab0 hdmi_spd_infoframe_pack +EXPORT_SYMBOL vmlinux 0x0faef0ed __tasklet_schedule +EXPORT_SYMBOL vmlinux 0x0fb2f8a4 mktime64 +EXPORT_SYMBOL vmlinux 0x0fb36fdf rproc_of_resm_mem_entry_init +EXPORT_SYMBOL vmlinux 0x0fb8a4c4 bdev_dax_pgoff +EXPORT_SYMBOL vmlinux 0x0fc07eb3 generic_remap_file_range_prep +EXPORT_SYMBOL vmlinux 0x0fc16a37 ndo_dflt_fdb_dump +EXPORT_SYMBOL vmlinux 0x0fc31550 tcp_check_req +EXPORT_SYMBOL vmlinux 0x0fc794f3 mmc_free_host +EXPORT_SYMBOL vmlinux 0x0fce00d6 ipv6_getsockopt +EXPORT_SYMBOL vmlinux 0x0fd902db mb_cache_entry_create +EXPORT_SYMBOL vmlinux 0x0fe09a99 xfrm_state_flush +EXPORT_SYMBOL vmlinux 0x0fe59c7e netdev_upper_dev_link +EXPORT_SYMBOL vmlinux 0x0fe9638b dev_get_by_name_rcu +EXPORT_SYMBOL vmlinux 0x0ff80f59 zalloc_cpumask_var +EXPORT_SYMBOL vmlinux 0x0fff5afc time64_to_tm +EXPORT_SYMBOL vmlinux 0x1002f966 rtc_add_group +EXPORT_SYMBOL vmlinux 0x100fbe69 vm_zone_stat +EXPORT_SYMBOL vmlinux 0x102bed66 cpu_info +EXPORT_SYMBOL vmlinux 0x1035c7c2 __release_region +EXPORT_SYMBOL vmlinux 0x104c456e set_wb_congested +EXPORT_SYMBOL vmlinux 0x1057a279 bsearch +EXPORT_SYMBOL vmlinux 0x105f3e9f inet6_register_icmp_sender +EXPORT_SYMBOL vmlinux 0x1068004b gf128mul_bbe +EXPORT_SYMBOL vmlinux 0x1078c5a5 pcibios_resource_to_bus +EXPORT_SYMBOL vmlinux 0x107e5878 zlib_inflateEnd +EXPORT_SYMBOL vmlinux 0x10817ddc init_special_inode +EXPORT_SYMBOL vmlinux 0x10bf91bb blk_queue_io_opt +EXPORT_SYMBOL vmlinux 0x10c064d0 finish_no_open +EXPORT_SYMBOL vmlinux 0x10c3f57e __gnet_stats_copy_queue +EXPORT_SYMBOL vmlinux 0x10c65a04 genphy_restart_aneg +EXPORT_SYMBOL vmlinux 0x10d9f885 scsi_sense_desc_find +EXPORT_SYMBOL vmlinux 0x10fbe0c2 flow_rule_match_ipv4_addrs +EXPORT_SYMBOL vmlinux 0x11089ac7 _ctype +EXPORT_SYMBOL vmlinux 0x110ccdd5 alloc_anon_inode +EXPORT_SYMBOL vmlinux 0x1137cc7f dst_release_immediate +EXPORT_SYMBOL vmlinux 0x115c2b89 d_path +EXPORT_SYMBOL vmlinux 0x1163f0a7 blk_max_low_pfn +EXPORT_SYMBOL vmlinux 0x1166eff1 vme_init_bridge +EXPORT_SYMBOL vmlinux 0x117093be qdisc_class_hash_init +EXPORT_SYMBOL vmlinux 0x11b86f2d __x86_retpoline_rbp +EXPORT_SYMBOL vmlinux 0x11d64668 remove_proc_subtree +EXPORT_SYMBOL vmlinux 0x11e0ec41 dm_read_arg +EXPORT_SYMBOL vmlinux 0x11e30762 chacha_block_generic +EXPORT_SYMBOL vmlinux 0x11e59948 neigh_xmit +EXPORT_SYMBOL vmlinux 0x11eca23c mini_qdisc_pair_block_init +EXPORT_SYMBOL vmlinux 0x11f47d8c utf8_strncmp +EXPORT_SYMBOL vmlinux 0x11f7ed4c hex_to_bin +EXPORT_SYMBOL vmlinux 0x120b336a __rb_insert_augmented +EXPORT_SYMBOL vmlinux 0x1218b9d9 get_unmapped_area +EXPORT_SYMBOL vmlinux 0x121c0291 sync_inode +EXPORT_SYMBOL vmlinux 0x12586cd5 pci_save_state +EXPORT_SYMBOL vmlinux 0x12600d6a md_write_end +EXPORT_SYMBOL vmlinux 0x1278221d ZSTD_compressBegin_usingCDict +EXPORT_SYMBOL vmlinux 0x1289b5dd dquot_quota_on +EXPORT_SYMBOL vmlinux 0x129ace2d i2c_verify_adapter +EXPORT_SYMBOL vmlinux 0x12a07158 md_write_inc +EXPORT_SYMBOL vmlinux 0x12a38747 usleep_range +EXPORT_SYMBOL vmlinux 0x12a84243 devfreq_monitor_start +EXPORT_SYMBOL vmlinux 0x12abdeaf __napi_alloc_skb +EXPORT_SYMBOL vmlinux 0x12cabc89 siphash_2u64 +EXPORT_SYMBOL vmlinux 0x12df3888 param_ops_bint +EXPORT_SYMBOL vmlinux 0x12e26376 scsi_command_normalize_sense +EXPORT_SYMBOL vmlinux 0x12e68554 in6_dev_finish_destroy +EXPORT_SYMBOL vmlinux 0x12f6f69c fb_videomode_to_var +EXPORT_SYMBOL vmlinux 0x12f85137 fc_mount +EXPORT_SYMBOL vmlinux 0x12ffd3e8 input_unregister_handle +EXPORT_SYMBOL vmlinux 0x1305be47 freeze_super +EXPORT_SYMBOL vmlinux 0x130afd75 acpi_get_sleep_type_data +EXPORT_SYMBOL vmlinux 0x13110126 request_resource +EXPORT_SYMBOL vmlinux 0x131a6146 xa_clear_mark +EXPORT_SYMBOL vmlinux 0x13243d4b wl1251_get_platform_data +EXPORT_SYMBOL vmlinux 0x132762eb dev_get_phys_port_id +EXPORT_SYMBOL vmlinux 0x132d9b16 scsi_device_get +EXPORT_SYMBOL vmlinux 0x132e5c3a phy_register_fixup_for_id +EXPORT_SYMBOL vmlinux 0x132f2034 register_netdev +EXPORT_SYMBOL vmlinux 0x1344d7e6 acpi_enable_gpe +EXPORT_SYMBOL vmlinux 0x1346ccd6 lookup_one_len +EXPORT_SYMBOL vmlinux 0x134cdd34 inet_frag_rbtree_purge +EXPORT_SYMBOL vmlinux 0x134ce9ff ex_handler_clear_fs +EXPORT_SYMBOL vmlinux 0x134f04a6 xp_raw_get_data +EXPORT_SYMBOL vmlinux 0x13504086 netif_set_real_num_rx_queues +EXPORT_SYMBOL vmlinux 0x137f3c6a __cpuhp_remove_state_cpuslocked +EXPORT_SYMBOL vmlinux 0x1389619c __max_die_per_package +EXPORT_SYMBOL vmlinux 0x139643b3 mmc_release_host +EXPORT_SYMBOL vmlinux 0x139f2189 __kfifo_alloc +EXPORT_SYMBOL vmlinux 0x13a4f52d t10_pi_type3_crc +EXPORT_SYMBOL vmlinux 0x13ab4586 cdrom_get_last_written +EXPORT_SYMBOL vmlinux 0x13b9a98b of_find_mipi_dsi_host_by_node +EXPORT_SYMBOL vmlinux 0x13c33007 config_item_init_type_name +EXPORT_SYMBOL vmlinux 0x13cdd4f9 inet_csk_reqsk_queue_add +EXPORT_SYMBOL vmlinux 0x13d0adf7 __kfifo_out +EXPORT_SYMBOL vmlinux 0x13f42152 system_entering_hibernation +EXPORT_SYMBOL vmlinux 0x140707bd inc_zone_page_state +EXPORT_SYMBOL vmlinux 0x141271bf acpi_dev_found +EXPORT_SYMBOL vmlinux 0x141ff039 __sk_queue_drop_skb +EXPORT_SYMBOL vmlinux 0x1428e4f0 abx500_mask_and_set_register_interruptible +EXPORT_SYMBOL vmlinux 0x14605535 dma_fence_context_alloc +EXPORT_SYMBOL vmlinux 0x14612408 cdrom_open +EXPORT_SYMBOL vmlinux 0x146289b7 crc16_table +EXPORT_SYMBOL vmlinux 0x1478aeee generic_write_end +EXPORT_SYMBOL vmlinux 0x14964ce0 md_error +EXPORT_SYMBOL vmlinux 0x14aa757a csum_and_copy_from_iter +EXPORT_SYMBOL vmlinux 0x14bad270 tcf_em_unregister +EXPORT_SYMBOL vmlinux 0x14c67e3e tcp_tx_delay_enabled +EXPORT_SYMBOL vmlinux 0x14d61cce dec_node_page_state +EXPORT_SYMBOL vmlinux 0x14e6dbd4 fs_param_is_enum +EXPORT_SYMBOL vmlinux 0x14f4e6f3 netdev_class_create_file_ns +EXPORT_SYMBOL vmlinux 0x14faf9c9 sg_miter_stop +EXPORT_SYMBOL vmlinux 0x14fb2365 cmdline_parts_set +EXPORT_SYMBOL vmlinux 0x14ffa9e1 mipi_dsi_dcs_set_page_address +EXPORT_SYMBOL vmlinux 0x15029f11 mr_mfc_seq_next +EXPORT_SYMBOL vmlinux 0x1508935d bh_submit_read +EXPORT_SYMBOL vmlinux 0x150e3657 _raw_read_lock_bh +EXPORT_SYMBOL vmlinux 0x15174fde nd_integrity_init +EXPORT_SYMBOL vmlinux 0x151f4898 schedule_timeout_uninterruptible +EXPORT_SYMBOL vmlinux 0x1526b301 unix_tot_inflight +EXPORT_SYMBOL vmlinux 0x152e766b skb_append +EXPORT_SYMBOL vmlinux 0x1546dd22 zpool_register_driver +EXPORT_SYMBOL vmlinux 0x154c6338 dm_kcopyd_client_destroy +EXPORT_SYMBOL vmlinux 0x155d3eb2 devfreq_remove_device +EXPORT_SYMBOL vmlinux 0x15613649 tty_port_raise_dtr_rts +EXPORT_SYMBOL vmlinux 0x1582139d registered_fb +EXPORT_SYMBOL vmlinux 0x1585291a generic_delete_inode +EXPORT_SYMBOL vmlinux 0x15a03ea1 shrink_dcache_sb +EXPORT_SYMBOL vmlinux 0x15ba50a6 jiffies +EXPORT_SYMBOL vmlinux 0x15bafe29 unregister_md_cluster_operations +EXPORT_SYMBOL vmlinux 0x15bed7a5 LZ4_decompress_safe_partial +EXPORT_SYMBOL vmlinux 0x15c85de3 mempool_init +EXPORT_SYMBOL vmlinux 0x15f20a10 __ps2_command +EXPORT_SYMBOL vmlinux 0x15f7983f __x86_retpoline_r13 +EXPORT_SYMBOL vmlinux 0x160cb45e __cleancache_init_shared_fs +EXPORT_SYMBOL vmlinux 0x160ea4c8 sfi_disabled +EXPORT_SYMBOL vmlinux 0x16126b85 pci_try_set_mwi +EXPORT_SYMBOL vmlinux 0x1612a5d5 is_acpi_data_node +EXPORT_SYMBOL vmlinux 0x161f1482 set_cached_acl +EXPORT_SYMBOL vmlinux 0x16286538 iowrite64be_lo_hi +EXPORT_SYMBOL vmlinux 0x162893fd hashlen_string +EXPORT_SYMBOL vmlinux 0x162a1445 blk_queue_flag_set +EXPORT_SYMBOL vmlinux 0x16301b34 wrmsrl_on_cpu +EXPORT_SYMBOL vmlinux 0x16316a10 ZSTD_getFrameContentSize +EXPORT_SYMBOL vmlinux 0x165aad23 acpi_processor_notify_smm +EXPORT_SYMBOL vmlinux 0x165ddba9 ethtool_op_get_link +EXPORT_SYMBOL vmlinux 0x1673973a default_llseek +EXPORT_SYMBOL vmlinux 0x16778d54 devfreq_remove_governor +EXPORT_SYMBOL vmlinux 0x167c5967 print_hex_dump +EXPORT_SYMBOL vmlinux 0x167c68d1 phy_init_hw +EXPORT_SYMBOL vmlinux 0x167e7f9d __get_user_1 +EXPORT_SYMBOL vmlinux 0x169938c1 __sysfs_match_string +EXPORT_SYMBOL vmlinux 0x169a972e ip_tunnel_parse_protocol +EXPORT_SYMBOL vmlinux 0x16a7bf6d proc_mkdir_mode +EXPORT_SYMBOL vmlinux 0x16ac7e68 blkdev_issue_write_same +EXPORT_SYMBOL vmlinux 0x16cdc340 acpi_get_table +EXPORT_SYMBOL vmlinux 0x16d07746 fs_param_is_bool +EXPORT_SYMBOL vmlinux 0x16dee44d dma_fence_init +EXPORT_SYMBOL vmlinux 0x16e297c3 bit_wait +EXPORT_SYMBOL vmlinux 0x16e2edf9 jbd2_journal_forget +EXPORT_SYMBOL vmlinux 0x16f31dce ioc_lookup_icq +EXPORT_SYMBOL vmlinux 0x16f32fe4 sched_autogroup_create_attach +EXPORT_SYMBOL vmlinux 0x17068f4a fscrypt_setup_filename +EXPORT_SYMBOL vmlinux 0x170ddf79 acpi_install_notify_handler +EXPORT_SYMBOL vmlinux 0x1722ac44 xfrm6_find_1stfragopt +EXPORT_SYMBOL vmlinux 0x1727dc44 posix_acl_to_xattr +EXPORT_SYMBOL vmlinux 0x1732044b __hw_addr_ref_sync_dev +EXPORT_SYMBOL vmlinux 0x1750afb3 reuseport_detach_prog +EXPORT_SYMBOL vmlinux 0x17544dc6 tcp_rcv_state_process +EXPORT_SYMBOL vmlinux 0x175e33fb dma_spin_lock +EXPORT_SYMBOL vmlinux 0x175ee3b7 pci_restore_state +EXPORT_SYMBOL vmlinux 0x1765ea1f __xa_alloc_cyclic +EXPORT_SYMBOL vmlinux 0x1773fc60 t10_pi_type3_ip +EXPORT_SYMBOL vmlinux 0x1781326a pci_disable_link_state +EXPORT_SYMBOL vmlinux 0x179ce5fa tcp_disconnect +EXPORT_SYMBOL vmlinux 0x17a1a1ac inet_csk_complete_hashdance +EXPORT_SYMBOL vmlinux 0x17be68ca acpi_clear_event +EXPORT_SYMBOL vmlinux 0x17c7fd11 ilookup5 +EXPORT_SYMBOL vmlinux 0x17f341a0 i8042_lock_chip +EXPORT_SYMBOL vmlinux 0x17fdb10d lru_cache_add +EXPORT_SYMBOL vmlinux 0x180b83d7 scsi_set_medium_removal +EXPORT_SYMBOL vmlinux 0x180bc00b genphy_loopback +EXPORT_SYMBOL vmlinux 0x182e3561 __sk_mem_reduce_allocated +EXPORT_SYMBOL vmlinux 0x18345b8e __bitmap_replace +EXPORT_SYMBOL vmlinux 0x1836de90 jbd2_journal_start +EXPORT_SYMBOL vmlinux 0x18372c7d kthread_create_on_node +EXPORT_SYMBOL vmlinux 0x18596f5e neigh_direct_output +EXPORT_SYMBOL vmlinux 0x185bf1c1 blk_queue_segment_boundary +EXPORT_SYMBOL vmlinux 0x185f0de1 unregister_netdevice_notifier_dev_net +EXPORT_SYMBOL vmlinux 0x1867ebec fd_install +EXPORT_SYMBOL vmlinux 0x187a4ecd __tracepoint_read_msr +EXPORT_SYMBOL vmlinux 0x187de5de dquot_claim_space_nodirty +EXPORT_SYMBOL vmlinux 0x18888d00 downgrade_write +EXPORT_SYMBOL vmlinux 0x188ea314 jiffies_to_timespec64 +EXPORT_SYMBOL vmlinux 0x189531d1 tty_vhangup +EXPORT_SYMBOL vmlinux 0x18a0f658 ppp_input +EXPORT_SYMBOL vmlinux 0x18a822d0 pm860x_reg_read +EXPORT_SYMBOL vmlinux 0x18a829df dquot_operations +EXPORT_SYMBOL vmlinux 0x18a9de76 eth_gro_complete +EXPORT_SYMBOL vmlinux 0x18b72573 register_kmmio_probe +EXPORT_SYMBOL vmlinux 0x18da9c53 vga_switcheroo_client_fb_set +EXPORT_SYMBOL vmlinux 0x18e195a0 blk_mq_delay_run_hw_queue +EXPORT_SYMBOL vmlinux 0x18e60984 __do_once_start +EXPORT_SYMBOL vmlinux 0x18efd028 hdmi_drm_infoframe_unpack_only +EXPORT_SYMBOL vmlinux 0x18f0dc72 cdev_init +EXPORT_SYMBOL vmlinux 0x18ff5bd8 acpi_notifier_call_chain +EXPORT_SYMBOL vmlinux 0x193580c6 agp_free_memory +EXPORT_SYMBOL vmlinux 0x1948d8c4 empty_aops +EXPORT_SYMBOL vmlinux 0x194ba2a0 rproc_add_subdev +EXPORT_SYMBOL vmlinux 0x1953c958 mempool_create +EXPORT_SYMBOL vmlinux 0x19567d06 vfio_info_cap_shift +EXPORT_SYMBOL vmlinux 0x1960720b path_nosuid +EXPORT_SYMBOL vmlinux 0x1977f5ef netif_set_real_num_tx_queues +EXPORT_SYMBOL vmlinux 0x1984d421 out_of_line_wait_on_bit +EXPORT_SYMBOL vmlinux 0x198620d7 security_add_mnt_opt +EXPORT_SYMBOL vmlinux 0x19864441 pm860x_bulk_write +EXPORT_SYMBOL vmlinux 0x199ed0cd net_disable_timestamp +EXPORT_SYMBOL vmlinux 0x19a204fe gnet_stats_start_copy +EXPORT_SYMBOL vmlinux 0x19a57b8d i2c_transfer +EXPORT_SYMBOL vmlinux 0x19ab2152 tcf_block_put +EXPORT_SYMBOL vmlinux 0x19ad84f8 nd_btt_probe +EXPORT_SYMBOL vmlinux 0x19afb901 proc_set_user +EXPORT_SYMBOL vmlinux 0x19bd383b security_secmark_refcount_dec +EXPORT_SYMBOL vmlinux 0x19c01a6e tcf_block_put_ext +EXPORT_SYMBOL vmlinux 0x19c48f0b cdev_add +EXPORT_SYMBOL vmlinux 0x19d6ce26 proc_create_data +EXPORT_SYMBOL vmlinux 0x19df99b9 acpi_finish_gpe +EXPORT_SYMBOL vmlinux 0x19eb2fe3 dcb_ieee_getapp_default_prio_mask +EXPORT_SYMBOL vmlinux 0x19f7fa75 tcf_idr_check_alloc +EXPORT_SYMBOL vmlinux 0x1a069b88 udp_lib_setsockopt +EXPORT_SYMBOL vmlinux 0x1a107de2 ZSTD_compressCCtx +EXPORT_SYMBOL vmlinux 0x1a13e3e1 generic_file_readonly_mmap +EXPORT_SYMBOL vmlinux 0x1a1bac9c ZSTD_decompressDCtx +EXPORT_SYMBOL vmlinux 0x1a2adec0 mdiobus_alloc_size +EXPORT_SYMBOL vmlinux 0x1a3c33e1 md_bitmap_unplug +EXPORT_SYMBOL vmlinux 0x1a3f9400 starget_for_each_device +EXPORT_SYMBOL vmlinux 0x1a4254b0 twl6040_clear_bits +EXPORT_SYMBOL vmlinux 0x1a436abe __cleancache_init_fs +EXPORT_SYMBOL vmlinux 0x1a45cb6c acpi_disabled +EXPORT_SYMBOL vmlinux 0x1a6127f4 alloc_file_pseudo +EXPORT_SYMBOL vmlinux 0x1a63af34 vga_switcheroo_process_delayed_switch +EXPORT_SYMBOL vmlinux 0x1a67da7b keyring_search +EXPORT_SYMBOL vmlinux 0x1a74d0ca param_ops_charp +EXPORT_SYMBOL vmlinux 0x1a7cb0ff eisa_driver_unregister +EXPORT_SYMBOL vmlinux 0x1a887aca submit_bio_wait +EXPORT_SYMBOL vmlinux 0x1a89aa2e mount_subtree +EXPORT_SYMBOL vmlinux 0x1a8fb217 dquot_get_next_dqblk +EXPORT_SYMBOL vmlinux 0x1a928195 twl6040_reg_write +EXPORT_SYMBOL vmlinux 0x1a9a433c prandom_u32_state +EXPORT_SYMBOL vmlinux 0x1aa9fba0 vfio_dma_rw +EXPORT_SYMBOL vmlinux 0x1abd9204 scsi_print_result +EXPORT_SYMBOL vmlinux 0x1abe84b5 tcp_create_openreq_child +EXPORT_SYMBOL vmlinux 0x1ac5d3cb strcspn +EXPORT_SYMBOL vmlinux 0x1b015d25 bitmap_parselist +EXPORT_SYMBOL vmlinux 0x1b0622cb sk_ns_capable +EXPORT_SYMBOL vmlinux 0x1b1d4deb tty_hung_up_p +EXPORT_SYMBOL vmlinux 0x1b1f38bf update_devfreq +EXPORT_SYMBOL vmlinux 0x1b215347 get_tree_nodev +EXPORT_SYMBOL vmlinux 0x1b295461 md_wakeup_thread +EXPORT_SYMBOL vmlinux 0x1b2d2217 iter_file_splice_write +EXPORT_SYMBOL vmlinux 0x1b2f844c kset_unregister +EXPORT_SYMBOL vmlinux 0x1b48012d import_single_range +EXPORT_SYMBOL vmlinux 0x1b597b7a swake_up_all +EXPORT_SYMBOL vmlinux 0x1b5d5e00 unregister_shrinker +EXPORT_SYMBOL vmlinux 0x1b6314fd in_aton +EXPORT_SYMBOL vmlinux 0x1b63d6e4 register_mii_timestamper +EXPORT_SYMBOL vmlinux 0x1b700d37 put_vaddr_frames +EXPORT_SYMBOL vmlinux 0x1b777357 rdmacg_unregister_device +EXPORT_SYMBOL vmlinux 0x1b8b95ad i8042_unlock_chip +EXPORT_SYMBOL vmlinux 0x1b9404e7 generic_fadvise +EXPORT_SYMBOL vmlinux 0x1b9671f8 bio_integrity_prep +EXPORT_SYMBOL vmlinux 0x1b9e67cc dcb_getapp +EXPORT_SYMBOL vmlinux 0x1ba2a831 serio_interrupt +EXPORT_SYMBOL vmlinux 0x1ba42f03 scsi_is_target_device +EXPORT_SYMBOL vmlinux 0x1ba59527 __kmalloc_node +EXPORT_SYMBOL vmlinux 0x1bac02c9 ip_mc_leave_group +EXPORT_SYMBOL vmlinux 0x1bb45fe2 __frontswap_load +EXPORT_SYMBOL vmlinux 0x1bb51249 tcp_have_smc +EXPORT_SYMBOL vmlinux 0x1bb865be input_set_abs_params +EXPORT_SYMBOL vmlinux 0x1bc99994 __skb_free_datagram_locked +EXPORT_SYMBOL vmlinux 0x1bcddb9b eth_commit_mac_addr_change +EXPORT_SYMBOL vmlinux 0x1bd59dbe vme_free_consistent +EXPORT_SYMBOL vmlinux 0x1be57c14 nobh_write_end +EXPORT_SYMBOL vmlinux 0x1bf0b46b unlock_page_memcg +EXPORT_SYMBOL vmlinux 0x1c1b9f8e _raw_write_unlock_irqrestore +EXPORT_SYMBOL vmlinux 0x1c2784f6 textsearch_destroy +EXPORT_SYMBOL vmlinux 0x1c338147 vm_numa_stat +EXPORT_SYMBOL vmlinux 0x1c58427f acpi_remove_notify_handler +EXPORT_SYMBOL vmlinux 0x1c6149ac nf_register_net_hook +EXPORT_SYMBOL vmlinux 0x1c65b2d6 rtnl_link_get_net +EXPORT_SYMBOL vmlinux 0x1c673426 xfrm_alloc_spi +EXPORT_SYMBOL vmlinux 0x1c6f9501 scsi_device_resume +EXPORT_SYMBOL vmlinux 0x1c8615b5 generic_file_open +EXPORT_SYMBOL vmlinux 0x1ca5783d cdc_parse_cdc_header +EXPORT_SYMBOL vmlinux 0x1ca62b1f __inc_node_page_state +EXPORT_SYMBOL vmlinux 0x1cab0a0e phy_connect_direct +EXPORT_SYMBOL vmlinux 0x1cb2c6d8 kvasprintf +EXPORT_SYMBOL vmlinux 0x1cc319a0 pcie_capability_clear_and_set_dword +EXPORT_SYMBOL vmlinux 0x1cc8e120 input_free_device +EXPORT_SYMBOL vmlinux 0x1cd8438b pxm_to_node +EXPORT_SYMBOL vmlinux 0x1cdbfd4d vfs_llseek +EXPORT_SYMBOL vmlinux 0x1cf1823a pci_pme_active +EXPORT_SYMBOL vmlinux 0x1cf2f2a4 neigh_sysctl_register +EXPORT_SYMBOL vmlinux 0x1d07e365 memdup_user_nul +EXPORT_SYMBOL vmlinux 0x1d0958ad try_to_release_page +EXPORT_SYMBOL vmlinux 0x1d154b47 vfs_ioc_setflags_prepare +EXPORT_SYMBOL vmlinux 0x1d19f77b physical_mask +EXPORT_SYMBOL vmlinux 0x1d1abdf0 acpi_get_physical_device_location +EXPORT_SYMBOL vmlinux 0x1d24c881 ___ratelimit +EXPORT_SYMBOL vmlinux 0x1d2d6d15 wait_iff_congested +EXPORT_SYMBOL vmlinux 0x1d314b95 input_mt_drop_unused +EXPORT_SYMBOL vmlinux 0x1d40b6f3 idr_for_each +EXPORT_SYMBOL vmlinux 0x1d41af77 pcix_get_max_mmrbc +EXPORT_SYMBOL vmlinux 0x1d424bca blk_mq_free_tag_set +EXPORT_SYMBOL vmlinux 0x1d5f9555 frame_vector_destroy +EXPORT_SYMBOL vmlinux 0x1d627616 inet_frag_reasm_finish +EXPORT_SYMBOL vmlinux 0x1d7ac45d map_kernel_range_noflush +EXPORT_SYMBOL vmlinux 0x1d8f4033 inet_proto_csum_replace4 +EXPORT_SYMBOL vmlinux 0x1d96479f sock_set_reuseaddr +EXPORT_SYMBOL vmlinux 0x1d982d73 max8925_reg_read +EXPORT_SYMBOL vmlinux 0x1da033dd inet_dgram_ops +EXPORT_SYMBOL vmlinux 0x1db7706b __copy_user_nocache +EXPORT_SYMBOL vmlinux 0x1dc2e24e zap_page_range +EXPORT_SYMBOL vmlinux 0x1dc2e990 __inode_add_bytes +EXPORT_SYMBOL vmlinux 0x1dc6c93b lookup_user_key +EXPORT_SYMBOL vmlinux 0x1dd571e6 fb_copy_cmap +EXPORT_SYMBOL vmlinux 0x1ddd643c flow_hash_from_keys +EXPORT_SYMBOL vmlinux 0x1de4ccb2 get_sg_io_hdr +EXPORT_SYMBOL vmlinux 0x1de7987f iget5_locked +EXPORT_SYMBOL vmlinux 0x1df63e88 ZSTD_compressBegin +EXPORT_SYMBOL vmlinux 0x1e0a0c24 mod_timer_pending +EXPORT_SYMBOL vmlinux 0x1e0cac3e xfrm_policy_byid +EXPORT_SYMBOL vmlinux 0x1e0cd7fe acpi_detach_data +EXPORT_SYMBOL vmlinux 0x1e1e140e ns_to_timespec64 +EXPORT_SYMBOL vmlinux 0x1e2000ad udp_flush_pending_frames +EXPORT_SYMBOL vmlinux 0x1e2fe54d default_qdisc_ops +EXPORT_SYMBOL vmlinux 0x1e31f171 mdiobus_write_nested +EXPORT_SYMBOL vmlinux 0x1e337fd6 __page_frag_cache_drain +EXPORT_SYMBOL vmlinux 0x1e43b390 tcp_poll +EXPORT_SYMBOL vmlinux 0x1e4faf63 tcf_exts_destroy +EXPORT_SYMBOL vmlinux 0x1e5c4f3c set_posix_acl +EXPORT_SYMBOL vmlinux 0x1e62643b skb_flow_dissector_init +EXPORT_SYMBOL vmlinux 0x1e6d26a8 strstr +EXPORT_SYMBOL vmlinux 0x1e9afd64 bio_endio +EXPORT_SYMBOL vmlinux 0x1e9edfb7 seq_hlist_start_head_rcu +EXPORT_SYMBOL vmlinux 0x1e9fc964 dma_direct_sync_sg_for_cpu +EXPORT_SYMBOL vmlinux 0x1ea34c93 tcp_init_sock +EXPORT_SYMBOL vmlinux 0x1eb922a3 IO_APIC_get_PCI_irq_vector +EXPORT_SYMBOL vmlinux 0x1ed62c89 logfc +EXPORT_SYMBOL vmlinux 0x1ed8b599 __x86_indirect_thunk_r8 +EXPORT_SYMBOL vmlinux 0x1ed94bf4 fscrypt_free_inode +EXPORT_SYMBOL vmlinux 0x1edb69d6 ktime_get_raw_ts64 +EXPORT_SYMBOL vmlinux 0x1ede214c jbd2_journal_start_commit +EXPORT_SYMBOL vmlinux 0x1ee1a7e6 sock_kmalloc +EXPORT_SYMBOL vmlinux 0x1ef28497 __sk_mem_schedule +EXPORT_SYMBOL vmlinux 0x1f03912b ZSTD_flushStream +EXPORT_SYMBOL vmlinux 0x1f11396f serio_unregister_child_port +EXPORT_SYMBOL vmlinux 0x1f1c1048 inet6_unregister_protosw +EXPORT_SYMBOL vmlinux 0x1f2020ae arp_create +EXPORT_SYMBOL vmlinux 0x1f439498 rproc_coredump_add_custom_segment +EXPORT_SYMBOL vmlinux 0x1f5360b9 flow_rule_match_ip +EXPORT_SYMBOL vmlinux 0x1f557414 gen_pool_has_addr +EXPORT_SYMBOL vmlinux 0x1f601a73 get_cached_acl_rcu +EXPORT_SYMBOL vmlinux 0x1f688259 param_get_ushort +EXPORT_SYMBOL vmlinux 0x1f6a851b devm_memremap +EXPORT_SYMBOL vmlinux 0x1f780667 md_integrity_add_rdev +EXPORT_SYMBOL vmlinux 0x1f7f320c free_buffer_head +EXPORT_SYMBOL vmlinux 0x1f83556f security_unix_may_send +EXPORT_SYMBOL vmlinux 0x1facdfa4 pci_unregister_driver +EXPORT_SYMBOL vmlinux 0x1fb3250e jbd2_journal_invalidatepage +EXPORT_SYMBOL vmlinux 0x1fbd16da ip_tos2prio +EXPORT_SYMBOL vmlinux 0x1fc0cc7c intel_gtt_insert_sg_entries +EXPORT_SYMBOL vmlinux 0x1fd07fff kdb_grepping_flag +EXPORT_SYMBOL vmlinux 0x1fe912f1 netdev_alloc_frag +EXPORT_SYMBOL vmlinux 0x1ff707d7 rproc_alloc +EXPORT_SYMBOL vmlinux 0x20000329 simple_strtoul +EXPORT_SYMBOL vmlinux 0x20091609 mmc_erase +EXPORT_SYMBOL vmlinux 0x200b2041 in6addr_any +EXPORT_SYMBOL vmlinux 0x200fbf4d skb_copy_bits +EXPORT_SYMBOL vmlinux 0x2021d527 release_pages +EXPORT_SYMBOL vmlinux 0x202246d0 textsearch_prepare +EXPORT_SYMBOL vmlinux 0x20463df4 wait_for_completion_killable +EXPORT_SYMBOL vmlinux 0x204af5b5 netlbl_audit_start +EXPORT_SYMBOL vmlinux 0x204c19f5 tcp_alloc_md5sig_pool +EXPORT_SYMBOL vmlinux 0x204c5067 scsi_dev_info_add_list +EXPORT_SYMBOL vmlinux 0x204caf88 jbd2_journal_clear_err +EXPORT_SYMBOL vmlinux 0x2060bb78 del_gendisk +EXPORT_SYMBOL vmlinux 0x2065b6e5 tty_driver_flush_buffer +EXPORT_SYMBOL vmlinux 0x206e203b sock_no_accept +EXPORT_SYMBOL vmlinux 0x2072ee9b request_threaded_irq +EXPORT_SYMBOL vmlinux 0x2075cc07 mmc_set_data_timeout +EXPORT_SYMBOL vmlinux 0x209714b4 follow_down +EXPORT_SYMBOL vmlinux 0x209e0581 vfs_copy_file_range +EXPORT_SYMBOL vmlinux 0x20a1b519 acpi_resource_to_address64 +EXPORT_SYMBOL vmlinux 0x20a1c8d5 get_bitmap_from_slot +EXPORT_SYMBOL vmlinux 0x20a789ac irq_set_chip_data +EXPORT_SYMBOL vmlinux 0x20ba4f3e rdmsr_on_cpu +EXPORT_SYMBOL vmlinux 0x20c4b632 sock_kfree_s +EXPORT_SYMBOL vmlinux 0x20cbb30a __percpu_counter_init +EXPORT_SYMBOL vmlinux 0x20d65e40 fb_find_nearest_mode +EXPORT_SYMBOL vmlinux 0x20dd454a inode_io_list_del +EXPORT_SYMBOL vmlinux 0x20e32c75 ww_mutex_lock +EXPORT_SYMBOL vmlinux 0x20eadeb6 ip_compute_csum +EXPORT_SYMBOL vmlinux 0x20fd8a64 netdev_lower_get_first_private_rcu +EXPORT_SYMBOL vmlinux 0x20fff6ec ZSTD_DStreamInSize +EXPORT_SYMBOL vmlinux 0x2102160d soft_cursor +EXPORT_SYMBOL vmlinux 0x21059cd7 audit_log_task_context +EXPORT_SYMBOL vmlinux 0x211130c1 alloc_cpumask_var +EXPORT_SYMBOL vmlinux 0x2120653c inet_recvmsg +EXPORT_SYMBOL vmlinux 0x212ced48 key_invalidate +EXPORT_SYMBOL vmlinux 0x2132e38e page_zero_new_buffers +EXPORT_SYMBOL vmlinux 0x213a738d memregion_alloc +EXPORT_SYMBOL vmlinux 0x213c3bce key_reject_and_link +EXPORT_SYMBOL vmlinux 0x213e4965 ps2_is_keyboard_id +EXPORT_SYMBOL vmlinux 0x2142178f cdev_del +EXPORT_SYMBOL vmlinux 0x2149ae65 iw_handler_get_spy +EXPORT_SYMBOL vmlinux 0x21541248 mipi_dsi_generic_write +EXPORT_SYMBOL vmlinux 0x2155d96d follow_pfn +EXPORT_SYMBOL vmlinux 0x215a8ec8 slhc_init +EXPORT_SYMBOL vmlinux 0x215b6b96 agp_copy_info +EXPORT_SYMBOL vmlinux 0x215c5de3 netif_device_attach +EXPORT_SYMBOL vmlinux 0x216a6b0f watchdog_unregister_governor +EXPORT_SYMBOL vmlinux 0x21718d7e mmc_of_parse_voltage +EXPORT_SYMBOL vmlinux 0x2177bd71 acpi_disable_event +EXPORT_SYMBOL vmlinux 0x2177f9b1 scsi_add_host_with_dma +EXPORT_SYMBOL vmlinux 0x217bff2b tty_insert_flip_string_fixed_flag +EXPORT_SYMBOL vmlinux 0x218c06bd dmam_pool_create +EXPORT_SYMBOL vmlinux 0x218e600b pci_add_resource_offset +EXPORT_SYMBOL vmlinux 0x21901afc fiemap_prep +EXPORT_SYMBOL vmlinux 0x219ce712 __ip_queue_xmit +EXPORT_SYMBOL vmlinux 0x21ac4b9e mr_table_dump +EXPORT_SYMBOL vmlinux 0x21b608d4 brioctl_set +EXPORT_SYMBOL vmlinux 0x21bb47f4 tcf_em_tree_validate +EXPORT_SYMBOL vmlinux 0x21bdb523 errseq_check_and_advance +EXPORT_SYMBOL vmlinux 0x21be37e1 hdmi_avi_infoframe_check +EXPORT_SYMBOL vmlinux 0x21c4d19c security_binder_transfer_file +EXPORT_SYMBOL vmlinux 0x21d2314e __netlink_ns_capable +EXPORT_SYMBOL vmlinux 0x21e13cb3 inet_peer_xrlim_allow +EXPORT_SYMBOL vmlinux 0x21ec1e9a scsi_eh_restore_cmnd +EXPORT_SYMBOL vmlinux 0x21ef374c try_wait_for_completion +EXPORT_SYMBOL vmlinux 0x22047cdc sock_no_setsockopt +EXPORT_SYMBOL vmlinux 0x2206af2c padata_do_parallel +EXPORT_SYMBOL vmlinux 0x221ae466 vmf_insert_pfn +EXPORT_SYMBOL vmlinux 0x222db02d devfreq_recommended_opp +EXPORT_SYMBOL vmlinux 0x222e7ce2 sysfs_streq +EXPORT_SYMBOL vmlinux 0x2231ae6b napi_gro_frags +EXPORT_SYMBOL vmlinux 0x2234ca51 acpi_match_platform_list +EXPORT_SYMBOL vmlinux 0x2274b0ed page_pool_put_page +EXPORT_SYMBOL vmlinux 0x2276db98 kstrtoint +EXPORT_SYMBOL vmlinux 0x22787d6c current_in_userns +EXPORT_SYMBOL vmlinux 0x227de6b4 pci_scan_root_bus +EXPORT_SYMBOL vmlinux 0x229182ea xfrm6_input_addr +EXPORT_SYMBOL vmlinux 0x22974b96 finalize_exec +EXPORT_SYMBOL vmlinux 0x22a2fc8b tcp_rcv_established +EXPORT_SYMBOL vmlinux 0x22b325d5 kd_mksound +EXPORT_SYMBOL vmlinux 0x22d345db unlock_rename +EXPORT_SYMBOL vmlinux 0x22de2d88 vmf_insert_mixed +EXPORT_SYMBOL vmlinux 0x22de4931 amd_iommu_register_ga_log_notifier +EXPORT_SYMBOL vmlinux 0x22e83e8c config_item_set_name +EXPORT_SYMBOL vmlinux 0x22f206df lock_rename +EXPORT_SYMBOL vmlinux 0x22f2f4bd ethtool_rx_flow_rule_destroy +EXPORT_SYMBOL vmlinux 0x22ffcd6e dquot_get_dqblk +EXPORT_SYMBOL vmlinux 0x2306b8df unlock_buffer +EXPORT_SYMBOL vmlinux 0x230953ad pipe_unlock +EXPORT_SYMBOL vmlinux 0x2309ed84 md_bitmap_sync_with_cluster +EXPORT_SYMBOL vmlinux 0x2311d085 genl_notify +EXPORT_SYMBOL vmlinux 0x233119ac xfrm_parse_spi +EXPORT_SYMBOL vmlinux 0x23428105 agp_find_bridge +EXPORT_SYMBOL vmlinux 0x23610424 __block_write_begin +EXPORT_SYMBOL vmlinux 0x2371e1a9 d_alloc +EXPORT_SYMBOL vmlinux 0x2383b143 ppp_register_compressor +EXPORT_SYMBOL vmlinux 0x238b099f mipi_dsi_packet_format_is_short +EXPORT_SYMBOL vmlinux 0x23b9d6e2 mangle_path +EXPORT_SYMBOL vmlinux 0x23c9891c kstrtoint_from_user +EXPORT_SYMBOL vmlinux 0x23cabbb1 register_sysctl_paths +EXPORT_SYMBOL vmlinux 0x23da5d27 xfrm_policy_alloc +EXPORT_SYMBOL vmlinux 0x23daa989 mipi_dsi_create_packet +EXPORT_SYMBOL vmlinux 0x23ed5485 xfrm_trans_queue +EXPORT_SYMBOL vmlinux 0x23ee13fd mb_cache_entry_find_first +EXPORT_SYMBOL vmlinux 0x23f214f7 amd_iommu_pc_get_reg +EXPORT_SYMBOL vmlinux 0x23fd3028 vmalloc_node +EXPORT_SYMBOL vmlinux 0x24212d86 __frontswap_invalidate_page +EXPORT_SYMBOL vmlinux 0x24428be5 strncpy_from_user +EXPORT_SYMBOL vmlinux 0x245110d4 pci_bus_read_dev_vendor_id +EXPORT_SYMBOL vmlinux 0x2459bbcc console_set_on_cmdline +EXPORT_SYMBOL vmlinux 0x246f85e6 nf_log_unbind_pf +EXPORT_SYMBOL vmlinux 0x2473f47e dm_table_get_size +EXPORT_SYMBOL vmlinux 0x2484adc3 __kfifo_to_user_r +EXPORT_SYMBOL vmlinux 0x2496817e d_find_any_alias +EXPORT_SYMBOL vmlinux 0x24a5f2f6 skb_store_bits +EXPORT_SYMBOL vmlinux 0x24a8a4d3 blk_queue_update_dma_pad +EXPORT_SYMBOL vmlinux 0x24a8e8bb neigh_ifdown +EXPORT_SYMBOL vmlinux 0x24acd979 devm_pci_alloc_host_bridge +EXPORT_SYMBOL vmlinux 0x24afb8e9 netdev_set_tc_queue +EXPORT_SYMBOL vmlinux 0x24badb44 qdisc_tree_reduce_backlog +EXPORT_SYMBOL vmlinux 0x24c6d161 task_work_add +EXPORT_SYMBOL vmlinux 0x24d273d1 add_timer +EXPORT_SYMBOL vmlinux 0x24d2d700 ata_dev_printk +EXPORT_SYMBOL vmlinux 0x24d94363 set_page_dirty +EXPORT_SYMBOL vmlinux 0x24e8a635 zpool_unregister_driver +EXPORT_SYMBOL vmlinux 0x24eb5735 dev_loopback_xmit +EXPORT_SYMBOL vmlinux 0x2503c6da vfs_create +EXPORT_SYMBOL vmlinux 0x2520f256 inet_twsk_deschedule_put +EXPORT_SYMBOL vmlinux 0x2524ba17 ZSTD_getCParams +EXPORT_SYMBOL vmlinux 0x25277497 rfkill_register +EXPORT_SYMBOL vmlinux 0x252cfa4a scsi_eh_finish_cmd +EXPORT_SYMBOL vmlinux 0x253e0648 security_inode_notifysecctx +EXPORT_SYMBOL vmlinux 0x253e58bd __hw_addr_ref_unsync_dev +EXPORT_SYMBOL vmlinux 0x2569c63f ata_scsi_cmd_error_handler +EXPORT_SYMBOL vmlinux 0x256b9226 netpoll_send_skb +EXPORT_SYMBOL vmlinux 0x2570a138 reservation_seqcount_string +EXPORT_SYMBOL vmlinux 0x25820c64 fs_overflowuid +EXPORT_SYMBOL vmlinux 0x25869b8b vga_remove_vgacon +EXPORT_SYMBOL vmlinux 0x258d2f76 net_dim_get_tx_moderation +EXPORT_SYMBOL vmlinux 0x25974000 wait_for_completion +EXPORT_SYMBOL vmlinux 0x259d1d27 buffer_check_dirty_writeback +EXPORT_SYMBOL vmlinux 0x25a9cb58 qdisc_put_unlocked +EXPORT_SYMBOL vmlinux 0x25d2dbde i2c_put_adapter +EXPORT_SYMBOL vmlinux 0x25db1577 do_trace_write_msr +EXPORT_SYMBOL vmlinux 0x25e58a09 hdmi_avi_infoframe_init +EXPORT_SYMBOL vmlinux 0x25e9d4bd resource_list_free +EXPORT_SYMBOL vmlinux 0x25f622c6 set_binfmt +EXPORT_SYMBOL vmlinux 0x2605b0ab inet6_protos +EXPORT_SYMBOL vmlinux 0x2609d5b8 dm_unregister_target +EXPORT_SYMBOL vmlinux 0x260a095a __sg_alloc_table +EXPORT_SYMBOL vmlinux 0x261be9d3 __xfrm_route_forward +EXPORT_SYMBOL vmlinux 0x262dd71c _dev_warn +EXPORT_SYMBOL vmlinux 0x263beb75 ecryptfs_get_versions +EXPORT_SYMBOL vmlinux 0x263c3152 bcmp +EXPORT_SYMBOL vmlinux 0x263c4b30 unregister_cdrom +EXPORT_SYMBOL vmlinux 0x263ed23b __x86_indirect_thunk_r12 +EXPORT_SYMBOL vmlinux 0x26598d57 max8998_bulk_write +EXPORT_SYMBOL vmlinux 0x265ecb20 scsi_track_queue_full +EXPORT_SYMBOL vmlinux 0x26787f34 max8925_reg_write +EXPORT_SYMBOL vmlinux 0x2679169d read_cache_pages +EXPORT_SYMBOL vmlinux 0x2688ec10 bitmap_zalloc +EXPORT_SYMBOL vmlinux 0x26948d96 copy_user_enhanced_fast_string +EXPORT_SYMBOL vmlinux 0x26a002ff udp_poll +EXPORT_SYMBOL vmlinux 0x26be3de5 datagram_poll +EXPORT_SYMBOL vmlinux 0x26cc73c3 complete_and_exit +EXPORT_SYMBOL vmlinux 0x26e298e0 unregister_memory_notifier +EXPORT_SYMBOL vmlinux 0x26f8f0b8 iowrite16be +EXPORT_SYMBOL vmlinux 0x26ffbaf8 uart_update_timeout +EXPORT_SYMBOL vmlinux 0x271cba95 acpi_bus_private_data_handler +EXPORT_SYMBOL vmlinux 0x27237524 pm860x_reg_write +EXPORT_SYMBOL vmlinux 0x272a8933 udp_memory_allocated +EXPORT_SYMBOL vmlinux 0x2733eaf7 scsi_dev_info_list_add_keyed +EXPORT_SYMBOL vmlinux 0x2736dd71 dev_queue_xmit +EXPORT_SYMBOL vmlinux 0x2745130a __dec_zone_page_state +EXPORT_SYMBOL vmlinux 0x27473792 skb_vlan_untag +EXPORT_SYMBOL vmlinux 0x27479d14 param_free_charp +EXPORT_SYMBOL vmlinux 0x275454d3 dquot_drop +EXPORT_SYMBOL vmlinux 0x275f3d49 hdmi_vendor_infoframe_check +EXPORT_SYMBOL vmlinux 0x27639220 blk_verify_command +EXPORT_SYMBOL vmlinux 0x27756bc8 scsi_sanitize_inquiry_string +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 0x27936ff6 netlink_broadcast_filtered +EXPORT_SYMBOL vmlinux 0x279be432 ZSTD_copyCCtx +EXPORT_SYMBOL vmlinux 0x27bbf221 disable_irq_nosync +EXPORT_SYMBOL vmlinux 0x27cdca93 pci_add_resource +EXPORT_SYMBOL vmlinux 0x27e61722 crypto_sha256_update +EXPORT_SYMBOL vmlinux 0x27ebd419 truncate_pagecache_range +EXPORT_SYMBOL vmlinux 0x27f226ca mipi_dsi_attach +EXPORT_SYMBOL vmlinux 0x2804d8e2 agp_allocate_memory +EXPORT_SYMBOL vmlinux 0x280c5e58 vlan_vids_del_by_dev +EXPORT_SYMBOL vmlinux 0x281823c5 __kfifo_out_peek +EXPORT_SYMBOL vmlinux 0x2820ce84 __ip_dev_find +EXPORT_SYMBOL vmlinux 0x2833f577 ZSTD_compressBegin_advanced +EXPORT_SYMBOL vmlinux 0x28411290 dev_printk_emit +EXPORT_SYMBOL vmlinux 0x2841d5ad __sock_cmsg_send +EXPORT_SYMBOL vmlinux 0x2848c258 skb_copy +EXPORT_SYMBOL vmlinux 0x2854b72a n_tty_ioctl_helper +EXPORT_SYMBOL vmlinux 0x285a049a dev_mc_unsync +EXPORT_SYMBOL vmlinux 0x285c2e5e mdiobus_unregister +EXPORT_SYMBOL vmlinux 0x2862d416 vfs_setpos +EXPORT_SYMBOL vmlinux 0x286e1beb __skb_pad +EXPORT_SYMBOL vmlinux 0x2875a315 utf32_to_utf8 +EXPORT_SYMBOL vmlinux 0x287d493d alloc_xenballooned_pages +EXPORT_SYMBOL vmlinux 0x28819259 pagecache_write_end +EXPORT_SYMBOL vmlinux 0x2884dbb1 _dev_crit +EXPORT_SYMBOL vmlinux 0x2884e57b blk_integrity_compare +EXPORT_SYMBOL vmlinux 0x289fab98 dev_activate +EXPORT_SYMBOL vmlinux 0x28ab757c blk_integrity_register +EXPORT_SYMBOL vmlinux 0x28af1ebe is_nd_pfn +EXPORT_SYMBOL vmlinux 0x28d92764 dquot_quota_off +EXPORT_SYMBOL vmlinux 0x28e09af1 iosf_mbi_available +EXPORT_SYMBOL vmlinux 0x29029257 unpin_user_pages +EXPORT_SYMBOL vmlinux 0x2914ea2d ZSTD_compressBlock +EXPORT_SYMBOL vmlinux 0x2925c150 inet_gro_receive +EXPORT_SYMBOL vmlinux 0x293f9741 mipi_dsi_detach +EXPORT_SYMBOL vmlinux 0x294b9ea1 on_each_cpu +EXPORT_SYMBOL vmlinux 0x29638a39 genl_unregister_family +EXPORT_SYMBOL vmlinux 0x2969410c skb_clone_sk +EXPORT_SYMBOL vmlinux 0x296cb509 __xa_insert +EXPORT_SYMBOL vmlinux 0x296e81ee devfreq_monitor_stop +EXPORT_SYMBOL vmlinux 0x29796c1f vme_master_mmap +EXPORT_SYMBOL vmlinux 0x297d2ea3 tty_port_close_end +EXPORT_SYMBOL vmlinux 0x29989a79 jbd2__journal_start +EXPORT_SYMBOL vmlinux 0x299a50b0 generic_copy_file_range +EXPORT_SYMBOL vmlinux 0x29a8a331 tty_port_close_start +EXPORT_SYMBOL vmlinux 0x29ad8e33 x86_hyper_type +EXPORT_SYMBOL vmlinux 0x29c9ab52 filemap_fdatawait_keep_errors +EXPORT_SYMBOL vmlinux 0x29ccaa8a pcie_capability_read_dword +EXPORT_SYMBOL vmlinux 0x29d9c13d pid_task +EXPORT_SYMBOL vmlinux 0x29e1e204 hdmi_audio_infoframe_pack +EXPORT_SYMBOL vmlinux 0x29e59f65 fqdir_exit +EXPORT_SYMBOL vmlinux 0x2a0d1320 vm_insert_page +EXPORT_SYMBOL vmlinux 0x2a20c308 blk_rq_map_user +EXPORT_SYMBOL vmlinux 0x2a303d4d check_signature +EXPORT_SYMBOL vmlinux 0x2a39eb99 open_exec +EXPORT_SYMBOL vmlinux 0x2a449f46 iov_iter_npages +EXPORT_SYMBOL vmlinux 0x2a4a5dab tty_port_tty_get +EXPORT_SYMBOL vmlinux 0x2a519ef6 pci_dev_driver +EXPORT_SYMBOL vmlinux 0x2a78c896 __wait_on_buffer +EXPORT_SYMBOL vmlinux 0x2a96a9e9 fscrypt_fname_alloc_buffer +EXPORT_SYMBOL vmlinux 0x2a9a3905 vme_master_get +EXPORT_SYMBOL vmlinux 0x2a9e875b clk_bulk_get_all +EXPORT_SYMBOL vmlinux 0x2aa00e26 intel_scu_ipc_dev_update +EXPORT_SYMBOL vmlinux 0x2aa0843e mempool_resize +EXPORT_SYMBOL vmlinux 0x2aa83453 gnet_stats_copy_basic_hw +EXPORT_SYMBOL vmlinux 0x2aaae620 fsync_bdev +EXPORT_SYMBOL vmlinux 0x2ab7989d mutex_lock +EXPORT_SYMBOL vmlinux 0x2abc7f32 vfs_ioctl +EXPORT_SYMBOL vmlinux 0x2ad24c64 flow_rule_match_vlan +EXPORT_SYMBOL vmlinux 0x2b0993c7 __put_page +EXPORT_SYMBOL vmlinux 0x2b1cc79f get_task_exe_file +EXPORT_SYMBOL vmlinux 0x2b2c28df pnp_unregister_card_driver +EXPORT_SYMBOL vmlinux 0x2b38221c scsi_block_requests +EXPORT_SYMBOL vmlinux 0x2b39bdf2 max8925_bulk_read +EXPORT_SYMBOL vmlinux 0x2b3e3083 __x86_retpoline_rdi +EXPORT_SYMBOL vmlinux 0x2b56f056 nvdimm_namespace_capacity +EXPORT_SYMBOL vmlinux 0x2b59047d from_kgid_munged +EXPORT_SYMBOL vmlinux 0x2b593aa8 gen_pool_alloc_algo_owner +EXPORT_SYMBOL vmlinux 0x2b63068b kill_litter_super +EXPORT_SYMBOL vmlinux 0x2b68bd2f del_timer +EXPORT_SYMBOL vmlinux 0x2b6afa7a kill_anon_super +EXPORT_SYMBOL vmlinux 0x2b970767 get_amd_iommu +EXPORT_SYMBOL vmlinux 0x2b9da7a4 genl_lock +EXPORT_SYMBOL vmlinux 0x2ba6290a del_random_ready_callback +EXPORT_SYMBOL vmlinux 0x2bb6099e dq_data_lock +EXPORT_SYMBOL vmlinux 0x2bbf6ce1 unregister_console +EXPORT_SYMBOL vmlinux 0x2bc29e98 devm_devfreq_add_device +EXPORT_SYMBOL vmlinux 0x2bd285d9 nd_pfn_validate +EXPORT_SYMBOL vmlinux 0x2bd60ab9 acpi_reset +EXPORT_SYMBOL vmlinux 0x2bf28be3 nd_region_acquire_lane +EXPORT_SYMBOL vmlinux 0x2bf7eceb ip6_xmit +EXPORT_SYMBOL vmlinux 0x2c22ebd9 scsi_change_queue_depth +EXPORT_SYMBOL vmlinux 0x2c256e1f input_scancode_to_scalar +EXPORT_SYMBOL vmlinux 0x2c389518 nvm_end_io +EXPORT_SYMBOL vmlinux 0x2c3d197f dquot_alloc_inode +EXPORT_SYMBOL vmlinux 0x2c42b2e6 finish_open +EXPORT_SYMBOL vmlinux 0x2c541e7b radix_tree_next_chunk +EXPORT_SYMBOL vmlinux 0x2c74eeb6 rtnl_unicast +EXPORT_SYMBOL vmlinux 0x2ca3039d param_set_copystring +EXPORT_SYMBOL vmlinux 0x2caf63d1 topology_phys_to_logical_die +EXPORT_SYMBOL vmlinux 0x2cb9b435 tcp_syn_ack_timeout +EXPORT_SYMBOL vmlinux 0x2cbbec45 nd_device_notify +EXPORT_SYMBOL vmlinux 0x2ccd059a dim_on_top +EXPORT_SYMBOL vmlinux 0x2cdf87a1 proc_dointvec_minmax +EXPORT_SYMBOL vmlinux 0x2cedd4d0 dev_change_proto_down_generic +EXPORT_SYMBOL vmlinux 0x2cef9f3a noop_llseek +EXPORT_SYMBOL vmlinux 0x2cf6d199 ll_rw_block +EXPORT_SYMBOL vmlinux 0x2cf73cb7 kstrtoll_from_user +EXPORT_SYMBOL vmlinux 0x2d140a58 genl_unlock +EXPORT_SYMBOL vmlinux 0x2d192c70 sg_zero_buffer +EXPORT_SYMBOL vmlinux 0x2d268924 nf_reinject +EXPORT_SYMBOL vmlinux 0x2d30596c from_kqid_munged +EXPORT_SYMBOL vmlinux 0x2d3385d3 system_wq +EXPORT_SYMBOL vmlinux 0x2d38c315 sk_stream_kill_queues +EXPORT_SYMBOL vmlinux 0x2d39b0a7 kstrdup +EXPORT_SYMBOL vmlinux 0x2d45b3b8 pci_fixup_cardbus +EXPORT_SYMBOL vmlinux 0x2d4c773a hdmi_spd_infoframe_init +EXPORT_SYMBOL vmlinux 0x2d523513 genlmsg_multicast_allns +EXPORT_SYMBOL vmlinux 0x2d588db7 blk_mq_tag_to_rq +EXPORT_SYMBOL vmlinux 0x2d601bbc xfrm_lookup +EXPORT_SYMBOL vmlinux 0x2d60dd55 sock_set_sndtimeo +EXPORT_SYMBOL vmlinux 0x2d6e4799 abx500_remove_ops +EXPORT_SYMBOL vmlinux 0x2d73abd2 vfs_link +EXPORT_SYMBOL vmlinux 0x2d749833 dcb_setapp +EXPORT_SYMBOL vmlinux 0x2d834411 uart_write_wakeup +EXPORT_SYMBOL vmlinux 0x2d89dc12 xp_dma_unmap +EXPORT_SYMBOL vmlinux 0x2d8bac2e try_to_free_buffers +EXPORT_SYMBOL vmlinux 0x2d912bca dmi_get_bios_year +EXPORT_SYMBOL vmlinux 0x2d994605 security_inode_copy_up_xattr +EXPORT_SYMBOL vmlinux 0x2d9d15e3 unix_attach_fds +EXPORT_SYMBOL vmlinux 0x2da2c5ba pci_iomap +EXPORT_SYMBOL vmlinux 0x2db3bc61 check_zeroed_user +EXPORT_SYMBOL vmlinux 0x2db3d320 mutex_lock_interruptible +EXPORT_SYMBOL vmlinux 0x2dd16564 arch_register_cpu +EXPORT_SYMBOL vmlinux 0x2def7f76 rtc_cmos_write +EXPORT_SYMBOL vmlinux 0x2e02e027 pci_request_region +EXPORT_SYMBOL vmlinux 0x2e0b1deb dma_fence_get_status +EXPORT_SYMBOL vmlinux 0x2e1ca751 clk_put +EXPORT_SYMBOL vmlinux 0x2e2b40d2 strncat +EXPORT_SYMBOL vmlinux 0x2e2bb380 phy_aneg_done +EXPORT_SYMBOL vmlinux 0x2e386c15 scsi_register_driver +EXPORT_SYMBOL vmlinux 0x2e3bcce2 wait_for_completion_interruptible +EXPORT_SYMBOL vmlinux 0x2e3daadf xfrm6_rcv_spi +EXPORT_SYMBOL vmlinux 0x2e439142 drm_get_panel_orientation_quirk +EXPORT_SYMBOL vmlinux 0x2e5fe036 __skb_ext_put +EXPORT_SYMBOL vmlinux 0x2ea2c95c __x86_indirect_thunk_rax +EXPORT_SYMBOL vmlinux 0x2ec6bba0 errseq_set +EXPORT_SYMBOL vmlinux 0x2edbeaf7 hex2bin +EXPORT_SYMBOL vmlinux 0x2ee4c2b1 hdmi_avi_infoframe_pack_only +EXPORT_SYMBOL vmlinux 0x2ee66801 blk_mq_alloc_request +EXPORT_SYMBOL vmlinux 0x2eebb7e4 done_path_create +EXPORT_SYMBOL vmlinux 0x2f03fc4b security_secmark_refcount_inc +EXPORT_SYMBOL vmlinux 0x2f1b46e3 dev_set_alias +EXPORT_SYMBOL vmlinux 0x2f28f94e __phy_read_mmd +EXPORT_SYMBOL vmlinux 0x2f2e91b2 security_ib_alloc_security +EXPORT_SYMBOL vmlinux 0x2f384db3 acpi_is_video_device +EXPORT_SYMBOL vmlinux 0x2f495e48 seq_open +EXPORT_SYMBOL vmlinux 0x2f7754a8 dma_pool_free +EXPORT_SYMBOL vmlinux 0x2f7fb5f6 sock_kzfree_s +EXPORT_SYMBOL vmlinux 0x2f9a9951 netdev_lower_state_changed +EXPORT_SYMBOL vmlinux 0x2fb0f814 tty_driver_kref_put +EXPORT_SYMBOL vmlinux 0x2fb50ade tcp_time_wait +EXPORT_SYMBOL vmlinux 0x2fb6de5d add_device_randomness +EXPORT_SYMBOL vmlinux 0x2fc48815 xfrm_dev_state_flush +EXPORT_SYMBOL vmlinux 0x2fd4e7f4 vme_slave_request +EXPORT_SYMBOL vmlinux 0x2fddea4b clear_inode +EXPORT_SYMBOL vmlinux 0x2fe15f17 max8998_update_reg +EXPORT_SYMBOL vmlinux 0x2fe252cc unregister_inet6addr_notifier +EXPORT_SYMBOL vmlinux 0x2feaa92f param_get_short +EXPORT_SYMBOL vmlinux 0x2feece1a pnp_possible_config +EXPORT_SYMBOL vmlinux 0x2ffc73b1 simple_statfs +EXPORT_SYMBOL vmlinux 0x30172f42 jbd2_journal_revoke +EXPORT_SYMBOL vmlinux 0x3022c8fc serio_close +EXPORT_SYMBOL vmlinux 0x302573fb dcbnl_ieee_notify +EXPORT_SYMBOL vmlinux 0x3030c7b1 tcp_v4_destroy_sock +EXPORT_SYMBOL vmlinux 0x303ca5a6 __put_cred +EXPORT_SYMBOL vmlinux 0x303d7fa8 jbd2_journal_destroy +EXPORT_SYMBOL vmlinux 0x306f0e8b netif_schedule_queue +EXPORT_SYMBOL vmlinux 0x3090f378 __generic_file_fsync +EXPORT_SYMBOL vmlinux 0x3096be16 names_cachep +EXPORT_SYMBOL vmlinux 0x30a80826 __kfifo_from_user +EXPORT_SYMBOL vmlinux 0x30a976c6 insert_inode_locked4 +EXPORT_SYMBOL vmlinux 0x30ab688a ipv6_chk_prefix +EXPORT_SYMBOL vmlinux 0x30acfde9 hsiphash_2u32 +EXPORT_SYMBOL vmlinux 0x30af45a1 ZSTD_initCStream +EXPORT_SYMBOL vmlinux 0x30b67789 pcie_capability_clear_and_set_word +EXPORT_SYMBOL vmlinux 0x30babf7d simple_transaction_read +EXPORT_SYMBOL vmlinux 0x30dd1402 nvm_register_tgt_type +EXPORT_SYMBOL vmlinux 0x30de060a md_reload_sb +EXPORT_SYMBOL vmlinux 0x30dec207 __x86_retpoline_rcx +EXPORT_SYMBOL vmlinux 0x30e387c9 gnet_stats_copy_queue +EXPORT_SYMBOL vmlinux 0x30e74134 tty_termios_copy_hw +EXPORT_SYMBOL vmlinux 0x30e9168f blk_put_queue +EXPORT_SYMBOL vmlinux 0x3100cff9 lockref_get_or_lock +EXPORT_SYMBOL vmlinux 0x31017c03 ip6_err_gen_icmpv6_unreach +EXPORT_SYMBOL vmlinux 0x3102d70b frontswap_curr_pages +EXPORT_SYMBOL vmlinux 0x31201c95 blk_queue_stack_limits +EXPORT_SYMBOL vmlinux 0x3126a9e8 siphash_1u64 +EXPORT_SYMBOL vmlinux 0x31364d4e amd_iommu_rlookup_table +EXPORT_SYMBOL vmlinux 0x3137e5f1 iov_iter_discard +EXPORT_SYMBOL vmlinux 0x3145216f pci_dev_present +EXPORT_SYMBOL vmlinux 0x315c1c05 register_console +EXPORT_SYMBOL vmlinux 0x316cc1bf phy_register_fixup +EXPORT_SYMBOL vmlinux 0x317129db dma_dummy_ops +EXPORT_SYMBOL vmlinux 0x3171acd7 seq_puts +EXPORT_SYMBOL vmlinux 0x31727422 to_ndd +EXPORT_SYMBOL vmlinux 0x3187ede3 skb_seq_read +EXPORT_SYMBOL vmlinux 0x318d6fec mutex_is_locked +EXPORT_SYMBOL vmlinux 0x3196a4d2 mdiobus_free +EXPORT_SYMBOL vmlinux 0x319d493d proc_dostring +EXPORT_SYMBOL vmlinux 0x31b31f5c csum_partial_copy_nocheck +EXPORT_SYMBOL vmlinux 0x31b566b3 mipi_dsi_dcs_soft_reset +EXPORT_SYMBOL vmlinux 0x31bd7c72 grab_cache_page_write_begin +EXPORT_SYMBOL vmlinux 0x31c2349e set_trace_device +EXPORT_SYMBOL vmlinux 0x31c591ad dma_resv_add_shared_fence +EXPORT_SYMBOL vmlinux 0x31e530dc request_firmware +EXPORT_SYMBOL vmlinux 0x31ed0b6e flow_rule_match_control +EXPORT_SYMBOL vmlinux 0x31edb1fe fixed_size_llseek +EXPORT_SYMBOL vmlinux 0x31edf625 scsi_device_set_state +EXPORT_SYMBOL vmlinux 0x320caf79 nf_unregister_net_hooks +EXPORT_SYMBOL vmlinux 0x3218525d follow_pte_pmd +EXPORT_SYMBOL vmlinux 0x321b51bb skb_orphan_partial +EXPORT_SYMBOL vmlinux 0x32390894 dump_page +EXPORT_SYMBOL vmlinux 0x324e84e8 genphy_suspend +EXPORT_SYMBOL vmlinux 0x326425ca pci_unmap_biosrom +EXPORT_SYMBOL vmlinux 0x326e7ee4 __ip_mc_dec_group +EXPORT_SYMBOL vmlinux 0x32755c12 ip4_datagram_connect +EXPORT_SYMBOL vmlinux 0x3275ab30 pagevec_lookup_range_nr_tag +EXPORT_SYMBOL vmlinux 0x3275b52f get_super +EXPORT_SYMBOL vmlinux 0x3277d37f dev_remove_offload +EXPORT_SYMBOL vmlinux 0x327c84bf vme_lm_attach +EXPORT_SYMBOL vmlinux 0x3283e6b0 prandom_seed_full_state +EXPORT_SYMBOL vmlinux 0x32970674 devm_of_find_backlight +EXPORT_SYMBOL vmlinux 0x329e9706 __dynamic_netdev_dbg +EXPORT_SYMBOL vmlinux 0x32a06265 pcix_set_mmrbc +EXPORT_SYMBOL vmlinux 0x32a69dda __close_fd_get_file +EXPORT_SYMBOL vmlinux 0x32ae5741 _raw_read_lock +EXPORT_SYMBOL vmlinux 0x32b32d7c i2c_register_driver +EXPORT_SYMBOL vmlinux 0x32b9c2a6 udp6_csum_init +EXPORT_SYMBOL vmlinux 0x32c79b28 dst_dev_put +EXPORT_SYMBOL vmlinux 0x32ce3777 radix_tree_preload +EXPORT_SYMBOL vmlinux 0x32d38734 neigh_lookup_nodev +EXPORT_SYMBOL vmlinux 0x32da0e4b security_path_mkdir +EXPORT_SYMBOL vmlinux 0x32e6f1a0 acpi_video_backlight_string +EXPORT_SYMBOL vmlinux 0x33010f6a kernel_read +EXPORT_SYMBOL vmlinux 0x33089f0c pci_set_mwi +EXPORT_SYMBOL vmlinux 0x331138ce mipi_dsi_dcs_get_pixel_format +EXPORT_SYMBOL vmlinux 0x331910b0 jbd2_log_start_commit +EXPORT_SYMBOL vmlinux 0x33199e8d capable_wrt_inode_uidgid +EXPORT_SYMBOL vmlinux 0x331df409 __skb_wait_for_more_packets +EXPORT_SYMBOL vmlinux 0x3324d9ec security_sctp_sk_clone +EXPORT_SYMBOL vmlinux 0x3324ef3b acpi_set_firmware_waking_vector +EXPORT_SYMBOL vmlinux 0x33736a1d __genradix_ptr_alloc +EXPORT_SYMBOL vmlinux 0x3377af91 has_capability +EXPORT_SYMBOL vmlinux 0x33814ae7 sock_i_uid +EXPORT_SYMBOL vmlinux 0x338c4890 inet_gso_segment +EXPORT_SYMBOL vmlinux 0x3392c829 __page_cache_alloc +EXPORT_SYMBOL vmlinux 0x339e0613 mem_cgroup_from_task +EXPORT_SYMBOL vmlinux 0x33b67c80 __SetPageMovable +EXPORT_SYMBOL vmlinux 0x33b84f74 copy_page +EXPORT_SYMBOL vmlinux 0x33d28ce0 xfrm_state_unregister_afinfo +EXPORT_SYMBOL vmlinux 0x33dae01e mmc_can_gpio_cd +EXPORT_SYMBOL vmlinux 0x33e06ee2 find_inode_by_ino_rcu +EXPORT_SYMBOL vmlinux 0x33f0768c cpufreq_quick_get_max +EXPORT_SYMBOL vmlinux 0x33fcf44a __kfifo_out_r +EXPORT_SYMBOL vmlinux 0x33fd9da4 acpi_get_gpe_device +EXPORT_SYMBOL vmlinux 0x341047db register_cdrom +EXPORT_SYMBOL vmlinux 0x341241fe softnet_data +EXPORT_SYMBOL vmlinux 0x34281fe2 generic_cont_expand_simple +EXPORT_SYMBOL vmlinux 0x342f9934 tty_port_block_til_ready +EXPORT_SYMBOL vmlinux 0x3441445f msrs_free +EXPORT_SYMBOL vmlinux 0x34578d8c vga_switcheroo_unregister_client +EXPORT_SYMBOL vmlinux 0x3462b8bd rproc_get_by_child +EXPORT_SYMBOL vmlinux 0x3478ec9d scsi_register_interface +EXPORT_SYMBOL vmlinux 0x3489859f acpi_enter_sleep_state_s4bios +EXPORT_SYMBOL vmlinux 0x348b1d23 file_open_root +EXPORT_SYMBOL vmlinux 0x348dbfec generic_parse_monolithic +EXPORT_SYMBOL vmlinux 0x349033fd devm_ioport_unmap +EXPORT_SYMBOL vmlinux 0x349ac524 __tracepoint_dma_fence_emit +EXPORT_SYMBOL vmlinux 0x349cba85 strchr +EXPORT_SYMBOL vmlinux 0x34a0322c phy_start +EXPORT_SYMBOL vmlinux 0x34a19515 ip6_route_me_harder +EXPORT_SYMBOL vmlinux 0x34a1f7e3 acpi_processor_get_psd +EXPORT_SYMBOL vmlinux 0x34a27a68 neigh_connected_output +EXPORT_SYMBOL vmlinux 0x34a5218b tcp_mmap +EXPORT_SYMBOL vmlinux 0x34bb446c flow_rule_match_enc_ports +EXPORT_SYMBOL vmlinux 0x34c4c5c7 cred_fscmp +EXPORT_SYMBOL vmlinux 0x34c5cdf8 neigh_table_clear +EXPORT_SYMBOL vmlinux 0x34e9a860 call_netdevice_notifiers +EXPORT_SYMBOL vmlinux 0x34f1a773 skb_vlan_push +EXPORT_SYMBOL vmlinux 0x34f3484e security_tun_dev_attach_queue +EXPORT_SYMBOL vmlinux 0x34f49e61 call_fib_notifiers +EXPORT_SYMBOL vmlinux 0x34f89363 acpi_terminate_debugger +EXPORT_SYMBOL vmlinux 0x34fb0498 xsk_umem_consume_tx_done +EXPORT_SYMBOL vmlinux 0x350ea558 dma_fence_default_wait +EXPORT_SYMBOL vmlinux 0x350f1dcb sync_inode_metadata +EXPORT_SYMBOL vmlinux 0x3517383e register_reboot_notifier +EXPORT_SYMBOL vmlinux 0x351a959b module_refcount +EXPORT_SYMBOL vmlinux 0x35248e42 bio_init +EXPORT_SYMBOL vmlinux 0x352af728 address_space_init_once +EXPORT_SYMBOL vmlinux 0x35303d05 blk_mq_delay_run_hw_queues +EXPORT_SYMBOL vmlinux 0x3539f11b match_strlcpy +EXPORT_SYMBOL vmlinux 0x354b4a1e acpi_ut_trace +EXPORT_SYMBOL vmlinux 0x3559a31e phy_ethtool_get_link_ksettings +EXPORT_SYMBOL vmlinux 0x356461c8 rtc_time64_to_tm +EXPORT_SYMBOL vmlinux 0x356d35df nf_setsockopt +EXPORT_SYMBOL vmlinux 0x3583d607 mmc_retune_pause +EXPORT_SYMBOL vmlinux 0x358ec05b rtnl_set_sk_err +EXPORT_SYMBOL vmlinux 0x359c1a38 mmc_of_parse +EXPORT_SYMBOL vmlinux 0x359ec42f _raw_read_trylock +EXPORT_SYMBOL vmlinux 0x35a88f28 zlib_inflateInit2 +EXPORT_SYMBOL vmlinux 0x35aa40bf netdev_upper_get_next_dev_rcu +EXPORT_SYMBOL vmlinux 0x35b5ca58 netlink_rcv_skb +EXPORT_SYMBOL vmlinux 0x35be066a neigh_for_each +EXPORT_SYMBOL vmlinux 0x35be0be6 d_splice_alias +EXPORT_SYMBOL vmlinux 0x35f60872 max8925_set_bits +EXPORT_SYMBOL vmlinux 0x35fc74e1 flow_block_cb_free +EXPORT_SYMBOL vmlinux 0x360b1afe probe_irq_mask +EXPORT_SYMBOL vmlinux 0x360b9210 get_acl +EXPORT_SYMBOL vmlinux 0x3618ba6b sock_common_recvmsg +EXPORT_SYMBOL vmlinux 0x3620ea5d vfs_ioc_fssetxattr_check +EXPORT_SYMBOL vmlinux 0x36250f8d mnt_drop_write_file +EXPORT_SYMBOL vmlinux 0x362ef408 _copy_from_user +EXPORT_SYMBOL vmlinux 0x36350714 km_report +EXPORT_SYMBOL vmlinux 0x36519017 generic_file_fsync +EXPORT_SYMBOL vmlinux 0x365a926a input_mt_report_pointer_emulation +EXPORT_SYMBOL vmlinux 0x365acda7 set_normalized_timespec64 +EXPORT_SYMBOL vmlinux 0x365e7911 kstrdup_const +EXPORT_SYMBOL vmlinux 0x367281af dev_uc_init +EXPORT_SYMBOL vmlinux 0x367a9b6d get_mem_cgroup_from_mm +EXPORT_SYMBOL vmlinux 0x36828ae8 vfio_register_notifier +EXPORT_SYMBOL vmlinux 0x3687c30d pci_bus_write_config_byte +EXPORT_SYMBOL vmlinux 0x368d5e5a sock_set_reuseport +EXPORT_SYMBOL vmlinux 0x36942260 inet6_ioctl +EXPORT_SYMBOL vmlinux 0x36945208 ata_port_printk +EXPORT_SYMBOL vmlinux 0x3697aba3 bio_list_copy_data +EXPORT_SYMBOL vmlinux 0x3697e88b mdiobus_write +EXPORT_SYMBOL vmlinux 0x36a94542 skb_copy_expand +EXPORT_SYMBOL vmlinux 0x36b0d447 vga_client_register +EXPORT_SYMBOL vmlinux 0x36b2f1c9 setattr_prepare +EXPORT_SYMBOL vmlinux 0x36be7423 tc_setup_cb_call +EXPORT_SYMBOL vmlinux 0x36c4bc8b devfreq_register_notifier +EXPORT_SYMBOL vmlinux 0x36c953b2 pci_request_regions +EXPORT_SYMBOL vmlinux 0x36caf489 generic_file_mmap +EXPORT_SYMBOL vmlinux 0x36ef0e8e devm_rproc_add +EXPORT_SYMBOL vmlinux 0x3703fda2 skb_ensure_writable +EXPORT_SYMBOL vmlinux 0x37110088 remove_wait_queue +EXPORT_SYMBOL vmlinux 0x371e7f3a ZSTD_initCDict +EXPORT_SYMBOL vmlinux 0x3728df80 jbd2_journal_dirty_metadata +EXPORT_SYMBOL vmlinux 0x372f5611 rproc_add_carveout +EXPORT_SYMBOL vmlinux 0x3737d9a9 ZSTD_DStreamWorkspaceBound +EXPORT_SYMBOL vmlinux 0x37446b11 uart_match_port +EXPORT_SYMBOL vmlinux 0x3744cf36 vmalloc_to_pfn +EXPORT_SYMBOL vmlinux 0x374a5bfa sock_rfree +EXPORT_SYMBOL vmlinux 0x3755f990 gf128mul_init_64k_bbe +EXPORT_SYMBOL vmlinux 0x3756d917 find_vma +EXPORT_SYMBOL vmlinux 0x37746fde ZSTD_initDStream +EXPORT_SYMBOL vmlinux 0x377d8004 acpi_error +EXPORT_SYMBOL vmlinux 0x377e75d4 sock_create_kern +EXPORT_SYMBOL vmlinux 0x37816b0d rtnetlink_put_metrics +EXPORT_SYMBOL vmlinux 0x378a81c2 input_unregister_device +EXPORT_SYMBOL vmlinux 0x3791aa5e agp_bind_memory +EXPORT_SYMBOL vmlinux 0x37971b98 d_obtain_root +EXPORT_SYMBOL vmlinux 0x3797555e scsi_dma_map +EXPORT_SYMBOL vmlinux 0x37992900 filemap_flush +EXPORT_SYMBOL vmlinux 0x37a7f80c __xfrm_state_delete +EXPORT_SYMBOL vmlinux 0x37af3190 dm_table_run_md_queue_async +EXPORT_SYMBOL vmlinux 0x37b8b39e screen_info +EXPORT_SYMBOL vmlinux 0x37befc70 jiffies_to_msecs +EXPORT_SYMBOL vmlinux 0x37db8f19 dmi_get_date +EXPORT_SYMBOL vmlinux 0x37dca04f security_inode_init_security +EXPORT_SYMBOL vmlinux 0x38036f9c mipi_dsi_driver_unregister +EXPORT_SYMBOL vmlinux 0x3812050a _raw_spin_unlock_irqrestore +EXPORT_SYMBOL vmlinux 0x381a798a setup_max_cpus +EXPORT_SYMBOL vmlinux 0x383a91de blk_queue_max_write_same_sectors +EXPORT_SYMBOL vmlinux 0x3869778b pneigh_lookup +EXPORT_SYMBOL vmlinux 0x388140e8 jbd2_complete_transaction +EXPORT_SYMBOL vmlinux 0x38869d88 kstat +EXPORT_SYMBOL vmlinux 0x388aa3c9 neigh_proc_dointvec_ms_jiffies +EXPORT_SYMBOL vmlinux 0x388dacfd i2c_smbus_read_block_data +EXPORT_SYMBOL vmlinux 0x3891ffc8 ecryptfs_fill_auth_tok +EXPORT_SYMBOL vmlinux 0x389617b0 LZ4_decompress_fast_continue +EXPORT_SYMBOL vmlinux 0x38a71b7e pci_free_resource_list +EXPORT_SYMBOL vmlinux 0x38a9f7c5 in6addr_loopback +EXPORT_SYMBOL vmlinux 0x38d02ed1 config_item_get_unless_zero +EXPORT_SYMBOL vmlinux 0x38d337ac pcim_iounmap_regions +EXPORT_SYMBOL vmlinux 0x38d5d0a7 tcp_seq_start +EXPORT_SYMBOL vmlinux 0x38e2e574 kobject_del +EXPORT_SYMBOL vmlinux 0x38e46431 mempool_exit +EXPORT_SYMBOL vmlinux 0x38f33bed dump_fpu +EXPORT_SYMBOL vmlinux 0x390535ef __f_setown +EXPORT_SYMBOL vmlinux 0x39081193 __max_logical_packages +EXPORT_SYMBOL vmlinux 0x3917366d fscrypt_has_permitted_context +EXPORT_SYMBOL vmlinux 0x392a35a6 inet6_bind +EXPORT_SYMBOL vmlinux 0x392b1fea wait_for_completion_io +EXPORT_SYMBOL vmlinux 0x3939f8f0 rfkill_pause_polling +EXPORT_SYMBOL vmlinux 0x394242f4 mr_rtm_dumproute +EXPORT_SYMBOL vmlinux 0x39461d6a in_egroup_p +EXPORT_SYMBOL vmlinux 0x394a1e11 phy_sfp_attach +EXPORT_SYMBOL vmlinux 0x39523bfd simple_dir_operations +EXPORT_SYMBOL vmlinux 0x3955fcf6 __kfifo_in_r +EXPORT_SYMBOL vmlinux 0x397ee925 mr_mfc_find_parent +EXPORT_SYMBOL vmlinux 0x39991865 icmp_global_allow +EXPORT_SYMBOL vmlinux 0x399ad043 __kfifo_dma_out_finish_r +EXPORT_SYMBOL vmlinux 0x399b56b1 dev_disable_lro +EXPORT_SYMBOL vmlinux 0x39b44157 skb_queue_head +EXPORT_SYMBOL vmlinux 0x39b52d19 __bitmap_and +EXPORT_SYMBOL vmlinux 0x39ce9a30 seq_open_private +EXPORT_SYMBOL vmlinux 0x39e03643 phy_connect +EXPORT_SYMBOL vmlinux 0x39e3c030 do_trace_read_msr +EXPORT_SYMBOL vmlinux 0x39e4bba6 simple_dir_inode_operations +EXPORT_SYMBOL vmlinux 0x39e9425c security_inet_conn_request +EXPORT_SYMBOL vmlinux 0x39ee73be inet_addr_type_dev_table +EXPORT_SYMBOL vmlinux 0x39eec112 seg6_push_hmac +EXPORT_SYMBOL vmlinux 0x3a08475f platform_thermal_notify +EXPORT_SYMBOL vmlinux 0x3a13f54a sgl_alloc +EXPORT_SYMBOL vmlinux 0x3a27d6a5 ps2_end_command +EXPORT_SYMBOL vmlinux 0x3a2d1dfa rdmsr_safe_regs_on_cpu +EXPORT_SYMBOL vmlinux 0x3a2f6702 sg_alloc_table +EXPORT_SYMBOL vmlinux 0x3a318366 __neigh_create +EXPORT_SYMBOL vmlinux 0x3a32839e intel_gtt_chipset_flush +EXPORT_SYMBOL vmlinux 0x3a35d29b tcf_chain_put_by_act +EXPORT_SYMBOL vmlinux 0x3a4f9d28 rng_is_initialized +EXPORT_SYMBOL vmlinux 0x3a719a74 dquot_commit_info +EXPORT_SYMBOL vmlinux 0x3a75396b pnp_register_driver +EXPORT_SYMBOL vmlinux 0x3a7ac65c build_skb +EXPORT_SYMBOL vmlinux 0x3aa8a01a pnp_start_dev +EXPORT_SYMBOL vmlinux 0x3ab7b1cc scsi_set_sense_field_pointer +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 0x3aed78b9 kmem_cache_free +EXPORT_SYMBOL vmlinux 0x3afb11a7 kobject_set_name +EXPORT_SYMBOL vmlinux 0x3aff3200 acpi_evaluate_object_typed +EXPORT_SYMBOL vmlinux 0x3b029f48 acpi_install_fixed_event_handler +EXPORT_SYMBOL vmlinux 0x3b0faa12 jbd2_journal_check_available_features +EXPORT_SYMBOL vmlinux 0x3b20fb95 dma_fence_remove_callback +EXPORT_SYMBOL vmlinux 0x3b2f1449 dcb_ieee_getapp_prio_dscp_mask_map +EXPORT_SYMBOL vmlinux 0x3b321462 LZ4_setStreamDecode +EXPORT_SYMBOL vmlinux 0x3b35d5bd ip_getsockopt +EXPORT_SYMBOL vmlinux 0x3b3f0d88 tty_write_room +EXPORT_SYMBOL vmlinux 0x3b4d3fca __x86_retpoline_r8 +EXPORT_SYMBOL vmlinux 0x3b5480e4 fs_param_is_u64 +EXPORT_SYMBOL vmlinux 0x3b566861 generic_file_direct_write +EXPORT_SYMBOL vmlinux 0x3b5bc0db bd_start_claiming +EXPORT_SYMBOL vmlinux 0x3b644591 __bitmap_shift_left +EXPORT_SYMBOL vmlinux 0x3b717c5f call_usermodehelper_setup +EXPORT_SYMBOL vmlinux 0x3b83610f cpu_sibling_map +EXPORT_SYMBOL vmlinux 0x3b9144c9 acpi_get_current_resources +EXPORT_SYMBOL vmlinux 0x3b97cb3d simple_unlink +EXPORT_SYMBOL vmlinux 0x3bbbf098 netif_carrier_on +EXPORT_SYMBOL vmlinux 0x3bbd4bef bdget +EXPORT_SYMBOL vmlinux 0x3bc3776d mmc_set_blocklen +EXPORT_SYMBOL vmlinux 0x3be7643e security_xfrm_policy_free +EXPORT_SYMBOL vmlinux 0x3bec8359 ps2_command +EXPORT_SYMBOL vmlinux 0x3c163bcb phy_support_asym_pause +EXPORT_SYMBOL vmlinux 0x3c185c61 page_put_link +EXPORT_SYMBOL vmlinux 0x3c38b513 convert_art_ns_to_tsc +EXPORT_SYMBOL vmlinux 0x3c3fce39 __local_bh_enable_ip +EXPORT_SYMBOL vmlinux 0x3c3ff9fd sprintf +EXPORT_SYMBOL vmlinux 0x3c427f67 cpu_die_map +EXPORT_SYMBOL vmlinux 0x3c457453 ioread64_lo_hi +EXPORT_SYMBOL vmlinux 0x3c4c239e unregister_netdevice_queue +EXPORT_SYMBOL vmlinux 0x3c568f1d page_pool_alloc_pages +EXPORT_SYMBOL vmlinux 0x3c66994f __dev_remove_pack +EXPORT_SYMBOL vmlinux 0x3c6832df dev_get_iflink +EXPORT_SYMBOL vmlinux 0x3c6c3a31 __scsi_add_device +EXPORT_SYMBOL vmlinux 0x3c754126 fb_class +EXPORT_SYMBOL vmlinux 0x3c7a6fc5 can_nice +EXPORT_SYMBOL vmlinux 0x3c80c06c kstrtoull +EXPORT_SYMBOL vmlinux 0x3cc18866 mipi_dsi_dcs_write +EXPORT_SYMBOL vmlinux 0x3cc59a1c inet_pton_with_scope +EXPORT_SYMBOL vmlinux 0x3ccc8dbc __x86_retpoline_r14 +EXPORT_SYMBOL vmlinux 0x3ce4ca6f disable_irq +EXPORT_SYMBOL vmlinux 0x3cfa1b0f inet_sk_rebuild_header +EXPORT_SYMBOL vmlinux 0x3d02cd70 dma_fence_signal_locked +EXPORT_SYMBOL vmlinux 0x3d0d08e5 pci_enable_ptm +EXPORT_SYMBOL vmlinux 0x3d210724 gen_pool_dma_zalloc_align +EXPORT_SYMBOL vmlinux 0x3d290231 eth_platform_get_mac_address +EXPORT_SYMBOL vmlinux 0x3d29d4f2 copy_page_to_iter +EXPORT_SYMBOL vmlinux 0x3d43cf64 rt_dst_clone +EXPORT_SYMBOL vmlinux 0x3d4e28e7 neigh_seq_start +EXPORT_SYMBOL vmlinux 0x3d56e7b3 utf8_unload +EXPORT_SYMBOL vmlinux 0x3d5bb3fd refcount_dec_and_lock_irqsave +EXPORT_SYMBOL vmlinux 0x3d5bd257 write_inode_now +EXPORT_SYMBOL vmlinux 0x3d740f97 netif_stacked_transfer_operstate +EXPORT_SYMBOL vmlinux 0x3d7b7312 sget_fc +EXPORT_SYMBOL vmlinux 0x3da171f9 pci_mem_start +EXPORT_SYMBOL vmlinux 0x3dabf271 memcg_sockets_enabled_key +EXPORT_SYMBOL vmlinux 0x3dad9978 cancel_delayed_work +EXPORT_SYMBOL vmlinux 0x3dbebf60 blk_mq_kick_requeue_list +EXPORT_SYMBOL vmlinux 0x3dc619d3 swake_up_locked +EXPORT_SYMBOL vmlinux 0x3dcb7206 alloc_buffer_head +EXPORT_SYMBOL vmlinux 0x3dcb88a0 irq_set_handler_data +EXPORT_SYMBOL vmlinux 0x3dd9b230 proc_dointvec_userhz_jiffies +EXPORT_SYMBOL vmlinux 0x3ddc6c04 x86_bios_cpu_apicid +EXPORT_SYMBOL vmlinux 0x3de3a353 twl6040_set_pll +EXPORT_SYMBOL vmlinux 0x3dfb86b9 resource_list_create_entry +EXPORT_SYMBOL vmlinux 0x3dfc897c seq_hlist_start_head +EXPORT_SYMBOL vmlinux 0x3e01bec3 __cleancache_invalidate_page +EXPORT_SYMBOL vmlinux 0x3e084bad cros_ec_cmd_xfer_status +EXPORT_SYMBOL vmlinux 0x3e2b0ba6 groups_alloc +EXPORT_SYMBOL vmlinux 0x3e38ad97 skb_kill_datagram +EXPORT_SYMBOL vmlinux 0x3e714c83 vfs_statfs +EXPORT_SYMBOL vmlinux 0x3e728082 pci_enable_atomic_ops_to_root +EXPORT_SYMBOL vmlinux 0x3e803a6d tty_port_alloc_xmit_buf +EXPORT_SYMBOL vmlinux 0x3e9110fa __hw_addr_unsync +EXPORT_SYMBOL vmlinux 0x3ea36c16 fscrypt_decrypt_block_inplace +EXPORT_SYMBOL vmlinux 0x3eb13804 sock_no_ioctl +EXPORT_SYMBOL vmlinux 0x3eb291c7 page_symlink_inode_operations +EXPORT_SYMBOL vmlinux 0x3eb8d49f ps2_sendbyte +EXPORT_SYMBOL vmlinux 0x3ed7ea5c put_cmsg_scm_timestamping +EXPORT_SYMBOL vmlinux 0x3eeb2322 __wake_up +EXPORT_SYMBOL vmlinux 0x3efe1703 phy_unregister_fixup_for_id +EXPORT_SYMBOL vmlinux 0x3f02a280 mmc_unregister_driver +EXPORT_SYMBOL vmlinux 0x3f0546a8 ioread32_rep +EXPORT_SYMBOL vmlinux 0x3f0eabd2 xxh64_update +EXPORT_SYMBOL vmlinux 0x3f2dab06 vme_dma_list_free +EXPORT_SYMBOL vmlinux 0x3f351a63 mntget +EXPORT_SYMBOL vmlinux 0x3f37fde2 netdev_has_upper_dev_all_rcu +EXPORT_SYMBOL vmlinux 0x3f40042d ata_print_version +EXPORT_SYMBOL vmlinux 0x3f4287c3 netdev_emerg +EXPORT_SYMBOL vmlinux 0x3f4547a7 put_unused_fd +EXPORT_SYMBOL vmlinux 0x3f4bd846 gen_pool_first_fit_order_align +EXPORT_SYMBOL vmlinux 0x3f7b4fed serio_rescan +EXPORT_SYMBOL vmlinux 0x3f89071b security_ib_pkey_access +EXPORT_SYMBOL vmlinux 0x3f8d27b2 kthread_create_worker +EXPORT_SYMBOL vmlinux 0x3f9c9081 genphy_resume +EXPORT_SYMBOL vmlinux 0x3fada9c2 pci_alloc_irq_vectors_affinity +EXPORT_SYMBOL vmlinux 0x3fbf3c89 vme_slave_set +EXPORT_SYMBOL vmlinux 0x3fcdd3bb phy_ethtool_set_wol +EXPORT_SYMBOL vmlinux 0x3fd4c944 get_cpu_entry_area +EXPORT_SYMBOL vmlinux 0x3fd78f3b register_chrdev_region +EXPORT_SYMBOL vmlinux 0x3fe2ccbe memweight +EXPORT_SYMBOL vmlinux 0x3fef364a kill_pgrp +EXPORT_SYMBOL vmlinux 0x3ff1a63b pci_set_vpd_size +EXPORT_SYMBOL vmlinux 0x3ff8ed8f jbd2_journal_release_jbd_inode +EXPORT_SYMBOL vmlinux 0x400d4dc9 security_path_unlink +EXPORT_SYMBOL vmlinux 0x402880ec ps2_sliced_command +EXPORT_SYMBOL vmlinux 0x40309161 da903x_query_status +EXPORT_SYMBOL vmlinux 0x40364bc6 peernet2id +EXPORT_SYMBOL vmlinux 0x4055a920 acpi_remove_fixed_event_handler +EXPORT_SYMBOL vmlinux 0x405f2095 _dev_info +EXPORT_SYMBOL vmlinux 0x4066c4e5 xfrm_policy_walk_done +EXPORT_SYMBOL vmlinux 0x40885d2f vme_bus_type +EXPORT_SYMBOL vmlinux 0x40973662 sysctl_udp_mem +EXPORT_SYMBOL vmlinux 0x409873e3 tty_termios_baud_rate +EXPORT_SYMBOL vmlinux 0x409bcb62 mutex_unlock +EXPORT_SYMBOL vmlinux 0x40a9b349 vzalloc +EXPORT_SYMBOL vmlinux 0x40c716d0 sg_alloc_table_from_pages +EXPORT_SYMBOL vmlinux 0x40c7247c si_meminfo +EXPORT_SYMBOL vmlinux 0x40ce7efd security_sb_clone_mnt_opts +EXPORT_SYMBOL vmlinux 0x40d04664 console_trylock +EXPORT_SYMBOL vmlinux 0x40d59096 unregister_restart_handler +EXPORT_SYMBOL vmlinux 0x40d84a37 ZSTD_getFrameParams +EXPORT_SYMBOL vmlinux 0x40ed47f4 qdisc_warn_nonwc +EXPORT_SYMBOL vmlinux 0x40f5cf43 ip6_frag_init +EXPORT_SYMBOL vmlinux 0x40f9885a i2c_get_adapter +EXPORT_SYMBOL vmlinux 0x41012362 cdev_alloc +EXPORT_SYMBOL vmlinux 0x410c3b63 pagevec_lookup_range_tag +EXPORT_SYMBOL vmlinux 0x4113313e pci_bus_alloc_resource +EXPORT_SYMBOL vmlinux 0x41138369 unregister_framebuffer +EXPORT_SYMBOL vmlinux 0x4115f78a dm_register_target +EXPORT_SYMBOL vmlinux 0x41161ecb mr_mfc_find_any +EXPORT_SYMBOL vmlinux 0x411f347c blk_mq_unique_tag +EXPORT_SYMBOL vmlinux 0x41482d8b strndup_user +EXPORT_SYMBOL vmlinux 0x415b4ef6 lock_two_nondirectories +EXPORT_SYMBOL vmlinux 0x41621c3b writeback_inodes_sb +EXPORT_SYMBOL vmlinux 0x41744863 __netlink_dump_start +EXPORT_SYMBOL vmlinux 0x417abdb4 flow_block_cb_decref +EXPORT_SYMBOL vmlinux 0x4188d439 neigh_rand_reach_time +EXPORT_SYMBOL vmlinux 0x4198ca95 __do_once_done +EXPORT_SYMBOL vmlinux 0x41c15d16 vga_switcheroo_register_client +EXPORT_SYMBOL vmlinux 0x41c47fa3 phy_driver_register +EXPORT_SYMBOL vmlinux 0x41d465d5 bio_integrity_trim +EXPORT_SYMBOL vmlinux 0x41d705ab tcf_register_action +EXPORT_SYMBOL vmlinux 0x41efdeaf radix_tree_lookup_slot +EXPORT_SYMBOL vmlinux 0x42105c49 clk_bulk_get +EXPORT_SYMBOL vmlinux 0x4212dc8f input_unregister_handler +EXPORT_SYMBOL vmlinux 0x42160169 flush_workqueue +EXPORT_SYMBOL vmlinux 0x4221acca blk_queue_update_dma_alignment +EXPORT_SYMBOL vmlinux 0x422d3eb4 phy_attached_info_irq +EXPORT_SYMBOL vmlinux 0x422edc28 __xfrm_decode_session +EXPORT_SYMBOL vmlinux 0x4230a8d7 sg_nents_for_len +EXPORT_SYMBOL vmlinux 0x42468160 netdev_port_same_parent_id +EXPORT_SYMBOL vmlinux 0x4248ae3c single_task_running +EXPORT_SYMBOL vmlinux 0x424d3620 zlib_inflateIncomp +EXPORT_SYMBOL vmlinux 0x42578e80 acpi_get_type +EXPORT_SYMBOL vmlinux 0x42595e58 vgacon_text_force +EXPORT_SYMBOL vmlinux 0x42963a6d dev_pick_tx_zero +EXPORT_SYMBOL vmlinux 0x42bb8fbb __inet6_lookup_established +EXPORT_SYMBOL vmlinux 0x42bed8d4 unix_gc_lock +EXPORT_SYMBOL vmlinux 0x42c74229 kmem_cache_size +EXPORT_SYMBOL vmlinux 0x42d1d80d elv_rb_former_request +EXPORT_SYMBOL vmlinux 0x42f1b900 fb_pad_unaligned_buffer +EXPORT_SYMBOL vmlinux 0x4302111a kthread_associate_blkcg +EXPORT_SYMBOL vmlinux 0x4302d0eb free_pages +EXPORT_SYMBOL vmlinux 0x430ecc96 ZSTD_initCStream_usingCDict +EXPORT_SYMBOL vmlinux 0x43103cb5 phy_loopback +EXPORT_SYMBOL vmlinux 0x4318c2b2 unregister_qdisc +EXPORT_SYMBOL vmlinux 0x4336ed6c inet_frags_fini +EXPORT_SYMBOL vmlinux 0x4336fcca ucs2_as_utf8 +EXPORT_SYMBOL vmlinux 0x43388a0b _dev_err +EXPORT_SYMBOL vmlinux 0x433abe35 __sock_create +EXPORT_SYMBOL vmlinux 0x433cabfb acpi_decode_pld_buffer +EXPORT_SYMBOL vmlinux 0x4351577a fb_parse_edid +EXPORT_SYMBOL vmlinux 0x435775d2 forget_cached_acl +EXPORT_SYMBOL vmlinux 0x437a0d6d __sock_tx_timestamp +EXPORT_SYMBOL vmlinux 0x437c568a ilookup +EXPORT_SYMBOL vmlinux 0x438610bd security_tun_dev_alloc_security +EXPORT_SYMBOL vmlinux 0x439caeee bprm_change_interp +EXPORT_SYMBOL vmlinux 0x43a654bf blk_get_request +EXPORT_SYMBOL vmlinux 0x43b0463e iov_iter_single_seg_count +EXPORT_SYMBOL vmlinux 0x43ce49d0 generic_write_checks +EXPORT_SYMBOL vmlinux 0x44064f71 sock_no_sendmsg +EXPORT_SYMBOL vmlinux 0x4414264b __dquot_transfer +EXPORT_SYMBOL vmlinux 0x4417f017 get_user_pages +EXPORT_SYMBOL vmlinux 0x443013ec load_nls +EXPORT_SYMBOL vmlinux 0x4438b184 vfs_clone_file_range +EXPORT_SYMBOL vmlinux 0x4439e029 sock_dequeue_err_skb +EXPORT_SYMBOL vmlinux 0x44414ff2 iosf_mbi_unblock_punit_i2c_access +EXPORT_SYMBOL vmlinux 0x44462b88 __x86_retpoline_rdx +EXPORT_SYMBOL vmlinux 0x44469a76 crc_ccitt_false_table +EXPORT_SYMBOL vmlinux 0x4462d35e cpufreq_get_hw_max_freq +EXPORT_SYMBOL vmlinux 0x44902cff acpi_enable_event +EXPORT_SYMBOL vmlinux 0x449ad0a7 memcmp +EXPORT_SYMBOL vmlinux 0x449b6e27 security_socket_getpeersec_dgram +EXPORT_SYMBOL vmlinux 0x449daa06 get_super_thawed +EXPORT_SYMBOL vmlinux 0x44a6e90a irq_cpu_rmap_add +EXPORT_SYMBOL vmlinux 0x44aaf30f tsc_khz +EXPORT_SYMBOL vmlinux 0x44b0d5c6 dquot_load_quota_sb +EXPORT_SYMBOL vmlinux 0x44d69ce4 tty_register_driver +EXPORT_SYMBOL vmlinux 0x44e4cd51 fbcon_set_bitops +EXPORT_SYMBOL vmlinux 0x44e9a829 match_token +EXPORT_SYMBOL vmlinux 0x44f3130b i2c_verify_client +EXPORT_SYMBOL vmlinux 0x44f732ac generic_update_time +EXPORT_SYMBOL vmlinux 0x45006cee default_red +EXPORT_SYMBOL vmlinux 0x45081703 ec_get_handle +EXPORT_SYMBOL vmlinux 0x450df1fc __quota_error +EXPORT_SYMBOL vmlinux 0x4527313f get_task_cred +EXPORT_SYMBOL vmlinux 0x45293e68 thaw_bdev +EXPORT_SYMBOL vmlinux 0x452ba683 ipv6_ext_hdr +EXPORT_SYMBOL vmlinux 0x453c8403 pci_msi_enabled +EXPORT_SYMBOL vmlinux 0x45462b9e blkdev_get_by_dev +EXPORT_SYMBOL vmlinux 0x454c96f7 jbd2_journal_extend +EXPORT_SYMBOL vmlinux 0x45535485 xxh32_update +EXPORT_SYMBOL vmlinux 0x455bb372 fs_param_is_string +EXPORT_SYMBOL vmlinux 0x456fd764 hdmi_infoframe_log +EXPORT_SYMBOL vmlinux 0x45771f44 rtnl_kfree_skbs +EXPORT_SYMBOL vmlinux 0x4578f528 __kfifo_to_user +EXPORT_SYMBOL vmlinux 0x45817a19 dquot_initialize +EXPORT_SYMBOL vmlinux 0x4590dfbe ip_mc_join_group +EXPORT_SYMBOL vmlinux 0x459ce606 tcp_mtup_init +EXPORT_SYMBOL vmlinux 0x45b630f6 block_invalidatepage +EXPORT_SYMBOL vmlinux 0x45cf2917 security_sock_rcv_skb +EXPORT_SYMBOL vmlinux 0x45d246da node_to_cpumask_map +EXPORT_SYMBOL vmlinux 0x45dacabd file_ns_capable +EXPORT_SYMBOL vmlinux 0x45e69e01 prepare_to_wait_exclusive +EXPORT_SYMBOL vmlinux 0x45e8d7b5 native_write_cr0 +EXPORT_SYMBOL vmlinux 0x45e8e812 console_stop +EXPORT_SYMBOL vmlinux 0x45f4e898 d_instantiate +EXPORT_SYMBOL vmlinux 0x45fe60a4 bio_integrity_add_page +EXPORT_SYMBOL vmlinux 0x46045dd7 kstrtou8 +EXPORT_SYMBOL vmlinux 0x46154121 tty_port_carrier_raised +EXPORT_SYMBOL vmlinux 0x461ac773 kstrtol_from_user +EXPORT_SYMBOL vmlinux 0x461d16ca sg_nents +EXPORT_SYMBOL vmlinux 0x4629334c __preempt_count +EXPORT_SYMBOL vmlinux 0x463219fb tcp_hashinfo +EXPORT_SYMBOL vmlinux 0x4635e919 find_inode_rcu +EXPORT_SYMBOL vmlinux 0x463a45ba invalidate_bdev +EXPORT_SYMBOL vmlinux 0x463aa1a8 skb_checksum_help +EXPORT_SYMBOL vmlinux 0x464cee66 mfd_cell_disable +EXPORT_SYMBOL vmlinux 0x465e24ff ucs2_utf8size +EXPORT_SYMBOL vmlinux 0x4662161a serio_open +EXPORT_SYMBOL vmlinux 0x466c14a7 __delay +EXPORT_SYMBOL vmlinux 0x467df16d netdev_rss_key_fill +EXPORT_SYMBOL vmlinux 0x469a6ec7 tcp_parse_md5sig_option +EXPORT_SYMBOL vmlinux 0x469f6e86 key_link +EXPORT_SYMBOL vmlinux 0x46aa6ea4 blk_rq_map_integrity_sg +EXPORT_SYMBOL vmlinux 0x46ae802b vlan_dev_vlan_id +EXPORT_SYMBOL vmlinux 0x46c47fb6 __node_distance +EXPORT_SYMBOL vmlinux 0x46ca6fd5 qdisc_watchdog_init +EXPORT_SYMBOL vmlinux 0x46cf10eb cachemode2protval +EXPORT_SYMBOL vmlinux 0x46cf9958 vfs_parse_fs_param +EXPORT_SYMBOL vmlinux 0x46cfc2c9 rawv6_mh_filter_unregister +EXPORT_SYMBOL vmlinux 0x46d14f3e vme_irq_generate +EXPORT_SYMBOL vmlinux 0x46d441bf vga_switcheroo_lock_ddc +EXPORT_SYMBOL vmlinux 0x46ec7bca skb_csum_hwoffload_help +EXPORT_SYMBOL vmlinux 0x46f48c5c tcf_exts_terse_dump +EXPORT_SYMBOL vmlinux 0x46f6399c kthread_bind +EXPORT_SYMBOL vmlinux 0x46f7de14 generic_error_remove_page +EXPORT_SYMBOL vmlinux 0x46ffb972 bio_free_pages +EXPORT_SYMBOL vmlinux 0x470339d0 page_symlink +EXPORT_SYMBOL vmlinux 0x470b73ca netdev_pick_tx +EXPORT_SYMBOL vmlinux 0x4715a909 acpi_load_table +EXPORT_SYMBOL vmlinux 0x4740b3bc xen_arch_unregister_cpu +EXPORT_SYMBOL vmlinux 0x47690cf6 migrate_page_move_mapping +EXPORT_SYMBOL vmlinux 0x47709e42 free_anon_bdev +EXPORT_SYMBOL vmlinux 0x4776aeb7 compat_nf_getsockopt +EXPORT_SYMBOL vmlinux 0x4785ddfe __sk_mem_reclaim +EXPORT_SYMBOL vmlinux 0x47939e0d __tasklet_hi_schedule +EXPORT_SYMBOL vmlinux 0x47941711 _raw_spin_lock_irq +EXPORT_SYMBOL vmlinux 0x479471a9 phy_device_free +EXPORT_SYMBOL vmlinux 0x47960bc4 proc_do_large_bitmap +EXPORT_SYMBOL vmlinux 0x479c3c86 find_next_zero_bit +EXPORT_SYMBOL vmlinux 0x47a0cdcb mb_cache_entry_find_next +EXPORT_SYMBOL vmlinux 0x47a1a25e flow_rule_match_basic +EXPORT_SYMBOL vmlinux 0x47c65bfc unregister_inet6addr_validator_notifier +EXPORT_SYMBOL vmlinux 0x47df2433 create_empty_buffers +EXPORT_SYMBOL vmlinux 0x47e65da9 dev_add_offload +EXPORT_SYMBOL vmlinux 0x4810841d uart_get_baud_rate +EXPORT_SYMBOL vmlinux 0x48193639 acpi_lid_open +EXPORT_SYMBOL vmlinux 0x4829cf6b fscrypt_enqueue_decrypt_work +EXPORT_SYMBOL vmlinux 0x482a3825 debugfs_create_automount +EXPORT_SYMBOL vmlinux 0x482f9820 get_mm_exe_file +EXPORT_SYMBOL vmlinux 0x483f81be mdio_device_free +EXPORT_SYMBOL vmlinux 0x4841bdee strnchr +EXPORT_SYMBOL vmlinux 0x48476bcb intel_gtt_insert_page +EXPORT_SYMBOL vmlinux 0x484a1c87 tty_unlock +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 0x486198b2 pci_find_resource +EXPORT_SYMBOL vmlinux 0x486af8a0 seq_path +EXPORT_SYMBOL vmlinux 0x486f6dad d_mark_dontcache +EXPORT_SYMBOL vmlinux 0x4871d75d clk_hw_register_clkdev +EXPORT_SYMBOL vmlinux 0x4885e23b agp_backend_acquire +EXPORT_SYMBOL vmlinux 0x488637d2 tcp_setsockopt +EXPORT_SYMBOL vmlinux 0x489f6e0b rdma_dim +EXPORT_SYMBOL vmlinux 0x48a5efba page_get_link +EXPORT_SYMBOL vmlinux 0x48a81d7e vfio_group_pin_pages +EXPORT_SYMBOL vmlinux 0x48a91171 string_get_size +EXPORT_SYMBOL vmlinux 0x48b8f6b9 __sb_start_write +EXPORT_SYMBOL vmlinux 0x48b99a13 vme_lm_free +EXPORT_SYMBOL vmlinux 0x48bcc527 configfs_depend_item +EXPORT_SYMBOL vmlinux 0x48c093fb _atomic_dec_and_lock_irqsave +EXPORT_SYMBOL vmlinux 0x48c42d2b __nla_put +EXPORT_SYMBOL vmlinux 0x48d50e79 amd_iommu_register_ppr_notifier +EXPORT_SYMBOL vmlinux 0x48de4232 kobject_get_unless_zero +EXPORT_SYMBOL vmlinux 0x48e02c8c dev_pm_opp_unregister_notifier +EXPORT_SYMBOL vmlinux 0x48f53fab tcf_unregister_action +EXPORT_SYMBOL vmlinux 0x49045426 icmp_err_convert +EXPORT_SYMBOL vmlinux 0x490ce7cc get_tree_keyed +EXPORT_SYMBOL vmlinux 0x4917ebbd phy_device_register +EXPORT_SYMBOL vmlinux 0x4923d43c security_socket_socketpair +EXPORT_SYMBOL vmlinux 0x492c20cc pnp_unregister_driver +EXPORT_SYMBOL vmlinux 0x49331c4a current_time +EXPORT_SYMBOL vmlinux 0x49358325 dcache_readdir +EXPORT_SYMBOL vmlinux 0x494e3393 vm_get_page_prot +EXPORT_SYMBOL vmlinux 0x4958ae81 ptp_cancel_worker_sync +EXPORT_SYMBOL vmlinux 0x495e378d __pv_queued_spin_lock_slowpath +EXPORT_SYMBOL vmlinux 0x498493df d_set_d_op +EXPORT_SYMBOL vmlinux 0x498ceddc disk_stack_limits +EXPORT_SYMBOL vmlinux 0x498e9128 ZSTD_findDecompressedSize +EXPORT_SYMBOL vmlinux 0x499f0ecf nd_sb_checksum +EXPORT_SYMBOL vmlinux 0x49a8b07c tty_unregister_device +EXPORT_SYMBOL vmlinux 0x49ae87ea security_sctp_bind_connect +EXPORT_SYMBOL vmlinux 0x49b163b8 acpi_bus_scan +EXPORT_SYMBOL vmlinux 0x49c41a57 _raw_spin_unlock_bh +EXPORT_SYMBOL vmlinux 0x49de0597 dma_direct_map_sg +EXPORT_SYMBOL vmlinux 0x49ed86a0 ZSTD_endStream +EXPORT_SYMBOL vmlinux 0x49eef6f9 netdev_warn +EXPORT_SYMBOL vmlinux 0x4a00974d dm_kcopyd_zero +EXPORT_SYMBOL vmlinux 0x4a0abc9c dcb_ieee_getapp_mask +EXPORT_SYMBOL vmlinux 0x4a0dec64 fs_context_for_mount +EXPORT_SYMBOL vmlinux 0x4a339154 security_binder_transfer_binder +EXPORT_SYMBOL vmlinux 0x4a3ad70e wait_for_completion_timeout +EXPORT_SYMBOL vmlinux 0x4a453f53 iowrite32 +EXPORT_SYMBOL vmlinux 0x4a4e202d inet6_csk_route_req +EXPORT_SYMBOL vmlinux 0x4a6a7a96 tcp_getsockopt +EXPORT_SYMBOL vmlinux 0x4a6fcea3 kern_unmount +EXPORT_SYMBOL vmlinux 0x4a7272c2 tcf_exts_change +EXPORT_SYMBOL vmlinux 0x4a7c7fbb ipv6_select_ident +EXPORT_SYMBOL vmlinux 0x4a96a8eb xxh32_digest +EXPORT_SYMBOL vmlinux 0x4ab208ba acpi_walk_resource_buffer +EXPORT_SYMBOL vmlinux 0x4ab97102 genlmsg_put +EXPORT_SYMBOL vmlinux 0x4aba4bc5 proc_create +EXPORT_SYMBOL vmlinux 0x4abb7d10 cpu_rmap_update +EXPORT_SYMBOL vmlinux 0x4ac33529 finish_swait +EXPORT_SYMBOL vmlinux 0x4ac7c97e dump_align +EXPORT_SYMBOL vmlinux 0x4ad53f9b dm_table_get_md +EXPORT_SYMBOL vmlinux 0x4aea463f crc32_le_shift +EXPORT_SYMBOL vmlinux 0x4afb2238 add_wait_queue +EXPORT_SYMBOL vmlinux 0x4b041798 seq_write +EXPORT_SYMBOL vmlinux 0x4b081b24 sock_bindtoindex +EXPORT_SYMBOL vmlinux 0x4b085dbf agp3_generic_configure +EXPORT_SYMBOL vmlinux 0x4b090e16 nf_log_register +EXPORT_SYMBOL vmlinux 0x4b2f2f28 kmem_cache_create +EXPORT_SYMBOL vmlinux 0x4b353dd1 pcie_relaxed_ordering_enabled +EXPORT_SYMBOL vmlinux 0x4b5fd49e dm_kcopyd_do_callback +EXPORT_SYMBOL vmlinux 0x4b6187a0 uart_resume_port +EXPORT_SYMBOL vmlinux 0x4b6264f6 reuseport_add_sock +EXPORT_SYMBOL vmlinux 0x4b6561f7 netif_carrier_off +EXPORT_SYMBOL vmlinux 0x4b6df007 acpi_evaluate_reg +EXPORT_SYMBOL vmlinux 0x4b6e42c7 dev_set_mtu +EXPORT_SYMBOL vmlinux 0x4b6f62e6 pci_write_config_byte +EXPORT_SYMBOL vmlinux 0x4b7be8fb scm_detach_fds +EXPORT_SYMBOL vmlinux 0x4b99ca0e sock_alloc +EXPORT_SYMBOL vmlinux 0x4ba2f948 sock_no_recvmsg +EXPORT_SYMBOL vmlinux 0x4ba8295d ethtool_rx_flow_rule_create +EXPORT_SYMBOL vmlinux 0x4bba5a9d netpoll_setup +EXPORT_SYMBOL vmlinux 0x4bcc2662 mempool_init_node +EXPORT_SYMBOL vmlinux 0x4bccecbf vfs_iter_read +EXPORT_SYMBOL vmlinux 0x4bd153bd kernel_getsockname +EXPORT_SYMBOL vmlinux 0x4bda1586 xfrm_state_walk_done +EXPORT_SYMBOL vmlinux 0x4bdf2390 account_page_redirty +EXPORT_SYMBOL vmlinux 0x4bef1c67 empty_name +EXPORT_SYMBOL vmlinux 0x4c07a7e0 acpi_processor_unregister_performance +EXPORT_SYMBOL vmlinux 0x4c1303fa phy_stop +EXPORT_SYMBOL vmlinux 0x4c38d4e0 utf8_strncasecmp_folded +EXPORT_SYMBOL vmlinux 0x4c416eb9 LZ4_decompress_fast +EXPORT_SYMBOL vmlinux 0x4c5c5460 inode_init_always +EXPORT_SYMBOL vmlinux 0x4c9d28b0 phys_base +EXPORT_SYMBOL vmlinux 0x4cb37298 tcp_recvmsg +EXPORT_SYMBOL vmlinux 0x4cba441d iwe_stream_add_event +EXPORT_SYMBOL vmlinux 0x4cbb0785 dput +EXPORT_SYMBOL vmlinux 0x4cbb80ca blk_mq_stop_hw_queue +EXPORT_SYMBOL vmlinux 0x4cd5b5e1 __mark_inode_dirty +EXPORT_SYMBOL vmlinux 0x4cd5bc5e rdmsr_safe_regs +EXPORT_SYMBOL vmlinux 0x4cf40b19 ip_route_input_noref +EXPORT_SYMBOL vmlinux 0x4cff6381 mark_buffer_write_io_error +EXPORT_SYMBOL vmlinux 0x4d02f2a8 __dquot_free_space +EXPORT_SYMBOL vmlinux 0x4d159d46 ppp_output_wakeup +EXPORT_SYMBOL vmlinux 0x4d2c7133 acpi_info +EXPORT_SYMBOL vmlinux 0x4d3cf874 sock_gettstamp +EXPORT_SYMBOL vmlinux 0x4d3d92c2 iommu_dma_get_resv_regions +EXPORT_SYMBOL vmlinux 0x4d640a04 __serio_register_port +EXPORT_SYMBOL vmlinux 0x4d804907 sync_mapping_buffers +EXPORT_SYMBOL vmlinux 0x4d924f20 memremap +EXPORT_SYMBOL vmlinux 0x4d9b21fe __x86_retpoline_r11 +EXPORT_SYMBOL vmlinux 0x4d9b652b rb_erase +EXPORT_SYMBOL vmlinux 0x4da77f49 scsi_scan_host +EXPORT_SYMBOL vmlinux 0x4db947eb skb_prepare_seq_read +EXPORT_SYMBOL vmlinux 0x4dca08ee sync_file_get_fence +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 0x4dfeb676 __xfrm_dst_lookup +EXPORT_SYMBOL vmlinux 0x4e20bcf8 radix_tree_tag_set +EXPORT_SYMBOL vmlinux 0x4e297de2 sock_register +EXPORT_SYMBOL vmlinux 0x4e3567f7 match_int +EXPORT_SYMBOL vmlinux 0x4e4f0f16 dma_fence_chain_find_seqno +EXPORT_SYMBOL vmlinux 0x4e547048 __kmalloc_node_track_caller +EXPORT_SYMBOL vmlinux 0x4e56e312 devm_extcon_register_notifier +EXPORT_SYMBOL vmlinux 0x4e68e9be rb_next_postorder +EXPORT_SYMBOL vmlinux 0x4e6e4b41 radix_tree_delete +EXPORT_SYMBOL vmlinux 0x4e6e8ea7 fg_console +EXPORT_SYMBOL vmlinux 0x4e74bb06 inet_frags_init +EXPORT_SYMBOL vmlinux 0x4e87b0a0 amd_iommu_domain_direct_map +EXPORT_SYMBOL vmlinux 0x4e8bd79f qdisc_offload_graft_helper +EXPORT_SYMBOL vmlinux 0x4ea25709 dql_reset +EXPORT_SYMBOL vmlinux 0x4ea7340d inet_csk_delete_keepalive_timer +EXPORT_SYMBOL vmlinux 0x4eaa410c to_nd_dax +EXPORT_SYMBOL vmlinux 0x4eada8f7 security_secid_to_secctx +EXPORT_SYMBOL vmlinux 0x4eaeba55 fs_param_is_s32 +EXPORT_SYMBOL vmlinux 0x4eb46cc6 mipi_dsi_set_maximum_return_packet_size +EXPORT_SYMBOL vmlinux 0x4ebbbc53 blk_stack_limits +EXPORT_SYMBOL vmlinux 0x4ec54e78 bitmap_to_arr32 +EXPORT_SYMBOL vmlinux 0x4ec63600 security_inode_listsecurity +EXPORT_SYMBOL vmlinux 0x4ee79e32 seq_read +EXPORT_SYMBOL vmlinux 0x4ef5ede0 single_release +EXPORT_SYMBOL vmlinux 0x4ef96045 nla_put +EXPORT_SYMBOL vmlinux 0x4f08f119 misc_register +EXPORT_SYMBOL vmlinux 0x4f126474 skb_unlink +EXPORT_SYMBOL vmlinux 0x4f1c03f4 simple_lookup +EXPORT_SYMBOL vmlinux 0x4f1cd128 security_tun_dev_create +EXPORT_SYMBOL vmlinux 0x4f2250ba rtc_tm_to_time64 +EXPORT_SYMBOL vmlinux 0x4f3467ee napi_gro_flush +EXPORT_SYMBOL vmlinux 0x4f4c9511 elv_rb_del +EXPORT_SYMBOL vmlinux 0x4f4d78c5 LZ4_compress_default +EXPORT_SYMBOL vmlinux 0x4f51b82b user_revoke +EXPORT_SYMBOL vmlinux 0x4f55166f acpi_set_current_resources +EXPORT_SYMBOL vmlinux 0x4f711f84 intel_scu_ipc_dev_iowrite8 +EXPORT_SYMBOL vmlinux 0x4f754508 mmc_cqe_start_req +EXPORT_SYMBOL vmlinux 0x4f797c39 neigh_seq_stop +EXPORT_SYMBOL vmlinux 0x4f95867b dma_cache_sync +EXPORT_SYMBOL vmlinux 0x4fcc8ad2 ex_handler_uaccess +EXPORT_SYMBOL vmlinux 0x4fd43521 icmp_ndo_send +EXPORT_SYMBOL vmlinux 0x4fdee897 i8042_command +EXPORT_SYMBOL vmlinux 0x4ff38b19 register_nexthop_notifier +EXPORT_SYMBOL vmlinux 0x4ff80198 netif_receive_skb_core +EXPORT_SYMBOL vmlinux 0x50097088 security_tun_dev_free_security +EXPORT_SYMBOL vmlinux 0x5009c71d glob_match +EXPORT_SYMBOL vmlinux 0x500d36be pci_stop_and_remove_bus_device +EXPORT_SYMBOL vmlinux 0x5027bde2 acpi_acquire_mutex +EXPORT_SYMBOL vmlinux 0x503ddb9b touch_atime +EXPORT_SYMBOL vmlinux 0x503eda62 iov_iter_copy_from_user_atomic +EXPORT_SYMBOL vmlinux 0x50463de5 fqdir_init +EXPORT_SYMBOL vmlinux 0x504b99a7 vlan_filter_drop_vids +EXPORT_SYMBOL vmlinux 0x5058b3f8 simple_write_end +EXPORT_SYMBOL vmlinux 0x50624917 sha1_init +EXPORT_SYMBOL vmlinux 0x506dff1a __genradix_free +EXPORT_SYMBOL vmlinux 0x507856fd blk_queue_alignment_offset +EXPORT_SYMBOL vmlinux 0x50793944 request_key_tag +EXPORT_SYMBOL vmlinux 0x508099b6 mfd_add_devices +EXPORT_SYMBOL vmlinux 0x509b64ea acpi_has_method +EXPORT_SYMBOL vmlinux 0x50a4698c fb_videomode_to_modelist +EXPORT_SYMBOL vmlinux 0x50b73ce2 rfkill_find_type +EXPORT_SYMBOL vmlinux 0x50ba4cc3 sock_release +EXPORT_SYMBOL vmlinux 0x50be748d security_ib_free_security +EXPORT_SYMBOL vmlinux 0x50ceadb7 devm_extcon_unregister_notifier_all +EXPORT_SYMBOL vmlinux 0x50d68377 arch_phys_wc_del +EXPORT_SYMBOL vmlinux 0x50e45016 ip6_fraglist_init +EXPORT_SYMBOL vmlinux 0x50f91491 __genradix_ptr +EXPORT_SYMBOL vmlinux 0x50faa977 nobh_truncate_page +EXPORT_SYMBOL vmlinux 0x50fdc17a __filemap_set_wb_err +EXPORT_SYMBOL vmlinux 0x5102a30b do_wait_intr_irq +EXPORT_SYMBOL vmlinux 0x510c9950 blk_mq_queue_stopped +EXPORT_SYMBOL vmlinux 0x511f3ea1 compat_ptr_ioctl +EXPORT_SYMBOL vmlinux 0x5123ccc7 ip_do_fragment +EXPORT_SYMBOL vmlinux 0x51428dfe netdev_get_xmit_slave +EXPORT_SYMBOL vmlinux 0x515083bf acpi_release_mutex +EXPORT_SYMBOL vmlinux 0x515f1008 free_xenballooned_pages +EXPORT_SYMBOL vmlinux 0x51641162 opal_unlock_from_suspend +EXPORT_SYMBOL vmlinux 0x51760917 _raw_spin_lock_irqsave +EXPORT_SYMBOL vmlinux 0x518d9af4 __dquot_alloc_space +EXPORT_SYMBOL vmlinux 0x518e153b cdrom_release +EXPORT_SYMBOL vmlinux 0x51924f6d security_sock_graft +EXPORT_SYMBOL vmlinux 0x51a898e2 pps_register_source +EXPORT_SYMBOL vmlinux 0x51b63f77 inet6_register_protosw +EXPORT_SYMBOL vmlinux 0x51c54dea devfreq_update_interval +EXPORT_SYMBOL vmlinux 0x51d12d4e acpi_pci_disabled +EXPORT_SYMBOL vmlinux 0x51d8ad47 copy_string_kernel +EXPORT_SYMBOL vmlinux 0x51f298e0 intel_scu_ipc_dev_ioread8 +EXPORT_SYMBOL vmlinux 0x51f8df6f blkdev_get +EXPORT_SYMBOL vmlinux 0x522100fa open_with_fake_path +EXPORT_SYMBOL vmlinux 0x5228cc27 seq_put_decimal_ll +EXPORT_SYMBOL vmlinux 0x522925f2 tcf_chain_get_by_act +EXPORT_SYMBOL vmlinux 0x5236d1df flow_rule_match_mpls +EXPORT_SYMBOL vmlinux 0x523bb715 fb_set_suspend +EXPORT_SYMBOL vmlinux 0x5254a42c locks_mandatory_area +EXPORT_SYMBOL vmlinux 0x52580ec5 dev_get_by_napi_id +EXPORT_SYMBOL vmlinux 0x525a6405 pcie_set_mps +EXPORT_SYMBOL vmlinux 0x526eef2c hdmi_vendor_infoframe_pack +EXPORT_SYMBOL vmlinux 0x52822f8f crypto_sha1_finup +EXPORT_SYMBOL vmlinux 0x5286a7b5 blk_put_request +EXPORT_SYMBOL vmlinux 0x52983a4f vme_master_write +EXPORT_SYMBOL vmlinux 0x529dfbfb bdev_read_only +EXPORT_SYMBOL vmlinux 0x52bf1409 dquot_acquire +EXPORT_SYMBOL vmlinux 0x52d31ef1 vfs_iocb_iter_read +EXPORT_SYMBOL vmlinux 0x52d717da xz_dec_init +EXPORT_SYMBOL vmlinux 0x52ecbc75 crc_ccitt +EXPORT_SYMBOL vmlinux 0x53098447 devm_ioremap +EXPORT_SYMBOL vmlinux 0x530b1e98 pm_suspend +EXPORT_SYMBOL vmlinux 0x530b7a90 inode_dio_wait +EXPORT_SYMBOL vmlinux 0x53126ecc __percpu_counter_sum +EXPORT_SYMBOL vmlinux 0x5312902f blk_mq_rq_cpu +EXPORT_SYMBOL vmlinux 0x531abc9a netpoll_parse_options +EXPORT_SYMBOL vmlinux 0x531b604e __virt_addr_valid +EXPORT_SYMBOL vmlinux 0x5325d15d __sk_mem_raise_allocated +EXPORT_SYMBOL vmlinux 0x533206b5 sort_r +EXPORT_SYMBOL vmlinux 0x534e03bd generic_file_read_iter +EXPORT_SYMBOL vmlinux 0x5354ee1a generic_writepages +EXPORT_SYMBOL vmlinux 0x53569707 this_cpu_off +EXPORT_SYMBOL vmlinux 0x5367b4b4 boot_cpu_data +EXPORT_SYMBOL vmlinux 0x53842c0d audit_log_start +EXPORT_SYMBOL vmlinux 0x53b8578a scsi_block_when_processing_errors +EXPORT_SYMBOL vmlinux 0x53b954a2 up_read +EXPORT_SYMBOL vmlinux 0x53be34f0 __x86_retpoline_rsi +EXPORT_SYMBOL vmlinux 0x53c09d2f fs_param_is_blockdev +EXPORT_SYMBOL vmlinux 0x53e10c60 nd_region_release_lane +EXPORT_SYMBOL vmlinux 0x53e29e21 jbd2_journal_try_to_free_buffers +EXPORT_SYMBOL vmlinux 0x53fa36d1 ZSTD_decompressBlock +EXPORT_SYMBOL vmlinux 0x54175c5f acpi_read_bit_register +EXPORT_SYMBOL vmlinux 0x54245b39 kstrtoull_from_user +EXPORT_SYMBOL vmlinux 0x5424d57d sdev_prefix_printk +EXPORT_SYMBOL vmlinux 0x5435c3c5 __mdiobus_write +EXPORT_SYMBOL vmlinux 0x543cacd6 udp_disconnect +EXPORT_SYMBOL vmlinux 0x543ef284 seq_hlist_start +EXPORT_SYMBOL vmlinux 0x5443d50b xp_can_alloc +EXPORT_SYMBOL vmlinux 0x547a05df __nla_put_64bit +EXPORT_SYMBOL vmlinux 0x547e3344 acpi_disable +EXPORT_SYMBOL vmlinux 0x54826c2e inet_stream_connect +EXPORT_SYMBOL vmlinux 0x54a1a331 devm_clk_get +EXPORT_SYMBOL vmlinux 0x54a5f2e8 vlan_vid_del +EXPORT_SYMBOL vmlinux 0x54a9db5f _kstrtoul +EXPORT_SYMBOL vmlinux 0x54c4937f nf_getsockopt +EXPORT_SYMBOL vmlinux 0x54cbaca9 rproc_mem_entry_init +EXPORT_SYMBOL vmlinux 0x54e6fcdd net_enable_timestamp +EXPORT_SYMBOL vmlinux 0x54ea6dfe xen_start_flags +EXPORT_SYMBOL vmlinux 0x54ee5e45 tty_wait_until_sent +EXPORT_SYMBOL vmlinux 0x5506b8f7 netlbl_bitmap_setbit +EXPORT_SYMBOL vmlinux 0x551368e1 always_delete_dentry +EXPORT_SYMBOL vmlinux 0x551bd071 __rb_erase_color +EXPORT_SYMBOL vmlinux 0x551d6bb0 param_get_invbool +EXPORT_SYMBOL vmlinux 0x55217d2b pci_request_irq +EXPORT_SYMBOL vmlinux 0x552769e3 udp_sendmsg +EXPORT_SYMBOL vmlinux 0x554ae3a4 irq_poll_sched +EXPORT_SYMBOL vmlinux 0x555fa902 bio_clone_fast +EXPORT_SYMBOL vmlinux 0x556422b3 ioremap_cache +EXPORT_SYMBOL vmlinux 0x556b5917 unregister_fib_notifier +EXPORT_SYMBOL vmlinux 0x556b5d62 __kfifo_dma_in_prepare_r +EXPORT_SYMBOL vmlinux 0x556cca46 x86_apple_machine +EXPORT_SYMBOL vmlinux 0x556dfe5f netdev_state_change +EXPORT_SYMBOL vmlinux 0x5585b4a8 dev_addr_flush +EXPORT_SYMBOL vmlinux 0x558a2799 commit_creds +EXPORT_SYMBOL vmlinux 0x558b281d aes_expandkey +EXPORT_SYMBOL vmlinux 0x558e837d dec_zone_page_state +EXPORT_SYMBOL vmlinux 0x559d2534 sock_set_rcvbuf +EXPORT_SYMBOL vmlinux 0x55a466a3 iget_locked +EXPORT_SYMBOL vmlinux 0x55a7b9c3 dst_alloc +EXPORT_SYMBOL vmlinux 0x55e31703 ethtool_convert_link_mode_to_legacy_u32 +EXPORT_SYMBOL vmlinux 0x55e6a907 mmc_run_bkops +EXPORT_SYMBOL vmlinux 0x55f739ee dcache_dir_open +EXPORT_SYMBOL vmlinux 0x55f95e07 ioremap_prot +EXPORT_SYMBOL vmlinux 0x5635a60a vmalloc_user +EXPORT_SYMBOL vmlinux 0x56466e42 ZSTD_CStreamInSize +EXPORT_SYMBOL vmlinux 0x56470118 __warn_printk +EXPORT_SYMBOL vmlinux 0x564f7608 acpi_reconfig_notifier_register +EXPORT_SYMBOL vmlinux 0x5674988e fscrypt_decrypt_pagecache_blocks +EXPORT_SYMBOL vmlinux 0x56802ae8 rps_cpu_mask +EXPORT_SYMBOL vmlinux 0x568b3075 iunique +EXPORT_SYMBOL vmlinux 0x569abcca acpi_walk_resources +EXPORT_SYMBOL vmlinux 0x56a8b919 framebuffer_alloc +EXPORT_SYMBOL vmlinux 0x56ab0d4e __napi_schedule +EXPORT_SYMBOL vmlinux 0x56ad5eae pcie_bandwidth_available +EXPORT_SYMBOL vmlinux 0x56c8799d scsi_kunmap_atomic_sg +EXPORT_SYMBOL vmlinux 0x56dccdf0 scmd_printk +EXPORT_SYMBOL vmlinux 0x56e91b2d __netif_schedule +EXPORT_SYMBOL vmlinux 0x56f8c371 __tracepoint_kfree +EXPORT_SYMBOL vmlinux 0x57125dba seq_hex_dump +EXPORT_SYMBOL vmlinux 0x572e7ea5 inet_register_protosw +EXPORT_SYMBOL vmlinux 0x5734829a file_fdatawait_range +EXPORT_SYMBOL vmlinux 0x573673f6 neigh_changeaddr +EXPORT_SYMBOL vmlinux 0x573c66d9 mipi_dsi_turn_on_peripheral +EXPORT_SYMBOL vmlinux 0x5743d381 key_put +EXPORT_SYMBOL vmlinux 0x57467282 ps2_drain +EXPORT_SYMBOL vmlinux 0x5747380e skb_copy_header +EXPORT_SYMBOL vmlinux 0x574c2e74 bitmap_release_region +EXPORT_SYMBOL vmlinux 0x57506d45 __inet_stream_connect +EXPORT_SYMBOL vmlinux 0x57575f08 dmaengine_put +EXPORT_SYMBOL vmlinux 0x5767fbff phy_attached_print +EXPORT_SYMBOL vmlinux 0x578a1876 tun_xdp_to_ptr +EXPORT_SYMBOL vmlinux 0x578a408b ZSTD_initDCtx +EXPORT_SYMBOL vmlinux 0x578c38ae phy_set_max_speed +EXPORT_SYMBOL vmlinux 0x578d2423 netdev_boot_setup_check +EXPORT_SYMBOL vmlinux 0x57900416 gen_pool_fixed_alloc +EXPORT_SYMBOL vmlinux 0x5792f848 strlcpy +EXPORT_SYMBOL vmlinux 0x57bc19d2 down_write +EXPORT_SYMBOL vmlinux 0x57cdeecb add_to_pipe +EXPORT_SYMBOL vmlinux 0x57d02c70 qdisc_watchdog_init_clockid +EXPORT_SYMBOL vmlinux 0x57d4d008 inet_csk_destroy_sock +EXPORT_SYMBOL vmlinux 0x57e33915 __bforget +EXPORT_SYMBOL vmlinux 0x57f44a88 elv_rb_find +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 0x5834d106 from_kprojid +EXPORT_SYMBOL vmlinux 0x5838f6c9 rtc_valid_tm +EXPORT_SYMBOL vmlinux 0x583ea496 file_check_and_advance_wb_err +EXPORT_SYMBOL vmlinux 0x5849c48b tty_do_resize +EXPORT_SYMBOL vmlinux 0x584adcd2 nvm_unregister_tgt_type +EXPORT_SYMBOL vmlinux 0x5856bcec xp_free +EXPORT_SYMBOL vmlinux 0x5857b225 ioread16_rep +EXPORT_SYMBOL vmlinux 0x58604e4d alloc_iova_mem +EXPORT_SYMBOL vmlinux 0x58614c12 padata_alloc_possible +EXPORT_SYMBOL vmlinux 0x58697166 nvdimm_namespace_disk_name +EXPORT_SYMBOL vmlinux 0x586ab17d __pagevec_release +EXPORT_SYMBOL vmlinux 0x587f22d7 devmap_managed_key +EXPORT_SYMBOL vmlinux 0x58832761 jbd2_journal_blocks_per_page +EXPORT_SYMBOL vmlinux 0x589342d2 generic_read_dir +EXPORT_SYMBOL vmlinux 0x58acf24b mdiobus_register_board_info +EXPORT_SYMBOL vmlinux 0x58adb05c get_vaddr_frames +EXPORT_SYMBOL vmlinux 0x58b4645c dev_close_many +EXPORT_SYMBOL vmlinux 0x58b73bc7 match_wildcard +EXPORT_SYMBOL vmlinux 0x58bd8c27 vme_unregister_driver +EXPORT_SYMBOL vmlinux 0x58c288d1 vme_irq_handler +EXPORT_SYMBOL vmlinux 0x58c2a3bf fscrypt_fname_disk_to_usr +EXPORT_SYMBOL vmlinux 0x58cb0815 timestamp_truncate +EXPORT_SYMBOL vmlinux 0x58cbe57f tcp_parse_options +EXPORT_SYMBOL vmlinux 0x58d1d951 md_wait_for_blocked_rdev +EXPORT_SYMBOL vmlinux 0x58dd5616 kernel_sock_ip_overhead +EXPORT_SYMBOL vmlinux 0x58de051c nf_ct_get_tuple_skb +EXPORT_SYMBOL vmlinux 0x58defa7f dev_pm_opp_register_notifier +EXPORT_SYMBOL vmlinux 0x58e3306d bit_wait_io +EXPORT_SYMBOL vmlinux 0x58e367a0 thaw_super +EXPORT_SYMBOL vmlinux 0x58e4b0a7 mipi_dsi_compression_mode +EXPORT_SYMBOL vmlinux 0x58e5bccd fscrypt_inherit_context +EXPORT_SYMBOL vmlinux 0x58f088d1 bd_abort_claiming +EXPORT_SYMBOL vmlinux 0x590035ac filemap_range_has_page +EXPORT_SYMBOL vmlinux 0x59071988 __inode_sub_bytes +EXPORT_SYMBOL vmlinux 0x5907b9b5 nla_append +EXPORT_SYMBOL vmlinux 0x591506fc i2c_del_adapter +EXPORT_SYMBOL vmlinux 0x593235da edac_mc_find +EXPORT_SYMBOL vmlinux 0x593c1bac __x86_indirect_thunk_rbx +EXPORT_SYMBOL vmlinux 0x594a636a mmc_card_is_blockaddr +EXPORT_SYMBOL vmlinux 0x594bf15b ioport_map +EXPORT_SYMBOL vmlinux 0x59588850 vsscanf +EXPORT_SYMBOL vmlinux 0x595e8098 end_buffer_async_write +EXPORT_SYMBOL vmlinux 0x596d8afb con_copy_unimap +EXPORT_SYMBOL vmlinux 0x59715de8 abx500_get_chip_id +EXPORT_SYMBOL vmlinux 0x597f54c0 native_restore_fl +EXPORT_SYMBOL vmlinux 0x59807ef8 pci_get_subsys +EXPORT_SYMBOL vmlinux 0x599b5a34 seq_dentry +EXPORT_SYMBOL vmlinux 0x599fb41c kvmalloc_node +EXPORT_SYMBOL vmlinux 0x59a2f0ee packing +EXPORT_SYMBOL vmlinux 0x59aadddd kthread_destroy_worker +EXPORT_SYMBOL vmlinux 0x59b4ac3e tcp_memory_allocated +EXPORT_SYMBOL vmlinux 0x59b8a124 dev_uc_sync +EXPORT_SYMBOL vmlinux 0x59c4b8de configfs_register_default_group +EXPORT_SYMBOL vmlinux 0x59c92414 __lock_buffer +EXPORT_SYMBOL vmlinux 0x59e34404 input_register_handle +EXPORT_SYMBOL vmlinux 0x5a0b73d0 zlib_deflateInit2 +EXPORT_SYMBOL vmlinux 0x5a10d56f dma_set_coherent_mask +EXPORT_SYMBOL vmlinux 0x5a245f6d _raw_write_lock +EXPORT_SYMBOL vmlinux 0x5a27dcd5 __devm_release_region +EXPORT_SYMBOL vmlinux 0x5a328d51 _dev_alert +EXPORT_SYMBOL vmlinux 0x5a4398ee ip_check_defrag +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 0x5a79fe6a tty_port_lower_dtr_rts +EXPORT_SYMBOL vmlinux 0x5a8ae15a ZSTD_initDDict +EXPORT_SYMBOL vmlinux 0x5a921311 strncmp +EXPORT_SYMBOL vmlinux 0x5abc3280 padata_set_cpumask +EXPORT_SYMBOL vmlinux 0x5ac6d049 legacy_pic +EXPORT_SYMBOL vmlinux 0x5ac78688 phy_do_ioctl_running +EXPORT_SYMBOL vmlinux 0x5ad05345 compat_nf_setsockopt +EXPORT_SYMBOL vmlinux 0x5ae86117 ppp_input_error +EXPORT_SYMBOL vmlinux 0x5b08bfb8 mipi_dsi_device_unregister +EXPORT_SYMBOL vmlinux 0x5b114e7c read_cache_page_gfp +EXPORT_SYMBOL vmlinux 0x5b13f172 flow_rule_match_enc_control +EXPORT_SYMBOL vmlinux 0x5b2f27fb do_wait_intr +EXPORT_SYMBOL vmlinux 0x5b2fe7c5 tcf_generic_walker +EXPORT_SYMBOL vmlinux 0x5b319ebd mmc_gpiod_request_cd +EXPORT_SYMBOL vmlinux 0x5b36d5dd utf8agemax +EXPORT_SYMBOL vmlinux 0x5b39e52b __phy_resume +EXPORT_SYMBOL vmlinux 0x5b3e282f xa_store +EXPORT_SYMBOL vmlinux 0x5b440508 netlink_net_capable +EXPORT_SYMBOL vmlinux 0x5b56860c vm_munmap +EXPORT_SYMBOL vmlinux 0x5b73691b blk_queue_io_min +EXPORT_SYMBOL vmlinux 0x5b7717dd flow_block_cb_alloc +EXPORT_SYMBOL vmlinux 0x5b7acf65 redirty_page_for_writepage +EXPORT_SYMBOL vmlinux 0x5b974bf7 proc_set_size +EXPORT_SYMBOL vmlinux 0x5b99c441 filemap_fdatawait_range_keep_errors +EXPORT_SYMBOL vmlinux 0x5baefb13 pci_choose_state +EXPORT_SYMBOL vmlinux 0x5bb76953 audit_log +EXPORT_SYMBOL vmlinux 0x5bc25d61 generic_file_llseek +EXPORT_SYMBOL vmlinux 0x5bc92e85 LZ4_compress_destSize +EXPORT_SYMBOL vmlinux 0x5bce3ca4 alloc_netdev_mqs +EXPORT_SYMBOL vmlinux 0x5bd4ff88 flow_action_cookie_create +EXPORT_SYMBOL vmlinux 0x5be63c5b crc32c_csum_stub +EXPORT_SYMBOL vmlinux 0x5c00d810 ZSTD_CDictWorkspaceBound +EXPORT_SYMBOL vmlinux 0x5c1b8bba netdev_next_lower_dev_rcu +EXPORT_SYMBOL vmlinux 0x5c26a233 napi_gro_receive +EXPORT_SYMBOL vmlinux 0x5c26a53b wait_for_completion_io_timeout +EXPORT_SYMBOL vmlinux 0x5c30bc72 blk_queue_logical_block_size +EXPORT_SYMBOL vmlinux 0x5c4265f6 blk_unregister_region +EXPORT_SYMBOL vmlinux 0x5c463c57 vme_bus_error_handler +EXPORT_SYMBOL vmlinux 0x5c47deb5 skb_put +EXPORT_SYMBOL vmlinux 0x5c521fa6 qdisc_offload_dump_helper +EXPORT_SYMBOL vmlinux 0x5c606423 scsi_host_busy +EXPORT_SYMBOL vmlinux 0x5c6731ce blk_rq_map_user_iov +EXPORT_SYMBOL vmlinux 0x5c8715d7 dev_mc_flush +EXPORT_SYMBOL vmlinux 0x5c87b208 of_find_backlight +EXPORT_SYMBOL vmlinux 0x5cc19a94 agp_enable +EXPORT_SYMBOL vmlinux 0x5cc1ac57 inet6_release +EXPORT_SYMBOL vmlinux 0x5cc711c2 ip6_dst_hoplimit +EXPORT_SYMBOL vmlinux 0x5cd6f7aa compat_sock_common_setsockopt +EXPORT_SYMBOL vmlinux 0x5cda2857 devfreq_unregister_opp_notifier +EXPORT_SYMBOL vmlinux 0x5cf15d75 scsi_get_host_dev +EXPORT_SYMBOL vmlinux 0x5cf43a6a bio_uninit +EXPORT_SYMBOL vmlinux 0x5cf53ce2 input_free_minor +EXPORT_SYMBOL vmlinux 0x5cfb26a0 acpi_enter_sleep_state +EXPORT_SYMBOL vmlinux 0x5cfe923d kmem_cache_shrink +EXPORT_SYMBOL vmlinux 0x5d0b7e9f mdio_driver_register +EXPORT_SYMBOL vmlinux 0x5d2a7f44 mipi_dsi_driver_register_full +EXPORT_SYMBOL vmlinux 0x5d2bbb9f skb_page_frag_refill +EXPORT_SYMBOL vmlinux 0x5d49aabc init_wait_var_entry +EXPORT_SYMBOL vmlinux 0x5d51a7d1 get_watch_queue +EXPORT_SYMBOL vmlinux 0x5d6ebb58 __skb_checksum_complete +EXPORT_SYMBOL vmlinux 0x5d78a8f6 vm_node_stat +EXPORT_SYMBOL vmlinux 0x5d790f10 add_to_page_cache_locked +EXPORT_SYMBOL vmlinux 0x5d79994e acpi_bus_unregister_driver +EXPORT_SYMBOL vmlinux 0x5d830297 get_random_bytes_arch +EXPORT_SYMBOL vmlinux 0x5d861475 sg_miter_next +EXPORT_SYMBOL vmlinux 0x5d90d8b3 scsi_add_device +EXPORT_SYMBOL vmlinux 0x5d9b22f3 tty_register_device +EXPORT_SYMBOL vmlinux 0x5db296a1 vfs_unlink +EXPORT_SYMBOL vmlinux 0x5dca4584 simple_nosetlease +EXPORT_SYMBOL vmlinux 0x5debb223 mmc_retune_release +EXPORT_SYMBOL vmlinux 0x5dffb495 ZSTD_decompress_usingDDict +EXPORT_SYMBOL vmlinux 0x5e0ccb9f sha1_transform +EXPORT_SYMBOL vmlinux 0x5e27adc9 ab3100_event_unregister +EXPORT_SYMBOL vmlinux 0x5e2b008b pci_alloc_dev +EXPORT_SYMBOL vmlinux 0x5e332b52 __var_waitqueue +EXPORT_SYMBOL vmlinux 0x5e373fb4 gf128mul_64k_bbe +EXPORT_SYMBOL vmlinux 0x5e449774 netdev_adjacent_change_commit +EXPORT_SYMBOL vmlinux 0x5e44bfb7 xfrm_state_lookup_byspi +EXPORT_SYMBOL vmlinux 0x5e517316 touchscreen_parse_properties +EXPORT_SYMBOL vmlinux 0x5e5b76f8 __tracepoint_kmalloc_node +EXPORT_SYMBOL vmlinux 0x5e6723b7 pm8606_osc_disable +EXPORT_SYMBOL vmlinux 0x5e6bce5f __blk_mq_end_request +EXPORT_SYMBOL vmlinux 0x5e6c5426 t10_pi_type1_crc +EXPORT_SYMBOL vmlinux 0x5e7bae8b nf_log_packet +EXPORT_SYMBOL vmlinux 0x5e855e56 gen_pool_first_fit_align +EXPORT_SYMBOL vmlinux 0x5e9250ea pci_read_config_dword +EXPORT_SYMBOL vmlinux 0x5e95492e xfrm_state_lookup +EXPORT_SYMBOL vmlinux 0x5e95b1cd current_umask +EXPORT_SYMBOL vmlinux 0x5e97d3fa unregister_netdev +EXPORT_SYMBOL vmlinux 0x5ea355f0 security_inode_invalidate_secctx +EXPORT_SYMBOL vmlinux 0x5eb24829 dm_shift_arg +EXPORT_SYMBOL vmlinux 0x5ec373e6 vfs_readlink +EXPORT_SYMBOL vmlinux 0x5ec4aee6 put_sg_io_hdr +EXPORT_SYMBOL vmlinux 0x5ec55be7 md_integrity_register +EXPORT_SYMBOL vmlinux 0x5ed040b0 pm_set_vt_switch +EXPORT_SYMBOL vmlinux 0x5ed2969e string_escape_mem_ascii +EXPORT_SYMBOL vmlinux 0x5ed2d3fa eth_mac_addr +EXPORT_SYMBOL vmlinux 0x5ed90adc int_to_scsilun +EXPORT_SYMBOL vmlinux 0x5ee10617 vme_dma_list_exec +EXPORT_SYMBOL vmlinux 0x5ee16721 flow_get_u32_src +EXPORT_SYMBOL vmlinux 0x5ee2f135 __qdisc_calculate_pkt_len +EXPORT_SYMBOL vmlinux 0x5ef6a672 gen_pool_for_each_chunk +EXPORT_SYMBOL vmlinux 0x5efde8e6 proc_doulongvec_ms_jiffies_minmax +EXPORT_SYMBOL vmlinux 0x5f019e6c rt6_lookup +EXPORT_SYMBOL vmlinux 0x5f08259c __post_watch_notification +EXPORT_SYMBOL vmlinux 0x5f098b2a in6addr_interfacelocal_allrouters +EXPORT_SYMBOL vmlinux 0x5f25f0b8 uart_add_one_port +EXPORT_SYMBOL vmlinux 0x5f32cd78 dma_direct_map_resource +EXPORT_SYMBOL vmlinux 0x5f48b34c twl6040_reg_read +EXPORT_SYMBOL vmlinux 0x5f521275 scsi_host_put +EXPORT_SYMBOL vmlinux 0x5f56663b rdmsrl_on_cpu +EXPORT_SYMBOL vmlinux 0x5f59d4ae xfrm_policy_register_afinfo +EXPORT_SYMBOL vmlinux 0x5f5d0d32 dmam_alloc_attrs +EXPORT_SYMBOL vmlinux 0x5f6b889c rproc_va_to_pa +EXPORT_SYMBOL vmlinux 0x5f6fbf3d pci_ep_cfs_remove_epf_group +EXPORT_SYMBOL vmlinux 0x5f93525c acpi_extract_package +EXPORT_SYMBOL vmlinux 0x5fbdd176 vfio_pin_pages +EXPORT_SYMBOL vmlinux 0x5fc3e55c max8998_bulk_read +EXPORT_SYMBOL vmlinux 0x5fc72f0e alloc_pages_exact +EXPORT_SYMBOL vmlinux 0x5fca9f4f unregister_nls +EXPORT_SYMBOL vmlinux 0x5fd2864f param_get_string +EXPORT_SYMBOL vmlinux 0x5fdef221 ppp_register_net_channel +EXPORT_SYMBOL vmlinux 0x5fe39f85 d_instantiate_anon +EXPORT_SYMBOL vmlinux 0x5ff9eb0e lockref_mark_dead +EXPORT_SYMBOL vmlinux 0x6004858d LZ4_compress_fast +EXPORT_SYMBOL vmlinux 0x600568ad dm_kcopyd_copy +EXPORT_SYMBOL vmlinux 0x6005c351 zpool_has_pool +EXPORT_SYMBOL vmlinux 0x600683d3 do_unblank_screen +EXPORT_SYMBOL vmlinux 0x6010feb9 ppp_channel_index +EXPORT_SYMBOL vmlinux 0x601496f4 revert_creds +EXPORT_SYMBOL vmlinux 0x6018c9ea __nla_reserve +EXPORT_SYMBOL vmlinux 0x601f665f dm_io_client_create +EXPORT_SYMBOL vmlinux 0x602a167a param_get_bool +EXPORT_SYMBOL vmlinux 0x60351b98 __nla_validate +EXPORT_SYMBOL vmlinux 0x60352082 register_inet6addr_notifier +EXPORT_SYMBOL vmlinux 0x60392a75 sb_set_blocksize +EXPORT_SYMBOL vmlinux 0x603ec3cb netdev_master_upper_dev_link +EXPORT_SYMBOL vmlinux 0x60569df7 ata_std_end_eh +EXPORT_SYMBOL vmlinux 0x605790dc fiemap_fill_next_extent +EXPORT_SYMBOL vmlinux 0x60830390 remap_vmalloc_range +EXPORT_SYMBOL vmlinux 0x608741b5 __init_swait_queue_head +EXPORT_SYMBOL vmlinux 0x608f8768 kset_register +EXPORT_SYMBOL vmlinux 0x609008ac unix_destruct_scm +EXPORT_SYMBOL vmlinux 0x6091b333 unregister_chrdev_region +EXPORT_SYMBOL vmlinux 0x60940322 do_SAK +EXPORT_SYMBOL vmlinux 0x609b2853 hdmi_infoframe_pack +EXPORT_SYMBOL vmlinux 0x609bcd98 in6_pton +EXPORT_SYMBOL vmlinux 0x609f1c7e synchronize_net +EXPORT_SYMBOL vmlinux 0x60a32ea9 pm_power_off +EXPORT_SYMBOL vmlinux 0x60a9732e qdisc_create_dflt +EXPORT_SYMBOL vmlinux 0x60afd37b blk_sync_queue +EXPORT_SYMBOL vmlinux 0x60b3071f neigh_proc_dointvec +EXPORT_SYMBOL vmlinux 0x60b4d58b flow_rule_match_ipv6_addrs +EXPORT_SYMBOL vmlinux 0x60b74374 blk_post_runtime_suspend +EXPORT_SYMBOL vmlinux 0x60cf525c setup_new_exec +EXPORT_SYMBOL vmlinux 0x60d8ab30 vme_lm_get +EXPORT_SYMBOL vmlinux 0x60d9d214 iov_iter_init +EXPORT_SYMBOL vmlinux 0x60e9d9c0 scsi_report_bus_reset +EXPORT_SYMBOL vmlinux 0x60f31978 jbd2_transaction_committed +EXPORT_SYMBOL vmlinux 0x6100af37 pcim_pin_device +EXPORT_SYMBOL vmlinux 0x61016d66 mmc_can_trim +EXPORT_SYMBOL vmlinux 0x61050291 unload_nls +EXPORT_SYMBOL vmlinux 0x611df9f0 build_skb_around +EXPORT_SYMBOL vmlinux 0x6128b5fc __printk_ratelimit +EXPORT_SYMBOL vmlinux 0x614298f2 __dynamic_ibdev_dbg +EXPORT_SYMBOL vmlinux 0x61577694 ZSTD_compressEnd +EXPORT_SYMBOL vmlinux 0x615911d7 __bitmap_set +EXPORT_SYMBOL vmlinux 0x616a0ed4 kill_pid +EXPORT_SYMBOL vmlinux 0x617c452b queued_read_lock_slowpath +EXPORT_SYMBOL vmlinux 0x6184af82 __vfs_removexattr +EXPORT_SYMBOL vmlinux 0x6185b747 radix_tree_gang_lookup_tag +EXPORT_SYMBOL vmlinux 0x618911fc numa_node +EXPORT_SYMBOL vmlinux 0x618b63fb inode_owner_or_capable +EXPORT_SYMBOL vmlinux 0x619cb7dd simple_read_from_buffer +EXPORT_SYMBOL vmlinux 0x619d0e5a sock_no_listen +EXPORT_SYMBOL vmlinux 0x619dfcdc intel_scu_ipc_dev_readv +EXPORT_SYMBOL vmlinux 0x619fd9e5 kmem_cache_free_bulk +EXPORT_SYMBOL vmlinux 0x61b2c4d5 pci_set_master +EXPORT_SYMBOL vmlinux 0x61b7b126 simple_strtoull +EXPORT_SYMBOL vmlinux 0x61b828e0 xfrm_trans_queue_net +EXPORT_SYMBOL vmlinux 0x61c49f4c sget +EXPORT_SYMBOL vmlinux 0x61ca1843 fwnode_get_mac_address +EXPORT_SYMBOL vmlinux 0x61d37d81 register_netdevice +EXPORT_SYMBOL vmlinux 0x61e272c9 sha256_final +EXPORT_SYMBOL vmlinux 0x61ea189b fb_pad_aligned_buffer +EXPORT_SYMBOL vmlinux 0x61f827a8 max8998_write_reg +EXPORT_SYMBOL vmlinux 0x62029b8f phy_reset_after_clk_enable +EXPORT_SYMBOL vmlinux 0x6214aef2 cpufreq_unregister_notifier +EXPORT_SYMBOL vmlinux 0x6220bbb7 pm_vt_switch_unregister +EXPORT_SYMBOL vmlinux 0x6226b9fa machine_to_phys_mapping +EXPORT_SYMBOL vmlinux 0x6228c21f smp_call_function_single +EXPORT_SYMBOL vmlinux 0x62407faf mini_qdisc_pair_init +EXPORT_SYMBOL vmlinux 0x6245fbca should_remove_suid +EXPORT_SYMBOL vmlinux 0x624922d2 udp_push_pending_frames +EXPORT_SYMBOL vmlinux 0x624ba823 try_to_writeback_inodes_sb +EXPORT_SYMBOL vmlinux 0x6258e531 mipi_dsi_dcs_set_tear_scanline +EXPORT_SYMBOL vmlinux 0x62737e1d sock_unregister +EXPORT_SYMBOL vmlinux 0x62849ac7 dev_valid_name +EXPORT_SYMBOL vmlinux 0x62890955 __tracepoint_spi_transfer_stop +EXPORT_SYMBOL vmlinux 0x629d93dd tcp_add_backlog +EXPORT_SYMBOL vmlinux 0x62bc698a __lock_page +EXPORT_SYMBOL vmlinux 0x62bf6edf utf8agemin +EXPORT_SYMBOL vmlinux 0x62cae60e acpi_register_debugger +EXPORT_SYMBOL vmlinux 0x6309e503 md_bitmap_endwrite +EXPORT_SYMBOL vmlinux 0x6310b92d dev_remove_pack +EXPORT_SYMBOL vmlinux 0x63187451 pcie_aspm_support_enabled +EXPORT_SYMBOL vmlinux 0x631d06aa cpu_rmap_put +EXPORT_SYMBOL vmlinux 0x63564db6 inet_sock_destruct +EXPORT_SYMBOL vmlinux 0x635ff76d LZ4_saveDict +EXPORT_SYMBOL vmlinux 0x636257f7 get_ibs_caps +EXPORT_SYMBOL vmlinux 0x636b6ec4 phy_suspend +EXPORT_SYMBOL vmlinux 0x63a09c54 from_kprojid_munged +EXPORT_SYMBOL vmlinux 0x63a58370 flow_action_cookie_destroy +EXPORT_SYMBOL vmlinux 0x63a7c28c bitmap_find_free_region +EXPORT_SYMBOL vmlinux 0x63b7981a jbd2__journal_restart +EXPORT_SYMBOL vmlinux 0x63c4d61f __bitmap_weight +EXPORT_SYMBOL vmlinux 0x63cb2cb6 jbd2_journal_set_triggers +EXPORT_SYMBOL vmlinux 0x63d6dbd9 __tracepoint_kmem_cache_alloc_node +EXPORT_SYMBOL vmlinux 0x63eb9355 panic_blink +EXPORT_SYMBOL vmlinux 0x63f835ba on_each_cpu_cond_mask +EXPORT_SYMBOL vmlinux 0x6403370d tcp_v4_syn_recv_sock +EXPORT_SYMBOL vmlinux 0x6405dcd3 slhc_toss +EXPORT_SYMBOL vmlinux 0x64127b67 bitmap_find_next_zero_area_off +EXPORT_SYMBOL vmlinux 0x6413c3bd pci_disable_link_state_locked +EXPORT_SYMBOL vmlinux 0x642c098f bioset_init_from_src +EXPORT_SYMBOL vmlinux 0x642eb5c6 xen_poll_irq_timeout +EXPORT_SYMBOL vmlinux 0x643cdf69 netdev_set_sb_channel +EXPORT_SYMBOL vmlinux 0x643d9ba1 groups_free +EXPORT_SYMBOL vmlinux 0x64444e54 config_item_put +EXPORT_SYMBOL vmlinux 0x644b8f33 ipv6_find_hdr +EXPORT_SYMBOL vmlinux 0x644ce423 _dev_emerg +EXPORT_SYMBOL vmlinux 0x644d5355 key_move +EXPORT_SYMBOL vmlinux 0x64664864 vlan_ioctl_set +EXPORT_SYMBOL vmlinux 0x64715e13 proto_unregister +EXPORT_SYMBOL vmlinux 0x6481ffe0 hsiphash_1u32 +EXPORT_SYMBOL vmlinux 0x648684a5 pci_fixup_device +EXPORT_SYMBOL vmlinux 0x648eb59d gc_inflight_list +EXPORT_SYMBOL vmlinux 0x64999478 congestion_wait +EXPORT_SYMBOL vmlinux 0x64a9c928 default_blu +EXPORT_SYMBOL vmlinux 0x64ad65e2 xfrm_state_free +EXPORT_SYMBOL vmlinux 0x64bbc288 string_unescape +EXPORT_SYMBOL vmlinux 0x64d55534 dst_discard_out +EXPORT_SYMBOL vmlinux 0x64e08889 netdev_lower_dev_get_private +EXPORT_SYMBOL vmlinux 0x6504b7c0 block_read_full_page +EXPORT_SYMBOL vmlinux 0x6513a3fa fb_get_color_depth +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 0x65464c16 clkdev_drop +EXPORT_SYMBOL vmlinux 0x655526dd fs_context_for_reconfigure +EXPORT_SYMBOL vmlinux 0x656c1a0e string_escape_mem +EXPORT_SYMBOL vmlinux 0x656e4a6e snprintf +EXPORT_SYMBOL vmlinux 0x6570f761 dquot_set_dqblk +EXPORT_SYMBOL vmlinux 0x6579941a blk_queue_dma_alignment +EXPORT_SYMBOL vmlinux 0x65849bc4 tcp_fastopen_defer_connect +EXPORT_SYMBOL vmlinux 0x658ce1a8 xxh64_reset +EXPORT_SYMBOL vmlinux 0x659ded26 xfrm_flush_gc +EXPORT_SYMBOL vmlinux 0x65a3b6a1 jbd2_journal_inode_ranged_wait +EXPORT_SYMBOL vmlinux 0x65b992ac xen_alloc_p2m_entry +EXPORT_SYMBOL vmlinux 0x65cf8831 ZSTD_decompress_usingDict +EXPORT_SYMBOL vmlinux 0x65d1bab2 acpi_bios_warning +EXPORT_SYMBOL vmlinux 0x65d9e877 cpufreq_register_notifier +EXPORT_SYMBOL vmlinux 0x65dbf0d6 fget_raw +EXPORT_SYMBOL vmlinux 0x65dccf13 xz_dec_end +EXPORT_SYMBOL vmlinux 0x65e0d6d7 memory_read_from_buffer +EXPORT_SYMBOL vmlinux 0x65f0ba27 sock_create +EXPORT_SYMBOL vmlinux 0x65f3e80a __sk_dst_check +EXPORT_SYMBOL vmlinux 0x660f892e pagevec_lookup_range +EXPORT_SYMBOL vmlinux 0x66224b2f dcb_ieee_setapp +EXPORT_SYMBOL vmlinux 0x6626afca down +EXPORT_SYMBOL vmlinux 0x6628d02c key_instantiate_and_link +EXPORT_SYMBOL vmlinux 0x662d3c10 d_set_fallthru +EXPORT_SYMBOL vmlinux 0x663182c9 acpi_get_gpe_status +EXPORT_SYMBOL vmlinux 0x664d8854 sock_efree +EXPORT_SYMBOL vmlinux 0x66532226 tcp_splice_read +EXPORT_SYMBOL vmlinux 0x665ca248 generic_file_llseek_size +EXPORT_SYMBOL vmlinux 0x6661da39 netdev_has_any_upper_dev +EXPORT_SYMBOL vmlinux 0x66628bf3 ip_tunnel_metadata_cnt +EXPORT_SYMBOL vmlinux 0x666c39cc config_group_init_type_name +EXPORT_SYMBOL vmlinux 0x6673f96d xxh32_reset +EXPORT_SYMBOL vmlinux 0x667cffe8 __ip_select_ident +EXPORT_SYMBOL vmlinux 0x667f8148 set_page_dirty_lock +EXPORT_SYMBOL vmlinux 0x668b19a1 down_read +EXPORT_SYMBOL vmlinux 0x66934d6d vfs_fsync +EXPORT_SYMBOL vmlinux 0x669d0dec blk_register_region +EXPORT_SYMBOL vmlinux 0x66acd03b pci_dev_put +EXPORT_SYMBOL vmlinux 0x66af1fd1 lockref_put_or_lock +EXPORT_SYMBOL vmlinux 0x66b2e852 mmc_add_host +EXPORT_SYMBOL vmlinux 0x66b4cc41 kmemdup +EXPORT_SYMBOL vmlinux 0x66b62f4e __ip_mc_inc_group +EXPORT_SYMBOL vmlinux 0x66cc97ca __inc_zone_page_state +EXPORT_SYMBOL vmlinux 0x66cdbaf5 blk_mq_start_hw_queues +EXPORT_SYMBOL vmlinux 0x66d20ea3 netif_tx_stop_all_queues +EXPORT_SYMBOL vmlinux 0x66d29e23 nla_put_64bit +EXPORT_SYMBOL vmlinux 0x66d2ebec nla_reserve_64bit +EXPORT_SYMBOL vmlinux 0x66d83560 skb_trim +EXPORT_SYMBOL vmlinux 0x670c1f02 __skb_vlan_pop +EXPORT_SYMBOL vmlinux 0x6729d3df __get_user_4 +EXPORT_SYMBOL vmlinux 0x673f815e agp_bridges +EXPORT_SYMBOL vmlinux 0x67461051 mipi_dsi_dcs_set_tear_off +EXPORT_SYMBOL vmlinux 0x67495095 serial8250_do_set_termios +EXPORT_SYMBOL vmlinux 0x6749d53f hdmi_vendor_infoframe_init +EXPORT_SYMBOL vmlinux 0x675b2465 qdisc_watchdog_schedule_range_ns +EXPORT_SYMBOL vmlinux 0x67646b53 truncate_pagecache +EXPORT_SYMBOL vmlinux 0x6787a39b param_array_ops +EXPORT_SYMBOL vmlinux 0x678b96ec dma_pool_alloc +EXPORT_SYMBOL vmlinux 0x678d6412 input_get_keycode +EXPORT_SYMBOL vmlinux 0x679ffa92 iov_iter_advance +EXPORT_SYMBOL vmlinux 0x67b27ec1 tty_std_termios +EXPORT_SYMBOL vmlinux 0x67b78eb3 seq_hlist_next_rcu +EXPORT_SYMBOL vmlinux 0x67bfb2ca __sg_alloc_table_from_pages +EXPORT_SYMBOL vmlinux 0x67c0c54c pv_ops +EXPORT_SYMBOL vmlinux 0x67c13ea0 acpi_read +EXPORT_SYMBOL vmlinux 0x67c9dfee page_pool_release_page +EXPORT_SYMBOL vmlinux 0x67cc3f1f put_cmsg_scm_timestamping64 +EXPORT_SYMBOL vmlinux 0x67d54299 remove_proc_entry +EXPORT_SYMBOL vmlinux 0x67d86555 udp_ioctl +EXPORT_SYMBOL vmlinux 0x67de53ff make_kuid +EXPORT_SYMBOL vmlinux 0x67e9b855 ptp_find_pin_unlocked +EXPORT_SYMBOL vmlinux 0x67eb802d amd_iommu_get_v2_domain +EXPORT_SYMBOL vmlinux 0x67f1247f bio_add_pc_page +EXPORT_SYMBOL vmlinux 0x67f76cec __put_user_ns +EXPORT_SYMBOL vmlinux 0x6802d4ed md_check_no_bitmap +EXPORT_SYMBOL vmlinux 0x680b8efa dev_add_pack +EXPORT_SYMBOL vmlinux 0x68149c8a tcp_md5_hash_key +EXPORT_SYMBOL vmlinux 0x6818ef3d scsi_cmd_ioctl +EXPORT_SYMBOL vmlinux 0x68218bb8 rtnl_configure_link +EXPORT_SYMBOL vmlinux 0x68370a5f dma_direct_map_page +EXPORT_SYMBOL vmlinux 0x6838e493 reuseport_alloc +EXPORT_SYMBOL vmlinux 0x683a9560 __gnet_stats_copy_basic +EXPORT_SYMBOL vmlinux 0x68467f75 amd_iommu_complete_ppr +EXPORT_SYMBOL vmlinux 0x6851664e wrmsrl_safe_on_cpu +EXPORT_SYMBOL vmlinux 0x685333fc inet_offloads +EXPORT_SYMBOL vmlinux 0x68552acd fifo_create_dflt +EXPORT_SYMBOL vmlinux 0x685d8dff sync_filesystem +EXPORT_SYMBOL vmlinux 0x685e31ca groups_sort +EXPORT_SYMBOL vmlinux 0x687b6a16 kdbgetsymval +EXPORT_SYMBOL vmlinux 0x68a61624 inode_needs_sync +EXPORT_SYMBOL vmlinux 0x68a90b51 get_default_font +EXPORT_SYMBOL vmlinux 0x68df1bfb seg6_hmac_validate_skb +EXPORT_SYMBOL vmlinux 0x68e118b8 dev_printk +EXPORT_SYMBOL vmlinux 0x68e53daa xp_dma_sync_for_cpu_slow +EXPORT_SYMBOL vmlinux 0x68f4920f hash_and_copy_to_iter +EXPORT_SYMBOL vmlinux 0x69029abc find_get_pages_contig +EXPORT_SYMBOL vmlinux 0x69049cd2 radix_tree_replace_slot +EXPORT_SYMBOL vmlinux 0x690dec93 inet_rcv_saddr_equal +EXPORT_SYMBOL vmlinux 0x69103208 blk_queue_max_write_zeroes_sectors +EXPORT_SYMBOL vmlinux 0x69177258 param_set_ushort +EXPORT_SYMBOL vmlinux 0x691a5620 __d_drop +EXPORT_SYMBOL vmlinux 0x69287fea dup_iter +EXPORT_SYMBOL vmlinux 0x69309a70 netdev_upper_dev_unlink +EXPORT_SYMBOL vmlinux 0x693be7dd locks_remove_posix +EXPORT_SYMBOL vmlinux 0x693cbb5c mipi_dsi_picture_parameter_set +EXPORT_SYMBOL vmlinux 0x69493b1a kstrtos16 +EXPORT_SYMBOL vmlinux 0x694ff2c5 inet_select_addr +EXPORT_SYMBOL vmlinux 0x69585523 __ksize +EXPORT_SYMBOL vmlinux 0x69611fcf mmc_gpio_set_cd_wake +EXPORT_SYMBOL vmlinux 0x69668826 netdev_increment_features +EXPORT_SYMBOL vmlinux 0x6971447a rtc_month_days +EXPORT_SYMBOL vmlinux 0x69724544 sock_pfree +EXPORT_SYMBOL vmlinux 0x6979c747 dquot_set_dqinfo +EXPORT_SYMBOL vmlinux 0x697f623f phy_modify_paged +EXPORT_SYMBOL vmlinux 0x6988d0ca cpu_dr7 +EXPORT_SYMBOL vmlinux 0x6999233f mmc_cqe_request_done +EXPORT_SYMBOL vmlinux 0x69acdf38 memcpy +EXPORT_SYMBOL vmlinux 0x69ad2f20 kstrtouint +EXPORT_SYMBOL vmlinux 0x69b5f4d6 tty_flip_buffer_push +EXPORT_SYMBOL vmlinux 0x69d904b2 textsearch_unregister +EXPORT_SYMBOL vmlinux 0x69dd3b5b crc32_le +EXPORT_SYMBOL vmlinux 0x69de56ed param_ops_int +EXPORT_SYMBOL vmlinux 0x69de8757 vme_check_window +EXPORT_SYMBOL vmlinux 0x69f56362 netdev_refcnt_read +EXPORT_SYMBOL vmlinux 0x6a03751f sgl_free_order +EXPORT_SYMBOL vmlinux 0x6a037cf1 mempool_kfree +EXPORT_SYMBOL vmlinux 0x6a04b9bf __skb_try_recv_datagram +EXPORT_SYMBOL vmlinux 0x6a21cb56 mmc_calc_max_discard +EXPORT_SYMBOL vmlinux 0x6a261b78 irq_stat +EXPORT_SYMBOL vmlinux 0x6a3cc25e xfrm6_rcv +EXPORT_SYMBOL vmlinux 0x6a424f9f request_key_with_auxdata +EXPORT_SYMBOL vmlinux 0x6a42f1d1 inet_listen +EXPORT_SYMBOL vmlinux 0x6a4396ac tcp_timewait_state_process +EXPORT_SYMBOL vmlinux 0x6a449c4f register_sysctl_table +EXPORT_SYMBOL vmlinux 0x6a485a84 neigh_seq_next +EXPORT_SYMBOL vmlinux 0x6a4cd26c end_page_writeback +EXPORT_SYMBOL vmlinux 0x6a5cb5ee __get_free_pages +EXPORT_SYMBOL vmlinux 0x6a5ecb18 unregister_module_notifier +EXPORT_SYMBOL vmlinux 0x6a5fa363 sigprocmask +EXPORT_SYMBOL vmlinux 0x6a607be5 security_old_inode_init_security +EXPORT_SYMBOL vmlinux 0x6a6be9f3 napi_schedule_prep +EXPORT_SYMBOL vmlinux 0x6a94a715 inet_stream_ops +EXPORT_SYMBOL vmlinux 0x6aa11aa6 sgl_free_n_order +EXPORT_SYMBOL vmlinux 0x6aa49823 vmalloc_to_page +EXPORT_SYMBOL vmlinux 0x6aa61ad6 phy_start_aneg +EXPORT_SYMBOL vmlinux 0x6ab487c4 blk_limits_io_opt +EXPORT_SYMBOL vmlinux 0x6ab7078c md_flush_request +EXPORT_SYMBOL vmlinux 0x6ac0b178 jbd2_journal_wipe +EXPORT_SYMBOL vmlinux 0x6ac3e9c9 cont_write_begin +EXPORT_SYMBOL vmlinux 0x6add5c9a dmi_find_device +EXPORT_SYMBOL vmlinux 0x6aed7a84 devm_backlight_device_register +EXPORT_SYMBOL vmlinux 0x6aeefac4 zlib_deflateReset +EXPORT_SYMBOL vmlinux 0x6afc844e ipv6_chk_custom_prefix +EXPORT_SYMBOL vmlinux 0x6b182cd7 from_kuid_munged +EXPORT_SYMBOL vmlinux 0x6b25eb73 param_set_bint +EXPORT_SYMBOL vmlinux 0x6b27729b radix_tree_gang_lookup +EXPORT_SYMBOL vmlinux 0x6b2dc060 dump_stack +EXPORT_SYMBOL vmlinux 0x6b38541d _dev_notice +EXPORT_SYMBOL vmlinux 0x6b3c4f43 prepare_to_swait_event +EXPORT_SYMBOL vmlinux 0x6b400a9c fb_is_primary_device +EXPORT_SYMBOL vmlinux 0x6b4d9547 vfs_fsync_range +EXPORT_SYMBOL vmlinux 0x6b55acd0 rtnl_lock_killable +EXPORT_SYMBOL vmlinux 0x6b5cc5b9 phy_modify_paged_changed +EXPORT_SYMBOL vmlinux 0x6b640864 nla_strlcpy +EXPORT_SYMBOL vmlinux 0x6b6be269 skb_flow_get_icmp_tci +EXPORT_SYMBOL vmlinux 0x6b781cc3 pcim_enable_device +EXPORT_SYMBOL vmlinux 0x6b853d06 ns_to_kernel_old_timeval +EXPORT_SYMBOL vmlinux 0x6b8bf149 netif_receive_skb_list +EXPORT_SYMBOL vmlinux 0x6b9a8ddd register_netdevice_notifier_dev_net +EXPORT_SYMBOL vmlinux 0x6ba34b03 jbd2_journal_clear_features +EXPORT_SYMBOL vmlinux 0x6bc3fbc0 __unregister_chrdev +EXPORT_SYMBOL vmlinux 0x6bc4a1a7 keyring_clear +EXPORT_SYMBOL vmlinux 0x6bc5e589 fs_param_is_u32 +EXPORT_SYMBOL vmlinux 0x6bd04a71 tcf_action_exec +EXPORT_SYMBOL vmlinux 0x6bd14e29 jbd2_journal_flush +EXPORT_SYMBOL vmlinux 0x6be08ece proc_create_single_data +EXPORT_SYMBOL vmlinux 0x6be1c1f8 acpi_install_method +EXPORT_SYMBOL vmlinux 0x6bff1784 kernel_accept +EXPORT_SYMBOL vmlinux 0x6c01f537 iommu_get_dma_cookie +EXPORT_SYMBOL vmlinux 0x6c0c2d43 sock_common_getsockopt +EXPORT_SYMBOL vmlinux 0x6c1acb7f dquot_initialize_needed +EXPORT_SYMBOL vmlinux 0x6c224cda gen_pool_destroy +EXPORT_SYMBOL vmlinux 0x6c257ac0 tty_termios_hw_change +EXPORT_SYMBOL vmlinux 0x6c27d406 bio_chain +EXPORT_SYMBOL vmlinux 0x6c28be5a vfio_info_add_capability +EXPORT_SYMBOL vmlinux 0x6c2f49a7 input_grab_device +EXPORT_SYMBOL vmlinux 0x6c3775d9 ipv6_skip_exthdr +EXPORT_SYMBOL vmlinux 0x6c5dae23 scsi_kmap_atomic_sg +EXPORT_SYMBOL vmlinux 0x6c61ce70 num_registered_fb +EXPORT_SYMBOL vmlinux 0x6c6d0a92 flow_indr_block_cb_alloc +EXPORT_SYMBOL vmlinux 0x6c7a783d i2c_smbus_xfer +EXPORT_SYMBOL vmlinux 0x6ca7b4c4 devfreq_resume_device +EXPORT_SYMBOL vmlinux 0x6cb46525 netlbl_catmap_walk +EXPORT_SYMBOL vmlinux 0x6ce04f19 skb_dequeue_tail +EXPORT_SYMBOL vmlinux 0x6ced07e5 __module_get +EXPORT_SYMBOL vmlinux 0x6cf3c3cf vmf_insert_mixed_mkwrite +EXPORT_SYMBOL vmlinux 0x6cf62166 __tracepoint_kmem_cache_alloc +EXPORT_SYMBOL vmlinux 0x6cfa9cb7 dev_uc_add_excl +EXPORT_SYMBOL vmlinux 0x6d0f33c3 eth_header_parse +EXPORT_SYMBOL vmlinux 0x6d1e9c4a dma_set_mask +EXPORT_SYMBOL vmlinux 0x6d294e43 clock_t_to_jiffies +EXPORT_SYMBOL vmlinux 0x6d2a9320 sk_free +EXPORT_SYMBOL vmlinux 0x6d334118 __get_user_8 +EXPORT_SYMBOL vmlinux 0x6d340f64 tty_termios_input_baud_rate +EXPORT_SYMBOL vmlinux 0x6d369180 mmc_alloc_host +EXPORT_SYMBOL vmlinux 0x6d56af4a pnp_disable_dev +EXPORT_SYMBOL vmlinux 0x6d58f69e agp3_generic_sizes +EXPORT_SYMBOL vmlinux 0x6d5f5b91 radix_tree_tagged +EXPORT_SYMBOL vmlinux 0x6d63e428 mdio_device_remove +EXPORT_SYMBOL vmlinux 0x6d7abe02 first_ec +EXPORT_SYMBOL vmlinux 0x6d7c7dcc bitmap_cut +EXPORT_SYMBOL vmlinux 0x6d8a58ad put_watch_queue +EXPORT_SYMBOL vmlinux 0x6d8e4fa8 phy_print_status +EXPORT_SYMBOL vmlinux 0x6da3a5f1 irq_set_chip +EXPORT_SYMBOL vmlinux 0x6db28f81 d_drop +EXPORT_SYMBOL vmlinux 0x6db3af00 t10_pi_type1_ip +EXPORT_SYMBOL vmlinux 0x6dbd9d3e dcb_ieee_delapp +EXPORT_SYMBOL vmlinux 0x6dc35b25 radix_tree_iter_delete +EXPORT_SYMBOL vmlinux 0x6dc44db8 skb_set_owner_w +EXPORT_SYMBOL vmlinux 0x6dc48dfc amd_iommu_domain_set_gcr3 +EXPORT_SYMBOL vmlinux 0x6dcf857f uuid_null +EXPORT_SYMBOL vmlinux 0x6dd17e7b acpi_get_table_header +EXPORT_SYMBOL vmlinux 0x6dd6b97b netdev_unbind_sb_channel +EXPORT_SYMBOL vmlinux 0x6dda0388 netdev_change_features +EXPORT_SYMBOL vmlinux 0x6ddb2f01 dquot_file_open +EXPORT_SYMBOL vmlinux 0x6dea9db8 handle_edge_irq +EXPORT_SYMBOL vmlinux 0x6df1aaf1 kernel_sigaction +EXPORT_SYMBOL vmlinux 0x6df301f7 i2c_smbus_write_word_data +EXPORT_SYMBOL vmlinux 0x6e019034 __tracepoint_module_get +EXPORT_SYMBOL vmlinux 0x6e286604 hdmi_drm_infoframe_pack +EXPORT_SYMBOL vmlinux 0x6e3923a6 iw_handler_set_spy +EXPORT_SYMBOL vmlinux 0x6e463cab xfrm_state_delete_tunnel +EXPORT_SYMBOL vmlinux 0x6e54a3f9 scsi_bios_ptable +EXPORT_SYMBOL vmlinux 0x6e54e47a dump_skip +EXPORT_SYMBOL vmlinux 0x6e5b8651 xz_dec_run +EXPORT_SYMBOL vmlinux 0x6e720ff2 rtnl_unlock +EXPORT_SYMBOL vmlinux 0x6e7ff17d fscrypt_encrypt_block_inplace +EXPORT_SYMBOL vmlinux 0x6e832206 generic_shutdown_super +EXPORT_SYMBOL vmlinux 0x6e90b3ec vfs_get_super +EXPORT_SYMBOL vmlinux 0x6e9dd606 __symbol_put +EXPORT_SYMBOL vmlinux 0x6e9e5a9d flow_rule_alloc +EXPORT_SYMBOL vmlinux 0x6e9e5df0 unlock_new_inode +EXPORT_SYMBOL vmlinux 0x6ea7575d acpi_dispatch_gpe +EXPORT_SYMBOL vmlinux 0x6ea9363b force_sig +EXPORT_SYMBOL vmlinux 0x6eafdf70 set_device_ro +EXPORT_SYMBOL vmlinux 0x6ebf39c2 vfs_dup_fs_context +EXPORT_SYMBOL vmlinux 0x6ec0fa3e call_fib_notifier +EXPORT_SYMBOL vmlinux 0x6ec3a1b8 __alloc_pages_nodemask +EXPORT_SYMBOL vmlinux 0x6ed8a5fc hdmi_drm_infoframe_check +EXPORT_SYMBOL vmlinux 0x6ee6b331 km_new_mapping +EXPORT_SYMBOL vmlinux 0x6ee92a54 ip_sock_set_mtu_discover +EXPORT_SYMBOL vmlinux 0x6eeb6661 xfrm6_rcv_encap +EXPORT_SYMBOL vmlinux 0x6f05cd8b jbd2_journal_init_inode +EXPORT_SYMBOL vmlinux 0x6f09c6c0 phy_find_first +EXPORT_SYMBOL vmlinux 0x6f0f3677 input_release_device +EXPORT_SYMBOL vmlinux 0x6f0f4e98 seg6_hmac_info_del +EXPORT_SYMBOL vmlinux 0x6f207706 make_kgid +EXPORT_SYMBOL vmlinux 0x6f2786d2 __xfrm_state_destroy +EXPORT_SYMBOL vmlinux 0x6f2f3799 cros_ec_cmd_xfer +EXPORT_SYMBOL vmlinux 0x6f41a428 acpi_get_vendor_resource +EXPORT_SYMBOL vmlinux 0x6f514684 uart_get_divisor +EXPORT_SYMBOL vmlinux 0x6f5eb97e d_exact_alias +EXPORT_SYMBOL vmlinux 0x6f71c0ad d_find_alias +EXPORT_SYMBOL vmlinux 0x6f744ef4 mmc_get_card +EXPORT_SYMBOL vmlinux 0x6f7c9165 submit_bio +EXPORT_SYMBOL vmlinux 0x6f8f674a bpf_dispatcher_xdp_func +EXPORT_SYMBOL vmlinux 0x6f915a45 dqstats +EXPORT_SYMBOL vmlinux 0x6f96a2b3 mmc_cqe_recovery +EXPORT_SYMBOL vmlinux 0x6f9872e5 inet_dev_addr_type +EXPORT_SYMBOL vmlinux 0x6fa6d2e0 dma_async_device_unregister +EXPORT_SYMBOL vmlinux 0x6fb49676 queue_rcu_work +EXPORT_SYMBOL vmlinux 0x6fbc6a00 radix_tree_insert +EXPORT_SYMBOL vmlinux 0x6fcb87a1 touch_softlockup_watchdog +EXPORT_SYMBOL vmlinux 0x6fd9c35a __clzdi2 +EXPORT_SYMBOL vmlinux 0x6ff58f58 mipi_dsi_dcs_get_power_mode +EXPORT_SYMBOL vmlinux 0x70000813 migrate_vma_finalize +EXPORT_SYMBOL vmlinux 0x70002fe8 siphash_1u32 +EXPORT_SYMBOL vmlinux 0x7023bea8 unregister_acpi_notifier +EXPORT_SYMBOL vmlinux 0x702946da ucs2_strlen +EXPORT_SYMBOL vmlinux 0x702c18d0 gnet_stats_copy_app +EXPORT_SYMBOL vmlinux 0x702dc9a9 eisa_bus_type +EXPORT_SYMBOL vmlinux 0x7035bc55 iterate_fd +EXPORT_SYMBOL vmlinux 0x703cd080 mmc_remove_host +EXPORT_SYMBOL vmlinux 0x7040fff9 rtc_lock +EXPORT_SYMBOL vmlinux 0x70493f68 scsi_device_lookup +EXPORT_SYMBOL vmlinux 0x7054a3e4 request_dma +EXPORT_SYMBOL vmlinux 0x706ac692 vfs_mkdir +EXPORT_SYMBOL vmlinux 0x7071a4f2 cmdline_parts_free +EXPORT_SYMBOL vmlinux 0x708124ec netdev_rx_csum_fault +EXPORT_SYMBOL vmlinux 0x708ab3b8 i2c_add_adapter +EXPORT_SYMBOL vmlinux 0x7095db28 km_state_notify +EXPORT_SYMBOL vmlinux 0x70ad75fb radix_tree_lookup +EXPORT_SYMBOL vmlinux 0x70bbb74c tcp_get_cookie_sock +EXPORT_SYMBOL vmlinux 0x70df2d13 blk_mq_end_request +EXPORT_SYMBOL vmlinux 0x71082fb0 bdi_register +EXPORT_SYMBOL vmlinux 0x710921ae sock_setsockopt +EXPORT_SYMBOL vmlinux 0x711116f9 vga_switcheroo_get_client_state +EXPORT_SYMBOL vmlinux 0x71126d57 xfrm_policy_unregister_afinfo +EXPORT_SYMBOL vmlinux 0x71179182 sock_diag_put_filterinfo +EXPORT_SYMBOL vmlinux 0x7119de33 dqget +EXPORT_SYMBOL vmlinux 0x7129e5f8 hex_asc +EXPORT_SYMBOL vmlinux 0x715288ae ip6_dst_alloc +EXPORT_SYMBOL vmlinux 0x715855c4 filemap_map_pages +EXPORT_SYMBOL vmlinux 0x71665a2d __register_nls +EXPORT_SYMBOL vmlinux 0x71710032 netpoll_print_options +EXPORT_SYMBOL vmlinux 0x7171121c overflowgid +EXPORT_SYMBOL vmlinux 0x717395f9 clocksource_change_rating +EXPORT_SYMBOL vmlinux 0x71947ece d_lookup +EXPORT_SYMBOL vmlinux 0x719c7697 i8042_install_filter +EXPORT_SYMBOL vmlinux 0x71a50dbc register_blkdev +EXPORT_SYMBOL vmlinux 0x71a672ef dmam_pool_destroy +EXPORT_SYMBOL vmlinux 0x71c3487a xp_dma_map +EXPORT_SYMBOL vmlinux 0x71d3e8cd mmc_detect_change +EXPORT_SYMBOL vmlinux 0x71e05b74 pci_wake_from_d3 +EXPORT_SYMBOL vmlinux 0x71f05e86 vm_iomap_memory +EXPORT_SYMBOL vmlinux 0x71f309af sock_set_keepalive +EXPORT_SYMBOL vmlinux 0x71f5fbcd __test_set_page_writeback +EXPORT_SYMBOL vmlinux 0x720163bb mount_single +EXPORT_SYMBOL vmlinux 0x72017316 scsi_ioctl +EXPORT_SYMBOL vmlinux 0x7219c05b dm_get_device +EXPORT_SYMBOL vmlinux 0x721acdea reuseport_select_sock +EXPORT_SYMBOL vmlinux 0x7233e639 ppp_unit_number +EXPORT_SYMBOL vmlinux 0x724ddac7 utf8version_is_supported +EXPORT_SYMBOL vmlinux 0x72528f76 rc5t583_ext_power_req_config +EXPORT_SYMBOL vmlinux 0x7260f26b put_disk +EXPORT_SYMBOL vmlinux 0x726bc3c7 wait_for_completion_killable_timeout +EXPORT_SYMBOL vmlinux 0x7276c354 cleancache_register_ops +EXPORT_SYMBOL vmlinux 0x72955d03 alloc_pages_vma +EXPORT_SYMBOL vmlinux 0x72a49a8c ipmi_platform_add +EXPORT_SYMBOL vmlinux 0x72a98fdb copy_user_generic_unrolled +EXPORT_SYMBOL vmlinux 0x72b243d4 free_dma +EXPORT_SYMBOL vmlinux 0x72b9d287 default_grn +EXPORT_SYMBOL vmlinux 0x72bf15f8 qdisc_class_hash_grow +EXPORT_SYMBOL vmlinux 0x72d29a16 __get_hash_from_flowi6 +EXPORT_SYMBOL vmlinux 0x72d79d83 pgdir_shift +EXPORT_SYMBOL vmlinux 0x72daa754 pnpacpi_protocol +EXPORT_SYMBOL vmlinux 0x72e271a3 md_register_thread +EXPORT_SYMBOL vmlinux 0x72ea7b2d scsi_device_type +EXPORT_SYMBOL vmlinux 0x72fee503 phy_support_sym_pause +EXPORT_SYMBOL vmlinux 0x73098ea7 flow_rule_match_ct +EXPORT_SYMBOL vmlinux 0x7315a4e9 twl6030_mmc_card_detect_config +EXPORT_SYMBOL vmlinux 0x731788d3 kernel_param_lock +EXPORT_SYMBOL vmlinux 0x73190b5e ptp_clock_unregister +EXPORT_SYMBOL vmlinux 0x731c4a9c dma_fence_signal +EXPORT_SYMBOL vmlinux 0x732eeabd iov_iter_alignment +EXPORT_SYMBOL vmlinux 0x7333e3c5 skb_flow_dissect_tunnel_info +EXPORT_SYMBOL vmlinux 0x735a0bd5 native_io_delay +EXPORT_SYMBOL vmlinux 0x735e6a81 acpi_evaluate_integer +EXPORT_SYMBOL vmlinux 0x7365cd7a agp_generic_create_gatt_table +EXPORT_SYMBOL vmlinux 0x7367d136 tcp_sock_set_quickack +EXPORT_SYMBOL vmlinux 0x736b5662 _raw_read_lock_irqsave +EXPORT_SYMBOL vmlinux 0x7380dffa argv_split +EXPORT_SYMBOL vmlinux 0x73860506 pci_bus_type +EXPORT_SYMBOL vmlinux 0x739ebbf1 phy_remove_link_mode +EXPORT_SYMBOL vmlinux 0x73abb180 alloc_contig_range +EXPORT_SYMBOL vmlinux 0x73af6811 param_get_charp +EXPORT_SYMBOL vmlinux 0x73dd54eb irq_fpu_usable +EXPORT_SYMBOL vmlinux 0x73e67627 notify_change +EXPORT_SYMBOL vmlinux 0x73e84d81 agp_alloc_page_array +EXPORT_SYMBOL vmlinux 0x73ec166e blk_set_queue_depth +EXPORT_SYMBOL vmlinux 0x740a1b95 reserve_evntsel_nmi +EXPORT_SYMBOL vmlinux 0x740dfb8f netdev_crit +EXPORT_SYMBOL vmlinux 0x7410aba2 strreplace +EXPORT_SYMBOL vmlinux 0x7412ed5b kvfree_sensitive +EXPORT_SYMBOL vmlinux 0x7413793a EISA_bus +EXPORT_SYMBOL vmlinux 0x742578a5 wait_for_random_bytes +EXPORT_SYMBOL vmlinux 0x7440f270 md_set_array_sectors +EXPORT_SYMBOL vmlinux 0x7453d3e8 security_release_secctx +EXPORT_SYMBOL vmlinux 0x7464fc6e iptun_encaps +EXPORT_SYMBOL vmlinux 0x74725e69 ZSTD_compressContinue +EXPORT_SYMBOL vmlinux 0x74754435 acpi_bus_generate_netlink_event +EXPORT_SYMBOL vmlinux 0x749849d8 LZ4_loadDict +EXPORT_SYMBOL vmlinux 0x749d51a8 dma_resv_copy_fences +EXPORT_SYMBOL vmlinux 0x74a3ef44 skb_copy_and_csum_bits +EXPORT_SYMBOL vmlinux 0x74ab937c rfkill_alloc +EXPORT_SYMBOL vmlinux 0x74bc5e87 tty_port_free_xmit_buf +EXPORT_SYMBOL vmlinux 0x74bd1f41 d_invalidate +EXPORT_SYMBOL vmlinux 0x74c134b9 __sw_hweight32 +EXPORT_SYMBOL vmlinux 0x74c6721e fb_pan_display +EXPORT_SYMBOL vmlinux 0x74e5ff1a udpv6_encap_enable +EXPORT_SYMBOL vmlinux 0x74eed105 bh_uptodate_or_lock +EXPORT_SYMBOL vmlinux 0x751e6fc7 vfs_create_mount +EXPORT_SYMBOL vmlinux 0x752499b5 dmam_free_coherent +EXPORT_SYMBOL vmlinux 0x7528dc13 i2c_smbus_read_byte_data +EXPORT_SYMBOL vmlinux 0x7538b132 agp_off +EXPORT_SYMBOL vmlinux 0x753b0f2d dma_resv_init +EXPORT_SYMBOL vmlinux 0x7540ab09 nf_log_trace +EXPORT_SYMBOL vmlinux 0x754d539c strlen +EXPORT_SYMBOL vmlinux 0x755dba81 gnet_stats_copy_rate_est +EXPORT_SYMBOL vmlinux 0x75871f5e acpi_get_next_object +EXPORT_SYMBOL vmlinux 0x75943e25 i8253_lock +EXPORT_SYMBOL vmlinux 0x759a58ce invalidate_inode_buffers +EXPORT_SYMBOL vmlinux 0x759fadce nvdimm_namespace_locked +EXPORT_SYMBOL vmlinux 0x75aa099f ipv6_sock_mc_drop +EXPORT_SYMBOL vmlinux 0x75bda77a seq_hlist_next +EXPORT_SYMBOL vmlinux 0x75d0deb9 nsecs_to_jiffies64 +EXPORT_SYMBOL vmlinux 0x75d499dd vmcore_add_device_dump +EXPORT_SYMBOL vmlinux 0x75e04a11 __bio_clone_fast +EXPORT_SYMBOL vmlinux 0x75e801d8 md_bitmap_update_sb +EXPORT_SYMBOL vmlinux 0x75e86659 devm_rproc_alloc +EXPORT_SYMBOL vmlinux 0x760a0f4f yield +EXPORT_SYMBOL vmlinux 0x7624249e dim_park_tired +EXPORT_SYMBOL vmlinux 0x76264639 vme_register_error_handler +EXPORT_SYMBOL vmlinux 0x76304357 __skb_flow_get_ports +EXPORT_SYMBOL vmlinux 0x7639c8cc bio_add_page +EXPORT_SYMBOL vmlinux 0x763ba3ad ioread64be_hi_lo +EXPORT_SYMBOL vmlinux 0x7647726c handle_sysrq +EXPORT_SYMBOL vmlinux 0x765d01d3 agp_generic_remove_memory +EXPORT_SYMBOL vmlinux 0x765ff474 crc_t10dif_generic +EXPORT_SYMBOL vmlinux 0x766a0927 mempool_alloc_pages +EXPORT_SYMBOL vmlinux 0x766a3fd7 kern_path_create +EXPORT_SYMBOL vmlinux 0x767627bc scsi_is_host_device +EXPORT_SYMBOL vmlinux 0x767dce4b acpi_disable_all_gpes +EXPORT_SYMBOL vmlinux 0x767ddb02 set_memory_wc +EXPORT_SYMBOL vmlinux 0x76814c9c igrab +EXPORT_SYMBOL vmlinux 0x7690e8df pcim_set_mwi +EXPORT_SYMBOL vmlinux 0x7699e44b bd_finish_claiming +EXPORT_SYMBOL vmlinux 0x769a6d85 dquot_get_next_id +EXPORT_SYMBOL vmlinux 0x769f6e64 errseq_check +EXPORT_SYMBOL vmlinux 0x76a91d09 inet_ioctl +EXPORT_SYMBOL vmlinux 0x76b5ca27 scsi_dma_unmap +EXPORT_SYMBOL vmlinux 0x76b97f5d register_fib_notifier +EXPORT_SYMBOL vmlinux 0x76c3794b sk_stream_wait_memory +EXPORT_SYMBOL vmlinux 0x76d3cd60 laptop_mode +EXPORT_SYMBOL vmlinux 0x76d451c4 add_taint +EXPORT_SYMBOL vmlinux 0x76e220fb param_set_bool +EXPORT_SYMBOL vmlinux 0x76f83a1b pci_bus_write_config_word +EXPORT_SYMBOL vmlinux 0x76fb08a7 amd_iommu_unregister_ppr_notifier +EXPORT_SYMBOL vmlinux 0x77092e8b dma_supported +EXPORT_SYMBOL vmlinux 0x772deab4 tcp_md5_do_del +EXPORT_SYMBOL vmlinux 0x7732159c free_irq_cpu_rmap +EXPORT_SYMBOL vmlinux 0x77358855 iomem_resource +EXPORT_SYMBOL vmlinux 0x77364b9d dma_direct_sync_single_for_cpu +EXPORT_SYMBOL vmlinux 0x773fa409 __kfifo_dma_in_finish_r +EXPORT_SYMBOL vmlinux 0x774489fa set_disk_ro +EXPORT_SYMBOL vmlinux 0x77456e0a acpi_root_dir +EXPORT_SYMBOL vmlinux 0x775555e2 vlan_for_each +EXPORT_SYMBOL vmlinux 0x7764d8f1 dev_set_group +EXPORT_SYMBOL vmlinux 0x778577ff unix_detach_fds +EXPORT_SYMBOL vmlinux 0x778d29c3 block_write_begin +EXPORT_SYMBOL vmlinux 0x77933d04 netdev_bind_sb_channel_queue +EXPORT_SYMBOL vmlinux 0x779a18af kstrtoll +EXPORT_SYMBOL vmlinux 0x77b0fed9 __next_node_in +EXPORT_SYMBOL vmlinux 0x77b64a9b get_super_exclusive_thawed +EXPORT_SYMBOL vmlinux 0x77bc13a0 strim +EXPORT_SYMBOL vmlinux 0x77bd221b phy_ethtool_get_eee +EXPORT_SYMBOL vmlinux 0x77e9eb37 aes_encrypt +EXPORT_SYMBOL vmlinux 0x78017904 dqput +EXPORT_SYMBOL vmlinux 0x7807f0f8 schedule_timeout_idle +EXPORT_SYMBOL vmlinux 0x780fdfd1 intel_enable_gtt +EXPORT_SYMBOL vmlinux 0x7834defd vfio_group_unpin_pages +EXPORT_SYMBOL vmlinux 0x78350b7d __vfs_setxattr +EXPORT_SYMBOL vmlinux 0x7846af3e __kfifo_len_r +EXPORT_SYMBOL vmlinux 0x785061ac jbd2_journal_restart +EXPORT_SYMBOL vmlinux 0x785a5235 ipv6_dev_get_saddr +EXPORT_SYMBOL vmlinux 0x785ba7d3 skb_pull +EXPORT_SYMBOL vmlinux 0x786c22f8 xfrm_register_type_offload +EXPORT_SYMBOL vmlinux 0x7873b640 padata_do_serial +EXPORT_SYMBOL vmlinux 0x7873eecc elv_rb_latter_request +EXPORT_SYMBOL vmlinux 0x7880c781 dm_kcopyd_prepare_callback +EXPORT_SYMBOL vmlinux 0x789affb1 frontswap_tmem_exclusive_gets +EXPORT_SYMBOL vmlinux 0x78a16f48 aes_decrypt +EXPORT_SYMBOL vmlinux 0x78b84b85 pci_pme_capable +EXPORT_SYMBOL vmlinux 0x78bd1f03 tcf_classify +EXPORT_SYMBOL vmlinux 0x78be708c ndo_dflt_fdb_del +EXPORT_SYMBOL vmlinux 0x78caea0e security_inet_conn_established +EXPORT_SYMBOL vmlinux 0x78df5bfd blk_queue_flag_clear +EXPORT_SYMBOL vmlinux 0x78df6bd7 no_pci_devices +EXPORT_SYMBOL vmlinux 0x78eb7427 sk_send_sigurg +EXPORT_SYMBOL vmlinux 0x78fb27b6 put_fs_context +EXPORT_SYMBOL vmlinux 0x7945d57a security_inode_copy_up +EXPORT_SYMBOL vmlinux 0x79547b0c xfrm_init_state +EXPORT_SYMBOL vmlinux 0x795cbfd3 __mdiobus_read +EXPORT_SYMBOL vmlinux 0x795cc4c8 ps2_handle_ack +EXPORT_SYMBOL vmlinux 0x79739c3c utf8nagemin +EXPORT_SYMBOL vmlinux 0x797aa7be skb_checksum_setup +EXPORT_SYMBOL vmlinux 0x79842efa phy_mii_ioctl +EXPORT_SYMBOL vmlinux 0x7984eefc key_update +EXPORT_SYMBOL vmlinux 0x799f35dc send_sig +EXPORT_SYMBOL vmlinux 0x799fa008 padata_free_shell +EXPORT_SYMBOL vmlinux 0x79a33f85 vme_get_size +EXPORT_SYMBOL vmlinux 0x79a79fe4 new_inode +EXPORT_SYMBOL vmlinux 0x79aa04a2 get_random_bytes +EXPORT_SYMBOL vmlinux 0x79c92d5e set_groups +EXPORT_SYMBOL vmlinux 0x79df9633 ioremap_encrypted +EXPORT_SYMBOL vmlinux 0x7a09a064 seg6_hmac_compute +EXPORT_SYMBOL vmlinux 0x7a0bb9c9 vme_slot_num +EXPORT_SYMBOL vmlinux 0x7a18785e dm_mq_kick_requeue_list +EXPORT_SYMBOL vmlinux 0x7a1a5d8a ndo_dflt_fdb_add +EXPORT_SYMBOL vmlinux 0x7a1bcd59 gf128mul_x8_ble +EXPORT_SYMBOL vmlinux 0x7a2406ce tty_schedule_flip +EXPORT_SYMBOL vmlinux 0x7a2af7b4 cpu_number +EXPORT_SYMBOL vmlinux 0x7a2ce737 get_thermal_instance +EXPORT_SYMBOL vmlinux 0x7a3edf7e remove_watch_from_object +EXPORT_SYMBOL vmlinux 0x7a4497db kzfree +EXPORT_SYMBOL vmlinux 0x7a4cbead _copy_to_iter +EXPORT_SYMBOL vmlinux 0x7a5d7073 __i2c_smbus_xfer +EXPORT_SYMBOL vmlinux 0x7a748982 block_truncate_page +EXPORT_SYMBOL vmlinux 0x7a84049d nvm_dev_dma_free +EXPORT_SYMBOL vmlinux 0x7a88da87 iosf_mbi_write +EXPORT_SYMBOL vmlinux 0x7a95e5ae do_settimeofday64 +EXPORT_SYMBOL vmlinux 0x7a9b37e8 blk_start_plug +EXPORT_SYMBOL vmlinux 0x7aa1756e kvfree +EXPORT_SYMBOL vmlinux 0x7aa1f24e pcie_capability_write_word +EXPORT_SYMBOL vmlinux 0x7ab88a45 system_freezing_cnt +EXPORT_SYMBOL vmlinux 0x7ad050b9 qid_lt +EXPORT_SYMBOL vmlinux 0x7ad906de skb_clone +EXPORT_SYMBOL vmlinux 0x7adb9380 flow_indr_dev_register +EXPORT_SYMBOL vmlinux 0x7adc0fbf rb_replace_node_rcu +EXPORT_SYMBOL vmlinux 0x7add51f0 truncate_inode_pages_range +EXPORT_SYMBOL vmlinux 0x7ae0af7a super_setup_bdi +EXPORT_SYMBOL vmlinux 0x7ae2854c load_nls_default +EXPORT_SYMBOL vmlinux 0x7aec9089 clear_user +EXPORT_SYMBOL vmlinux 0x7aee1fff __starget_for_each_device +EXPORT_SYMBOL vmlinux 0x7aff77a3 __cpu_present_mask +EXPORT_SYMBOL vmlinux 0x7b0192da kstrtou16 +EXPORT_SYMBOL vmlinux 0x7b19f5c4 i2c_smbus_read_i2c_block_data_or_emulated +EXPORT_SYMBOL vmlinux 0x7b1ba1c4 generic_pipe_buf_get +EXPORT_SYMBOL vmlinux 0x7b2cb917 __alloc_skb +EXPORT_SYMBOL vmlinux 0x7b3d8f60 phy_start_cable_test +EXPORT_SYMBOL vmlinux 0x7b4488cb register_netdevice_notifier_net +EXPORT_SYMBOL vmlinux 0x7b45c7be vfs_get_tree +EXPORT_SYMBOL vmlinux 0x7b4da6ff __init_rwsem +EXPORT_SYMBOL vmlinux 0x7b546a91 bio_copy_data +EXPORT_SYMBOL vmlinux 0x7b5b8f31 sha256_update +EXPORT_SYMBOL vmlinux 0x7b82b9a1 idr_replace +EXPORT_SYMBOL vmlinux 0x7b9dc501 sock_no_sendpage_locked +EXPORT_SYMBOL vmlinux 0x7bb0fd54 d_rehash +EXPORT_SYMBOL vmlinux 0x7bb50b88 acpi_write +EXPORT_SYMBOL vmlinux 0x7bb8a7ce posix_acl_from_xattr +EXPORT_SYMBOL vmlinux 0x7bbb9e93 __mod_node_page_state +EXPORT_SYMBOL vmlinux 0x7bbccd05 nr_node_ids +EXPORT_SYMBOL vmlinux 0x7bc48578 flow_rule_match_enc_ip +EXPORT_SYMBOL vmlinux 0x7bca768b security_sb_remount +EXPORT_SYMBOL vmlinux 0x7bd48479 cpufreq_generic_suspend +EXPORT_SYMBOL vmlinux 0x7bdcb6b3 nvdimm_revalidate_disk +EXPORT_SYMBOL vmlinux 0x7bdeba64 locks_init_lock +EXPORT_SYMBOL vmlinux 0x7bed23d7 ns_capable +EXPORT_SYMBOL vmlinux 0x7bf6b820 register_framebuffer +EXPORT_SYMBOL vmlinux 0x7bfb0400 xsk_clear_rx_need_wakeup +EXPORT_SYMBOL vmlinux 0x7c0b89ad nd_pfn_probe +EXPORT_SYMBOL vmlinux 0x7c173634 __bitmap_complement +EXPORT_SYMBOL vmlinux 0x7c3f208a dma_virt_ops +EXPORT_SYMBOL vmlinux 0x7c46233a cpufreq_quick_get +EXPORT_SYMBOL vmlinux 0x7c51e6bb phy_drivers_register +EXPORT_SYMBOL vmlinux 0x7c622331 vga_switcheroo_init_domain_pm_ops +EXPORT_SYMBOL vmlinux 0x7c700d89 pneigh_enqueue +EXPORT_SYMBOL vmlinux 0x7c72e5ab input_mt_report_finger_count +EXPORT_SYMBOL vmlinux 0x7c8885d2 jbd2_log_wait_commit +EXPORT_SYMBOL vmlinux 0x7c9ca58f __sg_page_iter_next +EXPORT_SYMBOL vmlinux 0x7ca50dfd configfs_depend_item_unlocked +EXPORT_SYMBOL vmlinux 0x7cb09ff7 flow_block_cb_lookup +EXPORT_SYMBOL vmlinux 0x7cb1aea1 devlink_dpipe_header_ethernet +EXPORT_SYMBOL vmlinux 0x7cc26add d_tmpfile +EXPORT_SYMBOL vmlinux 0x7cd8d75e page_offset_base +EXPORT_SYMBOL vmlinux 0x7cd99dde xfrm_state_alloc +EXPORT_SYMBOL vmlinux 0x7cdbd8ac qdisc_put +EXPORT_SYMBOL vmlinux 0x7ce1603d scsi_partsize +EXPORT_SYMBOL vmlinux 0x7ce18c9f from_kqid +EXPORT_SYMBOL vmlinux 0x7cf35220 vme_master_free +EXPORT_SYMBOL vmlinux 0x7cfe368d net_dim_get_def_tx_moderation +EXPORT_SYMBOL vmlinux 0x7cfe7dbf adjust_managed_page_count +EXPORT_SYMBOL vmlinux 0x7d0ba682 gen_pool_virt_to_phys +EXPORT_SYMBOL vmlinux 0x7d0d8de8 xfrm_state_insert +EXPORT_SYMBOL vmlinux 0x7d0db45c jiffies_to_clock_t +EXPORT_SYMBOL vmlinux 0x7d12d76d acpi_get_parent +EXPORT_SYMBOL vmlinux 0x7d19e203 pci_scan_bridge +EXPORT_SYMBOL vmlinux 0x7d216ecf is_acpi_device_node +EXPORT_SYMBOL vmlinux 0x7d26c366 set_blocksize +EXPORT_SYMBOL vmlinux 0x7d4b176a netlbl_catmap_setbit +EXPORT_SYMBOL vmlinux 0x7d58e018 pps_unregister_source +EXPORT_SYMBOL vmlinux 0x7d5d8eff scsi_remove_device +EXPORT_SYMBOL vmlinux 0x7d5e1008 __crc32c_le_shift +EXPORT_SYMBOL vmlinux 0x7d628444 memcpy_fromio +EXPORT_SYMBOL vmlinux 0x7d781609 check_disk_change +EXPORT_SYMBOL vmlinux 0x7d7d727e __skb_flow_dissect +EXPORT_SYMBOL vmlinux 0x7d8fedbc napi_complete_done +EXPORT_SYMBOL vmlinux 0x7dad3299 init_task +EXPORT_SYMBOL vmlinux 0x7daece67 quota_send_warning +EXPORT_SYMBOL vmlinux 0x7daefb4e call_usermodehelper_exec +EXPORT_SYMBOL vmlinux 0x7dd554fc unregister_kmmio_probe +EXPORT_SYMBOL vmlinux 0x7de4eaaf pcie_set_readrq +EXPORT_SYMBOL vmlinux 0x7deff673 dm_consume_args +EXPORT_SYMBOL vmlinux 0x7df0d835 mipi_dsi_dcs_enter_sleep_mode +EXPORT_SYMBOL vmlinux 0x7df97167 mmc_hw_reset +EXPORT_SYMBOL vmlinux 0x7e0826e2 atomic_dec_and_mutex_lock +EXPORT_SYMBOL vmlinux 0x7e1b754e abx500_set_register_interruptible +EXPORT_SYMBOL vmlinux 0x7e2ee55d pcix_get_mmrbc +EXPORT_SYMBOL vmlinux 0x7e3191f6 try_to_del_timer_sync +EXPORT_SYMBOL vmlinux 0x7e526bfa __x86_indirect_thunk_r10 +EXPORT_SYMBOL vmlinux 0x7e6f1353 fscrypt_decrypt_bio +EXPORT_SYMBOL vmlinux 0x7e709f64 rproc_report_crash +EXPORT_SYMBOL vmlinux 0x7e7bcf26 acpi_map_cpu +EXPORT_SYMBOL vmlinux 0x7e7bf0eb sk_stream_error +EXPORT_SYMBOL vmlinux 0x7e7ca1ca compat_ipv6_setsockopt +EXPORT_SYMBOL vmlinux 0x7e896314 __fs_parse +EXPORT_SYMBOL vmlinux 0x7ec36bd9 __scsi_device_lookup +EXPORT_SYMBOL vmlinux 0x7ec78bdd rename_lock +EXPORT_SYMBOL vmlinux 0x7ece31ee xfrm4_rcv_encap +EXPORT_SYMBOL vmlinux 0x7ed29774 blk_mq_init_sq_queue +EXPORT_SYMBOL vmlinux 0x7ee013d6 sock_edemux +EXPORT_SYMBOL vmlinux 0x7f02188f __msecs_to_jiffies +EXPORT_SYMBOL vmlinux 0x7f03b6a9 crc_ccitt_table +EXPORT_SYMBOL vmlinux 0x7f1b46fe submit_bh +EXPORT_SYMBOL vmlinux 0x7f24de73 jiffies_to_usecs +EXPORT_SYMBOL vmlinux 0x7f4ca106 proc_remove +EXPORT_SYMBOL vmlinux 0x7f52071a net_dim +EXPORT_SYMBOL vmlinux 0x7f53a1b8 tcp_read_sock +EXPORT_SYMBOL vmlinux 0x7f5b4fe4 sg_free_table +EXPORT_SYMBOL vmlinux 0x7f72b5a8 ip6_find_1stfragopt +EXPORT_SYMBOL vmlinux 0x7f7c2e41 tcp_seq_stop +EXPORT_SYMBOL vmlinux 0x7f7f7bb4 irq_poll_disable +EXPORT_SYMBOL vmlinux 0x7fae9986 ip_frag_next +EXPORT_SYMBOL vmlinux 0x7fb3f887 inet6_add_protocol +EXPORT_SYMBOL vmlinux 0x7fb4da5a vm_map_pages +EXPORT_SYMBOL vmlinux 0x7fb5472c generic_ro_fops +EXPORT_SYMBOL vmlinux 0x7fc2ce8c pci_bus_read_config_dword +EXPORT_SYMBOL vmlinux 0x7fe32873 rb_replace_node +EXPORT_SYMBOL vmlinux 0x8016eab5 seg6_hmac_net_exit +EXPORT_SYMBOL vmlinux 0x802c026f mpage_readahead +EXPORT_SYMBOL vmlinux 0x8031343b file_update_time +EXPORT_SYMBOL vmlinux 0x80322eeb mipi_dsi_dcs_exit_sleep_mode +EXPORT_SYMBOL vmlinux 0x803ddbb6 __posix_acl_create +EXPORT_SYMBOL vmlinux 0x804af87c wrmsr_safe_on_cpu +EXPORT_SYMBOL vmlinux 0x805a0fe3 console_start +EXPORT_SYMBOL vmlinux 0x80667fec tag_pages_for_writeback +EXPORT_SYMBOL vmlinux 0x8066b867 vga_switcheroo_register_audio_client +EXPORT_SYMBOL vmlinux 0x80670242 show_init_ipc_ns +EXPORT_SYMBOL vmlinux 0x8089fbba dma_fence_array_create +EXPORT_SYMBOL vmlinux 0x809712ff hdmi_avi_infoframe_pack +EXPORT_SYMBOL vmlinux 0x80a717a8 __percpu_counter_compare +EXPORT_SYMBOL vmlinux 0x80ca5026 _bin2bcd +EXPORT_SYMBOL vmlinux 0x80cb03d4 tty_unthrottle +EXPORT_SYMBOL vmlinux 0x80d68d3e fb_register_client +EXPORT_SYMBOL vmlinux 0x80dc6a27 __d_lookup_done +EXPORT_SYMBOL vmlinux 0x80def667 sock_no_linger +EXPORT_SYMBOL vmlinux 0x80e8e8e1 vme_irq_request +EXPORT_SYMBOL vmlinux 0x80f33226 nlmsg_notify +EXPORT_SYMBOL vmlinux 0x8112b3d2 scsi_build_sense_buffer +EXPORT_SYMBOL vmlinux 0x81188c30 match_string +EXPORT_SYMBOL vmlinux 0x8128ce7e tso_build_hdr +EXPORT_SYMBOL vmlinux 0x813e9f89 proc_mkdir +EXPORT_SYMBOL vmlinux 0x8143e6c4 devm_request_any_context_irq +EXPORT_SYMBOL vmlinux 0x814e19ec __neigh_event_send +EXPORT_SYMBOL vmlinux 0x81533963 sysfs_format_mac +EXPORT_SYMBOL vmlinux 0x81564b29 is_nd_btt +EXPORT_SYMBOL vmlinux 0x815b5dd4 match_octal +EXPORT_SYMBOL vmlinux 0x815f2897 empty_zero_page +EXPORT_SYMBOL vmlinux 0x816347c6 agp_device_command +EXPORT_SYMBOL vmlinux 0x817238a2 __dev_set_mtu +EXPORT_SYMBOL vmlinux 0x818416e1 scsi_set_sense_information +EXPORT_SYMBOL vmlinux 0x819908e3 netlink_ack +EXPORT_SYMBOL vmlinux 0x81a2c842 is_nvdimm_bus_locked +EXPORT_SYMBOL vmlinux 0x81ac5e33 trace_print_hex_dump_seq +EXPORT_SYMBOL vmlinux 0x81b395b3 down_interruptible +EXPORT_SYMBOL vmlinux 0x81b607ab ppp_dev_name +EXPORT_SYMBOL vmlinux 0x81ba7621 pci_bus_claim_resources +EXPORT_SYMBOL vmlinux 0x81c1d4cc skb_queue_purge +EXPORT_SYMBOL vmlinux 0x81c45cd6 passthru_features_check +EXPORT_SYMBOL vmlinux 0x81ce9941 intel_scu_ipc_dev_writev +EXPORT_SYMBOL vmlinux 0x81db6ebb xz_dec_reset +EXPORT_SYMBOL vmlinux 0x81e079b5 vga_set_legacy_decoding +EXPORT_SYMBOL vmlinux 0x81e6b37f dmi_get_system_info +EXPORT_SYMBOL vmlinux 0x81e9cbbc xfrm_register_km +EXPORT_SYMBOL vmlinux 0x81f57ac0 poll_initwait +EXPORT_SYMBOL vmlinux 0x81f633c8 __insert_inode_hash +EXPORT_SYMBOL vmlinux 0x82028903 devm_devfreq_register_opp_notifier +EXPORT_SYMBOL vmlinux 0x82072614 tasklet_kill +EXPORT_SYMBOL vmlinux 0x820abbc0 pin_user_pages_unlocked +EXPORT_SYMBOL vmlinux 0x8220aeae seg6_hmac_net_init +EXPORT_SYMBOL vmlinux 0x82232bca secure_tcpv6_ts_off +EXPORT_SYMBOL vmlinux 0x822c8347 udp_lib_rehash +EXPORT_SYMBOL vmlinux 0x823c19ea iosf_mbi_unregister_pmic_bus_access_notifier_unlocked +EXPORT_SYMBOL vmlinux 0x824fab4a ipv6_dev_mc_inc +EXPORT_SYMBOL vmlinux 0x82558019 skb_checksum +EXPORT_SYMBOL vmlinux 0x8263a6d9 proc_douintvec +EXPORT_SYMBOL vmlinux 0x826dbfbf device_match_acpi_dev +EXPORT_SYMBOL vmlinux 0x8273cb1d __seq_open_private +EXPORT_SYMBOL vmlinux 0x828062b1 __frontswap_init +EXPORT_SYMBOL vmlinux 0x8294383b dev_mc_del +EXPORT_SYMBOL vmlinux 0x82a0ebd7 mroute6_is_socket +EXPORT_SYMBOL vmlinux 0x82a855b5 simple_dentry_operations +EXPORT_SYMBOL vmlinux 0x82b3e0b9 __sb_end_write +EXPORT_SYMBOL vmlinux 0x82b6783d dquot_mark_dquot_dirty +EXPORT_SYMBOL vmlinux 0x82c23234 vfs_rmdir +EXPORT_SYMBOL vmlinux 0x82c87ad5 nr_online_nodes +EXPORT_SYMBOL vmlinux 0x82cc135e touchscreen_report_pos +EXPORT_SYMBOL vmlinux 0x82cc24bd blk_rq_count_integrity_sg +EXPORT_SYMBOL vmlinux 0x82cc7413 cpufreq_get_policy +EXPORT_SYMBOL vmlinux 0x83324375 qdisc_watchdog_cancel +EXPORT_SYMBOL vmlinux 0x83581089 gf128mul_init_4k_lle +EXPORT_SYMBOL vmlinux 0x835a724a __serio_register_driver +EXPORT_SYMBOL vmlinux 0x8360cb03 netdev_info +EXPORT_SYMBOL vmlinux 0x836bc1c1 __ClearPageMovable +EXPORT_SYMBOL vmlinux 0x836c08a9 pin_user_pages_remote +EXPORT_SYMBOL vmlinux 0x836d53ba con_is_visible +EXPORT_SYMBOL vmlinux 0x8379d325 km_policy_expired +EXPORT_SYMBOL vmlinux 0x837b7b09 __dynamic_pr_debug +EXPORT_SYMBOL vmlinux 0x8388b609 _copy_from_iter_nocache +EXPORT_SYMBOL vmlinux 0x838d2bc8 siphash_3u32 +EXPORT_SYMBOL vmlinux 0x839279c5 udp_seq_ops +EXPORT_SYMBOL vmlinux 0x83977969 jbd2_trans_will_send_data_barrier +EXPORT_SYMBOL vmlinux 0x83a12da8 kernel_getpeername +EXPORT_SYMBOL vmlinux 0x83aa12e4 neigh_sysctl_unregister +EXPORT_SYMBOL vmlinux 0x83b04fd1 devm_alloc_etherdev_mqs +EXPORT_SYMBOL vmlinux 0x83b3ba21 pci_scan_bus +EXPORT_SYMBOL vmlinux 0x83be5bf1 locks_lock_inode_wait +EXPORT_SYMBOL vmlinux 0x83c52fba xfrm4_protocol_init +EXPORT_SYMBOL vmlinux 0x83cd0277 fib_notifier_ops_register +EXPORT_SYMBOL vmlinux 0x83d831f9 fasync_helper +EXPORT_SYMBOL vmlinux 0x83e38f1c ppp_register_channel +EXPORT_SYMBOL vmlinux 0x83ecce48 pci_write_config_word +EXPORT_SYMBOL vmlinux 0x840342c6 sgl_free +EXPORT_SYMBOL vmlinux 0x84036548 register_md_cluster_operations +EXPORT_SYMBOL vmlinux 0x840c1c0a set_pages_uc +EXPORT_SYMBOL vmlinux 0x841cd92a tty_port_hangup +EXPORT_SYMBOL vmlinux 0x841e91e9 tcp_prot +EXPORT_SYMBOL vmlinux 0x8427cac2 __cgroup_bpf_run_filter_sk +EXPORT_SYMBOL vmlinux 0x84501716 dma_direct_sync_sg_for_device +EXPORT_SYMBOL vmlinux 0x84559b2f pcibios_bus_to_resource +EXPORT_SYMBOL vmlinux 0x845923e5 d_obtain_alias +EXPORT_SYMBOL vmlinux 0x8488bab2 inc_nlink +EXPORT_SYMBOL vmlinux 0x848d372e iowrite8 +EXPORT_SYMBOL vmlinux 0x849d1f25 pci_release_resource +EXPORT_SYMBOL vmlinux 0x849fe807 csum_and_copy_from_user +EXPORT_SYMBOL vmlinux 0x84a38709 dev_set_promiscuity +EXPORT_SYMBOL vmlinux 0x84ae336f dst_destroy +EXPORT_SYMBOL vmlinux 0x84c001f1 __scsi_execute +EXPORT_SYMBOL vmlinux 0x84c1c552 proc_dointvec_ms_jiffies +EXPORT_SYMBOL vmlinux 0x84d172d8 rproc_elf_load_rsc_table +EXPORT_SYMBOL vmlinux 0x84d5bfbb clear_nlink +EXPORT_SYMBOL vmlinux 0x84e196b1 xfrm_lookup_route +EXPORT_SYMBOL vmlinux 0x84feeb3f generic_pipe_buf_release +EXPORT_SYMBOL vmlinux 0x850ab8e9 scsicam_bios_param +EXPORT_SYMBOL vmlinux 0x85144200 dquot_commit +EXPORT_SYMBOL vmlinux 0x85329a81 file_write_and_wait_range +EXPORT_SYMBOL vmlinux 0x85351250 pagecache_write_begin +EXPORT_SYMBOL vmlinux 0x8535fe7c security_task_getsecid +EXPORT_SYMBOL vmlinux 0x853df309 __hw_addr_sync_dev +EXPORT_SYMBOL vmlinux 0x85532eb1 __tracepoint_dma_fence_enable_signal +EXPORT_SYMBOL vmlinux 0x85670f1d rtnl_is_locked +EXPORT_SYMBOL vmlinux 0x856868b2 request_firmware_into_buf +EXPORT_SYMBOL vmlinux 0x857a8a7e unregister_tcf_proto_ops +EXPORT_SYMBOL vmlinux 0x8580210f dev_pre_changeaddr_notify +EXPORT_SYMBOL vmlinux 0x8586ef58 param_set_ullong +EXPORT_SYMBOL vmlinux 0x858b3fe3 free_iova_mem +EXPORT_SYMBOL vmlinux 0x8591d7d5 ledtrig_mtd_activity +EXPORT_SYMBOL vmlinux 0x85a47ff6 fb_show_logo +EXPORT_SYMBOL vmlinux 0x85a58317 nvmem_get_mac_address +EXPORT_SYMBOL vmlinux 0x85b4cf2f utf8nlen +EXPORT_SYMBOL vmlinux 0x85b5e625 rfkill_set_states +EXPORT_SYMBOL vmlinux 0x85bd1608 __request_region +EXPORT_SYMBOL vmlinux 0x85bf5a60 genphy_read_status_fixed +EXPORT_SYMBOL vmlinux 0x85cc0c77 seq_escape_mem_ascii +EXPORT_SYMBOL vmlinux 0x85d674e0 file_remove_privs +EXPORT_SYMBOL vmlinux 0x85df9b6c strsep +EXPORT_SYMBOL vmlinux 0x85eb2a6d __zerocopy_sg_from_iter +EXPORT_SYMBOL vmlinux 0x85efc7e0 zero_pfn +EXPORT_SYMBOL vmlinux 0x85f44a47 fuse_dequeue_forget +EXPORT_SYMBOL vmlinux 0x85fbc931 slhc_uncompress +EXPORT_SYMBOL vmlinux 0x8605f573 __tcf_idr_release +EXPORT_SYMBOL vmlinux 0x862474ef compat_tcp_getsockopt +EXPORT_SYMBOL vmlinux 0x8633d306 single_open +EXPORT_SYMBOL vmlinux 0x863a276a color_table +EXPORT_SYMBOL vmlinux 0x865029ac __hw_addr_sync +EXPORT_SYMBOL vmlinux 0x8660550c mmc_wait_for_req_done +EXPORT_SYMBOL vmlinux 0x8667bec0 pci_disable_msix +EXPORT_SYMBOL vmlinux 0x86749581 mmc_gpio_get_ro +EXPORT_SYMBOL vmlinux 0x86820552 serio_unregister_driver +EXPORT_SYMBOL vmlinux 0x868a980c generic_block_bmap +EXPORT_SYMBOL vmlinux 0x868acba5 get_options +EXPORT_SYMBOL vmlinux 0x86b16c17 neigh_table_init +EXPORT_SYMBOL vmlinux 0x86c6de81 proc_symlink +EXPORT_SYMBOL vmlinux 0x86c7272b iosf_mbi_read +EXPORT_SYMBOL vmlinux 0x86cd9400 mmc_cqe_post_req +EXPORT_SYMBOL vmlinux 0x86d52ba5 lookup_constant +EXPORT_SYMBOL vmlinux 0x86e96c0f blk_queue_max_segment_size +EXPORT_SYMBOL vmlinux 0x86ec410d ___pskb_trim +EXPORT_SYMBOL vmlinux 0x86f27420 iosf_mbi_block_punit_i2c_access +EXPORT_SYMBOL vmlinux 0x86fb4536 cpumask_any_and_distribute +EXPORT_SYMBOL vmlinux 0x86fb9b05 bitmap_parse_user +EXPORT_SYMBOL vmlinux 0x86fbea82 dst_release +EXPORT_SYMBOL vmlinux 0x8702bb1f seq_put_decimal_ull +EXPORT_SYMBOL vmlinux 0x8727c3ae path_has_submounts +EXPORT_SYMBOL vmlinux 0x873bb6fe set_pages_array_wb +EXPORT_SYMBOL vmlinux 0x873f0f5b dev_mc_init +EXPORT_SYMBOL vmlinux 0x874db5d1 do_splice_direct +EXPORT_SYMBOL vmlinux 0x87525651 fscrypt_zeroout_range +EXPORT_SYMBOL vmlinux 0x8761c87b rps_needed +EXPORT_SYMBOL vmlinux 0x8761f4b7 dev_pick_tx_cpu_id +EXPORT_SYMBOL vmlinux 0x87638338 scsi_device_quiesce +EXPORT_SYMBOL vmlinux 0x8782a0ee skb_split +EXPORT_SYMBOL vmlinux 0x878469bd ZSTD_decompressStream +EXPORT_SYMBOL vmlinux 0x878b6d39 unlock_page +EXPORT_SYMBOL vmlinux 0x87984370 seq_escape +EXPORT_SYMBOL vmlinux 0x87b8798d sg_next +EXPORT_SYMBOL vmlinux 0x87cca78f scsi_is_sdev_device +EXPORT_SYMBOL vmlinux 0x87d01b88 prepare_creds +EXPORT_SYMBOL vmlinux 0x87ec52be page_mapped +EXPORT_SYMBOL vmlinux 0x87ef0f77 input_setup_polling +EXPORT_SYMBOL vmlinux 0x87f5da98 node_data +EXPORT_SYMBOL vmlinux 0x88059112 free_netdev +EXPORT_SYMBOL vmlinux 0x881c4413 gen_pool_first_fit +EXPORT_SYMBOL vmlinux 0x88239f6f io_uring_get_socket +EXPORT_SYMBOL vmlinux 0x88245fac vfs_dedupe_file_range_one +EXPORT_SYMBOL vmlinux 0x8828b217 generic_splice_sendpage +EXPORT_SYMBOL vmlinux 0x88322454 vfs_getattr +EXPORT_SYMBOL vmlinux 0x884dd65d genphy_config_eee_advert +EXPORT_SYMBOL vmlinux 0x8854348a security_unix_stream_connect +EXPORT_SYMBOL vmlinux 0x8864e5f4 xfrm_user_policy +EXPORT_SYMBOL vmlinux 0x887888b5 sync_file_create +EXPORT_SYMBOL vmlinux 0x88822d38 unregister_blocking_lsm_notifier +EXPORT_SYMBOL vmlinux 0x8888f1fe xxh32 +EXPORT_SYMBOL vmlinux 0x88a867dd vme_master_request +EXPORT_SYMBOL vmlinux 0x88abb78b ZSTD_insertBlock +EXPORT_SYMBOL vmlinux 0x88b80c98 mmc_gpio_get_cd +EXPORT_SYMBOL vmlinux 0x88d5a461 param_ops_string +EXPORT_SYMBOL vmlinux 0x88db9f48 __check_object_size +EXPORT_SYMBOL vmlinux 0x88e1d0f0 page_frag_free +EXPORT_SYMBOL vmlinux 0x88f9e977 inode_sub_bytes +EXPORT_SYMBOL vmlinux 0x890f1f4a sock_queue_err_skb +EXPORT_SYMBOL vmlinux 0x8918c0ca bdi_set_max_ratio +EXPORT_SYMBOL vmlinux 0x8924f5af tcp_v4_mtu_reduced +EXPORT_SYMBOL vmlinux 0x8932857b kernel_param_unlock +EXPORT_SYMBOL vmlinux 0x89384a02 device_add_disk +EXPORT_SYMBOL vmlinux 0x89434b4b radix_tree_tag_clear +EXPORT_SYMBOL vmlinux 0x896680c4 from_kuid +EXPORT_SYMBOL vmlinux 0x896a9c4a dma_fence_chain_init +EXPORT_SYMBOL vmlinux 0x89782b51 rproc_put +EXPORT_SYMBOL vmlinux 0x89a1c897 tty_chars_in_buffer +EXPORT_SYMBOL vmlinux 0x89b4b81f mipi_dsi_generic_read +EXPORT_SYMBOL vmlinux 0x89d1344b fbcon_set_rotate +EXPORT_SYMBOL vmlinux 0x89d629a9 netdev_err +EXPORT_SYMBOL vmlinux 0x89d7c489 clean_bdev_aliases +EXPORT_SYMBOL vmlinux 0x89fc289f fwnode_graph_parse_endpoint +EXPORT_SYMBOL vmlinux 0x8a188c63 alloc_etherdev_mqs +EXPORT_SYMBOL vmlinux 0x8a32ebe4 simple_transaction_get +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 0x8a5cb990 mr_vif_seq_idx +EXPORT_SYMBOL vmlinux 0x8a6af65c kstrtoul_from_user +EXPORT_SYMBOL vmlinux 0x8a6c7139 acpi_mask_gpe +EXPORT_SYMBOL vmlinux 0x8a7837b3 inet_frag_kill +EXPORT_SYMBOL vmlinux 0x8a7d1c31 high_memory +EXPORT_SYMBOL vmlinux 0x8a87e330 __vfs_getxattr +EXPORT_SYMBOL vmlinux 0x8a885f13 netlink_ns_capable +EXPORT_SYMBOL vmlinux 0x8a8ce6c7 i2c_smbus_write_i2c_block_data +EXPORT_SYMBOL vmlinux 0x8a948f27 __nla_parse +EXPORT_SYMBOL vmlinux 0x8a995394 __cleancache_invalidate_inode +EXPORT_SYMBOL vmlinux 0x8a99a016 mempool_free_slab +EXPORT_SYMBOL vmlinux 0x8aa87cd9 tcp_enter_cwr +EXPORT_SYMBOL vmlinux 0x8ac3334b net_dim_get_def_rx_moderation +EXPORT_SYMBOL vmlinux 0x8ac743de sg_copy_buffer +EXPORT_SYMBOL vmlinux 0x8ad29bab _raw_write_unlock_bh +EXPORT_SYMBOL vmlinux 0x8aea353a nvm_unregister +EXPORT_SYMBOL vmlinux 0x8b0088d1 LZ4_decompress_safe_usingDict +EXPORT_SYMBOL vmlinux 0x8b0ccf83 ptp_schedule_worker +EXPORT_SYMBOL vmlinux 0x8b30f624 vme_dma_list_add +EXPORT_SYMBOL vmlinux 0x8b4fb452 pci_scan_root_bus_bridge +EXPORT_SYMBOL vmlinux 0x8b592f05 lookup_bdev +EXPORT_SYMBOL vmlinux 0x8b5fb52f vfs_iocb_iter_write +EXPORT_SYMBOL vmlinux 0x8b618d08 overflowuid +EXPORT_SYMBOL vmlinux 0x8b6998bc nf_unregister_net_hook +EXPORT_SYMBOL vmlinux 0x8b6f78ef __xfrm_policy_check +EXPORT_SYMBOL vmlinux 0x8b6fcd4e tcp_rtx_synack +EXPORT_SYMBOL vmlinux 0x8b8059bd in_group_p +EXPORT_SYMBOL vmlinux 0x8b833978 skb_get_hash_perturb +EXPORT_SYMBOL vmlinux 0x8b85fec9 xfrm_unregister_type +EXPORT_SYMBOL vmlinux 0x8b8cda8d textsearch_find_continuous +EXPORT_SYMBOL vmlinux 0x8b8fd954 begin_new_exec +EXPORT_SYMBOL vmlinux 0x8b910be2 errseq_sample +EXPORT_SYMBOL vmlinux 0x8b966b63 sn_rtc_cycles_per_second +EXPORT_SYMBOL vmlinux 0x8b9807ae bdi_put +EXPORT_SYMBOL vmlinux 0x8b989cf9 acpi_bus_can_wakeup +EXPORT_SYMBOL vmlinux 0x8b9ea582 ZSTD_copyDCtx +EXPORT_SYMBOL vmlinux 0x8bc3f8d3 rproc_coredump_add_segment +EXPORT_SYMBOL vmlinux 0x8bccee1f unix_get_socket +EXPORT_SYMBOL vmlinux 0x8bd577d0 acpi_ut_exit +EXPORT_SYMBOL vmlinux 0x8be6f4b1 seq_release +EXPORT_SYMBOL vmlinux 0x8c15fe3e __x86_retpoline_r10 +EXPORT_SYMBOL vmlinux 0x8c1e0460 get_mem_cgroup_from_page +EXPORT_SYMBOL vmlinux 0x8c2277e1 copy_page_from_iter +EXPORT_SYMBOL vmlinux 0x8c229097 rproc_free +EXPORT_SYMBOL vmlinux 0x8c26d495 prepare_to_wait_event +EXPORT_SYMBOL vmlinux 0x8c3253ec _raw_spin_trylock +EXPORT_SYMBOL vmlinux 0x8c57b2a7 revalidate_disk +EXPORT_SYMBOL vmlinux 0x8c691552 __dev_direct_xmit +EXPORT_SYMBOL vmlinux 0x8c6accad fscrypt_encrypt_pagecache_blocks +EXPORT_SYMBOL vmlinux 0x8c6bf651 flow_block_cb_is_busy +EXPORT_SYMBOL vmlinux 0x8c763496 phy_set_sym_pause +EXPORT_SYMBOL vmlinux 0x8c813067 acpi_get_hp_hw_control_from_firmware +EXPORT_SYMBOL vmlinux 0x8c83499f redraw_screen +EXPORT_SYMBOL vmlinux 0x8c896fec dev_getfirstbyhwtype +EXPORT_SYMBOL vmlinux 0x8c9d8057 fib_default_rule_add +EXPORT_SYMBOL vmlinux 0x8c9e338f acpi_bios_error +EXPORT_SYMBOL vmlinux 0x8ca4c727 release_sock +EXPORT_SYMBOL vmlinux 0x8cb544df __tracepoint_kmalloc +EXPORT_SYMBOL vmlinux 0x8cba8089 sock_no_getname +EXPORT_SYMBOL vmlinux 0x8cc79cab iowrite16_rep +EXPORT_SYMBOL vmlinux 0x8cda8029 xen_clear_irq_pending +EXPORT_SYMBOL vmlinux 0x8cf6d169 simple_open +EXPORT_SYMBOL vmlinux 0x8d0000f7 __neigh_for_each_release +EXPORT_SYMBOL vmlinux 0x8d06bb83 deactivate_locked_super +EXPORT_SYMBOL vmlinux 0x8d174b85 kmem_cache_alloc +EXPORT_SYMBOL vmlinux 0x8d21aaa5 ppp_unregister_channel +EXPORT_SYMBOL vmlinux 0x8d4cc75b fb_get_buffer_offset +EXPORT_SYMBOL vmlinux 0x8d55bb8a qid_eq +EXPORT_SYMBOL vmlinux 0x8d73278e hex_asc_upper +EXPORT_SYMBOL vmlinux 0x8d7c56ef bioset_integrity_create +EXPORT_SYMBOL vmlinux 0x8d8cf3fb dma_direct_unmap_sg +EXPORT_SYMBOL vmlinux 0x8d8fcfce arp_send +EXPORT_SYMBOL vmlinux 0x8d9ca0e6 dma_fence_enable_sw_signaling +EXPORT_SYMBOL vmlinux 0x8dad4609 tc_cleanup_flow_action +EXPORT_SYMBOL vmlinux 0x8db22efe acpi_setup_gpe_for_wake +EXPORT_SYMBOL vmlinux 0x8dbce526 mr_mfc_seq_idx +EXPORT_SYMBOL vmlinux 0x8dbf9721 rt_dst_alloc +EXPORT_SYMBOL vmlinux 0x8dc1b7fd tty_throttle +EXPORT_SYMBOL vmlinux 0x8dd45a11 __xfrm_init_state +EXPORT_SYMBOL vmlinux 0x8dd8a690 netpoll_poll_enable +EXPORT_SYMBOL vmlinux 0x8ddd8aad schedule_timeout +EXPORT_SYMBOL vmlinux 0x8de3ec6b tcf_classify_ingress +EXPORT_SYMBOL vmlinux 0x8de86a9a param_ops_ushort +EXPORT_SYMBOL vmlinux 0x8df2cd79 scsi_remove_target +EXPORT_SYMBOL vmlinux 0x8df7e8d6 cpumask_any_but +EXPORT_SYMBOL vmlinux 0x8df92f66 memchr_inv +EXPORT_SYMBOL vmlinux 0x8df9dd10 guid_null +EXPORT_SYMBOL vmlinux 0x8e16873d pci_find_next_bus +EXPORT_SYMBOL vmlinux 0x8e17b3ae idr_destroy +EXPORT_SYMBOL vmlinux 0x8e21c9a1 dma_fence_add_callback +EXPORT_SYMBOL vmlinux 0x8e24998f input_match_device_id +EXPORT_SYMBOL vmlinux 0x8e2d1236 ex_handler_wrmsr_unsafe +EXPORT_SYMBOL vmlinux 0x8e55d65c dquot_load_quota_inode +EXPORT_SYMBOL vmlinux 0x8e5ff190 __brelse +EXPORT_SYMBOL vmlinux 0x8e663d0f zalloc_cpumask_var_node +EXPORT_SYMBOL vmlinux 0x8e68f58e d_add_ci +EXPORT_SYMBOL vmlinux 0x8e70b6ec xfrm_policy_walk +EXPORT_SYMBOL vmlinux 0x8e881de3 take_dentry_name_snapshot +EXPORT_SYMBOL vmlinux 0x8e8b54e3 mpage_readpage +EXPORT_SYMBOL vmlinux 0x8e93bd24 security_secctx_to_secid +EXPORT_SYMBOL vmlinux 0x8eaf2a5f vga_switcheroo_unregister_handler +EXPORT_SYMBOL vmlinux 0x8ebf355c keyring_alloc +EXPORT_SYMBOL vmlinux 0x8ec96f04 jbd2_journal_start_reserved +EXPORT_SYMBOL vmlinux 0x8ed521c0 blk_mq_run_hw_queue +EXPORT_SYMBOL vmlinux 0x8f01afd6 twl6030_interrupt_mask +EXPORT_SYMBOL vmlinux 0x8f18bff7 i2c_clients_command +EXPORT_SYMBOL vmlinux 0x8f2703b7 wbinvd_on_all_cpus +EXPORT_SYMBOL vmlinux 0x8f38d383 ex_handler_default +EXPORT_SYMBOL vmlinux 0x8f3cd6c8 netlink_broadcast +EXPORT_SYMBOL vmlinux 0x8f3e6adb mod_zone_page_state +EXPORT_SYMBOL vmlinux 0x8f5635f9 md_bitmap_end_sync +EXPORT_SYMBOL vmlinux 0x8f573677 __i2c_transfer +EXPORT_SYMBOL vmlinux 0x8f80bf11 acpi_install_gpe_raw_handler +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 0x8facf5b0 nf_ip6_checksum +EXPORT_SYMBOL vmlinux 0x8fc4b5b7 serio_unregister_port +EXPORT_SYMBOL vmlinux 0x8fc66e6f dma_resv_reserve_shared +EXPORT_SYMBOL vmlinux 0x8fced94d tcp_md5_hash_skb_data +EXPORT_SYMBOL vmlinux 0x8fd4b00f bio_copy_data_iter +EXPORT_SYMBOL vmlinux 0x8fd7ea76 dquot_quota_sync +EXPORT_SYMBOL vmlinux 0x8fe00dac devm_ioremap_wc +EXPORT_SYMBOL vmlinux 0x8fe94f01 __generic_file_write_iter +EXPORT_SYMBOL vmlinux 0x8ff89ed0 seg6_hmac_exit +EXPORT_SYMBOL vmlinux 0x8ffbdba9 blk_limits_io_min +EXPORT_SYMBOL vmlinux 0x90055c2f jbd2_journal_get_create_access +EXPORT_SYMBOL vmlinux 0x901f1447 jbd2_journal_begin_ordered_truncate +EXPORT_SYMBOL vmlinux 0x902a9e38 md_update_sb +EXPORT_SYMBOL vmlinux 0x902d2f30 __cleancache_put_page +EXPORT_SYMBOL vmlinux 0x902d8722 vme_slave_get +EXPORT_SYMBOL vmlinux 0x902e4599 tcp_v4_md5_lookup +EXPORT_SYMBOL vmlinux 0x9030d43b mmc_sw_reset +EXPORT_SYMBOL vmlinux 0x9034a696 mempool_destroy +EXPORT_SYMBOL vmlinux 0x9054ee54 ethtool_intersect_link_masks +EXPORT_SYMBOL vmlinux 0x905695ab sg_copy_from_buffer +EXPORT_SYMBOL vmlinux 0x90576ec4 vmemdup_user +EXPORT_SYMBOL vmlinux 0x905d5db7 tcf_em_register +EXPORT_SYMBOL vmlinux 0x90602ed7 param_get_byte +EXPORT_SYMBOL vmlinux 0x90656ba7 inet_unregister_protosw +EXPORT_SYMBOL vmlinux 0x9066fc5e rproc_elf_sanity_check +EXPORT_SYMBOL vmlinux 0x906ad085 neigh_parms_release +EXPORT_SYMBOL vmlinux 0x907ba52c posix_acl_valid +EXPORT_SYMBOL vmlinux 0x908db415 tcf_get_next_proto +EXPORT_SYMBOL vmlinux 0x909d2cdf vm_event_states +EXPORT_SYMBOL vmlinux 0x90a1a71a ipv6_chk_addr +EXPORT_SYMBOL vmlinux 0x90c093a7 gnet_stats_start_copy_compat +EXPORT_SYMBOL vmlinux 0x90c13a35 __cgroup_bpf_run_filter_sock_addr +EXPORT_SYMBOL vmlinux 0x90f13d1a get_cached_acl +EXPORT_SYMBOL vmlinux 0x90f7423a crypto_sha256_finup +EXPORT_SYMBOL vmlinux 0x9114dd5f vmap +EXPORT_SYMBOL vmlinux 0x91180e26 max8998_read_reg +EXPORT_SYMBOL vmlinux 0x91206e8c seq_read_iter +EXPORT_SYMBOL vmlinux 0x912c5ff2 pnp_register_card_driver +EXPORT_SYMBOL vmlinux 0x913c454f nf_log_set +EXPORT_SYMBOL vmlinux 0x91607d95 set_memory_wb +EXPORT_SYMBOL vmlinux 0x9166fada strncpy +EXPORT_SYMBOL vmlinux 0x9176145b acpi_install_global_event_handler +EXPORT_SYMBOL vmlinux 0x917a3a67 put_devmap_managed_page +EXPORT_SYMBOL vmlinux 0x918ea464 flow_rule_match_icmp +EXPORT_SYMBOL vmlinux 0x919c58f3 __clzsi2 +EXPORT_SYMBOL vmlinux 0x91a10c61 intel_scu_ipc_dev_simple_command +EXPORT_SYMBOL vmlinux 0x91a7b1da qdisc_class_hash_remove +EXPORT_SYMBOL vmlinux 0x91ac4648 input_alloc_absinfo +EXPORT_SYMBOL vmlinux 0x91c1a2e1 phy_ethtool_ksettings_get +EXPORT_SYMBOL vmlinux 0x91e613ae scsi_mode_sense +EXPORT_SYMBOL vmlinux 0x91e9219c dquot_writeback_dquots +EXPORT_SYMBOL vmlinux 0x91eaefca set_anon_super_fc +EXPORT_SYMBOL vmlinux 0x91f44510 idr_alloc_cyclic +EXPORT_SYMBOL vmlinux 0x9201e87c netdev_txq_to_tc +EXPORT_SYMBOL vmlinux 0x92100df9 mipi_dsi_dcs_get_display_brightness +EXPORT_SYMBOL vmlinux 0x921e2658 udp_skb_destructor +EXPORT_SYMBOL vmlinux 0x9224326c amd_iommu_flush_page +EXPORT_SYMBOL vmlinux 0x922c631b mdiobus_read +EXPORT_SYMBOL vmlinux 0x922f45a6 __bitmap_clear +EXPORT_SYMBOL vmlinux 0x923b1276 dmaengine_get +EXPORT_SYMBOL vmlinux 0x92540fbf finish_wait +EXPORT_SYMBOL vmlinux 0x9258c776 hdmi_vendor_infoframe_pack_only +EXPORT_SYMBOL vmlinux 0x9263ca57 mipi_dsi_dcs_read +EXPORT_SYMBOL vmlinux 0x927438e3 iommu_get_msi_cookie +EXPORT_SYMBOL vmlinux 0x9274c615 devm_devfreq_unregister_notifier +EXPORT_SYMBOL vmlinux 0x927f987b agp_generic_type_to_mask_type +EXPORT_SYMBOL vmlinux 0x92830538 ip6mr_rule_default +EXPORT_SYMBOL vmlinux 0x92897c20 sock_common_setsockopt +EXPORT_SYMBOL vmlinux 0x92897e3d default_idle +EXPORT_SYMBOL vmlinux 0x9291cd3b memdup_user +EXPORT_SYMBOL vmlinux 0x929de7d4 mipi_dsi_dcs_set_column_address +EXPORT_SYMBOL vmlinux 0x92a51e56 acpi_debug_print_raw +EXPORT_SYMBOL vmlinux 0x92a96425 from_kgid +EXPORT_SYMBOL vmlinux 0x92b99a33 acpi_put_table +EXPORT_SYMBOL vmlinux 0x92b9b180 slash_name +EXPORT_SYMBOL vmlinux 0x92bb5598 unregister_netdevice_notifier_net +EXPORT_SYMBOL vmlinux 0x92c4a90e skb_realloc_headroom +EXPORT_SYMBOL vmlinux 0x92ec510d jiffies64_to_msecs +EXPORT_SYMBOL vmlinux 0x92fa5abb vme_lm_detach +EXPORT_SYMBOL vmlinux 0x92ff166a pci_scan_single_device +EXPORT_SYMBOL vmlinux 0x930035f3 dma_async_tx_descriptor_init +EXPORT_SYMBOL vmlinux 0x93022ba6 __scsi_format_command +EXPORT_SYMBOL vmlinux 0x93032031 inet_release +EXPORT_SYMBOL vmlinux 0x9305bf68 find_next_and_bit +EXPORT_SYMBOL vmlinux 0x9305f8e6 cpufreq_get +EXPORT_SYMBOL vmlinux 0x931782bb prepare_kernel_cred +EXPORT_SYMBOL vmlinux 0x932889f0 single_open_size +EXPORT_SYMBOL vmlinux 0x9355a029 udp_seq_start +EXPORT_SYMBOL vmlinux 0x935c4145 tcp_sock_set_keepintvl +EXPORT_SYMBOL vmlinux 0x93742389 dma_pool_create +EXPORT_SYMBOL vmlinux 0x937733e3 qid_valid +EXPORT_SYMBOL vmlinux 0x937f3ec5 simple_rmdir +EXPORT_SYMBOL vmlinux 0x9384f143 simple_release_fs +EXPORT_SYMBOL vmlinux 0x938560a1 dev_change_carrier +EXPORT_SYMBOL vmlinux 0x93a6e0b2 io_schedule +EXPORT_SYMBOL vmlinux 0x93b3fc74 register_dcbevent_notifier +EXPORT_SYMBOL vmlinux 0x93c1992f nla_put_nohdr +EXPORT_SYMBOL vmlinux 0x93d6dd8c complete_all +EXPORT_SYMBOL vmlinux 0x93db1f5b dev_uc_sync_multiple +EXPORT_SYMBOL vmlinux 0x94123146 xfrm_state_delete +EXPORT_SYMBOL vmlinux 0x9417804a drop_super +EXPORT_SYMBOL vmlinux 0x942025d6 __mmc_claim_host +EXPORT_SYMBOL vmlinux 0x9428f816 dim_turn +EXPORT_SYMBOL vmlinux 0x94294163 mmc_retune_timer_stop +EXPORT_SYMBOL vmlinux 0x942a86c8 rtnl_notify +EXPORT_SYMBOL vmlinux 0x943dc80f csum_and_copy_to_user +EXPORT_SYMBOL vmlinux 0x944375db _totalram_pages +EXPORT_SYMBOL vmlinux 0x94478195 genphy_read_status +EXPORT_SYMBOL vmlinux 0x944a564d is_console_locked +EXPORT_SYMBOL vmlinux 0x948e89b2 iov_iter_get_pages +EXPORT_SYMBOL vmlinux 0x94961283 vunmap +EXPORT_SYMBOL vmlinux 0x949a2abf dst_init +EXPORT_SYMBOL vmlinux 0x94bb7ec3 gen_pool_dma_zalloc_algo +EXPORT_SYMBOL vmlinux 0x94bf03ca utf8_to_utf32 +EXPORT_SYMBOL vmlinux 0x94c7303a neigh_event_ns +EXPORT_SYMBOL vmlinux 0x94e481cf ZSTD_adjustCParams +EXPORT_SYMBOL vmlinux 0x94eedc06 linkwatch_fire_event +EXPORT_SYMBOL vmlinux 0x94f51c65 xfrm_unregister_type_offload +EXPORT_SYMBOL vmlinux 0x94f5466d mmc_gpio_set_cd_isr +EXPORT_SYMBOL vmlinux 0x94f667ee napi_disable +EXPORT_SYMBOL vmlinux 0x9509c97a md_bitmap_startwrite +EXPORT_SYMBOL vmlinux 0x9510e21c kthread_blkcg +EXPORT_SYMBOL vmlinux 0x9517620d agp_put_bridge +EXPORT_SYMBOL vmlinux 0x951f85fa sock_recv_errqueue +EXPORT_SYMBOL vmlinux 0x952ae208 iw_handler_get_thrspy +EXPORT_SYMBOL vmlinux 0x95434535 gro_find_complete_by_type +EXPORT_SYMBOL vmlinux 0x9545af6d tasklet_init +EXPORT_SYMBOL vmlinux 0x954cef6f init_on_alloc +EXPORT_SYMBOL vmlinux 0x954f099c idr_preload +EXPORT_SYMBOL vmlinux 0x9567a773 dmaenginem_async_device_register +EXPORT_SYMBOL vmlinux 0x956b8ac9 loop_register_transfer +EXPORT_SYMBOL vmlinux 0x956c90f1 vfs_statx_fd +EXPORT_SYMBOL vmlinux 0x95a17522 md_unregister_thread +EXPORT_SYMBOL vmlinux 0x95a67b07 udp_table +EXPORT_SYMBOL vmlinux 0x95d202bc sk_dst_check +EXPORT_SYMBOL vmlinux 0x95fcd441 __nla_put_nohdr +EXPORT_SYMBOL vmlinux 0x96255800 register_mii_tstamp_controller +EXPORT_SYMBOL vmlinux 0x9625695d acpi_install_gpe_block +EXPORT_SYMBOL vmlinux 0x962c4977 clkdev_add +EXPORT_SYMBOL vmlinux 0x963dcba1 _raw_spin_trylock_bh +EXPORT_SYMBOL vmlinux 0x963f5953 phy_get_pause +EXPORT_SYMBOL vmlinux 0x9640ab10 sock_no_sendmsg_locked +EXPORT_SYMBOL vmlinux 0x964d3c24 vfio_unregister_notifier +EXPORT_SYMBOL vmlinux 0x96761d67 __udp_disconnect +EXPORT_SYMBOL vmlinux 0x96848186 scnprintf +EXPORT_SYMBOL vmlinux 0x96b29254 strncasecmp +EXPORT_SYMBOL vmlinux 0x96bcef54 dev_get_port_parent_id +EXPORT_SYMBOL vmlinux 0x96bdcec1 tso_count_descs +EXPORT_SYMBOL vmlinux 0x96c17136 fb_var_to_videomode +EXPORT_SYMBOL vmlinux 0x96c7ee75 udplite_prot +EXPORT_SYMBOL vmlinux 0x96cd2b04 scsi_sense_key_string +EXPORT_SYMBOL vmlinux 0x96d30c8c tcp_gro_complete +EXPORT_SYMBOL vmlinux 0x96d45a92 add_random_ready_callback +EXPORT_SYMBOL vmlinux 0x96e18208 __breadahead_gfp +EXPORT_SYMBOL vmlinux 0x96e55a40 generic_permission +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 0x971709e5 tcp_simple_retransmit +EXPORT_SYMBOL vmlinux 0x9717693b __ip4_datagram_connect +EXPORT_SYMBOL vmlinux 0x973fa82e register_acpi_notifier +EXPORT_SYMBOL vmlinux 0x9746eb89 ZSTD_decompressBegin_usingDict +EXPORT_SYMBOL vmlinux 0x97651e6c vmemmap_base +EXPORT_SYMBOL vmlinux 0x977a7917 skb_coalesce_rx_frag +EXPORT_SYMBOL vmlinux 0x977f511b __mutex_init +EXPORT_SYMBOL vmlinux 0x978cff1a d_hash_and_lookup +EXPORT_SYMBOL vmlinux 0x97934ecf del_timer_sync +EXPORT_SYMBOL vmlinux 0x97999817 rfkill_set_hw_state +EXPORT_SYMBOL vmlinux 0x979b695c udp_lib_getsockopt +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 0x97c0cf49 pci_ep_cfs_add_epc_group +EXPORT_SYMBOL vmlinux 0x97ca580a cfb_imageblit +EXPORT_SYMBOL vmlinux 0x97eaffa7 jbd2_journal_init_dev +EXPORT_SYMBOL vmlinux 0x97ef300b kill_fasync +EXPORT_SYMBOL vmlinux 0x97f7155b __frontswap_store +EXPORT_SYMBOL vmlinux 0x9806f1e1 scsi_eh_prep_cmnd +EXPORT_SYMBOL vmlinux 0x98274732 dm_put_device +EXPORT_SYMBOL vmlinux 0x98283201 tcp_sendpage +EXPORT_SYMBOL vmlinux 0x9829fc11 __kfifo_out_peek_r +EXPORT_SYMBOL vmlinux 0x98304d02 fs_param_is_path +EXPORT_SYMBOL vmlinux 0x9833409f nf_ct_attach +EXPORT_SYMBOL vmlinux 0x98376c05 ip_tunnel_header_ops +EXPORT_SYMBOL vmlinux 0x98880c73 ihold +EXPORT_SYMBOL vmlinux 0x9888296a skb_flow_dissect_meta +EXPORT_SYMBOL vmlinux 0x98900519 simple_transaction_release +EXPORT_SYMBOL vmlinux 0x98a6e3b6 tc_setup_cb_destroy +EXPORT_SYMBOL vmlinux 0x98a9e71c serio_reconnect +EXPORT_SYMBOL vmlinux 0x98b8b7a3 pci_release_regions +EXPORT_SYMBOL vmlinux 0x98c039dc dma_fence_wait_timeout +EXPORT_SYMBOL vmlinux 0x98c04516 simple_link +EXPORT_SYMBOL vmlinux 0x98c89ade security_xfrm_state_alloc +EXPORT_SYMBOL vmlinux 0x98ccd309 pfifo_qdisc_ops +EXPORT_SYMBOL vmlinux 0x98ce1782 tcf_block_get +EXPORT_SYMBOL vmlinux 0x98e508ef ignore_console_lock_warning +EXPORT_SYMBOL vmlinux 0x98e93be8 d_genocide +EXPORT_SYMBOL vmlinux 0x99066626 blk_mq_tagset_busy_iter +EXPORT_SYMBOL vmlinux 0x99078b39 trace_print_flags_seq +EXPORT_SYMBOL vmlinux 0x992493c0 __page_symlink +EXPORT_SYMBOL vmlinux 0x992e8372 devm_request_resource +EXPORT_SYMBOL vmlinux 0x9931d194 input_get_timestamp +EXPORT_SYMBOL vmlinux 0x9939eba0 backlight_unregister_notifier +EXPORT_SYMBOL vmlinux 0x99517682 udp_encap_enable +EXPORT_SYMBOL vmlinux 0x995dcc1a jbd2_journal_check_used_features +EXPORT_SYMBOL vmlinux 0x9975dc22 acpi_get_handle +EXPORT_SYMBOL vmlinux 0x99785d4e dev_open +EXPORT_SYMBOL vmlinux 0x99865e5c vmf_insert_pfn_prot +EXPORT_SYMBOL vmlinux 0x9993bc11 nf_unregister_sockopt +EXPORT_SYMBOL vmlinux 0x999e8297 vfree +EXPORT_SYMBOL vmlinux 0x999f9cf6 ip_mc_check_igmp +EXPORT_SYMBOL vmlinux 0x99a49346 tty_devnum +EXPORT_SYMBOL vmlinux 0x99b08884 netlink_unicast +EXPORT_SYMBOL vmlinux 0x99d472b1 net_dim_get_rx_moderation +EXPORT_SYMBOL vmlinux 0x99d65df1 efi +EXPORT_SYMBOL vmlinux 0x99daa9bf try_offline_node +EXPORT_SYMBOL vmlinux 0x99db2766 netif_receive_skb +EXPORT_SYMBOL vmlinux 0x99eb3872 __skb_checksum_complete_head +EXPORT_SYMBOL vmlinux 0x99f068d5 x86_cpu_to_node_map +EXPORT_SYMBOL vmlinux 0x99f212b0 rproc_elf_get_boot_addr +EXPORT_SYMBOL vmlinux 0x9a0c3a18 vme_unregister_error_handler +EXPORT_SYMBOL vmlinux 0x9a184390 ata_link_printk +EXPORT_SYMBOL vmlinux 0x9a19ec50 make_flow_keys_digest +EXPORT_SYMBOL vmlinux 0x9a1dfd65 strpbrk +EXPORT_SYMBOL vmlinux 0x9a22391e radix_tree_gang_lookup_tag_slot +EXPORT_SYMBOL vmlinux 0x9a2a7299 netif_set_xps_queue +EXPORT_SYMBOL vmlinux 0x9a2dc16e genphy_c37_read_status +EXPORT_SYMBOL vmlinux 0x9a42cfc1 blackhole_netdev +EXPORT_SYMBOL vmlinux 0x9a5274ed ip_cmsg_recv_offset +EXPORT_SYMBOL vmlinux 0x9a583306 netlbl_bitmap_walk +EXPORT_SYMBOL vmlinux 0x9a73b032 ZSTD_initDStream_usingDDict +EXPORT_SYMBOL vmlinux 0x9a7e51b3 mmc_can_secure_erase_trim +EXPORT_SYMBOL vmlinux 0x9a98def3 jbd2_journal_stop +EXPORT_SYMBOL vmlinux 0x9a991e0b _copy_from_iter_full +EXPORT_SYMBOL vmlinux 0x9aa284bb super_setup_bdi_name +EXPORT_SYMBOL vmlinux 0x9aa9106d bdgrab +EXPORT_SYMBOL vmlinux 0x9aab0ad0 devm_clk_release_clkdev +EXPORT_SYMBOL vmlinux 0x9aaeefce sysctl_nf_log_all_netns +EXPORT_SYMBOL vmlinux 0x9aaf9f10 rproc_da_to_va +EXPORT_SYMBOL vmlinux 0x9ac0012e inode_get_bytes +EXPORT_SYMBOL vmlinux 0x9ac2b481 phy_read_mmd +EXPORT_SYMBOL vmlinux 0x9ad227ce __set_page_dirty_buffers +EXPORT_SYMBOL vmlinux 0x9ad74d39 genphy_read_mmd_unsupported +EXPORT_SYMBOL vmlinux 0x9ad7a582 iosf_mbi_assert_punit_acquired +EXPORT_SYMBOL vmlinux 0x9ae6f526 fs_param_is_blob +EXPORT_SYMBOL vmlinux 0x9ae84c07 agp_create_memory +EXPORT_SYMBOL vmlinux 0x9b2560b9 gf128mul_init_4k_bbe +EXPORT_SYMBOL vmlinux 0x9b33e0d7 unregister_dcbevent_notifier +EXPORT_SYMBOL vmlinux 0x9b41b85c phy_detach +EXPORT_SYMBOL vmlinux 0x9b420478 utf8_strncasecmp +EXPORT_SYMBOL vmlinux 0x9b496b21 posix_acl_alloc +EXPORT_SYMBOL vmlinux 0x9b504f2b register_shrinker +EXPORT_SYMBOL vmlinux 0x9b67ea28 amd_iommu_enable_device_erratum +EXPORT_SYMBOL vmlinux 0x9b72478f acpi_unload_parent_table +EXPORT_SYMBOL vmlinux 0x9b858114 module_put +EXPORT_SYMBOL vmlinux 0x9b8bcc69 elevator_alloc +EXPORT_SYMBOL vmlinux 0x9b96e223 locks_free_lock +EXPORT_SYMBOL vmlinux 0x9b9d4676 iov_iter_get_pages_alloc +EXPORT_SYMBOL vmlinux 0x9bdad506 pci_back_from_sleep +EXPORT_SYMBOL vmlinux 0x9be865ec pnp_device_attach +EXPORT_SYMBOL vmlinux 0x9bf0516d fput +EXPORT_SYMBOL vmlinux 0x9bf4d8ef tcf_block_netif_keep_dst +EXPORT_SYMBOL vmlinux 0x9c092549 shrink_dcache_parent +EXPORT_SYMBOL vmlinux 0x9c1105e5 nvm_alloc_dev +EXPORT_SYMBOL vmlinux 0x9c122bcf mempool_create_node +EXPORT_SYMBOL vmlinux 0x9c2622e0 mr_vif_seq_next +EXPORT_SYMBOL vmlinux 0x9c4d4338 kernel_bind +EXPORT_SYMBOL vmlinux 0x9c7ffe65 get_tree_single_reconf +EXPORT_SYMBOL vmlinux 0x9c80ff6f rawv6_mh_filter_register +EXPORT_SYMBOL vmlinux 0x9c942adc vprintk_emit +EXPORT_SYMBOL vmlinux 0x9cab34a6 rfkill_set_led_trigger_name +EXPORT_SYMBOL vmlinux 0x9cb986f2 vmalloc_base +EXPORT_SYMBOL vmlinux 0x9cc9de06 input_set_keycode +EXPORT_SYMBOL vmlinux 0x9ccc0bea mdio_device_register +EXPORT_SYMBOL vmlinux 0x9ccf7171 vme_dma_pci_attribute +EXPORT_SYMBOL vmlinux 0x9cd1f58f path_put +EXPORT_SYMBOL vmlinux 0x9cd91791 register_sysctl +EXPORT_SYMBOL vmlinux 0x9cdfb3f7 sysctl_fb_tunnels_only_for_init_net +EXPORT_SYMBOL vmlinux 0x9d099a39 acpi_remove_gpe_handler +EXPORT_SYMBOL vmlinux 0x9d0c4477 xsk_umem_uses_need_wakeup +EXPORT_SYMBOL vmlinux 0x9d0d6206 unregister_netdevice_notifier +EXPORT_SYMBOL vmlinux 0x9d116066 param_ops_short +EXPORT_SYMBOL vmlinux 0x9d2a02d3 udp_pre_connect +EXPORT_SYMBOL vmlinux 0x9d2e7707 unregister_sysrq_key +EXPORT_SYMBOL vmlinux 0x9d51fa70 migrate_vma_setup +EXPORT_SYMBOL vmlinux 0x9d5b3c08 md_bitmap_free +EXPORT_SYMBOL vmlinux 0x9d61e994 ucs2_strncmp +EXPORT_SYMBOL vmlinux 0x9d70541a native_save_fl +EXPORT_SYMBOL vmlinux 0x9d7b3f4b vme_dma_request +EXPORT_SYMBOL vmlinux 0x9d855703 ps2_handle_response +EXPORT_SYMBOL vmlinux 0x9d92f3ad __wait_on_bit_lock +EXPORT_SYMBOL vmlinux 0x9d97ab2c audit_log_object_context +EXPORT_SYMBOL vmlinux 0x9dc3cb2c rproc_get_by_phandle +EXPORT_SYMBOL vmlinux 0x9dc79468 sk_filter_trim_cap +EXPORT_SYMBOL vmlinux 0x9de7765d module_layout +EXPORT_SYMBOL vmlinux 0x9defcc91 md_write_start +EXPORT_SYMBOL vmlinux 0x9e04346e follow_down_one +EXPORT_SYMBOL vmlinux 0x9e054b89 mntput +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 0x9e3afd8a mfd_cell_enable +EXPORT_SYMBOL vmlinux 0x9e4faeef dm_io_client_destroy +EXPORT_SYMBOL vmlinux 0x9e61bb05 set_freezable +EXPORT_SYMBOL vmlinux 0x9e64fbfe rtc_cmos_read +EXPORT_SYMBOL vmlinux 0x9e683f75 __cpu_possible_mask +EXPORT_SYMBOL vmlinux 0x9e69713c netdev_lower_get_next +EXPORT_SYMBOL vmlinux 0x9e755462 pci_bus_find_capability +EXPORT_SYMBOL vmlinux 0x9e7d6bd0 __udelay +EXPORT_SYMBOL vmlinux 0x9e825189 backlight_device_get_by_type +EXPORT_SYMBOL vmlinux 0x9e87fc49 blk_mq_tagset_wait_completed_request +EXPORT_SYMBOL vmlinux 0x9e978ccc pcie_get_readrq +EXPORT_SYMBOL vmlinux 0x9e9d55e4 rtnl_create_link +EXPORT_SYMBOL vmlinux 0x9e9eab95 devcgroup_check_permission +EXPORT_SYMBOL vmlinux 0x9e9fdd9d memunmap +EXPORT_SYMBOL vmlinux 0x9ea53d7f vsnprintf +EXPORT_SYMBOL vmlinux 0x9ea54c32 kill_block_super +EXPORT_SYMBOL vmlinux 0x9ea7500f PDE_DATA +EXPORT_SYMBOL vmlinux 0x9eab8d85 _raw_write_lock_irq +EXPORT_SYMBOL vmlinux 0x9eacf8a5 kstrndup +EXPORT_SYMBOL vmlinux 0x9ec0e639 twl6030_interrupt_unmask +EXPORT_SYMBOL vmlinux 0x9ec37525 get_tree_single +EXPORT_SYMBOL vmlinux 0x9ec6ca29 md_reap_sync_thread +EXPORT_SYMBOL vmlinux 0x9ec6ca96 ktime_get_real_ts64 +EXPORT_SYMBOL vmlinux 0x9ed978de vme_lm_set +EXPORT_SYMBOL vmlinux 0x9edf6b07 vfs_get_fsid +EXPORT_SYMBOL vmlinux 0x9ee8f007 kernel_sendpage +EXPORT_SYMBOL vmlinux 0x9eee3a4e is_nd_dax +EXPORT_SYMBOL vmlinux 0x9f25f45a init_pseudo +EXPORT_SYMBOL vmlinux 0x9f46ced8 __sw_hweight64 +EXPORT_SYMBOL vmlinux 0x9f4f2aa3 acpi_gbl_FADT +EXPORT_SYMBOL vmlinux 0x9f4fa88b zerocopy_sg_from_iter +EXPORT_SYMBOL vmlinux 0x9f50b770 keyring_restrict +EXPORT_SYMBOL vmlinux 0x9f52bf91 scsi_report_device_reset +EXPORT_SYMBOL vmlinux 0x9f54e77b blk_mq_start_request +EXPORT_SYMBOL vmlinux 0x9f54ead7 gro_cells_destroy +EXPORT_SYMBOL vmlinux 0x9f584010 vif_device_init +EXPORT_SYMBOL vmlinux 0x9f65c857 ZSTD_checkCParams +EXPORT_SYMBOL vmlinux 0x9f88d53e neigh_app_ns +EXPORT_SYMBOL vmlinux 0x9f929ffb filemap_page_mkwrite +EXPORT_SYMBOL vmlinux 0x9f984513 strrchr +EXPORT_SYMBOL vmlinux 0x9f9ac975 blk_mq_init_allocated_queue +EXPORT_SYMBOL vmlinux 0x9fa7184a cancel_delayed_work_sync +EXPORT_SYMBOL vmlinux 0x9fb00b51 gro_cells_init +EXPORT_SYMBOL vmlinux 0x9fb1d0ed uuid_is_valid +EXPORT_SYMBOL vmlinux 0x9fb51381 xfrm_unregister_km +EXPORT_SYMBOL vmlinux 0x9fdecc31 unregister_netdevice_many +EXPORT_SYMBOL vmlinux 0x9feed7ce timer_reduce +EXPORT_SYMBOL vmlinux 0x9ffa3a75 netdev_max_backlog +EXPORT_SYMBOL vmlinux 0x9fff2856 sock_alloc_send_pskb +EXPORT_SYMBOL vmlinux 0xa00aca2a dql_completed +EXPORT_SYMBOL vmlinux 0xa01214d0 migrate_vma_pages +EXPORT_SYMBOL vmlinux 0xa01268d4 icmpv6_send +EXPORT_SYMBOL vmlinux 0xa02aa74a __cond_resched_lock +EXPORT_SYMBOL vmlinux 0xa03c59ec ptp_find_pin +EXPORT_SYMBOL vmlinux 0xa0436e98 in6addr_linklocal_allnodes +EXPORT_SYMBOL vmlinux 0xa04e9e7b freezing_slow_path +EXPORT_SYMBOL vmlinux 0xa057df8f twl_set_regcache_bypass +EXPORT_SYMBOL vmlinux 0xa06cc28a bio_reset +EXPORT_SYMBOL vmlinux 0xa07a37f0 memchr +EXPORT_SYMBOL vmlinux 0xa084749a __bitmap_or +EXPORT_SYMBOL vmlinux 0xa084f79f cpumask_next_wrap +EXPORT_SYMBOL vmlinux 0xa08ab53e acpi_pm_device_sleep_state +EXPORT_SYMBOL vmlinux 0xa08cecc1 dma_sync_wait +EXPORT_SYMBOL vmlinux 0xa092cdaf __skb_gro_checksum_complete +EXPORT_SYMBOL vmlinux 0xa095e02e generic_check_addressable +EXPORT_SYMBOL vmlinux 0xa09f1158 ndisc_mc_map +EXPORT_SYMBOL vmlinux 0xa0a00dcf xsk_set_tx_need_wakeup +EXPORT_SYMBOL vmlinux 0xa0ae1e73 siphash_3u64 +EXPORT_SYMBOL vmlinux 0xa0b04675 vmalloc_32 +EXPORT_SYMBOL vmlinux 0xa0be14c0 dev_mc_del_global +EXPORT_SYMBOL vmlinux 0xa0dad88e netdev_adjacent_get_private +EXPORT_SYMBOL vmlinux 0xa0e76fd4 tcp_peek_len +EXPORT_SYMBOL vmlinux 0xa0eae826 smp_call_function +EXPORT_SYMBOL vmlinux 0xa0ebd14c sysctl_tcp_mem +EXPORT_SYMBOL vmlinux 0xa0f587a7 fb_set_cmap +EXPORT_SYMBOL vmlinux 0xa0fbac79 wake_up_bit +EXPORT_SYMBOL vmlinux 0xa108eb4d sysctl_optmem_max +EXPORT_SYMBOL vmlinux 0xa1122145 configfs_unregister_group +EXPORT_SYMBOL vmlinux 0xa120d33c tty_unregister_ldisc +EXPORT_SYMBOL vmlinux 0xa12c512c phy_drivers_unregister +EXPORT_SYMBOL vmlinux 0xa133da54 xfrm6_rcv_tnl +EXPORT_SYMBOL vmlinux 0xa134506b pnp_device_detach +EXPORT_SYMBOL vmlinux 0xa13e780a gen_replace_estimator +EXPORT_SYMBOL vmlinux 0xa147d712 put_ipc_ns +EXPORT_SYMBOL vmlinux 0xa155c071 ZSTD_compressBegin_usingDict +EXPORT_SYMBOL vmlinux 0xa1645177 dm_io +EXPORT_SYMBOL vmlinux 0xa16c8613 _raw_read_unlock_irqrestore +EXPORT_SYMBOL vmlinux 0xa1899c95 bdi_alloc +EXPORT_SYMBOL vmlinux 0xa18b80f9 blk_mq_stop_hw_queues +EXPORT_SYMBOL vmlinux 0xa19157b2 dev_change_proto_down +EXPORT_SYMBOL vmlinux 0xa1ab0cb2 block_commit_write +EXPORT_SYMBOL vmlinux 0xa1b46179 kernel_listen +EXPORT_SYMBOL vmlinux 0xa1b83bd9 __ethtool_get_link_ksettings +EXPORT_SYMBOL vmlinux 0xa1bedd72 amd_iommu_pc_get_max_counters +EXPORT_SYMBOL vmlinux 0xa1c76e0a _cond_resched +EXPORT_SYMBOL vmlinux 0xa1d13987 xfrm_sad_getinfo +EXPORT_SYMBOL vmlinux 0xa1d62c54 jbd2_journal_get_write_access +EXPORT_SYMBOL vmlinux 0xa1f61432 set_security_override +EXPORT_SYMBOL vmlinux 0xa1f9a134 __x86_indirect_thunk_rsi +EXPORT_SYMBOL vmlinux 0xa1fbbc28 pci_read_config_byte +EXPORT_SYMBOL vmlinux 0xa2060911 inet_current_timestamp +EXPORT_SYMBOL vmlinux 0xa2188228 ip_generic_getfrag +EXPORT_SYMBOL vmlinux 0xa22fc689 vga_switcheroo_client_probe_defer +EXPORT_SYMBOL vmlinux 0xa2326c49 acpi_remove_table_handler +EXPORT_SYMBOL vmlinux 0xa23bceaf __inet_hash +EXPORT_SYMBOL vmlinux 0xa24dc340 bpf_prog_get_type_path +EXPORT_SYMBOL vmlinux 0xa24f23d8 __request_module +EXPORT_SYMBOL vmlinux 0xa255f0c2 xfrm_lookup_with_ifid +EXPORT_SYMBOL vmlinux 0xa25b4105 filemap_fdatawait_range +EXPORT_SYMBOL vmlinux 0xa25b90ab utf8byte +EXPORT_SYMBOL vmlinux 0xa263892b fscrypt_fname_free_buffer +EXPORT_SYMBOL vmlinux 0xa28cfcc0 gen_estimator_active +EXPORT_SYMBOL vmlinux 0xa28d81bd pci_read_vpd +EXPORT_SYMBOL vmlinux 0xa2be0c8d nf_unregister_queue_handler +EXPORT_SYMBOL vmlinux 0xa2e06dac md_handle_request +EXPORT_SYMBOL vmlinux 0xa30290ee pcim_iomap_table +EXPORT_SYMBOL vmlinux 0xa30bcd6b config_group_init +EXPORT_SYMBOL vmlinux 0xa31def3c skb_flow_dissect_ct +EXPORT_SYMBOL vmlinux 0xa32b2032 configfs_register_subsystem +EXPORT_SYMBOL vmlinux 0xa32cbeba ww_mutex_unlock +EXPORT_SYMBOL vmlinux 0xa342b0cf block_write_end +EXPORT_SYMBOL vmlinux 0xa3479941 padata_start +EXPORT_SYMBOL vmlinux 0xa37d79fe xfrm_input_unregister_afinfo +EXPORT_SYMBOL vmlinux 0xa38e40ca md_done_sync +EXPORT_SYMBOL vmlinux 0xa38f21b9 amd_iommu_update_ga +EXPORT_SYMBOL vmlinux 0xa3a47ab1 file_path +EXPORT_SYMBOL vmlinux 0xa3a9f24c register_key_type +EXPORT_SYMBOL vmlinux 0xa3afe162 blkdev_issue_flush +EXPORT_SYMBOL vmlinux 0xa3c24685 dev_uc_del +EXPORT_SYMBOL vmlinux 0xa3e4f871 acpi_initialize_debugger +EXPORT_SYMBOL vmlinux 0xa3ec978e seq_vprintf +EXPORT_SYMBOL vmlinux 0xa3f1a3a3 blk_integrity_unregister +EXPORT_SYMBOL vmlinux 0xa3fea172 sha224_final +EXPORT_SYMBOL vmlinux 0xa40ff01b acpi_dbg_layer +EXPORT_SYMBOL vmlinux 0xa4191c0b memset_io +EXPORT_SYMBOL vmlinux 0xa41c31fe netpoll_poll_disable +EXPORT_SYMBOL vmlinux 0xa42669d9 sock_wfree +EXPORT_SYMBOL vmlinux 0xa4332d1d key_task_permission +EXPORT_SYMBOL vmlinux 0xa43a0e42 ps2_cmd_aborted +EXPORT_SYMBOL vmlinux 0xa4422a1e tty_insert_flip_string_flags +EXPORT_SYMBOL vmlinux 0xa46a2155 phy_validate_pause +EXPORT_SYMBOL vmlinux 0xa48278f2 send_sig_mceerr +EXPORT_SYMBOL vmlinux 0xa4871a51 blk_mq_delay_kick_requeue_list +EXPORT_SYMBOL vmlinux 0xa48f1db2 balance_dirty_pages_ratelimited +EXPORT_SYMBOL vmlinux 0xa49c3ad0 skb_try_coalesce +EXPORT_SYMBOL vmlinux 0xa49e7acb tcp_sock_set_user_timeout +EXPORT_SYMBOL vmlinux 0xa49ee4ff tcp_seq_next +EXPORT_SYMBOL vmlinux 0xa4b94fea iowrite8_rep +EXPORT_SYMBOL vmlinux 0xa4be40d2 unregister_md_personality +EXPORT_SYMBOL vmlinux 0xa4c4eaef genphy_setup_forced +EXPORT_SYMBOL vmlinux 0xa4c8127c ZSTD_maxCLevel +EXPORT_SYMBOL vmlinux 0xa4cc97df do_clone_file_range +EXPORT_SYMBOL vmlinux 0xa4d4f0e6 global_cache_flush +EXPORT_SYMBOL vmlinux 0xa4f970ed blk_mq_start_stopped_hw_queues +EXPORT_SYMBOL vmlinux 0xa4faf62a acpi_disable_gpe +EXPORT_SYMBOL vmlinux 0xa5056338 __hsiphash_aligned +EXPORT_SYMBOL vmlinux 0xa507125e acpi_clear_gpe +EXPORT_SYMBOL vmlinux 0xa50bcff0 x86_cpu_to_apicid +EXPORT_SYMBOL vmlinux 0xa52b8931 jbd2_journal_get_undo_access +EXPORT_SYMBOL vmlinux 0xa52bedf6 xenbus_dev_request_and_reply +EXPORT_SYMBOL vmlinux 0xa53e6a4a agp_generic_alloc_user +EXPORT_SYMBOL vmlinux 0xa5526619 rb_insert_color +EXPORT_SYMBOL vmlinux 0xa56105ec bdput +EXPORT_SYMBOL vmlinux 0xa572c9a3 noop_fsync +EXPORT_SYMBOL vmlinux 0xa5956abe ioread64_hi_lo +EXPORT_SYMBOL vmlinux 0xa5976e4f dev_base_lock +EXPORT_SYMBOL vmlinux 0xa59ba702 ipv4_specific +EXPORT_SYMBOL vmlinux 0xa5aaf06c consume_skb +EXPORT_SYMBOL vmlinux 0xa5ac3e33 ZSTD_DCtxWorkspaceBound +EXPORT_SYMBOL vmlinux 0xa5d91be5 translation_pre_enabled +EXPORT_SYMBOL vmlinux 0xa5e07469 blk_queue_chunk_sectors +EXPORT_SYMBOL vmlinux 0xa5e55057 rdmsrl_safe_on_cpu +EXPORT_SYMBOL vmlinux 0xa5e7183a drop_super_exclusive +EXPORT_SYMBOL vmlinux 0xa6073579 mmc_put_card +EXPORT_SYMBOL vmlinux 0xa61ced89 qdisc_put_rtab +EXPORT_SYMBOL vmlinux 0xa6257a2f complete +EXPORT_SYMBOL vmlinux 0xa6499b99 nf_hook_slow_list +EXPORT_SYMBOL vmlinux 0xa6642ed9 compat_ipv6_getsockopt +EXPORT_SYMBOL vmlinux 0xa669e634 __ip_options_compile +EXPORT_SYMBOL vmlinux 0xa672fb5e __neigh_set_probe_once +EXPORT_SYMBOL vmlinux 0xa681fe88 generate_random_uuid +EXPORT_SYMBOL vmlinux 0xa6841fb6 tun_ptr_to_xdp +EXPORT_SYMBOL vmlinux 0xa69b1e96 agp_collect_device_status +EXPORT_SYMBOL vmlinux 0xa6bf7e09 __pskb_pull_tail +EXPORT_SYMBOL vmlinux 0xa6c25600 iov_iter_fault_in_readable +EXPORT_SYMBOL vmlinux 0xa6e3d333 kernel_sendpage_locked +EXPORT_SYMBOL vmlinux 0xa6feaa62 nvm_submit_io +EXPORT_SYMBOL vmlinux 0xa70fabbe release_evntsel_nmi +EXPORT_SYMBOL vmlinux 0xa72a491f I_BDEV +EXPORT_SYMBOL vmlinux 0xa72cfb7d ioremap_wt +EXPORT_SYMBOL vmlinux 0xa748dba3 kmem_cache_destroy +EXPORT_SYMBOL vmlinux 0xa74c9877 refcount_dec_and_rtnl_lock +EXPORT_SYMBOL vmlinux 0xa75ae24b rproc_vq_interrupt +EXPORT_SYMBOL vmlinux 0xa76658a7 flow_rule_match_ports +EXPORT_SYMBOL vmlinux 0xa7755095 ip_fraglist_init +EXPORT_SYMBOL vmlinux 0xa778a5ca devm_memunmap +EXPORT_SYMBOL vmlinux 0xa77bfd29 register_inet6addr_validator_notifier +EXPORT_SYMBOL vmlinux 0xa7813502 generic_file_write_iter +EXPORT_SYMBOL vmlinux 0xa787b867 serio_bus +EXPORT_SYMBOL vmlinux 0xa78bb4fb skb_tx_error +EXPORT_SYMBOL vmlinux 0xa7c01546 no_seek_end_llseek_size +EXPORT_SYMBOL vmlinux 0xa7d5f92e ida_destroy +EXPORT_SYMBOL vmlinux 0xa7e38f12 flow_keys_basic_dissector +EXPORT_SYMBOL vmlinux 0xa7eedcc4 call_usermodehelper +EXPORT_SYMBOL vmlinux 0xa805ecfc acpi_release_global_lock +EXPORT_SYMBOL vmlinux 0xa80ab16a dcbnl_cee_notify +EXPORT_SYMBOL vmlinux 0xa8181adf proc_dointvec +EXPORT_SYMBOL vmlinux 0xa81d96cf pci_write_config_dword +EXPORT_SYMBOL vmlinux 0xa8306b78 scaled_ppm_to_ppb +EXPORT_SYMBOL vmlinux 0xa83281dc tcp_ioctl +EXPORT_SYMBOL vmlinux 0xa836ba02 wrmsr_safe_regs +EXPORT_SYMBOL vmlinux 0xa83dfd5f blk_queue_max_discard_sectors +EXPORT_SYMBOL vmlinux 0xa843805a get_unused_fd_flags +EXPORT_SYMBOL vmlinux 0xa84ce9e0 crypto_aes_inv_sbox +EXPORT_SYMBOL vmlinux 0xa8519a6a seq_pad +EXPORT_SYMBOL vmlinux 0xa853396b xa_extract +EXPORT_SYMBOL vmlinux 0xa85a3e6d xa_load +EXPORT_SYMBOL vmlinux 0xa85dcb90 inet_dgram_connect +EXPORT_SYMBOL vmlinux 0xa8694ecd kblockd_schedule_work +EXPORT_SYMBOL vmlinux 0xa88944d0 tso_build_data +EXPORT_SYMBOL vmlinux 0xa88c50ad acpi_bus_register_driver +EXPORT_SYMBOL vmlinux 0xa8955edc inet_rtx_syn_ack +EXPORT_SYMBOL vmlinux 0xa897e3e7 mempool_free +EXPORT_SYMBOL vmlinux 0xa8b918d6 tcp_sock_set_nodelay +EXPORT_SYMBOL vmlinux 0xa8c2bd91 get_user_pages_locked +EXPORT_SYMBOL vmlinux 0xa8caa845 clk_bulk_put_all +EXPORT_SYMBOL vmlinux 0xa8cad4a3 ptp_clock_event +EXPORT_SYMBOL vmlinux 0xa8d326bb unregister_nexthop_notifier +EXPORT_SYMBOL vmlinux 0xa8db0213 pm860x_bulk_read +EXPORT_SYMBOL vmlinux 0xa8e1b14b netif_rx_ni +EXPORT_SYMBOL vmlinux 0xa8e583ca pci_bus_set_ops +EXPORT_SYMBOL vmlinux 0xa8e6933a qdf2400_e44_present +EXPORT_SYMBOL vmlinux 0xa8f6c843 ip_frag_ecn_table +EXPORT_SYMBOL vmlinux 0xa90a767e __dev_get_by_name +EXPORT_SYMBOL vmlinux 0xa90ca0de flush_rcu_work +EXPORT_SYMBOL vmlinux 0xa90d9685 thermal_zone_device_critical +EXPORT_SYMBOL vmlinux 0xa916b694 strnlen +EXPORT_SYMBOL vmlinux 0xa917d2ea vga_put +EXPORT_SYMBOL vmlinux 0xa91d8043 dev_get_stats +EXPORT_SYMBOL vmlinux 0xa91e3a9e pci_iomap_range +EXPORT_SYMBOL vmlinux 0xa9293531 posix_lock_file +EXPORT_SYMBOL vmlinux 0xa92b8525 __cgroup_bpf_run_filter_skb +EXPORT_SYMBOL vmlinux 0xa92b97e5 discard_new_inode +EXPORT_SYMBOL vmlinux 0xa931af8a asm_load_gs_index +EXPORT_SYMBOL vmlinux 0xa934bc4b flow_get_u32_dst +EXPORT_SYMBOL vmlinux 0xa93505ed d_delete +EXPORT_SYMBOL vmlinux 0xa94a09bb mem_section +EXPORT_SYMBOL vmlinux 0xa953f3b4 pci_alloc_host_bridge +EXPORT_SYMBOL vmlinux 0xa9562b92 dma_free_attrs +EXPORT_SYMBOL vmlinux 0xa963a066 block_write_full_page +EXPORT_SYMBOL vmlinux 0xa965ca81 reciprocal_value +EXPORT_SYMBOL vmlinux 0xa97463c9 __siphash_aligned +EXPORT_SYMBOL vmlinux 0xa9785b49 cpu_core_map +EXPORT_SYMBOL vmlinux 0xa979656d mipi_dsi_dcs_set_tear_on +EXPORT_SYMBOL vmlinux 0xa99a349d bio_integrity_alloc +EXPORT_SYMBOL vmlinux 0xa99b39c2 prandom_bytes +EXPORT_SYMBOL vmlinux 0xa99f6c8f simple_setattr +EXPORT_SYMBOL vmlinux 0xa9a667c9 fscrypt_ioctl_set_policy +EXPORT_SYMBOL vmlinux 0xa9a8e17f arch_phys_wc_add +EXPORT_SYMBOL vmlinux 0xa9b030f2 tcf_idr_create_from_flags +EXPORT_SYMBOL vmlinux 0xa9c489c5 tcp_get_md5sig_pool +EXPORT_SYMBOL vmlinux 0xa9c72303 amd_iommu_pc_get_max_banks +EXPORT_SYMBOL vmlinux 0xa9df745b pci_assign_resource +EXPORT_SYMBOL vmlinux 0xa9f7e8e1 __break_lease +EXPORT_SYMBOL vmlinux 0xaa008425 pci_lost_interrupt +EXPORT_SYMBOL vmlinux 0xaa00fdc0 ec_transaction +EXPORT_SYMBOL vmlinux 0xaa1713dd ps2_begin_command +EXPORT_SYMBOL vmlinux 0xaa1df6ec __devm_request_region +EXPORT_SYMBOL vmlinux 0xaa341905 acpi_bios_exception +EXPORT_SYMBOL vmlinux 0xaa3c5fd9 scsi_get_device_flags_keyed +EXPORT_SYMBOL vmlinux 0xaa551855 fscrypt_get_encryption_info +EXPORT_SYMBOL vmlinux 0xaa69f5f3 udp_seq_next +EXPORT_SYMBOL vmlinux 0xaa6c975d udp_seq_stop +EXPORT_SYMBOL vmlinux 0xaa6f23ad rfkill_get_led_trigger_name +EXPORT_SYMBOL vmlinux 0xaa7ce029 sg_miter_skip +EXPORT_SYMBOL vmlinux 0xaa7effd6 nf_log_unset +EXPORT_SYMBOL vmlinux 0xaa865ffd pcie_print_link_status +EXPORT_SYMBOL vmlinux 0xaa8bf34a path_is_mountpoint +EXPORT_SYMBOL vmlinux 0xaa9ccd1f sock_no_connect +EXPORT_SYMBOL vmlinux 0xaaa4b9bc hchacha_block_generic +EXPORT_SYMBOL vmlinux 0xaab3ece7 device_add_disk_no_queue_reg +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 0xaae4cfdf md_bitmap_cond_end_sync +EXPORT_SYMBOL vmlinux 0xaae8ab0e acpi_bus_power_manageable +EXPORT_SYMBOL vmlinux 0xaafdc258 strcasecmp +EXPORT_SYMBOL vmlinux 0xaaffdc15 tc_setup_cb_add +EXPORT_SYMBOL vmlinux 0xab0fe901 devm_pci_remap_cfg_resource +EXPORT_SYMBOL vmlinux 0xab14ecd3 input_mt_sync_frame +EXPORT_SYMBOL vmlinux 0xab1e8940 agp_alloc_bridge +EXPORT_SYMBOL vmlinux 0xab2ba143 sk_common_release +EXPORT_SYMBOL vmlinux 0xab3697e4 irq_poll_init +EXPORT_SYMBOL vmlinux 0xab3b75ea vme_dma_pattern_attribute +EXPORT_SYMBOL vmlinux 0xab472982 fb_set_var +EXPORT_SYMBOL vmlinux 0xab4e76fb mipi_dsi_shutdown_peripheral +EXPORT_SYMBOL vmlinux 0xab5e130b uart_remove_one_port +EXPORT_SYMBOL vmlinux 0xab600421 probe_irq_off +EXPORT_SYMBOL vmlinux 0xab63baa5 unregister_inetaddr_validator_notifier +EXPORT_SYMBOL vmlinux 0xab65ed80 set_memory_uc +EXPORT_SYMBOL vmlinux 0xab67a0ac dql_init +EXPORT_SYMBOL vmlinux 0xab735372 ipmi_dmi_get_slave_addr +EXPORT_SYMBOL vmlinux 0xab781570 fb_get_options +EXPORT_SYMBOL vmlinux 0xab7b32bd pci_resize_resource +EXPORT_SYMBOL vmlinux 0xab7b8e68 __x86_retpoline_rbx +EXPORT_SYMBOL vmlinux 0xaba3bde2 inet_frag_find +EXPORT_SYMBOL vmlinux 0xaba81805 xps_rxqs_needed +EXPORT_SYMBOL vmlinux 0xabac8b0c eisa_driver_register +EXPORT_SYMBOL vmlinux 0xabcf2d31 tcp_md5_do_add +EXPORT_SYMBOL vmlinux 0xabda0460 tcp_make_synack +EXPORT_SYMBOL vmlinux 0xabf224b6 serial8250_set_isa_configurator +EXPORT_SYMBOL vmlinux 0xabf32f29 utf16s_to_utf8s +EXPORT_SYMBOL vmlinux 0xac05504d phy_ethtool_nway_reset +EXPORT_SYMBOL vmlinux 0xac0a2a17 d_alloc_parallel +EXPORT_SYMBOL vmlinux 0xac1a55be unregister_reboot_notifier +EXPORT_SYMBOL vmlinux 0xac209201 pci_wait_for_pending_transaction +EXPORT_SYMBOL vmlinux 0xac2ba3f4 security_sctp_assoc_request +EXPORT_SYMBOL vmlinux 0xac3201b0 udp_flow_hashrnd +EXPORT_SYMBOL vmlinux 0xac43ba8c dev_mc_add_excl +EXPORT_SYMBOL vmlinux 0xac4f34dc __getblk_gfp +EXPORT_SYMBOL vmlinux 0xac537ac2 percpu_counter_destroy +EXPORT_SYMBOL vmlinux 0xac55fd01 netdev_notify_peers +EXPORT_SYMBOL vmlinux 0xac5d348b tcp_v4_conn_request +EXPORT_SYMBOL vmlinux 0xac5fcec0 in4_pton +EXPORT_SYMBOL vmlinux 0xac7a3e1b nd_device_unregister +EXPORT_SYMBOL vmlinux 0xac8597d5 mb_cache_entry_get +EXPORT_SYMBOL vmlinux 0xac94e86b vsprintf +EXPORT_SYMBOL vmlinux 0xacaa4c72 dma_fence_match_context +EXPORT_SYMBOL vmlinux 0xacab29b7 seq_hlist_start_percpu +EXPORT_SYMBOL vmlinux 0xacc28e6d tcp_close +EXPORT_SYMBOL vmlinux 0xacd81eb3 jbd2_inode_cache +EXPORT_SYMBOL vmlinux 0xacea8173 acpi_debug_print +EXPORT_SYMBOL vmlinux 0xacf4d843 match_strdup +EXPORT_SYMBOL vmlinux 0xacf649bf audit_log_task_info +EXPORT_SYMBOL vmlinux 0xad0413d4 match_hex +EXPORT_SYMBOL vmlinux 0xad0fa2b1 netdev_printk +EXPORT_SYMBOL vmlinux 0xad1036a2 amd_iommu_activate_guest_mode +EXPORT_SYMBOL vmlinux 0xad2951a9 ex_handler_rdmsr_unsafe +EXPORT_SYMBOL vmlinux 0xad4300af rtc_add_groups +EXPORT_SYMBOL vmlinux 0xad536c91 x86_cpu_to_acpiid +EXPORT_SYMBOL vmlinux 0xad6b534a ip_sock_set_recverr +EXPORT_SYMBOL vmlinux 0xad6ba40e radix_tree_tag_get +EXPORT_SYMBOL vmlinux 0xad73041f autoremove_wake_function +EXPORT_SYMBOL vmlinux 0xad757152 pmem_sector_size +EXPORT_SYMBOL vmlinux 0xad76b9e2 twl6040_get_sysclk +EXPORT_SYMBOL vmlinux 0xad772a5b netdev_set_num_tc +EXPORT_SYMBOL vmlinux 0xad7cd475 __close_fd +EXPORT_SYMBOL vmlinux 0xad84bef8 dm_table_event +EXPORT_SYMBOL vmlinux 0xad9901ae bit_waitqueue +EXPORT_SYMBOL vmlinux 0xad995dac netdev_stats_to_stats64 +EXPORT_SYMBOL vmlinux 0xada15b06 file_modified +EXPORT_SYMBOL vmlinux 0xada31e57 gen_pool_dma_alloc_align +EXPORT_SYMBOL vmlinux 0xada543ba agp_generic_mask_memory +EXPORT_SYMBOL vmlinux 0xada70e93 xp_dma_sync_for_device_slow +EXPORT_SYMBOL vmlinux 0xadbeed61 mipi_dsi_packet_format_is_long +EXPORT_SYMBOL vmlinux 0xadc044b7 vfio_set_irqs_validate_and_prepare +EXPORT_SYMBOL vmlinux 0xadcba50b ZSTD_findFrameCompressedSize +EXPORT_SYMBOL vmlinux 0xadcd3198 seq_release_private +EXPORT_SYMBOL vmlinux 0xadd139d4 rfs_needed +EXPORT_SYMBOL vmlinux 0xaddd2a43 vm_mmap +EXPORT_SYMBOL vmlinux 0xadec53f8 __block_write_full_page +EXPORT_SYMBOL vmlinux 0xadfdfcef __bitmap_andnot +EXPORT_SYMBOL vmlinux 0xae04012c __vmalloc +EXPORT_SYMBOL vmlinux 0xae0fd003 acpi_device_set_power +EXPORT_SYMBOL vmlinux 0xae1587b1 tcp_release_cb +EXPORT_SYMBOL vmlinux 0xae163e58 fddi_type_trans +EXPORT_SYMBOL vmlinux 0xae276986 ip_sock_set_freebind +EXPORT_SYMBOL vmlinux 0xae316c11 icmpv6_err_convert +EXPORT_SYMBOL vmlinux 0xae37a70d page_cache_prev_miss +EXPORT_SYMBOL vmlinux 0xae5654fa xfrm_dst_ifdown +EXPORT_SYMBOL vmlinux 0xae5a04bb acpi_evaluate_dsm +EXPORT_SYMBOL vmlinux 0xae7e3a35 mutex_trylock_recursive +EXPORT_SYMBOL vmlinux 0xae978de5 tty_lock +EXPORT_SYMBOL vmlinux 0xaeac049a generate_random_guid +EXPORT_SYMBOL vmlinux 0xaeba72a5 kobject_get +EXPORT_SYMBOL vmlinux 0xaebae362 skb_add_rx_frag +EXPORT_SYMBOL vmlinux 0xaebd12f0 acpi_get_name +EXPORT_SYMBOL vmlinux 0xaec60722 abort_creds +EXPORT_SYMBOL vmlinux 0xaee79078 d_add +EXPORT_SYMBOL vmlinux 0xaf0a8c14 tcp_v4_send_check +EXPORT_SYMBOL vmlinux 0xaf0d06d8 nd_dax_probe +EXPORT_SYMBOL vmlinux 0xaf354bbe cpu_tss_rw +EXPORT_SYMBOL vmlinux 0xaf3ac891 pci_bus_read_config_word +EXPORT_SYMBOL vmlinux 0xaf3dd7dc scsi_logging_level +EXPORT_SYMBOL vmlinux 0xaf81ba4c gro_cells_receive +EXPORT_SYMBOL vmlinux 0xaf9750c6 agp_generic_enable +EXPORT_SYMBOL vmlinux 0xaf9c744a pcie_get_width_cap +EXPORT_SYMBOL vmlinux 0xafb8c6ff copy_user_generic_string +EXPORT_SYMBOL vmlinux 0xafbab5b9 ip_sock_set_pktinfo +EXPORT_SYMBOL vmlinux 0xafd5ff2c amd_iommu_v2_supported +EXPORT_SYMBOL vmlinux 0xafe8ec9b clkdev_hw_alloc +EXPORT_SYMBOL vmlinux 0xaff53808 tty_unregister_driver +EXPORT_SYMBOL vmlinux 0xaff56dcd ip_frag_init +EXPORT_SYMBOL vmlinux 0xaff93a02 cros_ec_get_next_event +EXPORT_SYMBOL vmlinux 0xaff9d237 bdget_disk +EXPORT_SYMBOL vmlinux 0xb01bebf9 xfrm_get_acqseq +EXPORT_SYMBOL vmlinux 0xb0207886 dentry_open +EXPORT_SYMBOL vmlinux 0xb0577993 dev_set_mac_address +EXPORT_SYMBOL vmlinux 0xb059e192 generic_fillattr +EXPORT_SYMBOL vmlinux 0xb05fc310 sysctl_rmem_max +EXPORT_SYMBOL vmlinux 0xb06010e3 mmc_flush_cache +EXPORT_SYMBOL vmlinux 0xb061a98a mutex_lock_killable +EXPORT_SYMBOL vmlinux 0xb0a0da0c rational_best_approximation +EXPORT_SYMBOL vmlinux 0xb0aed408 ZSTD_compressStream +EXPORT_SYMBOL vmlinux 0xb0b48cb5 nf_log_bind_pf +EXPORT_SYMBOL vmlinux 0xb0b751cc pskb_expand_head +EXPORT_SYMBOL vmlinux 0xb0c5e247 lockref_put_return +EXPORT_SYMBOL vmlinux 0xb0d9a8a7 input_event +EXPORT_SYMBOL vmlinux 0xb0e10781 get_option +EXPORT_SYMBOL vmlinux 0xb0e602eb memmove +EXPORT_SYMBOL vmlinux 0xb0f389ee utf8_normalize +EXPORT_SYMBOL vmlinux 0xb0fa92c3 start_tty +EXPORT_SYMBOL vmlinux 0xb10e7df4 __kfifo_dma_in_prepare +EXPORT_SYMBOL vmlinux 0xb121390a probe_irq_on +EXPORT_SYMBOL vmlinux 0xb12cbacb fb_unregister_client +EXPORT_SYMBOL vmlinux 0xb14a2d5f dev_trans_start +EXPORT_SYMBOL vmlinux 0xb14a8462 mmc_gpiod_request_cd_irq +EXPORT_SYMBOL vmlinux 0xb14ab1ef hdmi_audio_infoframe_init +EXPORT_SYMBOL vmlinux 0xb14fc46a find_next_clump8 +EXPORT_SYMBOL vmlinux 0xb1533b78 tty_port_init +EXPORT_SYMBOL vmlinux 0xb15a7591 devm_extcon_register_notifier_all +EXPORT_SYMBOL vmlinux 0xb16900ad cmdline_parts_parse +EXPORT_SYMBOL vmlinux 0xb17ebcd6 i2c_smbus_write_byte_data +EXPORT_SYMBOL vmlinux 0xb1944fff input_mt_init_slots +EXPORT_SYMBOL vmlinux 0xb19727ad dquot_destroy +EXPORT_SYMBOL vmlinux 0xb19a5453 __per_cpu_offset +EXPORT_SYMBOL vmlinux 0xb19c2607 neigh_update +EXPORT_SYMBOL vmlinux 0xb1a5ab8c on_each_cpu_cond +EXPORT_SYMBOL vmlinux 0xb1c3a01a oops_in_progress +EXPORT_SYMBOL vmlinux 0xb1cc34d5 sockfd_lookup +EXPORT_SYMBOL vmlinux 0xb1d49dd1 arch_debugfs_dir +EXPORT_SYMBOL vmlinux 0xb1ddf995 jiffies_64_to_clock_t +EXPORT_SYMBOL vmlinux 0xb1e12d81 krealloc +EXPORT_SYMBOL vmlinux 0xb203b67a update_region +EXPORT_SYMBOL vmlinux 0xb2053831 sock_wake_async +EXPORT_SYMBOL vmlinux 0xb206ed6b proc_create_seq_private +EXPORT_SYMBOL vmlinux 0xb219d56c wbinvd_on_cpu +EXPORT_SYMBOL vmlinux 0xb22a6ba7 eth_header_cache +EXPORT_SYMBOL vmlinux 0xb22e16d5 radix_tree_maybe_preload +EXPORT_SYMBOL vmlinux 0xb233dccd send_sig_info +EXPORT_SYMBOL vmlinux 0xb27e3415 pci_read_config_word +EXPORT_SYMBOL vmlinux 0xb2b4311b __dev_get_by_index +EXPORT_SYMBOL vmlinux 0xb2bcb088 acpi_current_gpe_count +EXPORT_SYMBOL vmlinux 0xb2c7c406 xfrm_policy_insert +EXPORT_SYMBOL vmlinux 0xb2dd590a rps_may_expire_flow +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 0xb2fff75b ip_options_rcv_srr +EXPORT_SYMBOL vmlinux 0xb308c97d wait_woken +EXPORT_SYMBOL vmlinux 0xb30b6f67 sock_no_bind +EXPORT_SYMBOL vmlinux 0xb30b9822 vme_master_set +EXPORT_SYMBOL vmlinux 0xb3131aba cros_ec_prepare_tx +EXPORT_SYMBOL vmlinux 0xb31404c3 locks_copy_lock +EXPORT_SYMBOL vmlinux 0xb320cc0e sg_init_one +EXPORT_SYMBOL vmlinux 0xb328549d __nla_reserve_nohdr +EXPORT_SYMBOL vmlinux 0xb32a5973 acpi_ut_status_exit +EXPORT_SYMBOL vmlinux 0xb33317b5 put_cmsg +EXPORT_SYMBOL vmlinux 0xb352177e find_first_bit +EXPORT_SYMBOL vmlinux 0xb3635b01 _raw_spin_lock_bh +EXPORT_SYMBOL vmlinux 0xb36795e6 xfrm_policy_delete +EXPORT_SYMBOL vmlinux 0xb3687850 out_of_line_wait_on_bit_lock +EXPORT_SYMBOL vmlinux 0xb376e6b1 iterate_supers_type +EXPORT_SYMBOL vmlinux 0xb37e437d mdiobus_setup_mdiodev_from_board_info +EXPORT_SYMBOL vmlinux 0xb37edb4e param_set_uint +EXPORT_SYMBOL vmlinux 0xb3863a67 acpi_set_gpe_wake_mask +EXPORT_SYMBOL vmlinux 0xb38dbd93 backlight_device_set_brightness +EXPORT_SYMBOL vmlinux 0xb3923a56 vfs_mkobj +EXPORT_SYMBOL vmlinux 0xb3a2dfdf nmi_panic +EXPORT_SYMBOL vmlinux 0xb3b333c8 skb_copy_and_hash_datagram_iter +EXPORT_SYMBOL vmlinux 0xb3bcff33 mmc_start_request +EXPORT_SYMBOL vmlinux 0xb3bd68cc security_secmark_relabel_packet +EXPORT_SYMBOL vmlinux 0xb3c4681f nvdimm_bus_lock +EXPORT_SYMBOL vmlinux 0xb3c63274 security_binder_set_context_mgr +EXPORT_SYMBOL vmlinux 0xb3c8ba4f __skb_ext_del +EXPORT_SYMBOL vmlinux 0xb3d2c76d scsi_hostbyte_string +EXPORT_SYMBOL vmlinux 0xb3d4ffae sock_recvmsg +EXPORT_SYMBOL vmlinux 0xb3d8759b dma_get_sgtable_attrs +EXPORT_SYMBOL vmlinux 0xb3e3b5ba get_vm_area +EXPORT_SYMBOL vmlinux 0xb3f548ad kmemdup_nul +EXPORT_SYMBOL vmlinux 0xb3f7646e kthread_should_stop +EXPORT_SYMBOL vmlinux 0xb4043948 acpi_execute_simple_method +EXPORT_SYMBOL vmlinux 0xb417f082 kstrtos8_from_user +EXPORT_SYMBOL vmlinux 0xb423dba1 console_blanked +EXPORT_SYMBOL vmlinux 0xb43ccc86 sb_min_blocksize +EXPORT_SYMBOL vmlinux 0xb43f8ab8 mmc_erase_group_aligned +EXPORT_SYMBOL vmlinux 0xb44ad4b3 _copy_to_user +EXPORT_SYMBOL vmlinux 0xb44c58d4 alloc_fddidev +EXPORT_SYMBOL vmlinux 0xb44d23af blk_rq_append_bio +EXPORT_SYMBOL vmlinux 0xb4577003 acpi_dev_present +EXPORT_SYMBOL vmlinux 0xb45ac633 phy_attached_info +EXPORT_SYMBOL vmlinux 0xb4685b22 blkdev_issue_zeroout +EXPORT_SYMBOL vmlinux 0xb46a9e62 register_md_personality +EXPORT_SYMBOL vmlinux 0xb46d953a param_ops_bool +EXPORT_SYMBOL vmlinux 0xb47cca30 csum_ipv6_magic +EXPORT_SYMBOL vmlinux 0xb483bb7d phy_advertise_supported +EXPORT_SYMBOL vmlinux 0xb48d4d22 security_sb_eat_lsm_opts +EXPORT_SYMBOL vmlinux 0xb4985beb ZSTD_resetCStream +EXPORT_SYMBOL vmlinux 0xb49c2af4 inode_insert5 +EXPORT_SYMBOL vmlinux 0xb49cb47b neigh_parms_alloc +EXPORT_SYMBOL vmlinux 0xb4a4479a udp_sk_rx_dst_set +EXPORT_SYMBOL vmlinux 0xb4ae7275 vlan_dev_real_dev +EXPORT_SYMBOL vmlinux 0xb4b8f027 forget_all_cached_acls +EXPORT_SYMBOL vmlinux 0xb4ba5ff6 devm_extcon_unregister_notifier +EXPORT_SYMBOL vmlinux 0xb4c52b5f tcp_sock_set_cork +EXPORT_SYMBOL vmlinux 0xb4d5e115 xfrm_init_replay +EXPORT_SYMBOL vmlinux 0xb4e1e35a netpoll_send_udp +EXPORT_SYMBOL vmlinux 0xb4edb927 kmem_cache_alloc_bulk +EXPORT_SYMBOL vmlinux 0xb4f13d2a abort +EXPORT_SYMBOL vmlinux 0xb4fb8d0e mdiobus_read_nested +EXPORT_SYMBOL vmlinux 0xb50b55bc blk_get_queue +EXPORT_SYMBOL vmlinux 0xb511eae3 netif_device_detach +EXPORT_SYMBOL vmlinux 0xb51862f5 simple_recursive_removal +EXPORT_SYMBOL vmlinux 0xb51c0727 blk_set_runtime_active +EXPORT_SYMBOL vmlinux 0xb51dbe4e jbd2_journal_set_features +EXPORT_SYMBOL vmlinux 0xb52ee8be intel_gtt_clear_range +EXPORT_SYMBOL vmlinux 0xb53f2810 tcp_sockets_allocated +EXPORT_SYMBOL vmlinux 0xb54a7a09 __tty_insert_flip_char +EXPORT_SYMBOL vmlinux 0xb57343c2 frontswap_shrink +EXPORT_SYMBOL vmlinux 0xb57bb69e __vlan_find_dev_deep_rcu +EXPORT_SYMBOL vmlinux 0xb58aeaab kernel_cpustat +EXPORT_SYMBOL vmlinux 0xb5a30d04 skb_abort_seq_read +EXPORT_SYMBOL vmlinux 0xb5a459dc unregister_blkdev +EXPORT_SYMBOL vmlinux 0xb5a76aa5 fscrypt_ioctl_get_policy +EXPORT_SYMBOL vmlinux 0xb5aa7165 dma_pool_destroy +EXPORT_SYMBOL vmlinux 0xb5ab892d uv_undefined +EXPORT_SYMBOL vmlinux 0xb5b367fc inet6_del_protocol +EXPORT_SYMBOL vmlinux 0xb5b837d7 vfs_tmpfile +EXPORT_SYMBOL vmlinux 0xb5e1a53b configfs_unregister_subsystem +EXPORT_SYMBOL vmlinux 0xb5e73116 flush_delayed_work +EXPORT_SYMBOL vmlinux 0xb5e7737d sk_wait_data +EXPORT_SYMBOL vmlinux 0xb5f008a6 blk_post_runtime_resume +EXPORT_SYMBOL vmlinux 0xb5f17439 kmem_cache_alloc_trace +EXPORT_SYMBOL vmlinux 0xb601be4c __x86_indirect_thunk_rdx +EXPORT_SYMBOL vmlinux 0xb6084309 cdrom_ioctl +EXPORT_SYMBOL vmlinux 0xb6147d10 iov_iter_pipe +EXPORT_SYMBOL vmlinux 0xb633f115 irq_poll_enable +EXPORT_SYMBOL vmlinux 0xb654ef65 acpi_os_read_port +EXPORT_SYMBOL vmlinux 0xb674a534 acpi_unmap_cpu +EXPORT_SYMBOL vmlinux 0xb678057c udp_lib_get_port +EXPORT_SYMBOL vmlinux 0xb678366f int_sqrt +EXPORT_SYMBOL vmlinux 0xb67baae2 nla_reserve +EXPORT_SYMBOL vmlinux 0xb67c9280 utf8cursor +EXPORT_SYMBOL vmlinux 0xb67fec0e uuid_parse +EXPORT_SYMBOL vmlinux 0xb688a858 netdev_update_features +EXPORT_SYMBOL vmlinux 0xb6936ffe _bcd2bin +EXPORT_SYMBOL vmlinux 0xb6a68816 find_last_bit +EXPORT_SYMBOL vmlinux 0xb6aa6737 disk_start_io_acct +EXPORT_SYMBOL vmlinux 0xb6ab0abb pm860x_page_bulk_read +EXPORT_SYMBOL vmlinux 0xb6acaa13 phy_sfp_detach +EXPORT_SYMBOL vmlinux 0xb6e04648 icmpv6_ndo_send +EXPORT_SYMBOL vmlinux 0xb6e46901 write_one_page +EXPORT_SYMBOL vmlinux 0xb703acd7 pci_free_host_bridge +EXPORT_SYMBOL vmlinux 0xb729b528 pci_enable_msix_range +EXPORT_SYMBOL vmlinux 0xb72fec87 genphy_aneg_done +EXPORT_SYMBOL vmlinux 0xb7320372 tcp_sock_set_keepidle +EXPORT_SYMBOL vmlinux 0xb737b185 gen_pool_best_fit +EXPORT_SYMBOL vmlinux 0xb73c87c1 __cleancache_invalidate_fs +EXPORT_SYMBOL vmlinux 0xb75769c8 dev_queue_xmit_accel +EXPORT_SYMBOL vmlinux 0xb7593ddc iosf_mbi_unregister_pmic_bus_access_notifier +EXPORT_SYMBOL vmlinux 0xb77d3aa3 pci_request_regions_exclusive +EXPORT_SYMBOL vmlinux 0xb78debe3 LZ4_decompress_fast_usingDict +EXPORT_SYMBOL vmlinux 0xb7be31db inet_csk_clear_xmit_timers +EXPORT_SYMBOL vmlinux 0xb7c0f443 sort +EXPORT_SYMBOL vmlinux 0xb7c24ca0 generic_key_instantiate +EXPORT_SYMBOL vmlinux 0xb7c6db70 sysctl_max_skb_frags +EXPORT_SYMBOL vmlinux 0xb800950a vme_bus_num +EXPORT_SYMBOL vmlinux 0xb806e2db __kfree_skb +EXPORT_SYMBOL vmlinux 0xb80b7ee9 cdrom_mode_sense +EXPORT_SYMBOL vmlinux 0xb814e18a on_each_cpu_mask +EXPORT_SYMBOL vmlinux 0xb8212e6e blk_rq_init +EXPORT_SYMBOL vmlinux 0xb83129db ZSTD_decompressContinue +EXPORT_SYMBOL vmlinux 0xb83d0370 pci_irq_vector +EXPORT_SYMBOL vmlinux 0xb855d051 pci_free_irq +EXPORT_SYMBOL vmlinux 0xb868ac5c register_sysrq_key +EXPORT_SYMBOL vmlinux 0xb86f74c5 free_cpumask_var +EXPORT_SYMBOL vmlinux 0xb891f9d9 tcf_em_tree_destroy +EXPORT_SYMBOL vmlinux 0xb89b6e6b guid_parse +EXPORT_SYMBOL vmlinux 0xb8a653d4 tcp_select_initial_window +EXPORT_SYMBOL vmlinux 0xb8a6f3cc amd_iommu_device_info +EXPORT_SYMBOL vmlinux 0xb8adbc60 dev_get_flags +EXPORT_SYMBOL vmlinux 0xb8aea169 phy_ethtool_set_link_ksettings +EXPORT_SYMBOL vmlinux 0xb8b043f2 kfree_link +EXPORT_SYMBOL vmlinux 0xb8b9f817 kmalloc_order_trace +EXPORT_SYMBOL vmlinux 0xb8cf80ce amd_iommu_domain_clear_gcr3 +EXPORT_SYMBOL vmlinux 0xb8e01b7e refresh_frequency_limits +EXPORT_SYMBOL vmlinux 0xb8e04f9b netpoll_cleanup +EXPORT_SYMBOL vmlinux 0xb8e7ce2c __put_user_8 +EXPORT_SYMBOL vmlinux 0xb901e25f generic_file_splice_read +EXPORT_SYMBOL vmlinux 0xb9056bb6 remove_conflicting_framebuffers +EXPORT_SYMBOL vmlinux 0xb905d126 dma_async_device_register +EXPORT_SYMBOL vmlinux 0xb907513f unpoison_memory +EXPORT_SYMBOL vmlinux 0xb911bb58 minmax_running_max +EXPORT_SYMBOL vmlinux 0xb914a303 padata_alloc_shell +EXPORT_SYMBOL vmlinux 0xb9251fb3 ab3100_event_register +EXPORT_SYMBOL vmlinux 0xb9387a0b phy_write_paged +EXPORT_SYMBOL vmlinux 0xb94339c4 qdisc_put_stab +EXPORT_SYMBOL vmlinux 0xb94d13d0 __scsi_print_sense +EXPORT_SYMBOL vmlinux 0xb97180a6 fifo_set_limit +EXPORT_SYMBOL vmlinux 0xb97220ff bitmap_parse +EXPORT_SYMBOL vmlinux 0xb97f7045 acpi_install_gpe_handler +EXPORT_SYMBOL vmlinux 0xb982305d ipv6_chk_addr_and_flags +EXPORT_SYMBOL vmlinux 0xb999d147 md_cluster_ops +EXPORT_SYMBOL vmlinux 0xb9a2a5f8 sock_set_priority +EXPORT_SYMBOL vmlinux 0xb9ad6464 kobject_add +EXPORT_SYMBOL vmlinux 0xb9af1d0d __xa_clear_mark +EXPORT_SYMBOL vmlinux 0xb9b3cbe0 xfrm_input_register_afinfo +EXPORT_SYMBOL vmlinux 0xb9bdb4fd rdmacg_uncharge +EXPORT_SYMBOL vmlinux 0xb9c2350f fs_bio_set +EXPORT_SYMBOL vmlinux 0xb9c57d97 generic_setlease +EXPORT_SYMBOL vmlinux 0xb9c9d1d2 sock_from_file +EXPORT_SYMBOL vmlinux 0xb9da9c6a sk_reset_timer +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 0xb9e9b793 __mdiobus_register +EXPORT_SYMBOL vmlinux 0xb9f697e3 phy_sfp_probe +EXPORT_SYMBOL vmlinux 0xb9fdaaa4 fs_param_is_fd +EXPORT_SYMBOL vmlinux 0xba019f8f simple_readpage +EXPORT_SYMBOL vmlinux 0xba0af0f5 devm_get_clk_from_child +EXPORT_SYMBOL vmlinux 0xba1008c8 __crc32c_le +EXPORT_SYMBOL vmlinux 0xba29b639 compat_import_iovec +EXPORT_SYMBOL vmlinux 0xba2ad5a8 __blkdev_issue_discard +EXPORT_SYMBOL vmlinux 0xba344277 nd_region_to_nstype +EXPORT_SYMBOL vmlinux 0xba43d6cb agp_backend_release +EXPORT_SYMBOL vmlinux 0xba497f13 loops_per_jiffy +EXPORT_SYMBOL vmlinux 0xba5d5b1d fb_blank +EXPORT_SYMBOL vmlinux 0xba6d1146 pci_setup_cardbus +EXPORT_SYMBOL vmlinux 0xba7abff5 input_close_device +EXPORT_SYMBOL vmlinux 0xba7e21e4 iov_iter_zero +EXPORT_SYMBOL vmlinux 0xba82ab9c sk_stream_wait_close +EXPORT_SYMBOL vmlinux 0xba85c8fd pci_enable_device +EXPORT_SYMBOL vmlinux 0xba8830f2 try_lookup_one_len +EXPORT_SYMBOL vmlinux 0xbaa179e4 user_path_create +EXPORT_SYMBOL vmlinux 0xbaa7bf89 wait_on_page_bit +EXPORT_SYMBOL vmlinux 0xbac586a7 acpi_dev_get_first_match_dev +EXPORT_SYMBOL vmlinux 0xbacb1a6a __splice_from_pipe +EXPORT_SYMBOL vmlinux 0xbad19ac3 rio_query_mport +EXPORT_SYMBOL vmlinux 0xbadcaade blk_set_default_limits +EXPORT_SYMBOL vmlinux 0xbaffff96 ZSTD_CStreamWorkspaceBound +EXPORT_SYMBOL vmlinux 0xbb026480 input_handler_for_each_handle +EXPORT_SYMBOL vmlinux 0xbb0540aa zlib_inflateReset +EXPORT_SYMBOL vmlinux 0xbb0d6849 truncate_inode_pages_final +EXPORT_SYMBOL vmlinux 0xbb13595e smp_call_function_many +EXPORT_SYMBOL vmlinux 0xbb15fbeb vlan_vid_add +EXPORT_SYMBOL vmlinux 0xbb1a8f07 input_flush_device +EXPORT_SYMBOL vmlinux 0xbb1bac24 acpi_unregister_debugger +EXPORT_SYMBOL vmlinux 0xbb24f607 init_cdrom_command +EXPORT_SYMBOL vmlinux 0xbb278e86 devm_iounmap +EXPORT_SYMBOL vmlinux 0xbb2e614c dma_resv_fini +EXPORT_SYMBOL vmlinux 0xbb30cbc5 __dynamic_dev_dbg +EXPORT_SYMBOL vmlinux 0xbb32aa10 dev_mc_sync +EXPORT_SYMBOL vmlinux 0xbb35675b __bitmap_intersects +EXPORT_SYMBOL vmlinux 0xbb4f4766 simple_write_to_buffer +EXPORT_SYMBOL vmlinux 0xbb62a0b2 devfreq_register_opp_notifier +EXPORT_SYMBOL vmlinux 0xbb8e169a vga_switcheroo_handler_flags +EXPORT_SYMBOL vmlinux 0xbb8efcbe flow_rule_match_cvlan +EXPORT_SYMBOL vmlinux 0xbb9554ea phy_ethtool_set_eee +EXPORT_SYMBOL vmlinux 0xbbe80fdb kmalloc_order +EXPORT_SYMBOL vmlinux 0xbc099354 find_inode_nowait +EXPORT_SYMBOL vmlinux 0xbc1b5ff7 tcf_em_tree_dump +EXPORT_SYMBOL vmlinux 0xbc2031de acpi_processor_get_bios_limit +EXPORT_SYMBOL vmlinux 0xbc25f7cc free_contig_range +EXPORT_SYMBOL vmlinux 0xbc7bd9ce __scm_send +EXPORT_SYMBOL vmlinux 0xbc8807bc wireless_spy_update +EXPORT_SYMBOL vmlinux 0xbc899142 scm_fp_dup +EXPORT_SYMBOL vmlinux 0xbca275f2 neigh_lookup +EXPORT_SYMBOL vmlinux 0xbcab6ee6 sscanf +EXPORT_SYMBOL vmlinux 0xbcae80c3 blk_dump_rq_flags +EXPORT_SYMBOL vmlinux 0xbcbdf60f kstrtos8 +EXPORT_SYMBOL vmlinux 0xbcbe6c00 phy_init_eee +EXPORT_SYMBOL vmlinux 0xbcc2729d netlbl_calipso_ops_register +EXPORT_SYMBOL vmlinux 0xbcc308bb strnlen_user +EXPORT_SYMBOL vmlinux 0xbcc40009 kernel_sendmsg +EXPORT_SYMBOL vmlinux 0xbcc63e21 backlight_force_update +EXPORT_SYMBOL vmlinux 0xbcccb3e1 tcp_connect +EXPORT_SYMBOL vmlinux 0xbcd19c61 pnp_activate_dev +EXPORT_SYMBOL vmlinux 0xbcdb8c33 pci_bus_read_config_byte +EXPORT_SYMBOL vmlinux 0xbceec336 irq_domain_set_info +EXPORT_SYMBOL vmlinux 0xbd080425 bio_integrity_clone +EXPORT_SYMBOL vmlinux 0xbd088c8e cdev_device_del +EXPORT_SYMBOL vmlinux 0xbd1152b2 freeze_bdev +EXPORT_SYMBOL vmlinux 0xbd1f57a8 rproc_del +EXPORT_SYMBOL vmlinux 0xbd21bdd7 flow_indr_dev_unregister +EXPORT_SYMBOL vmlinux 0xbd462b55 __kfifo_init +EXPORT_SYMBOL vmlinux 0xbd52c2a7 xfrm_find_acq_byseq +EXPORT_SYMBOL vmlinux 0xbd5e38fe dma_direct_sync_single_for_device +EXPORT_SYMBOL vmlinux 0xbd6841d4 crc16 +EXPORT_SYMBOL vmlinux 0xbd78d62e ns_capable_setid +EXPORT_SYMBOL vmlinux 0xbd9d4820 unpin_user_page +EXPORT_SYMBOL vmlinux 0xbdb81daf wait_on_page_bit_killable +EXPORT_SYMBOL vmlinux 0xbdc28c27 devfreq_unregister_notifier +EXPORT_SYMBOL vmlinux 0xbde7ba98 xfrm_register_type +EXPORT_SYMBOL vmlinux 0xbdfb6dbb __fentry__ +EXPORT_SYMBOL vmlinux 0xbdfb7074 eth_validate_addr +EXPORT_SYMBOL vmlinux 0xbe0110e7 acpi_set_gpe +EXPORT_SYMBOL vmlinux 0xbe18aa52 vm_map_pages_zero +EXPORT_SYMBOL vmlinux 0xbe2aa477 _copy_from_iter_full_nocache +EXPORT_SYMBOL vmlinux 0xbe2b5784 devm_ioport_map +EXPORT_SYMBOL vmlinux 0xbe336136 tcf_get_next_chain +EXPORT_SYMBOL vmlinux 0xbe49252c acpi_os_write_port +EXPORT_SYMBOL vmlinux 0xbe4eb6ed secure_dccpv6_sequence_number +EXPORT_SYMBOL vmlinux 0xbe58e12e vme_lm_request +EXPORT_SYMBOL vmlinux 0xbe5a24e9 xxh32_copy_state +EXPORT_SYMBOL vmlinux 0xbe6a866f __wait_on_bit +EXPORT_SYMBOL vmlinux 0xbe6dda67 tty_name +EXPORT_SYMBOL vmlinux 0xbe766e8c sock_no_shutdown +EXPORT_SYMBOL vmlinux 0xbe7e05a8 acpi_tb_install_and_load_table +EXPORT_SYMBOL vmlinux 0xbe80505e ethtool_notify +EXPORT_SYMBOL vmlinux 0xbea0da5f pci_request_selected_regions_exclusive +EXPORT_SYMBOL vmlinux 0xbeaaeccc mdio_driver_unregister +EXPORT_SYMBOL vmlinux 0xbec5d60e arp_tbl +EXPORT_SYMBOL vmlinux 0xbec5f4b9 pci_ep_cfs_remove_epc_group +EXPORT_SYMBOL vmlinux 0xbec9496b vfs_getattr_nosec +EXPORT_SYMBOL vmlinux 0xbef43296 console_conditional_schedule +EXPORT_SYMBOL vmlinux 0xbef59945 xfrm_policy_hash_rebuild +EXPORT_SYMBOL vmlinux 0xbefa51a3 gen_pool_add_owner +EXPORT_SYMBOL vmlinux 0xbf047b11 dma_ops +EXPORT_SYMBOL vmlinux 0xbf2545ca input_enable_softrepeat +EXPORT_SYMBOL vmlinux 0xbf3193ec acpi_unregister_ioapic +EXPORT_SYMBOL vmlinux 0xbf4281f4 set_anon_super +EXPORT_SYMBOL vmlinux 0xbf4899fb mr_table_alloc +EXPORT_SYMBOL vmlinux 0xbf5736c4 seq_file_path +EXPORT_SYMBOL vmlinux 0xbf59c419 posix_acl_init +EXPORT_SYMBOL vmlinux 0xbf6664dd ipv6_setsockopt +EXPORT_SYMBOL vmlinux 0xbf73912c register_tcf_proto_ops +EXPORT_SYMBOL vmlinux 0xbf73a912 cdrom_get_media_event +EXPORT_SYMBOL vmlinux 0xbf8f44a0 param_set_ulong +EXPORT_SYMBOL vmlinux 0xbf9bcc8d __cap_empty_set +EXPORT_SYMBOL vmlinux 0xbfa1a27a __dev_getfirstbyhwtype +EXPORT_SYMBOL vmlinux 0xbfb6e665 sock_no_sendpage +EXPORT_SYMBOL vmlinux 0xbfc177bc iowrite32_rep +EXPORT_SYMBOL vmlinux 0xbfcaba24 dcache_dir_close +EXPORT_SYMBOL vmlinux 0xbfd0f27c kiocb_set_cancel_fn +EXPORT_SYMBOL vmlinux 0xbfd5ac9f tcp_set_rcvlowat +EXPORT_SYMBOL vmlinux 0xbfdcb43a __x86_indirect_thunk_r11 +EXPORT_SYMBOL vmlinux 0xbfee3ad5 loop_unregister_transfer +EXPORT_SYMBOL vmlinux 0xc01b9e71 inet_reqsk_alloc +EXPORT_SYMBOL vmlinux 0xc01f731a param_ops_uint +EXPORT_SYMBOL vmlinux 0xc025016c flow_keys_dissector +EXPORT_SYMBOL vmlinux 0xc0487404 cros_ec_get_host_event +EXPORT_SYMBOL vmlinux 0xc04ee99c __tcp_md5_do_lookup +EXPORT_SYMBOL vmlinux 0xc0732d30 __cpuhp_setup_state_cpuslocked +EXPORT_SYMBOL vmlinux 0xc07442c9 bio_advance +EXPORT_SYMBOL vmlinux 0xc0763484 rfkill_blocked +EXPORT_SYMBOL vmlinux 0xc0782da1 _copy_from_iter +EXPORT_SYMBOL vmlinux 0xc07b0863 fb_destroy_modedb +EXPORT_SYMBOL vmlinux 0xc07d956a netdev_adjacent_change_prepare +EXPORT_SYMBOL vmlinux 0xc089447d sock_enable_timestamps +EXPORT_SYMBOL vmlinux 0xc096e23d hdmi_drm_infoframe_init +EXPORT_SYMBOL vmlinux 0xc0a3d105 find_next_bit +EXPORT_SYMBOL vmlinux 0xc0b0caf8 dev_get_by_index +EXPORT_SYMBOL vmlinux 0xc0b2664d devlink_dpipe_header_ipv4 +EXPORT_SYMBOL vmlinux 0xc0bca0f1 ZSTD_nextSrcSizeToDecompress +EXPORT_SYMBOL vmlinux 0xc0be1ed8 ns_capable_noaudit +EXPORT_SYMBOL vmlinux 0xc0d5feee vfs_statx +EXPORT_SYMBOL vmlinux 0xc0d6762e generic_make_request +EXPORT_SYMBOL vmlinux 0xc0f30a0e drop_nlink +EXPORT_SYMBOL vmlinux 0xc0ff12fb nla_strdup +EXPORT_SYMBOL vmlinux 0xc111ae64 intel_gtt_get +EXPORT_SYMBOL vmlinux 0xc1179daa kstrtou8_from_user +EXPORT_SYMBOL vmlinux 0xc12796e8 bio_put +EXPORT_SYMBOL vmlinux 0xc1365323 acpi_enable_all_wakeup_gpes +EXPORT_SYMBOL vmlinux 0xc13edc37 blk_queue_max_segments +EXPORT_SYMBOL vmlinux 0xc14c3654 pci_disable_msi +EXPORT_SYMBOL vmlinux 0xc14dc168 acpi_get_data +EXPORT_SYMBOL vmlinux 0xc1514a3b free_irq +EXPORT_SYMBOL vmlinux 0xc156c981 refcount_dec_and_mutex_lock +EXPORT_SYMBOL vmlinux 0xc15906df param_get_long +EXPORT_SYMBOL vmlinux 0xc162dd53 splice_direct_to_actor +EXPORT_SYMBOL vmlinux 0xc16410b9 ZSTD_getDictID_fromDDict +EXPORT_SYMBOL vmlinux 0xc16be39d iter_div_u64_rem +EXPORT_SYMBOL vmlinux 0xc1aae5bf devm_nvmem_unregister +EXPORT_SYMBOL vmlinux 0xc1b714b3 pnp_is_active +EXPORT_SYMBOL vmlinux 0xc1b7ebbc posix_test_lock +EXPORT_SYMBOL vmlinux 0xc1b90970 bdev_stack_limits +EXPORT_SYMBOL vmlinux 0xc1c15281 km_state_expired +EXPORT_SYMBOL vmlinux 0xc1d20cd0 mdiobus_is_registered_device +EXPORT_SYMBOL vmlinux 0xc1d8cfaf __fdget +EXPORT_SYMBOL vmlinux 0xc1e5e7e5 sync_blockdev +EXPORT_SYMBOL vmlinux 0xc1f6500d security_inode_getsecctx +EXPORT_SYMBOL vmlinux 0xc1fc4532 __sk_receive_skb +EXPORT_SYMBOL vmlinux 0xc20004ae filemap_write_and_wait_range +EXPORT_SYMBOL vmlinux 0xc20c1639 dev_lstats_read +EXPORT_SYMBOL vmlinux 0xc20c5c91 iterate_dir +EXPORT_SYMBOL vmlinux 0xc21e2b46 clk_get +EXPORT_SYMBOL vmlinux 0xc22c4857 i2c_transfer_buffer_flags +EXPORT_SYMBOL vmlinux 0xc23adf60 __free_pages +EXPORT_SYMBOL vmlinux 0xc2424641 agp3_generic_cleanup +EXPORT_SYMBOL vmlinux 0xc245e0c0 param_get_uint +EXPORT_SYMBOL vmlinux 0xc2476c1b inet_proto_csum_replace_by_diff +EXPORT_SYMBOL vmlinux 0xc267960e utf8_validate +EXPORT_SYMBOL vmlinux 0xc27036d9 phy_start_cable_test_tdr +EXPORT_SYMBOL vmlinux 0xc2755469 __icmp_send +EXPORT_SYMBOL vmlinux 0xc278c965 cpu_all_bits +EXPORT_SYMBOL vmlinux 0xc29957c3 __x86_indirect_thunk_rcx +EXPORT_SYMBOL vmlinux 0xc29bf967 strspn +EXPORT_SYMBOL vmlinux 0xc2a17ebe seqno_fence_ops +EXPORT_SYMBOL vmlinux 0xc2a50294 mmc_retune_unpause +EXPORT_SYMBOL vmlinux 0xc2c4ac94 dma_resv_add_excl_fence +EXPORT_SYMBOL vmlinux 0xc2c69089 sock_no_mmap +EXPORT_SYMBOL vmlinux 0xc2e01cc5 abx500_register_ops +EXPORT_SYMBOL vmlinux 0xc2e587d1 reset_devices +EXPORT_SYMBOL vmlinux 0xc2e89146 component_match_add_release +EXPORT_SYMBOL vmlinux 0xc2f74188 mmc_gpiod_request_ro +EXPORT_SYMBOL vmlinux 0xc306c3a8 page_frag_alloc +EXPORT_SYMBOL vmlinux 0xc306c658 inet_csk_reset_keepalive_timer +EXPORT_SYMBOL vmlinux 0xc310b981 strnstr +EXPORT_SYMBOL vmlinux 0xc3154391 pcim_iounmap +EXPORT_SYMBOL vmlinux 0xc31db0ce is_vmalloc_addr +EXPORT_SYMBOL vmlinux 0xc329439b jbd2_journal_lock_updates +EXPORT_SYMBOL vmlinux 0xc32c71af register_inetaddr_validator_notifier +EXPORT_SYMBOL vmlinux 0xc32fcd73 blk_mq_init_queue +EXPORT_SYMBOL vmlinux 0xc345713f framebuffer_release +EXPORT_SYMBOL vmlinux 0xc3661744 mark_info_dirty +EXPORT_SYMBOL vmlinux 0xc36a3bd4 __acpi_handle_debug +EXPORT_SYMBOL vmlinux 0xc3762aec mempool_alloc +EXPORT_SYMBOL vmlinux 0xc37a61ee rproc_shutdown +EXPORT_SYMBOL vmlinux 0xc37f9c6e cpufreq_update_policy +EXPORT_SYMBOL vmlinux 0xc3859832 in_dev_finish_destroy +EXPORT_SYMBOL vmlinux 0xc38c83b8 mod_timer +EXPORT_SYMBOL vmlinux 0xc3942966 override_creds +EXPORT_SYMBOL vmlinux 0xc3aaf0a9 __put_user_1 +EXPORT_SYMBOL vmlinux 0xc3b28a28 nobh_write_begin +EXPORT_SYMBOL vmlinux 0xc3bc72ad trace_print_array_seq +EXPORT_SYMBOL vmlinux 0xc3f158df blk_queue_max_hw_sectors +EXPORT_SYMBOL vmlinux 0xc3ff38c2 down_read_trylock +EXPORT_SYMBOL vmlinux 0xc41bc980 iwe_stream_add_value +EXPORT_SYMBOL vmlinux 0xc4212ab9 qdisc_class_hash_insert +EXPORT_SYMBOL vmlinux 0xc42dcb99 acpi_evaluate_ost +EXPORT_SYMBOL vmlinux 0xc44b2f66 devm_pci_remap_cfgspace +EXPORT_SYMBOL vmlinux 0xc44c7047 tcp_v4_connect +EXPORT_SYMBOL vmlinux 0xc4511fed cookie_timestamp_decode +EXPORT_SYMBOL vmlinux 0xc4583d7a pci_enable_device_mem +EXPORT_SYMBOL vmlinux 0xc45a3fbd inet_shutdown +EXPORT_SYMBOL vmlinux 0xc47686b0 phy_resume +EXPORT_SYMBOL vmlinux 0xc4777aa9 __ctzsi2 +EXPORT_SYMBOL vmlinux 0xc4ae915e arch_touch_nmi_watchdog +EXPORT_SYMBOL vmlinux 0xc4e558f3 twl6030_mmc_card_detect +EXPORT_SYMBOL vmlinux 0xc4e7f944 agp_generic_alloc_by_type +EXPORT_SYMBOL vmlinux 0xc4fcd286 xp_raw_get_dma +EXPORT_SYMBOL vmlinux 0xc526a693 init_net +EXPORT_SYMBOL vmlinux 0xc528a49a queued_write_lock_slowpath +EXPORT_SYMBOL vmlinux 0xc5420e72 gnet_stats_finish_copy +EXPORT_SYMBOL vmlinux 0xc54ff6e5 dev_addr_add +EXPORT_SYMBOL vmlinux 0xc5534d64 ioread16 +EXPORT_SYMBOL vmlinux 0xc558530d profile_pc +EXPORT_SYMBOL vmlinux 0xc55a16c7 dquot_reclaim_space_nodirty +EXPORT_SYMBOL vmlinux 0xc5724414 rdmacg_try_charge +EXPORT_SYMBOL vmlinux 0xc57c48a3 idr_get_next +EXPORT_SYMBOL vmlinux 0xc5850110 printk +EXPORT_SYMBOL vmlinux 0xc599a772 security_xfrm_state_delete +EXPORT_SYMBOL vmlinux 0xc5b150cd netdev_alert +EXPORT_SYMBOL vmlinux 0xc5b3107b input_set_timestamp +EXPORT_SYMBOL vmlinux 0xc5b6f236 queue_work_on +EXPORT_SYMBOL vmlinux 0xc5c8a58b skb_copy_datagram_iter +EXPORT_SYMBOL vmlinux 0xc5d9c46c agp_try_unsupported_boot +EXPORT_SYMBOL vmlinux 0xc5e4a5d1 cpumask_next +EXPORT_SYMBOL vmlinux 0xc5e5573a frame_vector_to_pages +EXPORT_SYMBOL vmlinux 0xc5e74216 release_resource +EXPORT_SYMBOL vmlinux 0xc5f7e801 sg_last +EXPORT_SYMBOL vmlinux 0xc6030c1f udp_prot +EXPORT_SYMBOL vmlinux 0xc6055c9e kvasprintf_const +EXPORT_SYMBOL vmlinux 0xc6095c6e eth_header +EXPORT_SYMBOL vmlinux 0xc60b0975 mmc_register_driver +EXPORT_SYMBOL vmlinux 0xc60d0620 __num_online_cpus +EXPORT_SYMBOL vmlinux 0xc61ca65e iowrite64be_hi_lo +EXPORT_SYMBOL vmlinux 0xc631580a console_unlock +EXPORT_SYMBOL vmlinux 0xc633d82d phy_unregister_fixup +EXPORT_SYMBOL vmlinux 0xc634c912 disk_end_io_acct +EXPORT_SYMBOL vmlinux 0xc63d4b21 cookie_ecn_ok +EXPORT_SYMBOL vmlinux 0xc6458557 sock_alloc_send_skb +EXPORT_SYMBOL vmlinux 0xc6499e15 put_tty_driver +EXPORT_SYMBOL vmlinux 0xc6514077 __set_page_dirty_nobuffers +EXPORT_SYMBOL vmlinux 0xc657bf8f mark_page_accessed +EXPORT_SYMBOL vmlinux 0xc65e4e97 secure_dccp_sequence_number +EXPORT_SYMBOL vmlinux 0xc666a132 crc_t10dif +EXPORT_SYMBOL vmlinux 0xc66a8304 cpu_rmap_add +EXPORT_SYMBOL vmlinux 0xc66b68ec blk_pre_runtime_suspend +EXPORT_SYMBOL vmlinux 0xc66bc4bf pci_match_id +EXPORT_SYMBOL vmlinux 0xc66d919f dm_table_get_mode +EXPORT_SYMBOL vmlinux 0xc6753376 no_llseek +EXPORT_SYMBOL vmlinux 0xc6910aa0 do_trace_rdpmc +EXPORT_SYMBOL vmlinux 0xc69617c6 inode_permission +EXPORT_SYMBOL vmlinux 0xc6cb465a __kfifo_max_r +EXPORT_SYMBOL vmlinux 0xc6cbbc89 capable +EXPORT_SYMBOL vmlinux 0xc6d09aa9 release_firmware +EXPORT_SYMBOL vmlinux 0xc6de1216 free_inode_nonrcu +EXPORT_SYMBOL vmlinux 0xc6e8f42f hmm_range_fault +EXPORT_SYMBOL vmlinux 0xc6eb2050 abx500_get_register_interruptible +EXPORT_SYMBOL vmlinux 0xc6f1724d vlan_vids_add_by_dev +EXPORT_SYMBOL vmlinux 0xc6f46339 init_timer_key +EXPORT_SYMBOL vmlinux 0xc6f87c3b inet_frag_queue_insert +EXPORT_SYMBOL vmlinux 0xc6f90eb4 ip_fraglist_prepare +EXPORT_SYMBOL vmlinux 0xc6fab648 sched_autogroup_detach +EXPORT_SYMBOL vmlinux 0xc6fcb980 cdrom_check_events +EXPORT_SYMBOL vmlinux 0xc7034e07 dquot_release +EXPORT_SYMBOL vmlinux 0xc708f1fe ec_write +EXPORT_SYMBOL vmlinux 0xc715115e abx500_event_registers_startup_state_get +EXPORT_SYMBOL vmlinux 0xc7208c3a serial8250_resume_port +EXPORT_SYMBOL vmlinux 0xc724220d input_set_min_poll_interval +EXPORT_SYMBOL vmlinux 0xc732769d rproc_elf_load_segments +EXPORT_SYMBOL vmlinux 0xc76f086b tcp_v4_md5_hash_skb +EXPORT_SYMBOL vmlinux 0xc781bd9f rfkill_resume_polling +EXPORT_SYMBOL vmlinux 0xc7856a3d inet6addr_notifier_call_chain +EXPORT_SYMBOL vmlinux 0xc79bcd36 dm_vcalloc +EXPORT_SYMBOL vmlinux 0xc7a4fbed rtnl_lock +EXPORT_SYMBOL vmlinux 0xc7b17392 key_type_keyring +EXPORT_SYMBOL vmlinux 0xc7bfacba scsi_print_sense_hdr +EXPORT_SYMBOL vmlinux 0xc7c1107a LZ4_decompress_safe +EXPORT_SYMBOL vmlinux 0xc7d094b5 dm_read_arg_group +EXPORT_SYMBOL vmlinux 0xc7d8af53 __tty_alloc_driver +EXPORT_SYMBOL vmlinux 0xc7e6a36a pnp_request_card_device +EXPORT_SYMBOL vmlinux 0xc7f49415 tcp_enter_quickack_mode +EXPORT_SYMBOL vmlinux 0xc80ab559 swake_up_one +EXPORT_SYMBOL vmlinux 0xc81e91a8 napi_busy_loop +EXPORT_SYMBOL vmlinux 0xc8461642 pcie_capability_write_dword +EXPORT_SYMBOL vmlinux 0xc847bcd4 thermal_cdev_update +EXPORT_SYMBOL vmlinux 0xc84a0a7e seq_hlist_start_rcu +EXPORT_SYMBOL vmlinux 0xc858a614 nla_reserve_nohdr +EXPORT_SYMBOL vmlinux 0xc868ba5a inet_accept +EXPORT_SYMBOL vmlinux 0xc872fd85 in6addr_interfacelocal_allnodes +EXPORT_SYMBOL vmlinux 0xc8735b62 tcp_ld_RTO_revert +EXPORT_SYMBOL vmlinux 0xc8792ecd proc_create_mount_point +EXPORT_SYMBOL vmlinux 0xc8827b75 sysctl_vals +EXPORT_SYMBOL vmlinux 0xc8878d6d param_set_short +EXPORT_SYMBOL vmlinux 0xc890c008 zlib_deflateEnd +EXPORT_SYMBOL vmlinux 0xc8a91f5b cpumask_local_spread +EXPORT_SYMBOL vmlinux 0xc8b85899 amd_iommu_pc_set_reg +EXPORT_SYMBOL vmlinux 0xc8e2e1f4 __pci_register_driver +EXPORT_SYMBOL vmlinux 0xc8e7622c inetpeer_invalidate_tree +EXPORT_SYMBOL vmlinux 0xc8f9aed1 lock_page_memcg +EXPORT_SYMBOL vmlinux 0xc9216a82 recalibrate_cpu_khz +EXPORT_SYMBOL vmlinux 0xc93e8461 acpi_get_event_resources +EXPORT_SYMBOL vmlinux 0xc94e38f3 kthread_stop +EXPORT_SYMBOL vmlinux 0xc959d152 __stack_chk_fail +EXPORT_SYMBOL vmlinux 0xc95d4cf2 agp_generic_free_gatt_table +EXPORT_SYMBOL vmlinux 0xc9634df9 in6addr_linklocal_allrouters +EXPORT_SYMBOL vmlinux 0xc972449f mempool_alloc_slab +EXPORT_SYMBOL vmlinux 0xc9784a36 vfs_rename +EXPORT_SYMBOL vmlinux 0xc9822234 clk_register_clkdev +EXPORT_SYMBOL vmlinux 0xc99e2a55 twl_rev +EXPORT_SYMBOL vmlinux 0xc9b8b022 scsi_test_unit_ready +EXPORT_SYMBOL vmlinux 0xc9dc55da inet_confirm_addr +EXPORT_SYMBOL vmlinux 0xc9df055a xfrm_policy_walk_init +EXPORT_SYMBOL vmlinux 0xc9ef57c0 pci_disable_device +EXPORT_SYMBOL vmlinux 0xc9f34c1d acpi_acquire_global_lock +EXPORT_SYMBOL vmlinux 0xc9f615bc pci_ep_cfs_add_epf_group +EXPORT_SYMBOL vmlinux 0xca06ac1a poll_freewait +EXPORT_SYMBOL vmlinux 0xca145ca4 set_pages_array_uc +EXPORT_SYMBOL vmlinux 0xca15413f ZSTD_resetDStream +EXPORT_SYMBOL vmlinux 0xca1b3e3d param_ops_ulong +EXPORT_SYMBOL vmlinux 0xca1ea2c7 blk_set_stacking_limits +EXPORT_SYMBOL vmlinux 0xca21ebd3 bitmap_free +EXPORT_SYMBOL vmlinux 0xca2a997c udp_lib_unhash +EXPORT_SYMBOL vmlinux 0xca3817ee pci_find_capability +EXPORT_SYMBOL vmlinux 0xca3fb15c vlan_dev_vlan_proto +EXPORT_SYMBOL vmlinux 0xca431c05 wake_bit_function +EXPORT_SYMBOL vmlinux 0xca4bc868 get_phy_device +EXPORT_SYMBOL vmlinux 0xca869de6 dev_mc_sync_multiple +EXPORT_SYMBOL vmlinux 0xca9360b5 rb_next +EXPORT_SYMBOL vmlinux 0xca9949e1 ip_route_me_harder +EXPORT_SYMBOL vmlinux 0xca9beaa4 __xa_store +EXPORT_SYMBOL vmlinux 0xcaa1b9c9 inet_csk_prepare_forced_close +EXPORT_SYMBOL vmlinux 0xcaa4a4e2 textsearch_register +EXPORT_SYMBOL vmlinux 0xcad1aca8 acpi_exception +EXPORT_SYMBOL vmlinux 0xcadda903 configfs_undepend_item +EXPORT_SYMBOL vmlinux 0xcae74629 pci_select_bars +EXPORT_SYMBOL vmlinux 0xcaf0064f devfreq_add_device +EXPORT_SYMBOL vmlinux 0xcaf2c603 scsi_sd_pm_domain +EXPORT_SYMBOL vmlinux 0xcaf93662 scsi_target_resume +EXPORT_SYMBOL vmlinux 0xcb001837 inode_init_once +EXPORT_SYMBOL vmlinux 0xcb0288ea ledtrig_cpu +EXPORT_SYMBOL vmlinux 0xcb02ec1e eth_gro_receive +EXPORT_SYMBOL vmlinux 0xcb1d13ef phy_device_create +EXPORT_SYMBOL vmlinux 0xcb25bb65 cfb_fillrect +EXPORT_SYMBOL vmlinux 0xcb2be807 is_subdir +EXPORT_SYMBOL vmlinux 0xcb3ae215 call_blocking_lsm_notifier +EXPORT_SYMBOL vmlinux 0xcb72cd6a phy_driver_unregister +EXPORT_SYMBOL vmlinux 0xcb733bf2 acpi_bus_set_power +EXPORT_SYMBOL vmlinux 0xcb7708f8 scsi_verify_blk_ioctl +EXPORT_SYMBOL vmlinux 0xcb7e99a6 netif_rx +EXPORT_SYMBOL vmlinux 0xcb874c34 ipv6_sock_mc_join +EXPORT_SYMBOL vmlinux 0xcb97a383 nf_register_queue_handler +EXPORT_SYMBOL vmlinux 0xcb9842c6 ether_setup +EXPORT_SYMBOL vmlinux 0xcb9d37b5 genphy_c37_config_aneg +EXPORT_SYMBOL vmlinux 0xcb9e1a22 acpi_os_map_generic_address +EXPORT_SYMBOL vmlinux 0xcba4abe3 list_sort +EXPORT_SYMBOL vmlinux 0xcbaa92a1 dquot_scan_active +EXPORT_SYMBOL vmlinux 0xcbb791a1 irq_to_desc +EXPORT_SYMBOL vmlinux 0xcbc88a23 ZSTD_isFrame +EXPORT_SYMBOL vmlinux 0xcbd4898c fortify_panic +EXPORT_SYMBOL vmlinux 0xcbf895e0 kmalloc_caches +EXPORT_SYMBOL vmlinux 0xcbfb33e4 init_opal_dev +EXPORT_SYMBOL vmlinux 0xcc0450df memory_cgrp_subsys +EXPORT_SYMBOL vmlinux 0xcc0fb22d sk_stop_timer +EXPORT_SYMBOL vmlinux 0xcc1b882a idr_get_next_ul +EXPORT_SYMBOL vmlinux 0xcc248d26 serial8250_suspend_port +EXPORT_SYMBOL vmlinux 0xcc25d2f5 security_d_instantiate +EXPORT_SYMBOL vmlinux 0xcc2b37e2 config_group_find_item +EXPORT_SYMBOL vmlinux 0xcc328a5c reservation_ww_class +EXPORT_SYMBOL vmlinux 0xcc3c196f inode_add_bytes +EXPORT_SYMBOL vmlinux 0xcc41f523 tcp_initialize_rcv_mss +EXPORT_SYMBOL vmlinux 0xcc445ceb __sg_page_iter_dma_next +EXPORT_SYMBOL vmlinux 0xcc46ae26 devm_clk_hw_register_clkdev +EXPORT_SYMBOL vmlinux 0xcc5005fe msleep_interruptible +EXPORT_SYMBOL vmlinux 0xcc5c2df4 trace_print_symbols_seq +EXPORT_SYMBOL vmlinux 0xcc5d22d9 can_do_mlock +EXPORT_SYMBOL vmlinux 0xcc62d952 netpoll_poll_dev +EXPORT_SYMBOL vmlinux 0xcc6b05b1 __destroy_inode +EXPORT_SYMBOL vmlinux 0xcc90417d phy_attach_direct +EXPORT_SYMBOL vmlinux 0xcc907e23 mdio_device_reset +EXPORT_SYMBOL vmlinux 0xcca5839d xen_vcpu_id +EXPORT_SYMBOL vmlinux 0xccb46981 inet6_offloads +EXPORT_SYMBOL vmlinux 0xccc21f5e input_get_new_minor +EXPORT_SYMBOL vmlinux 0xccc758d8 nla_policy_len +EXPORT_SYMBOL vmlinux 0xcccb020c inet_add_protocol +EXPORT_SYMBOL vmlinux 0xccd0de8c __phy_write_mmd +EXPORT_SYMBOL vmlinux 0xccd4c999 __sg_page_iter_start +EXPORT_SYMBOL vmlinux 0xcce2aa22 xfrm_input +EXPORT_SYMBOL vmlinux 0xccef37e4 ZSTD_DStreamOutSize +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 0xcd1970d2 uart_unregister_driver +EXPORT_SYMBOL vmlinux 0xcd20a8e6 blk_queue_physical_block_size +EXPORT_SYMBOL vmlinux 0xcd256667 tcp_md5_needed +EXPORT_SYMBOL vmlinux 0xcd279169 nla_find +EXPORT_SYMBOL vmlinux 0xcd28e60b compat_ip_getsockopt +EXPORT_SYMBOL vmlinux 0xcd2b82b8 jbd2_journal_errno +EXPORT_SYMBOL vmlinux 0xcd6dd8b6 simple_symlink_inode_operations +EXPORT_SYMBOL vmlinux 0xcd77aef5 write_dirty_buffer +EXPORT_SYMBOL vmlinux 0xcd7a5de9 pci_bus_write_config_dword +EXPORT_SYMBOL vmlinux 0xcd7fffa0 vfs_symlink +EXPORT_SYMBOL vmlinux 0xcd85de5a mmput_async +EXPORT_SYMBOL vmlinux 0xcd8b61dc nvdimm_namespace_common_probe +EXPORT_SYMBOL vmlinux 0xcd8ce890 acpi_format_exception +EXPORT_SYMBOL vmlinux 0xcda753e3 tcp_conn_request +EXPORT_SYMBOL vmlinux 0xcdb1241e twl6040_set_bits +EXPORT_SYMBOL vmlinux 0xcdc39c9e security_ismaclabel +EXPORT_SYMBOL vmlinux 0xcdd94a7c iov_iter_for_each_range +EXPORT_SYMBOL vmlinux 0xcde4628c unregister_mii_tstamp_controller +EXPORT_SYMBOL vmlinux 0xcde77bcc free_opal_dev +EXPORT_SYMBOL vmlinux 0xcdecf4b8 processors +EXPORT_SYMBOL vmlinux 0xcdf7308a tcf_idr_search +EXPORT_SYMBOL vmlinux 0xce087410 max8925_bulk_write +EXPORT_SYMBOL vmlinux 0xce2840e7 irq_set_irq_wake +EXPORT_SYMBOL vmlinux 0xce3864eb ZSTD_compress_usingDict +EXPORT_SYMBOL vmlinux 0xce44e373 mipi_dsi_dcs_set_display_on +EXPORT_SYMBOL vmlinux 0xce4cdb8e fb_find_best_mode +EXPORT_SYMBOL vmlinux 0xce4e47b6 __kfifo_skip_r +EXPORT_SYMBOL vmlinux 0xce50e5de ZSTD_compress_usingCDict +EXPORT_SYMBOL vmlinux 0xce5ac24f zlib_inflate_workspacesize +EXPORT_SYMBOL vmlinux 0xce6477b2 acpi_pci_osc_control_set +EXPORT_SYMBOL vmlinux 0xce681d0e page_mapping +EXPORT_SYMBOL vmlinux 0xce76c257 acpi_get_irq_routing_table +EXPORT_SYMBOL vmlinux 0xce7a5d85 scsi_print_command +EXPORT_SYMBOL vmlinux 0xce7bfe70 vm_brk +EXPORT_SYMBOL vmlinux 0xce807a25 up_write +EXPORT_SYMBOL vmlinux 0xce8b1878 __x86_indirect_thunk_r14 +EXPORT_SYMBOL vmlinux 0xcea381dd x86_match_cpu +EXPORT_SYMBOL vmlinux 0xcea486ec clkdev_alloc +EXPORT_SYMBOL vmlinux 0xceab0311 strchrnul +EXPORT_SYMBOL vmlinux 0xceade1ec devm_gen_pool_create +EXPORT_SYMBOL vmlinux 0xceb5b025 lease_modify +EXPORT_SYMBOL vmlinux 0xcebaaad1 dev_mc_add +EXPORT_SYMBOL vmlinux 0xced0f4d4 gen_pool_create +EXPORT_SYMBOL vmlinux 0xced8bb58 mdio_find_bus +EXPORT_SYMBOL vmlinux 0xcee1ff2b param_get_int +EXPORT_SYMBOL vmlinux 0xcee25867 twl6040_get_vibralr_status +EXPORT_SYMBOL vmlinux 0xceec8abd __mb_cache_entry_free +EXPORT_SYMBOL vmlinux 0xcefcd99a serial8250_unregister_port +EXPORT_SYMBOL vmlinux 0xcf000c7e hdmi_infoframe_check +EXPORT_SYMBOL vmlinux 0xcf00cbf9 blkdev_fsync +EXPORT_SYMBOL vmlinux 0xcf13c9d9 cfb_copyarea +EXPORT_SYMBOL vmlinux 0xcf1c6ca3 cmdline_parts_find +EXPORT_SYMBOL vmlinux 0xcf2537ec filemap_fdatawrite +EXPORT_SYMBOL vmlinux 0xcf2a6966 up +EXPORT_SYMBOL vmlinux 0xcf36506b md_bitmap_start_sync +EXPORT_SYMBOL vmlinux 0xcf379fb1 seq_lseek +EXPORT_SYMBOL vmlinux 0xcf45080f devm_devfreq_unregister_opp_notifier +EXPORT_SYMBOL vmlinux 0xcf4fdd4d _atomic_dec_and_lock +EXPORT_SYMBOL vmlinux 0xcf535078 ww_mutex_lock_interruptible +EXPORT_SYMBOL vmlinux 0xcf7ad6cf free_cgroup_ns +EXPORT_SYMBOL vmlinux 0xcf837760 tty_port_tty_set +EXPORT_SYMBOL vmlinux 0xcf83d83a __tracepoint_spi_transfer_start +EXPORT_SYMBOL vmlinux 0xcf9821d6 tc_setup_cb_replace +EXPORT_SYMBOL vmlinux 0xcf9b558d touchscreen_set_mt_pos +EXPORT_SYMBOL vmlinux 0xcf9f5bbe dns_query +EXPORT_SYMBOL vmlinux 0xcfa51fc5 sock_create_lite +EXPORT_SYMBOL vmlinux 0xcfb80cb3 sock_cmsg_send +EXPORT_SYMBOL vmlinux 0xcfd7fe9f blk_mq_run_hw_queues +EXPORT_SYMBOL vmlinux 0xd00b9d36 kfree_skb_partial +EXPORT_SYMBOL vmlinux 0xd016b659 xfrm_spd_getinfo +EXPORT_SYMBOL vmlinux 0xd02474cc compat_tcp_setsockopt +EXPORT_SYMBOL vmlinux 0xd02e9c89 tty_port_put +EXPORT_SYMBOL vmlinux 0xd042475c qdisc_get_rtab +EXPORT_SYMBOL vmlinux 0xd0444bde __dev_get_by_flags +EXPORT_SYMBOL vmlinux 0xd04c1a64 sysctl_devconf_inherit_init_net +EXPORT_SYMBOL vmlinux 0xd05edfaf jbd2_journal_free_reserved +EXPORT_SYMBOL vmlinux 0xd0654aba woken_wake_function +EXPORT_SYMBOL vmlinux 0xd07655a9 input_mt_report_slot_state +EXPORT_SYMBOL vmlinux 0xd08adb2b trace_seq_hex_dump +EXPORT_SYMBOL vmlinux 0xd0a91bab skip_spaces +EXPORT_SYMBOL vmlinux 0xd0b74705 acpi_install_interface +EXPORT_SYMBOL vmlinux 0xd0bd487b hdmi_drm_infoframe_pack_only +EXPORT_SYMBOL vmlinux 0xd0e40bb7 filp_close +EXPORT_SYMBOL vmlinux 0xd0eb5ffc d_prune_aliases +EXPORT_SYMBOL vmlinux 0xd0f284b8 mmiotrace_printk +EXPORT_SYMBOL vmlinux 0xd0fdbd76 fb_prepare_logo +EXPORT_SYMBOL vmlinux 0xd0fe8d51 sg_pcopy_from_buffer +EXPORT_SYMBOL vmlinux 0xd0fef3b2 agp_free_key +EXPORT_SYMBOL vmlinux 0xd111ba35 xsk_set_rx_need_wakeup +EXPORT_SYMBOL vmlinux 0xd1297374 vme_register_driver +EXPORT_SYMBOL vmlinux 0xd12d1ab1 set_user_nice +EXPORT_SYMBOL vmlinux 0xd1363cc1 ucs2_strsize +EXPORT_SYMBOL vmlinux 0xd1412f9b kobject_init +EXPORT_SYMBOL vmlinux 0xd149a058 generic_perform_write +EXPORT_SYMBOL vmlinux 0xd157e838 pcie_get_speed_cap +EXPORT_SYMBOL vmlinux 0xd16b390e flow_rule_match_eth_addrs +EXPORT_SYMBOL vmlinux 0xd1753ede md_bitmap_close_sync +EXPORT_SYMBOL vmlinux 0xd1816f32 frontswap_writethrough +EXPORT_SYMBOL vmlinux 0xd1869aa2 jbd2_journal_init_jbd_inode +EXPORT_SYMBOL vmlinux 0xd194ddf9 acpi_gpe_count +EXPORT_SYMBOL vmlinux 0xd19bd2e1 __tracepoint_write_msr +EXPORT_SYMBOL vmlinux 0xd1a4053d config_item_get +EXPORT_SYMBOL vmlinux 0xd1d065f1 genphy_check_and_restart_aneg +EXPORT_SYMBOL vmlinux 0xd1d1bfcc sock_no_getsockopt +EXPORT_SYMBOL vmlinux 0xd1d780e7 input_set_max_poll_interval +EXPORT_SYMBOL vmlinux 0xd1d82d1c mipi_dsi_dcs_nop +EXPORT_SYMBOL vmlinux 0xd1d87e92 scsi_mlreturn_string +EXPORT_SYMBOL vmlinux 0xd1e7b40e sk_page_frag_refill +EXPORT_SYMBOL vmlinux 0xd1ecb3ea elv_rb_add +EXPORT_SYMBOL vmlinux 0xd1f60a89 arch_io_free_memtype_wc +EXPORT_SYMBOL vmlinux 0xd1f6c5f3 smp_num_siblings +EXPORT_SYMBOL vmlinux 0xd1f85b73 seq_printf +EXPORT_SYMBOL vmlinux 0xd20292a7 bio_split +EXPORT_SYMBOL vmlinux 0xd205a454 lookup_positive_unlocked +EXPORT_SYMBOL vmlinux 0xd21c5139 iowrite64_lo_hi +EXPORT_SYMBOL vmlinux 0xd2237016 radix_tree_delete_item +EXPORT_SYMBOL vmlinux 0xd23922d2 pci_get_device +EXPORT_SYMBOL vmlinux 0xd259a9f6 unregister_mii_timestamper +EXPORT_SYMBOL vmlinux 0xd25d4f74 console_blank_hook +EXPORT_SYMBOL vmlinux 0xd262dfcb vscnprintf +EXPORT_SYMBOL vmlinux 0xd2699332 scsi_cmd_blk_ioctl +EXPORT_SYMBOL vmlinux 0xd27afdcb vlan_uses_dev +EXPORT_SYMBOL vmlinux 0xd27b25dd blk_check_plugged +EXPORT_SYMBOL vmlinux 0xd2a5c1e9 pci_dev_get +EXPORT_SYMBOL vmlinux 0xd2b236b5 fs_context_for_submount +EXPORT_SYMBOL vmlinux 0xd2c99738 __kmalloc_track_caller +EXPORT_SYMBOL vmlinux 0xd2cc1f4f blk_integrity_merge_rq +EXPORT_SYMBOL vmlinux 0xd2d2c3f6 pci_request_selected_regions +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 0xd307c035 security_dentry_create_files_as +EXPORT_SYMBOL vmlinux 0xd312afdd agp_generic_free_by_type +EXPORT_SYMBOL vmlinux 0xd316b315 seq_putc +EXPORT_SYMBOL vmlinux 0xd3325f1b nosteal_pipe_buf_ops +EXPORT_SYMBOL vmlinux 0xd3532203 mr_fill_mroute +EXPORT_SYMBOL vmlinux 0xd3543063 memcg_kmem_enabled_key +EXPORT_SYMBOL vmlinux 0xd35a6d31 mempool_kmalloc +EXPORT_SYMBOL vmlinux 0xd35dfde1 PageMovable +EXPORT_SYMBOL vmlinux 0xd36a0c82 inet_addr_type_table +EXPORT_SYMBOL vmlinux 0xd36dc10c get_random_u32 +EXPORT_SYMBOL vmlinux 0xd36e3d59 prandom_bytes_state +EXPORT_SYMBOL vmlinux 0xd37bddc9 dquot_disable +EXPORT_SYMBOL vmlinux 0xd37c6d9c block_page_mkwrite +EXPORT_SYMBOL vmlinux 0xd38cd261 __default_kernel_pte_mask +EXPORT_SYMBOL vmlinux 0xd3b89a6f param_set_invbool +EXPORT_SYMBOL vmlinux 0xd3d40b0f tcf_block_get_ext +EXPORT_SYMBOL vmlinux 0xd3e277f8 __bread_gfp +EXPORT_SYMBOL vmlinux 0xd3eaf1ed devlink_dpipe_entry_clear +EXPORT_SYMBOL vmlinux 0xd3fdb597 vfs_get_link +EXPORT_SYMBOL vmlinux 0xd406d266 fb_mode_is_equal +EXPORT_SYMBOL vmlinux 0xd4128aaf mark_buffer_async_write +EXPORT_SYMBOL vmlinux 0xd42a3700 vmf_insert_mixed_prot +EXPORT_SYMBOL vmlinux 0xd430156a simple_write_begin +EXPORT_SYMBOL vmlinux 0xd44f194c __dev_kfree_skb_irq +EXPORT_SYMBOL vmlinux 0xd457337d secpath_set +EXPORT_SYMBOL vmlinux 0xd457cf2c input_open_device +EXPORT_SYMBOL vmlinux 0xd45cc6ca bin2hex +EXPORT_SYMBOL vmlinux 0xd45de306 mini_qdisc_pair_swap +EXPORT_SYMBOL vmlinux 0xd47947ff __x86_retpoline_r12 +EXPORT_SYMBOL vmlinux 0xd4835ef8 dmi_check_system +EXPORT_SYMBOL vmlinux 0xd4a52f21 nvdimm_bus_unlock +EXPORT_SYMBOL vmlinux 0xd4a62b06 tty_check_change +EXPORT_SYMBOL vmlinux 0xd4b152b6 add_watch_to_object +EXPORT_SYMBOL vmlinux 0xd4bb4a82 inet6addr_validator_notifier_call_chain +EXPORT_SYMBOL vmlinux 0xd4c9579b devfreq_add_governor +EXPORT_SYMBOL vmlinux 0xd4c95ae6 netdev_master_upper_dev_get_rcu +EXPORT_SYMBOL vmlinux 0xd4d1983c udplite_table +EXPORT_SYMBOL vmlinux 0xd4df5aba configfs_register_group +EXPORT_SYMBOL vmlinux 0xd4f4e9c0 may_umount +EXPORT_SYMBOL vmlinux 0xd4fa5a87 __kfifo_dma_out_prepare +EXPORT_SYMBOL vmlinux 0xd5033c6b i2c_del_driver +EXPORT_SYMBOL vmlinux 0xd5053a6e tcf_action_dump_1 +EXPORT_SYMBOL vmlinux 0xd5263820 mb_cache_destroy +EXPORT_SYMBOL vmlinux 0xd53462fb con_is_bound +EXPORT_SYMBOL vmlinux 0xd5346bfc acpi_get_possible_resources +EXPORT_SYMBOL vmlinux 0xd56eab70 udp6_set_csum +EXPORT_SYMBOL vmlinux 0xd573bcf1 __nd_driver_register +EXPORT_SYMBOL vmlinux 0xd5889830 __tcf_em_tree_match +EXPORT_SYMBOL vmlinux 0xd58b714b pskb_extract +EXPORT_SYMBOL vmlinux 0xd59ede75 to_nd_btt +EXPORT_SYMBOL vmlinux 0xd5a145ad devm_pci_remap_iospace +EXPORT_SYMBOL vmlinux 0xd5aa3e1f lock_sock_fast +EXPORT_SYMBOL vmlinux 0xd5b3d0d5 xxh64_copy_state +EXPORT_SYMBOL vmlinux 0xd5b5ec73 jbd2_journal_abort +EXPORT_SYMBOL vmlinux 0xd5beb778 migrate_page_copy +EXPORT_SYMBOL vmlinux 0xd5c3a77b gro_find_receive_by_type +EXPORT_SYMBOL vmlinux 0xd5e37232 phy_free_interrupt +EXPORT_SYMBOL vmlinux 0xd5e8c7f4 agp_generic_destroy_page +EXPORT_SYMBOL vmlinux 0xd5e996d5 put_disk_and_module +EXPORT_SYMBOL vmlinux 0xd5f04d4b input_mt_destroy_slots +EXPORT_SYMBOL vmlinux 0xd5fd90f1 prepare_to_wait +EXPORT_SYMBOL vmlinux 0xd6042e37 complete_request_key +EXPORT_SYMBOL vmlinux 0xd604d2a7 inet6_unregister_icmp_sender +EXPORT_SYMBOL vmlinux 0xd60736ec gf128mul_free_64k +EXPORT_SYMBOL vmlinux 0xd6267844 locks_delete_block +EXPORT_SYMBOL vmlinux 0xd62ecd49 rps_sock_flow_table +EXPORT_SYMBOL vmlinux 0xd63676b9 abx500_startup_irq_enabled +EXPORT_SYMBOL vmlinux 0xd63fd8d1 utf8nagemax +EXPORT_SYMBOL vmlinux 0xd643239a acpi_leave_sleep_state +EXPORT_SYMBOL vmlinux 0xd645891b pm860x_set_bits +EXPORT_SYMBOL vmlinux 0xd64b54bb find_get_pages_range_tag +EXPORT_SYMBOL vmlinux 0xd65bc062 vme_register_bridge +EXPORT_SYMBOL vmlinux 0xd688716b dm_kcopyd_client_create +EXPORT_SYMBOL vmlinux 0xd689de85 of_find_mipi_dsi_device_by_node +EXPORT_SYMBOL vmlinux 0xd68c5a1f adjust_resource +EXPORT_SYMBOL vmlinux 0xd68cfa21 xfrm_policy_destroy +EXPORT_SYMBOL vmlinux 0xd691c6a9 unregister_sysctl_table +EXPORT_SYMBOL vmlinux 0xd6a91f54 twl_i2c_read +EXPORT_SYMBOL vmlinux 0xd6b2ed5f generate_pm_trace +EXPORT_SYMBOL vmlinux 0xd6b33026 cpu_khz +EXPORT_SYMBOL vmlinux 0xd6c2ec70 flow_block_cb_setup_simple +EXPORT_SYMBOL vmlinux 0xd6d10f6f jbd2_journal_force_commit +EXPORT_SYMBOL vmlinux 0xd6dff880 flow_indr_dev_setup_offload +EXPORT_SYMBOL vmlinux 0xd6eaaea1 full_name_hash +EXPORT_SYMBOL vmlinux 0xd6ebe9e5 request_firmware_nowait +EXPORT_SYMBOL vmlinux 0xd6ed62ac pps_event +EXPORT_SYMBOL vmlinux 0xd6ee688f vmalloc +EXPORT_SYMBOL vmlinux 0xd6fde043 is_module_sig_enforced +EXPORT_SYMBOL vmlinux 0xd70d35a1 gf128mul_4k_bbe +EXPORT_SYMBOL vmlinux 0xd70f62b6 acpi_os_execute +EXPORT_SYMBOL vmlinux 0xd714bc60 sock_alloc_file +EXPORT_SYMBOL vmlinux 0xd738ca1b phy_unregister_fixup_for_uid +EXPORT_SYMBOL vmlinux 0xd74aba64 inet_put_port +EXPORT_SYMBOL vmlinux 0xd76fbf45 xfrm_replay_seqhi +EXPORT_SYMBOL vmlinux 0xd7783f46 tty_kref_put +EXPORT_SYMBOL vmlinux 0xd7c0a3a5 ipmr_rule_default +EXPORT_SYMBOL vmlinux 0xd7d22694 skb_checksum_trimmed +EXPORT_SYMBOL vmlinux 0xd7d280ad irq_poll_complete +EXPORT_SYMBOL vmlinux 0xd7dd777b reserve_perfctr_nmi +EXPORT_SYMBOL vmlinux 0xd7e123ae pci_enable_msi +EXPORT_SYMBOL vmlinux 0xd7e56a4e simple_strtoll +EXPORT_SYMBOL vmlinux 0xd7eb324c sock_bind_add +EXPORT_SYMBOL vmlinux 0xd7ebf7d7 dev_addr_del +EXPORT_SYMBOL vmlinux 0xd80bfb0d xfrm_state_register_afinfo +EXPORT_SYMBOL vmlinux 0xd80ddb73 end_buffer_write_sync +EXPORT_SYMBOL vmlinux 0xd8459e42 tcf_exts_validate +EXPORT_SYMBOL vmlinux 0xd846c315 acpi_write_bit_register +EXPORT_SYMBOL vmlinux 0xd8602b6a tun_is_xdp_frame +EXPORT_SYMBOL vmlinux 0xd861041c cdrom_media_changed +EXPORT_SYMBOL vmlinux 0xd87d6540 pcie_port_service_register +EXPORT_SYMBOL vmlinux 0xd8822aca posix_acl_update_mode +EXPORT_SYMBOL vmlinux 0xd8822e90 path_is_under +EXPORT_SYMBOL vmlinux 0xd8850d89 pci_msi_vec_count +EXPORT_SYMBOL vmlinux 0xd89da37f movable_zone +EXPORT_SYMBOL vmlinux 0xd8a994eb scsi_extd_sense_format +EXPORT_SYMBOL vmlinux 0xd8cfd9da vlan_filter_push_vids +EXPORT_SYMBOL vmlinux 0xd8df08ac acpi_handle_printk +EXPORT_SYMBOL vmlinux 0xd8eb5d64 iw_handler_set_thrspy +EXPORT_SYMBOL vmlinux 0xd8f16b28 simple_transaction_set +EXPORT_SYMBOL vmlinux 0xd90cb249 ZSTD_getBlockSizeMax +EXPORT_SYMBOL vmlinux 0xd92deb6b acpi_evaluate_object +EXPORT_SYMBOL vmlinux 0xd942a741 seg6_hmac_info_add +EXPORT_SYMBOL vmlinux 0xd9491c14 xa_destroy +EXPORT_SYMBOL vmlinux 0xd971c6c4 xen_arch_register_cpu +EXPORT_SYMBOL vmlinux 0xd979a547 __x86_indirect_thunk_rdi +EXPORT_SYMBOL vmlinux 0xd985dc99 mempool_free_pages +EXPORT_SYMBOL vmlinux 0xd98657ff sock_i_ino +EXPORT_SYMBOL vmlinux 0xd9a5ea54 __init_waitqueue_head +EXPORT_SYMBOL vmlinux 0xd9b85ef6 lockref_get +EXPORT_SYMBOL vmlinux 0xd9cc4251 tcp_shutdown +EXPORT_SYMBOL vmlinux 0xd9d1990e d_move +EXPORT_SYMBOL vmlinux 0xd9d8fd16 register_restart_handler +EXPORT_SYMBOL vmlinux 0xd9d952d1 crypto_aes_sbox +EXPORT_SYMBOL vmlinux 0xd9da60be netdev_name_node_alt_create +EXPORT_SYMBOL vmlinux 0xd9e8aee7 refcount_dec_and_lock +EXPORT_SYMBOL vmlinux 0xd9e9bcd1 vga_switcheroo_register_handler +EXPORT_SYMBOL vmlinux 0xda03b371 page_pool_create +EXPORT_SYMBOL vmlinux 0xda1ddef1 acpi_mark_gpe_for_wake +EXPORT_SYMBOL vmlinux 0xda26b8ea __irq_regs +EXPORT_SYMBOL vmlinux 0xda277b5e scsi_device_put +EXPORT_SYMBOL vmlinux 0xda3498d7 phy_request_interrupt +EXPORT_SYMBOL vmlinux 0xda3d10a8 security_tun_dev_open +EXPORT_SYMBOL vmlinux 0xda48c304 qdisc_hash_add +EXPORT_SYMBOL vmlinux 0xda4dcbff vm_insert_pages +EXPORT_SYMBOL vmlinux 0xda4e6b05 netdev_has_upper_dev +EXPORT_SYMBOL vmlinux 0xda5b742c pci_biosrom_size +EXPORT_SYMBOL vmlinux 0xda64bc54 inet_bind +EXPORT_SYMBOL vmlinux 0xda6f22a5 __pskb_copy_fclone +EXPORT_SYMBOL vmlinux 0xda72a7ec ZSTD_nextInputType +EXPORT_SYMBOL vmlinux 0xda872864 security_locked_down +EXPORT_SYMBOL vmlinux 0xda89ea3b ip_idents_reserve +EXPORT_SYMBOL vmlinux 0xda9fc7ae kstrtobool_from_user +EXPORT_SYMBOL vmlinux 0xdaa566ab kernel_recvmsg +EXPORT_SYMBOL vmlinux 0xdaadf6f4 __netlink_kernel_create +EXPORT_SYMBOL vmlinux 0xdaafcb66 dev_get_by_name +EXPORT_SYMBOL vmlinux 0xdabfc34d napi_get_frags +EXPORT_SYMBOL vmlinux 0xdac4913a bitmap_allocate_region +EXPORT_SYMBOL vmlinux 0xdad13544 ptrs_per_p4d +EXPORT_SYMBOL vmlinux 0xdaed7bc0 phy_ethtool_get_wol +EXPORT_SYMBOL vmlinux 0xdb053d82 inet_protos +EXPORT_SYMBOL vmlinux 0xdb16b170 topology_phys_to_logical_pkg +EXPORT_SYMBOL vmlinux 0xdb1be93f blk_integrity_merge_bio +EXPORT_SYMBOL vmlinux 0xdb49319d netdev_notice +EXPORT_SYMBOL vmlinux 0xdb4f1ae5 param_set_int +EXPORT_SYMBOL vmlinux 0xdb55c076 radix_tree_iter_resume +EXPORT_SYMBOL vmlinux 0xdb5d97b1 filemap_fault +EXPORT_SYMBOL vmlinux 0xdb68bbad rfkill_destroy +EXPORT_SYMBOL vmlinux 0xdb716725 truncate_setsize +EXPORT_SYMBOL vmlinux 0xdb760f52 __kfifo_free +EXPORT_SYMBOL vmlinux 0xdb7847ca __cgroup_bpf_run_filter_sock_ops +EXPORT_SYMBOL vmlinux 0xdb95e185 intel_scu_ipc_dev_command_with_size +EXPORT_SYMBOL vmlinux 0xdba49cb8 blk_queue_virt_boundary +EXPORT_SYMBOL vmlinux 0xdbccf8ad clocksource_unregister +EXPORT_SYMBOL vmlinux 0xdbcf041a acpi_install_address_space_handler +EXPORT_SYMBOL vmlinux 0xdbdf6c92 ioport_resource +EXPORT_SYMBOL vmlinux 0xdbf17652 _raw_spin_lock +EXPORT_SYMBOL vmlinux 0xdc01a455 pcim_iomap_regions +EXPORT_SYMBOL vmlinux 0xdc14eda7 pci_pci_problems +EXPORT_SYMBOL vmlinux 0xdc256979 devm_of_iomap +EXPORT_SYMBOL vmlinux 0xdc2603f6 __cancel_dirty_page +EXPORT_SYMBOL vmlinux 0xdc3eebfa netdev_class_remove_file_ns +EXPORT_SYMBOL vmlinux 0xdc49c198 reciprocal_value_adv +EXPORT_SYMBOL vmlinux 0xdc512134 backlight_register_notifier +EXPORT_SYMBOL vmlinux 0xdc55d6de read_cache_page +EXPORT_SYMBOL vmlinux 0xdc5736d5 acpi_register_ioapic +EXPORT_SYMBOL vmlinux 0xdc5d1b1f __blk_rq_map_sg +EXPORT_SYMBOL vmlinux 0xdc6433a9 dev_graft_qdisc +EXPORT_SYMBOL vmlinux 0xdc695cd9 flow_rule_match_enc_keyid +EXPORT_SYMBOL vmlinux 0xdc7b1af3 fs_lookup_param +EXPORT_SYMBOL vmlinux 0xdc856911 mipi_dsi_host_register +EXPORT_SYMBOL vmlinux 0xdc89b802 wait_for_key_construction +EXPORT_SYMBOL vmlinux 0xdc942253 dma_direct_unmap_page +EXPORT_SYMBOL vmlinux 0xdc9b9866 blk_mq_requeue_request +EXPORT_SYMBOL vmlinux 0xdcb1ffeb dget_parent +EXPORT_SYMBOL vmlinux 0xdcb95b46 devm_ioremap_resource +EXPORT_SYMBOL vmlinux 0xdcb9db0b kernel_sendmsg_locked +EXPORT_SYMBOL vmlinux 0xdce153cc alloc_skb_with_frags +EXPORT_SYMBOL vmlinux 0xdce55c98 __x86_retpoline_rax +EXPORT_SYMBOL vmlinux 0xdd18a993 acpi_check_dsm +EXPORT_SYMBOL vmlinux 0xdd1c31e3 setup_arg_pages +EXPORT_SYMBOL vmlinux 0xdd2938b1 blk_mq_start_hw_queue +EXPORT_SYMBOL vmlinux 0xdd2c169b mb_cache_create +EXPORT_SYMBOL vmlinux 0xdd2fcee2 eth_get_headlen +EXPORT_SYMBOL vmlinux 0xdd31e432 ethtool_virtdev_set_link_ksettings +EXPORT_SYMBOL vmlinux 0xdd33b3b1 simple_empty +EXPORT_SYMBOL vmlinux 0xdd64e639 strscpy +EXPORT_SYMBOL vmlinux 0xdd65f5cc vfs_fadvise +EXPORT_SYMBOL vmlinux 0xdd69aefb pskb_trim_rcsum_slow +EXPORT_SYMBOL vmlinux 0xdd6ff3d8 pnp_get_resource +EXPORT_SYMBOL vmlinux 0xdd742d72 __sg_free_table +EXPORT_SYMBOL vmlinux 0xdd78fc18 dev_change_flags +EXPORT_SYMBOL vmlinux 0xdd79d38f set_pages_wb +EXPORT_SYMBOL vmlinux 0xdd7d4933 pci_prepare_to_sleep +EXPORT_SYMBOL vmlinux 0xdd7f91a0 eth_type_trans +EXPORT_SYMBOL vmlinux 0xdd8166a1 dma_fence_free +EXPORT_SYMBOL vmlinux 0xdd849d51 scsi_get_sense_info_fld +EXPORT_SYMBOL vmlinux 0xdd8be13a dquot_quotactl_sysfile_ops +EXPORT_SYMBOL vmlinux 0xdd95c56a phy_set_asym_pause +EXPORT_SYMBOL vmlinux 0xdda0404b __nlmsg_put +EXPORT_SYMBOL vmlinux 0xddaa1a22 devm_register_netdev +EXPORT_SYMBOL vmlinux 0xddad7952 acpi_dbg_level +EXPORT_SYMBOL vmlinux 0xddb17201 agp_generic_destroy_pages +EXPORT_SYMBOL vmlinux 0xddb84cc7 vm_map_ram +EXPORT_SYMBOL vmlinux 0xddbb7960 i2c_smbus_read_word_data +EXPORT_SYMBOL vmlinux 0xddcbe1f3 acpi_ut_value_exit +EXPORT_SYMBOL vmlinux 0xddd2d7ac abx500_get_register_page_interruptible +EXPORT_SYMBOL vmlinux 0xddf48820 migrate_page +EXPORT_SYMBOL vmlinux 0xddf6ad7a completion_done +EXPORT_SYMBOL vmlinux 0xde1e9082 blk_mq_alloc_tag_set +EXPORT_SYMBOL vmlinux 0xde248bda phy_attach +EXPORT_SYMBOL vmlinux 0xde280c52 blkdev_issue_discard +EXPORT_SYMBOL vmlinux 0xde293f9e add_wait_queue_exclusive +EXPORT_SYMBOL vmlinux 0xde3418d6 eth_header_cache_update +EXPORT_SYMBOL vmlinux 0xde3ce548 scsi_alloc_sgtables +EXPORT_SYMBOL vmlinux 0xde406007 inet_sk_set_state +EXPORT_SYMBOL vmlinux 0xde489aa4 unlock_two_nondirectories +EXPORT_SYMBOL vmlinux 0xde4d4ace dim_calc_stats +EXPORT_SYMBOL vmlinux 0xde4eeab5 __register_nmi_handler +EXPORT_SYMBOL vmlinux 0xde6876de wake_up_process +EXPORT_SYMBOL vmlinux 0xde7c18ea truncate_inode_pages +EXPORT_SYMBOL vmlinux 0xde80cd09 ioremap +EXPORT_SYMBOL vmlinux 0xde9b17ed agp3_generic_fetch_size +EXPORT_SYMBOL vmlinux 0xde9ef868 __sync_dirty_buffer +EXPORT_SYMBOL vmlinux 0xdeb22d94 input_register_handler +EXPORT_SYMBOL vmlinux 0xdeb9c604 phy_ethtool_ksettings_set +EXPORT_SYMBOL vmlinux 0xdebca193 bioset_exit +EXPORT_SYMBOL vmlinux 0xdec95eca dev_alloc_name +EXPORT_SYMBOL vmlinux 0xded1342d tty_port_open +EXPORT_SYMBOL vmlinux 0xded39a6b gen_kill_estimator +EXPORT_SYMBOL vmlinux 0xded6a415 acpi_get_object_info +EXPORT_SYMBOL vmlinux 0xdee365b0 _raw_write_trylock +EXPORT_SYMBOL vmlinux 0xdef24a11 vga_tryget +EXPORT_SYMBOL vmlinux 0xdef31f6f f_setown +EXPORT_SYMBOL vmlinux 0xdef53c43 flow_rule_match_tcp +EXPORT_SYMBOL vmlinux 0xdef7c893 fb_match_mode +EXPORT_SYMBOL vmlinux 0xdf2363a0 security_sk_classify_flow +EXPORT_SYMBOL vmlinux 0xdf269751 acpi_bus_get_status +EXPORT_SYMBOL vmlinux 0xdf2c2742 rb_last +EXPORT_SYMBOL vmlinux 0xdf327b5f security_cred_getsecid +EXPORT_SYMBOL vmlinux 0xdf36914b xa_find_after +EXPORT_SYMBOL vmlinux 0xdf54a8f7 netlink_unregister_notifier +EXPORT_SYMBOL vmlinux 0xdf566a59 __x86_indirect_thunk_r9 +EXPORT_SYMBOL vmlinux 0xdf59a17e inode_set_flags +EXPORT_SYMBOL vmlinux 0xdf6b082f proc_dointvec_jiffies +EXPORT_SYMBOL vmlinux 0xdf6b1f31 __skb_checksum +EXPORT_SYMBOL vmlinux 0xdf6fb5a4 pcim_iomap +EXPORT_SYMBOL vmlinux 0xdf88d45b mmc_can_discard +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 0xdfb14029 down_read_killable +EXPORT_SYMBOL vmlinux 0xdfcc992c current_work +EXPORT_SYMBOL vmlinux 0xdfda81c6 netdev_reset_tc +EXPORT_SYMBOL vmlinux 0xdfdcedc0 napi_consume_skb +EXPORT_SYMBOL vmlinux 0xdfdfa9e7 utf8nfdi +EXPORT_SYMBOL vmlinux 0xdff01179 page_pool_destroy +EXPORT_SYMBOL vmlinux 0xdff905e5 vme_slave_free +EXPORT_SYMBOL vmlinux 0xdffb744b frame_vector_to_pfns +EXPORT_SYMBOL vmlinux 0xdffc80fc vesa_modes +EXPORT_SYMBOL vmlinux 0xe001bf81 devfreq_monitor_resume +EXPORT_SYMBOL vmlinux 0xe005ad90 tty_register_ldisc +EXPORT_SYMBOL vmlinux 0xe02ba436 trace_print_hex_seq +EXPORT_SYMBOL vmlinux 0xe02bd334 xsk_umem_complete_tx +EXPORT_SYMBOL vmlinux 0xe02c9c92 __xa_erase +EXPORT_SYMBOL vmlinux 0xe033cb29 native_queued_spin_lock_slowpath +EXPORT_SYMBOL vmlinux 0xe03a689d dma_fence_array_ops +EXPORT_SYMBOL vmlinux 0xe03bec7e pci_scan_slot +EXPORT_SYMBOL vmlinux 0xe06312c9 netif_napi_del +EXPORT_SYMBOL vmlinux 0xe067d863 pci_reenable_device +EXPORT_SYMBOL vmlinux 0xe0732384 find_lock_entry +EXPORT_SYMBOL vmlinux 0xe07e5f44 acpi_reconfig_notifier_unregister +EXPORT_SYMBOL vmlinux 0xe0814095 blk_cleanup_queue +EXPORT_SYMBOL vmlinux 0xe082e88d acpi_check_address_range +EXPORT_SYMBOL vmlinux 0xe0857dff lookup_one_len_unlocked +EXPORT_SYMBOL vmlinux 0xe0875eb1 kstrtobool +EXPORT_SYMBOL vmlinux 0xe0955f76 utf8_casefold +EXPORT_SYMBOL vmlinux 0xe098b7ca netdev_adjacent_change_abort +EXPORT_SYMBOL vmlinux 0xe09bd9c9 inet_sendmsg +EXPORT_SYMBOL vmlinux 0xe0a19549 writeback_inodes_sb_nr +EXPORT_SYMBOL vmlinux 0xe0b13336 argv_free +EXPORT_SYMBOL vmlinux 0xe0b563b0 netif_napi_add +EXPORT_SYMBOL vmlinux 0xe0b9eed4 pci_set_power_state +EXPORT_SYMBOL vmlinux 0xe0dd827d pci_release_selected_regions +EXPORT_SYMBOL vmlinux 0xe0e33c85 agp3_generic_tlbflush +EXPORT_SYMBOL vmlinux 0xe0f40237 arp_xmit +EXPORT_SYMBOL vmlinux 0xe0f8d687 blk_alloc_queue +EXPORT_SYMBOL vmlinux 0xe10fa791 set_nlink +EXPORT_SYMBOL vmlinux 0xe113bbbc csum_partial +EXPORT_SYMBOL vmlinux 0xe11ca997 ZSTD_getDictID_fromDict +EXPORT_SYMBOL vmlinux 0xe11f866e mmc_request_done +EXPORT_SYMBOL vmlinux 0xe123f3d9 dma_fence_release +EXPORT_SYMBOL vmlinux 0xe12bda79 vme_dma_free_attribute +EXPORT_SYMBOL vmlinux 0xe138fb8c percpu_counter_add_batch +EXPORT_SYMBOL vmlinux 0xe13cd8a7 dmi_name_in_vendors +EXPORT_SYMBOL vmlinux 0xe13d5d07 kstrtou16_from_user +EXPORT_SYMBOL vmlinux 0xe1418134 path_get +EXPORT_SYMBOL vmlinux 0xe144cd59 dump_emit +EXPORT_SYMBOL vmlinux 0xe15014c3 mod_node_page_state +EXPORT_SYMBOL vmlinux 0xe15c5ce3 devm_release_resource +EXPORT_SYMBOL vmlinux 0xe165b547 ip6_fraglist_prepare +EXPORT_SYMBOL vmlinux 0xe178471c scsi_scan_target +EXPORT_SYMBOL vmlinux 0xe1a4f16a secure_ipv6_port_ephemeral +EXPORT_SYMBOL vmlinux 0xe1c21439 flush_signals +EXPORT_SYMBOL vmlinux 0xe1daef0a pci_irq_get_affinity +EXPORT_SYMBOL vmlinux 0xe1dcf64a audit_log_format +EXPORT_SYMBOL vmlinux 0xe1e6fac1 jbd2_journal_unlock_updates +EXPORT_SYMBOL vmlinux 0xe1e7e40c rtnl_nla_parse_ifla +EXPORT_SYMBOL vmlinux 0xe1ed698d _raw_write_lock_bh +EXPORT_SYMBOL vmlinux 0xe1ed8b1d serial8250_do_pm +EXPORT_SYMBOL vmlinux 0xe21c7806 jbd2_journal_ack_err +EXPORT_SYMBOL vmlinux 0xe21f18ac __genradix_iter_peek +EXPORT_SYMBOL vmlinux 0xe243bf5b sock_init_data +EXPORT_SYMBOL vmlinux 0xe246e6c9 mdiobus_scan +EXPORT_SYMBOL vmlinux 0xe25ee9d3 _raw_write_lock_irqsave +EXPORT_SYMBOL vmlinux 0xe273d75d alloc_cpu_rmap +EXPORT_SYMBOL vmlinux 0xe276c9c8 pagecache_isize_extended +EXPORT_SYMBOL vmlinux 0xe292b942 sock_wmalloc +EXPORT_SYMBOL vmlinux 0xe2b2e779 key_revoke +EXPORT_SYMBOL vmlinux 0xe2d3a39e skb_copy_datagram_from_iter +EXPORT_SYMBOL vmlinux 0xe2d5255a strcmp +EXPORT_SYMBOL vmlinux 0xe2e49a26 __napi_schedule_irqoff +EXPORT_SYMBOL vmlinux 0xe2ffeef3 scsi_req_init +EXPORT_SYMBOL vmlinux 0xe313e034 tcp_sendmsg +EXPORT_SYMBOL vmlinux 0xe32ab4d8 xxh64_digest +EXPORT_SYMBOL vmlinux 0xe32baefb netdev_lower_get_next_private +EXPORT_SYMBOL vmlinux 0xe34a3717 mark_buffer_dirty +EXPORT_SYMBOL vmlinux 0xe3623887 i2c_smbus_write_byte +EXPORT_SYMBOL vmlinux 0xe377cea0 xfrm_policy_flush +EXPORT_SYMBOL vmlinux 0xe3b8a290 phy_mac_interrupt +EXPORT_SYMBOL vmlinux 0xe3bd6f38 backlight_device_get_by_name +EXPORT_SYMBOL vmlinux 0xe3d857ea __cpu_active_mask +EXPORT_SYMBOL vmlinux 0xe3ec2f2b alloc_chrdev_region +EXPORT_SYMBOL vmlinux 0xe3ff2c41 get_random_u64 +EXPORT_SYMBOL vmlinux 0xe3fffae9 __x86_indirect_thunk_rbp +EXPORT_SYMBOL vmlinux 0xe40976c0 pnp_range_reserved +EXPORT_SYMBOL vmlinux 0xe40c37ea down_write_trylock +EXPORT_SYMBOL vmlinux 0xe411a48e vme_irq_free +EXPORT_SYMBOL vmlinux 0xe41476d9 ZSTD_getParams +EXPORT_SYMBOL vmlinux 0xe419bc99 iowrite32be +EXPORT_SYMBOL vmlinux 0xe4329092 __ctzdi2 +EXPORT_SYMBOL vmlinux 0xe43908d2 scsi_print_sense +EXPORT_SYMBOL vmlinux 0xe43a24b9 pci_remove_bus +EXPORT_SYMBOL vmlinux 0xe441e95a refcount_dec_not_one +EXPORT_SYMBOL vmlinux 0xe4502a18 xfrm_find_acq +EXPORT_SYMBOL vmlinux 0xe4600d12 pci_bus_assign_resources +EXPORT_SYMBOL vmlinux 0xe46423e0 __mod_zone_page_state +EXPORT_SYMBOL vmlinux 0xe47f6b6e vfs_parse_fs_string +EXPORT_SYMBOL vmlinux 0xe4832ff0 genphy_soft_reset +EXPORT_SYMBOL vmlinux 0xe484e35f ioread32 +EXPORT_SYMBOL vmlinux 0xe48a3b5f tc_setup_cb_reoffload +EXPORT_SYMBOL vmlinux 0xe4a98e25 netif_tx_wake_queue +EXPORT_SYMBOL vmlinux 0xe4d80bf4 acpi_enable +EXPORT_SYMBOL vmlinux 0xe4e7e284 pci_enable_wake +EXPORT_SYMBOL vmlinux 0xe4f180a3 get_user_pages_unlocked +EXPORT_SYMBOL vmlinux 0xe512345e inetdev_by_index +EXPORT_SYMBOL vmlinux 0xe52294c7 remap_vmalloc_range_partial +EXPORT_SYMBOL vmlinux 0xe523ad75 synchronize_irq +EXPORT_SYMBOL vmlinux 0xe52ac650 get_ipc_ns_exported +EXPORT_SYMBOL vmlinux 0xe540f38e fb_get_mode +EXPORT_SYMBOL vmlinux 0xe566c76c fb_find_mode +EXPORT_SYMBOL vmlinux 0xe578a226 xfrm_state_add +EXPORT_SYMBOL vmlinux 0xe57e59e8 nd_btt_version +EXPORT_SYMBOL vmlinux 0xe58090ca security_ib_endport_manage_subnet +EXPORT_SYMBOL vmlinux 0xe5867808 dlci_ioctl_set +EXPORT_SYMBOL vmlinux 0xe5876636 bmap +EXPORT_SYMBOL vmlinux 0xe590dea3 sk_busy_loop_end +EXPORT_SYMBOL vmlinux 0xe59cbaf3 ipv6_mc_check_mld +EXPORT_SYMBOL vmlinux 0xe5a9f3f7 zero_fill_bio_iter +EXPORT_SYMBOL vmlinux 0xe5bc9a53 slhc_free +EXPORT_SYMBOL vmlinux 0xe5c60bd2 percpu_counter_set +EXPORT_SYMBOL vmlinux 0xe5c78a99 do_blank_screen +EXPORT_SYMBOL vmlinux 0xe5ed4b51 nobh_writepage +EXPORT_SYMBOL vmlinux 0xe600546a security_binder_transaction +EXPORT_SYMBOL vmlinux 0xe60c8574 km_query +EXPORT_SYMBOL vmlinux 0xe613a798 inet_addr_is_any +EXPORT_SYMBOL vmlinux 0xe62bc1e6 pci_get_domain_bus_and_slot +EXPORT_SYMBOL vmlinux 0xe6379a9e inet_addr_type +EXPORT_SYMBOL vmlinux 0xe639c0fe simple_getattr +EXPORT_SYMBOL vmlinux 0xe643908a devm_register_reboot_notifier +EXPORT_SYMBOL vmlinux 0xe64951ea dump_truncate +EXPORT_SYMBOL vmlinux 0xe6497d53 mipi_dsi_dcs_set_display_brightness +EXPORT_SYMBOL vmlinux 0xe651c30c iov_iter_revert +EXPORT_SYMBOL vmlinux 0xe6526183 padata_free +EXPORT_SYMBOL vmlinux 0xe65424bb __skb_warn_lro_forwarding +EXPORT_SYMBOL vmlinux 0xe66edd0e migrate_page_states +EXPORT_SYMBOL vmlinux 0xe6786db0 set_create_files_as +EXPORT_SYMBOL vmlinux 0xe67bda61 netdev_lower_get_next_private_rcu +EXPORT_SYMBOL vmlinux 0xe691690b __frontswap_test +EXPORT_SYMBOL vmlinux 0xe691ac7f ZSTD_decompressBegin +EXPORT_SYMBOL vmlinux 0xe6a420d5 netdev_master_upper_dev_get +EXPORT_SYMBOL vmlinux 0xe6a62b71 pci_iounmap +EXPORT_SYMBOL vmlinux 0xe6aa1f00 netif_skb_features +EXPORT_SYMBOL vmlinux 0xe6bb07c5 inet_csk_reqsk_queue_drop_and_put +EXPORT_SYMBOL vmlinux 0xe6c7e009 inet_frag_destroy +EXPORT_SYMBOL vmlinux 0xe6c85165 ps2_init +EXPORT_SYMBOL vmlinux 0xe6e66e5c dev_uc_flush +EXPORT_SYMBOL vmlinux 0xe6f4eef3 xattr_full_name +EXPORT_SYMBOL vmlinux 0xe70877d4 acpi_remove_sci_handler +EXPORT_SYMBOL vmlinux 0xe7257ab8 xa_store_range +EXPORT_SYMBOL vmlinux 0xe72a3586 to_nd_pfn +EXPORT_SYMBOL vmlinux 0xe7324b9a utf8nfdicf +EXPORT_SYMBOL vmlinux 0xe74c28b1 mount_bdev +EXPORT_SYMBOL vmlinux 0xe77a5d72 sdev_enable_disk_events +EXPORT_SYMBOL vmlinux 0xe787698f acpi_processor_register_performance +EXPORT_SYMBOL vmlinux 0xe79ad06d __skb_get_hash +EXPORT_SYMBOL vmlinux 0xe79dbfcc inode_init_owner +EXPORT_SYMBOL vmlinux 0xe7a02573 ida_alloc_range +EXPORT_SYMBOL vmlinux 0xe7a5be70 rproc_add +EXPORT_SYMBOL vmlinux 0xe7b00dfb __x86_indirect_thunk_r13 +EXPORT_SYMBOL vmlinux 0xe7d3c4c1 __tracepoint_kmem_cache_free +EXPORT_SYMBOL vmlinux 0xe7d427a5 genphy_read_lpa +EXPORT_SYMBOL vmlinux 0xe7d4daac seq_list_next +EXPORT_SYMBOL vmlinux 0xe7efa52a input_set_capability +EXPORT_SYMBOL vmlinux 0xe7f134d2 request_key_rcu +EXPORT_SYMBOL vmlinux 0xe7f94c3a page_pool_update_nid +EXPORT_SYMBOL vmlinux 0xe81ace0f scsi_compat_ioctl +EXPORT_SYMBOL vmlinux 0xe82445ce netdev_bonding_info_change +EXPORT_SYMBOL vmlinux 0xe829ed58 eth_header_parse_protocol +EXPORT_SYMBOL vmlinux 0xe82b68fc dquot_quota_on_mount +EXPORT_SYMBOL vmlinux 0xe83eb099 fbcon_update_vcs +EXPORT_SYMBOL vmlinux 0xe842b9f4 xsk_umem_consume_tx +EXPORT_SYMBOL vmlinux 0xe84bc4a4 tcp_openreq_init_rwin +EXPORT_SYMBOL vmlinux 0xe85aeca4 filemap_check_errors +EXPORT_SYMBOL vmlinux 0xe85f2123 acpi_tb_unload_table +EXPORT_SYMBOL vmlinux 0xe86aaa53 blkdev_get_by_path +EXPORT_SYMBOL vmlinux 0xe8764aad vga_switcheroo_fini_domain_pm_ops +EXPORT_SYMBOL vmlinux 0xe88d86c8 tty_port_destroy +EXPORT_SYMBOL vmlinux 0xe893c11e jbd2_journal_force_commit_nested +EXPORT_SYMBOL vmlinux 0xe8965ab1 __sock_queue_rcv_skb +EXPORT_SYMBOL vmlinux 0xe897f27f serial8250_register_8250_port +EXPORT_SYMBOL vmlinux 0xe8b69e59 nvm_dev_dma_alloc +EXPORT_SYMBOL vmlinux 0xe8e74f62 vfs_mknod +EXPORT_SYMBOL vmlinux 0xe8ee6bfa acpi_bus_get_device +EXPORT_SYMBOL vmlinux 0xe8fbf4fa __alloc_bucket_spinlocks +EXPORT_SYMBOL vmlinux 0xe914e41e strcpy +EXPORT_SYMBOL vmlinux 0xe9275d68 ip_ct_attach +EXPORT_SYMBOL vmlinux 0xe938a6dc get_fs_type +EXPORT_SYMBOL vmlinux 0xe950f91a msi_desc_to_pci_dev +EXPORT_SYMBOL vmlinux 0xe953b21f get_next_ino +EXPORT_SYMBOL vmlinux 0xe95cdd1c give_up_console +EXPORT_SYMBOL vmlinux 0xe9616cd7 pps_lookup_dev +EXPORT_SYMBOL vmlinux 0xe96b98a7 param_ops_long +EXPORT_SYMBOL vmlinux 0xe9a5e67f intel_graphics_stolen_res +EXPORT_SYMBOL vmlinux 0xe9af7397 __xa_set_mark +EXPORT_SYMBOL vmlinux 0xe9bb6074 devm_free_irq +EXPORT_SYMBOL vmlinux 0xe9cb3c1a tso_start +EXPORT_SYMBOL vmlinux 0xe9d40a32 mipi_dsi_dcs_set_pixel_format +EXPORT_SYMBOL vmlinux 0xe9e59d77 i2c_smbus_write_block_data +EXPORT_SYMBOL vmlinux 0xe9e796c1 would_dump +EXPORT_SYMBOL vmlinux 0xe9e7ae7c tcp_sock_set_keepcnt +EXPORT_SYMBOL vmlinux 0xe9e8faeb efi_tpm_final_log_size +EXPORT_SYMBOL vmlinux 0xe9f7149c zlib_deflate_workspacesize +EXPORT_SYMBOL vmlinux 0xea11d76a tty_port_close +EXPORT_SYMBOL vmlinux 0xea15d0c7 sk_capable +EXPORT_SYMBOL vmlinux 0xea1893d7 __fib6_flush_trees +EXPORT_SYMBOL vmlinux 0xea1eebf4 trace_raw_output_prep +EXPORT_SYMBOL vmlinux 0xea231bdc down_write_killable +EXPORT_SYMBOL vmlinux 0xea2a0328 free_task +EXPORT_SYMBOL vmlinux 0xea3c8e4e scsilun_to_int +EXPORT_SYMBOL vmlinux 0xea4c84ae tcp_v4_do_rcv +EXPORT_SYMBOL vmlinux 0xea4ec7a1 nvm_register +EXPORT_SYMBOL vmlinux 0xea675578 tcf_idr_create +EXPORT_SYMBOL vmlinux 0xea6f9a36 zlib_deflate_dfltcc_enabled +EXPORT_SYMBOL vmlinux 0xea778fab sg_pcopy_to_buffer +EXPORT_SYMBOL vmlinux 0xea80dfe1 security_req_classify_flow +EXPORT_SYMBOL vmlinux 0xeab6f4c4 acpi_check_resource_conflict +EXPORT_SYMBOL vmlinux 0xeadf64e0 devm_devfreq_register_notifier +EXPORT_SYMBOL vmlinux 0xeae3dfd6 __const_udelay +EXPORT_SYMBOL vmlinux 0xeafa2c23 pci_claim_resource +EXPORT_SYMBOL vmlinux 0xeafc141f __posix_acl_chmod +EXPORT_SYMBOL vmlinux 0xeb130a07 pci_map_biosrom +EXPORT_SYMBOL vmlinux 0xeb1b16ae bdevname +EXPORT_SYMBOL vmlinux 0xeb1bd1d9 backlight_device_unregister +EXPORT_SYMBOL vmlinux 0xeb20a9be dm_kobject_release +EXPORT_SYMBOL vmlinux 0xeb233a45 __kmalloc +EXPORT_SYMBOL vmlinux 0xeb2391c9 gen_new_estimator +EXPORT_SYMBOL vmlinux 0xeb31aee8 acpi_trace_point +EXPORT_SYMBOL vmlinux 0xeb37101c audit_log_end +EXPORT_SYMBOL vmlinux 0xeb44339a free_pages_exact +EXPORT_SYMBOL vmlinux 0xeb60b047 xp_alloc +EXPORT_SYMBOL vmlinux 0xeb69ab19 dquot_get_state +EXPORT_SYMBOL vmlinux 0xeb7018ec unmap_mapping_range +EXPORT_SYMBOL vmlinux 0xeb7825dc blk_mq_complete_request +EXPORT_SYMBOL vmlinux 0xeb7f6046 acpi_get_devices +EXPORT_SYMBOL vmlinux 0xeb9117ae page_readlink +EXPORT_SYMBOL vmlinux 0xeb9e913d sgl_alloc_order +EXPORT_SYMBOL vmlinux 0xebb1dec2 xfrm_policy_bysel_ctx +EXPORT_SYMBOL vmlinux 0xebb22228 pcie_get_mps +EXPORT_SYMBOL vmlinux 0xebbe12f0 current_task +EXPORT_SYMBOL vmlinux 0xebc73100 stop_tty +EXPORT_SYMBOL vmlinux 0xebdf10f6 lease_get_mtime +EXPORT_SYMBOL vmlinux 0xebea80d6 qdisc_hash_del +EXPORT_SYMBOL vmlinux 0xebee5500 param_set_charp +EXPORT_SYMBOL vmlinux 0xec13c649 __blkdev_issue_zeroout +EXPORT_SYMBOL vmlinux 0xec1faa01 phy_do_ioctl +EXPORT_SYMBOL vmlinux 0xec237e4f xps_needed +EXPORT_SYMBOL vmlinux 0xec2b8a42 acpi_walk_namespace +EXPORT_SYMBOL vmlinux 0xec2e1c8f proc_doulongvec_minmax +EXPORT_SYMBOL vmlinux 0xec373695 __blockdev_direct_IO +EXPORT_SYMBOL vmlinux 0xec4d9e3a clk_get_sys +EXPORT_SYMBOL vmlinux 0xec508fec kernel_connect +EXPORT_SYMBOL vmlinux 0xec62013f pci_bus_add_devices +EXPORT_SYMBOL vmlinux 0xec807575 rproc_boot +EXPORT_SYMBOL vmlinux 0xec9302fd tcf_action_check_ctrlact +EXPORT_SYMBOL vmlinux 0xec9c2bb1 dev_close +EXPORT_SYMBOL vmlinux 0xecac8407 __memcpy +EXPORT_SYMBOL vmlinux 0xecb84e7c unpin_user_pages_dirty_lock +EXPORT_SYMBOL vmlinux 0xecd4d2ef iov_iter_gap_alignment +EXPORT_SYMBOL vmlinux 0xece784c2 rb_first +EXPORT_SYMBOL vmlinux 0xecead9cc dev_addr_init +EXPORT_SYMBOL vmlinux 0xeceb6c6a __sk_backlog_rcv +EXPORT_SYMBOL vmlinux 0xecfd68ef acpi_get_node +EXPORT_SYMBOL vmlinux 0xed00c4fb acpi_os_printf +EXPORT_SYMBOL vmlinux 0xed06652b d_alloc_anon +EXPORT_SYMBOL vmlinux 0xed103297 cdrom_number_of_slots +EXPORT_SYMBOL vmlinux 0xed222060 __scsi_iterate_devices +EXPORT_SYMBOL vmlinux 0xed29e7e4 amd_iommu_flush_tlb +EXPORT_SYMBOL vmlinux 0xed34ebbc acpi_any_gpe_status_set +EXPORT_SYMBOL vmlinux 0xed3f591b xfrm_if_register_cb +EXPORT_SYMBOL vmlinux 0xed40f64c pm_vt_switch_required +EXPORT_SYMBOL vmlinux 0xed55f929 acpi_os_unmap_generic_address +EXPORT_SYMBOL vmlinux 0xed59a3b9 __skb_recv_udp +EXPORT_SYMBOL vmlinux 0xed6cd224 blk_queue_bounce_limit +EXPORT_SYMBOL vmlinux 0xed6e6fc6 pin_user_pages_locked +EXPORT_SYMBOL vmlinux 0xed883d1d unregister_key_type +EXPORT_SYMBOL vmlinux 0xed90b08e fwnode_irq_get +EXPORT_SYMBOL vmlinux 0xed9e43ea tty_hangup +EXPORT_SYMBOL vmlinux 0xedb74235 clear_page_dirty_for_io +EXPORT_SYMBOL vmlinux 0xedbaee5e nla_strcmp +EXPORT_SYMBOL vmlinux 0xedc03953 iounmap +EXPORT_SYMBOL vmlinux 0xedd75569 __register_binfmt +EXPORT_SYMBOL vmlinux 0xede5097f skb_udp_tunnel_segment +EXPORT_SYMBOL vmlinux 0xede98b9b tcp_req_err +EXPORT_SYMBOL vmlinux 0xedead6ba netdev_features_change +EXPORT_SYMBOL vmlinux 0xedf7e9be security_path_rename +EXPORT_SYMBOL vmlinux 0xee25c371 fscrypt_free_bounce_page +EXPORT_SYMBOL vmlinux 0xee2674ca pci_map_rom +EXPORT_SYMBOL vmlinux 0xee2d0fc7 _local_bh_enable +EXPORT_SYMBOL vmlinux 0xee3ff956 crypto_sha1_update +EXPORT_SYMBOL vmlinux 0xee48ff84 iput +EXPORT_SYMBOL vmlinux 0xee58e970 fb_add_videomode +EXPORT_SYMBOL vmlinux 0xee7d7deb gen_pool_dma_zalloc +EXPORT_SYMBOL vmlinux 0xee7eb9e1 pnp_platform_devices +EXPORT_SYMBOL vmlinux 0xee87b31e insert_inode_locked +EXPORT_SYMBOL vmlinux 0xee8d74d6 jiffies64_to_nsecs +EXPORT_SYMBOL vmlinux 0xee91879b rb_first_postorder +EXPORT_SYMBOL vmlinux 0xeeae2239 mdiobus_register_device +EXPORT_SYMBOL vmlinux 0xeec0415e xdp_get_umem_from_qid +EXPORT_SYMBOL vmlinux 0xeece6404 __skb_gso_segment +EXPORT_SYMBOL vmlinux 0xeedc70af agp_generic_alloc_pages +EXPORT_SYMBOL vmlinux 0xeee36f00 phy_register_fixup_for_uid +EXPORT_SYMBOL vmlinux 0xeeee8d2d devm_kvasprintf +EXPORT_SYMBOL vmlinux 0xef04cffe mark_buffer_dirty_inode +EXPORT_SYMBOL vmlinux 0xef3abf26 configfs_remove_default_groups +EXPORT_SYMBOL vmlinux 0xef48663d vfs_dedupe_file_range +EXPORT_SYMBOL vmlinux 0xef6ffa22 pagecache_get_page +EXPORT_SYMBOL vmlinux 0xef7639a1 inet_getname +EXPORT_SYMBOL vmlinux 0xef9aedfc boot_option_idle_override +EXPORT_SYMBOL vmlinux 0xefaf2e4f tcf_queue_work +EXPORT_SYMBOL vmlinux 0xefcea2e7 acpi_warning +EXPORT_SYMBOL vmlinux 0xefd30512 __cpuhp_setup_state +EXPORT_SYMBOL vmlinux 0xefdcc4cd inode_nohighmem +EXPORT_SYMBOL vmlinux 0xefe4b5cd mipi_dsi_dcs_set_display_off +EXPORT_SYMBOL vmlinux 0xefe4f679 ZSTD_CCtxWorkspaceBound +EXPORT_SYMBOL vmlinux 0xefe84d47 get_disk_and_module +EXPORT_SYMBOL vmlinux 0xefe8713a proto_register +EXPORT_SYMBOL vmlinux 0xefebbd40 ioread64be_lo_hi +EXPORT_SYMBOL vmlinux 0xefecd46f dev_uc_add +EXPORT_SYMBOL vmlinux 0xefee932c acpi_get_data_full +EXPORT_SYMBOL vmlinux 0xeff608e0 kstrtos16_from_user +EXPORT_SYMBOL vmlinux 0xf0009fee put_pages_list +EXPORT_SYMBOL vmlinux 0xf00248d8 phy_read_paged +EXPORT_SYMBOL vmlinux 0xf008a885 seg6_hmac_init +EXPORT_SYMBOL vmlinux 0xf020de79 inet_csk_init_xmit_timers +EXPORT_SYMBOL vmlinux 0xf02aa937 wait_for_completion_interruptible_timeout +EXPORT_SYMBOL vmlinux 0xf02b1797 inet6_getname +EXPORT_SYMBOL vmlinux 0xf02f23cc nf_hook_slow +EXPORT_SYMBOL vmlinux 0xf056428b fb_firmware_edid +EXPORT_SYMBOL vmlinux 0xf05c32ad rdmsr_on_cpus +EXPORT_SYMBOL vmlinux 0xf065f629 ioread16be +EXPORT_SYMBOL vmlinux 0xf07cf6c8 jbd2_journal_inode_ranged_write +EXPORT_SYMBOL vmlinux 0xf08c67de napi_alloc_frag +EXPORT_SYMBOL vmlinux 0xf0915a7b pci_msix_vec_count +EXPORT_SYMBOL vmlinux 0xf0950fcc remove_conflicting_pci_framebuffers +EXPORT_SYMBOL vmlinux 0xf0961b22 key_validate +EXPORT_SYMBOL vmlinux 0xf09b5d9a get_zeroed_page +EXPORT_SYMBOL vmlinux 0xf0aa9e7c rproc_remove_subdev +EXPORT_SYMBOL vmlinux 0xf0f016c3 pci_release_region +EXPORT_SYMBOL vmlinux 0xf101da24 blk_pre_runtime_resume +EXPORT_SYMBOL vmlinux 0xf102033e slhc_remember +EXPORT_SYMBOL vmlinux 0xf108d11a may_umount_tree +EXPORT_SYMBOL vmlinux 0xf10de535 ioread8 +EXPORT_SYMBOL vmlinux 0xf10f7979 netlink_capable +EXPORT_SYMBOL vmlinux 0xf11543ff find_first_zero_bit +EXPORT_SYMBOL vmlinux 0xf12e8562 kfree_skb +EXPORT_SYMBOL vmlinux 0xf136a7ea mfd_remove_devices +EXPORT_SYMBOL vmlinux 0xf13c1e3d pm860x_page_reg_write +EXPORT_SYMBOL vmlinux 0xf1697a0a get_agp_version +EXPORT_SYMBOL vmlinux 0xf17f78b3 pmem_should_map_pages +EXPORT_SYMBOL vmlinux 0xf183272e skb_headers_offset_update +EXPORT_SYMBOL vmlinux 0xf1848ee2 acpi_install_sci_handler +EXPORT_SYMBOL vmlinux 0xf195c682 fb_invert_cmaps +EXPORT_SYMBOL vmlinux 0xf1969a8e __usecs_to_jiffies +EXPORT_SYMBOL vmlinux 0xf1a68107 acpi_processor_preregister_performance +EXPORT_SYMBOL vmlinux 0xf1bceaf9 clear_wb_congested +EXPORT_SYMBOL vmlinux 0xf1c41d07 i8042_remove_filter +EXPORT_SYMBOL vmlinux 0xf1d00628 __cpuhp_remove_state +EXPORT_SYMBOL vmlinux 0xf1da6244 sk_net_capable +EXPORT_SYMBOL vmlinux 0xf1db1704 nla_memcpy +EXPORT_SYMBOL vmlinux 0xf1e046cc panic +EXPORT_SYMBOL vmlinux 0xf1e46d15 pci_write_vpd +EXPORT_SYMBOL vmlinux 0xf1e98c74 avenrun +EXPORT_SYMBOL vmlinux 0xf2010097 vga_con +EXPORT_SYMBOL vmlinux 0xf2042a1c ip_options_compile +EXPORT_SYMBOL vmlinux 0xf21017d9 mutex_trylock +EXPORT_SYMBOL vmlinux 0xf216d53a fscrypt_put_encryption_info +EXPORT_SYMBOL vmlinux 0xf21c1d2a is_bad_inode +EXPORT_SYMBOL vmlinux 0xf21da62c ptp_clock_register +EXPORT_SYMBOL vmlinux 0xf2215f74 blk_finish_plug +EXPORT_SYMBOL vmlinux 0xf22347b5 sk_mc_loop +EXPORT_SYMBOL vmlinux 0xf2289939 cdrom_dummy_generic_packet +EXPORT_SYMBOL vmlinux 0xf2310278 dquot_alloc +EXPORT_SYMBOL vmlinux 0xf23fcb99 __kfifo_in +EXPORT_SYMBOL vmlinux 0xf2572d22 inet_del_offload +EXPORT_SYMBOL vmlinux 0xf27a880a register_filesystem +EXPORT_SYMBOL vmlinux 0xf28404cf devlink_dpipe_header_ipv6 +EXPORT_SYMBOL vmlinux 0xf28445bb mdiobus_get_phy +EXPORT_SYMBOL vmlinux 0xf28ed6e2 machine_to_phys_nr +EXPORT_SYMBOL vmlinux 0xf29403e5 acpi_install_table_handler +EXPORT_SYMBOL vmlinux 0xf29497f5 register_quota_format +EXPORT_SYMBOL vmlinux 0xf29d7c49 ethtool_op_get_ts_info +EXPORT_SYMBOL vmlinux 0xf29f8515 __kfifo_dma_out_prepare_r +EXPORT_SYMBOL vmlinux 0xf2b81b64 arch_io_reserve_memtype_wc +EXPORT_SYMBOL vmlinux 0xf2c1531b rproc_elf_find_loaded_rsc_table +EXPORT_SYMBOL vmlinux 0xf2c43f3f zlib_deflate +EXPORT_SYMBOL vmlinux 0xf2c603a9 pci_bus_size_bridges +EXPORT_SYMBOL vmlinux 0xf2da9db7 delete_from_page_cache +EXPORT_SYMBOL vmlinux 0xf2e5bd87 security_free_mnt_opts +EXPORT_SYMBOL vmlinux 0xf2f4cae0 flow_rule_match_meta +EXPORT_SYMBOL vmlinux 0xf2f53617 memregion_free +EXPORT_SYMBOL vmlinux 0xf30965ac iosf_mbi_register_pmic_bus_access_notifier +EXPORT_SYMBOL vmlinux 0xf30fc396 udp_gro_receive +EXPORT_SYMBOL vmlinux 0xf3107926 sha224_update +EXPORT_SYMBOL vmlinux 0xf333857a csum_and_copy_from_iter_full +EXPORT_SYMBOL vmlinux 0xf3341268 __clear_user +EXPORT_SYMBOL vmlinux 0xf346231f seq_list_start_head +EXPORT_SYMBOL vmlinux 0xf353a698 register_module_notifier +EXPORT_SYMBOL vmlinux 0xf356d515 dev_vprintk_emit +EXPORT_SYMBOL vmlinux 0xf3875091 tcp_mss_to_mtu +EXPORT_SYMBOL vmlinux 0xf389990a skb_find_text +EXPORT_SYMBOL vmlinux 0xf389fe60 __hw_addr_init +EXPORT_SYMBOL vmlinux 0xf39042a8 filp_open +EXPORT_SYMBOL vmlinux 0xf3916987 global_cursor_default +EXPORT_SYMBOL vmlinux 0xf3a57892 release_dentry_name_snapshot +EXPORT_SYMBOL vmlinux 0xf3b30a06 utf8version_latest +EXPORT_SYMBOL vmlinux 0xf3c7a3c4 neigh_carrier_down +EXPORT_SYMBOL vmlinux 0xf3e0e1df allocate_resource +EXPORT_SYMBOL vmlinux 0xf3e3c9ca inet_frag_reasm_prepare +EXPORT_SYMBOL vmlinux 0xf3e6402e __bitmap_equal +EXPORT_SYMBOL vmlinux 0xf3fb2231 bio_devname +EXPORT_SYMBOL vmlinux 0xf3ff78de neigh_resolve_output +EXPORT_SYMBOL vmlinux 0xf40e7a73 __xa_alloc +EXPORT_SYMBOL vmlinux 0xf4152e5f devm_clk_put +EXPORT_SYMBOL vmlinux 0xf4170b67 vfs_path_lookup +EXPORT_SYMBOL vmlinux 0xf4192713 nd_dev_to_uuid +EXPORT_SYMBOL vmlinux 0xf425eaeb __nla_reserve_64bit +EXPORT_SYMBOL vmlinux 0xf43d2caa acpi_remove_interface +EXPORT_SYMBOL vmlinux 0xf441ac43 ioread8_rep +EXPORT_SYMBOL vmlinux 0xf44a904a net_ns_barrier +EXPORT_SYMBOL vmlinux 0xf45bb138 skb_copy_and_csum_dev +EXPORT_SYMBOL vmlinux 0xf474c21c bitmap_print_to_pagebuf +EXPORT_SYMBOL vmlinux 0xf474fdcb kfree_const +EXPORT_SYMBOL vmlinux 0xf4a4901f noop_qdisc +EXPORT_SYMBOL vmlinux 0xf4a565fd wrmsr_on_cpus +EXPORT_SYMBOL vmlinux 0xf4a5c213 avail_to_resrv_perfctr_nmi_bit +EXPORT_SYMBOL vmlinux 0xf4b2b86e cgroup_bpf_enabled_key +EXPORT_SYMBOL vmlinux 0xf4b754fd acpi_resources_are_enforced +EXPORT_SYMBOL vmlinux 0xf4bdbeb9 __frontswap_invalidate_area +EXPORT_SYMBOL vmlinux 0xf4c6a598 kobject_put +EXPORT_SYMBOL vmlinux 0xf4c6ede7 ip6_frag_next +EXPORT_SYMBOL vmlinux 0xf4c779f1 dma_find_channel +EXPORT_SYMBOL vmlinux 0xf4db35bc stpcpy +EXPORT_SYMBOL vmlinux 0xf4e2baf0 key_alloc +EXPORT_SYMBOL vmlinux 0xf4ebf6ce sync_dirty_buffer +EXPORT_SYMBOL vmlinux 0xf4ec9c4e inet_csk_reqsk_queue_drop +EXPORT_SYMBOL vmlinux 0xf4f14de6 rtnl_trylock +EXPORT_SYMBOL vmlinux 0xf4f6e520 kmem_cache_create_usercopy +EXPORT_SYMBOL vmlinux 0xf4f7b623 key_unlink +EXPORT_SYMBOL vmlinux 0xf508148b devfreq_suspend_device +EXPORT_SYMBOL vmlinux 0xf52ccc2e dma_mmap_attrs +EXPORT_SYMBOL vmlinux 0xf53d4c26 qdisc_class_hash_destroy +EXPORT_SYMBOL vmlinux 0xf562e67f skb_push +EXPORT_SYMBOL vmlinux 0xf56dcac9 reuseport_attach_prog +EXPORT_SYMBOL vmlinux 0xf58fee69 register_gifconf +EXPORT_SYMBOL vmlinux 0xf591753d nf_hooks_needed +EXPORT_SYMBOL vmlinux 0xf5a20ed2 __genradix_prealloc +EXPORT_SYMBOL vmlinux 0xf5a5c84c msrs_alloc +EXPORT_SYMBOL vmlinux 0xf5b4df0e alloc_fcdev +EXPORT_SYMBOL vmlinux 0xf5c3b2ee agp_bridge +EXPORT_SYMBOL vmlinux 0xf5d36b1a devm_clk_get_optional +EXPORT_SYMBOL vmlinux 0xf5e5a87b hdmi_infoframe_pack_only +EXPORT_SYMBOL vmlinux 0xf5e7ea40 ktime_get_coarse_ts64 +EXPORT_SYMBOL vmlinux 0xf5eff2f3 udp6_seq_ops +EXPORT_SYMBOL vmlinux 0xf604c1b5 backlight_device_register +EXPORT_SYMBOL vmlinux 0xf60ab926 acpi_get_event_status +EXPORT_SYMBOL vmlinux 0xf610475f locks_copy_conflock +EXPORT_SYMBOL vmlinux 0xf6140b02 acpi_device_hid +EXPORT_SYMBOL vmlinux 0xf6142a10 inet_csk_accept +EXPORT_SYMBOL vmlinux 0xf638015e genphy_write_mmd_unsupported +EXPORT_SYMBOL vmlinux 0xf643d104 hsiphash_4u32 +EXPORT_SYMBOL vmlinux 0xf663b4d3 mount_nodev +EXPORT_SYMBOL vmlinux 0xf665f74f sock_load_diag_module +EXPORT_SYMBOL vmlinux 0xf66a65f5 tcf_exts_dump_stats +EXPORT_SYMBOL vmlinux 0xf681acfc hdmi_infoframe_unpack +EXPORT_SYMBOL vmlinux 0xf68285c0 register_inetaddr_notifier +EXPORT_SYMBOL vmlinux 0xf68d9930 param_get_ulong +EXPORT_SYMBOL vmlinux 0xf68e19a0 rproc_coredump_set_elf_info +EXPORT_SYMBOL vmlinux 0xf6a0d396 __dec_node_page_state +EXPORT_SYMBOL vmlinux 0xf6b27188 scsi_report_opcode +EXPORT_SYMBOL vmlinux 0xf6ba0674 __register_chrdev +EXPORT_SYMBOL vmlinux 0xf6bdf445 input_allocate_device +EXPORT_SYMBOL vmlinux 0xf6d75045 vfio_unpin_pages +EXPORT_SYMBOL vmlinux 0xf6deb781 neigh_destroy +EXPORT_SYMBOL vmlinux 0xf6e2ea45 dev_driver_string +EXPORT_SYMBOL vmlinux 0xf6ebc03b net_ratelimit +EXPORT_SYMBOL vmlinux 0xf6f9d58d init_on_free +EXPORT_SYMBOL vmlinux 0xf6fc8791 __bitmap_xor +EXPORT_SYMBOL vmlinux 0xf70281b8 wireless_send_event +EXPORT_SYMBOL vmlinux 0xf709f227 param_get_ullong +EXPORT_SYMBOL vmlinux 0xf71e3662 tcp_sync_mss +EXPORT_SYMBOL vmlinux 0xf738d1be register_blocking_lsm_notifier +EXPORT_SYMBOL vmlinux 0xf746a3ac dm_put_table_device +EXPORT_SYMBOL vmlinux 0xf7584a9c find_font +EXPORT_SYMBOL vmlinux 0xf7629bbd kern_unmount_array +EXPORT_SYMBOL vmlinux 0xf7709a6f mdio_device_create +EXPORT_SYMBOL vmlinux 0xf77337a1 hdmi_audio_infoframe_check +EXPORT_SYMBOL vmlinux 0xf77d53b5 ip_setsockopt +EXPORT_SYMBOL vmlinux 0xf77d88fa netlink_kernel_release +EXPORT_SYMBOL vmlinux 0xf789c525 nf_register_net_hooks +EXPORT_SYMBOL vmlinux 0xf79ca3bb acpi_remove_gpe_block +EXPORT_SYMBOL vmlinux 0xf79f8f03 set_bh_page +EXPORT_SYMBOL vmlinux 0xf7a3c18f iget_failed +EXPORT_SYMBOL vmlinux 0xf7a7403a xfrm4_rcv +EXPORT_SYMBOL vmlinux 0xf7accb40 inet6_del_offload +EXPORT_SYMBOL vmlinux 0xf7da6e6f acpi_unload_table +EXPORT_SYMBOL vmlinux 0xf7e07ed7 sg_miter_start +EXPORT_SYMBOL vmlinux 0xf7ed7133 deactivate_super +EXPORT_SYMBOL vmlinux 0xf7ef9a79 iosf_mbi_punit_release +EXPORT_SYMBOL vmlinux 0xf80aaba1 inet_get_local_port_range +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 0xf81940c7 dev_set_allmulti +EXPORT_SYMBOL vmlinux 0xf82abc1d isa_dma_bridge_buggy +EXPORT_SYMBOL vmlinux 0xf82b848d device_get_mac_address +EXPORT_SYMBOL vmlinux 0xf82ec573 rb_prev +EXPORT_SYMBOL vmlinux 0xf8362d44 seg6_hmac_info_lookup +EXPORT_SYMBOL vmlinux 0xf8386d97 cpumask_next_and +EXPORT_SYMBOL vmlinux 0xf8457bd0 input_mt_get_slot_by_key +EXPORT_SYMBOL vmlinux 0xf846e0db i2c_smbus_read_i2c_block_data +EXPORT_SYMBOL vmlinux 0xf84bd6ee bpf_stats_enabled_key +EXPORT_SYMBOL vmlinux 0xf8595510 _raw_read_lock_irq +EXPORT_SYMBOL vmlinux 0xf8753329 unregister_filesystem +EXPORT_SYMBOL vmlinux 0xf888ca21 sg_init_table +EXPORT_SYMBOL vmlinux 0xf8a9953b pcim_iomap_regions_request_all +EXPORT_SYMBOL vmlinux 0xf8bf8e22 ZSTD_DDictWorkspaceBound +EXPORT_SYMBOL vmlinux 0xf8d07858 bitmap_from_arr32 +EXPORT_SYMBOL vmlinux 0xf8d5a94c ppp_unregister_compressor +EXPORT_SYMBOL vmlinux 0xf8ddb312 vga_switcheroo_unlock_ddc +EXPORT_SYMBOL vmlinux 0xf8de9d98 mipi_dsi_device_register_full +EXPORT_SYMBOL vmlinux 0xf8e9637c sdev_disable_disk_events +EXPORT_SYMBOL vmlinux 0xf8f32c31 dev_mc_add_global +EXPORT_SYMBOL vmlinux 0xf8f34b8a devm_nvmem_cell_put +EXPORT_SYMBOL vmlinux 0xf8f5ea59 devm_mfd_add_devices +EXPORT_SYMBOL vmlinux 0xf8f61ebc wake_up_var +EXPORT_SYMBOL vmlinux 0xf9019506 pci_unmap_rom +EXPORT_SYMBOL vmlinux 0xf915179e refcount_dec_if_one +EXPORT_SYMBOL vmlinux 0xf91ccc99 cdev_device_add +EXPORT_SYMBOL vmlinux 0xf927a49f security_dentry_init_security +EXPORT_SYMBOL vmlinux 0xf9296311 inode_newsize_ok +EXPORT_SYMBOL vmlinux 0xf93fd09c fb_find_mode_cvt +EXPORT_SYMBOL vmlinux 0xf94bc8f4 bfifo_qdisc_ops +EXPORT_SYMBOL vmlinux 0xf9527efe vfs_iter_write +EXPORT_SYMBOL vmlinux 0xf971cea8 utf8len +EXPORT_SYMBOL vmlinux 0xf9722676 twl_i2c_write +EXPORT_SYMBOL vmlinux 0xf988a45a __task_pid_nr_ns +EXPORT_SYMBOL vmlinux 0xf9895f96 inet_proto_csum_replace16 +EXPORT_SYMBOL vmlinux 0xf9947e48 flow_rule_match_enc_ipv4_addrs +EXPORT_SYMBOL vmlinux 0xf995b1cd dev_deactivate +EXPORT_SYMBOL vmlinux 0xf9a482f9 msleep +EXPORT_SYMBOL vmlinux 0xf9ba9314 iov_iter_bvec +EXPORT_SYMBOL vmlinux 0xf9bca4ec mipi_dsi_host_unregister +EXPORT_SYMBOL vmlinux 0xf9c0b663 strlcat +EXPORT_SYMBOL vmlinux 0xf9d54d7e skb_queue_tail +EXPORT_SYMBOL vmlinux 0xf9e913b3 inet_del_protocol +EXPORT_SYMBOL vmlinux 0xf9eced44 LZ4_compress_fast_continue +EXPORT_SYMBOL vmlinux 0xf9f44cca skb_free_datagram +EXPORT_SYMBOL vmlinux 0xf9f63e10 flow_block_cb_incref +EXPORT_SYMBOL vmlinux 0xf9fd81eb nonseekable_open +EXPORT_SYMBOL vmlinux 0xfa08f4b8 __tracepoint_dma_fence_signaled +EXPORT_SYMBOL vmlinux 0xfa18a0e7 security_sk_clone +EXPORT_SYMBOL vmlinux 0xfa20879f i2c_smbus_read_byte +EXPORT_SYMBOL vmlinux 0xfa297415 acpi_map_pxm_to_node +EXPORT_SYMBOL vmlinux 0xfa34fdf0 generic_pipe_buf_try_steal +EXPORT_SYMBOL vmlinux 0xfa462b4a input_set_poll_interval +EXPORT_SYMBOL vmlinux 0xfa558ca5 inet_sk_rx_dst_set +EXPORT_SYMBOL vmlinux 0xfa56318e vga_get +EXPORT_SYMBOL vmlinux 0xfa599bb2 netlink_register_notifier +EXPORT_SYMBOL vmlinux 0xfa6111db dcb_ieee_getapp_dscp_prio_mask_map +EXPORT_SYMBOL vmlinux 0xfa615184 follow_up +EXPORT_SYMBOL vmlinux 0xfa63bbdf __hw_addr_unsync_dev +EXPORT_SYMBOL vmlinux 0xfa71c53d input_get_poll_interval +EXPORT_SYMBOL vmlinux 0xfa7ff3cc __netdev_alloc_skb +EXPORT_SYMBOL vmlinux 0xfa873ad0 prandom_seed +EXPORT_SYMBOL vmlinux 0xfaa1fdf7 __tracepoint_rdpmc +EXPORT_SYMBOL vmlinux 0xfab1c084 nd_btt_arena_is_valid +EXPORT_SYMBOL vmlinux 0xfab1ea50 dquot_resume +EXPORT_SYMBOL vmlinux 0xfab7d114 cad_pid +EXPORT_SYMBOL vmlinux 0xfab8c19a devm_request_threaded_irq +EXPORT_SYMBOL vmlinux 0xfac3e00a __x86_retpoline_r9 +EXPORT_SYMBOL vmlinux 0xfac8865f sysctl_wmem_max +EXPORT_SYMBOL vmlinux 0xfad1dab7 skb_copy_and_csum_datagram_msg +EXPORT_SYMBOL vmlinux 0xfaf0d073 simple_rename +EXPORT_SYMBOL vmlinux 0xfb0258e0 dev_get_phys_port_name +EXPORT_SYMBOL vmlinux 0xfb0eda5c dquot_free_inode +EXPORT_SYMBOL vmlinux 0xfb384d37 kasprintf +EXPORT_SYMBOL vmlinux 0xfb3fea1f skb_vlan_pop +EXPORT_SYMBOL vmlinux 0xfb481954 vprintk +EXPORT_SYMBOL vmlinux 0xfb578fc5 memset +EXPORT_SYMBOL vmlinux 0xfb5d334b security_inode_setsecctx +EXPORT_SYMBOL vmlinux 0xfb65f77f skb_dump +EXPORT_SYMBOL vmlinux 0xfb6af58d recalc_sigpending +EXPORT_SYMBOL vmlinux 0xfb703768 fbcon_rotate_ccw +EXPORT_SYMBOL vmlinux 0xfb746cc9 down_killable +EXPORT_SYMBOL vmlinux 0xfba6e09f param_ops_invbool +EXPORT_SYMBOL vmlinux 0xfba7ddd2 match_u64 +EXPORT_SYMBOL vmlinux 0xfbaaf01e console_lock +EXPORT_SYMBOL vmlinux 0xfbad3cf0 scsi_normalize_sense +EXPORT_SYMBOL vmlinux 0xfbb8a761 strscpy_pad +EXPORT_SYMBOL vmlinux 0xfbba8a85 inet_add_offload +EXPORT_SYMBOL vmlinux 0xfbc4f89e io_schedule_timeout +EXPORT_SYMBOL vmlinux 0xfbc93ae4 input_reset_device +EXPORT_SYMBOL vmlinux 0xfbcd3bc6 fbcon_set_tileops +EXPORT_SYMBOL vmlinux 0xfbd6b42b component_match_add_typed +EXPORT_SYMBOL vmlinux 0xfbda83f0 unregister_quota_format +EXPORT_SYMBOL vmlinux 0xfbe4ad33 pci_clear_master +EXPORT_SYMBOL vmlinux 0xfbe4d37a filemap_fdatawrite_range +EXPORT_SYMBOL vmlinux 0xfbe51518 scsi_rescan_device +EXPORT_SYMBOL vmlinux 0xfbe8ee28 acpi_get_table_by_index +EXPORT_SYMBOL vmlinux 0xfbf31236 skb_ext_add +EXPORT_SYMBOL vmlinux 0xfc15e547 blkdev_put +EXPORT_SYMBOL vmlinux 0xfc1d6581 sk_stream_wait_connect +EXPORT_SYMBOL vmlinux 0xfc336d2e __wake_up_bit +EXPORT_SYMBOL vmlinux 0xfc399557 utf8_load +EXPORT_SYMBOL vmlinux 0xfc39e32f ioport_unmap +EXPORT_SYMBOL vmlinux 0xfc4152fc ec_read +EXPORT_SYMBOL vmlinux 0xfc5755bd security_skb_classify_flow +EXPORT_SYMBOL vmlinux 0xfc5c46e2 acpi_buffer_to_resource +EXPORT_SYMBOL vmlinux 0xfc5ed577 xfrm_stateonly_find +EXPORT_SYMBOL vmlinux 0xfc7516af dst_cow_metrics_generic +EXPORT_SYMBOL vmlinux 0xfc7e2596 down_trylock +EXPORT_SYMBOL vmlinux 0xfc7f42e9 devfreq_monitor_suspend +EXPORT_SYMBOL vmlinux 0xfc7f76df gnet_stats_copy_basic +EXPORT_SYMBOL vmlinux 0xfc9c320a blk_rq_map_kern +EXPORT_SYMBOL vmlinux 0xfc9f4f6f simple_pin_fs +EXPORT_SYMBOL vmlinux 0xfca67699 con_set_default_unimap +EXPORT_SYMBOL vmlinux 0xfca9acf3 scsi_target_quiesce +EXPORT_SYMBOL vmlinux 0xfcb926cd kstrtouint_from_user +EXPORT_SYMBOL vmlinux 0xfcbd637b genphy_update_link +EXPORT_SYMBOL vmlinux 0xfcd1819a hdmi_spd_infoframe_check +EXPORT_SYMBOL vmlinux 0xfcd26179 udp_gro_complete +EXPORT_SYMBOL vmlinux 0xfcec0987 enable_irq +EXPORT_SYMBOL vmlinux 0xfd14b864 ping_prot +EXPORT_SYMBOL vmlinux 0xfd1b4a18 dev_getbyhwaddr_rcu +EXPORT_SYMBOL vmlinux 0xfd2d5b8d nvm_submit_io_sync +EXPORT_SYMBOL vmlinux 0xfd38389a scsi_host_get +EXPORT_SYMBOL vmlinux 0xfd401e4d tcf_action_set_ctrlact +EXPORT_SYMBOL vmlinux 0xfd42527c __x86_retpoline_r15 +EXPORT_SYMBOL vmlinux 0xfd4a0679 scsi_vpd_lun_id +EXPORT_SYMBOL vmlinux 0xfd627544 register_qdisc +EXPORT_SYMBOL vmlinux 0xfd64ae59 bioset_init +EXPORT_SYMBOL vmlinux 0xfd8122c0 xfrm6_protocol_deregister +EXPORT_SYMBOL vmlinux 0xfd89e4e5 key_payload_reserve +EXPORT_SYMBOL vmlinux 0xfd93ee35 ioremap_wc +EXPORT_SYMBOL vmlinux 0xfda9581f prandom_u32 +EXPORT_SYMBOL vmlinux 0xfdaa2aae pci_enable_device_io +EXPORT_SYMBOL vmlinux 0xfdb5a7c3 scsi_host_alloc +EXPORT_SYMBOL vmlinux 0xfdb6576f acpi_set_debugger_thread_id +EXPORT_SYMBOL vmlinux 0xfdb9b629 ioread32be +EXPORT_SYMBOL vmlinux 0xfdc3140c flow_rule_match_enc_ipv6_addrs +EXPORT_SYMBOL vmlinux 0xfdc3622b netdev_name_node_alt_destroy +EXPORT_SYMBOL vmlinux 0xfdc68794 fbcon_rotate_ud +EXPORT_SYMBOL vmlinux 0xfdcb4ed3 acpi_os_get_line +EXPORT_SYMBOL vmlinux 0xfdcc8a0e fb_find_best_display +EXPORT_SYMBOL vmlinux 0xfdd4216d pcibios_align_resource +EXPORT_SYMBOL vmlinux 0xfdf70093 ZSTD_CStreamOutSize +EXPORT_SYMBOL vmlinux 0xfdfb792f amd_iommu_pc_supported +EXPORT_SYMBOL vmlinux 0xfe029963 unregister_inetaddr_notifier +EXPORT_SYMBOL vmlinux 0xfe0ac1ce unregister_binfmt +EXPORT_SYMBOL vmlinux 0xfe1cbfbe dev_get_by_index_rcu +EXPORT_SYMBOL vmlinux 0xfe1d2e94 key_create_or_update +EXPORT_SYMBOL vmlinux 0xfe22c9d2 sock_queue_rcv_skb +EXPORT_SYMBOL vmlinux 0xfe263d39 make_kprojid +EXPORT_SYMBOL vmlinux 0xfe3628d8 mipi_dsi_dcs_write_buffer +EXPORT_SYMBOL vmlinux 0xfe3b6792 param_ops_ullong +EXPORT_SYMBOL vmlinux 0xfe416ce7 inet6_add_offload +EXPORT_SYMBOL vmlinux 0xfe487975 init_wait_entry +EXPORT_SYMBOL vmlinux 0xfe51a2af kernel_sock_shutdown +EXPORT_SYMBOL vmlinux 0xfe5d4bb2 sys_tz +EXPORT_SYMBOL vmlinux 0xfe6c8f7e prepare_to_swait_exclusive +EXPORT_SYMBOL vmlinux 0xfe6d7381 input_mt_assign_slots +EXPORT_SYMBOL vmlinux 0xfe7a71af twl6040_power +EXPORT_SYMBOL vmlinux 0xfe916dc6 hex_dump_to_buffer +EXPORT_SYMBOL vmlinux 0xfe9ebbbb acpi_osi_is_win8 +EXPORT_SYMBOL vmlinux 0xfea9f147 write_cache_pages +EXPORT_SYMBOL vmlinux 0xfeb5d0aa verify_spi_info +EXPORT_SYMBOL vmlinux 0xfec415ac block_is_partially_uptodate +EXPORT_SYMBOL vmlinux 0xfec8247a flow_block_cb_priv +EXPORT_SYMBOL vmlinux 0xfed0e447 inc_node_page_state +EXPORT_SYMBOL vmlinux 0xfed278f2 nd_device_register +EXPORT_SYMBOL vmlinux 0xfedcdb60 seq_hlist_next_percpu +EXPORT_SYMBOL vmlinux 0xfee30f01 param_set_long +EXPORT_SYMBOL vmlinux 0xfeebc7c4 __kfifo_from_user_r +EXPORT_SYMBOL vmlinux 0xfef4f5f4 dcache_dir_lseek +EXPORT_SYMBOL vmlinux 0xfefcb98e vme_dma_vme_attribute +EXPORT_SYMBOL vmlinux 0xff089d06 scsi_unblock_requests +EXPORT_SYMBOL vmlinux 0xff0fdf42 frontswap_register_ops +EXPORT_SYMBOL vmlinux 0xff1e9dd8 seq_list_start +EXPORT_SYMBOL vmlinux 0xff4b7f12 __scsi_device_lookup_by_target +EXPORT_SYMBOL vmlinux 0xff6878cf fb_default_cmap +EXPORT_SYMBOL vmlinux 0xff7ecef6 xfrm_state_walk +EXPORT_SYMBOL vmlinux 0xff8564e9 lock_sock_nested +EXPORT_SYMBOL vmlinux 0xff87cd18 lockref_get_not_dead +EXPORT_SYMBOL vmlinux 0xff8ef382 md_check_recovery +EXPORT_SYMBOL vmlinux 0xff97007c amd_iommu_domain_enable_v2 +EXPORT_SYMBOL vmlinux 0xff9c4b56 ZSTD_compressBound +EXPORT_SYMBOL vmlinux 0xffb7c514 ida_free +EXPORT_SYMBOL vmlinux 0xffc30c3a acpi_processor_power_init_bm_check +EXPORT_SYMBOL vmlinux 0xffc7668c ip_defrag +EXPORT_SYMBOL vmlinux 0xffcd7f49 iosf_mbi_punit_acquire +EXPORT_SYMBOL vmlinux 0xffe9fce8 d_make_root +EXPORT_SYMBOL vmlinux 0xffeedf6a delayed_work_timer_fn +EXPORT_SYMBOL_GPL arch/x86/crypto/camellia-aesni-avx-x86_64 0x19711697 camellia_xts_dec_16way +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 0x6f3a8de5 camellia_xts_enc_16way +EXPORT_SYMBOL_GPL arch/x86/crypto/camellia-aesni-avx-x86_64 0x8b44ee75 camellia_ecb_dec_16way +EXPORT_SYMBOL_GPL arch/x86/crypto/camellia-aesni-avx-x86_64 0x9056f10d camellia_xts_enc +EXPORT_SYMBOL_GPL arch/x86/crypto/camellia-aesni-avx-x86_64 0x9e600be1 xts_camellia_setkey +EXPORT_SYMBOL_GPL arch/x86/crypto/camellia-aesni-avx-x86_64 0xc00f725a camellia_ctr_16way +EXPORT_SYMBOL_GPL arch/x86/crypto/camellia-aesni-avx-x86_64 0xfea2b457 camellia_xts_dec +EXPORT_SYMBOL_GPL arch/x86/crypto/camellia-x86_64 0x0b901549 camellia_dec_blk_2way +EXPORT_SYMBOL_GPL arch/x86/crypto/camellia-x86_64 0x315d28f7 camellia_crypt_ctr_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 0xee61eb71 camellia_crypt_ctr +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/glue_helper 0x1e1dc832 glue_cbc_decrypt_req_128bit +EXPORT_SYMBOL_GPL arch/x86/crypto/glue_helper 0x30dafa64 glue_ecb_req_128bit +EXPORT_SYMBOL_GPL arch/x86/crypto/glue_helper 0x47c4e08f glue_xts_crypt_128bit_one +EXPORT_SYMBOL_GPL arch/x86/crypto/glue_helper 0x63f67411 glue_xts_req_128bit +EXPORT_SYMBOL_GPL arch/x86/crypto/glue_helper 0xac4570af glue_ctr_req_128bit +EXPORT_SYMBOL_GPL arch/x86/crypto/glue_helper 0xb80e5d04 glue_cbc_encrypt_req_128bit +EXPORT_SYMBOL_GPL arch/x86/crypto/serpent-avx-x86_64 0x09c17e6f xts_serpent_setkey +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/serpent-avx-x86_64 0x5cea0c9c serpent_ctr_8way_avx +EXPORT_SYMBOL_GPL arch/x86/crypto/serpent-avx-x86_64 0x99341b41 serpent_xts_dec_8way_avx +EXPORT_SYMBOL_GPL arch/x86/crypto/serpent-avx-x86_64 0xa0100109 serpent_xts_dec +EXPORT_SYMBOL_GPL arch/x86/crypto/serpent-avx-x86_64 0xb75988d7 __serpent_crypt_ctr +EXPORT_SYMBOL_GPL arch/x86/crypto/serpent-avx-x86_64 0xbdfa6cc0 serpent_xts_enc_8way_avx +EXPORT_SYMBOL_GPL arch/x86/crypto/serpent-avx-x86_64 0xcee44453 serpent_xts_enc +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 0x2c7b3458 twofish_enc_blk_ctr +EXPORT_SYMBOL_GPL arch/x86/crypto/twofish-x86_64-3way 0x31ddef7a twofish_enc_blk_ctr_3way +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 0x01977119 kvm_find_cpuid_entry +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x0229505a kvm_mmu_unload +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x03a764e1 kvm_set_memory_region +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x041c6f79 kvm_arch_start_assignment +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x0a6fc860 kvm_handle_page_fault +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x0a81dcc4 kvm_hv_get_assist_page +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x0bf8a7ed kvm_vcpu_yield_to +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x0d8f4740 kvm_mce_cap_supported +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x0d98d956 kvm_put_kvm +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x0e988de2 kvm_cpuid +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x0eaf8a0b vcpu_put +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x10204fda kvm_apic_set_eoi_accelerated +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x10324bec kvm_arch_end_assignment +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x11ac9c44 kvm_vcpu_write_guest +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x11bedb29 kvm_read_guest +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x1235000a kvm_tsc_scaling_ratio_frac_bits +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x130fd155 supported_xss +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x159b8d5e host_efer +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x15c0e555 kvm_vcpu_exit_request +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x15f5cf6a __tracepoint_kvm_nested_vmexit_inject +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x170b49ca kvm_mmu_page_fault +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x18985a37 kvm_flush_remote_tlbs +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x19e29fe4 kvm_vcpu_gfn_to_hva +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x1b0056e9 gfn_to_pfn_prot +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x1b0e8a66 kvm_cpu_has_interrupt +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x1c49cf4b gfn_to_pfn +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x1cf65ffc kvm_max_guest_tsc_khz +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x1d013832 kvm_enable_efer_bits +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x1d780b8c kvm_queue_exception_p +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x1da883e7 kvm_lapic_set_eoi +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x1db1c372 enable_vmware_backdoor +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x1de646da __tracepoint_kvm_avic_ga_log +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x1f7b9f98 kvm_write_tsc +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x20c02982 kvm_emulate_wrmsr +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x20f7ffb3 pdptrs_changed +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x2187720b kvm_intr_is_single_vcpu +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x234cc011 kvm_write_guest_page +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x237a69c3 kvm_valid_efer +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x25a5a057 kvm_require_cpl +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x26a4bd7e kvm_vcpu_halt +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x27046576 kvm_exit +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x282af96c kvm_emulate_hypercall +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x28411ed7 kvm_max_tsc_scaling_ratio +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x28647eef kvm_rdpmc +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x28a9b00a kvm_apic_write_nodecode +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x28dc5b7c kvm_init_shadow_ept_mmu +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x294d4208 kvm_set_rflags +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x2a500bc5 kvm_cpu_get_interrupt +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x2af2e19d kvm_inject_pending_timer_irqs +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x2d0c8745 kvm_mtrr_valid +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x2d82cc24 kvm_spec_ctrl_test_value +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x2f0c7961 load_pdptrs +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x2f98faf4 vcpu_load +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x2fb4fe19 kvm_mmu_load +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x32f13428 gfn_to_pfn_memslot +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x33389f31 kvm_init_mmu +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x341dc606 kvm_read_guest_page +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x34829410 kvm_read_guest_page_mmu +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x35c82a62 kvm_inject_nmi +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x36c162aa kvm_update_dr7 +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x3846696c kvm_apic_update_irr +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x39373bd9 kvm_read_l1_tsc +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x39fd83db halt_poll_ns_shrink +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x3ac97409 kvm_mmu_sync_roots +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x3cc82f45 __tracepoint_kvm_cr +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x3d5d5cd2 kvm_io_bus_get_dev +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x3e9f34f4 kvm_page_track_register_notifier +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x40313af7 kvm_lapic_reg_read +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x40793abf kvm_gfn_to_hva_cache_init +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x42546196 kvm_is_visible_gfn +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x447a02cb kvm_vcpu_is_reset_bsp +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x47144e3f kvm_requeue_exception +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x4850da0b kvm_arch_has_noncoherent_dma +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x485cd7f6 kvm_rebooting +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x4a65bead kvm_mmu_slot_leaf_clear_dirty +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x4a82d1b9 kvm_scale_tsc +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x4b1312de kvm_get_dr +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x4b311f73 kvm_put_kvm_no_destroy +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x4c0b5687 kvm_vcpu_block +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x4e3fd1b4 kvm_release_pfn_clean +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x4e96e334 kvm_vcpu_read_guest_atomic +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x4eaae274 kvm_deliver_exception_payload +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x4ee37e36 kvm_get_linear_rip +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x50077677 kvm_vcpu_map +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x5209b0ef kvm_get_msr_common +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x537c0b64 gfn_to_hva +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x538fa2d3 kvm_mmu_new_pgd +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x53e5aee2 kvm_init +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x5498aa2a kvm_slot_page_track_add_page +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x5552bd49 kvm_read_guest_cached +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x55abd028 kvm_vcpu_destroy +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x58611c14 kvm_lapic_reg_write +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x59591d9a reprogram_counter +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x598e8a17 __tracepoint_kvm_nested_vmrun +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x59e640c0 halt_poll_ns +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x5d996b31 kvm_set_cpu_caps +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x5ee67d34 kvm_read_guest_offset_cached +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x5f7f2f05 kvm_set_cr4 +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x5fb8848b halt_poll_ns_grow_start +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x602ef504 mark_page_dirty +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x607a5449 kvm_get_msr +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x6243ac82 __kvm_apic_update_irr +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x62590e72 kvm_emulate_halt +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x63270977 kvm_default_tsc_scaling_ratio +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x6449e71b kvm_vcpu_gfn_to_pfn +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x65660784 kvm_inject_realmode_interrupt +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x65671d24 gfn_to_page_many_atomic +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x65ece2a2 __tracepoint_kvm_fast_mmio +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x66c4423a kvm_define_shared_msr +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x67319175 kvm_io_bus_write +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x6802d9b9 kvm_emulate_cpuid +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x684c8818 kvm_get_cr8 +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x68643808 kvm_wait_lapic_expire +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x6892e3c3 kvm_set_pfn_accessed +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x68f54e0f __tracepoint_kvm_skinit +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x6a0b8b20 kvm_vcpu_mark_page_dirty +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x6cc42567 kvm_write_guest_offset_cached +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x6cf8a84a kvm_write_guest_cached +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x6e83c14c kvm_unmap_gfn +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x6f325d61 kvm_apicv_activated +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x7038def9 kvm_mmu_slot_set_dirty +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x709cd8cb kvm_spurious_fault +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x7177fb37 kvm_lapic_switch_to_hv_timer +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x71a24d17 cpuid_query_maxphyaddr +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x72350c2d kvm_lapic_switch_to_sw_timer +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x7285deb0 gfn_to_page +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x72eec17a kvm_require_dr +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x740352f4 kvm_write_guest_virt_system +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x740a9515 __kvm_set_memory_region +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x744cde8f kvm_complete_insn_gp +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x7499aa27 kvm_set_apic_base +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x76137a35 kvm_arch_no_poll +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x76fb9a68 current_vcpu +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x7763a671 __tracepoint_kvm_nested_vmenter_failed +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x78c739ae kvm_skip_emulated_instruction +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x799625b4 kvm_cpu_has_injectable_intr +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x7a17111d kvm_vcpu_gfn_to_pfn_atomic +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x7ad76a70 kvm_vcpu_read_guest_page +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x7afe324e halt_poll_ns_grow +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x7c09d89e kvm_get_cs_db_l_bits +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x7c94c99a kvm_release_pfn_dirty +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x7e931915 __kvm_request_immediate_exit +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x7fe441e3 kvm_write_guest +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x80270bad kvm_mmu_invalidate_gva +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x83450c31 reprogram_fixed_counter +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x84831f0b kvm_set_msr +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x849344cc __tracepoint_kvm_pml_full +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x867690a7 __tracepoint_kvm_msr +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x86931b5d __tracepoint_kvm_avic_incomplete_ipi +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x872dfc9f kvm_vcpu_on_spin +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x888d979f __tracepoint_kvm_exit +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x889b3b0d kvm_get_rflags +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x88f7e6e0 kvm_vcpu_gfn_to_page +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x89b18001 kvm_set_cr0 +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x8f4e859e kvm_get_apic_base +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x91d4d992 __tracepoint_kvm_nested_vmexit +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x93b0e5c1 kvm_vcpu_wake_up +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x94a3666d kvm_mmu_unprotect_page_virt +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x94abbd88 __tracepoint_kvm_invlpga +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x986f7f34 kvm_fast_pio +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x9958345a kvm_get_running_vcpu +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x9f6d78fc kvm_get_pfn +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xa1c4231f kvm_set_pfn_dirty +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xa28b42d6 kvm_hv_assist_page_enabled +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xa4c6fdbd kvm_map_gfn +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xa53d93ef kvm_mmu_invlpg +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xa5750f0b kvm_vcpu_gfn_to_memslot +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xa5862814 kvm_load_host_xsave_state +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xa6152d16 kvm_configure_mmu +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xa6606dc2 kvm_lapic_expired_hv_timer +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xa74043c4 kvm_emulate_instruction +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xa7c100da kvm_apicv_init +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xa90e44f5 kvm_mmu_set_mmio_spte_mask +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xa975020d kvm_mmu_set_mask_ptes +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xaadcf4eb kvm_apic_has_interrupt +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xab31e82f gfn_to_pfn_memslot_atomic +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xac9bc464 kvm_task_switch +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xae6143cf kvm_vcpu_update_apicv +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xae76b7cc kvm_vcpu_kick +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xaea85115 kvm_x86_ops +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xaed1801a kvm_lmsw +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xaf3606ba kvm_inject_page_fault +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xb097e540 __tracepoint_kvm_nested_intercepts +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xb149eab2 kvm_vcpu_read_guest +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xb28c8267 kvm_mmu_unprotect_page +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xb446ca54 kvm_init_shadow_mmu +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xb45f8199 kvm_page_track_unregister_notifier +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xb83ad5c5 kvm_release_page_clean +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xb9f274ea kvm_emulate_rdmsr +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xbc648bb5 kvm_request_apicv_update +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xbd11b0ed kvm_set_msr_common +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xbe368e64 reprogram_gp_counter +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xbe77a920 __x86_set_memory_region +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xbfc61ecf __tracepoint_kvm_page_fault +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xc061ff7d kvm_mmu_free_roots +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xc1d769b7 __tracepoint_kvm_nested_intr_vmexit +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xc2773de2 kvm_arch_register_noncoherent_dma +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xc503849a kvm_requeue_exception_e +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xc5b1070f kvm_arch_has_assigned_device +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xc6f90987 kvm_queue_exception_e +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xc8159c13 kvm_load_guest_xsave_state +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xc888a1c2 kvm_cpu_caps +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xca3ab5ad __tracepoint_kvm_ple_window_update +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xca9e2cb7 kvm_slot_page_track_remove_page +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xcab0c0a4 __tracepoint_kvm_write_tsc_offset +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xcb49a76c kvm_lapic_find_highest_irr +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xce9fc4d8 kvm_read_guest_virt +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xcf434d4b kvm_mmu_invpcid_gva +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xcf9eee4e kvm_is_linear_rip +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xd00db2f0 reset_shadow_zero_bits_mask +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xd0459e67 kvm_has_tsc_control +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xd2a99efb gfn_to_memslot +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xd318ac20 kvm_irq_has_notifier +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xd49b3679 kvm_get_kvm +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xd7657c42 kvm_set_cr3 +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xd7dbe992 kvm_arch_unregister_noncoherent_dma +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xd8ae2ac3 __tracepoint_kvm_pi_irte_update +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xd91d4323 kvm_queue_exception +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xdadbb7bd kvm_mmu_reset_context +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xdd9e7aeb kvm_set_shared_msr +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xdf93e2b9 kvm_set_dr +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xe0a2db7f kvm_mtrr_get_guest_memory_type +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xe1918f42 kvm_vcpu_unmap +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xe225e753 kvm_emulate_instruction_from_buffer +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xe2ce91ee kvm_clear_guest_page +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xe3008eb3 kvm_mmu_clear_dirty_pt_masked +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xe385940d kvm_lapic_hv_timer_in_use +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xe55ce29b kvm_get_apic_mode +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xe64af211 kvm_set_xcr +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xe9674a16 supported_xcr0 +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xebcb254e kvm_can_use_hv_timer +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xebdc7006 kvm_emulate_wbinvd +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xec06defc __tracepoint_kvm_avic_unaccelerated_access +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xec2215de kvm_apic_match_dest +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xec733fb8 kvm_apic_update_apicv +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xecf59b6a kvm_release_page_dirty +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xeebb0472 kvm_apic_update_ppr +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xeecf997d __gfn_to_pfn_memslot +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xef01af45 kvm_set_msi_irq +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xef32c182 handle_fastpath_set_msr_irqoff +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xef4a4c88 kvm_apic_clear_irr +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xf47e3dba kvm_no_apic_vcpu +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xf55eefe2 kvm_vcpu_write_guest_page +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xf5ef456c kvm_mmu_slot_largepage_remove_write_access +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xf5f65110 gfn_to_hva_memslot +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xf6a2b8db __tracepoint_kvm_apicv_update_request +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xfa541ffc __tracepoint_kvm_inj_virq +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xfaa4b586 kvm_clear_guest +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xfaa8f73f kvm_inject_emulated_page_fault +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xfbf6d809 handle_ud +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xff5dd848 kvm_set_cr8 +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xff833622 kvm_debugfs_dir +EXPORT_SYMBOL_GPL crypto/af_alg 0x15e057f2 af_alg_get_rsgl +EXPORT_SYMBOL_GPL crypto/af_alg 0x228db3f0 af_alg_release +EXPORT_SYMBOL_GPL crypto/af_alg 0x33f192fa af_alg_unregister_type +EXPORT_SYMBOL_GPL crypto/af_alg 0x3d95a819 af_alg_async_cb +EXPORT_SYMBOL_GPL crypto/af_alg 0x5983a934 af_alg_make_sg +EXPORT_SYMBOL_GPL crypto/af_alg 0x59c0d8d2 af_alg_release_parent +EXPORT_SYMBOL_GPL crypto/af_alg 0x676832fe af_alg_accept +EXPORT_SYMBOL_GPL crypto/af_alg 0x741a9435 af_alg_alloc_areq +EXPORT_SYMBOL_GPL crypto/af_alg 0x79e2c1ff af_alg_free_resources +EXPORT_SYMBOL_GPL crypto/af_alg 0x7b3b4b9e af_alg_count_tsgl +EXPORT_SYMBOL_GPL crypto/af_alg 0x7cb87a4f af_alg_wmem_wakeup +EXPORT_SYMBOL_GPL crypto/af_alg 0x9544fead af_alg_free_sg +EXPORT_SYMBOL_GPL crypto/af_alg 0xbae80b40 af_alg_pull_tsgl +EXPORT_SYMBOL_GPL crypto/af_alg 0xbdf4cd2f af_alg_sendpage +EXPORT_SYMBOL_GPL crypto/af_alg 0xc4c1e3fd af_alg_poll +EXPORT_SYMBOL_GPL crypto/af_alg 0xe0e104a1 af_alg_wait_for_data +EXPORT_SYMBOL_GPL crypto/af_alg 0xe797aa6d af_alg_register_type +EXPORT_SYMBOL_GPL crypto/af_alg 0xec5bca57 af_alg_sendmsg +EXPORT_SYMBOL_GPL crypto/asymmetric_keys/asym_tpm 0x7430f97c tpm_key_create +EXPORT_SYMBOL_GPL crypto/asymmetric_keys/asym_tpm 0x828e9289 asym_tpm_subtype +EXPORT_SYMBOL_GPL crypto/async_tx/async_memcpy 0x2b97858d async_memcpy +EXPORT_SYMBOL_GPL crypto/async_tx/async_pq 0x9fd237c0 async_syndrome_val +EXPORT_SYMBOL_GPL crypto/async_tx/async_pq 0xee7f879f async_gen_syndrome +EXPORT_SYMBOL_GPL crypto/async_tx/async_raid6_recov 0x8365f6f1 async_raid6_2data_recov +EXPORT_SYMBOL_GPL crypto/async_tx/async_raid6_recov 0xb8363bb4 async_raid6_datap_recov +EXPORT_SYMBOL_GPL crypto/async_tx/async_tx 0x094cd71f __async_tx_find_channel +EXPORT_SYMBOL_GPL crypto/async_tx/async_tx 0x3eaa2db9 async_tx_quiesce +EXPORT_SYMBOL_GPL crypto/async_tx/async_tx 0x5f2eede1 async_trigger_callback +EXPORT_SYMBOL_GPL crypto/async_tx/async_tx 0xcc1dacdf async_tx_submit +EXPORT_SYMBOL_GPL crypto/async_tx/async_xor 0x3b2126d8 async_xor_val +EXPORT_SYMBOL_GPL crypto/async_tx/async_xor 0x97e3aea2 async_xor +EXPORT_SYMBOL_GPL crypto/authenc 0x2479193e crypto_authenc_extractkeys +EXPORT_SYMBOL_GPL crypto/blowfish_common 0xc10db9f0 blowfish_setkey +EXPORT_SYMBOL_GPL crypto/cast5_generic 0x188d9d26 __cast5_decrypt +EXPORT_SYMBOL_GPL crypto/cast5_generic 0xbdfc8dc8 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 0x44e7f0c6 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 0x14a3cdbf cryptd_skcipher_queued +EXPORT_SYMBOL_GPL crypto/cryptd 0x2c179847 cryptd_skcipher_child +EXPORT_SYMBOL_GPL crypto/cryptd 0x2d3d5660 cryptd_ahash_queued +EXPORT_SYMBOL_GPL crypto/cryptd 0x350a72ca cryptd_free_aead +EXPORT_SYMBOL_GPL crypto/cryptd 0x3553ca07 cryptd_alloc_skcipher +EXPORT_SYMBOL_GPL crypto/cryptd 0x396726c6 cryptd_alloc_aead +EXPORT_SYMBOL_GPL crypto/cryptd 0x64bef909 cryptd_ahash_child +EXPORT_SYMBOL_GPL crypto/cryptd 0x8e8e96ea cryptd_aead_child +EXPORT_SYMBOL_GPL crypto/cryptd 0x940b7c0c cryptd_alloc_ahash +EXPORT_SYMBOL_GPL crypto/cryptd 0xabb4d525 cryptd_aead_queued +EXPORT_SYMBOL_GPL crypto/cryptd 0xbb810290 cryptd_shash_desc +EXPORT_SYMBOL_GPL crypto/cryptd 0xbd87bb91 cryptd_free_skcipher +EXPORT_SYMBOL_GPL crypto/cryptd 0xf8a15910 cryptd_free_ahash +EXPORT_SYMBOL_GPL crypto/crypto_engine 0x17241a1b crypto_finalize_skcipher_request +EXPORT_SYMBOL_GPL crypto/crypto_engine 0x37f1165b crypto_engine_alloc_init_and_set +EXPORT_SYMBOL_GPL crypto/crypto_engine 0x6d168c3e crypto_engine_start +EXPORT_SYMBOL_GPL crypto/crypto_engine 0x7cca0a37 crypto_transfer_hash_request_to_engine +EXPORT_SYMBOL_GPL crypto/crypto_engine 0x8bb91238 crypto_finalize_aead_request +EXPORT_SYMBOL_GPL crypto/crypto_engine 0xb5e841c6 crypto_transfer_aead_request_to_engine +EXPORT_SYMBOL_GPL crypto/crypto_engine 0xcfb40e16 crypto_engine_exit +EXPORT_SYMBOL_GPL crypto/crypto_engine 0xd7082c3a crypto_transfer_skcipher_request_to_engine +EXPORT_SYMBOL_GPL crypto/crypto_engine 0xdee40376 crypto_finalize_akcipher_request +EXPORT_SYMBOL_GPL crypto/crypto_engine 0xe5e75335 crypto_engine_alloc_init +EXPORT_SYMBOL_GPL crypto/crypto_engine 0xf597e597 crypto_engine_stop +EXPORT_SYMBOL_GPL crypto/crypto_engine 0xf953c867 crypto_finalize_hash_request +EXPORT_SYMBOL_GPL crypto/crypto_engine 0xff29ff72 crypto_transfer_akcipher_request_to_engine +EXPORT_SYMBOL_GPL crypto/crypto_simd 0x219acd3b simd_unregister_aeads +EXPORT_SYMBOL_GPL crypto/crypto_simd 0x504cb053 simd_aead_create_compat +EXPORT_SYMBOL_GPL crypto/crypto_simd 0x56bccd93 simd_unregister_skciphers +EXPORT_SYMBOL_GPL crypto/crypto_simd 0x66983e96 simd_skcipher_create +EXPORT_SYMBOL_GPL crypto/crypto_simd 0x7c76b1ac simd_register_aeads_compat +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 0xea2bb4bd simd_register_skciphers_compat +EXPORT_SYMBOL_GPL crypto/crypto_simd 0xefe73979 simd_skcipher_free +EXPORT_SYMBOL_GPL crypto/ecdh_generic 0x515ba532 crypto_ecdh_decode_key +EXPORT_SYMBOL_GPL crypto/ecdh_generic 0x7a395d76 crypto_ecdh_encode_key +EXPORT_SYMBOL_GPL crypto/ecdh_generic 0xd5a29505 crypto_ecdh_key_len +EXPORT_SYMBOL_GPL crypto/serpent_generic 0x4eb4c55e __serpent_encrypt +EXPORT_SYMBOL_GPL crypto/serpent_generic 0xbb960c12 serpent_setkey +EXPORT_SYMBOL_GPL crypto/serpent_generic 0xbcc074f3 __serpent_decrypt +EXPORT_SYMBOL_GPL crypto/serpent_generic 0xd4c9681a __serpent_setkey +EXPORT_SYMBOL_GPL crypto/sm3_generic 0x0bddca87 sm3_zero_message_hash +EXPORT_SYMBOL_GPL crypto/sm4_generic 0x09a89410 crypto_sm4_expand_key +EXPORT_SYMBOL_GPL crypto/sm4_generic 0x9b71d64d crypto_sm4_encrypt +EXPORT_SYMBOL_GPL crypto/sm4_generic 0xa8eacd1b crypto_sm4_decrypt +EXPORT_SYMBOL_GPL crypto/sm4_generic 0xb9120281 crypto_sm4_set_key +EXPORT_SYMBOL_GPL crypto/twofish_common 0xa28bfaf8 twofish_setkey +EXPORT_SYMBOL_GPL crypto/twofish_common 0xe22b7787 __twofish_setkey +EXPORT_SYMBOL_GPL drivers/acpi/nfit/nfit 0x02766153 __acpi_nfit_notify +EXPORT_SYMBOL_GPL drivers/acpi/nfit/nfit 0x032e2673 __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 0x827bd4d7 acpi_nfit_init +EXPORT_SYMBOL_GPL drivers/acpi/nfit/nfit 0xdacfe653 acpi_nfit_ctl +EXPORT_SYMBOL_GPL drivers/acpi/nfit/nfit 0xee368816 acpi_nfit_desc_init +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 0x040726b6 ahci_pmp_retry_srst_ops +EXPORT_SYMBOL_GPL drivers/ata/libahci 0x06bbae25 ahci_start_engine +EXPORT_SYMBOL_GPL drivers/ata/libahci 0x0c3d6e46 ahci_start_fis_rx +EXPORT_SYMBOL_GPL drivers/ata/libahci 0x146dc950 ahci_shost_attrs +EXPORT_SYMBOL_GPL drivers/ata/libahci 0x1663f8af ahci_set_em_messages +EXPORT_SYMBOL_GPL drivers/ata/libahci 0x184f8354 ahci_init_controller +EXPORT_SYMBOL_GPL drivers/ata/libahci 0x48759c69 ahci_qc_issue +EXPORT_SYMBOL_GPL drivers/ata/libahci 0x59a6abb5 ahci_sdev_attrs +EXPORT_SYMBOL_GPL drivers/ata/libahci 0x6255bbaa ahci_do_hardreset +EXPORT_SYMBOL_GPL drivers/ata/libahci 0x66ae71b0 ahci_reset_controller +EXPORT_SYMBOL_GPL drivers/ata/libahci 0x69fca82c ahci_port_resume +EXPORT_SYMBOL_GPL drivers/ata/libahci 0x6cc112f2 ahci_kick_engine +EXPORT_SYMBOL_GPL drivers/ata/libahci 0x6fc50966 ahci_handle_port_intr +EXPORT_SYMBOL_GPL drivers/ata/libahci 0x704f7d45 ahci_fill_cmd_slot +EXPORT_SYMBOL_GPL drivers/ata/libahci 0x71e939f2 ahci_check_ready +EXPORT_SYMBOL_GPL drivers/ata/libahci 0xa5e5f4ec ahci_save_initial_config +EXPORT_SYMBOL_GPL drivers/ata/libahci 0xa98dacb5 ahci_print_info +EXPORT_SYMBOL_GPL drivers/ata/libahci 0xb3ba1455 ahci_reset_em +EXPORT_SYMBOL_GPL drivers/ata/libahci 0xc32627ed ahci_host_activate +EXPORT_SYMBOL_GPL drivers/ata/libahci 0xcae208b5 ahci_dev_classify +EXPORT_SYMBOL_GPL drivers/ata/libahci 0xdc903ea9 ahci_do_softreset +EXPORT_SYMBOL_GPL drivers/ata/libahci 0xdd24315f ahci_ops +EXPORT_SYMBOL_GPL drivers/ata/libahci 0xea50dad3 ahci_ignore_sss +EXPORT_SYMBOL_GPL drivers/ata/libahci 0xfd2d4179 ahci_stop_engine +EXPORT_SYMBOL_GPL drivers/ata/libahci 0xfd96fffa ahci_error_handler +EXPORT_SYMBOL_GPL drivers/ata/libahci_platform 0x027fe784 ahci_platform_enable_regulators +EXPORT_SYMBOL_GPL drivers/ata/libahci_platform 0x0b90a9f5 ahci_platform_disable_phys +EXPORT_SYMBOL_GPL drivers/ata/libahci_platform 0x3a3fd21b ahci_platform_init_host +EXPORT_SYMBOL_GPL drivers/ata/libahci_platform 0x41a32779 ahci_platform_get_resources +EXPORT_SYMBOL_GPL drivers/ata/libahci_platform 0x63fb5886 ahci_platform_ops +EXPORT_SYMBOL_GPL drivers/ata/libahci_platform 0x79fa5329 ahci_platform_disable_clks +EXPORT_SYMBOL_GPL drivers/ata/libahci_platform 0x8f1ace46 ahci_platform_enable_phys +EXPORT_SYMBOL_GPL drivers/ata/libahci_platform 0x9083f5e1 ahci_platform_disable_resources +EXPORT_SYMBOL_GPL drivers/ata/libahci_platform 0xa1a4bd6b ahci_platform_resume_host +EXPORT_SYMBOL_GPL drivers/ata/libahci_platform 0xaa15294f ahci_platform_shutdown +EXPORT_SYMBOL_GPL drivers/ata/libahci_platform 0xbf5c4cbb ahci_platform_suspend_host +EXPORT_SYMBOL_GPL drivers/ata/libahci_platform 0xd1ebc801 ahci_platform_disable_regulators +EXPORT_SYMBOL_GPL drivers/ata/libahci_platform 0xd2588b86 ahci_platform_enable_resources +EXPORT_SYMBOL_GPL drivers/ata/libahci_platform 0xecd01fc0 ahci_platform_suspend +EXPORT_SYMBOL_GPL drivers/ata/libahci_platform 0xf55ef180 ahci_platform_resume +EXPORT_SYMBOL_GPL drivers/ata/libahci_platform 0xfd70349a ahci_platform_enable_clks +EXPORT_SYMBOL_GPL drivers/ata/pata_platform 0x007e5674 __pata_platform_probe +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 0x727ea304 charlcd_poke +EXPORT_SYMBOL_GPL drivers/auxdisplay/charlcd 0x9192a401 charlcd_register +EXPORT_SYMBOL_GPL drivers/auxdisplay/charlcd 0xa2a58bbe charlcd_alloc +EXPORT_SYMBOL_GPL drivers/auxdisplay/charlcd 0xac53a91b charlcd_unregister +EXPORT_SYMBOL_GPL drivers/auxdisplay/charlcd 0xd0cc2e18 charlcd_free +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/base/regmap/regmap-i3c 0x4b3566c8 __devm_regmap_init_i3c +EXPORT_SYMBOL_GPL drivers/base/regmap/regmap-sccb 0x4d620fac __regmap_init_sccb +EXPORT_SYMBOL_GPL drivers/base/regmap/regmap-sccb 0x845e9e9f __devm_regmap_init_sccb +EXPORT_SYMBOL_GPL drivers/base/regmap/regmap-sdw 0xc0887847 __regmap_init_sdw +EXPORT_SYMBOL_GPL drivers/base/regmap/regmap-sdw 0xcc199599 __devm_regmap_init_sdw +EXPORT_SYMBOL_GPL drivers/base/regmap/regmap-slimbus 0x00db4bd0 __regmap_init_slimbus +EXPORT_SYMBOL_GPL drivers/base/regmap/regmap-slimbus 0xa6e6d493 __devm_regmap_init_slimbus +EXPORT_SYMBOL_GPL drivers/base/regmap/regmap-spmi 0x0e95b382 __regmap_init_spmi_base +EXPORT_SYMBOL_GPL drivers/base/regmap/regmap-spmi 0x38a894b0 __devm_regmap_init_spmi_ext +EXPORT_SYMBOL_GPL drivers/base/regmap/regmap-spmi 0x624a41ec __devm_regmap_init_spmi_base +EXPORT_SYMBOL_GPL drivers/base/regmap/regmap-spmi 0xe1cf17e4 __regmap_init_spmi_ext +EXPORT_SYMBOL_GPL drivers/base/regmap/regmap-w1 0x2a0dc9ba __regmap_init_w1 +EXPORT_SYMBOL_GPL drivers/base/regmap/regmap-w1 0x72251a2f __devm_regmap_init_w1 +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0x01e9363c bcma_chipco_regctl_maskset +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0x1d1a5340 bcma_core_set_clockmode +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0x2cf85c3d bcma_chipco_chipctl_maskset +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0x3b42f1e4 bcma_chipco_gpio_control +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0x3d24b1a5 bcma_chipco_gpio_out +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0x3d46a930 bcma_pmu_spuravoid_pllupdate +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0x49642712 bcma_chipco_gpio_outen +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0x4ce26f63 bcma_core_enable +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0x5a95223f bcma_chipco_pll_write +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0x624f4a35 __bcma_driver_register +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0x68a41d47 bcma_chipco_get_alp_clock +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0x7704c738 bcma_host_pci_down +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0x88dc9b00 bcma_host_pci_up +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0x89fb850c bcma_core_pll_ctl +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0x91f2789d bcma_core_disable +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0x9a0e0c0c bcma_find_core_unit +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0xa2bd6965 bcma_host_pci_irq_ctl +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0xa4487d0d bcma_driver_unregister +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0xa936d061 bcma_chipco_pll_read +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0xba1ff38b bcma_pmu_get_bus_clock +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0xc2bd8e72 bcma_chipco_b_mii_write +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0xc5733b72 bcma_chipco_pll_maskset +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0xdb1d3ec9 bcma_core_pci_power_save +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0xee2645f6 bcma_core_is_enabled +EXPORT_SYMBOL_GPL drivers/bluetooth/btbcm 0x662782d7 btbcm_setup_apple +EXPORT_SYMBOL_GPL drivers/bluetooth/btbcm 0x725f1ad4 btbcm_set_bdaddr +EXPORT_SYMBOL_GPL drivers/bluetooth/btbcm 0x8a5ed703 btbcm_finalize +EXPORT_SYMBOL_GPL drivers/bluetooth/btbcm 0x8cee7e2b btbcm_read_pcm_int_params +EXPORT_SYMBOL_GPL drivers/bluetooth/btbcm 0x9d04d02b btbcm_setup_patchram +EXPORT_SYMBOL_GPL drivers/bluetooth/btbcm 0xb458a3b1 btbcm_check_bdaddr +EXPORT_SYMBOL_GPL drivers/bluetooth/btbcm 0xe1b5f71d btbcm_initialize +EXPORT_SYMBOL_GPL drivers/bluetooth/btbcm 0xf547cc55 btbcm_write_pcm_int_params +EXPORT_SYMBOL_GPL drivers/bluetooth/btintel 0x0d64ce2f btintel_enter_mfg +EXPORT_SYMBOL_GPL drivers/bluetooth/btintel 0x145c6276 btintel_set_diag_mfg +EXPORT_SYMBOL_GPL drivers/bluetooth/btintel 0x329f3bdd btintel_read_version +EXPORT_SYMBOL_GPL drivers/bluetooth/btintel 0x3d0cb98c btintel_regmap_init +EXPORT_SYMBOL_GPL drivers/bluetooth/btintel 0x3e5f62f8 btintel_hw_error +EXPORT_SYMBOL_GPL drivers/bluetooth/btintel 0x4e00d374 btintel_secure_send +EXPORT_SYMBOL_GPL drivers/bluetooth/btintel 0x5d423316 btintel_set_diag +EXPORT_SYMBOL_GPL drivers/bluetooth/btintel 0x796d69ca btintel_read_boot_params +EXPORT_SYMBOL_GPL drivers/bluetooth/btintel 0x7c43f646 btintel_set_bdaddr +EXPORT_SYMBOL_GPL drivers/bluetooth/btintel 0x8278ab4f btintel_download_firmware +EXPORT_SYMBOL_GPL drivers/bluetooth/btintel 0x86413d1c btintel_reset_to_bootloader +EXPORT_SYMBOL_GPL drivers/bluetooth/btintel 0x968359e7 btintel_send_intel_reset +EXPORT_SYMBOL_GPL drivers/bluetooth/btintel 0xadb47ce4 btintel_set_event_mask +EXPORT_SYMBOL_GPL drivers/bluetooth/btintel 0xbcaec280 btintel_set_event_mask_mfg +EXPORT_SYMBOL_GPL drivers/bluetooth/btintel 0xcd1b94a8 btintel_version_info +EXPORT_SYMBOL_GPL drivers/bluetooth/btintel 0xd29287cd btintel_load_ddc_config +EXPORT_SYMBOL_GPL drivers/bluetooth/btintel 0xd4ce8210 btintel_check_bdaddr +EXPORT_SYMBOL_GPL drivers/bluetooth/btintel 0xf37dbd78 btintel_exit_mfg +EXPORT_SYMBOL_GPL drivers/bluetooth/btmrvl 0x1cfc30c3 btmrvl_interrupt +EXPORT_SYMBOL_GPL drivers/bluetooth/btmrvl 0x2c195ea0 btmrvl_pscan_window_reporting +EXPORT_SYMBOL_GPL drivers/bluetooth/btmrvl 0x45e071b3 btmrvl_check_evtpkt +EXPORT_SYMBOL_GPL drivers/bluetooth/btmrvl 0x4918bddf btmrvl_register_hdev +EXPORT_SYMBOL_GPL drivers/bluetooth/btmrvl 0x4e94e56d btmrvl_enable_hs +EXPORT_SYMBOL_GPL drivers/bluetooth/btmrvl 0x8733766c btmrvl_enable_ps +EXPORT_SYMBOL_GPL drivers/bluetooth/btmrvl 0xa75090df btmrvl_process_event +EXPORT_SYMBOL_GPL drivers/bluetooth/btmrvl 0xa78f3f5e btmrvl_remove_card +EXPORT_SYMBOL_GPL drivers/bluetooth/btmrvl 0xc7d0df30 btmrvl_add_card +EXPORT_SYMBOL_GPL drivers/bluetooth/btmrvl 0xdf50c341 btmrvl_send_module_cfg_cmd +EXPORT_SYMBOL_GPL drivers/bluetooth/btmrvl 0xe9429fe5 btmrvl_send_hscfg_cmd +EXPORT_SYMBOL_GPL drivers/bluetooth/btqca 0x0c627c8b qca_send_pre_shutdown_cmd +EXPORT_SYMBOL_GPL drivers/bluetooth/btqca 0x54ea0d55 qca_read_soc_version +EXPORT_SYMBOL_GPL drivers/bluetooth/btqca 0xc2461b26 qca_set_bdaddr_rome +EXPORT_SYMBOL_GPL drivers/bluetooth/btqca 0xc65da26b qca_set_bdaddr +EXPORT_SYMBOL_GPL drivers/bluetooth/btqca 0xe825d66d qca_uart_setup +EXPORT_SYMBOL_GPL drivers/bluetooth/btrtl 0x496bed9f btrtl_setup_realtek +EXPORT_SYMBOL_GPL drivers/bluetooth/btrtl 0xaf78f260 btrtl_free +EXPORT_SYMBOL_GPL drivers/bluetooth/btrtl 0xb540feb4 btrtl_download_firmware +EXPORT_SYMBOL_GPL drivers/bluetooth/btrtl 0xc7a70d4c btrtl_initialize +EXPORT_SYMBOL_GPL drivers/bluetooth/btrtl 0xcc34a158 btrtl_shutdown_realtek +EXPORT_SYMBOL_GPL drivers/bluetooth/btrtl 0xfa88df82 btrtl_get_uart_settings +EXPORT_SYMBOL_GPL drivers/bluetooth/hci_uart 0xa0bc8182 hci_uart_register_device +EXPORT_SYMBOL_GPL drivers/bluetooth/hci_uart 0xa7a035bb h4_recv_buf +EXPORT_SYMBOL_GPL drivers/bluetooth/hci_uart 0xa912f380 hci_uart_tx_wakeup +EXPORT_SYMBOL_GPL drivers/bluetooth/hci_uart 0xb196e737 hci_uart_unregister_device +EXPORT_SYMBOL_GPL drivers/bus/mhi/core/mhi 0x10d5d3ed __mhi_driver_register +EXPORT_SYMBOL_GPL drivers/bus/mhi/core/mhi 0x1e68c305 mhi_queue_buf +EXPORT_SYMBOL_GPL drivers/bus/mhi/core/mhi 0x39dd2b33 mhi_device_get +EXPORT_SYMBOL_GPL drivers/bus/mhi/core/mhi 0x39f15de6 mhi_device_put +EXPORT_SYMBOL_GPL drivers/bus/mhi/core/mhi 0x3f2b2f64 mhi_device_get_sync +EXPORT_SYMBOL_GPL drivers/bus/mhi/core/mhi 0x47b45619 mhi_poll +EXPORT_SYMBOL_GPL drivers/bus/mhi/core/mhi 0x54a48c4c mhi_register_controller +EXPORT_SYMBOL_GPL drivers/bus/mhi/core/mhi 0x5c3dd388 mhi_driver_unregister +EXPORT_SYMBOL_GPL drivers/bus/mhi/core/mhi 0x620ef13b mhi_power_down +EXPORT_SYMBOL_GPL drivers/bus/mhi/core/mhi 0x841ad19a mhi_force_rddm_mode +EXPORT_SYMBOL_GPL drivers/bus/mhi/core/mhi 0x9cb07f6e mhi_queue_dma +EXPORT_SYMBOL_GPL drivers/bus/mhi/core/mhi 0x9ef97c69 mhi_prepare_for_transfer +EXPORT_SYMBOL_GPL drivers/bus/mhi/core/mhi 0xaa8b9731 mhi_pm_suspend +EXPORT_SYMBOL_GPL drivers/bus/mhi/core/mhi 0xae08ce76 mhi_pm_resume +EXPORT_SYMBOL_GPL drivers/bus/mhi/core/mhi 0xae59cc49 mhi_queue_skb +EXPORT_SYMBOL_GPL drivers/bus/mhi/core/mhi 0xb373938f mhi_download_rddm_img +EXPORT_SYMBOL_GPL drivers/bus/mhi/core/mhi 0xbd68658b mhi_async_power_up +EXPORT_SYMBOL_GPL drivers/bus/mhi/core/mhi 0xc0ff9a58 mhi_unprepare_from_transfer +EXPORT_SYMBOL_GPL drivers/bus/mhi/core/mhi 0xc34ba1c1 mhi_unregister_controller +EXPORT_SYMBOL_GPL drivers/bus/mhi/core/mhi 0xd053d028 mhi_notify +EXPORT_SYMBOL_GPL drivers/bus/mhi/core/mhi 0xdf61d63f mhi_unprepare_after_power_down +EXPORT_SYMBOL_GPL drivers/bus/mhi/core/mhi 0xfdf711a8 mhi_prepare_for_power_up +EXPORT_SYMBOL_GPL drivers/counter/counter 0x01aab51b counter_count_direction_str +EXPORT_SYMBOL_GPL drivers/counter/counter 0x03009b5d counter_register +EXPORT_SYMBOL_GPL drivers/counter/counter 0x06ebcdcc counter_count_enum_read +EXPORT_SYMBOL_GPL drivers/counter/counter 0x0a1a9721 counter_count_enum_available_read +EXPORT_SYMBOL_GPL drivers/counter/counter 0x446927fe counter_signal_enum_available_read +EXPORT_SYMBOL_GPL drivers/counter/counter 0x462afffd counter_device_enum_read +EXPORT_SYMBOL_GPL drivers/counter/counter 0x546fe59a counter_count_enum_write +EXPORT_SYMBOL_GPL drivers/counter/counter 0x5dff567d devm_counter_unregister +EXPORT_SYMBOL_GPL drivers/counter/counter 0x5e7b192a counter_signal_enum_write +EXPORT_SYMBOL_GPL drivers/counter/counter 0x76c0ce8b counter_device_enum_write +EXPORT_SYMBOL_GPL drivers/counter/counter 0x8e054287 devm_counter_register +EXPORT_SYMBOL_GPL drivers/counter/counter 0x949d7363 counter_signal_enum_read +EXPORT_SYMBOL_GPL drivers/counter/counter 0xe213f6c3 counter_device_enum_available_read +EXPORT_SYMBOL_GPL drivers/counter/counter 0xe722aa23 counter_unregister +EXPORT_SYMBOL_GPL drivers/counter/counter 0xee526d0f counter_count_mode_str +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 0x61f0e0a2 ccp_enqueue_cmd +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 0xcb0e8c98 sev_issue_cmd_external_user +EXPORT_SYMBOL_GPL drivers/crypto/ccp/ccp 0xd02e197f sev_platform_init +EXPORT_SYMBOL_GPL drivers/crypto/qat/qat_common/intel_qat 0x066b28d1 adf_dev_started +EXPORT_SYMBOL_GPL drivers/crypto/qat/qat_common/intel_qat 0x09088192 adf_iov_putmsg +EXPORT_SYMBOL_GPL drivers/crypto/qat/qat_common/intel_qat 0x115057c3 adf_cfg_add_key_value_param +EXPORT_SYMBOL_GPL drivers/crypto/qat/qat_common/intel_qat 0x2d5f49c6 adf_devmgr_add_dev +EXPORT_SYMBOL_GPL drivers/crypto/qat/qat_common/intel_qat 0x3964535e adf_cfg_section_add +EXPORT_SYMBOL_GPL drivers/crypto/qat/qat_common/intel_qat 0x3a434d3b adf_exit_arb +EXPORT_SYMBOL_GPL drivers/crypto/qat/qat_common/intel_qat 0x3a52850a adf_vf_isr_resource_alloc +EXPORT_SYMBOL_GPL drivers/crypto/qat/qat_common/intel_qat 0x40eee804 adf_enable_vf2pf_comms +EXPORT_SYMBOL_GPL drivers/crypto/qat/qat_common/intel_qat 0x44bf033e adf_send_admin_init +EXPORT_SYMBOL_GPL drivers/crypto/qat/qat_common/intel_qat 0x45ca86cc adf_init_admin_comms +EXPORT_SYMBOL_GPL drivers/crypto/qat/qat_common/intel_qat 0x4ab9d838 adf_cleanup_etr_data +EXPORT_SYMBOL_GPL drivers/crypto/qat/qat_common/intel_qat 0x52bf19fe adf_vf2pf_init +EXPORT_SYMBOL_GPL drivers/crypto/qat/qat_common/intel_qat 0x57eb4d61 adf_vf2pf_shutdown +EXPORT_SYMBOL_GPL drivers/crypto/qat/qat_common/intel_qat 0x677140cd adf_devmgr_rm_dev +EXPORT_SYMBOL_GPL drivers/crypto/qat/qat_common/intel_qat 0x6ce78966 adf_reset_flr +EXPORT_SYMBOL_GPL drivers/crypto/qat/qat_common/intel_qat 0x79e356c1 adf_dev_start +EXPORT_SYMBOL_GPL drivers/crypto/qat/qat_common/intel_qat 0x7bd345a4 adf_dev_init +EXPORT_SYMBOL_GPL drivers/crypto/qat/qat_common/intel_qat 0x7d0004b9 adf_vf_isr_resource_free +EXPORT_SYMBOL_GPL drivers/crypto/qat/qat_common/intel_qat 0x7d1fa9b2 adf_dev_in_use +EXPORT_SYMBOL_GPL drivers/crypto/qat/qat_common/intel_qat 0x891411d7 adf_dev_get +EXPORT_SYMBOL_GPL drivers/crypto/qat/qat_common/intel_qat 0x8af82cbe adf_cfg_dev_remove +EXPORT_SYMBOL_GPL drivers/crypto/qat/qat_common/intel_qat 0x95f6d070 adf_cfg_dev_add +EXPORT_SYMBOL_GPL drivers/crypto/qat/qat_common/intel_qat 0x97fb82b0 adf_dev_put +EXPORT_SYMBOL_GPL drivers/crypto/qat/qat_common/intel_qat 0x9cc67736 adf_init_arb +EXPORT_SYMBOL_GPL drivers/crypto/qat/qat_common/intel_qat 0x9faacc71 adf_devmgr_pci_to_accel_dev +EXPORT_SYMBOL_GPL drivers/crypto/qat/qat_common/intel_qat 0xa26dff6d adf_devmgr_in_reset +EXPORT_SYMBOL_GPL drivers/crypto/qat/qat_common/intel_qat 0xa330403c adf_enable_aer +EXPORT_SYMBOL_GPL drivers/crypto/qat/qat_common/intel_qat 0xa94c48a2 adf_devmgr_update_class_index +EXPORT_SYMBOL_GPL drivers/crypto/qat/qat_common/intel_qat 0xb6e8d8dc adf_sriov_configure +EXPORT_SYMBOL_GPL drivers/crypto/qat/qat_common/intel_qat 0xbe04e764 adf_disable_aer +EXPORT_SYMBOL_GPL drivers/crypto/qat/qat_common/intel_qat 0xc5bbf612 adf_reset_sbr +EXPORT_SYMBOL_GPL drivers/crypto/qat/qat_common/intel_qat 0xc9528428 adf_disable_sriov +EXPORT_SYMBOL_GPL drivers/crypto/qat/qat_common/intel_qat 0xca49dfdc adf_isr_resource_free +EXPORT_SYMBOL_GPL drivers/crypto/qat/qat_common/intel_qat 0xcbde6f1a adf_dev_stop +EXPORT_SYMBOL_GPL drivers/crypto/qat/qat_common/intel_qat 0xcc3b167a adf_clean_vf_map +EXPORT_SYMBOL_GPL drivers/crypto/qat/qat_common/intel_qat 0xcf2bed4d adf_exit_admin_comms +EXPORT_SYMBOL_GPL drivers/crypto/qat/qat_common/intel_qat 0xd0d2f859 adf_isr_resource_alloc +EXPORT_SYMBOL_GPL drivers/crypto/qat/qat_common/intel_qat 0xdf3b82a3 qat_crypto_dev_config +EXPORT_SYMBOL_GPL drivers/crypto/qat/qat_common/intel_qat 0xf995e6c4 adf_init_etr_data +EXPORT_SYMBOL_GPL drivers/crypto/qat/qat_common/intel_qat 0xff1981e3 adf_dev_shutdown +EXPORT_SYMBOL_GPL drivers/dax/device_dax 0xe3d1dcdb dev_dax_probe +EXPORT_SYMBOL_GPL drivers/dax/pmem/dax_pmem_core 0x3f41cb5a __dax_pmem_probe +EXPORT_SYMBOL_GPL drivers/dca/dca 0x01a33ab9 dca_unregister_notify +EXPORT_SYMBOL_GPL drivers/dca/dca 0x0547919f dca3_get_tag +EXPORT_SYMBOL_GPL drivers/dca/dca 0x057476b0 register_dca_provider +EXPORT_SYMBOL_GPL drivers/dca/dca 0x2c3b7821 dca_remove_requester +EXPORT_SYMBOL_GPL drivers/dca/dca 0x45abbcd5 alloc_dca_provider +EXPORT_SYMBOL_GPL drivers/dca/dca 0x4f19f255 free_dca_provider +EXPORT_SYMBOL_GPL drivers/dca/dca 0x912bcbb6 unregister_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 0xf11b162e dca_add_requester +EXPORT_SYMBOL_GPL drivers/dma/dw-edma/dw-edma 0xa58aec77 dw_edma_remove +EXPORT_SYMBOL_GPL drivers/dma/dw-edma/dw-edma 0xe9442d07 dw_edma_probe +EXPORT_SYMBOL_GPL drivers/dma/dw/dw_dmac_core 0x3387c6df do_dw_dma_enable +EXPORT_SYMBOL_GPL drivers/dma/dw/dw_dmac_core 0x41882230 idma32_dma_remove +EXPORT_SYMBOL_GPL drivers/dma/dw/dw_dmac_core 0xb99abc26 dw_dma_filter +EXPORT_SYMBOL_GPL drivers/dma/dw/dw_dmac_core 0xbe83c8bd idma32_dma_probe +EXPORT_SYMBOL_GPL drivers/dma/dw/dw_dmac_core 0xcdac714b do_dw_dma_disable +EXPORT_SYMBOL_GPL drivers/dma/dw/dw_dmac_core 0xf02684c3 dw_dma_probe +EXPORT_SYMBOL_GPL drivers/dma/dw/dw_dmac_core 0xf67bdb47 dw_dma_remove +EXPORT_SYMBOL_GPL drivers/dma/hsu/hsu_dma 0x5306cb77 hsu_dma_get_status +EXPORT_SYMBOL_GPL drivers/dma/hsu/hsu_dma 0x5a30bc02 hsu_dma_remove +EXPORT_SYMBOL_GPL drivers/dma/hsu/hsu_dma 0x6b81a6fb hsu_dma_do_irq +EXPORT_SYMBOL_GPL drivers/dma/hsu/hsu_dma 0xaee27d9f hsu_dma_probe +EXPORT_SYMBOL_GPL drivers/dma/qcom/hdma_mgmt 0x0abc3e10 hidma_mgmt_setup +EXPORT_SYMBOL_GPL drivers/dma/qcom/hdma_mgmt 0x10f21140 hidma_mgmt_init_sys +EXPORT_SYMBOL_GPL drivers/dma/virt-dma 0x069764b4 vchan_dma_desc_free_list +EXPORT_SYMBOL_GPL drivers/dma/virt-dma 0x0a599925 vchan_find_desc +EXPORT_SYMBOL_GPL drivers/dma/virt-dma 0x280fac5d vchan_init +EXPORT_SYMBOL_GPL drivers/dma/virt-dma 0x94ab1587 vchan_tx_submit +EXPORT_SYMBOL_GPL drivers/dma/virt-dma 0xa388fba7 vchan_tx_desc_free +EXPORT_SYMBOL_GPL drivers/edac/amd64_edac_mod 0x745b144f amd64_get_dram_hole_info +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 0xe86fb5c7 fw_card_release +EXPORT_SYMBOL_GPL drivers/fpga/altera-pr-ip-core 0x82dc14c0 alt_pr_unregister +EXPORT_SYMBOL_GPL drivers/fpga/altera-pr-ip-core 0x91b9a8cf alt_pr_register +EXPORT_SYMBOL_GPL drivers/fpga/dfl 0x005667df dfl_fpga_port_ops_del +EXPORT_SYMBOL_GPL drivers/fpga/dfl 0x04022a1c dfl_fpga_check_port_id +EXPORT_SYMBOL_GPL drivers/fpga/dfl 0x18216eee dfl_fpga_enum_info_add_dfl +EXPORT_SYMBOL_GPL drivers/fpga/dfl 0x1ddc01ed dfl_fpga_cdev_config_ports_vf +EXPORT_SYMBOL_GPL drivers/fpga/dfl 0x2815e16c dfl_fpga_dev_ops_unregister +EXPORT_SYMBOL_GPL drivers/fpga/dfl 0xb3da5a12 __dfl_fpga_cdev_find_port +EXPORT_SYMBOL_GPL drivers/fpga/dfl 0xbb0cc9dc dfl_fpga_cdev_assign_port +EXPORT_SYMBOL_GPL drivers/fpga/dfl 0xbeb8b8cb dfl_fpga_port_ops_add +EXPORT_SYMBOL_GPL drivers/fpga/dfl 0xc02c9c22 dfl_fpga_feature_devs_remove +EXPORT_SYMBOL_GPL drivers/fpga/dfl 0xc29b668a dfl_fpga_dev_ops_register +EXPORT_SYMBOL_GPL drivers/fpga/dfl 0xc9914fc1 dfl_fpga_dev_feature_init +EXPORT_SYMBOL_GPL drivers/fpga/dfl 0xd0416417 dfl_fpga_dev_feature_uinit +EXPORT_SYMBOL_GPL drivers/fpga/dfl 0xd617fdda dfl_fpga_enum_info_alloc +EXPORT_SYMBOL_GPL drivers/fpga/dfl 0xd67ca3c5 dfl_fpga_port_ops_put +EXPORT_SYMBOL_GPL drivers/fpga/dfl 0xd8bdee57 dfl_fpga_enum_info_free +EXPORT_SYMBOL_GPL drivers/fpga/dfl 0xdf58ec97 dfl_fpga_port_ops_get +EXPORT_SYMBOL_GPL drivers/fpga/dfl 0xeb486461 dfl_fpga_feature_devs_enumerate +EXPORT_SYMBOL_GPL drivers/fpga/dfl 0xf2b6a19c dfl_fpga_cdev_release_port +EXPORT_SYMBOL_GPL drivers/fpga/dfl 0xf8dca8fe dfl_fpga_cdev_config_ports_pf +EXPORT_SYMBOL_GPL drivers/fpga/fpga-bridge 0x03038f37 fpga_bridge_unregister +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 0x183c6610 fpga_bridge_register +EXPORT_SYMBOL_GPL drivers/fpga/fpga-bridge 0x2c8167cf fpga_bridges_disable +EXPORT_SYMBOL_GPL drivers/fpga/fpga-bridge 0x2fe95837 fpga_bridge_put +EXPORT_SYMBOL_GPL drivers/fpga/fpga-bridge 0x5735129b fpga_bridge_disable +EXPORT_SYMBOL_GPL drivers/fpga/fpga-bridge 0x6588c484 fpga_bridge_get_to_list +EXPORT_SYMBOL_GPL drivers/fpga/fpga-bridge 0x9362d4ab of_fpga_bridge_get +EXPORT_SYMBOL_GPL drivers/fpga/fpga-bridge 0xa7a3c78b of_fpga_bridge_get_to_list +EXPORT_SYMBOL_GPL drivers/fpga/fpga-bridge 0xb679381f fpga_bridge_free +EXPORT_SYMBOL_GPL drivers/fpga/fpga-bridge 0xd37dc316 fpga_bridge_create +EXPORT_SYMBOL_GPL drivers/fpga/fpga-bridge 0xde82dc39 fpga_bridge_get +EXPORT_SYMBOL_GPL drivers/fpga/fpga-bridge 0xe206a132 fpga_bridge_enable +EXPORT_SYMBOL_GPL drivers/fpga/fpga-bridge 0xf5ae6318 devm_fpga_bridge_create +EXPORT_SYMBOL_GPL drivers/fpga/fpga-mgr 0x0d63d97f fpga_image_info_alloc +EXPORT_SYMBOL_GPL drivers/fpga/fpga-mgr 0x269f2ce4 fpga_mgr_register +EXPORT_SYMBOL_GPL drivers/fpga/fpga-mgr 0x3dcfe703 fpga_mgr_free +EXPORT_SYMBOL_GPL drivers/fpga/fpga-mgr 0x69edd714 fpga_mgr_put +EXPORT_SYMBOL_GPL drivers/fpga/fpga-mgr 0x767c5e5a fpga_mgr_get +EXPORT_SYMBOL_GPL drivers/fpga/fpga-mgr 0x9151a1c6 of_fpga_mgr_get +EXPORT_SYMBOL_GPL drivers/fpga/fpga-mgr 0x925ad7e6 fpga_mgr_unlock +EXPORT_SYMBOL_GPL drivers/fpga/fpga-mgr 0xadf96686 fpga_mgr_lock +EXPORT_SYMBOL_GPL drivers/fpga/fpga-mgr 0xb3e795b8 devm_fpga_mgr_create +EXPORT_SYMBOL_GPL drivers/fpga/fpga-mgr 0xc723d2e1 fpga_mgr_load +EXPORT_SYMBOL_GPL drivers/fpga/fpga-mgr 0xea698dd7 fpga_mgr_unregister +EXPORT_SYMBOL_GPL drivers/fpga/fpga-mgr 0xee945077 fpga_mgr_create +EXPORT_SYMBOL_GPL drivers/fpga/fpga-mgr 0xf337a873 fpga_image_info_free +EXPORT_SYMBOL_GPL drivers/fpga/fpga-region 0x11ebacbb fpga_region_class_find +EXPORT_SYMBOL_GPL drivers/fpga/fpga-region 0x1fbd9170 devm_fpga_region_create +EXPORT_SYMBOL_GPL drivers/fpga/fpga-region 0x20a48c17 fpga_region_register +EXPORT_SYMBOL_GPL drivers/fpga/fpga-region 0x26885844 fpga_region_create +EXPORT_SYMBOL_GPL drivers/fpga/fpga-region 0x7fdd3446 fpga_region_unregister +EXPORT_SYMBOL_GPL drivers/fpga/fpga-region 0xe74b999f fpga_region_program_fpga +EXPORT_SYMBOL_GPL drivers/fpga/fpga-region 0xfb6946e0 fpga_region_free +EXPORT_SYMBOL_GPL drivers/gnss/gnss 0x5f3ccb98 gnss_put_device +EXPORT_SYMBOL_GPL drivers/gnss/gnss 0x8c5696aa gnss_insert_raw +EXPORT_SYMBOL_GPL drivers/gnss/gnss 0x91c89948 gnss_register_device +EXPORT_SYMBOL_GPL drivers/gnss/gnss 0xdffa81ff gnss_allocate_device +EXPORT_SYMBOL_GPL drivers/gnss/gnss 0xeddc2d68 gnss_deregister_device +EXPORT_SYMBOL_GPL drivers/gnss/gnss-serial 0x511fc2ca gnss_serial_allocate +EXPORT_SYMBOL_GPL drivers/gnss/gnss-serial 0x9425c3a8 gnss_serial_deregister +EXPORT_SYMBOL_GPL drivers/gnss/gnss-serial 0xa5b25742 gnss_serial_pm_ops +EXPORT_SYMBOL_GPL drivers/gnss/gnss-serial 0xdc911aca gnss_serial_free +EXPORT_SYMBOL_GPL drivers/gnss/gnss-serial 0xef7acbcb gnss_serial_register +EXPORT_SYMBOL_GPL drivers/gpio/gpio-generic 0xbb52e0a7 bgpio_init +EXPORT_SYMBOL_GPL drivers/gpio/gpio-max730x 0x0f2ae158 __max730x_remove +EXPORT_SYMBOL_GPL drivers/gpio/gpio-max730x 0x9243dbd6 __max730x_probe +EXPORT_SYMBOL_GPL drivers/gpu/drm/bridge/analogix/analogix_dp 0x19b75f22 analogix_dp_remove +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 0x67bab745 analogix_dp_bind +EXPORT_SYMBOL_GPL drivers/gpu/drm/bridge/analogix/analogix_dp 0xad196329 analogix_dp_suspend +EXPORT_SYMBOL_GPL drivers/gpu/drm/bridge/analogix/analogix_dp 0xbfd83156 analogix_dp_unbind +EXPORT_SYMBOL_GPL drivers/gpu/drm/bridge/analogix/analogix_dp 0xe26cb1fe analogix_dp_resume +EXPORT_SYMBOL_GPL drivers/gpu/drm/bridge/analogix/analogix_dp 0xf1743a6c analogix_dp_stop_crc +EXPORT_SYMBOL_GPL drivers/gpu/drm/bridge/analogix/analogix_dp 0xfbefef11 analogix_dp_start_crc +EXPORT_SYMBOL_GPL drivers/gpu/drm/bridge/analogix/analogix_dp 0xfe4bf871 analogix_dp_probe +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm 0x09361c9a drm_gem_shmem_get_pages_sgt +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm 0x09bba9b6 drm_get_unmapped_area +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm 0x0f80e615 drm_class_device_unregister +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm 0x0feb7b40 drm_gem_shmem_mmap +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm 0x123200cd drm_bridge_get_modes +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm 0x19cb61f2 drm_bridge_detect +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm 0x1d6ec267 drm_display_mode_to_videomode +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm 0x1e97f5b8 drm_bridge_hpd_notify +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm 0x2f3223b1 drm_class_device_register +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm 0x39c8af2f drm_gem_shmem_get_sg_table +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm 0x3a877b99 drm_gem_cma_mmap +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm 0x430378d5 drm_gem_shmem_prime_import_sg_table +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm 0x48619713 drm_gem_cma_dumb_create +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm 0x50b16480 drm_gem_shmem_dumb_create +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm 0x558ea511 drm_bridge_hpd_disable +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm 0x5ab8208d drm_gem_cma_prime_mmap +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm 0x5de5eaec drm_gem_cma_prime_vmap +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm 0x613422df drm_do_get_edid +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm 0x613dca1b drm_gem_cma_dumb_create_internal +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm 0x634e66b6 drm_gem_cma_prime_import_sg_table +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm 0x68b7858d drm_display_mode_from_videomode +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm 0x6d60e2e6 drm_gem_cma_vm_ops +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm 0x72232fbe drmm_kstrdup +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm 0x75c66f3d drm_gem_shmem_free_object +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm 0x774e13f9 drm_gem_cma_create +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm 0x847b0d2b drm_crtc_add_crc_entry +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm 0x87fd94ec drm_hdcp_check_ksvs_revoked +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm 0xa1dcca1a drm_bridge_get_edid +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm 0xad885165 drm_bus_flags_from_videomode +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm 0xb502b63b drm_gem_cma_prime_get_sg_table +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm 0xc7baee51 drm_gem_cma_free_object +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm 0xc9ddfa1d drm_gem_dumb_map_offset +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm 0xd3da86ef drm_bridge_hpd_enable +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm 0xf21bf343 drm_gem_cma_prime_vunmap +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm 0xf9af349e drm_gem_shmem_create +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm_kms_helper 0x01a5a8a9 drm_bridge_connector_init +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm_kms_helper 0x0e4c35c2 drm_bridge_connector_disable_hpd +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm_kms_helper 0x17536e42 drm_fb_cma_get_gem_addr +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm_kms_helper 0x39c924d8 drm_gem_fb_init_with_funcs +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm_kms_helper 0x40913fe8 drm_gem_fb_get_obj +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm_kms_helper 0x46c7b260 drm_gem_fb_prepare_fb +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm_kms_helper 0x4c31a571 drm_gem_fb_create_with_dirty +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm_kms_helper 0x4cdc2743 drm_gem_fb_create +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm_kms_helper 0x6c833f68 drm_fb_cma_get_gem_obj +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm_kms_helper 0xe413d2ff drm_gem_fb_afbc_init +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm_kms_helper 0xe7d5f96b drm_gem_fb_create_with_funcs +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm_kms_helper 0xeb606fbd drm_bridge_connector_enable_hpd +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 0x551246dc intel_gvt_register_hypervisor +EXPORT_SYMBOL_GPL drivers/gpu/drm/i915/i915 0x6fbc5503 intel_gvt_unregister_hypervisor +EXPORT_SYMBOL_GPL drivers/gpu/drm/i915/i915 0xe7237b0b i915_gpu_turbo_disable +EXPORT_SYMBOL_GPL drivers/gpu/drm/ttm/ttm 0x1f28c178 ttm_dma_page_alloc_debugfs +EXPORT_SYMBOL_GPL drivers/gpu/drm/ttm/ttm 0xe72c7ff4 ttm_dma_populate +EXPORT_SYMBOL_GPL drivers/gpu/drm/ttm/ttm 0xec45cf21 ttm_dma_unpopulate +EXPORT_SYMBOL_GPL drivers/greybus/greybus 0x00639cd8 __tracepoint_gb_hd_in +EXPORT_SYMBOL_GPL drivers/greybus/greybus 0x0442541b __tracepoint_gb_message_submit +EXPORT_SYMBOL_GPL drivers/greybus/greybus 0x098da529 gb_operation_create_flags +EXPORT_SYMBOL_GPL drivers/greybus/greybus 0x0e416a68 gb_hd_output +EXPORT_SYMBOL_GPL drivers/greybus/greybus 0x0fb791b3 gb_operation_put +EXPORT_SYMBOL_GPL drivers/greybus/greybus 0x15d1942f greybus_disabled +EXPORT_SYMBOL_GPL drivers/greybus/greybus 0x2086e876 gb_operation_cancel +EXPORT_SYMBOL_GPL drivers/greybus/greybus 0x2c3c53e7 gb_interface_request_mode_switch +EXPORT_SYMBOL_GPL drivers/greybus/greybus 0x3357cc19 gb_connection_disable_rx +EXPORT_SYMBOL_GPL drivers/greybus/greybus 0x398ce6d4 gb_hd_create +EXPORT_SYMBOL_GPL drivers/greybus/greybus 0x3d52d107 __tracepoint_gb_hd_add +EXPORT_SYMBOL_GPL drivers/greybus/greybus 0x3ef75a08 __tracepoint_gb_hd_release +EXPORT_SYMBOL_GPL drivers/greybus/greybus 0x41b68ee8 gb_connection_disable_forced +EXPORT_SYMBOL_GPL drivers/greybus/greybus 0x49c0059f greybus_message_sent +EXPORT_SYMBOL_GPL drivers/greybus/greybus 0x4bc3a3c7 gb_hd_del +EXPORT_SYMBOL_GPL drivers/greybus/greybus 0x5878d453 greybus_data_rcvd +EXPORT_SYMBOL_GPL drivers/greybus/greybus 0x5aa1c096 gb_operation_response_alloc +EXPORT_SYMBOL_GPL drivers/greybus/greybus 0x5da8a778 gb_hd_add +EXPORT_SYMBOL_GPL drivers/greybus/greybus 0x6087b5ca gb_operation_request_send_sync_timeout +EXPORT_SYMBOL_GPL drivers/greybus/greybus 0x62a5f9a9 gb_hd_shutdown +EXPORT_SYMBOL_GPL drivers/greybus/greybus 0x87a1b675 gb_operation_get +EXPORT_SYMBOL_GPL drivers/greybus/greybus 0x8e21a3b1 gb_connection_destroy +EXPORT_SYMBOL_GPL drivers/greybus/greybus 0x8e7803c6 gb_hd_cport_reserve +EXPORT_SYMBOL_GPL drivers/greybus/greybus 0x8f2dd8f2 gb_connection_latency_tag_enable +EXPORT_SYMBOL_GPL drivers/greybus/greybus 0x9086d856 gb_svc_intf_set_power_mode +EXPORT_SYMBOL_GPL drivers/greybus/greybus 0x9ceda285 gb_connection_latency_tag_disable +EXPORT_SYMBOL_GPL drivers/greybus/greybus 0xa833b3e0 gb_operation_request_send +EXPORT_SYMBOL_GPL drivers/greybus/greybus 0xb4062b63 gb_connection_disable +EXPORT_SYMBOL_GPL drivers/greybus/greybus 0xb9478582 gb_operation_sync_timeout +EXPORT_SYMBOL_GPL drivers/greybus/greybus 0xb95081da gb_debugfs_get +EXPORT_SYMBOL_GPL drivers/greybus/greybus 0xbcb1d53f gb_connection_create +EXPORT_SYMBOL_GPL drivers/greybus/greybus 0xbec5ba91 greybus_deregister_driver +EXPORT_SYMBOL_GPL drivers/greybus/greybus 0xbf1b9ca0 gb_operation_get_payload_size_max +EXPORT_SYMBOL_GPL drivers/greybus/greybus 0xc09fd30d gb_connection_create_offloaded +EXPORT_SYMBOL_GPL drivers/greybus/greybus 0xc397c10a __tracepoint_gb_hd_del +EXPORT_SYMBOL_GPL drivers/greybus/greybus 0xcb8c92cd __tracepoint_gb_hd_create +EXPORT_SYMBOL_GPL drivers/greybus/greybus 0xd7e41113 gb_hd_cport_release_reserved +EXPORT_SYMBOL_GPL drivers/greybus/greybus 0xd8e8039b gb_connection_enable +EXPORT_SYMBOL_GPL drivers/greybus/greybus 0xd91ca32f gb_operation_result +EXPORT_SYMBOL_GPL drivers/greybus/greybus 0xdf7eafa1 greybus_register_driver +EXPORT_SYMBOL_GPL drivers/greybus/greybus 0xf3aa3aa5 gb_hd_put +EXPORT_SYMBOL_GPL drivers/greybus/greybus 0xf3f56d3e gb_connection_create_flags +EXPORT_SYMBOL_GPL drivers/greybus/greybus 0xf7d7d9ee gb_connection_enable_tx +EXPORT_SYMBOL_GPL drivers/greybus/greybus 0xfbb62261 gb_operation_unidirectional_timeout +EXPORT_SYMBOL_GPL drivers/hid/hid 0x05495392 hid_debug +EXPORT_SYMBOL_GPL drivers/hid/hid 0x0831f3c8 hid_match_device +EXPORT_SYMBOL_GPL drivers/hid/hid 0x0df1e5cd hid_report_raw_event +EXPORT_SYMBOL_GPL drivers/hid/hid 0x0ff6e83c hid_dump_field +EXPORT_SYMBOL_GPL drivers/hid/hid 0x10fc495c hidraw_report_event +EXPORT_SYMBOL_GPL drivers/hid/hid 0x111790e7 hid_ignore +EXPORT_SYMBOL_GPL drivers/hid/hid 0x19d52f1f hid_quirks_exit +EXPORT_SYMBOL_GPL drivers/hid/hid 0x2121bcd9 hid_input_report +EXPORT_SYMBOL_GPL drivers/hid/hid 0x236a2972 hid_dump_device +EXPORT_SYMBOL_GPL drivers/hid/hid 0x26151129 hidraw_disconnect +EXPORT_SYMBOL_GPL drivers/hid/hid 0x2bb8c87d hid_lookup_quirk +EXPORT_SYMBOL_GPL drivers/hid/hid 0x30efb587 hid_parse_report +EXPORT_SYMBOL_GPL drivers/hid/hid 0x33cd19bb hid_connect +EXPORT_SYMBOL_GPL drivers/hid/hid 0x382e19d4 hid_dump_report +EXPORT_SYMBOL_GPL drivers/hid/hid 0x434e2c9e hid_hw_stop +EXPORT_SYMBOL_GPL drivers/hid/hid 0x446a0933 hid_compare_device_paths +EXPORT_SYMBOL_GPL drivers/hid/hid 0x472f8d57 hid_hw_open +EXPORT_SYMBOL_GPL drivers/hid/hid 0x475bfa59 hid_register_report +EXPORT_SYMBOL_GPL drivers/hid/hid 0x59d9c42f hid_open_report +EXPORT_SYMBOL_GPL drivers/hid/hid 0x5cc88f3d hid_debug_event +EXPORT_SYMBOL_GPL drivers/hid/hid 0x601bdf0d hid_dump_input +EXPORT_SYMBOL_GPL drivers/hid/hid 0x61206ab1 __hid_register_driver +EXPORT_SYMBOL_GPL drivers/hid/hid 0x68a4b15c __hid_request +EXPORT_SYMBOL_GPL drivers/hid/hid 0x6d64c6c4 hid_disconnect +EXPORT_SYMBOL_GPL drivers/hid/hid 0x7021030b hidraw_connect +EXPORT_SYMBOL_GPL drivers/hid/hid 0x71c297ab hid_alloc_report_buf +EXPORT_SYMBOL_GPL drivers/hid/hid 0x7d182565 hid_setup_resolution_multiplier +EXPORT_SYMBOL_GPL drivers/hid/hid 0x8466a26d hid_resolv_usage +EXPORT_SYMBOL_GPL drivers/hid/hid 0x89ffdafa hidinput_disconnect +EXPORT_SYMBOL_GPL drivers/hid/hid 0x8b13a8b8 hid_snto32 +EXPORT_SYMBOL_GPL drivers/hid/hid 0x8c07346b hidinput_report_event +EXPORT_SYMBOL_GPL drivers/hid/hid 0x9303ae44 hid_allocate_device +EXPORT_SYMBOL_GPL drivers/hid/hid 0xa555f536 hid_check_keys_pressed +EXPORT_SYMBOL_GPL drivers/hid/hid 0xaca3bd5e hid_field_extract +EXPORT_SYMBOL_GPL drivers/hid/hid 0xaebc76f2 hid_destroy_device +EXPORT_SYMBOL_GPL drivers/hid/hid 0xaf7e4aef hid_validate_values +EXPORT_SYMBOL_GPL drivers/hid/hid 0xb959b31e hid_set_field +EXPORT_SYMBOL_GPL drivers/hid/hid 0xb9dc23e4 hidinput_connect +EXPORT_SYMBOL_GPL drivers/hid/hid 0xc250e782 hid_hw_start +EXPORT_SYMBOL_GPL drivers/hid/hid 0xc88aaa52 hidinput_find_field +EXPORT_SYMBOL_GPL drivers/hid/hid 0xcb9a53b5 hid_unregister_driver +EXPORT_SYMBOL_GPL drivers/hid/hid 0xcfa2db4d hidinput_calc_abs_res +EXPORT_SYMBOL_GPL drivers/hid/hid 0xec30bf13 hidinput_count_leds +EXPORT_SYMBOL_GPL drivers/hid/hid 0xeda6b6e4 hid_add_device +EXPORT_SYMBOL_GPL drivers/hid/hid 0xf6743c5a hid_output_report +EXPORT_SYMBOL_GPL drivers/hid/hid 0xfa142952 hid_hw_close +EXPORT_SYMBOL_GPL drivers/hid/hid 0xfa355613 hid_quirks_init +EXPORT_SYMBOL_GPL drivers/hid/hid 0xfdb9c5f9 hidinput_get_led_field +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 0xf319381f roccat_connect +EXPORT_SYMBOL_GPL drivers/hid/hid-roccat-common 0x076a4cdb roccat_common2_device_init_struct +EXPORT_SYMBOL_GPL drivers/hid/hid-roccat-common 0x499436b4 roccat_common2_sysfs_read +EXPORT_SYMBOL_GPL drivers/hid/hid-roccat-common 0x6b317edb roccat_common2_send_with_status +EXPORT_SYMBOL_GPL drivers/hid/hid-roccat-common 0x7463775b roccat_common2_receive +EXPORT_SYMBOL_GPL drivers/hid/hid-roccat-common 0xad95e945 roccat_common2_sysfs_write +EXPORT_SYMBOL_GPL drivers/hid/hid-roccat-common 0xe8964f0d roccat_common2_send +EXPORT_SYMBOL_GPL drivers/hid/hid-sensor-hub 0x20c8e883 sensor_hub_input_attr_get_raw_value +EXPORT_SYMBOL_GPL drivers/hid/hid-sensor-hub 0x2c0b3695 sensor_hub_input_get_attribute_info +EXPORT_SYMBOL_GPL drivers/hid/hid-sensor-hub 0x42edc6ed sensor_hub_set_feature +EXPORT_SYMBOL_GPL drivers/hid/hid-sensor-hub 0x4caf4559 sensor_hub_get_feature +EXPORT_SYMBOL_GPL drivers/hid/hid-sensor-hub 0x63be457c hid_sensor_get_usage_index +EXPORT_SYMBOL_GPL drivers/hid/hid-sensor-hub 0x90ebeba2 sensor_hub_remove_callback +EXPORT_SYMBOL_GPL drivers/hid/hid-sensor-hub 0xccda8475 sensor_hub_register_callback +EXPORT_SYMBOL_GPL drivers/hid/hid-sensor-hub 0xcde95685 sensor_hub_device_close +EXPORT_SYMBOL_GPL drivers/hid/hid-sensor-hub 0xedcaef43 sensor_hub_device_open +EXPORT_SYMBOL_GPL drivers/hid/i2c-hid/i2c-hid 0xdf19150f i2c_hid_ll_driver +EXPORT_SYMBOL_GPL drivers/hid/uhid 0x12241eaf uhid_hid_driver +EXPORT_SYMBOL_GPL drivers/hid/usbhid/usbhid 0x0b07744e hiddev_hid_event +EXPORT_SYMBOL_GPL drivers/hid/usbhid/usbhid 0x535f2dba usb_hid_driver +EXPORT_SYMBOL_GPL drivers/hsi/hsi 0x0b858e46 hsi_alloc_msg +EXPORT_SYMBOL_GPL drivers/hsi/hsi 0x0fd41f76 hsi_register_controller +EXPORT_SYMBOL_GPL drivers/hsi/hsi 0x1b34ab58 hsi_new_client +EXPORT_SYMBOL_GPL drivers/hsi/hsi 0x2173a1b3 hsi_claim_port +EXPORT_SYMBOL_GPL drivers/hsi/hsi 0x413555e8 hsi_release_port +EXPORT_SYMBOL_GPL drivers/hsi/hsi 0x4694482a hsi_get_channel_id_by_name +EXPORT_SYMBOL_GPL drivers/hsi/hsi 0x509a3bd5 hsi_register_client_driver +EXPORT_SYMBOL_GPL drivers/hsi/hsi 0x5210a5bf hsi_board_list +EXPORT_SYMBOL_GPL drivers/hsi/hsi 0x56d7a1dc hsi_port_unregister_clients +EXPORT_SYMBOL_GPL drivers/hsi/hsi 0x57925c9f hsi_async +EXPORT_SYMBOL_GPL drivers/hsi/hsi 0x5ac88a2c hsi_put_controller +EXPORT_SYMBOL_GPL drivers/hsi/hsi 0x6295d0e3 hsi_unregister_controller +EXPORT_SYMBOL_GPL drivers/hsi/hsi 0x7f824438 hsi_remove_client +EXPORT_SYMBOL_GPL drivers/hsi/hsi 0x836d01f6 hsi_alloc_controller +EXPORT_SYMBOL_GPL drivers/hsi/hsi 0xa4672512 hsi_free_msg +EXPORT_SYMBOL_GPL drivers/hsi/hsi 0xa7a33c96 hsi_unregister_port_event +EXPORT_SYMBOL_GPL drivers/hsi/hsi 0xb86e5312 hsi_register_port_event +EXPORT_SYMBOL_GPL drivers/hsi/hsi 0xd89b2861 hsi_event +EXPORT_SYMBOL_GPL drivers/hv/hv_vmbus 0x04adf16c vmbus_connection +EXPORT_SYMBOL_GPL drivers/hv/hv_vmbus 0x0ed2f9cf vmbus_setevent +EXPORT_SYMBOL_GPL drivers/hv/hv_vmbus 0x12696d92 vmbus_hvsock_device_unregister +EXPORT_SYMBOL_GPL drivers/hv/hv_vmbus 0x1c938ae2 vmbus_connect_ring +EXPORT_SYMBOL_GPL drivers/hv/hv_vmbus 0x2007a2c4 vmbus_establish_gpadl +EXPORT_SYMBOL_GPL drivers/hv/hv_vmbus 0x31e2e77f vmbus_free_mmio +EXPORT_SYMBOL_GPL drivers/hv/hv_vmbus 0x42b854c0 vmbus_sendpacket_mpb_desc +EXPORT_SYMBOL_GPL drivers/hv/hv_vmbus 0x46a417ca vmbus_proto_version +EXPORT_SYMBOL_GPL drivers/hv/hv_vmbus 0x4957de7f __hv_pkt_iter_next +EXPORT_SYMBOL_GPL drivers/hv/hv_vmbus 0x4b2210b8 vmbus_send_tl_connect_request +EXPORT_SYMBOL_GPL drivers/hv/hv_vmbus 0x4eb8147c vmbus_disconnect_ring +EXPORT_SYMBOL_GPL drivers/hv/hv_vmbus 0x53589d9e vmbus_send_modifychannel +EXPORT_SYMBOL_GPL drivers/hv/hv_vmbus 0x59d5c131 vmbus_driver_unregister +EXPORT_SYMBOL_GPL drivers/hv/hv_vmbus 0x5cd86391 vmbus_are_subchannels_present +EXPORT_SYMBOL_GPL drivers/hv/hv_vmbus 0x69015754 hv_pkt_iter_first +EXPORT_SYMBOL_GPL drivers/hv/hv_vmbus 0x746869b4 vmbus_recvpacket_raw +EXPORT_SYMBOL_GPL drivers/hv/hv_vmbus 0x7dcb5ac6 __vmbus_driver_register +EXPORT_SYMBOL_GPL drivers/hv/hv_vmbus 0x859cd80e vmbus_free_ring +EXPORT_SYMBOL_GPL drivers/hv/hv_vmbus 0x897a0091 vmbus_alloc_ring +EXPORT_SYMBOL_GPL drivers/hv/hv_vmbus 0x8fc8ce2b vmbus_prep_negotiate_resp +EXPORT_SYMBOL_GPL drivers/hv/hv_vmbus 0x90a5dd8b vmbus_set_sc_create_callback +EXPORT_SYMBOL_GPL drivers/hv/hv_vmbus 0x943255ff hv_ringbuffer_get_debuginfo +EXPORT_SYMBOL_GPL drivers/hv/hv_vmbus 0xa36efcbb vmbus_sendpacket_pagebuffer +EXPORT_SYMBOL_GPL drivers/hv/hv_vmbus 0xb47aebdd vmbus_allocate_mmio +EXPORT_SYMBOL_GPL drivers/hv/hv_vmbus 0xc1dbd648 vmbus_close +EXPORT_SYMBOL_GPL drivers/hv/hv_vmbus 0xc6716b8f vmbus_set_chn_rescind_callback +EXPORT_SYMBOL_GPL drivers/hv/hv_vmbus 0xcebf521d vmbus_set_event +EXPORT_SYMBOL_GPL drivers/hv/hv_vmbus 0xdff7d729 vmbus_teardown_gpadl +EXPORT_SYMBOL_GPL drivers/hv/hv_vmbus 0xe5892d53 hv_pkt_iter_close +EXPORT_SYMBOL_GPL drivers/hv/hv_vmbus 0xedd537c8 vmbus_open +EXPORT_SYMBOL_GPL drivers/hwmon/adt7x10 0x1b64da38 adt7x10_remove +EXPORT_SYMBOL_GPL drivers/hwmon/adt7x10 0x82949ebd adt7x10_dev_pm_ops +EXPORT_SYMBOL_GPL drivers/hwmon/adt7x10 0x8c3462ef adt7x10_probe +EXPORT_SYMBOL_GPL drivers/hwmon/ltc2947-core 0x5cbb5274 ltc2947_core_probe +EXPORT_SYMBOL_GPL drivers/hwmon/ltc2947-core 0x81b1f745 ltc2947_pm_ops +EXPORT_SYMBOL_GPL drivers/hwmon/ltc2947-core 0xbc54f93e ltc2947_of_match +EXPORT_SYMBOL_GPL drivers/hwmon/pmbus/pmbus_core 0x147165c9 pmbus_clear_faults +EXPORT_SYMBOL_GPL drivers/hwmon/pmbus/pmbus_core 0x1d1cdb26 pmbus_update_byte_data +EXPORT_SYMBOL_GPL drivers/hwmon/pmbus/pmbus_core 0x1e1b5909 pmbus_regulator_ops +EXPORT_SYMBOL_GPL drivers/hwmon/pmbus/pmbus_core 0x23d74d16 pmbus_get_debugfs_dir +EXPORT_SYMBOL_GPL drivers/hwmon/pmbus/pmbus_core 0x2465f554 pmbus_read_byte_data +EXPORT_SYMBOL_GPL drivers/hwmon/pmbus/pmbus_core 0x24f3beb2 pmbus_write_byte_data +EXPORT_SYMBOL_GPL drivers/hwmon/pmbus/pmbus_core 0x2852b64d pmbus_check_word_register +EXPORT_SYMBOL_GPL drivers/hwmon/pmbus/pmbus_core 0x50d6c1f7 pmbus_update_fan +EXPORT_SYMBOL_GPL drivers/hwmon/pmbus/pmbus_core 0x9b96ab79 pmbus_get_driver_info +EXPORT_SYMBOL_GPL drivers/hwmon/pmbus/pmbus_core 0xa45ce785 pmbus_set_page +EXPORT_SYMBOL_GPL drivers/hwmon/pmbus/pmbus_core 0xb24b732b pmbus_read_word_data +EXPORT_SYMBOL_GPL drivers/hwmon/pmbus/pmbus_core 0xb3047e22 pmbus_do_probe +EXPORT_SYMBOL_GPL drivers/hwmon/pmbus/pmbus_core 0xb9b06091 pmbus_clear_cache +EXPORT_SYMBOL_GPL drivers/hwmon/pmbus/pmbus_core 0xc75c1605 pmbus_do_remove +EXPORT_SYMBOL_GPL drivers/hwmon/pmbus/pmbus_core 0xcd2d42a2 pmbus_get_fan_rate_device +EXPORT_SYMBOL_GPL drivers/hwmon/pmbus/pmbus_core 0xdaad6220 pmbus_get_fan_rate_cached +EXPORT_SYMBOL_GPL drivers/hwmon/pmbus/pmbus_core 0xee7b28c4 pmbus_write_word_data +EXPORT_SYMBOL_GPL drivers/hwmon/pmbus/pmbus_core 0xf2c4d6bb pmbus_write_byte +EXPORT_SYMBOL_GPL drivers/hwmon/pmbus/pmbus_core 0xf9046423 pmbus_check_byte_register +EXPORT_SYMBOL_GPL drivers/hwtracing/intel_th/intel_th 0x10d26f18 intel_th_free +EXPORT_SYMBOL_GPL drivers/hwtracing/intel_th/intel_th 0x2b7ba31c intel_th_trace_switch +EXPORT_SYMBOL_GPL drivers/hwtracing/intel_th/intel_th 0x482f7d0a intel_th_alloc +EXPORT_SYMBOL_GPL drivers/hwtracing/intel_th/intel_th 0x484799ef intel_th_output_enable +EXPORT_SYMBOL_GPL drivers/hwtracing/intel_th/intel_th 0x5bb8b492 intel_th_driver_unregister +EXPORT_SYMBOL_GPL drivers/hwtracing/intel_th/intel_th 0x69448e6e intel_th_trace_disable +EXPORT_SYMBOL_GPL drivers/hwtracing/intel_th/intel_th 0xbe2defb3 intel_th_trace_enable +EXPORT_SYMBOL_GPL drivers/hwtracing/intel_th/intel_th 0xc32c68a7 intel_th_set_output +EXPORT_SYMBOL_GPL drivers/hwtracing/intel_th/intel_th 0xee4a3b86 intel_th_driver_register +EXPORT_SYMBOL_GPL drivers/hwtracing/intel_th/intel_th_msu 0x09dac9cd intel_th_msu_buffer_register +EXPORT_SYMBOL_GPL drivers/hwtracing/intel_th/intel_th_msu 0x3f1621d8 intel_th_msc_window_unlock +EXPORT_SYMBOL_GPL drivers/hwtracing/intel_th/intel_th_msu 0x47633b9a intel_th_msu_buffer_unregister +EXPORT_SYMBOL_GPL drivers/hwtracing/stm/stm_core 0x09b57d1c stm_unregister_protocol +EXPORT_SYMBOL_GPL drivers/hwtracing/stm/stm_core 0x2fb9f93d stm_source_register_device +EXPORT_SYMBOL_GPL drivers/hwtracing/stm/stm_core 0x8e85fac6 stm_data_write +EXPORT_SYMBOL_GPL drivers/hwtracing/stm/stm_core 0x93ed5c2e stm_unregister_device +EXPORT_SYMBOL_GPL drivers/hwtracing/stm/stm_core 0x9a57d451 stm_register_device +EXPORT_SYMBOL_GPL drivers/hwtracing/stm/stm_core 0xb368704c stm_register_protocol +EXPORT_SYMBOL_GPL drivers/hwtracing/stm/stm_core 0xe1ac2889 to_pdrv_policy_node +EXPORT_SYMBOL_GPL drivers/hwtracing/stm/stm_core 0xe559781e stm_source_write +EXPORT_SYMBOL_GPL drivers/hwtracing/stm/stm_core 0xedd6f957 stm_source_unregister_device +EXPORT_SYMBOL_GPL drivers/i2c/busses/i2c-amd-mp2-pci 0x128d91f6 amd_mp2_unregister_cb +EXPORT_SYMBOL_GPL drivers/i2c/busses/i2c-amd-mp2-pci 0x46a7b5fc amd_mp2_rw_timeout +EXPORT_SYMBOL_GPL drivers/i2c/busses/i2c-amd-mp2-pci 0x6971cee4 amd_mp2_find_device +EXPORT_SYMBOL_GPL drivers/i2c/busses/i2c-amd-mp2-pci 0x828ca806 amd_mp2_bus_enable_set +EXPORT_SYMBOL_GPL drivers/i2c/busses/i2c-amd-mp2-pci 0xa0271121 amd_mp2_rw +EXPORT_SYMBOL_GPL drivers/i2c/busses/i2c-amd-mp2-pci 0xabbf9fb7 amd_mp2_register_cb +EXPORT_SYMBOL_GPL drivers/i2c/busses/i2c-amd-mp2-pci 0xe2ff676b amd_mp2_process_event +EXPORT_SYMBOL_GPL drivers/i2c/busses/i2c-nforce2 0x3fb3eaca nforce2_smbus +EXPORT_SYMBOL_GPL drivers/i2c/i2c-mux 0x888a5067 i2c_mux_add_adapter +EXPORT_SYMBOL_GPL drivers/i2c/i2c-mux 0xe408d128 i2c_mux_del_adapters +EXPORT_SYMBOL_GPL drivers/i2c/i2c-mux 0xf870a612 i2c_root_adapter +EXPORT_SYMBOL_GPL drivers/i2c/i2c-mux 0xfe83329a i2c_mux_alloc +EXPORT_SYMBOL_GPL drivers/i2c/i2c-smbus 0x5319a6ba i2c_register_spd +EXPORT_SYMBOL_GPL drivers/i2c/i2c-smbus 0xa8051a27 i2c_handle_smbus_alert +EXPORT_SYMBOL_GPL drivers/i3c/i3c 0x0a96b280 i3c_generic_ibi_alloc_pool +EXPORT_SYMBOL_GPL drivers/i3c/i3c 0x10e132ad i3c_device_enable_ibi +EXPORT_SYMBOL_GPL drivers/i3c/i3c 0x1252e663 i3c_device_get_info +EXPORT_SYMBOL_GPL drivers/i3c/i3c 0x4c38d2ca dev_to_i3cdev +EXPORT_SYMBOL_GPL drivers/i3c/i3c 0x4fa8fb75 i3cdev_to_dev +EXPORT_SYMBOL_GPL drivers/i3c/i3c 0x5176ca39 i3c_driver_register_with_owner +EXPORT_SYMBOL_GPL drivers/i3c/i3c 0x5f301783 i3c_master_disec_locked +EXPORT_SYMBOL_GPL drivers/i3c/i3c 0x6578f251 i3c_master_enec_locked +EXPORT_SYMBOL_GPL drivers/i3c/i3c 0x76fe3e05 i3c_generic_ibi_free_pool +EXPORT_SYMBOL_GPL drivers/i3c/i3c 0x7fa936e4 i3c_master_entdaa_locked +EXPORT_SYMBOL_GPL drivers/i3c/i3c 0x90c3fc2f i3c_master_do_daa +EXPORT_SYMBOL_GPL drivers/i3c/i3c 0x977103a5 i3c_master_queue_ibi +EXPORT_SYMBOL_GPL drivers/i3c/i3c 0x9996a075 i3c_master_get_free_addr +EXPORT_SYMBOL_GPL drivers/i3c/i3c 0x9b1a902e i3c_generic_ibi_get_free_slot +EXPORT_SYMBOL_GPL drivers/i3c/i3c 0x9eea5bce i3c_device_disable_ibi +EXPORT_SYMBOL_GPL drivers/i3c/i3c 0xa186f2f1 i3c_device_request_ibi +EXPORT_SYMBOL_GPL drivers/i3c/i3c 0xa67a21fc i3c_master_set_info +EXPORT_SYMBOL_GPL drivers/i3c/i3c 0xaef38b41 i3c_device_match_id +EXPORT_SYMBOL_GPL drivers/i3c/i3c 0xbeeb5d71 i3c_master_defslvs_locked +EXPORT_SYMBOL_GPL drivers/i3c/i3c 0xd27d6c98 i3c_device_do_priv_xfers +EXPORT_SYMBOL_GPL drivers/i3c/i3c 0xd8cf4373 i3c_master_register +EXPORT_SYMBOL_GPL drivers/i3c/i3c 0xdfc48035 i3c_device_free_ibi +EXPORT_SYMBOL_GPL drivers/i3c/i3c 0xf0297a11 i3c_master_add_i3c_dev_locked +EXPORT_SYMBOL_GPL drivers/i3c/i3c 0xf0324a2e i3c_driver_unregister +EXPORT_SYMBOL_GPL drivers/i3c/i3c 0xfb88f2b7 i3c_master_unregister +EXPORT_SYMBOL_GPL drivers/i3c/i3c 0xfc935edb i3c_generic_ibi_recycle_slot +EXPORT_SYMBOL_GPL drivers/iio/accel/adxl372 0x6f06b74a adxl372_readable_noinc_reg +EXPORT_SYMBOL_GPL drivers/iio/accel/adxl372 0x71c4fa18 adxl372_probe +EXPORT_SYMBOL_GPL drivers/iio/accel/bmc150-accel-core 0x372e853d bmc150_accel_core_remove +EXPORT_SYMBOL_GPL drivers/iio/accel/bmc150-accel-core 0x45d4cfe1 bmc150_accel_pm_ops +EXPORT_SYMBOL_GPL drivers/iio/accel/bmc150-accel-core 0x54d4edc9 bmc150_accel_core_probe +EXPORT_SYMBOL_GPL drivers/iio/accel/bmc150-accel-core 0xa75d49b6 bmc150_regmap_conf +EXPORT_SYMBOL_GPL drivers/iio/accel/mma7455_core 0xa3088553 mma7455_core_probe +EXPORT_SYMBOL_GPL drivers/iio/accel/mma7455_core 0xe60aca10 mma7455_core_regmap +EXPORT_SYMBOL_GPL drivers/iio/accel/mma7455_core 0xfc758e62 mma7455_core_remove +EXPORT_SYMBOL_GPL drivers/iio/adc/ad7091r-base 0xd0916bb4 ad7091r_probe +EXPORT_SYMBOL_GPL drivers/iio/adc/ad7091r-base 0xe4006da4 ad7091r_regmap_config +EXPORT_SYMBOL_GPL drivers/iio/adc/ad7606 0x54772bff ad7606_probe +EXPORT_SYMBOL_GPL drivers/iio/adc/ad7606 0x7476fffe ad7606_pm_ops +EXPORT_SYMBOL_GPL drivers/iio/adc/ad_sigma_delta 0x2dfc2b94 ad_sd_calibrate_all +EXPORT_SYMBOL_GPL drivers/iio/adc/ad_sigma_delta 0x37bcebcb ad_sd_cleanup_buffer_and_trigger +EXPORT_SYMBOL_GPL drivers/iio/adc/ad_sigma_delta 0x5955419c ad_sigma_delta_single_conversion +EXPORT_SYMBOL_GPL drivers/iio/adc/ad_sigma_delta 0x618be5e1 ad_sd_calibrate +EXPORT_SYMBOL_GPL drivers/iio/adc/ad_sigma_delta 0x96c11f37 ad_sd_init +EXPORT_SYMBOL_GPL drivers/iio/adc/ad_sigma_delta 0xa0903e2f ad_sd_read_reg +EXPORT_SYMBOL_GPL drivers/iio/adc/ad_sigma_delta 0xa4d3a85e ad_sd_setup_buffer_and_trigger +EXPORT_SYMBOL_GPL drivers/iio/adc/ad_sigma_delta 0xb6edd399 ad_sd_write_reg +EXPORT_SYMBOL_GPL drivers/iio/adc/ad_sigma_delta 0xd2b921fc ad_sd_reset +EXPORT_SYMBOL_GPL drivers/iio/adc/ad_sigma_delta 0xf8987129 ad_sd_validate_trigger +EXPORT_SYMBOL_GPL drivers/iio/adc/ad_sigma_delta 0xffb62bd2 ad_sd_set_comm +EXPORT_SYMBOL_GPL drivers/iio/adc/adi-axi-adc 0x3295b85d adi_axi_adc_conv_priv +EXPORT_SYMBOL_GPL drivers/iio/adc/adi-axi-adc 0x457cbe1f devm_adi_axi_adc_conv_register +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 0x7a711aef iio_channel_start_all_cb +EXPORT_SYMBOL_GPL drivers/iio/buffer/industrialio-buffer-cb 0x82f6e561 iio_channel_get_all_cb +EXPORT_SYMBOL_GPL drivers/iio/buffer/industrialio-buffer-cb 0x86f9ec38 iio_channel_cb_get_channels +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 0xac82e1b9 iio_channel_cb_get_iio_dev +EXPORT_SYMBOL_GPL drivers/iio/buffer/industrialio-buffer-dma 0x05fdc5dc iio_dma_buffer_set_bytes_per_datum +EXPORT_SYMBOL_GPL drivers/iio/buffer/industrialio-buffer-dma 0x15411cf4 iio_dma_buffer_request_update +EXPORT_SYMBOL_GPL drivers/iio/buffer/industrialio-buffer-dma 0x17d06b4c iio_dma_buffer_block_done +EXPORT_SYMBOL_GPL drivers/iio/buffer/industrialio-buffer-dma 0x340c2ca2 iio_dma_buffer_exit +EXPORT_SYMBOL_GPL drivers/iio/buffer/industrialio-buffer-dma 0x382947a4 iio_dma_buffer_set_length +EXPORT_SYMBOL_GPL drivers/iio/buffer/industrialio-buffer-dma 0x6223ce09 iio_dma_buffer_release +EXPORT_SYMBOL_GPL drivers/iio/buffer/industrialio-buffer-dma 0x6a9eeea2 iio_dma_buffer_disable +EXPORT_SYMBOL_GPL drivers/iio/buffer/industrialio-buffer-dma 0x9337d6c5 iio_dma_buffer_block_list_abort +EXPORT_SYMBOL_GPL drivers/iio/buffer/industrialio-buffer-dma 0x99b1ad0f iio_dma_buffer_read +EXPORT_SYMBOL_GPL drivers/iio/buffer/industrialio-buffer-dma 0x9f476d8d iio_dma_buffer_data_available +EXPORT_SYMBOL_GPL drivers/iio/buffer/industrialio-buffer-dma 0x9fc3f8f8 iio_dma_buffer_init +EXPORT_SYMBOL_GPL drivers/iio/buffer/industrialio-buffer-dma 0xee1a9417 iio_dma_buffer_enable +EXPORT_SYMBOL_GPL drivers/iio/buffer/industrialio-buffer-dmaengine 0x8eccddf6 iio_dmaengine_buffer_free +EXPORT_SYMBOL_GPL drivers/iio/buffer/industrialio-buffer-dmaengine 0xa25d7905 devm_iio_dmaengine_buffer_alloc +EXPORT_SYMBOL_GPL drivers/iio/buffer/industrialio-hw-consumer 0x3391543d iio_hw_consumer_disable +EXPORT_SYMBOL_GPL drivers/iio/buffer/industrialio-hw-consumer 0x7980da8d 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 0xfad270b1 devm_iio_hw_consumer_alloc +EXPORT_SYMBOL_GPL drivers/iio/buffer/industrialio-triggered-buffer 0x9670b269 devm_iio_triggered_buffer_setup +EXPORT_SYMBOL_GPL drivers/iio/chemical/bme680_core 0x645a8d7a bme680_core_probe +EXPORT_SYMBOL_GPL drivers/iio/common/cros_ec_sensors/cros_ec_sensors_core 0x0c993dd1 cros_ec_sensors_read_lpc +EXPORT_SYMBOL_GPL drivers/iio/common/cros_ec_sensors/cros_ec_sensors_core 0x621649fc cros_ec_sensor_fifo_attributes +EXPORT_SYMBOL_GPL drivers/iio/common/cros_ec_sensors/cros_ec_sensors_core 0x6ce82ea0 cros_ec_sensors_core_read_avail +EXPORT_SYMBOL_GPL drivers/iio/common/cros_ec_sensors/cros_ec_sensors_core 0x708838db cros_ec_sensors_core_read +EXPORT_SYMBOL_GPL drivers/iio/common/cros_ec_sensors/cros_ec_sensors_core 0x950d109c cros_ec_sensors_push_data +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 0xaf2e0db9 cros_ec_sensors_ext_info +EXPORT_SYMBOL_GPL drivers/iio/common/cros_ec_sensors/cros_ec_sensors_core 0xb7e9d920 cros_ec_motion_send_host_cmd +EXPORT_SYMBOL_GPL drivers/iio/common/cros_ec_sensors/cros_ec_sensors_core 0xba21cf1f cros_ec_sensors_core_write +EXPORT_SYMBOL_GPL drivers/iio/common/cros_ec_sensors/cros_ec_sensors_core 0xd5b9958e cros_ec_sensors_read_cmd +EXPORT_SYMBOL_GPL drivers/iio/common/cros_ec_sensors/cros_ec_sensors_core 0xf6ca37e5 cros_ec_sensors_core_init +EXPORT_SYMBOL_GPL drivers/iio/dac/ad5592r-base 0x1de251aa ad5592r_remove +EXPORT_SYMBOL_GPL drivers/iio/dac/ad5592r-base 0xab130b4b ad5592r_probe +EXPORT_SYMBOL_GPL drivers/iio/dac/ad5686 0xd8406377 ad5686_remove +EXPORT_SYMBOL_GPL drivers/iio/dac/ad5686 0xe8d942f4 ad5686_probe +EXPORT_SYMBOL_GPL drivers/iio/gyro/bmg160_core 0x04f6ee7b bmg160_core_probe +EXPORT_SYMBOL_GPL drivers/iio/gyro/bmg160_core 0x5a5fa96f bmg160_core_remove +EXPORT_SYMBOL_GPL drivers/iio/gyro/bmg160_core 0xd39778d6 bmg160_pm_ops +EXPORT_SYMBOL_GPL drivers/iio/gyro/fxas21002c_core 0x84e8fcae fxas21002c_core_remove +EXPORT_SYMBOL_GPL drivers/iio/gyro/fxas21002c_core 0x870d0e86 fxas21002c_pm_ops +EXPORT_SYMBOL_GPL drivers/iio/gyro/fxas21002c_core 0xfaec74fa fxas21002c_core_probe +EXPORT_SYMBOL_GPL drivers/iio/imu/adis_lib 0x01601207 __adis_check_status +EXPORT_SYMBOL_GPL drivers/iio/imu/adis_lib 0x27e474ad __adis_initial_startup +EXPORT_SYMBOL_GPL drivers/iio/imu/adis_lib 0x2b40b0d5 __adis_reset +EXPORT_SYMBOL_GPL drivers/iio/imu/adis_lib 0x361452ee __adis_write_reg +EXPORT_SYMBOL_GPL drivers/iio/imu/adis_lib 0x470c39cd __adis_update_bits_base +EXPORT_SYMBOL_GPL drivers/iio/imu/adis_lib 0x52092ab6 adis_remove_trigger +EXPORT_SYMBOL_GPL drivers/iio/imu/adis_lib 0x754aa4dd adis_update_scan_mode +EXPORT_SYMBOL_GPL drivers/iio/imu/adis_lib 0x7e4d50bc adis_single_conversion +EXPORT_SYMBOL_GPL drivers/iio/imu/adis_lib 0xa62b77e7 adis_cleanup_buffer_and_trigger +EXPORT_SYMBOL_GPL drivers/iio/imu/adis_lib 0xab2783b7 __adis_read_reg +EXPORT_SYMBOL_GPL drivers/iio/imu/adis_lib 0xb7528a35 adis_setup_buffer_and_trigger +EXPORT_SYMBOL_GPL drivers/iio/imu/adis_lib 0xbb9d7863 devm_adis_setup_buffer_and_trigger +EXPORT_SYMBOL_GPL drivers/iio/imu/adis_lib 0xd41c2664 adis_init +EXPORT_SYMBOL_GPL drivers/iio/imu/adis_lib 0xf08e610d adis_probe_trigger +EXPORT_SYMBOL_GPL drivers/iio/imu/adis_lib 0xf21204dd devm_adis_probe_trigger +EXPORT_SYMBOL_GPL drivers/iio/imu/bmi160/bmi160_core 0x596b4f4f bmi160_core_probe +EXPORT_SYMBOL_GPL drivers/iio/imu/fxos8700_core 0xa0bd3b94 fxos8700_core_probe +EXPORT_SYMBOL_GPL drivers/iio/imu/inv_mpu6050/inv-mpu6050 0x1ef680a8 inv_mpu_pmops +EXPORT_SYMBOL_GPL drivers/iio/imu/inv_mpu6050/inv-mpu6050 0x46c6eba9 inv_mpu_core_probe +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x0402fcf5 devm_iio_trigger_alloc +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x049b15cb iio_read_channel_scale +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x08dd96ba iio_enum_write +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x09df3a50 iio_map_array_register +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x0b7301c2 iio_convert_raw_to_processed +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x0e9b9beb iio_validate_scan_mask_onehot +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x1587bfdf iio_device_claim_direct_mode +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x23caf553 __devm_iio_trigger_register +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x26f6b499 iio_str_to_fixpoint +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x28cf518a iio_read_channel_offset +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x29e9d147 iio_channel_get +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x2d4ea199 iio_read_channel_raw +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x3a1d40fb iio_read_channel_attribute +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x3b651a54 iio_read_channel_average_raw +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x4083847a iio_device_release_direct_mode +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x48b94396 iio_buffer_set_attrs +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x4bf52343 iio_device_attach_buffer +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x4dce7dd4 iio_format_value +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x579203bd devm_iio_device_alloc +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x5c3bc274 iio_channel_release_all +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x605bc666 iio_read_avail_channel_attribute +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x60c9da46 __devm_iio_device_register +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x64fa2dfd iio_write_channel_ext_info +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x668338a5 iio_read_channel_ext_info +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x6b4bc7fb iio_channel_release +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x6db51876 iio_write_channel_attribute +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x724a3bca iio_push_to_buffers +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x72c73b59 iio_write_channel_raw +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x754c4fe3 iio_read_max_channel_raw +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x7e30996e iio_channel_get_all +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0xa092a5d5 iio_enum_read +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0xa0e16b3c iio_map_array_unregister +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0xa10f7979 iio_dealloc_pollfunc +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0xa2569091 iio_enum_available_read +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0xaccdf831 iio_buffer_get +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0xafe94c8c iio_get_channel_type +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0xc973e1c3 devm_iio_channel_get_all +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0xc9ac695b iio_get_channel_ext_info_count +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0xcbcb2f74 iio_update_buffers +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0xcdb20318 devm_iio_channel_get +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0xd01916c4 iio_read_avail_channel_raw +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0xd08f453d iio_read_channel_processed +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0xd7497f2e iio_alloc_pollfunc +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0xd97d30db iio_show_mount_matrix +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0xf3f5c209 iio_buffer_put +EXPORT_SYMBOL_GPL drivers/iio/magnetometer/rm3100-core 0x0a1424e0 rm3100_volatile_table +EXPORT_SYMBOL_GPL drivers/iio/magnetometer/rm3100-core 0x0c6447ee rm3100_common_probe +EXPORT_SYMBOL_GPL drivers/iio/magnetometer/rm3100-core 0xaa911f08 rm3100_readable_table +EXPORT_SYMBOL_GPL drivers/iio/magnetometer/rm3100-core 0xcc7209be rm3100_writable_table +EXPORT_SYMBOL_GPL drivers/iio/pressure/mpl115 0x7430a734 mpl115_probe +EXPORT_SYMBOL_GPL drivers/iio/pressure/zpa2326 0x0d4f2166 zpa2326_isreg_readable +EXPORT_SYMBOL_GPL drivers/iio/pressure/zpa2326 0x5515cbbd zpa2326_isreg_precious +EXPORT_SYMBOL_GPL drivers/iio/pressure/zpa2326 0x9555ad3f zpa2326_remove +EXPORT_SYMBOL_GPL drivers/iio/pressure/zpa2326 0xc953aae3 zpa2326_pm_ops +EXPORT_SYMBOL_GPL drivers/iio/pressure/zpa2326 0xe0eff544 zpa2326_isreg_writeable +EXPORT_SYMBOL_GPL drivers/iio/pressure/zpa2326 0xf58e0df0 zpa2326_probe +EXPORT_SYMBOL_GPL drivers/infiniband/core/ib_core 0xdbd019c4 ib_wq +EXPORT_SYMBOL_GPL drivers/infiniband/ulp/rtrs/rtrs-core 0x02834e99 rtrs_cq_qp_destroy +EXPORT_SYMBOL_GPL drivers/infiniband/ulp/rtrs/rtrs-core 0x02f1dc51 rtrs_stop_hb +EXPORT_SYMBOL_GPL drivers/infiniband/ulp/rtrs/rtrs-core 0x220adec8 rtrs_iu_post_rdma_write_imm +EXPORT_SYMBOL_GPL drivers/infiniband/ulp/rtrs/rtrs-core 0x2269e52b rtrs_post_recv_empty +EXPORT_SYMBOL_GPL drivers/infiniband/ulp/rtrs/rtrs-core 0x3344794c rtrs_iu_post_send +EXPORT_SYMBOL_GPL drivers/infiniband/ulp/rtrs/rtrs-core 0x6562fbd8 rtrs_iu_alloc +EXPORT_SYMBOL_GPL drivers/infiniband/ulp/rtrs/rtrs-core 0x722d9bf9 rtrs_send_hb_ack +EXPORT_SYMBOL_GPL drivers/infiniband/ulp/rtrs/rtrs-core 0x7b2c55af rtrs_start_hb +EXPORT_SYMBOL_GPL drivers/infiniband/ulp/rtrs/rtrs-core 0xa6ceca01 rtrs_init_hb +EXPORT_SYMBOL_GPL drivers/infiniband/ulp/rtrs/rtrs-core 0xaf1b6c99 rtrs_post_rdma_write_imm_empty +EXPORT_SYMBOL_GPL drivers/infiniband/ulp/rtrs/rtrs-core 0xb152b996 rtrs_cq_qp_create +EXPORT_SYMBOL_GPL drivers/infiniband/ulp/rtrs/rtrs-core 0xb8377953 rtrs_iu_free +EXPORT_SYMBOL_GPL drivers/infiniband/ulp/rtrs/rtrs-core 0xf6713df5 rtrs_iu_post_recv +EXPORT_SYMBOL_GPL drivers/input/ff-memless 0x4ca86e79 input_ff_create_memless +EXPORT_SYMBOL_GPL drivers/input/matrix-keymap 0x1589eaf5 matrix_keypad_parse_properties +EXPORT_SYMBOL_GPL drivers/input/misc/adxl34x 0x49a4fcbd adxl34x_remove +EXPORT_SYMBOL_GPL drivers/input/misc/adxl34x 0x4bd4c870 adxl34x_probe +EXPORT_SYMBOL_GPL drivers/input/misc/adxl34x 0x66535a18 adxl34x_suspend +EXPORT_SYMBOL_GPL drivers/input/misc/adxl34x 0xe4586827 adxl34x_resume +EXPORT_SYMBOL_GPL drivers/input/rmi4/rmi_core 0x1e7a86be rmi_set_attn_data +EXPORT_SYMBOL_GPL drivers/input/rmi4/rmi_core 0x2250bed2 rmi_of_property_read_u32 +EXPORT_SYMBOL_GPL drivers/input/rmi4/rmi_core 0x376f38e8 rmi_unregister_function_handler +EXPORT_SYMBOL_GPL drivers/input/rmi4/rmi_core 0x4bbfa897 rmi_register_transport_device +EXPORT_SYMBOL_GPL drivers/input/rmi4/rmi_core 0x5c5ff789 rmi_dbg +EXPORT_SYMBOL_GPL drivers/input/rmi4/rmi_core 0x6a9868f6 rmi_2d_sensor_abs_report +EXPORT_SYMBOL_GPL drivers/input/rmi4/rmi_core 0x741d69a2 rmi_2d_sensor_rel_report +EXPORT_SYMBOL_GPL drivers/input/rmi4/rmi_core 0x7a069d72 rmi_2d_sensor_configure_input +EXPORT_SYMBOL_GPL drivers/input/rmi4/rmi_core 0x9a1a75c8 rmi_2d_sensor_abs_process +EXPORT_SYMBOL_GPL drivers/input/rmi4/rmi_core 0xc6105f7f rmi_driver_suspend +EXPORT_SYMBOL_GPL drivers/input/rmi4/rmi_core 0xcdde48c0 rmi_driver_resume +EXPORT_SYMBOL_GPL drivers/input/rmi4/rmi_core 0xeaadebe7 rmi_2d_sensor_of_probe +EXPORT_SYMBOL_GPL drivers/input/rmi4/rmi_core 0xff8273dd __rmi_register_function_handler +EXPORT_SYMBOL_GPL drivers/input/touchscreen/cyttsp4_core 0x7559ce86 cyttsp4_remove +EXPORT_SYMBOL_GPL drivers/input/touchscreen/cyttsp4_core 0xbbc9c01e cyttsp4_probe +EXPORT_SYMBOL_GPL drivers/input/touchscreen/cyttsp4_core 0xf6266c9d cyttsp4_pm_ops +EXPORT_SYMBOL_GPL drivers/input/touchscreen/cyttsp_core 0x7ee3f689 cyttsp_pm_ops +EXPORT_SYMBOL_GPL drivers/input/touchscreen/cyttsp_core 0xb7336b40 cyttsp_probe +EXPORT_SYMBOL_GPL drivers/input/touchscreen/cyttsp_i2c_common 0xa7cfa58d cyttsp_i2c_write_block_data +EXPORT_SYMBOL_GPL drivers/input/touchscreen/cyttsp_i2c_common 0xb3f77ab0 cyttsp_i2c_read_block_data +EXPORT_SYMBOL_GPL drivers/input/touchscreen/tsc200x-core 0x20508ece tsc200x_probe +EXPORT_SYMBOL_GPL drivers/input/touchscreen/tsc200x-core 0x320d43ee tsc200x_regmap_config +EXPORT_SYMBOL_GPL drivers/input/touchscreen/tsc200x-core 0xcbcf3678 tsc200x_remove +EXPORT_SYMBOL_GPL drivers/input/touchscreen/tsc200x-core 0xd5ceb8c7 tsc200x_pm_ops +EXPORT_SYMBOL_GPL drivers/input/touchscreen/wm97xx-ts 0x0f8e85cc wm97xx_set_gpio +EXPORT_SYMBOL_GPL drivers/input/touchscreen/wm97xx-ts 0x3659e01a wm9713_codec +EXPORT_SYMBOL_GPL drivers/input/touchscreen/wm97xx-ts 0x546a7c47 wm97xx_reg_write +EXPORT_SYMBOL_GPL drivers/input/touchscreen/wm97xx-ts 0x98b6cdbb wm97xx_read_aux_adc +EXPORT_SYMBOL_GPL drivers/input/touchscreen/wm97xx-ts 0xa2ef900c wm97xx_config_gpio +EXPORT_SYMBOL_GPL drivers/input/touchscreen/wm97xx-ts 0xa5f1c970 wm97xx_unregister_mach_ops +EXPORT_SYMBOL_GPL drivers/input/touchscreen/wm97xx-ts 0xb661d08d wm97xx_get_gpio +EXPORT_SYMBOL_GPL drivers/input/touchscreen/wm97xx-ts 0xbe669ff8 wm97xx_reg_read +EXPORT_SYMBOL_GPL drivers/input/touchscreen/wm97xx-ts 0xc83092f7 wm97xx_register_mach_ops +EXPORT_SYMBOL_GPL drivers/input/touchscreen/wm97xx-ts 0xe74dfdde wm9705_codec +EXPORT_SYMBOL_GPL drivers/input/touchscreen/wm97xx-ts 0xee2d9edb wm97xx_set_suspend_mode +EXPORT_SYMBOL_GPL drivers/input/touchscreen/wm97xx-ts 0xfaf3e084 wm9712_codec +EXPORT_SYMBOL_GPL drivers/ipack/ipack 0x090e1143 ipack_device_del +EXPORT_SYMBOL_GPL drivers/ipack/ipack 0x34fb88eb ipack_driver_unregister +EXPORT_SYMBOL_GPL drivers/ipack/ipack 0x4d569bd9 ipack_device_init +EXPORT_SYMBOL_GPL drivers/ipack/ipack 0x53d47ab9 ipack_bus_unregister +EXPORT_SYMBOL_GPL drivers/ipack/ipack 0x7a00fa16 ipack_put_device +EXPORT_SYMBOL_GPL drivers/ipack/ipack 0xb7f5e794 ipack_bus_register +EXPORT_SYMBOL_GPL drivers/ipack/ipack 0xc144f9ed ipack_get_device +EXPORT_SYMBOL_GPL drivers/ipack/ipack 0xf3277d33 ipack_device_add +EXPORT_SYMBOL_GPL drivers/ipack/ipack 0xfde2cca2 ipack_driver_register +EXPORT_SYMBOL_GPL drivers/leds/led-class-flash 0x0bd0f180 led_update_flash_brightness +EXPORT_SYMBOL_GPL drivers/leds/led-class-flash 0x1c3748ae led_set_flash_brightness +EXPORT_SYMBOL_GPL drivers/leds/led-class-flash 0x31850a5e led_classdev_flash_register_ext +EXPORT_SYMBOL_GPL drivers/leds/led-class-flash 0x5e265a7a led_classdev_flash_unregister +EXPORT_SYMBOL_GPL drivers/leds/led-class-flash 0x6dfac86f devm_led_classdev_flash_register_ext +EXPORT_SYMBOL_GPL drivers/leds/led-class-flash 0x77346385 led_get_flash_fault +EXPORT_SYMBOL_GPL drivers/leds/led-class-flash 0xa20a1629 devm_led_classdev_flash_unregister +EXPORT_SYMBOL_GPL drivers/leds/led-class-flash 0xed0310a5 led_set_flash_timeout +EXPORT_SYMBOL_GPL drivers/leds/leds-lp55xx-common 0x18786f47 lp55xx_unregister_sysfs +EXPORT_SYMBOL_GPL drivers/leds/leds-lp55xx-common 0x2452a0ec lp55xx_unregister_leds +EXPORT_SYMBOL_GPL drivers/leds/leds-lp55xx-common 0x333e8616 lp55xx_register_leds +EXPORT_SYMBOL_GPL drivers/leds/leds-lp55xx-common 0x39e3c4d5 lp55xx_of_populate_pdata +EXPORT_SYMBOL_GPL drivers/leds/leds-lp55xx-common 0x4fbe9ed2 lp55xx_read +EXPORT_SYMBOL_GPL drivers/leds/leds-lp55xx-common 0x59b0f2ca lp55xx_deinit_device +EXPORT_SYMBOL_GPL drivers/leds/leds-lp55xx-common 0x7b5ae4e6 lp55xx_init_device +EXPORT_SYMBOL_GPL drivers/leds/leds-lp55xx-common 0x9527ab69 lp55xx_is_extclk_used +EXPORT_SYMBOL_GPL drivers/leds/leds-lp55xx-common 0xd2340469 lp55xx_write +EXPORT_SYMBOL_GPL drivers/leds/leds-lp55xx-common 0xfc273c12 lp55xx_register_sysfs +EXPORT_SYMBOL_GPL drivers/leds/leds-lp55xx-common 0xfd923174 lp55xx_update_bits +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 0x15b97715 __tracepoint_bcache_write +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0x19b88bec __tracepoint_bcache_writeback +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0x2307b422 __tracepoint_bcache_journal_full +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0x2b46c4b6 __tracepoint_bcache_btree_node_alloc_fail +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0x2b793afb __tracepoint_bcache_read +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0x2fbf8560 __tracepoint_bcache_btree_read +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0x33554606 __tracepoint_bcache_journal_entry_full +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0x414c7765 __tracepoint_bcache_btree_node_alloc +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0x5f6a4a3e __tracepoint_bcache_btree_node_free +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0x65fb81f0 __tracepoint_bcache_btree_node_compact +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0x6b1045c7 __tracepoint_bcache_btree_set_root +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0x7260fb66 __tracepoint_bcache_btree_write +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0x748968f6 __tracepoint_bcache_btree_insert_key +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0x7574c715 __tracepoint_bcache_gc_end +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0x7c8a33fe __tracepoint_bcache_read_retry +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0x96bf5dba __tracepoint_bcache_writeback_collision +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0xa353964f __tracepoint_bcache_request_end +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0xa4682eff __tracepoint_bcache_gc_start +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0xab4c5652 __tracepoint_bcache_btree_node_split +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0xb22f8879 __tracepoint_bcache_bypass_sequential +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0xbf53dc9d __tracepoint_bcache_btree_gc_coalesce +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0xc00185bc __tracepoint_bcache_gc_copy_collision +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0xc13b483f __tracepoint_bcache_invalidate +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0xc36e201d __tracepoint_bcache_gc_copy +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0xc8feefc9 __tracepoint_bcache_alloc_fail +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0xd8da0f0e __tracepoint_bcache_cache_insert +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0xd9f20dee __tracepoint_bcache_journal_replay_key +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0xe9c4d700 __tracepoint_bcache_bypass_congested +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0xee603d81 __tracepoint_bcache_journal_write +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0xf5d8bf62 __tracepoint_bcache_btree_cache_cannibalize +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0xf8502c64 __tracepoint_bcache_request_start +EXPORT_SYMBOL_GPL drivers/md/dm-bio-prison 0x03853b8b dm_cell_lock_promote_v2 +EXPORT_SYMBOL_GPL drivers/md/dm-bio-prison 0x11ce57e8 dm_bio_prison_free_cell_v2 +EXPORT_SYMBOL_GPL drivers/md/dm-bio-prison 0x14ddd1d4 dm_cell_promote_or_release +EXPORT_SYMBOL_GPL drivers/md/dm-bio-prison 0x15503511 dm_cell_error +EXPORT_SYMBOL_GPL drivers/md/dm-bio-prison 0x17dd39d6 dm_deferred_set_create +EXPORT_SYMBOL_GPL drivers/md/dm-bio-prison 0x252d8eda dm_cell_quiesce_v2 +EXPORT_SYMBOL_GPL drivers/md/dm-bio-prison 0x2eb01e04 dm_deferred_set_destroy +EXPORT_SYMBOL_GPL drivers/md/dm-bio-prison 0x4c2bb602 dm_bio_prison_free_cell +EXPORT_SYMBOL_GPL drivers/md/dm-bio-prison 0x51e4a77d dm_cell_put_v2 +EXPORT_SYMBOL_GPL drivers/md/dm-bio-prison 0x6791a44e dm_deferred_entry_dec +EXPORT_SYMBOL_GPL drivers/md/dm-bio-prison 0x6f738ce2 dm_cell_lock_v2 +EXPORT_SYMBOL_GPL drivers/md/dm-bio-prison 0x729d38b0 dm_cell_visit_release +EXPORT_SYMBOL_GPL drivers/md/dm-bio-prison 0x753e20b2 dm_bio_prison_create +EXPORT_SYMBOL_GPL drivers/md/dm-bio-prison 0x7c1b5db2 dm_get_cell +EXPORT_SYMBOL_GPL drivers/md/dm-bio-prison 0x872adbf9 dm_cell_unlock_v2 +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 0xb7dd93dc dm_bio_prison_alloc_cell_v2 +EXPORT_SYMBOL_GPL drivers/md/dm-bio-prison 0xc79b02ca dm_cell_get_v2 +EXPORT_SYMBOL_GPL drivers/md/dm-bio-prison 0xca2e3a88 dm_deferred_entry_inc +EXPORT_SYMBOL_GPL drivers/md/dm-bio-prison 0xd99e003d dm_bio_prison_create_v2 +EXPORT_SYMBOL_GPL drivers/md/dm-bio-prison 0xe2f75782 dm_cell_release +EXPORT_SYMBOL_GPL drivers/md/dm-bio-prison 0xe5e0cbf0 dm_bio_prison_alloc_cell +EXPORT_SYMBOL_GPL drivers/md/dm-bio-prison 0xf7d3d50e dm_cell_release_no_holder +EXPORT_SYMBOL_GPL drivers/md/dm-bio-prison 0xfa604aaf dm_bio_detain +EXPORT_SYMBOL_GPL drivers/md/dm-bufio 0x0ad0dc4f dm_bufio_mark_buffer_dirty +EXPORT_SYMBOL_GPL drivers/md/dm-bufio 0x111ab12a dm_bufio_mark_partial_buffer_dirty +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 0x6aebce95 dm_bufio_issue_discard +EXPORT_SYMBOL_GPL drivers/md/dm-bufio 0x6d3f57bd dm_bufio_get_client +EXPORT_SYMBOL_GPL drivers/md/dm-bufio 0x72f07bf4 dm_bufio_set_minimum_buffers +EXPORT_SYMBOL_GPL drivers/md/dm-bufio 0x74dcd98c dm_bufio_get_aux_data +EXPORT_SYMBOL_GPL drivers/md/dm-bufio 0x7c381a76 dm_bufio_get_block_size +EXPORT_SYMBOL_GPL drivers/md/dm-bufio 0x867e87eb dm_bufio_get_dm_io_client +EXPORT_SYMBOL_GPL drivers/md/dm-bufio 0xa82b2066 dm_bufio_write_dirty_buffers +EXPORT_SYMBOL_GPL drivers/md/dm-bufio 0xac35e284 dm_bufio_client_create +EXPORT_SYMBOL_GPL drivers/md/dm-bufio 0xb04f56ab dm_bufio_read +EXPORT_SYMBOL_GPL drivers/md/dm-bufio 0xb2438d54 dm_bufio_release_move +EXPORT_SYMBOL_GPL drivers/md/dm-bufio 0xc0d7df85 dm_bufio_new +EXPORT_SYMBOL_GPL drivers/md/dm-bufio 0xc90df7e5 dm_bufio_prefetch +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 0x5adc2807 btracker_destroy +EXPORT_SYMBOL_GPL drivers/md/dm-cache 0x5de611a9 btracker_nr_writebacks_queued +EXPORT_SYMBOL_GPL drivers/md/dm-cache 0x71415f39 dm_cache_policy_unregister +EXPORT_SYMBOL_GPL drivers/md/dm-cache 0x7890d535 dm_cache_policy_get_name +EXPORT_SYMBOL_GPL drivers/md/dm-cache 0x87bee547 btracker_queue +EXPORT_SYMBOL_GPL drivers/md/dm-cache 0x890723f7 dm_cache_policy_get_version +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 0xadbefda4 dm_cache_policy_destroy +EXPORT_SYMBOL_GPL drivers/md/dm-cache 0xbf1a2968 btracker_create +EXPORT_SYMBOL_GPL drivers/md/dm-cache 0xccfe6409 btracker_nr_demotions_queued +EXPORT_SYMBOL_GPL drivers/md/dm-cache 0xcf8c2590 dm_cache_policy_get_hint_size +EXPORT_SYMBOL_GPL drivers/md/dm-cache 0xd14632f6 dm_cache_policy_register +EXPORT_SYMBOL_GPL drivers/md/dm-cache 0xe1bdae47 dm_cache_policy_create +EXPORT_SYMBOL_GPL drivers/md/dm-multipath 0xd790e7c5 dm_register_path_selector +EXPORT_SYMBOL_GPL drivers/md/dm-multipath 0xf34b19f7 dm_unregister_path_selector +EXPORT_SYMBOL_GPL drivers/md/dm-region-hash 0x01d2f9ac dm_rh_recovery_start +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 0x47ffc56b dm_rh_inc_pending +EXPORT_SYMBOL_GPL drivers/md/dm-region-hash 0x57e16c3e dm_rh_get_state +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 0x7b860aab dm_rh_delay +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 0x8e735218 dm_rh_mark_nosync +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 0xdbd0e3c1 dm_rh_dirty_log +EXPORT_SYMBOL_GPL drivers/md/dm-region-hash 0xe4dc304b dm_region_hash_create +EXPORT_SYMBOL_GPL drivers/md/dm-region-hash 0xf4e72b1c dm_rh_bio_to_region +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 0x09cc81fa dm_btree_cursor_skip +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x0a7e77f3 dm_btree_cursor_end +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x0b25f6bc dm_array_resize +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x0b36102c dm_array_empty +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x0be67537 dm_btree_walk +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x0e198232 dm_btree_insert +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x10e6ccea dm_bitset_clear_bit +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x16af9071 dm_array_set_value +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x1e3f728d dm_block_data +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x23ebd5fb dm_bitset_set_bit +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x2417c5c4 dm_btree_empty +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x24621ca3 dm_sm_disk_open +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x2adee13f dm_btree_cursor_next +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 0x34d45c77 dm_btree_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 0x36a34e58 dm_array_cursor_get_value +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x36b84cda dm_array_del +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x3a797d19 dm_btree_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 0x432b8178 dm_array_cursor_begin +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x4557b425 dm_bitset_test_bit +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x48d1c7dc dm_btree_find_lowest_key +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x48e323be dm_bm_unlock +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x49081644 dm_btree_remove +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x4a4cb558 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 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 0x5cf0d0bb dm_tm_create_with_sm +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x63b0c22d dm_bitset_flush +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x688d422d dm_bm_block_size +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x6af8a872 dm_array_info_init +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x6bb4bf8f dm_array_cursor_next +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x6e1e3821 dm_array_walk +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x6f2fe3c4 dm_btree_remove_leaves +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 0x7485935a dm_btree_lookup +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x7551b46e dm_tm_open_with_sm +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x764567c8 dm_btree_find_highest_key +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 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 0x885b0024 dm_array_new +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x89783bda dm_array_cursor_end +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 0x95a52abd dm_bm_is_read_only +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x97263968 dm_bitset_resize +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x98db2687 dm_bitset_cursor_end +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 0x9e98460e dm_bitset_empty +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0xa2ea5542 dm_bitset_del +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0xa3cc1157 dm_btree_cursor_begin +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0xa51fbedc dm_bitset_new +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0xaab0ef04 dm_bitset_cursor_skip +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0xb6949944 dm_array_get_value +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0xbb461fb7 dm_bitset_cursor_begin +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0xbbb5df05 dm_array_cursor_skip +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0xc248bde2 dm_disk_bitset_init +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0xcedfc878 dm_bitset_cursor_get_value +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0xd163cade dm_tm_commit +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0xd51c29f1 dm_sm_disk_create +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0xd6711a58 dm_bitset_cursor_next +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0xe18c00ec dm_block_manager_create +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0xe781f874 dm_tm_dec +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0xf398644f dm_btree_lookup_next +EXPORT_SYMBOL_GPL drivers/media/cec/core/cec 0x078a44e7 cec_queue_pin_5v_event +EXPORT_SYMBOL_GPL drivers/media/cec/core/cec 0x081dae01 cec_delete_adapter +EXPORT_SYMBOL_GPL drivers/media/cec/core/cec 0x3bca1fd9 cec_fill_conn_info_from_drm +EXPORT_SYMBOL_GPL drivers/media/cec/core/cec 0x3c0fa55a cec_queue_pin_hpd_event +EXPORT_SYMBOL_GPL drivers/media/cec/core/cec 0x4d6c9bd1 cec_queue_pin_cec_event +EXPORT_SYMBOL_GPL drivers/media/cec/core/cec 0x52588f35 cec_notifier_cec_adap_unregister +EXPORT_SYMBOL_GPL drivers/media/cec/core/cec 0x6358cca8 cec_s_phys_addr_from_edid +EXPORT_SYMBOL_GPL drivers/media/cec/core/cec 0x7144d8ad cec_s_conn_info +EXPORT_SYMBOL_GPL drivers/media/cec/core/cec 0x7303e387 cec_unregister_adapter +EXPORT_SYMBOL_GPL drivers/media/cec/core/cec 0x85eaf962 cec_transmit_done_ts +EXPORT_SYMBOL_GPL drivers/media/cec/core/cec 0x8ad4c312 cec_notifier_parse_hdmi_phandle +EXPORT_SYMBOL_GPL drivers/media/cec/core/cec 0xa01fbb6b cec_notifier_set_phys_addr +EXPORT_SYMBOL_GPL drivers/media/cec/core/cec 0xab2392f0 cec_transmit_attempt_done_ts +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 0xc13c8e5d cec_s_phys_addr +EXPORT_SYMBOL_GPL drivers/media/cec/core/cec 0xc2f25ba7 cec_s_log_addrs +EXPORT_SYMBOL_GPL drivers/media/cec/core/cec 0xc4cc9112 cec_transmit_msg +EXPORT_SYMBOL_GPL drivers/media/cec/core/cec 0xdfc52a70 cec_register_adapter +EXPORT_SYMBOL_GPL drivers/media/cec/core/cec 0xe52a7343 cec_notifier_cec_adap_register +EXPORT_SYMBOL_GPL drivers/media/cec/core/cec 0xe7119813 cec_allocate_adapter +EXPORT_SYMBOL_GPL drivers/media/cec/core/cec 0xe82353e1 cec_notifier_conn_register +EXPORT_SYMBOL_GPL drivers/media/cec/core/cec 0xf6e54c54 cec_received_msg_ts +EXPORT_SYMBOL_GPL drivers/media/cec/core/cec 0xf8c99364 cec_notifier_set_phys_addr_from_edid +EXPORT_SYMBOL_GPL drivers/media/common/b2c2/b2c2-flexcop 0x66c0289a b2c2_flexcop_debug +EXPORT_SYMBOL_GPL drivers/media/common/saa7146/saa7146 0x0561230b saa7146_setgpio +EXPORT_SYMBOL_GPL drivers/media/common/saa7146/saa7146 0x4d489c41 saa7146_unregister_extension +EXPORT_SYMBOL_GPL drivers/media/common/saa7146/saa7146 0x77b0c6e0 saa7146_wait_for_debi_done +EXPORT_SYMBOL_GPL drivers/media/common/saa7146/saa7146 0x9780f47b saa7146_register_extension +EXPORT_SYMBOL_GPL drivers/media/common/saa7146/saa7146 0xacf05dfb saa7146_pgtable_alloc +EXPORT_SYMBOL_GPL drivers/media/common/saa7146/saa7146 0xb122549a saa7146_vfree_destroy_pgtable +EXPORT_SYMBOL_GPL drivers/media/common/saa7146/saa7146 0xb402558b saa7146_i2c_adapter_prepare +EXPORT_SYMBOL_GPL drivers/media/common/saa7146/saa7146 0xd2ae94ea saa7146_pgtable_build_single +EXPORT_SYMBOL_GPL drivers/media/common/saa7146/saa7146 0xe2f62e09 saa7146_pgtable_free +EXPORT_SYMBOL_GPL drivers/media/common/saa7146/saa7146 0xe3cd9b5c saa7146_debug +EXPORT_SYMBOL_GPL drivers/media/common/saa7146/saa7146 0xefd4f1a7 saa7146_vmalloc_build_pgtable +EXPORT_SYMBOL_GPL drivers/media/common/saa7146/saa7146_vv 0x27420269 saa7146_stop_preview +EXPORT_SYMBOL_GPL drivers/media/common/saa7146/saa7146_vv 0x2822cdc5 saa7146_unregister_device +EXPORT_SYMBOL_GPL drivers/media/common/saa7146/saa7146_vv 0x43c84a8a saa7146_vv_init +EXPORT_SYMBOL_GPL drivers/media/common/saa7146/saa7146_vv 0x6d45b63d saa7146_start_preview +EXPORT_SYMBOL_GPL drivers/media/common/saa7146/saa7146_vv 0xac9e542c saa7146_register_device +EXPORT_SYMBOL_GPL drivers/media/common/saa7146/saa7146_vv 0xba2404d7 saa7146_vv_release +EXPORT_SYMBOL_GPL drivers/media/common/saa7146/saa7146_vv 0xd1c37a4e saa7146_set_hps_source_and_sync +EXPORT_SYMBOL_GPL drivers/media/common/siano/smsmdtv 0x05545c11 smscore_get_device_mode +EXPORT_SYMBOL_GPL drivers/media/common/siano/smsmdtv 0x0a5322f4 smscore_register_hotplug +EXPORT_SYMBOL_GPL drivers/media/common/siano/smsmdtv 0x1b7d478f smscore_register_device +EXPORT_SYMBOL_GPL drivers/media/common/siano/smsmdtv 0x21e36bf2 smscore_registry_getmode +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 0x45284ae9 smsendian_handle_rx_message +EXPORT_SYMBOL_GPL drivers/media/common/siano/smsmdtv 0x47d5495a smscore_putbuffer +EXPORT_SYMBOL_GPL drivers/media/common/siano/smsmdtv 0x4f9717de smscore_getbuffer +EXPORT_SYMBOL_GPL drivers/media/common/siano/smsmdtv 0x5b035534 smscore_set_board_id +EXPORT_SYMBOL_GPL drivers/media/common/siano/smsmdtv 0x5df9aaa9 sms_board_power +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 0x8ea80e81 smscore_unregister_device +EXPORT_SYMBOL_GPL drivers/media/common/siano/smsmdtv 0x96a58d86 smscore_onresponse +EXPORT_SYMBOL_GPL drivers/media/common/siano/smsmdtv 0x96fb7ca9 smscore_start_device +EXPORT_SYMBOL_GPL drivers/media/common/siano/smsmdtv 0x99a81ab3 smsclient_sendrequest +EXPORT_SYMBOL_GPL drivers/media/common/siano/smsmdtv 0xac68cb2f smscore_get_board_id +EXPORT_SYMBOL_GPL drivers/media/common/siano/smsmdtv 0xb3d07dfb sms_board_lna_control +EXPORT_SYMBOL_GPL drivers/media/common/siano/smsmdtv 0xbbdb5c42 smscore_unregister_client +EXPORT_SYMBOL_GPL drivers/media/common/siano/smsmdtv 0xcad8403b smscore_unregister_hotplug +EXPORT_SYMBOL_GPL drivers/media/common/siano/smsmdtv 0xd296ded5 sms_board_setup +EXPORT_SYMBOL_GPL drivers/media/common/siano/smsmdtv 0xddbee2d2 sms_board_led_feedback +EXPORT_SYMBOL_GPL drivers/media/common/siano/smsmdtv 0xefb8d614 smscore_register_client +EXPORT_SYMBOL_GPL drivers/media/common/siano/smsmdtv 0xfdf0867d sms_board_event +EXPORT_SYMBOL_GPL drivers/media/common/v4l2-tpg/v4l2-tpg 0x03005a48 tpg_alloc +EXPORT_SYMBOL_GPL drivers/media/common/v4l2-tpg/v4l2-tpg 0x040dc7cd tpg_aspect_strings +EXPORT_SYMBOL_GPL drivers/media/common/v4l2-tpg/v4l2-tpg 0x4d1d285c tpg_init +EXPORT_SYMBOL_GPL drivers/media/common/v4l2-tpg/v4l2-tpg 0x517e7ccd tpg_fill_plane_buffer +EXPORT_SYMBOL_GPL drivers/media/common/v4l2-tpg/v4l2-tpg 0x579c6308 tpg_gen_text +EXPORT_SYMBOL_GPL drivers/media/common/v4l2-tpg/v4l2-tpg 0x6026aaf0 tpg_log_status +EXPORT_SYMBOL_GPL drivers/media/common/v4l2-tpg/v4l2-tpg 0x6960e899 tpg_s_crop_compose +EXPORT_SYMBOL_GPL drivers/media/common/v4l2-tpg/v4l2-tpg 0x756516e7 tpg_s_fourcc +EXPORT_SYMBOL_GPL drivers/media/common/v4l2-tpg/v4l2-tpg 0x7a5d8c0b tpg_update_mv_step +EXPORT_SYMBOL_GPL drivers/media/common/v4l2-tpg/v4l2-tpg 0x86b4ddf7 tpg_reset_source +EXPORT_SYMBOL_GPL drivers/media/common/v4l2-tpg/v4l2-tpg 0x975a1e29 tpg_g_interleaved_plane +EXPORT_SYMBOL_GPL drivers/media/common/v4l2-tpg/v4l2-tpg 0xaa5503d9 tpg_set_font +EXPORT_SYMBOL_GPL drivers/media/common/v4l2-tpg/v4l2-tpg 0xc6110b6e tpg_free +EXPORT_SYMBOL_GPL drivers/media/common/v4l2-tpg/v4l2-tpg 0xc6808be7 tpg_calc_text_basep +EXPORT_SYMBOL_GPL drivers/media/common/v4l2-tpg/v4l2-tpg 0xce8159bb tpg_pattern_strings +EXPORT_SYMBOL_GPL drivers/media/common/v4l2-tpg/v4l2-tpg 0xf65c5e46 tpg_fillbuffer +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-common 0x15f5fdac vb2_core_reqbufs +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-common 0x1b645efe vb2_core_querybuf +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-common 0x1e8902e7 vb2_buffer_done +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-common 0x3a7d5d7b vb2_core_streamon +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-common 0x3edd6bc8 vb2_discard_done +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-common 0x3f623848 __tracepoint_vb2_qbuf +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-common 0x4a09a12a vb2_plane_cookie +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-common 0x4f27c20c vb2_core_queue_init +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-common 0x7c882f13 vb2_thread_start +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-common 0x7ddc0448 vb2_queue_error +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-common 0x817e66b3 vb2_read +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-common 0x869fbc04 vb2_core_create_bufs +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-common 0x8d2d78b5 vb2_core_qbuf +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-common 0x8ddae992 __tracepoint_vb2_buf_done +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-common 0x90828029 __tracepoint_vb2_dqbuf +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-common 0x92c5563e vb2_core_streamoff +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-common 0xa1aafaea vb2_core_prepare_buf +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-common 0xa674f48e vb2_core_expbuf +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-common 0xa6cec1a2 vb2_request_object_is_buffer +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-common 0xa8533241 vb2_wait_for_all_buffers +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-common 0xa922cb27 vb2_request_buffer_cnt +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-common 0xb3ae6c15 vb2_core_dqbuf +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-common 0xb56edfda vb2_core_poll +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-common 0xbb7c1955 vb2_core_queue_release +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-common 0xc6294b7d vb2_mmap +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-common 0xc88264fe __tracepoint_vb2_buf_queue +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-common 0xd80e6097 vb2_write +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-common 0xe55137a2 vb2_thread_stop +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-common 0xf1c760bd vb2_plane_vaddr +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-dma-contig 0x9a31fd5d vb2_dma_contig_set_max_seg_size +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-dma-contig 0x9b6aedeb vb2_dma_contig_memops +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-dma-sg 0x8d32445a vb2_dma_sg_memops +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-memops 0xefbceece vb2_common_vm_ops +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-v4l2 0x0180bb6b vb2_expbuf +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-v4l2 0x062456cc vb2_create_bufs +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-v4l2 0x0ccf2bf4 vb2_fop_read +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-v4l2 0x100b5c56 vb2_queue_release +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-v4l2 0x141d2f81 vb2_queue_init +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-v4l2 0x191da483 vb2_fop_mmap +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-v4l2 0x1a441480 vb2_ioctl_streamoff +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-v4l2 0x319945ac vb2_ops_wait_finish +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-v4l2 0x33721327 vb2_ioctl_expbuf +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-v4l2 0x367637f9 vb2_reqbufs +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-v4l2 0x376be9de vb2_ioctl_dqbuf +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-v4l2 0x3851b541 vb2_fop_release +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-v4l2 0x3996f243 vb2_fop_poll +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-v4l2 0x3b629d9e vb2_request_validate +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-v4l2 0x3f783928 vb2_ioctl_reqbufs +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-v4l2 0x4b0f7b43 vb2_poll +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-v4l2 0x596cdb97 vb2_qbuf +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-v4l2 0x6272786b vb2_ioctl_qbuf +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-v4l2 0x671c6e60 vb2_ioctl_prepare_buf +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-v4l2 0x6a1daaa5 vb2_dqbuf +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-v4l2 0x79104e18 vb2_prepare_buf +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-v4l2 0x83ea12ee vb2_ioctl_streamon +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-v4l2 0x9d68b04c vb2_ioctl_create_bufs +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-v4l2 0x9dc65c5b vb2_find_timestamp +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-v4l2 0xbd1d9119 _vb2_fop_release +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-v4l2 0xc5e620b5 vb2_request_queue +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-v4l2 0xcdc5e60d vb2_ops_wait_prepare +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-v4l2 0xde35f83b vb2_streamon +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-v4l2 0xeaae1b1a vb2_streamoff +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-v4l2 0xfcd38a84 vb2_fop_write +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-v4l2 0xfcf3ca60 vb2_ioctl_querybuf +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-vmalloc 0xf2eef093 vb2_vmalloc_memops +EXPORT_SYMBOL_GPL drivers/media/dvb-core/dvb-core 0x0181ce88 dvb_create_media_graph +EXPORT_SYMBOL_GPL drivers/media/dvb-core/dvb-core 0x056b1eef dvb_module_probe +EXPORT_SYMBOL_GPL drivers/media/dvb-core/dvb-core 0x5d943341 dvb_module_release +EXPORT_SYMBOL_GPL drivers/media/dvb-frontends/as102_fe 0x15b46fec as102_attach +EXPORT_SYMBOL_GPL drivers/media/dvb-frontends/cx24117 0xbda032f0 cx24117_attach +EXPORT_SYMBOL_GPL drivers/media/dvb-frontends/gp8psk-fe 0xfbabaee9 gp8psk_fe_attach +EXPORT_SYMBOL_GPL drivers/media/dvb-frontends/mxl5xx 0xcf534598 mxl5xx_attach +EXPORT_SYMBOL_GPL drivers/media/dvb-frontends/stv0910 0xdef7313b stv0910_attach +EXPORT_SYMBOL_GPL drivers/media/dvb-frontends/stv6111 0x68e9945b stv6111_attach +EXPORT_SYMBOL_GPL drivers/media/dvb-frontends/tda18271c2dd 0x5e716c77 tda18271c2dd_attach +EXPORT_SYMBOL_GPL drivers/media/i2c/aptina-pll 0xb9994349 aptina_pll_calculate +EXPORT_SYMBOL_GPL drivers/media/i2c/smiapp-pll 0x97114707 smiapp_pll_calculate +EXPORT_SYMBOL_GPL drivers/media/mc/mc 0x00dab07a media_entity_remove_links +EXPORT_SYMBOL_GPL drivers/media/mc/mc 0x0dce85e6 media_request_object_init +EXPORT_SYMBOL_GPL drivers/media/mc/mc 0x0f82e2c8 media_entity_pads_init +EXPORT_SYMBOL_GPL drivers/media/mc/mc 0x12bec3cb media_graph_walk_cleanup +EXPORT_SYMBOL_GPL drivers/media/mc/mc 0x1703193f __media_device_usb_init +EXPORT_SYMBOL_GPL drivers/media/mc/mc 0x1b5a9e03 media_device_register_entity +EXPORT_SYMBOL_GPL drivers/media/mc/mc 0x1ce260d1 __media_pipeline_start +EXPORT_SYMBOL_GPL drivers/media/mc/mc 0x2a5a891d media_remove_intf_link +EXPORT_SYMBOL_GPL drivers/media/mc/mc 0x3133b8ec __media_remove_intf_links +EXPORT_SYMBOL_GPL drivers/media/mc/mc 0x3184822f media_graph_walk_next +EXPORT_SYMBOL_GPL drivers/media/mc/mc 0x32590134 media_entity_setup_link +EXPORT_SYMBOL_GPL drivers/media/mc/mc 0x33785d84 media_graph_walk_init +EXPORT_SYMBOL_GPL drivers/media/mc/mc 0x38f6a087 media_pipeline_stop +EXPORT_SYMBOL_GPL drivers/media/mc/mc 0x3ab9a081 media_entity_find_link +EXPORT_SYMBOL_GPL drivers/media/mc/mc 0x3d5b028b media_device_pci_init +EXPORT_SYMBOL_GPL drivers/media/mc/mc 0x3da942fc media_request_object_bind +EXPORT_SYMBOL_GPL drivers/media/mc/mc 0x3dd62b3c media_get_pad_index +EXPORT_SYMBOL_GPL drivers/media/mc/mc 0x43282ca4 media_graph_walk_start +EXPORT_SYMBOL_GPL drivers/media/mc/mc 0x53f32d65 media_devnode_create +EXPORT_SYMBOL_GPL drivers/media/mc/mc 0x65583af3 media_device_cleanup +EXPORT_SYMBOL_GPL drivers/media/mc/mc 0x72c4d014 media_device_unregister_entity +EXPORT_SYMBOL_GPL drivers/media/mc/mc 0x7af2a9e8 media_device_init +EXPORT_SYMBOL_GPL drivers/media/mc/mc 0x7c102181 media_remove_intf_links +EXPORT_SYMBOL_GPL drivers/media/mc/mc 0x7cf65470 media_pipeline_start +EXPORT_SYMBOL_GPL drivers/media/mc/mc 0x831b57ef media_device_delete +EXPORT_SYMBOL_GPL drivers/media/mc/mc 0x877fdd53 media_request_get_by_fd +EXPORT_SYMBOL_GPL drivers/media/mc/mc 0x8ee6f95e __media_pipeline_stop +EXPORT_SYMBOL_GPL drivers/media/mc/mc 0x90bac374 media_request_object_unbind +EXPORT_SYMBOL_GPL drivers/media/mc/mc 0x9122851a __media_entity_remove_links +EXPORT_SYMBOL_GPL drivers/media/mc/mc 0x96f7b691 media_create_pad_link +EXPORT_SYMBOL_GPL drivers/media/mc/mc 0x9df3e004 media_request_object_put +EXPORT_SYMBOL_GPL drivers/media/mc/mc 0xa7151fd7 media_device_unregister_entity_notify +EXPORT_SYMBOL_GPL drivers/media/mc/mc 0xa76a5735 media_request_object_find +EXPORT_SYMBOL_GPL drivers/media/mc/mc 0xa9997fcf media_create_intf_link +EXPORT_SYMBOL_GPL drivers/media/mc/mc 0xae5d7383 media_entity_get_fwnode_pad +EXPORT_SYMBOL_GPL drivers/media/mc/mc 0xb6c12368 media_request_object_complete +EXPORT_SYMBOL_GPL drivers/media/mc/mc 0xce3d3d92 media_devnode_remove +EXPORT_SYMBOL_GPL drivers/media/mc/mc 0xcebe89f8 media_device_usb_allocate +EXPORT_SYMBOL_GPL drivers/media/mc/mc 0xd51c3257 __media_entity_setup_link +EXPORT_SYMBOL_GPL drivers/media/mc/mc 0xd5e3f334 __media_remove_intf_link +EXPORT_SYMBOL_GPL drivers/media/mc/mc 0xd64c8978 media_request_put +EXPORT_SYMBOL_GPL drivers/media/mc/mc 0xdc581289 __media_entity_enum_init +EXPORT_SYMBOL_GPL drivers/media/mc/mc 0xe5ceecd6 media_entity_enum_cleanup +EXPORT_SYMBOL_GPL drivers/media/mc/mc 0xe643a92b media_entity_remote_pad +EXPORT_SYMBOL_GPL drivers/media/mc/mc 0xe6992b84 media_device_register_entity_notify +EXPORT_SYMBOL_GPL drivers/media/mc/mc 0xe82e371f media_create_pad_links +EXPORT_SYMBOL_GPL drivers/media/mc/mc 0xf7633982 __media_device_register +EXPORT_SYMBOL_GPL drivers/media/mc/mc 0xfa3b9e9f media_device_unregister +EXPORT_SYMBOL_GPL drivers/media/pci/cx88/cx88xx 0x464156ce cx88_setup_xc3028 +EXPORT_SYMBOL_GPL drivers/media/pci/mantis/mantis_core 0x0732d042 mantis_frontend_power +EXPORT_SYMBOL_GPL drivers/media/pci/mantis/mantis_core 0x19c2e4e5 mantis_dma_exit +EXPORT_SYMBOL_GPL drivers/media/pci/mantis/mantis_core 0x3777b71f mantis_ca_exit +EXPORT_SYMBOL_GPL drivers/media/pci/mantis/mantis_core 0x4979a68f mantis_uart_exit +EXPORT_SYMBOL_GPL drivers/media/pci/mantis/mantis_core 0x4b956731 mantis_dma_init +EXPORT_SYMBOL_GPL drivers/media/pci/mantis/mantis_core 0x4e826d35 mantis_ca_init +EXPORT_SYMBOL_GPL drivers/media/pci/mantis/mantis_core 0x6f7598dd mantis_input_init +EXPORT_SYMBOL_GPL drivers/media/pci/mantis/mantis_core 0x7731193c mantis_pci_init +EXPORT_SYMBOL_GPL drivers/media/pci/mantis/mantis_core 0x888e8287 mantis_frontend_soft_reset +EXPORT_SYMBOL_GPL drivers/media/pci/mantis/mantis_core 0x9e7ff4b7 mantis_i2c_init +EXPORT_SYMBOL_GPL drivers/media/pci/mantis/mantis_core 0xb30b1dcb mantis_stream_control +EXPORT_SYMBOL_GPL drivers/media/pci/mantis/mantis_core 0xb4eb9ca3 mantis_uart_init +EXPORT_SYMBOL_GPL drivers/media/pci/mantis/mantis_core 0xbc27bd55 mantis_dvb_init +EXPORT_SYMBOL_GPL drivers/media/pci/mantis/mantis_core 0xc7872331 mantis_gpio_set_bits +EXPORT_SYMBOL_GPL drivers/media/pci/mantis/mantis_core 0xcc287763 mantis_i2c_exit +EXPORT_SYMBOL_GPL drivers/media/pci/mantis/mantis_core 0xd008674b mantis_get_mac +EXPORT_SYMBOL_GPL drivers/media/pci/mantis/mantis_core 0xe9aabd91 mantis_input_exit +EXPORT_SYMBOL_GPL drivers/media/pci/mantis/mantis_core 0xeac42e41 mantis_pci_exit +EXPORT_SYMBOL_GPL drivers/media/pci/mantis/mantis_core 0xee703e81 mantis_dvb_exit +EXPORT_SYMBOL_GPL drivers/media/pci/saa7134/saa7134 0x171b9598 saa7134_g_std +EXPORT_SYMBOL_GPL drivers/media/pci/saa7134/saa7134 0x24a67acf saa7134_ts_buffer_init +EXPORT_SYMBOL_GPL drivers/media/pci/saa7134/saa7134 0x6735970c saa7134_g_frequency +EXPORT_SYMBOL_GPL drivers/media/pci/saa7134/saa7134 0x755a457a saa7134_ts_queue_setup +EXPORT_SYMBOL_GPL drivers/media/pci/saa7134/saa7134 0x78c3f476 saa7134_querystd +EXPORT_SYMBOL_GPL drivers/media/pci/saa7134/saa7134 0x953f649a saa7134_s_std +EXPORT_SYMBOL_GPL drivers/media/pci/saa7134/saa7134 0xaf2abaac saa7134_ts_buffer_prepare +EXPORT_SYMBOL_GPL drivers/media/pci/saa7134/saa7134 0xb3b859ae saa7134_ts_qops +EXPORT_SYMBOL_GPL drivers/media/pci/saa7134/saa7134 0xbb773a9c saa7134_g_tuner +EXPORT_SYMBOL_GPL drivers/media/pci/saa7134/saa7134 0xbca57a0e saa7134_stop_streaming +EXPORT_SYMBOL_GPL drivers/media/pci/saa7134/saa7134 0xbccba4ae saa7134_ts_start_streaming +EXPORT_SYMBOL_GPL drivers/media/pci/saa7134/saa7134 0xc630eada saa7134_s_input +EXPORT_SYMBOL_GPL drivers/media/pci/saa7134/saa7134 0xc682da6b saa7134_g_input +EXPORT_SYMBOL_GPL drivers/media/pci/saa7134/saa7134 0xc9fbafa6 saa7134_s_tuner +EXPORT_SYMBOL_GPL drivers/media/pci/saa7134/saa7134 0xcb0a4457 saa7134_vb2_buffer_queue +EXPORT_SYMBOL_GPL drivers/media/pci/saa7134/saa7134 0xdc5cc6bf saa7134_s_frequency +EXPORT_SYMBOL_GPL drivers/media/pci/saa7134/saa7134 0xecb445a0 saa7134_enum_input +EXPORT_SYMBOL_GPL drivers/media/pci/saa7134/saa7134 0xf54e8830 saa7134_ts_stop_streaming +EXPORT_SYMBOL_GPL drivers/media/pci/saa7134/saa7134 0xfc34d3dc saa7134_querycap +EXPORT_SYMBOL_GPL drivers/media/pci/ttpci/budget-core 0x04dca570 ttpci_budget_debiwrite +EXPORT_SYMBOL_GPL drivers/media/pci/ttpci/budget-core 0x148637bd ttpci_budget_irq10_handler +EXPORT_SYMBOL_GPL drivers/media/pci/ttpci/budget-core 0x7948c222 budget_debug +EXPORT_SYMBOL_GPL drivers/media/pci/ttpci/budget-core 0xa9141b77 ttpci_budget_init +EXPORT_SYMBOL_GPL drivers/media/pci/ttpci/budget-core 0xbaa7de70 ttpci_budget_deinit +EXPORT_SYMBOL_GPL drivers/media/pci/ttpci/budget-core 0xde7b68f2 ttpci_budget_set_video_port +EXPORT_SYMBOL_GPL drivers/media/pci/ttpci/budget-core 0xe4dcec92 ttpci_budget_init_hooks +EXPORT_SYMBOL_GPL drivers/media/pci/ttpci/budget-core 0xe628ea55 ttpci_budget_debiread +EXPORT_SYMBOL_GPL drivers/media/platform/marvell-ccic/mcam-core 0x5f8320d4 mccic_register +EXPORT_SYMBOL_GPL drivers/media/platform/marvell-ccic/mcam-core 0x76dfb872 mccic_resume +EXPORT_SYMBOL_GPL drivers/media/platform/marvell-ccic/mcam-core 0x7eabc0b2 mccic_shutdown +EXPORT_SYMBOL_GPL drivers/media/platform/marvell-ccic/mcam-core 0xcb3ac00f mccic_suspend +EXPORT_SYMBOL_GPL drivers/media/platform/marvell-ccic/mcam-core 0xd6eb3d67 mccic_irq +EXPORT_SYMBOL_GPL drivers/media/radio/shark2 0x5b18b83a radio_tea5777_init +EXPORT_SYMBOL_GPL drivers/media/radio/shark2 0xe5c626d4 radio_tea5777_exit +EXPORT_SYMBOL_GPL drivers/media/radio/si470x/radio-si470x-common 0x25ac75f3 si470x_set_freq +EXPORT_SYMBOL_GPL drivers/media/radio/si470x/radio-si470x-common 0x4849bf3a si470x_viddev_template +EXPORT_SYMBOL_GPL drivers/media/radio/si470x/radio-si470x-common 0x4dd8796e si470x_start +EXPORT_SYMBOL_GPL drivers/media/radio/si470x/radio-si470x-common 0x593ce49f si470x_stop +EXPORT_SYMBOL_GPL drivers/media/radio/si470x/radio-si470x-common 0xe11ba00a si470x_ctrl_ops +EXPORT_SYMBOL_GPL drivers/media/rc/rc-core 0x03511bf2 rc_keyup +EXPORT_SYMBOL_GPL drivers/media/rc/rc-core 0x087ba771 rc_map_get +EXPORT_SYMBOL_GPL drivers/media/rc/rc-core 0x1ac62c77 rc_map_unregister +EXPORT_SYMBOL_GPL drivers/media/rc/rc-core 0x1de12dab ir_raw_event_handle +EXPORT_SYMBOL_GPL drivers/media/rc/rc-core 0x2345af97 rc_free_device +EXPORT_SYMBOL_GPL drivers/media/rc/rc-core 0x29389791 rc_unregister_device +EXPORT_SYMBOL_GPL drivers/media/rc/rc-core 0x3351129d ir_raw_event_set_idle +EXPORT_SYMBOL_GPL drivers/media/rc/rc-core 0x336d18f8 rc_repeat +EXPORT_SYMBOL_GPL drivers/media/rc/rc-core 0x469ee16e rc_keydown +EXPORT_SYMBOL_GPL drivers/media/rc/rc-core 0x5f62ba0c devm_rc_register_device +EXPORT_SYMBOL_GPL drivers/media/rc/rc-core 0x6733563b rc_keydown_notimeout +EXPORT_SYMBOL_GPL drivers/media/rc/rc-core 0x6ec3c73b ir_raw_event_store +EXPORT_SYMBOL_GPL drivers/media/rc/rc-core 0x746f5812 ir_lirc_scancode_event +EXPORT_SYMBOL_GPL drivers/media/rc/rc-core 0x7bc8ac67 rc_map_register +EXPORT_SYMBOL_GPL drivers/media/rc/rc-core 0xbd57434d rc_register_device +EXPORT_SYMBOL_GPL drivers/media/rc/rc-core 0xc281b0b2 ir_raw_event_store_with_timeout +EXPORT_SYMBOL_GPL drivers/media/rc/rc-core 0xcae7a88c rc_g_keycode_from_table +EXPORT_SYMBOL_GPL drivers/media/rc/rc-core 0xcc813a97 ir_raw_event_store_with_filter +EXPORT_SYMBOL_GPL drivers/media/rc/rc-core 0xd09ddad0 devm_rc_allocate_device +EXPORT_SYMBOL_GPL drivers/media/rc/rc-core 0xeb854a8a rc_allocate_device +EXPORT_SYMBOL_GPL drivers/media/rc/rc-core 0xfa31e269 ir_raw_event_store_edge +EXPORT_SYMBOL_GPL drivers/media/tuners/mt2063 0x80c90790 mt2063_attach +EXPORT_SYMBOL_GPL drivers/media/tuners/mt20xx 0xa2f203b2 microtune_attach +EXPORT_SYMBOL_GPL drivers/media/tuners/mxl5007t 0xb7d216f3 mxl5007t_attach +EXPORT_SYMBOL_GPL drivers/media/tuners/r820t 0xd9ae0761 r820t_attach +EXPORT_SYMBOL_GPL drivers/media/tuners/tda18271 0x3476433e tda18271_attach +EXPORT_SYMBOL_GPL drivers/media/tuners/tda827x 0xb285cb90 tda827x_attach +EXPORT_SYMBOL_GPL drivers/media/tuners/tda8290 0x5e1a1bd1 tda829x_probe +EXPORT_SYMBOL_GPL drivers/media/tuners/tda8290 0x6e7a7c34 tda829x_attach +EXPORT_SYMBOL_GPL drivers/media/tuners/tda9887 0xc422fb9c tda9887_attach +EXPORT_SYMBOL_GPL drivers/media/tuners/tea5761 0x3f6f4576 tea5761_autodetection +EXPORT_SYMBOL_GPL drivers/media/tuners/tea5761 0x61c45979 tea5761_attach +EXPORT_SYMBOL_GPL drivers/media/tuners/tea5767 0x801045a4 tea5767_attach +EXPORT_SYMBOL_GPL drivers/media/tuners/tea5767 0xe7581fd6 tea5767_autodetection +EXPORT_SYMBOL_GPL drivers/media/tuners/tuner-simple 0x7f7427e7 simple_tuner_attach +EXPORT_SYMBOL_GPL drivers/media/usb/cx231xx/cx231xx 0x017ea7c7 cx231xx_tuner_callback +EXPORT_SYMBOL_GPL drivers/media/usb/cx231xx/cx231xx 0x0763790b cx231xx_init_bulk +EXPORT_SYMBOL_GPL drivers/media/usb/cx231xx/cx231xx 0x2a88c2cd cx231xx_capture_start +EXPORT_SYMBOL_GPL drivers/media/usb/cx231xx/cx231xx 0x2ab0a37a cx231xx_send_usb_command +EXPORT_SYMBOL_GPL drivers/media/usb/cx231xx/cx231xx 0x4bfcf2a2 cx231xx_uninit_vbi_isoc +EXPORT_SYMBOL_GPL drivers/media/usb/cx231xx/cx231xx 0x4f311057 cx231xx_get_i2c_adap +EXPORT_SYMBOL_GPL drivers/media/usb/cx231xx/cx231xx 0x617f38bb cx231xx_set_mode +EXPORT_SYMBOL_GPL drivers/media/usb/cx231xx/cx231xx 0x78e7da91 cx231xx_enable656 +EXPORT_SYMBOL_GPL drivers/media/usb/cx231xx/cx231xx 0x796ec7b6 cx231xx_enable_i2c_port_3 +EXPORT_SYMBOL_GPL drivers/media/usb/cx231xx/cx231xx 0x8577efea cx231xx_dev_init +EXPORT_SYMBOL_GPL drivers/media/usb/cx231xx/cx231xx 0x86bf7ff2 cx231xx_unmute_audio +EXPORT_SYMBOL_GPL drivers/media/usb/cx231xx/cx231xx 0x91f2b273 is_fw_load +EXPORT_SYMBOL_GPL drivers/media/usb/cx231xx/cx231xx 0x92296bbd cx231xx_dev_uninit +EXPORT_SYMBOL_GPL drivers/media/usb/cx231xx/cx231xx 0x9442050e cx231xx_disable656 +EXPORT_SYMBOL_GPL drivers/media/usb/cx231xx/cx231xx 0x9fc7da85 cx231xx_set_alt_setting +EXPORT_SYMBOL_GPL drivers/media/usb/cx231xx/cx231xx 0xa8a5f344 cx231xx_uninit_isoc +EXPORT_SYMBOL_GPL drivers/media/usb/cx231xx/cx231xx 0xd829928a cx231xx_demod_reset +EXPORT_SYMBOL_GPL drivers/media/usb/cx231xx/cx231xx 0xdfaf62aa cx231xx_init_vbi_isoc +EXPORT_SYMBOL_GPL drivers/media/usb/cx231xx/cx231xx 0xf44bcb61 cx231xx_uninit_bulk +EXPORT_SYMBOL_GPL drivers/media/usb/cx231xx/cx231xx 0xfba3c77d cx231xx_init_isoc +EXPORT_SYMBOL_GPL drivers/media/usb/cx231xx/cx231xx 0xff887ea2 cx231xx_send_gpio_cmd +EXPORT_SYMBOL_GPL drivers/media/usb/dvb-usb-v2/mxl111sf-demod 0xf89171b0 mxl111sf_demod_attach +EXPORT_SYMBOL_GPL drivers/media/usb/dvb-usb-v2/mxl111sf-tuner 0x665549b4 mxl111sf_tuner_attach +EXPORT_SYMBOL_GPL drivers/media/usb/em28xx/em28xx 0x037b2974 em28xx_write_reg_bits +EXPORT_SYMBOL_GPL drivers/media/usb/em28xx/em28xx 0x0bdad527 em28xx_set_mode +EXPORT_SYMBOL_GPL drivers/media/usb/em28xx/em28xx 0x11f11787 em28xx_toggle_reg_bits +EXPORT_SYMBOL_GPL drivers/media/usb/em28xx/em28xx 0x22bde8de em28xx_alloc_urbs +EXPORT_SYMBOL_GPL drivers/media/usb/em28xx/em28xx 0x230d12de em28xx_read_ac97 +EXPORT_SYMBOL_GPL drivers/media/usb/em28xx/em28xx 0x35830d42 em28xx_stop_urbs +EXPORT_SYMBOL_GPL drivers/media/usb/em28xx/em28xx 0x4bcafeb2 em28xx_init_usb_xfer +EXPORT_SYMBOL_GPL drivers/media/usb/em28xx/em28xx 0x54cbd03e em28xx_write_regs +EXPORT_SYMBOL_GPL drivers/media/usb/em28xx/em28xx 0x5a618eff em28xx_read_reg +EXPORT_SYMBOL_GPL drivers/media/usb/em28xx/em28xx 0x5e7179c6 em28xx_find_led +EXPORT_SYMBOL_GPL drivers/media/usb/em28xx/em28xx 0x677dbbad em28xx_gpio_set +EXPORT_SYMBOL_GPL drivers/media/usb/em28xx/em28xx 0x721f7cc7 em28xx_free_device +EXPORT_SYMBOL_GPL drivers/media/usb/em28xx/em28xx 0x7fc8652c em28xx_tuner_callback +EXPORT_SYMBOL_GPL drivers/media/usb/em28xx/em28xx 0x86840160 em28xx_setup_xc3028 +EXPORT_SYMBOL_GPL drivers/media/usb/em28xx/em28xx 0x892a52d3 em28xx_write_reg +EXPORT_SYMBOL_GPL drivers/media/usb/em28xx/em28xx 0x8b7dbf88 em28xx_init_camera +EXPORT_SYMBOL_GPL drivers/media/usb/em28xx/em28xx 0x921d7c65 em28xx_boards +EXPORT_SYMBOL_GPL drivers/media/usb/em28xx/em28xx 0xa2988b6b em28xx_write_ac97 +EXPORT_SYMBOL_GPL drivers/media/usb/em28xx/em28xx 0xa87807f5 em28xx_audio_analog_set +EXPORT_SYMBOL_GPL drivers/media/usb/em28xx/em28xx 0xb03cd7fb em28xx_audio_setup +EXPORT_SYMBOL_GPL drivers/media/usb/em28xx/em28xx 0xc9eb756d em28xx_uninit_usb_xfer +EXPORT_SYMBOL_GPL drivers/media/usb/tm6000/tm6000 0x2309a6d6 tm6000_xc5000_callback +EXPORT_SYMBOL_GPL drivers/media/usb/tm6000/tm6000 0x38751a3d tm6000_set_reg +EXPORT_SYMBOL_GPL drivers/media/usb/tm6000/tm6000 0x89b611dd tm6000_debug +EXPORT_SYMBOL_GPL drivers/media/usb/tm6000/tm6000 0x8a866af9 tm6000_set_reg_mask +EXPORT_SYMBOL_GPL drivers/media/usb/tm6000/tm6000 0xa1627173 tm6000_get_reg +EXPORT_SYMBOL_GPL drivers/media/usb/tm6000/tm6000 0xd7f49a07 tm6000_set_audio_bitrate +EXPORT_SYMBOL_GPL drivers/media/usb/tm6000/tm6000 0xdff8e89d tm6000_tuner_callback +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 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 0xef15cc44 v4l2_hdmi_rx_colorimetry +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 0x1fdc5ba0 v4l2_flash_init +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-flash-led-class 0x2c2bb38a v4l2_flash_release +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-flash-led-class 0x69d29bbc v4l2_flash_indicator_init +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-fwnode 0x13120883 v4l2_async_register_subdev_sensor_common +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-fwnode 0x26ad7bd5 v4l2_fwnode_put_link +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-fwnode 0x34474a0d v4l2_fwnode_parse_link +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-fwnode 0x4abb66fd v4l2_async_notifier_parse_fwnode_endpoints_by_port +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-fwnode 0x612ddce5 v4l2_fwnode_connector_free +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-fwnode 0x6f39b437 v4l2_fwnode_endpoint_free +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-fwnode 0x75fa7050 v4l2_async_notifier_parse_fwnode_sensor_common +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-fwnode 0x78c03229 v4l2_fwnode_endpoint_alloc_parse +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-fwnode 0xa31444c2 v4l2_fwnode_connector_add_link +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-fwnode 0xb3b1d9be v4l2_fwnode_device_parse +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-fwnode 0xca4c1b21 v4l2_fwnode_connector_parse +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-fwnode 0xd75f1618 v4l2_fwnode_endpoint_parse +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-fwnode 0xfc3a3728 v4l2_async_notifier_parse_fwnode_endpoints +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0x001e5951 v4l2_m2m_prepare_buf +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0x1fbae840 v4l2_m2m_ioctl_decoder_cmd +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0x215be878 v4l2_m2m_qbuf +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0x2c6ba6d4 v4l2_m2m_next_buf +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0x32822e3c v4l2_m2m_querybuf +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0x420acf3d v4l2_m2m_ctx_release +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0x42967ee0 v4l2_m2m_last_buffer_done +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0x439628ef v4l2_m2m_ctx_init +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0x4845f26d v4l2_m2m_expbuf +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0x513e4bb6 v4l2_m2m_ioctl_streamoff +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0x51c7817a v4l2_m2m_ioctl_try_decoder_cmd +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0x57c7a15c v4l2_m2m_try_schedule +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0x587ecec0 v4l2_m2m_ioctl_prepare_buf +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0x58a564bf v4l2_m2m_buf_queue +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0x5bf5a3d2 v4l2_m2m_ioctl_reqbufs +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0x61859877 v4l2_m2m_fop_mmap +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0x6e7e85bf v4l2_m2m_ioctl_expbuf +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0x6f65a24d v4l2_m2m_ioctl_qbuf +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0x730f2eae v4l2_m2m_init +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0x7477dfac v4l2_m2m_update_start_streaming_state +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0x7b8ae728 v4l2_m2m_ioctl_stateless_try_decoder_cmd +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0x805cef97 v4l2_m2m_last_buf +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0x8286724f v4l2_m2m_ioctl_querybuf +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0x8683c762 v4l2_m2m_buf_remove_by_idx +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0x8baf52f7 v4l2_m2m_update_stop_streaming_state +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0x905e7f9e v4l2_m2m_buf_copy_metadata +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0x9401484b v4l2_m2m_buf_remove +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0x9998d120 v4l2_m2m_fop_poll +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0xafa77f09 v4l2_m2m_ioctl_stateless_decoder_cmd +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0xb05c8971 v4l2_m2m_dqbuf +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0xb06b29cc v4l2_m2m_create_bufs +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0xb4801d8e v4l2_m2m_ioctl_try_encoder_cmd +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0xb57d7772 v4l2_m2m_ioctl_encoder_cmd +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0xb957b21b v4l2_m2m_request_queue +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0xbde6a95d v4l2_m2m_poll +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0xc6fca5ad v4l2_m2m_release +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0xc9584340 v4l2_m2m_encoder_cmd +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0xca7c8b09 v4l2_m2m_streamoff +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0xcdcd0667 v4l2_m2m_ioctl_create_bufs +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0xdec431c6 v4l2_m2m_streamon +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0xe41eb99f v4l2_m2m_decoder_cmd +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0xe56b7bf9 v4l2_m2m_ioctl_dqbuf +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0xe616548b v4l2_m2m_reqbufs +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0xef403d48 v4l2_m2m_register_media_controller +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0xf13ff84d v4l2_m2m_unregister_media_controller +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0xf794e00f v4l2_m2m_buf_remove_by_buf +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0xfd6163cb v4l2_m2m_ioctl_streamon +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0x049a05d3 videobuf_dqbuf +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0x0d57f743 videobuf_read_stop +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0x107992c7 videobuf_read_stream +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0x112a7649 __videobuf_mmap_setup +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0x22fd527a videobuf_queue_is_busy +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0x2486dd44 videobuf_read_one +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0x29f4dc1d videobuf_iolock +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0x2d0a17be videobuf_alloc_vb +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0x3fbc9047 videobuf_streamon +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0x436fc664 videobuf_reqbufs +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0x45d590c3 videobuf_mmap_setup +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0x5438bcc1 videobuf_read_start +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0x5cfaa4fd videobuf_querybuf +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0x696dcb41 videobuf_mmap_free +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0x6fa0be23 videobuf_next_field +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0x9ad467c3 videobuf_queue_core_init +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0x9e1f2c49 videobuf_queue_cancel +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0xc2351837 videobuf_mmap_mapper +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0xddc69df2 videobuf_queue_to_vaddr +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0xdfac5049 videobuf_streamoff +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0xe8379881 videobuf_qbuf +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0xed27c443 videobuf_poll_stream +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0xefdc3641 videobuf_stop +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0xfc230cd8 videobuf_waiton +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-dma-sg 0x2826c906 videobuf_queue_sg_init +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-dma-sg 0x553a86d0 videobuf_sg_alloc +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-dma-sg 0x84419963 videobuf_to_dma +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-dma-sg 0x8c448fe7 videobuf_dma_unmap +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-dma-sg 0x983506db videobuf_dma_free +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-vmalloc 0x0794aedc videobuf_queue_vmalloc_init +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-vmalloc 0x326e8fe0 videobuf_to_vmalloc +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-vmalloc 0xd6442fb9 videobuf_vmalloc_free +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x020b9c4b v4l2_fh_is_singular +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x039f0170 v4l2_device_disconnect +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x0549da46 v4l2_src_change_event_subscribe +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x0968fcf0 v4l2_spi_subdev_init +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x130f5e73 v4l2_event_queue +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x172791c4 v4l2_pipeline_link_notify +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x1a6a99ce __v4l2_device_register_subdev_nodes +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x1e79aecc v4l2_subdev_get_fwnode_pad_1_to_1 +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x21355b50 v4l2_device_set_name +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x23416b9c v4l2_device_put +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x2a53ca39 __tracepoint_vb2_v4l2_qbuf +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x2c87f26b v4l2_fh_exit +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x2fa87231 v4l2_fh_del +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x32431a1e __tracepoint_vb2_v4l2_buf_queue +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x327873b6 v4l2_device_register +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x35497d8f v4l2_event_queue_fh +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x35ca15ce v4l2_device_unregister_subdev +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x36f921a5 v4l2_async_notifier_cleanup +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x39a81266 v4l2_event_pending +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x3d2a3023 v4l2_src_change_event_subdev_subscribe +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x3d6cad16 v4l2_event_dequeue +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x3f956e6f v4l2_event_subdev_unsubscribe +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x43996a8c __tracepoint_vb2_v4l2_buf_done +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x4412265d v4l2_ctrl_request_hdl_ctrl_find +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x44bb0403 v4l2_i2c_subdev_set_name +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x50d65b11 v4l2_subdev_free_pad_config +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x5470532e v4l2_i2c_new_subdev +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x58a8db01 v4l2_async_notifier_add_fwnode_subdev +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x5afd3229 v4l2_i2c_subdev_addr +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x636b9b9c v4l2_spi_new_subdev +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x6d4437bc v4l2_event_unsubscribe_all +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x6e9acc41 v4l2_fill_pixfmt_mp +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x70c27def v4l2_subdev_link_validate_default +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x7c861e19 v4l_vb2q_enable_media_source +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x8146f8e4 v4l2_event_subscribe +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x831d69db v4l2_fh_release +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x84eef42d v4l2_pipeline_pm_get +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x86848ffe v4l2_compat_ioctl32 +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x960116f7 v4l2_async_notifier_add_fwnode_remote_subdev +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x96f863fd v4l2_fh_add +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x9946e1ff v4l2_async_notifier_add_i2c_subdev +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x99df3114 v4l2_i2c_new_subdev_board +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x9fef35ac v4l2_apply_frmsize_constraints +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0xaf24fe7d v4l_disable_media_source +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0xb272c3a6 v4l_enable_media_source +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0xb795f071 __tracepoint_vb2_v4l2_dqbuf +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0xc5ff41dc v4l2_event_unsubscribe +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0xc70d58e0 v4l2_create_fwnode_links +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0xca652d54 v4l2_async_notifier_add_subdev +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0xcbb4ee98 v4l2_pipeline_pm_put +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0xcc501597 v4l2_fill_pixfmt +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0xcdd57474 v4l2_fh_init +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0xd5d4d1ff v4l2_i2c_subdev_init +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0xd7ae4697 v4l2_mc_create_media_graph +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0xdc1139b6 v4l2_fh_open +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0xdc57987d v4l2_async_notifier_add_devname_subdev +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0xdcdd6c05 v4l2_create_fwnode_links_to_pad +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0xdd3783e6 v4l2_ctrl_request_hdl_find +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0xe1ba8bab v4l2_g_parm_cap +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0xe1f985dd v4l2_subdev_alloc_pad_config +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0xe2822320 __v4l2_find_nearest_size +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0xe3c1c327 __v4l2_ctrl_handler_setup +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0xe7f43f71 v4l2_device_unregister +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0xf16990af v4l2_device_register_subdev +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0xf2a353ac v4l2_i2c_tuner_addrs +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0xf5ef842e v4l_bound_align_image +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0xf9933c5f v4l2_s_parm_cap +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0xfb153ea2 v4l2_subdev_notify_event +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0xfc30e2a7 v4l2_subdev_link_validate +EXPORT_SYMBOL_GPL drivers/mfd/88pm80x 0x44db03cb pm80x_regmap_config +EXPORT_SYMBOL_GPL drivers/mfd/88pm80x 0x6a0ece83 pm80x_pm_ops +EXPORT_SYMBOL_GPL drivers/mfd/88pm80x 0xd99fd720 pm80x_deinit +EXPORT_SYMBOL_GPL drivers/mfd/88pm80x 0xe4b544b7 pm80x_init +EXPORT_SYMBOL_GPL drivers/mfd/da9150-core 0x1243ba91 da9150_set_bits +EXPORT_SYMBOL_GPL drivers/mfd/da9150-core 0x2deaa02a da9150_reg_write +EXPORT_SYMBOL_GPL drivers/mfd/da9150-core 0x39316a03 da9150_reg_read +EXPORT_SYMBOL_GPL drivers/mfd/da9150-core 0x8344b937 da9150_bulk_write +EXPORT_SYMBOL_GPL drivers/mfd/da9150-core 0xd73e53c5 da9150_write_qif +EXPORT_SYMBOL_GPL drivers/mfd/da9150-core 0xd9e3004e da9150_bulk_read +EXPORT_SYMBOL_GPL drivers/mfd/da9150-core 0xe01826d6 da9150_read_qif +EXPORT_SYMBOL_GPL drivers/mfd/intel-lpss 0x144891bf intel_lpss_remove +EXPORT_SYMBOL_GPL drivers/mfd/intel-lpss 0x5dc0c154 intel_lpss_probe +EXPORT_SYMBOL_GPL drivers/mfd/intel-lpss 0x88981454 intel_lpss_resume +EXPORT_SYMBOL_GPL drivers/mfd/intel-lpss 0xa1dd1786 intel_lpss_suspend +EXPORT_SYMBOL_GPL drivers/mfd/intel-lpss 0xe9f3bdc6 intel_lpss_prepare +EXPORT_SYMBOL_GPL drivers/mfd/intel_pmc_bxt 0x4abcbeb6 intel_pmc_gcr_read64 +EXPORT_SYMBOL_GPL drivers/mfd/intel_pmc_bxt 0xc0e92bb7 intel_pmc_s0ix_counter_read +EXPORT_SYMBOL_GPL drivers/mfd/intel_pmc_bxt 0xe68f3782 intel_pmc_gcr_update +EXPORT_SYMBOL_GPL drivers/mfd/iqs62x 0x22a28670 iqs62x_events +EXPORT_SYMBOL_GPL drivers/mfd/kempld-core 0x3e563658 kempld_read32 +EXPORT_SYMBOL_GPL drivers/mfd/kempld-core 0x649e2826 kempld_write8 +EXPORT_SYMBOL_GPL drivers/mfd/kempld-core 0x6d0d2ffe kempld_read16 +EXPORT_SYMBOL_GPL drivers/mfd/kempld-core 0x6dbf9d7d kempld_write32 +EXPORT_SYMBOL_GPL drivers/mfd/kempld-core 0x6f5b58da kempld_read8 +EXPORT_SYMBOL_GPL drivers/mfd/kempld-core 0x90c4bd7b kempld_write16 +EXPORT_SYMBOL_GPL drivers/mfd/kempld-core 0xa69b4b2c kempld_get_mutex +EXPORT_SYMBOL_GPL drivers/mfd/kempld-core 0xe7405ab5 kempld_release_mutex +EXPORT_SYMBOL_GPL drivers/mfd/lm3533-core 0x01986d01 lm3533_write +EXPORT_SYMBOL_GPL drivers/mfd/lm3533-core 0x632e2908 lm3533_read +EXPORT_SYMBOL_GPL drivers/mfd/lm3533-core 0x90521d60 lm3533_update +EXPORT_SYMBOL_GPL drivers/mfd/lm3533-ctrlbank 0x4782ddc8 lm3533_ctrlbank_set_brightness +EXPORT_SYMBOL_GPL drivers/mfd/lm3533-ctrlbank 0x956e2000 lm3533_ctrlbank_enable +EXPORT_SYMBOL_GPL drivers/mfd/lm3533-ctrlbank 0xa86909e0 lm3533_ctrlbank_set_max_current +EXPORT_SYMBOL_GPL drivers/mfd/lm3533-ctrlbank 0xbd5bd379 lm3533_ctrlbank_set_pwm +EXPORT_SYMBOL_GPL drivers/mfd/lm3533-ctrlbank 0xf21737cd lm3533_ctrlbank_get_pwm +EXPORT_SYMBOL_GPL drivers/mfd/lm3533-ctrlbank 0xf7546c95 lm3533_ctrlbank_disable +EXPORT_SYMBOL_GPL drivers/mfd/lm3533-ctrlbank 0xfba8a897 lm3533_ctrlbank_get_brightness +EXPORT_SYMBOL_GPL drivers/mfd/lp3943 0x15be772b lp3943_update_bits +EXPORT_SYMBOL_GPL drivers/mfd/lp3943 0x28925f05 lp3943_write_byte +EXPORT_SYMBOL_GPL drivers/mfd/lp3943 0x6c14b1c6 lp3943_read_byte +EXPORT_SYMBOL_GPL drivers/mfd/madera 0x0c2466cc cs47l90_16bit_spi_regmap +EXPORT_SYMBOL_GPL drivers/mfd/madera 0x0c29ba8c cs47l90_32bit_spi_regmap +EXPORT_SYMBOL_GPL drivers/mfd/madera 0x0f379262 madera_of_match +EXPORT_SYMBOL_GPL drivers/mfd/madera 0x14f1117c cs47l85_16bit_i2c_regmap +EXPORT_SYMBOL_GPL drivers/mfd/madera 0x14fccd3c cs47l85_32bit_i2c_regmap +EXPORT_SYMBOL_GPL drivers/mfd/madera 0x26838a04 cs47l35_16bit_i2c_regmap +EXPORT_SYMBOL_GPL drivers/mfd/madera 0x268e5644 cs47l35_32bit_i2c_regmap +EXPORT_SYMBOL_GPL drivers/mfd/madera 0x2795e13d madera_dev_exit +EXPORT_SYMBOL_GPL drivers/mfd/madera 0x3ba57d31 cs47l92_32bit_i2c_regmap +EXPORT_SYMBOL_GPL drivers/mfd/madera 0x3ba8a171 cs47l92_16bit_i2c_regmap +EXPORT_SYMBOL_GPL drivers/mfd/madera 0x4f117bc0 cs47l90_32bit_i2c_regmap +EXPORT_SYMBOL_GPL drivers/mfd/madera 0x4f1ca780 cs47l90_16bit_i2c_regmap +EXPORT_SYMBOL_GPL drivers/mfd/madera 0x5223d6d8 cs47l90_patch +EXPORT_SYMBOL_GPL drivers/mfd/madera 0x57c40c70 cs47l85_32bit_spi_regmap +EXPORT_SYMBOL_GPL drivers/mfd/madera 0x57c9d030 cs47l85_16bit_spi_regmap +EXPORT_SYMBOL_GPL drivers/mfd/madera 0x65b69708 cs47l35_32bit_spi_regmap +EXPORT_SYMBOL_GPL drivers/mfd/madera 0x65bb4b48 cs47l35_16bit_spi_regmap +EXPORT_SYMBOL_GPL drivers/mfd/madera 0x668aae4c cs47l15_patch +EXPORT_SYMBOL_GPL drivers/mfd/madera 0x7890603d cs47l92_16bit_spi_regmap +EXPORT_SYMBOL_GPL drivers/mfd/madera 0x789dbc7d cs47l92_32bit_spi_regmap +EXPORT_SYMBOL_GPL drivers/mfd/madera 0x78b919a4 madera_dev_init +EXPORT_SYMBOL_GPL drivers/mfd/madera 0xa30a3541 cs47l85_patch +EXPORT_SYMBOL_GPL drivers/mfd/madera 0xaea36e0c cs47l92_patch +EXPORT_SYMBOL_GPL drivers/mfd/madera 0xaf753dc4 cs47l15_16bit_spi_regmap +EXPORT_SYMBOL_GPL drivers/mfd/madera 0xaf78e184 cs47l15_32bit_spi_regmap +EXPORT_SYMBOL_GPL drivers/mfd/madera 0xd643227e madera_pm_ops +EXPORT_SYMBOL_GPL drivers/mfd/madera 0xe7c83839 cs47l35_patch +EXPORT_SYMBOL_GPL drivers/mfd/madera 0xebe384cb madera_name_from_type +EXPORT_SYMBOL_GPL drivers/mfd/madera 0xec4020c8 cs47l15_32bit_i2c_regmap +EXPORT_SYMBOL_GPL drivers/mfd/madera 0xec4dfc88 cs47l15_16bit_i2c_regmap +EXPORT_SYMBOL_GPL drivers/mfd/mc13xxx-core 0x2734d061 mc13xxx_variant_mc34708 +EXPORT_SYMBOL_GPL drivers/mfd/mc13xxx-core 0x353b2509 mc13xxx_variant_mc13783 +EXPORT_SYMBOL_GPL drivers/mfd/mc13xxx-core 0x75816e29 mc13xxx_variant_mc13892 +EXPORT_SYMBOL_GPL drivers/mfd/mc13xxx-core 0x8ba5c12b mc13xxx_common_init +EXPORT_SYMBOL_GPL drivers/mfd/mc13xxx-core 0xc517bcd6 mc13xxx_common_exit +EXPORT_SYMBOL_GPL drivers/mfd/mc13xxx-core 0xf0291624 mc13xxx_adc_do_conversion +EXPORT_SYMBOL_GPL drivers/mfd/pcf50633 0x00bfca7c pcf50633_reg_clear_bits +EXPORT_SYMBOL_GPL drivers/mfd/pcf50633 0x0eb01f91 pcf50633_reg_write +EXPORT_SYMBOL_GPL drivers/mfd/pcf50633 0x16aabc8d pcf50633_irq_mask_get +EXPORT_SYMBOL_GPL drivers/mfd/pcf50633 0x2532d77e pcf50633_register_irq +EXPORT_SYMBOL_GPL drivers/mfd/pcf50633 0x2c227690 pcf50633_reg_set_bit_mask +EXPORT_SYMBOL_GPL drivers/mfd/pcf50633 0x404a14fe pcf50633_read_block +EXPORT_SYMBOL_GPL drivers/mfd/pcf50633 0x6aff148f pcf50633_reg_read +EXPORT_SYMBOL_GPL drivers/mfd/pcf50633 0x7e7d0dc6 pcf50633_free_irq +EXPORT_SYMBOL_GPL drivers/mfd/pcf50633 0x8974a710 pcf50633_irq_mask +EXPORT_SYMBOL_GPL drivers/mfd/pcf50633 0xdcb9250f pcf50633_irq_unmask +EXPORT_SYMBOL_GPL drivers/mfd/pcf50633 0xe0d2fd8d pcf50633_write_block +EXPORT_SYMBOL_GPL drivers/mfd/pcf50633-adc 0xa0f0aabe pcf50633_adc_async_read +EXPORT_SYMBOL_GPL drivers/mfd/pcf50633-adc 0xada02a10 pcf50633_adc_sync_read +EXPORT_SYMBOL_GPL drivers/mfd/pcf50633-gpio 0x035ed701 pcf50633_gpio_set +EXPORT_SYMBOL_GPL drivers/mfd/pcf50633-gpio 0x42627059 pcf50633_gpio_get +EXPORT_SYMBOL_GPL drivers/mfd/pcf50633-gpio 0x476ec6b7 pcf50633_gpio_invert_get +EXPORT_SYMBOL_GPL drivers/mfd/pcf50633-gpio 0x530cfa34 pcf50633_gpio_invert_set +EXPORT_SYMBOL_GPL drivers/mfd/pcf50633-gpio 0xad09f23d pcf50633_gpio_power_supply_set +EXPORT_SYMBOL_GPL drivers/mfd/rave-sp 0x3328cb5e devm_rave_sp_register_event_notifier +EXPORT_SYMBOL_GPL drivers/mfd/rave-sp 0x43e53ef9 rave_sp_exec +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 0x038fc361 si476x_core_cmd_ana_audio_pin_cfg +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0x08311f69 devm_regmap_init_si476x +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0x0d9d7eab si476x_core_cmd_power_down +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0x0f63acf6 si476x_core_is_a_secondary_tuner +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0x1389969c si476x_core_cmd_am_tune_freq +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0x1c43f07e si476x_core_cmd_fm_phase_div_status +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0x2969c032 si476x_core_cmd_am_rsq_status +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0x373c8d7b si476x_core_cmd_agc_status +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0x3ce410b6 si476x_core_has_diversity +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0x4643b1d9 si476x_core_start +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0x489ee1db si476x_core_cmd_ic_link_gpo_ctl_pin_cfg +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0x4b5c1677 si476x_core_is_in_am_receiver_mode +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0x54b58827 si476x_core_cmd_intb_pin_cfg +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0x5e8a7fbb si476x_core_cmd_zif_pin_cfg +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0x6126c209 si476x_core_cmd_fm_acf_status +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0x79c94b1d si476x_core_cmd_set_property +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0x7cbf42bb si476x_core_stop +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0x8d69462e si476x_core_cmd_fm_rds_blockcount +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0x8deca8dc si476x_core_set_power_state +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0x929f97bf si476x_core_has_am +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0x9a842eeb si476x_core_is_a_primary_tuner +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0xa04b251a si476x_core_cmd_dig_audio_pin_cfg +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0xa142d518 si476x_core_cmd_fm_seek_start +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0xa3f617f2 si476x_core_is_powered_up +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0xa7698bdc si476x_core_cmd_fm_tune_freq +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0xa812cd17 si476x_core_cmd_am_seek_start +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0xb150788b si476x_core_cmd_get_property +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0xbca449f0 si476x_core_i2c_xfer +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0xbcdf251d si476x_core_cmd_fm_rsq_status +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0xd24964d8 si476x_core_cmd_power_up +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0xd82cb7c1 si476x_core_cmd_am_acf_status +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0xe13d96c3 si476x_core_cmd_fm_rds_status +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0xf7fda98c si476x_core_cmd_func_info +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0xfcd84e5c si476x_core_cmd_fm_phase_diversity +EXPORT_SYMBOL_GPL drivers/mfd/sm501 0x037f015b sm501_find_clock +EXPORT_SYMBOL_GPL drivers/mfd/sm501 0x1e498817 sm501_misc_control +EXPORT_SYMBOL_GPL drivers/mfd/sm501 0x27dd6c12 sm501_unit_power +EXPORT_SYMBOL_GPL drivers/mfd/sm501 0x4da23d67 sm501_modify_reg +EXPORT_SYMBOL_GPL drivers/mfd/sm501 0x64156bbf sm501_set_clock +EXPORT_SYMBOL_GPL drivers/mfd/ti_am335x_tscadc 0x626b5450 am335x_tsc_se_set_cache +EXPORT_SYMBOL_GPL drivers/mfd/ti_am335x_tscadc 0x95804933 am335x_tsc_se_adc_done +EXPORT_SYMBOL_GPL drivers/mfd/ti_am335x_tscadc 0x99fb8a20 am335x_tsc_se_set_once +EXPORT_SYMBOL_GPL drivers/mfd/ti_am335x_tscadc 0xa3e91626 am335x_tsc_se_clr +EXPORT_SYMBOL_GPL drivers/mfd/ucb1400_core 0x3cb43973 ucb1400_adc_read +EXPORT_SYMBOL_GPL drivers/misc/cardreader/alcor_pci 0x09db2542 alcor_write32 +EXPORT_SYMBOL_GPL drivers/misc/cardreader/alcor_pci 0x0e428f23 alcor_write16 +EXPORT_SYMBOL_GPL drivers/misc/cardreader/alcor_pci 0x26ac124f alcor_write8 +EXPORT_SYMBOL_GPL drivers/misc/cardreader/alcor_pci 0x2c774577 alcor_read32 +EXPORT_SYMBOL_GPL drivers/misc/cardreader/alcor_pci 0x5864ee3e alcor_read8 +EXPORT_SYMBOL_GPL drivers/misc/cardreader/alcor_pci 0x8a089fba alcor_read32be +EXPORT_SYMBOL_GPL drivers/misc/cardreader/alcor_pci 0x96cef9a7 alcor_write32be +EXPORT_SYMBOL_GPL drivers/misc/cardreader/rtsx_pci 0x11150584 rtsx_pci_dma_unmap_sg +EXPORT_SYMBOL_GPL drivers/misc/cardreader/rtsx_pci 0x11e5ca8f rtsx_pci_card_pull_ctl_enable +EXPORT_SYMBOL_GPL drivers/misc/cardreader/rtsx_pci 0x1275d772 rtsx_pci_card_power_on +EXPORT_SYMBOL_GPL drivers/misc/cardreader/rtsx_pci 0x15bc686c rtsx_pci_write_register +EXPORT_SYMBOL_GPL drivers/misc/cardreader/rtsx_pci 0x1cc414dc rtsx_pci_switch_clock +EXPORT_SYMBOL_GPL drivers/misc/cardreader/rtsx_pci 0x33a9761d rtsx_pci_start_run +EXPORT_SYMBOL_GPL drivers/misc/cardreader/rtsx_pci 0x35ba7c26 rtsx_pci_write_phy_register +EXPORT_SYMBOL_GPL drivers/misc/cardreader/rtsx_pci 0x37ad12dc rtsx_pci_transfer_data +EXPORT_SYMBOL_GPL drivers/misc/cardreader/rtsx_pci 0x539728e5 rtsx_pci_card_pull_ctl_disable +EXPORT_SYMBOL_GPL drivers/misc/cardreader/rtsx_pci 0x63fb8f09 rtsx_pci_dma_transfer +EXPORT_SYMBOL_GPL drivers/misc/cardreader/rtsx_pci 0x6aa16045 rtsx_pci_switch_output_voltage +EXPORT_SYMBOL_GPL drivers/misc/cardreader/rtsx_pci 0x73c119be rtsx_pci_stop_cmd +EXPORT_SYMBOL_GPL drivers/misc/cardreader/rtsx_pci 0x7cf9016d rtsx_pci_read_ppbuf +EXPORT_SYMBOL_GPL drivers/misc/cardreader/rtsx_pci 0x90bd9020 rtsx_pci_card_power_off +EXPORT_SYMBOL_GPL drivers/misc/cardreader/rtsx_pci 0x911c9697 rtsx_pci_send_cmd +EXPORT_SYMBOL_GPL drivers/misc/cardreader/rtsx_pci 0x961c229b rtsx_pci_dma_map_sg +EXPORT_SYMBOL_GPL drivers/misc/cardreader/rtsx_pci 0xa2c224d6 rtsx_pci_card_exist +EXPORT_SYMBOL_GPL drivers/misc/cardreader/rtsx_pci 0xab778847 rtsx_pci_read_phy_register +EXPORT_SYMBOL_GPL drivers/misc/cardreader/rtsx_pci 0xbdd184b1 rtsx_pci_write_ppbuf +EXPORT_SYMBOL_GPL drivers/misc/cardreader/rtsx_pci 0xbe3b81d2 rtsx_pci_card_exclusive_check +EXPORT_SYMBOL_GPL drivers/misc/cardreader/rtsx_pci 0xe7b72944 rtsx_pci_complete_unfinished_transfer +EXPORT_SYMBOL_GPL drivers/misc/cardreader/rtsx_pci 0xe9f5d3ac rtsx_pci_send_cmd_no_wait +EXPORT_SYMBOL_GPL drivers/misc/cardreader/rtsx_pci 0xfb9f20f8 rtsx_pci_add_cmd +EXPORT_SYMBOL_GPL drivers/misc/cardreader/rtsx_pci 0xfc549d85 rtsx_pci_read_register +EXPORT_SYMBOL_GPL drivers/misc/cardreader/rtsx_usb 0x03ba84a0 rtsx_usb_read_register +EXPORT_SYMBOL_GPL drivers/misc/cardreader/rtsx_usb 0x41415229 rtsx_usb_write_ppbuf +EXPORT_SYMBOL_GPL drivers/misc/cardreader/rtsx_usb 0x5972a647 rtsx_usb_ep0_write_register +EXPORT_SYMBOL_GPL drivers/misc/cardreader/rtsx_usb 0x6401d1b6 rtsx_usb_read_ppbuf +EXPORT_SYMBOL_GPL drivers/misc/cardreader/rtsx_usb 0x6823674a rtsx_usb_card_exclusive_check +EXPORT_SYMBOL_GPL drivers/misc/cardreader/rtsx_usb 0x689fc38c rtsx_usb_transfer_data +EXPORT_SYMBOL_GPL drivers/misc/cardreader/rtsx_usb 0x999959a4 rtsx_usb_switch_clock +EXPORT_SYMBOL_GPL drivers/misc/cardreader/rtsx_usb 0xa17da00d rtsx_usb_write_register +EXPORT_SYMBOL_GPL drivers/misc/cardreader/rtsx_usb 0xb1be32a3 rtsx_usb_add_cmd +EXPORT_SYMBOL_GPL drivers/misc/cardreader/rtsx_usb 0xd2bc878e rtsx_usb_send_cmd +EXPORT_SYMBOL_GPL drivers/misc/cardreader/rtsx_usb 0xd56608ae rtsx_usb_get_card_status +EXPORT_SYMBOL_GPL drivers/misc/cardreader/rtsx_usb 0xe70a78c1 rtsx_usb_get_rsp +EXPORT_SYMBOL_GPL drivers/misc/cardreader/rtsx_usb 0xf1bb00ca rtsx_usb_ep0_read_register +EXPORT_SYMBOL_GPL drivers/misc/cb710/cb710 0x03e35ef9 cb710_sg_dwiter_read_next_block +EXPORT_SYMBOL_GPL drivers/misc/cb710/cb710 0x1cb9475b cb710_sg_dwiter_write_next_block +EXPORT_SYMBOL_GPL drivers/misc/cb710/cb710 0x39a9b3f9 cb710_set_irq_handler +EXPORT_SYMBOL_GPL drivers/misc/cb710/cb710 0x5d834cd1 cb710_pci_update_config_reg +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 0x3150a903 enclosure_register +EXPORT_SYMBOL_GPL drivers/misc/enclosure 0x3a83dd54 enclosure_component_register +EXPORT_SYMBOL_GPL drivers/misc/enclosure 0x7f8bdbc6 enclosure_for_each_device +EXPORT_SYMBOL_GPL drivers/misc/enclosure 0x8a287ea1 enclosure_unregister +EXPORT_SYMBOL_GPL drivers/misc/enclosure 0x92d26c5a enclosure_component_alloc +EXPORT_SYMBOL_GPL drivers/misc/enclosure 0xccd6ffa3 enclosure_remove_device +EXPORT_SYMBOL_GPL drivers/misc/enclosure 0xd73826be enclosure_find +EXPORT_SYMBOL_GPL drivers/misc/enclosure 0xd8a84a08 enclosure_add_device +EXPORT_SYMBOL_GPL drivers/misc/lis3lv02d/lis3lv02d 0x0585fb6a lis3lv02d_init_device +EXPORT_SYMBOL_GPL drivers/misc/lis3lv02d/lis3lv02d 0x47adf7c5 lis3_dev +EXPORT_SYMBOL_GPL drivers/misc/lis3lv02d/lis3lv02d 0x5ddc425a lis3lv02d_joystick_enable +EXPORT_SYMBOL_GPL drivers/misc/lis3lv02d/lis3lv02d 0x81f32517 lis3lv02d_remove_fs +EXPORT_SYMBOL_GPL drivers/misc/lis3lv02d/lis3lv02d 0x89f86dbf lis3lv02d_poweroff +EXPORT_SYMBOL_GPL drivers/misc/lis3lv02d/lis3lv02d 0x9680f022 lis3lv02d_init_dt +EXPORT_SYMBOL_GPL drivers/misc/lis3lv02d/lis3lv02d 0xa0ddbedf lis3lv02d_poweron +EXPORT_SYMBOL_GPL drivers/misc/lis3lv02d/lis3lv02d 0xc6d99a97 lis3lv02d_joystick_disable +EXPORT_SYMBOL_GPL drivers/misc/mei/mei 0x007eed39 mei_cldev_ver +EXPORT_SYMBOL_GPL drivers/misc/mei/mei 0x05fc4560 mei_cldev_recv +EXPORT_SYMBOL_GPL drivers/misc/mei/mei 0x093c1c8b mei_cldev_set_drvdata +EXPORT_SYMBOL_GPL drivers/misc/mei/mei 0x0abfae53 mei_write_is_idle +EXPORT_SYMBOL_GPL drivers/misc/mei/mei 0x132e594e mei_cldev_disable +EXPORT_SYMBOL_GPL drivers/misc/mei/mei 0x22d71499 mei_start +EXPORT_SYMBOL_GPL drivers/misc/mei/mei 0x28aebdae mei_cldev_recv_nonblock +EXPORT_SYMBOL_GPL drivers/misc/mei/mei 0x2d1cf88e mei_stop +EXPORT_SYMBOL_GPL drivers/misc/mei/mei 0x2f6359bd mei_cldev_enabled +EXPORT_SYMBOL_GPL drivers/misc/mei/mei 0x3867f28f mei_cldev_enable +EXPORT_SYMBOL_GPL drivers/misc/mei/mei 0x3d485a1f mei_deregister +EXPORT_SYMBOL_GPL drivers/misc/mei/mei 0x3eedef9d mei_register +EXPORT_SYMBOL_GPL drivers/misc/mei/mei 0x48f1c2cd mei_cancel_work +EXPORT_SYMBOL_GPL drivers/misc/mei/mei 0x4ccf6684 mei_cldev_register_rx_cb +EXPORT_SYMBOL_GPL drivers/misc/mei/mei 0x609f9660 mei_hbm_pg_resume +EXPORT_SYMBOL_GPL drivers/misc/mei/mei 0x670e5863 mei_irq_read_handler +EXPORT_SYMBOL_GPL drivers/misc/mei/mei 0x68d3c1c1 mei_cldev_register_notif_cb +EXPORT_SYMBOL_GPL drivers/misc/mei/mei 0x6e7550b0 mei_hbm_pg +EXPORT_SYMBOL_GPL drivers/misc/mei/mei 0x850f3f9d mei_cldev_uuid +EXPORT_SYMBOL_GPL drivers/misc/mei/mei 0x87227dd8 mei_device_init +EXPORT_SYMBOL_GPL drivers/misc/mei/mei 0x897b2b6e mei_cldev_driver_unregister +EXPORT_SYMBOL_GPL drivers/misc/mei/mei 0x8a7ec99b mei_cldev_get_drvdata +EXPORT_SYMBOL_GPL drivers/misc/mei/mei 0x90a24af4 mei_fw_status2str +EXPORT_SYMBOL_GPL drivers/misc/mei/mei 0x90c98954 mei_irq_compl_handler +EXPORT_SYMBOL_GPL drivers/misc/mei/mei 0x93273c33 mei_cldev_send +EXPORT_SYMBOL_GPL drivers/misc/mei/mei 0xb6ccbdc2 __mei_cldev_driver_register +EXPORT_SYMBOL_GPL drivers/misc/mei/mei 0xb81659b2 mei_restart +EXPORT_SYMBOL_GPL drivers/misc/mei/mei 0xc1d2288c mei_irq_write_handler +EXPORT_SYMBOL_GPL drivers/misc/mei/mei 0xe2e350a3 mei_reset +EXPORT_SYMBOL_GPL drivers/misc/mic/bus/cosm_bus 0x407a4412 cosm_unregister_device +EXPORT_SYMBOL_GPL drivers/misc/mic/bus/cosm_bus 0x4197c767 cosm_register_device +EXPORT_SYMBOL_GPL drivers/misc/mic/bus/cosm_bus 0x57ee2433 cosm_find_cdev_by_id +EXPORT_SYMBOL_GPL drivers/misc/mic/bus/cosm_bus 0xb5f2ea9e cosm_unregister_driver +EXPORT_SYMBOL_GPL drivers/misc/mic/bus/cosm_bus 0xd6251a42 cosm_register_driver +EXPORT_SYMBOL_GPL drivers/misc/mic/bus/mic_bus 0x2595ffc1 mbus_register_device +EXPORT_SYMBOL_GPL drivers/misc/mic/bus/mic_bus 0x42b0f602 mbus_unregister_driver +EXPORT_SYMBOL_GPL drivers/misc/mic/bus/mic_bus 0x638087c0 mbus_unregister_device +EXPORT_SYMBOL_GPL drivers/misc/mic/bus/mic_bus 0xc574774a mbus_register_driver +EXPORT_SYMBOL_GPL drivers/misc/mic/bus/scif_bus 0x09ce088c scif_unregister_driver +EXPORT_SYMBOL_GPL drivers/misc/mic/bus/scif_bus 0x7cd4c787 scif_register_driver +EXPORT_SYMBOL_GPL drivers/misc/mic/bus/scif_bus 0xdc83410d scif_unregister_device +EXPORT_SYMBOL_GPL drivers/misc/mic/bus/scif_bus 0xde21c751 scif_register_device +EXPORT_SYMBOL_GPL drivers/misc/mic/bus/vop_bus 0x05163f5c vop_unregister_driver +EXPORT_SYMBOL_GPL drivers/misc/mic/bus/vop_bus 0x6261d1e8 vop_unregister_device +EXPORT_SYMBOL_GPL drivers/misc/mic/bus/vop_bus 0x7fb764bc vop_register_device +EXPORT_SYMBOL_GPL drivers/misc/mic/bus/vop_bus 0xb1451698 vop_register_driver +EXPORT_SYMBOL_GPL drivers/misc/mic/scif/scif 0x034eef3b scif_client_unregister +EXPORT_SYMBOL_GPL drivers/misc/mic/scif/scif 0x06f696a5 scif_get_pages +EXPORT_SYMBOL_GPL drivers/misc/mic/scif/scif 0x0800e92a scif_accept +EXPORT_SYMBOL_GPL drivers/misc/mic/scif/scif 0x0a6f4b32 scif_readfrom +EXPORT_SYMBOL_GPL drivers/misc/mic/scif/scif 0x0b08931e scif_connect +EXPORT_SYMBOL_GPL drivers/misc/mic/scif/scif 0x0bed91a7 scif_fence_mark +EXPORT_SYMBOL_GPL drivers/misc/mic/scif/scif 0x0d8f8e99 scif_register_pinned_pages +EXPORT_SYMBOL_GPL drivers/misc/mic/scif/scif 0x13c0f1c3 scif_unpin_pages +EXPORT_SYMBOL_GPL drivers/misc/mic/scif/scif 0x1591d02a scif_send +EXPORT_SYMBOL_GPL drivers/misc/mic/scif/scif 0x22440d16 scif_vwriteto +EXPORT_SYMBOL_GPL drivers/misc/mic/scif/scif 0x23537f56 scif_open +EXPORT_SYMBOL_GPL drivers/misc/mic/scif/scif 0x3484e59d scif_pin_pages +EXPORT_SYMBOL_GPL drivers/misc/mic/scif/scif 0x37b93372 scif_writeto +EXPORT_SYMBOL_GPL drivers/misc/mic/scif/scif 0x3c8ca00b scif_close +EXPORT_SYMBOL_GPL drivers/misc/mic/scif/scif 0x3f9d5615 scif_put_pages +EXPORT_SYMBOL_GPL drivers/misc/mic/scif/scif 0x7f1e240d scif_bind +EXPORT_SYMBOL_GPL drivers/misc/mic/scif/scif 0x8f2fed3f scif_get_node_ids +EXPORT_SYMBOL_GPL drivers/misc/mic/scif/scif 0x914175bf scif_client_register +EXPORT_SYMBOL_GPL drivers/misc/mic/scif/scif 0x99699e27 scif_vreadfrom +EXPORT_SYMBOL_GPL drivers/misc/mic/scif/scif 0xa15f5664 scif_listen +EXPORT_SYMBOL_GPL drivers/misc/mic/scif/scif 0xc49bc450 scif_fence_signal +EXPORT_SYMBOL_GPL drivers/misc/mic/scif/scif 0xc68bc880 scif_fence_wait +EXPORT_SYMBOL_GPL drivers/misc/mic/scif/scif 0xc6b28127 scif_poll +EXPORT_SYMBOL_GPL drivers/misc/mic/scif/scif 0xc8a7bb77 scif_unregister +EXPORT_SYMBOL_GPL drivers/misc/mic/scif/scif 0xdaa1efe2 scif_register +EXPORT_SYMBOL_GPL drivers/misc/mic/scif/scif 0xe1d9ca18 scif_recv +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 0x7d5ba9a9 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 0x0b52993f st_unregister +EXPORT_SYMBOL_GPL drivers/misc/ti-st/st_drv 0x518a2137 st_register +EXPORT_SYMBOL_GPL drivers/misc/uacce/uacce 0x3c0fac14 uacce_remove +EXPORT_SYMBOL_GPL drivers/misc/uacce/uacce 0xb17090ad uacce_register +EXPORT_SYMBOL_GPL drivers/misc/uacce/uacce 0xea75e1a7 uacce_alloc +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 0x5591b58e vmci_context_get_priv_flags +EXPORT_SYMBOL_GPL drivers/misc/vmw_vmci/vmw_vmci 0x58a3cc46 vmci_qpair_enquev +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 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 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/misc/vmw_vmci/vmw_vmci 0xf8fd7ba0 vmci_qpair_peekv +EXPORT_SYMBOL_GPL drivers/misc/vmw_vmci/vmw_vmci 0xffc5797d vmci_qpair_dequev +EXPORT_SYMBOL_GPL drivers/mmc/host/sdhci 0x003befc8 __sdhci_read_caps +EXPORT_SYMBOL_GPL drivers/mmc/host/sdhci 0x05b322b5 sdhci_start_tuning +EXPORT_SYMBOL_GPL drivers/mmc/host/sdhci 0x0f7b093d sdhci_runtime_resume_host +EXPORT_SYMBOL_GPL drivers/mmc/host/sdhci 0x166b61c3 sdhci_send_tuning +EXPORT_SYMBOL_GPL drivers/mmc/host/sdhci 0x1789c4da sdhci_runtime_suspend_host +EXPORT_SYMBOL_GPL drivers/mmc/host/sdhci 0x1971e435 sdhci_end_tuning +EXPORT_SYMBOL_GPL drivers/mmc/host/sdhci 0x19a5bcb9 sdhci_set_data_timeout_irq +EXPORT_SYMBOL_GPL drivers/mmc/host/sdhci 0x1bc38856 sdhci_set_bus_width +EXPORT_SYMBOL_GPL drivers/mmc/host/sdhci 0x1f93c65f sdhci_cleanup_host +EXPORT_SYMBOL_GPL drivers/mmc/host/sdhci 0x2552decd sdhci_setup_host +EXPORT_SYMBOL_GPL drivers/mmc/host/sdhci 0x25575ab2 sdhci_set_ios +EXPORT_SYMBOL_GPL drivers/mmc/host/sdhci 0x2793ec9d sdhci_abort_tuning +EXPORT_SYMBOL_GPL drivers/mmc/host/sdhci 0x35ed5496 sdhci_enable_sdio_irq +EXPORT_SYMBOL_GPL drivers/mmc/host/sdhci 0x3e56ec68 sdhci_reset +EXPORT_SYMBOL_GPL drivers/mmc/host/sdhci 0x3f4c6708 sdhci_adma_write_desc +EXPORT_SYMBOL_GPL drivers/mmc/host/sdhci 0x45c7f402 sdhci_suspend_host +EXPORT_SYMBOL_GPL drivers/mmc/host/sdhci 0x553c78b7 sdhci_set_power_noreg +EXPORT_SYMBOL_GPL drivers/mmc/host/sdhci 0x55bccb48 sdhci_alloc_host +EXPORT_SYMBOL_GPL drivers/mmc/host/sdhci 0x6008c000 sdhci_set_power +EXPORT_SYMBOL_GPL drivers/mmc/host/sdhci 0x616094c2 sdhci_free_host +EXPORT_SYMBOL_GPL drivers/mmc/host/sdhci 0x67aec6d1 sdhci_start_signal_voltage_switch +EXPORT_SYMBOL_GPL drivers/mmc/host/sdhci 0x770c0139 sdhci_calc_clk +EXPORT_SYMBOL_GPL drivers/mmc/host/sdhci 0x7f9720db sdhci_enable_clk +EXPORT_SYMBOL_GPL drivers/mmc/host/sdhci 0x872389ea sdhci_set_clock +EXPORT_SYMBOL_GPL drivers/mmc/host/sdhci 0x89b9d5de sdhci_resume_host +EXPORT_SYMBOL_GPL drivers/mmc/host/sdhci 0x94804e88 sdhci_set_power_and_bus_voltage +EXPORT_SYMBOL_GPL drivers/mmc/host/sdhci 0x9769086d sdhci_execute_tuning +EXPORT_SYMBOL_GPL drivers/mmc/host/sdhci 0x9ad972ce sdhci_reset_tuning +EXPORT_SYMBOL_GPL drivers/mmc/host/sdhci 0xa2ee41b3 sdhci_set_uhs_signaling +EXPORT_SYMBOL_GPL drivers/mmc/host/sdhci 0xa378da5e sdhci_request +EXPORT_SYMBOL_GPL drivers/mmc/host/sdhci 0xa7001c06 sdhci_request_atomic +EXPORT_SYMBOL_GPL drivers/mmc/host/sdhci 0xaa011fc5 sdhci_remove_host +EXPORT_SYMBOL_GPL drivers/mmc/host/sdhci 0xc15a2ef9 __sdhci_add_host +EXPORT_SYMBOL_GPL drivers/mmc/host/sdhci 0xc6a0f5c1 sdhci_cqe_disable +EXPORT_SYMBOL_GPL drivers/mmc/host/sdhci 0xce855ac8 sdhci_enable_v4_mode +EXPORT_SYMBOL_GPL drivers/mmc/host/sdhci 0xd9f07154 sdhci_add_host +EXPORT_SYMBOL_GPL drivers/mmc/host/sdhci 0xe312afcb sdhci_dumpregs +EXPORT_SYMBOL_GPL drivers/mmc/host/sdhci 0xebf2b5ed sdhci_switch_external_dma +EXPORT_SYMBOL_GPL drivers/mmc/host/sdhci 0xedd8cda3 sdhci_cqe_irq +EXPORT_SYMBOL_GPL drivers/mmc/host/sdhci 0xf6461219 __sdhci_set_timeout +EXPORT_SYMBOL_GPL drivers/mmc/host/sdhci 0xf8fb7a39 sdhci_cqe_enable +EXPORT_SYMBOL_GPL drivers/mmc/host/sdhci-pltfm 0x35b791b1 sdhci_pltfm_unregister +EXPORT_SYMBOL_GPL drivers/mmc/host/sdhci-pltfm 0x3cfd8f0a sdhci_pltfm_resume +EXPORT_SYMBOL_GPL drivers/mmc/host/sdhci-pltfm 0x60555f99 sdhci_pltfm_free +EXPORT_SYMBOL_GPL drivers/mmc/host/sdhci-pltfm 0x6ea0c4af sdhci_pltfm_clk_get_max_clock +EXPORT_SYMBOL_GPL drivers/mmc/host/sdhci-pltfm 0x76023fe0 sdhci_pltfm_register +EXPORT_SYMBOL_GPL drivers/mmc/host/sdhci-pltfm 0x978f6741 sdhci_pltfm_pmops +EXPORT_SYMBOL_GPL drivers/mmc/host/sdhci-pltfm 0xa0f79e43 sdhci_pltfm_init +EXPORT_SYMBOL_GPL drivers/mmc/host/sdhci-pltfm 0xac9471d9 sdhci_get_property +EXPORT_SYMBOL_GPL drivers/mmc/host/sdhci-pltfm 0xbabbc853 sdhci_pltfm_suspend +EXPORT_SYMBOL_GPL drivers/most/most_core 0x052ecfda most_stop_channel +EXPORT_SYMBOL_GPL drivers/most/most_core 0x15440843 channel_has_mbo +EXPORT_SYMBOL_GPL drivers/most/most_core 0x16560e7d most_deregister_component +EXPORT_SYMBOL_GPL drivers/most/most_core 0x1f7300d3 most_start_channel +EXPORT_SYMBOL_GPL drivers/most/most_core 0x32ca1d7f most_get_mbo +EXPORT_SYMBOL_GPL drivers/most/most_core 0x5940ac78 most_put_mbo +EXPORT_SYMBOL_GPL drivers/most/most_core 0x5ef87e5e most_register_component +EXPORT_SYMBOL_GPL drivers/most/most_core 0x8f683c64 most_resume_enqueue +EXPORT_SYMBOL_GPL drivers/most/most_core 0x94cf82f6 most_stop_enqueue +EXPORT_SYMBOL_GPL drivers/most/most_core 0xb9a30c18 most_register_configfs_subsys +EXPORT_SYMBOL_GPL drivers/most/most_core 0xced3d672 most_deregister_interface +EXPORT_SYMBOL_GPL drivers/most/most_core 0xe083adac most_deregister_configfs_subsys +EXPORT_SYMBOL_GPL drivers/most/most_core 0xec2f9a40 most_register_interface +EXPORT_SYMBOL_GPL drivers/most/most_core 0xf2fa1381 most_submit_mbo +EXPORT_SYMBOL_GPL drivers/mtd/chips/cfi_cmdset_0001 0x7ae91aac cfi_cmdset_0200 +EXPORT_SYMBOL_GPL drivers/mtd/chips/cfi_cmdset_0001 0x87f73f3a cfi_cmdset_0003 +EXPORT_SYMBOL_GPL drivers/mtd/chips/cfi_cmdset_0001 0xb8de1ad2 cfi_cmdset_0001 +EXPORT_SYMBOL_GPL drivers/mtd/chips/cfi_cmdset_0002 0x6b9a6248 cfi_cmdset_0701 +EXPORT_SYMBOL_GPL drivers/mtd/chips/cfi_cmdset_0002 0x9863adce cfi_cmdset_0002 +EXPORT_SYMBOL_GPL drivers/mtd/chips/cfi_cmdset_0002 0xe631e61e cfi_cmdset_0006 +EXPORT_SYMBOL_GPL drivers/mtd/chips/cfi_cmdset_0020 0x09a4cb49 cfi_cmdset_0020 +EXPORT_SYMBOL_GPL drivers/mtd/chips/cfi_util 0x2beeb6ad cfi_qry_mode_off +EXPORT_SYMBOL_GPL drivers/mtd/chips/cfi_util 0x4578b3ed cfi_qry_present +EXPORT_SYMBOL_GPL drivers/mtd/chips/cfi_util 0xba17f371 cfi_qry_mode_on +EXPORT_SYMBOL_GPL drivers/mtd/hyperbus/hyperbus-core 0x09eb49b5 hyperbus_unregister_device +EXPORT_SYMBOL_GPL drivers/mtd/hyperbus/hyperbus-core 0x21572542 hyperbus_register_device +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0x02143cf9 mtd_write_oob +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0x04b012a4 mtd_read_user_prot_reg +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0x04e8f715 mtd_read_oob +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0x05eaa6ae mtd_write_user_prot_reg +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0x10f168ab mtd_read_fact_prot_reg +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0x11627fb9 mtd_ooblayout_count_eccbytes +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0x152462f1 mtd_get_fact_prot_info +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0x2190f305 mtd_ooblayout_set_databytes +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0x262fbfd3 mtd_block_isbad +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0x30fc3ff1 __mtd_next_device +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0x378b10e5 get_tree_mtd +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0x42905023 mtd_unpoint +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0x4a2cdb29 mtd_lock +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0x4df768e3 mtd_del_partition +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0x54825813 kill_mtd_super +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0x54e4aac0 mtd_erase +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0x5f6b6172 mtd_block_markbad +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0x61e46518 register_mtd_user +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0x65d8dcf2 mtd_pairing_groups +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0x662bb840 mtd_pairing_info_to_wunit +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0x72b9e49f mtd_writev +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0x72e4908a mtd_device_parse_register +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0x7353ad1b mtd_write +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0x7812781d mtd_wunit_to_pairing_info +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0x7d9cd121 mtd_block_isreserved +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0x80f445af mtd_kmalloc_up_to +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0x858f3e1a mtd_get_user_prot_info +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0x886e7ee4 mtd_ooblayout_count_freebytes +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0x8ab5955d mtd_get_unmapped_area +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0x8bdc0377 __get_mtd_device +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0x8e9f9348 get_mtd_device +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0x9a11f778 mtd_read +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0xa0a48e2e __put_mtd_device +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0xab2297d4 mtd_add_partition +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0xb111d9e4 mtd_lock_user_prot_reg +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0xb211e7fe mtd_get_device_size +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0xb21bb1c3 mtd_is_locked +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0xb26917ad mtd_ooblayout_get_eccbytes +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0xb42a9892 deregister_mtd_parser +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0xb72e6abb mtd_ooblayout_set_eccbytes +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0xc72673de mtd_unlock +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0xc9380ee1 mtd_ooblayout_free +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0xccb2bd02 mtd_panic_write +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0xd709605f mtd_device_unregister +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0xd9fd3779 put_mtd_device +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0xdb42e349 __register_mtd_parser +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0xdc93df6c mtd_ooblayout_find_eccregion +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0xe62c1ea0 mtd_table_mutex +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0xed16215c mtd_ooblayout_ecc +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0xf1d55bf6 get_mtd_device_nm +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0xf3d86eaf mtd_ooblayout_get_databytes +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0xfde62358 mtd_point +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0xfe54e398 unregister_mtd_user +EXPORT_SYMBOL_GPL drivers/mtd/mtd_blkdevs 0x625f2eb7 mtd_blktrans_cease_background +EXPORT_SYMBOL_GPL drivers/mtd/mtd_blkdevs 0x8d88b44e deregister_mtd_blktrans +EXPORT_SYMBOL_GPL drivers/mtd/mtd_blkdevs 0xd2765208 register_mtd_blktrans +EXPORT_SYMBOL_GPL drivers/mtd/mtd_blkdevs 0xdb6e822f add_mtd_blktrans_dev +EXPORT_SYMBOL_GPL drivers/mtd/mtd_blkdevs 0xee10437c del_mtd_blktrans_dev +EXPORT_SYMBOL_GPL drivers/mtd/nand/nandcore 0x115490fb nanddev_markbad +EXPORT_SYMBOL_GPL drivers/mtd/nand/nandcore 0x1bfa45ce nanddev_bbt_init +EXPORT_SYMBOL_GPL drivers/mtd/nand/nandcore 0x30fa4d34 nanddev_bbt_update +EXPORT_SYMBOL_GPL drivers/mtd/nand/nandcore 0x32e394d3 nanddev_bbt_set_block_status +EXPORT_SYMBOL_GPL drivers/mtd/nand/nandcore 0x4e05d589 nanddev_cleanup +EXPORT_SYMBOL_GPL drivers/mtd/nand/nandcore 0x5528faec nanddev_isreserved +EXPORT_SYMBOL_GPL drivers/mtd/nand/nandcore 0x5e228db3 nanddev_erase +EXPORT_SYMBOL_GPL drivers/mtd/nand/nandcore 0x71acb2c6 nanddev_bbt_cleanup +EXPORT_SYMBOL_GPL drivers/mtd/nand/nandcore 0x8bca67bf nanddev_init +EXPORT_SYMBOL_GPL drivers/mtd/nand/nandcore 0xb860ec1e nanddev_mtd_max_bad_blocks +EXPORT_SYMBOL_GPL drivers/mtd/nand/nandcore 0xd5671652 nanddev_mtd_erase +EXPORT_SYMBOL_GPL drivers/mtd/nand/nandcore 0xda1dede7 nanddev_bbt_get_block_status +EXPORT_SYMBOL_GPL drivers/mtd/nand/nandcore 0xe4429d0c nanddev_isbad +EXPORT_SYMBOL_GPL drivers/mtd/nand/onenand/onenand 0x4acb835c onenand_scan +EXPORT_SYMBOL_GPL drivers/mtd/nand/onenand/onenand 0x9699e32a onenand_release +EXPORT_SYMBOL_GPL drivers/mtd/nand/raw/denali 0x4c928cb4 denali_chip_init +EXPORT_SYMBOL_GPL drivers/mtd/nand/raw/nand 0x07a485f8 nand_soft_waitrdy +EXPORT_SYMBOL_GPL drivers/mtd/nand/raw/nand 0x0b7496e3 nand_select_target +EXPORT_SYMBOL_GPL drivers/mtd/nand/raw/nand 0x0bfdff31 nand_change_write_column_op +EXPORT_SYMBOL_GPL drivers/mtd/nand/raw/nand 0x11091291 nand_extract_bits +EXPORT_SYMBOL_GPL drivers/mtd/nand/raw/nand 0x2148ace5 nand_write_data_op +EXPORT_SYMBOL_GPL drivers/mtd/nand/raw/nand 0x25122e23 nand_ooblayout_lp_ops +EXPORT_SYMBOL_GPL drivers/mtd/nand/raw/nand 0x2d368c4c nand_subop_get_addr_start_off +EXPORT_SYMBOL_GPL drivers/mtd/nand/raw/nand 0x471c7f4f nand_prog_page_end_op +EXPORT_SYMBOL_GPL drivers/mtd/nand/raw/nand 0x4a27cc0c nand_prog_page_op +EXPORT_SYMBOL_GPL drivers/mtd/nand/raw/nand 0x5632e63d nand_subop_get_num_addr_cyc +EXPORT_SYMBOL_GPL drivers/mtd/nand/raw/nand 0x578b751c nand_read_page_op +EXPORT_SYMBOL_GPL drivers/mtd/nand/raw/nand 0x5e663b6c nand_op_parser_exec_op +EXPORT_SYMBOL_GPL drivers/mtd/nand/raw/nand 0x6556ec6d nand_reset_op +EXPORT_SYMBOL_GPL drivers/mtd/nand/raw/nand 0x693ec3ed nand_wait_ready +EXPORT_SYMBOL_GPL drivers/mtd/nand/raw/nand 0x7a89dd2c nand_deselect_target +EXPORT_SYMBOL_GPL drivers/mtd/nand/raw/nand 0x9ff96d7a nand_read_data_op +EXPORT_SYMBOL_GPL drivers/mtd/nand/raw/nand 0xa0d64a00 nand_read_oob_op +EXPORT_SYMBOL_GPL drivers/mtd/nand/raw/nand 0xa646c834 nand_gpio_waitrdy +EXPORT_SYMBOL_GPL drivers/mtd/nand/raw/nand 0xb003d6dc nand_decode_ext_id +EXPORT_SYMBOL_GPL drivers/mtd/nand/raw/nand 0xb484c204 nand_ooblayout_sp_ops +EXPORT_SYMBOL_GPL drivers/mtd/nand/raw/nand 0xb61ec70f nand_erase_op +EXPORT_SYMBOL_GPL drivers/mtd/nand/raw/nand 0xbafa4dd6 nand_ecc_choose_conf +EXPORT_SYMBOL_GPL drivers/mtd/nand/raw/nand 0xbec8fb90 nand_change_read_column_op +EXPORT_SYMBOL_GPL drivers/mtd/nand/raw/nand 0xc3266365 nand_readid_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/nand 0xeb537251 nand_reset +EXPORT_SYMBOL_GPL drivers/mtd/nand/raw/nand 0xf1420d2e nand_status_op +EXPORT_SYMBOL_GPL drivers/mtd/nand/raw/nand 0xf4ef34ec nand_cleanup +EXPORT_SYMBOL_GPL drivers/mtd/nand/raw/nand 0xfa5199e5 nand_prog_page_begin_op +EXPORT_SYMBOL_GPL drivers/mtd/nand/raw/sm_common 0x8c732882 sm_register_device +EXPORT_SYMBOL_GPL drivers/mtd/spi-nor/spi-nor 0xb361493e spi_nor_scan +EXPORT_SYMBOL_GPL drivers/mtd/spi-nor/spi-nor 0xe193c074 spi_nor_restore +EXPORT_SYMBOL_GPL drivers/mtd/ubi/ubi 0x0d98d210 ubi_open_volume +EXPORT_SYMBOL_GPL drivers/mtd/ubi/ubi 0x29202c9a ubi_leb_read +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 0x4cf3cd46 ubi_leb_map +EXPORT_SYMBOL_GPL drivers/mtd/ubi/ubi 0x54c05384 ubi_close_volume +EXPORT_SYMBOL_GPL drivers/mtd/ubi/ubi 0x6057e8ff ubi_leb_write +EXPORT_SYMBOL_GPL drivers/mtd/ubi/ubi 0x66011ab6 ubi_get_device_info +EXPORT_SYMBOL_GPL drivers/mtd/ubi/ubi 0x69b0c9e5 ubi_leb_unmap +EXPORT_SYMBOL_GPL drivers/mtd/ubi/ubi 0x70486b7d ubi_leb_change +EXPORT_SYMBOL_GPL drivers/mtd/ubi/ubi 0x7c5bebc8 ubi_is_mapped +EXPORT_SYMBOL_GPL drivers/mtd/ubi/ubi 0x85a8ee76 ubi_unregister_volume_notifier +EXPORT_SYMBOL_GPL drivers/mtd/ubi/ubi 0x8dc2802f ubi_get_volume_info +EXPORT_SYMBOL_GPL drivers/mtd/ubi/ubi 0xa262ea7f ubi_do_get_device_info +EXPORT_SYMBOL_GPL drivers/mtd/ubi/ubi 0xb7b9ba7b ubi_open_volume_path +EXPORT_SYMBOL_GPL drivers/mtd/ubi/ubi 0xd123bb8b ubi_leb_read_sg +EXPORT_SYMBOL_GPL drivers/mtd/ubi/ubi 0xe19d4de5 ubi_open_volume_nm +EXPORT_SYMBOL_GPL drivers/mtd/ubi/ubi 0xf1afdd23 ubi_leb_erase +EXPORT_SYMBOL_GPL drivers/mtd/ubi/ubi 0xf5ee9ba8 ubi_register_volume_notifier +EXPORT_SYMBOL_GPL drivers/mux/mux-core 0x08535527 mux_chip_free +EXPORT_SYMBOL_GPL drivers/mux/mux-core 0x0944f2bb mux_control_states +EXPORT_SYMBOL_GPL drivers/mux/mux-core 0x36e811be devm_mux_chip_alloc +EXPORT_SYMBOL_GPL drivers/mux/mux-core 0x3b582613 mux_chip_alloc +EXPORT_SYMBOL_GPL drivers/mux/mux-core 0x3bf47a4b mux_control_get +EXPORT_SYMBOL_GPL drivers/mux/mux-core 0x45daa2be devm_mux_control_get +EXPORT_SYMBOL_GPL drivers/mux/mux-core 0x550ee0e6 mux_control_select +EXPORT_SYMBOL_GPL drivers/mux/mux-core 0x61fa5788 mux_control_deselect +EXPORT_SYMBOL_GPL drivers/mux/mux-core 0x94186d91 mux_chip_unregister +EXPORT_SYMBOL_GPL drivers/mux/mux-core 0xb7488420 mux_chip_register +EXPORT_SYMBOL_GPL drivers/mux/mux-core 0xd435a277 mux_control_try_select +EXPORT_SYMBOL_GPL drivers/mux/mux-core 0xea21c63b mux_control_put +EXPORT_SYMBOL_GPL drivers/mux/mux-core 0xf626ae39 devm_mux_chip_register +EXPORT_SYMBOL_GPL drivers/net/arcnet/arcnet 0xd093d913 devm_arcnet_led_init +EXPORT_SYMBOL_GPL drivers/net/arcnet/arcnet 0xf7952d27 arcnet_led_event +EXPORT_SYMBOL_GPL drivers/net/bareudp 0x0403c66a bareudp_dev_create +EXPORT_SYMBOL_GPL drivers/net/can/c_can/c_can 0x22f622a5 unregister_c_can_dev +EXPORT_SYMBOL_GPL drivers/net/can/c_can/c_can 0x2fb7c342 register_c_can_dev +EXPORT_SYMBOL_GPL drivers/net/can/c_can/c_can 0x3ec20d4e c_can_power_down +EXPORT_SYMBOL_GPL drivers/net/can/c_can/c_can 0x44c2a1d4 alloc_c_can_dev +EXPORT_SYMBOL_GPL drivers/net/can/c_can/c_can 0x6a56b371 c_can_power_up +EXPORT_SYMBOL_GPL drivers/net/can/c_can/c_can 0xdda88057 free_c_can_dev +EXPORT_SYMBOL_GPL drivers/net/can/can-dev 0x04549b92 unregister_candev +EXPORT_SYMBOL_GPL drivers/net/can/can-dev 0x16081ffb can_dlc2len +EXPORT_SYMBOL_GPL drivers/net/can/can-dev 0x1908eb11 can_rx_offload_add_fifo +EXPORT_SYMBOL_GPL drivers/net/can/can-dev 0x23ccc4c9 can_bus_off +EXPORT_SYMBOL_GPL drivers/net/can/can-dev 0x36a87ca0 can_get_echo_skb +EXPORT_SYMBOL_GPL drivers/net/can/can-dev 0x3b581902 can_change_state +EXPORT_SYMBOL_GPL drivers/net/can/can-dev 0x5b10376f open_candev +EXPORT_SYMBOL_GPL drivers/net/can/can-dev 0x616b9fbd can_free_echo_skb +EXPORT_SYMBOL_GPL drivers/net/can/can-dev 0x63803da9 can_rx_offload_queue_sorted +EXPORT_SYMBOL_GPL drivers/net/can/can-dev 0x6643e29c can_rx_offload_irq_offload_fifo +EXPORT_SYMBOL_GPL drivers/net/can/can-dev 0x8082cb23 alloc_can_skb +EXPORT_SYMBOL_GPL drivers/net/can/can-dev 0x80e32bfe free_candev +EXPORT_SYMBOL_GPL drivers/net/can/can-dev 0x872d9dbe can_put_echo_skb +EXPORT_SYMBOL_GPL drivers/net/can/can-dev 0x8762619a can_len2dlc +EXPORT_SYMBOL_GPL drivers/net/can/can-dev 0x9b91e2d3 register_candev +EXPORT_SYMBOL_GPL drivers/net/can/can-dev 0x9f8dff26 alloc_can_err_skb +EXPORT_SYMBOL_GPL drivers/net/can/can-dev 0xae8d3e41 can_rx_offload_irq_offload_timestamp +EXPORT_SYMBOL_GPL drivers/net/can/can-dev 0xb0e21fb6 alloc_canfd_skb +EXPORT_SYMBOL_GPL drivers/net/can/can-dev 0xb18539b1 close_candev +EXPORT_SYMBOL_GPL drivers/net/can/can-dev 0xbc8d9ce2 can_change_mtu +EXPORT_SYMBOL_GPL drivers/net/can/can-dev 0xc8c06931 can_rx_offload_queue_tail +EXPORT_SYMBOL_GPL drivers/net/can/can-dev 0xca8053a7 can_rx_offload_enable +EXPORT_SYMBOL_GPL drivers/net/can/can-dev 0xcb202646 can_rx_offload_add_timestamp +EXPORT_SYMBOL_GPL drivers/net/can/can-dev 0xd295fe36 can_rx_offload_del +EXPORT_SYMBOL_GPL drivers/net/can/can-dev 0xe2682fa1 alloc_candev_mqs +EXPORT_SYMBOL_GPL drivers/net/can/can-dev 0xe9689856 can_rx_offload_get_echo_skb +EXPORT_SYMBOL_GPL drivers/net/can/can-dev 0xf6d59185 safe_candev_priv +EXPORT_SYMBOL_GPL drivers/net/can/cc770/cc770 0x8f59cb9b alloc_cc770dev +EXPORT_SYMBOL_GPL drivers/net/can/cc770/cc770 0x93b741f2 register_cc770dev +EXPORT_SYMBOL_GPL drivers/net/can/cc770/cc770 0xafc68168 free_cc770dev +EXPORT_SYMBOL_GPL drivers/net/can/cc770/cc770 0xdd0711e0 unregister_cc770dev +EXPORT_SYMBOL_GPL drivers/net/can/m_can/m_can 0x5b92c9a3 m_can_class_unregister +EXPORT_SYMBOL_GPL drivers/net/can/m_can/m_can 0x5ea197f7 m_can_class_suspend +EXPORT_SYMBOL_GPL drivers/net/can/m_can/m_can 0x711038a3 m_can_class_free_dev +EXPORT_SYMBOL_GPL drivers/net/can/m_can/m_can 0x76a5e159 m_can_class_allocate_dev +EXPORT_SYMBOL_GPL drivers/net/can/m_can/m_can 0x847eb5ab m_can_class_get_clocks +EXPORT_SYMBOL_GPL drivers/net/can/m_can/m_can 0x972b1d6e m_can_class_resume +EXPORT_SYMBOL_GPL drivers/net/can/m_can/m_can 0xb33df9d1 m_can_init_ram +EXPORT_SYMBOL_GPL drivers/net/can/m_can/m_can 0xf1e5cc6f m_can_class_register +EXPORT_SYMBOL_GPL drivers/net/can/sja1000/sja1000 0x2adf01f4 register_sja1000dev +EXPORT_SYMBOL_GPL drivers/net/can/sja1000/sja1000 0x39406e63 unregister_sja1000dev +EXPORT_SYMBOL_GPL drivers/net/can/sja1000/sja1000 0x3a159da5 free_sja1000dev +EXPORT_SYMBOL_GPL drivers/net/can/sja1000/sja1000 0x49ebd0d2 sja1000_interrupt +EXPORT_SYMBOL_GPL drivers/net/can/sja1000/sja1000 0xaf0d377a alloc_sja1000dev +EXPORT_SYMBOL_GPL drivers/net/dsa/lan9303-core 0x74b45988 lan9303_indirect_phy_ops +EXPORT_SYMBOL_GPL drivers/net/dsa/microchip/ksz_common 0x08a53fcc ksz_port_bridge_leave +EXPORT_SYMBOL_GPL drivers/net/dsa/microchip/ksz_common 0x0e5e5f16 ksz_enable_port +EXPORT_SYMBOL_GPL drivers/net/dsa/microchip/ksz_common 0x1dad0ab9 ksz_port_mdb_prepare +EXPORT_SYMBOL_GPL drivers/net/dsa/microchip/ksz_common 0x23d84cc7 ksz_init_mib_timer +EXPORT_SYMBOL_GPL drivers/net/dsa/microchip/ksz_common 0x28cd1777 ksz_update_port_member +EXPORT_SYMBOL_GPL drivers/net/dsa/microchip/ksz_common 0x49c0d464 ksz_get_ethtool_stats +EXPORT_SYMBOL_GPL drivers/net/dsa/microchip/ksz_common 0x50bcfcf8 ksz_sset_count +EXPORT_SYMBOL_GPL drivers/net/dsa/microchip/ksz_common 0x7b208f46 ksz_port_fdb_dump +EXPORT_SYMBOL_GPL drivers/net/dsa/microchip/ksz_common 0x7e0c98f7 ksz_port_vlan_prepare +EXPORT_SYMBOL_GPL drivers/net/dsa/microchip/ksz_common 0x8a8ae95f ksz_phy_write16 +EXPORT_SYMBOL_GPL drivers/net/dsa/microchip/ksz_common 0xb0b06625 ksz_phy_read16 +EXPORT_SYMBOL_GPL drivers/net/dsa/microchip/ksz_common 0xb327326b ksz_adjust_link +EXPORT_SYMBOL_GPL drivers/net/dsa/microchip/ksz_common 0xbffc891d ksz_port_mdb_add +EXPORT_SYMBOL_GPL drivers/net/dsa/microchip/ksz_common 0xccc8e58c ksz_disable_port +EXPORT_SYMBOL_GPL drivers/net/dsa/microchip/ksz_common 0xddcc5dee ksz_port_fast_age +EXPORT_SYMBOL_GPL drivers/net/dsa/microchip/ksz_common 0xe0448847 ksz_port_mdb_del +EXPORT_SYMBOL_GPL drivers/net/dsa/microchip/ksz_common 0xe621814d ksz_port_bridge_join +EXPORT_SYMBOL_GPL drivers/net/dsa/realtek-smi 0x0f84de3d rtl8366_set_pvid +EXPORT_SYMBOL_GPL drivers/net/dsa/realtek-smi 0x1d561c2b rtl8366_enable_vlan +EXPORT_SYMBOL_GPL drivers/net/dsa/realtek-smi 0x267c2ab3 rtl8366_enable_vlan4k +EXPORT_SYMBOL_GPL drivers/net/dsa/realtek-smi 0x4d39635b rtl8366rb_variant +EXPORT_SYMBOL_GPL drivers/net/dsa/realtek-smi 0x5735e01a rtl8366_vlan_del +EXPORT_SYMBOL_GPL drivers/net/dsa/realtek-smi 0x61cedbf7 rtl8366_reset_vlan +EXPORT_SYMBOL_GPL drivers/net/dsa/realtek-smi 0x6311fe63 rtl8366_get_strings +EXPORT_SYMBOL_GPL drivers/net/dsa/realtek-smi 0x649895fb rtl8366_set_vlan +EXPORT_SYMBOL_GPL drivers/net/dsa/realtek-smi 0xad10c317 rtl8366_init_vlan +EXPORT_SYMBOL_GPL drivers/net/dsa/realtek-smi 0xad1bd553 rtl8366_get_sset_count +EXPORT_SYMBOL_GPL drivers/net/dsa/realtek-smi 0xaf3eb1e6 rtl8366_vlan_prepare +EXPORT_SYMBOL_GPL drivers/net/dsa/realtek-smi 0xb587e031 rtl8366_mc_is_used +EXPORT_SYMBOL_GPL drivers/net/dsa/realtek-smi 0xc2a3bbca realtek_smi_write_reg_noack +EXPORT_SYMBOL_GPL drivers/net/dsa/realtek-smi 0xcbd3a7da rtl8366_vlan_filtering +EXPORT_SYMBOL_GPL drivers/net/dsa/realtek-smi 0xdcd4e0f1 rtl8366_vlan_add +EXPORT_SYMBOL_GPL drivers/net/dsa/realtek-smi 0xee1be39b rtl8366_get_ethtool_stats +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x02fc9328 mlx4_mr_hw_put_mpt +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x04436cba mlx4_replace_zero_macs +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x07ac4156 mlx4_set_admin_guid +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x0afe6256 mlx4_db_free +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x0b35277f mlx4_find_cached_mac +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x0d1f9f17 mlx4_qp_remove +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x0db4eb1b mlx4_mr_free +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x0efdf9ca mlx4_mr_rereg_mem_write +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x10ba9385 mlx4_buf_write_mtt +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x12c07d0b mlx4_set_vf_rate +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x15535c37 mlx4_bf_free +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x167bda7b mlx4_unregister_mac +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x186fc7a8 mlx4_bf_alloc +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x18e21c05 mlx4_flow_steer_promisc_add +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x1d6eb6de mlx4_qp_reserve_range +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x1e5d3e07 mlx4_update_qp +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x1f56e2ef mlx4_set_vf_vlan +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x2042c0d3 mlx4_get_active_ports +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x2159a215 mlx4_alloc_hwq_res +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x247db112 mlx4_xrcd_alloc +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x249f70a6 mlx4_mr_alloc +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x24ba1b21 mlx4_multicast_promisc_remove +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x24fb01d2 mlx4_find_cached_vlan +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x286f96ec mlx4_unbond +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x2950905f mlx4_get_vf_config +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x29cb2b88 mlx4_multicast_detach +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x31821163 mlx4_set_vf_link_state +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x31c442cf mlx4_CLOSE_PORT +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x33820582 mlx4_flow_attach +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x3468bdec mlx4_vf_set_enable_smi_admin +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x3570f0ce mlx4_mtt_cleanup +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x359db898 mlx4_pd_free +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x36c7dacb mlx4_alloc_cmd_mailbox +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x37b92f35 mlx4_INIT_PORT +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x38034586 mlx4_qp_free +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x39cfe3b0 mlx4_map_sw_to_hw_steering_mode +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x3de41cda mlx4_get_slave_default_vlan +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x3e9b4c9a mlx4_cq_free +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x42829369 __mlx4_register_mac +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x44b80ed7 mlx4_uar_free +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x48f198ba mlx4_qp_modify +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x4a0f2ea8 mlx4_set_vf_spoofchk +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x4a307ccb mlx4_get_base_gid_ix +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x4ee3b357 mlx4_config_roce_v2_port +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x50fc7e8c mlx4_unicast_detach +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x512ac8cf mlx4_bond +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x52019e90 __mlx4_unregister_mac +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x540f8b87 mlx4_config_vxlan_port +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x559f9359 mlx4_mr_hw_change_pd +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x56ddaf36 mlx4_db_alloc +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x582191cd mlx4_get_base_qpn +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x59f556bb mlx4_phys_to_slaves_pport +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x5a19efcd mlx4_SYNC_TPT +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x5cbc099b mlx4_wol_read +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x5db70f9d mlx4_cq_resize +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x60405646 mlx4_get_vf_stats +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x62829bc8 mlx4_xrcd_free +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x67b32eef mlx4_multicast_attach +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x6816e847 mlx4_write_mtt +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x68d05a65 __mlx4_replace_mac +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x6b4b0332 mlx4_mw_enable +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x6c4f90a8 mlx4_srq_free +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x6fc05731 mlx4_free_hwq_res +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x737396d1 mlx4_buf_alloc +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x747e6799 mlx4_cq_modify +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x798fc26e mlx4_ACCESS_PTYS_REG +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x7bd633db mlx4_mr_rereg_mem_cleanup +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x7e0ed34e mlx4_free_cmd_mailbox +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x821a6c64 mlx4_unicast_attach +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x84ef6ecc mlx4_get_default_counter_index +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x84fbc8b7 __mlx4_cmd +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x8673c6cd mlx4_get_internal_clock_params +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x8c14bf06 mlx4_vf_smi_enabled +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x8dcf16a2 mlx4_srq_alloc +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x8e4a983c mlx4_flow_detach +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x8ebd16a3 mlx4_hw_rule_sz +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x8f6d2606 mlx4_get_protocol_dev +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x900b00f3 mlx4_register_interface +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x913afe06 mlx4_qp_query +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x917c43e5 mlx4_srq_arm +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x9aa7f062 mlx4_unicast_promisc_add +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x9d8e1274 mlx4_buf_free +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x9efe873a mlx4_unregister_interface +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x9efe9bdc mlx4_cq_alloc +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xa0bd333a mlx4_read_clock +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xa3885022 mlx4_get_admin_guid +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xa41d70dc mlx4_set_vf_mac +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xa740e584 mlx4_srq_lookup +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xa7e345b0 mlx4_unregister_vlan +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xa9043d74 mlx4_counter_free +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xa97600c3 mlx4_mr_hw_change_access +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xadf07f7b mlx4_mtt_init +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xb17380ab mlx4_get_devlink_port +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xb1fca8a9 mlx4_counter_alloc +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xb3dc6739 mlx4_port_map_set +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xb8597607 mlx4_phys_to_slave_port +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xbac27d2e mlx4_wol_write +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xbaf17bf3 mlx4_mr_enable +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xbb3c45f8 mlx4_qp_release_range +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xbd898647 mlx4_unicast_promisc_remove +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xbdf91b33 mlx4_mw_free +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xbed1b004 mlx4_get_counter_stats +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xbfd2e3ea mlx4_uar_alloc +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xc154fadb mlx4_qp_to_ready +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xc66a53f5 mlx4_mr_hw_write_mpt +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xc8bd1e67 mlx4_config_dev_retrieval +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xcb0c2a98 mlx4_qp_alloc +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xcbd2356b mlx4_multicast_promisc_add +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xd5fc99ad mlx4_mtt_addr +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xd9c6a456 mlx4_phys_to_slaves_pport_actv +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xdcd1cb87 mlx4_mw_alloc +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xe25a7e61 mlx4_slave_convert_port +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xe3ff82d0 mlx4_register_vlan +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xe428b325 mlx4_register_mac +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xe90ccd44 mlx4_FLOW_STEERING_IB_UC_QP_RANGE +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xead6eabb mlx4_vf_get_enable_smi_admin +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xebee9625 mlx4_flow_steer_promisc_remove +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xf2942f5c mlx4_mr_hw_get_mpt +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xf55aabfb mlx4_srq_query +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xf8946c9c mlx4_pd_alloc +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xfbbfe98c mlx4_map_sw_to_hw_steering_id +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 0x08503cd6 mlx5_eswitch_get_total_vports +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x1b4cdf93 mlx5_query_hca_vport_system_image_guid +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x247be255 mlx5_query_nic_vport_mtu +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x2821c491 mlx5_query_nic_vport_node_guid +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x2882a65d mlx5_core_modify_hca_vport_context +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x2c0e1bbf mlx5_db_free +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x2f545b18 mlx5_accel_esp_create_xfrm +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x3b584849 mlx5_modify_nic_vport_mac_list +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x3e6383f4 mlx5_query_port_vl_hw_cap +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x41a78d26 mlx5_set_port_tc_bw_alloc +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x42b4156c mlx5_query_port_oper_mtu +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x4615f4a4 mlx5_modify_nic_vport_vlans +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x4941ea8d mlx5_core_query_vport_counter +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x4ef5d147 mlx5_db_alloc +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x4f0aefcc mlx5_nic_vport_unaffiliate_multiport +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x535c0b9f mlx5_query_port_tc_bw_alloc +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x56515597 mlx5_query_module_eeprom +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x5c20c625 mlx5_query_hca_vport_pkey +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x5c9585b1 mlx5_query_nic_vport_system_image_guid +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x6245eae0 mlx5_nic_vport_update_local_lb +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x646cfb14 mlx5_accel_esp_modify_xfrm +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x662cf484 mlx5_modify_nic_vport_mac_address +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x66b518e3 mlx5_set_port_pfc +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x764b4ebc mlx5_dm_sw_icm_dealloc +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x7bda55b5 mlx5_set_port_wol +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x7d90b36a mlx5_set_port_prio_tc +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x809bf896 mlx5_set_port_admin_status +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x81ced47f mlx5_modify_port_ets_rate_limit +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x8479e01a mlx5_query_mac_address +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x867806c9 mlx5_query_port_prio_tc +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x882ada47 mlx5_query_min_inline +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x9258a06a mlx5_eswitch_mode +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x943113bf mlx5_accel_esp_destroy_xfrm +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x993813b8 mlx5_accel_ipsec_device_caps +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x9946f92c mlx5_query_port_pause +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x9e3f0332 mlx5_db_alloc_node +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xa54c7527 mlx5_nic_vport_query_local_lb +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xa5c7e0f6 mlx5_core_query_ib_ppcnt +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xa6a976c0 mlx5_core_access_reg +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xa6c3379c mlx5_query_port_max_mtu +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xa75f49d6 mlx5_fill_page_array +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xae2665d7 mlx5_core_reserved_gids_count +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xb0340f80 mlx5_query_nic_vport_promisc +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xb0c8c151 mlx5_modify_nic_vport_promisc +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xb179fe68 mlx5_set_port_caps +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xbbf839f6 mlx5_set_port_mtu +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xbe69b39d mlx5_query_hca_vport_gid +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xbe790e80 mlx5_query_port_admin_status +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xc2a759dc mlx5_frag_buf_alloc_node +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xc2d94a20 mlx5_set_port_tc_group +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xcb8c2919 mlx5_query_port_ptys +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xcdb0f0d3 mlx5_query_nic_vport_min_inline +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xd07786d4 mlx5_query_hca_vport_context +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xd2c361a2 mlx5_query_hca_vport_node_guid +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xd3610938 mlx5_set_port_pause +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xd41eb9a6 mlx5_frag_buf_free +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xd587fa8d mlx5_query_port_ets_rate_limit +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xd6958fae mlx5_query_nic_vport_qkey_viol_cntr +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xdb821677 mlx5_query_port_wol +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xe0bc1b9a mlx5_query_port_pfc +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xe0e8894f mlx5_query_nic_system_image_guid +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xe10486b4 mlx5_toggle_port_link +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xe165085a mlx5_core_query_sq_state +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xe1736e4c mlx5_buf_free +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xe6db26dc mlx5_query_port_link_width_oper +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xe922f50a mlx5_nic_vport_enable_roce +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xec0bb925 mlx5_query_nic_vport_mac_address +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xf2d1b075 mlx5_query_port_tc_group +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xf8426c4c mlx5_nic_vport_affiliate_multiport +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xf8d38e0b mlx5_modify_nic_vport_mtu +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xfc1879c3 mlx5_dm_sw_icm_alloc +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xfdf859b2 mlx5_query_nic_vport_mac_list +EXPORT_SYMBOL_GPL drivers/net/ethernet/microchip/encx24j600-regmap 0xcc4fa41a regmap_encx24j600_spi_write +EXPORT_SYMBOL_GPL drivers/net/ethernet/microchip/encx24j600-regmap 0xd636820a devm_regmap_init_encx24j600 +EXPORT_SYMBOL_GPL drivers/net/ethernet/microchip/encx24j600-regmap 0xe8c8c6c2 regmap_encx24j600_spi_read +EXPORT_SYMBOL_GPL drivers/net/ethernet/mscc/mscc_ocelot_common 0x236c4aca ocelot_cls_flower_destroy +EXPORT_SYMBOL_GPL drivers/net/ethernet/mscc/mscc_ocelot_common 0x32cacb14 ocelot_cls_flower_replace +EXPORT_SYMBOL_GPL drivers/net/ethernet/mscc/mscc_ocelot_common 0xf965aa73 ocelot_cls_flower_stats +EXPORT_SYMBOL_GPL drivers/net/ethernet/stmicro/stmmac/stmmac 0x3958be89 stmmac_dvr_remove +EXPORT_SYMBOL_GPL drivers/net/ethernet/stmicro/stmmac/stmmac 0x8ac25d73 stmmac_suspend +EXPORT_SYMBOL_GPL drivers/net/ethernet/stmicro/stmmac/stmmac 0x92d778bb stmmac_get_mac_addr +EXPORT_SYMBOL_GPL drivers/net/ethernet/stmicro/stmmac/stmmac 0xa6bfbbb9 stmmac_dvr_probe +EXPORT_SYMBOL_GPL drivers/net/ethernet/stmicro/stmmac/stmmac 0xd1cc24db stmmac_set_mac_addr +EXPORT_SYMBOL_GPL drivers/net/ethernet/stmicro/stmmac/stmmac 0xf7ed6cd7 stmmac_resume +EXPORT_SYMBOL_GPL drivers/net/ethernet/stmicro/stmmac/stmmac-platform 0x1c9995ed stmmac_pltfr_pm_ops +EXPORT_SYMBOL_GPL drivers/net/ethernet/stmicro/stmmac/stmmac-platform 0x74e2ccfe stmmac_remove_config_dt +EXPORT_SYMBOL_GPL drivers/net/ethernet/stmicro/stmmac/stmmac-platform 0xcae064e5 stmmac_get_platform_resources +EXPORT_SYMBOL_GPL drivers/net/ethernet/stmicro/stmmac/stmmac-platform 0xcef04b9b stmmac_probe_config_dt +EXPORT_SYMBOL_GPL drivers/net/ethernet/stmicro/stmmac/stmmac-platform 0xdca1bcce stmmac_pltfr_remove +EXPORT_SYMBOL_GPL drivers/net/ethernet/wiznet/w5100 0x07e2ced2 w5100_probe +EXPORT_SYMBOL_GPL drivers/net/ethernet/wiznet/w5100 0x4b45bf9c w5100_ops_priv +EXPORT_SYMBOL_GPL drivers/net/ethernet/wiznet/w5100 0x5ea00ed6 w5100_remove +EXPORT_SYMBOL_GPL drivers/net/ethernet/wiznet/w5100 0xe2176c1c w5100_pm_ops +EXPORT_SYMBOL_GPL drivers/net/geneve 0x63727acc geneve_dev_create_fb +EXPORT_SYMBOL_GPL drivers/net/ipvlan/ipvlan 0x4ef1576e ipvlan_count_rx +EXPORT_SYMBOL_GPL drivers/net/ipvlan/ipvlan 0x59f75e66 ipvlan_link_delete +EXPORT_SYMBOL_GPL drivers/net/ipvlan/ipvlan 0x882cd24b ipvlan_link_setup +EXPORT_SYMBOL_GPL drivers/net/ipvlan/ipvlan 0x9617308a ipvlan_link_new +EXPORT_SYMBOL_GPL drivers/net/ipvlan/ipvlan 0xf29ccd91 ipvlan_link_register +EXPORT_SYMBOL_GPL drivers/net/macsec 0x0f41fadd macsec_pn_wrapped +EXPORT_SYMBOL_GPL drivers/net/macvlan 0x305206c2 macvlan_common_newlink +EXPORT_SYMBOL_GPL drivers/net/macvlan 0x8624b43d macvlan_common_setup +EXPORT_SYMBOL_GPL drivers/net/macvlan 0xef0e177d macvlan_dellink +EXPORT_SYMBOL_GPL drivers/net/macvlan 0xf4cf6450 macvlan_link_register +EXPORT_SYMBOL_GPL drivers/net/net_failover 0x2bd6dbec net_failover_create +EXPORT_SYMBOL_GPL drivers/net/net_failover 0x59439bab net_failover_destroy +EXPORT_SYMBOL_GPL drivers/net/phy/bcm-phy-lib 0x02979f6c bcm_phy_enable_jumbo +EXPORT_SYMBOL_GPL drivers/net/phy/bcm-phy-lib 0x03317876 bcm_phy_cable_test_start_rdb +EXPORT_SYMBOL_GPL drivers/net/phy/bcm-phy-lib 0x0e030ccc bcm_phy_get_stats +EXPORT_SYMBOL_GPL drivers/net/phy/bcm-phy-lib 0x1522723c bcm_phy_set_eee +EXPORT_SYMBOL_GPL drivers/net/phy/bcm-phy-lib 0x27622a30 bcm_phy_downshift_get +EXPORT_SYMBOL_GPL drivers/net/phy/bcm-phy-lib 0x2b543bc0 bcm_phy_28nm_a0b0_afe_config_init +EXPORT_SYMBOL_GPL drivers/net/phy/bcm-phy-lib 0x34e5a5e5 __bcm_phy_modify_exp +EXPORT_SYMBOL_GPL drivers/net/phy/bcm-phy-lib 0x352a460d bcm_phy_modify_rdb +EXPORT_SYMBOL_GPL drivers/net/phy/bcm-phy-lib 0x3afe4c20 bcm_phy_write_exp +EXPORT_SYMBOL_GPL drivers/net/phy/bcm-phy-lib 0x4321b2be bcm_phy_r_rc_cal_reset +EXPORT_SYMBOL_GPL drivers/net/phy/bcm-phy-lib 0x46e2747b bcm_phy_downshift_set +EXPORT_SYMBOL_GPL drivers/net/phy/bcm-phy-lib 0x5aecd645 __bcm_phy_write_rdb +EXPORT_SYMBOL_GPL drivers/net/phy/bcm-phy-lib 0x5db0bb06 bcm54xx_auxctl_read +EXPORT_SYMBOL_GPL drivers/net/phy/bcm-phy-lib 0x62722554 bcm_phy_get_strings +EXPORT_SYMBOL_GPL drivers/net/phy/bcm-phy-lib 0x62897b52 bcm_phy_enable_apd +EXPORT_SYMBOL_GPL drivers/net/phy/bcm-phy-lib 0x69dd0e74 bcm_phy_write_shadow +EXPORT_SYMBOL_GPL drivers/net/phy/bcm-phy-lib 0x6ecad29f bcm_phy_modify_exp +EXPORT_SYMBOL_GPL drivers/net/phy/bcm-phy-lib 0x6f053177 __bcm_phy_modify_rdb +EXPORT_SYMBOL_GPL drivers/net/phy/bcm-phy-lib 0x78a1b1f4 bcm_phy_cable_test_get_status +EXPORT_SYMBOL_GPL drivers/net/phy/bcm-phy-lib 0x8cd40bd4 bcm_phy_get_sset_count +EXPORT_SYMBOL_GPL drivers/net/phy/bcm-phy-lib 0x8daa94e0 bcm_phy_cable_test_get_status_rdb +EXPORT_SYMBOL_GPL drivers/net/phy/bcm-phy-lib 0x90a0c614 bcm_phy_read_misc +EXPORT_SYMBOL_GPL drivers/net/phy/bcm-phy-lib 0x93ad5a9a bcm_phy_write_rdb +EXPORT_SYMBOL_GPL drivers/net/phy/bcm-phy-lib 0x95d96ed5 bcm_phy_read_shadow +EXPORT_SYMBOL_GPL drivers/net/phy/bcm-phy-lib 0x9a9ae650 __bcm_phy_read_rdb +EXPORT_SYMBOL_GPL drivers/net/phy/bcm-phy-lib 0x9bf9106d bcm_phy_write_misc +EXPORT_SYMBOL_GPL drivers/net/phy/bcm-phy-lib 0xa55abc61 bcm_phy_read_exp +EXPORT_SYMBOL_GPL drivers/net/phy/bcm-phy-lib 0xb2f103a8 bcm_phy_config_intr +EXPORT_SYMBOL_GPL drivers/net/phy/bcm-phy-lib 0xd3b4fca2 bcm_phy_read_rdb +EXPORT_SYMBOL_GPL drivers/net/phy/bcm-phy-lib 0xe7b305c3 bcm_phy_ack_intr +EXPORT_SYMBOL_GPL drivers/net/phy/bcm-phy-lib 0xec74a693 __bcm_phy_read_exp +EXPORT_SYMBOL_GPL drivers/net/phy/bcm-phy-lib 0xf3bfc0ff __bcm_phy_write_exp +EXPORT_SYMBOL_GPL drivers/net/phy/bcm-phy-lib 0xfb05d934 bcm_phy_cable_test_start +EXPORT_SYMBOL_GPL drivers/net/phy/mdio-i2c 0x30cd6b5a mdio_i2c_alloc +EXPORT_SYMBOL_GPL drivers/net/phy/mdio-xpcs 0x1ed7a547 mdio_xpcs_get_ops +EXPORT_SYMBOL_GPL drivers/net/phy/phylink 0x08213956 phylink_ethtool_get_wol +EXPORT_SYMBOL_GPL drivers/net/phy/phylink 0x1162b00e phylink_ethtool_ksettings_get +EXPORT_SYMBOL_GPL drivers/net/phy/phylink 0x12135396 phylink_mac_change +EXPORT_SYMBOL_GPL drivers/net/phy/phylink 0x15c4e3e2 phylink_ethtool_set_pauseparam +EXPORT_SYMBOL_GPL drivers/net/phy/phylink 0x2c8e28ee phylink_ethtool_get_eee +EXPORT_SYMBOL_GPL drivers/net/phy/phylink 0x33e82a0d phylink_of_phy_connect +EXPORT_SYMBOL_GPL drivers/net/phy/phylink 0x57727285 phylink_ethtool_set_eee +EXPORT_SYMBOL_GPL drivers/net/phy/phylink 0x5d6c3a16 phylink_mii_c22_pcs_an_restart +EXPORT_SYMBOL_GPL drivers/net/phy/phylink 0x5fb6b35f phylink_helper_basex_speed +EXPORT_SYMBOL_GPL drivers/net/phy/phylink 0x62104126 phylink_ethtool_set_wol +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 0x86ff345f phylink_ethtool_ksettings_set +EXPORT_SYMBOL_GPL drivers/net/phy/phylink 0x907dc87d phylink_mii_c22_pcs_set_advertisement +EXPORT_SYMBOL_GPL drivers/net/phy/phylink 0x911fcd6c phylink_start +EXPORT_SYMBOL_GPL drivers/net/phy/phylink 0x983276da phylink_disconnect_phy +EXPORT_SYMBOL_GPL drivers/net/phy/phylink 0xa4941b0a phylink_mii_c45_pcs_get_state +EXPORT_SYMBOL_GPL drivers/net/phy/phylink 0xc1d15a4c phylink_set_port_modes +EXPORT_SYMBOL_GPL drivers/net/phy/phylink 0xc3a46c07 phylink_create +EXPORT_SYMBOL_GPL drivers/net/phy/phylink 0xdcb0a2c0 phylink_stop +EXPORT_SYMBOL_GPL drivers/net/phy/phylink 0xde66f4a7 phylink_mii_ioctl +EXPORT_SYMBOL_GPL drivers/net/phy/phylink 0xe40c854c phylink_connect_phy +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 0xf55e3f84 phylink_add_pcs +EXPORT_SYMBOL_GPL drivers/net/phy/phylink 0xf7fe13a3 phylink_mii_c22_pcs_get_state +EXPORT_SYMBOL_GPL drivers/net/phy/phylink 0xf8fe5642 phylink_ethtool_get_pauseparam +EXPORT_SYMBOL_GPL drivers/net/tap 0x0f390377 tap_handle_frame +EXPORT_SYMBOL_GPL drivers/net/tap 0x2d834f12 tap_get_minor +EXPORT_SYMBOL_GPL drivers/net/tap 0x4edf5049 tap_get_socket +EXPORT_SYMBOL_GPL drivers/net/tap 0x9e091cd8 tap_destroy_cdev +EXPORT_SYMBOL_GPL drivers/net/tap 0xacef05d0 tap_free_minor +EXPORT_SYMBOL_GPL drivers/net/tap 0xca7b88b2 tap_del_queues +EXPORT_SYMBOL_GPL drivers/net/tap 0xd901ed47 tap_create_cdev +EXPORT_SYMBOL_GPL drivers/net/tap 0xf82c0fb2 tap_get_ptr_ring +EXPORT_SYMBOL_GPL drivers/net/tap 0xf8ea48ed tap_queue_resize +EXPORT_SYMBOL_GPL drivers/net/usb/cdc_ether 0x011352ab usbnet_cdc_unbind +EXPORT_SYMBOL_GPL drivers/net/usb/cdc_ether 0x0f538910 usbnet_cdc_status +EXPORT_SYMBOL_GPL drivers/net/usb/cdc_ether 0x56265904 usbnet_cdc_bind +EXPORT_SYMBOL_GPL drivers/net/usb/cdc_ether 0xae718dc9 usbnet_ether_cdc_bind +EXPORT_SYMBOL_GPL drivers/net/usb/cdc_ether 0xbf949dea usbnet_generic_cdc_bind +EXPORT_SYMBOL_GPL drivers/net/usb/cdc_ncm 0x2b9a897b cdc_ncm_change_mtu +EXPORT_SYMBOL_GPL drivers/net/usb/cdc_ncm 0x3fa63664 cdc_ncm_unbind +EXPORT_SYMBOL_GPL drivers/net/usb/cdc_ncm 0x47e53d97 cdc_ncm_rx_fixup +EXPORT_SYMBOL_GPL drivers/net/usb/cdc_ncm 0x494e9853 cdc_ncm_tx_fixup +EXPORT_SYMBOL_GPL drivers/net/usb/cdc_ncm 0x4bc1d4cf cdc_ncm_select_altsetting +EXPORT_SYMBOL_GPL drivers/net/usb/cdc_ncm 0x725e6e0c cdc_ncm_rx_verify_nth16 +EXPORT_SYMBOL_GPL drivers/net/usb/cdc_ncm 0x76cf9b0d cdc_ncm_bind_common +EXPORT_SYMBOL_GPL drivers/net/usb/cdc_ncm 0x7c31cda3 cdc_ncm_rx_verify_ndp16 +EXPORT_SYMBOL_GPL drivers/net/usb/cdc_ncm 0xaff7d742 cdc_ncm_rx_verify_nth32 +EXPORT_SYMBOL_GPL drivers/net/usb/cdc_ncm 0xb6b1514a cdc_ncm_fill_tx_frame +EXPORT_SYMBOL_GPL drivers/net/usb/cdc_ncm 0xefbff947 cdc_ncm_rx_verify_ndp32 +EXPORT_SYMBOL_GPL drivers/net/usb/rndis_host 0x0452471d rndis_command +EXPORT_SYMBOL_GPL drivers/net/usb/rndis_host 0x2ba6f3cf rndis_unbind +EXPORT_SYMBOL_GPL drivers/net/usb/rndis_host 0x3c91bcd6 rndis_tx_fixup +EXPORT_SYMBOL_GPL drivers/net/usb/rndis_host 0x96e5860f rndis_rx_fixup +EXPORT_SYMBOL_GPL drivers/net/usb/rndis_host 0xe1566eda rndis_status +EXPORT_SYMBOL_GPL drivers/net/usb/rndis_host 0xe3a2e6d7 generic_rndis_bind +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0x09ad4766 usbnet_start_xmit +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0x0cb39f01 usbnet_tx_timeout +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0x150049fc usbnet_change_mtu +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0x21a20389 usbnet_get_link_ksettings +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0x240cb285 usbnet_status_stop +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0x2c20f86f usbnet_get_endpoints +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0x33280cec usbnet_purge_paused_rxq +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0x3efe759d usbnet_pause_rx +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0x4fb140b1 usbnet_read_cmd +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0x4fb98a72 usbnet_stop +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0x688670f8 usbnet_write_cmd +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0x743d1860 usbnet_get_ethernet_addr +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0x77c1a1b3 usbnet_resume +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0x82b1a765 usbnet_probe +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0x859cdbef usbnet_write_cmd_nopm +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0x8691a2ca usbnet_get_msglevel +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0x93035e74 usbnet_skb_return +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0x980abb1a usbnet_status_start +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0x984974c2 usbnet_suspend +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0x9bea296b usbnet_get_link +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0x9fa59c7c usbnet_get_stats64 +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0xaf1b49ac usbnet_open +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0xb4a6d566 usbnet_defer_kevent +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0xc11dd8f1 usbnet_write_cmd_async +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0xc5d2a350 usbnet_nway_reset +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0xcc109d52 usbnet_get_drvinfo +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0xd4d38bab usbnet_unlink_rx_urbs +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0xdaa85084 usbnet_disconnect +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0xdbd214da usbnet_set_link_ksettings +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0xddd77a3e usbnet_resume_rx +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0xe8e6364a usbnet_update_max_qlen +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0xeebdcf79 usbnet_set_msglevel +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0xff4a7212 usbnet_read_cmd_nopm +EXPORT_SYMBOL_GPL drivers/net/vxlan 0xbb6b3865 vxlan_fdb_find_uc +EXPORT_SYMBOL_GPL drivers/net/vxlan 0xce5e4926 vxlan_fdb_replay +EXPORT_SYMBOL_GPL drivers/net/vxlan 0xddabaa12 vxlan_dev_create +EXPORT_SYMBOL_GPL drivers/net/vxlan 0xdef59d41 vxlan_fdb_clear_offload +EXPORT_SYMBOL_GPL drivers/net/wimax/i2400m/i2400m 0x0f5e2c70 i2400m_reset +EXPORT_SYMBOL_GPL drivers/net/wimax/i2400m/i2400m 0x1605c846 i2400m_setup +EXPORT_SYMBOL_GPL drivers/net/wimax/i2400m/i2400m 0x19954efe i2400m_dev_bootstrap +EXPORT_SYMBOL_GPL drivers/net/wimax/i2400m/i2400m 0x1c2afba9 i2400m_release +EXPORT_SYMBOL_GPL drivers/net/wimax/i2400m/i2400m 0x22a97d94 i2400m_is_boot_barker +EXPORT_SYMBOL_GPL drivers/net/wimax/i2400m/i2400m 0x288ff3d0 i2400m_tx_msg_sent +EXPORT_SYMBOL_GPL drivers/net/wimax/i2400m/i2400m 0x4b2bc832 i2400m_dev_reset_handle +EXPORT_SYMBOL_GPL drivers/net/wimax/i2400m/i2400m 0x4cc21657 i2400m_init +EXPORT_SYMBOL_GPL drivers/net/wimax/i2400m/i2400m 0x67877a75 i2400m_tx +EXPORT_SYMBOL_GPL drivers/net/wimax/i2400m/i2400m 0x73e4e152 i2400m_rx +EXPORT_SYMBOL_GPL drivers/net/wimax/i2400m/i2400m 0x82adddf9 i2400m_netdev_setup +EXPORT_SYMBOL_GPL drivers/net/wimax/i2400m/i2400m 0x83d187e8 i2400m_post_reset +EXPORT_SYMBOL_GPL drivers/net/wimax/i2400m/i2400m 0x8c5a859b i2400m_cmd_enter_powersave +EXPORT_SYMBOL_GPL drivers/net/wimax/i2400m/i2400m 0x8d7aa9e1 i2400m_error_recovery +EXPORT_SYMBOL_GPL drivers/net/wimax/i2400m/i2400m 0xb00b793c i2400m_bm_cmd_prepare +EXPORT_SYMBOL_GPL drivers/net/wimax/i2400m/i2400m 0xd6ffe8a9 i2400m_pre_reset +EXPORT_SYMBOL_GPL drivers/net/wimax/i2400m/i2400m 0xe7449609 i2400m_tx_msg_get +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/ipw2x00/libipw 0x098566e5 libipw_rx_any +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x30ef1934 il_mac_tx_last_beacon +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x6a770f20 _il_grab_nic_access +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x887cf478 il_dealloc_bcast_stations +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlegacy/iwlegacy 0xb5dd8372 il_prep_station +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlegacy/iwlegacy 0xe07de9e8 il_remove_station +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0x00eed971 __iwl_crit +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0x042a9541 iwl_force_nmi +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0x0b696e2c iwl_read_direct32 +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0x0b855f79 iwl_fw_lookup_notif_ver +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0x0c30573e iwl_parse_nvm_mcc_info +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0x1332e4de iwl_abort_notification_waits +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0x1462905d iwl_read32 +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0x16c83dd3 iwl_poll_bit +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0x22453c63 iwl_wait_notification +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0x261b1836 iwl_dbg_tlv_del_timers +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0x2710c362 iwl_dump_desc_assert +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0x29bd503d iwl_init_paging +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0x2e0ed460 iwl_write_prph +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0x326a53c0 __iwl_dbg +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0x34060266 iwl_write_prph64_no_grab +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0x35033c81 iwl_phy_db_free +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0x42e3fa89 iwl_free_fw_paging +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0x42ee757a iwl_fw_dbg_read_d3_debug_data +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0x45cd540f iwl_write64 +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0x49c9e8c7 iwl_set_soc_latency +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0x4d624753 iwl_read_external_nvm +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0x56b2f36b iwl_acpi_get_mcc +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0x5988395c iwl_notification_wait_init +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0x5ad3bb4c iwl_fw_error_print_fseq_regs +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0x5c52e109 iwl_opmode_deregister +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0x5d7a9ef2 iwl_sar_select_profile +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0x5f302fae iwl_write32 +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0x5fa18b31 iwl_fw_dbg_stop_restart_recording +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0x661a513d iwl_fw_dbg_collect_trig +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0x66ad3277 iwl_cmd_groups_verify_sorted +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0x67e9bc3d iwl_fw_start_dbg_conf +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0x691313ef iwl_acpi_get_tas +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0x6c3f6d0b iwl_clear_bits_prph +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0x743e65ea iwl_fw_runtime_init +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0x74e4fabf iwl_fw_dbg_collect_desc +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0x762185d3 iwl_fw_dbg_error_collect +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0x776221bf iwl_send_phy_db_data +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0x79e47f63 iwl_acpi_get_object +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0x7db165b9 iwl_get_shared_mem_conf +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0x81c3c826 iwl_fw_dbg_stop_sync +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0x852fec3d iwl_write8 +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0x8558f9d0 iwl_trans_send_cmd +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0x873f2596 iwl_sar_geo_support +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0x8ceacb4a iwl_sar_get_wrds_table +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0x90995383 iwl_read_prph_no_grab +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0x980dfceb iwl_parse_eeprom_data +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0x982a331d iwl_sar_get_wgds_table +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0x9a36b498 iwl_fw_runtime_resume +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0x9d062bcf __iwl_err +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0xa1cbad78 iwl_acpi_get_wifi_pkg +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0xa6c079bf iwl_read_eeprom +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0xa6fb8b85 iwl_fw_runtime_suspend +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0xa9f05394 iwlwifi_mod_params +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0xaca215d9 iwl_write_direct32 +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0xb0043252 __iwl_info +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0xb4b566d2 iwl_set_bits_prph +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0xb4fdeb32 iwl_finish_nic_init +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0xb65162e9 iwl_acpi_get_dsm_u8 +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0xb65f6e78 iwl_write_direct64 +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0xb8f799a6 iwl_phy_db_init +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0xc22a5c4d iwl_read_prph +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0xc3cc26b1 iwl_sar_set_profile +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0xc4f9197d iwl_acpi_get_pwr_limit +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0xc97e8386 iwl_get_cmd_string +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0xccbedb29 iwl_get_nvm +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0xcd914e00 iwl_fw_lookup_cmd_ver +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0xce0c6460 iwl_phy_db_set_section +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0xd13493b5 iwl_poll_direct_bit +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0xd385818b iwl_parse_nvm_data +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0xda21c699 iwl_sar_geo_init +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0xdd33fc40 iwl_dbg_tlv_time_point +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0xe0eb5838 iwl_init_notification_wait +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0xe4e272a8 iwl_acpi_get_eckv +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0xe6da7010 iwl_opmode_register +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0xe75b7e77 iwl_notification_wait +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0xea1b26fc iwl_nvm_fixups +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0xee02a99e iwl_set_bits_mask_prph +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0xef336187 iwl_write_prph_no_grab +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0xeff0d11d iwl_sar_get_ewrd_table +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0xf44a9d98 iwl_validate_sar_geo_profile +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0xf6b529ce __iwl_warn +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0xf88964e4 iwl_remove_notification +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0xff860d26 iwl_fw_dbg_collect +EXPORT_SYMBOL_GPL drivers/net/wireless/intersil/p54/p54common 0x053a5c54 p54_free_common +EXPORT_SYMBOL_GPL drivers/net/wireless/intersil/p54/p54common 0x268522df p54_free_skb +EXPORT_SYMBOL_GPL drivers/net/wireless/intersil/p54/p54common 0x2bef6e43 p54_read_eeprom +EXPORT_SYMBOL_GPL drivers/net/wireless/intersil/p54/p54common 0x53790fb6 p54_init_common +EXPORT_SYMBOL_GPL drivers/net/wireless/intersil/p54/p54common 0x60ab632d p54_register_common +EXPORT_SYMBOL_GPL drivers/net/wireless/intersil/p54/p54common 0x7c9500b1 p54_parse_eeprom +EXPORT_SYMBOL_GPL drivers/net/wireless/intersil/p54/p54common 0x7f1d6291 p54_rx +EXPORT_SYMBOL_GPL drivers/net/wireless/intersil/p54/p54common 0xa44e3cc9 p54_parse_firmware +EXPORT_SYMBOL_GPL drivers/net/wireless/intersil/p54/p54common 0xe9101865 p54_unregister_common +EXPORT_SYMBOL_GPL drivers/net/wireless/marvell/libertas/libertas 0x07a2cb05 lbs_suspend +EXPORT_SYMBOL_GPL drivers/net/wireless/marvell/libertas/libertas 0x1327685d lbs_remove_card +EXPORT_SYMBOL_GPL drivers/net/wireless/marvell/libertas/libertas 0x1a2beed3 lbs_add_card +EXPORT_SYMBOL_GPL drivers/net/wireless/marvell/libertas/libertas 0x2cf2a93d lbs_stop_card +EXPORT_SYMBOL_GPL drivers/net/wireless/marvell/libertas/libertas 0x37320c28 lbs_cmd_copyback +EXPORT_SYMBOL_GPL drivers/net/wireless/marvell/libertas/libertas 0x443c65c3 lbs_process_rxed_packet +EXPORT_SYMBOL_GPL drivers/net/wireless/marvell/libertas/libertas 0x5fdf38b8 lbs_disablemesh +EXPORT_SYMBOL_GPL drivers/net/wireless/marvell/libertas/libertas 0x66dccab2 lbs_notify_command_response +EXPORT_SYMBOL_GPL drivers/net/wireless/marvell/libertas/libertas 0x85db304f lbs_host_to_card_done +EXPORT_SYMBOL_GPL drivers/net/wireless/marvell/libertas/libertas 0x8c3f1438 lbs_resume +EXPORT_SYMBOL_GPL drivers/net/wireless/marvell/libertas/libertas 0x904b007f lbs_get_firmware_async +EXPORT_SYMBOL_GPL drivers/net/wireless/marvell/libertas/libertas 0x92b1cb43 lbs_send_tx_feedback +EXPORT_SYMBOL_GPL drivers/net/wireless/marvell/libertas/libertas 0x9c04ed7c __lbs_cmd +EXPORT_SYMBOL_GPL drivers/net/wireless/marvell/libertas/libertas 0xa0e8a6cb lbs_start_card +EXPORT_SYMBOL_GPL drivers/net/wireless/marvell/libertas/libertas 0xa2393779 lbs_queue_event +EXPORT_SYMBOL_GPL drivers/net/wireless/marvell/libertas/libertas 0xbe904db9 lbs_get_firmware +EXPORT_SYMBOL_GPL drivers/net/wireless/marvell/libertas/libertas 0xf64277de lbs_debug +EXPORT_SYMBOL_GPL drivers/net/wireless/marvell/libertas/libertas 0xfd522bf9 lbs_host_sleep_cfg +EXPORT_SYMBOL_GPL drivers/net/wireless/marvell/libertas_tf/libertas_tf 0x14430b3d lbtf_bcn_sent +EXPORT_SYMBOL_GPL drivers/net/wireless/marvell/libertas_tf/libertas_tf 0x19f2ec67 lbtf_remove_card +EXPORT_SYMBOL_GPL drivers/net/wireless/marvell/libertas_tf/libertas_tf 0x8098c895 lbtf_send_tx_feedback +EXPORT_SYMBOL_GPL drivers/net/wireless/marvell/libertas_tf/libertas_tf 0x8c2990fc lbtf_add_card +EXPORT_SYMBOL_GPL drivers/net/wireless/marvell/libertas_tf/libertas_tf 0x92dfaaba lbtf_rx +EXPORT_SYMBOL_GPL drivers/net/wireless/marvell/libertas_tf/libertas_tf 0x98ec22f0 lbtf_cmd_copyback +EXPORT_SYMBOL_GPL drivers/net/wireless/marvell/libertas_tf/libertas_tf 0xb91a066b lbtf_cmd_response_rx +EXPORT_SYMBOL_GPL drivers/net/wireless/marvell/libertas_tf/libertas_tf 0xc30e7785 __lbtf_cmd +EXPORT_SYMBOL_GPL drivers/net/wireless/marvell/libertas_tf/libertas_tf 0xc85e6899 lbtf_debug +EXPORT_SYMBOL_GPL drivers/net/wireless/marvell/mwifiex/mwifiex 0x0bb4c76d mwifiex_drv_info_dump +EXPORT_SYMBOL_GPL drivers/net/wireless/marvell/mwifiex/mwifiex 0x177cd95d mwifiex_del_virtual_intf +EXPORT_SYMBOL_GPL drivers/net/wireless/marvell/mwifiex/mwifiex 0x25a14b3e mwifiex_process_sleep_confirm_resp +EXPORT_SYMBOL_GPL drivers/net/wireless/marvell/mwifiex/mwifiex 0x26771801 mwifiex_add_card +EXPORT_SYMBOL_GPL drivers/net/wireless/marvell/mwifiex/mwifiex 0x42db37a4 mwifiex_enable_hs +EXPORT_SYMBOL_GPL drivers/net/wireless/marvell/mwifiex/mwifiex 0x4bc69c27 mwifiex_shutdown_sw +EXPORT_SYMBOL_GPL drivers/net/wireless/marvell/mwifiex/mwifiex 0x53d85c8c _mwifiex_dbg +EXPORT_SYMBOL_GPL drivers/net/wireless/marvell/mwifiex/mwifiex 0x5b3f1392 mwifiex_add_virtual_intf +EXPORT_SYMBOL_GPL drivers/net/wireless/marvell/mwifiex/mwifiex 0x6bd5c64a mwifiex_multi_chan_resync +EXPORT_SYMBOL_GPL drivers/net/wireless/marvell/mwifiex/mwifiex 0x6e219623 mwifiex_queue_main_work +EXPORT_SYMBOL_GPL drivers/net/wireless/marvell/mwifiex/mwifiex 0x6ff25298 mwifiex_deauthenticate_all +EXPORT_SYMBOL_GPL drivers/net/wireless/marvell/mwifiex/mwifiex 0x7caaf0c5 mwifiex_process_hs_config +EXPORT_SYMBOL_GPL drivers/net/wireless/marvell/mwifiex/mwifiex 0x801681ba mwifiex_remove_card +EXPORT_SYMBOL_GPL drivers/net/wireless/marvell/mwifiex/mwifiex 0x85209208 mwifiex_disable_auto_ds +EXPORT_SYMBOL_GPL drivers/net/wireless/marvell/mwifiex/mwifiex 0x8875a4fd mwifiex_reinit_sw +EXPORT_SYMBOL_GPL drivers/net/wireless/marvell/mwifiex/mwifiex 0x8be4ac50 mwifiex_init_shutdown_fw +EXPORT_SYMBOL_GPL drivers/net/wireless/marvell/mwifiex/mwifiex 0x9916ff84 mwifiex_fw_dump_event +EXPORT_SYMBOL_GPL drivers/net/wireless/marvell/mwifiex/mwifiex 0xc48e73d2 mwifiex_handle_rx_packet +EXPORT_SYMBOL_GPL drivers/net/wireless/marvell/mwifiex/mwifiex 0xcb377116 mwifiex_prepare_fw_dump_info +EXPORT_SYMBOL_GPL drivers/net/wireless/marvell/mwifiex/mwifiex 0xd4dad9f3 mwifiex_alloc_dma_align_buf +EXPORT_SYMBOL_GPL drivers/net/wireless/marvell/mwifiex/mwifiex 0xd778ea6d mwifiex_dnld_fw +EXPORT_SYMBOL_GPL drivers/net/wireless/marvell/mwifiex/mwifiex 0xd8a4f530 mwifiex_main_process +EXPORT_SYMBOL_GPL drivers/net/wireless/marvell/mwifiex/mwifiex 0xe4bce139 mwifiex_upload_device_dump +EXPORT_SYMBOL_GPL drivers/net/wireless/marvell/mwifiex/mwifiex 0xf61d78de mwifiex_write_data_complete +EXPORT_SYMBOL_GPL drivers/net/wireless/marvell/mwifiex/mwifiex 0xff9c3010 mwifiex_cancel_hs +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0x00844464 __mt76_poll +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0x01ba6342 mt76_dma_attach +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0x042f819c mt76_seq_puts_array +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0x0cbd5271 mt76_mmio_init +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0x0ee3da94 __mt76_poll_msec +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0x148ac9f6 mt76_get_txpower +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0x16768e9b mt76_dma_cleanup +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0x19448af1 mt76_tx_status_skb_add +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0x1b35b9b0 mt76_rx +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0x1c705343 __mt76_sta_remove +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0x21869cc6 mt76_txq_remove +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0x235edf6d mt76_sta_state +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0x254053cc mt76_tx_status_check +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0x28c89fcd mt76_get_min_avg_rssi +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0x2b5af5b6 mt76_tx_complete_skb +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0x2b7a6327 mt76_free_device +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0x2d99ccba mt76_tx +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0x2dc23124 mt76_sta_pre_rcu_remove +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0x3413b7ca mt76_alloc_device +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0x356bba9c mt76_mcu_rx_event +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0x359f688c mt76_txq_init +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0x3711165d mt76_tx_status_lock +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0x38777afe mt76_pci_disable_aspm +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0x3b37cf13 mt76_sw_scan +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0x41a87007 mt76_rx_aggr_stop +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0x44c1ee10 mt76_get_survey +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0x46082655 mt76_tx_status_unlock +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0x4a2cae27 mt76_set_irq_mask +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0x5393d863 mt76_eeprom_init +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0x5cf1e367 mt76_has_tx_pending +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0x629bf869 mt76_unregister_device +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0x6f815000 mt76_register_phy +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0x77e6e670 mt76_queues_read +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0x7823d393 mt76_stop_tx_queues +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0x7f48191c mt76_set_tim +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0x854bb355 mt76_csa_check +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0x8ba522a3 mt76_mcu_msg_alloc +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0x94c4be8d mt76_wake_tx_queue +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0x972dcbca mt76_unregister_phy +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0x99d93c54 mt76_txq_schedule +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0x9ae6dcb8 mt76_get_antenna +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0x9daa87e8 mt76_rx_aggr_start +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0xa165377e mt76_tx_status_skb_done +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0xa3f4f44d mt76_register_device +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0xa583d971 mt76_eeprom_override +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0xb09b9d98 mt76_alloc_phy +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0xb78bc24c mt76_get_rate +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0xbb5935e1 mt76_tx_status_skb_get +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0xc2ca5afd mt76_update_survey +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0xc4926c62 mt76_csa_finish +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0xc5fc58a3 __tracepoint_dev_irq +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0xc6634315 mt76_ac_to_hwq +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0xc7d2a747 mt76_mcu_get_response +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0xdb34b0a2 mt76_rx_poll_complete +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0xdbaf1db5 __tracepoint_mac_txdone +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0xe16cc5a5 mt76_set_stream_caps +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0xe40b66ef mt76_wcid_alloc +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0xe71eeb6a mt76_set_channel +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0xea37d56f mt76_sw_scan_complete +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0xf4a87367 mt76_put_txwi +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0xf98b5c84 mt76_register_debugfs +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0xfa74b164 mt76_insert_ccmp_hdr +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0xfe564c4f mt76_release_buffered_frames +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0xfe85b19b mt76_txq_schedule_all +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76-usb 0x4136e2b3 mt76u_stop_rx +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76-usb 0x43bb8388 mt76u_init +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76-usb 0x4e77d57e mt76u_deinit +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76-usb 0x6386bff6 mt76u_alloc_queues +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76-usb 0x74494e4e mt76u_skb_dma_info +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76-usb 0x8ab17557 mt76u_alloc_mcu_queue +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76-usb 0x99cc84c2 mt76u_stop_tx +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76-usb 0xa3d20d76 mt76u_resume_rx +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76-usb 0xae8b7eae mt76u_queues_deinit +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76-usb 0xb35f2df4 mt76u_vendor_request +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76-usb 0xc413eca1 mt76u_single_wr +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt7615/mt7615-common 0x057c4d49 mt7615_rates +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt7615/mt7615-common 0x09ff2a0a mt7615_mac_sta_add +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt7615/mt7615-common 0x150c92a9 mt7615_ops +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt7615/mt7615-common 0x18922358 __mt7663_load_firmware +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt7615/mt7615-common 0x19fa59b0 mt7615_queue_rx_skb +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt7615/mt7615-common 0x1f4faccb mt7615_init_txpower +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt7615/mt7615-common 0x20866711 mt7615_mac_sta_poll +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt7615/mt7615-common 0x2135d0f9 mt7615_mac_wtbl_update_cipher +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt7615/mt7615-common 0x2597f329 mt7615_dma_reset +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt7615/mt7615-common 0x3d6c453c mt7615_mcu_msg_send +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt7615/mt7615-common 0x3debc08b mt7615_mac_init +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt7615/mt7615-common 0x43d366b9 mt7615_mcu_restart +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt7615/mt7615-common 0x52bcbab6 mt7615_init_device +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt7615/mt7615-common 0x540dc181 mt7615_mac_write_txwi +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt7615/mt7615-common 0x57136b5e mt7615_phy_init +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt7615/mt7615-common 0x5f62276a mt7615_mcu_exit +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt7615/mt7615-common 0x6fe3c888 mt7615_mcu_del_wtbl_all +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt7615/mt7615-common 0x725c2540 mt7615_unregister_ext_phy +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt7615/mt7615-common 0x8b3ee495 mt7615_eeprom_init +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt7615/mt7615-common 0x8b55d3ed mt7615_driver_own +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt7615/mt7615-common 0x955f1700 mt7615_mac_wtbl_update_key +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt7615/mt7615-common 0x9944b233 mt7615_mcu_set_eeprom +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt7615/mt7615-common 0x9ad06f4d mt7615_mac_wtbl_update_pk +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt7615/mt7615-common 0x9b24b990 mt7615_update_channel +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt7615/mt7615-common 0x9c319e9b mt7615_txp_skb_unmap +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt7615/mt7615-common 0xa72c75fb mt7615_mcu_set_hif_suspend +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt7615/mt7615-common 0xab6a8fd1 mt7615_init_debugfs +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt7615/mt7615-common 0xac17c2bf mt7615_register_ext_phy +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt7615/mt7615-common 0xb23be250 mt7615_mcu_wait_response +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt7615/mt7615-common 0xb872d00f mt7615_sta_ps +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt7615/mt7615-common 0xbcfca0d2 mt7615_mcu_init +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt7615/mt7615-common 0xbd058cbd mt7615_firmware_own +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt7615/mt7615-common 0xbe8c4a8c mt7615_mac_sta_remove +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt7615/mt7615-common 0xc1829205 mt7615_wait_for_mcu_init +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt7615/mt7615-common 0xd95e6977 mt7615_check_offload_capability +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt7615/mt7615-common 0xe4aca6b7 mt7615_mac_set_rates +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt7615/mt7615-common 0xf8260761 mt7615_mcu_fill_msg +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x0/mt76x0-common 0x1b437b67 mt76x0_chip_onoff +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x0/mt76x0-common 0x4cdbff00 mt76x0_config +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x0/mt76x0-common 0x4d601cf1 mt76x0_mac_stop +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x0/mt76x0-common 0x9a3eae81 mt76x0_register_device +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x0/mt76x0-common 0xac890e71 mt76x0_init_hardware +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x0/mt76x0-common 0xc0024673 mt76x0_phy_calibrate +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0x02d64c56 mt76x02_sw_scan_complete +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0x0462ce68 mt76x02_add_rate_power_offset +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0x0c7dfb8d mt76x02_mac_write_txwi +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0x0cc829a1 mt76x02_eeprom_copy +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0x0d4023ec mt76x02_get_max_rate_power +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0x0eaf0684 mt76x02_phy_set_rxpath +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0x105e84e2 mt76x02_mcu_set_radio_state +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0x10d6beb8 mt76x02_sta_rate_tbl_update +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0x1166cea4 mt76x02_mac_set_beacon +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0x17e8dfb2 mt76x02_bss_info_changed +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0x1a368df7 mt76x02_set_ethtool_fwver +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0x2dbbb397 mt76x02_mcu_calibrate +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0x31041ea4 mt76x02_phy_set_txpower +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0x3250f39e mt76x02_phy_dfs_adjust_agc +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0x3382816f mt76x02_reconfig_complete +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0x33aca666 mt76x02_queue_rx_skb +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0x35d2834d mt76x02_limit_rate_power +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0x3c43e4ed mt76x02_mcu_function_select +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0x41b4645d mt76x02_rx_poll_complete +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0x44f140a4 mt76x02_get_lna_gain +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0x4d24a83b mt76x02_phy_adjust_vga_gain +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0x56af4095 mt76x02_mcu_cleanup +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0x599dfced mt76x02_tx_complete_skb +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0x59efe4f2 mt76x02_phy_set_txdac +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0x5bd84fd5 mt76x02_rates +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0x61d0e746 mt76x02_mcu_msg_send +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0x677e4c9d mt76x02_mac_reset_counters +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0x678a30ec mt76x02_init_beacon_config +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0x67f9543b mt76x02_mac_cc_reset +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0x68ef7dda mt76x02_tx_set_txpwr_auto +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0x6cfaf60a mt76x02_config_mac_addr_list +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0x6d682d93 mt76x02_ext_pa_enabled +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0x6db57ed7 mt76x02_phy_set_band +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0x6eac049a mt76x02_add_interface +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0x6fbd7b99 mt76x02_edcca_init +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0x6ff412b1 mt76x02_dma_disable +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0x70edc90b mt76x02_conf_tx +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0x715beab7 mt76x02_init_agc_gain +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0x770dbe70 mt76x02_get_rx_gain +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0x7760c53a mt76x02_mac_setaddr +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0x7aeb7b48 mt76x02_enqueue_buffered_bc +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0x7d1e097b mt76x02_eeprom_parse_hw_cap +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0x7e951dad mt76x02_tx +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0x84bea60a mt76x02_set_key +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0x887bcc51 mt76x02_phy_set_bw +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0x893bb308 mt76x02_dma_init +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0x8f85104b mt76x02_init_device +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0x91d5b9ee mt76x02_irq_handler +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0x9634a27d mt76x02_set_rts_threshold +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0x9e0d5ff8 mt76x02_init_debugfs +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0x9f72e885 mt76x02_tx_prepare_skb +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0xa0dda827 mt76x02_mac_start +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0xa7f51c89 mt76x02_mac_wcid_setup +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0xa91ad2ae mt76x02_get_efuse_data +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0xab094784 mt76x02_dma_cleanup +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0xb331201e mt76x02_dfs_init_params +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0xb8c9c69b mt76x02_update_channel +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0xb9ae3025 mt76x02_remove_interface +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0xbcf7808f mt76x02_sta_ps +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0xc1303f74 mt76x02_update_beacon_iter +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0xc71c478d mt76x02_remove_hdr_pad +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0xc82c376d mt76x02_configure_filter +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0xc8c1b7ba mt76x02_mac_shared_key_setup +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0xcb899d39 mt76x02_tx_status_data +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0xcd311f17 mt76x02e_init_beacon_config +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0xd28a4fa4 mt76x02_set_coverage_class +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0xdfbae851 mt76x02_set_tx_ackto +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0xdfef2f61 mt76x02_sta_add +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0xe1010299 mt76x02_sta_remove +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0xe5146734 mt76x02_ampdu_action +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0xfe6b4dd9 mt76x02_resync_beacon_timer +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-usb 0x637fd86b mt76x02u_exit_beacon_config +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-usb 0x67f99837 mt76x02u_init_mcu +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-usb 0x717168ee mt76x02u_tx_complete_skb +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-usb 0x7970f047 mt76x02u_tx_prepare_skb +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-usb 0x7a982dd7 mt76x02u_init_beacon_config +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-usb 0x9501ead2 mt76x02u_mcu_fw_reset +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-usb 0xf109876d mt76x02u_mac_start +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-usb 0xfad7ab37 mt76x02u_mcu_fw_send_data +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x2/mt76x2-common 0x0b097d4c mt76x2_mac_stop +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x2/mt76x2-common 0x0e6f5cc0 mt76x2_apply_gain_adj +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x2/mt76x2-common 0x212efa09 mt76x2_init_txpower +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x2/mt76x2-common 0x3b50f93b mt76x2_eeprom_init +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x2/mt76x2-common 0x4f728e88 mt76x2_phy_set_txpower_regs +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x2/mt76x2-common 0x511499b5 mt76x2_reset_wlan +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x2/mt76x2-common 0x5543c80d mt76x2_mcu_load_cr +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x2/mt76x2-common 0x56987d6a mt76x2_get_rate_power +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x2/mt76x2-common 0x59a4b38e mt76x2_mcu_tssi_comp +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x2/mt76x2-common 0x5e59e834 mt76x2_read_rx_gain +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x2/mt76x2-common 0x6fcedf47 mt76x2_phy_set_txpower +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x2/mt76x2-common 0x743d2a45 mt76x2_configure_tx_delay +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x2/mt76x2-common 0x7a735817 mt76x2_phy_update_channel_gain +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x2/mt76x2-common 0x7c771306 mt76x2_get_temp_comp +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x2/mt76x2-common 0xab91da1f mt76_write_mac_initvals +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x2/mt76x2-common 0xac2f0c94 mt76x2_mcu_init_gain +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x2/mt76x2-common 0xc8daa1b0 mt76x2_get_power_info +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x2/mt76x2-common 0xd0aa27cb mt76x2_mcu_set_channel +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x2/mt76x2-common 0xdb6088ac mt76x2_phy_tssi_compensate +EXPORT_SYMBOL_GPL drivers/net/wireless/quantenna/qtnfmac/qtnfmac 0x2cbfe2af qtnf_update_tx_stats +EXPORT_SYMBOL_GPL drivers/net/wireless/quantenna/qtnfmac/qtnfmac 0x31fab83c qtnf_chipid_to_string +EXPORT_SYMBOL_GPL drivers/net/wireless/quantenna/qtnfmac/qtnfmac 0x44839381 qtnf_core_detach +EXPORT_SYMBOL_GPL drivers/net/wireless/quantenna/qtnfmac/qtnfmac 0x52e58f54 qtnf_get_debugfs_dir +EXPORT_SYMBOL_GPL drivers/net/wireless/quantenna/qtnfmac/qtnfmac 0x65cb2e64 qtnf_core_attach +EXPORT_SYMBOL_GPL drivers/net/wireless/quantenna/qtnfmac/qtnfmac 0x99e17836 qtnf_wake_all_queues +EXPORT_SYMBOL_GPL drivers/net/wireless/quantenna/qtnfmac/qtnfmac 0xaa82bbdc qtnf_update_rx_stats +EXPORT_SYMBOL_GPL drivers/net/wireless/quantenna/qtnfmac/qtnfmac 0xc0e88d92 qtnf_trans_handle_rx_ctl_packet +EXPORT_SYMBOL_GPL drivers/net/wireless/quantenna/qtnfmac/qtnfmac 0xef2f8767 qtnf_classify_skb +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2800lib 0x0680d871 rt2800_config_pairwise_key +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2800lib 0x13864ce8 rt2800_config_intf +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2800lib 0x16321c01 rt2800_config_shared_key +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2800lib 0x1cfd1895 rt2800_ampdu_action +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2800lib 0x1fc28597 rt2800_link_tuner +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2800lib 0x2a439ecb rt2800_disable_wpdma +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2800lib 0x335eeaa3 rt2800_conf_tx +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2800lib 0x35f5e539 rt2800_read_eeprom_efuse +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2800lib 0x3c455f5b rt2800_rfkill_poll +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2800lib 0x3d52a9ef rt2800_enable_radio +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2800lib 0x42889b96 rt2800_config_filter +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2800lib 0x44829769 rt2800_load_firmware +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2800lib 0x4950ca74 rt2800_get_tsf +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2800lib 0x4985829a rt2800_clear_beacon +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2800lib 0x4f05fbc6 rt2800_probe_hw +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2800lib 0x50342376 rt2800_config_ant +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2800lib 0x56fe9804 rt2800_pre_reset_hw +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2800lib 0x5a7b6dc2 rt2800_mcu_request +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2800lib 0x5e41997d rt2800_txdone_nostatus +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2800lib 0x61f43c8e rt2800_txdone_entry +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2800lib 0x69cbc077 rt2800_get_txwi_rxwi_size +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2800lib 0x6b141286 rt2800_disable_radio +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2800lib 0x6f9f3f05 rt2800_sta_remove +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2800lib 0x754b2183 rt2800_reset_tuner +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2800lib 0x7b2ad71c rt2800_process_rxwi +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2800lib 0x8dcbd8d3 rt2800_check_firmware +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2800lib 0x99c6fdec rt2800_txstatus_pending +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2800lib 0x9e0b58c3 rt2800_txdone +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2800lib 0xa6aed761 rt2800_watchdog +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2800lib 0xad5469f8 rt2800_sta_add +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2800lib 0xaeeb20d5 rt2800_config_erp +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2800lib 0xb32d395b rt2800_efuse_detect +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2800lib 0xb9923262 rt2800_txstatus_timeout +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2800lib 0xb9fe5574 rt2800_set_rts_threshold +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2800lib 0xbb06c56a rt2800_gain_calibration +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2800lib 0xbcb6d763 rt2800_vco_calibration +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2800lib 0xbe24db7a rt2800_wait_wpdma_ready +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2800lib 0xcb76da64 rt2800_write_tx_data +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2800lib 0xd10911c8 rt2800_get_key_seq +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2800lib 0xd20c1a41 rt2800_config +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2800lib 0xd327afaa rt2800_link_stats +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2800lib 0xd9f8b65a rt2800_write_beacon +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2800lib 0xdbfd73a2 rt2800_get_survey +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2800lib 0xe1ccef6e rt2800_wait_csr_ready +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2800mmio 0x0758c691 rt2800mmio_start_queue +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2800mmio 0x0fad1430 rt2800mmio_pretbtt_tasklet +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2800mmio 0x2505789d rt2800mmio_tbtt_tasklet +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2800mmio 0x2f00b6c3 rt2800mmio_enable_radio +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2800mmio 0x2f36783a rt2800mmio_init_registers +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2800mmio 0x32e0eff4 rt2800mmio_write_tx_desc +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2800mmio 0x3cbbd960 rt2800mmio_init_queues +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2800mmio 0x48686920 rt2800mmio_flush_queue +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2800mmio 0x531fe9e8 rt2800mmio_queue_init +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2800mmio 0x5ae4f695 rt2800mmio_stop_queue +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2800mmio 0x5fa4db64 rt2800mmio_interrupt +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2800mmio 0x66987878 rt2800mmio_fill_rxdone +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2800mmio 0x7dd27793 rt2800mmio_probe_hw +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2800mmio 0x92c0bcd1 rt2800mmio_rxdone_tasklet +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2800mmio 0xa3d7dfed rt2800mmio_clear_entry +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2800mmio 0xac6d0a8c rt2800mmio_get_dma_done +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2800mmio 0xc4d67022 rt2800mmio_kick_queue +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2800mmio 0xc6a1455e rt2800mmio_autowake_tasklet +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2800mmio 0xd85b38ac rt2800mmio_get_txwi +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2800mmio 0xe28f94c7 rt2800mmio_txstatus_tasklet +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2800mmio 0xf18b3cb5 rt2800mmio_get_entry_state +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2800mmio 0xfbeff2b0 rt2800mmio_toggle_irq +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00lib 0x01349767 rt2x00mac_conf_tx +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00lib 0x03c13d54 rt2x00lib_suspend +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00lib 0x0857fabb rt2x00lib_resume +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00lib 0x104f167d rt2x00queue_start_queue +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00lib 0x12846741 rt2x00lib_txdone_nomatch +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00lib 0x1a1aa271 rt2x00queue_unpause_queue +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00lib 0x1e6942f2 rt2x00lib_probe_dev +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00lib 0x27c385b5 rt2x00mac_stop +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00lib 0x32f00cbe rt2x00lib_remove_dev +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00lib 0x395bfe1a rt2x00lib_txdone +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00lib 0x39e28ef0 rt2x00mac_get_stats +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00lib 0x47ecf295 rt2x00queue_for_each_entry +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00lib 0x4e3212a5 rt2x00lib_pretbtt +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00lib 0x50160ccb rt2x00queue_map_txskb +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00lib 0x57fca294 rt2x00queue_start_queues +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00lib 0x5db1f0c3 rt2x00mac_add_interface +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00lib 0x662074d2 rt2x00queue_unmap_skb +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00lib 0x67238fb0 rt2x00lib_rxdone +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00lib 0x6a8b3360 rt2x00mac_sw_scan_complete +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00lib 0x7393d337 rt2x00mac_rfkill_poll +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00lib 0x749ab5a0 rt2x00mac_start +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00lib 0x761e50d9 rt2x00lib_get_bssidx +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00lib 0x78e0cba6 rt2x00mac_sw_scan_start +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00lib 0x7ab9c378 rt2x00lib_dmastart +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00lib 0x7bcf01ef rt2x00mac_get_antenna +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00lib 0x7e242e25 rt2x00mac_configure_filter +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00lib 0x81589dd8 rt2x00queue_flush_queue +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00lib 0x8e5e6047 rt2x00lib_beacondone +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00lib 0x98de5563 rt2x00lib_set_mac_address +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00lib 0xab8f6f13 rt2x00mac_get_ringparam +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00lib 0xabcc1250 rt2x00mac_set_key +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00lib 0xacc9e0b8 rt2x00lib_txdone_noinfo +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00lib 0xae30941b rt2x00mac_reconfig_complete +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00lib 0xb64cf902 rt2x00queue_pause_queue +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00lib 0xb785f2b4 rt2x00queue_flush_queues +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00lib 0xc5f26d33 rt2x00mac_set_tim +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00lib 0xcc74fa31 rt2x00mac_flush +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00lib 0xce2fb0a3 rt2x00mac_config +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00lib 0xcebe88f3 rt2x00mac_tx +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00lib 0xd0f88ef2 rt2x00mac_tx_frames_pending +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00lib 0xd14539e8 rt2x00queue_get_entry +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00lib 0xd1f34f13 rt2x00mac_remove_interface +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00lib 0xee70b3d2 rt2x00queue_stop_queues +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00lib 0xf44af863 rt2x00mac_bss_info_changed +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00lib 0xf627730b rt2x00mac_set_antenna +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00lib 0xfa8a590b rt2x00queue_stop_queue +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00lib 0xff08c513 rt2x00lib_dmadone +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00mmio 0x1358a08d rt2x00mmio_rxdone +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00mmio 0x28df80a7 rt2x00mmio_initialize +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00mmio 0x2f089655 rt2x00mmio_uninitialize +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00mmio 0x5467bee2 rt2x00mmio_regbusy_read +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00mmio 0x5a69c1e1 rt2x00mmio_flush_queue +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00pci 0x2384b2ae rt2x00pci_suspend +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00pci 0x46edd575 rt2x00pci_resume +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00pci 0xd73cd7fc rt2x00pci_probe +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00pci 0xdbfecd5f rt2x00pci_remove +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00usb 0x0a88d04b rt2x00usb_probe +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00usb 0x12414b03 rt2x00usb_flush_queue +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00usb 0x2eca0f09 rt2x00usb_disable_radio +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00usb 0x31f5e5b4 rt2x00usb_watchdog +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00usb 0x34b5ed29 rt2x00usb_vendor_request_buff +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00usb 0x3d91700b rt2x00usb_vendor_req_buff_lock +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00usb 0x40eeb76c rt2x00usb_clear_entry +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00usb 0x63f39556 rt2x00usb_initialize +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00usb 0x67f3fc16 rt2x00usb_disconnect +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00usb 0x93fc11c0 rt2x00usb_resume +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00usb 0x9a8311f8 rt2x00usb_suspend +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00usb 0xa29ae3dc rt2x00usb_kick_queue +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00usb 0xa3f6abee rt2x00usb_regbusy_read +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00usb 0xa8132670 rt2x00usb_register_read_async +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00usb 0xce4c6c7a rt2x00usb_uninitialize +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00usb 0xdf210731 rt2x00usb_vendor_request +EXPORT_SYMBOL_GPL drivers/net/wireless/realtek/rtlwifi/rtl8192c/rtl8192c-common 0x1e8c3da6 dm_savepowerindex +EXPORT_SYMBOL_GPL drivers/net/wireless/realtek/rtlwifi/rtl8192c/rtl8192c-common 0x245eafff dm_writepowerindex +EXPORT_SYMBOL_GPL drivers/net/wireless/realtek/rtlwifi/rtl8192c/rtl8192c-common 0x824f9f18 dm_restorepowerindex +EXPORT_SYMBOL_GPL drivers/net/wireless/realtek/rtlwifi/rtl8192c/rtl8192c-common 0xb957fed8 rtl92c_set_p2p_ps_offload_cmd +EXPORT_SYMBOL_GPL drivers/net/wireless/realtek/rtlwifi/rtl8723com/rtl8723-common 0x01a4fc0d rtl8723be_firmware_selfreset +EXPORT_SYMBOL_GPL drivers/net/wireless/realtek/rtlwifi/rtl8723com/rtl8723-common 0x02b29b05 rtl8723_phy_pi_mode_switch +EXPORT_SYMBOL_GPL drivers/net/wireless/realtek/rtlwifi/rtl8723com/rtl8723-common 0x09047b2e rtl8723_phy_txpwr_idx_to_dbm +EXPORT_SYMBOL_GPL drivers/net/wireless/realtek/rtlwifi/rtl8723com/rtl8723-common 0x0fb23691 rtl8723_phy_set_bb_reg +EXPORT_SYMBOL_GPL drivers/net/wireless/realtek/rtlwifi/rtl8723com/rtl8723-common 0x17f1d64c rtl8723_download_fw +EXPORT_SYMBOL_GPL drivers/net/wireless/realtek/rtlwifi/rtl8723com/rtl8723-common 0x1cf94ccc rtl8723_fw_free_to_go +EXPORT_SYMBOL_GPL drivers/net/wireless/realtek/rtlwifi/rtl8723com/rtl8723-common 0x324ac067 rtl8723_phy_path_a_standby +EXPORT_SYMBOL_GPL drivers/net/wireless/realtek/rtlwifi/rtl8723com/rtl8723-common 0x3a275493 rtl8723_phy_rf_serial_write +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 0x41a93d95 rtl8723_dm_init_edca_turbo +EXPORT_SYMBOL_GPL drivers/net/wireless/realtek/rtlwifi/rtl8723com/rtl8723-common 0x618094c0 rtl8723ae_firmware_selfreset +EXPORT_SYMBOL_GPL drivers/net/wireless/realtek/rtlwifi/rtl8723com/rtl8723-common 0x662c3cc8 rtl8723_phy_query_bb_reg +EXPORT_SYMBOL_GPL drivers/net/wireless/realtek/rtlwifi/rtl8723com/rtl8723-common 0x6de6531e rtl8723_write_fw +EXPORT_SYMBOL_GPL drivers/net/wireless/realtek/rtlwifi/rtl8723com/rtl8723-common 0x870302da rtl8723_save_adda_registers +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 0x8faa1ebc rtl8723_phy_reload_adda_registers +EXPORT_SYMBOL_GPL drivers/net/wireless/realtek/rtlwifi/rtl8723com/rtl8723-common 0xa2008109 rtl8723_phy_path_a_fill_iqk_matrix +EXPORT_SYMBOL_GPL drivers/net/wireless/realtek/rtlwifi/rtl8723com/rtl8723-common 0xad673cd8 rtl8723_phy_mac_setting_calibration +EXPORT_SYMBOL_GPL drivers/net/wireless/realtek/rtlwifi/rtl8723com/rtl8723-common 0xb46837dd rtl8723_phy_path_adda_on +EXPORT_SYMBOL_GPL drivers/net/wireless/realtek/rtlwifi/rtl8723com/rtl8723-common 0xbc27598e rtl8723_dm_init_dynamic_bb_powersaving +EXPORT_SYMBOL_GPL drivers/net/wireless/realtek/rtlwifi/rtl8723com/rtl8723-common 0xd01fcebb rtl8723_cmd_send_packet +EXPORT_SYMBOL_GPL drivers/net/wireless/realtek/rtlwifi/rtl8723com/rtl8723-common 0xd2b21dd4 rtl8723_dm_init_dynamic_txpower +EXPORT_SYMBOL_GPL drivers/net/wireless/realtek/rtlwifi/rtl8723com/rtl8723-common 0xda8fda35 rtl8723_phy_reload_mac_registers +EXPORT_SYMBOL_GPL drivers/net/wireless/realtek/rtlwifi/rtl8723com/rtl8723-common 0xea1aa828 rtl8723_phy_save_mac_registers +EXPORT_SYMBOL_GPL drivers/net/wireless/realtek/rtlwifi/rtl8723com/rtl8723-common 0xf4a67ef3 rtl8723_phy_init_bb_rf_reg_def +EXPORT_SYMBOL_GPL drivers/net/wireless/realtek/rtlwifi/rtl8723com/rtl8723-common 0xf8e5a7f5 rtl8723_enable_fw_download +EXPORT_SYMBOL_GPL drivers/net/wireless/realtek/rtlwifi/rtl8723com/rtl8723-common 0xffbb42a5 rtl8723_phy_rf_serial_read +EXPORT_SYMBOL_GPL drivers/net/wireless/realtek/rtlwifi/rtlwifi 0x048b040e rtl_tx_report_handler +EXPORT_SYMBOL_GPL drivers/net/wireless/realtek/rtlwifi/rtlwifi 0x04dd8f64 rtl_lps_enter +EXPORT_SYMBOL_GPL drivers/net/wireless/realtek/rtlwifi/rtlwifi 0x1210ec5f rtl_init_rx_config +EXPORT_SYMBOL_GPL drivers/net/wireless/realtek/rtlwifi/rtlwifi 0x22129a51 rtl_fw_block_write +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 0x2e63cb74 rtl_p2p_info +EXPORT_SYMBOL_GPL drivers/net/wireless/realtek/rtlwifi/rtlwifi 0x2f311d0d rtl_efuse_ops_init +EXPORT_SYMBOL_GPL drivers/net/wireless/realtek/rtlwifi/rtlwifi 0x4410240b rtl_beacon_statistic +EXPORT_SYMBOL_GPL drivers/net/wireless/realtek/rtlwifi/rtlwifi 0x4b933423 rtl_action_proc +EXPORT_SYMBOL_GPL drivers/net/wireless/realtek/rtlwifi/rtlwifi 0x4e94cd48 rtl_global_var +EXPORT_SYMBOL_GPL drivers/net/wireless/realtek/rtlwifi/rtlwifi 0x52684543 rtl_tx_ackqueue +EXPORT_SYMBOL_GPL drivers/net/wireless/realtek/rtlwifi/rtlwifi 0x570eee01 rtl_get_hwinfo +EXPORT_SYMBOL_GPL drivers/net/wireless/realtek/rtlwifi/rtlwifi 0x5a62540a rtl_get_hal_edca_param +EXPORT_SYMBOL_GPL drivers/net/wireless/realtek/rtlwifi/rtlwifi 0x5e38d60e rtl_tx_mgmt_proc +EXPORT_SYMBOL_GPL drivers/net/wireless/realtek/rtlwifi/rtlwifi 0x6068db28 rtl_set_tx_report +EXPORT_SYMBOL_GPL drivers/net/wireless/realtek/rtlwifi/rtlwifi 0x6907d89a rtl_fw_page_write +EXPORT_SYMBOL_GPL drivers/net/wireless/realtek/rtlwifi/rtlwifi 0x90772a20 rtl_swlps_beacon +EXPORT_SYMBOL_GPL drivers/net/wireless/realtek/rtlwifi/rtlwifi 0x9082a5c0 rtl_recognize_peer +EXPORT_SYMBOL_GPL drivers/net/wireless/realtek/rtlwifi/rtlwifi 0x97e05663 rtl_tid_to_ac +EXPORT_SYMBOL_GPL drivers/net/wireless/realtek/rtlwifi/rtlwifi 0xa1141426 rtl_lps_leave +EXPORT_SYMBOL_GPL drivers/net/wireless/realtek/rtlwifi/rtlwifi 0xa1f100b2 rtl_deinit_core +EXPORT_SYMBOL_GPL drivers/net/wireless/realtek/rtlwifi/rtlwifi 0xaaf3c8d7 rtl_ips_nic_on +EXPORT_SYMBOL_GPL drivers/net/wireless/realtek/rtlwifi/rtlwifi 0xc2c3c4e5 rtl_init_core +EXPORT_SYMBOL_GPL drivers/net/wireless/realtek/rtlwifi/rtlwifi 0xc4b91561 read_efuse_byte +EXPORT_SYMBOL_GPL drivers/net/wireless/realtek/rtlwifi/rtlwifi 0xcca73a07 rtl_ops +EXPORT_SYMBOL_GPL drivers/net/wireless/realtek/rtlwifi/rtlwifi 0xdee8be60 rtl_deinit_deferred_work +EXPORT_SYMBOL_GPL drivers/net/wireless/realtek/rtlwifi/rtlwifi 0xea3d96e0 rtl_is_special_data +EXPORT_SYMBOL_GPL drivers/net/wireless/realtek/rtlwifi/rtlwifi 0xfc27f1e1 rtl_deinit_rfkill +EXPORT_SYMBOL_GPL drivers/net/wireless/rsi/rsi_91x 0x0f5c3ce9 rsi_zone_enabled +EXPORT_SYMBOL_GPL drivers/net/wireless/rsi/rsi_91x 0x20f75d95 rsi_hal_device_init +EXPORT_SYMBOL_GPL drivers/net/wireless/rsi/rsi_91x 0x34d960b9 rsi_mac80211_detach +EXPORT_SYMBOL_GPL drivers/net/wireless/rsi/rsi_91x 0x36b8eba1 rsi_read_pkt +EXPORT_SYMBOL_GPL drivers/net/wireless/rsi/rsi_91x 0x3a4b600a rsi_91x_init +EXPORT_SYMBOL_GPL drivers/net/wireless/rsi/rsi_91x 0x731af936 rsi_91x_deinit +EXPORT_SYMBOL_GPL drivers/net/wireless/rsi/rsi_91x 0xcd173710 rsi_dbg +EXPORT_SYMBOL_GPL drivers/net/wireless/st/cw1200/cw1200_core 0x28bb7655 cw1200_core_release +EXPORT_SYMBOL_GPL drivers/net/wireless/st/cw1200/cw1200_core 0x3ae7fc18 cw1200_core_probe +EXPORT_SYMBOL_GPL drivers/net/wireless/st/cw1200/cw1200_core 0x3c14af68 cw1200_irq_handler +EXPORT_SYMBOL_GPL drivers/net/wireless/st/cw1200/cw1200_core 0xaf993795 cw1200_can_suspend +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wl1251/wl1251 0x4d8aa058 wl1251_alloc_hw +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wl1251/wl1251 0x710665bb wl1251_init_ieee80211 +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wl1251/wl1251 0x8b725d66 wl1251_free_hw +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x00586faf wlcore_translate_addr +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x02c2415f wlcore_event_rssi_trigger +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x06d3b27e wl12xx_debug_level +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x073216b7 wlcore_event_soft_gemini_sense +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x0d03c118 wlcore_set_partition +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x0dd37037 wl1271_tx_min_rate_get +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x132df215 wlcore_boot_run_firmware +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x1a960433 wlcore_boot_upload_nvs +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x20351125 wlcore_get_native_channel_type +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x203b9c0d wlcore_alloc_hw +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x20f047ae wl1271_acx_set_ht_capabilities +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x2b3c3c03 wl1271_cmd_data_path +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x34f470c8 wl1271_acx_sleep_auth +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x3fbef3f0 wlcore_event_roc_complete +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x4e22713d wlcore_cmd_generic_cfg +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x55596b15 wlcore_enable_interrupts +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x589d1317 wl1271_tx_flush +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x59036265 wlcore_disable_interrupts_nosync +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x594fc00c wlcore_event_inactive_sta +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x6b61f5ce wl1271_acx_init_mem_config +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x6db7132d wlcore_set_scan_chan_params +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x6fbcfe20 wlcore_set_key +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x6fd5132d wl12xx_cmd_build_probe_req +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x85498cd1 wl1271_format_buffer +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x8d86bb5e wlcore_scan_sched_scan_results +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x92eb09ca wlcore_event_fw_logger +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x9f4bea2c wlcore_boot_upload_firmware +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0xa28fc09d wlcore_event_max_tx_failure +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0xa3be4e0f wlcore_scan_sched_scan_ssid_list +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0xa52d99db wl1271_cmd_test +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0xa58210db wl1271_cmd_configure +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0xa9219218 wlcore_event_ba_rx_constraint +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0xbc246637 wl1271_acx_pm_config +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0xbff68def wl12xx_acx_mem_cfg +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0xc94a96ed wlcore_cmd_wait_for_event_or_timeout +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0xc99475cc wlcore_synchronize_interrupts +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0xcd542d0f wlcore_event_beacon_loss +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0xce09f845 wlcore_event_channel_switch +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0xd6113a43 wlcore_remove +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0xeb970e4a wlcore_event_dummy_packet +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0xec02a8e1 wlcore_disable_interrupts +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0xedf5e8a6 wlcore_probe +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0xef8fd1fa wlcore_free_hw +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0xf00d47b7 wl1271_cmd_send +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0xf45cb179 wlcore_event_sched_scan_completed +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0xf571cd7c wl1271_debugfs_update_stats +EXPORT_SYMBOL_GPL drivers/nfc/mei_phy 0x182637d0 nfc_mei_phy_alloc +EXPORT_SYMBOL_GPL drivers/nfc/mei_phy 0x28a71bb1 nfc_mei_phy_free +EXPORT_SYMBOL_GPL drivers/nfc/mei_phy 0xd81b317e mei_phy_ops +EXPORT_SYMBOL_GPL drivers/nfc/nfcmrvl/nfcmrvl 0x0e337675 nfcmrvl_nci_register_dev +EXPORT_SYMBOL_GPL drivers/nfc/nfcmrvl/nfcmrvl 0x3b0fe2b1 nfcmrvl_nci_unregister_dev +EXPORT_SYMBOL_GPL drivers/nfc/nfcmrvl/nfcmrvl 0x58678576 nfcmrvl_nci_recv_frame +EXPORT_SYMBOL_GPL drivers/nfc/nfcmrvl/nfcmrvl 0xe8f94d5d nfcmrvl_parse_dt +EXPORT_SYMBOL_GPL drivers/nfc/pn533/pn533 0x1587189c pn53x_common_clean +EXPORT_SYMBOL_GPL drivers/nfc/pn533/pn533 0x3ad60f4e pn533_finalize_setup +EXPORT_SYMBOL_GPL drivers/nfc/pn533/pn533 0x4610d62e pn53x_register_nfc +EXPORT_SYMBOL_GPL drivers/nfc/pn533/pn533 0x7bdc38d7 pn53x_common_init +EXPORT_SYMBOL_GPL drivers/nfc/pn533/pn533 0x9815b0aa pn532_i2c_nfc_alloc +EXPORT_SYMBOL_GPL drivers/nfc/pn533/pn533 0xdecfd339 pn533_rx_frame_is_ack +EXPORT_SYMBOL_GPL drivers/nfc/pn533/pn533 0xf1a3912b pn53x_unregister_nfc +EXPORT_SYMBOL_GPL drivers/nfc/pn533/pn533 0xfe11edac pn533_rx_frame_is_cmd_response +EXPORT_SYMBOL_GPL drivers/nfc/st-nci/st-nci 0x3923364c st_nci_hci_cmd_received +EXPORT_SYMBOL_GPL drivers/nfc/st-nci/st-nci 0x445b1504 st_nci_discover_se +EXPORT_SYMBOL_GPL drivers/nfc/st-nci/st-nci 0x79e9bc54 st_nci_hci_event_received +EXPORT_SYMBOL_GPL drivers/nfc/st-nci/st-nci 0x9f82dd79 st_nci_disable_se +EXPORT_SYMBOL_GPL drivers/nfc/st-nci/st-nci 0xa1082b60 st_nci_hci_load_session +EXPORT_SYMBOL_GPL drivers/nfc/st-nci/st-nci 0xa22b8931 st_nci_remove +EXPORT_SYMBOL_GPL drivers/nfc/st-nci/st-nci 0xc802e580 st_nci_probe +EXPORT_SYMBOL_GPL drivers/nfc/st-nci/st-nci 0xe68b492b st_nci_enable_se +EXPORT_SYMBOL_GPL drivers/nfc/st95hf/st95hf 0x27c0717b st95hf_spi_recv_response +EXPORT_SYMBOL_GPL drivers/nfc/st95hf/st95hf 0x561b915e st95hf_spi_send +EXPORT_SYMBOL_GPL drivers/nfc/st95hf/st95hf 0x94e08435 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 0x0ab21a89 ntb_transport_create_queue +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 0x82e6c13d ntb_transport_qp_num +EXPORT_SYMBOL_GPL drivers/ntb/ntb_transport 0x9c992c8f ntb_transport_link_up +EXPORT_SYMBOL_GPL drivers/ntb/ntb_transport 0xb9703c32 ntb_transport_register_client +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 0xc8888b85 ntb_transport_unregister_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/nvdimm/nd_virtio 0x35978b07 virtio_pmem_host_ack +EXPORT_SYMBOL_GPL drivers/nvdimm/nd_virtio 0xfffd6cb1 async_pmem_flush +EXPORT_SYMBOL_GPL drivers/nvme/host/nvme-core 0x020d8a3e nvme_start_ctrl +EXPORT_SYMBOL_GPL drivers/nvme/host/nvme-core 0x04c6cea7 nvme_try_sched_reset +EXPORT_SYMBOL_GPL drivers/nvme/host/nvme-core 0x04e0a5ab nvme_set_features +EXPORT_SYMBOL_GPL drivers/nvme/host/nvme-core 0x0cac12f9 nvme_reset_ctrl_sync +EXPORT_SYMBOL_GPL drivers/nvme/host/nvme-core 0x0eab6324 nvme_change_ctrl_state +EXPORT_SYMBOL_GPL drivers/nvme/host/nvme-core 0x1d7fc335 nvme_init_identify +EXPORT_SYMBOL_GPL drivers/nvme/host/nvme-core 0x24e932dd nvme_remove_namespaces +EXPORT_SYMBOL_GPL drivers/nvme/host/nvme-core 0x29f3c7aa nvme_stop_ctrl +EXPORT_SYMBOL_GPL drivers/nvme/host/nvme-core 0x44ce21da nvme_start_freeze +EXPORT_SYMBOL_GPL drivers/nvme/host/nvme-core 0x49224181 nvme_reset_wq +EXPORT_SYMBOL_GPL drivers/nvme/host/nvme-core 0x4cf751d5 nvme_sync_queues +EXPORT_SYMBOL_GPL drivers/nvme/host/nvme-core 0x54085d0d __tracepoint_nvme_sq +EXPORT_SYMBOL_GPL drivers/nvme/host/nvme-core 0x5a1ef1b2 nvme_complete_rq +EXPORT_SYMBOL_GPL drivers/nvme/host/nvme-core 0x5bf53607 nvme_wait_reset +EXPORT_SYMBOL_GPL drivers/nvme/host/nvme-core 0x61712c53 nvme_cancel_request +EXPORT_SYMBOL_GPL drivers/nvme/host/nvme-core 0x63d1ecfd nvme_stop_queues +EXPORT_SYMBOL_GPL drivers/nvme/host/nvme-core 0x64b62862 nvme_wq +EXPORT_SYMBOL_GPL drivers/nvme/host/nvme-core 0x71a4a6fe nvme_shutdown_ctrl +EXPORT_SYMBOL_GPL drivers/nvme/host/nvme-core 0x75ef1b4a nvme_delete_ctrl +EXPORT_SYMBOL_GPL drivers/nvme/host/nvme-core 0x769149aa nvme_reset_ctrl +EXPORT_SYMBOL_GPL drivers/nvme/host/nvme-core 0x7afc116d __nvme_submit_sync_cmd +EXPORT_SYMBOL_GPL drivers/nvme/host/nvme-core 0x7e91b530 nvme_start_queues +EXPORT_SYMBOL_GPL drivers/nvme/host/nvme-core 0x813cf212 nvme_io_timeout +EXPORT_SYMBOL_GPL drivers/nvme/host/nvme-core 0x8a9c70ed nvme_sec_submit +EXPORT_SYMBOL_GPL drivers/nvme/host/nvme-core 0x9770f586 nvme_uninit_ctrl +EXPORT_SYMBOL_GPL drivers/nvme/host/nvme-core 0x9860d81e nvme_setup_cmd +EXPORT_SYMBOL_GPL drivers/nvme/host/nvme-core 0x9a05e302 nvme_get_features +EXPORT_SYMBOL_GPL drivers/nvme/host/nvme-core 0x9f57d315 nvme_stop_keep_alive +EXPORT_SYMBOL_GPL drivers/nvme/host/nvme-core 0xa4b1ac95 nvme_init_ctrl +EXPORT_SYMBOL_GPL drivers/nvme/host/nvme-core 0xab3b2caa nvme_sync_io_queues +EXPORT_SYMBOL_GPL drivers/nvme/host/nvme-core 0xc4ebe41b nvme_set_queue_count +EXPORT_SYMBOL_GPL drivers/nvme/host/nvme-core 0xc86c2bde nvme_cleanup_cmd +EXPORT_SYMBOL_GPL drivers/nvme/host/nvme-core 0xcaf7df66 nvme_alloc_request +EXPORT_SYMBOL_GPL drivers/nvme/host/nvme-core 0xd45434ee admin_timeout +EXPORT_SYMBOL_GPL drivers/nvme/host/nvme-core 0xd4897002 nvme_kill_queues +EXPORT_SYMBOL_GPL drivers/nvme/host/nvme-core 0xd4ac9f42 nvme_enable_ctrl +EXPORT_SYMBOL_GPL drivers/nvme/host/nvme-core 0xd58bbbcb nvme_delete_wq +EXPORT_SYMBOL_GPL drivers/nvme/host/nvme-core 0xd972822b nvme_complete_async_event +EXPORT_SYMBOL_GPL drivers/nvme/host/nvme-core 0xdd0924cb nvme_disable_ctrl +EXPORT_SYMBOL_GPL drivers/nvme/host/nvme-core 0xdf86eafa nvme_wait_freeze_timeout +EXPORT_SYMBOL_GPL drivers/nvme/host/nvme-core 0xe0e58641 nvme_unfreeze +EXPORT_SYMBOL_GPL drivers/nvme/host/nvme-core 0xe51d6c13 nvme_wait_freeze +EXPORT_SYMBOL_GPL drivers/nvme/host/nvme-core 0xfb845cf8 nvme_submit_sync_cmd +EXPORT_SYMBOL_GPL drivers/nvme/host/nvme-fabrics 0x230839e7 nvmf_fail_nonready_command +EXPORT_SYMBOL_GPL drivers/nvme/host/nvme-fabrics 0x24f210d1 nvmf_reg_read64 +EXPORT_SYMBOL_GPL drivers/nvme/host/nvme-fabrics 0x257994be nvmf_register_transport +EXPORT_SYMBOL_GPL drivers/nvme/host/nvme-fabrics 0x27bcf1f7 nvmf_reg_read32 +EXPORT_SYMBOL_GPL drivers/nvme/host/nvme-fabrics 0x2b1559b1 nvmf_connect_admin_queue +EXPORT_SYMBOL_GPL drivers/nvme/host/nvme-fabrics 0x5f4af166 nvmf_get_address +EXPORT_SYMBOL_GPL drivers/nvme/host/nvme-fabrics 0x64ca05ff nvmf_ip_options_match +EXPORT_SYMBOL_GPL drivers/nvme/host/nvme-fabrics 0x6638bac5 nvmf_should_reconnect +EXPORT_SYMBOL_GPL drivers/nvme/host/nvme-fabrics 0x79df4564 nvmf_free_options +EXPORT_SYMBOL_GPL drivers/nvme/host/nvme-fabrics 0x7a4a208f nvmf_connect_io_queue +EXPORT_SYMBOL_GPL drivers/nvme/host/nvme-fabrics 0xd266fb05 nvmf_reg_write32 +EXPORT_SYMBOL_GPL drivers/nvme/host/nvme-fabrics 0xfa3873fd nvmf_unregister_transport +EXPORT_SYMBOL_GPL drivers/nvme/host/nvme-fabrics 0xfa6d267d __nvmf_check_ready +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 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 0xed747061 nvme_fc_register_localport +EXPORT_SYMBOL_GPL drivers/nvme/host/nvme-fc 0xfca9dc99 nvme_fc_unregister_remoteport +EXPORT_SYMBOL_GPL drivers/nvme/target/nvmet 0x0332da12 nvmet_req_alloc_sgls +EXPORT_SYMBOL_GPL drivers/nvme/target/nvmet 0x28b5041c nvmet_req_free_sgls +EXPORT_SYMBOL_GPL drivers/nvme/target/nvmet 0x2d84c34c nvmet_req_uninit +EXPORT_SYMBOL_GPL drivers/nvme/target/nvmet 0x44ad67e1 nvmet_req_init +EXPORT_SYMBOL_GPL drivers/nvme/target/nvmet 0x93a8a5f1 nvmet_ctrl_fatal_error +EXPORT_SYMBOL_GPL drivers/nvme/target/nvmet 0x9495e56f nvmet_check_transfer_len +EXPORT_SYMBOL_GPL drivers/nvme/target/nvmet 0xa42a1510 nvmet_sq_destroy +EXPORT_SYMBOL_GPL drivers/nvme/target/nvmet 0xad919b83 nvmet_register_transport +EXPORT_SYMBOL_GPL drivers/nvme/target/nvmet 0xbef6baef nvmet_req_complete +EXPORT_SYMBOL_GPL drivers/nvme/target/nvmet 0xc6cbf57d nvmet_sq_init +EXPORT_SYMBOL_GPL drivers/nvme/target/nvmet 0xf56d39d2 nvmet_unregister_transport +EXPORT_SYMBOL_GPL drivers/nvme/target/nvmet-fc 0x0b98123d nvmet_fc_rcv_ls_req +EXPORT_SYMBOL_GPL drivers/nvme/target/nvmet-fc 0x0d959435 nvmet_fc_register_targetport +EXPORT_SYMBOL_GPL drivers/nvme/target/nvmet-fc 0x1048b92a nvmet_fc_rcv_fcp_req +EXPORT_SYMBOL_GPL drivers/nvme/target/nvmet-fc 0x4a013682 nvmet_fc_invalidate_host +EXPORT_SYMBOL_GPL drivers/nvme/target/nvmet-fc 0x7fa5302a nvmet_fc_rcv_fcp_abort +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 0x4ea06bca switchtec_class +EXPORT_SYMBOL_GPL drivers/pinctrl/intel/pinctrl-intel 0x79a0799b intel_pinctrl_probe_by_uid +EXPORT_SYMBOL_GPL drivers/pinctrl/intel/pinctrl-intel 0x96a43f93 intel_pinctrl_resume_noirq +EXPORT_SYMBOL_GPL drivers/pinctrl/intel/pinctrl-intel 0xa71893e4 intel_pinctrl_suspend_noirq +EXPORT_SYMBOL_GPL drivers/pinctrl/intel/pinctrl-intel 0xb9a1acd0 intel_pinctrl_probe_by_hid +EXPORT_SYMBOL_GPL drivers/pinctrl/pinctrl-mcp23s08 0x1f5aa692 mcp23x08_regmap +EXPORT_SYMBOL_GPL drivers/pinctrl/pinctrl-mcp23s08 0x2f21027d mcp23x17_regmap +EXPORT_SYMBOL_GPL drivers/pinctrl/pinctrl-mcp23s08 0x7a6a5583 mcp23s08_probe_one +EXPORT_SYMBOL_GPL drivers/platform/chrome/cros-ec-sensorhub 0x60633775 cros_ec_sensorhub_register_push_data +EXPORT_SYMBOL_GPL drivers/platform/chrome/cros-ec-sensorhub 0x9482472e 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 0x579be2cb wilco_ec_set_property +EXPORT_SYMBOL_GPL drivers/platform/chrome/wilco_ec/wilco_ec 0x6a550aa7 wilco_ec_get_property +EXPORT_SYMBOL_GPL drivers/platform/chrome/wilco_ec/wilco_ec 0x9c7ebccc wilco_ec_mailbox +EXPORT_SYMBOL_GPL drivers/platform/chrome/wilco_ec/wilco_ec 0xccf199bd wilco_ec_set_byte_property +EXPORT_SYMBOL_GPL drivers/platform/chrome/wilco_ec/wilco_ec 0xff9130c6 wilco_ec_get_byte_property +EXPORT_SYMBOL_GPL drivers/platform/x86/asus-wmi 0x57c46ceb asus_wmi_evaluate_method +EXPORT_SYMBOL_GPL drivers/platform/x86/asus-wmi 0xba31a9e6 asus_wmi_unregister_driver +EXPORT_SYMBOL_GPL drivers/platform/x86/asus-wmi 0xd8562dd9 asus_wmi_register_driver +EXPORT_SYMBOL_GPL drivers/platform/x86/dell-rbtn 0x51552fca dell_rbtn_notifier_unregister +EXPORT_SYMBOL_GPL drivers/platform/x86/dell-rbtn 0xa060fe7d dell_rbtn_notifier_register +EXPORT_SYMBOL_GPL drivers/platform/x86/dell-smbios 0x1b0b3141 dell_laptop_register_notifier +EXPORT_SYMBOL_GPL drivers/platform/x86/dell-smbios 0x2ce78b9a dell_smbios_unregister_device +EXPORT_SYMBOL_GPL drivers/platform/x86/dell-smbios 0x45170471 dell_smbios_call +EXPORT_SYMBOL_GPL drivers/platform/x86/dell-smbios 0x7fd2ce06 dell_smbios_find_token +EXPORT_SYMBOL_GPL drivers/platform/x86/dell-smbios 0x806c13e8 dell_smbios_call_filter +EXPORT_SYMBOL_GPL drivers/platform/x86/dell-smbios 0xa0e24e20 dell_smbios_register_device +EXPORT_SYMBOL_GPL drivers/platform/x86/dell-smbios 0xb9400dbf dell_laptop_call_notifier +EXPORT_SYMBOL_GPL drivers/platform/x86/dell-smbios 0xc2871e79 dell_smbios_error +EXPORT_SYMBOL_GPL drivers/platform/x86/dell-smbios 0xd6c6b12d dell_laptop_unregister_notifier +EXPORT_SYMBOL_GPL drivers/platform/x86/dell-wmi-descriptor 0x8eef8246 dell_wmi_get_hotfix +EXPORT_SYMBOL_GPL drivers/platform/x86/dell-wmi-descriptor 0x9559234e dell_wmi_get_interface_version +EXPORT_SYMBOL_GPL drivers/platform/x86/dell-wmi-descriptor 0xa167d064 dell_wmi_get_size +EXPORT_SYMBOL_GPL drivers/platform/x86/dell-wmi-descriptor 0xa3dcfa65 dell_wmi_get_descriptor_valid +EXPORT_SYMBOL_GPL drivers/platform/x86/intel_ips 0x46809fa9 ips_link_to_i915_driver +EXPORT_SYMBOL_GPL drivers/platform/x86/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 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 0xa8330689 isst_if_get_pci_dev +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_speed_select_if/isst_if_common 0xe3f0faad isst_if_cdev_register +EXPORT_SYMBOL_GPL drivers/platform/x86/intel_telemetry_core 0x112d0332 telemetry_get_pltdata +EXPORT_SYMBOL_GPL drivers/platform/x86/intel_telemetry_core 0x17d36efd telemetry_set_pltdata +EXPORT_SYMBOL_GPL drivers/platform/x86/intel_telemetry_core 0x1c7565c2 telemetry_read_events +EXPORT_SYMBOL_GPL drivers/platform/x86/intel_telemetry_core 0x35db93a6 telemetry_get_trace_verbosity +EXPORT_SYMBOL_GPL drivers/platform/x86/intel_telemetry_core 0x5847f501 telemetry_clear_pltdata +EXPORT_SYMBOL_GPL drivers/platform/x86/intel_telemetry_core 0x5bb8e91a telemetry_raw_read_eventlog +EXPORT_SYMBOL_GPL drivers/platform/x86/intel_telemetry_core 0x665cd407 telemetry_read_eventlog +EXPORT_SYMBOL_GPL drivers/platform/x86/intel_telemetry_core 0x6b892524 telemetry_set_sampling_period +EXPORT_SYMBOL_GPL drivers/platform/x86/intel_telemetry_core 0x82bb2dbe telemetry_get_evtname +EXPORT_SYMBOL_GPL drivers/platform/x86/intel_telemetry_core 0x90551504 telemetry_add_events +EXPORT_SYMBOL_GPL drivers/platform/x86/intel_telemetry_core 0xb75bd1e6 telemetry_raw_read_events +EXPORT_SYMBOL_GPL drivers/platform/x86/intel_telemetry_core 0xbb9a2726 telemetry_reset_events +EXPORT_SYMBOL_GPL drivers/platform/x86/intel_telemetry_core 0xd14ffffc telemetry_update_events +EXPORT_SYMBOL_GPL drivers/platform/x86/intel_telemetry_core 0xe1eb4be1 telemetry_set_trace_verbosity +EXPORT_SYMBOL_GPL drivers/platform/x86/intel_telemetry_core 0xe8847f53 telemetry_get_sampling_period +EXPORT_SYMBOL_GPL drivers/platform/x86/intel_telemetry_core 0xf00771b0 telemetry_get_eventconfig +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 0x3c69b740 set_required_buffer_size +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 0x792c8d81 wmidev_block_query +EXPORT_SYMBOL_GPL drivers/platform/x86/wmi 0xaba842fe wmi_query_block +EXPORT_SYMBOL_GPL drivers/platform/x86/wmi 0xc9d4d6d1 wmi_has_guid +EXPORT_SYMBOL_GPL drivers/platform/x86/wmi 0xd7752b86 wmi_set_block +EXPORT_SYMBOL_GPL drivers/platform/x86/wmi 0xd7d25434 wmidev_evaluate_method +EXPORT_SYMBOL_GPL drivers/platform/x86/wmi 0xf18bdd75 wmi_install_notify_handler +EXPORT_SYMBOL_GPL drivers/power/supply/bq27xxx_battery 0x5a4f6b52 bq27xxx_battery_update +EXPORT_SYMBOL_GPL drivers/power/supply/bq27xxx_battery 0xe0fcf5b4 bq27xxx_battery_teardown +EXPORT_SYMBOL_GPL drivers/power/supply/bq27xxx_battery 0xe875bff8 bq27xxx_battery_setup +EXPORT_SYMBOL_GPL drivers/power/supply/pcf50633-charger 0x42f6fcad pcf50633_mbc_get_usb_online_status +EXPORT_SYMBOL_GPL drivers/power/supply/pcf50633-charger 0x6890cfb6 pcf50633_mbc_usb_curlim_set +EXPORT_SYMBOL_GPL drivers/power/supply/pcf50633-charger 0x9f94580a pcf50633_mbc_get_status +EXPORT_SYMBOL_GPL drivers/powercap/intel_rapl_common 0x0d4fef4b rapl_remove_platform_domain +EXPORT_SYMBOL_GPL drivers/powercap/intel_rapl_common 0x2a781311 rapl_remove_package +EXPORT_SYMBOL_GPL drivers/powercap/intel_rapl_common 0x4d6154e4 rapl_add_package +EXPORT_SYMBOL_GPL drivers/powercap/intel_rapl_common 0x9b8e7362 rapl_add_platform_domain +EXPORT_SYMBOL_GPL drivers/powercap/intel_rapl_common 0xfe2b4e0e rapl_find_package_domain +EXPORT_SYMBOL_GPL drivers/regulator/mc13xxx-regulator-core 0x224a6a9d mc13xxx_fixed_regulator_ops +EXPORT_SYMBOL_GPL drivers/regulator/mc13xxx-regulator-core 0x86f32d04 mc13xxx_fixed_regulator_set_voltage +EXPORT_SYMBOL_GPL drivers/regulator/mc13xxx-regulator-core 0xbef0af16 mc13xxx_regulator_ops +EXPORT_SYMBOL_GPL drivers/regulator/wm8350-regulator 0x083379b5 wm8350_register_led +EXPORT_SYMBOL_GPL drivers/regulator/wm8350-regulator 0x4b17f268 wm8350_dcdc_set_slot +EXPORT_SYMBOL_GPL drivers/regulator/wm8350-regulator 0x812b5294 wm8350_isink_set_flash +EXPORT_SYMBOL_GPL drivers/regulator/wm8350-regulator 0x99df58a0 wm8350_dcdc25_set_mode +EXPORT_SYMBOL_GPL drivers/regulator/wm8350-regulator 0xa07185ef wm8350_register_regulator +EXPORT_SYMBOL_GPL drivers/regulator/wm8350-regulator 0xc1b25f3e wm8350_ldo_set_slot +EXPORT_SYMBOL_GPL drivers/regulator/wm8400-regulator 0x78994254 wm8400_register_regulator +EXPORT_SYMBOL_GPL drivers/rpmsg/qcom_glink 0x149236da qcom_glink_native_remove +EXPORT_SYMBOL_GPL drivers/rpmsg/qcom_glink 0xb78e230a qcom_glink_native_probe +EXPORT_SYMBOL_GPL drivers/rpmsg/qcom_glink 0xf14f5684 qcom_glink_ssr_notify +EXPORT_SYMBOL_GPL drivers/rpmsg/qcom_glink 0xfd2d5a1d qcom_glink_native_unregister +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x002e02a6 cxgbi_get_conn_stats +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x027f6fcd cxgbi_parse_pdu_itt +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x064b36fb cxgbi_ep_disconnect +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x065f40b7 cxgbi_ddp_ppm_setup +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x071b7911 cxgbi_conn_pdu_ready +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x0dbec2ad cxgbi_sock_skb_entail +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x0f7dc0e1 cxgbi_device_register +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x18c4dc2a cxgbi_ep_poll +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x22b13161 cxgbi_sock_rcv_peer_close +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x241f7e0d cxgbi_get_ep_param +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x2464df2a cxgbi_set_host_param +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x2feda856 cxgbi_conn_tx_open +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x3a97955d cxgbi_hbas_remove +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x459c946b cxgbi_destroy_session +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x47512106 cxgbi_device_unregister +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x4a4b0085 cxgbi_set_conn_param +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x51c8c88c cxgbi_sock_established +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x54a8a238 cxgbi_hbas_add +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x59804df7 cxgbi_conn_xmit_pdu +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x5ca981d3 cxgbi_bind_conn +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x6870936e cxgbi_sock_purge_wr_queue +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x7b8fd57e cxgbi_iscsi_init +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x7d388218 cxgbi_sock_act_open_req_arp_failure +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x7f546fb5 cxgbi_device_portmap_cleanup +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x7fdb6004 cxgbi_device_unregister_all +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x83020a44 cxgbi_device_find_by_netdev_rcu +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x8ec9272b cxgbi_sock_select_mss +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x90330e8f cxgbi_create_conn +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x9f68e0ea cxgbi_conn_init_pdu +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0xa292b574 cxgbi_sock_closed +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0xace6d8a3 cxgbi_device_find_by_lldev +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0xb9066e1c cxgbi_create_session +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0xba832be5 cxgbi_get_host_param +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0xc011af75 cxgbi_ddp_set_one_ppod +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0xc8d8d14e cxgbi_sock_free_cpl_skbs +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0xcb4c0045 cxgbi_sock_check_wr_invariants +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0xccb2c556 cxgbi_sock_fail_act_open +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0xcf4e2f0b cxgbi_cleanup_task +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0xcf6545c8 cxgbi_ep_connect +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0xd269c85c cxgbi_sock_rcv_close_conn_rpl +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0xee716916 cxgbi_device_portmap_create +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0xeee5b841 cxgbi_sock_rcv_wr_ack +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0xef346615 cxgbi_attr_is_visible +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0xf1ec82fe cxgbi_device_find_by_netdev +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0xf2d16c04 cxgbi_conn_alloc_pdu +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0xf86f02fb cxgbi_iscsi_cleanup +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0xfc607a3a cxgbi_sock_rcv_abort_rpl +EXPORT_SYMBOL_GPL drivers/scsi/fcoe/libfcoe 0x03a0046b fcoe_ctlr_device_delete +EXPORT_SYMBOL_GPL drivers/scsi/fcoe/libfcoe 0x14095926 fcoe_get_wwn +EXPORT_SYMBOL_GPL drivers/scsi/fcoe/libfcoe 0x5a6e92a3 fcoe_start_io +EXPORT_SYMBOL_GPL drivers/scsi/fcoe/libfcoe 0x657fe699 __fcoe_get_lesb +EXPORT_SYMBOL_GPL drivers/scsi/fcoe/libfcoe 0x6b5579d1 fcoe_check_wait_queue +EXPORT_SYMBOL_GPL drivers/scsi/fcoe/libfcoe 0x754f4e73 fcoe_clean_pending_queue +EXPORT_SYMBOL_GPL drivers/scsi/fcoe/libfcoe 0x887a9316 fcoe_fcf_device_add +EXPORT_SYMBOL_GPL drivers/scsi/fcoe/libfcoe 0x889d6766 fcoe_link_speed_update +EXPORT_SYMBOL_GPL drivers/scsi/fcoe/libfcoe 0x8f567663 fcoe_libfc_config +EXPORT_SYMBOL_GPL drivers/scsi/fcoe/libfcoe 0xa2968933 fcoe_ctlr_get_lesb +EXPORT_SYMBOL_GPL drivers/scsi/fcoe/libfcoe 0xae018e9e fcoe_fc_crc +EXPORT_SYMBOL_GPL drivers/scsi/fcoe/libfcoe 0xbac58840 fcoe_queue_timer +EXPORT_SYMBOL_GPL drivers/scsi/fcoe/libfcoe 0xc063f29d fcoe_ctlr_device_add +EXPORT_SYMBOL_GPL drivers/scsi/fcoe/libfcoe 0xc4c13927 fcoe_validate_vport_create +EXPORT_SYMBOL_GPL drivers/scsi/fcoe/libfcoe 0xdd944534 fcoe_wwn_from_mac +EXPORT_SYMBOL_GPL drivers/scsi/fcoe/libfcoe 0xe14c6e98 fcoe_get_lesb +EXPORT_SYMBOL_GPL drivers/scsi/fcoe/libfcoe 0xe39499c6 fcoe_get_paged_crc_eof +EXPORT_SYMBOL_GPL drivers/scsi/fcoe/libfcoe 0xf167cb7a fcoe_wwn_to_str +EXPORT_SYMBOL_GPL drivers/scsi/fcoe/libfcoe 0xf62b27a8 fcoe_fcf_device_delete +EXPORT_SYMBOL_GPL drivers/scsi/fdomain 0x45789194 fdomain_destroy +EXPORT_SYMBOL_GPL drivers/scsi/fdomain 0x5ae99d40 fdomain_create +EXPORT_SYMBOL_GPL drivers/scsi/iscsi_boot_sysfs 0x2a4d271f iscsi_boot_create_acpitbl +EXPORT_SYMBOL_GPL drivers/scsi/iscsi_boot_sysfs 0x2e22d5c9 iscsi_boot_create_kset +EXPORT_SYMBOL_GPL drivers/scsi/iscsi_boot_sysfs 0x802e5a9f iscsi_boot_create_ethernet +EXPORT_SYMBOL_GPL drivers/scsi/iscsi_boot_sysfs 0x99855bfa iscsi_boot_destroy_kset +EXPORT_SYMBOL_GPL drivers/scsi/iscsi_boot_sysfs 0xb5e8e0b5 iscsi_boot_create_target +EXPORT_SYMBOL_GPL drivers/scsi/iscsi_boot_sysfs 0xd5cb4487 iscsi_boot_create_initiator +EXPORT_SYMBOL_GPL drivers/scsi/iscsi_boot_sysfs 0xf89a02bd iscsi_boot_create_host_kset +EXPORT_SYMBOL_GPL drivers/scsi/libfc/libfc 0x48561353 fc_seq_els_rsp_send +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x05848424 iscsi_suspend_tx +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x12b2ad06 iscsi_switch_str_param +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x15f38689 iscsi_set_param +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x3bef2f73 iscsi_pool_init +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x3ca3e979 iscsi_put_task +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x459fc81a iscsi_host_get_param +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x46a60f8e iscsi_session_recovery_timedout +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x47992ea8 iscsi_complete_scsi_task +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x49a182e0 iscsi_complete_pdu +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x559cbef0 iscsi_session_get_param +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x56718bfd iscsi_queuecommand +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x638acee8 iscsi_host_remove +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x68a1c3f3 iscsi_update_cmdsn +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x68f1af3b iscsi_itt_to_task +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x6e19290c iscsi_eh_device_reset +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x6f6f673b iscsi_session_teardown +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x71975cf5 iscsi_session_setup +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x762810ea __iscsi_put_task +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x8151805e iscsi_conn_bind +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x8d303b1b iscsi_pool_free +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x966ef15b iscsi_session_failure +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x987806a1 iscsi_prep_data_out_pdu +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x9bfd7917 iscsi_host_add +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x9cea03ee iscsi_conn_failure +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x9d1d9d4e iscsi_itt_to_ctask +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x9e24b99b iscsi_conn_send_pdu +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0xa4944f96 __iscsi_get_task +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0xaab875bf iscsi_target_alloc +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0xb7e80274 iscsi_eh_abort +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0xbec86687 iscsi_conn_stop +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0xcd48e0be iscsi_conn_queue_work +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0xcefdff9f iscsi_requeue_task +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0xd0548b5e iscsi_host_free +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0xd0b843dc iscsi_conn_start +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0xdbdf2985 iscsi_suspend_queue +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0xdddf8f13 __iscsi_complete_pdu +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0xdde55bd8 iscsi_eh_recover_target +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0xe0326c6b iscsi_eh_session_reset +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0xe9c5b34e iscsi_conn_teardown +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0xea2afe14 iscsi_eh_cmd_timed_out +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0xeab9cbd5 iscsi_conn_get_addr_param +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0xeb3d7953 iscsi_conn_setup +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0xf6236264 iscsi_conn_get_param +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0xf9507377 iscsi_verify_itt +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0xf98bdaaa iscsi_host_set_param +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0xfba1fe48 iscsi_host_alloc +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi_tcp 0x01ad229a iscsi_tcp_task_init +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi_tcp 0x03020a10 iscsi_tcp_dgst_header +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi_tcp 0x102891ad iscsi_tcp_recv_segment_is_hdr +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi_tcp 0x1a59337d iscsi_tcp_set_max_r2t +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi_tcp 0x28aa3a3a iscsi_tcp_conn_teardown +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi_tcp 0x49060513 iscsi_tcp_cleanup_task +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi_tcp 0x49388b50 iscsi_tcp_conn_get_stats +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi_tcp 0x4eb80b4d iscsi_tcp_segment_done +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi_tcp 0x4f242a97 iscsi_tcp_recv_skb +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi_tcp 0x5679e41e iscsi_tcp_segment_unmap +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi_tcp 0x7208179b iscsi_tcp_conn_setup +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi_tcp 0x89130e11 iscsi_tcp_r2tpool_free +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi_tcp 0x8eefba35 iscsi_segment_seek_sg +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi_tcp 0x948c31c3 iscsi_segment_init_linear +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi_tcp 0x99aa1268 iscsi_tcp_r2tpool_alloc +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi_tcp 0xd906face iscsi_tcp_task_xmit +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi_tcp 0xeec45b28 iscsi_tcp_hdr_recv_prep +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0x12d64157 sas_target_alloc +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0x2c7142a9 sas_task_abort +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0x348ecfdd sas_eh_target_reset_handler +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0x3e4c9bb9 sas_register_ha +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0x4e8426b1 sas_ata_schedule_reset +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0x5f40b3af sas_ioctl +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0x609116ec sas_alloc_task +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0x66ca994f sas_drain_work +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0x67d824a3 sas_unregister_ha +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0x6aa13fba sas_change_queue_depth +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0x6def2d5d dev_attr_phy_event_threshold +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0x84b8c2db sas_domain_attach_transport +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0x873993ef sas_queuecommand +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0x8baa7936 sas_get_local_phy +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0x8be62f45 sas_ssp_task_response +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0xa260b250 sas_free_task +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0xb5d0180f sas_slave_configure +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0xc0a1489e sas_request_addr +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0xc514407a sas_target_destroy +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0xca18cf9c sas_alloc_slow_task +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0xd6b0e2bd sas_eh_device_reset_handler +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0xdaa06ca8 sas_bios_param +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0xe1163bf2 sas_phy_reset +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0xe919aa6e sas_eh_abort_handler +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x0371734c iscsi_ping_comp_event +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x10f59ea9 iscsi_post_host_event +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x14a4c019 iscsi_dbg_trace +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x169d43f6 iscsi_create_endpoint +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x1fd6ff15 iscsi_register_transport +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x25c11408 iscsi_destroy_iface +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x3133dc5c __tracepoint_iscsi_dbg_session +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x31befa4f iscsi_unregister_transport +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x410c6765 iscsi_free_session +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x4341a8c5 iscsi_get_port_speed_name +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x47867762 __tracepoint_iscsi_dbg_tcp +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x47fcdaa4 iscsi_create_iface +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x520cabce iscsi_get_port_state_name +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x5e2cac77 iscsi_conn_login_event +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x5ea673f0 iscsi_create_conn +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x5f7fdbf2 iscsi_unblock_session +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x614fc3a2 iscsi_host_for_each_session +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x65aee398 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 0x6ef47429 iscsi_destroy_endpoint +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x7695a0bb iscsi_find_flashnode_sess +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x79281677 iscsi_is_session_online +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x7f493526 iscsi_alloc_session +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x84a005f1 iscsi_get_router_state_name +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x907d9f50 iscsi_create_flashnode_sess +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x9685b2b8 iscsi_lookup_endpoint +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x97f544d6 iscsi_flashnode_bus_match +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x9be149f4 iscsi_conn_error_event +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x9efdce13 iscsi_recv_pdu +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x9f56a9a5 iscsi_scan_finished +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0xaac3519d __tracepoint_iscsi_dbg_conn +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0xaea92c90 __tracepoint_iscsi_dbg_eh +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0xb30d7f78 iscsi_add_session +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0xbad39c4a iscsi_destroy_flashnode_sess +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0xbc071179 iscsi_get_ipaddress_state_name +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0xc1d65a08 iscsi_block_scsi_eh +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0xc365f756 iscsi_destroy_all_flashnode +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0xc8ba5084 iscsi_offload_mesg +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0xca6803c9 iscsi_is_session_dev +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0xcd4f320c iscsi_session_event +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0xd24350ad iscsi_session_chkready +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0xd4697d5b __tracepoint_iscsi_dbg_sw_tcp +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0xd5d43a3b iscsi_create_flashnode_conn +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0xe0b20036 iscsi_find_flashnode_conn +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0xe8ef2cbc iscsi_block_session +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0xea86638f iscsi_destroy_conn +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0xfa562d5c iscsi_remove_session +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_sas 0x0bea0dd3 sas_disable_tlr +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_sas 0xb6af7660 sas_tlr_supported +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_sas 0xe0187016 sas_enable_tlr +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_sas 0xe3579578 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 0x303a56fb spi_populate_tag_msg +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_spi 0xa0c71dac spi_populate_sync_msg +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_spi 0xcffa2aff spi_populate_width_msg +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_srp 0x0ffa90b1 srp_remove_host +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_srp 0x18d68627 srp_stop_rport_timers +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_srp 0x1902178a srp_tmo_valid +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_srp 0x45995930 srp_rport_del +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_srp 0x96e2f4a1 srp_attach_transport +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_srp 0xac720210 srp_rport_add +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_srp 0xbaa2cf52 srp_release_transport +EXPORT_SYMBOL_GPL drivers/scsi/ufs/ufshcd-core 0x105c02e0 ufshcd_init +EXPORT_SYMBOL_GPL drivers/scsi/ufs/ufshcd-core 0x1433f824 ufshcd_fixup_dev_quirks +EXPORT_SYMBOL_GPL drivers/scsi/ufs/ufshcd-core 0x1a159687 ufshcd_link_recovery +EXPORT_SYMBOL_GPL drivers/scsi/ufs/ufshcd-core 0x30edd25b ufshcd_dump_regs +EXPORT_SYMBOL_GPL drivers/scsi/ufs/ufshcd-core 0x32554ea4 ufshcd_config_pwr_mode +EXPORT_SYMBOL_GPL drivers/scsi/ufs/ufshcd-core 0x45c1c869 ufshcd_hold +EXPORT_SYMBOL_GPL drivers/scsi/ufs/ufshcd-core 0x5d588c32 ufshcd_update_reg_hist +EXPORT_SYMBOL_GPL drivers/scsi/ufs/ufshcd-core 0x723b1abf ufshcd_delay_us +EXPORT_SYMBOL_GPL drivers/scsi/ufs/ufshcd-core 0x8531b6ac ufshcd_remove +EXPORT_SYMBOL_GPL drivers/scsi/ufs/ufshcd-core 0x96fc93f0 ufshcd_auto_hibern8_update +EXPORT_SYMBOL_GPL drivers/scsi/ufs/ufshcd-core 0x9a035b4b ufshcd_dealloc_host +EXPORT_SYMBOL_GPL drivers/scsi/ufs/ufshcd-core 0xbd7cf424 ufshcd_dme_get_attr +EXPORT_SYMBOL_GPL drivers/scsi/ufs/ufshcd-core 0xc53e80e4 ufshcd_hba_enable +EXPORT_SYMBOL_GPL drivers/scsi/ufs/ufshcd-core 0xd253b384 ufshcd_release +EXPORT_SYMBOL_GPL drivers/scsi/ufs/ufshcd-core 0xef0da822 ufshcd_dme_set_attr +EXPORT_SYMBOL_GPL drivers/scsi/ufs/ufshcd-core 0xf271a515 ufshcd_uic_hibern8_exit +EXPORT_SYMBOL_GPL drivers/scsi/ufs/ufshcd-core 0xfa6472de ufshcd_make_hba_operational +EXPORT_SYMBOL_GPL drivers/scsi/ufs/ufshcd-pltfrm 0x32671f55 ufshcd_pltfrm_shutdown +EXPORT_SYMBOL_GPL drivers/scsi/ufs/ufshcd-pltfrm 0x683ee084 ufshcd_pltfrm_suspend +EXPORT_SYMBOL_GPL drivers/scsi/ufs/ufshcd-pltfrm 0x69c159ce ufshcd_pltfrm_resume +EXPORT_SYMBOL_GPL drivers/scsi/ufs/ufshcd-pltfrm 0x75495399 ufshcd_pltfrm_runtime_suspend +EXPORT_SYMBOL_GPL drivers/scsi/ufs/ufshcd-pltfrm 0xa96220de ufshcd_pltfrm_runtime_resume +EXPORT_SYMBOL_GPL drivers/scsi/ufs/ufshcd-pltfrm 0xb23de962 ufshcd_pltfrm_runtime_idle +EXPORT_SYMBOL_GPL drivers/scsi/ufs/ufshcd-pltfrm 0xf582dc70 ufshcd_pltfrm_init +EXPORT_SYMBOL_GPL drivers/scsi/ufs/ufshcd-pltfrm 0xff85cd6b ufshcd_get_pwr_dev_param +EXPORT_SYMBOL_GPL drivers/siox/siox-core 0x0ee36715 siox_device_connected +EXPORT_SYMBOL_GPL drivers/siox/siox-core 0x4685abd2 siox_master_register +EXPORT_SYMBOL_GPL drivers/siox/siox-core 0x7d253a06 siox_master_unregister +EXPORT_SYMBOL_GPL drivers/siox/siox-core 0xb158f6f9 siox_device_synced +EXPORT_SYMBOL_GPL drivers/siox/siox-core 0xb5575e66 __siox_driver_register +EXPORT_SYMBOL_GPL drivers/siox/siox-core 0xe361b16f siox_master_alloc +EXPORT_SYMBOL_GPL drivers/slimbus/slimbus 0x04b0d234 slim_stream_allocate +EXPORT_SYMBOL_GPL drivers/slimbus/slimbus 0x0bfef15a slim_get_logical_addr +EXPORT_SYMBOL_GPL drivers/slimbus/slimbus 0x1409686b slim_msg_response +EXPORT_SYMBOL_GPL drivers/slimbus/slimbus 0x24dcb0c4 slim_write +EXPORT_SYMBOL_GPL drivers/slimbus/slimbus 0x31bb62e2 slim_do_transfer +EXPORT_SYMBOL_GPL drivers/slimbus/slimbus 0x3c4acaf8 of_slim_get_device +EXPORT_SYMBOL_GPL drivers/slimbus/slimbus 0x503d60d4 slim_unregister_controller +EXPORT_SYMBOL_GPL drivers/slimbus/slimbus 0x5306e61a __slim_driver_register +EXPORT_SYMBOL_GPL drivers/slimbus/slimbus 0x66ff351b slim_stream_enable +EXPORT_SYMBOL_GPL drivers/slimbus/slimbus 0x7d695581 slim_stream_disable +EXPORT_SYMBOL_GPL drivers/slimbus/slimbus 0x7d6ed13c slimbus_bus +EXPORT_SYMBOL_GPL drivers/slimbus/slimbus 0x7e8c36af slim_stream_unprepare +EXPORT_SYMBOL_GPL drivers/slimbus/slimbus 0x8254fa2a slim_stream_free +EXPORT_SYMBOL_GPL drivers/slimbus/slimbus 0x847af3d6 slim_alloc_txn_tid +EXPORT_SYMBOL_GPL drivers/slimbus/slimbus 0x992b3109 slim_device_report_present +EXPORT_SYMBOL_GPL drivers/slimbus/slimbus 0x9ff45f77 slim_register_controller +EXPORT_SYMBOL_GPL drivers/slimbus/slimbus 0xb1ba11bc slim_read +EXPORT_SYMBOL_GPL drivers/slimbus/slimbus 0xb3c314a0 slim_xfer_msg +EXPORT_SYMBOL_GPL drivers/slimbus/slimbus 0xc311e5e0 slim_readb +EXPORT_SYMBOL_GPL drivers/slimbus/slimbus 0xca5dd528 slim_free_txn_tid +EXPORT_SYMBOL_GPL drivers/slimbus/slimbus 0xca86592f slim_get_device +EXPORT_SYMBOL_GPL drivers/slimbus/slimbus 0xd51e8a88 slim_ctrl_clk_pause +EXPORT_SYMBOL_GPL drivers/slimbus/slimbus 0xe0d3745e slim_writeb +EXPORT_SYMBOL_GPL drivers/slimbus/slimbus 0xec72e139 slim_stream_prepare +EXPORT_SYMBOL_GPL drivers/slimbus/slimbus 0xf2e2d3fa slim_driver_unregister +EXPORT_SYMBOL_GPL drivers/slimbus/slimbus 0xfeb19b31 slim_report_absent +EXPORT_SYMBOL_GPL drivers/soundwire/soundwire-bus 0x195b7d96 __sdw_register_driver +EXPORT_SYMBOL_GPL drivers/soundwire/soundwire-bus 0x348b0d1f sdw_unregister_driver +EXPORT_SYMBOL_GPL drivers/soundwire/soundwire-bus 0x9fe034a9 sdw_bus_type +EXPORT_SYMBOL_GPL drivers/soundwire/soundwire-cadence 0x73258f2b sdw_cdns_debugfs_init +EXPORT_SYMBOL_GPL drivers/spi/spi-bitbang 0x262ac8e7 spi_bitbang_init +EXPORT_SYMBOL_GPL drivers/spi/spi-bitbang 0x2646b7e2 spi_bitbang_setup_transfer +EXPORT_SYMBOL_GPL drivers/spi/spi-bitbang 0x2b3b567d spi_bitbang_setup +EXPORT_SYMBOL_GPL drivers/spi/spi-bitbang 0x72cd6d98 spi_bitbang_stop +EXPORT_SYMBOL_GPL drivers/spi/spi-bitbang 0xbd32d380 spi_bitbang_start +EXPORT_SYMBOL_GPL drivers/spi/spi-bitbang 0xdf54583c spi_bitbang_cleanup +EXPORT_SYMBOL_GPL drivers/spi/spi-dw 0x06f21ae5 dw_spi_set_cs +EXPORT_SYMBOL_GPL drivers/spi/spi-dw 0x17360d7f dw_spi_add_host +EXPORT_SYMBOL_GPL drivers/spi/spi-dw 0x181c6e86 dw_spi_remove_host +EXPORT_SYMBOL_GPL drivers/spi/spi-dw 0x187e68fa dw_spi_update_cr0_v1_01a +EXPORT_SYMBOL_GPL drivers/spi/spi-dw 0x38c04ce4 dw_spi_suspend_host +EXPORT_SYMBOL_GPL drivers/spi/spi-dw 0x897ccbad dw_spi_dma_setup_mfld +EXPORT_SYMBOL_GPL drivers/spi/spi-dw 0xc9558e82 dw_spi_resume_host +EXPORT_SYMBOL_GPL drivers/spi/spi-dw 0xe24ab203 dw_spi_dma_setup_generic +EXPORT_SYMBOL_GPL drivers/spi/spi-dw 0xee49d348 dw_spi_update_cr0 +EXPORT_SYMBOL_GPL drivers/spi/spi-loopback-test 0xd640a8c8 spi_test_execute_msg +EXPORT_SYMBOL_GPL drivers/spi/spi-loopback-test 0xdac4966a spi_test_run_tests +EXPORT_SYMBOL_GPL drivers/spi/spi-loopback-test 0xfe6a1019 spi_test_run_test +EXPORT_SYMBOL_GPL drivers/spmi/spmi 0x12e8a488 __spmi_driver_register +EXPORT_SYMBOL_GPL drivers/spmi/spmi 0x27f38572 spmi_controller_add +EXPORT_SYMBOL_GPL drivers/spmi/spmi 0x2cd6bd88 spmi_command_wakeup +EXPORT_SYMBOL_GPL drivers/spmi/spmi 0x34fb4061 spmi_ext_register_read +EXPORT_SYMBOL_GPL drivers/spmi/spmi 0x3afa366f spmi_device_add +EXPORT_SYMBOL_GPL drivers/spmi/spmi 0x4e907f76 spmi_register_zero_write +EXPORT_SYMBOL_GPL drivers/spmi/spmi 0x50e23206 spmi_ext_register_writel +EXPORT_SYMBOL_GPL drivers/spmi/spmi 0x59c27c7b spmi_command_shutdown +EXPORT_SYMBOL_GPL drivers/spmi/spmi 0x5bdc255e spmi_command_sleep +EXPORT_SYMBOL_GPL drivers/spmi/spmi 0x6e97ad86 spmi_ext_register_write +EXPORT_SYMBOL_GPL drivers/spmi/spmi 0x7412456c spmi_controller_alloc +EXPORT_SYMBOL_GPL drivers/spmi/spmi 0x78a3eaa3 spmi_ext_register_readl +EXPORT_SYMBOL_GPL drivers/spmi/spmi 0x795da2eb spmi_device_alloc +EXPORT_SYMBOL_GPL drivers/spmi/spmi 0x7dcc823b spmi_controller_remove +EXPORT_SYMBOL_GPL drivers/spmi/spmi 0xa3a1958d spmi_device_remove +EXPORT_SYMBOL_GPL drivers/spmi/spmi 0xab258b2b spmi_command_reset +EXPORT_SYMBOL_GPL drivers/spmi/spmi 0xbc9c94eb spmi_register_write +EXPORT_SYMBOL_GPL drivers/spmi/spmi 0xd935d0d1 spmi_register_read +EXPORT_SYMBOL_GPL drivers/ssb/ssb 0x127b942c ssb_pmu_spuravoid_pllupdate +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x088c1b5d comedi_request_region +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x0cd330f4 range_unknown +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x1e4dca87 comedi_timeout +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x202143bc comedi_buf_read_free +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x21102f87 range_0_32mA +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x2794e136 comedi_alloc_subdevices +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x2e8dff28 comedi_load_firmware +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x2f0ad9d3 range_bipolar5 +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x3763e2af comedi_dio_insn_config +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x39defdcf comedi_is_subdevice_running +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x3bc1192c comedi_buf_write_samples +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x3ceb4e2c __comedi_request_region +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x3f94bbed comedi_readback_insn_read +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x4236eaaf range_4_20mA +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x4fe634f3 range_bipolar2_5 +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x50dfbbc5 comedi_dev_get_from_minor +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x5aefcbbe comedi_event +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x5e9ed41e comedi_inc_scan_progress +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x5f0c7e7e comedi_buf_read_n_available +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x664bb7e9 comedi_buf_read_alloc +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x68acf463 comedi_set_hw_dev +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x70acdd05 comedi_dev_put +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x722b4cae comedi_buf_write_free +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x7c36732f comedi_set_spriv_auto_free +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x7d836cdb comedi_check_chanlist +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x8113872c range_unipolar10 +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x8445f9cf comedi_nscans_left +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x8560b502 comedi_driver_register +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x8ba96769 comedi_alloc_devpriv +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x8e075dad comedi_handle_events +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x91df7a8b comedi_nsamples_left +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x922b9621 comedi_auto_config +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x95a0ccae comedi_buf_write_alloc +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0xa4841850 comedi_auto_unconfig +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0xadfd87fb comedi_bytes_per_scan +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0xb679cebc range_0_20mA +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0xbb52fc7f range_bipolar10 +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0xbdbe75c6 range_unipolar2_5 +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0xcc3b8709 comedi_bytes_per_scan_cmd +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0xd2f9ac23 comedi_alloc_spriv +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0xd6706041 comedi_buf_read_samples +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0xdb2044b2 range_unipolar5 +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0xdf56e78c comedi_dio_update_state +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0xec47f123 comedi_driver_unregister +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0xf1fb4732 comedi_legacy_detach +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0xfaf59a09 comedi_alloc_subdev_readback +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi_pci 0x270a1ca0 comedi_pci_auto_config +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi_pci 0x4141e9b9 comedi_pci_disable +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi_pci 0x67747ef9 comedi_pci_driver_register +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi_pci 0x82bdbe43 comedi_pci_enable +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi_pci 0x8db9080d comedi_pci_auto_unconfig +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi_pci 0xaac8a2da comedi_pci_driver_unregister +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi_pci 0xab259eda comedi_pci_detach +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi_pci 0xfd17b13d comedi_to_pci_dev +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi_pcmcia 0x0600a8fc comedi_pcmcia_auto_config +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi_pcmcia 0x3338afac comedi_pcmcia_auto_unconfig +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi_pcmcia 0x60eeb785 comedi_pcmcia_enable +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi_pcmcia 0x6a154d5b comedi_pcmcia_driver_register +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi_pcmcia 0x864334e4 comedi_pcmcia_disable +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi_pcmcia 0xcab05f5e comedi_pcmcia_driver_unregister +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi_pcmcia 0xd54e80c0 comedi_to_pcmcia_dev +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi_usb 0x0c312ea0 comedi_usb_auto_config +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi_usb 0x46cfadf5 comedi_to_usb_interface +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi_usb 0x57d3270c comedi_to_usb_dev +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi_usb 0x89b637e9 comedi_usb_auto_unconfig +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi_usb 0x9805531f comedi_usb_driver_register +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi_usb 0xcce0dab8 comedi_usb_driver_unregister +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/addi_watchdog 0x3a114d9f addi_watchdog_init +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/addi_watchdog 0x79f4a6cf addi_watchdog_reset +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/amplc_dio200_common 0x85956de3 amplc_dio200_common_attach +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/amplc_dio200_common 0xe66f64c3 amplc_dio200_set_enhance +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/amplc_pc236_common 0xa5a1f2f7 amplc_pc236_common_attach +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/comedi_8254 0x0d7dc58b comedi_8254_write +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/comedi_8254 0x106b6cbe comedi_8254_set_busy +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/comedi_8254 0x20d593c7 comedi_8254_ns_to_timer +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/comedi_8254 0x2a1f6cb4 comedi_8254_read +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/comedi_8254 0x446146f4 comedi_8254_status +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/comedi_8254 0x5281984f comedi_8254_pacer_enable +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/comedi_8254 0x78c87950 comedi_8254_cascade_ns_to_timer +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/comedi_8254 0x7cfeb601 comedi_8254_update_divisors +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/comedi_8254 0x827072a9 comedi_8254_init +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/comedi_8254 0x8c4838a9 comedi_8254_load +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/comedi_8254 0x9544a923 comedi_8254_set_mode +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/comedi_8254 0xcce475ba comedi_8254_subdevice_init +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/comedi_8254 0xd3e39519 comedi_8254_mm_init +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/comedi_8255 0xb429fbd0 subdev_8255_regbase +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/comedi_8255 0xdda26a81 subdev_8255_mm_init +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/comedi_8255 0xe86cc7d8 subdev_8255_init +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/comedi_isadma 0x12fba874 comedi_isadma_disable +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/comedi_isadma 0x4a17474e comedi_isadma_disable_on_sample +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/comedi_isadma 0x65987505 comedi_isadma_poll +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/comedi_isadma 0x9e5673bd comedi_isadma_alloc +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/comedi_isadma 0xca784d4b comedi_isadma_set_mode +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/comedi_isadma 0xea878430 comedi_isadma_program +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/comedi_isadma 0xf16c9c0f comedi_isadma_free +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/das08 0xef6c493f das08_common_attach +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/mite 0x04a8cdf2 mite_sync_dma +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/mite 0x078c2885 mite_prep_dma +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/mite 0x08fb8314 mite_dma_arm +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/mite 0x09bb475b mite_init_ring_descriptors +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/mite 0x0cf4b037 mite_request_channel +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/mite 0x136c0343 mite_ack_linkc +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/mite 0x423fc77f mite_detach +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/mite 0x70b3eb5b mite_attach +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/mite 0x8e6a9a8d mite_release_channel +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/mite 0x9b7093ed mite_request_channel_in_range +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/mite 0xa2c623ce mite_bytes_in_transit +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/mite 0xa82cb48c mite_buf_change +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/mite 0xc23905ec mite_alloc_ring +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/mite 0xe2d7bdd8 mite_dma_disarm +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/mite 0xeb29793e mite_done +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/mite 0xf6d497f4 mite_free_ring +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/ni_labpc_common 0x2f2be4b5 labpc_common_attach +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/ni_labpc_common 0x36f45185 labpc_common_detach +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/ni_labpc_isadma 0x03764f08 labpc_free_dma_chan +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/ni_labpc_isadma 0x051db79c labpc_init_dma_chan +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/ni_labpc_isadma 0x14ec35ac labpc_setup_dma +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/ni_labpc_isadma 0xb1e15057 labpc_handle_dma_status +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/ni_labpc_isadma 0xf034d8c5 labpc_drain_dma +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/ni_routing 0x076bc308 ni_find_route_source +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/ni_routing 0x0921123e ni_lookup_route_register +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/ni_routing 0x1facf7f8 ni_is_cmd_dest +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/ni_routing 0x64443d67 ni_get_valid_routes +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/ni_routing 0x6c18c54e ni_count_valid_routes +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/ni_routing 0x85e75c94 ni_assign_device_routes +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/ni_routing 0x863a306d ni_sort_device_routes +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/ni_routing 0x8ab47ba4 ni_route_set_has_source +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/ni_routing 0x8f0f0901 ni_find_route_set +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/ni_routing 0xb3e302a3 ni_route_to_register +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/ni_tio 0x2b836e71 ni_tio_get_soft_copy +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/ni_tio 0x35d96b5f ni_tio_init_counter +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/ni_tio 0x461dbca1 ni_tio_get_routing +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/ni_tio 0x519afbff ni_tio_set_gate_src_raw +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/ni_tio 0x5500d4e0 ni_tio_set_routing +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/ni_tio 0x7231c0fd ni_tio_set_gate_src +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/ni_tio 0x7852d015 ni_tio_read +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/ni_tio 0x85ea39e1 ni_tio_insn_read +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/ni_tio 0x874db584 ni_tio_unset_routing +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/ni_tio 0xa3b22c79 ni_gpct_device_destroy +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/ni_tio 0xa676e96f ni_tio_arm +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/ni_tio 0xcfac25e2 ni_tio_write +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/ni_tio 0xd22f0512 ni_gpct_device_construct +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/ni_tio 0xd9c50813 ni_tio_insn_write +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/ni_tio 0xdd6a5957 ni_tio_set_bits +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/ni_tio 0xfa99449d ni_tio_insn_config +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/ni_tiocmd 0x3751856b ni_tio_handle_interrupt +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/ni_tiocmd 0x820dbcab ni_tio_cmd +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/ni_tiocmd 0x821df02e ni_tio_cancel +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/ni_tiocmd 0xbe0591bd ni_tio_cmdtest +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/ni_tiocmd 0xe6c9ce2c ni_tio_set_mite_channel +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/ni_tiocmd 0xf2d7f39a ni_tio_acknowledge +EXPORT_SYMBOL_GPL drivers/staging/comedi/kcomedilib/kcomedilib 0x4d499c0a comedi_get_n_channels +EXPORT_SYMBOL_GPL drivers/staging/comedi/kcomedilib/kcomedilib 0x609bffec comedi_close +EXPORT_SYMBOL_GPL drivers/staging/comedi/kcomedilib/kcomedilib 0x6d4d8172 comedi_dio_get_config +EXPORT_SYMBOL_GPL drivers/staging/comedi/kcomedilib/kcomedilib 0x720196ab comedi_dio_config +EXPORT_SYMBOL_GPL drivers/staging/comedi/kcomedilib/kcomedilib 0xcd84b91d comedi_open +EXPORT_SYMBOL_GPL drivers/staging/comedi/kcomedilib/kcomedilib 0xdbec87f0 comedi_dio_bitfield2 +EXPORT_SYMBOL_GPL drivers/staging/comedi/kcomedilib/kcomedilib 0xf77144a5 comedi_find_subdevice_by_type +EXPORT_SYMBOL_GPL drivers/staging/fieldbus/fieldbus_dev 0x2df8b264 fieldbus_dev_online_changed +EXPORT_SYMBOL_GPL drivers/staging/fieldbus/fieldbus_dev 0x90339652 fieldbus_dev_register +EXPORT_SYMBOL_GPL drivers/staging/fieldbus/fieldbus_dev 0xc9e8d216 fieldbus_dev_area_updated +EXPORT_SYMBOL_GPL drivers/staging/fieldbus/fieldbus_dev 0xd41f24ec fieldbus_dev_unregister +EXPORT_SYMBOL_GPL drivers/staging/greybus/gb-audio-apbridgea 0x1cbe0c5e gb_audio_apbridgea_set_config +EXPORT_SYMBOL_GPL drivers/staging/greybus/gb-audio-apbridgea 0x20b57595 gb_audio_apbridgea_prepare_rx +EXPORT_SYMBOL_GPL drivers/staging/greybus/gb-audio-apbridgea 0x2700ac8a gb_audio_apbridgea_stop_tx +EXPORT_SYMBOL_GPL drivers/staging/greybus/gb-audio-apbridgea 0x2a32f0d2 gb_audio_apbridgea_start_tx +EXPORT_SYMBOL_GPL drivers/staging/greybus/gb-audio-apbridgea 0x4072f58d gb_audio_apbridgea_start_rx +EXPORT_SYMBOL_GPL drivers/staging/greybus/gb-audio-apbridgea 0x51411f08 gb_audio_apbridgea_set_rx_data_size +EXPORT_SYMBOL_GPL drivers/staging/greybus/gb-audio-apbridgea 0x7735db3d gb_audio_apbridgea_unregister_cport +EXPORT_SYMBOL_GPL drivers/staging/greybus/gb-audio-apbridgea 0x79b36802 gb_audio_apbridgea_shutdown_rx +EXPORT_SYMBOL_GPL drivers/staging/greybus/gb-audio-apbridgea 0x7f1f2baf gb_audio_apbridgea_register_cport +EXPORT_SYMBOL_GPL drivers/staging/greybus/gb-audio-apbridgea 0xa04fb3e8 gb_audio_apbridgea_shutdown_tx +EXPORT_SYMBOL_GPL drivers/staging/greybus/gb-audio-apbridgea 0xdda059ee gb_audio_apbridgea_set_tx_data_size +EXPORT_SYMBOL_GPL drivers/staging/greybus/gb-audio-apbridgea 0xf949ae7f gb_audio_apbridgea_prepare_tx +EXPORT_SYMBOL_GPL drivers/staging/greybus/gb-audio-apbridgea 0xfefc7760 gb_audio_apbridgea_stop_rx +EXPORT_SYMBOL_GPL drivers/staging/greybus/gb-audio-gb 0x046a84d6 gb_audio_gb_set_rx_data_size +EXPORT_SYMBOL_GPL drivers/staging/greybus/gb-audio-gb 0x1aa2eaae gb_audio_gb_get_pcm +EXPORT_SYMBOL_GPL drivers/staging/greybus/gb-audio-gb 0x28d27bcf gb_audio_gb_activate_rx +EXPORT_SYMBOL_GPL drivers/staging/greybus/gb-audio-gb 0x2b3d7fba gb_audio_gb_enable_widget +EXPORT_SYMBOL_GPL drivers/staging/greybus/gb-audio-gb 0x3e1bca4e gb_audio_gb_deactivate_tx +EXPORT_SYMBOL_GPL drivers/staging/greybus/gb-audio-gb 0x4b519b44 gb_audio_gb_get_control +EXPORT_SYMBOL_GPL drivers/staging/greybus/gb-audio-gb 0xa24fe6e8 gb_audio_gb_set_tx_data_size +EXPORT_SYMBOL_GPL drivers/staging/greybus/gb-audio-gb 0xae54006b gb_audio_gb_set_pcm +EXPORT_SYMBOL_GPL drivers/staging/greybus/gb-audio-gb 0xb23a1d60 gb_audio_gb_set_control +EXPORT_SYMBOL_GPL drivers/staging/greybus/gb-audio-gb 0xbb0d5a2b gb_audio_gb_get_topology +EXPORT_SYMBOL_GPL drivers/staging/greybus/gb-audio-gb 0xc6cf0634 gb_audio_gb_activate_tx +EXPORT_SYMBOL_GPL drivers/staging/greybus/gb-audio-gb 0xd006b7b5 gb_audio_gb_deactivate_rx +EXPORT_SYMBOL_GPL drivers/staging/greybus/gb-audio-gb 0xd6da0759 gb_audio_gb_disable_widget +EXPORT_SYMBOL_GPL drivers/staging/greybus/gb-audio-manager 0x19e9e6b1 gb_audio_manager_remove_all +EXPORT_SYMBOL_GPL drivers/staging/greybus/gb-audio-manager 0x32e6391e gb_audio_manager_remove +EXPORT_SYMBOL_GPL drivers/staging/greybus/gb-audio-manager 0x5a108b0f gb_audio_manager_add +EXPORT_SYMBOL_GPL drivers/staging/greybus/gb-audio-manager 0x68e623d4 gb_audio_manager_get_module +EXPORT_SYMBOL_GPL drivers/staging/greybus/gb-audio-manager 0x79eef2f8 gb_audio_manager_dump_all +EXPORT_SYMBOL_GPL drivers/staging/greybus/gb-audio-manager 0x9ae7c9e3 gb_audio_manager_put_module +EXPORT_SYMBOL_GPL drivers/staging/greybus/gb-audio-manager 0xaeac8ca2 gb_audio_manager_dump_module +EXPORT_SYMBOL_GPL drivers/staging/greybus/gb-gbphy 0x9f350b96 gb_gbphy_register_driver +EXPORT_SYMBOL_GPL drivers/staging/greybus/gb-gbphy 0xd613458b gb_gbphy_deregister_driver +EXPORT_SYMBOL_GPL drivers/staging/greybus/gb-spilib 0xee31e4f5 gb_spilib_master_init +EXPORT_SYMBOL_GPL drivers/staging/greybus/gb-spilib 0xf7fb3dc0 gb_spilib_master_exit +EXPORT_SYMBOL_GPL drivers/staging/iio/addac/adt7316 0xe137b584 adt7316_pm_ops +EXPORT_SYMBOL_GPL drivers/staging/media/atomisp/i2c/atomisp-libmsrlisthelper 0x67026c8d apply_msr_data +EXPORT_SYMBOL_GPL drivers/staging/media/atomisp/i2c/atomisp-libmsrlisthelper 0xb0175a2f load_msr_list +EXPORT_SYMBOL_GPL drivers/staging/media/atomisp/i2c/atomisp-libmsrlisthelper 0xcdb84ead release_msr_list +EXPORT_SYMBOL_GPL drivers/staging/media/atomisp/pci/atomisp_gmin_platform 0x0e30a6d4 gmin_camera_platform_data +EXPORT_SYMBOL_GPL drivers/staging/media/atomisp/pci/atomisp_gmin_platform 0x1af009f6 camera_sensor_csi +EXPORT_SYMBOL_GPL drivers/staging/media/atomisp/pci/atomisp_gmin_platform 0x21937a13 atomisp_get_platform_data +EXPORT_SYMBOL_GPL drivers/staging/media/atomisp/pci/atomisp_gmin_platform 0x2349bc87 gmin_get_var_int +EXPORT_SYMBOL_GPL drivers/staging/media/atomisp/pci/atomisp_gmin_platform 0x3801e45e atomisp_gmin_remove_subdev +EXPORT_SYMBOL_GPL drivers/staging/media/atomisp/pci/atomisp_gmin_platform 0xa4565267 atomisp_gmin_find_subdev +EXPORT_SYMBOL_GPL drivers/staging/media/atomisp/pci/atomisp_gmin_platform 0xbae0e12f atomisp_get_default_camera_caps +EXPORT_SYMBOL_GPL drivers/staging/media/atomisp/pci/atomisp_gmin_platform 0xc67d30dc atomisp_gmin_register_vcm_control +EXPORT_SYMBOL_GPL drivers/staging/media/atomisp/pci/atomisp_gmin_platform 0xe5a6d5ba atomisp_register_i2c_module +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0x0123570f spk_serial_io_ops +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0x03a53342 spk_serial_synth_probe +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0x10dbab8d spk_do_catch_up_unicode +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0x1e39eb14 synth_putws +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0x291c8aae spk_ttyio_synth_probe +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0x41a160e5 synth_buffer_empty +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0x4449e1dd synth_buffer_clear +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0x466f5eb7 synth_putwc +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0x76d40046 synth_buffer_skip_nonlatin1 +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0x77ae5be8 synth_remove +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0x84dad068 synth_buffer_getc +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0x87cce5b9 spk_synth_is_alive_restart +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0x8c82dfca synth_request_region +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0x8e50055a spk_stop_serial_interrupt +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0x8fe0db01 synth_putwc_s +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0x91cb2e21 spk_ttyio_synth_immediate +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0x95cdb175 spk_var_store +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0xaadb0612 synth_buffer_peek +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0xae7d6424 spk_ttyio_release +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0xb3bb5f33 spk_synth_flush +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0xb63fe456 spk_synth_is_alive_nop +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0xb734cb9d speakup_event +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0xba65603c synth_add +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0xbbd15a51 speakup_start_ttys +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0xc176180f spk_ttyio_ops +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0xc1cef897 spk_do_catch_up +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0xc319c604 synth_putws_s +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0xcc31713d spk_serial_synth_immediate +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0xceea0d3a spk_var_show +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0xd305ce9a spk_synth_get_index +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0xd8fd86cf synth_release_region +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0xd93829dd speakup_info +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0xe194d0ef synth_printf +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0xe48b4f3d synth_current +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0xe7cd4558 spk_serial_release +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0xfd189eef spk_get_var +EXPORT_SYMBOL_GPL drivers/staging/wilc1000/wilc1000 0x244e7e8b wilc_netdev_cleanup +EXPORT_SYMBOL_GPL drivers/staging/wilc1000/wilc1000 0x3a5df7d6 host_wakeup_notify +EXPORT_SYMBOL_GPL drivers/staging/wilc1000/wilc1000 0x5af63453 wilc_handle_isr +EXPORT_SYMBOL_GPL drivers/staging/wilc1000/wilc1000 0x89e6b0e5 chip_allow_sleep +EXPORT_SYMBOL_GPL drivers/staging/wilc1000/wilc1000 0x8dac2919 chip_wakeup +EXPORT_SYMBOL_GPL drivers/staging/wilc1000/wilc1000 0xd8530670 host_sleep_notify +EXPORT_SYMBOL_GPL drivers/staging/wilc1000/wilc1000 0xfbeb3d69 wilc_cfg80211_init +EXPORT_SYMBOL_GPL drivers/tee/tee 0x03c7ada1 tee_shm_pool_alloc +EXPORT_SYMBOL_GPL drivers/tee/tee 0x089eeca0 tee_shm_va2pa +EXPORT_SYMBOL_GPL drivers/tee/tee 0x13d1d8a4 tee_shm_register +EXPORT_SYMBOL_GPL drivers/tee/tee 0x1424d833 tee_shm_free +EXPORT_SYMBOL_GPL drivers/tee/tee 0x1749bfdb tee_get_drvdata +EXPORT_SYMBOL_GPL drivers/tee/tee 0x217557b9 tee_shm_get_pa +EXPORT_SYMBOL_GPL drivers/tee/tee 0x2d12a754 tee_client_open_session +EXPORT_SYMBOL_GPL drivers/tee/tee 0x3b25526e tee_client_open_context +EXPORT_SYMBOL_GPL drivers/tee/tee 0x4848fdec tee_shm_pool_alloc_res_mem +EXPORT_SYMBOL_GPL drivers/tee/tee 0x4de79d68 tee_client_invoke_func +EXPORT_SYMBOL_GPL drivers/tee/tee 0x53681c1f tee_shm_pool_free +EXPORT_SYMBOL_GPL drivers/tee/tee 0x55da5800 tee_device_unregister +EXPORT_SYMBOL_GPL drivers/tee/tee 0x57a2ecb2 tee_client_get_version +EXPORT_SYMBOL_GPL drivers/tee/tee 0x5f761a8d tee_client_close_session +EXPORT_SYMBOL_GPL drivers/tee/tee 0x63fef5a8 tee_shm_alloc +EXPORT_SYMBOL_GPL drivers/tee/tee 0x7c092a34 tee_shm_pa2va +EXPORT_SYMBOL_GPL drivers/tee/tee 0x85fd9922 tee_session_calc_client_uuid +EXPORT_SYMBOL_GPL drivers/tee/tee 0x91a7fc52 tee_client_close_context +EXPORT_SYMBOL_GPL drivers/tee/tee 0x9e6f09e3 tee_bus_type +EXPORT_SYMBOL_GPL drivers/tee/tee 0x9fa0a931 tee_shm_put +EXPORT_SYMBOL_GPL drivers/tee/tee 0xac0cc212 tee_shm_get_from_id +EXPORT_SYMBOL_GPL drivers/tee/tee 0xbe9aabcc tee_device_alloc +EXPORT_SYMBOL_GPL drivers/tee/tee 0xc34d36e3 tee_shm_get_va +EXPORT_SYMBOL_GPL drivers/tee/tee 0xda76d95b tee_device_register +EXPORT_SYMBOL_GPL drivers/tee/tee 0xee54bb12 tee_shm_pool_mgr_alloc_res_mem +EXPORT_SYMBOL_GPL drivers/thermal/intel/int340x_thermal/int340x_thermal_zone 0x5a13c1aa int340x_thermal_zone_remove +EXPORT_SYMBOL_GPL drivers/thermal/intel/int340x_thermal/int340x_thermal_zone 0x741ebd15 int340x_thermal_zone_add +EXPORT_SYMBOL_GPL drivers/thermal/intel/int340x_thermal/int340x_thermal_zone 0x7d2aa1b2 int340x_thermal_read_trips +EXPORT_SYMBOL_GPL drivers/thermal/intel/intel_soc_dts_iosf 0x32b768d8 intel_soc_dts_iosf_exit +EXPORT_SYMBOL_GPL drivers/thermal/intel/intel_soc_dts_iosf 0x8105ad1f intel_soc_dts_iosf_add_read_only_critical_trip +EXPORT_SYMBOL_GPL drivers/thermal/intel/intel_soc_dts_iosf 0x9c9a6d36 intel_soc_dts_iosf_interrupt_handler +EXPORT_SYMBOL_GPL drivers/thermal/intel/intel_soc_dts_iosf 0xfee81b5a intel_soc_dts_iosf_init +EXPORT_SYMBOL_GPL drivers/thunderbolt/thunderbolt 0x01d23ee1 tb_property_create_dir +EXPORT_SYMBOL_GPL drivers/thunderbolt/thunderbolt 0x04e19327 tb_ring_alloc_tx +EXPORT_SYMBOL_GPL drivers/thunderbolt/thunderbolt 0x29105608 tb_ring_poll +EXPORT_SYMBOL_GPL drivers/thunderbolt/thunderbolt 0x393b4f2f tb_property_free_dir +EXPORT_SYMBOL_GPL drivers/thunderbolt/thunderbolt 0x490ef5f2 tb_ring_poll_complete +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 0x603249ed tb_unregister_property_dir +EXPORT_SYMBOL_GPL drivers/thunderbolt/thunderbolt 0x658e3d97 tb_property_add_immediate +EXPORT_SYMBOL_GPL drivers/thunderbolt/thunderbolt 0x6c04b26c __tb_ring_enqueue +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 0x7b1e4258 tb_xdomain_find_by_route +EXPORT_SYMBOL_GPL drivers/thunderbolt/thunderbolt 0x7bbe941b tb_ring_stop +EXPORT_SYMBOL_GPL drivers/thunderbolt/thunderbolt 0x7dd9f78f tb_service_type +EXPORT_SYMBOL_GPL drivers/thunderbolt/thunderbolt 0x873d4b1b tb_unregister_service_driver +EXPORT_SYMBOL_GPL drivers/thunderbolt/thunderbolt 0x8b62f95e tb_property_add_dir +EXPORT_SYMBOL_GPL drivers/thunderbolt/thunderbolt 0x91a9ac7f tb_xdomain_find_by_uuid +EXPORT_SYMBOL_GPL drivers/thunderbolt/thunderbolt 0x93861dba tb_xdomain_type +EXPORT_SYMBOL_GPL drivers/thunderbolt/thunderbolt 0xa3d2b403 tb_property_add_data +EXPORT_SYMBOL_GPL drivers/thunderbolt/thunderbolt 0xa75ad1d2 tb_xdomain_response +EXPORT_SYMBOL_GPL drivers/thunderbolt/thunderbolt 0xb7c7cdce tb_property_add_text +EXPORT_SYMBOL_GPL drivers/thunderbolt/thunderbolt 0xbbbd0c75 tb_xdomain_request +EXPORT_SYMBOL_GPL drivers/thunderbolt/thunderbolt 0xbfcad997 tb_xdomain_enable_paths +EXPORT_SYMBOL_GPL drivers/thunderbolt/thunderbolt 0xcb095b56 tb_xdomain_disable_paths +EXPORT_SYMBOL_GPL drivers/thunderbolt/thunderbolt 0xd46dcd01 tb_ring_alloc_rx +EXPORT_SYMBOL_GPL drivers/thunderbolt/thunderbolt 0xdc452eb6 tb_register_service_driver +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/thunderbolt/thunderbolt 0xfbcb3a29 tb_ring_start +EXPORT_SYMBOL_GPL drivers/thunderbolt/thunderbolt 0xfc7f477e tb_ring_free +EXPORT_SYMBOL_GPL drivers/tty/n_tracesink 0x8a422e5e n_tracesink_datadrain +EXPORT_SYMBOL_GPL drivers/uio/uio 0x4e5ccc90 __uio_register_device +EXPORT_SYMBOL_GPL drivers/uio/uio 0xb56d0be3 __devm_uio_register_device +EXPORT_SYMBOL_GPL drivers/uio/uio 0xc2f91b60 uio_event_notify +EXPORT_SYMBOL_GPL drivers/uio/uio 0xe18591a7 uio_unregister_device +EXPORT_SYMBOL_GPL drivers/usb/atm/usbatm 0x29c11e76 usbatm_usb_probe +EXPORT_SYMBOL_GPL drivers/usb/atm/usbatm 0x95e8f56b usbatm_usb_disconnect +EXPORT_SYMBOL_GPL drivers/usb/chipidea/ci_hdrc 0x3c4843cf ci_hdrc_add_device +EXPORT_SYMBOL_GPL drivers/usb/chipidea/ci_hdrc 0x3dd30d1a hw_phymode_configure +EXPORT_SYMBOL_GPL drivers/usb/chipidea/ci_hdrc 0x73366d15 ci_hdrc_remove_device +EXPORT_SYMBOL_GPL drivers/usb/common/ulpi 0x0a6420cd ulpi_unregister_interface +EXPORT_SYMBOL_GPL drivers/usb/common/ulpi 0x1dae144c ulpi_register_interface +EXPORT_SYMBOL_GPL drivers/usb/common/ulpi 0x291e0f87 __ulpi_register_driver +EXPORT_SYMBOL_GPL drivers/usb/common/ulpi 0x292151e3 ulpi_unregister_driver +EXPORT_SYMBOL_GPL drivers/usb/common/ulpi 0x7eccfea1 ulpi_read +EXPORT_SYMBOL_GPL drivers/usb/common/ulpi 0xf24d68cd ulpi_write +EXPORT_SYMBOL_GPL drivers/usb/gadget/function/u_audio 0x1c14e8c5 u_audio_stop_capture +EXPORT_SYMBOL_GPL drivers/usb/gadget/function/u_audio 0x435d6aee g_audio_setup +EXPORT_SYMBOL_GPL drivers/usb/gadget/function/u_audio 0x7d8a9c25 u_audio_start_playback +EXPORT_SYMBOL_GPL drivers/usb/gadget/function/u_audio 0xb80235c2 u_audio_start_capture +EXPORT_SYMBOL_GPL drivers/usb/gadget/function/u_audio 0xc07826ad g_audio_cleanup +EXPORT_SYMBOL_GPL drivers/usb/gadget/function/u_audio 0xe34a1f5b u_audio_stop_playback +EXPORT_SYMBOL_GPL drivers/usb/gadget/function/u_ether 0x027f4ec3 gether_get_ifname +EXPORT_SYMBOL_GPL drivers/usb/gadget/function/u_ether 0x17c7e1de gether_set_dev_addr +EXPORT_SYMBOL_GPL drivers/usb/gadget/function/u_ether 0x33e1b927 gether_setup_name_default +EXPORT_SYMBOL_GPL drivers/usb/gadget/function/u_ether 0x413290a9 gether_get_qmult +EXPORT_SYMBOL_GPL drivers/usb/gadget/function/u_ether 0x570344f2 gether_get_host_addr +EXPORT_SYMBOL_GPL drivers/usb/gadget/function/u_ether 0x6090b97b gether_get_host_addr_cdc +EXPORT_SYMBOL_GPL drivers/usb/gadget/function/u_ether 0x8878cfa6 gether_cleanup +EXPORT_SYMBOL_GPL drivers/usb/gadget/function/u_ether 0x9a1b9b73 gether_set_host_addr +EXPORT_SYMBOL_GPL drivers/usb/gadget/function/u_ether 0x9ed62a0b gether_set_qmult +EXPORT_SYMBOL_GPL drivers/usb/gadget/function/u_ether 0xa34ddeaf gether_get_host_addr_u8 +EXPORT_SYMBOL_GPL drivers/usb/gadget/function/u_ether 0xb511c347 gether_set_gadget +EXPORT_SYMBOL_GPL drivers/usb/gadget/function/u_ether 0xb7814561 gether_connect +EXPORT_SYMBOL_GPL drivers/usb/gadget/function/u_ether 0xc376a335 gether_setup_name +EXPORT_SYMBOL_GPL drivers/usb/gadget/function/u_ether 0xe1c432e8 gether_get_dev_addr +EXPORT_SYMBOL_GPL drivers/usb/gadget/function/u_ether 0xe45b5559 gether_disconnect +EXPORT_SYMBOL_GPL drivers/usb/gadget/function/u_ether 0xe94b5bff gether_register_netdev +EXPORT_SYMBOL_GPL drivers/usb/gadget/function/u_serial 0x3022e3ab gserial_resume +EXPORT_SYMBOL_GPL drivers/usb/gadget/function/u_serial 0x33bfdca2 gserial_alloc_line +EXPORT_SYMBOL_GPL drivers/usb/gadget/function/u_serial 0x4a3df9d0 gs_alloc_req +EXPORT_SYMBOL_GPL drivers/usb/gadget/function/u_serial 0x60db48f5 gserial_get_console +EXPORT_SYMBOL_GPL drivers/usb/gadget/function/u_serial 0x60ea48a0 gs_free_req +EXPORT_SYMBOL_GPL drivers/usb/gadget/function/u_serial 0xab28e552 gserial_suspend +EXPORT_SYMBOL_GPL drivers/usb/gadget/function/u_serial 0xb6652875 gserial_free_line +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 0xef894cb5 gserial_disconnect +EXPORT_SYMBOL_GPL drivers/usb/gadget/function/u_serial 0xef92cad1 gserial_connect +EXPORT_SYMBOL_GPL drivers/usb/gadget/function/usb_f_fs 0x57f469c5 ffs_lock +EXPORT_SYMBOL_GPL drivers/usb/gadget/function/usb_f_fs 0xb2256738 ffs_single_dev +EXPORT_SYMBOL_GPL drivers/usb/gadget/function/usb_f_fs 0xdf0ba9a5 ffs_name_dev +EXPORT_SYMBOL_GPL drivers/usb/gadget/function/usb_f_mass_storage 0x025acfc4 fsg_common_remove_lun +EXPORT_SYMBOL_GPL drivers/usb/gadget/function/usb_f_mass_storage 0x129d8137 fsg_store_cdrom +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 0x1aed426b fsg_lun_open +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 0x1d5ebc23 fsg_store_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 0x330a49f6 fsg_show_inquiry_string +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 0x423845e4 fsg_ss_bulk_in_comp_desc +EXPORT_SYMBOL_GPL drivers/usb/gadget/function/usb_f_mass_storage 0x4b61d59d fsg_store_inquiry_string +EXPORT_SYMBOL_GPL drivers/usb/gadget/function/usb_f_mass_storage 0x4c1bfe3e 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 0x57adba76 fsg_store_nofua +EXPORT_SYMBOL_GPL drivers/usb/gadget/function/usb_f_mass_storage 0x67733366 fsg_lun_close +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 0x7173df64 fsg_show_ro +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 0x857b6dc2 fsg_hs_function +EXPORT_SYMBOL_GPL drivers/usb/gadget/function/usb_f_mass_storage 0x895e68bf fsg_store_removable +EXPORT_SYMBOL_GPL drivers/usb/gadget/function/usb_f_mass_storage 0x89e2d038 fsg_show_cdrom +EXPORT_SYMBOL_GPL drivers/usb/gadget/function/usb_f_mass_storage 0x92f75401 fsg_lun_fsync_sub +EXPORT_SYMBOL_GPL drivers/usb/gadget/function/usb_f_mass_storage 0x930ee28e fsg_store_file +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 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 0xa6e8b9c1 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 0xb2080545 fsg_show_removable +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 0xc8e7cec4 fsg_common_set_cdev +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 0xf4efc0c8 fsg_ss_bulk_out_desc +EXPORT_SYMBOL_GPL drivers/usb/gadget/function/usb_f_rndis 0x0a1fb7ec rndis_set_param_vendor +EXPORT_SYMBOL_GPL drivers/usb/gadget/function/usb_f_rndis 0x0c6a601a rndis_rm_hdr +EXPORT_SYMBOL_GPL drivers/usb/gadget/function/usb_f_rndis 0x1cb35020 rndis_add_hdr +EXPORT_SYMBOL_GPL drivers/usb/gadget/function/usb_f_rndis 0x3adf7321 rndis_set_param_dev +EXPORT_SYMBOL_GPL drivers/usb/gadget/function/usb_f_rndis 0x3c66069b rndis_signal_disconnect +EXPORT_SYMBOL_GPL drivers/usb/gadget/function/usb_f_rndis 0x56022558 rndis_borrow_net +EXPORT_SYMBOL_GPL drivers/usb/gadget/function/usb_f_rndis 0x6738f9ed rndis_uninit +EXPORT_SYMBOL_GPL drivers/usb/gadget/function/usb_f_rndis 0x69f258b6 rndis_set_param_medium +EXPORT_SYMBOL_GPL drivers/usb/gadget/function/usb_f_rndis 0x7228d2a2 rndis_set_host_mac +EXPORT_SYMBOL_GPL drivers/usb/gadget/function/usb_f_rndis 0x7cf927b1 rndis_signal_connect +EXPORT_SYMBOL_GPL drivers/usb/gadget/function/usb_f_rndis 0x98fca3e2 rndis_register +EXPORT_SYMBOL_GPL drivers/usb/gadget/function/usb_f_rndis 0xa1b04d66 rndis_deregister +EXPORT_SYMBOL_GPL drivers/usb/gadget/function/usb_f_rndis 0xa31247b1 rndis_free_response +EXPORT_SYMBOL_GPL drivers/usb/gadget/function/usb_f_rndis 0xca82fc11 rndis_msg_parser +EXPORT_SYMBOL_GPL drivers/usb/gadget/function/usb_f_rndis 0xe9b91154 rndis_get_next_response +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0x0c589aba usb_validate_langid +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0x0cb7e477 usb_ep_autoconfig_release +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0x11a2d98a usb_string_ids_tab +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0x130cadd5 usb_remove_function +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0x2e09263f usb_copy_descriptors +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0x317a4860 usb_interface_id +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0x32376ffc usb_add_config +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0x3a8ee90e usb_put_function_instance +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0x3d7819f7 usb_assign_descriptors +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0x43fce25d config_ep_by_speed +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0x44794ed9 usb_composite_unregister +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0x46f7dc6d usb_get_function +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0x4beb505d usb_gadget_get_string +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0x4d04b9d0 usb_composite_setup_continue +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0x4ec08bfd usb_ep_autoconfig +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0x547a6e02 usb_get_function_instance +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0x59fdb57f config_ep_by_speed_and_alt +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0x5a03f5d9 usb_otg_descriptor_alloc +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0x67dacbc0 usb_put_function +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0x6ce539a8 usb_ep_autoconfig_reset +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0x749e12d6 usb_otg_descriptor_init +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0x7809b22b usb_function_activate +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0x8f3de421 usb_string_id +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0x90ba750b usb_function_unregister +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0x9752e1ca usb_free_all_descriptors +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0xacff1049 usb_function_deactivate +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0xaf600777 usb_add_function +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0xb775db55 alloc_ep_req +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0xc22046db unregister_gadget_item +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0xcf085440 usb_composite_overwrite_options +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0xd2ea2134 usb_descriptor_fillbuf +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0xd9efe690 usb_composite_probe +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0xdd05d2ab usb_function_register +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0xe32d41df usb_gstrings_attach +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0xee6662f4 usb_add_config_only +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0xf474a207 usb_gadget_config_buf +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0xfe676493 usb_ep_autoconfig_ss +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0xfe9c0b26 usb_string_ids_n +EXPORT_SYMBOL_GPL drivers/usb/gadget/udc/snps_udc_core 0x449072f2 empty_req_queue +EXPORT_SYMBOL_GPL drivers/usb/gadget/udc/snps_udc_core 0x4f6bb8f0 gadget_release +EXPORT_SYMBOL_GPL drivers/usb/gadget/udc/snps_udc_core 0x5d01d078 udc_irq +EXPORT_SYMBOL_GPL drivers/usb/gadget/udc/snps_udc_core 0x619203d0 udc_remove +EXPORT_SYMBOL_GPL drivers/usb/gadget/udc/snps_udc_core 0x6a5aa6ff udc_mask_unused_interrupts +EXPORT_SYMBOL_GPL drivers/usb/gadget/udc/snps_udc_core 0x7b3f6ba7 init_dma_pools +EXPORT_SYMBOL_GPL drivers/usb/gadget/udc/snps_udc_core 0x7d53d29d udc_basic_init +EXPORT_SYMBOL_GPL drivers/usb/gadget/udc/snps_udc_core 0xad932e69 udc_enable_dev_setup_interrupts +EXPORT_SYMBOL_GPL drivers/usb/gadget/udc/snps_udc_core 0xb8a42e01 udc_probe +EXPORT_SYMBOL_GPL drivers/usb/gadget/udc/snps_udc_core 0xe7f22f55 free_dma_pools +EXPORT_SYMBOL_GPL drivers/usb/gadget/udc/udc-core 0x013bde2a usb_gadget_map_request +EXPORT_SYMBOL_GPL drivers/usb/gadget/udc/udc-core 0x01b12bfb usb_ep_free_request +EXPORT_SYMBOL_GPL drivers/usb/gadget/udc/udc-core 0x01e93902 usb_gadget_ep_match_desc +EXPORT_SYMBOL_GPL drivers/usb/gadget/udc/udc-core 0x09de4a80 gadget_find_ep_by_name +EXPORT_SYMBOL_GPL drivers/usb/gadget/udc/udc-core 0x0a8c3b4b usb_ep_set_halt +EXPORT_SYMBOL_GPL drivers/usb/gadget/udc/udc-core 0x0acfe2e7 usb_ep_set_wedge +EXPORT_SYMBOL_GPL drivers/usb/gadget/udc/udc-core 0x0d90d784 usb_ep_fifo_flush +EXPORT_SYMBOL_GPL drivers/usb/gadget/udc/udc-core 0x140e2bfb usb_add_gadget_udc +EXPORT_SYMBOL_GPL drivers/usb/gadget/udc/udc-core 0x37a96b1d usb_gadget_connect +EXPORT_SYMBOL_GPL drivers/usb/gadget/udc/udc-core 0x3a03cf96 usb_udc_vbus_handler +EXPORT_SYMBOL_GPL drivers/usb/gadget/udc/udc-core 0x3d977c09 usb_gadget_deactivate +EXPORT_SYMBOL_GPL drivers/usb/gadget/udc/udc-core 0x45c8eb94 usb_gadget_unmap_request_by_dev +EXPORT_SYMBOL_GPL drivers/usb/gadget/udc/udc-core 0x49d9f030 usb_ep_fifo_status +EXPORT_SYMBOL_GPL drivers/usb/gadget/udc/udc-core 0x49edd634 usb_gadget_udc_reset +EXPORT_SYMBOL_GPL drivers/usb/gadget/udc/udc-core 0x506ab3a9 usb_ep_queue +EXPORT_SYMBOL_GPL drivers/usb/gadget/udc/udc-core 0x50b88f41 usb_get_gadget_udc_name +EXPORT_SYMBOL_GPL drivers/usb/gadget/udc/udc-core 0x54df293c usb_gadget_set_selfpowered +EXPORT_SYMBOL_GPL drivers/usb/gadget/udc/udc-core 0x5fc294ef usb_ep_clear_halt +EXPORT_SYMBOL_GPL drivers/usb/gadget/udc/udc-core 0x790d30a2 usb_gadget_wakeup +EXPORT_SYMBOL_GPL drivers/usb/gadget/udc/udc-core 0x7a41b9f2 usb_ep_set_maxpacket_limit +EXPORT_SYMBOL_GPL drivers/usb/gadget/udc/udc-core 0x7be89624 usb_gadget_giveback_request +EXPORT_SYMBOL_GPL drivers/usb/gadget/udc/udc-core 0x7e5c8ce3 usb_gadget_vbus_draw +EXPORT_SYMBOL_GPL drivers/usb/gadget/udc/udc-core 0x7fd1d5a5 usb_gadget_set_state +EXPORT_SYMBOL_GPL drivers/usb/gadget/udc/udc-core 0x825414c5 usb_gadget_vbus_disconnect +EXPORT_SYMBOL_GPL drivers/usb/gadget/udc/udc-core 0x882077d5 usb_ep_dequeue +EXPORT_SYMBOL_GPL drivers/usb/gadget/udc/udc-core 0x8a1b718c usb_gadget_probe_driver +EXPORT_SYMBOL_GPL drivers/usb/gadget/udc/udc-core 0x90f4d238 usb_add_gadget_udc_release +EXPORT_SYMBOL_GPL drivers/usb/gadget/udc/udc-core 0x92f30d24 usb_gadget_map_request_by_dev +EXPORT_SYMBOL_GPL drivers/usb/gadget/udc/udc-core 0x9e0931bc usb_gadget_disconnect +EXPORT_SYMBOL_GPL drivers/usb/gadget/udc/udc-core 0x9eb52803 usb_ep_disable +EXPORT_SYMBOL_GPL drivers/usb/gadget/udc/udc-core 0xa9e74462 usb_ep_alloc_request +EXPORT_SYMBOL_GPL drivers/usb/gadget/udc/udc-core 0xaf201fa6 usb_ep_enable +EXPORT_SYMBOL_GPL drivers/usb/gadget/udc/udc-core 0xc54bf23e usb_gadget_unregister_driver +EXPORT_SYMBOL_GPL drivers/usb/gadget/udc/udc-core 0xc8a7efd1 usb_del_gadget_udc +EXPORT_SYMBOL_GPL drivers/usb/gadget/udc/udc-core 0xc9356e90 usb_gadget_activate +EXPORT_SYMBOL_GPL drivers/usb/gadget/udc/udc-core 0xcd3c51e6 usb_gadget_vbus_connect +EXPORT_SYMBOL_GPL drivers/usb/gadget/udc/udc-core 0xd26ed70d usb_gadget_unmap_request +EXPORT_SYMBOL_GPL drivers/usb/gadget/udc/udc-core 0xd5cf5d84 usb_gadget_clear_selfpowered +EXPORT_SYMBOL_GPL drivers/usb/gadget/udc/udc-core 0xf82f3e3e usb_gadget_frame_number +EXPORT_SYMBOL_GPL drivers/usb/host/xhci-pci-renesas 0x87be9f84 renesas_xhci_check_request_fw +EXPORT_SYMBOL_GPL drivers/usb/host/xhci-pci-renesas 0xf7e57e5b renesas_xhci_pci_exit +EXPORT_SYMBOL_GPL drivers/usb/misc/ezusb 0x0d4d475b ezusb_fx1_set_reset +EXPORT_SYMBOL_GPL drivers/usb/misc/ezusb 0x47a1f390 ezusb_fx1_ihex_firmware_download +EXPORT_SYMBOL_GPL drivers/usb/misc/ftdi-elan 0x062e6491 usb_ftdi_elan_edset_empty +EXPORT_SYMBOL_GPL drivers/usb/misc/ftdi-elan 0x16ebf823 ftdi_elan_gone_away +EXPORT_SYMBOL_GPL drivers/usb/misc/ftdi-elan 0x2c520ea3 usb_ftdi_elan_edset_setup +EXPORT_SYMBOL_GPL drivers/usb/misc/ftdi-elan 0x36126a5e usb_ftdi_elan_edset_input +EXPORT_SYMBOL_GPL drivers/usb/misc/ftdi-elan 0x7a15b5e7 usb_ftdi_elan_edset_output +EXPORT_SYMBOL_GPL drivers/usb/misc/ftdi-elan 0x8710fe8f usb_ftdi_elan_edset_single +EXPORT_SYMBOL_GPL drivers/usb/misc/ftdi-elan 0xcab9ba09 usb_ftdi_elan_read_pcimem +EXPORT_SYMBOL_GPL drivers/usb/misc/ftdi-elan 0xe04c3a06 usb_ftdi_elan_edset_flush +EXPORT_SYMBOL_GPL drivers/usb/misc/ftdi-elan 0xf1e5b435 usb_ftdi_elan_write_pcimem +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 0x500e5e69 musb_get_mode +EXPORT_SYMBOL_GPL drivers/usb/musb/musb_hdrc 0x669594ad musb_clearw +EXPORT_SYMBOL_GPL drivers/usb/musb/musb_hdrc 0x6af8c6dc musb_writel +EXPORT_SYMBOL_GPL drivers/usb/musb/musb_hdrc 0x70ad650c musb_queue_resume_work +EXPORT_SYMBOL_GPL drivers/usb/musb/musb_hdrc 0x719a5e41 musb_readw +EXPORT_SYMBOL_GPL drivers/usb/musb/musb_hdrc 0x93a9b249 musb_root_disconnect +EXPORT_SYMBOL_GPL drivers/usb/musb/musb_hdrc 0xade3e56c musb_writew +EXPORT_SYMBOL_GPL drivers/usb/musb/musb_hdrc 0xc7eeb988 musb_set_peripheral +EXPORT_SYMBOL_GPL drivers/usb/musb/musb_hdrc 0xd10f6c77 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/musb/musb_hdrc 0xfbdf6e96 musb_set_host +EXPORT_SYMBOL_GPL drivers/usb/phy/phy-generic 0x0ed4cdeb usb_gen_phy_shutdown +EXPORT_SYMBOL_GPL drivers/usb/phy/phy-generic 0x1564217b usb_phy_generic_register +EXPORT_SYMBOL_GPL drivers/usb/phy/phy-generic 0xd2037fb2 usb_gen_phy_init +EXPORT_SYMBOL_GPL drivers/usb/phy/phy-generic 0xecea546b usb_phy_gen_create_phy +EXPORT_SYMBOL_GPL drivers/usb/phy/phy-generic 0xf347f495 usb_phy_generic_unregister +EXPORT_SYMBOL_GPL drivers/usb/phy/phy-isp1301 0xe0f80544 isp1301_get_client +EXPORT_SYMBOL_GPL drivers/usb/roles/roles 0x08ced1a7 usb_role_switch_get +EXPORT_SYMBOL_GPL drivers/usb/roles/roles 0x1690b503 usb_role_switch_get_drvdata +EXPORT_SYMBOL_GPL drivers/usb/roles/roles 0x2882d40e usb_role_switch_unregister +EXPORT_SYMBOL_GPL drivers/usb/roles/roles 0x4b468e22 usb_role_switch_register +EXPORT_SYMBOL_GPL drivers/usb/roles/roles 0x51a348cc usb_role_switch_set_drvdata +EXPORT_SYMBOL_GPL drivers/usb/roles/roles 0xc9fd634a usb_role_switch_put +EXPORT_SYMBOL_GPL drivers/usb/roles/roles 0xd5474690 usb_role_switch_set_role +EXPORT_SYMBOL_GPL drivers/usb/roles/roles 0xddb29a0f usb_role_switch_find_by_fwnode +EXPORT_SYMBOL_GPL drivers/usb/roles/roles 0xdf92739f fwnode_usb_role_switch_get +EXPORT_SYMBOL_GPL drivers/usb/roles/roles 0xff42c374 usb_role_switch_get_role +EXPORT_SYMBOL_GPL drivers/usb/serial/usb_wwan 0x64e16dde usb_wwan_port_probe +EXPORT_SYMBOL_GPL drivers/usb/serial/usbserial 0x06b30a28 usb_serial_generic_unthrottle +EXPORT_SYMBOL_GPL drivers/usb/serial/usbserial 0x1e01fb55 usb_serial_generic_write_start +EXPORT_SYMBOL_GPL drivers/usb/serial/usbserial 0x288ed3eb usb_serial_handle_dcd_change +EXPORT_SYMBOL_GPL drivers/usb/serial/usbserial 0x349a75bc usb_serial_register_drivers +EXPORT_SYMBOL_GPL drivers/usb/serial/usbserial 0x45cc7387 usb_serial_generic_open +EXPORT_SYMBOL_GPL drivers/usb/serial/usbserial 0x6b2c13bd usb_serial_deregister_drivers +EXPORT_SYMBOL_GPL drivers/usb/serial/usbserial 0x6dcbbcbf usb_serial_generic_close +EXPORT_SYMBOL_GPL drivers/usb/serial/usbserial 0x72e6ab01 usb_serial_generic_write +EXPORT_SYMBOL_GPL drivers/usb/serial/usbserial 0x91520395 usb_serial_port_softint +EXPORT_SYMBOL_GPL drivers/usb/serial/usbserial 0x9a5f855a usb_serial_generic_submit_read_urbs +EXPORT_SYMBOL_GPL drivers/usb/serial/usbserial 0x9b3d51fb usb_serial_generic_write_bulk_callback +EXPORT_SYMBOL_GPL drivers/usb/serial/usbserial 0xa5983b00 usb_serial_handle_sysrq_char +EXPORT_SYMBOL_GPL drivers/usb/serial/usbserial 0xaf39ef5e usb_serial_handle_break +EXPORT_SYMBOL_GPL drivers/usb/serial/usbserial 0xb80bf0ba usb_serial_generic_chars_in_buffer +EXPORT_SYMBOL_GPL drivers/usb/serial/usbserial 0xbbcd497b usb_serial_generic_tiocmiwait +EXPORT_SYMBOL_GPL drivers/usb/serial/usbserial 0xbcc7534e usb_serial_generic_resume +EXPORT_SYMBOL_GPL drivers/usb/serial/usbserial 0xbcf91622 usb_serial_generic_read_bulk_callback +EXPORT_SYMBOL_GPL drivers/usb/serial/usbserial 0xc695c38c usb_serial_generic_get_icount +EXPORT_SYMBOL_GPL drivers/usb/serial/usbserial 0xd48e7ce4 usb_serial_generic_process_read_urb +EXPORT_SYMBOL_GPL drivers/usb/serial/usbserial 0xe39f8ff1 usb_serial_generic_wait_until_sent +EXPORT_SYMBOL_GPL drivers/usb/serial/usbserial 0xe81b48cf usb_serial_generic_throttle +EXPORT_SYMBOL_GPL drivers/usb/typec/altmodes/typec_displayport 0x1e23d8cf dp_altmode_probe +EXPORT_SYMBOL_GPL drivers/usb/typec/altmodes/typec_displayport 0x3d76250c dp_altmode_remove +EXPORT_SYMBOL_GPL drivers/usb/typec/tcpm/tcpci 0x1811cea2 tcpci_register_port +EXPORT_SYMBOL_GPL drivers/usb/typec/tcpm/tcpci 0x6f497a3c tcpci_irq +EXPORT_SYMBOL_GPL drivers/usb/typec/tcpm/tcpci 0xc529e32e tcpci_unregister_port +EXPORT_SYMBOL_GPL drivers/usb/typec/tcpm/tcpm 0x1195bc4a tcpm_register_port +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 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 0xea220941 tcpm_tcpc_reset +EXPORT_SYMBOL_GPL drivers/usb/typec/typec 0x00a44b38 typec_altmode_put_plug +EXPORT_SYMBOL_GPL drivers/usb/typec/typec 0x03608f2a typec_cable_set_identity +EXPORT_SYMBOL_GPL drivers/usb/typec/typec 0x1075ae52 typec_mux_register +EXPORT_SYMBOL_GPL drivers/usb/typec/typec 0x1b90ac2b typec_unregister_plug +EXPORT_SYMBOL_GPL drivers/usb/typec/typec 0x1d615c7f fwnode_typec_switch_get +EXPORT_SYMBOL_GPL drivers/usb/typec/typec 0x23d11cb5 typec_altmode_attention +EXPORT_SYMBOL_GPL drivers/usb/typec/typec 0x2c4b45c2 typec_cable_is_active +EXPORT_SYMBOL_GPL drivers/usb/typec/typec 0x2d1e301d typec_find_power_role +EXPORT_SYMBOL_GPL drivers/usb/typec/typec 0x2f1a5983 typec_switch_put +EXPORT_SYMBOL_GPL drivers/usb/typec/typec 0x31c0fd7c typec_mux_put +EXPORT_SYMBOL_GPL drivers/usb/typec/typec 0x33fd62de typec_set_pwr_opmode +EXPORT_SYMBOL_GPL drivers/usb/typec/typec 0x34ecae2d typec_mux_unregister +EXPORT_SYMBOL_GPL drivers/usb/typec/typec 0x36852716 typec_set_orientation +EXPORT_SYMBOL_GPL drivers/usb/typec/typec 0x3c7f983d typec_altmode_unregister_driver +EXPORT_SYMBOL_GPL drivers/usb/typec/typec 0x3ee814fd typec_altmode_get_partner +EXPORT_SYMBOL_GPL drivers/usb/typec/typec 0x426285ea typec_unregister_cable +EXPORT_SYMBOL_GPL drivers/usb/typec/typec 0x493159cc typec_partner_set_identity +EXPORT_SYMBOL_GPL drivers/usb/typec/typec 0x4aaf4de5 typec_cable_put +EXPORT_SYMBOL_GPL drivers/usb/typec/typec 0x4ac48924 __typec_altmode_register_driver +EXPORT_SYMBOL_GPL drivers/usb/typec/typec 0x4c4c1fc3 fwnode_typec_mux_get +EXPORT_SYMBOL_GPL drivers/usb/typec/typec 0x54c93810 typec_set_mode +EXPORT_SYMBOL_GPL drivers/usb/typec/typec 0x57b3c363 typec_altmode2port +EXPORT_SYMBOL_GPL drivers/usb/typec/typec 0x5869adb2 typec_get_orientation +EXPORT_SYMBOL_GPL drivers/usb/typec/typec 0x5ac3a632 typec_set_vconn_role +EXPORT_SYMBOL_GPL drivers/usb/typec/typec 0x5f2c6469 typec_set_data_role +EXPORT_SYMBOL_GPL drivers/usb/typec/typec 0x614740d9 typec_register_partner +EXPORT_SYMBOL_GPL drivers/usb/typec/typec 0x62878d7d typec_mux_set_drvdata +EXPORT_SYMBOL_GPL drivers/usb/typec/typec 0x662a8f78 typec_switch_unregister +EXPORT_SYMBOL_GPL drivers/usb/typec/typec 0x6654109d typec_altmode_notify +EXPORT_SYMBOL_GPL drivers/usb/typec/typec 0x6e6bf7d4 typec_partner_register_altmode +EXPORT_SYMBOL_GPL drivers/usb/typec/typec 0x6fb7a669 typec_match_altmode +EXPORT_SYMBOL_GPL drivers/usb/typec/typec 0x734a9c4d typec_get_drvdata +EXPORT_SYMBOL_GPL drivers/usb/typec/typec 0x7e1f9a0a typec_altmode_exit +EXPORT_SYMBOL_GPL drivers/usb/typec/typec 0x7e2998e7 typec_set_pwr_role +EXPORT_SYMBOL_GPL drivers/usb/typec/typec 0x834e3fb6 typec_port_register_altmode +EXPORT_SYMBOL_GPL drivers/usb/typec/typec 0x9049491e typec_find_port_data_role +EXPORT_SYMBOL_GPL drivers/usb/typec/typec 0x968054a5 typec_altmode_vdm +EXPORT_SYMBOL_GPL drivers/usb/typec/typec 0x97d7f55d typec_mux_set +EXPORT_SYMBOL_GPL drivers/usb/typec/typec 0x9cad8da6 typec_unregister_partner +EXPORT_SYMBOL_GPL drivers/usb/typec/typec 0xa254de98 typec_find_orientation +EXPORT_SYMBOL_GPL drivers/usb/typec/typec 0xa48ed56f typec_switch_set +EXPORT_SYMBOL_GPL drivers/usb/typec/typec 0xb0fb586d typec_switch_set_drvdata +EXPORT_SYMBOL_GPL drivers/usb/typec/typec 0xbad23d52 typec_switch_register +EXPORT_SYMBOL_GPL drivers/usb/typec/typec 0xbf5ee804 typec_mux_get_drvdata +EXPORT_SYMBOL_GPL drivers/usb/typec/typec 0xc7a907e3 typec_altmode_get_plug +EXPORT_SYMBOL_GPL drivers/usb/typec/typec 0xc7fb3b03 typec_switch_get_drvdata +EXPORT_SYMBOL_GPL drivers/usb/typec/typec 0xd1889e56 typec_plug_register_altmode +EXPORT_SYMBOL_GPL drivers/usb/typec/typec 0xda0a9c4c typec_unregister_port +EXPORT_SYMBOL_GPL drivers/usb/typec/typec 0xde83e38a typec_cable_get +EXPORT_SYMBOL_GPL drivers/usb/typec/typec 0xe2c3b700 typec_register_cable +EXPORT_SYMBOL_GPL drivers/usb/typec/typec 0xe76fa5f2 typec_register_port +EXPORT_SYMBOL_GPL drivers/usb/typec/typec 0xeafc1eb8 typec_find_port_power_role +EXPORT_SYMBOL_GPL drivers/usb/typec/typec 0xedf98318 typec_unregister_altmode +EXPORT_SYMBOL_GPL drivers/usb/typec/typec 0xee19f4b1 typec_register_plug +EXPORT_SYMBOL_GPL drivers/usb/typec/typec 0xeef0a948 typec_altmode_update_active +EXPORT_SYMBOL_GPL drivers/usb/typec/typec 0xfe41a381 typec_altmode_enter +EXPORT_SYMBOL_GPL drivers/usb/typec/ucsi/typec_ucsi 0x0a86b2b9 ucsi_register +EXPORT_SYMBOL_GPL drivers/usb/typec/ucsi/typec_ucsi 0x162ecb1f ucsi_get_drvdata +EXPORT_SYMBOL_GPL drivers/usb/typec/ucsi/typec_ucsi 0x1b084d4c ucsi_resume +EXPORT_SYMBOL_GPL drivers/usb/typec/ucsi/typec_ucsi 0x1c2db12f ucsi_connector_change +EXPORT_SYMBOL_GPL drivers/usb/typec/ucsi/typec_ucsi 0x2c602cf7 ucsi_unregister +EXPORT_SYMBOL_GPL drivers/usb/typec/ucsi/typec_ucsi 0x66bb9864 ucsi_init +EXPORT_SYMBOL_GPL drivers/usb/typec/ucsi/typec_ucsi 0x8f78bb2b ucsi_send_command +EXPORT_SYMBOL_GPL drivers/usb/typec/ucsi/typec_ucsi 0x9ff3bfb5 ucsi_destroy +EXPORT_SYMBOL_GPL drivers/usb/typec/ucsi/typec_ucsi 0xdb5136d1 ucsi_set_drvdata +EXPORT_SYMBOL_GPL drivers/usb/typec/ucsi/typec_ucsi 0xf5589552 ucsi_create +EXPORT_SYMBOL_GPL drivers/usb/usbip/usbip-core 0x02d08336 usbip_event_add +EXPORT_SYMBOL_GPL drivers/usb/usbip/usbip-core 0x14b40937 usbip_pack_pdu +EXPORT_SYMBOL_GPL drivers/usb/usbip/usbip-core 0x1f905a73 usbip_recv +EXPORT_SYMBOL_GPL drivers/usb/usbip/usbip-core 0x5bd258cc usbip_pad_iso +EXPORT_SYMBOL_GPL drivers/usb/usbip/usbip-core 0x6105ef8e usbip_start_eh +EXPORT_SYMBOL_GPL drivers/usb/usbip/usbip-core 0x70703944 usbip_alloc_iso_desc_pdu +EXPORT_SYMBOL_GPL drivers/usb/usbip/usbip-core 0x76d18e25 dev_attr_usbip_debug +EXPORT_SYMBOL_GPL drivers/usb/usbip/usbip-core 0x78b72f44 usbip_debug_flag +EXPORT_SYMBOL_GPL drivers/usb/usbip/usbip-core 0x83329abf usbip_event_happened +EXPORT_SYMBOL_GPL drivers/usb/usbip/usbip-core 0xb1b53611 usbip_recv_iso +EXPORT_SYMBOL_GPL drivers/usb/usbip/usbip-core 0xc1da8c1d 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 0xeb381d1b usbip_stop_eh +EXPORT_SYMBOL_GPL drivers/usb/usbip/usbip-core 0xefd5a120 usbip_recv_xbuff +EXPORT_SYMBOL_GPL drivers/usb/usbip/usbip-core 0xf357dffc usbip_in_eh +EXPORT_SYMBOL_GPL drivers/vdpa/vdpa 0x27070cbe __vdpa_register_driver +EXPORT_SYMBOL_GPL drivers/vdpa/vdpa 0x360f580b vdpa_unregister_driver +EXPORT_SYMBOL_GPL drivers/vdpa/vdpa 0x7bfc1463 __vdpa_alloc_device +EXPORT_SYMBOL_GPL drivers/vdpa/vdpa 0xd00c6e28 vdpa_register_device +EXPORT_SYMBOL_GPL drivers/vdpa/vdpa 0xf7984ad9 vdpa_unregister_device +EXPORT_SYMBOL_GPL drivers/vfio/mdev/mdev 0x57a79704 mdev_bus_type +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x01836e4f vhost_log_access_ok +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x0fb0832c vhost_dev_stop +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x0fd523ae vhost_work_flush +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x1619d9d9 vhost_dev_set_owner +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x19895c11 vhost_add_used_and_signal +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x1a2f975a vhost_enqueue_msg +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x230e8a21 vhost_vq_avail_empty +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x23e04465 vhost_dev_ioctl +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x277817ee vhost_disable_notify +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x27c005d7 vhost_dequeue_msg +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x2c323df0 vhost_dev_reset_owner +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x3e982dbc vhost_poll_flush +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x493fb767 vhost_log_write +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x51f1f277 vhost_has_work +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x5d5b223e vhost_work_queue +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x63de21e4 vhost_vq_access_ok +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x6556e21f vhost_vring_ioctl +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x69c2c828 vhost_poll_queue +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x6ddf0618 vhost_vq_init_access +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x6e3d4ff7 vhost_get_vq_desc +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x6ec348d8 vhost_discard_vq_desc +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x75ae1224 vhost_dev_check_owner +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x768ccb41 vhost_exceeds_weight +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x77624b0c vhost_chr_read_iter +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x77e9385b vhost_add_used_n +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x833b6d8e vhost_add_used +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x89b709cd vhost_vq_is_setup +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x8f4277ea vhost_init_device_iotlb +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0xa0d37a7d vhost_enable_notify +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0xa221ffb1 vhost_dev_cleanup +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0xa8ec1703 vhost_poll_init +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0xa909cfc5 vhost_work_init +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0xadf7631c vq_meta_prefetch +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0xcf3d8fd7 vhost_dev_has_owner +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0xd35a4c4d vhost_dev_init +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0xdc19309d vhost_add_used_and_signal_n +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0xeafc673c vhost_poll_stop +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0xf7f82575 vhost_poll_start +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0xf8c656eb vhost_signal +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0xfd2b3e45 vhost_dev_reset_owner_prepare +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0xfd660f25 vhost_new_msg +EXPORT_SYMBOL_GPL drivers/vhost/vhost_iotlb 0x38ff875f vhost_iotlb_add_range +EXPORT_SYMBOL_GPL drivers/vhost/vhost_iotlb 0x514d0e6a vhost_iotlb_itree_first +EXPORT_SYMBOL_GPL drivers/vhost/vhost_iotlb 0x5f4e5249 vhost_iotlb_reset +EXPORT_SYMBOL_GPL drivers/vhost/vhost_iotlb 0x6bec0e66 vhost_iotlb_del_range +EXPORT_SYMBOL_GPL drivers/vhost/vhost_iotlb 0x7579334f vhost_iotlb_itree_next +EXPORT_SYMBOL_GPL drivers/vhost/vhost_iotlb 0xa24517eb vhost_iotlb_free +EXPORT_SYMBOL_GPL drivers/vhost/vhost_iotlb 0xad111707 vhost_iotlb_map_free +EXPORT_SYMBOL_GPL drivers/vhost/vhost_iotlb 0xc577832d vhost_iotlb_alloc +EXPORT_SYMBOL_GPL drivers/video/backlight/apple_bl 0x2c63e051 apple_bl_register +EXPORT_SYMBOL_GPL drivers/video/backlight/apple_bl 0xdab0f892 apple_bl_unregister +EXPORT_SYMBOL_GPL drivers/video/backlight/ili9320 0x17e37975 ili9320_shutdown +EXPORT_SYMBOL_GPL drivers/video/backlight/ili9320 0x1e6ef9d2 ili9320_resume +EXPORT_SYMBOL_GPL drivers/video/backlight/ili9320 0x43735a4e ili9320_write +EXPORT_SYMBOL_GPL drivers/video/backlight/ili9320 0xc34eefe7 ili9320_remove +EXPORT_SYMBOL_GPL drivers/video/backlight/ili9320 0xe749820d ili9320_write_regs +EXPORT_SYMBOL_GPL drivers/video/backlight/ili9320 0xf4620b27 ili9320_probe_spi +EXPORT_SYMBOL_GPL drivers/video/backlight/ili9320 0xfa2e2bc4 ili9320_suspend +EXPORT_SYMBOL_GPL drivers/video/fbdev/core/fb_ddc 0x5e6a412c fb_ddc_read +EXPORT_SYMBOL_GPL drivers/video/fbdev/core/fb_sys_fops 0x03ee4e79 fb_sys_read +EXPORT_SYMBOL_GPL drivers/video/fbdev/core/fb_sys_fops 0x453b73d2 fb_sys_write +EXPORT_SYMBOL_GPL drivers/video/fbdev/sis/sisfb 0x256ebd68 sis_free_new +EXPORT_SYMBOL_GPL drivers/video/fbdev/sis/sisfb 0x4c76efbd 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 0x0e1cee08 viafb_dma_copy_out_sg +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 0x840ec0e8 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 0xfff2dfd2 viafb_gpio_lookup +EXPORT_SYMBOL_GPL drivers/visorbus/visorbus 0x0e338292 visorchannel_signalempty +EXPORT_SYMBOL_GPL drivers/visorbus/visorbus 0x32dc0c67 visorbus_write_channel +EXPORT_SYMBOL_GPL drivers/visorbus/visorbus 0x4aa110a7 visorbus_enable_channel_interrupts +EXPORT_SYMBOL_GPL drivers/visorbus/visorbus 0x4de03230 visorchannel_signalinsert +EXPORT_SYMBOL_GPL drivers/visorbus/visorbus 0x56401853 visorchannel_signalremove +EXPORT_SYMBOL_GPL drivers/visorbus/visorbus 0x70c73975 visorbus_register_visor_driver +EXPORT_SYMBOL_GPL drivers/visorbus/visorbus 0xc455c651 visorchannel_get_guid +EXPORT_SYMBOL_GPL drivers/visorbus/visorbus 0xc7bd40f7 visorbus_unregister_visor_driver +EXPORT_SYMBOL_GPL drivers/visorbus/visorbus 0xd98cb067 visorbus_read_channel +EXPORT_SYMBOL_GPL drivers/visorbus/visorbus 0xe19a743f visorbus_disable_channel_interrupts +EXPORT_SYMBOL_GPL drivers/w1/wire 0x15bb5d36 w1_reset_select_slave +EXPORT_SYMBOL_GPL drivers/w1/wire 0x2208ff28 w1_write_8 +EXPORT_SYMBOL_GPL drivers/w1/wire 0x2dcb69bc w1_reset_bus +EXPORT_SYMBOL_GPL drivers/w1/wire 0x42cf7832 w1_read_8 +EXPORT_SYMBOL_GPL drivers/w1/wire 0x4f7ea0d0 w1_read_block +EXPORT_SYMBOL_GPL drivers/w1/wire 0x63757e92 w1_calc_crc8 +EXPORT_SYMBOL_GPL drivers/w1/wire 0x7993c671 w1_triplet +EXPORT_SYMBOL_GPL drivers/w1/wire 0x8752ec60 w1_next_pullup +EXPORT_SYMBOL_GPL drivers/w1/wire 0x9b04b034 w1_write_block +EXPORT_SYMBOL_GPL drivers/w1/wire 0x9c3972c9 w1_touch_block +EXPORT_SYMBOL_GPL drivers/w1/wire 0xc9b6123f w1_reset_resume_command +EXPORT_SYMBOL_GPL drivers/w1/wire 0xd2bb240a w1_touch_bit +EXPORT_SYMBOL_GPL drivers/xen/xen-front-pgdir-shbuf 0x12a5bd78 xen_front_pgdir_shbuf_unmap +EXPORT_SYMBOL_GPL drivers/xen/xen-front-pgdir-shbuf 0x1d831151 xen_front_pgdir_shbuf_alloc +EXPORT_SYMBOL_GPL drivers/xen/xen-front-pgdir-shbuf 0x4258d8c7 xen_front_pgdir_shbuf_get_dir_start +EXPORT_SYMBOL_GPL drivers/xen/xen-front-pgdir-shbuf 0x63937dcd xen_front_pgdir_shbuf_free +EXPORT_SYMBOL_GPL drivers/xen/xen-front-pgdir-shbuf 0x7e854358 xen_front_pgdir_shbuf_map +EXPORT_SYMBOL_GPL drivers/xen/xen-privcmd 0xaa8cdbcc xen_privcmdbuf_fops +EXPORT_SYMBOL_GPL drivers/xen/xen-privcmd 0xced2c159 xen_privcmd_fops +EXPORT_SYMBOL_GPL fs/dlm/dlm 0x1f3b1840 dlm_posix_get +EXPORT_SYMBOL_GPL fs/dlm/dlm 0x2e98979a dlm_posix_lock +EXPORT_SYMBOL_GPL fs/dlm/dlm 0x4b62826c dlm_unlock +EXPORT_SYMBOL_GPL fs/dlm/dlm 0x647d6170 dlm_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/dlm/dlm 0xfffb051d dlm_posix_unlock +EXPORT_SYMBOL_GPL fs/fscache/fscache 0x092cf98e fscache_object_sleep_till_congested +EXPORT_SYMBOL_GPL fs/lockd/lockd 0x59019b03 nlmclnt_done +EXPORT_SYMBOL_GPL fs/lockd/lockd 0x6359d488 lockd_up +EXPORT_SYMBOL_GPL fs/lockd/lockd 0x77e35ccc nlmsvc_unlock_all_by_ip +EXPORT_SYMBOL_GPL fs/lockd/lockd 0x94c9b89b lockd_down +EXPORT_SYMBOL_GPL fs/lockd/lockd 0x9aea78c6 nlmsvc_ops +EXPORT_SYMBOL_GPL fs/lockd/lockd 0xa08b9e16 nlmsvc_unlock_all_by_sb +EXPORT_SYMBOL_GPL fs/lockd/lockd 0xeb3fe7a4 nlmclnt_init +EXPORT_SYMBOL_GPL fs/lockd/lockd 0xebf7eb47 nlmclnt_proc +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x0294c6a2 nfs_callback_nr_threads +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x0367f82e nfs_wait_client_init_complete +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x047ad038 nfs_alloc_inode +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x047f4d39 nfs_submount +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x059dfb6d nfs_init_commit +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x05b17a38 nfs_free_server +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x06bb6bdc nfs_pgheader_init +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x09534993 nfs_show_path +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x0b1884ad nfs_sb_deactive +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x0ba47432 nfs_close_context +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x0e8d8279 nfs_force_lookup_revalidate +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x10962bc2 nfs_auth_info_match +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x113d002c nfs_write_inode +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x1284445c nfs_create +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x130b0ef7 nfs_setattr +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x13c67bc0 nfs_release_request +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x14e11634 nfs_pageio_init_read +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x15caec10 nfs_refresh_inode +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x18cfc4d9 nfs_setsecurity +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x193be0b3 nfs_probe_fsinfo +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x1c655e74 nfs_scan_commit_list +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x21e7a4a8 nfs_file_operations +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x22370d7b nfs_file_fsync +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x223e2436 nfs_open +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x22d795a8 _nfs_display_fhandle_hash +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x26884ff7 nfs_alloc_fhandle +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x28d35469 nfs_init_server_rpcclient +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x30b1f82a nfs_init_client +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x327dd528 nfs_get_client +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x334f9131 nfs_sb_active +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x3685a92d nfs_zap_acl_cache +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x37ad8682 nfs_file_mmap +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x382bcb7e nfs_try_get_tree +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x38337446 nfs_pageio_reset_write_mds +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x39375704 nfs_free_inode +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x39c247a4 nfs_setattr_update_inode +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x39e05ac3 nfs_idmap_cache_timeout +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x3dc4deb6 nfs_create_server +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x3ef551c0 nfs_rmdir +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x3f2690f2 nfs_check_flags +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x40739385 nfs_wait_bit_killable +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x42f2c81f nfs4_client_id_uniquifier +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x444717ea nfs_client_init_status +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x444e31ac nfs_commitdata_release +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x4abfcfc0 nfs_file_llseek +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x4cb9e001 recover_lost_locks +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x4d2b1118 nfs_rename +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x4e27c903 nfs_post_op_update_inode +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x4e7c5d2e nfs_fs_type +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x4fbdffa6 nfs_may_open +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x4fc5cd09 nfs_put_client +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x51892d61 nfs_callback_set_tcpport +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x5747f5f4 nfs_set_verifier +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x5838c20b put_nfs_open_context +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x584b8482 nfs_inc_attr_generation_counter +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x5aa63374 nfs_alloc_client +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x5b68fed9 nfs_clear_verifier_delegated +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x6221d3d7 nfs_instantiate +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x63a616d1 nfs_mark_client_ready +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x68f77266 nfs_mkdir +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x6a08e88a nfs_lock +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x6ed0a04d nfs_commit_free +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x7166c1dc nfs_get_lock_context +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x77f430b9 nfs_server_remove_lists +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x77fcdd5a nfs_request_remove_commit_list +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x78df2b0c nfs_request_add_commit_list_locked +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x7978f286 nfs_show_devname +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x7c9722ba nfs_dreq_bytes_left +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x81fb4be7 nfs_retry_commit +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x832e8f0b nfs_alloc_fattr +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x83671f44 nfs_pgio_header_free +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x83f14577 nfs_fscache_open_file +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x8686431a nfs_create_rpc_client +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x89c856ef nfs_invalidate_atime +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x8a12c56d nfs_client_for_each_server +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x8ab7e6e6 nfs_reconfigure +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x8b3440d8 nfs_file_release +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x8d20fd10 nfs_clear_inode +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x8f7806e5 nfs_pgio_current_mirror +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x90a5530f nfsiod_workqueue +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x91d1fe52 max_session_slots +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x98b0ece8 nfs_init_timeout_values +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x9a387124 nfs_access_zap_cache +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x9c17658e nfs_show_options +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x9e11a4ae nfs_kill_super +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x9ee47287 nfs_file_write +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x9fdf6639 nfs_fhget +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xa05ca625 nfs_fattr_init +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xa07635e7 nfs_pageio_reset_read_mds +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xa1d7c4cc nfs_pageio_resend +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xa3296d0f nfs_inode_attach_open_context +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xa3771c89 nfs_server_copy_userdata +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xa401b468 nfs_alloc_server +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xa5f8eff1 nfs_lookup +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xa6892588 alloc_nfs_open_context +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xa8abcded __tracepoint_nfs_xdr_status +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xa8e9e1ae send_implementation_id +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xa9ba3da7 nfs_umount_begin +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xaa9fde04 nfs_access_set_mask +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xaae9ca55 unregister_nfs_version +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xaafd4acc max_session_cb_slots +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xab4fdd52 nfs_path +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xae4647cf nfs_server_insert_lists +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xb1207159 nfs_revalidate_inode +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xb43dcf04 nfs_wb_all +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xb5f5c91f __tracepoint_nfs_fsync_exit +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xb8834e10 nfs_commitdata_alloc +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xbb66f663 nfs_sync_inode +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xbc10441a nfs_initiate_pgio +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xbc6b2c88 __tracepoint_nfs_fsync_enter +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xc10d3650 nfs_generic_pgio +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xc3a2be67 nfs_net_id +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xc51beaec nfs_request_add_commit_list +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xc635b024 nfs_initiate_commit +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xc71280b2 nfs_put_lock_context +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xc981e7df register_nfs_version +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xcc37e475 get_nfs_open_context +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xcd783e95 nfs_mknod +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xcda2730d nfs_file_read +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xcee97050 nfs_client_init_is_complete +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xcff51054 nfs_link +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xd023bac5 nfs_async_iocounter_wait +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xd1589652 nfs_pgio_header_alloc +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xd2e96320 nfs_free_client +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xd417b666 nfs_add_or_obtain +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xd5d6f9e4 nfs4_label_alloc +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xd8b3c703 nfs_symlink +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xd8cac38a nfs_init_cinfo +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xda6a388a nfs_clone_server +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xdae9b5d7 nfs4_disable_idmapping +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xdb9c968e nfs_permission +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xdd37ff6b nfs4_fs_type +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xdd67ce32 nfs4_dentry_operations +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xdf165ff0 nfs_wait_on_request +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xe089a41f nfs_pageio_init_write +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xe2ab5a36 nfs_filemap_write_and_wait_range +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xe5069456 nfs_commit_inode +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xe69a2411 nfs_dentry_operations +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xe75bf6dc nfs_post_op_update_inode_force_wcc +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xe7ab5d7e nfs_statfs +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xe827202e nfs_atomic_open +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xebbdc76f nfs_unlink +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xee9439e8 nfs_getattr +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xeea3649f nfs_access_add_cache +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xefed024a nfs_show_stats +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xf16dfdba nfs_file_set_open_context +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xf33dfbd1 nfs_do_submount +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xf3490427 nfs_drop_inode +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xfc619abd _nfs_display_fhandle +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xfc980858 nfs_flock +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xfcb00678 nfs_sops +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xff319141 nfs_generic_pg_test +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xff3dcbad nfs_writeback_update_inode +EXPORT_SYMBOL_GPL fs/nfs/nfsv3 0x229628c8 nfs3_set_ds_client +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x02b31695 pnfs_read_done_resend_to_mds +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x054bef45 layoutstats_timer +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x05d88968 nfs42_proc_layouterror +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x06cb5980 nfs4_schedule_migration_recovery +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x0ade27ae __tracepoint_ff_layout_read_error +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x151b68f5 nfs4_test_deviceid_unavailable +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x154d83ff pnfs_put_lseg +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x16150c1b pnfs_nfs_generic_sync +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x163831c3 __tracepoint_nfs4_pnfs_write +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x16e0bdf4 pnfs_generic_commit_pagelist +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x1cdde079 __tracepoint_nfs4_pnfs_read +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x1d1305ba pnfs_generic_pg_check_layout +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x1d992887 pnfs_update_layout +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x208f5c30 __tracepoint_pnfs_mds_fallback_read_pagelist +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x22a252e1 nfs42_ssc_open +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x2377337c nfs4_sequence_done +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x23cb2cf9 nfs4_init_ds_session +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x347671e1 pnfs_generic_pg_init_write +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x35ec1306 pnfs_alloc_commit_array +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x35fc4319 pnfs_generic_prepare_to_resend_writes +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x36524ed6 nfs4_schedule_stateid_recovery +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x39ac52fe __tracepoint_ff_layout_commit_error +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x3b31453b nfs4_find_or_create_ds_client +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x3c7d84cc __tracepoint_pnfs_mds_fallback_write_pagelist +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x40b4730e pnfs_generic_ds_cinfo_release_lseg +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x40bc3c6d __tracepoint_ff_layout_write_error +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x40f1937b pnfs_read_resend_pnfs +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x4276d25e pnfs_generic_layout_insert_lseg +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x461fe99c nfs4_put_deviceid_node +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x491887d7 pnfs_unregister_layoutdriver +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x4d9cb355 pnfs_write_done_resend_to_mds +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x4f112615 pnfs_generic_clear_request_commit +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x4fb8fefb nfs4_set_rw_stateid +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x50d6e1ca nfs41_sequence_done +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x54a9e20d nfs4_proc_getdeviceinfo +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x56685f12 pnfs_ld_read_done +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x5c3ffd57 pnfs_generic_pg_writepages +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x5df773a3 pnfs_register_layoutdriver +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x60474b1e nfs4_delete_deviceid +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x6085edbd nfs_map_string_to_numeric +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x629bfe8e pnfs_generic_pg_check_range +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x641e9f0e nfs4_set_ds_client +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x69d3558d pnfs_generic_rw_release +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x6bd7b629 nfs4_decode_mp_ds_addr +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x6fcb0267 nfs4_mark_deviceid_available +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x737827dd nfs4_pnfs_ds_add +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x76e8e3ab nfs4_pnfs_ds_put +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x77dd85c1 pnfs_free_commit_array +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x781d118e pnfs_generic_recover_commit_reqs +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x78ecf37b __tracepoint_pnfs_mds_fallback_pg_init_write +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x7bb81582 pnfs_set_lo_fail +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x7dbb2a81 nfs4_schedule_lease_moved_recovery +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x80ddcb4e pnfs_generic_ds_cinfo_destroy +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x81e163f4 nfs4_pnfs_ds_connect +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x82ac3eae pnfs_generic_write_commit_done +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x8af3f7a7 pnfs_generic_pg_test +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x91063fcd nfs4_schedule_lease_recovery +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x93650058 nfs4_setup_sequence +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x9429a1ba nfs4_mark_deviceid_unavailable +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x9f88c9e3 nfs4_init_deviceid_node +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xa2f252a9 pnfs_generic_search_commit_reqs +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xa319bfee __tracepoint_pnfs_mds_fallback_pg_init_read +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xa3a20411 pnfs_generic_scan_commit_lists +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xb50bb97c pnfs_report_layoutstat +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xbb77a947 pnfs_destroy_layout +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xc1e87cab pnfs_error_mark_layout_for_return +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xc3a14012 nfs4_schedule_session_recovery +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xca89028a pnfs_layout_mark_request_commit +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xd16ca887 nfs4_test_session_trunk +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xd263601e nfs42_ssc_close +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xd6ed7dda __tracepoint_pnfs_mds_fallback_write_done +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xd73182a3 pnfs_generic_pg_init_read +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xdc29230a __tracepoint_pnfs_mds_fallback_pg_get_mirror_count +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xdf05942f __tracepoint_nfs4_pnfs_commit_ds +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xdf6fe8bd pnfs_generic_pg_readpages +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xe3a7ae11 pnfs_layoutcommit_inode +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xea181ddf pnfs_add_commit_array +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xec245fac nfs4_find_get_deviceid +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xed15fb41 nfs4_print_deviceid +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xee960d9f __tracepoint_pnfs_mds_fallback_read_done +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xf2e52301 pnfs_ld_write_done +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xf48a02cb pnfs_generic_pg_cleanup +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xf5521dac pnfs_set_layoutcommit +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/nfsv4 0xf9e01624 pnfs_generic_sync +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xff91fe1f nfs_remove_bad_delegation +EXPORT_SYMBOL_GPL fs/nfs_common/grace 0x19530797 opens_in_grace +EXPORT_SYMBOL_GPL fs/nfs_common/grace 0x1fe1e1ad locks_end_grace +EXPORT_SYMBOL_GPL fs/nfs_common/grace 0x97d9ab87 locks_in_grace +EXPORT_SYMBOL_GPL fs/nfs_common/grace 0xb4352803 locks_start_grace +EXPORT_SYMBOL_GPL fs/nfs_common/nfs_acl 0x2f873c65 nfsacl_encode +EXPORT_SYMBOL_GPL fs/nfs_common/nfs_acl 0xbec0f8f0 nfsacl_decode +EXPORT_SYMBOL_GPL fs/nfsd/nfsd 0x5b388f0f inter_copy_offload_enable +EXPORT_SYMBOL_GPL fs/ocfs2/cluster/ocfs2_nodemanager 0x16e8a86c o2hb_setup_callback +EXPORT_SYMBOL_GPL fs/ocfs2/cluster/ocfs2_nodemanager 0x1b89c6ee o2hb_fill_node_map +EXPORT_SYMBOL_GPL fs/ocfs2/cluster/ocfs2_nodemanager 0x2bbd77c6 o2hb_unregister_callback +EXPORT_SYMBOL_GPL fs/ocfs2/cluster/ocfs2_nodemanager 0x4900035b o2hb_stop_all_regions +EXPORT_SYMBOL_GPL fs/ocfs2/cluster/ocfs2_nodemanager 0x4d97e3a9 o2nm_node_get +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 0x64f3065c o2nm_get_node_by_num +EXPORT_SYMBOL_GPL fs/ocfs2/cluster/ocfs2_nodemanager 0x6a0c3847 __mlog_printk +EXPORT_SYMBOL_GPL fs/ocfs2/cluster/ocfs2_nodemanager 0x81a17396 mlog_and_bits +EXPORT_SYMBOL_GPL fs/ocfs2/cluster/ocfs2_nodemanager 0x9f8ab2b6 o2nm_get_node_by_ip +EXPORT_SYMBOL_GPL fs/ocfs2/cluster/ocfs2_nodemanager 0xa87bc9e7 o2nm_configured_node_map +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 0xbe0c9e6a o2hb_register_callback +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 0xe029cc2a o2nm_node_put +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 0x76483527 dlmunlock +EXPORT_SYMBOL_GPL fs/ocfs2/dlm/ocfs2_dlm 0x7a1211f8 dlm_setup_eviction_cb +EXPORT_SYMBOL_GPL fs/ocfs2/dlm/ocfs2_dlm 0x9101678b dlm_unregister_domain +EXPORT_SYMBOL_GPL fs/ocfs2/dlm/ocfs2_dlm 0xb010df6e dlm_register_domain +EXPORT_SYMBOL_GPL fs/ocfs2/dlm/ocfs2_dlm 0xd06a2fc8 dlm_register_eviction_cb +EXPORT_SYMBOL_GPL fs/ocfs2/dlm/ocfs2_dlm 0xd14145c6 dlm_print_one_lock +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/dlm/ocfs2_dlm 0xfba19f86 dlmlock +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 0x3c921ee6 ocfs2_plock +EXPORT_SYMBOL_GPL fs/ocfs2/ocfs2_stackglue 0x4d3af7fa ocfs2_cluster_hangup +EXPORT_SYMBOL_GPL fs/ocfs2/ocfs2_stackglue 0x6b2c86f6 ocfs2_kset +EXPORT_SYMBOL_GPL fs/ocfs2/ocfs2_stackglue 0x76f40744 ocfs2_dlm_lvb +EXPORT_SYMBOL_GPL fs/ocfs2/ocfs2_stackglue 0x87cef0e2 ocfs2_stack_glue_unregister +EXPORT_SYMBOL_GPL fs/ocfs2/ocfs2_stackglue 0x93f51b15 ocfs2_stack_glue_register +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 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/pstore/pstore_blk 0x43cc3d4b pstore_blk_get_config +EXPORT_SYMBOL_GPL fs/pstore/pstore_blk 0x941c79d7 unregister_pstore_blk +EXPORT_SYMBOL_GPL fs/pstore/pstore_blk 0x96d760c6 register_pstore_device +EXPORT_SYMBOL_GPL fs/pstore/pstore_blk 0xb32bf368 register_pstore_blk +EXPORT_SYMBOL_GPL fs/pstore/pstore_blk 0xc3d2aed6 unregister_pstore_device +EXPORT_SYMBOL_GPL fs/pstore/pstore_zone 0x0820baf7 unregister_pstore_zone +EXPORT_SYMBOL_GPL fs/pstore/pstore_zone 0xc6c3e364 register_pstore_zone +EXPORT_SYMBOL_GPL kernel/torture 0x046ef208 _torture_stop_kthread +EXPORT_SYMBOL_GPL kernel/torture 0x1b2fca48 torture_must_stop_irq +EXPORT_SYMBOL_GPL kernel/torture 0x1be7d8be torture_onoff_failures +EXPORT_SYMBOL_GPL kernel/torture 0x3e9619f5 torture_onoff_stats +EXPORT_SYMBOL_GPL kernel/torture 0x3ff9be11 torture_online +EXPORT_SYMBOL_GPL kernel/torture 0x447d9c95 torture_offline +EXPORT_SYMBOL_GPL kernel/torture 0x4c7529bd torture_shutdown_absorb +EXPORT_SYMBOL_GPL kernel/torture 0x51098e7e _torture_create_kthread +EXPORT_SYMBOL_GPL kernel/torture 0x52665f8b torture_random +EXPORT_SYMBOL_GPL kernel/torture 0x5a12a7da torture_stutter_init +EXPORT_SYMBOL_GPL kernel/torture 0x679d9e50 torture_must_stop +EXPORT_SYMBOL_GPL kernel/torture 0x688e6a64 torture_cleanup_end +EXPORT_SYMBOL_GPL kernel/torture 0x6c3ff11a torture_init_begin +EXPORT_SYMBOL_GPL kernel/torture 0x8b0e1d2f torture_shuffle_init +EXPORT_SYMBOL_GPL kernel/torture 0xc67a49d4 torture_cleanup_begin +EXPORT_SYMBOL_GPL kernel/torture 0xc94a93e3 torture_onoff_init +EXPORT_SYMBOL_GPL kernel/torture 0xdbc5277a torture_shutdown_init +EXPORT_SYMBOL_GPL kernel/torture 0xe2430307 stutter_wait +EXPORT_SYMBOL_GPL kernel/torture 0xe6989fd3 torture_init_end +EXPORT_SYMBOL_GPL kernel/torture 0xecfe1d8f torture_shuffle_task_register +EXPORT_SYMBOL_GPL kernel/torture 0xf6d34fb5 torture_kthread_stopping +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/crc64 0xeaf3cb23 crc64_be +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 0x7f376d08 poly1305_final_generic +EXPORT_SYMBOL_GPL lib/crypto/libpoly1305 0xaeadcbe8 poly1305_init_generic +EXPORT_SYMBOL_GPL lib/crypto/libpoly1305 0xfa617389 poly1305_update_generic +EXPORT_SYMBOL_GPL lib/notifier-error-inject 0x249f2c13 notifier_err_inject_dir +EXPORT_SYMBOL_GPL lib/notifier-error-inject 0x7488e97a notifier_err_inject_init +EXPORT_SYMBOL_GPL lib/raid6/raid6_pq 0x1803a6ed raid6_2data_recov +EXPORT_SYMBOL_GPL lib/raid6/raid6_pq 0x2b30f429 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 0x1d3abd2b lowpan_header_decompress +EXPORT_SYMBOL_GPL net/6lowpan/6lowpan 0xb8ef2d41 lowpan_header_compress +EXPORT_SYMBOL_GPL net/802/garp 0x12862680 garp_register_application +EXPORT_SYMBOL_GPL net/802/garp 0x7b25d173 garp_request_join +EXPORT_SYMBOL_GPL net/802/garp 0x7f5bb74c garp_init_applicant +EXPORT_SYMBOL_GPL net/802/garp 0x87c1b90c garp_unregister_application +EXPORT_SYMBOL_GPL net/802/garp 0xb2dc501e garp_request_leave +EXPORT_SYMBOL_GPL net/802/garp 0xf7df48f6 garp_uninit_applicant +EXPORT_SYMBOL_GPL net/802/mrp 0x99a47692 mrp_register_application +EXPORT_SYMBOL_GPL net/802/mrp 0xa18fbcff mrp_unregister_application +EXPORT_SYMBOL_GPL net/802/mrp 0xca6808ca mrp_request_join +EXPORT_SYMBOL_GPL net/802/mrp 0xcea48936 mrp_request_leave +EXPORT_SYMBOL_GPL net/802/mrp 0xe433c390 mrp_init_applicant +EXPORT_SYMBOL_GPL net/802/mrp 0xe86d87e9 mrp_uninit_applicant +EXPORT_SYMBOL_GPL net/802/stp 0x1facc017 stp_proto_unregister +EXPORT_SYMBOL_GPL net/802/stp 0x4fef9904 stp_proto_register +EXPORT_SYMBOL_GPL net/9p/9pnet 0x03a22ae5 p9_client_xattrwalk +EXPORT_SYMBOL_GPL net/9p/9pnet 0x66160f70 p9_client_xattrcreate +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 0x456139a1 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/bluetooth/bluetooth 0x2a88716c l2cap_chan_list +EXPORT_SYMBOL_GPL net/bluetooth/bluetooth 0x4d8dc92c l2cap_chan_set_defaults +EXPORT_SYMBOL_GPL net/bluetooth/bluetooth 0x4f21c913 l2cap_chan_connect +EXPORT_SYMBOL_GPL net/bluetooth/bluetooth 0x663bd970 l2cap_add_psm +EXPORT_SYMBOL_GPL net/bluetooth/bluetooth 0x7d83d27a l2cap_chan_put +EXPORT_SYMBOL_GPL net/bluetooth/bluetooth 0x8c020fc8 bt_debugfs +EXPORT_SYMBOL_GPL net/bluetooth/bluetooth 0xbba1cf52 l2cap_chan_create +EXPORT_SYMBOL_GPL net/bluetooth/bluetooth 0xe8a5d9c0 l2cap_chan_del +EXPORT_SYMBOL_GPL net/bluetooth/bluetooth 0xf77f9e37 l2cap_chan_send +EXPORT_SYMBOL_GPL net/bluetooth/hidp/hidp 0xcd6f6857 hidp_hid_driver +EXPORT_SYMBOL_GPL net/bridge/bridge 0x073b7d27 br_handle_frame_finish +EXPORT_SYMBOL_GPL net/bridge/bridge 0x0981f72f br_multicast_enabled +EXPORT_SYMBOL_GPL net/bridge/bridge 0x2670baa8 br_vlan_get_proto +EXPORT_SYMBOL_GPL net/bridge/bridge 0x41a42762 br_vlan_get_info +EXPORT_SYMBOL_GPL net/bridge/bridge 0x4362f19a br_vlan_get_pvid_rcu +EXPORT_SYMBOL_GPL net/bridge/bridge 0x4638a81b br_fdb_find_port +EXPORT_SYMBOL_GPL net/bridge/bridge 0x48773400 br_dev_queue_push_xmit +EXPORT_SYMBOL_GPL net/bridge/bridge 0x584b667c br_multicast_has_querier_anywhere +EXPORT_SYMBOL_GPL net/bridge/bridge 0x5c8cfb11 br_vlan_get_pvid +EXPORT_SYMBOL_GPL net/bridge/bridge 0x75773820 br_vlan_enabled +EXPORT_SYMBOL_GPL net/bridge/bridge 0x86161759 nf_br_ops +EXPORT_SYMBOL_GPL net/bridge/bridge 0x8d693845 br_forward +EXPORT_SYMBOL_GPL net/bridge/bridge 0xa71be12b br_multicast_has_querier_adjacent +EXPORT_SYMBOL_GPL net/bridge/bridge 0xaa3a417d br_multicast_router +EXPORT_SYMBOL_GPL net/bridge/bridge 0xb4e6517d br_fdb_clear_offload +EXPORT_SYMBOL_GPL net/bridge/bridge 0xcd835445 br_port_flag_is_set +EXPORT_SYMBOL_GPL net/bridge/bridge 0xf4021d3d br_multicast_list_adjacent +EXPORT_SYMBOL_GPL net/bridge/bridge 0xf911b822 br_forward_finish +EXPORT_SYMBOL_GPL net/core/failover 0xbc83ba31 failover_slave_unregister +EXPORT_SYMBOL_GPL net/core/failover 0xc64914b6 failover_register +EXPORT_SYMBOL_GPL net/core/failover 0xea694f1a failover_unregister +EXPORT_SYMBOL_GPL net/dccp/dccp 0x04971070 dccp_feat_signal_nn_change +EXPORT_SYMBOL_GPL net/dccp/dccp 0x182ec2bf dccp_ackvec_parsed_add +EXPORT_SYMBOL_GPL net/dccp/dccp 0x184fe1d9 dccp_rcv_established +EXPORT_SYMBOL_GPL net/dccp/dccp 0x21993c1e dccp_child_process +EXPORT_SYMBOL_GPL net/dccp/dccp 0x2fe3d30f dccp_poll +EXPORT_SYMBOL_GPL net/dccp/dccp 0x37bf3c73 dccp_disconnect +EXPORT_SYMBOL_GPL net/dccp/dccp 0x3b2c8d81 dccp_shutdown +EXPORT_SYMBOL_GPL net/dccp/dccp 0x3cb31b73 dccp_getsockopt +EXPORT_SYMBOL_GPL net/dccp/dccp 0x452f1850 dccp_parse_options +EXPORT_SYMBOL_GPL net/dccp/dccp 0x4cdd391d dccp_feat_list_purge +EXPORT_SYMBOL_GPL net/dccp/dccp 0x59814a84 dccp_statistics +EXPORT_SYMBOL_GPL net/dccp/dccp 0x5cae339e dccp_recvmsg +EXPORT_SYMBOL_GPL net/dccp/dccp 0x679582eb dccp_feat_nn_get +EXPORT_SYMBOL_GPL net/dccp/dccp 0x6f98fa86 dccp_close +EXPORT_SYMBOL_GPL net/dccp/dccp 0x722630de dccp_hashinfo +EXPORT_SYMBOL_GPL net/dccp/dccp 0x7722c69e dccp_make_response +EXPORT_SYMBOL_GPL net/dccp/dccp 0x78036958 dccp_destroy_sock +EXPORT_SYMBOL_GPL net/dccp/dccp 0x79a9d5fa dccp_init_sock +EXPORT_SYMBOL_GPL net/dccp/dccp 0x80993155 dccp_timestamp +EXPORT_SYMBOL_GPL net/dccp/dccp 0x86be7924 dccp_packet_name +EXPORT_SYMBOL_GPL net/dccp/dccp 0x8ad512ee dccp_reqsk_init +EXPORT_SYMBOL_GPL net/dccp/dccp 0x918626de dccp_ioctl +EXPORT_SYMBOL_GPL net/dccp/dccp 0x92241590 dccp_rcv_state_process +EXPORT_SYMBOL_GPL net/dccp/dccp 0x9352cb17 dccp_create_openreq_child +EXPORT_SYMBOL_GPL net/dccp/dccp 0x93b469d1 dccp_sendmsg +EXPORT_SYMBOL_GPL net/dccp/dccp 0x9598d24d dccp_ackvec_parsed_cleanup +EXPORT_SYMBOL_GPL net/dccp/dccp 0x9b4983d1 dccp_setsockopt +EXPORT_SYMBOL_GPL net/dccp/dccp 0x9ff584c1 inet_dccp_listen +EXPORT_SYMBOL_GPL net/dccp/dccp 0xa09b3498 dccp_check_req +EXPORT_SYMBOL_GPL net/dccp/dccp 0xa1443549 dccp_done +EXPORT_SYMBOL_GPL net/dccp/dccp 0xa2624a42 dccp_death_row +EXPORT_SYMBOL_GPL net/dccp/dccp 0xaea2e0b4 dccp_ctl_make_reset +EXPORT_SYMBOL_GPL net/dccp/dccp 0xaf24aa8e dccp_send_ack +EXPORT_SYMBOL_GPL net/dccp/dccp 0xb1ee083e dccp_send_sync +EXPORT_SYMBOL_GPL net/dccp/dccp 0xbe5f9bab dccp_reqsk_send_ack +EXPORT_SYMBOL_GPL net/dccp/dccp 0xc3b6a26c dccp_orphan_count +EXPORT_SYMBOL_GPL net/dccp/dccp 0xcc65bcdf dccp_insert_option +EXPORT_SYMBOL_GPL net/dccp/dccp 0xdeb8ac11 dccp_set_state +EXPORT_SYMBOL_GPL net/dccp/dccp 0xec7752cd compat_dccp_getsockopt +EXPORT_SYMBOL_GPL net/dccp/dccp 0xedfa05ea dccp_sync_mss +EXPORT_SYMBOL_GPL net/dccp/dccp 0xee94bbba dccp_connect +EXPORT_SYMBOL_GPL net/dccp/dccp 0xf9951b0a compat_dccp_setsockopt +EXPORT_SYMBOL_GPL net/dccp/dccp_ipv4 0x0f93580f dccp_v4_request_recv_sock +EXPORT_SYMBOL_GPL net/dccp/dccp_ipv4 0x1f09d703 dccp_v4_do_rcv +EXPORT_SYMBOL_GPL net/dccp/dccp_ipv4 0x6f106544 dccp_v4_send_check +EXPORT_SYMBOL_GPL net/dccp/dccp_ipv4 0x7c9c25ef dccp_v4_conn_request +EXPORT_SYMBOL_GPL net/dccp/dccp_ipv4 0x86d4b279 dccp_invalid_packet +EXPORT_SYMBOL_GPL net/dccp/dccp_ipv4 0xbd169c27 dccp_v4_connect +EXPORT_SYMBOL_GPL net/dsa/dsa_core 0x04afebf7 dsa_port_get_phy_strings +EXPORT_SYMBOL_GPL net/dsa/dsa_core 0x09bac73e dsa_switch_resume +EXPORT_SYMBOL_GPL net/dsa/dsa_core 0x0f59599f dsa_devlink_param_get +EXPORT_SYMBOL_GPL net/dsa/dsa_core 0x155a61f4 dsa_devlink_resource_occ_get_unregister +EXPORT_SYMBOL_GPL net/dsa/dsa_core 0x20ae4fe5 dsa_port_get_ethtool_phy_stats +EXPORT_SYMBOL_GPL net/dsa/dsa_core 0x239dd8a6 dsa_devlink_resource_occ_get_register +EXPORT_SYMBOL_GPL net/dsa/dsa_core 0x28da55a3 dsa_switch_find +EXPORT_SYMBOL_GPL net/dsa/dsa_core 0x2dd2c908 dsa_devlink_params_register +EXPORT_SYMBOL_GPL net/dsa/dsa_core 0x393d7739 dsa_enqueue_skb +EXPORT_SYMBOL_GPL net/dsa/dsa_core 0x3cca6107 dsa_devlink_resources_unregister +EXPORT_SYMBOL_GPL net/dsa/dsa_core 0x5c5bb8ee unregister_dsa_notifier +EXPORT_SYMBOL_GPL net/dsa/dsa_core 0x6acf605b dsa_switch_suspend +EXPORT_SYMBOL_GPL net/dsa/dsa_core 0x6becedcc dsa_port_get_phy_sset_count +EXPORT_SYMBOL_GPL net/dsa/dsa_core 0x6ec38411 dsa_port_phylink_mac_change +EXPORT_SYMBOL_GPL net/dsa/dsa_core 0x967b1ae8 dsa_devlink_param_set +EXPORT_SYMBOL_GPL net/dsa/dsa_core 0x9d82b38c dsa_port_from_netdev +EXPORT_SYMBOL_GPL net/dsa/dsa_core 0xa0c4b106 dsa_register_switch +EXPORT_SYMBOL_GPL net/dsa/dsa_core 0xa630733c dsa_devlink_params_unregister +EXPORT_SYMBOL_GPL net/dsa/dsa_core 0xa7abc2de dsa_dev_to_net_device +EXPORT_SYMBOL_GPL net/dsa/dsa_core 0xb3268ef2 dsa_tag_drivers_register +EXPORT_SYMBOL_GPL net/dsa/dsa_core 0xba44e249 dsa_unregister_switch +EXPORT_SYMBOL_GPL net/dsa/dsa_core 0xbaba61c9 dsa_devlink_resource_register +EXPORT_SYMBOL_GPL net/dsa/dsa_core 0xc190dd85 call_dsa_notifiers +EXPORT_SYMBOL_GPL net/dsa/dsa_core 0xf7a8021f dsa_tag_drivers_unregister +EXPORT_SYMBOL_GPL net/dsa/dsa_core 0xf86039e0 register_dsa_notifier +EXPORT_SYMBOL_GPL net/dsa/tag_8021q 0x34370b99 dsa_8021q_crosschip_bridge_leave +EXPORT_SYMBOL_GPL net/dsa/tag_8021q 0x415e894e dsa_8021q_rx_subvlan +EXPORT_SYMBOL_GPL net/dsa/tag_8021q 0x417d1fed dsa_8021q_rx_switch_id +EXPORT_SYMBOL_GPL net/dsa/tag_8021q 0x496a323c dsa_8021q_xmit +EXPORT_SYMBOL_GPL net/dsa/tag_8021q 0x76159623 dsa_port_setup_8021q_tagging +EXPORT_SYMBOL_GPL net/dsa/tag_8021q 0x94b2e092 dsa_8021q_crosschip_bridge_join +EXPORT_SYMBOL_GPL net/dsa/tag_8021q 0x9e59271d dsa_8021q_rx_source_port +EXPORT_SYMBOL_GPL net/dsa/tag_8021q 0xb459e13b dsa_8021q_rx_vid +EXPORT_SYMBOL_GPL net/dsa/tag_8021q 0xd214ac70 dsa_8021q_tx_vid +EXPORT_SYMBOL_GPL net/dsa/tag_8021q 0xd73531d4 dsa_8021q_rx_vid_subvlan +EXPORT_SYMBOL_GPL net/dsa/tag_8021q 0xf13e1803 vid_is_dsa_8021q +EXPORT_SYMBOL_GPL net/ieee802154/ieee802154 0x71a2d1d2 ieee802154_hdr_peek +EXPORT_SYMBOL_GPL net/ieee802154/ieee802154 0x7c907bf9 ieee802154_hdr_peek_addrs +EXPORT_SYMBOL_GPL net/ieee802154/ieee802154 0x87e2553b ieee802154_max_payload +EXPORT_SYMBOL_GPL net/ieee802154/ieee802154 0xb27d3d1b ieee802154_hdr_pull +EXPORT_SYMBOL_GPL net/ieee802154/ieee802154 0xeaf9ec69 ieee802154_hdr_push +EXPORT_SYMBOL_GPL net/ife/ife 0x47743a36 ife_decode +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 0x932b57c9 ife_encode +EXPORT_SYMBOL_GPL net/ife/ife 0xe7888e98 ife_tlv_meta_encode +EXPORT_SYMBOL_GPL net/ipv4/esp4 0xacad34a6 esp_output_head +EXPORT_SYMBOL_GPL net/ipv4/esp4 0xcb1e34ee esp_input_done2 +EXPORT_SYMBOL_GPL net/ipv4/esp4 0xd984d72a esp_output_tail +EXPORT_SYMBOL_GPL net/ipv4/gre 0x075b105f gre_del_protocol +EXPORT_SYMBOL_GPL net/ipv4/gre 0x8759c76c gre_add_protocol +EXPORT_SYMBOL_GPL net/ipv4/inet_diag 0x0fe3d919 inet_diag_msg_common_fill +EXPORT_SYMBOL_GPL net/ipv4/inet_diag 0x13ec2ef7 inet_diag_find_one_icsk +EXPORT_SYMBOL_GPL net/ipv4/inet_diag 0x1cb4e0f1 inet_diag_bc_sk +EXPORT_SYMBOL_GPL net/ipv4/inet_diag 0x2fedede3 inet_sk_diag_fill +EXPORT_SYMBOL_GPL net/ipv4/inet_diag 0x775e964a inet_diag_dump_icsk +EXPORT_SYMBOL_GPL net/ipv4/inet_diag 0x833208ac inet_diag_unregister +EXPORT_SYMBOL_GPL net/ipv4/inet_diag 0xab0e4489 inet_diag_msg_attrs_fill +EXPORT_SYMBOL_GPL net/ipv4/inet_diag 0xd454173f inet_diag_dump_one_icsk +EXPORT_SYMBOL_GPL net/ipv4/inet_diag 0xdc2a884f inet_diag_register +EXPORT_SYMBOL_GPL net/ipv4/ip_gre 0x9dffffa7 gretap_fb_dev_create +EXPORT_SYMBOL_GPL net/ipv4/ip_tunnel 0x0c645083 ip_tunnel_change_mtu +EXPORT_SYMBOL_GPL net/ipv4/ip_tunnel 0x17ed33f8 ip_tunnel_xmit +EXPORT_SYMBOL_GPL net/ipv4/ip_tunnel 0x1ae0d73b ip_tunnel_ctl +EXPORT_SYMBOL_GPL net/ipv4/ip_tunnel 0x2c75e7db ip_tunnel_init_net +EXPORT_SYMBOL_GPL net/ipv4/ip_tunnel 0x371bedb4 ip_tunnel_ioctl +EXPORT_SYMBOL_GPL net/ipv4/ip_tunnel 0x3932c017 ip_tunnel_delete_nets +EXPORT_SYMBOL_GPL net/ipv4/ip_tunnel 0x5a3e673e ip_tunnel_init +EXPORT_SYMBOL_GPL net/ipv4/ip_tunnel 0x859a1394 ip_tunnel_encap_setup +EXPORT_SYMBOL_GPL net/ipv4/ip_tunnel 0x8875c448 ip_tunnel_setup +EXPORT_SYMBOL_GPL net/ipv4/ip_tunnel 0x9aab7304 ip_tunnel_rcv +EXPORT_SYMBOL_GPL net/ipv4/ip_tunnel 0xa822440b __ip_tunnel_change_mtu +EXPORT_SYMBOL_GPL net/ipv4/ip_tunnel 0xa9676001 ip_tunnel_changelink +EXPORT_SYMBOL_GPL net/ipv4/ip_tunnel 0xb0328388 ip_tunnel_dellink +EXPORT_SYMBOL_GPL net/ipv4/ip_tunnel 0xbdb1e6ff ip_tunnel_newlink +EXPORT_SYMBOL_GPL net/ipv4/ip_tunnel 0xdf9cea52 ip_tunnel_lookup +EXPORT_SYMBOL_GPL net/ipv4/ip_tunnel 0xe84df21d ip_tunnel_uninit +EXPORT_SYMBOL_GPL net/ipv4/ip_tunnel 0xee593bdc ip_md_tunnel_xmit +EXPORT_SYMBOL_GPL net/ipv4/netfilter/arp_tables 0x51892d80 arpt_alloc_initial_table +EXPORT_SYMBOL_GPL net/ipv4/netfilter/ip_tables 0xe02181f5 ipt_alloc_initial_table +EXPORT_SYMBOL_GPL net/ipv4/netfilter/nf_defrag_ipv4 0xf8f689c6 nf_defrag_ipv4_enable +EXPORT_SYMBOL_GPL net/ipv4/netfilter/nf_dup_ipv4 0x015c721a nf_dup_ipv4 +EXPORT_SYMBOL_GPL net/ipv4/netfilter/nf_reject_ipv4 0x1a6b1520 nf_reject_ip_tcphdr_get +EXPORT_SYMBOL_GPL net/ipv4/netfilter/nf_reject_ipv4 0x945f0b21 nf_reject_ip_tcphdr_put +EXPORT_SYMBOL_GPL net/ipv4/netfilter/nf_reject_ipv4 0xc0724fd3 nf_send_reset +EXPORT_SYMBOL_GPL net/ipv4/netfilter/nf_reject_ipv4 0xc35041f1 nf_send_unreach +EXPORT_SYMBOL_GPL net/ipv4/netfilter/nf_reject_ipv4 0xe31ba84c nf_reject_iphdr_put +EXPORT_SYMBOL_GPL net/ipv4/netfilter/nf_socket_ipv4 0xce988f37 nf_sk_lookup_slow_v4 +EXPORT_SYMBOL_GPL net/ipv4/netfilter/nf_tproxy_ipv4 0x51ee5db6 nf_tproxy_get_sock_v4 +EXPORT_SYMBOL_GPL net/ipv4/netfilter/nf_tproxy_ipv4 0x9b793503 nf_tproxy_handle_time_wait4 +EXPORT_SYMBOL_GPL net/ipv4/netfilter/nf_tproxy_ipv4 0xc02d85d2 nf_tproxy_laddr4 +EXPORT_SYMBOL_GPL net/ipv4/netfilter/nft_fib_ipv4 0x498e6239 nft_fib4_eval_type +EXPORT_SYMBOL_GPL net/ipv4/netfilter/nft_fib_ipv4 0xe0079315 nft_fib4_eval +EXPORT_SYMBOL_GPL net/ipv4/tcp_vegas 0x1d47fa45 tcp_vegas_pkts_acked +EXPORT_SYMBOL_GPL net/ipv4/tcp_vegas 0x24e23aae tcp_vegas_init +EXPORT_SYMBOL_GPL net/ipv4/tcp_vegas 0x753f4435 tcp_vegas_get_info +EXPORT_SYMBOL_GPL net/ipv4/tcp_vegas 0x7ed09445 tcp_vegas_state +EXPORT_SYMBOL_GPL net/ipv4/tcp_vegas 0xe9dc4aaa tcp_vegas_cwnd_event +EXPORT_SYMBOL_GPL net/ipv4/udp_tunnel 0x0d30823b udp_tunnel_notify_add_rx_port +EXPORT_SYMBOL_GPL net/ipv4/udp_tunnel 0x29493efd udp_tunnel_notify_del_rx_port +EXPORT_SYMBOL_GPL net/ipv4/udp_tunnel 0x2c78cffc udp_tunnel_xmit_skb +EXPORT_SYMBOL_GPL net/ipv4/udp_tunnel 0x98a37e6b udp_tunnel_push_rx_port +EXPORT_SYMBOL_GPL net/ipv4/udp_tunnel 0x9d854374 udp_tunnel_drop_rx_port +EXPORT_SYMBOL_GPL net/ipv4/udp_tunnel 0xab349bc2 udp_tunnel_sock_release +EXPORT_SYMBOL_GPL net/ipv4/udp_tunnel 0xc3005654 udp_tun_rx_dst +EXPORT_SYMBOL_GPL net/ipv4/udp_tunnel 0xe3ad62cb setup_udp_tunnel_sock +EXPORT_SYMBOL_GPL net/ipv6/esp6 0x24ed31df esp6_output_tail +EXPORT_SYMBOL_GPL net/ipv6/esp6 0xefce443c esp6_input_done2 +EXPORT_SYMBOL_GPL net/ipv6/esp6 0xfd747d9d esp6_output_head +EXPORT_SYMBOL_GPL net/ipv6/ip6_tunnel 0x53977c86 ip6_tnl_xmit_ctl +EXPORT_SYMBOL_GPL net/ipv6/ip6_tunnel 0xa6a81bad ip6_tnl_rcv_ctl +EXPORT_SYMBOL_GPL net/ipv6/ip6_tunnel 0xe7a62f79 ip6_tnl_encap_setup +EXPORT_SYMBOL_GPL net/ipv6/ip6_udp_tunnel 0x21a16daa udp_tunnel6_xmit_skb +EXPORT_SYMBOL_GPL net/ipv6/ip6_udp_tunnel 0xd97b9ee1 udp_sock_create6 +EXPORT_SYMBOL_GPL net/ipv6/netfilter/ip6_tables 0x92ed2db3 ip6t_alloc_initial_table +EXPORT_SYMBOL_GPL net/ipv6/netfilter/nf_defrag_ipv6 0xa1df2367 nf_defrag_ipv6_enable +EXPORT_SYMBOL_GPL net/ipv6/netfilter/nf_defrag_ipv6 0xb9df27a4 nf_ct_frag6_gather +EXPORT_SYMBOL_GPL net/ipv6/netfilter/nf_dup_ipv6 0x75f351f3 nf_dup_ipv6 +EXPORT_SYMBOL_GPL net/ipv6/netfilter/nf_reject_ipv6 0x27f3498c nf_send_reset6 +EXPORT_SYMBOL_GPL net/ipv6/netfilter/nf_reject_ipv6 0x4bccc541 nf_reject_ip6hdr_put +EXPORT_SYMBOL_GPL net/ipv6/netfilter/nf_reject_ipv6 0x4e8843c2 nf_send_unreach6 +EXPORT_SYMBOL_GPL net/ipv6/netfilter/nf_reject_ipv6 0x8197220c nf_reject_ip6_tcphdr_get +EXPORT_SYMBOL_GPL net/ipv6/netfilter/nf_reject_ipv6 0xd4a55359 nf_reject_ip6_tcphdr_put +EXPORT_SYMBOL_GPL net/ipv6/netfilter/nf_socket_ipv6 0x49ff2e5e nf_sk_lookup_slow_v6 +EXPORT_SYMBOL_GPL net/ipv6/netfilter/nf_tproxy_ipv6 0x06e999b6 nf_tproxy_get_sock_v6 +EXPORT_SYMBOL_GPL net/ipv6/netfilter/nf_tproxy_ipv6 0x0e73271e nf_tproxy_laddr6 +EXPORT_SYMBOL_GPL net/ipv6/netfilter/nf_tproxy_ipv6 0xcf6dff95 nf_tproxy_handle_time_wait6 +EXPORT_SYMBOL_GPL net/ipv6/netfilter/nft_fib_ipv6 0x4d78fbf5 nft_fib6_eval +EXPORT_SYMBOL_GPL net/ipv6/netfilter/nft_fib_ipv6 0x87087910 nft_fib6_eval_type +EXPORT_SYMBOL_GPL net/l2tp/l2tp_core 0x0d5b03db l2tp_tunnel_get_session +EXPORT_SYMBOL_GPL net/l2tp/l2tp_core 0x13872be3 l2tp_xmit_skb +EXPORT_SYMBOL_GPL net/l2tp/l2tp_core 0x183d0126 l2tp_session_register +EXPORT_SYMBOL_GPL net/l2tp/l2tp_core 0x1c917f06 l2tp_tunnel_get_nth +EXPORT_SYMBOL_GPL net/l2tp/l2tp_core 0x1e7db8c5 l2tp_session_set_header_len +EXPORT_SYMBOL_GPL net/l2tp/l2tp_core 0x21b2a10d l2tp_tunnel_register +EXPORT_SYMBOL_GPL net/l2tp/l2tp_core 0x225b9d6d l2tp_session_get_nth +EXPORT_SYMBOL_GPL net/l2tp/l2tp_core 0x27f02bc2 l2tp_session_get_by_ifname +EXPORT_SYMBOL_GPL net/l2tp/l2tp_core 0x32a61208 __l2tp_session_unhash +EXPORT_SYMBOL_GPL net/l2tp/l2tp_core 0x34435b91 l2tp_session_delete +EXPORT_SYMBOL_GPL net/l2tp/l2tp_core 0x4f4b0c79 l2tp_tunnel_get +EXPORT_SYMBOL_GPL net/l2tp/l2tp_core 0x6f855af6 l2tp_tunnel_delete +EXPORT_SYMBOL_GPL net/l2tp/l2tp_core 0x8407e43b l2tp_session_get +EXPORT_SYMBOL_GPL net/l2tp/l2tp_core 0xa1ebaa6b l2tp_udp_encap_recv +EXPORT_SYMBOL_GPL net/l2tp/l2tp_core 0xab8e9781 l2tp_tunnel_create +EXPORT_SYMBOL_GPL net/l2tp/l2tp_core 0xad03da9c l2tp_session_free +EXPORT_SYMBOL_GPL net/l2tp/l2tp_core 0xfd6e18a4 l2tp_session_create +EXPORT_SYMBOL_GPL net/l2tp/l2tp_netlink 0x337f2432 l2tp_nl_unregister_ops +EXPORT_SYMBOL_GPL net/l2tp/l2tp_netlink 0x58e78b6b l2tp_nl_register_ops +EXPORT_SYMBOL_GPL net/mac80211/mac80211 0x0173ae23 ieee80211_update_mu_groups +EXPORT_SYMBOL_GPL net/mac80211/mac80211 0x0611f079 ieee80211_calc_rx_airtime +EXPORT_SYMBOL_GPL net/mac80211/mac80211 0x2934083f ieee80211_iterate_active_interfaces_atomic +EXPORT_SYMBOL_GPL net/mac80211/mac80211 0x31fa46bd ieee80211_gtk_rekey_notify +EXPORT_SYMBOL_GPL net/mac80211/mac80211 0x3b37406b ieee80211_calc_tx_airtime +EXPORT_SYMBOL_GPL net/mac80211/mac80211 0x4055556f ieee80211_ready_on_channel +EXPORT_SYMBOL_GPL net/mac80211/mac80211 0x4ba2b25f ieee80211_remain_on_channel_expired +EXPORT_SYMBOL_GPL net/mac80211/mac80211 0x5250cf98 ieee80211_tkip_add_iv +EXPORT_SYMBOL_GPL net/mac80211/mac80211 0x6644f5a2 ieee80211_find_sta_by_ifaddr +EXPORT_SYMBOL_GPL net/mac80211/mac80211 0x679a2395 ieee80211_gtk_rekey_add +EXPORT_SYMBOL_GPL net/mac80211/mac80211 0x787f0848 ieee80211_vif_to_wdev +EXPORT_SYMBOL_GPL net/mac80211/mac80211 0x78a4b571 ieee80211_iter_chan_contexts_atomic +EXPORT_SYMBOL_GPL net/mac80211/mac80211 0x88802be1 ieee80211_request_smps +EXPORT_SYMBOL_GPL net/mac80211/mac80211 0xa1247034 ieee80211_remove_key +EXPORT_SYMBOL_GPL net/mac80211/mac80211 0xba51554b ieee80211_iterate_stations_atomic +EXPORT_SYMBOL_GPL net/mac80211/mac80211 0xbfa79215 ieee80211_iterate_interfaces +EXPORT_SYMBOL_GPL net/mac80211/mac80211 0xd42e1c5a ieee80211_resume_disconnect +EXPORT_SYMBOL_GPL net/mac80211/mac80211 0xd8e09da4 ieee80211_set_key_rx_seq +EXPORT_SYMBOL_GPL net/mac80211/mac80211 0xdd5da54e ieee80211_iterate_active_interfaces_rtnl +EXPORT_SYMBOL_GPL net/mac80211/mac80211 0xdeb1f496 ieee80211_ave_rssi +EXPORT_SYMBOL_GPL net/mac80211/mac80211 0xf9f11fc3 wdev_to_ieee80211_vif +EXPORT_SYMBOL_GPL net/mpls/mpls_router 0x31d49763 mpls_stats_inc_outucastpkts +EXPORT_SYMBOL_GPL net/mpls/mpls_router 0x3b1839cf mpls_pkt_too_big +EXPORT_SYMBOL_GPL net/mpls/mpls_router 0x91af8477 mpls_dev_mtu +EXPORT_SYMBOL_GPL net/mpls/mpls_router 0xe413b0a4 nla_get_labels +EXPORT_SYMBOL_GPL net/mpls/mpls_router 0xf14733ba nla_put_labels +EXPORT_SYMBOL_GPL net/mpls/mpls_router 0xfa12b876 mpls_output_possible +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0x0a7d6941 ip_set_del +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0x1d9b8532 ip_set_put_extensions +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0x22d966c6 ip_set_range_to_cidr +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0x27b64212 ip_set_nfnl_get_byindex +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0x381b309f ip_set_type_unregister +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0x397f6231 ip_set_free +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0x4cdfe802 ip_set_name_byindex +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0x5108e368 ip_set_put_flags +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0x58d6d26f ip_set_extensions +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0x6113eb93 ip_set_get_ip4_port +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0x622ece63 ip_set_put_byindex +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0x77d17921 ip_set_elem_len +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 0x83ad3d25 ip_set_type_register +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0x94fdf366 ip_set_init_comment +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0x9e98722b ip_set_get_ipaddr6 +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0xa079a16c ip_set_get_byname +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0xa293f8a6 ip_set_get_ipaddr4 +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0xab1a1bb8 ip_set_match_extensions +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0xb8d0839b ip_set_test +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0xc699f70c ip_set_get_extensions +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0xe3b06429 ip_set_nfnl_put +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0xea6cd4f3 ip_set_add +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0xea9aba3c ip_set_get_ip6_port +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0xf3b4d4ae ip_set_alloc +EXPORT_SYMBOL_GPL net/netfilter/ipvs/ip_vs 0x8f426fee register_ip_vs_pe +EXPORT_SYMBOL_GPL net/netfilter/ipvs/ip_vs 0x92c44bf0 unregister_ip_vs_pe +EXPORT_SYMBOL_GPL net/netfilter/ipvs/ip_vs 0x9d3a09a5 ip_vs_conn_out_get_proto +EXPORT_SYMBOL_GPL net/netfilter/ipvs/ip_vs 0xc6bb5c74 ip_vs_conn_in_get_proto +EXPORT_SYMBOL_GPL net/netfilter/nf_conncount 0x3594d1cc nf_conncount_init +EXPORT_SYMBOL_GPL net/netfilter/nf_conncount 0x3ff55ad3 nf_conncount_cache_free +EXPORT_SYMBOL_GPL net/netfilter/nf_conncount 0x5a0443ca nf_conncount_gc_list +EXPORT_SYMBOL_GPL net/netfilter/nf_conncount 0x85a402c7 nf_conncount_count +EXPORT_SYMBOL_GPL net/netfilter/nf_conncount 0x8c4cb9c3 nf_conncount_list_init +EXPORT_SYMBOL_GPL net/netfilter/nf_conncount 0xb65e6195 nf_conncount_destroy +EXPORT_SYMBOL_GPL net/netfilter/nf_conncount 0xee70a100 nf_conncount_add +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x04e14ac8 nf_ct_expect_find_get +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x0b4adbcf nf_conntrack_alter_reply +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x0bc00f80 nf_nat_helper_try_module_get +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x0c2dea1a nf_conntrack_in +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x1040debd nf_ct_bridge_unregister +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x10f43146 nf_ct_helper_expectfn_register +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x165edfb5 nf_ct_expect_alloc +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x170124d2 nf_conntrack_helpers_unregister +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x1df53aa8 nf_ct_timeout_put_hook +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x20fca8f2 nf_ct_expect_iterate_destroy +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x23137e05 nf_conntrack_unregister_notifier +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x2390bc34 nf_ct_gre_keymap_destroy +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 0x2b6394ef nf_ct_helper_expectfn_unregister +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x2b8d9fba nf_ct_seq_adjust +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x2efe7a69 nf_ct_untimeout +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x30d01d65 nf_ct_l4proto_find +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x3703c8db nf_ct_get_id +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x412a2c47 nf_conntrack_alloc +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x479e8ca2 nf_ct_helper_expectfn_find_by_symbol +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x4db0fe30 nf_conntrack_eventmask_report +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x4dba71d6 nf_ct_helper_init +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x51bfcc72 nf_ct_kill_acct +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x532619c2 nf_ct_port_tuple_to_nlattr +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x5520efb7 nf_ct_helper_log +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x56597dae nf_ct_deliver_cached_events +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x58470d80 nf_ct_remove_expectations +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x59d6f648 nf_ct_timeout_find_get_hook +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x64ea1163 nf_ct_iterate_destroy +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x66a30f95 nf_nat_helper_unregister +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x6741f113 nf_ct_acct_add +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x693c3961 nf_ct_helper_hash +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x695eebc0 nf_ct_gre_keymap_add +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x6cc4661b nf_ct_expect_put +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x6d78a8f3 nf_conntrack_helpers_register +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x7174d2fd nf_ct_tcp_seqadj_set +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x71fa9a59 __nf_conntrack_confirm +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x72eabe8d nf_conntrack_find_get +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x761f56d4 __nf_ct_refresh_acct +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x7633159d nf_nat_helper_register +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x7da80b2e nf_ct_port_nla_policy +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x7eb262f9 nf_connlabels_replace +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x82a42d5c nf_conntrack_register_notifier +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x83d9d3b3 nf_ct_extend_unregister +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x84cea4fd nf_ct_helper_ext_add +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x88f43d57 nf_ct_seqadj_init +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x8bd3988d nf_ct_extend_register +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x8ffe7e89 nf_conntrack_htable_size +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x901741eb nf_ct_l4proto_log_invalid +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x95d605cf nf_ct_expect_register_notifier +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x986a476a nf_connlabels_get +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x9adb7399 nf_conntrack_expect_lock +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x9b824608 nf_ct_helper_expectfn_find_by_name +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xa122375a nf_confirm +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xa1508444 nf_ct_iterate_cleanup_net +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xa35f128e nf_ct_expect_init +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xa3f3aa99 __nf_ct_try_assign_helper +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xa82200bb nf_ct_destroy_timeout +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xa8869374 nf_ct_netns_put +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xaadef7ea nf_ct_get_tuplepr +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xaf0847f0 nf_conntrack_locks +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xafbd6cf5 nf_ct_port_nlattr_to_tuple +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xb1ae3ca8 nf_ct_delete +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xb1c42e69 nf_ct_expect_related_report +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xb30f862b nf_connlabels_put +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xb5b1d886 nf_conntrack_free +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xb6951356 nf_nat_helper_put +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xb9d84ae7 nf_conntrack_tuple_taken +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xbd2f5d0a nf_ct_tmpl_free +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xbd45cf06 nf_conntrack_helper_put +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xbd85b164 nf_ct_remove_expect +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xbda75949 nf_ct_bridge_register +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xc18ac88d nf_ct_expect_hsize +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xc40f284c nf_ct_helper_hsize +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xcd0976cf nf_ct_seq_offset +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xcd34e580 nf_ct_unconfirmed_destroy +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xd27d3b67 nf_ct_expect_iterate_net +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xd3981ac9 nf_ct_expect_unregister_notifier +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xd4bbaa3e nf_l4proto_log_invalid +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xd505c3e0 nf_ct_port_nlattr_tuple_size +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xd60878d1 nf_ct_set_timeout +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xdba7326b nf_conntrack_lock +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xdbf52de2 nf_conntrack_helper_try_module_get +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xdd1a8544 nf_conntrack_helper_unregister +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xe3a66c28 nf_ct_unexpect_related +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xe80019ec __nf_conntrack_helper_find +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xe93bb173 nf_ct_unlink_expect_report +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xea2c30f0 nf_ct_tmpl_alloc +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xec8beba6 nf_ct_expect_hash +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xecd1fff2 nf_ct_seqadj_set +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xf1f415d3 nf_conntrack_helper_register +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xf38bcdf3 nf_conntrack_max +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xf4160b26 __nf_ct_expect_find +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xfd7efe38 nf_conntrack_hash_check_insert +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xfe2be4da nf_ct_netns_get +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xfe731af8 nf_ct_invert_tuple +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_amanda 0xf0b4c189 nf_nat_amanda_hook +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_broadcast 0x2a0dbbf1 nf_conntrack_broadcast_help +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_ftp 0xa920fea1 nf_nat_ftp_hook +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_h323 0x0ddff0d9 set_h225_addr_hook +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_h323 0x1cf48d9f set_ras_addr_hook +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_h323 0x31c46292 get_h225_addr +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_h323 0x4adc4b9f nat_rtp_rtcp_hook +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_h323 0x548d675b nat_q931_hook +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_h323 0x67e729db nat_h245_hook +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_h323 0x808213d9 nat_callforwarding_hook +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_h323 0x818d0f5d nat_t120_hook +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_h323 0xa0ba17f1 set_sig_addr_hook +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_h323 0xa8667df4 set_h245_addr_hook +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_irc 0xc8506722 nf_nat_irc_hook +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_pptp 0x37a514fa nf_nat_pptp_hook_inbound +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_pptp 0x3c6e845f nf_nat_pptp_hook_outbound +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_pptp 0x6b62a7b8 nf_nat_pptp_hook_exp_gre +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_pptp 0x9a632e0f nf_nat_pptp_hook_expectfn +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_sip 0x086e307c nf_nat_sip_hooks +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_sip 0x2459c663 ct_sip_get_sdp_header +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_sip 0x38e8eb65 ct_sip_parse_address_param +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_sip 0x98fd72af ct_sip_parse_header_uri +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_sip 0xa85e8ba1 ct_sip_parse_request +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_sip 0xd70ed3c1 ct_sip_parse_numerical_param +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_sip 0xf6981725 ct_sip_get_header +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_snmp 0x5d479d26 nf_nat_snmp_hook +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_tftp 0x387279cd nf_nat_tftp_hook +EXPORT_SYMBOL_GPL net/netfilter/nf_dup_netdev 0x1456a4e4 nf_fwd_netdev_egress +EXPORT_SYMBOL_GPL net/netfilter/nf_dup_netdev 0x58e23c61 nft_fwd_dup_netdev_offload +EXPORT_SYMBOL_GPL net/netfilter/nf_dup_netdev 0xf5f9f068 nf_dup_netdev_egress +EXPORT_SYMBOL_GPL net/netfilter/nf_flow_table 0x0bba5f38 nf_flow_table_cleanup +EXPORT_SYMBOL_GPL net/netfilter/nf_flow_table 0x13810a54 flow_offload_add +EXPORT_SYMBOL_GPL net/netfilter/nf_flow_table 0x23ba6884 nf_flow_rule_route_ipv4 +EXPORT_SYMBOL_GPL net/netfilter/nf_flow_table 0x28ed94db nf_flow_rule_route_ipv6 +EXPORT_SYMBOL_GPL net/netfilter/nf_flow_table 0x4731eefc flow_offload_free +EXPORT_SYMBOL_GPL net/netfilter/nf_flow_table 0x4a552cee flow_offload_alloc +EXPORT_SYMBOL_GPL net/netfilter/nf_flow_table 0x5d1de410 nf_flow_offload_ipv6_hook +EXPORT_SYMBOL_GPL net/netfilter/nf_flow_table 0x5e9b5052 flow_offload_route_init +EXPORT_SYMBOL_GPL net/netfilter/nf_flow_table 0x6a57e499 flow_offload_teardown +EXPORT_SYMBOL_GPL net/netfilter/nf_flow_table 0x760172d3 nf_flow_snat_port +EXPORT_SYMBOL_GPL net/netfilter/nf_flow_table 0x80a35621 nf_flow_offload_ip_hook +EXPORT_SYMBOL_GPL net/netfilter/nf_flow_table 0x82533b48 nf_flow_table_free +EXPORT_SYMBOL_GPL net/netfilter/nf_flow_table 0x8508db05 flow_offload_refresh +EXPORT_SYMBOL_GPL net/netfilter/nf_flow_table 0x8cb35017 nf_flow_table_init +EXPORT_SYMBOL_GPL net/netfilter/nf_flow_table 0xa9b1f02d flow_offload_lookup +EXPORT_SYMBOL_GPL net/netfilter/nf_flow_table 0xb9de0718 nf_flow_table_offload_setup +EXPORT_SYMBOL_GPL net/netfilter/nf_flow_table 0xc4adbe50 nf_flow_dnat_port +EXPORT_SYMBOL_GPL net/netfilter/nf_log_common 0x0281dd4e nf_log_dump_udp_header +EXPORT_SYMBOL_GPL net/netfilter/nf_log_common 0x989a8dfe nf_log_dump_tcp_header +EXPORT_SYMBOL_GPL net/netfilter/nf_log_common 0xbe809501 nf_log_dump_packet_common +EXPORT_SYMBOL_GPL net/netfilter/nf_log_common 0xbf1629e4 nf_log_dump_sk_uid_gid +EXPORT_SYMBOL_GPL net/netfilter/nf_log_common 0xc0fa6567 nf_log_l2packet +EXPORT_SYMBOL_GPL net/netfilter/nf_log_common 0xfe626068 nf_log_dump_vlan +EXPORT_SYMBOL_GPL net/netfilter/nf_nat 0x018d5def nf_nat_packet +EXPORT_SYMBOL_GPL net/netfilter/nf_nat 0x09515815 nf_nat_inet_fn +EXPORT_SYMBOL_GPL net/netfilter/nf_nat 0x3bc17c49 nf_nat_masquerade_inet_register_notifiers +EXPORT_SYMBOL_GPL net/netfilter/nf_nat 0x51482738 nf_nat_redirect_ipv6 +EXPORT_SYMBOL_GPL net/netfilter/nf_nat 0x58b7a492 nf_nat_ipv6_unregister_fn +EXPORT_SYMBOL_GPL net/netfilter/nf_nat 0x61d57f58 nf_nat_icmp_reply_translation +EXPORT_SYMBOL_GPL net/netfilter/nf_nat 0x73e91e47 nf_nat_inet_register_fn +EXPORT_SYMBOL_GPL net/netfilter/nf_nat 0x97ce3e72 nf_nat_masquerade_ipv4 +EXPORT_SYMBOL_GPL net/netfilter/nf_nat 0x9d6dc31c nf_nat_inet_unregister_fn +EXPORT_SYMBOL_GPL net/netfilter/nf_nat 0x9f5773d8 nf_nat_ipv6_register_fn +EXPORT_SYMBOL_GPL net/netfilter/nf_nat 0xac309e40 nf_nat_alloc_null_binding +EXPORT_SYMBOL_GPL net/netfilter/nf_nat 0xbaf8e6c9 nf_ct_nat_ext_add +EXPORT_SYMBOL_GPL net/netfilter/nf_nat 0xbde1b97c nf_nat_ipv4_register_fn +EXPORT_SYMBOL_GPL net/netfilter/nf_nat 0xd9c25654 nf_nat_masquerade_inet_unregister_notifiers +EXPORT_SYMBOL_GPL net/netfilter/nf_nat 0xdb69c922 nf_nat_icmpv6_reply_translation +EXPORT_SYMBOL_GPL net/netfilter/nf_nat 0xe96dd467 nf_nat_ipv4_unregister_fn +EXPORT_SYMBOL_GPL net/netfilter/nf_nat 0xeff40c87 nf_nat_masquerade_ipv6 +EXPORT_SYMBOL_GPL net/netfilter/nf_nat 0xfc06e617 nf_nat_redirect_ipv4 +EXPORT_SYMBOL_GPL net/netfilter/nf_synproxy_core 0x06793936 nf_synproxy_ipv6_init +EXPORT_SYMBOL_GPL net/netfilter/nf_synproxy_core 0x1f099794 synproxy_init_timestamp_cookie +EXPORT_SYMBOL_GPL net/netfilter/nf_synproxy_core 0x25033fcd synproxy_send_client_synack +EXPORT_SYMBOL_GPL net/netfilter/nf_synproxy_core 0x69ca3ae9 ipv4_synproxy_hook +EXPORT_SYMBOL_GPL net/netfilter/nf_synproxy_core 0x6e165ca9 nf_synproxy_ipv4_init +EXPORT_SYMBOL_GPL net/netfilter/nf_synproxy_core 0x79ce1999 synproxy_parse_options +EXPORT_SYMBOL_GPL net/netfilter/nf_synproxy_core 0x929aa19c nf_synproxy_ipv6_fini +EXPORT_SYMBOL_GPL net/netfilter/nf_synproxy_core 0xa11704bc ipv6_synproxy_hook +EXPORT_SYMBOL_GPL net/netfilter/nf_synproxy_core 0xb8b4706f synproxy_recv_client_ack_ipv6 +EXPORT_SYMBOL_GPL net/netfilter/nf_synproxy_core 0xca9fc082 synproxy_net_id +EXPORT_SYMBOL_GPL net/netfilter/nf_synproxy_core 0xf2c440e3 synproxy_recv_client_ack +EXPORT_SYMBOL_GPL net/netfilter/nf_synproxy_core 0xfaf5c403 nf_synproxy_ipv4_fini +EXPORT_SYMBOL_GPL net/netfilter/nf_synproxy_core 0xfc6121a3 synproxy_send_client_synack_ipv6 +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0x04c26b4c nft_chain_validate_hooks +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0x0705943f nft_meta_get_dump +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0x1195448f nft_meta_set_init +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0x1e6b75a3 nft_parse_register +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0x28e4a889 nf_tables_deactivate_set +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0x2ded8672 nft_chain_validate +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0x2dfbfd00 nft_meta_set_validate +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0x31b2c902 nft_validate_register_store +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0x3251d762 nf_tables_trans_destroy_flush_work +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0x33ae2ca1 nft_data_dump +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0x375b2a75 nft_dump_register +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0x375bc255 nft_register_obj +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0x41251ad7 nft_set_lookup_global +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0x41b71e65 nft_trace_enabled +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0x47715438 nft_meta_get_eval +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0x47ae2add nft_meta_get_init +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0x502eed3d nft_meta_policy +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0x62c1bd52 nft_meta_set_dump +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0x6dd7e82c nft_obj_notify +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0x6e19f83b __nft_release_basechain +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0x6ef9ebdd nft_data_init +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0x748974fa nft_do_chain +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0x7692821f nft_data_release +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0x79b2ffc4 nft_unregister_expr +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0x7a78e8b4 nf_tables_deactivate_flowtable +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0x803dc5fb nft_obj_lookup +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0x8381452f nft_register_flowtable_type +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0x85430a76 nft_validate_register_load +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0xab7c2575 nf_tables_destroy_set +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0xabd96c7a nft_register_expr +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0xad6e7830 nft_meta_set_destroy +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0xadf0172e nf_tables_bind_set +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0xb03261d3 nft_unregister_flowtable_type +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0xbaa3a9f9 nft_unregister_chain_type +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0xbe811175 nft_chain_validate_dependency +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0xc222ce5c nft_unregister_obj +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0xd7ceca7c nft_set_elem_destroy +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0xde57b5f5 nft_parse_u32_check +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0xdf84ae54 nft_flowtable_lookup +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0xe7de611c nft_register_chain_type +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0xf0171b9e nft_meta_set_eval +EXPORT_SYMBOL_GPL net/netfilter/nfnetlink 0x05dd279e nfnetlink_unicast +EXPORT_SYMBOL_GPL net/netfilter/nfnetlink 0x3d954538 nfnetlink_subsys_unregister +EXPORT_SYMBOL_GPL net/netfilter/nfnetlink 0x3dadb02f nfnetlink_set_err +EXPORT_SYMBOL_GPL net/netfilter/nfnetlink 0x5ce3b588 nfnl_lock +EXPORT_SYMBOL_GPL net/netfilter/nfnetlink 0x673f808f nfnetlink_has_listeners +EXPORT_SYMBOL_GPL net/netfilter/nfnetlink 0xdb065657 nfnl_unlock +EXPORT_SYMBOL_GPL net/netfilter/nfnetlink 0xdd1fd003 nfnetlink_send +EXPORT_SYMBOL_GPL net/netfilter/nfnetlink 0xf62a769b nfnetlink_subsys_register +EXPORT_SYMBOL_GPL net/netfilter/nfnetlink_acct 0x997720e6 nfnl_acct_update +EXPORT_SYMBOL_GPL net/netfilter/nfnetlink_acct 0xb4beaa72 nfnl_acct_find_get +EXPORT_SYMBOL_GPL net/netfilter/nfnetlink_acct 0xbecf5d14 nfnl_acct_put +EXPORT_SYMBOL_GPL net/netfilter/nfnetlink_acct 0xe52796e5 nfnl_acct_overquota +EXPORT_SYMBOL_GPL net/netfilter/nfnetlink_osf 0x35eff5e0 nf_osf_fingers +EXPORT_SYMBOL_GPL net/netfilter/nfnetlink_osf 0xe93f590c nf_osf_find +EXPORT_SYMBOL_GPL net/netfilter/nfnetlink_osf 0xf655da3c nf_osf_match +EXPORT_SYMBOL_GPL net/netfilter/nft_fib 0x3d4a6db4 nft_fib_store_result +EXPORT_SYMBOL_GPL net/netfilter/nft_fib 0x9366aa7f nft_fib_dump +EXPORT_SYMBOL_GPL net/netfilter/nft_fib 0xb81e9032 nft_fib_init +EXPORT_SYMBOL_GPL net/netfilter/nft_fib 0xb8dfe1de nft_fib_validate +EXPORT_SYMBOL_GPL net/netfilter/nft_reject 0x105b07e2 nft_reject_policy +EXPORT_SYMBOL_GPL net/netfilter/nft_reject 0x1de558c1 nft_reject_icmpv6_code +EXPORT_SYMBOL_GPL net/netfilter/nft_reject 0x95d30444 nft_reject_dump +EXPORT_SYMBOL_GPL net/netfilter/nft_reject 0xa0200ed7 nft_reject_init +EXPORT_SYMBOL_GPL net/netfilter/nft_reject 0xb266d647 nft_reject_validate +EXPORT_SYMBOL_GPL net/netfilter/nft_reject 0xe2c84666 nft_reject_icmp_code +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0x04e27719 xt_compat_flush_offsets +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0x0b8f24a3 xt_compat_target_from_user +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0x0ca5dea2 xt_check_target +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0x0d7567ab xt_unregister_table +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0x18b1b21f xt_proto_fini +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0x24c8e482 xt_copy_counters_from_user +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0x2b1aa4fc xt_hook_ops_alloc +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0x3880ad8d xt_match_to_user +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0x473a2e76 xt_target_to_user +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0x56fe9967 xt_compat_match_to_user +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0x6b1ba350 xt_find_table_lock +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0x72f77844 xt_check_match +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0x78e14797 xt_replace_table +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 0x8530d47e xt_register_table +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0x93b577d0 xt_compat_match_offset +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0x9c995c69 xt_percpu_counter_alloc +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0xa0a4eb91 xt_compat_match_from_user +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0xa7c94f1d xt_compat_lock +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0xb1e3b1c4 xt_compat_target_offset +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0xbbb85831 xt_compat_target_to_user +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0xbfacb837 xt_percpu_counter_free +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0xc7fae024 xt_compat_calc_jump +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0xc9b44448 xt_request_find_table_lock +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 0xda5a0c5b xt_request_find_target +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0xda72ca79 xt_table_unlock +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0xddf68fc6 xt_find_revision +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0xf2307615 xt_request_find_match +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0xf7d48b11 xt_proto_init +EXPORT_SYMBOL_GPL net/netfilter/xt_RATEEST 0xf1b42e28 xt_rateest_lookup +EXPORT_SYMBOL_GPL net/netfilter/xt_RATEEST 0xfbcf509c xt_rateest_put +EXPORT_SYMBOL_GPL net/nfc/nci/nci_spi 0x06a9c8d0 nci_spi_allocate_spi +EXPORT_SYMBOL_GPL net/nfc/nci/nci_spi 0x0e54ff74 nci_spi_send +EXPORT_SYMBOL_GPL net/nfc/nci/nci_spi 0x2ceb8236 nci_spi_read +EXPORT_SYMBOL_GPL net/nfc/nci/nci_uart 0x4f9bd037 nci_uart_register +EXPORT_SYMBOL_GPL net/nfc/nci/nci_uart 0x6146e471 nci_uart_set_config +EXPORT_SYMBOL_GPL net/nfc/nci/nci_uart 0x737e79d1 nci_uart_unregister +EXPORT_SYMBOL_GPL net/nsh/nsh 0x789792b2 nsh_pop +EXPORT_SYMBOL_GPL net/nsh/nsh 0xdcd28cc2 nsh_push +EXPORT_SYMBOL_GPL net/openvswitch/openvswitch 0x31be5e20 ovs_vport_ops_unregister +EXPORT_SYMBOL_GPL net/openvswitch/openvswitch 0x445c25a6 __ovs_vport_ops_register +EXPORT_SYMBOL_GPL net/openvswitch/openvswitch 0x81146932 ovs_vport_alloc +EXPORT_SYMBOL_GPL net/openvswitch/openvswitch 0xaf3a00f9 ovs_netdev_link +EXPORT_SYMBOL_GPL net/openvswitch/openvswitch 0xcd68ddd6 ovs_netdev_tunnel_destroy +EXPORT_SYMBOL_GPL net/openvswitch/openvswitch 0xd20d2870 ovs_vport_free +EXPORT_SYMBOL_GPL net/psample/psample 0x4497be27 psample_sample_packet +EXPORT_SYMBOL_GPL net/psample/psample 0x9a210088 psample_group_take +EXPORT_SYMBOL_GPL net/psample/psample 0xc0b71177 psample_group_get +EXPORT_SYMBOL_GPL net/psample/psample 0xfb1e7498 psample_group_put +EXPORT_SYMBOL_GPL net/qrtr/ns 0x636a2832 qrtr_ns_init +EXPORT_SYMBOL_GPL net/qrtr/ns 0x8d25501f qrtr_ns_remove +EXPORT_SYMBOL_GPL net/qrtr/qrtr 0x01da9ed1 qrtr_endpoint_unregister +EXPORT_SYMBOL_GPL net/qrtr/qrtr 0x18b2e480 qrtr_endpoint_register +EXPORT_SYMBOL_GPL net/qrtr/qrtr 0xe414a7ba qrtr_endpoint_post +EXPORT_SYMBOL_GPL net/rds/rds 0x00a467af rds_wq +EXPORT_SYMBOL_GPL net/rds/rds 0x02488b01 rds_send_ping +EXPORT_SYMBOL_GPL net/rds/rds 0x0d580f4f rds_info_deregister_func +EXPORT_SYMBOL_GPL net/rds/rds 0x0f751608 rds_conn_connect_if_down +EXPORT_SYMBOL_GPL net/rds/rds 0x286e123b rds_conn_destroy +EXPORT_SYMBOL_GPL net/rds/rds 0x2b0d543c rds_message_add_extension +EXPORT_SYMBOL_GPL net/rds/rds 0x323f15c3 rds_send_drop_acked +EXPORT_SYMBOL_GPL net/rds/rds 0x33728ea5 rds_trans_register +EXPORT_SYMBOL_GPL net/rds/rds 0x36087aa4 rds_stats +EXPORT_SYMBOL_GPL net/rds/rds 0x440b4daf rds_conn_drop +EXPORT_SYMBOL_GPL net/rds/rds 0x45a4781e rds_addr_cmp +EXPORT_SYMBOL_GPL net/rds/rds 0x53ba53d3 rds_message_addref +EXPORT_SYMBOL_GPL net/rds/rds 0x54f2a1b4 rds_inc_path_init +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 0x6479d99b rds_connect_path_complete +EXPORT_SYMBOL_GPL net/rds/rds 0x7b399e66 rds_page_remainder_alloc +EXPORT_SYMBOL_GPL net/rds/rds 0x824504fb rds_send_xmit +EXPORT_SYMBOL_GPL net/rds/rds 0x85a029a3 rds_send_path_drop_acked +EXPORT_SYMBOL_GPL net/rds/rds 0x85e4e520 rds_stats_info_copy +EXPORT_SYMBOL_GPL net/rds/rds 0x87767ccf rds_conn_create_outgoing +EXPORT_SYMBOL_GPL net/rds/rds 0x8fe4d872 rds_conn_path_connect_if_down +EXPORT_SYMBOL_GPL net/rds/rds 0x98926051 rds_rdma_send_complete +EXPORT_SYMBOL_GPL net/rds/rds 0x9a2a917f rds_for_each_conn_info +EXPORT_SYMBOL_GPL net/rds/rds 0x9b9f0018 rds_message_put +EXPORT_SYMBOL_GPL net/rds/rds 0x9c6e0fba rds_info_register_func +EXPORT_SYMBOL_GPL net/rds/rds 0xa4fba9b7 rds_connect_complete +EXPORT_SYMBOL_GPL net/rds/rds 0xacf5fa78 rds_inc_put +EXPORT_SYMBOL_GPL net/rds/rds 0xbddcb182 rds_trans_unregister +EXPORT_SYMBOL_GPL net/rds/rds 0xc269cd0f rds_recv_incoming +EXPORT_SYMBOL_GPL net/rds/rds 0xc2dab779 rds_info_copy +EXPORT_SYMBOL_GPL net/rds/rds 0xce475fc0 rds_send_path_reset +EXPORT_SYMBOL_GPL net/rds/rds 0xd18332d2 rds_conn_create +EXPORT_SYMBOL_GPL net/rds/rds 0xebd9914a rds_atomic_send_complete +EXPORT_SYMBOL_GPL net/rds/rds 0xebf81cb5 rds_conn_path_drop +EXPORT_SYMBOL_GPL net/rds/rds 0xf8b4625a rds_message_unmapped +EXPORT_SYMBOL_GPL net/rds/rds 0xfa87160c rds_inc_init +EXPORT_SYMBOL_GPL net/rds/rds 0xfd22dd56 rds_cong_map_updated +EXPORT_SYMBOL_GPL net/sched/sch_pie 0x08fc8040 pie_drop_early +EXPORT_SYMBOL_GPL net/sched/sch_pie 0x6ce9b467 pie_calculate_probability +EXPORT_SYMBOL_GPL net/sched/sch_pie 0xc0021588 pie_process_dequeue +EXPORT_SYMBOL_GPL net/sched/sch_taprio 0x5fc3c6ed taprio_offload_free +EXPORT_SYMBOL_GPL net/sched/sch_taprio 0xa7f08102 taprio_offload_get +EXPORT_SYMBOL_GPL net/sctp/sctp 0x448f91b1 sctp_for_each_transport +EXPORT_SYMBOL_GPL net/sctp/sctp 0x47817879 sctp_transport_lookup_process +EXPORT_SYMBOL_GPL net/sctp/sctp 0xb78b8e23 sctp_for_each_endpoint +EXPORT_SYMBOL_GPL net/sctp/sctp 0xc5e492a7 sctp_get_sctp_info +EXPORT_SYMBOL_GPL net/smc/smc 0x370ff6be smcd_register_dev +EXPORT_SYMBOL_GPL net/smc/smc 0x433ef430 smcd_unregister_dev +EXPORT_SYMBOL_GPL net/smc/smc 0x4424d7d4 smcd_handle_irq +EXPORT_SYMBOL_GPL net/smc/smc 0x4a10b68e smcd_handle_event +EXPORT_SYMBOL_GPL net/smc/smc 0x89f71c23 smc_proto6 +EXPORT_SYMBOL_GPL net/smc/smc 0xbe5db590 smcd_free_dev +EXPORT_SYMBOL_GPL net/smc/smc 0xc5139e9e smc_unhash_sk +EXPORT_SYMBOL_GPL net/smc/smc 0xc737d990 smcd_alloc_dev +EXPORT_SYMBOL_GPL net/smc/smc 0xd4a7fb1c smc_hash_sk +EXPORT_SYMBOL_GPL net/smc/smc 0xdf8906ce smc_proto +EXPORT_SYMBOL_GPL net/sunrpc/auth_gss/auth_rpcgss 0x38d3dce5 g_make_token_header +EXPORT_SYMBOL_GPL net/sunrpc/auth_gss/auth_rpcgss 0x3a2982d8 gss_mech_unregister +EXPORT_SYMBOL_GPL net/sunrpc/auth_gss/auth_rpcgss 0x482ac5a4 g_token_size +EXPORT_SYMBOL_GPL net/sunrpc/auth_gss/auth_rpcgss 0xbfbb1bf0 svcauth_gss_flavor +EXPORT_SYMBOL_GPL net/sunrpc/auth_gss/auth_rpcgss 0xc90cae23 gss_mech_register +EXPORT_SYMBOL_GPL net/sunrpc/auth_gss/auth_rpcgss 0xd7673035 g_verify_token_header +EXPORT_SYMBOL_GPL net/sunrpc/auth_gss/auth_rpcgss 0xf8b66b94 svcauth_gss_register_pseudoflavor +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x02acc647 rpcauth_destroy_credcache +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x02ffe7ad xprt_register_transport +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x0317c1fe svc_encode_read_payload +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x03dfa7fc xdr_encode_array2 +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x040d87fe rpc_count_iostats +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 0x07b30bce xprt_reserve_xprt +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x07db0080 xprt_write_space +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x0894a20c sunrpc_init_cache_detail +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x0ab8813d xprt_reconnect_backoff +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x0d57a263 cache_seq_next_rcu +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x0d7e092d rpc_peeraddr +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x117e2361 svc_exit_thread +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x139adff0 xdr_inline_decode +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x1512ef5d cache_register_net +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x152e0314 xdr_init_decode +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x163d0cbf xdr_process_buf +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x169d83df xprt_unregister_transport +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x1714a38e cache_seq_stop_rcu +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x183af9da xdr_write_pages +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x1b0327d0 rpcauth_wrap_req_encode +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x1b3e31d9 sunrpc_cache_lookup_rcu +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x1bcaecbb svc_xprt_copy_addrs +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x1c42d598 cache_destroy_net +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x1e119a79 rpcauth_get_pseudoflavor +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x1f2a9970 rpc_ntop +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x1f9f20df xdr_stream_pos +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x1fc0aa9f rpc_clone_client +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x205a22ad svc_reg_xprt_class +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x2226d43c xdr_stream_decode_string +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x23101696 rpc_sleep_on_timeout +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x23baa272 svc_rpcb_setup +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x2430e60b svc_create +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x24b7a95d rpc_net_ns +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x24f62edb xprt_reserve_xprt_cong +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x26ccd02e svc_xprt_do_enqueue +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x26e73028 xdr_terminate_string +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x27d1c94c rpc_clnt_swap_deactivate +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x2919b156 xdr_decode_string_inplace +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x2ad1292e svc_bind +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x2d3a0be4 svc_return_autherr +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x2e329340 rpc_create +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x2eb056a6 cache_seq_start_rcu +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x31a89d59 rpc_debug +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x32e3b1f2 rpc_clnt_test_and_add_xprt +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x3366f5d6 __rpc_wait_for_completion_task +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x34d184de rpc_wake_up_status +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x35aa828d xdr_stream_decode_string_dup +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x3620190e xprt_update_rtt +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x38654236 svc_drop +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x387e1639 rpc_pipefs_notifier_register +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x3927fddb rpc_unlink +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x3a3ce104 xprt_destroy_backchannel +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x3aaf1052 svc_prepare_thread +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x3d0c62b8 xprt_free +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x3e0e1937 rpcb_getport_async +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x3f9a2b0b rpcauth_get_gssinfo +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x40681045 svc_seq_show +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x41e00a79 rpc_uaddr2sockaddr +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x4259f06c svc_xprt_init +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x44c69c15 svc_rpcbind_set_version +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x44c95710 svcauth_unix_purge +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x453efa54 svc_pool_map +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x4568b00c xdr_buf_from_iov +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x47a4be99 rpc_call_start +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x480d1007 xdr_shift_buf +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x48e9ebee svc_xprt_put +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x4a46499e xdr_buf_subsegment +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x4afedab1 xprtiod_workqueue +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x4c09b9c0 rpc_mkpipe_data +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x4cbba344 rpc_count_iostats_metrics +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x4d9e7409 rpc_clnt_xprt_switch_has_addr +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x4dac77f0 xdr_encode_netobj +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x4dbc966f svc_sock_update_bufs +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x4e17ce49 svc_generic_init_request +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x4e8f6ca7 sunrpc_net_id +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x4f138c52 svc_unreg_xprt_class +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x52230811 rpc_max_payload +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x52a4f259 rpc_force_rebind +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x53445f68 nlm_debug +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x5367be58 xdr_enter_page +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x54774451 xprt_release_rqst_cong +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x54f9d07e xprt_adjust_cwnd +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x5940ddbe write_bytes_to_xdr_buf +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x5a2a9631 put_rpccred +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x5a2fcc79 rpc_malloc +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x5a338496 rpc_release_client +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x5a45ba31 svc_auth_unregister +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x5ac40bfa rpcauth_init_credcache +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x5c4c27a3 svc_set_client +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x5e66fbd9 rpc_clnt_add_xprt +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x5e6f6091 rpc_proc_unregister +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x5f4c78f1 svc_print_addr +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x6072a567 svc_addsock +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x610a19bc xprt_put +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x610d9f76 svc_fill_write_vector +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x61979c24 svc_find_xprt +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x625c9c84 xprt_unpin_rqst +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x62f034bc rpc_alloc_iostats +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x644f012e rpc_clnt_swap_activate +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x65099827 rpc_put_task +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x66ed2439 rpc_destroy_wait_queue +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x67521016 xdr_stream_decode_opaque_dup +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x6796c4e6 rpc_peeraddr2str +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x6946028f svc_rqst_alloc +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x6a7c1f3b svc_create_xprt +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x6ae50526 rpc_d_lookup_sb +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x6b135bce svc_create_pooled +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x6bfa8cc6 rpc_bind_new_program +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x6d25c74f xprt_reconnect_delay +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x6e20e0da xprt_wake_pending_tasks +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x6f019741 rpc_put_task_async +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x7088ca5b rpc_task_timeout +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 0x72899bbc xdr_encode_word +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x74408b30 xdr_decode_word +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x7549b45d rpc_task_release_transport +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x762f063c sunrpc_cache_unhash +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x76eca682 svc_max_payload +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x776a116d xprt_free_slot +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x77c110d2 rpcauth_register +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x78ab66ef rpc_put_sb_net +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x79325da0 rpcauth_create +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x79b2f6ff svc_proc_unregister +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x7a5e3458 sunrpc_cache_register_pipefs +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x7b6bc153 rpcauth_unregister +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x7bd874a4 svc_destroy +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x7c2fd0c1 cache_unregister_net +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x7de53067 rpc_init_rtt +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x7e7e0f45 rpc_restart_call_prepare +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x80719a3a svc_proc_register +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x817d49c1 xprt_alloc +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x829e4f05 svc_wake_up +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x83716cdd rpc_set_connect_timeout +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x837b6359 rpc_sleep_on +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x86437c1e xprt_pin_rqst +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x878accfb rpc_call_async +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x8832dc0d rpc_clnt_setup_test_and_add_xprt +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x89e1656e svc_auth_register +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x8b7c818d svc_age_temp_xprts_now +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x8c2edd3b svc_authenticate +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x8d82fc2a sunrpc_cache_unregister_pipefs +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x8e6c47c9 rpc_clnt_xprt_switch_put +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x92b7799e xprt_complete_rqst +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x92cec35a xdr_read_pages +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x95562d0d rpc_restart_call +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x958cb514 svc_alien_sock +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x9670b5a1 rpc_free_iostats +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x969903d4 rpc_delay +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x97ccad4a rpc_call_null +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x980d5c6b xprt_setup_backchannel +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x99aee353 rpc_init_priority_wait_queue +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x9ab03548 rpc_destroy_pipe_data +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x9b7ac8a6 svc_rqst_free +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x9bd91db6 rpc_init_pipe_dir_head +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x9cdc2843 rpc_sleep_on_priority_timeout +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x9d7bd6c2 sunrpc_destroy_cache_detail +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x9ec9041c xprt_wait_for_reply_request_def +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x9f879fc5 xprt_disconnect_done +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xa0cbcede cache_check +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xa0ddbaa2 rpcauth_stringify_acceptor +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xa13acdb8 svc_pool_map_put +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xa2220a20 svc_process +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xa275ea59 auth_domain_put +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xa28489c5 xprt_release_xprt +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xa2ad2d24 xdr_decode_array2 +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xa3cfc1c2 svc_set_num_threads_sync +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xa4f172e9 svc_set_num_threads +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xa50f3be1 rpc_prepare_reply_pages +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xa5740c31 xprt_get +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xa66cd441 svcauth_unix_set_client +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xa7145267 xdr_buf_trim +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xa78e4985 rpc_clnt_show_stats +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xa79e964e rpc_max_bc_payload +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xa9a02c03 rpc_clnt_iterate_for_each_xprt +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xa9f8eafe bc_svc_process +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xaa19f301 rpc_get_sb_net +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xaaca407e rpc_find_or_alloc_pipe_dir_object +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xac9d3e5d rpc_clnt_xprt_switch_add_xprt +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xaf5bf6ef nfs_debug +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xafade548 xprt_wait_for_buffer_space +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xb08b8738 svc_fill_symlink_pathname +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xb0a51125 rpc_shutdown_client +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xb0b1cd71 rpc_pipe_generic_upcall +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xb29481e4 rpc_remove_pipe_dir_object +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xb312d0c4 svc_pool_map_get +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xb51a3724 rpc_pipefs_notifier_unregister +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xb67d53ab sunrpc_cache_pipe_upcall_timeout +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xb6cd9d93 rpc_localaddr +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xbac90247 svc_reserve +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xbe7140e7 xprt_request_get_cong +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xbeaf3ab5 rpc_killall_tasks +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xbf002fdf gssd_running +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xbf9d1b96 nfsd_debug +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xc0d86680 rpc_init_pipe_dir_object +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xc12435e3 rpc_calc_rto +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xc1634919 rpc_add_pipe_dir_object +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xc28a0ad7 xdr_init_decode_pages +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xc73824d7 rpc_mkpipe_dentry +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xc8e96dea qword_addhex +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xc90869cf svc_shutdown_net +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xc9cee31a xprt_wait_for_reply_request_rtt +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xca76ad14 rpc_queue_upcall +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xcac23bb0 rpc_pton +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xcb35984c rpcauth_lookupcred +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xcc09eac9 rpc_setbufsize +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xce678a59 xdr_decode_netobj +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xce8084bc sunrpc_cache_pipe_upcall +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xcee467f3 xprt_load_transport +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xd11524cb xdr_inline_pages +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xd42b7160 xdr_reserve_space +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xd6503461 sunrpc_cache_update +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xd66976bf rpc_run_task +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xd8469ad4 rpc_wake_up_next +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xd92d34cf xdr_stream_decode_opaque +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xda2e5b20 rpc_proc_register +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xdcee1eb3 xdr_commit_encode +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xdda307f6 rpcauth_lookup_credcache +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xde56d24c rpc_sleep_on_priority +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xdf8a527e rpc_num_bc_slots +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xe062db12 xprt_lookup_rqst +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xe0668e5b _copy_from_pages +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xe0ad041d rpcauth_init_cred +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xe17cf98e cache_create_net +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xe20279b7 rpc_free +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xe25cfd77 xdr_init_encode +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xe5452ac5 xprt_force_disconnect +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xe5919cb1 xdr_encode_opaque +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xe622dac3 xprt_release_xprt_cong +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xe6e278ce rpc_call_sync +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xe76e0433 rpc_exit +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xe882d9a0 svc_generic_rpcbind_set +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xe9044910 rpc_wake_up_first +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xe97f4ce5 qword_get +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xeaab9a2d rpcauth_unwrap_resp_decode +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xeabadbd0 svc_recv +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xeb3c5378 read_bytes_from_xdr_buf +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xedcf6be4 qword_add +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xeeacab69 rpc_update_rtt +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xeef9efb4 xprt_alloc_slot +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xefbec571 rpc_wake_up_queued_task +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xf0b7775d rpc_init_wait_queue +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xf1049a05 rpc_switch_client_transport +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xf410e520 auth_domain_find +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xf528d46f svc_xprt_enqueue +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xf5449f8e xdr_set_scratch_buffer +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xf6ad1fc8 unix_domain_find +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xf6e53530 svc_xprt_names +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xf8911e15 rpc_clone_client_set_auth +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xf99992a3 cache_purge +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xfaa70bc0 rpc_machine_cred +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xfb1154e5 svc_close_xprt +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xfce8586b svc_rpcb_cleanup +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xfd37dd04 csum_partial_copy_to_xdr +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xfd82f0fc auth_domain_lookup +EXPORT_SYMBOL_GPL net/tls/tls 0x0f88526c tls_offload_tx_resync_request +EXPORT_SYMBOL_GPL net/tls/tls 0x5ccbb0a6 tls_device_sk_destruct +EXPORT_SYMBOL_GPL net/tls/tls 0xd49d931b tls_encrypt_skb +EXPORT_SYMBOL_GPL net/tls/tls 0xd4fdf992 tls_validate_xmit_skb +EXPORT_SYMBOL_GPL net/vmw_vsock/vmw_vsock_virtio_transport_common 0x0285c91e virtio_transport_recv_pkt +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 0x1416b379 virtio_transport_stream_has_space +EXPORT_SYMBOL_GPL net/vmw_vsock/vmw_vsock_virtio_transport_common 0x27ca66d9 virtio_transport_do_socket_init +EXPORT_SYMBOL_GPL net/vmw_vsock/vmw_vsock_virtio_transport_common 0x2d445d15 virtio_transport_stream_dequeue +EXPORT_SYMBOL_GPL net/vmw_vsock/vmw_vsock_virtio_transport_common 0x2d7dcd15 virtio_transport_notify_buffer_size +EXPORT_SYMBOL_GPL net/vmw_vsock/vmw_vsock_virtio_transport_common 0x36eb0697 virtio_transport_notify_poll_out +EXPORT_SYMBOL_GPL net/vmw_vsock/vmw_vsock_virtio_transport_common 0x377fa2e7 virtio_transport_destruct +EXPORT_SYMBOL_GPL net/vmw_vsock/vmw_vsock_virtio_transport_common 0x4518abe2 virtio_transport_connect +EXPORT_SYMBOL_GPL net/vmw_vsock/vmw_vsock_virtio_transport_common 0x48c30581 virtio_transport_notify_recv_init +EXPORT_SYMBOL_GPL net/vmw_vsock/vmw_vsock_virtio_transport_common 0x5faac6cf virtio_transport_dgram_bind +EXPORT_SYMBOL_GPL net/vmw_vsock/vmw_vsock_virtio_transport_common 0x6065b212 virtio_transport_stream_enqueue +EXPORT_SYMBOL_GPL net/vmw_vsock/vmw_vsock_virtio_transport_common 0x60c9d9da virtio_transport_put_credit +EXPORT_SYMBOL_GPL net/vmw_vsock/vmw_vsock_virtio_transport_common 0x6b0f25a7 virtio_transport_stream_rcvhiwat +EXPORT_SYMBOL_GPL net/vmw_vsock/vmw_vsock_virtio_transport_common 0x6c148738 virtio_transport_notify_send_pre_block +EXPORT_SYMBOL_GPL net/vmw_vsock/vmw_vsock_virtio_transport_common 0x71196a2a virtio_transport_notify_poll_in +EXPORT_SYMBOL_GPL net/vmw_vsock/vmw_vsock_virtio_transport_common 0x888dadff virtio_transport_inc_tx_pkt +EXPORT_SYMBOL_GPL net/vmw_vsock/vmw_vsock_virtio_transport_common 0x927f4888 virtio_transport_notify_send_init +EXPORT_SYMBOL_GPL net/vmw_vsock/vmw_vsock_virtio_transport_common 0xa01cd7f9 virtio_transport_release +EXPORT_SYMBOL_GPL net/vmw_vsock/vmw_vsock_virtio_transport_common 0xa6c15a8f 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 0xc12313d8 virtio_transport_notify_recv_pre_block +EXPORT_SYMBOL_GPL net/vmw_vsock/vmw_vsock_virtio_transport_common 0xc8edf4d4 virtio_transport_get_credit +EXPORT_SYMBOL_GPL net/vmw_vsock/vmw_vsock_virtio_transport_common 0xcad04af4 virtio_transport_notify_recv_pre_dequeue +EXPORT_SYMBOL_GPL net/vmw_vsock/vmw_vsock_virtio_transport_common 0xd9a4010c virtio_transport_notify_recv_post_dequeue +EXPORT_SYMBOL_GPL net/vmw_vsock/vmw_vsock_virtio_transport_common 0xdadc7252 virtio_transport_free_pkt +EXPORT_SYMBOL_GPL net/vmw_vsock/vmw_vsock_virtio_transport_common 0xe01b4b58 virtio_transport_dgram_dequeue +EXPORT_SYMBOL_GPL net/vmw_vsock/vmw_vsock_virtio_transport_common 0xe6a6beb5 virtio_transport_stream_has_data +EXPORT_SYMBOL_GPL net/vmw_vsock/vmw_vsock_virtio_transport_common 0xea355689 virtio_transport_dgram_enqueue +EXPORT_SYMBOL_GPL net/vmw_vsock/vmw_vsock_virtio_transport_common 0xf5041080 virtio_transport_notify_send_post_enqueue +EXPORT_SYMBOL_GPL net/vmw_vsock/vmw_vsock_virtio_transport_common 0xf5bcebca virtio_transport_stream_is_active +EXPORT_SYMBOL_GPL net/vmw_vsock/vmw_vsock_virtio_transport_common 0xf746d033 virtio_transport_shutdown +EXPORT_SYMBOL_GPL net/vmw_vsock/vmw_vsock_virtio_transport_common 0xfb852cb4 virtio_transport_notify_send_pre_enqueue +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0x076dc00a vsock_add_pending +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0x10c3c6d7 vsock_add_tap +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0x1aa7fff5 vsock_remove_pending +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0x2663cb64 vsock_addr_equals_addr +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0x284e07d8 vsock_bind_table +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0x35d0919b vsock_stream_has_data +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0x389d1fe4 vsock_remove_bound +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0x3bb83028 vsock_remove_connected +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0x446e144b vsock_assign_transport +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0x4df8e35c vsock_core_get_transport +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0x51b8cff2 vsock_enqueue_accept +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0x51dcfba5 vsock_deliver_tap +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0x548e3171 vsock_stream_has_space +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0x59aa7c32 vsock_remove_tap +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0x59d943c8 vsock_addr_cast +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0x5d42e0f3 vsock_create_connected +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0x631a1594 vsock_for_each_connected_socket +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0x6d4ad882 vsock_find_bound_socket +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0x73879664 vsock_addr_init +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0x751ff010 vsock_addr_unbind +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0x90aa8549 vsock_find_cid +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0x9bb6fd09 vsock_connected_table +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0x9d65333b vsock_remove_sock +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0xa938aaf4 vsock_insert_connected +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0xbd0f699d vsock_addr_bound +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0xbe8f384c vsock_find_connected_socket +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0xc8ebf517 vsock_core_register +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0xc92f7f50 vsock_table_lock +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0xd568cabb vsock_core_unregister +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0xd95ac116 vsock_addr_validate +EXPORT_SYMBOL_GPL net/wimax/wimax 0x0c97945c wimax_msg_data +EXPORT_SYMBOL_GPL net/wimax/wimax 0x1499b437 wimax_report_rfkill_hw +EXPORT_SYMBOL_GPL net/wimax/wimax 0x22ee054b wimax_dev_add +EXPORT_SYMBOL_GPL net/wimax/wimax 0x40aa9068 wimax_report_rfkill_sw +EXPORT_SYMBOL_GPL net/wimax/wimax 0x50a12275 wimax_msg_alloc +EXPORT_SYMBOL_GPL net/wimax/wimax 0x5e75e1b7 wimax_state_get +EXPORT_SYMBOL_GPL net/wimax/wimax 0x6b83ee85 wimax_msg +EXPORT_SYMBOL_GPL net/wimax/wimax 0x83af0941 wimax_msg_send +EXPORT_SYMBOL_GPL net/wimax/wimax 0xb30f30b6 wimax_dev_init +EXPORT_SYMBOL_GPL net/wimax/wimax 0xba08d5a5 wimax_msg_data_len +EXPORT_SYMBOL_GPL net/wimax/wimax 0xc8594a13 wimax_state_change +EXPORT_SYMBOL_GPL net/wimax/wimax 0xf2a747e7 wimax_dev_rm +EXPORT_SYMBOL_GPL net/wimax/wimax 0xf3cbb435 wimax_msg_len +EXPORT_SYMBOL_GPL net/wireless/cfg80211 0x070854f0 cfg80211_wext_siwfrag +EXPORT_SYMBOL_GPL net/wireless/cfg80211 0x10669834 cfg80211_wext_giwrts +EXPORT_SYMBOL_GPL net/wireless/cfg80211 0x16d535a6 cfg80211_wext_giwscan +EXPORT_SYMBOL_GPL net/wireless/cfg80211 0x1888fe1a cfg80211_wext_siwmode +EXPORT_SYMBOL_GPL net/wireless/cfg80211 0x2c408ad9 cfg80211_shutdown_all_interfaces +EXPORT_SYMBOL_GPL net/wireless/cfg80211 0x58dbfc82 cfg80211_wext_giwrange +EXPORT_SYMBOL_GPL net/wireless/cfg80211 0x8342d5e5 cfg80211_wext_siwrts +EXPORT_SYMBOL_GPL net/wireless/cfg80211 0x95b043dd cfg80211_vendor_cmd_get_sender +EXPORT_SYMBOL_GPL net/wireless/cfg80211 0xa65cd465 cfg80211_wext_siwscan +EXPORT_SYMBOL_GPL net/wireless/cfg80211 0xccb74830 cfg80211_pmsr_report +EXPORT_SYMBOL_GPL net/wireless/cfg80211 0xd02e57ef cfg80211_wext_giwmode +EXPORT_SYMBOL_GPL net/wireless/cfg80211 0xd10ab6e7 cfg80211_vendor_cmd_reply +EXPORT_SYMBOL_GPL net/wireless/cfg80211 0xd5176444 cfg80211_wext_giwname +EXPORT_SYMBOL_GPL net/wireless/cfg80211 0xe1f00c9e cfg80211_pmsr_complete +EXPORT_SYMBOL_GPL net/wireless/cfg80211 0xf0a29a26 cfg80211_wext_giwretry +EXPORT_SYMBOL_GPL net/wireless/cfg80211 0xf64f92ff cfg80211_wext_giwfrag +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 0x16d6efea ipcomp_init_state +EXPORT_SYMBOL_GPL net/xfrm/xfrm_ipcomp 0x27f8d0e0 ipcomp_input +EXPORT_SYMBOL_GPL net/xfrm/xfrm_ipcomp 0x6e5cda9c ipcomp_destroy +EXPORT_SYMBOL_GPL net/xfrm/xfrm_ipcomp 0x8ba7aaa4 ipcomp_output +EXPORT_SYMBOL_GPL sound/ac97_bus 0x2b8d99b6 snd_ac97_reset +EXPORT_SYMBOL_GPL sound/core/seq/snd-seq 0xadb51cff snd_seq_client_ioctl_unlock +EXPORT_SYMBOL_GPL sound/core/seq/snd-seq 0xe50413d7 snd_seq_client_ioctl_lock +EXPORT_SYMBOL_GPL sound/core/snd 0x38fed22e snd_ctl_activate_id +EXPORT_SYMBOL_GPL sound/core/snd 0x3c0c6b58 snd_device_initialize +EXPORT_SYMBOL_GPL sound/core/snd 0x3dbbe762 snd_ctl_get_preferred_subdevice +EXPORT_SYMBOL_GPL sound/core/snd 0x5162035e snd_ctl_add_vmaster_hook +EXPORT_SYMBOL_GPL sound/core/snd 0x5b65606c snd_card_ref +EXPORT_SYMBOL_GPL sound/core/snd 0x663342a9 snd_ctl_sync_vmaster +EXPORT_SYMBOL_GPL sound/core/snd 0x83146b0b snd_ctl_apply_vmaster_slaves +EXPORT_SYMBOL_GPL sound/core/snd 0xacdd6260 snd_device_get_state +EXPORT_SYMBOL_GPL sound/core/snd 0xb4a57629 snd_card_disconnect_sync +EXPORT_SYMBOL_GPL sound/core/snd 0xd773b6f0 snd_card_add_dev_attr +EXPORT_SYMBOL_GPL sound/core/snd 0xdac8df32 snd_device_disconnect +EXPORT_SYMBOL_GPL sound/core/snd 0xdde7b6a9 snd_card_rw_proc_new +EXPORT_SYMBOL_GPL sound/core/snd-compress 0x848a13c6 snd_compr_stop_error +EXPORT_SYMBOL_GPL sound/core/snd-compress 0x98d7faab snd_compress_deregister +EXPORT_SYMBOL_GPL sound/core/snd-compress 0xb1cc2a8d snd_compress_register +EXPORT_SYMBOL_GPL sound/core/snd-compress 0xdfa41133 snd_compress_new +EXPORT_SYMBOL_GPL sound/core/snd-pcm 0x04e1b99f snd_pcm_std_chmaps +EXPORT_SYMBOL_GPL sound/core/snd-pcm 0x09e913c1 snd_pcm_alt_chmaps +EXPORT_SYMBOL_GPL sound/core/snd-pcm 0x1d4fb333 snd_pcm_stream_unlock +EXPORT_SYMBOL_GPL sound/core/snd-pcm 0x3abbfc82 snd_pcm_stream_unlock_irqrestore +EXPORT_SYMBOL_GPL sound/core/snd-pcm 0x45bc4c71 snd_pcm_stop_xrun +EXPORT_SYMBOL_GPL sound/core/snd-pcm 0x66f82ccf snd_pcm_hw_constraint_eld +EXPORT_SYMBOL_GPL sound/core/snd-pcm 0x6b3037bc snd_pcm_stream_lock +EXPORT_SYMBOL_GPL sound/core/snd-pcm 0x8d864069 snd_pcm_rate_range_to_bits +EXPORT_SYMBOL_GPL sound/core/snd-pcm 0x998ebc58 snd_pcm_stream_lock_irq +EXPORT_SYMBOL_GPL sound/core/snd-pcm 0x9b09ae6a snd_pcm_lib_default_mmap +EXPORT_SYMBOL_GPL sound/core/snd-pcm 0xa286a234 snd_pcm_format_name +EXPORT_SYMBOL_GPL sound/core/snd-pcm 0xab8bc1a2 snd_pcm_rate_mask_intersect +EXPORT_SYMBOL_GPL sound/core/snd-pcm 0xad7c7f11 _snd_pcm_stream_lock_irqsave +EXPORT_SYMBOL_GPL sound/core/snd-pcm 0xdb491859 snd_pcm_stream_unlock_irq +EXPORT_SYMBOL_GPL sound/core/snd-pcm 0xfe2a14cc snd_pcm_add_chmap_ctls +EXPORT_SYMBOL_GPL sound/core/snd-pcm-dmaengine 0x09c067be snd_dmaengine_pcm_pointer_no_residue +EXPORT_SYMBOL_GPL sound/core/snd-pcm-dmaengine 0x35f4badc snd_dmaengine_pcm_trigger +EXPORT_SYMBOL_GPL sound/core/snd-pcm-dmaengine 0x594a5635 snd_dmaengine_pcm_get_chan +EXPORT_SYMBOL_GPL sound/core/snd-pcm-dmaengine 0x6358e63b snd_dmaengine_pcm_open +EXPORT_SYMBOL_GPL sound/core/snd-pcm-dmaengine 0x8db58879 snd_dmaengine_pcm_refine_runtime_hwparams +EXPORT_SYMBOL_GPL sound/core/snd-pcm-dmaengine 0x8ea5eec5 snd_dmaengine_pcm_set_config_from_dai_data +EXPORT_SYMBOL_GPL sound/core/snd-pcm-dmaengine 0xa47bfe33 snd_dmaengine_pcm_close_release_chan +EXPORT_SYMBOL_GPL sound/core/snd-pcm-dmaengine 0xacae9614 snd_dmaengine_pcm_open_request_chan +EXPORT_SYMBOL_GPL sound/core/snd-pcm-dmaengine 0xb919fa6f snd_dmaengine_pcm_pointer +EXPORT_SYMBOL_GPL sound/core/snd-pcm-dmaengine 0xccd3fb37 snd_hwparams_to_dma_slave_config +EXPORT_SYMBOL_GPL sound/core/snd-pcm-dmaengine 0xda662c29 snd_dmaengine_pcm_close +EXPORT_SYMBOL_GPL sound/core/snd-pcm-dmaengine 0xff7ff090 snd_dmaengine_pcm_request_channel +EXPORT_SYMBOL_GPL sound/core/snd-seq-device 0xd2712875 snd_seq_driver_unregister +EXPORT_SYMBOL_GPL sound/core/snd-seq-device 0xe5e37639 __snd_seq_driver_register +EXPORT_SYMBOL_GPL sound/firewire/snd-firewire-lib 0x1a9166c3 amdtp_domain_add_stream +EXPORT_SYMBOL_GPL sound/firewire/snd-firewire-lib 0x3342ffe4 amdtp_am824_init +EXPORT_SYMBOL_GPL sound/firewire/snd-firewire-lib 0x5b6907d8 amdtp_domain_init +EXPORT_SYMBOL_GPL sound/firewire/snd-firewire-lib 0x6fbf04b9 amdtp_am824_add_pcm_hw_constraints +EXPORT_SYMBOL_GPL sound/firewire/snd-firewire-lib 0xa1389143 amdtp_domain_stream_pcm_ack +EXPORT_SYMBOL_GPL sound/firewire/snd-firewire-lib 0xa9e810c2 amdtp_domain_stream_pcm_pointer +EXPORT_SYMBOL_GPL sound/firewire/snd-firewire-lib 0xb598a41d amdtp_domain_start +EXPORT_SYMBOL_GPL sound/firewire/snd-firewire-lib 0xb7e7b875 amdtp_domain_destroy +EXPORT_SYMBOL_GPL sound/firewire/snd-firewire-lib 0xc2e2ed34 amdtp_am824_midi_trigger +EXPORT_SYMBOL_GPL sound/firewire/snd-firewire-lib 0xc3033bdb amdtp_am824_set_parameters +EXPORT_SYMBOL_GPL sound/firewire/snd-firewire-lib 0xc9e57366 amdtp_am824_set_pcm_position +EXPORT_SYMBOL_GPL sound/firewire/snd-firewire-lib 0xe3874ebe amdtp_am824_set_midi_position +EXPORT_SYMBOL_GPL sound/firewire/snd-firewire-lib 0xff9a493a amdtp_domain_stop +EXPORT_SYMBOL_GPL sound/hda/ext/snd-hda-ext-core 0x021e86c0 snd_hdac_ext_bus_device_init +EXPORT_SYMBOL_GPL sound/hda/ext/snd-hda-ext-core 0x14d4e850 snd_hdac_ext_bus_device_remove +EXPORT_SYMBOL_GPL sound/hda/ext/snd-hda-ext-core 0x16ced258 snd_hdac_ext_bus_link_put +EXPORT_SYMBOL_GPL sound/hda/ext/snd-hda-ext-core 0x1cccb4a8 snd_hdac_ext_stream_set_spib +EXPORT_SYMBOL_GPL sound/hda/ext/snd-hda-ext-core 0x28526189 snd_hdac_ext_bus_ppcap_int_enable +EXPORT_SYMBOL_GPL sound/hda/ext/snd-hda-ext-core 0x30bb2a42 snd_hdac_ext_link_stream_clear +EXPORT_SYMBOL_GPL sound/hda/ext/snd-hda-ext-core 0x3f94e66e snd_hdac_ext_stop_streams +EXPORT_SYMBOL_GPL sound/hda/ext/snd-hda-ext-core 0x4377e4ab snd_hdac_ext_stream_assign +EXPORT_SYMBOL_GPL sound/hda/ext/snd-hda-ext-core 0x470756b7 snd_hdac_ext_stream_get_spbmaxfifo +EXPORT_SYMBOL_GPL sound/hda/ext/snd-hda-ext-core 0x4b31195d snd_hdac_ext_bus_link_power_down_all +EXPORT_SYMBOL_GPL sound/hda/ext/snd-hda-ext-core 0x515fb41f snd_hdac_ext_stream_decouple +EXPORT_SYMBOL_GPL sound/hda/ext/snd-hda-ext-core 0x6a6deabf snd_hdac_ext_bus_link_power_up_all +EXPORT_SYMBOL_GPL sound/hda/ext/snd-hda-ext-core 0x6a6e4c5f snd_hdac_ext_bus_get_ml_capabilities +EXPORT_SYMBOL_GPL sound/hda/ext/snd-hda-ext-core 0x6d709ed4 snd_hdac_ext_bus_get_link +EXPORT_SYMBOL_GPL sound/hda/ext/snd-hda-ext-core 0x71eb4e61 snd_hdac_ext_stream_spbcap_enable +EXPORT_SYMBOL_GPL sound/hda/ext/snd-hda-ext-core 0x74a95780 snd_hdac_ext_link_stream_reset +EXPORT_SYMBOL_GPL sound/hda/ext/snd-hda-ext-core 0x7fdf9a79 snd_hdac_ext_stream_init +EXPORT_SYMBOL_GPL sound/hda/ext/snd-hda-ext-core 0x847a14c9 snd_hdac_ext_stream_release +EXPORT_SYMBOL_GPL sound/hda/ext/snd-hda-ext-core 0x8a7d8f2a snd_hdac_ext_stream_set_dpibr +EXPORT_SYMBOL_GPL sound/hda/ext/snd-hda-ext-core 0x8afacc8f snd_hdac_ext_link_set_stream_id +EXPORT_SYMBOL_GPL sound/hda/ext/snd-hda-ext-core 0x90b8b7a1 snd_hdac_ext_bus_device_exit +EXPORT_SYMBOL_GPL sound/hda/ext/snd-hda-ext-core 0x9c471da2 snd_hdac_link_free_all +EXPORT_SYMBOL_GPL sound/hda/ext/snd-hda-ext-core 0xa261b31c snd_hda_ext_driver_unregister +EXPORT_SYMBOL_GPL sound/hda/ext/snd-hda-ext-core 0xa470e74a snd_hdac_ext_link_clear_stream_id +EXPORT_SYMBOL_GPL sound/hda/ext/snd-hda-ext-core 0xaa03f2dc snd_hdac_ext_link_stream_start +EXPORT_SYMBOL_GPL sound/hda/ext/snd-hda-ext-core 0xaa30d74f snd_hdac_ext_bus_exit +EXPORT_SYMBOL_GPL sound/hda/ext/snd-hda-ext-core 0xb754e8df snd_hdac_stream_free_all +EXPORT_SYMBOL_GPL sound/hda/ext/snd-hda-ext-core 0xbe745bdf snd_hdac_ext_stream_drsm_enable +EXPORT_SYMBOL_GPL sound/hda/ext/snd-hda-ext-core 0xcacd916a snd_hdac_ext_link_stream_setup +EXPORT_SYMBOL_GPL sound/hda/ext/snd-hda-ext-core 0xcdff462c snd_hda_ext_driver_register +EXPORT_SYMBOL_GPL sound/hda/ext/snd-hda-ext-core 0xd009e41a snd_hdac_ext_bus_link_power_down +EXPORT_SYMBOL_GPL sound/hda/ext/snd-hda-ext-core 0xd610778a snd_hdac_ext_stream_init_all +EXPORT_SYMBOL_GPL sound/hda/ext/snd-hda-ext-core 0xd974b210 snd_hdac_ext_stream_set_lpib +EXPORT_SYMBOL_GPL sound/hda/ext/snd-hda-ext-core 0xe59ca1e5 snd_hdac_ext_bus_ppcap_enable +EXPORT_SYMBOL_GPL sound/hda/ext/snd-hda-ext-core 0xf318aec7 snd_hdac_ext_bus_init +EXPORT_SYMBOL_GPL sound/hda/ext/snd-hda-ext-core 0xf7f267f4 snd_hdac_ext_bus_link_power_up +EXPORT_SYMBOL_GPL sound/hda/ext/snd-hda-ext-core 0xf82c2959 snd_hdac_ext_bus_link_get +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0x0051816a snd_hdac_acomp_get_eld +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0x00add28f snd_hdac_regmap_add_vendor_verb +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0x0107ca7a snd_hdac_bus_free_stream_pages +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0x01276a4c snd_hdac_regmap_sync +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0x0539244d snd_hdac_regmap_update_raw_once +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0x13475378 snd_hdac_codec_modalias +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0x1a03d70d snd_hdac_stream_set_params +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0x1eb11e46 snd_hdac_refresh_widgets +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0x2224e0f4 snd_hdac_stream_sync_trigger +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0x26112abe snd_hdac_device_unregister +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0x26292f61 snd_hdac_dsp_cleanup +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0x2648c3fa snd_hdac_bus_send_cmd +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0x26d75c57 snd_hdac_bus_update_rirb +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0x2f66ecfc snd_hdac_sync_audio_rate +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0x3597ea4b snd_hdac_stream_stop +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0x390ac9f9 snd_hdac_stream_reset +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0x3bd544c2 snd_hdac_get_active_channels +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0x3d7aa18f snd_hdac_power_down +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0x3f22c0f7 snd_hdac_register_chmap_ops +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0x3f818365 snd_hdac_device_init +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0x3ff0afd0 snd_hdac_codec_read +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0x4252a397 snd_hdac_stream_timecounter_init +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0x430fe5c3 snd_hdac_stream_init +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0x454c193e snd_hdac_channel_allocation +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0x49e9f6cc snd_hdac_regmap_exit +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0x4b4d7142 snd_hdac_get_sub_nodes +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0x4c7ec4b6 snd_hdac_get_ch_alloc_from_ca +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0x4c95c1eb snd_hdac_stream_sync +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0x4fec34b0 snd_hdac_get_stream +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0x577b86da snd_hdac_add_chmap_ctls +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0x5c07cb49 snd_hdac_calc_stream_format +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0x5c8ecbec snd_hdac_stream_clear +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0x5f3cf0de snd_hdac_i915_init +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0x60931343 snd_hdac_codec_write +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0x630b6d00 snd_hdac_device_set_chip_name +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0x643356d8 snd_hdac_bus_handle_stream_irq +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0x66557be4 snd_hdac_stream_cleanup +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0x66b9a4d2 snd_hdac_acomp_register_notifier +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0x67bfe791 snd_hdac_spk_to_chmap +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0x6898c13e snd_hdac_bus_init_cmd_io +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0x68f826b6 snd_hdac_regmap_update_raw +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0x6ab1e54a snd_hdac_dsp_prepare +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0x6f3d1edd snd_hdac_stream_setup +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0x7105b69d snd_hdac_bus_init +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0x74fa247d snd_hdac_query_supported_pcm +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0x7698293c snd_hdac_regmap_write_raw +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0x77c754a8 snd_hdac_chmap_to_spk_mask +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0x7aded0ac snd_hdac_bus_reset_link +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0x7e68865d snd_hdac_bus_parse_capabilities +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0x8124b1a9 snd_hdac_dsp_trigger +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0x83efff90 snd_hdac_bus_stop_cmd_io +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0x85b8ffa6 snd_hdac_bus_exit +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0x8965577c snd_hdac_setup_channel_mapping +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0x91dc89a8 snd_hdac_bus_get_response +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0x91e04066 snd_hdac_device_exit +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0x9405bc92 snd_hdac_i915_set_bclk +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0x9851e53e snd_hdac_read_parm_uncached +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0x9a8e1877 snd_array_free +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0x9c6518f8 snd_hdac_get_stream_stripe_ctl +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0xa19583bf snd_hdac_bus_exec_verb_unlocked +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0xa29a5b64 snd_hdac_bus_init_chip +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0xa318f0a3 snd_hdac_power_up +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0xaceffbff snd_hdac_get_connections +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0xb7ea55dd snd_hdac_override_parm +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0xb85139e6 snd_hdac_sync_power_state +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0xb87023ce snd_hdac_is_supported_format +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0xbb74c3fa hdac_get_device_id +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0xbe7dd7dc snd_array_new +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0xc2557c54 snd_hdac_bus_exit_link_reset +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0xc53d9e3f snd_hdac_set_codec_wakeup +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0xc653d747 snd_hdac_stream_start +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0xc6f84e60 snd_hdac_acomp_init +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0xcc5e81e7 snd_hdac_acomp_exit +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0xd392f758 snd_hdac_check_power_state +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0xd3c1fd5a snd_hdac_power_up_pm +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0xd562cc73 snd_hdac_regmap_read_raw +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0xda9472b1 snd_hdac_regmap_init +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0xdb2f9a57 snd_hdac_stream_release +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0xdbd3e9e9 snd_hda_bus_type +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0xdc94871b snd_hdac_read +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0xe03bcb13 _snd_hdac_read_parm +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0xe28a2e21 snd_hdac_power_down_pm +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0xe46afe24 snd_hdac_display_power +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0xe4e07754 snd_hdac_print_channel_allocation +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0xe61adb5d snd_hdac_stream_assign +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0xe9b48d63 snd_hdac_bus_enter_link_reset +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0xea58cba0 snd_hdac_stream_setup_periods +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0xf0b4e1c0 snd_hdac_bus_stop_chip +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0xf40efa73 snd_hdac_bus_alloc_stream_pages +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0xf82fef57 snd_hdac_device_register +EXPORT_SYMBOL_GPL sound/hda/snd-intel-dspcfg 0x05ccee2a intel_nhlt_init +EXPORT_SYMBOL_GPL sound/hda/snd-intel-dspcfg 0x4ccdbb21 intel_nhlt_get_dmic_geo +EXPORT_SYMBOL_GPL sound/hda/snd-intel-dspcfg 0x4e859456 intel_nhlt_free +EXPORT_SYMBOL_GPL sound/hda/snd-intel-dspcfg 0x5f89aae7 snd_intel_dsp_driver_probe +EXPORT_SYMBOL_GPL sound/i2c/other/snd-ak4113 0x362ae259 snd_ak4113_build +EXPORT_SYMBOL_GPL sound/i2c/other/snd-ak4113 0x422b9caf snd_ak4113_external_rate +EXPORT_SYMBOL_GPL sound/i2c/other/snd-ak4113 0x6e480974 snd_ak4113_create +EXPORT_SYMBOL_GPL sound/i2c/other/snd-ak4113 0x8156ca7d snd_ak4113_check_rate_and_errors +EXPORT_SYMBOL_GPL sound/i2c/other/snd-ak4113 0xbff6f3d2 snd_ak4113_reinit +EXPORT_SYMBOL_GPL sound/i2c/other/snd-ak4113 0xee7bb135 snd_ak4113_reg_write +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x045252cc snd_hda_create_spdif_share_sw +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x0676f5ac snd_hda_get_input_pin_attr +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x08e97428 snd_hda_jack_unsol_event +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x09134d2b snd_hda_codec_configure +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x0b1ce36c snd_hda_attach_beep_device +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x16d28a14 snd_hda_get_default_vref +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x1727f3eb snd_hda_multi_out_dig_cleanup +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x174df486 snd_hda_create_spdif_in_ctls +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x181d2c50 snd_hda_codec_device_new +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x1891399a snd_hda_get_pin_label +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x1aa5195d hda_codec_driver_unregister +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x1b8538e2 snd_hda_check_amp_list_power +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x20ea7cc7 snd_hda_spdif_ctls_unassign +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x21dec1e6 azx_get_pos_posbuf +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x22d3ca6a snd_hda_get_dev_select +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x24c4f17d __snd_hda_add_vmaster +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x256f6b25 snd_hda_sequence_write +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x26cfe767 snd_hda_mixer_amp_volume_info +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x28cef0d5 snd_hda_unlock_devices +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x2c356558 snd_hda_override_conn_list +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x2cb587e5 snd_hda_override_amp_caps +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x2cdf7ece __snd_hda_codec_cleanup_stream +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x31e2163a snd_hda_multi_out_analog_open +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x354a3318 snd_hda_codec_pcm_put +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x3725bc2b snd_hda_codec_load_dsp_cleanup +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x374a52d0 snd_hda_ctl_add +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x38ce402b azx_interrupt +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x39b0eea2 azx_stop_chip +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x3b7d67b9 azx_init_chip +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x3e9cc42c snd_hda_input_mux_put +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x3f00f0ff snd_hda_mixer_amp_tlv +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x44451c6d snd_hda_mixer_amp_switch_get_beep +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x44e85fc1 snd_hda_set_vmaster_tlv +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x4745fe90 snd_hda_get_bool_hint +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x480c56ef snd_hda_add_verbs +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x4c641554 snd_hda_multi_out_analog_cleanup +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x4f727225 snd_hda_codec_load_dsp_trigger +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x4fb50728 snd_hda_multi_out_dig_open +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x508cafa8 snd_hda_jack_detect_state_mst +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x52a7f453 snd_hda_codec_pcm_new +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x5302c3d9 hda_get_autocfg_input_label +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x56ef0cdd query_amp_caps +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x5876080a snd_hda_get_conn_list +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x5c12ab81 snd_hda_codec_amp_init +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x5c60f840 snd_hda_apply_pincfgs +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x5dd3ed9f snd_hda_jack_set_dirty_all +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x5ea6af8f snd_hda_codec_prepare +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x5f4281e8 snd_hda_codec_load_dsp_prepare +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x5f9d695c snd_hda_jack_tbl_get_mst +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x61cb310c snd_hda_codec_new +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x646ed013 snd_hda_set_dev_select +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x67ef5eb5 snd_hda_find_mixer_ctl +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x686855d0 snd_hda_multi_out_dig_prepare +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x7b26b1fb snd_hda_apply_verbs +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x7bc067a8 snd_hda_codec_eapd_power_filter +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x7d435ca1 azx_bus_init +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x7dd3ac24 snd_hda_lock_devices +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x7ecf1e89 snd_hda_mixer_amp_switch_get +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x7efe895d snd_hda_sync_vmaster_hook +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x7fb5d3df snd_hda_mixer_amp_switch_put +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x81b10499 snd_hda_jack_set_gating_jack +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x823a60ac snd_hda_get_conn_index +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x82be63ea snd_hda_add_nid +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x86a00049 snd_hda_multi_out_dig_close +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x86ae5512 snd_hda_multi_out_analog_prepare +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x87dec5b5 snd_hda_get_int_hint +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x8bf6fbf2 snd_hda_jack_add_kctl_mst +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x8e8ba878 snd_hda_create_dig_out_ctls +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x9024fc7e snd_hda_pick_pin_fixup +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x908c50a5 snd_hda_mixer_amp_volume_put +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x91f69df3 snd_hda_mixer_amp_volume_get +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x94501537 snd_hda_spdif_out_of_nid +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x945d0316 snd_hda_get_num_devices +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x97725257 snd_hda_jack_add_kctls +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x97eadf9b snd_hda_codec_update_widgets +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x9b1b6deb snd_hda_codec_build_controls +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x9c415ae2 azx_get_pos_lpib +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x9ddc4d06 snd_hda_jack_detect_enable_callback_mst +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x9ea88342 azx_free_streams +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x9f000a61 snd_hda_codec_set_pin_target +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x9f11a744 snd_hda_codec_setup_stream +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xaa4880f8 __hda_codec_driver_register +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xaaa57c4d snd_hda_jack_tbl_get_from_tag +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xab93efae snd_hda_codec_amp_update +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xac9c08c8 azx_probe_codecs +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xacd4b566 azx_get_position +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xaddab236 snd_hda_set_power_save +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xae22fbdb azx_init_streams +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xaf6abbb8 snd_hda_check_amp_caps +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xb38dca3b snd_hda_enable_beep_device +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xb3c260d8 azx_stop_all_streams +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xb46d247f snd_hda_codec_amp_stereo +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xb71e0e89 snd_hda_jack_poll_all +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xb7b6d9d9 snd_hda_codec_set_pincfg +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xbc45b28c snd_hda_correct_pin_ctl +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xc2d6261f azx_codec_configure +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xc94d655d snd_hda_get_hint +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xc95aea8d snd_hda_mixer_amp_switch_put_beep +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xc9f6641d snd_hda_mixer_amp_switch_info +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xca057db9 snd_hda_add_imux_item +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xcc83b9c5 snd_hda_input_mux_info +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xcd8f59cd snd_hda_detach_beep_device +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xd1bf131a snd_hda_codec_cleanup +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xd35f7862 snd_hda_codec_amp_init_stereo +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xd620eb77 _snd_hda_set_pin_ctl +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xd75feb39 is_jack_detectable +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xd9e13f4b snd_hda_jack_report_sync +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xdb9197ee snd_hda_codec_get_pin_target +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xe118de5d snd_pcm_2_1_chmaps +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xe364acba snd_hda_pick_fixup +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xe3d6aeda snd_hda_apply_fixup +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xe56f892c snd_hda_codec_get_pincfg +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xec13979b snd_hda_add_vmaster_hook +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xeda3a721 snd_print_pcm_bits +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xf1292555 snd_hda_get_connections +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xf1eedacc snd_hda_codec_set_name +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xf20dc54d snd_hda_jack_detect_enable +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xf267bf20 snd_hda_codec_parse_pcms +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xf2d21b25 snd_hda_add_new_ctls +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xf586ef31 snd_hda_parse_pin_defcfg +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xf6e71554 snd_hda_jack_pin_sense +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xf728fdbd snd_hda_load_patch +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xf8964c88 snd_hda_spdif_ctls_assign +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xf9cd82d4 snd_hda_codec_set_power_to_all +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xfe27d70b snd_hda_shutup_pins +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xff49f249 snd_hda_enum_helper_info +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec-generic 0x09ce924b snd_hda_gen_free +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec-generic 0x0bb5c7cf snd_hda_gen_add_mute_led_cdev +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec-generic 0x0d53ef2a snd_hda_gen_check_power_status +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec-generic 0x28dcb0e4 snd_hda_gen_parse_auto_config +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec-generic 0x313b769e snd_hda_gen_spec_init +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec-generic 0x48c80da3 snd_hda_gen_mic_autoswitch +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec-generic 0x4e4bb591 snd_hda_gen_line_automute +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec-generic 0x576ae402 snd_hda_gen_fix_pin_power +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec-generic 0x76dc6871 hda_main_out_badness +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec-generic 0x7b3e22dd snd_hda_gen_add_kctl +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec-generic 0x871a6e44 hda_extra_out_badness +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec-generic 0x9cf301d9 snd_hda_gen_build_pcms +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec-generic 0xb20b5d3d snd_hda_gen_add_micmute_led_cdev +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec-generic 0xb6e66715 snd_hda_gen_update_outputs +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec-generic 0xc7374442 snd_hda_get_path_idx +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec-generic 0xcb6d4940 snd_hda_gen_stream_pm +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec-generic 0xced15aa5 snd_hda_activate_path +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec-generic 0xd00a308b snd_hda_gen_init +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec-generic 0xd53e7b26 snd_hda_gen_build_controls +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec-generic 0xdb1c6776 snd_hda_add_new_path +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec-generic 0xdc366791 snd_hda_gen_path_power_filter +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec-generic 0xdcfaeaf2 snd_hda_gen_hp_automute +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec-generic 0xe7780188 snd_hda_get_path_from_idx +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec-generic 0xfe720451 snd_hda_gen_reboot_notify +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-adau-utils 0xae620be9 adau_calc_pll_cfg +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-adau1761 0x6b352f6c adau1761_probe +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-adau1761 0x9992ee64 adau1761_regmap_config +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-adau17x1 0x0643c1c3 adau17x1_precious_register +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-adau17x1 0x1a25145b adau17x1_volatile_register +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-adau17x1 0x33ac8f80 adau17x1_set_micbias_voltage +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-adau17x1 0x68623f23 adau17x1_dai_ops +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-adau17x1 0x70c89285 adau17x1_readable_register +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-adau17x1 0xb8d9e2ff adau17x1_add_routes +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-adau17x1 0xc8f3185f adau17x1_resume +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-adau17x1 0xdbea5934 adau17x1_add_widgets +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-adau17x1 0xeeafc4ff adau17x1_remove +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-adau17x1 0xf830dae6 adau17x1_probe +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-adau7118 0x90720aeb adau7118_probe +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-cs4271 0x232fdf22 cs4271_regmap_config +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-cs4271 0xd0c35ee0 cs4271_probe +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-cs42l51 0x060e0591 cs42l51_resume +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-cs42l51 0x14751b7b cs42l51_suspend +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-cs42l51 0x26bb643c cs42l51_regmap +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-cs42l51 0x375ad98c cs42l51_of_match +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-cs42l51 0x3b736c4b cs42l51_remove +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-cs42l51 0x3f12114b cs42l51_probe +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-cs42xx8 0x0245c4f2 cs42xx8_of_match +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-cs42xx8 0x1b20e87a cs42xx8_probe +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-cs42xx8 0x6c1bf3ea cs42xx8_regmap_config +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-cs42xx8 0x7cac7292 cs42888_data +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-cs42xx8 0xad5e1fe7 cs42xx8_pm +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-cs42xx8 0xcd3794c9 cs42448_data +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-da7219 0x26828a13 da7219_aad_init +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-da7219 0x46722c47 da7219_aad_exit +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-da7219 0xc9114e7b da7219_aad_jack_det +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-es8328 0xb28dcb7f es8328_probe +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-es8328 0xd29cca62 es8328_regmap_config +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-hdac-hda 0x6f7f28dc snd_soc_hdac_hda_get_ops +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-hdac-hdmi 0x91ea38e1 hdac_hdmi_jack_port_init +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-hdac-hdmi 0xc59b9657 hdac_hdmi_jack_init +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-hdmi-codec 0xbcccbbf4 hdmi_codec_set_jack_detect +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-max98090 0x44a77289 max98090_mic_detect +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-nau8824 0x85b2c8ce nau8824_enable_jack_detect +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-nau8825 0xa50395f1 nau8825_enable_jack_detect +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-pcm1789-codec 0x0eba7072 pcm1789_common_exit +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-pcm1789-codec 0x79dd1c8a pcm1789_common_init +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-pcm1789-codec 0x86784604 pcm1789_regmap_config +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-pcm179x-codec 0x190b4af6 pcm179x_common_init +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-pcm179x-codec 0x81c8ea2c pcm179x_regmap_config +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-pcm186x 0x78187d83 pcm186x_probe +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-pcm186x 0xbdf6e2f6 pcm186x_regmap +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-pcm3168a 0x1e5d0b92 pcm3168a_remove +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-pcm3168a 0x4f20b65d pcm3168a_probe +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-pcm3168a 0x75dc5fc2 pcm3168a_regmap +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-pcm3168a 0xacffe4e3 pcm3168a_pm_ops +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-pcm512x 0x80f09201 pcm512x_remove +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-pcm512x 0xb1a6b1f1 pcm512x_pm_ops +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-pcm512x 0xbadd2f8b pcm512x_probe +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-pcm512x 0xcc564776 pcm512x_regmap +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-rl6231 0x5dc92cdf rl6231_pll_calc +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-rl6231 0x70617a04 rl6231_get_clk_info +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-rl6231 0x8d7fa148 rl6231_get_pre_div +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-rl6231 0xdba4502f rl6231_calc_dmic_clk +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-rl6347a 0xa7aa810f rl6347a_hw_write +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-rl6347a 0xade4bf4c rl6347a_hw_read +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-rt286 0xf57dd148 rt286_mic_detect +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-rt298 0x3acd6a1f rt298_mic_detect +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-rt5514-spi 0x61ff58e3 rt5514_spi_burst_read +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-rt5514-spi 0xff87892f rt5514_spi_burst_write +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-rt5640 0x07691709 rt5640_dmic_enable +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-rt5640 0x88646624 rt5640_sel_asrc_clk_src +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-rt5645 0xe9f7f09c rt5645_set_jack_detect +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-rt5645 0xfa55d446 rt5645_sel_asrc_clk_src +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-rt5663 0x2a895fbf rt5663_sel_asrc_clk_src +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-rt5670 0x2b5f629d rt5670_jack_resume +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-rt5670 0x4c51dc54 rt5670_set_jack_detect +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-rt5670 0x5973b51b rt5670_jack_suspend +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-rt5670 0xf251e09d rt5670_sel_asrc_clk_src +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-rt5677 0x0a247603 rt5677_sel_asrc_clk_src +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-rt5677-spi 0x5fc320ad rt5677_spi_write_firmware +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-rt5677-spi 0x67956035 rt5677_spi_write +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-rt5677-spi 0xc6695825 rt5677_spi_hotword_detected +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-rt5677-spi 0xe8ece129 rt5677_spi_read +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-rt5682 0x207a493a rt5682_headset_detect +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-rt5682 0x28730696 rt5682_supply_names +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-rt5682 0x59d3d967 rt5682_jack_detect_handler +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-rt5682 0x6fde950d rt5682_aif2_dai_ops +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-rt5682 0x836e7116 rt5682_volatile_register +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-rt5682 0x839f7df0 rt5682_soc_component_dev +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-rt5682 0x84e92e0e rt5682_aif1_dai_ops +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-rt5682 0x955f94e9 rt5682_apply_patch_list +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-rt5682 0xa7dfc179 rt5682_calibrate +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-rt5682 0xb343910d rt5682_parse_dt +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-rt5682 0xb897de56 rt5682_reg +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-rt5682 0xe21dc3f9 rt5682_sel_asrc_clk_src +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-rt5682 0xe5eacd0c rt5682_reset +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-rt5682 0xff8e38e8 rt5682_readable_register +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-sigmadsp 0x3fdd5fe5 devm_sigmadsp_init +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-sigmadsp 0x509b3d8d sigmadsp_setup +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-sigmadsp 0x5a8fab4f sigmadsp_attach +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-sigmadsp 0x83ba4377 sigmadsp_restrict_params +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-sigmadsp 0xe00a813f sigmadsp_reset +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-sigmadsp-i2c 0xca44d5ef devm_sigmadsp_init_i2c +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-sigmadsp-regmap 0xe5f2d031 devm_sigmadsp_init_regmap +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-ssm2602 0x042badc3 ssm2602_regmap_config +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-ssm2602 0x9b05cdbb ssm2602_probe +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-tlv320aic32x4 0x3e9e12c7 aic32x4_register_clocks +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-ts3a227e 0x5b5a7be4 ts3a227e_enable_jack_detect +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-wm8804 0x0a4b09d0 wm8804_regmap_config +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-wm8804 0x2c2a6386 wm8804_remove +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-wm8804 0x809b421d wm8804_probe +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-wm8804 0x938c8103 wm8804_pm +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-wm8903 0x2879dfa9 wm8903_mic_detect +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-wm8962 0x91594030 wm8962_mic_detect +EXPORT_SYMBOL_GPL sound/soc/fsl/snd-soc-fsl-asrc 0x764a635d fsl_asrc_component +EXPORT_SYMBOL_GPL sound/soc/fsl/snd-soc-fsl-easrc 0xbcdbf459 fsl_easrc_get_dma_channel +EXPORT_SYMBOL_GPL sound/soc/fsl/snd-soc-imx-audmux 0x30693bb7 imx_audmux_v1_configure_port +EXPORT_SYMBOL_GPL sound/soc/fsl/snd-soc-imx-audmux 0x58631dab imx_audmux_v2_configure_port +EXPORT_SYMBOL_GPL sound/soc/generic/snd-soc-simple-card-utils 0x03c5fd2d asoc_simple_hw_params +EXPORT_SYMBOL_GPL sound/soc/generic/snd-soc-simple-card-utils 0x0f862fcb asoc_simple_canonicalize_platform +EXPORT_SYMBOL_GPL sound/soc/generic/snd-soc-simple-card-utils 0x18aa8d0d asoc_simple_init_priv +EXPORT_SYMBOL_GPL sound/soc/generic/snd-soc-simple-card-utils 0x1f7cda09 asoc_simple_parse_clk +EXPORT_SYMBOL_GPL sound/soc/generic/snd-soc-simple-card-utils 0x2b166105 asoc_simple_clean_reference +EXPORT_SYMBOL_GPL sound/soc/generic/snd-soc-simple-card-utils 0x33653cd0 asoc_simple_be_hw_params_fixup +EXPORT_SYMBOL_GPL sound/soc/generic/snd-soc-simple-card-utils 0x6373977b asoc_simple_canonicalize_cpu +EXPORT_SYMBOL_GPL sound/soc/generic/snd-soc-simple-card-utils 0x6eaf4734 asoc_simple_init_jack +EXPORT_SYMBOL_GPL sound/soc/generic/snd-soc-simple-card-utils 0x7a64b72f asoc_simple_parse_pin_switches +EXPORT_SYMBOL_GPL sound/soc/generic/snd-soc-simple-card-utils 0x7dc50204 asoc_simple_parse_convert +EXPORT_SYMBOL_GPL sound/soc/generic/snd-soc-simple-card-utils 0x8d433ee7 asoc_simple_startup +EXPORT_SYMBOL_GPL sound/soc/generic/snd-soc-simple-card-utils 0x8f6bc491 asoc_simple_dai_init +EXPORT_SYMBOL_GPL sound/soc/generic/snd-soc-simple-card-utils 0xa9c2fa0d asoc_simple_parse_widgets +EXPORT_SYMBOL_GPL sound/soc/generic/snd-soc-simple-card-utils 0xbff9d319 asoc_simple_parse_daifmt +EXPORT_SYMBOL_GPL sound/soc/generic/snd-soc-simple-card-utils 0xd1e457a8 asoc_simple_parse_routing +EXPORT_SYMBOL_GPL sound/soc/generic/snd-soc-simple-card-utils 0xd44eae07 asoc_simple_parse_card_name +EXPORT_SYMBOL_GPL sound/soc/generic/snd-soc-simple-card-utils 0xd56c2416 asoc_simple_shutdown +EXPORT_SYMBOL_GPL sound/soc/generic/snd-soc-simple-card-utils 0xf3bafb75 asoc_simple_convert_fixup +EXPORT_SYMBOL_GPL sound/soc/generic/snd-soc-simple-card-utils 0xfa42e04e asoc_simple_set_dailink_name +EXPORT_SYMBOL_GPL sound/soc/intel/atom/snd-soc-sst-atom-hifi2-platform 0x1655330f sst_unregister_dsp +EXPORT_SYMBOL_GPL sound/soc/intel/atom/snd-soc-sst-atom-hifi2-platform 0xc87fadee sst_register_dsp +EXPORT_SYMBOL_GPL sound/soc/intel/atom/sst/snd-intel-sst-core 0x47411fa7 sst_configure_runtime_pm +EXPORT_SYMBOL_GPL sound/soc/intel/atom/sst/snd-intel-sst-core 0x692b4412 intel_sst_pm +EXPORT_SYMBOL_GPL sound/soc/intel/atom/sst/snd-intel-sst-core 0x709cd25f relocate_imr_addr_mrfld +EXPORT_SYMBOL_GPL sound/soc/intel/atom/sst/snd-intel-sst-core 0x8774ec73 sst_alloc_drv_context +EXPORT_SYMBOL_GPL sound/soc/intel/atom/sst/snd-intel-sst-core 0x8d617e10 sst_context_init +EXPORT_SYMBOL_GPL sound/soc/intel/atom/sst/snd-intel-sst-core 0xdfb4f160 sst_context_cleanup +EXPORT_SYMBOL_GPL sound/soc/intel/common/snd-soc-acpi-intel-match 0x019b3122 snd_soc_acpi_intel_cfl_machines +EXPORT_SYMBOL_GPL sound/soc/intel/common/snd-soc-acpi-intel-match 0x1d21a3db snd_soc_acpi_intel_glk_machines +EXPORT_SYMBOL_GPL sound/soc/intel/common/snd-soc-acpi-intel-match 0x1f80ea06 snd_soc_acpi_intel_skl_machines +EXPORT_SYMBOL_GPL sound/soc/intel/common/snd-soc-acpi-intel-match 0x2b5d28ad snd_soc_acpi_intel_baytrail_legacy_machines +EXPORT_SYMBOL_GPL sound/soc/intel/common/snd-soc-acpi-intel-match 0x2c947a0c snd_soc_acpi_intel_icl_sdw_machines +EXPORT_SYMBOL_GPL sound/soc/intel/common/snd-soc-acpi-intel-match 0x33ba323b snd_soc_acpi_intel_kbl_machines +EXPORT_SYMBOL_GPL sound/soc/intel/common/snd-soc-acpi-intel-match 0x3719c4bd snd_soc_acpi_intel_broadwell_machines +EXPORT_SYMBOL_GPL sound/soc/intel/common/snd-soc-acpi-intel-match 0x3aaabc6d snd_soc_acpi_intel_haswell_machines +EXPORT_SYMBOL_GPL sound/soc/intel/common/snd-soc-acpi-intel-match 0x49ee336d snd_soc_acpi_intel_icl_machines +EXPORT_SYMBOL_GPL sound/soc/intel/common/snd-soc-acpi-intel-match 0x5b401a9f snd_soc_acpi_intel_cml_machines +EXPORT_SYMBOL_GPL sound/soc/intel/common/snd-soc-acpi-intel-match 0x5bf374aa snd_soc_acpi_intel_cnl_sdw_machines +EXPORT_SYMBOL_GPL sound/soc/intel/common/snd-soc-acpi-intel-match 0x70f4b115 snd_soc_acpi_intel_baytrail_machines +EXPORT_SYMBOL_GPL sound/soc/intel/common/snd-soc-acpi-intel-match 0x7288ae6d snd_soc_acpi_intel_cnl_machines +EXPORT_SYMBOL_GPL sound/soc/intel/common/snd-soc-acpi-intel-match 0x7beb3f35 snd_soc_acpi_intel_cherrytrail_machines +EXPORT_SYMBOL_GPL sound/soc/intel/common/snd-soc-acpi-intel-match 0x814c0dea snd_soc_acpi_intel_tgl_sdw_machines +EXPORT_SYMBOL_GPL sound/soc/intel/common/snd-soc-acpi-intel-match 0x862d7081 snd_soc_acpi_intel_ehl_machines +EXPORT_SYMBOL_GPL sound/soc/intel/common/snd-soc-acpi-intel-match 0x98304585 snd_soc_acpi_intel_tgl_machines +EXPORT_SYMBOL_GPL sound/soc/intel/common/snd-soc-acpi-intel-match 0xc628a218 snd_soc_acpi_intel_cfl_sdw_machines +EXPORT_SYMBOL_GPL sound/soc/intel/common/snd-soc-acpi-intel-match 0xcb73619c snd_soc_acpi_intel_bxt_machines +EXPORT_SYMBOL_GPL sound/soc/intel/common/snd-soc-acpi-intel-match 0xcfbf7257 snd_soc_acpi_intel_hda_machines +EXPORT_SYMBOL_GPL sound/soc/intel/common/snd-soc-acpi-intel-match 0xf45a3960 snd_soc_acpi_intel_cml_sdw_machines +EXPORT_SYMBOL_GPL sound/soc/intel/common/snd-soc-acpi-intel-match 0xfc535677 snd_soc_acpi_intel_jsl_machines +EXPORT_SYMBOL_GPL sound/soc/intel/common/snd-soc-sst-dsp 0x0049ebd1 sst_dsp_shim_update_bits +EXPORT_SYMBOL_GPL sound/soc/intel/common/snd-soc-sst-dsp 0x00f75ecd sst_dsp_ipc_msg_tx +EXPORT_SYMBOL_GPL sound/soc/intel/common/snd-soc-sst-dsp 0x10b4ef36 sst_dsp_outbox_read +EXPORT_SYMBOL_GPL sound/soc/intel/common/snd-soc-sst-dsp 0x12674b3c sst_memcpy_toio_32 +EXPORT_SYMBOL_GPL sound/soc/intel/common/snd-soc-sst-dsp 0x12c30eec sst_dsp_inbox_read +EXPORT_SYMBOL_GPL sound/soc/intel/common/snd-soc-sst-dsp 0x145f6477 sst_dsp_wake +EXPORT_SYMBOL_GPL sound/soc/intel/common/snd-soc-sst-dsp 0x16299450 sst_dsp_shim_write64_unlocked +EXPORT_SYMBOL_GPL sound/soc/intel/common/snd-soc-sst-dsp 0x16e86983 sst_shim32_read +EXPORT_SYMBOL_GPL sound/soc/intel/common/snd-soc-sst-dsp 0x177a8ac1 sst_dsp_inbox_write +EXPORT_SYMBOL_GPL sound/soc/intel/common/snd-soc-sst-dsp 0x259f0739 sst_dsp_reset +EXPORT_SYMBOL_GPL sound/soc/intel/common/snd-soc-sst-dsp 0x2e57daf6 sst_dsp_shim_read64 +EXPORT_SYMBOL_GPL sound/soc/intel/common/snd-soc-sst-dsp 0x5171bf7d sst_dsp_stall +EXPORT_SYMBOL_GPL sound/soc/intel/common/snd-soc-sst-dsp 0x63da4c53 sst_dsp_shim_update_bits_unlocked +EXPORT_SYMBOL_GPL sound/soc/intel/common/snd-soc-sst-dsp 0x6a66f41e sst_dsp_register_poll +EXPORT_SYMBOL_GPL sound/soc/intel/common/snd-soc-sst-dsp 0x717ec6ea sst_dsp_outbox_write +EXPORT_SYMBOL_GPL sound/soc/intel/common/snd-soc-sst-dsp 0x7b1bf283 sst_dsp_shim_write +EXPORT_SYMBOL_GPL sound/soc/intel/common/snd-soc-sst-dsp 0x7e7b21bd sst_dsp_ipc_msg_rx +EXPORT_SYMBOL_GPL sound/soc/intel/common/snd-soc-sst-dsp 0x7f540dae sst_dsp_shim_update_bits_forced +EXPORT_SYMBOL_GPL sound/soc/intel/common/snd-soc-sst-dsp 0x87cdf7d2 sst_shim32_write64 +EXPORT_SYMBOL_GPL sound/soc/intel/common/snd-soc-sst-dsp 0x904cc333 sst_dsp_mailbox_init +EXPORT_SYMBOL_GPL sound/soc/intel/common/snd-soc-sst-dsp 0x9a242278 sst_memcpy_fromio_32 +EXPORT_SYMBOL_GPL sound/soc/intel/common/snd-soc-sst-dsp 0xa9a09cd5 sst_dsp_shim_update_bits64_unlocked +EXPORT_SYMBOL_GPL sound/soc/intel/common/snd-soc-sst-dsp 0xafa55980 sst_dsp_shim_read +EXPORT_SYMBOL_GPL sound/soc/intel/common/snd-soc-sst-dsp 0xb4e942e5 sst_dsp_shim_write_unlocked +EXPORT_SYMBOL_GPL sound/soc/intel/common/snd-soc-sst-dsp 0xbd5c3d7a sst_dsp_shim_read64_unlocked +EXPORT_SYMBOL_GPL sound/soc/intel/common/snd-soc-sst-dsp 0xc6cf527f sst_dsp_shim_update_bits64 +EXPORT_SYMBOL_GPL sound/soc/intel/common/snd-soc-sst-dsp 0xd72a34c2 sst_shim32_read64 +EXPORT_SYMBOL_GPL sound/soc/intel/common/snd-soc-sst-dsp 0xde46e667 sst_dsp_shim_read_unlocked +EXPORT_SYMBOL_GPL sound/soc/intel/common/snd-soc-sst-dsp 0xe9c6de99 sst_shim32_write +EXPORT_SYMBOL_GPL sound/soc/intel/common/snd-soc-sst-dsp 0xf5022eab sst_dsp_shim_update_bits_forced_unlocked +EXPORT_SYMBOL_GPL sound/soc/intel/common/snd-soc-sst-dsp 0xf671e3cc sst_dsp_dump +EXPORT_SYMBOL_GPL sound/soc/intel/common/snd-soc-sst-dsp 0xf8d5f084 sst_dsp_boot +EXPORT_SYMBOL_GPL sound/soc/intel/common/snd-soc-sst-dsp 0xf96713c8 sst_dsp_shim_write64 +EXPORT_SYMBOL_GPL sound/soc/intel/common/snd-soc-sst-dsp 0xfec4631f sst_dsp_sleep +EXPORT_SYMBOL_GPL sound/soc/intel/common/snd-soc-sst-firmware 0x022f4975 sst_module_free_blocks +EXPORT_SYMBOL_GPL sound/soc/intel/common/snd-soc-sst-firmware 0x0a936f32 sst_mem_block_register +EXPORT_SYMBOL_GPL sound/soc/intel/common/snd-soc-sst-firmware 0x0d1dd2fe sst_module_runtime_get_from_id +EXPORT_SYMBOL_GPL sound/soc/intel/common/snd-soc-sst-firmware 0x0e120090 sst_mem_block_unregister_all +EXPORT_SYMBOL_GPL sound/soc/intel/common/snd-soc-sst-firmware 0x1a88722c sst_dsp_free +EXPORT_SYMBOL_GPL sound/soc/intel/common/snd-soc-sst-firmware 0x34905d4e sst_module_new +EXPORT_SYMBOL_GPL sound/soc/intel/common/snd-soc-sst-firmware 0x351964ce sst_module_runtime_new +EXPORT_SYMBOL_GPL sound/soc/intel/common/snd-soc-sst-firmware 0x40102c2c sst_module_runtime_alloc_blocks +EXPORT_SYMBOL_GPL sound/soc/intel/common/snd-soc-sst-firmware 0x429af19a sst_block_alloc_scratch +EXPORT_SYMBOL_GPL sound/soc/intel/common/snd-soc-sst-firmware 0x49a0c579 sst_module_runtime_free +EXPORT_SYMBOL_GPL sound/soc/intel/common/snd-soc-sst-firmware 0x4f0efc00 sst_dsp_dma_put_channel +EXPORT_SYMBOL_GPL sound/soc/intel/common/snd-soc-sst-firmware 0x53dd1497 sst_dsp_dma_copyfrom +EXPORT_SYMBOL_GPL sound/soc/intel/common/snd-soc-sst-firmware 0x609b2fb7 sst_module_runtime_restore +EXPORT_SYMBOL_GPL sound/soc/intel/common/snd-soc-sst-firmware 0x646feeca sst_module_alloc_blocks +EXPORT_SYMBOL_GPL sound/soc/intel/common/snd-soc-sst-firmware 0x72f115c2 sst_free_blocks +EXPORT_SYMBOL_GPL sound/soc/intel/common/snd-soc-sst-firmware 0x732952c1 sst_dsp_dma_copyto +EXPORT_SYMBOL_GPL sound/soc/intel/common/snd-soc-sst-firmware 0x84f6a87b sst_fw_new +EXPORT_SYMBOL_GPL sound/soc/intel/common/snd-soc-sst-firmware 0x93eef02b sst_module_runtime_save +EXPORT_SYMBOL_GPL sound/soc/intel/common/snd-soc-sst-firmware 0x9a1f1d1b sst_alloc_blocks +EXPORT_SYMBOL_GPL sound/soc/intel/common/snd-soc-sst-firmware 0xa4c4021c sst_module_get_from_id +EXPORT_SYMBOL_GPL sound/soc/intel/common/snd-soc-sst-firmware 0xb5c1cbef sst_dsp_new +EXPORT_SYMBOL_GPL sound/soc/intel/common/snd-soc-sst-firmware 0xb5e52a6c sst_fw_unload +EXPORT_SYMBOL_GPL sound/soc/intel/common/snd-soc-sst-firmware 0xb9d6091c sst_dsp_get_offset +EXPORT_SYMBOL_GPL sound/soc/intel/common/snd-soc-sst-firmware 0xbd4c33d4 sst_fw_free_all +EXPORT_SYMBOL_GPL sound/soc/intel/common/snd-soc-sst-firmware 0xbf2ab662 sst_dsp_dma_get_channel +EXPORT_SYMBOL_GPL sound/soc/intel/common/snd-soc-sst-firmware 0xc34cacd5 sst_fw_reload +EXPORT_SYMBOL_GPL sound/soc/intel/common/snd-soc-sst-firmware 0xc6724680 sst_module_free +EXPORT_SYMBOL_GPL sound/soc/intel/common/snd-soc-sst-firmware 0xc6b1fd61 sst_block_free_scratch +EXPORT_SYMBOL_GPL sound/soc/intel/common/snd-soc-sst-firmware 0xcfc06531 sst_module_runtime_free_blocks +EXPORT_SYMBOL_GPL sound/soc/intel/common/snd-soc-sst-firmware 0xd012612e sst_fw_free +EXPORT_SYMBOL_GPL sound/soc/intel/common/snd-soc-sst-ipc 0x48d45abf sst_ipc_reply_find_msg +EXPORT_SYMBOL_GPL sound/soc/intel/common/snd-soc-sst-ipc 0x5f1de512 sst_ipc_fini +EXPORT_SYMBOL_GPL sound/soc/intel/common/snd-soc-sst-ipc 0x7563af0b sst_ipc_tx_message_nopm +EXPORT_SYMBOL_GPL sound/soc/intel/common/snd-soc-sst-ipc 0x86bfda1c sst_ipc_tx_message_wait +EXPORT_SYMBOL_GPL sound/soc/intel/common/snd-soc-sst-ipc 0x9961654c sst_ipc_init +EXPORT_SYMBOL_GPL sound/soc/intel/common/snd-soc-sst-ipc 0x9e376ed4 sst_ipc_tx_message_nowait +EXPORT_SYMBOL_GPL sound/soc/intel/common/snd-soc-sst-ipc 0xa15ce74d sst_ipc_drop_all +EXPORT_SYMBOL_GPL sound/soc/intel/common/snd-soc-sst-ipc 0xbaea54cd sst_ipc_tx_msg_reply_complete +EXPORT_SYMBOL_GPL sound/soc/intel/haswell/snd-soc-sst-haswell-pcm 0x9f26a372 sst_hsw_dsp_init +EXPORT_SYMBOL_GPL sound/soc/intel/haswell/snd-soc-sst-haswell-pcm 0xb40ff91f sst_hsw_device_set_config +EXPORT_SYMBOL_GPL sound/soc/intel/haswell/snd-soc-sst-haswell-pcm 0xf853c0f4 sst_hsw_dsp_free +EXPORT_SYMBOL_GPL sound/soc/snd-soc-acpi 0x6c5d2bcd snd_soc_acpi_find_package_from_hid +EXPORT_SYMBOL_GPL sound/soc/snd-soc-acpi 0x8795d901 snd_soc_acpi_find_machine +EXPORT_SYMBOL_GPL sound/soc/snd-soc-acpi 0xa2585abc snd_soc_acpi_codec_list +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x03e5e50d snd_soc_dapm_sync_unlocked +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x050b4ef3 snd_soc_limit_volume +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x0573a6dd snd_soc_jack_add_gpiods +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x06083f24 snd_soc_put_strobe +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x06151602 snd_soc_dapm_get_pin_status +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x063d1109 devm_snd_soc_register_dai +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x069904a1 snd_soc_dapm_new_widgets +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x06dd738e snd_soc_of_parse_audio_routing +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x082bac16 snd_soc_runtime_set_dai_fmt +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x093f3d6d snd_soc_jack_add_pins +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x0bd526e8 snd_soc_dapm_force_enable_pin_unlocked +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x0c13d5a3 snd_soc_dai_compr_shutdown +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x0f89dd62 snd_soc_tplg_widget_remove_all +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x0f8b59ee snd_soc_component_nc_pin_unlocked +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x0fdc3e41 devm_snd_dmaengine_pcm_register +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x12804907 snd_soc_get_dai_name +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x130fb076 snd_soc_pm_ops +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x134abc77 snd_soc_dpcm_runtime_update +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x134bb161 snd_soc_of_get_slot_mask +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x13b62d66 snd_soc_dapm_nc_pin_unlocked +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x142dc877 snd_soc_rtdcom_lookup +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x17247f0f snd_soc_component_force_enable_pin_unlocked +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x1a0995fe snd_dmaengine_pcm_register +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x1ab61070 snd_soc_dapm_mixer_update_power +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x1aee4921 snd_soc_get_volsw_sx +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x1d6c73ca snd_soc_dai_link_set_capabilities +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x1dd7c119 snd_soc_component_test_bits +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x1e98a5eb snd_soc_new_ac97_component +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x205b8343 snd_soc_suspend +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x224536d1 snd_soc_dapm_nc_pin +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x22c4fc76 devm_snd_soc_register_card +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x23bf2738 snd_soc_component_set_pll +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x2402079a devm_snd_soc_register_component +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x2541a979 snd_soc_calc_frame_size +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x298a0696 snd_soc_card_get_kcontrol +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x29f5df2c snd_soc_get_strobe +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x2a4d9a7d snd_soc_dai_compr_get_metadata +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x3564558c snd_soc_set_ac97_ops +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x35dad3b3 snd_soc_dai_compr_pointer +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x3671e092 snd_soc_of_get_dai_link_codecs +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x37040a68 snd_soc_put_volsw_range +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x3705d9ea null_dailink_component +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x3863a6f3 snd_soc_dapm_ignore_suspend +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x39e4a23f snd_soc_dapm_disable_pin_unlocked +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x3c7a32af snd_soc_dai_set_tdm_slot +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x3e0ea3fb snd_soc_dapm_force_bias_level +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x3e875d1e snd_soc_component_get_pin_status +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x3f18df69 snd_soc_link_compr_set_params +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x40912566 dapm_pinctrl_event +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x40b352e8 snd_soc_component_update_bits_async +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x40dad75e snd_soc_new_compress +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x47734e26 snd_soc_dai_compr_get_params +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x49b15e80 snd_soc_component_set_jack +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x4a438003 snd_soc_component_enable_pin +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x4aea72fc snd_soc_tplg_widget_remove +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x4b2406e1 snd_soc_unregister_component +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x4bb52090 snd_soc_dapm_sync +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x4e7e4a49 snd_soc_jack_get_type +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x4e7e8652 snd_soc_component_async_complete +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x4eb74ee2 snd_soc_remove_pcm_runtime +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x51606b9b snd_soc_info_volsw_sx +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x527e3eb3 snd_soc_component_exit_regmap +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x53a2f497 snd_soc_add_card_controls +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x5c0d7292 snd_soc_lookup_component +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x5da5e01d snd_soc_dpcm_fe_can_update +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x5f113427 snd_soc_dapm_put_volsw +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x623c3207 snd_soc_of_parse_node_prefix +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x62f93416 snd_soc_dapm_weak_routes +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x6416deda snd_soc_bytes_info_ext +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x6420c615 snd_soc_of_parse_card_name +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x65c9398e snd_soc_dapm_new_control +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x683b3671 snd_dmaengine_pcm_prepare_slave_config +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x6d856c4c snd_soc_of_parse_tdm_slot +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x6e16ddca snd_soc_find_dai +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x70c1c6b2 snd_soc_component_disable_pin_unlocked +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x723d0eac snd_soc_put_volsw_sx +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x724b9a64 snd_soc_add_component_controls +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x72a196fc snd_soc_put_xr_sx +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x76ded67e snd_soc_dai_set_fmt +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x77899a45 snd_soc_dai_digital_mute +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x77c50385 snd_soc_tplg_component_remove +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x78fe32ea snd_soc_dapm_kcontrol_dapm +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x796fafa5 snd_soc_dai_set_pll +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x79af225a snd_soc_card_remove_dai_link +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x7b7a9248 snd_soc_component_init_regmap +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x7d867f6b snd_soc_put_volsw +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x7e02c802 snd_soc_debugfs_root +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x7e0bd87f snd_soc_get_volsw_range +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x7e606130 snd_soc_calc_bclk +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x7f26b466 snd_soc_find_dai_with_mutex +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x80589627 snd_soc_dapm_free +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x8244ada4 dapm_clock_event +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x826ee83c snd_soc_lookup_component_nolocked +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x8289c6c2 dapm_mark_endpoints_dirty +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x84e85fd0 snd_soc_dai_get_channel_map +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x84eeb5fb snd_soc_add_dai_controls +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x88414029 snd_soc_dai_set_tristate +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x88485006 snd_soc_runtime_action +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x88d7088f snd_soc_dapm_get_pin_switch +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x895dd5da snd_soc_of_parse_audio_simple_widgets +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x8a5af575 dpcm_be_dai_trigger +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x8b600855 snd_soc_component_force_enable_pin +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x8c0f5756 snd_soc_unregister_card +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x8e204d88 snd_soc_dpcm_can_be_free_stop +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x8f0dc25e snd_soc_dai_set_sysclk +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x919d0646 snd_soc_dapm_init +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x92936d73 snd_soc_component_nc_pin +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x954b0e76 snd_soc_close_delayed_work +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x955abb55 snd_soc_runtime_calc_hw +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x97d9c6df snd_soc_of_parse_daifmt +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x97e59e2a snd_soc_dai_active +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x988584d4 snd_soc_link_compr_startup +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x998a5436 snd_soc_component_read32 +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x999c0110 snd_soc_dai_compr_set_metadata +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x9a05bd7d snd_soc_info_enum_double +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x9a825f67 snd_soc_get_pcm_runtime +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x9b775d37 snd_soc_jack_report +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x9dca7ece snd_soc_dapm_info_pin_switch +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x9f070519 snd_soc_component_read +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xa0d646cf snd_soc_dapm_mux_update_power +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xa301f9c7 snd_soc_dapm_del_routes +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xa376d612 snd_soc_component_write +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xa459d7c6 snd_soc_dapm_enable_pin_unlocked +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xa6ace950 snd_soc_jack_free_gpios +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xa79cbee9 snd_soc_dai_compr_ack +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xa7bc175c snd_soc_bytes_info +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xaad6bfb0 dapm_regulator_event +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xab0c5ea5 snd_soc_info_volsw_range +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xac32324f snd_soc_jack_add_gpios +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xae115b2a snd_soc_dai_set_channel_map +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xaedd16dd snd_soc_set_dmi_name +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xafdccd60 snd_soc_dapm_put_pin_switch +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xb18cbca7 snd_soc_unregister_dai +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xb253378c snd_soc_component_enable_pin_unlocked +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xb2a81f9d snd_soc_dai_set_clkdiv +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xb468fde9 snd_dmaengine_pcm_unregister +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xb47bbe66 snd_soc_jack_notifier_unregister +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xb4c035a9 soc_ac97_ops +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xb5ebf400 snd_soc_dpcm_can_be_params +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xb5f2e217 snd_soc_unregister_component_by_driver +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xb70c76c1 snd_soc_component_set_sysclk +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xb8286060 snd_soc_set_ac97_ops_of_reset +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xbca8cc9e snd_soc_dai_compr_trigger +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xbd88c132 snd_soc_dapm_enable_pin +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xbf3d596d snd_soc_put_enum_double +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xc06d0b00 snd_soc_dapm_new_controls +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xc084e0f1 snd_soc_of_get_dai_name +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xc11315c6 snd_soc_component_disable_pin +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xc2ac75c4 snd_soc_dapm_kcontrol_widget +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xc35b1f2a snd_soc_dapm_force_enable_pin +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xc3b856e9 snd_soc_tplg_widget_bind_event +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xc554ad24 snd_soc_card_add_dai_link +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xc59e5562 snd_soc_dapm_update_dai +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xc8269f94 snd_soc_params_to_frame_size +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xc83eb73d snd_soc_dapm_get_enum_double +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xca1e93c6 snd_soc_get_dai_id +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xcb853f1c snd_soc_link_compr_shutdown +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xcdd91a74 snd_soc_card_jack_new +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xcde49542 snd_soc_add_pcm_runtime +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xcfccbc07 snd_soc_bytes_put +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xd2e8a2f1 snd_soc_dai_compr_set_params +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xd3939009 snd_soc_jack_notifier_register +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xd5c13151 snd_soc_dai_compr_startup +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xd854b9e9 snd_soc_dai_set_bclk_ratio +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xd9653a67 snd_soc_dpcm_get_substream +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xda745924 snd_soc_free_ac97_component +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xdcc007a7 snd_soc_dai_action +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xdeab4515 snd_soc_register_card +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xdf05f9ad snd_soc_register_component +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xdfa550cd snd_soc_info_volsw +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xdfc16538 snd_soc_dapm_get_volsw +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xdff3505c snd_soc_of_put_dai_link_codecs +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xe03d19c0 snd_soc_get_xr_sx +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xe4e1d135 snd_soc_resume +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xe69a648f snd_soc_bytes_get +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xeb55e6a1 snd_soc_poweroff +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xeb711ae7 snd_soc_params_to_bclk +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xec6a5d64 snd_soc_bytes_tlv_callback +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xed4db763 snd_soc_dapm_disable_pin +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xee1d3a8c snd_soc_tplg_component_load +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xeed737d5 snd_soc_dapm_add_routes +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xef1af057 snd_soc_get_volsw +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xf5459388 snd_soc_dpcm_be_can_update +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xf579ccaa snd_soc_component_update_bits +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xf6328b7a snd_soc_get_enum_double +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xf8ac4311 snd_soc_dapm_put_enum_double +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xf8b5f384 snd_soc_info_xr_sx +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xf9dc89c0 snd_soc_add_component +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xfa720bbb snd_soc_set_runtime_hwparams +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xfb85a9ef snd_soc_cnew +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xfeb66e15 dapm_kcontrol_get_value +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xffdb44fb snd_soc_jack_add_zones +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xfff88b10 snd_soc_dapm_stream_stop +EXPORT_SYMBOL_GPL sound/soc/sof/snd-sof 0x17bda62e snd_sof_dbg_init +EXPORT_SYMBOL_GPL sound/soc/sof/snd-sof 0x3dbad8a2 snd_sof_free_debug +EXPORT_SYMBOL_GPL sound/soc/sof/snd-sof 0xd23a08a6 snd_sof_debugfs_buf_item +EXPORT_SYMBOL_GPL sound/soc/sof/snd-sof 0xd82af96b snd_sof_debugfs_io_item +EXPORT_SYMBOL_GPL sound/usb/line6/snd-usb-line6 0x01e6087d line6_pcm_release +EXPORT_SYMBOL_GPL sound/usb/line6/snd-usb-line6 0x14a9d0a0 line6_suspend +EXPORT_SYMBOL_GPL sound/usb/line6/snd-usb-line6 0x1d87797d line6_read_serial_number +EXPORT_SYMBOL_GPL sound/usb/line6/snd-usb-line6 0x202a1b1b line6_midi_id +EXPORT_SYMBOL_GPL sound/usb/line6/snd-usb-line6 0x29bcea32 line6_alloc_sysex_buffer +EXPORT_SYMBOL_GPL sound/usb/line6/snd-usb-line6 0x35409c5f line6_read_data +EXPORT_SYMBOL_GPL sound/usb/line6/snd-usb-line6 0x58fd1ac5 line6_disconnect +EXPORT_SYMBOL_GPL sound/usb/line6/snd-usb-line6 0x603cec29 line6_version_request_async +EXPORT_SYMBOL_GPL sound/usb/line6/snd-usb-line6 0x60e1a108 line6_send_sysex_message +EXPORT_SYMBOL_GPL sound/usb/line6/snd-usb-line6 0x6136caef line6_probe +EXPORT_SYMBOL_GPL sound/usb/line6/snd-usb-line6 0x65636d16 line6_resume +EXPORT_SYMBOL_GPL sound/usb/line6/snd-usb-line6 0x6c377b5b line6_send_raw_message_async +EXPORT_SYMBOL_GPL sound/usb/line6/snd-usb-line6 0x84b38caf line6_pcm_acquire +EXPORT_SYMBOL_GPL sound/usb/line6/snd-usb-line6 0xa30f025a line6_init_midi +EXPORT_SYMBOL_GPL sound/usb/line6/snd-usb-line6 0xd1d0a990 line6_write_data +EXPORT_SYMBOL_GPL sound/usb/line6/snd-usb-line6 0xf85e0c08 line6_init_pcm +EXPORT_SYMBOL_GPL vmlinux 0x000a6b80 skcipher_register_instance +EXPORT_SYMBOL_GPL vmlinux 0x00119218 dma_request_slave_channel +EXPORT_SYMBOL_GPL vmlinux 0x00152e75 tpm_put_ops +EXPORT_SYMBOL_GPL vmlinux 0x001b074f mce_is_correctable +EXPORT_SYMBOL_GPL vmlinux 0x0034f3b6 xen_has_pv_nic_devices +EXPORT_SYMBOL_GPL vmlinux 0x004a9b5c wm8350_gpio_config +EXPORT_SYMBOL_GPL vmlinux 0x00513f58 get_timespec64 +EXPORT_SYMBOL_GPL vmlinux 0x00531a17 xen_xlate_map_ballooned_pages +EXPORT_SYMBOL_GPL vmlinux 0x00545707 ipv6_recv_error +EXPORT_SYMBOL_GPL vmlinux 0x00565f18 pernet_ops_rwsem +EXPORT_SYMBOL_GPL vmlinux 0x006c5e19 __phy_modify_mmd_changed +EXPORT_SYMBOL_GPL vmlinux 0x007b15e7 debugfs_create_blob +EXPORT_SYMBOL_GPL vmlinux 0x008539f0 klp_shadow_alloc +EXPORT_SYMBOL_GPL vmlinux 0x008ebfd4 __device_reset +EXPORT_SYMBOL_GPL vmlinux 0x00995390 rio_get_asm +EXPORT_SYMBOL_GPL vmlinux 0x00add99b regulator_set_bypass_regmap +EXPORT_SYMBOL_GPL vmlinux 0x00c2ad6f serdev_device_get_tiocm +EXPORT_SYMBOL_GPL vmlinux 0x00d57596 xfrm_state_afinfo_get_rcu +EXPORT_SYMBOL_GPL vmlinux 0x00df9837 ioasid_register_allocator +EXPORT_SYMBOL_GPL vmlinux 0x00ee5bb2 __rtnl_link_unregister +EXPORT_SYMBOL_GPL vmlinux 0x01000e79 xdp_attachment_setup +EXPORT_SYMBOL_GPL vmlinux 0x0104007a skb_mpls_pop +EXPORT_SYMBOL_GPL vmlinux 0x01079390 __mdiobus_modify_changed +EXPORT_SYMBOL_GPL vmlinux 0x0117bbce rtc_nvmem_register +EXPORT_SYMBOL_GPL vmlinux 0x012e730e apei_exec_noop +EXPORT_SYMBOL_GPL vmlinux 0x013aea3e ata_scsi_queuecmd +EXPORT_SYMBOL_GPL vmlinux 0x015fd5f0 __tracepoint_pelt_irq_tp +EXPORT_SYMBOL_GPL vmlinux 0x01637b2e skb_to_sgvec_nomark +EXPORT_SYMBOL_GPL vmlinux 0x0178c772 inet6_lookup_listener +EXPORT_SYMBOL_GPL vmlinux 0x0180a5b7 regulator_is_enabled_regmap +EXPORT_SYMBOL_GPL vmlinux 0x0183f196 wm8997_aod +EXPORT_SYMBOL_GPL vmlinux 0x01848a8e local_apic_timer_c2_ok +EXPORT_SYMBOL_GPL vmlinux 0x01866a57 ezx_pcap_set_bits +EXPORT_SYMBOL_GPL vmlinux 0x018b3d1e intel_pt_validate_cap +EXPORT_SYMBOL_GPL vmlinux 0x01a0cb78 property_entries_free +EXPORT_SYMBOL_GPL vmlinux 0x01b10fca ftrace_ops_set_global_filter +EXPORT_SYMBOL_GPL vmlinux 0x01b9c245 iommu_sva_unbind_gpasid +EXPORT_SYMBOL_GPL vmlinux 0x01c12c32 cpu_bit_bitmap +EXPORT_SYMBOL_GPL vmlinux 0x01e1a8de kgdb_breakpoint +EXPORT_SYMBOL_GPL vmlinux 0x01ee5532 smp_call_function_any +EXPORT_SYMBOL_GPL vmlinux 0x02015fdd unregister_kretprobe +EXPORT_SYMBOL_GPL vmlinux 0x020253b5 device_register +EXPORT_SYMBOL_GPL vmlinux 0x0202d02c devm_phy_destroy +EXPORT_SYMBOL_GPL vmlinux 0x0202f34d devm_gpiochip_add_data_with_key +EXPORT_SYMBOL_GPL vmlinux 0x021bffcc wm8350_reg_lock +EXPORT_SYMBOL_GPL vmlinux 0x022ee993 fwnode_graph_get_port_parent +EXPORT_SYMBOL_GPL vmlinux 0x0233aedf crypto_cipher_encrypt_one +EXPORT_SYMBOL_GPL vmlinux 0x023909a7 modify_user_hw_breakpoint +EXPORT_SYMBOL_GPL vmlinux 0x023925a5 devm_regulator_get_exclusive +EXPORT_SYMBOL_GPL vmlinux 0x02394899 play_idle_precise +EXPORT_SYMBOL_GPL vmlinux 0x024d13dd request_free_mem_region +EXPORT_SYMBOL_GPL vmlinux 0x025e7dd5 ata_pci_sff_prepare_host +EXPORT_SYMBOL_GPL vmlinux 0x02605d6b tcp_is_ulp_esp +EXPORT_SYMBOL_GPL vmlinux 0x02676fb3 rio_unmap_inb_region +EXPORT_SYMBOL_GPL vmlinux 0x02717595 rio_map_outb_region +EXPORT_SYMBOL_GPL vmlinux 0x029342a8 dev_attr_em_message +EXPORT_SYMBOL_GPL vmlinux 0x02953e9b pm_generic_suspend +EXPORT_SYMBOL_GPL vmlinux 0x029c2cbf acpi_subsys_runtime_resume +EXPORT_SYMBOL_GPL vmlinux 0x02b3146b __inet_twsk_schedule +EXPORT_SYMBOL_GPL vmlinux 0x02c7687b ata_sas_port_alloc +EXPORT_SYMBOL_GPL vmlinux 0x02c8005b devfreq_event_add_edev +EXPORT_SYMBOL_GPL vmlinux 0x02d12a0c max8997_update_reg +EXPORT_SYMBOL_GPL vmlinux 0x02d16d98 regulator_get_error_flags +EXPORT_SYMBOL_GPL vmlinux 0x02d41030 pingv6_prot +EXPORT_SYMBOL_GPL vmlinux 0x02e11564 edac_device_handle_ce_count +EXPORT_SYMBOL_GPL vmlinux 0x02ec420f kobject_init_and_add +EXPORT_SYMBOL_GPL vmlinux 0x02f35f78 wm8350_block_write +EXPORT_SYMBOL_GPL vmlinux 0x02f589c4 invalidate_inode_pages2 +EXPORT_SYMBOL_GPL vmlinux 0x02f6d252 tpm_send +EXPORT_SYMBOL_GPL vmlinux 0x0312b3b0 reset_controller_add_lookup +EXPORT_SYMBOL_GPL vmlinux 0x03372453 force_irqthreads +EXPORT_SYMBOL_GPL vmlinux 0x033832c7 usb_amd_hang_symptom_quirk +EXPORT_SYMBOL_GPL vmlinux 0x0343bdf1 __i2c_board_list +EXPORT_SYMBOL_GPL vmlinux 0x03492c54 do_take_over_console +EXPORT_SYMBOL_GPL vmlinux 0x0358759a sock_diag_put_meminfo +EXPORT_SYMBOL_GPL vmlinux 0x036013a9 __srcu_notifier_call_chain +EXPORT_SYMBOL_GPL vmlinux 0x0360c735 vfs_listxattr +EXPORT_SYMBOL_GPL vmlinux 0x036de383 perf_event_cgrp_subsys_enabled_key +EXPORT_SYMBOL_GPL vmlinux 0x037241c3 irq_chip_mask_ack_parent +EXPORT_SYMBOL_GPL vmlinux 0x037e6f35 spi_res_add +EXPORT_SYMBOL_GPL vmlinux 0x03952887 ktime_add_safe +EXPORT_SYMBOL_GPL vmlinux 0x039bbb8e class_dev_iter_init +EXPORT_SYMBOL_GPL vmlinux 0x03c12dfe cancel_work_sync +EXPORT_SYMBOL_GPL vmlinux 0x03ccbb4a ata_pci_device_do_suspend +EXPORT_SYMBOL_GPL vmlinux 0x03ce7234 sched_smt_present +EXPORT_SYMBOL_GPL vmlinux 0x03d7d65b reset_controller_unregister +EXPORT_SYMBOL_GPL vmlinux 0x03fa01ca devm_pci_epc_destroy +EXPORT_SYMBOL_GPL vmlinux 0x0402cbbf preempt_notifier_inc +EXPORT_SYMBOL_GPL vmlinux 0x0417fca4 crypto_register_skciphers +EXPORT_SYMBOL_GPL vmlinux 0x0419e175 vbin_printf +EXPORT_SYMBOL_GPL vmlinux 0x04278878 max8997_bulk_write +EXPORT_SYMBOL_GPL vmlinux 0x0433b607 __devm_regmap_init +EXPORT_SYMBOL_GPL vmlinux 0x04365f1c serial8250_em485_start_tx +EXPORT_SYMBOL_GPL vmlinux 0x043c6f7f dm_noflush_suspending +EXPORT_SYMBOL_GPL vmlinux 0x04420eaf srcu_notifier_call_chain +EXPORT_SYMBOL_GPL vmlinux 0x044f5388 xenbus_watch_pathfmt +EXPORT_SYMBOL_GPL vmlinux 0x0465a073 regmap_reg_in_ranges +EXPORT_SYMBOL_GPL vmlinux 0x0469aaca set_secondary_fwnode +EXPORT_SYMBOL_GPL vmlinux 0x047e6bd9 pm_genpd_syscore_poweron +EXPORT_SYMBOL_GPL vmlinux 0x048b18fc sk_msg_free_nocharge +EXPORT_SYMBOL_GPL vmlinux 0x048b5f8d twl4030_audio_get_mclk +EXPORT_SYMBOL_GPL vmlinux 0x0491f1ee posix_acl_default_xattr_handler +EXPORT_SYMBOL_GPL vmlinux 0x049929c0 hv_stimer_free +EXPORT_SYMBOL_GPL vmlinux 0x049c84c2 net_ns_type_operations +EXPORT_SYMBOL_GPL vmlinux 0x04ab1c7a dax_finish_sync_fault +EXPORT_SYMBOL_GPL vmlinux 0x04ab91ca scsi_target_unblock +EXPORT_SYMBOL_GPL vmlinux 0x04abe6b4 usb_hcd_unlink_urb_from_ep +EXPORT_SYMBOL_GPL vmlinux 0x04b4aae8 nexthop_find_by_id +EXPORT_SYMBOL_GPL vmlinux 0x04bc2880 access_process_vm +EXPORT_SYMBOL_GPL vmlinux 0x04bf0092 io_cgrp_subsys_enabled_key +EXPORT_SYMBOL_GPL vmlinux 0x04c4f603 mpi_get_buffer +EXPORT_SYMBOL_GPL vmlinux 0x04cb1089 rio_add_net +EXPORT_SYMBOL_GPL vmlinux 0x04df8fbc lzo1x_decompress_safe +EXPORT_SYMBOL_GPL vmlinux 0x04f55462 skb_cow_data +EXPORT_SYMBOL_GPL vmlinux 0x04f97ced register_acpi_bus_type +EXPORT_SYMBOL_GPL vmlinux 0x050946cd dm_device_name +EXPORT_SYMBOL_GPL vmlinux 0x050d797d pci_hp_add_bridge +EXPORT_SYMBOL_GPL vmlinux 0x05154871 pci_common_swizzle +EXPORT_SYMBOL_GPL vmlinux 0x05222220 acpi_processor_get_performance_info +EXPORT_SYMBOL_GPL vmlinux 0x05249ad1 register_pernet_subsys +EXPORT_SYMBOL_GPL vmlinux 0x052c9aed ktime_get_real_fast_ns +EXPORT_SYMBOL_GPL vmlinux 0x052d203b clk_register_fractional_divider +EXPORT_SYMBOL_GPL vmlinux 0x05452994 pwm_lpss_remove +EXPORT_SYMBOL_GPL vmlinux 0x054c43cc percpu_up_write +EXPORT_SYMBOL_GPL vmlinux 0x054e550b kernel_halt +EXPORT_SYMBOL_GPL vmlinux 0x054e8e18 serial8250_set_defaults +EXPORT_SYMBOL_GPL vmlinux 0x054ed5da regulator_sync_voltage +EXPORT_SYMBOL_GPL vmlinux 0x055a95a5 bpf_map_inc +EXPORT_SYMBOL_GPL vmlinux 0x05664ebb evm_verifyxattr +EXPORT_SYMBOL_GPL vmlinux 0x056ed5cc shmem_file_setup_with_mnt +EXPORT_SYMBOL_GPL vmlinux 0x056efa00 dma_get_any_slave_channel +EXPORT_SYMBOL_GPL vmlinux 0x056f3740 usb_unlink_urb +EXPORT_SYMBOL_GPL vmlinux 0x058b582a vt_get_leds +EXPORT_SYMBOL_GPL vmlinux 0x058f9366 apei_exec_collect_resources +EXPORT_SYMBOL_GPL vmlinux 0x05a39f15 nvmem_cell_read_u32 +EXPORT_SYMBOL_GPL vmlinux 0x05a456f6 kthread_flush_worker +EXPORT_SYMBOL_GPL vmlinux 0x05a5856b __tracepoint_neigh_cleanup_and_release +EXPORT_SYMBOL_GPL vmlinux 0x05c734d0 ethnl_cable_test_free +EXPORT_SYMBOL_GPL vmlinux 0x05c75bc9 event_triggers_post_call +EXPORT_SYMBOL_GPL vmlinux 0x05c77d25 devlink_resource_register +EXPORT_SYMBOL_GPL vmlinux 0x05c882b3 ip6_pol_route +EXPORT_SYMBOL_GPL vmlinux 0x05cd66bb __ata_change_queue_depth +EXPORT_SYMBOL_GPL vmlinux 0x05e2566b rio_mport_write_config_8 +EXPORT_SYMBOL_GPL vmlinux 0x05e936f0 bdi_dev_name +EXPORT_SYMBOL_GPL vmlinux 0x05f593ad strp_process +EXPORT_SYMBOL_GPL vmlinux 0x061449db extcon_find_edev_by_node +EXPORT_SYMBOL_GPL vmlinux 0x06148118 devlink_port_param_driverinit_value_set +EXPORT_SYMBOL_GPL vmlinux 0x061d5a66 crypto_hash_walk_first +EXPORT_SYMBOL_GPL vmlinux 0x06209f49 phy_lookup_setting +EXPORT_SYMBOL_GPL vmlinux 0x0626da5f od_unregister_powersave_bias_handler +EXPORT_SYMBOL_GPL vmlinux 0x06272f88 eventfd_fget +EXPORT_SYMBOL_GPL vmlinux 0x064807b0 dw_pcie_host_deinit +EXPORT_SYMBOL_GPL vmlinux 0x064db9a5 mark_mounts_for_expiry +EXPORT_SYMBOL_GPL vmlinux 0x064f8219 fib_info_nh_uses_dev +EXPORT_SYMBOL_GPL vmlinux 0x0653fe11 virtqueue_get_buf +EXPORT_SYMBOL_GPL vmlinux 0x0657d8ee cpufreq_dbs_governor_start +EXPORT_SYMBOL_GPL vmlinux 0x06688764 uart_try_toggle_sysrq +EXPORT_SYMBOL_GPL vmlinux 0x066bc2d3 direct_make_request +EXPORT_SYMBOL_GPL vmlinux 0x06767add iommu_sva_get_pasid +EXPORT_SYMBOL_GPL vmlinux 0x0690b573 report_iommu_fault +EXPORT_SYMBOL_GPL vmlinux 0x06bb3382 irq_domain_free_irqs_common +EXPORT_SYMBOL_GPL vmlinux 0x06cca30b ring_buffer_record_off +EXPORT_SYMBOL_GPL vmlinux 0x06f403ff devres_destroy +EXPORT_SYMBOL_GPL vmlinux 0x06f647f8 ata_acpi_gtm_xfermask +EXPORT_SYMBOL_GPL vmlinux 0x07171a52 iommu_detach_device +EXPORT_SYMBOL_GPL vmlinux 0x0721e1da get_dev_pagemap +EXPORT_SYMBOL_GPL vmlinux 0x07229d21 ipv6_stub +EXPORT_SYMBOL_GPL vmlinux 0x07242d92 put_dax +EXPORT_SYMBOL_GPL vmlinux 0x072a5e30 subsys_system_register +EXPORT_SYMBOL_GPL vmlinux 0x074cf916 led_classdev_register_ext +EXPORT_SYMBOL_GPL vmlinux 0x074e39c4 pcie_port_find_device +EXPORT_SYMBOL_GPL vmlinux 0x074f98db synth_event_add_field +EXPORT_SYMBOL_GPL vmlinux 0x076356e7 sfp_may_have_phy +EXPORT_SYMBOL_GPL vmlinux 0x07646cee ata_tf_to_fis +EXPORT_SYMBOL_GPL vmlinux 0x076b1ef2 phy_pm_runtime_allow +EXPORT_SYMBOL_GPL vmlinux 0x07748119 device_create_bin_file +EXPORT_SYMBOL_GPL vmlinux 0x078e2c0f usb_hcd_pci_pm_ops +EXPORT_SYMBOL_GPL vmlinux 0x07a8aa16 ip6_route_output_flags_noref +EXPORT_SYMBOL_GPL vmlinux 0x07b0433b __clk_get_hw +EXPORT_SYMBOL_GPL vmlinux 0x07b21112 __rio_local_read_config_16 +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 0x07be6905 net_inc_egress_queue +EXPORT_SYMBOL_GPL vmlinux 0x07bf29cd get_cached_msi_msg +EXPORT_SYMBOL_GPL vmlinux 0x07c23703 hrtimer_try_to_cancel +EXPORT_SYMBOL_GPL vmlinux 0x07c24e19 virtqueue_add_inbuf_ctx +EXPORT_SYMBOL_GPL vmlinux 0x07cf2f3e usb_remove_phy +EXPORT_SYMBOL_GPL vmlinux 0x07dc6b9a xhci_suspend +EXPORT_SYMBOL_GPL vmlinux 0x07edeba7 hv_free_hyperv_page +EXPORT_SYMBOL_GPL vmlinux 0x07f8ce1a __mnt_drop_write +EXPORT_SYMBOL_GPL vmlinux 0x07fd1b75 acpiphp_unregister_attention +EXPORT_SYMBOL_GPL vmlinux 0x08135613 dax_write_cache +EXPORT_SYMBOL_GPL vmlinux 0x0818ec79 irq_set_default_host +EXPORT_SYMBOL_GPL vmlinux 0x081a65e2 fuse_free_conn +EXPORT_SYMBOL_GPL vmlinux 0x0828d609 mc146818_get_time +EXPORT_SYMBOL_GPL vmlinux 0x0833d729 irq_remove_generic_chip +EXPORT_SYMBOL_GPL vmlinux 0x084f6798 fb_bl_default_curve +EXPORT_SYMBOL_GPL vmlinux 0x0872fdf3 dma_buf_unmap_attachment +EXPORT_SYMBOL_GPL vmlinux 0x087a4fc8 usb_find_interface +EXPORT_SYMBOL_GPL vmlinux 0x087e7086 tcp_sendmsg_locked +EXPORT_SYMBOL_GPL vmlinux 0x087f5dc5 wm831x_of_match +EXPORT_SYMBOL_GPL vmlinux 0x088db56b debugfs_create_u8 +EXPORT_SYMBOL_GPL vmlinux 0x08b38384 efivars_unregister +EXPORT_SYMBOL_GPL vmlinux 0x08be9be2 sdio_readb +EXPORT_SYMBOL_GPL vmlinux 0x08cd1540 usb_phy_roothub_suspend +EXPORT_SYMBOL_GPL vmlinux 0x08d3bf02 trace_vprintk +EXPORT_SYMBOL_GPL vmlinux 0x08e28c63 synth_event_add_val +EXPORT_SYMBOL_GPL vmlinux 0x08e51f20 device_destroy +EXPORT_SYMBOL_GPL vmlinux 0x08f3d8e2 nf_ipv6_ops +EXPORT_SYMBOL_GPL vmlinux 0x08fabe43 ata_pci_device_suspend +EXPORT_SYMBOL_GPL vmlinux 0x0907d14d blocking_notifier_chain_register +EXPORT_SYMBOL_GPL vmlinux 0x090fcc65 pci_restore_msi_state +EXPORT_SYMBOL_GPL vmlinux 0x091eb9b4 round_jiffies +EXPORT_SYMBOL_GPL vmlinux 0x091f6591 mbox_controller_register +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 0x094630cf fat_setattr +EXPORT_SYMBOL_GPL vmlinux 0x0954ca80 dev_pm_opp_put_opp_table +EXPORT_SYMBOL_GPL vmlinux 0x095a8401 devm_platform_ioremap_resource +EXPORT_SYMBOL_GPL vmlinux 0x0969a424 vring_transport_features +EXPORT_SYMBOL_GPL vmlinux 0x096a7e6f x86_spec_ctrl_base +EXPORT_SYMBOL_GPL vmlinux 0x096b2418 __tracepoint_tcp_send_reset +EXPORT_SYMBOL_GPL vmlinux 0x09984ade acpi_data_fwnode_ops +EXPORT_SYMBOL_GPL vmlinux 0x099c73f5 md_find_rdev_nr_rcu +EXPORT_SYMBOL_GPL vmlinux 0x09a54f4d spi_slave_abort +EXPORT_SYMBOL_GPL vmlinux 0x09aca712 bpf_map_put +EXPORT_SYMBOL_GPL vmlinux 0x09b53e14 interval_tree_remove +EXPORT_SYMBOL_GPL vmlinux 0x09d3d26f serial8250_handle_irq +EXPORT_SYMBOL_GPL vmlinux 0x09d63265 list_lru_count_node +EXPORT_SYMBOL_GPL vmlinux 0x09da48fc ip6_datagram_recv_ctl +EXPORT_SYMBOL_GPL vmlinux 0x09e55033 component_master_del +EXPORT_SYMBOL_GPL vmlinux 0x0a030100 pm_genpd_remove_device +EXPORT_SYMBOL_GPL vmlinux 0x0a0c9d45 inet_peer_base_init +EXPORT_SYMBOL_GPL vmlinux 0x0a15f0bd devm_phy_get +EXPORT_SYMBOL_GPL vmlinux 0x0a1e71ff extcon_set_state_sync +EXPORT_SYMBOL_GPL vmlinux 0x0a21430e dev_pm_clear_wake_irq +EXPORT_SYMBOL_GPL vmlinux 0x0a502c98 dmar_platform_optin +EXPORT_SYMBOL_GPL vmlinux 0x0a5728ef disk_has_partitions +EXPORT_SYMBOL_GPL vmlinux 0x0a6c4041 cn_netlink_send +EXPORT_SYMBOL_GPL vmlinux 0x0a6ce1cc sfp_select_interface +EXPORT_SYMBOL_GPL vmlinux 0x0a6da670 device_get_named_child_node +EXPORT_SYMBOL_GPL vmlinux 0x0a970178 devlink_region_create +EXPORT_SYMBOL_GPL vmlinux 0x0aa5aca0 platform_get_resource +EXPORT_SYMBOL_GPL vmlinux 0x0ab4a386 tpm1_do_selftest +EXPORT_SYMBOL_GPL vmlinux 0x0ab710a3 __regmap_init +EXPORT_SYMBOL_GPL vmlinux 0x0abd9d82 devm_kstrdup_const +EXPORT_SYMBOL_GPL vmlinux 0x0ac0c5d3 serial8250_em485_destroy +EXPORT_SYMBOL_GPL vmlinux 0x0ac30c16 debugfs_rename +EXPORT_SYMBOL_GPL vmlinux 0x0ac7211f spi_controller_dma_map_mem_op_data +EXPORT_SYMBOL_GPL vmlinux 0x0aca96be bpf_trace_run5 +EXPORT_SYMBOL_GPL vmlinux 0x0ad137d3 lpit_read_residency_count_address +EXPORT_SYMBOL_GPL vmlinux 0x0ad819ce syscon_regmap_lookup_by_phandle +EXPORT_SYMBOL_GPL vmlinux 0x0ad8e2f3 kthread_park +EXPORT_SYMBOL_GPL vmlinux 0x0ae35995 nvdimm_flush +EXPORT_SYMBOL_GPL vmlinux 0x0af40724 iommu_alloc_resv_region +EXPORT_SYMBOL_GPL vmlinux 0x0af79805 dev_forward_skb +EXPORT_SYMBOL_GPL vmlinux 0x0afa4bd2 get_task_pid +EXPORT_SYMBOL_GPL vmlinux 0x0b00fba4 __account_locked_vm +EXPORT_SYMBOL_GPL vmlinux 0x0b05525a __fscrypt_prepare_rename +EXPORT_SYMBOL_GPL vmlinux 0x0b064dc5 devlink_port_attrs_pci_pf_set +EXPORT_SYMBOL_GPL vmlinux 0x0b07abe2 unshare_fs_struct +EXPORT_SYMBOL_GPL vmlinux 0x0b0ec995 skb_mpls_dec_ttl +EXPORT_SYMBOL_GPL vmlinux 0x0b1bb9f9 synchronize_rcu_tasks +EXPORT_SYMBOL_GPL vmlinux 0x0b2243bc fib_add_nexthop +EXPORT_SYMBOL_GPL vmlinux 0x0b2db2d5 remove_resource +EXPORT_SYMBOL_GPL vmlinux 0x0b3415ab led_classdev_notify_brightness_hw_changed +EXPORT_SYMBOL_GPL vmlinux 0x0b36fa8f acpi_dma_controller_free +EXPORT_SYMBOL_GPL vmlinux 0x0b3e1e93 pm_runtime_irq_safe +EXPORT_SYMBOL_GPL vmlinux 0x0b4a6766 unwind_next_frame +EXPORT_SYMBOL_GPL vmlinux 0x0b50334e mmc_switch +EXPORT_SYMBOL_GPL vmlinux 0x0b52e502 apei_resources_add +EXPORT_SYMBOL_GPL vmlinux 0x0b5344dc cpufreq_enable_fast_switch +EXPORT_SYMBOL_GPL vmlinux 0x0b53e85f usb_put_hcd +EXPORT_SYMBOL_GPL vmlinux 0x0b610985 ata_sff_queue_pio_task +EXPORT_SYMBOL_GPL vmlinux 0x0b635874 devm_acpi_dma_controller_register +EXPORT_SYMBOL_GPL vmlinux 0x0b69056d ehci_hub_control +EXPORT_SYMBOL_GPL vmlinux 0x0b6a8bc1 vfio_add_group_dev +EXPORT_SYMBOL_GPL vmlinux 0x0b80faf4 pm_generic_suspend_noirq +EXPORT_SYMBOL_GPL vmlinux 0x0b84c697 vfio_group_get_external_user_from_dev +EXPORT_SYMBOL_GPL vmlinux 0x0b86a51d get_net_ns +EXPORT_SYMBOL_GPL vmlinux 0x0b86c199 wm8350_read_auxadc +EXPORT_SYMBOL_GPL vmlinux 0x0b8bd35b sb800_prefetch +EXPORT_SYMBOL_GPL vmlinux 0x0bc0bd87 input_class +EXPORT_SYMBOL_GPL vmlinux 0x0bd89fb0 class_for_each_device +EXPORT_SYMBOL_GPL vmlinux 0x0bdaa56e device_for_each_child +EXPORT_SYMBOL_GPL vmlinux 0x0be3a663 hwpoison_filter +EXPORT_SYMBOL_GPL vmlinux 0x0c1b8f4c irq_domain_simple_ops +EXPORT_SYMBOL_GPL vmlinux 0x0c2865fd power_supply_external_power_changed +EXPORT_SYMBOL_GPL vmlinux 0x0c2c5802 work_busy +EXPORT_SYMBOL_GPL vmlinux 0x0c326c89 crypto_grab_akcipher +EXPORT_SYMBOL_GPL vmlinux 0x0c32ff8a edac_pci_alloc_index +EXPORT_SYMBOL_GPL vmlinux 0x0c3f7dc3 fat_time_unix2fat +EXPORT_SYMBOL_GPL vmlinux 0x0c50478c crypto_alloc_aead +EXPORT_SYMBOL_GPL vmlinux 0x0c637f9c tps6586x_clr_bits +EXPORT_SYMBOL_GPL vmlinux 0x0c72e67a inet_csk_reqsk_queue_hash_add +EXPORT_SYMBOL_GPL vmlinux 0x0c7e3a64 udp6_lib_lookup +EXPORT_SYMBOL_GPL vmlinux 0x0c805f93 clflush_cache_range +EXPORT_SYMBOL_GPL vmlinux 0x0c86b7c3 power_supply_am_i_supplied +EXPORT_SYMBOL_GPL vmlinux 0x0c916bd0 validate_xmit_xfrm +EXPORT_SYMBOL_GPL vmlinux 0x0caebe2c msi_desc_to_pci_sysdata +EXPORT_SYMBOL_GPL vmlinux 0x0cb37181 netdev_set_default_ethtool_ops +EXPORT_SYMBOL_GPL vmlinux 0x0cb579c0 __free_iova +EXPORT_SYMBOL_GPL vmlinux 0x0cbe3ee2 software_node_unregister +EXPORT_SYMBOL_GPL vmlinux 0x0cc3b29e acpi_dev_filter_resource_type +EXPORT_SYMBOL_GPL vmlinux 0x0cd9e401 noop_set_page_dirty +EXPORT_SYMBOL_GPL vmlinux 0x0cdc9e8a dma_can_mmap +EXPORT_SYMBOL_GPL vmlinux 0x0cde7a40 ata_sff_data_xfer +EXPORT_SYMBOL_GPL vmlinux 0x0cefdd3b regulator_get_mode +EXPORT_SYMBOL_GPL vmlinux 0x0d07b90e regulator_get_voltage_sel_pickable_regmap +EXPORT_SYMBOL_GPL vmlinux 0x0d08424a kernfs_notify +EXPORT_SYMBOL_GPL vmlinux 0x0d116ad0 __sbitmap_queue_get +EXPORT_SYMBOL_GPL vmlinux 0x0d188e29 ipv6_opt_accepted +EXPORT_SYMBOL_GPL vmlinux 0x0d1ac4ee init_dummy_netdev +EXPORT_SYMBOL_GPL vmlinux 0x0d24c6fc kstrdup_quotable_file +EXPORT_SYMBOL_GPL vmlinux 0x0d276cc2 bsg_scsi_register_queue +EXPORT_SYMBOL_GPL vmlinux 0x0d459213 work_on_cpu_safe +EXPORT_SYMBOL_GPL vmlinux 0x0d4961de nf_log_buf_open +EXPORT_SYMBOL_GPL vmlinux 0x0d4f9a22 sysfs_create_mount_point +EXPORT_SYMBOL_GPL vmlinux 0x0d547a94 __spi_alloc_controller +EXPORT_SYMBOL_GPL vmlinux 0x0d562c4c balloon_page_list_dequeue +EXPORT_SYMBOL_GPL vmlinux 0x0d855a9b device_release_driver +EXPORT_SYMBOL_GPL vmlinux 0x0d95303a sata_std_hardreset +EXPORT_SYMBOL_GPL vmlinux 0x0da2622a bpf_sk_storage_diag_put +EXPORT_SYMBOL_GPL vmlinux 0x0dae71e3 wakeup_source_unregister +EXPORT_SYMBOL_GPL vmlinux 0x0db17d5f sata_scr_read +EXPORT_SYMBOL_GPL vmlinux 0x0db98a89 gov_attr_set_get +EXPORT_SYMBOL_GPL vmlinux 0x0dc373ab wm5110_aod +EXPORT_SYMBOL_GPL vmlinux 0x0dcb3ee8 divider_recalc_rate +EXPORT_SYMBOL_GPL vmlinux 0x0dcebc37 usb_get_urb +EXPORT_SYMBOL_GPL vmlinux 0x0ddb1cd7 llist_reverse_order +EXPORT_SYMBOL_GPL vmlinux 0x0dffe0d5 blk_execute_rq_nowait +EXPORT_SYMBOL_GPL vmlinux 0x0e007edf xen_evtchn_nr_channels +EXPORT_SYMBOL_GPL vmlinux 0x0e04f36a fsnotify_alloc_group +EXPORT_SYMBOL_GPL vmlinux 0x0e13cb4d apei_resources_release +EXPORT_SYMBOL_GPL vmlinux 0x0e179ca1 gpiochip_find +EXPORT_SYMBOL_GPL vmlinux 0x0e1b0dd1 pci_pri_supported +EXPORT_SYMBOL_GPL vmlinux 0x0e2edc89 tps6586x_write +EXPORT_SYMBOL_GPL vmlinux 0x0e330720 devm_acpi_dma_controller_free +EXPORT_SYMBOL_GPL vmlinux 0x0e6b79af static_key_disable_cpuslocked +EXPORT_SYMBOL_GPL vmlinux 0x0e869f5e metadata_dst_free_percpu +EXPORT_SYMBOL_GPL vmlinux 0x0e9bcc40 list_lru_count_one +EXPORT_SYMBOL_GPL vmlinux 0x0ea26817 irq_setup_generic_chip +EXPORT_SYMBOL_GPL vmlinux 0x0ea43419 device_reprobe +EXPORT_SYMBOL_GPL vmlinux 0x0ea5cbce xen_irq_lateeoi +EXPORT_SYMBOL_GPL vmlinux 0x0eadc826 badblocks_show +EXPORT_SYMBOL_GPL vmlinux 0x0eb0bbf9 kmsg_dump_get_buffer +EXPORT_SYMBOL_GPL vmlinux 0x0eb1af78 __hwspin_unlock +EXPORT_SYMBOL_GPL vmlinux 0x0ec096b0 hv_read_reference_counter +EXPORT_SYMBOL_GPL vmlinux 0x0ec3a778 fsnotify_put_group +EXPORT_SYMBOL_GPL vmlinux 0x0eca4117 blk_mq_quiesce_queue_nowait +EXPORT_SYMBOL_GPL vmlinux 0x0ed21369 ethnl_cable_test_fault_length +EXPORT_SYMBOL_GPL vmlinux 0x0ed34cc9 phy_init +EXPORT_SYMBOL_GPL vmlinux 0x0ef6202c blk_trace_startstop +EXPORT_SYMBOL_GPL vmlinux 0x0ef8c75b dma_buf_mmap +EXPORT_SYMBOL_GPL vmlinux 0x0f0b21fe pm_trace_rtc_abused +EXPORT_SYMBOL_GPL vmlinux 0x0f180070 ring_buffer_free_read_page +EXPORT_SYMBOL_GPL vmlinux 0x0f2d7d87 mce_unregister_decode_chain +EXPORT_SYMBOL_GPL vmlinux 0x0f395585 rio_dma_prep_xfer +EXPORT_SYMBOL_GPL vmlinux 0x0f494d4e handle_fasteoi_nmi +EXPORT_SYMBOL_GPL vmlinux 0x0f521ea0 amd_iommu_is_attach_deferred +EXPORT_SYMBOL_GPL vmlinux 0x0f6266db ata_sff_qc_fill_rtf +EXPORT_SYMBOL_GPL vmlinux 0x0f7ca236 dmi_memdev_name +EXPORT_SYMBOL_GPL vmlinux 0x0f85000c extcon_set_property +EXPORT_SYMBOL_GPL vmlinux 0x0fb6fd7a sbitmap_bitmap_show +EXPORT_SYMBOL_GPL vmlinux 0x0fbb7344 memremap_compat_align +EXPORT_SYMBOL_GPL vmlinux 0x0fbe9c49 usb_phy_set_charger_current +EXPORT_SYMBOL_GPL vmlinux 0x0fc09b43 transport_add_device +EXPORT_SYMBOL_GPL vmlinux 0x0fc37562 amd_smn_read +EXPORT_SYMBOL_GPL vmlinux 0x0fcc1969 copy_from_user_nmi +EXPORT_SYMBOL_GPL vmlinux 0x0fe0a1bb regulator_bulk_set_supply_names +EXPORT_SYMBOL_GPL vmlinux 0x0fe7617c __tracepoint_suspend_resume +EXPORT_SYMBOL_GPL vmlinux 0x0ff80f63 led_compose_name +EXPORT_SYMBOL_GPL vmlinux 0x0ffce863 usb_reset_device +EXPORT_SYMBOL_GPL vmlinux 0x10138352 tracing_on +EXPORT_SYMBOL_GPL vmlinux 0x102334c9 register_kretprobes +EXPORT_SYMBOL_GPL vmlinux 0x102f163d thermal_zone_get_slope +EXPORT_SYMBOL_GPL vmlinux 0x1038b96f adxl_get_component_names +EXPORT_SYMBOL_GPL vmlinux 0x104793d0 ehci_handshake +EXPORT_SYMBOL_GPL vmlinux 0x105664c1 i2c_recover_bus +EXPORT_SYMBOL_GPL vmlinux 0x105e53d6 vfio_register_iommu_driver +EXPORT_SYMBOL_GPL vmlinux 0x105fee22 dma_get_slave_channel +EXPORT_SYMBOL_GPL vmlinux 0x10611c2b regulator_put +EXPORT_SYMBOL_GPL vmlinux 0x1062aa27 power_supply_batinfo_ocv2cap +EXPORT_SYMBOL_GPL vmlinux 0x10657933 mddev_unlock +EXPORT_SYMBOL_GPL vmlinux 0x108a0acd bstr_printf +EXPORT_SYMBOL_GPL vmlinux 0x109c9514 devm_device_remove_group +EXPORT_SYMBOL_GPL vmlinux 0x10b93060 iommu_unmap_fast +EXPORT_SYMBOL_GPL vmlinux 0x10c2e75a kmsg_dump_register +EXPORT_SYMBOL_GPL vmlinux 0x10da204d blkdev_nr_zones +EXPORT_SYMBOL_GPL vmlinux 0x10e63911 wm5110_patch +EXPORT_SYMBOL_GPL vmlinux 0x10ecc52c usb_amd_quirk_pll_enable +EXPORT_SYMBOL_GPL vmlinux 0x110106c1 cper_severity_to_aer +EXPORT_SYMBOL_GPL vmlinux 0x110ef7d2 inet6_destroy_sock +EXPORT_SYMBOL_GPL vmlinux 0x111bef39 securityfs_create_file +EXPORT_SYMBOL_GPL vmlinux 0x1122019c uart_insert_char +EXPORT_SYMBOL_GPL vmlinux 0x114bce9d balloon_page_enqueue +EXPORT_SYMBOL_GPL vmlinux 0x115d4056 usb_free_urb +EXPORT_SYMBOL_GPL vmlinux 0x1172d487 rhashtable_insert_slow +EXPORT_SYMBOL_GPL vmlinux 0x1182ccb1 to_nd_region +EXPORT_SYMBOL_GPL vmlinux 0x1185c249 arch_apei_report_mem_error +EXPORT_SYMBOL_GPL vmlinux 0x118970d9 gov_attr_set_put +EXPORT_SYMBOL_GPL vmlinux 0x119b63bf fib_rules_dump +EXPORT_SYMBOL_GPL vmlinux 0x11a2e0ac crypto_dh_key_len +EXPORT_SYMBOL_GPL vmlinux 0x11bc4355 regcache_cache_bypass +EXPORT_SYMBOL_GPL vmlinux 0x11bc6ba9 input_ff_flush +EXPORT_SYMBOL_GPL vmlinux 0x11c189f6 spi_mem_supports_op +EXPORT_SYMBOL_GPL vmlinux 0x11c23240 crypto_attr_u32 +EXPORT_SYMBOL_GPL vmlinux 0x11c6c704 ata_acpi_cbl_80wire +EXPORT_SYMBOL_GPL vmlinux 0x11d5f470 tty_buffer_space_avail +EXPORT_SYMBOL_GPL vmlinux 0x11dd63da hvc_poll +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 0x11e76edd dw_pcie_wait_for_link +EXPORT_SYMBOL_GPL vmlinux 0x121a47ee devm_gpiod_get_index_optional +EXPORT_SYMBOL_GPL vmlinux 0x121d958a unregister_die_notifier +EXPORT_SYMBOL_GPL vmlinux 0x12296a39 serdev_device_add +EXPORT_SYMBOL_GPL vmlinux 0x122cad03 shash_register_instance +EXPORT_SYMBOL_GPL vmlinux 0x1234e483 get_cpu_iowait_time_us +EXPORT_SYMBOL_GPL vmlinux 0x1234ffa1 cper_estatus_check_header +EXPORT_SYMBOL_GPL vmlinux 0x1242fe3d iommu_map_atomic +EXPORT_SYMBOL_GPL vmlinux 0x1244b082 dma_buf_map_attachment +EXPORT_SYMBOL_GPL vmlinux 0x1268f357 resume_device_irqs +EXPORT_SYMBOL_GPL vmlinux 0x1281304e iomap_file_buffered_write +EXPORT_SYMBOL_GPL vmlinux 0x129334ae sfp_parse_support +EXPORT_SYMBOL_GPL vmlinux 0x1293c837 pci_pasid_features +EXPORT_SYMBOL_GPL vmlinux 0x12950a59 fscrypt_ioctl_get_key_status +EXPORT_SYMBOL_GPL vmlinux 0x12ab31f1 idr_alloc_u32 +EXPORT_SYMBOL_GPL vmlinux 0x12bcae56 __pm_runtime_set_status +EXPORT_SYMBOL_GPL vmlinux 0x12dbc8f6 percpu_ref_switch_to_atomic_sync +EXPORT_SYMBOL_GPL vmlinux 0x12e285ec is_uv_system +EXPORT_SYMBOL_GPL vmlinux 0x131a5ed7 regmap_del_irq_chip +EXPORT_SYMBOL_GPL vmlinux 0x131db64a system_long_wq +EXPORT_SYMBOL_GPL vmlinux 0x1326c67e usb_autopm_put_interface_no_suspend +EXPORT_SYMBOL_GPL vmlinux 0x13310f85 crypto_register_templates +EXPORT_SYMBOL_GPL vmlinux 0x133969d7 __trace_printk +EXPORT_SYMBOL_GPL vmlinux 0x133bb3f8 trace_event_ignore_this_pid +EXPORT_SYMBOL_GPL vmlinux 0x1347206c dst_cache_get +EXPORT_SYMBOL_GPL vmlinux 0x1348ff1e dw_pcie_host_init +EXPORT_SYMBOL_GPL vmlinux 0x1353f253 xenbus_dev_suspend +EXPORT_SYMBOL_GPL vmlinux 0x1360138b __mmu_notifier_register +EXPORT_SYMBOL_GPL vmlinux 0x136209db power_supply_reg_notifier +EXPORT_SYMBOL_GPL vmlinux 0x137fcd4c tpm2_get_cc_attrs_tbl +EXPORT_SYMBOL_GPL vmlinux 0x138aff76 gnttab_init +EXPORT_SYMBOL_GPL vmlinux 0x138dbcd4 acpi_pm_set_device_wakeup +EXPORT_SYMBOL_GPL vmlinux 0x138e0957 dax_write_cache_enabled +EXPORT_SYMBOL_GPL vmlinux 0x139090cd generic_fh_to_parent +EXPORT_SYMBOL_GPL vmlinux 0x1398091e device_wakeup_disable +EXPORT_SYMBOL_GPL vmlinux 0x13a05707 to_software_node +EXPORT_SYMBOL_GPL vmlinux 0x13c19ee7 alarm_forward_now +EXPORT_SYMBOL_GPL vmlinux 0x13c6cf88 apei_get_debugfs_dir +EXPORT_SYMBOL_GPL vmlinux 0x13ce87e8 asn1_ber_decoder +EXPORT_SYMBOL_GPL vmlinux 0x13e3aa9a smca_banks +EXPORT_SYMBOL_GPL vmlinux 0x13e45f31 clockevents_register_device +EXPORT_SYMBOL_GPL vmlinux 0x13ed8784 sdev_evt_alloc +EXPORT_SYMBOL_GPL vmlinux 0x13eec627 vc_scrolldelta_helper +EXPORT_SYMBOL_GPL vmlinux 0x13f1b5f0 crypto_unregister_scomps +EXPORT_SYMBOL_GPL vmlinux 0x13f1bf03 dm_get_table_device +EXPORT_SYMBOL_GPL vmlinux 0x13f42819 input_ff_event +EXPORT_SYMBOL_GPL vmlinux 0x1403ad09 cpufreq_add_update_util_hook +EXPORT_SYMBOL_GPL vmlinux 0x1418238a __tracepoint_cpu_frequency +EXPORT_SYMBOL_GPL vmlinux 0x141f38bf ktime_get_raw_fast_ns +EXPORT_SYMBOL_GPL vmlinux 0x141f8448 vfio_external_group_match_file +EXPORT_SYMBOL_GPL vmlinux 0x14330884 devm_intel_scu_ipc_dev_get +EXPORT_SYMBOL_GPL vmlinux 0x143d791b fwnode_property_match_string +EXPORT_SYMBOL_GPL vmlinux 0x1444684d ata_port_schedule_eh +EXPORT_SYMBOL_GPL vmlinux 0x1444fb24 pcc_mbox_request_channel +EXPORT_SYMBOL_GPL vmlinux 0x14603e0a debugfs_create_symlink +EXPORT_SYMBOL_GPL vmlinux 0x14658215 devlink_region_snapshot_id_put +EXPORT_SYMBOL_GPL vmlinux 0x1475f3c7 edac_pci_del_device +EXPORT_SYMBOL_GPL vmlinux 0x147747a1 sdio_readl +EXPORT_SYMBOL_GPL vmlinux 0x147f5045 crypto_stats_kpp_generate_public_key +EXPORT_SYMBOL_GPL vmlinux 0x149174b0 xfrm_audit_state_replay_overflow +EXPORT_SYMBOL_GPL vmlinux 0x14a07bf6 usb_hcd_is_primary_hcd +EXPORT_SYMBOL_GPL vmlinux 0x14ab4784 ata_bmdma_setup +EXPORT_SYMBOL_GPL vmlinux 0x14c123b0 security_path_chown +EXPORT_SYMBOL_GPL vmlinux 0x14d01690 clk_mux_index_to_val +EXPORT_SYMBOL_GPL vmlinux 0x14ddfbb4 bpf_trace_run12 +EXPORT_SYMBOL_GPL vmlinux 0x14e2aa2b ipv4_update_pmtu +EXPORT_SYMBOL_GPL vmlinux 0x14ec4fdb evtchn_put +EXPORT_SYMBOL_GPL vmlinux 0x14f7af27 fib_nh_common_init +EXPORT_SYMBOL_GPL vmlinux 0x15042fb4 phy_pm_runtime_forbid +EXPORT_SYMBOL_GPL vmlinux 0x151ef1da vring_create_virtqueue +EXPORT_SYMBOL_GPL vmlinux 0x153b60a6 klist_del +EXPORT_SYMBOL_GPL vmlinux 0x1547ed2d devlink_resources_unregister +EXPORT_SYMBOL_GPL vmlinux 0x154a7349 devlink_resource_size_get +EXPORT_SYMBOL_GPL vmlinux 0x15510a89 devlink_fmsg_binary_put +EXPORT_SYMBOL_GPL vmlinux 0x15544d22 skb_zerocopy_iter_stream +EXPORT_SYMBOL_GPL vmlinux 0x156c62c6 crypto_register_shash +EXPORT_SYMBOL_GPL vmlinux 0x156cdac8 __tracepoint_kfree_skb +EXPORT_SYMBOL_GPL vmlinux 0x157d03cb sysfs_update_groups +EXPORT_SYMBOL_GPL vmlinux 0x1599aa1f usb_hcd_link_urb_to_ep +EXPORT_SYMBOL_GPL vmlinux 0x159b974a scsi_free_sgtables +EXPORT_SYMBOL_GPL vmlinux 0x15a9370a inet_csk_compat_getsockopt +EXPORT_SYMBOL_GPL vmlinux 0x15cde77a devm_get_free_pages +EXPORT_SYMBOL_GPL vmlinux 0x15db0aaa efivar_entry_set +EXPORT_SYMBOL_GPL vmlinux 0x15ea1f1b sysfs_chmod_file +EXPORT_SYMBOL_GPL vmlinux 0x15ea2648 hwpoison_filter_flags_mask +EXPORT_SYMBOL_GPL vmlinux 0x15ef1a0c mmc_send_tuning +EXPORT_SYMBOL_GPL vmlinux 0x16036e5c rtc_class_close +EXPORT_SYMBOL_GPL vmlinux 0x160d072d da9052_request_irq +EXPORT_SYMBOL_GPL vmlinux 0x16276a48 pcie_port_bus_type +EXPORT_SYMBOL_GPL vmlinux 0x16516798 osc_pc_lpi_support_confirmed +EXPORT_SYMBOL_GPL vmlinux 0x1658d159 devm_regulator_unregister +EXPORT_SYMBOL_GPL vmlinux 0x165a2dc2 loop_backing_file +EXPORT_SYMBOL_GPL vmlinux 0x166d6443 __tracepoint_pelt_rt_tp +EXPORT_SYMBOL_GPL vmlinux 0x166db1b5 sched_clock_idle_wakeup_event +EXPORT_SYMBOL_GPL vmlinux 0x167d5884 subsys_dev_iter_init +EXPORT_SYMBOL_GPL vmlinux 0x167d7113 acpi_bus_register_early_device +EXPORT_SYMBOL_GPL vmlinux 0x16937776 skb_complete_tx_timestamp +EXPORT_SYMBOL_GPL vmlinux 0x169448ac device_pm_wait_for_dev +EXPORT_SYMBOL_GPL vmlinux 0x169a0d43 gnttab_unmap_refs_sync +EXPORT_SYMBOL_GPL vmlinux 0x169edb5d debugfs_create_file_size +EXPORT_SYMBOL_GPL vmlinux 0x16afeacc __mnt_is_readonly +EXPORT_SYMBOL_GPL vmlinux 0x16d84535 iommu_fwspec_add_ids +EXPORT_SYMBOL_GPL vmlinux 0x16da1f88 devlink_fmsg_u32_put +EXPORT_SYMBOL_GPL vmlinux 0x16e3ede8 __fscrypt_encrypt_symlink +EXPORT_SYMBOL_GPL vmlinux 0x16f15139 bind_evtchn_to_irq +EXPORT_SYMBOL_GPL vmlinux 0x16f952c0 md_rdev_init +EXPORT_SYMBOL_GPL vmlinux 0x170cc36c put_timespec64 +EXPORT_SYMBOL_GPL vmlinux 0x1734d72c acpi_device_update_power +EXPORT_SYMBOL_GPL vmlinux 0x1741ddee trace_seq_puts +EXPORT_SYMBOL_GPL vmlinux 0x175f4c5b vfs_removexattr +EXPORT_SYMBOL_GPL vmlinux 0x176031a7 devlink_fmsg_string_put +EXPORT_SYMBOL_GPL vmlinux 0x17614bf3 apei_resources_sub +EXPORT_SYMBOL_GPL vmlinux 0x17657c92 subsys_interface_register +EXPORT_SYMBOL_GPL vmlinux 0x176adf76 xenmem_reservation_decrease +EXPORT_SYMBOL_GPL vmlinux 0x1771932f ata_bmdma_irq_clear +EXPORT_SYMBOL_GPL vmlinux 0x177c338d twl_get_version +EXPORT_SYMBOL_GPL vmlinux 0x1789d17b pci_sriov_get_totalvfs +EXPORT_SYMBOL_GPL vmlinux 0x17a3993f __tracepoint_block_split +EXPORT_SYMBOL_GPL vmlinux 0x17add64b gdt_page +EXPORT_SYMBOL_GPL vmlinux 0x17ae678b dma_buf_vmap +EXPORT_SYMBOL_GPL vmlinux 0x17b7c73e xen_register_device_domain_owner +EXPORT_SYMBOL_GPL vmlinux 0x17bb2f15 devm_hwrng_unregister +EXPORT_SYMBOL_GPL vmlinux 0x17db9af8 gpiod_set_raw_array_value_cansleep +EXPORT_SYMBOL_GPL vmlinux 0x17e01f11 erst_clear +EXPORT_SYMBOL_GPL vmlinux 0x17e5e18a nvm_get_chunk_meta +EXPORT_SYMBOL_GPL vmlinux 0x17eb09af __clk_hw_register_divider +EXPORT_SYMBOL_GPL vmlinux 0x18008c59 ring_buffer_resize +EXPORT_SYMBOL_GPL vmlinux 0x1822e0d5 to_nvdimm +EXPORT_SYMBOL_GPL vmlinux 0x18582826 amd_pmu_disable_virt +EXPORT_SYMBOL_GPL vmlinux 0x185ea575 find_extend_vma +EXPORT_SYMBOL_GPL vmlinux 0x18615d35 efivar_supports_writes +EXPORT_SYMBOL_GPL vmlinux 0x18728552 sprint_OID +EXPORT_SYMBOL_GPL vmlinux 0x1881aec5 wm8350_clear_bits +EXPORT_SYMBOL_GPL vmlinux 0x188450d6 shmem_read_mapping_page_gfp +EXPORT_SYMBOL_GPL vmlinux 0x1891b03f __rio_local_write_config_32 +EXPORT_SYMBOL_GPL vmlinux 0x189ff193 edac_device_free_ctl_info +EXPORT_SYMBOL_GPL vmlinux 0x18d0a2e5 __blk_req_zone_write_lock +EXPORT_SYMBOL_GPL vmlinux 0x18e4f8aa swphy_read_reg +EXPORT_SYMBOL_GPL vmlinux 0x18fb2caf cpus_read_unlock +EXPORT_SYMBOL_GPL vmlinux 0x1918bba7 blk_queue_set_zoned +EXPORT_SYMBOL_GPL vmlinux 0x191f1df1 pci_generic_config_read32 +EXPORT_SYMBOL_GPL vmlinux 0x191f32e9 gpiochip_add_pingroup_range +EXPORT_SYMBOL_GPL vmlinux 0x192b1b4c regulator_list_voltage_table +EXPORT_SYMBOL_GPL vmlinux 0x193dfdf6 klp_get_prev_state +EXPORT_SYMBOL_GPL vmlinux 0x196614ce hw_breakpoint_restore +EXPORT_SYMBOL_GPL vmlinux 0x19661ecf devm_free_percpu +EXPORT_SYMBOL_GPL vmlinux 0x199bd42b crypto_alg_extsize +EXPORT_SYMBOL_GPL vmlinux 0x199e6640 pkcs7_validate_trust +EXPORT_SYMBOL_GPL vmlinux 0x19a304ba usb_disabled +EXPORT_SYMBOL_GPL vmlinux 0x19ae009c nd_region_provider_data +EXPORT_SYMBOL_GPL vmlinux 0x19b3fc6b fib_nl_newrule +EXPORT_SYMBOL_GPL vmlinux 0x19d5bf19 invalidate_inode_pages2_range +EXPORT_SYMBOL_GPL vmlinux 0x19e81304 btree_alloc +EXPORT_SYMBOL_GPL vmlinux 0x19edd064 blkg_rwstat_exit +EXPORT_SYMBOL_GPL vmlinux 0x19f385a7 ata_sas_tport_add +EXPORT_SYMBOL_GPL vmlinux 0x19f462ab kfree_call_rcu +EXPORT_SYMBOL_GPL vmlinux 0x1a04951e pinctrl_remove_gpio_range +EXPORT_SYMBOL_GPL vmlinux 0x1a05f268 iommu_sva_bind_device +EXPORT_SYMBOL_GPL vmlinux 0x1a10c32b crypto_ft_tab +EXPORT_SYMBOL_GPL vmlinux 0x1a146ec3 usb_ep_type_string +EXPORT_SYMBOL_GPL vmlinux 0x1a15acaf usb_enable_lpm +EXPORT_SYMBOL_GPL vmlinux 0x1a1644ec sk_set_memalloc +EXPORT_SYMBOL_GPL vmlinux 0x1a2444c8 simple_attr_read +EXPORT_SYMBOL_GPL vmlinux 0x1a27e64e device_show_int +EXPORT_SYMBOL_GPL vmlinux 0x1a2c5373 iptunnel_handle_offloads +EXPORT_SYMBOL_GPL vmlinux 0x1a2c64cd regulator_get_linear_step +EXPORT_SYMBOL_GPL vmlinux 0x1a2cd971 irq_domain_associate +EXPORT_SYMBOL_GPL vmlinux 0x1a2eb89b user_update +EXPORT_SYMBOL_GPL vmlinux 0x1a2efe03 pci_iomap_wc +EXPORT_SYMBOL_GPL vmlinux 0x1a3cd6e7 iommu_aux_attach_device +EXPORT_SYMBOL_GPL vmlinux 0x1a43bf17 device_remove_properties +EXPORT_SYMBOL_GPL vmlinux 0x1a6153ee to_nd_desc +EXPORT_SYMBOL_GPL vmlinux 0x1a615e63 devres_open_group +EXPORT_SYMBOL_GPL vmlinux 0x1a62a191 usb_register_driver +EXPORT_SYMBOL_GPL vmlinux 0x1a6bf28f fsnotify_get_cookie +EXPORT_SYMBOL_GPL vmlinux 0x1a78d9ca crypto_alloc_tfm +EXPORT_SYMBOL_GPL vmlinux 0x1a7ad477 gpiochip_generic_config +EXPORT_SYMBOL_GPL vmlinux 0x1ab19cca pci_ioremap_wc_bar +EXPORT_SYMBOL_GPL vmlinux 0x1ac458a1 public_key_signature_free +EXPORT_SYMBOL_GPL vmlinux 0x1aca0345 sis_info133_for_sata +EXPORT_SYMBOL_GPL vmlinux 0x1acd18c8 cpuset_cgrp_subsys_on_dfl_key +EXPORT_SYMBOL_GPL vmlinux 0x1ae5c283 clk_hw_is_prepared +EXPORT_SYMBOL_GPL vmlinux 0x1ae6473b scsi_internal_device_unblock_nowait +EXPORT_SYMBOL_GPL vmlinux 0x1af267f8 int_pow +EXPORT_SYMBOL_GPL vmlinux 0x1aff3d55 mce_register_injector_chain +EXPORT_SYMBOL_GPL vmlinux 0x1b082ee7 wait_for_stable_page +EXPORT_SYMBOL_GPL vmlinux 0x1b0b3ffd extcon_get_state +EXPORT_SYMBOL_GPL vmlinux 0x1b1471f3 alarm_start +EXPORT_SYMBOL_GPL vmlinux 0x1b260bcb regulator_list_voltage_linear_range +EXPORT_SYMBOL_GPL vmlinux 0x1b30d45c fsnotify_destroy_mark +EXPORT_SYMBOL_GPL vmlinux 0x1b5059ce ata_id_xfermask +EXPORT_SYMBOL_GPL vmlinux 0x1b5f4377 trace_seq_putc +EXPORT_SYMBOL_GPL vmlinux 0x1b6131b9 alloc_iova_fast +EXPORT_SYMBOL_GPL vmlinux 0x1b695f07 regulator_force_disable +EXPORT_SYMBOL_GPL vmlinux 0x1b7b0538 blk_req_needs_zone_write_lock +EXPORT_SYMBOL_GPL vmlinux 0x1b8822d8 pinctrl_gpio_direction_output +EXPORT_SYMBOL_GPL vmlinux 0x1b8a7ccb pci_epc_mem_free_addr +EXPORT_SYMBOL_GPL vmlinux 0x1b8d0733 screen_glyph_unicode +EXPORT_SYMBOL_GPL vmlinux 0x1b8f230f phy_put +EXPORT_SYMBOL_GPL vmlinux 0x1b92e41d inet_putpeer +EXPORT_SYMBOL_GPL vmlinux 0x1ba237b0 default_cpu_present_to_apicid +EXPORT_SYMBOL_GPL vmlinux 0x1ba44746 perf_pmu_migrate_context +EXPORT_SYMBOL_GPL vmlinux 0x1bbd45d1 inet_unhash +EXPORT_SYMBOL_GPL vmlinux 0x1bc42747 crypto_unregister_instance +EXPORT_SYMBOL_GPL vmlinux 0x1bc5eebe pinctrl_gpio_direction_input +EXPORT_SYMBOL_GPL vmlinux 0x1bc8eb77 acpi_subsys_restore_early +EXPORT_SYMBOL_GPL vmlinux 0x1bd60af7 dev_coredumpv +EXPORT_SYMBOL_GPL vmlinux 0x1bdc5d50 serdev_controller_add +EXPORT_SYMBOL_GPL vmlinux 0x1bdd4152 ehci_setup +EXPORT_SYMBOL_GPL vmlinux 0x1bee4974 sg_alloc_table_chained +EXPORT_SYMBOL_GPL vmlinux 0x1bfceaaa subsys_interface_unregister +EXPORT_SYMBOL_GPL vmlinux 0x1c0e2952 i2c_new_dummy_device +EXPORT_SYMBOL_GPL vmlinux 0x1c225a9e __netpoll_free +EXPORT_SYMBOL_GPL vmlinux 0x1c3873aa crypto_inst_setname +EXPORT_SYMBOL_GPL vmlinux 0x1c44b902 __blocking_notifier_call_chain +EXPORT_SYMBOL_GPL vmlinux 0x1c46ee96 sock_diag_check_cookie +EXPORT_SYMBOL_GPL vmlinux 0x1c4b1963 __percpu_init_rwsem +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 0x1c655bab devlink_port_type_clear +EXPORT_SYMBOL_GPL vmlinux 0x1c78c47d pci_bridge_secondary_bus_reset +EXPORT_SYMBOL_GPL vmlinux 0x1c80d27d btree_geo128 +EXPORT_SYMBOL_GPL vmlinux 0x1c80e60c edac_pci_alloc_ctl_info +EXPORT_SYMBOL_GPL vmlinux 0x1c87a811 __round_jiffies_up +EXPORT_SYMBOL_GPL vmlinux 0x1c8e9aec account_locked_vm +EXPORT_SYMBOL_GPL vmlinux 0x1c907ccb wbc_account_cgroup_owner +EXPORT_SYMBOL_GPL vmlinux 0x1c944bbd gnttab_unmap_refs_async +EXPORT_SYMBOL_GPL vmlinux 0x1cae4da5 crypto_spawn_tfm +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 0x1cc8109c sdio_writesb +EXPORT_SYMBOL_GPL vmlinux 0x1ccc7787 ipv6_bpf_stub +EXPORT_SYMBOL_GPL vmlinux 0x1cd1bff4 pm_genpd_add_device +EXPORT_SYMBOL_GPL vmlinux 0x1cd35874 dev_pm_opp_set_rate +EXPORT_SYMBOL_GPL vmlinux 0x1cd9b71e lwtunnel_output +EXPORT_SYMBOL_GPL vmlinux 0x1cfe4101 clkdev_hw_create +EXPORT_SYMBOL_GPL vmlinux 0x1d1ca884 scsi_host_busy_iter +EXPORT_SYMBOL_GPL vmlinux 0x1d222ced irq_get_irqchip_state +EXPORT_SYMBOL_GPL vmlinux 0x1d484832 bpf_prog_destroy +EXPORT_SYMBOL_GPL vmlinux 0x1d50d2d9 tpm_pm_resume +EXPORT_SYMBOL_GPL vmlinux 0x1d57b99b skb_tstamp_tx +EXPORT_SYMBOL_GPL vmlinux 0x1d5e95a6 br_fdb_test_addr_hook +EXPORT_SYMBOL_GPL vmlinux 0x1d608115 fwnode_graph_get_remote_endpoint +EXPORT_SYMBOL_GPL vmlinux 0x1d65b63a nvdimm_provider_data +EXPORT_SYMBOL_GPL vmlinux 0x1d77b0f8 unix_socket_table +EXPORT_SYMBOL_GPL vmlinux 0x1d7f8b1b sk_msg_memcopy_from_iter +EXPORT_SYMBOL_GPL vmlinux 0x1d94a218 dmi_memdev_handle +EXPORT_SYMBOL_GPL vmlinux 0x1dc38b0f crypto_unregister_kpp +EXPORT_SYMBOL_GPL vmlinux 0x1dcde0cc __irq_domain_add +EXPORT_SYMBOL_GPL vmlinux 0x1de37db0 __vfs_removexattr_noperm +EXPORT_SYMBOL_GPL vmlinux 0x1dfd3d87 ata_msleep +EXPORT_SYMBOL_GPL vmlinux 0x1e0670c6 reset_control_release +EXPORT_SYMBOL_GPL vmlinux 0x1e0b9bd2 usb_enable_intel_xhci_ports +EXPORT_SYMBOL_GPL vmlinux 0x1e0cbfaa __phy_modify_mmd +EXPORT_SYMBOL_GPL vmlinux 0x1e29ef71 pcie_update_link_speed +EXPORT_SYMBOL_GPL vmlinux 0x1e3106ac firmware_request_platform +EXPORT_SYMBOL_GPL vmlinux 0x1e362d59 perf_event_disable +EXPORT_SYMBOL_GPL vmlinux 0x1e4ca9f9 iommu_capable +EXPORT_SYMBOL_GPL vmlinux 0x1e51dabb __tracepoint_detach_device_from_domain +EXPORT_SYMBOL_GPL vmlinux 0x1e55042e l3mdev_update_flow +EXPORT_SYMBOL_GPL vmlinux 0x1e5a5f22 sn_partition_id +EXPORT_SYMBOL_GPL vmlinux 0x1e6aa8f8 pci_stop_and_remove_bus_device_locked +EXPORT_SYMBOL_GPL vmlinux 0x1e7bbcb3 kernel_restart +EXPORT_SYMBOL_GPL vmlinux 0x1e8012fd mctrl_gpio_init +EXPORT_SYMBOL_GPL vmlinux 0x1e8398ca ip_route_output_flow +EXPORT_SYMBOL_GPL vmlinux 0x1e8fac8e wireless_nlevent_flush +EXPORT_SYMBOL_GPL vmlinux 0x1e90ad0b peernet2id_alloc +EXPORT_SYMBOL_GPL vmlinux 0x1e9bc719 freq_qos_update_request +EXPORT_SYMBOL_GPL vmlinux 0x1ea7f9e1 devm_gpiod_put_array +EXPORT_SYMBOL_GPL vmlinux 0x1eaec09e sbitmap_get +EXPORT_SYMBOL_GPL vmlinux 0x1eaf63e5 spi_controller_resume +EXPORT_SYMBOL_GPL vmlinux 0x1eb9516e round_jiffies_relative +EXPORT_SYMBOL_GPL vmlinux 0x1ebf6c2a pci_power_names +EXPORT_SYMBOL_GPL vmlinux 0x1ecf28f7 acpi_device_get_match_data +EXPORT_SYMBOL_GPL vmlinux 0x1edc5af5 of_hwspin_lock_get_id_byname +EXPORT_SYMBOL_GPL vmlinux 0x1ee443f0 tty_set_ldisc +EXPORT_SYMBOL_GPL vmlinux 0x1ee7d3cd hrtimer_init +EXPORT_SYMBOL_GPL vmlinux 0x1ef3d47d usb_hub_clear_tt_buffer +EXPORT_SYMBOL_GPL vmlinux 0x1ef7e06c gpiod_unexport +EXPORT_SYMBOL_GPL vmlinux 0x1f01852f device_set_of_node_from_dev +EXPORT_SYMBOL_GPL vmlinux 0x1f05de5b iommu_register_device_fault_handler +EXPORT_SYMBOL_GPL vmlinux 0x1f0cb5bf pm_power_off_prepare +EXPORT_SYMBOL_GPL vmlinux 0x1f1ddd8d copy_mc_fragile +EXPORT_SYMBOL_GPL vmlinux 0x1f226334 clockevents_config_and_register +EXPORT_SYMBOL_GPL vmlinux 0x1f449588 mctrl_gpio_disable_ms +EXPORT_SYMBOL_GPL vmlinux 0x1f563160 bpf_offload_dev_priv +EXPORT_SYMBOL_GPL vmlinux 0x1f58ca25 spi_set_cs_timing +EXPORT_SYMBOL_GPL vmlinux 0x1f5b87bb edac_mc_free +EXPORT_SYMBOL_GPL vmlinux 0x1f69124d gpiochip_populate_parent_fwspec_twocell +EXPORT_SYMBOL_GPL vmlinux 0x1f6cb53b fwnode_count_parents +EXPORT_SYMBOL_GPL vmlinux 0x1f75d0d8 bus_register_notifier +EXPORT_SYMBOL_GPL vmlinux 0x1f7f40cc mmc_regulator_get_supply +EXPORT_SYMBOL_GPL vmlinux 0x1f8544b8 panic_timeout +EXPORT_SYMBOL_GPL vmlinux 0x1f86b82f dev_pm_opp_remove +EXPORT_SYMBOL_GPL vmlinux 0x1f8d9a3a isa_unregister_driver +EXPORT_SYMBOL_GPL vmlinux 0x1f8e18e7 crypto_register_scomp +EXPORT_SYMBOL_GPL vmlinux 0x1fa1d95c sha256_zero_message_hash +EXPORT_SYMBOL_GPL vmlinux 0x1fb70eb9 gnttab_end_foreign_transfer_ref +EXPORT_SYMBOL_GPL vmlinux 0x1fc9e53c shash_ahash_finup +EXPORT_SYMBOL_GPL vmlinux 0x1fcd6df7 ipv4_sk_redirect +EXPORT_SYMBOL_GPL vmlinux 0x1fe6e504 gpiod_add_hogs +EXPORT_SYMBOL_GPL vmlinux 0x1fece26b devm_rtc_device_register +EXPORT_SYMBOL_GPL vmlinux 0x2001b0d6 trace_event_raw_init +EXPORT_SYMBOL_GPL vmlinux 0x20261551 pci_intx +EXPORT_SYMBOL_GPL vmlinux 0x202d4ed6 nvmem_cell_write +EXPORT_SYMBOL_GPL vmlinux 0x2036377d blk_mq_freeze_queue +EXPORT_SYMBOL_GPL vmlinux 0x2039ea11 pm_genpd_remove +EXPORT_SYMBOL_GPL vmlinux 0x204f2c5c gnttab_free_grant_reference +EXPORT_SYMBOL_GPL vmlinux 0x2051f294 gpiod_get_optional +EXPORT_SYMBOL_GPL vmlinux 0x207b26c5 gpiod_export +EXPORT_SYMBOL_GPL vmlinux 0x20835a9f __xdp_release_frame +EXPORT_SYMBOL_GPL vmlinux 0x20899467 hv_stimer0_isr +EXPORT_SYMBOL_GPL vmlinux 0x20926805 locks_release_private +EXPORT_SYMBOL_GPL vmlinux 0x2093f4dd clk_register_divider_table +EXPORT_SYMBOL_GPL vmlinux 0x20978fb9 idr_find +EXPORT_SYMBOL_GPL vmlinux 0x20a0e89b ata_sff_port_ops +EXPORT_SYMBOL_GPL vmlinux 0x20af6f3b mmc_cmdq_disable +EXPORT_SYMBOL_GPL vmlinux 0x20b0cbff sdio_unregister_driver +EXPORT_SYMBOL_GPL vmlinux 0x20b1939a md_rdev_clear +EXPORT_SYMBOL_GPL vmlinux 0x20b781b1 bpf_prog_add +EXPORT_SYMBOL_GPL vmlinux 0x20ca1383 devm_pinctrl_unregister +EXPORT_SYMBOL_GPL vmlinux 0x20cc032c virtqueue_kick +EXPORT_SYMBOL_GPL vmlinux 0x20f515e9 pcie_has_flr +EXPORT_SYMBOL_GPL vmlinux 0x20fa6e67 ata_dev_next +EXPORT_SYMBOL_GPL vmlinux 0x210a33fe fat_truncate_time +EXPORT_SYMBOL_GPL vmlinux 0x211ccbc6 tcp_get_info +EXPORT_SYMBOL_GPL vmlinux 0x213cdc17 clockevent_delta2ns +EXPORT_SYMBOL_GPL vmlinux 0x214a2809 __generic_fsdax_supported +EXPORT_SYMBOL_GPL vmlinux 0x2160fdb1 gnttab_foreach_grant_in_range +EXPORT_SYMBOL_GPL vmlinux 0x2168a2fb iommu_map +EXPORT_SYMBOL_GPL vmlinux 0x216de4e1 rcu_get_gp_kthreads_prio +EXPORT_SYMBOL_GPL vmlinux 0x216ed488 kthread_data +EXPORT_SYMBOL_GPL vmlinux 0x2172bd75 icc_link_create +EXPORT_SYMBOL_GPL vmlinux 0x2175f278 ata_host_detach +EXPORT_SYMBOL_GPL vmlinux 0x2176e42a hwpoison_filter_memcg +EXPORT_SYMBOL_GPL vmlinux 0x2191470c device_get_phy_mode +EXPORT_SYMBOL_GPL vmlinux 0x219cb1ce pstore_register +EXPORT_SYMBOL_GPL vmlinux 0x21a563da clk_get_accuracy +EXPORT_SYMBOL_GPL vmlinux 0x21a8b067 perf_aux_output_begin +EXPORT_SYMBOL_GPL vmlinux 0x21ac8b77 iommu_group_get_by_id +EXPORT_SYMBOL_GPL vmlinux 0x21c34c8f gnttab_end_foreign_transfer +EXPORT_SYMBOL_GPL vmlinux 0x21cd536a crypto_put_default_null_skcipher +EXPORT_SYMBOL_GPL vmlinux 0x21d01715 clk_register_fixed_rate +EXPORT_SYMBOL_GPL vmlinux 0x21dfaf9a ata_sff_error_handler +EXPORT_SYMBOL_GPL vmlinux 0x21fb1ef5 cpuidle_unregister_driver +EXPORT_SYMBOL_GPL vmlinux 0x21fb6cf9 bus_register +EXPORT_SYMBOL_GPL vmlinux 0x22057f0f blk_set_pm_only +EXPORT_SYMBOL_GPL vmlinux 0x22073870 crypto_destroy_tfm +EXPORT_SYMBOL_GPL vmlinux 0x2211a4c0 blk_op_str +EXPORT_SYMBOL_GPL vmlinux 0x221eab6d scatterwalk_copychunks +EXPORT_SYMBOL_GPL vmlinux 0x2239da78 skcipher_walk_async +EXPORT_SYMBOL_GPL vmlinux 0x223d0b25 __spi_register_driver +EXPORT_SYMBOL_GPL vmlinux 0x2246b4dd __tracepoint_block_bio_remap +EXPORT_SYMBOL_GPL vmlinux 0x22470a31 power_supply_set_property +EXPORT_SYMBOL_GPL vmlinux 0x224ea8ce platform_find_device_by_driver +EXPORT_SYMBOL_GPL vmlinux 0x224f51bf nvmem_device_cell_read +EXPORT_SYMBOL_GPL vmlinux 0x22577250 metadata_dst_free +EXPORT_SYMBOL_GPL vmlinux 0x229dc469 crypto_unregister_skciphers +EXPORT_SYMBOL_GPL vmlinux 0x22b654b8 cpu_device_create +EXPORT_SYMBOL_GPL vmlinux 0x22c41db2 spi_statistics_add_transfer_stats +EXPORT_SYMBOL_GPL vmlinux 0x22d2b9fc __pci_epc_create +EXPORT_SYMBOL_GPL vmlinux 0x22d87510 fb_deferred_io_init +EXPORT_SYMBOL_GPL vmlinux 0x22d9409b iomap_sort_ioends +EXPORT_SYMBOL_GPL vmlinux 0x22dd6c83 regulator_set_soft_start_regmap +EXPORT_SYMBOL_GPL vmlinux 0x22ec5205 cpu_latency_qos_remove_request +EXPORT_SYMBOL_GPL vmlinux 0x22fc59aa irq_chip_request_resources_parent +EXPORT_SYMBOL_GPL vmlinux 0x22fd08ba cpuacct_cgrp_subsys_on_dfl_key +EXPORT_SYMBOL_GPL vmlinux 0x2303e19a wm831x_reg_lock +EXPORT_SYMBOL_GPL vmlinux 0x231e9a0b register_user_hw_breakpoint +EXPORT_SYMBOL_GPL vmlinux 0x23412816 rtc_tm_to_ktime +EXPORT_SYMBOL_GPL vmlinux 0x23448ac6 sysfs_remove_bin_file +EXPORT_SYMBOL_GPL vmlinux 0x234cf416 devlink_fmsg_string_pair_put +EXPORT_SYMBOL_GPL vmlinux 0x23864ce7 cpuset_mem_spread_node +EXPORT_SYMBOL_GPL vmlinux 0x2396c7f0 clk_set_parent +EXPORT_SYMBOL_GPL vmlinux 0x23b4e0d7 clear_page_rep +EXPORT_SYMBOL_GPL vmlinux 0x23b54741 ehci_reset +EXPORT_SYMBOL_GPL vmlinux 0x23c12ee3 device_property_read_string_array +EXPORT_SYMBOL_GPL vmlinux 0x23cf7b1e skb_complete_wifi_ack +EXPORT_SYMBOL_GPL vmlinux 0x23d1ffb6 ata_sas_tport_delete +EXPORT_SYMBOL_GPL vmlinux 0x23dfaeb7 phy_validate +EXPORT_SYMBOL_GPL vmlinux 0x23ea0eb8 crypto_shoot_alg +EXPORT_SYMBOL_GPL vmlinux 0x23ee3c32 pci_find_next_capability +EXPORT_SYMBOL_GPL vmlinux 0x23f8dde3 security_kernel_post_read_file +EXPORT_SYMBOL_GPL vmlinux 0x23fe59fd fat_add_entries +EXPORT_SYMBOL_GPL vmlinux 0x240f0957 cros_ec_check_features +EXPORT_SYMBOL_GPL vmlinux 0x2410c338 x86_virt_spec_ctrl +EXPORT_SYMBOL_GPL vmlinux 0x2411eda9 usb_get_descriptor +EXPORT_SYMBOL_GPL vmlinux 0x241a0d8c pci_find_next_ht_capability +EXPORT_SYMBOL_GPL vmlinux 0x241b641f da9055_regmap_config +EXPORT_SYMBOL_GPL vmlinux 0x242354b8 fuse_conn_put +EXPORT_SYMBOL_GPL vmlinux 0x24327af5 device_store_ulong +EXPORT_SYMBOL_GPL vmlinux 0x243f0b4b crypto_check_attr_type +EXPORT_SYMBOL_GPL vmlinux 0x24476315 regulator_set_current_limit +EXPORT_SYMBOL_GPL vmlinux 0x24647383 iommu_group_add_device +EXPORT_SYMBOL_GPL vmlinux 0x2464da17 gen_pool_size +EXPORT_SYMBOL_GPL vmlinux 0x246df185 hyperv_fill_flush_guest_mapping_list +EXPORT_SYMBOL_GPL vmlinux 0x24709b2f trace_seq_putmem +EXPORT_SYMBOL_GPL vmlinux 0x247ef831 kdb_unregister +EXPORT_SYMBOL_GPL vmlinux 0x247fc468 kthread_unpark +EXPORT_SYMBOL_GPL vmlinux 0x248de905 ata_platform_remove_one +EXPORT_SYMBOL_GPL vmlinux 0x2495082d extcon_set_property_capability +EXPORT_SYMBOL_GPL vmlinux 0x2497c6d2 tcp_twsk_destructor +EXPORT_SYMBOL_GPL vmlinux 0x24981762 regulator_allow_bypass +EXPORT_SYMBOL_GPL vmlinux 0x24a34dc1 devlink_dpipe_headers_register +EXPORT_SYMBOL_GPL vmlinux 0x24acb579 trace_event_buffer_reserve +EXPORT_SYMBOL_GPL vmlinux 0x24ad11db wakeup_sources_read_unlock +EXPORT_SYMBOL_GPL vmlinux 0x24b1ac45 gpiod_put_array +EXPORT_SYMBOL_GPL vmlinux 0x24bc33c0 acpi_bind_one +EXPORT_SYMBOL_GPL vmlinux 0x24d19755 security_path_link +EXPORT_SYMBOL_GPL vmlinux 0x24da0093 rcu_inkernel_boot_has_ended +EXPORT_SYMBOL_GPL vmlinux 0x24e0adb5 pm_clk_add_notifier +EXPORT_SYMBOL_GPL vmlinux 0x24eb7e32 leds_list +EXPORT_SYMBOL_GPL vmlinux 0x24ef9ee2 rio_get_device +EXPORT_SYMBOL_GPL vmlinux 0x24f39c39 reset_control_reset +EXPORT_SYMBOL_GPL vmlinux 0x24f63dcf ata_xfer_mask2mode +EXPORT_SYMBOL_GPL vmlinux 0x2502f8fd dev_pm_qos_remove_notifier +EXPORT_SYMBOL_GPL vmlinux 0x25301bc6 arch_wb_cache_pmem +EXPORT_SYMBOL_GPL vmlinux 0x25379e73 clk_set_min_rate +EXPORT_SYMBOL_GPL vmlinux 0x25408f41 __page_mapcount +EXPORT_SYMBOL_GPL vmlinux 0x25595e25 iommu_cache_invalidate +EXPORT_SYMBOL_GPL vmlinux 0x256b87f9 scsi_device_from_queue +EXPORT_SYMBOL_GPL vmlinux 0x25709d7c clk_mux_determine_rate_flags +EXPORT_SYMBOL_GPL vmlinux 0x2575ed71 md_allow_write +EXPORT_SYMBOL_GPL vmlinux 0x257638d3 acpi_pci_find_root +EXPORT_SYMBOL_GPL vmlinux 0x2592fc6c console_printk +EXPORT_SYMBOL_GPL vmlinux 0x25950039 acpi_driver_match_device +EXPORT_SYMBOL_GPL vmlinux 0x25a1cfeb regulator_get_voltage_rdev +EXPORT_SYMBOL_GPL vmlinux 0x25c20a3a fixed_phy_unregister +EXPORT_SYMBOL_GPL vmlinux 0x25c894f7 blk_mq_update_nr_hw_queues +EXPORT_SYMBOL_GPL vmlinux 0x25dd3e67 devm_release_action +EXPORT_SYMBOL_GPL vmlinux 0x25e45789 ipv6_find_tlv +EXPORT_SYMBOL_GPL vmlinux 0x25f02c87 xen_p2m_addr +EXPORT_SYMBOL_GPL vmlinux 0x25f6cf7f debugfs_create_bool +EXPORT_SYMBOL_GPL vmlinux 0x25ffada7 pinctrl_utils_add_config +EXPORT_SYMBOL_GPL vmlinux 0x26111893 iomap_invalidatepage +EXPORT_SYMBOL_GPL vmlinux 0x2617b6d3 icc_node_create +EXPORT_SYMBOL_GPL vmlinux 0x26299ca7 usb_wakeup_enabled_descendants +EXPORT_SYMBOL_GPL vmlinux 0x262a7063 xen_start_info +EXPORT_SYMBOL_GPL vmlinux 0x26370eab klp_get_state +EXPORT_SYMBOL_GPL vmlinux 0x263d0833 badblocks_exit +EXPORT_SYMBOL_GPL vmlinux 0x263f039e xas_nomem +EXPORT_SYMBOL_GPL vmlinux 0x26472b89 fib6_check_nexthop +EXPORT_SYMBOL_GPL vmlinux 0x26485fac cpufreq_cpu_get_raw +EXPORT_SYMBOL_GPL vmlinux 0x26520970 vm_memory_committed +EXPORT_SYMBOL_GPL vmlinux 0x2655d498 __audit_inode_child +EXPORT_SYMBOL_GPL vmlinux 0x265bbef9 kexec_crash_loaded +EXPORT_SYMBOL_GPL vmlinux 0x266681c2 nf_queue_nf_hook_drop +EXPORT_SYMBOL_GPL vmlinux 0x267df662 smp_call_on_cpu +EXPORT_SYMBOL_GPL vmlinux 0x2680fb41 blk_mq_sched_try_merge +EXPORT_SYMBOL_GPL vmlinux 0x268c6507 devm_regulator_bulk_get +EXPORT_SYMBOL_GPL vmlinux 0x268de333 crypto_unregister_rng +EXPORT_SYMBOL_GPL vmlinux 0x269999a6 usb_acpi_set_power_state +EXPORT_SYMBOL_GPL vmlinux 0x26a0f0f1 irq_chip_set_parent_state +EXPORT_SYMBOL_GPL vmlinux 0x26ab4755 put_old_itimerspec32 +EXPORT_SYMBOL_GPL vmlinux 0x26b6697f dma_request_chan +EXPORT_SYMBOL_GPL vmlinux 0x26b9c91a tty_wakeup +EXPORT_SYMBOL_GPL vmlinux 0x26c1ae89 devlink_dpipe_table_resource_set +EXPORT_SYMBOL_GPL vmlinux 0x26c622ee percpu_ref_switch_to_percpu +EXPORT_SYMBOL_GPL vmlinux 0x26c90ea4 scsi_eh_get_sense +EXPORT_SYMBOL_GPL vmlinux 0x26cda94f e820__mapped_raw_any +EXPORT_SYMBOL_GPL vmlinux 0x26cf1be8 device_show_ulong +EXPORT_SYMBOL_GPL vmlinux 0x26d7ee9b serial8250_rpm_put +EXPORT_SYMBOL_GPL vmlinux 0x26e11c28 fuse_do_ioctl +EXPORT_SYMBOL_GPL vmlinux 0x26e484b2 iomap_ioend_try_merge +EXPORT_SYMBOL_GPL vmlinux 0x26ed2186 register_vmap_purge_notifier +EXPORT_SYMBOL_GPL vmlinux 0x271c799b fat_getattr +EXPORT_SYMBOL_GPL vmlinux 0x27207ee4 apply_to_existing_page_range +EXPORT_SYMBOL_GPL vmlinux 0x273aab74 xen_have_vector_callback +EXPORT_SYMBOL_GPL vmlinux 0x274222ea phy_driver_is_genphy_10g +EXPORT_SYMBOL_GPL vmlinux 0x274886a5 regmap_add_irq_chip_np +EXPORT_SYMBOL_GPL vmlinux 0x2749199d __ndisc_fill_addr_option +EXPORT_SYMBOL_GPL vmlinux 0x274cf5e1 __clk_get_flags +EXPORT_SYMBOL_GPL vmlinux 0x274dd1a3 sg_free_table_chained +EXPORT_SYMBOL_GPL vmlinux 0x275ead23 gpiod_toggle_active_low +EXPORT_SYMBOL_GPL vmlinux 0x27634a92 sysfs_create_bin_file +EXPORT_SYMBOL_GPL vmlinux 0x276e3bfc power_supply_get_battery_info +EXPORT_SYMBOL_GPL vmlinux 0x2773c485 __wake_up_locked +EXPORT_SYMBOL_GPL vmlinux 0x277d8a17 kobject_uevent +EXPORT_SYMBOL_GPL vmlinux 0x278645f5 bus_get_kset +EXPORT_SYMBOL_GPL vmlinux 0x27900833 badblocks_init +EXPORT_SYMBOL_GPL vmlinux 0x279a7797 devm_of_phy_get_by_index +EXPORT_SYMBOL_GPL vmlinux 0x27b7e5c8 synth_event_trace +EXPORT_SYMBOL_GPL vmlinux 0x27c235b5 dev_pm_opp_find_freq_ceil +EXPORT_SYMBOL_GPL vmlinux 0x27c91482 ata_host_register +EXPORT_SYMBOL_GPL vmlinux 0x27ce6a07 attribute_container_register +EXPORT_SYMBOL_GPL vmlinux 0x27df3105 hv_alloc_hyperv_zeroed_page +EXPORT_SYMBOL_GPL vmlinux 0x27f4f029 ftrace_set_global_filter +EXPORT_SYMBOL_GPL vmlinux 0x27fa66e1 nr_free_buffer_pages +EXPORT_SYMBOL_GPL vmlinux 0x280d2929 usb_reset_configuration +EXPORT_SYMBOL_GPL vmlinux 0x2816bea0 ata_ehi_clear_desc +EXPORT_SYMBOL_GPL vmlinux 0x2817ceca powercap_register_zone +EXPORT_SYMBOL_GPL vmlinux 0x2817f7fd cppc_get_desired_perf +EXPORT_SYMBOL_GPL vmlinux 0x282cdabc usb_led_activity +EXPORT_SYMBOL_GPL vmlinux 0x283d3581 ata_common_sdev_attrs +EXPORT_SYMBOL_GPL vmlinux 0x283e8e94 iomap_set_page_dirty +EXPORT_SYMBOL_GPL vmlinux 0x284b6dcf pwm_get_chip_data +EXPORT_SYMBOL_GPL vmlinux 0x284fe794 percpu_ref_exit +EXPORT_SYMBOL_GPL vmlinux 0x285d4add dw_pcie_ep_init +EXPORT_SYMBOL_GPL vmlinux 0x2864abc9 klist_node_attached +EXPORT_SYMBOL_GPL vmlinux 0x286af6a9 irq_chip_set_wake_parent +EXPORT_SYMBOL_GPL vmlinux 0x286cc647 async_synchronize_cookie_domain +EXPORT_SYMBOL_GPL vmlinux 0x28aa6a67 call_rcu +EXPORT_SYMBOL_GPL vmlinux 0x28ab4fb9 pinctrl_gpio_free +EXPORT_SYMBOL_GPL vmlinux 0x28ac59b4 synth_event_create +EXPORT_SYMBOL_GPL vmlinux 0x28afbb08 cpu_latency_qos_add_request +EXPORT_SYMBOL_GPL vmlinux 0x28bedb78 disk_part_iter_exit +EXPORT_SYMBOL_GPL vmlinux 0x28e64c64 xen_has_pv_and_legacy_disk_devices +EXPORT_SYMBOL_GPL vmlinux 0x28fd60bc sched_trace_cfs_rq_path +EXPORT_SYMBOL_GPL vmlinux 0x290a5de8 regulator_is_supported_voltage +EXPORT_SYMBOL_GPL vmlinux 0x2911723e clk_hw_is_enabled +EXPORT_SYMBOL_GPL vmlinux 0x29219f6e regmap_irq_get_domain +EXPORT_SYMBOL_GPL vmlinux 0x29252e74 __tracepoint_block_unplug +EXPORT_SYMBOL_GPL vmlinux 0x29266f31 pinctrl_utils_reserve_map +EXPORT_SYMBOL_GPL vmlinux 0x2934ebc2 fsverity_ioctl_enable +EXPORT_SYMBOL_GPL vmlinux 0x29366b61 register_ftrace_direct +EXPORT_SYMBOL_GPL vmlinux 0x2943b265 devm_gpio_request +EXPORT_SYMBOL_GPL vmlinux 0x2951a872 trace_clock_local +EXPORT_SYMBOL_GPL vmlinux 0x29649545 xen_pcpu_id +EXPORT_SYMBOL_GPL vmlinux 0x296aaca8 __class_create +EXPORT_SYMBOL_GPL vmlinux 0x2976bf86 usb_driver_set_configuration +EXPORT_SYMBOL_GPL vmlinux 0x297bfc99 ata_std_sched_eh +EXPORT_SYMBOL_GPL vmlinux 0x2994c15e sock_zerocopy_realloc +EXPORT_SYMBOL_GPL vmlinux 0x29a2078c __platform_driver_probe +EXPORT_SYMBOL_GPL vmlinux 0x29a32d69 ip_tunnel_get_stats64 +EXPORT_SYMBOL_GPL vmlinux 0x29bd05c9 __pneigh_lookup +EXPORT_SYMBOL_GPL vmlinux 0x29cde26c ata_sff_port_intr +EXPORT_SYMBOL_GPL vmlinux 0x29d56002 serdev_device_write +EXPORT_SYMBOL_GPL vmlinux 0x29eba37f current_is_async +EXPORT_SYMBOL_GPL vmlinux 0x29f8a03a klp_enable_patch +EXPORT_SYMBOL_GPL vmlinux 0x2a08ca51 kthread_cancel_work_sync +EXPORT_SYMBOL_GPL vmlinux 0x2a24e80e tty_get_pgrp +EXPORT_SYMBOL_GPL vmlinux 0x2a2aea17 clk_fixed_rate_ops +EXPORT_SYMBOL_GPL vmlinux 0x2a3d76cc usb_reset_endpoint +EXPORT_SYMBOL_GPL vmlinux 0x2a55b401 rtnl_af_unregister +EXPORT_SYMBOL_GPL vmlinux 0x2a58ae55 disable_kprobe +EXPORT_SYMBOL_GPL vmlinux 0x2a5c9571 pci_probe_reset_slot +EXPORT_SYMBOL_GPL vmlinux 0x2a5e6589 crypto_shash_digest +EXPORT_SYMBOL_GPL vmlinux 0x2a62cb3a ring_buffer_overrun_cpu +EXPORT_SYMBOL_GPL vmlinux 0x2a678372 relay_flush +EXPORT_SYMBOL_GPL vmlinux 0x2a678a13 __suspend_report_result +EXPORT_SYMBOL_GPL vmlinux 0x2a68a23e get_net_ns_by_fd +EXPORT_SYMBOL_GPL vmlinux 0x2a6974c4 devm_ioremap_uc +EXPORT_SYMBOL_GPL vmlinux 0x2a6fa420 regulator_desc_list_voltage_linear_range +EXPORT_SYMBOL_GPL vmlinux 0x2a96cd04 sysfs_remove_file_self +EXPORT_SYMBOL_GPL vmlinux 0x2aadad1a efi_capsule_update +EXPORT_SYMBOL_GPL vmlinux 0x2ac0c16c kernel_kobj +EXPORT_SYMBOL_GPL vmlinux 0x2acdfb3c ip6_route_input_lookup +EXPORT_SYMBOL_GPL vmlinux 0x2af76d8c pinctrl_find_gpio_range_from_pin_nolock +EXPORT_SYMBOL_GPL vmlinux 0x2aff68f9 perf_guest_get_msrs +EXPORT_SYMBOL_GPL vmlinux 0x2b00c238 devfreq_event_get_edev_by_phandle +EXPORT_SYMBOL_GPL vmlinux 0x2b0765ca xen_store_interface +EXPORT_SYMBOL_GPL vmlinux 0x2b08af98 devlink_port_type_ib_set +EXPORT_SYMBOL_GPL vmlinux 0x2b0fe000 gnttab_cancel_free_callback +EXPORT_SYMBOL_GPL vmlinux 0x2b1369bb sk_psock_tls_strp_read +EXPORT_SYMBOL_GPL vmlinux 0x2b260a74 __tracepoint_cpu_idle +EXPORT_SYMBOL_GPL vmlinux 0x2b3a5346 platform_device_add_resources +EXPORT_SYMBOL_GPL vmlinux 0x2b4114a7 scsi_target_block +EXPORT_SYMBOL_GPL vmlinux 0x2b4509dd devlink_health_reporter_state_update +EXPORT_SYMBOL_GPL vmlinux 0x2b507830 vmf_insert_pfn_pud_prot +EXPORT_SYMBOL_GPL vmlinux 0x2b593294 init_pid_ns +EXPORT_SYMBOL_GPL vmlinux 0x2b6150fb power_supply_temp2resist_simple +EXPORT_SYMBOL_GPL vmlinux 0x2b63fb58 tps6586x_writes +EXPORT_SYMBOL_GPL vmlinux 0x2b67b6b7 mds_idle_clear +EXPORT_SYMBOL_GPL vmlinux 0x2b6d960d synth_event_cmd_init +EXPORT_SYMBOL_GPL vmlinux 0x2b7fc385 hv_init_clocksource +EXPORT_SYMBOL_GPL vmlinux 0x2b86ae9c thermal_zone_unbind_cooling_device +EXPORT_SYMBOL_GPL vmlinux 0x2b952517 clk_has_parent +EXPORT_SYMBOL_GPL vmlinux 0x2b9997fb atomic_notifier_chain_register +EXPORT_SYMBOL_GPL vmlinux 0x2bd6bd7c ata_bmdma_post_internal_cmd +EXPORT_SYMBOL_GPL vmlinux 0x2bd6d018 device_remove_groups +EXPORT_SYMBOL_GPL vmlinux 0x2bdee6bf pci_epc_get +EXPORT_SYMBOL_GPL vmlinux 0x2be224c1 sync_page_io +EXPORT_SYMBOL_GPL vmlinux 0x2be2ae18 evict_inodes +EXPORT_SYMBOL_GPL vmlinux 0x2bfa0475 bus_set_iommu +EXPORT_SYMBOL_GPL vmlinux 0x2c015995 of_devfreq_cooling_register +EXPORT_SYMBOL_GPL vmlinux 0x2c0fe620 pci_iomap_wc_range +EXPORT_SYMBOL_GPL vmlinux 0x2c169a34 clean_acked_data_enable +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 0x2c32eef5 icc_disable +EXPORT_SYMBOL_GPL vmlinux 0x2c36d416 spi_take_timestamp_post +EXPORT_SYMBOL_GPL vmlinux 0x2c41fead switchdev_handle_port_obj_add +EXPORT_SYMBOL_GPL vmlinux 0x2c446dd2 __inet_lookup_listener +EXPORT_SYMBOL_GPL vmlinux 0x2c55a50e sk_attach_filter +EXPORT_SYMBOL_GPL vmlinux 0x2c635527 arch_invalidate_pmem +EXPORT_SYMBOL_GPL vmlinux 0x2c64ec5f device_initialize +EXPORT_SYMBOL_GPL vmlinux 0x2c66ac85 devlink_info_serial_number_put +EXPORT_SYMBOL_GPL vmlinux 0x2c6e31de led_trigger_event +EXPORT_SYMBOL_GPL vmlinux 0x2c79bcb1 pm_runtime_set_autosuspend_delay +EXPORT_SYMBOL_GPL vmlinux 0x2c7db649 irq_dispose_mapping +EXPORT_SYMBOL_GPL vmlinux 0x2c8dd6b8 edac_mem_types +EXPORT_SYMBOL_GPL vmlinux 0x2c91198a __rtc_register_device +EXPORT_SYMBOL_GPL vmlinux 0x2c9792ce of_devfreq_cooling_register_power +EXPORT_SYMBOL_GPL vmlinux 0x2c9db098 find_get_pid +EXPORT_SYMBOL_GPL vmlinux 0x2cbbfe66 nvm_set_chunk_meta +EXPORT_SYMBOL_GPL vmlinux 0x2cc65db4 raw_unhash_sk +EXPORT_SYMBOL_GPL vmlinux 0x2cc99653 extcon_register_notifier_all +EXPORT_SYMBOL_GPL vmlinux 0x2ce350ec debugfs_create_regset32 +EXPORT_SYMBOL_GPL vmlinux 0x2cea32ee unregister_oldmem_pfn_is_ram +EXPORT_SYMBOL_GPL vmlinux 0x2cf233b0 spi_sync_locked +EXPORT_SYMBOL_GPL vmlinux 0x2d03d9b8 __usb_create_hcd +EXPORT_SYMBOL_GPL vmlinux 0x2d19660c scsi_flush_work +EXPORT_SYMBOL_GPL vmlinux 0x2d1b02d2 usermodehelper_read_lock_wait +EXPORT_SYMBOL_GPL vmlinux 0x2d1b8c7f iomap_dio_iopoll +EXPORT_SYMBOL_GPL vmlinux 0x2d2a484b dev_pm_opp_put +EXPORT_SYMBOL_GPL vmlinux 0x2d2dd36f kobj_ns_grab_current +EXPORT_SYMBOL_GPL vmlinux 0x2d38953d devres_release +EXPORT_SYMBOL_GPL vmlinux 0x2d393f48 intel_soc_pmic_exec_mipi_pmic_seq_element +EXPORT_SYMBOL_GPL vmlinux 0x2d3f2831 edac_pci_handle_npe +EXPORT_SYMBOL_GPL vmlinux 0x2d41e6f5 __trace_puts +EXPORT_SYMBOL_GPL vmlinux 0x2d41ea89 ip6_sk_dst_lookup_flow +EXPORT_SYMBOL_GPL vmlinux 0x2d4d6633 pci_epf_bind +EXPORT_SYMBOL_GPL vmlinux 0x2d4e0e1d nvmem_cell_read_u64 +EXPORT_SYMBOL_GPL vmlinux 0x2d5b87e3 rio_mport_write_config_16 +EXPORT_SYMBOL_GPL vmlinux 0x2d6aa0f0 arch_apei_enable_cmcff +EXPORT_SYMBOL_GPL vmlinux 0x2d713f88 dw_pcie_link_set_n_fts +EXPORT_SYMBOL_GPL vmlinux 0x2d7ae121 phy_speed_down +EXPORT_SYMBOL_GPL vmlinux 0x2d7e7f12 nvdimm_in_overwrite +EXPORT_SYMBOL_GPL vmlinux 0x2daa2177 x509_free_certificate +EXPORT_SYMBOL_GPL vmlinux 0x2dce4990 vma_kernel_pagesize +EXPORT_SYMBOL_GPL vmlinux 0x2dd94ec4 fsnotify_find_mark +EXPORT_SYMBOL_GPL vmlinux 0x2de04edb led_trigger_unregister_simple +EXPORT_SYMBOL_GPL vmlinux 0x2de5fdfc crypto_ahash_setkey +EXPORT_SYMBOL_GPL vmlinux 0x2ded9e45 platform_add_devices +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 0x2e2d1825 kernfs_put +EXPORT_SYMBOL_GPL vmlinux 0x2e2df7f4 irq_remapping_cap +EXPORT_SYMBOL_GPL vmlinux 0x2e355c99 wm5110_i2c_regmap +EXPORT_SYMBOL_GPL vmlinux 0x2e3d699e crypto_alloc_sync_skcipher +EXPORT_SYMBOL_GPL vmlinux 0x2e5baf03 pci_reset_function_locked +EXPORT_SYMBOL_GPL vmlinux 0x2e61555f __sock_recv_ts_and_drops +EXPORT_SYMBOL_GPL vmlinux 0x2e678211 xas_find_conflict +EXPORT_SYMBOL_GPL vmlinux 0x2e75c34e bpf_event_output +EXPORT_SYMBOL_GPL vmlinux 0x2e98b5d5 register_asymmetric_key_parser +EXPORT_SYMBOL_GPL vmlinux 0x2eaeeec4 wakeup_source_create +EXPORT_SYMBOL_GPL vmlinux 0x2ebb19fd execute_in_process_context +EXPORT_SYMBOL_GPL vmlinux 0x2ebe3135 cpu_is_hotpluggable +EXPORT_SYMBOL_GPL vmlinux 0x2ec3ee08 phy_package_join +EXPORT_SYMBOL_GPL vmlinux 0x2eca0859 gpiod_set_raw_array_value +EXPORT_SYMBOL_GPL vmlinux 0x2ed7da26 xfrm_audit_state_delete +EXPORT_SYMBOL_GPL vmlinux 0x2ed9126d rio_mport_read_config_16 +EXPORT_SYMBOL_GPL vmlinux 0x2eda4807 is_uv_hubbed +EXPORT_SYMBOL_GPL vmlinux 0x2ee2ac49 fib6_rule_default +EXPORT_SYMBOL_GPL vmlinux 0x2ee7c52b btree_visitor +EXPORT_SYMBOL_GPL vmlinux 0x2eef70b3 trace_event_buffer_lock_reserve +EXPORT_SYMBOL_GPL vmlinux 0x2ef08759 spi_unregister_device +EXPORT_SYMBOL_GPL vmlinux 0x2ef4b67d led_classdev_suspend +EXPORT_SYMBOL_GPL vmlinux 0x2ef6645b perf_event_read_value +EXPORT_SYMBOL_GPL vmlinux 0x2ef7d43e virtio_config_changed +EXPORT_SYMBOL_GPL vmlinux 0x2f066692 bpf_trace_run11 +EXPORT_SYMBOL_GPL vmlinux 0x2f0d9053 usb_otg_state_string +EXPORT_SYMBOL_GPL vmlinux 0x2f0def4b rio_pw_enable +EXPORT_SYMBOL_GPL vmlinux 0x2f149ed9 genphy_c45_read_link +EXPORT_SYMBOL_GPL vmlinux 0x2f1d2279 platform_bus_type +EXPORT_SYMBOL_GPL vmlinux 0x2f2115b7 ping_queue_rcv_skb +EXPORT_SYMBOL_GPL vmlinux 0x2f2c95c4 flush_work +EXPORT_SYMBOL_GPL vmlinux 0x2f30bd4e devm_nvmem_cell_get +EXPORT_SYMBOL_GPL vmlinux 0x2f4113a2 dcookie_register +EXPORT_SYMBOL_GPL vmlinux 0x2f4880df static_key_slow_dec +EXPORT_SYMBOL_GPL vmlinux 0x2f4c54c2 bpf_verifier_log_write +EXPORT_SYMBOL_GPL vmlinux 0x2f64415f unregister_acpi_hed_notifier +EXPORT_SYMBOL_GPL vmlinux 0x2f6d7e08 is_software_node +EXPORT_SYMBOL_GPL vmlinux 0x2f759742 irq_create_fwspec_mapping +EXPORT_SYMBOL_GPL vmlinux 0x2fa3ef42 devm_of_icc_get +EXPORT_SYMBOL_GPL vmlinux 0x2fa41571 crypto_type_has_alg +EXPORT_SYMBOL_GPL vmlinux 0x2fa809a0 generic_device_group +EXPORT_SYMBOL_GPL vmlinux 0x2fb72e9b sbitmap_init_node +EXPORT_SYMBOL_GPL vmlinux 0x2fbc0f1d screen_pos +EXPORT_SYMBOL_GPL vmlinux 0x2fdcfd28 smca_get_long_name +EXPORT_SYMBOL_GPL vmlinux 0x2fde7ae7 sk_set_peek_off +EXPORT_SYMBOL_GPL vmlinux 0x3002ecf3 nd_region_dev +EXPORT_SYMBOL_GPL vmlinux 0x301552a3 pingv6_ops +EXPORT_SYMBOL_GPL vmlinux 0x30172c63 devm_rtc_allocate_device +EXPORT_SYMBOL_GPL vmlinux 0x3018e973 dev_pm_qos_remove_request +EXPORT_SYMBOL_GPL vmlinux 0x301ad5d1 dma_buf_dynamic_attach +EXPORT_SYMBOL_GPL vmlinux 0x301db480 regulator_bulk_get +EXPORT_SYMBOL_GPL vmlinux 0x304019ea preempt_notifier_unregister +EXPORT_SYMBOL_GPL vmlinux 0x304fbf13 md_new_event +EXPORT_SYMBOL_GPL vmlinux 0x3061cfce ring_buffer_entries_cpu +EXPORT_SYMBOL_GPL vmlinux 0x30678f89 ohci_init_driver +EXPORT_SYMBOL_GPL vmlinux 0x306bd192 iommu_dev_disable_feature +EXPORT_SYMBOL_GPL vmlinux 0x306f5576 pkcs7_verify +EXPORT_SYMBOL_GPL vmlinux 0x307a3773 crypto_stats_get +EXPORT_SYMBOL_GPL vmlinux 0x3090cb05 bind_interdomain_evtchn_to_irqhandler_lateeoi +EXPORT_SYMBOL_GPL vmlinux 0x30aeb180 xenbus_register_driver_common +EXPORT_SYMBOL_GPL vmlinux 0x30bd8cbf kernel_read_file_from_path +EXPORT_SYMBOL_GPL vmlinux 0x30cf804f slow_virt_to_phys +EXPORT_SYMBOL_GPL vmlinux 0x30d5d848 irq_chip_eoi_parent +EXPORT_SYMBOL_GPL vmlinux 0x30e1ec25 apei_map_generic_address +EXPORT_SYMBOL_GPL vmlinux 0x30fe5348 irq_set_chained_handler_and_data +EXPORT_SYMBOL_GPL vmlinux 0x3103f953 fuse_get_unique +EXPORT_SYMBOL_GPL vmlinux 0x31128b8e hv_remove_kexec_handler +EXPORT_SYMBOL_GPL vmlinux 0x3120293c skb_pull_rcsum +EXPORT_SYMBOL_GPL vmlinux 0x31266931 con_debug_leave +EXPORT_SYMBOL_GPL vmlinux 0x312c2f40 devm_pinctrl_put +EXPORT_SYMBOL_GPL vmlinux 0x312d49c1 uart_set_options +EXPORT_SYMBOL_GPL vmlinux 0x3134dd9c anon_transport_class_unregister +EXPORT_SYMBOL_GPL vmlinux 0x313dd5d1 pinctrl_find_and_add_gpio_range +EXPORT_SYMBOL_GPL vmlinux 0x3145058b cgroup_get_from_path +EXPORT_SYMBOL_GPL vmlinux 0x3165daa3 arbitrary_virt_to_machine +EXPORT_SYMBOL_GPL vmlinux 0x31785f08 __tracepoint_br_fdb_add +EXPORT_SYMBOL_GPL vmlinux 0x31839ad3 software_node_register_nodes +EXPORT_SYMBOL_GPL vmlinux 0x31877bc7 power_supply_register +EXPORT_SYMBOL_GPL vmlinux 0x3192d768 cpufreq_remove_update_util_hook +EXPORT_SYMBOL_GPL vmlinux 0x31a95e8b ring_buffer_record_enable_cpu +EXPORT_SYMBOL_GPL vmlinux 0x31b9f857 tcp_reno_cong_avoid +EXPORT_SYMBOL_GPL vmlinux 0x31c7970f pciserial_suspend_ports +EXPORT_SYMBOL_GPL vmlinux 0x31dca4d8 gnttab_claim_grant_reference +EXPORT_SYMBOL_GPL vmlinux 0x31eec36a ima_file_check +EXPORT_SYMBOL_GPL vmlinux 0x31fc0b56 nd_blk_region_set_provider_data +EXPORT_SYMBOL_GPL vmlinux 0x32075377 inet_csk_compat_setsockopt +EXPORT_SYMBOL_GPL vmlinux 0x3208b51e skb_partial_csum_set +EXPORT_SYMBOL_GPL vmlinux 0x32160d3c gpiod_set_consumer_name +EXPORT_SYMBOL_GPL vmlinux 0x3217f830 mdiobus_modify +EXPORT_SYMBOL_GPL vmlinux 0x321deb6c ncsi_stop_dev +EXPORT_SYMBOL_GPL vmlinux 0x3221ab52 fib_rules_register +EXPORT_SYMBOL_GPL vmlinux 0x3224b2a9 mpi_read_raw_from_sgl +EXPORT_SYMBOL_GPL vmlinux 0x3226f518 crypto_unregister_template +EXPORT_SYMBOL_GPL vmlinux 0x322dfcd8 fb_deferred_io_open +EXPORT_SYMBOL_GPL vmlinux 0x322dfde0 devm_of_phy_provider_unregister +EXPORT_SYMBOL_GPL vmlinux 0x324afade pwm_get +EXPORT_SYMBOL_GPL vmlinux 0x3259364d devlink_dpipe_entry_ctx_prepare +EXPORT_SYMBOL_GPL vmlinux 0x32628773 __kernel_write +EXPORT_SYMBOL_GPL vmlinux 0x326cefe5 hwpoison_filter_dev_minor +EXPORT_SYMBOL_GPL vmlinux 0x3273b07c pinctrl_pm_select_default_state +EXPORT_SYMBOL_GPL vmlinux 0x327a2687 bind_evtchn_to_irq_lateeoi +EXPORT_SYMBOL_GPL vmlinux 0x327c77c1 __clk_mux_determine_rate +EXPORT_SYMBOL_GPL vmlinux 0x328e3354 __memcpy_flushcache +EXPORT_SYMBOL_GPL vmlinux 0x3294cc56 fwnode_gpiod_get_index +EXPORT_SYMBOL_GPL vmlinux 0x329e88e3 get_kernel_pages +EXPORT_SYMBOL_GPL vmlinux 0x329feb7c __fscrypt_prepare_link +EXPORT_SYMBOL_GPL vmlinux 0x32ab06cc irq_percpu_is_enabled +EXPORT_SYMBOL_GPL vmlinux 0x32ad38ca pci_dev_run_wake +EXPORT_SYMBOL_GPL vmlinux 0x32bc0fcf preempt_notifier_dec +EXPORT_SYMBOL_GPL vmlinux 0x32c2bb04 list_lru_walk_node +EXPORT_SYMBOL_GPL vmlinux 0x32c3921c ip6_update_pmtu +EXPORT_SYMBOL_GPL vmlinux 0x32c3cb4e class_compat_register +EXPORT_SYMBOL_GPL vmlinux 0x32c6c604 __tracepoint_attach_device_to_domain +EXPORT_SYMBOL_GPL vmlinux 0x32c75a48 sysfs_create_groups +EXPORT_SYMBOL_GPL vmlinux 0x32d663ef rio_request_inb_pwrite +EXPORT_SYMBOL_GPL vmlinux 0x32e3b076 mxcsr_feature_mask +EXPORT_SYMBOL_GPL vmlinux 0x32ed9110 i2c_bus_type +EXPORT_SYMBOL_GPL vmlinux 0x32eeea1e kick_process +EXPORT_SYMBOL_GPL vmlinux 0x32f2fe60 iommu_detach_group +EXPORT_SYMBOL_GPL vmlinux 0x32f47f03 pm_generic_poweroff +EXPORT_SYMBOL_GPL vmlinux 0x330010b6 cpuset_cgrp_subsys_enabled_key +EXPORT_SYMBOL_GPL vmlinux 0x33083cd6 dma_run_dependencies +EXPORT_SYMBOL_GPL vmlinux 0x33091e27 ata_std_error_handler +EXPORT_SYMBOL_GPL vmlinux 0x33373b7c usb_disable_ltm +EXPORT_SYMBOL_GPL vmlinux 0x333a839b __devm_intel_scu_ipc_register +EXPORT_SYMBOL_GPL vmlinux 0x335c570f enable_percpu_irq +EXPORT_SYMBOL_GPL vmlinux 0x3362b03c xen_p2m_size +EXPORT_SYMBOL_GPL vmlinux 0x33655159 xen_pcpu_hotplug_sync +EXPORT_SYMBOL_GPL vmlinux 0x336e09a1 pci_epc_mem_init +EXPORT_SYMBOL_GPL vmlinux 0x3380f2ee spi_mem_driver_register_with_owner +EXPORT_SYMBOL_GPL vmlinux 0x338b6548 relay_file_operations +EXPORT_SYMBOL_GPL vmlinux 0x338da41c hwspin_lock_unregister +EXPORT_SYMBOL_GPL vmlinux 0x339bf2b5 power_supply_set_battery_charged +EXPORT_SYMBOL_GPL vmlinux 0x33a34de4 exportfs_decode_fh +EXPORT_SYMBOL_GPL vmlinux 0x33b8a0c3 acpi_dma_request_slave_chan_by_index +EXPORT_SYMBOL_GPL vmlinux 0x33beedcd class_compat_create_link +EXPORT_SYMBOL_GPL vmlinux 0x33c5769d usb_remove_hcd +EXPORT_SYMBOL_GPL vmlinux 0x33d5138e blk_mq_freeze_queue_wait +EXPORT_SYMBOL_GPL vmlinux 0x33e2eaf4 spi_replace_transfers +EXPORT_SYMBOL_GPL vmlinux 0x33fb4bc3 irq_get_irq_data +EXPORT_SYMBOL_GPL vmlinux 0x33fbf318 vfs_lock_file +EXPORT_SYMBOL_GPL vmlinux 0x340c09ff regulator_set_voltage_time +EXPORT_SYMBOL_GPL vmlinux 0x34202e4e fuse_dev_alloc_install +EXPORT_SYMBOL_GPL vmlinux 0x3421ca7c __tracepoint_neigh_event_send_dead +EXPORT_SYMBOL_GPL vmlinux 0x342a0b21 hwspin_lock_free +EXPORT_SYMBOL_GPL vmlinux 0x34331f04 acpi_os_unmap_memory +EXPORT_SYMBOL_GPL vmlinux 0x343a2c59 iommu_page_response +EXPORT_SYMBOL_GPL vmlinux 0x34407691 crypto_has_ahash +EXPORT_SYMBOL_GPL vmlinux 0x3446a5a2 blkg_rwstat_recursive_sum +EXPORT_SYMBOL_GPL vmlinux 0x346de6ae devm_extcon_dev_free +EXPORT_SYMBOL_GPL vmlinux 0x346f88d8 sysfs_notify +EXPORT_SYMBOL_GPL vmlinux 0x3479b0c9 usb_hcd_amd_remote_wakeup_quirk +EXPORT_SYMBOL_GPL vmlinux 0x34892788 fat_update_time +EXPORT_SYMBOL_GPL vmlinux 0x34bab869 look_up_OID +EXPORT_SYMBOL_GPL vmlinux 0x34d3e9e3 iptunnel_xmit +EXPORT_SYMBOL_GPL vmlinux 0x34d9f964 rio_del_mport_pw_handler +EXPORT_SYMBOL_GPL vmlinux 0x34dbf21a __fat_fs_error +EXPORT_SYMBOL_GPL vmlinux 0x34e01cb8 tpm_chip_start +EXPORT_SYMBOL_GPL vmlinux 0x34eab46d bind_evtchn_to_irqhandler +EXPORT_SYMBOL_GPL vmlinux 0x35066e98 virtqueue_notify +EXPORT_SYMBOL_GPL vmlinux 0x350bbf61 ata_sff_irq_on +EXPORT_SYMBOL_GPL vmlinux 0x350defc2 led_trigger_blink_oneshot +EXPORT_SYMBOL_GPL vmlinux 0x35128e22 bus_sort_breadthfirst +EXPORT_SYMBOL_GPL vmlinux 0x3525aa2f inet6_lookup +EXPORT_SYMBOL_GPL vmlinux 0x352b3813 maxim_charger_calc_reg_current +EXPORT_SYMBOL_GPL vmlinux 0x352cd173 dev_attr_ncq_prio_enable +EXPORT_SYMBOL_GPL vmlinux 0x352ec68b bpf_offload_dev_destroy +EXPORT_SYMBOL_GPL vmlinux 0x353a6022 crypto_ahash_finup +EXPORT_SYMBOL_GPL vmlinux 0x35586953 dev_pm_qos_expose_flags +EXPORT_SYMBOL_GPL vmlinux 0x355bc89a klist_next +EXPORT_SYMBOL_GPL vmlinux 0x35631094 power_supply_register_no_ws +EXPORT_SYMBOL_GPL vmlinux 0x35639c30 ethnl_cable_test_amplitude +EXPORT_SYMBOL_GPL vmlinux 0x3567743b vfio_external_user_iommu_id +EXPORT_SYMBOL_GPL vmlinux 0x3571dd4e pinctrl_dev_get_devname +EXPORT_SYMBOL_GPL vmlinux 0x3580bf3a cpufreq_freq_transition_begin +EXPORT_SYMBOL_GPL vmlinux 0x358ff60f twl_get_hfclk_rate +EXPORT_SYMBOL_GPL vmlinux 0x35935ba2 find_vpid +EXPORT_SYMBOL_GPL vmlinux 0x359c1e21 gpiochip_line_is_open_source +EXPORT_SYMBOL_GPL vmlinux 0x359c5bf6 pci_epc_set_msix +EXPORT_SYMBOL_GPL vmlinux 0x35cc7841 ata_host_put +EXPORT_SYMBOL_GPL vmlinux 0x35cd5d09 unix_peer_get +EXPORT_SYMBOL_GPL vmlinux 0x35cfacbd metadata_dst_alloc_percpu +EXPORT_SYMBOL_GPL vmlinux 0x35d3dc46 crypto_alg_sem +EXPORT_SYMBOL_GPL vmlinux 0x35d47f6c __blkdev_driver_ioctl +EXPORT_SYMBOL_GPL vmlinux 0x36075bb5 iommu_group_register_notifier +EXPORT_SYMBOL_GPL vmlinux 0x360f2cd7 serdev_device_set_baudrate +EXPORT_SYMBOL_GPL vmlinux 0x36162f7c register_virtio_driver +EXPORT_SYMBOL_GPL vmlinux 0x36173c1d phys_to_target_node +EXPORT_SYMBOL_GPL vmlinux 0x36242943 switchdev_deferred_process +EXPORT_SYMBOL_GPL vmlinux 0x362557bb pinctrl_force_default +EXPORT_SYMBOL_GPL vmlinux 0x36347fdb sfp_bus_add_upstream +EXPORT_SYMBOL_GPL vmlinux 0x363fa02d xenbus_probe_devices +EXPORT_SYMBOL_GPL vmlinux 0x36562483 pci_generic_config_write32 +EXPORT_SYMBOL_GPL vmlinux 0x3665c3ca security_path_truncate +EXPORT_SYMBOL_GPL vmlinux 0x368e9051 thermal_remove_hwmon_sysfs +EXPORT_SYMBOL_GPL vmlinux 0x369fcd70 tracing_snapshot +EXPORT_SYMBOL_GPL vmlinux 0x36b50996 acomp_request_alloc +EXPORT_SYMBOL_GPL vmlinux 0x36b5497e intel_iommu_enabled +EXPORT_SYMBOL_GPL vmlinux 0x36b6c65a bus_unregister_notifier +EXPORT_SYMBOL_GPL vmlinux 0x36b74d2f gnttab_pages_clear_private +EXPORT_SYMBOL_GPL vmlinux 0x36ce8cb9 irq_domain_push_irq +EXPORT_SYMBOL_GPL vmlinux 0x36cf39e1 cpufreq_freq_transition_end +EXPORT_SYMBOL_GPL vmlinux 0x36df170f ata_port_wait_eh +EXPORT_SYMBOL_GPL vmlinux 0x36e065b9 tty_port_install +EXPORT_SYMBOL_GPL vmlinux 0x36ec22df phy_check_downshift +EXPORT_SYMBOL_GPL vmlinux 0x36f832b7 disk_part_iter_init +EXPORT_SYMBOL_GPL vmlinux 0x37098006 bpf_trace_run9 +EXPORT_SYMBOL_GPL vmlinux 0x37159a7b dev_pm_qos_flags +EXPORT_SYMBOL_GPL vmlinux 0x37169f79 cpu_latency_qos_update_request +EXPORT_SYMBOL_GPL vmlinux 0x371e87b5 sched_trace_rq_cpu +EXPORT_SYMBOL_GPL vmlinux 0x3721710d regulator_unregister_supply_alias +EXPORT_SYMBOL_GPL vmlinux 0x372cfd6e gnttab_end_foreign_access +EXPORT_SYMBOL_GPL vmlinux 0x3742b8b0 debugfs_create_atomic_t +EXPORT_SYMBOL_GPL vmlinux 0x374c53e1 ata_get_cmd_descript +EXPORT_SYMBOL_GPL vmlinux 0x3750d770 erst_read +EXPORT_SYMBOL_GPL vmlinux 0x3756baf3 led_blink_set_oneshot +EXPORT_SYMBOL_GPL vmlinux 0x3759d387 serial8250_rx_dma_flush +EXPORT_SYMBOL_GPL vmlinux 0x37787963 debugfs_create_ulong +EXPORT_SYMBOL_GPL vmlinux 0x377bbcbc pm_suspend_target_state +EXPORT_SYMBOL_GPL vmlinux 0x3784cee7 crypto_unregister_ahashes +EXPORT_SYMBOL_GPL vmlinux 0x378d6436 __netdev_watchdog_up +EXPORT_SYMBOL_GPL vmlinux 0x378dbaa8 device_property_present +EXPORT_SYMBOL_GPL vmlinux 0x37914025 xenbus_write +EXPORT_SYMBOL_GPL vmlinux 0x37936618 devlink_port_params_unregister +EXPORT_SYMBOL_GPL vmlinux 0x37bc3020 rhltable_init +EXPORT_SYMBOL_GPL vmlinux 0x37d150d2 blk_mq_init_queue_data +EXPORT_SYMBOL_GPL vmlinux 0x37d1c139 ata_bmdma_qc_prep +EXPORT_SYMBOL_GPL vmlinux 0x37d947ff driver_create_file +EXPORT_SYMBOL_GPL vmlinux 0x37ea659f add_memory +EXPORT_SYMBOL_GPL vmlinux 0x37eb9dc1 devlink_register +EXPORT_SYMBOL_GPL vmlinux 0x37f1375c usb_alloc_urb +EXPORT_SYMBOL_GPL vmlinux 0x37f292c4 pmc_atom_write +EXPORT_SYMBOL_GPL vmlinux 0x37f2d5a9 __raw_v4_lookup +EXPORT_SYMBOL_GPL vmlinux 0x3801776b __ioread32_copy +EXPORT_SYMBOL_GPL vmlinux 0x3804b9dc ata_sas_port_init +EXPORT_SYMBOL_GPL vmlinux 0x38171b31 pci_msi_create_irq_domain +EXPORT_SYMBOL_GPL vmlinux 0x38172df1 rt_mutex_lock_interruptible +EXPORT_SYMBOL_GPL vmlinux 0x3822b4e6 md_bitmap_load +EXPORT_SYMBOL_GPL vmlinux 0x38374815 clear_selection +EXPORT_SYMBOL_GPL vmlinux 0x3861b80c do_splice_from +EXPORT_SYMBOL_GPL vmlinux 0x3866e217 nvmem_device_write +EXPORT_SYMBOL_GPL vmlinux 0x38722f80 kernel_fpu_end +EXPORT_SYMBOL_GPL vmlinux 0x388e4815 devlink_dpipe_action_put +EXPORT_SYMBOL_GPL vmlinux 0x38900d7f devm_usb_put_phy +EXPORT_SYMBOL_GPL vmlinux 0x389b64a2 static_key_count +EXPORT_SYMBOL_GPL vmlinux 0x38a2768c devfreq_get_devfreq_by_phandle +EXPORT_SYMBOL_GPL vmlinux 0x38aa1397 gpiod_add_lookup_table +EXPORT_SYMBOL_GPL vmlinux 0x38c3ff30 freq_qos_add_notifier +EXPORT_SYMBOL_GPL vmlinux 0x38d76ad5 pm_generic_poweroff_noirq +EXPORT_SYMBOL_GPL vmlinux 0x38d94df9 mnt_want_write +EXPORT_SYMBOL_GPL vmlinux 0x38e5bc5a clk_set_rate_range +EXPORT_SYMBOL_GPL vmlinux 0x38f756bc wm831x_reg_write +EXPORT_SYMBOL_GPL vmlinux 0x38f9c6de nexthop_for_each_fib6_nh +EXPORT_SYMBOL_GPL vmlinux 0x39093502 acpi_subsys_suspend +EXPORT_SYMBOL_GPL vmlinux 0x3915f523 usb_poison_urb +EXPORT_SYMBOL_GPL vmlinux 0x39193bce fwnode_handle_put +EXPORT_SYMBOL_GPL vmlinux 0x393e17c0 devm_memremap_pages +EXPORT_SYMBOL_GPL vmlinux 0x3955a986 ata_sff_dev_classify +EXPORT_SYMBOL_GPL vmlinux 0x395f5e1c srcu_batches_completed +EXPORT_SYMBOL_GPL vmlinux 0x396e2fd7 ms_hyperv +EXPORT_SYMBOL_GPL vmlinux 0x396e7a0e serial8250_rpm_put_tx +EXPORT_SYMBOL_GPL vmlinux 0x398b5de5 usb_autopm_put_interface +EXPORT_SYMBOL_GPL vmlinux 0x3994a311 fuse_conn_get +EXPORT_SYMBOL_GPL vmlinux 0x3996f956 wp_shared_mapping_range +EXPORT_SYMBOL_GPL vmlinux 0x39a7affc driver_deferred_probe_timeout +EXPORT_SYMBOL_GPL vmlinux 0x39b10c3e sata_pmp_error_handler +EXPORT_SYMBOL_GPL vmlinux 0x39bd2309 i2c_generic_scl_recovery +EXPORT_SYMBOL_GPL vmlinux 0x39ceae85 devres_remove +EXPORT_SYMBOL_GPL vmlinux 0x39d1466d ata_sff_freeze +EXPORT_SYMBOL_GPL vmlinux 0x39d46e9c iommu_get_domain_for_dev +EXPORT_SYMBOL_GPL vmlinux 0x39ded098 rdma_cgrp_subsys_enabled_key +EXPORT_SYMBOL_GPL vmlinux 0x39e192e7 cm_notify_event +EXPORT_SYMBOL_GPL vmlinux 0x39e55edf skb_gso_validate_mac_len +EXPORT_SYMBOL_GPL vmlinux 0x39e61495 nf_logger_request_module +EXPORT_SYMBOL_GPL vmlinux 0x39ecb8dd device_for_each_child_reverse +EXPORT_SYMBOL_GPL vmlinux 0x39ed7a42 fsnotify_get_group +EXPORT_SYMBOL_GPL vmlinux 0x39f231df ata_dev_disable +EXPORT_SYMBOL_GPL vmlinux 0x3a25b3c2 dw8250_setup_port +EXPORT_SYMBOL_GPL vmlinux 0x3a26ed11 sched_clock +EXPORT_SYMBOL_GPL vmlinux 0x3a2e1b39 dm_report_zones_cb +EXPORT_SYMBOL_GPL vmlinux 0x3a3711a3 skb_gso_validate_network_len +EXPORT_SYMBOL_GPL vmlinux 0x3a4142bc node_to_amd_nb +EXPORT_SYMBOL_GPL vmlinux 0x3a4a7fd8 vfio_del_group_dev +EXPORT_SYMBOL_GPL vmlinux 0x3a4f6a32 ata_sff_interrupt +EXPORT_SYMBOL_GPL vmlinux 0x3a534229 clk_hw_get_parent +EXPORT_SYMBOL_GPL vmlinux 0x3a536bd7 ring_buffer_read_finish +EXPORT_SYMBOL_GPL vmlinux 0x3a55981a static_key_enable_cpuslocked +EXPORT_SYMBOL_GPL vmlinux 0x3a5c1e9a devlink_dpipe_entry_ctx_close +EXPORT_SYMBOL_GPL vmlinux 0x3a609e90 elv_unregister +EXPORT_SYMBOL_GPL vmlinux 0x3a7d80f9 xen_max_p2m_pfn +EXPORT_SYMBOL_GPL vmlinux 0x3a81bb0a usb_put_intf +EXPORT_SYMBOL_GPL vmlinux 0x3a8bbb8e trace_clock_jiffies +EXPORT_SYMBOL_GPL vmlinux 0x3a9281e2 mmc_send_status +EXPORT_SYMBOL_GPL vmlinux 0x3a9be019 asymmetric_key_id_partial +EXPORT_SYMBOL_GPL vmlinux 0x3ab67c95 pm_generic_thaw_early +EXPORT_SYMBOL_GPL vmlinux 0x3acce024 devm_phy_create +EXPORT_SYMBOL_GPL vmlinux 0x3acdf325 twl4030_audio_enable_resource +EXPORT_SYMBOL_GPL vmlinux 0x3ad06d42 devm_platform_get_and_ioremap_resource +EXPORT_SYMBOL_GPL vmlinux 0x3add0f61 regmap_async_complete_cb +EXPORT_SYMBOL_GPL vmlinux 0x3af578f5 hyperv_report_panic +EXPORT_SYMBOL_GPL vmlinux 0x3b170187 devm_clk_register +EXPORT_SYMBOL_GPL vmlinux 0x3b1fad60 cpufreq_dbs_governor_stop +EXPORT_SYMBOL_GPL vmlinux 0x3b205b73 vfio_virqfd_enable +EXPORT_SYMBOL_GPL vmlinux 0x3b20b7cc skb_morph +EXPORT_SYMBOL_GPL vmlinux 0x3b21330a wakeup_source_remove +EXPORT_SYMBOL_GPL vmlinux 0x3b2c1467 irqchip_fwnode_ops +EXPORT_SYMBOL_GPL vmlinux 0x3b34b148 ata_sff_wait_after_reset +EXPORT_SYMBOL_GPL vmlinux 0x3b3aa69d phy_configure +EXPORT_SYMBOL_GPL vmlinux 0x3b4c240a display_timings_release +EXPORT_SYMBOL_GPL vmlinux 0x3b7d9a0e __vring_new_virtqueue +EXPORT_SYMBOL_GPL vmlinux 0x3b82432f driver_for_each_device +EXPORT_SYMBOL_GPL vmlinux 0x3b86a1e0 dma_buf_end_cpu_access +EXPORT_SYMBOL_GPL vmlinux 0x3b8979ea gnttab_grant_foreign_transfer_ref +EXPORT_SYMBOL_GPL vmlinux 0x3b91db5b intel_pt_handle_vmx +EXPORT_SYMBOL_GPL vmlinux 0x3b95f543 klp_shadow_free +EXPORT_SYMBOL_GPL vmlinux 0x3ba01b47 get_compat_sigset +EXPORT_SYMBOL_GPL vmlinux 0x3bb7282e __of_reset_control_get +EXPORT_SYMBOL_GPL vmlinux 0x3bc05fd1 wm8350_reg_read +EXPORT_SYMBOL_GPL vmlinux 0x3bd5c9b1 usb_deregister +EXPORT_SYMBOL_GPL vmlinux 0x3bd6aef8 irq_chip_release_resources_parent +EXPORT_SYMBOL_GPL vmlinux 0x3bd9a4fe __pm_runtime_use_autosuspend +EXPORT_SYMBOL_GPL vmlinux 0x3bdb5d28 alg_test +EXPORT_SYMBOL_GPL vmlinux 0x3bf17755 mpi_read_buffer +EXPORT_SYMBOL_GPL vmlinux 0x3c053c00 inode_dax +EXPORT_SYMBOL_GPL vmlinux 0x3c0e8050 hyperv_pcpu_input_arg +EXPORT_SYMBOL_GPL vmlinux 0x3c13674f fixed_phy_set_link_update +EXPORT_SYMBOL_GPL vmlinux 0x3c1c3725 rcu_fwd_progress_check +EXPORT_SYMBOL_GPL vmlinux 0x3c20bbed shash_ahash_digest +EXPORT_SYMBOL_GPL vmlinux 0x3c20de4a dev_pm_qos_add_request +EXPORT_SYMBOL_GPL vmlinux 0x3c212744 sbitmap_del_wait_queue +EXPORT_SYMBOL_GPL vmlinux 0x3c34808c rtnl_link_unregister +EXPORT_SYMBOL_GPL vmlinux 0x3c3dedc6 aead_exit_geniv +EXPORT_SYMBOL_GPL vmlinux 0x3c579474 __lock_page_killable +EXPORT_SYMBOL_GPL vmlinux 0x3c5b7194 inet_csk_route_child_sock +EXPORT_SYMBOL_GPL vmlinux 0x3c6660b0 crypto_register_akcipher +EXPORT_SYMBOL_GPL vmlinux 0x3c681dc4 ring_buffer_record_disable +EXPORT_SYMBOL_GPL vmlinux 0x3c71c6a3 gpiod_to_irq +EXPORT_SYMBOL_GPL vmlinux 0x3c7c95c1 dax_attribute_group +EXPORT_SYMBOL_GPL vmlinux 0x3ca494b8 fscrypt_ioctl_get_policy_ex +EXPORT_SYMBOL_GPL vmlinux 0x3cb65afc spi_finalize_current_transfer +EXPORT_SYMBOL_GPL vmlinux 0x3cc0330b virtqueue_add_sgs +EXPORT_SYMBOL_GPL vmlinux 0x3cd06035 add_input_randomness +EXPORT_SYMBOL_GPL vmlinux 0x3ce35a73 dev_pm_opp_get_voltage +EXPORT_SYMBOL_GPL vmlinux 0x3ce7706e usb_sg_init +EXPORT_SYMBOL_GPL vmlinux 0x3d18f426 fat_flush_inodes +EXPORT_SYMBOL_GPL vmlinux 0x3d388324 dpm_resume_end +EXPORT_SYMBOL_GPL vmlinux 0x3d46a990 devlink_reload_disable +EXPORT_SYMBOL_GPL vmlinux 0x3d47bc12 addrconf_add_linklocal +EXPORT_SYMBOL_GPL vmlinux 0x3d510a7b rcu_jiffies_till_stall_check +EXPORT_SYMBOL_GPL vmlinux 0x3d5c1a25 regulator_bulk_force_disable +EXPORT_SYMBOL_GPL vmlinux 0x3d6a4c95 phy_restart_aneg +EXPORT_SYMBOL_GPL vmlinux 0x3d6edea1 ata_std_postreset +EXPORT_SYMBOL_GPL vmlinux 0x3d8baf3b zs_huge_class_size +EXPORT_SYMBOL_GPL vmlinux 0x3d8d52db iomap_seek_data +EXPORT_SYMBOL_GPL vmlinux 0x3d95d16e da9052_disable_irq +EXPORT_SYMBOL_GPL vmlinux 0x3daf2575 tcp_done +EXPORT_SYMBOL_GPL vmlinux 0x3db40f2b ata_eh_freeze_port +EXPORT_SYMBOL_GPL vmlinux 0x3db71565 ata_scsi_change_queue_depth +EXPORT_SYMBOL_GPL vmlinux 0x3dbc1995 find_symbol +EXPORT_SYMBOL_GPL vmlinux 0x3dc2395e class_destroy +EXPORT_SYMBOL_GPL vmlinux 0x3dc97b9f ata_link_abort +EXPORT_SYMBOL_GPL vmlinux 0x3dca3e67 fwnode_graph_get_remote_port +EXPORT_SYMBOL_GPL vmlinux 0x3dca63fa generic_online_page +EXPORT_SYMBOL_GPL vmlinux 0x3dd53813 da903x_reads +EXPORT_SYMBOL_GPL vmlinux 0x3de3d94a rio_get_comptag +EXPORT_SYMBOL_GPL vmlinux 0x3de9cae1 crypto_remove_final +EXPORT_SYMBOL_GPL vmlinux 0x3decbc8c pwm_apply_state +EXPORT_SYMBOL_GPL vmlinux 0x3df82d00 mce_log +EXPORT_SYMBOL_GPL vmlinux 0x3e22b8f3 da903x_unregister_notifier +EXPORT_SYMBOL_GPL vmlinux 0x3e2538e3 aead_register_instance +EXPORT_SYMBOL_GPL vmlinux 0x3e5e7fe8 restore_online_page_callback +EXPORT_SYMBOL_GPL vmlinux 0x3e7080cb mpi_read_from_buffer +EXPORT_SYMBOL_GPL vmlinux 0x3e758fbe nvmem_device_find +EXPORT_SYMBOL_GPL vmlinux 0x3e85c3b3 agp_remove_bridge +EXPORT_SYMBOL_GPL vmlinux 0x3ea5196d apei_osc_setup +EXPORT_SYMBOL_GPL vmlinux 0x3ea65fa8 acpi_dev_gpio_irq_get +EXPORT_SYMBOL_GPL vmlinux 0x3ea84b56 debugfs_create_x32 +EXPORT_SYMBOL_GPL vmlinux 0x3ebc8e83 ata_host_activate +EXPORT_SYMBOL_GPL vmlinux 0x3ec0419d get_kernel_page +EXPORT_SYMBOL_GPL vmlinux 0x3ec69404 devm_thermal_of_cooling_device_register +EXPORT_SYMBOL_GPL vmlinux 0x3ed96173 kset_find_obj +EXPORT_SYMBOL_GPL vmlinux 0x3eee59d6 pci_create_slot +EXPORT_SYMBOL_GPL vmlinux 0x3eef1fda pci_walk_bus +EXPORT_SYMBOL_GPL vmlinux 0x3ef051c8 crypto_inc +EXPORT_SYMBOL_GPL vmlinux 0x3efbcf77 key_set_timeout +EXPORT_SYMBOL_GPL vmlinux 0x3efd1889 dax_direct_access +EXPORT_SYMBOL_GPL vmlinux 0x3f0151a3 usb_acpi_power_manageable +EXPORT_SYMBOL_GPL vmlinux 0x3f0bb26f adp5520_read +EXPORT_SYMBOL_GPL vmlinux 0x3f0f20e9 usb_choose_configuration +EXPORT_SYMBOL_GPL vmlinux 0x3f179b02 cpufreq_unregister_governor +EXPORT_SYMBOL_GPL vmlinux 0x3f2196f8 acpi_dev_resource_address_space +EXPORT_SYMBOL_GPL vmlinux 0x3f267a3a tpm_pm_suspend +EXPORT_SYMBOL_GPL vmlinux 0x3f2f930f xfrm_audit_state_notfound +EXPORT_SYMBOL_GPL vmlinux 0x3f31c9d3 devlink_dpipe_headers_unregister +EXPORT_SYMBOL_GPL vmlinux 0x3f4632cd phy_10gbit_features +EXPORT_SYMBOL_GPL vmlinux 0x3f4b8936 devm_devfreq_event_remove_edev +EXPORT_SYMBOL_GPL vmlinux 0x3f60965a pm_generic_suspend_late +EXPORT_SYMBOL_GPL vmlinux 0x3f84bcd7 dax_alive +EXPORT_SYMBOL_GPL vmlinux 0x3f868fba blk_register_queue +EXPORT_SYMBOL_GPL vmlinux 0x3f8ab72e devlink_fmsg_bool_put +EXPORT_SYMBOL_GPL vmlinux 0x3f945e2c ata_sas_queuecmd +EXPORT_SYMBOL_GPL vmlinux 0x3f954796 xenbus_frontend_closed +EXPORT_SYMBOL_GPL vmlinux 0x3fa1f845 icc_get_name +EXPORT_SYMBOL_GPL vmlinux 0x3fae6ab0 hv_vp_index +EXPORT_SYMBOL_GPL vmlinux 0x3fb218f4 pm_clk_runtime_suspend +EXPORT_SYMBOL_GPL vmlinux 0x3fbf2622 clk_bulk_get_optional +EXPORT_SYMBOL_GPL vmlinux 0x3fc33112 hwmon_device_unregister +EXPORT_SYMBOL_GPL vmlinux 0x3fc6fcd6 clk_hw_round_rate +EXPORT_SYMBOL_GPL vmlinux 0x3fc86722 iommu_domain_window_disable +EXPORT_SYMBOL_GPL vmlinux 0x3fd8f767 blkcg_root +EXPORT_SYMBOL_GPL vmlinux 0x3fda2b36 dma_async_device_channel_unregister +EXPORT_SYMBOL_GPL vmlinux 0x3fe35aea irq_bypass_unregister_consumer +EXPORT_SYMBOL_GPL vmlinux 0x3fe6c346 devlink_fmsg_binary_pair_put +EXPORT_SYMBOL_GPL vmlinux 0x3febd4db key_type_asymmetric +EXPORT_SYMBOL_GPL vmlinux 0x3fefc8af regulator_unlock +EXPORT_SYMBOL_GPL vmlinux 0x3ffb1a83 cgroup_rstat_updated +EXPORT_SYMBOL_GPL vmlinux 0x3ffdacf3 timerqueue_iterate_next +EXPORT_SYMBOL_GPL vmlinux 0x3ffed12c mmu_notifier_get_locked +EXPORT_SYMBOL_GPL vmlinux 0x4004b8f4 usb_clear_halt +EXPORT_SYMBOL_GPL vmlinux 0x400a024b acpi_scan_lock_release +EXPORT_SYMBOL_GPL vmlinux 0x4019ab5d l3mdev_link_scope_lookup +EXPORT_SYMBOL_GPL vmlinux 0x40267068 usb_anchor_resume_wakeups +EXPORT_SYMBOL_GPL vmlinux 0x40368bcb tpm2_flush_context +EXPORT_SYMBOL_GPL vmlinux 0x403f9529 gpio_request_one +EXPORT_SYMBOL_GPL vmlinux 0x40445315 ping_err +EXPORT_SYMBOL_GPL vmlinux 0x40520fba dev_attr_link_power_management_policy +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 0x408af2a3 fwnode_get_next_parent +EXPORT_SYMBOL_GPL vmlinux 0x4099f919 tun_ptr_free +EXPORT_SYMBOL_GPL vmlinux 0x40a0aafc __flush_tlb_all +EXPORT_SYMBOL_GPL vmlinux 0x40b00b70 sysfs_break_active_protection +EXPORT_SYMBOL_GPL vmlinux 0x40b43bd0 sbitmap_add_wait_queue +EXPORT_SYMBOL_GPL vmlinux 0x40b47b16 anon_transport_class_register +EXPORT_SYMBOL_GPL vmlinux 0x40b90433 xenbus_dev_changed +EXPORT_SYMBOL_GPL vmlinux 0x40e605b1 rio_mport_write_config_32 +EXPORT_SYMBOL_GPL vmlinux 0x40ef4faf __crypto_alloc_tfm +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 0x412174c1 fat_fill_super +EXPORT_SYMBOL_GPL vmlinux 0x41223530 platform_get_irq_byname_optional +EXPORT_SYMBOL_GPL vmlinux 0x4129f5ee kernel_fpu_begin_mask +EXPORT_SYMBOL_GPL vmlinux 0x412b99b4 pm_runtime_force_resume +EXPORT_SYMBOL_GPL vmlinux 0x412bc681 ring_buffer_empty_cpu +EXPORT_SYMBOL_GPL vmlinux 0x414d119a videomode_from_timings +EXPORT_SYMBOL_GPL vmlinux 0x417b5148 rtc_set_time +EXPORT_SYMBOL_GPL vmlinux 0x417b929a regulator_set_active_discharge_regmap +EXPORT_SYMBOL_GPL vmlinux 0x41814cb8 dirty_writeback_interval +EXPORT_SYMBOL_GPL vmlinux 0x41837532 ata_noop_qc_prep +EXPORT_SYMBOL_GPL vmlinux 0x418873cc irq_bypass_register_producer +EXPORT_SYMBOL_GPL vmlinux 0x418a4b5f securityfs_create_symlink +EXPORT_SYMBOL_GPL vmlinux 0x418a6770 efivar_entry_remove +EXPORT_SYMBOL_GPL vmlinux 0x419e7efd sfp_module_stop +EXPORT_SYMBOL_GPL vmlinux 0x419f15aa blk_clear_pm_only +EXPORT_SYMBOL_GPL vmlinux 0x41b200f9 percpu_ref_init +EXPORT_SYMBOL_GPL vmlinux 0x41dc03d1 mmc_abort_tuning +EXPORT_SYMBOL_GPL vmlinux 0x41e1885b intel_pmic_install_opregion_handler +EXPORT_SYMBOL_GPL vmlinux 0x41e5c920 class_unregister +EXPORT_SYMBOL_GPL vmlinux 0x41e95c5c extcon_set_state +EXPORT_SYMBOL_GPL vmlinux 0x41ed3cec eventfd_ctx_remove_wait_queue +EXPORT_SYMBOL_GPL vmlinux 0x42041512 i2c_get_dma_safe_msg_buf +EXPORT_SYMBOL_GPL vmlinux 0x420f3d01 nvmem_unregister_notifier +EXPORT_SYMBOL_GPL vmlinux 0x4212be36 fib_nh_common_release +EXPORT_SYMBOL_GPL vmlinux 0x4218b07a get_cpu_device +EXPORT_SYMBOL_GPL vmlinux 0x42214614 __ftrace_vbprintk +EXPORT_SYMBOL_GPL vmlinux 0x42230915 sbitmap_any_bit_set +EXPORT_SYMBOL_GPL vmlinux 0x42281fed hwspin_lock_request_specific +EXPORT_SYMBOL_GPL vmlinux 0x4230657d crypto_register_acomps +EXPORT_SYMBOL_GPL vmlinux 0x423541a3 xen_xlate_remap_gfn_array +EXPORT_SYMBOL_GPL vmlinux 0x423e9484 mmu_notifier_register +EXPORT_SYMBOL_GPL vmlinux 0x42565185 xfrm_local_error +EXPORT_SYMBOL_GPL vmlinux 0x4258e977 noop_invalidatepage +EXPORT_SYMBOL_GPL vmlinux 0x42635d55 pm_suspend_global_flags +EXPORT_SYMBOL_GPL vmlinux 0x427306f4 xhci_resume +EXPORT_SYMBOL_GPL vmlinux 0x42825ce2 rcu_scheduler_active +EXPORT_SYMBOL_GPL vmlinux 0x428321a7 virtqueue_enable_cb_prepare +EXPORT_SYMBOL_GPL vmlinux 0x428b2dcc tpm_chip_alloc +EXPORT_SYMBOL_GPL vmlinux 0x42a50960 devlink_port_param_value_changed +EXPORT_SYMBOL_GPL vmlinux 0x42bd0ca7 spi_mem_default_supports_op +EXPORT_SYMBOL_GPL vmlinux 0x42c23a5d nf_checksum_partial +EXPORT_SYMBOL_GPL vmlinux 0x42d98afa __dax_driver_register +EXPORT_SYMBOL_GPL vmlinux 0x42de241d ata_eh_analyze_ncq_error +EXPORT_SYMBOL_GPL vmlinux 0x42dffac9 bpf_trace_run10 +EXPORT_SYMBOL_GPL vmlinux 0x42e445f6 clk_mux_val_to_index +EXPORT_SYMBOL_GPL vmlinux 0x42e6ff16 sdio_signal_irq +EXPORT_SYMBOL_GPL vmlinux 0x42e9d0da ring_buffer_unlock_commit +EXPORT_SYMBOL_GPL vmlinux 0x42f728aa mctrl_gpio_get_outputs +EXPORT_SYMBOL_GPL vmlinux 0x42fba1c7 __sbitmap_queue_get_shallow +EXPORT_SYMBOL_GPL vmlinux 0x43367722 security_kernel_read_file +EXPORT_SYMBOL_GPL vmlinux 0x433ae21c user_preparse +EXPORT_SYMBOL_GPL vmlinux 0x4345c14e gpio_to_desc +EXPORT_SYMBOL_GPL vmlinux 0x4367d8ae __clk_mux_determine_rate_closest +EXPORT_SYMBOL_GPL vmlinux 0x43779a1e fork_usermode_blob +EXPORT_SYMBOL_GPL vmlinux 0x437d15f1 scsi_dh_set_params +EXPORT_SYMBOL_GPL vmlinux 0x437d5ead spi_busnum_to_master +EXPORT_SYMBOL_GPL vmlinux 0x437eb1df ipv6_mod_enabled +EXPORT_SYMBOL_GPL vmlinux 0x4381416f anon_inode_getfile +EXPORT_SYMBOL_GPL vmlinux 0x4386a4ff dev_fill_metadata_dst +EXPORT_SYMBOL_GPL vmlinux 0x438a00f6 crypto_stats_rng_generate +EXPORT_SYMBOL_GPL vmlinux 0x438d8df2 iova_cache_get +EXPORT_SYMBOL_GPL vmlinux 0x43915aea device_add +EXPORT_SYMBOL_GPL vmlinux 0x43aa319e lease_register_notifier +EXPORT_SYMBOL_GPL vmlinux 0x43ac569e transport_destroy_device +EXPORT_SYMBOL_GPL vmlinux 0x43c08f68 ata_link_next +EXPORT_SYMBOL_GPL vmlinux 0x43d61301 shash_no_setkey +EXPORT_SYMBOL_GPL vmlinux 0x43de4f24 smp_call_function_single_async +EXPORT_SYMBOL_GPL vmlinux 0x43ded081 debugfs_remove +EXPORT_SYMBOL_GPL vmlinux 0x43ee7486 query_asymmetric_key +EXPORT_SYMBOL_GPL vmlinux 0x43f16bbe regmap_multi_reg_write +EXPORT_SYMBOL_GPL vmlinux 0x43f56e82 ata_xfer_mode2shift +EXPORT_SYMBOL_GPL vmlinux 0x43f63e88 sdio_readsb +EXPORT_SYMBOL_GPL vmlinux 0x43f81957 clk_round_rate +EXPORT_SYMBOL_GPL vmlinux 0x43f8717d fscrypt_drop_inode +EXPORT_SYMBOL_GPL vmlinux 0x442d89c5 phy_10gbit_fec_features +EXPORT_SYMBOL_GPL vmlinux 0x44432277 rt_mutex_destroy +EXPORT_SYMBOL_GPL vmlinux 0x4445e8c1 acpi_dev_get_property +EXPORT_SYMBOL_GPL vmlinux 0x444e6f27 devlink_traps_register +EXPORT_SYMBOL_GPL vmlinux 0x445a09c0 nvmem_device_cell_write +EXPORT_SYMBOL_GPL vmlinux 0x44738992 pstore_unregister +EXPORT_SYMBOL_GPL vmlinux 0x4479aa11 hrtimer_sleeper_start_expires +EXPORT_SYMBOL_GPL vmlinux 0x4484a5a4 wait_for_device_probe +EXPORT_SYMBOL_GPL vmlinux 0x4490662f inet_ctl_sock_create +EXPORT_SYMBOL_GPL vmlinux 0x44972050 elv_register +EXPORT_SYMBOL_GPL vmlinux 0x44a43494 tpm_calc_ordinal_duration +EXPORT_SYMBOL_GPL vmlinux 0x44bae227 bit_wait_timeout +EXPORT_SYMBOL_GPL vmlinux 0x44ce812d ata_sff_softreset +EXPORT_SYMBOL_GPL vmlinux 0x44cf8cf0 blk_zone_cond_str +EXPORT_SYMBOL_GPL vmlinux 0x44dcfa5c debugfs_create_dir +EXPORT_SYMBOL_GPL vmlinux 0x44e1e9aa balloon_stats +EXPORT_SYMBOL_GPL vmlinux 0x450110e8 perf_assign_events +EXPORT_SYMBOL_GPL vmlinux 0x45048580 adp5520_clr_bits +EXPORT_SYMBOL_GPL vmlinux 0x4507f4a8 cpuhp_tasks_frozen +EXPORT_SYMBOL_GPL vmlinux 0x4509a4c7 bpf_redirect_info +EXPORT_SYMBOL_GPL vmlinux 0x45130413 icc_get +EXPORT_SYMBOL_GPL vmlinux 0x4516aa57 efivar_entry_iter +EXPORT_SYMBOL_GPL vmlinux 0x451ca4d8 iommu_domain_set_attr +EXPORT_SYMBOL_GPL vmlinux 0x451f3187 bpf_offload_dev_netdev_register +EXPORT_SYMBOL_GPL vmlinux 0x451f4d99 wm831x_regmap_config +EXPORT_SYMBOL_GPL vmlinux 0x4521e51c pci_destroy_slot +EXPORT_SYMBOL_GPL vmlinux 0x45225564 sata_port_ops +EXPORT_SYMBOL_GPL vmlinux 0x4531624f usb_decode_ctrl +EXPORT_SYMBOL_GPL vmlinux 0x4531ab62 copy_from_kernel_nofault +EXPORT_SYMBOL_GPL vmlinux 0x453e5255 ip6_dst_lookup +EXPORT_SYMBOL_GPL vmlinux 0x4541fe0d mtrr_state +EXPORT_SYMBOL_GPL vmlinux 0x45558f56 clk_unregister_fixed_factor +EXPORT_SYMBOL_GPL vmlinux 0x457594fa crypto_alg_list +EXPORT_SYMBOL_GPL vmlinux 0x4575dfd3 scsi_nl_sock +EXPORT_SYMBOL_GPL vmlinux 0x457790a5 device_init_wakeup +EXPORT_SYMBOL_GPL vmlinux 0x457d5f80 nvdimm_blk_region_create +EXPORT_SYMBOL_GPL vmlinux 0x45836259 dm_send_uevents +EXPORT_SYMBOL_GPL vmlinux 0x4596a06c regmap_exit +EXPORT_SYMBOL_GPL vmlinux 0x459b90a0 pci_epc_mem_alloc_addr +EXPORT_SYMBOL_GPL vmlinux 0x45a5d552 devm_clk_hw_unregister +EXPORT_SYMBOL_GPL vmlinux 0x45ad2f7a md_do_sync +EXPORT_SYMBOL_GPL vmlinux 0x45b2b33f irq_create_mapping_affinity +EXPORT_SYMBOL_GPL vmlinux 0x45d14bdf hypercall_page +EXPORT_SYMBOL_GPL vmlinux 0x45d47953 sched_trace_rq_avg_dl +EXPORT_SYMBOL_GPL vmlinux 0x45d7522d usb_amd_pt_check_port +EXPORT_SYMBOL_GPL vmlinux 0x45f624d3 irq_chip_enable_parent +EXPORT_SYMBOL_GPL vmlinux 0x46013233 net_dec_ingress_queue +EXPORT_SYMBOL_GPL vmlinux 0x460dd521 pci_epc_start +EXPORT_SYMBOL_GPL vmlinux 0x463d8290 __irq_alloc_descs +EXPORT_SYMBOL_GPL vmlinux 0x4642a73d gpiod_set_debounce +EXPORT_SYMBOL_GPL vmlinux 0x4653053f device_match_fwnode +EXPORT_SYMBOL_GPL vmlinux 0x466093fb init_iova_flush_queue +EXPORT_SYMBOL_GPL vmlinux 0x466ee0a8 tps6586x_get_version +EXPORT_SYMBOL_GPL vmlinux 0x46753a3a __devm_reset_control_get +EXPORT_SYMBOL_GPL vmlinux 0x46858a50 strp_check_rcv +EXPORT_SYMBOL_GPL vmlinux 0x4688d7ec pvclock_gtod_unregister_notifier +EXPORT_SYMBOL_GPL vmlinux 0x469221c8 split_page +EXPORT_SYMBOL_GPL vmlinux 0x46950654 pci_device_is_present +EXPORT_SYMBOL_GPL vmlinux 0x4696d2e8 mmu_interval_notifier_insert +EXPORT_SYMBOL_GPL vmlinux 0x46a0a60a serdev_device_set_tiocm +EXPORT_SYMBOL_GPL vmlinux 0x46a6c120 acpi_cppc_processor_exit +EXPORT_SYMBOL_GPL vmlinux 0x46a6c9ef hv_get_tsc_page +EXPORT_SYMBOL_GPL vmlinux 0x46a77257 hypervisor_kobj +EXPORT_SYMBOL_GPL vmlinux 0x46a91b21 serial8250_get_port +EXPORT_SYMBOL_GPL vmlinux 0x46b34168 iomap_readahead +EXPORT_SYMBOL_GPL vmlinux 0x46c2d8f1 xfrm_dev_state_add +EXPORT_SYMBOL_GPL vmlinux 0x46c5be22 clk_multiplier_ops +EXPORT_SYMBOL_GPL vmlinux 0x46e47ad3 cpufreq_table_index_unsorted +EXPORT_SYMBOL_GPL vmlinux 0x46ecd12c cpufreq_cpu_get +EXPORT_SYMBOL_GPL vmlinux 0x46ee7102 virtqueue_enable_cb +EXPORT_SYMBOL_GPL vmlinux 0x46f15b19 spi_sync +EXPORT_SYMBOL_GPL vmlinux 0x46f42be0 devlink_fmsg_u8_put +EXPORT_SYMBOL_GPL vmlinux 0x47229b5c gpio_request +EXPORT_SYMBOL_GPL vmlinux 0x472d8896 irq_domain_translate_twocell +EXPORT_SYMBOL_GPL vmlinux 0x473797a0 ata_sff_tf_read +EXPORT_SYMBOL_GPL vmlinux 0x475d7407 gnttab_free_pages +EXPORT_SYMBOL_GPL vmlinux 0x475d7944 of_pwm_get +EXPORT_SYMBOL_GPL vmlinux 0x476167c8 remove_memory +EXPORT_SYMBOL_GPL vmlinux 0x4761f17c register_netevent_notifier +EXPORT_SYMBOL_GPL vmlinux 0x47730a2e device_create_with_groups +EXPORT_SYMBOL_GPL vmlinux 0x47884890 system_power_efficient_wq +EXPORT_SYMBOL_GPL vmlinux 0x479f7d4b clk_bulk_disable +EXPORT_SYMBOL_GPL vmlinux 0x47a89953 __tracepoint_pelt_cfs_tp +EXPORT_SYMBOL_GPL vmlinux 0x47a9413a rtnl_delete_link +EXPORT_SYMBOL_GPL vmlinux 0x47a9b4a2 blk_queue_required_elevator_features +EXPORT_SYMBOL_GPL vmlinux 0x47aad3b9 have_governor_per_policy +EXPORT_SYMBOL_GPL vmlinux 0x47cf9ff7 usb_hcd_end_port_resume +EXPORT_SYMBOL_GPL vmlinux 0x47cfa703 uprobe_register_refctr +EXPORT_SYMBOL_GPL vmlinux 0x47d0eea2 acpi_lpat_temp_to_raw +EXPORT_SYMBOL_GPL vmlinux 0x47de0dc7 clk_unregister_mux +EXPORT_SYMBOL_GPL vmlinux 0x47ea32f9 component_unbind_all +EXPORT_SYMBOL_GPL vmlinux 0x47ef10f2 skb_segment_list +EXPORT_SYMBOL_GPL vmlinux 0x48013925 pinctrl_lookup_state +EXPORT_SYMBOL_GPL vmlinux 0x4818afa5 dev_pm_domain_detach +EXPORT_SYMBOL_GPL vmlinux 0x48277eb8 virtqueue_add_inbuf +EXPORT_SYMBOL_GPL vmlinux 0x4828e77b acpi_scan_lock_acquire +EXPORT_SYMBOL_GPL vmlinux 0x4830249c dm_per_bio_data +EXPORT_SYMBOL_GPL vmlinux 0x4839c4c0 dev_pm_genpd_set_performance_state +EXPORT_SYMBOL_GPL vmlinux 0x4851ef63 register_net_sysctl +EXPORT_SYMBOL_GPL vmlinux 0x485501d1 devm_extcon_dev_unregister +EXPORT_SYMBOL_GPL vmlinux 0x4892443b pci_user_read_config_word +EXPORT_SYMBOL_GPL vmlinux 0x48a3d20b mctrl_gpio_get +EXPORT_SYMBOL_GPL vmlinux 0x48af8530 usb_alloc_dev +EXPORT_SYMBOL_GPL vmlinux 0x48b4d2b0 unregister_pernet_subsys +EXPORT_SYMBOL_GPL vmlinux 0x48b5a9a3 gpiod_direction_output +EXPORT_SYMBOL_GPL vmlinux 0x48f250eb rio_route_clr_table +EXPORT_SYMBOL_GPL vmlinux 0x48f49400 apei_hest_parse +EXPORT_SYMBOL_GPL vmlinux 0x48ff3432 gpiochip_irqchip_irq_valid +EXPORT_SYMBOL_GPL vmlinux 0x4917d60c ethnl_cable_test_pulse +EXPORT_SYMBOL_GPL vmlinux 0x491de634 __serdev_device_driver_register +EXPORT_SYMBOL_GPL vmlinux 0x49242bc7 freezer_cgrp_subsys_on_dfl_key +EXPORT_SYMBOL_GPL vmlinux 0x492b48f0 __pci_hp_initialize +EXPORT_SYMBOL_GPL vmlinux 0x49324074 vfs_fallocate +EXPORT_SYMBOL_GPL vmlinux 0x4934f2ad blk_set_queue_dying +EXPORT_SYMBOL_GPL vmlinux 0x4939ebcd numa_map_to_online_node +EXPORT_SYMBOL_GPL vmlinux 0x493b86ee i2c_dw_adjust_bus_speed +EXPORT_SYMBOL_GPL vmlinux 0x498982ac unregister_acpi_bus_type +EXPORT_SYMBOL_GPL vmlinux 0x498d63e7 ptp_classify_raw +EXPORT_SYMBOL_GPL vmlinux 0x499043d3 crypto_init_queue +EXPORT_SYMBOL_GPL vmlinux 0x49951708 sev_enable_key +EXPORT_SYMBOL_GPL vmlinux 0x49b7076e rt_mutex_timed_lock +EXPORT_SYMBOL_GPL vmlinux 0x49bfca23 handle_untracked_irq +EXPORT_SYMBOL_GPL vmlinux 0x49c14a61 ex_handler_fault +EXPORT_SYMBOL_GPL vmlinux 0x49c1d35a serial8250_init_port +EXPORT_SYMBOL_GPL vmlinux 0x49c5400d kobj_sysfs_ops +EXPORT_SYMBOL_GPL vmlinux 0x49c5b493 trace_get_event_file +EXPORT_SYMBOL_GPL vmlinux 0x49d89893 ata_sff_busy_sleep +EXPORT_SYMBOL_GPL vmlinux 0x49da8988 adp5520_unregister_notifier +EXPORT_SYMBOL_GPL vmlinux 0x49db5c64 __tracepoint_neigh_event_send_done +EXPORT_SYMBOL_GPL vmlinux 0x49e96999 cond_synchronize_rcu +EXPORT_SYMBOL_GPL vmlinux 0x49f2281d device_rename +EXPORT_SYMBOL_GPL vmlinux 0x49f6f375 store_sampling_rate +EXPORT_SYMBOL_GPL vmlinux 0x49fc3e20 ima_file_hash +EXPORT_SYMBOL_GPL vmlinux 0x4a174b4e sock_zerocopy_alloc +EXPORT_SYMBOL_GPL vmlinux 0x4a17ed66 sysrq_mask +EXPORT_SYMBOL_GPL vmlinux 0x4a3a8fab blk_queue_can_use_dma_map_merging +EXPORT_SYMBOL_GPL vmlinux 0x4a3eab42 ip6_dst_lookup_flow +EXPORT_SYMBOL_GPL vmlinux 0x4a420d09 acpi_bus_detach_private_data +EXPORT_SYMBOL_GPL vmlinux 0x4a533e4e skb_segment +EXPORT_SYMBOL_GPL vmlinux 0x4a864f0b rcuwait_wake_up +EXPORT_SYMBOL_GPL vmlinux 0x4aa349cb kvm_clock +EXPORT_SYMBOL_GPL vmlinux 0x4aa58bea inet_getpeer +EXPORT_SYMBOL_GPL vmlinux 0x4aa72a31 gpiod_to_chip +EXPORT_SYMBOL_GPL vmlinux 0x4ac61f20 edac_pci_create_generic_ctl +EXPORT_SYMBOL_GPL vmlinux 0x4af64f5a sdio_memcpy_fromio +EXPORT_SYMBOL_GPL vmlinux 0x4b084aac usb_interrupt_msg +EXPORT_SYMBOL_GPL vmlinux 0x4b0de2b9 blk_queue_rq_timeout +EXPORT_SYMBOL_GPL vmlinux 0x4b141619 add_page_wait_queue +EXPORT_SYMBOL_GPL vmlinux 0x4b248540 scsi_schedule_eh +EXPORT_SYMBOL_GPL vmlinux 0x4b270171 dev_get_regmap +EXPORT_SYMBOL_GPL vmlinux 0x4b4840c6 ata_scsi_port_error_handler +EXPORT_SYMBOL_GPL vmlinux 0x4b4e7ed4 switchdev_handle_port_obj_del +EXPORT_SYMBOL_GPL vmlinux 0x4b508e79 usb_init_urb +EXPORT_SYMBOL_GPL vmlinux 0x4b51f74c ata_xfer_mode2mask +EXPORT_SYMBOL_GPL vmlinux 0x4b532046 call_switchdev_blocking_notifiers +EXPORT_SYMBOL_GPL vmlinux 0x4b56ce05 xenmem_reservation_increase +EXPORT_SYMBOL_GPL vmlinux 0x4b5a8ec8 pwm_set_chip_data +EXPORT_SYMBOL_GPL vmlinux 0x4b762828 start_thread +EXPORT_SYMBOL_GPL vmlinux 0x4b8aa5f2 sock_diag_destroy +EXPORT_SYMBOL_GPL vmlinux 0x4b931968 xen_features +EXPORT_SYMBOL_GPL vmlinux 0x4bb694af ip6_append_data +EXPORT_SYMBOL_GPL vmlinux 0x4bc8727f xen_balloon_init +EXPORT_SYMBOL_GPL vmlinux 0x4bd9f60a l3mdev_fib_table_rcu +EXPORT_SYMBOL_GPL vmlinux 0x4bdd1a86 nd_cmd_out_size +EXPORT_SYMBOL_GPL vmlinux 0x4bf12e24 mmc_regulator_set_ocr +EXPORT_SYMBOL_GPL vmlinux 0x4bf287f0 spi_mem_adjust_op_size +EXPORT_SYMBOL_GPL vmlinux 0x4bf2a502 mnt_want_write_file +EXPORT_SYMBOL_GPL vmlinux 0x4c2c0ea7 evtchn_make_refcounted +EXPORT_SYMBOL_GPL vmlinux 0x4c353aeb regulator_set_suspend_voltage +EXPORT_SYMBOL_GPL vmlinux 0x4c38607a pci_create_root_bus +EXPORT_SYMBOL_GPL vmlinux 0x4c3de7e6 acpi_pm_wakeup_event +EXPORT_SYMBOL_GPL vmlinux 0x4c525ecb fuse_dev_fiq_ops +EXPORT_SYMBOL_GPL vmlinux 0x4c56e647 xenbus_dev_error +EXPORT_SYMBOL_GPL vmlinux 0x4c6a6fff powercap_register_control_type +EXPORT_SYMBOL_GPL vmlinux 0x4c762b5c x86_stepping +EXPORT_SYMBOL_GPL vmlinux 0x4c7931a2 pci_d3cold_enable +EXPORT_SYMBOL_GPL vmlinux 0x4c93bdeb blk_mq_debugfs_rq_show +EXPORT_SYMBOL_GPL vmlinux 0x4c97dcff devm_phy_optional_get +EXPORT_SYMBOL_GPL vmlinux 0x4cc2dda3 icc_provider_del +EXPORT_SYMBOL_GPL vmlinux 0x4cd8fe02 unregister_trace_event +EXPORT_SYMBOL_GPL vmlinux 0x4ce0bdee fixed_phy_register_with_gpiod +EXPORT_SYMBOL_GPL vmlinux 0x4d0015e2 cpu_hotplug_disable +EXPORT_SYMBOL_GPL vmlinux 0x4d0b7994 xfrm_state_mtu +EXPORT_SYMBOL_GPL vmlinux 0x4d0b8fb6 clean_acked_data_disable +EXPORT_SYMBOL_GPL vmlinux 0x4d1215e5 net_ns_get_ownership +EXPORT_SYMBOL_GPL vmlinux 0x4d16d490 mmc_get_ext_csd +EXPORT_SYMBOL_GPL vmlinux 0x4d1eb58c pci_device_group +EXPORT_SYMBOL_GPL vmlinux 0x4d202b8c __xas_prev +EXPORT_SYMBOL_GPL vmlinux 0x4d272860 tty_kclose +EXPORT_SYMBOL_GPL vmlinux 0x4d2a8ee2 tcp_get_syncookie_mss +EXPORT_SYMBOL_GPL vmlinux 0x4d3b33be regulator_map_voltage_pickable_linear_range +EXPORT_SYMBOL_GPL vmlinux 0x4d4d7b79 blk_mq_map_queues +EXPORT_SYMBOL_GPL vmlinux 0x4d524206 scsi_queue_work +EXPORT_SYMBOL_GPL vmlinux 0x4d64ca58 spi_split_transfers_maxsize +EXPORT_SYMBOL_GPL vmlinux 0x4d6d0bbc iommu_group_ref_get +EXPORT_SYMBOL_GPL vmlinux 0x4d896846 devm_serdev_device_open +EXPORT_SYMBOL_GPL vmlinux 0x4d8a96ab xas_set_mark +EXPORT_SYMBOL_GPL vmlinux 0x4d9d267a phy_destroy +EXPORT_SYMBOL_GPL vmlinux 0x4da1f4a7 list_lru_del +EXPORT_SYMBOL_GPL vmlinux 0x4dae16e4 i2c_put_dma_safe_msg_buf +EXPORT_SYMBOL_GPL vmlinux 0x4dbb22fa usb_enable_ltm +EXPORT_SYMBOL_GPL vmlinux 0x4dcef0b2 usb_for_each_dev +EXPORT_SYMBOL_GPL vmlinux 0x4dcfba1e devlink_port_unregister +EXPORT_SYMBOL_GPL vmlinux 0x4dd632bb tcp_reno_ssthresh +EXPORT_SYMBOL_GPL vmlinux 0x4dd9d14d cn_netlink_send_mult +EXPORT_SYMBOL_GPL vmlinux 0x4ddcdd73 inet_csk_get_port +EXPORT_SYMBOL_GPL vmlinux 0x4de17ab3 usb_state_string +EXPORT_SYMBOL_GPL vmlinux 0x4df98042 nexthop_select_path +EXPORT_SYMBOL_GPL vmlinux 0x4e0adf0c edac_device_del_device +EXPORT_SYMBOL_GPL vmlinux 0x4e11708b update_time +EXPORT_SYMBOL_GPL vmlinux 0x4e17c613 ata_sff_queue_delayed_work +EXPORT_SYMBOL_GPL vmlinux 0x4e3c98b1 crypto_lookup_template +EXPORT_SYMBOL_GPL vmlinux 0x4e49d23c __inet_lookup_established +EXPORT_SYMBOL_GPL vmlinux 0x4e4c37e2 freq_qos_remove_notifier +EXPORT_SYMBOL_GPL vmlinux 0x4e83d079 usb_submit_urb +EXPORT_SYMBOL_GPL vmlinux 0x4e8c6381 __hwspin_lock_timeout +EXPORT_SYMBOL_GPL vmlinux 0x4e97a903 rcu_read_unlock_trace_special +EXPORT_SYMBOL_GPL vmlinux 0x4e9b6f39 ip6_datagram_connect_v6_only +EXPORT_SYMBOL_GPL vmlinux 0x4e9d0b8d dma_buf_move_notify +EXPORT_SYMBOL_GPL vmlinux 0x4eac5fc1 cpu_mitigations_auto_nosmt +EXPORT_SYMBOL_GPL vmlinux 0x4ec39213 set_foreign_p2m_mapping +EXPORT_SYMBOL_GPL vmlinux 0x4ece3615 blocking_notifier_chain_unregister +EXPORT_SYMBOL_GPL vmlinux 0x4ed3dbf7 iomap_writepages +EXPORT_SYMBOL_GPL vmlinux 0x4ef5bcf4 perf_swevent_get_recursion_context +EXPORT_SYMBOL_GPL vmlinux 0x4ef74a42 regulator_enable_regmap +EXPORT_SYMBOL_GPL vmlinux 0x4f1e6570 wm831x_bulk_read +EXPORT_SYMBOL_GPL vmlinux 0x4f2593f0 btree_update +EXPORT_SYMBOL_GPL vmlinux 0x4f299607 handle_level_irq +EXPORT_SYMBOL_GPL vmlinux 0x4f2c3d49 ip_valid_fib_dump_req +EXPORT_SYMBOL_GPL vmlinux 0x4f30cad8 call_switchdev_notifiers +EXPORT_SYMBOL_GPL vmlinux 0x4f412c20 crypto_register_kpp +EXPORT_SYMBOL_GPL vmlinux 0x4f553b96 pm_runtime_barrier +EXPORT_SYMBOL_GPL vmlinux 0x4f69cb0f devm_kmemdup +EXPORT_SYMBOL_GPL vmlinux 0x4f6a07fe show_rcu_gp_kthreads +EXPORT_SYMBOL_GPL vmlinux 0x4f723860 pm_clk_create +EXPORT_SYMBOL_GPL vmlinux 0x4f72a987 uart_parse_options +EXPORT_SYMBOL_GPL vmlinux 0x4f76803a skcipher_alloc_instance_simple +EXPORT_SYMBOL_GPL vmlinux 0x4f7c1aaa pci_user_read_config_byte +EXPORT_SYMBOL_GPL vmlinux 0x4f7e14bd cgroup_attach_task_all +EXPORT_SYMBOL_GPL vmlinux 0x4f802099 devlink_flash_update_begin_notify +EXPORT_SYMBOL_GPL vmlinux 0x4f8318d9 __xenmem_reservation_va_mapping_reset +EXPORT_SYMBOL_GPL vmlinux 0x4f89fc82 serial8250_tx_chars +EXPORT_SYMBOL_GPL vmlinux 0x4f8aca7b inet_csk_listen_stop +EXPORT_SYMBOL_GPL vmlinux 0x4fa4504e iomap_migrate_page +EXPORT_SYMBOL_GPL vmlinux 0x4fac3996 vfs_read +EXPORT_SYMBOL_GPL vmlinux 0x4fac98a7 machine_check_poll +EXPORT_SYMBOL_GPL vmlinux 0x4fbc6f53 bsg_job_get +EXPORT_SYMBOL_GPL vmlinux 0x4fc02643 rhashtable_walk_exit +EXPORT_SYMBOL_GPL vmlinux 0x4fc8206e sock_zerocopy_put_abort +EXPORT_SYMBOL_GPL vmlinux 0x4fcc9102 devlink_flash_update_end_notify +EXPORT_SYMBOL_GPL vmlinux 0x4fd74581 ohci_hub_control +EXPORT_SYMBOL_GPL vmlinux 0x4fdc945d sata_deb_timing_normal +EXPORT_SYMBOL_GPL vmlinux 0x4fe1eddf unregister_netevent_notifier +EXPORT_SYMBOL_GPL vmlinux 0x500c768c apei_exec_read_register +EXPORT_SYMBOL_GPL vmlinux 0x5015e0dd exportfs_encode_inode_fh +EXPORT_SYMBOL_GPL vmlinux 0x5026585c xen_irq_from_gsi +EXPORT_SYMBOL_GPL vmlinux 0x5026ae1c crypto_stats_kpp_set_secret +EXPORT_SYMBOL_GPL vmlinux 0x503f0ec8 serdev_device_close +EXPORT_SYMBOL_GPL vmlinux 0x5053f9e8 software_node_fwnode +EXPORT_SYMBOL_GPL vmlinux 0x505c56c3 param_set_bool_enable_only +EXPORT_SYMBOL_GPL vmlinux 0x505d922d input_ff_create +EXPORT_SYMBOL_GPL vmlinux 0x506b0930 vfs_test_lock +EXPORT_SYMBOL_GPL vmlinux 0x507ebc7d fl6_update_dst +EXPORT_SYMBOL_GPL vmlinux 0x509178f0 relay_subbufs_consumed +EXPORT_SYMBOL_GPL vmlinux 0x5091b823 ring_buffer_read_start +EXPORT_SYMBOL_GPL vmlinux 0x5096e7e4 dma_get_merge_boundary +EXPORT_SYMBOL_GPL vmlinux 0x509d5f55 clk_divider_ro_ops +EXPORT_SYMBOL_GPL vmlinux 0x50a63f93 __tracepoint_devlink_hwmsg +EXPORT_SYMBOL_GPL vmlinux 0x50b03f5d l1tf_vmx_mitigation +EXPORT_SYMBOL_GPL vmlinux 0x50b71b13 gen_pool_get +EXPORT_SYMBOL_GPL vmlinux 0x50b8161e pci_hp_remove_module_link +EXPORT_SYMBOL_GPL vmlinux 0x50bd7a0a serdev_device_alloc +EXPORT_SYMBOL_GPL vmlinux 0x50bf4332 devres_add +EXPORT_SYMBOL_GPL vmlinux 0x50cceaac serdev_device_open +EXPORT_SYMBOL_GPL vmlinux 0x50d1f870 pgprot_writecombine +EXPORT_SYMBOL_GPL vmlinux 0x50d598bf pci_reset_bus +EXPORT_SYMBOL_GPL vmlinux 0x50dce4b0 mmu_notifier_put +EXPORT_SYMBOL_GPL vmlinux 0x50e7193a __i2c_first_dynamic_bus_num +EXPORT_SYMBOL_GPL vmlinux 0x50f38010 ata_host_alloc +EXPORT_SYMBOL_GPL vmlinux 0x50f898d8 switchdev_port_obj_del +EXPORT_SYMBOL_GPL vmlinux 0x50fad434 round_jiffies_up +EXPORT_SYMBOL_GPL vmlinux 0x50fe6be3 pci_epc_destroy +EXPORT_SYMBOL_GPL vmlinux 0x511530c7 devm_gpiod_get_array +EXPORT_SYMBOL_GPL vmlinux 0x5126877f xen_remap_pfn +EXPORT_SYMBOL_GPL vmlinux 0x51390c96 rcu_barrier_tasks_rude +EXPORT_SYMBOL_GPL vmlinux 0x5146db86 do_xdp_generic +EXPORT_SYMBOL_GPL vmlinux 0x5150da1e put_pid +EXPORT_SYMBOL_GPL vmlinux 0x515120ea crypto_alloc_skcipher +EXPORT_SYMBOL_GPL vmlinux 0x51846891 usb_free_coherent +EXPORT_SYMBOL_GPL vmlinux 0x5187ac4b xen_store_evtchn +EXPORT_SYMBOL_GPL vmlinux 0x518c2fc6 hpet_rtc_dropped_irq +EXPORT_SYMBOL_GPL vmlinux 0x518f9606 ata_host_init +EXPORT_SYMBOL_GPL vmlinux 0x51989b2e pm_clk_add +EXPORT_SYMBOL_GPL vmlinux 0x5199ee9d clk_hw_set_parent +EXPORT_SYMBOL_GPL vmlinux 0x51a1b077 dw_pcie_write_dbi +EXPORT_SYMBOL_GPL vmlinux 0x51ae7720 trace_array_destroy +EXPORT_SYMBOL_GPL vmlinux 0x51b80a77 devres_find +EXPORT_SYMBOL_GPL vmlinux 0x51bff7e6 pci_disable_sriov +EXPORT_SYMBOL_GPL vmlinux 0x51c47a7e serial8250_modem_status +EXPORT_SYMBOL_GPL vmlinux 0x51d60e59 ata_sas_async_probe +EXPORT_SYMBOL_GPL vmlinux 0x51eedf1f bus_unregister +EXPORT_SYMBOL_GPL vmlinux 0x51fd6d5c devm_hwspin_lock_request_specific +EXPORT_SYMBOL_GPL vmlinux 0x52048ba4 dma_buf_unpin +EXPORT_SYMBOL_GPL vmlinux 0x520ef5f5 is_transparent_hugepage +EXPORT_SYMBOL_GPL vmlinux 0x52114d60 clk_hw_register +EXPORT_SYMBOL_GPL vmlinux 0x52121118 __tracepoint_non_standard_event +EXPORT_SYMBOL_GPL vmlinux 0x52138055 sata_link_hardreset +EXPORT_SYMBOL_GPL vmlinux 0x521ba77c spi_get_device_id +EXPORT_SYMBOL_GPL vmlinux 0x52252316 clk_unregister_fixed_rate +EXPORT_SYMBOL_GPL vmlinux 0x5241a185 usb_bulk_msg +EXPORT_SYMBOL_GPL vmlinux 0x52431348 xenbus_transaction_start +EXPORT_SYMBOL_GPL vmlinux 0x52432737 extcon_get_property +EXPORT_SYMBOL_GPL vmlinux 0x524acfaf sk_msg_zerocopy_from_iter +EXPORT_SYMBOL_GPL vmlinux 0x525d0aa3 trace_seq_printf +EXPORT_SYMBOL_GPL vmlinux 0x52608853 devlink_trap_policers_register +EXPORT_SYMBOL_GPL vmlinux 0x527db9c5 regulator_get_optional +EXPORT_SYMBOL_GPL vmlinux 0x529a4db7 device_link_del +EXPORT_SYMBOL_GPL vmlinux 0x52a22de3 component_del +EXPORT_SYMBOL_GPL vmlinux 0x52b19e55 pm_genpd_init +EXPORT_SYMBOL_GPL vmlinux 0x52b1e3c7 pci_flags +EXPORT_SYMBOL_GPL vmlinux 0x52c35e83 call_rcu_tasks_trace +EXPORT_SYMBOL_GPL vmlinux 0x52d54fce devlink_info_version_stored_put +EXPORT_SYMBOL_GPL vmlinux 0x52e5f40b fscrypt_ioctl_remove_key_all_users +EXPORT_SYMBOL_GPL vmlinux 0x52efbab8 vfio_group_get_external_user +EXPORT_SYMBOL_GPL vmlinux 0x52fa65b0 usb_root_hub_lost_power +EXPORT_SYMBOL_GPL vmlinux 0x530eb55e fwnode_property_read_u8_array +EXPORT_SYMBOL_GPL vmlinux 0x532ad8bd devm_reset_control_array_get +EXPORT_SYMBOL_GPL vmlinux 0x532b90b5 kprobe_event_cmd_init +EXPORT_SYMBOL_GPL vmlinux 0x532bfa3f bpf_trace_run2 +EXPORT_SYMBOL_GPL vmlinux 0x533daa9d fib_rule_matchall +EXPORT_SYMBOL_GPL vmlinux 0x5343def1 device_find_child_by_name +EXPORT_SYMBOL_GPL vmlinux 0x5358864e devlink_fmsg_binary_pair_nest_end +EXPORT_SYMBOL_GPL vmlinux 0x53594e88 generic_access_phys +EXPORT_SYMBOL_GPL vmlinux 0x535b9645 debugfs_read_file_bool +EXPORT_SYMBOL_GPL vmlinux 0x535bef24 pci_epc_remove_epf +EXPORT_SYMBOL_GPL vmlinux 0x536822e3 sfp_module_insert +EXPORT_SYMBOL_GPL vmlinux 0x536cf7f4 dev_pm_disable_wake_irq +EXPORT_SYMBOL_GPL vmlinux 0x53873763 scsi_mode_select +EXPORT_SYMBOL_GPL vmlinux 0x53877902 da903x_register_notifier +EXPORT_SYMBOL_GPL vmlinux 0x538d073d phy_duplex_to_str +EXPORT_SYMBOL_GPL vmlinux 0x5391f2c7 gnttab_end_foreign_access_ref +EXPORT_SYMBOL_GPL vmlinux 0x539f157b pci_xen_swiotlb_init_late +EXPORT_SYMBOL_GPL vmlinux 0x53af2b29 device_property_match_string +EXPORT_SYMBOL_GPL vmlinux 0x53b3332f platform_unregister_drivers +EXPORT_SYMBOL_GPL vmlinux 0x53c089f5 property_entries_dup +EXPORT_SYMBOL_GPL vmlinux 0x53c47c53 apic +EXPORT_SYMBOL_GPL vmlinux 0x53e06c0c power_supply_find_ocv2cap_table +EXPORT_SYMBOL_GPL vmlinux 0x541782aa pinctrl_unregister +EXPORT_SYMBOL_GPL vmlinux 0x541bd60a irq_work_run +EXPORT_SYMBOL_GPL vmlinux 0x54215db5 visitor64 +EXPORT_SYMBOL_GPL vmlinux 0x5435454c divider_ro_round_rate_parent +EXPORT_SYMBOL_GPL vmlinux 0x543aa645 get_current_tty +EXPORT_SYMBOL_GPL vmlinux 0x543bc755 usb_find_alt_setting +EXPORT_SYMBOL_GPL vmlinux 0x543c6d5c policy_has_boost_freq +EXPORT_SYMBOL_GPL vmlinux 0x545025e5 nvmem_add_cell_table +EXPORT_SYMBOL_GPL vmlinux 0x5452d036 spi_finalize_current_message +EXPORT_SYMBOL_GPL vmlinux 0x545aadf7 cs47l24_spi_regmap +EXPORT_SYMBOL_GPL vmlinux 0x5469120d trace_event_buffer_commit +EXPORT_SYMBOL_GPL vmlinux 0x5481aea5 crypto_ahash_final +EXPORT_SYMBOL_GPL vmlinux 0x549525ef handle_nested_irq +EXPORT_SYMBOL_GPL vmlinux 0x54955855 alarm_start_relative +EXPORT_SYMBOL_GPL vmlinux 0x54aa3a91 uart_get_rs485_mode +EXPORT_SYMBOL_GPL vmlinux 0x54e79c72 pm_genpd_add_subdomain +EXPORT_SYMBOL_GPL vmlinux 0x54eec95c rio_mport_initialize +EXPORT_SYMBOL_GPL vmlinux 0x54f84d2c rio_mport_get_efb +EXPORT_SYMBOL_GPL vmlinux 0x54f8fc3e em_register_perf_domain +EXPORT_SYMBOL_GPL vmlinux 0x550831a9 blk_queue_flag_test_and_set +EXPORT_SYMBOL_GPL vmlinux 0x550a169e sysfs_group_change_owner +EXPORT_SYMBOL_GPL vmlinux 0x550ce709 pat_enabled +EXPORT_SYMBOL_GPL vmlinux 0x552c5b28 mctrl_gpio_free +EXPORT_SYMBOL_GPL vmlinux 0x55339365 flush_delayed_fput +EXPORT_SYMBOL_GPL vmlinux 0x553b49a4 cpufreq_get_driver_data +EXPORT_SYMBOL_GPL vmlinux 0x553ea606 ping_init_sock +EXPORT_SYMBOL_GPL vmlinux 0x55417264 unregister_vt_notifier +EXPORT_SYMBOL_GPL vmlinux 0x5541ac11 cgroup_get_from_fd +EXPORT_SYMBOL_GPL vmlinux 0x5554a176 regmap_multi_reg_write_bypassed +EXPORT_SYMBOL_GPL vmlinux 0x555f9eca rhashtable_walk_enter +EXPORT_SYMBOL_GPL vmlinux 0x556d2606 clk_register_mux_table +EXPORT_SYMBOL_GPL vmlinux 0x556e4390 clk_get_rate +EXPORT_SYMBOL_GPL vmlinux 0x55784228 regmap_irq_get_virq +EXPORT_SYMBOL_GPL vmlinux 0x5578f468 add_to_page_cache_lru +EXPORT_SYMBOL_GPL vmlinux 0x557c39e5 da903x_clr_bits +EXPORT_SYMBOL_GPL vmlinux 0x558149ce dma_release_channel +EXPORT_SYMBOL_GPL vmlinux 0x558a4546 dma_buf_attach +EXPORT_SYMBOL_GPL vmlinux 0x55955a70 i2c_new_scanned_device +EXPORT_SYMBOL_GPL vmlinux 0x559690be ata_pci_bmdma_clear_simplex +EXPORT_SYMBOL_GPL vmlinux 0x55a6453e power_supply_get_property +EXPORT_SYMBOL_GPL vmlinux 0x55c76a23 ksys_sync_helper +EXPORT_SYMBOL_GPL vmlinux 0x55eb74c0 rio_dma_prep_slave_sg +EXPORT_SYMBOL_GPL vmlinux 0x55eecff4 bit_wait_io_timeout +EXPORT_SYMBOL_GPL vmlinux 0x55f19edc subsys_virtual_register +EXPORT_SYMBOL_GPL vmlinux 0x55ff5e76 crypto_shash_finup +EXPORT_SYMBOL_GPL vmlinux 0x56054c05 crypto_it_tab +EXPORT_SYMBOL_GPL vmlinux 0x560b7ede bpf_prog_inc_not_zero +EXPORT_SYMBOL_GPL vmlinux 0x56173654 pcap_set_ts_bits +EXPORT_SYMBOL_GPL vmlinux 0x561d1592 crypto_alloc_ahash +EXPORT_SYMBOL_GPL vmlinux 0x56256e8a orderly_poweroff +EXPORT_SYMBOL_GPL vmlinux 0x562de765 fuse_do_open +EXPORT_SYMBOL_GPL vmlinux 0x56310925 regulator_mode_to_status +EXPORT_SYMBOL_GPL vmlinux 0x56398615 mark_tsc_unstable +EXPORT_SYMBOL_GPL vmlinux 0x5641485b tty_termios_encode_baud_rate +EXPORT_SYMBOL_GPL vmlinux 0x56466a9f devprop_gpiochip_set_names +EXPORT_SYMBOL_GPL vmlinux 0x56508141 spi_async_locked +EXPORT_SYMBOL_GPL vmlinux 0x56615677 ip6_dst_lookup_tunnel +EXPORT_SYMBOL_GPL vmlinux 0x5674b3cb rhashtable_free_and_destroy +EXPORT_SYMBOL_GPL vmlinux 0x568f9c3e platform_device_register +EXPORT_SYMBOL_GPL vmlinux 0x569a7ec7 rtnl_link_register +EXPORT_SYMBOL_GPL vmlinux 0x56c6e25f genphy_c45_an_disable_aneg +EXPORT_SYMBOL_GPL vmlinux 0x56c80db4 acpi_subsys_freeze +EXPORT_SYMBOL_GPL vmlinux 0x56df025a spi_res_alloc +EXPORT_SYMBOL_GPL vmlinux 0x56df4eba regcache_cache_only +EXPORT_SYMBOL_GPL vmlinux 0x56efcbf6 ata_dev_set_feature +EXPORT_SYMBOL_GPL vmlinux 0x56f5c0fc devlink_port_param_driverinit_value_get +EXPORT_SYMBOL_GPL vmlinux 0x56f820ce regulator_disable +EXPORT_SYMBOL_GPL vmlinux 0x570508da posix_acl_create +EXPORT_SYMBOL_GPL vmlinux 0x571b3a6f sysfs_update_group +EXPORT_SYMBOL_GPL vmlinux 0x57234e45 crypto_shash_setkey +EXPORT_SYMBOL_GPL vmlinux 0x5725c35b iomap_finish_ioends +EXPORT_SYMBOL_GPL vmlinux 0x573b0127 devlink_port_attrs_set +EXPORT_SYMBOL_GPL vmlinux 0x573b5453 ipv6_fixup_options +EXPORT_SYMBOL_GPL vmlinux 0x573fbe34 bdev_disk_changed +EXPORT_SYMBOL_GPL vmlinux 0x574609c5 apei_exec_write_register_value +EXPORT_SYMBOL_GPL vmlinux 0x575e7c45 wbc_attach_and_unlock_inode +EXPORT_SYMBOL_GPL vmlinux 0x57719632 gnttab_grant_foreign_access +EXPORT_SYMBOL_GPL vmlinux 0x57732438 inet_twsk_purge +EXPORT_SYMBOL_GPL vmlinux 0x578eeb4d hugetlb_cgrp_subsys_enabled_key +EXPORT_SYMBOL_GPL vmlinux 0x5790e7a0 pci_unlock_rescan_remove +EXPORT_SYMBOL_GPL vmlinux 0x57921ce8 crypto_enqueue_request +EXPORT_SYMBOL_GPL vmlinux 0x579732f6 spi_mem_get_name +EXPORT_SYMBOL_GPL vmlinux 0x579e0bf5 rtnl_unregister_all +EXPORT_SYMBOL_GPL vmlinux 0x57a22a04 security_inode_mkdir +EXPORT_SYMBOL_GPL vmlinux 0x57ad78f9 net_dm_hw_report +EXPORT_SYMBOL_GPL vmlinux 0x57b3d687 cpuidle_unregister +EXPORT_SYMBOL_GPL vmlinux 0x57c39727 kdb_register_flags +EXPORT_SYMBOL_GPL vmlinux 0x57c81e43 driver_find_device +EXPORT_SYMBOL_GPL vmlinux 0x57d21c2c icc_std_aggregate +EXPORT_SYMBOL_GPL vmlinux 0x57d5ad68 regmap_noinc_read +EXPORT_SYMBOL_GPL vmlinux 0x57dd67d5 perf_aux_output_end +EXPORT_SYMBOL_GPL vmlinux 0x57f2ef61 pcie_flr +EXPORT_SYMBOL_GPL vmlinux 0x57f70547 secure_ipv4_port_ephemeral +EXPORT_SYMBOL_GPL vmlinux 0x57ff6bd2 em_cpu_get +EXPORT_SYMBOL_GPL vmlinux 0x58276f93 cper_next_record_id +EXPORT_SYMBOL_GPL vmlinux 0x5830c20d __clk_determine_rate +EXPORT_SYMBOL_GPL vmlinux 0x5831e062 cpus_read_trylock +EXPORT_SYMBOL_GPL vmlinux 0x58339ee7 regmap_fields_update_bits_base +EXPORT_SYMBOL_GPL vmlinux 0x584f938f wm5110_revd_irq +EXPORT_SYMBOL_GPL vmlinux 0x585147a0 pm_generic_thaw_noirq +EXPORT_SYMBOL_GPL vmlinux 0x5879a27d sfp_get_module_info +EXPORT_SYMBOL_GPL vmlinux 0x587fcdc9 ata_sff_qc_issue +EXPORT_SYMBOL_GPL vmlinux 0x588a3cc2 pci_epc_get_features +EXPORT_SYMBOL_GPL vmlinux 0x588d0289 usb_get_from_anchor +EXPORT_SYMBOL_GPL vmlinux 0x58a09f17 rio_route_get_entry +EXPORT_SYMBOL_GPL vmlinux 0x58bfe1b9 hvc_alloc +EXPORT_SYMBOL_GPL vmlinux 0x58cc66b4 mddev_resume +EXPORT_SYMBOL_GPL vmlinux 0x58d6311d trace_clock +EXPORT_SYMBOL_GPL vmlinux 0x58def6ca sfp_module_remove +EXPORT_SYMBOL_GPL vmlinux 0x58f03b99 register_ftrace_function +EXPORT_SYMBOL_GPL vmlinux 0x58f679e3 gpiochip_get_data +EXPORT_SYMBOL_GPL vmlinux 0x58f802a3 iterate_mounts +EXPORT_SYMBOL_GPL vmlinux 0x5909d9d3 proc_create_net_data +EXPORT_SYMBOL_GPL vmlinux 0x590bdbcc lwtunnel_input +EXPORT_SYMBOL_GPL vmlinux 0x59286886 devm_regmap_field_free +EXPORT_SYMBOL_GPL vmlinux 0x593418aa synth_event_gen_cmd_array_start +EXPORT_SYMBOL_GPL vmlinux 0x59645780 regmap_write +EXPORT_SYMBOL_GPL vmlinux 0x5986d190 kdb_printf +EXPORT_SYMBOL_GPL vmlinux 0x59977345 handle_mm_fault +EXPORT_SYMBOL_GPL vmlinux 0x59a1c8c4 i2c_dw_validate_speed +EXPORT_SYMBOL_GPL vmlinux 0x59ac2989 rio_lock_device +EXPORT_SYMBOL_GPL vmlinux 0x59aefd41 kernfs_path_from_node +EXPORT_SYMBOL_GPL vmlinux 0x59b2adbf input_ff_effect_from_user +EXPORT_SYMBOL_GPL vmlinux 0x59c6aff4 irq_set_affinity_hint +EXPORT_SYMBOL_GPL vmlinux 0x59d26667 tps6586x_read +EXPORT_SYMBOL_GPL vmlinux 0x59d2a1b4 mm_unaccount_pinned_pages +EXPORT_SYMBOL_GPL vmlinux 0x59f08f02 efivars_kobject +EXPORT_SYMBOL_GPL vmlinux 0x59f2b094 dst_cache_set_ip4 +EXPORT_SYMBOL_GPL vmlinux 0x59fe1000 shake_page +EXPORT_SYMBOL_GPL vmlinux 0x5a17942d pm_generic_freeze_noirq +EXPORT_SYMBOL_GPL vmlinux 0x5a1d134a rcu_momentary_dyntick_idle +EXPORT_SYMBOL_GPL vmlinux 0x5a278a6f __fsnotify_inode_delete +EXPORT_SYMBOL_GPL vmlinux 0x5a2cbfdd regulator_map_voltage_linear_range +EXPORT_SYMBOL_GPL vmlinux 0x5a39f5ee devfreq_event_enable_edev +EXPORT_SYMBOL_GPL vmlinux 0x5a3e5696 devlink_flash_update_status_notify +EXPORT_SYMBOL_GPL vmlinux 0x5a44fa9c sdio_enable_func +EXPORT_SYMBOL_GPL vmlinux 0x5a49dbc9 timerqueue_del +EXPORT_SYMBOL_GPL vmlinux 0x5a55ea2a ata_cable_80wire +EXPORT_SYMBOL_GPL vmlinux 0x5a6920ef gpiochip_line_is_valid +EXPORT_SYMBOL_GPL vmlinux 0x5a6cdb52 nf_ct_zone_dflt +EXPORT_SYMBOL_GPL vmlinux 0x5a7bfe41 crypto_probing_notify +EXPORT_SYMBOL_GPL vmlinux 0x5a830c36 governor_sysfs_ops +EXPORT_SYMBOL_GPL vmlinux 0x5a8466ae udp4_hwcsum +EXPORT_SYMBOL_GPL vmlinux 0x5aab917c acpi_device_fwnode_ops +EXPORT_SYMBOL_GPL vmlinux 0x5aab94f4 udp_init_sock +EXPORT_SYMBOL_GPL vmlinux 0x5aaf1990 rio_unregister_mport +EXPORT_SYMBOL_GPL vmlinux 0x5ab09745 edac_get_owner +EXPORT_SYMBOL_GPL vmlinux 0x5ab5e661 input_ff_upload +EXPORT_SYMBOL_GPL vmlinux 0x5ab9af2f tty_register_device_attr +EXPORT_SYMBOL_GPL vmlinux 0x5abfd32b rio_local_set_device_id +EXPORT_SYMBOL_GPL vmlinux 0x5ac6b587 ata_sas_port_destroy +EXPORT_SYMBOL_GPL vmlinux 0x5ac711fd inet6_csk_update_pmtu +EXPORT_SYMBOL_GPL vmlinux 0x5ad3cfad ata_do_set_mode +EXPORT_SYMBOL_GPL vmlinux 0x5adc771c irq_domain_add_legacy +EXPORT_SYMBOL_GPL vmlinux 0x5adf8c3b mbox_chan_txdone +EXPORT_SYMBOL_GPL vmlinux 0x5ae00216 hwmon_device_register +EXPORT_SYMBOL_GPL vmlinux 0x5aeeed1f sock_inuse_get +EXPORT_SYMBOL_GPL vmlinux 0x5af5600a spi_bus_unlock +EXPORT_SYMBOL_GPL vmlinux 0x5afc7e37 bind_interdomain_evtchn_to_irqhandler +EXPORT_SYMBOL_GPL vmlinux 0x5b21ceff ring_buffer_iter_peek +EXPORT_SYMBOL_GPL vmlinux 0x5b24607b crypto_stats_aead_decrypt +EXPORT_SYMBOL_GPL vmlinux 0x5b35c4f9 vfio_group_set_kvm +EXPORT_SYMBOL_GPL vmlinux 0x5b524c0c inet_csk_listen_start +EXPORT_SYMBOL_GPL vmlinux 0x5b5cc9c1 usb_hcd_giveback_urb +EXPORT_SYMBOL_GPL vmlinux 0x5b67b103 irq_create_direct_mapping +EXPORT_SYMBOL_GPL vmlinux 0x5b6b0329 swiotlb_max_segment +EXPORT_SYMBOL_GPL vmlinux 0x5b884364 hyperv_report_panic_msg +EXPORT_SYMBOL_GPL vmlinux 0x5b9015f2 serdev_controller_remove +EXPORT_SYMBOL_GPL vmlinux 0x5b9df7df dev_pm_qos_hide_flags +EXPORT_SYMBOL_GPL vmlinux 0x5babe9d5 edac_mc_add_mc_with_groups +EXPORT_SYMBOL_GPL vmlinux 0x5bb289ac __tracepoint_extlog_mem_event +EXPORT_SYMBOL_GPL vmlinux 0x5bbdfa26 scatterwalk_ffwd +EXPORT_SYMBOL_GPL vmlinux 0x5bd0748f crypto_del_default_rng +EXPORT_SYMBOL_GPL vmlinux 0x5bd6aadd scsi_autopm_put_device +EXPORT_SYMBOL_GPL vmlinux 0x5bdae35b usb_phy_roothub_set_mode +EXPORT_SYMBOL_GPL vmlinux 0x5bdbac4e rcu_unexpedite_gp +EXPORT_SYMBOL_GPL vmlinux 0x5bea9b74 ata_acpi_gtm +EXPORT_SYMBOL_GPL vmlinux 0x5bf33938 phy_get +EXPORT_SYMBOL_GPL vmlinux 0x5bf432ef icc_provider_add +EXPORT_SYMBOL_GPL vmlinux 0x5c1bead6 devm_hwmon_device_unregister +EXPORT_SYMBOL_GPL vmlinux 0x5c1e8a60 regulator_get_drvdata +EXPORT_SYMBOL_GPL vmlinux 0x5c1eae9b acpi_dma_configure +EXPORT_SYMBOL_GPL vmlinux 0x5c2295bc skb_append_pagefrags +EXPORT_SYMBOL_GPL vmlinux 0x5c22b2b1 efivar_entry_find +EXPORT_SYMBOL_GPL vmlinux 0x5c2bcd37 bpf_warn_invalid_xdp_action +EXPORT_SYMBOL_GPL vmlinux 0x5c384e14 unix_inq_len +EXPORT_SYMBOL_GPL vmlinux 0x5c5a1b16 tick_broadcast_control +EXPORT_SYMBOL_GPL vmlinux 0x5c66e90c efivar_run_worker +EXPORT_SYMBOL_GPL vmlinux 0x5c6cefc8 phy_led_triggers_unregister +EXPORT_SYMBOL_GPL vmlinux 0x5c82c087 raw_seq_next +EXPORT_SYMBOL_GPL vmlinux 0x5c82e0e3 cpufreq_frequency_table_get_index +EXPORT_SYMBOL_GPL vmlinux 0x5cab9945 unregister_xenbus_watch +EXPORT_SYMBOL_GPL vmlinux 0x5cad8fc3 power_supply_ocv2cap_simple +EXPORT_SYMBOL_GPL vmlinux 0x5cb0ddd5 intel_msic_reg_update +EXPORT_SYMBOL_GPL vmlinux 0x5cb95e44 spi_register_controller +EXPORT_SYMBOL_GPL vmlinux 0x5cbacd78 fsverity_cleanup_inode +EXPORT_SYMBOL_GPL vmlinux 0x5cca6c44 wait_on_page_writeback +EXPORT_SYMBOL_GPL vmlinux 0x5cd01ee6 xenbus_unregister_driver +EXPORT_SYMBOL_GPL vmlinux 0x5cd2fb11 crypto_hash_walk_done +EXPORT_SYMBOL_GPL vmlinux 0x5ce2529a regmap_can_raw_write +EXPORT_SYMBOL_GPL vmlinux 0x5cea540c adp5520_register_notifier +EXPORT_SYMBOL_GPL vmlinux 0x5cec5474 devm_acpi_dev_remove_driver_gpios +EXPORT_SYMBOL_GPL vmlinux 0x5d17148b apei_write +EXPORT_SYMBOL_GPL vmlinux 0x5d19fa9e i2c_dw_prepare_clk +EXPORT_SYMBOL_GPL vmlinux 0x5d26070e set_task_ioprio +EXPORT_SYMBOL_GPL vmlinux 0x5d27eb4c icc_set_tag +EXPORT_SYMBOL_GPL vmlinux 0x5d3ccc77 of_icc_xlate_onecell +EXPORT_SYMBOL_GPL vmlinux 0x5d6e534f fuse_dev_operations +EXPORT_SYMBOL_GPL vmlinux 0x5d72d304 usb_ifnum_to_if +EXPORT_SYMBOL_GPL vmlinux 0x5d79ebc9 rtc_read_alarm +EXPORT_SYMBOL_GPL vmlinux 0x5d8476d3 bpf_sk_storage_diag_alloc +EXPORT_SYMBOL_GPL vmlinux 0x5d9317d7 uv_teardown_irq +EXPORT_SYMBOL_GPL vmlinux 0x5da5b463 bpf_prog_sub +EXPORT_SYMBOL_GPL vmlinux 0x5da67adc zs_compact +EXPORT_SYMBOL_GPL vmlinux 0x5dbcfa4f boot_cpu_physical_apicid +EXPORT_SYMBOL_GPL vmlinux 0x5dc715eb list_lru_walk_one +EXPORT_SYMBOL_GPL vmlinux 0x5dd66711 acpi_pci_check_ejectable +EXPORT_SYMBOL_GPL vmlinux 0x5de4aee0 device_move +EXPORT_SYMBOL_GPL vmlinux 0x5de7447d __atomic_notifier_call_chain +EXPORT_SYMBOL_GPL vmlinux 0x5e04c37a dm_set_target_max_io_len +EXPORT_SYMBOL_GPL vmlinux 0x5e1532a6 nvdimm_volatile_region_create +EXPORT_SYMBOL_GPL vmlinux 0x5e173309 cpu_cgrp_subsys_on_dfl_key +EXPORT_SYMBOL_GPL vmlinux 0x5e2d3572 pci_user_write_config_word +EXPORT_SYMBOL_GPL vmlinux 0x5e515be6 ktime_get_ts64 +EXPORT_SYMBOL_GPL vmlinux 0x5e51cd74 swiotlb_nr_tbl +EXPORT_SYMBOL_GPL vmlinux 0x5e532ab3 crypto_unregister_akcipher +EXPORT_SYMBOL_GPL vmlinux 0x5e798ffb divider_get_val +EXPORT_SYMBOL_GPL vmlinux 0x5e7fe57a blk_queue_max_zone_append_sectors +EXPORT_SYMBOL_GPL vmlinux 0x5e85094e efivars_register +EXPORT_SYMBOL_GPL vmlinux 0x5e85415b ring_buffer_consume +EXPORT_SYMBOL_GPL vmlinux 0x5e898b11 iommu_device_unregister +EXPORT_SYMBOL_GPL vmlinux 0x5eb6dd30 ndo_dflt_bridge_getlink +EXPORT_SYMBOL_GPL vmlinux 0x5ec62549 ata_dev_classify +EXPORT_SYMBOL_GPL vmlinux 0x5ed23b26 pm_runtime_autosuspend_expiration +EXPORT_SYMBOL_GPL vmlinux 0x5eda08fc regmap_parse_val +EXPORT_SYMBOL_GPL vmlinux 0x5edf4f41 irq_domain_xlate_twocell +EXPORT_SYMBOL_GPL vmlinux 0x5ee9ef6b sk_clone_lock +EXPORT_SYMBOL_GPL vmlinux 0x5ef30521 fsnotify_put_mark +EXPORT_SYMBOL_GPL vmlinux 0x5f0d7cc5 syscon_regmap_lookup_by_phandle_args +EXPORT_SYMBOL_GPL vmlinux 0x5f1413f4 usb_get_phy +EXPORT_SYMBOL_GPL vmlinux 0x5f22bb45 clk_hw_unregister +EXPORT_SYMBOL_GPL vmlinux 0x5f23e3fa insert_resource +EXPORT_SYMBOL_GPL vmlinux 0x5f2588f2 crypto_enqueue_request_head +EXPORT_SYMBOL_GPL vmlinux 0x5f2da8c4 check_tsc_unstable +EXPORT_SYMBOL_GPL vmlinux 0x5f2fcc83 ioremap_uc +EXPORT_SYMBOL_GPL vmlinux 0x5f43f15a ata_pci_shutdown_one +EXPORT_SYMBOL_GPL vmlinux 0x5f45a866 tty_save_termios +EXPORT_SYMBOL_GPL vmlinux 0x5f4d6984 __pm_runtime_resume +EXPORT_SYMBOL_GPL vmlinux 0x5f5329f5 crypto_register_alg +EXPORT_SYMBOL_GPL vmlinux 0x5f57641c ata_sff_lost_interrupt +EXPORT_SYMBOL_GPL vmlinux 0x5f61394e pinctrl_register +EXPORT_SYMBOL_GPL vmlinux 0x5f6f1e9e dax_get_private +EXPORT_SYMBOL_GPL vmlinux 0x5f76051c shash_ahash_update +EXPORT_SYMBOL_GPL vmlinux 0x5f80e580 fwnode_get_nth_parent +EXPORT_SYMBOL_GPL vmlinux 0x5f8cad3c fwnode_get_next_available_child_node +EXPORT_SYMBOL_GPL vmlinux 0x5f8d8668 dm_internal_resume +EXPORT_SYMBOL_GPL vmlinux 0x5f950041 crypto_alloc_acomp +EXPORT_SYMBOL_GPL vmlinux 0x5fd04f0b pwm_lpss_resume +EXPORT_SYMBOL_GPL vmlinux 0x5fd43994 crypto_alloc_shash +EXPORT_SYMBOL_GPL vmlinux 0x5fdfa2c1 amd_pmu_enable_virt +EXPORT_SYMBOL_GPL vmlinux 0x5fef6a91 ethnl_cable_test_finished +EXPORT_SYMBOL_GPL vmlinux 0x5ffc0a16 phy_10gbit_full_features +EXPORT_SYMBOL_GPL vmlinux 0x5fff4500 rio_set_port_lockout +EXPORT_SYMBOL_GPL vmlinux 0x60069ee1 inet_ehash_locks_alloc +EXPORT_SYMBOL_GPL vmlinux 0x60091316 clk_notifier_register +EXPORT_SYMBOL_GPL vmlinux 0x600ba19b devlink_param_value_changed +EXPORT_SYMBOL_GPL vmlinux 0x601ba3eb __tracepoint_io_page_fault +EXPORT_SYMBOL_GPL vmlinux 0x603b042f __srcu_read_unlock +EXPORT_SYMBOL_GPL vmlinux 0x603d0d51 acpi_os_map_iomem +EXPORT_SYMBOL_GPL vmlinux 0x6044cd9d crypto_register_skcipher +EXPORT_SYMBOL_GPL vmlinux 0x604722fd devices_cgrp_subsys_enabled_key +EXPORT_SYMBOL_GPL vmlinux 0x604ba787 iommu_domain_free +EXPORT_SYMBOL_GPL vmlinux 0x6050f961 uprobe_unregister +EXPORT_SYMBOL_GPL vmlinux 0x6052ec3e __ip6_local_out +EXPORT_SYMBOL_GPL vmlinux 0x6052f950 pinconf_generic_dump_config +EXPORT_SYMBOL_GPL vmlinux 0x60578e4f kobject_rename +EXPORT_SYMBOL_GPL vmlinux 0x605a2085 led_blink_set +EXPORT_SYMBOL_GPL vmlinux 0x605e1edb iomap_releasepage +EXPORT_SYMBOL_GPL vmlinux 0x6067fed8 i2c_match_id +EXPORT_SYMBOL_GPL vmlinux 0x607c4683 devlink_info_version_fixed_put +EXPORT_SYMBOL_GPL vmlinux 0x60806523 i2c_acpi_get_i2c_resource +EXPORT_SYMBOL_GPL vmlinux 0x6091797f synchronize_rcu +EXPORT_SYMBOL_GPL vmlinux 0x609ad6af ata_sff_drain_fifo +EXPORT_SYMBOL_GPL vmlinux 0x60a1388d devm_regulator_unregister_notifier +EXPORT_SYMBOL_GPL vmlinux 0x60a13e90 rcu_barrier +EXPORT_SYMBOL_GPL vmlinux 0x60a634c4 vfio_info_cap_add +EXPORT_SYMBOL_GPL vmlinux 0x60cebc72 devm_usb_get_phy +EXPORT_SYMBOL_GPL vmlinux 0x60d23af9 devlink_sb_unregister +EXPORT_SYMBOL_GPL vmlinux 0x60d93c41 usb_asmedia_modifyflowcontrol +EXPORT_SYMBOL_GPL vmlinux 0x60dbf44f edac_get_sysfs_subsys +EXPORT_SYMBOL_GPL vmlinux 0x60df92d8 led_set_brightness_nosleep +EXPORT_SYMBOL_GPL vmlinux 0x60ebc96f ring_buffer_read_prepare +EXPORT_SYMBOL_GPL vmlinux 0x60f6e90c device_connection_add +EXPORT_SYMBOL_GPL vmlinux 0x60f99e1b cppc_set_perf +EXPORT_SYMBOL_GPL vmlinux 0x610398e9 acpi_dev_suspend +EXPORT_SYMBOL_GPL vmlinux 0x610f5278 scsi_dh_activate +EXPORT_SYMBOL_GPL vmlinux 0x611ba78b device_property_read_u16_array +EXPORT_SYMBOL_GPL vmlinux 0x611c4bbc mbox_client_peek_data +EXPORT_SYMBOL_GPL vmlinux 0x611cfa85 klist_add_tail +EXPORT_SYMBOL_GPL vmlinux 0x6129fb93 sfp_remove_phy +EXPORT_SYMBOL_GPL vmlinux 0x612bfd89 errno_to_blk_status +EXPORT_SYMBOL_GPL vmlinux 0x612cfe26 bpf_trace_run7 +EXPORT_SYMBOL_GPL vmlinux 0x6138565e __udp_enqueue_schedule_skb +EXPORT_SYMBOL_GPL vmlinux 0x614e8268 blk_mq_queue_inflight +EXPORT_SYMBOL_GPL vmlinux 0x614f2f5a gov_attr_set_init +EXPORT_SYMBOL_GPL vmlinux 0x61631857 efivar_entry_delete +EXPORT_SYMBOL_GPL vmlinux 0x6168b034 tty_release_struct +EXPORT_SYMBOL_GPL vmlinux 0x616b30c7 kmsg_dump_rewind +EXPORT_SYMBOL_GPL vmlinux 0x616c7a6d pci_user_write_config_byte +EXPORT_SYMBOL_GPL vmlinux 0x617b026c hwrng_register +EXPORT_SYMBOL_GPL vmlinux 0x6180fa3d regulator_register_notifier +EXPORT_SYMBOL_GPL vmlinux 0x6181e79f timerqueue_add +EXPORT_SYMBOL_GPL vmlinux 0x6181ffec ata_scsi_slave_config +EXPORT_SYMBOL_GPL vmlinux 0x619023a4 phy_driver_is_genphy +EXPORT_SYMBOL_GPL vmlinux 0x6198dfea __ring_buffer_alloc +EXPORT_SYMBOL_GPL vmlinux 0x6199ad5d crypto_has_skcipher +EXPORT_SYMBOL_GPL vmlinux 0x619b14da fpstate_init +EXPORT_SYMBOL_GPL vmlinux 0x61ae1d2d xas_pause +EXPORT_SYMBOL_GPL vmlinux 0x61b6627d dax_driver_unregister +EXPORT_SYMBOL_GPL vmlinux 0x61c22666 dw_pcie_find_capability +EXPORT_SYMBOL_GPL vmlinux 0x61f67c92 phy_gbit_features_array +EXPORT_SYMBOL_GPL vmlinux 0x6202476c dev_pm_enable_wake_irq +EXPORT_SYMBOL_GPL vmlinux 0x6207dada alarmtimer_get_rtcdev +EXPORT_SYMBOL_GPL vmlinux 0x622c7922 register_oom_notifier +EXPORT_SYMBOL_GPL vmlinux 0x62344870 genphy_c45_read_mdix +EXPORT_SYMBOL_GPL vmlinux 0x62377a7b blk_io_schedule +EXPORT_SYMBOL_GPL vmlinux 0x6246a629 synchronize_rcu_tasks_trace +EXPORT_SYMBOL_GPL vmlinux 0x625754a8 tracing_snapshot_cond_enable +EXPORT_SYMBOL_GPL vmlinux 0x6257dda7 clk_rate_exclusive_get +EXPORT_SYMBOL_GPL vmlinux 0x6259d291 clk_restore_context +EXPORT_SYMBOL_GPL vmlinux 0x626297fb pci_enable_pasid +EXPORT_SYMBOL_GPL vmlinux 0x62854d82 regmap_fields_read +EXPORT_SYMBOL_GPL vmlinux 0x62868957 xfrm_audit_policy_add +EXPORT_SYMBOL_GPL vmlinux 0x62b31cbb wm8350_reg_unlock +EXPORT_SYMBOL_GPL vmlinux 0x62bb09bf clocks_calc_mult_shift +EXPORT_SYMBOL_GPL vmlinux 0x62c2e989 driver_find +EXPORT_SYMBOL_GPL vmlinux 0x62e2aa05 serial8250_read_char +EXPORT_SYMBOL_GPL vmlinux 0x62fbaacb udp_cmsg_send +EXPORT_SYMBOL_GPL vmlinux 0x63033be1 device_remove_file +EXPORT_SYMBOL_GPL vmlinux 0x63150e06 clk_get_parent +EXPORT_SYMBOL_GPL vmlinux 0x63197685 s2idle_wake +EXPORT_SYMBOL_GPL vmlinux 0x6340434e x86_model +EXPORT_SYMBOL_GPL vmlinux 0x63431e59 mbox_controller_unregister +EXPORT_SYMBOL_GPL vmlinux 0x6358f72b usb_altnum_to_altsetting +EXPORT_SYMBOL_GPL vmlinux 0x63790846 pm_runtime_enable +EXPORT_SYMBOL_GPL vmlinux 0x63836e27 tcp_set_state +EXPORT_SYMBOL_GPL vmlinux 0x638a9653 memory_add_physaddr_to_nid +EXPORT_SYMBOL_GPL vmlinux 0x638aff11 proc_douintvec_minmax +EXPORT_SYMBOL_GPL vmlinux 0x638ea99a sk_setup_caps +EXPORT_SYMBOL_GPL vmlinux 0x6398b4de devlink_resource_occ_get_unregister +EXPORT_SYMBOL_GPL vmlinux 0x63b12f6c efivar_entry_size +EXPORT_SYMBOL_GPL vmlinux 0x63b78ee0 genphy_c45_read_lpa +EXPORT_SYMBOL_GPL vmlinux 0x63bc8be0 wakeup_sources_walk_next +EXPORT_SYMBOL_GPL vmlinux 0x63c08029 clk_bulk_unprepare +EXPORT_SYMBOL_GPL vmlinux 0x63c7f270 proc_create_net_single_write +EXPORT_SYMBOL_GPL vmlinux 0x63c8fd2b hv_setup_stimer0_irq +EXPORT_SYMBOL_GPL vmlinux 0x63ea80b3 cper_mem_err_type_str +EXPORT_SYMBOL_GPL vmlinux 0x64005c69 acpi_subsys_runtime_suspend +EXPORT_SYMBOL_GPL vmlinux 0x640ab48f for_each_kernel_tracepoint +EXPORT_SYMBOL_GPL vmlinux 0x640acb79 dev_pm_opp_attach_genpd +EXPORT_SYMBOL_GPL vmlinux 0x64192d07 crypto_default_rng +EXPORT_SYMBOL_GPL vmlinux 0x641eedad __clk_hw_register_mux +EXPORT_SYMBOL_GPL vmlinux 0x64225bb9 ata_sas_port_resume +EXPORT_SYMBOL_GPL vmlinux 0x6441a99e crypto_register_ahashes +EXPORT_SYMBOL_GPL vmlinux 0x644691e2 ata_sas_slave_configure +EXPORT_SYMBOL_GPL vmlinux 0x645d8631 thermal_add_hwmon_sysfs +EXPORT_SYMBOL_GPL vmlinux 0x64891240 fat_free_clusters +EXPORT_SYMBOL_GPL vmlinux 0x64925270 __dax_synchronous +EXPORT_SYMBOL_GPL vmlinux 0x6499b529 usb_disable_lpm +EXPORT_SYMBOL_GPL vmlinux 0x64a62e11 acpi_processor_ffh_cstate_enter +EXPORT_SYMBOL_GPL vmlinux 0x64cf5c2f pinctrl_utils_add_map_mux +EXPORT_SYMBOL_GPL vmlinux 0x64d35aec ping_close +EXPORT_SYMBOL_GPL vmlinux 0x64d3cc4e xas_load +EXPORT_SYMBOL_GPL vmlinux 0x64e27c4f synth_event_delete +EXPORT_SYMBOL_GPL vmlinux 0x64f36620 dax_flush +EXPORT_SYMBOL_GPL vmlinux 0x64faf25c vprintk_default +EXPORT_SYMBOL_GPL vmlinux 0x64fe0dcf device_create +EXPORT_SYMBOL_GPL vmlinux 0x6502d9c2 xenbus_scanf +EXPORT_SYMBOL_GPL vmlinux 0x6504cda6 dev_pm_opp_put_regulators +EXPORT_SYMBOL_GPL vmlinux 0x65092552 nd_blk_region_to_dimm +EXPORT_SYMBOL_GPL vmlinux 0x651e624a __hvc_resize +EXPORT_SYMBOL_GPL vmlinux 0x6527a231 dbgp_external_startup +EXPORT_SYMBOL_GPL vmlinux 0x654fbc6d nf_nat_hook +EXPORT_SYMBOL_GPL vmlinux 0x65529064 devfreq_cooling_unregister +EXPORT_SYMBOL_GPL vmlinux 0x656bfe47 pinctrl_get_group_pins +EXPORT_SYMBOL_GPL vmlinux 0x656c3d81 edac_pci_release_generic_ctl +EXPORT_SYMBOL_GPL vmlinux 0x65704d22 hv_stimer_cleanup +EXPORT_SYMBOL_GPL vmlinux 0x65719389 inet6_hash_connect +EXPORT_SYMBOL_GPL vmlinux 0x6578e1d2 tty_ldisc_flush +EXPORT_SYMBOL_GPL vmlinux 0x65824d94 mmu_interval_read_begin +EXPORT_SYMBOL_GPL vmlinux 0x659e63f8 tracepoint_probe_register +EXPORT_SYMBOL_GPL vmlinux 0x65b5c15e tty_ldisc_ref +EXPORT_SYMBOL_GPL vmlinux 0x65be6c71 uart_handle_cts_change +EXPORT_SYMBOL_GPL vmlinux 0x65ccb6f0 call_netevent_notifiers +EXPORT_SYMBOL_GPL vmlinux 0x661601de sprint_symbol +EXPORT_SYMBOL_GPL vmlinux 0x6636c3c9 irq_set_vcpu_affinity +EXPORT_SYMBOL_GPL vmlinux 0x663bb448 devlink_fmsg_obj_nest_end +EXPORT_SYMBOL_GPL vmlinux 0x6656ee49 page_reporting_register +EXPORT_SYMBOL_GPL vmlinux 0x665b0ad3 dma_async_device_channel_register +EXPORT_SYMBOL_GPL vmlinux 0x665cf489 get_user_pages_fast_only +EXPORT_SYMBOL_GPL vmlinux 0x665e92a0 clk_set_duty_cycle +EXPORT_SYMBOL_GPL vmlinux 0x666b755a __tracepoint_xdp_exception +EXPORT_SYMBOL_GPL vmlinux 0x666d4944 xenbus_watch_path +EXPORT_SYMBOL_GPL vmlinux 0x66775c39 sysfs_create_link_nowarn +EXPORT_SYMBOL_GPL vmlinux 0x6679ada7 devm_pinctrl_register +EXPORT_SYMBOL_GPL vmlinux 0x668402aa crypto_put_default_rng +EXPORT_SYMBOL_GPL vmlinux 0x6687a146 regmap_get_val_bytes +EXPORT_SYMBOL_GPL vmlinux 0x668de81f iommu_domain_get_attr +EXPORT_SYMBOL_GPL vmlinux 0x669218db iomap_truncate_page +EXPORT_SYMBOL_GPL vmlinux 0x66a6c061 tracepoint_probe_register_prio +EXPORT_SYMBOL_GPL vmlinux 0x66ae4727 mdio_bus_init +EXPORT_SYMBOL_GPL vmlinux 0x66b26b2b clk_hw_unregister_divider +EXPORT_SYMBOL_GPL vmlinux 0x66b97421 sfp_link_up +EXPORT_SYMBOL_GPL vmlinux 0x66bd3a45 key_type_trusted +EXPORT_SYMBOL_GPL vmlinux 0x66d2e4ad dev_pm_set_dedicated_wake_irq +EXPORT_SYMBOL_GPL vmlinux 0x66d53da6 __pci_hp_register +EXPORT_SYMBOL_GPL vmlinux 0x66d63d78 rdev_get_id +EXPORT_SYMBOL_GPL vmlinux 0x66d87d38 symbol_put_addr +EXPORT_SYMBOL_GPL vmlinux 0x66ee7ec7 __bio_try_merge_page +EXPORT_SYMBOL_GPL vmlinux 0x670d7eef gpiochip_get_desc +EXPORT_SYMBOL_GPL vmlinux 0x67212fe3 pci_set_host_bridge_release +EXPORT_SYMBOL_GPL vmlinux 0x6725893c usb_get_dr_mode +EXPORT_SYMBOL_GPL vmlinux 0x67351af6 gnttab_dma_free_pages +EXPORT_SYMBOL_GPL vmlinux 0x6735c519 phy_exit +EXPORT_SYMBOL_GPL vmlinux 0x6735d56e tcp_ca_get_name_by_key +EXPORT_SYMBOL_GPL vmlinux 0x6739a503 balloon_set_new_target +EXPORT_SYMBOL_GPL vmlinux 0x6747dbd7 dma_request_chan_by_mask +EXPORT_SYMBOL_GPL vmlinux 0x67482451 root_device_unregister +EXPORT_SYMBOL_GPL vmlinux 0x674a4af6 irq_domain_free_fwnode +EXPORT_SYMBOL_GPL vmlinux 0x676849ff page_endio +EXPORT_SYMBOL_GPL vmlinux 0x6790ebd3 mce_is_memory_error +EXPORT_SYMBOL_GPL vmlinux 0x6792e25a __tracepoint_unmap +EXPORT_SYMBOL_GPL vmlinux 0x67955ce6 profile_hits +EXPORT_SYMBOL_GPL vmlinux 0x679f3d95 _copy_mc_to_iter +EXPORT_SYMBOL_GPL vmlinux 0x67aa44f1 phy_restore_page +EXPORT_SYMBOL_GPL vmlinux 0x67b21f14 crypto_unregister_acomp +EXPORT_SYMBOL_GPL vmlinux 0x67c732a1 i2c_acpi_new_device +EXPORT_SYMBOL_GPL vmlinux 0x67d519bc device_store_bool +EXPORT_SYMBOL_GPL vmlinux 0x67da9f7c sha512_zero_message_hash +EXPORT_SYMBOL_GPL vmlinux 0x67dcd76b uv_setup_irq +EXPORT_SYMBOL_GPL vmlinux 0x67e06005 sdev_evt_send_simple +EXPORT_SYMBOL_GPL vmlinux 0x67ff61c2 irq_find_matching_fwspec +EXPORT_SYMBOL_GPL vmlinux 0x67ff86a3 devm_regulator_register_supply_alias +EXPORT_SYMBOL_GPL vmlinux 0x6800056e xfrm_dev_offload_ok +EXPORT_SYMBOL_GPL vmlinux 0x680f86c8 ata_bmdma_error_handler +EXPORT_SYMBOL_GPL vmlinux 0x6815cf49 switchdev_port_obj_add +EXPORT_SYMBOL_GPL vmlinux 0x68280632 cleanup_srcu_struct +EXPORT_SYMBOL_GPL vmlinux 0x682ff057 ring_buffer_commit_overrun_cpu +EXPORT_SYMBOL_GPL vmlinux 0x68422ed8 security_path_rmdir +EXPORT_SYMBOL_GPL vmlinux 0x68491940 md_bitmap_resize +EXPORT_SYMBOL_GPL vmlinux 0x684f2433 sata_sff_hardreset +EXPORT_SYMBOL_GPL vmlinux 0x6868074d device_property_read_string +EXPORT_SYMBOL_GPL vmlinux 0x6870bca2 synchronize_srcu +EXPORT_SYMBOL_GPL vmlinux 0x6875c4cb iommu_device_sysfs_remove +EXPORT_SYMBOL_GPL vmlinux 0x687c88a3 usb_anchor_urb +EXPORT_SYMBOL_GPL vmlinux 0x687f5707 thp_get_unmapped_area +EXPORT_SYMBOL_GPL vmlinux 0x688e71b7 shmem_file_setup +EXPORT_SYMBOL_GPL vmlinux 0x68952493 rcu_note_context_switch +EXPORT_SYMBOL_GPL vmlinux 0x689b69ba gpiod_put +EXPORT_SYMBOL_GPL vmlinux 0x68b016c6 __xenmem_reservation_va_mapping_update +EXPORT_SYMBOL_GPL vmlinux 0x68c469c9 pci_msi_mask_irq +EXPORT_SYMBOL_GPL vmlinux 0x68d28fd2 usb_urb_ep_type_check +EXPORT_SYMBOL_GPL vmlinux 0x68d7f3f5 adp5520_write +EXPORT_SYMBOL_GPL vmlinux 0x68d8cf93 perf_get_aux +EXPORT_SYMBOL_GPL vmlinux 0x690084d9 devm_pinctrl_get +EXPORT_SYMBOL_GPL vmlinux 0x690f585e phy_basic_ports_array +EXPORT_SYMBOL_GPL vmlinux 0x691cc390 dev_pm_opp_get_opp_count +EXPORT_SYMBOL_GPL vmlinux 0x69278911 acpi_subsys_prepare +EXPORT_SYMBOL_GPL vmlinux 0x693caa52 xenbus_dev_fatal +EXPORT_SYMBOL_GPL vmlinux 0x6954dcaa blk_mq_flush_busy_ctxs +EXPORT_SYMBOL_GPL vmlinux 0x6958ae23 dax_get_by_host +EXPORT_SYMBOL_GPL vmlinux 0x695cc63f fwnode_graph_get_endpoint_by_id +EXPORT_SYMBOL_GPL vmlinux 0x695e285b sdev_evt_send +EXPORT_SYMBOL_GPL vmlinux 0x696340a5 __i2c_board_lock +EXPORT_SYMBOL_GPL vmlinux 0x69645862 vfs_writef +EXPORT_SYMBOL_GPL vmlinux 0x696cda2b vfs_setxattr +EXPORT_SYMBOL_GPL vmlinux 0x696d7e0b l1tf_mitigation +EXPORT_SYMBOL_GPL vmlinux 0x697c5d0d tracing_snapshot_alloc +EXPORT_SYMBOL_GPL vmlinux 0x697d15f7 devm_device_add_groups +EXPORT_SYMBOL_GPL vmlinux 0x69aab454 device_property_read_u32_array +EXPORT_SYMBOL_GPL vmlinux 0x69ae2569 switchdev_handle_port_attr_set +EXPORT_SYMBOL_GPL vmlinux 0x69b24b27 cpufreq_freq_attr_scaling_available_freqs +EXPORT_SYMBOL_GPL vmlinux 0x69e683de uuid_gen +EXPORT_SYMBOL_GPL vmlinux 0x69eb2574 spi_setup +EXPORT_SYMBOL_GPL vmlinux 0x69ee2220 linear_range_get_selector_high +EXPORT_SYMBOL_GPL vmlinux 0x69fa7f48 irq_gc_ack_set_bit +EXPORT_SYMBOL_GPL vmlinux 0x6a05b65b fb_videomode_from_videomode +EXPORT_SYMBOL_GPL vmlinux 0x6a1733eb iommu_group_unregister_notifier +EXPORT_SYMBOL_GPL vmlinux 0x6a17d2b7 ip_fib_metrics_init +EXPORT_SYMBOL_GPL vmlinux 0x6a1c5c7b fuse_request_end +EXPORT_SYMBOL_GPL vmlinux 0x6a3e1e4e raw_seq_stop +EXPORT_SYMBOL_GPL vmlinux 0x6a3fef57 virtqueue_detach_unused_buf +EXPORT_SYMBOL_GPL vmlinux 0x6a421062 memory_failure_queue +EXPORT_SYMBOL_GPL vmlinux 0x6a460dc5 schedule_hrtimeout +EXPORT_SYMBOL_GPL vmlinux 0x6a4c8bdc kthread_use_mm +EXPORT_SYMBOL_GPL vmlinux 0x6a4f623b mmu_notifier_synchronize +EXPORT_SYMBOL_GPL vmlinux 0x6a506ed5 nf_route +EXPORT_SYMBOL_GPL vmlinux 0x6a5e2bde __cookie_v6_init_sequence +EXPORT_SYMBOL_GPL vmlinux 0x6a6cb9d5 gpiod_get_value_cansleep +EXPORT_SYMBOL_GPL vmlinux 0x6a7213b3 pinctrl_get +EXPORT_SYMBOL_GPL vmlinux 0x6a72f299 irq_domain_associate_many +EXPORT_SYMBOL_GPL vmlinux 0x6a8441be cpci_hp_start +EXPORT_SYMBOL_GPL vmlinux 0x6a9f8663 skb_clone_tx_timestamp +EXPORT_SYMBOL_GPL vmlinux 0x6aa2a877 xenbus_printf +EXPORT_SYMBOL_GPL vmlinux 0x6aad9152 xen_set_callback_via +EXPORT_SYMBOL_GPL vmlinux 0x6aadb1a9 mctrl_gpio_init_noauto +EXPORT_SYMBOL_GPL vmlinux 0x6abb534c crypto_stats_aead_encrypt +EXPORT_SYMBOL_GPL vmlinux 0x6acc6445 phy_set_mode_ext +EXPORT_SYMBOL_GPL vmlinux 0x6acd408c __vfs_removexattr_locked +EXPORT_SYMBOL_GPL vmlinux 0x6ae5db7e gpiod_set_value +EXPORT_SYMBOL_GPL vmlinux 0x6ae75165 perf_tp_event +EXPORT_SYMBOL_GPL vmlinux 0x6af3cf8b tps80031_ext_power_req_config +EXPORT_SYMBOL_GPL vmlinux 0x6af914a9 devres_get +EXPORT_SYMBOL_GPL vmlinux 0x6b0d3f55 pwm_capture +EXPORT_SYMBOL_GPL vmlinux 0x6b0dc565 xen_set_irq_priority +EXPORT_SYMBOL_GPL vmlinux 0x6b22926b irq_work_sync +EXPORT_SYMBOL_GPL vmlinux 0x6b26cbe7 led_trigger_register +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 0x6b3e629b xdp_attachment_flags_ok +EXPORT_SYMBOL_GPL vmlinux 0x6b413c9b sfp_link_down +EXPORT_SYMBOL_GPL vmlinux 0x6b66a6ae da903x_writes +EXPORT_SYMBOL_GPL vmlinux 0x6b68f0d5 iommu_attach_group +EXPORT_SYMBOL_GPL vmlinux 0x6b7a4335 hyperv_cleanup +EXPORT_SYMBOL_GPL vmlinux 0x6b81c38b power_supply_unreg_notifier +EXPORT_SYMBOL_GPL vmlinux 0x6b899ae8 bd_unlink_disk_holder +EXPORT_SYMBOL_GPL vmlinux 0x6b971a1c devlink_params_unpublish +EXPORT_SYMBOL_GPL vmlinux 0x6ba36c6a hwpoison_filter_flags_value +EXPORT_SYMBOL_GPL vmlinux 0x6ba4d4bf sfp_add_phy +EXPORT_SYMBOL_GPL vmlinux 0x6bb8bce9 device_create_file +EXPORT_SYMBOL_GPL vmlinux 0x6bc4aa3e spi_mem_dirmap_create +EXPORT_SYMBOL_GPL vmlinux 0x6bce5988 devm_device_remove_groups +EXPORT_SYMBOL_GPL vmlinux 0x6bd1aa56 stack_trace_save +EXPORT_SYMBOL_GPL vmlinux 0x6bd570c6 crypto_cipher_decrypt_one +EXPORT_SYMBOL_GPL vmlinux 0x6bdef35c acpi_ec_mark_gpe_for_wake +EXPORT_SYMBOL_GPL vmlinux 0x6be21c2f tracing_snapshot_cond_disable +EXPORT_SYMBOL_GPL vmlinux 0x6be69ba4 gpiod_get_raw_value_cansleep +EXPORT_SYMBOL_GPL vmlinux 0x6be97b29 mbox_chan_received_data +EXPORT_SYMBOL_GPL vmlinux 0x6bec6891 __pm_runtime_disable +EXPORT_SYMBOL_GPL vmlinux 0x6bed5237 pm_generic_poweroff_late +EXPORT_SYMBOL_GPL vmlinux 0x6bfc2853 crypto_drop_spawn +EXPORT_SYMBOL_GPL vmlinux 0x6c23cc0f of_icc_get_by_index +EXPORT_SYMBOL_GPL vmlinux 0x6c23ddfd xen_set_affinity_evtchn +EXPORT_SYMBOL_GPL vmlinux 0x6c27970b devm_power_supply_register +EXPORT_SYMBOL_GPL vmlinux 0x6c3836d0 ip6_datagram_connect +EXPORT_SYMBOL_GPL vmlinux 0x6c389761 acpi_bus_get_private_data +EXPORT_SYMBOL_GPL vmlinux 0x6c3b612b acpi_ec_add_query_handler +EXPORT_SYMBOL_GPL vmlinux 0x6c3f70e0 guid_gen +EXPORT_SYMBOL_GPL vmlinux 0x6c4b6684 reset_control_assert +EXPORT_SYMBOL_GPL vmlinux 0x6c4ea13e devm_regulator_register +EXPORT_SYMBOL_GPL vmlinux 0x6c5a6c08 blkdev_report_zones +EXPORT_SYMBOL_GPL vmlinux 0x6c655913 register_acpi_hed_notifier +EXPORT_SYMBOL_GPL vmlinux 0x6c6eee75 blk_lld_busy +EXPORT_SYMBOL_GPL vmlinux 0x6c7eb0a6 __nf_ip6_route +EXPORT_SYMBOL_GPL vmlinux 0x6c808062 da903x_set_bits +EXPORT_SYMBOL_GPL vmlinux 0x6ca4bf88 async_synchronize_full_domain +EXPORT_SYMBOL_GPL vmlinux 0x6cad5930 firmware_kobj +EXPORT_SYMBOL_GPL vmlinux 0x6cb0708c virtqueue_get_desc_addr +EXPORT_SYMBOL_GPL vmlinux 0x6cf02883 pinctrl_select_default_state +EXPORT_SYMBOL_GPL vmlinux 0x6cf5c443 virtqueue_kick_prepare +EXPORT_SYMBOL_GPL vmlinux 0x6d0ae550 pinctrl_gpio_request +EXPORT_SYMBOL_GPL vmlinux 0x6d0d9dd5 wm5110_spi_regmap +EXPORT_SYMBOL_GPL vmlinux 0x6d13f894 arizona_clk32k_disable +EXPORT_SYMBOL_GPL vmlinux 0x6d27617c regulator_suspend_disable +EXPORT_SYMBOL_GPL vmlinux 0x6d2c1c8e blk_mq_pci_map_queues +EXPORT_SYMBOL_GPL vmlinux 0x6d2e899d mce_usable_address +EXPORT_SYMBOL_GPL vmlinux 0x6d2fc5a6 net_namespace_list +EXPORT_SYMBOL_GPL vmlinux 0x6d3baf54 eventfd_ctx_fileget +EXPORT_SYMBOL_GPL vmlinux 0x6d56b9d1 skb_mpls_push +EXPORT_SYMBOL_GPL vmlinux 0x6d5e2292 __devm_pci_epc_create +EXPORT_SYMBOL_GPL vmlinux 0x6d5fa846 blkdev_read_iter +EXPORT_SYMBOL_GPL vmlinux 0x6d602e43 virtio_config_disable +EXPORT_SYMBOL_GPL vmlinux 0x6d68147c sysfs_remove_group +EXPORT_SYMBOL_GPL vmlinux 0x6d6a07b4 lwtunnel_get_encap_size +EXPORT_SYMBOL_GPL vmlinux 0x6d6fec1f ktime_mono_to_any +EXPORT_SYMBOL_GPL vmlinux 0x6d7cc885 generic_file_buffered_read +EXPORT_SYMBOL_GPL vmlinux 0x6d7e951e rcu_exp_batches_completed +EXPORT_SYMBOL_GPL vmlinux 0x6d90f288 sk_msg_return +EXPORT_SYMBOL_GPL vmlinux 0x6d9ee2a0 __request_percpu_irq +EXPORT_SYMBOL_GPL vmlinux 0x6db27f64 wm831x_auxadc_read_uv +EXPORT_SYMBOL_GPL vmlinux 0x6db49b3f dw_pcie_ep_init_notify +EXPORT_SYMBOL_GPL vmlinux 0x6dbaafd3 put_old_timespec32 +EXPORT_SYMBOL_GPL vmlinux 0x6dd011e9 scsi_host_unblock +EXPORT_SYMBOL_GPL vmlinux 0x6dfa85da rio_add_mport_pw_handler +EXPORT_SYMBOL_GPL vmlinux 0x6e00fcfb modify_ftrace_direct +EXPORT_SYMBOL_GPL vmlinux 0x6e0fc192 gpiochip_is_requested +EXPORT_SYMBOL_GPL vmlinux 0x6e12c648 device_add_properties +EXPORT_SYMBOL_GPL vmlinux 0x6e1cf471 regulator_set_voltage_time_sel +EXPORT_SYMBOL_GPL vmlinux 0x6e3ff83a edac_device_alloc_index +EXPORT_SYMBOL_GPL vmlinux 0x6e4bc056 spi_res_free +EXPORT_SYMBOL_GPL vmlinux 0x6e63c2dc extcon_dev_free +EXPORT_SYMBOL_GPL vmlinux 0x6e6654a7 ata_scsi_dma_need_drain +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 0x6e8d006b i2c_dw_configure_master +EXPORT_SYMBOL_GPL vmlinux 0x6e9be490 bpf_trace_run8 +EXPORT_SYMBOL_GPL vmlinux 0x6ea96ea4 tpm_tis_resume +EXPORT_SYMBOL_GPL vmlinux 0x6ebe366f ktime_get_mono_fast_ns +EXPORT_SYMBOL_GPL vmlinux 0x6ec066e3 task_active_pid_ns +EXPORT_SYMBOL_GPL vmlinux 0x6ec0e6ec spi_new_device +EXPORT_SYMBOL_GPL vmlinux 0x6ecb09cd uart_console_device +EXPORT_SYMBOL_GPL vmlinux 0x6ed03a2d tps65912_device_exit +EXPORT_SYMBOL_GPL vmlinux 0x6ee8c94b sfp_get_module_eeprom +EXPORT_SYMBOL_GPL vmlinux 0x6ee92e4b wm8400_reset_codec_reg_cache +EXPORT_SYMBOL_GPL vmlinux 0x6ef6b54f ktime_get_boot_fast_ns +EXPORT_SYMBOL_GPL vmlinux 0x6ef75438 pm_clk_resume +EXPORT_SYMBOL_GPL vmlinux 0x6f0e82f3 firmware_request_cache +EXPORT_SYMBOL_GPL vmlinux 0x6f12560a get_old_timespec32 +EXPORT_SYMBOL_GPL vmlinux 0x6f3eae58 acpi_device_modalias +EXPORT_SYMBOL_GPL vmlinux 0x6f44921a devlink_is_reload_failed +EXPORT_SYMBOL_GPL vmlinux 0x6f530794 nvdimm_name +EXPORT_SYMBOL_GPL vmlinux 0x6f582541 proc_mkdir_data +EXPORT_SYMBOL_GPL vmlinux 0x6f743bba ata_cable_ignore +EXPORT_SYMBOL_GPL vmlinux 0x6f922dd2 regmap_get_max_register +EXPORT_SYMBOL_GPL vmlinux 0x6f947b3e efi_mm +EXPORT_SYMBOL_GPL vmlinux 0x6f9d840d rio_release_outb_dbell +EXPORT_SYMBOL_GPL vmlinux 0x6f9e763b timecounter_read +EXPORT_SYMBOL_GPL vmlinux 0x6fa5398b tty_ldisc_ref_wait +EXPORT_SYMBOL_GPL vmlinux 0x6fc084d5 gpiod_set_config +EXPORT_SYMBOL_GPL vmlinux 0x6fcbf931 gnttab_unmap_refs +EXPORT_SYMBOL_GPL vmlinux 0x6fcef6ab ring_buffer_reset +EXPORT_SYMBOL_GPL vmlinux 0x6fd1accc bio_release_pages +EXPORT_SYMBOL_GPL vmlinux 0x6fd3ca81 ata_sff_thaw +EXPORT_SYMBOL_GPL vmlinux 0x6fd78e87 badblocks_set +EXPORT_SYMBOL_GPL vmlinux 0x6fe96c42 platform_irq_count +EXPORT_SYMBOL_GPL vmlinux 0x6ff607b6 crypto_get_default_rng +EXPORT_SYMBOL_GPL vmlinux 0x6ff617ce ata_host_suspend +EXPORT_SYMBOL_GPL vmlinux 0x6ffce680 x86_cpu_has_min_microcode_rev +EXPORT_SYMBOL_GPL vmlinux 0x6ffffd38 acpi_get_pci_dev +EXPORT_SYMBOL_GPL vmlinux 0x7000e061 crypto_register_rngs +EXPORT_SYMBOL_GPL vmlinux 0x7006586e iommu_get_group_resv_regions +EXPORT_SYMBOL_GPL vmlinux 0x700bacef fib_new_table +EXPORT_SYMBOL_GPL vmlinux 0x700bf612 crypto_mod_put +EXPORT_SYMBOL_GPL vmlinux 0x70171f27 gpiod_get_raw_array_value +EXPORT_SYMBOL_GPL vmlinux 0x703e9cee __blkg_prfill_rwstat +EXPORT_SYMBOL_GPL vmlinux 0x70576fee acpi_processor_ffh_cstate_probe +EXPORT_SYMBOL_GPL vmlinux 0x70603c82 debugfs_create_u32 +EXPORT_SYMBOL_GPL vmlinux 0x7061a188 arizona_clk32k_enable +EXPORT_SYMBOL_GPL vmlinux 0x7071f827 dio_end_io +EXPORT_SYMBOL_GPL vmlinux 0x7073c04f phy_10_100_features_array +EXPORT_SYMBOL_GPL vmlinux 0x70a224ee device_match_devt +EXPORT_SYMBOL_GPL vmlinux 0x70aff899 devm_irq_setup_generic_chip +EXPORT_SYMBOL_GPL vmlinux 0x70b79945 cpci_hp_unregister_bus +EXPORT_SYMBOL_GPL vmlinux 0x70b7c07a gnttab_grant_foreign_transfer +EXPORT_SYMBOL_GPL vmlinux 0x70c02044 crypto_cipher_setkey +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 0x70d6efd7 xen_remap_vma_range +EXPORT_SYMBOL_GPL vmlinux 0x70e52835 rtc_initialize_alarm +EXPORT_SYMBOL_GPL vmlinux 0x70e8177c device_del +EXPORT_SYMBOL_GPL vmlinux 0x70f5332f sfi_table_parse +EXPORT_SYMBOL_GPL vmlinux 0x710c73b6 crypto_unregister_notifier +EXPORT_SYMBOL_GPL vmlinux 0x71316503 kmsg_dump_get_line +EXPORT_SYMBOL_GPL vmlinux 0x7132fe94 fib_alias_hw_flags_set +EXPORT_SYMBOL_GPL vmlinux 0x7133d99e iommu_group_get +EXPORT_SYMBOL_GPL vmlinux 0x714833dd ata_port_freeze +EXPORT_SYMBOL_GPL vmlinux 0x714a0756 xdp_rxq_info_is_reg +EXPORT_SYMBOL_GPL vmlinux 0x716265c7 debugfs_initialized +EXPORT_SYMBOL_GPL vmlinux 0x71650819 add_bootloader_randomness +EXPORT_SYMBOL_GPL vmlinux 0x716777b6 pci_epc_stop +EXPORT_SYMBOL_GPL vmlinux 0x71740a35 inet6_sk_rebuild_header +EXPORT_SYMBOL_GPL vmlinux 0x71751480 power_supply_get_by_name +EXPORT_SYMBOL_GPL vmlinux 0x7177a1fe ata_scsi_unlock_native_capacity +EXPORT_SYMBOL_GPL vmlinux 0x7181db30 atomic_notifier_chain_unregister +EXPORT_SYMBOL_GPL vmlinux 0x7191c84c xfrm_audit_state_add +EXPORT_SYMBOL_GPL vmlinux 0x719e17ff clk_notifier_unregister +EXPORT_SYMBOL_GPL vmlinux 0x71b5a388 crypto_alloc_base +EXPORT_SYMBOL_GPL vmlinux 0x71d3c755 xhci_ext_cap_init +EXPORT_SYMBOL_GPL vmlinux 0x71eae240 pci_epc_write_header +EXPORT_SYMBOL_GPL vmlinux 0x71eb2925 debugfs_create_file +EXPORT_SYMBOL_GPL vmlinux 0x71ed2ef0 device_dma_supported +EXPORT_SYMBOL_GPL vmlinux 0x71f6670b __cookie_v6_check +EXPORT_SYMBOL_GPL vmlinux 0x71f7637f subsys_find_device_by_id +EXPORT_SYMBOL_GPL vmlinux 0x720222f2 nf_ip_route +EXPORT_SYMBOL_GPL vmlinux 0x7214dcfc sec_irq_init +EXPORT_SYMBOL_GPL vmlinux 0x72532841 security_path_chmod +EXPORT_SYMBOL_GPL vmlinux 0x725d822c debugfs_write_file_bool +EXPORT_SYMBOL_GPL vmlinux 0x7260f6b1 ip_route_output_tunnel +EXPORT_SYMBOL_GPL vmlinux 0x72613590 clk_hw_get_flags +EXPORT_SYMBOL_GPL vmlinux 0x7262ff2b dev_pm_opp_get_max_transition_latency +EXPORT_SYMBOL_GPL vmlinux 0x72745269 sk_psock_drop +EXPORT_SYMBOL_GPL vmlinux 0x7278d328 all_vm_events +EXPORT_SYMBOL_GPL vmlinux 0x728203a2 input_ff_erase +EXPORT_SYMBOL_GPL vmlinux 0x7282c55c dst_cache_set_ip6 +EXPORT_SYMBOL_GPL vmlinux 0x72942126 ata_pci_device_do_resume +EXPORT_SYMBOL_GPL vmlinux 0x72970c83 sata_pmp_port_ops +EXPORT_SYMBOL_GPL vmlinux 0x729c24cb fwnode_get_name +EXPORT_SYMBOL_GPL vmlinux 0x729cb6b3 gpiochip_disable_irq +EXPORT_SYMBOL_GPL vmlinux 0x72a37d7a sched_setscheduler +EXPORT_SYMBOL_GPL vmlinux 0x72b0e5f5 crypto_unregister_templates +EXPORT_SYMBOL_GPL vmlinux 0x72bb51e4 clk_hw_get_name +EXPORT_SYMBOL_GPL vmlinux 0x72c1aeeb __tracepoint_map +EXPORT_SYMBOL_GPL vmlinux 0x72d267dc nvmem_del_cell_lookups +EXPORT_SYMBOL_GPL vmlinux 0x73119e0a regulator_get_exclusive +EXPORT_SYMBOL_GPL vmlinux 0x7313b4ac spi_delay_to_ns +EXPORT_SYMBOL_GPL vmlinux 0x73149634 sdio_retune_release +EXPORT_SYMBOL_GPL vmlinux 0x7317fae8 __ata_ehi_push_desc +EXPORT_SYMBOL_GPL vmlinux 0x731dba7a xen_domain_type +EXPORT_SYMBOL_GPL vmlinux 0x73224431 scsi_host_block +EXPORT_SYMBOL_GPL vmlinux 0x732852fe xenbus_transaction_end +EXPORT_SYMBOL_GPL vmlinux 0x7337d7ed battery_hook_unregister +EXPORT_SYMBOL_GPL vmlinux 0x7349d215 irq_alloc_generic_chip +EXPORT_SYMBOL_GPL vmlinux 0x7380da94 nvdimm_bus_unregister +EXPORT_SYMBOL_GPL vmlinux 0x7381287f trace_handle_return +EXPORT_SYMBOL_GPL vmlinux 0x73869c87 regulator_map_voltage_linear +EXPORT_SYMBOL_GPL vmlinux 0x738fe32b amd_get_nodes_per_socket +EXPORT_SYMBOL_GPL vmlinux 0x7391776c console_drivers +EXPORT_SYMBOL_GPL vmlinux 0x73953379 iptunnel_metadata_reply +EXPORT_SYMBOL_GPL vmlinux 0x73a48b4a ata_sff_std_ports +EXPORT_SYMBOL_GPL vmlinux 0x73c2554f __iowrite64_copy +EXPORT_SYMBOL_GPL vmlinux 0x73c7742e alloc_dax_region +EXPORT_SYMBOL_GPL vmlinux 0x73cc8631 oiap +EXPORT_SYMBOL_GPL vmlinux 0x73d05853 devm_platform_ioremap_resource_byname +EXPORT_SYMBOL_GPL vmlinux 0x73f33229 register_trace_event +EXPORT_SYMBOL_GPL vmlinux 0x73f6c7f3 device_connection_find +EXPORT_SYMBOL_GPL vmlinux 0x73ff1237 fwnode_property_present +EXPORT_SYMBOL_GPL vmlinux 0x7427eb78 xenbus_probe_node +EXPORT_SYMBOL_GPL vmlinux 0x743a165e ata_pack_xfermask +EXPORT_SYMBOL_GPL vmlinux 0x74457e56 apei_resources_fini +EXPORT_SYMBOL_GPL vmlinux 0x7452adff user_return_notifier_register +EXPORT_SYMBOL_GPL vmlinux 0x74859eb6 platform_get_irq_byname +EXPORT_SYMBOL_GPL vmlinux 0x7492942d kthread_unuse_mm +EXPORT_SYMBOL_GPL vmlinux 0x74991d27 regulator_bulk_register_supply_alias +EXPORT_SYMBOL_GPL vmlinux 0x74b1dabd crypto_register_scomps +EXPORT_SYMBOL_GPL vmlinux 0x74b5ea68 lcm_not_zero +EXPORT_SYMBOL_GPL vmlinux 0x74baf17a tracing_is_on +EXPORT_SYMBOL_GPL vmlinux 0x74bd26c8 elv_rqhash_add +EXPORT_SYMBOL_GPL vmlinux 0x74c7bffa stack_trace_snprint +EXPORT_SYMBOL_GPL vmlinux 0x74cf9b97 dm_put +EXPORT_SYMBOL_GPL vmlinux 0x74da17c9 vfs_getxattr_alloc +EXPORT_SYMBOL_GPL vmlinux 0x74e73871 housekeeping_overridden +EXPORT_SYMBOL_GPL vmlinux 0x74f26c2e regulator_disable_deferred +EXPORT_SYMBOL_GPL vmlinux 0x74ff7aac dev_coredumpsg +EXPORT_SYMBOL_GPL vmlinux 0x7502da4d dm_get_queue_limits +EXPORT_SYMBOL_GPL vmlinux 0x750f85c3 blk_mq_bio_list_merge +EXPORT_SYMBOL_GPL vmlinux 0x75133f6e visitor128 +EXPORT_SYMBOL_GPL vmlinux 0x751766b1 ata_pci_bmdma_prepare_host +EXPORT_SYMBOL_GPL vmlinux 0x75180af4 gpiochip_irqchip_add_key +EXPORT_SYMBOL_GPL vmlinux 0x7521afb6 leave_mm +EXPORT_SYMBOL_GPL vmlinux 0x7522f3ba irq_modify_status +EXPORT_SYMBOL_GPL vmlinux 0x753d843d nvdimm_cmd_mask +EXPORT_SYMBOL_GPL vmlinux 0x7560e9b8 dev_pm_set_wake_irq +EXPORT_SYMBOL_GPL vmlinux 0x7578a177 isa_register_driver +EXPORT_SYMBOL_GPL vmlinux 0x75792186 get_xsave_addr +EXPORT_SYMBOL_GPL vmlinux 0x758670c9 gnttab_alloc_pages +EXPORT_SYMBOL_GPL vmlinux 0x75898ed3 devm_fwnode_gpiod_get_index +EXPORT_SYMBOL_GPL vmlinux 0x759be929 dev_pm_domain_attach_by_name +EXPORT_SYMBOL_GPL vmlinux 0x759bfe36 btree_destroy +EXPORT_SYMBOL_GPL vmlinux 0x75bb9371 class_compat_remove_link +EXPORT_SYMBOL_GPL vmlinux 0x75cbfb09 add_interrupt_randomness +EXPORT_SYMBOL_GPL vmlinux 0x75cfe52a tcp_reno_undo_cwnd +EXPORT_SYMBOL_GPL vmlinux 0x75d25e7e __tracepoint_napi_poll +EXPORT_SYMBOL_GPL vmlinux 0x75daec05 dma_resv_wait_timeout_rcu +EXPORT_SYMBOL_GPL vmlinux 0x75e24e20 ahash_register_instance +EXPORT_SYMBOL_GPL vmlinux 0x75e9c735 pci_ats_disabled +EXPORT_SYMBOL_GPL vmlinux 0x75f0e875 xas_store +EXPORT_SYMBOL_GPL vmlinux 0x75f9a396 crypto_register_rng +EXPORT_SYMBOL_GPL vmlinux 0x75ff075a pwmchip_add_with_polarity +EXPORT_SYMBOL_GPL vmlinux 0x7607d054 nd_tbl +EXPORT_SYMBOL_GPL vmlinux 0x760e756b pm_generic_freeze_late +EXPORT_SYMBOL_GPL vmlinux 0x76116c93 crypto_stats_akcipher_sign +EXPORT_SYMBOL_GPL vmlinux 0x7618a762 led_trigger_rename_static +EXPORT_SYMBOL_GPL vmlinux 0x761eb051 bsg_setup_queue +EXPORT_SYMBOL_GPL vmlinux 0x7623ec63 skb_splice_bits +EXPORT_SYMBOL_GPL vmlinux 0x764e8f29 sk_msg_return_zero +EXPORT_SYMBOL_GPL vmlinux 0x7658948e iommu_group_remove_device +EXPORT_SYMBOL_GPL vmlinux 0x765dab44 devlink_region_snapshot_id_get +EXPORT_SYMBOL_GPL vmlinux 0x7665a95b idr_remove +EXPORT_SYMBOL_GPL vmlinux 0x7665c9dc rio_alloc_net +EXPORT_SYMBOL_GPL vmlinux 0x7665ee72 crypto_dh_decode_key +EXPORT_SYMBOL_GPL vmlinux 0x766ae35f dma_resv_test_signaled_rcu +EXPORT_SYMBOL_GPL vmlinux 0x7674359f inet_twsk_put +EXPORT_SYMBOL_GPL vmlinux 0x7681946c unregister_pm_notifier +EXPORT_SYMBOL_GPL vmlinux 0x76c6bd9c xdp_return_frame +EXPORT_SYMBOL_GPL vmlinux 0x76d9b876 clk_set_rate +EXPORT_SYMBOL_GPL vmlinux 0x76e85b92 gnttab_request_free_callback +EXPORT_SYMBOL_GPL vmlinux 0x76eeeb0f sha384_zero_message_hash +EXPORT_SYMBOL_GPL vmlinux 0x76fa8ca7 mbox_request_channel +EXPORT_SYMBOL_GPL vmlinux 0x7710f9c4 usb_put_dev +EXPORT_SYMBOL_GPL vmlinux 0x7712771a unbind_from_irqhandler +EXPORT_SYMBOL_GPL vmlinux 0x77128066 edac_mc_del_mc +EXPORT_SYMBOL_GPL vmlinux 0x77177599 dst_cache_get_ip4 +EXPORT_SYMBOL_GPL vmlinux 0x771cc660 pwm_free +EXPORT_SYMBOL_GPL vmlinux 0x771d4943 task_cls_state +EXPORT_SYMBOL_GPL vmlinux 0x77222306 ring_buffer_read_page +EXPORT_SYMBOL_GPL vmlinux 0x7729cbdd task_handoff_register +EXPORT_SYMBOL_GPL vmlinux 0x773736da crypto_unregister_aeads +EXPORT_SYMBOL_GPL vmlinux 0x773f2713 clk_hw_unregister_mux +EXPORT_SYMBOL_GPL vmlinux 0x7744478e usb_set_device_state +EXPORT_SYMBOL_GPL vmlinux 0x7757b51a clk_unregister +EXPORT_SYMBOL_GPL vmlinux 0x776dcd45 ip_build_and_send_pkt +EXPORT_SYMBOL_GPL vmlinux 0x77757498 power_supply_class +EXPORT_SYMBOL_GPL vmlinux 0x77864e4e fs_kobj +EXPORT_SYMBOL_GPL vmlinux 0x778bd9f3 __devm_create_dev_dax +EXPORT_SYMBOL_GPL vmlinux 0x778f65a2 fib_rules_lookup +EXPORT_SYMBOL_GPL vmlinux 0x7791e066 dw_pcie_read +EXPORT_SYMBOL_GPL vmlinux 0x7797bba2 usb_get_dev +EXPORT_SYMBOL_GPL vmlinux 0x77989574 devfreq_cooling_register +EXPORT_SYMBOL_GPL vmlinux 0x77ae495d usb_speed_string +EXPORT_SYMBOL_GPL vmlinux 0x77bda8fa __unwind_start +EXPORT_SYMBOL_GPL vmlinux 0x77bdb9b6 noop_backing_dev_info +EXPORT_SYMBOL_GPL vmlinux 0x77c5f1d0 gpiochip_free_own_desc +EXPORT_SYMBOL_GPL vmlinux 0x77dcf23a devm_spi_mem_dirmap_destroy +EXPORT_SYMBOL_GPL vmlinux 0x77e75be3 sfp_bus_put +EXPORT_SYMBOL_GPL vmlinux 0x77eb2fe7 __hrtimer_get_remaining +EXPORT_SYMBOL_GPL vmlinux 0x77ecf68d memalloc_socks_key +EXPORT_SYMBOL_GPL vmlinux 0x77f51f53 usb_get_status +EXPORT_SYMBOL_GPL vmlinux 0x78041b8f byte_rev_table +EXPORT_SYMBOL_GPL vmlinux 0x780c94b6 is_skb_forwardable +EXPORT_SYMBOL_GPL vmlinux 0x782adb74 hpet_rtc_interrupt +EXPORT_SYMBOL_GPL vmlinux 0x78322a2f hrtimer_init_sleeper +EXPORT_SYMBOL_GPL vmlinux 0x7837dcc7 debugfs_file_put +EXPORT_SYMBOL_GPL vmlinux 0x7847249a ata_qc_complete_multiple +EXPORT_SYMBOL_GPL vmlinux 0x784feaf1 crypto_stats_compress +EXPORT_SYMBOL_GPL vmlinux 0x78570ce4 tty_prepare_flip_string +EXPORT_SYMBOL_GPL vmlinux 0x785a93b4 si_mem_available +EXPORT_SYMBOL_GPL vmlinux 0x7864cfeb cpci_hp_unregister_controller +EXPORT_SYMBOL_GPL vmlinux 0x787c5f10 fuse_abort_conn +EXPORT_SYMBOL_GPL vmlinux 0x787c882b lzo1x_1_compress +EXPORT_SYMBOL_GPL vmlinux 0x7882f501 hwspin_lock_request +EXPORT_SYMBOL_GPL vmlinux 0x788bfbad ring_buffer_empty +EXPORT_SYMBOL_GPL vmlinux 0x788d679b iomap_zero_range +EXPORT_SYMBOL_GPL vmlinux 0x789c73d9 rcu_cpu_stall_suppress_at_boot +EXPORT_SYMBOL_GPL vmlinux 0x78a28a29 usb_hcd_platform_shutdown +EXPORT_SYMBOL_GPL vmlinux 0x78a77449 spi_controller_suspend +EXPORT_SYMBOL_GPL vmlinux 0x78aa602e hwmon_device_register_with_groups +EXPORT_SYMBOL_GPL vmlinux 0x78ddb76b dmi_match +EXPORT_SYMBOL_GPL vmlinux 0x78ee9eec devm_phy_package_join +EXPORT_SYMBOL_GPL vmlinux 0x790be0b9 usb_bus_idr +EXPORT_SYMBOL_GPL vmlinux 0x7915cee5 do_machine_check +EXPORT_SYMBOL_GPL vmlinux 0x791748c8 adxl_decode +EXPORT_SYMBOL_GPL vmlinux 0x7918d817 memory_failure +EXPORT_SYMBOL_GPL vmlinux 0x791ecee6 pci_enable_ats +EXPORT_SYMBOL_GPL vmlinux 0x79218e09 xenbus_grant_ring +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 0x798b7682 klist_prev +EXPORT_SYMBOL_GPL vmlinux 0x7991fd8d crash_vmclear_loaded_vmcss +EXPORT_SYMBOL_GPL vmlinux 0x799754d8 request_firmware_direct +EXPORT_SYMBOL_GPL vmlinux 0x799aebb1 sbitmap_get_shallow +EXPORT_SYMBOL_GPL vmlinux 0x79a4b2d9 fib_table_lookup +EXPORT_SYMBOL_GPL vmlinux 0x79a9cc71 pci_epc_init_notify +EXPORT_SYMBOL_GPL vmlinux 0x79b11856 ethnl_cable_test_step +EXPORT_SYMBOL_GPL vmlinux 0x79b716c7 devm_watchdog_register_device +EXPORT_SYMBOL_GPL vmlinux 0x79bc842c usb_anchor_suspend_wakeups +EXPORT_SYMBOL_GPL vmlinux 0x79c05ea1 ata_sas_sync_probe +EXPORT_SYMBOL_GPL vmlinux 0x79cf1043 fpu_kernel_xstate_size +EXPORT_SYMBOL_GPL vmlinux 0x79dd8d9a regulator_get_current_limit_regmap +EXPORT_SYMBOL_GPL vmlinux 0x79defbe1 kthread_should_park +EXPORT_SYMBOL_GPL vmlinux 0x79e69460 intel_iommu_gfx_mapped +EXPORT_SYMBOL_GPL vmlinux 0x79e8a6e5 phy_led_triggers_register +EXPORT_SYMBOL_GPL vmlinux 0x79f697e4 lzorle1x_1_compress +EXPORT_SYMBOL_GPL vmlinux 0x79f9e119 evm_inode_init_security +EXPORT_SYMBOL_GPL vmlinux 0x7a1d9ad5 udp6_lib_lookup_skb +EXPORT_SYMBOL_GPL vmlinux 0x7a2395db wbc_detach_inode +EXPORT_SYMBOL_GPL vmlinux 0x7a253fcd regmap_get_raw_write_max +EXPORT_SYMBOL_GPL vmlinux 0x7a2ce1a4 transport_configure_device +EXPORT_SYMBOL_GPL vmlinux 0x7a31fc26 sata_set_spd +EXPORT_SYMBOL_GPL vmlinux 0x7a41b057 pci_set_pcie_reset_state +EXPORT_SYMBOL_GPL vmlinux 0x7a42db56 init_uts_ns +EXPORT_SYMBOL_GPL vmlinux 0x7a45faf9 relay_switch_subbuf +EXPORT_SYMBOL_GPL vmlinux 0x7a510eda kernel_read_file +EXPORT_SYMBOL_GPL vmlinux 0x7a615c78 dmaengine_desc_attach_metadata +EXPORT_SYMBOL_GPL vmlinux 0x7a655f68 acpi_processor_claim_cst_control +EXPORT_SYMBOL_GPL vmlinux 0x7a71af77 add_memory_driver_managed +EXPORT_SYMBOL_GPL vmlinux 0x7a73e605 wm831x_isinkv_values +EXPORT_SYMBOL_GPL vmlinux 0x7a780f8c ata_pci_remove_one +EXPORT_SYMBOL_GPL vmlinux 0x7a81541b async_synchronize_cookie +EXPORT_SYMBOL_GPL vmlinux 0x7a825e98 posix_acl_access_xattr_handler +EXPORT_SYMBOL_GPL vmlinux 0x7a98f4b4 copy_from_user_nofault +EXPORT_SYMBOL_GPL vmlinux 0x7a9e4c23 software_node_register_node_group +EXPORT_SYMBOL_GPL vmlinux 0x7abfca43 rhashtable_init +EXPORT_SYMBOL_GPL vmlinux 0x7ac722bd phy_all_ports_features_array +EXPORT_SYMBOL_GPL vmlinux 0x7ace5114 skcipher_walk_aead_encrypt +EXPORT_SYMBOL_GPL vmlinux 0x7ad1ded1 pinctrl_register_mappings +EXPORT_SYMBOL_GPL vmlinux 0x7ad51448 set_primary_fwnode +EXPORT_SYMBOL_GPL vmlinux 0x7adde49a virtqueue_get_buf_ctx +EXPORT_SYMBOL_GPL vmlinux 0x7adeb47f icc_put +EXPORT_SYMBOL_GPL vmlinux 0x7adf8700 sock_diag_register +EXPORT_SYMBOL_GPL vmlinux 0x7ae40e27 bpf_map_inc_with_uref +EXPORT_SYMBOL_GPL vmlinux 0x7ae53c55 __raw_v6_lookup +EXPORT_SYMBOL_GPL vmlinux 0x7af01f32 trace_put_event_file +EXPORT_SYMBOL_GPL vmlinux 0x7af1fdfe __bio_add_page +EXPORT_SYMBOL_GPL vmlinux 0x7afcb7db __kprobe_event_add_fields +EXPORT_SYMBOL_GPL vmlinux 0x7b00d5ab dev_pm_opp_register_set_opp_helper +EXPORT_SYMBOL_GPL vmlinux 0x7b15d084 usb_register_device_driver +EXPORT_SYMBOL_GPL vmlinux 0x7b178afe unlock_system_sleep +EXPORT_SYMBOL_GPL vmlinux 0x7b4c9ba9 sbitmap_queue_min_shallow_depth +EXPORT_SYMBOL_GPL vmlinux 0x7b4ef438 unregister_kprobes +EXPORT_SYMBOL_GPL vmlinux 0x7b5452b8 acpi_unregister_gsi +EXPORT_SYMBOL_GPL vmlinux 0x7b567cd7 __pm_relax +EXPORT_SYMBOL_GPL vmlinux 0x7b573c08 iommu_report_device_fault +EXPORT_SYMBOL_GPL vmlinux 0x7b5a4926 sha1_zero_message_hash +EXPORT_SYMBOL_GPL vmlinux 0x7b6d2469 power_supply_put +EXPORT_SYMBOL_GPL vmlinux 0x7b6f9536 acpi_register_wakeup_handler +EXPORT_SYMBOL_GPL vmlinux 0x7b70363b cros_ec_get_sensor_count +EXPORT_SYMBOL_GPL vmlinux 0x7b856860 cpuidle_unregister_device +EXPORT_SYMBOL_GPL vmlinux 0x7b90d1a9 bind_virq_to_irqhandler +EXPORT_SYMBOL_GPL vmlinux 0x7b9793a2 get_cpu_idle_time_us +EXPORT_SYMBOL_GPL vmlinux 0x7bc1331c devm_gpiod_get_from_of_node +EXPORT_SYMBOL_GPL vmlinux 0x7bcf7583 blk_mq_rdma_map_queues +EXPORT_SYMBOL_GPL vmlinux 0x7bcfd6c1 register_kprobes +EXPORT_SYMBOL_GPL vmlinux 0x7c068171 __tcp_bpf_recvmsg +EXPORT_SYMBOL_GPL vmlinux 0x7c07432e gpiod_direction_input +EXPORT_SYMBOL_GPL vmlinux 0x7c20b6a0 load_direct_gdt +EXPORT_SYMBOL_GPL vmlinux 0x7c352af8 pinctrl_enable +EXPORT_SYMBOL_GPL vmlinux 0x7c3b262b udp4_lib_lookup_skb +EXPORT_SYMBOL_GPL vmlinux 0x7c57421b x509_cert_parse +EXPORT_SYMBOL_GPL vmlinux 0x7c5b95c0 devm_usb_get_phy_by_node +EXPORT_SYMBOL_GPL vmlinux 0x7c5c440d scsi_check_sense +EXPORT_SYMBOL_GPL vmlinux 0x7c5f3711 ioasid_unregister_allocator +EXPORT_SYMBOL_GPL vmlinux 0x7c626556 list_lru_destroy +EXPORT_SYMBOL_GPL vmlinux 0x7c681aba efivar_work +EXPORT_SYMBOL_GPL vmlinux 0x7c7f5094 pci_speed_string +EXPORT_SYMBOL_GPL vmlinux 0x7c832190 sata_link_resume +EXPORT_SYMBOL_GPL vmlinux 0x7c90c2aa kgdb_register_io_module +EXPORT_SYMBOL_GPL vmlinux 0x7c930f93 thermal_zone_get_offset +EXPORT_SYMBOL_GPL vmlinux 0x7c983a5d dmi_walk +EXPORT_SYMBOL_GPL vmlinux 0x7c9a7371 clk_prepare +EXPORT_SYMBOL_GPL vmlinux 0x7cb7efd6 tpm_default_chip +EXPORT_SYMBOL_GPL vmlinux 0x7cb803de btree_grim_visitor +EXPORT_SYMBOL_GPL vmlinux 0x7cb8b8c6 devm_phy_put +EXPORT_SYMBOL_GPL vmlinux 0x7cc0a470 crypto_req_done +EXPORT_SYMBOL_GPL vmlinux 0x7cce5ecf fixed_phy_change_carrier +EXPORT_SYMBOL_GPL vmlinux 0x7cd6f042 cpufreq_get_current_driver +EXPORT_SYMBOL_GPL vmlinux 0x7cd90d1e regulator_set_voltage_sel_pickable_regmap +EXPORT_SYMBOL_GPL vmlinux 0x7cddbfe7 cs47l24_irq +EXPORT_SYMBOL_GPL vmlinux 0x7ce20d1d rtc_update_irq +EXPORT_SYMBOL_GPL vmlinux 0x7ce3b714 nvmem_device_get +EXPORT_SYMBOL_GPL vmlinux 0x7ce5fa73 dst_cache_get_ip6 +EXPORT_SYMBOL_GPL vmlinux 0x7ceaf0d5 generic_handle_irq +EXPORT_SYMBOL_GPL vmlinux 0x7cf034ea fwnode_property_read_u16_array +EXPORT_SYMBOL_GPL vmlinux 0x7cf43bd0 rtnl_put_cacheinfo +EXPORT_SYMBOL_GPL vmlinux 0x7d00c65b nd_synchronize +EXPORT_SYMBOL_GPL vmlinux 0x7d07034b kthread_func +EXPORT_SYMBOL_GPL vmlinux 0x7d0e1d95 hv_setup_crash_handler +EXPORT_SYMBOL_GPL vmlinux 0x7d0f33f1 clk_register +EXPORT_SYMBOL_GPL vmlinux 0x7d177720 pci_epf_match_device +EXPORT_SYMBOL_GPL vmlinux 0x7d1bb1d4 tnum_strn +EXPORT_SYMBOL_GPL vmlinux 0x7d1f01e7 serdev_device_write_wakeup +EXPORT_SYMBOL_GPL vmlinux 0x7d2ca554 pci_epc_get_first_free_bar +EXPORT_SYMBOL_GPL vmlinux 0x7d3a897d pci_enable_pcie_error_reporting +EXPORT_SYMBOL_GPL vmlinux 0x7d50c917 trace_event_reg +EXPORT_SYMBOL_GPL vmlinux 0x7d59dd46 pm_wq +EXPORT_SYMBOL_GPL vmlinux 0x7d688d70 iommu_dev_has_feature +EXPORT_SYMBOL_GPL vmlinux 0x7d6bc8b3 tps65912_regmap_config +EXPORT_SYMBOL_GPL vmlinux 0x7d7892a3 sdio_writeb_readb +EXPORT_SYMBOL_GPL vmlinux 0x7d7e530f pinctrl_utils_add_map_configs +EXPORT_SYMBOL_GPL vmlinux 0x7d8ab02b fwnode_property_get_reference_args +EXPORT_SYMBOL_GPL vmlinux 0x7d8baa5e virtqueue_get_vring_size +EXPORT_SYMBOL_GPL vmlinux 0x7dda30af unregister_tracepoint_module_notifier +EXPORT_SYMBOL_GPL vmlinux 0x7ddb2718 __tracepoint_block_rq_remap +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 0x7df257b0 bio_iov_iter_get_pages +EXPORT_SYMBOL_GPL vmlinux 0x7e16ec18 blk_mq_sched_try_insert_merge +EXPORT_SYMBOL_GPL vmlinux 0x7e390001 intel_msic_bulk_read +EXPORT_SYMBOL_GPL vmlinux 0x7e4729da fwnode_get_next_child_node +EXPORT_SYMBOL_GPL vmlinux 0x7e51ea16 __efivar_entry_delete +EXPORT_SYMBOL_GPL vmlinux 0x7e5db80b pstore_name_to_type +EXPORT_SYMBOL_GPL vmlinux 0x7e6063b2 dma_get_required_mask +EXPORT_SYMBOL_GPL vmlinux 0x7e64181d usb_calc_bus_time +EXPORT_SYMBOL_GPL vmlinux 0x7e66c120 spi_get_next_queued_message +EXPORT_SYMBOL_GPL vmlinux 0x7e6c4c55 tpm2_get_tpm_pt +EXPORT_SYMBOL_GPL vmlinux 0x7e76c888 sysfs_add_link_to_group +EXPORT_SYMBOL_GPL vmlinux 0x7e7e3f58 ring_buffer_reset_cpu +EXPORT_SYMBOL_GPL vmlinux 0x7e819d87 spi_bus_type +EXPORT_SYMBOL_GPL vmlinux 0x7e8d8619 usb_anchor_empty +EXPORT_SYMBOL_GPL vmlinux 0x7e990d6d fuse_direct_io +EXPORT_SYMBOL_GPL vmlinux 0x7ea75c24 __wake_up_locked_key_bookmark +EXPORT_SYMBOL_GPL vmlinux 0x7eb808d0 add_cpu +EXPORT_SYMBOL_GPL vmlinux 0x7ec814de inet_hashinfo_init +EXPORT_SYMBOL_GPL vmlinux 0x7eced694 pm_runtime_allow +EXPORT_SYMBOL_GPL vmlinux 0x7eea1f4e xfrm_audit_state_notfound_simple +EXPORT_SYMBOL_GPL vmlinux 0x7eea6b8b pcap_adc_async +EXPORT_SYMBOL_GPL vmlinux 0x7f2950f7 devm_regulator_get +EXPORT_SYMBOL_GPL vmlinux 0x7f2a9f18 phy_power_off +EXPORT_SYMBOL_GPL vmlinux 0x7f2c299e pm_stay_awake +EXPORT_SYMBOL_GPL vmlinux 0x7f354946 i2c_acpi_find_bus_speed +EXPORT_SYMBOL_GPL vmlinux 0x7f39fc66 inet_csk_route_req +EXPORT_SYMBOL_GPL vmlinux 0x7f6ada4a kernfs_get +EXPORT_SYMBOL_GPL vmlinux 0x7f76e437 pci_sriov_set_totalvfs +EXPORT_SYMBOL_GPL vmlinux 0x7f7cbc64 ip_tunnel_need_metadata +EXPORT_SYMBOL_GPL vmlinux 0x7f93e4a4 ata_std_prereset +EXPORT_SYMBOL_GPL vmlinux 0x7fa96509 erst_get_record_id_next +EXPORT_SYMBOL_GPL vmlinux 0x7fafdec9 clk_fixed_factor_ops +EXPORT_SYMBOL_GPL vmlinux 0x7fb751e9 fuse_conn_init +EXPORT_SYMBOL_GPL vmlinux 0x7fc018db xen_find_device_domain_owner +EXPORT_SYMBOL_GPL vmlinux 0x7feaf80f iommu_domain_alloc +EXPORT_SYMBOL_GPL vmlinux 0x7ffaaf95 iommu_aux_detach_device +EXPORT_SYMBOL_GPL vmlinux 0x80059be3 netdev_is_rx_handler_busy +EXPORT_SYMBOL_GPL vmlinux 0x8016ac98 __irq_domain_alloc_fwnode +EXPORT_SYMBOL_GPL vmlinux 0x802bdb8b usb_set_configuration +EXPORT_SYMBOL_GPL vmlinux 0x8035e8a2 fuse_dev_install +EXPORT_SYMBOL_GPL vmlinux 0x8049a099 __devm_regmap_init_spi +EXPORT_SYMBOL_GPL vmlinux 0x804dfeac phy_save_page +EXPORT_SYMBOL_GPL vmlinux 0x805667cf devlink_fmsg_u64_put +EXPORT_SYMBOL_GPL vmlinux 0x8064b463 inet6_hash +EXPORT_SYMBOL_GPL vmlinux 0x807766ea usb_scuttle_anchored_urbs +EXPORT_SYMBOL_GPL vmlinux 0x807fdcc4 call_rcu_tasks_rude +EXPORT_SYMBOL_GPL vmlinux 0x808a8088 handle_guest_split_lock +EXPORT_SYMBOL_GPL vmlinux 0x808ec1a3 crypto_alg_tested +EXPORT_SYMBOL_GPL vmlinux 0x808f001e dma_max_mapping_size +EXPORT_SYMBOL_GPL vmlinux 0x808f6294 pci_disable_ats +EXPORT_SYMBOL_GPL vmlinux 0x809e7d2c is_current_mnt_ns +EXPORT_SYMBOL_GPL vmlinux 0x80a16a64 ata_cable_unknown +EXPORT_SYMBOL_GPL vmlinux 0x80abbd61 cpufreq_driver_resolve_freq +EXPORT_SYMBOL_GPL vmlinux 0x80b109d4 __tracepoint_pelt_se_tp +EXPORT_SYMBOL_GPL vmlinux 0x80b5fa9a rtc_alarm_irq_enable +EXPORT_SYMBOL_GPL vmlinux 0x80c11314 gnttab_query_foreign_access +EXPORT_SYMBOL_GPL vmlinux 0x80c68137 nf_log_buf_close +EXPORT_SYMBOL_GPL vmlinux 0x80d5e57a mpi_free +EXPORT_SYMBOL_GPL vmlinux 0x80d97811 serdev_controller_alloc +EXPORT_SYMBOL_GPL vmlinux 0x80df1b21 fib4_rule_default +EXPORT_SYMBOL_GPL vmlinux 0x80e793ec dev_pm_opp_remove_table +EXPORT_SYMBOL_GPL vmlinux 0x80f21eba pci_hp_del +EXPORT_SYMBOL_GPL vmlinux 0x811dc334 usb_unregister_notify +EXPORT_SYMBOL_GPL vmlinux 0x81221cad amd_nb_num +EXPORT_SYMBOL_GPL vmlinux 0x8122fce1 trace_define_field +EXPORT_SYMBOL_GPL vmlinux 0x8134204d key_type_logon +EXPORT_SYMBOL_GPL vmlinux 0x81487627 ping_getfrag +EXPORT_SYMBOL_GPL vmlinux 0x815588a6 clk_enable +EXPORT_SYMBOL_GPL vmlinux 0x81592c21 inet_ehash_nolisten +EXPORT_SYMBOL_GPL vmlinux 0x815fda83 sed_ioctl +EXPORT_SYMBOL_GPL vmlinux 0x8162faef serial8250_do_startup +EXPORT_SYMBOL_GPL vmlinux 0x816a41ca cpufreq_update_limits +EXPORT_SYMBOL_GPL vmlinux 0x81742cd1 fuse_fill_super_common +EXPORT_SYMBOL_GPL vmlinux 0x81837761 get_device +EXPORT_SYMBOL_GPL vmlinux 0x819d221b devm_led_trigger_register +EXPORT_SYMBOL_GPL vmlinux 0x819d72cb klist_iter_exit +EXPORT_SYMBOL_GPL vmlinux 0x81a0e20a sfp_register_socket +EXPORT_SYMBOL_GPL vmlinux 0x81ac1f1c wm8998_i2c_regmap +EXPORT_SYMBOL_GPL vmlinux 0x81b03377 efivar_entry_set_safe +EXPORT_SYMBOL_GPL vmlinux 0x81b175af regulator_get_voltage_sel_regmap +EXPORT_SYMBOL_GPL vmlinux 0x81c60b54 debugfs_print_regs32 +EXPORT_SYMBOL_GPL vmlinux 0x81d10485 ioasid_free +EXPORT_SYMBOL_GPL vmlinux 0x81d5a7a0 preempt_notifier_register +EXPORT_SYMBOL_GPL vmlinux 0x81d7c5b7 percpu_ref_kill_and_confirm +EXPORT_SYMBOL_GPL vmlinux 0x81eb294d unregister_pernet_device +EXPORT_SYMBOL_GPL vmlinux 0x81ec23ea lwtunnel_encap_del_ops +EXPORT_SYMBOL_GPL vmlinux 0x81ed68c1 ata_bmdma_port_start +EXPORT_SYMBOL_GPL vmlinux 0x81fe5f1a gnttab_pages_set_private +EXPORT_SYMBOL_GPL vmlinux 0x82018957 irq_chip_unmask_parent +EXPORT_SYMBOL_GPL vmlinux 0x8201b844 irq_domain_reset_irq_data +EXPORT_SYMBOL_GPL vmlinux 0x82092899 badrange_forget +EXPORT_SYMBOL_GPL vmlinux 0x821ec7f1 clk_mux_ro_ops +EXPORT_SYMBOL_GPL vmlinux 0x821fdcad devlink_param_driverinit_value_set +EXPORT_SYMBOL_GPL vmlinux 0x82225e45 scsi_host_complete_all_commands +EXPORT_SYMBOL_GPL vmlinux 0x82226c53 pinctrl_unregister_mappings +EXPORT_SYMBOL_GPL vmlinux 0x822ec9c5 devm_mdiobus_alloc_size +EXPORT_SYMBOL_GPL vmlinux 0x823eae06 blocking_notifier_call_chain +EXPORT_SYMBOL_GPL vmlinux 0x82441b46 platform_driver_unregister +EXPORT_SYMBOL_GPL vmlinux 0x826459d5 usb_get_current_frame_number +EXPORT_SYMBOL_GPL vmlinux 0x8267a541 irqd_cfg +EXPORT_SYMBOL_GPL vmlinux 0x82711943 sata_scr_valid +EXPORT_SYMBOL_GPL vmlinux 0x827cafbd ohci_suspend +EXPORT_SYMBOL_GPL vmlinux 0x827e61f8 acpi_has_watchdog +EXPORT_SYMBOL_GPL vmlinux 0x829d083f _copy_from_iter_flushcache +EXPORT_SYMBOL_GPL vmlinux 0x82a2cfb7 led_trigger_register_simple +EXPORT_SYMBOL_GPL vmlinux 0x82a76e81 tcp_sendpage_locked +EXPORT_SYMBOL_GPL vmlinux 0x82b216ca disk_map_sector_rcu +EXPORT_SYMBOL_GPL vmlinux 0x82bc9bd5 sysfs_unmerge_group +EXPORT_SYMBOL_GPL vmlinux 0x82d79b51 sysctl_vfs_cache_pressure +EXPORT_SYMBOL_GPL vmlinux 0x82dbaec3 subsys_dev_iter_exit +EXPORT_SYMBOL_GPL vmlinux 0x82ed11ad cpuidle_get_cpu_driver +EXPORT_SYMBOL_GPL vmlinux 0x82f1cb5e each_symbol_section +EXPORT_SYMBOL_GPL vmlinux 0x82f6a628 extcon_get_property_capability +EXPORT_SYMBOL_GPL vmlinux 0x82faac22 wb_writeout_inc +EXPORT_SYMBOL_GPL vmlinux 0x82ff4b95 clk_hw_unregister_fixed_factor +EXPORT_SYMBOL_GPL vmlinux 0x83000114 regulator_set_mode +EXPORT_SYMBOL_GPL vmlinux 0x8318cef0 kobject_create_and_add +EXPORT_SYMBOL_GPL vmlinux 0x8319b29e __vfs_setxattr_locked +EXPORT_SYMBOL_GPL vmlinux 0x83333330 acpi_dev_add_driver_gpios +EXPORT_SYMBOL_GPL vmlinux 0x8339df73 klist_add_behind +EXPORT_SYMBOL_GPL vmlinux 0x833ff369 usb_hcd_resume_root_hub +EXPORT_SYMBOL_GPL vmlinux 0x8348e4f0 __tracepoint_wbc_writepage +EXPORT_SYMBOL_GPL vmlinux 0x8349a895 nvmem_device_put +EXPORT_SYMBOL_GPL vmlinux 0x8353dfff acpi_os_get_iomem +EXPORT_SYMBOL_GPL vmlinux 0x83548f68 fat_build_inode +EXPORT_SYMBOL_GPL vmlinux 0x8358468a dev_pm_opp_find_freq_exact +EXPORT_SYMBOL_GPL vmlinux 0x836bda7e rio_register_scan +EXPORT_SYMBOL_GPL vmlinux 0x8373a68c regulator_enable +EXPORT_SYMBOL_GPL vmlinux 0x838b427b devm_clk_unregister +EXPORT_SYMBOL_GPL vmlinux 0x838fc3c4 gnttab_dma_alloc_pages +EXPORT_SYMBOL_GPL vmlinux 0x83a064b6 ehci_adjust_port_wakeup_flags +EXPORT_SYMBOL_GPL vmlinux 0x83a32d50 acpi_gpiochip_free_interrupts +EXPORT_SYMBOL_GPL vmlinux 0x83c5d011 irq_domain_remove +EXPORT_SYMBOL_GPL vmlinux 0x83dbc6db da9052_enable_irq +EXPORT_SYMBOL_GPL vmlinux 0x83dc494c pm_generic_resume_early +EXPORT_SYMBOL_GPL vmlinux 0x83ef7af1 rtnl_register_module +EXPORT_SYMBOL_GPL vmlinux 0x83f8d4ea irq_domain_get_irq_data +EXPORT_SYMBOL_GPL vmlinux 0x8407b29c dev_pm_qos_update_request +EXPORT_SYMBOL_GPL vmlinux 0x840cfb6c pid_nr_ns +EXPORT_SYMBOL_GPL vmlinux 0x84106f36 devlink_trap_ctx_priv +EXPORT_SYMBOL_GPL vmlinux 0x8414bbaf devlink_dpipe_match_put +EXPORT_SYMBOL_GPL vmlinux 0x841ca4b6 dw_pcie_read_dbi +EXPORT_SYMBOL_GPL vmlinux 0x84264ced fs_umode_to_ftype +EXPORT_SYMBOL_GPL vmlinux 0x842f046d usb_poison_anchored_urbs +EXPORT_SYMBOL_GPL vmlinux 0x843d70ef acpi_is_root_bridge +EXPORT_SYMBOL_GPL vmlinux 0x84502a47 blk_status_to_errno +EXPORT_SYMBOL_GPL vmlinux 0x845dbf3b scatterwalk_map_and_copy +EXPORT_SYMBOL_GPL vmlinux 0x845e6dd5 crypto_alloc_kpp +EXPORT_SYMBOL_GPL vmlinux 0x84622862 percpu_free_rwsem +EXPORT_SYMBOL_GPL vmlinux 0x8462cb62 atapi_cmd_type +EXPORT_SYMBOL_GPL vmlinux 0x847f9afa bpf_trace_run4 +EXPORT_SYMBOL_GPL vmlinux 0x848e8713 netlink_remove_tap +EXPORT_SYMBOL_GPL vmlinux 0x84b1e1bf fwnode_connection_find_match +EXPORT_SYMBOL_GPL vmlinux 0x84bb0778 blk_mq_sched_mark_restart_hctx +EXPORT_SYMBOL_GPL vmlinux 0x84cfb882 thermal_zone_bind_cooling_device +EXPORT_SYMBOL_GPL vmlinux 0x84ef27f5 synth_event_add_fields +EXPORT_SYMBOL_GPL vmlinux 0x84fc6723 srcu_notifier_chain_register +EXPORT_SYMBOL_GPL vmlinux 0x8506baa8 clk_unregister_gate +EXPORT_SYMBOL_GPL vmlinux 0x85092bdd usb_unlocked_disable_lpm +EXPORT_SYMBOL_GPL vmlinux 0x850bb6db devlink_health_reporter_destroy +EXPORT_SYMBOL_GPL vmlinux 0x8510b467 regulator_bulk_enable +EXPORT_SYMBOL_GPL vmlinux 0x8513134a acpi_set_modalias +EXPORT_SYMBOL_GPL vmlinux 0x851e6003 usb_phy_roothub_calibrate +EXPORT_SYMBOL_GPL vmlinux 0x853506a5 fscrypt_ioctl_remove_key +EXPORT_SYMBOL_GPL vmlinux 0x854688cc irq_domain_xlate_onecell +EXPORT_SYMBOL_GPL vmlinux 0x85540ebc nvmem_cell_put +EXPORT_SYMBOL_GPL vmlinux 0x856149c6 do_tcp_sendpages +EXPORT_SYMBOL_GPL vmlinux 0x85639e1b phy_modify +EXPORT_SYMBOL_GPL vmlinux 0x85720e12 nd_cmd_in_size +EXPORT_SYMBOL_GPL vmlinux 0x85862277 ioasid_find +EXPORT_SYMBOL_GPL vmlinux 0x85935a61 acpi_dev_irq_flags +EXPORT_SYMBOL_GPL vmlinux 0x8597c86b device_match_of_node +EXPORT_SYMBOL_GPL vmlinux 0x85a479a7 virtqueue_get_avail_addr +EXPORT_SYMBOL_GPL vmlinux 0x85a49dc7 pci_vpd_find_info_keyword +EXPORT_SYMBOL_GPL vmlinux 0x85b1c626 __tracepoint_rpm_suspend +EXPORT_SYMBOL_GPL vmlinux 0x85b38978 percpu_ref_reinit +EXPORT_SYMBOL_GPL vmlinux 0x85b43d69 wm8350_block_read +EXPORT_SYMBOL_GPL vmlinux 0x85b9b095 pwm_lpss_suspend +EXPORT_SYMBOL_GPL vmlinux 0x85c54b61 efivar_validate +EXPORT_SYMBOL_GPL vmlinux 0x85cb2c45 xen_has_pv_devices +EXPORT_SYMBOL_GPL vmlinux 0x85d7edfd hpet_set_periodic_freq +EXPORT_SYMBOL_GPL vmlinux 0x85e120f8 pm_generic_freeze +EXPORT_SYMBOL_GPL vmlinux 0x85e214b2 blk_update_request +EXPORT_SYMBOL_GPL vmlinux 0x85e5d047 cpuidle_register_device +EXPORT_SYMBOL_GPL vmlinux 0x85f31b04 regmap_raw_read +EXPORT_SYMBOL_GPL vmlinux 0x85f47631 bus_remove_file +EXPORT_SYMBOL_GPL vmlinux 0x861174b2 da903x_update +EXPORT_SYMBOL_GPL vmlinux 0x86130dbc pcie_bus_configure_settings +EXPORT_SYMBOL_GPL vmlinux 0x86169f3e amd_smn_write +EXPORT_SYMBOL_GPL vmlinux 0x862258db timecounter_init +EXPORT_SYMBOL_GPL vmlinux 0x86248ec5 __audit_log_nfcfg +EXPORT_SYMBOL_GPL vmlinux 0x86289fb5 transport_class_register +EXPORT_SYMBOL_GPL vmlinux 0x862bb17b linear_range_values_in_range_array +EXPORT_SYMBOL_GPL vmlinux 0x863b6684 thermal_zone_device_update +EXPORT_SYMBOL_GPL vmlinux 0x863d367c device_bind_driver +EXPORT_SYMBOL_GPL vmlinux 0x863e040e phy_resolve_aneg_linkmode +EXPORT_SYMBOL_GPL vmlinux 0x8641b25b sysfs_remove_file_from_group +EXPORT_SYMBOL_GPL vmlinux 0x86472025 blk_steal_bios +EXPORT_SYMBOL_GPL vmlinux 0x8654be58 hv_remove_vmbus_irq +EXPORT_SYMBOL_GPL vmlinux 0x86585a33 devlink_fmsg_obj_nest_start +EXPORT_SYMBOL_GPL vmlinux 0x86623fd7 notify_remote_via_irq +EXPORT_SYMBOL_GPL vmlinux 0x866ca6a3 gnttab_page_cache_init +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 0x868784cb __symbol_get +EXPORT_SYMBOL_GPL vmlinux 0x8694cb72 usb_hcd_pci_remove +EXPORT_SYMBOL_GPL vmlinux 0x86b13d2a usb_unpoison_anchored_urbs +EXPORT_SYMBOL_GPL vmlinux 0x86b427ce clkdev_create +EXPORT_SYMBOL_GPL vmlinux 0x86bde73e regulator_bulk_unregister_supply_alias +EXPORT_SYMBOL_GPL vmlinux 0x86c43a8c cper_estatus_check +EXPORT_SYMBOL_GPL vmlinux 0x86c5ac29 wm831x_reg_read +EXPORT_SYMBOL_GPL vmlinux 0x86c961b3 __set_dax_synchronous +EXPORT_SYMBOL_GPL vmlinux 0x86e346f9 srcutorture_get_gp_data +EXPORT_SYMBOL_GPL vmlinux 0x86f6b99d synchronize_rcu_expedited +EXPORT_SYMBOL_GPL vmlinux 0x86f85114 net_dec_egress_queue +EXPORT_SYMBOL_GPL vmlinux 0x86f96147 led_trigger_read +EXPORT_SYMBOL_GPL vmlinux 0x86fefb78 cpufreq_register_driver +EXPORT_SYMBOL_GPL vmlinux 0x87015f2e nvdimm_region_notify +EXPORT_SYMBOL_GPL vmlinux 0x870738ae device_change_owner +EXPORT_SYMBOL_GPL vmlinux 0x870c7a46 wakeup_sources_walk_start +EXPORT_SYMBOL_GPL vmlinux 0x870e16b7 xen_test_irq_shared +EXPORT_SYMBOL_GPL vmlinux 0x870f78ca irq_chip_set_type_parent +EXPORT_SYMBOL_GPL vmlinux 0x8735ed3d irq_set_affinity_notifier +EXPORT_SYMBOL_GPL vmlinux 0x873aa0ef wbt_enable_default +EXPORT_SYMBOL_GPL vmlinux 0x875582b7 nvmem_del_cell_table +EXPORT_SYMBOL_GPL vmlinux 0x8768911a irq_setup_alt_chip +EXPORT_SYMBOL_GPL vmlinux 0x8771eb32 xdp_rxq_info_unreg_mem_model +EXPORT_SYMBOL_GPL vmlinux 0x8773e87c __clk_hw_register_gate +EXPORT_SYMBOL_GPL vmlinux 0x879ac741 sdio_register_driver +EXPORT_SYMBOL_GPL vmlinux 0x87c5141d __pm_runtime_suspend +EXPORT_SYMBOL_GPL vmlinux 0x87d39258 pm_clk_suspend +EXPORT_SYMBOL_GPL vmlinux 0x87d42592 pci_epc_unmap_addr +EXPORT_SYMBOL_GPL vmlinux 0x87d5c35a crypto_skcipher_encrypt +EXPORT_SYMBOL_GPL vmlinux 0x87d8ef08 phy_modify_mmd_changed +EXPORT_SYMBOL_GPL vmlinux 0x87e64181 amd_nb_has_feature +EXPORT_SYMBOL_GPL vmlinux 0x87f0b893 regulator_get_hardware_vsel_register +EXPORT_SYMBOL_GPL vmlinux 0x88066be2 __tracepoint_rpm_return_int +EXPORT_SYMBOL_GPL vmlinux 0x8809b53c devm_acpi_dev_add_driver_gpios +EXPORT_SYMBOL_GPL vmlinux 0x88125ad3 serial8250_rx_chars +EXPORT_SYMBOL_GPL vmlinux 0x88218bd0 inet_csk_addr2sockaddr +EXPORT_SYMBOL_GPL vmlinux 0x88293776 debugfs_attr_write +EXPORT_SYMBOL_GPL vmlinux 0x882fd51e dev_pm_opp_get_suspend_opp_freq +EXPORT_SYMBOL_GPL vmlinux 0x883d22b5 phy_reset +EXPORT_SYMBOL_GPL vmlinux 0x88443432 irq_create_strict_mappings +EXPORT_SYMBOL_GPL vmlinux 0x884b11c1 ata_qc_get_active +EXPORT_SYMBOL_GPL vmlinux 0x8851da3e __dma_request_channel +EXPORT_SYMBOL_GPL vmlinux 0x885528a6 ring_buffer_discard_commit +EXPORT_SYMBOL_GPL vmlinux 0x885cf73b synth_event_trace_array +EXPORT_SYMBOL_GPL vmlinux 0x887f875b usb_autopm_put_interface_async +EXPORT_SYMBOL_GPL vmlinux 0x888c5be5 irq_bypass_register_consumer +EXPORT_SYMBOL_GPL vmlinux 0x88998911 tpm_try_get_ops +EXPORT_SYMBOL_GPL vmlinux 0x8899a9ab irq_domain_translate_onecell +EXPORT_SYMBOL_GPL vmlinux 0x889df3a9 disk_part_iter_next +EXPORT_SYMBOL_GPL vmlinux 0x88ab6fe3 kgdb_active +EXPORT_SYMBOL_GPL vmlinux 0x88acd307 edac_device_handle_ue_count +EXPORT_SYMBOL_GPL vmlinux 0x88ad2eea xdp_do_redirect +EXPORT_SYMBOL_GPL vmlinux 0x88b4ae92 ring_buffer_normalize_time_stamp +EXPORT_SYMBOL_GPL vmlinux 0x88bfae9d event_triggers_call +EXPORT_SYMBOL_GPL vmlinux 0x88cded2e pinctrl_force_sleep +EXPORT_SYMBOL_GPL vmlinux 0x88d13c81 thermal_cooling_device_unregister +EXPORT_SYMBOL_GPL vmlinux 0x88dafcbe ping_hash +EXPORT_SYMBOL_GPL vmlinux 0x88e8aad2 irq_domain_free_irqs_parent +EXPORT_SYMBOL_GPL vmlinux 0x88f58bdf security_kernel_load_data +EXPORT_SYMBOL_GPL vmlinux 0x890b2231 usb_alloc_coherent +EXPORT_SYMBOL_GPL vmlinux 0x890f4f97 __kprobe_event_gen_cmd_start +EXPORT_SYMBOL_GPL vmlinux 0x890fa0fa btree_get_prev +EXPORT_SYMBOL_GPL vmlinux 0x8911090e gpiochip_irq_domain_deactivate +EXPORT_SYMBOL_GPL vmlinux 0x891a5a7f gnttab_max_grant_frames +EXPORT_SYMBOL_GPL vmlinux 0x8924eb1e rcu_force_quiescent_state +EXPORT_SYMBOL_GPL vmlinux 0x8925d703 skcipher_walk_aead_decrypt +EXPORT_SYMBOL_GPL vmlinux 0x8937bbf9 alloc_skb_for_msg +EXPORT_SYMBOL_GPL vmlinux 0x893abbdd devlink_fmsg_u32_pair_put +EXPORT_SYMBOL_GPL vmlinux 0x893af0b5 gpiod_get_array +EXPORT_SYMBOL_GPL vmlinux 0x89485687 iommu_group_put +EXPORT_SYMBOL_GPL vmlinux 0x89696218 reserve_iova +EXPORT_SYMBOL_GPL vmlinux 0x89707d8b __regmap_init_i2c +EXPORT_SYMBOL_GPL vmlinux 0x8994571d tty_port_register_device +EXPORT_SYMBOL_GPL vmlinux 0x899b2564 blk_freeze_queue_start +EXPORT_SYMBOL_GPL vmlinux 0x89a61ef0 crypto_rng_reset +EXPORT_SYMBOL_GPL vmlinux 0x89ae7aa0 rsa_parse_pub_key +EXPORT_SYMBOL_GPL vmlinux 0x89ae8b28 desc_to_gpio +EXPORT_SYMBOL_GPL vmlinux 0x89bbafc6 usb_register_notify +EXPORT_SYMBOL_GPL vmlinux 0x89c55f07 ip_route_output_key_hash +EXPORT_SYMBOL_GPL vmlinux 0x89cb8a33 blk_rq_unprep_clone +EXPORT_SYMBOL_GPL vmlinux 0x89cc0ab2 rio_release_dma +EXPORT_SYMBOL_GPL vmlinux 0x89d433a4 simple_attr_open +EXPORT_SYMBOL_GPL vmlinux 0x89d8410e rio_mport_read_config_8 +EXPORT_SYMBOL_GPL vmlinux 0x89e340cf acpi_bus_get_ejd +EXPORT_SYMBOL_GPL vmlinux 0x89f3ef46 tps6586x_irq_get_virq +EXPORT_SYMBOL_GPL vmlinux 0x8a04a5a1 fwnode_property_read_string +EXPORT_SYMBOL_GPL vmlinux 0x8a15f30c scsi_bus_type +EXPORT_SYMBOL_GPL vmlinux 0x8a18c9ca blkg_conf_finish +EXPORT_SYMBOL_GPL vmlinux 0x8a240bff __xas_next +EXPORT_SYMBOL_GPL vmlinux 0x8a3240de encrypt_blob +EXPORT_SYMBOL_GPL vmlinux 0x8a32843a pci_epc_get_msi +EXPORT_SYMBOL_GPL vmlinux 0x8a36ffc7 cpci_hp_register_bus +EXPORT_SYMBOL_GPL vmlinux 0x8a3f84ba linear_range_get_selector_low +EXPORT_SYMBOL_GPL vmlinux 0x8a45a555 acpi_unregister_wakeup_handler +EXPORT_SYMBOL_GPL vmlinux 0x8a4ca7be hyperv_flush_guest_mapping_range +EXPORT_SYMBOL_GPL vmlinux 0x8a62b81b sfp_upstream_stop +EXPORT_SYMBOL_GPL vmlinux 0x8a7cb9c4 platform_thermal_package_rate_control +EXPORT_SYMBOL_GPL vmlinux 0x8a838ef6 intel_scu_ipc_dev_put +EXPORT_SYMBOL_GPL vmlinux 0x8a972091 usb_phy_roothub_resume +EXPORT_SYMBOL_GPL vmlinux 0x8a9fbfc7 regmap_write_async +EXPORT_SYMBOL_GPL vmlinux 0x8aa309b9 watchdog_notify_pretimeout +EXPORT_SYMBOL_GPL vmlinux 0x8aa30dd7 mmput +EXPORT_SYMBOL_GPL vmlinux 0x8aab8db3 crypto_register_ahash +EXPORT_SYMBOL_GPL vmlinux 0x8abacc47 get_max_files +EXPORT_SYMBOL_GPL vmlinux 0x8ac19a05 nd_blk_region_provider_data +EXPORT_SYMBOL_GPL vmlinux 0x8ac61453 __rtnl_link_register +EXPORT_SYMBOL_GPL vmlinux 0x8ad5ceb1 __uv_hub_info_list +EXPORT_SYMBOL_GPL vmlinux 0x8ad86f38 pci_epf_destroy +EXPORT_SYMBOL_GPL vmlinux 0x8adb5a1c __set_page_dirty +EXPORT_SYMBOL_GPL vmlinux 0x8ae44fab netdev_walk_all_upper_dev_rcu +EXPORT_SYMBOL_GPL vmlinux 0x8ae5dca7 usb_get_intf +EXPORT_SYMBOL_GPL vmlinux 0x8b0fbd55 genphy_c45_pma_setup_forced +EXPORT_SYMBOL_GPL vmlinux 0x8b149c36 clk_is_match +EXPORT_SYMBOL_GPL vmlinux 0x8b1cb9fb spi_res_release +EXPORT_SYMBOL_GPL vmlinux 0x8b2638d9 of_phy_put +EXPORT_SYMBOL_GPL vmlinux 0x8b4b76e0 mnt_clone_write +EXPORT_SYMBOL_GPL vmlinux 0x8b50e09a device_connection_remove +EXPORT_SYMBOL_GPL vmlinux 0x8b7290f8 sdio_align_size +EXPORT_SYMBOL_GPL vmlinux 0x8b7b4d8e hv_stimer_alloc +EXPORT_SYMBOL_GPL vmlinux 0x8b8a81ca n_tty_inherit_ops +EXPORT_SYMBOL_GPL vmlinux 0x8b9200fd lookup_address +EXPORT_SYMBOL_GPL vmlinux 0x8ba92924 mddev_congested +EXPORT_SYMBOL_GPL vmlinux 0x8baf5355 devm_gpio_free +EXPORT_SYMBOL_GPL vmlinux 0x8bc6fb4b netdev_rx_handler_unregister +EXPORT_SYMBOL_GPL vmlinux 0x8bcff920 scsi_unregister_device_handler +EXPORT_SYMBOL_GPL vmlinux 0x8be2409a iommu_group_for_each_dev +EXPORT_SYMBOL_GPL vmlinux 0x8be5083f __iptunnel_pull_header +EXPORT_SYMBOL_GPL vmlinux 0x8be55e58 virtio_device_restore +EXPORT_SYMBOL_GPL vmlinux 0x8bf1a55a clk_hw_register_fractional_divider +EXPORT_SYMBOL_GPL vmlinux 0x8c0215f2 pm_system_wakeup +EXPORT_SYMBOL_GPL vmlinux 0x8c03d20c destroy_workqueue +EXPORT_SYMBOL_GPL vmlinux 0x8c1abe25 cpufreq_cpu_put +EXPORT_SYMBOL_GPL vmlinux 0x8c479745 __cpuhp_state_remove_instance +EXPORT_SYMBOL_GPL vmlinux 0x8c47c0eb do_unbind_con_driver +EXPORT_SYMBOL_GPL vmlinux 0x8c484409 gnttab_release_grant_reference +EXPORT_SYMBOL_GPL vmlinux 0x8c581938 device_property_read_u8_array +EXPORT_SYMBOL_GPL vmlinux 0x8c743fb6 reset_control_status +EXPORT_SYMBOL_GPL vmlinux 0x8c7578ec phy_resolve_aneg_pause +EXPORT_SYMBOL_GPL vmlinux 0x8c7e7f2d crypto_stats_rng_seed +EXPORT_SYMBOL_GPL vmlinux 0x8c89e3b8 usb_phy_roothub_power_off +EXPORT_SYMBOL_GPL vmlinux 0x8c8e793d __regmap_init_mmio_clk +EXPORT_SYMBOL_GPL vmlinux 0x8c8f49c2 usb_hc_died +EXPORT_SYMBOL_GPL vmlinux 0x8c92dc28 ata_host_start +EXPORT_SYMBOL_GPL vmlinux 0x8c9d1661 arch_phys_wc_index +EXPORT_SYMBOL_GPL vmlinux 0x8cbd6bd2 ftrace_set_notrace +EXPORT_SYMBOL_GPL vmlinux 0x8cd54602 cpuidle_register_driver +EXPORT_SYMBOL_GPL vmlinux 0x8cd7285e ata_pci_bmdma_init +EXPORT_SYMBOL_GPL vmlinux 0x8ce0befe devm_hwmon_device_register_with_info +EXPORT_SYMBOL_GPL vmlinux 0x8ce457b8 mbox_request_channel_byname +EXPORT_SYMBOL_GPL vmlinux 0x8d165a34 bus_create_file +EXPORT_SYMBOL_GPL vmlinux 0x8d2060bc pm_runtime_suspended_time +EXPORT_SYMBOL_GPL vmlinux 0x8d22bb58 iommu_group_alloc +EXPORT_SYMBOL_GPL vmlinux 0x8d3330b6 cpuacct_cgrp_subsys_enabled_key +EXPORT_SYMBOL_GPL vmlinux 0x8d3b067f devlink_net_set +EXPORT_SYMBOL_GPL vmlinux 0x8d54fa5b lwtunnel_encap_add_ops +EXPORT_SYMBOL_GPL vmlinux 0x8d5c2eb0 regulator_register_supply_alias +EXPORT_SYMBOL_GPL vmlinux 0x8d5fd735 phy_gbit_features +EXPORT_SYMBOL_GPL vmlinux 0x8d628df4 gpiochip_irq_unmap +EXPORT_SYMBOL_GPL vmlinux 0x8d655b19 pinctrl_register_and_init +EXPORT_SYMBOL_GPL vmlinux 0x8d7901d5 __hwspin_trylock +EXPORT_SYMBOL_GPL vmlinux 0x8d7e3373 hwpoison_filter_dev_major +EXPORT_SYMBOL_GPL vmlinux 0x8d877d15 fb_deferred_io_fsync +EXPORT_SYMBOL_GPL vmlinux 0x8d90e15b memremap_pages +EXPORT_SYMBOL_GPL vmlinux 0x8d9ad697 xenbus_map_ring_valloc +EXPORT_SYMBOL_GPL vmlinux 0x8d9da5be pm_runtime_set_memalloc_noio +EXPORT_SYMBOL_GPL vmlinux 0x8db4ee3c dev_pm_opp_put_prop_name +EXPORT_SYMBOL_GPL vmlinux 0x8dc6790f __xenbus_register_backend +EXPORT_SYMBOL_GPL vmlinux 0x8dd2a400 __class_register +EXPORT_SYMBOL_GPL vmlinux 0x8dd9361d component_bind_all +EXPORT_SYMBOL_GPL vmlinux 0x8dd99b0d acpi_find_child_device +EXPORT_SYMBOL_GPL vmlinux 0x8de7d893 efivar_entry_add +EXPORT_SYMBOL_GPL vmlinux 0x8e1621cf fscrypt_match_name +EXPORT_SYMBOL_GPL vmlinux 0x8e23d58f offline_and_remove_memory +EXPORT_SYMBOL_GPL vmlinux 0x8e25bf89 device_set_wakeup_capable +EXPORT_SYMBOL_GPL vmlinux 0x8e2f7bb2 crypto_create_tfm +EXPORT_SYMBOL_GPL vmlinux 0x8e436d73 device_wakeup_enable +EXPORT_SYMBOL_GPL vmlinux 0x8e4eb451 bpf_sk_storage_diag_free +EXPORT_SYMBOL_GPL vmlinux 0x8e4fac24 gpiod_set_array_value +EXPORT_SYMBOL_GPL vmlinux 0x8e611872 __bio_crypt_clone +EXPORT_SYMBOL_GPL vmlinux 0x8e6fa8b5 apei_exec_pre_map_gars +EXPORT_SYMBOL_GPL vmlinux 0x8e92f7c4 static_key_slow_inc +EXPORT_SYMBOL_GPL vmlinux 0x8e932fa9 usb_add_phy +EXPORT_SYMBOL_GPL vmlinux 0x8e9bd4a3 hv_alloc_hyperv_page +EXPORT_SYMBOL_GPL vmlinux 0x8ea91583 __clocksource_register_scale +EXPORT_SYMBOL_GPL vmlinux 0x8eaae26a devlink_trap_report +EXPORT_SYMBOL_GPL vmlinux 0x8eac14bf pwmchip_remove +EXPORT_SYMBOL_GPL vmlinux 0x8eae8dfd usb_find_common_endpoints +EXPORT_SYMBOL_GPL vmlinux 0x8eb2a3c2 virtio_break_device +EXPORT_SYMBOL_GPL vmlinux 0x8edb1aef virtio_config_enable +EXPORT_SYMBOL_GPL vmlinux 0x8ee53e31 register_kprobe +EXPORT_SYMBOL_GPL vmlinux 0x8eee3399 dax_read_unlock +EXPORT_SYMBOL_GPL vmlinux 0x8ef11d0e rtnl_af_register +EXPORT_SYMBOL_GPL vmlinux 0x8f0463b1 srcu_init_notifier_head +EXPORT_SYMBOL_GPL vmlinux 0x8f0748af rcu_expedite_gp +EXPORT_SYMBOL_GPL vmlinux 0x8f18d375 md_kick_rdev_from_array +EXPORT_SYMBOL_GPL vmlinux 0x8f2eb429 kvm_arch_para_hints +EXPORT_SYMBOL_GPL vmlinux 0x8f2f6b2b crypto_stats_init +EXPORT_SYMBOL_GPL vmlinux 0x8f45eb90 blk_mq_freeze_queue_wait_timeout +EXPORT_SYMBOL_GPL vmlinux 0x8f4b3a0a regulator_unregister_notifier +EXPORT_SYMBOL_GPL vmlinux 0x8f6cee77 __round_jiffies_relative +EXPORT_SYMBOL_GPL vmlinux 0x8f786bee fs_umode_to_dtype +EXPORT_SYMBOL_GPL vmlinux 0x8f7a29ee of_hwspin_lock_get_id +EXPORT_SYMBOL_GPL vmlinux 0x8f7bd0a6 btree_init_mempool +EXPORT_SYMBOL_GPL vmlinux 0x8f801d8d rhashtable_destroy +EXPORT_SYMBOL_GPL vmlinux 0x8f80cacf crypto_shash_tfm_digest +EXPORT_SYMBOL_GPL vmlinux 0x8f866331 clean_record_shared_mapping_range +EXPORT_SYMBOL_GPL vmlinux 0x8f90090c __page_file_mapping +EXPORT_SYMBOL_GPL vmlinux 0x8f90e228 crypto_unregister_acomps +EXPORT_SYMBOL_GPL vmlinux 0x8f930910 gpiod_export_link +EXPORT_SYMBOL_GPL vmlinux 0x8fbe079e devm_irq_alloc_generic_chip +EXPORT_SYMBOL_GPL vmlinux 0x8fc12788 software_node_unregister_node_group +EXPORT_SYMBOL_GPL vmlinux 0x8fc222a7 gpiod_get_direction +EXPORT_SYMBOL_GPL vmlinux 0x8fc2ec0d raw_seq_start +EXPORT_SYMBOL_GPL vmlinux 0x8fd58935 of_css +EXPORT_SYMBOL_GPL vmlinux 0x8fd65313 rio_mport_send_doorbell +EXPORT_SYMBOL_GPL vmlinux 0x8fe35f18 d_walk +EXPORT_SYMBOL_GPL vmlinux 0x8ffa8510 dev_pm_qos_hide_latency_tolerance +EXPORT_SYMBOL_GPL vmlinux 0x9007d972 rhashtable_walk_peek +EXPORT_SYMBOL_GPL vmlinux 0x900f1f4e gpiod_get +EXPORT_SYMBOL_GPL vmlinux 0x9024f443 mds_user_clear +EXPORT_SYMBOL_GPL vmlinux 0x9032b80d devm_device_add_group +EXPORT_SYMBOL_GPL vmlinux 0x90370ff3 ata_dummy_port_info +EXPORT_SYMBOL_GPL vmlinux 0x9038a30d devlink_unregister +EXPORT_SYMBOL_GPL vmlinux 0x903a2e8f virtio_max_dma_size +EXPORT_SYMBOL_GPL vmlinux 0x903b627c list_lru_isolate_move +EXPORT_SYMBOL_GPL vmlinux 0x90471079 __blk_req_zone_write_unlock +EXPORT_SYMBOL_GPL vmlinux 0x9052d90f spi_controller_dma_unmap_mem_op_data +EXPORT_SYMBOL_GPL vmlinux 0x905e415f ata_bmdma_qc_issue +EXPORT_SYMBOL_GPL vmlinux 0x905e81fa tcpv6_prot +EXPORT_SYMBOL_GPL vmlinux 0x905ec9e8 wm5102_spi_regmap +EXPORT_SYMBOL_GPL vmlinux 0x90688bcd devlink_info_driver_name_put +EXPORT_SYMBOL_GPL vmlinux 0x9068f9c2 tracing_snapshot_cond +EXPORT_SYMBOL_GPL vmlinux 0x906edcc3 tpmm_chip_alloc +EXPORT_SYMBOL_GPL vmlinux 0x9081b5db btree_insert +EXPORT_SYMBOL_GPL vmlinux 0x9084b044 clear_page_erms +EXPORT_SYMBOL_GPL vmlinux 0x909eee85 verify_signature +EXPORT_SYMBOL_GPL vmlinux 0x90a55f39 devm_nvmem_device_get +EXPORT_SYMBOL_GPL vmlinux 0x90a9d8cc hv_is_hyperv_initialized +EXPORT_SYMBOL_GPL vmlinux 0x90ad66b1 software_node_unregister_nodes +EXPORT_SYMBOL_GPL vmlinux 0x90bb6e4e regulator_get_bypass_regmap +EXPORT_SYMBOL_GPL vmlinux 0x90c8498c apei_exec_write_register +EXPORT_SYMBOL_GPL vmlinux 0x90dc29df aout_dump_debugregs +EXPORT_SYMBOL_GPL vmlinux 0x90de0452 platform_thermal_package_notify +EXPORT_SYMBOL_GPL vmlinux 0x90e69b10 edac_device_alloc_ctl_info +EXPORT_SYMBOL_GPL vmlinux 0x90e84e66 devm_gpiod_get_index +EXPORT_SYMBOL_GPL vmlinux 0x90e85ddc devlink_port_attrs_pci_vf_set +EXPORT_SYMBOL_GPL vmlinux 0x90ed073c xen_xlate_unmap_gfn_range +EXPORT_SYMBOL_GPL vmlinux 0x90eed59c regulator_set_current_limit_regmap +EXPORT_SYMBOL_GPL vmlinux 0x90fa77fc devm_hwmon_device_register_with_groups +EXPORT_SYMBOL_GPL vmlinux 0x90ff571b tpm_get_random +EXPORT_SYMBOL_GPL vmlinux 0x91164abf battery_hook_register +EXPORT_SYMBOL_GPL vmlinux 0x9117253c gpiochip_enable_irq +EXPORT_SYMBOL_GPL vmlinux 0x9118ae7b device_match_any +EXPORT_SYMBOL_GPL vmlinux 0x913d4396 sdio_readw +EXPORT_SYMBOL_GPL vmlinux 0x9141ec88 pm_clk_remove_clk +EXPORT_SYMBOL_GPL vmlinux 0x91467ee1 sysfs_merge_group +EXPORT_SYMBOL_GPL vmlinux 0x915925f6 devlink_sb_register +EXPORT_SYMBOL_GPL vmlinux 0x9167527c sdio_memcpy_toio +EXPORT_SYMBOL_GPL vmlinux 0x916ea647 irq_chip_set_affinity_parent +EXPORT_SYMBOL_GPL vmlinux 0x9171f3d5 srcu_notifier_chain_unregister +EXPORT_SYMBOL_GPL vmlinux 0x9194656f __udp6_lib_lookup +EXPORT_SYMBOL_GPL vmlinux 0x9194e18f xenbus_mkdir +EXPORT_SYMBOL_GPL vmlinux 0x91a0bc03 serial8250_clear_and_reinit_fifos +EXPORT_SYMBOL_GPL vmlinux 0x91a55068 public_key_free +EXPORT_SYMBOL_GPL vmlinux 0x91a6fe9b cpufreq_unregister_driver +EXPORT_SYMBOL_GPL vmlinux 0x91af78f8 dev_queue_xmit_nit +EXPORT_SYMBOL_GPL vmlinux 0x91b9a4ba e820__mapped_any +EXPORT_SYMBOL_GPL vmlinux 0x91bb0dd3 blkg_prfill_rwstat +EXPORT_SYMBOL_GPL vmlinux 0x91c1b6e1 bpf_offload_dev_match +EXPORT_SYMBOL_GPL vmlinux 0x91c6e5b0 pcap_to_irq +EXPORT_SYMBOL_GPL vmlinux 0x91c86759 zap_vma_ptes +EXPORT_SYMBOL_GPL vmlinux 0x91c8b5b5 mutex_lock_io +EXPORT_SYMBOL_GPL vmlinux 0x91f0a711 fsnotify_init_mark +EXPORT_SYMBOL_GPL vmlinux 0x92039ecc attribute_container_unregister +EXPORT_SYMBOL_GPL vmlinux 0x920cc389 visitorl +EXPORT_SYMBOL_GPL vmlinux 0x92141343 kvm_async_pf_task_wake +EXPORT_SYMBOL_GPL vmlinux 0x921b2b2d ata_bmdma_port_ops +EXPORT_SYMBOL_GPL vmlinux 0x9220bab7 synth_event_add_next_val +EXPORT_SYMBOL_GPL vmlinux 0x92295424 clk_register_gate +EXPORT_SYMBOL_GPL vmlinux 0x922aa207 iomap_is_partially_uptodate +EXPORT_SYMBOL_GPL vmlinux 0x923d9dba pkcs7_parse_message +EXPORT_SYMBOL_GPL vmlinux 0x923f60fc bio_associate_blkg +EXPORT_SYMBOL_GPL vmlinux 0x9241b358 __static_key_slow_dec_deferred +EXPORT_SYMBOL_GPL vmlinux 0x924c46f8 zs_unmap_object +EXPORT_SYMBOL_GPL vmlinux 0x9255ec98 l3mdev_master_upper_ifindex_by_index_rcu +EXPORT_SYMBOL_GPL vmlinux 0x92569fef nf_queue +EXPORT_SYMBOL_GPL vmlinux 0x9259d812 crypto_alloc_rng +EXPORT_SYMBOL_GPL vmlinux 0x92661574 add_disk_randomness +EXPORT_SYMBOL_GPL vmlinux 0x926a6808 register_wide_hw_breakpoint +EXPORT_SYMBOL_GPL vmlinux 0x92708e0c blk_ksm_reprogram_all_keys +EXPORT_SYMBOL_GPL vmlinux 0x92797d9f bpf_trace_run6 +EXPORT_SYMBOL_GPL vmlinux 0x927f1dfe akcipher_register_instance +EXPORT_SYMBOL_GPL vmlinux 0x928a16dc nf_checksum +EXPORT_SYMBOL_GPL vmlinux 0x92959ff2 __udp_gso_segment +EXPORT_SYMBOL_GPL vmlinux 0x92bd6ec6 devm_clk_bulk_get_optional +EXPORT_SYMBOL_GPL vmlinux 0x92bf3973 lwtunnel_cmp_encap +EXPORT_SYMBOL_GPL vmlinux 0x92c1027f xfrm_audit_policy_delete +EXPORT_SYMBOL_GPL vmlinux 0x92c6b5ce bpf_trace_run1 +EXPORT_SYMBOL_GPL vmlinux 0x92cea248 __netif_set_xps_queue +EXPORT_SYMBOL_GPL vmlinux 0x92cfeffb serial8250_request_dma +EXPORT_SYMBOL_GPL vmlinux 0x92d31cfb fixed_phy_add +EXPORT_SYMBOL_GPL vmlinux 0x92d644b9 dev_pm_opp_detach_genpd +EXPORT_SYMBOL_GPL vmlinux 0x92d6e721 bpf_prog_inc +EXPORT_SYMBOL_GPL vmlinux 0x92d8e56f __tracepoint_xhci_dbg_quirks +EXPORT_SYMBOL_GPL vmlinux 0x92db8f68 do_trace_rcu_torture_read +EXPORT_SYMBOL_GPL vmlinux 0x92e8e9ab fsverity_enqueue_verify_work +EXPORT_SYMBOL_GPL vmlinux 0x9306475c ata_acpi_stm +EXPORT_SYMBOL_GPL vmlinux 0x93147f4b perf_event_release_kernel +EXPORT_SYMBOL_GPL vmlinux 0x93170790 blk_fill_rwbs +EXPORT_SYMBOL_GPL vmlinux 0x93255b2b ring_buffer_lock_reserve +EXPORT_SYMBOL_GPL vmlinux 0x93266b94 tps6586x_update +EXPORT_SYMBOL_GPL vmlinux 0x9326880f vfio_virqfd_disable +EXPORT_SYMBOL_GPL vmlinux 0x932c8d7a linear_range_get_value_array +EXPORT_SYMBOL_GPL vmlinux 0x932d19cf i2c_parse_fw_timings +EXPORT_SYMBOL_GPL vmlinux 0x933f75e0 usb_unlink_anchored_urbs +EXPORT_SYMBOL_GPL vmlinux 0x93475eaa vfio_iommu_group_get +EXPORT_SYMBOL_GPL vmlinux 0x934eccae gpiod_set_raw_value +EXPORT_SYMBOL_GPL vmlinux 0x93527067 arizona_dev_init +EXPORT_SYMBOL_GPL vmlinux 0x935a33d4 usb_deregister_dev +EXPORT_SYMBOL_GPL vmlinux 0x93611e04 exportfs_encode_fh +EXPORT_SYMBOL_GPL vmlinux 0x93725986 __tracepoint_pelt_dl_tp +EXPORT_SYMBOL_GPL vmlinux 0x937b3222 pci_bus_max_busnr +EXPORT_SYMBOL_GPL vmlinux 0x9384cd49 ata_tf_from_fis +EXPORT_SYMBOL_GPL vmlinux 0x93922111 get_compat_bpf_fprog +EXPORT_SYMBOL_GPL vmlinux 0x939cf428 pinctrl_select_state +EXPORT_SYMBOL_GPL vmlinux 0x93a11f65 devm_extcon_dev_register +EXPORT_SYMBOL_GPL vmlinux 0x93b7a7ad sdio_f0_writeb +EXPORT_SYMBOL_GPL vmlinux 0x93d1d424 gnttab_free_grant_references +EXPORT_SYMBOL_GPL vmlinux 0x93d66659 proc_get_parent_data +EXPORT_SYMBOL_GPL vmlinux 0x93dc2586 pgprot_writethrough +EXPORT_SYMBOL_GPL vmlinux 0x93e17b49 dm_get_md +EXPORT_SYMBOL_GPL vmlinux 0x93e54613 clk_hw_get_parent_index +EXPORT_SYMBOL_GPL vmlinux 0x93edef07 devlink_health_report +EXPORT_SYMBOL_GPL vmlinux 0x9401719b ata_link_offline +EXPORT_SYMBOL_GPL vmlinux 0x94067bbf serdev_device_remove +EXPORT_SYMBOL_GPL vmlinux 0x940e2efb spi_mem_dirmap_read +EXPORT_SYMBOL_GPL vmlinux 0x941a3d4f clk_hw_unregister_fixed_rate +EXPORT_SYMBOL_GPL vmlinux 0x941f2aaa eventfd_ctx_put +EXPORT_SYMBOL_GPL vmlinux 0x9420eb87 splice_to_pipe +EXPORT_SYMBOL_GPL vmlinux 0x9424058f arch_haltpoll_disable +EXPORT_SYMBOL_GPL vmlinux 0x9425bb34 nvmem_dev_name +EXPORT_SYMBOL_GPL vmlinux 0x9430b198 trace_dump_stack +EXPORT_SYMBOL_GPL vmlinux 0x943fc708 xen_setup_shutdown_event +EXPORT_SYMBOL_GPL vmlinux 0x9444a9e8 iommu_unregister_device_fault_handler +EXPORT_SYMBOL_GPL vmlinux 0x9459900f __strp_unpause +EXPORT_SYMBOL_GPL vmlinux 0x945f982c set_online_page_callback +EXPORT_SYMBOL_GPL vmlinux 0x946dd559 sha224_zero_message_hash +EXPORT_SYMBOL_GPL vmlinux 0x9475eac1 crypto_shash_final +EXPORT_SYMBOL_GPL vmlinux 0x947af53b dev_set_name +EXPORT_SYMBOL_GPL vmlinux 0x947b40c6 cpu_smt_possible +EXPORT_SYMBOL_GPL vmlinux 0x9483bfbf device_connection_find_match +EXPORT_SYMBOL_GPL vmlinux 0x94969d87 perf_aux_output_skip +EXPORT_SYMBOL_GPL vmlinux 0x949b5176 devlink_region_snapshot_create +EXPORT_SYMBOL_GPL vmlinux 0x949f7342 __alloc_percpu +EXPORT_SYMBOL_GPL vmlinux 0x94a2be38 da903x_write +EXPORT_SYMBOL_GPL vmlinux 0x94b2df2e fwnode_property_read_string_array +EXPORT_SYMBOL_GPL vmlinux 0x94b4c123 find_mci_by_dev +EXPORT_SYMBOL_GPL vmlinux 0x94d256da pskb_put +EXPORT_SYMBOL_GPL vmlinux 0x94db8fdd transport_remove_device +EXPORT_SYMBOL_GPL vmlinux 0x94ef4d05 cpci_hp_stop +EXPORT_SYMBOL_GPL vmlinux 0x94f72b76 debugfs_attr_read +EXPORT_SYMBOL_GPL vmlinux 0x95015392 edac_mc_handle_error +EXPORT_SYMBOL_GPL vmlinux 0x9504df26 irq_wake_thread +EXPORT_SYMBOL_GPL vmlinux 0x951a2773 crypto_has_alg +EXPORT_SYMBOL_GPL vmlinux 0x95258207 vfio_device_data +EXPORT_SYMBOL_GPL vmlinux 0x952664c5 do_exit +EXPORT_SYMBOL_GPL vmlinux 0x952a2adb clk_hw_get_num_parents +EXPORT_SYMBOL_GPL vmlinux 0x952e00ef bpf_prog_select_runtime +EXPORT_SYMBOL_GPL vmlinux 0x952e892c wm8350_reg_write +EXPORT_SYMBOL_GPL vmlinux 0x953e1b9e ktime_get_real_seconds +EXPORT_SYMBOL_GPL vmlinux 0x954cc1c4 device_node_to_regmap +EXPORT_SYMBOL_GPL vmlinux 0x9557d0c6 debugfs_create_x64 +EXPORT_SYMBOL_GPL vmlinux 0x955b0e2e kthread_worker_fn +EXPORT_SYMBOL_GPL vmlinux 0x956716d2 blk_req_zone_write_trylock +EXPORT_SYMBOL_GPL vmlinux 0x956ac400 ring_buffer_dropped_events_cpu +EXPORT_SYMBOL_GPL vmlinux 0x958df3ac zs_free +EXPORT_SYMBOL_GPL vmlinux 0x959ec5f5 call_rcu_tasks +EXPORT_SYMBOL_GPL vmlinux 0x95bc9078 btree_free +EXPORT_SYMBOL_GPL vmlinux 0x95c4aeaa dax_copy_to_iter +EXPORT_SYMBOL_GPL vmlinux 0x95cf7332 nvmem_cell_get +EXPORT_SYMBOL_GPL vmlinux 0x95ef1ccc dmi_memdev_size +EXPORT_SYMBOL_GPL vmlinux 0x95efa1db pkcs7_free_message +EXPORT_SYMBOL_GPL vmlinux 0x95f842df regmap_bulk_write +EXPORT_SYMBOL_GPL vmlinux 0x95fb8541 power_supply_put_battery_info +EXPORT_SYMBOL_GPL vmlinux 0x96044803 regmap_reinit_cache +EXPORT_SYMBOL_GPL vmlinux 0x961286e0 ring_buffer_read_events_cpu +EXPORT_SYMBOL_GPL vmlinux 0x9620c792 __scsi_init_queue +EXPORT_SYMBOL_GPL vmlinux 0x96262789 posix_clock_unregister +EXPORT_SYMBOL_GPL vmlinux 0x9627b8d5 genphy_c45_pma_read_abilities +EXPORT_SYMBOL_GPL vmlinux 0x9627c886 fib_nexthop_info +EXPORT_SYMBOL_GPL vmlinux 0x962c8ae1 usb_kill_anchored_urbs +EXPORT_SYMBOL_GPL vmlinux 0x9632b96e ip6_route_lookup +EXPORT_SYMBOL_GPL vmlinux 0x96460ee4 platform_device_add +EXPORT_SYMBOL_GPL vmlinux 0x964dcb5c spi_unregister_controller +EXPORT_SYMBOL_GPL vmlinux 0x96554810 register_keyboard_notifier +EXPORT_SYMBOL_GPL vmlinux 0x9659047e alloc_page_buffers +EXPORT_SYMBOL_GPL vmlinux 0x965a3cda ehci_resume +EXPORT_SYMBOL_GPL vmlinux 0x9664bc3e security_inode_setattr +EXPORT_SYMBOL_GPL vmlinux 0x966d5f41 acpi_dma_simple_xlate +EXPORT_SYMBOL_GPL vmlinux 0x9675e7ae i2c_client_type +EXPORT_SYMBOL_GPL vmlinux 0x9688b217 gnttab_batch_copy +EXPORT_SYMBOL_GPL vmlinux 0x968f9a23 efivar_entry_iter_begin +EXPORT_SYMBOL_GPL vmlinux 0x96965bae hwmon_notify_event +EXPORT_SYMBOL_GPL vmlinux 0x969817f6 rio_free_net +EXPORT_SYMBOL_GPL vmlinux 0x969c73d9 vfio_device_put +EXPORT_SYMBOL_GPL vmlinux 0x969fae19 call_srcu +EXPORT_SYMBOL_GPL vmlinux 0x96be3688 spi_take_timestamp_pre +EXPORT_SYMBOL_GPL vmlinux 0x96d73141 platform_device_put +EXPORT_SYMBOL_GPL vmlinux 0x96e0d5c2 rio_mport_class +EXPORT_SYMBOL_GPL vmlinux 0x96e6bc1f dequeue_signal +EXPORT_SYMBOL_GPL vmlinux 0x96eb830d devfreq_event_get_event +EXPORT_SYMBOL_GPL vmlinux 0x96eee392 unregister_wide_hw_breakpoint +EXPORT_SYMBOL_GPL vmlinux 0x96f87ed4 i2c_probe_func_quick_read +EXPORT_SYMBOL_GPL vmlinux 0x96fbec0c pinctrl_pm_select_idle_state +EXPORT_SYMBOL_GPL vmlinux 0x9714e0bb ktime_get_raw +EXPORT_SYMBOL_GPL vmlinux 0x9719bcfd pmc_atom_read +EXPORT_SYMBOL_GPL vmlinux 0x972635b0 regmap_get_device +EXPORT_SYMBOL_GPL vmlinux 0x97354650 ip6_input +EXPORT_SYMBOL_GPL vmlinux 0x9740cd68 nvdimm_bus_check_dimm_count +EXPORT_SYMBOL_GPL vmlinux 0x97478522 bsg_remove_queue +EXPORT_SYMBOL_GPL vmlinux 0x975519c1 asymmetric_key_id_same +EXPORT_SYMBOL_GPL vmlinux 0x975722f7 pci_sriov_configure_simple +EXPORT_SYMBOL_GPL vmlinux 0x97623558 xas_create_range +EXPORT_SYMBOL_GPL vmlinux 0x97624063 devm_power_supply_register_no_ws +EXPORT_SYMBOL_GPL vmlinux 0x9775a203 trace_array_get_by_name +EXPORT_SYMBOL_GPL vmlinux 0x977be5c7 klist_iter_init_node +EXPORT_SYMBOL_GPL vmlinux 0x977e8ad2 rtc_update_irq_enable +EXPORT_SYMBOL_GPL vmlinux 0x978dc70f __netpoll_cleanup +EXPORT_SYMBOL_GPL vmlinux 0x979930fc da9052_free_irq +EXPORT_SYMBOL_GPL vmlinux 0x979a2e5d iommu_aux_get_pasid +EXPORT_SYMBOL_GPL vmlinux 0x979f37d1 handle_bad_irq +EXPORT_SYMBOL_GPL vmlinux 0x97a4e97d cpufreq_driver_fast_switch +EXPORT_SYMBOL_GPL vmlinux 0x97b55923 pciserial_init_ports +EXPORT_SYMBOL_GPL vmlinux 0x97c7b18a blk_ksm_init +EXPORT_SYMBOL_GPL vmlinux 0x97c7d69d br_ip6_fragment +EXPORT_SYMBOL_GPL vmlinux 0x97d12355 hv_remove_stimer0_irq +EXPORT_SYMBOL_GPL vmlinux 0x97de2b83 debug_locks_silent +EXPORT_SYMBOL_GPL vmlinux 0x97e7f902 trace_vbprintk +EXPORT_SYMBOL_GPL vmlinux 0x97f64c17 skb_scrub_packet +EXPORT_SYMBOL_GPL vmlinux 0x97f89987 housekeeping_affine +EXPORT_SYMBOL_GPL vmlinux 0x98100309 firmware_request_nowarn +EXPORT_SYMBOL_GPL vmlinux 0x9820f556 kthread_queue_work +EXPORT_SYMBOL_GPL vmlinux 0x9827214b sdio_writeb +EXPORT_SYMBOL_GPL vmlinux 0x9833bc0c hvc_kick +EXPORT_SYMBOL_GPL vmlinux 0x98483957 __netpoll_setup +EXPORT_SYMBOL_GPL vmlinux 0x9848aa19 mmu_interval_notifier_insert_locked +EXPORT_SYMBOL_GPL vmlinux 0x984a82b3 set_selection_kernel +EXPORT_SYMBOL_GPL vmlinux 0x98503a63 mpi_alloc +EXPORT_SYMBOL_GPL vmlinux 0x985453e1 lease_unregister_notifier +EXPORT_SYMBOL_GPL vmlinux 0x9862e7b4 gen10g_config_aneg +EXPORT_SYMBOL_GPL vmlinux 0x9869709c xfrm_dev_resume +EXPORT_SYMBOL_GPL vmlinux 0x98740bd9 ata_sff_dev_select +EXPORT_SYMBOL_GPL vmlinux 0x987520e2 usb_find_common_endpoints_reverse +EXPORT_SYMBOL_GPL vmlinux 0x9879932b crypto_register_notifier +EXPORT_SYMBOL_GPL vmlinux 0x987ab0a5 amd_get_nb_id +EXPORT_SYMBOL_GPL vmlinux 0x987d6350 vfs_setlease +EXPORT_SYMBOL_GPL vmlinux 0x98819796 platform_device_del +EXPORT_SYMBOL_GPL vmlinux 0x988a1a00 sn_region_size +EXPORT_SYMBOL_GPL vmlinux 0x989074ff kmsg_dump_reason_str +EXPORT_SYMBOL_GPL vmlinux 0x9891b6d1 usb_create_hcd +EXPORT_SYMBOL_GPL vmlinux 0x989efa24 __sock_recv_wifi_status +EXPORT_SYMBOL_GPL vmlinux 0x98aa4ebd param_ops_bool_enable_only +EXPORT_SYMBOL_GPL vmlinux 0x98cf79e3 serial8250_release_dma +EXPORT_SYMBOL_GPL vmlinux 0x98ee62b2 ring_buffer_record_disable_cpu +EXPORT_SYMBOL_GPL vmlinux 0x98f4d306 hyperv_flush_guest_mapping +EXPORT_SYMBOL_GPL vmlinux 0x98fa1e20 dm_get_reserved_rq_based_ios +EXPORT_SYMBOL_GPL vmlinux 0x990ed63e acpi_debugfs_dir +EXPORT_SYMBOL_GPL vmlinux 0x99184c2f dw_pcie_upconfig_setup +EXPORT_SYMBOL_GPL vmlinux 0x9930f8a3 uv_bios_change_memprotect +EXPORT_SYMBOL_GPL vmlinux 0x99311c0e devm_mdiobus_free +EXPORT_SYMBOL_GPL vmlinux 0x993c5197 iommu_device_link +EXPORT_SYMBOL_GPL vmlinux 0x993dde12 transport_setup_device +EXPORT_SYMBOL_GPL vmlinux 0x9942a05d crypto_get_default_null_skcipher +EXPORT_SYMBOL_GPL vmlinux 0x99430ba2 acpi_get_phys_id +EXPORT_SYMBOL_GPL vmlinux 0x99512d8c sock_diag_register_inet_compat +EXPORT_SYMBOL_GPL vmlinux 0x995a1f68 fwnode_graph_get_remote_node +EXPORT_SYMBOL_GPL vmlinux 0x995d1071 prof_on +EXPORT_SYMBOL_GPL vmlinux 0x9965ff90 xfrm_audit_state_icvfail +EXPORT_SYMBOL_GPL vmlinux 0x9978433b nvdimm_kobj +EXPORT_SYMBOL_GPL vmlinux 0x9980f524 clk_hw_set_rate_range +EXPORT_SYMBOL_GPL vmlinux 0x998d79d6 x509_decode_time +EXPORT_SYMBOL_GPL vmlinux 0x998ecebc genphy_c45_restart_aneg +EXPORT_SYMBOL_GPL vmlinux 0x99982e53 pci_scan_child_bus +EXPORT_SYMBOL_GPL vmlinux 0x99ac3e03 usb_debug_root +EXPORT_SYMBOL_GPL vmlinux 0x99b4d8fd pci_try_reset_function +EXPORT_SYMBOL_GPL vmlinux 0x99ce461f irq_gc_mask_set_bit +EXPORT_SYMBOL_GPL vmlinux 0x99e5fab5 agp_add_bridge +EXPORT_SYMBOL_GPL vmlinux 0x99f018c4 nvmem_cell_read +EXPORT_SYMBOL_GPL vmlinux 0x99f2d00a sysfs_emit_at +EXPORT_SYMBOL_GPL vmlinux 0x9a0324f7 led_trigger_set +EXPORT_SYMBOL_GPL vmlinux 0x9a11a0fc crypto_attr_alg_name +EXPORT_SYMBOL_GPL vmlinux 0x9a1f2742 get_device_system_crosststamp +EXPORT_SYMBOL_GPL vmlinux 0x9a249ca7 cpufreq_dbs_governor_init +EXPORT_SYMBOL_GPL vmlinux 0x9a2d4624 acpi_dev_remove_driver_gpios +EXPORT_SYMBOL_GPL vmlinux 0x9a4fc9e8 usb_hcd_map_urb_for_dma +EXPORT_SYMBOL_GPL vmlinux 0x9a58c7d9 phy_select_page +EXPORT_SYMBOL_GPL vmlinux 0x9a58dd2d trace_print_bitmask_seq +EXPORT_SYMBOL_GPL vmlinux 0x9a772393 regmap_raw_write_async +EXPORT_SYMBOL_GPL vmlinux 0x9aa71c2a efi_query_variable_store +EXPORT_SYMBOL_GPL vmlinux 0x9aaac699 dev_pm_opp_cpumask_remove_table +EXPORT_SYMBOL_GPL vmlinux 0x9abfa16b wm8350_set_bits +EXPORT_SYMBOL_GPL vmlinux 0x9ac11b74 suspend_set_ops +EXPORT_SYMBOL_GPL vmlinux 0x9acf1676 nf_queue_entry_get_refs +EXPORT_SYMBOL_GPL vmlinux 0x9ad4e02e rtc_read_time +EXPORT_SYMBOL_GPL vmlinux 0x9ad87e7e devm_add_action +EXPORT_SYMBOL_GPL vmlinux 0x9ae4191f sbitmap_queue_init_node +EXPORT_SYMBOL_GPL vmlinux 0x9aeacb87 ring_buffer_iter_empty +EXPORT_SYMBOL_GPL vmlinux 0x9aee29ee usb_put_phy +EXPORT_SYMBOL_GPL vmlinux 0x9b050f01 devm_regmap_del_irq_chip +EXPORT_SYMBOL_GPL vmlinux 0x9b0e928f xenbus_read_otherend_details +EXPORT_SYMBOL_GPL vmlinux 0x9b13e9c0 __platform_register_drivers +EXPORT_SYMBOL_GPL vmlinux 0x9b1f48cc crypto_register_acomp +EXPORT_SYMBOL_GPL vmlinux 0x9b2a66d1 ata_sff_wait_ready +EXPORT_SYMBOL_GPL vmlinux 0x9b2c72c4 pci_epc_linkup +EXPORT_SYMBOL_GPL vmlinux 0x9b4b5785 fuse_file_poll +EXPORT_SYMBOL_GPL vmlinux 0x9b555c8c pm_suspend_default_s2idle +EXPORT_SYMBOL_GPL vmlinux 0x9b698c42 ioasid_set_data +EXPORT_SYMBOL_GPL vmlinux 0x9b6ec967 ring_buffer_size +EXPORT_SYMBOL_GPL vmlinux 0x9b896724 devlink_param_value_str_fill +EXPORT_SYMBOL_GPL vmlinux 0x9b9071cb get_old_itimerspec32 +EXPORT_SYMBOL_GPL vmlinux 0x9b92d16e pinctrl_gpio_set_config +EXPORT_SYMBOL_GPL vmlinux 0x9b92dac4 devlink_port_register +EXPORT_SYMBOL_GPL vmlinux 0x9b98fc24 pci_epc_put +EXPORT_SYMBOL_GPL vmlinux 0x9b9f3648 pcibios_scan_specific_bus +EXPORT_SYMBOL_GPL vmlinux 0x9ba2bb2b gpio_request_array +EXPORT_SYMBOL_GPL vmlinux 0x9baa4fa5 css_next_descendant_pre +EXPORT_SYMBOL_GPL vmlinux 0x9baa9a32 ata_host_alloc_pinfo +EXPORT_SYMBOL_GPL vmlinux 0x9bad141d hv_hypercall_pg +EXPORT_SYMBOL_GPL vmlinux 0x9bc77923 __tracepoint_neigh_update +EXPORT_SYMBOL_GPL vmlinux 0x9bc9a8e2 bpfilter_ops +EXPORT_SYMBOL_GPL vmlinux 0x9bcd7122 lookup_address_in_mm +EXPORT_SYMBOL_GPL vmlinux 0x9bcdc411 sk_msg_trim +EXPORT_SYMBOL_GPL vmlinux 0x9bece81b mpi_cmp_ui +EXPORT_SYMBOL_GPL vmlinux 0x9bfd0218 regmap_get_val_endian +EXPORT_SYMBOL_GPL vmlinux 0x9c051f52 pwm_request +EXPORT_SYMBOL_GPL vmlinux 0x9c05b131 tty_port_tty_hangup +EXPORT_SYMBOL_GPL vmlinux 0x9c1a4442 sbitmap_show +EXPORT_SYMBOL_GPL vmlinux 0x9c25185d tpm_pcr_read +EXPORT_SYMBOL_GPL vmlinux 0x9c2ef854 usb_hcd_unmap_urb_for_dma +EXPORT_SYMBOL_GPL vmlinux 0x9c39e075 pm_generic_resume +EXPORT_SYMBOL_GPL vmlinux 0x9c3fa532 regmap_field_free +EXPORT_SYMBOL_GPL vmlinux 0x9c444ce4 pci_epf_alloc_space +EXPORT_SYMBOL_GPL vmlinux 0x9c4c5033 xen_xenbus_fops +EXPORT_SYMBOL_GPL vmlinux 0x9c681126 tty_port_register_device_attr +EXPORT_SYMBOL_GPL vmlinux 0x9c6febfc add_uevent_var +EXPORT_SYMBOL_GPL vmlinux 0x9c719475 devm_namespace_disable +EXPORT_SYMBOL_GPL vmlinux 0x9c7c2f68 devm_pwm_get +EXPORT_SYMBOL_GPL vmlinux 0x9c803020 usb_phy_roothub_power_on +EXPORT_SYMBOL_GPL vmlinux 0x9c8f0476 clk_hw_get_rate +EXPORT_SYMBOL_GPL vmlinux 0x9c90100b cpufreq_generic_init +EXPORT_SYMBOL_GPL vmlinux 0x9ca480cc clk_gate_is_enabled +EXPORT_SYMBOL_GPL vmlinux 0x9caab9ef acpi_gpio_get_irq_resource +EXPORT_SYMBOL_GPL vmlinux 0x9cb1e84e do_truncate +EXPORT_SYMBOL_GPL vmlinux 0x9cc2093c dev_pm_qos_expose_latency_tolerance +EXPORT_SYMBOL_GPL vmlinux 0x9cc4f70a register_pm_notifier +EXPORT_SYMBOL_GPL vmlinux 0x9cc9e3e8 key_type_encrypted +EXPORT_SYMBOL_GPL vmlinux 0x9cd20703 aead_init_geniv +EXPORT_SYMBOL_GPL vmlinux 0x9cdc236e pm_wakeup_ws_event +EXPORT_SYMBOL_GPL vmlinux 0x9cdd280d devm_regmap_add_irq_chip +EXPORT_SYMBOL_GPL vmlinux 0x9cde313c __percpu_down_read +EXPORT_SYMBOL_GPL vmlinux 0x9ce57e47 spi_bus_lock +EXPORT_SYMBOL_GPL vmlinux 0x9ce68b6b spi_write_then_read +EXPORT_SYMBOL_GPL vmlinux 0x9cf37c44 __iowrite32_copy +EXPORT_SYMBOL_GPL vmlinux 0x9cff95bb usb_control_msg +EXPORT_SYMBOL_GPL vmlinux 0x9d055902 i2c_adapter_type +EXPORT_SYMBOL_GPL vmlinux 0x9d09e8ae ring_buffer_event_data +EXPORT_SYMBOL_GPL vmlinux 0x9d14205c cr4_read_shadow +EXPORT_SYMBOL_GPL vmlinux 0x9d2c5595 dev_attr_sw_activity +EXPORT_SYMBOL_GPL vmlinux 0x9d34f2b4 usb_driver_release_interface +EXPORT_SYMBOL_GPL vmlinux 0x9d3d6774 sata_link_scr_lpm +EXPORT_SYMBOL_GPL vmlinux 0x9d641001 blk_rq_err_bytes +EXPORT_SYMBOL_GPL vmlinux 0x9d664f1d power_supply_changed +EXPORT_SYMBOL_GPL vmlinux 0x9d8655e4 fwnode_get_parent +EXPORT_SYMBOL_GPL vmlinux 0x9d95704f sock_diag_unregister_inet_compat +EXPORT_SYMBOL_GPL vmlinux 0x9dc26226 __put_task_struct +EXPORT_SYMBOL_GPL vmlinux 0x9dd2b2a2 platform_device_add_data +EXPORT_SYMBOL_GPL vmlinux 0x9dd6ea43 vfio_iommu_group_put +EXPORT_SYMBOL_GPL vmlinux 0x9dda0bbb i2c_new_smbus_alert_device +EXPORT_SYMBOL_GPL vmlinux 0x9ddcf94e spi_async +EXPORT_SYMBOL_GPL vmlinux 0x9de1dd90 blk_mq_quiesce_queue +EXPORT_SYMBOL_GPL vmlinux 0x9df918f2 virtio_finalize_features +EXPORT_SYMBOL_GPL vmlinux 0x9e005e6f cppc_get_perf_caps +EXPORT_SYMBOL_GPL vmlinux 0x9e08d700 __tracepoint_xdp_bulk_tx +EXPORT_SYMBOL_GPL vmlinux 0x9e26a7a3 pm_runtime_get_if_active +EXPORT_SYMBOL_GPL vmlinux 0x9e388cb1 pci_user_read_config_dword +EXPORT_SYMBOL_GPL vmlinux 0x9e4085fa crypto_stats_ahash_final +EXPORT_SYMBOL_GPL vmlinux 0x9e423bbc unregister_ftrace_function +EXPORT_SYMBOL_GPL vmlinux 0x9e472f5f snmp_fold_field +EXPORT_SYMBOL_GPL vmlinux 0x9e68fad7 blk_ksm_destroy +EXPORT_SYMBOL_GPL vmlinux 0x9e73a18f usb_unanchor_urb +EXPORT_SYMBOL_GPL vmlinux 0x9e898627 regulator_suspend_enable +EXPORT_SYMBOL_GPL vmlinux 0x9e9ac1e9 srcu_torture_stats_print +EXPORT_SYMBOL_GPL vmlinux 0x9eb7e40e iomap_dio_rw +EXPORT_SYMBOL_GPL vmlinux 0x9ed2502f shmem_zero_setup +EXPORT_SYMBOL_GPL vmlinux 0x9ed345fa crypto_stats_kpp_compute_shared_secret +EXPORT_SYMBOL_GPL vmlinux 0x9ed554b3 unregister_keyboard_notifier +EXPORT_SYMBOL_GPL vmlinux 0x9eea12c0 pm_generic_restore +EXPORT_SYMBOL_GPL vmlinux 0x9f0a1092 arizona_dev_exit +EXPORT_SYMBOL_GPL vmlinux 0x9f0e9d98 security_file_ioctl +EXPORT_SYMBOL_GPL vmlinux 0x9f168804 edac_mc_find_csrow_by_page +EXPORT_SYMBOL_GPL vmlinux 0x9f230cec crypto_hash_alg_has_setkey +EXPORT_SYMBOL_GPL vmlinux 0x9f32da28 vfs_readf +EXPORT_SYMBOL_GPL vmlinux 0x9f36457e __tracepoint_fdb_delete +EXPORT_SYMBOL_GPL vmlinux 0x9f638156 setfl +EXPORT_SYMBOL_GPL vmlinux 0x9f8fff83 xhci_init_driver +EXPORT_SYMBOL_GPL vmlinux 0x9f9683cc mmc_cmdq_enable +EXPORT_SYMBOL_GPL vmlinux 0x9fab32df arch_set_freq_scale +EXPORT_SYMBOL_GPL vmlinux 0x9fbf58ff rio_release_inb_mbox +EXPORT_SYMBOL_GPL vmlinux 0x9fbfebab erst_write +EXPORT_SYMBOL_GPL vmlinux 0x9fce80db fb_notifier_call_chain +EXPORT_SYMBOL_GPL vmlinux 0x9fe899b7 get_cpu_idle_time +EXPORT_SYMBOL_GPL vmlinux 0x9fe89fbb ata_sff_check_status +EXPORT_SYMBOL_GPL vmlinux 0x9fe939e1 mpi_powm +EXPORT_SYMBOL_GPL vmlinux 0x9fef39e3 key_type_user +EXPORT_SYMBOL_GPL vmlinux 0xa01465cf ata_pci_sff_activate_host +EXPORT_SYMBOL_GPL vmlinux 0xa01a8d9b nd_cmd_bus_desc +EXPORT_SYMBOL_GPL vmlinux 0xa02343b5 dev_pm_opp_find_level_exact +EXPORT_SYMBOL_GPL vmlinux 0xa02effdf nf_hook_entries_insert_raw +EXPORT_SYMBOL_GPL vmlinux 0xa0421f83 devlink_net +EXPORT_SYMBOL_GPL vmlinux 0xa049ce02 acpi_dma_controller_register +EXPORT_SYMBOL_GPL vmlinux 0xa04f945a cpus_read_lock +EXPORT_SYMBOL_GPL vmlinux 0xa05b719b ata_sff_data_xfer32 +EXPORT_SYMBOL_GPL vmlinux 0xa0689eaf pci_msi_unmask_irq +EXPORT_SYMBOL_GPL vmlinux 0xa08a40c5 xdp_attachment_query +EXPORT_SYMBOL_GPL vmlinux 0xa0c6befa hrtimer_cancel +EXPORT_SYMBOL_GPL vmlinux 0xa0cbce0b da9052_adc_manual_read +EXPORT_SYMBOL_GPL vmlinux 0xa0d0a99c irq_domain_xlate_onetwocell +EXPORT_SYMBOL_GPL vmlinux 0xa0d3456d nr_swap_pages +EXPORT_SYMBOL_GPL vmlinux 0xa0f17641 tpm_chip_register +EXPORT_SYMBOL_GPL vmlinux 0xa0f90065 yield_to +EXPORT_SYMBOL_GPL vmlinux 0xa0fbb9fc get_user_pages_fast +EXPORT_SYMBOL_GPL vmlinux 0xa1017368 lp8788_write_byte +EXPORT_SYMBOL_GPL vmlinux 0xa10be10e serial8250_em485_config +EXPORT_SYMBOL_GPL vmlinux 0xa10c6e2a gpiochip_line_is_persistent +EXPORT_SYMBOL_GPL vmlinux 0xa11216be xen_store_domain_type +EXPORT_SYMBOL_GPL vmlinux 0xa137e475 dev_fwnode +EXPORT_SYMBOL_GPL vmlinux 0xa14183f9 irq_domain_set_hwirq_and_chip +EXPORT_SYMBOL_GPL vmlinux 0xa146c493 crypto_register_aeads +EXPORT_SYMBOL_GPL vmlinux 0xa153a622 extcon_sync +EXPORT_SYMBOL_GPL vmlinux 0xa156a1f2 erst_get_record_id_end +EXPORT_SYMBOL_GPL vmlinux 0xa15d9e00 nvdimm_clear_poison +EXPORT_SYMBOL_GPL vmlinux 0xa15f9792 pci_epc_multi_mem_init +EXPORT_SYMBOL_GPL vmlinux 0xa1600337 rio_request_outb_dbell +EXPORT_SYMBOL_GPL vmlinux 0xa164303c usb_store_new_id +EXPORT_SYMBOL_GPL vmlinux 0xa16478d2 __of_phy_provider_register +EXPORT_SYMBOL_GPL vmlinux 0xa1691b63 xas_find_marked +EXPORT_SYMBOL_GPL vmlinux 0xa16d59d6 blk_insert_cloned_request +EXPORT_SYMBOL_GPL vmlinux 0xa18ee545 sched_trace_rd_span +EXPORT_SYMBOL_GPL vmlinux 0xa1a02e0e dax_copy_from_iter +EXPORT_SYMBOL_GPL vmlinux 0xa1a2efe3 dma_buf_detach +EXPORT_SYMBOL_GPL vmlinux 0xa1c3c38c tcp_abort +EXPORT_SYMBOL_GPL vmlinux 0xa1c577f9 fsnotify_parent +EXPORT_SYMBOL_GPL vmlinux 0xa1c9514b vfs_getxattr +EXPORT_SYMBOL_GPL vmlinux 0xa1d8004a videomode_from_timing +EXPORT_SYMBOL_GPL vmlinux 0xa1e11862 tcp_bpf_sendmsg_redir +EXPORT_SYMBOL_GPL vmlinux 0xa1e35803 pm_relax +EXPORT_SYMBOL_GPL vmlinux 0xa1ed9c8b add_hwgenerator_randomness +EXPORT_SYMBOL_GPL vmlinux 0xa207659e do_splice_to +EXPORT_SYMBOL_GPL vmlinux 0xa20d01ba __trace_bprintk +EXPORT_SYMBOL_GPL vmlinux 0xa21e8d9c phy_optional_get +EXPORT_SYMBOL_GPL vmlinux 0xa2321ab6 pci_aer_clear_nonfatal_status +EXPORT_SYMBOL_GPL vmlinux 0xa2450ca2 iomap_page_mkwrite +EXPORT_SYMBOL_GPL vmlinux 0xa24c863a fwnode_get_named_gpiod +EXPORT_SYMBOL_GPL vmlinux 0xa24d779a pci_hp_add +EXPORT_SYMBOL_GPL vmlinux 0xa25748ba dm_disk +EXPORT_SYMBOL_GPL vmlinux 0xa25f78b8 __list_lru_init +EXPORT_SYMBOL_GPL vmlinux 0xa26d9b4f workqueue_congested +EXPORT_SYMBOL_GPL vmlinux 0xa27c9c43 pwmchip_add +EXPORT_SYMBOL_GPL vmlinux 0xa29a5d2b __regmap_init_spi +EXPORT_SYMBOL_GPL vmlinux 0xa2aad1ea xfrm_output_resume +EXPORT_SYMBOL_GPL vmlinux 0xa2af54b3 irq_from_evtchn +EXPORT_SYMBOL_GPL vmlinux 0xa2c7ac5b lwtunnel_xmit +EXPORT_SYMBOL_GPL vmlinux 0xa2cbdaa2 balloon_page_dequeue +EXPORT_SYMBOL_GPL vmlinux 0xa2ce3247 shash_free_singlespawn_instance +EXPORT_SYMBOL_GPL vmlinux 0xa2d3828c efivar_entry_get +EXPORT_SYMBOL_GPL vmlinux 0xa2e1b3ef trace_printk_init_buffers +EXPORT_SYMBOL_GPL vmlinux 0xa2f7487f hv_is_hibernation_supported +EXPORT_SYMBOL_GPL vmlinux 0xa2f812f9 phy_10gbit_fec_features_array +EXPORT_SYMBOL_GPL vmlinux 0xa30ba236 blkcg_policy_register +EXPORT_SYMBOL_GPL vmlinux 0xa314d14f xdp_convert_zc_to_xdp_frame +EXPORT_SYMBOL_GPL vmlinux 0xa31cb0b9 rio_unregister_driver +EXPORT_SYMBOL_GPL vmlinux 0xa353eb5d badblocks_check +EXPORT_SYMBOL_GPL vmlinux 0xa35f4982 pci_epc_get_msix +EXPORT_SYMBOL_GPL vmlinux 0xa3659b5f __tracepoint_devlink_hwerr +EXPORT_SYMBOL_GPL vmlinux 0xa36f50fb is_binary_blacklisted +EXPORT_SYMBOL_GPL vmlinux 0xa377dd19 acpi_device_uevent_modalias +EXPORT_SYMBOL_GPL vmlinux 0xa37cf3b0 pcc_mbox_free_channel +EXPORT_SYMBOL_GPL vmlinux 0xa38602cd drain_workqueue +EXPORT_SYMBOL_GPL vmlinux 0xa389a49a profile_event_register +EXPORT_SYMBOL_GPL vmlinux 0xa38a9f71 get_itimerspec64 +EXPORT_SYMBOL_GPL vmlinux 0xa3948d5e clk_hw_rate_is_protected +EXPORT_SYMBOL_GPL vmlinux 0xa39504fc tcp_enter_memory_pressure +EXPORT_SYMBOL_GPL vmlinux 0xa3a04602 btree_geo64 +EXPORT_SYMBOL_GPL vmlinux 0xa3b958ce reset_hung_task_detector +EXPORT_SYMBOL_GPL vmlinux 0xa3bc358a crypto_grab_skcipher +EXPORT_SYMBOL_GPL vmlinux 0xa3c49c54 balloon_page_alloc +EXPORT_SYMBOL_GPL vmlinux 0xa3cb9d6e scsi_register_device_handler +EXPORT_SYMBOL_GPL vmlinux 0xa3e11ad8 pci_disable_rom +EXPORT_SYMBOL_GPL vmlinux 0xa3e19216 led_trigger_write +EXPORT_SYMBOL_GPL vmlinux 0xa3ece414 freezer_cgrp_subsys_enabled_key +EXPORT_SYMBOL_GPL vmlinux 0xa3f12f69 __crypto_xor +EXPORT_SYMBOL_GPL vmlinux 0xa3f30d30 dev_coredumpm +EXPORT_SYMBOL_GPL vmlinux 0xa4031b7f sfp_parse_port +EXPORT_SYMBOL_GPL vmlinux 0xa410a295 devlink_region_destroy +EXPORT_SYMBOL_GPL vmlinux 0xa4137f43 iommu_dev_enable_feature +EXPORT_SYMBOL_GPL vmlinux 0xa419798f sysfs_create_file_ns +EXPORT_SYMBOL_GPL vmlinux 0xa41e2e73 cpuidle_poll_state_init +EXPORT_SYMBOL_GPL vmlinux 0xa4232fc8 irq_get_domain_generic_chip +EXPORT_SYMBOL_GPL vmlinux 0xa43b88cb pinctrl_add_gpio_ranges +EXPORT_SYMBOL_GPL vmlinux 0xa43b9ebd sata_link_debounce +EXPORT_SYMBOL_GPL vmlinux 0xa4437eae thermal_cooling_device_register +EXPORT_SYMBOL_GPL vmlinux 0xa44a1307 interval_tree_iter_first +EXPORT_SYMBOL_GPL vmlinux 0xa44f6414 bpf_prog_create_from_user +EXPORT_SYMBOL_GPL vmlinux 0xa452c297 hpet_mask_rtc_irq_bit +EXPORT_SYMBOL_GPL vmlinux 0xa452f2a4 xen_pirq_from_irq +EXPORT_SYMBOL_GPL vmlinux 0xa45c7b90 stack_trace_print +EXPORT_SYMBOL_GPL vmlinux 0xa471982d dm_table_set_type +EXPORT_SYMBOL_GPL vmlinux 0xa4729e04 i2c_add_numbered_adapter +EXPORT_SYMBOL_GPL vmlinux 0xa48196c8 kdb_poll_idx +EXPORT_SYMBOL_GPL vmlinux 0xa482bd41 uart_handle_dcd_change +EXPORT_SYMBOL_GPL vmlinux 0xa4ab7c1c ring_buffer_overruns +EXPORT_SYMBOL_GPL vmlinux 0xa4b07fe7 ring_buffer_change_overwrite +EXPORT_SYMBOL_GPL vmlinux 0xa4b89f91 device_attach +EXPORT_SYMBOL_GPL vmlinux 0xa4c8c661 blk_mq_alloc_request_hctx +EXPORT_SYMBOL_GPL vmlinux 0xa4cdce7e ata_sff_postreset +EXPORT_SYMBOL_GPL vmlinux 0xa50335f4 sbitmap_finish_wait +EXPORT_SYMBOL_GPL vmlinux 0xa51c0c81 tun_get_socket +EXPORT_SYMBOL_GPL vmlinux 0xa51c9681 led_get_default_pattern +EXPORT_SYMBOL_GPL vmlinux 0xa531471e clk_save_context +EXPORT_SYMBOL_GPL vmlinux 0xa542171f ata_sas_port_stop +EXPORT_SYMBOL_GPL vmlinux 0xa554b18f gpiod_get_raw_array_value_cansleep +EXPORT_SYMBOL_GPL vmlinux 0xa5874320 cpufreq_driver_target +EXPORT_SYMBOL_GPL vmlinux 0xa59c260e fscrypt_ioctl_get_nonce +EXPORT_SYMBOL_GPL vmlinux 0xa59eb317 pci_epf_unregister_driver +EXPORT_SYMBOL_GPL vmlinux 0xa5a0d9a4 driver_attach +EXPORT_SYMBOL_GPL vmlinux 0xa5b00791 cpufreq_dbs_governor_exit +EXPORT_SYMBOL_GPL vmlinux 0xa5bda8a1 efi_capsule_supported +EXPORT_SYMBOL_GPL vmlinux 0xa5be5745 of_reset_control_array_get +EXPORT_SYMBOL_GPL vmlinux 0xa5bf0edc nf_ct_hook +EXPORT_SYMBOL_GPL vmlinux 0xa5cb3a97 fuse_kill_sb_anon +EXPORT_SYMBOL_GPL vmlinux 0xa5d3b7b4 cpci_hp_register_controller +EXPORT_SYMBOL_GPL vmlinux 0xa5d7c388 pstore_type_to_name +EXPORT_SYMBOL_GPL vmlinux 0xa5e2a20a rio_mport_read_config_32 +EXPORT_SYMBOL_GPL vmlinux 0xa5efbf4c async_synchronize_full +EXPORT_SYMBOL_GPL vmlinux 0xa5fbd92d show_class_attr_string +EXPORT_SYMBOL_GPL vmlinux 0xa6094172 regcache_sync +EXPORT_SYMBOL_GPL vmlinux 0xa61c34f8 crypto_unregister_shashes +EXPORT_SYMBOL_GPL vmlinux 0xa6216a29 pci_hp_destroy +EXPORT_SYMBOL_GPL vmlinux 0xa62892c6 efivar_sysfs_list +EXPORT_SYMBOL_GPL vmlinux 0xa62d973f seg6_do_srh_inline +EXPORT_SYMBOL_GPL vmlinux 0xa6340e27 fib_rules_seq_read +EXPORT_SYMBOL_GPL vmlinux 0xa634ff39 cpuidle_get_driver +EXPORT_SYMBOL_GPL vmlinux 0xa666ef4b init_srcu_struct +EXPORT_SYMBOL_GPL vmlinux 0xa6824f3f __tracepoint_br_fdb_external_learn_add +EXPORT_SYMBOL_GPL vmlinux 0xa68c4f71 devm_regulator_put +EXPORT_SYMBOL_GPL vmlinux 0xa695b8eb usb_register_dev +EXPORT_SYMBOL_GPL vmlinux 0xa695cb71 regmap_field_update_bits_base +EXPORT_SYMBOL_GPL vmlinux 0xa6b04851 l3mdev_fib_table_by_index +EXPORT_SYMBOL_GPL vmlinux 0xa6b06f65 ata_sff_queue_work +EXPORT_SYMBOL_GPL vmlinux 0xa6b21ef2 dpm_suspend_end +EXPORT_SYMBOL_GPL vmlinux 0xa6debd5b regulator_map_voltage_iterate +EXPORT_SYMBOL_GPL vmlinux 0xa6e1a69d kick_all_cpus_sync +EXPORT_SYMBOL_GPL vmlinux 0xa6f4464a blk_abort_request +EXPORT_SYMBOL_GPL vmlinux 0xa7020cb7 fsstack_copy_inode_size +EXPORT_SYMBOL_GPL vmlinux 0xa709c835 fib6_info_destroy_rcu +EXPORT_SYMBOL_GPL vmlinux 0xa7127da7 mce_unregister_injector_chain +EXPORT_SYMBOL_GPL vmlinux 0xa712e298 dax_supported +EXPORT_SYMBOL_GPL vmlinux 0xa72ac77e wm831x_device_shutdown +EXPORT_SYMBOL_GPL vmlinux 0xa731f387 nl_table_lock +EXPORT_SYMBOL_GPL vmlinux 0xa74398b9 icc_link_destroy +EXPORT_SYMBOL_GPL vmlinux 0xa74df505 pci_cfg_access_trylock +EXPORT_SYMBOL_GPL vmlinux 0xa75d4193 replace_page_cache_page +EXPORT_SYMBOL_GPL vmlinux 0xa7688f2f devm_usb_get_phy_by_phandle +EXPORT_SYMBOL_GPL vmlinux 0xa7727ab4 mmc_sanitize +EXPORT_SYMBOL_GPL vmlinux 0xa77d6968 powercap_unregister_zone +EXPORT_SYMBOL_GPL vmlinux 0xa7837ed2 tcp_register_congestion_control +EXPORT_SYMBOL_GPL vmlinux 0xa78a2502 put_device +EXPORT_SYMBOL_GPL vmlinux 0xa7b2be23 blk_queue_write_cache +EXPORT_SYMBOL_GPL vmlinux 0xa7ba0be8 tracing_cond_snapshot_data +EXPORT_SYMBOL_GPL vmlinux 0xa7c32ae3 devm_gpiod_get +EXPORT_SYMBOL_GPL vmlinux 0xa7d80e1a fwnode_graph_get_next_endpoint +EXPORT_SYMBOL_GPL vmlinux 0xa7e5c4d3 tty_find_polling_driver +EXPORT_SYMBOL_GPL vmlinux 0xa7ec81ec pci_store_saved_state +EXPORT_SYMBOL_GPL vmlinux 0xa7f7e064 dev_pm_put_subsys_data +EXPORT_SYMBOL_GPL vmlinux 0xa8048be5 devfreq_event_disable_edev +EXPORT_SYMBOL_GPL vmlinux 0xa826f3da i2c_handle_smbus_host_notify +EXPORT_SYMBOL_GPL vmlinux 0xa8278497 ata_std_qc_defer +EXPORT_SYMBOL_GPL vmlinux 0xa834b18e devm_i2c_new_dummy_device +EXPORT_SYMBOL_GPL vmlinux 0xa836f0d6 of_phy_simple_xlate +EXPORT_SYMBOL_GPL vmlinux 0xa851973a raw_notifier_call_chain +EXPORT_SYMBOL_GPL vmlinux 0xa85769f9 usb_wakeup_notification +EXPORT_SYMBOL_GPL vmlinux 0xa857ee3c wakeup_source_register +EXPORT_SYMBOL_GPL vmlinux 0xa861a115 kobject_uevent_env +EXPORT_SYMBOL_GPL vmlinux 0xa8759dd4 devm_kasprintf +EXPORT_SYMBOL_GPL vmlinux 0xa881a8a5 virtio_check_driver_offered_feature +EXPORT_SYMBOL_GPL vmlinux 0xa88ce3b5 securityfs_create_dir +EXPORT_SYMBOL_GPL vmlinux 0xa89172ae devm_nvdimm_memremap +EXPORT_SYMBOL_GPL vmlinux 0xa89d2ca9 usb_add_phy_dev +EXPORT_SYMBOL_GPL vmlinux 0xa89d590f crypto_register_instance +EXPORT_SYMBOL_GPL vmlinux 0xa8a24363 fsnotify_add_mark +EXPORT_SYMBOL_GPL vmlinux 0xa8bc1596 led_colors +EXPORT_SYMBOL_GPL vmlinux 0xa8d48a0d screen_glyph +EXPORT_SYMBOL_GPL vmlinux 0xa8f00f6c user_describe +EXPORT_SYMBOL_GPL vmlinux 0xa906ffeb fl6_merge_options +EXPORT_SYMBOL_GPL vmlinux 0xa9126bff hpet_set_rtc_irq_bit +EXPORT_SYMBOL_GPL vmlinux 0xa91a670d dev_pm_opp_find_freq_floor +EXPORT_SYMBOL_GPL vmlinux 0xa92390ec nd_blk_memremap_flags +EXPORT_SYMBOL_GPL vmlinux 0xa92a11f9 bpf_prog_get_type_dev +EXPORT_SYMBOL_GPL vmlinux 0xa9320d27 ktime_get_seconds +EXPORT_SYMBOL_GPL vmlinux 0xa93e16a3 ip_local_out +EXPORT_SYMBOL_GPL vmlinux 0xa959979a devres_close_group +EXPORT_SYMBOL_GPL vmlinux 0xa9833b79 pm_clk_add_clk +EXPORT_SYMBOL_GPL vmlinux 0xa9854364 umc_normaddr_to_sysaddr +EXPORT_SYMBOL_GPL vmlinux 0xa993f538 of_pm_clk_add_clk +EXPORT_SYMBOL_GPL vmlinux 0xa99ef899 devlink_fmsg_bool_pair_put +EXPORT_SYMBOL_GPL vmlinux 0xa9ad3b10 pci_find_next_ext_capability +EXPORT_SYMBOL_GPL vmlinux 0xa9bc8b74 module_mutex +EXPORT_SYMBOL_GPL vmlinux 0xa9d5632c bus_get_device_klist +EXPORT_SYMBOL_GPL vmlinux 0xa9e18049 task_handoff_unregister +EXPORT_SYMBOL_GPL vmlinux 0xaa0050f3 dev_pm_qos_update_user_latency_tolerance +EXPORT_SYMBOL_GPL vmlinux 0xaa10bf3d acpi_is_pnp_device +EXPORT_SYMBOL_GPL vmlinux 0xaa12c51b extcon_unregister_notifier_all +EXPORT_SYMBOL_GPL vmlinux 0xaa193002 sock_diag_save_cookie +EXPORT_SYMBOL_GPL vmlinux 0xaa230f88 perf_unregister_guest_info_callbacks +EXPORT_SYMBOL_GPL vmlinux 0xaa367917 crypto_alloc_akcipher +EXPORT_SYMBOL_GPL vmlinux 0xaa4eb470 fwnode_get_phy_mode +EXPORT_SYMBOL_GPL vmlinux 0xaa53d80f edac_pci_add_device +EXPORT_SYMBOL_GPL vmlinux 0xaa54944b fat_get_dotdot_entry +EXPORT_SYMBOL_GPL vmlinux 0xaa5aee1c uv_bios_mq_watchlist_alloc +EXPORT_SYMBOL_GPL vmlinux 0xaa5f6454 relay_open +EXPORT_SYMBOL_GPL vmlinux 0xaa6a50f9 __static_key_deferred_flush +EXPORT_SYMBOL_GPL vmlinux 0xaa6eb1e4 rio_mport_get_physefb +EXPORT_SYMBOL_GPL vmlinux 0xaa86cfb5 uv_possible_blades +EXPORT_SYMBOL_GPL vmlinux 0xaa8b8376 fuse_dev_alloc +EXPORT_SYMBOL_GPL vmlinux 0xaa9203fb debugfs_file_get +EXPORT_SYMBOL_GPL vmlinux 0xaa947d00 rtc_set_alarm +EXPORT_SYMBOL_GPL vmlinux 0xaa971095 relay_late_setup_files +EXPORT_SYMBOL_GPL vmlinux 0xaaa918c9 ftrace_dump +EXPORT_SYMBOL_GPL vmlinux 0xaac45a3e extcon_dev_register +EXPORT_SYMBOL_GPL vmlinux 0xaae114db tps6586x_set_bits +EXPORT_SYMBOL_GPL vmlinux 0xaaed4682 pci_slots_kset +EXPORT_SYMBOL_GPL vmlinux 0xaaf1f125 class_interface_unregister +EXPORT_SYMBOL_GPL vmlinux 0xab00d0e4 tcp_orphan_count +EXPORT_SYMBOL_GPL vmlinux 0xab055378 __inode_attach_wb +EXPORT_SYMBOL_GPL vmlinux 0xab1e0e93 hv_setup_kexec_handler +EXPORT_SYMBOL_GPL vmlinux 0xab24cd12 __acpi_node_get_property_reference +EXPORT_SYMBOL_GPL vmlinux 0xab26801f iommu_fwspec_free +EXPORT_SYMBOL_GPL vmlinux 0xab2bd9c7 tty_ldisc_deref +EXPORT_SYMBOL_GPL vmlinux 0xab586b25 pm_runtime_force_suspend +EXPORT_SYMBOL_GPL vmlinux 0xab72932b lwtstate_free +EXPORT_SYMBOL_GPL vmlinux 0xab7db980 nvmem_cell_read_u16 +EXPORT_SYMBOL_GPL vmlinux 0xab817242 xen_unmap_domain_gfn_range +EXPORT_SYMBOL_GPL vmlinux 0xab83c787 unix_outq_len +EXPORT_SYMBOL_GPL vmlinux 0xab87caa7 devm_kfree +EXPORT_SYMBOL_GPL vmlinux 0xab8bdf9a tpm1_getcap +EXPORT_SYMBOL_GPL vmlinux 0xab8f71df led_classdev_resume +EXPORT_SYMBOL_GPL vmlinux 0xab9bd884 perf_register_guest_info_callbacks +EXPORT_SYMBOL_GPL vmlinux 0xabb3e0bf ohci_hub_status_data +EXPORT_SYMBOL_GPL vmlinux 0xabc03b64 devfreq_event_is_enabled +EXPORT_SYMBOL_GPL vmlinux 0xabc298d0 intel_scu_ipc_unregister +EXPORT_SYMBOL_GPL vmlinux 0xabc640f3 list_lru_isolate +EXPORT_SYMBOL_GPL vmlinux 0xabcd23d6 xen_pci_frontend +EXPORT_SYMBOL_GPL vmlinux 0xabd343ba set_cpus_allowed_ptr +EXPORT_SYMBOL_GPL vmlinux 0xabd52ecc tpm_get_timeouts +EXPORT_SYMBOL_GPL vmlinux 0xabdd13a9 sysfs_remove_file_ns +EXPORT_SYMBOL_GPL vmlinux 0xac16ff7d irq_domain_alloc_irqs_parent +EXPORT_SYMBOL_GPL vmlinux 0xac24bf38 crypto_skcipher_decrypt +EXPORT_SYMBOL_GPL vmlinux 0xac28ce11 fwnode_create_software_node +EXPORT_SYMBOL_GPL vmlinux 0xac3bc832 crypto_register_aead +EXPORT_SYMBOL_GPL vmlinux 0xac52fc53 dmaengine_desc_set_metadata_len +EXPORT_SYMBOL_GPL vmlinux 0xac61c267 icc_nodes_remove +EXPORT_SYMBOL_GPL vmlinux 0xac6661ee dev_pm_opp_get_max_clock_latency +EXPORT_SYMBOL_GPL vmlinux 0xac78131a tpm_tis_remove +EXPORT_SYMBOL_GPL vmlinux 0xac86569f pci_load_and_free_saved_state +EXPORT_SYMBOL_GPL vmlinux 0xac8ab10c dm_bio_from_per_bio_data +EXPORT_SYMBOL_GPL vmlinux 0xac94c549 __pci_reset_function_locked +EXPORT_SYMBOL_GPL vmlinux 0xaca6a329 fib6_get_table +EXPORT_SYMBOL_GPL vmlinux 0xacb4d88c clk_rate_exclusive_put +EXPORT_SYMBOL_GPL vmlinux 0xacb4ecf6 regmap_attach_dev +EXPORT_SYMBOL_GPL vmlinux 0xacba16bf usb_unpoison_urb +EXPORT_SYMBOL_GPL vmlinux 0xacba8f11 devm_of_led_get +EXPORT_SYMBOL_GPL vmlinux 0xaccbbd9a serial8250_em485_stop_tx +EXPORT_SYMBOL_GPL vmlinux 0xaccdfee5 ata_scsi_slave_destroy +EXPORT_SYMBOL_GPL vmlinux 0xad0f2b6c unix_table_lock +EXPORT_SYMBOL_GPL vmlinux 0xad2765f6 tcp_rate_check_app_limited +EXPORT_SYMBOL_GPL vmlinux 0xad2c1126 sk_free_unlock_clone +EXPORT_SYMBOL_GPL vmlinux 0xad31c8ad user_read +EXPORT_SYMBOL_GPL vmlinux 0xad375f7a tty_buffer_set_limit +EXPORT_SYMBOL_GPL vmlinux 0xad4e6259 remove_cpu +EXPORT_SYMBOL_GPL vmlinux 0xad505a1a wm8350_device_init +EXPORT_SYMBOL_GPL vmlinux 0xad5737fc efivar_init +EXPORT_SYMBOL_GPL vmlinux 0xad5f0017 perf_trace_buf_alloc +EXPORT_SYMBOL_GPL vmlinux 0xad624d41 serial8250_do_set_divisor +EXPORT_SYMBOL_GPL vmlinux 0xad62f5ee is_nvdimm_sync +EXPORT_SYMBOL_GPL vmlinux 0xad645234 register_switchdev_notifier +EXPORT_SYMBOL_GPL vmlinux 0xad7fa45d led_trigger_remove +EXPORT_SYMBOL_GPL vmlinux 0xad8091d6 irq_domain_create_hierarchy +EXPORT_SYMBOL_GPL vmlinux 0xad840e9a ipv4_redirect +EXPORT_SYMBOL_GPL vmlinux 0xad84f30d rdev_get_regmap +EXPORT_SYMBOL_GPL vmlinux 0xada17485 device_get_dma_attr +EXPORT_SYMBOL_GPL vmlinux 0xada38766 dst_cache_destroy +EXPORT_SYMBOL_GPL vmlinux 0xadb50b1c dev_pm_opp_set_prop_name +EXPORT_SYMBOL_GPL vmlinux 0xadb574bd xhci_run +EXPORT_SYMBOL_GPL vmlinux 0xadc08146 device_add_groups +EXPORT_SYMBOL_GPL vmlinux 0xadc67dfb nvdimm_bus_add_badrange +EXPORT_SYMBOL_GPL vmlinux 0xadee4694 inet6_csk_addr2sockaddr +EXPORT_SYMBOL_GPL vmlinux 0xadf9699b pci_write_msi_msg +EXPORT_SYMBOL_GPL vmlinux 0xadfc6ec5 pci_enable_rom +EXPORT_SYMBOL_GPL vmlinux 0xae0f531b _proc_mkdir +EXPORT_SYMBOL_GPL vmlinux 0xae1051b0 net_cls_cgrp_subsys_enabled_key +EXPORT_SYMBOL_GPL vmlinux 0xae2d4d20 __ftrace_vprintk +EXPORT_SYMBOL_GPL vmlinux 0xae39f80e dst_cache_init +EXPORT_SYMBOL_GPL vmlinux 0xae498500 bus_rescan_devices +EXPORT_SYMBOL_GPL vmlinux 0xae67dabb gov_update_cpu_data +EXPORT_SYMBOL_GPL vmlinux 0xae69b1c1 usermodehelper_read_unlock +EXPORT_SYMBOL_GPL vmlinux 0xae701c16 get_pid_task +EXPORT_SYMBOL_GPL vmlinux 0xae7c231d mpi_cmp +EXPORT_SYMBOL_GPL vmlinux 0xae9f32cc irq_domain_add_simple +EXPORT_SYMBOL_GPL vmlinux 0xaea0f1d7 rio_mport_get_feature +EXPORT_SYMBOL_GPL vmlinux 0xaead319b pm_generic_restore_noirq +EXPORT_SYMBOL_GPL vmlinux 0xaeb12315 find_iova +EXPORT_SYMBOL_GPL vmlinux 0xaeb56138 task_user_regset_view +EXPORT_SYMBOL_GPL vmlinux 0xaeb6f0be __cpuhp_state_add_instance +EXPORT_SYMBOL_GPL vmlinux 0xaeb771ce pm_runtime_forbid +EXPORT_SYMBOL_GPL vmlinux 0xaec27f8b cpuidle_register +EXPORT_SYMBOL_GPL vmlinux 0xaecbb9a2 crypto_aead_encrypt +EXPORT_SYMBOL_GPL vmlinux 0xaf076aec nd_fletcher64 +EXPORT_SYMBOL_GPL vmlinux 0xaf0b6ba7 blkg_rwstat_init +EXPORT_SYMBOL_GPL vmlinux 0xaf21687d pci_check_and_unmask_intx +EXPORT_SYMBOL_GPL vmlinux 0xaf21bbf4 virtio_add_status +EXPORT_SYMBOL_GPL vmlinux 0xaf4014ff usb_amd_quirk_pll_check +EXPORT_SYMBOL_GPL vmlinux 0xaf478e20 iommu_attach_device +EXPORT_SYMBOL_GPL vmlinux 0xaf643d42 pci_vfs_assigned +EXPORT_SYMBOL_GPL vmlinux 0xaf6fff50 rio_request_inb_dbell +EXPORT_SYMBOL_GPL vmlinux 0xaf793668 __alloc_percpu_gfp +EXPORT_SYMBOL_GPL vmlinux 0xaf7b0b53 of_led_get +EXPORT_SYMBOL_GPL vmlinux 0xaf829382 rio_inb_pwrite_handler +EXPORT_SYMBOL_GPL vmlinux 0xaf899a61 tpm_tis_core_init +EXPORT_SYMBOL_GPL vmlinux 0xafc685b6 max8997_write_reg +EXPORT_SYMBOL_GPL vmlinux 0xafd4dd8a sched_trace_rq_avg_irq +EXPORT_SYMBOL_GPL vmlinux 0xafddd545 ata_id_c_string +EXPORT_SYMBOL_GPL vmlinux 0xafec237c dev_pm_opp_get_max_volt_latency +EXPORT_SYMBOL_GPL vmlinux 0xaff41751 iommu_unmap +EXPORT_SYMBOL_GPL vmlinux 0xaff60860 dev_pm_opp_unregister_set_opp_helper +EXPORT_SYMBOL_GPL vmlinux 0xaffa5dfc ata_sff_hsm_move +EXPORT_SYMBOL_GPL vmlinux 0xb0209c4f pm_wakeup_dev_event +EXPORT_SYMBOL_GPL vmlinux 0xb0230632 sysfs_create_files +EXPORT_SYMBOL_GPL vmlinux 0xb02ac411 register_xenstore_notifier +EXPORT_SYMBOL_GPL vmlinux 0xb039fe1e pinctrl_utils_free_map +EXPORT_SYMBOL_GPL vmlinux 0xb05a9eed gpiod_get_value +EXPORT_SYMBOL_GPL vmlinux 0xb061564f compat_only_sysfs_link_entry_to_kobj +EXPORT_SYMBOL_GPL vmlinux 0xb061bc75 extcon_set_property_sync +EXPORT_SYMBOL_GPL vmlinux 0xb0747ed2 rcu_cpu_stall_suppress +EXPORT_SYMBOL_GPL vmlinux 0xb077e70a clk_unprepare +EXPORT_SYMBOL_GPL vmlinux 0xb08041b8 gpiod_get_array_optional +EXPORT_SYMBOL_GPL vmlinux 0xb09452cc mmu_notifier_range_update_to_read_only +EXPORT_SYMBOL_GPL vmlinux 0xb095cbbc power_supply_get_drvdata +EXPORT_SYMBOL_GPL vmlinux 0xb0b47beb dev_pm_opp_init_cpufreq_table +EXPORT_SYMBOL_GPL vmlinux 0xb0b65f15 kthread_queue_delayed_work +EXPORT_SYMBOL_GPL vmlinux 0xb0b85f47 ring_buffer_iter_reset +EXPORT_SYMBOL_GPL vmlinux 0xb0bebfd8 udp_destruct_sock +EXPORT_SYMBOL_GPL vmlinux 0xb0c6febc __devm_irq_alloc_descs +EXPORT_SYMBOL_GPL vmlinux 0xb0c74e61 fat_detach +EXPORT_SYMBOL_GPL vmlinux 0xb0ca3ef3 regmap_get_reg_stride +EXPORT_SYMBOL_GPL vmlinux 0xb0d0bcf0 xenbus_dev_cancel +EXPORT_SYMBOL_GPL vmlinux 0xb0d1656c gpio_free_array +EXPORT_SYMBOL_GPL vmlinux 0xb0d8a6dd vfs_cancel_lock +EXPORT_SYMBOL_GPL vmlinux 0xb0de70b3 ata_pci_sff_init_one +EXPORT_SYMBOL_GPL vmlinux 0xb0e8e671 xenbus_otherend_changed +EXPORT_SYMBOL_GPL vmlinux 0xb0f59858 __sock_recv_timestamp +EXPORT_SYMBOL_GPL vmlinux 0xb0fa550f crypto_unregister_algs +EXPORT_SYMBOL_GPL vmlinux 0xb0fb7200 phy_led_trigger_change_speed +EXPORT_SYMBOL_GPL vmlinux 0xb0fbb722 clk_fractional_divider_ops +EXPORT_SYMBOL_GPL vmlinux 0xb10d964d devlink_fmsg_pair_nest_end +EXPORT_SYMBOL_GPL vmlinux 0xb110655b __put_net +EXPORT_SYMBOL_GPL vmlinux 0xb11437cf iommu_device_register +EXPORT_SYMBOL_GPL vmlinux 0xb11d9000 tty_dev_name_to_number +EXPORT_SYMBOL_GPL vmlinux 0xb12916ba dw_pcie_ep_init_complete +EXPORT_SYMBOL_GPL vmlinux 0xb1425b32 dm_table_add_target_callbacks +EXPORT_SYMBOL_GPL vmlinux 0xb14774ba pci_generic_config_write +EXPORT_SYMBOL_GPL vmlinux 0xb1506d27 tty_buffer_lock_exclusive +EXPORT_SYMBOL_GPL vmlinux 0xb1647fc2 devlink_info_version_running_put +EXPORT_SYMBOL_GPL vmlinux 0xb172ffac efivars_sysfs_init +EXPORT_SYMBOL_GPL vmlinux 0xb1779758 xenbus_dev_groups +EXPORT_SYMBOL_GPL vmlinux 0xb17d2b57 nf_queue_entry_free +EXPORT_SYMBOL_GPL vmlinux 0xb18429eb suspend_device_irqs +EXPORT_SYMBOL_GPL vmlinux 0xb184ef97 sysfs_unbreak_active_protection +EXPORT_SYMBOL_GPL vmlinux 0xb19916a5 watchdog_register_device +EXPORT_SYMBOL_GPL vmlinux 0xb1994b51 get_net_ns_by_pid +EXPORT_SYMBOL_GPL vmlinux 0xb1b77127 posix_clock_register +EXPORT_SYMBOL_GPL vmlinux 0xb1bed25d dpm_resume_start +EXPORT_SYMBOL_GPL vmlinux 0xb1d2daab strp_stop +EXPORT_SYMBOL_GPL vmlinux 0xb1dabc1e unregister_ftrace_export +EXPORT_SYMBOL_GPL vmlinux 0xb1e03510 sysfs_remove_link_from_group +EXPORT_SYMBOL_GPL vmlinux 0xb1e250f0 hwspin_lock_register +EXPORT_SYMBOL_GPL vmlinux 0xb1e25684 __trace_bputs +EXPORT_SYMBOL_GPL vmlinux 0xb1e50877 trace_array_put +EXPORT_SYMBOL_GPL vmlinux 0xb1ef0548 ftrace_set_filter +EXPORT_SYMBOL_GPL vmlinux 0xb2092aac usb_hcd_start_port_resume +EXPORT_SYMBOL_GPL vmlinux 0xb20b81d1 nvdimm_has_cache +EXPORT_SYMBOL_GPL vmlinux 0xb212e3f2 __page_file_index +EXPORT_SYMBOL_GPL vmlinux 0xb21bec42 devm_mbox_controller_register +EXPORT_SYMBOL_GPL vmlinux 0xb2210d64 reset_control_deassert +EXPORT_SYMBOL_GPL vmlinux 0xb2341ba8 usb_unlocked_enable_lpm +EXPORT_SYMBOL_GPL vmlinux 0xb2405efc secure_tcp_seq +EXPORT_SYMBOL_GPL vmlinux 0xb25b37df devm_namespace_enable +EXPORT_SYMBOL_GPL vmlinux 0xb26a1add elfcorehdr_addr +EXPORT_SYMBOL_GPL vmlinux 0xb27a3fda regcache_sync_region +EXPORT_SYMBOL_GPL vmlinux 0xb28014db wm8997_i2c_regmap +EXPORT_SYMBOL_GPL vmlinux 0xb285b8f8 xen_in_preemptible_hcall +EXPORT_SYMBOL_GPL vmlinux 0xb29533ee zs_malloc +EXPORT_SYMBOL_GPL vmlinux 0xb29a1fbe devfreq_event_get_edev_count +EXPORT_SYMBOL_GPL vmlinux 0xb2a53075 usb_hcd_poll_rh_status +EXPORT_SYMBOL_GPL vmlinux 0xb2b0408d shmem_truncate_range +EXPORT_SYMBOL_GPL vmlinux 0xb2b04d5e alloc_dax +EXPORT_SYMBOL_GPL vmlinux 0xb2c1732e rcu_gp_set_torture_wait +EXPORT_SYMBOL_GPL vmlinux 0xb2cd5363 iommu_sva_unbind_device +EXPORT_SYMBOL_GPL vmlinux 0xb2d091ba serdev_device_write_flush +EXPORT_SYMBOL_GPL vmlinux 0xb2d8f70f pm_clk_runtime_resume +EXPORT_SYMBOL_GPL vmlinux 0xb2de4cf2 clk_gate_ops +EXPORT_SYMBOL_GPL vmlinux 0xb2e764e8 suspend_valid_only_mem +EXPORT_SYMBOL_GPL vmlinux 0xb2ee8d59 path_noexec +EXPORT_SYMBOL_GPL vmlinux 0xb307c909 devlink_fmsg_u64_pair_put +EXPORT_SYMBOL_GPL vmlinux 0xb3253ed9 hpet_rtc_timer_init +EXPORT_SYMBOL_GPL vmlinux 0xb326917c rio_del_device +EXPORT_SYMBOL_GPL vmlinux 0xb3351c6c rhashtable_walk_next +EXPORT_SYMBOL_GPL vmlinux 0xb33c0cf9 scsi_autopm_get_device +EXPORT_SYMBOL_GPL vmlinux 0xb34d0fd9 acpi_register_gsi +EXPORT_SYMBOL_GPL vmlinux 0xb36100aa virtqueue_get_vring +EXPORT_SYMBOL_GPL vmlinux 0xb3697565 cpuidle_enable_device +EXPORT_SYMBOL_GPL vmlinux 0xb388b2d8 class_create_file_ns +EXPORT_SYMBOL_GPL vmlinux 0xb38e4d72 __ip6_datagram_connect +EXPORT_SYMBOL_GPL vmlinux 0xb39c9c31 irq_chip_disable_parent +EXPORT_SYMBOL_GPL vmlinux 0xb3b3d484 gpiochip_irq_domain_activate +EXPORT_SYMBOL_GPL vmlinux 0xb3be8e6c dm_bio_get_target_bio_nr +EXPORT_SYMBOL_GPL vmlinux 0xb3c5ecd9 mm_account_pinned_pages +EXPORT_SYMBOL_GPL vmlinux 0xb3e7b6a4 regulator_bulk_disable +EXPORT_SYMBOL_GPL vmlinux 0xb3f6e8f4 generic_fh_to_dentry +EXPORT_SYMBOL_GPL vmlinux 0xb4016070 platform_get_resource_byname +EXPORT_SYMBOL_GPL vmlinux 0xb407c1df percpu_ref_switch_to_atomic +EXPORT_SYMBOL_GPL vmlinux 0xb417beba genphy_c45_an_config_aneg +EXPORT_SYMBOL_GPL vmlinux 0xb41ad43a sata_scr_write +EXPORT_SYMBOL_GPL vmlinux 0xb41cac4e pwm_adjust_config +EXPORT_SYMBOL_GPL vmlinux 0xb4208b88 of_clk_hw_register +EXPORT_SYMBOL_GPL vmlinux 0xb420d1f4 pci_bus_resource_n +EXPORT_SYMBOL_GPL vmlinux 0xb42e96f5 dma_buf_pin +EXPORT_SYMBOL_GPL vmlinux 0xb43f9365 ktime_get +EXPORT_SYMBOL_GPL vmlinux 0xb44e18ea audit_enabled +EXPORT_SYMBOL_GPL vmlinux 0xb4511357 cpufreq_generic_attr +EXPORT_SYMBOL_GPL vmlinux 0xb47a6233 usb_autopm_get_interface +EXPORT_SYMBOL_GPL vmlinux 0xb480c848 crypto_aead_setkey +EXPORT_SYMBOL_GPL vmlinux 0xb4885172 pci_rescan_bus +EXPORT_SYMBOL_GPL vmlinux 0xb48f0638 software_node_register +EXPORT_SYMBOL_GPL vmlinux 0xb49f917b thermal_notify_framework +EXPORT_SYMBOL_GPL vmlinux 0xb4a0a912 devm_spi_mem_dirmap_create +EXPORT_SYMBOL_GPL vmlinux 0xb4a2e591 dm_internal_suspend_fast +EXPORT_SYMBOL_GPL vmlinux 0xb4a61c88 dma_buf_get +EXPORT_SYMBOL_GPL vmlinux 0xb4afefd3 dev_pm_domain_set +EXPORT_SYMBOL_GPL vmlinux 0xb4b97c90 pvclock_gtod_register_notifier +EXPORT_SYMBOL_GPL vmlinux 0xb4c92563 dma_buf_put +EXPORT_SYMBOL_GPL vmlinux 0xb4d7d090 blk_mq_force_complete_rq +EXPORT_SYMBOL_GPL vmlinux 0xb4ea7cf7 kgdb_connected +EXPORT_SYMBOL_GPL vmlinux 0xb4eda0da ring_buffer_event_length +EXPORT_SYMBOL_GPL vmlinux 0xb4fd1a6c fsverity_verify_page +EXPORT_SYMBOL_GPL vmlinux 0xb4ff6bb6 hrtimer_active +EXPORT_SYMBOL_GPL vmlinux 0xb501b2df nd_cmd_dimm_desc +EXPORT_SYMBOL_GPL vmlinux 0xb50e1f27 __uv_cpu_info +EXPORT_SYMBOL_GPL vmlinux 0xb510c250 raw_v4_hashinfo +EXPORT_SYMBOL_GPL vmlinux 0xb512823f regmap_noinc_write +EXPORT_SYMBOL_GPL vmlinux 0xb51fbd64 edac_op_state +EXPORT_SYMBOL_GPL vmlinux 0xb520eb79 btree_merge +EXPORT_SYMBOL_GPL vmlinux 0xb523cc40 extcon_get_edev_by_phandle +EXPORT_SYMBOL_GPL vmlinux 0xb5443f33 watchdog_init_timeout +EXPORT_SYMBOL_GPL vmlinux 0xb558c1f9 pci_load_saved_state +EXPORT_SYMBOL_GPL vmlinux 0xb571ae6e fwnode_graph_get_remote_port_parent +EXPORT_SYMBOL_GPL vmlinux 0xb5746ed1 trace_seq_path +EXPORT_SYMBOL_GPL vmlinux 0xb57684f2 md_run +EXPORT_SYMBOL_GPL vmlinux 0xb580f122 regulator_set_voltage_rdev +EXPORT_SYMBOL_GPL vmlinux 0xb5a822a3 sdio_release_host +EXPORT_SYMBOL_GPL vmlinux 0xb5a83e35 gnttab_setup_auto_xlat_frames +EXPORT_SYMBOL_GPL vmlinux 0xb5a8c226 acpi_gsi_to_irq +EXPORT_SYMBOL_GPL vmlinux 0xb5b8b08c bsg_unregister_queue +EXPORT_SYMBOL_GPL vmlinux 0xb5c112a1 led_classdev_unregister +EXPORT_SYMBOL_GPL vmlinux 0xb5cf66cf fib_rules_unregister +EXPORT_SYMBOL_GPL vmlinux 0xb5d13003 debugfs_create_x16 +EXPORT_SYMBOL_GPL vmlinux 0xb5d8044d sysfs_groups_change_owner +EXPORT_SYMBOL_GPL vmlinux 0xb5e4737f inet_hash_connect +EXPORT_SYMBOL_GPL vmlinux 0xb5ed48c8 bind_interdomain_evtchn_to_irq +EXPORT_SYMBOL_GPL vmlinux 0xb5efbf00 sysfs_create_link +EXPORT_SYMBOL_GPL vmlinux 0xb6015d60 lp8788_read_multi_bytes +EXPORT_SYMBOL_GPL vmlinux 0xb6134261 arizona_pm_ops +EXPORT_SYMBOL_GPL vmlinux 0xb61c453d dev_pm_opp_disable +EXPORT_SYMBOL_GPL vmlinux 0xb6261484 register_die_notifier +EXPORT_SYMBOL_GPL vmlinux 0xb631ce0b crypto_skcipher_setkey +EXPORT_SYMBOL_GPL vmlinux 0xb64f7824 pin_user_pages_fast +EXPORT_SYMBOL_GPL vmlinux 0xb6526701 dev_pm_get_subsys_data +EXPORT_SYMBOL_GPL vmlinux 0xb66d8be9 page_mkclean +EXPORT_SYMBOL_GPL vmlinux 0xb66ed36a devm_init_badblocks +EXPORT_SYMBOL_GPL vmlinux 0xb6787346 sfp_unregister_socket +EXPORT_SYMBOL_GPL vmlinux 0xb680bc60 usb_hcd_pci_probe +EXPORT_SYMBOL_GPL vmlinux 0xb683d776 ata_wait_after_reset +EXPORT_SYMBOL_GPL vmlinux 0xb6888188 klp_shadow_get_or_alloc +EXPORT_SYMBOL_GPL vmlinux 0xb69010a9 ip6_local_out +EXPORT_SYMBOL_GPL vmlinux 0xb6a77c3f dm_accept_partial_bio +EXPORT_SYMBOL_GPL vmlinux 0xb6a7d9c2 fuse_dev_free +EXPORT_SYMBOL_GPL vmlinux 0xb6aa1525 efivar_entry_set_get_size +EXPORT_SYMBOL_GPL vmlinux 0xb6c5e614 acpi_processor_evaluate_cst +EXPORT_SYMBOL_GPL vmlinux 0xb6e6d99d clk_disable +EXPORT_SYMBOL_GPL vmlinux 0xb702838b alloc_iova +EXPORT_SYMBOL_GPL vmlinux 0xb703de91 __dev_forward_skb +EXPORT_SYMBOL_GPL vmlinux 0xb713e5eb sbitmap_queue_show +EXPORT_SYMBOL_GPL vmlinux 0xb7329c06 clk_set_phase +EXPORT_SYMBOL_GPL vmlinux 0xb73713d7 nvmem_add_cell_lookups +EXPORT_SYMBOL_GPL vmlinux 0xb73ec643 __mmdrop +EXPORT_SYMBOL_GPL vmlinux 0xb745bfc6 devm_regulator_unregister_supply_alias +EXPORT_SYMBOL_GPL vmlinux 0xb75041d1 hv_stimer_legacy_init +EXPORT_SYMBOL_GPL vmlinux 0xb750d1b2 kill_dev_dax +EXPORT_SYMBOL_GPL vmlinux 0xb76c70e6 devfreq_event_set_event +EXPORT_SYMBOL_GPL vmlinux 0xb775f6ce netdev_rx_handler_register +EXPORT_SYMBOL_GPL vmlinux 0xb7853989 edac_pci_free_ctl_info +EXPORT_SYMBOL_GPL vmlinux 0xb785fcfc pci_reset_function +EXPORT_SYMBOL_GPL vmlinux 0xb7948944 d_exchange +EXPORT_SYMBOL_GPL vmlinux 0xb7a387fc synchronize_rcu_tasks_rude +EXPORT_SYMBOL_GPL vmlinux 0xb7add6da platform_msi_domain_alloc_irqs +EXPORT_SYMBOL_GPL vmlinux 0xb7afa39a __devm_spi_alloc_controller +EXPORT_SYMBOL_GPL vmlinux 0xb7b54b74 extcon_get_extcon_dev +EXPORT_SYMBOL_GPL vmlinux 0xb7c69a63 unregister_vmap_purge_notifier +EXPORT_SYMBOL_GPL vmlinux 0xb7cb58ee ohci_resume +EXPORT_SYMBOL_GPL vmlinux 0xb7d7c12e hpet_set_alarm_time +EXPORT_SYMBOL_GPL vmlinux 0xb7d88436 palmas_ext_control_req_config +EXPORT_SYMBOL_GPL vmlinux 0xb7f3be68 hvc_remove +EXPORT_SYMBOL_GPL vmlinux 0xb7f73ef8 xas_init_marks +EXPORT_SYMBOL_GPL vmlinux 0xb7f990e9 rht_bucket_nested +EXPORT_SYMBOL_GPL vmlinux 0xb801127a phy_remove_lookup +EXPORT_SYMBOL_GPL vmlinux 0xb80724ac bpf_map_inc_not_zero +EXPORT_SYMBOL_GPL vmlinux 0xb80e5d54 xhci_gen_setup +EXPORT_SYMBOL_GPL vmlinux 0xb8212341 timecounter_cyc2time +EXPORT_SYMBOL_GPL vmlinux 0xb8273d0b __wake_up_sync +EXPORT_SYMBOL_GPL vmlinux 0xb82ea764 device_store_int +EXPORT_SYMBOL_GPL vmlinux 0xb83b90e7 dw_pcie_find_ext_capability +EXPORT_SYMBOL_GPL vmlinux 0xb847585f is_hash_blacklisted +EXPORT_SYMBOL_GPL vmlinux 0xb84c3fe5 devm_thermal_add_hwmon_sysfs +EXPORT_SYMBOL_GPL vmlinux 0xb84d0be5 sysfs_remove_mount_point +EXPORT_SYMBOL_GPL vmlinux 0xb854bd8e phy_basic_t1_features +EXPORT_SYMBOL_GPL vmlinux 0xb85937b4 __rt_mutex_init +EXPORT_SYMBOL_GPL vmlinux 0xb85eae2f usb_autopm_get_interface_async +EXPORT_SYMBOL_GPL vmlinux 0xb8854c8c sk_clear_memalloc +EXPORT_SYMBOL_GPL vmlinux 0xb88dbfce irq_set_irqchip_state +EXPORT_SYMBOL_GPL vmlinux 0xb89a592c tcp_set_keepalive +EXPORT_SYMBOL_GPL vmlinux 0xb89e69b1 jump_label_update_timeout +EXPORT_SYMBOL_GPL vmlinux 0xb8ab6856 da9052_adc_read_temp +EXPORT_SYMBOL_GPL vmlinux 0xb8b2b1f7 mce_register_decode_chain +EXPORT_SYMBOL_GPL vmlinux 0xb8bc982e da903x_read +EXPORT_SYMBOL_GPL vmlinux 0xb8cd3a7f nf_logger_put +EXPORT_SYMBOL_GPL vmlinux 0xb8f11603 idr_alloc +EXPORT_SYMBOL_GPL vmlinux 0xb8fde6b0 __pci_epf_register_driver +EXPORT_SYMBOL_GPL vmlinux 0xb900044c devlink_trap_groups_register +EXPORT_SYMBOL_GPL vmlinux 0xb912560d static_key_disable +EXPORT_SYMBOL_GPL vmlinux 0xb91cd488 ata_qc_complete +EXPORT_SYMBOL_GPL vmlinux 0xb94aa964 __clk_hw_register_fixed_rate +EXPORT_SYMBOL_GPL vmlinux 0xb95554e8 rdev_clear_badblocks +EXPORT_SYMBOL_GPL vmlinux 0xb95559bc housekeeping_any_cpu +EXPORT_SYMBOL_GPL vmlinux 0xb9681621 xdp_do_flush +EXPORT_SYMBOL_GPL vmlinux 0xb9731083 __nvdimm_create +EXPORT_SYMBOL_GPL vmlinux 0xb97a46ca led_put +EXPORT_SYMBOL_GPL vmlinux 0xb97fbdb9 xenbus_unmap_ring_vfree +EXPORT_SYMBOL_GPL vmlinux 0xb9a0d59a mbox_client_txdone +EXPORT_SYMBOL_GPL vmlinux 0xb9abbfa2 napi_hash_del +EXPORT_SYMBOL_GPL vmlinux 0xb9acde9e pci_epf_free_space +EXPORT_SYMBOL_GPL vmlinux 0xb9ae1bf9 fsverity_ioctl_measure +EXPORT_SYMBOL_GPL vmlinux 0xb9b085e5 udp4_lib_lookup +EXPORT_SYMBOL_GPL vmlinux 0xb9b48601 tty_ldisc_receive_buf +EXPORT_SYMBOL_GPL vmlinux 0xb9b9df41 usb_amd_dev_put +EXPORT_SYMBOL_GPL vmlinux 0xb9c16f51 hv_max_vp_index +EXPORT_SYMBOL_GPL vmlinux 0xb9c1c8f8 __devm_regmap_init_i2c +EXPORT_SYMBOL_GPL vmlinux 0xb9c2b358 devlink_port_params_register +EXPORT_SYMBOL_GPL vmlinux 0xb9c425de register_syscore_ops +EXPORT_SYMBOL_GPL vmlinux 0xb9d025c9 llist_del_first +EXPORT_SYMBOL_GPL vmlinux 0xb9d5efc5 crypto_register_shashes +EXPORT_SYMBOL_GPL vmlinux 0xb9e1f23a gpiod_get_array_value +EXPORT_SYMBOL_GPL vmlinux 0xb9f0303f blk_mq_make_request +EXPORT_SYMBOL_GPL vmlinux 0xb9f89246 trace_seq_vprintf +EXPORT_SYMBOL_GPL vmlinux 0xba01ec83 hv_stimer_global_cleanup +EXPORT_SYMBOL_GPL vmlinux 0xba01fde9 metadata_dst_alloc +EXPORT_SYMBOL_GPL vmlinux 0xba16d586 cpufreq_dbs_governor_limits +EXPORT_SYMBOL_GPL vmlinux 0xba220db7 __wake_up_sync_key +EXPORT_SYMBOL_GPL vmlinux 0xba2b7f64 cpufreq_generic_get +EXPORT_SYMBOL_GPL vmlinux 0xba2bd125 phy_gbit_fibre_features +EXPORT_SYMBOL_GPL vmlinux 0xba4f0128 crypto_stats_ahash_update +EXPORT_SYMBOL_GPL vmlinux 0xba5f6b42 crypto_grab_spawn +EXPORT_SYMBOL_GPL vmlinux 0xba82679d tcp_twsk_unique +EXPORT_SYMBOL_GPL vmlinux 0xba894d6a scsi_get_vpd_page +EXPORT_SYMBOL_GPL vmlinux 0xba984d9b acpi_ec_remove_query_handler +EXPORT_SYMBOL_GPL vmlinux 0xbab9a9f0 maxim_charger_currents +EXPORT_SYMBOL_GPL vmlinux 0xbabbe04d led_update_brightness +EXPORT_SYMBOL_GPL vmlinux 0xbaf6850c fsnotify_wait_marks_destroyed +EXPORT_SYMBOL_GPL vmlinux 0xbaf9d785 __tss_limit_invalid +EXPORT_SYMBOL_GPL vmlinux 0xbb015532 trace_array_set_clr_event +EXPORT_SYMBOL_GPL vmlinux 0xbb0ab47b debug_locks +EXPORT_SYMBOL_GPL vmlinux 0xbb0b25d2 register_xenbus_watch +EXPORT_SYMBOL_GPL vmlinux 0xbb28b4e6 device_remove_file_self +EXPORT_SYMBOL_GPL vmlinux 0xbb323ffc acomp_request_free +EXPORT_SYMBOL_GPL vmlinux 0xbb3dd3ba ata_wait_register +EXPORT_SYMBOL_GPL vmlinux 0xbb3e4691 rt_mutex_unlock +EXPORT_SYMBOL_GPL vmlinux 0xbb41beeb paste_selection +EXPORT_SYMBOL_GPL vmlinux 0xbb6104b1 tty_port_unregister_device +EXPORT_SYMBOL_GPL vmlinux 0xbb69f77c rt_mutex_lock +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 0xbb7672dd do_unregister_con_driver +EXPORT_SYMBOL_GPL vmlinux 0xbb78267d blkcg_activate_policy +EXPORT_SYMBOL_GPL vmlinux 0xbb7bbfa8 udp_abort +EXPORT_SYMBOL_GPL vmlinux 0xbb7d08eb find_pid_ns +EXPORT_SYMBOL_GPL vmlinux 0xbb93eec5 ioasid_alloc +EXPORT_SYMBOL_GPL vmlinux 0xbb96c07d ip6_flush_pending_frames +EXPORT_SYMBOL_GPL vmlinux 0xbb9f477e kset_create_and_add +EXPORT_SYMBOL_GPL vmlinux 0xbba099ff driver_register +EXPORT_SYMBOL_GPL vmlinux 0xbba23e8e cpufreq_freq_attr_scaling_boost_freqs +EXPORT_SYMBOL_GPL vmlinux 0xbbb98859 edid_info +EXPORT_SYMBOL_GPL vmlinux 0xbbc54720 pktgen_xfrm_outer_mode_output +EXPORT_SYMBOL_GPL vmlinux 0xbbc80724 free_vm_area +EXPORT_SYMBOL_GPL vmlinux 0xbbd4806d blk_mq_free_request +EXPORT_SYMBOL_GPL vmlinux 0xbbdb30da driver_unregister +EXPORT_SYMBOL_GPL vmlinux 0xbbdd1745 usb_hub_release_port +EXPORT_SYMBOL_GPL vmlinux 0xbc04bd46 x86_platform +EXPORT_SYMBOL_GPL vmlinux 0xbc09808c rio_unlock_device +EXPORT_SYMBOL_GPL vmlinux 0xbc167f76 component_add +EXPORT_SYMBOL_GPL vmlinux 0xbc1e713f serial8250_do_set_mctrl +EXPORT_SYMBOL_GPL vmlinux 0xbc277db7 tty_standard_install +EXPORT_SYMBOL_GPL vmlinux 0xbc346400 sysfs_add_file_to_group +EXPORT_SYMBOL_GPL vmlinux 0xbc4140ee devm_led_classdev_register_ext +EXPORT_SYMBOL_GPL vmlinux 0xbc60516c rio_release_outb_mbox +EXPORT_SYMBOL_GPL vmlinux 0xbc60dc37 cpufreq_show_cpus +EXPORT_SYMBOL_GPL vmlinux 0xbc6bec66 free_percpu_irq +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 0xbccfd4d8 register_oldmem_pfn_is_ram +EXPORT_SYMBOL_GPL vmlinux 0xbcd999f8 fscrypt_get_symlink +EXPORT_SYMBOL_GPL vmlinux 0xbcdd5b99 iommu_group_set_name +EXPORT_SYMBOL_GPL vmlinux 0xbce29c95 pci_epc_clear_bar +EXPORT_SYMBOL_GPL vmlinux 0xbcecf672 dma_get_slave_caps +EXPORT_SYMBOL_GPL vmlinux 0xbcf1f0e6 zs_create_pool +EXPORT_SYMBOL_GPL vmlinux 0xbd0b6141 regmap_update_bits_base +EXPORT_SYMBOL_GPL vmlinux 0xbd0bee33 usb_set_interface +EXPORT_SYMBOL_GPL vmlinux 0xbd375827 scsi_ioctl_block_when_processing_errors +EXPORT_SYMBOL_GPL vmlinux 0xbd38bddd inode_congested +EXPORT_SYMBOL_GPL vmlinux 0xbd3aa1b8 xenbus_dev_is_online +EXPORT_SYMBOL_GPL vmlinux 0xbd3fe1e3 disable_hardirq +EXPORT_SYMBOL_GPL vmlinux 0xbd4363b2 phy_pm_runtime_put +EXPORT_SYMBOL_GPL vmlinux 0xbd4b28ca sdio_retune_crc_disable +EXPORT_SYMBOL_GPL vmlinux 0xbd4f20e1 pci_bus_add_device +EXPORT_SYMBOL_GPL vmlinux 0xbd54fe17 __devm_regmap_init_mmio_clk +EXPORT_SYMBOL_GPL vmlinux 0xbd60dd3a pinctrl_dev_get_drvdata +EXPORT_SYMBOL_GPL vmlinux 0xbd7cc9ae dev_pm_opp_enable +EXPORT_SYMBOL_GPL vmlinux 0xbd7da235 power_supply_unregister +EXPORT_SYMBOL_GPL vmlinux 0xbd830a64 blockdev_superblock +EXPORT_SYMBOL_GPL vmlinux 0xbd949448 regmap_check_range_table +EXPORT_SYMBOL_GPL vmlinux 0xbd9ae66e usb_match_one_id +EXPORT_SYMBOL_GPL vmlinux 0xbd9ee3b5 gnttab_page_cache_get +EXPORT_SYMBOL_GPL vmlinux 0xbdb2ae03 rio_attach_device +EXPORT_SYMBOL_GPL vmlinux 0xbdb2dfd5 uv_bios_reserved_page_pa +EXPORT_SYMBOL_GPL vmlinux 0xbdd06e4e subsys_dev_iter_next +EXPORT_SYMBOL_GPL vmlinux 0xbe07924c dev_attr_unload_heads +EXPORT_SYMBOL_GPL vmlinux 0xbe0da9e3 ata_do_dev_read_id +EXPORT_SYMBOL_GPL vmlinux 0xbe10210a dev_pm_qos_add_ancestor_request +EXPORT_SYMBOL_GPL vmlinux 0xbe383166 dm_path_uevent +EXPORT_SYMBOL_GPL vmlinux 0xbe5c888b crypto_chain +EXPORT_SYMBOL_GPL vmlinux 0xbe64e70e pci_enable_sriov +EXPORT_SYMBOL_GPL vmlinux 0xbe687e88 wake_up_all_idle_cpus +EXPORT_SYMBOL_GPL vmlinux 0xbe744257 efi_get_embedded_fw +EXPORT_SYMBOL_GPL vmlinux 0xbe7aa1a3 icc_node_add +EXPORT_SYMBOL_GPL vmlinux 0xbe7d7218 dax_layout_busy_page +EXPORT_SYMBOL_GPL vmlinux 0xbe9a83d5 dw_pcie_write +EXPORT_SYMBOL_GPL vmlinux 0xbe9f439a devm_remove_action +EXPORT_SYMBOL_GPL vmlinux 0xbea10a98 arizona_free_irq +EXPORT_SYMBOL_GPL vmlinux 0xbea5ff1e static_key_initialized +EXPORT_SYMBOL_GPL vmlinux 0xbec27c3a perf_event_addr_filters_sync +EXPORT_SYMBOL_GPL vmlinux 0xbec66c3a __apei_exec_run +EXPORT_SYMBOL_GPL vmlinux 0xbed0c05c phy_power_on +EXPORT_SYMBOL_GPL vmlinux 0xbee82b3c dev_pm_opp_set_sharing_cpus +EXPORT_SYMBOL_GPL vmlinux 0xbeea5688 iommu_sva_bind_gpasid +EXPORT_SYMBOL_GPL vmlinux 0xbefdfcbe __rio_local_read_config_32 +EXPORT_SYMBOL_GPL vmlinux 0xbf041102 register_vt_notifier +EXPORT_SYMBOL_GPL vmlinux 0xbf122db3 usb_create_shared_hcd +EXPORT_SYMBOL_GPL vmlinux 0xbf16d09c tcp_ca_get_key_by_name +EXPORT_SYMBOL_GPL vmlinux 0xbf18a2f3 clone_private_mount +EXPORT_SYMBOL_GPL vmlinux 0xbf20939f acpi_kobj +EXPORT_SYMBOL_GPL vmlinux 0xbf21f087 crypto_unregister_rngs +EXPORT_SYMBOL_GPL vmlinux 0xbf25b532 ethnl_cable_test_alloc +EXPORT_SYMBOL_GPL vmlinux 0xbf5439c0 tty_port_register_device_serdev +EXPORT_SYMBOL_GPL vmlinux 0xbf68ce6e devm_kstrdup +EXPORT_SYMBOL_GPL vmlinux 0xbf6abbe7 housekeeping_enabled +EXPORT_SYMBOL_GPL vmlinux 0xbf7d6eb8 pm_generic_runtime_resume +EXPORT_SYMBOL_GPL vmlinux 0xbf8e4fb1 __root_device_register +EXPORT_SYMBOL_GPL vmlinux 0xbf95bf47 acpi_dev_get_dma_resources +EXPORT_SYMBOL_GPL vmlinux 0xbf9c02fd regmap_read +EXPORT_SYMBOL_GPL vmlinux 0xbf9fa111 i2c_dw_acpi_configure +EXPORT_SYMBOL_GPL vmlinux 0xbfa5f89a led_trigger_set_default +EXPORT_SYMBOL_GPL vmlinux 0xbfac96bf ata_sff_dma_pause +EXPORT_SYMBOL_GPL vmlinux 0xbfb1be70 hv_setup_vmbus_irq +EXPORT_SYMBOL_GPL vmlinux 0xbfb36c47 ata_link_online +EXPORT_SYMBOL_GPL vmlinux 0xbfbc5434 pciserial_resume_ports +EXPORT_SYMBOL_GPL vmlinux 0xbfc4659f regulator_set_drvdata +EXPORT_SYMBOL_GPL vmlinux 0xbfc971e4 ata_bmdma_status +EXPORT_SYMBOL_GPL vmlinux 0xbfd74271 fwnode_remove_software_node +EXPORT_SYMBOL_GPL vmlinux 0xbfdedd5f tty_port_link_device +EXPORT_SYMBOL_GPL vmlinux 0xbfe5616d tick_broadcast_oneshot_control +EXPORT_SYMBOL_GPL vmlinux 0xbfed2cd9 __wait_rcu_gp +EXPORT_SYMBOL_GPL vmlinux 0xbff3700f kthread_cancel_delayed_work_sync +EXPORT_SYMBOL_GPL vmlinux 0xbff7f136 hvc_instantiate +EXPORT_SYMBOL_GPL vmlinux 0xbffde8ec compat_alloc_user_space +EXPORT_SYMBOL_GPL vmlinux 0xc00f2345 blk_revalidate_disk_zones +EXPORT_SYMBOL_GPL vmlinux 0xc0150be6 rio_register_mport +EXPORT_SYMBOL_GPL vmlinux 0xc0380711 blkcg_root_css +EXPORT_SYMBOL_GPL vmlinux 0xc04d994f iomap_readpage +EXPORT_SYMBOL_GPL vmlinux 0xc057d5bd fib_nl_delrule +EXPORT_SYMBOL_GPL vmlinux 0xc07c0a93 spi_delay_exec +EXPORT_SYMBOL_GPL vmlinux 0xc08bbce6 irq_get_percpu_devid_partition +EXPORT_SYMBOL_GPL vmlinux 0xc0a36688 raw_abort +EXPORT_SYMBOL_GPL vmlinux 0xc0a96e14 rcu_gp_is_expedited +EXPORT_SYMBOL_GPL vmlinux 0xc0b8d763 iomap_fiemap +EXPORT_SYMBOL_GPL vmlinux 0xc0bd86a8 of_phy_get +EXPORT_SYMBOL_GPL vmlinux 0xc0ce4a6d ping_get_port +EXPORT_SYMBOL_GPL vmlinux 0xc0d8f0cc wm831x_auxadc_read +EXPORT_SYMBOL_GPL vmlinux 0xc0dcb59e edac_layer_name +EXPORT_SYMBOL_GPL vmlinux 0xc0f0458a ip_tunnel_unneed_metadata +EXPORT_SYMBOL_GPL vmlinux 0xc0fc86af kstrdup_quotable_cmdline +EXPORT_SYMBOL_GPL vmlinux 0xc0fd6381 PageHuge +EXPORT_SYMBOL_GPL vmlinux 0xc1086e0c sysrq_toggle_support +EXPORT_SYMBOL_GPL vmlinux 0xc10fddb8 name_to_dev_t +EXPORT_SYMBOL_GPL vmlinux 0xc1292b04 lp8788_read_byte +EXPORT_SYMBOL_GPL vmlinux 0xc135704d inode_sb_list_add +EXPORT_SYMBOL_GPL vmlinux 0xc15081e3 regulator_disable_regmap +EXPORT_SYMBOL_GPL vmlinux 0xc1509c8a xdp_rxq_info_reg +EXPORT_SYMBOL_GPL vmlinux 0xc152c9ab __devm_alloc_percpu +EXPORT_SYMBOL_GPL vmlinux 0xc1535160 smpboot_register_percpu_thread +EXPORT_SYMBOL_GPL vmlinux 0xc17515d7 usb_hcds_loaded +EXPORT_SYMBOL_GPL vmlinux 0xc17798d2 __blkg_prfill_u64 +EXPORT_SYMBOL_GPL vmlinux 0xc1791d36 regmap_field_read +EXPORT_SYMBOL_GPL vmlinux 0xc17e9946 usb_show_dynids +EXPORT_SYMBOL_GPL vmlinux 0xc18a16ce watchdog_set_restart_priority +EXPORT_SYMBOL_GPL vmlinux 0xc18cdf36 amd_df_indirect_read +EXPORT_SYMBOL_GPL vmlinux 0xc1bb7a43 crypto_grab_ahash +EXPORT_SYMBOL_GPL vmlinux 0xc1c6d785 pci_assign_unassigned_bus_resources +EXPORT_SYMBOL_GPL vmlinux 0xc1d989c5 vfio_external_check_extension +EXPORT_SYMBOL_GPL vmlinux 0xc2173139 pcie_aspm_enabled +EXPORT_SYMBOL_GPL vmlinux 0xc227b920 spi_mem_dirmap_write +EXPORT_SYMBOL_GPL vmlinux 0xc22a3091 vm_unmap_aliases +EXPORT_SYMBOL_GPL vmlinux 0xc234a580 __clocksource_update_freq_scale +EXPORT_SYMBOL_GPL vmlinux 0xc259d0ff bus_find_device +EXPORT_SYMBOL_GPL vmlinux 0xc25a5fdb iommu_fwspec_init +EXPORT_SYMBOL_GPL vmlinux 0xc25b8971 hv_remove_crash_handler +EXPORT_SYMBOL_GPL vmlinux 0xc2692173 wakeup_sources_read_lock +EXPORT_SYMBOL_GPL vmlinux 0xc27d81e0 sdio_claim_irq +EXPORT_SYMBOL_GPL vmlinux 0xc280fb46 kdb_register +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 0xc28d1494 __platform_driver_register +EXPORT_SYMBOL_GPL vmlinux 0xc2a3e570 errata +EXPORT_SYMBOL_GPL vmlinux 0xc2a814db tcp_memory_pressure +EXPORT_SYMBOL_GPL vmlinux 0xc2ac96b6 iommu_dev_feature_enabled +EXPORT_SYMBOL_GPL vmlinux 0xc2afc6da spi_add_device +EXPORT_SYMBOL_GPL vmlinux 0xc2b93c4c inet_csk_update_pmtu +EXPORT_SYMBOL_GPL vmlinux 0xc2c1c427 perf_event_cgrp_subsys_on_dfl_key +EXPORT_SYMBOL_GPL vmlinux 0xc2d96a60 tcp_slow_start +EXPORT_SYMBOL_GPL vmlinux 0xc2de27ca hest_disable +EXPORT_SYMBOL_GPL vmlinux 0xc32e5c21 tty_init_termios +EXPORT_SYMBOL_GPL vmlinux 0xc341ae6d zs_map_object +EXPORT_SYMBOL_GPL vmlinux 0xc3509fa6 inet6_compat_ioctl +EXPORT_SYMBOL_GPL vmlinux 0xc36bb0f6 serdev_device_write_buf +EXPORT_SYMBOL_GPL vmlinux 0xc3805cd1 fs_ftype_to_dtype +EXPORT_SYMBOL_GPL vmlinux 0xc382e30c irq_chip_mask_parent +EXPORT_SYMBOL_GPL vmlinux 0xc38ffc9b scsi_eh_ready_devs +EXPORT_SYMBOL_GPL vmlinux 0xc3afdc8d of_icc_get +EXPORT_SYMBOL_GPL vmlinux 0xc3bdb6b4 pci_hp_create_module_link +EXPORT_SYMBOL_GPL vmlinux 0xc3bfffde ip6_sk_update_pmtu +EXPORT_SYMBOL_GPL vmlinux 0xc3c22c14 decrypt_blob +EXPORT_SYMBOL_GPL vmlinux 0xc3c42628 sk_detach_filter +EXPORT_SYMBOL_GPL vmlinux 0xc3c4c6cc hash_algo_name +EXPORT_SYMBOL_GPL vmlinux 0xc3dd9c73 ata_cable_40wire +EXPORT_SYMBOL_GPL vmlinux 0xc3de65ff ring_buffer_bytes_cpu +EXPORT_SYMBOL_GPL vmlinux 0xc3e2a93d usb_hub_find_child +EXPORT_SYMBOL_GPL vmlinux 0xc3e33e61 fscrypt_show_test_dummy_encryption +EXPORT_SYMBOL_GPL vmlinux 0xc3e80bfd cdrom_multisession +EXPORT_SYMBOL_GPL vmlinux 0xc3e8f2d0 regulator_get_init_drvdata +EXPORT_SYMBOL_GPL vmlinux 0xc3ea5305 iommu_default_passthrough +EXPORT_SYMBOL_GPL vmlinux 0xc3edf6aa save_fsgs_for_kvm +EXPORT_SYMBOL_GPL vmlinux 0xc3f77298 rio_bus_type +EXPORT_SYMBOL_GPL vmlinux 0xc400ebff bd_link_disk_holder +EXPORT_SYMBOL_GPL vmlinux 0xc402fb94 ata_bmdma32_port_ops +EXPORT_SYMBOL_GPL vmlinux 0xc40f4e07 __tracepoint_neigh_update_done +EXPORT_SYMBOL_GPL vmlinux 0xc4166ad1 to_nd_blk_region +EXPORT_SYMBOL_GPL vmlinux 0xc41cbb71 cpufreq_policy_transition_delay_us +EXPORT_SYMBOL_GPL vmlinux 0xc426c51f klp_shadow_free_all +EXPORT_SYMBOL_GPL vmlinux 0xc428068d sata_deb_timing_long +EXPORT_SYMBOL_GPL vmlinux 0xc43e92b9 trace_seq_bprintf +EXPORT_SYMBOL_GPL vmlinux 0xc441a560 devm_of_phy_get +EXPORT_SYMBOL_GPL vmlinux 0xc4521ec5 __blk_mq_debugfs_rq_show +EXPORT_SYMBOL_GPL vmlinux 0xc454fc7b twl_get_type +EXPORT_SYMBOL_GPL vmlinux 0xc4555318 dev_pm_opp_add +EXPORT_SYMBOL_GPL vmlinux 0xc45a4555 is_dock_device +EXPORT_SYMBOL_GPL vmlinux 0xc45c8cf8 rio_register_driver +EXPORT_SYMBOL_GPL vmlinux 0xc45d0d13 injectm +EXPORT_SYMBOL_GPL vmlinux 0xc46324f6 dynevent_create +EXPORT_SYMBOL_GPL vmlinux 0xc471c67a twl4030_audio_disable_resource +EXPORT_SYMBOL_GPL vmlinux 0xc47b9c97 __skb_tstamp_tx +EXPORT_SYMBOL_GPL vmlinux 0xc48b7ccf ata_mode_string +EXPORT_SYMBOL_GPL vmlinux 0xc4913442 vfio_group_put_external_user +EXPORT_SYMBOL_GPL vmlinux 0xc494cfe9 kobject_move +EXPORT_SYMBOL_GPL vmlinux 0xc4a31146 rdma_cgrp_subsys_on_dfl_key +EXPORT_SYMBOL_GPL vmlinux 0xc4a6e698 vring_new_virtqueue +EXPORT_SYMBOL_GPL vmlinux 0xc4a72936 trusted_tpm_send +EXPORT_SYMBOL_GPL vmlinux 0xc4ac8eef __tracepoint_rpm_idle +EXPORT_SYMBOL_GPL vmlinux 0xc4e46079 serial8250_do_get_mctrl +EXPORT_SYMBOL_GPL vmlinux 0xc4f0da12 ktime_get_with_offset +EXPORT_SYMBOL_GPL vmlinux 0xc4f42c6d ip6_datagram_release_cb +EXPORT_SYMBOL_GPL vmlinux 0xc4fc15a5 mmu_interval_notifier_remove +EXPORT_SYMBOL_GPL vmlinux 0xc4fdeae5 fs_dax_get_by_bdev +EXPORT_SYMBOL_GPL vmlinux 0xc504d20c ata_sas_port_suspend +EXPORT_SYMBOL_GPL vmlinux 0xc50ed686 tty_port_register_device_attr_serdev +EXPORT_SYMBOL_GPL vmlinux 0xc512626a __supported_pte_mask +EXPORT_SYMBOL_GPL vmlinux 0xc5156bf3 fanout_mutex +EXPORT_SYMBOL_GPL vmlinux 0xc51bd50b ethnl_cable_test_result +EXPORT_SYMBOL_GPL vmlinux 0xc52f0388 acpi_dev_resource_memory +EXPORT_SYMBOL_GPL vmlinux 0xc5476b84 trace_array_printk +EXPORT_SYMBOL_GPL vmlinux 0xc54e3fa7 kill_pid_usb_asyncio +EXPORT_SYMBOL_GPL vmlinux 0xc5535bde irq_find_mapping +EXPORT_SYMBOL_GPL vmlinux 0xc55ff962 phy_basic_t1_features_array +EXPORT_SYMBOL_GPL vmlinux 0xc5604800 clk_set_rate_exclusive +EXPORT_SYMBOL_GPL vmlinux 0xc569d8ce __clk_get_name +EXPORT_SYMBOL_GPL vmlinux 0xc57190bb fsstack_copy_attr_all +EXPORT_SYMBOL_GPL vmlinux 0xc5743e2c watchdog_unregister_device +EXPORT_SYMBOL_GPL vmlinux 0xc575c737 debug_locks_off +EXPORT_SYMBOL_GPL vmlinux 0xc5777fca linear_range_get_selector_low_array +EXPORT_SYMBOL_GPL vmlinux 0xc58a3ee6 icc_node_destroy +EXPORT_SYMBOL_GPL vmlinux 0xc58b74be perf_event_refresh +EXPORT_SYMBOL_GPL vmlinux 0xc58d86ba platform_bus +EXPORT_SYMBOL_GPL vmlinux 0xc594d840 acpi_dev_resource_interrupt +EXPORT_SYMBOL_GPL vmlinux 0xc5996c8c pkcs7_get_content_data +EXPORT_SYMBOL_GPL vmlinux 0xc5a2028b dma_buf_begin_cpu_access +EXPORT_SYMBOL_GPL vmlinux 0xc5a5c678 uart_parse_earlycon +EXPORT_SYMBOL_GPL vmlinux 0xc5b06084 of_phy_provider_unregister +EXPORT_SYMBOL_GPL vmlinux 0xc5b0d6c2 virtqueue_poll +EXPORT_SYMBOL_GPL vmlinux 0xc5b6f2fe xenbus_dev_remove +EXPORT_SYMBOL_GPL vmlinux 0xc5d789df alarm_expires_remaining +EXPORT_SYMBOL_GPL vmlinux 0xc60315f8 xenbus_match +EXPORT_SYMBOL_GPL vmlinux 0xc6079f01 i2c_unregister_device +EXPORT_SYMBOL_GPL vmlinux 0xc617f82c unregister_oom_notifier +EXPORT_SYMBOL_GPL vmlinux 0xc62ad6c2 synth_event_trace_end +EXPORT_SYMBOL_GPL vmlinux 0xc632eb56 serdev_device_set_parity +EXPORT_SYMBOL_GPL vmlinux 0xc652ee3b fuse_send_init +EXPORT_SYMBOL_GPL vmlinux 0xc654d3f4 lwtunnel_valid_encap_type +EXPORT_SYMBOL_GPL vmlinux 0xc6572a90 xenbus_read_unsigned +EXPORT_SYMBOL_GPL vmlinux 0xc66019cc xen_resume_notifier_unregister +EXPORT_SYMBOL_GPL vmlinux 0xc66239f6 dax_iomap_fault +EXPORT_SYMBOL_GPL vmlinux 0xc668c13e mbox_free_channel +EXPORT_SYMBOL_GPL vmlinux 0xc66b77b1 iommu_group_set_iommudata +EXPORT_SYMBOL_GPL vmlinux 0xc671c909 devm_pinctrl_register_and_init +EXPORT_SYMBOL_GPL vmlinux 0xc6779093 ring_buffer_record_enable +EXPORT_SYMBOL_GPL vmlinux 0xc6818e1b acpi_gpiochip_request_interrupts +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 0xc69cc603 acpi_subsys_suspend_late +EXPORT_SYMBOL_GPL vmlinux 0xc6a29c23 crypto_ahash_digest +EXPORT_SYMBOL_GPL vmlinux 0xc6a4a872 __clk_is_enabled +EXPORT_SYMBOL_GPL vmlinux 0xc6a4d3c7 pci_set_cacheline_size +EXPORT_SYMBOL_GPL vmlinux 0xc6b10427 ex_handler_fprestore +EXPORT_SYMBOL_GPL vmlinux 0xc6b464bb crypto_aead_decrypt +EXPORT_SYMBOL_GPL vmlinux 0xc6bb34f8 xenbus_switch_state +EXPORT_SYMBOL_GPL vmlinux 0xc6ca1604 platform_device_alloc +EXPORT_SYMBOL_GPL vmlinux 0xc6d6bed8 usb_enable_autosuspend +EXPORT_SYMBOL_GPL vmlinux 0xc6d9cddb nvdimm_pmem_region_create +EXPORT_SYMBOL_GPL vmlinux 0xc6def34b gnttab_empty_grant_references +EXPORT_SYMBOL_GPL vmlinux 0xc6eec8f5 clk_divider_ops +EXPORT_SYMBOL_GPL vmlinux 0xc6ef48f0 devm_mbox_controller_unregister +EXPORT_SYMBOL_GPL vmlinux 0xc7061ef3 iova_cache_put +EXPORT_SYMBOL_GPL vmlinux 0xc7136a43 sched_trace_cfs_rq_avg +EXPORT_SYMBOL_GPL vmlinux 0xc71e64a9 snmp_get_cpu_field +EXPORT_SYMBOL_GPL vmlinux 0xc73438f7 bio_clone_blkg_association +EXPORT_SYMBOL_GPL vmlinux 0xc736f4fd sk_msg_clone +EXPORT_SYMBOL_GPL vmlinux 0xc73fc43d serial8250_rpm_get_tx +EXPORT_SYMBOL_GPL vmlinux 0xc74ad623 pci_epc_map_addr +EXPORT_SYMBOL_GPL vmlinux 0xc75c548f devm_hwspin_lock_register +EXPORT_SYMBOL_GPL vmlinux 0xc75e98e9 arizona_request_irq +EXPORT_SYMBOL_GPL vmlinux 0xc7824a3d regulator_bulk_free +EXPORT_SYMBOL_GPL vmlinux 0xc7856e74 __wake_up_locked_sync_key +EXPORT_SYMBOL_GPL vmlinux 0xc788e2b2 irq_set_chip_and_handler_name +EXPORT_SYMBOL_GPL vmlinux 0xc78bb93c arizona_set_irq_wake +EXPORT_SYMBOL_GPL vmlinux 0xc7a1840e llist_add_batch +EXPORT_SYMBOL_GPL vmlinux 0xc7b00252 fscrypt_file_open +EXPORT_SYMBOL_GPL vmlinux 0xc7c23ff0 xenbus_exists +EXPORT_SYMBOL_GPL vmlinux 0xc7df373c bpf_prog_put +EXPORT_SYMBOL_GPL vmlinux 0xc7e23da2 tty_put_char +EXPORT_SYMBOL_GPL vmlinux 0xc7f32ba1 netlink_has_listeners +EXPORT_SYMBOL_GPL vmlinux 0xc7fa4aa9 kobj_ns_drop +EXPORT_SYMBOL_GPL vmlinux 0xc8060e4b __trace_note_message +EXPORT_SYMBOL_GPL vmlinux 0xc80d4052 rio_map_inb_region +EXPORT_SYMBOL_GPL vmlinux 0xc82071cc regulator_count_voltages +EXPORT_SYMBOL_GPL vmlinux 0xc82742de usb_deregister_device_driver +EXPORT_SYMBOL_GPL vmlinux 0xc82c721f klist_remove +EXPORT_SYMBOL_GPL vmlinux 0xc839c1ce trace_seq_to_user +EXPORT_SYMBOL_GPL vmlinux 0xc8427fde ncsi_start_dev +EXPORT_SYMBOL_GPL vmlinux 0xc84b4cd5 page_cache_async_readahead +EXPORT_SYMBOL_GPL vmlinux 0xc8563822 find_asymmetric_key +EXPORT_SYMBOL_GPL vmlinux 0xc8594d3d reset_control_acquire +EXPORT_SYMBOL_GPL vmlinux 0xc85b066d enable_kprobe +EXPORT_SYMBOL_GPL vmlinux 0xc87e487a sched_clock_idle_sleep_event +EXPORT_SYMBOL_GPL vmlinux 0xc87fb025 xas_get_mark +EXPORT_SYMBOL_GPL vmlinux 0xc8c45fde acpi_get_psd_map +EXPORT_SYMBOL_GPL vmlinux 0xc8c94871 gpiochip_set_nested_irqchip +EXPORT_SYMBOL_GPL vmlinux 0xc8d2218f intel_msic_reg_read +EXPORT_SYMBOL_GPL vmlinux 0xc8d68ec1 crypto_grab_aead +EXPORT_SYMBOL_GPL vmlinux 0xc8ddd5b5 kstrdup_quotable +EXPORT_SYMBOL_GPL vmlinux 0xc8e90f3e ohci_setup +EXPORT_SYMBOL_GPL vmlinux 0xc8ec8652 gpiochip_reqres_irq +EXPORT_SYMBOL_GPL vmlinux 0xc8f162c9 ftrace_set_filter_ip +EXPORT_SYMBOL_GPL vmlinux 0xc8fe6573 pinctrl_add_gpio_range +EXPORT_SYMBOL_GPL vmlinux 0xc8feafb3 acpi_dev_pm_attach +EXPORT_SYMBOL_GPL vmlinux 0xc90c9275 bpf_offload_dev_create +EXPORT_SYMBOL_GPL vmlinux 0xc91277a1 kgdb_schedule_breakpoint +EXPORT_SYMBOL_GPL vmlinux 0xc913c188 ata_sas_port_start +EXPORT_SYMBOL_GPL vmlinux 0xc9163772 sysfs_remove_groups +EXPORT_SYMBOL_GPL vmlinux 0xc92af918 crypto_ahash_walk_first +EXPORT_SYMBOL_GPL vmlinux 0xc9302b3e fwnode_property_read_u32_array +EXPORT_SYMBOL_GPL vmlinux 0xc9345c0f digsig_verify +EXPORT_SYMBOL_GPL vmlinux 0xc93ee1e7 usb_phy_roothub_init +EXPORT_SYMBOL_GPL vmlinux 0xc9561772 fb_destroy_modelist +EXPORT_SYMBOL_GPL vmlinux 0xc9582900 uhci_reset_hc +EXPORT_SYMBOL_GPL vmlinux 0xc9641b48 visitor32 +EXPORT_SYMBOL_GPL vmlinux 0xc966e746 ping_common_sendmsg +EXPORT_SYMBOL_GPL vmlinux 0xc9739101 crypto_unregister_aead +EXPORT_SYMBOL_GPL vmlinux 0xc97a00c9 alarm_try_to_cancel +EXPORT_SYMBOL_GPL vmlinux 0xc9827693 __bpf_call_base +EXPORT_SYMBOL_GPL vmlinux 0xc9836d78 da9052_disable_irq_nosync +EXPORT_SYMBOL_GPL vmlinux 0xc98fd892 tpm_chip_unregister +EXPORT_SYMBOL_GPL vmlinux 0xc99ee506 __srcu_read_lock +EXPORT_SYMBOL_GPL vmlinux 0xc9a4b416 copy_to_user_nofault +EXPORT_SYMBOL_GPL vmlinux 0xc9c3f176 hpet_register_irq_handler +EXPORT_SYMBOL_GPL vmlinux 0xc9ca8b43 nvdimm_bus_register +EXPORT_SYMBOL_GPL vmlinux 0xc9de3c71 pm_genpd_syscore_poweroff +EXPORT_SYMBOL_GPL vmlinux 0xc9ebd2b2 dev_pm_qos_add_notifier +EXPORT_SYMBOL_GPL vmlinux 0xc9ec4e21 free_percpu +EXPORT_SYMBOL_GPL vmlinux 0xc9f39af2 open_related_ns +EXPORT_SYMBOL_GPL vmlinux 0xc9f75292 devlink_trap_policers_unregister +EXPORT_SYMBOL_GPL vmlinux 0xca08b38b crypto_larval_kill +EXPORT_SYMBOL_GPL vmlinux 0xca178ecb devlink_param_driverinit_value_get +EXPORT_SYMBOL_GPL vmlinux 0xca240c19 pci_epc_add_epf +EXPORT_SYMBOL_GPL vmlinux 0xca27b354 icc_set_bw +EXPORT_SYMBOL_GPL vmlinux 0xca2a5dd2 device_get_child_node_count +EXPORT_SYMBOL_GPL vmlinux 0xca3e8f3f dev_pm_opp_set_clkname +EXPORT_SYMBOL_GPL vmlinux 0xca467318 hibernation_set_ops +EXPORT_SYMBOL_GPL vmlinux 0xca4a0082 xhci_shutdown +EXPORT_SYMBOL_GPL vmlinux 0xca55ea9c inet_send_prepare +EXPORT_SYMBOL_GPL vmlinux 0xca650c59 devm_of_pwm_get +EXPORT_SYMBOL_GPL vmlinux 0xca7aeadc serial8250_do_set_ldisc +EXPORT_SYMBOL_GPL vmlinux 0xca7d8764 kthread_freezable_should_stop +EXPORT_SYMBOL_GPL vmlinux 0xca84ea61 netdev_walk_all_lower_dev_rcu +EXPORT_SYMBOL_GPL vmlinux 0xca9a1d5e ring_buffer_free +EXPORT_SYMBOL_GPL vmlinux 0xca9af201 gpiochip_lock_as_irq +EXPORT_SYMBOL_GPL vmlinux 0xcaa68533 cpu_has_xfeatures +EXPORT_SYMBOL_GPL vmlinux 0xcabe04de cpuidle_resume_and_unlock +EXPORT_SYMBOL_GPL vmlinux 0xcac437d6 alloc_vm_area +EXPORT_SYMBOL_GPL vmlinux 0xcac8fc0d perf_event_enable +EXPORT_SYMBOL_GPL vmlinux 0xcacc0577 security_file_permission +EXPORT_SYMBOL_GPL vmlinux 0xcacd88a0 __tracepoint_br_fdb_update +EXPORT_SYMBOL_GPL vmlinux 0xcaf1d958 evtchn_get +EXPORT_SYMBOL_GPL vmlinux 0xcaf4c9b1 dev_pm_qos_hide_latency_limit +EXPORT_SYMBOL_GPL vmlinux 0xcafe4130 crypto_stats_decompress +EXPORT_SYMBOL_GPL vmlinux 0xcb007983 usb_match_id +EXPORT_SYMBOL_GPL vmlinux 0xcb044b09 mddev_init_writes_pending +EXPORT_SYMBOL_GPL vmlinux 0xcb0aa790 blk_mq_start_stopped_hw_queue +EXPORT_SYMBOL_GPL vmlinux 0xcb15eee9 sdhci_pci_get_data +EXPORT_SYMBOL_GPL vmlinux 0xcb17de84 dev_pm_opp_set_supported_hw +EXPORT_SYMBOL_GPL vmlinux 0xcb1a11b9 pci_assign_unassigned_bridge_resources +EXPORT_SYMBOL_GPL vmlinux 0xcb2bfe2b nvmem_register_notifier +EXPORT_SYMBOL_GPL vmlinux 0xcb439f81 devm_regulator_get_optional +EXPORT_SYMBOL_GPL vmlinux 0xcb51f79e regulator_list_voltage_pickable_linear_range +EXPORT_SYMBOL_GPL vmlinux 0xcb5a258e rtm_getroute_parse_ip_proto +EXPORT_SYMBOL_GPL vmlinux 0xcb6a6b6d pci_find_ht_capability +EXPORT_SYMBOL_GPL vmlinux 0xcb77394c regulator_lock +EXPORT_SYMBOL_GPL vmlinux 0xcb7c0c05 skb_to_sgvec +EXPORT_SYMBOL_GPL vmlinux 0xcb802dbf get_dcookie +EXPORT_SYMBOL_GPL vmlinux 0xcb82ffa3 get_governor_parent_kobj +EXPORT_SYMBOL_GPL vmlinux 0xcb8a461c hv_stimer_legacy_cleanup +EXPORT_SYMBOL_GPL vmlinux 0xcb970751 stop_machine +EXPORT_SYMBOL_GPL vmlinux 0xcba9b10e bus_for_each_drv +EXPORT_SYMBOL_GPL vmlinux 0xcbb9cfa0 sysfs_change_owner +EXPORT_SYMBOL_GPL vmlinux 0xcbbbc1da file_ra_state_init +EXPORT_SYMBOL_GPL vmlinux 0xcbc737d7 nvmem_register +EXPORT_SYMBOL_GPL vmlinux 0xcbd47dea phy_start_machine +EXPORT_SYMBOL_GPL vmlinux 0xcbda4fb2 blkdev_ioctl +EXPORT_SYMBOL_GPL vmlinux 0xcbe56bc2 zs_get_total_pages +EXPORT_SYMBOL_GPL vmlinux 0xcbe57375 pci_check_and_mask_intx +EXPORT_SYMBOL_GPL vmlinux 0xcbf2bff5 switchdev_port_attr_set +EXPORT_SYMBOL_GPL vmlinux 0xcbf60a87 crypto_alg_mod_lookup +EXPORT_SYMBOL_GPL vmlinux 0xcbfec966 kobject_get_path +EXPORT_SYMBOL_GPL vmlinux 0xcc2dbfd8 irq_domain_check_msi_remap +EXPORT_SYMBOL_GPL vmlinux 0xcc312197 clk_mux_ops +EXPORT_SYMBOL_GPL vmlinux 0xcc328dee ip6_datagram_send_ctl +EXPORT_SYMBOL_GPL vmlinux 0xcc39c03e nvmem_unregister +EXPORT_SYMBOL_GPL vmlinux 0xcc3a61a9 __cpufreq_driver_target +EXPORT_SYMBOL_GPL vmlinux 0xcc498b46 irq_domain_pop_irq +EXPORT_SYMBOL_GPL vmlinux 0xcc4a0aae pm_generic_restore_early +EXPORT_SYMBOL_GPL vmlinux 0xcc4dc908 __rio_local_read_config_8 +EXPORT_SYMBOL_GPL vmlinux 0xcc5104d0 copy_mc_to_kernel +EXPORT_SYMBOL_GPL vmlinux 0xcc57bd74 usb_add_hcd +EXPORT_SYMBOL_GPL vmlinux 0xcc66f246 create_signature +EXPORT_SYMBOL_GPL vmlinux 0xcc7421ca ata_dev_pair +EXPORT_SYMBOL_GPL vmlinux 0xcc7b612c register_pernet_device +EXPORT_SYMBOL_GPL vmlinux 0xcc9268fc hwpoison_filter_enable +EXPORT_SYMBOL_GPL vmlinux 0xcc935375 walk_iomem_res_desc +EXPORT_SYMBOL_GPL vmlinux 0xcc9522bd __phy_modify +EXPORT_SYMBOL_GPL vmlinux 0xcc9e8c2b perf_msr_probe +EXPORT_SYMBOL_GPL vmlinux 0xcca4fec4 rio_request_dma +EXPORT_SYMBOL_GPL vmlinux 0xcca506b7 dm_start_time_ns_from_clone +EXPORT_SYMBOL_GPL vmlinux 0xccb34258 dev_pm_opp_free_cpufreq_table +EXPORT_SYMBOL_GPL vmlinux 0xccb63ff0 mbox_flush +EXPORT_SYMBOL_GPL vmlinux 0xcccfb2fa sata_deb_timing_hotplug +EXPORT_SYMBOL_GPL vmlinux 0xccd2e958 regulator_get_voltage +EXPORT_SYMBOL_GPL vmlinux 0xccd86806 ata_id_string +EXPORT_SYMBOL_GPL vmlinux 0xccea4e34 perf_get_x86_pmu_capability +EXPORT_SYMBOL_GPL vmlinux 0xcceb227d irq_chip_ack_parent +EXPORT_SYMBOL_GPL vmlinux 0xccf2b0d9 regmap_bulk_read +EXPORT_SYMBOL_GPL vmlinux 0xccf52bc9 sfp_upstream_start +EXPORT_SYMBOL_GPL vmlinux 0xccf74a6a netlink_add_tap +EXPORT_SYMBOL_GPL vmlinux 0xcd0b1a43 regcache_mark_dirty +EXPORT_SYMBOL_GPL vmlinux 0xcd24e146 hash_digest_size +EXPORT_SYMBOL_GPL vmlinux 0xcd3dccb0 check_move_unevictable_pages +EXPORT_SYMBOL_GPL vmlinux 0xcd3e5c7c acpi_release_memory +EXPORT_SYMBOL_GPL vmlinux 0xcd464db2 sdio_disable_func +EXPORT_SYMBOL_GPL vmlinux 0xcd5f55c6 pci_host_probe +EXPORT_SYMBOL_GPL vmlinux 0xcd6dcf4e devm_devfreq_event_add_edev +EXPORT_SYMBOL_GPL vmlinux 0xcd6f2dc9 nf_log_buf_add +EXPORT_SYMBOL_GPL vmlinux 0xcd77225a led_sysfs_disable +EXPORT_SYMBOL_GPL vmlinux 0xcd805644 pci_epc_raise_irq +EXPORT_SYMBOL_GPL vmlinux 0xcd81a945 switch_fpu_return +EXPORT_SYMBOL_GPL vmlinux 0xcd91b127 system_highpri_wq +EXPORT_SYMBOL_GPL vmlinux 0xcd974f00 rcu_all_qs +EXPORT_SYMBOL_GPL vmlinux 0xcd9a3b15 pci_disable_pasid +EXPORT_SYMBOL_GPL vmlinux 0xcd9ccbb9 cs47l24_patch +EXPORT_SYMBOL_GPL vmlinux 0xcd9cd2ff wakeme_after_rcu +EXPORT_SYMBOL_GPL vmlinux 0xcda0aa4c rio_enable_rx_tx_port +EXPORT_SYMBOL_GPL vmlinux 0xcdae07d5 phy_create +EXPORT_SYMBOL_GPL vmlinux 0xcdb6adcc ras_userspace_consumers +EXPORT_SYMBOL_GPL vmlinux 0xcdc37208 bio_disassociate_blkg +EXPORT_SYMBOL_GPL vmlinux 0xcdc98975 ping_rcv +EXPORT_SYMBOL_GPL vmlinux 0xcdca3691 nr_irqs +EXPORT_SYMBOL_GPL vmlinux 0xcde26600 cppc_get_transition_latency +EXPORT_SYMBOL_GPL vmlinux 0xcdef804d acpi_subsys_suspend_noirq +EXPORT_SYMBOL_GPL vmlinux 0xce026961 pci_cfg_access_unlock +EXPORT_SYMBOL_GPL vmlinux 0xce0a4020 xenbus_directory +EXPORT_SYMBOL_GPL vmlinux 0xce0f6bf1 unregister_asymmetric_key_parser +EXPORT_SYMBOL_GPL vmlinux 0xce1f386f strp_unpause +EXPORT_SYMBOL_GPL vmlinux 0xce28f24a pm_clk_init +EXPORT_SYMBOL_GPL vmlinux 0xce2aee4b dev_pm_domain_attach_by_id +EXPORT_SYMBOL_GPL vmlinux 0xce3258c3 usb_hcd_unmap_urb_setup_for_dma +EXPORT_SYMBOL_GPL vmlinux 0xce3aa2ff usb_ep0_reinit +EXPORT_SYMBOL_GPL vmlinux 0xce450bd4 fb_deferred_io_cleanup +EXPORT_SYMBOL_GPL vmlinux 0xce5ad208 regcache_drop_region +EXPORT_SYMBOL_GPL vmlinux 0xce6856ab tty_buffer_request_room +EXPORT_SYMBOL_GPL vmlinux 0xce6db656 rcu_is_watching +EXPORT_SYMBOL_GPL vmlinux 0xce837c71 __fscrypt_prepare_symlink +EXPORT_SYMBOL_GPL vmlinux 0xce94d9eb bus_for_each_dev +EXPORT_SYMBOL_GPL vmlinux 0xce94fb06 rio_request_inb_mbox +EXPORT_SYMBOL_GPL vmlinux 0xcea0e8d0 xenbus_dev_resume +EXPORT_SYMBOL_GPL vmlinux 0xcea817f6 serdev_device_set_flow_control +EXPORT_SYMBOL_GPL vmlinux 0xceaeb8a1 gpiochip_line_is_open_drain +EXPORT_SYMBOL_GPL vmlinux 0xceb1f126 mpi_read_raw_data +EXPORT_SYMBOL_GPL vmlinux 0xceb66bec sched_clock_cpu +EXPORT_SYMBOL_GPL vmlinux 0xcebfc927 extcon_dev_unregister +EXPORT_SYMBOL_GPL vmlinux 0xcecbb54f spi_mem_exec_op +EXPORT_SYMBOL_GPL vmlinux 0xced0eb07 usb_sg_cancel +EXPORT_SYMBOL_GPL vmlinux 0xced42924 pci_stop_root_bus +EXPORT_SYMBOL_GPL vmlinux 0xcee1641c kgdb_unregister_nmi_console +EXPORT_SYMBOL_GPL vmlinux 0xcee5f966 gpiochip_remove +EXPORT_SYMBOL_GPL vmlinux 0xcee6df71 dev_pm_opp_get_freq +EXPORT_SYMBOL_GPL vmlinux 0xceed8318 ibft_addr +EXPORT_SYMBOL_GPL vmlinux 0xcf264a23 strp_init +EXPORT_SYMBOL_GPL vmlinux 0xcf2d541d crypto_stats_akcipher_encrypt +EXPORT_SYMBOL_GPL vmlinux 0xcf37a5bc ping_seq_stop +EXPORT_SYMBOL_GPL vmlinux 0xcf38b060 class_remove_file_ns +EXPORT_SYMBOL_GPL vmlinux 0xcf48080e rio_mport_chk_dev_access +EXPORT_SYMBOL_GPL vmlinux 0xcf54ea93 async_unregister_domain +EXPORT_SYMBOL_GPL vmlinux 0xcf661bec usb_get_hcd +EXPORT_SYMBOL_GPL vmlinux 0xcf67c9e9 inverse_translate +EXPORT_SYMBOL_GPL vmlinux 0xcf77cf12 component_master_add_with_match +EXPORT_SYMBOL_GPL vmlinux 0xcf7b4c4f blk_queue_max_discard_segments +EXPORT_SYMBOL_GPL vmlinux 0xcf7cd444 pwm_request_from_chip +EXPORT_SYMBOL_GPL vmlinux 0xcf819173 hwspin_lock_get_id +EXPORT_SYMBOL_GPL vmlinux 0xcf824197 debugfs_create_file_unsafe +EXPORT_SYMBOL_GPL vmlinux 0xcf881eee devm_spi_register_controller +EXPORT_SYMBOL_GPL vmlinux 0xcf92f322 usb_driver_claim_interface +EXPORT_SYMBOL_GPL vmlinux 0xcf9fe997 x86_vector_domain +EXPORT_SYMBOL_GPL vmlinux 0xcfa0a6c9 vfs_truncate +EXPORT_SYMBOL_GPL vmlinux 0xcfa6088f sk_msg_alloc +EXPORT_SYMBOL_GPL vmlinux 0xcfc15f4b rht_bucket_nested_insert +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 0xcfde2d9c fat_attach +EXPORT_SYMBOL_GPL vmlinux 0xcfe7aa69 pin_user_pages_fast_only +EXPORT_SYMBOL_GPL vmlinux 0xcfe7fb40 __vfs_setxattr_noperm +EXPORT_SYMBOL_GPL vmlinux 0xcffb3334 __skb_get_hash_symmetric +EXPORT_SYMBOL_GPL vmlinux 0xd007189d devlink_trap_groups_unregister +EXPORT_SYMBOL_GPL vmlinux 0xd01519d3 pci_ioremap_bar +EXPORT_SYMBOL_GPL vmlinux 0xd021599a gnttab_page_cache_put +EXPORT_SYMBOL_GPL vmlinux 0xd02686df ipv6_dup_options +EXPORT_SYMBOL_GPL vmlinux 0xd0268d8a skb_consume_udp +EXPORT_SYMBOL_GPL vmlinux 0xd02be739 ncsi_vlan_rx_kill_vid +EXPORT_SYMBOL_GPL vmlinux 0xd03eaf4c schedule_hrtimeout_range +EXPORT_SYMBOL_GPL vmlinux 0xd0458ccb xenbus_strstate +EXPORT_SYMBOL_GPL vmlinux 0xd04dfdea nf_hook_entries_delete_raw +EXPORT_SYMBOL_GPL vmlinux 0xd05377f6 crypto_unregister_scomp +EXPORT_SYMBOL_GPL vmlinux 0xd06524ba raw_notifier_chain_unregister +EXPORT_SYMBOL_GPL vmlinux 0xd067d3c5 system_freezable_power_efficient_wq +EXPORT_SYMBOL_GPL vmlinux 0xd07113c7 nvdimm_badblocks_populate +EXPORT_SYMBOL_GPL vmlinux 0xd0841312 fat_scan +EXPORT_SYMBOL_GPL vmlinux 0xd085ee52 skb_zerocopy_iter_dgram +EXPORT_SYMBOL_GPL vmlinux 0xd096bf0d regmap_register_patch +EXPORT_SYMBOL_GPL vmlinux 0xd09911a6 acpi_dev_get_irq_type +EXPORT_SYMBOL_GPL vmlinux 0xd09d2138 sched_trace_rq_avg_rt +EXPORT_SYMBOL_GPL vmlinux 0xd0b4d7d2 tty_buffer_unlock_exclusive +EXPORT_SYMBOL_GPL vmlinux 0xd0c05159 emergency_restart +EXPORT_SYMBOL_GPL vmlinux 0xd0c90b8f virtqueue_get_used_addr +EXPORT_SYMBOL_GPL vmlinux 0xd0c922b4 trace_output_call +EXPORT_SYMBOL_GPL vmlinux 0xd0ce8dde fixed_phy_register +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 0xd0f2ded5 sysfs_file_change_owner +EXPORT_SYMBOL_GPL vmlinux 0xd0fb5519 scsi_dh_attach +EXPORT_SYMBOL_GPL vmlinux 0xd102a3ef led_set_brightness +EXPORT_SYMBOL_GPL vmlinux 0xd10f0b9c fat_dir_empty +EXPORT_SYMBOL_GPL vmlinux 0xd123e3a3 sdio_retune_crc_enable +EXPORT_SYMBOL_GPL vmlinux 0xd136cb7c __devm_of_phy_provider_register +EXPORT_SYMBOL_GPL vmlinux 0xd13dbf59 i2c_dw_probe_master +EXPORT_SYMBOL_GPL vmlinux 0xd1476486 gpiod_get_array_value_cansleep +EXPORT_SYMBOL_GPL vmlinux 0xd14ba09a bpf_offload_dev_netdev_unregister +EXPORT_SYMBOL_GPL vmlinux 0xd1571417 irq_chip_get_parent_state +EXPORT_SYMBOL_GPL vmlinux 0xd159586c net_prio_cgrp_subsys_enabled_key +EXPORT_SYMBOL_GPL vmlinux 0xd17abba5 devlink_traps_unregister +EXPORT_SYMBOL_GPL vmlinux 0xd18a9006 scsi_internal_device_block_nowait +EXPORT_SYMBOL_GPL vmlinux 0xd19fd453 dw_pcie_ep_linkup +EXPORT_SYMBOL_GPL vmlinux 0xd1a80dab ata_pci_sff_init_host +EXPORT_SYMBOL_GPL vmlinux 0xd1af005f skb_defer_rx_timestamp +EXPORT_SYMBOL_GPL vmlinux 0xd1afc85c regulator_list_voltage_linear +EXPORT_SYMBOL_GPL vmlinux 0xd1bad3b0 pci_d3cold_disable +EXPORT_SYMBOL_GPL vmlinux 0xd1c1f554 dma_buf_vunmap +EXPORT_SYMBOL_GPL vmlinux 0xd1cac7bf unregister_ftrace_direct +EXPORT_SYMBOL_GPL vmlinux 0xd1cbc23c add_timer_on +EXPORT_SYMBOL_GPL vmlinux 0xd1d06648 sysfs_create_group +EXPORT_SYMBOL_GPL vmlinux 0xd1d52021 acpi_unbind_one +EXPORT_SYMBOL_GPL vmlinux 0xd1f2eee2 nf_logger_find_get +EXPORT_SYMBOL_GPL vmlinux 0xd1fbc889 unregister_kprobe +EXPORT_SYMBOL_GPL vmlinux 0xd1fd7e0d skb_copy_ubufs +EXPORT_SYMBOL_GPL vmlinux 0xd200e7af __pm_stay_awake +EXPORT_SYMBOL_GPL vmlinux 0xd20bf6ba dcookie_unregister +EXPORT_SYMBOL_GPL vmlinux 0xd20f3fce pci_num_vf +EXPORT_SYMBOL_GPL vmlinux 0xd2133722 dm_post_suspending +EXPORT_SYMBOL_GPL vmlinux 0xd21422a8 bio_alloc_mddev +EXPORT_SYMBOL_GPL vmlinux 0xd217e9e6 trace_set_clr_event +EXPORT_SYMBOL_GPL vmlinux 0xd21b61bd async_schedule_node_domain +EXPORT_SYMBOL_GPL vmlinux 0xd22ded35 pin_get_name +EXPORT_SYMBOL_GPL vmlinux 0xd23094c6 driver_remove_file +EXPORT_SYMBOL_GPL vmlinux 0xd2496cf4 icc_enable +EXPORT_SYMBOL_GPL vmlinux 0xd24e9e8c klist_init +EXPORT_SYMBOL_GPL vmlinux 0xd2559b80 crypto_dequeue_request +EXPORT_SYMBOL_GPL vmlinux 0xd2587618 put_pid_ns +EXPORT_SYMBOL_GPL vmlinux 0xd260af0d ring_buffer_write +EXPORT_SYMBOL_GPL vmlinux 0xd263e934 bpf_prog_free +EXPORT_SYMBOL_GPL vmlinux 0xd273b1b1 __round_jiffies_up_relative +EXPORT_SYMBOL_GPL vmlinux 0xd27f215d gnttab_alloc_grant_references +EXPORT_SYMBOL_GPL vmlinux 0xd2828613 gpiochip_irq_map +EXPORT_SYMBOL_GPL vmlinux 0xd28d2416 crypto_larval_alloc +EXPORT_SYMBOL_GPL vmlinux 0xd29396d3 genphy_c45_config_aneg +EXPORT_SYMBOL_GPL vmlinux 0xd29c0900 ip4_datagram_release_cb +EXPORT_SYMBOL_GPL vmlinux 0xd29df843 sfp_bus_find_fwnode +EXPORT_SYMBOL_GPL vmlinux 0xd29fd994 badblocks_store +EXPORT_SYMBOL_GPL vmlinux 0xd2b10a05 ata_timing_find_mode +EXPORT_SYMBOL_GPL vmlinux 0xd2c56bec irq_gc_mask_clr_bit +EXPORT_SYMBOL_GPL vmlinux 0xd2c8ae77 tracepoint_probe_unregister +EXPORT_SYMBOL_GPL vmlinux 0xd2d67ff9 dpm_for_each_dev +EXPORT_SYMBOL_GPL vmlinux 0xd2dd4812 phy_basic_features +EXPORT_SYMBOL_GPL vmlinux 0xd30105df genphy_c45_aneg_done +EXPORT_SYMBOL_GPL vmlinux 0xd30d9f2e dw_pcie_msi_init +EXPORT_SYMBOL_GPL vmlinux 0xd3130fbc clk_register_fixed_factor +EXPORT_SYMBOL_GPL vmlinux 0xd31a2ac5 ring_buffer_oldest_event_ts +EXPORT_SYMBOL_GPL vmlinux 0xd31c27c5 inet_twsk_hashdance +EXPORT_SYMBOL_GPL vmlinux 0xd31d136b ata_slave_link_init +EXPORT_SYMBOL_GPL vmlinux 0xd3250b01 aead_geniv_alloc +EXPORT_SYMBOL_GPL vmlinux 0xd32694be sbitmap_prepare_to_wait +EXPORT_SYMBOL_GPL vmlinux 0xd32bb785 usb_sg_wait +EXPORT_SYMBOL_GPL vmlinux 0xd3308ec8 register_kretprobe +EXPORT_SYMBOL_GPL vmlinux 0xd33469b5 pci_max_pasids +EXPORT_SYMBOL_GPL vmlinux 0xd33a9177 extcon_register_notifier +EXPORT_SYMBOL_GPL vmlinux 0xd3472b46 phy_calibrate +EXPORT_SYMBOL_GPL vmlinux 0xd34f27af sdio_retune_hold_now +EXPORT_SYMBOL_GPL vmlinux 0xd35c6fac __irq_alloc_domain_generic_chips +EXPORT_SYMBOL_GPL vmlinux 0xd36608a4 wm5102_i2c_regmap +EXPORT_SYMBOL_GPL vmlinux 0xd36760ef __usb_get_extra_descriptor +EXPORT_SYMBOL_GPL vmlinux 0xd3752c27 atomic_notifier_call_chain +EXPORT_SYMBOL_GPL vmlinux 0xd37d28a5 sk_psock_msg_verdict +EXPORT_SYMBOL_GPL vmlinux 0xd380a29e tpm_transmit_cmd +EXPORT_SYMBOL_GPL vmlinux 0xd389b086 device_link_remove +EXPORT_SYMBOL_GPL vmlinux 0xd3907d0a devm_hwspin_lock_request +EXPORT_SYMBOL_GPL vmlinux 0xd3949498 edac_mc_alloc +EXPORT_SYMBOL_GPL vmlinux 0xd39e9848 put_itimerspec64 +EXPORT_SYMBOL_GPL vmlinux 0xd3a8a0fe irq_create_of_mapping +EXPORT_SYMBOL_GPL vmlinux 0xd3b99f7f dma_buf_fd +EXPORT_SYMBOL_GPL vmlinux 0xd3bd4d25 usb_alloc_streams +EXPORT_SYMBOL_GPL vmlinux 0xd3bfa753 usb_bus_idr_lock +EXPORT_SYMBOL_GPL vmlinux 0xd3eb3aeb devm_gpiod_get_array_optional +EXPORT_SYMBOL_GPL vmlinux 0xd3ecf47f xenbus_alloc_evtchn +EXPORT_SYMBOL_GPL vmlinux 0xd3f8f3f4 page_poisoning_enabled +EXPORT_SYMBOL_GPL vmlinux 0xd401c846 perf_event_sysfs_show +EXPORT_SYMBOL_GPL vmlinux 0xd4034828 system_freezable_wq +EXPORT_SYMBOL_GPL vmlinux 0xd409f083 __kthread_should_park +EXPORT_SYMBOL_GPL vmlinux 0xd40efaad gpiochip_request_own_desc +EXPORT_SYMBOL_GPL vmlinux 0xd40fa2db dev_pm_opp_remove_all_dynamic +EXPORT_SYMBOL_GPL vmlinux 0xd40fd2b9 devm_fwnode_pwm_get +EXPORT_SYMBOL_GPL vmlinux 0xd426dbc4 erst_get_record_count +EXPORT_SYMBOL_GPL vmlinux 0xd42af3c7 crypto_stats_skcipher_decrypt +EXPORT_SYMBOL_GPL vmlinux 0xd44a5eac kgdb_register_nmi_console +EXPORT_SYMBOL_GPL vmlinux 0xd46af5ef cppc_get_perf_ctrs +EXPORT_SYMBOL_GPL vmlinux 0xd47439cc ipv4_sk_update_pmtu +EXPORT_SYMBOL_GPL vmlinux 0xd47b449f blkg_lookup_slowpath +EXPORT_SYMBOL_GPL vmlinux 0xd47e667f devlink_health_reporter_create +EXPORT_SYMBOL_GPL vmlinux 0xd48f2c3c iomap_seek_hole +EXPORT_SYMBOL_GPL vmlinux 0xd49007d0 proc_create_net_data_write +EXPORT_SYMBOL_GPL vmlinux 0xd49d2ed6 user_destroy +EXPORT_SYMBOL_GPL vmlinux 0xd4b6157e devlink_health_reporter_recovery_done +EXPORT_SYMBOL_GPL vmlinux 0xd4c0b26a free_fib_info +EXPORT_SYMBOL_GPL vmlinux 0xd4c14632 system_unbound_wq +EXPORT_SYMBOL_GPL vmlinux 0xd4c33c6d fuse_sync_release +EXPORT_SYMBOL_GPL vmlinux 0xd4d7a223 pm_genpd_remove_subdomain +EXPORT_SYMBOL_GPL vmlinux 0xd4e6d7e0 linear_range_get_value +EXPORT_SYMBOL_GPL vmlinux 0xd4f0ee8c smpboot_unregister_percpu_thread +EXPORT_SYMBOL_GPL vmlinux 0xd4fb44c5 bio_trim +EXPORT_SYMBOL_GPL vmlinux 0xd5058687 iommu_map_sg +EXPORT_SYMBOL_GPL vmlinux 0xd51e6cf7 validate_xmit_skb_list +EXPORT_SYMBOL_GPL vmlinux 0xd52f4324 led_stop_software_blink +EXPORT_SYMBOL_GPL vmlinux 0xd5301b2c linear_range_get_max_value +EXPORT_SYMBOL_GPL vmlinux 0xd53c67b3 unregister_net_sysctl_table +EXPORT_SYMBOL_GPL vmlinux 0xd54afc98 extcon_get_edev_name +EXPORT_SYMBOL_GPL vmlinux 0xd55ad93b iommu_group_get_iommudata +EXPORT_SYMBOL_GPL vmlinux 0xd576afe7 clk_gate_restore_context +EXPORT_SYMBOL_GPL vmlinux 0xd57ac1e6 tty_mode_ioctl +EXPORT_SYMBOL_GPL vmlinux 0xd57d191c __irq_set_handler +EXPORT_SYMBOL_GPL vmlinux 0xd57fbd31 hwrng_unregister +EXPORT_SYMBOL_GPL vmlinux 0xd5822803 gnttab_map_refs +EXPORT_SYMBOL_GPL vmlinux 0xd593567d device_unregister +EXPORT_SYMBOL_GPL vmlinux 0xd59a1587 linkmode_resolve_pause +EXPORT_SYMBOL_GPL vmlinux 0xd5ad357f __tracepoint_mc_event +EXPORT_SYMBOL_GPL vmlinux 0xd5b57ab3 __tracepoint_rpm_resume +EXPORT_SYMBOL_GPL vmlinux 0xd5d34403 __efivar_entry_iter +EXPORT_SYMBOL_GPL vmlinux 0xd5e5cd38 iommu_set_fault_handler +EXPORT_SYMBOL_GPL vmlinux 0xd5f3bb7b set_memory_encrypted +EXPORT_SYMBOL_GPL vmlinux 0xd6044324 kern_mount +EXPORT_SYMBOL_GPL vmlinux 0xd60c3b0d set_capacity_revalidate_and_notify +EXPORT_SYMBOL_GPL vmlinux 0xd6119053 xdp_rxq_info_reg_mem_model +EXPORT_SYMBOL_GPL vmlinux 0xd6201576 devres_release_group +EXPORT_SYMBOL_GPL vmlinux 0xd62697f6 sdio_get_host_pm_caps +EXPORT_SYMBOL_GPL vmlinux 0xd647443f skcipher_walk_virt +EXPORT_SYMBOL_GPL vmlinux 0xd64ed259 __memcat_p +EXPORT_SYMBOL_GPL vmlinux 0xd65ae5f1 wm831x_set_bits +EXPORT_SYMBOL_GPL vmlinux 0xd65b4cea crypto_unregister_skcipher +EXPORT_SYMBOL_GPL vmlinux 0xd668efc9 pinctrl_find_gpio_range_from_pin +EXPORT_SYMBOL_GPL vmlinux 0xd669c9ce dax_region_put +EXPORT_SYMBOL_GPL vmlinux 0xd67364f7 eventfd_ctx_fdget +EXPORT_SYMBOL_GPL vmlinux 0xd6c37a42 find_module +EXPORT_SYMBOL_GPL vmlinux 0xd6d98317 fixup_user_fault +EXPORT_SYMBOL_GPL vmlinux 0xd6deb1f0 dmi_kobj +EXPORT_SYMBOL_GPL vmlinux 0xd6e549be __fscrypt_prepare_lookup +EXPORT_SYMBOL_GPL vmlinux 0xd6f14378 blkcg_deactivate_policy +EXPORT_SYMBOL_GPL vmlinux 0xd6f23a18 vring_del_virtqueue +EXPORT_SYMBOL_GPL vmlinux 0xd6feefa5 agp_num_entries +EXPORT_SYMBOL_GPL vmlinux 0xd7102fd0 component_add_typed +EXPORT_SYMBOL_GPL vmlinux 0xd72b772d sdio_writew +EXPORT_SYMBOL_GPL vmlinux 0xd72feba2 xenbus_read_driver_state +EXPORT_SYMBOL_GPL vmlinux 0xd7397382 reset_control_get_count +EXPORT_SYMBOL_GPL vmlinux 0xd7399d2a efivar_entry_iter_end +EXPORT_SYMBOL_GPL vmlinux 0xd7436a2b __tcp_send_ack +EXPORT_SYMBOL_GPL vmlinux 0xd75b20aa rsa_parse_priv_key +EXPORT_SYMBOL_GPL vmlinux 0xd768e985 regulator_has_full_constraints +EXPORT_SYMBOL_GPL vmlinux 0xd76f244f devm_clk_bulk_get_all +EXPORT_SYMBOL_GPL vmlinux 0xd774957d mpi_write_to_sgl +EXPORT_SYMBOL_GPL vmlinux 0xd78bbece devm_clk_hw_register +EXPORT_SYMBOL_GPL vmlinux 0xd791ffb3 devm_regulator_bulk_unregister_supply_alias +EXPORT_SYMBOL_GPL vmlinux 0xd79eb549 pwm_lpss_probe +EXPORT_SYMBOL_GPL vmlinux 0xd7af8125 irq_generic_chip_ops +EXPORT_SYMBOL_GPL vmlinux 0xd7c39fff free_iova +EXPORT_SYMBOL_GPL vmlinux 0xd7c9b546 rt_mutex_trylock +EXPORT_SYMBOL_GPL vmlinux 0xd7cea889 edac_mod_work +EXPORT_SYMBOL_GPL vmlinux 0xd7ec9839 mm_kobj +EXPORT_SYMBOL_GPL vmlinux 0xd80d77bb pci_cfg_access_lock +EXPORT_SYMBOL_GPL vmlinux 0xd83c4e36 blkcg_policy_unregister +EXPORT_SYMBOL_GPL vmlinux 0xd84379ec gpiod_cansleep +EXPORT_SYMBOL_GPL vmlinux 0xd84d35bd dax_read_lock +EXPORT_SYMBOL_GPL vmlinux 0xd85f9069 gpiochip_line_is_irq +EXPORT_SYMBOL_GPL vmlinux 0xd870e5e5 relay_reset +EXPORT_SYMBOL_GPL vmlinux 0xd87fc0a0 usb_amd_prefetch_quirk +EXPORT_SYMBOL_GPL vmlinux 0xd8d68ab1 dmi_memdev_type +EXPORT_SYMBOL_GPL vmlinux 0xd8e5444b dev_nit_active +EXPORT_SYMBOL_GPL vmlinux 0xd8e99d2c rio_request_outb_mbox +EXPORT_SYMBOL_GPL vmlinux 0xd8ec7967 mmu_notifier_unregister +EXPORT_SYMBOL_GPL vmlinux 0xd8efd21a sdio_set_host_pm_flags +EXPORT_SYMBOL_GPL vmlinux 0xd8f547c2 blk_mq_unquiesce_queue +EXPORT_SYMBOL_GPL vmlinux 0xd8fbb14d net_cls_cgrp_subsys_on_dfl_key +EXPORT_SYMBOL_GPL vmlinux 0xd91838c5 dax_inode +EXPORT_SYMBOL_GPL vmlinux 0xd919806a amd_cache_northbridges +EXPORT_SYMBOL_GPL vmlinux 0xd91b14bf crypto_shash_update +EXPORT_SYMBOL_GPL vmlinux 0xd9272f5b badblocks_clear +EXPORT_SYMBOL_GPL vmlinux 0xd927a68e od_register_powersave_bias_handler +EXPORT_SYMBOL_GPL vmlinux 0xd92f0791 leds_list_lock +EXPORT_SYMBOL_GPL vmlinux 0xd93a38a3 securityfs_remove +EXPORT_SYMBOL_GPL vmlinux 0xd93a5cb1 efivar_variable_is_removable +EXPORT_SYMBOL_GPL vmlinux 0xd96babb4 interval_tree_iter_next +EXPORT_SYMBOL_GPL vmlinux 0xd98a480c fscrypt_fname_siphash +EXPORT_SYMBOL_GPL vmlinux 0xd98adeb3 pci_status_get_and_clear_errors +EXPORT_SYMBOL_GPL vmlinux 0xd99db4ef blk_rq_prep_clone +EXPORT_SYMBOL_GPL vmlinux 0xd9bd2a03 cpuidle_disable_device +EXPORT_SYMBOL_GPL vmlinux 0xd9d5d879 sbitmap_queue_resize +EXPORT_SYMBOL_GPL vmlinux 0xd9e24457 ring_buffer_peek +EXPORT_SYMBOL_GPL vmlinux 0xd9e29c6a da9052_regmap_config +EXPORT_SYMBOL_GPL vmlinux 0xd9ff2172 ezx_pcap_write +EXPORT_SYMBOL_GPL vmlinux 0xda037a1a blk_mq_sched_request_inserted +EXPORT_SYMBOL_GPL vmlinux 0xda15a15d alarm_forward +EXPORT_SYMBOL_GPL vmlinux 0xda17f9a2 bpf_prog_create +EXPORT_SYMBOL_GPL vmlinux 0xda1aa6ca raw_hash_sk +EXPORT_SYMBOL_GPL vmlinux 0xda1f78ee clear_hv_tscchange_cb +EXPORT_SYMBOL_GPL vmlinux 0xda2491cd pci_msi_prepare +EXPORT_SYMBOL_GPL vmlinux 0xda2576a6 pci_epf_create +EXPORT_SYMBOL_GPL vmlinux 0xda2a12ef inet6_csk_xmit +EXPORT_SYMBOL_GPL vmlinux 0xda2fe5fc rio_add_device +EXPORT_SYMBOL_GPL vmlinux 0xda320d31 sfp_module_start +EXPORT_SYMBOL_GPL vmlinux 0xda3ae1d6 regmap_add_irq_chip +EXPORT_SYMBOL_GPL vmlinux 0xda5297ef devm_nvmem_register +EXPORT_SYMBOL_GPL vmlinux 0xda5353de fuse_simple_background +EXPORT_SYMBOL_GPL vmlinux 0xda7912d4 freq_qos_add_request +EXPORT_SYMBOL_GPL vmlinux 0xda837931 regulator_list_voltage +EXPORT_SYMBOL_GPL vmlinux 0xda8e1302 software_node_find_by_name +EXPORT_SYMBOL_GPL vmlinux 0xdaa06dc1 acpi_lpat_raw_to_temp +EXPORT_SYMBOL_GPL vmlinux 0xdab5a1eb interval_tree_insert +EXPORT_SYMBOL_GPL vmlinux 0xdae26a8d usb_phy_set_event +EXPORT_SYMBOL_GPL vmlinux 0xdaf4dfb3 fb_mode_option +EXPORT_SYMBOL_GPL vmlinux 0xdaf5c16e __cookie_v4_check +EXPORT_SYMBOL_GPL vmlinux 0xdaf7c989 xenbus_dev_probe +EXPORT_SYMBOL_GPL vmlinux 0xdafcdc3a ktime_get_snapshot +EXPORT_SYMBOL_GPL vmlinux 0xdb119ac6 task_cputime_adjusted +EXPORT_SYMBOL_GPL vmlinux 0xdb1ccd64 perf_trace_run_bpf_submit +EXPORT_SYMBOL_GPL vmlinux 0xdb25da3e irq_work_queue +EXPORT_SYMBOL_GPL vmlinux 0xdb5ce0d4 inet_hash +EXPORT_SYMBOL_GPL vmlinux 0xdb63a944 acpi_lpat_get_conversion_table +EXPORT_SYMBOL_GPL vmlinux 0xdb66308f blk_trace_remove +EXPORT_SYMBOL_GPL vmlinux 0xdb735885 alarm_cancel +EXPORT_SYMBOL_GPL vmlinux 0xdb8a1b3f usermodehelper_read_trylock +EXPORT_SYMBOL_GPL vmlinux 0xdb8f41f7 dma_buf_export +EXPORT_SYMBOL_GPL vmlinux 0xdb91875e sdio_f0_readb +EXPORT_SYMBOL_GPL vmlinux 0xdb93d060 skcipher_walk_done +EXPORT_SYMBOL_GPL vmlinux 0xdb9c9c0f skb_zerocopy_headlen +EXPORT_SYMBOL_GPL vmlinux 0xdb9f6290 anon_inode_getfd +EXPORT_SYMBOL_GPL vmlinux 0xdb9fa712 debugfs_create_u64 +EXPORT_SYMBOL_GPL vmlinux 0xdb9fca3b __fib_lookup +EXPORT_SYMBOL_GPL vmlinux 0xdba6944d strp_done +EXPORT_SYMBOL_GPL vmlinux 0xdbba8877 clockevents_unbind_device +EXPORT_SYMBOL_GPL vmlinux 0xdbc2dc37 devlink_reload_enable +EXPORT_SYMBOL_GPL vmlinux 0xdbcfa0a4 pinctrl_put +EXPORT_SYMBOL_GPL vmlinux 0xdbd3b003 bsg_job_done +EXPORT_SYMBOL_GPL vmlinux 0xdbde27f3 page_cache_readahead_unbounded +EXPORT_SYMBOL_GPL vmlinux 0xdbe1b24d crypto_comp_decompress +EXPORT_SYMBOL_GPL vmlinux 0xdbe529d1 fat_sync_inode +EXPORT_SYMBOL_GPL vmlinux 0xdbf29726 __tracepoint_neigh_timer_handler +EXPORT_SYMBOL_GPL vmlinux 0xdbf7cb70 mpi_get_nbits +EXPORT_SYMBOL_GPL vmlinux 0xdbf9cc1f __fput_sync +EXPORT_SYMBOL_GPL vmlinux 0xdc14a211 xen_hvm_evtchn_do_upcall +EXPORT_SYMBOL_GPL vmlinux 0xdc18daae uart_console_write +EXPORT_SYMBOL_GPL vmlinux 0xdc21b41f sysfs_remove_files +EXPORT_SYMBOL_GPL vmlinux 0xdc21e866 hrtimer_forward +EXPORT_SYMBOL_GPL vmlinux 0xdc45a5db edac_stop_work +EXPORT_SYMBOL_GPL vmlinux 0xdc4926f0 mbox_send_message +EXPORT_SYMBOL_GPL vmlinux 0xdc62b4e8 apply_to_page_range +EXPORT_SYMBOL_GPL vmlinux 0xdc6596fa irq_set_parent +EXPORT_SYMBOL_GPL vmlinux 0xdc6699cb acpi_dev_free_resource_list +EXPORT_SYMBOL_GPL vmlinux 0xdc6d1e35 sysfs_rename_link_ns +EXPORT_SYMBOL_GPL vmlinux 0xdc6d6e48 rio_unregister_scan +EXPORT_SYMBOL_GPL vmlinux 0xdc7df67f apei_exec_ctx_init +EXPORT_SYMBOL_GPL vmlinux 0xdc825d6c usb_amd_quirk_pll_disable +EXPORT_SYMBOL_GPL vmlinux 0xdc851b9d xen_unregister_device_domain_owner +EXPORT_SYMBOL_GPL vmlinux 0xdc87eabd regulator_notifier_call_chain +EXPORT_SYMBOL_GPL vmlinux 0xdc91b881 fat_search_long +EXPORT_SYMBOL_GPL vmlinux 0xdc97af2e syscore_suspend +EXPORT_SYMBOL_GPL vmlinux 0xdc9836d3 dmaengine_unmap_put +EXPORT_SYMBOL_GPL vmlinux 0xdc9fa232 raw_notifier_chain_register +EXPORT_SYMBOL_GPL vmlinux 0xdca88425 rio_unmap_outb_region +EXPORT_SYMBOL_GPL vmlinux 0xdca8fc96 iommu_map_sg_atomic +EXPORT_SYMBOL_GPL vmlinux 0xdcaf6192 lwtunnel_build_state +EXPORT_SYMBOL_GPL vmlinux 0xdcb3d683 con_debug_enter +EXPORT_SYMBOL_GPL vmlinux 0xdcd18d2f queue_iova +EXPORT_SYMBOL_GPL vmlinux 0xdcd8ba64 pci_test_config_bits +EXPORT_SYMBOL_GPL vmlinux 0xdce20b06 noop_direct_IO +EXPORT_SYMBOL_GPL vmlinux 0xdce23a83 sbitmap_queue_wake_up +EXPORT_SYMBOL_GPL vmlinux 0xdce90470 devm_gpiod_unhinge +EXPORT_SYMBOL_GPL vmlinux 0xdcf075f0 synchronize_srcu_expedited +EXPORT_SYMBOL_GPL vmlinux 0xdd060504 kernel_read_file_from_fd +EXPORT_SYMBOL_GPL vmlinux 0xdd0762df set_worker_desc +EXPORT_SYMBOL_GPL vmlinux 0xdd102a49 spi_mem_driver_unregister +EXPORT_SYMBOL_GPL vmlinux 0xdd391eff profile_event_unregister +EXPORT_SYMBOL_GPL vmlinux 0xdd3c1914 regulator_is_equal +EXPORT_SYMBOL_GPL vmlinux 0xdd5d2657 genphy_c45_check_and_restart_aneg +EXPORT_SYMBOL_GPL vmlinux 0xdd5fa76d regulator_unregister +EXPORT_SYMBOL_GPL vmlinux 0xdd626ee3 fuse_len_args +EXPORT_SYMBOL_GPL vmlinux 0xdd7f0765 __tracepoint_powernv_throttle +EXPORT_SYMBOL_GPL vmlinux 0xdd945748 add_swap_extent +EXPORT_SYMBOL_GPL vmlinux 0xdda8471e dw_pcie_link_set_max_speed +EXPORT_SYMBOL_GPL vmlinux 0xddbbdc52 dev_pm_opp_get_opp_table +EXPORT_SYMBOL_GPL vmlinux 0xddbeeecc pci_lock_rescan_remove +EXPORT_SYMBOL_GPL vmlinux 0xddc75fee intel_msic_irq_read +EXPORT_SYMBOL_GPL vmlinux 0xddeab273 vfs_kern_mount +EXPORT_SYMBOL_GPL vmlinux 0xddf87495 pci_epc_set_bar +EXPORT_SYMBOL_GPL vmlinux 0xde09a94d xas_find +EXPORT_SYMBOL_GPL vmlinux 0xde19af2d led_init_core +EXPORT_SYMBOL_GPL vmlinux 0xde1a3fdb usb_kill_urb +EXPORT_SYMBOL_GPL vmlinux 0xde2d3af0 acpi_dev_resource_ext_address_space +EXPORT_SYMBOL_GPL vmlinux 0xde3993ab pid_vnr +EXPORT_SYMBOL_GPL vmlinux 0xde522d0a percpu_down_write +EXPORT_SYMBOL_GPL vmlinux 0xde67d6ee gpiochip_generic_request +EXPORT_SYMBOL_GPL vmlinux 0xde6e3469 __bdev_dax_supported +EXPORT_SYMBOL_GPL vmlinux 0xde6f1851 TSS_checkhmac1 +EXPORT_SYMBOL_GPL vmlinux 0xde9ab8c7 xenbus_rm +EXPORT_SYMBOL_GPL vmlinux 0xdea9919b kmsg_dump_unregister +EXPORT_SYMBOL_GPL vmlinux 0xdeae77ad debugfs_create_devm_seqfile +EXPORT_SYMBOL_GPL vmlinux 0xdeb29781 ip6_redirect +EXPORT_SYMBOL_GPL vmlinux 0xdeb2f623 pci_disable_pri +EXPORT_SYMBOL_GPL vmlinux 0xdeb300f9 sk_psock_init +EXPORT_SYMBOL_GPL vmlinux 0xdeb695de max8997_read_reg +EXPORT_SYMBOL_GPL vmlinux 0xdedff784 devm_led_classdev_unregister +EXPORT_SYMBOL_GPL vmlinux 0xdee851d1 platform_device_unregister +EXPORT_SYMBOL_GPL vmlinux 0xdeecf500 regulator_map_voltage_ascend +EXPORT_SYMBOL_GPL vmlinux 0xdeffa0a7 edac_raw_mc_handle_error +EXPORT_SYMBOL_GPL vmlinux 0xdf0ca3f4 cpu_latency_qos_request_active +EXPORT_SYMBOL_GPL vmlinux 0xdf0f75c6 eventfd_signal +EXPORT_SYMBOL_GPL vmlinux 0xdf1882af dbgp_reset_prep +EXPORT_SYMBOL_GPL vmlinux 0xdf18afc6 hwmon_device_register_with_info +EXPORT_SYMBOL_GPL vmlinux 0xdf1eca19 transport_class_unregister +EXPORT_SYMBOL_GPL vmlinux 0xdf223247 __tracepoint_sched_overutilized_tp +EXPORT_SYMBOL_GPL vmlinux 0xdf24e6cf gpiod_get_index_optional +EXPORT_SYMBOL_GPL vmlinux 0xdf266efc sk_msg_free_partial +EXPORT_SYMBOL_GPL vmlinux 0xdf2738bb cpu_cgrp_subsys_enabled_key +EXPORT_SYMBOL_GPL vmlinux 0xdf30e56b __fl6_sock_lookup +EXPORT_SYMBOL_GPL vmlinux 0xdf361504 crypto_remove_spawns +EXPORT_SYMBOL_GPL vmlinux 0xdf42f3d3 kgdb_unregister_io_module +EXPORT_SYMBOL_GPL vmlinux 0xdf46a5c9 init_iova_domain +EXPORT_SYMBOL_GPL vmlinux 0xdf68c2f1 nvdimm_to_bus +EXPORT_SYMBOL_GPL vmlinux 0xdf6bc741 regulator_get_current_limit +EXPORT_SYMBOL_GPL vmlinux 0xdf81924d uv_bios_mq_watchlist_free +EXPORT_SYMBOL_GPL vmlinux 0xdf9208c0 alloc_workqueue +EXPORT_SYMBOL_GPL vmlinux 0xdfa2458f scsi_dh_attached_handler_name +EXPORT_SYMBOL_GPL vmlinux 0xdfa46fd8 tpm2_probe +EXPORT_SYMBOL_GPL vmlinux 0xdfb58884 fat_remove_entries +EXPORT_SYMBOL_GPL vmlinux 0xdfb62e16 regmap_field_alloc +EXPORT_SYMBOL_GPL vmlinux 0xdfcb6c90 mctrl_gpio_set +EXPORT_SYMBOL_GPL vmlinux 0xdfd479e0 skb_mpls_update_lse +EXPORT_SYMBOL_GPL vmlinux 0xdfe88102 fsverity_prepare_setattr +EXPORT_SYMBOL_GPL vmlinux 0xdff24701 power_supply_property_is_writeable +EXPORT_SYMBOL_GPL vmlinux 0xdffa527e fsverity_file_open +EXPORT_SYMBOL_GPL vmlinux 0xe02614ea devm_clk_bulk_get +EXPORT_SYMBOL_GPL vmlinux 0xe02d85ca security_inode_create +EXPORT_SYMBOL_GPL vmlinux 0xe02dd56f ata_port_desc +EXPORT_SYMBOL_GPL vmlinux 0xe02f127d pm_clk_destroy +EXPORT_SYMBOL_GPL vmlinux 0xe049bfe5 regulator_list_hardware_vsel +EXPORT_SYMBOL_GPL vmlinux 0xe04e0ace pm_generic_thaw +EXPORT_SYMBOL_GPL vmlinux 0xe05e2f85 nexthop_free_rcu +EXPORT_SYMBOL_GPL vmlinux 0xe071d05d zs_pool_stats +EXPORT_SYMBOL_GPL vmlinux 0xe089cfcc agp_memory_reserved +EXPORT_SYMBOL_GPL vmlinux 0xe08b1ef7 xfrm_audit_state_replay +EXPORT_SYMBOL_GPL vmlinux 0xe097d004 dev_pm_opp_put_supported_hw +EXPORT_SYMBOL_GPL vmlinux 0xe0a4605e usb_lock_device_for_reset +EXPORT_SYMBOL_GPL vmlinux 0xe0b1c103 clk_set_max_rate +EXPORT_SYMBOL_GPL vmlinux 0xe0c47b90 pci_find_ext_capability +EXPORT_SYMBOL_GPL vmlinux 0xe0c77bb5 mce_notify_irq +EXPORT_SYMBOL_GPL vmlinux 0xe0e299f7 acpi_dma_request_slave_chan_by_name +EXPORT_SYMBOL_GPL vmlinux 0xe0e7146f ack_all_badblocks +EXPORT_SYMBOL_GPL vmlinux 0xe0f1d817 vga_default_device +EXPORT_SYMBOL_GPL vmlinux 0xe0f88fdf class_find_device +EXPORT_SYMBOL_GPL vmlinux 0xe10cd6ad erst_get_record_id_begin +EXPORT_SYMBOL_GPL vmlinux 0xe1250b09 uprobe_register +EXPORT_SYMBOL_GPL vmlinux 0xe12abdca tcp_cong_avoid_ai +EXPORT_SYMBOL_GPL vmlinux 0xe12e74e6 xdp_rxq_info_unused +EXPORT_SYMBOL_GPL vmlinux 0xe1336829 dev_pm_domain_start +EXPORT_SYMBOL_GPL vmlinux 0xe13b7279 pm_generic_resume_noirq +EXPORT_SYMBOL_GPL vmlinux 0xe1775ee7 dm_get_reserved_bio_based_ios +EXPORT_SYMBOL_GPL vmlinux 0xe18d1a31 devlink_params_publish +EXPORT_SYMBOL_GPL vmlinux 0xe1a8d7c9 net_rwsem +EXPORT_SYMBOL_GPL vmlinux 0xe1aa2d62 set_hv_tscchange_cb +EXPORT_SYMBOL_GPL vmlinux 0xe1bd6c99 rio_init_mports +EXPORT_SYMBOL_GPL vmlinux 0xe1c63523 blk_ksm_get_slot_idx +EXPORT_SYMBOL_GPL vmlinux 0xe1e1cf53 edac_pci_handle_pe +EXPORT_SYMBOL_GPL vmlinux 0xe1e4df72 sock_zerocopy_callback +EXPORT_SYMBOL_GPL vmlinux 0xe1fb7886 __pm_runtime_idle +EXPORT_SYMBOL_GPL vmlinux 0xe20a0954 pci_epc_set_msi +EXPORT_SYMBOL_GPL vmlinux 0xe21207e4 inet_twsk_alloc +EXPORT_SYMBOL_GPL vmlinux 0xe212ca8d rdev_get_dev +EXPORT_SYMBOL_GPL vmlinux 0xe21e70bc rhashtable_walk_stop +EXPORT_SYMBOL_GPL vmlinux 0xe2205619 usb_hcd_pci_shutdown +EXPORT_SYMBOL_GPL vmlinux 0xe22079bb virtqueue_add_outbuf +EXPORT_SYMBOL_GPL vmlinux 0xe2216d74 get_hwpoison_page +EXPORT_SYMBOL_GPL vmlinux 0xe22555d3 devm_nvmem_device_put +EXPORT_SYMBOL_GPL vmlinux 0xe233762a input_event_from_user +EXPORT_SYMBOL_GPL vmlinux 0xe2582a12 btree_init +EXPORT_SYMBOL_GPL vmlinux 0xe295c0ff is_hpet_enabled +EXPORT_SYMBOL_GPL vmlinux 0xe2984c32 netlink_strict_get_check +EXPORT_SYMBOL_GPL vmlinux 0xe2b3207a unregister_switchdev_notifier +EXPORT_SYMBOL_GPL vmlinux 0xe2bdf0e9 sock_gen_put +EXPORT_SYMBOL_GPL vmlinux 0xe2ce2b4d evm_set_key +EXPORT_SYMBOL_GPL vmlinux 0xe2dee084 regulator_set_voltage_sel_regmap +EXPORT_SYMBOL_GPL vmlinux 0xe3043ff9 request_any_context_irq +EXPORT_SYMBOL_GPL vmlinux 0xe329ba24 housekeeping_cpumask +EXPORT_SYMBOL_GPL vmlinux 0xe338c5ac inet_hashinfo2_init_mod +EXPORT_SYMBOL_GPL vmlinux 0xe34fe2be dev_pm_opp_set_regulators +EXPORT_SYMBOL_GPL vmlinux 0xe353ee00 led_trigger_blink +EXPORT_SYMBOL_GPL vmlinux 0xe357ed53 phy_pm_runtime_put_sync +EXPORT_SYMBOL_GPL vmlinux 0xe360a91e __sync_filesystem +EXPORT_SYMBOL_GPL vmlinux 0xe36dea81 platform_msi_domain_free_irqs +EXPORT_SYMBOL_GPL vmlinux 0xe374a770 clk_hw_register_fixed_factor +EXPORT_SYMBOL_GPL vmlinux 0xe386eec7 adp5520_set_bits +EXPORT_SYMBOL_GPL vmlinux 0xe3948ff4 acpi_walk_dep_device_list +EXPORT_SYMBOL_GPL vmlinux 0xe39647e6 unregister_hw_breakpoint +EXPORT_SYMBOL_GPL vmlinux 0xe397caf5 seq_buf_printf +EXPORT_SYMBOL_GPL vmlinux 0xe39d0794 usb_phy_roothub_exit +EXPORT_SYMBOL_GPL vmlinux 0xe3a5228a smp_ops +EXPORT_SYMBOL_GPL vmlinux 0xe3b09712 kprobe_event_delete +EXPORT_SYMBOL_GPL vmlinux 0xe3bc7fd4 hpet_unregister_irq_handler +EXPORT_SYMBOL_GPL vmlinux 0xe3c19047 bsg_job_put +EXPORT_SYMBOL_GPL vmlinux 0xe3cbc4d2 thermal_zone_get_temp +EXPORT_SYMBOL_GPL vmlinux 0xe3cd5fae klist_iter_init +EXPORT_SYMBOL_GPL vmlinux 0xe3cda27c bpf_trace_run3 +EXPORT_SYMBOL_GPL vmlinux 0xe3cf68d4 platform_device_register_full +EXPORT_SYMBOL_GPL vmlinux 0xe3d52d3d dev_pm_opp_find_freq_ceil_by_volt +EXPORT_SYMBOL_GPL vmlinux 0xe3e88acb __get_current_cr3_fast +EXPORT_SYMBOL_GPL vmlinux 0xe3f42dd0 max8997_bulk_read +EXPORT_SYMBOL_GPL vmlinux 0xe3f94165 tps65912_device_init +EXPORT_SYMBOL_GPL vmlinux 0xe3fd6699 devlink_alloc +EXPORT_SYMBOL_GPL vmlinux 0xe40bb23e devlink_health_reporter_priv +EXPORT_SYMBOL_GPL vmlinux 0xe414e2b8 i2c_get_device_id +EXPORT_SYMBOL_GPL vmlinux 0xe4248980 cper_estatus_print +EXPORT_SYMBOL_GPL vmlinux 0xe42a72ef pci_get_dsn +EXPORT_SYMBOL_GPL vmlinux 0xe4309905 syscore_resume +EXPORT_SYMBOL_GPL vmlinux 0xe43e20f9 proc_create_net_single +EXPORT_SYMBOL_GPL vmlinux 0xe45ce176 usb_autopm_get_interface_no_resume +EXPORT_SYMBOL_GPL vmlinux 0xe46106c3 ehci_suspend +EXPORT_SYMBOL_GPL vmlinux 0xe46805e3 nvdimm_security_setup_events +EXPORT_SYMBOL_GPL vmlinux 0xe472e7d5 perf_event_update_userpage +EXPORT_SYMBOL_GPL vmlinux 0xe47920cf device_find_child +EXPORT_SYMBOL_GPL vmlinux 0xe48611ac trace_clock_global +EXPORT_SYMBOL_GPL vmlinux 0xe4874aef __tracepoint_add_device_to_group +EXPORT_SYMBOL_GPL vmlinux 0xe495926a alarm_restart +EXPORT_SYMBOL_GPL vmlinux 0xe4971ade tracing_alloc_snapshot +EXPORT_SYMBOL_GPL vmlinux 0xe49b458f acpi_device_fix_up_power +EXPORT_SYMBOL_GPL vmlinux 0xe49e863c xfrm_output +EXPORT_SYMBOL_GPL vmlinux 0xe4a62d88 dbs_update +EXPORT_SYMBOL_GPL vmlinux 0xe4aa1f84 blkdev_zone_mgmt +EXPORT_SYMBOL_GPL vmlinux 0xe4ad5ed7 tty_ldisc_release +EXPORT_SYMBOL_GPL vmlinux 0xe4aee106 blkcg_print_blkgs +EXPORT_SYMBOL_GPL vmlinux 0xe4b064f9 pcie_link_speed +EXPORT_SYMBOL_GPL vmlinux 0xe4b818c3 phy_speed_to_str +EXPORT_SYMBOL_GPL vmlinux 0xe4bfc7d1 crypto_grab_shash +EXPORT_SYMBOL_GPL vmlinux 0xe4c2c66c rtc_ktime_to_tm +EXPORT_SYMBOL_GPL vmlinux 0xe4e48b12 swphy_validate_state +EXPORT_SYMBOL_GPL vmlinux 0xe4f82979 wbt_disable_default +EXPORT_SYMBOL_GPL vmlinux 0xe50931b9 acpi_bus_trim +EXPORT_SYMBOL_GPL vmlinux 0xe52a4ac9 sock_zerocopy_put +EXPORT_SYMBOL_GPL vmlinux 0xe54c6d58 put_iova_domain +EXPORT_SYMBOL_GPL vmlinux 0xe552cbca i2c_adapter_depth +EXPORT_SYMBOL_GPL vmlinux 0xe5553504 rio_release_inb_dbell +EXPORT_SYMBOL_GPL vmlinux 0xe5720c74 fscrypt_ioctl_add_key +EXPORT_SYMBOL_GPL vmlinux 0xe578dae6 dma_wait_for_async_tx +EXPORT_SYMBOL_GPL vmlinux 0xe5853ffe usb_disable_autosuspend +EXPORT_SYMBOL_GPL vmlinux 0xe5883bd9 class_compat_unregister +EXPORT_SYMBOL_GPL vmlinux 0xe58bad42 ping_seq_start +EXPORT_SYMBOL_GPL vmlinux 0xe5925486 fwnode_property_read_u64_array +EXPORT_SYMBOL_GPL vmlinux 0xe5998b70 fib6_new_table +EXPORT_SYMBOL_GPL vmlinux 0xe5a42d7d ncsi_register_dev +EXPORT_SYMBOL_GPL vmlinux 0xe5a63a86 usb_phy_roothub_alloc +EXPORT_SYMBOL_GPL vmlinux 0xe5b5c0f0 crypto_stats_skcipher_encrypt +EXPORT_SYMBOL_GPL vmlinux 0xe5ba9ed2 devm_free_pages +EXPORT_SYMBOL_GPL vmlinux 0xe5bcf6ce kthread_flush_work +EXPORT_SYMBOL_GPL vmlinux 0xe5bdbace usb_phy_get_charger_current +EXPORT_SYMBOL_GPL vmlinux 0xe5c02b64 freq_qos_remove_request +EXPORT_SYMBOL_GPL vmlinux 0xe5cb8d47 regulator_is_enabled +EXPORT_SYMBOL_GPL vmlinux 0xe5db6744 usb_string +EXPORT_SYMBOL_GPL vmlinux 0xe5e38632 dma_resv_get_fences_rcu +EXPORT_SYMBOL_GPL vmlinux 0xe5e68b3e rio_local_get_device_id +EXPORT_SYMBOL_GPL vmlinux 0xe5ed7e7e kill_device +EXPORT_SYMBOL_GPL vmlinux 0xe5fa56d6 iomap_file_unshare +EXPORT_SYMBOL_GPL vmlinux 0xe60632a9 edac_queue_work +EXPORT_SYMBOL_GPL vmlinux 0xe609cc91 ata_pci_device_resume +EXPORT_SYMBOL_GPL vmlinux 0xe60a5e8d pids_cgrp_subsys_enabled_key +EXPORT_SYMBOL_GPL vmlinux 0xe628bb9f phy_fibre_port_array +EXPORT_SYMBOL_GPL vmlinux 0xe6358be5 crypto_find_alg +EXPORT_SYMBOL_GPL vmlinux 0xe64ad8ea unregister_nmi_handler +EXPORT_SYMBOL_GPL vmlinux 0xe667a1e7 vfs_submount +EXPORT_SYMBOL_GPL vmlinux 0xe67a8c1a vmf_insert_pfn_pmd_prot +EXPORT_SYMBOL_GPL vmlinux 0xe681f965 sata_scr_write_flush +EXPORT_SYMBOL_GPL vmlinux 0xe68e1847 thermal_zone_device_register +EXPORT_SYMBOL_GPL vmlinux 0xe693b91c tty_set_termios +EXPORT_SYMBOL_GPL vmlinux 0xe6a257f1 divider_round_rate_parent +EXPORT_SYMBOL_GPL vmlinux 0xe6a318df devm_reset_controller_register +EXPORT_SYMBOL_GPL vmlinux 0xe6b4a2af page_cache_sync_readahead +EXPORT_SYMBOL_GPL vmlinux 0xe6deea85 locks_alloc_lock +EXPORT_SYMBOL_GPL vmlinux 0xe6e40502 rcu_get_gp_seq +EXPORT_SYMBOL_GPL vmlinux 0xe6eb72f4 rio_route_add_entry +EXPORT_SYMBOL_GPL vmlinux 0xe6f52443 klist_add_head +EXPORT_SYMBOL_GPL vmlinux 0xe6f5e6f5 xas_clear_mark +EXPORT_SYMBOL_GPL vmlinux 0xe6f83837 acpi_bus_attach_private_data +EXPORT_SYMBOL_GPL vmlinux 0xe70de602 pci_user_write_config_dword +EXPORT_SYMBOL_GPL vmlinux 0xe7119cb2 tty_port_tty_wakeup +EXPORT_SYMBOL_GPL vmlinux 0xe71bc5c6 ata_bmdma_dumb_qc_prep +EXPORT_SYMBOL_GPL vmlinux 0xe71c169d tty_port_default_client_ops +EXPORT_SYMBOL_GPL vmlinux 0xe71d4666 gpiod_direction_output_raw +EXPORT_SYMBOL_GPL vmlinux 0xe7232e0f user_return_notifier_unregister +EXPORT_SYMBOL_GPL vmlinux 0xe72f4720 regulator_set_load +EXPORT_SYMBOL_GPL vmlinux 0xe73db3d2 ref_module +EXPORT_SYMBOL_GPL vmlinux 0xe740b58a hv_vp_assist_page +EXPORT_SYMBOL_GPL vmlinux 0xe753b68d devlink_fmsg_arr_pair_nest_end +EXPORT_SYMBOL_GPL vmlinux 0xe75ee385 gpiod_set_transitory +EXPORT_SYMBOL_GPL vmlinux 0xe763c418 pm_generic_runtime_suspend +EXPORT_SYMBOL_GPL vmlinux 0xe7663890 blk_poll +EXPORT_SYMBOL_GPL vmlinux 0xe769232e sprint_symbol_no_offset +EXPORT_SYMBOL_GPL vmlinux 0xe77c0f4e wm8997_irq +EXPORT_SYMBOL_GPL vmlinux 0xe783e261 sysfs_emit +EXPORT_SYMBOL_GPL vmlinux 0xe79397d3 __udp4_lib_lookup +EXPORT_SYMBOL_GPL vmlinux 0xe79bf0c4 klp_shadow_get +EXPORT_SYMBOL_GPL vmlinux 0xe79fc45d io_cgrp_subsys +EXPORT_SYMBOL_GPL vmlinux 0xe7ad7c8d pci_epf_unbind +EXPORT_SYMBOL_GPL vmlinux 0xe7c7e3dc xenbus_free_evtchn +EXPORT_SYMBOL_GPL vmlinux 0xe7c907dd balloon_aops +EXPORT_SYMBOL_GPL vmlinux 0xe7d2fa2e perf_event_pause +EXPORT_SYMBOL_GPL vmlinux 0xe7d6d2d4 filter_match_preds +EXPORT_SYMBOL_GPL vmlinux 0xe7ea142e crypto_mod_get +EXPORT_SYMBOL_GPL vmlinux 0xe7eee3d5 __cookie_v4_init_sequence +EXPORT_SYMBOL_GPL vmlinux 0xe7ffe877 pcpu_base_addr +EXPORT_SYMBOL_GPL vmlinux 0xe809cffb ring_buffer_time_stamp +EXPORT_SYMBOL_GPL vmlinux 0xe8127fd1 cpu_subsys +EXPORT_SYMBOL_GPL vmlinux 0xe812acac __reset_control_get +EXPORT_SYMBOL_GPL vmlinux 0xe813d815 sched_show_task +EXPORT_SYMBOL_GPL vmlinux 0xe818b32b ata_bmdma_interrupt +EXPORT_SYMBOL_GPL vmlinux 0xe81ddad6 tracing_generic_entry_update +EXPORT_SYMBOL_GPL vmlinux 0xe83eba32 itlb_multihit_kvm_mitigation +EXPORT_SYMBOL_GPL vmlinux 0xe84aebc8 dm_hold +EXPORT_SYMBOL_GPL vmlinux 0xe84b2572 device_show_bool +EXPORT_SYMBOL_GPL vmlinux 0xe84e5083 iomap_writepage +EXPORT_SYMBOL_GPL vmlinux 0xe84f6e5c pciserial_remove_ports +EXPORT_SYMBOL_GPL vmlinux 0xe8565f03 ping_unhash +EXPORT_SYMBOL_GPL vmlinux 0xe862c4b7 dpm_suspend_start +EXPORT_SYMBOL_GPL vmlinux 0xe870ceab dev_pm_opp_is_turbo +EXPORT_SYMBOL_GPL vmlinux 0xe87579ec wm831x_reg_unlock +EXPORT_SYMBOL_GPL vmlinux 0xe8778c1b device_property_read_u64_array +EXPORT_SYMBOL_GPL vmlinux 0xe87adc1d intel_msic_reg_write +EXPORT_SYMBOL_GPL vmlinux 0xe87ef900 ata_cable_sata +EXPORT_SYMBOL_GPL vmlinux 0xe89a7f51 rio_release_inb_pwrite +EXPORT_SYMBOL_GPL vmlinux 0xe8af03fb wakeup_source_add +EXPORT_SYMBOL_GPL vmlinux 0xe8b40f33 __tracepoint_remove_device_from_group +EXPORT_SYMBOL_GPL vmlinux 0xe8b492ff gpiochip_populate_parent_fwspec_fourcell +EXPORT_SYMBOL_GPL vmlinux 0xe8bbeea2 to_nvdimm_bus_dev +EXPORT_SYMBOL_GPL vmlinux 0xe8c5e51f fsl_mc_device_group +EXPORT_SYMBOL_GPL vmlinux 0xe8d2f58c acpi_match_device +EXPORT_SYMBOL_GPL vmlinux 0xe8ed7376 mnt_drop_write +EXPORT_SYMBOL_GPL vmlinux 0xe8f8518e relay_buf_full +EXPORT_SYMBOL_GPL vmlinux 0xe9087bbd regmap_async_complete +EXPORT_SYMBOL_GPL vmlinux 0xe9347fc6 iommu_domain_window_enable +EXPORT_SYMBOL_GPL vmlinux 0xe9389064 simple_attr_release +EXPORT_SYMBOL_GPL vmlinux 0xe93e49c3 devres_free +EXPORT_SYMBOL_GPL vmlinux 0xe940a574 ata_bmdma_port_start32 +EXPORT_SYMBOL_GPL vmlinux 0xe9664363 acpi_dev_get_resources +EXPORT_SYMBOL_GPL vmlinux 0xe97f25d2 blkg_conf_prep +EXPORT_SYMBOL_GPL vmlinux 0xe9939930 skb_send_sock_locked +EXPORT_SYMBOL_GPL vmlinux 0xe9c50b81 handle_fasteoi_irq +EXPORT_SYMBOL_GPL vmlinux 0xe9c7559c devm_regmap_add_irq_chip_np +EXPORT_SYMBOL_GPL vmlinux 0xe9cd890c mmc_regulator_set_vqmmc +EXPORT_SYMBOL_GPL vmlinux 0xe9ce931a kvm_para_available +EXPORT_SYMBOL_GPL vmlinux 0xe9d1b7cf irq_to_pcap +EXPORT_SYMBOL_GPL vmlinux 0xe9e18eb7 verify_pkcs7_signature +EXPORT_SYMBOL_GPL vmlinux 0xe9e9992c gpiod_get_index +EXPORT_SYMBOL_GPL vmlinux 0xe9ebeae7 ptdump_walk_pgd_level_debugfs +EXPORT_SYMBOL_GPL vmlinux 0xe9f202e6 rio_dev_put +EXPORT_SYMBOL_GPL vmlinux 0xe9f40b47 lp8788_update_bits +EXPORT_SYMBOL_GPL vmlinux 0xe9f65d29 thermal_zone_get_zone_by_name +EXPORT_SYMBOL_GPL vmlinux 0xe9fb11e4 serial8250_rpm_get +EXPORT_SYMBOL_GPL vmlinux 0xea0860e3 pci_generic_config_read +EXPORT_SYMBOL_GPL vmlinux 0xea124bd1 gcd +EXPORT_SYMBOL_GPL vmlinux 0xea2274bf platform_get_irq_optional +EXPORT_SYMBOL_GPL vmlinux 0xea38036f ring_buffer_entries +EXPORT_SYMBOL_GPL vmlinux 0xea4003d5 simple_attr_write +EXPORT_SYMBOL_GPL vmlinux 0xea42c9f5 ip6_route_output_flags +EXPORT_SYMBOL_GPL vmlinux 0xea4440b2 dummy_irq_chip +EXPORT_SYMBOL_GPL vmlinux 0xea5508dc devm_gpiod_get_optional +EXPORT_SYMBOL_GPL vmlinux 0xea63fb42 pci_ats_supported +EXPORT_SYMBOL_GPL vmlinux 0xea6a4afb bpf_prog_alloc +EXPORT_SYMBOL_GPL vmlinux 0xea835a49 pci_remove_root_bus +EXPORT_SYMBOL_GPL vmlinux 0xea835be3 fat_alloc_new_dir +EXPORT_SYMBOL_GPL vmlinux 0xea85dcef tcp_leave_memory_pressure +EXPORT_SYMBOL_GPL vmlinux 0xeaad96f9 sbitmap_queue_clear +EXPORT_SYMBOL_GPL vmlinux 0xeabb0556 cgrp_dfl_root +EXPORT_SYMBOL_GPL vmlinux 0xead54924 mctrl_gpio_to_gpiod +EXPORT_SYMBOL_GPL vmlinux 0xeae0f496 clean_acked_data_flush +EXPORT_SYMBOL_GPL vmlinux 0xeaef887c sock_prot_inuse_get +EXPORT_SYMBOL_GPL vmlinux 0xeaf0a7bf genphy_c45_read_pma +EXPORT_SYMBOL_GPL vmlinux 0xeaf7fe0f sbitmap_resize +EXPORT_SYMBOL_GPL vmlinux 0xeafe07b8 clk_bulk_prepare +EXPORT_SYMBOL_GPL vmlinux 0xeb3c8d73 wm5110_irq +EXPORT_SYMBOL_GPL vmlinux 0xeb3d2960 debugfs_create_size_t +EXPORT_SYMBOL_GPL vmlinux 0xeb49ed77 device_remove_bin_file +EXPORT_SYMBOL_GPL vmlinux 0xeb5c6999 dax_writeback_mapping_range +EXPORT_SYMBOL_GPL vmlinux 0xeb6aaf36 kernel_read_file_from_path_initns +EXPORT_SYMBOL_GPL vmlinux 0xeb71d48f phy_pm_runtime_get_sync +EXPORT_SYMBOL_GPL vmlinux 0xeb833c22 xen_has_pv_disk_devices +EXPORT_SYMBOL_GPL vmlinux 0xeb847bdc sdio_claim_host +EXPORT_SYMBOL_GPL vmlinux 0xeb9dd51d phy_package_leave +EXPORT_SYMBOL_GPL vmlinux 0xebb52419 unregister_kretprobes +EXPORT_SYMBOL_GPL vmlinux 0xebbdb2ea usb_queue_reset_device +EXPORT_SYMBOL_GPL vmlinux 0xebc5a4d9 dm_internal_resume_fast +EXPORT_SYMBOL_GPL vmlinux 0xebc9679b nvdimm_has_flush +EXPORT_SYMBOL_GPL vmlinux 0xebc9a09f lock_system_sleep +EXPORT_SYMBOL_GPL vmlinux 0xebd4cc11 mctrl_gpio_enable_ms +EXPORT_SYMBOL_GPL vmlinux 0xebdd7240 dmaengine_desc_get_metadata_ptr +EXPORT_SYMBOL_GPL vmlinux 0xebde3b17 __synth_event_gen_cmd_start +EXPORT_SYMBOL_GPL vmlinux 0xebe33587 fwnode_device_is_available +EXPORT_SYMBOL_GPL vmlinux 0xebf01050 blk_mq_unfreeze_queue +EXPORT_SYMBOL_GPL vmlinux 0xebf4be4d crypto_unregister_alg +EXPORT_SYMBOL_GPL vmlinux 0xec098b48 iomap_bmap +EXPORT_SYMBOL_GPL vmlinux 0xec1628e6 pv_info +EXPORT_SYMBOL_GPL vmlinux 0xec2cc992 cdrom_read_tocentry +EXPORT_SYMBOL_GPL vmlinux 0xec335675 init_user_ns +EXPORT_SYMBOL_GPL vmlinux 0xec341468 usb_disable_xhci_ports +EXPORT_SYMBOL_GPL vmlinux 0xec360b71 fwnode_find_reference +EXPORT_SYMBOL_GPL vmlinux 0xec471abf pinctrl_dev_get_name +EXPORT_SYMBOL_GPL vmlinux 0xec52b049 blk_mq_virtio_map_queues +EXPORT_SYMBOL_GPL vmlinux 0xec5668f6 dax_zero_page_range +EXPORT_SYMBOL_GPL vmlinux 0xec5ad73b trace_seq_bitmask +EXPORT_SYMBOL_GPL vmlinux 0xec660cd3 __tracepoint_fib6_table_lookup +EXPORT_SYMBOL_GPL vmlinux 0xec67f348 ipv6_proxy_select_ident +EXPORT_SYMBOL_GPL vmlinux 0xec68ba70 clk_bulk_enable +EXPORT_SYMBOL_GPL vmlinux 0xec774acb cpufreq_frequency_table_verify +EXPORT_SYMBOL_GPL vmlinux 0xec788566 acpi_target_system_state +EXPORT_SYMBOL_GPL vmlinux 0xec95ee3c perf_pmu_register +EXPORT_SYMBOL_GPL vmlinux 0xeca494ae crypto_stats_akcipher_verify +EXPORT_SYMBOL_GPL vmlinux 0xecaa62a5 edac_device_add_device +EXPORT_SYMBOL_GPL vmlinux 0xecb1db83 ata_bmdma_port_intr +EXPORT_SYMBOL_GPL vmlinux 0xecba68e3 gnttab_batch_map +EXPORT_SYMBOL_GPL vmlinux 0xecca12c6 devm_request_free_mem_region +EXPORT_SYMBOL_GPL vmlinux 0xeccec2ff ping_seq_next +EXPORT_SYMBOL_GPL vmlinux 0xecd1b44a usb_phy_set_charger_state +EXPORT_SYMBOL_GPL vmlinux 0xecd8f23d xenbus_read +EXPORT_SYMBOL_GPL vmlinux 0xed0122c9 usb_free_streams +EXPORT_SYMBOL_GPL vmlinux 0xed037780 crypto_spawn_tfm2 +EXPORT_SYMBOL_GPL vmlinux 0xed05e0f6 regulator_get +EXPORT_SYMBOL_GPL vmlinux 0xed0c1389 devlink_port_type_eth_set +EXPORT_SYMBOL_GPL vmlinux 0xed0f16a0 dev_attr_em_message_type +EXPORT_SYMBOL_GPL vmlinux 0xed14b37e blk_ksm_register +EXPORT_SYMBOL_GPL vmlinux 0xed1bcb5d alarm_init +EXPORT_SYMBOL_GPL vmlinux 0xed28003c dummy_con +EXPORT_SYMBOL_GPL vmlinux 0xed2854a9 dev_pm_opp_get_sharing_cpus +EXPORT_SYMBOL_GPL vmlinux 0xed2a54b1 acpi_cppc_processor_probe +EXPORT_SYMBOL_GPL vmlinux 0xed45180a blk_add_driver_data +EXPORT_SYMBOL_GPL vmlinux 0xed483838 dev_pm_opp_put_clkname +EXPORT_SYMBOL_GPL vmlinux 0xed538731 synth_event_trace_start +EXPORT_SYMBOL_GPL vmlinux 0xed64bc07 devlink_resource_occ_get_register +EXPORT_SYMBOL_GPL vmlinux 0xed6582f1 intel_msic_bulk_write +EXPORT_SYMBOL_GPL vmlinux 0xed76b403 cpufreq_disable_fast_switch +EXPORT_SYMBOL_GPL vmlinux 0xed7c7b91 raw_v6_hashinfo +EXPORT_SYMBOL_GPL vmlinux 0xed9aaee4 __intel_scu_ipc_register +EXPORT_SYMBOL_GPL vmlinux 0xedb33cf8 syscon_node_to_regmap +EXPORT_SYMBOL_GPL vmlinux 0xedb3c891 vfs_write +EXPORT_SYMBOL_GPL vmlinux 0xedd092d5 power_supply_notifier +EXPORT_SYMBOL_GPL vmlinux 0xeddc850e task_cgroup_path +EXPORT_SYMBOL_GPL vmlinux 0xede98ec5 intel_pt_validate_hw_cap +EXPORT_SYMBOL_GPL vmlinux 0xede9a09a btree_lookup +EXPORT_SYMBOL_GPL vmlinux 0xedf7efc9 devlink_dpipe_table_counter_enabled +EXPORT_SYMBOL_GPL vmlinux 0xedfa4020 regmap_mmio_detach_clk +EXPORT_SYMBOL_GPL vmlinux 0xee0c2e01 gpiod_set_raw_value_cansleep +EXPORT_SYMBOL_GPL vmlinux 0xee13e697 set_personality_ia32 +EXPORT_SYMBOL_GPL vmlinux 0xee15b1e1 ata_sff_exec_command +EXPORT_SYMBOL_GPL vmlinux 0xee38ef57 register_switchdev_blocking_notifier +EXPORT_SYMBOL_GPL vmlinux 0xee56bb99 fsverity_verify_bio +EXPORT_SYMBOL_GPL vmlinux 0xee59749b virtqueue_enable_cb_delayed +EXPORT_SYMBOL_GPL vmlinux 0xee674c1a usb_get_maximum_speed +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 0xee828168 mmc_app_cmd +EXPORT_SYMBOL_GPL vmlinux 0xee8a75cf iommu_device_unlink +EXPORT_SYMBOL_GPL vmlinux 0xee8fdf01 espintcp_push_skb +EXPORT_SYMBOL_GPL vmlinux 0xee94072f extcon_unregister_notifier +EXPORT_SYMBOL_GPL vmlinux 0xee9f526b pci_hp_deregister +EXPORT_SYMBOL_GPL vmlinux 0xee9fcda6 apei_mce_report_mem_error +EXPORT_SYMBOL_GPL vmlinux 0xeeb53ea9 serdev_device_wait_until_sent +EXPORT_SYMBOL_GPL vmlinux 0xeecf37f3 ping_recvmsg +EXPORT_SYMBOL_GPL vmlinux 0xeed0e944 of_pm_clk_add_clks +EXPORT_SYMBOL_GPL vmlinux 0xeedd987e phy_10gbit_features_array +EXPORT_SYMBOL_GPL vmlinux 0xeedfcec3 task_work_run +EXPORT_SYMBOL_GPL vmlinux 0xeee667d3 fpregs_assert_state_consistent +EXPORT_SYMBOL_GPL vmlinux 0xeee92744 power_supply_powers +EXPORT_SYMBOL_GPL vmlinux 0xeefcb76c perf_event_create_kernel_counter +EXPORT_SYMBOL_GPL vmlinux 0xef015ad5 pm_schedule_suspend +EXPORT_SYMBOL_GPL vmlinux 0xef10ee11 __inet_inherit_port +EXPORT_SYMBOL_GPL vmlinux 0xef11fa21 fsnotify +EXPORT_SYMBOL_GPL vmlinux 0xef17d3b2 serial8250_do_shutdown +EXPORT_SYMBOL_GPL vmlinux 0xef1f6e23 apei_resources_request +EXPORT_SYMBOL_GPL vmlinux 0xef24e17c pm_runtime_no_callbacks +EXPORT_SYMBOL_GPL vmlinux 0xef29fcdd clk_bulk_put +EXPORT_SYMBOL_GPL vmlinux 0xef33d6e9 acpi_initialize_hp_context +EXPORT_SYMBOL_GPL vmlinux 0xef3d392f sdio_set_block_size +EXPORT_SYMBOL_GPL vmlinux 0xef3fc69b tcp_ca_openreq_child +EXPORT_SYMBOL_GPL vmlinux 0xef3ff3ce __platform_create_bundle +EXPORT_SYMBOL_GPL vmlinux 0xef464c28 getboottime64 +EXPORT_SYMBOL_GPL vmlinux 0xef4cc823 balloon_page_list_enqueue +EXPORT_SYMBOL_GPL vmlinux 0xef6c3f70 round_jiffies_up_relative +EXPORT_SYMBOL_GPL vmlinux 0xef70eb7e ring_buffer_iter_advance +EXPORT_SYMBOL_GPL vmlinux 0xef729702 xdp_rxq_info_unreg +EXPORT_SYMBOL_GPL vmlinux 0xef764584 security_inode_permission +EXPORT_SYMBOL_GPL vmlinux 0xef882ee8 virtqueue_disable_cb +EXPORT_SYMBOL_GPL vmlinux 0xef8b5d16 vfio_device_get_from_dev +EXPORT_SYMBOL_GPL vmlinux 0xef8fc95f kvm_async_pf_task_wait_schedule +EXPORT_SYMBOL_GPL vmlinux 0xef92e505 led_set_brightness_sync +EXPORT_SYMBOL_GPL vmlinux 0xef92ef33 btree_last +EXPORT_SYMBOL_GPL vmlinux 0xef9699e7 mddev_init +EXPORT_SYMBOL_GPL vmlinux 0xefa2c27d register_tracepoint_module_notifier +EXPORT_SYMBOL_GPL vmlinux 0xefa95f64 cpufreq_register_governor +EXPORT_SYMBOL_GPL vmlinux 0xefb8d884 __get_task_comm +EXPORT_SYMBOL_GPL vmlinux 0xefbe9c4d usb_block_urb +EXPORT_SYMBOL_GPL vmlinux 0xefe812f2 platform_device_add_properties +EXPORT_SYMBOL_GPL vmlinux 0xefeafcf1 edac_has_mcs +EXPORT_SYMBOL_GPL vmlinux 0xeff848e3 linear_hugepage_index +EXPORT_SYMBOL_GPL vmlinux 0xf005c8d1 crypto_aead_setauthsize +EXPORT_SYMBOL_GPL vmlinux 0xf014d0f2 spi_mem_dirmap_destroy +EXPORT_SYMBOL_GPL vmlinux 0xf0397046 tty_kopen +EXPORT_SYMBOL_GPL vmlinux 0xf04429b4 acpi_bus_get_status_handle +EXPORT_SYMBOL_GPL vmlinux 0xf04873d3 regulator_set_pull_down_regmap +EXPORT_SYMBOL_GPL vmlinux 0xf0504ce5 tracepoint_srcu +EXPORT_SYMBOL_GPL vmlinux 0xf0550e09 tcp_unregister_congestion_control +EXPORT_SYMBOL_GPL vmlinux 0xf0560546 led_sysfs_enable +EXPORT_SYMBOL_GPL vmlinux 0xf0594efc dw_pcie_setup_rc +EXPORT_SYMBOL_GPL vmlinux 0xf0696401 acpi_pci_detect_ejectable +EXPORT_SYMBOL_GPL vmlinux 0xf07ac2df debugfs_create_x8 +EXPORT_SYMBOL_GPL vmlinux 0xf08050c4 rhashtable_walk_start_check +EXPORT_SYMBOL_GPL vmlinux 0xf0910075 sfp_bus_del_upstream +EXPORT_SYMBOL_GPL vmlinux 0xf0b48162 devm_memunmap_pages +EXPORT_SYMBOL_GPL vmlinux 0xf0be83c8 iommu_present +EXPORT_SYMBOL_GPL vmlinux 0xf0c022ef kthread_mod_delayed_work +EXPORT_SYMBOL_GPL vmlinux 0xf0c2d05a devm_gpiod_put +EXPORT_SYMBOL_GPL vmlinux 0xf0ce7fd6 blk_mq_sched_free_hctx_data +EXPORT_SYMBOL_GPL vmlinux 0xf0d3555b blk_stat_enable_accounting +EXPORT_SYMBOL_GPL vmlinux 0xf0d478c7 list_lru_add +EXPORT_SYMBOL_GPL vmlinux 0xf0e7af99 pci_msi_set_desc +EXPORT_SYMBOL_GPL vmlinux 0xf0ee2cb5 tty_encode_baud_rate +EXPORT_SYMBOL_GPL vmlinux 0xf0f8c432 ata_sff_pause +EXPORT_SYMBOL_GPL vmlinux 0xf0fd2ff7 rdev_set_badblocks +EXPORT_SYMBOL_GPL vmlinux 0xf0feb7ac icc_node_del +EXPORT_SYMBOL_GPL vmlinux 0xf0fef61b __efivar_entry_get +EXPORT_SYMBOL_GPL vmlinux 0xf107a138 nvdimm_setup_pfn +EXPORT_SYMBOL_GPL vmlinux 0xf10d5b40 regulator_set_voltage +EXPORT_SYMBOL_GPL vmlinux 0xf114a923 rtc_class_open +EXPORT_SYMBOL_GPL vmlinux 0xf120a7e1 sdio_release_irq +EXPORT_SYMBOL_GPL vmlinux 0xf1249616 ata_sff_tf_load +EXPORT_SYMBOL_GPL vmlinux 0xf12dbaba relay_close +EXPORT_SYMBOL_GPL vmlinux 0xf12e6903 rio_request_mport_dma +EXPORT_SYMBOL_GPL vmlinux 0xf1316075 virtio_device_freeze +EXPORT_SYMBOL_GPL vmlinux 0xf1361941 pci_vpd_find_tag +EXPORT_SYMBOL_GPL vmlinux 0xf13ff983 ata_ehi_push_desc +EXPORT_SYMBOL_GPL vmlinux 0xf1447847 attribute_container_find_class_device +EXPORT_SYMBOL_GPL vmlinux 0xf14b5cf7 class_dev_iter_next +EXPORT_SYMBOL_GPL vmlinux 0xf15d07c6 __mmc_send_status +EXPORT_SYMBOL_GPL vmlinux 0xf16ea7d8 ata_dummy_port_ops +EXPORT_SYMBOL_GPL vmlinux 0xf17f3a48 regmap_mmio_attach_clk +EXPORT_SYMBOL_GPL vmlinux 0xf184d189 kernel_power_off +EXPORT_SYMBOL_GPL vmlinux 0xf1875584 attribute_container_classdev_to_container +EXPORT_SYMBOL_GPL vmlinux 0xf19f9b39 set_pages_array_wt +EXPORT_SYMBOL_GPL vmlinux 0xf1b31314 delayacct_on +EXPORT_SYMBOL_GPL vmlinux 0xf1b89fd0 device_get_next_child_node +EXPORT_SYMBOL_GPL vmlinux 0xf1c126bf tpm_chip_stop +EXPORT_SYMBOL_GPL vmlinux 0xf1c90139 tpm_is_tpm2 +EXPORT_SYMBOL_GPL vmlinux 0xf1cd8929 kvm_read_and_reset_apf_flags +EXPORT_SYMBOL_GPL vmlinux 0xf1dee9d7 md_find_rdev_rcu +EXPORT_SYMBOL_GPL vmlinux 0xf1feb7b8 devm_kmalloc +EXPORT_SYMBOL_GPL vmlinux 0xf204ad5e pwm_put +EXPORT_SYMBOL_GPL vmlinux 0xf2073a42 devm_hwspin_lock_unregister +EXPORT_SYMBOL_GPL vmlinux 0xf20848a7 sched_trace_cfs_rq_cpu +EXPORT_SYMBOL_GPL vmlinux 0xf217d498 input_ff_destroy +EXPORT_SYMBOL_GPL vmlinux 0xf21e1f9b disable_percpu_irq +EXPORT_SYMBOL_GPL vmlinux 0xf224ac09 nl_table +EXPORT_SYMBOL_GPL vmlinux 0xf25049af of_pwm_xlate_with_flags +EXPORT_SYMBOL_GPL vmlinux 0xf27d0a7b gnttab_grant_foreign_access_ref +EXPORT_SYMBOL_GPL vmlinux 0xf27f2aab pci_add_dynid +EXPORT_SYMBOL_GPL vmlinux 0xf28d88e8 pm_clk_remove +EXPORT_SYMBOL_GPL vmlinux 0xf28df6f0 crypto_unregister_shash +EXPORT_SYMBOL_GPL vmlinux 0xf2967796 ring_buffer_record_on +EXPORT_SYMBOL_GPL vmlinux 0xf2985e92 unregister_virtio_device +EXPORT_SYMBOL_GPL vmlinux 0xf29fb58c espintcp_queue_out +EXPORT_SYMBOL_GPL vmlinux 0xf2b33cb7 memory_cgrp_subsys_on_dfl_key +EXPORT_SYMBOL_GPL vmlinux 0xf2c2b496 dev_pm_qos_expose_latency_limit +EXPORT_SYMBOL_GPL vmlinux 0xf2deaa27 ping_bind +EXPORT_SYMBOL_GPL vmlinux 0xf30a5502 cpufreq_enable_boost_support +EXPORT_SYMBOL_GPL vmlinux 0xf311e156 key_being_used_for +EXPORT_SYMBOL_GPL vmlinux 0xf314e878 crypto_register_algs +EXPORT_SYMBOL_GPL vmlinux 0xf31632e0 ezx_pcap_read +EXPORT_SYMBOL_GPL vmlinux 0xf31b3fd1 workqueue_set_max_active +EXPORT_SYMBOL_GPL vmlinux 0xf32bdc5d unregister_xenstore_notifier +EXPORT_SYMBOL_GPL vmlinux 0xf331236f btree_geo32 +EXPORT_SYMBOL_GPL vmlinux 0xf333e3e6 ksm_madvise +EXPORT_SYMBOL_GPL vmlinux 0xf352023f memory_cgrp_subsys_enabled_key +EXPORT_SYMBOL_GPL vmlinux 0xf36aeaa6 ohci_restart +EXPORT_SYMBOL_GPL vmlinux 0xf370c47c skcipher_walk_complete +EXPORT_SYMBOL_GPL vmlinux 0xf37dca32 bio_associate_blkg_from_css +EXPORT_SYMBOL_GPL vmlinux 0xf3808cb1 get_state_synchronize_rcu +EXPORT_SYMBOL_GPL vmlinux 0xf380eb29 device_get_match_data +EXPORT_SYMBOL_GPL vmlinux 0xf3891516 gpiod_count +EXPORT_SYMBOL_GPL vmlinux 0xf3a5d50c handle_simple_irq +EXPORT_SYMBOL_GPL vmlinux 0xf3b451ca kdb_poll_funcs +EXPORT_SYMBOL_GPL vmlinux 0xf3b95d79 btree_remove +EXPORT_SYMBOL_GPL vmlinux 0xf3daf3fc ata_sas_scsi_ioctl +EXPORT_SYMBOL_GPL vmlinux 0xf3df471f md_stop_writes +EXPORT_SYMBOL_GPL vmlinux 0xf3ebe539 acpi_dev_resume +EXPORT_SYMBOL_GPL vmlinux 0xf3ec6cbb ata_scsi_ioctl +EXPORT_SYMBOL_GPL vmlinux 0xf3f48d50 virtqueue_is_broken +EXPORT_SYMBOL_GPL vmlinux 0xf4039bb9 strp_data_ready +EXPORT_SYMBOL_GPL vmlinux 0xf415941d sysfs_remove_link +EXPORT_SYMBOL_GPL vmlinux 0xf41dd15e power_supply_set_input_current_limit_from_supplier +EXPORT_SYMBOL_GPL vmlinux 0xf43ed27a ata_ncq_sdev_attrs +EXPORT_SYMBOL_GPL vmlinux 0xf443e131 devfreq_event_remove_edev +EXPORT_SYMBOL_GPL vmlinux 0xf456250d public_key_subtype +EXPORT_SYMBOL_GPL vmlinux 0xf4590903 led_set_brightness_nopm +EXPORT_SYMBOL_GPL vmlinux 0xf4689d50 linkmode_set_pause +EXPORT_SYMBOL_GPL vmlinux 0xf46fa463 usb_hcd_check_unlink_urb +EXPORT_SYMBOL_GPL vmlinux 0xf4846279 __xenbus_register_frontend +EXPORT_SYMBOL_GPL vmlinux 0xf485d7a6 ring_buffer_swap_cpu +EXPORT_SYMBOL_GPL vmlinux 0xf486c921 vfio_unregister_iommu_driver +EXPORT_SYMBOL_GPL vmlinux 0xf4af35c2 rcu_gp_is_normal +EXPORT_SYMBOL_GPL vmlinux 0xf4d24a4a to_nvdimm_bus +EXPORT_SYMBOL_GPL vmlinux 0xf4d89a38 kernfs_find_and_get_ns +EXPORT_SYMBOL_GPL vmlinux 0xf4da71b3 public_key_verify_signature +EXPORT_SYMBOL_GPL vmlinux 0xf4e47c68 devlink_dpipe_entry_ctx_append +EXPORT_SYMBOL_GPL vmlinux 0xf4f69d1f clk_hw_unregister_gate +EXPORT_SYMBOL_GPL vmlinux 0xf4f74fcf ip6_push_pending_frames +EXPORT_SYMBOL_GPL vmlinux 0xf4fc0d2f __kthread_init_worker +EXPORT_SYMBOL_GPL vmlinux 0xf4fea0e6 md_start +EXPORT_SYMBOL_GPL vmlinux 0xf50e911e copy_reserved_iova +EXPORT_SYMBOL_GPL vmlinux 0xf53b04ce dev_change_net_namespace +EXPORT_SYMBOL_GPL vmlinux 0xf549896d inet_csk_clone_lock +EXPORT_SYMBOL_GPL vmlinux 0xf54bd49b lcm +EXPORT_SYMBOL_GPL vmlinux 0xf54dde99 clear_foreign_p2m_mapping +EXPORT_SYMBOL_GPL vmlinux 0xf553318d cpuidle_pause_and_lock +EXPORT_SYMBOL_GPL vmlinux 0xf55461fd debugfs_real_fops +EXPORT_SYMBOL_GPL vmlinux 0xf55c60e4 devfreq_event_reset_event +EXPORT_SYMBOL_GPL vmlinux 0xf56e93d3 devm_regulator_bulk_register_supply_alias +EXPORT_SYMBOL_GPL vmlinux 0xf56e9f41 device_match_name +EXPORT_SYMBOL_GPL vmlinux 0xf5752b7d tty_perform_flush +EXPORT_SYMBOL_GPL vmlinux 0xf58004ec tps6586x_reads +EXPORT_SYMBOL_GPL vmlinux 0xf58b513c uhci_check_and_reset_hc +EXPORT_SYMBOL_GPL vmlinux 0xf58f8c2d serdev_device_write_room +EXPORT_SYMBOL_GPL vmlinux 0xf5a3ba99 linear_range_values_in_range +EXPORT_SYMBOL_GPL vmlinux 0xf5a691cd invalidate_bh_lrus +EXPORT_SYMBOL_GPL vmlinux 0xf5aa6cc4 devm_regmap_field_alloc +EXPORT_SYMBOL_GPL vmlinux 0xf5ad90b9 devm_pwm_put +EXPORT_SYMBOL_GPL vmlinux 0xf5b594f0 __rio_local_write_config_8 +EXPORT_SYMBOL_GPL vmlinux 0xf5cf88ce regulator_register +EXPORT_SYMBOL_GPL vmlinux 0xf5d7eb5a register_ftrace_export +EXPORT_SYMBOL_GPL vmlinux 0xf5f370e0 async_schedule_node +EXPORT_SYMBOL_GPL vmlinux 0xf60cb2c1 reset_controller_register +EXPORT_SYMBOL_GPL vmlinux 0xf6230e49 fpregs_mark_activate +EXPORT_SYMBOL_GPL vmlinux 0xf64ab968 ata_std_bios_param +EXPORT_SYMBOL_GPL vmlinux 0xf65461f8 lwtunnel_valid_encap_type_attr +EXPORT_SYMBOL_GPL vmlinux 0xf658b601 __module_address +EXPORT_SYMBOL_GPL vmlinux 0xf65cc771 fwnode_handle_get +EXPORT_SYMBOL_GPL vmlinux 0xf663ee2f pcap_adc_sync +EXPORT_SYMBOL_GPL vmlinux 0xf66d31c2 powercap_unregister_control_type +EXPORT_SYMBOL_GPL vmlinux 0xf675b46b devm_regulator_register_notifier +EXPORT_SYMBOL_GPL vmlinux 0xf6933907 gpiochip_remove_pin_ranges +EXPORT_SYMBOL_GPL vmlinux 0xf69cf133 class_dev_iter_exit +EXPORT_SYMBOL_GPL vmlinux 0xf6a28554 region_intersects +EXPORT_SYMBOL_GPL vmlinux 0xf6a904c3 gpiochip_add_data_with_key +EXPORT_SYMBOL_GPL vmlinux 0xf6c71a25 cper_severity_str +EXPORT_SYMBOL_GPL vmlinux 0xf6c8dc62 cpu_hotplug_enable +EXPORT_SYMBOL_GPL vmlinux 0xf6c9228c sbitmap_queue_wake_all +EXPORT_SYMBOL_GPL vmlinux 0xf6e772c3 irq_bypass_unregister_producer +EXPORT_SYMBOL_GPL vmlinux 0xf6e874f5 ata_timing_merge +EXPORT_SYMBOL_GPL vmlinux 0xf6e8cc3f ata_host_resume +EXPORT_SYMBOL_GPL vmlinux 0xf6f16c56 rcu_barrier_tasks +EXPORT_SYMBOL_GPL vmlinux 0xf6fb614a ata_pio_need_iordy +EXPORT_SYMBOL_GPL vmlinux 0xf711fd76 rtnl_get_net_ns_capable +EXPORT_SYMBOL_GPL vmlinux 0xf727d68d security_path_symlink +EXPORT_SYMBOL_GPL vmlinux 0xf7455c16 input_event_to_user +EXPORT_SYMBOL_GPL vmlinux 0xf7498440 ip6_sk_redirect +EXPORT_SYMBOL_GPL vmlinux 0xf749debc md5_zero_message_hash +EXPORT_SYMBOL_GPL vmlinux 0xf74bb274 mod_delayed_work_on +EXPORT_SYMBOL_GPL vmlinux 0xf74bff70 regmap_raw_write +EXPORT_SYMBOL_GPL vmlinux 0xf74e7c93 jump_label_rate_limit +EXPORT_SYMBOL_GPL vmlinux 0xf767ca35 fixed_percpu_data +EXPORT_SYMBOL_GPL vmlinux 0xf768cc22 devm_hwrng_register +EXPORT_SYMBOL_GPL vmlinux 0xf7866b4f bind_evtchn_to_irqhandler_lateeoi +EXPORT_SYMBOL_GPL vmlinux 0xf7918d55 md_stop +EXPORT_SYMBOL_GPL vmlinux 0xf7968c47 get_task_mm +EXPORT_SYMBOL_GPL vmlinux 0xf7a2687e user_free_preparse +EXPORT_SYMBOL_GPL vmlinux 0xf7bc95b0 devlink_fmsg_pair_nest_start +EXPORT_SYMBOL_GPL vmlinux 0xf7c3f273 xen_resume_notifier_register +EXPORT_SYMBOL_GPL vmlinux 0xf7d49bf0 pci_epc_mem_exit +EXPORT_SYMBOL_GPL vmlinux 0xf7d961d8 clk_hw_unregister_composite +EXPORT_SYMBOL_GPL vmlinux 0xf81a770e tpm_pcr_extend +EXPORT_SYMBOL_GPL vmlinux 0xf82f3657 work_on_cpu +EXPORT_SYMBOL_GPL vmlinux 0xf831a160 fscrypt_set_test_dummy_encryption +EXPORT_SYMBOL_GPL vmlinux 0xf834c26d housekeeping_test_cpu +EXPORT_SYMBOL_GPL vmlinux 0xf8485685 platform_get_irq +EXPORT_SYMBOL_GPL vmlinux 0xf84e28a2 srcu_barrier +EXPORT_SYMBOL_GPL vmlinux 0xf84ed30c phy_gbit_all_ports_features +EXPORT_SYMBOL_GPL vmlinux 0xf8640486 genphy_c45_read_status +EXPORT_SYMBOL_GPL vmlinux 0xf86d06a6 sched_setattr +EXPORT_SYMBOL_GPL vmlinux 0xf872dffa bind_interdomain_evtchn_to_irq_lateeoi +EXPORT_SYMBOL_GPL vmlinux 0xf878ecde devm_extcon_dev_allocate +EXPORT_SYMBOL_GPL vmlinux 0xf880cf6b sk_psock_destroy +EXPORT_SYMBOL_GPL vmlinux 0xf881cecd load_fixmap_gdt +EXPORT_SYMBOL_GPL vmlinux 0xf898c7e9 devlink_dpipe_table_unregister +EXPORT_SYMBOL_GPL vmlinux 0xf89f4ef5 xhci_dbg_trace +EXPORT_SYMBOL_GPL vmlinux 0xf8a437d3 device_link_add +EXPORT_SYMBOL_GPL vmlinux 0xf8ad028a dev_pm_opp_get_level +EXPORT_SYMBOL_GPL vmlinux 0xf8b46fda pci_platform_power_transition +EXPORT_SYMBOL_GPL vmlinux 0xf8bc7508 debugfs_lookup +EXPORT_SYMBOL_GPL vmlinux 0xf8bfaa69 sata_pmp_qc_defer_cmd_switch +EXPORT_SYMBOL_GPL vmlinux 0xf8c3eadb ata_timing_compute +EXPORT_SYMBOL_GPL vmlinux 0xf8c5ab7e rdev_get_drvdata +EXPORT_SYMBOL_GPL vmlinux 0xf8c82748 debugfs_create_u32_array +EXPORT_SYMBOL_GPL vmlinux 0xf8d551d9 crypto_aes_set_key +EXPORT_SYMBOL_GPL vmlinux 0xf8e6788e ata_bmdma_start +EXPORT_SYMBOL_GPL vmlinux 0xf8f3a0fb ata_ratelimit +EXPORT_SYMBOL_GPL vmlinux 0xf8fd5e46 __rio_local_write_config_16 +EXPORT_SYMBOL_GPL vmlinux 0xf8fe3986 pat_pfn_immune_to_uc_mtrr +EXPORT_SYMBOL_GPL vmlinux 0xf90dd61a fwnode_get_named_child_node +EXPORT_SYMBOL_GPL vmlinux 0xf91ab2ed __tracepoint_arm_event +EXPORT_SYMBOL_GPL vmlinux 0xf9259557 lwtunnel_state_alloc +EXPORT_SYMBOL_GPL vmlinux 0xf9286ce3 i2c_acpi_find_adapter_by_handle +EXPORT_SYMBOL_GPL vmlinux 0xf932015f __raw_notifier_call_chain +EXPORT_SYMBOL_GPL vmlinux 0xf945e356 gpiochip_irqchip_add_domain +EXPORT_SYMBOL_GPL vmlinux 0xf948a307 netdev_walk_all_lower_dev +EXPORT_SYMBOL_GPL vmlinux 0xf9501fcf usb_hub_claim_port +EXPORT_SYMBOL_GPL vmlinux 0xf9510371 spi_alloc_device +EXPORT_SYMBOL_GPL vmlinux 0xf95322f4 kthread_parkme +EXPORT_SYMBOL_GPL vmlinux 0xf955e9c5 bprintf +EXPORT_SYMBOL_GPL vmlinux 0xf96dfab0 devlink_params_register +EXPORT_SYMBOL_GPL vmlinux 0xf97f25a4 i2c_new_client_device +EXPORT_SYMBOL_GPL vmlinux 0xf9826284 sk_msg_free +EXPORT_SYMBOL_GPL vmlinux 0xf98c8463 sched_setscheduler_nocheck +EXPORT_SYMBOL_GPL vmlinux 0xf991bf7c iommu_iova_to_phys +EXPORT_SYMBOL_GPL vmlinux 0xf9a054b5 __round_jiffies +EXPORT_SYMBOL_GPL vmlinux 0xf9bb3b4f iomap_swapfile_activate +EXPORT_SYMBOL_GPL vmlinux 0xf9c4072f cn_add_callback +EXPORT_SYMBOL_GPL vmlinux 0xf9d81dea nfnl_ct_hook +EXPORT_SYMBOL_GPL vmlinux 0xf9d861c2 blkdev_write_iter +EXPORT_SYMBOL_GPL vmlinux 0xf9db7b30 ata_port_abort +EXPORT_SYMBOL_GPL vmlinux 0xf9dfcca9 ata_sff_prereset +EXPORT_SYMBOL_GPL vmlinux 0xf9e550cd perf_aux_output_flag +EXPORT_SYMBOL_GPL vmlinux 0xf9f77792 devres_remove_group +EXPORT_SYMBOL_GPL vmlinux 0xfa03a629 pci_probe_reset_bus +EXPORT_SYMBOL_GPL vmlinux 0xfa0a8896 acpi_dev_resource_io +EXPORT_SYMBOL_GPL vmlinux 0xfa1899eb register_virtio_device +EXPORT_SYMBOL_GPL vmlinux 0xfa1eb910 unregister_syscore_ops +EXPORT_SYMBOL_GPL vmlinux 0xfa349688 aer_recover_queue +EXPORT_SYMBOL_GPL vmlinux 0xfa35044a alternatives_patched +EXPORT_SYMBOL_GPL vmlinux 0xfa3a17ea phy_pm_runtime_get +EXPORT_SYMBOL_GPL vmlinux 0xfa4170ea dm_internal_suspend_noflush +EXPORT_SYMBOL_GPL vmlinux 0xfa43854a phy_modify_changed +EXPORT_SYMBOL_GPL vmlinux 0xfa46d7d4 thermal_zone_device_unregister +EXPORT_SYMBOL_GPL vmlinux 0xfa5e84dc events_sysfs_show +EXPORT_SYMBOL_GPL vmlinux 0xfa65be0a memunmap_pages +EXPORT_SYMBOL_GPL vmlinux 0xfa666974 queue_work_node +EXPORT_SYMBOL_GPL vmlinux 0xfa690589 netdev_cmd_to_name +EXPORT_SYMBOL_GPL vmlinux 0xfab30dc0 mdio_bus_exit +EXPORT_SYMBOL_GPL vmlinux 0xfab53ed9 pinctrl_gpio_can_use_line +EXPORT_SYMBOL_GPL vmlinux 0xfab862b4 devm_gpio_request_one +EXPORT_SYMBOL_GPL vmlinux 0xfac237b7 blk_trace_setup +EXPORT_SYMBOL_GPL vmlinux 0xfad57818 pci_pr3_present +EXPORT_SYMBOL_GPL vmlinux 0xfad9c827 kill_dax +EXPORT_SYMBOL_GPL vmlinux 0xfadeba4d class_interface_register +EXPORT_SYMBOL_GPL vmlinux 0xfae2a4d0 skb_zerocopy +EXPORT_SYMBOL_GPL vmlinux 0xfb0283b7 gpiod_set_array_value_cansleep +EXPORT_SYMBOL_GPL vmlinux 0xfb0b6585 i2c_new_ancillary_device +EXPORT_SYMBOL_GPL vmlinux 0xfb1947d7 debugfs_create_u16 +EXPORT_SYMBOL_GPL vmlinux 0xfb32b30f ring_buffer_read_prepare_sync +EXPORT_SYMBOL_GPL vmlinux 0xfb3dfe8a page_reporting_unregister +EXPORT_SYMBOL_GPL vmlinux 0xfb44984f gpiod_set_value_cansleep +EXPORT_SYMBOL_GPL vmlinux 0xfb6b6610 dm_suspended +EXPORT_SYMBOL_GPL vmlinux 0xfb6eedf9 power_group_name +EXPORT_SYMBOL_GPL vmlinux 0xfb7cd1b8 gpiod_get_raw_value +EXPORT_SYMBOL_GPL vmlinux 0xfb7eea3a sock_diag_unregister +EXPORT_SYMBOL_GPL vmlinux 0xfbbd41ca no_action +EXPORT_SYMBOL_GPL vmlinux 0xfbc3fc88 gpiochip_unlock_as_irq +EXPORT_SYMBOL_GPL vmlinux 0xfbc478d7 gpiochip_add_pin_range +EXPORT_SYMBOL_GPL vmlinux 0xfbc672b8 regmap_get_raw_read_max +EXPORT_SYMBOL_GPL vmlinux 0xfbd1c8bd unwind_get_return_address +EXPORT_SYMBOL_GPL vmlinux 0xfbdfc558 hrtimer_start_range_ns +EXPORT_SYMBOL_GPL vmlinux 0xfbee5645 alloc_empty_file +EXPORT_SYMBOL_GPL vmlinux 0xfbf8de04 gpiochip_relres_irq +EXPORT_SYMBOL_GPL vmlinux 0xfbffd601 net_prio_cgrp_subsys_on_dfl_key +EXPORT_SYMBOL_GPL vmlinux 0xfc03d97a page_is_ram +EXPORT_SYMBOL_GPL vmlinux 0xfc0797e4 free_iova_fast +EXPORT_SYMBOL_GPL vmlinux 0xfc0d6c56 device_set_wakeup_enable +EXPORT_SYMBOL_GPL vmlinux 0xfc14bb2e dm_get_dev_t +EXPORT_SYMBOL_GPL vmlinux 0xfc19bc45 crypto_dh_encode_key +EXPORT_SYMBOL_GPL vmlinux 0xfc201b66 sprint_oid +EXPORT_SYMBOL_GPL vmlinux 0xfc254d15 gnttab_free_auto_xlat_frames +EXPORT_SYMBOL_GPL vmlinux 0xfc2742ac acpi_create_platform_device +EXPORT_SYMBOL_GPL vmlinux 0xfc3069e6 tcp_unregister_ulp +EXPORT_SYMBOL_GPL vmlinux 0xfc3b4246 acpi_bus_update_power +EXPORT_SYMBOL_GPL vmlinux 0xfc421a98 ehci_init_driver +EXPORT_SYMBOL_GPL vmlinux 0xfc4e27f3 crypto_register_template +EXPORT_SYMBOL_GPL vmlinux 0xfc56e952 sdio_writel +EXPORT_SYMBOL_GPL vmlinux 0xfc5cc53f lwtunnel_fill_encap +EXPORT_SYMBOL_GPL vmlinux 0xfc60d4f1 led_trigger_unregister +EXPORT_SYMBOL_GPL vmlinux 0xfc6e84c2 tun_get_tx_ring +EXPORT_SYMBOL_GPL vmlinux 0xfc746b3c gnttab_page_cache_shrink +EXPORT_SYMBOL_GPL vmlinux 0xfc7b57be dma_need_sync +EXPORT_SYMBOL_GPL vmlinux 0xfc8ccca5 crypto_comp_compress +EXPORT_SYMBOL_GPL vmlinux 0xfc8ddbd2 phy_modify_mmd +EXPORT_SYMBOL_GPL vmlinux 0xfc9ea67b thermal_of_cooling_device_register +EXPORT_SYMBOL_GPL vmlinux 0xfcaa1642 wm8997_patch +EXPORT_SYMBOL_GPL vmlinux 0xfcc1edd3 memory_block_size_bytes +EXPORT_SYMBOL_GPL vmlinux 0xfcce275f acpi_subsys_poweroff +EXPORT_SYMBOL_GPL vmlinux 0xfce7bd44 crypto_unregister_ahash +EXPORT_SYMBOL_GPL vmlinux 0xfcea9fee seg6_do_srh_encap +EXPORT_SYMBOL_GPL vmlinux 0xfd17ef27 gpiochip_generic_free +EXPORT_SYMBOL_GPL vmlinux 0xfd1bd4d9 usb_mon_register +EXPORT_SYMBOL_GPL vmlinux 0xfd2df063 perf_pmu_unregister +EXPORT_SYMBOL_GPL vmlinux 0xfd41acff unregister_virtio_driver +EXPORT_SYMBOL_GPL vmlinux 0xfd68a712 __module_text_address +EXPORT_SYMBOL_GPL vmlinux 0xfd7243c7 erst_disable +EXPORT_SYMBOL_GPL vmlinux 0xfd7c1323 dev_pm_domain_attach +EXPORT_SYMBOL_GPL vmlinux 0xfd7d6fbc md_bitmap_copy_from_slot +EXPORT_SYMBOL_GPL vmlinux 0xfd8fb329 acpi_subsys_complete +EXPORT_SYMBOL_GPL vmlinux 0xfd98ed9e i2c_for_each_dev +EXPORT_SYMBOL_GPL vmlinux 0xfd9e2e65 devres_for_each_res +EXPORT_SYMBOL_GPL vmlinux 0xfdafc62e tcp_register_ulp +EXPORT_SYMBOL_GPL vmlinux 0xfdb7ef51 rio_dev_get +EXPORT_SYMBOL_GPL vmlinux 0xfdbd7a17 crypto_get_attr_type +EXPORT_SYMBOL_GPL vmlinux 0xfdbde96c phy_create_lookup +EXPORT_SYMBOL_GPL vmlinux 0xfdc08f15 devm_hwspin_lock_free +EXPORT_SYMBOL_GPL vmlinux 0xfdd5614f sg_scsi_ioctl +EXPORT_SYMBOL_GPL vmlinux 0xfddd7665 ncsi_unregister_dev +EXPORT_SYMBOL_GPL vmlinux 0xfdefb1e1 iommu_device_sysfs_add +EXPORT_SYMBOL_GPL vmlinux 0xfdf53c0f devlink_free +EXPORT_SYMBOL_GPL vmlinux 0xfdf637af dm_table_device_name +EXPORT_SYMBOL_GPL vmlinux 0xfdfaeb0a devlink_params_unregister +EXPORT_SYMBOL_GPL vmlinux 0xfe0e7cd3 apei_exec_post_unmap_gars +EXPORT_SYMBOL_GPL vmlinux 0xfe164b0d cgroup_path_ns +EXPORT_SYMBOL_GPL vmlinux 0xfe31c6a4 __tracepoint_block_bio_complete +EXPORT_SYMBOL_GPL vmlinux 0xfe3589ac usb_hcd_setup_local_mem +EXPORT_SYMBOL_GPL vmlinux 0xfe35c18d ata_bmdma_stop +EXPORT_SYMBOL_GPL vmlinux 0xfe419433 dax_iomap_rw +EXPORT_SYMBOL_GPL vmlinux 0xfe476039 ktime_get_resolution_ns +EXPORT_SYMBOL_GPL vmlinux 0xfe66205b pci_ignore_hotplug +EXPORT_SYMBOL_GPL vmlinux 0xfe69325f percpu_ref_resurrect +EXPORT_SYMBOL_GPL vmlinux 0xfe727411 get_phys_to_machine +EXPORT_SYMBOL_GPL vmlinux 0xfe758958 regmap_test_bits +EXPORT_SYMBOL_GPL vmlinux 0xfe7efa3e devlink_dpipe_table_register +EXPORT_SYMBOL_GPL vmlinux 0xfe8cdb84 ring_buffer_alloc_read_page +EXPORT_SYMBOL_GPL vmlinux 0xfe990052 gpio_free +EXPORT_SYMBOL_GPL vmlinux 0xfea4b943 mddev_suspend +EXPORT_SYMBOL_GPL vmlinux 0xfeac1fa4 perf_event_period +EXPORT_SYMBOL_GPL vmlinux 0xfeb2672a crypto_stats_akcipher_decrypt +EXPORT_SYMBOL_GPL vmlinux 0xfeb878da ncsi_vlan_rx_add_vid +EXPORT_SYMBOL_GPL vmlinux 0xfeb9c63d devres_alloc_node +EXPORT_SYMBOL_GPL vmlinux 0xfed11ed1 usb_mon_deregister +EXPORT_SYMBOL_GPL vmlinux 0xfed85a5d xdp_return_frame_rx_napi +EXPORT_SYMBOL_GPL vmlinux 0xfeeecd05 apei_read +EXPORT_SYMBOL_GPL vmlinux 0xff03d761 sata_lpm_ignore_phy_events +EXPORT_SYMBOL_GPL vmlinux 0xff05fa13 vring_interrupt +EXPORT_SYMBOL_GPL vmlinux 0xff1d3a58 clk_hw_get_parent_by_index +EXPORT_SYMBOL_GPL vmlinux 0xff1e67b9 setup_APIC_eilvt +EXPORT_SYMBOL_GPL vmlinux 0xff21625e ata_pci_bmdma_init_one +EXPORT_SYMBOL_GPL vmlinux 0xff288814 sock_prot_inuse_add +EXPORT_SYMBOL_GPL vmlinux 0xff29131f acpiphp_register_attention +EXPORT_SYMBOL_GPL vmlinux 0xff291ecf clk_unregister_divider +EXPORT_SYMBOL_GPL vmlinux 0xff37b9ba l3mdev_master_ifindex_rcu +EXPORT_SYMBOL_GPL vmlinux 0xff398369 addrconf_prefix_rcv_add_addr +EXPORT_SYMBOL_GPL vmlinux 0xff45516a wakeup_source_destroy +EXPORT_SYMBOL_GPL vmlinux 0xff4a632b ata_port_pbar_desc +EXPORT_SYMBOL_GPL vmlinux 0xff4e6e5c fuse_dev_release +EXPORT_SYMBOL_GPL vmlinux 0xff5317ef pci_disable_pcie_error_reporting +EXPORT_SYMBOL_GPL vmlinux 0xff5a8cfe cn_del_callback +EXPORT_SYMBOL_GPL vmlinux 0xff79529d pinctrl_pm_select_sleep_state +EXPORT_SYMBOL_GPL vmlinux 0xff81487d gpiod_remove_lookup_table +EXPORT_SYMBOL_GPL vmlinux 0xff8e74e2 arch_haltpoll_enable +EXPORT_SYMBOL_GPL vmlinux 0xff8f9949 elv_rqhash_del +EXPORT_SYMBOL_GPL vmlinux 0xff9419bd phy_speed_up +EXPORT_SYMBOL_GPL vmlinux 0xff9e23d1 hugetlb_cgrp_subsys_on_dfl_key +EXPORT_SYMBOL_GPL vmlinux 0xffae8e8b nsecs_to_jiffies +EXPORT_SYMBOL_GPL vmlinux 0xffb1a03f skcipher_walk_atomise +EXPORT_SYMBOL_GPL vmlinux 0xffcca650 devm_request_pci_bus_resources +EXPORT_SYMBOL_GPL vmlinux 0xffcde0d0 sata_async_notification +EXPORT_SYMBOL_GPL vmlinux 0xfff90746 gpiod_is_active_low +FIRMWARE_LOADER_PRIVATE EXPORT_SYMBOL_GPL 0xd3ae7756 fw_fallback_config vmlinux +LTC2497 EXPORT_SYMBOL 0x22d3b6ba ltc2497core_remove drivers/iio/adc/ltc2497-core +LTC2497 EXPORT_SYMBOL 0x56fe9fbf ltc2497core_probe drivers/iio/adc/ltc2497-core +MCB EXPORT_SYMBOL_GPL 0x01f06964 mcb_release_bus drivers/mcb/mcb +MCB EXPORT_SYMBOL_GPL 0x05890ce1 mcb_device_register drivers/mcb/mcb +MCB EXPORT_SYMBOL_GPL 0x1ea8ca5a chameleon_parse_cells drivers/mcb/mcb +MCB EXPORT_SYMBOL_GPL 0x2a899e3d mcb_bus_get drivers/mcb/mcb +MCB EXPORT_SYMBOL_GPL 0x4ab4e4d1 mcb_get_resource drivers/mcb/mcb +MCB EXPORT_SYMBOL_GPL 0x5aa94fa2 mcb_free_dev drivers/mcb/mcb +MCB EXPORT_SYMBOL_GPL 0x6403fd9b mcb_request_mem drivers/mcb/mcb +MCB EXPORT_SYMBOL_GPL 0x69f166ca mcb_unregister_driver drivers/mcb/mcb +MCB EXPORT_SYMBOL_GPL 0x81059c39 mcb_get_irq drivers/mcb/mcb +MCB EXPORT_SYMBOL_GPL 0x858a6982 mcb_bus_put drivers/mcb/mcb +MCB EXPORT_SYMBOL_GPL 0x8deb10bc mcb_alloc_bus drivers/mcb/mcb +MCB EXPORT_SYMBOL_GPL 0xb140321d mcb_alloc_dev drivers/mcb/mcb +MCB EXPORT_SYMBOL_GPL 0xe4e9419b __mcb_register_driver drivers/mcb/mcb +MCB EXPORT_SYMBOL_GPL 0xeb2c8905 mcb_release_mem drivers/mcb/mcb +MCB EXPORT_SYMBOL_GPL 0xfefe581a mcb_bus_add_devices drivers/mcb/mcb +SND_SOC_SOF_HDA_AUDIO_CODEC EXPORT_SYMBOL 0x1e8c7c2c hda_codec_probe_bus sound/soc/sof/intel/snd-sof-intel-hda +SND_SOC_SOF_HDA_AUDIO_CODEC EXPORT_SYMBOL 0x40c38c30 hda_codec_jack_wake_enable sound/soc/sof/intel/snd-sof-intel-hda +SND_SOC_SOF_HDA_AUDIO_CODEC EXPORT_SYMBOL 0xb896c332 hda_codec_jack_check sound/soc/sof/intel/snd-sof-intel-hda +SND_SOC_SOF_HDA_AUDIO_CODEC_I915 EXPORT_SYMBOL 0x0d90be81 hda_codec_i915_exit sound/soc/sof/intel/snd-sof-intel-hda +SND_SOC_SOF_HDA_AUDIO_CODEC_I915 EXPORT_SYMBOL 0x1ac4dc55 hda_codec_i915_display_power sound/soc/sof/intel/snd-sof-intel-hda +SND_SOC_SOF_HDA_AUDIO_CODEC_I915 EXPORT_SYMBOL 0x9a7fa010 hda_codec_i915_init sound/soc/sof/intel/snd-sof-intel-hda +SND_SOC_SOF_INTEL_HDA_COMMON EXPORT_SYMBOL 0x3138ac44 sof_apl_ops sound/soc/sof/intel/snd-sof-intel-hda-common +SND_SOC_SOF_INTEL_HDA_COMMON EXPORT_SYMBOL 0x44fc4caa sof_cnl_ops sound/soc/sof/intel/snd-sof-intel-hda-common +SND_SOC_SOF_INTEL_HDA_COMMON EXPORT_SYMBOL 0x5b5be595 apl_chip_info sound/soc/sof/intel/snd-sof-intel-hda-common +SND_SOC_SOF_INTEL_HDA_COMMON EXPORT_SYMBOL 0x61cf31b7 icl_chip_info sound/soc/sof/intel/snd-sof-intel-hda-common +SND_SOC_SOF_INTEL_HDA_COMMON EXPORT_SYMBOL 0x703e1716 tgl_chip_info sound/soc/sof/intel/snd-sof-intel-hda-common +SND_SOC_SOF_INTEL_HDA_COMMON EXPORT_SYMBOL 0xa9a9b2b6 jsl_chip_info sound/soc/sof/intel/snd-sof-intel-hda-common +SND_SOC_SOF_INTEL_HDA_COMMON EXPORT_SYMBOL 0xacf31f39 ehl_chip_info sound/soc/sof/intel/snd-sof-intel-hda-common +SND_SOC_SOF_INTEL_HDA_COMMON EXPORT_SYMBOL 0xf4d48b52 cnl_chip_info sound/soc/sof/intel/snd-sof-intel-hda-common +SND_SOC_SOF_INTEL_HIFI_EP_IPC EXPORT_SYMBOL 0x05a9954d intel_pcm_open sound/soc/sof/intel/snd-sof-intel-ipc +SND_SOC_SOF_INTEL_HIFI_EP_IPC EXPORT_SYMBOL 0x22346f67 intel_ipc_pcm_params sound/soc/sof/intel/snd-sof-intel-ipc +SND_SOC_SOF_INTEL_HIFI_EP_IPC EXPORT_SYMBOL 0xb81bb6c4 intel_ipc_msg_data sound/soc/sof/intel/snd-sof-intel-ipc +SND_SOC_SOF_INTEL_HIFI_EP_IPC EXPORT_SYMBOL 0xd9550eea intel_pcm_close sound/soc/sof/intel/snd-sof-intel-ipc +SND_SOC_SOF_MERRIFIELD EXPORT_SYMBOL 0x5845845b sof_tng_ops sound/soc/sof/intel/snd-sof-intel-byt +SND_SOC_SOF_MERRIFIELD EXPORT_SYMBOL 0x8639b9f0 tng_chip_info sound/soc/sof/intel/snd-sof-intel-byt +SND_SOC_SOF_XTENSA EXPORT_SYMBOL 0x9d803e39 sof_xtensa_arch_ops sound/soc/sof/xtensa/snd-sof-xtensa-dsp +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 0x01524a79 usb_stor_suspend drivers/usb/storage/usb-storage +USB_STORAGE EXPORT_SYMBOL_GPL 0x0cccc779 usb_stor_bulk_transfer_buf drivers/usb/storage/usb-storage +USB_STORAGE EXPORT_SYMBOL_GPL 0x159c1974 usb_stor_host_template_init 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 0x1c8db2fd usb_stor_disconnect drivers/usb/storage/usb-storage +USB_STORAGE EXPORT_SYMBOL_GPL 0x1d6164aa usb_stor_probe1 drivers/usb/storage/usb-storage +USB_STORAGE EXPORT_SYMBOL_GPL 0x20fd3e6d fill_inquiry_response drivers/usb/storage/usb-storage +USB_STORAGE EXPORT_SYMBOL_GPL 0x22895488 usb_stor_bulk_transfer_sg drivers/usb/storage/usb-storage +USB_STORAGE EXPORT_SYMBOL_GPL 0x2bc95b5f usb_stor_reset_resume drivers/usb/storage/usb-storage +USB_STORAGE EXPORT_SYMBOL_GPL 0x2d774db8 usb_stor_post_reset drivers/usb/storage/usb-storage +USB_STORAGE EXPORT_SYMBOL_GPL 0x30ecb025 usb_stor_control_msg drivers/usb/storage/usb-storage +USB_STORAGE EXPORT_SYMBOL_GPL 0x3f95e0aa usb_stor_pre_reset drivers/usb/storage/usb-storage +USB_STORAGE EXPORT_SYMBOL_GPL 0x595ee2ed usb_stor_probe2 drivers/usb/storage/usb-storage +USB_STORAGE EXPORT_SYMBOL_GPL 0x5bcc30a7 usb_stor_adjust_quirks drivers/usb/storage/usb-storage +USB_STORAGE EXPORT_SYMBOL_GPL 0x6d1b80e6 usb_stor_set_xfer_buf drivers/usb/storage/usb-storage +USB_STORAGE EXPORT_SYMBOL_GPL 0x895218ad usb_stor_CB_reset drivers/usb/storage/usb-storage +USB_STORAGE EXPORT_SYMBOL_GPL 0x8fd30086 usb_stor_ctrl_transfer drivers/usb/storage/usb-storage +USB_STORAGE EXPORT_SYMBOL_GPL 0x94f869c3 usb_stor_bulk_srb drivers/usb/storage/usb-storage +USB_STORAGE EXPORT_SYMBOL_GPL 0x98393591 usb_stor_resume drivers/usb/storage/usb-storage +USB_STORAGE EXPORT_SYMBOL_GPL 0x9c853ae7 usb_stor_access_xfer_buf drivers/usb/storage/usb-storage +USB_STORAGE EXPORT_SYMBOL_GPL 0x9e7d4533 usb_stor_Bulk_reset drivers/usb/storage/usb-storage +USB_STORAGE EXPORT_SYMBOL_GPL 0xa6cea1d4 usb_stor_Bulk_transport drivers/usb/storage/usb-storage +USB_STORAGE EXPORT_SYMBOL_GPL 0xcb4abc20 usb_stor_transparent_scsi_command drivers/usb/storage/usb-storage +USB_STORAGE EXPORT_SYMBOL_GPL 0xcf71a947 usb_stor_CB_transport drivers/usb/storage/usb-storage +USB_STORAGE EXPORT_SYMBOL_GPL 0xe70fbc2f usb_stor_clear_halt drivers/usb/storage/usb-storage --- linux-azure-5.8-5.8.0.orig/debian.master/abi/5.8.0-50.56/amd64/generic.compiler +++ linux-azure-5.8-5.8.0/debian.master/abi/5.8.0-50.56/amd64/generic.compiler @@ -0,0 +1 @@ +GCC: (Ubuntu 10.2.0-13ubuntu1) 10.2.0 --- linux-azure-5.8-5.8.0.orig/debian.master/abi/5.8.0-50.56/amd64/generic.modules +++ linux-azure-5.8-5.8.0/debian.master/abi/5.8.0-50.56/amd64/generic.modules @@ -0,0 +1,5729 @@ +104-quad-8 +3c509 +3c574_cs +3c589_cs +3c59x +3w-9xxx +3w-sas +3w-xxxx +53c700 +6lowpan +6pack +8021q +8139cp +8139too +8250_dw +8250_exar +8250_lpss +8250_men_mcb +8250_mid +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_rdma +9pnet_virtio +9pnet_xen +BusLogic +a100u2w +a3d +a8293 +aacraid +aat2870-regulator +aat2870_bl +ab3100 +ab3100-otp +abituguru +abituguru3 +abp060mg +ac97_bus +acard-ahci +acecad +acenic +acer-wireless +acer-wmi +acerhdf +acp_audio_dma +acpi-als +acpi_configfs +acpi_extlog +acpi_ipmi +acpi_pad +acpi_power_meter +acpi_tad +acpi_thermal_rel +acpiphp_ibm +acquirewdt +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 +ad5064 +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 +ad5770r +ad5791 +ad5820 +ad5933 +ad7091r-base +ad7091r5 +ad7124 +ad714x +ad714x-i2c +ad714x-spi +ad7150 +ad7192 +ad7266 +ad7280a +ad7291 +ad7292 +ad7298 +ad7303 +ad7314 +ad7414 +ad7418 +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 +ad9389b +ad9467 +ad9523 +ad9832 +ad9834 +ad_sigma_delta +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 +ade7854 +ade7854-i2c +ade7854-spi +adf4350 +adf4371 +adf7242 +adfs +adi +adi-axi-adc +adiantum +adin +adis16080 +adis16130 +adis16136 +adis16201 +adis16203 +adis16209 +adis16240 +adis16260 +adis16400 +adis16460 +adis16475 +adis16480 +adis_lib +adjd_s311 +adl_pci6208 +adl_pci7x3x +adl_pci8164 +adl_pci9111 +adl_pci9118 +adm1021 +adm1025 +adm1026 +adm1029 +adm1031 +adm1177 +adm1275 +adm8211 +adm9240 +adp1653 +adp5061 +adp5520-keys +adp5520_bl +adp5588-keys +adp5589-keys +adp8860_bl +adp8870_bl +adq12b +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_pci1710 +adv_pci1720 +adv_pci1723 +adv_pci1724 +adv_pci1760 +adv_pci_dio +advansys +advantechwdt +adxl34x +adxl34x-i2c +adxl34x-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_platform +aic79xx +aic7xxx +aic94xx +aio_aio12_8 +aio_iiro_16 +aiptek +aircable +airo +airo_cs +airspy +ak7375 +ak881x +ak8975 +al3010 +al3320a +alcor +alcor_pci +algif_aead +algif_hash +algif_rng +algif_skcipher +alienware-wmi +alim1535_wdt +alim7101_wdt +altera-ci +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 +ambassador +amc6821 +amd +amd-rng +amd-xgbe +amd5536udc_pci +amd64_edac_mod +amd76xrom +amd8111e +amd_energy +amd_freq_sensitivity +amdgpu +amdtee +amilo-rfkill +amlogic-gxl-crypto +amplc_dio200 +amplc_dio200_common +amplc_dio200_pci +amplc_pc236 +amplc_pc236_common +amplc_pc263 +amplc_pci224 +amplc_pci230 +amplc_pci236 +amplc_pci263 +ams-iaq-core +ams369fg06 +analog +analogix-anx78xx +analogix_dp +ansi_cprng +anubis +aoe +apanel +apds9300 +apds9802als +apds990x +apds9960 +apex +apple-gmux +apple-mfi-fastcharge +apple_bl +appledisplay +applesmc +applespi +appletalk +appletouch +applicom +aptina-pll +aqc111 +aquantia +ar5523 +ar7part +ar9331 +arasan-nand-controller +arc-rawmode +arc-rimi +arc4 +arc_ps2 +arc_uart +arcfb +arcmsr +arcnet +arcxcnn_bl +arizona-haptics +arizona-i2c +arizona-ldo1 +arizona-micsupp +arizona-spi +ark3116 +arkfb +arp_tables +arpt_mangle +arptable_filter +as102_fe +as370-hwmon +as3711-regulator +as3711_bl +as3935 +as5011 +asb100 +asc7621 +ascot2e +ashmem_linux +asix +aspeed-pwm-tacho +aspeed-video +ast +asus-laptop +asus-nb-wmi +asus-wireless +asus-wmi +asus_atk0110 +asym_tpm +async_memcpy +async_pq +async_raid6_recov +async_tx +async_xor +at24 +at25 +at76c50x-usb +at803x +at86rf230 +atbm8830 +aten +ath +ath10k_core +ath10k_pci +ath10k_sdio +ath10k_usb +ath3k +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 +atomisp +atomisp-gc0310 +atomisp-gc2235 +atomisp-libmsrlisthelper +atomisp-lm3554 +atomisp-mt9m114 +atomisp-ov2680 +atomisp-ov2722 +atomisp-ov5693 +atomisp_gmin_platform +atp +atp870u +atusb +atxp1 +aty128fb +atyfb +au0828 +au8522_common +au8522_decoder +au8522_dig +aufs +auo-pixcir-ts +auth_rpcgss +authenc +authencesn +autofs4 +avmfritz +ax25 +ax88179_178a +ax88796b +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 +bareudp +batman-adv +baycom_par +baycom_ser_fdx +baycom_ser_hdx +bcache +bch +bcm-phy-lib +bcm-sf2 +bcm203x +bcm3510 +bcm54140 +bcm590xx +bcm590xx-regulator +bcm5974 +bcm7xxx +bcm87xx +bcma +bcma-hcd +bcmsysport +bd6107 +bd9571mwv +bd9571mwv-regulator +bd99954-charger +bdc +be2iscsi +be2net +befs +bel-pfe +belkin_sa +bfa +bfq +bfs +bfusb +bh1750 +bh1770glc +bh1780 +binder_linux +binfmt_misc +blake2b_generic +blake2s-x86_64 +blake2s_generic +block2mtd +blocklayoutdriver +blowfish-x86_64 +blowfish_common +blowfish_generic +bluecard_cs +bluetooth +bluetooth_6lowpan +bma150 +bma220_spi +bma400_core +bma400_i2c +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 +bmi160_core +bmi160_i2c +bmi160_spi +bmp280 +bmp280-i2c +bmp280-spi +bna +bnep +bnx2 +bnx2fc +bnx2i +bnx2x +bnxt_en +bnxt_re +bochs-drm +bonding +bpa10x +bpck +bpfilter +bpqether +bq2415x_charger +bq24190_charger +bq24257_charger +bq24735-charger +bq25890_charger +bq27xxx_battery +bq27xxx_battery_hdq +bq27xxx_battery_i2c +br2684 +br_netfilter +brcmfmac +brcmsmac +brcmutil +brd +bridge +broadcom +bsd_comp +bt3c_cs +bt819 +bt856 +bt866 +bt878 +btbcm +btcoexist +btintel +btmrvl +btmrvl_sdio +btmtksdio +btmtkuart +btqca +btrfs +btrsi +btrtl +btsdio +bttv +btusb +bu21013_ts +bu21029_ts +budget +budget-av +budget-ci +budget-core +budget-patch +c2port-duramar2150 +c67x00 +c6xdigio +c_can +c_can_pci +c_can_platform +ca8210 +cachefiles +cadence_wdt +cafe_ccic +cafe_nand +caif +caif_hsi +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-j1939 +can-raw +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_das16_cs +cb_pcidas +cb_pcidas64 +cb_pcidda +cb_pcimdas +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 +cdns3 +cdns3-pci-wrap +cec +ceph +cfag12864b +cfag12864bfb +cfb +cfg80211 +cfi_cmdset_0001 +cfi_cmdset_0002 +cfi_cmdset_0020 +cfi_probe +cfi_util +cfspi_slave +ch +ch341 +ch7006 +ch9200 +chacha-x86_64 +chacha20poly1305 +chacha_generic +chaoskey +charlcd +chcr +chipone_icn8505 +chipreg +chnl_net +chromeos_laptop +chromeos_pstore +chromeos_tbmc +ci_hdrc +ci_hdrc_msm +ci_hdrc_pci +ci_hdrc_usb2 +cicada +cifs +cio-dac +cirrus +cirrusfb +ck804xrom +classmate-laptop +clip +clk-cdce706 +clk-cs2000-cp +clk-max9485 +clk-palmas +clk-pwm +clk-s2mps11 +clk-si5341 +clk-si5351 +clk-si544 +clk-twl6040 +clk-wm831x +cls_basic +cls_bpf +cls_cgroup +cls_flow +cls_flower +cls_fw +cls_matchall +cls_route +cls_rsvp +cls_rsvp6 +cls_tcindex +cls_u32 +cm109 +cm32181 +cm3232 +cm3323 +cm36651 +cm4000_cs +cm4040_cs +cma3000_d0x +cma3000_d0x_i2c +cmac +cmdlinepart +cmtp +cnic +cobalt +cobra +coda +com20020 +com20020-pci +com20020_cs +com90io +com90xx +comedi +comedi_8254 +comedi_8255 +comedi_bond +comedi_isadma +comedi_parport +comedi_pci +comedi_pcmcia +comedi_test +comedi_usb +comm +compal-laptop +contec_pci_dio +cops +cordic +core +coretemp +cortina +cosm_bus +cosm_client +counter +cp210x +cpcihp_generic +cpcihp_zt5550 +cpia2 +cpu5wdt +cpuid +cpuidle-haltpoll +cqhci +cr_bllcd +cramfs +crc-itu-t +crc32-pclmul +crc32_generic +crc4 +crc64 +crc7 +crc8 +crct10dif-pclmul +cros-ec-cec +cros-ec-sensorhub +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_sensors +cros_ec_sensors_core +cros_ec_spi +cros_ec_sysfs +cros_ec_typec +cros_kbd_led_backlight +cros_usbpd-charger +cros_usbpd_logger +cros_usbpd_notify +crvml +cryptd +crypto_engine +crypto_safexcel +crypto_simd +crypto_user +cryptoloop +cs3308 +cs5345 +cs53l32a +cs89x0 +csiostor +ct82c710 +curve25519-generic +curve25519-x86_64 +cuse +cw1200_core +cw1200_wlan_sdio +cw1200_wlan_spi +cw2015_battery +cx18 +cx18-alsa +cx22700 +cx22702 +cx231xx +cx231xx-alsa +cx231xx-dvb +cx2341x +cx23885 +cx24110 +cx24113 +cx24116 +cx24117 +cx24120 +cx24123 +cx25821 +cx25821-alsa +cx25840 +cx82310_eth +cx88-alsa +cx88-blackbird +cx88-dvb +cx88-vp3054-i2c +cx8800 +cx8802 +cx88xx +cxacru +cxd2099 +cxd2820r +cxd2841er +cxd2880 +cxd2880-spi +cxgb +cxgb3 +cxgb3i +cxgb4 +cxgb4i +cxgb4vf +cxgbit +cy8ctma140 +cy8ctmg110_ts +cyapatp +cyber2000fb +cyberjack +cyclades +cypress_cy7c63 +cypress_firmware +cypress_m8 +cytherm +cyttsp4_core +cyttsp4_i2c +cyttsp4_spi +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 +dac02 +daqboard2000 +das08 +das08_cs +das08_isa +das08_pci +das16 +das16m1 +das1800 +das6402 +das800 +davicom +dax_hmem +dax_pmem +dax_pmem_compat +dax_pmem_core +db9 +dc395x +dca +dccp +dccp_diag +dccp_ipv4 +dccp_ipv6 +dcdbas +ddbridge +ddbridge-dummy-fe +de2104x +de4x5 +decnet +defxx +dell-laptop +dell-rbtn +dell-smbios +dell-smm-hwmon +dell-smo8800 +dell-uart-backlight +dell-wmi +dell-wmi-aio +dell-wmi-descriptor +dell-wmi-led +dell_rbu +denali +denali_pci +des3_ede-x86_64 +des_generic +designware_i2s +device_dax +dfl +dfl-afu +dfl-fme +dfl-fme-br +dfl-fme-mgr +dfl-fme-region +dfl-pci +dht11 +diag +dib0070 +dib0090 +dib3000mb +dib3000mc +dib7000m +dib7000p +dib8000 +dib9000 +dibx000_common +digi_acceleport +diskonchip +dl2k +dlci +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-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 +dmard09 +dmard10 +dme1737 +dmfe +dmi-sysfs +dmm32at +dmx3191d +dn_rtmsg +dnet +dp83640 +dp83822 +dp83848 +dp83867 +dp83869 +dp83tc811 +dps310 +dpt_i2o +dptf_power +drbd +drivetemp +drm +drm_kms_helper +drm_mipi_dbi +drm_ttm_helper +drm_vram_helper +drm_xen_front +drv260x +drv2665 +drv2667 +drx39xyj +drxd +drxk +ds1621 +ds1682 +ds1803 +ds1wm +ds2482 +ds2490 +ds2760_battery +ds2780_battery +ds2781_battery +ds2782_battery +ds3000 +ds4424 +ds620 +dsa_core +dsbr100 +dst +dst_ca +dstr +dt2801 +dt2811 +dt2814 +dt2815 +dt2817 +dt282x +dt3000 +dt3155 +dt9812 +dtl1_cs +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 +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 +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 +echainiv +echo +ecrdsa_generic +edac_mce_amd +edt-ft5x06 +ee1004 +eeepc-laptop +eeepc-wmi +eeprom +eeprom_93cx6 +eeprom_93xx46 +eeti_ts +efa +efi-pstore +efi_test +efibc +efs +egalax_ts_serial +ehci-fsl +ehset +einj +ektf2127 +elan_i2c +elo +em28xx +em28xx-alsa +em28xx-dvb +em28xx-rc +em28xx-v4l +em_canid +em_cmp +em_ipset +em_ipt +em_meta +em_nbyte +em_text +em_u32 +emc1403 +emc2103 +emc6w201 +emi26 +emi62 +empeg +ems_pci +ems_pcmcia +ems_usb +emu10k1-gp +ena +enc28j60 +enclosure +encx24j600 +encx24j600-regmap +ene_ir +eni +enic +epat +epia +epic100 +eql +erofs +esas2r +esb2rom +esd_usb2 +esp4 +esp4_offload +esp6 +esp6_offload +esp_scsi +essiv +et1011c +et131x +et8ek8 +ethoc +eurotechwdt +evbug +exc3000 +exfat +extcon-adc-jack +extcon-arizona +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 +failover +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_sys_fops +fb_tinylcd +fb_tls8204 +fb_uc1611 +fb_uc1701 +fb_upd161704 +fb_watterott +fbtft +fc0011 +fc0012 +fc0013 +fc2580 +fcoe +fcrypt +fdomain +fdomain_cs +fdomain_pci +fdp +fdp_i2c +fealnx +ff-memless +fieldbus_dev +fintek-cir +firedtv +firestream +firewire-core +firewire-net +firewire-ohci +firewire-sbp2 +firewire-serial +fit2 +fit3 +fixed +fjes +fl512 +floppy +fm10k +fm801-gp +fm_drv +fmvj18x_cs +fnic +forcedeth +fore_200e +fotg210-hcd +fotg210-udc +fou +fou6 +fpga-bridge +fpga-mgr +fpga-region +freevxfs +friq +frpw +fscache +fschmd +fsia6b +fsl-mph-dr-of +fsl_linflexuart +fsl_lpuart +ftdi-elan +ftdi_sio +ftl +ftrace-direct +ftrace-direct-modify +ftrace-direct-too +ftsteutates +fujitsu-laptop +fujitsu-tablet +fujitsu_ts +fusb302 +fxas21002c_core +fxas21002c_i2c +fxas21002c_spi +fxos8700_core +fxos8700_i2c +fxos8700_spi +g450_pll +g760a +g762 +g_acm_ms +g_audio +g_cdc +g_dbgp +g_ether +g_ffs +g_hid +g_mass_storage +g_midi +g_ncm +g_nokia +g_printer +g_serial +g_webcam +g_zero +gadgetfs +gamecon +gameport +garmin_gps +garp +gasket +gb-audio-apbridgea +gb-audio-gb +gb-audio-manager +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 +gdth +gen_probe +generic +generic-adc-battery +generic_bl +genet +geneve +genwqe_card +gf2k +gfs2 +ghash-clmulni-intel +gl518sm +gl520sm +gl620a +glue_helper +gluebi +gm12u320 +gma500_gfx +gnss +gnss-mtk +gnss-serial +gnss-sirf +gnss-ubx +go7007 +go7007-loader +go7007-usb +goku_udc +goodix +gp2ap002 +gp2ap020a00f +gp8psk-fe +gpd-pocket-fan +gpio +gpio-104-dio-48e +gpio-104-idi-48 +gpio-104-idio-16 +gpio-adp5520 +gpio-adp5588 +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-exar +gpio-f7188x +gpio-generic +gpio-gpio-mm +gpio-ich +gpio-it87 +gpio-janz-ttl +gpio-kempld +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-regulator +gpio-sch +gpio-sch311x +gpio-siox +gpio-tpic2810 +gpio-tps65086 +gpio-tps65912 +gpio-tqmx86 +gpio-twl4030 +gpio-twl6040 +gpio-ucb1400 +gpio-vibra +gpio-viperboard +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_fpga +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 +gtco +gtp +guillemot +gunze +gve +habanalabs +hackrf +hamachi +hampshire +hangcheck-timer +hanwang +hci +hci_nokia +hci_uart +hci_vhci +hd3ss3220 +hd44780 +hdaps +hdc100x +hdlc +hdlc_cisco +hdlc_fr +hdlc_ppp +hdlc_raw +hdlc_raw_eth +hdlc_x25 +hdlcdrv +hdma +hdma_mgmt +hdpvr +he +hecubafb +helene +hexium_gemini +hexium_orion +hfcmulti +hfcpci +hfcsusb +hfi1 +hfs +hfsplus +hgafb +hi311x +hi556 +hi6210-i2s +hi8435 +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-ezkey +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-lg-g15 +hid-logitech +hid-logitech-dj +hid-logitech-hidpp +hid-macally +hid-magicmouse +hid-maltron +hid-mcp2221 +hid-mf +hid-microsoft +hid-monterey +hid-multitouch +hid-nti +hid-ntrig +hid-ortek +hid-penmount +hid-petalynx +hid-picolcd +hid-pl +hid-plantronics +hid-primax +hid-prodikeys +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-sensor-accel-3d +hid-sensor-als +hid-sensor-custom +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-sjoy +hid-sony +hid-speedlink +hid-steam +hid-steelseries +hid-sunplus +hid-tivo +hid-tmff +hid-topseed +hid-twinhan +hid-u2fzero +hid-uclogic +hid-udraw-ps3 +hid-viewsonic +hid-waltop +hid-wiimote +hid-xinmo +hid-zpff +hid-zydacron +hideep +hidp +hih6130 +hinic +hio +hmc425a +hmc5843_core +hmc5843_i2c +hmc5843_spi +hmc6352 +hopper +horizon +horus3a +hostap +hostap_cs +hostap_pci +hostap_plx +hp-wireless +hp-wmi +hp03 +hp206c +hp_accel +hpfs +hpilo +hpsa +hptiop +hpwdt +hsi +hsi_char +hso +hsr +hsu_dma +htc-pasic3 +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 +hyperbus-core +hyperv-keyboard +hyperv_fb +i10nm_edac +i2400m +i2400m-usb +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-cht-wc +i2c-cros-ec-tunnel +i2c-designware-pci +i2c-diolan-u2c +i2c-dln2 +i2c-gpio +i2c-hid +i2c-i801 +i2c-isch +i2c-ismt +i2c-kempld +i2c-matroxfb +i2c-mlxcpld +i2c-multi-instantiate +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-xiic +i3000_edac +i3200_edac +i3c +i3c-master-cdns +i40e +i40iw +i5000_edac +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 +icp +icp10100 +icp_multi +icplus +ics932s401 +ideapad-laptop +ideapad_slidebar +idma64 +idmouse +idt77252 +idt_89hpesx +idt_gen2 +idt_gen3 +idtcps +idxd +ie31200_edac +ie6xx_wdt +ieee802154 +ieee802154_6lowpan +ieee802154_socket +ifb +ifcvf +ife +ifi_canfd +iforce +iforce-serio +iforce-usb +igb +igbvf +igc +igorplugusb +iguanair +ii_pci20kc +iio-trig-hrtimer +iio-trig-interrupt +iio-trig-loop +iio-trig-sysfs +iio_dummy +iio_hwmon +ila +ili210x +ili9225 +ili922x +ili9320 +ili9341 +ili9486 +img-ascii-lcd +img-i2s-in +img-i2s-out +img-parallel-out +img-spdif-in +img-spdif-out +imm +imon +imon_raw +ims-pcu +imx214 +imx219 +imx258 +imx274 +imx290 +imx319 +imx355 +ina209 +ina2xx +ina2xx-adc +ina3221 +industrialio +industrialio-buffer-cb +industrialio-buffer-dma +industrialio-buffer-dmaengine +industrialio-configfs +industrialio-hw-consumer +industrialio-sw-device +industrialio-sw-trigger +industrialio-triggered-buffer +industrialio-triggered-event +inet_diag +inexio +inftl +initio +input-leds +input-polldev +inspur-ipsps +int3400_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-rng +intel-rst +intel-smartconnect +intel-uncore-frequency +intel-vbtn +intel-wmi-sbl-fw-update +intel-wmi-thunderbolt +intel-xhci-usb-role-switch +intel-xway +intel_bxt_pmic_thermal +intel_bxtwc_tmu +intel_cht_int33fe +intel_chtdc_ti_pwrbtn +intel_int0002_vgpio +intel_ips +intel_menlow +intel_mid_powerbtn +intel_mid_thermal +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_scu_ipcutil +intel_scu_pltdrv +intel_soc_dts_iosf +intel_soc_dts_thermal +intel_soc_pmic_bxtwc +intel_soc_pmic_chtdc_ti +intel_soc_pmic_mrfld +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_vr_nor +intelfb +interact +inv-mpu6050 +inv-mpu6050-i2c +inv-mpu6050-spi +io_edgeport +io_ti +ioatdma +iommu_v2 +ionic +iowarrior +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_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_CLUSTERIP +ipt_ECN +ipt_REJECT +ipt_SYNPROXY +ipt_ah +ipt_rpfilter +iptable_filter +iptable_mangle +iptable_nat +iptable_raw +iptable_security +ipu3-cio2 +ipu3-imgu +ipvlan +ipvtap +ipw +ipw2100 +ipw2200 +ipwireless +iqs269a +iqs5xx +iqs620at-temp +iqs621-als +iqs624-pos +iqs62x +iqs62x-keys +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 +ir38064 +irps5401 +irq-madera +isci +iscsi_boot_sysfs +iscsi_ibft +iscsi_target_mod +iscsi_tcp +isdnhdlc +isicom +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 +it87 +it8712f_wdt +it87_wdt +it913x +itd1000 +ite-cir +itg3200 +iuu_phoenix +ivtv +ivtv-alsa +ivtvfb +iw_cm +iw_cxgb4 +iwl3945 +iwl4965 +iwldvm +iwlegacy +iwlmvm +iwlwifi +ix2505v +ixgb +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 +kernelcapi +keyspan +keyspan_pda +keyspan_remote +keywrap +kfifo_buf +khazad +kheaders +kl5kusb105 +kmem +kmx61 +kobil_sct +kpc2000 +kpc2000_i2c +kpc2000_spi +kpc_dma +ks0108 +ks0127 +ks7010 +ks8842 +ks8851 +ks8851_mll +ksz8795 +ksz8795_spi +ksz884x +ksz9477 +ksz9477_i2c +ksz9477_spi +ksz_common +ktti +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 +lcd +ldusb +lec +led-class-flash +leds-88pm860x +leds-adp5520 +leds-apu +leds-as3645a +leds-bd2802 +leds-blinkm +leds-clevo-mail +leds-da903x +leds-da9052 +leds-dac124s085 +leds-gpio +leds-lm3530 +leds-lm3532 +leds-lm3533 +leds-lm355x +leds-lm3601x +leds-lm36274 +leds-lm3642 +leds-lp3944 +leds-lp3952 +leds-lp5521 +leds-lp5523 +leds-lp5562 +leds-lp55xx-common +leds-lp8501 +leds-lp8788 +leds-max8997 +leds-mc13783 +leds-menf21bmc +leds-mlxcpld +leds-mlxreg +leds-mt6323 +leds-nic78bx +leds-pca9532 +leds-pca955x +leds-pca963x +leds-pwm +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-gpio +ledtrig-heartbeat +ledtrig-netdev +ledtrig-oneshot +ledtrig-pattern +ledtrig-timer +ledtrig-transient +ledtrig-usbport +legousbtower +lg-laptop +lg-vl600 +lg2160 +lgdt3305 +lgdt3306a +lgdt330x +lgs8gl5 +lgs8gxx +lib80211 +lib80211_crypt_ccmp +lib80211_crypt_tkip +lib80211_crypt_wep +libahci +libahci_platform +libarc4 +libblake2s +libblake2s-generic +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 +lightning +lineage-pem +linear +liquidio +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 +lmc +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 +ltc1660 +ltc2471 +ltc2485 +ltc2496 +ltc2497 +ltc2497-core +ltc2632 +ltc2941-battery-gauge +ltc2945 +ltc2947-core +ltc2947-i2c +ltc2947-spi +ltc2978 +ltc2983 +ltc2990 +ltc3589 +ltc3676 +ltc3815 +ltc4151 +ltc4215 +ltc4222 +ltc4245 +ltc4260 +ltc4261 +ltpc +ltr501 +ltv350qv +lv0104cs +lv5207lp +lvstest +lxt +lz4 +lz4hc +lz4hc_compress +m2m-deinterlace +m52790 +m5mols +m62332 +m88ds3103 +m88rs2000 +m88rs6000t +mISDN_core +mISDN_dsp +mISDNinfineon +mISDNipac +mISDNisar +m_can +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 +mantis +mantis_core +map_absent +map_funcs +map_ram +map_rom +marvell +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 +max11801_ts +max1241 +max1363 +max14577-regulator +max14577_charger +max1586 +max16064 +max16065 +max1619 +max16601 +max1668 +max17040_battery +max17042_battery +max1721x_battery +max197 +max20730 +max20751 +max2165 +max2175 +max30100 +max30102 +max3100 +max31722 +max31730 +max31785 +max31790 +max31856 +max3420_udc +max3421-hcd +max34440 +max44000 +max44009 +max517 +max5432 +max5481 +max5487 +max63xx_wdt +max6621 +max6639 +max6642 +max6650 +max6697 +max6875 +max7359_keypad +max77693-haptic +max77693-regulator +max77693_charger +max77826-regulator +max8649 +max8660 +max8688 +max8903_charger +max8907 +max8907-regulator +max8925-regulator +max8925_bl +max8925_onkey +max8925_power +max8952 +max8997-regulator +max8997_charger +max8997_haptic +max8998 +max8998_charger +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 +mc44s803 +mcam-core +mcb +mcb-lpc +mcb-pci +mcba_usb +mce-inject +mceusb +mchp23k256 +mcp251x +mcp3021 +mcp320x +mcp3422 +mcp3911 +mcp4018 +mcp41010 +mcp4131 +mcp4531 +mcp4725 +mcp4922 +mcr20a +mcs5000_ts +mcs7830 +mcs_touchkey +mct_u232 +md-cluster +md4 +mdc800 +mdev +mdio +mdio-bcm-unimac +mdio-bitbang +mdio-cavium +mdio-gpio +mdio-i2c +mdio-mscc-miim +mdio-mvusb +mdio-thunder +mdio-xpcs +me4000 +me_daq +megaraid +megaraid_mbox +megaraid_mm +megaraid_sas +mei +mei-me +mei-txe +mei_hdcp +mei_phy +mei_wdt +melfas_mip4 +memory-notifier-error-inject +memstick +men_z135_uart +men_z188_adc +mena21_wdt +menf21bmc +menf21bmc_hwmon +menf21bmc_wdt +menz69_wdt +metro-usb +metronomefb +meye +mf6x4 +mgag200 +mhi +mi0283qt +mic_bus +mic_card +mic_cosm +mic_host +mic_x100_dma +michael_mic +micrel +microchip +microchip_t1 +microread +microread_i2c +microread_mei +microtek +mii +minix +mip6 +mite +mk712 +mkiss +ml86v7667 +mlx-platform +mlx4_core +mlx4_en +mlx4_ib +mlx5_core +mlx5_ib +mlx90614 +mlx90632 +mlx_wdt +mlxfw +mlxreg-fan +mlxreg-hotplug +mlxreg-io +mlxsw_core +mlxsw_i2c +mlxsw_minimal +mlxsw_pci +mlxsw_spectrum +mlxsw_switchib +mlxsw_switchx2 +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_sound +most_usb +most_video +moxa +mp2629 +mp2629_adc +mp2629_charger +mp8859 +mpc624 +mpl115 +mpl115_i2c +mpl115_spi +mpl3115 +mpls_gso +mpls_iptunnel +mpls_router +mpoa +mpr121_touchkey +mpt3sas +mptbase +mptctl +mptfc +mptlan +mptsas +mptscsih +mptspi +mpu3050 +mrf24j40 +mrp +ms5611_core +ms5611_i2c +ms5611_spi +ms5637 +ms_block +ms_sensors_i2c +mscc +mscc_ocelot_common +msdos +msi-laptop +msi-wmi +msi001 +msi2500 +msp3400 +mspro_block +msr +mt2060 +mt2063 +mt20xx +mt2131 +mt2266 +mt312 +mt352 +mt6311-regulator +mt6323-regulator +mt6358-regulator +mt6360-core +mt6397 +mt6397-regulator +mt7530 +mt76 +mt76-usb +mt7601u +mt7603e +mt7615-common +mt7615e +mt7663u +mt76x0-common +mt76x02-lib +mt76x02-usb +mt76x0e +mt76x0u +mt76x2-common +mt76x2e +mt76x2u +mt7915e +mt9m001 +mt9m032 +mt9m111 +mt9p031 +mt9t001 +mt9t112 +mt9v011 +mt9v032 +mt9v111 +mtd +mtd_blkdevs +mtd_dataflash +mtdblock +mtdblock_ro +mtdoops +mtdpstore +mtdram +mtdswap +mtip32xx +mtk-pmic-keys +mtk-sd +mtouch +multipath +multiq3 +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 +mxl111sf-demod +mxl111sf-tuner +mxl301rf +mxl5005s +mxl5007t +mxl5xx +mxm-wmi +mxser +mxuport +myrb +myri10ge +myrs +n411 +n5pf +n_gsm +n_hdlc +n_tracerouter +n_tracesink +nand +nand_ecc +nandcore +nandsim +national +natsemi +nau7802 +navman +nb8800 +nbd +nci +nci_spi +nci_uart +nct6683 +nct6775 +nct7802 +nct7904 +nd_blk +nd_btt +nd_pmem +nd_virtio +ne2k-pci +neofb +net1080 +net2272 +net2280 +net_failover +netconsole +netdevsim +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_flow_table_ipv4 +nf_flow_table_ipv6 +nf_log_arp +nf_log_bridge +nf_log_common +nf_log_ipv4 +nf_log_ipv6 +nf_log_netdev +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_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_counter +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_objref +nft_osf +nft_queue +nft_quota +nft_redir +nft_reject +nft_reject_bridge +nft_reject_inet +nft_reject_ipv4 +nft_reject_ipv6 +nft_socket +nft_synproxy +nft_tproxy +nft_tunnel +nft_xfrm +nftl +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_at_a2150 +ni_at_ao +ni_atmio +ni_atmio16d +ni_daq_700 +ni_daq_dio24 +ni_labpc +ni_labpc_common +ni_labpc_cs +ni_labpc_isadma +ni_labpc_pci +ni_mio_cs +ni_pcidio +ni_pcimio +ni_routing +ni_tio +ni_tiocmd +ni_usb6501 +nic7018_wdt +nicpf +nicstar +nicvf +nilfs2 +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 +noon010pc30 +nosy +notifier-error-inject +nouveau +nozomi +npcm750-pwm-fan +ns +ns558 +ns83820 +nsh +ntb +ntb_hw_idt +ntb_hw_intel +ntb_hw_switchtec +ntb_netdev +ntb_perf +ntb_pingpong +ntb_tool +ntb_transport +ntc_thermistor +ntfs +null_blk +nuvoton-cir +nv_tco +nvidiafb +nvme +nvme-core +nvme-fabrics +nvme-fc +nvme-loop +nvme-rdma +nvme-tcp +nvmem-rave-sp-eeprom +nvmem_qcom-spmi-sdam +nvmet +nvmet-fc +nvmet-rdma +nvmet-tcp +nvram +nxp-nci +nxp-nci_i2c +nxp-tja11xx +nxt200x +nxt6000 +objagg +ocfb +ocfs2 +ocfs2_dlm +ocfs2_dlmfs +ocfs2_nodemanager +ocfs2_stack_o2cb +ocfs2_stack_user +ocfs2_stackglue +ocrdma +of_xilinx_wdt +ofb +omfs +omninet +on20 +on26 +onenand +opa_vnic +opencores-kbd +openvswitch +oprofile +opt3001 +opticon +option +or51132 +or51211 +orangefs +orinoco +orinoco_cs +orinoco_nortel +orinoco_plx +orinoco_tmd +orinoco_usb +oti6858 +otm3225a +ov13858 +ov2640 +ov2659 +ov2680 +ov2685 +ov2740 +ov5647 +ov5670 +ov5675 +ov5695 +ov6650 +ov7251 +ov7640 +ov7670 +ov772x +ov7740 +ov8856 +ov9640 +ov9650 +overlay +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-raspberrypi-touchscreen +paride +parkbd +parman +parport +parport_ax88796 +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_pcmcia +pata_pdc2027x +pata_pdc202xx_old +pata_piccolo +pata_platform +pata_radisys +pata_rdc +pata_rz1000 +pata_sch +pata_serverworks +pata_sil680 +pata_sl82c105 +pata_triflex +pata_via +pblk +pc300too +pc87360 +pc87413_wdt +pc87427 +pcap-regulator +pcap_keys +pcap_ts +pcbc +pcd +pcengines-apuv2 +pcf50633 +pcf50633-adc +pcf50633-backlight +pcf50633-charger +pcf50633-gpio +pcf50633-input +pcf50633-regulator +pcf8574_keypad +pcf8591 +pch_udc +pci +pci-hyperv +pci-hyperv-intf +pci-pf-stub +pci-stub +pci200syn +pcips2 +pcl711 +pcl724 +pcl726 +pcl730 +pcl812 +pcl816 +pcl818 +pcm3724 +pcmad +pcmcia +pcmcia_core +pcmcia_rsrc +pcmciamtd +pcmda12 +pcmmio +pcmuio +pcnet32 +pcnet_cs +pcrypt +pcspkr +pcwd_pci +pcwd_usb +pd +pd6729 +pda_power +pdc_adma +peak_pci +peak_pciefd +peak_pcmcia +peak_usb +peaq-wmi +pegasus +pegasus_notetaker +penmount +pf +pfuze100-regulator +pg +phantom +phonet +phram +phy-bcm-kona-usb2 +phy-cpcap-usb +phy-exynos-usb2 +phy-generic +phy-gpio-vbus-usb +phy-intel-emmc +phy-isp1301 +phy-pxa-28nm-hsic +phy-pxa-28nm-usb2 +phy-qcom-usb-hs +phy-qcom-usb-hsic +phy-tahvo +phy-tusb1210 +phylink +physmap +pi3usb30532 +pi433 +pinctrl-broxton +pinctrl-cannonlake +pinctrl-cedarfork +pinctrl-da9062 +pinctrl-denverton +pinctrl-geminilake +pinctrl-icelake +pinctrl-intel +pinctrl-jasperlake +pinctrl-lewisburg +pinctrl-lynxpoint +pinctrl-madera +pinctrl-mcp23s08 +pinctrl-mcp23s08_i2c +pinctrl-mcp23s08_spi +pinctrl-sunrisepoint +pinctrl-tigerlake +ping +pistachio-internal-dac +pixcir_i2c_ts +pkcs7_test_key +pkcs8_key_parser +pktcdvd +pktgen +pl2303 +plat-ram +plat_nand +platform_lcd +plip +plusb +pluto2 +plx_dma +plx_pci +pm-notifier-error-inject +pm2fb +pm3fb +pm80xx +pmbus +pmbus_core +pmc551 +pmcraid +pms7003 +pn532_uart +pn533 +pn533_i2c +pn533_usb +pn544 +pn544_i2c +pn544_mei +pn_pep +pnd2_edac +poly1305-x86_64 +poly1305_generic +port100 +powermate +powr1220 +ppa +ppdev +ppp_async +ppp_deflate +ppp_mppe +ppp_synctty +pppoatm +pppoe +pppox +pps-gpio +pps-ldisc +pps_parport +pptp +pretimeout_panic +prism2_usb +processor_thermal_device +ps2-gpio +ps2mult +psample +psmouse +psnap +pstore_blk +pstore_zone +psxpad-spi +pt +ptp_clockmatrix +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 +pvrusb2 +pwc +pwm-beeper +pwm-cros-ec +pwm-iqs620a +pwm-lp3943 +pwm-pca9685 +pwm-regulator +pwm-twl +pwm-twl-led +pwm-vibra +pwm_bl +pxa27x_udc +pxe1610 +pxrc +qat_c3xxx +qat_c3xxxvf +qat_c62x +qat_c62xvf +qat_dh895xcc +qat_dh895xccvf +qca8k +qcaux +qcom-cpr +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_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 +qxl +r592 +r6040 +r8152 +r8169 +r8188eu +r8192e_pci +r8192u_usb +r820t +r852 +r8712u +r8723bs +r8a66597-hcd +r8a66597-udc +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-si476x +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 +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-behold +rc-behold-columbus +rc-budget-ci-old +rc-cec +rc-cinergy +rc-cinergy-1400 +rc-core +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-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-kworld-315u +rc-kworld-pc150u +rc-kworld-plus-tv-analog +rc-leadtek-y04g0051 +rc-lme2510 +rc-loopback +rc-manli +rc-medion-x10 +rc-medion-x10-digitainer +rc-medion-x10-or2x +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-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-tango +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-dvd +rc-zx-irdec +rc5t583-regulator +rcuperf +rdc321x-southbridge +rdma_cm +rdma_rxe +rdma_ucm +rdmavt +rds +rds_rdma +rds_tcp +realtek +realtek-smi +redboot +redrat3 +reed_solomon +regmap-i3c +regmap-sccb +regmap-sdw +regmap-slimbus +regmap-spmi +regmap-w1 +regulator-haptic +reiserfs +repaper +reset-ti-syscon +resistive-adc-touch +retu-mfd +retu-pwrbutton +retu_wdt +rfc1051 +rfc1201 +rfcomm +rfd77402 +rfd_ftl +rfkill-gpio +rio-scan +rio_cm +rio_mport_cdev +rionet +rivafb +rj54n1cb0c +rm3100-core +rm3100-i2c +rm3100-spi +rmd128 +rmd160 +rmd256 +rmd320 +rmi_core +rmi_i2c +rmi_smbus +rmi_spi +rmnet +rnbd-client +rnbd-server +rndis_host +rndis_wlan +rockchip +rocker +rocket +rohm_bu21023 +roles +romfs +rose +rotary_encoder +rp2 +rpcrdma +rpcsec_gss_krb5 +rpmsg_char +rpmsg_core +rpr0521 +rsi_91x +rsi_sdio +rsi_usb +rsxx +rt2400pci +rt2500pci +rt2500usb +rt2800lib +rt2800mmio +rt2800pci +rt2800usb +rt2x00lib +rt2x00mmio +rt2x00pci +rt2x00usb +rt5033 +rt5033-regulator +rt5033_battery +rt61pci +rt73usb +rt9455_charger +rtc-88pm80x +rtc-88pm860x +rtc-ab-b5ze-s3 +rtc-ab-eoz9 +rtc-ab3100 +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-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-rv8803 +rtc-rx4581 +rtc-rx6110 +rtc-rx8010 +rtc-rx8025 +rtc-rx8581 +rtc-s35390a +rtc-s5m +rtc-sd3078 +rtc-stk17ta8 +rtc-tps6586x +rtc-tps65910 +rtc-tps80031 +rtc-v3020 +rtc-wilco-ec +rtc-wm831x +rtc-wm8350 +rtc-x1205 +rtd520 +rti800 +rti802 +rtl2830 +rtl2832 +rtl2832_sdr +rtl8150 +rtl8187 +rtl8188ee +rtl818x_pci +rtl8192c-common +rtl8192ce +rtl8192cu +rtl8192de +rtl8192ee +rtl8192se +rtl8723-common +rtl8723ae +rtl8723be +rtl8821ae +rtl8xxxu +rtl_pci +rtl_usb +rtllib +rtllib_crypt_ccmp +rtllib_crypt_tkip +rtllib_crypt_wep +rtlwifi +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_8822b +rtw88_8822be +rtw88_8822c +rtw88_8822ce +rtw88_core +rtw88_pci +rx51_battery +rxrpc +s1d13xxxfb +s2250 +s2255drv +s2io +s2mpa01 +s2mps11 +s3fb +s3fwrn5 +s3fwrn5_i2c +s526 +s5c73m3 +s5h1409 +s5h1411 +s5h1420 +s5h1432 +s5k4ecgx +s5k5baf +s5k6a3 +s5k6aa +s5m8767 +s626 +s6sy761 +s921 +saa6588 +saa6752hs +saa7110 +saa7115 +saa7127 +saa7134 +saa7134-alsa +saa7134-dvb +saa7134-empress +saa7134-go7007 +saa7146 +saa7146_vv +saa7164 +saa717x +saa7185 +saa7706h +safe_serial +salsa20_generic +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 +sbni +sbp_target +sbs +sbs-battery +sbs-charger +sbs-manager +sbshc +sc1200wdt +sc16is7xx +sc92031 +sca3000 +scb2_flash +sch311x_wdt +sch5627 +sch5636 +sch56xx-common +sch_atm +sch_cake +sch_cbq +sch_cbs +sch_choke +sch_codel +sch_drr +sch_dsmark +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_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 +scif +scif_bus +scr24x_cs +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 +sdhci +sdhci-acpi +sdhci-pci +sdhci-pltfm +sdhci-xenon-driver +sdhci_f_sdh30 +sdio_uart +sdricoh_cs +seco-cec +seed +sensorhub +serial_cs +serial_ir +serio_raw +sermouse +serpent-avx-x86_64 +serpent-avx2 +serpent-sse2-x86_64 +serpent_generic +serport +ses +sf-pdma +sfc +sfc-falcon +sfp +sgi_w1 +sgp30 +sha1-ssse3 +sha256-ssse3 +sha3_generic +sha512-ssse3 +shark2 +shiftfs +sht15 +sht21 +sht3x +shtc1 +si1133 +si1145 +si2157 +si2165 +si2168 +si21xx +si4713 +si476x-core +si7005 +si7020 +sidewinder +sierra +sierra_net +sil164 +silead +sim710 +siox-bus-gpio +siox-core +sir_ir +sirf-audio-codec +sis-agp +sis190 +sis5595 +sis900 +sis_i2c +sisfb +sisusbvga +sit +siw +sja1000 +sja1000_isa +sja1000_platform +sja1105 +skd +skfp +skge +skx_edac +sky2 +sky81452 +sky81452-backlight +sky81452-regulator +sl811-hcd +sl811_cs +slcan +slg51000-regulator +slicoss +slim-qcom-ctrl +slimbus +slip +slram +sm3_generic +sm4_generic +sm501 +sm501fb +sm712fb +sm750fb +sm_common +sm_ftl +smartpqi +smb347-charger +smc +smc91c92_cs +smc_diag +smiapp +smiapp-pll +smipcie +smm665 +smsc +smsc37b787_wdt +smsc47b397 +smsc47m1 +smsc47m192 +smsc75xx +smsc911x +smsc9420 +smsc95xx +smscufx +smsdvb +smsmdtv +smssdio +smsusb +snd +snd-ac97-codec +snd-acp3x-i2s +snd-acp3x-pcm-dma +snd-acp3x-pdm-dma +snd-acp3x-rn +snd-ad1889 +snd-ak4113 +snd-ak4114 +snd-ak4117 +snd-ak4xxx-adda +snd-ali5451 +snd-aloop +snd-als300 +snd-als4000 +snd-asihpi +snd-atiixp +snd-atiixp-modem +snd-au8810 +snd-au8820 +snd-au8830 +snd-aw2 +snd-azt3328 +snd-bcd2000 +snd-bebob +snd-bt87x +snd-ca0106 +snd-cmipci +snd-compress +snd-cs4281 +snd-cs46xx +snd-cs8427 +snd-ctxfi +snd-darla20 +snd-darla24 +snd-dice +snd-dummy +snd-echo3g +snd-emu10k1 +snd-emu10k1-synth +snd-emu10k1x +snd-emux-synth +snd-ens1370 +snd-ens1371 +snd-es1938 +snd-es1968 +snd-fireface +snd-firewire-digi00x +snd-firewire-lib +snd-firewire-motu +snd-firewire-tascam +snd-fireworks +snd-fm801 +snd-gina20 +snd-gina24 +snd-hda-codec +snd-hda-codec-analog +snd-hda-codec-ca0110 +snd-hda-codec-ca0132 +snd-hda-codec-cirrus +snd-hda-codec-cmedia +snd-hda-codec-conexant +snd-hda-codec-generic +snd-hda-codec-hdmi +snd-hda-codec-idt +snd-hda-codec-realtek +snd-hda-codec-si3054 +snd-hda-codec-via +snd-hda-core +snd-hda-ext-core +snd-hda-intel +snd-hdmi-lpe-audio +snd-hdsp +snd-hdspm +snd-hrtimer +snd-hwdep +snd-i2c +snd-ice1712 +snd-ice1724 +snd-ice17xx-ak4xxx +snd-indigo +snd-indigodj +snd-indigodjx +snd-indigoio +snd-indigoiox +snd-intel-dspcfg +snd-intel-sst-acpi +snd-intel-sst-core +snd-intel-sst-pci +snd-intel8x0 +snd-intel8x0m +snd-isight +snd-korg1212 +snd-layla20 +snd-layla24 +snd-lola +snd-lx6464es +snd-maestro3 +snd-mia +snd-mixart +snd-mixer-oss +snd-mona +snd-mpu401 +snd-mpu401-uart +snd-mtpav +snd-mts64 +snd-nm256 +snd-opl3-lib +snd-opl3-synth +snd-oxfw +snd-oxygen +snd-oxygen-lib +snd-pci-acp3x +snd-pcm +snd-pcm-dmaengine +snd-pcsp +snd-pcxhr +snd-pdaudiocf +snd-portman2x4 +snd-pt2258 +snd-rawmidi +snd-riptide +snd-rme32 +snd-rme96 +snd-rme9652 +snd-rn-pci-acp3x +snd-sb-common +snd-seq +snd-seq-device +snd-seq-dummy +snd-seq-midi +snd-seq-midi-emul +snd-seq-midi-event +snd-seq-virmidi +snd-serial-u16550 +snd-skl_nau88l25_max98357a +snd-soc-63xx +snd-soc-ac97 +snd-soc-acp-da7219mx98357-mach +snd-soc-acp-rt5645-mach +snd-soc-acp-rt5682-mach +snd-soc-acpi +snd-soc-acpi-intel-match +snd-soc-adau-utils +snd-soc-adau1701 +snd-soc-adau1761 +snd-soc-adau1761-i2c +snd-soc-adau1761-spi +snd-soc-adau17x1 +snd-soc-adau7002 +snd-soc-adau7118 +snd-soc-adau7118-hw +snd-soc-adau7118-i2c +snd-soc-ak4104 +snd-soc-ak4118 +snd-soc-ak4458 +snd-soc-ak4554 +snd-soc-ak4613 +snd-soc-ak4642 +snd-soc-ak5386 +snd-soc-ak5558 +snd-soc-alc5623 +snd-soc-bd28623 +snd-soc-bt-sco +snd-soc-cml_rt1011_rt5682 +snd-soc-core +snd-soc-cros-ec-codec +snd-soc-cs35l32 +snd-soc-cs35l33 +snd-soc-cs35l34 +snd-soc-cs35l35 +snd-soc-cs35l36 +snd-soc-cs4265 +snd-soc-cs4270 +snd-soc-cs4271 +snd-soc-cs4271-i2c +snd-soc-cs4271-spi +snd-soc-cs42l42 +snd-soc-cs42l51 +snd-soc-cs42l51-i2c +snd-soc-cs42l52 +snd-soc-cs42l56 +snd-soc-cs42l73 +snd-soc-cs42xx8 +snd-soc-cs42xx8-i2c +snd-soc-cs43130 +snd-soc-cs4341 +snd-soc-cs4349 +snd-soc-cs53l30 +snd-soc-cx2072x +snd-soc-da7213 +snd-soc-da7219 +snd-soc-dmic +snd-soc-ehl-rt5660 +snd-soc-es7134 +snd-soc-es7241 +snd-soc-es8316 +snd-soc-es8328 +snd-soc-es8328-i2c +snd-soc-es8328-spi +snd-soc-fsl-asrc +snd-soc-fsl-audmix +snd-soc-fsl-easrc +snd-soc-fsl-esai +snd-soc-fsl-micfil +snd-soc-fsl-mqs +snd-soc-fsl-sai +snd-soc-fsl-spdif +snd-soc-fsl-ssi +snd-soc-gtm601 +snd-soc-hdac-hda +snd-soc-hdac-hdmi +snd-soc-hdmi-codec +snd-soc-imx-audmux +snd-soc-inno-rk3036 +snd-soc-kbl_da7219_max98357a +snd-soc-kbl_da7219_max98927 +snd-soc-kbl_rt5660 +snd-soc-kbl_rt5663_max98927 +snd-soc-kbl_rt5663_rt5514_max98927 +snd-soc-max9759 +snd-soc-max98088 +snd-soc-max98090 +snd-soc-max98357a +snd-soc-max98373 +snd-soc-max98390 +snd-soc-max98504 +snd-soc-max9860 +snd-soc-max9867 +snd-soc-max98927 +snd-soc-msm8916-analog +snd-soc-msm8916-digital +snd-soc-mt6351 +snd-soc-mt6358 +snd-soc-mt6660 +snd-soc-nau8540 +snd-soc-nau8810 +snd-soc-nau8822 +snd-soc-nau8824 +snd-soc-nau8825 +snd-soc-pcm1681 +snd-soc-pcm1789-codec +snd-soc-pcm1789-i2c +snd-soc-pcm179x-codec +snd-soc-pcm179x-i2c +snd-soc-pcm179x-spi +snd-soc-pcm186x +snd-soc-pcm186x-i2c +snd-soc-pcm186x-spi +snd-soc-pcm3060 +snd-soc-pcm3060-i2c +snd-soc-pcm3060-spi +snd-soc-pcm3168a +snd-soc-pcm3168a-i2c +snd-soc-pcm3168a-spi +snd-soc-pcm512x +snd-soc-pcm512x-i2c +snd-soc-pcm512x-spi +snd-soc-rk3328 +snd-soc-rl6231 +snd-soc-rl6347a +snd-soc-rt1011 +snd-soc-rt1015 +snd-soc-rt1308-sdw +snd-soc-rt286 +snd-soc-rt298 +snd-soc-rt5514 +snd-soc-rt5514-spi +snd-soc-rt5616 +snd-soc-rt5631 +snd-soc-rt5640 +snd-soc-rt5645 +snd-soc-rt5651 +snd-soc-rt5660 +snd-soc-rt5663 +snd-soc-rt5670 +snd-soc-rt5677 +snd-soc-rt5677-spi +snd-soc-rt5682 +snd-soc-rt5682-i2c +snd-soc-rt5682-sdw +snd-soc-rt700 +snd-soc-rt711 +snd-soc-rt715 +snd-soc-sgtl5000 +snd-soc-si476x +snd-soc-sigmadsp +snd-soc-sigmadsp-i2c +snd-soc-sigmadsp-regmap +snd-soc-simple-amplifier +snd-soc-simple-card +snd-soc-simple-card-utils +snd-soc-skl_hda_dsp +snd-soc-skl_nau88l25_ssm4567 +snd-soc-skl_rt286 +snd-soc-sof_da7219_max98373 +snd-soc-sof_rt5682 +snd-soc-spdif-rx +snd-soc-spdif-tx +snd-soc-ssm2305 +snd-soc-ssm2602 +snd-soc-ssm2602-i2c +snd-soc-ssm2602-spi +snd-soc-ssm4567 +snd-soc-sst-acpi +snd-soc-sst-atom-hifi2-platform +snd-soc-sst-bdw-rt5650-mach +snd-soc-sst-bdw-rt5677-mach +snd-soc-sst-broadwell +snd-soc-sst-bxt-da7219_max98357a +snd-soc-sst-bxt-rt298 +snd-soc-sst-byt-cht-cx2072x +snd-soc-sst-byt-cht-da7213 +snd-soc-sst-byt-cht-es8316 +snd-soc-sst-bytcr-rt5640 +snd-soc-sst-bytcr-rt5651 +snd-soc-sst-cht-bsw-max98090_ti +snd-soc-sst-cht-bsw-nau8824 +snd-soc-sst-cht-bsw-rt5645 +snd-soc-sst-cht-bsw-rt5672 +snd-soc-sst-dsp +snd-soc-sst-firmware +snd-soc-sst-glk-rt5682_max98357a +snd-soc-sst-haswell +snd-soc-sst-haswell-pcm +snd-soc-sst-ipc +snd-soc-sst-sof-pcm512x +snd-soc-sst-sof-wm8804 +snd-soc-sta32x +snd-soc-sta350 +snd-soc-sti-sas +snd-soc-tas2552 +snd-soc-tas2562 +snd-soc-tas2770 +snd-soc-tas5086 +snd-soc-tas571x +snd-soc-tas5720 +snd-soc-tas6424 +snd-soc-tda7419 +snd-soc-tfa9879 +snd-soc-tlv320adcx140 +snd-soc-tlv320aic23 +snd-soc-tlv320aic23-i2c +snd-soc-tlv320aic23-spi +snd-soc-tlv320aic31xx +snd-soc-tlv320aic32x4 +snd-soc-tlv320aic32x4-i2c +snd-soc-tlv320aic32x4-spi +snd-soc-tlv320aic3x +snd-soc-tpa6130a2 +snd-soc-ts3a227e +snd-soc-tscs42xx +snd-soc-tscs454 +snd-soc-uda1334 +snd-soc-wcd9335 +snd-soc-wcd934x +snd-soc-wm8510 +snd-soc-wm8523 +snd-soc-wm8524 +snd-soc-wm8580 +snd-soc-wm8711 +snd-soc-wm8728 +snd-soc-wm8731 +snd-soc-wm8737 +snd-soc-wm8741 +snd-soc-wm8750 +snd-soc-wm8753 +snd-soc-wm8770 +snd-soc-wm8776 +snd-soc-wm8782 +snd-soc-wm8804 +snd-soc-wm8804-i2c +snd-soc-wm8804-spi +snd-soc-wm8903 +snd-soc-wm8904 +snd-soc-wm8960 +snd-soc-wm8962 +snd-soc-wm8974 +snd-soc-wm8978 +snd-soc-wm8985 +snd-soc-wsa881x +snd-soc-xlnx-formatter-pcm +snd-soc-xlnx-i2s +snd-soc-xlnx-spdif +snd-soc-xtfpga-i2s +snd-soc-zl38060 +snd-soc-zx-aud96p22 +snd-sof +snd-sof-acpi +snd-sof-intel-byt +snd-sof-intel-hda +snd-sof-intel-hda-common +snd-sof-intel-ipc +snd-sof-pci +snd-sof-xtensa-dsp +snd-sonicvibes +snd-timer +snd-trident +snd-ua101 +snd-usb-6fire +snd-usb-audio +snd-usb-caiaq +snd-usb-hiface +snd-usb-line6 +snd-usb-pod +snd-usb-podhd +snd-usb-toneport +snd-usb-us122l +snd-usb-usx2y +snd-usb-variax +snd-usbmidi-lib +snd-util-mem +snd-via82xx +snd-via82xx-modem +snd-virmidi +snd-virtuoso +snd-vx-lib +snd-vx222 +snd-vxpocket +snd-ymfpci +snd_xen_front +snic +snps_udc_core +soc_button_array +softdog +softing +softing_cs +solo6x10 +solos-pci +sony-btf-mpx +sony-laptop +soundcore +soundwire-bus +soundwire-cadence +soundwire-intel +soundwire-qcom +sp2 +sp5100_tco +sp8870 +sp887x +spaceball +spaceorb +sparse-keymap +spcp8x5 +speakup +speakup_acntsa +speakup_apollo +speakup_audptr +speakup_bns +speakup_decext +speakup_dectlk +speakup_dummy +speakup_ltlk +speakup_soft +speakup_spkout +speakup_txprt +spectrum_cs +speedfax +speedstep-lib +speedtch +spi-altera +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-lm70llp +spi-loopback-test +spi-mux +spi-mxic +spi-nor +spi-nxp-fspi +spi-oc-tiny +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 +sr030pc30 +sr9700 +sr9800 +srf04 +srf08 +ssb +ssb-hcd +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_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 +stkwebcam +stm_console +stm_core +stm_ftrace +stm_heartbeat +stm_p_basic +stm_p_sys-t +stmfts +stmmac +stmmac-pci +stmmac-platform +stowaway +stp +streamzap +streebog_generic +stts751 +stv0288 +stv0297 +stv0299 +stv0367 +stv0900 +stv090x +stv0910 +stv6110 +stv6110x +stv6111 +stx104 +sundance +sungem +sungem_phy +sunhme +suni +sunkbd +sunrpc +sur40 +surface3-wmi +surface3_button +surface3_power +surface3_spi +surfacepro3_button +svgalib +switchtec +sx8 +sx8654 +sx9310 +sx9500 +sym53c500_cs +sym53c8xx +symbolserial +synaptics_i2c +synaptics_usb +synclink +synclink_cs +synclink_gt +synclinkmp +syscopyarea +sysfillrect +sysimgblt +system76_acpi +sysv +t5403 +tag_8021q +tag_ar9331 +tag_brcm +tag_dsa +tag_edsa +tag_gswip +tag_ksz +tag_lan9303 +tag_mtk +tag_ocelot +tag_qca +tag_sja1105 +tag_trailer +tap +target_core_file +target_core_iblock +target_core_mod +target_core_pscsi +target_core_user +tc-dwc-g210 +tc-dwc-g210-pci +tc-dwc-g210-pltfrm +tc358743 +tc654 +tc74 +tc90522 +tca6416-keypad +tca8418_keypad +tcan4x5x +tcm_fc +tcm_loop +tcm_qla2xxx +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_rt1711h +tcpm +tcrypt +tcs3414 +tcs3472 +tda10021 +tda10023 +tda10048 +tda1004x +tda10071 +tda10086 +tda18212 +tda18218 +tda18250 +tda18271 +tda18271c2dd +tda1997x +tda665x +tda7432 +tda8083 +tda8261 +tda826x +tda827x +tda8290 +tda9840 +tda9887 +tda9950 +tda998x +tdfxfb +tdo24m +tea +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 +tgr192 +thermal-generic-adc +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-ads7950 +ti-dac082s085 +ti-dac5571 +ti-dac7311 +ti-dac7612 +ti-lmu +ti-tlc4541 +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 +tm6000 +tm6000-alsa +tm6000-dvb +tmdc +tmp006 +tmp007 +tmp102 +tmp103 +tmp108 +tmp401 +tmp421 +tmp513 +topstar-laptop +torture +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_key_parser +tpm_nsc +tpm_st33zp24 +tpm_st33zp24_i2c +tpm_st33zp24_spi +tpm_tis_spi +tpm_vtpm_proxy +tps40422 +tps51632-regulator +tps53679 +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 +tps6598x +tps80031-regulator +tqmx86 +tqmx86_wdt +trace-printk +trancevibrator +trf7970a +tridentfb +ts2020 +ts_bm +ts_fsm +ts_kmp +tsc2004 +tsc2005 +tsc2007 +tsc200x-core +tsc40 +tsi568 +tsi57x +tsi721_mport +tsl2550 +tsl2563 +tsl2583 +tsl2772 +tsl4531 +tsys01 +tsys02d +ttm +ttpci-eeprom +ttusb_dec +ttusbdecfe +ttusbir +ttynull +tua6100 +tua9001 +tulip +tuner +tuner-simple +tuner-types +tuner-xc2028 +tunnel4 +tunnel6 +turbografx +tvaudio +tveeprom +tvp514x +tvp5150 +tvp7002 +tw2804 +tw5864 +tw68 +tw686x +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 +typec +typec_displayport +typec_nvidia +typec_ucsi +typhoon +u132-hcd +uPD60620 +uPD98402 +u_audio +u_ether +u_serial +uacce +uartlite +uas +ubi +ubifs +ubuntu-host +ucan +ucb1400_core +ucb1400_ts +ucd9000 +ucd9200 +ucsi_acpi +ucsi_ccg +uda1342 +udc-core +udf +udl +udlfb +udp_diag +udp_tunnel +ueagle-atm +ufs +ufshcd-core +ufshcd-dwc +ufshcd-pci +ufshcd-pltfrm +uhid +uio +uio_aec +uio_cif +uio_dmem_genirq +uio_hv_generic +uio_mf624 +uio_netx +uio_pci_generic +uio_pdrv_genirq +uio_pruss +uio_sercos3 +uleds +uli526x +ulpi +umem +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_midi +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_uac1 +usb_f_uac1_legacy +usb_f_uac2 +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 +usbtv +usbvision +usdhi6rol0 +userio +userspace-consumer +ushc +usnic_verbs +uss720 +uv_mmtimer +uvcvideo +uvesafb +v4l2-dv-timings +v4l2-flash-led-class +v4l2-fwnode +v4l2-mem2mem +v4l2-tpg +vboxguest +vboxsf +vboxvideo +vcan +vcnl3020 +vcnl4000 +vcnl4035 +vdpa +vdpa_sim +veml6030 +veml6070 +ves1820 +ves1x93 +veth +vfio_mdev +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 +videobuf-vmalloc +videobuf2-common +videobuf2-dma-contig +videobuf2-dma-sg +videobuf2-dvb +videobuf2-memops +videobuf2-v4l2 +videobuf2-vmalloc +videodev +vim2m +vimc +viperboard +viperboard_adc +virt-dma +virt_wifi +virtio-gpu +virtio-rng +virtio_blk +virtio_crypto +virtio_input +virtio_mem +virtio_net +virtio_pmem +virtio_rpmsg_bus +virtio_scsi +virtio_vdpa +virtiofs +virtual +visor +visorbus +visorhba +visorinput +visornic +vitesse +vitesse-vsc73xx-core +vitesse-vsc73xx-platform +vitesse-vsc73xx-spi +vivid +vkms +vl53l0x-i2c +vl6180 +vmac +vmd +vme_ca91cx42 +vme_fake +vme_tsi148 +vme_user +vme_vmivme7805 +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 +vop +vop_bus +vp27smpx +vport-geneve +vport-gre +vport-vxlan +vpx3220 +vrf +vringh +vs6624 +vsock +vsock_diag +vsock_loopback +vsockmon +vsxxxaa +vt1211 +vt6655_stage +vt6656_stage +vt8231 +vt8623fb +vub300 +vx855 +vxcan +vxge +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 +wilc1000 +wilc1000-sdio +wilc1000-spi +wilco-charger +wilco_ec +wilco_ec_debugfs +wilco_ec_events +wilco_ec_telem +wimax +winbond-840 +winbond-cir +wire +wireguard +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 +wm97xx-ts +wmi +wmi-bmof +wp512 +x25 +x25_asy +x38_edac +x86_pkg_temp_thermal +x_tables +xbox_remote +xc4000 +xc5000 +xcbc +xdpe12284 +xen-blkback +xen-evtchn +xen-fbfront +xen-front-pgdir-shbuf +xen-gntalloc +xen-gntdev +xen-kbdfront +xen-netback +xen-pciback +xen-pcifront +xen-privcmd +xen-scsiback +xen-scsifront +xen-tpmfront +xen_wdt +xenfs +xfrm4_tunnel +xfrm6_tunnel +xfrm_algo +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_gmii2rgmii +xilinx_sdfec +xillybus_core +xillybus_pcie +xirc2ps_cs +xircom_cb +xlnx_vcu +xor +xp +xpad +xpc +xpnet +xr_usb_serial_common +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 +yealink +yellowfin +yenta_socket +yurex +z3fold +zatm +zaurus +zavl +zcommon +zd1201 +zd1211rw +zd1301 +zd1301_demod +zet6223 +zforce_ts +zfs +zhenhua +ziirave_wdt +zl10036 +zl10039 +zl10353 +zl6100 +zlua +znvpair +zonefs +zopt2201 +zpa2326 +zpa2326_i2c +zpa2326_spi +zr364xx +zram +zstd +zunicode +zx-tdm --- linux-azure-5.8-5.8.0.orig/debian.master/abi/5.8.0-50.56/amd64/generic.retpoline +++ linux-azure-5.8-5.8.0/debian.master/abi/5.8.0-50.56/amd64/generic.retpoline @@ -0,0 +1 @@ +# retpoline v1.0 --- linux-azure-5.8-5.8.0.orig/debian.master/abi/5.8.0-50.56/amd64/lowlatency +++ linux-azure-5.8-5.8.0/debian.master/abi/5.8.0-50.56/amd64/lowlatency @@ -0,0 +1,24524 @@ +EXPORT_SYMBOL arch/x86/crypto/blake2s-x86_64 0x23aa18fe blake2s_compress_arch +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 0x7c904efe poly1305_init_arch +EXPORT_SYMBOL arch/x86/crypto/poly1305-x86_64 0xd9ec23eb poly1305_update_arch +EXPORT_SYMBOL arch/x86/crypto/poly1305-x86_64 0xfaeb41b2 poly1305_final_arch +EXPORT_SYMBOL arch/x86/kvm/kvm 0x4ff7c522 kvm_cpu_has_pending_timer +EXPORT_SYMBOL crypto/ecc 0x16e410ff vli_from_be64 +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 0x9263b417 ecc_point_mult_shamir +EXPORT_SYMBOL crypto/ecc 0x92668805 vli_cmp +EXPORT_SYMBOL crypto/ecc 0x9f6efabd vli_sub +EXPORT_SYMBOL crypto/ecc 0xa76b31a2 crypto_ecdh_shared_secret +EXPORT_SYMBOL crypto/ecc 0xd6315f31 ecc_gen_privkey +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 0x36a0eea5 crypto_nhpoly1305_update_helper +EXPORT_SYMBOL crypto/nhpoly1305 0x585f61fc crypto_nhpoly1305_setkey +EXPORT_SYMBOL crypto/nhpoly1305 0x8964105b crypto_nhpoly1305_final_helper +EXPORT_SYMBOL crypto/nhpoly1305 0x8c26d2ab crypto_nhpoly1305_update +EXPORT_SYMBOL crypto/nhpoly1305 0x8f2bfcfb crypto_nhpoly1305_final +EXPORT_SYMBOL crypto/nhpoly1305 0xdb8bb32b crypto_nhpoly1305_init +EXPORT_SYMBOL crypto/sha3_generic 0x3b6eb417 crypto_sha3_final +EXPORT_SYMBOL crypto/sha3_generic 0xbf888019 crypto_sha3_init +EXPORT_SYMBOL crypto/sha3_generic 0xed263b42 crypto_sha3_update +EXPORT_SYMBOL crypto/sm3_generic 0x7e1a88bb crypto_sm3_update +EXPORT_SYMBOL crypto/sm3_generic 0x9df26755 crypto_sm3_finup +EXPORT_SYMBOL crypto/xor 0x5b6c00e6 xor_blocks +EXPORT_SYMBOL drivers/acpi/nfit/nfit 0xceec93be to_nfit_uuid +EXPORT_SYMBOL drivers/acpi/video 0x13484007 acpi_video_get_edid +EXPORT_SYMBOL drivers/acpi/video 0x6de7f7ff acpi_video_get_backlight_type +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 0x8826c13b acpi_video_register +EXPORT_SYMBOL drivers/acpi/video 0xb2f918f4 acpi_video_get_levels +EXPORT_SYMBOL drivers/acpi/video 0xe92ca535 acpi_video_set_dmi_backlight_type +EXPORT_SYMBOL drivers/atm/suni 0xf9ddcc3c suni_init +EXPORT_SYMBOL drivers/atm/uPD98402 0x0b6b8662 uPD98402_init +EXPORT_SYMBOL drivers/bcma/bcma 0xf94c17da bcma_core_dma_translation +EXPORT_SYMBOL drivers/bcma/bcma 0xfa7faa1d 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/block/paride/paride 0x071afa95 pi_read_regr +EXPORT_SYMBOL drivers/block/paride/paride 0x4267110a pi_register_driver +EXPORT_SYMBOL drivers/block/paride/paride 0x5ee3df1c pi_do_claimed +EXPORT_SYMBOL drivers/block/paride/paride 0x856a21a8 paride_register +EXPORT_SYMBOL drivers/block/paride/paride 0x8bd067a4 pi_write_block +EXPORT_SYMBOL drivers/block/paride/paride 0x9195307d pi_connect +EXPORT_SYMBOL drivers/block/paride/paride 0x91a9260b pi_release +EXPORT_SYMBOL drivers/block/paride/paride 0x9a95826c paride_unregister +EXPORT_SYMBOL drivers/block/paride/paride 0xb0bf75cd pi_disconnect +EXPORT_SYMBOL drivers/block/paride/paride 0xb21ba07d pi_unregister_driver +EXPORT_SYMBOL drivers/block/paride/paride 0xc2cde180 pi_write_regr +EXPORT_SYMBOL drivers/block/paride/paride 0xd21640e9 pi_schedule_claimed +EXPORT_SYMBOL drivers/block/paride/paride 0xd725b335 pi_read_block +EXPORT_SYMBOL drivers/block/paride/paride 0xecee588f pi_init +EXPORT_SYMBOL drivers/bluetooth/btbcm 0x2b69f4c6 btbcm_patchram +EXPORT_SYMBOL drivers/bluetooth/btrsi 0x98d9e196 rsi_bt_ops +EXPORT_SYMBOL drivers/bus/mhi/core/mhi 0x1e6b4328 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 0x230094ac ipmi_smi_watchdog_pretimeout +EXPORT_SYMBOL drivers/char/ipmi/ipmi_msghandler 0x31cab048 ipmi_smi_msg_received +EXPORT_SYMBOL drivers/char/ipmi/ipmi_msghandler 0x40f2b10c ipmi_alloc_smi_msg +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 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 0xa678b53a ipmi_add_smi +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 0xcf7fd9e6 ipmi_smi_watcher_register +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 0xe45fe39d ipmi_smi_watcher_unregister +EXPORT_SYMBOL drivers/char/ipmi/ipmi_msghandler 0xe4f4665b ipmi_validate_addr +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 0xfc2fa39b ipmi_get_smi_info +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 0x2b1fbdd7 st33zp24_pm_suspend +EXPORT_SYMBOL drivers/char/tpm/st33zp24/tpm_st33zp24 0x55e9a1ea st33zp24_pm_resume +EXPORT_SYMBOL drivers/char/tpm/st33zp24/tpm_st33zp24 0xa77a5a88 st33zp24_remove +EXPORT_SYMBOL drivers/char/tpm/st33zp24/tpm_st33zp24 0xae4a5056 st33zp24_probe +EXPORT_SYMBOL drivers/char/xillybus/xillybus_core 0x25978d50 xillybus_isr +EXPORT_SYMBOL drivers/char/xillybus/xillybus_core 0x4b1baaee xillybus_init_endpoint +EXPORT_SYMBOL drivers/char/xillybus/xillybus_core 0x5a1b2e60 xillybus_endpoint_discovery +EXPORT_SYMBOL drivers/char/xillybus/xillybus_core 0x9f7d6abb xillybus_endpoint_remove +EXPORT_SYMBOL drivers/crypto/atmel-i2c 0x52111ae7 atmel_i2c_enqueue +EXPORT_SYMBOL drivers/crypto/atmel-i2c 0x5d63c8ba atmel_i2c_send_receive +EXPORT_SYMBOL drivers/crypto/atmel-i2c 0x80a11b1d atmel_i2c_init_read_cmd +EXPORT_SYMBOL drivers/crypto/atmel-i2c 0xc71ed50c atmel_i2c_init_genkey_cmd +EXPORT_SYMBOL drivers/crypto/atmel-i2c 0xcb32f76a atmel_i2c_probe +EXPORT_SYMBOL drivers/crypto/atmel-i2c 0xf283e995 atmel_i2c_init_random_cmd +EXPORT_SYMBOL drivers/crypto/atmel-i2c 0xfaab573f atmel_i2c_init_ecdh_cmd +EXPORT_SYMBOL drivers/crypto/ccp/ccp 0x47d3c97f psp_check_tee_status +EXPORT_SYMBOL drivers/crypto/ccp/ccp 0xaa04056c psp_tee_process_cmd +EXPORT_SYMBOL drivers/firewire/firewire-core 0x0bc6094c fw_core_remove_descriptor +EXPORT_SYMBOL drivers/firewire/firewire-core 0x1b8f3b47 fw_send_request +EXPORT_SYMBOL drivers/firewire/firewire-core 0x1d511c30 fw_device_enable_phys_dma +EXPORT_SYMBOL drivers/firewire/firewire-core 0x24fbf1ff fw_core_add_address_handler +EXPORT_SYMBOL drivers/firewire/firewire-core 0x2885fec5 fw_get_request_speed +EXPORT_SYMBOL drivers/firewire/firewire-core 0x3660d3e1 fw_send_response +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 0x42b436bf fw_iso_buffer_destroy +EXPORT_SYMBOL drivers/firewire/firewire-core 0x468c4636 fw_cancel_transaction +EXPORT_SYMBOL drivers/firewire/firewire-core 0x6dc50487 fw_csr_string +EXPORT_SYMBOL drivers/firewire/firewire-core 0x78220b55 fw_iso_buffer_init +EXPORT_SYMBOL drivers/firewire/firewire-core 0x7a0ddb2d fw_bus_type +EXPORT_SYMBOL drivers/firewire/firewire-core 0x7d4a57cf fw_iso_context_create +EXPORT_SYMBOL drivers/firewire/firewire-core 0x80e55755 fw_run_transaction +EXPORT_SYMBOL drivers/firewire/firewire-core 0x86468d44 fw_rcode_string +EXPORT_SYMBOL drivers/firewire/firewire-core 0x910cba41 fw_iso_context_destroy +EXPORT_SYMBOL drivers/firewire/firewire-core 0x91a1d66c fw_core_remove_card +EXPORT_SYMBOL drivers/firewire/firewire-core 0x91e7a8c7 fw_core_handle_request +EXPORT_SYMBOL drivers/firewire/firewire-core 0x9e81bbf5 fw_schedule_bus_reset +EXPORT_SYMBOL drivers/firewire/firewire-core 0xa035f1e0 fw_card_initialize +EXPORT_SYMBOL drivers/firewire/firewire-core 0xa52a2b02 fw_core_remove_address_handler +EXPORT_SYMBOL drivers/firewire/firewire-core 0xa724788a fw_iso_context_start +EXPORT_SYMBOL drivers/firewire/firewire-core 0xaedf84ce fw_high_memory_region +EXPORT_SYMBOL drivers/firewire/firewire-core 0xbf3e9b46 fw_card_add +EXPORT_SYMBOL drivers/firewire/firewire-core 0xc7068490 fw_core_handle_bus_reset +EXPORT_SYMBOL drivers/firewire/firewire-core 0xc7b89d62 fw_iso_context_queue_flush +EXPORT_SYMBOL drivers/firewire/firewire-core 0xccf29d53 fw_iso_resource_manage +EXPORT_SYMBOL drivers/firewire/firewire-core 0xda38d775 fw_iso_context_queue +EXPORT_SYMBOL drivers/firewire/firewire-core 0xdff81dd9 fw_core_handle_response +EXPORT_SYMBOL drivers/firewire/firewire-core 0xe3fde125 fw_csr_iterator_next +EXPORT_SYMBOL drivers/firewire/firewire-core 0xe4e4d1ca fw_fill_response +EXPORT_SYMBOL drivers/firewire/firewire-core 0xe80e5087 fw_csr_iterator_init +EXPORT_SYMBOL drivers/firewire/firewire-core 0xf90c1849 fw_iso_context_stop +EXPORT_SYMBOL drivers/firewire/firewire-core 0xfe658472 fw_iso_context_flush_completions +EXPORT_SYMBOL drivers/gpu/drm/drm 0x00473aec drm_poll +EXPORT_SYMBOL drivers/gpu/drm/drm 0x00cf87ea drm_i2c_encoder_commit +EXPORT_SYMBOL drivers/gpu/drm/drm 0x030c0dbc drm_handle_vblank +EXPORT_SYMBOL drivers/gpu/drm/drm 0x03c63897 __drm_get_edid_firmware_path +EXPORT_SYMBOL drivers/gpu/drm/drm 0x03cb73cc drm_property_create_signed_range +EXPORT_SYMBOL drivers/gpu/drm/drm 0x0406cbb4 drm_atomic_bridge_chain_pre_enable +EXPORT_SYMBOL drivers/gpu/drm/drm 0x04b43165 drm_gem_shmem_get_pages +EXPORT_SYMBOL drivers/gpu/drm/drm 0x053cfeb2 drm_bridge_chain_enable +EXPORT_SYMBOL drivers/gpu/drm/drm 0x0579aa45 drm_ioctl_permit +EXPORT_SYMBOL drivers/gpu/drm/drm 0x059e8318 drm_mode_parse_command_line_for_connector +EXPORT_SYMBOL drivers/gpu/drm/drm 0x05a3cd13 drm_hdmi_infoframe_set_hdr_metadata +EXPORT_SYMBOL drivers/gpu/drm/drm 0x060ca982 drm_gem_dmabuf_vmap +EXPORT_SYMBOL drivers/gpu/drm/drm 0x070b28aa drm_ht_remove_item +EXPORT_SYMBOL drivers/gpu/drm/drm 0x0712e21d drm_edid_get_monitor_name +EXPORT_SYMBOL drivers/gpu/drm/drm 0x07a37b15 drm_property_blob_get +EXPORT_SYMBOL drivers/gpu/drm/drm 0x07f88521 drm_edid_is_valid +EXPORT_SYMBOL drivers/gpu/drm/drm 0x07fb449a drm_vma_offset_manager_destroy +EXPORT_SYMBOL drivers/gpu/drm/drm 0x089f55d5 drm_add_edid_modes +EXPORT_SYMBOL drivers/gpu/drm/drm 0x08c36efa drm_gem_shmem_unpin +EXPORT_SYMBOL drivers/gpu/drm/drm 0x0a13fbaf drm_syncobj_get_handle +EXPORT_SYMBOL drivers/gpu/drm/drm 0x0a72f765 drm_clflush_virt_range +EXPORT_SYMBOL drivers/gpu/drm/drm 0x0b8b250b drm_calc_timestamping_constants +EXPORT_SYMBOL drivers/gpu/drm/drm 0x0dee1c9a drm_match_cea_mode +EXPORT_SYMBOL drivers/gpu/drm/drm 0x0fd60df2 drm_get_connector_status_name +EXPORT_SYMBOL drivers/gpu/drm/drm 0x1018c0fe drm_any_plane_has_format +EXPORT_SYMBOL drivers/gpu/drm/drm 0x10622ab2 drm_property_create_bitmask +EXPORT_SYMBOL drivers/gpu/drm/drm 0x107742a9 drm_get_subpixel_order_name +EXPORT_SYMBOL drivers/gpu/drm/drm 0x10ac58ec drm_mode_create_aspect_ratio_property +EXPORT_SYMBOL drivers/gpu/drm/drm 0x10c62b61 __drm_printfn_debug +EXPORT_SYMBOL drivers/gpu/drm/drm 0x115a35ed drm_atomic_state_clear +EXPORT_SYMBOL drivers/gpu/drm/drm 0x117a83d1 drm_master_internal_acquire +EXPORT_SYMBOL drivers/gpu/drm/drm 0x119cd174 drm_modeset_backoff +EXPORT_SYMBOL drivers/gpu/drm/drm 0x11abc075 drm_crtc_vblank_off +EXPORT_SYMBOL drivers/gpu/drm/drm 0x11b9567a drm_vma_node_is_allowed +EXPORT_SYMBOL drivers/gpu/drm/drm 0x127a8c6b drm_flip_work_queue +EXPORT_SYMBOL drivers/gpu/drm/drm 0x12c0f182 drm_i2c_encoder_save +EXPORT_SYMBOL drivers/gpu/drm/drm 0x13c894f1 drm_plane_force_disable +EXPORT_SYMBOL drivers/gpu/drm/drm 0x13e14103 drm_mode_equal_no_clocks_no_stereo +EXPORT_SYMBOL drivers/gpu/drm/drm 0x14f4bd62 drmm_kfree +EXPORT_SYMBOL drivers/gpu/drm/drm 0x1586d8ae drm_compat_ioctl +EXPORT_SYMBOL drivers/gpu/drm/drm 0x159cdf2f drm_mode_create_tv_margin_properties +EXPORT_SYMBOL drivers/gpu/drm/drm 0x15d8aa41 __drm_printfn_seq_file +EXPORT_SYMBOL drivers/gpu/drm/drm 0x1616dfc5 drm_writeback_signal_completion +EXPORT_SYMBOL drivers/gpu/drm/drm 0x16ac2597 drm_printf +EXPORT_SYMBOL drivers/gpu/drm/drm 0x16e3ae8b drm_connector_set_link_status_property +EXPORT_SYMBOL drivers/gpu/drm/drm 0x16eb0191 drm_framebuffer_remove +EXPORT_SYMBOL drivers/gpu/drm/drm 0x17e0cfcf drm_event_cancel_free +EXPORT_SYMBOL drivers/gpu/drm/drm 0x18632f2d drm_debugfs_remove_files +EXPORT_SYMBOL drivers/gpu/drm/drm 0x19137f33 drm_connector_init +EXPORT_SYMBOL drivers/gpu/drm/drm 0x1a411479 drm_syncobj_free +EXPORT_SYMBOL drivers/gpu/drm/drm 0x1a9093b0 drm_gem_cma_prime_import_sg_table_vmap +EXPORT_SYMBOL drivers/gpu/drm/drm 0x1afaf015 drm_hdmi_avi_infoframe_colorspace +EXPORT_SYMBOL drivers/gpu/drm/drm 0x1b286ab6 drm_crtc_vblank_reset +EXPORT_SYMBOL drivers/gpu/drm/drm 0x1ccd2b18 drm_agp_release +EXPORT_SYMBOL drivers/gpu/drm/drm 0x1d02f7c7 drm_agp_unbind +EXPORT_SYMBOL drivers/gpu/drm/drm 0x1d9dabff drm_panel_enable +EXPORT_SYMBOL drivers/gpu/drm/drm 0x1f7f2831 drm_atomic_add_affected_planes +EXPORT_SYMBOL drivers/gpu/drm/drm 0x1fc4b7c9 drm_plane_create_alpha_property +EXPORT_SYMBOL drivers/gpu/drm/drm 0x20cf6f93 drm_gem_shmem_vunmap +EXPORT_SYMBOL drivers/gpu/drm/drm 0x20e9b253 drm_client_framebuffer_create +EXPORT_SYMBOL drivers/gpu/drm/drm 0x2183c08c drm_mm_scan_add_block +EXPORT_SYMBOL drivers/gpu/drm/drm 0x21d541eb drm_flip_work_queue_task +EXPORT_SYMBOL drivers/gpu/drm/drm 0x226eb8c6 drm_bridge_chain_mode_fixup +EXPORT_SYMBOL drivers/gpu/drm/drm 0x230b70e7 drm_crtc_from_index +EXPORT_SYMBOL drivers/gpu/drm/drm 0x23a60ae2 drm_dev_init +EXPORT_SYMBOL drivers/gpu/drm/drm 0x23cd1a0a drm_atomic_set_fb_for_plane +EXPORT_SYMBOL drivers/gpu/drm/drm 0x23e51cde drm_connector_init_with_ddc +EXPORT_SYMBOL drivers/gpu/drm/drm 0x242d6577 drm_hdmi_avi_infoframe_from_display_mode +EXPORT_SYMBOL drivers/gpu/drm/drm 0x25147f48 drm_atomic_nonblocking_commit +EXPORT_SYMBOL drivers/gpu/drm/drm 0x2532689b drm_mode_is_420 +EXPORT_SYMBOL drivers/gpu/drm/drm 0x2598e32a drm_mode_validate_ycbcr420 +EXPORT_SYMBOL drivers/gpu/drm/drm 0x25daad93 __drm_mm_interval_first +EXPORT_SYMBOL drivers/gpu/drm/drm 0x25f8e451 drm_gem_create_mmap_offset +EXPORT_SYMBOL drivers/gpu/drm/drm 0x26561789 drm_get_edid_switcheroo +EXPORT_SYMBOL drivers/gpu/drm/drm 0x2754dad8 drm_mm_reserve_node +EXPORT_SYMBOL drivers/gpu/drm/drm 0x27640057 drm_release +EXPORT_SYMBOL drivers/gpu/drm/drm 0x2930c67b drm_connector_attach_tv_margin_properties +EXPORT_SYMBOL drivers/gpu/drm/drm 0x29567b67 devm_drm_dev_init +EXPORT_SYMBOL drivers/gpu/drm/drm 0x29f078d1 drm_mode_legacy_fb_format +EXPORT_SYMBOL drivers/gpu/drm/drm 0x2a962499 drm_mm_scan_init_with_range +EXPORT_SYMBOL drivers/gpu/drm/drm 0x2addbf58 drm_atomic_add_affected_connectors +EXPORT_SYMBOL drivers/gpu/drm/drm 0x2ae0bfea drm_vma_offset_lookup_locked +EXPORT_SYMBOL drivers/gpu/drm/drm 0x2b0f6618 drm_panel_of_backlight +EXPORT_SYMBOL drivers/gpu/drm/drm 0x2bb7ada0 drm_bridge_chain_disable +EXPORT_SYMBOL drivers/gpu/drm/drm 0x2c17b750 drm_connector_list_iter_end +EXPORT_SYMBOL drivers/gpu/drm/drm 0x2c5653c7 drm_noop +EXPORT_SYMBOL drivers/gpu/drm/drm 0x2d50570f drm_rect_calc_hscale +EXPORT_SYMBOL drivers/gpu/drm/drm 0x2dd70103 drm_mode_create_hdmi_colorspace_property +EXPORT_SYMBOL drivers/gpu/drm/drm 0x2e924e35 drm_object_property_set_value +EXPORT_SYMBOL drivers/gpu/drm/drm 0x2f0d2097 drm_gem_shmem_vmap +EXPORT_SYMBOL drivers/gpu/drm/drm 0x2f12b574 drm_mode_plane_set_obj_prop +EXPORT_SYMBOL drivers/gpu/drm/drm 0x2f61b0ef drm_atomic_check_only +EXPORT_SYMBOL drivers/gpu/drm/drm 0x2f6d8f3a drm_gem_dmabuf_vunmap +EXPORT_SYMBOL drivers/gpu/drm/drm 0x30405699 drm_gem_mmap +EXPORT_SYMBOL drivers/gpu/drm/drm 0x31b8a5e3 __drm_set_edid_firmware_path +EXPORT_SYMBOL drivers/gpu/drm/drm 0x3254af5d drm_mode_set_config_internal +EXPORT_SYMBOL drivers/gpu/drm/drm 0x3286f0e0 drm_dev_unplug +EXPORT_SYMBOL drivers/gpu/drm/drm 0x336805a1 drm_release_noglobal +EXPORT_SYMBOL drivers/gpu/drm/drm 0x340c4d48 __drmm_add_action +EXPORT_SYMBOL drivers/gpu/drm/drm 0x3451356e drm_legacy_ioremapfree +EXPORT_SYMBOL drivers/gpu/drm/drm 0x348b1e01 drm_bridge_remove +EXPORT_SYMBOL drivers/gpu/drm/drm 0x34b7f303 drm_panel_detach +EXPORT_SYMBOL drivers/gpu/drm/drm 0x3503d682 drm_mode_vrefresh +EXPORT_SYMBOL drivers/gpu/drm/drm 0x355519ec drm_property_blob_put +EXPORT_SYMBOL drivers/gpu/drm/drm 0x35afae24 __drm_puts_seq_file +EXPORT_SYMBOL drivers/gpu/drm/drm 0x3619e9ac drm_crtc_wait_one_vblank +EXPORT_SYMBOL drivers/gpu/drm/drm 0x378d294c drm_mode_is_420_also +EXPORT_SYMBOL drivers/gpu/drm/drm 0x389b02a1 drm_mode_prune_invalid +EXPORT_SYMBOL drivers/gpu/drm/drm 0x3a5cbbae drm_mode_object_get +EXPORT_SYMBOL drivers/gpu/drm/drm 0x3aec1bec drm_vma_node_allow +EXPORT_SYMBOL drivers/gpu/drm/drm 0x3b3dccac drm_syncobj_get_fd +EXPORT_SYMBOL drivers/gpu/drm/drm 0x3ba17eab drm_ht_insert_item +EXPORT_SYMBOL drivers/gpu/drm/drm 0x3baf9f1d drm_plane_from_index +EXPORT_SYMBOL drivers/gpu/drm/drm 0x3c1586ee drm_vblank_restore +EXPORT_SYMBOL drivers/gpu/drm/drm 0x3c22a4d8 drm_vma_offset_manager_init +EXPORT_SYMBOL drivers/gpu/drm/drm 0x3c7b869b drm_atomic_private_obj_fini +EXPORT_SYMBOL drivers/gpu/drm/drm 0x3cb117bb drm_hdcp_update_content_protection +EXPORT_SYMBOL drivers/gpu/drm/drm 0x3d001ecc drm_connector_attach_content_protection_property +EXPORT_SYMBOL drivers/gpu/drm/drm 0x3d572523 drm_ioctl_kernel +EXPORT_SYMBOL drivers/gpu/drm/drm 0x3d63c938 drm_atomic_bridge_chain_disable +EXPORT_SYMBOL drivers/gpu/drm/drm 0x3e50b109 drm_gem_fence_array_add +EXPORT_SYMBOL drivers/gpu/drm/drm 0x40194b9e drm_connector_set_tile_property +EXPORT_SYMBOL drivers/gpu/drm/drm 0x42ad7d9e drm_dev_put +EXPORT_SYMBOL drivers/gpu/drm/drm 0x42f27b12 drm_crtc_vblank_count_and_time +EXPORT_SYMBOL drivers/gpu/drm/drm 0x462781d8 drm_gem_object_release +EXPORT_SYMBOL drivers/gpu/drm/drm 0x474156b5 drm_mode_equal +EXPORT_SYMBOL drivers/gpu/drm/drm 0x475d534f drmm_add_final_kfree +EXPORT_SYMBOL drivers/gpu/drm/drm 0x47f985aa drm_edid_duplicate +EXPORT_SYMBOL drivers/gpu/drm/drm 0x48518325 drm_property_destroy +EXPORT_SYMBOL drivers/gpu/drm/drm 0x4870f929 drm_gem_object_lookup +EXPORT_SYMBOL drivers/gpu/drm/drm 0x48b1d37e drm_i2c_encoder_detect +EXPORT_SYMBOL drivers/gpu/drm/drm 0x48e81398 drm_agp_info +EXPORT_SYMBOL drivers/gpu/drm/drm 0x495e52f7 drm_property_create_enum +EXPORT_SYMBOL drivers/gpu/drm/drm 0x49e4d35e drm_connector_register +EXPORT_SYMBOL drivers/gpu/drm/drm 0x4a748f49 drm_writeback_connector_init +EXPORT_SYMBOL drivers/gpu/drm/drm 0x4b7ebf95 drm_mm_remove_node +EXPORT_SYMBOL drivers/gpu/drm/drm 0x4c31d04f drm_plane_create_zpos_property +EXPORT_SYMBOL drivers/gpu/drm/drm 0x4c500e16 drm_display_info_set_bus_formats +EXPORT_SYMBOL drivers/gpu/drm/drm 0x4cdb58bc drm_dev_enter +EXPORT_SYMBOL drivers/gpu/drm/drm 0x4ce505a7 drm_property_lookup_blob +EXPORT_SYMBOL drivers/gpu/drm/drm 0x4cfb8166 drm_wait_one_vblank +EXPORT_SYMBOL drivers/gpu/drm/drm 0x4e095f11 drm_get_format_name +EXPORT_SYMBOL drivers/gpu/drm/drm 0x4e7c4469 drm_mode_get_tile_group +EXPORT_SYMBOL drivers/gpu/drm/drm 0x4ec58b9f drm_mode_config_reset +EXPORT_SYMBOL drivers/gpu/drm/drm 0x4efb2c87 drm_gem_unmap_dma_buf +EXPORT_SYMBOL drivers/gpu/drm/drm 0x4f18a150 __drm_debug +EXPORT_SYMBOL drivers/gpu/drm/drm 0x50674de7 drm_timeout_abs_to_jiffies +EXPORT_SYMBOL drivers/gpu/drm/drm 0x50e9c9ae drm_client_init +EXPORT_SYMBOL drivers/gpu/drm/drm 0x517b50fc drm_legacy_ioremap_wc +EXPORT_SYMBOL drivers/gpu/drm/drm 0x51fc4483 drm_atomic_get_new_bridge_state +EXPORT_SYMBOL drivers/gpu/drm/drm 0x53fd5f63 drm_writeback_prepare_job +EXPORT_SYMBOL drivers/gpu/drm/drm 0x551b3350 drm_event_reserve_init +EXPORT_SYMBOL drivers/gpu/drm/drm 0x5542443b drm_flip_work_init +EXPORT_SYMBOL drivers/gpu/drm/drm 0x56c6e828 drm_mode_get_hv_timing +EXPORT_SYMBOL drivers/gpu/drm/drm 0x575a8531 drm_connector_has_possible_encoder +EXPORT_SYMBOL drivers/gpu/drm/drm 0x57698a50 drm_mm_takedown +EXPORT_SYMBOL drivers/gpu/drm/drm 0x57b6efe3 drm_ioctl_flags +EXPORT_SYMBOL drivers/gpu/drm/drm 0x5857baab drm_add_modes_noedid +EXPORT_SYMBOL drivers/gpu/drm/drm 0x58c38f02 drm_hdmi_avi_infoframe_content_type +EXPORT_SYMBOL drivers/gpu/drm/drm 0x59056243 drm_mm_replace_node +EXPORT_SYMBOL drivers/gpu/drm/drm 0x59ee70b2 drm_gtf_mode_complex +EXPORT_SYMBOL drivers/gpu/drm/drm 0x5a199381 drm_mode_destroy +EXPORT_SYMBOL drivers/gpu/drm/drm 0x5ab64180 drm_panel_prepare +EXPORT_SYMBOL drivers/gpu/drm/drm 0x5b9b5740 drm_syncobj_replace_fence +EXPORT_SYMBOL drivers/gpu/drm/drm 0x5c093daf drm_atomic_bridge_chain_post_disable +EXPORT_SYMBOL drivers/gpu/drm/drm 0x5c48bfad drm_add_override_edid_modes +EXPORT_SYMBOL drivers/gpu/drm/drm 0x5e3df7bf drm_gem_private_object_init +EXPORT_SYMBOL drivers/gpu/drm/drm 0x5f096225 drm_vma_offset_remove +EXPORT_SYMBOL drivers/gpu/drm/drm 0x5f4b4e14 drm_clflush_pages +EXPORT_SYMBOL drivers/gpu/drm/drm 0x5f7985a5 drm_mm_scan_remove_block +EXPORT_SYMBOL drivers/gpu/drm/drm 0x5f8ead4a drm_client_buffer_vunmap +EXPORT_SYMBOL drivers/gpu/drm/drm 0x60f47ad3 drm_i2c_encoder_mode_set +EXPORT_SYMBOL drivers/gpu/drm/drm 0x6257a022 drm_gem_fence_array_add_implicit +EXPORT_SYMBOL drivers/gpu/drm/drm 0x632b539a drm_client_modeset_commit_locked +EXPORT_SYMBOL drivers/gpu/drm/drm 0x637cac19 drm_mode_set_crtcinfo +EXPORT_SYMBOL drivers/gpu/drm/drm 0x637fcf45 drmm_kmalloc +EXPORT_SYMBOL drivers/gpu/drm/drm 0x6458ee44 drm_gem_prime_mmap +EXPORT_SYMBOL drivers/gpu/drm/drm 0x64604b93 drm_panel_remove +EXPORT_SYMBOL drivers/gpu/drm/drm 0x64e5b687 drm_modeset_acquire_fini +EXPORT_SYMBOL drivers/gpu/drm/drm 0x65275597 drm_irq_install +EXPORT_SYMBOL drivers/gpu/drm/drm 0x6615be00 drm_gem_vm_close +EXPORT_SYMBOL drivers/gpu/drm/drm 0x6649650f drm_gem_vm_open +EXPORT_SYMBOL drivers/gpu/drm/drm 0x66551bc7 drm_detect_monitor_audio +EXPORT_SYMBOL drivers/gpu/drm/drm 0x66fe78d6 drm_gem_prime_import_dev +EXPORT_SYMBOL drivers/gpu/drm/drm 0x6725169d __devm_drm_dev_alloc +EXPORT_SYMBOL drivers/gpu/drm/drm 0x68c5766f drm_atomic_bridge_chain_enable +EXPORT_SYMBOL drivers/gpu/drm/drm 0x6973526a drmm_mode_config_init +EXPORT_SYMBOL drivers/gpu/drm/drm 0x698a4b76 drm_sysfs_hotplug_event +EXPORT_SYMBOL drivers/gpu/drm/drm 0x69a4cd87 drm_gem_prime_import +EXPORT_SYMBOL drivers/gpu/drm/drm 0x6aeae4a6 drm_atomic_bridge_chain_check +EXPORT_SYMBOL drivers/gpu/drm/drm 0x6c01a2e9 drm_atomic_state_init +EXPORT_SYMBOL drivers/gpu/drm/drm 0x6d938c0c drm_crtc_vblank_put +EXPORT_SYMBOL drivers/gpu/drm/drm 0x6e30ba8e drm_rect_rotate_inv +EXPORT_SYMBOL drivers/gpu/drm/drm 0x6effea6b drm_vblank_init +EXPORT_SYMBOL drivers/gpu/drm/drm 0x6f55928d drm_send_event_locked +EXPORT_SYMBOL drivers/gpu/drm/drm 0x6fa8f535 drm_master_get +EXPORT_SYMBOL drivers/gpu/drm/drm 0x6fcfd53d drm_connector_list_iter_next +EXPORT_SYMBOL drivers/gpu/drm/drm 0x701959e0 drm_plane_cleanup +EXPORT_SYMBOL drivers/gpu/drm/drm 0x70234dfb drm_i2c_encoder_restore +EXPORT_SYMBOL drivers/gpu/drm/drm 0x70e5328b drm_crtc_vblank_count +EXPORT_SYMBOL drivers/gpu/drm/drm 0x712ef8c3 drm_modeset_unlock_all +EXPORT_SYMBOL drivers/gpu/drm/drm 0x72936e28 drm_crtc_handle_vblank +EXPORT_SYMBOL drivers/gpu/drm/drm 0x72a256c4 drm_crtc_enable_color_mgmt +EXPORT_SYMBOL drivers/gpu/drm/drm 0x742b2030 drm_property_create_bool +EXPORT_SYMBOL drivers/gpu/drm/drm 0x74532a9f drm_cma_gem_create_object_default_funcs +EXPORT_SYMBOL drivers/gpu/drm/drm 0x7496626d drm_i2c_encoder_destroy +EXPORT_SYMBOL drivers/gpu/drm/drm 0x74b14b4c drm_vma_offset_add +EXPORT_SYMBOL drivers/gpu/drm/drm 0x74c8d102 drm_panel_disable +EXPORT_SYMBOL drivers/gpu/drm/drm 0x75773d7f drm_mode_find_dmt +EXPORT_SYMBOL drivers/gpu/drm/drm 0x77af6a85 drm_crtc_init_with_planes +EXPORT_SYMBOL drivers/gpu/drm/drm 0x785a7bdc drm_framebuffer_plane_height +EXPORT_SYMBOL drivers/gpu/drm/drm 0x78da642f drm_writeback_get_out_fence +EXPORT_SYMBOL drivers/gpu/drm/drm 0x7a2eb5cf drm_connector_unregister +EXPORT_SYMBOL drivers/gpu/drm/drm 0x7a9cfedf drm_gem_dmabuf_export +EXPORT_SYMBOL drivers/gpu/drm/drm 0x7b4fd6eb drm_connector_attach_max_bpc_property +EXPORT_SYMBOL drivers/gpu/drm/drm 0x7badf3ea drm_i2c_encoder_mode_fixup +EXPORT_SYMBOL drivers/gpu/drm/drm 0x7be303f1 drm_property_replace_global_blob +EXPORT_SYMBOL drivers/gpu/drm/drm 0x7c541c83 drm_agp_init +EXPORT_SYMBOL drivers/gpu/drm/drm 0x7c6ba265 drm_property_create +EXPORT_SYMBOL drivers/gpu/drm/drm 0x7d727ef5 drm_read +EXPORT_SYMBOL drivers/gpu/drm/drm 0x7da30a2c drm_mode_put_tile_group +EXPORT_SYMBOL drivers/gpu/drm/drm 0x7e7e855d drm_connector_list_update +EXPORT_SYMBOL drivers/gpu/drm/drm 0x7edc546f drm_mm_print +EXPORT_SYMBOL drivers/gpu/drm/drm 0x7ef0fe5d drm_gem_shmem_put_pages +EXPORT_SYMBOL drivers/gpu/drm/drm 0x7ff89172 drm_hdmi_avi_infoframe_bars +EXPORT_SYMBOL drivers/gpu/drm/drm 0x7ff93d90 drm_i2c_encoder_prepare +EXPORT_SYMBOL drivers/gpu/drm/drm 0x80049c32 drm_gem_map_detach +EXPORT_SYMBOL drivers/gpu/drm/drm 0x8108949d drm_mode_equal_no_clocks +EXPORT_SYMBOL drivers/gpu/drm/drm 0x81954433 drm_client_framebuffer_delete +EXPORT_SYMBOL drivers/gpu/drm/drm 0x81992424 drm_edid_header_is_valid +EXPORT_SYMBOL drivers/gpu/drm/drm 0x820b1541 drm_atomic_get_new_connector_for_encoder +EXPORT_SYMBOL drivers/gpu/drm/drm 0x821cba4e drm_modeset_unlock +EXPORT_SYMBOL drivers/gpu/drm/drm 0x831a1815 drm_crtc_vblank_on +EXPORT_SYMBOL drivers/gpu/drm/drm 0x83432d1a drm_av_sync_delay +EXPORT_SYMBOL drivers/gpu/drm/drm 0x842dd90c drm_flip_work_commit +EXPORT_SYMBOL drivers/gpu/drm/drm 0x849c37eb drm_gem_shmem_purge_locked +EXPORT_SYMBOL drivers/gpu/drm/drm 0x8523f21d drm_atomic_get_old_connector_for_encoder +EXPORT_SYMBOL drivers/gpu/drm/drm 0x8563a554 drm_ht_remove +EXPORT_SYMBOL drivers/gpu/drm/drm 0x85b03130 drm_gem_create_mmap_offset_size +EXPORT_SYMBOL drivers/gpu/drm/drm 0x871ab41a drm_rect_intersect +EXPORT_SYMBOL drivers/gpu/drm/drm 0x87a71113 drm_agp_bind +EXPORT_SYMBOL drivers/gpu/drm/drm 0x881f48c2 drm_panel_add +EXPORT_SYMBOL drivers/gpu/drm/drm 0x888da670 drm_gem_object_put +EXPORT_SYMBOL drivers/gpu/drm/drm 0x88dcb742 drm_framebuffer_plane_width +EXPORT_SYMBOL drivers/gpu/drm/drm 0x89c94ae2 drm_crtc_set_max_vblank_count +EXPORT_SYMBOL drivers/gpu/drm/drm 0x89cb1da5 drm_gem_dmabuf_release +EXPORT_SYMBOL drivers/gpu/drm/drm 0x8b4c6f32 drm_mode_config_cleanup +EXPORT_SYMBOL drivers/gpu/drm/drm 0x8b5a2f2b drm_atomic_get_old_bridge_state +EXPORT_SYMBOL drivers/gpu/drm/drm 0x8bc2eb4d drm_color_lut_check +EXPORT_SYMBOL drivers/gpu/drm/drm 0x8c4fd37c drm_mode_set_name +EXPORT_SYMBOL drivers/gpu/drm/drm 0x8f0b6d33 drm_master_put +EXPORT_SYMBOL drivers/gpu/drm/drm 0x8fc50cb7 __drm_atomic_helper_set_config +EXPORT_SYMBOL drivers/gpu/drm/drm 0x9094a8bf drm_crtc_accurate_vblank_count +EXPORT_SYMBOL drivers/gpu/drm/drm 0x90c3969f drm_client_modeset_dpms +EXPORT_SYMBOL drivers/gpu/drm/drm 0x9112efb2 drm_property_add_enum +EXPORT_SYMBOL drivers/gpu/drm/drm 0x911d8bcb drm_client_register +EXPORT_SYMBOL drivers/gpu/drm/drm 0x9132f1f8 drm_i2c_encoder_dpms +EXPORT_SYMBOL drivers/gpu/drm/drm 0x91fec1cc drm_rect_calc_vscale +EXPORT_SYMBOL drivers/gpu/drm/drm 0x9213f5c3 drm_edid_to_speaker_allocation +EXPORT_SYMBOL drivers/gpu/drm/drm 0x928f15f7 drm_mode_create_content_type_property +EXPORT_SYMBOL drivers/gpu/drm/drm 0x94179e2b drm_modeset_lock +EXPORT_SYMBOL drivers/gpu/drm/drm 0x9431f2b3 drm_mode_create_suggested_offset_properties +EXPORT_SYMBOL drivers/gpu/drm/drm 0x94c81c80 drm_sysfs_connector_status_event +EXPORT_SYMBOL drivers/gpu/drm/drm 0x9581a9ed drm_gem_objects_lookup +EXPORT_SYMBOL drivers/gpu/drm/drm 0x95dbc76d drm_ht_create +EXPORT_SYMBOL drivers/gpu/drm/drm 0x9623a1f4 drm_crtc_vblank_helper_get_vblank_timestamp_internal +EXPORT_SYMBOL drivers/gpu/drm/drm 0x96d725a0 drm_event_reserve_init_locked +EXPORT_SYMBOL drivers/gpu/drm/drm 0x97f1f8d4 drm_modeset_lock_init +EXPORT_SYMBOL drivers/gpu/drm/drm 0x982698bd drm_mode_match +EXPORT_SYMBOL drivers/gpu/drm/drm 0x99fd20aa drm_rect_clip_scaled +EXPORT_SYMBOL drivers/gpu/drm/drm 0x9a05e3c5 drm_set_preferred_mode +EXPORT_SYMBOL drivers/gpu/drm/drm 0x9a6f6fd6 drm_gem_dmabuf_mmap +EXPORT_SYMBOL drivers/gpu/drm/drm 0x9b221da3 drm_dev_alloc +EXPORT_SYMBOL drivers/gpu/drm/drm 0x9b8a53f5 drm_ht_just_insert_please +EXPORT_SYMBOL drivers/gpu/drm/drm 0x9bd65830 drm_atomic_add_encoder_bridges +EXPORT_SYMBOL drivers/gpu/drm/drm 0x9c9c0b06 drm_syncobj_find_fence +EXPORT_SYMBOL drivers/gpu/drm/drm 0x9d5d95c0 drm_connector_attach_scaling_mode_property +EXPORT_SYMBOL drivers/gpu/drm/drm 0x9d7819bb drm_master_internal_release +EXPORT_SYMBOL drivers/gpu/drm/drm 0x9da5fba5 drm_gem_put_pages +EXPORT_SYMBOL drivers/gpu/drm/drm 0x9f11f741 drm_syncobj_find +EXPORT_SYMBOL drivers/gpu/drm/drm 0x9fcd6579 drm_crtc_check_viewport +EXPORT_SYMBOL drivers/gpu/drm/drm 0x9fed7708 drm_plane_create_color_properties +EXPORT_SYMBOL drivers/gpu/drm/drm 0xa0713087 drm_ht_find_item +EXPORT_SYMBOL drivers/gpu/drm/drm 0xa0f1a0ae drm_connector_list_iter_begin +EXPORT_SYMBOL drivers/gpu/drm/drm 0xa1a5753e drm_gem_cma_print_info +EXPORT_SYMBOL drivers/gpu/drm/drm 0xa1d8f11f drm_mode_object_find +EXPORT_SYMBOL drivers/gpu/drm/drm 0xa25faefb drm_atomic_get_crtc_state +EXPORT_SYMBOL drivers/gpu/drm/drm 0xa42568d5 drm_send_event +EXPORT_SYMBOL drivers/gpu/drm/drm 0xa4e7dc51 drm_gem_prime_export +EXPORT_SYMBOL drivers/gpu/drm/drm 0xa4fb7874 drm_ioctl +EXPORT_SYMBOL drivers/gpu/drm/drm 0xa51bce6b drm_atomic_set_mode_for_crtc +EXPORT_SYMBOL drivers/gpu/drm/drm 0xa61febec drm_dev_printk +EXPORT_SYMBOL drivers/gpu/drm/drm 0xa662266f drm_mode_probed_add +EXPORT_SYMBOL drivers/gpu/drm/drm 0xa715550f drm_dev_set_unique +EXPORT_SYMBOL drivers/gpu/drm/drm 0xa744fdcf drm_probe_ddc +EXPORT_SYMBOL drivers/gpu/drm/drm 0xa74cfbf7 drm_crtc_send_vblank_event +EXPORT_SYMBOL drivers/gpu/drm/drm 0xa783fc23 drm_atomic_state_default_release +EXPORT_SYMBOL drivers/gpu/drm/drm 0xa7da6529 drm_gem_shmem_print_info +EXPORT_SYMBOL drivers/gpu/drm/drm 0xa8ad5d01 drm_detect_hdmi_monitor +EXPORT_SYMBOL drivers/gpu/drm/drm 0xaa011072 drm_hdmi_avi_infoframe_quant_range +EXPORT_SYMBOL drivers/gpu/drm/drm 0xaa481173 drm_atomic_normalize_zpos +EXPORT_SYMBOL drivers/gpu/drm/drm 0xaa7a896c drm_mode_create_tv_properties +EXPORT_SYMBOL drivers/gpu/drm/drm 0xaa8e5056 drm_writeback_queue_job +EXPORT_SYMBOL drivers/gpu/drm/drm 0xaabe6cca drm_gem_prime_fd_to_handle +EXPORT_SYMBOL drivers/gpu/drm/drm 0xaac39ff3 __drm_printfn_info +EXPORT_SYMBOL drivers/gpu/drm/drm 0xab9ed2e3 drm_get_edid +EXPORT_SYMBOL drivers/gpu/drm/drm 0xac3f189e drm_dev_dbg +EXPORT_SYMBOL drivers/gpu/drm/drm 0xad306b1d drm_gem_map_attach +EXPORT_SYMBOL drivers/gpu/drm/drm 0xad35fd48 drm_agp_enable +EXPORT_SYMBOL drivers/gpu/drm/drm 0xad4e902b drm_color_ctm_s31_32_to_qm_n +EXPORT_SYMBOL drivers/gpu/drm/drm 0xad542d39 drm_crtc_cleanup +EXPORT_SYMBOL drivers/gpu/drm/drm 0xadd27c0d drm_dev_register +EXPORT_SYMBOL drivers/gpu/drm/drm 0xadd97c76 drm_connector_attach_edid_property +EXPORT_SYMBOL drivers/gpu/drm/drm 0xae277372 __drm_crtc_commit_free +EXPORT_SYMBOL drivers/gpu/drm/drm 0xaf400dfc drm_plane_create_zpos_immutable_property +EXPORT_SYMBOL drivers/gpu/drm/drm 0xaf4dc6a8 drm_legacy_ioremap +EXPORT_SYMBOL drivers/gpu/drm/drm 0xb01d1381 drm_gem_handle_delete +EXPORT_SYMBOL drivers/gpu/drm/drm 0xb053adda drm_rect_rotate +EXPORT_SYMBOL drivers/gpu/drm/drm 0xb0b05ff5 drm_clflush_sg +EXPORT_SYMBOL drivers/gpu/drm/drm 0xb11ac7a7 __drm_err +EXPORT_SYMBOL drivers/gpu/drm/drm 0xb1659391 drm_object_attach_property +EXPORT_SYMBOL drivers/gpu/drm/drm 0xb290cacd drm_mode_validate_driver +EXPORT_SYMBOL drivers/gpu/drm/drm 0xb299cb5a drm_client_rotation +EXPORT_SYMBOL drivers/gpu/drm/drm 0xb3345461 drm_irq_uninstall +EXPORT_SYMBOL drivers/gpu/drm/drm 0xb3780f16 drm_connector_set_panel_orientation +EXPORT_SYMBOL drivers/gpu/drm/drm 0xb4032484 drm_mm_insert_node_in_range +EXPORT_SYMBOL drivers/gpu/drm/drm 0xb447c645 drm_connector_update_edid_property +EXPORT_SYMBOL drivers/gpu/drm/drm 0xb4657156 drm_bridge_chain_mode_set +EXPORT_SYMBOL drivers/gpu/drm/drm 0xb4698010 drm_agp_free +EXPORT_SYMBOL drivers/gpu/drm/drm 0xb49e09dc drm_agp_alloc +EXPORT_SYMBOL drivers/gpu/drm/drm 0xb4c88cfa drm_property_create_range +EXPORT_SYMBOL drivers/gpu/drm/drm 0xb6127243 drm_need_swiotlb +EXPORT_SYMBOL drivers/gpu/drm/drm 0xb671e99e drm_gem_object_put_unlocked +EXPORT_SYMBOL drivers/gpu/drm/drm 0xb68ef3aa drm_atomic_get_bridge_state +EXPORT_SYMBOL drivers/gpu/drm/drm 0xb750fb22 drm_gem_free_mmap_offset +EXPORT_SYMBOL drivers/gpu/drm/drm 0xb7a5cebe drm_dev_unregister +EXPORT_SYMBOL drivers/gpu/drm/drm 0xb7d5b5cc drm_prime_pages_to_sg +EXPORT_SYMBOL drivers/gpu/drm/drm 0xb853833f drm_mode_validate_size +EXPORT_SYMBOL drivers/gpu/drm/drm 0xb8bdb3f5 drm_puts +EXPORT_SYMBOL drivers/gpu/drm/drm 0xb9b9c1a8 __drm_atomic_helper_disable_plane +EXPORT_SYMBOL drivers/gpu/drm/drm 0xb9cad492 __drm_atomic_state_free +EXPORT_SYMBOL drivers/gpu/drm/drm 0xb9df9516 drm_atomic_state_alloc +EXPORT_SYMBOL drivers/gpu/drm/drm 0xb9e8c9dd drm_gem_get_pages +EXPORT_SYMBOL drivers/gpu/drm/drm 0xb9f56e22 drm_format_info_block_width +EXPORT_SYMBOL drivers/gpu/drm/drm 0xba641a39 drm_panel_attach +EXPORT_SYMBOL drivers/gpu/drm/drm 0xbaa5aa90 drm_client_modeset_commit +EXPORT_SYMBOL drivers/gpu/drm/drm 0xbaf2aedf drm_connector_attach_vrr_capable_property +EXPORT_SYMBOL drivers/gpu/drm/drm 0xbb33ee7b drm_default_rgb_quant_range +EXPORT_SYMBOL drivers/gpu/drm/drm 0xbb4831f3 drm_gem_dma_resv_wait +EXPORT_SYMBOL drivers/gpu/drm/drm 0xbc2ff69e drm_gtf_mode +EXPORT_SYMBOL drivers/gpu/drm/drm 0xbe0f2408 drm_driver_legacy_fb_format +EXPORT_SYMBOL drivers/gpu/drm/drm 0xbf487a9d drm_framebuffer_init +EXPORT_SYMBOL drivers/gpu/drm/drm 0xbf9cb9ae drm_client_release +EXPORT_SYMBOL drivers/gpu/drm/drm 0xc0bd2bf5 drm_debugfs_create_files +EXPORT_SYMBOL drivers/gpu/drm/drm 0xc0fc4281 drm_mode_crtc_set_gamma_size +EXPORT_SYMBOL drivers/gpu/drm/drm 0xc12194c9 drm_gem_map_dma_buf +EXPORT_SYMBOL drivers/gpu/drm/drm 0xc2025f8b drm_print_regset32 +EXPORT_SYMBOL drivers/gpu/drm/drm 0xc26ed9d0 drm_property_create_object +EXPORT_SYMBOL drivers/gpu/drm/drm 0xc2c36138 drm_mode_is_420_only +EXPORT_SYMBOL drivers/gpu/drm/drm 0xc324efb9 drm_edid_to_sad +EXPORT_SYMBOL drivers/gpu/drm/drm 0xc37fa12a drm_gem_shmem_madvise +EXPORT_SYMBOL drivers/gpu/drm/drm 0xc3896bfd drm_client_dev_hotplug +EXPORT_SYMBOL drivers/gpu/drm/drm 0xc3fefd61 drm_prime_gem_destroy +EXPORT_SYMBOL drivers/gpu/drm/drm 0xc447051b drm_warn_on_modeset_not_all_locked +EXPORT_SYMBOL drivers/gpu/drm/drm 0xc5992401 __drm_puts_coredump +EXPORT_SYMBOL drivers/gpu/drm/drm 0xc6323239 drm_flip_work_cleanup +EXPORT_SYMBOL drivers/gpu/drm/drm 0xc684fa42 drm_dev_get +EXPORT_SYMBOL drivers/gpu/drm/drm 0xc737835b drm_property_create_blob +EXPORT_SYMBOL drivers/gpu/drm/drm 0xc747391a drm_mode_duplicate +EXPORT_SYMBOL drivers/gpu/drm/drm 0xc7f0f027 drm_format_info_min_pitch +EXPORT_SYMBOL drivers/gpu/drm/drm 0xc8b78c8c drm_panel_get_modes +EXPORT_SYMBOL drivers/gpu/drm/drm 0xc8d583a7 drm_panel_init +EXPORT_SYMBOL drivers/gpu/drm/drm 0xc9e6a267 drm_connector_attach_content_type_property +EXPORT_SYMBOL drivers/gpu/drm/drm 0xc9f14ecb __drmm_add_action_or_reset +EXPORT_SYMBOL drivers/gpu/drm/drm 0xca9dbae5 drm_gem_shmem_purge +EXPORT_SYMBOL drivers/gpu/drm/drm 0xcad12b3d drm_bridge_chain_post_disable +EXPORT_SYMBOL drivers/gpu/drm/drm 0xcb2340b8 drm_rect_debug_print +EXPORT_SYMBOL drivers/gpu/drm/drm 0xcd18fcbe drm_modeset_lock_single_interruptible +EXPORT_SYMBOL drivers/gpu/drm/drm 0xcdca2ad0 drm_universal_plane_init +EXPORT_SYMBOL drivers/gpu/drm/drm 0xce593e56 drm_plane_create_rotation_property +EXPORT_SYMBOL drivers/gpu/drm/drm 0xceca829c drm_atomic_private_obj_init +EXPORT_SYMBOL drivers/gpu/drm/drm 0xcee6beb2 drm_gem_handle_create +EXPORT_SYMBOL drivers/gpu/drm/drm 0xcf11a549 drm_flip_work_allocate_task +EXPORT_SYMBOL drivers/gpu/drm/drm 0xcf30c911 drm_panel_unprepare +EXPORT_SYMBOL drivers/gpu/drm/drm 0xcf4b335f drm_is_current_master +EXPORT_SYMBOL drivers/gpu/drm/drm 0xd13f9985 drm_edid_block_valid +EXPORT_SYMBOL drivers/gpu/drm/drm 0xd17b4665 drm_atomic_get_connector_state +EXPORT_SYMBOL drivers/gpu/drm/drm 0xd2fa01a4 drm_atomic_get_old_private_obj_state +EXPORT_SYMBOL drivers/gpu/drm/drm 0xd33e2f0e drm_gem_lock_reservations +EXPORT_SYMBOL drivers/gpu/drm/drm 0xd3d3de57 drm_framebuffer_lookup +EXPORT_SYMBOL drivers/gpu/drm/drm 0xd42ae03a drm_crtc_vblank_waitqueue +EXPORT_SYMBOL drivers/gpu/drm/drm 0xd5a737a3 drm_gem_shmem_pin +EXPORT_SYMBOL drivers/gpu/drm/drm 0xd5d2e6f8 drm_atomic_get_new_private_obj_state +EXPORT_SYMBOL drivers/gpu/drm/drm 0xd5dc25c1 drm_gem_unlock_reservations +EXPORT_SYMBOL drivers/gpu/drm/drm 0xd680a377 drm_gem_object_free +EXPORT_SYMBOL drivers/gpu/drm/drm 0xd68e7aa5 drm_bridge_add +EXPORT_SYMBOL drivers/gpu/drm/drm 0xd69cf8b8 drm_atomic_set_fence_for_plane +EXPORT_SYMBOL drivers/gpu/drm/drm 0xd82e42c4 drm_object_property_get_value +EXPORT_SYMBOL drivers/gpu/drm/drm 0xd93533f5 drm_connector_attach_encoder +EXPORT_SYMBOL drivers/gpu/drm/drm 0xd96b425a __drm_printfn_coredump +EXPORT_SYMBOL drivers/gpu/drm/drm 0xda20f178 drm_invalid_op +EXPORT_SYMBOL drivers/gpu/drm/drm 0xda55c76a drm_mode_object_put +EXPORT_SYMBOL drivers/gpu/drm/drm 0xda82c181 drm_modeset_lock_all_ctx +EXPORT_SYMBOL drivers/gpu/drm/drm 0xdbfdee81 drm_crtc_vblank_get +EXPORT_SYMBOL drivers/gpu/drm/drm 0xdc3ce598 drm_cvt_mode +EXPORT_SYMBOL drivers/gpu/drm/drm 0xdd66fd36 drm_gem_prime_handle_to_fd +EXPORT_SYMBOL drivers/gpu/drm/drm 0xdeb7ae37 drm_atomic_state_default_clear +EXPORT_SYMBOL drivers/gpu/drm/drm 0xded52f76 drm_put_dev +EXPORT_SYMBOL drivers/gpu/drm/drm 0xdf045ed2 drm_plane_init +EXPORT_SYMBOL drivers/gpu/drm/drm 0xdf3f760d drm_mm_scan_color_evict +EXPORT_SYMBOL drivers/gpu/drm/drm 0xdf41bddc drm_syncobj_create +EXPORT_SYMBOL drivers/gpu/drm/drm 0xdf5a1c0c drm_open +EXPORT_SYMBOL drivers/gpu/drm/drm 0xdf666902 drm_rotation_simplify +EXPORT_SYMBOL drivers/gpu/drm/drm 0xe033300d drm_gem_dumb_destroy +EXPORT_SYMBOL drivers/gpu/drm/drm 0xe051e20f drm_plane_create_blend_mode_property +EXPORT_SYMBOL drivers/gpu/drm/drm 0xe0bc28cb drm_framebuffer_unregister_private +EXPORT_SYMBOL drivers/gpu/drm/drm 0xe108fdb9 drm_atomic_get_plane_state +EXPORT_SYMBOL drivers/gpu/drm/drm 0xe116d3a4 drm_vma_node_revoke +EXPORT_SYMBOL drivers/gpu/drm/drm 0xe25fc05c drm_connector_cleanup +EXPORT_SYMBOL drivers/gpu/drm/drm 0xe37e2a78 drm_mode_create_tile_group +EXPORT_SYMBOL drivers/gpu/drm/drm 0xe3a8835c drm_state_dump +EXPORT_SYMBOL drivers/gpu/drm/drm 0xe461fad9 drm_i2c_encoder_init +EXPORT_SYMBOL drivers/gpu/drm/drm 0xe4e89407 drm_modeset_acquire_init +EXPORT_SYMBOL drivers/gpu/drm/drm 0xe69b508b drm_connector_set_path_property +EXPORT_SYMBOL drivers/gpu/drm/drm 0xe6f8826e drm_mode_create +EXPORT_SYMBOL drivers/gpu/drm/drm 0xe817eb01 __drm_printfn_err +EXPORT_SYMBOL drivers/gpu/drm/drm 0xe8a034df drm_dev_exit +EXPORT_SYMBOL drivers/gpu/drm/drm 0xeabd9360 drm_writeback_cleanup_job +EXPORT_SYMBOL drivers/gpu/drm/drm 0xeadc6745 drm_atomic_set_crtc_for_plane +EXPORT_SYMBOL drivers/gpu/drm/drm 0xeb6f2f04 drm_connector_set_panel_orientation_with_quirk +EXPORT_SYMBOL drivers/gpu/drm/drm 0xebb1bfe3 drm_gem_mmap_obj +EXPORT_SYMBOL drivers/gpu/drm/drm 0xec12af74 __drm_dbg +EXPORT_SYMBOL drivers/gpu/drm/drm 0xec5afcea drm_atomic_set_crtc_for_connector +EXPORT_SYMBOL drivers/gpu/drm/drm 0xeca777b5 drm_atomic_get_private_obj_state +EXPORT_SYMBOL drivers/gpu/drm/drm 0xed336bdc drm_mode_create_scaling_mode_property +EXPORT_SYMBOL drivers/gpu/drm/drm 0xeddb1d41 drm_encoder_init +EXPORT_SYMBOL drivers/gpu/drm/drm 0xeef14d8c drm_format_info_block_height +EXPORT_SYMBOL drivers/gpu/drm/drm 0xef6bc781 drm_client_buffer_vmap +EXPORT_SYMBOL drivers/gpu/drm/drm 0xefaab192 drm_gem_object_init +EXPORT_SYMBOL drivers/gpu/drm/drm 0xf0517d7a drm_mm_init +EXPORT_SYMBOL drivers/gpu/drm/drm 0xf0555dbe drm_bridge_chain_mode_valid +EXPORT_SYMBOL drivers/gpu/drm/drm 0xf1421d13 drm_mode_sort +EXPORT_SYMBOL drivers/gpu/drm/drm 0xf24cd886 drm_property_replace_blob +EXPORT_SYMBOL drivers/gpu/drm/drm 0xf2962f35 drm_gem_shmem_create_with_handle +EXPORT_SYMBOL drivers/gpu/drm/drm 0xf3f94871 drm_framebuffer_cleanup +EXPORT_SYMBOL drivers/gpu/drm/drm 0xf406e46a drm_get_connector_type_name +EXPORT_SYMBOL drivers/gpu/drm/drm 0xf4cab7b3 drm_hdmi_vendor_infoframe_from_display_mode +EXPORT_SYMBOL drivers/gpu/drm/drm 0xf5763739 drm_mode_create_dvi_i_properties +EXPORT_SYMBOL drivers/gpu/drm/drm 0xf618cb81 drm_bridge_attach +EXPORT_SYMBOL drivers/gpu/drm/drm 0xf72e805a drm_syncobj_add_point +EXPORT_SYMBOL drivers/gpu/drm/drm 0xf7b04cbf drm_crtc_arm_vblank_event +EXPORT_SYMBOL drivers/gpu/drm/drm 0xf826786c drm_format_info +EXPORT_SYMBOL drivers/gpu/drm/drm 0xf87ce956 drm_atomic_set_mode_prop_for_crtc +EXPORT_SYMBOL drivers/gpu/drm/drm 0xf8933bd3 drm_agp_acquire +EXPORT_SYMBOL drivers/gpu/drm/drm 0xf92501b6 drm_mode_create_from_cmdline_mode +EXPORT_SYMBOL drivers/gpu/drm/drm 0xf97ac0bb drm_mode_create_dp_colorspace_property +EXPORT_SYMBOL drivers/gpu/drm/drm 0xf9af0cf0 drm_prime_sg_to_page_addr_arrays +EXPORT_SYMBOL drivers/gpu/drm/drm 0xf9cdfd4b drm_modeset_lock_all +EXPORT_SYMBOL drivers/gpu/drm/drm 0xfb0f13fa drm_crtc_vblank_restore +EXPORT_SYMBOL drivers/gpu/drm/drm 0xfb8dd88d drm_connector_set_vrr_capable_property +EXPORT_SYMBOL drivers/gpu/drm/drm 0xfb968972 drm_dev_has_vblank +EXPORT_SYMBOL drivers/gpu/drm/drm 0xfbdba489 drm_crtc_vblank_helper_get_vblank_timestamp +EXPORT_SYMBOL drivers/gpu/drm/drm 0xfc39877c drm_get_format_info +EXPORT_SYMBOL drivers/gpu/drm/drm 0xfd813619 drm_client_modeset_probe +EXPORT_SYMBOL drivers/gpu/drm/drm 0xfdb6f0ee drm_modeset_drop_locks +EXPORT_SYMBOL drivers/gpu/drm/drm 0xfe462195 drm_encoder_cleanup +EXPORT_SYMBOL drivers/gpu/drm/drm 0xfe55950e drm_atomic_commit +EXPORT_SYMBOL drivers/gpu/drm/drm 0xfed795af drm_mode_debug_printmodeline +EXPORT_SYMBOL drivers/gpu/drm/drm 0xff8de91d drm_print_bits +EXPORT_SYMBOL drivers/gpu/drm/drm 0xff90a292 drm_mode_copy +EXPORT_SYMBOL drivers/gpu/drm/drm 0xffe26daa drm_bridge_chain_pre_enable +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x001b2e95 drm_fb_helper_cfb_copyarea +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x0071ba67 drm_gem_fb_destroy +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x00f88afc drm_dp_aux_register +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x01a01a8a drm_fb_swab16 +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x028f03ed drm_fb_xrgb8888_to_rgb565_dstclip +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x0426809f drm_dp_cec_unset_edid +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x06c49551 drm_dp_dsc_sink_line_buf_depth +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x07e60637 drm_scdc_read +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x089ccd13 drm_atomic_helper_shutdown +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x0dd3b29a drm_atomic_helper_damage_merged +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x0eb6999a drm_atomic_helper_setup_commit +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x0f6246bd drm_atomic_helper_crtc_reset +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x0f7c29bc drm_atomic_helper_commit_tail_rpm +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x10728835 drm_dp_mst_get_vcpi_slots +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x10990fa8 drm_dp_dual_mode_get_tmds_output +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x115c4e86 drm_dp_find_vcpi_slots +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x11938cee drm_fb_helper_init +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x12c0428c drm_mode_config_helper_resume +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x137a0269 drm_crtc_helper_set_mode +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x163b3b9c drm_fb_helper_sys_copyarea +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x19ca8fce drm_dp_downstream_id +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x1a4b5cda drm_fb_helper_cfb_imageblit +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x1abc19f5 drm_atomic_helper_commit +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x1aee25ad drm_fbdev_generic_setup +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x1d494673 drm_dp_mst_allocate_vcpi +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x205b0e68 drm_dp_dual_mode_set_tmds_output +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x20c318d3 drm_simple_display_pipe_init +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x21333e78 drm_plane_enable_fb_damage_clips +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x21483bbf drm_fb_helper_restore_fbdev_mode_unlocked +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x245dc7f5 drm_atomic_helper_commit_cleanup_done +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x24b21f38 drm_dp_dpcd_read +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x25451f02 drm_atomic_helper_async_check +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x254ed159 drm_atomic_helper_dirtyfb +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x255eedfd drm_atomic_helper_async_commit +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x25abfbad drm_dp_set_phy_test_pattern +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x26815dbc drm_dp_link_rate_to_bw_code +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x2866608f drm_dp_stop_crc +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x28d84399 __drm_atomic_helper_bridge_duplicate_state +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x29617aad drm_atomic_helper_check_plane_damage +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x29e4cfde drm_primary_helper_funcs +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x2adf968b drm_dp_aux_init +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x2b2dfc73 drm_dp_start_crc +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x2d14c647 drm_dp_dual_mode_read +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x2d3a8ff8 drm_fb_helper_deferred_io +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x2df54116 drm_dp_mst_atomic_check +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x2e2416cd drm_atomic_helper_disable_planes_on_crtc +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x31a22cc9 drm_dp_aux_unregister +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x32c47ef0 drm_helper_connector_dpms +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x37bed392 drm_dp_remote_aux_init +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x38946409 drm_atomic_helper_wait_for_dependencies +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x3a8063f3 drm_dp_dsc_sink_supported_input_bpcs +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x3c2d471d drm_panel_bridge_connector +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x3ebd44b0 drm_atomic_helper_commit_tail +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x3f08596f drm_dp_dpcd_read_link_status +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x41268ed5 drm_dp_mst_topology_mgr_suspend +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x41c1d907 drm_atomic_get_mst_topology_state +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x427a683a drm_dp_get_phy_test_pattern +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x44b5d29e drm_atomic_helper_legacy_gamma_set +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x45bbbfc9 __drm_atomic_helper_crtc_reset +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x47824e36 drm_dp_mst_topology_state_funcs +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x484e104f drm_atomic_helper_bridge_reset +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x48b62a57 drm_dp_link_train_channel_eq_delay +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x492da9f2 drm_atomic_helper_update_plane +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x4cea1bd9 drm_atomic_helper_wait_for_flip_done +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x4cf4338d drm_helper_disable_unused_functions +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x4d26336c drm_dp_mst_add_affected_dsc_crtcs +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x50b43934 drm_dp_mst_reset_vcpi_slots +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x5375ed27 __drm_atomic_helper_plane_reset +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x5407ae9e drm_dp_get_dual_mode_type_name +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x5536e4a3 drm_helper_probe_detect +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x558973d3 drm_atomic_helper_check +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x55f115c0 drm_dp_mst_deallocate_vcpi +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x566ee41f drm_atomic_helper_set_config +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x5754a2b3 drm_kms_helper_hotplug_event +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x579bf384 drm_helper_probe_single_connector_modes +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x582f248e drm_dp_get_adjust_request_pre_emphasis +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x58d8fcaa drm_dsc_pps_payload_pack +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x59dc4ec8 drm_fb_memcpy +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x59e398a2 drm_scdc_set_high_tmds_clock_ratio +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x59f49b54 drm_atomic_helper_check_modeset +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x59f5ca71 drm_fb_helper_alloc_fbi +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x5a4734d1 drm_kms_helper_is_poll_worker +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x5b01e5b1 drm_dp_downstream_debug +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x5bc5a0c5 drm_dp_check_act_status +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x5cdb2b95 devm_drm_panel_bridge_add +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x5da04d9e drm_atomic_helper_wait_for_vblanks +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x6114664c drm_gem_fb_create_handle +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x63a1da84 drm_atomic_helper_crtc_duplicate_state +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x648d953b drm_dsc_dp_pps_header_init +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x64f3ad32 drm_fb_helper_output_poll_changed +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x65da3148 drm_dp_mst_put_port_malloc +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x6615069e drm_dp_dsc_sink_max_slice_count +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x666051b1 drm_atomic_helper_check_plane_state +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x673efda0 drm_fb_helper_set_suspend_unlocked +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x6762514b drm_self_refresh_helper_init +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x692db173 drm_scdc_write +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x6980c728 drm_dp_mst_dsc_aux_for_port +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x69d6338b drm_dp_dual_mode_write +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x6b5c2b06 drm_atomic_helper_damage_iter_next +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x6ba97171 drm_lspcon_get_mode +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x6e5ed46b drm_atomic_helper_commit_hw_done +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x6ee7ce08 drm_atomic_helper_page_flip +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x6ffe3b1c __drm_atomic_helper_connector_state_reset +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x72031ade drm_simple_encoder_init +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x73011db0 drm_dp_bw_code_to_link_rate +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x76e86174 drm_fb_memcpy_dstclip +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x79eeae23 drm_atomic_helper_bridge_propagate_bus_fmt +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x7bbfe0a2 drm_atomic_helper_update_legacy_modeset_state +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x7cc443ca drm_atomic_helper_connector_destroy_state +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x7df5756f drm_helper_mode_fill_fb_struct +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x7eaaf1ec drm_dp_mst_connector_late_register +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x7f39482e drm_dp_mst_connector_early_unregister +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x818de753 drm_atomic_helper_connector_reset +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x819f6e0d drm_atomic_helper_prepare_planes +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x81a676c1 drm_kms_helper_poll_enable +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x8288d967 drm_dp_cec_irq +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x82d20dc1 drm_helper_hpd_irq_event +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x8360192c __drm_atomic_helper_connector_destroy_state +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x848f8eb8 drm_helper_resume_force_mode +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x85cbb87c drm_panel_bridge_add +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x862b87b5 drm_atomic_helper_bridge_destroy_state +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x894b1f57 drm_dp_get_adjust_request_post_cursor +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x8b2c0738 drm_scdc_get_scrambling_status +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x8bde8cc9 drm_fb_helper_prepare +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x8ca2d9e4 drm_dp_calc_pbn_mode +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x8d43a38b drm_fb_helper_hotplug_event +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x8d701329 drm_dp_clock_recovery_ok +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x8d7ce6d1 drm_dp_cec_unregister_connector +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x8e8570e9 drm_atomic_helper_crtc_destroy_state +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x8ea1b4c1 drm_panel_bridge_add_typed +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x8ec8211b drm_atomic_helper_commit_modeset_disables +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x8f3ba334 drm_atomic_helper_damage_iter_init +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x91a47c31 drm_dp_mst_topology_mgr_set_mst +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x9217f4d9 drm_atomic_helper_plane_reset +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x92340566 drm_fb_xrgb8888_to_rgb565 +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x92d6455a drm_fb_xrgb8888_to_gray8 +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x92dfc066 drm_atomic_helper_disable_plane +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x9510817c drm_helper_force_disable_all +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x980eda36 drm_atomic_helper_plane_destroy_state +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x9c05ee28 drm_dp_cec_register_connector +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x9c80630d drm_dp_mst_topology_mgr_destroy +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x9dd1ae7d drm_atomic_helper_wait_for_fences +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x9ffe1923 drm_simple_display_pipe_attach_bridge +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xa1022be7 drm_atomic_helper_commit_duplicated_state +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xa1fefe6a drm_dp_psr_setup_time +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xa20a11a6 drm_self_refresh_helper_update_avg_times +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xa2548e2e drm_crtc_init +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xa273c7a6 __drm_atomic_helper_crtc_destroy_state +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xa2f5c65b drm_dp_get_edid_quirks +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xa453d6e1 drm_scdc_set_scrambling +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xa4f01b04 drm_self_refresh_helper_cleanup +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xa5b4afd2 drm_kms_helper_poll_disable +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xa67e1e14 drm_helper_encoder_in_use +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xa6ff9496 drm_dp_link_train_clock_recovery_delay +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xa890fb61 drm_dp_send_real_edid_checksum +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xa917ddfb drm_fb_helper_sys_imageblit +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xa926428c drm_atomic_helper_duplicate_state +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xaa83badd __drm_atomic_helper_private_obj_duplicate_state +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xab0e7cd4 drm_fb_helper_modinit +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xabbf80a7 drm_dp_get_vc_payload_bw +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xac30a607 drm_dp_mst_hpd_irq +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xad634965 __drm_atomic_helper_crtc_duplicate_state +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xad78fb84 drm_dp_update_payload_part2 +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xae171be2 drm_fb_helper_sys_fillrect +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xaf90f639 drm_fb_helper_set_suspend +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xb1c466f7 drm_helper_move_panel_connectors_to_head +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xb5dc051b drm_fb_helper_unregister_fbi +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xb660a996 drm_fb_helper_set_par +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xb7aa0522 drm_dp_mst_topology_mgr_init +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xb8370eeb drm_fb_helper_cfb_fillrect +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xb84a4c79 drm_atomic_helper_check_planes +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xb9303e25 __drm_atomic_helper_connector_reset +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xba17f7dc drm_fb_helper_lastclose +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xbac7bcef drm_atomic_helper_swap_state +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xbb7583f5 drm_atomic_helper_plane_duplicate_state +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xbc7c06ae drm_fb_helper_debug_leave +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xbdd7f4be drm_dp_mst_get_port_malloc +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xc03ef876 drm_fb_helper_sys_read +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xc1ae1750 drm_gem_fb_simple_display_pipe_prepare_fb +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xc1f6a059 devm_drm_panel_bridge_add_typed +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xc2bb55f5 drm_dp_dpcd_write +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xc2dac729 drm_dp_mst_get_edid +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xc3282d48 drm_dp_atomic_release_vcpi_slots +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xc5c99a79 drm_dp_get_adjust_request_voltage +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xc7329f44 drm_crtc_helper_set_config +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xc8ef0721 drm_dp_read_desc +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xc91c6c6a drm_dp_atomic_find_vcpi_slots +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xca694da2 drm_fb_helper_fini +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xcb0b3e6b drm_fb_helper_sys_write +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xcceedf12 drm_fb_helper_blank +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xce3377da drm_lspcon_set_mode +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xce57ad50 __drm_atomic_helper_connector_duplicate_state +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xcfa5c642 drm_atomic_helper_commit_modeset_enables +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xd0fcfe80 drm_self_refresh_helper_alter_state +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xd18e38e5 drm_kms_helper_poll_init +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xd2c453e7 __drm_atomic_helper_crtc_state_reset +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xd45674a2 drm_dp_mst_detect_port +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xd48c4159 drm_fb_helper_fill_info +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xd5476d72 drm_dp_mst_dump_topology +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xd5ee5e8b drm_fb_xrgb8888_to_rgb888_dstclip +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xd646fd4f drm_fb_helper_check_var +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xd814f136 drm_fb_helper_pan_display +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xdaa7f56a drm_dp_vsc_sdp_log +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xdcf7b235 drm_dp_update_payload_part1 +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xde41df3b drm_atomic_helper_page_flip_target +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xe02abfbb drm_dp_downstream_max_bpc +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xe0ef9c05 drm_panel_bridge_remove +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xe3ab690f drm_dp_cec_set_edid +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xe43928d2 drm_dp_mst_atomic_enable_dsc +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xe46db4a7 drm_atomic_helper_resume +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xe529af96 drm_dp_dual_mode_detect +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xe65e8c71 drm_dp_mst_topology_mgr_resume +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xe6f85a12 drm_fb_helper_debug_enter +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xe7f9af0a drm_mode_config_helper_suspend +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xe8ba59e2 drm_helper_crtc_in_use +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xe92cabb4 drm_fb_helper_setcmap +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xeb7b4090 drm_dp_dual_mode_max_tmds_clock +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xed800e7d drm_atomic_helper_fake_vblank +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xedcf81ce drm_dp_channel_eq_ok +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xeeb3525b drm_dp_send_power_updown_phy +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xf229b826 drm_atomic_helper_cleanup_planes +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xf2329e89 drm_dp_downstream_max_clock +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xf44d31b9 drm_atomic_helper_disable_all +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xf49ef67e drm_kms_helper_poll_fini +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xf72358cc __drm_atomic_helper_plane_destroy_state +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xf844fd23 drm_atomic_helper_commit_planes +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xf8d3c545 drm_atomic_helper_suspend +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xf8e2d71d drm_atomic_helper_connector_duplicate_state +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xf9456b03 __drm_atomic_helper_plane_duplicate_state +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xf9fb66d5 drm_primary_helper_destroy +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xfb69a19f drm_atomic_helper_bridge_duplicate_state +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xfcca76de drm_fb_helper_initial_config +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xfcf4a8b6 drm_atomic_helper_connector_tv_reset +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xfdee341d __drm_atomic_helper_plane_state_reset +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xfdfd6426 drm_atomic_helper_commit_planes_on_crtc +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xfe12bcb9 drm_dsc_compute_rc_parameters +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xfe7d3ee6 __drm_atomic_helper_bridge_reset +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xfedaa3f5 drm_fb_helper_ioctl +EXPORT_SYMBOL drivers/gpu/drm/drm_mipi_dbi 0x0911954f mipi_dbi_spi_transfer +EXPORT_SYMBOL drivers/gpu/drm/drm_mipi_dbi 0x0ee4c265 mipi_dbi_command_buf +EXPORT_SYMBOL drivers/gpu/drm/drm_mipi_dbi 0x1456ba93 mipi_dbi_command_stackbuf +EXPORT_SYMBOL drivers/gpu/drm/drm_mipi_dbi 0x1ffb9c10 mipi_dbi_hw_reset +EXPORT_SYMBOL drivers/gpu/drm/drm_mipi_dbi 0x502979b3 mipi_dbi_enable_flush +EXPORT_SYMBOL drivers/gpu/drm/drm_mipi_dbi 0x508a9974 mipi_dbi_dev_init +EXPORT_SYMBOL drivers/gpu/drm/drm_mipi_dbi 0x62e63ebc mipi_dbi_display_is_on +EXPORT_SYMBOL drivers/gpu/drm/drm_mipi_dbi 0x754565fc mipi_dbi_command_read +EXPORT_SYMBOL drivers/gpu/drm/drm_mipi_dbi 0x7b9a7f5d mipi_dbi_spi_cmd_max_speed +EXPORT_SYMBOL drivers/gpu/drm/drm_mipi_dbi 0x97215552 mipi_dbi_pipe_update +EXPORT_SYMBOL drivers/gpu/drm/drm_mipi_dbi 0xa05c6936 mipi_dbi_spi_init +EXPORT_SYMBOL drivers/gpu/drm/drm_mipi_dbi 0xa670e97e mipi_dbi_debugfs_init +EXPORT_SYMBOL drivers/gpu/drm/drm_mipi_dbi 0xb433cf93 mipi_dbi_poweron_reset +EXPORT_SYMBOL drivers/gpu/drm/drm_mipi_dbi 0xbcf37729 mipi_dbi_poweron_conditional_reset +EXPORT_SYMBOL drivers/gpu/drm/drm_mipi_dbi 0xe5682d7a mipi_dbi_dev_init_with_formats +EXPORT_SYMBOL drivers/gpu/drm/drm_mipi_dbi 0xe774796b mipi_dbi_buf_copy +EXPORT_SYMBOL drivers/gpu/drm/drm_mipi_dbi 0xf4862ec0 mipi_dbi_pipe_disable +EXPORT_SYMBOL drivers/gpu/drm/drm_ttm_helper 0x812a7310 drm_gem_ttm_print_info +EXPORT_SYMBOL drivers/gpu/drm/drm_ttm_helper 0x8c822618 drm_gem_ttm_mmap +EXPORT_SYMBOL drivers/gpu/drm/drm_vram_helper 0x1126b657 drm_gem_vram_offset +EXPORT_SYMBOL drivers/gpu/drm/drm_vram_helper 0x1bc144ad drm_vram_mm_debugfs_init +EXPORT_SYMBOL drivers/gpu/drm/drm_vram_helper 0x299f73fb drm_vram_helper_mode_valid +EXPORT_SYMBOL drivers/gpu/drm/drm_vram_helper 0x35158b7d drm_gem_vram_fill_create_dumb +EXPORT_SYMBOL drivers/gpu/drm/drm_vram_helper 0x37640f39 drm_vram_helper_alloc_mm +EXPORT_SYMBOL drivers/gpu/drm/drm_vram_helper 0x38aecc3c drm_gem_vram_create +EXPORT_SYMBOL drivers/gpu/drm/drm_vram_helper 0x471aeabc drm_gem_vram_mmap_offset +EXPORT_SYMBOL drivers/gpu/drm/drm_vram_helper 0x48d2ed30 drm_gem_vram_kunmap +EXPORT_SYMBOL drivers/gpu/drm/drm_vram_helper 0x4f22da89 drm_gem_vram_unpin +EXPORT_SYMBOL drivers/gpu/drm/drm_vram_helper 0x53240681 drm_gem_vram_simple_display_pipe_prepare_fb +EXPORT_SYMBOL drivers/gpu/drm/drm_vram_helper 0x57e872e0 drm_gem_vram_driver_dumb_create +EXPORT_SYMBOL drivers/gpu/drm/drm_vram_helper 0x7019d08a drm_gem_vram_vmap +EXPORT_SYMBOL drivers/gpu/drm/drm_vram_helper 0xa0529cd8 drm_gem_vram_driver_dumb_mmap_offset +EXPORT_SYMBOL drivers/gpu/drm/drm_vram_helper 0xacbc944d drm_gem_vram_plane_helper_cleanup_fb +EXPORT_SYMBOL drivers/gpu/drm/drm_vram_helper 0xb4fc8afb drm_gem_vram_put +EXPORT_SYMBOL drivers/gpu/drm/drm_vram_helper 0xb77692b0 drm_gem_vram_simple_display_pipe_cleanup_fb +EXPORT_SYMBOL drivers/gpu/drm/drm_vram_helper 0xc80467e1 drm_gem_vram_vunmap +EXPORT_SYMBOL drivers/gpu/drm/drm_vram_helper 0xc9644fb6 drm_gem_vram_kmap +EXPORT_SYMBOL drivers/gpu/drm/drm_vram_helper 0xd7d228d8 drm_gem_vram_pin +EXPORT_SYMBOL drivers/gpu/drm/drm_vram_helper 0xef24db90 drm_vram_helper_release_mm +EXPORT_SYMBOL drivers/gpu/drm/drm_vram_helper 0xf43fd68b drm_gem_vram_plane_helper_prepare_fb +EXPORT_SYMBOL drivers/gpu/drm/scheduler/gpu-sched 0x17f0a4e9 drm_sched_dependency_optimized +EXPORT_SYMBOL drivers/gpu/drm/scheduler/gpu-sched 0x225dca84 drm_sched_init +EXPORT_SYMBOL drivers/gpu/drm/scheduler/gpu-sched 0x28404d51 drm_sched_entity_fini +EXPORT_SYMBOL drivers/gpu/drm/scheduler/gpu-sched 0x4edd8c6a drm_sched_job_init +EXPORT_SYMBOL drivers/gpu/drm/scheduler/gpu-sched 0x501c589a drm_sched_stop +EXPORT_SYMBOL drivers/gpu/drm/scheduler/gpu-sched 0x5eb10299 drm_sched_entity_modify_sched +EXPORT_SYMBOL drivers/gpu/drm/scheduler/gpu-sched 0x604b8442 drm_sched_entity_set_priority +EXPORT_SYMBOL drivers/gpu/drm/scheduler/gpu-sched 0x61580fbd drm_sched_resubmit_jobs +EXPORT_SYMBOL drivers/gpu/drm/scheduler/gpu-sched 0x63f010ff to_drm_sched_fence +EXPORT_SYMBOL drivers/gpu/drm/scheduler/gpu-sched 0x6a198009 drm_sched_entity_flush +EXPORT_SYMBOL drivers/gpu/drm/scheduler/gpu-sched 0x770f5487 drm_sched_job_cleanup +EXPORT_SYMBOL drivers/gpu/drm/scheduler/gpu-sched 0x801dcc20 drm_sched_fault +EXPORT_SYMBOL drivers/gpu/drm/scheduler/gpu-sched 0x8418ae49 drm_sched_increase_karma +EXPORT_SYMBOL drivers/gpu/drm/scheduler/gpu-sched 0x956cafd5 drm_sched_suspend_timeout +EXPORT_SYMBOL drivers/gpu/drm/scheduler/gpu-sched 0xb1661ddf drm_sched_pick_best +EXPORT_SYMBOL drivers/gpu/drm/scheduler/gpu-sched 0xb1dc450a drm_sched_entity_destroy +EXPORT_SYMBOL drivers/gpu/drm/scheduler/gpu-sched 0xb2bc8418 drm_sched_entity_init +EXPORT_SYMBOL drivers/gpu/drm/scheduler/gpu-sched 0xbaac09bb drm_sched_entity_push_job +EXPORT_SYMBOL drivers/gpu/drm/scheduler/gpu-sched 0xe23cb51a drm_sched_resume_timeout +EXPORT_SYMBOL drivers/gpu/drm/scheduler/gpu-sched 0xf17bbca7 drm_sched_start +EXPORT_SYMBOL drivers/gpu/drm/scheduler/gpu-sched 0xf5e6c4aa drm_sched_fini +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x0175446f ttm_bo_swapout_all +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x095c3266 ttm_eu_reserve_buffers +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x0f2917b8 ttm_eu_fence_buffer_objects +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x14decf39 ttm_agp_tt_create +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x1c1b0585 ttm_io_prot +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x1ef20229 ttm_bo_swapout +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x1fba7f07 ttm_agp_tt_populate +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x21f55077 ttm_bo_wait +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x2212817b ttm_dma_tt_init +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x22247367 ttm_bo_device_init +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x2981aa5b ttm_pool_populate +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x2993de9a ttm_bo_clean_mm +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x2a2aaf7b ttm_unmap_and_unpopulate_pages +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x2f9f62f4 ttm_mem_glob +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x30a6f86e ttm_bo_move_memcpy +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x324cc893 ttm_bo_glob +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x392a6b28 ttm_tt_init +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x3ffcd26f ttm_agp_tt_unpopulate +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x472d5ecc ttm_bo_vm_close +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x4be18d62 ttm_bo_put +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x4d488982 ttm_bo_move_accel_cleanup +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x4d6f6a95 ttm_bo_mem_put +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x4efb7e44 ttm_bo_mem_space +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x50710e80 ttm_mem_global_free +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x539fd551 ttm_bo_vm_open +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x546e5713 ttm_tt_bind +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x562673d1 ttm_bo_manager_func +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x5e96a2f5 ttm_bo_acc_size +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x6038534e ttm_tt_set_placement_caching +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x6052860c ttm_round_pot +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x6a89746f ttm_bo_mem_compat +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x71ba71e8 ttm_pool_unpopulate +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x71eaf90b ttm_bo_bulk_move_lru_tail +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x72e18c45 ttm_tt_fini +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x72f46450 ttm_bo_move_ttm +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x74050f44 ttm_bo_device_release +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x7782d894 ttm_eu_backoff_reservation +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x8cdc3121 ttm_bo_unmap_virtual +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x8d55b768 ttm_bo_vm_reserve +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x8fcbf361 ttm_bo_pipeline_move +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x91795bab ttm_check_under_lowerlimit +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x9884e94b ttm_mem_global_alloc +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x9ba4e79e ttm_bo_mmap_obj +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x9bde3810 ttm_bo_vm_fault +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xa1b3723d ttm_bo_create +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xa39dc643 ttm_bo_vm_fault_reserved +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xaa26fc02 ttm_bo_mmap +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xb00e066e ttm_dma_tt_fini +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xb05738e2 ttm_bo_lock_delayed_workqueue +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xb476d989 ttm_bo_kunmap +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xb53a29df ttm_bo_init +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xb7dbd0a7 ttm_sg_tt_init +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xc55419bd ttm_get_kernel_zone_memory_size +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xd06cb4f9 ttm_bo_evict_mm +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xd0d244f1 ttm_bo_init_mm +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xd28e82bd ttm_bo_kmap +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xd9897478 ttm_page_alloc_debugfs +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xdfe8a3c1 ttm_bo_dma_acc_size +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xe08c3a2f ttm_bo_init_reserved +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xe158a217 ttm_bo_unlock_delayed_workqueue +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xe9a5d33c ttm_bo_eviction_valuable +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xefd7e97a ttm_populate_and_map_pages +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xf0ccfc47 ttm_bo_move_to_lru_tail +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xf610db75 ttm_bo_vm_access +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xfbf24c08 ttm_bo_validate +EXPORT_SYMBOL drivers/gpu/drm/vmwgfx/vmwgfx 0x446c961c ttm_base_object_noref_lookup +EXPORT_SYMBOL drivers/hid/hid 0x0e8b6345 hid_bus_type +EXPORT_SYMBOL drivers/hid/intel-ish-hid/intel-ishtp 0x034bcfa1 ishtp_cl_get_tx_free_rings +EXPORT_SYMBOL drivers/hid/intel-ish-hid/intel-ishtp 0x07bdce74 ishtp_put_device +EXPORT_SYMBOL drivers/hid/intel-ish-hid/intel-ishtp 0x0a38161f ishtp_send_suspend +EXPORT_SYMBOL drivers/hid/intel-ish-hid/intel-ishtp 0x1272113d ishtp_get_client_data +EXPORT_SYMBOL drivers/hid/intel-ish-hid/intel-ishtp 0x187348b2 ishtp_cl_disconnect +EXPORT_SYMBOL drivers/hid/intel-ish-hid/intel-ishtp 0x3e22e78d ishtp_reset_handler +EXPORT_SYMBOL drivers/hid/intel-ish-hid/intel-ishtp 0x40f651bc ishtp_trace_callback +EXPORT_SYMBOL drivers/hid/intel-ish-hid/intel-ishtp 0x448da610 ishtp_cl_rx_get_rb +EXPORT_SYMBOL drivers/hid/intel-ish-hid/intel-ishtp 0x4d523fa7 ishtp_get_device +EXPORT_SYMBOL drivers/hid/intel-ish-hid/intel-ishtp 0x59b622ad ishtp_cl_driver_register +EXPORT_SYMBOL drivers/hid/intel-ish-hid/intel-ishtp 0x5f9b0501 ishtp_get_fw_client_id +EXPORT_SYMBOL drivers/hid/intel-ish-hid/intel-ishtp 0x6734fd1c ishtp_cl_driver_unregister +EXPORT_SYMBOL drivers/hid/intel-ish-hid/intel-ishtp 0x7e228ab6 ishtp_set_connection_state +EXPORT_SYMBOL drivers/hid/intel-ish-hid/intel-ishtp 0x87fd2555 ishtp_cl_unlink +EXPORT_SYMBOL drivers/hid/intel-ish-hid/intel-ishtp 0x8a0d534f ishtp_get_drvdata +EXPORT_SYMBOL drivers/hid/intel-ish-hid/intel-ishtp 0x8a5ea511 ishtp_recv +EXPORT_SYMBOL drivers/hid/intel-ish-hid/intel-ishtp 0x8db61ee1 ishtp_cl_flush_queues +EXPORT_SYMBOL drivers/hid/intel-ish-hid/intel-ishtp 0x90453ba7 ishtp_set_tx_ring_size +EXPORT_SYMBOL drivers/hid/intel-ish-hid/intel-ishtp 0x91e7aba6 ishtp_cl_send +EXPORT_SYMBOL drivers/hid/intel-ish-hid/intel-ishtp 0x963fb73e ishtp_cl_io_rb_recycle +EXPORT_SYMBOL drivers/hid/intel-ish-hid/intel-ishtp 0x96ef84dd ishtp_dev_to_cl_device +EXPORT_SYMBOL drivers/hid/intel-ish-hid/intel-ishtp 0x9f3fe26f ishtp_start +EXPORT_SYMBOL drivers/hid/intel-ish-hid/intel-ishtp 0xa3652aad ishtp_cl_link +EXPORT_SYMBOL drivers/hid/intel-ish-hid/intel-ishtp 0xa5ac3096 ishtp_send_resume +EXPORT_SYMBOL drivers/hid/intel-ish-hid/intel-ishtp 0xa6b6f023 ishtp_set_drvdata +EXPORT_SYMBOL drivers/hid/intel-ish-hid/intel-ishtp 0xa984cd8a ishtp_device_init +EXPORT_SYMBOL drivers/hid/intel-ish-hid/intel-ishtp 0xa9999f5d ishtp_get_pci_device +EXPORT_SYMBOL drivers/hid/intel-ish-hid/intel-ishtp 0xa9ca67b2 ishtp_reset_compl_handler +EXPORT_SYMBOL drivers/hid/intel-ish-hid/intel-ishtp 0xafd7ff51 ishtp_cl_get_tx_free_buffer_size +EXPORT_SYMBOL drivers/hid/intel-ish-hid/intel-ishtp 0xb4b1f368 ishtp_cl_connect +EXPORT_SYMBOL drivers/hid/intel-ish-hid/intel-ishtp 0xbee536a6 ishtp_device +EXPORT_SYMBOL drivers/hid/intel-ish-hid/intel-ishtp 0xc16b6250 ishtp_register_event_cb +EXPORT_SYMBOL drivers/hid/intel-ish-hid/intel-ishtp 0xc264b0b3 ishtp_cl_set_fw_client_id +EXPORT_SYMBOL drivers/hid/intel-ish-hid/intel-ishtp 0xc54868c9 ish_hw_reset +EXPORT_SYMBOL drivers/hid/intel-ish-hid/intel-ishtp 0xd2171e69 ishtp_cl_free +EXPORT_SYMBOL drivers/hid/intel-ish-hid/intel-ishtp 0xd51e2147 ishtp_cl_allocate +EXPORT_SYMBOL drivers/hid/intel-ish-hid/intel-ishtp 0xd765f1ea ishtp_set_client_data +EXPORT_SYMBOL drivers/hid/intel-ish-hid/intel-ishtp 0xdb03c555 ishtp_get_ishtp_device +EXPORT_SYMBOL drivers/hid/intel-ish-hid/intel-ishtp 0xe56d2166 ishtp_fw_cl_get_client +EXPORT_SYMBOL drivers/hid/intel-ish-hid/intel-ishtp 0xf0896cfb ishtp_fw_cl_by_uuid +EXPORT_SYMBOL drivers/hid/intel-ish-hid/intel-ishtp 0xf7d90613 ishtp_cl_tx_empty +EXPORT_SYMBOL drivers/hid/intel-ish-hid/intel-ishtp 0xfd6a314d ishtp_bus_remove_all_clients +EXPORT_SYMBOL drivers/hid/intel-ish-hid/intel-ishtp 0xff2c4b24 ishtp_set_rx_ring_size +EXPORT_SYMBOL drivers/hv/hv_vmbus 0xcd1a89fd vmbus_recvpacket +EXPORT_SYMBOL drivers/hv/hv_vmbus 0xcdc8d373 vmbus_sendpacket +EXPORT_SYMBOL drivers/hwmon/hwmon-vid 0x2f9e7f8e vid_which_vrm +EXPORT_SYMBOL drivers/hwmon/hwmon-vid 0x446615bd vid_from_reg +EXPORT_SYMBOL drivers/hwmon/sch56xx-common 0x01568393 sch56xx_read_virtual_reg +EXPORT_SYMBOL drivers/hwmon/sch56xx-common 0x34257f35 sch56xx_watchdog_unregister +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/hwmon/sch56xx-common 0xf483e076 sch56xx_watchdog_register +EXPORT_SYMBOL drivers/i2c/algos/i2c-algo-bit 0x1d23035d i2c_bit_add_numbered_bus +EXPORT_SYMBOL drivers/i2c/algos/i2c-algo-bit 0x7cc9491a i2c_bit_algo +EXPORT_SYMBOL drivers/i2c/algos/i2c-algo-bit 0xa89c3d79 i2c_bit_add_bus +EXPORT_SYMBOL drivers/i2c/algos/i2c-algo-pca 0x4f6a2cd4 i2c_pca_add_bus +EXPORT_SYMBOL drivers/i2c/algos/i2c-algo-pca 0xb436738a i2c_pca_add_numbered_bus +EXPORT_SYMBOL drivers/i2c/busses/i2c-amd756 0x497a39ec amd756_smbus +EXPORT_SYMBOL drivers/iio/accel/bma400_core 0x8949b49b bma400_regmap_config +EXPORT_SYMBOL drivers/iio/accel/bma400_core 0xcf7466dc bma400_probe +EXPORT_SYMBOL drivers/iio/accel/bma400_core 0xd679e030 bma400_remove +EXPORT_SYMBOL drivers/iio/accel/kxsd9 0x3230a319 kxsd9_dev_pm_ops +EXPORT_SYMBOL drivers/iio/accel/kxsd9 0x7e365a1a kxsd9_common_probe +EXPORT_SYMBOL drivers/iio/accel/kxsd9 0x7fd42e33 kxsd9_common_remove +EXPORT_SYMBOL drivers/iio/accel/mma9551_core 0x07260033 mma9551_read_accel_chan +EXPORT_SYMBOL drivers/iio/accel/mma9551_core 0x1d5f3878 mma9551_set_device_state +EXPORT_SYMBOL drivers/iio/accel/mma9551_core 0x41ef446c mma9551_read_accel_scale +EXPORT_SYMBOL drivers/iio/accel/mma9551_core 0x4ba6109a mma9551_read_version +EXPORT_SYMBOL drivers/iio/accel/mma9551_core 0x5247daf2 mma9551_write_config_word +EXPORT_SYMBOL drivers/iio/accel/mma9551_core 0x54ee0c39 mma9551_read_status_word +EXPORT_SYMBOL drivers/iio/accel/mma9551_core 0x5d4c4aa2 mma9551_set_power_state +EXPORT_SYMBOL drivers/iio/accel/mma9551_core 0x634aecd7 mma9551_read_config_byte +EXPORT_SYMBOL drivers/iio/accel/mma9551_core 0x80a9e7ed mma9551_read_config_word +EXPORT_SYMBOL drivers/iio/accel/mma9551_core 0x86dafda1 mma9551_update_config_bits +EXPORT_SYMBOL drivers/iio/accel/mma9551_core 0x919c684c mma9551_read_status_words +EXPORT_SYMBOL drivers/iio/accel/mma9551_core 0x9f91dab4 mma9551_read_status_byte +EXPORT_SYMBOL drivers/iio/accel/mma9551_core 0xbcd7fe96 mma9551_sleep +EXPORT_SYMBOL drivers/iio/accel/mma9551_core 0xc00600ab mma9551_write_config_byte +EXPORT_SYMBOL drivers/iio/accel/mma9551_core 0xcb743dd3 mma9551_read_config_words +EXPORT_SYMBOL drivers/iio/accel/mma9551_core 0xcc4b8ed4 mma9551_app_reset +EXPORT_SYMBOL drivers/iio/accel/mma9551_core 0xcf954861 mma9551_gpio_config +EXPORT_SYMBOL drivers/iio/accel/mma9551_core 0xde2c0f24 mma9551_write_config_words +EXPORT_SYMBOL drivers/iio/accel/st_accel 0x5bc0d214 st_accel_common_probe +EXPORT_SYMBOL drivers/iio/accel/st_accel 0xc23a4000 st_accel_common_remove +EXPORT_SYMBOL drivers/iio/accel/st_accel 0xcfd619f3 st_accel_get_settings +EXPORT_SYMBOL drivers/iio/adc/qcom-vadc-common 0x70e6eca1 qcom_vadc_decimation_from_dt +EXPORT_SYMBOL drivers/iio/adc/qcom-vadc-common 0xcae36995 qcom_vadc_scale +EXPORT_SYMBOL drivers/iio/adc/qcom-vadc-common 0xf253ae31 qcom_adc5_hw_scale +EXPORT_SYMBOL drivers/iio/buffer/industrialio-buffer-dmaengine 0x6d8bdff7 iio_dmaengine_buffer_alloc +EXPORT_SYMBOL drivers/iio/buffer/industrialio-triggered-buffer 0x482f81c9 iio_triggered_buffer_cleanup +EXPORT_SYMBOL drivers/iio/buffer/industrialio-triggered-buffer 0xe4cf3ada iio_triggered_buffer_setup +EXPORT_SYMBOL drivers/iio/buffer/kfifo_buf 0x2635ccd9 devm_iio_kfifo_allocate +EXPORT_SYMBOL drivers/iio/buffer/kfifo_buf 0xe2fa1eb5 iio_kfifo_allocate +EXPORT_SYMBOL drivers/iio/buffer/kfifo_buf 0xf3b6fea6 iio_kfifo_free +EXPORT_SYMBOL drivers/iio/chemical/bme680_core 0x142ca306 bme680_regmap_config +EXPORT_SYMBOL drivers/iio/common/hid-sensors/hid-sensor-iio-common 0x02f83f61 hid_sensor_parse_common_attributes +EXPORT_SYMBOL drivers/iio/common/hid-sensors/hid-sensor-iio-common 0x10ad0d5b hid_sensor_convert_timestamp +EXPORT_SYMBOL drivers/iio/common/hid-sensors/hid-sensor-iio-common 0x26b20ada hid_sensor_read_poll_value +EXPORT_SYMBOL drivers/iio/common/hid-sensors/hid-sensor-iio-common 0x2f5f5362 hid_sensor_batch_mode_supported +EXPORT_SYMBOL drivers/iio/common/hid-sensors/hid-sensor-iio-common 0x7f7621ec hid_sensor_format_scale +EXPORT_SYMBOL drivers/iio/common/hid-sensors/hid-sensor-iio-common 0x85a954ad hid_sensor_write_samp_freq_value +EXPORT_SYMBOL drivers/iio/common/hid-sensors/hid-sensor-iio-common 0x992e9a4e hid_sensor_set_report_latency +EXPORT_SYMBOL drivers/iio/common/hid-sensors/hid-sensor-iio-common 0x9bc939be hid_sensor_write_raw_hyst_value +EXPORT_SYMBOL drivers/iio/common/hid-sensors/hid-sensor-iio-common 0xba22e8f4 hid_sensor_read_raw_hyst_value +EXPORT_SYMBOL drivers/iio/common/hid-sensors/hid-sensor-iio-common 0xc631964c hid_sensor_get_report_latency +EXPORT_SYMBOL drivers/iio/common/hid-sensors/hid-sensor-iio-common 0xf0744cde hid_sensor_read_samp_freq_value +EXPORT_SYMBOL drivers/iio/common/hid-sensors/hid-sensor-trigger 0x1e44022d hid_sensor_remove_trigger +EXPORT_SYMBOL drivers/iio/common/hid-sensors/hid-sensor-trigger 0x5b531919 hid_sensor_setup_trigger +EXPORT_SYMBOL drivers/iio/common/hid-sensors/hid-sensor-trigger 0x6ce0078e hid_sensor_power_state +EXPORT_SYMBOL drivers/iio/common/hid-sensors/hid-sensor-trigger 0xeec37424 hid_sensor_pm_ops +EXPORT_SYMBOL drivers/iio/common/ms_sensors/ms_sensors_i2c 0x045688dd ms_sensors_read_prom_word +EXPORT_SYMBOL drivers/iio/common/ms_sensors/ms_sensors_i2c 0x10beedf9 ms_sensors_ht_read_temperature +EXPORT_SYMBOL drivers/iio/common/ms_sensors/ms_sensors_i2c 0x1ebd7bc7 ms_sensors_write_heater +EXPORT_SYMBOL drivers/iio/common/ms_sensors/ms_sensors_i2c 0x2d2f5cd5 ms_sensors_reset +EXPORT_SYMBOL drivers/iio/common/ms_sensors/ms_sensors_i2c 0x3acf24a9 ms_sensors_ht_read_humidity +EXPORT_SYMBOL drivers/iio/common/ms_sensors/ms_sensors_i2c 0x42b6a050 ms_sensors_convert_and_read +EXPORT_SYMBOL drivers/iio/common/ms_sensors/ms_sensors_i2c 0x7e11e5f2 ms_sensors_tp_read_prom +EXPORT_SYMBOL drivers/iio/common/ms_sensors/ms_sensors_i2c 0x7fe14a86 ms_sensors_show_heater +EXPORT_SYMBOL drivers/iio/common/ms_sensors/ms_sensors_i2c 0xa5f7b2c2 ms_sensors_show_battery_low +EXPORT_SYMBOL drivers/iio/common/ms_sensors/ms_sensors_i2c 0xa744b256 ms_sensors_read_serial +EXPORT_SYMBOL drivers/iio/common/ms_sensors/ms_sensors_i2c 0xbe6cc304 ms_sensors_read_temp_and_pressure +EXPORT_SYMBOL drivers/iio/common/ms_sensors/ms_sensors_i2c 0xd2a58b25 ms_sensors_write_resolution +EXPORT_SYMBOL drivers/iio/common/ssp_sensors/sensorhub 0x5739c846 ssp_get_sensor_delay +EXPORT_SYMBOL drivers/iio/common/ssp_sensors/sensorhub 0x8f9d927f ssp_register_consumer +EXPORT_SYMBOL drivers/iio/common/ssp_sensors/sensorhub 0xab67205c ssp_enable_sensor +EXPORT_SYMBOL drivers/iio/common/ssp_sensors/sensorhub 0xb096b21b ssp_disable_sensor +EXPORT_SYMBOL drivers/iio/common/ssp_sensors/sensorhub 0xd10a45d0 ssp_change_delay +EXPORT_SYMBOL drivers/iio/common/ssp_sensors/ssp_iio 0x07d1f739 ssp_common_buffer_postenable +EXPORT_SYMBOL drivers/iio/common/ssp_sensors/ssp_iio 0x36d0f623 ssp_common_process_data +EXPORT_SYMBOL drivers/iio/common/ssp_sensors/ssp_iio 0xb109e664 ssp_common_buffer_postdisable +EXPORT_SYMBOL drivers/iio/common/st_sensors/st_sensors 0x074d7047 st_sensors_trigger_handler +EXPORT_SYMBOL drivers/iio/common/st_sensors/st_sensors 0x1016d6d7 st_sensors_allocate_trigger +EXPORT_SYMBOL drivers/iio/common/st_sensors/st_sensors 0x1a3665e5 st_sensors_power_enable +EXPORT_SYMBOL drivers/iio/common/st_sensors/st_sensors 0x314095de st_sensors_set_enable +EXPORT_SYMBOL drivers/iio/common/st_sensors/st_sensors 0x3383177f st_sensors_sysfs_scale_avail +EXPORT_SYMBOL drivers/iio/common/st_sensors/st_sensors 0x33eb7c2d st_sensors_dev_name_probe +EXPORT_SYMBOL drivers/iio/common/st_sensors/st_sensors 0x4c8fdc72 st_sensors_set_axis_enable +EXPORT_SYMBOL drivers/iio/common/st_sensors/st_sensors 0x516f6fb9 st_sensors_set_odr +EXPORT_SYMBOL drivers/iio/common/st_sensors/st_sensors 0x5fa6437c st_sensors_set_fullscale_by_gain +EXPORT_SYMBOL drivers/iio/common/st_sensors/st_sensors 0x77868333 st_sensors_set_dataready_irq +EXPORT_SYMBOL drivers/iio/common/st_sensors/st_sensors 0x847a145f st_sensors_init_sensor +EXPORT_SYMBOL drivers/iio/common/st_sensors/st_sensors 0x93f8b221 st_sensors_debugfs_reg_access +EXPORT_SYMBOL drivers/iio/common/st_sensors/st_sensors 0xa1c15ac4 st_sensors_read_info_raw +EXPORT_SYMBOL drivers/iio/common/st_sensors/st_sensors 0xad26866b st_sensors_validate_device +EXPORT_SYMBOL drivers/iio/common/st_sensors/st_sensors 0xcd13ea50 st_sensors_verify_id +EXPORT_SYMBOL drivers/iio/common/st_sensors/st_sensors 0xd05f50d9 st_sensors_deallocate_trigger +EXPORT_SYMBOL drivers/iio/common/st_sensors/st_sensors 0xdaa21639 st_sensors_power_disable +EXPORT_SYMBOL drivers/iio/common/st_sensors/st_sensors 0xdf59b56f st_sensors_sysfs_sampling_frequency_avail +EXPORT_SYMBOL drivers/iio/common/st_sensors/st_sensors 0xf0a82709 st_sensors_get_settings_index +EXPORT_SYMBOL drivers/iio/common/st_sensors/st_sensors_i2c 0x2ee2113e st_sensors_i2c_configure +EXPORT_SYMBOL drivers/iio/common/st_sensors/st_sensors_spi 0xd9bb9060 st_sensors_spi_configure +EXPORT_SYMBOL drivers/iio/gyro/mpu3050 0x6c0266b5 mpu3050_common_remove +EXPORT_SYMBOL drivers/iio/gyro/mpu3050 0x6c618fce mpu3050_common_probe +EXPORT_SYMBOL drivers/iio/gyro/mpu3050 0x8c67539b mpu3050_dev_pm_ops +EXPORT_SYMBOL drivers/iio/gyro/st_gyro 0xa959e898 st_gyro_get_settings +EXPORT_SYMBOL drivers/iio/gyro/st_gyro 0xb0fa4947 st_gyro_common_remove +EXPORT_SYMBOL drivers/iio/gyro/st_gyro 0xcee4015f st_gyro_common_probe +EXPORT_SYMBOL drivers/iio/humidity/hts221 0xa7407d9d hts221_pm_ops +EXPORT_SYMBOL drivers/iio/humidity/hts221 0xf7a2fe08 hts221_probe +EXPORT_SYMBOL drivers/iio/imu/adis_lib 0xadc70c57 adis_enable_irq +EXPORT_SYMBOL drivers/iio/imu/adis_lib 0xffffbf5a adis_debugfs_reg_access +EXPORT_SYMBOL drivers/iio/imu/bmi160/bmi160_core 0x301e4d09 bmi160_regmap_config +EXPORT_SYMBOL drivers/iio/imu/bmi160/bmi160_core 0xca19cfae bmi160_enable_irq +EXPORT_SYMBOL drivers/iio/imu/fxos8700_core 0x452f846e fxos8700_regmap_config +EXPORT_SYMBOL drivers/iio/imu/st_lsm6dsx/st_lsm6dsx 0x28b6b7d1 st_lsm6dsx_probe +EXPORT_SYMBOL drivers/iio/imu/st_lsm6dsx/st_lsm6dsx 0xeef187f1 st_lsm6dsx_pm_ops +EXPORT_SYMBOL drivers/iio/industrialio 0x0ab4d001 iio_device_set_clock +EXPORT_SYMBOL drivers/iio/industrialio 0x13a64955 iio_device_alloc +EXPORT_SYMBOL drivers/iio/industrialio 0x16e6b966 iio_device_unregister +EXPORT_SYMBOL drivers/iio/industrialio 0x2165b104 iio_trigger_free +EXPORT_SYMBOL drivers/iio/industrialio 0x25179f31 iio_push_event +EXPORT_SYMBOL drivers/iio/industrialio 0x2d6bcdcb iio_trigger_generic_data_rdy_poll +EXPORT_SYMBOL drivers/iio/industrialio 0x31d9f6aa iio_trigger_notify_done +EXPORT_SYMBOL drivers/iio/industrialio 0x42a1f1a9 iio_get_time_res +EXPORT_SYMBOL drivers/iio/industrialio 0x5e55beee iio_trigger_unregister +EXPORT_SYMBOL drivers/iio/industrialio 0x6649fd9c __iio_trigger_register +EXPORT_SYMBOL drivers/iio/industrialio 0x6d964f2c iio_bus_type +EXPORT_SYMBOL drivers/iio/industrialio 0x72b676fa iio_trigger_set_immutable +EXPORT_SYMBOL drivers/iio/industrialio 0x7d18e81f iio_buffer_init +EXPORT_SYMBOL drivers/iio/industrialio 0x8426b53f iio_read_mount_matrix +EXPORT_SYMBOL drivers/iio/industrialio 0x902ba723 iio_device_free +EXPORT_SYMBOL drivers/iio/industrialio 0x9bd9ac0c iio_trigger_poll +EXPORT_SYMBOL drivers/iio/industrialio 0xa68b9a6a iio_trigger_using_own +EXPORT_SYMBOL drivers/iio/industrialio 0xaf2fcdea iio_trigger_alloc +EXPORT_SYMBOL drivers/iio/industrialio 0xb3f07d16 iio_triggered_buffer_postenable +EXPORT_SYMBOL drivers/iio/industrialio 0xb7876b92 iio_get_time_ns +EXPORT_SYMBOL drivers/iio/industrialio 0xc9250a7d iio_trigger_poll_chained +EXPORT_SYMBOL drivers/iio/industrialio 0xd336a8c8 iio_triggered_buffer_predisable +EXPORT_SYMBOL drivers/iio/industrialio 0xdf76bbeb iio_pollfunc_store_time +EXPORT_SYMBOL drivers/iio/industrialio 0xe2b470e9 iio_read_const_attr +EXPORT_SYMBOL drivers/iio/industrialio 0xef2e4328 iio_trigger_validate_own_device +EXPORT_SYMBOL drivers/iio/industrialio 0xf02e8be0 __iio_device_register +EXPORT_SYMBOL drivers/iio/industrialio-configfs 0x3d820555 iio_configfs_subsys +EXPORT_SYMBOL drivers/iio/industrialio-sw-device 0x44ade4b2 iio_sw_device_destroy +EXPORT_SYMBOL drivers/iio/industrialio-sw-device 0xa00d3752 iio_sw_device_create +EXPORT_SYMBOL drivers/iio/industrialio-sw-device 0xa84d11ab iio_register_sw_device_type +EXPORT_SYMBOL drivers/iio/industrialio-sw-device 0xcf045620 iio_unregister_sw_device_type +EXPORT_SYMBOL drivers/iio/industrialio-sw-trigger 0x46b85db4 iio_register_sw_trigger_type +EXPORT_SYMBOL drivers/iio/industrialio-sw-trigger 0x7adedbc2 iio_sw_trigger_destroy +EXPORT_SYMBOL drivers/iio/industrialio-sw-trigger 0x8be7ea36 iio_sw_trigger_create +EXPORT_SYMBOL drivers/iio/industrialio-sw-trigger 0xbfe8c545 iio_unregister_sw_trigger_type +EXPORT_SYMBOL drivers/iio/industrialio-triggered-event 0xa33f052e iio_triggered_event_cleanup +EXPORT_SYMBOL drivers/iio/industrialio-triggered-event 0xc6295498 iio_triggered_event_setup +EXPORT_SYMBOL drivers/iio/light/st_uvis25_core 0x082d4893 st_uvis25_pm_ops +EXPORT_SYMBOL drivers/iio/light/st_uvis25_core 0xf8175a9c st_uvis25_probe +EXPORT_SYMBOL drivers/iio/magnetometer/bmc150_magn 0x213ab6b0 bmc150_magn_pm_ops +EXPORT_SYMBOL drivers/iio/magnetometer/bmc150_magn 0x418b7082 bmc150_magn_remove +EXPORT_SYMBOL drivers/iio/magnetometer/bmc150_magn 0x432a8536 bmc150_magn_probe +EXPORT_SYMBOL drivers/iio/magnetometer/bmc150_magn 0x841ea0a8 bmc150_magn_regmap_config +EXPORT_SYMBOL drivers/iio/magnetometer/hmc5843_core 0x2647e29e hmc5843_common_resume +EXPORT_SYMBOL drivers/iio/magnetometer/hmc5843_core 0x62307806 hmc5843_common_probe +EXPORT_SYMBOL drivers/iio/magnetometer/hmc5843_core 0x864f0788 hmc5843_common_remove +EXPORT_SYMBOL drivers/iio/magnetometer/hmc5843_core 0xac91ede8 hmc5843_common_suspend +EXPORT_SYMBOL drivers/iio/magnetometer/st_magn 0x28dd94b1 st_magn_common_probe +EXPORT_SYMBOL drivers/iio/magnetometer/st_magn 0x38ad2339 st_magn_get_settings +EXPORT_SYMBOL drivers/iio/magnetometer/st_magn 0xf7aebfad st_magn_common_remove +EXPORT_SYMBOL drivers/iio/pressure/bmp280 0x2bc2cbd2 bmp280_common_probe +EXPORT_SYMBOL drivers/iio/pressure/bmp280 0x2d341f83 bmp180_regmap_config +EXPORT_SYMBOL drivers/iio/pressure/bmp280 0xb476771f bmp280_dev_pm_ops +EXPORT_SYMBOL drivers/iio/pressure/bmp280 0xc7b2c2e1 bmp280_regmap_config +EXPORT_SYMBOL drivers/iio/pressure/ms5611_core 0x2b5eb671 ms5611_remove +EXPORT_SYMBOL drivers/iio/pressure/ms5611_core 0xf93e28b7 ms5611_probe +EXPORT_SYMBOL drivers/iio/pressure/st_pressure 0x7341e6ae st_press_common_probe +EXPORT_SYMBOL drivers/iio/pressure/st_pressure 0xc9b233bd st_press_get_settings +EXPORT_SYMBOL drivers/iio/pressure/st_pressure 0xe9a69ba6 st_press_common_remove +EXPORT_SYMBOL drivers/infiniband/core/ib_cm 0x0d171137 ib_cm_notify +EXPORT_SYMBOL drivers/infiniband/core/ib_cm 0x1e3215e5 ib_send_cm_mra +EXPORT_SYMBOL drivers/infiniband/core/ib_cm 0x1eb55994 ib_create_cm_id +EXPORT_SYMBOL drivers/infiniband/core/ib_cm 0x202b86fd ib_destroy_cm_id +EXPORT_SYMBOL drivers/infiniband/core/ib_cm 0x331f639e ib_send_cm_sidr_rep +EXPORT_SYMBOL drivers/infiniband/core/ib_cm 0x4147dc00 ib_send_cm_req +EXPORT_SYMBOL drivers/infiniband/core/ib_cm 0x4dd54837 ib_send_cm_dreq +EXPORT_SYMBOL drivers/infiniband/core/ib_cm 0x578b234e ib_cm_init_qp_attr +EXPORT_SYMBOL drivers/infiniband/core/ib_cm 0x63f6cc94 ib_cm_listen +EXPORT_SYMBOL drivers/infiniband/core/ib_cm 0x69824a14 ibcm_reject_msg +EXPORT_SYMBOL drivers/infiniband/core/ib_cm 0x70a89585 ib_send_cm_rej +EXPORT_SYMBOL drivers/infiniband/core/ib_cm 0x7e97d90e ib_send_cm_sidr_req +EXPORT_SYMBOL drivers/infiniband/core/ib_cm 0x976d0edd ib_send_cm_drep +EXPORT_SYMBOL drivers/infiniband/core/ib_cm 0xaa8c7b62 cm_class +EXPORT_SYMBOL drivers/infiniband/core/ib_cm 0xb3a37a04 ib_send_cm_rep +EXPORT_SYMBOL drivers/infiniband/core/ib_cm 0xcbeddd82 ib_cm_insert_listen +EXPORT_SYMBOL drivers/infiniband/core/ib_cm 0xda1cf00f ib_send_cm_rtu +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x007385bb ibdev_crit +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x0247fbc0 ib_init_ah_attr_from_path +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x0305c142 ib_get_rmpp_segment +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x03cdbb59 rdma_restrack_get +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x04005ddb rdma_translate_ip +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x042e9b2d ib_device_set_netdev +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x0517e06a ib_get_eth_speed +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x07d7ff49 rdma_restrack_kadd +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x0998215d ib_rdmacg_try_charge +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x0be054e8 ib_sa_guid_info_rec_query +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x0c86f5cb ib_sa_register_client +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x0ca2c361 rdma_nl_multicast +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x0d13c6ed rdma_nl_put_driver_string +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x0ec2b581 ib_mr_pool_init +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x0f74283e ib_reg_user_mr +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x1074c697 ib_cancel_mad +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x10dd3c7c ib_unregister_event_handler +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x10ec2c62 ib_get_cached_lmc +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x11ef4049 ib_device_put +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x1290c050 rdma_user_mmap_entry_get_pgoff +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x12acacd7 ib_get_net_dev_by_params +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x16fe1dcb rdma_nl_put_driver_u64_hex +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x184621a4 ib_get_rdma_header_version +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x1907dfb6 ib_set_vf_guid +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x1b037462 __rdma_block_iter_start +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x1b2179dc ib_create_send_mad +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x1b43f311 ib_free_cq +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x1b9fcaed __ib_alloc_pd +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x1c7d6805 ib_detach_mcast +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x1cdf631d rdma_link_unregister +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x1d8b3d67 ib_drain_sq +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x1e7591c1 rdma_get_gid_attr +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x1ef4a4c2 ib_sa_get_mcmember_rec +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x22179585 ib_device_get_by_netdev +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x229b59df ib_find_cached_pkey +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x22f3cf93 ib_pack +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x23840993 ib_free_send_mad +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x238736aa ib_unregister_device_and_put +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x25315683 rdma_copy_ah_attr +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x25b016da ib_register_client +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x275615a7 ib_dealloc_pd_user +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x2956af1f rdma_roce_rescan_device +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x2a91bb33 ib_cache_gid_type_str +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x2afab66b ibnl_put_attr +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x2b9f8aab ib_process_cq_direct +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x2ccb7950 ibdev_emerg +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x2dd91357 ib_set_client_data +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x2f1d4bca ib_init_ah_from_mcmember +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x305e5701 rdma_addr_size_kss +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x3505ace0 ib_map_mr_sg +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x37e651ab ib_dealloc_device +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x38c606fb ib_get_cached_port_state +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x3abc83bc ib_open_qp +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x3fc2387c ib_ud_header_unpack +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x3fdf4741 ib_destroy_cq_user +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x3fe54413 ib_mr_pool_destroy +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x403921b9 ib_create_qp_security +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x4139729b ib_destroy_wq +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x42bb64a1 ib_create_srq_user +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x4329adbf rdma_restrack_uadd +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 0x44f0093d rdma_alloc_netdev +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x45fb8985 rdma_nl_chk_listeners +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x471cb6c0 rdma_user_mmap_entry_insert +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x487a2918 ib_sa_sendonly_fullmem_support +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x49e86a0e ib_get_gids_from_rdma_hdr +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x4c896516 ib_create_ah_from_wc +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 0x4e95de6a rdma_rw_ctx_init +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x4ed2ca5e ib_cq_pool_get +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x5022a7f9 ib_register_event_handler +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x53384b9b _ib_alloc_device +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x54328db8 ib_unregister_mad_agent +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x548933a3 rdma_query_gid +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x5513bf75 ibdev_printk +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x576e7979 ib_find_gid +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x5a6fc249 ib_device_get_by_name +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x5b864be3 ib_modify_qp_with_udata +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x5d24c502 ib_modify_mad +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x5d5a6a66 ib_find_exact_cached_pkey +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x613b1e2e ib_is_mad_class_rmpp +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x6156a93b rdma_nl_unicast_wait +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x61cb65ba ib_dealloc_xrcd +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x61d24c52 ib_rate_to_mbps +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x63b9803b rdma_hold_gid_attr +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x6837bce7 ib_create_wq +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x687322bf rdma_destroy_ah_attr +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x687daefe ib_advise_mr +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x68bcea7b ib_query_port +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x69d2c62e rdma_umap_priv_init +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x6ab994e4 ibdev_warn +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x6b3287d7 ib_drain_rq +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x6b958320 ib_ud_ip4_csum +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x6f3614b6 rdma_is_zero_gid +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x6f92eab4 ib_modify_device +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x6fb0fa52 rdma_nl_put_driver_u64 +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x725df99e rdma_set_cq_moderation +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x75195acb ib_modify_srq +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x75a729a0 rdma_nl_unregister +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x760660c2 ib_alloc_mr_integrity +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x786a9448 ib_create_rwq_ind_table +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x787ccc4c ib_get_mad_data_offset +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x7a4ade85 rdma_user_mmap_entry_get +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x7af4ca5b ib_create_qp +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x7b56b034 ib_unregister_driver +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x7c077784 ib_query_pkey +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x7c3014cc ib_attach_mcast +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x7cc1e43c __ib_alloc_cq +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x7d4702be __ib_alloc_cq_any +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x7d8797dd ib_destroy_qp_user +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x7ea93f89 rdma_move_ah_attr +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x7f2d119c rdma_nl_put_driver_u32 +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x7f97a423 __ib_create_cq +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x814825a6 ib_post_send_mad +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x8417f675 rdma_rw_ctx_destroy +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x84e1e81b ib_alloc_mr_user +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x86cef180 rdma_addr_size +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x87b9e4a7 rdma_user_mmap_entry_put +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x895f708f ib_mr_pool_get +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x8e7528da __rdma_block_iter_next +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x8f964792 ib_get_cached_pkey +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x90e807c7 ib_cache_gid_parse_type_str +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x91b04a6f ib_port_unregister_module_stat +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x95036847 ib_drain_qp +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x96e4f9b2 ib_sa_join_multicast +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x977ba6c3 rdma_resolve_ip +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x97a39b4c ibdev_notice +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x98840026 rdma_nl_stat_hwcounter_entry +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x99068c38 rdma_restrack_del +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x9a66b881 rdma_restrack_get_byid +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x9c3aeb1f ib_get_cached_subnet_prefix +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x9dcb28fa rdma_init_netdev +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x9df0c3e8 rdma_nl_put_driver_u32_hex +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x9e0aa10c ib_init_ah_attr_from_wc +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x9e63662d ib_destroy_srq_user +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x9f232387 ib_modify_qp +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x9f74c0fc ib_get_device_fw_str +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xa0ef6c19 rdma_user_mmap_io +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xa432baf6 ib_unpack +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xa44c797e rdma_rw_ctx_signature_init +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xa63e80d9 ib_check_mr_status +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xa64d628d rdma_rw_mr_factor +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xa6e8600e ib_unregister_device_queued +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xa833f63e rdma_restrack_set_task +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xa87611f0 ib_free_recv_mad +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xaa00b7a1 rdma_rw_ctx_post +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xab34c8be rdma_user_mmap_entry_insert_range +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xab7126cb __ib_alloc_xrcd +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xab79b86b rdma_rw_ctx_destroy_signature +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xac3c97a1 ib_rdmacg_uncharge +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xae956dce ib_rate_to_mult +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xb09a69e3 rdma_nl_unicast +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xb0de17c8 ib_dereg_mr_user +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xb137882d ib_unregister_device +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xb1a27daa ib_port_register_module_stat +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xb36e4148 ib_sa_pack_path +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xb3834121 ib_get_vf_guid +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xb3f4be94 ib_get_vf_config +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xb4469cea rdma_read_gid_l2_fields +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xb605b2b8 ib_dispatch_event +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xb6d3f806 rdma_copy_src_l2_addr +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xb6e7b387 rdma_dev_access_netns +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xb7852a05 ib_ud_header_init +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xb78f9c67 ib_mr_pool_put +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xbc595912 rdma_find_gid +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xbc9db363 rdma_put_gid_attr +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xbd0b068a ib_destroy_rwq_ind_table +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xbe120f9d ib_sa_path_rec_get +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xbe2a8692 ib_unregister_client +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xc0fdf01e ibdev_alert +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xc5affd17 ib_query_qp +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xc5dcf64f ib_cq_pool_put +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xc6739e6a ib_mad_kernel_rmpp_agent +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xc7235ac9 rdma_move_grh_sgid_attr +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xc94e5f3c ib_register_mad_agent +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xc96cf9e6 ib_set_vf_link_state +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xc9851937 rdma_port_get_link_layer +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xcba27cc5 rdma_create_user_ah +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xcc149ada ib_map_mr_sg_pi +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xcc3ed288 ib_register_device +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xccb5ece4 rdma_link_register +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xced00aea rdma_nl_register +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xd075a156 ib_modify_port +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xd1c8c7f5 rdma_destroy_ah_user +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xd24192ea rdma_replace_ah_attr +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xd6636ca6 rdma_addr_size_in6 +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xd6e65d77 ib_modify_qp_is_ok +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xd8ae66c2 rdma_addr_cancel +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xd8bbdfb9 rdma_read_gid_attr_ndev_rcu +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xd93c5d5a ib_sa_service_rec_query +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xd990e179 ibdev_info +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xda0d50ec ib_sa_cancel_query +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xdbee4141 ib_find_pkey +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xdc60100e ib_get_vf_stats +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xddc97d2c ib_close_qp +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xde22207c rdma_restrack_put +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xde2de386 rdma_create_ah +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xdff8130c rdma_rw_ctx_wrs +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xe0ffa82c ib_resize_cq +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xe5840ec6 ib_wc_status_msg +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xe5936a58 ib_sg_to_pages +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xe5a78c1e ib_sa_unpack_path +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xe6f4f2e6 rdma_modify_ah +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xe777782c ibnl_put_msg +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xe7b52e5f mult_to_ib_rate +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xe9ba8614 rdma_query_ah +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xe9e799fc ib_ud_header_pack +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xee8503ab ib_set_device_ops +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xeeb3f66a ibdev_err +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xefc8372f roce_gid_type_mask_support +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xf0899035 rdma_restrack_count +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xf3e4d44d ib_query_srq +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 0xf80c8fb1 rdma_find_gid_by_port +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xf8f962f8 ib_modify_wq +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xf916c86e rdma_read_gid_hw_context +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xfaa9b396 rdma_user_mmap_entry_remove +EXPORT_SYMBOL drivers/infiniband/core/ib_uverbs 0x064804b4 uverbs_idr_class +EXPORT_SYMBOL drivers/infiniband/core/ib_uverbs 0x0910798c ib_umem_odp_unmap_dma_pages +EXPORT_SYMBOL drivers/infiniband/core/ib_uverbs 0x11b68b49 ib_umem_odp_alloc_child +EXPORT_SYMBOL drivers/infiniband/core/ib_uverbs 0x1b54bd5d ib_copy_path_rec_from_user +EXPORT_SYMBOL drivers/infiniband/core/ib_uverbs 0x1e1b0655 flow_resources_alloc +EXPORT_SYMBOL drivers/infiniband/core/ib_uverbs 0x1e7f5434 ib_copy_ah_attr_to_user +EXPORT_SYMBOL drivers/infiniband/core/ib_uverbs 0x20686142 uverbs_get_flags32 +EXPORT_SYMBOL drivers/infiniband/core/ib_uverbs 0x260caaf4 ib_umem_odp_get +EXPORT_SYMBOL drivers/infiniband/core/ib_uverbs 0x2cde9fe3 flow_resources_add +EXPORT_SYMBOL drivers/infiniband/core/ib_uverbs 0x2cf44b7b ib_umem_copy_from +EXPORT_SYMBOL drivers/infiniband/core/ib_uverbs 0x36b16283 ib_umem_odp_alloc_implicit +EXPORT_SYMBOL drivers/infiniband/core/ib_uverbs 0x38874c4d ib_umem_get +EXPORT_SYMBOL drivers/infiniband/core/ib_uverbs 0x3fb6b71e ib_uverbs_flow_resources_free +EXPORT_SYMBOL drivers/infiniband/core/ib_uverbs 0x3fc1ea1a uverbs_finalize_uobj_create +EXPORT_SYMBOL drivers/infiniband/core/ib_uverbs 0x40594505 uverbs_uobject_fd_release +EXPORT_SYMBOL drivers/infiniband/core/ib_uverbs 0x47f7bf39 uverbs_destroy_def_handler +EXPORT_SYMBOL drivers/infiniband/core/ib_uverbs 0x5fc3c040 uverbs_uobject_put +EXPORT_SYMBOL drivers/infiniband/core/ib_uverbs 0x63057f4b ib_copy_path_rec_to_user +EXPORT_SYMBOL drivers/infiniband/core/ib_uverbs 0x6e4ab344 uverbs_fd_class +EXPORT_SYMBOL drivers/infiniband/core/ib_uverbs 0x7117dfe4 ib_umem_find_best_pgsz +EXPORT_SYMBOL drivers/infiniband/core/ib_uverbs 0x75aa6cd3 _uverbs_get_const +EXPORT_SYMBOL drivers/infiniband/core/ib_uverbs 0x8c351816 uverbs_copy_to +EXPORT_SYMBOL drivers/infiniband/core/ib_uverbs 0x969cdc36 uverbs_get_flags64 +EXPORT_SYMBOL drivers/infiniband/core/ib_uverbs 0xa8284a84 _uverbs_alloc +EXPORT_SYMBOL drivers/infiniband/core/ib_uverbs 0xae671d04 ib_copy_qp_attr_to_user +EXPORT_SYMBOL drivers/infiniband/core/ib_uverbs 0xaee20abb ib_umem_page_count +EXPORT_SYMBOL drivers/infiniband/core/ib_uverbs 0xb417b556 ib_uverbs_get_ucontext_file +EXPORT_SYMBOL drivers/infiniband/core/ib_uverbs 0xb6f8c818 ib_umem_odp_release +EXPORT_SYMBOL drivers/infiniband/core/ib_uverbs 0xe4ed07e4 ib_umem_odp_map_dma_pages +EXPORT_SYMBOL drivers/infiniband/core/ib_uverbs 0xe8cb8ac0 ib_umem_release +EXPORT_SYMBOL drivers/infiniband/core/iw_cm 0x165d74d9 iw_destroy_cm_id +EXPORT_SYMBOL drivers/infiniband/core/iw_cm 0x377189c1 iw_cm_listen +EXPORT_SYMBOL drivers/infiniband/core/iw_cm 0x69a39069 iw_create_cm_id +EXPORT_SYMBOL drivers/infiniband/core/iw_cm 0x7c16a998 iw_cm_accept +EXPORT_SYMBOL drivers/infiniband/core/iw_cm 0x8e269fb3 iw_cm_connect +EXPORT_SYMBOL drivers/infiniband/core/iw_cm 0x99130821 iw_cm_disconnect +EXPORT_SYMBOL drivers/infiniband/core/iw_cm 0xa75aed1b iw_cm_init_qp_attr +EXPORT_SYMBOL drivers/infiniband/core/iw_cm 0xc48e7faa iw_cm_reject +EXPORT_SYMBOL drivers/infiniband/core/iw_cm 0xf3df871f iwcm_reject_msg +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0x0294e9c1 rdma_destroy_id +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0x04da5f7f rdma_resolve_route +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0x068a811b rdma_reject +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0x09881453 rdma_connect +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0x174e0e0a rdma_leave_multicast +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0x1b60b592 rdma_disconnect +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0x27ed79f4 rdma_init_qp_attr +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0x3fe7d9f3 rdma_set_reuseaddr +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0x4198d551 __rdma_accept +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0x50f348d3 rdma_join_multicast +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0x545f0f0a rdma_set_ib_path +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0x55adf20f rdma_notify +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0x57511ea9 rdma_set_service_type +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0x5e94a6b8 rdma_listen +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0x8981c8a0 rdma_consumer_reject_data +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0x907df803 rdma_event_msg +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0x93a5bfaa rdma_res_to_id +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0x94dbf17c rdma_get_service_id +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0x9d02d27a rdma_destroy_qp +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0xac1dc214 rdma_create_qp +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0xb20e704e __rdma_accept_ece +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0xb8874d23 rdma_resolve_addr +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0xbee1aa0e rdma_set_afonly +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0xdbd7bfef __rdma_create_id +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0xdc323acc rdma_set_ack_timeout +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0xec1592a3 rdma_iw_cm_id +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0xed93d67e rdma_read_gids +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0xeec97819 rdma_bind_addr +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0xf345a986 rdma_connect_ece +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0xfe9265a1 rdma_reject_msg +EXPORT_SYMBOL drivers/infiniband/sw/rdmavt/rdmavt 0x05375af0 rvt_mcast_find +EXPORT_SYMBOL drivers/infiniband/sw/rdmavt/rdmavt 0x0860a917 rvt_init_port +EXPORT_SYMBOL drivers/infiniband/sw/rdmavt/rdmavt 0x0e385842 ib_rvt_state_ops +EXPORT_SYMBOL drivers/infiniband/sw/rdmavt/rdmavt 0x15694cbb rvt_invalidate_rkey +EXPORT_SYMBOL drivers/infiniband/sw/rdmavt/rdmavt 0x19c3d9b6 rvt_lkey_ok +EXPORT_SYMBOL drivers/infiniband/sw/rdmavt/rdmavt 0x221ff470 rvt_register_device +EXPORT_SYMBOL drivers/infiniband/sw/rdmavt/rdmavt 0x311e27c5 rvt_del_timers_sync +EXPORT_SYMBOL drivers/infiniband/sw/rdmavt/rdmavt 0x47b04528 rvt_cq_enter +EXPORT_SYMBOL drivers/infiniband/sw/rdmavt/rdmavt 0x4824297c rvt_rc_rnr_retry +EXPORT_SYMBOL drivers/infiniband/sw/rdmavt/rdmavt 0x516d1be2 rvt_error_qp +EXPORT_SYMBOL drivers/infiniband/sw/rdmavt/rdmavt 0x60138515 rvt_qp_iter_init +EXPORT_SYMBOL drivers/infiniband/sw/rdmavt/rdmavt 0x63c035ca rvt_get_credit +EXPORT_SYMBOL drivers/infiniband/sw/rdmavt/rdmavt 0x651154f6 rvt_alloc_device +EXPORT_SYMBOL drivers/infiniband/sw/rdmavt/rdmavt 0x6e82112a rvt_stop_rc_timers +EXPORT_SYMBOL drivers/infiniband/sw/rdmavt/rdmavt 0x7160042c rvt_fast_reg_mr +EXPORT_SYMBOL drivers/infiniband/sw/rdmavt/rdmavt 0x749ce8a1 rvt_add_retry_timer_ext +EXPORT_SYMBOL drivers/infiniband/sw/rdmavt/rdmavt 0x7adc7b5f rvt_qp_iter_next +EXPORT_SYMBOL drivers/infiniband/sw/rdmavt/rdmavt 0x9119e94e rvt_send_complete +EXPORT_SYMBOL drivers/infiniband/sw/rdmavt/rdmavt 0x9437563e rvt_restart_sge +EXPORT_SYMBOL drivers/infiniband/sw/rdmavt/rdmavt 0x9f9371e8 rvt_copy_sge +EXPORT_SYMBOL drivers/infiniband/sw/rdmavt/rdmavt 0xa5f3da9c rvt_qp_iter +EXPORT_SYMBOL drivers/infiniband/sw/rdmavt/rdmavt 0xbdea27bd rvt_compute_aeth +EXPORT_SYMBOL drivers/infiniband/sw/rdmavt/rdmavt 0xc0a3e27a rvt_rkey_ok +EXPORT_SYMBOL drivers/infiniband/sw/rdmavt/rdmavt 0xc1078c4f rvt_get_rwqe +EXPORT_SYMBOL drivers/infiniband/sw/rdmavt/rdmavt 0xc212c022 rvt_rc_error +EXPORT_SYMBOL drivers/infiniband/sw/rdmavt/rdmavt 0xcd8a78f3 rvt_check_ah +EXPORT_SYMBOL drivers/infiniband/sw/rdmavt/rdmavt 0xd76120a2 rvt_dealloc_device +EXPORT_SYMBOL drivers/infiniband/sw/rdmavt/rdmavt 0xda52320d rvt_unregister_device +EXPORT_SYMBOL drivers/infiniband/sw/rdmavt/rdmavt 0xde40ee5b rvt_add_rnr_timer +EXPORT_SYMBOL drivers/infiniband/sw/rdmavt/rdmavt 0xe363711e rvt_comm_est +EXPORT_SYMBOL drivers/infiniband/sw/rdmavt/rdmavt 0xe3f93df9 rvt_ruc_loopback +EXPORT_SYMBOL drivers/infiniband/sw/rdmavt/rdmavt 0xe9cf3e43 rvt_rnr_tbl_to_usec +EXPORT_SYMBOL drivers/infiniband/ulp/rtrs/rtrs-client 0x233f6e8e rtrs_clt_query +EXPORT_SYMBOL drivers/infiniband/ulp/rtrs/rtrs-client 0x501f598d rtrs_permit_to_pdu +EXPORT_SYMBOL drivers/infiniband/ulp/rtrs/rtrs-client 0x594f1c05 rtrs_clt_put_permit +EXPORT_SYMBOL drivers/infiniband/ulp/rtrs/rtrs-client 0x65fe43b7 rtrs_clt_open +EXPORT_SYMBOL drivers/infiniband/ulp/rtrs/rtrs-client 0xde429a67 rtrs_clt_get_permit +EXPORT_SYMBOL drivers/infiniband/ulp/rtrs/rtrs-client 0xea63a044 rtrs_clt_request +EXPORT_SYMBOL drivers/infiniband/ulp/rtrs/rtrs-client 0xf3263b12 rtrs_clt_close +EXPORT_SYMBOL drivers/infiniband/ulp/rtrs/rtrs-core 0x56ea1a30 rtrs_ib_dev_put +EXPORT_SYMBOL drivers/infiniband/ulp/rtrs/rtrs-core 0x5b01e41d sockaddr_to_str +EXPORT_SYMBOL drivers/infiniband/ulp/rtrs/rtrs-core 0x675dd1a9 rtrs_rdma_dev_pd_init +EXPORT_SYMBOL drivers/infiniband/ulp/rtrs/rtrs-core 0x887302f3 rtrs_addr_to_sockaddr +EXPORT_SYMBOL drivers/infiniband/ulp/rtrs/rtrs-core 0xd326e2ee rtrs_rdma_dev_pd_deinit +EXPORT_SYMBOL drivers/infiniband/ulp/rtrs/rtrs-core 0xe5aaff48 rtrs_ib_dev_find_or_add +EXPORT_SYMBOL drivers/infiniband/ulp/rtrs/rtrs-server 0x0852c4fb rtrs_srv_set_sess_priv +EXPORT_SYMBOL drivers/infiniband/ulp/rtrs/rtrs-server 0x52b98702 rtrs_srv_get_queue_depth +EXPORT_SYMBOL drivers/infiniband/ulp/rtrs/rtrs-server 0x56162eb6 rtrs_srv_get_sess_name +EXPORT_SYMBOL drivers/infiniband/ulp/rtrs/rtrs-server 0x845dace7 rtrs_srv_close +EXPORT_SYMBOL drivers/infiniband/ulp/rtrs/rtrs-server 0xa9d441c2 rtrs_srv_open +EXPORT_SYMBOL drivers/infiniband/ulp/rtrs/rtrs-server 0xedea101a rtrs_srv_resp_rdma +EXPORT_SYMBOL drivers/input/gameport/gameport 0x41010182 gameport_set_phys +EXPORT_SYMBOL drivers/input/gameport/gameport 0x89d1d8c7 gameport_stop_polling +EXPORT_SYMBOL drivers/input/gameport/gameport 0xd27f96f6 __gameport_register_port +EXPORT_SYMBOL drivers/input/gameport/gameport 0xd4680297 gameport_unregister_port +EXPORT_SYMBOL drivers/input/gameport/gameport 0xd46df9c5 gameport_start_polling +EXPORT_SYMBOL drivers/input/gameport/gameport 0xe1eee3c2 gameport_open +EXPORT_SYMBOL drivers/input/gameport/gameport 0xe52b9b42 __gameport_register_driver +EXPORT_SYMBOL drivers/input/gameport/gameport 0xe56ac895 gameport_unregister_driver +EXPORT_SYMBOL drivers/input/gameport/gameport 0xe77718ae gameport_close +EXPORT_SYMBOL drivers/input/input-polldev 0x0adad88e input_register_polled_device +EXPORT_SYMBOL drivers/input/input-polldev 0x21ff06b1 input_allocate_polled_device +EXPORT_SYMBOL drivers/input/input-polldev 0x27aa8057 input_unregister_polled_device +EXPORT_SYMBOL drivers/input/input-polldev 0x5253a67b input_free_polled_device +EXPORT_SYMBOL drivers/input/input-polldev 0x89bbbe51 devm_input_allocate_polled_device +EXPORT_SYMBOL drivers/input/joystick/iforce/iforce 0x142a26ef iforce_init_device +EXPORT_SYMBOL drivers/input/joystick/iforce/iforce 0x8685782d iforce_process_packet +EXPORT_SYMBOL drivers/input/joystick/iforce/iforce 0xf348d3e4 iforce_send_packet +EXPORT_SYMBOL drivers/input/matrix-keymap 0x46e64d25 matrix_keypad_build_keymap +EXPORT_SYMBOL drivers/input/misc/ad714x 0x07a6ce7e ad714x_enable +EXPORT_SYMBOL drivers/input/misc/ad714x 0x76f553c5 ad714x_probe +EXPORT_SYMBOL drivers/input/misc/ad714x 0xf6cf0084 ad714x_disable +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/misc/cma3000_d0x 0xf3cc7496 cma3000_init +EXPORT_SYMBOL drivers/input/rmi4/rmi_core 0xd195054e rmi_unregister_transport_device +EXPORT_SYMBOL drivers/input/sparse-keymap 0x026731f3 sparse_keymap_report_event +EXPORT_SYMBOL drivers/input/sparse-keymap 0x2ed399ba sparse_keymap_setup +EXPORT_SYMBOL drivers/input/sparse-keymap 0x327ddb37 sparse_keymap_report_entry +EXPORT_SYMBOL drivers/input/sparse-keymap 0x5e17b812 sparse_keymap_entry_from_scancode +EXPORT_SYMBOL drivers/input/sparse-keymap 0xb4821c14 sparse_keymap_entry_from_keycode +EXPORT_SYMBOL drivers/input/touchscreen/ad7879 0x656565f6 ad7879_probe +EXPORT_SYMBOL drivers/input/touchscreen/ad7879 0xd17be058 ad7879_pm_ops +EXPORT_SYMBOL drivers/iommu/amd/iommu_v2 0x409c11e7 amd_iommu_bind_pasid +EXPORT_SYMBOL drivers/iommu/amd/iommu_v2 0x56f9590f amd_iommu_set_invalidate_ctx_cb +EXPORT_SYMBOL drivers/iommu/amd/iommu_v2 0x5828b811 amd_iommu_unbind_pasid +EXPORT_SYMBOL drivers/iommu/amd/iommu_v2 0x7157475f amd_iommu_init_device +EXPORT_SYMBOL drivers/iommu/amd/iommu_v2 0x7ce87f5a amd_iommu_set_invalid_ppr_cb +EXPORT_SYMBOL drivers/iommu/amd/iommu_v2 0xb89b8a68 amd_iommu_free_device +EXPORT_SYMBOL drivers/isdn/capi/kernelcapi 0x15c33f04 capi_ctr_down +EXPORT_SYMBOL drivers/isdn/capi/kernelcapi 0x2f184e56 capi_ctr_ready +EXPORT_SYMBOL drivers/isdn/capi/kernelcapi 0x30d0e1c0 detach_capi_ctr +EXPORT_SYMBOL drivers/isdn/capi/kernelcapi 0x8adadcea attach_capi_ctr +EXPORT_SYMBOL drivers/isdn/capi/kernelcapi 0xc42d2c2a capi_ctr_handle_message +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 0x2ae79973 mISDNipac_irq +EXPORT_SYMBOL drivers/isdn/hardware/mISDN/mISDNipac 0x552a257d mISDNisac_irq +EXPORT_SYMBOL drivers/isdn/hardware/mISDN/mISDNipac 0x8562b8ba mISDNisac_init +EXPORT_SYMBOL drivers/isdn/hardware/mISDN/mISDNipac 0xeb06047b mISDNipac_init +EXPORT_SYMBOL drivers/isdn/hardware/mISDN/mISDNisar 0x1d8f08c1 mISDNisar_init +EXPORT_SYMBOL drivers/isdn/hardware/mISDN/mISDNisar 0x823f7d67 mISDNisar_irq +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0x03a68066 mISDN_FsmRestartTimer +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0x060e2d44 mISDN_initbchannel +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0x096843d3 mISDN_unregister_device +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0x0dc63f5f get_next_bframe +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0x15defe31 mISDN_initdchannel +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0x19728cbd recv_Bchannel_skb +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0x208a5773 mISDN_register_Bprotocol +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 0x2eaa3be6 recv_Dchannel_skb +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 0x3174eba5 queue_ch_frame +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0x42163c32 mISDN_unregister_Bprotocol +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0x43b4e6aa get_next_dframe +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0x442a5c4c recv_Bchannel +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0x4691700b mISDN_freedchannel +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0x4f1505dc mISDN_freebchannel +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 0x6047df40 mISDN_FsmInitTimer +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0x6bb29a7a bchannel_senddata +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0x73a7c4bf recv_Dchannel +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0x77cb8618 mISDN_clear_bchannel +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0x78033519 mISDN_ctrl_bchannel +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0x8c36507c mISDNDevName4ch +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0x9c928457 mISDN_FsmNew +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0x9d8ba802 bchannel_get_rxbuf +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0xa4389067 recv_Echannel +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0xc3401729 mISDN_register_clock +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0xc8e827a2 dchannel_senddata +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 0xe8f617eb mISDN_unregister_clock +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0xf5bcb8e3 create_l1 +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0xf707a201 mISDN_register_device +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 0x0aff0bf6 ti_lmu_common_get_brt_res +EXPORT_SYMBOL drivers/leds/leds-ti-lmu-common 0x54a12ec4 ti_lmu_common_set_ramp +EXPORT_SYMBOL drivers/leds/leds-ti-lmu-common 0xa67423df ti_lmu_common_get_ramp_params +EXPORT_SYMBOL drivers/leds/leds-ti-lmu-common 0xced72aae ti_lmu_common_set_brightness +EXPORT_SYMBOL drivers/md/dm-log 0x0df9f916 dm_dirty_log_type_unregister +EXPORT_SYMBOL drivers/md/dm-log 0x3b521a4e dm_dirty_log_type_register +EXPORT_SYMBOL drivers/md/dm-log 0x5a938f25 dm_dirty_log_destroy +EXPORT_SYMBOL drivers/md/dm-log 0x8b43be8e dm_dirty_log_create +EXPORT_SYMBOL drivers/md/dm-snapshot 0x07ef12dc dm_exception_store_type_unregister +EXPORT_SYMBOL drivers/md/dm-snapshot 0x1f1aef18 dm_exception_store_type_register +EXPORT_SYMBOL drivers/md/dm-snapshot 0x1fdf5bb8 dm_exception_store_create +EXPORT_SYMBOL drivers/md/dm-snapshot 0x6747e06c dm_exception_store_destroy +EXPORT_SYMBOL drivers/md/dm-snapshot 0x6fe7e108 dm_snap_cow +EXPORT_SYMBOL drivers/md/dm-snapshot 0x76192eaf dm_snap_origin +EXPORT_SYMBOL drivers/md/raid456 0x5000d699 r5c_journal_mode_set +EXPORT_SYMBOL drivers/md/raid456 0xb2500e04 raid5_set_cache_size +EXPORT_SYMBOL drivers/media/common/b2c2/b2c2-flexcop 0x14ff75fe flexcop_i2c_request +EXPORT_SYMBOL drivers/media/common/b2c2/b2c2-flexcop 0x20a2d2b8 flexcop_device_initialize +EXPORT_SYMBOL drivers/media/common/b2c2/b2c2-flexcop 0x461c6190 flexcop_device_kfree +EXPORT_SYMBOL drivers/media/common/b2c2/b2c2-flexcop 0x46563c87 flexcop_pass_dmx_data +EXPORT_SYMBOL drivers/media/common/b2c2/b2c2-flexcop 0x5a4ed5d3 flexcop_wan_set_speed +EXPORT_SYMBOL drivers/media/common/b2c2/b2c2-flexcop 0x6b4963f8 flexcop_sram_ctrl +EXPORT_SYMBOL drivers/media/common/b2c2/b2c2-flexcop 0x710802dd flexcop_device_exit +EXPORT_SYMBOL drivers/media/common/b2c2/b2c2-flexcop 0x86be80a1 flexcop_device_kmalloc +EXPORT_SYMBOL drivers/media/common/b2c2/b2c2-flexcop 0x9548f8d9 flexcop_eeprom_check_mac_addr +EXPORT_SYMBOL drivers/media/common/b2c2/b2c2-flexcop 0xb274efb9 flexcop_dump_reg +EXPORT_SYMBOL drivers/media/common/b2c2/b2c2-flexcop 0xc1ee1304 flexcop_pass_dmx_packets +EXPORT_SYMBOL drivers/media/common/b2c2/b2c2-flexcop 0xcf70f212 flexcop_sram_set_dest +EXPORT_SYMBOL drivers/media/common/b2c2/b2c2-flexcop 0xef39d06c flexcop_pid_feed_control +EXPORT_SYMBOL drivers/media/common/cx2341x 0x256be3bc cx2341x_handler_set_50hz +EXPORT_SYMBOL drivers/media/common/cx2341x 0x48434fad cx2341x_handler_setup +EXPORT_SYMBOL drivers/media/common/cx2341x 0x55aa7c5f cx2341x_mpeg_ctrls +EXPORT_SYMBOL drivers/media/common/cx2341x 0x73b84449 cx2341x_handler_init +EXPORT_SYMBOL drivers/media/common/cx2341x 0x7531f864 cx2341x_handler_set_busy +EXPORT_SYMBOL drivers/media/common/cx2341x 0x8d3a49fd cx2341x_ctrl_get_menu +EXPORT_SYMBOL drivers/media/common/cx2341x 0xb9c8f3f1 cx2341x_update +EXPORT_SYMBOL drivers/media/common/cx2341x 0xc889377e cx2341x_log_status +EXPORT_SYMBOL drivers/media/common/cx2341x 0xdaff62f9 cx2341x_fill_defaults +EXPORT_SYMBOL drivers/media/common/cx2341x 0xe197a5dd cx2341x_ext_ctrls +EXPORT_SYMBOL drivers/media/common/cx2341x 0xeb854f47 cx2341x_ctrl_query +EXPORT_SYMBOL drivers/media/common/cypress_firmware 0x46216a8c cypress_load_firmware +EXPORT_SYMBOL drivers/media/common/tveeprom 0x0dbf0296 tveeprom_hauppauge_analog +EXPORT_SYMBOL drivers/media/common/tveeprom 0xdcad4665 tveeprom_read +EXPORT_SYMBOL drivers/media/common/videobuf2/videobuf2-common 0x71fc3bba vb2_verify_memory_type +EXPORT_SYMBOL drivers/media/common/videobuf2/videobuf2-common 0xe8d2b4de vb2_buffer_in_use +EXPORT_SYMBOL drivers/media/common/videobuf2/videobuf2-dvb 0x16e2795b vb2_dvb_get_frontend +EXPORT_SYMBOL drivers/media/common/videobuf2/videobuf2-dvb 0x2c595d42 vb2_dvb_alloc_frontend +EXPORT_SYMBOL drivers/media/common/videobuf2/videobuf2-dvb 0x6f38808b vb2_dvb_register_bus +EXPORT_SYMBOL drivers/media/common/videobuf2/videobuf2-dvb 0x95406ffe vb2_dvb_unregister_bus +EXPORT_SYMBOL drivers/media/common/videobuf2/videobuf2-dvb 0xb2d0769f vb2_dvb_dealloc_frontends +EXPORT_SYMBOL drivers/media/common/videobuf2/videobuf2-dvb 0xe9194922 vb2_dvb_find_frontend +EXPORT_SYMBOL drivers/media/common/videobuf2/videobuf2-memops 0xa21fa765 vb2_create_framevec +EXPORT_SYMBOL drivers/media/common/videobuf2/videobuf2-memops 0xccd197c7 vb2_destroy_framevec +EXPORT_SYMBOL drivers/media/common/videobuf2/videobuf2-v4l2 0x9356952b vb2_querybuf +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x08733236 intlog10 +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x09403c7a dvb_frontend_resume +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x10aebad7 dvb_generic_ioctl +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x1891700d dvb_unregister_device +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x19c719a8 dvb_ca_en50221_camready_irq +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x1b8b9608 dvb_unregister_adapter +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x27cd0825 dvb_register_device +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x2dc07ba8 dvb_generic_release +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x2f5cdf80 dvb_ringbuffer_write +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x3b93d71a dvb_frontend_sleep_until +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x3feecaf6 dvb_dmx_swfilter_raw +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x4cf3a00b dvb_dmxdev_init +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x5b6235b3 dvb_ca_en50221_camchange_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 0x67480317 dvb_dmx_init +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x7170ddcf dvb_remove_device +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x754c4921 dvb_register_adapter +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x7751ad77 dvb_dmx_swfilter_204 +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x7b0d51ce dvb_dmx_release +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x7c8bdf69 dvb_register_frontend +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x7f6214e1 dvb_dmxdev_release +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x80985cc4 dvb_dmx_swfilter +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x824d1e1d dvb_net_init +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x91a6794b dvb_ringbuffer_read_user +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0xb3352dd2 dvb_ringbuffer_empty +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0xc1a3dc0a dvb_ca_en50221_init +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0xc3f679f9 dvb_ringbuffer_write_user +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0xcbdc434a dvb_ca_en50221_release +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0xd71ec97e dvb_free_device +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0xd79b9d0a dvb_frontend_detach +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0xdbf304b8 dvb_net_release +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0xdcf60586 dvb_dmx_swfilter_packets +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0xe138ce6b dvb_ringbuffer_avail +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0xe379bf8c dvb_generic_open +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0xebbc2d9b dvb_ringbuffer_init +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0xf07bf519 dvb_frontend_suspend +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0xf1f9259f dvb_unregister_frontend +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0xf9586f53 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 0xfebb57d3 dvb_frontend_reinitialise +EXPORT_SYMBOL drivers/media/dvb-frontends/ascot2e 0x6233eb3f ascot2e_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/atbm8830 0x26443c21 atbm8830_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/au8522_common 0x026f0794 au8522_i2c_gate_ctrl +EXPORT_SYMBOL drivers/media/dvb-frontends/au8522_common 0x063c55bf au8522_readreg +EXPORT_SYMBOL drivers/media/dvb-frontends/au8522_common 0x151b7267 au8522_led_ctrl +EXPORT_SYMBOL drivers/media/dvb-frontends/au8522_common 0x160e71ee au8522_sleep +EXPORT_SYMBOL drivers/media/dvb-frontends/au8522_common 0x2db5a45d au8522_writereg +EXPORT_SYMBOL drivers/media/dvb-frontends/au8522_common 0x3dd4e168 au8522_get_state +EXPORT_SYMBOL drivers/media/dvb-frontends/au8522_common 0x769700e7 au8522_init +EXPORT_SYMBOL drivers/media/dvb-frontends/au8522_common 0xf2cd4d20 au8522_release_state +EXPORT_SYMBOL drivers/media/dvb-frontends/au8522_common 0xf9208ab6 au8522_analog_i2c_gate_ctrl +EXPORT_SYMBOL drivers/media/dvb-frontends/au8522_dig 0x85605118 au8522_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/bcm3510 0x527c4042 bcm3510_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/cx22700 0xc952702f cx22700_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/cx22702 0x1c7a5715 cx22702_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/cx24110 0xf01f71da cx24110_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/cx24113 0x2932ecb7 cx24113_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/cx24113 0xf44f95b1 cx24113_agc_callback +EXPORT_SYMBOL drivers/media/dvb-frontends/cx24116 0xed0e280b cx24116_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/cx24120 0xd1490f88 cx24120_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/cx24123 0x6a2b4ff0 cx24123_get_tuner_i2c_adapter +EXPORT_SYMBOL drivers/media/dvb-frontends/cx24123 0xdbbd4bad cx24123_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/cxd2820r 0xa9e1cf02 cxd2820r_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/cxd2841er 0x3e9fc7f0 cxd2841er_attach_s +EXPORT_SYMBOL drivers/media/dvb-frontends/cxd2841er 0xedb48406 cxd2841er_attach_t_c +EXPORT_SYMBOL drivers/media/dvb-frontends/cxd2880/cxd2880 0x94090e0f cxd2880_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/dib0070 0x0f19fe36 dib0070_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/dib0070 0x2e729ebd dib0070_set_rf_output +EXPORT_SYMBOL drivers/media/dvb-frontends/dib0070 0x6a24573b dib0070_ctrl_agc_filter +EXPORT_SYMBOL drivers/media/dvb-frontends/dib0070 0x792785f7 dib0070_wbd_offset +EXPORT_SYMBOL drivers/media/dvb-frontends/dib0070 0x9cad986e dib0070_get_rf_output +EXPORT_SYMBOL drivers/media/dvb-frontends/dib0090 0x1795255a dib0090_gain_control +EXPORT_SYMBOL drivers/media/dvb-frontends/dib0090 0x322ecc25 dib0090_update_tuning_table_7090 +EXPORT_SYMBOL drivers/media/dvb-frontends/dib0090 0x3ac38cfa dib0090_get_current_gain +EXPORT_SYMBOL drivers/media/dvb-frontends/dib0090 0x4cc7cb1a dib0090_get_wbd_target +EXPORT_SYMBOL drivers/media/dvb-frontends/dib0090 0x70667a18 dib0090_get_wbd_offset +EXPORT_SYMBOL drivers/media/dvb-frontends/dib0090 0x9364d2dc dib0090_set_dc_servo +EXPORT_SYMBOL drivers/media/dvb-frontends/dib0090 0xbf136a00 dib0090_fw_register +EXPORT_SYMBOL drivers/media/dvb-frontends/dib0090 0xc65e7863 dib0090_set_switch +EXPORT_SYMBOL drivers/media/dvb-frontends/dib0090 0xd2c75420 dib0090_get_tune_state +EXPORT_SYMBOL drivers/media/dvb-frontends/dib0090 0xe2dc020c dib0090_set_tune_state +EXPORT_SYMBOL drivers/media/dvb-frontends/dib0090 0xe6fa6609 dib0090_pwm_gain_reset +EXPORT_SYMBOL drivers/media/dvb-frontends/dib0090 0xe7959e8a dib0090_dcc_freq +EXPORT_SYMBOL drivers/media/dvb-frontends/dib0090 0xe84991c4 dib0090_set_vga +EXPORT_SYMBOL drivers/media/dvb-frontends/dib0090 0xed3187dd dib0090_register +EXPORT_SYMBOL drivers/media/dvb-frontends/dib0090 0xee2b3b30 dib0090_update_rframp_7090 +EXPORT_SYMBOL drivers/media/dvb-frontends/dib3000mb 0x38a8dc80 dib3000mb_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/dib3000mc 0x19fdd1d8 dib3000mc_get_tuner_i2c_master +EXPORT_SYMBOL drivers/media/dvb-frontends/dib3000mc 0x208caeba dib3000mc_pid_parse +EXPORT_SYMBOL drivers/media/dvb-frontends/dib3000mc 0x553e7862 dib3000mc_pid_control +EXPORT_SYMBOL drivers/media/dvb-frontends/dib3000mc 0x5937d131 dib3000mc_i2c_enumeration +EXPORT_SYMBOL drivers/media/dvb-frontends/dib3000mc 0x71048628 dib3000mc_set_config +EXPORT_SYMBOL drivers/media/dvb-frontends/dib3000mc 0xf3a58794 dib3000mc_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/dib7000m 0x1bd15fba dib7000m_pid_filter +EXPORT_SYMBOL drivers/media/dvb-frontends/dib7000m 0x2147797a dib7000m_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/dib7000m 0xb393dc45 dib7000m_pid_filter_ctrl +EXPORT_SYMBOL drivers/media/dvb-frontends/dib7000m 0xc0580af5 dib7000m_get_i2c_master +EXPORT_SYMBOL drivers/media/dvb-frontends/dib7000p 0x76d10774 dib7000p_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/dib8000 0xcd419bee dib8000_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/dib9000 0x0fb49b1e dib9000_fw_set_component_bus_speed +EXPORT_SYMBOL drivers/media/dvb-frontends/dib9000 0x2c5740d4 dib9000_get_component_bus_interface +EXPORT_SYMBOL drivers/media/dvb-frontends/dib9000 0x3242336a dib9000_set_slave_frontend +EXPORT_SYMBOL drivers/media/dvb-frontends/dib9000 0x346f429e dib9000_i2c_enumeration +EXPORT_SYMBOL drivers/media/dvb-frontends/dib9000 0x62de6399 dib9000_get_i2c_master +EXPORT_SYMBOL drivers/media/dvb-frontends/dib9000 0x8037d54d dib9000_set_i2c_adapter +EXPORT_SYMBOL drivers/media/dvb-frontends/dib9000 0x89eb7e7e dib9000_firmware_post_pll_init +EXPORT_SYMBOL drivers/media/dvb-frontends/dib9000 0x92e78f09 dib9000_fw_pid_filter +EXPORT_SYMBOL drivers/media/dvb-frontends/dib9000 0x9d7a8e50 dib9000_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/dib9000 0xb5cf8914 dib9000_get_slave_frontend +EXPORT_SYMBOL drivers/media/dvb-frontends/dib9000 0xd0c9a967 dib9000_get_tuner_interface +EXPORT_SYMBOL drivers/media/dvb-frontends/dib9000 0xe710827f dib9000_set_gpio +EXPORT_SYMBOL drivers/media/dvb-frontends/dib9000 0xf3894fd7 dib9000_fw_pid_filter_ctrl +EXPORT_SYMBOL drivers/media/dvb-frontends/dibx000_common 0x8385d90f dibx000_reset_i2c_master +EXPORT_SYMBOL drivers/media/dvb-frontends/dibx000_common 0x8ba4443c dibx000_init_i2c_master +EXPORT_SYMBOL drivers/media/dvb-frontends/dibx000_common 0xb0cceffc dibx000_i2c_set_speed +EXPORT_SYMBOL drivers/media/dvb-frontends/dibx000_common 0xb14149f9 dibx000_get_i2c_adapter +EXPORT_SYMBOL drivers/media/dvb-frontends/dibx000_common 0xc43d3f28 dibx000_exit_i2c_master +EXPORT_SYMBOL drivers/media/dvb-frontends/drx39xyj/drx39xyj 0x0fa57131 drx39xxj_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/drxd 0x9ab8a407 drxd_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/drxk 0x1405266d drxk_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/ds3000 0x0c3da682 ds3000_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/dvb-pll 0xf91a485d dvb_pll_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/dvb_dummy_fe 0x182434f0 dvb_dummy_fe_ofdm_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/dvb_dummy_fe 0xb3ea1098 dvb_dummy_fe_qpsk_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/dvb_dummy_fe 0xd9b25b40 dvb_dummy_fe_qam_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/ec100 0x55de38c2 ec100_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/helene 0x9739ff4f helene_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/helene 0xf23a53d8 helene_attach_s +EXPORT_SYMBOL drivers/media/dvb-frontends/horus3a 0x5c9c7404 horus3a_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/isl6405 0xb4b582b1 isl6405_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/isl6421 0xe5cb1421 isl6421_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/isl6423 0xe5a148ad isl6423_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/itd1000 0x57aff791 itd1000_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/ix2505v 0xcadb0ffd ix2505v_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/l64781 0xe8205caf l64781_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/lg2160 0x47f8c73b lg2160_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/lgdt3305 0xb886dc3e lgdt3305_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/lgdt3306a 0x77c882d7 lgdt3306a_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/lgdt330x 0x7f14a9eb lgdt330x_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/lgs8gl5 0x5439fc93 lgs8gl5_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/lgs8gxx 0xb748b65b lgs8gxx_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/lnbh25 0xc82f7dc3 lnbh25_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/lnbh29 0xf115b913 lnbh29_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/lnbp21 0x3783e065 lnbp21_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/lnbp21 0xfa5053cc lnbh24_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/lnbp22 0x50dbe91e lnbp22_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/m88ds3103 0x1fc61ab5 m88ds3103_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/m88ds3103 0xce2a41d3 m88ds3103_get_agc_pwm +EXPORT_SYMBOL drivers/media/dvb-frontends/m88rs2000 0x3a507114 m88rs2000_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/mb86a16 0x4262a430 mb86a16_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/mb86a20s 0xd1b998ed mb86a20s_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/mt312 0x20b41045 mt312_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/mt352 0x38718ef8 mt352_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/nxt200x 0x52bae755 nxt200x_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/nxt6000 0xf4f4a388 nxt6000_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/or51132 0xde9d0512 or51132_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/or51211 0x24ba9962 or51211_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/s5h1409 0x01916410 s5h1409_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/s5h1411 0x519603cc s5h1411_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/s5h1420 0xb3552377 s5h1420_get_tuner_i2c_adapter +EXPORT_SYMBOL drivers/media/dvb-frontends/s5h1420 0xce464794 s5h1420_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/s5h1432 0xcb2e0188 s5h1432_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/s921 0xedd643aa s921_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/si21xx 0xfb04edb5 si21xx_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/sp8870 0x439e8c09 sp8870_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/sp887x 0xdc7f2730 sp887x_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/stb0899 0xf88172d0 stb0899_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/stb6000 0xd2645207 stb6000_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/stb6100 0x626b998e stb6100_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/stv0288 0x2f92b5e7 stv0288_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/stv0297 0x6becb244 stv0297_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/stv0299 0xc45a199e stv0299_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/stv0367 0x3eb73915 stv0367ter_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/stv0367 0x4e2946f4 stv0367ddb_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/stv0367 0x8b143ffd stv0367cab_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/stv0900 0x7b69a689 stv0900_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/stv090x 0x2ba278cf stv090x_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/stv6110 0xed1f8c55 stv6110_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/stv6110x 0x7488dfa9 stv6110x_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/tda10021 0xcc28c5e7 tda10021_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/tda10023 0x63445ce8 tda10023_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/tda10048 0x1ab97194 tda10048_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/tda1004x 0x85aaf7aa tda10046_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/tda1004x 0xbaabbf28 tda10045_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/tda10086 0xcfec215b tda10086_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/tda665x 0x874a7a94 tda665x_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/tda8083 0xbeb5c14f tda8083_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/tda8261 0x0b2bb51d tda8261_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/tda826x 0xde7db673 tda826x_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/ts2020 0x8c598db7 ts2020_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/tua6100 0xba7efd4e tua6100_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/ves1820 0x0c876173 ves1820_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/ves1x93 0x2d46b924 ves1x93_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/zd1301_demod 0x6262d84d zd1301_demod_get_i2c_adapter +EXPORT_SYMBOL drivers/media/dvb-frontends/zd1301_demod 0xb78251a7 zd1301_demod_get_dvb_frontend +EXPORT_SYMBOL drivers/media/dvb-frontends/zl10036 0xed9af7cb zl10036_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/zl10039 0xbda5ab35 zl10039_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/zl10353 0x9ad8bf6a zl10353_attach +EXPORT_SYMBOL drivers/media/pci/b2c2/b2c2-flexcop-pci 0x51e6ae83 flexcop_dma_control_size_irq +EXPORT_SYMBOL drivers/media/pci/b2c2/b2c2-flexcop-pci 0x54e6818d flexcop_dma_xfer_control +EXPORT_SYMBOL drivers/media/pci/b2c2/b2c2-flexcop-pci 0x5fb1ba88 flexcop_dma_config +EXPORT_SYMBOL drivers/media/pci/b2c2/b2c2-flexcop-pci 0x71665382 flexcop_dma_config_timer +EXPORT_SYMBOL drivers/media/pci/b2c2/b2c2-flexcop-pci 0x9891e433 flexcop_dma_allocate +EXPORT_SYMBOL drivers/media/pci/b2c2/b2c2-flexcop-pci 0xd0df937c flexcop_dma_control_timer_irq +EXPORT_SYMBOL drivers/media/pci/b2c2/b2c2-flexcop-pci 0xfa39cabe flexcop_dma_free +EXPORT_SYMBOL drivers/media/pci/bt8xx/bt878 0x03af635f bt878_start +EXPORT_SYMBOL drivers/media/pci/bt8xx/bt878 0x42913fc7 bt878 +EXPORT_SYMBOL drivers/media/pci/bt8xx/bt878 0xba966787 bt878_device_control +EXPORT_SYMBOL drivers/media/pci/bt8xx/bt878 0xd5d0bdef bt878_num +EXPORT_SYMBOL drivers/media/pci/bt8xx/bt878 0xfcf7cf00 bt878_stop +EXPORT_SYMBOL drivers/media/pci/bt8xx/bttv 0x11dc4b6d bttv_gpio_enable +EXPORT_SYMBOL drivers/media/pci/bt8xx/bttv 0x4bd4006a bttv_sub_unregister +EXPORT_SYMBOL drivers/media/pci/bt8xx/bttv 0x52662a24 bttv_get_pcidev +EXPORT_SYMBOL drivers/media/pci/bt8xx/bttv 0x8ecf4acc bttv_write_gpio +EXPORT_SYMBOL drivers/media/pci/bt8xx/bttv 0x9650decf bttv_sub_register +EXPORT_SYMBOL drivers/media/pci/bt8xx/bttv 0xbcf2d2fb bttv_read_gpio +EXPORT_SYMBOL drivers/media/pci/bt8xx/dst 0x0164937f dst_error_recovery +EXPORT_SYMBOL drivers/media/pci/bt8xx/dst 0x2813189f dst_pio_disable +EXPORT_SYMBOL drivers/media/pci/bt8xx/dst 0x3e892a74 dst_error_bailout +EXPORT_SYMBOL drivers/media/pci/bt8xx/dst 0x43a983fd dst_check_sum +EXPORT_SYMBOL drivers/media/pci/bt8xx/dst 0xb2a28154 rdc_reset_state +EXPORT_SYMBOL drivers/media/pci/bt8xx/dst 0xb99d5888 dst_wait_dst_ready +EXPORT_SYMBOL drivers/media/pci/bt8xx/dst 0xd326e8c0 dst_attach +EXPORT_SYMBOL drivers/media/pci/bt8xx/dst 0xde216dc1 write_dst +EXPORT_SYMBOL drivers/media/pci/bt8xx/dst 0xdea600f8 dst_comm_init +EXPORT_SYMBOL drivers/media/pci/bt8xx/dst 0xfcbed321 read_dst +EXPORT_SYMBOL drivers/media/pci/bt8xx/dst_ca 0x114b8591 dst_ca_attach +EXPORT_SYMBOL drivers/media/pci/cx18/cx18 0x0e0ad964 cx18_claim_stream +EXPORT_SYMBOL drivers/media/pci/cx18/cx18 0x2cdea06d cx18_reset_ir_gpio +EXPORT_SYMBOL drivers/media/pci/cx18/cx18 0x4a05b6ce cx18_ext_init +EXPORT_SYMBOL drivers/media/pci/cx18/cx18 0x537eae4d cx18_stop_v4l2_encode_stream +EXPORT_SYMBOL drivers/media/pci/cx18/cx18 0xbe31d6ec cx18_start_v4l2_encode_stream +EXPORT_SYMBOL drivers/media/pci/cx18/cx18 0xd3701ab9 cx18_release_stream +EXPORT_SYMBOL drivers/media/pci/cx23885/altera-ci 0x55e9d0ec altera_ci_init +EXPORT_SYMBOL drivers/media/pci/cx23885/altera-ci 0x6ff7510d altera_ci_tuner_reset +EXPORT_SYMBOL drivers/media/pci/cx23885/altera-ci 0xdb3faf38 altera_ci_release +EXPORT_SYMBOL drivers/media/pci/cx23885/altera-ci 0xe66b9812 altera_ci_irq +EXPORT_SYMBOL drivers/media/pci/cx25821/cx25821 0x288e4545 cx25821_risc_databuffer_audio +EXPORT_SYMBOL drivers/media/pci/cx25821/cx25821 0x2c8dbb9c cx25821_set_gpiopin_direction +EXPORT_SYMBOL drivers/media/pci/cx25821/cx25821 0x44b517f5 cx25821_print_irqbits +EXPORT_SYMBOL drivers/media/pci/cx25821/cx25821 0x4e319ec6 cx25821_riscmem_alloc +EXPORT_SYMBOL drivers/media/pci/cx25821/cx25821 0x5cc1dd02 cx25821_sram_channel_dump_audio +EXPORT_SYMBOL drivers/media/pci/cx25821/cx25821 0x69226a19 cx25821_dev_get +EXPORT_SYMBOL drivers/media/pci/cx25821/cx25821 0xa204f401 cx25821_dev_unregister +EXPORT_SYMBOL drivers/media/pci/cx25821/cx25821 0xbe09ab49 cx25821_sram_channel_setup_audio +EXPORT_SYMBOL drivers/media/pci/cx25821/cx25821 0xe9050411 cx25821_sram_channels +EXPORT_SYMBOL drivers/media/pci/cx88/cx88-vp3054-i2c 0x0b01eb1e vp3054_i2c_probe +EXPORT_SYMBOL drivers/media/pci/cx88/cx88-vp3054-i2c 0x8617979e vp3054_i2c_remove +EXPORT_SYMBOL drivers/media/pci/cx88/cx8800 0x2104e712 cx88_enum_input +EXPORT_SYMBOL drivers/media/pci/cx88/cx8800 0x210e1944 cx88_video_mux +EXPORT_SYMBOL drivers/media/pci/cx88/cx8800 0xa43bf752 cx88_querycap +EXPORT_SYMBOL drivers/media/pci/cx88/cx8800 0xde182c40 cx88_set_freq +EXPORT_SYMBOL drivers/media/pci/cx88/cx8802 0x059051e1 cx8802_unregister_driver +EXPORT_SYMBOL drivers/media/pci/cx88/cx8802 0x25a6ba2b cx8802_buf_queue +EXPORT_SYMBOL drivers/media/pci/cx88/cx8802 0x2b7aa0f6 cx8802_get_driver +EXPORT_SYMBOL drivers/media/pci/cx88/cx8802 0x4d0ad8e0 cx8802_buf_prepare +EXPORT_SYMBOL drivers/media/pci/cx88/cx8802 0xca795688 cx8802_cancel_buffers +EXPORT_SYMBOL drivers/media/pci/cx88/cx8802 0xe32ab343 cx8802_start_dma +EXPORT_SYMBOL drivers/media/pci/cx88/cx8802 0xfac8271e cx8802_register_driver +EXPORT_SYMBOL drivers/media/pci/cx88/cx88xx 0x08a60ac5 cx88_set_tvnorm +EXPORT_SYMBOL drivers/media/pci/cx88/cx88xx 0x0ca158d6 cx88_sram_channel_setup +EXPORT_SYMBOL drivers/media/pci/cx88/cx88xx 0x1482852e cx88_get_stereo +EXPORT_SYMBOL drivers/media/pci/cx88/cx88xx 0x1b494aa4 cx88_risc_buffer +EXPORT_SYMBOL drivers/media/pci/cx88/cx88xx 0x2473605a cx88_risc_databuffer +EXPORT_SYMBOL drivers/media/pci/cx88/cx88xx 0x29a54620 cx88_core_get +EXPORT_SYMBOL drivers/media/pci/cx88/cx88xx 0x2ec3da9d cx88_core_irq +EXPORT_SYMBOL drivers/media/pci/cx88/cx88xx 0x47ca45b3 cx88_shutdown +EXPORT_SYMBOL drivers/media/pci/cx88/cx88xx 0x5b1ab5fe 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 0x61aec08f cx88_wakeup +EXPORT_SYMBOL drivers/media/pci/cx88/cx88xx 0x625810a3 cx88_ir_start +EXPORT_SYMBOL drivers/media/pci/cx88/cx88xx 0x7f1ca8de cx88_set_stereo +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 0xae1d2217 cx88_sram_channel_dump +EXPORT_SYMBOL drivers/media/pci/cx88/cx88xx 0xb4178bec cx88_ir_stop +EXPORT_SYMBOL drivers/media/pci/cx88/cx88xx 0xbd07adf1 cx88_newstation +EXPORT_SYMBOL drivers/media/pci/cx88/cx88xx 0xbeeb9191 cx88_set_tvaudio +EXPORT_SYMBOL drivers/media/pci/cx88/cx88xx 0xc213fcd3 cx88_core_put +EXPORT_SYMBOL drivers/media/pci/cx88/cx88xx 0xd18c3d29 cx88_set_scale +EXPORT_SYMBOL drivers/media/pci/cx88/cx88xx 0xda551586 cx88_vdev_init +EXPORT_SYMBOL drivers/media/pci/cx88/cx88xx 0xeef256ae cx88_dsp_detect_stereo_sap +EXPORT_SYMBOL drivers/media/pci/ddbridge/ddbridge-dummy-fe 0xc50304a7 ddbridge_dummy_fe_qam_attach +EXPORT_SYMBOL drivers/media/pci/ivtv/ivtv 0x11bf0376 ivtv_vapi_result +EXPORT_SYMBOL drivers/media/pci/ivtv/ivtv 0x14f67530 ivtv_debug +EXPORT_SYMBOL drivers/media/pci/ivtv/ivtv 0x1d4b2a9e ivtv_firmware_check +EXPORT_SYMBOL drivers/media/pci/ivtv/ivtv 0x269201d4 ivtv_clear_irq_mask +EXPORT_SYMBOL drivers/media/pci/ivtv/ivtv 0x60436bc4 ivtv_stop_v4l2_encode_stream +EXPORT_SYMBOL drivers/media/pci/ivtv/ivtv 0x6e9cd4e7 ivtv_claim_stream +EXPORT_SYMBOL drivers/media/pci/ivtv/ivtv 0x7a9e2fcf ivtv_reset_ir_gpio +EXPORT_SYMBOL drivers/media/pci/ivtv/ivtv 0x7be7f21e ivtv_udma_setup +EXPORT_SYMBOL drivers/media/pci/ivtv/ivtv 0x82790e07 ivtv_start_v4l2_encode_stream +EXPORT_SYMBOL drivers/media/pci/ivtv/ivtv 0x8eb3e5d0 ivtv_ext_init +EXPORT_SYMBOL drivers/media/pci/ivtv/ivtv 0x991bb671 ivtv_init_on_first_open +EXPORT_SYMBOL drivers/media/pci/ivtv/ivtv 0x9d586c91 ivtv_release_stream +EXPORT_SYMBOL drivers/media/pci/ivtv/ivtv 0xae277692 ivtv_udma_unmap +EXPORT_SYMBOL drivers/media/pci/ivtv/ivtv 0xb76adfd6 ivtv_set_irq_mask +EXPORT_SYMBOL drivers/media/pci/ivtv/ivtv 0xbc849498 ivtv_api +EXPORT_SYMBOL drivers/media/pci/ivtv/ivtv 0xc4b8341b ivtv_udma_alloc +EXPORT_SYMBOL drivers/media/pci/ivtv/ivtv 0xc6a5ef1a ivtv_udma_prepare +EXPORT_SYMBOL drivers/media/pci/ivtv/ivtv 0xe171a76c ivtv_vapi +EXPORT_SYMBOL drivers/media/pci/saa7134/saa7134 0x01f25335 saa7134_pgtable_free +EXPORT_SYMBOL drivers/media/pci/saa7134/saa7134 0x0395cf70 saa7134_tvaudio_setmute +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 0x379d1133 saa7134_dmasound_exit +EXPORT_SYMBOL drivers/media/pci/saa7134/saa7134 0x4b4116b7 saa7134_set_gpio +EXPORT_SYMBOL drivers/media/pci/saa7134/saa7134 0x581824fa saa7134_devlist_lock +EXPORT_SYMBOL drivers/media/pci/saa7134/saa7134 0x66d42dc4 saa7134_pgtable_alloc +EXPORT_SYMBOL drivers/media/pci/saa7134/saa7134 0x730c4be3 saa7134_boards +EXPORT_SYMBOL drivers/media/pci/saa7134/saa7134 0x799c302b saa7134_set_dmabits +EXPORT_SYMBOL drivers/media/pci/saa7134/saa7134 0xadfea269 saa7134_ts_register +EXPORT_SYMBOL drivers/media/pci/saa7134/saa7134 0xb39104c1 saa7134_dmasound_init +EXPORT_SYMBOL drivers/media/pci/saa7134/saa7134 0xb6887a7f saa7134_pgtable_build +EXPORT_SYMBOL drivers/media/pci/saa7134/saa7134 0xdbaa1f3a saa7134_ts_unregister +EXPORT_SYMBOL drivers/media/pci/saa7134/saa7134 0xe644901d saa_dsp_writel +EXPORT_SYMBOL drivers/media/pci/ttpci/ttpci-eeprom 0x07014f03 ttpci_eeprom_parse_mac +EXPORT_SYMBOL drivers/media/pci/ttpci/ttpci-eeprom 0x693e74ba ttpci_eeprom_decode_mac +EXPORT_SYMBOL drivers/media/radio/tea575x 0x35622c19 snd_tea575x_set_freq +EXPORT_SYMBOL drivers/media/radio/tea575x 0x526cd957 snd_tea575x_hw_init +EXPORT_SYMBOL drivers/media/radio/tea575x 0x5ec6d5d8 snd_tea575x_g_tuner +EXPORT_SYMBOL drivers/media/radio/tea575x 0xa8fbf0bf snd_tea575x_enum_freq_bands +EXPORT_SYMBOL drivers/media/radio/tea575x 0xc8cbe93d snd_tea575x_s_hw_freq_seek +EXPORT_SYMBOL drivers/media/radio/tea575x 0xd66337e8 snd_tea575x_init +EXPORT_SYMBOL drivers/media/radio/tea575x 0xfa71bd09 snd_tea575x_exit +EXPORT_SYMBOL drivers/media/rc/rc-core 0x25af7208 ir_raw_handler_unregister +EXPORT_SYMBOL drivers/media/rc/rc-core 0x2ad91f6e ir_raw_gen_pl +EXPORT_SYMBOL drivers/media/rc/rc-core 0x3131b773 ir_raw_encode_scancode +EXPORT_SYMBOL drivers/media/rc/rc-core 0x4725eda1 ir_raw_encode_carrier +EXPORT_SYMBOL drivers/media/rc/rc-core 0x7cf52901 ir_raw_gen_manchester +EXPORT_SYMBOL drivers/media/rc/rc-core 0x9e12e343 ir_raw_gen_pd +EXPORT_SYMBOL drivers/media/rc/rc-core 0xace48f22 ir_raw_handler_register +EXPORT_SYMBOL drivers/media/tuners/fc0011 0xf6f1247e fc0011_attach +EXPORT_SYMBOL drivers/media/tuners/fc0012 0x7f769917 fc0012_attach +EXPORT_SYMBOL drivers/media/tuners/fc0013 0x2fc142b7 fc0013_rc_cal_add +EXPORT_SYMBOL drivers/media/tuners/fc0013 0x6a33035b fc0013_rc_cal_reset +EXPORT_SYMBOL drivers/media/tuners/fc0013 0xb50990bc fc0013_attach +EXPORT_SYMBOL drivers/media/tuners/max2165 0x9f69cb24 max2165_attach +EXPORT_SYMBOL drivers/media/tuners/mc44s803 0x5e470f70 mc44s803_attach +EXPORT_SYMBOL drivers/media/tuners/mt2060 0x246e84b2 mt2060_attach +EXPORT_SYMBOL drivers/media/tuners/mt2131 0x6f95944e mt2131_attach +EXPORT_SYMBOL drivers/media/tuners/mt2266 0xebc70f22 mt2266_attach +EXPORT_SYMBOL drivers/media/tuners/mxl5005s 0x19ed0c55 mxl5005s_attach +EXPORT_SYMBOL drivers/media/tuners/qt1010 0xcc36e9f0 qt1010_attach +EXPORT_SYMBOL drivers/media/tuners/tda18218 0xd3751b86 tda18218_attach +EXPORT_SYMBOL drivers/media/tuners/tuner-types 0x4c48939e tuners +EXPORT_SYMBOL drivers/media/tuners/tuner-types 0xc2821775 tuner_count +EXPORT_SYMBOL drivers/media/tuners/tuner-xc2028 0xc6a4ffd9 xc2028_attach +EXPORT_SYMBOL drivers/media/tuners/xc4000 0x4037e52b xc4000_attach +EXPORT_SYMBOL drivers/media/tuners/xc5000 0x528253de xc5000_attach +EXPORT_SYMBOL drivers/media/usb/cx231xx/cx231xx 0x6e39e5f8 cx231xx_register_extension +EXPORT_SYMBOL drivers/media/usb/cx231xx/cx231xx 0xe67bc521 cx231xx_unregister_extension +EXPORT_SYMBOL drivers/media/usb/dvb-usb-v2/dvb_usb_v2 0x18b7269b dvb_usbv2_generic_rw_locked +EXPORT_SYMBOL drivers/media/usb/dvb-usb-v2/dvb_usb_v2 0x24191c24 dvb_usbv2_resume +EXPORT_SYMBOL drivers/media/usb/dvb-usb-v2/dvb_usb_v2 0x2c6e9150 dvb_usbv2_probe +EXPORT_SYMBOL drivers/media/usb/dvb-usb-v2/dvb_usb_v2 0x6f2ee1fc dvb_usbv2_suspend +EXPORT_SYMBOL drivers/media/usb/dvb-usb-v2/dvb_usb_v2 0x7e6a55b0 dvb_usbv2_reset_resume +EXPORT_SYMBOL drivers/media/usb/dvb-usb-v2/dvb_usb_v2 0xa0d65f22 dvb_usbv2_generic_rw +EXPORT_SYMBOL drivers/media/usb/dvb-usb-v2/dvb_usb_v2 0xa858f980 dvb_usbv2_disconnect +EXPORT_SYMBOL drivers/media/usb/dvb-usb-v2/dvb_usb_v2 0xe1c2f0ea dvb_usbv2_generic_write +EXPORT_SYMBOL drivers/media/usb/dvb-usb-v2/dvb_usb_v2 0xebf0485b dvb_usbv2_generic_write_locked +EXPORT_SYMBOL drivers/media/usb/dvb-usb/dvb-usb 0x267af8f3 dvb_usb_device_exit +EXPORT_SYMBOL drivers/media/usb/dvb-usb/dvb-usb 0x46e63905 dvb_usb_generic_write +EXPORT_SYMBOL drivers/media/usb/dvb-usb/dvb-usb 0x7afa860c dvb_usb_generic_rw +EXPORT_SYMBOL drivers/media/usb/dvb-usb/dvb-usb 0x8b6f5395 dvb_usb_get_hexline +EXPORT_SYMBOL drivers/media/usb/dvb-usb/dvb-usb 0x9771e0f9 usb_cypress_load_firmware +EXPORT_SYMBOL drivers/media/usb/dvb-usb/dvb-usb 0x9e4b36e0 dvb_usb_nec_rc_key_to_event +EXPORT_SYMBOL drivers/media/usb/dvb-usb/dvb-usb 0xd0ff0958 dvb_usb_device_init +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 0x92fd34c8 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 0x1511e95d dibusb_pid_filter +EXPORT_SYMBOL drivers/media/usb/dvb-usb/dvb-usb-dibusb-common 0x4fa93e34 dibusb_pid_filter_ctrl +EXPORT_SYMBOL drivers/media/usb/dvb-usb/dvb-usb-dibusb-common 0x90b5e7f2 dibusb_streaming_ctrl +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 0x9c88c923 dibusb_power_ctrl +EXPORT_SYMBOL drivers/media/usb/dvb-usb/dvb-usb-dibusb-common 0xb35adb80 dibusb2_0_power_ctrl +EXPORT_SYMBOL drivers/media/usb/dvb-usb/dvb-usb-dibusb-common 0xb79d0496 dibusb_read_eeprom_byte +EXPORT_SYMBOL drivers/media/usb/dvb-usb/dvb-usb-dibusb-common 0xc1334493 dibusb2_0_streaming_ctrl +EXPORT_SYMBOL drivers/media/usb/dvb-usb/dvb-usb-dibusb-common 0xcbbabd7b dibusb_i2c_algo +EXPORT_SYMBOL drivers/media/usb/dvb-usb/dvb-usb-dibusb-common 0xda903402 dibusb_rc_query +EXPORT_SYMBOL drivers/media/usb/dvb-usb/dvb-usb-dibusb-mc-common 0x5024eade dibusb_dib3000mc_frontend_attach +EXPORT_SYMBOL drivers/media/usb/dvb-usb/dvb-usb-dibusb-mc-common 0xcb200927 dibusb_dib3000mc_tuner_attach +EXPORT_SYMBOL drivers/media/usb/em28xx/em28xx 0x4deb4432 em28xx_unregister_extension +EXPORT_SYMBOL drivers/media/usb/em28xx/em28xx 0x544ec368 em28xx_register_extension +EXPORT_SYMBOL drivers/media/usb/go7007/go7007 0x07cfe0e7 go7007_parse_video_stream +EXPORT_SYMBOL drivers/media/usb/go7007/go7007 0x0d84c17c go7007_snd_init +EXPORT_SYMBOL drivers/media/usb/go7007/go7007 0x25bbab54 go7007_boot_encoder +EXPORT_SYMBOL drivers/media/usb/go7007/go7007 0x2c1994f4 go7007_read_interrupt +EXPORT_SYMBOL drivers/media/usb/go7007/go7007 0x4af3febb go7007_update_board +EXPORT_SYMBOL drivers/media/usb/go7007/go7007 0x5cbc9c75 go7007_read_addr +EXPORT_SYMBOL drivers/media/usb/go7007/go7007 0x7d5b7607 go7007_register_encoder +EXPORT_SYMBOL drivers/media/usb/go7007/go7007 0x96ad566e go7007_alloc +EXPORT_SYMBOL drivers/media/usb/go7007/go7007 0xde228044 go7007_snd_remove +EXPORT_SYMBOL drivers/media/usb/gspca/gspca_main 0x0e5018bd gspca_coarse_grained_expo_autogain +EXPORT_SYMBOL drivers/media/usb/gspca/gspca_main 0x450f730c gspca_frame_add +EXPORT_SYMBOL drivers/media/usb/gspca/gspca_main 0x6adcf4df gspca_expo_autogain +EXPORT_SYMBOL drivers/media/usb/gspca/gspca_main 0x731100af gspca_dev_probe +EXPORT_SYMBOL drivers/media/usb/gspca/gspca_main 0x7dd84b54 gspca_suspend +EXPORT_SYMBOL drivers/media/usb/gspca/gspca_main 0x8349c8de gspca_disconnect +EXPORT_SYMBOL drivers/media/usb/gspca/gspca_main 0x9670af2c gspca_debug +EXPORT_SYMBOL drivers/media/usb/gspca/gspca_main 0xcc155035 gspca_dev_probe2 +EXPORT_SYMBOL drivers/media/usb/gspca/gspca_main 0xd3941d19 gspca_resume +EXPORT_SYMBOL drivers/media/usb/tm6000/tm6000 0x49487a59 tm6000_unregister_extension +EXPORT_SYMBOL drivers/media/usb/tm6000/tm6000 0xc4ad85bf tm6000_register_extension +EXPORT_SYMBOL drivers/media/usb/tm6000/tm6000 0xed55ea6b tm6000_init_digital_mode +EXPORT_SYMBOL drivers/media/usb/ttusb-dec/ttusbdecfe 0x101b332a ttusbdecfe_dvbs_attach +EXPORT_SYMBOL drivers/media/usb/ttusb-dec/ttusbdecfe 0x3bdc32e0 ttusbdecfe_dvbt_attach +EXPORT_SYMBOL drivers/media/v4l2-core/v4l2-mem2mem 0x3f169213 v4l2_m2m_job_finish +EXPORT_SYMBOL drivers/media/v4l2-core/v4l2-mem2mem 0x42ab2108 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 0x833ea81a v4l2_m2m_get_vq +EXPORT_SYMBOL drivers/media/v4l2-core/v4l2-mem2mem 0xb3919203 v4l2_m2m_mmap +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x00220390 v4l2_subdev_call_wrappers +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x014ea370 v4l2_clk_enable +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x02f829ed v4l2_ctrl_new_std_menu_items +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x0614dd5a v4l2_video_std_frame_period +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x074bebb9 v4l2_ctrl_cluster +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x082737e8 v4l2_ctrl_merge +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 0x1d518ce9 __v4l2_ctrl_s_ctrl_string +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x2342f1ae v4l2_prio_open +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x24788d78 __v4l2_ctrl_s_ctrl +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x2609bb23 v4l2_async_subdev_notifier_register +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x28b12cc9 v4l2_format_info +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x2cbd9c6e v4l2_ctrl_new_fwnode_properties +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x315de2cf v4l2_ctrl_get_menu +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x322685c2 v4l2_querymenu +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x32d43420 v4l2_ctrl_get_name +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x353a7f7c v4l2_ctrl_sub_ev_ops +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x3811d738 v4l2_s_ctrl +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x3ad7a4f3 v4l2_clk_get_rate +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x3adbd595 v4l2_field_names +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x3bdd0f94 v4l2_prio_change +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x3c80b99c v4l2_ctrl_radio_filter +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x3e69a18a v4l2_ctrl_handler_log_status +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x458eb32b v4l2_ctrl_request_setup +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x50eb1207 video_ioctl2 +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x5ab1b494 __v4l2_clk_register_fixed +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x5aef6ae5 v4l2_ctrl_find +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x5d0ef20d v4l2_ctrl_request_complete +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x646795d2 v4l2_async_notifier_register +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x667a5bc0 __v4l2_ctrl_s_ctrl_compound +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x75025223 v4l2_ctrl_activate +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x76ccb99e video_devdata +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x79e8cf38 v4l2_ctrl_subscribe_event +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x7e726486 v4l2_g_ctrl +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x7ea9b755 v4l2_clk_unregister_fixed +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x80709c95 v4l2_async_unregister_subdev +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x8106095a v4l2_prio_max +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x8280534c v4l2_ctrl_fill +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x82ac9813 v4l2_clk_put +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x830d5c58 v4l2_ctrl_handler_free +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x85aacc38 v4l2_ctrl_notify +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x87b52183 v4l2_ctrl_handler_setup +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x89e3897d v4l2_ctrl_query_fill +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x8cfc0154 v4l2_ctrl_new_std_compound +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x8f5b354c v4l2_async_notifier_init +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x9190e0e5 __video_register_device +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x92996699 v4l2_ctrl_subdev_log_status +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x939e568d video_device_release +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x94505f0c v4l2_s_ext_ctrls +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x95698fc9 v4l2_query_ext_ctrl +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x9597fffd v4l2_clk_disable +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x96bb9eb4 v4l2_g_ext_ctrls +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x975dbc56 video_unregister_device +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x9834af28 v4l2_try_ext_ctrls +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x9d68b94c v4l2_clk_set_rate +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x9e4a0092 v4l2_clk_register +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x9f74e130 __v4l2_ctrl_modify_range +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xac184b8a video_device_release_empty +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xafad964e __v4l2_ctrl_s_ctrl_int64 +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xb4a99466 v4l2_clk_get +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xb77b0159 v4l2_prio_init +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xb9f589ae v4l2_ctrl_auto_cluster +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xbc5671dc v4l_printk_ioctl +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xc14ee487 v4l2_ctrl_subdev_subscribe_event +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xc8b65ac8 v4l2_queryctrl +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xc99e73b3 v4l2_ctrl_new_std +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xc9f4304c video_device_alloc +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xcb47f46f __v4l2_ctrl_grab +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xcda04a5b v4l2_prio_close +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xce385836 v4l2_async_notifier_unregister +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xceb5c641 v4l2_ctrl_log_status +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xcf10a390 v4l2_ctrl_g_ctrl_int64 +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xcfcb244f v4l2_ctrl_handler_init_class +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xd003ed2c v4l2_async_register_subdev +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xd16d9c01 v4l2_ctrl_get_int_menu +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xd3c7b03d v4l2_ctrl_g_ctrl +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xd700a421 v4l2_clk_unregister +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xd91b7e99 v4l2_subdev_init +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xe10920cc v4l2_ctrl_add_handler +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xe2b92059 v4l2_video_std_construct +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xedd8d538 v4l2_ctrl_new_std_menu +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xf005c0b3 v4l2_ctrl_new_int_menu +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xf00f715c v4l2_ctrl_new_custom +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xf21f3e81 v4l2_ctrl_poll +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/memstick/core/memstick 0x166d8393 memstick_suspend_host +EXPORT_SYMBOL drivers/memstick/core/memstick 0x17ca1310 memstick_resume_host +EXPORT_SYMBOL drivers/memstick/core/memstick 0x2405ad92 memstick_free_host +EXPORT_SYMBOL drivers/memstick/core/memstick 0x2fd39006 memstick_detect_change +EXPORT_SYMBOL drivers/memstick/core/memstick 0x40e3d6dc memstick_add_host +EXPORT_SYMBOL drivers/memstick/core/memstick 0x4a4e5778 memstick_init_req_sg +EXPORT_SYMBOL drivers/memstick/core/memstick 0x6435757d memstick_new_req +EXPORT_SYMBOL drivers/memstick/core/memstick 0x971df92e memstick_alloc_host +EXPORT_SYMBOL drivers/memstick/core/memstick 0xaad8f807 memstick_unregister_driver +EXPORT_SYMBOL drivers/memstick/core/memstick 0xae50437c memstick_init_req +EXPORT_SYMBOL drivers/memstick/core/memstick 0xba71ac31 memstick_register_driver +EXPORT_SYMBOL drivers/memstick/core/memstick 0xd335f968 memstick_set_rw_addr +EXPORT_SYMBOL drivers/memstick/core/memstick 0xdb0f2521 memstick_remove_host +EXPORT_SYMBOL drivers/memstick/core/memstick 0xf304a619 memstick_next_req +EXPORT_SYMBOL drivers/memstick/host/r592 0x52f1b23b memstick_debug_get_tpc_name +EXPORT_SYMBOL drivers/message/fusion/mptbase 0x060b33b1 mpt_verify_adapter +EXPORT_SYMBOL drivers/message/fusion/mptbase 0x167b63b8 mptbase_sas_persist_operation +EXPORT_SYMBOL drivers/message/fusion/mptbase 0x1a34ba5f mpt_free_fw_memory +EXPORT_SYMBOL drivers/message/fusion/mptbase 0x1be870fd mpt_set_taskmgmt_in_progress_flag +EXPORT_SYMBOL drivers/message/fusion/mptbase 0x2a7a3d4a mpt_register +EXPORT_SYMBOL drivers/message/fusion/mptbase 0x3108f6ca mpt_attach +EXPORT_SYMBOL drivers/message/fusion/mptbase 0x408c84f2 mpt_alloc_fw_memory +EXPORT_SYMBOL drivers/message/fusion/mptbase 0x4c325764 mpt_print_ioc_summary +EXPORT_SYMBOL drivers/message/fusion/mptbase 0x502108d0 mpt_fwfault_debug +EXPORT_SYMBOL drivers/message/fusion/mptbase 0x53d51af9 mpt_device_driver_register +EXPORT_SYMBOL drivers/message/fusion/mptbase 0x581f0e2e mpt_raid_phys_disk_pg1 +EXPORT_SYMBOL drivers/message/fusion/mptbase 0x610b257e mpt_reset_deregister +EXPORT_SYMBOL drivers/message/fusion/mptbase 0x65546b81 mpt_get_msg_frame +EXPORT_SYMBOL drivers/message/fusion/mptbase 0x6565d1ed mpt_free_msg_frame +EXPORT_SYMBOL drivers/message/fusion/mptbase 0x6cb3f63d mpt_put_msg_frame_hi_pri +EXPORT_SYMBOL drivers/message/fusion/mptbase 0x74a0134a mpt_device_driver_deregister +EXPORT_SYMBOL drivers/message/fusion/mptbase 0x74b668eb mpt_suspend +EXPORT_SYMBOL drivers/message/fusion/mptbase 0x75c56884 mpt_halt_firmware +EXPORT_SYMBOL drivers/message/fusion/mptbase 0x7fd4892b mpt_resume +EXPORT_SYMBOL drivers/message/fusion/mptbase 0x81681bff mpt_reset_register +EXPORT_SYMBOL drivers/message/fusion/mptbase 0x981efe92 mpt_deregister +EXPORT_SYMBOL drivers/message/fusion/mptbase 0x98629dde mpt_detach +EXPORT_SYMBOL drivers/message/fusion/mptbase 0x9d009952 mpt_put_msg_frame +EXPORT_SYMBOL drivers/message/fusion/mptbase 0xa2a07833 mpt_Soft_Hard_ResetHandler +EXPORT_SYMBOL drivers/message/fusion/mptbase 0xadbccb33 mpt_GetIocState +EXPORT_SYMBOL drivers/message/fusion/mptbase 0xb83233b7 mpt_clear_taskmgmt_in_progress_flag +EXPORT_SYMBOL drivers/message/fusion/mptbase 0xb884c8e6 mpt_config +EXPORT_SYMBOL drivers/message/fusion/mptbase 0xb8f0523e mpt_findImVolumes +EXPORT_SYMBOL drivers/message/fusion/mptbase 0xc395c340 mpt_event_register +EXPORT_SYMBOL drivers/message/fusion/mptbase 0xca4d1d41 mpt_send_handshake_request +EXPORT_SYMBOL drivers/message/fusion/mptbase 0xce2e376c mpt_raid_phys_disk_pg0 +EXPORT_SYMBOL drivers/message/fusion/mptbase 0xd13ccb46 mpt_raid_phys_disk_get_num_paths +EXPORT_SYMBOL drivers/message/fusion/mptbase 0xdd805159 ioc_list +EXPORT_SYMBOL drivers/message/fusion/mptbase 0xe6c1e126 mpt_event_deregister +EXPORT_SYMBOL drivers/message/fusion/mptbase 0xf96da5e2 mpt_HardResetHandler +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0x320821e0 mptscsih_get_scsi_lookup +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0x395f93f3 mptscsih_raid_id_to_num +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0x3d3f59e5 mptscsih_ioc_reset +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0x42051a3f mptscsih_taskmgmt_response_code +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0x43abdf33 mptscsih_io_done +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0x489c392e mptscsih_bios_param +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0x4b02f94f mptscsih_host_attrs +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0x4e379ef4 mptscsih_qcmd +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0x55996f49 mptscsih_shutdown +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0x5670c92b mptscsih_info +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0x5d43004f mptscsih_change_queue_depth +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0x61d986e9 mptscsih_is_phys_disk +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0x63b35f7c mptscsih_slave_configure +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0x6a96f795 mptscsih_show_info +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0x73d3b6c6 mptscsih_resume +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0x74769201 mptscsih_IssueTaskMgmt +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0x7f183bb6 mptscsih_suspend +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0x84240ddc mptscsih_abort +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0xa4ad0f77 mptscsih_host_reset +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0xafd27984 mptscsih_dev_reset +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0xcbb1c622 mptscsih_taskmgmt_complete +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0xcc22cc7b mptscsih_remove +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0xd77fe9b1 mptscsih_bus_reset +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0xe8bd87e1 mptscsih_flush_running_cmds +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0xec64922e mptscsih_event_process +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0xece18149 mptscsih_scandv_complete +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0xf7f3144f mptscsih_slave_destroy +EXPORT_SYMBOL drivers/mfd/axp20x 0x11881961 axp20x_device_probe +EXPORT_SYMBOL drivers/mfd/axp20x 0x11bf83b8 axp20x_match_device +EXPORT_SYMBOL drivers/mfd/axp20x 0x8de9920d axp20x_device_remove +EXPORT_SYMBOL drivers/mfd/dln2 0x5b765686 dln2_transfer +EXPORT_SYMBOL drivers/mfd/dln2 0xa4264cfe dln2_unregister_event_cb +EXPORT_SYMBOL drivers/mfd/dln2 0xc88dfa97 dln2_register_event_cb +EXPORT_SYMBOL drivers/mfd/htc-pasic3 0x2a89c1eb pasic3_read_register +EXPORT_SYMBOL drivers/mfd/htc-pasic3 0xfac3ad38 pasic3_write_register +EXPORT_SYMBOL drivers/mfd/mc13xxx-core 0x003029f1 mc13xxx_reg_read +EXPORT_SYMBOL drivers/mfd/mc13xxx-core 0x1289be92 mc13xxx_reg_rmw +EXPORT_SYMBOL drivers/mfd/mc13xxx-core 0x42c7856f mc13xxx_irq_mask +EXPORT_SYMBOL drivers/mfd/mc13xxx-core 0x7921001c mc13xxx_irq_free +EXPORT_SYMBOL drivers/mfd/mc13xxx-core 0x7bb4d59f mc13xxx_unlock +EXPORT_SYMBOL drivers/mfd/mc13xxx-core 0x7fceb946 mc13xxx_irq_status +EXPORT_SYMBOL drivers/mfd/mc13xxx-core 0xb19b0195 mc13xxx_irq_request +EXPORT_SYMBOL drivers/mfd/mc13xxx-core 0xb37e9cbd mc13xxx_lock +EXPORT_SYMBOL drivers/mfd/mc13xxx-core 0xd9838786 mc13xxx_reg_write +EXPORT_SYMBOL drivers/mfd/mc13xxx-core 0xe037855b mc13xxx_get_flags +EXPORT_SYMBOL drivers/mfd/mc13xxx-core 0xe18fb345 mc13xxx_irq_unmask +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 0x6529352b wm1811_regmap_config +EXPORT_SYMBOL drivers/mfd/wm8994 0xc41442e3 wm8994_base_regmap_config +EXPORT_SYMBOL drivers/mfd/wm8994 0xc8718c9f wm8994_regmap_config +EXPORT_SYMBOL drivers/mfd/wm8994 0xdd1d0f03 wm8994_irq_init +EXPORT_SYMBOL drivers/mfd/wm8994 0xfa4b3706 wm8958_regmap_config +EXPORT_SYMBOL drivers/mfd/wm8994 0xfffb1c67 wm8994_irq_exit +EXPORT_SYMBOL drivers/misc/ad525x_dpot 0x0aeac19f ad_dpot_probe +EXPORT_SYMBOL drivers/misc/ad525x_dpot 0xcbdb1d61 ad_dpot_remove +EXPORT_SYMBOL drivers/misc/altera-stapl/altera-stapl 0x5bafa76e altera_init +EXPORT_SYMBOL drivers/misc/c2port/core 0x8809c32c c2port_device_unregister +EXPORT_SYMBOL drivers/misc/c2port/core 0xfb142608 c2port_device_register +EXPORT_SYMBOL drivers/misc/mei/mei 0x1545cfd0 __tracepoint_mei_reg_read +EXPORT_SYMBOL drivers/misc/mei/mei 0xa5bff49d __tracepoint_mei_pci_cfg_read +EXPORT_SYMBOL drivers/misc/mei/mei 0xb93bb2a0 __tracepoint_mei_reg_write +EXPORT_SYMBOL drivers/misc/tifm_core 0x0ffb277f tifm_queue_work +EXPORT_SYMBOL drivers/misc/tifm_core 0x1ee5b4f1 tifm_free_device +EXPORT_SYMBOL drivers/misc/tifm_core 0x33fbe1f9 tifm_map_sg +EXPORT_SYMBOL drivers/misc/tifm_core 0x36bb8525 tifm_alloc_adapter +EXPORT_SYMBOL drivers/misc/tifm_core 0x5e1de350 tifm_register_driver +EXPORT_SYMBOL drivers/misc/tifm_core 0x6fe78cac tifm_remove_adapter +EXPORT_SYMBOL drivers/misc/tifm_core 0x7c037026 tifm_eject +EXPORT_SYMBOL drivers/misc/tifm_core 0x809538de tifm_alloc_device +EXPORT_SYMBOL drivers/misc/tifm_core 0x9451fe62 tifm_unregister_driver +EXPORT_SYMBOL drivers/misc/tifm_core 0x9913c482 tifm_unmap_sg +EXPORT_SYMBOL drivers/misc/tifm_core 0xbb4aea5b tifm_has_ms_pif +EXPORT_SYMBOL drivers/misc/tifm_core 0xde735e85 tifm_add_adapter +EXPORT_SYMBOL drivers/misc/tifm_core 0xf1480661 tifm_free_adapter +EXPORT_SYMBOL drivers/mmc/host/cqhci 0x40312e4a cqhci_pltfm_init +EXPORT_SYMBOL drivers/mmc/host/cqhci 0xa75aa954 cqhci_resume +EXPORT_SYMBOL drivers/mmc/host/cqhci 0xba90da0f cqhci_init +EXPORT_SYMBOL drivers/mmc/host/cqhci 0xe7b7b7e8 cqhci_irq +EXPORT_SYMBOL drivers/mmc/host/cqhci 0xfa91500c cqhci_deactivate +EXPORT_SYMBOL drivers/mtd/chips/cfi_util 0x23dcac0b cfi_fixup +EXPORT_SYMBOL drivers/mtd/chips/cfi_util 0x48b56684 cfi_merge_status +EXPORT_SYMBOL drivers/mtd/chips/cfi_util 0x5136301b cfi_read_pri +EXPORT_SYMBOL drivers/mtd/chips/cfi_util 0x51b0cea6 cfi_build_cmd +EXPORT_SYMBOL drivers/mtd/chips/cfi_util 0x5b3c0ea8 cfi_send_gen_cmd +EXPORT_SYMBOL drivers/mtd/chips/cfi_util 0x928687b4 cfi_build_cmd_addr +EXPORT_SYMBOL drivers/mtd/chips/cfi_util 0xcb80defe cfi_varsize_frob +EXPORT_SYMBOL drivers/mtd/chips/cfi_util 0xff9fa623 cfi_udelay +EXPORT_SYMBOL drivers/mtd/chips/chipreg 0x3bfd5425 unregister_mtd_chip_driver +EXPORT_SYMBOL drivers/mtd/chips/chipreg 0x585eab3f do_map_probe +EXPORT_SYMBOL drivers/mtd/chips/chipreg 0xef98c40c map_destroy +EXPORT_SYMBOL drivers/mtd/chips/chipreg 0xfc60dbdf register_mtd_chip_driver +EXPORT_SYMBOL drivers/mtd/chips/gen_probe 0x5b61a15e mtd_do_chip_probe +EXPORT_SYMBOL drivers/mtd/lpddr/lpddr_cmds 0x8331957c lpddr_cmdset +EXPORT_SYMBOL drivers/mtd/maps/map_funcs 0x4174d874 simple_map_init +EXPORT_SYMBOL drivers/mtd/mtd 0xacc3f5e8 mtd_concat_destroy +EXPORT_SYMBOL drivers/mtd/mtd 0xe9d45e23 mtd_concat_create +EXPORT_SYMBOL drivers/mtd/nand/onenand/onenand 0xbedead63 flexonenand_region +EXPORT_SYMBOL drivers/mtd/nand/onenand/onenand 0xdeda178a onenand_addr +EXPORT_SYMBOL drivers/mtd/nand/raw/denali 0x30db096f denali_calc_ecc_bytes +EXPORT_SYMBOL drivers/mtd/nand/raw/denali 0x71a8367d denali_init +EXPORT_SYMBOL drivers/mtd/nand/raw/denali 0xfa9ae6be denali_remove +EXPORT_SYMBOL drivers/mtd/nand/raw/nand 0x00e471fa nand_monolithic_read_page_raw +EXPORT_SYMBOL drivers/mtd/nand/raw/nand 0x06bb3bc5 nand_bch_correct_data +EXPORT_SYMBOL drivers/mtd/nand/raw/nand 0x082e192c nand_bch_calculate_ecc +EXPORT_SYMBOL drivers/mtd/nand/raw/nand 0x225214a9 nand_write_oob_std +EXPORT_SYMBOL drivers/mtd/nand/raw/nand 0x5070c0fe nand_monolithic_write_page_raw +EXPORT_SYMBOL drivers/mtd/nand/raw/nand 0x53557e76 nand_scan_with_ids +EXPORT_SYMBOL drivers/mtd/nand/raw/nand 0x5c265853 nand_bch_init +EXPORT_SYMBOL drivers/mtd/nand/raw/nand 0x6e1a1512 nand_create_bbt +EXPORT_SYMBOL drivers/mtd/nand/raw/nand 0x70097aa0 nand_bch_free +EXPORT_SYMBOL drivers/mtd/nand/raw/nand 0x7541d700 nand_read_page_raw +EXPORT_SYMBOL drivers/mtd/nand/raw/nand 0x8ecbb3b8 nand_check_erased_ecc_chunk +EXPORT_SYMBOL drivers/mtd/nand/raw/nand 0xbb1d17d2 nand_write_page_raw +EXPORT_SYMBOL drivers/mtd/nand/raw/nand 0xbfcabc20 nand_get_set_features_notsupp +EXPORT_SYMBOL drivers/mtd/nand/raw/nand 0xe59d2a92 nand_read_oob_std +EXPORT_SYMBOL drivers/mtd/nand/raw/nand_ecc 0xa43d1c72 __nand_correct_data +EXPORT_SYMBOL drivers/mtd/nand/raw/nand_ecc 0xb0cde2e2 nand_correct_data +EXPORT_SYMBOL drivers/mtd/nand/raw/nand_ecc 0xb636dd73 __nand_calculate_ecc +EXPORT_SYMBOL drivers/mtd/nand/raw/nand_ecc 0xdb05864f nand_calculate_ecc +EXPORT_SYMBOL drivers/net/arcnet/arcnet 0x167870de arc_bcast_proto +EXPORT_SYMBOL drivers/net/arcnet/arcnet 0x1b0411e7 arcnet_open +EXPORT_SYMBOL drivers/net/arcnet/arcnet 0x1cf02df8 arc_proto_default +EXPORT_SYMBOL drivers/net/arcnet/arcnet 0x234c02cf arcnet_send_packet +EXPORT_SYMBOL drivers/net/arcnet/arcnet 0x27940ebe arcnet_unregister_proto +EXPORT_SYMBOL drivers/net/arcnet/arcnet 0x461f5dee alloc_arcdev +EXPORT_SYMBOL drivers/net/arcnet/arcnet 0x524d86bd arcnet_close +EXPORT_SYMBOL drivers/net/arcnet/arcnet 0x5bb75a4b arc_proto_map +EXPORT_SYMBOL drivers/net/arcnet/arcnet 0x6534792a arcnet_debug +EXPORT_SYMBOL drivers/net/arcnet/arcnet 0x66fe1285 arcnet_timeout +EXPORT_SYMBOL drivers/net/arcnet/arcnet 0xa2841703 arc_raw_proto +EXPORT_SYMBOL drivers/net/arcnet/arcnet 0xecb730b0 arcnet_interrupt +EXPORT_SYMBOL drivers/net/arcnet/com20020 0x90112a67 com20020_check +EXPORT_SYMBOL drivers/net/arcnet/com20020 0xd0dd2c33 com20020_found +EXPORT_SYMBOL drivers/net/arcnet/com20020 0xdd096141 com20020_netdev_ops +EXPORT_SYMBOL drivers/net/dsa/b53/b53_common 0x046b7399 b53_fdb_dump +EXPORT_SYMBOL drivers/net/dsa/b53/b53_common 0x08b938af b53_phylink_mac_an_restart +EXPORT_SYMBOL drivers/net/dsa/b53/b53_common 0x0a7a1531 b53_br_fast_age +EXPORT_SYMBOL drivers/net/dsa/b53/b53_common 0x0fb13180 b53_get_ethtool_phy_stats +EXPORT_SYMBOL drivers/net/dsa/b53/b53_common 0x109445a7 b53_configure_vlan +EXPORT_SYMBOL drivers/net/dsa/b53/b53_common 0x173c8f4b b53_mirror_del +EXPORT_SYMBOL drivers/net/dsa/b53/b53_common 0x17d2afbd b53_set_mac_eee +EXPORT_SYMBOL drivers/net/dsa/b53/b53_common 0x23c61e29 b53_fdb_del +EXPORT_SYMBOL drivers/net/dsa/b53/b53_common 0x392606fc b53_phylink_mac_link_state +EXPORT_SYMBOL drivers/net/dsa/b53/b53_common 0x3ebad303 b53_get_mac_eee +EXPORT_SYMBOL drivers/net/dsa/b53/b53_common 0x46568ab2 b53_eee_enable_set +EXPORT_SYMBOL drivers/net/dsa/b53/b53_common 0x54e8a9bb b53_get_sset_count +EXPORT_SYMBOL drivers/net/dsa/b53/b53_common 0x62a4d73a b53_br_leave +EXPORT_SYMBOL drivers/net/dsa/b53/b53_common 0x68084954 b53_br_join +EXPORT_SYMBOL drivers/net/dsa/b53/b53_common 0x6f326c87 b53_vlan_prepare +EXPORT_SYMBOL drivers/net/dsa/b53/b53_common 0x709e4c44 b53_switch_alloc +EXPORT_SYMBOL drivers/net/dsa/b53/b53_common 0x73203973 b53_mdb_del +EXPORT_SYMBOL drivers/net/dsa/b53/b53_common 0x7960451e b53_br_egress_floods +EXPORT_SYMBOL drivers/net/dsa/b53/b53_common 0x7bdb7955 b53_vlan_filtering +EXPORT_SYMBOL drivers/net/dsa/b53/b53_common 0x7d39ba57 b53_brcm_hdr_setup +EXPORT_SYMBOL drivers/net/dsa/b53/b53_common 0x7f22a74e b53_br_set_stp_state +EXPORT_SYMBOL drivers/net/dsa/b53/b53_common 0x84717165 b53_switch_detect +EXPORT_SYMBOL drivers/net/dsa/b53/b53_common 0x872c3756 b53_vlan_add +EXPORT_SYMBOL drivers/net/dsa/b53/b53_common 0x9758ff52 b53_enable_port +EXPORT_SYMBOL drivers/net/dsa/b53/b53_common 0x97e3ac9e b53_disable_port +EXPORT_SYMBOL drivers/net/dsa/b53/b53_common 0x99d661d1 b53_imp_vlan_setup +EXPORT_SYMBOL drivers/net/dsa/b53/b53_common 0xa89833f3 b53_phylink_validate +EXPORT_SYMBOL drivers/net/dsa/b53/b53_common 0xb48adffa b53_mirror_add +EXPORT_SYMBOL drivers/net/dsa/b53/b53_common 0xb65d09bf b53_get_strings +EXPORT_SYMBOL drivers/net/dsa/b53/b53_common 0xb6ae8b5e b53_mdb_add +EXPORT_SYMBOL drivers/net/dsa/b53/b53_common 0xb6faf3c1 b53_mdb_prepare +EXPORT_SYMBOL drivers/net/dsa/b53/b53_common 0xbbb658ca b53_port_event +EXPORT_SYMBOL drivers/net/dsa/b53/b53_common 0xc1742441 b53_vlan_del +EXPORT_SYMBOL drivers/net/dsa/b53/b53_common 0xdb44848d b53_get_tag_protocol +EXPORT_SYMBOL drivers/net/dsa/b53/b53_common 0xde12a3d6 b53_phylink_mac_config +EXPORT_SYMBOL drivers/net/dsa/b53/b53_common 0xe04f51dc b53_phylink_mac_link_up +EXPORT_SYMBOL drivers/net/dsa/b53/b53_common 0xe059788b b53_get_ethtool_stats +EXPORT_SYMBOL drivers/net/dsa/b53/b53_common 0xebb74368 b53_phylink_mac_link_down +EXPORT_SYMBOL drivers/net/dsa/b53/b53_common 0xee4e5829 b53_eee_init +EXPORT_SYMBOL drivers/net/dsa/b53/b53_common 0xf9c1ee48 b53_switch_register +EXPORT_SYMBOL drivers/net/dsa/b53/b53_common 0xfb54005f b53_fdb_add +EXPORT_SYMBOL drivers/net/dsa/b53/b53_serdes 0x4efddf25 b53_serdes_link_state +EXPORT_SYMBOL drivers/net/dsa/b53/b53_serdes 0x698f628d b53_serdes_an_restart +EXPORT_SYMBOL drivers/net/dsa/b53/b53_serdes 0x9ad6a914 b53_serdes_phylink_validate +EXPORT_SYMBOL drivers/net/dsa/b53/b53_serdes 0xb89fab39 b53_serdes_config +EXPORT_SYMBOL drivers/net/dsa/b53/b53_serdes 0xba76b019 b53_serdes_init +EXPORT_SYMBOL drivers/net/dsa/b53/b53_serdes 0xed348b57 b53_serdes_link_set +EXPORT_SYMBOL drivers/net/dsa/lan9303-core 0x4a58d5fe lan9303_probe +EXPORT_SYMBOL drivers/net/dsa/lan9303-core 0xada83f40 lan9303_register_set +EXPORT_SYMBOL drivers/net/dsa/lan9303-core 0xdf6c5244 lan9303_remove +EXPORT_SYMBOL drivers/net/dsa/microchip/ksz8795 0x66f37cac ksz8795_switch_register +EXPORT_SYMBOL drivers/net/dsa/microchip/ksz9477 0x467579fd ksz9477_switch_register +EXPORT_SYMBOL drivers/net/dsa/microchip/ksz_common 0x14641619 ksz_switch_register +EXPORT_SYMBOL drivers/net/dsa/microchip/ksz_common 0x706caa1e ksz_switch_alloc +EXPORT_SYMBOL drivers/net/dsa/microchip/ksz_common 0xa2dff8d8 ksz_switch_remove +EXPORT_SYMBOL drivers/net/dsa/vitesse-vsc73xx-core 0x32538d24 vsc73xx_remove +EXPORT_SYMBOL drivers/net/dsa/vitesse-vsc73xx-core 0x99d242fe vsc73xx_is_addr_valid +EXPORT_SYMBOL drivers/net/dsa/vitesse-vsc73xx-core 0xf99dce0f vsc73xx_probe +EXPORT_SYMBOL drivers/net/ethernet/8390/8390 0x119721ac ei_interrupt +EXPORT_SYMBOL drivers/net/ethernet/8390/8390 0x44239981 ei_netdev_ops +EXPORT_SYMBOL drivers/net/ethernet/8390/8390 0x5aafce6b ei_open +EXPORT_SYMBOL drivers/net/ethernet/8390/8390 0x6024e6ae NS8390_init +EXPORT_SYMBOL drivers/net/ethernet/8390/8390 0x602ee9b7 ei_close +EXPORT_SYMBOL drivers/net/ethernet/8390/8390 0xa5db14dd ei_tx_timeout +EXPORT_SYMBOL drivers/net/ethernet/8390/8390 0xa6a7f583 __alloc_ei_netdev +EXPORT_SYMBOL drivers/net/ethernet/8390/8390 0xae3f5d4f ei_set_multicast_list +EXPORT_SYMBOL drivers/net/ethernet/8390/8390 0xbf4bc106 ei_poll +EXPORT_SYMBOL drivers/net/ethernet/8390/8390 0xf3047da8 ei_start_xmit +EXPORT_SYMBOL drivers/net/ethernet/8390/8390 0xf4f6876c ei_get_stats +EXPORT_SYMBOL drivers/net/ethernet/broadcom/cnic 0x5219fea7 cnic_register_driver +EXPORT_SYMBOL drivers/net/ethernet/broadcom/cnic 0x636af174 cnic_unregister_driver +EXPORT_SYMBOL drivers/net/ethernet/cavium/common/cavium_ptp 0x29a17785 cavium_ptp_get +EXPORT_SYMBOL drivers/net/ethernet/cavium/common/cavium_ptp 0xb385b4fc 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 0x025ecbf6 cxgb3_free_stid +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb3/cxgb3 0x0c0b6ab5 cxgb3_insert_tid +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb3/cxgb3 0x1892f911 cxgb3_queue_tid_release +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb3/cxgb3 0x1ac1e8ea t3_l2e_free +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb3/cxgb3 0x34811ef5 t3_register_cpl_handler +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb3/cxgb3 0x539abcbe t3_l2t_send_event +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb3/cxgb3 0x68365bc4 t3_l2t_send_slow +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb3/cxgb3 0x6a475552 cxgb3_remove_tid +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb3/cxgb3 0x6b4a8ffa t3_l2t_get +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb3/cxgb3 0x70134c41 cxgb3_alloc_stid +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb3/cxgb3 0xa9fc162f dev2t3cdev +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb3/cxgb3 0xb6c9dcf3 cxgb3_unregister_client +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb3/cxgb3 0xc53e3e65 cxgb3_free_atid +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb3/cxgb3 0xe568fac2 cxgb3_register_client +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb3/cxgb3 0xf74e6c51 cxgb3_alloc_atid +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb3/cxgb3 0xfaff1e44 cxgb3_ofld_send +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0x02586584 cxgb4_sync_txq_pidx +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0x0b489593 cxgb4_immdata_send +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0x0f58c4e9 cxgb4_alloc_stid +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0x0f714b9b cxgb4_register_uld +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0x13c1cdf9 cxgb4_dbfifo_count +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0x173effb9 cxgb4_free_stid +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0x1d6206ee cxgb4_select_ntuple +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0x2d852556 cxgb4_clip_get +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0x315db63e cxgb4_get_tcp_stats +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0x3643f690 cxgb4_inline_tx_skb +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0x40aefff0 cxgb4_flush_eq_cache +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0x42105b41 cxgb4_port_viid +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0x421b35cd cxgb4_create_server +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0x4432416e cxgb4_free_atid +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0x48c746e9 cxgb4_port_chan +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0x4b69e51a cxgb4_iscsi_init +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0x4c7af79d cxgb4_clip_release +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0x4d936d6f cxgb4_ring_tx_db +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0x4f18aeb0 cxgb4_bar2_sge_qregs +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0x50ee5c07 cxgb4_best_aligned_mtu +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0x5127784a cxgb4_l2t_send +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0x5b4e10c0 cxgb4_alloc_sftid +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0x604357fd cxgb4_smt_alloc_switching +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0x61beb889 cxgb4_create_server_filter +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0x6611065b cxgb4_write_sgl +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0x676a11a9 cxgb4_unregister_uld +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0x6a6d6749 t4_cleanup_clip_tbl +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0x6f78b40d cxgb4_check_l2t_valid +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0x70717a3d cxgb4_get_srq_entry +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0x735dbc52 cxgb4_remove_server_filter +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0x75e1a8c8 cxgb4_port_e2cchan +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0x7e4e5162 cxgb4_ofld_send +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0x83573927 cxgb4_alloc_atid +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0x9a16f6ac cxgb4_crypto_send +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0x9c2741f9 cxgb4_l2t_release +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0x9c8c212a cxgb4_update_root_dev_clip +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0xa8db193f cxgb4_smt_release +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0xb3bf2cdd cxgb4_remove_tid +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0xc9a09930 cxgb4_reclaim_completed_tx +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0xcbe1e4c0 cxgb4_l2t_alloc_switching +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0xce4529f5 cxgb4_map_skb +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0xd69a0294 cxgb4_best_mtu +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0xdd00213a cxgb4_read_tpte +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0xddf71801 cxgb4_pktgl_to_skb +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0xe19128f0 cxgb4_port_idx +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0xe4f56358 cxgb4_remove_server +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0xe8c24c0c cxgb4_l2t_get +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0xe94a3ea4 cxgb4_create_server6 +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0xfde93494 cxgb4_read_sge_timestamp +EXPORT_SYMBOL drivers/net/ethernet/chelsio/libcxgb/libcxgb 0x1bdaafe1 cxgbi_tagmask_set +EXPORT_SYMBOL drivers/net/ethernet/chelsio/libcxgb/libcxgb 0x1c45041e cxgbi_ppm_ppods_reserve +EXPORT_SYMBOL drivers/net/ethernet/chelsio/libcxgb/libcxgb 0x205b01fb cxgb_find_route6 +EXPORT_SYMBOL drivers/net/ethernet/chelsio/libcxgb/libcxgb 0x255ab30f cxgb_get_4tuple +EXPORT_SYMBOL drivers/net/ethernet/chelsio/libcxgb/libcxgb 0x55f11987 cxgbi_ppm_init +EXPORT_SYMBOL drivers/net/ethernet/chelsio/libcxgb/libcxgb 0x81a78ed7 cxgbi_ppm_make_ppod_hdr +EXPORT_SYMBOL drivers/net/ethernet/chelsio/libcxgb/libcxgb 0xa9537269 cxgbi_ppm_ppod_release +EXPORT_SYMBOL drivers/net/ethernet/chelsio/libcxgb/libcxgb 0xbb96c325 cxgb_find_route +EXPORT_SYMBOL drivers/net/ethernet/chelsio/libcxgb/libcxgb 0xd9126dcf cxgbi_ppm_release +EXPORT_SYMBOL drivers/net/ethernet/cisco/enic/enic 0x1cb37931 vnic_dev_register +EXPORT_SYMBOL drivers/net/ethernet/cisco/enic/enic 0x37968829 enic_api_devcmd_proxy_by_index +EXPORT_SYMBOL drivers/net/ethernet/cisco/enic/enic 0x89b9d179 vnic_dev_get_pdev +EXPORT_SYMBOL drivers/net/ethernet/cisco/enic/enic 0xb58cda26 vnic_dev_get_res_count +EXPORT_SYMBOL drivers/net/ethernet/cisco/enic/enic 0xde21df00 vnic_dev_get_res +EXPORT_SYMBOL drivers/net/ethernet/cisco/enic/enic 0xed0070dc vnic_dev_unregister +EXPORT_SYMBOL drivers/net/ethernet/emulex/benet/be2net 0x4e2e10d2 be_roce_mcc_cmd +EXPORT_SYMBOL drivers/net/ethernet/emulex/benet/be2net 0xaf05f962 be_roce_unregister_driver +EXPORT_SYMBOL drivers/net/ethernet/emulex/benet/be2net 0xce292870 be_roce_register_driver +EXPORT_SYMBOL drivers/net/ethernet/intel/i40e/i40e 0x39a9d815 i40e_register_client +EXPORT_SYMBOL drivers/net/ethernet/intel/i40e/i40e 0x8c67bfc4 i40e_unregister_client +EXPORT_SYMBOL drivers/net/ethernet/intel/iavf/iavf 0x194b63b2 iavf_unregister_client +EXPORT_SYMBOL drivers/net/ethernet/intel/iavf/iavf 0x4fbeeb62 iavf_register_client +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x0108eec3 mlx4_SET_PORT_user_mtu +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x09c060a3 mlx4_SET_PORT_BEACON +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x0a98f5d8 mlx4_SET_PORT_qpn_calc +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x101088f8 mlx4_ALLOCATE_VPP_get +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x123328ed mlx4_tunnel_steer_add +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x17872394 mlx4_get_cpu_rmap +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x26ec1d12 mlx4_is_slave_active +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x327f7945 mlx4_SET_PORT_fcs_check +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x3e601224 mlx4_get_slave_pkey_gid_tbl_len +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x47450bd7 mlx4_SET_PORT_general +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x49e1438e set_and_calc_slave_port_state +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x55754ca8 mlx4_SET_PORT_SCHEDULER +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x55ad66e4 mlx4_SET_PORT_VXLAN +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x5b24f3d7 mlx4_gen_slaves_port_mgt_ev +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x5c6eddf6 mlx4_put_slave_node_guid +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x639f8799 mlx4_get_slave_port_state +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x76bcdddc set_phv_bit +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x76e02bab mlx4_eq_get_irq +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x79aec1ae mlx4_test_async +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x79c5c373 mlx4_SET_VPORT_QOS_set +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x7f9b1299 mlx4_max_tc +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 0x85cec0f4 mlx4_get_module_info +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x8be4d848 mlx4_get_eqs_per_port +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x8c2ffe6f mlx4_test_interrupt +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x8c5337bb mlx4_SET_MCAST_FLTR +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x8d54fa47 mlx4_ALLOCATE_VPP_set +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x92947074 mlx4_assign_eq +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x94a72c50 mlx4_query_diag_counters +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x99da6447 mlx4_gen_pkey_eqe +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xa03d4d2a mlx4_SET_PORT_PRIO2TC +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xaefb01a1 mlx4_gen_port_state_change_eqe +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xaf759dd1 mlx4_is_eq_vector_valid +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xb0d4063a mlx4_get_roce_gid_from_slave +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xb1e32a7a mlx4_release_eq +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xb7899344 mlx4_gen_guid_change_eqe +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xc222f569 mlx4_get_slave_from_roce_gid +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xc4a04bae mlx4_sync_pkey_table +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xd3e69d9f mlx4_get_parav_qkey +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xda3788ef mlx4_is_eq_shared +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xdb6b30ff mlx4_get_is_vlan_offload_disabled +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xdeba257a mlx4_get_slave_node_guid +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xf51b6f64 get_phv_bit +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xf571b68c mlx4_SET_PORT_user_mac +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xfa3c6e44 mlx4_SET_VPORT_QOS_get +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x01985270 mlx5_fs_remove_rx_underlay_qpn +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x0d42c120 mlx5_rl_is_in_range +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x0eb1f8af mlx5_core_destroy_mkey +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x0ecb64a4 mlx5_nic_vport_disable_roce +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x0f3c119b mlx5_notifier_unregister +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x113d8169 mlx5_core_destroy_psv +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x127df880 mlx5_core_query_mkey +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x12ada5df mlx5_core_attach_mcg +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x1715a507 mlx5_fpga_mem_write +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x19f5f48f mlx5_cmd_set_state +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x1a476fb6 mlx5_get_flow_namespace +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x1d3617a7 mlx5_cmd_free_uar +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x20b3ae01 mlx5_alloc_bfreg +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x21f77d81 mlx5_lag_is_active +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x2475b90f mlx5_cmd_destroy_vport_lag +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x278d04aa mlx5_eq_notifier_unregister +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x27efd19a mlx5_cmd_exec_cb +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x27fa4d63 __tracepoint_mlx5_fs_del_fg +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x2815fdef mlx5_fc_destroy +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x2934288b mlx5_get_fdb_sub_ns +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x2dcfcaa9 mlx5_comp_irq_get_affinity_mask +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x2e046945 mlx5_unregister_interface +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x2fd391e9 mlx5_cmd_init_async_ctx +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x3062176c mlx5_eq_destroy_generic +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x30c01db3 mlx5_core_alloc_transport_domain +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x32705594 __tracepoint_mlx5_fs_del_rule +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x32e42150 mlx5_eq_notifier_register +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x33eb4668 mlx5_debugfs_root +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x3585cfc1 mlx5_fc_create +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x37651b47 __tracepoint_mlx5_fs_set_fte +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x37af352c mlx5_eswitch_reg_c1_loopback_enabled +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x3859e2cc mlx5_core_create_rq +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x3e960390 __tracepoint_mlx5_fw +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x3fb9179e mlx5_create_auto_grouped_flow_table +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x42e896a7 mlx5_fc_query +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x46150cf1 __tracepoint_mlx5_fs_del_ft +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x4923e70f mlx5_cmd_exec +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x492ff564 mlx5_fpga_get_sbu_caps +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x495b9902 mlx5_register_interface +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x49af8ecf mlx5_cmd_create_vport_lag +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x4e212fe4 mlx5_core_roce_gid_set +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x4f4cf544 mlx5_lag_get_slave_port +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x56d7a18e mlx5_cmd_init +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x575d12ec mlx5_core_create_tir +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x5775d7e4 mlx5_core_create_tis +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x57d1ca26 mlx5_core_detach_mcg +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x59f9221a mlx5_add_flow_rules +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x60b73f27 mlx5_cmd_cleanup +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 0x6841690d mlx5_core_destroy_rqt +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x6ed7477b mlx5_core_destroy_cq +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x74bee53d mlx5_fpga_sbu_conn_destroy +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x74d13b59 mlx5_eq_update_ci +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x776eb933 mlx5_notifier_register +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x779da9eb mlx5_lag_is_roce +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x77af78a1 mlx5_core_destroy_rq +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x77f534bf mlx5_eswitch_add_send_to_vport_rule +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x7b4b41cf mlx5_rl_remove_rate +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x7d2ad71c mlx5_query_port_ib_proto_oper +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x7faf463f mlx5_lag_is_sriov +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x80047dec mlx5_get_uars_page +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x81437dc5 mlx5_eswitch_vport_match_metadata_enabled +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x81b1068f mlx5_eq_get_eqe +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x82f38d97 mlx5_vector2eqn +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x83f59461 mlx5_rl_add_rate_raw +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x8747be47 mlx5_fs_add_rx_underlay_qpn +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x87a25e22 __tracepoint_mlx5_fs_add_rule +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x8ac1f361 mlx5_core_destroy_tir +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x8aef7453 mlx5_core_query_vendor_id +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x8e5cbf95 mlx5_cmd_alloc_uar +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x8eeefaa0 __tracepoint_mlx5_fs_add_fg +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x8f394837 mlx5_eswitch_get_encap_mode +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x90dfe0a5 mlx5_core_create_mkey +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x924cd6fc mlx5_packet_reformat_dealloc +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x95553678 mlx5_core_create_cq +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x9616c03c mlx5_cmd_cleanup_async_ctx +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x9621e009 mlx5_rdma_rn_get_params +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x96eb2c99 mlx5_fc_id +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x9884865a mlx5_del_flow_rules +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x98ab7cc6 mlx5_destroy_flow_table +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x9d3e1cc8 mlx5_eswitch_register_vport_reps +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xa0487f47 mlx5_core_create_rqt +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xa5e3f7ff mlx5_core_destroy_tis +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xab7ccc29 mlx5_core_create_psv +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xad02674c mlx5_put_uars_page +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xae2f8844 mlx5_core_modify_tis +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xae9ea383 __tracepoint_mlx5_fs_del_fte +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xb1db1b07 mlx5_eq_create_generic +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xb43223da mlx5_eq_disable +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xb7672230 mlx5_debug_qp_remove +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xb7aa01eb mlx5_qp_debugfs_init +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xbe0edb05 mlx5_fpga_mem_read +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xbed31ff6 mlx5_eq_enable +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xc026874e mlx5_core_modify_sq +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xc2cadb1d mlx5_eswitch_uplink_get_proto_dev +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xc2d9116e mlx5_core_query_cq +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xc3f6285d mlx5_eswitch_vport_rep +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xc4e259f8 mlx5_fpga_sbu_conn_sendmsg +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xc92b38de mlx5_eswitch_get_vport_metadata_for_match +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xca22fd3c mlx5_rl_add_rate +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xcb1bba42 mlx5_buf_alloc +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xcd376cb6 mlx5_packet_reformat_alloc +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xcd6f146d mlx5_rl_remove_rate_raw +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xce0b6ecd mlx5_core_query_rq +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xd016a3fb mlx5_lag_query_cong_counters +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xd2e0e803 mlx5_lag_get_roce_netdev +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xd93a93bd mlx5_eswitch_unregister_vport_reps +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xd9a898ce mlx5_debug_qp_add +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xd9b037be mlx5_free_bfreg +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xd9da3f89 mlx5_fpga_sbu_conn_create +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xdcd63942 mlx5_comp_vectors_count +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xdd119ebc mlx5_core_dealloc_pd +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xde704af0 mlx5_eswitch_get_proto_dev +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xe0c19a22 mlx5_modify_header_dealloc +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xe5894203 mlx5_core_modify_cq_moderation +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xe6ce66cd mlx5_core_query_sq +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xe8e38f4e mlx5_core_modify_rq +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xef01bb32 __tracepoint_mlx5_fs_add_ft +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xf00b021e mlx5_qp_debugfs_cleanup +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xf120e368 mlx5_create_lag_demux_flow_table +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xf47ac911 mlx5_modify_header_alloc +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xf57c882b mlx5_core_alloc_pd +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xfb987ca6 mlx5_core_modify_cq +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xfeda13f7 mlx5_cmd_exec_polling +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xff697f59 mlx5_core_dealloc_transport_domain +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxfw/mlxfw 0x29db9382 mlxfw_firmware_flash +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0x02998acf mlxsw_afa_block_append_counter +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 0x07abcc0c mlxsw_afa_block_append_trap +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0x08d1404e mlxsw_core_ptp_transmitted +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0x0ca34ccf mlxsw_core_max_ports +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0x0e2b5842 mlxsw_afa_block_append_vlan_modify +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0x0e81c09c mlxsw_afk_destroy +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0x0e989f52 mlxsw_core_skb_transmit +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0x15801382 mlxsw_afk_key_info_put +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 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 0x2c68ced3 mlxsw_core_read_frc_h +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0x2decde87 mlxsw_core_fw_flash_start +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0x2ef51899 mlxsw_core_trap_state_set +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0x2f2c4887 mlxsw_afa_block_append_qos_switch_prio +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0x34eee2c7 mlxsw_core_rx_listener_register +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0x35ba2254 mlxsw_afk_values_add_u32 +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0x3f123442 mlxsw_core_kvd_sizes_get +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0x41055a45 mlxsw_core_event_listener_unregister +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0x42019774 mlxsw_core_port_devlink_port_get +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 0x47fd6eee mlxsw_core_fw_flash_end +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0x484489a4 mlxsw_cmd_exec +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0x4a6ed376 mlxsw_core_port_fini +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0x4c36be2d mlxsw_core_rx_listener_unregister +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0x5cf3dd79 mlxsw_core_bus_device_unregister +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0x5ff17b5c mlxsw_afa_block_destroy +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0x615ef5fc mlxsw_afa_block_append_qos_dscp +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 0x65e16da4 mlxsw_afk_key_info_get +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0x692ac04e mlxsw_afk_create +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0x71e1d813 mlxsw_core_port_clear +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0x73cf1d7a mlxsw_core_res_get +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0x749556a2 mlxsw_afk_key_info_subset +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0x76a65e3b mlxsw_core_port_init +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0x77768221 mlxsw_core_module_max_width +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0x77d83398 mlxsw_core_read_frc_l +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 0x858c30d0 mlxsw_afa_block_create +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0x8854d198 mlxsw_reg_write +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0x8ba5fa7e mlxsw_core_lag_mapping_set +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0x8cac3c30 mlxsw_core_driver_unregister +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0x902c3533 mlxsw_core_schedule_dw +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0x963cfb6a mlxsw_core_resources_query +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0x996c5d6d mlxsw_reg_trans_bulk_wait +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0x9b8db973 mlxsw_core_skb_receive +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0x9cbf026d mlxsw_afa_destroy +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0x9e41f494 mlxsw_afk_encode +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0xa3d0d2b6 mlxsw_afa_block_append_fwd +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0xa7765e88 mlxsw_reg_query +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0xa7ccb62a mlxsw_afa_block_append_qos_dsfield +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0xa82797a5 mlxsw_core_driver_register +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0xaf957dee mlxsw_afa_block_append_mirror +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0xb0717797 mlxsw_afa_block_append_fid_set +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0xb0cd50b1 mlxsw_core_trap_unregister +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0xb2f24677 mlxsw_core_res_valid +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0xb5e762fa mlxsw_afk_values_add_buf +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 0xb69e8afc mlxsw_env_get_module_eeprom +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0xba05b3b0 mlxsw_core_emad_string_tlv_enable +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0xbc222a8d mlxsw_afk_clear +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0xbe82d6cc mlxsw_env_get_module_info +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0xbfb7df3c mlxsw_core_driver_priv +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0xbfd01f33 mlxsw_core_port_ib_set +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0xc9c2e4cc mlxsw_core_lag_mapping_clear +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 0xcd9a40a4 mlxsw_afa_block_append_drop +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0xcf53c9fa mlxsw_core_port_eth_set +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0xd1a82f0b mlxsw_core_lag_mapping_get +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0xd252e62d mlxsw_core_skb_transmit_busy +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 0xd4ec58d3 mlxsw_afa_create +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0xd71566b9 mlxsw_core_schedule_work +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 0xdeb1dc2e mlxsw_afa_block_first_kvdl_index +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0xdeff4950 mlxsw_core_event_listener_register +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0xe16986dd mlxsw_afa_block_activity_get +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0xe67c711d mlxsw_core_bus_device_register +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0xecab212a mlxsw_afa_cookie_lookup +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0xf2ca3bae mlxsw_core_res_query_enabled +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0xf4909bea mlxsw_core_port_type_get +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0xf54b074f mlxsw_core_trap_register +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0xf7fbba9f mlxsw_afa_block_append_qos_ecn +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0xff007c25 mlxsw_core_cpu_port_fini +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_i2c 0x600b1f60 mlxsw_i2c_driver_register +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_i2c 0xc64dc024 mlxsw_i2c_driver_unregister +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_pci 0x50485f07 mlxsw_pci_driver_register +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_pci 0xeacfec4d mlxsw_pci_driver_unregister +EXPORT_SYMBOL drivers/net/ethernet/mscc/mscc_ocelot_common 0x030bb043 ocelot_deinit +EXPORT_SYMBOL drivers/net/ethernet/mscc/mscc_ocelot_common 0x0b150222 ocelot_netdevice_nb +EXPORT_SYMBOL drivers/net/ethernet/mscc/mscc_ocelot_common 0x0cb423ad ocelot_bridge_stp_state_set +EXPORT_SYMBOL drivers/net/ethernet/mscc/mscc_ocelot_common 0x0de01f3f ocelot_port_set_maxlen +EXPORT_SYMBOL drivers/net/ethernet/mscc/mscc_ocelot_common 0x1078ff78 ocelot_ptp_verify +EXPORT_SYMBOL drivers/net/ethernet/mscc/mscc_ocelot_common 0x10f09699 ocelot_fdb_dump +EXPORT_SYMBOL drivers/net/ethernet/mscc/mscc_ocelot_common 0x114f0b34 ocelot_fdb_add +EXPORT_SYMBOL drivers/net/ethernet/mscc/mscc_ocelot_common 0x18716e93 __ocelot_rmw_ix +EXPORT_SYMBOL drivers/net/ethernet/mscc/mscc_ocelot_common 0x200442df ocelot_regfields_init +EXPORT_SYMBOL drivers/net/ethernet/mscc/mscc_ocelot_common 0x23e335c3 ocelot_get_max_mtu +EXPORT_SYMBOL drivers/net/ethernet/mscc/mscc_ocelot_common 0x3116e1d0 ocelot_port_bridge_join +EXPORT_SYMBOL drivers/net/ethernet/mscc/mscc_ocelot_common 0x33cf2ba6 ocelot_get_ethtool_stats +EXPORT_SYMBOL drivers/net/ethernet/mscc/mscc_ocelot_common 0x34fc8e30 ocelot_port_writel +EXPORT_SYMBOL drivers/net/ethernet/mscc/mscc_ocelot_common 0x384b2c7d ocelot_regmap_init +EXPORT_SYMBOL drivers/net/ethernet/mscc/mscc_ocelot_common 0x395bd4ce ocelot_ptp_settime64 +EXPORT_SYMBOL drivers/net/ethernet/mscc/mscc_ocelot_common 0x3c91d2a7 ocelot_hwstamp_set +EXPORT_SYMBOL drivers/net/ethernet/mscc/mscc_ocelot_common 0x42888420 ocelot_port_policer_add +EXPORT_SYMBOL drivers/net/ethernet/mscc/mscc_ocelot_common 0x479e26ce ocelot_ptp_gettime64 +EXPORT_SYMBOL drivers/net/ethernet/mscc/mscc_ocelot_common 0x49a729bf ocelot_vlan_del +EXPORT_SYMBOL drivers/net/ethernet/mscc/mscc_ocelot_common 0x4d5b4c08 ocelot_fdb_del +EXPORT_SYMBOL drivers/net/ethernet/mscc/mscc_ocelot_common 0x5c240732 ocelot_get_sset_count +EXPORT_SYMBOL drivers/net/ethernet/mscc/mscc_ocelot_common 0x5f995d23 ocelot_init +EXPORT_SYMBOL drivers/net/ethernet/mscc/mscc_ocelot_common 0x64b48db4 ocelot_deinit_timestamp +EXPORT_SYMBOL drivers/net/ethernet/mscc/mscc_ocelot_common 0x71725ae0 ocelot_ptp_adjtime +EXPORT_SYMBOL drivers/net/ethernet/mscc/mscc_ocelot_common 0x7a13bf48 ocelot_vlan_add +EXPORT_SYMBOL drivers/net/ethernet/mscc/mscc_ocelot_common 0x7b5c9963 ocelot_chip_init +EXPORT_SYMBOL drivers/net/ethernet/mscc/mscc_ocelot_common 0x7cd2e5e9 ocelot_init_timestamp +EXPORT_SYMBOL drivers/net/ethernet/mscc/mscc_ocelot_common 0x80fecd28 ocelot_ptp_adjfine +EXPORT_SYMBOL drivers/net/ethernet/mscc/mscc_ocelot_common 0x8221ca48 ocelot_get_ts_info +EXPORT_SYMBOL drivers/net/ethernet/mscc/mscc_ocelot_common 0x8c4f5456 ocelot_port_add_txtstamp_skb +EXPORT_SYMBOL drivers/net/ethernet/mscc/mscc_ocelot_common 0x9e7dbe79 ocelot_get_txtstamp +EXPORT_SYMBOL drivers/net/ethernet/mscc/mscc_ocelot_common 0xacf6aff6 __ocelot_write_ix +EXPORT_SYMBOL drivers/net/ethernet/mscc/mscc_ocelot_common 0xb63a6bd0 ocelot_init_port +EXPORT_SYMBOL drivers/net/ethernet/mscc/mscc_ocelot_common 0xbd616d20 ocelot_configure_cpu +EXPORT_SYMBOL drivers/net/ethernet/mscc/mscc_ocelot_common 0xc62d6af4 ocelot_port_bridge_leave +EXPORT_SYMBOL drivers/net/ethernet/mscc/mscc_ocelot_common 0xc684be78 ocelot_port_disable +EXPORT_SYMBOL drivers/net/ethernet/mscc/mscc_ocelot_common 0xcfd2ca1b ocelot_get_strings +EXPORT_SYMBOL drivers/net/ethernet/mscc/mscc_ocelot_common 0xd0348add ocelot_switchdev_nb +EXPORT_SYMBOL drivers/net/ethernet/mscc/mscc_ocelot_common 0xd128a953 ocelot_port_enable +EXPORT_SYMBOL drivers/net/ethernet/mscc/mscc_ocelot_common 0xd5f21590 ocelot_probe_port +EXPORT_SYMBOL drivers/net/ethernet/mscc/mscc_ocelot_common 0xdcb95f2b ocelot_set_ageing_time +EXPORT_SYMBOL drivers/net/ethernet/mscc/mscc_ocelot_common 0xdecd6ffb ocelot_adjust_link +EXPORT_SYMBOL drivers/net/ethernet/mscc/mscc_ocelot_common 0xdece52a0 ocelot_ptp_enable +EXPORT_SYMBOL drivers/net/ethernet/mscc/mscc_ocelot_common 0xe4fc6ab5 ocelot_port_policer_del +EXPORT_SYMBOL drivers/net/ethernet/mscc/mscc_ocelot_common 0xe54a91e8 ocelot_switchdev_blocking_nb +EXPORT_SYMBOL drivers/net/ethernet/mscc/mscc_ocelot_common 0xedf70210 __ocelot_read_ix +EXPORT_SYMBOL drivers/net/ethernet/mscc/mscc_ocelot_common 0xf19583d9 ocelot_hwstamp_get +EXPORT_SYMBOL drivers/net/ethernet/mscc/mscc_ocelot_common 0xfae6f7ff ocelot_port_vlan_filtering +EXPORT_SYMBOL drivers/net/ethernet/mscc/mscc_ocelot_common 0xffba97ca ocelot_port_readl +EXPORT_SYMBOL drivers/net/ethernet/qlogic/qed/qed 0x4f264472 qed_put_iscsi_ops +EXPORT_SYMBOL drivers/net/ethernet/qlogic/qed/qed 0x50572272 qed_get_eth_ops +EXPORT_SYMBOL drivers/net/ethernet/qlogic/qed/qed 0x54fdb958 qed_get_iscsi_ops +EXPORT_SYMBOL drivers/net/ethernet/qlogic/qed/qed 0x786d3600 qed_get_rdma_ops +EXPORT_SYMBOL drivers/net/ethernet/qlogic/qed/qed 0x950d6f17 qed_get_fcoe_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/qede/qede 0x1b457799 qede_rdma_register_driver +EXPORT_SYMBOL drivers/net/ethernet/qlogic/qede/qede 0x4486616e qede_rdma_unregister_driver +EXPORT_SYMBOL drivers/net/hamradio/hdlcdrv 0x01effeab hdlcdrv_arbitrate +EXPORT_SYMBOL drivers/net/hamradio/hdlcdrv 0x04e898d0 hdlcdrv_register +EXPORT_SYMBOL drivers/net/hamradio/hdlcdrv 0x1de7d270 hdlcdrv_unregister +EXPORT_SYMBOL drivers/net/hamradio/hdlcdrv 0x975f2165 hdlcdrv_transmitter +EXPORT_SYMBOL drivers/net/hamradio/hdlcdrv 0xd478b313 hdlcdrv_receiver +EXPORT_SYMBOL drivers/net/mdio 0x3e17f466 mdio_set_flag +EXPORT_SYMBOL drivers/net/mdio 0x60443957 mdio45_probe +EXPORT_SYMBOL drivers/net/mdio 0x63e0fee5 mdio45_links_ok +EXPORT_SYMBOL drivers/net/mdio 0x652fb0b6 mdio45_ethtool_ksettings_get_npage +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/mii 0x288ed32b mii_check_link +EXPORT_SYMBOL drivers/net/mii 0x32856bb3 mii_ethtool_sset +EXPORT_SYMBOL drivers/net/mii 0x36e55cf2 mii_check_gmii_support +EXPORT_SYMBOL drivers/net/mii 0x4aae58e5 mii_check_media +EXPORT_SYMBOL drivers/net/mii 0x5b64bb64 generic_mii_ioctl +EXPORT_SYMBOL drivers/net/mii 0x77bf4cdd mii_ethtool_get_link_ksettings +EXPORT_SYMBOL drivers/net/mii 0x7d50d894 mii_ethtool_gset +EXPORT_SYMBOL drivers/net/mii 0xa58b5485 mii_link_ok +EXPORT_SYMBOL drivers/net/mii 0xaefdebc6 mii_ethtool_set_link_ksettings +EXPORT_SYMBOL drivers/net/mii 0xd9db9cb0 mii_nway_restart +EXPORT_SYMBOL drivers/net/phy/bcm-phy-lib 0x2f5c6b03 bcm54xx_auxctl_write +EXPORT_SYMBOL drivers/net/phy/mdio-bitbang 0x8946ce9d free_mdio_bitbang +EXPORT_SYMBOL drivers/net/phy/mdio-bitbang 0xa671ea57 alloc_mdio_bitbang +EXPORT_SYMBOL drivers/net/phy/mdio-cavium 0x11e4111d cavium_mdiobus_read +EXPORT_SYMBOL drivers/net/phy/mdio-cavium 0x265a084a cavium_mdiobus_write +EXPORT_SYMBOL drivers/net/ppp/pppox 0x2585235a pppox_ioctl +EXPORT_SYMBOL drivers/net/ppp/pppox 0x316ff2c0 pppox_compat_ioctl +EXPORT_SYMBOL drivers/net/ppp/pppox 0x37a4a7a9 register_pppox_proto +EXPORT_SYMBOL drivers/net/ppp/pppox 0x73af2b76 pppox_unbind_sock +EXPORT_SYMBOL drivers/net/ppp/pppox 0xe0ff7a18 unregister_pppox_proto +EXPORT_SYMBOL drivers/net/sungem_phy 0xdea37640 sungem_phy_probe +EXPORT_SYMBOL drivers/net/team/team 0x16a06211 team_option_inst_set_change +EXPORT_SYMBOL drivers/net/team/team 0x604e3fa1 team_modeop_port_change_dev_addr +EXPORT_SYMBOL drivers/net/team/team 0x660540d4 team_mode_unregister +EXPORT_SYMBOL drivers/net/team/team 0xa72cbb17 team_options_unregister +EXPORT_SYMBOL drivers/net/team/team 0xaab4950a team_options_change_check +EXPORT_SYMBOL drivers/net/team/team 0xab711ea9 team_options_register +EXPORT_SYMBOL drivers/net/team/team 0xc5b5c9ac team_mode_register +EXPORT_SYMBOL drivers/net/team/team 0xf220d0ee team_modeop_port_enter +EXPORT_SYMBOL drivers/net/usb/usbnet 0x46e7de9d usbnet_device_suggests_idle +EXPORT_SYMBOL drivers/net/usb/usbnet 0xc572dfce usbnet_manage_power +EXPORT_SYMBOL drivers/net/usb/usbnet 0xf801fb07 usbnet_link_change +EXPORT_SYMBOL drivers/net/wan/hdlc 0x01becd6a register_hdlc_protocol +EXPORT_SYMBOL drivers/net/wan/hdlc 0x07769b95 unregister_hdlc_device +EXPORT_SYMBOL drivers/net/wan/hdlc 0x1ccef616 attach_hdlc_protocol +EXPORT_SYMBOL drivers/net/wan/hdlc 0x3145d6a5 hdlc_close +EXPORT_SYMBOL drivers/net/wan/hdlc 0x472d98c2 alloc_hdlcdev +EXPORT_SYMBOL drivers/net/wan/hdlc 0x6a5ca8ae unregister_hdlc_protocol +EXPORT_SYMBOL drivers/net/wan/hdlc 0xb3839e1a hdlc_start_xmit +EXPORT_SYMBOL drivers/net/wan/hdlc 0xca171dc0 hdlc_ioctl +EXPORT_SYMBOL drivers/net/wan/hdlc 0xddb110b5 hdlc_open +EXPORT_SYMBOL drivers/net/wan/hdlc 0xffd28553 detach_hdlc_protocol +EXPORT_SYMBOL drivers/net/wimax/i2400m/i2400m 0x9e6c2bb3 i2400m_unknown_barker +EXPORT_SYMBOL drivers/net/wireless/ath/ath 0x00a41b7d ath_regd_init +EXPORT_SYMBOL drivers/net/wireless/ath/ath 0x108b188f ath_is_49ghz_allowed +EXPORT_SYMBOL drivers/net/wireless/ath/ath 0x157672e6 ath_key_delete +EXPORT_SYMBOL drivers/net/wireless/ath/ath 0x203e2357 dfs_pattern_detector_init +EXPORT_SYMBOL drivers/net/wireless/ath/ath 0x258f12b1 ath_rxbuf_alloc +EXPORT_SYMBOL drivers/net/wireless/ath/ath 0x3116992e ath_hw_cycle_counters_update +EXPORT_SYMBOL drivers/net/wireless/ath/ath 0x4571aea8 ath_is_world_regd +EXPORT_SYMBOL drivers/net/wireless/ath/ath 0x5d38a225 ath_reg_notifier_apply +EXPORT_SYMBOL drivers/net/wireless/ath/ath 0x7e007555 ath_hw_setbssidmask +EXPORT_SYMBOL drivers/net/wireless/ath/ath 0x9f810184 ath_key_config +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 0xcabd701d ath_printk +EXPORT_SYMBOL drivers/net/wireless/ath/ath 0xcf3c60da ath_hw_get_listen_time +EXPORT_SYMBOL drivers/net/wireless/ath/ath 0xe525c812 ath_hw_keyreset +EXPORT_SYMBOL drivers/net/wireless/ath/ath 0xf08b651e ath_regd_get_band_ctl +EXPORT_SYMBOL drivers/net/wireless/ath/ath 0xfb76a7fd ath_is_mybeacon +EXPORT_SYMBOL drivers/net/wireless/ath/ath10k/ath10k_core 0x00d4b128 ath10k_print_driver_info +EXPORT_SYMBOL drivers/net/wireless/ath/ath10k/ath10k_core 0x015e5db2 ath10k_debug_mask +EXPORT_SYMBOL drivers/net/wireless/ath/ath10k/ath10k_core 0x039ed375 ath10k_core_destroy +EXPORT_SYMBOL drivers/net/wireless/ath/ath10k/ath10k_core 0x07050399 ath10k_ce_deinit_pipe +EXPORT_SYMBOL drivers/net/wireless/ath/ath10k/ath10k_core 0x126b260a ath10k_mac_tx_push_pending +EXPORT_SYMBOL drivers/net/wireless/ath/ath10k/ath10k_core 0x282548f8 ath10k_core_start +EXPORT_SYMBOL drivers/net/wireless/ath/ath10k/ath10k_core 0x2d1ef54e __ath10k_ce_rx_num_free_bufs +EXPORT_SYMBOL drivers/net/wireless/ath/ath10k/ath10k_core 0x34d226b9 ath10k_coredump_get_mem_layout +EXPORT_SYMBOL drivers/net/wireless/ath/ath10k/ath10k_core 0x37805ece ath10k_ce_disable_interrupts +EXPORT_SYMBOL drivers/net/wireless/ath/ath10k/ath10k_core 0x39c418e5 ath10k_ce_rx_update_write_idx +EXPORT_SYMBOL drivers/net/wireless/ath/ath10k/ath10k_core 0x3c7f500b ath10k_ce_send +EXPORT_SYMBOL drivers/net/wireless/ath/ath10k/ath10k_core 0x3cc2f7ae ath10k_ce_completed_recv_next +EXPORT_SYMBOL drivers/net/wireless/ath/ath10k/ath10k_core 0x450b9a7b ath10k_ce_revoke_recv_next +EXPORT_SYMBOL drivers/net/wireless/ath/ath10k/ath10k_core 0x4609afa6 __ath10k_ce_send_revert +EXPORT_SYMBOL drivers/net/wireless/ath/ath10k/ath10k_core 0x4c892a70 ath10k_core_create +EXPORT_SYMBOL drivers/net/wireless/ath/ath10k/ath10k_core 0x50dd77c4 __tracepoint_ath10k_log_dbg +EXPORT_SYMBOL drivers/net/wireless/ath/ath10k/ath10k_core 0x53e6b28b ath10k_core_unregister +EXPORT_SYMBOL drivers/net/wireless/ath/ath10k/ath10k_core 0x5444f288 ath10k_core_free_board_files +EXPORT_SYMBOL drivers/net/wireless/ath/ath10k/ath10k_core 0x59921dcc ath10k_ce_rx_post_buf +EXPORT_SYMBOL drivers/net/wireless/ath/ath10k/ath10k_core 0x5d0145a6 ath10k_core_fetch_board_file +EXPORT_SYMBOL drivers/net/wireless/ath/ath10k/ath10k_core 0x62223332 ath10k_ce_completed_recv_next_nolock +EXPORT_SYMBOL drivers/net/wireless/ath/ath10k/ath10k_core 0x6783a07b ath10k_ce_dump_registers +EXPORT_SYMBOL drivers/net/wireless/ath/ath10k/ath10k_core 0x69751439 ath10k_core_register +EXPORT_SYMBOL drivers/net/wireless/ath/ath10k/ath10k_core 0x6a7b4874 ath10k_htc_notify_tx_completion +EXPORT_SYMBOL drivers/net/wireless/ath/ath10k/ath10k_core 0x6bf16193 ath10k_ce_alloc_rri +EXPORT_SYMBOL drivers/net/wireless/ath/ath10k/ath10k_core 0x6e7de796 ath10k_coredump_new +EXPORT_SYMBOL drivers/net/wireless/ath/ath10k/ath10k_core 0x6e81d849 ath10k_ce_send_nolock +EXPORT_SYMBOL drivers/net/wireless/ath/ath10k/ath10k_core 0x71d14efe ath10k_ce_alloc_pipe +EXPORT_SYMBOL drivers/net/wireless/ath/ath10k/ath10k_core 0x81553511 ath10k_htt_t2h_msg_handler +EXPORT_SYMBOL drivers/net/wireless/ath/ath10k/ath10k_core 0x8155f493 ath10k_info +EXPORT_SYMBOL drivers/net/wireless/ath/ath10k/ath10k_core 0x81c0ca70 ath10k_ce_free_rri +EXPORT_SYMBOL drivers/net/wireless/ath/ath10k/ath10k_core 0x9570bbc2 ath10k_ce_free_pipe +EXPORT_SYMBOL drivers/net/wireless/ath/ath10k/ath10k_core 0x989b49c5 ath10k_htc_rx_completion_handler +EXPORT_SYMBOL drivers/net/wireless/ath/ath10k/ath10k_core 0x9bdfd38d ath10k_ce_num_free_src_entries +EXPORT_SYMBOL drivers/net/wireless/ath/ath10k/ath10k_core 0x9c43b2e3 ath10k_core_stop +EXPORT_SYMBOL drivers/net/wireless/ath/ath10k/ath10k_core 0xa5f0ef19 ath10k_htt_rx_hl_indication +EXPORT_SYMBOL drivers/net/wireless/ath/ath10k/ath10k_core 0xae563836 ath10k_ce_init_pipe +EXPORT_SYMBOL drivers/net/wireless/ath/ath10k/ath10k_core 0xaf5706d8 ath10k_ce_cancel_send_next +EXPORT_SYMBOL drivers/net/wireless/ath/ath10k/ath10k_core 0xbf4ce9eb ath10k_ce_per_engine_service +EXPORT_SYMBOL drivers/net/wireless/ath/ath10k/ath10k_core 0xc5824ae5 ath10k_ce_completed_send_next_nolock +EXPORT_SYMBOL drivers/net/wireless/ath/ath10k/ath10k_core 0xc58d6ebe ath10k_err +EXPORT_SYMBOL drivers/net/wireless/ath/ath10k/ath10k_core 0xd2c373ff ath10k_htt_hif_tx_complete +EXPORT_SYMBOL drivers/net/wireless/ath/ath10k/ath10k_core 0xd677dcf2 ath10k_ce_completed_send_next +EXPORT_SYMBOL drivers/net/wireless/ath/ath10k/ath10k_core 0xd7dd1379 ath10k_htc_process_trailer +EXPORT_SYMBOL drivers/net/wireless/ath/ath10k/ath10k_core 0xd81a27d9 ath10k_htt_txrx_compl_task +EXPORT_SYMBOL drivers/net/wireless/ath/ath10k/ath10k_core 0xedf87ca9 ath10k_htc_tx_completion_handler +EXPORT_SYMBOL drivers/net/wireless/ath/ath10k/ath10k_core 0xef52cf67 ath10k_htt_rx_pktlog_completion_handler +EXPORT_SYMBOL drivers/net/wireless/ath/ath10k/ath10k_core 0xef66f92b ath10k_ce_per_engine_service_any +EXPORT_SYMBOL drivers/net/wireless/ath/ath10k/ath10k_core 0xf0dee680 ath10k_ce_enable_interrupts +EXPORT_SYMBOL drivers/net/wireless/ath/ath10k/ath10k_core 0xfe9627f9 ath10k_warn +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 0x47195fce ath6kl_core_init +EXPORT_SYMBOL drivers/net/wireless/ath/ath6kl/ath6kl_core 0x52926ad7 ath6kl_core_create +EXPORT_SYMBOL drivers/net/wireless/ath/ath6kl/ath6kl_core 0x5fd30a0d ath6kl_core_rx_complete +EXPORT_SYMBOL drivers/net/wireless/ath/ath6kl/ath6kl_core 0x685abb3d ath6kl_core_cleanup +EXPORT_SYMBOL drivers/net/wireless/ath/ath6kl/ath6kl_core 0x91cfb84a ath6kl_hif_rw_comp_handler +EXPORT_SYMBOL drivers/net/wireless/ath/ath6kl/ath6kl_core 0x97de5302 ath6kl_cfg80211_suspend +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 0xc782451a ath6kl_read_tgt_stats +EXPORT_SYMBOL drivers/net/wireless/ath/ath6kl/ath6kl_core 0xd6199d51 ath6kl_hif_intr_bh_handler +EXPORT_SYMBOL drivers/net/wireless/ath/ath6kl/ath6kl_core 0xec686b7a ath6kl_stop_txrx +EXPORT_SYMBOL drivers/net/wireless/ath/ath6kl/ath6kl_core 0xee21c682 ath6kl_cfg80211_resume +EXPORT_SYMBOL drivers/net/wireless/ath/ath6kl/ath6kl_core 0xf79f609e ath6kl_core_destroy +EXPORT_SYMBOL drivers/net/wireless/ath/ath6kl/ath6kl_core 0xffc78cc6 ath6kl_core_tx_complete +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_common 0x082e093b ath9k_cmn_setup_ht_cap +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_common 0x09c2c58e ath9k_cmn_spectral_init_debug +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_common 0x2f0b2d75 ath9k_cmn_beacon_config_adhoc +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_common 0x46aa25c6 ath9k_cmn_rx_skb_postprocess +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_common 0x48e6d71e ath9k_cmn_get_hw_crypto_keytype +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_common 0x520466b5 ath9k_cmn_rx_accept +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_common 0x54b66261 ath9k_cmn_debug_modal_eeprom +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_common 0x54b9c871 ath9k_cmn_reload_chainmask +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_common 0x5f7b4c5b ath9k_cmn_process_rate +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_common 0x61cbd7a7 ath9k_cmn_spectral_scan_trigger +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_common 0x69b26500 ath9k_cmn_spectral_scan_config +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_common 0x7d3a1c98 ath9k_cmn_debug_recv +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_common 0x8291c40f ath9k_cmn_init_channels_rates +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_common 0x8328b69c ath9k_cmn_spectral_deinit_debug +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_common 0x834274ac ath9k_cmn_process_rssi +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_common 0x8755436c ath9k_cmn_debug_phy_err +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_common 0xa302594e ath9k_cmn_debug_base_eeprom +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_common 0xa638290d ath9k_cmn_beacon_config_ap +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_common 0xb76fccc7 ath9k_cmn_debug_stat_rx +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_common 0xd2981357 ath9k_cmn_count_streams +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_common 0xe1d359ac ath9k_cmn_update_txpow +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_common 0xe620e7f9 ath9k_cmn_beacon_config_sta +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_common 0xebbcc653 ath_cmn_process_fft +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_common 0xf6271222 ath9k_cmn_get_channel +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_common 0xfbc6d7ef ath9k_cmn_init_crypto +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x01698d20 ar9003_mci_get_next_gpm_offset +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x02e79e25 ath9k_hw_releasetxqueue +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x0315aa94 ath9k_hw_btcoex_deinit +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x072dfa2d ath9k_hw_setuprxdesc +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x07c18e9c ath9k_hw_reset +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x0b15893b ar9003_paprd_is_done +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x0d863d3c ath_gen_timer_free +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x0dca06d4 ath9k_hw_set_tsfadjust +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x0f77dafc ath9k_hw_get_tsf_offset +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x142e57d6 ar9003_hw_bb_watchdog_check +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x14b9a278 ath9k_hw_gpio_request_in +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x17cf6f3d ath9k_hw_updatetxtriglevel +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x18495553 ath9k_hw_write_associd +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x201f37c2 ath9k_hw_getchan_noise +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x21ed6bc0 ar9003_paprd_populate_single_table +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x235506c3 ath9k_hw_ani_monitor +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x25661a67 ath9k_hw_gpio_get +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x2b1e024b ath9k_hw_btcoex_init_2wire +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x2f3c36a6 ath9k_hw_gpio_request_out +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x3166236a ar9003_is_paprd_enabled +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x32df4209 ath9k_hw_setuptxqueue +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x3390f609 ath9k_hw_wow_enable +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x39e3966b ath9k_hw_set_rx_bufsize +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x3a0f0dab ath9k_hw_txstart +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x3b838a9a ath9k_hw_set_gpio +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x3c779669 ath9k_hw_gettsf64 +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x3f22dffe ath9k_hw_wow_wakeup +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x4036c0e0 ath9k_hw_beaconq_setup +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x43465d7d ar9003_hw_disable_phy_restart +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x446b4d36 ath9k_hw_stop_dma_queue +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x45bddf66 ath9k_hw_name +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x46e6ff88 ath9k_hw_setrxfilter +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x4b0a6933 ar9003_mci_get_interrupt +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x55415ae6 ath9k_hw_numtxpending +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x565cc27d ath9k_hw_disable_interrupts +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x57c76a9d ath9k_hw_abortpcurecv +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x5893234a ath9k_hw_bstuck_nfcal +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x5bdfc478 ath9k_hw_enable_interrupts +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x5e5b11da ath9k_hw_btcoex_init_3wire +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x5f641483 ath9k_hw_disable_mib_counters +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x60831dc1 ath9k_hw_puttxbuf +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x610c062d ath9k_hw_get_txq_props +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x61e43620 ath9k_hw_getnf +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x645b5da9 ar9003_get_pll_sqsum_dvc +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x64907593 ath9k_hw_btcoex_enable +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x678e0d9a ath9k_hw_init_global_settings +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x6d00b0df ar9003_mci_state +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x6d161298 ath9k_hw_gpio_free +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x6ed2b619 ath9k_hw_abort_tx_dma +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x732b619f ar9003_paprd_init_table +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x752edcba ath9k_hw_kill_interrupts +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x79335b44 ar9003_mci_send_message +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x799989f9 ath9k_hw_wow_apply_pattern +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x7b773bab ath9k_hw_deinit +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x7da49b81 ath9k_hw_set_tx_filter +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x835033f8 ath9k_hw_putrxbuf +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x8394befa ath9k_hw_reset_calvalid +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x88bab2c8 ath9k_hw_getrxfilter +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x8c9122ad ath9k_hw_set_interrupts +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x9029414b ath9k_hw_setmcastfilter +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x9245dc6b ar9003_paprd_setup_gain_table +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x9319cc8b ath9k_hw_gen_timer_start +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x9aaafad4 ar9003_mci_setup +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x9bf27165 ath9k_hw_setrxabort +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x9e05aeaa ath_gen_timer_alloc +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x9e8ad429 ath9k_hw_disable +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x9f2cd341 ath_gen_timer_isr +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x9f91521b ath9k_hw_check_alive +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xa08306b9 ath9k_hw_computetxtime +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xa46d5657 ath9k_hw_beaconinit +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xa881229a ath9k_hw_gettsf32 +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xab264499 ath9k_hw_startpcureceive +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xac07e2a0 ar9003_paprd_create_curve +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xacaa48a8 ath9k_hw_set_txpowerlimit +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xb0cd39e0 ath9k_hw_check_nav +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xb67cf75a ath9k_hw_process_rxdesc_edma +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xb726e331 ath9k_hw_btcoex_set_concur_txprio +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xbe1eaad5 ath9k_hw_gettxbuf +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xbe5ed9d5 ath9k_hw_addrxbuf_edma +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xc08cd59f ath9k_hw_btcoex_bt_stomp +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xc0b80d30 ath9k_hw_loadnf +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xc4dc8090 ar9003_mci_cleanup +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xc9e480a5 ath9k_hw_phy_disable +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xcffe95ef ath9k_hw_init_btcoex_hw +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xd3638c5f ar9003_hw_bb_watchdog_dbg_info +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xe0b7c431 ath9k_hw_setpower +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xe1b268d4 ath9k_hw_setantenna +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xe2c565c5 ath9k_hw_stopdmarecv +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xe3ab78d6 ath9k_hw_set_txq_props +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xe4649cde ath9k_hw_btcoex_init_mci +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xe65ac52a ath9k_hw_btcoex_init_scheme +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xe755e52f ath9k_hw_wait +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xe7c2f02a ath9k_hw_rxprocdesc +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xec7e64f2 ath9k_hw_setup_statusring +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xee5c1ce8 ath9k_hw_resume_interrupts +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xee8f54d7 ath9k_hw_btcoex_disable +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xeee8ec31 ar9003_mci_set_bt_version +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xf14dee77 ath9k_hw_settsf64 +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xf1b5785d ar9003_paprd_enable +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xf1c63ae5 ath9k_hw_reset_tsf +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xf3061134 ath9k_hw_init +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xf3b32127 ath9k_hw_setopmode +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xf4a06fc5 ath9k_hw_set_sta_beacon_timers +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xf6200640 ath9k_hw_intrpend +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xf77101bd ath9k_hw_gen_timer_stop +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xfcc6a087 ar9003_mci_send_wlan_channels +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xfcd0193b ath9k_hw_btcoex_set_weight +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xfe2736aa ath9k_hw_resettxqueue +EXPORT_SYMBOL drivers/net/wireless/atmel/atmel 0x57a59b88 init_atmel_card +EXPORT_SYMBOL drivers/net/wireless/atmel/atmel 0x65afe4e1 atmel_open +EXPORT_SYMBOL drivers/net/wireless/atmel/atmel 0xb3b1be52 stop_atmel_card +EXPORT_SYMBOL drivers/net/wireless/broadcom/brcm80211/brcmutil/brcmutil 0x1906648e brcmu_boardrev_str +EXPORT_SYMBOL drivers/net/wireless/broadcom/brcm80211/brcmutil/brcmutil 0x36202725 brcmu_pktq_pflush +EXPORT_SYMBOL drivers/net/wireless/broadcom/brcm80211/brcmutil/brcmutil 0x3ce91bd3 brcmu_pkt_buf_free_skb +EXPORT_SYMBOL drivers/net/wireless/broadcom/brcm80211/brcmutil/brcmutil 0x640a2dca brcmu_pktq_init +EXPORT_SYMBOL drivers/net/wireless/broadcom/brcm80211/brcmutil/brcmutil 0x6fe2b918 brcmu_pktq_mlen +EXPORT_SYMBOL drivers/net/wireless/broadcom/brcm80211/brcmutil/brcmutil 0x90b584e7 brcmu_pktq_peek_tail +EXPORT_SYMBOL drivers/net/wireless/broadcom/brcm80211/brcmutil/brcmutil 0x9d3d33c4 brcmu_pktq_pdeq_match +EXPORT_SYMBOL drivers/net/wireless/broadcom/brcm80211/brcmutil/brcmutil 0xa17c0ccf brcmu_dotrev_str +EXPORT_SYMBOL drivers/net/wireless/broadcom/brcm80211/brcmutil/brcmutil 0xa49c618c brcmu_pktq_penq +EXPORT_SYMBOL drivers/net/wireless/broadcom/brcm80211/brcmutil/brcmutil 0xcd255089 brcmu_pktq_flush +EXPORT_SYMBOL drivers/net/wireless/broadcom/brcm80211/brcmutil/brcmutil 0xd16e8a92 brcmu_pktq_mdeq +EXPORT_SYMBOL drivers/net/wireless/broadcom/brcm80211/brcmutil/brcmutil 0xd6217d91 brcmu_d11_attach +EXPORT_SYMBOL drivers/net/wireless/broadcom/brcm80211/brcmutil/brcmutil 0xe1274d49 brcmu_pktq_pdeq_tail +EXPORT_SYMBOL drivers/net/wireless/broadcom/brcm80211/brcmutil/brcmutil 0xf4336348 brcmu_pktq_penq_head +EXPORT_SYMBOL drivers/net/wireless/broadcom/brcm80211/brcmutil/brcmutil 0xf57c879f brcmu_pktq_pdeq +EXPORT_SYMBOL drivers/net/wireless/broadcom/brcm80211/brcmutil/brcmutil 0xf6a01f2b brcmu_pkt_buf_get_skb +EXPORT_SYMBOL drivers/net/wireless/cisco/airo 0x06d91ac9 stop_airo_card +EXPORT_SYMBOL drivers/net/wireless/cisco/airo 0x37c474b0 reset_airo_card +EXPORT_SYMBOL drivers/net/wireless/cisco/airo 0x51ec0822 init_airo_card +EXPORT_SYMBOL drivers/net/wireless/intel/ipw2x00/libipw 0x093db8a1 libipw_channel_to_index +EXPORT_SYMBOL drivers/net/wireless/intel/ipw2x00/libipw 0x19f28c28 libipw_is_valid_channel +EXPORT_SYMBOL drivers/net/wireless/intel/ipw2x00/libipw 0x1da46ff6 libipw_wx_get_encodeext +EXPORT_SYMBOL drivers/net/wireless/intel/ipw2x00/libipw 0x27d00c1b libipw_freq_to_channel +EXPORT_SYMBOL drivers/net/wireless/intel/ipw2x00/libipw 0x2c623dd7 libipw_txb_free +EXPORT_SYMBOL drivers/net/wireless/intel/ipw2x00/libipw 0x4488f7ab libipw_wx_get_scan +EXPORT_SYMBOL drivers/net/wireless/intel/ipw2x00/libipw 0x4c824318 libipw_xmit +EXPORT_SYMBOL drivers/net/wireless/intel/ipw2x00/libipw 0x4e683602 libipw_get_geo +EXPORT_SYMBOL drivers/net/wireless/intel/ipw2x00/libipw 0x5147b3f7 libipw_set_geo +EXPORT_SYMBOL drivers/net/wireless/intel/ipw2x00/libipw 0x5f44cc2d libipw_wx_get_encode +EXPORT_SYMBOL drivers/net/wireless/intel/ipw2x00/libipw 0x65b1cd9d libipw_wx_set_encodeext +EXPORT_SYMBOL drivers/net/wireless/intel/ipw2x00/libipw 0x679a7bab libipw_channel_to_freq +EXPORT_SYMBOL drivers/net/wireless/intel/ipw2x00/libipw 0x773e3348 libipw_rx_mgt +EXPORT_SYMBOL drivers/net/wireless/intel/ipw2x00/libipw 0x90e8b715 libipw_rx +EXPORT_SYMBOL drivers/net/wireless/intel/ipw2x00/libipw 0x9c5aa9c6 free_libipw +EXPORT_SYMBOL drivers/net/wireless/intel/ipw2x00/libipw 0xa1fccbb5 libipw_get_channel +EXPORT_SYMBOL drivers/net/wireless/intel/ipw2x00/libipw 0xa9515a03 libipw_wx_set_encode +EXPORT_SYMBOL drivers/net/wireless/intel/ipw2x00/libipw 0xb5d53fe1 alloc_libipw +EXPORT_SYMBOL drivers/net/wireless/intel/ipw2x00/libipw 0xcd864511 libipw_get_channel_flags +EXPORT_SYMBOL drivers/net/wireless/intel/ipw2x00/libipw 0xfb6d038f libipw_networks_age +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x05f0b335 il_irq_handle_error +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x09efb3e0 il_set_rate +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x0a26e805 il_chswitch_done +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x0bca6b66 il_send_cmd_sync +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x11e11f08 il_tx_cmd_protection +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x133a517c il_rd_prph +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x13d0b39c il_wr_prph +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x159a181f il_mac_bss_info_changed +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x16558643 il_scan_cancel_timeout +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x1659f534 il_free_geos +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x19f92bed il_power_update_mode +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x1a397ad3 il_setup_scan_deferred_work +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x219e2370 il_read_targ_mem +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x23285739 il_cmd_queue_free +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x2517550f il_init_channel_map +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x2560c5fe il_set_rxon_channel +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x25cd936a il_set_decrypted_flag +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x265b260e il_apm_stop +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x29ccdd6c il_hdl_spectrum_measurement +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x2a63a29c il_mac_add_interface +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x2b422420 il_eeprom_free +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x2b7c75a5 il_set_rxon_hwcrypto +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x2bf7eea6 il_queue_space +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x2e0940c7 il_get_free_ucode_key_idx +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x3490125d il_hdl_error +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x34a2ff1e il_eeprom_init +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x3770ac54 il_txq_update_write_ptr +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x3a27b186 il_send_lq_cmd +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x3cb1f5d9 il_tx_queue_init +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x3e8475bb il_set_bit +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x416bd26a il_debug_level +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x43a3ab1d il_force_reset +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x447f1cc8 il_init_scan_params +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x46ed06ea il_setup_watchdog +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x49b47c9a il_set_tx_power +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x4b34ddbc il_leds_init +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x4e12cc93 il_tx_cmd_complete +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x5418f50b _il_poll_bit +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x550fc8ad il_write_targ_mem +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x576ab88d il_mac_sta_remove +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x5a014021 il_full_rxon_required +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x5dfb95d0 il_connection_init_rx_config +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x5f747d3a il_add_beacon_time +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x63190ae7 il_get_active_dwell_time +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x65f30516 il_free_channel_map +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x70d2c7bf il_leds_exit +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x73676f71 il_send_cmd +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x736a5206 il_eeprom_query_addr +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x781f5c01 il_hdl_csa +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x78a43e6d il_update_stats +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x78a51786 il_pm_ops +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x79f254f7 il_fill_probe_req +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x81313883 il_tx_queue_free +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x81d19101 il_restore_stations +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x85703e8a _il_apm_stop +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x8db3f817 il_rx_queue_space +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x8df92420 il_mac_flush +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x8e8d1aa8 il_check_rxon_cmd +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x8f93d944 il_send_stats_request +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x900b8bfd il_mac_reset_tsf +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x93bfc3cc il_usecs_to_beacons +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x9cc714af il_bg_watchdog +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0xa2d134c5 il_clear_ucode_stations +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0xa2ec3070 il_send_rxon_timing +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0xa37ebc12 il_eeprom_query16 +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0xa4d1d8d9 il_free_txq_mem +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0xa9055998 il_scan_cancel +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0xaca0832b il_mac_change_interface +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0xad2dfa20 il_apm_init +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0xafb29783 il_get_single_channel_number +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0xb23fe80e il_dbgfs_unregister +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0xb4d948ea il_get_passive_dwell_time +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0xb5c1f79f il_send_cmd_pdu_async +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0xb65510a3 il_get_cmd_string +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0xb7aa9462 il_send_add_sta +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0xb7bd33ff il_isr +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0xb7e42fe8 il_clear_bit +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0xba0aae15 il_set_rxon_ht +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0xbaa5afa6 il_dbgfs_register +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0xbb0a7a7c il_rx_queue_alloc +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0xbcfc46bc il_get_channel_info +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0xbe08f011 il_init_geos +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0xc07191ce il_power_initialize +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0xc336966f il_poll_bit +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0xc5e04676 il_send_cmd_pdu +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0xc6bf0beb il_tx_queue_unmap +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0xcb5595d4 il_rx_queue_update_write_ptr +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0xcdf8fdcf il_mac_hw_scan +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0xce0a9c66 il_setup_rx_scan_handlers +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0xce9b130c il_set_flags_for_band +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0xcfe01d52 il_add_station_common +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0xd2f98aae il_get_lowest_plcp +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0xdbe08671 il_cmd_queue_unmap +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0xdcf31be0 il_mac_remove_interface +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0xddd1c67c il_mac_conf_tx +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0xe574ab7c il_is_ht40_tx_allowed +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0xe8259a5d il_tx_queue_reset +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0xea798917 il_hdl_pm_debug_stats +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0xeff110d5 il_hdl_pm_sleep +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0xf1fcf11b il_send_bt_config +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0xf244944f il_alloc_txq_mem +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0xf70a693b il_bcast_addr +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0xf9e69006 il_cancel_scan_deferred_work +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0xfc1577c8 il_mac_config +EXPORT_SYMBOL drivers/net/wireless/intel/iwlwifi/iwlwifi 0x1ee9c199 __tracepoint_iwlwifi_dev_ucode_event +EXPORT_SYMBOL drivers/net/wireless/intel/iwlwifi/iwlwifi 0x20a6a247 __tracepoint_iwlwifi_dev_ucode_cont_event +EXPORT_SYMBOL drivers/net/wireless/intel/iwlwifi/iwlwifi 0xb72ade7d __tracepoint_iwlwifi_dev_ucode_wrap_event +EXPORT_SYMBOL drivers/net/wireless/intersil/hostap/hostap 0x036a0f4a hostap_set_word +EXPORT_SYMBOL drivers/net/wireless/intersil/hostap/hostap 0x0bfeaeca hostap_info_process +EXPORT_SYMBOL drivers/net/wireless/intersil/hostap/hostap 0x13abdd5a hostap_dump_tx_header +EXPORT_SYMBOL drivers/net/wireless/intersil/hostap/hostap 0x13e11fed hostap_init_proc +EXPORT_SYMBOL drivers/net/wireless/intersil/hostap/hostap 0x1d7b1795 hostap_set_auth_algs +EXPORT_SYMBOL drivers/net/wireless/intersil/hostap/hostap 0x22ca4590 hostap_set_roaming +EXPORT_SYMBOL drivers/net/wireless/intersil/hostap/hostap 0x24150d2e hostap_set_antsel +EXPORT_SYMBOL drivers/net/wireless/intersil/hostap/hostap 0x29baf489 hostap_get_porttype +EXPORT_SYMBOL drivers/net/wireless/intersil/hostap/hostap 0x2d05960e hostap_free_data +EXPORT_SYMBOL drivers/net/wireless/intersil/hostap/hostap 0x31b027d1 hostap_info_init +EXPORT_SYMBOL drivers/net/wireless/intersil/hostap/hostap 0x38b30692 hostap_remove_interface +EXPORT_SYMBOL drivers/net/wireless/intersil/hostap/hostap 0x3bc6720c hostap_setup_dev +EXPORT_SYMBOL drivers/net/wireless/intersil/hostap/hostap 0x4dfff328 hostap_set_hostapd +EXPORT_SYMBOL drivers/net/wireless/intersil/hostap/hostap 0x51f11b01 hostap_init_data +EXPORT_SYMBOL drivers/net/wireless/intersil/hostap/hostap 0x5d10e42d hostap_master_start_xmit +EXPORT_SYMBOL drivers/net/wireless/intersil/hostap/hostap 0x5e869a26 hostap_set_string +EXPORT_SYMBOL drivers/net/wireless/intersil/hostap/hostap 0x6f32afd9 hostap_80211_rx +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 0x9539d07e hostap_handle_sta_tx_exc +EXPORT_SYMBOL drivers/net/wireless/intersil/hostap/hostap 0x967a4f2b hostap_check_sta_fw_version +EXPORT_SYMBOL drivers/net/wireless/intersil/hostap/hostap 0xa911a6fa prism2_update_comms_qual +EXPORT_SYMBOL drivers/net/wireless/intersil/hostap/hostap 0xb4b77c8b hostap_80211_get_hdrlen +EXPORT_SYMBOL drivers/net/wireless/intersil/hostap/hostap 0xc304dfa0 hostap_set_hostapd_sta +EXPORT_SYMBOL drivers/net/wireless/intersil/hostap/hostap 0xd59dd9f8 hostap_add_interface +EXPORT_SYMBOL drivers/net/wireless/intersil/hostap/hostap 0xd7c10218 hostap_init_ap_proc +EXPORT_SYMBOL drivers/net/wireless/intersil/hostap/hostap 0xe5d340d3 hostap_80211_ops +EXPORT_SYMBOL drivers/net/wireless/intersil/hostap/hostap 0xe985b388 hostap_set_encryption +EXPORT_SYMBOL drivers/net/wireless/intersil/hostap/hostap 0xf360189a hostap_remove_proc +EXPORT_SYMBOL drivers/net/wireless/intersil/orinoco/orinoco 0x0b958f36 orinoco_down +EXPORT_SYMBOL drivers/net/wireless/intersil/orinoco/orinoco 0x20b542b4 hermes_struct_init +EXPORT_SYMBOL drivers/net/wireless/intersil/orinoco/orinoco 0x363523fd orinoco_if_add +EXPORT_SYMBOL drivers/net/wireless/intersil/orinoco/orinoco 0x3826af02 free_orinocodev +EXPORT_SYMBOL drivers/net/wireless/intersil/orinoco/orinoco 0x48a4574e orinoco_tx_timeout +EXPORT_SYMBOL drivers/net/wireless/intersil/orinoco/orinoco 0x7b5a1aff __orinoco_ev_info +EXPORT_SYMBOL drivers/net/wireless/intersil/orinoco/orinoco 0x7c948610 orinoco_init +EXPORT_SYMBOL drivers/net/wireless/intersil/orinoco/orinoco 0x8d8b3dba alloc_orinocodev +EXPORT_SYMBOL drivers/net/wireless/intersil/orinoco/orinoco 0x9c3a223a orinoco_set_multicast_list +EXPORT_SYMBOL drivers/net/wireless/intersil/orinoco/orinoco 0xa575a375 orinoco_change_mtu +EXPORT_SYMBOL drivers/net/wireless/intersil/orinoco/orinoco 0xa6936fd5 orinoco_stop +EXPORT_SYMBOL drivers/net/wireless/intersil/orinoco/orinoco 0xaf5eca61 __orinoco_ev_rx +EXPORT_SYMBOL drivers/net/wireless/intersil/orinoco/orinoco 0xc4a3c69a orinoco_up +EXPORT_SYMBOL drivers/net/wireless/intersil/orinoco/orinoco 0xe0228837 orinoco_process_xmit_skb +EXPORT_SYMBOL drivers/net/wireless/intersil/orinoco/orinoco 0xe3c27e1c orinoco_open +EXPORT_SYMBOL drivers/net/wireless/intersil/orinoco/orinoco 0xe74976c2 orinoco_if_del +EXPORT_SYMBOL drivers/net/wireless/intersil/orinoco/orinoco 0xffe27bca orinoco_interrupt +EXPORT_SYMBOL drivers/net/wireless/mediatek/mt76/mt76 0x098fe616 mt76_wcid_key_setup +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/btcoexist/btcoexist 0xcbc762a6 rtl_btc_get_ops_pointer +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtl8192c/rtl8192c-common 0x012cab28 rtl92c_firmware_selfreset +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtl8192c/rtl8192c-common 0x1590255b _rtl92c_phy_dbm_to_txpwr_idx +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtl8192c/rtl8192c-common 0x161c68fb rtl92c_phy_rf_config +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtl8192c/rtl8192c-common 0x18827e4c rtl92c_phy_sw_chnl +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 0x26ed10e9 rtl92ce_phy_set_rf_on +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtl8192c/rtl8192c-common 0x30cdb96c rtl92c_dm_init_rate_adaptive_mask +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtl8192c/rtl8192c-common 0x3512214e _rtl92c_phy_rf_serial_read +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtl8192c/rtl8192c-common 0x37afa143 rtl92c_phy_lc_calibrate +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtl8192c/rtl8192c-common 0x3e3bfb25 rtl92c_dm_bt_coexist +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtl8192c/rtl8192c-common 0x3e43740a rtl92c_dm_check_txpower_tracking +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtl8192c/rtl8192c-common 0x4b5d8af7 rtl92c_phy_set_rfpath_switch +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtl8192c/rtl8192c-common 0x50ec2d9e _rtl92c_phy_bb8192c_config_parafile +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtl8192c/rtl8192c-common 0x57d2c45e rtl92c_dm_write_dig +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtl8192c/rtl8192c-common 0x624e6ce6 rtl92c_dm_init_edca_turbo +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtl8192c/rtl8192c-common 0x73c5af83 rtl92c_phy_sw_chnl_callback +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtl8192c/rtl8192c-common 0x79f44b71 _rtl92c_phy_rf_serial_write +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtl8192c/rtl8192c-common 0x7fa5a5b8 _rtl92c_store_pwrindex_diffrate_offset +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtl8192c/rtl8192c-common 0x8660e46a rtl92c_phy_ap_calibrate +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtl8192c/rtl8192c-common 0x887f9ef0 _rtl92c_phy_txpwr_idx_to_dbm +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtl8192c/rtl8192c-common 0x95a6547b rtl92c_phy_iq_calibrate +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtl8192c/rtl8192c-common 0xab159c42 rtl8192_phy_check_is_legal_rfpath +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtl8192c/rtl8192c-common 0xab80c3e5 _rtl92c_phy_fw_rf_serial_read +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtl8192c/rtl8192c-common 0xae4c96f5 rtl92c_phy_update_txpower_dbm +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtl8192c/rtl8192c-common 0xaedca9f8 rtl92c_set_fw_rsvdpagepkt +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtl8192c/rtl8192c-common 0xaf2bc219 rtl92c_phy_set_bb_reg +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtl8192c/rtl8192c-common 0xb01ff860 rtl92c_dm_watchdog +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtl8192c/rtl8192c-common 0xb6ffad00 rtl92c_phy_set_io_cmd +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtl8192c/rtl8192c-common 0xbcadc231 rtl92c_set_fw_joinbss_report_cmd +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtl8192c/rtl8192c-common 0xc53e356c rtl92c_download_fw +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtl8192c/rtl8192c-common 0xc9583e9b rtl92c_dm_init +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtl8192c/rtl8192c-common 0xce7418bf rtl92c_dm_rf_saving +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtl8192c/rtl8192c-common 0xd265c0d5 rtl92c_fill_h2c_cmd +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtl8192c/rtl8192c-common 0xd85d27a3 rtl92c_bt_rssi_state_change +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtl8192c/rtl8192c-common 0xe1749eb5 rtl92c_phy_set_bw_mode +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtl8192c/rtl8192c-common 0xe508e22a rtl92c_phy_query_bb_reg +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtl8192c/rtl8192c-common 0xe5f645ed _rtl92c_phy_fw_rf_serial_write +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtl8192c/rtl8192c-common 0xe70b06ca rtl92c_phy_set_io +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtl8192c/rtl8192c-common 0xe7e551dc rtl92c_phy_set_txpower_level +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtl8192c/rtl8192c-common 0xede9b068 _rtl92c_phy_init_bb_rf_register_definition +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtl8192c/rtl8192c-common 0xfd06c265 rtl92c_set_fw_pwrmode_cmd +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtl8192c/rtl8192c-common 0xff06c618 _rtl92c_phy_set_rf_sleep +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtl_pci 0x58f89943 rtl_pci_suspend +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtl_pci 0xaea59407 rtl_pci_disconnect +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtl_pci 0xb3610f7e rtl_pci_resume +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtl_pci 0xda3f2865 rtl_pci_probe +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtl_usb 0x22aa3403 rtl_usb_suspend +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtl_usb 0xa730c0a4 rtl_usb_resume +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtl_usb 0xc9b64cb4 rtl_usb_probe +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtl_usb 0xe29b8830 rtl_usb_disconnect +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtlwifi 0x0b038e24 channel5g_80m +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtlwifi 0x0c1d87db rtl_init_rfkill +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtlwifi 0x0ee0fc4e efuse_read_1byte +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtlwifi 0x0fafc769 rtl_process_phyinfo +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtlwifi 0x158b65b9 rtl_cam_get_free_entry +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtlwifi 0x1b945315 rtl_addr_delay +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtlwifi 0x1f9f8ca6 rtl_cam_empty_entry +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtlwifi 0x2f9c0d90 rtl_cam_delete_one_entry +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtlwifi 0x30a956d7 rtl_query_rxpwrpercentage +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtlwifi 0x341bf13a rtl_cam_add_one_entry +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtlwifi 0x3a04829d rtl_ps_enable_nic +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtlwifi 0x3f6df3dd rtl_cam_reset_all_entry +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtlwifi 0x405799fc rtl_c2hcmd_enqueue +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtlwifi 0x54824f58 channel5g +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtlwifi 0x63ff74a8 rtl_hal_pwrseqcmdparsing +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtlwifi 0x710c5468 rtl_rx_ampdu_apply +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtlwifi 0x782c9a78 rtl_get_tcb_desc +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtlwifi 0x792385e8 rtlwifi_rate_mapping +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtlwifi 0x7b298011 rtl_efuse_shadow_map_update +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtlwifi 0x80244044 rtl_rfreg_delay +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtlwifi 0x84c33200 rtl_dm_diginit +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtlwifi 0x8966f00b rtl_cmd_send_packet +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtlwifi 0x8ea60059 rtl_fw_cb +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtlwifi 0x977330e0 rtl_send_smps_action +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtlwifi 0x9eff57f8 rtl_collect_scan_list +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtlwifi 0xa42df402 efuse_power_switch +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtlwifi 0xb58ed94d rtl_cam_mark_invalid +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtlwifi 0xbb5bab6c rtl_ps_disable_nic +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtlwifi 0xbefc829c rtl_cam_del_entry +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtlwifi 0xc89c82c0 efuse_shadow_read +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtlwifi 0xc99f243e rtl_bb_delay +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtlwifi 0xdb215d63 rtl_phy_scan_operation_backup +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtlwifi 0xe786b744 rtl_signal_scale_mapping +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtlwifi 0xebedfe5f rtl_wowlan_fw_cb +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtlwifi 0xec1466b2 rtl_mrate_idx_to_arfr_id +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtlwifi 0xed7c8cf2 rtl_evm_db_to_percentage +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtlwifi 0xf77837f0 efuse_one_byte_read +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw88/rtw88_8723d 0xd301278f rtw8723d_hw_spec +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw88/rtw88_8822b 0x38e15d3d rtw8822b_hw_spec +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw88/rtw88_8822c 0xd7233603 rtw8822c_hw_spec +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw88/rtw88_core 0x03d9c5b5 rtw_tx_write_data_h2c_get +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw88/rtw88_core 0x0fd3bcb9 rtw_tx_write_data_rsvd_page_get +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw88/rtw88_core 0x13100598 rtw_core_init +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw88/rtw88_core 0x15706b4c rtw_bf_remove_bfee_su +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw88/rtw88_core 0x1fa804f2 rtw_parse_tbl_txpwr_lmt +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw88/rtw88_core 0x1fff01ff rtw_phy_cfg_bb +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw88/rtw88_core 0x2215c5ae rtw_tx_report_enqueue +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw88/rtw88_core 0x22fc1f1a rtw_rx_fill_rx_status +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw88/rtw88_core 0x23c0bf55 rtw_phy_read_rf +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw88/rtw88_core 0x25ff2e22 rtw_phy_write_rf_reg_mix +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw88/rtw88_core 0x29af4b27 rtw_phy_write_rf_reg_sipi +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw88/rtw88_core 0x308df1e7 rtw_restore_reg +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw88/rtw88_core 0x33b3f3c0 rtw_debug_mask +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw88/rtw88_core 0x367a3b1c rtw_power_mode_change +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw88/rtw88_core 0x3a030909 rtw_fw_c2h_cmd_rx_irqsafe +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw88/rtw88_core 0x3d22943e rtw_coex_write_scbd +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw88/rtw88_core 0x3fed63aa rtw_phy_load_tables +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 0x4460e791 rtw_rx_stats +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw88/rtw88_core 0x4ec7bcdf rtw_read8_physical_efuse +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw88/rtw88_core 0x519c8ba9 rtw_rate_size +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw88/rtw88_core 0x58210e60 rtw_rate_section +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw88/rtw88_core 0x5bdff129 rtw_coex_read_indirect_reg +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw88/rtw88_core 0x62d417d9 rtw_tx_fill_tx_desc +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw88/rtw88_core 0x631d25e5 rtw_parse_tbl_bb_pg +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw88/rtw88_core 0x6fea4f51 rtw_set_channel_mac +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw88/rtw88_core 0x7aa2e53c rtw_phy_get_tx_power_index +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw88/rtw88_core 0x7bcb145c rtw_phy_cfg_agc +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw88/rtw88_core 0x7beea942 rtw_phy_read_rf_sipi +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw88/rtw88_core 0x85d11383 rtw_fw_do_iqk +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw88/rtw88_core 0x92e01859 rtw_parse_tbl_phy_cond +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw88/rtw88_core 0x96f824be rtw_phy_pwrtrack_avg +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw88/rtw88_core 0x978cb363 rtw_phy_init +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw88/rtw88_core 0xaf2c5bb3 rtw_register_hw +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw88/rtw88_core 0xb3970319 rtw_phy_config_swing_table +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw88/rtw88_core 0xb6081f1a rtw_phy_pwrtrack_need_iqk +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw88/rtw88_core 0xbb84c8e9 rtw_phy_set_tx_power_level +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw88/rtw88_core 0xbc5c7708 rtw_bf_set_gid_table +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw88/rtw88_core 0xc39bdbc5 rtw_bf_enable_bfee_su +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw88/rtw88_core 0xc3f1f8b4 rtw_ops +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw88/rtw88_core 0xc43b8b86 rtw_bf_enable_bfee_mu +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw88/rtw88_core 0xcb86191e rtw_chip_info_setup +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw88/rtw88_core 0xcba520dd rtw_phy_pwrtrack_thermal_changed +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw88/rtw88_core 0xcc6e6116 rtw_phy_cfg_rf +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw88/rtw88_core 0xcdffe7ad rtw_phy_cfg_mac +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw88/rtw88_core 0xd2b5038a rtw_phy_pwrtrack_get_delta +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw88/rtw88_core 0xd5d3076e __rtw_dbg +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw88/rtw88_core 0xdd156fe1 check_hw_ready +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw88/rtw88_core 0xebc080c4 rtw_bf_remove_bfee_mu +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw88/rtw88_core 0xf05db361 rtw_coex_write_indirect_reg +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw88/rtw88_core 0xf1ea9375 rtw_phy_pwrtrack_get_pwridx +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw88/rtw88_core 0xf2f63fff rtw_unregister_hw +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw88/rtw88_core 0xf34249ad rtw_fw_lps_deep_mode +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw88/rtw88_core 0xf64c29c2 rtw_core_deinit +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw88/rtw88_core 0xfdb27ce0 rtw_bf_cfg_csi_rate +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw88/rtw88_core 0xff6d8819 rtw_bf_phy_init +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw88/rtw88_pci 0x382e8abc rtw_pm_ops +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw88/rtw88_pci 0xcffae999 rtw_pci_probe +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw88/rtw88_pci 0xf53b93c5 rtw_pci_remove +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw88/rtw88_pci 0xf80f7b97 rtw_pci_shutdown +EXPORT_SYMBOL drivers/net/wireless/rsi/rsi_91x 0xa8b38cf0 rsi_config_wowlan +EXPORT_SYMBOL drivers/net/wireless/ti/wlcore/wlcore 0x1eba46b8 wl1271_free_tx_id +EXPORT_SYMBOL drivers/net/wireless/ti/wlcore/wlcore 0x8c6bbf6c wlcore_calc_packet_alignment +EXPORT_SYMBOL drivers/net/wireless/ti/wlcore/wlcore 0xdb04fe46 wlcore_tx_complete +EXPORT_SYMBOL drivers/net/wireless/ti/wlcore/wlcore 0xdd2ebf06 wl12xx_is_dummy_packet +EXPORT_SYMBOL drivers/nfc/fdp/fdp 0x11e64028 fdp_nci_probe +EXPORT_SYMBOL drivers/nfc/fdp/fdp 0x150fe873 fdp_nci_recv_frame +EXPORT_SYMBOL drivers/nfc/fdp/fdp 0x5ff2c8af fdp_nci_remove +EXPORT_SYMBOL drivers/nfc/microread/microread 0x35c4c548 microread_remove +EXPORT_SYMBOL drivers/nfc/microread/microread 0xf6a1f9bd microread_probe +EXPORT_SYMBOL drivers/nfc/nxp-nci/nxp-nci 0x0c5fe188 nxp_nci_fw_recv_frame +EXPORT_SYMBOL drivers/nfc/nxp-nci/nxp-nci 0x0f10c1c6 nxp_nci_remove +EXPORT_SYMBOL drivers/nfc/nxp-nci/nxp-nci 0x74d00408 nxp_nci_probe +EXPORT_SYMBOL drivers/nfc/pn533/pn533 0x97ef479e pn533_recv_frame +EXPORT_SYMBOL drivers/nfc/pn544/pn544 0x22273e85 pn544_hci_remove +EXPORT_SYMBOL drivers/nfc/pn544/pn544 0x7b851e0a pn544_hci_probe +EXPORT_SYMBOL drivers/nfc/s3fwrn5/s3fwrn5 0x655753b3 s3fwrn5_remove +EXPORT_SYMBOL drivers/nfc/s3fwrn5/s3fwrn5 0xb509a40c s3fwrn5_recv_frame +EXPORT_SYMBOL drivers/nfc/s3fwrn5/s3fwrn5 0xda087c6e s3fwrn5_probe +EXPORT_SYMBOL drivers/nfc/st-nci/st-nci 0x0366848b ndlc_send +EXPORT_SYMBOL drivers/nfc/st-nci/st-nci 0x08479892 ndlc_close +EXPORT_SYMBOL drivers/nfc/st-nci/st-nci 0x538cac64 ndlc_remove +EXPORT_SYMBOL drivers/nfc/st-nci/st-nci 0x5895a4b9 st_nci_se_io +EXPORT_SYMBOL drivers/nfc/st-nci/st-nci 0x63c8ddcb ndlc_open +EXPORT_SYMBOL drivers/nfc/st-nci/st-nci 0x7aa43c71 st_nci_se_deinit +EXPORT_SYMBOL drivers/nfc/st-nci/st-nci 0x88d4aefe st_nci_se_init +EXPORT_SYMBOL drivers/nfc/st-nci/st-nci 0xe461b3bf ndlc_probe +EXPORT_SYMBOL drivers/nfc/st-nci/st-nci 0xef532d05 ndlc_recv +EXPORT_SYMBOL drivers/nfc/st-nci/st-nci 0xf7c9dbc3 st_nci_vendor_cmds_init +EXPORT_SYMBOL drivers/nfc/st21nfca/st21nfca_hci 0x236a1e22 st21nfca_hci_disable_se +EXPORT_SYMBOL drivers/nfc/st21nfca/st21nfca_hci 0x48d0de71 st21nfca_vendor_cmds_init +EXPORT_SYMBOL drivers/nfc/st21nfca/st21nfca_hci 0x577938c6 st21nfca_dep_init +EXPORT_SYMBOL drivers/nfc/st21nfca/st21nfca_hci 0x5b81f60e st21nfca_hci_se_io +EXPORT_SYMBOL drivers/nfc/st21nfca/st21nfca_hci 0x66ed4077 st21nfca_hci_discover_se +EXPORT_SYMBOL drivers/nfc/st21nfca/st21nfca_hci 0x858cb2f6 st21nfca_hci_remove +EXPORT_SYMBOL drivers/nfc/st21nfca/st21nfca_hci 0x8f5b95fa st21nfca_se_deinit +EXPORT_SYMBOL drivers/nfc/st21nfca/st21nfca_hci 0x9210c9ea st21nfca_tm_send_dep_res +EXPORT_SYMBOL drivers/nfc/st21nfca/st21nfca_hci 0xafece502 st21nfca_im_send_dep_req +EXPORT_SYMBOL drivers/nfc/st21nfca/st21nfca_hci 0xb1d5df56 st21nfca_dep_event_received +EXPORT_SYMBOL drivers/nfc/st21nfca/st21nfca_hci 0xb3035931 st21nfca_se_init +EXPORT_SYMBOL drivers/nfc/st21nfca/st21nfca_hci 0xd4751720 st21nfca_apdu_reader_event_received +EXPORT_SYMBOL drivers/nfc/st21nfca/st21nfca_hci 0xdd421956 st21nfca_hci_loopback_event_received +EXPORT_SYMBOL drivers/nfc/st21nfca/st21nfca_hci 0xe626b1f2 st21nfca_connectivity_event_received +EXPORT_SYMBOL drivers/nfc/st21nfca/st21nfca_hci 0xe7e9d9f2 st21nfca_hci_enable_se +EXPORT_SYMBOL drivers/nfc/st21nfca/st21nfca_hci 0xe8ce87cb st21nfca_im_send_atr_req +EXPORT_SYMBOL drivers/nfc/st21nfca/st21nfca_hci 0xee135734 st21nfca_dep_deinit +EXPORT_SYMBOL drivers/nfc/st21nfca/st21nfca_hci 0xfbfe4448 st21nfca_hci_probe +EXPORT_SYMBOL drivers/ntb/ntb 0x11344836 ntb_default_peer_port_number +EXPORT_SYMBOL drivers/ntb/ntb 0x4642a0f0 ntb_clear_ctx +EXPORT_SYMBOL drivers/ntb/ntb 0x490818c2 ntbm_msi_free_irq +EXPORT_SYMBOL drivers/ntb/ntb 0x4b0eb446 ntb_default_peer_port_count +EXPORT_SYMBOL drivers/ntb/ntb 0x533a9471 ntb_unregister_device +EXPORT_SYMBOL drivers/ntb/ntb 0x63bcbb81 ntb_msi_setup_mws +EXPORT_SYMBOL drivers/ntb/ntb 0x66122a73 ntbm_msi_request_threaded_irq +EXPORT_SYMBOL drivers/ntb/ntb 0x84db0045 ntb_set_ctx +EXPORT_SYMBOL drivers/ntb/ntb 0x8988337c ntb_db_event +EXPORT_SYMBOL drivers/ntb/ntb 0x8ed7df76 ntb_unregister_client +EXPORT_SYMBOL drivers/ntb/ntb 0x9264b9ae ntb_msg_event +EXPORT_SYMBOL drivers/ntb/ntb 0x958f90b2 ntb_msi_init +EXPORT_SYMBOL drivers/ntb/ntb 0xa37c412a ntb_msi_peer_trigger +EXPORT_SYMBOL drivers/ntb/ntb 0xae0c71aa ntb_link_event +EXPORT_SYMBOL drivers/ntb/ntb 0xc2badbcf ntb_register_device +EXPORT_SYMBOL drivers/ntb/ntb 0xc7e0dc02 ntb_msi_peer_addr +EXPORT_SYMBOL drivers/ntb/ntb 0xd32c29ae ntb_msi_clear_mws +EXPORT_SYMBOL drivers/ntb/ntb 0xe1bfeadf ntb_default_peer_port_idx +EXPORT_SYMBOL drivers/ntb/ntb 0xe87f12ca ntb_default_port_number +EXPORT_SYMBOL drivers/ntb/ntb 0xe9ffe82f __ntb_register_client +EXPORT_SYMBOL drivers/nvdimm/nd_btt 0x32885832 nvdimm_namespace_attach_btt +EXPORT_SYMBOL drivers/nvdimm/nd_btt 0xea7838c2 nvdimm_namespace_detach_btt +EXPORT_SYMBOL drivers/parport/parport 0x0813976b parport_claim_or_block +EXPORT_SYMBOL drivers/parport/parport 0x0899e507 parport_set_timeout +EXPORT_SYMBOL drivers/parport/parport 0x0ce320e4 parport_ieee1284_write_compat +EXPORT_SYMBOL drivers/parport/parport 0x13b8dd9c parport_negotiate +EXPORT_SYMBOL drivers/parport/parport 0x16fa7e68 parport_ieee1284_epp_read_addr +EXPORT_SYMBOL drivers/parport/parport 0x1e38202a parport_announce_port +EXPORT_SYMBOL drivers/parport/parport 0x1f0c0cb5 parport_ieee1284_read_byte +EXPORT_SYMBOL drivers/parport/parport 0x24f3212f parport_ieee1284_ecp_read_data +EXPORT_SYMBOL drivers/parport/parport 0x26673483 parport_find_base +EXPORT_SYMBOL drivers/parport/parport 0x26733243 parport_wait_peripheral +EXPORT_SYMBOL drivers/parport/parport 0x375a3d2f parport_read +EXPORT_SYMBOL drivers/parport/parport 0x3800a8f3 parport_unregister_driver +EXPORT_SYMBOL drivers/parport/parport 0x3a103eec parport_write +EXPORT_SYMBOL drivers/parport/parport 0x45814cdd parport_ieee1284_ecp_write_data +EXPORT_SYMBOL drivers/parport/parport 0x498e432d parport_find_number +EXPORT_SYMBOL drivers/parport/parport 0x4d2a941b parport_ieee1284_interrupt +EXPORT_SYMBOL drivers/parport/parport 0x57aa6e1c parport_ieee1284_ecp_write_addr +EXPORT_SYMBOL drivers/parport/parport 0x5e3a3912 parport_irq_handler +EXPORT_SYMBOL drivers/parport/parport 0x77490578 parport_claim +EXPORT_SYMBOL drivers/parport/parport 0x7e019a20 parport_unregister_device +EXPORT_SYMBOL drivers/parport/parport 0x82b63657 parport_ieee1284_epp_write_data +EXPORT_SYMBOL drivers/parport/parport 0x8858a19f parport_get_port +EXPORT_SYMBOL drivers/parport/parport 0x909d1496 parport_ieee1284_epp_write_addr +EXPORT_SYMBOL drivers/parport/parport 0x94aa99b6 parport_ieee1284_read_nibble +EXPORT_SYMBOL drivers/parport/parport 0x95ee728f parport_del_port +EXPORT_SYMBOL drivers/parport/parport 0x9c71d546 __parport_register_driver +EXPORT_SYMBOL drivers/parport/parport 0xb7dab625 parport_ieee1284_epp_read_data +EXPORT_SYMBOL drivers/parport/parport 0xbc24e682 parport_wait_event +EXPORT_SYMBOL drivers/parport/parport 0xc2d064fd parport_register_dev_model +EXPORT_SYMBOL drivers/parport/parport 0xd18f589b parport_release +EXPORT_SYMBOL drivers/parport/parport 0xe151612d parport_put_port +EXPORT_SYMBOL drivers/parport/parport 0xe252aba0 parport_register_port +EXPORT_SYMBOL drivers/parport/parport 0xf70f2281 parport_remove_port +EXPORT_SYMBOL drivers/parport/parport_pc 0x088355f1 parport_pc_unregister_port +EXPORT_SYMBOL drivers/parport/parport_pc 0x474efe07 parport_pc_probe_port +EXPORT_SYMBOL drivers/pcmcia/pcmcia 0x0e1d6302 pcmcia_get_mac_from_cis +EXPORT_SYMBOL drivers/pcmcia/pcmcia 0x19f1f1e9 pcmcia_loop_config +EXPORT_SYMBOL drivers/pcmcia/pcmcia 0x397cb253 pcmcia_map_mem_page +EXPORT_SYMBOL drivers/pcmcia/pcmcia 0x3a7f3d5a pcmcia_request_window +EXPORT_SYMBOL drivers/pcmcia/pcmcia 0x476d95e0 pcmcia_read_config_byte +EXPORT_SYMBOL drivers/pcmcia/pcmcia 0x4c87fda4 pcmcia_fixup_iowidth +EXPORT_SYMBOL drivers/pcmcia/pcmcia 0x54fd2406 pcmcia_get_tuple +EXPORT_SYMBOL drivers/pcmcia/pcmcia 0x76a4591c pcmcia_unregister_driver +EXPORT_SYMBOL drivers/pcmcia/pcmcia 0x89a31916 pcmcia_fixup_vpp +EXPORT_SYMBOL drivers/pcmcia/pcmcia 0xa942a5b8 pcmcia_loop_tuple +EXPORT_SYMBOL drivers/pcmcia/pcmcia 0xaca46927 pcmcia_request_io +EXPORT_SYMBOL drivers/pcmcia/pcmcia 0xaf74cab0 pcmcia_disable_device +EXPORT_SYMBOL drivers/pcmcia/pcmcia 0xbb312663 pcmcia_parse_tuple +EXPORT_SYMBOL drivers/pcmcia/pcmcia 0xc5205d1e pcmcia_register_driver +EXPORT_SYMBOL drivers/pcmcia/pcmcia 0xd6df029c pcmcia_request_irq +EXPORT_SYMBOL drivers/pcmcia/pcmcia 0xe26543c9 pcmcia_enable_device +EXPORT_SYMBOL drivers/pcmcia/pcmcia 0xe55d1cd0 pcmcia_dev_present +EXPORT_SYMBOL drivers/pcmcia/pcmcia 0xe8291e23 pcmcia_write_config_byte +EXPORT_SYMBOL drivers/pcmcia/pcmcia 0xf8e099f5 pcmcia_release_window +EXPORT_SYMBOL drivers/pcmcia/pcmcia_core 0x13fb267d pcmcia_register_socket +EXPORT_SYMBOL drivers/pcmcia/pcmcia_core 0x212db8d2 pcmcia_socket_list +EXPORT_SYMBOL drivers/pcmcia/pcmcia_core 0x284737aa pcmcia_get_socket_by_nr +EXPORT_SYMBOL drivers/pcmcia/pcmcia_core 0x3069ada1 pcmcia_socket_class +EXPORT_SYMBOL drivers/pcmcia/pcmcia_core 0x3329a051 pcmcia_parse_events +EXPORT_SYMBOL drivers/pcmcia/pcmcia_core 0xaf983444 pcmcia_parse_uevents +EXPORT_SYMBOL drivers/pcmcia/pcmcia_core 0xbf5cc57d pccard_register_pcmcia +EXPORT_SYMBOL drivers/pcmcia/pcmcia_core 0xc0d3852a pcmcia_put_socket +EXPORT_SYMBOL drivers/pcmcia/pcmcia_core 0xc26ed8f2 pcmcia_get_socket +EXPORT_SYMBOL drivers/pcmcia/pcmcia_core 0xcf97f3bd dead_socket +EXPORT_SYMBOL drivers/pcmcia/pcmcia_core 0xed53664c pcmcia_reset_card +EXPORT_SYMBOL drivers/pcmcia/pcmcia_core 0xf942709b pcmcia_socket_list_rwsem +EXPORT_SYMBOL drivers/pcmcia/pcmcia_core 0xfbb81dcd pcmcia_unregister_socket +EXPORT_SYMBOL drivers/pcmcia/pcmcia_rsrc 0x0e4f2fff pccard_nonstatic_ops +EXPORT_SYMBOL drivers/pcmcia/pcmcia_rsrc 0xd02a80a2 pccard_static_ops +EXPORT_SYMBOL drivers/platform/chrome/cros_ec 0x3b9ed3cc cros_ec_unregister +EXPORT_SYMBOL drivers/platform/chrome/cros_ec 0x73985193 cros_ec_register +EXPORT_SYMBOL drivers/platform/chrome/cros_ec 0x8adb9f44 cros_ec_suspend +EXPORT_SYMBOL drivers/platform/chrome/cros_ec 0xf069e855 cros_ec_handle_event +EXPORT_SYMBOL drivers/platform/chrome/cros_ec 0xf0de5907 cros_ec_resume +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/chrome/cros_ec_lpcs 0xf5c87c59 cros_ec_lpc_mec_destroy +EXPORT_SYMBOL drivers/platform/x86/dcdbas 0xa75079d6 dcdbas_smi_request +EXPORT_SYMBOL drivers/platform/x86/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 0x5467e3bd __wmi_driver_register +EXPORT_SYMBOL drivers/platform/x86/wmi 0x91c75bb7 wmi_driver_unregister +EXPORT_SYMBOL drivers/rpmsg/rpmsg_core 0x1b6558ae rpmsg_trysend +EXPORT_SYMBOL drivers/rpmsg/rpmsg_core 0x1b9e33c8 __register_rpmsg_driver +EXPORT_SYMBOL drivers/rpmsg/rpmsg_core 0x1c49f086 unregister_rpmsg_driver +EXPORT_SYMBOL drivers/rpmsg/rpmsg_core 0x361ac2d7 rpmsg_send +EXPORT_SYMBOL drivers/rpmsg/rpmsg_core 0x400f4d77 rpmsg_find_device +EXPORT_SYMBOL drivers/rpmsg/rpmsg_core 0x5ef916e0 rpmsg_sendto +EXPORT_SYMBOL drivers/rpmsg/rpmsg_core 0x657be188 rpmsg_trysendto +EXPORT_SYMBOL drivers/rpmsg/rpmsg_core 0x8bfd5b17 rpmsg_poll +EXPORT_SYMBOL drivers/rpmsg/rpmsg_core 0x8fa5b230 rpmsg_destroy_ept +EXPORT_SYMBOL drivers/rpmsg/rpmsg_core 0x97b24c32 rpmsg_send_offchannel +EXPORT_SYMBOL drivers/rpmsg/rpmsg_core 0xb3593167 rpmsg_trysend_offchannel +EXPORT_SYMBOL drivers/rpmsg/rpmsg_core 0xbcce8363 rpmsg_unregister_device +EXPORT_SYMBOL drivers/rpmsg/rpmsg_core 0xd824a69d rpmsg_create_ept +EXPORT_SYMBOL drivers/rpmsg/rpmsg_core 0xf6dc0d8b rpmsg_register_device +EXPORT_SYMBOL drivers/rtc/rtc-ds1685 0x7c68c57e ds1685_rtc_poweroff +EXPORT_SYMBOL drivers/scsi/53c700 0x22068f6b NCR_700_detect +EXPORT_SYMBOL drivers/scsi/53c700 0x3d9cece0 NCR_700_intr +EXPORT_SYMBOL drivers/scsi/53c700 0x50263922 NCR_700_release +EXPORT_SYMBOL drivers/scsi/esp_scsi 0x16ef9564 scsi_esp_cmd +EXPORT_SYMBOL drivers/scsi/esp_scsi 0x4a29ab38 scsi_esp_intr +EXPORT_SYMBOL drivers/scsi/esp_scsi 0x729b5c34 scsi_esp_unregister +EXPORT_SYMBOL drivers/scsi/esp_scsi 0x88aee858 scsi_esp_template +EXPORT_SYMBOL drivers/scsi/esp_scsi 0xe56ff388 scsi_esp_register +EXPORT_SYMBOL drivers/scsi/fcoe/libfcoe 0x01c39186 fcoe_ctlr_set_fip_mode +EXPORT_SYMBOL drivers/scsi/fcoe/libfcoe 0x349bbf7a fcoe_fcf_get_selected +EXPORT_SYMBOL drivers/scsi/fcoe/libfcoe 0x3710f5d7 fcoe_ctlr_recv +EXPORT_SYMBOL drivers/scsi/fcoe/libfcoe 0x411debfc fcoe_ctlr_init +EXPORT_SYMBOL drivers/scsi/fcoe/libfcoe 0x4620811b fcoe_transport_detach +EXPORT_SYMBOL drivers/scsi/fcoe/libfcoe 0x6b2f3dde fcoe_transport_attach +EXPORT_SYMBOL drivers/scsi/fcoe/libfcoe 0x7064f286 fcoe_ctlr_link_down +EXPORT_SYMBOL drivers/scsi/fcoe/libfcoe 0x919a1da8 fcoe_ctlr_recv_flogi +EXPORT_SYMBOL drivers/scsi/fcoe/libfcoe 0xac25630a fcoe_ctlr_els_send +EXPORT_SYMBOL drivers/scsi/fcoe/libfcoe 0xb562116d fcoe_ctlr_link_up +EXPORT_SYMBOL drivers/scsi/fcoe/libfcoe 0xc7ebcfc8 fcoe_ctlr_destroy +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x005201c9 fc_fcp_init +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x07630c83 fc_exch_mgr_list_clone +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x07870793 fc_exch_update_stats +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x09ec3a18 libfc_vport_create +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x11b12e2d fc_exch_mgr_reset +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x13d4da11 fc_lport_set_local_id +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x18353e5a fc_exch_mgr_alloc +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x1cd90c88 fc_exch_mgr_add +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x22aa6cf5 fc_seq_send +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x22b90986 fc_exch_mgr_del +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x258a84da fc_fc4_deregister_provider +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x2b3de2c1 fc_disc_init +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x2ef6fdf5 fc_lport_bsg_request +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x31a7a014 fc_rport_recv_req +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x328e101b fc_rport_terminate_io +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x36a258c2 fc_exch_init +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x385a9e61 fc_lport_iterate +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x3d0bd5f8 fc_disc_config +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x3ec00137 fc_linkdown +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x46af4aac fc_seq_set_resp +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x4d8bb246 fc_exch_mgr_free +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x590149da fc_vport_setlink +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x5d32fb4f fc_seq_assign +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x5d8adffb fc_lport_destroy +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x5dfdba49 fc_rport_create +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x60c87771 fc_fcp_destroy +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x6679689f fc_fc4_register_provider +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x69219e2a fc_frame_crc_check +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x70c695f4 fc_get_host_speed +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x71d81ac1 _fc_frame_alloc +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x72e87c27 fc_eh_host_reset +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x75767368 fc_vport_id_lookup +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x7a4120a0 fc_rport_lookup +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x7b2faea7 fc_elsct_send +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x7f3407a7 fc_seq_start_next +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x811811e0 fc_exch_done +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x85e01831 fc_frame_alloc_fill +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x86cbc3d5 fc_set_rport_loss_tmo +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x8822b496 fc_lport_init +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x885e2e1a fc_fabric_login +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x890bc1cd fc_eh_abort +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x9d50ed7e fc_rport_destroy +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0xa1519214 fc_slave_alloc +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0xa1bcd198 fc_cpu_mask +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0xa38df985 fc_lport_logo_resp +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0xa3bcccab fc_fill_reply_hdr +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0xa45e51f4 fc_lport_recv +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0xa71c2fe5 fc_elsct_init +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0xa7205cb2 fc_exch_recv +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0xb0ddd5a1 fc_rport_flush_queue +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0xb8d868bd fc_exch_seq_send +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0xbb037c38 fc_rport_login +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0xbc43d477 fc_get_host_port_state +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0xbf8bb028 fc_set_mfs +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0xc3b2facc fc_linkup +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0xca54d0bc fc_lport_config +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0xd1e2b432 fc_fill_hdr +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0xd9501573 fc_queuecommand +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0xda895fbf fc_fabric_logoff +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0xde8ab052 fc_eh_device_reset +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0xe530d905 fc_get_host_stats +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0xe5cf06b5 fc_lport_notifier_head +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0xe8b7dfe2 fc_lport_flogi_resp +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0xea2e6c82 fc_lport_reset +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0xeae03678 fc_rport_logoff +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0xfa4667d1 fc_seq_release +EXPORT_SYMBOL drivers/scsi/libsas/libsas 0x1b79490f sas_prep_resume_ha +EXPORT_SYMBOL drivers/scsi/libsas/libsas 0x4a8e3d34 try_test_sas_gpio_gp_bit +EXPORT_SYMBOL drivers/scsi/libsas/libsas 0x63afa7e4 sas_resume_ha +EXPORT_SYMBOL drivers/scsi/libsas/libsas 0xaa1f2009 sas_suspend_ha +EXPORT_SYMBOL drivers/scsi/megaraid/megaraid_mm 0x81715eda 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 0x18ac27c7 qlt_rdy_to_xfer +EXPORT_SYMBOL drivers/scsi/qla2xxx/qla2xxx 0x32722a96 qlt_stop_phase2 +EXPORT_SYMBOL drivers/scsi/qla2xxx/qla2xxx 0x5e33ecc9 qlt_xmit_tm_rsp +EXPORT_SYMBOL drivers/scsi/qla2xxx/qla2xxx 0x75c1f953 qlt_free_cmd +EXPORT_SYMBOL drivers/scsi/qla2xxx/qla2xxx 0xa07b97ce qlt_xmit_response +EXPORT_SYMBOL drivers/scsi/qla2xxx/qla2xxx 0xa1d1ad2e qlt_free_mcmd +EXPORT_SYMBOL drivers/scsi/qla2xxx/qla2xxx 0xb91dc2e5 qlt_abort_cmd +EXPORT_SYMBOL drivers/scsi/qla2xxx/qla2xxx 0xbcbc2bd5 qlt_lport_deregister +EXPORT_SYMBOL drivers/scsi/qla2xxx/qla2xxx 0xbeb3d970 qlt_stop_phase1 +EXPORT_SYMBOL drivers/scsi/qla2xxx/qla2xxx 0xd24cf718 qlt_enable_vha +EXPORT_SYMBOL drivers/scsi/qla2xxx/qla2xxx 0xdc5a157f qlt_lport_register +EXPORT_SYMBOL drivers/scsi/qla2xxx/qla2xxx 0xfffb3f5b qlt_unreg_sess +EXPORT_SYMBOL drivers/scsi/qlogicfas408 0x1f55cd70 qlogicfas408_ihandl +EXPORT_SYMBOL drivers/scsi/qlogicfas408 0x2f15730d qlogicfas408_host_reset +EXPORT_SYMBOL drivers/scsi/qlogicfas408 0x3fd8cd71 qlogicfas408_detect +EXPORT_SYMBOL drivers/scsi/qlogicfas408 0x4a1f7ac6 qlogicfas408_disable_ints +EXPORT_SYMBOL drivers/scsi/qlogicfas408 0x4dc509da qlogicfas408_biosparam +EXPORT_SYMBOL drivers/scsi/qlogicfas408 0x67af2b2d qlogicfas408_abort +EXPORT_SYMBOL drivers/scsi/qlogicfas408 0x67e10d89 qlogicfas408_info +EXPORT_SYMBOL drivers/scsi/qlogicfas408 0x8b47987a qlogicfas408_queuecommand +EXPORT_SYMBOL drivers/scsi/qlogicfas408 0xe76b3b20 qlogicfas408_get_chip_type +EXPORT_SYMBOL drivers/scsi/qlogicfas408 0xf2b95199 qlogicfas408_setup +EXPORT_SYMBOL drivers/scsi/raid_class 0x591d2c1f raid_component_add +EXPORT_SYMBOL drivers/scsi/raid_class 0x5cda8eb1 raid_class_release +EXPORT_SYMBOL drivers/scsi/raid_class 0xab717a9f raid_class_attach +EXPORT_SYMBOL drivers/scsi/scsi_transport_fc 0x008ccadc fc_host_post_event +EXPORT_SYMBOL drivers/scsi/scsi_transport_fc 0x00b1c6bc fc_host_fpin_rcv +EXPORT_SYMBOL drivers/scsi/scsi_transport_fc 0x01819c7a fc_host_post_fc_event +EXPORT_SYMBOL drivers/scsi/scsi_transport_fc 0x0638ab76 fc_block_scsi_eh +EXPORT_SYMBOL drivers/scsi/scsi_transport_fc 0x12c40bbc fc_remote_port_add +EXPORT_SYMBOL drivers/scsi/scsi_transport_fc 0x17bcc052 fc_release_transport +EXPORT_SYMBOL drivers/scsi/scsi_transport_fc 0x375f8bbd fc_get_event_number +EXPORT_SYMBOL drivers/scsi/scsi_transport_fc 0x456482f8 fc_host_post_vendor_event +EXPORT_SYMBOL drivers/scsi/scsi_transport_fc 0x5048d84d fc_eh_timed_out +EXPORT_SYMBOL drivers/scsi/scsi_transport_fc 0x570f85d0 fc_block_rport +EXPORT_SYMBOL drivers/scsi/scsi_transport_fc 0x68b3dfd1 fc_remote_port_rolechg +EXPORT_SYMBOL drivers/scsi/scsi_transport_fc 0x6d4cfc66 fc_remote_port_delete +EXPORT_SYMBOL drivers/scsi/scsi_transport_fc 0x9a79f36c fc_vport_terminate +EXPORT_SYMBOL drivers/scsi/scsi_transport_fc 0x9d666cd9 fc_vport_create +EXPORT_SYMBOL drivers/scsi/scsi_transport_fc 0x9f1f432f scsi_is_fc_rport +EXPORT_SYMBOL drivers/scsi/scsi_transport_fc 0xf601d98d fc_remove_host +EXPORT_SYMBOL drivers/scsi/scsi_transport_fc 0xf6ec3bb3 fc_attach_transport +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0x09e3d5a3 sas_get_address +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0x101a0793 sas_rphy_delete +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0x17435c98 sas_port_delete_phy +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0x23f47cf8 sas_port_mark_backlink +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0x2b6721b2 sas_port_delete +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0x3befd7b8 sas_rphy_free +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0x44332dea scsi_is_sas_rphy +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0x533a2680 sas_phy_free +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0x5fd0f530 sas_expander_alloc +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0x60fb9db6 sas_phy_alloc +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0x64b6ddc1 sas_rphy_remove +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0x664df9fc sas_port_get_phy +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0x84549b92 sas_remove_host +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0x8c399fd6 sas_port_alloc_num +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0x8d026763 sas_port_add +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0x98b1cb6a sas_port_free +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0x9d1ea567 sas_rphy_add +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0xa174ea55 sas_rphy_unlink +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0xab12ca94 sas_port_alloc +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0xab19dbc8 sas_port_add_phy +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0xabf9b845 sas_read_port_mode_page +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0xb4688b70 sas_release_transport +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0xd20bf5d7 sas_phy_add +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0xde0f5ebe sas_phy_delete +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0xeb65be38 sas_remove_children +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0xf061866e sas_attach_transport +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0xf13f07ec scsi_is_sas_phy +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0xf63a60d6 sas_end_device_alloc +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0xf6fb8e12 scsi_is_sas_port +EXPORT_SYMBOL drivers/scsi/scsi_transport_spi 0x0de02fa8 spi_display_xfer_agreement +EXPORT_SYMBOL drivers/scsi/scsi_transport_spi 0x12cde08b spi_schedule_dv_device +EXPORT_SYMBOL drivers/scsi/scsi_transport_spi 0x3686ea09 spi_print_msg +EXPORT_SYMBOL drivers/scsi/scsi_transport_spi 0x6aef8eee spi_attach_transport +EXPORT_SYMBOL drivers/scsi/scsi_transport_spi 0x7668e1c5 spi_release_transport +EXPORT_SYMBOL drivers/scsi/scsi_transport_spi 0xc72e234b spi_dv_device +EXPORT_SYMBOL drivers/scsi/scsi_transport_srp 0x30a68cae srp_rport_get +EXPORT_SYMBOL drivers/scsi/scsi_transport_srp 0x332273ea srp_rport_put +EXPORT_SYMBOL drivers/scsi/scsi_transport_srp 0x405b6e05 srp_parse_tmo +EXPORT_SYMBOL drivers/scsi/scsi_transport_srp 0x476056ef srp_reconnect_rport +EXPORT_SYMBOL drivers/scsi/scsi_transport_srp 0x94bf6ba1 srp_start_tl_fail_timers +EXPORT_SYMBOL drivers/scsi/scsi_transport_srp 0xed4fc672 srp_timed_out +EXPORT_SYMBOL drivers/scsi/ufs/tc-dwc-g210 0xabad5089 tc_dwc_g210_config_20_bit +EXPORT_SYMBOL drivers/scsi/ufs/tc-dwc-g210 0xe1595499 tc_dwc_g210_config_40_bit +EXPORT_SYMBOL drivers/scsi/ufs/ufshcd-core 0x07c6b7f8 ufshcd_runtime_resume +EXPORT_SYMBOL drivers/scsi/ufs/ufshcd-core 0x0a65edfe ufshcd_runtime_idle +EXPORT_SYMBOL drivers/scsi/ufs/ufshcd-core 0x12879a9d ufshcd_shutdown +EXPORT_SYMBOL drivers/scsi/ufs/ufshcd-core 0x1678c50d ufshcd_alloc_host +EXPORT_SYMBOL drivers/scsi/ufs/ufshcd-core 0x35cba2bb ufshcd_system_resume +EXPORT_SYMBOL drivers/scsi/ufs/ufshcd-core 0x4326a0cd ufshcd_get_local_unipro_ver +EXPORT_SYMBOL drivers/scsi/ufs/ufshcd-core 0x4adfeea2 ufshcd_runtime_suspend +EXPORT_SYMBOL drivers/scsi/ufs/ufshcd-core 0x7bb0a32a ufshcd_map_desc_id_to_length +EXPORT_SYMBOL drivers/scsi/ufs/ufshcd-core 0xa538f39d ufshcd_system_suspend +EXPORT_SYMBOL drivers/scsi/ufs/ufshcd-dwc 0x0c422009 ufshcd_dwc_dme_set_attrs +EXPORT_SYMBOL drivers/scsi/ufs/ufshcd-dwc 0xe0d4f839 ufshcd_dwc_link_startup_notify +EXPORT_SYMBOL drivers/soundwire/soundwire-bus 0x0bc4a694 sdw_nread +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 0x25ec7c27 sdw_bus_master_add +EXPORT_SYMBOL drivers/soundwire/soundwire-bus 0x2c7ff74e sdw_bus_exit_clk_stop +EXPORT_SYMBOL drivers/soundwire/soundwire-bus 0x2ef5be02 sdw_stream_remove_slave +EXPORT_SYMBOL drivers/soundwire/soundwire-bus 0x39b00227 sdw_bus_clk_stop +EXPORT_SYMBOL drivers/soundwire/soundwire-bus 0x41d87076 sdw_master_read_prop +EXPORT_SYMBOL drivers/soundwire/soundwire-bus 0x4732b29d sdw_read +EXPORT_SYMBOL drivers/soundwire/soundwire-bus 0x4cde88bf sdw_disable_stream +EXPORT_SYMBOL drivers/soundwire/soundwire-bus 0x546c6a4d sdw_handle_slave_status +EXPORT_SYMBOL drivers/soundwire/soundwire-bus 0x60e31fbb sdw_find_col_index +EXPORT_SYMBOL drivers/soundwire/soundwire-bus 0x71891d59 sdw_deprepare_stream +EXPORT_SYMBOL drivers/soundwire/soundwire-bus 0x720c1803 sdw_nwrite +EXPORT_SYMBOL drivers/soundwire/soundwire-bus 0x76d0c7f1 sdw_clear_slave_status +EXPORT_SYMBOL drivers/soundwire/soundwire-bus 0x9a779414 sdw_bus_prep_clk_stop +EXPORT_SYMBOL drivers/soundwire/soundwire-bus 0x9e122d79 sdw_alloc_stream +EXPORT_SYMBOL drivers/soundwire/soundwire-bus 0xaaa90dd1 sdw_stream_add_master +EXPORT_SYMBOL drivers/soundwire/soundwire-bus 0xae19c291 sdw_slave_read_prop +EXPORT_SYMBOL drivers/soundwire/soundwire-bus 0xbbec2c2e sdw_enable_stream +EXPORT_SYMBOL drivers/soundwire/soundwire-bus 0xda5bce09 sdw_release_stream +EXPORT_SYMBOL drivers/soundwire/soundwire-bus 0xdabbb251 sdw_write +EXPORT_SYMBOL drivers/soundwire/soundwire-bus 0xf655864c sdw_bus_master_delete +EXPORT_SYMBOL drivers/soundwire/soundwire-bus 0xfbd782fa sdw_stream_add_slave +EXPORT_SYMBOL drivers/soundwire/soundwire-bus 0xff7150fb sdw_stream_remove_master +EXPORT_SYMBOL drivers/soundwire/soundwire-cadence 0x091a3147 sdw_cdns_exit_reset +EXPORT_SYMBOL drivers/soundwire/soundwire-cadence 0x150215b7 sdw_cdns_alloc_pdi +EXPORT_SYMBOL drivers/soundwire/soundwire-cadence 0x30e669a6 cdns_xfer_msg_defer +EXPORT_SYMBOL drivers/soundwire/soundwire-cadence 0x34712074 sdw_cdns_irq +EXPORT_SYMBOL drivers/soundwire/soundwire-cadence 0x3791b6d7 sdw_cdns_enable_interrupt +EXPORT_SYMBOL drivers/soundwire/soundwire-cadence 0x3f78bba4 cdns_bus_conf +EXPORT_SYMBOL drivers/soundwire/soundwire-cadence 0x4098cf5c cdns_xfer_msg +EXPORT_SYMBOL drivers/soundwire/soundwire-cadence 0x454c6f21 sdw_cdns_clock_restart +EXPORT_SYMBOL drivers/soundwire/soundwire-cadence 0x7bc287d0 sdw_cdns_is_clock_stop +EXPORT_SYMBOL drivers/soundwire/soundwire-cadence 0x8091e2ea sdw_cdns_pdi_init +EXPORT_SYMBOL drivers/soundwire/soundwire-cadence 0x8bfd13ec sdw_cdns_clock_stop +EXPORT_SYMBOL drivers/soundwire/soundwire-cadence 0xa18ce7ee sdw_cdns_config_stream +EXPORT_SYMBOL drivers/soundwire/soundwire-cadence 0xa76a6fcb sdw_cdns_thread +EXPORT_SYMBOL drivers/soundwire/soundwire-cadence 0xa8ba5091 cdns_set_sdw_stream +EXPORT_SYMBOL drivers/soundwire/soundwire-cadence 0xaf5be798 cdns_reset_page_addr +EXPORT_SYMBOL drivers/soundwire/soundwire-cadence 0xcc608da0 sdw_cdns_probe +EXPORT_SYMBOL drivers/soundwire/soundwire-cadence 0xf1e5ca4e sdw_cdns_init +EXPORT_SYMBOL drivers/soundwire/soundwire-intel 0x83f8b2b2 sdw_intel_exit +EXPORT_SYMBOL drivers/ssb/ssb 0x0874e86d ssb_pmu_set_ldo_voltage +EXPORT_SYMBOL drivers/ssb/ssb 0x0fcab2f2 ssb_set_devtypedata +EXPORT_SYMBOL drivers/ssb/ssb 0x1566cf13 ssb_bus_suspend +EXPORT_SYMBOL drivers/ssb/ssb 0x169a87b9 ssb_dma_translation +EXPORT_SYMBOL drivers/ssb/ssb 0x17b7ccc3 ssb_device_is_enabled +EXPORT_SYMBOL drivers/ssb/ssb 0x466d08ad ssb_bus_sdiobus_register +EXPORT_SYMBOL drivers/ssb/ssb 0x46a20ed2 ssb_driver_unregister +EXPORT_SYMBOL drivers/ssb/ssb 0x6668625f ssb_pmu_set_ldo_paref +EXPORT_SYMBOL drivers/ssb/ssb 0x90d9a840 ssb_bus_powerup +EXPORT_SYMBOL drivers/ssb/ssb 0xad7cc7bf ssb_device_disable +EXPORT_SYMBOL drivers/ssb/ssb 0xaf676e80 ssb_chipco_gpio_control +EXPORT_SYMBOL drivers/ssb/ssb 0xb593504b ssb_bus_unregister +EXPORT_SYMBOL drivers/ssb/ssb 0xcb17f1cb ssb_admatch_base +EXPORT_SYMBOL drivers/ssb/ssb 0xd4d132b7 ssb_clockspeed +EXPORT_SYMBOL drivers/ssb/ssb 0xd5b45d07 ssb_bus_resume +EXPORT_SYMBOL drivers/ssb/ssb 0xdfc7c6ef ssb_admatch_size +EXPORT_SYMBOL drivers/ssb/ssb 0xe0640524 ssb_bus_may_powerdown +EXPORT_SYMBOL drivers/ssb/ssb 0xe2e1abd0 ssb_pcihost_register +EXPORT_SYMBOL drivers/ssb/ssb 0xe8839fa5 ssb_pcicore_dev_irqvecs_enable +EXPORT_SYMBOL drivers/ssb/ssb 0xf017a361 __ssb_driver_register +EXPORT_SYMBOL drivers/ssb/ssb 0xf20ad4e0 ssb_commit_settings +EXPORT_SYMBOL drivers/ssb/ssb 0xfd237cf9 ssb_device_enable +EXPORT_SYMBOL drivers/staging/fbtft/fbtft 0x225c0fb7 fbtft_write_vmem16_bus9 +EXPORT_SYMBOL drivers/staging/fbtft/fbtft 0x25f5f6f9 fbtft_write_gpio8_wr +EXPORT_SYMBOL drivers/staging/fbtft/fbtft 0x29202274 fbtft_write_reg16_bus16 +EXPORT_SYMBOL drivers/staging/fbtft/fbtft 0x38de6edc fbtft_write_reg8_bus8 +EXPORT_SYMBOL drivers/staging/fbtft/fbtft 0x3bf29412 fbtft_probe_common +EXPORT_SYMBOL drivers/staging/fbtft/fbtft 0x3cf6e95c fbtft_write_gpio16_wr_latched +EXPORT_SYMBOL drivers/staging/fbtft/fbtft 0x5c13f104 fbtft_framebuffer_release +EXPORT_SYMBOL drivers/staging/fbtft/fbtft 0x5dfd37e3 fbtft_write_vmem16_bus8 +EXPORT_SYMBOL drivers/staging/fbtft/fbtft 0x5fa2f58a fbtft_init_display +EXPORT_SYMBOL drivers/staging/fbtft/fbtft 0x72e75fde fbtft_unregister_framebuffer +EXPORT_SYMBOL drivers/staging/fbtft/fbtft 0x79bdc2f8 fbtft_write_vmem16_bus16 +EXPORT_SYMBOL drivers/staging/fbtft/fbtft 0x7ae76c57 fbtft_write_gpio16_wr +EXPORT_SYMBOL drivers/staging/fbtft/fbtft 0x997c66d5 fbtft_read_spi +EXPORT_SYMBOL drivers/staging/fbtft/fbtft 0xa5c301b2 fbtft_dbg_hex +EXPORT_SYMBOL drivers/staging/fbtft/fbtft 0xb961c454 fbtft_remove_common +EXPORT_SYMBOL drivers/staging/fbtft/fbtft 0xbc890933 fbtft_write_spi_emulate_9 +EXPORT_SYMBOL drivers/staging/fbtft/fbtft 0xc0ac6b55 fbtft_write_spi +EXPORT_SYMBOL drivers/staging/fbtft/fbtft 0xe6775ea8 fbtft_register_backlight +EXPORT_SYMBOL drivers/staging/fbtft/fbtft 0xe6a8d5fa fbtft_write_reg8_bus9 +EXPORT_SYMBOL drivers/staging/fbtft/fbtft 0xeea904bf fbtft_write_reg16_bus8 +EXPORT_SYMBOL drivers/staging/fbtft/fbtft 0xf10b77b7 fbtft_register_framebuffer +EXPORT_SYMBOL drivers/staging/fbtft/fbtft 0xf314b2d9 fbtft_write_buf_dc +EXPORT_SYMBOL drivers/staging/fbtft/fbtft 0xf4415e6e fbtft_unregister_backlight +EXPORT_SYMBOL drivers/staging/fbtft/fbtft 0xf93337cd fbtft_framebuffer_alloc +EXPORT_SYMBOL drivers/staging/fbtft/fbtft 0xfa660101 fbtft_write_vmem8_bus8 +EXPORT_SYMBOL drivers/staging/gasket/gasket 0x028d1fac gasket_sysfs_get_device_data +EXPORT_SYMBOL drivers/staging/gasket/gasket 0x065f9c9d gasket_page_table_max_size +EXPORT_SYMBOL drivers/staging/gasket/gasket 0x277cf906 gasket_disable_device +EXPORT_SYMBOL drivers/staging/gasket/gasket 0x339c2b95 gasket_page_table_map +EXPORT_SYMBOL drivers/staging/gasket/gasket 0x3721d94d gasket_sysfs_put_attr +EXPORT_SYMBOL drivers/staging/gasket/gasket 0x372973e0 gasket_page_table_are_addrs_bad +EXPORT_SYMBOL drivers/staging/gasket/gasket 0x38c3d415 gasket_page_table_num_active_pages +EXPORT_SYMBOL drivers/staging/gasket/gasket 0x4109757c gasket_page_table_partition +EXPORT_SYMBOL drivers/staging/gasket/gasket 0x4292ff96 gasket_page_table_is_dev_addr_bad +EXPORT_SYMBOL drivers/staging/gasket/gasket 0x4b1188de gasket_get_ioctl_permissions_cb +EXPORT_SYMBOL drivers/staging/gasket/gasket 0x540c89fe gasket_wait_with_reschedule +EXPORT_SYMBOL drivers/staging/gasket/gasket 0x5af5773c gasket_sysfs_get_attr +EXPORT_SYMBOL drivers/staging/gasket/gasket 0x5b9c1bfd gasket_pci_remove_device +EXPORT_SYMBOL drivers/staging/gasket/gasket 0x65c68a49 gasket_pci_add_device +EXPORT_SYMBOL drivers/staging/gasket/gasket 0x6da6e0ce gasket_enable_device +EXPORT_SYMBOL drivers/staging/gasket/gasket 0x6f95bb59 gasket_sysfs_create_entries +EXPORT_SYMBOL drivers/staging/gasket/gasket 0x77311f6a gasket_page_table_unmap_all +EXPORT_SYMBOL drivers/staging/gasket/gasket 0x7de12522 gasket_sysfs_put_device_data +EXPORT_SYMBOL drivers/staging/gasket/gasket 0x8c92da47 gasket_page_table_num_simple_entries +EXPORT_SYMBOL drivers/staging/gasket/gasket 0x99df788c gasket_register_device +EXPORT_SYMBOL drivers/staging/gasket/gasket 0xaf11e61d gasket_reset_nolock +EXPORT_SYMBOL drivers/staging/gasket/gasket 0xbaa2668a gasket_num_name_lookup +EXPORT_SYMBOL drivers/staging/gasket/gasket 0xbaf2f8cd gasket_page_table_unmap +EXPORT_SYMBOL drivers/staging/gasket/gasket 0xc225208c gasket_page_table_num_entries +EXPORT_SYMBOL drivers/staging/gasket/gasket 0xc55e55ab gasket_sysfs_register_store +EXPORT_SYMBOL drivers/staging/gasket/gasket 0xcf0e0579 gasket_unregister_device +EXPORT_SYMBOL drivers/staging/gasket/gasket 0xd2901633 gasket_reset +EXPORT_SYMBOL drivers/staging/gasket/gasket 0xead1e5df gasket_mm_unmap_region +EXPORT_SYMBOL drivers/staging/iio/addac/adt7316 0x850d7483 adt7316_probe +EXPORT_SYMBOL drivers/staging/iio/meter/ade7854 0x5d0be9a0 ade7854_probe +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x008f91b4 rtllib_start_send_beacons +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x0a5cf620 rtllib_wx_set_rate +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x0fcc72d3 rtllib_wx_get_rate +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x1113f125 notify_wx_assoc_event +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x111c1945 HT_update_self_and_peer_setting +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x125cbde2 rtllib_ps_tx_ack +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x14cc5dd8 rtllib_stop_send_beacons +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x14f24d43 rtllib_wx_get_encode +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x1b8d2666 rtllib_reset_queue +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x2177e6b0 rtllib_wx_get_name +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x22166084 rt_global_debug_component +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x240f73ff rtllib_get_beacon +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x25826125 rtllib_EnableIntelPromiscuousMode +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x280c6edf rtllib_wx_set_encode_ext +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x39d5f129 rtllib_start_scan_syncro +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x3b38ab7d rtllib_softmac_start_protocol +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x3f9dfb3f rtllib_act_scanning +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x553b2f72 rtllib_legal_channel +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x56292678 rtllib_xmit +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x5da73828 rtllib_MgntDisconnect +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x5feb6580 rtllib_wx_set_essid +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x600e8be1 rtllib_wx_get_wap +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x62f2cbac rtllib_wx_get_mode +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x67624f5f rtllib_wx_set_mode +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x6e08b898 rtllib_wx_set_auth +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x74554820 alloc_rtllib +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x7b5a56a2 rtllib_wx_get_essid +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x7b647a57 rtllib_wx_set_rts +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x7f3a840f rtllib_rx +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x7f52eaaa RemovePeerTS +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x811b24c2 rtllib_wx_set_gen_ie +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x85a27662 dot11d_channel_map +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x93582c35 rtllib_stop_scan +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x93db4f7e rtllib_wx_set_freq +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x964bcb8d rtllib_wx_get_freq +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x9fa7ce17 rtllib_wx_set_rawtx +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0xa136c6fe rtllib_sta_ps_send_null_frame +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0xa7652add rtllib_softmac_stop_protocol +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0xab61d16c rtllib_stop_scan_syncro +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0xb1219da4 rtllib_wx_set_scan +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0xb4b11957 rtllib_wx_get_scan +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0xb5bf1115 rtllib_wx_set_mlme +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0xb7055676 dot11d_init +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0xc05ba801 rtllib_wx_set_power +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0xc1b6bd94 rtllib_wx_set_encode +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0xd7f2eb23 free_rtllib +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0xdf78f620 rtllib_wlan_frequencies +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0xe4ea9b23 rtllib_wx_get_power +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0xebb79a90 rtllib_wx_get_rts +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0xf0dd6b26 rtllib_wx_set_wap +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0xf3fec82f rtllib_DisableIntelPromiscuousMode +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x0c3cecf6 ieee80211_wpa_supplicant_ioctl_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x0ce4cc64 ieee80211_wx_get_mode_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x0f66f117 ieee80211_wx_set_encode_ext_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x151a5d1e ieee80211_wx_get_power_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x161f2887 ieee80211_stop_scan_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x1b439532 ieee80211_softmac_xmit_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x1d66a0ff ieee80211_is_shortslot_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x2054a624 dot11d_update_country_ie +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x270efcac ieee80211_get_beacon_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x2c796572 ieee80211_softmac_start_protocol_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x2f7e9a32 ieee80211_wx_set_rate_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x385d5d97 ieee80211_wx_set_essid_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x38bc33ef SendDisassociation_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x44964e18 ieee80211_wx_set_scan_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x4c1efa7d ieee80211_reset_queue_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x4d8a107e ieee80211_wx_get_encode_ext_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x5215cb2b dot11d_reset +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x52ce3adb ieee80211_wx_set_auth_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x53d05bcf ieee80211_wx_get_essid_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x5bcc9b97 ieee80211_wx_set_rawtx_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x5c928e5a ieee80211_ps_tx_ack_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x5f22cf1b ieee80211_wx_get_freq_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x6310074a ieee80211_rx_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x6ba92168 ieee80211_stop_queue_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x7e975b46 ieee80211_wx_set_power_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x7fc37f33 ieee80211_rx_mgt_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x89d173b2 HTUpdateSelfAndPeerSetting +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x997a992d ieee80211_wx_set_wap_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x9c3de3cd dot11d_get_max_tx_pwr_in_dbm +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x9d554a89 ieee80211_wake_queue_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x9ed6ba08 ieee80211_stop_send_beacons_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0xa2c1e248 ieee80211_wx_get_scan_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0xad8ac862 ieee80211_wx_get_wap_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0xadf35b9d ieee80211_wx_get_name_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0xb046da55 ieee80211_start_send_beacons_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0xb09c1148 ieee80211_softmac_scan_syncro_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0xb57fef75 ieee80211_wx_set_encode_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0xb975634b ieee80211_wx_set_freq_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0xc11a2a6f dot11d_scan_complete +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0xc13b42f5 rtl8192u_dot11d_init +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0xc2a0d418 ieee80211_wx_get_rts_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0xc370a43e ieee80211_wlan_frequencies_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0xc7668eef is_legal_channel +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0xc9293662 ieee80211_wx_get_rate_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0xca8950d5 ieee80211_softmac_stop_protocol_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0xd0a4bbb5 ieee80211_wx_get_encode_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0xd52d9e84 ieee80211_disassociate_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0xe016b979 ieee80211_txb_free_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0xe1c53763 ieee80211_wx_set_gen_ie_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0xeab36034 ieee80211_wx_set_mode_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0xecc5fb1b ieee80211_is_54g_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0xed2afbb7 to_legal_channel +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0xf6508557 ieee80211_wx_set_rts_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0xf7aaf843 notify_wx_assoc_event_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0xf934a9db ieee80211_wx_set_mlme_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0xfcdbda48 ieee80211_start_scan_syncro_rsl +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x04350516 iscsit_check_dataout_hdr +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x0876845f iscsit_setup_nop_out +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x14436203 iscsit_setup_text_cmd +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x159a1641 iscsit_process_text_cmd +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x1b30bd23 iscsit_setup_scsi_cmd +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x1b37a4ae iscsit_cause_connection_reinstatement +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x26960abf iscsit_increment_maxcmdsn +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x2a4ce0a2 iscsit_set_unsolicited_dataout +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x3426178a iscsit_find_cmd_from_itt +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x43d26fb6 iscsit_release_cmd +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x47e4e51f iscsit_build_text_rsp +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x4a75bf4c iscsit_handle_logout_cmd +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x50b786a6 iscsit_process_nop_out +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x51615077 iscsit_reject_cmd +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x54980d4a iscsit_response_queue +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x58850d7f iscsit_sequence_cmd +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x5f61152d iscsit_add_reject +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x5fbec36e iscsit_build_logout_rsp +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x6351681f iscsit_free_cmd +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x6e069c3d iscsit_build_r2ts_for_cmd +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x72e81226 iscsit_handle_task_mgt_cmd +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x77c88093 iscsit_unregister_transport +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x791bf4f9 iscsit_add_cmd_to_immediate_queue +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x836b88e3 iscsit_stop_dataout_timer +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x840de743 iscsit_process_scsi_cmd +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x85ae96cb iscsit_register_transport +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x89755149 iscsi_target_check_login_request +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0xbb96cab7 iscsit_tmr_post_handler +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0xbcb4f311 iscsit_check_dataout_payload +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0xca59929c iscsit_immediate_queue +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0xcad7c8c8 iscsit_build_datain_pdu +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0xd4e6fff4 iscsit_build_nopin_rsp +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0xd780a07b iscsit_logout_post_handler +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0xde0148ae __iscsit_check_dataout_hdr +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0xe428aa43 iscsit_queue_rsp +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0xe4ae0e4d iscsi_change_param_sprintf +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0xe4cf418b iscsit_build_reject +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0xe89a21b0 iscsit_get_datain_values +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0xe9b4bc2b iscsit_handle_snack +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0xefc68eae iscsit_allocate_cmd +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0xf34332f0 iscsi_find_param_from_key +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0xf772454a iscsit_build_rsp_pdu +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0xf9397533 iscsit_build_task_mgt_rsp +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0xfd2f6d38 iscsit_find_cmd_from_itt_or_dump +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0xfe784102 iscsit_aborted_task +EXPORT_SYMBOL drivers/target/target_core_mod 0x0871ffd6 transport_set_vpd_ident +EXPORT_SYMBOL drivers/target/target_core_mod 0x0edb124b sbc_dif_copy_prot +EXPORT_SYMBOL drivers/target/target_core_mod 0x102a5077 target_register_template +EXPORT_SYMBOL drivers/target/target_core_mod 0x141886f3 target_lun_is_rdonly +EXPORT_SYMBOL drivers/target/target_core_mod 0x142072c0 transport_set_vpd_assoc +EXPORT_SYMBOL drivers/target/target_core_mod 0x14616f4d target_show_cmd +EXPORT_SYMBOL drivers/target/target_core_mod 0x1bf641a1 transport_send_check_condition_and_sense +EXPORT_SYMBOL drivers/target/target_core_mod 0x279b042d target_complete_cmd_with_length +EXPORT_SYMBOL drivers/target/target_core_mod 0x28fb6120 core_tpg_set_initiator_node_queue_depth +EXPORT_SYMBOL drivers/target/target_core_mod 0x29e70fa7 target_backend_unregister +EXPORT_SYMBOL drivers/target/target_core_mod 0x2aa19db8 transport_deregister_session_configfs +EXPORT_SYMBOL drivers/target/target_core_mod 0x2b6e6f0a target_wait_for_sess_cmds +EXPORT_SYMBOL drivers/target/target_core_mod 0x33273c14 core_tpg_deregister +EXPORT_SYMBOL drivers/target/target_core_mod 0x3a20a9d7 transport_set_vpd_ident_type +EXPORT_SYMBOL drivers/target/target_core_mod 0x3d46338d sbc_dif_verify +EXPORT_SYMBOL drivers/target/target_core_mod 0x3edcef40 target_cmd_parse_cdb +EXPORT_SYMBOL drivers/target/target_core_mod 0x42a70aaa transport_generic_handle_tmr +EXPORT_SYMBOL drivers/target/target_core_mod 0x469a6f79 transport_lookup_tmr_lun +EXPORT_SYMBOL drivers/target/target_core_mod 0x4cf2038c transport_lookup_cmd_lun +EXPORT_SYMBOL drivers/target/target_core_mod 0x53f28c88 passthrough_attrib_attrs +EXPORT_SYMBOL drivers/target/target_core_mod 0x548dc53d spc_emulate_inquiry_std +EXPORT_SYMBOL drivers/target/target_core_mod 0x581b0b73 target_tpg_has_node_acl +EXPORT_SYMBOL drivers/target/target_core_mod 0x602a0633 transport_backend_register +EXPORT_SYMBOL drivers/target/target_core_mod 0x638bffb7 target_free_sgl +EXPORT_SYMBOL drivers/target/target_core_mod 0x65b27d60 target_setup_session +EXPORT_SYMBOL drivers/target/target_core_mod 0x66b6e53f target_undepend_item +EXPORT_SYMBOL drivers/target/target_core_mod 0x6dccd14f transport_handle_cdb_direct +EXPORT_SYMBOL drivers/target/target_core_mod 0x6ebbe50c transport_register_session +EXPORT_SYMBOL drivers/target/target_core_mod 0x6f570ed9 core_allocate_nexus_loss_ua +EXPORT_SYMBOL drivers/target/target_core_mod 0x7099de7d transport_kmap_data_sg +EXPORT_SYMBOL drivers/target/target_core_mod 0x70e4797c core_tpg_set_initiator_node_tag +EXPORT_SYMBOL drivers/target/target_core_mod 0x70e95ec1 transport_kunmap_data_sg +EXPORT_SYMBOL drivers/target/target_core_mod 0x71d89625 transport_copy_sense_to_cmd +EXPORT_SYMBOL drivers/target/target_core_mod 0x72b284cc passthrough_parse_cdb +EXPORT_SYMBOL drivers/target/target_core_mod 0x7a1d0d3c target_alloc_sgl +EXPORT_SYMBOL drivers/target/target_core_mod 0x803cece9 target_show_dynamic_sessions +EXPORT_SYMBOL drivers/target/target_core_mod 0x82b4e8d3 transport_alloc_session_tags +EXPORT_SYMBOL drivers/target/target_core_mod 0x83632cdf target_submit_tmr +EXPORT_SYMBOL drivers/target/target_core_mod 0x857f358c target_remove_session +EXPORT_SYMBOL drivers/target/target_core_mod 0x9115c1b2 core_tpg_register +EXPORT_SYMBOL drivers/target/target_core_mod 0x9423cd5f core_tpg_check_initiator_node_acl +EXPORT_SYMBOL drivers/target/target_core_mod 0x94ee9321 target_complete_cmd +EXPORT_SYMBOL drivers/target/target_core_mod 0x95074c4d target_unregister_template +EXPORT_SYMBOL drivers/target/target_core_mod 0x965be3a7 transport_init_session +EXPORT_SYMBOL drivers/target/target_core_mod 0x9a7a249f target_submit_cmd +EXPORT_SYMBOL drivers/target/target_core_mod 0x9e4073dc core_alua_check_nonop_delay +EXPORT_SYMBOL drivers/target/target_core_mod 0x9fb2d350 transport_generic_new_cmd +EXPORT_SYMBOL drivers/target/target_core_mod 0xa7ac5148 target_configure_unmap_from_queue +EXPORT_SYMBOL drivers/target/target_core_mod 0xa87fbbc2 __transport_register_session +EXPORT_SYMBOL drivers/target/target_core_mod 0xa90d161c sbc_get_device_type +EXPORT_SYMBOL drivers/target/target_core_mod 0xb08ae6d4 core_tmr_alloc_req +EXPORT_SYMBOL drivers/target/target_core_mod 0xb9c97d90 target_put_sess_cmd +EXPORT_SYMBOL drivers/target/target_core_mod 0xbab4698d target_cmd_init_cdb +EXPORT_SYMBOL drivers/target/target_core_mod 0xbbb4932e transport_free_session +EXPORT_SYMBOL drivers/target/target_core_mod 0xc14dbb93 spc_emulate_report_luns +EXPORT_SYMBOL drivers/target/target_core_mod 0xc1c77a15 target_sess_cmd_list_set_waiting +EXPORT_SYMBOL drivers/target/target_core_mod 0xc52ba755 transport_deregister_session +EXPORT_SYMBOL drivers/target/target_core_mod 0xc83454c5 transport_alloc_session +EXPORT_SYMBOL drivers/target/target_core_mod 0xcc812564 sbc_parse_cdb +EXPORT_SYMBOL drivers/target/target_core_mod 0xccae416a target_put_nacl +EXPORT_SYMBOL drivers/target/target_core_mod 0xccebab01 sbc_attrib_attrs +EXPORT_SYMBOL drivers/target/target_core_mod 0xd14061cb target_get_sess_cmd +EXPORT_SYMBOL drivers/target/target_core_mod 0xd3bed905 transport_init_se_cmd +EXPORT_SYMBOL drivers/target/target_core_mod 0xd5a407e5 target_to_linux_sector +EXPORT_SYMBOL drivers/target/target_core_mod 0xd9235217 target_execute_cmd +EXPORT_SYMBOL drivers/target/target_core_mod 0xdf90f380 spc_emulate_evpd_83 +EXPORT_SYMBOL drivers/target/target_core_mod 0xdfd40318 passthrough_pr_attrib_attrs +EXPORT_SYMBOL drivers/target/target_core_mod 0xe27f3ae2 target_depend_item +EXPORT_SYMBOL drivers/target/target_core_mod 0xe5365e09 target_send_busy +EXPORT_SYMBOL drivers/target/target_core_mod 0xe705fc7e transport_wait_for_tasks +EXPORT_SYMBOL drivers/target/target_core_mod 0xed5e935b target_submit_cmd_map_sgls +EXPORT_SYMBOL drivers/target/target_core_mod 0xee2a6d48 core_tpg_get_initiator_node_acl +EXPORT_SYMBOL drivers/target/target_core_mod 0xee640ad4 spc_parse_cdb +EXPORT_SYMBOL drivers/target/target_core_mod 0xf0779172 transport_generic_request_failure +EXPORT_SYMBOL drivers/target/target_core_mod 0xf3c2dfe0 transport_set_vpd_proto_id +EXPORT_SYMBOL drivers/target/target_core_mod 0xf4108e13 transport_generic_free_cmd +EXPORT_SYMBOL drivers/target/target_core_mod 0xf76d2cb6 sbc_get_write_same_sectors +EXPORT_SYMBOL drivers/target/target_core_mod 0xfdae9a55 target_nacl_find_deve +EXPORT_SYMBOL drivers/thermal/intel/int340x_thermal/acpi_thermal_rel 0x111eefed acpi_parse_art +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 0xf0f9fe0d acpi_parse_trt +EXPORT_SYMBOL drivers/usb/class/cdc-wdm 0x6f75a64d usb_cdc_wdm_register +EXPORT_SYMBOL drivers/usb/gadget/libcomposite 0x0d2a8184 usb_os_desc_prepare_interf_dir +EXPORT_SYMBOL drivers/usb/host/sl811-hcd 0xec2b55d3 sl811h_driver +EXPORT_SYMBOL drivers/usb/serial/usb_wwan 0x0d82e8a2 usb_wwan_get_serial_info +EXPORT_SYMBOL drivers/usb/serial/usb_wwan 0x1dc86eb4 usb_wwan_dtr_rts +EXPORT_SYMBOL drivers/usb/serial/usb_wwan 0x450789fd usb_wwan_write +EXPORT_SYMBOL drivers/usb/serial/usb_wwan 0x4ae9b5c9 usb_wwan_resume +EXPORT_SYMBOL drivers/usb/serial/usb_wwan 0x4bf0efb3 usb_wwan_tiocmset +EXPORT_SYMBOL drivers/usb/serial/usb_wwan 0x5605feaa usb_wwan_open +EXPORT_SYMBOL drivers/usb/serial/usb_wwan 0x601953a0 usb_wwan_write_room +EXPORT_SYMBOL drivers/usb/serial/usb_wwan 0xa5042c18 usb_wwan_tiocmget +EXPORT_SYMBOL drivers/usb/serial/usb_wwan 0xa96182f2 usb_wwan_set_serial_info +EXPORT_SYMBOL drivers/usb/serial/usb_wwan 0xc20da6b1 usb_wwan_chars_in_buffer +EXPORT_SYMBOL drivers/usb/serial/usb_wwan 0xd6963e82 usb_wwan_close +EXPORT_SYMBOL drivers/usb/serial/usb_wwan 0xdaca99d2 usb_wwan_port_remove +EXPORT_SYMBOL drivers/usb/serial/usb_wwan 0xecb73837 usb_wwan_suspend +EXPORT_SYMBOL drivers/usb/serial/usbserial 0x30689187 usb_serial_resume +EXPORT_SYMBOL drivers/usb/serial/usbserial 0xff23d5ee usb_serial_suspend +EXPORT_SYMBOL drivers/vfio/mdev/mdev 0x52c28387 mdev_from_dev +EXPORT_SYMBOL drivers/vfio/mdev/mdev 0x632438bd mdev_get_drvdata +EXPORT_SYMBOL drivers/vfio/mdev/mdev 0x6d021474 mdev_register_driver +EXPORT_SYMBOL drivers/vfio/mdev/mdev 0x6f0deec5 mdev_unregister_device +EXPORT_SYMBOL drivers/vfio/mdev/mdev 0x90fc0ba2 mdev_uuid +EXPORT_SYMBOL drivers/vfio/mdev/mdev 0x9b2c5c21 mdev_unregister_driver +EXPORT_SYMBOL drivers/vfio/mdev/mdev 0xc8352c47 mdev_dev +EXPORT_SYMBOL drivers/vfio/mdev/mdev 0xd3d8fe75 mdev_register_device +EXPORT_SYMBOL drivers/vfio/mdev/mdev 0xeb388994 mdev_set_iommu_device +EXPORT_SYMBOL drivers/vfio/mdev/mdev 0xf0795ee2 mdev_set_drvdata +EXPORT_SYMBOL drivers/vfio/mdev/mdev 0xf129bf51 mdev_get_iommu_device +EXPORT_SYMBOL drivers/vfio/mdev/mdev 0xfbcd097a mdev_parent_dev +EXPORT_SYMBOL drivers/vhost/vhost 0x4cdfc6fc vhost_chr_poll +EXPORT_SYMBOL drivers/vhost/vhost 0xf786863f vhost_chr_write_iter +EXPORT_SYMBOL drivers/vhost/vringh 0x3b304ebb vringh_iov_push_user +EXPORT_SYMBOL drivers/vhost/vringh 0x3ecc1eea vringh_getdesc_kern +EXPORT_SYMBOL drivers/vhost/vringh 0x4311cd91 vringh_iov_pull_user +EXPORT_SYMBOL drivers/vhost/vringh 0x44d6f41b vringh_notify_enable_kern +EXPORT_SYMBOL drivers/vhost/vringh 0x4b6a6e23 vringh_iov_pull_iotlb +EXPORT_SYMBOL drivers/vhost/vringh 0x4d0529ee vringh_complete_multi_user +EXPORT_SYMBOL drivers/vhost/vringh 0x56f694fc vringh_abandon_kern +EXPORT_SYMBOL drivers/vhost/vringh 0x58bc86ac vringh_complete_user +EXPORT_SYMBOL drivers/vhost/vringh 0x5aa88061 vringh_init_user +EXPORT_SYMBOL drivers/vhost/vringh 0x5e47ee29 vringh_notify_enable_user +EXPORT_SYMBOL drivers/vhost/vringh 0x6d95262b vringh_getdesc_user +EXPORT_SYMBOL drivers/vhost/vringh 0x80ad788a vringh_notify_disable_user +EXPORT_SYMBOL drivers/vhost/vringh 0x85665842 vringh_notify_enable_iotlb +EXPORT_SYMBOL drivers/vhost/vringh 0x8701069c vringh_abandon_iotlb +EXPORT_SYMBOL drivers/vhost/vringh 0x8bfb5a2b vringh_complete_iotlb +EXPORT_SYMBOL drivers/vhost/vringh 0x8d40c6f4 vringh_getdesc_iotlb +EXPORT_SYMBOL drivers/vhost/vringh 0x8e78a074 vringh_need_notify_user +EXPORT_SYMBOL drivers/vhost/vringh 0x91b5a92c vringh_abandon_user +EXPORT_SYMBOL drivers/vhost/vringh 0x97fa07e9 vringh_iov_push_kern +EXPORT_SYMBOL drivers/vhost/vringh 0xac2d6746 vringh_init_kern +EXPORT_SYMBOL drivers/vhost/vringh 0xaf01a583 vringh_set_iotlb +EXPORT_SYMBOL drivers/vhost/vringh 0xbf4f4fbd vringh_need_notify_iotlb +EXPORT_SYMBOL drivers/vhost/vringh 0xd3a14d7d vringh_complete_kern +EXPORT_SYMBOL drivers/vhost/vringh 0xde804bb9 vringh_iov_pull_kern +EXPORT_SYMBOL drivers/vhost/vringh 0xe544457e vringh_notify_disable_iotlb +EXPORT_SYMBOL drivers/vhost/vringh 0xee1c7df3 vringh_init_iotlb +EXPORT_SYMBOL drivers/vhost/vringh 0xf1bbb2ad vringh_need_notify_kern +EXPORT_SYMBOL drivers/vhost/vringh 0xf6784994 vringh_iov_push_iotlb +EXPORT_SYMBOL drivers/vhost/vringh 0xff6e6a53 vringh_notify_disable_kern +EXPORT_SYMBOL drivers/video/backlight/lcd 0x37b752c7 devm_lcd_device_unregister +EXPORT_SYMBOL drivers/video/backlight/lcd 0x5357bd2c lcd_device_register +EXPORT_SYMBOL drivers/video/backlight/lcd 0xa9fabba9 devm_lcd_device_register +EXPORT_SYMBOL drivers/video/backlight/lcd 0xb4ef89da lcd_device_unregister +EXPORT_SYMBOL drivers/video/fbdev/core/svgalib 0x076f5e25 svga_tilecursor +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 0x4a6ee09f svga_get_caps +EXPORT_SYMBOL drivers/video/fbdev/core/svgalib 0x4ab38ef2 svga_set_default_crt_regs +EXPORT_SYMBOL drivers/video/fbdev/core/svgalib 0x70f61e49 svga_tilecopy +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 0x868c90af svga_tilefill +EXPORT_SYMBOL drivers/video/fbdev/core/svgalib 0xb0ab2b2e svga_check_timings +EXPORT_SYMBOL drivers/video/fbdev/core/svgalib 0xc6d9b21d svga_get_tilemax +EXPORT_SYMBOL drivers/video/fbdev/core/svgalib 0xd22ca511 svga_set_default_atc_regs +EXPORT_SYMBOL drivers/video/fbdev/core/svgalib 0xd335e929 svga_tileblit +EXPORT_SYMBOL drivers/video/fbdev/core/svgalib 0xd6ec2c44 svga_compute_pll +EXPORT_SYMBOL drivers/video/fbdev/core/svgalib 0xdbdd23b7 svga_settile +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/syscopyarea 0xa3f1518c sys_copyarea +EXPORT_SYMBOL drivers/video/fbdev/core/sysfillrect 0x6783ea9d sys_fillrect +EXPORT_SYMBOL drivers/video/fbdev/core/sysimgblt 0xa019e2d2 sys_imageblit +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 0xa483f67d 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 0x94859bb3 mac_find_mode +EXPORT_SYMBOL drivers/video/fbdev/macmodes 0xe2304303 mac_map_monitor_sense +EXPORT_SYMBOL drivers/video/fbdev/matrox/g450_pll 0x17d6244d matroxfb_g450_setclk +EXPORT_SYMBOL drivers/video/fbdev/matrox/g450_pll 0xdb2d1fcc g450_mnp2f +EXPORT_SYMBOL drivers/video/fbdev/matrox/g450_pll 0xfe6aca11 matroxfb_g450_setpll_cond +EXPORT_SYMBOL drivers/video/fbdev/matrox/matroxfb_DAC1064 0x36829f2c DAC1064_global_init +EXPORT_SYMBOL drivers/video/fbdev/matrox/matroxfb_DAC1064 0xdd15944d DAC1064_global_restore +EXPORT_SYMBOL drivers/video/fbdev/matrox/matroxfb_DAC1064 0xe1fac2ce matrox_G100 +EXPORT_SYMBOL drivers/video/fbdev/matrox/matroxfb_DAC1064 0xe790c175 matrox_mystique +EXPORT_SYMBOL drivers/video/fbdev/matrox/matroxfb_Ti3026 0xedf7b644 matrox_millennium +EXPORT_SYMBOL drivers/video/fbdev/matrox/matroxfb_accel 0xce6be3be matrox_cfbX_init +EXPORT_SYMBOL drivers/video/fbdev/matrox/matroxfb_base 0x0aeb93c6 matroxfb_wait_for_sync +EXPORT_SYMBOL drivers/video/fbdev/matrox/matroxfb_base 0x27fc685f matroxfb_unregister_driver +EXPORT_SYMBOL drivers/video/fbdev/matrox/matroxfb_base 0x2db01583 matroxfb_register_driver +EXPORT_SYMBOL drivers/video/fbdev/matrox/matroxfb_base 0x4fdeabff matroxfb_enable_irq +EXPORT_SYMBOL drivers/video/fbdev/matrox/matroxfb_g450 0x2ec954ab matroxfb_g450_shutdown +EXPORT_SYMBOL drivers/video/fbdev/matrox/matroxfb_g450 0xf83e62a4 matroxfb_g450_connect +EXPORT_SYMBOL drivers/video/fbdev/matrox/matroxfb_misc 0x01c88536 matroxfb_vgaHWrestore +EXPORT_SYMBOL drivers/video/fbdev/matrox/matroxfb_misc 0x1d2917ab matroxfb_DAC_out +EXPORT_SYMBOL drivers/video/fbdev/matrox/matroxfb_misc 0x25cf8049 matroxfb_PLL_calcclock +EXPORT_SYMBOL drivers/video/fbdev/matrox/matroxfb_misc 0x7b2ddb92 matroxfb_read_pins +EXPORT_SYMBOL drivers/video/fbdev/matrox/matroxfb_misc 0x9a41787f matroxfb_vgaHWinit +EXPORT_SYMBOL drivers/video/fbdev/matrox/matroxfb_misc 0xbc765f43 matroxfb_DAC_in +EXPORT_SYMBOL drivers/video/fbdev/matrox/matroxfb_misc 0xcdc90c64 matroxfb_var2my +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 0x260590c0 vbg_err +EXPORT_SYMBOL drivers/virt/vboxguest/vboxguest 0x2db3e7ca vbg_hgcm_call +EXPORT_SYMBOL drivers/virt/vboxguest/vboxguest 0x569b312f vbg_info +EXPORT_SYMBOL drivers/virt/vboxguest/vboxguest 0x668ac2bb vbg_get_gdev +EXPORT_SYMBOL drivers/virt/vboxguest/vboxguest 0x70cdcbfd vbg_warn +EXPORT_SYMBOL drivers/virt/vboxguest/vboxguest 0x83885052 vbg_put_gdev +EXPORT_SYMBOL drivers/virt/vboxguest/vboxguest 0x9c072aa8 vbg_status_code_to_errno +EXPORT_SYMBOL drivers/virt/vboxguest/vboxguest 0xae93adf4 vbg_hgcm_disconnect +EXPORT_SYMBOL drivers/virt/vboxguest/vboxguest 0xbcc92f31 vbg_hgcm_connect +EXPORT_SYMBOL drivers/w1/slaves/w1_ds2780 0xef03de24 w1_ds2780_io +EXPORT_SYMBOL drivers/w1/slaves/w1_ds2780 0xf65f5fa3 w1_ds2780_eeprom_cmd +EXPORT_SYMBOL drivers/w1/slaves/w1_ds2781 0x72f10fc9 w1_ds2781_io +EXPORT_SYMBOL drivers/w1/slaves/w1_ds2781 0x818eb44c w1_ds2781_eeprom_cmd +EXPORT_SYMBOL drivers/w1/wire 0x1f431397 w1_unregister_family +EXPORT_SYMBOL drivers/w1/wire 0x40c5de8a w1_add_master_device +EXPORT_SYMBOL drivers/w1/wire 0xd2b948ec w1_register_family +EXPORT_SYMBOL drivers/w1/wire 0xda1ce442 w1_remove_master_device +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 0x02667129 __fscache_wait_on_page_write +EXPORT_SYMBOL fs/fscache/fscache 0x0b793b7d __fscache_read_or_alloc_pages +EXPORT_SYMBOL fs/fscache/fscache 0x0f9c346c fscache_withdraw_cache +EXPORT_SYMBOL fs/fscache/fscache 0x148f2263 fscache_fsdef_index +EXPORT_SYMBOL fs/fscache/fscache 0x21102ad0 fscache_add_cache +EXPORT_SYMBOL fs/fscache/fscache 0x2ed6cfda __fscache_enable_cookie +EXPORT_SYMBOL fs/fscache/fscache 0x2ed83eb0 __fscache_check_consistency +EXPORT_SYMBOL fs/fscache/fscache 0x32b0a3ea __fscache_register_netfs +EXPORT_SYMBOL fs/fscache/fscache 0x3ea15162 __fscache_write_page +EXPORT_SYMBOL fs/fscache/fscache 0x3f3cf88c __fscache_invalidate +EXPORT_SYMBOL fs/fscache/fscache 0x4463fea9 __fscache_alloc_page +EXPORT_SYMBOL fs/fscache/fscache 0x45127a09 __fscache_read_or_alloc_page +EXPORT_SYMBOL fs/fscache/fscache 0x4f0d82c4 fscache_object_lookup_negative +EXPORT_SYMBOL fs/fscache/fscache 0x5bc4018e fscache_init_cache +EXPORT_SYMBOL fs/fscache/fscache 0x60431a81 fscache_put_operation +EXPORT_SYMBOL fs/fscache/fscache 0x6996a9f8 fscache_mark_page_cached +EXPORT_SYMBOL fs/fscache/fscache 0x6acefa42 fscache_cache_cleared_wq +EXPORT_SYMBOL fs/fscache/fscache 0x6b9d4c8d __fscache_attr_changed +EXPORT_SYMBOL fs/fscache/fscache 0x714b18e6 fscache_object_init +EXPORT_SYMBOL fs/fscache/fscache 0x721f8de4 fscache_enqueue_operation +EXPORT_SYMBOL fs/fscache/fscache 0x74530ecd fscache_op_debug_id +EXPORT_SYMBOL fs/fscache/fscache 0x764512a3 __fscache_maybe_release_page +EXPORT_SYMBOL fs/fscache/fscache 0x7793f347 fscache_op_complete +EXPORT_SYMBOL fs/fscache/fscache 0x77e09458 __fscache_wait_on_invalidate +EXPORT_SYMBOL fs/fscache/fscache 0x840ab70f fscache_mark_pages_cached +EXPORT_SYMBOL fs/fscache/fscache 0x8eb42d45 __fscache_uncache_all_inode_pages +EXPORT_SYMBOL fs/fscache/fscache 0x942cea0b __fscache_update_cookie +EXPORT_SYMBOL fs/fscache/fscache 0x9ce74310 __fscache_relinquish_cookie +EXPORT_SYMBOL fs/fscache/fscache 0xab9786db fscache_object_mark_killed +EXPORT_SYMBOL fs/fscache/fscache 0xbb343df7 __fscache_acquire_cookie +EXPORT_SYMBOL fs/fscache/fscache 0xc3181ddb fscache_check_aux +EXPORT_SYMBOL fs/fscache/fscache 0xc3f74240 fscache_object_retrying_stale +EXPORT_SYMBOL fs/fscache/fscache 0xc69b2180 __fscache_disable_cookie +EXPORT_SYMBOL fs/fscache/fscache 0xc886fe6a __fscache_readpages_cancel +EXPORT_SYMBOL fs/fscache/fscache 0xce339c9e __fscache_uncache_page +EXPORT_SYMBOL fs/fscache/fscache 0xda6c40cb fscache_obtained_object +EXPORT_SYMBOL fs/fscache/fscache 0xdfd44474 fscache_io_error +EXPORT_SYMBOL fs/fscache/fscache 0xe4ed7167 fscache_operation_init +EXPORT_SYMBOL fs/fscache/fscache 0xe78cc75d __fscache_check_page_write +EXPORT_SYMBOL fs/fscache/fscache 0xe9f3a417 __fscache_unregister_netfs +EXPORT_SYMBOL fs/fscache/fscache 0xf7a86eb8 fscache_object_destroy +EXPORT_SYMBOL fs/ocfs2/cluster/ocfs2_nodemanager 0xbfd7d7a2 o2hb_global_heartbeat_active +EXPORT_SYMBOL fs/quota/quota_tree 0x54ca5ccc qtree_write_dquot +EXPORT_SYMBOL fs/quota/quota_tree 0x677c510d qtree_entry_unused +EXPORT_SYMBOL fs/quota/quota_tree 0xc2b70a50 qtree_release_dquot +EXPORT_SYMBOL fs/quota/quota_tree 0xc5f4fab2 qtree_read_dquot +EXPORT_SYMBOL fs/quota/quota_tree 0xfbf0348e qtree_delete_dquot +EXPORT_SYMBOL fs/quota/quota_tree 0xff8c9a3e qtree_get_next_id +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 0xaa8106bc crc8_populate_msb +EXPORT_SYMBOL lib/crc8 0xc3cd034d crc8_populate_lsb +EXPORT_SYMBOL lib/crc8 0xe2aae5cc crc8 +EXPORT_SYMBOL lib/crypto/libarc4 0x2bb32ad1 arc4_setkey +EXPORT_SYMBOL lib/crypto/libarc4 0xcd47fcc4 arc4_crypt +EXPORT_SYMBOL lib/crypto/libblake2s 0x7bcc24fd blake2s256_hmac +EXPORT_SYMBOL lib/crypto/libblake2s 0xa3cefaa0 blake2s_update +EXPORT_SYMBOL lib/crypto/libblake2s 0xadae6df8 blake2s_final +EXPORT_SYMBOL lib/crypto/libblake2s-generic 0x755f4ba3 blake2s_compress_generic +EXPORT_SYMBOL lib/crypto/libchacha 0xcec122d7 chacha_crypt_generic +EXPORT_SYMBOL lib/crypto/libchacha20poly1305 0x147c3f2e chacha20poly1305_encrypt +EXPORT_SYMBOL lib/crypto/libchacha20poly1305 0x1c679fe2 chacha20poly1305_decrypt +EXPORT_SYMBOL lib/crypto/libchacha20poly1305 0x37b34b92 chacha20poly1305_encrypt_sg_inplace +EXPORT_SYMBOL lib/crypto/libchacha20poly1305 0x5b19e187 chacha20poly1305_decrypt_sg_inplace +EXPORT_SYMBOL lib/crypto/libchacha20poly1305 0xbaf4d923 xchacha20poly1305_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 0x4dba97c6 poly1305_core_setkey +EXPORT_SYMBOL lib/crypto/libpoly1305 0xbcb90cb3 poly1305_core_emit +EXPORT_SYMBOL lib/libcrc32c 0x89a0cd52 crc32c_impl +EXPORT_SYMBOL lib/libcrc32c 0xb15b4109 crc32c +EXPORT_SYMBOL lib/lru_cache 0x0641307b lc_destroy +EXPORT_SYMBOL lib/lru_cache 0x098d2ed9 lc_try_get +EXPORT_SYMBOL lib/lru_cache 0x2d47ac83 lc_committed +EXPORT_SYMBOL lib/lru_cache 0x2f3dcecb lc_index_of +EXPORT_SYMBOL lib/lru_cache 0x393f7002 lc_seq_dump_details +EXPORT_SYMBOL lib/lru_cache 0x4522d82a lc_reset +EXPORT_SYMBOL lib/lru_cache 0x4cf5f5a8 lc_is_used +EXPORT_SYMBOL lib/lru_cache 0x5752f31b lc_del +EXPORT_SYMBOL lib/lru_cache 0x7257beee lc_element_by_index +EXPORT_SYMBOL lib/lru_cache 0x9134feb7 lc_get +EXPORT_SYMBOL lib/lru_cache 0xb672aa97 lc_create +EXPORT_SYMBOL lib/lru_cache 0xbfbe53d5 lc_get_cumulative +EXPORT_SYMBOL lib/lru_cache 0xc3a98c1d lc_try_lock +EXPORT_SYMBOL lib/lru_cache 0xcc979a91 lc_set +EXPORT_SYMBOL lib/lru_cache 0xcf1805a5 lc_seq_printf_stats +EXPORT_SYMBOL lib/lru_cache 0xefec290a lc_find +EXPORT_SYMBOL lib/lru_cache 0xfd525ec7 lc_put +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 0x4b042b57 lowpan_register_netdevice +EXPORT_SYMBOL net/6lowpan/6lowpan 0x56ef2ec6 lowpan_nhc_add +EXPORT_SYMBOL net/6lowpan/6lowpan 0x805e483a lowpan_register_netdev +EXPORT_SYMBOL net/6lowpan/6lowpan 0xb543d900 lowpan_unregister_netdevice +EXPORT_SYMBOL net/6lowpan/6lowpan 0xd7bb22b1 lowpan_nhc_del +EXPORT_SYMBOL net/6lowpan/6lowpan 0xf18974fb lowpan_unregister_netdev +EXPORT_SYMBOL net/802/p8022 0x9608b785 unregister_8022_client +EXPORT_SYMBOL net/802/p8022 0xcbbf96ac register_8022_client +EXPORT_SYMBOL net/802/psnap 0xc6dd9446 register_snap_client +EXPORT_SYMBOL net/802/psnap 0xd95a5367 unregister_snap_client +EXPORT_SYMBOL net/9p/9pnet 0x006cea95 p9_release_pages +EXPORT_SYMBOL net/9p/9pnet 0x02374e46 p9_client_create +EXPORT_SYMBOL net/9p/9pnet 0x1430723c p9_req_put +EXPORT_SYMBOL net/9p/9pnet 0x1beb59c6 p9_client_walk +EXPORT_SYMBOL net/9p/9pnet 0x1c55a745 p9_client_readlink +EXPORT_SYMBOL net/9p/9pnet 0x1fb7a11a p9_client_read +EXPORT_SYMBOL net/9p/9pnet 0x24849a57 p9_client_cb +EXPORT_SYMBOL net/9p/9pnet 0x301c29c0 p9_client_open +EXPORT_SYMBOL net/9p/9pnet 0x32ced634 p9_client_rename +EXPORT_SYMBOL net/9p/9pnet 0x3539eb45 p9_client_lock_dotl +EXPORT_SYMBOL net/9p/9pnet 0x36b86368 p9_client_mkdir_dotl +EXPORT_SYMBOL net/9p/9pnet 0x38ece730 p9_client_wstat +EXPORT_SYMBOL net/9p/9pnet 0x3d73a797 p9_errstr2errno +EXPORT_SYMBOL net/9p/9pnet 0x41ce9823 p9stat_read +EXPORT_SYMBOL net/9p/9pnet 0x426586c5 v9fs_get_default_trans +EXPORT_SYMBOL net/9p/9pnet 0x5a58a2b5 v9fs_unregister_trans +EXPORT_SYMBOL net/9p/9pnet 0x752716b8 p9_show_client_options +EXPORT_SYMBOL net/9p/9pnet 0x7c67399c p9_client_fcreate +EXPORT_SYMBOL net/9p/9pnet 0x8675cbe9 p9_client_renameat +EXPORT_SYMBOL net/9p/9pnet 0x95bd8f96 p9dirent_read +EXPORT_SYMBOL net/9p/9pnet 0x96857498 v9fs_register_trans +EXPORT_SYMBOL net/9p/9pnet 0x984c5e73 p9_fcall_fini +EXPORT_SYMBOL net/9p/9pnet 0xa2079862 p9_client_mknod_dotl +EXPORT_SYMBOL net/9p/9pnet 0xa25de9cf p9_client_getattr_dotl +EXPORT_SYMBOL net/9p/9pnet 0xa7199a24 p9_client_readdir +EXPORT_SYMBOL net/9p/9pnet 0xb79f25fd p9_parse_header +EXPORT_SYMBOL net/9p/9pnet 0xb7c20311 p9_client_getlock_dotl +EXPORT_SYMBOL net/9p/9pnet 0xb7fc3337 p9_client_stat +EXPORT_SYMBOL net/9p/9pnet 0xb8b9fb5a p9_is_proto_dotl +EXPORT_SYMBOL net/9p/9pnet 0xb8d7a026 p9_client_symlink +EXPORT_SYMBOL net/9p/9pnet 0xbac0fde6 p9_client_setattr +EXPORT_SYMBOL net/9p/9pnet 0xbb0d8d66 p9_client_write +EXPORT_SYMBOL net/9p/9pnet 0xbe64432e p9_client_destroy +EXPORT_SYMBOL net/9p/9pnet 0xc09a1409 p9_client_clunk +EXPORT_SYMBOL net/9p/9pnet 0xcd6dcb4d p9_tag_lookup +EXPORT_SYMBOL net/9p/9pnet 0xcfbe5c3a p9_client_read_once +EXPORT_SYMBOL net/9p/9pnet 0xcfc60188 p9_client_attach +EXPORT_SYMBOL net/9p/9pnet 0xd23bcd7f p9_client_statfs +EXPORT_SYMBOL net/9p/9pnet 0xd384c683 p9stat_free +EXPORT_SYMBOL net/9p/9pnet 0xda69ee9b p9_client_link +EXPORT_SYMBOL net/9p/9pnet 0xda78bdc9 p9_client_fsync +EXPORT_SYMBOL net/9p/9pnet 0xdf0e8b7e p9_is_proto_dotu +EXPORT_SYMBOL net/9p/9pnet 0xe32c5c0a p9_client_create_dotl +EXPORT_SYMBOL net/9p/9pnet 0xe4021ba1 v9fs_get_trans_by_name +EXPORT_SYMBOL net/9p/9pnet 0xe58a3360 p9_error_init +EXPORT_SYMBOL net/9p/9pnet 0xe7d4cf81 p9_client_disconnect +EXPORT_SYMBOL net/9p/9pnet 0xf27e9a22 p9_client_begin_disconnect +EXPORT_SYMBOL net/9p/9pnet 0xfd086fe7 p9_client_remove +EXPORT_SYMBOL net/9p/9pnet 0xfe593531 p9_client_unlinkat +EXPORT_SYMBOL net/appletalk/appletalk 0x16a3d725 aarp_send_ddp +EXPORT_SYMBOL net/appletalk/appletalk 0x3d3d979a atalk_find_dev_addr +EXPORT_SYMBOL net/appletalk/appletalk 0x9314ec15 atrtr_get_dev +EXPORT_SYMBOL net/appletalk/appletalk 0xaa7fb495 alloc_ltalkdev +EXPORT_SYMBOL net/atm/atm 0x06cecf19 atm_dev_lookup +EXPORT_SYMBOL net/atm/atm 0x1376e2a7 atm_dev_deregister +EXPORT_SYMBOL net/atm/atm 0x223aa188 atm_dev_signal_change +EXPORT_SYMBOL net/atm/atm 0x28d8bfa1 atm_dev_register +EXPORT_SYMBOL net/atm/atm 0x2cc2d52d vcc_hash +EXPORT_SYMBOL net/atm/atm 0x4443d399 atm_proc_root +EXPORT_SYMBOL net/atm/atm 0x44c6e633 vcc_sklist_lock +EXPORT_SYMBOL net/atm/atm 0x547af840 vcc_process_recv_queue +EXPORT_SYMBOL net/atm/atm 0x6b3783ea deregister_atm_ioctl +EXPORT_SYMBOL net/atm/atm 0x88adc7e7 register_atm_ioctl +EXPORT_SYMBOL net/atm/atm 0x89de478c atm_alloc_charge +EXPORT_SYMBOL net/atm/atm 0x923ae89a 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 0xcd6f35c3 vcc_insert_socket +EXPORT_SYMBOL net/atm/atm 0xe0ba42f7 vcc_release_async +EXPORT_SYMBOL net/atm/atm 0xe7001aba atm_init_aal5 +EXPORT_SYMBOL net/atm/atm 0xf49bc67a atm_pcr_goal +EXPORT_SYMBOL net/atm/atm 0xfbd5aa02 atm_charge +EXPORT_SYMBOL net/ax25/ax25 0x12986e14 ax25_header_ops +EXPORT_SYMBOL net/ax25/ax25 0x14cecd59 ax25_display_timer +EXPORT_SYMBOL net/ax25/ax25 0x242852b9 ax25_uid_policy +EXPORT_SYMBOL net/ax25/ax25 0x4502c65a asc2ax +EXPORT_SYMBOL net/ax25/ax25 0x53dea1ff ax2asc +EXPORT_SYMBOL net/ax25/ax25 0x752d0f8b ax25_send_frame +EXPORT_SYMBOL net/ax25/ax25 0x754d416b ax25_listen_release +EXPORT_SYMBOL net/ax25/ax25 0x8ede9e26 ax25_protocol_release +EXPORT_SYMBOL net/ax25/ax25 0xa73b1100 ax25_find_cb +EXPORT_SYMBOL net/ax25/ax25 0xa7f25905 ax25_ip_xmit +EXPORT_SYMBOL net/ax25/ax25 0xc1444946 ax25cmp +EXPORT_SYMBOL net/ax25/ax25 0xcbcfb70e ax25_linkfail_register +EXPORT_SYMBOL net/ax25/ax25 0xcfd921f6 ax25_linkfail_release +EXPORT_SYMBOL net/ax25/ax25 0xd04ae769 ax25_listen_register +EXPORT_SYMBOL net/ax25/ax25 0xd43ecbf1 null_ax25_address +EXPORT_SYMBOL net/ax25/ax25 0xee02e420 ax25_findbyuid +EXPORT_SYMBOL net/bluetooth/bluetooth 0x023875c5 l2cap_unregister_user +EXPORT_SYMBOL net/bluetooth/bluetooth 0x0582e9ad bt_sock_wait_ready +EXPORT_SYMBOL net/bluetooth/bluetooth 0x0718b8b7 bt_info +EXPORT_SYMBOL net/bluetooth/bluetooth 0x135ae0d5 bt_procfs_init +EXPORT_SYMBOL net/bluetooth/bluetooth 0x214e4265 bt_warn +EXPORT_SYMBOL net/bluetooth/bluetooth 0x2f74b119 bt_procfs_cleanup +EXPORT_SYMBOL net/bluetooth/bluetooth 0x310a40b4 hci_register_cb +EXPORT_SYMBOL net/bluetooth/bluetooth 0x31a431ae hci_conn_switch_role +EXPORT_SYMBOL net/bluetooth/bluetooth 0x32b3292f __hci_cmd_sync +EXPORT_SYMBOL net/bluetooth/bluetooth 0x3ca23779 hci_recv_frame +EXPORT_SYMBOL net/bluetooth/bluetooth 0x3d9aafd5 bt_sock_link +EXPORT_SYMBOL net/bluetooth/bluetooth 0x3f561771 hci_conn_security +EXPORT_SYMBOL net/bluetooth/bluetooth 0x4199214c bt_sock_register +EXPORT_SYMBOL net/bluetooth/bluetooth 0x49a05183 bt_accept_dequeue +EXPORT_SYMBOL net/bluetooth/bluetooth 0x51e7e6a0 l2cap_chan_close +EXPORT_SYMBOL net/bluetooth/bluetooth 0x5749b224 bt_accept_enqueue +EXPORT_SYMBOL net/bluetooth/bluetooth 0x5de82b32 hci_mgmt_chan_unregister +EXPORT_SYMBOL net/bluetooth/bluetooth 0x6059e620 hci_mgmt_chan_register +EXPORT_SYMBOL net/bluetooth/bluetooth 0x62b4b2a0 l2cap_is_socket +EXPORT_SYMBOL net/bluetooth/bluetooth 0x66a4f61e hci_conn_check_secure +EXPORT_SYMBOL net/bluetooth/bluetooth 0x67ff6f14 bt_sock_wait_state +EXPORT_SYMBOL net/bluetooth/bluetooth 0x6835bce7 bt_sock_poll +EXPORT_SYMBOL net/bluetooth/bluetooth 0x78e232ae l2cap_conn_put +EXPORT_SYMBOL net/bluetooth/bluetooth 0x7aad008b bt_to_errno +EXPORT_SYMBOL net/bluetooth/bluetooth 0x7b5ce5c3 baswap +EXPORT_SYMBOL net/bluetooth/bluetooth 0x7b8c32f1 bt_err +EXPORT_SYMBOL net/bluetooth/bluetooth 0x80ee0395 __hci_cmd_sync_ev +EXPORT_SYMBOL net/bluetooth/bluetooth 0x8150759e hci_cmd_sync +EXPORT_SYMBOL net/bluetooth/bluetooth 0x881c77ef l2cap_conn_get +EXPORT_SYMBOL net/bluetooth/bluetooth 0x8bc70d0c bt_sock_recvmsg +EXPORT_SYMBOL net/bluetooth/bluetooth 0x8fea24bd bt_sock_unregister +EXPORT_SYMBOL net/bluetooth/bluetooth 0xa0dec097 bt_sock_unlink +EXPORT_SYMBOL net/bluetooth/bluetooth 0xa189a72a bt_sock_stream_recvmsg +EXPORT_SYMBOL net/bluetooth/bluetooth 0xa52a33e8 bt_sock_ioctl +EXPORT_SYMBOL net/bluetooth/bluetooth 0xa67489ed l2cap_register_user +EXPORT_SYMBOL net/bluetooth/bluetooth 0xa9dfd23a hci_alloc_dev +EXPORT_SYMBOL net/bluetooth/bluetooth 0xaa53ae57 hci_unregister_dev +EXPORT_SYMBOL net/bluetooth/bluetooth 0xbbb566b8 bt_accept_unlink +EXPORT_SYMBOL net/bluetooth/bluetooth 0xc154e7e1 hci_free_dev +EXPORT_SYMBOL net/bluetooth/bluetooth 0xc2e81bee hci_recv_diag +EXPORT_SYMBOL net/bluetooth/bluetooth 0xc5bd5094 hci_resume_dev +EXPORT_SYMBOL net/bluetooth/bluetooth 0xc683ea06 bt_sock_reclassify_lock +EXPORT_SYMBOL net/bluetooth/bluetooth 0xc74f6bbe hci_suspend_dev +EXPORT_SYMBOL net/bluetooth/bluetooth 0xc78f4aa0 hci_reset_dev +EXPORT_SYMBOL net/bluetooth/bluetooth 0xd70f6594 hci_set_fw_info +EXPORT_SYMBOL net/bluetooth/bluetooth 0xd7613212 bt_err_ratelimited +EXPORT_SYMBOL net/bluetooth/bluetooth 0xddacccf6 bt_warn_ratelimited +EXPORT_SYMBOL net/bluetooth/bluetooth 0xec6dc14b hci_set_hw_info +EXPORT_SYMBOL net/bluetooth/bluetooth 0xf2926f64 hci_unregister_cb +EXPORT_SYMBOL net/bluetooth/bluetooth 0xf7f73e52 hci_register_dev +EXPORT_SYMBOL net/bluetooth/bluetooth 0xfaefee35 __hci_cmd_send +EXPORT_SYMBOL net/bluetooth/bluetooth 0xffe2ec41 hci_get_route +EXPORT_SYMBOL net/bridge/netfilter/ebtables 0x32219856 ebt_unregister_table +EXPORT_SYMBOL net/bridge/netfilter/ebtables 0x443a9834 ebt_register_table +EXPORT_SYMBOL net/bridge/netfilter/ebtables 0x53b3b8da ebt_do_table +EXPORT_SYMBOL net/caif/caif 0x06917f56 cfcnfg_add_phy_layer +EXPORT_SYMBOL net/caif/caif 0x1446b60a caif_client_register_refcnt +EXPORT_SYMBOL net/caif/caif 0x223f46ae caif_enroll_dev +EXPORT_SYMBOL net/caif/caif 0x2a09f713 cfpkt_fromnative +EXPORT_SYMBOL net/caif/caif 0x329dbd06 cfpkt_info +EXPORT_SYMBOL net/caif/caif 0x37d3e0b6 get_cfcnfg +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 0x839ddb7b cfcnfg_set_phy_state +EXPORT_SYMBOL net/caif/caif 0x946093e2 caif_disconnect_client +EXPORT_SYMBOL net/caif/caif 0x9e3e305d cfpkt_set_prio +EXPORT_SYMBOL net/caif/caif 0xa0f4919c caif_connect_client +EXPORT_SYMBOL net/caif/caif 0xb7b6874e caif_free_client +EXPORT_SYMBOL net/can/can 0x13f3dce0 can_rx_register +EXPORT_SYMBOL net/can/can 0x1c91a55d can_sock_destruct +EXPORT_SYMBOL net/can/can 0x2384b846 can_proto_register +EXPORT_SYMBOL net/can/can 0x5792f731 can_proto_unregister +EXPORT_SYMBOL net/can/can 0xb52dc578 can_rx_unregister +EXPORT_SYMBOL net/can/can 0xe3b67dc4 can_send +EXPORT_SYMBOL net/ceph/libceph 0x01bd5d0d ceph_osdc_abort_requests +EXPORT_SYMBOL net/ceph/libceph 0x05839ed6 ceph_osdc_notify_ack +EXPORT_SYMBOL net/ceph/libceph 0x07bbf62d osd_req_op_extent_update +EXPORT_SYMBOL net/ceph/libceph 0x0bf6b896 ceph_osdc_clear_abort_err +EXPORT_SYMBOL net/ceph/libceph 0x0ea2e8b7 ceph_monc_renew_subs +EXPORT_SYMBOL net/ceph/libceph 0x0ede3dca osd_req_op_init +EXPORT_SYMBOL net/ceph/libceph 0x135ca86d osd_req_op_extent_dup_last +EXPORT_SYMBOL net/ceph/libceph 0x1360659e ceph_monc_get_version +EXPORT_SYMBOL net/ceph/libceph 0x145bef2d osd_req_op_extent_osd_data_pagelist +EXPORT_SYMBOL net/ceph/libceph 0x165b1948 ceph_pagelist_free_reserve +EXPORT_SYMBOL net/ceph/libceph 0x1aabaa66 ceph_con_keepalive +EXPORT_SYMBOL net/ceph/libceph 0x2040b02d ceph_auth_create_authorizer +EXPORT_SYMBOL net/ceph/libceph 0x2087719e ceph_oid_copy +EXPORT_SYMBOL net/ceph/libceph 0x2101cbc9 ceph_oid_destroy +EXPORT_SYMBOL net/ceph/libceph 0x22ea6ef0 ceph_osdc_notify +EXPORT_SYMBOL net/ceph/libceph 0x2494626d ceph_object_locator_to_pg +EXPORT_SYMBOL net/ceph/libceph 0x2a983d26 ceph_pagelist_release +EXPORT_SYMBOL net/ceph/libceph 0x2c51409b ceph_osdc_cancel_request +EXPORT_SYMBOL net/ceph/libceph 0x2cbfd701 ceph_osdc_alloc_messages +EXPORT_SYMBOL net/ceph/libceph 0x30e4f1ae ceph_monc_init +EXPORT_SYMBOL net/ceph/libceph 0x33e72719 osd_req_op_raw_data_in_pages +EXPORT_SYMBOL net/ceph/libceph 0x37c31e58 ceph_parse_param +EXPORT_SYMBOL net/ceph/libceph 0x38f2d94e ceph_file_to_extents +EXPORT_SYMBOL net/ceph/libceph 0x39891588 ceph_cls_break_lock +EXPORT_SYMBOL net/ceph/libceph 0x3c31215b ceph_osdc_sync +EXPORT_SYMBOL net/ceph/libceph 0x3c8d7111 ceph_get_num_objects +EXPORT_SYMBOL net/ceph/libceph 0x3d49616c ceph_monc_stop +EXPORT_SYMBOL net/ceph/libceph 0x3d8f3a34 osd_req_op_alloc_hint_init +EXPORT_SYMBOL net/ceph/libceph 0x3f33181e ceph_monc_do_statfs +EXPORT_SYMBOL net/ceph/libceph 0x417a9131 ceph_oloc_destroy +EXPORT_SYMBOL net/ceph/libceph 0x437d743b ceph_print_client_options +EXPORT_SYMBOL net/ceph/libceph 0x46555f2e ceph_pg_poolid_by_name +EXPORT_SYMBOL net/ceph/libceph 0x466b85b8 libceph_compatible +EXPORT_SYMBOL net/ceph/libceph 0x49790332 ceph_reset_client_addr +EXPORT_SYMBOL net/ceph/libceph 0x4a576ba0 ceph_auth_invalidate_authorizer +EXPORT_SYMBOL net/ceph/libceph 0x4dffd9b5 ceph_release_page_vector +EXPORT_SYMBOL net/ceph/libceph 0x508c628e osd_req_op_extent_osd_data_bio +EXPORT_SYMBOL net/ceph/libceph 0x52a6a26f osd_req_op_extent_osd_data_pages +EXPORT_SYMBOL net/ceph/libceph 0x54332c12 ceph_cls_lock +EXPORT_SYMBOL net/ceph/libceph 0x56528e32 osd_req_op_cls_init +EXPORT_SYMBOL net/ceph/libceph 0x57baf885 ceph_str_hash +EXPORT_SYMBOL net/ceph/libceph 0x58bd2de0 osd_req_op_xattr_init +EXPORT_SYMBOL net/ceph/libceph 0x5aeeee62 ceph_oid_aprintf +EXPORT_SYMBOL net/ceph/libceph 0x5d87a42e ceph_con_init +EXPORT_SYMBOL net/ceph/libceph 0x5da15297 ceph_msg_dump +EXPORT_SYMBOL net/ceph/libceph 0x5e0ec6a3 ceph_pg_pool_name_by_id +EXPORT_SYMBOL net/ceph/libceph 0x60580ce2 ceph_copy_user_to_page_vector +EXPORT_SYMBOL net/ceph/libceph 0x61244ac8 ceph_auth_update_authorizer +EXPORT_SYMBOL net/ceph/libceph 0x62571062 ceph_copy_from_page_vector +EXPORT_SYMBOL net/ceph/libceph 0x63758856 ceph_str_hash_name +EXPORT_SYMBOL net/ceph/libceph 0x63fd183d ceph_zero_page_vector_range +EXPORT_SYMBOL net/ceph/libceph 0x640b6bd5 ceph_cls_assert_locked +EXPORT_SYMBOL net/ceph/libceph 0x64cc8d16 ceph_auth_is_authenticated +EXPORT_SYMBOL net/ceph/libceph 0x67a41ca9 ceph_cls_set_cookie +EXPORT_SYMBOL net/ceph/libceph 0x69926a3c osd_req_op_cls_response_data_pages +EXPORT_SYMBOL net/ceph/libceph 0x6a764007 ceph_osdc_call +EXPORT_SYMBOL net/ceph/libceph 0x6a7a38a0 ceph_pr_addr +EXPORT_SYMBOL net/ceph/libceph 0x7358e4c4 ceph_alloc_options +EXPORT_SYMBOL net/ceph/libceph 0x780676ec ceph_con_open +EXPORT_SYMBOL net/ceph/libceph 0x785e13dd ceph_osdc_put_request +EXPORT_SYMBOL net/ceph/libceph 0x82f61765 ceph_msg_data_add_pagelist +EXPORT_SYMBOL net/ceph/libceph 0x86fca7e4 ceph_put_snap_context +EXPORT_SYMBOL net/ceph/libceph 0x8f98de65 ceph_auth_add_authorizer_challenge +EXPORT_SYMBOL net/ceph/libceph 0x90fc55d1 osd_req_op_extent_osd_data_bvec_pos +EXPORT_SYMBOL net/ceph/libceph 0x917c5b1d osd_req_op_cls_request_data_pages +EXPORT_SYMBOL net/ceph/libceph 0x94774f8d ceph_msg_put +EXPORT_SYMBOL net/ceph/libceph 0x966354cd ceph_con_send +EXPORT_SYMBOL net/ceph/libceph 0x9682a1d9 ceph_cls_unlock +EXPORT_SYMBOL net/ceph/libceph 0x9a0393bb ceph_osdc_alloc_request +EXPORT_SYMBOL net/ceph/libceph 0x9b2f3478 ceph_pg_pool_flags +EXPORT_SYMBOL net/ceph/libceph 0x9bc6b539 ceph_find_or_create_string +EXPORT_SYMBOL net/ceph/libceph 0x9c4e1d53 ceph_monc_blacklist_add +EXPORT_SYMBOL net/ceph/libceph 0x9ca95932 ceph_create_snap_context +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 0xa2c5917f ceph_wait_for_latest_osdmap +EXPORT_SYMBOL net/ceph/libceph 0xa47fa18d ceph_create_client +EXPORT_SYMBOL net/ceph/libceph 0xa551be6d ceph_osdc_unwatch +EXPORT_SYMBOL net/ceph/libceph 0xa698f998 ceph_free_lockers +EXPORT_SYMBOL net/ceph/libceph 0xa8766439 ceph_monc_get_version_async +EXPORT_SYMBOL net/ceph/libceph 0xab19b202 ceph_msg_get +EXPORT_SYMBOL net/ceph/libceph 0xab6a6152 osd_req_op_extent_osd_data +EXPORT_SYMBOL net/ceph/libceph 0xac9d125c ceph_osdc_list_watchers +EXPORT_SYMBOL net/ceph/libceph 0xace4b94d ceph_monc_got_map +EXPORT_SYMBOL net/ceph/libceph 0xad703657 ceph_auth_destroy_authorizer +EXPORT_SYMBOL net/ceph/libceph 0xaf1e061c ceph_compare_options +EXPORT_SYMBOL net/ceph/libceph 0xafb8a407 ceph_msgr_flush +EXPORT_SYMBOL net/ceph/libceph 0xafedb3e4 ceph_osdc_new_request +EXPORT_SYMBOL net/ceph/libceph 0xb19b36b7 ceph_cls_lock_info +EXPORT_SYMBOL net/ceph/libceph 0xb25ac1c3 ceph_put_page_vector +EXPORT_SYMBOL net/ceph/libceph 0xb3390a52 osd_req_op_extent_init +EXPORT_SYMBOL net/ceph/libceph 0xb54676fa ceph_msg_type_name +EXPORT_SYMBOL net/ceph/libceph 0xb60c03c9 ceph_msg_data_add_bvecs +EXPORT_SYMBOL net/ceph/libceph 0xb642e4c6 ceph_osdc_flush_notifies +EXPORT_SYMBOL net/ceph/libceph 0xb72c162e ceph_buffer_release +EXPORT_SYMBOL net/ceph/libceph 0xb7b66494 osd_req_op_extent_osd_data_bvecs +EXPORT_SYMBOL net/ceph/libceph 0xb9a8844c ceph_monc_wait_osdmap +EXPORT_SYMBOL net/ceph/libceph 0xbb553045 ceph_msg_new +EXPORT_SYMBOL net/ceph/libceph 0xbd0f210e ceph_client_addr +EXPORT_SYMBOL net/ceph/libceph 0xbd2f79ae ceph_oloc_copy +EXPORT_SYMBOL net/ceph/libceph 0xbd8c1313 ceph_destroy_options +EXPORT_SYMBOL net/ceph/libceph 0xbdc5426a ceph_alloc_page_vector +EXPORT_SYMBOL net/ceph/libceph 0xbe3879aa ceph_get_snap_context +EXPORT_SYMBOL net/ceph/libceph 0xc1478442 ceph_osdc_maybe_request_map +EXPORT_SYMBOL net/ceph/libceph 0xc366bfa1 ceph_pagelist_truncate +EXPORT_SYMBOL net/ceph/libceph 0xc98a936f ceph_client_gid +EXPORT_SYMBOL net/ceph/libceph 0xc9bed629 ceph_messenger_init +EXPORT_SYMBOL net/ceph/libceph 0xca6f75ea ceph_monc_want_map +EXPORT_SYMBOL net/ceph/libceph 0xca80437b ceph_extent_to_file +EXPORT_SYMBOL net/ceph/libceph 0xcb033af8 ceph_monc_validate_auth +EXPORT_SYMBOL net/ceph/libceph 0xcb56cefa ceph_monc_open_session +EXPORT_SYMBOL net/ceph/libceph 0xcce1dc1d ceph_check_fsid +EXPORT_SYMBOL net/ceph/libceph 0xce5ffe02 ceph_osdc_wait_request +EXPORT_SYMBOL net/ceph/libceph 0xce727e5f ceph_msg_new2 +EXPORT_SYMBOL net/ceph/libceph 0xd117979e ceph_parse_mon_ips +EXPORT_SYMBOL net/ceph/libceph 0xd356b0a2 ceph_osdc_start_request +EXPORT_SYMBOL net/ceph/libceph 0xd4eb7735 ceph_decode_entity_addr +EXPORT_SYMBOL net/ceph/libceph 0xd97225ae ceph_osdc_get_request +EXPORT_SYMBOL net/ceph/libceph 0xdb7fa8a3 osd_req_op_cls_request_data_pagelist +EXPORT_SYMBOL net/ceph/libceph 0xde361d85 ceph_con_close +EXPORT_SYMBOL net/ceph/libceph 0xdee2c184 ceph_destroy_client +EXPORT_SYMBOL net/ceph/libceph 0xdf266fc2 osd_req_op_cls_request_data_bvecs +EXPORT_SYMBOL net/ceph/libceph 0xdf6ef4a1 ceph_oid_printf +EXPORT_SYMBOL net/ceph/libceph 0xdfc091f9 ceph_entity_type_name +EXPORT_SYMBOL net/ceph/libceph 0xe1ba8997 ceph_osdc_watch +EXPORT_SYMBOL net/ceph/libceph 0xe37c5361 ceph_messenger_fini +EXPORT_SYMBOL net/ceph/libceph 0xe76e7226 ceph_pagelist_alloc +EXPORT_SYMBOL net/ceph/libceph 0xe7a87fd0 ceph_copy_to_page_vector +EXPORT_SYMBOL net/ceph/libceph 0xe995e10c ceph_open_session +EXPORT_SYMBOL net/ceph/libceph 0xee120c03 ceph_release_string +EXPORT_SYMBOL net/ceph/libceph 0xeedd7f2a ceph_osdc_update_epoch_barrier +EXPORT_SYMBOL net/ceph/libceph 0xeef6cfa3 ceph_iterate_extents +EXPORT_SYMBOL net/ceph/libceph 0xef65f2f5 ceph_pg_to_acting_primary +EXPORT_SYMBOL net/ceph/libceph 0xef6c7317 ceph_msg_data_add_bio +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 0xf53a918d ceph_auth_verify_authorizer_reply +EXPORT_SYMBOL net/ceph/libceph 0xf60ca6b4 ceph_osdc_copy_from +EXPORT_SYMBOL net/ceph/libceph 0xfdb76fa3 __ceph_open_session +EXPORT_SYMBOL net/ceph/libceph 0xff3ce818 ceph_msg_data_add_pages +EXPORT_SYMBOL net/dccp/dccp_ipv4 0x5a7085ac dccp_syn_ack_timeout +EXPORT_SYMBOL net/dccp/dccp_ipv4 0x63edf120 dccp_req_err +EXPORT_SYMBOL net/dsa/dsa_core 0x0afb284a dsa_port_vid_add +EXPORT_SYMBOL net/dsa/dsa_core 0x79c16fa2 dsa_port_vid_del +EXPORT_SYMBOL net/ieee802154/ieee802154 0x1b774e84 wpan_phy_find +EXPORT_SYMBOL net/ieee802154/ieee802154 0x1c354f1c wpan_phy_register +EXPORT_SYMBOL net/ieee802154/ieee802154 0x6cf02794 wpan_phy_for_each +EXPORT_SYMBOL net/ieee802154/ieee802154 0x84b8e0a0 wpan_phy_unregister +EXPORT_SYMBOL net/ieee802154/ieee802154 0xab3964fc wpan_phy_new +EXPORT_SYMBOL net/ieee802154/ieee802154 0xcb938458 wpan_phy_free +EXPORT_SYMBOL net/ipv4/fou 0x1757d1a4 fou_encap_hlen +EXPORT_SYMBOL net/ipv4/fou 0xbc007565 __fou_build_header +EXPORT_SYMBOL net/ipv4/fou 0xf13914b3 gue_encap_hlen +EXPORT_SYMBOL net/ipv4/fou 0xff57a470 __gue_build_header +EXPORT_SYMBOL net/ipv4/gre 0x749f8752 gre_parse_header +EXPORT_SYMBOL net/ipv4/ip_tunnel 0x06fe4870 ip_tunnel_get_iflink +EXPORT_SYMBOL net/ipv4/ip_tunnel 0x106ac462 ip_tunnel_get_link_net +EXPORT_SYMBOL net/ipv4/ip_tunnel 0x26928a2f ip_tunnel_encap_del_ops +EXPORT_SYMBOL net/ipv4/ip_tunnel 0x87bc4d17 ip_tunnel_encap_add_ops +EXPORT_SYMBOL net/ipv4/netfilter/arp_tables 0x7936a4f9 arpt_unregister_table +EXPORT_SYMBOL net/ipv4/netfilter/arp_tables 0xbec3a7e0 arpt_do_table +EXPORT_SYMBOL net/ipv4/netfilter/arp_tables 0xdfbaa154 arpt_register_table +EXPORT_SYMBOL net/ipv4/netfilter/ip_tables 0x1d4940b4 ipt_unregister_table_exit +EXPORT_SYMBOL net/ipv4/netfilter/ip_tables 0xab5da70c ipt_unregister_table_pre_exit +EXPORT_SYMBOL net/ipv4/netfilter/ip_tables 0xbc8c6c3c ipt_do_table +EXPORT_SYMBOL net/ipv4/netfilter/ip_tables 0xc0a53b44 ipt_register_table +EXPORT_SYMBOL net/ipv4/netfilter/ip_tables 0xd25ac7c4 ipt_unregister_table +EXPORT_SYMBOL net/ipv4/tunnel4 0x6f86241f xfrm4_tunnel_deregister +EXPORT_SYMBOL net/ipv4/tunnel4 0xb77c129b xfrm4_tunnel_register +EXPORT_SYMBOL net/ipv4/udp_tunnel 0x706b5405 udp_sock_create4 +EXPORT_SYMBOL net/ipv6/ip6_tunnel 0x16406de4 ip6_tnl_get_iflink +EXPORT_SYMBOL net/ipv6/ip6_tunnel 0x1d3c2ea5 ip6_tnl_get_link_net +EXPORT_SYMBOL net/ipv6/ip6_tunnel 0x1f610cd4 ip6_tnl_parse_tlv_enc_lim +EXPORT_SYMBOL net/ipv6/ip6_tunnel 0x21dfa403 ip6_tnl_rcv +EXPORT_SYMBOL net/ipv6/ip6_tunnel 0x3ed0cfbc ip6_tnl_encap_add_ops +EXPORT_SYMBOL net/ipv6/ip6_tunnel 0x722521b2 ip6_tnl_encap_del_ops +EXPORT_SYMBOL net/ipv6/ip6_tunnel 0x7bb0d95e ip6_tnl_get_cap +EXPORT_SYMBOL net/ipv6/ip6_tunnel 0x8c18e02a ip6_tnl_change_mtu +EXPORT_SYMBOL net/ipv6/ip6_tunnel 0xe899f659 ip6_tnl_xmit +EXPORT_SYMBOL net/ipv6/netfilter/ip6_tables 0x03ebdade ip6t_do_table +EXPORT_SYMBOL net/ipv6/netfilter/ip6_tables 0x0b95a20a ip6t_unregister_table_pre_exit +EXPORT_SYMBOL net/ipv6/netfilter/ip6_tables 0x58f0e5c8 ip6t_unregister_table_exit +EXPORT_SYMBOL net/ipv6/netfilter/ip6_tables 0x632c2852 ip6t_register_table +EXPORT_SYMBOL net/ipv6/netfilter/ip6_tables 0x8902a6df ip6t_unregister_table +EXPORT_SYMBOL net/ipv6/tunnel6 0x7e0cdc1c xfrm6_tunnel_register +EXPORT_SYMBOL net/ipv6/tunnel6 0xa71c3dc2 xfrm6_tunnel_deregister +EXPORT_SYMBOL net/ipv6/xfrm6_tunnel 0xd26d5f1a xfrm6_tunnel_alloc_spi +EXPORT_SYMBOL net/ipv6/xfrm6_tunnel 0xfca0a5d4 xfrm6_tunnel_spi_lookup +EXPORT_SYMBOL net/l2tp/l2tp_core 0x9524d915 l2tp_tunnel_free +EXPORT_SYMBOL net/l2tp/l2tp_core 0xc559f316 l2tp_recv_common +EXPORT_SYMBOL net/l2tp/l2tp_ip 0x269df39c l2tp_ioctl +EXPORT_SYMBOL net/lapb/lapb 0x2aa12f9b lapb_getparms +EXPORT_SYMBOL net/lapb/lapb 0x433f1597 lapb_disconnect_request +EXPORT_SYMBOL net/lapb/lapb 0x44b993f7 lapb_setparms +EXPORT_SYMBOL net/lapb/lapb 0x47c3f1ca lapb_data_request +EXPORT_SYMBOL net/lapb/lapb 0x69e9583c lapb_data_received +EXPORT_SYMBOL net/lapb/lapb 0x8b8926f8 lapb_connect_request +EXPORT_SYMBOL net/lapb/lapb 0xc5a6d046 lapb_register +EXPORT_SYMBOL net/lapb/lapb 0xf55a7ba0 lapb_unregister +EXPORT_SYMBOL net/llc/llc 0x38b92846 llc_remove_pack +EXPORT_SYMBOL net/llc/llc 0x52d7b2fd llc_sap_list +EXPORT_SYMBOL net/llc/llc 0x6063940f llc_sap_open +EXPORT_SYMBOL net/llc/llc 0x6a45a1dc llc_sap_find +EXPORT_SYMBOL net/llc/llc 0x91871b00 llc_build_and_send_ui_pkt +EXPORT_SYMBOL net/llc/llc 0x94076fb9 llc_sap_close +EXPORT_SYMBOL net/llc/llc 0x942d4f4e llc_mac_hdr_init +EXPORT_SYMBOL net/llc/llc 0x95aee9b6 llc_add_pack +EXPORT_SYMBOL net/llc/llc 0x9f560475 llc_set_station_handler +EXPORT_SYMBOL net/mac80211/mac80211 0x014f8ab1 ieee80211_ap_probereq_get +EXPORT_SYMBOL net/mac80211/mac80211 0x063f5308 ieee80211_get_tkip_p1k_iv +EXPORT_SYMBOL net/mac80211/mac80211 0x0668fbd8 ieee80211_rts_get +EXPORT_SYMBOL net/mac80211/mac80211 0x0b58c588 ieee80211_unreserve_tid +EXPORT_SYMBOL net/mac80211/mac80211 0x13ed1714 ieee80211_reserve_tid +EXPORT_SYMBOL net/mac80211/mac80211 0x183dcd3b ieee80211_get_key_rx_seq +EXPORT_SYMBOL net/mac80211/mac80211 0x19535b49 ieee80211_csa_update_counter +EXPORT_SYMBOL net/mac80211/mac80211 0x19d72bac ieee80211_txq_get_depth +EXPORT_SYMBOL net/mac80211/mac80211 0x19f37f0d ieee80211_update_p2p_noa +EXPORT_SYMBOL net/mac80211/mac80211 0x1a66fc17 ieee80211_get_tkip_rx_p1k +EXPORT_SYMBOL net/mac80211/mac80211 0x1a9a55f6 ieee80211_sta_pspoll +EXPORT_SYMBOL net/mac80211/mac80211 0x1c140445 ieee80211_ctstoself_duration +EXPORT_SYMBOL net/mac80211/mac80211 0x1e9cb108 ieee80211_enable_rssi_reports +EXPORT_SYMBOL net/mac80211/mac80211 0x217a9891 ieee80211_txq_airtime_check +EXPORT_SYMBOL net/mac80211/mac80211 0x258314b8 ieee80211_manage_rx_ba_offl +EXPORT_SYMBOL net/mac80211/mac80211 0x25ab0dcf ieee80211_wake_queues +EXPORT_SYMBOL net/mac80211/mac80211 0x2c10e59d ieee80211_beacon_loss +EXPORT_SYMBOL net/mac80211/mac80211 0x3263418b __ieee80211_schedule_txq +EXPORT_SYMBOL net/mac80211/mac80211 0x34cdb6d1 ieee80211_rate_control_unregister +EXPORT_SYMBOL net/mac80211/mac80211 0x397fcbf6 ieee80211_beacon_get_template +EXPORT_SYMBOL net/mac80211/mac80211 0x3aaf47be ieee80211_rx_ba_timer_expired +EXPORT_SYMBOL net/mac80211/mac80211 0x3b58b1af ieee80211_sta_eosp +EXPORT_SYMBOL net/mac80211/mac80211 0x3f38bbea ieee80211_sta_uapsd_trigger +EXPORT_SYMBOL net/mac80211/mac80211 0x4433cc59 ieee80211_stop_queues +EXPORT_SYMBOL net/mac80211/mac80211 0x44a13ad5 ieee80211_txq_schedule_start +EXPORT_SYMBOL net/mac80211/mac80211 0x4d87994d ieee80211_connection_loss +EXPORT_SYMBOL net/mac80211/mac80211 0x56eb5df4 ieee80211_stop_rx_ba_session +EXPORT_SYMBOL net/mac80211/mac80211 0x590aa18a ieee80211_free_hw +EXPORT_SYMBOL net/mac80211/mac80211 0x598ef239 __ieee80211_get_rx_led_name +EXPORT_SYMBOL net/mac80211/mac80211 0x5d4932b5 ieee80211_queue_delayed_work +EXPORT_SYMBOL net/mac80211/mac80211 0x648a7d36 ieee80211_csa_is_complete +EXPORT_SYMBOL net/mac80211/mac80211 0x6595378d ieee80211_tx_status +EXPORT_SYMBOL net/mac80211/mac80211 0x67a288fa ieee80211_txq_may_transmit +EXPORT_SYMBOL net/mac80211/mac80211 0x68481042 ieee80211_iter_keys_rcu +EXPORT_SYMBOL net/mac80211/mac80211 0x68b4a1ef ieee80211_beacon_get_tim +EXPORT_SYMBOL net/mac80211/mac80211 0x6b02bfee ieee80211_tx_status_8023 +EXPORT_SYMBOL net/mac80211/mac80211 0x6ba536ff ieee80211_sched_scan_results +EXPORT_SYMBOL net/mac80211/mac80211 0x6bbfd35a ieee80211_nan_func_terminated +EXPORT_SYMBOL net/mac80211/mac80211 0x6c4d061b ieee80211_nullfunc_get +EXPORT_SYMBOL net/mac80211/mac80211 0x6d6a887c ieee80211_rx_napi +EXPORT_SYMBOL net/mac80211/mac80211 0x740c0439 ieee80211_report_wowlan_wakeup +EXPORT_SYMBOL net/mac80211/mac80211 0x755dd245 ieee80211_csa_set_counter +EXPORT_SYMBOL net/mac80211/mac80211 0x76e2381a ieee80211_tx_dequeue +EXPORT_SYMBOL net/mac80211/mac80211 0x79390ba8 ieee80211_start_tx_ba_cb_irqsafe +EXPORT_SYMBOL net/mac80211/mac80211 0x795c5757 ieee80211_probereq_get +EXPORT_SYMBOL net/mac80211/mac80211 0x7b44b966 ieee80211_next_txq +EXPORT_SYMBOL net/mac80211/mac80211 0x7c6219ba ieee80211_rts_duration +EXPORT_SYMBOL net/mac80211/mac80211 0x7d3b8e65 ieee80211_restart_hw +EXPORT_SYMBOL net/mac80211/mac80211 0x7f1f503e ieee80211_stop_tx_ba_session +EXPORT_SYMBOL net/mac80211/mac80211 0x7f657739 ieee80211_send_bar +EXPORT_SYMBOL net/mac80211/mac80211 0x8423d59a ieee80211_report_low_ack +EXPORT_SYMBOL net/mac80211/mac80211 0x85081ce5 ieee80211_proberesp_get +EXPORT_SYMBOL net/mac80211/mac80211 0x861af192 ieee80211_get_tkip_p2k +EXPORT_SYMBOL net/mac80211/mac80211 0x8b432f89 ieee80211_mark_rx_ba_filtered_frames +EXPORT_SYMBOL net/mac80211/mac80211 0x8dbd6c3c ieee80211_csa_finish +EXPORT_SYMBOL net/mac80211/mac80211 0x90252229 ieee80211_sta_set_buffered +EXPORT_SYMBOL net/mac80211/mac80211 0x9763badb ieee80211_cqm_rssi_notify +EXPORT_SYMBOL net/mac80211/mac80211 0x991a0ca0 ieee80211_parse_p2p_noa +EXPORT_SYMBOL net/mac80211/mac80211 0x9a8f67da __ieee80211_get_assoc_led_name +EXPORT_SYMBOL net/mac80211/mac80211 0x9b844468 ieee80211_sched_scan_stopped +EXPORT_SYMBOL net/mac80211/mac80211 0x9e080ef8 ieee80211_iter_keys +EXPORT_SYMBOL net/mac80211/mac80211 0x9e33d998 ieee80211_register_hw +EXPORT_SYMBOL net/mac80211/mac80211 0x9ec1a4d1 ieee80211_radar_detected +EXPORT_SYMBOL net/mac80211/mac80211 0xa03c7ed5 ieee80211_nan_func_match +EXPORT_SYMBOL net/mac80211/mac80211 0xa59fb19b ieee80211_queue_work +EXPORT_SYMBOL net/mac80211/mac80211 0xa8925c12 ieee80211_rx_irqsafe +EXPORT_SYMBOL net/mac80211/mac80211 0xadbfcb4d ieee80211_stop_queue +EXPORT_SYMBOL net/mac80211/mac80211 0xb11f9d6e ieee80211_sta_block_awake +EXPORT_SYMBOL net/mac80211/mac80211 0xb1bccbde ieee80211_tx_rate_update +EXPORT_SYMBOL net/mac80211/mac80211 0xb2431a18 ieee80211_free_txskb +EXPORT_SYMBOL net/mac80211/mac80211 0xb29b0bd4 ieee80211_queue_stopped +EXPORT_SYMBOL net/mac80211/mac80211 0xb2ee2330 ieee80211_wake_queue +EXPORT_SYMBOL net/mac80211/mac80211 0xb94ab98e rate_control_set_rates +EXPORT_SYMBOL net/mac80211/mac80211 0xbd64d53b ieee80211_get_buffered_bc +EXPORT_SYMBOL net/mac80211/mac80211 0xbe77b195 ieee80211_stop_tx_ba_cb_irqsafe +EXPORT_SYMBOL net/mac80211/mac80211 0xc088d050 __ieee80211_get_radio_led_name +EXPORT_SYMBOL net/mac80211/mac80211 0xc13630f9 ieee80211_unregister_hw +EXPORT_SYMBOL net/mac80211/mac80211 0xc8ce9e2b ieee80211_tx_status_ext +EXPORT_SYMBOL net/mac80211/mac80211 0xcd2aa99b ieee80211_generic_frame_duration +EXPORT_SYMBOL net/mac80211/mac80211 0xcf656115 __ieee80211_get_tx_led_name +EXPORT_SYMBOL net/mac80211/mac80211 0xd20cf1a1 ieee80211_ctstoself_get +EXPORT_SYMBOL net/mac80211/mac80211 0xd5525771 ieee80211_tx_prepare_skb +EXPORT_SYMBOL net/mac80211/mac80211 0xd69d6c84 ieee80211_send_eosp_nullfunc +EXPORT_SYMBOL net/mac80211/mac80211 0xde924eb3 wiphy_to_ieee80211_hw +EXPORT_SYMBOL net/mac80211/mac80211 0xe0e68006 ieee80211_alloc_hw_nm +EXPORT_SYMBOL net/mac80211/mac80211 0xe246c6da ieee80211_find_sta +EXPORT_SYMBOL net/mac80211/mac80211 0xe5633543 ieee80211_tx_status_irqsafe +EXPORT_SYMBOL net/mac80211/mac80211 0xe5c9c679 __ieee80211_create_tpt_led_trigger +EXPORT_SYMBOL net/mac80211/mac80211 0xe6c8cf7b ieee80211_chswitch_done +EXPORT_SYMBOL net/mac80211/mac80211 0xe6da542f ieee80211_set_hw_80211_encap +EXPORT_SYMBOL net/mac80211/mac80211 0xe6f603a4 ieee80211_scan_completed +EXPORT_SYMBOL net/mac80211/mac80211 0xe8142893 ieee80211_start_tx_ba_session +EXPORT_SYMBOL net/mac80211/mac80211 0xe85b9d32 ieee80211_sta_ps_transition +EXPORT_SYMBOL net/mac80211/mac80211 0xedf3d689 ieee80211_disable_rssi_reports +EXPORT_SYMBOL net/mac80211/mac80211 0xeeab2f00 ieee80211_pspoll_get +EXPORT_SYMBOL net/mac80211/mac80211 0xf41b1c25 ieee80211_rate_control_register +EXPORT_SYMBOL net/mac80211/mac80211 0xf744b229 ieee80211_tdls_oper_request +EXPORT_SYMBOL net/mac80211/mac80211 0xf7d128d5 ieee80211_cqm_beacon_loss_notify +EXPORT_SYMBOL net/mac80211/mac80211 0xfd604f57 ieee80211_get_tx_rates +EXPORT_SYMBOL net/mac80211/mac80211 0xffa9ec12 ieee80211_sta_register_airtime +EXPORT_SYMBOL net/mac802154/mac802154 0x308cbd55 ieee802154_stop_queue +EXPORT_SYMBOL net/mac802154/mac802154 0x50122d0a ieee802154_wake_queue +EXPORT_SYMBOL net/mac802154/mac802154 0x7c5ebe4f ieee802154_free_hw +EXPORT_SYMBOL net/mac802154/mac802154 0x956186de ieee802154_xmit_complete +EXPORT_SYMBOL net/mac802154/mac802154 0xac84083c ieee802154_register_hw +EXPORT_SYMBOL net/mac802154/mac802154 0xc7fc154c ieee802154_unregister_hw +EXPORT_SYMBOL net/mac802154/mac802154 0xfcb7119c ieee802154_alloc_hw +EXPORT_SYMBOL net/mac802154/mac802154 0xfd47924d ieee802154_rx_irqsafe +EXPORT_SYMBOL net/netfilter/ipvs/ip_vs 0x029a3b4e ip_vs_conn_out_get +EXPORT_SYMBOL net/netfilter/ipvs/ip_vs 0x0cd23518 ip_vs_conn_new +EXPORT_SYMBOL net/netfilter/ipvs/ip_vs 0x0d62472a ip_vs_scheduler_err +EXPORT_SYMBOL net/netfilter/ipvs/ip_vs 0x1a89b1b9 register_ip_vs_app_inc +EXPORT_SYMBOL net/netfilter/ipvs/ip_vs 0x340f4a54 ip_vs_nfct_expect_related +EXPORT_SYMBOL net/netfilter/ipvs/ip_vs 0x3ee13db6 ip_vs_conn_in_get +EXPORT_SYMBOL net/netfilter/ipvs/ip_vs 0x408b0b7a register_ip_vs_scheduler +EXPORT_SYMBOL net/netfilter/ipvs/ip_vs 0x46d14a70 register_ip_vs_app +EXPORT_SYMBOL net/netfilter/ipvs/ip_vs 0x56acad54 unregister_ip_vs_scheduler +EXPORT_SYMBOL net/netfilter/ipvs/ip_vs 0x697b9d5c ip_vs_proto_data_get +EXPORT_SYMBOL net/netfilter/ipvs/ip_vs 0x8d610410 ip_vs_conn_put +EXPORT_SYMBOL net/netfilter/ipvs/ip_vs 0xcad6e6f8 ip_vs_new_conn_out +EXPORT_SYMBOL net/netfilter/ipvs/ip_vs 0xd831a1a2 ip_vs_proto_name +EXPORT_SYMBOL net/netfilter/ipvs/ip_vs 0xd90d2829 ip_vs_tcp_conn_listen +EXPORT_SYMBOL net/netfilter/ipvs/ip_vs 0xdb5f6841 unregister_ip_vs_app +EXPORT_SYMBOL net/netfilter/ipvs/ip_vs 0xe18b2af1 ip_vs_proto_get +EXPORT_SYMBOL net/netfilter/nf_conntrack 0xb8bce998 nf_ct_ext_add +EXPORT_SYMBOL net/netfilter/nf_conntrack_pptp 0xf2a36612 pptp_msg_name +EXPORT_SYMBOL net/netfilter/nf_nat 0x22365d34 nf_nat_follow_master +EXPORT_SYMBOL net/netfilter/nf_nat 0x435ec897 nf_nat_setup_info +EXPORT_SYMBOL net/netfilter/nf_nat 0x8f74517b __nf_nat_mangle_tcp_packet +EXPORT_SYMBOL net/netfilter/nf_nat 0x8fd0b6db nf_xfrm_me_harder +EXPORT_SYMBOL net/netfilter/nf_nat 0xf337f3d7 nf_nat_mangle_udp_packet +EXPORT_SYMBOL net/netfilter/nft_fib 0xe8203072 nft_fib_policy +EXPORT_SYMBOL net/netfilter/x_tables 0x0d7f5fcd xt_alloc_entry_offsets +EXPORT_SYMBOL net/netfilter/x_tables 0x11c48388 xt_unregister_matches +EXPORT_SYMBOL net/netfilter/x_tables 0x14c4d08e xt_table_get_private_protected +EXPORT_SYMBOL net/netfilter/x_tables 0x1bb4c0e5 xt_register_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 0x5c322b2b xt_find_match +EXPORT_SYMBOL net/netfilter/x_tables 0x6c65bbc1 xt_unregister_target +EXPORT_SYMBOL net/netfilter/x_tables 0x794f501d xt_register_match +EXPORT_SYMBOL net/netfilter/x_tables 0x977fd4bf xt_alloc_table_info +EXPORT_SYMBOL net/netfilter/x_tables 0xa25fc115 xt_compat_check_entry_offsets +EXPORT_SYMBOL net/netfilter/x_tables 0xc0a25b6a xt_register_target +EXPORT_SYMBOL net/netfilter/x_tables 0xcb3e91cc xt_counters_alloc +EXPORT_SYMBOL net/netfilter/x_tables 0xd18fd5d7 xt_unregister_match +EXPORT_SYMBOL net/netfilter/x_tables 0xd87ae60d xt_check_entry_offsets +EXPORT_SYMBOL net/netfilter/x_tables 0xd8c842d9 xt_register_targets +EXPORT_SYMBOL net/netfilter/x_tables 0xe204e042 xt_free_table_info +EXPORT_SYMBOL net/netfilter/x_tables 0xebc12f7f xt_unregister_targets +EXPORT_SYMBOL net/netfilter/x_tables 0xfef779fa xt_find_jump_offset +EXPORT_SYMBOL net/nfc/hci/hci 0x0e7cb481 nfc_hci_allocate_device +EXPORT_SYMBOL net/nfc/hci/hci 0x14eec60f nfc_hci_target_discovered +EXPORT_SYMBOL net/nfc/hci/hci 0x18102f7d nfc_hci_get_clientdata +EXPORT_SYMBOL net/nfc/hci/hci 0x1dd2e78d nfc_hci_register_device +EXPORT_SYMBOL net/nfc/hci/hci 0x28412f89 nfc_hci_free_device +EXPORT_SYMBOL net/nfc/hci/hci 0x2c92c874 nfc_hci_recv_frame +EXPORT_SYMBOL net/nfc/hci/hci 0x2eb27aeb nfc_hci_set_param +EXPORT_SYMBOL net/nfc/hci/hci 0x300772d0 nfc_hci_unregister_device +EXPORT_SYMBOL net/nfc/hci/hci 0x5a6eac59 nfc_hci_send_event +EXPORT_SYMBOL net/nfc/hci/hci 0x6190bac5 nfc_hci_reset_pipes +EXPORT_SYMBOL net/nfc/hci/hci 0x648474e7 nfc_hci_set_clientdata +EXPORT_SYMBOL net/nfc/hci/hci 0x6fa8132d nfc_llc_stop +EXPORT_SYMBOL net/nfc/hci/hci 0x6faded7f nfc_hci_reset_pipes_per_host +EXPORT_SYMBOL net/nfc/hci/hci 0x74fe3670 nfc_hci_result_to_errno +EXPORT_SYMBOL net/nfc/hci/hci 0x7f77bd02 nfc_hci_send_cmd_async +EXPORT_SYMBOL net/nfc/hci/hci 0x9e677837 nfc_hci_send_cmd +EXPORT_SYMBOL net/nfc/hci/hci 0xa49893db nfc_hci_connect_gate +EXPORT_SYMBOL net/nfc/hci/hci 0xaa8a127d nfc_hci_get_param +EXPORT_SYMBOL net/nfc/hci/hci 0xaee200a9 nfc_hci_disconnect_gate +EXPORT_SYMBOL net/nfc/hci/hci 0xafed8e3b nfc_hci_disconnect_all_gates +EXPORT_SYMBOL net/nfc/hci/hci 0xbe9b578f nfc_hci_driver_failure +EXPORT_SYMBOL net/nfc/hci/hci 0xdd231c55 nfc_hci_sak_to_protocol +EXPORT_SYMBOL net/nfc/hci/hci 0xff53f4aa nfc_llc_start +EXPORT_SYMBOL net/nfc/nci/nci 0x071c90fe nci_free_device +EXPORT_SYMBOL net/nfc/nci/nci 0x09d9c0ce nci_unregister_device +EXPORT_SYMBOL net/nfc/nci/nci 0x15658601 nci_core_cmd +EXPORT_SYMBOL net/nfc/nci/nci 0x2120d507 nci_hci_dev_session_init +EXPORT_SYMBOL net/nfc/nci/nci 0x315ca47e nci_allocate_device +EXPORT_SYMBOL net/nfc/nci/nci 0x422f837a nci_register_device +EXPORT_SYMBOL net/nfc/nci/nci 0x43d6cf66 nci_hci_set_param +EXPORT_SYMBOL net/nfc/nci/nci 0x590930bb nci_req_complete +EXPORT_SYMBOL net/nfc/nci/nci 0x5d1bd2dc nci_hci_open_pipe +EXPORT_SYMBOL net/nfc/nci/nci 0x5e9bd7a9 nci_hci_clear_all_pipes +EXPORT_SYMBOL net/nfc/nci/nci 0x754005eb nci_core_reset +EXPORT_SYMBOL net/nfc/nci/nci 0x75b76a52 nci_hci_connect_gate +EXPORT_SYMBOL net/nfc/nci/nci 0x75ea7a35 nci_core_conn_create +EXPORT_SYMBOL net/nfc/nci/nci 0x7658be1b nci_hci_get_param +EXPORT_SYMBOL net/nfc/nci/nci 0x825727b9 nci_nfcc_loopback +EXPORT_SYMBOL net/nfc/nci/nci 0x8b9b4bad nci_conn_max_data_pkt_payload_size +EXPORT_SYMBOL net/nfc/nci/nci 0x923e6b9e nci_get_conn_info_by_dest_type_params +EXPORT_SYMBOL net/nfc/nci/nci 0xa4292f11 nci_send_cmd +EXPORT_SYMBOL net/nfc/nci/nci 0xaa236b85 nci_set_config +EXPORT_SYMBOL net/nfc/nci/nci 0xb609d908 nci_hci_send_cmd +EXPORT_SYMBOL net/nfc/nci/nci 0xb70baf0b nci_recv_frame +EXPORT_SYMBOL net/nfc/nci/nci 0xba490602 nci_to_errno +EXPORT_SYMBOL net/nfc/nci/nci 0xc165c5ff nci_core_conn_close +EXPORT_SYMBOL net/nfc/nci/nci 0xc1ce9a42 nci_hci_send_event +EXPORT_SYMBOL net/nfc/nci/nci 0xc59646b8 nci_nfcee_mode_set +EXPORT_SYMBOL net/nfc/nci/nci 0xcdbe9f62 nci_send_data +EXPORT_SYMBOL net/nfc/nci/nci 0xd17424b3 nci_nfcee_discover +EXPORT_SYMBOL net/nfc/nci/nci 0xdf058007 nci_core_init +EXPORT_SYMBOL net/nfc/nci/nci 0xdf26561d nci_send_frame +EXPORT_SYMBOL net/nfc/nci/nci 0xe3453d67 nci_prop_cmd +EXPORT_SYMBOL net/nfc/nfc 0x05e0ea79 nfc_unregister_device +EXPORT_SYMBOL net/nfc/nfc 0x151565b9 nfc_targets_found +EXPORT_SYMBOL net/nfc/nfc 0x1a04fb50 nfc_driver_failure +EXPORT_SYMBOL net/nfc/nfc 0x204b6ee4 nfc_proto_unregister +EXPORT_SYMBOL net/nfc/nfc 0x24ab8130 nfc_tm_activated +EXPORT_SYMBOL net/nfc/nfc 0x26e8d69d nfc_find_se +EXPORT_SYMBOL net/nfc/nfc 0x37876472 nfc_remove_se +EXPORT_SYMBOL net/nfc/nfc 0x3a0fe3f0 nfc_se_transaction +EXPORT_SYMBOL net/nfc/nfc 0x3ff9f524 nfc_get_local_general_bytes +EXPORT_SYMBOL net/nfc/nfc 0x449d824c nfc_tm_data_received +EXPORT_SYMBOL net/nfc/nfc 0x54bafe00 nfc_send_to_raw_sock +EXPORT_SYMBOL net/nfc/nfc 0x587b2050 nfc_set_remote_general_bytes +EXPORT_SYMBOL net/nfc/nfc 0x6f409a89 nfc_register_device +EXPORT_SYMBOL net/nfc/nfc 0x82f15e62 nfc_fw_download_done +EXPORT_SYMBOL net/nfc/nfc 0x85ec12ab nfc_proto_register +EXPORT_SYMBOL net/nfc/nfc 0x88a0bff7 nfc_se_connectivity +EXPORT_SYMBOL net/nfc/nfc 0xa6ffdbe0 nfc_vendor_cmd_reply +EXPORT_SYMBOL net/nfc/nfc 0xb87d2fa3 nfc_allocate_device +EXPORT_SYMBOL net/nfc/nfc 0xbe86c04d nfc_add_se +EXPORT_SYMBOL net/nfc/nfc 0xd0b51b1a nfc_alloc_recv_skb +EXPORT_SYMBOL net/nfc/nfc 0xd76b57fe nfc_tm_deactivated +EXPORT_SYMBOL net/nfc/nfc 0xddc74d67 nfc_class +EXPORT_SYMBOL net/nfc/nfc 0xf4145884 __nfc_alloc_vendor_cmd_reply_skb +EXPORT_SYMBOL net/nfc/nfc 0xf53ac256 nfc_target_lost +EXPORT_SYMBOL net/nfc/nfc 0xfcd3f15f nfc_dep_link_is_up +EXPORT_SYMBOL net/nfc/nfc_digital 0x116b57ba nfc_digital_allocate_device +EXPORT_SYMBOL net/nfc/nfc_digital 0x187d2ebe nfc_digital_unregister_device +EXPORT_SYMBOL net/nfc/nfc_digital 0x7045b532 nfc_digital_register_device +EXPORT_SYMBOL net/nfc/nfc_digital 0xa1bdc200 nfc_digital_free_device +EXPORT_SYMBOL net/phonet/phonet 0x2abf2efe pn_sock_unhash +EXPORT_SYMBOL net/phonet/phonet 0x2f4597f8 pn_skb_send +EXPORT_SYMBOL net/phonet/phonet 0x654260d2 phonet_proto_register +EXPORT_SYMBOL net/phonet/phonet 0x6ea6bd3a pn_sock_hash +EXPORT_SYMBOL net/phonet/phonet 0x753fab0c phonet_stream_ops +EXPORT_SYMBOL net/phonet/phonet 0x914542a7 pn_sock_get_port +EXPORT_SYMBOL net/phonet/phonet 0xa86c846d phonet_header_ops +EXPORT_SYMBOL net/phonet/phonet 0xedf7409e phonet_proto_unregister +EXPORT_SYMBOL net/rxrpc/rxrpc 0x0110c19c rxrpc_get_null_key +EXPORT_SYMBOL net/rxrpc/rxrpc 0x033b2112 rxrpc_kernel_check_life +EXPORT_SYMBOL net/rxrpc/rxrpc 0x2bac746f rxrpc_kernel_send_data +EXPORT_SYMBOL net/rxrpc/rxrpc 0x31bf3ca3 rxrpc_debug_id +EXPORT_SYMBOL net/rxrpc/rxrpc 0x33892f77 rxrpc_kernel_get_reply_time +EXPORT_SYMBOL net/rxrpc/rxrpc 0x397c7640 rxrpc_kernel_get_epoch +EXPORT_SYMBOL net/rxrpc/rxrpc 0x3c995a48 rxrpc_kernel_recv_data +EXPORT_SYMBOL net/rxrpc/rxrpc 0x41d487b6 rxrpc_kernel_new_call_notification +EXPORT_SYMBOL net/rxrpc/rxrpc 0x517badfe rxrpc_kernel_begin_call +EXPORT_SYMBOL net/rxrpc/rxrpc 0x6570753d rxrpc_kernel_get_srtt +EXPORT_SYMBOL net/rxrpc/rxrpc 0x659f08d3 key_type_rxrpc +EXPORT_SYMBOL net/rxrpc/rxrpc 0x74f185da rxrpc_kernel_get_peer +EXPORT_SYMBOL net/rxrpc/rxrpc 0x8f62c9cc rxrpc_kernel_set_max_life +EXPORT_SYMBOL net/rxrpc/rxrpc 0x9104e49c rxrpc_get_server_data_key +EXPORT_SYMBOL net/rxrpc/rxrpc 0x972ab20e rxrpc_kernel_abort_call +EXPORT_SYMBOL net/rxrpc/rxrpc 0x98a90372 rxrpc_kernel_set_tx_length +EXPORT_SYMBOL net/rxrpc/rxrpc 0xee7521c3 rxrpc_kernel_charge_accept +EXPORT_SYMBOL net/rxrpc/rxrpc 0xf043933f rxrpc_sock_set_min_security_level +EXPORT_SYMBOL net/rxrpc/rxrpc 0xf23f38f0 rxrpc_kernel_end_call +EXPORT_SYMBOL net/sctp/sctp 0xed6ed111 sctp_do_peeloff +EXPORT_SYMBOL net/sunrpc/auth_gss/auth_rpcgss 0x4f4bbf1f gss_mech_put +EXPORT_SYMBOL net/sunrpc/auth_gss/auth_rpcgss 0x56b58707 gss_mech_get +EXPORT_SYMBOL net/sunrpc/auth_gss/auth_rpcgss 0xba6eabeb gss_pseudoflavor_to_service +EXPORT_SYMBOL net/sunrpc/sunrpc 0x3d411518 xdr_truncate_encode +EXPORT_SYMBOL net/sunrpc/sunrpc 0x4df3b121 xdr_restrict_buflen +EXPORT_SYMBOL net/sunrpc/sunrpc 0x882f5c79 svc_pool_stats_open +EXPORT_SYMBOL net/tipc/tipc 0x81b0265f tipc_nl_sk_walk +EXPORT_SYMBOL net/tipc/tipc 0x8a7888ad tipc_dump_done +EXPORT_SYMBOL net/tipc/tipc 0xbb168c83 tipc_dump_start +EXPORT_SYMBOL net/tipc/tipc 0xf49cc9fb tipc_sk_fill_sock_diag +EXPORT_SYMBOL net/tls/tls 0x8d031e29 tls_get_record +EXPORT_SYMBOL net/wimax/wimax 0xdb67be4c wimax_rfkill +EXPORT_SYMBOL net/wimax/wimax 0xde1c8db4 wimax_reset +EXPORT_SYMBOL net/wireless/cfg80211 0x00a7e6a5 cfg80211_assoc_timeout +EXPORT_SYMBOL net/wireless/cfg80211 0x06eaa2e9 cfg80211_check_station_change +EXPORT_SYMBOL net/wireless/cfg80211 0x06ee3d2e cfg80211_pmksa_candidate_notify +EXPORT_SYMBOL net/wireless/cfg80211 0x09f2ec61 cfg80211_rx_mlme_mgmt +EXPORT_SYMBOL net/wireless/cfg80211 0x117aca91 cfg80211_merge_profile +EXPORT_SYMBOL net/wireless/cfg80211 0x119fafe1 cfg80211_rx_assoc_resp +EXPORT_SYMBOL net/wireless/cfg80211 0x127c951e cfg80211_remain_on_channel_expired +EXPORT_SYMBOL net/wireless/cfg80211 0x14731fd0 wiphy_register +EXPORT_SYMBOL net/wireless/cfg80211 0x15a37cf3 cfg80211_calculate_bitrate +EXPORT_SYMBOL net/wireless/cfg80211 0x172dcb4c cfg80211_crit_proto_stopped +EXPORT_SYMBOL net/wireless/cfg80211 0x1879fcbd bridge_tunnel_header +EXPORT_SYMBOL net/wireless/cfg80211 0x18b53545 cfg80211_chandef_create +EXPORT_SYMBOL net/wireless/cfg80211 0x19493bd3 cfg80211_ibss_joined +EXPORT_SYMBOL net/wireless/cfg80211 0x1aa1e7a6 cfg80211_notify_new_peer_candidate +EXPORT_SYMBOL net/wireless/cfg80211 0x1ce2497f reg_query_regdb_wmm +EXPORT_SYMBOL net/wireless/cfg80211 0x1d5fd025 ieee80211_get_hdrlen_from_skb +EXPORT_SYMBOL net/wireless/cfg80211 0x1e56303a cfg80211_tx_mlme_mgmt +EXPORT_SYMBOL net/wireless/cfg80211 0x1e9dc5fb cfg80211_get_drvinfo +EXPORT_SYMBOL net/wireless/cfg80211 0x22db7c95 __cfg80211_alloc_reply_skb +EXPORT_SYMBOL net/wireless/cfg80211 0x275269b3 ieee80211_ie_split_ric +EXPORT_SYMBOL net/wireless/cfg80211 0x28446f90 ieee80211_get_response_rate +EXPORT_SYMBOL net/wireless/cfg80211 0x2a9e89b7 cfg80211_michael_mic_failure +EXPORT_SYMBOL net/wireless/cfg80211 0x2c8063a1 cfg80211_sched_scan_stopped_rtnl +EXPORT_SYMBOL net/wireless/cfg80211 0x2e6bebf2 cfg80211_nan_func_terminated +EXPORT_SYMBOL net/wireless/cfg80211 0x33ef10cb __cfg80211_send_event_skb +EXPORT_SYMBOL net/wireless/cfg80211 0x344a8343 cfg80211_scan_done +EXPORT_SYMBOL net/wireless/cfg80211 0x36e328b1 cfg80211_iftype_allowed +EXPORT_SYMBOL net/wireless/cfg80211 0x37abbacf ieee80211_get_num_supported_channels +EXPORT_SYMBOL net/wireless/cfg80211 0x3b607add cfg80211_mgmt_tx_status +EXPORT_SYMBOL net/wireless/cfg80211 0x3bd8aaa1 ieee80211_operating_class_to_band +EXPORT_SYMBOL net/wireless/cfg80211 0x3be42d1b cfg80211_rx_mgmt_khz +EXPORT_SYMBOL net/wireless/cfg80211 0x40169769 cfg80211_connect_done +EXPORT_SYMBOL net/wireless/cfg80211 0x43f5efcf cfg80211_sinfo_alloc_tid_stats +EXPORT_SYMBOL net/wireless/cfg80211 0x46312808 ieee80211_radiotap_iterator_next +EXPORT_SYMBOL net/wireless/cfg80211 0x46d7e7aa cfg80211_unlink_bss +EXPORT_SYMBOL net/wireless/cfg80211 0x4b0b34ab cfg80211_unregister_wdev +EXPORT_SYMBOL net/wireless/cfg80211 0x55162353 cfg80211_reg_can_beacon_relax +EXPORT_SYMBOL net/wireless/cfg80211 0x5af4269c cfg80211_send_layer2_update +EXPORT_SYMBOL net/wireless/cfg80211 0x5e37ea76 cfg80211_abandon_assoc +EXPORT_SYMBOL net/wireless/cfg80211 0x667ff828 cfg80211_radar_event +EXPORT_SYMBOL net/wireless/cfg80211 0x67073383 cfg80211_report_wowlan_wakeup +EXPORT_SYMBOL net/wireless/cfg80211 0x67413cc8 cfg80211_control_port_tx_status +EXPORT_SYMBOL net/wireless/cfg80211 0x67d86dcd ieee80211_chandef_to_operating_class +EXPORT_SYMBOL net/wireless/cfg80211 0x67e2885f cfg80211_auth_timeout +EXPORT_SYMBOL net/wireless/cfg80211 0x68600c40 ieee80211_mandatory_rates +EXPORT_SYMBOL net/wireless/cfg80211 0x69b18f43 rfc1042_header +EXPORT_SYMBOL net/wireless/cfg80211 0x6bedf402 ieee80211_freq_khz_to_channel +EXPORT_SYMBOL net/wireless/cfg80211 0x6c81235f cfg80211_classify8021d +EXPORT_SYMBOL net/wireless/cfg80211 0x6e185bdc cfg80211_cqm_rssi_notify +EXPORT_SYMBOL net/wireless/cfg80211 0x709b9076 cfg80211_iter_combinations +EXPORT_SYMBOL net/wireless/cfg80211 0x7467f5cf cfg80211_stop_iface +EXPORT_SYMBOL net/wireless/cfg80211 0x76f4374d cfg80211_rx_spurious_frame +EXPORT_SYMBOL net/wireless/cfg80211 0x794076ad cfg80211_sta_opmode_change_notify +EXPORT_SYMBOL net/wireless/cfg80211 0x79b82a71 cfg80211_find_vendor_elem +EXPORT_SYMBOL net/wireless/cfg80211 0x7ba367f9 wiphy_apply_custom_regulatory +EXPORT_SYMBOL net/wireless/cfg80211 0x7c3ac925 ieee80211_get_vht_max_nss +EXPORT_SYMBOL net/wireless/cfg80211 0x7e93d588 cfg80211_cac_event +EXPORT_SYMBOL net/wireless/cfg80211 0x7ef39823 ieee80211_hdrlen +EXPORT_SYMBOL net/wireless/cfg80211 0x81a471d6 cfg80211_chandef_valid +EXPORT_SYMBOL net/wireless/cfg80211 0x845d257d cfg80211_cqm_pktloss_notify +EXPORT_SYMBOL net/wireless/cfg80211 0x88336fdf regulatory_pre_cac_allowed +EXPORT_SYMBOL net/wireless/cfg80211 0x888929de cfg80211_ch_switch_started_notify +EXPORT_SYMBOL net/wireless/cfg80211 0x8b4d2b87 cfg80211_gtk_rekey_notify +EXPORT_SYMBOL net/wireless/cfg80211 0x8e1de753 cfg80211_del_sta_sinfo +EXPORT_SYMBOL net/wireless/cfg80211 0x8fa02936 cfg80211_free_nan_func +EXPORT_SYMBOL net/wireless/cfg80211 0x90cb7e12 wiphy_unregister +EXPORT_SYMBOL net/wireless/cfg80211 0x92663b6a cfg80211_report_obss_beacon_khz +EXPORT_SYMBOL net/wireless/cfg80211 0x950f8adf cfg80211_inform_bss_frame_data +EXPORT_SYMBOL net/wireless/cfg80211 0x957c0ad4 cfg80211_put_bss +EXPORT_SYMBOL net/wireless/cfg80211 0x9b31254e cfg80211_ft_event +EXPORT_SYMBOL net/wireless/cfg80211 0x9d6cba30 cfg80211_find_elem_match +EXPORT_SYMBOL net/wireless/cfg80211 0x9efd7c30 ieee80211_get_channel_khz +EXPORT_SYMBOL net/wireless/cfg80211 0xa0403740 cfg80211_rx_control_port +EXPORT_SYMBOL net/wireless/cfg80211 0xa13e5214 cfg80211_disconnected +EXPORT_SYMBOL net/wireless/cfg80211 0xa697b9b7 cfg80211_rx_unprot_mlme_mgmt +EXPORT_SYMBOL net/wireless/cfg80211 0xa854709f ieee80211_data_to_8023_exthdr +EXPORT_SYMBOL net/wireless/cfg80211 0xab9e8412 regulatory_hint +EXPORT_SYMBOL net/wireless/cfg80211 0xac97a207 ieee80211_radiotap_iterator_init +EXPORT_SYMBOL net/wireless/cfg80211 0xafe8b001 ieee80211_channel_to_freq_khz +EXPORT_SYMBOL net/wireless/cfg80211 0xb1f6c9e2 cfg80211_sched_scan_stopped +EXPORT_SYMBOL net/wireless/cfg80211 0xb6f825a4 cfg80211_ref_bss +EXPORT_SYMBOL net/wireless/cfg80211 0xb7414136 cfg80211_rx_unexpected_4addr_frame +EXPORT_SYMBOL net/wireless/cfg80211 0xb90f8cae regulatory_set_wiphy_regd_sync_rtnl +EXPORT_SYMBOL net/wireless/cfg80211 0xba8bc18c cfg80211_inform_bss_data +EXPORT_SYMBOL net/wireless/cfg80211 0xbe2c9512 wiphy_rfkill_start_polling +EXPORT_SYMBOL net/wireless/cfg80211 0xbed8ad02 freq_reg_info +EXPORT_SYMBOL net/wireless/cfg80211 0xc08f4b55 regulatory_set_wiphy_regd +EXPORT_SYMBOL net/wireless/cfg80211 0xc103c46d cfg80211_cqm_beacon_loss_notify +EXPORT_SYMBOL net/wireless/cfg80211 0xc463c133 cfg80211_roamed +EXPORT_SYMBOL net/wireless/cfg80211 0xc7eec6f2 cfg80211_get_bss +EXPORT_SYMBOL net/wireless/cfg80211 0xc8af84bf cfg80211_new_sta +EXPORT_SYMBOL net/wireless/cfg80211 0xc8ca96bd cfg80211_external_auth_request +EXPORT_SYMBOL net/wireless/cfg80211 0xca74adca cfg80211_check_combinations +EXPORT_SYMBOL net/wireless/cfg80211 0xcc1a7c48 cfg80211_is_element_inherited +EXPORT_SYMBOL net/wireless/cfg80211 0xce5cc586 cfg80211_chandef_dfs_required +EXPORT_SYMBOL net/wireless/cfg80211 0xcf2f33e1 wiphy_rfkill_set_hw_state +EXPORT_SYMBOL net/wireless/cfg80211 0xd56d55f3 ieee80211_get_mesh_hdrlen +EXPORT_SYMBOL net/wireless/cfg80211 0xd5eb0895 cfg80211_nan_match +EXPORT_SYMBOL net/wireless/cfg80211 0xd7db0d95 cfg80211_ch_switch_notify +EXPORT_SYMBOL net/wireless/cfg80211 0xd87227b8 cfg80211_reg_can_beacon +EXPORT_SYMBOL net/wireless/cfg80211 0xda159c2a wiphy_new_nm +EXPORT_SYMBOL net/wireless/cfg80211 0xdb7a012c ieee80211_amsdu_to_8023s +EXPORT_SYMBOL net/wireless/cfg80211 0xdba126c1 reg_initiator_name +EXPORT_SYMBOL net/wireless/cfg80211 0xdfa56c95 wiphy_rfkill_stop_polling +EXPORT_SYMBOL net/wireless/cfg80211 0xe2392a3d cfg80211_bss_iter +EXPORT_SYMBOL net/wireless/cfg80211 0xe560c2b4 cfg80211_sched_scan_results +EXPORT_SYMBOL net/wireless/cfg80211 0xe6c01391 cfg80211_port_authorized +EXPORT_SYMBOL net/wireless/cfg80211 0xe85b5f89 cfg80211_ready_on_channel +EXPORT_SYMBOL net/wireless/cfg80211 0xee923838 cfg80211_tx_mgmt_expired +EXPORT_SYMBOL net/wireless/cfg80211 0xef62eac4 cfg80211_update_owe_info_event +EXPORT_SYMBOL net/wireless/cfg80211 0xf259e88e cfg80211_conn_failed +EXPORT_SYMBOL net/wireless/cfg80211 0xf31f5b10 cfg80211_tdls_oper_request +EXPORT_SYMBOL net/wireless/cfg80211 0xf402320c cfg80211_chandef_usable +EXPORT_SYMBOL net/wireless/cfg80211 0xf4785aa6 cfg80211_cqm_txe_notify +EXPORT_SYMBOL net/wireless/cfg80211 0xf5596d89 cfg80211_get_p2p_attr +EXPORT_SYMBOL net/wireless/cfg80211 0xf7ec46ca cfg80211_probe_status +EXPORT_SYMBOL net/wireless/cfg80211 0xfae8514f cfg80211_chandef_compatible +EXPORT_SYMBOL net/wireless/cfg80211 0xfb17fb27 cfg80211_get_station +EXPORT_SYMBOL net/wireless/cfg80211 0xfd75e97c __cfg80211_alloc_event_skb +EXPORT_SYMBOL net/wireless/cfg80211 0xff05a3a7 wiphy_free +EXPORT_SYMBOL net/wireless/cfg80211 0xff0c113a ieee80211_bss_get_elem +EXPORT_SYMBOL net/wireless/lib80211 0x28f1cfe3 lib80211_crypt_info_free +EXPORT_SYMBOL net/wireless/lib80211 0x3ca9874f lib80211_unregister_crypto_ops +EXPORT_SYMBOL net/wireless/lib80211 0x60a5a0df lib80211_crypt_info_init +EXPORT_SYMBOL net/wireless/lib80211 0x65a4a95b lib80211_register_crypto_ops +EXPORT_SYMBOL net/wireless/lib80211 0xa303e356 lib80211_get_crypto_ops +EXPORT_SYMBOL net/wireless/lib80211 0xb2991733 lib80211_crypt_delayed_deinit +EXPORT_SYMBOL sound/ac97_bus 0xd7b4c8ca ac97_bus_type +EXPORT_SYMBOL sound/core/oss/snd-mixer-oss 0x9735d3d8 snd_mixer_oss_ioctl_card +EXPORT_SYMBOL sound/core/seq/snd-seq 0x1a724fcc snd_seq_kernel_client_ctl +EXPORT_SYMBOL sound/core/seq/snd-seq 0x2401f4c9 snd_seq_kernel_client_write_poll +EXPORT_SYMBOL sound/core/seq/snd-seq 0x3061c52d snd_use_lock_sync_helper +EXPORT_SYMBOL sound/core/seq/snd-seq 0x3fb4d161 snd_seq_kernel_client_dispatch +EXPORT_SYMBOL sound/core/seq/snd-seq 0x4237261e snd_seq_create_kernel_client +EXPORT_SYMBOL sound/core/seq/snd-seq 0x6bb71038 snd_seq_delete_kernel_client +EXPORT_SYMBOL sound/core/seq/snd-seq 0x7ac2f329 snd_seq_expand_var_event +EXPORT_SYMBOL sound/core/seq/snd-seq 0x7b8699eb snd_seq_event_port_detach +EXPORT_SYMBOL sound/core/seq/snd-seq 0xb8e448a0 snd_seq_set_queue_tempo +EXPORT_SYMBOL sound/core/seq/snd-seq 0xc4cc890f snd_seq_kernel_client_enqueue +EXPORT_SYMBOL sound/core/seq/snd-seq 0xe213d62f snd_seq_event_port_attach +EXPORT_SYMBOL sound/core/seq/snd-seq 0xe934da1d snd_seq_dump_var_event +EXPORT_SYMBOL sound/core/seq/snd-seq-midi-emul 0x6ea09972 snd_midi_channel_alloc_set +EXPORT_SYMBOL sound/core/seq/snd-seq-midi-emul 0x833a3e07 snd_midi_channel_set_clear +EXPORT_SYMBOL sound/core/seq/snd-seq-midi-emul 0xb9948d2c snd_midi_channel_free_set +EXPORT_SYMBOL sound/core/seq/snd-seq-midi-emul 0xf912f0c8 snd_midi_process_event +EXPORT_SYMBOL sound/core/seq/snd-seq-midi-event 0x734e4fba snd_midi_event_encode_byte +EXPORT_SYMBOL sound/core/seq/snd-seq-midi-event 0x7a3e0db5 snd_midi_event_no_status +EXPORT_SYMBOL sound/core/seq/snd-seq-midi-event 0x8150b379 snd_midi_event_reset_encode +EXPORT_SYMBOL sound/core/seq/snd-seq-midi-event 0xb8620ad8 snd_midi_event_reset_decode +EXPORT_SYMBOL sound/core/seq/snd-seq-midi-event 0xdd70dbf6 snd_midi_event_decode +EXPORT_SYMBOL sound/core/seq/snd-seq-midi-event 0xdd935c83 snd_midi_event_free +EXPORT_SYMBOL sound/core/seq/snd-seq-midi-event 0xe9e6c50c snd_midi_event_new +EXPORT_SYMBOL sound/core/seq/snd-seq-virmidi 0x20b2d1b1 snd_virmidi_new +EXPORT_SYMBOL sound/core/snd 0x0064a1cf snd_card_register +EXPORT_SYMBOL sound/core/snd 0x084b9682 snd_ctl_rename_id +EXPORT_SYMBOL sound/core/snd 0x0a60db0a snd_card_file_add +EXPORT_SYMBOL sound/core/snd 0x0ef97afa snd_device_new +EXPORT_SYMBOL sound/core/snd 0x0f38283b snd_jack_report +EXPORT_SYMBOL sound/core/snd 0x1816d863 snd_ctl_find_id +EXPORT_SYMBOL sound/core/snd 0x18e1683f snd_dma_program +EXPORT_SYMBOL sound/core/snd 0x191e88cf snd_dma_pointer +EXPORT_SYMBOL sound/core/snd 0x198788b4 snd_lookup_oss_minor_data +EXPORT_SYMBOL sound/core/snd 0x19b3fcab snd_card_set_id +EXPORT_SYMBOL sound/core/snd 0x1af1f2cb snd_register_oss_device +EXPORT_SYMBOL sound/core/snd 0x1bf12fa4 snd_ctl_make_virtual_master +EXPORT_SYMBOL sound/core/snd 0x20e7c8af snd_card_disconnect +EXPORT_SYMBOL sound/core/snd 0x24a94b26 snd_info_get_line +EXPORT_SYMBOL sound/core/snd 0x275386a3 snd_mixer_oss_notify_callback +EXPORT_SYMBOL sound/core/snd 0x2ccb13d6 snd_device_register +EXPORT_SYMBOL sound/core/snd 0x342a2354 copy_to_user_fromio +EXPORT_SYMBOL sound/core/snd 0x3971b4df snd_ecards_limit +EXPORT_SYMBOL sound/core/snd 0x3cb5296f snd_component_add +EXPORT_SYMBOL sound/core/snd 0x44b8eb88 snd_ctl_remove +EXPORT_SYMBOL sound/core/snd 0x4619c417 snd_ctl_boolean_mono_info +EXPORT_SYMBOL sound/core/snd 0x4626435a snd_unregister_oss_device +EXPORT_SYMBOL sound/core/snd 0x4a3ea5c0 snd_request_card +EXPORT_SYMBOL sound/core/snd 0x543971b3 snd_power_wait +EXPORT_SYMBOL sound/core/snd 0x58198f2c snd_device_free +EXPORT_SYMBOL sound/core/snd 0x5a6c115f snd_info_register +EXPORT_SYMBOL sound/core/snd 0x5a6ce0ba snd_unregister_device +EXPORT_SYMBOL sound/core/snd 0x5ca9959c snd_jack_add_new_kctl +EXPORT_SYMBOL sound/core/snd 0x5d0ee9dc snd_card_new +EXPORT_SYMBOL sound/core/snd 0x60a44906 snd_jack_set_parent +EXPORT_SYMBOL sound/core/snd 0x658ff608 snd_ctl_free_one +EXPORT_SYMBOL sound/core/snd 0x6958ce52 snd_register_device +EXPORT_SYMBOL sound/core/snd 0x70c15ac1 snd_dma_disable +EXPORT_SYMBOL sound/core/snd 0x71c880eb snd_ctl_new1 +EXPORT_SYMBOL sound/core/snd 0x73076315 snd_pci_quirk_lookup_id +EXPORT_SYMBOL sound/core/snd 0x75f39201 _snd_ctl_add_slave +EXPORT_SYMBOL sound/core/snd 0x86fd3083 snd_info_free_entry +EXPORT_SYMBOL sound/core/snd 0x8df3789f snd_oss_info_register +EXPORT_SYMBOL sound/core/snd 0x8f24f722 snd_seq_root +EXPORT_SYMBOL sound/core/snd 0x8f595b11 snd_major +EXPORT_SYMBOL sound/core/snd 0x91d89a2b snd_ctl_add +EXPORT_SYMBOL sound/core/snd 0x93cc5380 snd_info_create_card_entry +EXPORT_SYMBOL sound/core/snd 0x9e6d79f8 snd_info_get_str +EXPORT_SYMBOL sound/core/snd 0x9fa04d17 snd_ctl_notify +EXPORT_SYMBOL sound/core/snd 0xaa702319 snd_card_file_remove +EXPORT_SYMBOL sound/core/snd 0xac732654 snd_ctl_unregister_ioctl_compat +EXPORT_SYMBOL sound/core/snd 0xad1ff7d8 snd_ctl_replace +EXPORT_SYMBOL sound/core/snd 0xb2e5ae4a snd_lookup_minor_data +EXPORT_SYMBOL sound/core/snd 0xbe75d826 snd_ctl_remove_id +EXPORT_SYMBOL sound/core/snd 0xbf170e1e snd_ctl_register_ioctl_compat +EXPORT_SYMBOL sound/core/snd 0xc11024c5 snd_ctl_register_ioctl +EXPORT_SYMBOL sound/core/snd 0xc5a6d10b release_and_free_resource +EXPORT_SYMBOL sound/core/snd 0xc78808b0 snd_card_free_when_closed +EXPORT_SYMBOL sound/core/snd 0xca184733 snd_ctl_find_numid +EXPORT_SYMBOL sound/core/snd 0xcc6a729f snd_ctl_enum_info +EXPORT_SYMBOL sound/core/snd 0xd3cd9a9c snd_jack_set_key +EXPORT_SYMBOL sound/core/snd 0xd7c412c7 snd_jack_new +EXPORT_SYMBOL sound/core/snd 0xd827e6f0 snd_ctl_boolean_stereo_info +EXPORT_SYMBOL sound/core/snd 0xe2054bd7 snd_ctl_unregister_ioctl +EXPORT_SYMBOL sound/core/snd 0xe59f9156 snd_info_create_module_entry +EXPORT_SYMBOL sound/core/snd 0xedc64ab9 snd_pci_quirk_lookup +EXPORT_SYMBOL sound/core/snd 0xfaf8e5e4 snd_card_free +EXPORT_SYMBOL sound/core/snd 0xfffd89db copy_from_user_toio +EXPORT_SYMBOL sound/core/snd-compress 0x41739be7 snd_compr_free_pages +EXPORT_SYMBOL sound/core/snd-compress 0xcc73fe63 snd_compr_malloc_pages +EXPORT_SYMBOL sound/core/snd-hwdep 0x9a873cba snd_hwdep_new +EXPORT_SYMBOL sound/core/snd-pcm 0x00f9393f snd_pcm_lib_preallocate_pages +EXPORT_SYMBOL sound/core/snd-pcm 0x0283dfe3 _snd_pcm_hw_params_any +EXPORT_SYMBOL sound/core/snd-pcm 0x04cda566 snd_interval_refine +EXPORT_SYMBOL sound/core/snd-pcm 0x059f42fb snd_pcm_set_managed_buffer_all +EXPORT_SYMBOL sound/core/snd-pcm 0x09f2b969 snd_pcm_lib_malloc_pages +EXPORT_SYMBOL sound/core/snd-pcm 0x11eba48e snd_pcm_create_iec958_consumer_hw_params +EXPORT_SYMBOL sound/core/snd-pcm 0x1bbd5551 snd_pcm_hw_constraint_integer +EXPORT_SYMBOL sound/core/snd-pcm 0x1d027e4b snd_pcm_format_signed +EXPORT_SYMBOL sound/core/snd-pcm 0x22e7e61d snd_pcm_hw_param_last +EXPORT_SYMBOL sound/core/snd-pcm 0x3354c5ae snd_pcm_lib_preallocate_free_for_all +EXPORT_SYMBOL sound/core/snd-pcm 0x374d953b __snd_pcm_lib_xfer +EXPORT_SYMBOL sound/core/snd-pcm 0x3796bdcc snd_pcm_format_little_endian +EXPORT_SYMBOL sound/core/snd-pcm 0x39bf9301 _snd_pcm_hw_param_setempty +EXPORT_SYMBOL sound/core/snd-pcm 0x4638bad8 snd_pcm_mmap_data +EXPORT_SYMBOL sound/core/snd-pcm 0x4a280c7d snd_pcm_lib_preallocate_pages_for_all +EXPORT_SYMBOL sound/core/snd-pcm 0x4df0f92f snd_pcm_new_internal +EXPORT_SYMBOL sound/core/snd-pcm 0x4f816e9b snd_pcm_format_big_endian +EXPORT_SYMBOL sound/core/snd-pcm 0x503bd137 snd_interval_ranges +EXPORT_SYMBOL sound/core/snd-pcm 0x51d672f4 snd_pcm_set_ops +EXPORT_SYMBOL sound/core/snd-pcm 0x52e3e4a5 snd_pcm_hw_param_value +EXPORT_SYMBOL sound/core/snd-pcm 0x5dea1f4a snd_pcm_set_sync +EXPORT_SYMBOL sound/core/snd-pcm 0x5e7f4920 snd_pcm_format_set_silence +EXPORT_SYMBOL sound/core/snd-pcm 0x644920ea snd_pcm_hw_refine +EXPORT_SYMBOL sound/core/snd-pcm 0x650f8603 snd_pcm_format_silence_64 +EXPORT_SYMBOL sound/core/snd-pcm 0x66d111c5 snd_pcm_create_iec958_consumer +EXPORT_SYMBOL sound/core/snd-pcm 0x68a24153 snd_pcm_format_physical_width +EXPORT_SYMBOL sound/core/snd-pcm 0x69255f54 snd_pcm_hw_limit_rates +EXPORT_SYMBOL sound/core/snd-pcm 0x6942fa67 snd_pcm_suspend_all +EXPORT_SYMBOL sound/core/snd-pcm 0x6ef8fcd8 snd_pcm_format_linear +EXPORT_SYMBOL sound/core/snd-pcm 0x75196fb5 snd_pcm_hw_constraint_ratdens +EXPORT_SYMBOL sound/core/snd-pcm 0x75870b9a snd_sgbuf_get_chunk_size +EXPORT_SYMBOL sound/core/snd-pcm 0x7c57555d snd_pcm_kernel_ioctl +EXPORT_SYMBOL sound/core/snd-pcm 0x7df325ad snd_pcm_hw_param_first +EXPORT_SYMBOL sound/core/snd-pcm 0x80b49283 snd_pcm_open_substream +EXPORT_SYMBOL sound/core/snd-pcm 0x80d5bb06 snd_pcm_period_elapsed +EXPORT_SYMBOL sound/core/snd-pcm 0x834dc955 snd_pcm_format_size +EXPORT_SYMBOL sound/core/snd-pcm 0x87f45987 snd_dma_alloc_pages +EXPORT_SYMBOL sound/core/snd-pcm 0x93e48d8b snd_pcm_hw_constraint_msbits +EXPORT_SYMBOL sound/core/snd-pcm 0x94098ff8 snd_interval_list +EXPORT_SYMBOL sound/core/snd-pcm 0x97654a0c snd_pcm_hw_rule_add +EXPORT_SYMBOL sound/core/snd-pcm 0x9ccbf487 snd_pcm_hw_constraint_list +EXPORT_SYMBOL sound/core/snd-pcm 0xa4f4bdba _snd_pcm_lib_alloc_vmalloc_buffer +EXPORT_SYMBOL sound/core/snd-pcm 0xa61aa028 snd_pcm_format_unsigned +EXPORT_SYMBOL sound/core/snd-pcm 0xac437f7b snd_interval_ratnum +EXPORT_SYMBOL sound/core/snd-pcm 0xae08957b snd_pcm_lib_mmap_iomem +EXPORT_SYMBOL sound/core/snd-pcm 0xae7ebf9c snd_pcm_hw_constraint_pow2 +EXPORT_SYMBOL sound/core/snd-pcm 0xb6504869 snd_dma_alloc_pages_fallback +EXPORT_SYMBOL sound/core/snd-pcm 0xb67fdca5 snd_pcm_hw_constraint_ratnums +EXPORT_SYMBOL sound/core/snd-pcm 0xb7e16dec snd_pcm_hw_constraint_minmax +EXPORT_SYMBOL sound/core/snd-pcm 0xb9638db4 snd_pcm_rate_to_rate_bit +EXPORT_SYMBOL sound/core/snd-pcm 0xc2f718c8 snd_pcm_new_stream +EXPORT_SYMBOL sound/core/snd-pcm 0xc4fc4415 snd_pcm_release_substream +EXPORT_SYMBOL sound/core/snd-pcm 0xc5ed1546 snd_pcm_set_managed_buffer +EXPORT_SYMBOL sound/core/snd-pcm 0xc8a013eb snd_pcm_lib_free_pages +EXPORT_SYMBOL sound/core/snd-pcm 0xcdad38e4 snd_pcm_lib_get_vmalloc_page +EXPORT_SYMBOL sound/core/snd-pcm 0xd13a42a9 snd_pcm_hw_rule_noresample +EXPORT_SYMBOL sound/core/snd-pcm 0xd205ad1a snd_pcm_stop +EXPORT_SYMBOL sound/core/snd-pcm 0xdea9b0bf snd_pcm_hw_constraint_step +EXPORT_SYMBOL sound/core/snd-pcm 0xdef59b5a snd_pcm_hw_constraint_ranges +EXPORT_SYMBOL sound/core/snd-pcm 0xe1584d14 snd_pcm_new +EXPORT_SYMBOL sound/core/snd-pcm 0xe56a9336 snd_pcm_format_width +EXPORT_SYMBOL sound/core/snd-pcm 0xe6460f08 snd_pcm_lib_free_vmalloc_buffer +EXPORT_SYMBOL sound/core/snd-pcm 0xf1fba2c4 snd_pcm_lib_ioctl +EXPORT_SYMBOL sound/core/snd-pcm 0xfb932f65 snd_pcm_hw_constraint_mask64 +EXPORT_SYMBOL sound/core/snd-pcm 0xfdbff66f snd_dma_free_pages +EXPORT_SYMBOL sound/core/snd-pcm 0xff6104d0 snd_pcm_rate_bit_to_rate +EXPORT_SYMBOL sound/core/snd-rawmidi 0x0fa05d63 __snd_rawmidi_transmit_peek +EXPORT_SYMBOL sound/core/snd-rawmidi 0x19f86733 snd_rawmidi_transmit_empty +EXPORT_SYMBOL sound/core/snd-rawmidi 0x1e2de27e __snd_rawmidi_transmit_ack +EXPORT_SYMBOL sound/core/snd-rawmidi 0x233d6030 snd_rawmidi_receive +EXPORT_SYMBOL sound/core/snd-rawmidi 0x386b2e65 snd_rawmidi_info_select +EXPORT_SYMBOL sound/core/snd-rawmidi 0x39f5ff51 snd_rawmidi_output_params +EXPORT_SYMBOL sound/core/snd-rawmidi 0x58d73b58 snd_rawmidi_drain_input +EXPORT_SYMBOL sound/core/snd-rawmidi 0x69d0cee1 snd_rawmidi_drop_output +EXPORT_SYMBOL sound/core/snd-rawmidi 0x71a2cedc snd_rawmidi_drain_output +EXPORT_SYMBOL sound/core/snd-rawmidi 0x7a17960c snd_rawmidi_kernel_read +EXPORT_SYMBOL sound/core/snd-rawmidi 0x82aa2375 snd_rawmidi_input_params +EXPORT_SYMBOL sound/core/snd-rawmidi 0x92436cb3 snd_rawmidi_kernel_open +EXPORT_SYMBOL sound/core/snd-rawmidi 0x935840c7 snd_rawmidi_kernel_write +EXPORT_SYMBOL sound/core/snd-rawmidi 0xa7b5b1b3 snd_rawmidi_transmit_ack +EXPORT_SYMBOL sound/core/snd-rawmidi 0xaa69b3fc snd_rawmidi_transmit_peek +EXPORT_SYMBOL sound/core/snd-rawmidi 0xbaf2c954 snd_rawmidi_transmit +EXPORT_SYMBOL sound/core/snd-rawmidi 0xde191d0f snd_rawmidi_new +EXPORT_SYMBOL sound/core/snd-rawmidi 0xec439250 snd_rawmidi_set_ops +EXPORT_SYMBOL sound/core/snd-rawmidi 0xed878dac snd_rawmidi_proceed +EXPORT_SYMBOL sound/core/snd-rawmidi 0xfd4a6bfe snd_rawmidi_kernel_release +EXPORT_SYMBOL sound/core/snd-seq-device 0x091def1c snd_seq_autoload_exit +EXPORT_SYMBOL sound/core/snd-seq-device 0x370a0736 snd_seq_autoload_init +EXPORT_SYMBOL sound/core/snd-seq-device 0x6339b6d0 snd_seq_device_load_drivers +EXPORT_SYMBOL sound/core/snd-seq-device 0xf8b59678 snd_seq_device_new +EXPORT_SYMBOL sound/core/snd-timer 0x09daf47b snd_timer_global_new +EXPORT_SYMBOL sound/core/snd-timer 0x1f1d1950 snd_timer_stop +EXPORT_SYMBOL sound/core/snd-timer 0x2e994da2 snd_timer_pause +EXPORT_SYMBOL sound/core/snd-timer 0x48cc46d2 snd_timer_global_free +EXPORT_SYMBOL sound/core/snd-timer 0x561bce2f snd_timer_continue +EXPORT_SYMBOL sound/core/snd-timer 0x56d2980d snd_timer_instance_free +EXPORT_SYMBOL sound/core/snd-timer 0x6ce9c94a snd_timer_new +EXPORT_SYMBOL sound/core/snd-timer 0x80583ebd snd_timer_start +EXPORT_SYMBOL sound/core/snd-timer 0x8f47ad9a snd_timer_close +EXPORT_SYMBOL sound/core/snd-timer 0xb64211e1 snd_timer_global_register +EXPORT_SYMBOL sound/core/snd-timer 0xdb6d6d76 snd_timer_instance_new +EXPORT_SYMBOL sound/core/snd-timer 0xdf04740d snd_timer_resolution +EXPORT_SYMBOL sound/core/snd-timer 0xee979a7a snd_timer_interrupt +EXPORT_SYMBOL sound/core/snd-timer 0xfec12feb snd_timer_open +EXPORT_SYMBOL sound/core/snd-timer 0xffbee3fa snd_timer_notify +EXPORT_SYMBOL sound/drivers/mpu401/snd-mpu401-uart 0x6d629c59 snd_mpu401_uart_interrupt_tx +EXPORT_SYMBOL sound/drivers/mpu401/snd-mpu401-uart 0xc0fec227 snd_mpu401_uart_interrupt +EXPORT_SYMBOL sound/drivers/mpu401/snd-mpu401-uart 0xfabb5b20 snd_mpu401_uart_new +EXPORT_SYMBOL sound/drivers/opl3/snd-opl3-lib 0x05060a19 snd_opl3_regmap +EXPORT_SYMBOL sound/drivers/opl3/snd-opl3-lib 0x05b86544 snd_opl3_new +EXPORT_SYMBOL sound/drivers/opl3/snd-opl3-lib 0x0fa76d76 snd_opl3_timer_new +EXPORT_SYMBOL sound/drivers/opl3/snd-opl3-lib 0x144416b7 snd_opl3_find_patch +EXPORT_SYMBOL sound/drivers/opl3/snd-opl3-lib 0x544fd65b snd_opl3_load_patch +EXPORT_SYMBOL sound/drivers/opl3/snd-opl3-lib 0x7bed2d13 snd_opl3_hwdep_new +EXPORT_SYMBOL sound/drivers/opl3/snd-opl3-lib 0x7fc57517 snd_opl3_interrupt +EXPORT_SYMBOL sound/drivers/opl3/snd-opl3-lib 0xb5d04c6b snd_opl3_init +EXPORT_SYMBOL sound/drivers/opl3/snd-opl3-lib 0xc2aabd9b snd_opl3_reset +EXPORT_SYMBOL sound/drivers/opl3/snd-opl3-lib 0xef2d3728 snd_opl3_create +EXPORT_SYMBOL sound/drivers/vx/snd-vx-lib 0x097f1882 snd_vx_create +EXPORT_SYMBOL sound/drivers/vx/snd-vx-lib 0x1a566e81 snd_vx_free_firmware +EXPORT_SYMBOL sound/drivers/vx/snd-vx-lib 0x226138b0 snd_vx_threaded_irq_handler +EXPORT_SYMBOL sound/drivers/vx/snd-vx-lib 0x29a34a3b snd_vx_dsp_load +EXPORT_SYMBOL sound/drivers/vx/snd-vx-lib 0x3e1f722e snd_vx_check_reg_bit +EXPORT_SYMBOL sound/drivers/vx/snd-vx-lib 0x50df7fc5 snd_vx_suspend +EXPORT_SYMBOL sound/drivers/vx/snd-vx-lib 0xa642ffeb snd_vx_dsp_boot +EXPORT_SYMBOL sound/drivers/vx/snd-vx-lib 0xc892eed5 snd_vx_load_boot_image +EXPORT_SYMBOL sound/drivers/vx/snd-vx-lib 0xca1a3bd0 snd_vx_resume +EXPORT_SYMBOL sound/drivers/vx/snd-vx-lib 0xcbbd61ec snd_vx_setup_firmware +EXPORT_SYMBOL sound/drivers/vx/snd-vx-lib 0xf1f04d23 snd_vx_irq_handler +EXPORT_SYMBOL sound/firewire/snd-firewire-lib 0x00fa0ca2 cmp_connection_check_used +EXPORT_SYMBOL sound/firewire/snd-firewire-lib 0x04c850eb avc_general_get_sig_fmt +EXPORT_SYMBOL sound/firewire/snd-firewire-lib 0x1b153dc6 fw_iso_resources_update +EXPORT_SYMBOL sound/firewire/snd-firewire-lib 0x20254e45 amdtp_syt_intervals +EXPORT_SYMBOL sound/firewire/snd-firewire-lib 0x320cd88e fcp_bus_reset +EXPORT_SYMBOL sound/firewire/snd-firewire-lib 0x3f3e7a3c amdtp_stream_pcm_prepare +EXPORT_SYMBOL sound/firewire/snd-firewire-lib 0x48de2cbe snd_fw_schedule_registration +EXPORT_SYMBOL sound/firewire/snd-firewire-lib 0x4ac19f6a cmp_connection_establish +EXPORT_SYMBOL sound/firewire/snd-firewire-lib 0x53ca18e8 amdtp_rate_table +EXPORT_SYMBOL sound/firewire/snd-firewire-lib 0x59b883eb cmp_connection_update +EXPORT_SYMBOL sound/firewire/snd-firewire-lib 0x5b27a226 cmp_connection_release +EXPORT_SYMBOL sound/firewire/snd-firewire-lib 0x63825173 cmp_connection_break +EXPORT_SYMBOL sound/firewire/snd-firewire-lib 0x69394c4d cmp_connection_reserve +EXPORT_SYMBOL sound/firewire/snd-firewire-lib 0x6a8f62f5 fw_iso_resources_free +EXPORT_SYMBOL sound/firewire/snd-firewire-lib 0x6b016d0b fcp_avc_transaction +EXPORT_SYMBOL sound/firewire/snd-firewire-lib 0x7db6af88 iso_packets_buffer_destroy +EXPORT_SYMBOL sound/firewire/snd-firewire-lib 0x7e8506a6 amdtp_stream_get_max_payload +EXPORT_SYMBOL sound/firewire/snd-firewire-lib 0x809aff1e fw_iso_resources_destroy +EXPORT_SYMBOL sound/firewire/snd-firewire-lib 0x96375404 amdtp_stream_destroy +EXPORT_SYMBOL sound/firewire/snd-firewire-lib 0xa3e2b753 amdtp_stream_set_parameters +EXPORT_SYMBOL sound/firewire/snd-firewire-lib 0xafa229a3 amdtp_stream_pcm_abort +EXPORT_SYMBOL sound/firewire/snd-firewire-lib 0xc196525a amdtp_stream_add_pcm_hw_constraints +EXPORT_SYMBOL sound/firewire/snd-firewire-lib 0xc27632e5 snd_fw_transaction +EXPORT_SYMBOL sound/firewire/snd-firewire-lib 0xcafbf0b5 avc_general_get_plug_info +EXPORT_SYMBOL sound/firewire/snd-firewire-lib 0xccdc2564 amdtp_stream_init +EXPORT_SYMBOL sound/firewire/snd-firewire-lib 0xd4c3ea8f cmp_connection_destroy +EXPORT_SYMBOL sound/firewire/snd-firewire-lib 0xd9f38b30 fw_iso_resources_init +EXPORT_SYMBOL sound/firewire/snd-firewire-lib 0xddaa45f8 iso_packets_buffer_init +EXPORT_SYMBOL sound/firewire/snd-firewire-lib 0xdfa88633 amdtp_stream_update +EXPORT_SYMBOL sound/firewire/snd-firewire-lib 0xed2f2c01 fw_iso_resources_allocate +EXPORT_SYMBOL sound/firewire/snd-firewire-lib 0xee32c051 cmp_connection_init +EXPORT_SYMBOL sound/firewire/snd-firewire-lib 0xff2394b2 avc_general_set_sig_fmt +EXPORT_SYMBOL sound/i2c/other/snd-ak4113 0x59b0a881 snd_ak4113_resume +EXPORT_SYMBOL sound/i2c/other/snd-ak4113 0x5e152a68 snd_ak4113_suspend +EXPORT_SYMBOL sound/i2c/other/snd-ak4114 0x601c7b63 snd_ak4114_build +EXPORT_SYMBOL sound/i2c/other/snd-ak4114 0x644a1d55 snd_ak4114_external_rate +EXPORT_SYMBOL sound/i2c/other/snd-ak4114 0x64e07725 snd_ak4114_resume +EXPORT_SYMBOL sound/i2c/other/snd-ak4114 0x7c843db8 snd_ak4114_create +EXPORT_SYMBOL sound/i2c/other/snd-ak4114 0xa1020492 snd_ak4114_suspend +EXPORT_SYMBOL sound/i2c/other/snd-ak4114 0xa53ced34 snd_ak4114_check_rate_and_errors +EXPORT_SYMBOL sound/i2c/other/snd-ak4114 0xcea82dc7 snd_ak4114_reinit +EXPORT_SYMBOL sound/i2c/other/snd-ak4114 0xe98263f0 snd_ak4114_reg_write +EXPORT_SYMBOL sound/i2c/other/snd-ak4117 0x1d5badbe snd_ak4117_build +EXPORT_SYMBOL sound/i2c/other/snd-ak4117 0x6f70f58b snd_ak4117_external_rate +EXPORT_SYMBOL sound/i2c/other/snd-ak4117 0xd8ac5687 snd_ak4117_create +EXPORT_SYMBOL sound/i2c/other/snd-ak4117 0xdb0d9dcf snd_ak4117_reg_write +EXPORT_SYMBOL sound/i2c/other/snd-ak4117 0xeaa418d6 snd_ak4117_reinit +EXPORT_SYMBOL sound/i2c/other/snd-ak4117 0xf1582c7d snd_ak4117_check_rate_and_errors +EXPORT_SYMBOL sound/i2c/other/snd-ak4xxx-adda 0x3821be3d snd_akm4xxx_reset +EXPORT_SYMBOL sound/i2c/other/snd-ak4xxx-adda 0x3cb98beb snd_akm4xxx_init +EXPORT_SYMBOL sound/i2c/other/snd-ak4xxx-adda 0x6bf08f7a snd_akm4xxx_build_controls +EXPORT_SYMBOL sound/i2c/other/snd-ak4xxx-adda 0x76dbde72 snd_akm4xxx_write +EXPORT_SYMBOL sound/i2c/other/snd-pt2258 0x7ee385b5 snd_pt2258_reset +EXPORT_SYMBOL sound/i2c/other/snd-pt2258 0xaff2fe0f snd_pt2258_build_controls +EXPORT_SYMBOL sound/i2c/snd-cs8427 0x1c2bc373 snd_cs8427_reg_write +EXPORT_SYMBOL sound/i2c/snd-cs8427 0x44314de8 snd_cs8427_create +EXPORT_SYMBOL sound/i2c/snd-cs8427 0x57e0cf77 snd_cs8427_iec958_active +EXPORT_SYMBOL sound/i2c/snd-cs8427 0x96082c41 snd_cs8427_iec958_build +EXPORT_SYMBOL sound/i2c/snd-cs8427 0xc9e7feeb snd_cs8427_iec958_pcm +EXPORT_SYMBOL sound/i2c/snd-cs8427 0xcced4ec9 snd_cs8427_init +EXPORT_SYMBOL sound/i2c/snd-i2c 0x4ca009fb snd_i2c_probeaddr +EXPORT_SYMBOL sound/i2c/snd-i2c 0x70432fa3 snd_i2c_sendbytes +EXPORT_SYMBOL sound/i2c/snd-i2c 0x75a1f82c snd_i2c_device_create +EXPORT_SYMBOL sound/i2c/snd-i2c 0xe1bdda78 snd_i2c_device_free +EXPORT_SYMBOL sound/i2c/snd-i2c 0xe74a3691 snd_i2c_bus_create +EXPORT_SYMBOL sound/i2c/snd-i2c 0xf4ea3a4e snd_i2c_readbytes +EXPORT_SYMBOL sound/isa/sb/snd-sb-common 0x0a1c2fbd snd_sbmixer_new +EXPORT_SYMBOL sound/isa/sb/snd-sb-common 0x29303c53 snd_sbmixer_suspend +EXPORT_SYMBOL sound/isa/sb/snd-sb-common 0x38e705a6 snd_sbdsp_get_byte +EXPORT_SYMBOL sound/isa/sb/snd-sb-common 0x3a664933 snd_sbmixer_read +EXPORT_SYMBOL sound/isa/sb/snd-sb-common 0x45425bc6 snd_sbdsp_command +EXPORT_SYMBOL sound/isa/sb/snd-sb-common 0x506982ac snd_sbmixer_write +EXPORT_SYMBOL sound/isa/sb/snd-sb-common 0xbed55ea6 snd_sbdsp_create +EXPORT_SYMBOL sound/isa/sb/snd-sb-common 0xde572442 snd_sbmixer_add_ctl +EXPORT_SYMBOL sound/isa/sb/snd-sb-common 0xebed56e9 snd_sbmixer_resume +EXPORT_SYMBOL sound/isa/sb/snd-sb-common 0xf26c3ef9 snd_sbdsp_reset +EXPORT_SYMBOL sound/pci/ac97/snd-ac97-codec 0x01c35d00 snd_ac97_update_power +EXPORT_SYMBOL sound/pci/ac97/snd-ac97-codec 0x1e3eb124 snd_ac97_get_short_name +EXPORT_SYMBOL sound/pci/ac97/snd-ac97-codec 0x287b7d63 snd_ac97_update_bits +EXPORT_SYMBOL sound/pci/ac97/snd-ac97-codec 0x290550a3 snd_ac97_tune_hardware +EXPORT_SYMBOL sound/pci/ac97/snd-ac97-codec 0x5b320fdf snd_ac97_pcm_double_rate_rules +EXPORT_SYMBOL sound/pci/ac97/snd-ac97-codec 0x627a8296 snd_ac97_pcm_open +EXPORT_SYMBOL sound/pci/ac97/snd-ac97-codec 0x64ced869 snd_ac97_write +EXPORT_SYMBOL sound/pci/ac97/snd-ac97-codec 0x7428a9d0 snd_ac97_mixer +EXPORT_SYMBOL sound/pci/ac97/snd-ac97-codec 0x8a39fd94 snd_ac97_update +EXPORT_SYMBOL sound/pci/ac97/snd-ac97-codec 0x919b27a6 snd_ac97_resume +EXPORT_SYMBOL sound/pci/ac97/snd-ac97-codec 0x91a8e94a snd_ac97_suspend +EXPORT_SYMBOL sound/pci/ac97/snd-ac97-codec 0xa364457c snd_ac97_bus +EXPORT_SYMBOL sound/pci/ac97/snd-ac97-codec 0xa3eeaf54 snd_ac97_set_rate +EXPORT_SYMBOL sound/pci/ac97/snd-ac97-codec 0xb26c41bd snd_ac97_pcm_assign +EXPORT_SYMBOL sound/pci/ac97/snd-ac97-codec 0xc81bd01b snd_ac97_read +EXPORT_SYMBOL sound/pci/ac97/snd-ac97-codec 0xe288e5e1 snd_ac97_pcm_close +EXPORT_SYMBOL sound/pci/ac97/snd-ac97-codec 0xf3db091a snd_ac97_write_cache +EXPORT_SYMBOL sound/pci/asihpi/snd-asihpi 0x8743ec1f hpi_send_recv +EXPORT_SYMBOL sound/pci/emu10k1/snd-emu10k1 0x21080768 snd_emu10k1_ptr_write +EXPORT_SYMBOL sound/pci/emu10k1/snd-emu10k1 0x4f4ef18f snd_emu10k1_synth_copy_from_user +EXPORT_SYMBOL sound/pci/emu10k1/snd-emu10k1 0x61831b0b snd_emu10k1_ptr_read +EXPORT_SYMBOL sound/pci/emu10k1/snd-emu10k1 0x7e9e6f78 snd_emu10k1_synth_alloc +EXPORT_SYMBOL sound/pci/emu10k1/snd-emu10k1 0xa89e5a4c snd_emu10k1_voice_free +EXPORT_SYMBOL sound/pci/emu10k1/snd-emu10k1 0xcf8fda95 snd_emu10k1_memblk_map +EXPORT_SYMBOL sound/pci/emu10k1/snd-emu10k1 0xcfe3f80c snd_emu10k1_voice_alloc +EXPORT_SYMBOL sound/pci/emu10k1/snd-emu10k1 0xde56f107 snd_emu10k1_synth_free +EXPORT_SYMBOL sound/pci/emu10k1/snd-emu10k1 0xe843b330 snd_emu10k1_synth_bzero +EXPORT_SYMBOL sound/pci/ice1712/snd-ice17xx-ak4xxx 0x338ac059 snd_ice1712_akm4xxx_init +EXPORT_SYMBOL sound/pci/ice1712/snd-ice17xx-ak4xxx 0x4ae27828 snd_ice1712_akm4xxx_free +EXPORT_SYMBOL sound/pci/ice1712/snd-ice17xx-ak4xxx 0xd127597f snd_ice1712_akm4xxx_build_controls +EXPORT_SYMBOL sound/pci/oxygen/snd-oxygen-lib 0x092f315a oxygen_read32 +EXPORT_SYMBOL sound/pci/oxygen/snd-oxygen-lib 0x0c3da176 oxygen_read8 +EXPORT_SYMBOL sound/pci/oxygen/snd-oxygen-lib 0x10449365 oxygen_write_ac97 +EXPORT_SYMBOL sound/pci/oxygen/snd-oxygen-lib 0x1c6d880d oxygen_write_spi +EXPORT_SYMBOL sound/pci/oxygen/snd-oxygen-lib 0x205861a6 oxygen_write16_masked +EXPORT_SYMBOL sound/pci/oxygen/snd-oxygen-lib 0x275c085c oxygen_write32_masked +EXPORT_SYMBOL sound/pci/oxygen/snd-oxygen-lib 0x34e2872c oxygen_pci_remove +EXPORT_SYMBOL sound/pci/oxygen/snd-oxygen-lib 0x40c6a397 oxygen_update_dac_routing +EXPORT_SYMBOL sound/pci/oxygen/snd-oxygen-lib 0x46d2aee3 oxygen_pci_probe +EXPORT_SYMBOL sound/pci/oxygen/snd-oxygen-lib 0x5b9c8b70 oxygen_write_ac97_masked +EXPORT_SYMBOL sound/pci/oxygen/snd-oxygen-lib 0x6e112812 oxygen_write_i2c +EXPORT_SYMBOL sound/pci/oxygen/snd-oxygen-lib 0x81e4ab1e oxygen_read_ac97 +EXPORT_SYMBOL sound/pci/oxygen/snd-oxygen-lib 0x84599585 oxygen_write32 +EXPORT_SYMBOL sound/pci/oxygen/snd-oxygen-lib 0x85958d2b oxygen_write_uart +EXPORT_SYMBOL sound/pci/oxygen/snd-oxygen-lib 0x9c7c365c oxygen_pci_shutdown +EXPORT_SYMBOL sound/pci/oxygen/snd-oxygen-lib 0xa00b7004 oxygen_write8_masked +EXPORT_SYMBOL sound/pci/oxygen/snd-oxygen-lib 0xb007c175 oxygen_reset_uart +EXPORT_SYMBOL sound/pci/oxygen/snd-oxygen-lib 0xb04ad0b1 oxygen_read16 +EXPORT_SYMBOL sound/pci/oxygen/snd-oxygen-lib 0xc82c40f3 oxygen_write16 +EXPORT_SYMBOL sound/pci/oxygen/snd-oxygen-lib 0xd67a2917 oxygen_pci_pm +EXPORT_SYMBOL sound/pci/oxygen/snd-oxygen-lib 0xefe9be02 oxygen_write8 +EXPORT_SYMBOL sound/pci/trident/snd-trident 0x87696ad6 snd_trident_start_voice +EXPORT_SYMBOL sound/pci/trident/snd-trident 0xc26c8004 snd_trident_alloc_voice +EXPORT_SYMBOL sound/pci/trident/snd-trident 0xc8aedfa2 snd_trident_write_voice_regs +EXPORT_SYMBOL sound/pci/trident/snd-trident 0xe18c3ed1 snd_trident_free_voice +EXPORT_SYMBOL sound/pci/trident/snd-trident 0xed34c0a3 snd_trident_stop_voice +EXPORT_SYMBOL sound/soc/amd/acp_audio_dma 0xea74f232 bt_uart_enable +EXPORT_SYMBOL sound/soc/codecs/snd-soc-pcm3060 0x0de78b33 pcm3060_probe +EXPORT_SYMBOL sound/soc/codecs/snd-soc-pcm3060 0x81ba0ed8 pcm3060_regmap +EXPORT_SYMBOL sound/soc/codecs/snd-soc-rt715 0xed2acb24 hda_to_sdw +EXPORT_SYMBOL sound/soc/codecs/snd-soc-tlv320aic23 0x293fb1ab tlv320aic23_regmap +EXPORT_SYMBOL sound/soc/codecs/snd-soc-tlv320aic23 0x5771cc75 tlv320aic23_probe +EXPORT_SYMBOL sound/soc/codecs/snd-soc-tlv320aic32x4 0x42c7690a aic32x4_probe +EXPORT_SYMBOL sound/soc/codecs/snd-soc-tlv320aic32x4 0x77aeaa93 aic32x4_regmap_config +EXPORT_SYMBOL sound/soc/codecs/snd-soc-tlv320aic32x4 0xd2b76a62 aic32x4_remove +EXPORT_SYMBOL sound/soc/snd-soc-core 0xfc2adef7 snd_soc_alloc_ac97_component +EXPORT_SYMBOL sound/soc/sof/snd-sof 0x060d0bae snd_sof_run_firmware +EXPORT_SYMBOL sound/soc/sof/snd-sof 0x08749332 snd_sof_ipc_stream_posn +EXPORT_SYMBOL sound/soc/sof/snd-sof 0x088a8451 snd_sof_suspend +EXPORT_SYMBOL sound/soc/sof/snd-sof 0x08cab950 sof_mailbox_read +EXPORT_SYMBOL sound/soc/sof/snd-sof 0x09664817 snd_sof_ipc_reply +EXPORT_SYMBOL sound/soc/sof/snd-sof 0x12a52946 sof_block_read +EXPORT_SYMBOL sound/soc/sof/snd-sof 0x19e2622d sof_mailbox_write +EXPORT_SYMBOL sound/soc/sof/snd-sof 0x1d22a5ea sof_ipc_tx_message_no_pm +EXPORT_SYMBOL sound/soc/sof/snd-sof 0x27e0a80e sof_machine_check +EXPORT_SYMBOL sound/soc/sof/snd-sof 0x2e6cc79a snd_sof_pcm_period_elapsed +EXPORT_SYMBOL sound/soc/sof/snd-sof 0x2f116e09 sof_fw_ready +EXPORT_SYMBOL sound/soc/sof/snd-sof 0x3430d206 snd_sof_load_firmware_memcpy +EXPORT_SYMBOL sound/soc/sof/snd-sof 0x37ff648d snd_sof_fw_parse_ext_data +EXPORT_SYMBOL sound/soc/sof/snd-sof 0x3be6ad81 snd_sof_dsp_update_bits64 +EXPORT_SYMBOL sound/soc/sof/snd-sof 0x43eca2cd snd_sof_parse_module_memcpy +EXPORT_SYMBOL sound/soc/sof/snd-sof 0x44a14959 snd_sof_dsp_update_bits_unlocked +EXPORT_SYMBOL sound/soc/sof/snd-sof 0x45079f43 snd_sof_runtime_resume +EXPORT_SYMBOL sound/soc/sof/snd-sof 0x51769d46 snd_sof_trace_notify_for_error +EXPORT_SYMBOL sound/soc/sof/snd-sof 0x54e66a1f snd_sof_dsp_update_bits +EXPORT_SYMBOL sound/soc/sof/snd-sof 0x56d11c3a snd_sof_device_remove +EXPORT_SYMBOL sound/soc/sof/snd-sof 0x5b15cf25 snd_sof_init_trace +EXPORT_SYMBOL sound/soc/sof/snd-sof 0x67386fd5 snd_sof_free_trace +EXPORT_SYMBOL sound/soc/sof/snd-sof 0x71979c7a sof_machine_register +EXPORT_SYMBOL sound/soc/sof/snd-sof 0x71fbc74a snd_sof_ipc_free +EXPORT_SYMBOL sound/soc/sof/snd-sof 0x79710cab sof_block_write +EXPORT_SYMBOL sound/soc/sof/snd-sof 0x7df01a48 snd_sof_device_probe +EXPORT_SYMBOL sound/soc/sof/snd-sof 0x81699932 snd_sof_ipc_set_get_comp_data +EXPORT_SYMBOL sound/soc/sof/snd-sof 0x91c5020d snd_sof_pci_update_bits +EXPORT_SYMBOL sound/soc/sof/snd-sof 0x9b242a10 sof_io_read64 +EXPORT_SYMBOL sound/soc/sof/snd-sof 0xa18aeb8e snd_sof_prepare +EXPORT_SYMBOL sound/soc/sof/snd-sof 0xa309e8c3 snd_sof_resume +EXPORT_SYMBOL sound/soc/sof/snd-sof 0xa9d1ccf2 snd_sof_ipc_msgs_rx +EXPORT_SYMBOL sound/soc/sof/snd-sof 0xabaeeaa5 snd_sof_dsp_update_bits_forced +EXPORT_SYMBOL sound/soc/sof/snd-sof 0xb2bc03ee snd_sof_fw_unload +EXPORT_SYMBOL sound/soc/sof/snd-sof 0xb7d7c7d7 snd_sof_load_firmware_raw +EXPORT_SYMBOL sound/soc/sof/snd-sof 0xbc25bf15 snd_sof_dsp_only_d0i3_compatible_stream_active +EXPORT_SYMBOL sound/soc/sof/snd-sof 0xbdd135c3 snd_sof_ipc_init +EXPORT_SYMBOL sound/soc/sof/snd-sof 0xbeffde77 sof_io_write +EXPORT_SYMBOL sound/soc/sof/snd-sof 0xbf92db89 snd_sof_create_page_table +EXPORT_SYMBOL sound/soc/sof/snd-sof 0xc3d70e38 snd_sof_dsp_mailbox_init +EXPORT_SYMBOL sound/soc/sof/snd-sof 0xc3e55cc1 sof_io_write64 +EXPORT_SYMBOL sound/soc/sof/snd-sof 0xc563b625 snd_sof_get_status +EXPORT_SYMBOL sound/soc/sof/snd-sof 0xc65a3c40 sof_io_read +EXPORT_SYMBOL sound/soc/sof/snd-sof 0xcce54541 snd_sof_dsp_update_bits64_unlocked +EXPORT_SYMBOL sound/soc/sof/snd-sof 0xcfdc5f98 sof_ipc_tx_message +EXPORT_SYMBOL sound/soc/sof/snd-sof 0xd1f4f457 snd_sof_runtime_idle +EXPORT_SYMBOL sound/soc/sof/snd-sof 0xdde06c72 snd_sof_release_trace +EXPORT_SYMBOL sound/soc/sof/snd-sof 0xe5d40906 snd_sof_runtime_suspend +EXPORT_SYMBOL sound/soc/sof/snd-sof 0xec0fdae6 snd_sof_load_firmware +EXPORT_SYMBOL sound/soc/sof/snd-sof 0xf1510b2e sof_machine_unregister +EXPORT_SYMBOL sound/soc/sof/snd-sof 0xf880b67a snd_sof_dsp_panic +EXPORT_SYMBOL sound/soc/sof/snd-sof 0xfac69f17 snd_sof_handle_fw_exception +EXPORT_SYMBOL sound/soc/sof/snd-sof 0xfb6879d4 snd_sof_complete +EXPORT_SYMBOL sound/soc/sof/snd-sof 0xfd0d2baf snd_sof_load_topology +EXPORT_SYMBOL sound/soc/sof/snd-sof 0xfe1fbd4a snd_sof_ipc_valid +EXPORT_SYMBOL sound/soundcore 0x7afc9d8a unregister_sound_mixer +EXPORT_SYMBOL sound/soundcore 0x892b1380 register_sound_mixer +EXPORT_SYMBOL sound/soundcore 0x95e4dc20 register_sound_special_device +EXPORT_SYMBOL sound/soundcore 0x99c95fa5 unregister_sound_special +EXPORT_SYMBOL sound/soundcore 0xcd083b10 unregister_sound_dsp +EXPORT_SYMBOL sound/soundcore 0xd40f15ad register_sound_dsp +EXPORT_SYMBOL sound/soundcore 0xdd8cf99e register_sound_special +EXPORT_SYMBOL sound/soundcore 0xf13ddfb2 sound_class +EXPORT_SYMBOL sound/synth/emux/snd-emux-synth 0x07c55290 snd_emux_terminate_all +EXPORT_SYMBOL sound/synth/emux/snd-emux-synth 0x2cf20b9e snd_emux_lock_voice +EXPORT_SYMBOL sound/synth/emux/snd-emux-synth 0x4c2ac028 snd_emux_register +EXPORT_SYMBOL sound/synth/emux/snd-emux-synth 0x62d1acd1 snd_emux_unlock_voice +EXPORT_SYMBOL sound/synth/emux/snd-emux-synth 0x655cb202 snd_sf_linear_to_log +EXPORT_SYMBOL sound/synth/emux/snd-emux-synth 0x8b436f05 snd_emux_free +EXPORT_SYMBOL sound/synth/emux/snd-emux-synth 0xe7f398ad snd_emux_new +EXPORT_SYMBOL sound/synth/snd-util-mem 0x293ac667 snd_util_mem_free +EXPORT_SYMBOL sound/synth/snd-util-mem 0x34ac95ae snd_util_memhdr_new +EXPORT_SYMBOL sound/synth/snd-util-mem 0x48f920c4 __snd_util_mem_alloc +EXPORT_SYMBOL sound/synth/snd-util-mem 0x7d95566f snd_util_mem_avail +EXPORT_SYMBOL sound/synth/snd-util-mem 0x85659341 snd_util_mem_alloc +EXPORT_SYMBOL sound/synth/snd-util-mem 0x97bb24f2 __snd_util_memblk_new +EXPORT_SYMBOL sound/synth/snd-util-mem 0x9db98086 __snd_util_mem_free +EXPORT_SYMBOL sound/synth/snd-util-mem 0xe2935f8c snd_util_memhdr_free +EXPORT_SYMBOL sound/usb/snd-usbmidi-lib 0x16756dc0 snd_usbmidi_input_start +EXPORT_SYMBOL sound/usb/snd-usbmidi-lib 0x63343b1d snd_usbmidi_input_stop +EXPORT_SYMBOL sound/usb/snd-usbmidi-lib 0x8283c142 __snd_usbmidi_create +EXPORT_SYMBOL sound/usb/snd-usbmidi-lib 0xb2af19e1 snd_usbmidi_resume +EXPORT_SYMBOL sound/usb/snd-usbmidi-lib 0xbed43a41 snd_usbmidi_suspend +EXPORT_SYMBOL sound/usb/snd-usbmidi-lib 0xd9d2bb03 snd_usbmidi_disconnect +EXPORT_SYMBOL ubuntu/hio/hio 0x134a64d4 ssd_set_wmode +EXPORT_SYMBOL ubuntu/hio/hio 0x18d09cbf ssd_submit_pbio +EXPORT_SYMBOL ubuntu/hio/hio 0x24cd2441 ssd_unregister_event_notifier +EXPORT_SYMBOL ubuntu/hio/hio 0x2fdcf409 ssd_get_version +EXPORT_SYMBOL ubuntu/hio/hio 0x4c241286 ssd_get_pciaddr +EXPORT_SYMBOL ubuntu/hio/hio 0x4d7f26b3 ssd_set_otprotect +EXPORT_SYMBOL ubuntu/hio/hio 0x51bab4e2 ssd_get_temperature +EXPORT_SYMBOL ubuntu/hio/hio 0x81b856e8 ssd_get_label +EXPORT_SYMBOL ubuntu/hio/hio 0x8ecca4d0 ssd_bm_status +EXPORT_SYMBOL ubuntu/hio/hio 0xca33105a ssd_register_event_notifier +EXPORT_SYMBOL ubuntu/hio/hio 0xdaaf6cec ssd_reset +EXPORT_SYMBOL vmlinux 0x000adffc pci_iomap_range +EXPORT_SYMBOL vmlinux 0x000bb5e8 bdev_read_only +EXPORT_SYMBOL vmlinux 0x0046a4d5 mr_mfc_find_parent +EXPORT_SYMBOL vmlinux 0x00755cd6 acpi_notifier_call_chain +EXPORT_SYMBOL vmlinux 0x00810cf1 xfrm_trans_queue +EXPORT_SYMBOL vmlinux 0x00853248 ps2_cmd_aborted +EXPORT_SYMBOL vmlinux 0x008870a7 proc_mkdir +EXPORT_SYMBOL vmlinux 0x009144af netpoll_send_udp +EXPORT_SYMBOL vmlinux 0x00962201 iov_iter_single_seg_count +EXPORT_SYMBOL vmlinux 0x00a4b044 amd_iommu_deactivate_guest_mode +EXPORT_SYMBOL vmlinux 0x00a776df watchdog_unregister_governor +EXPORT_SYMBOL vmlinux 0x00ad2538 xfrm_state_update +EXPORT_SYMBOL vmlinux 0x00af9473 security_sctp_sk_clone +EXPORT_SYMBOL vmlinux 0x00b4e615 posix_acl_equiv_mode +EXPORT_SYMBOL vmlinux 0x00baaf87 scsi_eh_finish_cmd +EXPORT_SYMBOL vmlinux 0x00baead5 __sg_alloc_table_from_pages +EXPORT_SYMBOL vmlinux 0x00bb9f9a ip_do_fragment +EXPORT_SYMBOL vmlinux 0x00c2aa02 pagecache_write_begin +EXPORT_SYMBOL vmlinux 0x00c77fba t10_pi_type3_ip +EXPORT_SYMBOL vmlinux 0x00c8eaf1 pci_alloc_dev +EXPORT_SYMBOL vmlinux 0x00d7e722 vme_lm_count +EXPORT_SYMBOL vmlinux 0x00dc93a4 nvm_alloc_dev +EXPORT_SYMBOL vmlinux 0x01000e51 schedule +EXPORT_SYMBOL vmlinux 0x011ca083 convert_art_to_tsc +EXPORT_SYMBOL vmlinux 0x013f26ae dma_fence_get_stub +EXPORT_SYMBOL vmlinux 0x01438d4a tty_devnum +EXPORT_SYMBOL vmlinux 0x0147812c kblockd_mod_delayed_work_on +EXPORT_SYMBOL vmlinux 0x01553371 vm_brk_flags +EXPORT_SYMBOL vmlinux 0x015af7f4 system_state +EXPORT_SYMBOL vmlinux 0x01617699 no_seek_end_llseek_size +EXPORT_SYMBOL vmlinux 0x017294c8 dquot_alloc +EXPORT_SYMBOL vmlinux 0x0172a58d phy_suspend +EXPORT_SYMBOL vmlinux 0x01757935 rdmacg_register_device +EXPORT_SYMBOL vmlinux 0x017de3d5 nr_cpu_ids +EXPORT_SYMBOL vmlinux 0x018574a1 mb_cache_entry_delete +EXPORT_SYMBOL vmlinux 0x0188cd88 vme_alloc_consistent +EXPORT_SYMBOL vmlinux 0x018f65ce misc_deregister +EXPORT_SYMBOL vmlinux 0x01923d6a register_netdevice_notifier_net +EXPORT_SYMBOL vmlinux 0x01a64115 phy_register_fixup_for_id +EXPORT_SYMBOL vmlinux 0x01b05990 pci_find_resource +EXPORT_SYMBOL vmlinux 0x01b6865c xa_get_mark +EXPORT_SYMBOL vmlinux 0x01bf55fc paddr_vmcoreinfo_note +EXPORT_SYMBOL vmlinux 0x01e28d41 qdisc_class_hash_grow +EXPORT_SYMBOL vmlinux 0x01f48571 inet_sk_set_state +EXPORT_SYMBOL vmlinux 0x01f91db4 __devm_request_region +EXPORT_SYMBOL vmlinux 0x0204ac25 param_ops_short +EXPORT_SYMBOL vmlinux 0x02088219 md_handle_request +EXPORT_SYMBOL vmlinux 0x02090b0b build_skb_around +EXPORT_SYMBOL vmlinux 0x020982be alloc_buffer_head +EXPORT_SYMBOL vmlinux 0x020dbf27 bitmap_alloc +EXPORT_SYMBOL vmlinux 0x02124474 ip_send_check +EXPORT_SYMBOL vmlinux 0x021414bd phy_start_cable_test_tdr +EXPORT_SYMBOL vmlinux 0x02171d33 fs_param_is_u64 +EXPORT_SYMBOL vmlinux 0x021db9b9 vif_device_init +EXPORT_SYMBOL vmlinux 0x021f10d4 blk_queue_physical_block_size +EXPORT_SYMBOL vmlinux 0x0228925f iowrite64_hi_lo +EXPORT_SYMBOL vmlinux 0x02293ac3 dma_fence_chain_ops +EXPORT_SYMBOL vmlinux 0x0237b57a arch_unregister_cpu +EXPORT_SYMBOL vmlinux 0x023d1b90 wrmsr_on_cpu +EXPORT_SYMBOL vmlinux 0x023eb5a2 sync_blockdev +EXPORT_SYMBOL vmlinux 0x0247759c cookie_timestamp_decode +EXPORT_SYMBOL vmlinux 0x024b3193 inet_rcv_saddr_equal +EXPORT_SYMBOL vmlinux 0x025483b1 set_current_groups +EXPORT_SYMBOL vmlinux 0x0274dc2b netif_get_num_default_rss_queues +EXPORT_SYMBOL vmlinux 0x0283dd4d xfrm6_find_1stfragopt +EXPORT_SYMBOL vmlinux 0x0296695f refcount_warn_saturate +EXPORT_SYMBOL vmlinux 0x02a04810 writeback_inodes_sb +EXPORT_SYMBOL vmlinux 0x02a18c74 nf_conntrack_destroy +EXPORT_SYMBOL vmlinux 0x02a3793b bdgrab +EXPORT_SYMBOL vmlinux 0x02aa8853 page_zero_new_buffers +EXPORT_SYMBOL vmlinux 0x02b8ab42 sg_copy_to_buffer +EXPORT_SYMBOL vmlinux 0x02c0a228 cookie_ecn_ok +EXPORT_SYMBOL vmlinux 0x02c656b6 acpi_enable_all_runtime_gpes +EXPORT_SYMBOL vmlinux 0x02ea111e scsi_driverbyte_string +EXPORT_SYMBOL vmlinux 0x02eed3f1 blk_mq_delay_kick_requeue_list +EXPORT_SYMBOL vmlinux 0x0300ce35 pci_scan_bus +EXPORT_SYMBOL vmlinux 0x0304a6eb inet_add_offload +EXPORT_SYMBOL vmlinux 0x03098c20 blk_pre_runtime_suspend +EXPORT_SYMBOL vmlinux 0x031b28d5 may_umount_tree +EXPORT_SYMBOL vmlinux 0x032f8ce5 pci_resize_resource +EXPORT_SYMBOL vmlinux 0x0334da4e scsi_command_size_tbl +EXPORT_SYMBOL vmlinux 0x034a77ed tcp_time_wait +EXPORT_SYMBOL vmlinux 0x0360f96f netdev_emerg +EXPORT_SYMBOL vmlinux 0x0366307a console_suspend_enabled +EXPORT_SYMBOL vmlinux 0x037a0cba kfree +EXPORT_SYMBOL vmlinux 0x03815f35 ledtrig_disk_activity +EXPORT_SYMBOL vmlinux 0x03857bd4 scsi_host_lookup +EXPORT_SYMBOL vmlinux 0x038bb422 rproc_add +EXPORT_SYMBOL vmlinux 0x03920779 mmc_start_request +EXPORT_SYMBOL vmlinux 0x0397edd5 fb_edid_to_monspecs +EXPORT_SYMBOL vmlinux 0x03a162ba devm_alloc_etherdev_mqs +EXPORT_SYMBOL vmlinux 0x03a3f3b1 ww_mutex_lock +EXPORT_SYMBOL vmlinux 0x03be2ddd setattr_copy +EXPORT_SYMBOL vmlinux 0x03fcfd75 bprm_change_interp +EXPORT_SYMBOL vmlinux 0x03fd2571 vm_unmap_ram +EXPORT_SYMBOL vmlinux 0x0434048e rproc_elf_sanity_check +EXPORT_SYMBOL vmlinux 0x04482cdb __refrigerator +EXPORT_SYMBOL vmlinux 0x045457ca add_to_page_cache_locked +EXPORT_SYMBOL vmlinux 0x04639fec inode_owner_or_capable +EXPORT_SYMBOL vmlinux 0x0484c6c4 acpi_enter_sleep_state_prep +EXPORT_SYMBOL vmlinux 0x04863e28 hdmi_audio_infoframe_pack_only +EXPORT_SYMBOL vmlinux 0x04add6cf thaw_super +EXPORT_SYMBOL vmlinux 0x04af8417 cdrom_number_of_slots +EXPORT_SYMBOL vmlinux 0x04bc1b1a nf_log_unregister +EXPORT_SYMBOL vmlinux 0x04bd858e agp_generic_alloc_page +EXPORT_SYMBOL vmlinux 0x04c62fd7 __memset +EXPORT_SYMBOL vmlinux 0x04d8c750 release_perfctr_nmi +EXPORT_SYMBOL vmlinux 0x04ea56f9 _kstrtol +EXPORT_SYMBOL vmlinux 0x04ea5d10 ksize +EXPORT_SYMBOL vmlinux 0x04ef0111 mipi_dsi_driver_register_full +EXPORT_SYMBOL vmlinux 0x04f32139 jbd2_journal_start_commit +EXPORT_SYMBOL vmlinux 0x050877b9 dmi_first_match +EXPORT_SYMBOL vmlinux 0x05090c98 dev_set_allmulti +EXPORT_SYMBOL vmlinux 0x051d58e8 dma_fence_wait_any_timeout +EXPORT_SYMBOL vmlinux 0x05240ee7 percpu_counter_batch +EXPORT_SYMBOL vmlinux 0x05276240 mr_fill_mroute +EXPORT_SYMBOL vmlinux 0x0531c0b4 tcp_prot +EXPORT_SYMBOL vmlinux 0x054496b4 schedule_timeout_interruptible +EXPORT_SYMBOL vmlinux 0x055e77e8 jiffies_64 +EXPORT_SYMBOL vmlinux 0x0571e72a inet_frags_init +EXPORT_SYMBOL vmlinux 0x0573d573 __wait_on_buffer +EXPORT_SYMBOL vmlinux 0x05873b3c netdev_alert +EXPORT_SYMBOL vmlinux 0x059dd9df inet_getname +EXPORT_SYMBOL vmlinux 0x05e3976f rproc_get_by_phandle +EXPORT_SYMBOL vmlinux 0x05f820ba nd_dev_to_uuid +EXPORT_SYMBOL vmlinux 0x06052f8d __memmove +EXPORT_SYMBOL vmlinux 0x060ba97c gen_pool_free_owner +EXPORT_SYMBOL vmlinux 0x061651be strcat +EXPORT_SYMBOL vmlinux 0x062a39c9 call_usermodehelper_exec +EXPORT_SYMBOL vmlinux 0x0634100a bitmap_parselist_user +EXPORT_SYMBOL vmlinux 0x063df46b nobh_write_end +EXPORT_SYMBOL vmlinux 0x064ceee5 truncate_inode_pages_final +EXPORT_SYMBOL vmlinux 0x065246b8 frame_vector_create +EXPORT_SYMBOL vmlinux 0x0688e5ad pnp_is_active +EXPORT_SYMBOL vmlinux 0x06981eed pskb_expand_head +EXPORT_SYMBOL vmlinux 0x06a4af6f skb_copy_header +EXPORT_SYMBOL vmlinux 0x06a86bc1 iowrite16 +EXPORT_SYMBOL vmlinux 0x06bd88b5 ucs2_strnlen +EXPORT_SYMBOL vmlinux 0x06c89380 flow_rule_match_icmp +EXPORT_SYMBOL vmlinux 0x06c8f2de slhc_compress +EXPORT_SYMBOL vmlinux 0x06cebac0 rproc_free +EXPORT_SYMBOL vmlinux 0x06dd1591 ipv6_chk_addr +EXPORT_SYMBOL vmlinux 0x06ee88c4 param_set_ullong +EXPORT_SYMBOL vmlinux 0x06f5b6f7 tcf_exts_validate +EXPORT_SYMBOL vmlinux 0x07150783 pps_event +EXPORT_SYMBOL vmlinux 0x072f901c vme_master_rmw +EXPORT_SYMBOL vmlinux 0x0734ed7b ppp_unregister_channel +EXPORT_SYMBOL vmlinux 0x073c85c2 filemap_write_and_wait_range +EXPORT_SYMBOL vmlinux 0x0745a981 xa_erase +EXPORT_SYMBOL vmlinux 0x0767c958 dquot_quota_off +EXPORT_SYMBOL vmlinux 0x076cac79 __breadahead +EXPORT_SYMBOL vmlinux 0x0772974f pci_disable_device +EXPORT_SYMBOL vmlinux 0x078f752c pcim_enable_device +EXPORT_SYMBOL vmlinux 0x07937280 pci_pme_active +EXPORT_SYMBOL vmlinux 0x07956492 ipmi_platform_add +EXPORT_SYMBOL vmlinux 0x07a60fbc input_mt_assign_slots +EXPORT_SYMBOL vmlinux 0x07a890c8 fb_alloc_cmap +EXPORT_SYMBOL vmlinux 0x07be5a2d input_mt_init_slots +EXPORT_SYMBOL vmlinux 0x07c81581 netdev_get_xmit_slave +EXPORT_SYMBOL vmlinux 0x07cc4a5d printk_timed_ratelimit +EXPORT_SYMBOL vmlinux 0x07ceeac9 panic_notifier_list +EXPORT_SYMBOL vmlinux 0x07d675c2 d_splice_alias +EXPORT_SYMBOL vmlinux 0x07de6ba2 netif_device_attach +EXPORT_SYMBOL vmlinux 0x07f4a447 abx500_register_ops +EXPORT_SYMBOL vmlinux 0x07f57478 pci_unmap_iospace +EXPORT_SYMBOL vmlinux 0x080530aa param_set_byte +EXPORT_SYMBOL vmlinux 0x0805f2c8 ecryptfs_get_auth_tok_key +EXPORT_SYMBOL vmlinux 0x08162c74 free_bucket_spinlocks +EXPORT_SYMBOL vmlinux 0x081861ad tty_kref_put +EXPORT_SYMBOL vmlinux 0x081d3447 clocksource_change_rating +EXPORT_SYMBOL vmlinux 0x08249512 iwe_stream_add_point +EXPORT_SYMBOL vmlinux 0x082c3213 pci_root_buses +EXPORT_SYMBOL vmlinux 0x083eb21c rfkill_unregister +EXPORT_SYMBOL vmlinux 0x0847b756 netpoll_setup +EXPORT_SYMBOL vmlinux 0x085afca0 inet_put_port +EXPORT_SYMBOL vmlinux 0x085f4d95 input_register_device +EXPORT_SYMBOL vmlinux 0x0872fca2 ethtool_rx_flow_rule_destroy +EXPORT_SYMBOL vmlinux 0x087b7bd1 generic_file_fsync +EXPORT_SYMBOL vmlinux 0x0882a449 security_xfrm_policy_alloc +EXPORT_SYMBOL vmlinux 0x088bc878 generic_file_read_iter +EXPORT_SYMBOL vmlinux 0x089a0ee7 read_cache_pages +EXPORT_SYMBOL vmlinux 0x089c21b4 set_anon_super +EXPORT_SYMBOL vmlinux 0x08ac570d qdisc_hash_add +EXPORT_SYMBOL vmlinux 0x08ccc0f2 __mod_node_page_state +EXPORT_SYMBOL vmlinux 0x08dbea8a nf_ct_get_tuple_skb +EXPORT_SYMBOL vmlinux 0x08eb06a8 nf_log_bind_pf +EXPORT_SYMBOL vmlinux 0x08ec2901 generic_key_instantiate +EXPORT_SYMBOL vmlinux 0x08f433c2 is_nd_dax +EXPORT_SYMBOL vmlinux 0x08f81005 request_key_rcu +EXPORT_SYMBOL vmlinux 0x08fc7d30 phy_driver_register +EXPORT_SYMBOL vmlinux 0x091b613f seq_read +EXPORT_SYMBOL vmlinux 0x091d868c tcp_enter_quickack_mode +EXPORT_SYMBOL vmlinux 0x092e26bf acpi_remove_address_space_handler +EXPORT_SYMBOL vmlinux 0x093712e5 acpi_purge_cached_objects +EXPORT_SYMBOL vmlinux 0x0944c43f node_states +EXPORT_SYMBOL vmlinux 0x0959b507 skb_csum_hwoffload_help +EXPORT_SYMBOL vmlinux 0x09682235 down_timeout +EXPORT_SYMBOL vmlinux 0x09769037 dmt_modes +EXPORT_SYMBOL vmlinux 0x09783644 genl_unregister_family +EXPORT_SYMBOL vmlinux 0x097a6232 bdi_set_max_ratio +EXPORT_SYMBOL vmlinux 0x097af021 neigh_proc_dointvec_jiffies +EXPORT_SYMBOL vmlinux 0x098b71c6 fb_dealloc_cmap +EXPORT_SYMBOL vmlinux 0x0991e308 mmc_gpio_get_ro +EXPORT_SYMBOL vmlinux 0x09b3a080 pci_unmap_rom +EXPORT_SYMBOL vmlinux 0x09c8eb55 font_vga_8x16 +EXPORT_SYMBOL vmlinux 0x09ced4e6 simple_release_fs +EXPORT_SYMBOL vmlinux 0x09cff069 vga_switcheroo_unlock_ddc +EXPORT_SYMBOL vmlinux 0x09d44df9 in_lock_functions +EXPORT_SYMBOL vmlinux 0x09d73df8 pci_bus_read_config_byte +EXPORT_SYMBOL vmlinux 0x09da0ba4 xa_set_mark +EXPORT_SYMBOL vmlinux 0x09faf090 neigh_resolve_output +EXPORT_SYMBOL vmlinux 0x0a05028f skb_queue_tail +EXPORT_SYMBOL vmlinux 0x0a0ebc08 __xa_cmpxchg +EXPORT_SYMBOL vmlinux 0x0a1957a6 xfrm_dev_state_flush +EXPORT_SYMBOL vmlinux 0x0a1da801 rproc_coredump_set_elf_info +EXPORT_SYMBOL vmlinux 0x0a1dbc76 tcp_rx_skb_cache_key +EXPORT_SYMBOL vmlinux 0x0a24519f phy_modify_paged +EXPORT_SYMBOL vmlinux 0x0a25ba28 __xfrm_policy_check +EXPORT_SYMBOL vmlinux 0x0a292872 reservation_seqcount_class +EXPORT_SYMBOL vmlinux 0x0a683a3a skb_copy_datagram_from_iter +EXPORT_SYMBOL vmlinux 0x0a770832 register_memory_notifier +EXPORT_SYMBOL vmlinux 0x0a819744 phy_request_interrupt +EXPORT_SYMBOL vmlinux 0x0a9e2d6a seg6_hmac_info_del +EXPORT_SYMBOL vmlinux 0x0a9e580d genphy_check_and_restart_aneg +EXPORT_SYMBOL vmlinux 0x0aa309cf synchronize_hardirq +EXPORT_SYMBOL vmlinux 0x0aaab567 ipv6_dev_mc_dec +EXPORT_SYMBOL vmlinux 0x0aaccc92 pci_remap_iospace +EXPORT_SYMBOL vmlinux 0x0ab2c36c max8925_set_bits +EXPORT_SYMBOL vmlinux 0x0ac323c0 pagecache_get_page +EXPORT_SYMBOL vmlinux 0x0acf7679 dma_issue_pending_all +EXPORT_SYMBOL vmlinux 0x0ad10eb8 _raw_read_unlock_bh +EXPORT_SYMBOL vmlinux 0x0ad3f418 __cgroup_bpf_run_filter_sock_ops +EXPORT_SYMBOL vmlinux 0x0ae20bf5 dev_mc_init +EXPORT_SYMBOL vmlinux 0x0af20eae down_read_interruptible +EXPORT_SYMBOL vmlinux 0x0b1beb31 vmalloc_32_user +EXPORT_SYMBOL vmlinux 0x0b22a847 mount_bdev +EXPORT_SYMBOL vmlinux 0x0b26b8c8 acpi_run_osc +EXPORT_SYMBOL vmlinux 0x0b290ada dma_fence_chain_walk +EXPORT_SYMBOL vmlinux 0x0b2cb334 psched_ratecfg_precompute +EXPORT_SYMBOL vmlinux 0x0b30f0be set_security_override_from_ctx +EXPORT_SYMBOL vmlinux 0x0b637410 cr4_update_irqsoff +EXPORT_SYMBOL vmlinux 0x0b6acbab dev_change_flags +EXPORT_SYMBOL vmlinux 0x0b742fd7 simple_strtol +EXPORT_SYMBOL vmlinux 0x0b744416 scsi_host_busy +EXPORT_SYMBOL vmlinux 0x0ba44515 mmc_can_secure_erase_trim +EXPORT_SYMBOL vmlinux 0x0ba742e1 cdrom_mode_select +EXPORT_SYMBOL vmlinux 0x0baa8943 mmc_get_card +EXPORT_SYMBOL vmlinux 0x0baec613 pid_task +EXPORT_SYMBOL vmlinux 0x0bb1f6db netlink_set_err +EXPORT_SYMBOL vmlinux 0x0bc477a2 irq_set_irq_type +EXPORT_SYMBOL vmlinux 0x0bcabc2b skb_checksum_setup +EXPORT_SYMBOL vmlinux 0x0bea8620 xfrm6_protocol_deregister +EXPORT_SYMBOL vmlinux 0x0bf4cc5b sock_kmalloc +EXPORT_SYMBOL vmlinux 0x0bf9845a phy_support_sym_pause +EXPORT_SYMBOL vmlinux 0x0c06709c md_bitmap_cond_end_sync +EXPORT_SYMBOL vmlinux 0x0c0c262d neigh_carrier_down +EXPORT_SYMBOL vmlinux 0x0c0f79af ZSTD_getDictID_fromFrame +EXPORT_SYMBOL vmlinux 0x0c25ec48 secure_tcpv6_seq +EXPORT_SYMBOL vmlinux 0x0c626460 pcibios_resource_to_bus +EXPORT_SYMBOL vmlinux 0x0c65b95b unregister_cdrom +EXPORT_SYMBOL vmlinux 0x0c664b2b get_tree_bdev +EXPORT_SYMBOL vmlinux 0x0c68df3e fs_param_is_enum +EXPORT_SYMBOL vmlinux 0x0c699683 update_devfreq +EXPORT_SYMBOL vmlinux 0x0c6bdc3f vme_master_read +EXPORT_SYMBOL vmlinux 0x0c6d48c4 pm8606_osc_disable +EXPORT_SYMBOL vmlinux 0x0c7384a8 abx500_remove_ops +EXPORT_SYMBOL vmlinux 0x0c7595da vlan_filter_drop_vids +EXPORT_SYMBOL vmlinux 0x0c77ec81 __getblk_gfp +EXPORT_SYMBOL vmlinux 0x0c98b865 inet_sk_rx_dst_set +EXPORT_SYMBOL vmlinux 0x0c9dd64b dev_set_alias +EXPORT_SYMBOL vmlinux 0x0ca9d5eb register_fib_notifier +EXPORT_SYMBOL vmlinux 0x0cb264a1 security_lock_kernel_down +EXPORT_SYMBOL vmlinux 0x0cc2640f phy_read_mmd +EXPORT_SYMBOL vmlinux 0x0cc4b4b6 crc_ccitt_false +EXPORT_SYMBOL vmlinux 0x0cd20dc3 mipi_dsi_dcs_set_pixel_format +EXPORT_SYMBOL vmlinux 0x0cd5835b ipv6_flowlabel_exclusive +EXPORT_SYMBOL vmlinux 0x0ce19729 mb_cache_entry_touch +EXPORT_SYMBOL vmlinux 0x0ce3cfe3 ll_rw_block +EXPORT_SYMBOL vmlinux 0x0ce9df38 key_validate +EXPORT_SYMBOL vmlinux 0x0cf8fdfe framebuffer_alloc +EXPORT_SYMBOL vmlinux 0x0d07f543 get_anon_bdev +EXPORT_SYMBOL vmlinux 0x0d1a3781 bio_integrity_prep +EXPORT_SYMBOL vmlinux 0x0d21bde2 vfio_pin_pages +EXPORT_SYMBOL vmlinux 0x0d32d139 free_buffer_head +EXPORT_SYMBOL vmlinux 0x0d542439 __ipv6_addr_type +EXPORT_SYMBOL vmlinux 0x0d61eeee __bitmap_subset +EXPORT_SYMBOL vmlinux 0x0d6334f5 security_binder_transfer_file +EXPORT_SYMBOL vmlinux 0x0d6f786d create_empty_buffers +EXPORT_SYMBOL vmlinux 0x0da29e2e rfkill_alloc +EXPORT_SYMBOL vmlinux 0x0dc6b043 configfs_register_subsystem +EXPORT_SYMBOL vmlinux 0x0de69945 phy_ethtool_set_wol +EXPORT_SYMBOL vmlinux 0x0dec5ef7 i2c_smbus_read_block_data +EXPORT_SYMBOL vmlinux 0x0df0fc70 inode_sub_bytes +EXPORT_SYMBOL vmlinux 0x0df168bb xfrm_stateonly_find +EXPORT_SYMBOL vmlinux 0x0e17678a siphash_4u64 +EXPORT_SYMBOL vmlinux 0x0e23b37f alloc_cpumask_var_node +EXPORT_SYMBOL vmlinux 0x0e27a2dd ZSTD_initCCtx +EXPORT_SYMBOL vmlinux 0x0e334171 inet_csk_delete_keepalive_timer +EXPORT_SYMBOL vmlinux 0x0e464ade __inc_node_page_state +EXPORT_SYMBOL vmlinux 0x0e5b031e dma_async_device_register +EXPORT_SYMBOL vmlinux 0x0e5e73ac fs_param_is_bool +EXPORT_SYMBOL vmlinux 0x0e74ad2d utf8ncursor +EXPORT_SYMBOL vmlinux 0x0e79493d tty_port_close_end +EXPORT_SYMBOL vmlinux 0x0e973019 flush_signals +EXPORT_SYMBOL vmlinux 0x0ec5babe vme_dma_free +EXPORT_SYMBOL vmlinux 0x0ed8bf3d locks_init_lock +EXPORT_SYMBOL vmlinux 0x0f05c7b8 __x86_indirect_thunk_r15 +EXPORT_SYMBOL vmlinux 0x0f066bd4 blk_mq_start_request +EXPORT_SYMBOL vmlinux 0x0f09cc34 schedule_timeout_killable +EXPORT_SYMBOL vmlinux 0x0f37ca89 lockref_put_not_zero +EXPORT_SYMBOL vmlinux 0x0f86f560 kthread_delayed_work_timer_fn +EXPORT_SYMBOL vmlinux 0x0fab1ab0 hdmi_spd_infoframe_pack +EXPORT_SYMBOL vmlinux 0x0faef0ed __tasklet_schedule +EXPORT_SYMBOL vmlinux 0x0fb2f8a4 mktime64 +EXPORT_SYMBOL vmlinux 0x0fd902db mb_cache_entry_create +EXPORT_SYMBOL vmlinux 0x0fddadea netdev_warn +EXPORT_SYMBOL vmlinux 0x0fe4faf3 __dev_kfree_skb_irq +EXPORT_SYMBOL vmlinux 0x0ff4178f __cleancache_init_fs +EXPORT_SYMBOL vmlinux 0x0ff80f59 zalloc_cpumask_var +EXPORT_SYMBOL vmlinux 0x0fff5afc time64_to_tm +EXPORT_SYMBOL vmlinux 0x0fffc164 __pci_register_driver +EXPORT_SYMBOL vmlinux 0x10003fed single_open +EXPORT_SYMBOL vmlinux 0x10037f34 dec_node_page_state +EXPORT_SYMBOL vmlinux 0x100fbe69 vm_zone_stat +EXPORT_SYMBOL vmlinux 0x101dfe7a xfrm_unregister_km +EXPORT_SYMBOL vmlinux 0x102844e4 inetdev_by_index +EXPORT_SYMBOL vmlinux 0x102bed66 cpu_info +EXPORT_SYMBOL vmlinux 0x1035c7c2 __release_region +EXPORT_SYMBOL vmlinux 0x1039fa61 __cleancache_invalidate_fs +EXPORT_SYMBOL vmlinux 0x1040f30d dev_trans_start +EXPORT_SYMBOL vmlinux 0x10443a35 fb_is_primary_device +EXPORT_SYMBOL vmlinux 0x10544230 bdi_put +EXPORT_SYMBOL vmlinux 0x1057a279 bsearch +EXPORT_SYMBOL vmlinux 0x1068004b gf128mul_bbe +EXPORT_SYMBOL vmlinux 0x107e5878 zlib_inflateEnd +EXPORT_SYMBOL vmlinux 0x10b6092b md_register_thread +EXPORT_SYMBOL vmlinux 0x10bc44e5 sock_alloc_file +EXPORT_SYMBOL vmlinux 0x10c2fd57 flow_rule_match_meta +EXPORT_SYMBOL vmlinux 0x10c3f57e __gnet_stats_copy_queue +EXPORT_SYMBOL vmlinux 0x10d9f885 scsi_sense_desc_find +EXPORT_SYMBOL vmlinux 0x10e4bda5 jbd2_journal_restart +EXPORT_SYMBOL vmlinux 0x10efa86a dev_pm_opp_register_notifier +EXPORT_SYMBOL vmlinux 0x11089ac7 _ctype +EXPORT_SYMBOL vmlinux 0x110a2084 disk_end_io_acct +EXPORT_SYMBOL vmlinux 0x11124eaf sock_wake_async +EXPORT_SYMBOL vmlinux 0x11128447 eisa_bus_type +EXPORT_SYMBOL vmlinux 0x1117ea92 file_check_and_advance_wb_err +EXPORT_SYMBOL vmlinux 0x113edf02 xfrm_unregister_type_offload +EXPORT_SYMBOL vmlinux 0x115a1eaa __xfrm_init_state +EXPORT_SYMBOL vmlinux 0x115abe25 cleancache_register_ops +EXPORT_SYMBOL vmlinux 0x115b262d xfrm6_rcv_tnl +EXPORT_SYMBOL vmlinux 0x115f7ba6 phy_attach_direct +EXPORT_SYMBOL vmlinux 0x1163f0a7 blk_max_low_pfn +EXPORT_SYMBOL vmlinux 0x116fc5a8 pps_unregister_source +EXPORT_SYMBOL vmlinux 0x117093be qdisc_class_hash_init +EXPORT_SYMBOL vmlinux 0x11716274 param_ops_ullong +EXPORT_SYMBOL vmlinux 0x1172c645 find_inode_by_ino_rcu +EXPORT_SYMBOL vmlinux 0x1177911d set_pages_array_uc +EXPORT_SYMBOL vmlinux 0x1183a452 __icmp_send +EXPORT_SYMBOL vmlinux 0x1187d567 cros_ec_cmd_xfer +EXPORT_SYMBOL vmlinux 0x11894b60 tcf_exts_destroy +EXPORT_SYMBOL vmlinux 0x11a5badd genphy_read_abilities +EXPORT_SYMBOL vmlinux 0x11b86f2d __x86_retpoline_rbp +EXPORT_SYMBOL vmlinux 0x11c509d1 __generic_file_write_iter +EXPORT_SYMBOL vmlinux 0x11c8164a pci_fixup_cardbus +EXPORT_SYMBOL vmlinux 0x11cbb053 dump_truncate +EXPORT_SYMBOL vmlinux 0x11e0ec41 dm_read_arg +EXPORT_SYMBOL vmlinux 0x11e30762 chacha_block_generic +EXPORT_SYMBOL vmlinux 0x11f0e120 delete_from_page_cache +EXPORT_SYMBOL vmlinux 0x11f47d8c utf8_strncmp +EXPORT_SYMBOL vmlinux 0x11f7ed4c hex_to_bin +EXPORT_SYMBOL vmlinux 0x11fef0b1 genphy_resume +EXPORT_SYMBOL vmlinux 0x120b336a __rb_insert_augmented +EXPORT_SYMBOL vmlinux 0x1212ec11 xfrm_spd_getinfo +EXPORT_SYMBOL vmlinux 0x12133ec9 kthread_stop +EXPORT_SYMBOL vmlinux 0x12254ac9 locks_copy_lock +EXPORT_SYMBOL vmlinux 0x1232c6c6 inc_nlink +EXPORT_SYMBOL vmlinux 0x1245d2ab ps2_handle_ack +EXPORT_SYMBOL vmlinux 0x12477385 i2c_transfer +EXPORT_SYMBOL vmlinux 0x12551092 release_sock +EXPORT_SYMBOL vmlinux 0x1255d575 tcp_ioctl +EXPORT_SYMBOL vmlinux 0x1278221d ZSTD_compressBegin_usingCDict +EXPORT_SYMBOL vmlinux 0x12a38747 usleep_range +EXPORT_SYMBOL vmlinux 0x12a436da param_set_ulong +EXPORT_SYMBOL vmlinux 0x12a89e1c vmap +EXPORT_SYMBOL vmlinux 0x12ac5e3e key_alloc +EXPORT_SYMBOL vmlinux 0x12b5dbf4 pci_bus_write_config_word +EXPORT_SYMBOL vmlinux 0x12baeae9 dm_unregister_target +EXPORT_SYMBOL vmlinux 0x12c18988 i2c_clients_command +EXPORT_SYMBOL vmlinux 0x12cabc89 siphash_2u64 +EXPORT_SYMBOL vmlinux 0x12e8abab devfreq_suspend_device +EXPORT_SYMBOL vmlinux 0x12effe24 ipv6_dev_get_saddr +EXPORT_SYMBOL vmlinux 0x12f1f78e __serio_register_port +EXPORT_SYMBOL vmlinux 0x12f6f69c fb_videomode_to_var +EXPORT_SYMBOL vmlinux 0x130afd75 acpi_get_sleep_type_data +EXPORT_SYMBOL vmlinux 0x13110126 request_resource +EXPORT_SYMBOL vmlinux 0x131a6146 xa_clear_mark +EXPORT_SYMBOL vmlinux 0x13212e3e devm_devfreq_remove_device +EXPORT_SYMBOL vmlinux 0x13243d4b wl1251_get_platform_data +EXPORT_SYMBOL vmlinux 0x132778bd pci_enable_device +EXPORT_SYMBOL vmlinux 0x13372565 pci_wake_from_d3 +EXPORT_SYMBOL vmlinux 0x133d9e47 elv_rb_latter_request +EXPORT_SYMBOL vmlinux 0x133edd78 security_binder_transaction +EXPORT_SYMBOL vmlinux 0x1344d7e6 acpi_enable_gpe +EXPORT_SYMBOL vmlinux 0x134cdd34 inet_frag_rbtree_purge +EXPORT_SYMBOL vmlinux 0x134ce9ff ex_handler_clear_fs +EXPORT_SYMBOL vmlinux 0x1352ca46 backlight_force_update +EXPORT_SYMBOL vmlinux 0x1368f3b9 sock_no_getname +EXPORT_SYMBOL vmlinux 0x137f3c6a __cpuhp_remove_state_cpuslocked +EXPORT_SYMBOL vmlinux 0x1389619c __max_die_per_package +EXPORT_SYMBOL vmlinux 0x13971e31 max8998_bulk_read +EXPORT_SYMBOL vmlinux 0x139f2189 __kfifo_alloc +EXPORT_SYMBOL vmlinux 0x13a59087 ps2_sendbyte +EXPORT_SYMBOL vmlinux 0x13a93342 __napi_schedule +EXPORT_SYMBOL vmlinux 0x13b278c3 ip_frag_next +EXPORT_SYMBOL vmlinux 0x13b85be4 tty_hung_up_p +EXPORT_SYMBOL vmlinux 0x13b8a7db blk_queue_chunk_sectors +EXPORT_SYMBOL vmlinux 0x13c33007 config_item_init_type_name +EXPORT_SYMBOL vmlinux 0x13d0adf7 __kfifo_out +EXPORT_SYMBOL vmlinux 0x13f42152 system_entering_hibernation +EXPORT_SYMBOL vmlinux 0x13f6a979 flow_rule_match_enc_opts +EXPORT_SYMBOL vmlinux 0x140439b3 scsi_dma_map +EXPORT_SYMBOL vmlinux 0x14071936 acpi_match_device_ids +EXPORT_SYMBOL vmlinux 0x141271bf acpi_dev_found +EXPORT_SYMBOL vmlinux 0x14171bb7 inet_gro_complete +EXPORT_SYMBOL vmlinux 0x1435386b simple_rmdir +EXPORT_SYMBOL vmlinux 0x1442b56e filemap_fdatawrite +EXPORT_SYMBOL vmlinux 0x14510720 vmf_insert_pfn +EXPORT_SYMBOL vmlinux 0x14605535 dma_fence_context_alloc +EXPORT_SYMBOL vmlinux 0x146289b7 crc16_table +EXPORT_SYMBOL vmlinux 0x14709f5f dma_set_coherent_mask +EXPORT_SYMBOL vmlinux 0x1481799e file_open_root +EXPORT_SYMBOL vmlinux 0x149fb82f alloc_xenballooned_pages +EXPORT_SYMBOL vmlinux 0x14a2c270 kmem_cache_size +EXPORT_SYMBOL vmlinux 0x14c67e3e tcp_tx_delay_enabled +EXPORT_SYMBOL vmlinux 0x14c6c488 twl6040_get_vibralr_status +EXPORT_SYMBOL vmlinux 0x14d23636 param_set_uint +EXPORT_SYMBOL vmlinux 0x14da6a04 zap_page_range +EXPORT_SYMBOL vmlinux 0x14fb2365 cmdline_parts_set +EXPORT_SYMBOL vmlinux 0x14fe6bd1 fs_context_for_mount +EXPORT_SYMBOL vmlinux 0x150422e7 sg_alloc_table_from_pages +EXPORT_SYMBOL vmlinux 0x150e3657 _raw_read_lock_bh +EXPORT_SYMBOL vmlinux 0x151c8de8 path_is_mountpoint +EXPORT_SYMBOL vmlinux 0x151f4898 schedule_timeout_uninterruptible +EXPORT_SYMBOL vmlinux 0x1526b301 unix_tot_inflight +EXPORT_SYMBOL vmlinux 0x154c6338 dm_kcopyd_client_destroy +EXPORT_SYMBOL vmlinux 0x155892a6 kernel_param_lock +EXPORT_SYMBOL vmlinux 0x158193e9 __udp_disconnect +EXPORT_SYMBOL vmlinux 0x1583dc75 try_to_release_page +EXPORT_SYMBOL vmlinux 0x158fc6f7 pm860x_bulk_read +EXPORT_SYMBOL vmlinux 0x159063e4 kill_litter_super +EXPORT_SYMBOL vmlinux 0x15a61ce4 sock_set_reuseport +EXPORT_SYMBOL vmlinux 0x15ba50a6 jiffies +EXPORT_SYMBOL vmlinux 0x15bafe29 unregister_md_cluster_operations +EXPORT_SYMBOL vmlinux 0x15bed7a5 LZ4_decompress_safe_partial +EXPORT_SYMBOL vmlinux 0x15c18b7f mipi_dsi_dcs_get_pixel_format +EXPORT_SYMBOL vmlinux 0x15c63d4b netif_schedule_queue +EXPORT_SYMBOL vmlinux 0x15c85de3 mempool_init +EXPORT_SYMBOL vmlinux 0x15d303c8 nf_reinject +EXPORT_SYMBOL vmlinux 0x15d6b51d scsi_cmd_blk_ioctl +EXPORT_SYMBOL vmlinux 0x15f36268 stream_open +EXPORT_SYMBOL vmlinux 0x15f7983f __x86_retpoline_r13 +EXPORT_SYMBOL vmlinux 0x15fc53a4 ipv6_setsockopt +EXPORT_SYMBOL vmlinux 0x160a6cf1 netdev_lower_get_next +EXPORT_SYMBOL vmlinux 0x160ea4c8 sfi_disabled +EXPORT_SYMBOL vmlinux 0x160f1f46 blk_queue_logical_block_size +EXPORT_SYMBOL vmlinux 0x161456f7 skb_add_rx_frag +EXPORT_SYMBOL vmlinux 0x16199cb4 mr_mfc_find_any +EXPORT_SYMBOL vmlinux 0x16286538 iowrite64be_lo_hi +EXPORT_SYMBOL vmlinux 0x162893fd hashlen_string +EXPORT_SYMBOL vmlinux 0x16301b34 wrmsrl_on_cpu +EXPORT_SYMBOL vmlinux 0x16316a10 ZSTD_getFrameContentSize +EXPORT_SYMBOL vmlinux 0x1636b03e configfs_unregister_default_group +EXPORT_SYMBOL vmlinux 0x16390fc3 jbd2__journal_start +EXPORT_SYMBOL vmlinux 0x1648c79a tcf_idrinfo_destroy +EXPORT_SYMBOL vmlinux 0x165711fe tcp_v4_conn_request +EXPORT_SYMBOL vmlinux 0x165d8170 xfrm_register_type +EXPORT_SYMBOL vmlinux 0x165e57b4 tcf_block_get +EXPORT_SYMBOL vmlinux 0x16663587 I_BDEV +EXPORT_SYMBOL vmlinux 0x167c5967 print_hex_dump +EXPORT_SYMBOL vmlinux 0x167c9bcf filp_close +EXPORT_SYMBOL vmlinux 0x167e7f9d __get_user_1 +EXPORT_SYMBOL vmlinux 0x167f29fb vfs_getattr +EXPORT_SYMBOL vmlinux 0x16930184 blk_queue_flag_set +EXPORT_SYMBOL vmlinux 0x16970309 jbd2_journal_get_write_access +EXPORT_SYMBOL vmlinux 0x169874e7 posix_acl_update_mode +EXPORT_SYMBOL vmlinux 0x169938c1 __sysfs_match_string +EXPORT_SYMBOL vmlinux 0x16b0426d sg_miter_start +EXPORT_SYMBOL vmlinux 0x16b197fc skb_find_text +EXPORT_SYMBOL vmlinux 0x16bf7f3b pin_user_pages_unlocked +EXPORT_SYMBOL vmlinux 0x16c0d260 skb_mac_gso_segment +EXPORT_SYMBOL vmlinux 0x16c8c7dd sock_pfree +EXPORT_SYMBOL vmlinux 0x16ca5350 component_match_add_release +EXPORT_SYMBOL vmlinux 0x16cbf4e2 __dynamic_ibdev_dbg +EXPORT_SYMBOL vmlinux 0x16cdc340 acpi_get_table +EXPORT_SYMBOL vmlinux 0x16dee44d dma_fence_init +EXPORT_SYMBOL vmlinux 0x16e297c3 bit_wait +EXPORT_SYMBOL vmlinux 0x16f7bd00 blk_mq_delay_run_hw_queue +EXPORT_SYMBOL vmlinux 0x170ddf79 acpi_install_notify_handler +EXPORT_SYMBOL vmlinux 0x1716a3a1 open_exec +EXPORT_SYMBOL vmlinux 0x1727dc44 posix_acl_to_xattr +EXPORT_SYMBOL vmlinux 0x173d4808 sk_reset_timer +EXPORT_SYMBOL vmlinux 0x17424e5f input_register_handle +EXPORT_SYMBOL vmlinux 0x17477ce8 thaw_bdev +EXPORT_SYMBOL vmlinux 0x175e33fb dma_spin_lock +EXPORT_SYMBOL vmlinux 0x1764a121 dev_getbyhwaddr_rcu +EXPORT_SYMBOL vmlinux 0x1765ea1f __xa_alloc_cyclic +EXPORT_SYMBOL vmlinux 0x1771c9fe migrate_page +EXPORT_SYMBOL vmlinux 0x179515ca md_unregister_thread +EXPORT_SYMBOL vmlinux 0x179b425d vfs_parse_fs_string +EXPORT_SYMBOL vmlinux 0x17be68ca acpi_clear_event +EXPORT_SYMBOL vmlinux 0x17be81be cdev_init +EXPORT_SYMBOL vmlinux 0x17cbed06 tty_register_ldisc +EXPORT_SYMBOL vmlinux 0x17e2fda2 phy_queue_state_machine +EXPORT_SYMBOL vmlinux 0x17e802df dquot_free_inode +EXPORT_SYMBOL vmlinux 0x17e93368 neigh_for_each +EXPORT_SYMBOL vmlinux 0x17eca8b9 fscrypt_fname_alloc_buffer +EXPORT_SYMBOL vmlinux 0x17f341a0 i8042_lock_chip +EXPORT_SYMBOL vmlinux 0x18051173 d_find_alias +EXPORT_SYMBOL vmlinux 0x180664bf mark_buffer_dirty_inode +EXPORT_SYMBOL vmlinux 0x181a3785 _dev_notice +EXPORT_SYMBOL vmlinux 0x1826d66f put_fs_context +EXPORT_SYMBOL vmlinux 0x18345b8e __bitmap_replace +EXPORT_SYMBOL vmlinux 0x18386f54 tcp_simple_retransmit +EXPORT_SYMBOL vmlinux 0x18486dc7 iov_iter_gap_alignment +EXPORT_SYMBOL vmlinux 0x1851d571 flow_rule_match_ports +EXPORT_SYMBOL vmlinux 0x185f2999 done_path_create +EXPORT_SYMBOL vmlinux 0x187a4ecd __tracepoint_read_msr +EXPORT_SYMBOL vmlinux 0x18888d00 downgrade_write +EXPORT_SYMBOL vmlinux 0x188a10f5 freeze_bdev +EXPORT_SYMBOL vmlinux 0x188ea314 jiffies_to_timespec64 +EXPORT_SYMBOL vmlinux 0x189ce8f9 proc_set_user +EXPORT_SYMBOL vmlinux 0x18b72573 register_kmmio_probe +EXPORT_SYMBOL vmlinux 0x18c6c04d nvm_unregister_tgt_type +EXPORT_SYMBOL vmlinux 0x18d0c42a qdisc_create_dflt +EXPORT_SYMBOL vmlinux 0x18e60984 __do_once_start +EXPORT_SYMBOL vmlinux 0x18efd028 hdmi_drm_infoframe_unpack_only +EXPORT_SYMBOL vmlinux 0x191ca2d2 tty_driver_flush_buffer +EXPORT_SYMBOL vmlinux 0x193f684b compat_nf_setsockopt +EXPORT_SYMBOL vmlinux 0x1953c958 mempool_create +EXPORT_SYMBOL vmlinux 0x19567d06 vfio_info_cap_shift +EXPORT_SYMBOL vmlinux 0x195c5e91 iterate_fd +EXPORT_SYMBOL vmlinux 0x197dfa1f iget_locked +EXPORT_SYMBOL vmlinux 0x1980e29a ata_link_printk +EXPORT_SYMBOL vmlinux 0x1984d421 out_of_line_wait_on_bit +EXPORT_SYMBOL vmlinux 0x1985d831 eth_mac_addr +EXPORT_SYMBOL vmlinux 0x198620d7 security_add_mnt_opt +EXPORT_SYMBOL vmlinux 0x1993f4bd fixed_size_llseek +EXPORT_SYMBOL vmlinux 0x199e9bc6 path_put +EXPORT_SYMBOL vmlinux 0x199ed0cd net_disable_timestamp +EXPORT_SYMBOL vmlinux 0x19a6459c fwnode_get_mac_address +EXPORT_SYMBOL vmlinux 0x19b77da6 udp_gro_complete +EXPORT_SYMBOL vmlinux 0x19bd383b security_secmark_refcount_dec +EXPORT_SYMBOL vmlinux 0x19dc6678 file_update_time +EXPORT_SYMBOL vmlinux 0x19df99b9 acpi_finish_gpe +EXPORT_SYMBOL vmlinux 0x19f6121b __dev_set_mtu +EXPORT_SYMBOL vmlinux 0x19f8a9df tcf_action_check_ctrlact +EXPORT_SYMBOL vmlinux 0x1a0a102f qdisc_reset +EXPORT_SYMBOL vmlinux 0x1a107de2 ZSTD_compressCCtx +EXPORT_SYMBOL vmlinux 0x1a13253b acpi_pm_device_sleep_state +EXPORT_SYMBOL vmlinux 0x1a1bac9c ZSTD_decompressDCtx +EXPORT_SYMBOL vmlinux 0x1a276a9b block_invalidatepage +EXPORT_SYMBOL vmlinux 0x1a390e63 kernel_getpeername +EXPORT_SYMBOL vmlinux 0x1a3f8684 pci_bus_write_config_dword +EXPORT_SYMBOL vmlinux 0x1a45cb6c acpi_disabled +EXPORT_SYMBOL vmlinux 0x1a47b0db devm_memunmap +EXPORT_SYMBOL vmlinux 0x1a4c58e8 pagevec_lookup_range +EXPORT_SYMBOL vmlinux 0x1a63af34 vga_switcheroo_process_delayed_switch +EXPORT_SYMBOL vmlinux 0x1a713c09 kthread_bind +EXPORT_SYMBOL vmlinux 0x1a7530e8 fb_set_suspend +EXPORT_SYMBOL vmlinux 0x1a88e8fb tty_port_tty_get +EXPORT_SYMBOL vmlinux 0x1a897897 skb_dump +EXPORT_SYMBOL vmlinux 0x1a9027ae skb_vlan_push +EXPORT_SYMBOL vmlinux 0x1a9a433c prandom_u32_state +EXPORT_SYMBOL vmlinux 0x1aa9fba0 vfio_dma_rw +EXPORT_SYMBOL vmlinux 0x1ac5d3cb strcspn +EXPORT_SYMBOL vmlinux 0x1ad1cd90 devfreq_monitor_resume +EXPORT_SYMBOL vmlinux 0x1ad259bb __sk_dst_check +EXPORT_SYMBOL vmlinux 0x1b015d25 bitmap_parselist +EXPORT_SYMBOL vmlinux 0x1b163481 tcp_get_cookie_sock +EXPORT_SYMBOL vmlinux 0x1b247983 dma_async_device_unregister +EXPORT_SYMBOL vmlinux 0x1b2f844c kset_unregister +EXPORT_SYMBOL vmlinux 0x1b3deb6e tcp_sock_set_keepidle +EXPORT_SYMBOL vmlinux 0x1b45b5cc param_set_bint +EXPORT_SYMBOL vmlinux 0x1b4f2bf5 bio_advance +EXPORT_SYMBOL vmlinux 0x1b597b7a swake_up_all +EXPORT_SYMBOL vmlinux 0x1b5ffecb dev_queue_xmit_accel +EXPORT_SYMBOL vmlinux 0x1b6314fd in_aton +EXPORT_SYMBOL vmlinux 0x1b700d37 put_vaddr_frames +EXPORT_SYMBOL vmlinux 0x1b777357 rdmacg_unregister_device +EXPORT_SYMBOL vmlinux 0x1b7c2365 padata_set_cpumask +EXPORT_SYMBOL vmlinux 0x1b81a1c8 dma_direct_sync_single_for_device +EXPORT_SYMBOL vmlinux 0x1b8a0add mark_buffer_write_io_error +EXPORT_SYMBOL vmlinux 0x1b8b95ad i8042_unlock_chip +EXPORT_SYMBOL vmlinux 0x1b9f6e97 dev_get_iflink +EXPORT_SYMBOL vmlinux 0x1ba59527 __kmalloc_node +EXPORT_SYMBOL vmlinux 0x1bb007e3 ip_setsockopt +EXPORT_SYMBOL vmlinux 0x1bb51249 tcp_have_smc +EXPORT_SYMBOL vmlinux 0x1bcd4595 md_write_start +EXPORT_SYMBOL vmlinux 0x1bd59dbe vme_free_consistent +EXPORT_SYMBOL vmlinux 0x1bda6964 mipi_dsi_dcs_set_tear_scanline +EXPORT_SYMBOL vmlinux 0x1bde7c12 amd_iommu_rlookup_table +EXPORT_SYMBOL vmlinux 0x1c10ff5d udp_sk_rx_dst_set +EXPORT_SYMBOL vmlinux 0x1c1b9f8e _raw_write_unlock_irqrestore +EXPORT_SYMBOL vmlinux 0x1c2784f6 textsearch_destroy +EXPORT_SYMBOL vmlinux 0x1c2bfa37 dquot_reclaim_space_nodirty +EXPORT_SYMBOL vmlinux 0x1c338147 vm_numa_stat +EXPORT_SYMBOL vmlinux 0x1c58427f acpi_remove_notify_handler +EXPORT_SYMBOL vmlinux 0x1c5922b7 iov_iter_npages +EXPORT_SYMBOL vmlinux 0x1c8273a3 skb_udp_tunnel_segment +EXPORT_SYMBOL vmlinux 0x1c99f7d9 gnet_stats_copy_basic +EXPORT_SYMBOL vmlinux 0x1ca57a24 skb_copy_expand +EXPORT_SYMBOL vmlinux 0x1cadaa77 scsi_device_quiesce +EXPORT_SYMBOL vmlinux 0x1cb2c6d8 kvasprintf +EXPORT_SYMBOL vmlinux 0x1cc59155 pci_get_class +EXPORT_SYMBOL vmlinux 0x1ccb7f41 fd_install +EXPORT_SYMBOL vmlinux 0x1cd8438b pxm_to_node +EXPORT_SYMBOL vmlinux 0x1cf8c279 mmc_gpio_get_cd +EXPORT_SYMBOL vmlinux 0x1cfc4489 unregister_tcf_proto_ops +EXPORT_SYMBOL vmlinux 0x1d07e365 memdup_user_nul +EXPORT_SYMBOL vmlinux 0x1d0d3abf inet_frag_destroy +EXPORT_SYMBOL vmlinux 0x1d134145 init_pseudo +EXPORT_SYMBOL vmlinux 0x1d19f77b physical_mask +EXPORT_SYMBOL vmlinux 0x1d1abdf0 acpi_get_physical_device_location +EXPORT_SYMBOL vmlinux 0x1d24c881 ___ratelimit +EXPORT_SYMBOL vmlinux 0x1d28ef1f xfrm_policy_bysel_ctx +EXPORT_SYMBOL vmlinux 0x1d2a4efc dev_deactivate +EXPORT_SYMBOL vmlinux 0x1d2d6d15 wait_iff_congested +EXPORT_SYMBOL vmlinux 0x1d40b6f3 idr_for_each +EXPORT_SYMBOL vmlinux 0x1d4c4dcc __inode_sub_bytes +EXPORT_SYMBOL vmlinux 0x1d5d82d0 page_mapped +EXPORT_SYMBOL vmlinux 0x1d5f9555 frame_vector_destroy +EXPORT_SYMBOL vmlinux 0x1d7d3a03 starget_for_each_device +EXPORT_SYMBOL vmlinux 0x1d870e7a __neigh_set_probe_once +EXPORT_SYMBOL vmlinux 0x1d87fd22 dup_iter +EXPORT_SYMBOL vmlinux 0x1d925103 mfd_cell_disable +EXPORT_SYMBOL vmlinux 0x1da1cbe7 vme_new_dma_list +EXPORT_SYMBOL vmlinux 0x1db7706b __copy_user_nocache +EXPORT_SYMBOL vmlinux 0x1dc14f92 phy_register_fixup +EXPORT_SYMBOL vmlinux 0x1dc6c93b lookup_user_key +EXPORT_SYMBOL vmlinux 0x1dd0c544 sock_kfree_s +EXPORT_SYMBOL vmlinux 0x1dd571e6 fb_copy_cmap +EXPORT_SYMBOL vmlinux 0x1ddd643c flow_hash_from_keys +EXPORT_SYMBOL vmlinux 0x1de4ccb2 get_sg_io_hdr +EXPORT_SYMBOL vmlinux 0x1df1dea3 key_link +EXPORT_SYMBOL vmlinux 0x1df535d6 __tcf_em_tree_match +EXPORT_SYMBOL vmlinux 0x1df63e88 ZSTD_compressBegin +EXPORT_SYMBOL vmlinux 0x1dfbdc31 mdiobus_read_nested +EXPORT_SYMBOL vmlinux 0x1e021dae netif_set_real_num_tx_queues +EXPORT_SYMBOL vmlinux 0x1e06c7fa udp_seq_next +EXPORT_SYMBOL vmlinux 0x1e0a0c24 mod_timer_pending +EXPORT_SYMBOL vmlinux 0x1e0cd7fe acpi_detach_data +EXPORT_SYMBOL vmlinux 0x1e1e140e ns_to_timespec64 +EXPORT_SYMBOL vmlinux 0x1e45737c param_ops_bool +EXPORT_SYMBOL vmlinux 0x1e62643b skb_flow_dissector_init +EXPORT_SYMBOL vmlinux 0x1e6cbf05 dcache_dir_open +EXPORT_SYMBOL vmlinux 0x1e6d26a8 strstr +EXPORT_SYMBOL vmlinux 0x1e7175fb sdev_enable_disk_events +EXPORT_SYMBOL vmlinux 0x1e71a32a xp_raw_get_data +EXPORT_SYMBOL vmlinux 0x1e879e71 dquot_alloc_inode +EXPORT_SYMBOL vmlinux 0x1e9edfb7 seq_hlist_start_head_rcu +EXPORT_SYMBOL vmlinux 0x1eb922a3 IO_APIC_get_PCI_irq_vector +EXPORT_SYMBOL vmlinux 0x1ed8b599 __x86_indirect_thunk_r8 +EXPORT_SYMBOL vmlinux 0x1edb69d6 ktime_get_raw_ts64 +EXPORT_SYMBOL vmlinux 0x1ee1de77 block_write_end +EXPORT_SYMBOL vmlinux 0x1ef15d47 irq_set_chip +EXPORT_SYMBOL vmlinux 0x1f03912b ZSTD_flushStream +EXPORT_SYMBOL vmlinux 0x1f0670d8 udp_sendmsg +EXPORT_SYMBOL vmlinux 0x1f1923ae serial8250_set_isa_configurator +EXPORT_SYMBOL vmlinux 0x1f1d1afa fqdir_init +EXPORT_SYMBOL vmlinux 0x1f2461cc netdev_lower_get_next_private +EXPORT_SYMBOL vmlinux 0x1f29b69f init_net +EXPORT_SYMBOL vmlinux 0x1f30dc89 bioset_integrity_create +EXPORT_SYMBOL vmlinux 0x1f337b71 __zerocopy_sg_from_iter +EXPORT_SYMBOL vmlinux 0x1f3de356 amd_iommu_flush_page +EXPORT_SYMBOL vmlinux 0x1f557414 gen_pool_has_addr +EXPORT_SYMBOL vmlinux 0x1f9b19a9 dquot_file_open +EXPORT_SYMBOL vmlinux 0x1fa802ec scsi_free_host_dev +EXPORT_SYMBOL vmlinux 0x1fb2569f acpi_bus_register_driver +EXPORT_SYMBOL vmlinux 0x1fbd16da ip_tos2prio +EXPORT_SYMBOL vmlinux 0x1fc0cc7c intel_gtt_insert_sg_entries +EXPORT_SYMBOL vmlinux 0x1fc8c8ec linkwatch_fire_event +EXPORT_SYMBOL vmlinux 0x1fcda0f3 alloc_pages_current +EXPORT_SYMBOL vmlinux 0x1fd07fff kdb_grepping_flag +EXPORT_SYMBOL vmlinux 0x1fd54409 inet6_csk_route_req +EXPORT_SYMBOL vmlinux 0x1fe912f1 netdev_alloc_frag +EXPORT_SYMBOL vmlinux 0x20000329 simple_strtoul +EXPORT_SYMBOL vmlinux 0x200b2041 in6addr_any +EXPORT_SYMBOL vmlinux 0x202246d0 textsearch_prepare +EXPORT_SYMBOL vmlinux 0x20463df4 wait_for_completion_killable +EXPORT_SYMBOL vmlinux 0x204af5b5 netlbl_audit_start +EXPORT_SYMBOL vmlinux 0x204bf1e4 find_get_pages_contig +EXPORT_SYMBOL vmlinux 0x204c19f5 tcp_alloc_md5sig_pool +EXPORT_SYMBOL vmlinux 0x204c5067 scsi_dev_info_add_list +EXPORT_SYMBOL vmlinux 0x2059ddb1 bio_chain +EXPORT_SYMBOL vmlinux 0x2066f963 sock_set_keepalive +EXPORT_SYMBOL vmlinux 0x20707380 tcf_generic_walker +EXPORT_SYMBOL vmlinux 0x2070d424 nf_register_queue_handler +EXPORT_SYMBOL vmlinux 0x2071d06c clk_add_alias +EXPORT_SYMBOL vmlinux 0x20723bab jbd2_journal_unlock_updates +EXPORT_SYMBOL vmlinux 0x2072ee9b request_threaded_irq +EXPORT_SYMBOL vmlinux 0x2085aada nd_device_unregister +EXPORT_SYMBOL vmlinux 0x20868aed cros_ec_query_all +EXPORT_SYMBOL vmlinux 0x20a1b519 acpi_resource_to_address64 +EXPORT_SYMBOL vmlinux 0x20a725d2 xfrm_init_state +EXPORT_SYMBOL vmlinux 0x20a789ac irq_set_chip_data +EXPORT_SYMBOL vmlinux 0x20ba4f3e rdmsr_on_cpu +EXPORT_SYMBOL vmlinux 0x20cbb30a __percpu_counter_init +EXPORT_SYMBOL vmlinux 0x20cbd6e9 touch_atime +EXPORT_SYMBOL vmlinux 0x20d65e40 fb_find_nearest_mode +EXPORT_SYMBOL vmlinux 0x20eadeb6 ip_compute_csum +EXPORT_SYMBOL vmlinux 0x20fff6ec ZSTD_DStreamInSize +EXPORT_SYMBOL vmlinux 0x21059cd7 audit_log_task_context +EXPORT_SYMBOL vmlinux 0x210dfe32 pin_user_pages +EXPORT_SYMBOL vmlinux 0x21107290 flow_indr_dev_setup_offload +EXPORT_SYMBOL vmlinux 0x211130c1 alloc_cpumask_var +EXPORT_SYMBOL vmlinux 0x2111c4b1 lru_cache_add +EXPORT_SYMBOL vmlinux 0x2114f32c simple_setattr +EXPORT_SYMBOL vmlinux 0x2128a102 bioset_init +EXPORT_SYMBOL vmlinux 0x2128c783 scsi_dma_unmap +EXPORT_SYMBOL vmlinux 0x21335cec mmc_retune_release +EXPORT_SYMBOL vmlinux 0x213868cb blk_post_runtime_resume +EXPORT_SYMBOL vmlinux 0x213889cd udp_seq_ops +EXPORT_SYMBOL vmlinux 0x213a738d memregion_alloc +EXPORT_SYMBOL vmlinux 0x213e4965 ps2_is_keyboard_id +EXPORT_SYMBOL vmlinux 0x214af502 sdev_disable_disk_events +EXPORT_SYMBOL vmlinux 0x215a8ec8 slhc_init +EXPORT_SYMBOL vmlinux 0x215ad28b pci_irq_vector +EXPORT_SYMBOL vmlinux 0x2162ca28 blk_dump_rq_flags +EXPORT_SYMBOL vmlinux 0x2163f633 dev_lstats_read +EXPORT_SYMBOL vmlinux 0x2166189a __dev_kfree_skb_any +EXPORT_SYMBOL vmlinux 0x21672ba1 dentry_path_raw +EXPORT_SYMBOL vmlinux 0x216af8f9 simple_write_end +EXPORT_SYMBOL vmlinux 0x2177bd71 acpi_disable_event +EXPORT_SYMBOL vmlinux 0x218e600b pci_add_resource_offset +EXPORT_SYMBOL vmlinux 0x219e67a8 twl6040_set_bits +EXPORT_SYMBOL vmlinux 0x21bdb523 errseq_check_and_advance +EXPORT_SYMBOL vmlinux 0x21be37e1 hdmi_avi_infoframe_check +EXPORT_SYMBOL vmlinux 0x21ca91fa km_state_expired +EXPORT_SYMBOL vmlinux 0x21db7bdf configfs_register_default_group +EXPORT_SYMBOL vmlinux 0x21e13cb3 inet_peer_xrlim_allow +EXPORT_SYMBOL vmlinux 0x21e4ebb0 device_get_mac_address +EXPORT_SYMBOL vmlinux 0x21e94ecf __insert_inode_hash +EXPORT_SYMBOL vmlinux 0x21ef374c try_wait_for_completion +EXPORT_SYMBOL vmlinux 0x220a0950 devm_extcon_unregister_notifier +EXPORT_SYMBOL vmlinux 0x2214613d device_match_acpi_dev +EXPORT_SYMBOL vmlinux 0x22163f8f cdev_add +EXPORT_SYMBOL vmlinux 0x22194192 inet_recvmsg +EXPORT_SYMBOL vmlinux 0x222e7ce2 sysfs_streq +EXPORT_SYMBOL vmlinux 0x222f1b35 mdio_device_remove +EXPORT_SYMBOL vmlinux 0x2234ca51 acpi_match_platform_list +EXPORT_SYMBOL vmlinux 0x22533553 i2c_smbus_read_i2c_block_data +EXPORT_SYMBOL vmlinux 0x225cb92e block_is_partially_uptodate +EXPORT_SYMBOL vmlinux 0x2261626e module_put +EXPORT_SYMBOL vmlinux 0x226fee35 nf_log_register +EXPORT_SYMBOL vmlinux 0x2276db98 kstrtoint +EXPORT_SYMBOL vmlinux 0x2278d817 flow_block_cb_incref +EXPORT_SYMBOL vmlinux 0x22839944 tty_flip_buffer_push +EXPORT_SYMBOL vmlinux 0x2285672d bh_submit_read +EXPORT_SYMBOL vmlinux 0x2299fd17 udp6_seq_ops +EXPORT_SYMBOL vmlinux 0x22ab0a77 generic_listxattr +EXPORT_SYMBOL vmlinux 0x22b028ab skb_append +EXPORT_SYMBOL vmlinux 0x22b325d5 kd_mksound +EXPORT_SYMBOL vmlinux 0x22c107f3 tcp_rcv_established +EXPORT_SYMBOL vmlinux 0x22ccff3a dev_addr_del +EXPORT_SYMBOL vmlinux 0x22ce8988 vlan_vids_del_by_dev +EXPORT_SYMBOL vmlinux 0x22dc4bbf blk_queue_max_discard_sectors +EXPORT_SYMBOL vmlinux 0x22de4931 amd_iommu_register_ga_log_notifier +EXPORT_SYMBOL vmlinux 0x22e83e8c config_item_set_name +EXPORT_SYMBOL vmlinux 0x22f8a5af __ip_mc_inc_group +EXPORT_SYMBOL vmlinux 0x23024045 sk_stream_wait_connect +EXPORT_SYMBOL vmlinux 0x230449e2 ata_print_version +EXPORT_SYMBOL vmlinux 0x2314d66a phy_disconnect +EXPORT_SYMBOL vmlinux 0x2316f65d ptp_find_pin_unlocked +EXPORT_SYMBOL vmlinux 0x233fef59 sget +EXPORT_SYMBOL vmlinux 0x2356c138 devm_of_find_backlight +EXPORT_SYMBOL vmlinux 0x2373525b devm_request_resource +EXPORT_SYMBOL vmlinux 0x23827870 ip6_find_1stfragopt +EXPORT_SYMBOL vmlinux 0x23870bd6 phy_remove_link_mode +EXPORT_SYMBOL vmlinux 0x238b099f mipi_dsi_packet_format_is_short +EXPORT_SYMBOL vmlinux 0x23943a84 page_pool_destroy +EXPORT_SYMBOL vmlinux 0x23b9d6e2 mangle_path +EXPORT_SYMBOL vmlinux 0x23c0a648 sock_i_uid +EXPORT_SYMBOL vmlinux 0x23c9891c kstrtoint_from_user +EXPORT_SYMBOL vmlinux 0x23cabbb1 register_sysctl_paths +EXPORT_SYMBOL vmlinux 0x23d476fb pci_claim_resource +EXPORT_SYMBOL vmlinux 0x23daa989 mipi_dsi_create_packet +EXPORT_SYMBOL vmlinux 0x23e28466 phy_device_create +EXPORT_SYMBOL vmlinux 0x23ee13fd mb_cache_entry_find_first +EXPORT_SYMBOL vmlinux 0x23f48a65 devm_free_irq +EXPORT_SYMBOL vmlinux 0x23f71fb8 tty_port_raise_dtr_rts +EXPORT_SYMBOL vmlinux 0x23fd3028 vmalloc_node +EXPORT_SYMBOL vmlinux 0x2414253e neigh_seq_start +EXPORT_SYMBOL vmlinux 0x24210299 elv_bio_merge_ok +EXPORT_SYMBOL vmlinux 0x24212d86 __frontswap_invalidate_page +EXPORT_SYMBOL vmlinux 0x242b90f9 tcf_idr_create_from_flags +EXPORT_SYMBOL vmlinux 0x2437f267 blkdev_issue_discard +EXPORT_SYMBOL vmlinux 0x243c5f36 request_firmware_nowait +EXPORT_SYMBOL vmlinux 0x24428be5 strncpy_from_user +EXPORT_SYMBOL vmlinux 0x2444885e tcp_sendmsg +EXPORT_SYMBOL vmlinux 0x24459286 phy_set_sym_pause +EXPORT_SYMBOL vmlinux 0x24516b99 __close_fd +EXPORT_SYMBOL vmlinux 0x2459bbcc console_set_on_cmdline +EXPORT_SYMBOL vmlinux 0x245a89b2 mipi_dsi_dcs_get_display_brightness +EXPORT_SYMBOL vmlinux 0x2473f47e dm_table_get_size +EXPORT_SYMBOL vmlinux 0x24808644 pnpacpi_protocol +EXPORT_SYMBOL vmlinux 0x2484adc3 __kfifo_to_user_r +EXPORT_SYMBOL vmlinux 0x2498fdc8 devfreq_resume_device +EXPORT_SYMBOL vmlinux 0x24a0c44f i2c_smbus_read_i2c_block_data_or_emulated +EXPORT_SYMBOL vmlinux 0x24b28e98 __starget_for_each_device +EXPORT_SYMBOL vmlinux 0x24b48b51 kmalloc_caches +EXPORT_SYMBOL vmlinux 0x24d273d1 add_timer +EXPORT_SYMBOL vmlinux 0x24eea456 devm_clk_get +EXPORT_SYMBOL vmlinux 0x24ef2676 sk_wait_data +EXPORT_SYMBOL vmlinux 0x25031c56 __xfrm_decode_session +EXPORT_SYMBOL vmlinux 0x251a21fb inet6_del_offload +EXPORT_SYMBOL vmlinux 0x2521b3b1 pci_bus_size_bridges +EXPORT_SYMBOL vmlinux 0x2524ba17 ZSTD_getCParams +EXPORT_SYMBOL vmlinux 0x25277497 rfkill_register +EXPORT_SYMBOL vmlinux 0x252f3155 pm860x_bulk_write +EXPORT_SYMBOL vmlinux 0x2535b646 unregister_binfmt +EXPORT_SYMBOL vmlinux 0x253a6925 phy_ethtool_get_eee +EXPORT_SYMBOL vmlinux 0x25594627 netpoll_poll_enable +EXPORT_SYMBOL vmlinux 0x256c140f set_posix_acl +EXPORT_SYMBOL vmlinux 0x2570a138 reservation_seqcount_string +EXPORT_SYMBOL vmlinux 0x25772b86 __dec_node_page_state +EXPORT_SYMBOL vmlinux 0x257f7350 skb_flow_dissect_ct +EXPORT_SYMBOL vmlinux 0x25820c64 fs_overflowuid +EXPORT_SYMBOL vmlinux 0x25842f17 agp_alloc_bridge +EXPORT_SYMBOL vmlinux 0x258c709a mmc_flush_cache +EXPORT_SYMBOL vmlinux 0x258d2bc2 serio_bus +EXPORT_SYMBOL vmlinux 0x258d2f76 net_dim_get_tx_moderation +EXPORT_SYMBOL vmlinux 0x259427d3 netdev_update_features +EXPORT_SYMBOL vmlinux 0x25956bfc qdisc_offload_dump_helper +EXPORT_SYMBOL vmlinux 0x25974000 wait_for_completion +EXPORT_SYMBOL vmlinux 0x25c98488 tag_pages_for_writeback +EXPORT_SYMBOL vmlinux 0x25db1577 do_trace_write_msr +EXPORT_SYMBOL vmlinux 0x25e58a09 hdmi_avi_infoframe_init +EXPORT_SYMBOL vmlinux 0x25e9d4bd resource_list_free +EXPORT_SYMBOL vmlinux 0x26029170 devm_mfd_add_devices +EXPORT_SYMBOL vmlinux 0x2604ef3a d_tmpfile +EXPORT_SYMBOL vmlinux 0x260a095a __sg_alloc_table +EXPORT_SYMBOL vmlinux 0x26128d52 seq_printf +EXPORT_SYMBOL vmlinux 0x26226bf9 ilookup +EXPORT_SYMBOL vmlinux 0x2632e286 genphy_suspend +EXPORT_SYMBOL vmlinux 0x263beb75 ecryptfs_get_versions +EXPORT_SYMBOL vmlinux 0x263c3152 bcmp +EXPORT_SYMBOL vmlinux 0x263ed23b __x86_indirect_thunk_r12 +EXPORT_SYMBOL vmlinux 0x264a8a37 registered_fb +EXPORT_SYMBOL vmlinux 0x26519d72 ww_mutex_unlock +EXPORT_SYMBOL vmlinux 0x267f549b sock_register +EXPORT_SYMBOL vmlinux 0x2688ec10 bitmap_zalloc +EXPORT_SYMBOL vmlinux 0x26948d96 copy_user_enhanced_fast_string +EXPORT_SYMBOL vmlinux 0x269a0bbb max8925_reg_read +EXPORT_SYMBOL vmlinux 0x269c5e7e flow_block_cb_free +EXPORT_SYMBOL vmlinux 0x26cc73c3 complete_and_exit +EXPORT_SYMBOL vmlinux 0x26e298e0 unregister_memory_notifier +EXPORT_SYMBOL vmlinux 0x26f8f0b8 iowrite16be +EXPORT_SYMBOL vmlinux 0x27043d9b soft_cursor +EXPORT_SYMBOL vmlinux 0x271cba95 acpi_bus_private_data_handler +EXPORT_SYMBOL vmlinux 0x272a8933 udp_memory_allocated +EXPORT_SYMBOL vmlinux 0x272c0891 unregister_shrinker +EXPORT_SYMBOL vmlinux 0x2733eaf7 scsi_dev_info_list_add_keyed +EXPORT_SYMBOL vmlinux 0x273d9edd add_random_ready_callback +EXPORT_SYMBOL vmlinux 0x27479d14 param_free_charp +EXPORT_SYMBOL vmlinux 0x275f3d49 hdmi_vendor_infoframe_check +EXPORT_SYMBOL vmlinux 0x27639220 blk_verify_command +EXPORT_SYMBOL vmlinux 0x277081e6 drop_nlink +EXPORT_SYMBOL vmlinux 0x27756bc8 scsi_sanitize_inquiry_string +EXPORT_SYMBOL vmlinux 0x27810361 acpi_os_wait_events_complete +EXPORT_SYMBOL vmlinux 0x2782b393 xfrm_state_walk_init +EXPORT_SYMBOL vmlinux 0x2782faff tcp_v4_md5_hash_skb +EXPORT_SYMBOL vmlinux 0x27864d57 memparse +EXPORT_SYMBOL vmlinux 0x2798b246 generic_write_checks +EXPORT_SYMBOL vmlinux 0x279be432 ZSTD_copyCCtx +EXPORT_SYMBOL vmlinux 0x27a2c5b2 tty_hangup +EXPORT_SYMBOL vmlinux 0x27bbf221 disable_irq_nosync +EXPORT_SYMBOL vmlinux 0x27cdca93 pci_add_resource +EXPORT_SYMBOL vmlinux 0x27d89407 sock_no_sendmsg_locked +EXPORT_SYMBOL vmlinux 0x27db34d4 agp_bridge +EXPORT_SYMBOL vmlinux 0x27f2c605 get_mm_exe_file +EXPORT_SYMBOL vmlinux 0x281823c5 __kfifo_out_peek +EXPORT_SYMBOL vmlinux 0x28225eef mnt_drop_write_file +EXPORT_SYMBOL vmlinux 0x282953f8 dst_alloc +EXPORT_SYMBOL vmlinux 0x2833afa0 end_page_writeback +EXPORT_SYMBOL vmlinux 0x2833f577 ZSTD_compressBegin_advanced +EXPORT_SYMBOL vmlinux 0x28738c4f proc_create_mount_point +EXPORT_SYMBOL vmlinux 0x2875a315 utf32_to_utf8 +EXPORT_SYMBOL vmlinux 0x287858ff inet_protos +EXPORT_SYMBOL vmlinux 0x287c59fb __sb_end_write +EXPORT_SYMBOL vmlinux 0x287e5f4f uart_get_baud_rate +EXPORT_SYMBOL vmlinux 0x28807c3f agp3_generic_tlbflush +EXPORT_SYMBOL vmlinux 0x289e58ca kernel_listen +EXPORT_SYMBOL vmlinux 0x28c2f80a qdisc_watchdog_cancel +EXPORT_SYMBOL vmlinux 0x28c4e9d6 skb_seq_read +EXPORT_SYMBOL vmlinux 0x28e09af1 iosf_mbi_available +EXPORT_SYMBOL vmlinux 0x28f20b66 lookup_one_len_unlocked +EXPORT_SYMBOL vmlinux 0x28fc4e7a configfs_undepend_item +EXPORT_SYMBOL vmlinux 0x2914ea2d ZSTD_compressBlock +EXPORT_SYMBOL vmlinux 0x29151624 block_truncate_page +EXPORT_SYMBOL vmlinux 0x2920a00d agp_generic_destroy_page +EXPORT_SYMBOL vmlinux 0x29348b80 audit_log_start +EXPORT_SYMBOL vmlinux 0x2945baf5 generic_update_time +EXPORT_SYMBOL vmlinux 0x294b9ea1 on_each_cpu +EXPORT_SYMBOL vmlinux 0x29549f5d tcp_setsockopt +EXPORT_SYMBOL vmlinux 0x295abb09 pci_set_vpd_size +EXPORT_SYMBOL vmlinux 0x296cb509 __xa_insert +EXPORT_SYMBOL vmlinux 0x29715f43 genl_notify +EXPORT_SYMBOL vmlinux 0x2988dedf pci_iomap +EXPORT_SYMBOL vmlinux 0x29969fd4 blk_post_runtime_suspend +EXPORT_SYMBOL vmlinux 0x29986ac1 netdev_has_upper_dev_all_rcu +EXPORT_SYMBOL vmlinux 0x299fa886 elv_rb_former_request +EXPORT_SYMBOL vmlinux 0x299ff141 xfrm_lookup_with_ifid +EXPORT_SYMBOL vmlinux 0x29ad8e33 x86_hyper_type +EXPORT_SYMBOL vmlinux 0x29e1e204 hdmi_audio_infoframe_pack +EXPORT_SYMBOL vmlinux 0x2a0a8fa7 unlock_new_inode +EXPORT_SYMBOL vmlinux 0x2a0d2a49 hdmi_infoframe_log +EXPORT_SYMBOL vmlinux 0x2a15e264 notify_change +EXPORT_SYMBOL vmlinux 0x2a165070 path_is_under +EXPORT_SYMBOL vmlinux 0x2a1f0403 mipi_dsi_shutdown_peripheral +EXPORT_SYMBOL vmlinux 0x2a303d4d check_signature +EXPORT_SYMBOL vmlinux 0x2a45a6de mpage_readpage +EXPORT_SYMBOL vmlinux 0x2a6ab287 jbd2_journal_init_dev +EXPORT_SYMBOL vmlinux 0x2a959764 amd_iommu_pc_set_reg +EXPORT_SYMBOL vmlinux 0x2a99e7bd end_buffer_write_sync +EXPORT_SYMBOL vmlinux 0x2a9a131c pci_find_parent_resource +EXPORT_SYMBOL vmlinux 0x2a9a3905 vme_master_get +EXPORT_SYMBOL vmlinux 0x2a9db4ee rproc_get_by_child +EXPORT_SYMBOL vmlinux 0x2aa00e26 intel_scu_ipc_dev_update +EXPORT_SYMBOL vmlinux 0x2aa0843e mempool_resize +EXPORT_SYMBOL vmlinux 0x2aa75bc0 cros_ec_get_host_event +EXPORT_SYMBOL vmlinux 0x2aaa9c6b task_work_add +EXPORT_SYMBOL vmlinux 0x2ab1c486 dcb_ieee_delapp +EXPORT_SYMBOL vmlinux 0x2ab7989d mutex_lock +EXPORT_SYMBOL vmlinux 0x2ab8a8f2 sock_set_rcvbuf +EXPORT_SYMBOL vmlinux 0x2abba8ea redirty_page_for_writepage +EXPORT_SYMBOL vmlinux 0x2abec328 uart_suspend_port +EXPORT_SYMBOL vmlinux 0x2abf854c clk_bulk_get_all +EXPORT_SYMBOL vmlinux 0x2ac4768d blk_pm_runtime_init +EXPORT_SYMBOL vmlinux 0x2ac6d4e2 pci_restore_state +EXPORT_SYMBOL vmlinux 0x2aca9762 dmam_free_coherent +EXPORT_SYMBOL vmlinux 0x2ace99a7 rt_dst_alloc +EXPORT_SYMBOL vmlinux 0x2ad50990 max8998_write_reg +EXPORT_SYMBOL vmlinux 0x2ad54d10 blk_mq_init_sq_queue +EXPORT_SYMBOL vmlinux 0x2ae35149 compat_ipv6_setsockopt +EXPORT_SYMBOL vmlinux 0x2ae77408 io_uring_get_socket +EXPORT_SYMBOL vmlinux 0x2ae87f6f mount_nodev +EXPORT_SYMBOL vmlinux 0x2aef5bf3 tcp_md5_hash_skb_data +EXPORT_SYMBOL vmlinux 0x2b1c21b7 kmem_cache_alloc_node +EXPORT_SYMBOL vmlinux 0x2b29e847 __put_user_ns +EXPORT_SYMBOL vmlinux 0x2b2aaadb unregister_framebuffer +EXPORT_SYMBOL vmlinux 0x2b2bbfec balance_dirty_pages_ratelimited +EXPORT_SYMBOL vmlinux 0x2b3e3083 __x86_retpoline_rdi +EXPORT_SYMBOL vmlinux 0x2b4a1798 vmalloc_to_page +EXPORT_SYMBOL vmlinux 0x2b58a581 elv_rb_del +EXPORT_SYMBOL vmlinux 0x2b593aa8 gen_pool_alloc_algo_owner +EXPORT_SYMBOL vmlinux 0x2b68bd2f del_timer +EXPORT_SYMBOL vmlinux 0x2b799cc6 pci_release_selected_regions +EXPORT_SYMBOL vmlinux 0x2b9da7a4 genl_lock +EXPORT_SYMBOL vmlinux 0x2bb6099e dq_data_lock +EXPORT_SYMBOL vmlinux 0x2bd60ab9 acpi_reset +EXPORT_SYMBOL vmlinux 0x2bf1298a pci_free_irq_vectors +EXPORT_SYMBOL vmlinux 0x2bfe3325 phy_sfp_probe +EXPORT_SYMBOL vmlinux 0x2c256e1f input_scancode_to_scalar +EXPORT_SYMBOL vmlinux 0x2c3349f3 iommu_dma_get_resv_regions +EXPORT_SYMBOL vmlinux 0x2c3c5c1f dev_get_phys_port_id +EXPORT_SYMBOL vmlinux 0x2c541e7b radix_tree_next_chunk +EXPORT_SYMBOL vmlinux 0x2c66da20 i8042_install_filter +EXPORT_SYMBOL vmlinux 0x2c7e94b4 dev_get_flags +EXPORT_SYMBOL vmlinux 0x2c86a6f9 phy_connect +EXPORT_SYMBOL vmlinux 0x2c996cb7 phy_driver_unregister +EXPORT_SYMBOL vmlinux 0x2c9a924d vfs_ioc_fssetxattr_check +EXPORT_SYMBOL vmlinux 0x2c9e492d xfrm6_rcv_encap +EXPORT_SYMBOL vmlinux 0x2caf63d1 topology_phys_to_logical_die +EXPORT_SYMBOL vmlinux 0x2cb30b87 inet_addr_type_table +EXPORT_SYMBOL vmlinux 0x2cb64fa6 scsi_is_target_device +EXPORT_SYMBOL vmlinux 0x2cc769ec tcp_v4_destroy_sock +EXPORT_SYMBOL vmlinux 0x2cc8b9ea seg6_push_hmac +EXPORT_SYMBOL vmlinux 0x2ccd059a dim_on_top +EXPORT_SYMBOL vmlinux 0x2cdf87a1 proc_dointvec_minmax +EXPORT_SYMBOL vmlinux 0x2ce59999 compat_sock_common_setsockopt +EXPORT_SYMBOL vmlinux 0x2ce6878a compat_ptr_ioctl +EXPORT_SYMBOL vmlinux 0x2ce7a710 qdisc_put_unlocked +EXPORT_SYMBOL vmlinux 0x2cf07f3d vfs_rmdir +EXPORT_SYMBOL vmlinux 0x2cf08ffb generic_permission +EXPORT_SYMBOL vmlinux 0x2cf2123d inode_init_once +EXPORT_SYMBOL vmlinux 0x2cf73cb7 kstrtoll_from_user +EXPORT_SYMBOL vmlinux 0x2d0c0999 sk_dst_check +EXPORT_SYMBOL vmlinux 0x2d140a58 genl_unlock +EXPORT_SYMBOL vmlinux 0x2d151c47 ip6_dst_alloc +EXPORT_SYMBOL vmlinux 0x2d15f0f4 sk_stream_wait_close +EXPORT_SYMBOL vmlinux 0x2d192c70 sg_zero_buffer +EXPORT_SYMBOL vmlinux 0x2d30596c from_kqid_munged +EXPORT_SYMBOL vmlinux 0x2d325810 security_dentry_init_security +EXPORT_SYMBOL vmlinux 0x2d3385d3 system_wq +EXPORT_SYMBOL vmlinux 0x2d35dfd2 register_gifconf +EXPORT_SYMBOL vmlinux 0x2d39b0a7 kstrdup +EXPORT_SYMBOL vmlinux 0x2d4c773a hdmi_spd_infoframe_init +EXPORT_SYMBOL vmlinux 0x2d5d0588 mdio_device_reset +EXPORT_SYMBOL vmlinux 0x2d621196 generic_block_fiemap +EXPORT_SYMBOL vmlinux 0x2d80905b __xfrm_state_delete +EXPORT_SYMBOL vmlinux 0x2d912bca dmi_get_bios_year +EXPORT_SYMBOL vmlinux 0x2d9385e5 sock_set_sndtimeo +EXPORT_SYMBOL vmlinux 0x2d994605 security_inode_copy_up_xattr +EXPORT_SYMBOL vmlinux 0x2da0e056 generic_file_open +EXPORT_SYMBOL vmlinux 0x2db3bc61 check_zeroed_user +EXPORT_SYMBOL vmlinux 0x2db3d320 mutex_lock_interruptible +EXPORT_SYMBOL vmlinux 0x2dd16564 arch_register_cpu +EXPORT_SYMBOL vmlinux 0x2dd644c0 phy_stop +EXPORT_SYMBOL vmlinux 0x2de14b29 sock_no_recvmsg +EXPORT_SYMBOL vmlinux 0x2de58aad scsi_cmd_ioctl +EXPORT_SYMBOL vmlinux 0x2def7f76 rtc_cmos_write +EXPORT_SYMBOL vmlinux 0x2df0b52b xfrm_state_walk +EXPORT_SYMBOL vmlinux 0x2df2e0ce d_delete +EXPORT_SYMBOL vmlinux 0x2e008148 pci_pme_capable +EXPORT_SYMBOL vmlinux 0x2e0b1deb dma_fence_get_status +EXPORT_SYMBOL vmlinux 0x2e13ea07 dma_pool_create +EXPORT_SYMBOL vmlinux 0x2e1ca751 clk_put +EXPORT_SYMBOL vmlinux 0x2e2b40d2 strncat +EXPORT_SYMBOL vmlinux 0x2e3556c9 set_device_ro +EXPORT_SYMBOL vmlinux 0x2e3bcce2 wait_for_completion_interruptible +EXPORT_SYMBOL vmlinux 0x2e439142 drm_get_panel_orientation_quirk +EXPORT_SYMBOL vmlinux 0x2e5b9950 __inode_add_bytes +EXPORT_SYMBOL vmlinux 0x2e5fe036 __skb_ext_put +EXPORT_SYMBOL vmlinux 0x2e5fe09b xattr_full_name +EXPORT_SYMBOL vmlinux 0x2e71ab42 agp_generic_type_to_mask_type +EXPORT_SYMBOL vmlinux 0x2e83c1e7 vfs_get_tree +EXPORT_SYMBOL vmlinux 0x2ea2c95c __x86_indirect_thunk_rax +EXPORT_SYMBOL vmlinux 0x2ea541e6 tcf_classify +EXPORT_SYMBOL vmlinux 0x2ec4bef1 mntput +EXPORT_SYMBOL vmlinux 0x2ec6bba0 errseq_set +EXPORT_SYMBOL vmlinux 0x2ecc8406 disk_start_io_acct +EXPORT_SYMBOL vmlinux 0x2edbeaf7 hex2bin +EXPORT_SYMBOL vmlinux 0x2ee4c2b1 hdmi_avi_infoframe_pack_only +EXPORT_SYMBOL vmlinux 0x2ee62b72 pci_get_slot +EXPORT_SYMBOL vmlinux 0x2f03fc4b security_secmark_refcount_inc +EXPORT_SYMBOL vmlinux 0x2f1f6d19 dst_cow_metrics_generic +EXPORT_SYMBOL vmlinux 0x2f261380 input_set_capability +EXPORT_SYMBOL vmlinux 0x2f2e91b2 security_ib_alloc_security +EXPORT_SYMBOL vmlinux 0x2f384db3 acpi_is_video_device +EXPORT_SYMBOL vmlinux 0x2f57be0c inet_frag_queue_insert +EXPORT_SYMBOL vmlinux 0x2f7754a8 dma_pool_free +EXPORT_SYMBOL vmlinux 0x2f77c30e logfc +EXPORT_SYMBOL vmlinux 0x2f817467 __module_put_and_exit +EXPORT_SYMBOL vmlinux 0x2f93a4b1 register_netdevice_notifier_dev_net +EXPORT_SYMBOL vmlinux 0x2fa94f67 devm_pci_alloc_host_bridge +EXPORT_SYMBOL vmlinux 0x2fb6de5d add_device_randomness +EXPORT_SYMBOL vmlinux 0x2fdef640 neigh_xmit +EXPORT_SYMBOL vmlinux 0x2fe252cc unregister_inet6addr_notifier +EXPORT_SYMBOL vmlinux 0x2fe7b054 vlan_vids_add_by_dev +EXPORT_SYMBOL vmlinux 0x2ff484f2 inode_dio_wait +EXPORT_SYMBOL vmlinux 0x301fa007 _raw_spin_unlock +EXPORT_SYMBOL vmlinux 0x3023d5f9 dev_change_proto_down_generic +EXPORT_SYMBOL vmlinux 0x303ca5a6 __put_cred +EXPORT_SYMBOL vmlinux 0x3051e30f pm860x_reg_write +EXPORT_SYMBOL vmlinux 0x306c5f83 flow_rule_match_ipv4_addrs +EXPORT_SYMBOL vmlinux 0x3080a87c tc_setup_cb_reoffload +EXPORT_SYMBOL vmlinux 0x3082ba6a mmc_register_driver +EXPORT_SYMBOL vmlinux 0x30874337 insert_inode_locked +EXPORT_SYMBOL vmlinux 0x3090148c ilookup5_nowait +EXPORT_SYMBOL vmlinux 0x3096be16 names_cachep +EXPORT_SYMBOL vmlinux 0x309f210e iw_handler_set_thrspy +EXPORT_SYMBOL vmlinux 0x30a80826 __kfifo_from_user +EXPORT_SYMBOL vmlinux 0x30acfde9 hsiphash_2u32 +EXPORT_SYMBOL vmlinux 0x30af45a1 ZSTD_initCStream +EXPORT_SYMBOL vmlinux 0x30c6054f xp_dma_map +EXPORT_SYMBOL vmlinux 0x30dec207 __x86_retpoline_rcx +EXPORT_SYMBOL vmlinux 0x30e74134 tty_termios_copy_hw +EXPORT_SYMBOL vmlinux 0x3100cff9 lockref_get_or_lock +EXPORT_SYMBOL vmlinux 0x3102d70b frontswap_curr_pages +EXPORT_SYMBOL vmlinux 0x310899e6 flow_block_cb_decref +EXPORT_SYMBOL vmlinux 0x3121667f xfrm_state_delete_tunnel +EXPORT_SYMBOL vmlinux 0x3126a9e8 siphash_1u64 +EXPORT_SYMBOL vmlinux 0x312b5d5c netdev_err +EXPORT_SYMBOL vmlinux 0x312cddb2 dev_addr_add +EXPORT_SYMBOL vmlinux 0x313d6f09 vlan_vid_del +EXPORT_SYMBOL vmlinux 0x3145216f pci_dev_present +EXPORT_SYMBOL vmlinux 0x31746858 pm860x_set_bits +EXPORT_SYMBOL vmlinux 0x317a92e3 fb_blank +EXPORT_SYMBOL vmlinux 0x318d6fec mutex_is_locked +EXPORT_SYMBOL vmlinux 0x319d493d proc_dostring +EXPORT_SYMBOL vmlinux 0x31b31f5c csum_partial_copy_nocheck +EXPORT_SYMBOL vmlinux 0x31c62522 vme_dma_list_exec +EXPORT_SYMBOL vmlinux 0x31e3c831 inet_shutdown +EXPORT_SYMBOL vmlinux 0x31ee08df nvm_unregister +EXPORT_SYMBOL vmlinux 0x31fd9ece clk_get +EXPORT_SYMBOL vmlinux 0x32093ac1 bd_abort_claiming +EXPORT_SYMBOL vmlinux 0x3222d705 dquot_writeback_dquots +EXPORT_SYMBOL vmlinux 0x3243cdbb __fib6_flush_trees +EXPORT_SYMBOL vmlinux 0x324f8af9 setattr_prepare +EXPORT_SYMBOL vmlinux 0x325f1af1 tcp_rcv_state_process +EXPORT_SYMBOL vmlinux 0x326425ca pci_unmap_biosrom +EXPORT_SYMBOL vmlinux 0x32647dc5 mmc_is_req_done +EXPORT_SYMBOL vmlinux 0x3268b4a9 jbd2_journal_revoke +EXPORT_SYMBOL vmlinux 0x327a2a87 kill_pgrp +EXPORT_SYMBOL vmlinux 0x327c84bf vme_lm_attach +EXPORT_SYMBOL vmlinux 0x3283e6b0 prandom_seed_full_state +EXPORT_SYMBOL vmlinux 0x328ab4ef pcie_port_service_unregister +EXPORT_SYMBOL vmlinux 0x32ae5741 _raw_read_lock +EXPORT_SYMBOL vmlinux 0x32bac116 to_nd_pfn +EXPORT_SYMBOL vmlinux 0x32bc98a9 udp_lib_getsockopt +EXPORT_SYMBOL vmlinux 0x32ce3777 radix_tree_preload +EXPORT_SYMBOL vmlinux 0x32d6e0be fscrypt_decrypt_block_inplace +EXPORT_SYMBOL vmlinux 0x32e5f82e ppp_channel_index +EXPORT_SYMBOL vmlinux 0x32e6f1a0 acpi_video_backlight_string +EXPORT_SYMBOL vmlinux 0x3324ef3b acpi_set_firmware_waking_vector +EXPORT_SYMBOL vmlinux 0x332cdf00 __serio_register_driver +EXPORT_SYMBOL vmlinux 0x3347ab04 pnp_device_attach +EXPORT_SYMBOL vmlinux 0x33495cb2 get_task_exe_file +EXPORT_SYMBOL vmlinux 0x33736a1d __genradix_ptr_alloc +EXPORT_SYMBOL vmlinux 0x3380d0a1 nobh_write_begin +EXPORT_SYMBOL vmlinux 0x33987118 abx500_get_register_page_interruptible +EXPORT_SYMBOL vmlinux 0x33ac0b73 kernel_sock_shutdown +EXPORT_SYMBOL vmlinux 0x33b2c505 tcp_openreq_init_rwin +EXPORT_SYMBOL vmlinux 0x33b84f74 copy_page +EXPORT_SYMBOL vmlinux 0x33c2e6bf generic_iommu_put_resv_regions +EXPORT_SYMBOL vmlinux 0x33c5c3bb vfs_parse_fs_param +EXPORT_SYMBOL vmlinux 0x33d8442d __free_pages +EXPORT_SYMBOL vmlinux 0x33e077e2 nf_register_sockopt +EXPORT_SYMBOL vmlinux 0x33f0768c cpufreq_quick_get_max +EXPORT_SYMBOL vmlinux 0x33fcf44a __kfifo_out_r +EXPORT_SYMBOL vmlinux 0x33fd9da4 acpi_get_gpe_device +EXPORT_SYMBOL vmlinux 0x34025123 ip6_err_gen_icmpv6_unreach +EXPORT_SYMBOL vmlinux 0x3403df8a mark_page_accessed +EXPORT_SYMBOL vmlinux 0x340760a9 ptp_clock_unregister +EXPORT_SYMBOL vmlinux 0x341f7e7a configfs_depend_item +EXPORT_SYMBOL vmlinux 0x3431c80c is_acpi_data_node +EXPORT_SYMBOL vmlinux 0x3441445f msrs_free +EXPORT_SYMBOL vmlinux 0x34479b6e nd_region_release_lane +EXPORT_SYMBOL vmlinux 0x344b03fa jbd2_journal_inode_ranged_write +EXPORT_SYMBOL vmlinux 0x345b5d00 km_new_mapping +EXPORT_SYMBOL vmlinux 0x346b18b9 compat_ip_getsockopt +EXPORT_SYMBOL vmlinux 0x3489859f acpi_enter_sleep_state_s4bios +EXPORT_SYMBOL vmlinux 0x348aa406 tty_schedule_flip +EXPORT_SYMBOL vmlinux 0x348fa62a pfifo_fast_ops +EXPORT_SYMBOL vmlinux 0x349ac524 __tracepoint_dma_fence_emit +EXPORT_SYMBOL vmlinux 0x349b0bac tcp_seq_stop +EXPORT_SYMBOL vmlinux 0x349cba85 strchr +EXPORT_SYMBOL vmlinux 0x34a1f7e3 acpi_processor_get_psd +EXPORT_SYMBOL vmlinux 0x34b1c454 nf_unregister_net_hook +EXPORT_SYMBOL vmlinux 0x34b20df8 generic_file_mmap +EXPORT_SYMBOL vmlinux 0x34b3609e file_modified +EXPORT_SYMBOL vmlinux 0x34b49464 flow_rule_match_tcp +EXPORT_SYMBOL vmlinux 0x34c302d8 pci_iounmap +EXPORT_SYMBOL vmlinux 0x34c4c5c7 cred_fscmp +EXPORT_SYMBOL vmlinux 0x34df0e50 pci_write_config_byte +EXPORT_SYMBOL vmlinux 0x34f20450 del_gendisk +EXPORT_SYMBOL vmlinux 0x34f3484e security_tun_dev_attach_queue +EXPORT_SYMBOL vmlinux 0x34f89363 acpi_terminate_debugger +EXPORT_SYMBOL vmlinux 0x35042f60 input_unregister_handle +EXPORT_SYMBOL vmlinux 0x350ea558 dma_fence_default_wait +EXPORT_SYMBOL vmlinux 0x3517383e register_reboot_notifier +EXPORT_SYMBOL vmlinux 0x352e2865 nvdimm_revalidate_disk +EXPORT_SYMBOL vmlinux 0x3539f11b match_strlcpy +EXPORT_SYMBOL vmlinux 0x354b4a1e acpi_ut_trace +EXPORT_SYMBOL vmlinux 0x354db704 __cgroup_bpf_run_filter_skb +EXPORT_SYMBOL vmlinux 0x354e8061 tcp_getsockopt +EXPORT_SYMBOL vmlinux 0x355f6e45 pci_ep_cfs_add_epc_group +EXPORT_SYMBOL vmlinux 0x356461c8 rtc_time64_to_tm +EXPORT_SYMBOL vmlinux 0x35699cab i2c_smbus_read_byte_data +EXPORT_SYMBOL vmlinux 0x357738bc sk_alloc +EXPORT_SYMBOL vmlinux 0x359a2b42 register_md_personality +EXPORT_SYMBOL vmlinux 0x359ec42f _raw_read_trylock +EXPORT_SYMBOL vmlinux 0x35a88f28 zlib_inflateInit2 +EXPORT_SYMBOL vmlinux 0x35d2aa0c ps2_begin_command +EXPORT_SYMBOL vmlinux 0x35dfa06f vfs_dup_fs_context +EXPORT_SYMBOL vmlinux 0x35e8bde4 phy_device_remove +EXPORT_SYMBOL vmlinux 0x36049dca pci_lost_interrupt +EXPORT_SYMBOL vmlinux 0x360a34e3 migrate_vma_finalize +EXPORT_SYMBOL vmlinux 0x360b1afe probe_irq_mask +EXPORT_SYMBOL vmlinux 0x360f5bd6 udp_gro_receive +EXPORT_SYMBOL vmlinux 0x361e9841 __vfs_removexattr +EXPORT_SYMBOL vmlinux 0x362ef408 _copy_from_user +EXPORT_SYMBOL vmlinux 0x3637dc54 netdev_adjacent_change_prepare +EXPORT_SYMBOL vmlinux 0x36386ab8 tcp_connect +EXPORT_SYMBOL vmlinux 0x36399549 md_error +EXPORT_SYMBOL vmlinux 0x365acda7 set_normalized_timespec64 +EXPORT_SYMBOL vmlinux 0x365e7911 kstrdup_const +EXPORT_SYMBOL vmlinux 0x3670f4a5 neigh_connected_output +EXPORT_SYMBOL vmlinux 0x367af9be devfreq_monitor_stop +EXPORT_SYMBOL vmlinux 0x3683c3f7 scsi_device_put +EXPORT_SYMBOL vmlinux 0x368d2cd8 dm_mq_kick_requeue_list +EXPORT_SYMBOL vmlinux 0x369f9a6e netdev_upper_get_next_dev_rcu +EXPORT_SYMBOL vmlinux 0x36b00b43 account_page_redirty +EXPORT_SYMBOL vmlinux 0x36c1dac2 __dquot_free_space +EXPORT_SYMBOL vmlinux 0x37110088 remove_wait_queue +EXPORT_SYMBOL vmlinux 0x371e7f3a ZSTD_initCDict +EXPORT_SYMBOL vmlinux 0x3724dbd0 __sk_mem_schedule +EXPORT_SYMBOL vmlinux 0x3737d9a9 ZSTD_DStreamWorkspaceBound +EXPORT_SYMBOL vmlinux 0x3744cf36 vmalloc_to_pfn +EXPORT_SYMBOL vmlinux 0x3754bacb scsi_device_set_state +EXPORT_SYMBOL vmlinux 0x3755bdf0 __cgroup_bpf_run_filter_sk +EXPORT_SYMBOL vmlinux 0x3755f990 gf128mul_init_64k_bbe +EXPORT_SYMBOL vmlinux 0x376300c5 finish_swait +EXPORT_SYMBOL vmlinux 0x37746fde ZSTD_initDStream +EXPORT_SYMBOL vmlinux 0x3779d9fb tcf_block_put_ext +EXPORT_SYMBOL vmlinux 0x377d8004 acpi_error +EXPORT_SYMBOL vmlinux 0x377ec79a inet_sendpage +EXPORT_SYMBOL vmlinux 0x3781d401 sync_inode_metadata +EXPORT_SYMBOL vmlinux 0x378bda1f udp_lib_unhash +EXPORT_SYMBOL vmlinux 0x379d1837 tcp_release_cb +EXPORT_SYMBOL vmlinux 0x37a2dc71 security_skb_classify_flow +EXPORT_SYMBOL vmlinux 0x37af3190 dm_table_run_md_queue_async +EXPORT_SYMBOL vmlinux 0x37b236f3 kernel_read +EXPORT_SYMBOL vmlinux 0x37b8b39e screen_info +EXPORT_SYMBOL vmlinux 0x37befc70 jiffies_to_msecs +EXPORT_SYMBOL vmlinux 0x37c97836 vm_mmap +EXPORT_SYMBOL vmlinux 0x37d1ee1f tcp_splice_read +EXPORT_SYMBOL vmlinux 0x37db8f19 dmi_get_date +EXPORT_SYMBOL vmlinux 0x37eab4ac xfrm_policy_hash_rebuild +EXPORT_SYMBOL vmlinux 0x380ea855 filemap_flush +EXPORT_SYMBOL vmlinux 0x3812050a _raw_spin_unlock_irqrestore +EXPORT_SYMBOL vmlinux 0x381a798a setup_max_cpus +EXPORT_SYMBOL vmlinux 0x38211ba0 i2c_smbus_write_byte +EXPORT_SYMBOL vmlinux 0x38589d71 touchscreen_report_pos +EXPORT_SYMBOL vmlinux 0x3860f294 amd_iommu_enable_device_erratum +EXPORT_SYMBOL vmlinux 0x38645dd2 sk_send_sigurg +EXPORT_SYMBOL vmlinux 0x386ddd39 mipi_dsi_attach +EXPORT_SYMBOL vmlinux 0x3875075a ip_mc_join_group +EXPORT_SYMBOL vmlinux 0x387ca493 dst_dev_put +EXPORT_SYMBOL vmlinux 0x387ddb6f t10_pi_type1_crc +EXPORT_SYMBOL vmlinux 0x38869d88 kstat +EXPORT_SYMBOL vmlinux 0x388aa3c9 neigh_proc_dointvec_ms_jiffies +EXPORT_SYMBOL vmlinux 0x388b4457 __test_set_page_writeback +EXPORT_SYMBOL vmlinux 0x3891ffc8 ecryptfs_fill_auth_tok +EXPORT_SYMBOL vmlinux 0x389617b0 LZ4_decompress_fast_continue +EXPORT_SYMBOL vmlinux 0x389b872c param_get_invbool +EXPORT_SYMBOL vmlinux 0x389c2c8d tcp_v4_connect +EXPORT_SYMBOL vmlinux 0x38a71b7e pci_free_resource_list +EXPORT_SYMBOL vmlinux 0x38a9f7c5 in6addr_loopback +EXPORT_SYMBOL vmlinux 0x38c75de6 phy_find_first +EXPORT_SYMBOL vmlinux 0x38d02ed1 config_item_get_unless_zero +EXPORT_SYMBOL vmlinux 0x38e2e574 kobject_del +EXPORT_SYMBOL vmlinux 0x38e46431 mempool_exit +EXPORT_SYMBOL vmlinux 0x38e8fee8 netdev_refcnt_read +EXPORT_SYMBOL vmlinux 0x38f33bed dump_fpu +EXPORT_SYMBOL vmlinux 0x38f4f90c pcie_set_mps +EXPORT_SYMBOL vmlinux 0x39081193 __max_logical_packages +EXPORT_SYMBOL vmlinux 0x391be079 n_tty_ioctl_helper +EXPORT_SYMBOL vmlinux 0x392b1fea wait_for_completion_io +EXPORT_SYMBOL vmlinux 0x3939f8f0 rfkill_pause_polling +EXPORT_SYMBOL vmlinux 0x39461d6a in_egroup_p +EXPORT_SYMBOL vmlinux 0x394a1e11 phy_sfp_attach +EXPORT_SYMBOL vmlinux 0x3955fa4c send_sig_info +EXPORT_SYMBOL vmlinux 0x3955fcf6 __kfifo_in_r +EXPORT_SYMBOL vmlinux 0x395d28cc sock_no_sendpage_locked +EXPORT_SYMBOL vmlinux 0x39669623 mmc_gpiod_request_ro +EXPORT_SYMBOL vmlinux 0x39932b68 bdget_disk +EXPORT_SYMBOL vmlinux 0x39991865 icmp_global_allow +EXPORT_SYMBOL vmlinux 0x399ad043 __kfifo_dma_out_finish_r +EXPORT_SYMBOL vmlinux 0x399e2eab devm_register_netdev +EXPORT_SYMBOL vmlinux 0x39ac5a61 pcie_get_readrq +EXPORT_SYMBOL vmlinux 0x39b52d19 __bitmap_and +EXPORT_SYMBOL vmlinux 0x39bfb412 blk_queue_dma_alignment +EXPORT_SYMBOL vmlinux 0x39c54e4f tcp_sock_set_cork +EXPORT_SYMBOL vmlinux 0x39d5a908 qdisc_watchdog_schedule_range_ns +EXPORT_SYMBOL vmlinux 0x39e3c030 do_trace_read_msr +EXPORT_SYMBOL vmlinux 0x39e52ec7 sock_common_recvmsg +EXPORT_SYMBOL vmlinux 0x39e6073b eth_header_parse_protocol +EXPORT_SYMBOL vmlinux 0x39e6d669 generic_make_request +EXPORT_SYMBOL vmlinux 0x39f6757c dev_pick_tx_zero +EXPORT_SYMBOL vmlinux 0x3a08475f platform_thermal_notify +EXPORT_SYMBOL vmlinux 0x3a13f54a sgl_alloc +EXPORT_SYMBOL vmlinux 0x3a2d1dfa rdmsr_safe_regs_on_cpu +EXPORT_SYMBOL vmlinux 0x3a2f6702 sg_alloc_table +EXPORT_SYMBOL vmlinux 0x3a32839e intel_gtt_chipset_flush +EXPORT_SYMBOL vmlinux 0x3a3b93e9 pci_request_irq +EXPORT_SYMBOL vmlinux 0x3a3c78de input_allocate_device +EXPORT_SYMBOL vmlinux 0x3a4bc9b7 inet6_unregister_protosw +EXPORT_SYMBOL vmlinux 0x3a4f7dd3 pci_map_rom +EXPORT_SYMBOL vmlinux 0x3a4f9d28 rng_is_initialized +EXPORT_SYMBOL vmlinux 0x3a7ac476 netlink_capable +EXPORT_SYMBOL vmlinux 0x3a8a2aa4 would_dump +EXPORT_SYMBOL vmlinux 0x3a8afcf7 netpoll_cleanup +EXPORT_SYMBOL vmlinux 0x3a908143 fbcon_rotate_cw +EXPORT_SYMBOL vmlinux 0x3ab7b1cc scsi_set_sense_field_pointer +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 0x3adae385 dcb_ieee_getapp_default_prio_mask +EXPORT_SYMBOL vmlinux 0x3afa25a9 abx500_get_register_interruptible +EXPORT_SYMBOL vmlinux 0x3afb11a7 kobject_set_name +EXPORT_SYMBOL vmlinux 0x3aff3200 acpi_evaluate_object_typed +EXPORT_SYMBOL vmlinux 0x3b029f48 acpi_install_fixed_event_handler +EXPORT_SYMBOL vmlinux 0x3b1ad75a pipe_lock +EXPORT_SYMBOL vmlinux 0x3b20fb95 dma_fence_remove_callback +EXPORT_SYMBOL vmlinux 0x3b321462 LZ4_setStreamDecode +EXPORT_SYMBOL vmlinux 0x3b321e6c inc_node_page_state +EXPORT_SYMBOL vmlinux 0x3b4411d3 fsync_bdev +EXPORT_SYMBOL vmlinux 0x3b4bca61 get_cached_acl_rcu +EXPORT_SYMBOL vmlinux 0x3b4d3fca __x86_retpoline_r8 +EXPORT_SYMBOL vmlinux 0x3b543a93 jbd2_trans_will_send_data_barrier +EXPORT_SYMBOL vmlinux 0x3b5e0cd5 jbd2_journal_extend +EXPORT_SYMBOL vmlinux 0x3b644591 __bitmap_shift_left +EXPORT_SYMBOL vmlinux 0x3b65ef91 bio_integrity_add_page +EXPORT_SYMBOL vmlinux 0x3b72f08d preempt_schedule_notrace_thunk +EXPORT_SYMBOL vmlinux 0x3b83610f cpu_sibling_map +EXPORT_SYMBOL vmlinux 0x3b9144c9 acpi_get_current_resources +EXPORT_SYMBOL vmlinux 0x3b982b49 finalize_exec +EXPORT_SYMBOL vmlinux 0x3bb21519 blk_mq_init_queue +EXPORT_SYMBOL vmlinux 0x3bd431a3 rtc_add_group +EXPORT_SYMBOL vmlinux 0x3be17915 rtnl_unicast +EXPORT_SYMBOL vmlinux 0x3be7643e security_xfrm_policy_free +EXPORT_SYMBOL vmlinux 0x3c06ed5d pcie_capability_read_dword +EXPORT_SYMBOL vmlinux 0x3c0c505b fs_bio_set +EXPORT_SYMBOL vmlinux 0x3c185c61 page_put_link +EXPORT_SYMBOL vmlinux 0x3c1943f7 devm_devfreq_add_device +EXPORT_SYMBOL vmlinux 0x3c1cb31b inet6_release +EXPORT_SYMBOL vmlinux 0x3c3341a5 node_data +EXPORT_SYMBOL vmlinux 0x3c38b513 convert_art_ns_to_tsc +EXPORT_SYMBOL vmlinux 0x3c39259f tcf_em_unregister +EXPORT_SYMBOL vmlinux 0x3c3fc2bd get_agp_version +EXPORT_SYMBOL vmlinux 0x3c3fce39 __local_bh_enable_ip +EXPORT_SYMBOL vmlinux 0x3c3ff9fd sprintf +EXPORT_SYMBOL vmlinux 0x3c40e96d __frontswap_test +EXPORT_SYMBOL vmlinux 0x3c427f67 cpu_die_map +EXPORT_SYMBOL vmlinux 0x3c446c11 gnet_stats_finish_copy +EXPORT_SYMBOL vmlinux 0x3c457453 ioread64_lo_hi +EXPORT_SYMBOL vmlinux 0x3c462b61 proc_create_single_data +EXPORT_SYMBOL vmlinux 0x3c6cb817 scsi_get_device_flags_keyed +EXPORT_SYMBOL vmlinux 0x3c80c06c kstrtoull +EXPORT_SYMBOL vmlinux 0x3c935bb6 pnp_possible_config +EXPORT_SYMBOL vmlinux 0x3cb48627 sk_stop_timer +EXPORT_SYMBOL vmlinux 0x3cc2e106 nf_log_unbind_pf +EXPORT_SYMBOL vmlinux 0x3ccc8dbc __x86_retpoline_r14 +EXPORT_SYMBOL vmlinux 0x3cdafebf rproc_coredump_add_custom_segment +EXPORT_SYMBOL vmlinux 0x3cdcb30b sock_kzfree_s +EXPORT_SYMBOL vmlinux 0x3ce35a02 __generic_file_fsync +EXPORT_SYMBOL vmlinux 0x3ce4ca6f disable_irq +EXPORT_SYMBOL vmlinux 0x3cf0fa4a blk_rq_init +EXPORT_SYMBOL vmlinux 0x3d02cd70 dma_fence_signal_locked +EXPORT_SYMBOL vmlinux 0x3d0c93c9 vga_set_legacy_decoding +EXPORT_SYMBOL vmlinux 0x3d12c708 tcp_sock_set_keepcnt +EXPORT_SYMBOL vmlinux 0x3d210724 gen_pool_dma_zalloc_align +EXPORT_SYMBOL vmlinux 0x3d293a73 insert_inode_locked4 +EXPORT_SYMBOL vmlinux 0x3d453c8a iommu_get_msi_cookie +EXPORT_SYMBOL vmlinux 0x3d4c090b __scsi_device_lookup +EXPORT_SYMBOL vmlinux 0x3d507742 i2c_add_adapter +EXPORT_SYMBOL vmlinux 0x3d56e7b3 utf8_unload +EXPORT_SYMBOL vmlinux 0x3d5bb3fd refcount_dec_and_lock_irqsave +EXPORT_SYMBOL vmlinux 0x3d62f035 cdev_set_parent +EXPORT_SYMBOL vmlinux 0x3da171f9 pci_mem_start +EXPORT_SYMBOL vmlinux 0x3dabf271 memcg_sockets_enabled_key +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 0x3dcbc510 mfd_remove_devices +EXPORT_SYMBOL vmlinux 0x3dcc19c5 scsi_bios_ptable +EXPORT_SYMBOL vmlinux 0x3dd7f0df dev_addr_init +EXPORT_SYMBOL vmlinux 0x3dd9b230 proc_dointvec_userhz_jiffies +EXPORT_SYMBOL vmlinux 0x3ddc6c04 x86_bios_cpu_apicid +EXPORT_SYMBOL vmlinux 0x3df9d628 mipi_dsi_dcs_enter_sleep_mode +EXPORT_SYMBOL vmlinux 0x3dfb03c3 seq_pad +EXPORT_SYMBOL vmlinux 0x3dfb86b9 resource_list_create_entry +EXPORT_SYMBOL vmlinux 0x3dfc897c seq_hlist_start_head +EXPORT_SYMBOL vmlinux 0x3e107819 serio_open +EXPORT_SYMBOL vmlinux 0x3e2b0ba6 groups_alloc +EXPORT_SYMBOL vmlinux 0x3e353553 nd_integrity_init +EXPORT_SYMBOL vmlinux 0x3e394901 i2c_verify_adapter +EXPORT_SYMBOL vmlinux 0x3e50e8d1 tcf_exts_num_actions +EXPORT_SYMBOL vmlinux 0x3e702eea dquot_resume +EXPORT_SYMBOL vmlinux 0x3e7c92f8 md_write_end +EXPORT_SYMBOL vmlinux 0x3e8b5657 vme_lm_request +EXPORT_SYMBOL vmlinux 0x3e9110fa __hw_addr_unsync +EXPORT_SYMBOL vmlinux 0x3eb5c460 security_unix_may_send +EXPORT_SYMBOL vmlinux 0x3eb743e4 keyring_alloc +EXPORT_SYMBOL vmlinux 0x3ecd381a nf_getsockopt +EXPORT_SYMBOL vmlinux 0x3ed74556 scsi_scan_target +EXPORT_SYMBOL vmlinux 0x3edc0c88 devm_pci_remap_cfg_resource +EXPORT_SYMBOL vmlinux 0x3ee728ec inode_add_bytes +EXPORT_SYMBOL vmlinux 0x3eeb2322 __wake_up +EXPORT_SYMBOL vmlinux 0x3efe1703 phy_unregister_fixup_for_id +EXPORT_SYMBOL vmlinux 0x3f0546a8 ioread32_rep +EXPORT_SYMBOL vmlinux 0x3f0eabd2 xxh64_update +EXPORT_SYMBOL vmlinux 0x3f2d6476 sock_init_data +EXPORT_SYMBOL vmlinux 0x3f4547a7 put_unused_fd +EXPORT_SYMBOL vmlinux 0x3f4bd846 gen_pool_first_fit_order_align +EXPORT_SYMBOL vmlinux 0x3f5ee436 scsi_block_requests +EXPORT_SYMBOL vmlinux 0x3f5f810c eth_header_cache +EXPORT_SYMBOL vmlinux 0x3f7c57d5 sock_no_mmap +EXPORT_SYMBOL vmlinux 0x3f7f2d61 skb_copy_and_csum_datagram_msg +EXPORT_SYMBOL vmlinux 0x3f89071b security_ib_pkey_access +EXPORT_SYMBOL vmlinux 0x3fa06b30 netlink_ack +EXPORT_SYMBOL vmlinux 0x3fbf3c89 vme_slave_set +EXPORT_SYMBOL vmlinux 0x3fd4c944 get_cpu_entry_area +EXPORT_SYMBOL vmlinux 0x3fd78f3b register_chrdev_region +EXPORT_SYMBOL vmlinux 0x3fdb484b phy_attached_info +EXPORT_SYMBOL vmlinux 0x3fe2ccbe memweight +EXPORT_SYMBOL vmlinux 0x3fe37510 ip6_fraglist_init +EXPORT_SYMBOL vmlinux 0x3ff9cafa sock_gettstamp +EXPORT_SYMBOL vmlinux 0x3fff71be devfreq_recommended_opp +EXPORT_SYMBOL vmlinux 0x4052f49f page_readlink +EXPORT_SYMBOL vmlinux 0x4055a920 acpi_remove_fixed_event_handler +EXPORT_SYMBOL vmlinux 0x405d3eb1 ipv6_chk_addr_and_flags +EXPORT_SYMBOL vmlinux 0x4082c4d0 sock_from_file +EXPORT_SYMBOL vmlinux 0x408f9502 vga_switcheroo_fini_domain_pm_ops +EXPORT_SYMBOL vmlinux 0x409517ac mipi_dsi_dcs_nop +EXPORT_SYMBOL vmlinux 0x40973662 sysctl_udp_mem +EXPORT_SYMBOL vmlinux 0x409873e3 tty_termios_baud_rate +EXPORT_SYMBOL vmlinux 0x409bcb62 mutex_unlock +EXPORT_SYMBOL vmlinux 0x409f8dbb migrate_page_copy +EXPORT_SYMBOL vmlinux 0x40a9b349 vzalloc +EXPORT_SYMBOL vmlinux 0x40ab855a __alloc_disk_node +EXPORT_SYMBOL vmlinux 0x40afafb9 acpi_bus_get_device +EXPORT_SYMBOL vmlinux 0x40c7247c si_meminfo +EXPORT_SYMBOL vmlinux 0x40d04664 console_trylock +EXPORT_SYMBOL vmlinux 0x40d59096 unregister_restart_handler +EXPORT_SYMBOL vmlinux 0x40d84a37 ZSTD_getFrameParams +EXPORT_SYMBOL vmlinux 0x40e14cdb flow_rule_match_control +EXPORT_SYMBOL vmlinux 0x41297752 nf_ct_attach +EXPORT_SYMBOL vmlinux 0x412b786f debugfs_create_automount +EXPORT_SYMBOL vmlinux 0x4146584e page_pool_update_nid +EXPORT_SYMBOL vmlinux 0x41482d8b strndup_user +EXPORT_SYMBOL vmlinux 0x414cf791 set_binfmt +EXPORT_SYMBOL vmlinux 0x414df120 ipv6_mc_check_mld +EXPORT_SYMBOL vmlinux 0x41864f6c lock_sock_nested +EXPORT_SYMBOL vmlinux 0x4188d439 neigh_rand_reach_time +EXPORT_SYMBOL vmlinux 0x418c8d01 set_bh_page +EXPORT_SYMBOL vmlinux 0x419247d2 con_is_bound +EXPORT_SYMBOL vmlinux 0x4198ca95 __do_once_done +EXPORT_SYMBOL vmlinux 0x41ab6136 tc_setup_cb_add +EXPORT_SYMBOL vmlinux 0x41ad9165 dev_get_by_index_rcu +EXPORT_SYMBOL vmlinux 0x41cfd470 backlight_device_set_brightness +EXPORT_SYMBOL vmlinux 0x41d34d59 tcf_action_set_ctrlact +EXPORT_SYMBOL vmlinux 0x41e5b67f netif_napi_del +EXPORT_SYMBOL vmlinux 0x41efdeaf radix_tree_lookup_slot +EXPORT_SYMBOL vmlinux 0x41f557cb blk_mq_run_hw_queue +EXPORT_SYMBOL vmlinux 0x42003cd8 fscrypt_decrypt_bio +EXPORT_SYMBOL vmlinux 0x4203f0e4 seg6_hmac_info_lookup +EXPORT_SYMBOL vmlinux 0x42160169 flush_workqueue +EXPORT_SYMBOL vmlinux 0x421e120e __napi_schedule_irqoff +EXPORT_SYMBOL vmlinux 0x4223d53e fqdir_exit +EXPORT_SYMBOL vmlinux 0x4230a8d7 sg_nents_for_len +EXPORT_SYMBOL vmlinux 0x4238825d module_layout +EXPORT_SYMBOL vmlinux 0x4248ae3c single_task_running +EXPORT_SYMBOL vmlinux 0x424d3620 zlib_inflateIncomp +EXPORT_SYMBOL vmlinux 0x42555a39 blkdev_put +EXPORT_SYMBOL vmlinux 0x42578e80 acpi_get_type +EXPORT_SYMBOL vmlinux 0x42595e58 vgacon_text_force +EXPORT_SYMBOL vmlinux 0x425c5cdb skb_checksum_help +EXPORT_SYMBOL vmlinux 0x42986f29 vfs_iter_read +EXPORT_SYMBOL vmlinux 0x42a9d6f9 __vfs_setxattr +EXPORT_SYMBOL vmlinux 0x42bab120 inet_csk_reqsk_queue_drop_and_put +EXPORT_SYMBOL vmlinux 0x42be5eab ip6tun_encaps +EXPORT_SYMBOL vmlinux 0x42bed8d4 unix_gc_lock +EXPORT_SYMBOL vmlinux 0x42c5e31d devfreq_remove_device +EXPORT_SYMBOL vmlinux 0x42d5d90f ptp_clock_register +EXPORT_SYMBOL vmlinux 0x42e90a90 neigh_ifdown +EXPORT_SYMBOL vmlinux 0x42f1b900 fb_pad_unaligned_buffer +EXPORT_SYMBOL vmlinux 0x4302d0eb free_pages +EXPORT_SYMBOL vmlinux 0x430bb60a inet_frag_reasm_prepare +EXPORT_SYMBOL vmlinux 0x430ecc96 ZSTD_initCStream_usingCDict +EXPORT_SYMBOL vmlinux 0x431e7ff9 invalidate_bdev +EXPORT_SYMBOL vmlinux 0x432ce03f xp_can_alloc +EXPORT_SYMBOL vmlinux 0x432d509a end_buffer_read_sync +EXPORT_SYMBOL vmlinux 0x4336fcca ucs2_as_utf8 +EXPORT_SYMBOL vmlinux 0x433cabfb acpi_decode_pld_buffer +EXPORT_SYMBOL vmlinux 0x43437ee1 param_ops_long +EXPORT_SYMBOL vmlinux 0x43514675 loop_register_transfer +EXPORT_SYMBOL vmlinux 0x4351577a fb_parse_edid +EXPORT_SYMBOL vmlinux 0x4355df2c dma_direct_unmap_page +EXPORT_SYMBOL vmlinux 0x4365aa48 phy_do_ioctl +EXPORT_SYMBOL vmlinux 0x4366dea0 md_integrity_add_rdev +EXPORT_SYMBOL vmlinux 0x437a0d6d __sock_tx_timestamp +EXPORT_SYMBOL vmlinux 0x438170b5 pci_request_regions_exclusive +EXPORT_SYMBOL vmlinux 0x438610bd security_tun_dev_alloc_security +EXPORT_SYMBOL vmlinux 0x4392f7bb invalidate_inode_buffers +EXPORT_SYMBOL vmlinux 0x4396e4a9 pcie_capability_write_dword +EXPORT_SYMBOL vmlinux 0x439d31b0 generic_perform_write +EXPORT_SYMBOL vmlinux 0x43a3f642 tso_count_descs +EXPORT_SYMBOL vmlinux 0x43b0c9c3 preempt_schedule +EXPORT_SYMBOL vmlinux 0x43b3c207 pcim_iounmap +EXPORT_SYMBOL vmlinux 0x43c20b14 register_qdisc +EXPORT_SYMBOL vmlinux 0x43c4f2ab twl6040_get_pll +EXPORT_SYMBOL vmlinux 0x43cd1cda dm_kcopyd_copy +EXPORT_SYMBOL vmlinux 0x43dbf48b xfrm6_rcv_spi +EXPORT_SYMBOL vmlinux 0x43df7751 ndo_dflt_fdb_del +EXPORT_SYMBOL vmlinux 0x44029f0c __phy_write_mmd +EXPORT_SYMBOL vmlinux 0x441e1877 zpool_register_driver +EXPORT_SYMBOL vmlinux 0x442476bd pcim_iomap_table +EXPORT_SYMBOL vmlinux 0x44277fc1 import_iovec +EXPORT_SYMBOL vmlinux 0x442a71a7 __skb_wait_for_more_packets +EXPORT_SYMBOL vmlinux 0x443013ec load_nls +EXPORT_SYMBOL vmlinux 0x44397b9b pci_clear_mwi +EXPORT_SYMBOL vmlinux 0x443da178 mpage_readahead +EXPORT_SYMBOL vmlinux 0x44414ff2 iosf_mbi_unblock_punit_i2c_access +EXPORT_SYMBOL vmlinux 0x4443afb7 __skb_recv_udp +EXPORT_SYMBOL vmlinux 0x44462b88 __x86_retpoline_rdx +EXPORT_SYMBOL vmlinux 0x44469a76 crc_ccitt_false_table +EXPORT_SYMBOL vmlinux 0x44528473 pci_bus_type +EXPORT_SYMBOL vmlinux 0x445520a7 serio_reconnect +EXPORT_SYMBOL vmlinux 0x445f2922 input_mt_report_finger_count +EXPORT_SYMBOL vmlinux 0x4462d35e cpufreq_get_hw_max_freq +EXPORT_SYMBOL vmlinux 0x4472ceac jbd2_journal_clear_features +EXPORT_SYMBOL vmlinux 0x44902cff acpi_enable_event +EXPORT_SYMBOL vmlinux 0x44928d5d blk_mq_tagset_wait_completed_request +EXPORT_SYMBOL vmlinux 0x449687e0 dev_mc_del_global +EXPORT_SYMBOL vmlinux 0x449997d7 inet_sock_destruct +EXPORT_SYMBOL vmlinux 0x449ad0a7 memcmp +EXPORT_SYMBOL vmlinux 0x44a6e90a irq_cpu_rmap_add +EXPORT_SYMBOL vmlinux 0x44aaf30f tsc_khz +EXPORT_SYMBOL vmlinux 0x44c73fea nd_device_register +EXPORT_SYMBOL vmlinux 0x44c773de pagevec_lookup_range_tag +EXPORT_SYMBOL vmlinux 0x44e2bdfc mdiobus_get_phy +EXPORT_SYMBOL vmlinux 0x44e9a829 match_token +EXPORT_SYMBOL vmlinux 0x44eefed9 ppp_unregister_compressor +EXPORT_SYMBOL vmlinux 0x44f98c24 ptp_clock_event +EXPORT_SYMBOL vmlinux 0x45006cee default_red +EXPORT_SYMBOL vmlinux 0x4502d4b1 bio_endio +EXPORT_SYMBOL vmlinux 0x45081703 ec_get_handle +EXPORT_SYMBOL vmlinux 0x451f0b13 tcp_sock_set_quickack +EXPORT_SYMBOL vmlinux 0x452ba683 ipv6_ext_hdr +EXPORT_SYMBOL vmlinux 0x453c8403 pci_msi_enabled +EXPORT_SYMBOL vmlinux 0x454f7a8d reuseport_attach_prog +EXPORT_SYMBOL vmlinux 0x45535485 xxh32_update +EXPORT_SYMBOL vmlinux 0x45611efa brioctl_set +EXPORT_SYMBOL vmlinux 0x45637873 mmc_gpio_set_cd_isr +EXPORT_SYMBOL vmlinux 0x4570e0b3 scsi_block_when_processing_errors +EXPORT_SYMBOL vmlinux 0x45763936 simple_open +EXPORT_SYMBOL vmlinux 0x4578f528 __kfifo_to_user +EXPORT_SYMBOL vmlinux 0x457cd7a9 dquot_mark_dquot_dirty +EXPORT_SYMBOL vmlinux 0x458989c4 devm_ioremap_wc +EXPORT_SYMBOL vmlinux 0x458b021d kmem_cache_alloc_bulk +EXPORT_SYMBOL vmlinux 0x45b0dbaf security_binder_set_context_mgr +EXPORT_SYMBOL vmlinux 0x45d246da node_to_cpumask_map +EXPORT_SYMBOL vmlinux 0x45de0b79 security_inet_conn_established +EXPORT_SYMBOL vmlinux 0x45e2890b skb_dequeue_tail +EXPORT_SYMBOL vmlinux 0x45e69e01 prepare_to_wait_exclusive +EXPORT_SYMBOL vmlinux 0x45e8d7b5 native_write_cr0 +EXPORT_SYMBOL vmlinux 0x46045dd7 kstrtou8 +EXPORT_SYMBOL vmlinux 0x461ac773 kstrtol_from_user +EXPORT_SYMBOL vmlinux 0x461c8dca __sk_mem_reclaim +EXPORT_SYMBOL vmlinux 0x461d16ca sg_nents +EXPORT_SYMBOL vmlinux 0x461df035 pcie_relaxed_ordering_enabled +EXPORT_SYMBOL vmlinux 0x4629334c __preempt_count +EXPORT_SYMBOL vmlinux 0x463219fb tcp_hashinfo +EXPORT_SYMBOL vmlinux 0x463a1831 scsi_get_host_dev +EXPORT_SYMBOL vmlinux 0x46406f25 grab_cache_page_write_begin +EXPORT_SYMBOL vmlinux 0x464ca7fa kernel_accept +EXPORT_SYMBOL vmlinux 0x4657b818 flow_indr_dev_register +EXPORT_SYMBOL vmlinux 0x465e24ff ucs2_utf8size +EXPORT_SYMBOL vmlinux 0x4663021f security_socket_getpeersec_dgram +EXPORT_SYMBOL vmlinux 0x466c14a7 __delay +EXPORT_SYMBOL vmlinux 0x467df16d netdev_rss_key_fill +EXPORT_SYMBOL vmlinux 0x4680f6a0 kernel_sendpage_locked +EXPORT_SYMBOL vmlinux 0x469855fd pps_register_source +EXPORT_SYMBOL vmlinux 0x469a6ec7 tcp_parse_md5sig_option +EXPORT_SYMBOL vmlinux 0x469ed6e9 simple_readpage +EXPORT_SYMBOL vmlinux 0x46a4dbf9 dev_get_stats +EXPORT_SYMBOL vmlinux 0x46bc0453 dcb_ieee_getapp_mask +EXPORT_SYMBOL vmlinux 0x46c47fb6 __node_distance +EXPORT_SYMBOL vmlinux 0x46cf10eb cachemode2protval +EXPORT_SYMBOL vmlinux 0x46d281b4 skb_set_owner_w +EXPORT_SYMBOL vmlinux 0x46d9fd8c alloc_netdev_mqs +EXPORT_SYMBOL vmlinux 0x46eb31c9 alloc_fcdev +EXPORT_SYMBOL vmlinux 0x46f4e171 netdev_bonding_info_change +EXPORT_SYMBOL vmlinux 0x46fd9f3c follow_down +EXPORT_SYMBOL vmlinux 0x470f6d8d super_setup_bdi_name +EXPORT_SYMBOL vmlinux 0x471471dc noop_llseek +EXPORT_SYMBOL vmlinux 0x4715a909 acpi_load_table +EXPORT_SYMBOL vmlinux 0x4740b3bc xen_arch_unregister_cpu +EXPORT_SYMBOL vmlinux 0x47474744 blk_integrity_unregister +EXPORT_SYMBOL vmlinux 0x474a7be7 softnet_data +EXPORT_SYMBOL vmlinux 0x475cf03a __skb_flow_dissect +EXPORT_SYMBOL vmlinux 0x47709e42 free_anon_bdev +EXPORT_SYMBOL vmlinux 0x477e5749 tcp_check_req +EXPORT_SYMBOL vmlinux 0x47939e0d __tasklet_hi_schedule +EXPORT_SYMBOL vmlinux 0x47941711 _raw_spin_lock_irq +EXPORT_SYMBOL vmlinux 0x47960bc4 proc_do_large_bitmap +EXPORT_SYMBOL vmlinux 0x479aaab4 dev_loopback_xmit +EXPORT_SYMBOL vmlinux 0x479c3c86 find_next_zero_bit +EXPORT_SYMBOL vmlinux 0x47a0cdcb mb_cache_entry_find_next +EXPORT_SYMBOL vmlinux 0x47a4cfd3 sock_queue_rcv_skb +EXPORT_SYMBOL vmlinux 0x47a6f0fc __sk_backlog_rcv +EXPORT_SYMBOL vmlinux 0x47c65bfc unregister_inet6addr_validator_notifier +EXPORT_SYMBOL vmlinux 0x47c84459 set_blocksize +EXPORT_SYMBOL vmlinux 0x47d5751d md_wakeup_thread +EXPORT_SYMBOL vmlinux 0x47dab76a uart_unregister_driver +EXPORT_SYMBOL vmlinux 0x4812bc65 cdev_alloc +EXPORT_SYMBOL vmlinux 0x48193639 acpi_lid_open +EXPORT_SYMBOL vmlinux 0x481f51c2 con_copy_unimap +EXPORT_SYMBOL vmlinux 0x4829cf6b fscrypt_enqueue_decrypt_work +EXPORT_SYMBOL vmlinux 0x4834586a fib_notifier_ops_unregister +EXPORT_SYMBOL vmlinux 0x4838779b vlan_ioctl_set +EXPORT_SYMBOL vmlinux 0x483b9f1d phy_init_eee +EXPORT_SYMBOL vmlinux 0x4841bdee strnchr +EXPORT_SYMBOL vmlinux 0x48476bcb intel_gtt_insert_page +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 0x4871d75d clk_hw_register_clkdev +EXPORT_SYMBOL vmlinux 0x4872f228 netlink_unicast +EXPORT_SYMBOL vmlinux 0x4894607d blk_queue_max_segment_size +EXPORT_SYMBOL vmlinux 0x489f6e0b rdma_dim +EXPORT_SYMBOL vmlinux 0x48a59dbe bd_set_size +EXPORT_SYMBOL vmlinux 0x48a66d4f __netif_schedule +EXPORT_SYMBOL vmlinux 0x48a81d7e vfio_group_pin_pages +EXPORT_SYMBOL vmlinux 0x48a91171 string_get_size +EXPORT_SYMBOL vmlinux 0x48b99a13 vme_lm_free +EXPORT_SYMBOL vmlinux 0x48c093fb _atomic_dec_and_lock_irqsave +EXPORT_SYMBOL vmlinux 0x48c42d2b __nla_put +EXPORT_SYMBOL vmlinux 0x48d50e79 amd_iommu_register_ppr_notifier +EXPORT_SYMBOL vmlinux 0x48d9eced inet_release +EXPORT_SYMBOL vmlinux 0x48de4232 kobject_get_unless_zero +EXPORT_SYMBOL vmlinux 0x48e26308 tty_do_resize +EXPORT_SYMBOL vmlinux 0x48ebb406 security_sb_set_mnt_opts +EXPORT_SYMBOL vmlinux 0x48f2f973 blk_queue_max_hw_sectors +EXPORT_SYMBOL vmlinux 0x48fd92c5 security_inode_setsecctx +EXPORT_SYMBOL vmlinux 0x4901587c sync_dirty_buffer +EXPORT_SYMBOL vmlinux 0x49045426 icmp_err_convert +EXPORT_SYMBOL vmlinux 0x4914df9d vlan_dev_vlan_proto +EXPORT_SYMBOL vmlinux 0x491794bc ipv6_skip_exthdr +EXPORT_SYMBOL vmlinux 0x49284c39 security_path_unlink +EXPORT_SYMBOL vmlinux 0x494e3393 vm_get_page_prot +EXPORT_SYMBOL vmlinux 0x4954d1eb vm_insert_page +EXPORT_SYMBOL vmlinux 0x495e378d __pv_queued_spin_lock_slowpath +EXPORT_SYMBOL vmlinux 0x49748138 fb_get_mode +EXPORT_SYMBOL vmlinux 0x49775e8f nd_namespace_blk_validate +EXPORT_SYMBOL vmlinux 0x49885233 __lock_buffer +EXPORT_SYMBOL vmlinux 0x4988e8ab dev_remove_offload +EXPORT_SYMBOL vmlinux 0x498e9128 ZSTD_findDecompressedSize +EXPORT_SYMBOL vmlinux 0x499e3499 pci_free_irq +EXPORT_SYMBOL vmlinux 0x499f0ecf nd_sb_checksum +EXPORT_SYMBOL vmlinux 0x49b163b8 acpi_bus_scan +EXPORT_SYMBOL vmlinux 0x49b91587 tcp_sock_set_syncnt +EXPORT_SYMBOL vmlinux 0x49c41a57 _raw_spin_unlock_bh +EXPORT_SYMBOL vmlinux 0x49cdc898 tcp_mss_to_mtu +EXPORT_SYMBOL vmlinux 0x49d6e383 sdev_prefix_printk +EXPORT_SYMBOL vmlinux 0x49ea270a km_report +EXPORT_SYMBOL vmlinux 0x49eb11ef vga_switcheroo_lock_ddc +EXPORT_SYMBOL vmlinux 0x49ed86a0 ZSTD_endStream +EXPORT_SYMBOL vmlinux 0x4a0297fc max8998_read_reg +EXPORT_SYMBOL vmlinux 0x4a0be3ac nvm_register_tgt_type +EXPORT_SYMBOL vmlinux 0x4a31dbe4 xfrm6_protocol_register +EXPORT_SYMBOL vmlinux 0x4a38a771 fget +EXPORT_SYMBOL vmlinux 0x4a3ad70e wait_for_completion_timeout +EXPORT_SYMBOL vmlinux 0x4a3e9a67 fwnode_irq_get +EXPORT_SYMBOL vmlinux 0x4a3f3ae6 blk_put_request +EXPORT_SYMBOL vmlinux 0x4a453f53 iowrite32 +EXPORT_SYMBOL vmlinux 0x4a49bf34 filemap_fdatawait_keep_errors +EXPORT_SYMBOL vmlinux 0x4a6911d9 scm_fp_dup +EXPORT_SYMBOL vmlinux 0x4a6c6c88 input_match_device_id +EXPORT_SYMBOL vmlinux 0x4a77b1af page_cache_prev_miss +EXPORT_SYMBOL vmlinux 0x4a84974c pcim_iomap +EXPORT_SYMBOL vmlinux 0x4a96a8eb xxh32_digest +EXPORT_SYMBOL vmlinux 0x4a96e424 get_fs_type +EXPORT_SYMBOL vmlinux 0x4a9be6c8 tty_port_alloc_xmit_buf +EXPORT_SYMBOL vmlinux 0x4aabbf9c __frontswap_store +EXPORT_SYMBOL vmlinux 0x4aac4f33 bdev_dax_pgoff +EXPORT_SYMBOL vmlinux 0x4ab208ba acpi_walk_resource_buffer +EXPORT_SYMBOL vmlinux 0x4abb7d10 cpu_rmap_update +EXPORT_SYMBOL vmlinux 0x4acc5a52 uart_remove_one_port +EXPORT_SYMBOL vmlinux 0x4ad959a0 skb_split +EXPORT_SYMBOL vmlinux 0x4adf5d5c make_kgid +EXPORT_SYMBOL vmlinux 0x4ae352c9 security_tun_dev_attach +EXPORT_SYMBOL vmlinux 0x4ae56e41 seq_path +EXPORT_SYMBOL vmlinux 0x4aea463f crc32_le_shift +EXPORT_SYMBOL vmlinux 0x4afb2238 add_wait_queue +EXPORT_SYMBOL vmlinux 0x4b085dbf agp3_generic_configure +EXPORT_SYMBOL vmlinux 0x4b203a8e param_get_ulong +EXPORT_SYMBOL vmlinux 0x4b20bf20 pnp_disable_dev +EXPORT_SYMBOL vmlinux 0x4b2231e4 pci_read_config_dword +EXPORT_SYMBOL vmlinux 0x4b260417 sock_queue_err_skb +EXPORT_SYMBOL vmlinux 0x4b293f94 nd_region_to_nstype +EXPORT_SYMBOL vmlinux 0x4b2f5299 d_instantiate_anon +EXPORT_SYMBOL vmlinux 0x4b4323b0 nf_ip6_checksum +EXPORT_SYMBOL vmlinux 0x4b57d9dc amd_iommu_domain_direct_map +EXPORT_SYMBOL vmlinux 0x4b5fd49e dm_kcopyd_do_callback +EXPORT_SYMBOL vmlinux 0x4b606d22 d_move +EXPORT_SYMBOL vmlinux 0x4b6c19dd devfreq_register_notifier +EXPORT_SYMBOL vmlinux 0x4b6df007 acpi_evaluate_reg +EXPORT_SYMBOL vmlinux 0x4b744f83 param_ops_int +EXPORT_SYMBOL vmlinux 0x4b7bfa56 mipi_dsi_dcs_set_display_brightness +EXPORT_SYMBOL vmlinux 0x4b7c6c30 vmf_insert_mixed +EXPORT_SYMBOL vmlinux 0x4b8a0423 vme_irq_handler +EXPORT_SYMBOL vmlinux 0x4b9c21df simple_rename +EXPORT_SYMBOL vmlinux 0x4ba44a4f ip4_datagram_connect +EXPORT_SYMBOL vmlinux 0x4ba4ecc4 tty_chars_in_buffer +EXPORT_SYMBOL vmlinux 0x4ba75be9 acpi_dev_hid_uid_match +EXPORT_SYMBOL vmlinux 0x4bb16d66 udp_lib_rehash +EXPORT_SYMBOL vmlinux 0x4bb8aa39 find_inode_rcu +EXPORT_SYMBOL vmlinux 0x4bc97ccd mdiobus_unregister +EXPORT_SYMBOL vmlinux 0x4bcc2662 mempool_init_node +EXPORT_SYMBOL vmlinux 0x4bd74c7e seq_file_path +EXPORT_SYMBOL vmlinux 0x4bdf9a1d try_module_get +EXPORT_SYMBOL vmlinux 0x4becccd2 md_set_array_sectors +EXPORT_SYMBOL vmlinux 0x4bee8287 get_user_pages_locked +EXPORT_SYMBOL vmlinux 0x4bef1c67 empty_name +EXPORT_SYMBOL vmlinux 0x4bfdbb3b get_super +EXPORT_SYMBOL vmlinux 0x4bffb580 current_in_userns +EXPORT_SYMBOL vmlinux 0x4c07a7e0 acpi_processor_unregister_performance +EXPORT_SYMBOL vmlinux 0x4c0c8c8a agp_backend_acquire +EXPORT_SYMBOL vmlinux 0x4c0dea64 pci_alloc_host_bridge +EXPORT_SYMBOL vmlinux 0x4c297e14 dev_uc_init +EXPORT_SYMBOL vmlinux 0x4c324177 vme_slot_num +EXPORT_SYMBOL vmlinux 0x4c38d4e0 utf8_strncasecmp_folded +EXPORT_SYMBOL vmlinux 0x4c416eb9 LZ4_decompress_fast +EXPORT_SYMBOL vmlinux 0x4c4343c4 __pagevec_release +EXPORT_SYMBOL vmlinux 0x4c5df59b free_xenballooned_pages +EXPORT_SYMBOL vmlinux 0x4c978dc0 pci_scan_root_bus +EXPORT_SYMBOL vmlinux 0x4c9992df input_free_device +EXPORT_SYMBOL vmlinux 0x4c9d28b0 phys_base +EXPORT_SYMBOL vmlinux 0x4cb11078 dev_vprintk_emit +EXPORT_SYMBOL vmlinux 0x4cb89070 pci_get_subsys +EXPORT_SYMBOL vmlinux 0x4cba441d iwe_stream_add_event +EXPORT_SYMBOL vmlinux 0x4cc0c1c8 __dquot_alloc_space +EXPORT_SYMBOL vmlinux 0x4ccd378a _raw_write_unlock_irq +EXPORT_SYMBOL vmlinux 0x4cd5bc5e rdmsr_safe_regs +EXPORT_SYMBOL vmlinux 0x4ce2c4dd module_refcount +EXPORT_SYMBOL vmlinux 0x4cea199d tty_port_destroy +EXPORT_SYMBOL vmlinux 0x4cebdba3 fb_get_buffer_offset +EXPORT_SYMBOL vmlinux 0x4d1ef4cd inode_needs_sync +EXPORT_SYMBOL vmlinux 0x4d22637c inet_del_offload +EXPORT_SYMBOL vmlinux 0x4d2c7133 acpi_info +EXPORT_SYMBOL vmlinux 0x4d3c14f1 flow_rule_match_enc_control +EXPORT_SYMBOL vmlinux 0x4d49384c tcp_filter +EXPORT_SYMBOL vmlinux 0x4d746837 xfrm_lookup_route +EXPORT_SYMBOL vmlinux 0x4d7c9e7f dcache_readdir +EXPORT_SYMBOL vmlinux 0x4d8e0ff2 sched_autogroup_detach +EXPORT_SYMBOL vmlinux 0x4d924f20 memremap +EXPORT_SYMBOL vmlinux 0x4d9b21fe __x86_retpoline_r11 +EXPORT_SYMBOL vmlinux 0x4d9b652b rb_erase +EXPORT_SYMBOL vmlinux 0x4d9d1ed2 xfrm_replay_seqhi +EXPORT_SYMBOL vmlinux 0x4dc05a8b pci_match_id +EXPORT_SYMBOL vmlinux 0x4dca08ee sync_file_get_fence +EXPORT_SYMBOL vmlinux 0x4dd3f60e phy_attached_info_irq +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 0x4e20bcf8 radix_tree_tag_set +EXPORT_SYMBOL vmlinux 0x4e3567f7 match_int +EXPORT_SYMBOL vmlinux 0x4e357f3a inode_set_flags +EXPORT_SYMBOL vmlinux 0x4e4f0f16 dma_fence_chain_find_seqno +EXPORT_SYMBOL vmlinux 0x4e547048 __kmalloc_node_track_caller +EXPORT_SYMBOL vmlinux 0x4e592f36 tcp_v4_send_check +EXPORT_SYMBOL vmlinux 0x4e68e9be rb_next_postorder +EXPORT_SYMBOL vmlinux 0x4e6e4b41 radix_tree_delete +EXPORT_SYMBOL vmlinux 0x4e6e8ea7 fg_console +EXPORT_SYMBOL vmlinux 0x4ea25709 dql_reset +EXPORT_SYMBOL vmlinux 0x4eada8f7 security_secid_to_secctx +EXPORT_SYMBOL vmlinux 0x4ebbbc53 blk_stack_limits +EXPORT_SYMBOL vmlinux 0x4ec3a2fb md_bitmap_update_sb +EXPORT_SYMBOL vmlinux 0x4ec54e78 bitmap_to_arr32 +EXPORT_SYMBOL vmlinux 0x4ed426e4 __skb_recv_datagram +EXPORT_SYMBOL vmlinux 0x4ee2f9f4 vga_con +EXPORT_SYMBOL vmlinux 0x4ee4a81b i2c_del_adapter +EXPORT_SYMBOL vmlinux 0x4ef167ad phy_drivers_unregister +EXPORT_SYMBOL vmlinux 0x4ef96045 nla_put +EXPORT_SYMBOL vmlinux 0x4efc49e9 csum_and_copy_from_iter_full +EXPORT_SYMBOL vmlinux 0x4f09d3ec thermal_zone_device_critical +EXPORT_SYMBOL vmlinux 0x4f0e85be generic_ro_fops +EXPORT_SYMBOL vmlinux 0x4f1cd128 security_tun_dev_create +EXPORT_SYMBOL vmlinux 0x4f2250ba rtc_tm_to_time64 +EXPORT_SYMBOL vmlinux 0x4f2545f0 serial8250_do_set_termios +EXPORT_SYMBOL vmlinux 0x4f476e1e netdev_notify_peers +EXPORT_SYMBOL vmlinux 0x4f4d78c5 LZ4_compress_default +EXPORT_SYMBOL vmlinux 0x4f55166f acpi_set_current_resources +EXPORT_SYMBOL vmlinux 0x4f6cf8b2 __netlink_kernel_create +EXPORT_SYMBOL vmlinux 0x4f6dc71a fscrypt_ioctl_set_policy +EXPORT_SYMBOL vmlinux 0x4f711f84 intel_scu_ipc_dev_iowrite8 +EXPORT_SYMBOL vmlinux 0x4f81e6ed pmem_should_map_pages +EXPORT_SYMBOL vmlinux 0x4f8af81b scsi_rescan_device +EXPORT_SYMBOL vmlinux 0x4f8ffe83 neigh_seq_next +EXPORT_SYMBOL vmlinux 0x4f914066 ipv4_specific +EXPORT_SYMBOL vmlinux 0x4fa8a9ef xfrm_state_flush +EXPORT_SYMBOL vmlinux 0x4fcc8ad2 ex_handler_uaccess +EXPORT_SYMBOL vmlinux 0x4fd18a79 dmam_pool_create +EXPORT_SYMBOL vmlinux 0x4fd3343a set_cached_acl +EXPORT_SYMBOL vmlinux 0x4fdee897 i8042_command +EXPORT_SYMBOL vmlinux 0x4ffc74c5 sock_release +EXPORT_SYMBOL vmlinux 0x5000c185 skb_store_bits +EXPORT_SYMBOL vmlinux 0x5007e12a dev_open +EXPORT_SYMBOL vmlinux 0x50097088 security_tun_dev_free_security +EXPORT_SYMBOL vmlinux 0x5009c71d glob_match +EXPORT_SYMBOL vmlinux 0x501aed28 dev_get_by_index +EXPORT_SYMBOL vmlinux 0x5027bde2 acpi_acquire_mutex +EXPORT_SYMBOL vmlinux 0x503b21b1 genphy_restart_aneg +EXPORT_SYMBOL vmlinux 0x504adde3 seg6_hmac_info_add +EXPORT_SYMBOL vmlinux 0x50624917 sha1_init +EXPORT_SYMBOL vmlinux 0x506dff1a __genradix_free +EXPORT_SYMBOL vmlinux 0x506e6400 agp_create_memory +EXPORT_SYMBOL vmlinux 0x509b64ea acpi_has_method +EXPORT_SYMBOL vmlinux 0x50a4698c fb_videomode_to_modelist +EXPORT_SYMBOL vmlinux 0x50b73ce2 rfkill_find_type +EXPORT_SYMBOL vmlinux 0x50b97874 get_unmapped_area +EXPORT_SYMBOL vmlinux 0x50be748d security_ib_free_security +EXPORT_SYMBOL vmlinux 0x50c5e0a3 dma_resv_add_shared_fence +EXPORT_SYMBOL vmlinux 0x50c7ba60 rtnl_notify +EXPORT_SYMBOL vmlinux 0x50d4bc88 __put_page +EXPORT_SYMBOL vmlinux 0x50d68377 arch_phys_wc_del +EXPORT_SYMBOL vmlinux 0x50dceced dev_set_group +EXPORT_SYMBOL vmlinux 0x50e2cce5 inet_rtx_syn_ack +EXPORT_SYMBOL vmlinux 0x50f91491 __genradix_ptr +EXPORT_SYMBOL vmlinux 0x5102a30b do_wait_intr_irq +EXPORT_SYMBOL vmlinux 0x511290b8 inet_addr_type_dev_table +EXPORT_SYMBOL vmlinux 0x5114efb6 inode_permission +EXPORT_SYMBOL vmlinux 0x512855a0 __SetPageMovable +EXPORT_SYMBOL vmlinux 0x5135b2e0 kfree_skb_list +EXPORT_SYMBOL vmlinux 0x51367bc0 redraw_screen +EXPORT_SYMBOL vmlinux 0x51484050 vm_insert_pages +EXPORT_SYMBOL vmlinux 0x515083bf acpi_release_mutex +EXPORT_SYMBOL vmlinux 0x51641162 opal_unlock_from_suspend +EXPORT_SYMBOL vmlinux 0x51760917 _raw_spin_lock_irqsave +EXPORT_SYMBOL vmlinux 0x51774601 device_add_disk +EXPORT_SYMBOL vmlinux 0x517a9a71 mmc_set_data_timeout +EXPORT_SYMBOL vmlinux 0x518b3026 pneigh_enqueue +EXPORT_SYMBOL vmlinux 0x5194ef1c udp_push_pending_frames +EXPORT_SYMBOL vmlinux 0x51bf69ce cdrom_media_changed +EXPORT_SYMBOL vmlinux 0x51d12d4e acpi_pci_disabled +EXPORT_SYMBOL vmlinux 0x51f298e0 intel_scu_ipc_dev_ioread8 +EXPORT_SYMBOL vmlinux 0x51f683ae pci_bus_read_dev_vendor_id +EXPORT_SYMBOL vmlinux 0x51ff6f06 input_open_device +EXPORT_SYMBOL vmlinux 0x5205d515 tso_build_hdr +EXPORT_SYMBOL vmlinux 0x521664ef vga_client_register +EXPORT_SYMBOL vmlinux 0x5219f89a mmc_can_discard +EXPORT_SYMBOL vmlinux 0x52231151 __frontswap_load +EXPORT_SYMBOL vmlinux 0x52315587 pci_back_from_sleep +EXPORT_SYMBOL vmlinux 0x526668eb napi_gro_frags +EXPORT_SYMBOL vmlinux 0x526eef2c hdmi_vendor_infoframe_pack +EXPORT_SYMBOL vmlinux 0x52800eb3 compat_sock_common_getsockopt +EXPORT_SYMBOL vmlinux 0x5286785e fs_param_is_u32 +EXPORT_SYMBOL vmlinux 0x5287f2d4 inode_get_bytes +EXPORT_SYMBOL vmlinux 0x528f28de fc_mount +EXPORT_SYMBOL vmlinux 0x52983a4f vme_master_write +EXPORT_SYMBOL vmlinux 0x52ab0e53 gnet_stats_copy_rate_est +EXPORT_SYMBOL vmlinux 0x52ab6814 blk_integrity_merge_bio +EXPORT_SYMBOL vmlinux 0x52bb48cf neigh_destroy +EXPORT_SYMBOL vmlinux 0x52cd59d2 eth_gro_complete +EXPORT_SYMBOL vmlinux 0x52d717da xz_dec_init +EXPORT_SYMBOL vmlinux 0x52d811b4 bioset_exit +EXPORT_SYMBOL vmlinux 0x52dcc726 param_set_copystring +EXPORT_SYMBOL vmlinux 0x52e3f1a7 seq_vprintf +EXPORT_SYMBOL vmlinux 0x52ecbc75 crc_ccitt +EXPORT_SYMBOL vmlinux 0x52f81cf5 default_llseek +EXPORT_SYMBOL vmlinux 0x530b1e98 pm_suspend +EXPORT_SYMBOL vmlinux 0x530d2242 stop_tty +EXPORT_SYMBOL vmlinux 0x53126ecc __percpu_counter_sum +EXPORT_SYMBOL vmlinux 0x531b604e __virt_addr_valid +EXPORT_SYMBOL vmlinux 0x532bd542 pneigh_lookup +EXPORT_SYMBOL vmlinux 0x533206b5 sort_r +EXPORT_SYMBOL vmlinux 0x534b6815 rtnl_create_link +EXPORT_SYMBOL vmlinux 0x53569707 this_cpu_off +EXPORT_SYMBOL vmlinux 0x5367b4b4 boot_cpu_data +EXPORT_SYMBOL vmlinux 0x536c0221 neigh_direct_output +EXPORT_SYMBOL vmlinux 0x538b42a4 scsi_scan_host +EXPORT_SYMBOL vmlinux 0x539a68b4 simple_dir_operations +EXPORT_SYMBOL vmlinux 0x53a0a517 phy_ethtool_ksettings_set +EXPORT_SYMBOL vmlinux 0x53b954a2 up_read +EXPORT_SYMBOL vmlinux 0x53bb5977 security_path_rename +EXPORT_SYMBOL vmlinux 0x53bc9234 pcim_pin_device +EXPORT_SYMBOL vmlinux 0x53be34f0 __x86_retpoline_rsi +EXPORT_SYMBOL vmlinux 0x53c532ee kern_path_create +EXPORT_SYMBOL vmlinux 0x53df8f81 pcie_capability_clear_and_set_word +EXPORT_SYMBOL vmlinux 0x53ed8303 unix_attach_fds +EXPORT_SYMBOL vmlinux 0x53f4f21c pci_bus_alloc_resource +EXPORT_SYMBOL vmlinux 0x53f851c0 phy_resume +EXPORT_SYMBOL vmlinux 0x53fa36d1 ZSTD_decompressBlock +EXPORT_SYMBOL vmlinux 0x53fab617 file_write_and_wait_range +EXPORT_SYMBOL vmlinux 0x53fd16e9 inet_sendmsg +EXPORT_SYMBOL vmlinux 0x53fe978a tty_register_driver +EXPORT_SYMBOL vmlinux 0x54015f0b vga_switcheroo_client_fb_set +EXPORT_SYMBOL vmlinux 0x54175c5f acpi_read_bit_register +EXPORT_SYMBOL vmlinux 0x5419fd67 __hw_addr_ref_unsync_dev +EXPORT_SYMBOL vmlinux 0x54245b39 kstrtoull_from_user +EXPORT_SYMBOL vmlinux 0x542e4e90 dec_zone_page_state +EXPORT_SYMBOL vmlinux 0x5434cdbd blk_mq_free_tag_set +EXPORT_SYMBOL vmlinux 0x543ef284 seq_hlist_start +EXPORT_SYMBOL vmlinux 0x547a05df __nla_put_64bit +EXPORT_SYMBOL vmlinux 0x547e3344 acpi_disable +EXPORT_SYMBOL vmlinux 0x547e48f4 __vlan_find_dev_deep_rcu +EXPORT_SYMBOL vmlinux 0x548af3eb dcb_getapp +EXPORT_SYMBOL vmlinux 0x54a170e7 __napi_alloc_skb +EXPORT_SYMBOL vmlinux 0x54a9db5f _kstrtoul +EXPORT_SYMBOL vmlinux 0x54e25d4c scsi_device_get +EXPORT_SYMBOL vmlinux 0x54e6fcdd net_enable_timestamp +EXPORT_SYMBOL vmlinux 0x54ea6dfe xen_start_flags +EXPORT_SYMBOL vmlinux 0x54ede6d5 __dec_zone_page_state +EXPORT_SYMBOL vmlinux 0x5500178a bio_devname +EXPORT_SYMBOL vmlinux 0x5506b8f7 netlbl_bitmap_setbit +EXPORT_SYMBOL vmlinux 0x550e5aa6 amd_iommu_get_v2_domain +EXPORT_SYMBOL vmlinux 0x550ef27e param_ops_ulong +EXPORT_SYMBOL vmlinux 0x5513beef scsicam_bios_param +EXPORT_SYMBOL vmlinux 0x551bd071 __rb_erase_color +EXPORT_SYMBOL vmlinux 0x552677fa sock_no_accept +EXPORT_SYMBOL vmlinux 0x554ae3a4 irq_poll_sched +EXPORT_SYMBOL vmlinux 0x554ffc98 xsk_umem_consume_tx_done +EXPORT_SYMBOL vmlinux 0x556422b3 ioremap_cache +EXPORT_SYMBOL vmlinux 0x556b5d62 __kfifo_dma_in_prepare_r +EXPORT_SYMBOL vmlinux 0x556cca46 x86_apple_machine +EXPORT_SYMBOL vmlinux 0x5580d76d pps_lookup_dev +EXPORT_SYMBOL vmlinux 0x558a2799 commit_creds +EXPORT_SYMBOL vmlinux 0x558b281d aes_expandkey +EXPORT_SYMBOL vmlinux 0x558fe2e0 configfs_unregister_group +EXPORT_SYMBOL vmlinux 0x55bd2b8f max8925_reg_write +EXPORT_SYMBOL vmlinux 0x55e31703 ethtool_convert_link_mode_to_legacy_u32 +EXPORT_SYMBOL vmlinux 0x55e523e8 tcf_action_exec +EXPORT_SYMBOL vmlinux 0x55edcf88 mmc_cqe_request_done +EXPORT_SYMBOL vmlinux 0x55f95e07 ioremap_prot +EXPORT_SYMBOL vmlinux 0x5606bdb3 find_get_pages_range_tag +EXPORT_SYMBOL vmlinux 0x560b9957 ata_std_end_eh +EXPORT_SYMBOL vmlinux 0x5614a8d6 nf_ip_checksum +EXPORT_SYMBOL vmlinux 0x562c4936 devm_ioremap_resource +EXPORT_SYMBOL vmlinux 0x5635a60a vmalloc_user +EXPORT_SYMBOL vmlinux 0x56383be6 mark_buffer_async_write +EXPORT_SYMBOL vmlinux 0x56466e42 ZSTD_CStreamInSize +EXPORT_SYMBOL vmlinux 0x56470118 __warn_printk +EXPORT_SYMBOL vmlinux 0x564f7608 acpi_reconfig_notifier_register +EXPORT_SYMBOL vmlinux 0x56719343 md_bitmap_sync_with_cluster +EXPORT_SYMBOL vmlinux 0x5679f759 get_amd_iommu +EXPORT_SYMBOL vmlinux 0x567a7b12 cfb_copyarea +EXPORT_SYMBOL vmlinux 0x56802ae8 rps_cpu_mask +EXPORT_SYMBOL vmlinux 0x568b909a d_obtain_root +EXPORT_SYMBOL vmlinux 0x569abcca acpi_walk_resources +EXPORT_SYMBOL vmlinux 0x56ad141d ip6_frag_next +EXPORT_SYMBOL vmlinux 0x56bbe41f xfrm_input_register_afinfo +EXPORT_SYMBOL vmlinux 0x56c1d665 vfs_link +EXPORT_SYMBOL vmlinux 0x56c8799d scsi_kunmap_atomic_sg +EXPORT_SYMBOL vmlinux 0x56d202ee xsk_set_tx_need_wakeup +EXPORT_SYMBOL vmlinux 0x56d49d1c fscrypt_inherit_context +EXPORT_SYMBOL vmlinux 0x56e122d2 dev_mc_flush +EXPORT_SYMBOL vmlinux 0x56f318cb blk_mq_start_stopped_hw_queues +EXPORT_SYMBOL vmlinux 0x56f41965 kill_block_super +EXPORT_SYMBOL vmlinux 0x56f8c371 __tracepoint_kfree +EXPORT_SYMBOL vmlinux 0x57298488 unpin_user_page +EXPORT_SYMBOL vmlinux 0x574c2e74 bitmap_release_region +EXPORT_SYMBOL vmlinux 0x57575f08 dmaengine_put +EXPORT_SYMBOL vmlinux 0x5758c826 xfrm4_rcv +EXPORT_SYMBOL vmlinux 0x5786505f inet_proto_csum_replace_by_diff +EXPORT_SYMBOL vmlinux 0x578a1876 tun_xdp_to_ptr +EXPORT_SYMBOL vmlinux 0x578a408b ZSTD_initDCtx +EXPORT_SYMBOL vmlinux 0x578e06f1 unregister_md_personality +EXPORT_SYMBOL vmlinux 0x57900416 gen_pool_fixed_alloc +EXPORT_SYMBOL vmlinux 0x5792f848 strlcpy +EXPORT_SYMBOL vmlinux 0x57b7cb98 kern_unmount +EXPORT_SYMBOL vmlinux 0x57bc19d2 down_write +EXPORT_SYMBOL vmlinux 0x580c41d9 alloc_fddidev +EXPORT_SYMBOL vmlinux 0x5818fe3c posix_acl_from_mode +EXPORT_SYMBOL vmlinux 0x581ecf36 inet6_bind +EXPORT_SYMBOL vmlinux 0x581f98da zlib_inflate +EXPORT_SYMBOL vmlinux 0x582b6275 xfrm_if_unregister_cb +EXPORT_SYMBOL vmlinux 0x5837b6ed simple_nosetlease +EXPORT_SYMBOL vmlinux 0x5838f6c9 rtc_valid_tm +EXPORT_SYMBOL vmlinux 0x5857b225 ioread16_rep +EXPORT_SYMBOL vmlinux 0x58604e4d alloc_iova_mem +EXPORT_SYMBOL vmlinux 0x586c391b amd_iommu_device_info +EXPORT_SYMBOL vmlinux 0x587daf51 key_revoke +EXPORT_SYMBOL vmlinux 0x587f22d7 devmap_managed_key +EXPORT_SYMBOL vmlinux 0x588cd96f xsk_set_rx_need_wakeup +EXPORT_SYMBOL vmlinux 0x589ed18b nvdimm_namespace_locked +EXPORT_SYMBOL vmlinux 0x58acf24b mdiobus_register_board_info +EXPORT_SYMBOL vmlinux 0x58adb05c get_vaddr_frames +EXPORT_SYMBOL vmlinux 0x58b4645c dev_close_many +EXPORT_SYMBOL vmlinux 0x58b73bc7 match_wildcard +EXPORT_SYMBOL vmlinux 0x58e3306d bit_wait_io +EXPORT_SYMBOL vmlinux 0x58eb77ea __mdiobus_register +EXPORT_SYMBOL vmlinux 0x590491c6 phy_write_paged +EXPORT_SYMBOL vmlinux 0x5907b9b5 nla_append +EXPORT_SYMBOL vmlinux 0x59234508 kern_path +EXPORT_SYMBOL vmlinux 0x593c1bac __x86_indirect_thunk_rbx +EXPORT_SYMBOL vmlinux 0x594bf15b ioport_map +EXPORT_SYMBOL vmlinux 0x59588850 vsscanf +EXPORT_SYMBOL vmlinux 0x597f54c0 native_restore_fl +EXPORT_SYMBOL vmlinux 0x5983cb24 blkdev_compat_ptr_ioctl +EXPORT_SYMBOL vmlinux 0x599fb41c kvmalloc_node +EXPORT_SYMBOL vmlinux 0x59a2f0ee packing +EXPORT_SYMBOL vmlinux 0x59a3dc3b ps2_end_command +EXPORT_SYMBOL vmlinux 0x59b4ac3e tcp_memory_allocated +EXPORT_SYMBOL vmlinux 0x59b5f142 phy_mac_interrupt +EXPORT_SYMBOL vmlinux 0x59c8d1ab compat_nf_getsockopt +EXPORT_SYMBOL vmlinux 0x59d9125d nvdimm_namespace_capacity +EXPORT_SYMBOL vmlinux 0x59da8a38 pci_scan_root_bus_bridge +EXPORT_SYMBOL vmlinux 0x59e1e0d5 jbd2_log_start_commit +EXPORT_SYMBOL vmlinux 0x59e9ee00 mr_rtm_dumproute +EXPORT_SYMBOL vmlinux 0x5a030a58 __skb_warn_lro_forwarding +EXPORT_SYMBOL vmlinux 0x5a091151 param_get_charp +EXPORT_SYMBOL vmlinux 0x5a0b73d0 zlib_deflateInit2 +EXPORT_SYMBOL vmlinux 0x5a12f233 nvm_submit_io +EXPORT_SYMBOL vmlinux 0x5a245f6d _raw_write_lock +EXPORT_SYMBOL vmlinux 0x5a2b9a7b page_cache_next_miss +EXPORT_SYMBOL vmlinux 0x5a3395e2 vfs_tmpfile +EXPORT_SYMBOL vmlinux 0x5a44f8cb __crypto_memneq +EXPORT_SYMBOL vmlinux 0x5a45a800 __splice_from_pipe +EXPORT_SYMBOL vmlinux 0x5a4896a8 __put_user_2 +EXPORT_SYMBOL vmlinux 0x5a4d313e gf128mul_4k_lle +EXPORT_SYMBOL vmlinux 0x5a5a2271 __cpu_online_mask +EXPORT_SYMBOL vmlinux 0x5a6197ea dm_register_target +EXPORT_SYMBOL vmlinux 0x5a6ce888 alloc_anon_inode +EXPORT_SYMBOL vmlinux 0x5a743d1e padata_stop +EXPORT_SYMBOL vmlinux 0x5a758fc1 pcim_set_mwi +EXPORT_SYMBOL vmlinux 0x5a803064 from_kgid +EXPORT_SYMBOL vmlinux 0x5a85547a genphy_loopback +EXPORT_SYMBOL vmlinux 0x5a89d7c3 skb_copy_bits +EXPORT_SYMBOL vmlinux 0x5a8ae15a ZSTD_initDDict +EXPORT_SYMBOL vmlinux 0x5a921311 strncmp +EXPORT_SYMBOL vmlinux 0x5a9c7cc8 mipi_dsi_dcs_set_page_address +EXPORT_SYMBOL vmlinux 0x5ae20040 cpufreq_generic_suspend +EXPORT_SYMBOL vmlinux 0x5b086940 mmc_set_blocklen +EXPORT_SYMBOL vmlinux 0x5b1ef8c2 lookup_positive_unlocked +EXPORT_SYMBOL vmlinux 0x5b2cd634 remove_arg_zero +EXPORT_SYMBOL vmlinux 0x5b2f27fb do_wait_intr +EXPORT_SYMBOL vmlinux 0x5b36d5dd utf8agemax +EXPORT_SYMBOL vmlinux 0x5b3e282f xa_store +EXPORT_SYMBOL vmlinux 0x5b3fe714 rtnl_configure_link +EXPORT_SYMBOL vmlinux 0x5b434cdd flow_rule_match_cvlan +EXPORT_SYMBOL vmlinux 0x5b56860c vm_munmap +EXPORT_SYMBOL vmlinux 0x5b5def8b ppp_output_wakeup +EXPORT_SYMBOL vmlinux 0x5b67b93c fs_param_is_blockdev +EXPORT_SYMBOL vmlinux 0x5b6b0bd0 generic_file_write_iter +EXPORT_SYMBOL vmlinux 0x5b829f1f sg_miter_skip +EXPORT_SYMBOL vmlinux 0x5bb5e22d kernel_sendmsg_locked +EXPORT_SYMBOL vmlinux 0x5bb6fbf3 proc_create +EXPORT_SYMBOL vmlinux 0x5bbef29d mipi_dsi_generic_write +EXPORT_SYMBOL vmlinux 0x5bc92e85 LZ4_compress_destSize +EXPORT_SYMBOL vmlinux 0x5bd4ff88 flow_action_cookie_create +EXPORT_SYMBOL vmlinux 0x5be63c5b crc32c_csum_stub +EXPORT_SYMBOL vmlinux 0x5be94298 __inet_hash +EXPORT_SYMBOL vmlinux 0x5bf21712 init_task +EXPORT_SYMBOL vmlinux 0x5c00d810 ZSTD_CDictWorkspaceBound +EXPORT_SYMBOL vmlinux 0x5c039379 pci_save_state +EXPORT_SYMBOL vmlinux 0x5c26a53b wait_for_completion_io_timeout +EXPORT_SYMBOL vmlinux 0x5c31ab5c tcp_disconnect +EXPORT_SYMBOL vmlinux 0x5c3dacd9 blk_queue_alignment_offset +EXPORT_SYMBOL vmlinux 0x5c4265f6 blk_unregister_region +EXPORT_SYMBOL vmlinux 0x5c5e63fa get_watch_queue +EXPORT_SYMBOL vmlinux 0x5c8250ec simple_get_link +EXPORT_SYMBOL vmlinux 0x5ca1cd5c tcp_seq_start +EXPORT_SYMBOL vmlinux 0x5ca6ba42 __sock_queue_rcv_skb +EXPORT_SYMBOL vmlinux 0x5cb6790f __cleancache_invalidate_page +EXPORT_SYMBOL vmlinux 0x5cbaf2f2 kernel_param_unlock +EXPORT_SYMBOL vmlinux 0x5cbd962d twl6040_clear_bits +EXPORT_SYMBOL vmlinux 0x5cc0cb89 nf_log_trace +EXPORT_SYMBOL vmlinux 0x5cdc9d96 amd_iommu_flush_tlb +EXPORT_SYMBOL vmlinux 0x5cebef10 rdmacg_try_charge +EXPORT_SYMBOL vmlinux 0x5cf53ce2 input_free_minor +EXPORT_SYMBOL vmlinux 0x5cfb26a0 acpi_enter_sleep_state +EXPORT_SYMBOL vmlinux 0x5d2f50a9 dump_emit +EXPORT_SYMBOL vmlinux 0x5d38907b dev_mc_sync_multiple +EXPORT_SYMBOL vmlinux 0x5d49aabc init_wait_var_entry +EXPORT_SYMBOL vmlinux 0x5d5f5511 pnp_activate_dev +EXPORT_SYMBOL vmlinux 0x5d6aee6e kern_unmount_array +EXPORT_SYMBOL vmlinux 0x5d78a8f6 vm_node_stat +EXPORT_SYMBOL vmlinux 0x5d7cf6c7 unpin_user_pages +EXPORT_SYMBOL vmlinux 0x5d830297 get_random_bytes_arch +EXPORT_SYMBOL vmlinux 0x5da114ac jbd2_journal_check_used_features +EXPORT_SYMBOL vmlinux 0x5df108ad __scsi_iterate_devices +EXPORT_SYMBOL vmlinux 0x5df227ea blk_mq_alloc_request +EXPORT_SYMBOL vmlinux 0x5dfb0663 follow_pte_pmd +EXPORT_SYMBOL vmlinux 0x5dffb495 ZSTD_decompress_usingDDict +EXPORT_SYMBOL vmlinux 0x5e0ccb9f sha1_transform +EXPORT_SYMBOL vmlinux 0x5e1155af sched_autogroup_create_attach +EXPORT_SYMBOL vmlinux 0x5e1444d9 kfree_skb_partial +EXPORT_SYMBOL vmlinux 0x5e332b52 __var_waitqueue +EXPORT_SYMBOL vmlinux 0x5e373fb4 gf128mul_64k_bbe +EXPORT_SYMBOL vmlinux 0x5e3b6134 mipi_dsi_device_register_full +EXPORT_SYMBOL vmlinux 0x5e4a4ad6 vlan_dev_vlan_id +EXPORT_SYMBOL vmlinux 0x5e5b76f8 __tracepoint_kmalloc_node +EXPORT_SYMBOL vmlinux 0x5e855e56 gen_pool_first_fit_align +EXPORT_SYMBOL vmlinux 0x5e95b1cd current_umask +EXPORT_SYMBOL vmlinux 0x5eb137f4 is_nd_pfn +EXPORT_SYMBOL vmlinux 0x5eb24829 dm_shift_arg +EXPORT_SYMBOL vmlinux 0x5eb33ae7 param_set_ushort +EXPORT_SYMBOL vmlinux 0x5eb9a865 __sync_dirty_buffer +EXPORT_SYMBOL vmlinux 0x5ebcfc1e security_inode_invalidate_secctx +EXPORT_SYMBOL vmlinux 0x5ec4aee6 put_sg_io_hdr +EXPORT_SYMBOL vmlinux 0x5ec93c2c clear_nlink +EXPORT_SYMBOL vmlinux 0x5ed040b0 pm_set_vt_switch +EXPORT_SYMBOL vmlinux 0x5ed2969e string_escape_mem_ascii +EXPORT_SYMBOL vmlinux 0x5ed90adc int_to_scsilun +EXPORT_SYMBOL vmlinux 0x5ee16721 flow_get_u32_src +EXPORT_SYMBOL vmlinux 0x5eec1148 mipi_dsi_dcs_set_display_on +EXPORT_SYMBOL vmlinux 0x5eefeb76 jbd2_journal_init_inode +EXPORT_SYMBOL vmlinux 0x5ef5ff2e jbd2_journal_get_create_access +EXPORT_SYMBOL vmlinux 0x5ef6a672 gen_pool_for_each_chunk +EXPORT_SYMBOL vmlinux 0x5efde8e6 proc_doulongvec_ms_jiffies_minmax +EXPORT_SYMBOL vmlinux 0x5f098b2a in6addr_interfacelocal_allrouters +EXPORT_SYMBOL vmlinux 0x5f281929 devfreq_update_interval +EXPORT_SYMBOL vmlinux 0x5f56663b rdmsrl_on_cpu +EXPORT_SYMBOL vmlinux 0x5f5c1135 dentry_open +EXPORT_SYMBOL vmlinux 0x5f6b889c rproc_va_to_pa +EXPORT_SYMBOL vmlinux 0x5f7595a8 tc_setup_cb_replace +EXPORT_SYMBOL vmlinux 0x5f79d64f netdev_info +EXPORT_SYMBOL vmlinux 0x5f835445 scsi_is_sdev_device +EXPORT_SYMBOL vmlinux 0x5f93525c acpi_extract_package +EXPORT_SYMBOL vmlinux 0x5f9ba6d7 mmc_free_host +EXPORT_SYMBOL vmlinux 0x5fadb89d _dev_emerg +EXPORT_SYMBOL vmlinux 0x5fb57682 __alloc_pages_nodemask +EXPORT_SYMBOL vmlinux 0x5fc2eea3 dput +EXPORT_SYMBOL vmlinux 0x5fc72f0e alloc_pages_exact +EXPORT_SYMBOL vmlinux 0x5fca9f4f unregister_nls +EXPORT_SYMBOL vmlinux 0x5ff517a8 tso_build_data +EXPORT_SYMBOL vmlinux 0x5ff9eb0e lockref_mark_dead +EXPORT_SYMBOL vmlinux 0x6004858d LZ4_compress_fast +EXPORT_SYMBOL vmlinux 0x6005c351 zpool_has_pool +EXPORT_SYMBOL vmlinux 0x600683d3 do_unblank_screen +EXPORT_SYMBOL vmlinux 0x600d6867 pnp_unregister_driver +EXPORT_SYMBOL vmlinux 0x600e1603 bio_integrity_alloc +EXPORT_SYMBOL vmlinux 0x600ecd95 jbd2_journal_begin_ordered_truncate +EXPORT_SYMBOL vmlinux 0x601496f4 revert_creds +EXPORT_SYMBOL vmlinux 0x6018c9ea __nla_reserve +EXPORT_SYMBOL vmlinux 0x601f665f dm_io_client_create +EXPORT_SYMBOL vmlinux 0x60351b98 __nla_validate +EXPORT_SYMBOL vmlinux 0x60352082 register_inet6addr_notifier +EXPORT_SYMBOL vmlinux 0x605790dc fiemap_fill_next_extent +EXPORT_SYMBOL vmlinux 0x6064f9f2 fddi_type_trans +EXPORT_SYMBOL vmlinux 0x607ac5ab key_move +EXPORT_SYMBOL vmlinux 0x608741b5 __init_swait_queue_head +EXPORT_SYMBOL vmlinux 0x6088734c pcie_get_speed_cap +EXPORT_SYMBOL vmlinux 0x608f8768 kset_register +EXPORT_SYMBOL vmlinux 0x6091b333 unregister_chrdev_region +EXPORT_SYMBOL vmlinux 0x6093a3ba netdev_set_sb_channel +EXPORT_SYMBOL vmlinux 0x609b2853 hdmi_infoframe_pack +EXPORT_SYMBOL vmlinux 0x609bcd98 in6_pton +EXPORT_SYMBOL vmlinux 0x609f1c7e synchronize_net +EXPORT_SYMBOL vmlinux 0x60a32ea9 pm_power_off +EXPORT_SYMBOL vmlinux 0x60b3071f neigh_proc_dointvec +EXPORT_SYMBOL vmlinux 0x60b31bf3 forget_cached_acl +EXPORT_SYMBOL vmlinux 0x60c0d46e filemap_check_errors +EXPORT_SYMBOL vmlinux 0x60cf47ce phy_connect_direct +EXPORT_SYMBOL vmlinux 0x60d8ab30 vme_lm_get +EXPORT_SYMBOL vmlinux 0x60e3fc31 deactivate_super +EXPORT_SYMBOL vmlinux 0x61050291 unload_nls +EXPORT_SYMBOL vmlinux 0x610da0be tcp_poll +EXPORT_SYMBOL vmlinux 0x6128b5fc __printk_ratelimit +EXPORT_SYMBOL vmlinux 0x612e772e key_instantiate_and_link +EXPORT_SYMBOL vmlinux 0x613facf1 acpi_bus_get_status +EXPORT_SYMBOL vmlinux 0x614563ce ip_route_input_noref +EXPORT_SYMBOL vmlinux 0x614fa182 pagecache_isize_extended +EXPORT_SYMBOL vmlinux 0x6150574b netdev_master_upper_dev_get +EXPORT_SYMBOL vmlinux 0x61577694 ZSTD_compressEnd +EXPORT_SYMBOL vmlinux 0x615911d7 __bitmap_set +EXPORT_SYMBOL vmlinux 0x617c452b queued_read_lock_slowpath +EXPORT_SYMBOL vmlinux 0x6185b747 radix_tree_gang_lookup_tag +EXPORT_SYMBOL vmlinux 0x618911fc numa_node +EXPORT_SYMBOL vmlinux 0x61894709 __ip_options_compile +EXPORT_SYMBOL vmlinux 0x619cb7dd simple_read_from_buffer +EXPORT_SYMBOL vmlinux 0x619dfcdc intel_scu_ipc_dev_readv +EXPORT_SYMBOL vmlinux 0x61a6fadc __task_pid_nr_ns +EXPORT_SYMBOL vmlinux 0x61b7b126 simple_strtoull +EXPORT_SYMBOL vmlinux 0x61e272c9 sha256_final +EXPORT_SYMBOL vmlinux 0x61e478f1 setup_new_exec +EXPORT_SYMBOL vmlinux 0x61ea189b fb_pad_aligned_buffer +EXPORT_SYMBOL vmlinux 0x61f409a8 register_netdev +EXPORT_SYMBOL vmlinux 0x62076518 __block_write_full_page +EXPORT_SYMBOL vmlinux 0x620fa8f7 acpi_device_set_power +EXPORT_SYMBOL vmlinux 0x6214aef2 cpufreq_unregister_notifier +EXPORT_SYMBOL vmlinux 0x621eda9c nd_btt_probe +EXPORT_SYMBOL vmlinux 0x6225823b ps2_handle_response +EXPORT_SYMBOL vmlinux 0x6226b9fa machine_to_phys_mapping +EXPORT_SYMBOL vmlinux 0x6228c21f smp_call_function_single +EXPORT_SYMBOL vmlinux 0x623a4365 request_key_tag +EXPORT_SYMBOL vmlinux 0x62737e1d sock_unregister +EXPORT_SYMBOL vmlinux 0x627dfc6a drop_super +EXPORT_SYMBOL vmlinux 0x627f62ea pci_disable_msix +EXPORT_SYMBOL vmlinux 0x62849ac7 dev_valid_name +EXPORT_SYMBOL vmlinux 0x62890955 __tracepoint_spi_transfer_stop +EXPORT_SYMBOL vmlinux 0x628b3f9f mdio_bus_type +EXPORT_SYMBOL vmlinux 0x628bf4ee vme_register_driver +EXPORT_SYMBOL vmlinux 0x62a26f7c param_ops_ushort +EXPORT_SYMBOL vmlinux 0x62a35a72 dma_set_mask +EXPORT_SYMBOL vmlinux 0x62bf6edf utf8agemin +EXPORT_SYMBOL vmlinux 0x62d0cf53 map_kernel_range_noflush +EXPORT_SYMBOL vmlinux 0x62edc07f pnp_release_card_device +EXPORT_SYMBOL vmlinux 0x62f1f55c pcie_bandwidth_available +EXPORT_SYMBOL vmlinux 0x62f86905 kthread_create_worker +EXPORT_SYMBOL vmlinux 0x63187451 pcie_aspm_support_enabled +EXPORT_SYMBOL vmlinux 0x631d06aa cpu_rmap_put +EXPORT_SYMBOL vmlinux 0x6335298a __block_write_begin +EXPORT_SYMBOL vmlinux 0x633ff580 seg6_hmac_net_init +EXPORT_SYMBOL vmlinux 0x634ca6d2 inet_csk_destroy_sock +EXPORT_SYMBOL vmlinux 0x635ff76d LZ4_saveDict +EXPORT_SYMBOL vmlinux 0x63610a8e inet6_del_protocol +EXPORT_SYMBOL vmlinux 0x636257f7 get_ibs_caps +EXPORT_SYMBOL vmlinux 0x636d7e66 vlan_uses_dev +EXPORT_SYMBOL vmlinux 0x637d15c3 vc_cons +EXPORT_SYMBOL vmlinux 0x63a58370 flow_action_cookie_destroy +EXPORT_SYMBOL vmlinux 0x63a7c28c bitmap_find_free_region +EXPORT_SYMBOL vmlinux 0x63c4d61f __bitmap_weight +EXPORT_SYMBOL vmlinux 0x63d3a3db jbd2_journal_set_triggers +EXPORT_SYMBOL vmlinux 0x63d6dbd9 __tracepoint_kmem_cache_alloc_node +EXPORT_SYMBOL vmlinux 0x63e1c652 skb_checksum +EXPORT_SYMBOL vmlinux 0x63eb9355 panic_blink +EXPORT_SYMBOL vmlinux 0x63ed1f90 shrink_dcache_parent +EXPORT_SYMBOL vmlinux 0x63f13f4f skb_pull +EXPORT_SYMBOL vmlinux 0x63f835ba on_each_cpu_cond_mask +EXPORT_SYMBOL vmlinux 0x6405dcd3 slhc_toss +EXPORT_SYMBOL vmlinux 0x64127b67 bitmap_find_next_zero_area_off +EXPORT_SYMBOL vmlinux 0x64160195 blkdev_issue_write_same +EXPORT_SYMBOL vmlinux 0x6421e772 tty_port_tty_set +EXPORT_SYMBOL vmlinux 0x64238834 dcache_dir_close +EXPORT_SYMBOL vmlinux 0x642eb5c6 xen_poll_irq_timeout +EXPORT_SYMBOL vmlinux 0x643d9ba1 groups_free +EXPORT_SYMBOL vmlinux 0x644283df netlbl_calipso_ops_register +EXPORT_SYMBOL vmlinux 0x64444e54 config_item_put +EXPORT_SYMBOL vmlinux 0x64470303 udp_lib_setsockopt +EXPORT_SYMBOL vmlinux 0x6454ac83 set_anon_super_fc +EXPORT_SYMBOL vmlinux 0x64723975 kmem_cache_alloc +EXPORT_SYMBOL vmlinux 0x6479cea3 try_lookup_one_len +EXPORT_SYMBOL vmlinux 0x6481ffe0 hsiphash_1u32 +EXPORT_SYMBOL vmlinux 0x648eb59d gc_inflight_list +EXPORT_SYMBOL vmlinux 0x64999478 congestion_wait +EXPORT_SYMBOL vmlinux 0x6499b642 ihold +EXPORT_SYMBOL vmlinux 0x64a72567 tcp_conn_request +EXPORT_SYMBOL vmlinux 0x64a9c928 default_blu +EXPORT_SYMBOL vmlinux 0x64b4d4c4 pci_request_regions +EXPORT_SYMBOL vmlinux 0x64bbc288 string_unescape +EXPORT_SYMBOL vmlinux 0x64d75d88 ip6_xmit +EXPORT_SYMBOL vmlinux 0x64f5e2c3 devm_register_reboot_notifier +EXPORT_SYMBOL vmlinux 0x6513a3fa fb_get_color_depth +EXPORT_SYMBOL vmlinux 0x651a4139 test_taint +EXPORT_SYMBOL vmlinux 0x652032cb mac_pton +EXPORT_SYMBOL vmlinux 0x652ce9aa nla_memcmp +EXPORT_SYMBOL vmlinux 0x652e7fec sock_no_sendmsg +EXPORT_SYMBOL vmlinux 0x65308a67 __destroy_inode +EXPORT_SYMBOL vmlinux 0x653c7f0c mipi_dsi_dcs_write +EXPORT_SYMBOL vmlinux 0x653fc0fc pci_disable_msi +EXPORT_SYMBOL vmlinux 0x65408378 zlib_inflate_blob +EXPORT_SYMBOL vmlinux 0x65464c16 clkdev_drop +EXPORT_SYMBOL vmlinux 0x6548686c __netlink_ns_capable +EXPORT_SYMBOL vmlinux 0x65540663 f_setown +EXPORT_SYMBOL vmlinux 0x6556f897 should_remove_suid +EXPORT_SYMBOL vmlinux 0x656c1a0e string_escape_mem +EXPORT_SYMBOL vmlinux 0x656e4a6e snprintf +EXPORT_SYMBOL vmlinux 0x65805344 md_reap_sync_thread +EXPORT_SYMBOL vmlinux 0x6581ee4c d_lookup +EXPORT_SYMBOL vmlinux 0x658b9965 agp_generic_free_by_type +EXPORT_SYMBOL vmlinux 0x658ce1a8 xxh64_reset +EXPORT_SYMBOL vmlinux 0x659ded26 xfrm_flush_gc +EXPORT_SYMBOL vmlinux 0x65b1fb0e __brelse +EXPORT_SYMBOL vmlinux 0x65b992ac xen_alloc_p2m_entry +EXPORT_SYMBOL vmlinux 0x65c03224 pcim_iomap_regions_request_all +EXPORT_SYMBOL vmlinux 0x65cf8831 ZSTD_decompress_usingDict +EXPORT_SYMBOL vmlinux 0x65d1bab2 acpi_bios_warning +EXPORT_SYMBOL vmlinux 0x65d2b3da pnp_request_card_device +EXPORT_SYMBOL vmlinux 0x65d414e9 dquot_get_next_dqblk +EXPORT_SYMBOL vmlinux 0x65d94cc4 blk_rq_map_integrity_sg +EXPORT_SYMBOL vmlinux 0x65d9e877 cpufreq_register_notifier +EXPORT_SYMBOL vmlinux 0x65dccf13 xz_dec_end +EXPORT_SYMBOL vmlinux 0x65e0d6d7 memory_read_from_buffer +EXPORT_SYMBOL vmlinux 0x65ea2eef set_wb_congested +EXPORT_SYMBOL vmlinux 0x65fcdf0a mmc_retune_unpause +EXPORT_SYMBOL vmlinux 0x661097bf freezing_slow_path +EXPORT_SYMBOL vmlinux 0x66168ea9 agp_generic_insert_memory +EXPORT_SYMBOL vmlinux 0x661d2580 inet_gro_receive +EXPORT_SYMBOL vmlinux 0x6626afca down +EXPORT_SYMBOL vmlinux 0x6627f5c4 inet_csk_clear_xmit_timers +EXPORT_SYMBOL vmlinux 0x662d095b xfrm_policy_unregister_afinfo +EXPORT_SYMBOL vmlinux 0x663182c9 acpi_get_gpe_status +EXPORT_SYMBOL vmlinux 0x66339233 i2c_smbus_read_byte +EXPORT_SYMBOL vmlinux 0x66340381 unregister_fib_notifier +EXPORT_SYMBOL vmlinux 0x663883e3 remap_vmalloc_range +EXPORT_SYMBOL vmlinux 0x6642798b cdrom_ioctl +EXPORT_SYMBOL vmlinux 0x664f39d3 tty_insert_flip_string_flags +EXPORT_SYMBOL vmlinux 0x665c55ef pci_clear_master +EXPORT_SYMBOL vmlinux 0x66628bf3 ip_tunnel_metadata_cnt +EXPORT_SYMBOL vmlinux 0x666c39cc config_group_init_type_name +EXPORT_SYMBOL vmlinux 0x6673f96d xxh32_reset +EXPORT_SYMBOL vmlinux 0x667a4a47 security_sk_classify_flow +EXPORT_SYMBOL vmlinux 0x667b065c tcf_em_register +EXPORT_SYMBOL vmlinux 0x668b19a1 down_read +EXPORT_SYMBOL vmlinux 0x669b2f6b pci_dev_get +EXPORT_SYMBOL vmlinux 0x66af1fd1 lockref_put_or_lock +EXPORT_SYMBOL vmlinux 0x66b4cc41 kmemdup +EXPORT_SYMBOL vmlinux 0x66b9f4a2 input_set_poll_interval +EXPORT_SYMBOL vmlinux 0x66c8a8a4 finish_open +EXPORT_SYMBOL vmlinux 0x66d29e23 nla_put_64bit +EXPORT_SYMBOL vmlinux 0x66d2ebec nla_reserve_64bit +EXPORT_SYMBOL vmlinux 0x66fe8323 xfrm_state_walk_done +EXPORT_SYMBOL vmlinux 0x6729d3df __get_user_4 +EXPORT_SYMBOL vmlinux 0x67368bcc blkdev_fsync +EXPORT_SYMBOL vmlinux 0x673f815e agp_bridges +EXPORT_SYMBOL vmlinux 0x673f8917 dquot_set_dqblk +EXPORT_SYMBOL vmlinux 0x674652ba udp_skb_destructor +EXPORT_SYMBOL vmlinux 0x6749d53f hdmi_vendor_infoframe_init +EXPORT_SYMBOL vmlinux 0x67626cb0 set_pages_wb +EXPORT_SYMBOL vmlinux 0x6765e870 tcp_v4_syn_recv_sock +EXPORT_SYMBOL vmlinux 0x677f1708 pci_reenable_device +EXPORT_SYMBOL vmlinux 0x678b96ec dma_pool_alloc +EXPORT_SYMBOL vmlinux 0x679f42dd ip_getsockopt +EXPORT_SYMBOL vmlinux 0x679fa187 param_ops_string +EXPORT_SYMBOL vmlinux 0x67a6ba05 input_alloc_absinfo +EXPORT_SYMBOL vmlinux 0x67b27ec1 tty_std_termios +EXPORT_SYMBOL vmlinux 0x67b78eb3 seq_hlist_next_rcu +EXPORT_SYMBOL vmlinux 0x67c13ea0 acpi_read +EXPORT_SYMBOL vmlinux 0x67cdef5b truncate_pagecache +EXPORT_SYMBOL vmlinux 0x67e8345e genphy_read_lpa +EXPORT_SYMBOL vmlinux 0x67f02bb7 agp_copy_info +EXPORT_SYMBOL vmlinux 0x67ff856a cdc_parse_cdc_header +EXPORT_SYMBOL vmlinux 0x681eba16 sock_common_setsockopt +EXPORT_SYMBOL vmlinux 0x682977df flow_rule_match_ip +EXPORT_SYMBOL vmlinux 0x683238eb bd_finish_claiming +EXPORT_SYMBOL vmlinux 0x683a9560 __gnet_stats_copy_basic +EXPORT_SYMBOL vmlinux 0x683ef898 nvm_submit_io_sync +EXPORT_SYMBOL vmlinux 0x68445fff __blockdev_direct_IO +EXPORT_SYMBOL vmlinux 0x684f44d4 cdrom_check_events +EXPORT_SYMBOL vmlinux 0x6851664e wrmsrl_safe_on_cpu +EXPORT_SYMBOL vmlinux 0x685a252a udp_poll +EXPORT_SYMBOL vmlinux 0x685e31ca groups_sort +EXPORT_SYMBOL vmlinux 0x686e678c param_set_invbool +EXPORT_SYMBOL vmlinux 0x687b6a16 kdbgetsymval +EXPORT_SYMBOL vmlinux 0x688670e5 nvm_dev_dma_free +EXPORT_SYMBOL vmlinux 0x689f0897 crypto_sha256_finup +EXPORT_SYMBOL vmlinux 0x68a90b51 get_default_font +EXPORT_SYMBOL vmlinux 0x68d89698 fscrypt_ioctl_get_policy +EXPORT_SYMBOL vmlinux 0x68dafd74 genlmsg_multicast_allns +EXPORT_SYMBOL vmlinux 0x69049cd2 radix_tree_replace_slot +EXPORT_SYMBOL vmlinux 0x6943a4da arch_debugfs_dir +EXPORT_SYMBOL vmlinux 0x69493b1a kstrtos16 +EXPORT_SYMBOL vmlinux 0x694a76a5 xfrm_policy_walk +EXPORT_SYMBOL vmlinux 0x694f9b9f fscrypt_setup_filename +EXPORT_SYMBOL vmlinux 0x6956a3e7 __kfree_skb +EXPORT_SYMBOL vmlinux 0x6957b001 jbd2_log_wait_commit +EXPORT_SYMBOL vmlinux 0x69585523 __ksize +EXPORT_SYMBOL vmlinux 0x6958fe89 mini_qdisc_pair_init +EXPORT_SYMBOL vmlinux 0x69668826 netdev_increment_features +EXPORT_SYMBOL vmlinux 0x6971447a rtc_month_days +EXPORT_SYMBOL vmlinux 0x697cd56b tcp_timewait_state_process +EXPORT_SYMBOL vmlinux 0x69826202 fs_context_for_submount +EXPORT_SYMBOL vmlinux 0x6988d0ca cpu_dr7 +EXPORT_SYMBOL vmlinux 0x698bfbe7 netlink_ns_capable +EXPORT_SYMBOL vmlinux 0x69acdf38 memcpy +EXPORT_SYMBOL vmlinux 0x69ad2f20 kstrtouint +EXPORT_SYMBOL vmlinux 0x69c17301 bio_copy_data_iter +EXPORT_SYMBOL vmlinux 0x69ce84c3 skb_ext_add +EXPORT_SYMBOL vmlinux 0x69d5d62a xfrm_input_resume +EXPORT_SYMBOL vmlinux 0x69d904b2 textsearch_unregister +EXPORT_SYMBOL vmlinux 0x69dd3b5b crc32_le +EXPORT_SYMBOL vmlinux 0x69de8757 vme_check_window +EXPORT_SYMBOL vmlinux 0x69e51d17 netdev_reset_tc +EXPORT_SYMBOL vmlinux 0x69f77e60 unregister_netdev +EXPORT_SYMBOL vmlinux 0x6a03751f sgl_free_order +EXPORT_SYMBOL vmlinux 0x6a037cf1 mempool_kfree +EXPORT_SYMBOL vmlinux 0x6a0ccb80 mem_cgroup_from_task +EXPORT_SYMBOL vmlinux 0x6a0de980 get_thermal_instance +EXPORT_SYMBOL vmlinux 0x6a15b389 rproc_elf_load_rsc_table +EXPORT_SYMBOL vmlinux 0x6a22953e zpool_unregister_driver +EXPORT_SYMBOL vmlinux 0x6a261b78 irq_stat +EXPORT_SYMBOL vmlinux 0x6a365e42 d_obtain_alias +EXPORT_SYMBOL vmlinux 0x6a37955c param_ops_uint +EXPORT_SYMBOL vmlinux 0x6a449c4f register_sysctl_table +EXPORT_SYMBOL vmlinux 0x6a473e9f security_sb_remount +EXPORT_SYMBOL vmlinux 0x6a5cb5ee __get_free_pages +EXPORT_SYMBOL vmlinux 0x6a5ecb18 unregister_module_notifier +EXPORT_SYMBOL vmlinux 0x6a5fa363 sigprocmask +EXPORT_SYMBOL vmlinux 0x6a7ca33d __mdiobus_write +EXPORT_SYMBOL vmlinux 0x6a8d1885 __skb_checksum_complete +EXPORT_SYMBOL vmlinux 0x6a9c0fa9 input_release_device +EXPORT_SYMBOL vmlinux 0x6aa075a6 param_get_ushort +EXPORT_SYMBOL vmlinux 0x6aa11aa6 sgl_free_n_order +EXPORT_SYMBOL vmlinux 0x6aa2cf4e compat_ipv6_getsockopt +EXPORT_SYMBOL vmlinux 0x6ab07367 security_sb_clone_mnt_opts +EXPORT_SYMBOL vmlinux 0x6ab487c4 blk_limits_io_opt +EXPORT_SYMBOL vmlinux 0x6ab8dca6 pcim_iomap_regions +EXPORT_SYMBOL vmlinux 0x6aca2f98 vga_switcheroo_register_handler +EXPORT_SYMBOL vmlinux 0x6accce9b mpage_writepage +EXPORT_SYMBOL vmlinux 0x6ad4ef8a dev_disable_lro +EXPORT_SYMBOL vmlinux 0x6add5c9a dmi_find_device +EXPORT_SYMBOL vmlinux 0x6ae6ceb4 vfs_iter_write +EXPORT_SYMBOL vmlinux 0x6aeefac4 zlib_deflateReset +EXPORT_SYMBOL vmlinux 0x6b0bef01 sock_cmsg_send +EXPORT_SYMBOL vmlinux 0x6b15cd52 ip_route_me_harder +EXPORT_SYMBOL vmlinux 0x6b1f007e ipv6_chk_custom_prefix +EXPORT_SYMBOL vmlinux 0x6b27729b radix_tree_gang_lookup +EXPORT_SYMBOL vmlinux 0x6b2dc060 dump_stack +EXPORT_SYMBOL vmlinux 0x6b3ce46c inet6_add_offload +EXPORT_SYMBOL vmlinux 0x6b556374 twl6040_power +EXPORT_SYMBOL vmlinux 0x6b55acd0 rtnl_lock_killable +EXPORT_SYMBOL vmlinux 0x6b640864 nla_strlcpy +EXPORT_SYMBOL vmlinux 0x6b69b4b0 pci_ep_cfs_add_epf_group +EXPORT_SYMBOL vmlinux 0x6b82de00 key_type_keyring +EXPORT_SYMBOL vmlinux 0x6b853d06 ns_to_kernel_old_timeval +EXPORT_SYMBOL vmlinux 0x6b8bf149 netif_receive_skb_list +EXPORT_SYMBOL vmlinux 0x6b951a1a pci_request_selected_regions_exclusive +EXPORT_SYMBOL vmlinux 0x6b97516f call_netdevice_notifiers +EXPORT_SYMBOL vmlinux 0x6bb3db02 blk_mq_start_hw_queue +EXPORT_SYMBOL vmlinux 0x6bbc1fcb configfs_remove_default_groups +EXPORT_SYMBOL vmlinux 0x6bbf8f12 lock_sock_fast +EXPORT_SYMBOL vmlinux 0x6bc168c4 __dynamic_netdev_dbg +EXPORT_SYMBOL vmlinux 0x6bc3fbc0 __unregister_chrdev +EXPORT_SYMBOL vmlinux 0x6bc85a62 dcbnl_cee_notify +EXPORT_SYMBOL vmlinux 0x6bdfaf61 csum_and_copy_from_iter +EXPORT_SYMBOL vmlinux 0x6be1c1f8 acpi_install_method +EXPORT_SYMBOL vmlinux 0x6bfe62e1 find_inode_nowait +EXPORT_SYMBOL vmlinux 0x6c224cda gen_pool_destroy +EXPORT_SYMBOL vmlinux 0x6c257ac0 tty_termios_hw_change +EXPORT_SYMBOL vmlinux 0x6c28be5a vfio_info_add_capability +EXPORT_SYMBOL vmlinux 0x6c56cbea blk_rq_map_user +EXPORT_SYMBOL vmlinux 0x6c5dae23 scsi_kmap_atomic_sg +EXPORT_SYMBOL vmlinux 0x6c60d1a0 dcb_setapp +EXPORT_SYMBOL vmlinux 0x6c61ce70 num_registered_fb +EXPORT_SYMBOL vmlinux 0x6c6b0936 dma_find_channel +EXPORT_SYMBOL vmlinux 0x6c6c8cfe skb_push +EXPORT_SYMBOL vmlinux 0x6c858d97 ppp_unit_number +EXPORT_SYMBOL vmlinux 0x6c8ae015 get_phy_device +EXPORT_SYMBOL vmlinux 0x6c8c0391 mr_table_alloc +EXPORT_SYMBOL vmlinux 0x6c91f0e8 reuseport_detach_prog +EXPORT_SYMBOL vmlinux 0x6c95843d d_rehash +EXPORT_SYMBOL vmlinux 0x6c9b838b netif_set_real_num_rx_queues +EXPORT_SYMBOL vmlinux 0x6cb46525 netlbl_catmap_walk +EXPORT_SYMBOL vmlinux 0x6cbc54e7 user_revoke +EXPORT_SYMBOL vmlinux 0x6cc996c6 eth_platform_get_mac_address +EXPORT_SYMBOL vmlinux 0x6cd89a4a agp_enable +EXPORT_SYMBOL vmlinux 0x6ce4d385 wait_on_page_bit_killable +EXPORT_SYMBOL vmlinux 0x6cf62166 __tracepoint_kmem_cache_alloc +EXPORT_SYMBOL vmlinux 0x6cf710da ip_options_rcv_srr +EXPORT_SYMBOL vmlinux 0x6d210f74 unregister_console +EXPORT_SYMBOL vmlinux 0x6d2631f0 input_grab_device +EXPORT_SYMBOL vmlinux 0x6d294e43 clock_t_to_jiffies +EXPORT_SYMBOL vmlinux 0x6d334118 __get_user_8 +EXPORT_SYMBOL vmlinux 0x6d340f64 tty_termios_input_baud_rate +EXPORT_SYMBOL vmlinux 0x6d51f3e7 dquot_get_next_id +EXPORT_SYMBOL vmlinux 0x6d53bc20 tcp_child_process +EXPORT_SYMBOL vmlinux 0x6d570a8b nd_pfn_probe +EXPORT_SYMBOL vmlinux 0x6d58f69e agp3_generic_sizes +EXPORT_SYMBOL vmlinux 0x6d5dfa29 vfs_copy_file_range +EXPORT_SYMBOL vmlinux 0x6d5f5b91 radix_tree_tagged +EXPORT_SYMBOL vmlinux 0x6d7abe02 first_ec +EXPORT_SYMBOL vmlinux 0x6d7c7dcc bitmap_cut +EXPORT_SYMBOL vmlinux 0x6d8a45f2 inet_proto_csum_replace16 +EXPORT_SYMBOL vmlinux 0x6dbdeff5 netpoll_poll_dev +EXPORT_SYMBOL vmlinux 0x6dc35b25 radix_tree_iter_delete +EXPORT_SYMBOL vmlinux 0x6dcf857f uuid_null +EXPORT_SYMBOL vmlinux 0x6dd17e7b acpi_get_table_header +EXPORT_SYMBOL vmlinux 0x6de63358 scsi_track_queue_full +EXPORT_SYMBOL vmlinux 0x6df1aaf1 kernel_sigaction +EXPORT_SYMBOL vmlinux 0x6dfd13e4 nd_btt_arena_is_valid +EXPORT_SYMBOL vmlinux 0x6e00b744 set_pages_array_wb +EXPORT_SYMBOL vmlinux 0x6e019034 __tracepoint_module_get +EXPORT_SYMBOL vmlinux 0x6e096479 mmc_add_host +EXPORT_SYMBOL vmlinux 0x6e1dbf5c inet_csk_init_xmit_timers +EXPORT_SYMBOL vmlinux 0x6e211788 blkdev_issue_flush +EXPORT_SYMBOL vmlinux 0x6e257ca0 amd_iommu_pc_get_reg +EXPORT_SYMBOL vmlinux 0x6e286604 hdmi_drm_infoframe_pack +EXPORT_SYMBOL vmlinux 0x6e3bf924 pci_bus_find_capability +EXPORT_SYMBOL vmlinux 0x6e5b8651 xz_dec_run +EXPORT_SYMBOL vmlinux 0x6e720ff2 rtnl_unlock +EXPORT_SYMBOL vmlinux 0x6e972509 generic_remap_file_range_prep +EXPORT_SYMBOL vmlinux 0x6e9dd606 __symbol_put +EXPORT_SYMBOL vmlinux 0x6ea7575d acpi_dispatch_gpe +EXPORT_SYMBOL vmlinux 0x6ea9363b force_sig +EXPORT_SYMBOL vmlinux 0x6ec0fa3e call_fib_notifier +EXPORT_SYMBOL vmlinux 0x6ed8a5fc hdmi_drm_infoframe_check +EXPORT_SYMBOL vmlinux 0x6edb7103 skb_copy_datagram_iter +EXPORT_SYMBOL vmlinux 0x6efde4ae sock_recvmsg +EXPORT_SYMBOL vmlinux 0x6f0dc213 iw_handler_set_spy +EXPORT_SYMBOL vmlinux 0x6f136564 md_check_no_bitmap +EXPORT_SYMBOL vmlinux 0x6f15bdf4 kthread_create_on_node +EXPORT_SYMBOL vmlinux 0x6f2fbb3b pci_scan_slot +EXPORT_SYMBOL vmlinux 0x6f4160b1 __dst_destroy_metrics_generic +EXPORT_SYMBOL vmlinux 0x6f41a428 acpi_get_vendor_resource +EXPORT_SYMBOL vmlinux 0x6f51d493 simple_transaction_set +EXPORT_SYMBOL vmlinux 0x6f52d24a unregister_netdevice_notifier_net +EXPORT_SYMBOL vmlinux 0x6f7af66c flow_rule_alloc +EXPORT_SYMBOL vmlinux 0x6f8f674a bpf_dispatcher_xdp_func +EXPORT_SYMBOL vmlinux 0x6f915a45 dqstats +EXPORT_SYMBOL vmlinux 0x6fb49676 queue_rcu_work +EXPORT_SYMBOL vmlinux 0x6fbc6a00 radix_tree_insert +EXPORT_SYMBOL vmlinux 0x6fc4fa75 kernel_recvmsg +EXPORT_SYMBOL vmlinux 0x6fcb87a1 touch_softlockup_watchdog +EXPORT_SYMBOL vmlinux 0x6fd8ced1 remove_proc_entry +EXPORT_SYMBOL vmlinux 0x6fd9c35a __clzdi2 +EXPORT_SYMBOL vmlinux 0x6fe856fe get_mem_cgroup_from_mm +EXPORT_SYMBOL vmlinux 0x6ff5968f agp_generic_free_gatt_table +EXPORT_SYMBOL vmlinux 0x70002fe8 siphash_1u32 +EXPORT_SYMBOL vmlinux 0x700042e4 dquot_quotactl_sysfile_ops +EXPORT_SYMBOL vmlinux 0x700735d7 kernel_sock_ip_overhead +EXPORT_SYMBOL vmlinux 0x7014d263 peernet2id +EXPORT_SYMBOL vmlinux 0x7023bea8 unregister_acpi_notifier +EXPORT_SYMBOL vmlinux 0x702946da ucs2_strlen +EXPORT_SYMBOL vmlinux 0x7030a625 __devm_release_region +EXPORT_SYMBOL vmlinux 0x70319d05 crypto_sha256_update +EXPORT_SYMBOL vmlinux 0x7040fff9 rtc_lock +EXPORT_SYMBOL vmlinux 0x704e4b5a pipe_unlock +EXPORT_SYMBOL vmlinux 0x7050929d phy_device_free +EXPORT_SYMBOL vmlinux 0x7054a3e4 request_dma +EXPORT_SYMBOL vmlinux 0x705e2d0c inet_frag_pull_head +EXPORT_SYMBOL vmlinux 0x7070785e ps2_sliced_command +EXPORT_SYMBOL vmlinux 0x7071a4f2 cmdline_parts_free +EXPORT_SYMBOL vmlinux 0x708286b6 forget_all_cached_acls +EXPORT_SYMBOL vmlinux 0x70a0eb5f pci_add_new_bus +EXPORT_SYMBOL vmlinux 0x70a3e23f iommu_put_dma_cookie +EXPORT_SYMBOL vmlinux 0x70ad75fb radix_tree_lookup +EXPORT_SYMBOL vmlinux 0x70ca6f3f inet6_ioctl +EXPORT_SYMBOL vmlinux 0x7129e5f8 hex_asc +EXPORT_SYMBOL vmlinux 0x712a0055 ethtool_op_get_ts_info +EXPORT_SYMBOL vmlinux 0x713e518f crypto_sha1_update +EXPORT_SYMBOL vmlinux 0x7149fe98 mipi_dsi_device_unregister +EXPORT_SYMBOL vmlinux 0x715a460e __module_get +EXPORT_SYMBOL vmlinux 0x715ed89b inet_ioctl +EXPORT_SYMBOL vmlinux 0x71646f8a vm_map_pages +EXPORT_SYMBOL vmlinux 0x71665a2d __register_nls +EXPORT_SYMBOL vmlinux 0x7171121c overflowgid +EXPORT_SYMBOL vmlinux 0x71726eec translation_pre_enabled +EXPORT_SYMBOL vmlinux 0x7177a357 rtnl_set_sk_err +EXPORT_SYMBOL vmlinux 0x718871e0 vfs_mkobj +EXPORT_SYMBOL vmlinux 0x7195849d scsi_print_sense_hdr +EXPORT_SYMBOL vmlinux 0x71a44553 dquot_acquire +EXPORT_SYMBOL vmlinux 0x71a4d71f set_user_nice +EXPORT_SYMBOL vmlinux 0x71a50dbc register_blkdev +EXPORT_SYMBOL vmlinux 0x71a672ef dmam_pool_destroy +EXPORT_SYMBOL vmlinux 0x71a90315 get_ipc_ns_exported +EXPORT_SYMBOL vmlinux 0x71e0a58e security_old_inode_init_security +EXPORT_SYMBOL vmlinux 0x71e1c9ed netdev_crit +EXPORT_SYMBOL vmlinux 0x71e68536 napi_gro_flush +EXPORT_SYMBOL vmlinux 0x720bfd95 padata_start +EXPORT_SYMBOL vmlinux 0x720fb8ba __ip4_datagram_connect +EXPORT_SYMBOL vmlinux 0x721903f6 msi_desc_to_pci_dev +EXPORT_SYMBOL vmlinux 0x722ed13a xfrm_state_alloc +EXPORT_SYMBOL vmlinux 0x724ddac7 utf8version_is_supported +EXPORT_SYMBOL vmlinux 0x725a6cbd ata_port_printk +EXPORT_SYMBOL vmlinux 0x72615ab2 cpufreq_get_policy +EXPORT_SYMBOL vmlinux 0x726bc3c7 wait_for_completion_killable_timeout +EXPORT_SYMBOL vmlinux 0x72895858 devm_input_allocate_device +EXPORT_SYMBOL vmlinux 0x72a38975 jbd2_journal_invalidatepage +EXPORT_SYMBOL vmlinux 0x72a98fdb copy_user_generic_unrolled +EXPORT_SYMBOL vmlinux 0x72b243d4 free_dma +EXPORT_SYMBOL vmlinux 0x72b9d287 default_grn +EXPORT_SYMBOL vmlinux 0x72d29a16 __get_hash_from_flowi6 +EXPORT_SYMBOL vmlinux 0x72d79d83 pgdir_shift +EXPORT_SYMBOL vmlinux 0x72ea7b2d scsi_device_type +EXPORT_SYMBOL vmlinux 0x7301b77e cdrom_get_last_written +EXPORT_SYMBOL vmlinux 0x7305e274 hmm_range_fault +EXPORT_SYMBOL vmlinux 0x73085682 is_nvdimm_bus_locked +EXPORT_SYMBOL vmlinux 0x73130e4b phy_ethtool_set_eee +EXPORT_SYMBOL vmlinux 0x731561a0 gro_find_receive_by_type +EXPORT_SYMBOL vmlinux 0x7315a4e9 twl6030_mmc_card_detect_config +EXPORT_SYMBOL vmlinux 0x731c4a9c dma_fence_signal +EXPORT_SYMBOL vmlinux 0x7324ab15 rtc_add_groups +EXPORT_SYMBOL vmlinux 0x73504041 inet_unregister_protosw +EXPORT_SYMBOL vmlinux 0x7350e6f5 security_socket_socketpair +EXPORT_SYMBOL vmlinux 0x735517d1 nd_device_notify +EXPORT_SYMBOL vmlinux 0x73569c5f always_delete_dentry +EXPORT_SYMBOL vmlinux 0x735a0bd5 native_io_delay +EXPORT_SYMBOL vmlinux 0x735d294f __ip_mc_dec_group +EXPORT_SYMBOL vmlinux 0x735e6a81 acpi_evaluate_integer +EXPORT_SYMBOL vmlinux 0x736b5662 _raw_read_lock_irqsave +EXPORT_SYMBOL vmlinux 0x736ce6b4 devfreq_update_status +EXPORT_SYMBOL vmlinux 0x7380dffa argv_split +EXPORT_SYMBOL vmlinux 0x73abb180 alloc_contig_range +EXPORT_SYMBOL vmlinux 0x73b94700 mmc_remove_host +EXPORT_SYMBOL vmlinux 0x73c565db pci_set_master +EXPORT_SYMBOL vmlinux 0x73dd54eb irq_fpu_usable +EXPORT_SYMBOL vmlinux 0x73e492ab reuseport_add_sock +EXPORT_SYMBOL vmlinux 0x73e81e22 seq_write +EXPORT_SYMBOL vmlinux 0x73f78393 neigh_lookup_nodev +EXPORT_SYMBOL vmlinux 0x73f9ce5d padata_do_parallel +EXPORT_SYMBOL vmlinux 0x740a1b95 reserve_evntsel_nmi +EXPORT_SYMBOL vmlinux 0x740da8d6 pci_stop_and_remove_bus_device +EXPORT_SYMBOL vmlinux 0x7410aba2 strreplace +EXPORT_SYMBOL vmlinux 0x7412ed5b kvfree_sensitive +EXPORT_SYMBOL vmlinux 0x7413793a EISA_bus +EXPORT_SYMBOL vmlinux 0x742578a5 wait_for_random_bytes +EXPORT_SYMBOL vmlinux 0x742ab0c7 inet_select_addr +EXPORT_SYMBOL vmlinux 0x743803c2 skb_copy_and_csum_dev +EXPORT_SYMBOL vmlinux 0x743a84b3 tcp_sock_set_user_timeout +EXPORT_SYMBOL vmlinux 0x7453d3e8 security_release_secctx +EXPORT_SYMBOL vmlinux 0x745af49c mipi_dsi_dcs_set_tear_off +EXPORT_SYMBOL vmlinux 0x7464abc1 scsi_vpd_tpg_id +EXPORT_SYMBOL vmlinux 0x746f15bb ps2_init +EXPORT_SYMBOL vmlinux 0x74725e69 ZSTD_compressContinue +EXPORT_SYMBOL vmlinux 0x7474d81f write_inode_now +EXPORT_SYMBOL vmlinux 0x74754435 acpi_bus_generate_netlink_event +EXPORT_SYMBOL vmlinux 0x74860a8f netdev_bind_sb_channel_queue +EXPORT_SYMBOL vmlinux 0x748b05a2 tcp_fastopen_defer_connect +EXPORT_SYMBOL vmlinux 0x7496562a agp_find_bridge +EXPORT_SYMBOL vmlinux 0x749849d8 LZ4_loadDict +EXPORT_SYMBOL vmlinux 0x74a800af input_close_device +EXPORT_SYMBOL vmlinux 0x74c134b9 __sw_hweight32 +EXPORT_SYMBOL vmlinux 0x74cfb2bd __qdisc_calculate_pkt_len +EXPORT_SYMBOL vmlinux 0x74cfb77a dm_kobject_release +EXPORT_SYMBOL vmlinux 0x74e5ff1a udpv6_encap_enable +EXPORT_SYMBOL vmlinux 0x74fb586d is_subdir +EXPORT_SYMBOL vmlinux 0x7511f665 bio_add_page +EXPORT_SYMBOL vmlinux 0x751e4b51 security_inet_conn_request +EXPORT_SYMBOL vmlinux 0x7538b132 agp_off +EXPORT_SYMBOL vmlinux 0x75436cec inet_bind +EXPORT_SYMBOL vmlinux 0x754d539c strlen +EXPORT_SYMBOL vmlinux 0x756e204d pci_enable_ptm +EXPORT_SYMBOL vmlinux 0x75871f5e acpi_get_next_object +EXPORT_SYMBOL vmlinux 0x75943e25 i8253_lock +EXPORT_SYMBOL vmlinux 0x759578cc tcf_block_netif_keep_dst +EXPORT_SYMBOL vmlinux 0x759e86e8 get_tree_keyed +EXPORT_SYMBOL vmlinux 0x75aeb901 to_nd_btt +EXPORT_SYMBOL vmlinux 0x75b1f8c9 vmf_insert_mixed_mkwrite +EXPORT_SYMBOL vmlinux 0x75b57a64 t10_pi_type3_crc +EXPORT_SYMBOL vmlinux 0x75b98c32 ptp_cancel_worker_sync +EXPORT_SYMBOL vmlinux 0x75bda77a seq_hlist_next +EXPORT_SYMBOL vmlinux 0x75d0deb9 nsecs_to_jiffies64 +EXPORT_SYMBOL vmlinux 0x75d499dd vmcore_add_device_dump +EXPORT_SYMBOL vmlinux 0x75eef5cf param_set_int +EXPORT_SYMBOL vmlinux 0x75efa48b proc_create_seq_private +EXPORT_SYMBOL vmlinux 0x76003f12 max8925_bulk_write +EXPORT_SYMBOL vmlinux 0x760a0f4f yield +EXPORT_SYMBOL vmlinux 0x7624249e dim_park_tired +EXPORT_SYMBOL vmlinux 0x76270f70 xfrm_policy_flush +EXPORT_SYMBOL vmlinux 0x763ba3ad ioread64be_hi_lo +EXPORT_SYMBOL vmlinux 0x763f46cb __sock_create +EXPORT_SYMBOL vmlinux 0x7645af3b mod_node_page_state +EXPORT_SYMBOL vmlinux 0x7647726c handle_sysrq +EXPORT_SYMBOL vmlinux 0x76492bc5 pskb_trim_rcsum_slow +EXPORT_SYMBOL vmlinux 0x764b81cf vlan_for_each +EXPORT_SYMBOL vmlinux 0x765ff474 crc_t10dif_generic +EXPORT_SYMBOL vmlinux 0x76638683 tcp_seq_next +EXPORT_SYMBOL vmlinux 0x766a0927 mempool_alloc_pages +EXPORT_SYMBOL vmlinux 0x767dce4b acpi_disable_all_gpes +EXPORT_SYMBOL vmlinux 0x767ddb02 set_memory_wc +EXPORT_SYMBOL vmlinux 0x76805d86 fwnode_graph_parse_endpoint +EXPORT_SYMBOL vmlinux 0x768f84d1 blk_mq_complete_request +EXPORT_SYMBOL vmlinux 0x768fe2d4 flow_rule_match_enc_ipv6_addrs +EXPORT_SYMBOL vmlinux 0x7692ee8d jbd2_journal_start_reserved +EXPORT_SYMBOL vmlinux 0x769c0e2c netdev_upper_dev_link +EXPORT_SYMBOL vmlinux 0x769f6e64 errseq_check +EXPORT_SYMBOL vmlinux 0x76ab6a46 __neigh_event_send +EXPORT_SYMBOL vmlinux 0x76b8ef94 disk_stack_limits +EXPORT_SYMBOL vmlinux 0x76b93453 setup_arg_pages +EXPORT_SYMBOL vmlinux 0x76d3cd60 laptop_mode +EXPORT_SYMBOL vmlinux 0x76d451c4 add_taint +EXPORT_SYMBOL vmlinux 0x76e0b535 inet_dev_addr_type +EXPORT_SYMBOL vmlinux 0x76ee31cc iunique +EXPORT_SYMBOL vmlinux 0x76fb08a7 amd_iommu_unregister_ppr_notifier +EXPORT_SYMBOL vmlinux 0x77077f4e tcp_add_backlog +EXPORT_SYMBOL vmlinux 0x770de3c9 netdev_upper_dev_unlink +EXPORT_SYMBOL vmlinux 0x771730a2 mfd_cell_enable +EXPORT_SYMBOL vmlinux 0x7732159c free_irq_cpu_rmap +EXPORT_SYMBOL vmlinux 0x77358855 iomem_resource +EXPORT_SYMBOL vmlinux 0x773fa409 __kfifo_dma_in_finish_r +EXPORT_SYMBOL vmlinux 0x77413994 skb_queue_head +EXPORT_SYMBOL vmlinux 0x77456e0a acpi_root_dir +EXPORT_SYMBOL vmlinux 0x7763b230 km_state_notify +EXPORT_SYMBOL vmlinux 0x7787973b dev_queue_xmit +EXPORT_SYMBOL vmlinux 0x779a18af kstrtoll +EXPORT_SYMBOL vmlinux 0x779c62f2 pnp_get_resource +EXPORT_SYMBOL vmlinux 0x77a2cf5b __pskb_pull_tail +EXPORT_SYMBOL vmlinux 0x77b0fed9 __next_node_in +EXPORT_SYMBOL vmlinux 0x77bc13a0 strim +EXPORT_SYMBOL vmlinux 0x77e9ccae seq_puts +EXPORT_SYMBOL vmlinux 0x77e9eb37 aes_encrypt +EXPORT_SYMBOL vmlinux 0x77ed2782 fs_param_is_s32 +EXPORT_SYMBOL vmlinux 0x77f14c90 sock_enable_timestamps +EXPORT_SYMBOL vmlinux 0x7807f0f8 schedule_timeout_idle +EXPORT_SYMBOL vmlinux 0x780fdfd1 intel_enable_gtt +EXPORT_SYMBOL vmlinux 0x782026a4 mdio_device_register +EXPORT_SYMBOL vmlinux 0x7834defd vfio_group_unpin_pages +EXPORT_SYMBOL vmlinux 0x7846af3e __kfifo_len_r +EXPORT_SYMBOL vmlinux 0x7869916d ip_ct_attach +EXPORT_SYMBOL vmlinux 0x7880c781 dm_kcopyd_prepare_callback +EXPORT_SYMBOL vmlinux 0x789affb1 frontswap_tmem_exclusive_gets +EXPORT_SYMBOL vmlinux 0x78a16f48 aes_decrypt +EXPORT_SYMBOL vmlinux 0x78bdd23f d_set_fallthru +EXPORT_SYMBOL vmlinux 0x78c1c266 start_tty +EXPORT_SYMBOL vmlinux 0x78df6bd7 no_pci_devices +EXPORT_SYMBOL vmlinux 0x78e2681e devfreq_add_device +EXPORT_SYMBOL vmlinux 0x78edb022 phy_start_cable_test +EXPORT_SYMBOL vmlinux 0x78f0d094 netlink_net_capable +EXPORT_SYMBOL vmlinux 0x78f1e4aa mipi_dsi_dcs_get_power_mode +EXPORT_SYMBOL vmlinux 0x78f62e1b fasync_helper +EXPORT_SYMBOL vmlinux 0x7901b5d3 scsi_verify_blk_ioctl +EXPORT_SYMBOL vmlinux 0x7923a026 xfrm_unregister_type +EXPORT_SYMBOL vmlinux 0x792c9364 elv_rb_find +EXPORT_SYMBOL vmlinux 0x7964cd69 tty_unlock +EXPORT_SYMBOL vmlinux 0x796bf546 __bforget +EXPORT_SYMBOL vmlinux 0x79739c3c utf8nagemin +EXPORT_SYMBOL vmlinux 0x797a83fa ipv6_sock_mc_join +EXPORT_SYMBOL vmlinux 0x797cd123 tty_unregister_device +EXPORT_SYMBOL vmlinux 0x79801e1d ip_cmsg_recv_offset +EXPORT_SYMBOL vmlinux 0x7984eefc key_update +EXPORT_SYMBOL vmlinux 0x79896c41 kthread_blkcg +EXPORT_SYMBOL vmlinux 0x799d446d pci_choose_state +EXPORT_SYMBOL vmlinux 0x79a33f85 vme_get_size +EXPORT_SYMBOL vmlinux 0x79aa04a2 get_random_bytes +EXPORT_SYMBOL vmlinux 0x79c92d5e set_groups +EXPORT_SYMBOL vmlinux 0x79df9633 ioremap_encrypted +EXPORT_SYMBOL vmlinux 0x79e335cb set_page_dirty +EXPORT_SYMBOL vmlinux 0x79fbe7a7 dev_pm_opp_unregister_notifier +EXPORT_SYMBOL vmlinux 0x7a04f435 blk_mq_tagset_busy_iter +EXPORT_SYMBOL vmlinux 0x7a072cda t10_pi_type1_ip +EXPORT_SYMBOL vmlinux 0x7a09a064 seg6_hmac_compute +EXPORT_SYMBOL vmlinux 0x7a11b80f fb_find_mode +EXPORT_SYMBOL vmlinux 0x7a1bcd59 gf128mul_x8_ble +EXPORT_SYMBOL vmlinux 0x7a229f35 __xfrm_dst_lookup +EXPORT_SYMBOL vmlinux 0x7a2af7b4 cpu_number +EXPORT_SYMBOL vmlinux 0x7a356b3f __seq_open_private +EXPORT_SYMBOL vmlinux 0x7a4497db kzfree +EXPORT_SYMBOL vmlinux 0x7a55c921 from_kprojid +EXPORT_SYMBOL vmlinux 0x7a5f115f generic_writepages +EXPORT_SYMBOL vmlinux 0x7a6c496a page_get_link +EXPORT_SYMBOL vmlinux 0x7a80f17e mini_qdisc_pair_block_init +EXPORT_SYMBOL vmlinux 0x7a88da87 iosf_mbi_write +EXPORT_SYMBOL vmlinux 0x7a95e5ae do_settimeofday64 +EXPORT_SYMBOL vmlinux 0x7a98b88d security_sctp_assoc_request +EXPORT_SYMBOL vmlinux 0x7a9b37e8 blk_start_plug +EXPORT_SYMBOL vmlinux 0x7aa1756e kvfree +EXPORT_SYMBOL vmlinux 0x7aa60c82 __blkdev_issue_zeroout +EXPORT_SYMBOL vmlinux 0x7aa767ee get_super_thawed +EXPORT_SYMBOL vmlinux 0x7ab88a45 system_freezing_cnt +EXPORT_SYMBOL vmlinux 0x7ad050b9 qid_lt +EXPORT_SYMBOL vmlinux 0x7ad6636a bio_clone_fast +EXPORT_SYMBOL vmlinux 0x7ad7a0ab iw_handler_get_spy +EXPORT_SYMBOL vmlinux 0x7adc0fbf rb_replace_node_rcu +EXPORT_SYMBOL vmlinux 0x7ae2854c load_nls_default +EXPORT_SYMBOL vmlinux 0x7aec9089 clear_user +EXPORT_SYMBOL vmlinux 0x7af8c03e sync_inode +EXPORT_SYMBOL vmlinux 0x7aff77a3 __cpu_present_mask +EXPORT_SYMBOL vmlinux 0x7b0192da kstrtou16 +EXPORT_SYMBOL vmlinux 0x7b0d183b ip_fraglist_prepare +EXPORT_SYMBOL vmlinux 0x7b2f689d irq_to_desc +EXPORT_SYMBOL vmlinux 0x7b3376f0 unlock_two_nondirectories +EXPORT_SYMBOL vmlinux 0x7b4c3d46 phy_mii_ioctl +EXPORT_SYMBOL vmlinux 0x7b4da6ff __init_rwsem +EXPORT_SYMBOL vmlinux 0x7b5b8f31 sha256_update +EXPORT_SYMBOL vmlinux 0x7b655660 sb_set_blocksize +EXPORT_SYMBOL vmlinux 0x7b6ba5a4 tc_cleanup_flow_action +EXPORT_SYMBOL vmlinux 0x7b754cc7 dquot_transfer +EXPORT_SYMBOL vmlinux 0x7b7c530c remove_watch_from_object +EXPORT_SYMBOL vmlinux 0x7b82771e nf_hook_slow +EXPORT_SYMBOL vmlinux 0x7b82b9a1 idr_replace +EXPORT_SYMBOL vmlinux 0x7b9958a1 blk_integrity_merge_rq +EXPORT_SYMBOL vmlinux 0x7bb3900a dma_resv_fini +EXPORT_SYMBOL vmlinux 0x7bb50b88 acpi_write +EXPORT_SYMBOL vmlinux 0x7bb8a7ce posix_acl_from_xattr +EXPORT_SYMBOL vmlinux 0x7bbccd05 nr_node_ids +EXPORT_SYMBOL vmlinux 0x7bc4c914 scsi_host_put +EXPORT_SYMBOL vmlinux 0x7bc528a8 vme_master_mmap +EXPORT_SYMBOL vmlinux 0x7bccb390 dev_uc_unsync +EXPORT_SYMBOL vmlinux 0x7bed23d7 ns_capable +EXPORT_SYMBOL vmlinux 0x7bef2547 get_acl +EXPORT_SYMBOL vmlinux 0x7c0ecfee skb_flow_dissect_meta +EXPORT_SYMBOL vmlinux 0x7c173634 __bitmap_complement +EXPORT_SYMBOL vmlinux 0x7c1a4a80 serio_unregister_driver +EXPORT_SYMBOL vmlinux 0x7c1b6b23 pci_msix_vec_count +EXPORT_SYMBOL vmlinux 0x7c286c4a jbd2_journal_blocks_per_page +EXPORT_SYMBOL vmlinux 0x7c2ae696 has_capability +EXPORT_SYMBOL vmlinux 0x7c3ff8f8 rio_query_mport +EXPORT_SYMBOL vmlinux 0x7c46233a cpufreq_quick_get +EXPORT_SYMBOL vmlinux 0x7c5fe222 register_filesystem +EXPORT_SYMBOL vmlinux 0x7c9ca58f __sg_page_iter_next +EXPORT_SYMBOL vmlinux 0x7cab00dc mnt_set_expiry +EXPORT_SYMBOL vmlinux 0x7cb1aea1 devlink_dpipe_header_ethernet +EXPORT_SYMBOL vmlinux 0x7cc12311 netdev_adjacent_change_commit +EXPORT_SYMBOL vmlinux 0x7cd8d75e page_offset_base +EXPORT_SYMBOL vmlinux 0x7ce18c9f from_kqid +EXPORT_SYMBOL vmlinux 0x7ceafd60 bio_integrity_trim +EXPORT_SYMBOL vmlinux 0x7cf35220 vme_master_free +EXPORT_SYMBOL vmlinux 0x7cfe368d net_dim_get_def_tx_moderation +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 0x7d172dc1 __scsi_execute +EXPORT_SYMBOL vmlinux 0x7d24c3d0 path_get +EXPORT_SYMBOL vmlinux 0x7d261824 cont_write_begin +EXPORT_SYMBOL vmlinux 0x7d34b3a3 kernel_getsockname +EXPORT_SYMBOL vmlinux 0x7d3ac6ac sock_sendmsg +EXPORT_SYMBOL vmlinux 0x7d4721be sk_ns_capable +EXPORT_SYMBOL vmlinux 0x7d4b176a netlbl_catmap_setbit +EXPORT_SYMBOL vmlinux 0x7d5e1008 __crc32c_le_shift +EXPORT_SYMBOL vmlinux 0x7d628444 memcpy_fromio +EXPORT_SYMBOL vmlinux 0x7d8820f0 __cleancache_put_page +EXPORT_SYMBOL vmlinux 0x7daece67 quota_send_warning +EXPORT_SYMBOL vmlinux 0x7db45a3d blk_mq_queue_stopped +EXPORT_SYMBOL vmlinux 0x7dd554fc unregister_kmmio_probe +EXPORT_SYMBOL vmlinux 0x7dde80e6 poll_freewait +EXPORT_SYMBOL vmlinux 0x7de07b3b phy_print_status +EXPORT_SYMBOL vmlinux 0x7deff673 dm_consume_args +EXPORT_SYMBOL vmlinux 0x7df01091 phy_support_asym_pause +EXPORT_SYMBOL vmlinux 0x7df57830 single_release +EXPORT_SYMBOL vmlinux 0x7e0826e2 atomic_dec_and_mutex_lock +EXPORT_SYMBOL vmlinux 0x7e0f514f ip6_frag_init +EXPORT_SYMBOL vmlinux 0x7e296dac sock_create +EXPORT_SYMBOL vmlinux 0x7e29dd2f netdev_has_any_upper_dev +EXPORT_SYMBOL vmlinux 0x7e2b3eb2 xfrm_policy_delete +EXPORT_SYMBOL vmlinux 0x7e3191f6 try_to_del_timer_sync +EXPORT_SYMBOL vmlinux 0x7e5189e2 __hw_addr_ref_sync_dev +EXPORT_SYMBOL vmlinux 0x7e526bfa __x86_indirect_thunk_r10 +EXPORT_SYMBOL vmlinux 0x7e6e8e16 dquot_commit +EXPORT_SYMBOL vmlinux 0x7e7bcf26 acpi_map_cpu +EXPORT_SYMBOL vmlinux 0x7e8f3176 vme_slave_request +EXPORT_SYMBOL vmlinux 0x7e942dd1 tcf_exts_terse_dump +EXPORT_SYMBOL vmlinux 0x7e9d9137 tcp_create_openreq_child +EXPORT_SYMBOL vmlinux 0x7ea9c0ec pci_enable_atomic_ops_to_root +EXPORT_SYMBOL vmlinux 0x7eb5f448 truncate_inode_pages_range +EXPORT_SYMBOL vmlinux 0x7ec26edc bio_integrity_clone +EXPORT_SYMBOL vmlinux 0x7ec58d2a xfrm_dst_ifdown +EXPORT_SYMBOL vmlinux 0x7ec78bdd rename_lock +EXPORT_SYMBOL vmlinux 0x7ec8a458 blackhole_netdev +EXPORT_SYMBOL vmlinux 0x7ed1ebd1 simple_statfs +EXPORT_SYMBOL vmlinux 0x7ee31dcb kill_fasync +EXPORT_SYMBOL vmlinux 0x7ee32a24 open_with_fake_path +EXPORT_SYMBOL vmlinux 0x7eef3371 serio_unregister_port +EXPORT_SYMBOL vmlinux 0x7f013a18 bmap +EXPORT_SYMBOL vmlinux 0x7f02188f __msecs_to_jiffies +EXPORT_SYMBOL vmlinux 0x7f03b6a9 crc_ccitt_table +EXPORT_SYMBOL vmlinux 0x7f11a095 generic_file_direct_write +EXPORT_SYMBOL vmlinux 0x7f171777 scsi_alloc_sgtables +EXPORT_SYMBOL vmlinux 0x7f21102f complete_request_key +EXPORT_SYMBOL vmlinux 0x7f24de73 jiffies_to_usecs +EXPORT_SYMBOL vmlinux 0x7f2948b0 rt_dst_clone +EXPORT_SYMBOL vmlinux 0x7f429b16 dma_supported +EXPORT_SYMBOL vmlinux 0x7f52071a net_dim +EXPORT_SYMBOL vmlinux 0x7f525129 add_watch_to_object +EXPORT_SYMBOL vmlinux 0x7f5aa188 netif_napi_add +EXPORT_SYMBOL vmlinux 0x7f5b4fe4 sg_free_table +EXPORT_SYMBOL vmlinux 0x7f5caaad input_mt_drop_unused +EXPORT_SYMBOL vmlinux 0x7f5ef4ac in_dev_finish_destroy +EXPORT_SYMBOL vmlinux 0x7f73d77e vga_switcheroo_init_domain_pm_ops +EXPORT_SYMBOL vmlinux 0x7f7f7bb4 irq_poll_disable +EXPORT_SYMBOL vmlinux 0x7f8ca212 input_unregister_device +EXPORT_SYMBOL vmlinux 0x7fb52b3e security_sock_graft +EXPORT_SYMBOL vmlinux 0x7fb9be81 scsi_remove_host +EXPORT_SYMBOL vmlinux 0x7fbf3549 neigh_parms_release +EXPORT_SYMBOL vmlinux 0x7fe32873 rb_replace_node +EXPORT_SYMBOL vmlinux 0x7fe3cfc4 generic_file_llseek_size +EXPORT_SYMBOL vmlinux 0x80119dac xp_dma_sync_for_cpu_slow +EXPORT_SYMBOL vmlinux 0x803ddbb6 __posix_acl_create +EXPORT_SYMBOL vmlinux 0x803fcbed tty_unregister_driver +EXPORT_SYMBOL vmlinux 0x80490b04 build_skb +EXPORT_SYMBOL vmlinux 0x804af87c wrmsr_safe_on_cpu +EXPORT_SYMBOL vmlinux 0x80504073 jbd2_journal_wipe +EXPORT_SYMBOL vmlinux 0x805c0b66 jbd2_journal_init_jbd_inode +EXPORT_SYMBOL vmlinux 0x8089fbba dma_fence_array_create +EXPORT_SYMBOL vmlinux 0x80950aa9 tcf_em_tree_destroy +EXPORT_SYMBOL vmlinux 0x809712ff hdmi_avi_infoframe_pack +EXPORT_SYMBOL vmlinux 0x80a717a8 __percpu_counter_compare +EXPORT_SYMBOL vmlinux 0x80b84419 agp_backend_release +EXPORT_SYMBOL vmlinux 0x80be49e8 fs_param_is_path +EXPORT_SYMBOL vmlinux 0x80c25d8f uart_match_port +EXPORT_SYMBOL vmlinux 0x80ca5026 _bin2bcd +EXPORT_SYMBOL vmlinux 0x80d676e1 block_write_begin +EXPORT_SYMBOL vmlinux 0x80d68d3e fb_register_client +EXPORT_SYMBOL vmlinux 0x80e524c9 unregister_mii_tstamp_controller +EXPORT_SYMBOL vmlinux 0x80ef659a ip6_route_me_harder +EXPORT_SYMBOL vmlinux 0x80fbe600 __cgroup_bpf_run_filter_sock_addr +EXPORT_SYMBOL vmlinux 0x810b107a xfrm_policy_register_afinfo +EXPORT_SYMBOL vmlinux 0x8112b3d2 scsi_build_sense_buffer +EXPORT_SYMBOL vmlinux 0x81188c30 match_string +EXPORT_SYMBOL vmlinux 0x811e8aa8 lock_two_nondirectories +EXPORT_SYMBOL vmlinux 0x8141f4dd skb_prepare_seq_read +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 0x818416e1 scsi_set_sense_information +EXPORT_SYMBOL vmlinux 0x81a3408a sock_set_priority +EXPORT_SYMBOL vmlinux 0x81aa3b49 dev_uc_flush +EXPORT_SYMBOL vmlinux 0x81ac5e33 trace_print_hex_dump_seq +EXPORT_SYMBOL vmlinux 0x81b395b3 down_interruptible +EXPORT_SYMBOL vmlinux 0x81c661ec copy_page_to_iter +EXPORT_SYMBOL vmlinux 0x81ce9941 intel_scu_ipc_dev_writev +EXPORT_SYMBOL vmlinux 0x81cfa422 sock_no_setsockopt +EXPORT_SYMBOL vmlinux 0x81d36e4e __d_lookup_done +EXPORT_SYMBOL vmlinux 0x81db6ebb xz_dec_reset +EXPORT_SYMBOL vmlinux 0x81e6b37f dmi_get_system_info +EXPORT_SYMBOL vmlinux 0x81f6443d __sk_queue_drop_skb +EXPORT_SYMBOL vmlinux 0x82072614 tasklet_kill +EXPORT_SYMBOL vmlinux 0x821bc089 __post_watch_notification +EXPORT_SYMBOL vmlinux 0x821c6026 inet_dgram_connect +EXPORT_SYMBOL vmlinux 0x821f8df9 inode_init_always +EXPORT_SYMBOL vmlinux 0x822c432d phy_drivers_register +EXPORT_SYMBOL vmlinux 0x82303336 scsi_print_command +EXPORT_SYMBOL vmlinux 0x8230c99f compat_tcp_getsockopt +EXPORT_SYMBOL vmlinux 0x823134de netlink_broadcast +EXPORT_SYMBOL vmlinux 0x823c19ea iosf_mbi_unregister_pmic_bus_access_notifier_unlocked +EXPORT_SYMBOL vmlinux 0x823e507d locks_mandatory_area +EXPORT_SYMBOL vmlinux 0x8263a6d9 proc_douintvec +EXPORT_SYMBOL vmlinux 0x8268f1cc fs_param_is_blob +EXPORT_SYMBOL vmlinux 0x826c49ca netpoll_print_options +EXPORT_SYMBOL vmlinux 0x827596e4 dmaenginem_async_device_register +EXPORT_SYMBOL vmlinux 0x827de522 set_pages_array_wc +EXPORT_SYMBOL vmlinux 0x828062b1 __frontswap_init +EXPORT_SYMBOL vmlinux 0x828da22d scsi_partsize +EXPORT_SYMBOL vmlinux 0x829a49cb of_find_mipi_dsi_device_by_node +EXPORT_SYMBOL vmlinux 0x82a0416e seq_put_decimal_ll +EXPORT_SYMBOL vmlinux 0x82b34e17 __sock_cmsg_send +EXPORT_SYMBOL vmlinux 0x82c87ad5 nr_online_nodes +EXPORT_SYMBOL vmlinux 0x82cc6eb0 d_add +EXPORT_SYMBOL vmlinux 0x82dc980f inet6_protos +EXPORT_SYMBOL vmlinux 0x83296419 nvm_end_io +EXPORT_SYMBOL vmlinux 0x8329f690 sock_efree +EXPORT_SYMBOL vmlinux 0x832edf4b netdev_class_create_file_ns +EXPORT_SYMBOL vmlinux 0x83435817 mmc_alloc_host +EXPORT_SYMBOL vmlinux 0x83471307 xfrm_if_register_cb +EXPORT_SYMBOL vmlinux 0x83581089 gf128mul_init_4k_lle +EXPORT_SYMBOL vmlinux 0x83614ed9 udp_pre_connect +EXPORT_SYMBOL vmlinux 0x83706c26 arp_tbl +EXPORT_SYMBOL vmlinux 0x837ae90b dev_printk +EXPORT_SYMBOL vmlinux 0x837b7b09 __dynamic_pr_debug +EXPORT_SYMBOL vmlinux 0x837f3099 pci_bus_read_config_dword +EXPORT_SYMBOL vmlinux 0x838d2bc8 siphash_3u32 +EXPORT_SYMBOL vmlinux 0x8395554c dev_get_port_parent_id +EXPORT_SYMBOL vmlinux 0x83c52fba xfrm4_protocol_init +EXPORT_SYMBOL vmlinux 0x83c99f91 vme_irq_request +EXPORT_SYMBOL vmlinux 0x83d6dd9d gro_cells_init +EXPORT_SYMBOL vmlinux 0x83e64e0b put_watch_queue +EXPORT_SYMBOL vmlinux 0x840270ea mmc_gpiod_request_cd_irq +EXPORT_SYMBOL vmlinux 0x840342c6 sgl_free +EXPORT_SYMBOL vmlinux 0x84072feb qdisc_tree_reduce_backlog +EXPORT_SYMBOL vmlinux 0x840b9468 truncate_inode_pages +EXPORT_SYMBOL vmlinux 0x843a3d77 security_sctp_bind_connect +EXPORT_SYMBOL vmlinux 0x84751daa __set_page_dirty_buffers +EXPORT_SYMBOL vmlinux 0x848d372e iowrite8 +EXPORT_SYMBOL vmlinux 0x849fe807 csum_and_copy_from_user +EXPORT_SYMBOL vmlinux 0x84a3dd2f __blk_mq_end_request +EXPORT_SYMBOL vmlinux 0x84b0001b write_cache_pages +EXPORT_SYMBOL vmlinux 0x84b9fdbd lookup_bdev +EXPORT_SYMBOL vmlinux 0x84bf2635 fscrypt_has_permitted_context +EXPORT_SYMBOL vmlinux 0x84c1c552 proc_dointvec_ms_jiffies +EXPORT_SYMBOL vmlinux 0x84e183bc invalidate_mapping_pages +EXPORT_SYMBOL vmlinux 0x84e40501 tcp_rtx_synack +EXPORT_SYMBOL vmlinux 0x84e498af gro_find_complete_by_type +EXPORT_SYMBOL vmlinux 0x84f2d604 dev_mc_add +EXPORT_SYMBOL vmlinux 0x852aad1a iov_iter_kvec +EXPORT_SYMBOL vmlinux 0x8530641c scsi_host_get +EXPORT_SYMBOL vmlinux 0x8549ce0f devm_request_any_context_irq +EXPORT_SYMBOL vmlinux 0x85532eb1 __tracepoint_dma_fence_enable_signal +EXPORT_SYMBOL vmlinux 0x855f822f inet_sk_rebuild_header +EXPORT_SYMBOL vmlinux 0x85611c89 param_ops_charp +EXPORT_SYMBOL vmlinux 0x85670f1d rtnl_is_locked +EXPORT_SYMBOL vmlinux 0x8568f589 input_register_handler +EXPORT_SYMBOL vmlinux 0x85787781 tty_port_close +EXPORT_SYMBOL vmlinux 0x858b3fe3 free_iova_mem +EXPORT_SYMBOL vmlinux 0x8591d7d5 ledtrig_mtd_activity +EXPORT_SYMBOL vmlinux 0x859a0967 jbd2_journal_update_sb_errno +EXPORT_SYMBOL vmlinux 0x85aac538 mmc_detect_card_removed +EXPORT_SYMBOL vmlinux 0x85b4cf2f utf8nlen +EXPORT_SYMBOL vmlinux 0x85b5e625 rfkill_set_states +EXPORT_SYMBOL vmlinux 0x85bd1608 __request_region +EXPORT_SYMBOL vmlinux 0x85cc9ebb unpin_user_pages_dirty_lock +EXPORT_SYMBOL vmlinux 0x85d1a2e5 sock_wmalloc +EXPORT_SYMBOL vmlinux 0x85df9b6c strsep +EXPORT_SYMBOL vmlinux 0x85efc7e0 zero_pfn +EXPORT_SYMBOL vmlinux 0x85f0dc4b tcf_block_put +EXPORT_SYMBOL vmlinux 0x85f1d2ae blk_queue_io_opt +EXPORT_SYMBOL vmlinux 0x85f36e99 inet6_add_protocol +EXPORT_SYMBOL vmlinux 0x85f46fa7 free_netdev +EXPORT_SYMBOL vmlinux 0x85fbc931 slhc_uncompress +EXPORT_SYMBOL vmlinux 0x860a2080 release_pages +EXPORT_SYMBOL vmlinux 0x862ae449 dm_put_device +EXPORT_SYMBOL vmlinux 0x863a276a color_table +EXPORT_SYMBOL vmlinux 0x865029ac __hw_addr_sync +EXPORT_SYMBOL vmlinux 0x8663fb2a mr_mfc_seq_idx +EXPORT_SYMBOL vmlinux 0x86767d9e locks_lock_inode_wait +EXPORT_SYMBOL vmlinux 0x86787722 __skb_ext_del +EXPORT_SYMBOL vmlinux 0x8683962a agp_collect_device_status +EXPORT_SYMBOL vmlinux 0x868acba5 get_options +EXPORT_SYMBOL vmlinux 0x868dc5d2 xsk_umem_consume_tx +EXPORT_SYMBOL vmlinux 0x868ebee3 __sk_mem_raise_allocated +EXPORT_SYMBOL vmlinux 0x86957acf jbd2_journal_errno +EXPORT_SYMBOL vmlinux 0x869c841c uart_update_timeout +EXPORT_SYMBOL vmlinux 0x86ba6618 sk_common_release +EXPORT_SYMBOL vmlinux 0x86c18958 bd_start_claiming +EXPORT_SYMBOL vmlinux 0x86c7272b iosf_mbi_read +EXPORT_SYMBOL vmlinux 0x86d52ba5 lookup_constant +EXPORT_SYMBOL vmlinux 0x86e5cedc ip_frag_init +EXPORT_SYMBOL vmlinux 0x86f27420 iosf_mbi_block_punit_i2c_access +EXPORT_SYMBOL vmlinux 0x86fb4536 cpumask_any_and_distribute +EXPORT_SYMBOL vmlinux 0x86fb9b05 bitmap_parse_user +EXPORT_SYMBOL vmlinux 0x86ffe210 udp_flush_pending_frames +EXPORT_SYMBOL vmlinux 0x870299f3 unregister_mii_timestamper +EXPORT_SYMBOL vmlinux 0x8703afc6 param_set_charp +EXPORT_SYMBOL vmlinux 0x871a23d5 jbd2_journal_abort +EXPORT_SYMBOL vmlinux 0x8727efb3 qdisc_offload_graft_helper +EXPORT_SYMBOL vmlinux 0x872f45c1 dma_virt_ops +EXPORT_SYMBOL vmlinux 0x875efcb8 gnet_stats_start_copy_compat +EXPORT_SYMBOL vmlinux 0x8761c87b rps_needed +EXPORT_SYMBOL vmlinux 0x877ba6b5 vfs_mkdir +EXPORT_SYMBOL vmlinux 0x877cfa23 reuseport_alloc +EXPORT_SYMBOL vmlinux 0x878469bd ZSTD_decompressStream +EXPORT_SYMBOL vmlinux 0x878c290c flow_rule_match_basic +EXPORT_SYMBOL vmlinux 0x87a35f96 proc_create_data +EXPORT_SYMBOL vmlinux 0x87aaf826 ipv6_push_frag_opts +EXPORT_SYMBOL vmlinux 0x87b72376 devm_devfreq_unregister_notifier +EXPORT_SYMBOL vmlinux 0x87b8798d sg_next +EXPORT_SYMBOL vmlinux 0x87c2e787 __tcf_idr_release +EXPORT_SYMBOL vmlinux 0x87d01b88 prepare_creds +EXPORT_SYMBOL vmlinux 0x87f4731e sock_recv_errqueue +EXPORT_SYMBOL vmlinux 0x87f4e0f3 __skb_pad +EXPORT_SYMBOL vmlinux 0x87f642e4 take_dentry_name_snapshot +EXPORT_SYMBOL vmlinux 0x8806f914 unregister_quota_format +EXPORT_SYMBOL vmlinux 0x8819ca49 filemap_fdatawait_range +EXPORT_SYMBOL vmlinux 0x881c4413 gen_pool_first_fit +EXPORT_SYMBOL vmlinux 0x881d1415 dev_get_by_name_rcu +EXPORT_SYMBOL vmlinux 0x882c820f pnp_stop_dev +EXPORT_SYMBOL vmlinux 0x8831b2d9 free_cgroup_ns +EXPORT_SYMBOL vmlinux 0x883e217e unregister_netdevice_notifier_dev_net +EXPORT_SYMBOL vmlinux 0x88401754 rproc_shutdown +EXPORT_SYMBOL vmlinux 0x886aee92 gro_cells_receive +EXPORT_SYMBOL vmlinux 0x887028a8 pci_try_set_mwi +EXPORT_SYMBOL vmlinux 0x8878dc59 xfrm_register_km +EXPORT_SYMBOL vmlinux 0x88822d38 unregister_blocking_lsm_notifier +EXPORT_SYMBOL vmlinux 0x8888f1fe xxh32 +EXPORT_SYMBOL vmlinux 0x888dd270 mmc_cqe_start_req +EXPORT_SYMBOL vmlinux 0x88aabad0 sock_alloc +EXPORT_SYMBOL vmlinux 0x88abb78b ZSTD_insertBlock +EXPORT_SYMBOL vmlinux 0x88ac932c vga_get +EXPORT_SYMBOL vmlinux 0x88c41c7a locks_remove_posix +EXPORT_SYMBOL vmlinux 0x88ccd2bf tcf_idr_search +EXPORT_SYMBOL vmlinux 0x88db9e39 pci_bus_claim_resources +EXPORT_SYMBOL vmlinux 0x88db9f48 __check_object_size +EXPORT_SYMBOL vmlinux 0x88dffab7 simple_recursive_removal +EXPORT_SYMBOL vmlinux 0x88e1d0f0 page_frag_free +EXPORT_SYMBOL vmlinux 0x88fca6af set_create_files_as +EXPORT_SYMBOL vmlinux 0x89028f3a netdev_name_node_alt_create +EXPORT_SYMBOL vmlinux 0x890d0c88 d_alloc_parallel +EXPORT_SYMBOL vmlinux 0x8912b105 max8925_bulk_read +EXPORT_SYMBOL vmlinux 0x892a856d of_find_backlight +EXPORT_SYMBOL vmlinux 0x892c87b0 sock_bindtoindex +EXPORT_SYMBOL vmlinux 0x893ab70a d_instantiate_new +EXPORT_SYMBOL vmlinux 0x89434b4b radix_tree_tag_clear +EXPORT_SYMBOL vmlinux 0x8948d0d0 xfrm_state_check_expire +EXPORT_SYMBOL vmlinux 0x89603253 i2c_smbus_write_word_data +EXPORT_SYMBOL vmlinux 0x896a9c4a dma_fence_chain_init +EXPORT_SYMBOL vmlinux 0x897270fb _copy_from_iter_nocache +EXPORT_SYMBOL vmlinux 0x8972eed6 of_find_mipi_dsi_host_by_node +EXPORT_SYMBOL vmlinux 0x89777ed6 vme_irq_generate +EXPORT_SYMBOL vmlinux 0x89aac259 netdev_features_change +EXPORT_SYMBOL vmlinux 0x89bd7e5b dev_pick_tx_cpu_id +EXPORT_SYMBOL vmlinux 0x89c53c3f generic_copy_file_range +EXPORT_SYMBOL vmlinux 0x89cc2dac dev_add_pack +EXPORT_SYMBOL vmlinux 0x89fd1fa0 mdio_device_create +EXPORT_SYMBOL vmlinux 0x8a03c185 devm_devfreq_register_opp_notifier +EXPORT_SYMBOL vmlinux 0x8a1c7108 tty_driver_kref_put +EXPORT_SYMBOL vmlinux 0x8a32fd66 d_instantiate +EXPORT_SYMBOL vmlinux 0x8a35b432 sme_me_mask +EXPORT_SYMBOL vmlinux 0x8a451d1a i2c_get_adapter +EXPORT_SYMBOL vmlinux 0x8a47043d LZ4_decompress_safe_continue +EXPORT_SYMBOL vmlinux 0x8a490c90 rfkill_set_sw_state +EXPORT_SYMBOL vmlinux 0x8a513160 vga_switcheroo_unregister_client +EXPORT_SYMBOL vmlinux 0x8a668c37 init_special_inode +EXPORT_SYMBOL vmlinux 0x8a6af65c kstrtoul_from_user +EXPORT_SYMBOL vmlinux 0x8a6c7139 acpi_mask_gpe +EXPORT_SYMBOL vmlinux 0x8a6d0417 xsk_umem_complete_tx +EXPORT_SYMBOL vmlinux 0x8a76de5e pnp_device_detach +EXPORT_SYMBOL vmlinux 0x8a7d1c31 high_memory +EXPORT_SYMBOL vmlinux 0x8a866a0c vga_switcheroo_register_client +EXPORT_SYMBOL vmlinux 0x8a948f27 __nla_parse +EXPORT_SYMBOL vmlinux 0x8a99a016 mempool_free_slab +EXPORT_SYMBOL vmlinux 0x8ab32905 sock_edemux +EXPORT_SYMBOL vmlinux 0x8aba9330 fbcon_rotate_ud +EXPORT_SYMBOL vmlinux 0x8ac12273 blk_put_queue +EXPORT_SYMBOL vmlinux 0x8ac1b449 mdiobus_write_nested +EXPORT_SYMBOL vmlinux 0x8ac3334b net_dim_get_def_rx_moderation +EXPORT_SYMBOL vmlinux 0x8ac743de sg_copy_buffer +EXPORT_SYMBOL vmlinux 0x8ad29bab _raw_write_unlock_bh +EXPORT_SYMBOL vmlinux 0x8af0b554 blk_integrity_register +EXPORT_SYMBOL vmlinux 0x8b0088d1 LZ4_decompress_safe_usingDict +EXPORT_SYMBOL vmlinux 0x8b2880ca ppp_register_net_channel +EXPORT_SYMBOL vmlinux 0x8b33d571 netif_skb_features +EXPORT_SYMBOL vmlinux 0x8b344547 __register_binfmt +EXPORT_SYMBOL vmlinux 0x8b618d08 overflowuid +EXPORT_SYMBOL vmlinux 0x8b7e42ec check_disk_change +EXPORT_SYMBOL vmlinux 0x8b8059bd in_group_p +EXPORT_SYMBOL vmlinux 0x8b8cda8d textsearch_find_continuous +EXPORT_SYMBOL vmlinux 0x8b910be2 errseq_sample +EXPORT_SYMBOL vmlinux 0x8b91f1fe dma_free_attrs +EXPORT_SYMBOL vmlinux 0x8b966b63 sn_rtc_cycles_per_second +EXPORT_SYMBOL vmlinux 0x8b989cf9 acpi_bus_can_wakeup +EXPORT_SYMBOL vmlinux 0x8b9ea582 ZSTD_copyDCtx +EXPORT_SYMBOL vmlinux 0x8bab4044 mmc_retune_timer_stop +EXPORT_SYMBOL vmlinux 0x8bbd23f1 import_single_range +EXPORT_SYMBOL vmlinux 0x8bcf4ec8 __scsi_print_sense +EXPORT_SYMBOL vmlinux 0x8bd577d0 acpi_ut_exit +EXPORT_SYMBOL vmlinux 0x8bdc0de7 follow_down_one +EXPORT_SYMBOL vmlinux 0x8c08b4e9 d_make_root +EXPORT_SYMBOL vmlinux 0x8c15fe3e __x86_retpoline_r10 +EXPORT_SYMBOL vmlinux 0x8c26d495 prepare_to_wait_event +EXPORT_SYMBOL vmlinux 0x8c3253ec _raw_spin_trylock +EXPORT_SYMBOL vmlinux 0x8c434760 __page_frag_cache_drain +EXPORT_SYMBOL vmlinux 0x8c6bf651 flow_block_cb_is_busy +EXPORT_SYMBOL vmlinux 0x8c6c9c44 __phy_resume +EXPORT_SYMBOL vmlinux 0x8c6dec24 seq_hex_dump +EXPORT_SYMBOL vmlinux 0x8c9882cf blk_rq_count_integrity_sg +EXPORT_SYMBOL vmlinux 0x8c9e338f acpi_bios_error +EXPORT_SYMBOL vmlinux 0x8c9e4154 register_tcf_proto_ops +EXPORT_SYMBOL vmlinux 0x8ca6eb2c PDE_DATA +EXPORT_SYMBOL vmlinux 0x8cb0b5b9 dqget +EXPORT_SYMBOL vmlinux 0x8cb544df __tracepoint_kmalloc +EXPORT_SYMBOL vmlinux 0x8cbcdfc9 i2c_register_driver +EXPORT_SYMBOL vmlinux 0x8cc79cab iowrite16_rep +EXPORT_SYMBOL vmlinux 0x8cda8029 xen_clear_irq_pending +EXPORT_SYMBOL vmlinux 0x8ce85b8c jbd2_journal_forget +EXPORT_SYMBOL vmlinux 0x8cfeed6e pci_read_config_byte +EXPORT_SYMBOL vmlinux 0x8d1e26f6 page_pool_put_page +EXPORT_SYMBOL vmlinux 0x8d25c2ad dma_mmap_attrs +EXPORT_SYMBOL vmlinux 0x8d2e8f1a inet6_offloads +EXPORT_SYMBOL vmlinux 0x8d380581 vfio_register_notifier +EXPORT_SYMBOL vmlinux 0x8d3911d3 ip_mc_inc_group +EXPORT_SYMBOL vmlinux 0x8d513f9f filemap_fault +EXPORT_SYMBOL vmlinux 0x8d55bb8a qid_eq +EXPORT_SYMBOL vmlinux 0x8d6fafb1 netdev_port_same_parent_id +EXPORT_SYMBOL vmlinux 0x8d73278e hex_asc_upper +EXPORT_SYMBOL vmlinux 0x8d8237ef skb_headers_offset_update +EXPORT_SYMBOL vmlinux 0x8d9ca0e6 dma_fence_enable_sw_signaling +EXPORT_SYMBOL vmlinux 0x8da54998 xfrm_trans_queue_net +EXPORT_SYMBOL vmlinux 0x8db22efe acpi_setup_gpe_for_wake +EXPORT_SYMBOL vmlinux 0x8db5960f input_mt_sync_frame +EXPORT_SYMBOL vmlinux 0x8db77abf proc_set_size +EXPORT_SYMBOL vmlinux 0x8ddd8aad schedule_timeout +EXPORT_SYMBOL vmlinux 0x8df7e8d6 cpumask_any_but +EXPORT_SYMBOL vmlinux 0x8df92f66 memchr_inv +EXPORT_SYMBOL vmlinux 0x8df9dd10 guid_null +EXPORT_SYMBOL vmlinux 0x8e0be234 vga_switcheroo_client_probe_defer +EXPORT_SYMBOL vmlinux 0x8e16a1fd sock_setsockopt +EXPORT_SYMBOL vmlinux 0x8e17b3ae idr_destroy +EXPORT_SYMBOL vmlinux 0x8e21c9a1 dma_fence_add_callback +EXPORT_SYMBOL vmlinux 0x8e2b7d94 mipi_dsi_set_maximum_return_packet_size +EXPORT_SYMBOL vmlinux 0x8e2d1236 ex_handler_wrmsr_unsafe +EXPORT_SYMBOL vmlinux 0x8e2de181 tty_port_carrier_raised +EXPORT_SYMBOL vmlinux 0x8e4532a6 jbd2_complete_transaction +EXPORT_SYMBOL vmlinux 0x8e45a0f3 ww_mutex_lock_interruptible +EXPORT_SYMBOL vmlinux 0x8e482cad d_mark_dontcache +EXPORT_SYMBOL vmlinux 0x8e56263f d_prune_aliases +EXPORT_SYMBOL vmlinux 0x8e663d0f zalloc_cpumask_var_node +EXPORT_SYMBOL vmlinux 0x8e8c2c5e km_policy_expired +EXPORT_SYMBOL vmlinux 0x8e93bd24 security_secctx_to_secid +EXPORT_SYMBOL vmlinux 0x8e97858a tty_set_operations +EXPORT_SYMBOL vmlinux 0x8e97def6 do_SAK +EXPORT_SYMBOL vmlinux 0x8e9de54e udplite_prot +EXPORT_SYMBOL vmlinux 0x8ea46ae0 input_set_abs_params +EXPORT_SYMBOL vmlinux 0x8eaf2a5f vga_switcheroo_unregister_handler +EXPORT_SYMBOL vmlinux 0x8eb8c3dc pm860x_page_reg_write +EXPORT_SYMBOL vmlinux 0x8ec6c6ad blk_sync_queue +EXPORT_SYMBOL vmlinux 0x8ee15be6 sock_diag_put_filterinfo +EXPORT_SYMBOL vmlinux 0x8ee4d248 get_disk_and_module +EXPORT_SYMBOL vmlinux 0x8f01afd6 twl6030_interrupt_mask +EXPORT_SYMBOL vmlinux 0x8f251ce9 abx500_mask_and_set_register_interruptible +EXPORT_SYMBOL vmlinux 0x8f2703b7 wbinvd_on_all_cpus +EXPORT_SYMBOL vmlinux 0x8f3835c6 fscrypt_free_inode +EXPORT_SYMBOL vmlinux 0x8f38d383 ex_handler_default +EXPORT_SYMBOL vmlinux 0x8f6d4125 _copy_from_iter_full_nocache +EXPORT_SYMBOL vmlinux 0x8f80bf11 acpi_install_gpe_raw_handler +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 0x8fa95de0 md_bitmap_end_sync +EXPORT_SYMBOL vmlinux 0x8fabbc3d __dev_get_by_flags +EXPORT_SYMBOL vmlinux 0x8fb90f69 crypto_sha512_finup +EXPORT_SYMBOL vmlinux 0x8fe03498 scsi_device_resume +EXPORT_SYMBOL vmlinux 0x8fe43365 pci_write_config_dword +EXPORT_SYMBOL vmlinux 0x8ff89ed0 seg6_hmac_exit +EXPORT_SYMBOL vmlinux 0x8ffbdba9 blk_limits_io_min +EXPORT_SYMBOL vmlinux 0x90195262 __blk_rq_map_sg +EXPORT_SYMBOL vmlinux 0x902d8722 vme_slave_get +EXPORT_SYMBOL vmlinux 0x9034a696 mempool_destroy +EXPORT_SYMBOL vmlinux 0x904f4a03 __vfs_getxattr +EXPORT_SYMBOL vmlinux 0x9054ee54 ethtool_intersect_link_masks +EXPORT_SYMBOL vmlinux 0x905695ab sg_copy_from_buffer +EXPORT_SYMBOL vmlinux 0x90576ec4 vmemdup_user +EXPORT_SYMBOL vmlinux 0x907ba52c posix_acl_valid +EXPORT_SYMBOL vmlinux 0x90832e53 devm_clk_put +EXPORT_SYMBOL vmlinux 0x90868007 block_commit_write +EXPORT_SYMBOL vmlinux 0x909d2cdf vm_event_states +EXPORT_SYMBOL vmlinux 0x90b64c0c pci_enable_wake +EXPORT_SYMBOL vmlinux 0x90bc057a tcp_gro_complete +EXPORT_SYMBOL vmlinux 0x90c73605 iptun_encaps +EXPORT_SYMBOL vmlinux 0x90d006f8 mdiobus_write +EXPORT_SYMBOL vmlinux 0x90e24fd8 blk_mq_run_hw_queues +EXPORT_SYMBOL vmlinux 0x90e7bf2d fb_show_logo +EXPORT_SYMBOL vmlinux 0x90ef2652 seq_put_decimal_ull +EXPORT_SYMBOL vmlinux 0x90f3d1fd dquot_destroy +EXPORT_SYMBOL vmlinux 0x90fe03f6 tty_name +EXPORT_SYMBOL vmlinux 0x91007682 deactivate_locked_super +EXPORT_SYMBOL vmlinux 0x91216cf0 netpoll_poll_disable +EXPORT_SYMBOL vmlinux 0x9124c809 tcp_v4_do_rcv +EXPORT_SYMBOL vmlinux 0x912c3b98 __remove_inode_hash +EXPORT_SYMBOL vmlinux 0x9144f207 bio_split +EXPORT_SYMBOL vmlinux 0x915f0411 dcb_ieee_getapp_dscp_prio_mask_map +EXPORT_SYMBOL vmlinux 0x915fbf73 secpath_set +EXPORT_SYMBOL vmlinux 0x91607d95 set_memory_wb +EXPORT_SYMBOL vmlinux 0x9166fada strncpy +EXPORT_SYMBOL vmlinux 0x916a2452 ip6mr_rule_default +EXPORT_SYMBOL vmlinux 0x916fe601 dm_kcopyd_zero +EXPORT_SYMBOL vmlinux 0x9176145b acpi_install_global_event_handler +EXPORT_SYMBOL vmlinux 0x919c58f3 __clzsi2 +EXPORT_SYMBOL vmlinux 0x91a10c61 intel_scu_ipc_dev_simple_command +EXPORT_SYMBOL vmlinux 0x91a7b1da qdisc_class_hash_remove +EXPORT_SYMBOL vmlinux 0x91b2ff27 __mod_zone_page_state +EXPORT_SYMBOL vmlinux 0x91c8801b migrate_page_states +EXPORT_SYMBOL vmlinux 0x91d83759 submit_bio +EXPORT_SYMBOL vmlinux 0x91f316d8 blk_cleanup_queue +EXPORT_SYMBOL vmlinux 0x91f44510 idr_alloc_cyclic +EXPORT_SYMBOL vmlinux 0x91ff17a0 sock_create_lite +EXPORT_SYMBOL vmlinux 0x9200bb7f bdevname +EXPORT_SYMBOL vmlinux 0x9208c003 cfb_fillrect +EXPORT_SYMBOL vmlinux 0x920e9e1a amd_iommu_domain_set_gcr3 +EXPORT_SYMBOL vmlinux 0x921d6ec3 ip_sock_set_tos +EXPORT_SYMBOL vmlinux 0x922dc054 cros_ec_get_next_event +EXPORT_SYMBOL vmlinux 0x922f45a6 __bitmap_clear +EXPORT_SYMBOL vmlinux 0x9234cef6 cdrom_release +EXPORT_SYMBOL vmlinux 0x923b1276 dmaengine_get +EXPORT_SYMBOL vmlinux 0x92462b91 kmem_cache_free +EXPORT_SYMBOL vmlinux 0x92540fbf finish_wait +EXPORT_SYMBOL vmlinux 0x9258c776 hdmi_vendor_infoframe_pack_only +EXPORT_SYMBOL vmlinux 0x92690bfb i2c_smbus_write_byte_data +EXPORT_SYMBOL vmlinux 0x926cb58c jbd2_journal_check_available_features +EXPORT_SYMBOL vmlinux 0x926eb825 hash_and_copy_to_iter +EXPORT_SYMBOL vmlinux 0x9274b506 tcp_parse_options +EXPORT_SYMBOL vmlinux 0x9279ff6b sock_no_linger +EXPORT_SYMBOL vmlinux 0x92897e3d default_idle +EXPORT_SYMBOL vmlinux 0x9291cd3b memdup_user +EXPORT_SYMBOL vmlinux 0x92963089 input_get_keycode +EXPORT_SYMBOL vmlinux 0x92a506a8 nvdimm_namespace_common_probe +EXPORT_SYMBOL vmlinux 0x92a51e56 acpi_debug_print_raw +EXPORT_SYMBOL vmlinux 0x92b8d104 __d_drop +EXPORT_SYMBOL vmlinux 0x92b99a33 acpi_put_table +EXPORT_SYMBOL vmlinux 0x92b9b180 slash_name +EXPORT_SYMBOL vmlinux 0x92c5b6ac pin_user_pages_remote +EXPORT_SYMBOL vmlinux 0x92c9c487 consume_skb +EXPORT_SYMBOL vmlinux 0x92ec510d jiffies64_to_msecs +EXPORT_SYMBOL vmlinux 0x92fa5abb vme_lm_detach +EXPORT_SYMBOL vmlinux 0x93022ba6 __scsi_format_command +EXPORT_SYMBOL vmlinux 0x9305bf68 find_next_and_bit +EXPORT_SYMBOL vmlinux 0x9305f8e6 cpufreq_get +EXPORT_SYMBOL vmlinux 0x9319be29 generic_pipe_buf_release +EXPORT_SYMBOL vmlinux 0x931ce096 iget5_locked +EXPORT_SYMBOL vmlinux 0x934e09f9 vfs_unlink +EXPORT_SYMBOL vmlinux 0x9357f278 memory_cgrp_subsys +EXPORT_SYMBOL vmlinux 0x937733e3 qid_valid +EXPORT_SYMBOL vmlinux 0x937dfd96 blk_mq_tag_to_rq +EXPORT_SYMBOL vmlinux 0x938056a6 tcp_mmap +EXPORT_SYMBOL vmlinux 0x93838972 vga_switcheroo_register_audio_client +EXPORT_SYMBOL vmlinux 0x9392170e rproc_da_to_va +EXPORT_SYMBOL vmlinux 0x93967fc7 request_firmware_into_buf +EXPORT_SYMBOL vmlinux 0x93a6e0b2 io_schedule +EXPORT_SYMBOL vmlinux 0x93b048ab bfifo_qdisc_ops +EXPORT_SYMBOL vmlinux 0x93b3fc74 register_dcbevent_notifier +EXPORT_SYMBOL vmlinux 0x93bbc093 sock_no_socketpair +EXPORT_SYMBOL vmlinux 0x93c1992f nla_put_nohdr +EXPORT_SYMBOL vmlinux 0x93d6dd8c complete_all +EXPORT_SYMBOL vmlinux 0x93f017a6 blk_queue_virt_boundary +EXPORT_SYMBOL vmlinux 0x940b33f1 uart_register_driver +EXPORT_SYMBOL vmlinux 0x9428f816 dim_turn +EXPORT_SYMBOL vmlinux 0x94290cac xsk_clear_rx_need_wakeup +EXPORT_SYMBOL vmlinux 0x943be147 inet_frag_kill +EXPORT_SYMBOL vmlinux 0x943dc80f csum_and_copy_to_user +EXPORT_SYMBOL vmlinux 0x943e94d9 tcp_v4_mtu_reduced +EXPORT_SYMBOL vmlinux 0x944375db _totalram_pages +EXPORT_SYMBOL vmlinux 0x944a564d is_console_locked +EXPORT_SYMBOL vmlinux 0x94671183 tcf_exts_change +EXPORT_SYMBOL vmlinux 0x946abce0 vga_tryget +EXPORT_SYMBOL vmlinux 0x94961283 vunmap +EXPORT_SYMBOL vmlinux 0x949ce141 netdev_lower_dev_get_private +EXPORT_SYMBOL vmlinux 0x94a55af2 tcf_classify_ingress +EXPORT_SYMBOL vmlinux 0x94b0900c pm860x_reg_read +EXPORT_SYMBOL vmlinux 0x94bb7ec3 gen_pool_dma_zalloc_algo +EXPORT_SYMBOL vmlinux 0x94bf03ca utf8_to_utf32 +EXPORT_SYMBOL vmlinux 0x94cf2ff2 __skb_get_hash +EXPORT_SYMBOL vmlinux 0x94e481cf ZSTD_adjustCParams +EXPORT_SYMBOL vmlinux 0x94eb1ff5 sock_no_shutdown +EXPORT_SYMBOL vmlinux 0x94eeecf4 eth_header +EXPORT_SYMBOL vmlinux 0x94fa77cc sock_alloc_send_skb +EXPORT_SYMBOL vmlinux 0x9500885e nf_unregister_queue_handler +EXPORT_SYMBOL vmlinux 0x9501f52c netif_tx_stop_all_queues +EXPORT_SYMBOL vmlinux 0x9511c6ef jbd2_journal_get_undo_access +EXPORT_SYMBOL vmlinux 0x9545af6d tasklet_init +EXPORT_SYMBOL vmlinux 0x954cef6f init_on_alloc +EXPORT_SYMBOL vmlinux 0x954f099c idr_preload +EXPORT_SYMBOL vmlinux 0x956c90f1 vfs_statx_fd +EXPORT_SYMBOL vmlinux 0x95838584 pci_enable_device_mem +EXPORT_SYMBOL vmlinux 0x9585a89c __page_cache_alloc +EXPORT_SYMBOL vmlinux 0x95a67b07 udp_table +EXPORT_SYMBOL vmlinux 0x95b1c19f dev_uc_add_excl +EXPORT_SYMBOL vmlinux 0x95b463a3 vme_dma_list_add +EXPORT_SYMBOL vmlinux 0x95e1a2ff page_pool_release_page +EXPORT_SYMBOL vmlinux 0x95fcd441 __nla_put_nohdr +EXPORT_SYMBOL vmlinux 0x96030587 xfrm_state_lookup +EXPORT_SYMBOL vmlinux 0x960b2308 scsi_mode_sense +EXPORT_SYMBOL vmlinux 0x960f7b38 from_kgid_munged +EXPORT_SYMBOL vmlinux 0x960fc92e acpi_dev_get_first_match_dev +EXPORT_SYMBOL vmlinux 0x961a0bba xfrm_find_acq +EXPORT_SYMBOL vmlinux 0x9625695d acpi_install_gpe_block +EXPORT_SYMBOL vmlinux 0x962c4977 clkdev_add +EXPORT_SYMBOL vmlinux 0x963dcba1 _raw_spin_trylock_bh +EXPORT_SYMBOL vmlinux 0x9640c430 ipv6_mc_check_icmpv6 +EXPORT_SYMBOL vmlinux 0x9653a317 abx500_startup_irq_enabled +EXPORT_SYMBOL vmlinux 0x9673a074 pci_bus_read_config_word +EXPORT_SYMBOL vmlinux 0x96848186 scnprintf +EXPORT_SYMBOL vmlinux 0x9686d1c5 __dev_get_by_index +EXPORT_SYMBOL vmlinux 0x968a0762 agp_alloc_page_array +EXPORT_SYMBOL vmlinux 0x96955707 inet_listen +EXPORT_SYMBOL vmlinux 0x96b14e1a md_done_sync +EXPORT_SYMBOL vmlinux 0x96b29254 strncasecmp +EXPORT_SYMBOL vmlinux 0x96c17136 fb_var_to_videomode +EXPORT_SYMBOL vmlinux 0x96cd2b04 scsi_sense_key_string +EXPORT_SYMBOL vmlinux 0x96e5d30f gen_pool_set_algo +EXPORT_SYMBOL vmlinux 0x96eab78b iosf_mbi_modify +EXPORT_SYMBOL vmlinux 0x96eac8ce tcf_register_action +EXPORT_SYMBOL vmlinux 0x96f4f839 uart_write_wakeup +EXPORT_SYMBOL vmlinux 0x96f7a645 vlan_dev_real_dev +EXPORT_SYMBOL vmlinux 0x96fab350 dim_park_on_top +EXPORT_SYMBOL vmlinux 0x970e510b mr_vif_seq_idx +EXPORT_SYMBOL vmlinux 0x973fa82e register_acpi_notifier +EXPORT_SYMBOL vmlinux 0x9746eb89 ZSTD_decompressBegin_usingDict +EXPORT_SYMBOL vmlinux 0x97651e6c vmemmap_base +EXPORT_SYMBOL vmlinux 0x9770f89e skb_flow_get_icmp_tci +EXPORT_SYMBOL vmlinux 0x977f511b __mutex_init +EXPORT_SYMBOL vmlinux 0x97934ecf del_timer_sync +EXPORT_SYMBOL vmlinux 0x97999817 rfkill_set_hw_state +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 0x97e6ab6c vmf_insert_pfn_prot +EXPORT_SYMBOL vmlinux 0x97f23506 ethtool_op_get_link +EXPORT_SYMBOL vmlinux 0x98066627 mdiobus_alloc_size +EXPORT_SYMBOL vmlinux 0x9829fc11 __kfifo_out_peek_r +EXPORT_SYMBOL vmlinux 0x985785e7 __sb_start_write +EXPORT_SYMBOL vmlinux 0x9858d509 __cleancache_invalidate_inode +EXPORT_SYMBOL vmlinux 0x987441cb wait_for_key_construction +EXPORT_SYMBOL vmlinux 0x98ad5627 scsi_device_lookup +EXPORT_SYMBOL vmlinux 0x98b4cfa8 neigh_table_init +EXPORT_SYMBOL vmlinux 0x98b87876 mipi_dsi_detach +EXPORT_SYMBOL vmlinux 0x98c039dc dma_fence_wait_timeout +EXPORT_SYMBOL vmlinux 0x98c89ade security_xfrm_state_alloc +EXPORT_SYMBOL vmlinux 0x98d76f8f rawv6_mh_filter_register +EXPORT_SYMBOL vmlinux 0x98dc9b49 current_task +EXPORT_SYMBOL vmlinux 0x98dcd2bf dev_addr_flush +EXPORT_SYMBOL vmlinux 0x98e508ef ignore_console_lock_warning +EXPORT_SYMBOL vmlinux 0x9901b122 security_task_getsecid +EXPORT_SYMBOL vmlinux 0x99078b39 trace_print_flags_seq +EXPORT_SYMBOL vmlinux 0x99128b89 tcp_recvmsg +EXPORT_SYMBOL vmlinux 0x991cb091 __ip_dev_find +EXPORT_SYMBOL vmlinux 0x991d7d1f uart_resume_port +EXPORT_SYMBOL vmlinux 0x9939eba0 backlight_unregister_notifier +EXPORT_SYMBOL vmlinux 0x994a71f1 sock_no_bind +EXPORT_SYMBOL vmlinux 0x99517682 udp_encap_enable +EXPORT_SYMBOL vmlinux 0x9959aaca fscrypt_zeroout_range +EXPORT_SYMBOL vmlinux 0x996f08e8 seq_open_private +EXPORT_SYMBOL vmlinux 0x9975dc22 acpi_get_handle +EXPORT_SYMBOL vmlinux 0x9991fb6b vfs_dedupe_file_range +EXPORT_SYMBOL vmlinux 0x999aeb5e netif_rx +EXPORT_SYMBOL vmlinux 0x999e8297 vfree +EXPORT_SYMBOL vmlinux 0x99a09225 param_set_short +EXPORT_SYMBOL vmlinux 0x99a5a050 reuseport_select_sock +EXPORT_SYMBOL vmlinux 0x99aa83c5 __cancel_dirty_page +EXPORT_SYMBOL vmlinux 0x99c5097b tcp_init_sock +EXPORT_SYMBOL vmlinux 0x99c9a17b scsi_host_alloc +EXPORT_SYMBOL vmlinux 0x99d472b1 net_dim_get_rx_moderation +EXPORT_SYMBOL vmlinux 0x99d65df1 efi +EXPORT_SYMBOL vmlinux 0x99daa9bf try_offline_node +EXPORT_SYMBOL vmlinux 0x99f068d5 x86_cpu_to_node_map +EXPORT_SYMBOL vmlinux 0x9a0a8373 blkdev_get_by_dev +EXPORT_SYMBOL vmlinux 0x9a0c3a18 vme_unregister_error_handler +EXPORT_SYMBOL vmlinux 0x9a19ec50 make_flow_keys_digest +EXPORT_SYMBOL vmlinux 0x9a1dfd65 strpbrk +EXPORT_SYMBOL vmlinux 0x9a22391e radix_tree_gang_lookup_tag_slot +EXPORT_SYMBOL vmlinux 0x9a2278f9 jbd2_journal_inode_ranged_wait +EXPORT_SYMBOL vmlinux 0x9a3463a1 mmc_calc_max_discard +EXPORT_SYMBOL vmlinux 0x9a583306 netlbl_bitmap_walk +EXPORT_SYMBOL vmlinux 0x9a594b34 input_inject_event +EXPORT_SYMBOL vmlinux 0x9a68f917 ip_sock_set_recverr +EXPORT_SYMBOL vmlinux 0x9a73b032 ZSTD_initDStream_usingDDict +EXPORT_SYMBOL vmlinux 0x9a77d72d xsk_clear_tx_need_wakeup +EXPORT_SYMBOL vmlinux 0x9a7beaa0 zero_fill_bio_iter +EXPORT_SYMBOL vmlinux 0x9a7fb39b fbcon_rotate_ccw +EXPORT_SYMBOL vmlinux 0x9a96b505 eth_gro_receive +EXPORT_SYMBOL vmlinux 0x9a9936b9 pci_dev_driver +EXPORT_SYMBOL vmlinux 0x9a9caf32 mmc_put_card +EXPORT_SYMBOL vmlinux 0x9aab2d0d mmc_wait_for_req_done +EXPORT_SYMBOL vmlinux 0x9aaeefce sysctl_nf_log_all_netns +EXPORT_SYMBOL vmlinux 0x9ab5163d qdisc_put +EXPORT_SYMBOL vmlinux 0x9abdba38 single_open_size +EXPORT_SYMBOL vmlinux 0x9ad7a582 iosf_mbi_assert_punit_acquired +EXPORT_SYMBOL vmlinux 0x9adb6ec8 jbd2_journal_ack_err +EXPORT_SYMBOL vmlinux 0x9af07199 dev_uc_add +EXPORT_SYMBOL vmlinux 0x9b0bf98f page_mapping +EXPORT_SYMBOL vmlinux 0x9b1140e4 mmc_cqe_recovery +EXPORT_SYMBOL vmlinux 0x9b2560b9 gf128mul_init_4k_bbe +EXPORT_SYMBOL vmlinux 0x9b33e0d7 unregister_dcbevent_notifier +EXPORT_SYMBOL vmlinux 0x9b37da04 seq_escape +EXPORT_SYMBOL vmlinux 0x9b420478 utf8_strncasecmp +EXPORT_SYMBOL vmlinux 0x9b466193 scsi_print_result +EXPORT_SYMBOL vmlinux 0x9b496b21 posix_acl_alloc +EXPORT_SYMBOL vmlinux 0x9b5ba646 tcp_set_rcvlowat +EXPORT_SYMBOL vmlinux 0x9b6ca2b3 arp_send +EXPORT_SYMBOL vmlinux 0x9b72478f acpi_unload_parent_table +EXPORT_SYMBOL vmlinux 0x9b7f9ca8 devm_of_iomap +EXPORT_SYMBOL vmlinux 0x9b91c392 from_kuid_munged +EXPORT_SYMBOL vmlinux 0x9b96183c blk_queue_update_dma_pad +EXPORT_SYMBOL vmlinux 0x9ba02a46 skb_dequeue +EXPORT_SYMBOL vmlinux 0x9bb30189 mount_subtree +EXPORT_SYMBOL vmlinux 0x9bb60f1a ip6_fraglist_prepare +EXPORT_SYMBOL vmlinux 0x9bb79b6c xfrm_alloc_spi +EXPORT_SYMBOL vmlinux 0x9bccf2f4 napi_schedule_prep +EXPORT_SYMBOL vmlinux 0x9bcf0db3 dev_get_by_napi_id +EXPORT_SYMBOL vmlinux 0x9bf4f654 mipi_dsi_host_unregister +EXPORT_SYMBOL vmlinux 0x9c0919fd tcf_em_tree_validate +EXPORT_SYMBOL vmlinux 0x9c122bcf mempool_create_node +EXPORT_SYMBOL vmlinux 0x9c27b5f7 devm_extcon_register_notifier +EXPORT_SYMBOL vmlinux 0x9c517847 bdi_register +EXPORT_SYMBOL vmlinux 0x9c587f3a pci_remove_bus +EXPORT_SYMBOL vmlinux 0x9c63394f tcp_md5_hash_key +EXPORT_SYMBOL vmlinux 0x9c7b8242 d_drop +EXPORT_SYMBOL vmlinux 0x9c942adc vprintk_emit +EXPORT_SYMBOL vmlinux 0x9c9e79bf netdev_txq_to_tc +EXPORT_SYMBOL vmlinux 0x9ca10d19 xp_dma_unmap +EXPORT_SYMBOL vmlinux 0x9caa63cf ip_defrag +EXPORT_SYMBOL vmlinux 0x9cab34a6 rfkill_set_led_trigger_name +EXPORT_SYMBOL vmlinux 0x9cb84544 i8042_remove_filter +EXPORT_SYMBOL vmlinux 0x9cb986f2 vmalloc_base +EXPORT_SYMBOL vmlinux 0x9cc13e26 flow_rule_match_enc_ip +EXPORT_SYMBOL vmlinux 0x9ccf7171 vme_dma_pci_attribute +EXPORT_SYMBOL vmlinux 0x9cd91791 register_sysctl +EXPORT_SYMBOL vmlinux 0x9cdfb3f7 sysctl_fb_tunnels_only_for_init_net +EXPORT_SYMBOL vmlinux 0x9cf76d8f netdev_next_lower_dev_rcu +EXPORT_SYMBOL vmlinux 0x9cfd1555 nf_log_set +EXPORT_SYMBOL vmlinux 0x9d07e29c call_fib_notifiers +EXPORT_SYMBOL vmlinux 0x9d099a39 acpi_remove_gpe_handler +EXPORT_SYMBOL vmlinux 0x9d0d6206 unregister_netdevice_notifier +EXPORT_SYMBOL vmlinux 0x9d2e7707 unregister_sysrq_key +EXPORT_SYMBOL vmlinux 0x9d452925 arp_create +EXPORT_SYMBOL vmlinux 0x9d55d6a0 dquot_set_dqinfo +EXPORT_SYMBOL vmlinux 0x9d61e994 ucs2_strncmp +EXPORT_SYMBOL vmlinux 0x9d70541a native_save_fl +EXPORT_SYMBOL vmlinux 0x9d74faca skb_vlan_untag +EXPORT_SYMBOL vmlinux 0x9d8a497d da903x_query_status +EXPORT_SYMBOL vmlinux 0x9d92f3ad __wait_on_bit_lock +EXPORT_SYMBOL vmlinux 0x9d97ab2c audit_log_object_context +EXPORT_SYMBOL vmlinux 0x9dd10c05 padata_do_serial +EXPORT_SYMBOL vmlinux 0x9dd67b53 tcf_action_dump_1 +EXPORT_SYMBOL vmlinux 0x9ddf496e mmc_erase_group_aligned +EXPORT_SYMBOL vmlinux 0x9e021e9e __nd_driver_register +EXPORT_SYMBOL vmlinux 0x9e04d9d6 finish_no_open +EXPORT_SYMBOL vmlinux 0x9e0c711d vzalloc_node +EXPORT_SYMBOL vmlinux 0x9e0fa5ae hsiphash_3u32 +EXPORT_SYMBOL vmlinux 0x9e13f6f6 gf128mul_lle +EXPORT_SYMBOL vmlinux 0x9e1f556f param_get_long +EXPORT_SYMBOL vmlinux 0x9e2737f0 acpi_install_interface_handler +EXPORT_SYMBOL vmlinux 0x9e2b42f1 generic_file_splice_read +EXPORT_SYMBOL vmlinux 0x9e46a59c phy_do_ioctl_running +EXPORT_SYMBOL vmlinux 0x9e4cfca3 make_kuid +EXPORT_SYMBOL vmlinux 0x9e4faeef dm_io_client_destroy +EXPORT_SYMBOL vmlinux 0x9e57e3c5 md_bitmap_startwrite +EXPORT_SYMBOL vmlinux 0x9e584a92 udp_lib_get_port +EXPORT_SYMBOL vmlinux 0x9e61bb05 set_freezable +EXPORT_SYMBOL vmlinux 0x9e64fbfe rtc_cmos_read +EXPORT_SYMBOL vmlinux 0x9e683f75 __cpu_possible_mask +EXPORT_SYMBOL vmlinux 0x9e7d6bd0 __udelay +EXPORT_SYMBOL vmlinux 0x9e7f235c pskb_extract +EXPORT_SYMBOL vmlinux 0x9e9eab95 devcgroup_check_permission +EXPORT_SYMBOL vmlinux 0x9e9fdd9d memunmap +EXPORT_SYMBOL vmlinux 0x9ea53d7f vsnprintf +EXPORT_SYMBOL vmlinux 0x9eab8d85 _raw_write_lock_irq +EXPORT_SYMBOL vmlinux 0x9eaca814 kmem_cache_free_bulk +EXPORT_SYMBOL vmlinux 0x9eacf8a5 kstrndup +EXPORT_SYMBOL vmlinux 0x9ec0e639 twl6030_interrupt_unmask +EXPORT_SYMBOL vmlinux 0x9ec6ca96 ktime_get_real_ts64 +EXPORT_SYMBOL vmlinux 0x9ed978de vme_lm_set +EXPORT_SYMBOL vmlinux 0x9eea02ee sync_mapping_buffers +EXPORT_SYMBOL vmlinux 0x9efbbf15 vfs_dedupe_file_range_one +EXPORT_SYMBOL vmlinux 0x9f0e74dd user_path_create +EXPORT_SYMBOL vmlinux 0x9f0f950a dma_sync_wait +EXPORT_SYMBOL vmlinux 0x9f4300d8 arp_xmit +EXPORT_SYMBOL vmlinux 0x9f46ced8 __sw_hweight64 +EXPORT_SYMBOL vmlinux 0x9f47d9cc tcp_get_md5sig_pool +EXPORT_SYMBOL vmlinux 0x9f4f2aa3 acpi_gbl_FADT +EXPORT_SYMBOL vmlinux 0x9f50a4e2 abx500_event_registers_startup_state_get +EXPORT_SYMBOL vmlinux 0x9f50b770 keyring_restrict +EXPORT_SYMBOL vmlinux 0x9f54ead7 gro_cells_destroy +EXPORT_SYMBOL vmlinux 0x9f5adb14 backlight_device_unregister +EXPORT_SYMBOL vmlinux 0x9f63e1c0 scsi_eh_prep_cmnd +EXPORT_SYMBOL vmlinux 0x9f65c857 ZSTD_checkCParams +EXPORT_SYMBOL vmlinux 0x9f7fcf54 eth_header_parse +EXPORT_SYMBOL vmlinux 0x9f984513 strrchr +EXPORT_SYMBOL vmlinux 0x9fa7184a cancel_delayed_work_sync +EXPORT_SYMBOL vmlinux 0x9fb1d0ed uuid_is_valid +EXPORT_SYMBOL vmlinux 0x9fb4d65c fifo_set_limit +EXPORT_SYMBOL vmlinux 0x9fbfcf72 netlink_broadcast_filtered +EXPORT_SYMBOL vmlinux 0x9fc462f9 mmc_can_gpio_cd +EXPORT_SYMBOL vmlinux 0x9fc9220d inet_stream_connect +EXPORT_SYMBOL vmlinux 0x9fdc895a tcp_select_initial_window +EXPORT_SYMBOL vmlinux 0x9fdecc31 unregister_netdevice_many +EXPORT_SYMBOL vmlinux 0x9fe837bd inet_twsk_deschedule_put +EXPORT_SYMBOL vmlinux 0x9feed7ce timer_reduce +EXPORT_SYMBOL vmlinux 0x9ffa3a75 netdev_max_backlog +EXPORT_SYMBOL vmlinux 0x9ffead8d touchscreen_parse_properties +EXPORT_SYMBOL vmlinux 0x9fff0c80 devfreq_monitor_suspend +EXPORT_SYMBOL vmlinux 0xa00aca2a dql_completed +EXPORT_SYMBOL vmlinux 0xa01e6a92 simple_lookup +EXPORT_SYMBOL vmlinux 0xa02aa74a __cond_resched_lock +EXPORT_SYMBOL vmlinux 0xa02c0783 kill_pid +EXPORT_SYMBOL vmlinux 0xa0341a07 mipi_dsi_compression_mode +EXPORT_SYMBOL vmlinux 0xa037aca3 pcie_get_mps +EXPORT_SYMBOL vmlinux 0xa0428439 blk_rq_map_kern +EXPORT_SYMBOL vmlinux 0xa0436e98 in6addr_linklocal_allnodes +EXPORT_SYMBOL vmlinux 0xa0572e22 vmf_insert_mixed_prot +EXPORT_SYMBOL vmlinux 0xa057df8f twl_set_regcache_bypass +EXPORT_SYMBOL vmlinux 0xa06c7ba2 xfrm6_input_addr +EXPORT_SYMBOL vmlinux 0xa06ee985 unlock_buffer +EXPORT_SYMBOL vmlinux 0xa078fb66 napi_get_frags +EXPORT_SYMBOL vmlinux 0xa07a37f0 memchr +EXPORT_SYMBOL vmlinux 0xa084749a __bitmap_or +EXPORT_SYMBOL vmlinux 0xa084f79f cpumask_next_wrap +EXPORT_SYMBOL vmlinux 0xa087f8cf fs_context_for_reconfigure +EXPORT_SYMBOL vmlinux 0xa095e02e generic_check_addressable +EXPORT_SYMBOL vmlinux 0xa0992b5d phy_detach +EXPORT_SYMBOL vmlinux 0xa0ae1e73 siphash_3u64 +EXPORT_SYMBOL vmlinux 0xa0b04675 vmalloc_32 +EXPORT_SYMBOL vmlinux 0xa0bccc31 inet_csk_complete_hashdance +EXPORT_SYMBOL vmlinux 0xa0c7543c security_inode_notifysecctx +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 0xa0edab2b no_llseek +EXPORT_SYMBOL vmlinux 0xa0f152ce dump_skip +EXPORT_SYMBOL vmlinux 0xa0f6bdd3 twl6030_mmc_card_detect +EXPORT_SYMBOL vmlinux 0xa0fbac79 wake_up_bit +EXPORT_SYMBOL vmlinux 0xa108eb4d sysctl_optmem_max +EXPORT_SYMBOL vmlinux 0xa10ef161 __invalidate_device +EXPORT_SYMBOL vmlinux 0xa10ef90d mipi_dsi_dcs_soft_reset +EXPORT_SYMBOL vmlinux 0xa120d33c tty_unregister_ldisc +EXPORT_SYMBOL vmlinux 0xa1293224 netdev_set_num_tc +EXPORT_SYMBOL vmlinux 0xa13e780a gen_replace_estimator +EXPORT_SYMBOL vmlinux 0xa148ae6c vlan_filter_push_vids +EXPORT_SYMBOL vmlinux 0xa155c071 ZSTD_compressBegin_usingDict +EXPORT_SYMBOL vmlinux 0xa1587158 devm_clk_get_optional +EXPORT_SYMBOL vmlinux 0xa15e7cc3 netif_device_detach +EXPORT_SYMBOL vmlinux 0xa1624364 devm_rproc_alloc +EXPORT_SYMBOL vmlinux 0xa16c8613 _raw_read_unlock_irqrestore +EXPORT_SYMBOL vmlinux 0xa181067b get_tz_trend +EXPORT_SYMBOL vmlinux 0xa1aa23a5 dev_getfirstbyhwtype +EXPORT_SYMBOL vmlinux 0xa1b1e943 simple_unlink +EXPORT_SYMBOL vmlinux 0xa1bedd72 amd_iommu_pc_get_max_counters +EXPORT_SYMBOL vmlinux 0xa1ca97d7 rt6_lookup +EXPORT_SYMBOL vmlinux 0xa1d8d1bf devm_rproc_add +EXPORT_SYMBOL vmlinux 0xa1e67bfd mmput_async +EXPORT_SYMBOL vmlinux 0xa1e68c50 mmc_run_bkops +EXPORT_SYMBOL vmlinux 0xa1f61432 set_security_override +EXPORT_SYMBOL vmlinux 0xa1f9a134 __x86_indirect_thunk_rsi +EXPORT_SYMBOL vmlinux 0xa2060911 inet_current_timestamp +EXPORT_SYMBOL vmlinux 0xa2326c49 acpi_remove_table_handler +EXPORT_SYMBOL vmlinux 0xa23a8176 dquot_quota_on +EXPORT_SYMBOL vmlinux 0xa24f23d8 __request_module +EXPORT_SYMBOL vmlinux 0xa25b90ab utf8byte +EXPORT_SYMBOL vmlinux 0xa263892b fscrypt_fname_free_buffer +EXPORT_SYMBOL vmlinux 0xa273164b unregister_qdisc +EXPORT_SYMBOL vmlinux 0xa276c6cf from_kprojid_munged +EXPORT_SYMBOL vmlinux 0xa281a764 xp_set_rxq_info +EXPORT_SYMBOL vmlinux 0xa283c622 simple_dir_inode_operations +EXPORT_SYMBOL vmlinux 0xa28cfcc0 gen_estimator_active +EXPORT_SYMBOL vmlinux 0xa29447a6 genphy_read_status_fixed +EXPORT_SYMBOL vmlinux 0xa294f3ca eth_prepare_mac_addr_change +EXPORT_SYMBOL vmlinux 0xa297c785 i2c_smbus_read_word_data +EXPORT_SYMBOL vmlinux 0xa2b36f49 devm_iounmap +EXPORT_SYMBOL vmlinux 0xa2b70b49 dma_direct_sync_single_for_cpu +EXPORT_SYMBOL vmlinux 0xa2c5e232 __ip_queue_xmit +EXPORT_SYMBOL vmlinux 0xa2e5ea6f sock_create_kern +EXPORT_SYMBOL vmlinux 0xa2e9d83b fscrypt_put_encryption_info +EXPORT_SYMBOL vmlinux 0xa2f04092 crypto_sha1_finup +EXPORT_SYMBOL vmlinux 0xa30bcd6b config_group_init +EXPORT_SYMBOL vmlinux 0xa31e73fa vfs_get_link +EXPORT_SYMBOL vmlinux 0xa3284bd6 mmc_gpiod_request_cd +EXPORT_SYMBOL vmlinux 0xa3287f18 dcb_ieee_getapp_prio_dscp_mask_map +EXPORT_SYMBOL vmlinux 0xa32b6f62 inet6_register_protosw +EXPORT_SYMBOL vmlinux 0xa34ccbad generic_block_bmap +EXPORT_SYMBOL vmlinux 0xa35121fa mr_table_dump +EXPORT_SYMBOL vmlinux 0xa360f22c __scm_destroy +EXPORT_SYMBOL vmlinux 0xa3654308 serio_interrupt +EXPORT_SYMBOL vmlinux 0xa378aa96 vme_bus_num +EXPORT_SYMBOL vmlinux 0xa38f21b9 amd_iommu_update_ga +EXPORT_SYMBOL vmlinux 0xa3959915 iov_iter_zero +EXPORT_SYMBOL vmlinux 0xa3b1d001 fget_raw +EXPORT_SYMBOL vmlinux 0xa3d2e4c3 vme_register_error_handler +EXPORT_SYMBOL vmlinux 0xa3e11ee7 simple_transaction_get +EXPORT_SYMBOL vmlinux 0xa3e4f871 acpi_initialize_debugger +EXPORT_SYMBOL vmlinux 0xa3e936dd phy_attach +EXPORT_SYMBOL vmlinux 0xa3f1f843 ata_scsi_cmd_error_handler +EXPORT_SYMBOL vmlinux 0xa3fea172 sha224_final +EXPORT_SYMBOL vmlinux 0xa40e1740 posix_lock_file +EXPORT_SYMBOL vmlinux 0xa40ff01b acpi_dbg_layer +EXPORT_SYMBOL vmlinux 0xa4136b28 path_nosuid +EXPORT_SYMBOL vmlinux 0xa4191c0b memset_io +EXPORT_SYMBOL vmlinux 0xa41d6e42 truncate_pagecache_range +EXPORT_SYMBOL vmlinux 0xa43a4a9e scsi_change_queue_depth +EXPORT_SYMBOL vmlinux 0xa43e6dbc get_user_pages_unlocked +EXPORT_SYMBOL vmlinux 0xa447fe8c blk_queue_segment_boundary +EXPORT_SYMBOL vmlinux 0xa460e837 abx500_get_chip_id +EXPORT_SYMBOL vmlinux 0xa4797698 __find_get_block +EXPORT_SYMBOL vmlinux 0xa4a4b595 tty_port_put +EXPORT_SYMBOL vmlinux 0xa4b94fea iowrite8_rep +EXPORT_SYMBOL vmlinux 0xa4c8127c ZSTD_maxCLevel +EXPORT_SYMBOL vmlinux 0xa4d4f0e6 global_cache_flush +EXPORT_SYMBOL vmlinux 0xa4f4b336 dcache_dir_lseek +EXPORT_SYMBOL vmlinux 0xa4fa7b0a cdrom_open +EXPORT_SYMBOL vmlinux 0xa4faf62a acpi_disable_gpe +EXPORT_SYMBOL vmlinux 0xa4fec70c udp_seq_stop +EXPORT_SYMBOL vmlinux 0xa5056338 __hsiphash_aligned +EXPORT_SYMBOL vmlinux 0xa507125e acpi_clear_gpe +EXPORT_SYMBOL vmlinux 0xa50bcff0 x86_cpu_to_apicid +EXPORT_SYMBOL vmlinux 0xa52bedf6 xenbus_dev_request_and_reply +EXPORT_SYMBOL vmlinux 0xa5332829 netdev_lower_state_changed +EXPORT_SYMBOL vmlinux 0xa5526619 rb_insert_color +EXPORT_SYMBOL vmlinux 0xa5722596 sock_rfree +EXPORT_SYMBOL vmlinux 0xa5956abe ioread64_hi_lo +EXPORT_SYMBOL vmlinux 0xa5976e4f dev_base_lock +EXPORT_SYMBOL vmlinux 0xa5ac3e33 ZSTD_DCtxWorkspaceBound +EXPORT_SYMBOL vmlinux 0xa5d95c9e kernel_connect +EXPORT_SYMBOL vmlinux 0xa5e27ad0 __xfrm_route_forward +EXPORT_SYMBOL vmlinux 0xa5e55057 rdmsrl_safe_on_cpu +EXPORT_SYMBOL vmlinux 0xa5f0daa5 kmem_cache_shrink +EXPORT_SYMBOL vmlinux 0xa5fdad10 kthread_create_worker_on_cpu +EXPORT_SYMBOL vmlinux 0xa602ab74 pcix_get_max_mmrbc +EXPORT_SYMBOL vmlinux 0xa61ced89 qdisc_put_rtab +EXPORT_SYMBOL vmlinux 0xa6257a2f complete +EXPORT_SYMBOL vmlinux 0xa6317346 dev_pre_changeaddr_notify +EXPORT_SYMBOL vmlinux 0xa681fe88 generate_random_uuid +EXPORT_SYMBOL vmlinux 0xa6841fb6 tun_ptr_to_xdp +EXPORT_SYMBOL vmlinux 0xa68dd847 kmem_cache_destroy +EXPORT_SYMBOL vmlinux 0xa69717a3 rproc_mem_entry_init +EXPORT_SYMBOL vmlinux 0xa6afdf86 devm_pci_remap_iospace +EXPORT_SYMBOL vmlinux 0xa6d15940 mmc_command_done +EXPORT_SYMBOL vmlinux 0xa6f35872 jbd2__journal_restart +EXPORT_SYMBOL vmlinux 0xa6f4024d twl6040_reg_write +EXPORT_SYMBOL vmlinux 0xa70fabbe release_evntsel_nmi +EXPORT_SYMBOL vmlinux 0xa72cfb7d ioremap_wt +EXPORT_SYMBOL vmlinux 0xa72f9986 security_binder_transfer_binder +EXPORT_SYMBOL vmlinux 0xa74c9877 refcount_dec_and_rtnl_lock +EXPORT_SYMBOL vmlinux 0xa764d960 rproc_add_subdev +EXPORT_SYMBOL vmlinux 0xa77bfd29 register_inet6addr_validator_notifier +EXPORT_SYMBOL vmlinux 0xa77fe742 current_time +EXPORT_SYMBOL vmlinux 0xa78a3060 skb_abort_seq_read +EXPORT_SYMBOL vmlinux 0xa7ad3d2e register_shrinker +EXPORT_SYMBOL vmlinux 0xa7c92a09 rtnl_kfree_skbs +EXPORT_SYMBOL vmlinux 0xa7d5f92e ida_destroy +EXPORT_SYMBOL vmlinux 0xa7e38f12 flow_keys_basic_dissector +EXPORT_SYMBOL vmlinux 0xa7eedcc4 call_usermodehelper +EXPORT_SYMBOL vmlinux 0xa805ecfc acpi_release_global_lock +EXPORT_SYMBOL vmlinux 0xa812ba15 rproc_put +EXPORT_SYMBOL vmlinux 0xa8181adf proc_dointvec +EXPORT_SYMBOL vmlinux 0xa8216d8f freeze_super +EXPORT_SYMBOL vmlinux 0xa8288146 sock_no_ioctl +EXPORT_SYMBOL vmlinux 0xa8306b78 scaled_ppm_to_ppb +EXPORT_SYMBOL vmlinux 0xa83481ea remove_proc_subtree +EXPORT_SYMBOL vmlinux 0xa836ba02 wrmsr_safe_regs +EXPORT_SYMBOL vmlinux 0xa839e283 make_kprojid +EXPORT_SYMBOL vmlinux 0xa83d43a4 empty_aops +EXPORT_SYMBOL vmlinux 0xa843805a get_unused_fd_flags +EXPORT_SYMBOL vmlinux 0xa843aedc configfs_register_group +EXPORT_SYMBOL vmlinux 0xa843e8df migrate_vma_pages +EXPORT_SYMBOL vmlinux 0xa84788d3 pnp_start_dev +EXPORT_SYMBOL vmlinux 0xa84ce9e0 crypto_aes_inv_sbox +EXPORT_SYMBOL vmlinux 0xa853396b xa_extract +EXPORT_SYMBOL vmlinux 0xa85a3e6d xa_load +EXPORT_SYMBOL vmlinux 0xa8694ecd kblockd_schedule_work +EXPORT_SYMBOL vmlinux 0xa8770c07 md_integrity_register +EXPORT_SYMBOL vmlinux 0xa8888358 end_buffer_async_write +EXPORT_SYMBOL vmlinux 0xa8969879 crypto_sha512_update +EXPORT_SYMBOL vmlinux 0xa897e3e7 mempool_free +EXPORT_SYMBOL vmlinux 0xa8a3b1f7 mmc_cqe_post_req +EXPORT_SYMBOL vmlinux 0xa8a5797a twl6040_get_sysclk +EXPORT_SYMBOL vmlinux 0xa8afdc85 input_reset_device +EXPORT_SYMBOL vmlinux 0xa8c7037c page_symlink_inode_operations +EXPORT_SYMBOL vmlinux 0xa8caa845 clk_bulk_put_all +EXPORT_SYMBOL vmlinux 0xa8e6933a qdf2400_e44_present +EXPORT_SYMBOL vmlinux 0xa8e94c63 ata_dev_printk +EXPORT_SYMBOL vmlinux 0xa8ec319b ppp_register_channel +EXPORT_SYMBOL vmlinux 0xa8f6c843 ip_frag_ecn_table +EXPORT_SYMBOL vmlinux 0xa90ca0de flush_rcu_work +EXPORT_SYMBOL vmlinux 0xa916b694 strnlen +EXPORT_SYMBOL vmlinux 0xa931af8a asm_load_gs_index +EXPORT_SYMBOL vmlinux 0xa934bc4b flow_get_u32_dst +EXPORT_SYMBOL vmlinux 0xa94a09bb mem_section +EXPORT_SYMBOL vmlinux 0xa965ca81 reciprocal_value +EXPORT_SYMBOL vmlinux 0xa97463c9 __siphash_aligned +EXPORT_SYMBOL vmlinux 0xa9785b49 cpu_core_map +EXPORT_SYMBOL vmlinux 0xa9976b43 vga_put +EXPORT_SYMBOL vmlinux 0xa99b39c2 prandom_bytes +EXPORT_SYMBOL vmlinux 0xa9a8e17f arch_phys_wc_add +EXPORT_SYMBOL vmlinux 0xa9b16237 padata_alloc_possible +EXPORT_SYMBOL vmlinux 0xa9b52eb8 agp_generic_alloc_pages +EXPORT_SYMBOL vmlinux 0xa9c5c275 bio_free_pages +EXPORT_SYMBOL vmlinux 0xa9c72303 amd_iommu_pc_get_max_banks +EXPORT_SYMBOL vmlinux 0xa9dfbaff sock_no_connect +EXPORT_SYMBOL vmlinux 0xa9fedc5e pm_vt_switch_required +EXPORT_SYMBOL vmlinux 0xaa00fdc0 ec_transaction +EXPORT_SYMBOL vmlinux 0xaa1a6131 pci_msi_vec_count +EXPORT_SYMBOL vmlinux 0xaa1fa044 serial8250_register_8250_port +EXPORT_SYMBOL vmlinux 0xaa295b8b jbd2_journal_clear_err +EXPORT_SYMBOL vmlinux 0xaa2fba4d ipv6_chk_prefix +EXPORT_SYMBOL vmlinux 0xaa302a26 mdio_device_free +EXPORT_SYMBOL vmlinux 0xaa341905 acpi_bios_exception +EXPORT_SYMBOL vmlinux 0xaa38377d serio_rescan +EXPORT_SYMBOL vmlinux 0xaa61f1f4 filp_open +EXPORT_SYMBOL vmlinux 0xaa623bb4 tcf_exts_dump +EXPORT_SYMBOL vmlinux 0xaa6bade1 alloc_pages_vma +EXPORT_SYMBOL vmlinux 0xaa6f23ad rfkill_get_led_trigger_name +EXPORT_SYMBOL vmlinux 0xaa868ce7 param_ops_byte +EXPORT_SYMBOL vmlinux 0xaaa256cd phy_write_mmd +EXPORT_SYMBOL vmlinux 0xaaa4b9bc hchacha_block_generic +EXPORT_SYMBOL vmlinux 0xaad0ae78 __bitmap_shift_right +EXPORT_SYMBOL vmlinux 0xaad54767 user_path_at_empty +EXPORT_SYMBOL vmlinux 0xaad6d92f rfkill_init_sw_state +EXPORT_SYMBOL vmlinux 0xaad8c7d6 default_wake_function +EXPORT_SYMBOL vmlinux 0xaae8ab0e acpi_bus_power_manageable +EXPORT_SYMBOL vmlinux 0xaafbe69a put_devmap_managed_page +EXPORT_SYMBOL vmlinux 0xaafdc258 strcasecmp +EXPORT_SYMBOL vmlinux 0xab1b586c mmc_wait_for_req +EXPORT_SYMBOL vmlinux 0xab1de458 ps2_command +EXPORT_SYMBOL vmlinux 0xab2c3ba0 make_bad_inode +EXPORT_SYMBOL vmlinux 0xab3697e4 irq_poll_init +EXPORT_SYMBOL vmlinux 0xab3b75ea vme_dma_pattern_attribute +EXPORT_SYMBOL vmlinux 0xab3c67e5 skb_copy_and_csum_bits +EXPORT_SYMBOL vmlinux 0xab3f995d input_flush_device +EXPORT_SYMBOL vmlinux 0xab447203 generic_error_remove_page +EXPORT_SYMBOL vmlinux 0xab4841b7 new_inode +EXPORT_SYMBOL vmlinux 0xab600421 probe_irq_off +EXPORT_SYMBOL vmlinux 0xab629ce9 vlan_vid_add +EXPORT_SYMBOL vmlinux 0xab63baa5 unregister_inetaddr_validator_notifier +EXPORT_SYMBOL vmlinux 0xab65ed80 set_memory_uc +EXPORT_SYMBOL vmlinux 0xab67a0ac dql_init +EXPORT_SYMBOL vmlinux 0xab6fd704 tty_throttle +EXPORT_SYMBOL vmlinux 0xab735372 ipmi_dmi_get_slave_addr +EXPORT_SYMBOL vmlinux 0xab74bfef amd_iommu_domain_enable_v2 +EXPORT_SYMBOL vmlinux 0xab781570 fb_get_options +EXPORT_SYMBOL vmlinux 0xab7b8e68 __x86_retpoline_rbx +EXPORT_SYMBOL vmlinux 0xab898a04 bio_copy_data +EXPORT_SYMBOL vmlinux 0xab9040aa phy_set_asym_pause +EXPORT_SYMBOL vmlinux 0xaba21422 simple_write_begin +EXPORT_SYMBOL vmlinux 0xaba81805 xps_rxqs_needed +EXPORT_SYMBOL vmlinux 0xabab1c6d mmc_of_parse +EXPORT_SYMBOL vmlinux 0xabacad3c do_splice_direct +EXPORT_SYMBOL vmlinux 0xabb99952 param_get_byte +EXPORT_SYMBOL vmlinux 0xabc17bcb get_user_pages_remote +EXPORT_SYMBOL vmlinux 0xabc4bb27 xfrm_state_register_afinfo +EXPORT_SYMBOL vmlinux 0xabc52e35 dget_parent +EXPORT_SYMBOL vmlinux 0xabc91e54 key_payload_reserve +EXPORT_SYMBOL vmlinux 0xabd3cce0 zerocopy_sg_from_iter +EXPORT_SYMBOL vmlinux 0xabdb67e7 xfrm_state_delete +EXPORT_SYMBOL vmlinux 0xabe7f849 tty_port_open +EXPORT_SYMBOL vmlinux 0xabf32f29 utf16s_to_utf8s +EXPORT_SYMBOL vmlinux 0xabfe6aa0 napi_gro_receive +EXPORT_SYMBOL vmlinux 0xac00f793 xfrm_state_add +EXPORT_SYMBOL vmlinux 0xac03cbfa phy_read_paged +EXPORT_SYMBOL vmlinux 0xac06c2a6 kill_anon_super +EXPORT_SYMBOL vmlinux 0xac0a86f6 devm_pci_remap_cfgspace +EXPORT_SYMBOL vmlinux 0xac1a55be unregister_reboot_notifier +EXPORT_SYMBOL vmlinux 0xac3201b0 udp_flow_hashrnd +EXPORT_SYMBOL vmlinux 0xac354c34 xp_raw_get_dma +EXPORT_SYMBOL vmlinux 0xac537ac2 percpu_counter_destroy +EXPORT_SYMBOL vmlinux 0xac5811c1 bio_uninit +EXPORT_SYMBOL vmlinux 0xac5fcec0 in4_pton +EXPORT_SYMBOL vmlinux 0xac704234 tcf_get_next_chain +EXPORT_SYMBOL vmlinux 0xac7c7f50 key_task_permission +EXPORT_SYMBOL vmlinux 0xac8597d5 mb_cache_entry_get +EXPORT_SYMBOL vmlinux 0xac94e86b vsprintf +EXPORT_SYMBOL vmlinux 0xaca6bf21 find_lock_entry +EXPORT_SYMBOL vmlinux 0xaca86682 devm_backlight_device_unregister +EXPORT_SYMBOL vmlinux 0xacaa4c72 dma_fence_match_context +EXPORT_SYMBOL vmlinux 0xacab29b7 seq_hlist_start_percpu +EXPORT_SYMBOL vmlinux 0xacac47d7 fb_validate_mode +EXPORT_SYMBOL vmlinux 0xacbcc2b0 scsi_report_opcode +EXPORT_SYMBOL vmlinux 0xacd01fb3 netif_tx_wake_queue +EXPORT_SYMBOL vmlinux 0xacd23858 splice_direct_to_actor +EXPORT_SYMBOL vmlinux 0xacd81eb3 jbd2_inode_cache +EXPORT_SYMBOL vmlinux 0xacea8173 acpi_debug_print +EXPORT_SYMBOL vmlinux 0xacf2c654 dqput +EXPORT_SYMBOL vmlinux 0xacf4d843 match_strdup +EXPORT_SYMBOL vmlinux 0xacf649bf audit_log_task_info +EXPORT_SYMBOL vmlinux 0xacf84200 fb_pan_display +EXPORT_SYMBOL vmlinux 0xacfbe245 jbd2_journal_stop +EXPORT_SYMBOL vmlinux 0xad0413d4 match_hex +EXPORT_SYMBOL vmlinux 0xad071d60 max8998_update_reg +EXPORT_SYMBOL vmlinux 0xad1036a2 amd_iommu_activate_guest_mode +EXPORT_SYMBOL vmlinux 0xad131544 sock_wfree +EXPORT_SYMBOL vmlinux 0xad2951a9 ex_handler_rdmsr_unsafe +EXPORT_SYMBOL vmlinux 0xad2f9572 put_cmsg +EXPORT_SYMBOL vmlinux 0xad3acf74 gnet_stats_copy_queue +EXPORT_SYMBOL vmlinux 0xad43ab96 sock_i_ino +EXPORT_SYMBOL vmlinux 0xad48cfaf jbd2_journal_force_commit +EXPORT_SYMBOL vmlinux 0xad4ed252 register_key_type +EXPORT_SYMBOL vmlinux 0xad501255 compat_ip_setsockopt +EXPORT_SYMBOL vmlinux 0xad536c91 x86_cpu_to_acpiid +EXPORT_SYMBOL vmlinux 0xad63391d pci_find_capability +EXPORT_SYMBOL vmlinux 0xad6ba40e radix_tree_tag_get +EXPORT_SYMBOL vmlinux 0xad6dae7d seq_dentry +EXPORT_SYMBOL vmlinux 0xad73041f autoremove_wake_function +EXPORT_SYMBOL vmlinux 0xad750486 rdmacg_uncharge +EXPORT_SYMBOL vmlinux 0xad84bef8 dm_table_event +EXPORT_SYMBOL vmlinux 0xad9901ae bit_waitqueue +EXPORT_SYMBOL vmlinux 0xad995dac netdev_stats_to_stats64 +EXPORT_SYMBOL vmlinux 0xada31e57 gen_pool_dma_alloc_align +EXPORT_SYMBOL vmlinux 0xada5cba5 genphy_update_link +EXPORT_SYMBOL vmlinux 0xadaaaa11 scsi_print_sense +EXPORT_SYMBOL vmlinux 0xadb0ced9 vfs_get_super +EXPORT_SYMBOL vmlinux 0xadbeed61 mipi_dsi_packet_format_is_long +EXPORT_SYMBOL vmlinux 0xadc044b7 vfio_set_irqs_validate_and_prepare +EXPORT_SYMBOL vmlinux 0xadcba50b ZSTD_findFrameCompressedSize +EXPORT_SYMBOL vmlinux 0xadd139d4 rfs_needed +EXPORT_SYMBOL vmlinux 0xade1020b max8998_bulk_write +EXPORT_SYMBOL vmlinux 0xadf9d179 pci_fixup_device +EXPORT_SYMBOL vmlinux 0xadfdfcef __bitmap_andnot +EXPORT_SYMBOL vmlinux 0xae04012c __vmalloc +EXPORT_SYMBOL vmlinux 0xae09dee1 register_framebuffer +EXPORT_SYMBOL vmlinux 0xae189a67 md_check_recovery +EXPORT_SYMBOL vmlinux 0xae316c11 icmpv6_err_convert +EXPORT_SYMBOL vmlinux 0xae3a425f put_cmsg_scm_timestamping +EXPORT_SYMBOL vmlinux 0xae46bb63 nvm_register +EXPORT_SYMBOL vmlinux 0xae4cc80e __tty_insert_flip_char +EXPORT_SYMBOL vmlinux 0xae5a04bb acpi_evaluate_dsm +EXPORT_SYMBOL vmlinux 0xae65fe90 __hw_addr_unsync_dev +EXPORT_SYMBOL vmlinux 0xae7e3a35 mutex_trylock_recursive +EXPORT_SYMBOL vmlinux 0xae92928b page_pool_alloc_pages +EXPORT_SYMBOL vmlinux 0xaea5f6d8 cdrom_get_media_event +EXPORT_SYMBOL vmlinux 0xaeac049a generate_random_guid +EXPORT_SYMBOL vmlinux 0xaeba72a5 kobject_get +EXPORT_SYMBOL vmlinux 0xaebd12f0 acpi_get_name +EXPORT_SYMBOL vmlinux 0xaec60722 abort_creds +EXPORT_SYMBOL vmlinux 0xaec7b59f mmc_gpio_set_cd_wake +EXPORT_SYMBOL vmlinux 0xaec8631d inet_frag_reasm_finish +EXPORT_SYMBOL vmlinux 0xaecb89ee copy_page_from_iter +EXPORT_SYMBOL vmlinux 0xaed2565f irq_domain_set_info +EXPORT_SYMBOL vmlinux 0xaeda52cd icmp_ndo_send +EXPORT_SYMBOL vmlinux 0xaee5e14d block_write_full_page +EXPORT_SYMBOL vmlinux 0xaeee3b4e page_pool_create +EXPORT_SYMBOL vmlinux 0xaef50b95 nf_log_packet +EXPORT_SYMBOL vmlinux 0xaef9ff6c vfs_statfs +EXPORT_SYMBOL vmlinux 0xaefc4eab fscrypt_encrypt_pagecache_blocks +EXPORT_SYMBOL vmlinux 0xaf085f71 sk_stream_error +EXPORT_SYMBOL vmlinux 0xaf14b099 sync_file_create +EXPORT_SYMBOL vmlinux 0xaf354bbe cpu_tss_rw +EXPORT_SYMBOL vmlinux 0xaf3dd7dc scsi_logging_level +EXPORT_SYMBOL vmlinux 0xaf4d952c clocksource_unregister +EXPORT_SYMBOL vmlinux 0xaf4fe1a2 mmc_detect_change +EXPORT_SYMBOL vmlinux 0xaf529f17 blk_set_runtime_active +EXPORT_SYMBOL vmlinux 0xaf714eb0 __genphy_config_aneg +EXPORT_SYMBOL vmlinux 0xaf7c5922 agp_put_bridge +EXPORT_SYMBOL vmlinux 0xaf840202 phy_modify_paged_changed +EXPORT_SYMBOL vmlinux 0xafa0fa34 iter_file_splice_write +EXPORT_SYMBOL vmlinux 0xafa42de3 register_nexthop_notifier +EXPORT_SYMBOL vmlinux 0xafa46783 rproc_report_crash +EXPORT_SYMBOL vmlinux 0xafa5ae3a free_task +EXPORT_SYMBOL vmlinux 0xafb8c6ff copy_user_generic_string +EXPORT_SYMBOL vmlinux 0xafbb4b37 to_ndd +EXPORT_SYMBOL vmlinux 0xafd5ff2c amd_iommu_v2_supported +EXPORT_SYMBOL vmlinux 0xafdd768f xp_dma_sync_for_device_slow +EXPORT_SYMBOL vmlinux 0xafe8ec9b clkdev_hw_alloc +EXPORT_SYMBOL vmlinux 0xb00a17d7 mount_single +EXPORT_SYMBOL vmlinux 0xb0132614 block_read_full_page +EXPORT_SYMBOL vmlinux 0xb01bebf9 xfrm_get_acqseq +EXPORT_SYMBOL vmlinux 0xb01c7da3 genphy_config_eee_advert +EXPORT_SYMBOL vmlinux 0xb01ebac2 scsi_add_device +EXPORT_SYMBOL vmlinux 0xb01f2452 sk_capable +EXPORT_SYMBOL vmlinux 0xb0392201 unix_detach_fds +EXPORT_SYMBOL vmlinux 0xb0395ea1 neigh_seq_stop +EXPORT_SYMBOL vmlinux 0xb040bda7 inet_get_local_port_range +EXPORT_SYMBOL vmlinux 0xb05fc310 sysctl_rmem_max +EXPORT_SYMBOL vmlinux 0xb061a98a mutex_lock_killable +EXPORT_SYMBOL vmlinux 0xb07fcefa locks_copy_conflock +EXPORT_SYMBOL vmlinux 0xb0860a1c seq_read_iter +EXPORT_SYMBOL vmlinux 0xb095d8a8 devm_ioport_unmap +EXPORT_SYMBOL vmlinux 0xb0966b3a scsi_test_unit_ready +EXPORT_SYMBOL vmlinux 0xb0a0da0c rational_best_approximation +EXPORT_SYMBOL vmlinux 0xb0aed408 ZSTD_compressStream +EXPORT_SYMBOL vmlinux 0xb0b356a7 xfrm_policy_walk_done +EXPORT_SYMBOL vmlinux 0xb0bcd4c3 sg_miter_next +EXPORT_SYMBOL vmlinux 0xb0c5e247 lockref_put_return +EXPORT_SYMBOL vmlinux 0xb0dfc005 tty_port_close_start +EXPORT_SYMBOL vmlinux 0xb0e10781 get_option +EXPORT_SYMBOL vmlinux 0xb0e602eb memmove +EXPORT_SYMBOL vmlinux 0xb0ed560a devm_nvmem_cell_put +EXPORT_SYMBOL vmlinux 0xb0f389ee utf8_normalize +EXPORT_SYMBOL vmlinux 0xb0f753c7 sock_bind_add +EXPORT_SYMBOL vmlinux 0xb0fcef50 __netlink_dump_start +EXPORT_SYMBOL vmlinux 0xb1061456 register_mii_timestamper +EXPORT_SYMBOL vmlinux 0xb10708f5 backlight_device_get_by_type +EXPORT_SYMBOL vmlinux 0xb10e7df4 __kfifo_dma_in_prepare +EXPORT_SYMBOL vmlinux 0xb1113f5b fs_lookup_param +EXPORT_SYMBOL vmlinux 0xb11de022 sg_miter_stop +EXPORT_SYMBOL vmlinux 0xb121390a probe_irq_on +EXPORT_SYMBOL vmlinux 0xb12c8782 rproc_remove_subdev +EXPORT_SYMBOL vmlinux 0xb12cbacb fb_unregister_client +EXPORT_SYMBOL vmlinux 0xb135d998 igrab +EXPORT_SYMBOL vmlinux 0xb13fa784 skb_clone_sk +EXPORT_SYMBOL vmlinux 0xb14ab1ef hdmi_audio_infoframe_init +EXPORT_SYMBOL vmlinux 0xb14fc46a find_next_clump8 +EXPORT_SYMBOL vmlinux 0xb165062d tty_port_init +EXPORT_SYMBOL vmlinux 0xb16900ad cmdline_parts_parse +EXPORT_SYMBOL vmlinux 0xb19a5453 __per_cpu_offset +EXPORT_SYMBOL vmlinux 0xb1a5ab8c on_each_cpu_cond +EXPORT_SYMBOL vmlinux 0xb1b3e40f mmc_can_gpio_ro +EXPORT_SYMBOL vmlinux 0xb1ba395c __tcp_md5_do_lookup +EXPORT_SYMBOL vmlinux 0xb1c3a01a oops_in_progress +EXPORT_SYMBOL vmlinux 0xb1c50b23 _dev_alert +EXPORT_SYMBOL vmlinux 0xb1dbcb2f devm_devfreq_unregister_opp_notifier +EXPORT_SYMBOL vmlinux 0xb1ddf995 jiffies_64_to_clock_t +EXPORT_SYMBOL vmlinux 0xb1e12d81 krealloc +EXPORT_SYMBOL vmlinux 0xb1eda160 vfs_setpos +EXPORT_SYMBOL vmlinux 0xb1fde53b nf_register_net_hook +EXPORT_SYMBOL vmlinux 0xb219d56c wbinvd_on_cpu +EXPORT_SYMBOL vmlinux 0xb220edd7 param_ops_invbool +EXPORT_SYMBOL vmlinux 0xb224bdbc simple_dentry_operations +EXPORT_SYMBOL vmlinux 0xb225d3a3 generic_delete_inode +EXPORT_SYMBOL vmlinux 0xb22e16d5 radix_tree_maybe_preload +EXPORT_SYMBOL vmlinux 0xb243e5de icmpv6_ndo_send +EXPORT_SYMBOL vmlinux 0xb26051f8 agp_generic_enable +EXPORT_SYMBOL vmlinux 0xb262418b devm_clk_hw_register_clkdev +EXPORT_SYMBOL vmlinux 0xb2644ce7 console_start +EXPORT_SYMBOL vmlinux 0xb28c6ac8 unix_destruct_scm +EXPORT_SYMBOL vmlinux 0xb29b4ad7 mmc_sw_reset +EXPORT_SYMBOL vmlinux 0xb2ac3e6c ipv6_dev_mc_inc +EXPORT_SYMBOL vmlinux 0xb2b810eb eisa_driver_register +EXPORT_SYMBOL vmlinux 0xb2bcb088 acpi_current_gpe_count +EXPORT_SYMBOL vmlinux 0xb2be9946 serio_unregister_child_port +EXPORT_SYMBOL vmlinux 0xb2c00813 flow_rule_match_enc_keyid +EXPORT_SYMBOL vmlinux 0xb2e93179 ipv6_find_hdr +EXPORT_SYMBOL vmlinux 0xb2f0e3bd qdisc_warn_nonwc +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 0xb3046f72 blk_queue_bounce_limit +EXPORT_SYMBOL vmlinux 0xb308c97d wait_woken +EXPORT_SYMBOL vmlinux 0xb30b9822 vme_master_set +EXPORT_SYMBOL vmlinux 0xb319d1a3 __neigh_create +EXPORT_SYMBOL vmlinux 0xb320cc0e sg_init_one +EXPORT_SYMBOL vmlinux 0xb328549d __nla_reserve_nohdr +EXPORT_SYMBOL vmlinux 0xb32a5973 acpi_ut_status_exit +EXPORT_SYMBOL vmlinux 0xb33c219f posix_acl_chmod +EXPORT_SYMBOL vmlinux 0xb34129fa neigh_event_ns +EXPORT_SYMBOL vmlinux 0xb348c1ea mdio_driver_register +EXPORT_SYMBOL vmlinux 0xb352177e find_first_bit +EXPORT_SYMBOL vmlinux 0xb359cf97 seq_release_private +EXPORT_SYMBOL vmlinux 0xb3635b01 _raw_spin_lock_bh +EXPORT_SYMBOL vmlinux 0xb3687850 out_of_line_wait_on_bit_lock +EXPORT_SYMBOL vmlinux 0xb3740181 xdp_get_umem_from_qid +EXPORT_SYMBOL vmlinux 0xb381e9a2 skb_free_datagram +EXPORT_SYMBOL vmlinux 0xb3863a67 acpi_set_gpe_wake_mask +EXPORT_SYMBOL vmlinux 0xb3a2dfdf nmi_panic +EXPORT_SYMBOL vmlinux 0xb3ae2850 ioc_lookup_icq +EXPORT_SYMBOL vmlinux 0xb3bd68cc security_secmark_relabel_packet +EXPORT_SYMBOL vmlinux 0xb3bf725a xfrm_register_type_offload +EXPORT_SYMBOL vmlinux 0xb3d2c76d scsi_hostbyte_string +EXPORT_SYMBOL vmlinux 0xb3d3a6af i2c_transfer_buffer_flags +EXPORT_SYMBOL vmlinux 0xb3f548ad kmemdup_nul +EXPORT_SYMBOL vmlinux 0xb3f7646e kthread_should_stop +EXPORT_SYMBOL vmlinux 0xb4043948 acpi_execute_simple_method +EXPORT_SYMBOL vmlinux 0xb40b1238 __i2c_transfer +EXPORT_SYMBOL vmlinux 0xb417f082 kstrtos8_from_user +EXPORT_SYMBOL vmlinux 0xb421b404 iov_iter_get_pages_alloc +EXPORT_SYMBOL vmlinux 0xb423dba1 console_blanked +EXPORT_SYMBOL vmlinux 0xb4323bd9 blk_mq_stop_hw_queue +EXPORT_SYMBOL vmlinux 0xb435fbfc security_inode_init_security +EXPORT_SYMBOL vmlinux 0xb43c5e98 scsi_unblock_requests +EXPORT_SYMBOL vmlinux 0xb44ad4b3 _copy_to_user +EXPORT_SYMBOL vmlinux 0xb4511079 inet_add_protocol +EXPORT_SYMBOL vmlinux 0xb456fb93 pcim_iounmap_regions +EXPORT_SYMBOL vmlinux 0xb4577003 acpi_dev_present +EXPORT_SYMBOL vmlinux 0xb45ab4dc mr_dump +EXPORT_SYMBOL vmlinux 0xb45b3f76 agp_unbind_memory +EXPORT_SYMBOL vmlinux 0xb45be943 fb_set_cmap +EXPORT_SYMBOL vmlinux 0xb47cca30 csum_ipv6_magic +EXPORT_SYMBOL vmlinux 0xb48d4d22 security_sb_eat_lsm_opts +EXPORT_SYMBOL vmlinux 0xb4985beb ZSTD_resetCStream +EXPORT_SYMBOL vmlinux 0xb4aa1660 vfs_llseek +EXPORT_SYMBOL vmlinux 0xb4b29539 nf_log_unset +EXPORT_SYMBOL vmlinux 0xb4c935e7 to_nd_dax +EXPORT_SYMBOL vmlinux 0xb4d01d85 mfd_add_devices +EXPORT_SYMBOL vmlinux 0xb4d3c47b pci_write_vpd +EXPORT_SYMBOL vmlinux 0xb4e701db netpoll_send_skb +EXPORT_SYMBOL vmlinux 0xb4e9c9a1 genl_register_family +EXPORT_SYMBOL vmlinux 0xb4f13d2a abort +EXPORT_SYMBOL vmlinux 0xb4f622b9 bio_reset +EXPORT_SYMBOL vmlinux 0xb4ffe1ec devm_kvasprintf +EXPORT_SYMBOL vmlinux 0xb50e9569 pci_setup_cardbus +EXPORT_SYMBOL vmlinux 0xb52ee8be intel_gtt_clear_range +EXPORT_SYMBOL vmlinux 0xb53f2810 tcp_sockets_allocated +EXPORT_SYMBOL vmlinux 0xb5616a39 iov_iter_init +EXPORT_SYMBOL vmlinux 0xb561e6d3 vme_dma_request +EXPORT_SYMBOL vmlinux 0xb57343c2 frontswap_shrink +EXPORT_SYMBOL vmlinux 0xb574c04c pci_enable_device_io +EXPORT_SYMBOL vmlinux 0xb582337d pci_dev_put +EXPORT_SYMBOL vmlinux 0xb58aeaab kernel_cpustat +EXPORT_SYMBOL vmlinux 0xb58ed8fd acpi_register_debugger +EXPORT_SYMBOL vmlinux 0xb5a459dc unregister_blkdev +EXPORT_SYMBOL vmlinux 0xb5a4e9f4 mdiobus_free +EXPORT_SYMBOL vmlinux 0xb5aa7165 dma_pool_destroy +EXPORT_SYMBOL vmlinux 0xb5ab892d uv_undefined +EXPORT_SYMBOL vmlinux 0xb5b08254 netdev_has_upper_dev +EXPORT_SYMBOL vmlinux 0xb5b1649e flow_rule_match_mpls +EXPORT_SYMBOL vmlinux 0xb5e3bcfb agp_generic_mask_memory +EXPORT_SYMBOL vmlinux 0xb5e73116 flush_delayed_work +EXPORT_SYMBOL vmlinux 0xb5f08c5d vm_map_pages_zero +EXPORT_SYMBOL vmlinux 0xb601be4c __x86_indirect_thunk_rdx +EXPORT_SYMBOL vmlinux 0xb608fbed param_get_int +EXPORT_SYMBOL vmlinux 0xb618dab1 netdev_lower_get_next_private_rcu +EXPORT_SYMBOL vmlinux 0xb633f115 irq_poll_enable +EXPORT_SYMBOL vmlinux 0xb638a2fc security_sock_rcv_skb +EXPORT_SYMBOL vmlinux 0xb641b65b blk_pre_runtime_resume +EXPORT_SYMBOL vmlinux 0xb649c07b security_path_mkdir +EXPORT_SYMBOL vmlinux 0xb654ef65 acpi_os_read_port +EXPORT_SYMBOL vmlinux 0xb65b5006 dev_change_carrier +EXPORT_SYMBOL vmlinux 0xb6667e0a pci_find_bus +EXPORT_SYMBOL vmlinux 0xb674a534 acpi_unmap_cpu +EXPORT_SYMBOL vmlinux 0xb678366f int_sqrt +EXPORT_SYMBOL vmlinux 0xb67baae2 nla_reserve +EXPORT_SYMBOL vmlinux 0xb67c9280 utf8cursor +EXPORT_SYMBOL vmlinux 0xb67fec0e uuid_parse +EXPORT_SYMBOL vmlinux 0xb6936ffe _bcd2bin +EXPORT_SYMBOL vmlinux 0xb69a4e9a xfrm4_protocol_register +EXPORT_SYMBOL vmlinux 0xb6a3da09 i2c_smbus_write_block_data +EXPORT_SYMBOL vmlinux 0xb6a68816 find_last_bit +EXPORT_SYMBOL vmlinux 0xb6acaa13 phy_sfp_detach +EXPORT_SYMBOL vmlinux 0xb6af54fe console_stop +EXPORT_SYMBOL vmlinux 0xb6b13ada vme_unregister_bridge +EXPORT_SYMBOL vmlinux 0xb6b98649 genphy_read_mmd_unsupported +EXPORT_SYMBOL vmlinux 0xb6d12179 dev_driver_string +EXPORT_SYMBOL vmlinux 0xb6d6d99a tty_unthrottle +EXPORT_SYMBOL vmlinux 0xb6eb8513 agp_generic_destroy_pages +EXPORT_SYMBOL vmlinux 0xb6fb841c blk_queue_max_segments +EXPORT_SYMBOL vmlinux 0xb71b031e md_bitmap_unplug +EXPORT_SYMBOL vmlinux 0xb71c1481 jbd2_journal_dirty_metadata +EXPORT_SYMBOL vmlinux 0xb7272841 address_space_init_once +EXPORT_SYMBOL vmlinux 0xb72bae5d jbd2_transaction_committed +EXPORT_SYMBOL vmlinux 0xb7371ac7 ptp_find_pin +EXPORT_SYMBOL vmlinux 0xb737b185 gen_pool_best_fit +EXPORT_SYMBOL vmlinux 0xb73a8c1c agp_generic_remove_memory +EXPORT_SYMBOL vmlinux 0xb74e350d __skb_flow_get_ports +EXPORT_SYMBOL vmlinux 0xb758f077 noop_qdisc +EXPORT_SYMBOL vmlinux 0xb7593ddc iosf_mbi_unregister_pmic_bus_access_notifier +EXPORT_SYMBOL vmlinux 0xb76add77 tcp_sock_set_nodelay +EXPORT_SYMBOL vmlinux 0xb77a46d8 fscrypt_fname_disk_to_usr +EXPORT_SYMBOL vmlinux 0xb77a50c9 nobh_truncate_page +EXPORT_SYMBOL vmlinux 0xb77e14c2 dma_cache_sync +EXPORT_SYMBOL vmlinux 0xb7853c4b __ClearPageMovable +EXPORT_SYMBOL vmlinux 0xb78debe3 LZ4_decompress_fast_usingDict +EXPORT_SYMBOL vmlinux 0xb79f18df fput +EXPORT_SYMBOL vmlinux 0xb7a579d1 blk_queue_update_dma_alignment +EXPORT_SYMBOL vmlinux 0xb7bf6442 blk_get_request +EXPORT_SYMBOL vmlinux 0xb7c0f443 sort +EXPORT_SYMBOL vmlinux 0xb7c6db70 sysctl_max_skb_frags +EXPORT_SYMBOL vmlinux 0xb7dbd3c9 scsi_report_bus_reset +EXPORT_SYMBOL vmlinux 0xb7e9f200 is_acpi_device_node +EXPORT_SYMBOL vmlinux 0xb7fe3fe1 inode_init_owner +EXPORT_SYMBOL vmlinux 0xb80ac494 __skb_free_datagram_locked +EXPORT_SYMBOL vmlinux 0xb814e18a on_each_cpu_mask +EXPORT_SYMBOL vmlinux 0xb81bb399 input_set_timestamp +EXPORT_SYMBOL vmlinux 0xb81be926 lock_rename +EXPORT_SYMBOL vmlinux 0xb81c509a ptp_clock_index +EXPORT_SYMBOL vmlinux 0xb8286f67 iov_iter_for_each_range +EXPORT_SYMBOL vmlinux 0xb82e7e85 sget_fc +EXPORT_SYMBOL vmlinux 0xb83129db ZSTD_decompressContinue +EXPORT_SYMBOL vmlinux 0xb868ac5c register_sysrq_key +EXPORT_SYMBOL vmlinux 0xb8693a99 vm_iomap_memory +EXPORT_SYMBOL vmlinux 0xb86a3b57 agp_bind_memory +EXPORT_SYMBOL vmlinux 0xb86f74c5 free_cpumask_var +EXPORT_SYMBOL vmlinux 0xb8757c58 simple_transaction_release +EXPORT_SYMBOL vmlinux 0xb89a9593 pci_alloc_irq_vectors_affinity +EXPORT_SYMBOL vmlinux 0xb89b6e6b guid_parse +EXPORT_SYMBOL vmlinux 0xb89c0261 iput +EXPORT_SYMBOL vmlinux 0xb8b043f2 kfree_link +EXPORT_SYMBOL vmlinux 0xb8b9f817 kmalloc_order_trace +EXPORT_SYMBOL vmlinux 0xb8d43cac udp_set_csum +EXPORT_SYMBOL vmlinux 0xb8e7ce2c __put_user_8 +EXPORT_SYMBOL vmlinux 0xb8e9de7b generic_fillattr +EXPORT_SYMBOL vmlinux 0xb8e9f19e _copy_to_iter +EXPORT_SYMBOL vmlinux 0xb8eb6d9c flow_block_cb_lookup +EXPORT_SYMBOL vmlinux 0xb8ed0396 unlock_page +EXPORT_SYMBOL vmlinux 0xb8f7dece param_ops_bint +EXPORT_SYMBOL vmlinux 0xb9056bb6 remove_conflicting_framebuffers +EXPORT_SYMBOL vmlinux 0xb907513f unpoison_memory +EXPORT_SYMBOL vmlinux 0xb911bb58 minmax_running_max +EXPORT_SYMBOL vmlinux 0xb94339c4 qdisc_put_stab +EXPORT_SYMBOL vmlinux 0xb96d1a0a __ip_select_ident +EXPORT_SYMBOL vmlinux 0xb97220ff bitmap_parse +EXPORT_SYMBOL vmlinux 0xb97f7045 acpi_install_gpe_handler +EXPORT_SYMBOL vmlinux 0xb98c8330 dst_discard_out +EXPORT_SYMBOL vmlinux 0xb9ad6464 kobject_add +EXPORT_SYMBOL vmlinux 0xb9af1d0d __xa_clear_mark +EXPORT_SYMBOL vmlinux 0xb9c86c51 mipi_dsi_turn_on_peripheral +EXPORT_SYMBOL vmlinux 0xb9dee26e unregister_filesystem +EXPORT_SYMBOL vmlinux 0xb9e276cf wrmsr_safe_regs_on_cpu +EXPORT_SYMBOL vmlinux 0xb9e7429c memcpy_toio +EXPORT_SYMBOL vmlinux 0xb9e7f1a7 ip_options_compile +EXPORT_SYMBOL vmlinux 0xb9e8e2cc in6addr_sitelocal_allrouters +EXPORT_SYMBOL vmlinux 0xb9ea99e3 generic_cont_expand_simple +EXPORT_SYMBOL vmlinux 0xb9f01563 skb_realloc_headroom +EXPORT_SYMBOL vmlinux 0xb9fe6786 devm_memremap +EXPORT_SYMBOL vmlinux 0xba043c51 remap_pfn_range +EXPORT_SYMBOL vmlinux 0xba0dc219 adjust_managed_page_count +EXPORT_SYMBOL vmlinux 0xba1008c8 __crc32c_le +EXPORT_SYMBOL vmlinux 0xba1b265c scsi_set_medium_removal +EXPORT_SYMBOL vmlinux 0xba3bd25d fb_class +EXPORT_SYMBOL vmlinux 0xba497d3f phy_advertise_supported +EXPORT_SYMBOL vmlinux 0xba497f13 loops_per_jiffy +EXPORT_SYMBOL vmlinux 0xba53b354 nd_dax_probe +EXPORT_SYMBOL vmlinux 0xba5705cc pci_bus_add_devices +EXPORT_SYMBOL vmlinux 0xba5c399b ppp_input_error +EXPORT_SYMBOL vmlinux 0xba7f4740 __scm_send +EXPORT_SYMBOL vmlinux 0xba7fd9a1 read_cache_page +EXPORT_SYMBOL vmlinux 0xbab65a45 key_invalidate +EXPORT_SYMBOL vmlinux 0xbac628e4 netif_carrier_off +EXPORT_SYMBOL vmlinux 0xbacfb054 __dynamic_dev_dbg +EXPORT_SYMBOL vmlinux 0xbad67efe dquot_operations +EXPORT_SYMBOL vmlinux 0xbadcaade blk_set_default_limits +EXPORT_SYMBOL vmlinux 0xbae91047 dump_align +EXPORT_SYMBOL vmlinux 0xbaffff96 ZSTD_CStreamWorkspaceBound +EXPORT_SYMBOL vmlinux 0xbb0540aa zlib_inflateReset +EXPORT_SYMBOL vmlinux 0xbb13595e smp_call_function_many +EXPORT_SYMBOL vmlinux 0xbb1bac24 acpi_unregister_debugger +EXPORT_SYMBOL vmlinux 0xbb24f607 init_cdrom_command +EXPORT_SYMBOL vmlinux 0xbb35675b __bitmap_intersects +EXPORT_SYMBOL vmlinux 0xbb3c9c8f agp_generic_create_gatt_table +EXPORT_SYMBOL vmlinux 0xbb4f4766 simple_write_to_buffer +EXPORT_SYMBOL vmlinux 0xbb5ee833 dev_mc_add_excl +EXPORT_SYMBOL vmlinux 0xbb644fcd iov_iter_advance +EXPORT_SYMBOL vmlinux 0xbb8e169a vga_switcheroo_handler_flags +EXPORT_SYMBOL vmlinux 0xbba02041 scsi_is_host_device +EXPORT_SYMBOL vmlinux 0xbba2afa4 __f_setown +EXPORT_SYMBOL vmlinux 0xbba475ee rproc_del +EXPORT_SYMBOL vmlinux 0xbbbbd3d9 vfs_rename +EXPORT_SYMBOL vmlinux 0xbbbf2335 rproc_elf_find_loaded_rsc_table +EXPORT_SYMBOL vmlinux 0xbbe4ee91 ndo_dflt_fdb_add +EXPORT_SYMBOL vmlinux 0xbbe4fa55 vfio_unpin_pages +EXPORT_SYMBOL vmlinux 0xbbe80fdb kmalloc_order +EXPORT_SYMBOL vmlinux 0xbbe93ee1 del_random_ready_callback +EXPORT_SYMBOL vmlinux 0xbc2031de acpi_processor_get_bios_limit +EXPORT_SYMBOL vmlinux 0xbc23b49e blk_queue_io_min +EXPORT_SYMBOL vmlinux 0xbc25f7cc free_contig_range +EXPORT_SYMBOL vmlinux 0xbc4cd8d0 scsi_target_quiesce +EXPORT_SYMBOL vmlinux 0xbc54d86d __register_chrdev +EXPORT_SYMBOL vmlinux 0xbc55ffc8 wake_up_process +EXPORT_SYMBOL vmlinux 0xbc9f0647 inet_reqsk_alloc +EXPORT_SYMBOL vmlinux 0xbcab6ee6 sscanf +EXPORT_SYMBOL vmlinux 0xbcab87b4 skb_orphan_partial +EXPORT_SYMBOL vmlinux 0xbcb198a8 proc_symlink +EXPORT_SYMBOL vmlinux 0xbcb692e0 netdev_boot_setup_check +EXPORT_SYMBOL vmlinux 0xbcbdf60f kstrtos8 +EXPORT_SYMBOL vmlinux 0xbcc308bb strnlen_user +EXPORT_SYMBOL vmlinux 0xbccf213a keyring_search +EXPORT_SYMBOL vmlinux 0xbcd93954 mipi_dsi_dcs_exit_sleep_mode +EXPORT_SYMBOL vmlinux 0xbcff312b copy_string_kernel +EXPORT_SYMBOL vmlinux 0xbd12424f ip_mc_check_igmp +EXPORT_SYMBOL vmlinux 0xbd1dcf7d iov_iter_copy_from_user_atomic +EXPORT_SYMBOL vmlinux 0xbd223756 pci_biosrom_size +EXPORT_SYMBOL vmlinux 0xbd2de587 nf_register_net_hooks +EXPORT_SYMBOL vmlinux 0xbd32f889 pci_release_regions +EXPORT_SYMBOL vmlinux 0xbd345692 udp_seq_start +EXPORT_SYMBOL vmlinux 0xbd462b55 __kfifo_init +EXPORT_SYMBOL vmlinux 0xbd49a5d1 inet_csk_reset_keepalive_timer +EXPORT_SYMBOL vmlinux 0xbd512005 proc_remove +EXPORT_SYMBOL vmlinux 0xbd56e8a5 mark_info_dirty +EXPORT_SYMBOL vmlinux 0xbd650728 vga_remove_vgacon +EXPORT_SYMBOL vmlinux 0xbd6841d4 crc16 +EXPORT_SYMBOL vmlinux 0xbd789827 param_get_short +EXPORT_SYMBOL vmlinux 0xbd78d62e ns_capable_setid +EXPORT_SYMBOL vmlinux 0xbd8b2453 file_remove_privs +EXPORT_SYMBOL vmlinux 0xbdaa6b80 unregister_netdevice_queue +EXPORT_SYMBOL vmlinux 0xbdabb118 tcp_shutdown +EXPORT_SYMBOL vmlinux 0xbdc71e4b unregister_nexthop_notifier +EXPORT_SYMBOL vmlinux 0xbddaacc6 con_is_visible +EXPORT_SYMBOL vmlinux 0xbde1d9d7 mipi_dsi_picture_parameter_set +EXPORT_SYMBOL vmlinux 0xbdfb6dbb __fentry__ +EXPORT_SYMBOL vmlinux 0xbe0110e7 acpi_set_gpe +EXPORT_SYMBOL vmlinux 0xbe13e91c md_write_inc +EXPORT_SYMBOL vmlinux 0xbe16e901 napi_disable +EXPORT_SYMBOL vmlinux 0xbe1eb575 simple_symlink_inode_operations +EXPORT_SYMBOL vmlinux 0xbe2e1eaa ip_fraglist_init +EXPORT_SYMBOL vmlinux 0xbe3a16c4 netdev_unbind_sb_channel +EXPORT_SYMBOL vmlinux 0xbe459c71 dump_page +EXPORT_SYMBOL vmlinux 0xbe49252c acpi_os_write_port +EXPORT_SYMBOL vmlinux 0xbe4eb6ed secure_dccpv6_sequence_number +EXPORT_SYMBOL vmlinux 0xbe536453 pci_enable_msix_range +EXPORT_SYMBOL vmlinux 0xbe554e3f kfree_skb +EXPORT_SYMBOL vmlinux 0xbe5a24e9 xxh32_copy_state +EXPORT_SYMBOL vmlinux 0xbe60f3c6 unmap_mapping_range +EXPORT_SYMBOL vmlinux 0xbe6a866f __wait_on_bit +EXPORT_SYMBOL vmlinux 0xbe7e05a8 acpi_tb_install_and_load_table +EXPORT_SYMBOL vmlinux 0xbe805f0d pci_request_region +EXPORT_SYMBOL vmlinux 0xbe8803b4 elevator_alloc +EXPORT_SYMBOL vmlinux 0xbe8cfa2b blk_queue_max_write_zeroes_sectors +EXPORT_SYMBOL vmlinux 0xbebe5d90 dma_resv_add_excl_fence +EXPORT_SYMBOL vmlinux 0xbec80ebc param_get_ullong +EXPORT_SYMBOL vmlinux 0xbedc2ae5 pagecache_write_end +EXPORT_SYMBOL vmlinux 0xbeddfcf1 md_bitmap_start_sync +EXPORT_SYMBOL vmlinux 0xbedf6079 xfrm_state_insert +EXPORT_SYMBOL vmlinux 0xbee0a16f __set_page_dirty_nobuffers +EXPORT_SYMBOL vmlinux 0xbee2277d key_put +EXPORT_SYMBOL vmlinux 0xbeea0a48 md_bitmap_free +EXPORT_SYMBOL vmlinux 0xbef43296 console_conditional_schedule +EXPORT_SYMBOL vmlinux 0xbef894b3 phy_set_max_speed +EXPORT_SYMBOL vmlinux 0xbefa51a3 gen_pool_add_owner +EXPORT_SYMBOL vmlinux 0xbefa9abf ipv6_getsockopt +EXPORT_SYMBOL vmlinux 0xbf29aff0 dev_get_by_name +EXPORT_SYMBOL vmlinux 0xbf3193ec acpi_unregister_ioapic +EXPORT_SYMBOL vmlinux 0xbf477074 tcf_exts_dump_stats +EXPORT_SYMBOL vmlinux 0xbf59c419 posix_acl_init +EXPORT_SYMBOL vmlinux 0xbf70326e cros_ec_check_result +EXPORT_SYMBOL vmlinux 0xbf7c5a18 inet6_getname +EXPORT_SYMBOL vmlinux 0xbf82ad60 trace_raw_output_prep +EXPORT_SYMBOL vmlinux 0xbf8bc879 devm_release_resource +EXPORT_SYMBOL vmlinux 0xbf9bcc8d __cap_empty_set +EXPORT_SYMBOL vmlinux 0xbfa5ef45 input_mt_get_slot_by_key +EXPORT_SYMBOL vmlinux 0xbfc177bc iowrite32_rep +EXPORT_SYMBOL vmlinux 0xbfda40c2 eth_get_headlen +EXPORT_SYMBOL vmlinux 0xbfdcb43a __x86_indirect_thunk_r11 +EXPORT_SYMBOL vmlinux 0xbfee3ad5 loop_unregister_transfer +EXPORT_SYMBOL vmlinux 0xbff3a0c1 simple_pin_fs +EXPORT_SYMBOL vmlinux 0xc010a547 _dev_warn +EXPORT_SYMBOL vmlinux 0xc025016c flow_keys_dissector +EXPORT_SYMBOL vmlinux 0xc0453ce1 security_path_mknod +EXPORT_SYMBOL vmlinux 0xc050c5f0 pnp_register_driver +EXPORT_SYMBOL vmlinux 0xc06726df nf_setsockopt +EXPORT_SYMBOL vmlinux 0xc0732d30 __cpuhp_setup_state_cpuslocked +EXPORT_SYMBOL vmlinux 0xc0739dcf xfrm_policy_destroy +EXPORT_SYMBOL vmlinux 0xc0763484 rfkill_blocked +EXPORT_SYMBOL vmlinux 0xc07b0863 fb_destroy_modedb +EXPORT_SYMBOL vmlinux 0xc07b60b6 sk_mc_loop +EXPORT_SYMBOL vmlinux 0xc07deb55 csum_and_copy_to_iter +EXPORT_SYMBOL vmlinux 0xc08c84e7 skb_unlink +EXPORT_SYMBOL vmlinux 0xc096e23d hdmi_drm_infoframe_init +EXPORT_SYMBOL vmlinux 0xc0a3d105 find_next_bit +EXPORT_SYMBOL vmlinux 0xc0b240ca netdev_rx_csum_fault +EXPORT_SYMBOL vmlinux 0xc0b2664d devlink_dpipe_header_ipv4 +EXPORT_SYMBOL vmlinux 0xc0bca0f1 ZSTD_nextSrcSizeToDecompress +EXPORT_SYMBOL vmlinux 0xc0be1167 input_get_timestamp +EXPORT_SYMBOL vmlinux 0xc0be1ed8 ns_capable_noaudit +EXPORT_SYMBOL vmlinux 0xc0d5feee vfs_statx +EXPORT_SYMBOL vmlinux 0xc0d73518 can_nice +EXPORT_SYMBOL vmlinux 0xc0f0aa30 phy_aneg_done +EXPORT_SYMBOL vmlinux 0xc0ff12fb nla_strdup +EXPORT_SYMBOL vmlinux 0xc111ae64 intel_gtt_get +EXPORT_SYMBOL vmlinux 0xc1179daa kstrtou8_from_user +EXPORT_SYMBOL vmlinux 0xc11aa062 dev_activate +EXPORT_SYMBOL vmlinux 0xc1354f8e ps2_drain +EXPORT_SYMBOL vmlinux 0xc1365323 acpi_enable_all_wakeup_gpes +EXPORT_SYMBOL vmlinux 0xc143fafd eth_header_cache_update +EXPORT_SYMBOL vmlinux 0xc1449925 pin_user_pages_locked +EXPORT_SYMBOL vmlinux 0xc14dc168 acpi_get_data +EXPORT_SYMBOL vmlinux 0xc1514a3b free_irq +EXPORT_SYMBOL vmlinux 0xc156c981 refcount_dec_and_mutex_lock +EXPORT_SYMBOL vmlinux 0xc1607389 tty_lock +EXPORT_SYMBOL vmlinux 0xc162aad8 frontswap_register_ops +EXPORT_SYMBOL vmlinux 0xc16410b9 ZSTD_getDictID_fromDDict +EXPORT_SYMBOL vmlinux 0xc166fc7d phy_ethtool_set_link_ksettings +EXPORT_SYMBOL vmlinux 0xc16be39d iter_div_u64_rem +EXPORT_SYMBOL vmlinux 0xc17c5e28 netif_rx_ni +EXPORT_SYMBOL vmlinux 0xc189316d uart_get_divisor +EXPORT_SYMBOL vmlinux 0xc1bc0890 simple_link +EXPORT_SYMBOL vmlinux 0xc1bca180 rproc_of_resm_mem_entry_init +EXPORT_SYMBOL vmlinux 0xc1d8cfaf __fdget +EXPORT_SYMBOL vmlinux 0xc1dd5485 tcf_em_tree_dump +EXPORT_SYMBOL vmlinux 0xc1e08821 netdev_notice +EXPORT_SYMBOL vmlinux 0xc238ee25 skb_ensure_writable +EXPORT_SYMBOL vmlinux 0xc2424641 agp3_generic_cleanup +EXPORT_SYMBOL vmlinux 0xc267960e utf8_validate +EXPORT_SYMBOL vmlinux 0xc267a8b6 xfrm_lookup +EXPORT_SYMBOL vmlinux 0xc26bb43e acpi_bus_unregister_driver +EXPORT_SYMBOL vmlinux 0xc273b6b4 inode_newsize_ok +EXPORT_SYMBOL vmlinux 0xc278c965 cpu_all_bits +EXPORT_SYMBOL vmlinux 0xc27e03ef tcp_peek_len +EXPORT_SYMBOL vmlinux 0xc28794c4 rtnl_link_get_net +EXPORT_SYMBOL vmlinux 0xc29957c3 __x86_indirect_thunk_rcx +EXPORT_SYMBOL vmlinux 0xc29bf967 strspn +EXPORT_SYMBOL vmlinux 0xc29e21fe pcie_set_readrq +EXPORT_SYMBOL vmlinux 0xc2a17ebe seqno_fence_ops +EXPORT_SYMBOL vmlinux 0xc2a2544b md_flush_request +EXPORT_SYMBOL vmlinux 0xc2a464bc nd_region_acquire_lane +EXPORT_SYMBOL vmlinux 0xc2bb0855 icmpv6_send +EXPORT_SYMBOL vmlinux 0xc2bfa434 devfreq_monitor_start +EXPORT_SYMBOL vmlinux 0xc2c12787 pcie_capability_write_word +EXPORT_SYMBOL vmlinux 0xc2c38333 bdi_alloc +EXPORT_SYMBOL vmlinux 0xc2cde75a vme_dma_list_free +EXPORT_SYMBOL vmlinux 0xc2d54329 dm_table_get_md +EXPORT_SYMBOL vmlinux 0xc2db6910 __hw_addr_sync_dev +EXPORT_SYMBOL vmlinux 0xc2dbcce5 dev_load +EXPORT_SYMBOL vmlinux 0xc2e587d1 reset_devices +EXPORT_SYMBOL vmlinux 0xc2e87e2a xfrm_state_lookup_byspi +EXPORT_SYMBOL vmlinux 0xc306c3a8 page_frag_alloc +EXPORT_SYMBOL vmlinux 0xc310b981 strnstr +EXPORT_SYMBOL vmlinux 0xc31a87f9 dma_direct_map_resource +EXPORT_SYMBOL vmlinux 0xc31db0ce is_vmalloc_addr +EXPORT_SYMBOL vmlinux 0xc32c71af register_inetaddr_validator_notifier +EXPORT_SYMBOL vmlinux 0xc3328c1a skb_coalesce_rx_frag +EXPORT_SYMBOL vmlinux 0xc3360027 get_tree_single +EXPORT_SYMBOL vmlinux 0xc336e37a input_set_keycode +EXPORT_SYMBOL vmlinux 0xc36a3bd4 __acpi_handle_debug +EXPORT_SYMBOL vmlinux 0xc36b81fc vme_master_request +EXPORT_SYMBOL vmlinux 0xc372e3df kernel_sendpage +EXPORT_SYMBOL vmlinux 0xc3757719 __neigh_for_each_release +EXPORT_SYMBOL vmlinux 0xc3762aec mempool_alloc +EXPORT_SYMBOL vmlinux 0xc37f9c6e cpufreq_update_policy +EXPORT_SYMBOL vmlinux 0xc38c83b8 mod_timer +EXPORT_SYMBOL vmlinux 0xc3942966 override_creds +EXPORT_SYMBOL vmlinux 0xc3a76bbd ip_sock_set_freebind +EXPORT_SYMBOL vmlinux 0xc3aaf0a9 __put_user_1 +EXPORT_SYMBOL vmlinux 0xc3b0a247 neigh_sysctl_unregister +EXPORT_SYMBOL vmlinux 0xc3bc72ad trace_print_array_seq +EXPORT_SYMBOL vmlinux 0xc3cf1559 netif_set_xps_queue +EXPORT_SYMBOL vmlinux 0xc3e39b09 nobh_writepage +EXPORT_SYMBOL vmlinux 0xc3ff38c2 down_read_trylock +EXPORT_SYMBOL vmlinux 0xc41bc980 iwe_stream_add_value +EXPORT_SYMBOL vmlinux 0xc4212ab9 qdisc_class_hash_insert +EXPORT_SYMBOL vmlinux 0xc422ea91 inet_frag_find +EXPORT_SYMBOL vmlinux 0xc42dcb99 acpi_evaluate_ost +EXPORT_SYMBOL vmlinux 0xc4440783 d_alloc_anon +EXPORT_SYMBOL vmlinux 0xc449d9bb skb_queue_purge +EXPORT_SYMBOL vmlinux 0xc4777aa9 __ctzsi2 +EXPORT_SYMBOL vmlinux 0xc48a36bf vme_unregister_driver +EXPORT_SYMBOL vmlinux 0xc490a165 blk_get_queue +EXPORT_SYMBOL vmlinux 0xc4a1651b pcix_get_mmrbc +EXPORT_SYMBOL vmlinux 0xc4ae915e arch_touch_nmi_watchdog +EXPORT_SYMBOL vmlinux 0xc4c48519 configfs_depend_item_unlocked +EXPORT_SYMBOL vmlinux 0xc4ce9b25 __dev_get_by_name +EXPORT_SYMBOL vmlinux 0xc4e2a2f5 kmem_cache_alloc_node_trace +EXPORT_SYMBOL vmlinux 0xc4e3ee50 add_to_pipe +EXPORT_SYMBOL vmlinux 0xc4f0bee6 input_mt_report_slot_state +EXPORT_SYMBOL vmlinux 0xc4f39b67 netif_carrier_on +EXPORT_SYMBOL vmlinux 0xc4f669e3 tc_setup_cb_destroy +EXPORT_SYMBOL vmlinux 0xc4fd2f7d capable_wrt_inode_uidgid +EXPORT_SYMBOL vmlinux 0xc5057516 reuseport_detach_sock +EXPORT_SYMBOL vmlinux 0xc510251b tty_port_block_til_ready +EXPORT_SYMBOL vmlinux 0xc528a49a queued_write_lock_slowpath +EXPORT_SYMBOL vmlinux 0xc5292dbe udp_prot +EXPORT_SYMBOL vmlinux 0xc5345766 flow_rule_match_ct +EXPORT_SYMBOL vmlinux 0xc53b4a80 kmem_cache_create_usercopy +EXPORT_SYMBOL vmlinux 0xc5425750 generic_parse_monolithic +EXPORT_SYMBOL vmlinux 0xc5534d64 ioread16 +EXPORT_SYMBOL vmlinux 0xc558530d profile_pc +EXPORT_SYMBOL vmlinux 0xc5664491 _raw_spin_unlock_irq +EXPORT_SYMBOL vmlinux 0xc57c48a3 idr_get_next +EXPORT_SYMBOL vmlinux 0xc57d3f8a security_inode_listsecurity +EXPORT_SYMBOL vmlinux 0xc5850110 printk +EXPORT_SYMBOL vmlinux 0xc587ce89 mini_qdisc_pair_swap +EXPORT_SYMBOL vmlinux 0xc599a772 security_xfrm_state_delete +EXPORT_SYMBOL vmlinux 0xc5b6f236 queue_work_on +EXPORT_SYMBOL vmlinux 0xc5cf8a30 blk_execute_rq +EXPORT_SYMBOL vmlinux 0xc5d1a7f0 kernel_bind +EXPORT_SYMBOL vmlinux 0xc5d9c46c agp_try_unsupported_boot +EXPORT_SYMBOL vmlinux 0xc5df9005 dev_alloc_name +EXPORT_SYMBOL vmlinux 0xc5e4a5d1 cpumask_next +EXPORT_SYMBOL vmlinux 0xc5e5573a frame_vector_to_pages +EXPORT_SYMBOL vmlinux 0xc5e74216 release_resource +EXPORT_SYMBOL vmlinux 0xc5ee4f1a __close_fd_get_file +EXPORT_SYMBOL vmlinux 0xc5f7e801 sg_last +EXPORT_SYMBOL vmlinux 0xc5fd267f vfs_path_lookup +EXPORT_SYMBOL vmlinux 0xc6055c9e kvasprintf_const +EXPORT_SYMBOL vmlinux 0xc60c0ba6 component_match_add_typed +EXPORT_SYMBOL vmlinux 0xc60d0620 __num_online_cpus +EXPORT_SYMBOL vmlinux 0xc61ca65e iowrite64be_hi_lo +EXPORT_SYMBOL vmlinux 0xc625e00e bioset_init_from_src +EXPORT_SYMBOL vmlinux 0xc62a0d8a lock_page_memcg +EXPORT_SYMBOL vmlinux 0xc631580a console_unlock +EXPORT_SYMBOL vmlinux 0xc633d82d phy_unregister_fixup +EXPORT_SYMBOL vmlinux 0xc6553b9f pci_write_config_word +EXPORT_SYMBOL vmlinux 0xc65e4e97 secure_dccp_sequence_number +EXPORT_SYMBOL vmlinux 0xc666a132 crc_t10dif +EXPORT_SYMBOL vmlinux 0xc66a8304 cpu_rmap_add +EXPORT_SYMBOL vmlinux 0xc66d919f dm_table_get_mode +EXPORT_SYMBOL vmlinux 0xc671be56 md_reload_sb +EXPORT_SYMBOL vmlinux 0xc6763b95 path_has_submounts +EXPORT_SYMBOL vmlinux 0xc67b2b11 blk_mq_kick_requeue_list +EXPORT_SYMBOL vmlinux 0xc6910aa0 do_trace_rdpmc +EXPORT_SYMBOL vmlinux 0xc6af88d6 tcf_idr_create +EXPORT_SYMBOL vmlinux 0xc6b75116 security_sk_clone +EXPORT_SYMBOL vmlinux 0xc6b95965 pci_unregister_driver +EXPORT_SYMBOL vmlinux 0xc6c4a0ac mdiobus_is_registered_device +EXPORT_SYMBOL vmlinux 0xc6cb465a __kfifo_max_r +EXPORT_SYMBOL vmlinux 0xc6cbbc89 capable +EXPORT_SYMBOL vmlinux 0xc6d09aa9 release_firmware +EXPORT_SYMBOL vmlinux 0xc6d6e84b fscrypt_get_encryption_info +EXPORT_SYMBOL vmlinux 0xc6f2df48 pci_release_region +EXPORT_SYMBOL vmlinux 0xc6f46339 init_timer_key +EXPORT_SYMBOL vmlinux 0xc6ff4dba set_trace_device +EXPORT_SYMBOL vmlinux 0xc708f1fe ec_write +EXPORT_SYMBOL vmlinux 0xc7208c3a serial8250_resume_port +EXPORT_SYMBOL vmlinux 0xc774533a mmc_can_trim +EXPORT_SYMBOL vmlinux 0xc775bb16 rproc_coredump_add_segment +EXPORT_SYMBOL vmlinux 0xc779feb2 xp_alloc +EXPORT_SYMBOL vmlinux 0xc77cea42 blk_rq_append_bio +EXPORT_SYMBOL vmlinux 0xc77e4abd genphy_c37_config_aneg +EXPORT_SYMBOL vmlinux 0xc781bd9f rfkill_resume_polling +EXPORT_SYMBOL vmlinux 0xc7856a3d inet6addr_notifier_call_chain +EXPORT_SYMBOL vmlinux 0xc7972dd9 blk_mq_unique_tag +EXPORT_SYMBOL vmlinux 0xc79bcd36 dm_vcalloc +EXPORT_SYMBOL vmlinux 0xc7a4fbed rtnl_lock +EXPORT_SYMBOL vmlinux 0xc7be6f9a dquot_load_quota_inode +EXPORT_SYMBOL vmlinux 0xc7bf16ae mark_buffer_dirty +EXPORT_SYMBOL vmlinux 0xc7c1107a LZ4_decompress_safe +EXPORT_SYMBOL vmlinux 0xc7c39c08 wireless_send_event +EXPORT_SYMBOL vmlinux 0xc7d094b5 dm_read_arg_group +EXPORT_SYMBOL vmlinux 0xc7e62f9d dquot_claim_space_nodirty +EXPORT_SYMBOL vmlinux 0xc7f635da neigh_table_clear +EXPORT_SYMBOL vmlinux 0xc7f636a9 clear_inode +EXPORT_SYMBOL vmlinux 0xc809bde8 mipi_dsi_dcs_write_buffer +EXPORT_SYMBOL vmlinux 0xc80ab559 swake_up_one +EXPORT_SYMBOL vmlinux 0xc818ab78 mntget +EXPORT_SYMBOL vmlinux 0xc81e91a8 napi_busy_loop +EXPORT_SYMBOL vmlinux 0xc83a779d seq_putc +EXPORT_SYMBOL vmlinux 0xc83cabd1 __nlmsg_put +EXPORT_SYMBOL vmlinux 0xc84a0a7e seq_hlist_start_rcu +EXPORT_SYMBOL vmlinux 0xc858a614 nla_reserve_nohdr +EXPORT_SYMBOL vmlinux 0xc872fd85 in6addr_interfacelocal_allnodes +EXPORT_SYMBOL vmlinux 0xc8827b75 sysctl_vals +EXPORT_SYMBOL vmlinux 0xc88d9657 sk_free +EXPORT_SYMBOL vmlinux 0xc890c008 zlib_deflateEnd +EXPORT_SYMBOL vmlinux 0xc89392a0 dma_direct_map_page +EXPORT_SYMBOL vmlinux 0xc893c17e mmc_retune_pause +EXPORT_SYMBOL vmlinux 0xc8a91f5b cpumask_local_spread +EXPORT_SYMBOL vmlinux 0xc8b5913d __inet_stream_connect +EXPORT_SYMBOL vmlinux 0xc8badcb0 netlink_rcv_skb +EXPORT_SYMBOL vmlinux 0xc8cd3dd2 iov_iter_fault_in_readable +EXPORT_SYMBOL vmlinux 0xc8e7622c inetpeer_invalidate_tree +EXPORT_SYMBOL vmlinux 0xc8f0eca1 blk_set_queue_depth +EXPORT_SYMBOL vmlinux 0xc8f100b8 __pskb_copy_fclone +EXPORT_SYMBOL vmlinux 0xc8f375c1 _raw_read_unlock_irq +EXPORT_SYMBOL vmlinux 0xc8f5a6d1 pci_disable_link_state +EXPORT_SYMBOL vmlinux 0xc9216a82 recalibrate_cpu_khz +EXPORT_SYMBOL vmlinux 0xc93e8461 acpi_get_event_resources +EXPORT_SYMBOL vmlinux 0xc959d152 __stack_chk_fail +EXPORT_SYMBOL vmlinux 0xc9634df9 in6addr_linklocal_allrouters +EXPORT_SYMBOL vmlinux 0xc96d2497 phy_ethtool_nway_reset +EXPORT_SYMBOL vmlinux 0xc96fd929 dst_init +EXPORT_SYMBOL vmlinux 0xc972449f mempool_alloc_slab +EXPORT_SYMBOL vmlinux 0xc97bd5b3 mdio_driver_unregister +EXPORT_SYMBOL vmlinux 0xc9822234 clk_register_clkdev +EXPORT_SYMBOL vmlinux 0xc993f52e blkdev_issue_zeroout +EXPORT_SYMBOL vmlinux 0xc99a76e3 input_mt_report_pointer_emulation +EXPORT_SYMBOL vmlinux 0xc99d4f0d phy_init_hw +EXPORT_SYMBOL vmlinux 0xc99e2a55 twl_rev +EXPORT_SYMBOL vmlinux 0xc9aa1258 blk_queue_split +EXPORT_SYMBOL vmlinux 0xc9ab011d __check_sticky +EXPORT_SYMBOL vmlinux 0xc9ba6ee6 blk_mq_start_hw_queues +EXPORT_SYMBOL vmlinux 0xc9c1040d flow_block_cb_setup_simple +EXPORT_SYMBOL vmlinux 0xc9df055a xfrm_policy_walk_init +EXPORT_SYMBOL vmlinux 0xc9e0df60 iterate_dir +EXPORT_SYMBOL vmlinux 0xc9e3957a inode_insert5 +EXPORT_SYMBOL vmlinux 0xc9f34c1d acpi_acquire_global_lock +EXPORT_SYMBOL vmlinux 0xca05f9f6 __dev_direct_xmit +EXPORT_SYMBOL vmlinux 0xca066488 pci_release_resource +EXPORT_SYMBOL vmlinux 0xca15413f ZSTD_resetDStream +EXPORT_SYMBOL vmlinux 0xca1d5d99 __scsi_device_lookup_by_target +EXPORT_SYMBOL vmlinux 0xca1ea2c7 blk_set_stacking_limits +EXPORT_SYMBOL vmlinux 0xca1fbc5c iw_handler_get_thrspy +EXPORT_SYMBOL vmlinux 0xca21ebd3 bitmap_free +EXPORT_SYMBOL vmlinux 0xca2dec51 sk_filter_trim_cap +EXPORT_SYMBOL vmlinux 0xca2f9ab7 ip_tunnel_header_ops +EXPORT_SYMBOL vmlinux 0xca308e40 cad_pid +EXPORT_SYMBOL vmlinux 0xca431c05 wake_bit_function +EXPORT_SYMBOL vmlinux 0xca50c326 pcie_capability_read_word +EXPORT_SYMBOL vmlinux 0xca644d78 kernel_write +EXPORT_SYMBOL vmlinux 0xca682109 uart_add_one_port +EXPORT_SYMBOL vmlinux 0xca8ef9f3 rproc_elf_get_boot_addr +EXPORT_SYMBOL vmlinux 0xca9360b5 rb_next +EXPORT_SYMBOL vmlinux 0xca9beaa4 __xa_store +EXPORT_SYMBOL vmlinux 0xcaa4a4e2 textsearch_register +EXPORT_SYMBOL vmlinux 0xcaa97a77 input_set_min_poll_interval +EXPORT_SYMBOL vmlinux 0xcac672cd cdev_device_del +EXPORT_SYMBOL vmlinux 0xcacac23b sock_set_reuseaddr +EXPORT_SYMBOL vmlinux 0xcad1aca8 acpi_exception +EXPORT_SYMBOL vmlinux 0xcae08550 twl6040_set_pll +EXPORT_SYMBOL vmlinux 0xcaf2c603 scsi_sd_pm_domain +EXPORT_SYMBOL vmlinux 0xcaf8a921 neigh_parms_alloc +EXPORT_SYMBOL vmlinux 0xcb0288ea ledtrig_cpu +EXPORT_SYMBOL vmlinux 0xcb034e61 tcp_mtup_init +EXPORT_SYMBOL vmlinux 0xcb177b2a tcp_syn_ack_timeout +EXPORT_SYMBOL vmlinux 0xcb3ae215 call_blocking_lsm_notifier +EXPORT_SYMBOL vmlinux 0xcb3de18c generic_shutdown_super +EXPORT_SYMBOL vmlinux 0xcb3e35a7 find_vma +EXPORT_SYMBOL vmlinux 0xcb3e8913 __mmc_claim_host +EXPORT_SYMBOL vmlinux 0xcb40a302 tcp_sendpage +EXPORT_SYMBOL vmlinux 0xcb53ecc3 pci_bus_assign_resources +EXPORT_SYMBOL vmlinux 0xcb5c0524 neigh_sysctl_register +EXPORT_SYMBOL vmlinux 0xcb696d0e md_bitmap_close_sync +EXPORT_SYMBOL vmlinux 0xcb733bf2 acpi_bus_set_power +EXPORT_SYMBOL vmlinux 0xcb935869 file_fdatawait_range +EXPORT_SYMBOL vmlinux 0xcb9e1a22 acpi_os_map_generic_address +EXPORT_SYMBOL vmlinux 0xcba3a751 backlight_device_register +EXPORT_SYMBOL vmlinux 0xcba4abe3 list_sort +EXPORT_SYMBOL vmlinux 0xcbc88a23 ZSTD_isFrame +EXPORT_SYMBOL vmlinux 0xcbd4898c fortify_panic +EXPORT_SYMBOL vmlinux 0xcbfb33e4 init_opal_dev +EXPORT_SYMBOL vmlinux 0xcbfe9598 mmc_erase +EXPORT_SYMBOL vmlinux 0xcc011645 pci_select_bars +EXPORT_SYMBOL vmlinux 0xcc1b882a idr_get_next_ul +EXPORT_SYMBOL vmlinux 0xcc1c72ab pm860x_page_bulk_read +EXPORT_SYMBOL vmlinux 0xcc248d26 serial8250_suspend_port +EXPORT_SYMBOL vmlinux 0xcc2b37e2 config_group_find_item +EXPORT_SYMBOL vmlinux 0xcc328a5c reservation_ww_class +EXPORT_SYMBOL vmlinux 0xcc436653 ___pskb_trim +EXPORT_SYMBOL vmlinux 0xcc445ceb __sg_page_iter_dma_next +EXPORT_SYMBOL vmlinux 0xcc4d4116 d_add_ci +EXPORT_SYMBOL vmlinux 0xcc5005fe msleep_interruptible +EXPORT_SYMBOL vmlinux 0xcc5c2df4 trace_print_symbols_seq +EXPORT_SYMBOL vmlinux 0xcc5d22d9 can_do_mlock +EXPORT_SYMBOL vmlinux 0xcc5eba0c phy_attached_print +EXPORT_SYMBOL vmlinux 0xcc7c913e mmc_of_parse_voltage +EXPORT_SYMBOL vmlinux 0xcc7cb055 rproc_vq_interrupt +EXPORT_SYMBOL vmlinux 0xcc8261bd devfreq_unregister_notifier +EXPORT_SYMBOL vmlinux 0xcc999bbe filemap_range_has_page +EXPORT_SYMBOL vmlinux 0xcca5839d xen_vcpu_id +EXPORT_SYMBOL vmlinux 0xccb428c7 skb_kill_datagram +EXPORT_SYMBOL vmlinux 0xccb555a8 inet_csk_accept +EXPORT_SYMBOL vmlinux 0xccb9b2cf shrink_dcache_sb +EXPORT_SYMBOL vmlinux 0xccbd6124 i2c_smbus_xfer +EXPORT_SYMBOL vmlinux 0xccbfbcf8 genphy_aneg_done +EXPORT_SYMBOL vmlinux 0xccc21f5e input_get_new_minor +EXPORT_SYMBOL vmlinux 0xccc758d8 nla_policy_len +EXPORT_SYMBOL vmlinux 0xccd1d7f3 scsi_target_resume +EXPORT_SYMBOL vmlinux 0xccd4c999 __sg_page_iter_start +EXPORT_SYMBOL vmlinux 0xcce5e7c3 nvmem_get_mac_address +EXPORT_SYMBOL vmlinux 0xccef37e4 ZSTD_DStreamOutSize +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 0xcd2414ec generic_pipe_buf_try_steal +EXPORT_SYMBOL vmlinux 0xcd256667 tcp_md5_needed +EXPORT_SYMBOL vmlinux 0xcd279169 nla_find +EXPORT_SYMBOL vmlinux 0xcd3a176d get_user_pages +EXPORT_SYMBOL vmlinux 0xcd5756ce buffer_check_dirty_writeback +EXPORT_SYMBOL vmlinux 0xcd7e2344 __ps2_command +EXPORT_SYMBOL vmlinux 0xcd871170 jbd2_journal_free_reserved +EXPORT_SYMBOL vmlinux 0xcd8ce890 acpi_format_exception +EXPORT_SYMBOL vmlinux 0xcd8d52ef tcp_make_synack +EXPORT_SYMBOL vmlinux 0xcd915eec misc_register +EXPORT_SYMBOL vmlinux 0xcd935b31 scsi_register_interface +EXPORT_SYMBOL vmlinux 0xcd976e32 amd_iommu_domain_clear_gcr3 +EXPORT_SYMBOL vmlinux 0xcda1f0b5 set_page_dirty_lock +EXPORT_SYMBOL vmlinux 0xcdacc87b __filemap_set_wb_err +EXPORT_SYMBOL vmlinux 0xcdba1b12 pcie_capability_clear_and_set_dword +EXPORT_SYMBOL vmlinux 0xcdc39c9e security_ismaclabel +EXPORT_SYMBOL vmlinux 0xcde77bcc free_opal_dev +EXPORT_SYMBOL vmlinux 0xcdf024de ping_prot +EXPORT_SYMBOL vmlinux 0xcdf3d8cf i2c_smbus_write_i2c_block_data +EXPORT_SYMBOL vmlinux 0xce09272c audit_log +EXPORT_SYMBOL vmlinux 0xce2840e7 irq_set_irq_wake +EXPORT_SYMBOL vmlinux 0xce29b8e0 register_netdevice +EXPORT_SYMBOL vmlinux 0xce2dd602 vfio_unregister_notifier +EXPORT_SYMBOL vmlinux 0xce2fdd88 security_unix_stream_connect +EXPORT_SYMBOL vmlinux 0xce3864eb ZSTD_compress_usingDict +EXPORT_SYMBOL vmlinux 0xce4cdb8e fb_find_best_mode +EXPORT_SYMBOL vmlinux 0xce4e47b6 __kfifo_skip_r +EXPORT_SYMBOL vmlinux 0xce50e5de ZSTD_compress_usingCDict +EXPORT_SYMBOL vmlinux 0xce5ac24f zlib_inflate_workspacesize +EXPORT_SYMBOL vmlinux 0xce6477b2 acpi_pci_osc_control_set +EXPORT_SYMBOL vmlinux 0xce7335e3 dev_printk_emit +EXPORT_SYMBOL vmlinux 0xce76c257 acpi_get_irq_routing_table +EXPORT_SYMBOL vmlinux 0xce7bfe70 vm_brk +EXPORT_SYMBOL vmlinux 0xce806641 skb_checksum_trimmed +EXPORT_SYMBOL vmlinux 0xce807a25 up_write +EXPORT_SYMBOL vmlinux 0xce841074 skb_recv_datagram +EXPORT_SYMBOL vmlinux 0xce8b1878 __x86_indirect_thunk_r14 +EXPORT_SYMBOL vmlinux 0xce8e2fd9 vme_irq_free +EXPORT_SYMBOL vmlinux 0xce9f1318 fb_prepare_logo +EXPORT_SYMBOL vmlinux 0xcea381dd x86_match_cpu +EXPORT_SYMBOL vmlinux 0xcea486ec clkdev_alloc +EXPORT_SYMBOL vmlinux 0xcea85d17 remove_conflicting_pci_framebuffers +EXPORT_SYMBOL vmlinux 0xceab0311 strchrnul +EXPORT_SYMBOL vmlinux 0xceb41c7b __mark_inode_dirty +EXPORT_SYMBOL vmlinux 0xced0f4d4 gen_pool_create +EXPORT_SYMBOL vmlinux 0xced3091b tty_port_hangup +EXPORT_SYMBOL vmlinux 0xcee6cc2c devm_clk_release_clkdev +EXPORT_SYMBOL vmlinux 0xcee900b2 generic_read_dir +EXPORT_SYMBOL vmlinux 0xceec8abd __mb_cache_entry_free +EXPORT_SYMBOL vmlinux 0xcef2b218 __alloc_skb +EXPORT_SYMBOL vmlinux 0xcef9e90a seg6_hmac_validate_skb +EXPORT_SYMBOL vmlinux 0xcefa518b tty_vhangup +EXPORT_SYMBOL vmlinux 0xcefcd99a serial8250_unregister_port +EXPORT_SYMBOL vmlinux 0xcf000c7e hdmi_infoframe_check +EXPORT_SYMBOL vmlinux 0xcf02ceef in6_dev_finish_destroy +EXPORT_SYMBOL vmlinux 0xcf05a5ca flow_rule_match_eth_addrs +EXPORT_SYMBOL vmlinux 0xcf10eb88 unlock_rename +EXPORT_SYMBOL vmlinux 0xcf1c6ca3 cmdline_parts_find +EXPORT_SYMBOL vmlinux 0xcf24596a get_task_cred +EXPORT_SYMBOL vmlinux 0xcf2a6966 up +EXPORT_SYMBOL vmlinux 0xcf38ebf1 lease_get_mtime +EXPORT_SYMBOL vmlinux 0xcf4fdd4d _atomic_dec_and_lock +EXPORT_SYMBOL vmlinux 0xcf5f88af request_key_with_auxdata +EXPORT_SYMBOL vmlinux 0xcf69411a dquot_get_state +EXPORT_SYMBOL vmlinux 0xcf69f09f ipv6_sock_mc_drop +EXPORT_SYMBOL vmlinux 0xcf831e4a flow_rule_match_vlan +EXPORT_SYMBOL vmlinux 0xcf83d83a __tracepoint_spi_transfer_start +EXPORT_SYMBOL vmlinux 0xcf86f8b4 fiemap_prep +EXPORT_SYMBOL vmlinux 0xcf8c49d3 xfrm_state_unregister_afinfo +EXPORT_SYMBOL vmlinux 0xcf9467ee ip6_dst_hoplimit +EXPORT_SYMBOL vmlinux 0xcf9b558d touchscreen_set_mt_pos +EXPORT_SYMBOL vmlinux 0xcf9f5bbe dns_query +EXPORT_SYMBOL vmlinux 0xcfde0419 kthread_destroy_worker +EXPORT_SYMBOL vmlinux 0xcfe4996f inet_register_protosw +EXPORT_SYMBOL vmlinux 0xcfee3c23 pcix_set_mmrbc +EXPORT_SYMBOL vmlinux 0xd00f916f vfs_iocb_iter_read +EXPORT_SYMBOL vmlinux 0xd01c1582 __scsi_add_device +EXPORT_SYMBOL vmlinux 0xd0211b44 tcp_read_sock +EXPORT_SYMBOL vmlinux 0xd02af3f1 tty_port_lower_dtr_rts +EXPORT_SYMBOL vmlinux 0xd030889f input_get_poll_interval +EXPORT_SYMBOL vmlinux 0xd03bd59e eth_validate_addr +EXPORT_SYMBOL vmlinux 0xd042475c qdisc_get_rtab +EXPORT_SYMBOL vmlinux 0xd043c431 devfreq_add_governor +EXPORT_SYMBOL vmlinux 0xd04c1a64 sysctl_devconf_inherit_init_net +EXPORT_SYMBOL vmlinux 0xd04e654e phy_device_register +EXPORT_SYMBOL vmlinux 0xd0562fd9 configfs_unregister_subsystem +EXPORT_SYMBOL vmlinux 0xd0641b09 neigh_app_ns +EXPORT_SYMBOL vmlinux 0xd0654aba woken_wake_function +EXPORT_SYMBOL vmlinux 0xd0689446 register_mii_tstamp_controller +EXPORT_SYMBOL vmlinux 0xd07ad412 seq_open +EXPORT_SYMBOL vmlinux 0xd07c58b9 pci_scan_bridge +EXPORT_SYMBOL vmlinux 0xd084a1a6 dma_dummy_ops +EXPORT_SYMBOL vmlinux 0xd0871784 try_to_free_buffers +EXPORT_SYMBOL vmlinux 0xd08adb2b trace_seq_hex_dump +EXPORT_SYMBOL vmlinux 0xd090578e vfs_clone_file_range +EXPORT_SYMBOL vmlinux 0xd0a91bab skip_spaces +EXPORT_SYMBOL vmlinux 0xd0ac089a udp6_set_csum +EXPORT_SYMBOL vmlinux 0xd0ace79d lookup_one_len +EXPORT_SYMBOL vmlinux 0xd0ad2f0f fbcon_set_bitops +EXPORT_SYMBOL vmlinux 0xd0b74705 acpi_install_interface +EXPORT_SYMBOL vmlinux 0xd0bd487b hdmi_drm_infoframe_pack_only +EXPORT_SYMBOL vmlinux 0xd0c18ae8 keyring_clear +EXPORT_SYMBOL vmlinux 0xd0df27f8 genlmsg_put +EXPORT_SYMBOL vmlinux 0xd0f284b8 mmiotrace_printk +EXPORT_SYMBOL vmlinux 0xd0fe40db xsk_umem_uses_need_wakeup +EXPORT_SYMBOL vmlinux 0xd0fe8d51 sg_pcopy_from_buffer +EXPORT_SYMBOL vmlinux 0xd0fef3b2 agp_free_key +EXPORT_SYMBOL vmlinux 0xd10d7795 cdrom_mode_sense +EXPORT_SYMBOL vmlinux 0xd121ef34 get_bitmap_from_slot +EXPORT_SYMBOL vmlinux 0xd1363cc1 ucs2_strsize +EXPORT_SYMBOL vmlinux 0xd1412f9b kobject_init +EXPORT_SYMBOL vmlinux 0xd147395e ab3100_event_unregister +EXPORT_SYMBOL vmlinux 0xd14c3a71 compat_import_iovec +EXPORT_SYMBOL vmlinux 0xd151eb62 noop_fsync +EXPORT_SYMBOL vmlinux 0xd1590ed2 nlmsg_notify +EXPORT_SYMBOL vmlinux 0xd15b8459 __cleancache_init_shared_fs +EXPORT_SYMBOL vmlinux 0xd17d7b2e pnp_register_card_driver +EXPORT_SYMBOL vmlinux 0xd1816f32 frontswap_writethrough +EXPORT_SYMBOL vmlinux 0xd194ddf9 acpi_gpe_count +EXPORT_SYMBOL vmlinux 0xd19bd2e1 __tracepoint_write_msr +EXPORT_SYMBOL vmlinux 0xd19d3210 iov_iter_revert +EXPORT_SYMBOL vmlinux 0xd1a3f69b rproc_boot +EXPORT_SYMBOL vmlinux 0xd1a4053d config_item_get +EXPORT_SYMBOL vmlinux 0xd1cb4fd0 rtnetlink_put_metrics +EXPORT_SYMBOL vmlinux 0xd1d87e92 scsi_mlreturn_string +EXPORT_SYMBOL vmlinux 0xd1d970ef d_hash_and_lookup +EXPORT_SYMBOL vmlinux 0xd1ecd81f nd_btt_version +EXPORT_SYMBOL vmlinux 0xd1f57180 d_set_d_op +EXPORT_SYMBOL vmlinux 0xd1f60a89 arch_io_free_memtype_wc +EXPORT_SYMBOL vmlinux 0xd1f6c5f3 smp_num_siblings +EXPORT_SYMBOL vmlinux 0xd216553d md_finish_reshape +EXPORT_SYMBOL vmlinux 0xd21c5139 iowrite64_lo_hi +EXPORT_SYMBOL vmlinux 0xd2237016 radix_tree_delete_item +EXPORT_SYMBOL vmlinux 0xd223e453 tcp_ld_RTO_revert +EXPORT_SYMBOL vmlinux 0xd24e5ed0 pci_request_selected_regions +EXPORT_SYMBOL vmlinux 0xd25d4f74 console_blank_hook +EXPORT_SYMBOL vmlinux 0xd262dfcb vscnprintf +EXPORT_SYMBOL vmlinux 0xd265a9be __mdiobus_read +EXPORT_SYMBOL vmlinux 0xd265f5eb netif_stacked_transfer_operstate +EXPORT_SYMBOL vmlinux 0xd276d765 dma_direct_unmap_sg +EXPORT_SYMBOL vmlinux 0xd27aa0e7 cdrom_dummy_generic_packet +EXPORT_SYMBOL vmlinux 0xd27b25dd blk_check_plugged +EXPORT_SYMBOL vmlinux 0xd2bdf79f fb_set_var +EXPORT_SYMBOL vmlinux 0xd2c99738 __kmalloc_track_caller +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 0xd2fef766 pcibios_bus_to_resource +EXPORT_SYMBOL vmlinux 0xd30e6e20 padata_alloc_shell +EXPORT_SYMBOL vmlinux 0xd30f984f fbcon_set_rotate +EXPORT_SYMBOL vmlinux 0xd33604b2 dev_set_mtu +EXPORT_SYMBOL vmlinux 0xd34a3f42 inet_csk_reqsk_queue_drop +EXPORT_SYMBOL vmlinux 0xd3543063 memcg_kmem_enabled_key +EXPORT_SYMBOL vmlinux 0xd35a6d31 mempool_kmalloc +EXPORT_SYMBOL vmlinux 0xd36dc10c get_random_u32 +EXPORT_SYMBOL vmlinux 0xd36e3d59 prandom_bytes_state +EXPORT_SYMBOL vmlinux 0xd3712ed0 remap_vmalloc_range_partial +EXPORT_SYMBOL vmlinux 0xd371494d begin_new_exec +EXPORT_SYMBOL vmlinux 0xd382f6da pci_enable_msi +EXPORT_SYMBOL vmlinux 0xd38c8061 genphy_setup_forced +EXPORT_SYMBOL vmlinux 0xd38cd261 __default_kernel_pte_mask +EXPORT_SYMBOL vmlinux 0xd3974d49 blk_mq_alloc_tag_set +EXPORT_SYMBOL vmlinux 0xd3b9ca60 free_inode_nonrcu +EXPORT_SYMBOL vmlinux 0xd3df1c52 dev_get_phys_port_name +EXPORT_SYMBOL vmlinux 0xd3e1a00f _dev_crit +EXPORT_SYMBOL vmlinux 0xd3e6aa54 pmem_sector_size +EXPORT_SYMBOL vmlinux 0xd3eaf1ed devlink_dpipe_entry_clear +EXPORT_SYMBOL vmlinux 0xd3f5ef53 tcp_close +EXPORT_SYMBOL vmlinux 0xd3fa73bf get_tree_single_reconf +EXPORT_SYMBOL vmlinux 0xd406d266 fb_mode_is_equal +EXPORT_SYMBOL vmlinux 0xd4149c7e seg6_hmac_net_exit +EXPORT_SYMBOL vmlinux 0xd4419c5c prepare_to_swait_event +EXPORT_SYMBOL vmlinux 0xd45cc6ca bin2hex +EXPORT_SYMBOL vmlinux 0xd47947ff __x86_retpoline_r12 +EXPORT_SYMBOL vmlinux 0xd47c6ee0 phy_free_interrupt +EXPORT_SYMBOL vmlinux 0xd4835ef8 dmi_check_system +EXPORT_SYMBOL vmlinux 0xd49aca33 inet_gso_segment +EXPORT_SYMBOL vmlinux 0xd49bbfde input_set_max_poll_interval +EXPORT_SYMBOL vmlinux 0xd49d89db bh_uptodate_or_lock +EXPORT_SYMBOL vmlinux 0xd4a0c99b touch_buffer +EXPORT_SYMBOL vmlinux 0xd4a4cd6d sock_alloc_send_pskb +EXPORT_SYMBOL vmlinux 0xd4b9cf99 bdget +EXPORT_SYMBOL vmlinux 0xd4bb4a82 inet6addr_validator_notifier_call_chain +EXPORT_SYMBOL vmlinux 0xd4d1983c udplite_table +EXPORT_SYMBOL vmlinux 0xd4f66a41 dm_get_device +EXPORT_SYMBOL vmlinux 0xd4fa5a87 __kfifo_dma_out_prepare +EXPORT_SYMBOL vmlinux 0xd506ff31 set_disk_ro +EXPORT_SYMBOL vmlinux 0xd5263820 mb_cache_destroy +EXPORT_SYMBOL vmlinux 0xd5346bfc acpi_get_possible_resources +EXPORT_SYMBOL vmlinux 0xd53bab37 security_d_instantiate +EXPORT_SYMBOL vmlinux 0xd5476390 jbd2_journal_lock_updates +EXPORT_SYMBOL vmlinux 0xd5539ce5 ethtool_notify +EXPORT_SYMBOL vmlinux 0xd59d09b0 __bio_clone_fast +EXPORT_SYMBOL vmlinux 0xd5ac50b0 sk_page_frag_refill +EXPORT_SYMBOL vmlinux 0xd5b007bf netdev_lower_get_first_private_rcu +EXPORT_SYMBOL vmlinux 0xd5b3d0d5 xxh64_copy_state +EXPORT_SYMBOL vmlinux 0xd5cd51fe alloc_file_pseudo +EXPORT_SYMBOL vmlinux 0xd5d5c521 watchdog_register_governor +EXPORT_SYMBOL vmlinux 0xd5d7a3ae pci_ep_cfs_remove_epc_group +EXPORT_SYMBOL vmlinux 0xd5de0c44 flow_block_cb_alloc +EXPORT_SYMBOL vmlinux 0xd5f63cf5 dma_get_sgtable_attrs +EXPORT_SYMBOL vmlinux 0xd5fd90f1 prepare_to_wait +EXPORT_SYMBOL vmlinux 0xd60736ec gf128mul_free_64k +EXPORT_SYMBOL vmlinux 0xd607effc pci_get_device +EXPORT_SYMBOL vmlinux 0xd619faab dquot_release +EXPORT_SYMBOL vmlinux 0xd62ecd49 rps_sock_flow_table +EXPORT_SYMBOL vmlinux 0xd632ac29 inet_accept +EXPORT_SYMBOL vmlinux 0xd63fd8d1 utf8nagemax +EXPORT_SYMBOL vmlinux 0xd643239a acpi_leave_sleep_state +EXPORT_SYMBOL vmlinux 0xd64eadbd jbd2_journal_try_to_free_buffers +EXPORT_SYMBOL vmlinux 0xd6742002 preempt_schedule_thunk +EXPORT_SYMBOL vmlinux 0xd688716b dm_kcopyd_client_create +EXPORT_SYMBOL vmlinux 0xd68c5a1f adjust_resource +EXPORT_SYMBOL vmlinux 0xd691c6a9 unregister_sysctl_table +EXPORT_SYMBOL vmlinux 0xd69e0ab3 skb_get_hash_perturb +EXPORT_SYMBOL vmlinux 0xd69ecf66 mpage_writepages +EXPORT_SYMBOL vmlinux 0xd6a440a1 param_set_long +EXPORT_SYMBOL vmlinux 0xd6a91f54 twl_i2c_read +EXPORT_SYMBOL vmlinux 0xd6af0b00 pci_map_biosrom +EXPORT_SYMBOL vmlinux 0xd6b2ed5f generate_pm_trace +EXPORT_SYMBOL vmlinux 0xd6b33026 cpu_khz +EXPORT_SYMBOL vmlinux 0xd6b8f788 md_bitmap_endwrite +EXPORT_SYMBOL vmlinux 0xd6bf79d1 proc_mkdir_mode +EXPORT_SYMBOL vmlinux 0xd6ce9986 qdisc_watchdog_init_clockid +EXPORT_SYMBOL vmlinux 0xd6db2d6a sock_no_sendpage +EXPORT_SYMBOL vmlinux 0xd6ddd4fb devm_backlight_device_register +EXPORT_SYMBOL vmlinux 0xd6eaaea1 full_name_hash +EXPORT_SYMBOL vmlinux 0xd6ee688f vmalloc +EXPORT_SYMBOL vmlinux 0xd6fde043 is_module_sig_enforced +EXPORT_SYMBOL vmlinux 0xd70833de iget_failed +EXPORT_SYMBOL vmlinux 0xd70d35a1 gf128mul_4k_bbe +EXPORT_SYMBOL vmlinux 0xd70f62b6 acpi_os_execute +EXPORT_SYMBOL vmlinux 0xd717dde6 tcf_chain_put_by_act +EXPORT_SYMBOL vmlinux 0xd7225965 param_get_string +EXPORT_SYMBOL vmlinux 0xd726b9b3 dquot_initialize_needed +EXPORT_SYMBOL vmlinux 0xd738ca1b phy_unregister_fixup_for_uid +EXPORT_SYMBOL vmlinux 0xd738f860 phy_start_aneg +EXPORT_SYMBOL vmlinux 0xd7411f01 dma_resv_reserve_shared +EXPORT_SYMBOL vmlinux 0xd74c047e inet_csk_reqsk_queue_add +EXPORT_SYMBOL vmlinux 0xd759f6c0 mipi_dsi_driver_unregister +EXPORT_SYMBOL vmlinux 0xd773fbca km_policy_notify +EXPORT_SYMBOL vmlinux 0xd775c90e do_clone_file_range +EXPORT_SYMBOL vmlinux 0xd787d041 inet_pton_with_scope +EXPORT_SYMBOL vmlinux 0xd78e8a68 send_sig +EXPORT_SYMBOL vmlinux 0xd78ed1c2 devm_ioremap +EXPORT_SYMBOL vmlinux 0xd790d237 acpi_processor_notify_smm +EXPORT_SYMBOL vmlinux 0xd79172d6 refresh_frequency_limits +EXPORT_SYMBOL vmlinux 0xd7a261d6 unix_get_socket +EXPORT_SYMBOL vmlinux 0xd7a838ee amd_iommu_complete_ppr +EXPORT_SYMBOL vmlinux 0xd7d280ad irq_poll_complete +EXPORT_SYMBOL vmlinux 0xd7dd777b reserve_perfctr_nmi +EXPORT_SYMBOL vmlinux 0xd7e56a4e simple_strtoll +EXPORT_SYMBOL vmlinux 0xd7f7fe1a request_firmware +EXPORT_SYMBOL vmlinux 0xd8295998 alloc_etherdev_mqs +EXPORT_SYMBOL vmlinux 0xd82a8bc2 netpoll_parse_options +EXPORT_SYMBOL vmlinux 0xd83fe66b netdev_change_features +EXPORT_SYMBOL vmlinux 0xd846c315 acpi_write_bit_register +EXPORT_SYMBOL vmlinux 0xd8602b6a tun_is_xdp_frame +EXPORT_SYMBOL vmlinux 0xd864e45a blk_mq_stop_hw_queues +EXPORT_SYMBOL vmlinux 0xd89da37f movable_zone +EXPORT_SYMBOL vmlinux 0xd8a80dd8 xp_free +EXPORT_SYMBOL vmlinux 0xd8a994eb scsi_extd_sense_format +EXPORT_SYMBOL vmlinux 0xd8b11acf sock_no_getsockopt +EXPORT_SYMBOL vmlinux 0xd8b1523f generic_setlease +EXPORT_SYMBOL vmlinux 0xd8bc84d1 tcp_sync_mss +EXPORT_SYMBOL vmlinux 0xd8c318e2 _raw_write_unlock +EXPORT_SYMBOL vmlinux 0xd8c4b557 flow_indr_dev_unregister +EXPORT_SYMBOL vmlinux 0xd8cd3400 filemap_page_mkwrite +EXPORT_SYMBOL vmlinux 0xd8df08ac acpi_handle_printk +EXPORT_SYMBOL vmlinux 0xd8e7eab7 tcf_block_get_ext +EXPORT_SYMBOL vmlinux 0xd90349e3 flow_rule_match_enc_ports +EXPORT_SYMBOL vmlinux 0xd90802d9 vfs_fsync_range +EXPORT_SYMBOL vmlinux 0xd90cb249 ZSTD_getBlockSizeMax +EXPORT_SYMBOL vmlinux 0xd912c867 dev_remove_pack +EXPORT_SYMBOL vmlinux 0xd91c25f3 fscrypt_encrypt_block_inplace +EXPORT_SYMBOL vmlinux 0xd92deb6b acpi_evaluate_object +EXPORT_SYMBOL vmlinux 0xd9375540 skb_page_frag_refill +EXPORT_SYMBOL vmlinux 0xd9491c14 xa_destroy +EXPORT_SYMBOL vmlinux 0xd94c06fa ipv6_select_ident +EXPORT_SYMBOL vmlinux 0xd96a2adb mroute6_is_socket +EXPORT_SYMBOL vmlinux 0xd96edbc5 give_up_console +EXPORT_SYMBOL vmlinux 0xd971c6c4 xen_arch_register_cpu +EXPORT_SYMBOL vmlinux 0xd979a547 __x86_indirect_thunk_rdi +EXPORT_SYMBOL vmlinux 0xd985dc99 mempool_free_pages +EXPORT_SYMBOL vmlinux 0xd9903858 generic_file_llseek +EXPORT_SYMBOL vmlinux 0xd998b660 pci_wait_for_pending_transaction +EXPORT_SYMBOL vmlinux 0xd9a5ea54 __init_waitqueue_head +EXPORT_SYMBOL vmlinux 0xd9b85ef6 lockref_get +EXPORT_SYMBOL vmlinux 0xd9bbd90c tcf_idr_check_alloc +EXPORT_SYMBOL vmlinux 0xd9bfddfc blk_rq_map_user_iov +EXPORT_SYMBOL vmlinux 0xd9d2a061 pcie_get_width_cap +EXPORT_SYMBOL vmlinux 0xd9d8fd16 register_restart_handler +EXPORT_SYMBOL vmlinux 0xd9d952d1 crypto_aes_sbox +EXPORT_SYMBOL vmlinux 0xd9e8aee7 refcount_dec_and_lock +EXPORT_SYMBOL vmlinux 0xd9eb2d23 framebuffer_release +EXPORT_SYMBOL vmlinux 0xd9f212c9 mdiobus_setup_mdiodev_from_board_info +EXPORT_SYMBOL vmlinux 0xd9f2b179 skb_clone +EXPORT_SYMBOL vmlinux 0xd9f9a30e mmc_wait_for_cmd +EXPORT_SYMBOL vmlinux 0xda1ddef1 acpi_mark_gpe_for_wake +EXPORT_SYMBOL vmlinux 0xda22535f mdiobus_register_device +EXPORT_SYMBOL vmlinux 0xda26b8ea __irq_regs +EXPORT_SYMBOL vmlinux 0xda3d10a8 security_tun_dev_open +EXPORT_SYMBOL vmlinux 0xda72a7ec ZSTD_nextInputType +EXPORT_SYMBOL vmlinux 0xda7e8021 put_tty_driver +EXPORT_SYMBOL vmlinux 0xda872864 security_locked_down +EXPORT_SYMBOL vmlinux 0xda89ea3b ip_idents_reserve +EXPORT_SYMBOL vmlinux 0xda9fa3be cros_ec_cmd_xfer_status +EXPORT_SYMBOL vmlinux 0xda9fc7ae kstrtobool_from_user +EXPORT_SYMBOL vmlinux 0xdabd1776 key_unlink +EXPORT_SYMBOL vmlinux 0xdac4913a bitmap_allocate_region +EXPORT_SYMBOL vmlinux 0xdad13544 ptrs_per_p4d +EXPORT_SYMBOL vmlinux 0xdae757da __skb_vlan_pop +EXPORT_SYMBOL vmlinux 0xdb0d25d1 try_to_writeback_inodes_sb +EXPORT_SYMBOL vmlinux 0xdb16b170 topology_phys_to_logical_pkg +EXPORT_SYMBOL vmlinux 0xdb1b0820 dm_put_table_device +EXPORT_SYMBOL vmlinux 0xdb1d6e35 devm_get_clk_from_child +EXPORT_SYMBOL vmlinux 0xdb2688be skb_trim +EXPORT_SYMBOL vmlinux 0xdb283b1f scsi_command_normalize_sense +EXPORT_SYMBOL vmlinux 0xdb427bd7 ipmr_rule_default +EXPORT_SYMBOL vmlinux 0xdb55c076 radix_tree_iter_resume +EXPORT_SYMBOL vmlinux 0xdb59a0c5 eth_commit_mac_addr_change +EXPORT_SYMBOL vmlinux 0xdb65c767 eisa_driver_unregister +EXPORT_SYMBOL vmlinux 0xdb68bbad rfkill_destroy +EXPORT_SYMBOL vmlinux 0xdb760f52 __kfifo_free +EXPORT_SYMBOL vmlinux 0xdb85a9a6 thermal_cdev_update +EXPORT_SYMBOL vmlinux 0xdb95e185 intel_scu_ipc_dev_command_with_size +EXPORT_SYMBOL vmlinux 0xdba4f8bb dquot_commit_info +EXPORT_SYMBOL vmlinux 0xdbcf041a acpi_install_address_space_handler +EXPORT_SYMBOL vmlinux 0xdbd19011 inet_dgram_ops +EXPORT_SYMBOL vmlinux 0xdbd8b1d6 skb_copy +EXPORT_SYMBOL vmlinux 0xdbda0f0c phy_get_pause +EXPORT_SYMBOL vmlinux 0xdbdf6c92 ioport_resource +EXPORT_SYMBOL vmlinux 0xdbe4809e netdev_master_upper_dev_get_rcu +EXPORT_SYMBOL vmlinux 0xdbe4add2 dev_graft_qdisc +EXPORT_SYMBOL vmlinux 0xdbf17652 _raw_spin_lock +EXPORT_SYMBOL vmlinux 0xdc14eda7 pci_pci_problems +EXPORT_SYMBOL vmlinux 0xdc49c198 reciprocal_value_adv +EXPORT_SYMBOL vmlinux 0xdc512134 backlight_register_notifier +EXPORT_SYMBOL vmlinux 0xdc5736d5 acpi_register_ioapic +EXPORT_SYMBOL vmlinux 0xdc777f39 scmd_printk +EXPORT_SYMBOL vmlinux 0xdc7ba471 mod_zone_page_state +EXPORT_SYMBOL vmlinux 0xdc808e71 bio_alloc_bioset +EXPORT_SYMBOL vmlinux 0xdc8a8f5c unlock_page_memcg +EXPORT_SYMBOL vmlinux 0xdc8fc490 _copy_from_iter +EXPORT_SYMBOL vmlinux 0xdca2cc1f devm_extcon_register_notifier_all +EXPORT_SYMBOL vmlinux 0xdca736b5 dquot_initialize +EXPORT_SYMBOL vmlinux 0xdcaebe74 vme_register_bridge +EXPORT_SYMBOL vmlinux 0xdccc2472 serial8250_do_pm +EXPORT_SYMBOL vmlinux 0xdce55c98 __x86_retpoline_rax +EXPORT_SYMBOL vmlinux 0xdcf9c912 clk_bulk_get +EXPORT_SYMBOL vmlinux 0xdd128cb3 ip_check_defrag +EXPORT_SYMBOL vmlinux 0xdd18a993 acpi_check_dsm +EXPORT_SYMBOL vmlinux 0xdd2c169b mb_cache_create +EXPORT_SYMBOL vmlinux 0xdd4b0ee7 netif_receive_skb_core +EXPORT_SYMBOL vmlinux 0xdd64e639 strscpy +EXPORT_SYMBOL vmlinux 0xdd66bb1c scsi_remove_device +EXPORT_SYMBOL vmlinux 0xdd6c64ed default_qdisc_ops +EXPORT_SYMBOL vmlinux 0xdd742d72 __sg_free_table +EXPORT_SYMBOL vmlinux 0xdd7978ec iov_iter_pipe +EXPORT_SYMBOL vmlinux 0xdd7c0f10 vfs_ioctl +EXPORT_SYMBOL vmlinux 0xdd80f507 tcp_md5_do_del +EXPORT_SYMBOL vmlinux 0xdd8166a1 dma_fence_free +EXPORT_SYMBOL vmlinux 0xdd849d51 scsi_get_sense_info_fld +EXPORT_SYMBOL vmlinux 0xdd88bbd3 sock_common_getsockopt +EXPORT_SYMBOL vmlinux 0xdd9075ce vfs_readlink +EXPORT_SYMBOL vmlinux 0xdda3b4c8 kernel_sendmsg +EXPORT_SYMBOL vmlinux 0xddad7952 acpi_dbg_level +EXPORT_SYMBOL vmlinux 0xddcbe1f3 acpi_ut_value_exit +EXPORT_SYMBOL vmlinux 0xddcdb2d1 mr_mfc_find_any_parent +EXPORT_SYMBOL vmlinux 0xddf6ad7a completion_done +EXPORT_SYMBOL vmlinux 0xde05a763 vc_resize +EXPORT_SYMBOL vmlinux 0xde07f895 xfrm_find_acq_byseq +EXPORT_SYMBOL vmlinux 0xde155ddf scm_detach_fds +EXPORT_SYMBOL vmlinux 0xde162267 md_wait_for_blocked_rdev +EXPORT_SYMBOL vmlinux 0xde16bb88 d_invalidate +EXPORT_SYMBOL vmlinux 0xde1a0624 phy_validate_pause +EXPORT_SYMBOL vmlinux 0xde293f9e add_wait_queue_exclusive +EXPORT_SYMBOL vmlinux 0xde4d4ace dim_calc_stats +EXPORT_SYMBOL vmlinux 0xde4eeab5 __register_nmi_handler +EXPORT_SYMBOL vmlinux 0xde51e4aa netdev_name_node_alt_destroy +EXPORT_SYMBOL vmlinux 0xde62b840 ip_mc_leave_group +EXPORT_SYMBOL vmlinux 0xde684514 serio_close +EXPORT_SYMBOL vmlinux 0xde7a5bb0 clean_bdev_aliases +EXPORT_SYMBOL vmlinux 0xde80cd09 ioremap +EXPORT_SYMBOL vmlinux 0xde9b17ed agp3_generic_fetch_size +EXPORT_SYMBOL vmlinux 0xde9ef76f mdiobus_unregister_device +EXPORT_SYMBOL vmlinux 0xdea5a145 vfs_create_mount +EXPORT_SYMBOL vmlinux 0xdecbf93d pv_ops +EXPORT_SYMBOL vmlinux 0xded1ddc8 con_set_default_unimap +EXPORT_SYMBOL vmlinux 0xded39a6b gen_kill_estimator +EXPORT_SYMBOL vmlinux 0xded4ac16 register_quota_format +EXPORT_SYMBOL vmlinux 0xded6a415 acpi_get_object_info +EXPORT_SYMBOL vmlinux 0xded92a29 __xfrm_state_destroy +EXPORT_SYMBOL vmlinux 0xdee365b0 _raw_write_trylock +EXPORT_SYMBOL vmlinux 0xdeecba0f wait_on_page_bit +EXPORT_SYMBOL vmlinux 0xdef7c893 fb_match_mode +EXPORT_SYMBOL vmlinux 0xdefb8ac9 xfrm4_rcv_encap +EXPORT_SYMBOL vmlinux 0xdf176b14 update_region +EXPORT_SYMBOL vmlinux 0xdf2480bc skb_put +EXPORT_SYMBOL vmlinux 0xdf2c2742 rb_last +EXPORT_SYMBOL vmlinux 0xdf2f84ed clear_page_dirty_for_io +EXPORT_SYMBOL vmlinux 0xdf327b5f security_cred_getsecid +EXPORT_SYMBOL vmlinux 0xdf36914b xa_find_after +EXPORT_SYMBOL vmlinux 0xdf3cc456 get_vm_area +EXPORT_SYMBOL vmlinux 0xdf49fdc8 kmem_cache_alloc_trace +EXPORT_SYMBOL vmlinux 0xdf4c7e52 d_exact_alias +EXPORT_SYMBOL vmlinux 0xdf5134f0 netdev_state_change +EXPORT_SYMBOL vmlinux 0xdf54a8f7 netlink_unregister_notifier +EXPORT_SYMBOL vmlinux 0xdf566a59 __x86_indirect_thunk_r9 +EXPORT_SYMBOL vmlinux 0xdf625a81 fifo_create_dflt +EXPORT_SYMBOL vmlinux 0xdf6b082f proc_dointvec_jiffies +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 0xdfa05e5d follow_pfn +EXPORT_SYMBOL vmlinux 0xdfb14029 down_read_killable +EXPORT_SYMBOL vmlinux 0xdfbafe9e writeback_inodes_sb_nr +EXPORT_SYMBOL vmlinux 0xdfbc74fa vme_bus_type +EXPORT_SYMBOL vmlinux 0xdfcc992c current_work +EXPORT_SYMBOL vmlinux 0xdfdfa9e7 utf8nfdi +EXPORT_SYMBOL vmlinux 0xdff905e5 vme_slave_free +EXPORT_SYMBOL vmlinux 0xdffb744b frame_vector_to_pfns +EXPORT_SYMBOL vmlinux 0xdffc80fc vesa_modes +EXPORT_SYMBOL vmlinux 0xe00ce5ad udp_disconnect +EXPORT_SYMBOL vmlinux 0xe0227bca ether_setup +EXPORT_SYMBOL vmlinux 0xe0248727 __fs_parse +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 0xe03a689d dma_fence_array_ops +EXPORT_SYMBOL vmlinux 0xe0559af0 inet_proto_csum_replace4 +EXPORT_SYMBOL vmlinux 0xe05d48dd skb_tx_error +EXPORT_SYMBOL vmlinux 0xe07c1f0e fib_default_rule_add +EXPORT_SYMBOL vmlinux 0xe07e5f44 acpi_reconfig_notifier_unregister +EXPORT_SYMBOL vmlinux 0xe081b0fd proto_unregister +EXPORT_SYMBOL vmlinux 0xe082e88d acpi_check_address_range +EXPORT_SYMBOL vmlinux 0xe0875eb1 kstrtobool +EXPORT_SYMBOL vmlinux 0xe0955f76 utf8_casefold +EXPORT_SYMBOL vmlinux 0xe0b13336 argv_free +EXPORT_SYMBOL vmlinux 0xe0c2fcf5 nf_unregister_sockopt +EXPORT_SYMBOL vmlinux 0xe0c61689 param_set_bool +EXPORT_SYMBOL vmlinux 0xe0e5697f __tty_alloc_driver +EXPORT_SYMBOL vmlinux 0xe0f53a99 jbd2_journal_load +EXPORT_SYMBOL vmlinux 0xe0fd4610 scsi_device_lookup_by_target +EXPORT_SYMBOL vmlinux 0xe113bbbc csum_partial +EXPORT_SYMBOL vmlinux 0xe116b7d9 bio_add_pc_page +EXPORT_SYMBOL vmlinux 0xe11ae96b pci_set_power_state +EXPORT_SYMBOL vmlinux 0xe11ca997 ZSTD_getDictID_fromDict +EXPORT_SYMBOL vmlinux 0xe121f6d6 pci_prepare_to_sleep +EXPORT_SYMBOL vmlinux 0xe123f3d9 dma_fence_release +EXPORT_SYMBOL vmlinux 0xe12bda79 vme_dma_free_attribute +EXPORT_SYMBOL vmlinux 0xe12eefd3 d_alloc +EXPORT_SYMBOL vmlinux 0xe132a5a8 cdev_del +EXPORT_SYMBOL vmlinux 0xe138fb8c percpu_counter_add_batch +EXPORT_SYMBOL vmlinux 0xe13c31a5 __page_symlink +EXPORT_SYMBOL vmlinux 0xe13cd8a7 dmi_name_in_vendors +EXPORT_SYMBOL vmlinux 0xe13d5d07 kstrtou16_from_user +EXPORT_SYMBOL vmlinux 0xe144c391 blk_mq_end_request +EXPORT_SYMBOL vmlinux 0xe17076ae __dev_getfirstbyhwtype +EXPORT_SYMBOL vmlinux 0xe172651c blk_queue_max_write_same_sectors +EXPORT_SYMBOL vmlinux 0xe1a4f16a secure_ipv6_port_ephemeral +EXPORT_SYMBOL vmlinux 0xe1bdefbc pci_bus_write_config_byte +EXPORT_SYMBOL vmlinux 0xe1d85218 __bread_gfp +EXPORT_SYMBOL vmlinux 0xe1da2c32 flow_rule_match_enc_ipv4_addrs +EXPORT_SYMBOL vmlinux 0xe1dcf64a audit_log_format +EXPORT_SYMBOL vmlinux 0xe1e7e40c rtnl_nla_parse_ifla +EXPORT_SYMBOL vmlinux 0xe1ed698d _raw_write_lock_bh +EXPORT_SYMBOL vmlinux 0xe2150cc8 pci_get_domain_bus_and_slot +EXPORT_SYMBOL vmlinux 0xe2161a03 udp6_csum_init +EXPORT_SYMBOL vmlinux 0xe21b2a1e acpi_device_hid +EXPORT_SYMBOL vmlinux 0xe21f18ac __genradix_iter_peek +EXPORT_SYMBOL vmlinux 0xe247cff4 padata_free_shell +EXPORT_SYMBOL vmlinux 0xe24a1419 rproc_elf_load_segments +EXPORT_SYMBOL vmlinux 0xe25ee9d3 _raw_write_lock_irqsave +EXPORT_SYMBOL vmlinux 0xe2638fb2 input_setup_polling +EXPORT_SYMBOL vmlinux 0xe273d75d alloc_cpu_rmap +EXPORT_SYMBOL vmlinux 0xe28d02b5 blk_integrity_compare +EXPORT_SYMBOL vmlinux 0xe28d2364 pnp_unregister_card_driver +EXPORT_SYMBOL vmlinux 0xe28e100e simple_transaction_read +EXPORT_SYMBOL vmlinux 0xe2aa2cab d_genocide +EXPORT_SYMBOL vmlinux 0xe2c42f05 cros_ec_prepare_tx +EXPORT_SYMBOL vmlinux 0xe2d5255a strcmp +EXPORT_SYMBOL vmlinux 0xe2dacf7e devfreq_register_opp_notifier +EXPORT_SYMBOL vmlinux 0xe2e79621 dma_direct_sync_sg_for_cpu +EXPORT_SYMBOL vmlinux 0xe2ffeef3 scsi_req_init +EXPORT_SYMBOL vmlinux 0xe30593a1 mmc_hw_reset +EXPORT_SYMBOL vmlinux 0xe320b350 __quota_error +EXPORT_SYMBOL vmlinux 0xe32ab4d8 xxh64_digest +EXPORT_SYMBOL vmlinux 0xe3388b47 blk_mq_rq_cpu +EXPORT_SYMBOL vmlinux 0xe33eb74b netdev_master_upper_dev_link +EXPORT_SYMBOL vmlinux 0xe3616fb4 nvm_dev_dma_alloc +EXPORT_SYMBOL vmlinux 0xe36fad1a clear_wb_congested +EXPORT_SYMBOL vmlinux 0xe3782f21 sk_stream_wait_memory +EXPORT_SYMBOL vmlinux 0xe38fbc9f tcp_req_err +EXPORT_SYMBOL vmlinux 0xe390d2c7 acpi_get_hp_hw_control_from_firmware +EXPORT_SYMBOL vmlinux 0xe395abd6 fbcon_update_vcs +EXPORT_SYMBOL vmlinux 0xe39a4dec rproc_add_carveout +EXPORT_SYMBOL vmlinux 0xe3b58c94 sk_net_capable +EXPORT_SYMBOL vmlinux 0xe3c15a03 dev_uc_del +EXPORT_SYMBOL vmlinux 0xe3c8b11e kthread_associate_blkcg +EXPORT_SYMBOL vmlinux 0xe3d857ea __cpu_active_mask +EXPORT_SYMBOL vmlinux 0xe3ec2f2b alloc_chrdev_region +EXPORT_SYMBOL vmlinux 0xe3ff2c41 get_random_u64 +EXPORT_SYMBOL vmlinux 0xe3fffae9 __x86_indirect_thunk_rbp +EXPORT_SYMBOL vmlinux 0xe40976c0 pnp_range_reserved +EXPORT_SYMBOL vmlinux 0xe40c37ea down_write_trylock +EXPORT_SYMBOL vmlinux 0xe41476d9 ZSTD_getParams +EXPORT_SYMBOL vmlinux 0xe419bc99 iowrite32be +EXPORT_SYMBOL vmlinux 0xe42c55d7 fscrypt_decrypt_pagecache_blocks +EXPORT_SYMBOL vmlinux 0xe42df6c0 generic_file_readonly_mmap +EXPORT_SYMBOL vmlinux 0xe4329092 __ctzdi2 +EXPORT_SYMBOL vmlinux 0xe4329e14 sock_no_listen +EXPORT_SYMBOL vmlinux 0xe4353a4a set_nlink +EXPORT_SYMBOL vmlinux 0xe43874de neigh_update +EXPORT_SYMBOL vmlinux 0xe4389a8f write_dirty_buffer +EXPORT_SYMBOL vmlinux 0xe43baac5 input_mt_destroy_slots +EXPORT_SYMBOL vmlinux 0xe441e95a refcount_dec_not_one +EXPORT_SYMBOL vmlinux 0xe4546ad6 inode_set_bytes +EXPORT_SYMBOL vmlinux 0xe4691d07 scsi_report_device_reset +EXPORT_SYMBOL vmlinux 0xe470e5f3 md_update_sb +EXPORT_SYMBOL vmlinux 0xe484077e kmem_cache_create +EXPORT_SYMBOL vmlinux 0xe484e35f ioread32 +EXPORT_SYMBOL vmlinux 0xe4a17223 revalidate_disk +EXPORT_SYMBOL vmlinux 0xe4a544a2 dquot_drop +EXPORT_SYMBOL vmlinux 0xe4c2d41c tcp_sock_set_keepintvl +EXPORT_SYMBOL vmlinux 0xe4c9ccfa iov_iter_bvec +EXPORT_SYMBOL vmlinux 0xe4d80bf4 acpi_enable +EXPORT_SYMBOL vmlinux 0xe4e2bcce d_path +EXPORT_SYMBOL vmlinux 0xe4e91cd5 xfrm_policy_insert +EXPORT_SYMBOL vmlinux 0xe4f33235 fuse_dequeue_forget +EXPORT_SYMBOL vmlinux 0xe504338f padata_free +EXPORT_SYMBOL vmlinux 0xe5044102 dmaengine_get_unmap_data +EXPORT_SYMBOL vmlinux 0xe523ad75 synchronize_irq +EXPORT_SYMBOL vmlinux 0xe52fed01 datagram_poll +EXPORT_SYMBOL vmlinux 0xe5462a40 edac_mc_find +EXPORT_SYMBOL vmlinux 0xe572e6e6 agp_generic_alloc_user +EXPORT_SYMBOL vmlinux 0xe58090ca security_ib_endport_manage_subnet +EXPORT_SYMBOL vmlinux 0xe5867808 dlci_ioctl_set +EXPORT_SYMBOL vmlinux 0xe590dea3 sk_busy_loop_end +EXPORT_SYMBOL vmlinux 0xe59d55fa simple_fill_super +EXPORT_SYMBOL vmlinux 0xe5bc9a53 slhc_free +EXPORT_SYMBOL vmlinux 0xe5c60bd2 percpu_counter_set +EXPORT_SYMBOL vmlinux 0xe5c78a99 do_blank_screen +EXPORT_SYMBOL vmlinux 0xe607a9e1 skb_vlan_pop +EXPORT_SYMBOL vmlinux 0xe613a798 inet_addr_is_any +EXPORT_SYMBOL vmlinux 0xe6233c78 blk_mq_init_allocated_queue +EXPORT_SYMBOL vmlinux 0xe6348672 send_sig_mceerr +EXPORT_SYMBOL vmlinux 0xe640983c device_add_disk_no_queue_reg +EXPORT_SYMBOL vmlinux 0xe657be41 buffer_migrate_page +EXPORT_SYMBOL vmlinux 0xe662851e mdiobus_read +EXPORT_SYMBOL vmlinux 0xe6699f70 netdev_pick_tx +EXPORT_SYMBOL vmlinux 0xe66de96e vfs_fsync +EXPORT_SYMBOL vmlinux 0xe66f1d73 generic_splice_sendpage +EXPORT_SYMBOL vmlinux 0xe67b7c80 vfs_fadvise +EXPORT_SYMBOL vmlinux 0xe691ac7f ZSTD_decompressBegin +EXPORT_SYMBOL vmlinux 0xe6a77483 fs_param_is_string +EXPORT_SYMBOL vmlinux 0xe6aa5901 jbd2_journal_start +EXPORT_SYMBOL vmlinux 0xe6ca371c mr_vif_seq_next +EXPORT_SYMBOL vmlinux 0xe6f32a2d blk_rq_unmap_user +EXPORT_SYMBOL vmlinux 0xe6fac617 pci_read_vpd +EXPORT_SYMBOL vmlinux 0xe703ac3d input_unregister_handler +EXPORT_SYMBOL vmlinux 0xe70877d4 acpi_remove_sci_handler +EXPORT_SYMBOL vmlinux 0xe712578e sock_dequeue_err_skb +EXPORT_SYMBOL vmlinux 0xe71d06b0 phy_get_eee_err +EXPORT_SYMBOL vmlinux 0xe7257ab8 xa_store_range +EXPORT_SYMBOL vmlinux 0xe7324b9a utf8nfdicf +EXPORT_SYMBOL vmlinux 0xe7342a34 nosteal_pipe_buf_ops +EXPORT_SYMBOL vmlinux 0xe73472f1 fib_notifier_ops_register +EXPORT_SYMBOL vmlinux 0xe735308d xfrm_input_unregister_afinfo +EXPORT_SYMBOL vmlinux 0xe73e8996 dev_set_mac_address +EXPORT_SYMBOL vmlinux 0xe748006f register_console +EXPORT_SYMBOL vmlinux 0xe74d2263 __netdev_alloc_skb +EXPORT_SYMBOL vmlinux 0xe7714aeb vfs_create +EXPORT_SYMBOL vmlinux 0xe787698f acpi_processor_register_performance +EXPORT_SYMBOL vmlinux 0xe7a02573 ida_alloc_range +EXPORT_SYMBOL vmlinux 0xe7ac5d15 lease_modify +EXPORT_SYMBOL vmlinux 0xe7b00dfb __x86_indirect_thunk_r13 +EXPORT_SYMBOL vmlinux 0xe7b4d3d0 migrate_page_move_mapping +EXPORT_SYMBOL vmlinux 0xe7c874a1 nonseekable_open +EXPORT_SYMBOL vmlinux 0xe7d3c4c1 __tracepoint_kmem_cache_free +EXPORT_SYMBOL vmlinux 0xe7d4daac seq_list_next +EXPORT_SYMBOL vmlinux 0xe7f2282f __skb_checksum +EXPORT_SYMBOL vmlinux 0xe7f68a7b devfreq_remove_governor +EXPORT_SYMBOL vmlinux 0xe81e9f96 mipi_dsi_dcs_set_tear_on +EXPORT_SYMBOL vmlinux 0xe82c1115 pci_scan_single_device +EXPORT_SYMBOL vmlinux 0xe8332547 dev_mc_add_global +EXPORT_SYMBOL vmlinux 0xe85f2123 acpi_tb_unload_table +EXPORT_SYMBOL vmlinux 0xe86f9dc3 dquot_disable +EXPORT_SYMBOL vmlinux 0xe8c8fa59 genphy_read_status +EXPORT_SYMBOL vmlinux 0xe8dc8387 tty_check_change +EXPORT_SYMBOL vmlinux 0xe8fbf4fa __alloc_bucket_spinlocks +EXPORT_SYMBOL vmlinux 0xe9013665 xfrm_parse_spi +EXPORT_SYMBOL vmlinux 0xe914e41e strcpy +EXPORT_SYMBOL vmlinux 0xe915be4f poll_initwait +EXPORT_SYMBOL vmlinux 0xe91f03f2 iommu_get_dma_cookie +EXPORT_SYMBOL vmlinux 0xe9248dfb xfrm_state_free +EXPORT_SYMBOL vmlinux 0xe926fecf param_get_uint +EXPORT_SYMBOL vmlinux 0xe953b21f get_next_ino +EXPORT_SYMBOL vmlinux 0xe96ec5f6 __skb_checksum_complete_head +EXPORT_SYMBOL vmlinux 0xe9a5e67f intel_graphics_stolen_res +EXPORT_SYMBOL vmlinux 0xe9ae8b8e inet_addr_type +EXPORT_SYMBOL vmlinux 0xe9af7397 __xa_set_mark +EXPORT_SYMBOL vmlinux 0xe9c0d0af is_bad_inode +EXPORT_SYMBOL vmlinux 0xe9ce359b alloc_skb_with_frags +EXPORT_SYMBOL vmlinux 0xe9d75af9 read_cache_page_gfp +EXPORT_SYMBOL vmlinux 0xe9e8faeb efi_tpm_final_log_size +EXPORT_SYMBOL vmlinux 0xe9f518e4 filemap_fdatawrite_range +EXPORT_SYMBOL vmlinux 0xe9f7149c zlib_deflate_workspacesize +EXPORT_SYMBOL vmlinux 0xe9f9b174 tso_start +EXPORT_SYMBOL vmlinux 0xea0198aa bio_list_copy_data +EXPORT_SYMBOL vmlinux 0xea024048 phy_ethtool_get_link_ksettings +EXPORT_SYMBOL vmlinux 0xea231bdc down_write_killable +EXPORT_SYMBOL vmlinux 0xea2f4469 phy_ethtool_get_wol +EXPORT_SYMBOL vmlinux 0xea395496 inet_csk_prepare_forced_close +EXPORT_SYMBOL vmlinux 0xea3c8e4e scsilun_to_int +EXPORT_SYMBOL vmlinux 0xea47400a inode_io_list_del +EXPORT_SYMBOL vmlinux 0xea6f9a36 zlib_deflate_dfltcc_enabled +EXPORT_SYMBOL vmlinux 0xea75d47e scsi_remove_target +EXPORT_SYMBOL vmlinux 0xea778fab sg_pcopy_to_buffer +EXPORT_SYMBOL vmlinux 0xea80dfe1 security_req_classify_flow +EXPORT_SYMBOL vmlinux 0xea849cf0 jbd2_journal_set_features +EXPORT_SYMBOL vmlinux 0xea97d635 flow_indr_block_cb_alloc +EXPORT_SYMBOL vmlinux 0xea9adde3 generic_write_end +EXPORT_SYMBOL vmlinux 0xea9c709f vme_bus_error_handler +EXPORT_SYMBOL vmlinux 0xeaab9c01 sb_min_blocksize +EXPORT_SYMBOL vmlinux 0xeab6f4c4 acpi_check_resource_conflict +EXPORT_SYMBOL vmlinux 0xead5dd20 netdev_set_tc_queue +EXPORT_SYMBOL vmlinux 0xead6d6b2 phy_register_fixup_for_uid +EXPORT_SYMBOL vmlinux 0xead999ae ppp_dev_name +EXPORT_SYMBOL vmlinux 0xeae3dfd6 __const_udelay +EXPORT_SYMBOL vmlinux 0xeafc141f __posix_acl_chmod +EXPORT_SYMBOL vmlinux 0xeb096133 i2c_del_driver +EXPORT_SYMBOL vmlinux 0xeb0c59a5 dcb_ieee_setapp +EXPORT_SYMBOL vmlinux 0xeb1c9abb netif_receive_skb +EXPORT_SYMBOL vmlinux 0xeb233a45 __kmalloc +EXPORT_SYMBOL vmlinux 0xeb2391c9 gen_new_estimator +EXPORT_SYMBOL vmlinux 0xeb31aee8 acpi_trace_point +EXPORT_SYMBOL vmlinux 0xeb37101c audit_log_end +EXPORT_SYMBOL vmlinux 0xeb44339a free_pages_exact +EXPORT_SYMBOL vmlinux 0xeb539214 __i2c_smbus_xfer +EXPORT_SYMBOL vmlinux 0xeb547de2 mmc_request_done +EXPORT_SYMBOL vmlinux 0xeb5eb056 fbcon_set_tileops +EXPORT_SYMBOL vmlinux 0xeb6448be d_find_any_alias +EXPORT_SYMBOL vmlinux 0xeb6e11ca vfs_iocb_iter_write +EXPORT_SYMBOL vmlinux 0xeb75f13b __breadahead_gfp +EXPORT_SYMBOL vmlinux 0xeb7f6046 acpi_get_devices +EXPORT_SYMBOL vmlinux 0xeb801a20 is_nd_btt +EXPORT_SYMBOL vmlinux 0xeb849f06 mmc_card_is_blockaddr +EXPORT_SYMBOL vmlinux 0xeb93e789 blk_alloc_queue +EXPORT_SYMBOL vmlinux 0xeb94733e vfs_get_fsid +EXPORT_SYMBOL vmlinux 0xeb9e913d sgl_alloc_order +EXPORT_SYMBOL vmlinux 0xebae268e tcf_idr_cleanup +EXPORT_SYMBOL vmlinux 0xebd032be dquot_get_dqblk +EXPORT_SYMBOL vmlinux 0xec1f6b1d ip_tunnel_parse_protocol +EXPORT_SYMBOL vmlinux 0xec237e4f xps_needed +EXPORT_SYMBOL vmlinux 0xec2b8a42 acpi_walk_namespace +EXPORT_SYMBOL vmlinux 0xec2e1c8f proc_doulongvec_minmax +EXPORT_SYMBOL vmlinux 0xec3c7f50 iov_iter_discard +EXPORT_SYMBOL vmlinux 0xec4448eb _dev_info +EXPORT_SYMBOL vmlinux 0xec4d9e3a clk_get_sys +EXPORT_SYMBOL vmlinux 0xec63ab0c twl6040_reg_read +EXPORT_SYMBOL vmlinux 0xec6dc0c0 ethtool_virtdev_set_link_ksettings +EXPORT_SYMBOL vmlinux 0xec8075e0 __dquot_transfer +EXPORT_SYMBOL vmlinux 0xec8ec3a6 xfrm_policy_byid +EXPORT_SYMBOL vmlinux 0xec9164d4 devm_devfreq_register_notifier +EXPORT_SYMBOL vmlinux 0xeca3d956 mr_mfc_seq_next +EXPORT_SYMBOL vmlinux 0xecac8407 __memcpy +EXPORT_SYMBOL vmlinux 0xecc836e6 simple_getattr +EXPORT_SYMBOL vmlinux 0xecdeeaaf tcf_get_next_proto +EXPORT_SYMBOL vmlinux 0xece14a6d dev_set_promiscuity +EXPORT_SYMBOL vmlinux 0xece784c2 rb_first +EXPORT_SYMBOL vmlinux 0xecfb6a89 mipi_dsi_dcs_read +EXPORT_SYMBOL vmlinux 0xecfd68ef acpi_get_node +EXPORT_SYMBOL vmlinux 0xed00c4fb acpi_os_printf +EXPORT_SYMBOL vmlinux 0xed051028 intel_gmch_probe +EXPORT_SYMBOL vmlinux 0xed20d666 bio_put +EXPORT_SYMBOL vmlinux 0xed25ac4e cdev_device_add +EXPORT_SYMBOL vmlinux 0xed34ebbc acpi_any_gpe_status_set +EXPORT_SYMBOL vmlinux 0xed3e5bcc filemap_map_pages +EXPORT_SYMBOL vmlinux 0xed55f929 acpi_os_unmap_generic_address +EXPORT_SYMBOL vmlinux 0xed7e6fc9 netdev_adjacent_change_abort +EXPORT_SYMBOL vmlinux 0xed811c74 dma_direct_sync_sg_for_device +EXPORT_SYMBOL vmlinux 0xed8acda0 dma_ops +EXPORT_SYMBOL vmlinux 0xeda39b90 input_enable_softrepeat +EXPORT_SYMBOL vmlinux 0xedb11a94 nf_unregister_net_hooks +EXPORT_SYMBOL vmlinux 0xedb8d0e9 pci_read_config_word +EXPORT_SYMBOL vmlinux 0xedbaee5e nla_strcmp +EXPORT_SYMBOL vmlinux 0xedc03953 iounmap +EXPORT_SYMBOL vmlinux 0xedca4638 ilookup5 +EXPORT_SYMBOL vmlinux 0xedd07250 tcf_unregister_action +EXPORT_SYMBOL vmlinux 0xedda0a5b i2c_put_adapter +EXPORT_SYMBOL vmlinux 0xede24a04 dquot_quota_sync +EXPORT_SYMBOL vmlinux 0xedeba20e tcf_chain_get_by_act +EXPORT_SYMBOL vmlinux 0xedf0d906 iov_iter_alignment +EXPORT_SYMBOL vmlinux 0xee2366ff call_usermodehelper_setup +EXPORT_SYMBOL vmlinux 0xee2d0fc7 _local_bh_enable +EXPORT_SYMBOL vmlinux 0xee484737 xfrm_user_policy +EXPORT_SYMBOL vmlinux 0xee54f1bf bdev_stack_limits +EXPORT_SYMBOL vmlinux 0xee58e970 fb_add_videomode +EXPORT_SYMBOL vmlinux 0xee7af982 blk_queue_stack_limits +EXPORT_SYMBOL vmlinux 0xee7d7deb gen_pool_dma_zalloc +EXPORT_SYMBOL vmlinux 0xee7eb9e1 pnp_platform_devices +EXPORT_SYMBOL vmlinux 0xee7f275e devm_ioport_map +EXPORT_SYMBOL vmlinux 0xee8079f5 devm_request_threaded_irq +EXPORT_SYMBOL vmlinux 0xee8d74d6 jiffies64_to_nsecs +EXPORT_SYMBOL vmlinux 0xee91879b rb_first_postorder +EXPORT_SYMBOL vmlinux 0xeea72a6c __lock_page +EXPORT_SYMBOL vmlinux 0xeea777c0 nd_pfn_validate +EXPORT_SYMBOL vmlinux 0xeebc2617 wireless_spy_update +EXPORT_SYMBOL vmlinux 0xeed444a0 iov_iter_get_pages +EXPORT_SYMBOL vmlinux 0xeeedadae ip_sock_set_pktinfo +EXPORT_SYMBOL vmlinux 0xeef1639f _dev_err +EXPORT_SYMBOL vmlinux 0xeef410f4 put_ipc_ns +EXPORT_SYMBOL vmlinux 0xeef84e9c vga_switcheroo_get_client_state +EXPORT_SYMBOL vmlinux 0xef0380bf prepare_to_swait_exclusive +EXPORT_SYMBOL vmlinux 0xef24f3fe filemap_fdatawait_range_keep_errors +EXPORT_SYMBOL vmlinux 0xef25c717 dquot_scan_active +EXPORT_SYMBOL vmlinux 0xef292b11 xfrm_sad_getinfo +EXPORT_SYMBOL vmlinux 0xef2993f4 _raw_read_unlock +EXPORT_SYMBOL vmlinux 0xef6d5ef7 prepare_kernel_cred +EXPORT_SYMBOL vmlinux 0xef78c5f6 genphy_soft_reset +EXPORT_SYMBOL vmlinux 0xef8f1eac fscrypt_free_bounce_page +EXPORT_SYMBOL vmlinux 0xef920306 register_md_cluster_operations +EXPORT_SYMBOL vmlinux 0xef9aedfc boot_option_idle_override +EXPORT_SYMBOL vmlinux 0xefaf2e4f tcf_queue_work +EXPORT_SYMBOL vmlinux 0xefc19b95 gnet_stats_copy_app +EXPORT_SYMBOL vmlinux 0xefcea2e7 acpi_warning +EXPORT_SYMBOL vmlinux 0xefd30512 __cpuhp_setup_state +EXPORT_SYMBOL vmlinux 0xefdd3e9a mipi_dsi_dcs_set_display_off +EXPORT_SYMBOL vmlinux 0xefdd7699 ab3100_event_register +EXPORT_SYMBOL vmlinux 0xefdfc588 pci_ep_cfs_remove_epf_group +EXPORT_SYMBOL vmlinux 0xefe4f679 ZSTD_CCtxWorkspaceBound +EXPORT_SYMBOL vmlinux 0xefebbd40 ioread64be_lo_hi +EXPORT_SYMBOL vmlinux 0xefee932c acpi_get_data_full +EXPORT_SYMBOL vmlinux 0xeff53206 put_disk_and_module +EXPORT_SYMBOL vmlinux 0xeff608e0 kstrtos16_from_user +EXPORT_SYMBOL vmlinux 0xf0009fee put_pages_list +EXPORT_SYMBOL vmlinux 0xf0058da0 tty_port_free_xmit_buf +EXPORT_SYMBOL vmlinux 0xf008a885 seg6_hmac_init +EXPORT_SYMBOL vmlinux 0xf01ef140 drop_super_exclusive +EXPORT_SYMBOL vmlinux 0xf02aa937 wait_for_completion_interruptible_timeout +EXPORT_SYMBOL vmlinux 0xf034e03b mdio_find_bus +EXPORT_SYMBOL vmlinux 0xf05a1365 jbd2_journal_force_commit_nested +EXPORT_SYMBOL vmlinux 0xf05c32ad rdmsr_on_cpus +EXPORT_SYMBOL vmlinux 0xf05c7af0 agp_allocate_memory +EXPORT_SYMBOL vmlinux 0xf063660a i2c_verify_client +EXPORT_SYMBOL vmlinux 0xf065f629 ioread16be +EXPORT_SYMBOL vmlinux 0xf0844bcf inet_del_protocol +EXPORT_SYMBOL vmlinux 0xf08c67de napi_alloc_frag +EXPORT_SYMBOL vmlinux 0xf0916bc1 cfb_imageblit +EXPORT_SYMBOL vmlinux 0xf09b5d9a get_zeroed_page +EXPORT_SYMBOL vmlinux 0xf0b8953f dquot_quota_on_mount +EXPORT_SYMBOL vmlinux 0xf0bb0996 proto_register +EXPORT_SYMBOL vmlinux 0xf0caf25f nf_hook_slow_list +EXPORT_SYMBOL vmlinux 0xf0d829a5 xfrm_init_replay +EXPORT_SYMBOL vmlinux 0xf0ea9a97 dcbnl_ieee_notify +EXPORT_SYMBOL vmlinux 0xf102033e slhc_remember +EXPORT_SYMBOL vmlinux 0xf10b0c14 __skb_try_recv_datagram +EXPORT_SYMBOL vmlinux 0xf10de535 ioread8 +EXPORT_SYMBOL vmlinux 0xf11543ff find_first_zero_bit +EXPORT_SYMBOL vmlinux 0xf129ead4 locks_delete_block +EXPORT_SYMBOL vmlinux 0xf12cfd76 tc_setup_flow_action +EXPORT_SYMBOL vmlinux 0xf1448811 rproc_alloc +EXPORT_SYMBOL vmlinux 0xf14bc294 eth_type_trans +EXPORT_SYMBOL vmlinux 0xf14d5445 inode_nohighmem +EXPORT_SYMBOL vmlinux 0xf16d54fb discard_new_inode +EXPORT_SYMBOL vmlinux 0xf1848ee2 acpi_install_sci_handler +EXPORT_SYMBOL vmlinux 0xf192e872 gnet_stats_copy_basic_hw +EXPORT_SYMBOL vmlinux 0xf195c682 fb_invert_cmaps +EXPORT_SYMBOL vmlinux 0xf1969a8e __usecs_to_jiffies +EXPORT_SYMBOL vmlinux 0xf1a68107 acpi_processor_preregister_performance +EXPORT_SYMBOL vmlinux 0xf1c49051 truncate_setsize +EXPORT_SYMBOL vmlinux 0xf1d00628 __cpuhp_remove_state +EXPORT_SYMBOL vmlinux 0xf1db1704 nla_memcpy +EXPORT_SYMBOL vmlinux 0xf1e046cc panic +EXPORT_SYMBOL vmlinux 0xf1e98c74 avenrun +EXPORT_SYMBOL vmlinux 0xf1ea9064 nvdimm_namespace_disk_name +EXPORT_SYMBOL vmlinux 0xf1edd5f0 jbd2_journal_destroy +EXPORT_SYMBOL vmlinux 0xf1fd920c mmc_unregister_driver +EXPORT_SYMBOL vmlinux 0xf21017d9 mutex_trylock +EXPORT_SYMBOL vmlinux 0xf21b74f1 scsi_register_driver +EXPORT_SYMBOL vmlinux 0xf2215f74 blk_finish_plug +EXPORT_SYMBOL vmlinux 0xf2282233 register_cdrom +EXPORT_SYMBOL vmlinux 0xf2307ca4 put_cmsg_scm_timestamping64 +EXPORT_SYMBOL vmlinux 0xf2375356 pfifo_qdisc_ops +EXPORT_SYMBOL vmlinux 0xf23fcb99 __kfifo_in +EXPORT_SYMBOL vmlinux 0xf2805f8f processors +EXPORT_SYMBOL vmlinux 0xf28277fe seq_release +EXPORT_SYMBOL vmlinux 0xf28404cf devlink_dpipe_header_ipv6 +EXPORT_SYMBOL vmlinux 0xf28a63fb qdisc_watchdog_init +EXPORT_SYMBOL vmlinux 0xf28ed6e2 machine_to_phys_nr +EXPORT_SYMBOL vmlinux 0xf29403e5 acpi_install_table_handler +EXPORT_SYMBOL vmlinux 0xf29a9617 ptp_schedule_worker +EXPORT_SYMBOL vmlinux 0xf29f8515 __kfifo_dma_out_prepare_r +EXPORT_SYMBOL vmlinux 0xf2a17037 page_symlink +EXPORT_SYMBOL vmlinux 0xf2a74093 napi_consume_skb +EXPORT_SYMBOL vmlinux 0xf2b81b64 arch_io_reserve_memtype_wc +EXPORT_SYMBOL vmlinux 0xf2bc694b nvdimm_bus_lock +EXPORT_SYMBOL vmlinux 0xf2c43f3f zlib_deflate +EXPORT_SYMBOL vmlinux 0xf2c831de phy_start +EXPORT_SYMBOL vmlinux 0xf2d8488e tcp_initialize_rcv_mss +EXPORT_SYMBOL vmlinux 0xf2d92f5b ip_sock_set_mtu_discover +EXPORT_SYMBOL vmlinux 0xf2e5a822 backlight_device_get_by_name +EXPORT_SYMBOL vmlinux 0xf2e5bd87 security_free_mnt_opts +EXPORT_SYMBOL vmlinux 0xf2f4e011 file_ns_capable +EXPORT_SYMBOL vmlinux 0xf2f53617 memregion_free +EXPORT_SYMBOL vmlinux 0xf2f87a3b devm_extcon_unregister_notifier_all +EXPORT_SYMBOL vmlinux 0xf2fde8c4 rawv6_mh_filter_unregister +EXPORT_SYMBOL vmlinux 0xf303b7ed posix_test_lock +EXPORT_SYMBOL vmlinux 0xf305adf0 compat_tcp_setsockopt +EXPORT_SYMBOL vmlinux 0xf30965ac iosf_mbi_register_pmic_bus_access_notifier +EXPORT_SYMBOL vmlinux 0xf3107926 sha224_update +EXPORT_SYMBOL vmlinux 0xf318968e __ethtool_get_link_ksettings +EXPORT_SYMBOL vmlinux 0xf318af00 tty_wait_until_sent +EXPORT_SYMBOL vmlinux 0xf31a5229 security_inode_getsecctx +EXPORT_SYMBOL vmlinux 0xf3341268 __clear_user +EXPORT_SYMBOL vmlinux 0xf346231f seq_list_start_head +EXPORT_SYMBOL vmlinux 0xf3496323 follow_up +EXPORT_SYMBOL vmlinux 0xf3538b0e dquot_load_quota_sb +EXPORT_SYMBOL vmlinux 0xf353a698 register_module_notifier +EXPORT_SYMBOL vmlinux 0xf3598f6d tty_register_device +EXPORT_SYMBOL vmlinux 0xf36f874b pagevec_lookup_range_nr_tag +EXPORT_SYMBOL vmlinux 0xf37b48d1 input_handler_for_each_handle +EXPORT_SYMBOL vmlinux 0xf38088b9 inet_frags_fini +EXPORT_SYMBOL vmlinux 0xf389fe60 __hw_addr_init +EXPORT_SYMBOL vmlinux 0xf3916987 global_cursor_default +EXPORT_SYMBOL vmlinux 0xf3a57892 release_dentry_name_snapshot +EXPORT_SYMBOL vmlinux 0xf3a8001b napi_complete_done +EXPORT_SYMBOL vmlinux 0xf3b30a06 utf8version_latest +EXPORT_SYMBOL vmlinux 0xf3b6a69b pci_disable_link_state_locked +EXPORT_SYMBOL vmlinux 0xf3d22021 get_cached_acl +EXPORT_SYMBOL vmlinux 0xf3e0e1df allocate_resource +EXPORT_SYMBOL vmlinux 0xf3e6402e __bitmap_equal +EXPORT_SYMBOL vmlinux 0xf40e7a73 __xa_alloc +EXPORT_SYMBOL vmlinux 0xf41ea1a7 locks_free_lock +EXPORT_SYMBOL vmlinux 0xf425eaeb __nla_reserve_64bit +EXPORT_SYMBOL vmlinux 0xf43d2caa acpi_remove_interface +EXPORT_SYMBOL vmlinux 0xf44008fa dma_alloc_attrs +EXPORT_SYMBOL vmlinux 0xf440567c inc_zone_page_state +EXPORT_SYMBOL vmlinux 0xf4411331 devm_nvmem_unregister +EXPORT_SYMBOL vmlinux 0xf441ac43 ioread8_rep +EXPORT_SYMBOL vmlinux 0xf44a904a net_ns_barrier +EXPORT_SYMBOL vmlinux 0xf44e5cb4 sync_inodes_sb +EXPORT_SYMBOL vmlinux 0xf45167bd neigh_lookup +EXPORT_SYMBOL vmlinux 0xf458c53e bdput +EXPORT_SYMBOL vmlinux 0xf46c0e7a genphy_write_mmd_unsupported +EXPORT_SYMBOL vmlinux 0xf4719887 genphy_c37_read_status +EXPORT_SYMBOL vmlinux 0xf474c21c bitmap_print_to_pagebuf +EXPORT_SYMBOL vmlinux 0xf474fdcb kfree_const +EXPORT_SYMBOL vmlinux 0xf483fe39 __inc_zone_page_state +EXPORT_SYMBOL vmlinux 0xf4a2e671 elv_rb_add +EXPORT_SYMBOL vmlinux 0xf4a565fd wrmsr_on_cpus +EXPORT_SYMBOL vmlinux 0xf4a5c213 avail_to_resrv_perfctr_nmi_bit +EXPORT_SYMBOL vmlinux 0xf4b2b86e cgroup_bpf_enabled_key +EXPORT_SYMBOL vmlinux 0xf4b6ff66 seq_escape_mem_ascii +EXPORT_SYMBOL vmlinux 0xf4b754fd acpi_resources_are_enforced +EXPORT_SYMBOL vmlinux 0xf4bdbeb9 __frontswap_invalidate_area +EXPORT_SYMBOL vmlinux 0xf4c6a598 kobject_put +EXPORT_SYMBOL vmlinux 0xf4dafefb km_query +EXPORT_SYMBOL vmlinux 0xf4db17c4 blk_register_region +EXPORT_SYMBOL vmlinux 0xf4db35bc stpcpy +EXPORT_SYMBOL vmlinux 0xf4dbdfa2 abx500_set_register_interruptible +EXPORT_SYMBOL vmlinux 0xf4eccdf9 flow_rule_match_ipv6_addrs +EXPORT_SYMBOL vmlinux 0xf4f14de6 rtnl_trylock +EXPORT_SYMBOL vmlinux 0xf4f90d0a md_cluster_ops +EXPORT_SYMBOL vmlinux 0xf50c0c47 qdisc_hash_del +EXPORT_SYMBOL vmlinux 0xf5193e71 dev_close +EXPORT_SYMBOL vmlinux 0xf519c20e __sk_mem_reduce_allocated +EXPORT_SYMBOL vmlinux 0xf528383e generic_fadvise +EXPORT_SYMBOL vmlinux 0xf52b31eb udp_ioctl +EXPORT_SYMBOL vmlinux 0xf52fbb7f mipi_dsi_generic_read +EXPORT_SYMBOL vmlinux 0xf53d4c26 qdisc_class_hash_destroy +EXPORT_SYMBOL vmlinux 0xf53dd831 skb_copy_and_hash_datagram_iter +EXPORT_SYMBOL vmlinux 0xf56c5ece dev_mc_unsync +EXPORT_SYMBOL vmlinux 0xf591753d nf_hooks_needed +EXPORT_SYMBOL vmlinux 0xf5a20ed2 __genradix_prealloc +EXPORT_SYMBOL vmlinux 0xf5a285d7 gnet_stats_start_copy +EXPORT_SYMBOL vmlinux 0xf5a5c84c msrs_alloc +EXPORT_SYMBOL vmlinux 0xf5ab26c2 vfs_mknod +EXPORT_SYMBOL vmlinux 0xf5c3a761 generic_pipe_buf_get +EXPORT_SYMBOL vmlinux 0xf5e5a87b hdmi_infoframe_pack_only +EXPORT_SYMBOL vmlinux 0xf5e7ea40 ktime_get_coarse_ts64 +EXPORT_SYMBOL vmlinux 0xf6009972 sockfd_lookup +EXPORT_SYMBOL vmlinux 0xf601fe72 mipi_dsi_dcs_set_column_address +EXPORT_SYMBOL vmlinux 0xf6086b26 ppp_register_compressor +EXPORT_SYMBOL vmlinux 0xf60ab926 acpi_get_event_status +EXPORT_SYMBOL vmlinux 0xf6184032 dma_direct_map_sg +EXPORT_SYMBOL vmlinux 0xf629970b ndisc_mc_map +EXPORT_SYMBOL vmlinux 0xf62f1304 inet_confirm_addr +EXPORT_SYMBOL vmlinux 0xf632e829 blk_mq_requeue_request +EXPORT_SYMBOL vmlinux 0xf6359c9a submit_bh +EXPORT_SYMBOL vmlinux 0xf635f3a1 block_page_mkwrite +EXPORT_SYMBOL vmlinux 0xf63a7305 pci_set_mwi +EXPORT_SYMBOL vmlinux 0xf643d104 hsiphash_4u32 +EXPORT_SYMBOL vmlinux 0xf6453cdf skb_flow_dissect_tunnel_info +EXPORT_SYMBOL vmlinux 0xf650fe76 key_reject_and_link +EXPORT_SYMBOL vmlinux 0xf65a72bb get_super_exclusive_thawed +EXPORT_SYMBOL vmlinux 0xf665f74f sock_load_diag_module +EXPORT_SYMBOL vmlinux 0xf66617dc mmc_release_host +EXPORT_SYMBOL vmlinux 0xf6682727 PageMovable +EXPORT_SYMBOL vmlinux 0xf679df36 scsi_compat_ioctl +EXPORT_SYMBOL vmlinux 0xf681acfc hdmi_infoframe_unpack +EXPORT_SYMBOL vmlinux 0xf68285c0 register_inetaddr_notifier +EXPORT_SYMBOL vmlinux 0xf6cfc857 inet_offloads +EXPORT_SYMBOL vmlinux 0xf6e68d46 submit_bio_wait +EXPORT_SYMBOL vmlinux 0xf6ebc03b net_ratelimit +EXPORT_SYMBOL vmlinux 0xf6f6bac8 blkdev_get +EXPORT_SYMBOL vmlinux 0xf6f9d58d init_on_free +EXPORT_SYMBOL vmlinux 0xf6fc8791 __bitmap_xor +EXPORT_SYMBOL vmlinux 0xf710297c jbd2_journal_release_jbd_inode +EXPORT_SYMBOL vmlinux 0xf738d1be register_blocking_lsm_notifier +EXPORT_SYMBOL vmlinux 0xf747e1b9 pci_irq_get_affinity +EXPORT_SYMBOL vmlinux 0xf75101e0 blk_queue_flag_clear +EXPORT_SYMBOL vmlinux 0xf7584a9c find_font +EXPORT_SYMBOL vmlinux 0xf75cbe8a dst_release +EXPORT_SYMBOL vmlinux 0xf77337a1 hdmi_audio_infoframe_check +EXPORT_SYMBOL vmlinux 0xf78db70f devfreq_unregister_opp_notifier +EXPORT_SYMBOL vmlinux 0xf79ca3bb acpi_remove_gpe_block +EXPORT_SYMBOL vmlinux 0xf7c42575 blkdev_get_by_path +EXPORT_SYMBOL vmlinux 0xf7da6e6f acpi_unload_table +EXPORT_SYMBOL vmlinux 0xf7ef9a79 iosf_mbi_punit_release +EXPORT_SYMBOL vmlinux 0xf7efad01 __cleancache_get_page +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 0xf82abc1d isa_dma_bridge_buggy +EXPORT_SYMBOL vmlinux 0xf82ec573 rb_prev +EXPORT_SYMBOL vmlinux 0xf83802eb mdiobus_scan +EXPORT_SYMBOL vmlinux 0xf8386d97 cpumask_next_and +EXPORT_SYMBOL vmlinux 0xf84bd6ee bpf_stats_enabled_key +EXPORT_SYMBOL vmlinux 0xf8525fb5 secure_tcpv6_ts_off +EXPORT_SYMBOL vmlinux 0xf8595510 _raw_read_lock_irq +EXPORT_SYMBOL vmlinux 0xf85dd295 dev_change_proto_down +EXPORT_SYMBOL vmlinux 0xf86a6408 __dev_remove_pack +EXPORT_SYMBOL vmlinux 0xf86f3019 put_disk +EXPORT_SYMBOL vmlinux 0xf880582d inet_stream_ops +EXPORT_SYMBOL vmlinux 0xf888ca21 sg_init_table +EXPORT_SYMBOL vmlinux 0xf88d6bd1 inet6_register_icmp_sender +EXPORT_SYMBOL vmlinux 0xf8926fd8 param_array_ops +EXPORT_SYMBOL vmlinux 0xf89c8c05 migrate_vma_setup +EXPORT_SYMBOL vmlinux 0xf89cf33e seq_lseek +EXPORT_SYMBOL vmlinux 0xf8aea68c xfrm_policy_alloc +EXPORT_SYMBOL vmlinux 0xf8b46762 tty_insert_flip_string_fixed_flag +EXPORT_SYMBOL vmlinux 0xf8bf8e22 ZSTD_DDictWorkspaceBound +EXPORT_SYMBOL vmlinux 0xf8c414d8 handle_edge_irq +EXPORT_SYMBOL vmlinux 0xf8d07858 bitmap_from_arr32 +EXPORT_SYMBOL vmlinux 0xf8e674b4 flow_block_cb_priv +EXPORT_SYMBOL vmlinux 0xf8f61ebc wake_up_var +EXPORT_SYMBOL vmlinux 0xf8fa430c get_mem_cgroup_from_page +EXPORT_SYMBOL vmlinux 0xf90ce20f nvdimm_bus_unlock +EXPORT_SYMBOL vmlinux 0xf915179e refcount_dec_if_one +EXPORT_SYMBOL vmlinux 0xf916ee14 param_get_bool +EXPORT_SYMBOL vmlinux 0xf919dfce vm_map_ram +EXPORT_SYMBOL vmlinux 0xf9242b58 agp_free_memory +EXPORT_SYMBOL vmlinux 0xf93fd09c fb_find_mode_cvt +EXPORT_SYMBOL vmlinux 0xf94f9784 bio_init +EXPORT_SYMBOL vmlinux 0xf971cea8 utf8len +EXPORT_SYMBOL vmlinux 0xf9722676 twl_i2c_write +EXPORT_SYMBOL vmlinux 0xf9a482f9 msleep +EXPORT_SYMBOL vmlinux 0xf9a95453 dev_uc_sync_multiple +EXPORT_SYMBOL vmlinux 0xf9c0b663 strlcat +EXPORT_SYMBOL vmlinux 0xf9c76ed6 tty_write_room +EXPORT_SYMBOL vmlinux 0xf9d3bf47 fs_param_is_fd +EXPORT_SYMBOL vmlinux 0xf9eced44 LZ4_compress_fast_continue +EXPORT_SYMBOL vmlinux 0xfa04ac6d ip_generic_getfrag +EXPORT_SYMBOL vmlinux 0xfa08f4b8 __tracepoint_dma_fence_signaled +EXPORT_SYMBOL vmlinux 0xfa0c5534 bpf_prog_get_type_path +EXPORT_SYMBOL vmlinux 0xfa297415 acpi_map_pxm_to_node +EXPORT_SYMBOL vmlinux 0xfa462b68 get_tree_nodev +EXPORT_SYMBOL vmlinux 0xfa4836ab timestamp_truncate +EXPORT_SYMBOL vmlinux 0xfa532b75 rps_may_expire_flow +EXPORT_SYMBOL vmlinux 0xfa58a43e dev_add_offload +EXPORT_SYMBOL vmlinux 0xfa599bb2 netlink_register_notifier +EXPORT_SYMBOL vmlinux 0xfa66d487 dma_resv_init +EXPORT_SYMBOL vmlinux 0xfa67b430 skb_try_coalesce +EXPORT_SYMBOL vmlinux 0xfa755ead scsi_ioctl +EXPORT_SYMBOL vmlinux 0xfa873ad0 prandom_seed +EXPORT_SYMBOL vmlinux 0xfaa1fdf7 __tracepoint_rdpmc +EXPORT_SYMBOL vmlinux 0xfaabc0e9 devm_gen_pool_create +EXPORT_SYMBOL vmlinux 0xfab20ad3 dmam_alloc_attrs +EXPORT_SYMBOL vmlinux 0xfac3e00a __x86_retpoline_r9 +EXPORT_SYMBOL vmlinux 0xfac8865f sysctl_wmem_max +EXPORT_SYMBOL vmlinux 0xfaf1b607 from_kuid +EXPORT_SYMBOL vmlinux 0xfafafaa3 phy_loopback +EXPORT_SYMBOL vmlinux 0xfb1208cb mipi_dsi_host_register +EXPORT_SYMBOL vmlinux 0xfb2bea76 super_setup_bdi +EXPORT_SYMBOL vmlinux 0xfb384d37 kasprintf +EXPORT_SYMBOL vmlinux 0xfb481954 vprintk +EXPORT_SYMBOL vmlinux 0xfb4dd6c1 neigh_changeaddr +EXPORT_SYMBOL vmlinux 0xfb578fc5 memset +EXPORT_SYMBOL vmlinux 0xfb6af58d recalc_sigpending +EXPORT_SYMBOL vmlinux 0xfb746cc9 down_killable +EXPORT_SYMBOL vmlinux 0xfb757485 netdev_printk +EXPORT_SYMBOL vmlinux 0xfb7ad16c __sk_receive_skb +EXPORT_SYMBOL vmlinux 0xfb7bca27 mmc_can_erase +EXPORT_SYMBOL vmlinux 0xfb7ec433 show_init_ipc_ns +EXPORT_SYMBOL vmlinux 0xfb81b583 file_path +EXPORT_SYMBOL vmlinux 0xfb9044a0 set_pages_uc +EXPORT_SYMBOL vmlinux 0xfb918cd2 __inet6_lookup_established +EXPORT_SYMBOL vmlinux 0xfb9bd43d pci_free_host_bridge +EXPORT_SYMBOL vmlinux 0xfba46cbd xfrm_state_lookup_byaddr +EXPORT_SYMBOL vmlinux 0xfba7ddd2 match_u64 +EXPORT_SYMBOL vmlinux 0xfbaa0533 unregister_key_type +EXPORT_SYMBOL vmlinux 0xfbaaf01e console_lock +EXPORT_SYMBOL vmlinux 0xfbad3cf0 scsi_normalize_sense +EXPORT_SYMBOL vmlinux 0xfbb8a761 strscpy_pad +EXPORT_SYMBOL vmlinux 0xfbb9eaef dst_destroy +EXPORT_SYMBOL vmlinux 0xfbbc20ea simple_empty +EXPORT_SYMBOL vmlinux 0xfbc4f89e io_schedule_timeout +EXPORT_SYMBOL vmlinux 0xfbc6012b passthru_features_check +EXPORT_SYMBOL vmlinux 0xfbe8ee28 acpi_get_table_by_index +EXPORT_SYMBOL vmlinux 0xfbf71d16 vfs_symlink +EXPORT_SYMBOL vmlinux 0xfc0d8413 netdev_class_remove_file_ns +EXPORT_SYMBOL vmlinux 0xfc1239cc vfs_getattr_nosec +EXPORT_SYMBOL vmlinux 0xfc14d999 no_seek_end_llseek +EXPORT_SYMBOL vmlinux 0xfc299d2d pm8606_osc_enable +EXPORT_SYMBOL vmlinux 0xfc336d2e __wake_up_bit +EXPORT_SYMBOL vmlinux 0xfc399557 utf8_load +EXPORT_SYMBOL vmlinux 0xfc39e32f ioport_unmap +EXPORT_SYMBOL vmlinux 0xfc4152fc ec_read +EXPORT_SYMBOL vmlinux 0xfc5567e9 dma_resv_copy_fences +EXPORT_SYMBOL vmlinux 0xfc5c46e2 acpi_buffer_to_resource +EXPORT_SYMBOL vmlinux 0xfc6467b3 phy_reset_after_clk_enable +EXPORT_SYMBOL vmlinux 0xfc7e2596 down_trylock +EXPORT_SYMBOL vmlinux 0xfca0a432 iterate_supers_type +EXPORT_SYMBOL vmlinux 0xfcb926cd kstrtouint_from_user +EXPORT_SYMBOL vmlinux 0xfcbecc79 blk_mq_delay_run_hw_queues +EXPORT_SYMBOL vmlinux 0xfcc2cca2 scsi_add_host_with_dma +EXPORT_SYMBOL vmlinux 0xfcc70794 _copy_from_iter_full +EXPORT_SYMBOL vmlinux 0xfcd00e61 __phy_read_mmd +EXPORT_SYMBOL vmlinux 0xfcd18158 security_dentry_create_files_as +EXPORT_SYMBOL vmlinux 0xfcd1819a hdmi_spd_infoframe_check +EXPORT_SYMBOL vmlinux 0xfcd77fe1 __break_lease +EXPORT_SYMBOL vmlinux 0xfcd987fc agp_generic_alloc_by_type +EXPORT_SYMBOL vmlinux 0xfcec0987 enable_irq +EXPORT_SYMBOL vmlinux 0xfd065706 xfrm_input +EXPORT_SYMBOL vmlinux 0xfd08fe9d tc_setup_cb_call +EXPORT_SYMBOL vmlinux 0xfd24bbe9 kiocb_set_cancel_fn +EXPORT_SYMBOL vmlinux 0xfd24eb83 vme_init_bridge +EXPORT_SYMBOL vmlinux 0xfd31e1c4 dev_uc_sync +EXPORT_SYMBOL vmlinux 0xfd42527c __x86_retpoline_r15 +EXPORT_SYMBOL vmlinux 0xfd44d68d scsi_eh_restore_cmnd +EXPORT_SYMBOL vmlinux 0xfd4555d5 xfrm6_rcv +EXPORT_SYMBOL vmlinux 0xfd4dcbc0 pci_bus_set_ops +EXPORT_SYMBOL vmlinux 0xfd6b0d4d tcf_action_update_stats +EXPORT_SYMBOL vmlinux 0xfd93ee35 ioremap_wc +EXPORT_SYMBOL vmlinux 0xfda280a9 dma_async_tx_descriptor_init +EXPORT_SYMBOL vmlinux 0xfda9581f prandom_u32 +EXPORT_SYMBOL vmlinux 0xfdb6576f acpi_set_debugger_thread_id +EXPORT_SYMBOL vmlinux 0xfdb9b629 ioread32be +EXPORT_SYMBOL vmlinux 0xfdc3fd9e dev_mc_del +EXPORT_SYMBOL vmlinux 0xfdc7028a vfs_ioc_setflags_prepare +EXPORT_SYMBOL vmlinux 0xfdcaa7d5 pcie_port_service_register +EXPORT_SYMBOL vmlinux 0xfdcb4ed3 acpi_os_get_line +EXPORT_SYMBOL vmlinux 0xfdcc8a0e fb_find_best_display +EXPORT_SYMBOL vmlinux 0xfdcf8181 dm_io +EXPORT_SYMBOL vmlinux 0xfdd4216d pcibios_align_resource +EXPORT_SYMBOL vmlinux 0xfdd78924 pci_assign_resource +EXPORT_SYMBOL vmlinux 0xfddae966 scsi_vpd_lun_id +EXPORT_SYMBOL vmlinux 0xfdf70093 ZSTD_CStreamOutSize +EXPORT_SYMBOL vmlinux 0xfdfb792f amd_iommu_pc_supported +EXPORT_SYMBOL vmlinux 0xfe029963 unregister_inetaddr_notifier +EXPORT_SYMBOL vmlinux 0xfe1d2e94 key_create_or_update +EXPORT_SYMBOL vmlinux 0xfe1dabe0 tcp_md5_do_add +EXPORT_SYMBOL vmlinux 0xfe3ce5b9 __blkdev_issue_discard +EXPORT_SYMBOL vmlinux 0xfe487975 init_wait_entry +EXPORT_SYMBOL vmlinux 0xfe581ec6 sync_filesystem +EXPORT_SYMBOL vmlinux 0xfe5d4bb2 sys_tz +EXPORT_SYMBOL vmlinux 0xfe5e8dbd __skb_gro_checksum_complete +EXPORT_SYMBOL vmlinux 0xfe641456 dev_mc_sync +EXPORT_SYMBOL vmlinux 0xfe6ac365 inet6_unregister_icmp_sender +EXPORT_SYMBOL vmlinux 0xfe6ef139 fb_firmware_edid +EXPORT_SYMBOL vmlinux 0xfe73e338 __skb_gso_segment +EXPORT_SYMBOL vmlinux 0xfe7d4d85 input_event +EXPORT_SYMBOL vmlinux 0xfe916dc6 hex_dump_to_buffer +EXPORT_SYMBOL vmlinux 0xfe99f4cf d_alloc_name +EXPORT_SYMBOL vmlinux 0xfe9ebbbb acpi_osi_is_win8 +EXPORT_SYMBOL vmlinux 0xfea6ebd6 phy_ethtool_ksettings_get +EXPORT_SYMBOL vmlinux 0xfeb5d0aa verify_spi_info +EXPORT_SYMBOL vmlinux 0xfed1c66a dst_release_immediate +EXPORT_SYMBOL vmlinux 0xfed38c69 pci_find_next_bus +EXPORT_SYMBOL vmlinux 0xfedaac52 pm_vt_switch_unregister +EXPORT_SYMBOL vmlinux 0xfedcdb60 seq_hlist_next_percpu +EXPORT_SYMBOL vmlinux 0xfeebc7c4 __kfifo_from_user_r +EXPORT_SYMBOL vmlinux 0xfefcb98e vme_dma_vme_attribute +EXPORT_SYMBOL vmlinux 0xff0a42f1 write_one_page +EXPORT_SYMBOL vmlinux 0xff117b25 security_inode_copy_up +EXPORT_SYMBOL vmlinux 0xff170add tcp_v4_md5_lookup +EXPORT_SYMBOL vmlinux 0xff1b1b15 netlink_kernel_release +EXPORT_SYMBOL vmlinux 0xff1e9dd8 seq_list_start +EXPORT_SYMBOL vmlinux 0xff2af6ab pcie_print_link_status +EXPORT_SYMBOL vmlinux 0xff488921 ethtool_rx_flow_rule_create +EXPORT_SYMBOL vmlinux 0xff639f6b jbd2_journal_flush +EXPORT_SYMBOL vmlinux 0xff68068f ndo_dflt_fdb_dump +EXPORT_SYMBOL vmlinux 0xff6878cf fb_default_cmap +EXPORT_SYMBOL vmlinux 0xff7f15ab sk_stream_kill_queues +EXPORT_SYMBOL vmlinux 0xff87cd18 lockref_get_not_dead +EXPORT_SYMBOL vmlinux 0xff8c62d5 may_umount +EXPORT_SYMBOL vmlinux 0xff9c4b56 ZSTD_compressBound +EXPORT_SYMBOL vmlinux 0xffa36c07 rc5t583_ext_power_req_config +EXPORT_SYMBOL vmlinux 0xffa53de5 xfrm4_protocol_deregister +EXPORT_SYMBOL vmlinux 0xffb7c514 ida_free +EXPORT_SYMBOL vmlinux 0xffc30c3a acpi_processor_power_init_bm_check +EXPORT_SYMBOL vmlinux 0xffcd7f49 iosf_mbi_punit_acquire +EXPORT_SYMBOL vmlinux 0xffd46661 legacy_pic +EXPORT_SYMBOL vmlinux 0xffe7c896 tcp_enter_cwr +EXPORT_SYMBOL vmlinux 0xffeedf6a delayed_work_timer_fn +EXPORT_SYMBOL vmlinux 0xfff3eab4 ppp_input +EXPORT_SYMBOL_GPL arch/x86/crypto/camellia-aesni-avx-x86_64 0x19711697 camellia_xts_dec_16way +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 0x2e46ede4 xts_camellia_setkey +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 0x6f3a8de5 camellia_xts_enc_16way +EXPORT_SYMBOL_GPL arch/x86/crypto/camellia-aesni-avx-x86_64 0x8b44ee75 camellia_ecb_dec_16way +EXPORT_SYMBOL_GPL arch/x86/crypto/camellia-aesni-avx-x86_64 0x9056f10d camellia_xts_enc +EXPORT_SYMBOL_GPL arch/x86/crypto/camellia-aesni-avx-x86_64 0xc00f725a camellia_ctr_16way +EXPORT_SYMBOL_GPL arch/x86/crypto/camellia-aesni-avx-x86_64 0xfea2b457 camellia_xts_dec +EXPORT_SYMBOL_GPL arch/x86/crypto/camellia-x86_64 0x0b901549 camellia_dec_blk_2way +EXPORT_SYMBOL_GPL arch/x86/crypto/camellia-x86_64 0x315d28f7 camellia_crypt_ctr_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 0xee61eb71 camellia_crypt_ctr +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/glue_helper 0x336dcee0 glue_ecb_req_128bit +EXPORT_SYMBOL_GPL arch/x86/crypto/glue_helper 0x47c4e08f glue_xts_crypt_128bit_one +EXPORT_SYMBOL_GPL arch/x86/crypto/glue_helper 0x9adcd8f3 glue_xts_req_128bit +EXPORT_SYMBOL_GPL arch/x86/crypto/glue_helper 0xba5113a3 glue_ctr_req_128bit +EXPORT_SYMBOL_GPL arch/x86/crypto/glue_helper 0xd7f9a410 glue_cbc_decrypt_req_128bit +EXPORT_SYMBOL_GPL arch/x86/crypto/glue_helper 0xeec1f25f glue_cbc_encrypt_req_128bit +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/serpent-avx-x86_64 0x5cea0c9c serpent_ctr_8way_avx +EXPORT_SYMBOL_GPL arch/x86/crypto/serpent-avx-x86_64 0x99341b41 serpent_xts_dec_8way_avx +EXPORT_SYMBOL_GPL arch/x86/crypto/serpent-avx-x86_64 0xa0100109 serpent_xts_dec +EXPORT_SYMBOL_GPL arch/x86/crypto/serpent-avx-x86_64 0xb75988d7 __serpent_crypt_ctr +EXPORT_SYMBOL_GPL arch/x86/crypto/serpent-avx-x86_64 0xbdfa6cc0 serpent_xts_enc_8way_avx +EXPORT_SYMBOL_GPL arch/x86/crypto/serpent-avx-x86_64 0xc75fe764 xts_serpent_setkey +EXPORT_SYMBOL_GPL arch/x86/crypto/serpent-avx-x86_64 0xcee44453 serpent_xts_enc +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 0x2c7b3458 twofish_enc_blk_ctr +EXPORT_SYMBOL_GPL arch/x86/crypto/twofish-x86_64-3way 0x31ddef7a twofish_enc_blk_ctr_3way +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 0x007b5789 gfn_to_pfn_prot +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x039f29e7 kvm_read_guest_offset_cached +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x0522797c kvm_vcpu_on_spin +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x05f69861 vcpu_put +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x081b489c gfn_to_page +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x0852516e kvm_mmu_unload +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x087530c9 __kvm_set_memory_region +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x088b4f74 kvm_vcpu_mark_page_dirty +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x08f5ed82 kvm_vcpu_gfn_to_pfn_atomic +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x0954a50a kvm_is_visible_gfn +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x096ef263 kvm_map_gfn +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x0a803d16 kvm_x86_ops +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x0d8f4740 kvm_mce_cap_supported +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x0ea69ea8 kvm_apic_update_apicv +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x0fed0c14 kvm_vcpu_wake_up +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x1038236d kvm_set_cr4 +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x11470766 kvm_vcpu_gfn_to_pfn +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x117ae60f kvm_can_use_hv_timer +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x1235000a kvm_tsc_scaling_ratio_frac_bits +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x12765c9d kvm_skip_emulated_instruction +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x1288bc55 __kvm_request_immediate_exit +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x1293b084 kvm_slot_page_track_add_page +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x130fd155 supported_xss +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x159b8d5e host_efer +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x15f5cf6a __tracepoint_kvm_nested_vmexit_inject +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x16c0fc80 kvm_handle_page_fault +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x1738f34f kvm_vcpu_read_guest_atomic +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x18c1948a kvm_emulate_instruction_from_buffer +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x18fc168f kvm_intr_is_single_vcpu +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x19392885 kvm_set_cr3 +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x1b01f612 kvm_io_bus_write +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x1b1baf7e kvm_inject_emulated_page_fault +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x1c8035cf kvm_cpuid +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x1cf65ffc kvm_max_guest_tsc_khz +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x1d013832 kvm_enable_efer_bits +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x1d2e010d kvm_write_guest_virt_system +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x1db1c372 enable_vmware_backdoor +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x1dd3a846 kvm_requeue_exception_e +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x1de646da __tracepoint_kvm_avic_ga_log +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x1df3cee8 kvm_init_shadow_ept_mmu +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x1ec62a4c kvm_lapic_reg_read +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x1f3d429b kvm_emulate_rdmsr +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x1fd9ae82 kvm_apic_match_dest +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x21292a1a kvm_set_msi_irq +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x21aadac5 kvm_load_host_xsave_state +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x23f2e273 kvm_apicv_activated +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x27046576 kvm_exit +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x27a2e073 kvm_write_tsc +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x28411ed7 kvm_max_tsc_scaling_ratio +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x2aaa75bc kvm_read_guest +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x2c5274e0 reset_shadow_zero_bits_mask +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x2d407386 kvm_release_page_clean +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x2d82cc24 kvm_spec_ctrl_test_value +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x2e0e2a3a kvm_vcpu_kick +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x2e6670cd kvm_get_apic_base +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x3047e200 kvm_mmu_slot_leaf_clear_dirty +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x30d7da4a kvm_apic_write_nodecode +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x31ce0491 kvm_is_linear_rip +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x32f13428 gfn_to_pfn_memslot +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x3435d9ff cpuid_query_maxphyaddr +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x348ba0c6 kvm_mmu_reset_context +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x388e8bc5 gfn_to_hva +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x39fd83db halt_poll_ns_shrink +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x3a2d8cee kvm_lapic_expired_hv_timer +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x3a8c17fa kvm_rdpmc +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x3cc82f45 __tracepoint_kvm_cr +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x3ed5e388 gfn_to_page_many_atomic +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x3f7a370b kvm_emulate_halt +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x3fc0fcd9 kvm_vcpu_write_guest +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x4089da22 kvm_request_apicv_update +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x40cdbd46 kvm_inject_realmode_interrupt +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x428d0870 kvm_vcpu_gfn_to_page +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x456121d2 kvm_read_guest_page +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x485cd7f6 kvm_rebooting +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x4b0e5de6 kvm_apic_clear_irr +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x4b9c7449 kvm_mmu_new_pgd +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x4d25e54e kvm_set_memory_region +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x4d6af40b kvm_init_mmu +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x4e08451a kvm_queue_exception +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x4e3fd1b4 kvm_release_pfn_clean +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x4fd540b6 kvm_read_guest_cached +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x51acb504 kvm_mmu_invpcid_gva +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x56dea5e6 kvm_lapic_switch_to_hv_timer +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x573cc6ba kvm_mmu_unprotect_page +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x574f5239 kvm_write_guest_offset_cached +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x5929f696 kvm_set_cr0 +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x598e8a17 __tracepoint_kvm_nested_vmrun +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x59e640c0 halt_poll_ns +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x5af78d3e kvm_emulate_wbinvd +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x5b2495ca kvm_apic_set_eoi_accelerated +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x5d996b31 kvm_set_cpu_caps +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x5ea9ca3b kvm_lapic_find_highest_irr +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x5ec7540b kvm_arch_start_assignment +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x5f0a182d kvm_requeue_exception +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x5f390f32 mark_page_dirty +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x5fb8848b halt_poll_ns_grow_start +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x61876a19 kvm_apicv_init +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x6243ac82 __kvm_apic_update_irr +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x62b2d03c kvm_apic_has_interrupt +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x63270977 kvm_default_tsc_scaling_ratio +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x644ce1e7 kvm_vcpu_yield_to +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x65159aff kvm_scale_tsc +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x65ece2a2 __tracepoint_kvm_fast_mmio +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x66c4423a kvm_define_shared_msr +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x6794cb3e kvm_vcpu_write_guest_page +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x6892e3c3 kvm_set_pfn_accessed +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x68f54e0f __tracepoint_kvm_skinit +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x6b7767fe kvm_set_msr_common +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x70460d54 kvm_mmu_load +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x709cd8cb kvm_spurious_fault +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x7183186b pdptrs_changed +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x72629bc2 kvm_fast_pio +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x7274bd2e kvm_hv_get_assist_page +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x73ec8859 kvm_vcpu_halt +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x75c62f4a handle_ud +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x7672e9db kvm_apic_update_irr +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x7763a671 __tracepoint_kvm_nested_vmenter_failed +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x77776e34 kvm_read_l1_tsc +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x7788d3ab kvm_mmu_clear_dirty_pt_masked +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x796d466b kvm_vcpu_is_reset_bsp +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x796fdbfb kvm_vcpu_block +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x7a5302c8 kvm_get_cr8 +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x7afe324e halt_poll_ns_grow +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x7b7d497d kvm_mmu_sync_roots +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x7c94c99a kvm_release_pfn_dirty +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x7dce2122 kvm_debugfs_dir +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x80feed6f kvm_set_xcr +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x8235cca0 gfn_to_memslot +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x849344cc __tracepoint_kvm_pml_full +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x867690a7 __tracepoint_kvm_msr +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x86931b5d __tracepoint_kvm_avic_incomplete_ipi +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x888d979f __tracepoint_kvm_exit +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x89f038ab kvm_cpu_has_injectable_intr +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x8a893ce7 kvm_arch_unregister_noncoherent_dma +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x8abe557c kvm_vcpu_map +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x8ad3d0b0 kvm_lapic_reg_write +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x8afe4b6f kvm_vcpu_read_guest +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x8fe3befd reprogram_fixed_counter +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x90962403 kvm_vcpu_destroy +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x91d4d992 __tracepoint_kvm_nested_vmexit +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x94615018 kvm_deliver_exception_payload +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x94abbd88 __tracepoint_kvm_invlpga +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x983118e1 kvm_clear_guest +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x99c70148 kvm_get_dr +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x9b5b35d5 kvm_flush_remote_tlbs +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x9bf21e5e kvm_mmu_unprotect_page_virt +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x9d0101a5 kvm_require_cpl +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x9e07ef88 kvm_unmap_gfn +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x9e4bb4e4 kvm_emulate_wrmsr +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x9ed68fba kvm_update_dr7 +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x9f6d78fc kvm_get_pfn +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xa04b44b6 kvm_vcpu_exit_request +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xa095a6df kvm_vcpu_unmap +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xa0cb0079 kvm_page_track_unregister_notifier +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xa17b4a50 kvm_arch_has_noncoherent_dma +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xa1c4231f kvm_set_pfn_dirty +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xa6152d16 kvm_configure_mmu +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xa67166ee kvm_mmu_invalidate_gva +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xa716534e kvm_emulate_hypercall +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xa90e44f5 kvm_mmu_set_mmio_spte_mask +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xa975020d kvm_mmu_set_mask_ptes +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xab31e82f gfn_to_pfn_memslot_atomic +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xadd880bd kvm_arch_no_poll +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xae9aed1e kvm_set_rflags +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xb09069b1 kvm_get_kvm +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xb097e540 __tracepoint_kvm_nested_intercepts +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xb209ccea kvm_get_cs_db_l_bits +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xb305f44d kvm_gfn_to_hva_cache_init +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xb3d98bf1 kvm_inject_pending_timer_irqs +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xb5960a4c gfn_to_pfn +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xb770d8cf kvm_load_guest_xsave_state +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xb962bbbf kvm_write_guest_page +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xbafc8fd8 kvm_cpu_get_interrupt +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xbb6f0952 kvm_find_cpuid_entry +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xbbde13ef current_vcpu +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xbc07b7a7 kvm_init_shadow_mmu +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xbc16d221 kvm_lapic_switch_to_sw_timer +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xbc2431ef kvm_arch_end_assignment +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xbd4e32c9 kvm_queue_exception_p +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xbe694474 kvm_set_msr +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xbfc61ecf __tracepoint_kvm_page_fault +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xc091656c kvm_queue_exception_e +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xc16ec922 kvm_cpu_has_interrupt +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xc1bffa28 kvm_valid_efer +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xc1d769b7 __tracepoint_kvm_nested_intr_vmexit +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xc4f8a0c9 kvm_mmu_slot_set_dirty +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xc5ece98d kvm_put_kvm +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xc6249c72 kvm_arch_has_assigned_device +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xc64e9840 load_pdptrs +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xc6a43f2f vcpu_load +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xc7c74c47 kvm_write_guest +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xc83ac009 reprogram_gp_counter +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xc888a1c2 kvm_cpu_caps +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xc950c248 kvm_set_apic_base +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xca2d88d0 kvm_inject_page_fault +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xca3ab5ad __tracepoint_kvm_ple_window_update +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xcab0c0a4 __tracepoint_kvm_write_tsc_offset +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xcae76009 kvm_get_msr_common +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xcb0a5d60 kvm_set_cr8 +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xcd069067 kvm_vcpu_update_apicv +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xcf79f1d3 kvm_mmu_slot_largepage_remove_write_access +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xcfa077ce kvm_put_kvm_no_destroy +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xcfcb6ab0 kvm_arch_register_noncoherent_dma +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xcfe70304 kvm_vcpu_gfn_to_hva +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xd0459e67 kvm_has_tsc_control +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xd06466ad kvm_inject_nmi +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xd174075d kvm_emulate_instruction +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xd294143f kvm_io_bus_get_dev +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xd7fc11f5 kvm_require_dr +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xd8ae2ac3 __tracepoint_kvm_pi_irte_update +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xd9485a2d reprogram_counter +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xdd9e7aeb kvm_set_shared_msr +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xdf894f9b kvm_vcpu_read_guest_page +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xe13c1dc3 kvm_mtrr_get_guest_memory_type +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xe1ef94ef kvm_mmu_free_roots +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xe423b7d7 kvm_mmu_page_fault +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xe4b06309 kvm_get_apic_mode +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xe5bf162e kvm_vcpu_gfn_to_memslot +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xe63bc2de kvm_get_msr +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xe80d518c kvm_task_switch +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xe83246ca kvm_read_guest_virt +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xe8709efa kvm_read_guest_page_mmu +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xe8cdc905 kvm_write_guest_cached +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xe9674a16 supported_xcr0 +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xeb14f48f kvm_init +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xec06defc __tracepoint_kvm_avic_unaccelerated_access +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xecc4d49e kvm_apic_update_ppr +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xee4b54d5 kvm_get_rflags +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xeecf997d __gfn_to_pfn_memslot +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xef4fc176 kvm_complete_insn_gp +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xef9eea39 kvm_slot_page_track_remove_page +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xf01260c8 handle_fastpath_set_msr_irqoff +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xf1ae0a47 __x86_set_memory_region +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xf2452ef4 kvm_mmu_invlpg +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xf47e3dba kvm_no_apic_vcpu +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xf4f1ec42 kvm_lmsw +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xf5ec487d kvm_clear_guest_page +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xf5f65110 gfn_to_hva_memslot +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xf63403a4 kvm_set_dr +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xf667ac36 kvm_get_linear_rip +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xf6a2b8db __tracepoint_kvm_apicv_update_request +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xf7404f48 kvm_mtrr_valid +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xf7f57f6a kvm_lapic_set_eoi +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xf86bb4d2 kvm_emulate_cpuid +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xf90d25bc kvm_release_page_dirty +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xfa111626 kvm_page_track_register_notifier +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xfa541ffc __tracepoint_kvm_inj_virq +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xfabe0dac kvm_lapic_hv_timer_in_use +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xfac8b1b0 kvm_get_running_vcpu +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xfb2cb51f kvm_wait_lapic_expire +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xfc578d86 kvm_hv_assist_page_enabled +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xfd48d9b0 kvm_irq_has_notifier +EXPORT_SYMBOL_GPL crypto/af_alg 0x09e33277 af_alg_unregister_type +EXPORT_SYMBOL_GPL crypto/af_alg 0x196c7d4a af_alg_release +EXPORT_SYMBOL_GPL crypto/af_alg 0x21f6d7b3 af_alg_wmem_wakeup +EXPORT_SYMBOL_GPL crypto/af_alg 0x2754bc84 af_alg_wait_for_data +EXPORT_SYMBOL_GPL crypto/af_alg 0x27c97815 af_alg_free_sg +EXPORT_SYMBOL_GPL crypto/af_alg 0x3f6df025 af_alg_pull_tsgl +EXPORT_SYMBOL_GPL crypto/af_alg 0x41337cec af_alg_accept +EXPORT_SYMBOL_GPL crypto/af_alg 0x66677716 af_alg_count_tsgl +EXPORT_SYMBOL_GPL crypto/af_alg 0x6d0df836 af_alg_make_sg +EXPORT_SYMBOL_GPL crypto/af_alg 0x70fcaa97 af_alg_free_resources +EXPORT_SYMBOL_GPL crypto/af_alg 0x837f4bd0 af_alg_alloc_areq +EXPORT_SYMBOL_GPL crypto/af_alg 0x8b3cc078 af_alg_async_cb +EXPORT_SYMBOL_GPL crypto/af_alg 0x94879197 af_alg_register_type +EXPORT_SYMBOL_GPL crypto/af_alg 0xdabe093e af_alg_release_parent +EXPORT_SYMBOL_GPL crypto/af_alg 0xe29232b4 af_alg_sendmsg +EXPORT_SYMBOL_GPL crypto/af_alg 0xe7c09c33 af_alg_sendpage +EXPORT_SYMBOL_GPL crypto/af_alg 0xf44c0905 af_alg_poll +EXPORT_SYMBOL_GPL crypto/af_alg 0xf8063433 af_alg_get_rsgl +EXPORT_SYMBOL_GPL crypto/asymmetric_keys/asym_tpm 0x1dc7786e asym_tpm_subtype +EXPORT_SYMBOL_GPL crypto/asymmetric_keys/asym_tpm 0x7430f97c tpm_key_create +EXPORT_SYMBOL_GPL crypto/async_tx/async_memcpy 0x230af580 async_memcpy +EXPORT_SYMBOL_GPL crypto/async_tx/async_pq 0x63cfa506 async_syndrome_val +EXPORT_SYMBOL_GPL crypto/async_tx/async_pq 0xd2ea58ca async_gen_syndrome +EXPORT_SYMBOL_GPL crypto/async_tx/async_raid6_recov 0x52c5ac30 async_raid6_2data_recov +EXPORT_SYMBOL_GPL crypto/async_tx/async_raid6_recov 0xaa2a46a2 async_raid6_datap_recov +EXPORT_SYMBOL_GPL crypto/async_tx/async_tx 0x6dbd03f2 async_trigger_callback +EXPORT_SYMBOL_GPL crypto/async_tx/async_tx 0x7115bd84 async_tx_submit +EXPORT_SYMBOL_GPL crypto/async_tx/async_tx 0xd60bca4a async_tx_quiesce +EXPORT_SYMBOL_GPL crypto/async_tx/async_tx 0xec017e9e __async_tx_find_channel +EXPORT_SYMBOL_GPL crypto/async_tx/async_xor 0x09124c67 async_xor_val +EXPORT_SYMBOL_GPL crypto/async_tx/async_xor 0xc0caf929 async_xor +EXPORT_SYMBOL_GPL crypto/authenc 0x2479193e crypto_authenc_extractkeys +EXPORT_SYMBOL_GPL crypto/blowfish_common 0xd76b181a blowfish_setkey +EXPORT_SYMBOL_GPL crypto/cast5_generic 0x188d9d26 __cast5_decrypt +EXPORT_SYMBOL_GPL crypto/cast5_generic 0xd6c3ac31 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 0xa33528ed 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 0x0c646651 cryptd_alloc_aead +EXPORT_SYMBOL_GPL crypto/cryptd 0x2c6992a1 cryptd_free_ahash +EXPORT_SYMBOL_GPL crypto/cryptd 0x4252577b cryptd_aead_queued +EXPORT_SYMBOL_GPL crypto/cryptd 0x4362967f cryptd_alloc_skcipher +EXPORT_SYMBOL_GPL crypto/cryptd 0x4df8a0b0 cryptd_aead_child +EXPORT_SYMBOL_GPL crypto/cryptd 0x510992a1 cryptd_skcipher_queued +EXPORT_SYMBOL_GPL crypto/cryptd 0x5d19b8f9 cryptd_alloc_ahash +EXPORT_SYMBOL_GPL crypto/cryptd 0x758464aa cryptd_skcipher_child +EXPORT_SYMBOL_GPL crypto/cryptd 0xa9fd2c0d cryptd_ahash_child +EXPORT_SYMBOL_GPL crypto/cryptd 0xdccbea50 cryptd_free_aead +EXPORT_SYMBOL_GPL crypto/cryptd 0xf30706bc cryptd_shash_desc +EXPORT_SYMBOL_GPL crypto/cryptd 0xf7bb7f89 cryptd_free_skcipher +EXPORT_SYMBOL_GPL crypto/cryptd 0xf8bad744 cryptd_ahash_queued +EXPORT_SYMBOL_GPL crypto/crypto_engine 0x03aefe93 crypto_finalize_aead_request +EXPORT_SYMBOL_GPL crypto/crypto_engine 0x06904a13 crypto_transfer_skcipher_request_to_engine +EXPORT_SYMBOL_GPL crypto/crypto_engine 0x0bd3ebb4 crypto_engine_start +EXPORT_SYMBOL_GPL crypto/crypto_engine 0x1a8b5053 crypto_engine_stop +EXPORT_SYMBOL_GPL crypto/crypto_engine 0x2a15f89d crypto_engine_exit +EXPORT_SYMBOL_GPL crypto/crypto_engine 0x485564bf crypto_finalize_akcipher_request +EXPORT_SYMBOL_GPL crypto/crypto_engine 0x5b7d0d4e crypto_transfer_hash_request_to_engine +EXPORT_SYMBOL_GPL crypto/crypto_engine 0x7cfc275b crypto_finalize_skcipher_request +EXPORT_SYMBOL_GPL crypto/crypto_engine 0xbbea3dba crypto_engine_alloc_init_and_set +EXPORT_SYMBOL_GPL crypto/crypto_engine 0xc37450ad crypto_finalize_hash_request +EXPORT_SYMBOL_GPL crypto/crypto_engine 0xd1737035 crypto_transfer_akcipher_request_to_engine +EXPORT_SYMBOL_GPL crypto/crypto_engine 0xf36cbcbe crypto_transfer_aead_request_to_engine +EXPORT_SYMBOL_GPL crypto/crypto_engine 0xffc00ac7 crypto_engine_alloc_init +EXPORT_SYMBOL_GPL crypto/crypto_simd 0x29c87e5f simd_unregister_aeads +EXPORT_SYMBOL_GPL crypto/crypto_simd 0x3b5ef767 simd_register_aeads_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 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 0xc95e1db8 simd_register_skciphers_compat +EXPORT_SYMBOL_GPL crypto/crypto_simd 0xd1afda81 simd_unregister_skciphers +EXPORT_SYMBOL_GPL crypto/crypto_simd 0xefe73979 simd_skcipher_free +EXPORT_SYMBOL_GPL crypto/ecdh_generic 0x515ba532 crypto_ecdh_decode_key +EXPORT_SYMBOL_GPL crypto/ecdh_generic 0x7a395d76 crypto_ecdh_encode_key +EXPORT_SYMBOL_GPL crypto/ecdh_generic 0xd5a29505 crypto_ecdh_key_len +EXPORT_SYMBOL_GPL crypto/serpent_generic 0x4eb4c55e __serpent_encrypt +EXPORT_SYMBOL_GPL crypto/serpent_generic 0xbcc074f3 __serpent_decrypt +EXPORT_SYMBOL_GPL crypto/serpent_generic 0xc11b51a7 serpent_setkey +EXPORT_SYMBOL_GPL crypto/serpent_generic 0xd4c9681a __serpent_setkey +EXPORT_SYMBOL_GPL crypto/sm3_generic 0x0bddca87 sm3_zero_message_hash +EXPORT_SYMBOL_GPL crypto/sm4_generic 0x09a89410 crypto_sm4_expand_key +EXPORT_SYMBOL_GPL crypto/sm4_generic 0x74d04826 crypto_sm4_decrypt +EXPORT_SYMBOL_GPL crypto/sm4_generic 0xb098a21b crypto_sm4_set_key +EXPORT_SYMBOL_GPL crypto/sm4_generic 0xb81bd553 crypto_sm4_encrypt +EXPORT_SYMBOL_GPL crypto/twofish_common 0x78e17fdc twofish_setkey +EXPORT_SYMBOL_GPL crypto/twofish_common 0xe22b7787 __twofish_setkey +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 0x541d7fd8 acpi_nfit_desc_init +EXPORT_SYMBOL_GPL drivers/acpi/nfit/nfit 0xaf2c9672 __acpi_nfit_notify +EXPORT_SYMBOL_GPL drivers/acpi/nfit/nfit 0xc5a52377 acpi_nfit_init +EXPORT_SYMBOL_GPL drivers/acpi/nfit/nfit 0xdadc210f __acpi_nvdimm_notify +EXPORT_SYMBOL_GPL drivers/acpi/nfit/nfit 0xf7506f33 acpi_nfit_ctl +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 0x109c2d88 ahci_port_resume +EXPORT_SYMBOL_GPL drivers/ata/libahci 0x1703e36a ahci_save_initial_config +EXPORT_SYMBOL_GPL drivers/ata/libahci 0x22506290 ahci_set_em_messages +EXPORT_SYMBOL_GPL drivers/ata/libahci 0x29622d46 ahci_fill_cmd_slot +EXPORT_SYMBOL_GPL drivers/ata/libahci 0x43781aeb ahci_sdev_attrs +EXPORT_SYMBOL_GPL drivers/ata/libahci 0x507f27cb ahci_pmp_retry_srst_ops +EXPORT_SYMBOL_GPL drivers/ata/libahci 0x56906ce1 ahci_do_softreset +EXPORT_SYMBOL_GPL drivers/ata/libahci 0x5c32d274 ahci_start_fis_rx +EXPORT_SYMBOL_GPL drivers/ata/libahci 0x5fd641aa ahci_host_activate +EXPORT_SYMBOL_GPL drivers/ata/libahci 0x6456c227 ahci_reset_em +EXPORT_SYMBOL_GPL drivers/ata/libahci 0x7146b113 ahci_dev_classify +EXPORT_SYMBOL_GPL drivers/ata/libahci 0x7984ed66 ahci_reset_controller +EXPORT_SYMBOL_GPL drivers/ata/libahci 0x79ea47fb ahci_handle_port_intr +EXPORT_SYMBOL_GPL drivers/ata/libahci 0x8f9eaa6e ahci_start_engine +EXPORT_SYMBOL_GPL drivers/ata/libahci 0x98a46b12 ahci_shost_attrs +EXPORT_SYMBOL_GPL drivers/ata/libahci 0x9dbd4fcb ahci_stop_engine +EXPORT_SYMBOL_GPL drivers/ata/libahci 0xa0889492 ahci_init_controller +EXPORT_SYMBOL_GPL drivers/ata/libahci 0xa25ef32a ahci_qc_issue +EXPORT_SYMBOL_GPL drivers/ata/libahci 0xb40a9f5f ahci_check_ready +EXPORT_SYMBOL_GPL drivers/ata/libahci 0xba2afc5d ahci_error_handler +EXPORT_SYMBOL_GPL drivers/ata/libahci 0xdc5704c1 ahci_ops +EXPORT_SYMBOL_GPL drivers/ata/libahci 0xe899f593 ahci_print_info +EXPORT_SYMBOL_GPL drivers/ata/libahci 0xea50dad3 ahci_ignore_sss +EXPORT_SYMBOL_GPL drivers/ata/libahci 0xeff79f95 ahci_kick_engine +EXPORT_SYMBOL_GPL drivers/ata/libahci 0xfe69b5ab ahci_do_hardreset +EXPORT_SYMBOL_GPL drivers/ata/libahci_platform 0x2125e447 ahci_platform_enable_regulators +EXPORT_SYMBOL_GPL drivers/ata/libahci_platform 0x23b86d37 ahci_platform_disable_regulators +EXPORT_SYMBOL_GPL drivers/ata/libahci_platform 0x48d52412 ahci_platform_disable_clks +EXPORT_SYMBOL_GPL drivers/ata/libahci_platform 0x4b11c94b ahci_platform_suspend_host +EXPORT_SYMBOL_GPL drivers/ata/libahci_platform 0x59226a5a ahci_platform_enable_clks +EXPORT_SYMBOL_GPL drivers/ata/libahci_platform 0x682b6ff2 ahci_platform_enable_resources +EXPORT_SYMBOL_GPL drivers/ata/libahci_platform 0x70915ce3 ahci_platform_resume +EXPORT_SYMBOL_GPL drivers/ata/libahci_platform 0x84300caa ahci_platform_shutdown +EXPORT_SYMBOL_GPL drivers/ata/libahci_platform 0x98311531 ahci_platform_disable_resources +EXPORT_SYMBOL_GPL drivers/ata/libahci_platform 0xa719988f ahci_platform_init_host +EXPORT_SYMBOL_GPL drivers/ata/libahci_platform 0xcd4b91b3 ahci_platform_resume_host +EXPORT_SYMBOL_GPL drivers/ata/libahci_platform 0xe0deb3ff ahci_platform_disable_phys +EXPORT_SYMBOL_GPL drivers/ata/libahci_platform 0xf129fdb7 ahci_platform_enable_phys +EXPORT_SYMBOL_GPL drivers/ata/libahci_platform 0xf3af2db0 ahci_platform_ops +EXPORT_SYMBOL_GPL drivers/ata/libahci_platform 0xf66fbfa6 ahci_platform_suspend +EXPORT_SYMBOL_GPL drivers/ata/libahci_platform 0xfa319c2d ahci_platform_get_resources +EXPORT_SYMBOL_GPL drivers/ata/pata_platform 0x76dd6f17 __pata_platform_probe +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 0x727ea304 charlcd_poke +EXPORT_SYMBOL_GPL drivers/auxdisplay/charlcd 0x9192a401 charlcd_register +EXPORT_SYMBOL_GPL drivers/auxdisplay/charlcd 0xa2a58bbe charlcd_alloc +EXPORT_SYMBOL_GPL drivers/auxdisplay/charlcd 0xac53a91b charlcd_unregister +EXPORT_SYMBOL_GPL drivers/auxdisplay/charlcd 0xd0cc2e18 charlcd_free +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/base/regmap/regmap-i3c 0xf45dd09c __devm_regmap_init_i3c +EXPORT_SYMBOL_GPL drivers/base/regmap/regmap-sccb 0x1dab8dfc __devm_regmap_init_sccb +EXPORT_SYMBOL_GPL drivers/base/regmap/regmap-sccb 0xf0217e99 __regmap_init_sccb +EXPORT_SYMBOL_GPL drivers/base/regmap/regmap-sdw 0x3fc6f376 __regmap_init_sdw +EXPORT_SYMBOL_GPL drivers/base/regmap/regmap-sdw 0x8320682d __devm_regmap_init_sdw +EXPORT_SYMBOL_GPL drivers/base/regmap/regmap-slimbus 0x1f70ed8f __regmap_init_slimbus +EXPORT_SYMBOL_GPL drivers/base/regmap/regmap-slimbus 0x6cd2764f __devm_regmap_init_slimbus +EXPORT_SYMBOL_GPL drivers/base/regmap/regmap-spmi 0x0121bf00 __devm_regmap_init_spmi_base +EXPORT_SYMBOL_GPL drivers/base/regmap/regmap-spmi 0x040e0179 __regmap_init_spmi_base +EXPORT_SYMBOL_GPL drivers/base/regmap/regmap-spmi 0x91cce891 __devm_regmap_init_spmi_ext +EXPORT_SYMBOL_GPL drivers/base/regmap/regmap-spmi 0xbe258256 __regmap_init_spmi_ext +EXPORT_SYMBOL_GPL drivers/base/regmap/regmap-w1 0x508ed908 __regmap_init_w1 +EXPORT_SYMBOL_GPL drivers/base/regmap/regmap-w1 0x7e982261 __devm_regmap_init_w1 +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0x02d58c6f __bcma_driver_register +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0x099abc61 bcma_chipco_get_alp_clock +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0x0f89ff61 bcma_chipco_gpio_control +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0x18972b43 bcma_core_pci_power_save +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0x1f2252d2 bcma_chipco_pll_read +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0x353d1f92 bcma_chipco_gpio_outen +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0x3997d4d7 bcma_core_set_clockmode +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0x3c6ed21b bcma_host_pci_up +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0x3fc7eab3 bcma_chipco_pll_write +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0x44dd7225 bcma_core_enable +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0x48acc0ca bcma_host_pci_down +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0x5562ba14 bcma_core_is_enabled +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0x67493901 bcma_chipco_regctl_maskset +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0x8d291785 bcma_core_pll_ctl +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0x978906e1 bcma_chipco_chipctl_maskset +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0xa2f99fc6 bcma_host_pci_irq_ctl +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0xa8e1801d bcma_pmu_get_bus_clock +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0xb5862f59 bcma_core_disable +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0xb725d7f7 bcma_chipco_gpio_out +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0xc59d7f97 bcma_find_core_unit +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0xcf1c4904 bcma_chipco_pll_maskset +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0xd421bfac bcma_pmu_spuravoid_pllupdate +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0xeaa66b5e bcma_chipco_b_mii_write +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0xf72bf843 bcma_driver_unregister +EXPORT_SYMBOL_GPL drivers/bluetooth/btbcm 0x2d458cda btbcm_write_pcm_int_params +EXPORT_SYMBOL_GPL drivers/bluetooth/btbcm 0x429680d0 btbcm_read_pcm_int_params +EXPORT_SYMBOL_GPL drivers/bluetooth/btbcm 0x794583ef btbcm_finalize +EXPORT_SYMBOL_GPL drivers/bluetooth/btbcm 0x845d5a40 btbcm_setup_patchram +EXPORT_SYMBOL_GPL drivers/bluetooth/btbcm 0x97dda9ac btbcm_setup_apple +EXPORT_SYMBOL_GPL drivers/bluetooth/btbcm 0xb8d468ed btbcm_check_bdaddr +EXPORT_SYMBOL_GPL drivers/bluetooth/btbcm 0xd2d5309b btbcm_set_bdaddr +EXPORT_SYMBOL_GPL drivers/bluetooth/btbcm 0xe9721907 btbcm_initialize +EXPORT_SYMBOL_GPL drivers/bluetooth/btintel 0x02f17607 btintel_exit_mfg +EXPORT_SYMBOL_GPL drivers/bluetooth/btintel 0x21e11a1b btintel_set_bdaddr +EXPORT_SYMBOL_GPL drivers/bluetooth/btintel 0x21e7b96b btintel_set_diag_mfg +EXPORT_SYMBOL_GPL drivers/bluetooth/btintel 0x26279153 btintel_set_event_mask +EXPORT_SYMBOL_GPL drivers/bluetooth/btintel 0x3076f399 btintel_reset_to_bootloader +EXPORT_SYMBOL_GPL drivers/bluetooth/btintel 0x38eebca4 btintel_read_version +EXPORT_SYMBOL_GPL drivers/bluetooth/btintel 0x420686e1 btintel_secure_send +EXPORT_SYMBOL_GPL drivers/bluetooth/btintel 0x613d3019 btintel_enter_mfg +EXPORT_SYMBOL_GPL drivers/bluetooth/btintel 0x6589e1c4 btintel_set_event_mask_mfg +EXPORT_SYMBOL_GPL drivers/bluetooth/btintel 0x80ad9821 btintel_hw_error +EXPORT_SYMBOL_GPL drivers/bluetooth/btintel 0x8cb90f69 btintel_download_firmware +EXPORT_SYMBOL_GPL drivers/bluetooth/btintel 0x8da61468 btintel_regmap_init +EXPORT_SYMBOL_GPL drivers/bluetooth/btintel 0xa4d97bf3 btintel_send_intel_reset +EXPORT_SYMBOL_GPL drivers/bluetooth/btintel 0xa723d697 btintel_version_info +EXPORT_SYMBOL_GPL drivers/bluetooth/btintel 0xbca01cef btintel_load_ddc_config +EXPORT_SYMBOL_GPL drivers/bluetooth/btintel 0xd2a2cb7b btintel_read_boot_params +EXPORT_SYMBOL_GPL drivers/bluetooth/btintel 0xe3268b9e btintel_check_bdaddr +EXPORT_SYMBOL_GPL drivers/bluetooth/btintel 0xea3650fc btintel_set_diag +EXPORT_SYMBOL_GPL drivers/bluetooth/btmrvl 0x0a8e6c2a btmrvl_send_hscfg_cmd +EXPORT_SYMBOL_GPL drivers/bluetooth/btmrvl 0x5a250a0b btmrvl_enable_hs +EXPORT_SYMBOL_GPL drivers/bluetooth/btmrvl 0x87d6d1b3 btmrvl_register_hdev +EXPORT_SYMBOL_GPL drivers/bluetooth/btmrvl 0x8fb19164 btmrvl_remove_card +EXPORT_SYMBOL_GPL drivers/bluetooth/btmrvl 0x9bbafdaa btmrvl_send_module_cfg_cmd +EXPORT_SYMBOL_GPL drivers/bluetooth/btmrvl 0xb9932072 btmrvl_pscan_window_reporting +EXPORT_SYMBOL_GPL drivers/bluetooth/btmrvl 0xbc5441c8 btmrvl_check_evtpkt +EXPORT_SYMBOL_GPL drivers/bluetooth/btmrvl 0xcb9edac4 btmrvl_interrupt +EXPORT_SYMBOL_GPL drivers/bluetooth/btmrvl 0xcdb73803 btmrvl_enable_ps +EXPORT_SYMBOL_GPL drivers/bluetooth/btmrvl 0xe1309fdf btmrvl_add_card +EXPORT_SYMBOL_GPL drivers/bluetooth/btmrvl 0xe8c09f9e btmrvl_process_event +EXPORT_SYMBOL_GPL drivers/bluetooth/btqca 0x0a91706d qca_uart_setup +EXPORT_SYMBOL_GPL drivers/bluetooth/btqca 0x12b1992f qca_set_bdaddr_rome +EXPORT_SYMBOL_GPL drivers/bluetooth/btqca 0x389da500 qca_read_soc_version +EXPORT_SYMBOL_GPL drivers/bluetooth/btqca 0xadbb1956 qca_set_bdaddr +EXPORT_SYMBOL_GPL drivers/bluetooth/btqca 0xc526b4b0 qca_send_pre_shutdown_cmd +EXPORT_SYMBOL_GPL drivers/bluetooth/btrtl 0x78a8d916 btrtl_shutdown_realtek +EXPORT_SYMBOL_GPL drivers/bluetooth/btrtl 0xaab1e024 btrtl_initialize +EXPORT_SYMBOL_GPL drivers/bluetooth/btrtl 0xaf78f260 btrtl_free +EXPORT_SYMBOL_GPL drivers/bluetooth/btrtl 0xc5e76283 btrtl_get_uart_settings +EXPORT_SYMBOL_GPL drivers/bluetooth/btrtl 0xf3554df2 btrtl_setup_realtek +EXPORT_SYMBOL_GPL drivers/bluetooth/btrtl 0xf7436dc7 btrtl_download_firmware +EXPORT_SYMBOL_GPL drivers/bluetooth/hci_uart 0x033b0ab5 hci_uart_tx_wakeup +EXPORT_SYMBOL_GPL drivers/bluetooth/hci_uart 0x36f1ab78 h4_recv_buf +EXPORT_SYMBOL_GPL drivers/bluetooth/hci_uart 0xb7d63384 hci_uart_unregister_device +EXPORT_SYMBOL_GPL drivers/bluetooth/hci_uart 0xea10cf30 hci_uart_register_device +EXPORT_SYMBOL_GPL drivers/bus/mhi/core/mhi 0x040abe32 mhi_async_power_up +EXPORT_SYMBOL_GPL drivers/bus/mhi/core/mhi 0x04e8e3c7 mhi_queue_buf +EXPORT_SYMBOL_GPL drivers/bus/mhi/core/mhi 0x11f7ef4d mhi_prepare_for_transfer +EXPORT_SYMBOL_GPL drivers/bus/mhi/core/mhi 0x28de11f0 mhi_poll +EXPORT_SYMBOL_GPL drivers/bus/mhi/core/mhi 0x29e6a7c3 mhi_unprepare_after_power_down +EXPORT_SYMBOL_GPL drivers/bus/mhi/core/mhi 0x2d804dc1 mhi_queue_dma +EXPORT_SYMBOL_GPL drivers/bus/mhi/core/mhi 0x3d7f5c50 mhi_pm_suspend +EXPORT_SYMBOL_GPL drivers/bus/mhi/core/mhi 0x3f7d425e mhi_unprepare_from_transfer +EXPORT_SYMBOL_GPL drivers/bus/mhi/core/mhi 0x435cb111 mhi_force_rddm_mode +EXPORT_SYMBOL_GPL drivers/bus/mhi/core/mhi 0x4bbe81c2 mhi_device_get_sync +EXPORT_SYMBOL_GPL drivers/bus/mhi/core/mhi 0x519ab08d mhi_unregister_controller +EXPORT_SYMBOL_GPL drivers/bus/mhi/core/mhi 0x6ab36c52 mhi_device_put +EXPORT_SYMBOL_GPL drivers/bus/mhi/core/mhi 0x6c4491a0 mhi_notify +EXPORT_SYMBOL_GPL drivers/bus/mhi/core/mhi 0x9cd06099 mhi_register_controller +EXPORT_SYMBOL_GPL drivers/bus/mhi/core/mhi 0xa2a48405 mhi_power_down +EXPORT_SYMBOL_GPL drivers/bus/mhi/core/mhi 0xa7eef128 mhi_driver_unregister +EXPORT_SYMBOL_GPL drivers/bus/mhi/core/mhi 0xbf356402 mhi_device_get +EXPORT_SYMBOL_GPL drivers/bus/mhi/core/mhi 0xc2321059 mhi_prepare_for_power_up +EXPORT_SYMBOL_GPL drivers/bus/mhi/core/mhi 0xc654a8b8 mhi_download_rddm_img +EXPORT_SYMBOL_GPL drivers/bus/mhi/core/mhi 0xca2c7309 mhi_queue_skb +EXPORT_SYMBOL_GPL drivers/bus/mhi/core/mhi 0xf564da89 __mhi_driver_register +EXPORT_SYMBOL_GPL drivers/bus/mhi/core/mhi 0xf9519a6f mhi_pm_resume +EXPORT_SYMBOL_GPL drivers/counter/counter 0x01aab51b counter_count_direction_str +EXPORT_SYMBOL_GPL drivers/counter/counter 0x053fab01 counter_device_enum_available_read +EXPORT_SYMBOL_GPL drivers/counter/counter 0x0a8c434f counter_device_enum_read +EXPORT_SYMBOL_GPL drivers/counter/counter 0x0fb3e0d3 counter_device_enum_write +EXPORT_SYMBOL_GPL drivers/counter/counter 0x27d3e9ab counter_signal_enum_read +EXPORT_SYMBOL_GPL drivers/counter/counter 0x8fcd606f counter_count_enum_available_read +EXPORT_SYMBOL_GPL drivers/counter/counter 0x965ef11b devm_counter_register +EXPORT_SYMBOL_GPL drivers/counter/counter 0x9a4cf7e5 counter_count_enum_write +EXPORT_SYMBOL_GPL drivers/counter/counter 0x9e811ab5 counter_signal_enum_available_read +EXPORT_SYMBOL_GPL drivers/counter/counter 0xc535995c counter_register +EXPORT_SYMBOL_GPL drivers/counter/counter 0xcb25a8b0 counter_count_enum_read +EXPORT_SYMBOL_GPL drivers/counter/counter 0xcc05cbf9 counter_signal_enum_write +EXPORT_SYMBOL_GPL drivers/counter/counter 0xee2292a9 counter_unregister +EXPORT_SYMBOL_GPL drivers/counter/counter 0xee526d0f counter_count_mode_str +EXPORT_SYMBOL_GPL drivers/counter/counter 0xfe3e5488 devm_counter_unregister +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 0x303c13ad sev_issue_cmd_external_user +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 0x501325b6 ccp_enqueue_cmd +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 0xd02e197f sev_platform_init +EXPORT_SYMBOL_GPL drivers/crypto/qat/qat_common/intel_qat 0x0aee7d2a adf_enable_aer +EXPORT_SYMBOL_GPL drivers/crypto/qat/qat_common/intel_qat 0x21b34fb6 adf_devmgr_add_dev +EXPORT_SYMBOL_GPL drivers/crypto/qat/qat_common/intel_qat 0x2417c047 adf_exit_admin_comms +EXPORT_SYMBOL_GPL drivers/crypto/qat/qat_common/intel_qat 0x2b8b4f6b adf_dev_stop +EXPORT_SYMBOL_GPL drivers/crypto/qat/qat_common/intel_qat 0x2d403346 adf_cfg_dev_add +EXPORT_SYMBOL_GPL drivers/crypto/qat/qat_common/intel_qat 0x32b7be9c adf_dev_put +EXPORT_SYMBOL_GPL drivers/crypto/qat/qat_common/intel_qat 0x3897b402 adf_devmgr_rm_dev +EXPORT_SYMBOL_GPL drivers/crypto/qat/qat_common/intel_qat 0x3aa31bae adf_dev_get +EXPORT_SYMBOL_GPL drivers/crypto/qat/qat_common/intel_qat 0x4147c10a adf_init_etr_data +EXPORT_SYMBOL_GPL drivers/crypto/qat/qat_common/intel_qat 0x50d60468 qat_crypto_dev_config +EXPORT_SYMBOL_GPL drivers/crypto/qat/qat_common/intel_qat 0x516a6c07 adf_dev_start +EXPORT_SYMBOL_GPL drivers/crypto/qat/qat_common/intel_qat 0x5ee7fdfa adf_devmgr_pci_to_accel_dev +EXPORT_SYMBOL_GPL drivers/crypto/qat/qat_common/intel_qat 0x6005a57b adf_isr_resource_free +EXPORT_SYMBOL_GPL drivers/crypto/qat/qat_common/intel_qat 0x66af04cc adf_init_arb +EXPORT_SYMBOL_GPL drivers/crypto/qat/qat_common/intel_qat 0x6e27c0c5 adf_sriov_configure +EXPORT_SYMBOL_GPL drivers/crypto/qat/qat_common/intel_qat 0x6e9fba91 adf_vf2pf_init +EXPORT_SYMBOL_GPL drivers/crypto/qat/qat_common/intel_qat 0x75049d9c adf_disable_sriov +EXPORT_SYMBOL_GPL drivers/crypto/qat/qat_common/intel_qat 0x7907417d adf_cfg_dev_remove +EXPORT_SYMBOL_GPL drivers/crypto/qat/qat_common/intel_qat 0x7b43ba32 adf_dev_init +EXPORT_SYMBOL_GPL drivers/crypto/qat/qat_common/intel_qat 0x86d2b848 adf_reset_sbr +EXPORT_SYMBOL_GPL drivers/crypto/qat/qat_common/intel_qat 0x870aabdd adf_exit_arb +EXPORT_SYMBOL_GPL drivers/crypto/qat/qat_common/intel_qat 0x8bcc5dda adf_cfg_section_add +EXPORT_SYMBOL_GPL drivers/crypto/qat/qat_common/intel_qat 0x92bb2f74 adf_cleanup_etr_data +EXPORT_SYMBOL_GPL drivers/crypto/qat/qat_common/intel_qat 0xa00e2fda adf_devmgr_in_reset +EXPORT_SYMBOL_GPL drivers/crypto/qat/qat_common/intel_qat 0xbe22506e adf_vf_isr_resource_free +EXPORT_SYMBOL_GPL drivers/crypto/qat/qat_common/intel_qat 0xc030db00 adf_disable_aer +EXPORT_SYMBOL_GPL drivers/crypto/qat/qat_common/intel_qat 0xc6943a07 adf_devmgr_update_class_index +EXPORT_SYMBOL_GPL drivers/crypto/qat/qat_common/intel_qat 0xc7bc924a adf_send_admin_init +EXPORT_SYMBOL_GPL drivers/crypto/qat/qat_common/intel_qat 0xc8925dd5 adf_init_admin_comms +EXPORT_SYMBOL_GPL drivers/crypto/qat/qat_common/intel_qat 0xcc3b167a adf_clean_vf_map +EXPORT_SYMBOL_GPL drivers/crypto/qat/qat_common/intel_qat 0xcd707ae7 adf_isr_resource_alloc +EXPORT_SYMBOL_GPL drivers/crypto/qat/qat_common/intel_qat 0xcdf02dc4 adf_vf_isr_resource_alloc +EXPORT_SYMBOL_GPL drivers/crypto/qat/qat_common/intel_qat 0xd1111cdb adf_enable_vf2pf_comms +EXPORT_SYMBOL_GPL drivers/crypto/qat/qat_common/intel_qat 0xd6c7f86d adf_dev_in_use +EXPORT_SYMBOL_GPL drivers/crypto/qat/qat_common/intel_qat 0xe2b20554 adf_dev_shutdown +EXPORT_SYMBOL_GPL drivers/crypto/qat/qat_common/intel_qat 0xe54727a6 adf_iov_putmsg +EXPORT_SYMBOL_GPL drivers/crypto/qat/qat_common/intel_qat 0xe5d6c0fd adf_cfg_add_key_value_param +EXPORT_SYMBOL_GPL drivers/crypto/qat/qat_common/intel_qat 0xeefceb1c adf_reset_flr +EXPORT_SYMBOL_GPL drivers/crypto/qat/qat_common/intel_qat 0xf245d525 adf_dev_started +EXPORT_SYMBOL_GPL drivers/crypto/qat/qat_common/intel_qat 0xf510246d adf_vf2pf_shutdown +EXPORT_SYMBOL_GPL drivers/dax/device_dax 0xbbf67876 dev_dax_probe +EXPORT_SYMBOL_GPL drivers/dax/pmem/dax_pmem_core 0x402480ea __dax_pmem_probe +EXPORT_SYMBOL_GPL drivers/dca/dca 0x01a33ab9 dca_unregister_notify +EXPORT_SYMBOL_GPL drivers/dca/dca 0x0a80dcad free_dca_provider +EXPORT_SYMBOL_GPL drivers/dca/dca 0x1d83eb6b dca3_get_tag +EXPORT_SYMBOL_GPL drivers/dca/dca 0x46c34a30 alloc_dca_provider +EXPORT_SYMBOL_GPL drivers/dca/dca 0x4e72796a unregister_dca_provider +EXPORT_SYMBOL_GPL drivers/dca/dca 0x560c074e dca_remove_requester +EXPORT_SYMBOL_GPL drivers/dca/dca 0x61f01a1f dca_add_requester +EXPORT_SYMBOL_GPL drivers/dca/dca 0x9990c30f 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/dma/dw-edma/dw-edma 0x5386c873 dw_edma_probe +EXPORT_SYMBOL_GPL drivers/dma/dw-edma/dw-edma 0x92c13eaa dw_edma_remove +EXPORT_SYMBOL_GPL drivers/dma/dw/dw_dmac_core 0x13495e87 dw_dma_probe +EXPORT_SYMBOL_GPL drivers/dma/dw/dw_dmac_core 0x332384b3 dw_dma_filter +EXPORT_SYMBOL_GPL drivers/dma/dw/dw_dmac_core 0x3fe37bae idma32_dma_remove +EXPORT_SYMBOL_GPL drivers/dma/dw/dw_dmac_core 0xafc389b6 do_dw_dma_enable +EXPORT_SYMBOL_GPL drivers/dma/dw/dw_dmac_core 0xbb92df89 dw_dma_remove +EXPORT_SYMBOL_GPL drivers/dma/dw/dw_dmac_core 0xd70ca892 do_dw_dma_disable +EXPORT_SYMBOL_GPL drivers/dma/dw/dw_dmac_core 0xdcaca794 idma32_dma_probe +EXPORT_SYMBOL_GPL drivers/dma/hsu/hsu_dma 0x70018391 hsu_dma_remove +EXPORT_SYMBOL_GPL drivers/dma/hsu/hsu_dma 0x7fe70a2b hsu_dma_get_status +EXPORT_SYMBOL_GPL drivers/dma/hsu/hsu_dma 0x8218284d hsu_dma_do_irq +EXPORT_SYMBOL_GPL drivers/dma/hsu/hsu_dma 0xf73e9950 hsu_dma_probe +EXPORT_SYMBOL_GPL drivers/dma/qcom/hdma_mgmt 0x4037700e hidma_mgmt_setup +EXPORT_SYMBOL_GPL drivers/dma/qcom/hdma_mgmt 0x7a62ccdb hidma_mgmt_init_sys +EXPORT_SYMBOL_GPL drivers/dma/virt-dma 0x42e48823 vchan_dma_desc_free_list +EXPORT_SYMBOL_GPL drivers/dma/virt-dma 0x57de5d36 vchan_tx_submit +EXPORT_SYMBOL_GPL drivers/dma/virt-dma 0x5c04a3ee vchan_init +EXPORT_SYMBOL_GPL drivers/dma/virt-dma 0xc1d54ff8 vchan_find_desc +EXPORT_SYMBOL_GPL drivers/dma/virt-dma 0xc9bbeb40 vchan_tx_desc_free +EXPORT_SYMBOL_GPL drivers/edac/amd64_edac_mod 0xada6a396 amd64_get_dram_hole_info +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 0xe86fb5c7 fw_card_release +EXPORT_SYMBOL_GPL drivers/fpga/altera-pr-ip-core 0x11bcee8e alt_pr_unregister +EXPORT_SYMBOL_GPL drivers/fpga/altera-pr-ip-core 0x3ca71101 alt_pr_register +EXPORT_SYMBOL_GPL drivers/fpga/dfl 0x0247de9b dfl_fpga_port_ops_put +EXPORT_SYMBOL_GPL drivers/fpga/dfl 0x100d5b9b dfl_fpga_cdev_assign_port +EXPORT_SYMBOL_GPL drivers/fpga/dfl 0x1c041e0a dfl_fpga_feature_devs_remove +EXPORT_SYMBOL_GPL drivers/fpga/dfl 0x331c2756 dfl_fpga_port_ops_get +EXPORT_SYMBOL_GPL drivers/fpga/dfl 0x39353590 dfl_fpga_feature_devs_enumerate +EXPORT_SYMBOL_GPL drivers/fpga/dfl 0x52178d3f dfl_fpga_dev_feature_uinit +EXPORT_SYMBOL_GPL drivers/fpga/dfl 0x58af9a9e dfl_fpga_cdev_config_ports_vf +EXPORT_SYMBOL_GPL drivers/fpga/dfl 0x640dd929 dfl_fpga_enum_info_add_dfl +EXPORT_SYMBOL_GPL drivers/fpga/dfl 0x6eb32f8d dfl_fpga_dev_feature_init +EXPORT_SYMBOL_GPL drivers/fpga/dfl 0x785a0f93 dfl_fpga_cdev_config_ports_pf +EXPORT_SYMBOL_GPL drivers/fpga/dfl 0x7e8d4a40 dfl_fpga_enum_info_free +EXPORT_SYMBOL_GPL drivers/fpga/dfl 0x81ccd61a dfl_fpga_cdev_release_port +EXPORT_SYMBOL_GPL drivers/fpga/dfl 0x9fa135ea dfl_fpga_port_ops_add +EXPORT_SYMBOL_GPL drivers/fpga/dfl 0xc427382d dfl_fpga_dev_ops_register +EXPORT_SYMBOL_GPL drivers/fpga/dfl 0xd38626a9 dfl_fpga_enum_info_alloc +EXPORT_SYMBOL_GPL drivers/fpga/dfl 0xd68a18eb __dfl_fpga_cdev_find_port +EXPORT_SYMBOL_GPL drivers/fpga/dfl 0xf45b730e dfl_fpga_dev_ops_unregister +EXPORT_SYMBOL_GPL drivers/fpga/dfl 0xf72c3aea dfl_fpga_port_ops_del +EXPORT_SYMBOL_GPL drivers/fpga/dfl 0xf9bf28e5 dfl_fpga_check_port_id +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 0x12c93e8c of_fpga_bridge_get_to_list +EXPORT_SYMBOL_GPL drivers/fpga/fpga-bridge 0x2c8167cf fpga_bridges_disable +EXPORT_SYMBOL_GPL drivers/fpga/fpga-bridge 0x3ad092ac fpga_bridge_free +EXPORT_SYMBOL_GPL drivers/fpga/fpga-bridge 0x457d5726 fpga_bridge_put +EXPORT_SYMBOL_GPL drivers/fpga/fpga-bridge 0x4f7fb264 fpga_bridge_get +EXPORT_SYMBOL_GPL drivers/fpga/fpga-bridge 0x697d4abb fpga_bridge_disable +EXPORT_SYMBOL_GPL drivers/fpga/fpga-bridge 0x78bb33a7 fpga_bridge_create +EXPORT_SYMBOL_GPL drivers/fpga/fpga-bridge 0x86bedbcb devm_fpga_bridge_create +EXPORT_SYMBOL_GPL drivers/fpga/fpga-bridge 0xb42247e4 fpga_bridge_enable +EXPORT_SYMBOL_GPL drivers/fpga/fpga-bridge 0xc3a20163 of_fpga_bridge_get +EXPORT_SYMBOL_GPL drivers/fpga/fpga-bridge 0xe21c7606 fpga_bridge_get_to_list +EXPORT_SYMBOL_GPL drivers/fpga/fpga-bridge 0xe3c9db82 fpga_bridge_unregister +EXPORT_SYMBOL_GPL drivers/fpga/fpga-bridge 0xee38d7b4 fpga_bridge_register +EXPORT_SYMBOL_GPL drivers/fpga/fpga-mgr 0x03352ef4 of_fpga_mgr_get +EXPORT_SYMBOL_GPL drivers/fpga/fpga-mgr 0x16787c88 fpga_mgr_lock +EXPORT_SYMBOL_GPL drivers/fpga/fpga-mgr 0x26c4057e fpga_mgr_get +EXPORT_SYMBOL_GPL drivers/fpga/fpga-mgr 0x4bba206a fpga_mgr_create +EXPORT_SYMBOL_GPL drivers/fpga/fpga-mgr 0x558ac1ce fpga_mgr_free +EXPORT_SYMBOL_GPL drivers/fpga/fpga-mgr 0x6fad501a fpga_mgr_put +EXPORT_SYMBOL_GPL drivers/fpga/fpga-mgr 0x728b658e fpga_image_info_alloc +EXPORT_SYMBOL_GPL drivers/fpga/fpga-mgr 0x8f3a5feb fpga_mgr_register +EXPORT_SYMBOL_GPL drivers/fpga/fpga-mgr 0xa10b4551 devm_fpga_mgr_create +EXPORT_SYMBOL_GPL drivers/fpga/fpga-mgr 0xae5fa7f7 fpga_image_info_free +EXPORT_SYMBOL_GPL drivers/fpga/fpga-mgr 0xc18af420 fpga_mgr_unlock +EXPORT_SYMBOL_GPL drivers/fpga/fpga-mgr 0xd1ef5ca2 fpga_mgr_load +EXPORT_SYMBOL_GPL drivers/fpga/fpga-mgr 0xd6fee071 fpga_mgr_unregister +EXPORT_SYMBOL_GPL drivers/fpga/fpga-region 0x28983e03 fpga_region_free +EXPORT_SYMBOL_GPL drivers/fpga/fpga-region 0x6a26a48b fpga_region_unregister +EXPORT_SYMBOL_GPL drivers/fpga/fpga-region 0x83dd83ba fpga_region_program_fpga +EXPORT_SYMBOL_GPL drivers/fpga/fpga-region 0xc23fd483 devm_fpga_region_create +EXPORT_SYMBOL_GPL drivers/fpga/fpga-region 0xcc69e948 fpga_region_class_find +EXPORT_SYMBOL_GPL drivers/fpga/fpga-region 0xdd74dbf4 fpga_region_register +EXPORT_SYMBOL_GPL drivers/fpga/fpga-region 0xf2119e24 fpga_region_create +EXPORT_SYMBOL_GPL drivers/gnss/gnss 0x220a882e gnss_insert_raw +EXPORT_SYMBOL_GPL drivers/gnss/gnss 0x440b5519 gnss_deregister_device +EXPORT_SYMBOL_GPL drivers/gnss/gnss 0x4a284d96 gnss_allocate_device +EXPORT_SYMBOL_GPL drivers/gnss/gnss 0x7be8c3c6 gnss_put_device +EXPORT_SYMBOL_GPL drivers/gnss/gnss 0x7ee1373f gnss_register_device +EXPORT_SYMBOL_GPL drivers/gnss/gnss-serial 0x42f2623e gnss_serial_free +EXPORT_SYMBOL_GPL drivers/gnss/gnss-serial 0xaa109f1c gnss_serial_deregister +EXPORT_SYMBOL_GPL drivers/gnss/gnss-serial 0xbb163bd8 gnss_serial_pm_ops +EXPORT_SYMBOL_GPL drivers/gnss/gnss-serial 0xe863f02e gnss_serial_register +EXPORT_SYMBOL_GPL drivers/gnss/gnss-serial 0xf2ea6406 gnss_serial_allocate +EXPORT_SYMBOL_GPL drivers/gpio/gpio-generic 0x53c2eba5 bgpio_init +EXPORT_SYMBOL_GPL drivers/gpio/gpio-max730x 0x132f3d2f __max730x_probe +EXPORT_SYMBOL_GPL drivers/gpio/gpio-max730x 0x81b0b8bb __max730x_remove +EXPORT_SYMBOL_GPL drivers/gpu/drm/bridge/analogix/analogix_dp 0x09491261 analogix_dp_suspend +EXPORT_SYMBOL_GPL drivers/gpu/drm/bridge/analogix/analogix_dp 0x14ff3822 analogix_dp_resume +EXPORT_SYMBOL_GPL drivers/gpu/drm/bridge/analogix/analogix_dp 0x1f14ab72 analogix_dp_remove +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 0x9b76b071 analogix_dp_start_crc +EXPORT_SYMBOL_GPL drivers/gpu/drm/bridge/analogix/analogix_dp 0x9cb6db25 analogix_dp_unbind +EXPORT_SYMBOL_GPL drivers/gpu/drm/bridge/analogix/analogix_dp 0xd2745cac analogix_dp_stop_crc +EXPORT_SYMBOL_GPL drivers/gpu/drm/bridge/analogix/analogix_dp 0xd4c24e92 analogix_dp_probe +EXPORT_SYMBOL_GPL drivers/gpu/drm/bridge/analogix/analogix_dp 0xddf92907 analogix_dp_bind +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm 0x0812192a drm_bridge_hpd_notify +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm 0x0c8052c5 drm_gem_cma_free_object +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm 0x0c9cbcef drm_gem_shmem_free_object +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm 0x10252c47 drm_gem_shmem_dumb_create +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm 0x108bbcb4 drm_gem_shmem_create +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm 0x168e137d drm_gem_cma_prime_get_sg_table +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm 0x1d6ec267 drm_display_mode_to_videomode +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm 0x1de317e5 drm_gem_cma_create +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm 0x248818c1 drm_gem_shmem_get_sg_table +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm 0x28c65ea0 drm_gem_shmem_get_pages_sgt +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm 0x34dac653 drm_gem_shmem_prime_import_sg_table +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm 0x49e084c6 drm_gem_shmem_mmap +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm 0x50b8e1ff drm_class_device_unregister +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm 0x6595c551 drm_do_get_edid +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm 0x68b7858d drm_display_mode_from_videomode +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm 0x6ac07598 drm_gem_cma_dumb_create_internal +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm 0x7546e74b drm_get_unmapped_area +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm 0x786f9ee5 drm_class_device_register +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm 0x7a18668b drm_bridge_get_modes +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm 0x80624f1e drm_bridge_detect +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm 0x87b020fc drm_bridge_get_edid +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm 0x8a68079d drmm_kstrdup +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm 0xad885165 drm_bus_flags_from_videomode +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm 0xb55495a5 drm_gem_cma_mmap +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm 0xb9a1a84e drm_hdcp_check_ksvs_revoked +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm 0xba9ff3b3 drm_gem_cma_prime_vunmap +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm 0xd1556167 drm_gem_cma_prime_import_sg_table +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm 0xd90f9d48 drm_crtc_add_crc_entry +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm 0xe7ff4ab4 drm_bridge_hpd_enable +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm 0xe8e2e843 drm_gem_cma_vm_ops +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm 0xef2546c6 drm_bridge_hpd_disable +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm 0xf1269d12 drm_gem_cma_prime_mmap +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm 0xf2769954 drm_gem_cma_prime_vmap +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm 0xf56faa52 drm_gem_dumb_map_offset +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm 0xfa6fac12 drm_gem_cma_dumb_create +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm_kms_helper 0x11ba2bba drm_bridge_connector_enable_hpd +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm_kms_helper 0x24dbe4eb drm_gem_fb_prepare_fb +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm_kms_helper 0x25979e65 drm_gem_fb_create_with_dirty +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm_kms_helper 0x26aba7c0 drm_gem_fb_get_obj +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm_kms_helper 0x3aa8bff8 drm_gem_fb_create +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm_kms_helper 0x632b6d35 drm_fb_cma_get_gem_obj +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm_kms_helper 0x67ed050c drm_bridge_connector_init +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm_kms_helper 0xba7f6cea drm_gem_fb_init_with_funcs +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm_kms_helper 0xc0610304 drm_gem_fb_afbc_init +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm_kms_helper 0xc3075acf drm_fb_cma_get_gem_addr +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm_kms_helper 0xc9e2e99d drm_bridge_connector_disable_hpd +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm_kms_helper 0xd2679bff drm_gem_fb_create_with_funcs +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 0x5c38bdd2 intel_gvt_register_hypervisor +EXPORT_SYMBOL_GPL drivers/gpu/drm/i915/i915 0x6fbc5503 intel_gvt_unregister_hypervisor +EXPORT_SYMBOL_GPL drivers/gpu/drm/i915/i915 0xe7237b0b i915_gpu_turbo_disable +EXPORT_SYMBOL_GPL drivers/gpu/drm/ttm/ttm 0x009bdd5b ttm_dma_populate +EXPORT_SYMBOL_GPL drivers/gpu/drm/ttm/ttm 0x999486d1 ttm_dma_unpopulate +EXPORT_SYMBOL_GPL drivers/gpu/drm/ttm/ttm 0xcd4da86b ttm_dma_page_alloc_debugfs +EXPORT_SYMBOL_GPL drivers/greybus/greybus 0x00639cd8 __tracepoint_gb_hd_in +EXPORT_SYMBOL_GPL drivers/greybus/greybus 0x0442541b __tracepoint_gb_message_submit +EXPORT_SYMBOL_GPL drivers/greybus/greybus 0x11d50b69 gb_operation_get +EXPORT_SYMBOL_GPL drivers/greybus/greybus 0x12ec7c15 gb_interface_request_mode_switch +EXPORT_SYMBOL_GPL drivers/greybus/greybus 0x15d1942f greybus_disabled +EXPORT_SYMBOL_GPL drivers/greybus/greybus 0x1b234ebc gb_connection_latency_tag_disable +EXPORT_SYMBOL_GPL drivers/greybus/greybus 0x1f04601b gb_debugfs_get +EXPORT_SYMBOL_GPL drivers/greybus/greybus 0x2a198045 gb_operation_get_payload_size_max +EXPORT_SYMBOL_GPL drivers/greybus/greybus 0x2daa88b3 gb_connection_destroy +EXPORT_SYMBOL_GPL drivers/greybus/greybus 0x2e030149 gb_operation_create_flags +EXPORT_SYMBOL_GPL drivers/greybus/greybus 0x34e0ba33 gb_connection_create_flags +EXPORT_SYMBOL_GPL drivers/greybus/greybus 0x3777fce7 gb_connection_enable +EXPORT_SYMBOL_GPL drivers/greybus/greybus 0x3d52d107 __tracepoint_gb_hd_add +EXPORT_SYMBOL_GPL drivers/greybus/greybus 0x3ebc5ef8 gb_operation_unidirectional_timeout +EXPORT_SYMBOL_GPL drivers/greybus/greybus 0x3ef75a08 __tracepoint_gb_hd_release +EXPORT_SYMBOL_GPL drivers/greybus/greybus 0x47ada2dc gb_hd_shutdown +EXPORT_SYMBOL_GPL drivers/greybus/greybus 0x4884741a gb_operation_request_send +EXPORT_SYMBOL_GPL drivers/greybus/greybus 0x5c09790f greybus_data_rcvd +EXPORT_SYMBOL_GPL drivers/greybus/greybus 0x76140323 gb_connection_create +EXPORT_SYMBOL_GPL drivers/greybus/greybus 0x775814a4 gb_hd_output +EXPORT_SYMBOL_GPL drivers/greybus/greybus 0x8057d903 gb_connection_enable_tx +EXPORT_SYMBOL_GPL drivers/greybus/greybus 0x871c75e6 gb_operation_cancel +EXPORT_SYMBOL_GPL drivers/greybus/greybus 0x8e7c33ab gb_hd_del +EXPORT_SYMBOL_GPL drivers/greybus/greybus 0x93a1995d gb_svc_intf_set_power_mode +EXPORT_SYMBOL_GPL drivers/greybus/greybus 0x9480a818 greybus_deregister_driver +EXPORT_SYMBOL_GPL drivers/greybus/greybus 0x9cf0aec5 gb_hd_add +EXPORT_SYMBOL_GPL drivers/greybus/greybus 0xa04d02ff gb_operation_sync_timeout +EXPORT_SYMBOL_GPL drivers/greybus/greybus 0xa47dbc2d gb_connection_create_offloaded +EXPORT_SYMBOL_GPL drivers/greybus/greybus 0xa73b07cb gb_connection_latency_tag_enable +EXPORT_SYMBOL_GPL drivers/greybus/greybus 0xa7a3f7fb gb_hd_cport_reserve +EXPORT_SYMBOL_GPL drivers/greybus/greybus 0xae723e88 gb_connection_disable +EXPORT_SYMBOL_GPL drivers/greybus/greybus 0xb819f3f1 gb_operation_response_alloc +EXPORT_SYMBOL_GPL drivers/greybus/greybus 0xb92ee71c gb_hd_create +EXPORT_SYMBOL_GPL drivers/greybus/greybus 0xb933909b gb_operation_put +EXPORT_SYMBOL_GPL drivers/greybus/greybus 0xc397c10a __tracepoint_gb_hd_del +EXPORT_SYMBOL_GPL drivers/greybus/greybus 0xcb8c92cd __tracepoint_gb_hd_create +EXPORT_SYMBOL_GPL drivers/greybus/greybus 0xcbc44491 gb_connection_disable_forced +EXPORT_SYMBOL_GPL drivers/greybus/greybus 0xcfcc9b58 greybus_register_driver +EXPORT_SYMBOL_GPL drivers/greybus/greybus 0xd09cc27f gb_operation_result +EXPORT_SYMBOL_GPL drivers/greybus/greybus 0xd404beff gb_connection_disable_rx +EXPORT_SYMBOL_GPL drivers/greybus/greybus 0xd460fa92 gb_hd_cport_release_reserved +EXPORT_SYMBOL_GPL drivers/greybus/greybus 0xde1a6d49 gb_hd_put +EXPORT_SYMBOL_GPL drivers/greybus/greybus 0xe51caf2f gb_operation_request_send_sync_timeout +EXPORT_SYMBOL_GPL drivers/greybus/greybus 0xf6c617ac greybus_message_sent +EXPORT_SYMBOL_GPL drivers/hid/hid 0x0035bc1a hid_destroy_device +EXPORT_SYMBOL_GPL drivers/hid/hid 0x012d1917 hid_match_device +EXPORT_SYMBOL_GPL drivers/hid/hid 0x05495392 hid_debug +EXPORT_SYMBOL_GPL drivers/hid/hid 0x078df73f hid_register_report +EXPORT_SYMBOL_GPL drivers/hid/hid 0x09b67242 hid_compare_device_paths +EXPORT_SYMBOL_GPL drivers/hid/hid 0x0ca349d4 hidinput_report_event +EXPORT_SYMBOL_GPL drivers/hid/hid 0x14a1a04d hidinput_calc_abs_res +EXPORT_SYMBOL_GPL drivers/hid/hid 0x171ad184 hid_output_report +EXPORT_SYMBOL_GPL drivers/hid/hid 0x19d52f1f hid_quirks_exit +EXPORT_SYMBOL_GPL drivers/hid/hid 0x2ebd3f08 __hid_register_driver +EXPORT_SYMBOL_GPL drivers/hid/hid 0x307685b4 hid_input_report +EXPORT_SYMBOL_GPL drivers/hid/hid 0x397702ac hid_connect +EXPORT_SYMBOL_GPL drivers/hid/hid 0x3a5c915f hid_alloc_report_buf +EXPORT_SYMBOL_GPL drivers/hid/hid 0x3dc243b2 hid_parse_report +EXPORT_SYMBOL_GPL drivers/hid/hid 0x4126d1ee hid_validate_values +EXPORT_SYMBOL_GPL drivers/hid/hid 0x47b431db hid_dump_field +EXPORT_SYMBOL_GPL drivers/hid/hid 0x4d3663cf hid_dump_input +EXPORT_SYMBOL_GPL drivers/hid/hid 0x4dd0cc49 hid_report_raw_event +EXPORT_SYMBOL_GPL drivers/hid/hid 0x4e62f73e hid_dump_device +EXPORT_SYMBOL_GPL drivers/hid/hid 0x5414bae2 hid_debug_event +EXPORT_SYMBOL_GPL drivers/hid/hid 0x5c7e7157 hid_hw_stop +EXPORT_SYMBOL_GPL drivers/hid/hid 0x5e8e409b hid_hw_start +EXPORT_SYMBOL_GPL drivers/hid/hid 0x66d30120 hid_lookup_quirk +EXPORT_SYMBOL_GPL drivers/hid/hid 0x6dde481c hidraw_connect +EXPORT_SYMBOL_GPL drivers/hid/hid 0x6ecbe7e9 hid_hw_open +EXPORT_SYMBOL_GPL drivers/hid/hid 0x6efb9324 hid_unregister_driver +EXPORT_SYMBOL_GPL drivers/hid/hid 0x75a4454b hidinput_get_led_field +EXPORT_SYMBOL_GPL drivers/hid/hid 0x846c1ed2 hid_resolv_usage +EXPORT_SYMBOL_GPL drivers/hid/hid 0x8b13a8b8 hid_snto32 +EXPORT_SYMBOL_GPL drivers/hid/hid 0x9136dd7f __hid_request +EXPORT_SYMBOL_GPL drivers/hid/hid 0x91637715 hid_disconnect +EXPORT_SYMBOL_GPL drivers/hid/hid 0x91ac5b0b hid_check_keys_pressed +EXPORT_SYMBOL_GPL drivers/hid/hid 0x9288c84e hidinput_connect +EXPORT_SYMBOL_GPL drivers/hid/hid 0x9f74f629 hid_allocate_device +EXPORT_SYMBOL_GPL drivers/hid/hid 0xac7abb9a hid_dump_report +EXPORT_SYMBOL_GPL drivers/hid/hid 0xbea2d954 hidinput_find_field +EXPORT_SYMBOL_GPL drivers/hid/hid 0xc44795a5 hidinput_disconnect +EXPORT_SYMBOL_GPL drivers/hid/hid 0xcc286dbf hid_setup_resolution_multiplier +EXPORT_SYMBOL_GPL drivers/hid/hid 0xd0480823 hid_set_field +EXPORT_SYMBOL_GPL drivers/hid/hid 0xd6301ec1 hidraw_report_event +EXPORT_SYMBOL_GPL drivers/hid/hid 0xeb63cd79 hidinput_count_leds +EXPORT_SYMBOL_GPL drivers/hid/hid 0xec366cf3 hid_add_device +EXPORT_SYMBOL_GPL drivers/hid/hid 0xece81b6d hid_open_report +EXPORT_SYMBOL_GPL drivers/hid/hid 0xf84bc259 hid_hw_close +EXPORT_SYMBOL_GPL drivers/hid/hid 0xf9602361 hid_ignore +EXPORT_SYMBOL_GPL drivers/hid/hid 0xfa355613 hid_quirks_init +EXPORT_SYMBOL_GPL drivers/hid/hid 0xfc0bfa8f hid_field_extract +EXPORT_SYMBOL_GPL drivers/hid/hid 0xfc112876 hidraw_disconnect +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 0xc583be90 roccat_connect +EXPORT_SYMBOL_GPL drivers/hid/hid-roccat-common 0x5b3e0bc0 roccat_common2_device_init_struct +EXPORT_SYMBOL_GPL drivers/hid/hid-roccat-common 0x65783479 roccat_common2_sysfs_read +EXPORT_SYMBOL_GPL drivers/hid/hid-roccat-common 0x80375607 roccat_common2_sysfs_write +EXPORT_SYMBOL_GPL drivers/hid/hid-roccat-common 0x83609da8 roccat_common2_send +EXPORT_SYMBOL_GPL drivers/hid/hid-roccat-common 0xac9c601c roccat_common2_send_with_status +EXPORT_SYMBOL_GPL drivers/hid/hid-roccat-common 0xdfb2952e roccat_common2_receive +EXPORT_SYMBOL_GPL drivers/hid/hid-sensor-hub 0x0876cf58 sensor_hub_device_close +EXPORT_SYMBOL_GPL drivers/hid/hid-sensor-hub 0x2add0092 sensor_hub_input_get_attribute_info +EXPORT_SYMBOL_GPL drivers/hid/hid-sensor-hub 0x2c637219 hid_sensor_get_usage_index +EXPORT_SYMBOL_GPL drivers/hid/hid-sensor-hub 0x36cca7a7 sensor_hub_remove_callback +EXPORT_SYMBOL_GPL drivers/hid/hid-sensor-hub 0x6c00631d sensor_hub_get_feature +EXPORT_SYMBOL_GPL drivers/hid/hid-sensor-hub 0x7efcd52d sensor_hub_input_attr_get_raw_value +EXPORT_SYMBOL_GPL drivers/hid/hid-sensor-hub 0xbaa0310b sensor_hub_register_callback +EXPORT_SYMBOL_GPL drivers/hid/hid-sensor-hub 0xc5762afd sensor_hub_device_open +EXPORT_SYMBOL_GPL drivers/hid/hid-sensor-hub 0xf43d20f4 sensor_hub_set_feature +EXPORT_SYMBOL_GPL drivers/hid/i2c-hid/i2c-hid 0xae3bc1ad i2c_hid_ll_driver +EXPORT_SYMBOL_GPL drivers/hid/uhid 0x1f6b9ff4 uhid_hid_driver +EXPORT_SYMBOL_GPL drivers/hid/usbhid/usbhid 0x4c9f45ad usb_hid_driver +EXPORT_SYMBOL_GPL drivers/hid/usbhid/usbhid 0xfd799cd2 hiddev_hid_event +EXPORT_SYMBOL_GPL drivers/hsi/hsi 0x0a4f79f8 hsi_alloc_msg +EXPORT_SYMBOL_GPL drivers/hsi/hsi 0x0ff65a4d hsi_put_controller +EXPORT_SYMBOL_GPL drivers/hsi/hsi 0x1bd75852 hsi_remove_client +EXPORT_SYMBOL_GPL drivers/hsi/hsi 0x1d18452e hsi_unregister_controller +EXPORT_SYMBOL_GPL drivers/hsi/hsi 0x25965222 hsi_unregister_port_event +EXPORT_SYMBOL_GPL drivers/hsi/hsi 0x2b9bb90d hsi_event +EXPORT_SYMBOL_GPL drivers/hsi/hsi 0x2df2232b hsi_new_client +EXPORT_SYMBOL_GPL drivers/hsi/hsi 0x3a0b5d24 hsi_register_port_event +EXPORT_SYMBOL_GPL drivers/hsi/hsi 0x3cec341f hsi_release_port +EXPORT_SYMBOL_GPL drivers/hsi/hsi 0x42d15b3e hsi_async +EXPORT_SYMBOL_GPL drivers/hsi/hsi 0x4acb696e hsi_alloc_controller +EXPORT_SYMBOL_GPL drivers/hsi/hsi 0x4e5eaddc hsi_claim_port +EXPORT_SYMBOL_GPL drivers/hsi/hsi 0x50651ebc hsi_register_controller +EXPORT_SYMBOL_GPL drivers/hsi/hsi 0x5210a5bf hsi_board_list +EXPORT_SYMBOL_GPL drivers/hsi/hsi 0x59c985b8 hsi_get_channel_id_by_name +EXPORT_SYMBOL_GPL drivers/hsi/hsi 0xbeb15438 hsi_register_client_driver +EXPORT_SYMBOL_GPL drivers/hsi/hsi 0xe3c59510 hsi_free_msg +EXPORT_SYMBOL_GPL drivers/hsi/hsi 0xfd16b1b0 hsi_port_unregister_clients +EXPORT_SYMBOL_GPL drivers/hv/hv_vmbus 0x18a7c6f7 vmbus_teardown_gpadl +EXPORT_SYMBOL_GPL drivers/hv/hv_vmbus 0x19a44247 vmbus_connect_ring +EXPORT_SYMBOL_GPL drivers/hv/hv_vmbus 0x1d589a05 vmbus_set_event +EXPORT_SYMBOL_GPL drivers/hv/hv_vmbus 0x2ca32100 hv_pkt_iter_first +EXPORT_SYMBOL_GPL drivers/hv/hv_vmbus 0x31e2e77f vmbus_free_mmio +EXPORT_SYMBOL_GPL drivers/hv/hv_vmbus 0x32819569 vmbus_recvpacket_raw +EXPORT_SYMBOL_GPL drivers/hv/hv_vmbus 0x334da57f vmbus_open +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 0x502db580 vmbus_connection +EXPORT_SYMBOL_GPL drivers/hv/hv_vmbus 0x512aed0d vmbus_alloc_ring +EXPORT_SYMBOL_GPL drivers/hv/hv_vmbus 0x5178e80e vmbus_hvsock_device_unregister +EXPORT_SYMBOL_GPL drivers/hv/hv_vmbus 0x53589d9e vmbus_send_modifychannel +EXPORT_SYMBOL_GPL drivers/hv/hv_vmbus 0x573a5073 vmbus_allocate_mmio +EXPORT_SYMBOL_GPL drivers/hv/hv_vmbus 0x58050a5b vmbus_driver_unregister +EXPORT_SYMBOL_GPL drivers/hv/hv_vmbus 0x5deea627 __hv_pkt_iter_next +EXPORT_SYMBOL_GPL drivers/hv/hv_vmbus 0x6c8c6c5d vmbus_set_chn_rescind_callback +EXPORT_SYMBOL_GPL drivers/hv/hv_vmbus 0x78042249 hv_pkt_iter_close +EXPORT_SYMBOL_GPL drivers/hv/hv_vmbus 0x8ac2cd59 __vmbus_driver_register +EXPORT_SYMBOL_GPL drivers/hv/hv_vmbus 0x8fc8ce2b vmbus_prep_negotiate_resp +EXPORT_SYMBOL_GPL drivers/hv/hv_vmbus 0x943255ff hv_ringbuffer_get_debuginfo +EXPORT_SYMBOL_GPL drivers/hv/hv_vmbus 0x98b9915c vmbus_establish_gpadl +EXPORT_SYMBOL_GPL drivers/hv/hv_vmbus 0xa02f6484 vmbus_sendpacket_pagebuffer +EXPORT_SYMBOL_GPL drivers/hv/hv_vmbus 0xb3237076 vmbus_sendpacket_mpb_desc +EXPORT_SYMBOL_GPL drivers/hv/hv_vmbus 0xbbc622e4 vmbus_are_subchannels_present +EXPORT_SYMBOL_GPL drivers/hv/hv_vmbus 0xd897043f vmbus_close +EXPORT_SYMBOL_GPL drivers/hv/hv_vmbus 0xdfe77c7f vmbus_setevent +EXPORT_SYMBOL_GPL drivers/hv/hv_vmbus 0xe33c9a64 vmbus_set_sc_create_callback +EXPORT_SYMBOL_GPL drivers/hv/hv_vmbus 0xf41503cd vmbus_disconnect_ring +EXPORT_SYMBOL_GPL drivers/hv/hv_vmbus 0xf50fab51 vmbus_free_ring +EXPORT_SYMBOL_GPL drivers/hwmon/adt7x10 0x046d6b2f adt7x10_probe +EXPORT_SYMBOL_GPL drivers/hwmon/adt7x10 0x561bcc3c adt7x10_dev_pm_ops +EXPORT_SYMBOL_GPL drivers/hwmon/adt7x10 0x784155fd adt7x10_remove +EXPORT_SYMBOL_GPL drivers/hwmon/ltc2947-core 0x2edba817 ltc2947_pm_ops +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/pmbus/pmbus_core 0x00018eeb pmbus_read_byte_data +EXPORT_SYMBOL_GPL drivers/hwmon/pmbus/pmbus_core 0x0a70d2bd pmbus_get_fan_rate_cached +EXPORT_SYMBOL_GPL drivers/hwmon/pmbus/pmbus_core 0x255a3153 pmbus_write_word_data +EXPORT_SYMBOL_GPL drivers/hwmon/pmbus/pmbus_core 0x32954bf7 pmbus_read_word_data +EXPORT_SYMBOL_GPL drivers/hwmon/pmbus/pmbus_core 0x463d9ee3 pmbus_update_byte_data +EXPORT_SYMBOL_GPL drivers/hwmon/pmbus/pmbus_core 0x4c56d54c pmbus_clear_faults +EXPORT_SYMBOL_GPL drivers/hwmon/pmbus/pmbus_core 0x4f998895 pmbus_write_byte_data +EXPORT_SYMBOL_GPL drivers/hwmon/pmbus/pmbus_core 0x5fc3df17 pmbus_update_fan +EXPORT_SYMBOL_GPL drivers/hwmon/pmbus/pmbus_core 0x60bb8ef8 pmbus_clear_cache +EXPORT_SYMBOL_GPL drivers/hwmon/pmbus/pmbus_core 0x67f6e27f pmbus_write_byte +EXPORT_SYMBOL_GPL drivers/hwmon/pmbus/pmbus_core 0x712a37da pmbus_regulator_ops +EXPORT_SYMBOL_GPL drivers/hwmon/pmbus/pmbus_core 0x747d77a5 pmbus_do_probe +EXPORT_SYMBOL_GPL drivers/hwmon/pmbus/pmbus_core 0x7dbe88ae pmbus_get_fan_rate_device +EXPORT_SYMBOL_GPL drivers/hwmon/pmbus/pmbus_core 0x8490022c pmbus_check_word_register +EXPORT_SYMBOL_GPL drivers/hwmon/pmbus/pmbus_core 0x884d9b21 pmbus_get_driver_info +EXPORT_SYMBOL_GPL drivers/hwmon/pmbus/pmbus_core 0x9c68387d pmbus_set_page +EXPORT_SYMBOL_GPL drivers/hwmon/pmbus/pmbus_core 0x9e5b682e pmbus_check_byte_register +EXPORT_SYMBOL_GPL drivers/hwmon/pmbus/pmbus_core 0xcf64c809 pmbus_do_remove +EXPORT_SYMBOL_GPL drivers/hwmon/pmbus/pmbus_core 0xcf77404a pmbus_get_debugfs_dir +EXPORT_SYMBOL_GPL drivers/hwtracing/intel_th/intel_th 0x0ec9d234 intel_th_trace_enable +EXPORT_SYMBOL_GPL drivers/hwtracing/intel_th/intel_th 0x15734c9a intel_th_driver_register +EXPORT_SYMBOL_GPL drivers/hwtracing/intel_th/intel_th 0x38822171 intel_th_free +EXPORT_SYMBOL_GPL drivers/hwtracing/intel_th/intel_th 0x51052a23 intel_th_output_enable +EXPORT_SYMBOL_GPL drivers/hwtracing/intel_th/intel_th 0x5e3ca433 intel_th_driver_unregister +EXPORT_SYMBOL_GPL drivers/hwtracing/intel_th/intel_th 0x93b547b7 intel_th_set_output +EXPORT_SYMBOL_GPL drivers/hwtracing/intel_th/intel_th 0x962b994d intel_th_alloc +EXPORT_SYMBOL_GPL drivers/hwtracing/intel_th/intel_th 0x9a84c05d intel_th_trace_switch +EXPORT_SYMBOL_GPL drivers/hwtracing/intel_th/intel_th 0xdb948f9f intel_th_trace_disable +EXPORT_SYMBOL_GPL drivers/hwtracing/intel_th/intel_th_msu 0x30a3f187 intel_th_msc_window_unlock +EXPORT_SYMBOL_GPL drivers/hwtracing/intel_th/intel_th_msu 0x8d785ce7 intel_th_msu_buffer_register +EXPORT_SYMBOL_GPL drivers/hwtracing/intel_th/intel_th_msu 0x97fe3bb6 intel_th_msu_buffer_unregister +EXPORT_SYMBOL_GPL drivers/hwtracing/stm/stm_core 0x1ddf7288 stm_register_device +EXPORT_SYMBOL_GPL drivers/hwtracing/stm/stm_core 0x2d335a15 stm_register_protocol +EXPORT_SYMBOL_GPL drivers/hwtracing/stm/stm_core 0x4573e9f7 to_pdrv_policy_node +EXPORT_SYMBOL_GPL drivers/hwtracing/stm/stm_core 0x866439b1 stm_source_write +EXPORT_SYMBOL_GPL drivers/hwtracing/stm/stm_core 0x907ed423 stm_unregister_device +EXPORT_SYMBOL_GPL drivers/hwtracing/stm/stm_core 0x9b95db88 stm_source_register_device +EXPORT_SYMBOL_GPL drivers/hwtracing/stm/stm_core 0xc97d6127 stm_data_write +EXPORT_SYMBOL_GPL drivers/hwtracing/stm/stm_core 0xd07244ee stm_unregister_protocol +EXPORT_SYMBOL_GPL drivers/hwtracing/stm/stm_core 0xe4c6b4d7 stm_source_unregister_device +EXPORT_SYMBOL_GPL drivers/i2c/busses/i2c-amd-mp2-pci 0x1367163f amd_mp2_bus_enable_set +EXPORT_SYMBOL_GPL drivers/i2c/busses/i2c-amd-mp2-pci 0x4ce2fa86 amd_mp2_unregister_cb +EXPORT_SYMBOL_GPL drivers/i2c/busses/i2c-amd-mp2-pci 0x53c5271f amd_mp2_rw_timeout +EXPORT_SYMBOL_GPL drivers/i2c/busses/i2c-amd-mp2-pci 0x7f6f1d36 amd_mp2_find_device +EXPORT_SYMBOL_GPL drivers/i2c/busses/i2c-amd-mp2-pci 0x979762fb amd_mp2_process_event +EXPORT_SYMBOL_GPL drivers/i2c/busses/i2c-amd-mp2-pci 0xb84329ce amd_mp2_rw +EXPORT_SYMBOL_GPL drivers/i2c/busses/i2c-amd-mp2-pci 0xf2b772a0 amd_mp2_register_cb +EXPORT_SYMBOL_GPL drivers/i2c/busses/i2c-nforce2 0xa83e5be5 nforce2_smbus +EXPORT_SYMBOL_GPL drivers/i2c/i2c-mux 0x15b91264 i2c_mux_add_adapter +EXPORT_SYMBOL_GPL drivers/i2c/i2c-mux 0x1feb46a2 i2c_root_adapter +EXPORT_SYMBOL_GPL drivers/i2c/i2c-mux 0x27193d9b i2c_mux_alloc +EXPORT_SYMBOL_GPL drivers/i2c/i2c-mux 0x33facf00 i2c_mux_del_adapters +EXPORT_SYMBOL_GPL drivers/i2c/i2c-smbus 0xb5b65e8f i2c_handle_smbus_alert +EXPORT_SYMBOL_GPL drivers/i2c/i2c-smbus 0xeac25f6f i2c_register_spd +EXPORT_SYMBOL_GPL drivers/i3c/i3c 0x0ba537d0 i3c_device_enable_ibi +EXPORT_SYMBOL_GPL drivers/i3c/i3c 0x1e0a09bb i3c_master_do_daa +EXPORT_SYMBOL_GPL drivers/i3c/i3c 0x1f07d50f i3c_master_entdaa_locked +EXPORT_SYMBOL_GPL drivers/i3c/i3c 0x28fd86aa i3c_master_defslvs_locked +EXPORT_SYMBOL_GPL drivers/i3c/i3c 0x30d9ebb8 i3c_driver_register_with_owner +EXPORT_SYMBOL_GPL drivers/i3c/i3c 0x324c9d17 i3c_master_unregister +EXPORT_SYMBOL_GPL drivers/i3c/i3c 0x34c50dc6 i3c_device_match_id +EXPORT_SYMBOL_GPL drivers/i3c/i3c 0x37112998 i3c_master_disec_locked +EXPORT_SYMBOL_GPL drivers/i3c/i3c 0x4e0e738e i3c_generic_ibi_get_free_slot +EXPORT_SYMBOL_GPL drivers/i3c/i3c 0x58375a13 i3c_master_add_i3c_dev_locked +EXPORT_SYMBOL_GPL drivers/i3c/i3c 0x5ba05dee i3c_driver_unregister +EXPORT_SYMBOL_GPL drivers/i3c/i3c 0x630cef12 i3c_device_get_info +EXPORT_SYMBOL_GPL drivers/i3c/i3c 0x64a7c258 i3c_device_do_priv_xfers +EXPORT_SYMBOL_GPL drivers/i3c/i3c 0x671a5006 dev_to_i3cdev +EXPORT_SYMBOL_GPL drivers/i3c/i3c 0x6db6f658 i3c_master_enec_locked +EXPORT_SYMBOL_GPL drivers/i3c/i3c 0x6f265040 i3c_master_set_info +EXPORT_SYMBOL_GPL drivers/i3c/i3c 0x76fe3e05 i3c_generic_ibi_free_pool +EXPORT_SYMBOL_GPL drivers/i3c/i3c 0x7b530089 i3c_master_get_free_addr +EXPORT_SYMBOL_GPL drivers/i3c/i3c 0x7ca5fc51 i3cdev_to_dev +EXPORT_SYMBOL_GPL drivers/i3c/i3c 0x7e5cc8df i3c_device_disable_ibi +EXPORT_SYMBOL_GPL drivers/i3c/i3c 0x7ff9c3dd i3c_master_queue_ibi +EXPORT_SYMBOL_GPL drivers/i3c/i3c 0x8f3507fa i3c_master_register +EXPORT_SYMBOL_GPL drivers/i3c/i3c 0xcbe13d4a i3c_generic_ibi_recycle_slot +EXPORT_SYMBOL_GPL drivers/i3c/i3c 0xce6a77ed i3c_generic_ibi_alloc_pool +EXPORT_SYMBOL_GPL drivers/i3c/i3c 0xcf4f487d i3c_device_free_ibi +EXPORT_SYMBOL_GPL drivers/i3c/i3c 0xf0aa14b5 i3c_device_request_ibi +EXPORT_SYMBOL_GPL drivers/iio/accel/adxl372 0x0ed90c5d adxl372_readable_noinc_reg +EXPORT_SYMBOL_GPL drivers/iio/accel/adxl372 0x79d21972 adxl372_probe +EXPORT_SYMBOL_GPL drivers/iio/accel/bmc150-accel-core 0x2a6fb833 bmc150_regmap_conf +EXPORT_SYMBOL_GPL drivers/iio/accel/bmc150-accel-core 0x4a1b895c bmc150_accel_core_remove +EXPORT_SYMBOL_GPL drivers/iio/accel/bmc150-accel-core 0x5e4e71aa bmc150_accel_pm_ops +EXPORT_SYMBOL_GPL drivers/iio/accel/bmc150-accel-core 0x8cfb8116 bmc150_accel_core_probe +EXPORT_SYMBOL_GPL drivers/iio/accel/mma7455_core 0x718d0dd2 mma7455_core_regmap +EXPORT_SYMBOL_GPL drivers/iio/accel/mma7455_core 0xa4ffceaf mma7455_core_remove +EXPORT_SYMBOL_GPL drivers/iio/accel/mma7455_core 0xce0d0ab0 mma7455_core_probe +EXPORT_SYMBOL_GPL drivers/iio/adc/ad7091r-base 0x18cc18fc ad7091r_regmap_config +EXPORT_SYMBOL_GPL drivers/iio/adc/ad7091r-base 0xbfc0f20a ad7091r_probe +EXPORT_SYMBOL_GPL drivers/iio/adc/ad7606 0x8aeb8cba ad7606_probe +EXPORT_SYMBOL_GPL drivers/iio/adc/ad7606 0xd1b004b5 ad7606_pm_ops +EXPORT_SYMBOL_GPL drivers/iio/adc/ad_sigma_delta 0x230a53cb ad_sd_set_comm +EXPORT_SYMBOL_GPL drivers/iio/adc/ad_sigma_delta 0x236f8e3d ad_sd_calibrate_all +EXPORT_SYMBOL_GPL drivers/iio/adc/ad_sigma_delta 0x2433df93 ad_sd_calibrate +EXPORT_SYMBOL_GPL drivers/iio/adc/ad_sigma_delta 0x34314444 ad_sd_cleanup_buffer_and_trigger +EXPORT_SYMBOL_GPL drivers/iio/adc/ad_sigma_delta 0x3b2f7222 ad_sd_reset +EXPORT_SYMBOL_GPL drivers/iio/adc/ad_sigma_delta 0x40080852 ad_sigma_delta_single_conversion +EXPORT_SYMBOL_GPL drivers/iio/adc/ad_sigma_delta 0x4363c853 ad_sd_validate_trigger +EXPORT_SYMBOL_GPL drivers/iio/adc/ad_sigma_delta 0x440c8e35 ad_sd_read_reg +EXPORT_SYMBOL_GPL drivers/iio/adc/ad_sigma_delta 0x5d941a07 ad_sd_write_reg +EXPORT_SYMBOL_GPL drivers/iio/adc/ad_sigma_delta 0x69b1ccbc ad_sd_init +EXPORT_SYMBOL_GPL drivers/iio/adc/ad_sigma_delta 0x6b74de1e ad_sd_setup_buffer_and_trigger +EXPORT_SYMBOL_GPL drivers/iio/adc/adi-axi-adc 0x058e81e3 devm_adi_axi_adc_conv_register +EXPORT_SYMBOL_GPL drivers/iio/adc/adi-axi-adc 0x1aa263b0 adi_axi_adc_conv_priv +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 0x7a711aef iio_channel_start_all_cb +EXPORT_SYMBOL_GPL drivers/iio/buffer/industrialio-buffer-cb 0x8ea8f02f iio_channel_get_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 0xade2c6a7 iio_channel_cb_get_iio_dev +EXPORT_SYMBOL_GPL drivers/iio/buffer/industrialio-buffer-cb 0xe21d2509 iio_channel_cb_get_channels +EXPORT_SYMBOL_GPL drivers/iio/buffer/industrialio-buffer-dma 0x0b82de48 iio_dma_buffer_release +EXPORT_SYMBOL_GPL drivers/iio/buffer/industrialio-buffer-dma 0x1b1bc65f iio_dma_buffer_set_bytes_per_datum +EXPORT_SYMBOL_GPL drivers/iio/buffer/industrialio-buffer-dma 0x1cff471d iio_dma_buffer_request_update +EXPORT_SYMBOL_GPL drivers/iio/buffer/industrialio-buffer-dma 0x32fd3cb1 iio_dma_buffer_set_length +EXPORT_SYMBOL_GPL drivers/iio/buffer/industrialio-buffer-dma 0x4a6e6d04 iio_dma_buffer_enable +EXPORT_SYMBOL_GPL drivers/iio/buffer/industrialio-buffer-dma 0x4d48561c iio_dma_buffer_block_done +EXPORT_SYMBOL_GPL drivers/iio/buffer/industrialio-buffer-dma 0x88718c5f iio_dma_buffer_data_available +EXPORT_SYMBOL_GPL drivers/iio/buffer/industrialio-buffer-dma 0xa5807ef3 iio_dma_buffer_read +EXPORT_SYMBOL_GPL drivers/iio/buffer/industrialio-buffer-dma 0xb08440ab iio_dma_buffer_init +EXPORT_SYMBOL_GPL drivers/iio/buffer/industrialio-buffer-dma 0xc0e4ee8d iio_dma_buffer_disable +EXPORT_SYMBOL_GPL drivers/iio/buffer/industrialio-buffer-dma 0xe0e4974e iio_dma_buffer_exit +EXPORT_SYMBOL_GPL drivers/iio/buffer/industrialio-buffer-dma 0xe5a2caef iio_dma_buffer_block_list_abort +EXPORT_SYMBOL_GPL drivers/iio/buffer/industrialio-buffer-dmaengine 0x847ba59e devm_iio_dmaengine_buffer_alloc +EXPORT_SYMBOL_GPL drivers/iio/buffer/industrialio-buffer-dmaengine 0xdcf5a208 iio_dmaengine_buffer_free +EXPORT_SYMBOL_GPL drivers/iio/buffer/industrialio-hw-consumer 0x19add461 devm_iio_hw_consumer_alloc +EXPORT_SYMBOL_GPL drivers/iio/buffer/industrialio-hw-consumer 0x3391543d iio_hw_consumer_disable +EXPORT_SYMBOL_GPL drivers/iio/buffer/industrialio-hw-consumer 0x45b0b672 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-triggered-buffer 0xc2725f8e devm_iio_triggered_buffer_setup +EXPORT_SYMBOL_GPL drivers/iio/chemical/bme680_core 0x71fb5b2a bme680_core_probe +EXPORT_SYMBOL_GPL drivers/iio/common/cros_ec_sensors/cros_ec_sensors_core 0x132742bb cros_ec_sensors_core_read +EXPORT_SYMBOL_GPL drivers/iio/common/cros_ec_sensors/cros_ec_sensors_core 0x25a22228 cros_ec_sensors_core_read_avail +EXPORT_SYMBOL_GPL drivers/iio/common/cros_ec_sensors/cros_ec_sensors_core 0x4ae1e666 cros_ec_sensors_ext_info +EXPORT_SYMBOL_GPL drivers/iio/common/cros_ec_sensors/cros_ec_sensors_core 0x621649fc cros_ec_sensor_fifo_attributes +EXPORT_SYMBOL_GPL drivers/iio/common/cros_ec_sensors/cros_ec_sensors_core 0x7e26c14c cros_ec_sensors_read_lpc +EXPORT_SYMBOL_GPL drivers/iio/common/cros_ec_sensors/cros_ec_sensors_core 0x82066006 cros_ec_sensors_core_write +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 0xc27aa420 cros_ec_sensors_core_init +EXPORT_SYMBOL_GPL drivers/iio/common/cros_ec_sensors/cros_ec_sensors_core 0xdcf3c3c7 cros_ec_sensors_push_data +EXPORT_SYMBOL_GPL drivers/iio/common/cros_ec_sensors/cros_ec_sensors_core 0xea7e481e cros_ec_motion_send_host_cmd +EXPORT_SYMBOL_GPL drivers/iio/common/cros_ec_sensors/cros_ec_sensors_core 0xfc49339a cros_ec_sensors_read_cmd +EXPORT_SYMBOL_GPL drivers/iio/dac/ad5592r-base 0x1658f59f ad5592r_probe +EXPORT_SYMBOL_GPL drivers/iio/dac/ad5592r-base 0xc21df4b9 ad5592r_remove +EXPORT_SYMBOL_GPL drivers/iio/dac/ad5686 0xcd5f0df7 ad5686_probe +EXPORT_SYMBOL_GPL drivers/iio/dac/ad5686 0xd4c5afd1 ad5686_remove +EXPORT_SYMBOL_GPL drivers/iio/gyro/bmg160_core 0x7495cc0c bmg160_core_remove +EXPORT_SYMBOL_GPL drivers/iio/gyro/bmg160_core 0x7c7a35d4 bmg160_pm_ops +EXPORT_SYMBOL_GPL drivers/iio/gyro/bmg160_core 0xe782e41f bmg160_core_probe +EXPORT_SYMBOL_GPL drivers/iio/gyro/fxas21002c_core 0x3460cf73 fxas21002c_core_probe +EXPORT_SYMBOL_GPL drivers/iio/gyro/fxas21002c_core 0x4103945f fxas21002c_core_remove +EXPORT_SYMBOL_GPL drivers/iio/gyro/fxas21002c_core 0xf8ffeb46 fxas21002c_pm_ops +EXPORT_SYMBOL_GPL drivers/iio/imu/adis_lib 0x005c860f devm_adis_setup_buffer_and_trigger +EXPORT_SYMBOL_GPL drivers/iio/imu/adis_lib 0x0c342727 __adis_read_reg +EXPORT_SYMBOL_GPL drivers/iio/imu/adis_lib 0x1db25b8d adis_init +EXPORT_SYMBOL_GPL drivers/iio/imu/adis_lib 0x3c2a2855 adis_single_conversion +EXPORT_SYMBOL_GPL drivers/iio/imu/adis_lib 0x4f2e860b __adis_initial_startup +EXPORT_SYMBOL_GPL drivers/iio/imu/adis_lib 0x93da857c __adis_update_bits_base +EXPORT_SYMBOL_GPL drivers/iio/imu/adis_lib 0x93dc9dd8 adis_remove_trigger +EXPORT_SYMBOL_GPL drivers/iio/imu/adis_lib 0xd00963d4 devm_adis_probe_trigger +EXPORT_SYMBOL_GPL drivers/iio/imu/adis_lib 0xd0439cdc adis_update_scan_mode +EXPORT_SYMBOL_GPL drivers/iio/imu/adis_lib 0xd42757e4 __adis_reset +EXPORT_SYMBOL_GPL drivers/iio/imu/adis_lib 0xe6efba9b __adis_check_status +EXPORT_SYMBOL_GPL drivers/iio/imu/adis_lib 0xe81ff356 adis_cleanup_buffer_and_trigger +EXPORT_SYMBOL_GPL drivers/iio/imu/adis_lib 0xec6d1f74 __adis_write_reg +EXPORT_SYMBOL_GPL drivers/iio/imu/adis_lib 0xecb7035a adis_setup_buffer_and_trigger +EXPORT_SYMBOL_GPL drivers/iio/imu/adis_lib 0xf7c2266b adis_probe_trigger +EXPORT_SYMBOL_GPL drivers/iio/imu/bmi160/bmi160_core 0xef6bdca2 bmi160_core_probe +EXPORT_SYMBOL_GPL drivers/iio/imu/fxos8700_core 0x8fb3936b fxos8700_core_probe +EXPORT_SYMBOL_GPL drivers/iio/imu/inv_mpu6050/inv-mpu6050 0x4f4c60b8 inv_mpu_core_probe +EXPORT_SYMBOL_GPL drivers/iio/imu/inv_mpu6050/inv-mpu6050 0xb11bcdaa inv_mpu_pmops +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x05b37638 iio_push_to_buffers +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x0ba91b71 __devm_iio_trigger_register +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x0bbca896 devm_iio_channel_get +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x0dcaa484 iio_get_channel_type +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x0f29c8cc iio_read_avail_channel_attribute +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x0f2fc834 devm_iio_trigger_alloc +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x1b22c503 devm_iio_channel_get_all +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x1ee17484 iio_read_channel_scale +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x2599c086 iio_read_channel_processed +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x26f6b499 iio_str_to_fixpoint +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x29174354 iio_enum_read +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x2c2c3cbe iio_enum_available_read +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x2f2bdbde iio_alloc_pollfunc +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x32827979 devm_iio_device_alloc +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x3820ae57 __devm_iio_device_register +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x38a7374e iio_write_channel_raw +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x395dabc6 iio_write_channel_attribute +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x3b4b053a iio_buffer_set_attrs +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x443812aa iio_enum_write +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x4dce7dd4 iio_format_value +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x51ae74b7 iio_map_array_unregister +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x54a27b30 iio_buffer_get +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x55ceab2d iio_map_array_register +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x56e31787 iio_device_attach_buffer +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x6114da74 iio_buffer_put +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x6ab31f45 iio_convert_raw_to_processed +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x7284bfbd iio_channel_release +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x7902f94f iio_read_channel_attribute +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x7d85fbfc iio_channel_get_all +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x8752bda9 iio_show_mount_matrix +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x88c1ff90 iio_get_channel_ext_info_count +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0xabe2298f iio_read_channel_offset +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0xbdd6e6d5 iio_read_channel_raw +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0xbfa9d664 iio_read_max_channel_raw +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0xbfb37c05 iio_validate_scan_mask_onehot +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0xcb5abf96 iio_device_claim_direct_mode +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0xccfd1722 iio_write_channel_ext_info +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0xd3cc3bad iio_read_avail_channel_raw +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0xda1dbc07 iio_update_buffers +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0xdf59099d iio_device_release_direct_mode +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0xeacbdc49 iio_channel_release_all +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0xef235081 iio_read_channel_ext_info +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0xf1fccfae iio_channel_get +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0xf5a1404f iio_dealloc_pollfunc +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0xf9c69e0f iio_read_channel_average_raw +EXPORT_SYMBOL_GPL drivers/iio/magnetometer/rm3100-core 0x0a1424e0 rm3100_volatile_table +EXPORT_SYMBOL_GPL drivers/iio/magnetometer/rm3100-core 0xaa911f08 rm3100_readable_table +EXPORT_SYMBOL_GPL drivers/iio/magnetometer/rm3100-core 0xcc7209be rm3100_writable_table +EXPORT_SYMBOL_GPL drivers/iio/magnetometer/rm3100-core 0xd826a9a5 rm3100_common_probe +EXPORT_SYMBOL_GPL drivers/iio/pressure/mpl115 0x3d8673c9 mpl115_probe +EXPORT_SYMBOL_GPL drivers/iio/pressure/zpa2326 0x28f8f400 zpa2326_pm_ops +EXPORT_SYMBOL_GPL drivers/iio/pressure/zpa2326 0x34c0eb18 zpa2326_probe +EXPORT_SYMBOL_GPL drivers/iio/pressure/zpa2326 0xb5e06790 zpa2326_isreg_readable +EXPORT_SYMBOL_GPL drivers/iio/pressure/zpa2326 0xc3a1e91d zpa2326_isreg_writeable +EXPORT_SYMBOL_GPL drivers/iio/pressure/zpa2326 0xf81574f8 zpa2326_isreg_precious +EXPORT_SYMBOL_GPL drivers/iio/pressure/zpa2326 0xfce2c2ee zpa2326_remove +EXPORT_SYMBOL_GPL drivers/infiniband/core/ib_core 0xdbd019c4 ib_wq +EXPORT_SYMBOL_GPL drivers/infiniband/ulp/rtrs/rtrs-core 0x347c9f4d rtrs_post_recv_empty +EXPORT_SYMBOL_GPL drivers/infiniband/ulp/rtrs/rtrs-core 0x427aa24d rtrs_cq_qp_destroy +EXPORT_SYMBOL_GPL drivers/infiniband/ulp/rtrs/rtrs-core 0x50108933 rtrs_iu_post_rdma_write_imm +EXPORT_SYMBOL_GPL drivers/infiniband/ulp/rtrs/rtrs-core 0x70090bb8 rtrs_iu_post_send +EXPORT_SYMBOL_GPL drivers/infiniband/ulp/rtrs/rtrs-core 0x7d02566e rtrs_iu_post_recv +EXPORT_SYMBOL_GPL drivers/infiniband/ulp/rtrs/rtrs-core 0x841942b0 rtrs_send_hb_ack +EXPORT_SYMBOL_GPL drivers/infiniband/ulp/rtrs/rtrs-core 0xb351f68b rtrs_post_rdma_write_imm_empty +EXPORT_SYMBOL_GPL drivers/infiniband/ulp/rtrs/rtrs-core 0xc3656889 rtrs_iu_alloc +EXPORT_SYMBOL_GPL drivers/infiniband/ulp/rtrs/rtrs-core 0xcd548094 rtrs_start_hb +EXPORT_SYMBOL_GPL drivers/infiniband/ulp/rtrs/rtrs-core 0xd7d794c0 rtrs_cq_qp_create +EXPORT_SYMBOL_GPL drivers/infiniband/ulp/rtrs/rtrs-core 0xe4963613 rtrs_stop_hb +EXPORT_SYMBOL_GPL drivers/infiniband/ulp/rtrs/rtrs-core 0xf7b560e7 rtrs_iu_free +EXPORT_SYMBOL_GPL drivers/infiniband/ulp/rtrs/rtrs-core 0xf8c1a153 rtrs_init_hb +EXPORT_SYMBOL_GPL drivers/input/ff-memless 0x3f2c5037 input_ff_create_memless +EXPORT_SYMBOL_GPL drivers/input/matrix-keymap 0xce641c5c matrix_keypad_parse_properties +EXPORT_SYMBOL_GPL drivers/input/misc/adxl34x 0x28694b80 adxl34x_probe +EXPORT_SYMBOL_GPL drivers/input/misc/adxl34x 0x49a4fcbd adxl34x_remove +EXPORT_SYMBOL_GPL drivers/input/misc/adxl34x 0x66535a18 adxl34x_suspend +EXPORT_SYMBOL_GPL drivers/input/misc/adxl34x 0xe4586827 adxl34x_resume +EXPORT_SYMBOL_GPL drivers/input/rmi4/rmi_core 0x096f2d46 rmi_2d_sensor_rel_report +EXPORT_SYMBOL_GPL drivers/input/rmi4/rmi_core 0x1185c4ef rmi_of_property_read_u32 +EXPORT_SYMBOL_GPL drivers/input/rmi4/rmi_core 0x53679659 rmi_2d_sensor_abs_process +EXPORT_SYMBOL_GPL drivers/input/rmi4/rmi_core 0x689083b0 rmi_unregister_function_handler +EXPORT_SYMBOL_GPL drivers/input/rmi4/rmi_core 0x6d0397e5 rmi_2d_sensor_of_probe +EXPORT_SYMBOL_GPL drivers/input/rmi4/rmi_core 0x9c55798d rmi_driver_resume +EXPORT_SYMBOL_GPL drivers/input/rmi4/rmi_core 0x9e49f832 rmi_dbg +EXPORT_SYMBOL_GPL drivers/input/rmi4/rmi_core 0xa5a2245f __rmi_register_function_handler +EXPORT_SYMBOL_GPL drivers/input/rmi4/rmi_core 0xa765ffa1 rmi_set_attn_data +EXPORT_SYMBOL_GPL drivers/input/rmi4/rmi_core 0xbbdfa9d8 rmi_register_transport_device +EXPORT_SYMBOL_GPL drivers/input/rmi4/rmi_core 0xbdb02bd5 rmi_driver_suspend +EXPORT_SYMBOL_GPL drivers/input/rmi4/rmi_core 0xce720341 rmi_2d_sensor_configure_input +EXPORT_SYMBOL_GPL drivers/input/rmi4/rmi_core 0xe7d83a6f rmi_2d_sensor_abs_report +EXPORT_SYMBOL_GPL drivers/input/touchscreen/cyttsp4_core 0x4f83aa7c cyttsp4_pm_ops +EXPORT_SYMBOL_GPL drivers/input/touchscreen/cyttsp4_core 0x6d25aa98 cyttsp4_probe +EXPORT_SYMBOL_GPL drivers/input/touchscreen/cyttsp4_core 0xe5cdc1f3 cyttsp4_remove +EXPORT_SYMBOL_GPL drivers/input/touchscreen/cyttsp_core 0x02a71cd9 cyttsp_probe +EXPORT_SYMBOL_GPL drivers/input/touchscreen/cyttsp_core 0xbdf11eff cyttsp_pm_ops +EXPORT_SYMBOL_GPL drivers/input/touchscreen/cyttsp_i2c_common 0x8f4f5780 cyttsp_i2c_read_block_data +EXPORT_SYMBOL_GPL drivers/input/touchscreen/cyttsp_i2c_common 0xf77e4627 cyttsp_i2c_write_block_data +EXPORT_SYMBOL_GPL drivers/input/touchscreen/tsc200x-core 0x01dd5987 tsc200x_pm_ops +EXPORT_SYMBOL_GPL drivers/input/touchscreen/tsc200x-core 0x12c4828a tsc200x_probe +EXPORT_SYMBOL_GPL drivers/input/touchscreen/tsc200x-core 0x6baccff9 tsc200x_remove +EXPORT_SYMBOL_GPL drivers/input/touchscreen/tsc200x-core 0xd83b55be tsc200x_regmap_config +EXPORT_SYMBOL_GPL drivers/input/touchscreen/wm97xx-ts 0x026438d9 wm97xx_config_gpio +EXPORT_SYMBOL_GPL drivers/input/touchscreen/wm97xx-ts 0x0b978de5 wm97xx_read_aux_adc +EXPORT_SYMBOL_GPL drivers/input/touchscreen/wm97xx-ts 0x20c8909a wm97xx_get_gpio +EXPORT_SYMBOL_GPL drivers/input/touchscreen/wm97xx-ts 0x4fb9e5b1 wm9713_codec +EXPORT_SYMBOL_GPL drivers/input/touchscreen/wm97xx-ts 0x8313e52f wm9712_codec +EXPORT_SYMBOL_GPL drivers/input/touchscreen/wm97xx-ts 0x99e94b5d wm97xx_set_gpio +EXPORT_SYMBOL_GPL drivers/input/touchscreen/wm97xx-ts 0x9eadf875 wm9705_codec +EXPORT_SYMBOL_GPL drivers/input/touchscreen/wm97xx-ts 0xadcaa5d7 wm97xx_reg_read +EXPORT_SYMBOL_GPL drivers/input/touchscreen/wm97xx-ts 0xb5d0db22 wm97xx_register_mach_ops +EXPORT_SYMBOL_GPL drivers/input/touchscreen/wm97xx-ts 0xf703a3c5 wm97xx_set_suspend_mode +EXPORT_SYMBOL_GPL drivers/input/touchscreen/wm97xx-ts 0xf7dcadcc wm97xx_unregister_mach_ops +EXPORT_SYMBOL_GPL drivers/input/touchscreen/wm97xx-ts 0xf8d4a498 wm97xx_reg_write +EXPORT_SYMBOL_GPL drivers/ipack/ipack 0x04cf004f ipack_device_del +EXPORT_SYMBOL_GPL drivers/ipack/ipack 0x0b888a0c ipack_bus_unregister +EXPORT_SYMBOL_GPL drivers/ipack/ipack 0x0e73855c ipack_driver_unregister +EXPORT_SYMBOL_GPL drivers/ipack/ipack 0x2cd05930 ipack_device_add +EXPORT_SYMBOL_GPL drivers/ipack/ipack 0x344999da ipack_driver_register +EXPORT_SYMBOL_GPL drivers/ipack/ipack 0x5807da38 ipack_put_device +EXPORT_SYMBOL_GPL drivers/ipack/ipack 0x6adab2f6 ipack_device_init +EXPORT_SYMBOL_GPL drivers/ipack/ipack 0xc710ae0a ipack_bus_register +EXPORT_SYMBOL_GPL drivers/ipack/ipack 0xe4570091 ipack_get_device +EXPORT_SYMBOL_GPL drivers/leds/led-class-flash 0x116f8c18 led_set_flash_timeout +EXPORT_SYMBOL_GPL drivers/leds/led-class-flash 0x2471f1c5 led_classdev_flash_register_ext +EXPORT_SYMBOL_GPL drivers/leds/led-class-flash 0x2ffd1d7b led_set_flash_brightness +EXPORT_SYMBOL_GPL drivers/leds/led-class-flash 0x6c6cac6c led_get_flash_fault +EXPORT_SYMBOL_GPL drivers/leds/led-class-flash 0x7d00e778 led_classdev_flash_unregister +EXPORT_SYMBOL_GPL drivers/leds/led-class-flash 0x7f470451 devm_led_classdev_flash_register_ext +EXPORT_SYMBOL_GPL drivers/leds/led-class-flash 0xd8b83dc1 devm_led_classdev_flash_unregister +EXPORT_SYMBOL_GPL drivers/leds/led-class-flash 0xdd85b3af led_update_flash_brightness +EXPORT_SYMBOL_GPL drivers/leds/leds-lp55xx-common 0x22145dc4 lp55xx_update_bits +EXPORT_SYMBOL_GPL drivers/leds/leds-lp55xx-common 0x33c3ea32 lp55xx_unregister_leds +EXPORT_SYMBOL_GPL drivers/leds/leds-lp55xx-common 0x37c80250 lp55xx_of_populate_pdata +EXPORT_SYMBOL_GPL drivers/leds/leds-lp55xx-common 0x3ecdf865 lp55xx_register_sysfs +EXPORT_SYMBOL_GPL drivers/leds/leds-lp55xx-common 0x45265bbf lp55xx_unregister_sysfs +EXPORT_SYMBOL_GPL drivers/leds/leds-lp55xx-common 0x64d71009 lp55xx_write +EXPORT_SYMBOL_GPL drivers/leds/leds-lp55xx-common 0x83246baa lp55xx_deinit_device +EXPORT_SYMBOL_GPL drivers/leds/leds-lp55xx-common 0x85fb17b2 lp55xx_init_device +EXPORT_SYMBOL_GPL drivers/leds/leds-lp55xx-common 0xce32430c lp55xx_register_leds +EXPORT_SYMBOL_GPL drivers/leds/leds-lp55xx-common 0xf8fc3bc0 lp55xx_read +EXPORT_SYMBOL_GPL drivers/leds/leds-lp55xx-common 0xfa8c3884 lp55xx_is_extclk_used +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 0x15b97715 __tracepoint_bcache_write +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0x19b88bec __tracepoint_bcache_writeback +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0x2307b422 __tracepoint_bcache_journal_full +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0x2b46c4b6 __tracepoint_bcache_btree_node_alloc_fail +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0x2b793afb __tracepoint_bcache_read +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0x2fbf8560 __tracepoint_bcache_btree_read +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0x33554606 __tracepoint_bcache_journal_entry_full +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0x414c7765 __tracepoint_bcache_btree_node_alloc +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0x5f6a4a3e __tracepoint_bcache_btree_node_free +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0x65fb81f0 __tracepoint_bcache_btree_node_compact +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0x6b1045c7 __tracepoint_bcache_btree_set_root +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0x7260fb66 __tracepoint_bcache_btree_write +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0x748968f6 __tracepoint_bcache_btree_insert_key +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0x7574c715 __tracepoint_bcache_gc_end +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0x7c8a33fe __tracepoint_bcache_read_retry +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0x96bf5dba __tracepoint_bcache_writeback_collision +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0xa353964f __tracepoint_bcache_request_end +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0xa4682eff __tracepoint_bcache_gc_start +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0xab4c5652 __tracepoint_bcache_btree_node_split +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0xb22f8879 __tracepoint_bcache_bypass_sequential +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0xbf53dc9d __tracepoint_bcache_btree_gc_coalesce +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0xc00185bc __tracepoint_bcache_gc_copy_collision +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0xc13b483f __tracepoint_bcache_invalidate +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0xc36e201d __tracepoint_bcache_gc_copy +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0xc8feefc9 __tracepoint_bcache_alloc_fail +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0xd8da0f0e __tracepoint_bcache_cache_insert +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0xd9f20dee __tracepoint_bcache_journal_replay_key +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0xe9c4d700 __tracepoint_bcache_bypass_congested +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0xee603d81 __tracepoint_bcache_journal_write +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0xf5d8bf62 __tracepoint_bcache_btree_cache_cannibalize +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0xf8502c64 __tracepoint_bcache_request_start +EXPORT_SYMBOL_GPL drivers/md/dm-bio-prison 0x060ce4f8 dm_cell_visit_release +EXPORT_SYMBOL_GPL drivers/md/dm-bio-prison 0x0e9e3c0c dm_cell_unlock_v2 +EXPORT_SYMBOL_GPL drivers/md/dm-bio-prison 0x17dd39d6 dm_deferred_set_create +EXPORT_SYMBOL_GPL drivers/md/dm-bio-prison 0x1ea21739 dm_bio_prison_alloc_cell +EXPORT_SYMBOL_GPL drivers/md/dm-bio-prison 0x2e95bc5d dm_cell_quiesce_v2 +EXPORT_SYMBOL_GPL drivers/md/dm-bio-prison 0x2eb01e04 dm_deferred_set_destroy +EXPORT_SYMBOL_GPL drivers/md/dm-bio-prison 0x3b6a8213 dm_bio_prison_free_cell_v2 +EXPORT_SYMBOL_GPL drivers/md/dm-bio-prison 0x60867063 dm_bio_prison_alloc_cell_v2 +EXPORT_SYMBOL_GPL drivers/md/dm-bio-prison 0x6263150a dm_get_cell +EXPORT_SYMBOL_GPL drivers/md/dm-bio-prison 0x661edc5d dm_bio_detain +EXPORT_SYMBOL_GPL drivers/md/dm-bio-prison 0x6791a44e dm_deferred_entry_dec +EXPORT_SYMBOL_GPL drivers/md/dm-bio-prison 0x753e20b2 dm_bio_prison_create +EXPORT_SYMBOL_GPL drivers/md/dm-bio-prison 0x843914f0 dm_cell_release_no_holder +EXPORT_SYMBOL_GPL drivers/md/dm-bio-prison 0x8bc2f9ec dm_cell_release +EXPORT_SYMBOL_GPL drivers/md/dm-bio-prison 0x9488e7f5 dm_cell_get_v2 +EXPORT_SYMBOL_GPL drivers/md/dm-bio-prison 0x9d930fe4 dm_cell_promote_or_release +EXPORT_SYMBOL_GPL drivers/md/dm-bio-prison 0xa00b987a dm_cell_lock_promote_v2 +EXPORT_SYMBOL_GPL drivers/md/dm-bio-prison 0xa3c949ee dm_cell_lock_v2 +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 0xd0f112bc dm_bio_prison_free_cell +EXPORT_SYMBOL_GPL drivers/md/dm-bio-prison 0xd7595d77 dm_cell_error +EXPORT_SYMBOL_GPL drivers/md/dm-bio-prison 0xd99e003d dm_bio_prison_create_v2 +EXPORT_SYMBOL_GPL drivers/md/dm-bio-prison 0xdfe9e50b dm_cell_put_v2 +EXPORT_SYMBOL_GPL drivers/md/dm-bufio 0x0ad0dc4f dm_bufio_mark_buffer_dirty +EXPORT_SYMBOL_GPL drivers/md/dm-bufio 0x111ab12a dm_bufio_mark_partial_buffer_dirty +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 0x6aebce95 dm_bufio_issue_discard +EXPORT_SYMBOL_GPL drivers/md/dm-bufio 0x6d3f57bd dm_bufio_get_client +EXPORT_SYMBOL_GPL drivers/md/dm-bufio 0x72f07bf4 dm_bufio_set_minimum_buffers +EXPORT_SYMBOL_GPL drivers/md/dm-bufio 0x74dcd98c dm_bufio_get_aux_data +EXPORT_SYMBOL_GPL drivers/md/dm-bufio 0x7c381a76 dm_bufio_get_block_size +EXPORT_SYMBOL_GPL drivers/md/dm-bufio 0x867e87eb dm_bufio_get_dm_io_client +EXPORT_SYMBOL_GPL drivers/md/dm-bufio 0x9556fee1 dm_bufio_client_create +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 0xb2438d54 dm_bufio_release_move +EXPORT_SYMBOL_GPL drivers/md/dm-bufio 0xc0d7df85 dm_bufio_new +EXPORT_SYMBOL_GPL drivers/md/dm-bufio 0xc90df7e5 dm_bufio_prefetch +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 0x33bd38a4 dm_cache_policy_register +EXPORT_SYMBOL_GPL drivers/md/dm-cache 0x5adc2807 btracker_destroy +EXPORT_SYMBOL_GPL drivers/md/dm-cache 0x5de611a9 btracker_nr_writebacks_queued +EXPORT_SYMBOL_GPL drivers/md/dm-cache 0x7890d535 dm_cache_policy_get_name +EXPORT_SYMBOL_GPL drivers/md/dm-cache 0x87bee547 btracker_queue +EXPORT_SYMBOL_GPL drivers/md/dm-cache 0x890723f7 dm_cache_policy_get_version +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 0xadbefda4 dm_cache_policy_destroy +EXPORT_SYMBOL_GPL drivers/md/dm-cache 0xbf1a2968 btracker_create +EXPORT_SYMBOL_GPL drivers/md/dm-cache 0xccfe6409 btracker_nr_demotions_queued +EXPORT_SYMBOL_GPL drivers/md/dm-cache 0xcf8c2590 dm_cache_policy_get_hint_size +EXPORT_SYMBOL_GPL drivers/md/dm-cache 0xe1bdae47 dm_cache_policy_create +EXPORT_SYMBOL_GPL drivers/md/dm-cache 0xfff764ae dm_cache_policy_unregister +EXPORT_SYMBOL_GPL drivers/md/dm-multipath 0x9be7bc0d dm_unregister_path_selector +EXPORT_SYMBOL_GPL drivers/md/dm-multipath 0xedda118f 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 0x17ba5c88 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 0x3b32d1a0 dm_rh_dirty_log +EXPORT_SYMBOL_GPL drivers/md/dm-region-hash 0x57e16c3e dm_rh_get_state +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 0x8604ef35 dm_region_hash_create +EXPORT_SYMBOL_GPL drivers/md/dm-region-hash 0x92a34cd3 dm_rh_mark_nosync +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 0xc8bb928b dm_rh_bio_to_region +EXPORT_SYMBOL_GPL drivers/md/dm-region-hash 0xd08c863f dm_rh_inc_pending +EXPORT_SYMBOL_GPL drivers/md/dm-region-hash 0xd8aa4284 dm_rh_region_context +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 0x09cc81fa dm_btree_cursor_skip +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x0a7e77f3 dm_btree_cursor_end +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x0b25f6bc dm_array_resize +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x0b36102c dm_array_empty +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x0be67537 dm_btree_walk +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x0e198232 dm_btree_insert +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x10e6ccea dm_bitset_clear_bit +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x16af9071 dm_array_set_value +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x1e3f728d dm_block_data +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x23ebd5fb dm_bitset_set_bit +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x2417c5c4 dm_btree_empty +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x24621ca3 dm_sm_disk_open +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x2adee13f dm_btree_cursor_next +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 0x34d45c77 dm_btree_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 0x36a34e58 dm_array_cursor_get_value +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x36b84cda dm_array_del +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x3a797d19 dm_btree_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 0x432b8178 dm_array_cursor_begin +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x4557b425 dm_bitset_test_bit +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x48d1c7dc dm_btree_find_lowest_key +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x48e323be dm_bm_unlock +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x49081644 dm_btree_remove +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x4a4cb558 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 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 0x5cf0d0bb dm_tm_create_with_sm +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x63b0c22d dm_bitset_flush +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x688d422d dm_bm_block_size +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x6af8a872 dm_array_info_init +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x6bb4bf8f dm_array_cursor_next +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x6e1e3821 dm_array_walk +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x6f2fe3c4 dm_btree_remove_leaves +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 0x7485935a dm_btree_lookup +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x7551b46e dm_tm_open_with_sm +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x764567c8 dm_btree_find_highest_key +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 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 0x885b0024 dm_array_new +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x89783bda dm_array_cursor_end +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 0x95a52abd dm_bm_is_read_only +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x97263968 dm_bitset_resize +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x98db2687 dm_bitset_cursor_end +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 0x9e98460e dm_bitset_empty +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0xa2ea5542 dm_bitset_del +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0xa3cc1157 dm_btree_cursor_begin +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0xa51fbedc dm_bitset_new +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0xaab0ef04 dm_bitset_cursor_skip +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0xb6949944 dm_array_get_value +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0xbb461fb7 dm_bitset_cursor_begin +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0xbbb5df05 dm_array_cursor_skip +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0xc248bde2 dm_disk_bitset_init +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0xcedfc878 dm_bitset_cursor_get_value +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0xd163cade dm_tm_commit +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0xd51c29f1 dm_sm_disk_create +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0xd6711a58 dm_bitset_cursor_next +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0xe781f874 dm_tm_dec +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0xefece2ac dm_block_manager_create +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0xf398644f dm_btree_lookup_next +EXPORT_SYMBOL_GPL drivers/media/cec/core/cec 0x00ee7621 cec_s_log_addrs +EXPORT_SYMBOL_GPL drivers/media/cec/core/cec 0x024c91fe cec_fill_conn_info_from_drm +EXPORT_SYMBOL_GPL drivers/media/cec/core/cec 0x039e9a48 cec_transmit_done_ts +EXPORT_SYMBOL_GPL drivers/media/cec/core/cec 0x050b2eea cec_notifier_parse_hdmi_phandle +EXPORT_SYMBOL_GPL drivers/media/cec/core/cec 0x06babff4 cec_register_adapter +EXPORT_SYMBOL_GPL drivers/media/cec/core/cec 0x07c9c5f9 cec_transmit_msg +EXPORT_SYMBOL_GPL drivers/media/cec/core/cec 0x13ff0cfa cec_queue_pin_5v_event +EXPORT_SYMBOL_GPL drivers/media/cec/core/cec 0x31393388 cec_delete_adapter +EXPORT_SYMBOL_GPL drivers/media/cec/core/cec 0x3ad097ed cec_notifier_cec_adap_unregister +EXPORT_SYMBOL_GPL drivers/media/cec/core/cec 0x456c4af4 cec_s_phys_addr +EXPORT_SYMBOL_GPL drivers/media/cec/core/cec 0x5aa93d37 cec_notifier_conn_register +EXPORT_SYMBOL_GPL drivers/media/cec/core/cec 0x67d03ad6 cec_unregister_adapter +EXPORT_SYMBOL_GPL drivers/media/cec/core/cec 0x8af5fe08 cec_pin_allocate_adapter +EXPORT_SYMBOL_GPL drivers/media/cec/core/cec 0x916837df cec_transmit_attempt_done_ts +EXPORT_SYMBOL_GPL drivers/media/cec/core/cec 0xa01fbb6b cec_notifier_set_phys_addr +EXPORT_SYMBOL_GPL drivers/media/cec/core/cec 0xa423fe05 cec_queue_pin_cec_event +EXPORT_SYMBOL_GPL drivers/media/cec/core/cec 0xa97f8712 cec_notifier_cec_adap_register +EXPORT_SYMBOL_GPL drivers/media/cec/core/cec 0xaee236c6 cec_notifier_conn_unregister +EXPORT_SYMBOL_GPL drivers/media/cec/core/cec 0xb57205c8 cec_pin_changed +EXPORT_SYMBOL_GPL drivers/media/cec/core/cec 0xbe4de675 cec_get_edid_phys_addr +EXPORT_SYMBOL_GPL drivers/media/cec/core/cec 0xc1b45470 cec_queue_pin_hpd_event +EXPORT_SYMBOL_GPL drivers/media/cec/core/cec 0xc5b0517a cec_received_msg_ts +EXPORT_SYMBOL_GPL drivers/media/cec/core/cec 0xc9a22127 cec_allocate_adapter +EXPORT_SYMBOL_GPL drivers/media/cec/core/cec 0xccb3d193 cec_s_conn_info +EXPORT_SYMBOL_GPL drivers/media/cec/core/cec 0xf8c99364 cec_notifier_set_phys_addr_from_edid +EXPORT_SYMBOL_GPL drivers/media/cec/core/cec 0xfe8e0c0e cec_s_phys_addr_from_edid +EXPORT_SYMBOL_GPL drivers/media/common/b2c2/b2c2-flexcop 0x66c0289a b2c2_flexcop_debug +EXPORT_SYMBOL_GPL drivers/media/common/saa7146/saa7146 0x18acc19f saa7146_pgtable_alloc +EXPORT_SYMBOL_GPL drivers/media/common/saa7146/saa7146 0x1ab0b18f saa7146_pgtable_free +EXPORT_SYMBOL_GPL drivers/media/common/saa7146/saa7146 0x1f11edff saa7146_vfree_destroy_pgtable +EXPORT_SYMBOL_GPL drivers/media/common/saa7146/saa7146 0x4277c026 saa7146_unregister_extension +EXPORT_SYMBOL_GPL drivers/media/common/saa7146/saa7146 0x60971c26 saa7146_register_extension +EXPORT_SYMBOL_GPL drivers/media/common/saa7146/saa7146 0x611613e0 saa7146_setgpio +EXPORT_SYMBOL_GPL drivers/media/common/saa7146/saa7146 0x998b6819 saa7146_i2c_adapter_prepare +EXPORT_SYMBOL_GPL drivers/media/common/saa7146/saa7146 0x99d9e7e0 saa7146_wait_for_debi_done +EXPORT_SYMBOL_GPL drivers/media/common/saa7146/saa7146 0xaf688543 saa7146_vmalloc_build_pgtable +EXPORT_SYMBOL_GPL drivers/media/common/saa7146/saa7146 0xc0874c40 saa7146_pgtable_build_single +EXPORT_SYMBOL_GPL drivers/media/common/saa7146/saa7146 0xe3cd9b5c saa7146_debug +EXPORT_SYMBOL_GPL drivers/media/common/saa7146/saa7146_vv 0x15c36f6a saa7146_unregister_device +EXPORT_SYMBOL_GPL drivers/media/common/saa7146/saa7146_vv 0x2aa81233 saa7146_start_preview +EXPORT_SYMBOL_GPL drivers/media/common/saa7146/saa7146_vv 0xa07fabbf saa7146_set_hps_source_and_sync +EXPORT_SYMBOL_GPL drivers/media/common/saa7146/saa7146_vv 0xb2016723 saa7146_register_device +EXPORT_SYMBOL_GPL drivers/media/common/saa7146/saa7146_vv 0xc570d9d2 saa7146_stop_preview +EXPORT_SYMBOL_GPL drivers/media/common/saa7146/saa7146_vv 0xdba294bb saa7146_vv_release +EXPORT_SYMBOL_GPL drivers/media/common/saa7146/saa7146_vv 0xdf339a1c saa7146_vv_init +EXPORT_SYMBOL_GPL drivers/media/common/siano/smsmdtv 0x083d32bd smscore_unregister_hotplug +EXPORT_SYMBOL_GPL drivers/media/common/siano/smsmdtv 0x123ddad6 sms_board_led_feedback +EXPORT_SYMBOL_GPL drivers/media/common/siano/smsmdtv 0x13ec7af9 sms_board_event +EXPORT_SYMBOL_GPL drivers/media/common/siano/smsmdtv 0x15e72603 smscore_register_device +EXPORT_SYMBOL_GPL drivers/media/common/siano/smsmdtv 0x1afcc752 sms_board_lna_control +EXPORT_SYMBOL_GPL drivers/media/common/siano/smsmdtv 0x21e36bf2 smscore_registry_getmode +EXPORT_SYMBOL_GPL drivers/media/common/siano/smsmdtv 0x29675163 smscore_set_board_id +EXPORT_SYMBOL_GPL drivers/media/common/siano/smsmdtv 0x34bf0e61 smscore_translate_msg +EXPORT_SYMBOL_GPL drivers/media/common/siano/smsmdtv 0x359ccee0 smscore_get_device_mode +EXPORT_SYMBOL_GPL drivers/media/common/siano/smsmdtv 0x37d91069 smsendian_handle_tx_message +EXPORT_SYMBOL_GPL drivers/media/common/siano/smsmdtv 0x39724d6b smscore_register_client +EXPORT_SYMBOL_GPL drivers/media/common/siano/smsmdtv 0x45284ae9 smsendian_handle_rx_message +EXPORT_SYMBOL_GPL drivers/media/common/siano/smsmdtv 0x656f701c smscore_onresponse +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 0x8740ca50 smscore_getbuffer +EXPORT_SYMBOL_GPL drivers/media/common/siano/smsmdtv 0x92eb5929 smscore_register_hotplug +EXPORT_SYMBOL_GPL drivers/media/common/siano/smsmdtv 0x9628f08e smscore_start_device +EXPORT_SYMBOL_GPL drivers/media/common/siano/smsmdtv 0x99a81ab3 smsclient_sendrequest +EXPORT_SYMBOL_GPL drivers/media/common/siano/smsmdtv 0xb3ff8284 smscore_get_board_id +EXPORT_SYMBOL_GPL drivers/media/common/siano/smsmdtv 0xbbdb5c42 smscore_unregister_client +EXPORT_SYMBOL_GPL drivers/media/common/siano/smsmdtv 0xbeec0c07 sms_board_power +EXPORT_SYMBOL_GPL drivers/media/common/siano/smsmdtv 0xc975a50b sms_board_setup +EXPORT_SYMBOL_GPL drivers/media/common/siano/smsmdtv 0xd0dfacba smscore_unregister_device +EXPORT_SYMBOL_GPL drivers/media/common/siano/smsmdtv 0xe7f472c3 smscore_putbuffer +EXPORT_SYMBOL_GPL drivers/media/common/v4l2-tpg/v4l2-tpg 0x03005a48 tpg_alloc +EXPORT_SYMBOL_GPL drivers/media/common/v4l2-tpg/v4l2-tpg 0x040dc7cd tpg_aspect_strings +EXPORT_SYMBOL_GPL drivers/media/common/v4l2-tpg/v4l2-tpg 0x4d1d285c tpg_init +EXPORT_SYMBOL_GPL drivers/media/common/v4l2-tpg/v4l2-tpg 0x517e7ccd tpg_fill_plane_buffer +EXPORT_SYMBOL_GPL drivers/media/common/v4l2-tpg/v4l2-tpg 0x579c6308 tpg_gen_text +EXPORT_SYMBOL_GPL drivers/media/common/v4l2-tpg/v4l2-tpg 0x6026aaf0 tpg_log_status +EXPORT_SYMBOL_GPL drivers/media/common/v4l2-tpg/v4l2-tpg 0x6960e899 tpg_s_crop_compose +EXPORT_SYMBOL_GPL drivers/media/common/v4l2-tpg/v4l2-tpg 0x756516e7 tpg_s_fourcc +EXPORT_SYMBOL_GPL drivers/media/common/v4l2-tpg/v4l2-tpg 0x7a5d8c0b tpg_update_mv_step +EXPORT_SYMBOL_GPL drivers/media/common/v4l2-tpg/v4l2-tpg 0x86b4ddf7 tpg_reset_source +EXPORT_SYMBOL_GPL drivers/media/common/v4l2-tpg/v4l2-tpg 0x975a1e29 tpg_g_interleaved_plane +EXPORT_SYMBOL_GPL drivers/media/common/v4l2-tpg/v4l2-tpg 0xaa5503d9 tpg_set_font +EXPORT_SYMBOL_GPL drivers/media/common/v4l2-tpg/v4l2-tpg 0xc6110b6e tpg_free +EXPORT_SYMBOL_GPL drivers/media/common/v4l2-tpg/v4l2-tpg 0xc6808be7 tpg_calc_text_basep +EXPORT_SYMBOL_GPL drivers/media/common/v4l2-tpg/v4l2-tpg 0xce8159bb tpg_pattern_strings +EXPORT_SYMBOL_GPL drivers/media/common/v4l2-tpg/v4l2-tpg 0xf65c5e46 tpg_fillbuffer +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-common 0x0270233a vb2_mmap +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-common 0x095cfb47 vb2_core_create_bufs +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-common 0x15c42e67 vb2_write +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-common 0x31778653 vb2_wait_for_all_buffers +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-common 0x3f623848 __tracepoint_vb2_qbuf +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-common 0x3fcc6063 vb2_core_queue_release +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-common 0x42c2cbb6 vb2_plane_cookie +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-common 0x43bb5a78 vb2_thread_stop +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-common 0x63c32a18 vb2_plane_vaddr +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-common 0x6669b2fd vb2_read +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-common 0x672d1760 vb2_core_prepare_buf +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-common 0x7249398b vb2_core_queue_init +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-common 0x770b6bb5 vb2_core_streamon +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-common 0x83101a50 vb2_core_qbuf +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-common 0x8787e00d vb2_core_poll +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-common 0x8ddae992 __tracepoint_vb2_buf_done +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-common 0x90828029 __tracepoint_vb2_dqbuf +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-common 0x9bfd6f72 vb2_core_reqbufs +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-common 0xb04ac8d0 vb2_core_querybuf +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-common 0xbea56b4f vb2_request_buffer_cnt +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-common 0xc6b02d60 vb2_core_dqbuf +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-common 0xc88264fe __tracepoint_vb2_buf_queue +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-common 0xcc775770 vb2_queue_error +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-common 0xdc7356f4 vb2_buffer_done +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-common 0xde1312e5 vb2_request_object_is_buffer +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-common 0xe6a406d3 vb2_thread_start +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-common 0xe8606964 vb2_core_expbuf +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-common 0xfa33ec62 vb2_discard_done +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-common 0xff9424a5 vb2_core_streamoff +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-dma-contig 0x944c2ff3 vb2_dma_contig_set_max_seg_size +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-dma-contig 0xe88b7b23 vb2_dma_contig_memops +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-dma-sg 0xf76b4465 vb2_dma_sg_memops +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-memops 0x0e98b8b7 vb2_common_vm_ops +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-v4l2 0x07b9b5bf vb2_request_queue +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-v4l2 0x0dad12b6 vb2_streamoff +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-v4l2 0x24e68165 vb2_ioctl_streamon +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-v4l2 0x2c6cbd8a vb2_poll +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-v4l2 0x3441a26d vb2_fop_poll +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-v4l2 0x3519e050 vb2_prepare_buf +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-v4l2 0x36bd18b9 vb2_queue_release +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-v4l2 0x427411cc vb2_ioctl_reqbufs +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-v4l2 0x49bb1ec0 vb2_reqbufs +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-v4l2 0x4f9c9c30 vb2_dqbuf +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-v4l2 0x558ba311 vb2_ioctl_expbuf +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-v4l2 0x586f3bf9 vb2_ioctl_qbuf +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-v4l2 0x5accf7bd vb2_fop_mmap +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-v4l2 0x627a7d5e vb2_create_bufs +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-v4l2 0x771670d9 _vb2_fop_release +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-v4l2 0x8fbd1235 vb2_ioctl_streamoff +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-v4l2 0x909d77da vb2_ioctl_prepare_buf +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-v4l2 0x97a10d7c vb2_fop_read +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-v4l2 0xa03b86dc vb2_ops_wait_prepare +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-v4l2 0xa0aef2f6 vb2_ops_wait_finish +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-v4l2 0xa6dd2d9a vb2_ioctl_querybuf +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-v4l2 0xbabfdc07 vb2_request_validate +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-v4l2 0xcc6c4662 vb2_ioctl_dqbuf +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-v4l2 0xda0fd101 vb2_streamon +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-v4l2 0xe05078bf vb2_ioctl_create_bufs +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-v4l2 0xe19eed2f vb2_queue_init +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-v4l2 0xe27c49c3 vb2_expbuf +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-v4l2 0xe3625f98 vb2_fop_write +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-v4l2 0xf2d30bae vb2_qbuf +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-v4l2 0xf5ddf291 vb2_find_timestamp +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-v4l2 0xfcee6fd2 vb2_fop_release +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-vmalloc 0x44f284ae vb2_vmalloc_memops +EXPORT_SYMBOL_GPL drivers/media/dvb-core/dvb-core 0x88243192 dvb_create_media_graph +EXPORT_SYMBOL_GPL drivers/media/dvb-core/dvb-core 0xbfad0765 dvb_module_probe +EXPORT_SYMBOL_GPL drivers/media/dvb-core/dvb-core 0xc18396ba dvb_module_release +EXPORT_SYMBOL_GPL drivers/media/dvb-frontends/as102_fe 0x1174a3db as102_attach +EXPORT_SYMBOL_GPL drivers/media/dvb-frontends/cx24117 0x25a4fe9e cx24117_attach +EXPORT_SYMBOL_GPL drivers/media/dvb-frontends/gp8psk-fe 0xa8d94732 gp8psk_fe_attach +EXPORT_SYMBOL_GPL drivers/media/dvb-frontends/mxl5xx 0xca3a4359 mxl5xx_attach +EXPORT_SYMBOL_GPL drivers/media/dvb-frontends/stv0910 0x13caaa88 stv0910_attach +EXPORT_SYMBOL_GPL drivers/media/dvb-frontends/stv6111 0xaec67c30 stv6111_attach +EXPORT_SYMBOL_GPL drivers/media/dvb-frontends/tda18271c2dd 0x0de932e9 tda18271c2dd_attach +EXPORT_SYMBOL_GPL drivers/media/i2c/aptina-pll 0xae50c5f8 aptina_pll_calculate +EXPORT_SYMBOL_GPL drivers/media/i2c/smiapp-pll 0x16d8c3fb smiapp_pll_calculate +EXPORT_SYMBOL_GPL drivers/media/mc/mc 0x062d39b6 media_request_object_bind +EXPORT_SYMBOL_GPL drivers/media/mc/mc 0x079ae7d6 media_device_register_entity +EXPORT_SYMBOL_GPL drivers/media/mc/mc 0x0b6bcaa8 media_entity_setup_link +EXPORT_SYMBOL_GPL drivers/media/mc/mc 0x1001db25 __media_device_register +EXPORT_SYMBOL_GPL drivers/media/mc/mc 0x128931ad media_graph_walk_init +EXPORT_SYMBOL_GPL drivers/media/mc/mc 0x12916e15 media_pipeline_stop +EXPORT_SYMBOL_GPL drivers/media/mc/mc 0x17bccfcf __media_entity_setup_link +EXPORT_SYMBOL_GPL drivers/media/mc/mc 0x1dc94696 media_device_cleanup +EXPORT_SYMBOL_GPL drivers/media/mc/mc 0x206a704d media_graph_walk_cleanup +EXPORT_SYMBOL_GPL drivers/media/mc/mc 0x2c13a822 media_device_delete +EXPORT_SYMBOL_GPL drivers/media/mc/mc 0x2d17b412 __media_device_usb_init +EXPORT_SYMBOL_GPL drivers/media/mc/mc 0x2e6e5642 media_create_pad_link +EXPORT_SYMBOL_GPL drivers/media/mc/mc 0x30204091 media_device_register_entity_notify +EXPORT_SYMBOL_GPL drivers/media/mc/mc 0x38591a54 media_request_put +EXPORT_SYMBOL_GPL drivers/media/mc/mc 0x38bf09f9 media_entity_pads_init +EXPORT_SYMBOL_GPL drivers/media/mc/mc 0x3a57206a __media_remove_intf_link +EXPORT_SYMBOL_GPL drivers/media/mc/mc 0x413b1314 media_get_pad_index +EXPORT_SYMBOL_GPL drivers/media/mc/mc 0x420492b4 media_device_usb_allocate +EXPORT_SYMBOL_GPL drivers/media/mc/mc 0x54638877 media_entity_find_link +EXPORT_SYMBOL_GPL drivers/media/mc/mc 0x5545078c media_request_object_init +EXPORT_SYMBOL_GPL drivers/media/mc/mc 0x58486ae3 media_device_init +EXPORT_SYMBOL_GPL drivers/media/mc/mc 0x5c5141cd media_create_pad_links +EXPORT_SYMBOL_GPL drivers/media/mc/mc 0x5c7ee216 __media_remove_intf_links +EXPORT_SYMBOL_GPL drivers/media/mc/mc 0x604cdce1 __media_entity_remove_links +EXPORT_SYMBOL_GPL drivers/media/mc/mc 0x606326c4 media_device_unregister +EXPORT_SYMBOL_GPL drivers/media/mc/mc 0x65896201 media_device_unregister_entity_notify +EXPORT_SYMBOL_GPL drivers/media/mc/mc 0x6d9ac5ec media_devnode_remove +EXPORT_SYMBOL_GPL drivers/media/mc/mc 0x6f592c92 media_create_intf_link +EXPORT_SYMBOL_GPL drivers/media/mc/mc 0x7b375b3c media_entity_remove_links +EXPORT_SYMBOL_GPL drivers/media/mc/mc 0xa40737f8 media_remove_intf_links +EXPORT_SYMBOL_GPL drivers/media/mc/mc 0xb6b1035b media_devnode_create +EXPORT_SYMBOL_GPL drivers/media/mc/mc 0xb8af0042 media_pipeline_start +EXPORT_SYMBOL_GPL drivers/media/mc/mc 0xc0fc14ac media_graph_walk_start +EXPORT_SYMBOL_GPL drivers/media/mc/mc 0xc3315b5c media_remove_intf_link +EXPORT_SYMBOL_GPL drivers/media/mc/mc 0xc377bd5f media_request_object_unbind +EXPORT_SYMBOL_GPL drivers/media/mc/mc 0xcd353789 __media_pipeline_stop +EXPORT_SYMBOL_GPL drivers/media/mc/mc 0xdc581289 __media_entity_enum_init +EXPORT_SYMBOL_GPL drivers/media/mc/mc 0xe2204cb9 media_device_pci_init +EXPORT_SYMBOL_GPL drivers/media/mc/mc 0xe31a1297 media_device_unregister_entity +EXPORT_SYMBOL_GPL drivers/media/mc/mc 0xe3a466f8 media_graph_walk_next +EXPORT_SYMBOL_GPL drivers/media/mc/mc 0xe4103ba8 media_request_object_complete +EXPORT_SYMBOL_GPL drivers/media/mc/mc 0xe41face5 media_entity_remote_pad +EXPORT_SYMBOL_GPL drivers/media/mc/mc 0xe46e64bb media_request_object_put +EXPORT_SYMBOL_GPL drivers/media/mc/mc 0xe5ceecd6 media_entity_enum_cleanup +EXPORT_SYMBOL_GPL drivers/media/mc/mc 0xecebd6ae __media_pipeline_start +EXPORT_SYMBOL_GPL drivers/media/mc/mc 0xf3c43fca media_entity_get_fwnode_pad +EXPORT_SYMBOL_GPL drivers/media/mc/mc 0xf46987cf media_request_object_find +EXPORT_SYMBOL_GPL drivers/media/mc/mc 0xfb30da66 media_request_get_by_fd +EXPORT_SYMBOL_GPL drivers/media/pci/cx88/cx88xx 0x50558c5a cx88_setup_xc3028 +EXPORT_SYMBOL_GPL drivers/media/pci/mantis/mantis_core 0x00c5dc9e mantis_gpio_set_bits +EXPORT_SYMBOL_GPL drivers/media/pci/mantis/mantis_core 0x0cc1bbbf mantis_dma_exit +EXPORT_SYMBOL_GPL drivers/media/pci/mantis/mantis_core 0x0e7a9889 mantis_input_exit +EXPORT_SYMBOL_GPL drivers/media/pci/mantis/mantis_core 0x10fb7292 mantis_pci_init +EXPORT_SYMBOL_GPL drivers/media/pci/mantis/mantis_core 0x1b5da92a mantis_uart_init +EXPORT_SYMBOL_GPL drivers/media/pci/mantis/mantis_core 0x1de075f5 mantis_ca_exit +EXPORT_SYMBOL_GPL drivers/media/pci/mantis/mantis_core 0x1e41fe67 mantis_pci_exit +EXPORT_SYMBOL_GPL drivers/media/pci/mantis/mantis_core 0x2d7e0b7a mantis_uart_exit +EXPORT_SYMBOL_GPL drivers/media/pci/mantis/mantis_core 0x3fef3209 mantis_frontend_power +EXPORT_SYMBOL_GPL drivers/media/pci/mantis/mantis_core 0x41ddee08 mantis_get_mac +EXPORT_SYMBOL_GPL drivers/media/pci/mantis/mantis_core 0x4db3134b mantis_input_init +EXPORT_SYMBOL_GPL drivers/media/pci/mantis/mantis_core 0x58a48668 mantis_stream_control +EXPORT_SYMBOL_GPL drivers/media/pci/mantis/mantis_core 0x6d1b7dcb mantis_ca_init +EXPORT_SYMBOL_GPL drivers/media/pci/mantis/mantis_core 0x6e9aeead mantis_dvb_init +EXPORT_SYMBOL_GPL drivers/media/pci/mantis/mantis_core 0x6f5ad3d4 mantis_i2c_exit +EXPORT_SYMBOL_GPL drivers/media/pci/mantis/mantis_core 0xaff0d882 mantis_dma_init +EXPORT_SYMBOL_GPL drivers/media/pci/mantis/mantis_core 0xcc6bb0e9 mantis_i2c_init +EXPORT_SYMBOL_GPL drivers/media/pci/mantis/mantis_core 0xcdab8d90 mantis_dvb_exit +EXPORT_SYMBOL_GPL drivers/media/pci/mantis/mantis_core 0xff315b7f mantis_frontend_soft_reset +EXPORT_SYMBOL_GPL drivers/media/pci/saa7134/saa7134 0x13608141 saa7134_ts_start_streaming +EXPORT_SYMBOL_GPL drivers/media/pci/saa7134/saa7134 0x1c30b303 saa7134_ts_buffer_init +EXPORT_SYMBOL_GPL drivers/media/pci/saa7134/saa7134 0x22dfa2d5 saa7134_ts_queue_setup +EXPORT_SYMBOL_GPL drivers/media/pci/saa7134/saa7134 0x2c970ee3 saa7134_stop_streaming +EXPORT_SYMBOL_GPL drivers/media/pci/saa7134/saa7134 0x2f597694 saa7134_querycap +EXPORT_SYMBOL_GPL drivers/media/pci/saa7134/saa7134 0x3ac0d3be saa7134_querystd +EXPORT_SYMBOL_GPL drivers/media/pci/saa7134/saa7134 0x4fd9c0a6 saa7134_g_std +EXPORT_SYMBOL_GPL drivers/media/pci/saa7134/saa7134 0x514d499b saa7134_ts_buffer_prepare +EXPORT_SYMBOL_GPL drivers/media/pci/saa7134/saa7134 0x7911d0a5 saa7134_ts_qops +EXPORT_SYMBOL_GPL drivers/media/pci/saa7134/saa7134 0x8443bd84 saa7134_g_input +EXPORT_SYMBOL_GPL drivers/media/pci/saa7134/saa7134 0x8ed75f14 saa7134_g_tuner +EXPORT_SYMBOL_GPL drivers/media/pci/saa7134/saa7134 0x9df9dddd saa7134_ts_stop_streaming +EXPORT_SYMBOL_GPL drivers/media/pci/saa7134/saa7134 0x9f863cac saa7134_g_frequency +EXPORT_SYMBOL_GPL drivers/media/pci/saa7134/saa7134 0xac8961a4 saa7134_vb2_buffer_queue +EXPORT_SYMBOL_GPL drivers/media/pci/saa7134/saa7134 0xbbb04532 saa7134_s_tuner +EXPORT_SYMBOL_GPL drivers/media/pci/saa7134/saa7134 0xd720846c saa7134_s_input +EXPORT_SYMBOL_GPL drivers/media/pci/saa7134/saa7134 0xe189db01 saa7134_enum_input +EXPORT_SYMBOL_GPL drivers/media/pci/saa7134/saa7134 0xeebee7fc saa7134_s_frequency +EXPORT_SYMBOL_GPL drivers/media/pci/saa7134/saa7134 0xf5c62df3 saa7134_s_std +EXPORT_SYMBOL_GPL drivers/media/pci/ttpci/budget-core 0x1341da9a ttpci_budget_init +EXPORT_SYMBOL_GPL drivers/media/pci/ttpci/budget-core 0x16e1962a ttpci_budget_set_video_port +EXPORT_SYMBOL_GPL drivers/media/pci/ttpci/budget-core 0x3c8f2767 ttpci_budget_debiread +EXPORT_SYMBOL_GPL drivers/media/pci/ttpci/budget-core 0x3e279a7e ttpci_budget_irq10_handler +EXPORT_SYMBOL_GPL drivers/media/pci/ttpci/budget-core 0x7948c222 budget_debug +EXPORT_SYMBOL_GPL drivers/media/pci/ttpci/budget-core 0x8a0278cb ttpci_budget_debiwrite +EXPORT_SYMBOL_GPL drivers/media/pci/ttpci/budget-core 0x8b19519e ttpci_budget_deinit +EXPORT_SYMBOL_GPL drivers/media/pci/ttpci/budget-core 0xb7ac49e6 ttpci_budget_init_hooks +EXPORT_SYMBOL_GPL drivers/media/platform/marvell-ccic/mcam-core 0x22eb1a28 mccic_resume +EXPORT_SYMBOL_GPL drivers/media/platform/marvell-ccic/mcam-core 0x456320e9 mccic_register +EXPORT_SYMBOL_GPL drivers/media/platform/marvell-ccic/mcam-core 0x4c2b98e3 mccic_suspend +EXPORT_SYMBOL_GPL drivers/media/platform/marvell-ccic/mcam-core 0x73ea9252 mccic_irq +EXPORT_SYMBOL_GPL drivers/media/platform/marvell-ccic/mcam-core 0xf1136cd4 mccic_shutdown +EXPORT_SYMBOL_GPL drivers/media/radio/shark2 0x313badf8 radio_tea5777_exit +EXPORT_SYMBOL_GPL drivers/media/radio/shark2 0x33e3f0ab radio_tea5777_init +EXPORT_SYMBOL_GPL drivers/media/radio/si470x/radio-si470x-common 0x6ded9fdf si470x_set_freq +EXPORT_SYMBOL_GPL drivers/media/radio/si470x/radio-si470x-common 0x6e35baef si470x_start +EXPORT_SYMBOL_GPL drivers/media/radio/si470x/radio-si470x-common 0x8898ac46 si470x_ctrl_ops +EXPORT_SYMBOL_GPL drivers/media/radio/si470x/radio-si470x-common 0x97dd9ea8 si470x_stop +EXPORT_SYMBOL_GPL drivers/media/radio/si470x/radio-si470x-common 0xd56289d0 si470x_viddev_template +EXPORT_SYMBOL_GPL drivers/media/rc/rc-core 0x015f9754 ir_raw_event_store +EXPORT_SYMBOL_GPL drivers/media/rc/rc-core 0x087ba771 rc_map_get +EXPORT_SYMBOL_GPL drivers/media/rc/rc-core 0x0d126840 rc_keyup +EXPORT_SYMBOL_GPL drivers/media/rc/rc-core 0x0e5b3cb6 ir_lirc_scancode_event +EXPORT_SYMBOL_GPL drivers/media/rc/rc-core 0x16da41fd rc_keydown +EXPORT_SYMBOL_GPL drivers/media/rc/rc-core 0x1ac62c77 rc_map_unregister +EXPORT_SYMBOL_GPL drivers/media/rc/rc-core 0x1e128531 ir_raw_event_set_idle +EXPORT_SYMBOL_GPL drivers/media/rc/rc-core 0x24a528aa devm_rc_allocate_device +EXPORT_SYMBOL_GPL drivers/media/rc/rc-core 0x326566c3 ir_raw_event_store_with_filter +EXPORT_SYMBOL_GPL drivers/media/rc/rc-core 0x34732318 ir_raw_event_store_edge +EXPORT_SYMBOL_GPL drivers/media/rc/rc-core 0x5c18600f rc_register_device +EXPORT_SYMBOL_GPL drivers/media/rc/rc-core 0x6b6fa555 rc_g_keycode_from_table +EXPORT_SYMBOL_GPL drivers/media/rc/rc-core 0x6bc3e81f rc_keydown_notimeout +EXPORT_SYMBOL_GPL drivers/media/rc/rc-core 0x7bc8ac67 rc_map_register +EXPORT_SYMBOL_GPL drivers/media/rc/rc-core 0x84d3c46d ir_raw_event_store_with_timeout +EXPORT_SYMBOL_GPL drivers/media/rc/rc-core 0xb01e164b rc_unregister_device +EXPORT_SYMBOL_GPL drivers/media/rc/rc-core 0xb7798eaa ir_raw_event_handle +EXPORT_SYMBOL_GPL drivers/media/rc/rc-core 0xbdce9876 rc_allocate_device +EXPORT_SYMBOL_GPL drivers/media/rc/rc-core 0xc1090ade rc_repeat +EXPORT_SYMBOL_GPL drivers/media/rc/rc-core 0xdc0d01a8 devm_rc_register_device +EXPORT_SYMBOL_GPL drivers/media/rc/rc-core 0xe4baecf6 rc_free_device +EXPORT_SYMBOL_GPL drivers/media/tuners/mt2063 0xa2e54ace mt2063_attach +EXPORT_SYMBOL_GPL drivers/media/tuners/mt20xx 0x8a2a1dbb microtune_attach +EXPORT_SYMBOL_GPL drivers/media/tuners/mxl5007t 0x53a8f3c9 mxl5007t_attach +EXPORT_SYMBOL_GPL drivers/media/tuners/r820t 0x46b2640d r820t_attach +EXPORT_SYMBOL_GPL drivers/media/tuners/tda18271 0xa0679e2e tda18271_attach +EXPORT_SYMBOL_GPL drivers/media/tuners/tda827x 0x37a74c2f tda827x_attach +EXPORT_SYMBOL_GPL drivers/media/tuners/tda8290 0x06290024 tda829x_attach +EXPORT_SYMBOL_GPL drivers/media/tuners/tda8290 0x58d160b9 tda829x_probe +EXPORT_SYMBOL_GPL drivers/media/tuners/tda9887 0xf8a03dd6 tda9887_attach +EXPORT_SYMBOL_GPL drivers/media/tuners/tea5761 0x171c5db0 tea5761_autodetection +EXPORT_SYMBOL_GPL drivers/media/tuners/tea5761 0x5d469f33 tea5761_attach +EXPORT_SYMBOL_GPL drivers/media/tuners/tea5767 0x463fadcf tea5767_attach +EXPORT_SYMBOL_GPL drivers/media/tuners/tea5767 0xabaf7e57 tea5767_autodetection +EXPORT_SYMBOL_GPL drivers/media/tuners/tuner-simple 0x50095670 simple_tuner_attach +EXPORT_SYMBOL_GPL drivers/media/usb/cx231xx/cx231xx 0x017ea7c7 cx231xx_tuner_callback +EXPORT_SYMBOL_GPL drivers/media/usb/cx231xx/cx231xx 0x0854fbb7 cx231xx_demod_reset +EXPORT_SYMBOL_GPL drivers/media/usb/cx231xx/cx231xx 0x11c6f2a3 cx231xx_unmute_audio +EXPORT_SYMBOL_GPL drivers/media/usb/cx231xx/cx231xx 0x1b0a638e cx231xx_uninit_bulk +EXPORT_SYMBOL_GPL drivers/media/usb/cx231xx/cx231xx 0x22504a54 cx231xx_init_bulk +EXPORT_SYMBOL_GPL drivers/media/usb/cx231xx/cx231xx 0x22806e44 cx231xx_enable656 +EXPORT_SYMBOL_GPL drivers/media/usb/cx231xx/cx231xx 0x44dbf870 cx231xx_uninit_isoc +EXPORT_SYMBOL_GPL drivers/media/usb/cx231xx/cx231xx 0x49e20c8a cx231xx_dev_init +EXPORT_SYMBOL_GPL drivers/media/usb/cx231xx/cx231xx 0x6c823877 cx231xx_set_alt_setting +EXPORT_SYMBOL_GPL drivers/media/usb/cx231xx/cx231xx 0x8e1ee255 cx231xx_disable656 +EXPORT_SYMBOL_GPL drivers/media/usb/cx231xx/cx231xx 0x90fc0e0f cx231xx_set_mode +EXPORT_SYMBOL_GPL drivers/media/usb/cx231xx/cx231xx 0x96f5d608 cx231xx_get_i2c_adap +EXPORT_SYMBOL_GPL drivers/media/usb/cx231xx/cx231xx 0xb1d21565 cx231xx_enable_i2c_port_3 +EXPORT_SYMBOL_GPL drivers/media/usb/cx231xx/cx231xx 0xc5fcc05b cx231xx_capture_start +EXPORT_SYMBOL_GPL drivers/media/usb/cx231xx/cx231xx 0xc9d33339 cx231xx_send_usb_command +EXPORT_SYMBOL_GPL drivers/media/usb/cx231xx/cx231xx 0xe250bb36 is_fw_load +EXPORT_SYMBOL_GPL drivers/media/usb/cx231xx/cx231xx 0xe890693a cx231xx_init_isoc +EXPORT_SYMBOL_GPL drivers/media/usb/cx231xx/cx231xx 0xeac0ea0f cx231xx_send_gpio_cmd +EXPORT_SYMBOL_GPL drivers/media/usb/cx231xx/cx231xx 0xec4631f1 cx231xx_dev_uninit +EXPORT_SYMBOL_GPL drivers/media/usb/cx231xx/cx231xx 0xf8457e5e cx231xx_uninit_vbi_isoc +EXPORT_SYMBOL_GPL drivers/media/usb/cx231xx/cx231xx 0xfc8ae7d2 cx231xx_init_vbi_isoc +EXPORT_SYMBOL_GPL drivers/media/usb/dvb-usb-v2/mxl111sf-demod 0x8d1448b0 mxl111sf_demod_attach +EXPORT_SYMBOL_GPL drivers/media/usb/dvb-usb-v2/mxl111sf-tuner 0xceb4e2ca mxl111sf_tuner_attach +EXPORT_SYMBOL_GPL drivers/media/usb/em28xx/em28xx 0x0d5701c1 em28xx_alloc_urbs +EXPORT_SYMBOL_GPL drivers/media/usb/em28xx/em28xx 0x137c723b em28xx_audio_setup +EXPORT_SYMBOL_GPL drivers/media/usb/em28xx/em28xx 0x24f3d34b em28xx_write_regs +EXPORT_SYMBOL_GPL drivers/media/usb/em28xx/em28xx 0x29828283 em28xx_set_mode +EXPORT_SYMBOL_GPL drivers/media/usb/em28xx/em28xx 0x2ed5a456 em28xx_find_led +EXPORT_SYMBOL_GPL drivers/media/usb/em28xx/em28xx 0x34503682 em28xx_write_reg +EXPORT_SYMBOL_GPL drivers/media/usb/em28xx/em28xx 0x3efcfbec em28xx_audio_analog_set +EXPORT_SYMBOL_GPL drivers/media/usb/em28xx/em28xx 0x5aace7ee em28xx_read_reg +EXPORT_SYMBOL_GPL drivers/media/usb/em28xx/em28xx 0x67f0c561 em28xx_write_reg_bits +EXPORT_SYMBOL_GPL drivers/media/usb/em28xx/em28xx 0x6a99a3be em28xx_setup_xc3028 +EXPORT_SYMBOL_GPL drivers/media/usb/em28xx/em28xx 0x6f460e4b em28xx_read_ac97 +EXPORT_SYMBOL_GPL drivers/media/usb/em28xx/em28xx 0x721f7cc7 em28xx_free_device +EXPORT_SYMBOL_GPL drivers/media/usb/em28xx/em28xx 0x77b29601 em28xx_init_camera +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 0xbbe8345f em28xx_write_ac97 +EXPORT_SYMBOL_GPL drivers/media/usb/em28xx/em28xx 0xc1cb9841 em28xx_init_usb_xfer +EXPORT_SYMBOL_GPL drivers/media/usb/em28xx/em28xx 0xd442783f em28xx_stop_urbs +EXPORT_SYMBOL_GPL drivers/media/usb/em28xx/em28xx 0xd8060598 em28xx_toggle_reg_bits +EXPORT_SYMBOL_GPL drivers/media/usb/em28xx/em28xx 0xdf7033af em28xx_gpio_set +EXPORT_SYMBOL_GPL drivers/media/usb/em28xx/em28xx 0xe040f4a0 em28xx_uninit_usb_xfer +EXPORT_SYMBOL_GPL drivers/media/usb/tm6000/tm6000 0x21d01962 tm6000_set_reg +EXPORT_SYMBOL_GPL drivers/media/usb/tm6000/tm6000 0x2309a6d6 tm6000_xc5000_callback +EXPORT_SYMBOL_GPL drivers/media/usb/tm6000/tm6000 0x591c194f tm6000_get_reg +EXPORT_SYMBOL_GPL drivers/media/usb/tm6000/tm6000 0x83d76cd6 tm6000_set_audio_bitrate +EXPORT_SYMBOL_GPL drivers/media/usb/tm6000/tm6000 0x89b611dd tm6000_debug +EXPORT_SYMBOL_GPL drivers/media/usb/tm6000/tm6000 0xdf91d4aa tm6000_set_reg_mask +EXPORT_SYMBOL_GPL drivers/media/usb/tm6000/tm6000 0xdff8e89d tm6000_tuner_callback +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 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 0xef15cc44 v4l2_hdmi_rx_colorimetry +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 0x40f64286 v4l2_flash_release +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-flash-led-class 0xbd1513e4 v4l2_flash_indicator_init +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-flash-led-class 0xc396b0e4 v4l2_flash_init +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-fwnode 0x3daee429 v4l2_fwnode_parse_link +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-fwnode 0x5182a96b v4l2_fwnode_endpoint_free +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-fwnode 0x612ddce5 v4l2_fwnode_connector_free +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-fwnode 0x6650a826 v4l2_fwnode_endpoint_parse +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-fwnode 0x6bb3d919 v4l2_fwnode_put_link +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-fwnode 0x75e06dab v4l2_fwnode_device_parse +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-fwnode 0x8bda9c19 v4l2_fwnode_connector_parse +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-fwnode 0xa9c38cc7 v4l2_async_notifier_parse_fwnode_endpoints_by_port +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-fwnode 0xae1786c6 v4l2_fwnode_endpoint_alloc_parse +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-fwnode 0xb1645b69 v4l2_async_register_subdev_sensor_common +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-fwnode 0xefe91af7 v4l2_async_notifier_parse_fwnode_endpoints +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-fwnode 0xf017fa20 v4l2_async_notifier_parse_fwnode_sensor_common +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-fwnode 0xf4aab38b v4l2_fwnode_connector_add_link +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0x01e32b8b v4l2_m2m_buf_queue +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0x03cacba8 v4l2_m2m_decoder_cmd +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0x066615d8 v4l2_m2m_ctx_release +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0x07091b88 v4l2_m2m_ioctl_encoder_cmd +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0x082f30f4 v4l2_m2m_fop_poll +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0x12194e7a v4l2_m2m_expbuf +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0x12bbcb2d v4l2_m2m_ioctl_stateless_try_decoder_cmd +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0x144affea v4l2_m2m_ioctl_dqbuf +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0x1692e9d1 v4l2_m2m_buf_remove_by_idx +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0x191b6297 v4l2_m2m_ioctl_streamon +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0x21426469 v4l2_m2m_ctx_init +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0x239a5608 v4l2_m2m_fop_mmap +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0x253f6ba1 v4l2_m2m_streamoff +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0x37076fe4 v4l2_m2m_last_buf +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0x37413adb v4l2_m2m_streamon +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0x3aab9607 v4l2_m2m_ioctl_try_encoder_cmd +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0x3f044929 v4l2_m2m_ioctl_try_decoder_cmd +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0x4bd1a4c6 v4l2_m2m_poll +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0x4dcd248c v4l2_m2m_ioctl_decoder_cmd +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0x5154cb33 v4l2_m2m_last_buffer_done +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0x61863823 v4l2_m2m_encoder_cmd +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0x6af9d8c9 v4l2_m2m_request_queue +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0x6f91baaa v4l2_m2m_ioctl_create_bufs +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0x709c06b7 v4l2_m2m_buf_copy_metadata +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0x7292d6c9 v4l2_m2m_buf_remove_by_buf +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0x730f2eae v4l2_m2m_init +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0x73fd6951 v4l2_m2m_ioctl_qbuf +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0x796a1f60 v4l2_m2m_ioctl_prepare_buf +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0x7dab5605 v4l2_m2m_buf_remove +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0x9a95f421 v4l2_m2m_querybuf +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0x9b3026a7 v4l2_m2m_next_buf +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0x9f95eff7 v4l2_m2m_dqbuf +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0xa0fc563e v4l2_m2m_prepare_buf +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0xaef1f776 v4l2_m2m_ioctl_querybuf +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0xb96fbad9 v4l2_m2m_ioctl_stateless_decoder_cmd +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0xc37599bb v4l2_m2m_reqbufs +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0xc63d8524 v4l2_m2m_create_bufs +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0xc6fca5ad v4l2_m2m_release +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0xcf234a8e v4l2_m2m_register_media_controller +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0xd495c3e7 v4l2_m2m_try_schedule +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0xdc337ce6 v4l2_m2m_ioctl_streamoff +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0xf13ff84d v4l2_m2m_unregister_media_controller +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0xfb1fb44c v4l2_m2m_qbuf +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0xfd28a405 v4l2_m2m_update_stop_streaming_state +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0xfe12d837 v4l2_m2m_update_start_streaming_state +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0xfeaf7aa2 v4l2_m2m_ioctl_reqbufs +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0xff3d3425 v4l2_m2m_ioctl_expbuf +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0x10def719 videobuf_poll_stream +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0x10f50554 videobuf_read_stop +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0x1193b35c videobuf_queue_core_init +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0x1253364b videobuf_next_field +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0x1c9fb419 videobuf_streamon +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0x28fbb2f5 videobuf_mmap_setup +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0x390a4d3f videobuf_mmap_mapper +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0x3a1546a9 videobuf_read_start +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0x3e601f6d videobuf_reqbufs +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0x53006f7a videobuf_streamoff +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0x632ad52c videobuf_waiton +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0x633b00a4 videobuf_read_stream +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0x68978c43 __videobuf_mmap_setup +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0x71c37922 videobuf_queue_is_busy +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0x7aec6e53 videobuf_qbuf +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0x9adecf25 videobuf_iolock +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0xa86cd74a videobuf_stop +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0xb924e3d6 videobuf_queue_to_vaddr +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0xce4e39ca videobuf_queue_cancel +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0xd05004dd videobuf_alloc_vb +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0xddfcd9ba videobuf_read_one +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0xde24dcb3 videobuf_mmap_free +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0xe3e2ca02 videobuf_dqbuf +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0xe9642da4 videobuf_querybuf +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-dma-sg 0x263c9223 videobuf_queue_sg_init +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-dma-sg 0x3a8630a4 videobuf_dma_unmap +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-dma-sg 0x553a86d0 videobuf_sg_alloc +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-dma-sg 0xa072393a videobuf_to_dma +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-dma-sg 0xdddc61f4 videobuf_dma_free +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-vmalloc 0x22b0775c videobuf_vmalloc_free +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-vmalloc 0x25b79ce4 videobuf_to_vmalloc +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-vmalloc 0xa7aba3eb videobuf_queue_vmalloc_init +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x14af5183 v4l2_device_unregister +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x1eacca30 v4l2_spi_subdev_init +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x2a53ca39 __tracepoint_vb2_v4l2_qbuf +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x32431a1e __tracepoint_vb2_v4l2_buf_queue +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x3672a99b v4l_vb2q_enable_media_source +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x37e82954 v4l2_event_subscribe +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x3f463ed6 v4l2_spi_new_subdev +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x42a8ca3c v4l2_ctrl_request_hdl_ctrl_find +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x43996a8c __tracepoint_vb2_v4l2_buf_done +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x503a6825 v4l_enable_media_source +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x50d65b11 v4l2_subdev_free_pad_config +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x53df226c v4l2_event_queue_fh +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x58dfb8d1 v4l2_async_notifier_add_devname_subdev +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x5de41093 v4l2_s_parm_cap +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x6228aa8a v4l2_compat_ioctl32 +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x672ca532 v4l2_i2c_subdev_set_name +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x67b27351 v4l2_async_notifier_add_fwnode_remote_subdev +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x687b97a3 v4l2_event_unsubscribe +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x6e9acc41 v4l2_fill_pixfmt_mp +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x726c7a0f v4l2_subdev_get_fwnode_pad_1_to_1 +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x72cf0091 v4l_disable_media_source +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x793fd618 v4l2_fh_del +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x7a93de01 v4l2_device_set_name +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x7d2289b7 v4l2_event_dequeue +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x82209823 v4l2_async_notifier_add_subdev +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x85cd652a v4l2_subdev_notify_event +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x879bb90e v4l2_pipeline_pm_put +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x8ad7df08 v4l2_create_fwnode_links_to_pad +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x91514e25 v4l2_subdev_link_validate +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x930f5597 v4l2_device_register_subdev +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x94db0e49 v4l2_ctrl_request_hdl_find +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x960505a5 v4l2_src_change_event_subdev_subscribe +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x966b5c0e v4l2_device_disconnect +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x96c654a7 v4l2_fh_init +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x99cf211d v4l2_pipeline_pm_get +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x9d963af4 v4l2_async_notifier_add_fwnode_subdev +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x9fef35ac v4l2_apply_frmsize_constraints +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0xa1f5830f v4l2_pipeline_link_notify +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0xa4ccc415 v4l2_device_unregister_subdev +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0xa65d4618 v4l2_i2c_subdev_addr +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0xab9a99e1 __v4l2_device_register_subdev_nodes +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0xaea772c1 v4l2_i2c_new_subdev_board +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0xb66cc348 v4l2_device_register +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0xb795f071 __tracepoint_vb2_v4l2_dqbuf +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0xbf3954d8 v4l2_async_notifier_add_i2c_subdev +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0xc0642015 v4l2_event_subdev_unsubscribe +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0xc0bf3528 v4l2_event_pending +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0xc247de04 v4l2_async_notifier_cleanup +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0xc2c26fd1 v4l2_subdev_link_validate_default +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0xc8aa2df5 v4l2_fh_release +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0xc990712c v4l2_subdev_alloc_pad_config +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0xcc501597 v4l2_fill_pixfmt +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0xd2a65ce9 v4l2_device_put +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0xd6eb5a6e v4l2_event_unsubscribe_all +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0xdb26df67 v4l2_g_parm_cap +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0xe14c670a v4l2_fh_add +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0xe2822320 __v4l2_find_nearest_size +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0xe32806a2 v4l2_create_fwnode_links +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0xe4e4e1b8 v4l2_i2c_new_subdev +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0xe6280968 v4l2_src_change_event_subscribe +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0xeaaf7ce0 v4l2_i2c_subdev_init +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0xedc9aaf5 v4l2_event_queue +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0xf0885635 v4l2_fh_exit +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0xf2a353ac v4l2_i2c_tuner_addrs +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0xf3328cc1 v4l2_mc_create_media_graph +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0xf5ef842e v4l_bound_align_image +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0xf9f664ee v4l2_fh_is_singular +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0xfb676ddf v4l2_fh_open +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0xffff11b7 __v4l2_ctrl_handler_setup +EXPORT_SYMBOL_GPL drivers/mfd/88pm80x 0x1269b57b pm80x_init +EXPORT_SYMBOL_GPL drivers/mfd/88pm80x 0x79228955 pm80x_regmap_config +EXPORT_SYMBOL_GPL drivers/mfd/88pm80x 0xc6a49b90 pm80x_pm_ops +EXPORT_SYMBOL_GPL drivers/mfd/88pm80x 0xd99fd720 pm80x_deinit +EXPORT_SYMBOL_GPL drivers/mfd/da9150-core 0x1bc9d680 da9150_reg_read +EXPORT_SYMBOL_GPL drivers/mfd/da9150-core 0x2ae3d6ba da9150_bulk_write +EXPORT_SYMBOL_GPL drivers/mfd/da9150-core 0x63636470 da9150_bulk_read +EXPORT_SYMBOL_GPL drivers/mfd/da9150-core 0xa0791f24 da9150_set_bits +EXPORT_SYMBOL_GPL drivers/mfd/da9150-core 0xc86959bf da9150_read_qif +EXPORT_SYMBOL_GPL drivers/mfd/da9150-core 0xd18a7dcc da9150_write_qif +EXPORT_SYMBOL_GPL drivers/mfd/da9150-core 0xf58c41c8 da9150_reg_write +EXPORT_SYMBOL_GPL drivers/mfd/intel-lpss 0x00c63b0f intel_lpss_probe +EXPORT_SYMBOL_GPL drivers/mfd/intel-lpss 0x3fd27547 intel_lpss_resume +EXPORT_SYMBOL_GPL drivers/mfd/intel-lpss 0x53d8e83a intel_lpss_suspend +EXPORT_SYMBOL_GPL drivers/mfd/intel-lpss 0x68b52dd1 intel_lpss_prepare +EXPORT_SYMBOL_GPL drivers/mfd/intel-lpss 0xee0857b4 intel_lpss_remove +EXPORT_SYMBOL_GPL drivers/mfd/intel_pmc_bxt 0x03e05dcc intel_pmc_s0ix_counter_read +EXPORT_SYMBOL_GPL drivers/mfd/intel_pmc_bxt 0x524dfbb6 intel_pmc_gcr_update +EXPORT_SYMBOL_GPL drivers/mfd/intel_pmc_bxt 0x848561e8 intel_pmc_gcr_read64 +EXPORT_SYMBOL_GPL drivers/mfd/iqs62x 0x22a28670 iqs62x_events +EXPORT_SYMBOL_GPL drivers/mfd/kempld-core 0x26ba3e02 kempld_write8 +EXPORT_SYMBOL_GPL drivers/mfd/kempld-core 0x3f0a27cc kempld_read32 +EXPORT_SYMBOL_GPL drivers/mfd/kempld-core 0x71680ea1 kempld_write32 +EXPORT_SYMBOL_GPL drivers/mfd/kempld-core 0xb77cb034 kempld_get_mutex +EXPORT_SYMBOL_GPL drivers/mfd/kempld-core 0xce645f10 kempld_write16 +EXPORT_SYMBOL_GPL drivers/mfd/kempld-core 0xd8989f61 kempld_read16 +EXPORT_SYMBOL_GPL drivers/mfd/kempld-core 0xda2cfef9 kempld_release_mutex +EXPORT_SYMBOL_GPL drivers/mfd/kempld-core 0xfcb5afa3 kempld_read8 +EXPORT_SYMBOL_GPL drivers/mfd/lm3533-core 0x57859abc lm3533_read +EXPORT_SYMBOL_GPL drivers/mfd/lm3533-core 0x6ca74852 lm3533_write +EXPORT_SYMBOL_GPL drivers/mfd/lm3533-core 0xa7782b4f lm3533_update +EXPORT_SYMBOL_GPL drivers/mfd/lm3533-ctrlbank 0x0b4a5510 lm3533_ctrlbank_set_pwm +EXPORT_SYMBOL_GPL drivers/mfd/lm3533-ctrlbank 0x37b186a3 lm3533_ctrlbank_enable +EXPORT_SYMBOL_GPL drivers/mfd/lm3533-ctrlbank 0x3a822090 lm3533_ctrlbank_set_brightness +EXPORT_SYMBOL_GPL drivers/mfd/lm3533-ctrlbank 0x981cd49d lm3533_ctrlbank_get_pwm +EXPORT_SYMBOL_GPL drivers/mfd/lm3533-ctrlbank 0xae568428 lm3533_ctrlbank_set_max_current +EXPORT_SYMBOL_GPL drivers/mfd/lm3533-ctrlbank 0xb226f637 lm3533_ctrlbank_get_brightness +EXPORT_SYMBOL_GPL drivers/mfd/lm3533-ctrlbank 0xc1e627ee lm3533_ctrlbank_disable +EXPORT_SYMBOL_GPL drivers/mfd/lp3943 0x3714a2da lp3943_write_byte +EXPORT_SYMBOL_GPL drivers/mfd/lp3943 0x3f3eaf43 lp3943_read_byte +EXPORT_SYMBOL_GPL drivers/mfd/lp3943 0x3ffa9492 lp3943_update_bits +EXPORT_SYMBOL_GPL drivers/mfd/madera 0x0ab111ba cs47l35_16bit_i2c_regmap +EXPORT_SYMBOL_GPL drivers/mfd/madera 0x0abccdfa cs47l35_32bit_i2c_regmap +EXPORT_SYMBOL_GPL drivers/mfd/madera 0x0f08ad56 cs47l15_patch +EXPORT_SYMBOL_GPL drivers/mfd/madera 0x0f379262 madera_of_match +EXPORT_SYMBOL_GPL drivers/mfd/madera 0x1797e68f cs47l92_32bit_i2c_regmap +EXPORT_SYMBOL_GPL drivers/mfd/madera 0x179a3acf cs47l92_16bit_i2c_regmap +EXPORT_SYMBOL_GPL drivers/mfd/madera 0x2016fd72 cs47l90_16bit_spi_regmap +EXPORT_SYMBOL_GPL drivers/mfd/madera 0x201b2132 cs47l90_32bit_spi_regmap +EXPORT_SYMBOL_GPL drivers/mfd/madera 0x2fd72585 cs47l90_patch +EXPORT_SYMBOL_GPL drivers/mfd/madera 0x38c38ac2 cs47l85_16bit_i2c_regmap +EXPORT_SYMBOL_GPL drivers/mfd/madera 0x38ce5682 cs47l85_32bit_i2c_regmap +EXPORT_SYMBOL_GPL drivers/mfd/madera 0x49840cb6 cs47l35_32bit_spi_regmap +EXPORT_SYMBOL_GPL drivers/mfd/madera 0x4989d0f6 cs47l35_16bit_spi_regmap +EXPORT_SYMBOL_GPL drivers/mfd/madera 0x54a2fb83 cs47l92_16bit_spi_regmap +EXPORT_SYMBOL_GPL drivers/mfd/madera 0x54af27c3 cs47l92_32bit_spi_regmap +EXPORT_SYMBOL_GPL drivers/mfd/madera 0x58839164 madera_dev_exit +EXPORT_SYMBOL_GPL drivers/mfd/madera 0x6323e07e cs47l90_32bit_i2c_regmap +EXPORT_SYMBOL_GPL drivers/mfd/madera 0x632e3c3e cs47l90_16bit_i2c_regmap +EXPORT_SYMBOL_GPL drivers/mfd/madera 0x7bf697ce cs47l85_32bit_spi_regmap +EXPORT_SYMBOL_GPL drivers/mfd/madera 0x7bfb4b8e cs47l85_16bit_spi_regmap +EXPORT_SYMBOL_GPL drivers/mfd/madera 0x806e9a9f madera_pm_ops +EXPORT_SYMBOL_GPL drivers/mfd/madera 0x8347a67a cs47l15_16bit_spi_regmap +EXPORT_SYMBOL_GPL drivers/mfd/madera 0x834a7a3a cs47l15_32bit_spi_regmap +EXPORT_SYMBOL_GPL drivers/mfd/madera 0x87c1a1e2 madera_dev_init +EXPORT_SYMBOL_GPL drivers/mfd/madera 0x9713f8cb cs47l35_patch +EXPORT_SYMBOL_GPL drivers/mfd/madera 0xa343d80f cs47l85_patch +EXPORT_SYMBOL_GPL drivers/mfd/madera 0xc072bb76 cs47l15_32bit_i2c_regmap +EXPORT_SYMBOL_GPL drivers/mfd/madera 0xc07f6736 cs47l15_16bit_i2c_regmap +EXPORT_SYMBOL_GPL drivers/mfd/madera 0xe6a204c7 cs47l92_patch +EXPORT_SYMBOL_GPL drivers/mfd/madera 0xebe384cb madera_name_from_type +EXPORT_SYMBOL_GPL drivers/mfd/mc13xxx-core 0x005929f3 mc13xxx_variant_mc34708 +EXPORT_SYMBOL_GPL drivers/mfd/mc13xxx-core 0x06f65537 mc13xxx_adc_do_conversion +EXPORT_SYMBOL_GPL drivers/mfd/mc13xxx-core 0x1256dc9b mc13xxx_variant_mc13783 +EXPORT_SYMBOL_GPL drivers/mfd/mc13xxx-core 0x4bff2761 mc13xxx_common_init +EXPORT_SYMBOL_GPL drivers/mfd/mc13xxx-core 0x52ec97bb mc13xxx_variant_mc13892 +EXPORT_SYMBOL_GPL drivers/mfd/mc13xxx-core 0x64b91fdb mc13xxx_common_exit +EXPORT_SYMBOL_GPL drivers/mfd/pcf50633 0x133110fa pcf50633_write_block +EXPORT_SYMBOL_GPL drivers/mfd/pcf50633 0x4492cafd pcf50633_read_block +EXPORT_SYMBOL_GPL drivers/mfd/pcf50633 0x4bbe2d71 pcf50633_irq_mask +EXPORT_SYMBOL_GPL drivers/mfd/pcf50633 0x7b5093b0 pcf50633_reg_clear_bits +EXPORT_SYMBOL_GPL drivers/mfd/pcf50633 0x82257a10 pcf50633_reg_write +EXPORT_SYMBOL_GPL drivers/mfd/pcf50633 0x9a9d6dbc pcf50633_reg_set_bit_mask +EXPORT_SYMBOL_GPL drivers/mfd/pcf50633 0xac006478 pcf50633_free_irq +EXPORT_SYMBOL_GPL drivers/mfd/pcf50633 0xb7ff60d3 pcf50633_irq_unmask +EXPORT_SYMBOL_GPL drivers/mfd/pcf50633 0xc1e66715 pcf50633_register_irq +EXPORT_SYMBOL_GPL drivers/mfd/pcf50633 0xc8a516d2 pcf50633_reg_read +EXPORT_SYMBOL_GPL drivers/mfd/pcf50633 0xdca7f8c8 pcf50633_irq_mask_get +EXPORT_SYMBOL_GPL drivers/mfd/pcf50633-adc 0x02ce280c pcf50633_adc_async_read +EXPORT_SYMBOL_GPL drivers/mfd/pcf50633-adc 0xff03d345 pcf50633_adc_sync_read +EXPORT_SYMBOL_GPL drivers/mfd/pcf50633-gpio 0x0061256e pcf50633_gpio_invert_set +EXPORT_SYMBOL_GPL drivers/mfd/pcf50633-gpio 0x036ef914 pcf50633_gpio_get +EXPORT_SYMBOL_GPL drivers/mfd/pcf50633-gpio 0x0d82e8b5 pcf50633_gpio_set +EXPORT_SYMBOL_GPL drivers/mfd/pcf50633-gpio 0x8030f011 pcf50633_gpio_invert_get +EXPORT_SYMBOL_GPL drivers/mfd/pcf50633-gpio 0x94621ab4 pcf50633_gpio_power_supply_set +EXPORT_SYMBOL_GPL drivers/mfd/rave-sp 0x0e064bf6 devm_rave_sp_register_event_notifier +EXPORT_SYMBOL_GPL drivers/mfd/rave-sp 0x43e53ef9 rave_sp_exec +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 0x0adecd31 si476x_core_i2c_xfer +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0x1a58e13e si476x_core_is_powered_up +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0x285f65f4 si476x_core_cmd_am_rsq_status +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0x2d614778 si476x_core_cmd_get_property +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0x33cf2155 si476x_core_start +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0x3408f315 si476x_core_is_a_secondary_tuner +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0x4ac9d746 si476x_core_cmd_fm_phase_diversity +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0x4bebc260 si476x_core_cmd_fm_rds_blockcount +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0x58c68a7d devm_regmap_init_si476x +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0x5e4dabdc si476x_core_cmd_fm_tune_freq +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0x64aacc55 si476x_core_cmd_am_acf_status +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0x699278a5 si476x_core_is_in_am_receiver_mode +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0x6d6dcc50 si476x_core_cmd_power_up +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0x731fdf1a si476x_core_cmd_func_info +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0x865b4129 si476x_core_cmd_ana_audio_pin_cfg +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0x8bd1b030 si476x_core_cmd_fm_seek_start +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0x8db1bd53 si476x_core_cmd_fm_phase_div_status +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0xada5fd6a si476x_core_cmd_fm_rsq_status +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0xb1a55844 si476x_core_cmd_fm_acf_status +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0xb3351d30 si476x_core_cmd_set_property +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0xb5c7e3b0 si476x_core_cmd_fm_rds_status +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0xb6ce4e8e si476x_core_cmd_agc_status +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0xb8764f22 si476x_core_cmd_intb_pin_cfg +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0xba960b30 si476x_core_cmd_ic_link_gpo_ctl_pin_cfg +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0xbb1517e0 si476x_core_cmd_dig_audio_pin_cfg +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0xc96ede47 si476x_core_cmd_am_seek_start +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0xd6edb88a si476x_core_cmd_power_down +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0xd87b125f si476x_core_has_diversity +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0xdfe3e945 si476x_core_is_a_primary_tuner +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0xe40c2743 si476x_core_cmd_zif_pin_cfg +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0xe9a56b5f si476x_core_set_power_state +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0xecc45b68 si476x_core_stop +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0xf58ab358 si476x_core_cmd_am_tune_freq +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0xfc459b66 si476x_core_has_am +EXPORT_SYMBOL_GPL drivers/mfd/sm501 0x003791cb sm501_find_clock +EXPORT_SYMBOL_GPL drivers/mfd/sm501 0x0f29e4cd sm501_misc_control +EXPORT_SYMBOL_GPL drivers/mfd/sm501 0x6e660842 sm501_unit_power +EXPORT_SYMBOL_GPL drivers/mfd/sm501 0x7da12ab8 sm501_set_clock +EXPORT_SYMBOL_GPL drivers/mfd/sm501 0x969eaf39 sm501_modify_reg +EXPORT_SYMBOL_GPL drivers/mfd/ti_am335x_tscadc 0x06ef76fe am335x_tsc_se_set_cache +EXPORT_SYMBOL_GPL drivers/mfd/ti_am335x_tscadc 0x0daa287b am335x_tsc_se_adc_done +EXPORT_SYMBOL_GPL drivers/mfd/ti_am335x_tscadc 0x196011c5 am335x_tsc_se_clr +EXPORT_SYMBOL_GPL drivers/mfd/ti_am335x_tscadc 0x270600e1 am335x_tsc_se_set_once +EXPORT_SYMBOL_GPL drivers/mfd/ucb1400_core 0xccfb606c ucb1400_adc_read +EXPORT_SYMBOL_GPL drivers/misc/cardreader/alcor_pci 0x3f93235c alcor_write16 +EXPORT_SYMBOL_GPL drivers/misc/cardreader/alcor_pci 0x708574e2 alcor_write32be +EXPORT_SYMBOL_GPL drivers/misc/cardreader/alcor_pci 0x84693688 alcor_write8 +EXPORT_SYMBOL_GPL drivers/misc/cardreader/alcor_pci 0xc04d1d93 alcor_read32be +EXPORT_SYMBOL_GPL drivers/misc/cardreader/alcor_pci 0xc9cb5e56 alcor_write32 +EXPORT_SYMBOL_GPL drivers/misc/cardreader/alcor_pci 0xcc7b86a6 alcor_read32 +EXPORT_SYMBOL_GPL drivers/misc/cardreader/alcor_pci 0xea0c42cf alcor_read8 +EXPORT_SYMBOL_GPL drivers/misc/cardreader/rtsx_pci 0x02583687 rtsx_pci_complete_unfinished_transfer +EXPORT_SYMBOL_GPL drivers/misc/cardreader/rtsx_pci 0x14e28a42 rtsx_pci_read_register +EXPORT_SYMBOL_GPL drivers/misc/cardreader/rtsx_pci 0x161a30ad rtsx_pci_card_power_off +EXPORT_SYMBOL_GPL drivers/misc/cardreader/rtsx_pci 0x27069941 rtsx_pci_start_run +EXPORT_SYMBOL_GPL drivers/misc/cardreader/rtsx_pci 0x2bbef56d rtsx_pci_transfer_data +EXPORT_SYMBOL_GPL drivers/misc/cardreader/rtsx_pci 0x2d2d3fbc rtsx_pci_write_ppbuf +EXPORT_SYMBOL_GPL drivers/misc/cardreader/rtsx_pci 0x3110d472 rtsx_pci_send_cmd +EXPORT_SYMBOL_GPL drivers/misc/cardreader/rtsx_pci 0x57d151bd rtsx_pci_card_pull_ctl_disable +EXPORT_SYMBOL_GPL drivers/misc/cardreader/rtsx_pci 0x6c61fcaa rtsx_pci_add_cmd +EXPORT_SYMBOL_GPL drivers/misc/cardreader/rtsx_pci 0x6f463b3a rtsx_pci_dma_map_sg +EXPORT_SYMBOL_GPL drivers/misc/cardreader/rtsx_pci 0x86efea06 rtsx_pci_card_pull_ctl_enable +EXPORT_SYMBOL_GPL drivers/misc/cardreader/rtsx_pci 0x8a8b58ec rtsx_pci_dma_transfer +EXPORT_SYMBOL_GPL drivers/misc/cardreader/rtsx_pci 0x92224b38 rtsx_pci_card_exclusive_check +EXPORT_SYMBOL_GPL drivers/misc/cardreader/rtsx_pci 0x93476ae5 rtsx_pci_write_register +EXPORT_SYMBOL_GPL drivers/misc/cardreader/rtsx_pci 0x96679952 rtsx_pci_send_cmd_no_wait +EXPORT_SYMBOL_GPL drivers/misc/cardreader/rtsx_pci 0x99cc28a1 rtsx_pci_write_phy_register +EXPORT_SYMBOL_GPL drivers/misc/cardreader/rtsx_pci 0x9f7d1d26 rtsx_pci_card_exist +EXPORT_SYMBOL_GPL drivers/misc/cardreader/rtsx_pci 0xc9ec7fe8 rtsx_pci_read_phy_register +EXPORT_SYMBOL_GPL drivers/misc/cardreader/rtsx_pci 0xda7d921f rtsx_pci_dma_unmap_sg +EXPORT_SYMBOL_GPL drivers/misc/cardreader/rtsx_pci 0xeb3976b6 rtsx_pci_switch_output_voltage +EXPORT_SYMBOL_GPL drivers/misc/cardreader/rtsx_pci 0xee8966d7 rtsx_pci_card_power_on +EXPORT_SYMBOL_GPL drivers/misc/cardreader/rtsx_pci 0xf3f5d142 rtsx_pci_read_ppbuf +EXPORT_SYMBOL_GPL drivers/misc/cardreader/rtsx_pci 0xfa530016 rtsx_pci_switch_clock +EXPORT_SYMBOL_GPL drivers/misc/cardreader/rtsx_pci 0xfb44cfda rtsx_pci_stop_cmd +EXPORT_SYMBOL_GPL drivers/misc/cardreader/rtsx_usb 0x01de510d rtsx_usb_write_ppbuf +EXPORT_SYMBOL_GPL drivers/misc/cardreader/rtsx_usb 0x02d02db3 rtsx_usb_switch_clock +EXPORT_SYMBOL_GPL drivers/misc/cardreader/rtsx_usb 0x16e5935c rtsx_usb_get_card_status +EXPORT_SYMBOL_GPL drivers/misc/cardreader/rtsx_usb 0x19ff944c rtsx_usb_transfer_data +EXPORT_SYMBOL_GPL drivers/misc/cardreader/rtsx_usb 0x5afc6d60 rtsx_usb_get_rsp +EXPORT_SYMBOL_GPL drivers/misc/cardreader/rtsx_usb 0x69080f91 rtsx_usb_add_cmd +EXPORT_SYMBOL_GPL drivers/misc/cardreader/rtsx_usb 0x735042b5 rtsx_usb_read_register +EXPORT_SYMBOL_GPL drivers/misc/cardreader/rtsx_usb 0x7de87df4 rtsx_usb_card_exclusive_check +EXPORT_SYMBOL_GPL drivers/misc/cardreader/rtsx_usb 0x87e44f68 rtsx_usb_send_cmd +EXPORT_SYMBOL_GPL drivers/misc/cardreader/rtsx_usb 0xb51766dc rtsx_usb_read_ppbuf +EXPORT_SYMBOL_GPL drivers/misc/cardreader/rtsx_usb 0xd5575ada rtsx_usb_ep0_read_register +EXPORT_SYMBOL_GPL drivers/misc/cardreader/rtsx_usb 0xda7a54f6 rtsx_usb_write_register +EXPORT_SYMBOL_GPL drivers/misc/cardreader/rtsx_usb 0xdbfed171 rtsx_usb_ep0_write_register +EXPORT_SYMBOL_GPL drivers/misc/cb710/cb710 0x10203de0 cb710_pci_update_config_reg +EXPORT_SYMBOL_GPL drivers/misc/cb710/cb710 0x33ee8712 cb710_sg_dwiter_write_next_block +EXPORT_SYMBOL_GPL drivers/misc/cb710/cb710 0x7e17e8ad cb710_set_irq_handler +EXPORT_SYMBOL_GPL drivers/misc/cb710/cb710 0xf052c720 cb710_sg_dwiter_read_next_block +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 0x2da4467f enclosure_find +EXPORT_SYMBOL_GPL drivers/misc/enclosure 0x41153360 enclosure_for_each_device +EXPORT_SYMBOL_GPL drivers/misc/enclosure 0x5b192d08 enclosure_register +EXPORT_SYMBOL_GPL drivers/misc/enclosure 0x63680097 enclosure_unregister +EXPORT_SYMBOL_GPL drivers/misc/enclosure 0x944408e7 enclosure_remove_device +EXPORT_SYMBOL_GPL drivers/misc/enclosure 0xc58ab7cb enclosure_component_register +EXPORT_SYMBOL_GPL drivers/misc/enclosure 0xd8a290e7 enclosure_component_alloc +EXPORT_SYMBOL_GPL drivers/misc/enclosure 0xd92121d0 enclosure_add_device +EXPORT_SYMBOL_GPL drivers/misc/lis3lv02d/lis3lv02d 0x39c9e177 lis3_dev +EXPORT_SYMBOL_GPL drivers/misc/lis3lv02d/lis3lv02d 0x3c3af992 lis3lv02d_poweron +EXPORT_SYMBOL_GPL drivers/misc/lis3lv02d/lis3lv02d 0x48139089 lis3lv02d_joystick_enable +EXPORT_SYMBOL_GPL drivers/misc/lis3lv02d/lis3lv02d 0x4f0441b1 lis3lv02d_remove_fs +EXPORT_SYMBOL_GPL drivers/misc/lis3lv02d/lis3lv02d 0x97051cd9 lis3lv02d_init_device +EXPORT_SYMBOL_GPL drivers/misc/lis3lv02d/lis3lv02d 0xcc4b0490 lis3lv02d_poweroff +EXPORT_SYMBOL_GPL drivers/misc/lis3lv02d/lis3lv02d 0xd513bce5 lis3lv02d_init_dt +EXPORT_SYMBOL_GPL drivers/misc/lis3lv02d/lis3lv02d 0xeb42dcd8 lis3lv02d_joystick_disable +EXPORT_SYMBOL_GPL drivers/misc/mei/mei 0x0872623b mei_cldev_uuid +EXPORT_SYMBOL_GPL drivers/misc/mei/mei 0x0e2cfab2 mei_cldev_register_notif_cb +EXPORT_SYMBOL_GPL drivers/misc/mei/mei 0x23eb3e34 mei_stop +EXPORT_SYMBOL_GPL drivers/misc/mei/mei 0x2924fa72 mei_cldev_get_drvdata +EXPORT_SYMBOL_GPL drivers/misc/mei/mei 0x35af88b3 mei_hbm_pg_resume +EXPORT_SYMBOL_GPL drivers/misc/mei/mei 0x373ead03 mei_cldev_enabled +EXPORT_SYMBOL_GPL drivers/misc/mei/mei 0x37fe239c mei_register +EXPORT_SYMBOL_GPL drivers/misc/mei/mei 0x4146ec36 mei_irq_read_handler +EXPORT_SYMBOL_GPL drivers/misc/mei/mei 0x47610226 mei_irq_compl_handler +EXPORT_SYMBOL_GPL drivers/misc/mei/mei 0x5113c06a mei_cldev_set_drvdata +EXPORT_SYMBOL_GPL drivers/misc/mei/mei 0x5ca3d169 mei_hbm_pg +EXPORT_SYMBOL_GPL drivers/misc/mei/mei 0x60e9a599 mei_cldev_ver +EXPORT_SYMBOL_GPL drivers/misc/mei/mei 0x676dc70d mei_cancel_work +EXPORT_SYMBOL_GPL drivers/misc/mei/mei 0x6ee982a0 mei_cldev_driver_unregister +EXPORT_SYMBOL_GPL drivers/misc/mei/mei 0x85c8e19f mei_start +EXPORT_SYMBOL_GPL drivers/misc/mei/mei 0x90a24af4 mei_fw_status2str +EXPORT_SYMBOL_GPL drivers/misc/mei/mei 0xa5ddefe0 mei_cldev_recv_nonblock +EXPORT_SYMBOL_GPL drivers/misc/mei/mei 0xb3301220 mei_cldev_disable +EXPORT_SYMBOL_GPL drivers/misc/mei/mei 0xb56b5f7e mei_device_init +EXPORT_SYMBOL_GPL drivers/misc/mei/mei 0xc332cced mei_write_is_idle +EXPORT_SYMBOL_GPL drivers/misc/mei/mei 0xccf29253 __mei_cldev_driver_register +EXPORT_SYMBOL_GPL drivers/misc/mei/mei 0xd48e8aa8 mei_cldev_send +EXPORT_SYMBOL_GPL drivers/misc/mei/mei 0xe3437b6a mei_irq_write_handler +EXPORT_SYMBOL_GPL drivers/misc/mei/mei 0xe49e8ded mei_restart +EXPORT_SYMBOL_GPL drivers/misc/mei/mei 0xe7b55942 mei_cldev_enable +EXPORT_SYMBOL_GPL drivers/misc/mei/mei 0xeb20446c mei_deregister +EXPORT_SYMBOL_GPL drivers/misc/mei/mei 0xf4e028db mei_reset +EXPORT_SYMBOL_GPL drivers/misc/mei/mei 0xf5068224 mei_cldev_recv +EXPORT_SYMBOL_GPL drivers/misc/mei/mei 0xfc656f55 mei_cldev_register_rx_cb +EXPORT_SYMBOL_GPL drivers/misc/mic/bus/cosm_bus 0x0c57cb41 cosm_register_driver +EXPORT_SYMBOL_GPL drivers/misc/mic/bus/cosm_bus 0x6cb4f77b cosm_unregister_device +EXPORT_SYMBOL_GPL drivers/misc/mic/bus/cosm_bus 0x76a07e30 cosm_register_device +EXPORT_SYMBOL_GPL drivers/misc/mic/bus/cosm_bus 0xe8f1e349 cosm_unregister_driver +EXPORT_SYMBOL_GPL drivers/misc/mic/bus/cosm_bus 0xff754fb2 cosm_find_cdev_by_id +EXPORT_SYMBOL_GPL drivers/misc/mic/bus/mic_bus 0x2671a52d mbus_unregister_device +EXPORT_SYMBOL_GPL drivers/misc/mic/bus/mic_bus 0x4a5cf639 mbus_unregister_driver +EXPORT_SYMBOL_GPL drivers/misc/mic/bus/mic_bus 0x9fa6c7d9 mbus_register_device +EXPORT_SYMBOL_GPL drivers/misc/mic/bus/mic_bus 0xaf0157d5 mbus_register_driver +EXPORT_SYMBOL_GPL drivers/misc/mic/bus/scif_bus 0x37df6e24 scif_unregister_driver +EXPORT_SYMBOL_GPL drivers/misc/mic/bus/scif_bus 0xac6d8a50 scif_register_driver +EXPORT_SYMBOL_GPL drivers/misc/mic/bus/scif_bus 0xe9c5d7ba scif_register_device +EXPORT_SYMBOL_GPL drivers/misc/mic/bus/scif_bus 0xf2cda1c8 scif_unregister_device +EXPORT_SYMBOL_GPL drivers/misc/mic/bus/vop_bus 0x6ff9be0c vop_register_driver +EXPORT_SYMBOL_GPL drivers/misc/mic/bus/vop_bus 0xabe385c9 vop_unregister_device +EXPORT_SYMBOL_GPL drivers/misc/mic/bus/vop_bus 0xc3bb1774 vop_unregister_driver +EXPORT_SYMBOL_GPL drivers/misc/mic/bus/vop_bus 0xe28b350f vop_register_device +EXPORT_SYMBOL_GPL drivers/misc/mic/scif/scif 0x0174fa64 scif_client_register +EXPORT_SYMBOL_GPL drivers/misc/mic/scif/scif 0x027e0517 scif_unpin_pages +EXPORT_SYMBOL_GPL drivers/misc/mic/scif/scif 0x077905d7 scif_connect +EXPORT_SYMBOL_GPL drivers/misc/mic/scif/scif 0x0d5eef9c scif_recv +EXPORT_SYMBOL_GPL drivers/misc/mic/scif/scif 0x0fc6bcd1 scif_writeto +EXPORT_SYMBOL_GPL drivers/misc/mic/scif/scif 0x2790d406 scif_register_pinned_pages +EXPORT_SYMBOL_GPL drivers/misc/mic/scif/scif 0x2f7efc18 scif_pin_pages +EXPORT_SYMBOL_GPL drivers/misc/mic/scif/scif 0x312ded4b scif_vwriteto +EXPORT_SYMBOL_GPL drivers/misc/mic/scif/scif 0x3531751c scif_send +EXPORT_SYMBOL_GPL drivers/misc/mic/scif/scif 0x3d16f5a1 scif_fence_mark +EXPORT_SYMBOL_GPL drivers/misc/mic/scif/scif 0x3f6a5576 scif_open +EXPORT_SYMBOL_GPL drivers/misc/mic/scif/scif 0x3f735506 scif_fence_signal +EXPORT_SYMBOL_GPL drivers/misc/mic/scif/scif 0x3f9d5615 scif_put_pages +EXPORT_SYMBOL_GPL drivers/misc/mic/scif/scif 0x512bf0cb scif_unregister +EXPORT_SYMBOL_GPL drivers/misc/mic/scif/scif 0x67f767f3 scif_readfrom +EXPORT_SYMBOL_GPL drivers/misc/mic/scif/scif 0x71ab880e scif_close +EXPORT_SYMBOL_GPL drivers/misc/mic/scif/scif 0x7b6cd4c8 scif_get_pages +EXPORT_SYMBOL_GPL drivers/misc/mic/scif/scif 0x8f2fed3f scif_get_node_ids +EXPORT_SYMBOL_GPL drivers/misc/mic/scif/scif 0x92af3511 scif_poll +EXPORT_SYMBOL_GPL drivers/misc/mic/scif/scif 0x9883f960 scif_vreadfrom +EXPORT_SYMBOL_GPL drivers/misc/mic/scif/scif 0x9bff7247 scif_register +EXPORT_SYMBOL_GPL drivers/misc/mic/scif/scif 0xab84d240 scif_listen +EXPORT_SYMBOL_GPL drivers/misc/mic/scif/scif 0xc9354f47 scif_fence_wait +EXPORT_SYMBOL_GPL drivers/misc/mic/scif/scif 0xeaa03c96 scif_bind +EXPORT_SYMBOL_GPL drivers/misc/mic/scif/scif 0xf4130a45 scif_accept +EXPORT_SYMBOL_GPL drivers/misc/mic/scif/scif 0xf9fd2b26 scif_client_unregister +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 0x7d5ba9a9 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 0x0b52993f st_unregister +EXPORT_SYMBOL_GPL drivers/misc/ti-st/st_drv 0x518a2137 st_register +EXPORT_SYMBOL_GPL drivers/misc/uacce/uacce 0x28ea9180 uacce_alloc +EXPORT_SYMBOL_GPL drivers/misc/uacce/uacce 0x330aa02c uacce_remove +EXPORT_SYMBOL_GPL drivers/misc/uacce/uacce 0x7962a366 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 0x513f6c56 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 0x58e273e1 vmci_qpair_enquev +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 0x6de2570f vmci_qpair_dequev +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 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 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 0x00a1b691 sdhci_send_tuning +EXPORT_SYMBOL_GPL drivers/mmc/host/sdhci 0x06aa5d07 __sdhci_add_host +EXPORT_SYMBOL_GPL drivers/mmc/host/sdhci 0x0e8889b9 sdhci_add_host +EXPORT_SYMBOL_GPL drivers/mmc/host/sdhci 0x1554200e __sdhci_set_timeout +EXPORT_SYMBOL_GPL drivers/mmc/host/sdhci 0x174eabb2 sdhci_start_signal_voltage_switch +EXPORT_SYMBOL_GPL drivers/mmc/host/sdhci 0x206e4566 sdhci_switch_external_dma +EXPORT_SYMBOL_GPL drivers/mmc/host/sdhci 0x2608003d sdhci_abort_tuning +EXPORT_SYMBOL_GPL drivers/mmc/host/sdhci 0x354de262 sdhci_request_atomic +EXPORT_SYMBOL_GPL drivers/mmc/host/sdhci 0x3bbb391e sdhci_runtime_suspend_host +EXPORT_SYMBOL_GPL drivers/mmc/host/sdhci 0x413b404e sdhci_adma_write_desc +EXPORT_SYMBOL_GPL drivers/mmc/host/sdhci 0x425ff216 sdhci_remove_host +EXPORT_SYMBOL_GPL drivers/mmc/host/sdhci 0x42c4c57d sdhci_resume_host +EXPORT_SYMBOL_GPL drivers/mmc/host/sdhci 0x481033bb sdhci_cqe_enable +EXPORT_SYMBOL_GPL drivers/mmc/host/sdhci 0x51653755 sdhci_dumpregs +EXPORT_SYMBOL_GPL drivers/mmc/host/sdhci 0x555d8d58 sdhci_set_data_timeout_irq +EXPORT_SYMBOL_GPL drivers/mmc/host/sdhci 0x56e222b1 sdhci_set_power_noreg +EXPORT_SYMBOL_GPL drivers/mmc/host/sdhci 0x5ce2cb0b sdhci_set_uhs_signaling +EXPORT_SYMBOL_GPL drivers/mmc/host/sdhci 0x5f71db0d sdhci_reset +EXPORT_SYMBOL_GPL drivers/mmc/host/sdhci 0x5fe13f58 sdhci_calc_clk +EXPORT_SYMBOL_GPL drivers/mmc/host/sdhci 0x6c2aa92e sdhci_execute_tuning +EXPORT_SYMBOL_GPL drivers/mmc/host/sdhci 0x7041198e sdhci_enable_sdio_irq +EXPORT_SYMBOL_GPL drivers/mmc/host/sdhci 0x853edee0 sdhci_end_tuning +EXPORT_SYMBOL_GPL drivers/mmc/host/sdhci 0x8a567242 sdhci_suspend_host +EXPORT_SYMBOL_GPL drivers/mmc/host/sdhci 0x903b31e0 __sdhci_read_caps +EXPORT_SYMBOL_GPL drivers/mmc/host/sdhci 0x9f194988 sdhci_cleanup_host +EXPORT_SYMBOL_GPL drivers/mmc/host/sdhci 0xa2898ec6 sdhci_runtime_resume_host +EXPORT_SYMBOL_GPL drivers/mmc/host/sdhci 0xa4698df7 sdhci_free_host +EXPORT_SYMBOL_GPL drivers/mmc/host/sdhci 0xb1f6ac9e sdhci_setup_host +EXPORT_SYMBOL_GPL drivers/mmc/host/sdhci 0xd24c5a48 sdhci_alloc_host +EXPORT_SYMBOL_GPL drivers/mmc/host/sdhci 0xd4a2522e sdhci_start_tuning +EXPORT_SYMBOL_GPL drivers/mmc/host/sdhci 0xd541231f sdhci_enable_v4_mode +EXPORT_SYMBOL_GPL drivers/mmc/host/sdhci 0xd6e9092b sdhci_request +EXPORT_SYMBOL_GPL drivers/mmc/host/sdhci 0xdb62a455 sdhci_set_power +EXPORT_SYMBOL_GPL drivers/mmc/host/sdhci 0xde906d36 sdhci_set_bus_width +EXPORT_SYMBOL_GPL drivers/mmc/host/sdhci 0xe1961ceb sdhci_set_power_and_bus_voltage +EXPORT_SYMBOL_GPL drivers/mmc/host/sdhci 0xe44278b4 sdhci_set_ios +EXPORT_SYMBOL_GPL drivers/mmc/host/sdhci 0xea1c9a75 sdhci_cqe_disable +EXPORT_SYMBOL_GPL drivers/mmc/host/sdhci 0xec5bdbc9 sdhci_cqe_irq +EXPORT_SYMBOL_GPL drivers/mmc/host/sdhci 0xf0343eb8 sdhci_enable_clk +EXPORT_SYMBOL_GPL drivers/mmc/host/sdhci 0xfa56b3d2 sdhci_set_clock +EXPORT_SYMBOL_GPL drivers/mmc/host/sdhci 0xfb622174 sdhci_reset_tuning +EXPORT_SYMBOL_GPL drivers/mmc/host/sdhci-pltfm 0x0814b9f6 sdhci_pltfm_resume +EXPORT_SYMBOL_GPL drivers/mmc/host/sdhci-pltfm 0x2ff977f7 sdhci_pltfm_init +EXPORT_SYMBOL_GPL drivers/mmc/host/sdhci-pltfm 0x4c5ef751 sdhci_pltfm_free +EXPORT_SYMBOL_GPL drivers/mmc/host/sdhci-pltfm 0x665a8256 sdhci_pltfm_suspend +EXPORT_SYMBOL_GPL drivers/mmc/host/sdhci-pltfm 0x7dd00dc6 sdhci_pltfm_pmops +EXPORT_SYMBOL_GPL drivers/mmc/host/sdhci-pltfm 0x7e557aef sdhci_pltfm_clk_get_max_clock +EXPORT_SYMBOL_GPL drivers/mmc/host/sdhci-pltfm 0xc5be308a sdhci_pltfm_register +EXPORT_SYMBOL_GPL drivers/mmc/host/sdhci-pltfm 0xcaba846b sdhci_get_property +EXPORT_SYMBOL_GPL drivers/mmc/host/sdhci-pltfm 0xff563176 sdhci_pltfm_unregister +EXPORT_SYMBOL_GPL drivers/most/most_core 0x0678ad6c most_register_configfs_subsys +EXPORT_SYMBOL_GPL drivers/most/most_core 0x41bcf290 most_start_channel +EXPORT_SYMBOL_GPL drivers/most/most_core 0x56238d5d most_stop_enqueue +EXPORT_SYMBOL_GPL drivers/most/most_core 0x61fbb47a most_deregister_configfs_subsys +EXPORT_SYMBOL_GPL drivers/most/most_core 0x65cd298e most_stop_channel +EXPORT_SYMBOL_GPL drivers/most/most_core 0x6e24a955 most_resume_enqueue +EXPORT_SYMBOL_GPL drivers/most/most_core 0x7e0bf288 most_get_mbo +EXPORT_SYMBOL_GPL drivers/most/most_core 0x8f0b109d most_register_interface +EXPORT_SYMBOL_GPL drivers/most/most_core 0xa2609698 most_deregister_component +EXPORT_SYMBOL_GPL drivers/most/most_core 0xbb140c6d most_deregister_interface +EXPORT_SYMBOL_GPL drivers/most/most_core 0xcee59ad7 channel_has_mbo +EXPORT_SYMBOL_GPL drivers/most/most_core 0xddb53c3a most_put_mbo +EXPORT_SYMBOL_GPL drivers/most/most_core 0xf8975db9 most_register_component +EXPORT_SYMBOL_GPL drivers/most/most_core 0xfb499b32 most_submit_mbo +EXPORT_SYMBOL_GPL drivers/mtd/chips/cfi_cmdset_0001 0x4b508138 cfi_cmdset_0003 +EXPORT_SYMBOL_GPL drivers/mtd/chips/cfi_cmdset_0001 0x7479a4d0 cfi_cmdset_0001 +EXPORT_SYMBOL_GPL drivers/mtd/chips/cfi_cmdset_0001 0xb64ea4ae cfi_cmdset_0200 +EXPORT_SYMBOL_GPL drivers/mtd/chips/cfi_cmdset_0002 0x2a96581c cfi_cmdset_0006 +EXPORT_SYMBOL_GPL drivers/mtd/chips/cfi_cmdset_0002 0x54c413cc cfi_cmdset_0002 +EXPORT_SYMBOL_GPL drivers/mtd/chips/cfi_cmdset_0002 0xa73ddc4a cfi_cmdset_0701 +EXPORT_SYMBOL_GPL drivers/mtd/chips/cfi_cmdset_0020 0xc503754b cfi_cmdset_0020 +EXPORT_SYMBOL_GPL drivers/mtd/chips/cfi_util 0x37c8251f cfi_qry_present +EXPORT_SYMBOL_GPL drivers/mtd/chips/cfi_util 0x3b3d0440 cfi_qry_mode_on +EXPORT_SYMBOL_GPL drivers/mtd/chips/cfi_util 0xf160d9aa cfi_qry_mode_off +EXPORT_SYMBOL_GPL drivers/mtd/hyperbus/hyperbus-core 0xa58c3cf4 hyperbus_unregister_device +EXPORT_SYMBOL_GPL drivers/mtd/hyperbus/hyperbus-core 0xce8fa85c hyperbus_register_device +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0x00b3b771 mtd_ooblayout_ecc +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0x00cd209c mtd_write +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0x013b29b5 mtd_del_partition +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0x08b004c6 mtd_lock +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0x0c483525 get_tree_mtd +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0x0c6f6b49 unregister_mtd_user +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0x112a5291 mtd_ooblayout_get_eccbytes +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0x12a9ad18 mtd_get_unmapped_area +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0x13779d5b mtd_point +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0x1b69f20e mtd_device_parse_register +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0x1fdb8c24 mtd_get_device_size +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0x236d93c6 mtd_unlock +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0x253fa6ed mtd_unpoint +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0x26dea3cc mtd_get_fact_prot_info +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0x31e3a308 mtd_wunit_to_pairing_info +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0x35eb7b0c mtd_write_oob +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0x38b22330 __mtd_next_device +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0x3fce72ad put_mtd_device +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0x47c06960 mtd_ooblayout_free +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0x48e712ff register_mtd_user +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0x4dab3453 mtd_write_user_prot_reg +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0x4ef28663 mtd_ooblayout_set_eccbytes +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0x5140b1e0 mtd_get_user_prot_info +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0x5480b48e __get_mtd_device +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0x570c4418 mtd_ooblayout_find_eccregion +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0x5cd430cd mtd_add_partition +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0x61e21c31 mtd_block_markbad +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0x64bead88 mtd_read +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0x70abaef4 mtd_read_oob +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0x7306e8cb mtd_block_isreserved +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0x77ecba76 mtd_read_fact_prot_reg +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0x8d1ae4d0 get_mtd_device_nm +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0x8d731f66 mtd_is_locked +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0x8e3829ab mtd_writev +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0x9342b0a4 mtd_pairing_info_to_wunit +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0x949caadf __register_mtd_parser +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0xa4aa8971 mtd_ooblayout_count_eccbytes +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0xa69b695a deregister_mtd_parser +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0xa9077497 mtd_lock_user_prot_reg +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0xa965ccf6 mtd_ooblayout_count_freebytes +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0xb4aead73 mtd_ooblayout_get_databytes +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0xb7b37ded __put_mtd_device +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0xbb27667f get_mtd_device +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0xbd91c15b mtd_pairing_groups +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0xc1db8911 mtd_ooblayout_set_databytes +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0xd134896b mtd_block_isbad +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0xd75c3767 mtd_kmalloc_up_to +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0xe076b0f5 mtd_erase +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0xe62c1ea0 mtd_table_mutex +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0xecdba0ab kill_mtd_super +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0xeece0077 mtd_read_user_prot_reg +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0xf2157313 mtd_panic_write +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0xf59038d8 mtd_device_unregister +EXPORT_SYMBOL_GPL drivers/mtd/mtd_blkdevs 0x44658d1e deregister_mtd_blktrans +EXPORT_SYMBOL_GPL drivers/mtd/mtd_blkdevs 0x84f47685 register_mtd_blktrans +EXPORT_SYMBOL_GPL drivers/mtd/mtd_blkdevs 0xbb3db688 mtd_blktrans_cease_background +EXPORT_SYMBOL_GPL drivers/mtd/mtd_blkdevs 0xe90613cd del_mtd_blktrans_dev +EXPORT_SYMBOL_GPL drivers/mtd/mtd_blkdevs 0xed509f9b add_mtd_blktrans_dev +EXPORT_SYMBOL_GPL drivers/mtd/nand/nandcore 0x1ad71354 nanddev_cleanup +EXPORT_SYMBOL_GPL drivers/mtd/nand/nandcore 0x244befc7 nanddev_isbad +EXPORT_SYMBOL_GPL drivers/mtd/nand/nandcore 0x39fb9f32 nanddev_bbt_update +EXPORT_SYMBOL_GPL drivers/mtd/nand/nandcore 0x4cbf3558 nanddev_mtd_max_bad_blocks +EXPORT_SYMBOL_GPL drivers/mtd/nand/nandcore 0x605cfbbc nanddev_init +EXPORT_SYMBOL_GPL drivers/mtd/nand/nandcore 0x84591507 nanddev_bbt_cleanup +EXPORT_SYMBOL_GPL drivers/mtd/nand/nandcore 0xa15dc122 nanddev_markbad +EXPORT_SYMBOL_GPL drivers/mtd/nand/nandcore 0xa6eeead3 nanddev_bbt_set_block_status +EXPORT_SYMBOL_GPL drivers/mtd/nand/nandcore 0xa9c61921 nanddev_erase +EXPORT_SYMBOL_GPL drivers/mtd/nand/nandcore 0xb091c35a nanddev_bbt_init +EXPORT_SYMBOL_GPL drivers/mtd/nand/nandcore 0xcc24c2b4 nanddev_isreserved +EXPORT_SYMBOL_GPL drivers/mtd/nand/nandcore 0xd370cb86 nanddev_mtd_erase +EXPORT_SYMBOL_GPL drivers/mtd/nand/nandcore 0xe7e29063 nanddev_bbt_get_block_status +EXPORT_SYMBOL_GPL drivers/mtd/nand/onenand/onenand 0x0b44e26a onenand_scan +EXPORT_SYMBOL_GPL drivers/mtd/nand/onenand/onenand 0xc0cbc7d9 onenand_release +EXPORT_SYMBOL_GPL drivers/mtd/nand/raw/denali 0x325d1946 denali_chip_init +EXPORT_SYMBOL_GPL drivers/mtd/nand/raw/nand 0x022ff266 nand_decode_ext_id +EXPORT_SYMBOL_GPL drivers/mtd/nand/raw/nand 0x08c15bff nand_read_data_op +EXPORT_SYMBOL_GPL drivers/mtd/nand/raw/nand 0x11091291 nand_extract_bits +EXPORT_SYMBOL_GPL drivers/mtd/nand/raw/nand 0x2040136f nand_select_target +EXPORT_SYMBOL_GPL drivers/mtd/nand/raw/nand 0x2d368c4c nand_subop_get_addr_start_off +EXPORT_SYMBOL_GPL drivers/mtd/nand/raw/nand 0x342f11b8 nand_status_op +EXPORT_SYMBOL_GPL drivers/mtd/nand/raw/nand 0x427b06c0 nand_ooblayout_lp_ops +EXPORT_SYMBOL_GPL drivers/mtd/nand/raw/nand 0x46131c1c nand_prog_page_op +EXPORT_SYMBOL_GPL drivers/mtd/nand/raw/nand 0x4abde47b nand_reset_op +EXPORT_SYMBOL_GPL drivers/mtd/nand/raw/nand 0x4c84d499 nand_wait_ready +EXPORT_SYMBOL_GPL drivers/mtd/nand/raw/nand 0x5632e63d nand_subop_get_num_addr_cyc +EXPORT_SYMBOL_GPL drivers/mtd/nand/raw/nand 0x66b7fd61 nand_prog_page_end_op +EXPORT_SYMBOL_GPL drivers/mtd/nand/raw/nand 0x775b6a4f nand_ecc_choose_conf +EXPORT_SYMBOL_GPL drivers/mtd/nand/raw/nand 0x84b37163 nand_readid_op +EXPORT_SYMBOL_GPL drivers/mtd/nand/raw/nand 0x8616a889 nand_reset +EXPORT_SYMBOL_GPL drivers/mtd/nand/raw/nand 0x8b1acf97 nand_op_parser_exec_op +EXPORT_SYMBOL_GPL drivers/mtd/nand/raw/nand 0x927f8666 nand_read_page_op +EXPORT_SYMBOL_GPL drivers/mtd/nand/raw/nand 0x94718acf nand_gpio_waitrdy +EXPORT_SYMBOL_GPL drivers/mtd/nand/raw/nand 0x9dcac65c nand_write_data_op +EXPORT_SYMBOL_GPL drivers/mtd/nand/raw/nand 0xa3532445 nand_change_write_column_op +EXPORT_SYMBOL_GPL drivers/mtd/nand/raw/nand 0xa782260c nand_read_oob_op +EXPORT_SYMBOL_GPL drivers/mtd/nand/raw/nand 0xadf23a84 nand_cleanup +EXPORT_SYMBOL_GPL drivers/mtd/nand/raw/nand 0xcd20fc3c 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 0xd3edeae7 nand_ooblayout_sp_ops +EXPORT_SYMBOL_GPL drivers/mtd/nand/raw/nand 0xd41ff2ac nand_subop_get_data_start_off +EXPORT_SYMBOL_GPL drivers/mtd/nand/raw/nand 0xd8c5309c nand_deselect_target +EXPORT_SYMBOL_GPL drivers/mtd/nand/raw/nand 0xe1e92881 nand_prog_page_begin_op +EXPORT_SYMBOL_GPL drivers/mtd/nand/raw/nand 0xe751da0e nand_soft_waitrdy +EXPORT_SYMBOL_GPL drivers/mtd/nand/raw/nand 0xed88b9cf nand_erase_op +EXPORT_SYMBOL_GPL drivers/mtd/nand/raw/sm_common 0x7d5def9e sm_register_device +EXPORT_SYMBOL_GPL drivers/mtd/spi-nor/spi-nor 0xa9ea45b7 spi_nor_restore +EXPORT_SYMBOL_GPL drivers/mtd/spi-nor/spi-nor 0xacd9f14c spi_nor_scan +EXPORT_SYMBOL_GPL drivers/mtd/ubi/ubi 0x030b0e59 ubi_leb_read_sg +EXPORT_SYMBOL_GPL drivers/mtd/ubi/ubi 0x06df128d ubi_leb_write +EXPORT_SYMBOL_GPL drivers/mtd/ubi/ubi 0x2407d7ca ubi_is_mapped +EXPORT_SYMBOL_GPL drivers/mtd/ubi/ubi 0x2793f931 ubi_open_volume +EXPORT_SYMBOL_GPL drivers/mtd/ubi/ubi 0x288b212b ubi_open_volume_nm +EXPORT_SYMBOL_GPL drivers/mtd/ubi/ubi 0x357d1471 ubi_do_get_device_info +EXPORT_SYMBOL_GPL drivers/mtd/ubi/ubi 0x38e10c1d ubi_flush +EXPORT_SYMBOL_GPL drivers/mtd/ubi/ubi 0x3e965c72 ubi_leb_map +EXPORT_SYMBOL_GPL drivers/mtd/ubi/ubi 0x42801d20 ubi_sync +EXPORT_SYMBOL_GPL drivers/mtd/ubi/ubi 0x60b2ae9e ubi_get_volume_info +EXPORT_SYMBOL_GPL drivers/mtd/ubi/ubi 0x66011ab6 ubi_get_device_info +EXPORT_SYMBOL_GPL drivers/mtd/ubi/ubi 0x689c0747 ubi_leb_read +EXPORT_SYMBOL_GPL drivers/mtd/ubi/ubi 0x85a8ee76 ubi_unregister_volume_notifier +EXPORT_SYMBOL_GPL drivers/mtd/ubi/ubi 0xae6972b3 ubi_open_volume_path +EXPORT_SYMBOL_GPL drivers/mtd/ubi/ubi 0xbd0ac811 ubi_leb_erase +EXPORT_SYMBOL_GPL drivers/mtd/ubi/ubi 0xd8e301e5 ubi_leb_unmap +EXPORT_SYMBOL_GPL drivers/mtd/ubi/ubi 0xe9cf75d4 ubi_leb_change +EXPORT_SYMBOL_GPL drivers/mtd/ubi/ubi 0xf2322153 ubi_close_volume +EXPORT_SYMBOL_GPL drivers/mtd/ubi/ubi 0xf5ee9ba8 ubi_register_volume_notifier +EXPORT_SYMBOL_GPL drivers/mux/mux-core 0x089d42d5 devm_mux_chip_alloc +EXPORT_SYMBOL_GPL drivers/mux/mux-core 0x20e10be0 mux_chip_alloc +EXPORT_SYMBOL_GPL drivers/mux/mux-core 0x257ff9a0 mux_control_get +EXPORT_SYMBOL_GPL drivers/mux/mux-core 0x2cde9bc6 mux_chip_free +EXPORT_SYMBOL_GPL drivers/mux/mux-core 0x361be0e7 mux_control_deselect +EXPORT_SYMBOL_GPL drivers/mux/mux-core 0x43ecbe0e mux_chip_unregister +EXPORT_SYMBOL_GPL drivers/mux/mux-core 0x50cf4e7b devm_mux_chip_register +EXPORT_SYMBOL_GPL drivers/mux/mux-core 0x520ad8ca mux_control_select +EXPORT_SYMBOL_GPL drivers/mux/mux-core 0xa2c11203 mux_control_try_select +EXPORT_SYMBOL_GPL drivers/mux/mux-core 0xa9c20090 mux_control_states +EXPORT_SYMBOL_GPL drivers/mux/mux-core 0xdaab439d mux_control_put +EXPORT_SYMBOL_GPL drivers/mux/mux-core 0xdc13861b devm_mux_control_get +EXPORT_SYMBOL_GPL drivers/mux/mux-core 0xe1f3fc71 mux_chip_register +EXPORT_SYMBOL_GPL drivers/net/arcnet/arcnet 0x46d62927 arcnet_led_event +EXPORT_SYMBOL_GPL drivers/net/arcnet/arcnet 0xf7c2927b devm_arcnet_led_init +EXPORT_SYMBOL_GPL drivers/net/bareudp 0xb926d4e2 bareudp_dev_create +EXPORT_SYMBOL_GPL drivers/net/can/c_can/c_can 0x088d838a free_c_can_dev +EXPORT_SYMBOL_GPL drivers/net/can/c_can/c_can 0x26485a7f c_can_power_up +EXPORT_SYMBOL_GPL drivers/net/can/c_can/c_can 0x628ca78a register_c_can_dev +EXPORT_SYMBOL_GPL drivers/net/can/c_can/c_can 0xa1c6dae3 alloc_c_can_dev +EXPORT_SYMBOL_GPL drivers/net/can/c_can/c_can 0xa273977c c_can_power_down +EXPORT_SYMBOL_GPL drivers/net/can/c_can/c_can 0xf43c7680 unregister_c_can_dev +EXPORT_SYMBOL_GPL drivers/net/can/can-dev 0x073bf2ea can_rx_offload_enable +EXPORT_SYMBOL_GPL drivers/net/can/can-dev 0x09f6acf6 unregister_candev +EXPORT_SYMBOL_GPL drivers/net/can/can-dev 0x16081ffb can_dlc2len +EXPORT_SYMBOL_GPL drivers/net/can/can-dev 0x16e29a38 can_rx_offload_get_echo_skb +EXPORT_SYMBOL_GPL drivers/net/can/can-dev 0x2127e21e open_candev +EXPORT_SYMBOL_GPL drivers/net/can/can-dev 0x2eeba35e free_candev +EXPORT_SYMBOL_GPL drivers/net/can/can-dev 0x391a40ce can_change_mtu +EXPORT_SYMBOL_GPL drivers/net/can/can-dev 0x46fd7117 register_candev +EXPORT_SYMBOL_GPL drivers/net/can/can-dev 0x472d67d5 alloc_can_skb +EXPORT_SYMBOL_GPL drivers/net/can/can-dev 0x4800a713 can_change_state +EXPORT_SYMBOL_GPL drivers/net/can/can-dev 0x4b28402f close_candev +EXPORT_SYMBOL_GPL drivers/net/can/can-dev 0x608d9312 can_rx_offload_queue_tail +EXPORT_SYMBOL_GPL drivers/net/can/can-dev 0x61a59c67 can_bus_off +EXPORT_SYMBOL_GPL drivers/net/can/can-dev 0x84c6e3be safe_candev_priv +EXPORT_SYMBOL_GPL drivers/net/can/can-dev 0x86fc4678 can_rx_offload_add_timestamp +EXPORT_SYMBOL_GPL drivers/net/can/can-dev 0x8762619a can_len2dlc +EXPORT_SYMBOL_GPL drivers/net/can/can-dev 0x89637984 can_rx_offload_del +EXPORT_SYMBOL_GPL drivers/net/can/can-dev 0x90c24ee7 can_free_echo_skb +EXPORT_SYMBOL_GPL drivers/net/can/can-dev 0xa6ce74c9 can_rx_offload_add_fifo +EXPORT_SYMBOL_GPL drivers/net/can/can-dev 0xb74f1276 can_put_echo_skb +EXPORT_SYMBOL_GPL drivers/net/can/can-dev 0xc07de56c alloc_can_err_skb +EXPORT_SYMBOL_GPL drivers/net/can/can-dev 0xc42b8f98 alloc_candev_mqs +EXPORT_SYMBOL_GPL drivers/net/can/can-dev 0xcf5964e9 can_get_echo_skb +EXPORT_SYMBOL_GPL drivers/net/can/can-dev 0xd09d0e08 can_rx_offload_irq_offload_fifo +EXPORT_SYMBOL_GPL drivers/net/can/can-dev 0xde6aad20 can_rx_offload_queue_sorted +EXPORT_SYMBOL_GPL drivers/net/can/can-dev 0xe4fbe733 alloc_canfd_skb +EXPORT_SYMBOL_GPL drivers/net/can/can-dev 0xfa6541e9 can_rx_offload_irq_offload_timestamp +EXPORT_SYMBOL_GPL drivers/net/can/cc770/cc770 0xa72c6dd2 free_cc770dev +EXPORT_SYMBOL_GPL drivers/net/can/cc770/cc770 0xc21bc1f0 unregister_cc770dev +EXPORT_SYMBOL_GPL drivers/net/can/cc770/cc770 0xc4ab8744 register_cc770dev +EXPORT_SYMBOL_GPL drivers/net/can/cc770/cc770 0xe2c2ad7f alloc_cc770dev +EXPORT_SYMBOL_GPL drivers/net/can/m_can/m_can 0x47a02b4a m_can_class_get_clocks +EXPORT_SYMBOL_GPL drivers/net/can/m_can/m_can 0x66a93fa0 m_can_class_unregister +EXPORT_SYMBOL_GPL drivers/net/can/m_can/m_can 0x752fa4d2 m_can_class_free_dev +EXPORT_SYMBOL_GPL drivers/net/can/m_can/m_can 0xab9ffc2b m_can_class_register +EXPORT_SYMBOL_GPL drivers/net/can/m_can/m_can 0xbf9cde55 m_can_class_allocate_dev +EXPORT_SYMBOL_GPL drivers/net/can/m_can/m_can 0xe47a3d2d m_can_class_resume +EXPORT_SYMBOL_GPL drivers/net/can/m_can/m_can 0xe7bbf39e m_can_init_ram +EXPORT_SYMBOL_GPL drivers/net/can/m_can/m_can 0xede04907 m_can_class_suspend +EXPORT_SYMBOL_GPL drivers/net/can/sja1000/sja1000 0x0d0e3724 register_sja1000dev +EXPORT_SYMBOL_GPL drivers/net/can/sja1000/sja1000 0x1218be8d unregister_sja1000dev +EXPORT_SYMBOL_GPL drivers/net/can/sja1000/sja1000 0x31cea864 alloc_sja1000dev +EXPORT_SYMBOL_GPL drivers/net/can/sja1000/sja1000 0x49ebd0d2 sja1000_interrupt +EXPORT_SYMBOL_GPL drivers/net/can/sja1000/sja1000 0x6aca7259 free_sja1000dev +EXPORT_SYMBOL_GPL drivers/net/dsa/lan9303-core 0x9fc7c8cb lan9303_indirect_phy_ops +EXPORT_SYMBOL_GPL drivers/net/dsa/microchip/ksz_common 0x0e7d0140 ksz_port_mdb_del +EXPORT_SYMBOL_GPL drivers/net/dsa/microchip/ksz_common 0x11d57d61 ksz_disable_port +EXPORT_SYMBOL_GPL drivers/net/dsa/microchip/ksz_common 0x15a66b2c ksz_init_mib_timer +EXPORT_SYMBOL_GPL drivers/net/dsa/microchip/ksz_common 0x1e689419 ksz_port_vlan_prepare +EXPORT_SYMBOL_GPL drivers/net/dsa/microchip/ksz_common 0x230f0deb ksz_adjust_link +EXPORT_SYMBOL_GPL drivers/net/dsa/microchip/ksz_common 0x4721a0d1 ksz_phy_read16 +EXPORT_SYMBOL_GPL drivers/net/dsa/microchip/ksz_common 0x799849e6 ksz_get_ethtool_stats +EXPORT_SYMBOL_GPL drivers/net/dsa/microchip/ksz_common 0x82826e9b ksz_port_bridge_leave +EXPORT_SYMBOL_GPL drivers/net/dsa/microchip/ksz_common 0x86e794ee ksz_sset_count +EXPORT_SYMBOL_GPL drivers/net/dsa/microchip/ksz_common 0x97502ed9 ksz_port_fdb_dump +EXPORT_SYMBOL_GPL drivers/net/dsa/microchip/ksz_common 0xa4c2ca0e ksz_enable_port +EXPORT_SYMBOL_GPL drivers/net/dsa/microchip/ksz_common 0xaf432981 ksz_port_mdb_add +EXPORT_SYMBOL_GPL drivers/net/dsa/microchip/ksz_common 0xc6c3a114 ksz_phy_write16 +EXPORT_SYMBOL_GPL drivers/net/dsa/microchip/ksz_common 0xdc627356 ksz_port_fast_age +EXPORT_SYMBOL_GPL drivers/net/dsa/microchip/ksz_common 0xe4fb1ae1 ksz_update_port_member +EXPORT_SYMBOL_GPL drivers/net/dsa/microchip/ksz_common 0xefe88617 ksz_port_mdb_prepare +EXPORT_SYMBOL_GPL drivers/net/dsa/microchip/ksz_common 0xf59e7ecc ksz_port_bridge_join +EXPORT_SYMBOL_GPL drivers/net/dsa/realtek-smi 0x09096325 rtl8366_vlan_del +EXPORT_SYMBOL_GPL drivers/net/dsa/realtek-smi 0x0fdc5822 rtl8366_mc_is_used +EXPORT_SYMBOL_GPL drivers/net/dsa/realtek-smi 0x20d70d04 rtl8366_enable_vlan4k +EXPORT_SYMBOL_GPL drivers/net/dsa/realtek-smi 0x2ac96bbd rtl8366_set_vlan +EXPORT_SYMBOL_GPL drivers/net/dsa/realtek-smi 0x4c85106f rtl8366_get_strings +EXPORT_SYMBOL_GPL drivers/net/dsa/realtek-smi 0x53cdd2bb rtl8366_vlan_filtering +EXPORT_SYMBOL_GPL drivers/net/dsa/realtek-smi 0x5d1c32b0 rtl8366_enable_vlan +EXPORT_SYMBOL_GPL drivers/net/dsa/realtek-smi 0x62a03c40 rtl8366_set_pvid +EXPORT_SYMBOL_GPL drivers/net/dsa/realtek-smi 0x77492dd1 rtl8366_init_vlan +EXPORT_SYMBOL_GPL drivers/net/dsa/realtek-smi 0x7a114dbd realtek_smi_write_reg_noack +EXPORT_SYMBOL_GPL drivers/net/dsa/realtek-smi 0x83364b3e rtl8366_get_sset_count +EXPORT_SYMBOL_GPL drivers/net/dsa/realtek-smi 0xb6020e5b rtl8366_get_ethtool_stats +EXPORT_SYMBOL_GPL drivers/net/dsa/realtek-smi 0xc74719dd rtl8366_reset_vlan +EXPORT_SYMBOL_GPL drivers/net/dsa/realtek-smi 0xca6cc0c5 rtl8366rb_variant +EXPORT_SYMBOL_GPL drivers/net/dsa/realtek-smi 0xe38f177b rtl8366_vlan_prepare +EXPORT_SYMBOL_GPL drivers/net/dsa/realtek-smi 0xe5cbaf2b rtl8366_vlan_add +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x06f7d01d __mlx4_cmd +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x0cc55688 mlx4_get_admin_guid +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x0f08f7b1 mlx4_wol_read +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x105668ba mlx4_mr_hw_write_mpt +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x10649d59 mlx4_read_clock +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x168775c6 mlx4_map_sw_to_hw_steering_mode +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x19f06bd8 mlx4_replace_zero_macs +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x1e3ffd96 mlx4_mw_enable +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x21d73952 mlx4_xrcd_alloc +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x23679aa0 mlx4_wol_write +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x2b7a3101 mlx4_unicast_attach +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x2dd48bad mlx4_set_vf_link_state +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x2fcdb661 mlx4_register_vlan +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x310138d5 mlx4_cq_resize +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x313d9328 mlx4_free_cmd_mailbox +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x39ab90a8 __mlx4_replace_mac +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x3b5c1462 mlx4_mr_hw_change_pd +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x3ba5cd45 mlx4_srq_free +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x3c570757 mlx4_multicast_detach +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x3de91180 mlx4_multicast_promisc_remove +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x3f78a011 mlx4_set_admin_guid +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x44bc6e8f mlx4_counter_free +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x44c7860d mlx4_vf_get_enable_smi_admin +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x4753bfa7 mlx4_bond +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x489814f9 mlx4_find_cached_mac +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x4a0cb901 mlx4_qp_release_range +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x4a0d41df mlx4_flow_steer_promisc_add +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x4dffb50a mlx4_pd_alloc +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x5074f1c0 mlx4_db_alloc +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x531965db mlx4_get_protocol_dev +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x5604702f mlx4_uar_alloc +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x56068a0c mlx4_vf_smi_enabled +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x561060b2 mlx4_qp_to_ready +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x596acfe2 mlx4_FLOW_STEERING_IB_UC_QP_RANGE +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x5b27f1f5 mlx4_flow_detach +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x5c5174b2 mlx4_get_vf_stats +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x5cbc8442 mlx4_unbond +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x5dc24b75 mlx4_counter_alloc +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x6108a33d mlx4_find_cached_vlan +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x61588efe mlx4_get_base_gid_ix +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x62b1a3d4 mlx4_set_vf_rate +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x65983927 mlx4_qp_remove +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x667e20dd mlx4_unregister_vlan +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x67d85993 mlx4_unicast_promisc_remove +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x6b2433fc mlx4_INIT_PORT +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x6cc5dde6 mlx4_get_slave_default_vlan +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x70339e9b mlx4_slave_convert_port +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x70c15cc4 mlx4_SYNC_TPT +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x710bdaca mlx4_unregister_mac +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x74b66018 mlx4_srq_lookup +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x7c7daa3f mlx4_xrcd_free +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x7fc76711 mlx4_qp_reserve_range +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x8467ffbc mlx4_phys_to_slaves_pport +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x85297541 mlx4_port_map_set +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x85e213c0 mlx4_config_vxlan_port +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x8641ba12 mlx4_buf_free +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x89c56b93 __mlx4_unregister_mac +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x8c7c0ef8 mlx4_flow_steer_promisc_remove +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x909bd5d8 mlx4_get_default_counter_index +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x9158ed51 mlx4_phys_to_slaves_pport_actv +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x91b7fdf0 mlx4_mr_rereg_mem_write +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x93777e3e mlx4_mr_hw_change_access +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x96e7a495 mlx4_srq_arm +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x9974bdd1 mlx4_register_mac +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x9adda5fa mlx4_mr_hw_get_mpt +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x9b089f69 mlx4_free_hwq_res +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x9b28d63e mlx4_mw_alloc +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x9b302568 mlx4_get_devlink_port +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x9b58b26a mlx4_hw_rule_sz +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x9d77c445 mlx4_mtt_addr +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xa05e1672 mlx4_mr_rereg_mem_cleanup +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xa0cfaf17 mlx4_get_internal_clock_params +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xa112ce2c mlx4_uar_free +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xa3cf396a __mlx4_register_mac +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xa4b87163 mlx4_mr_alloc +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xa576b30d mlx4_buf_alloc +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xa7a50cd9 mlx4_set_vf_mac +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xa8cddc4c mlx4_cq_alloc +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xabeb9a78 mlx4_bf_free +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xac14f5d4 mlx4_mtt_cleanup +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xaf6babd2 mlx4_unicast_detach +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xafa43dd3 mlx4_mtt_init +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xb23735cc mlx4_mr_enable +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xb2a4f810 mlx4_get_base_qpn +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xb2d1c3dd mlx4_qp_free +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xb3c76174 mlx4_get_counter_stats +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xb53a311c mlx4_ACCESS_PTYS_REG +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xb5e40c45 mlx4_unicast_promisc_add +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xb80a7d0a mlx4_pd_free +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xb8538e47 mlx4_alloc_cmd_mailbox +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xbcad888b mlx4_srq_query +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xbd3d2f6f mlx4_alloc_hwq_res +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xbe8b93a7 mlx4_srq_alloc +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xc5fe6005 mlx4_unregister_interface +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xc65ab123 mlx4_buf_write_mtt +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xc6b5aed5 mlx4_multicast_attach +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xc72ddd49 mlx4_phys_to_slave_port +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xc88b0f2a mlx4_mr_hw_put_mpt +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xc937a575 mlx4_mw_free +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xcb6d15db mlx4_vf_set_enable_smi_admin +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xcc1a86b6 mlx4_config_dev_retrieval +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xcd8d27c7 mlx4_get_vf_config +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xd4ab3b88 mlx4_CLOSE_PORT +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xdbefa145 mlx4_flow_attach +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xdccba820 mlx4_set_vf_vlan +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xdd390ad9 mlx4_multicast_promisc_add +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xdf35bd05 mlx4_cq_free +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xdf859f4d mlx4_cq_modify +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xe0822641 mlx4_mr_free +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xe157ed35 mlx4_qp_query +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xe47e097c mlx4_register_interface +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xe8431ad4 mlx4_map_sw_to_hw_steering_id +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xead68873 mlx4_write_mtt +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xee4956ad mlx4_qp_alloc +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xf11da539 mlx4_config_roce_v2_port +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xf16d9df6 mlx4_update_qp +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xf1b9360c mlx4_get_active_ports +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xf35e3ffe mlx4_bf_alloc +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xf49c14be mlx4_db_free +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xfa2fe8e2 mlx4_set_vf_spoofchk +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xfa384ce5 mlx4_qp_modify +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x02552e61 mlx5_nic_vport_unaffiliate_multiport +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 0x072bd575 mlx5_accel_esp_modify_xfrm +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x104914db mlx5_query_min_inline +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x107e4d81 mlx5_query_hca_vport_system_image_guid +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x12054eb7 mlx5_accel_esp_destroy_xfrm +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x14cf3daa mlx5_set_port_pause +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x159e94d7 mlx5_dm_sw_icm_dealloc +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x1d2800a9 mlx5_query_port_pfc +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x1e6e54cb mlx5_query_nic_vport_node_guid +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x2149545b mlx5_query_port_tc_bw_alloc +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x22591fd0 mlx5_nic_vport_update_local_lb +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x2434ce6b mlx5_query_port_oper_mtu +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x2918a05a mlx5_core_modify_hca_vport_context +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x3471184e mlx5_buf_free +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x3500e8b9 mlx5_query_port_pause +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x35152b2c mlx5_accel_esp_create_xfrm +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x3aebdfbc mlx5_query_nic_vport_system_image_guid +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x405efd81 mlx5_set_port_mtu +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x41038dce mlx5_nic_vport_query_local_lb +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x435cff87 mlx5_db_free +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x4499db8e mlx5_query_nic_system_image_guid +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x47b309f1 mlx5_modify_nic_vport_promisc +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x494726ec mlx5_query_mac_address +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x49961174 mlx5_db_alloc_node +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x52d74eb3 mlx5_nic_vport_enable_roce +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x5479e808 mlx5_dm_sw_icm_alloc +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x548333a7 mlx5_query_module_eeprom +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x61567508 mlx5_query_port_prio_tc +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x65d2d240 mlx5_modify_port_ets_rate_limit +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x66868af3 mlx5_modify_nic_vport_vlans +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x6abe65d7 mlx5_query_nic_vport_mac_list +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x768ffc05 mlx5_core_query_ib_ppcnt +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x7885067c mlx5_frag_buf_alloc_node +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x7b71c715 mlx5_core_reserved_gids_count +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x7fe971c0 mlx5_frag_buf_free +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x86026e1b mlx5_modify_nic_vport_mtu +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x8771637d mlx5_query_port_vl_hw_cap +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x8a575f04 mlx5_query_hca_vport_gid +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x8b5f4931 mlx5_core_query_sq_state +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x90afdf3c mlx5_core_query_vport_counter +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x99d04407 mlx5_query_nic_vport_min_inline +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x9b3dea21 mlx5_set_port_pfc +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xa1ee031f mlx5_query_hca_vport_context +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xa75f49d6 mlx5_fill_page_array +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xab2edbe4 mlx5_query_hca_vport_pkey +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xad94d3cf mlx5_query_hca_vport_node_guid +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xae2b95e6 mlx5_set_port_wol +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xb006d2ac mlx5_set_port_prio_tc +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xb0156848 mlx5_modify_nic_vport_mac_list +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xb5bc1bc5 mlx5_set_port_tc_group +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xb68c9d3b mlx5_nic_vport_affiliate_multiport +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xb7976515 mlx5_query_port_max_mtu +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xb7b194a0 mlx5_eswitch_mode +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xb7e6ba6c mlx5_query_port_wol +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xba743fbd mlx5_set_port_caps +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xbad52a9f mlx5_query_port_ets_rate_limit +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xbe12f37f mlx5_db_alloc +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xc10db28d mlx5_query_port_tc_group +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xc4bc1f56 mlx5_query_port_link_width_oper +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xc6832fa5 mlx5_toggle_port_link +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xcfa4fed8 mlx5_set_port_tc_bw_alloc +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xd0fcc12f mlx5_query_nic_vport_mac_address +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xd19fb59c mlx5_query_nic_vport_promisc +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xd212255b mlx5_eswitch_get_total_vports +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xd7ae8f7d mlx5_query_port_ptys +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xd7d7d8a1 mlx5_set_port_admin_status +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xdd6ab247 mlx5_query_nic_vport_qkey_viol_cntr +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xdf908de2 mlx5_core_access_reg +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xe5f7311b mlx5_query_port_admin_status +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xf5cf591d mlx5_accel_ipsec_device_caps +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xf61b997d mlx5_query_nic_vport_mtu +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xfdcdf8b3 mlx5_modify_nic_vport_mac_address +EXPORT_SYMBOL_GPL drivers/net/ethernet/microchip/encx24j600-regmap 0x42e462c2 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_common 0x5cec39f5 ocelot_cls_flower_destroy +EXPORT_SYMBOL_GPL drivers/net/ethernet/mscc/mscc_ocelot_common 0x82db68a9 ocelot_cls_flower_replace +EXPORT_SYMBOL_GPL drivers/net/ethernet/mscc/mscc_ocelot_common 0xafe16975 ocelot_cls_flower_stats +EXPORT_SYMBOL_GPL drivers/net/ethernet/stmicro/stmmac/stmmac 0x03d4c43b stmmac_suspend +EXPORT_SYMBOL_GPL drivers/net/ethernet/stmicro/stmmac/stmmac 0x4f3c0765 stmmac_dvr_probe +EXPORT_SYMBOL_GPL drivers/net/ethernet/stmicro/stmmac/stmmac 0x901e27cb stmmac_dvr_remove +EXPORT_SYMBOL_GPL drivers/net/ethernet/stmicro/stmmac/stmmac 0x92d778bb stmmac_get_mac_addr +EXPORT_SYMBOL_GPL drivers/net/ethernet/stmicro/stmmac/stmmac 0xd1cc24db stmmac_set_mac_addr +EXPORT_SYMBOL_GPL drivers/net/ethernet/stmicro/stmmac/stmmac 0xd2db26dd stmmac_resume +EXPORT_SYMBOL_GPL drivers/net/ethernet/stmicro/stmmac/stmmac-platform 0x1434a14f stmmac_pltfr_remove +EXPORT_SYMBOL_GPL drivers/net/ethernet/stmicro/stmmac/stmmac-platform 0x16ceb72f stmmac_remove_config_dt +EXPORT_SYMBOL_GPL drivers/net/ethernet/stmicro/stmmac/stmmac-platform 0x91b0dc08 stmmac_probe_config_dt +EXPORT_SYMBOL_GPL drivers/net/ethernet/stmicro/stmmac/stmmac-platform 0xc59a95b5 stmmac_get_platform_resources +EXPORT_SYMBOL_GPL drivers/net/ethernet/stmicro/stmmac/stmmac-platform 0xd17031da stmmac_pltfr_pm_ops +EXPORT_SYMBOL_GPL drivers/net/ethernet/wiznet/w5100 0x0ed23f66 w5100_remove +EXPORT_SYMBOL_GPL drivers/net/ethernet/wiznet/w5100 0x54d7db48 w5100_probe +EXPORT_SYMBOL_GPL drivers/net/ethernet/wiznet/w5100 0x94f9f7ba w5100_ops_priv +EXPORT_SYMBOL_GPL drivers/net/ethernet/wiznet/w5100 0xde808172 w5100_pm_ops +EXPORT_SYMBOL_GPL drivers/net/geneve 0x7f723104 geneve_dev_create_fb +EXPORT_SYMBOL_GPL drivers/net/ipvlan/ipvlan 0x35acc76a ipvlan_link_register +EXPORT_SYMBOL_GPL drivers/net/ipvlan/ipvlan 0x80ac5b3e ipvlan_link_new +EXPORT_SYMBOL_GPL drivers/net/ipvlan/ipvlan 0x9dff6c76 ipvlan_link_setup +EXPORT_SYMBOL_GPL drivers/net/ipvlan/ipvlan 0xc169da58 ipvlan_count_rx +EXPORT_SYMBOL_GPL drivers/net/ipvlan/ipvlan 0xe23f008b ipvlan_link_delete +EXPORT_SYMBOL_GPL drivers/net/macsec 0xd6a0c93f macsec_pn_wrapped +EXPORT_SYMBOL_GPL drivers/net/macvlan 0x11fdc254 macvlan_common_setup +EXPORT_SYMBOL_GPL drivers/net/macvlan 0xa6781efa macvlan_common_newlink +EXPORT_SYMBOL_GPL drivers/net/macvlan 0xc7750293 macvlan_dellink +EXPORT_SYMBOL_GPL drivers/net/macvlan 0xe57560ce macvlan_link_register +EXPORT_SYMBOL_GPL drivers/net/net_failover 0x26e00cc2 net_failover_destroy +EXPORT_SYMBOL_GPL drivers/net/net_failover 0xb77bc062 net_failover_create +EXPORT_SYMBOL_GPL drivers/net/phy/bcm-phy-lib 0x02463dc1 bcm_phy_enable_jumbo +EXPORT_SYMBOL_GPL drivers/net/phy/bcm-phy-lib 0x043ae456 bcm_phy_r_rc_cal_reset +EXPORT_SYMBOL_GPL drivers/net/phy/bcm-phy-lib 0x1df780cd bcm_phy_downshift_get +EXPORT_SYMBOL_GPL drivers/net/phy/bcm-phy-lib 0x1e4c79cf bcm_phy_get_stats +EXPORT_SYMBOL_GPL drivers/net/phy/bcm-phy-lib 0x205ddd0e __bcm_phy_read_rdb +EXPORT_SYMBOL_GPL drivers/net/phy/bcm-phy-lib 0x279610fc bcm_phy_get_sset_count +EXPORT_SYMBOL_GPL drivers/net/phy/bcm-phy-lib 0x318ebea9 bcm_phy_config_intr +EXPORT_SYMBOL_GPL drivers/net/phy/bcm-phy-lib 0x35b1ba9a bcm54xx_auxctl_read +EXPORT_SYMBOL_GPL drivers/net/phy/bcm-phy-lib 0x43911772 bcm_phy_cable_test_get_status_rdb +EXPORT_SYMBOL_GPL drivers/net/phy/bcm-phy-lib 0x4a4641a4 __bcm_phy_modify_exp +EXPORT_SYMBOL_GPL drivers/net/phy/bcm-phy-lib 0x4a643317 __bcm_phy_read_exp +EXPORT_SYMBOL_GPL drivers/net/phy/bcm-phy-lib 0x4ce4d3fc bcm_phy_downshift_set +EXPORT_SYMBOL_GPL drivers/net/phy/bcm-phy-lib 0x4e6c3f0b bcm_phy_write_misc +EXPORT_SYMBOL_GPL drivers/net/phy/bcm-phy-lib 0x4f6c0d26 bcm_phy_cable_test_start +EXPORT_SYMBOL_GPL drivers/net/phy/bcm-phy-lib 0x58e4887f bcm_phy_modify_rdb +EXPORT_SYMBOL_GPL drivers/net/phy/bcm-phy-lib 0x726dba44 bcm_phy_set_eee +EXPORT_SYMBOL_GPL drivers/net/phy/bcm-phy-lib 0x7a0a5fca bcm_phy_read_shadow +EXPORT_SYMBOL_GPL drivers/net/phy/bcm-phy-lib 0x7f4583ea bcm_phy_get_strings +EXPORT_SYMBOL_GPL drivers/net/phy/bcm-phy-lib 0x88b51c4e bcm_phy_write_shadow +EXPORT_SYMBOL_GPL drivers/net/phy/bcm-phy-lib 0x8ef51bdd bcm_phy_write_rdb +EXPORT_SYMBOL_GPL drivers/net/phy/bcm-phy-lib 0x9bca2099 bcm_phy_28nm_a0b0_afe_config_init +EXPORT_SYMBOL_GPL drivers/net/phy/bcm-phy-lib 0x9f545826 bcm_phy_cable_test_get_status +EXPORT_SYMBOL_GPL drivers/net/phy/bcm-phy-lib 0xa0d6c440 __bcm_phy_write_rdb +EXPORT_SYMBOL_GPL drivers/net/phy/bcm-phy-lib 0xa4bfe788 bcm_phy_read_misc +EXPORT_SYMBOL_GPL drivers/net/phy/bcm-phy-lib 0xaf862bef bcm_phy_ack_intr +EXPORT_SYMBOL_GPL drivers/net/phy/bcm-phy-lib 0xb9bcca14 bcm_phy_read_exp +EXPORT_SYMBOL_GPL drivers/net/phy/bcm-phy-lib 0xd385240d bcm_phy_read_rdb +EXPORT_SYMBOL_GPL drivers/net/phy/bcm-phy-lib 0xdb881770 __bcm_phy_write_exp +EXPORT_SYMBOL_GPL drivers/net/phy/bcm-phy-lib 0xe1bd757b bcm_phy_modify_exp +EXPORT_SYMBOL_GPL drivers/net/phy/bcm-phy-lib 0xebf9f344 bcm_phy_enable_apd +EXPORT_SYMBOL_GPL drivers/net/phy/bcm-phy-lib 0xf0448065 bcm_phy_cable_test_start_rdb +EXPORT_SYMBOL_GPL drivers/net/phy/bcm-phy-lib 0xf31fbca0 __bcm_phy_modify_rdb +EXPORT_SYMBOL_GPL drivers/net/phy/bcm-phy-lib 0xf5abc8ed bcm_phy_write_exp +EXPORT_SYMBOL_GPL drivers/net/phy/mdio-i2c 0x0200223f mdio_i2c_alloc +EXPORT_SYMBOL_GPL drivers/net/phy/mdio-xpcs 0xc994434a mdio_xpcs_get_ops +EXPORT_SYMBOL_GPL drivers/net/phy/phylink 0x08213956 phylink_ethtool_get_wol +EXPORT_SYMBOL_GPL drivers/net/phy/phylink 0x1162b00e phylink_ethtool_ksettings_get +EXPORT_SYMBOL_GPL drivers/net/phy/phylink 0x12135396 phylink_mac_change +EXPORT_SYMBOL_GPL drivers/net/phy/phylink 0x15c4e3e2 phylink_ethtool_set_pauseparam +EXPORT_SYMBOL_GPL drivers/net/phy/phylink 0x2c8e28ee phylink_ethtool_get_eee +EXPORT_SYMBOL_GPL drivers/net/phy/phylink 0x4779e6fc phylink_mii_c22_pcs_set_advertisement +EXPORT_SYMBOL_GPL drivers/net/phy/phylink 0x5106b4ab phylink_connect_phy +EXPORT_SYMBOL_GPL drivers/net/phy/phylink 0x518a2661 phylink_add_pcs +EXPORT_SYMBOL_GPL drivers/net/phy/phylink 0x57727285 phylink_ethtool_set_eee +EXPORT_SYMBOL_GPL drivers/net/phy/phylink 0x5967d2d9 phylink_create +EXPORT_SYMBOL_GPL drivers/net/phy/phylink 0x5fb6b35f phylink_helper_basex_speed +EXPORT_SYMBOL_GPL drivers/net/phy/phylink 0x62104126 phylink_ethtool_set_wol +EXPORT_SYMBOL_GPL drivers/net/phy/phylink 0x6fa426d2 phylink_ethtool_nway_reset +EXPORT_SYMBOL_GPL drivers/net/phy/phylink 0x7e414812 phylink_mii_c22_pcs_an_restart +EXPORT_SYMBOL_GPL drivers/net/phy/phylink 0x825c7340 phylink_get_eee_err +EXPORT_SYMBOL_GPL drivers/net/phy/phylink 0x86ff345f phylink_ethtool_ksettings_set +EXPORT_SYMBOL_GPL drivers/net/phy/phylink 0x911fcd6c phylink_start +EXPORT_SYMBOL_GPL drivers/net/phy/phylink 0x983276da phylink_disconnect_phy +EXPORT_SYMBOL_GPL drivers/net/phy/phylink 0xa9d011f2 phylink_mii_c45_pcs_get_state +EXPORT_SYMBOL_GPL drivers/net/phy/phylink 0xc1d15a4c phylink_set_port_modes +EXPORT_SYMBOL_GPL drivers/net/phy/phylink 0xc4f4d691 phylink_of_phy_connect +EXPORT_SYMBOL_GPL drivers/net/phy/phylink 0xd7d9b8b8 phylink_mii_c22_pcs_get_state +EXPORT_SYMBOL_GPL drivers/net/phy/phylink 0xdcb0a2c0 phylink_stop +EXPORT_SYMBOL_GPL drivers/net/phy/phylink 0xde66f4a7 phylink_mii_ioctl +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 0xf8fe5642 phylink_ethtool_get_pauseparam +EXPORT_SYMBOL_GPL drivers/net/tap 0x0fe97778 tap_del_queues +EXPORT_SYMBOL_GPL drivers/net/tap 0x1d2ba92a tap_destroy_cdev +EXPORT_SYMBOL_GPL drivers/net/tap 0x4342cdec tap_get_minor +EXPORT_SYMBOL_GPL drivers/net/tap 0x4d1f284e tap_create_cdev +EXPORT_SYMBOL_GPL drivers/net/tap 0x7b60f219 tap_handle_frame +EXPORT_SYMBOL_GPL drivers/net/tap 0x8487ceff tap_free_minor +EXPORT_SYMBOL_GPL drivers/net/tap 0x8dca0399 tap_get_ptr_ring +EXPORT_SYMBOL_GPL drivers/net/tap 0xa495eeb9 tap_get_socket +EXPORT_SYMBOL_GPL drivers/net/tap 0xc6c8eaa2 tap_queue_resize +EXPORT_SYMBOL_GPL drivers/net/usb/cdc_ether 0x27464ad9 usbnet_cdc_status +EXPORT_SYMBOL_GPL drivers/net/usb/cdc_ether 0x99d35bde usbnet_ether_cdc_bind +EXPORT_SYMBOL_GPL drivers/net/usb/cdc_ether 0xce4006f0 usbnet_cdc_unbind +EXPORT_SYMBOL_GPL drivers/net/usb/cdc_ether 0xf6b27cae usbnet_generic_cdc_bind +EXPORT_SYMBOL_GPL drivers/net/usb/cdc_ether 0xf98a8b0a usbnet_cdc_bind +EXPORT_SYMBOL_GPL drivers/net/usb/cdc_ncm 0x0274d9dd cdc_ncm_rx_verify_nth16 +EXPORT_SYMBOL_GPL drivers/net/usb/cdc_ncm 0x02e6897f cdc_ncm_rx_verify_nth32 +EXPORT_SYMBOL_GPL drivers/net/usb/cdc_ncm 0x271d06f4 cdc_ncm_rx_fixup +EXPORT_SYMBOL_GPL drivers/net/usb/cdc_ncm 0x4261ddd3 cdc_ncm_change_mtu +EXPORT_SYMBOL_GPL drivers/net/usb/cdc_ncm 0x4c19fae6 cdc_ncm_tx_fixup +EXPORT_SYMBOL_GPL drivers/net/usb/cdc_ncm 0x4f550251 cdc_ncm_fill_tx_frame +EXPORT_SYMBOL_GPL drivers/net/usb/cdc_ncm 0x6b817b85 cdc_ncm_rx_verify_ndp32 +EXPORT_SYMBOL_GPL drivers/net/usb/cdc_ncm 0x76bd6ab9 cdc_ncm_bind_common +EXPORT_SYMBOL_GPL drivers/net/usb/cdc_ncm 0x7ad63926 cdc_ncm_rx_verify_ndp16 +EXPORT_SYMBOL_GPL drivers/net/usb/cdc_ncm 0x985f20e5 cdc_ncm_unbind +EXPORT_SYMBOL_GPL drivers/net/usb/cdc_ncm 0xd119a690 cdc_ncm_select_altsetting +EXPORT_SYMBOL_GPL drivers/net/usb/rndis_host 0x61825ea2 rndis_tx_fixup +EXPORT_SYMBOL_GPL drivers/net/usb/rndis_host 0x686b928b generic_rndis_bind +EXPORT_SYMBOL_GPL drivers/net/usb/rndis_host 0x7bc4620e rndis_unbind +EXPORT_SYMBOL_GPL drivers/net/usb/rndis_host 0xb240bbe6 rndis_command +EXPORT_SYMBOL_GPL drivers/net/usb/rndis_host 0xb8309d8d rndis_rx_fixup +EXPORT_SYMBOL_GPL drivers/net/usb/rndis_host 0xcbb530ef rndis_status +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0x13c1b3fc usbnet_resume +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0x1f91a2fc usbnet_resume_rx +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0x22c8389e usbnet_pause_rx +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0x2800c496 usbnet_suspend +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0x288dc0aa usbnet_tx_timeout +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0x2d460976 usbnet_get_ethernet_addr +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0x3c29f3a2 usbnet_disconnect +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0x41c31666 usbnet_nway_reset +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0x46eff0b8 usbnet_get_link +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0x475b9034 usbnet_unlink_rx_urbs +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0x51084cfa usbnet_probe +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0x5474fb14 usbnet_write_cmd +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0x6afbcbdf usbnet_open +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0x6df20e47 usbnet_skb_return +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0x74af01c1 usbnet_start_xmit +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0x854c2e3d usbnet_get_endpoints +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0x910d5c27 usbnet_read_cmd +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0x9846aa84 usbnet_get_msglevel +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0x9979c2d0 usbnet_get_link_ksettings +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0x9b2d67fe usbnet_set_link_ksettings +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0x9ff3d3b5 usbnet_get_stats64 +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0xa753a675 usbnet_defer_kevent +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0xb337f499 usbnet_purge_paused_rxq +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0xbefba4c5 usbnet_change_mtu +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0xc9614e48 usbnet_update_max_qlen +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0xdfe6aed5 usbnet_set_msglevel +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0xe6c3c6fd usbnet_stop +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0xe6f5c7c7 usbnet_read_cmd_nopm +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0xe8c06105 usbnet_status_stop +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0xea96df57 usbnet_write_cmd_nopm +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0xec6d0a04 usbnet_write_cmd_async +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0xf0010919 usbnet_status_start +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0xf57ba720 usbnet_get_drvinfo +EXPORT_SYMBOL_GPL drivers/net/vxlan 0xc66c51a5 vxlan_fdb_clear_offload +EXPORT_SYMBOL_GPL drivers/net/vxlan 0xd340e2a9 vxlan_dev_create +EXPORT_SYMBOL_GPL drivers/net/vxlan 0xdbf0f42f vxlan_fdb_find_uc +EXPORT_SYMBOL_GPL drivers/net/vxlan 0xebd61f50 vxlan_fdb_replay +EXPORT_SYMBOL_GPL drivers/net/wimax/i2400m/i2400m 0x04ecc47e i2400m_setup +EXPORT_SYMBOL_GPL drivers/net/wimax/i2400m/i2400m 0x0537f54b i2400m_tx +EXPORT_SYMBOL_GPL drivers/net/wimax/i2400m/i2400m 0x3406566e i2400m_dev_bootstrap +EXPORT_SYMBOL_GPL drivers/net/wimax/i2400m/i2400m 0x70898ce9 i2400m_reset +EXPORT_SYMBOL_GPL drivers/net/wimax/i2400m/i2400m 0x714b0a25 i2400m_init +EXPORT_SYMBOL_GPL drivers/net/wimax/i2400m/i2400m 0x769966be i2400m_netdev_setup +EXPORT_SYMBOL_GPL drivers/net/wimax/i2400m/i2400m 0x9b3beb05 i2400m_pre_reset +EXPORT_SYMBOL_GPL drivers/net/wimax/i2400m/i2400m 0xa9cb0bf2 i2400m_tx_msg_get +EXPORT_SYMBOL_GPL drivers/net/wimax/i2400m/i2400m 0xae54ad0e i2400m_is_boot_barker +EXPORT_SYMBOL_GPL drivers/net/wimax/i2400m/i2400m 0xb00b793c i2400m_bm_cmd_prepare +EXPORT_SYMBOL_GPL drivers/net/wimax/i2400m/i2400m 0xb8660ba4 i2400m_post_reset +EXPORT_SYMBOL_GPL drivers/net/wimax/i2400m/i2400m 0xc186494f i2400m_tx_msg_sent +EXPORT_SYMBOL_GPL drivers/net/wimax/i2400m/i2400m 0xc3228e04 i2400m_dev_reset_handle +EXPORT_SYMBOL_GPL drivers/net/wimax/i2400m/i2400m 0xc72eaa96 i2400m_release +EXPORT_SYMBOL_GPL drivers/net/wimax/i2400m/i2400m 0xd0f4d56e i2400m_error_recovery +EXPORT_SYMBOL_GPL drivers/net/wimax/i2400m/i2400m 0xd41a6a93 i2400m_cmd_enter_powersave +EXPORT_SYMBOL_GPL drivers/net/wimax/i2400m/i2400m 0xf6e7f022 i2400m_rx +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/ipw2x00/libipw 0xca3a13f1 libipw_rx_any +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x05f07bbc il_remove_station +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x0dad9bc1 il_prep_station +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x15d485b6 _il_grab_nic_access +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x19d29c15 il_mac_tx_last_beacon +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x3f3da24b il_dealloc_bcast_stations +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0x0137d3b9 iwl_acpi_get_eckv +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0x0333bfa6 iwl_set_bits_prph +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0x06170535 iwl_read_prph_no_grab +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0x074f7f9c iwl_sar_select_profile +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0x0828cd89 iwl_validate_sar_geo_profile +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0x0b855f79 iwl_fw_lookup_notif_ver +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0x0d8c6712 iwl_poll_direct_bit +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0x1214b40d iwl_parse_nvm_data +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0x1332e4de iwl_abort_notification_waits +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0x15bca230 iwl_fw_dbg_collect_desc +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0x1a77a82c iwl_write_direct32 +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0x1abfd92a iwl_get_cmd_string +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0x1e6e4ba1 iwl_write_prph +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0x1fa22c03 iwl_acpi_get_pwr_limit +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0x212a9f7d iwl_fw_dbg_stop_restart_recording +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0x21d3dc78 iwl_fw_dbg_collect_trig +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0x22453c63 iwl_wait_notification +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0x2710c362 iwl_dump_desc_assert +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0x2bd54c5e iwl_acpi_get_wifi_pkg +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0x35033c81 iwl_phy_db_free +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0x413009ef iwl_phy_db_init +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0x416ba6c7 iwl_sar_get_wrds_table +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0x427349ce iwl_fw_dbg_collect +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0x49c913ee iwl_sar_get_wgds_table +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0x5988395c iwl_notification_wait_init +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0x5aba8638 iwl_clear_bits_prph +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0x5c52e109 iwl_opmode_deregister +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0x5c91c9a4 iwl_fw_runtime_resume +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0x5cdd008b iwl_opmode_register +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0x61d69718 iwl_write64 +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0x627703d8 iwl_free_fw_paging +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0x647fd334 iwl_sar_geo_init +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0x682c70b3 iwl_acpi_get_object +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0x6974aef2 iwl_acpi_get_dsm_u8 +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0x69e69ff9 iwl_read_prph +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0x6bd65518 iwl_fw_dbg_stop_sync +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0x6f037ed9 iwl_init_paging +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0x76ad63cb iwl_fw_start_dbg_conf +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0x776221bf iwl_send_phy_db_data +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0x79a711f8 iwl_cmd_groups_verify_sorted +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0x79db3917 __iwl_crit +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0x7cc028ac iwl_set_bits_mask_prph +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0x7dc8280d iwl_dbg_tlv_time_point +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0x806cb3a2 iwl_fw_dbg_read_d3_debug_data +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0x80e0e8e9 iwl_sar_get_ewrd_table +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0x89d21e41 iwl_fw_runtime_init +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0x938148c0 iwl_set_soc_latency +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0x94098547 iwl_acpi_get_tas +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0x978a2561 iwl_write32 +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0x97de5063 __iwl_err +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0x98f1ffa8 iwl_write8 +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0x9f8fae41 iwl_dbg_tlv_del_timers +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0xa4f411d1 iwl_get_shared_mem_conf +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0xa9f05394 iwlwifi_mod_params +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0xb00d0f91 iwl_parse_eeprom_data +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0xb132ae1e iwl_write_prph_no_grab +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0xb6741f53 iwl_read_direct32 +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0xba458954 iwl_read_external_nvm +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0xbeb4e8b0 iwl_force_nmi +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0xc3cc26b1 iwl_sar_set_profile +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0xcbb514ac iwl_write_prph64_no_grab +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0xcd914e00 iwl_fw_lookup_cmd_ver +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0xce0c6460 iwl_phy_db_set_section +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0xd1c64e9d __iwl_dbg +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0xd212894e iwl_fw_error_print_fseq_regs +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0xd8224982 __iwl_info +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0xd86b4e24 __iwl_warn +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0xdc477618 iwl_acpi_get_mcc +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0xde95a4c8 iwl_parse_nvm_mcc_info +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0xdf7a518e iwl_finish_nic_init +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0xe0eb5838 iwl_init_notification_wait +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0xe75b7e77 iwl_notification_wait +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0xea156676 iwl_poll_bit +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0xea1b26fc iwl_nvm_fixups +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0xec2b1a55 iwl_write_direct64 +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0xf11fa53c iwl_sar_geo_support +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0xf14ad3ed iwl_get_nvm +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0xf1c6c027 iwl_read32 +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0xf4dc1b31 iwl_read_eeprom +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0xf559f942 iwl_trans_send_cmd +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0xf6455960 iwl_fw_dbg_error_collect +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0xf88964e4 iwl_remove_notification +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0xfd4818f9 iwl_fw_runtime_suspend +EXPORT_SYMBOL_GPL drivers/net/wireless/intersil/p54/p54common 0x6087e081 p54_parse_eeprom +EXPORT_SYMBOL_GPL drivers/net/wireless/intersil/p54/p54common 0xa24214c5 p54_register_common +EXPORT_SYMBOL_GPL drivers/net/wireless/intersil/p54/p54common 0xb06d04f3 p54_rx +EXPORT_SYMBOL_GPL drivers/net/wireless/intersil/p54/p54common 0xc5f91a6f p54_init_common +EXPORT_SYMBOL_GPL drivers/net/wireless/intersil/p54/p54common 0xd04d9493 p54_free_skb +EXPORT_SYMBOL_GPL drivers/net/wireless/intersil/p54/p54common 0xd4e64a47 p54_read_eeprom +EXPORT_SYMBOL_GPL drivers/net/wireless/intersil/p54/p54common 0xd7b171df p54_free_common +EXPORT_SYMBOL_GPL drivers/net/wireless/intersil/p54/p54common 0xdaf12b25 p54_parse_firmware +EXPORT_SYMBOL_GPL drivers/net/wireless/intersil/p54/p54common 0xdbadfc75 p54_unregister_common +EXPORT_SYMBOL_GPL drivers/net/wireless/marvell/libertas/libertas 0x0bc6a6ad lbs_host_sleep_cfg +EXPORT_SYMBOL_GPL drivers/net/wireless/marvell/libertas/libertas 0x19cf486d lbs_cmd_copyback +EXPORT_SYMBOL_GPL drivers/net/wireless/marvell/libertas/libertas 0x24ef4d03 lbs_get_firmware_async +EXPORT_SYMBOL_GPL drivers/net/wireless/marvell/libertas/libertas 0x3abab035 lbs_queue_event +EXPORT_SYMBOL_GPL drivers/net/wireless/marvell/libertas/libertas 0x3f06d0fb lbs_remove_card +EXPORT_SYMBOL_GPL drivers/net/wireless/marvell/libertas/libertas 0x54729b79 lbs_add_card +EXPORT_SYMBOL_GPL drivers/net/wireless/marvell/libertas/libertas 0x54c8fec0 lbs_send_tx_feedback +EXPORT_SYMBOL_GPL drivers/net/wireless/marvell/libertas/libertas 0x54dfff06 lbs_get_firmware +EXPORT_SYMBOL_GPL drivers/net/wireless/marvell/libertas/libertas 0x5a4b611c lbs_notify_command_response +EXPORT_SYMBOL_GPL drivers/net/wireless/marvell/libertas/libertas 0x5fdf38b8 lbs_disablemesh +EXPORT_SYMBOL_GPL drivers/net/wireless/marvell/libertas/libertas 0x70da8d3b __lbs_cmd +EXPORT_SYMBOL_GPL drivers/net/wireless/marvell/libertas/libertas 0x921c43fd lbs_process_rxed_packet +EXPORT_SYMBOL_GPL drivers/net/wireless/marvell/libertas/libertas 0x93f30445 lbs_host_to_card_done +EXPORT_SYMBOL_GPL drivers/net/wireless/marvell/libertas/libertas 0xbdb9d802 lbs_start_card +EXPORT_SYMBOL_GPL drivers/net/wireless/marvell/libertas/libertas 0xc5b75063 lbs_stop_card +EXPORT_SYMBOL_GPL drivers/net/wireless/marvell/libertas/libertas 0xcbd58275 lbs_resume +EXPORT_SYMBOL_GPL drivers/net/wireless/marvell/libertas/libertas 0xcf693ebb lbs_suspend +EXPORT_SYMBOL_GPL drivers/net/wireless/marvell/libertas/libertas 0xf64277de lbs_debug +EXPORT_SYMBOL_GPL drivers/net/wireless/marvell/libertas_tf/libertas_tf 0x02fbea0e lbtf_cmd_response_rx +EXPORT_SYMBOL_GPL drivers/net/wireless/marvell/libertas_tf/libertas_tf 0x4074d5af __lbtf_cmd +EXPORT_SYMBOL_GPL drivers/net/wireless/marvell/libertas_tf/libertas_tf 0x42eb597e lbtf_send_tx_feedback +EXPORT_SYMBOL_GPL drivers/net/wireless/marvell/libertas_tf/libertas_tf 0x7bc823b2 lbtf_bcn_sent +EXPORT_SYMBOL_GPL drivers/net/wireless/marvell/libertas_tf/libertas_tf 0x81e6c70a lbtf_cmd_copyback +EXPORT_SYMBOL_GPL drivers/net/wireless/marvell/libertas_tf/libertas_tf 0xbf9f89ab lbtf_remove_card +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 0xc8640a0a lbtf_rx +EXPORT_SYMBOL_GPL drivers/net/wireless/marvell/libertas_tf/libertas_tf 0xf01f661a lbtf_add_card +EXPORT_SYMBOL_GPL drivers/net/wireless/marvell/mwifiex/mwifiex 0x053ee31a mwifiex_queue_main_work +EXPORT_SYMBOL_GPL drivers/net/wireless/marvell/mwifiex/mwifiex 0x0da35823 mwifiex_dnld_fw +EXPORT_SYMBOL_GPL drivers/net/wireless/marvell/mwifiex/mwifiex 0x168b683c mwifiex_handle_rx_packet +EXPORT_SYMBOL_GPL drivers/net/wireless/marvell/mwifiex/mwifiex 0x1ccdda5d mwifiex_process_hs_config +EXPORT_SYMBOL_GPL drivers/net/wireless/marvell/mwifiex/mwifiex 0x283c0a1e mwifiex_enable_hs +EXPORT_SYMBOL_GPL drivers/net/wireless/marvell/mwifiex/mwifiex 0x30731b57 mwifiex_prepare_fw_dump_info +EXPORT_SYMBOL_GPL drivers/net/wireless/marvell/mwifiex/mwifiex 0x36e55a20 mwifiex_upload_device_dump +EXPORT_SYMBOL_GPL drivers/net/wireless/marvell/mwifiex/mwifiex 0x515ed43a mwifiex_cancel_hs +EXPORT_SYMBOL_GPL drivers/net/wireless/marvell/mwifiex/mwifiex 0x554f452f mwifiex_remove_card +EXPORT_SYMBOL_GPL drivers/net/wireless/marvell/mwifiex/mwifiex 0x5bc1d234 mwifiex_fw_dump_event +EXPORT_SYMBOL_GPL drivers/net/wireless/marvell/mwifiex/mwifiex 0x6307dc6d mwifiex_shutdown_sw +EXPORT_SYMBOL_GPL drivers/net/wireless/marvell/mwifiex/mwifiex 0x7baa83f8 mwifiex_del_virtual_intf +EXPORT_SYMBOL_GPL drivers/net/wireless/marvell/mwifiex/mwifiex 0x8ee21cfd mwifiex_deauthenticate_all +EXPORT_SYMBOL_GPL drivers/net/wireless/marvell/mwifiex/mwifiex 0x9b54fdc1 mwifiex_main_process +EXPORT_SYMBOL_GPL drivers/net/wireless/marvell/mwifiex/mwifiex 0x9e9eb657 mwifiex_write_data_complete +EXPORT_SYMBOL_GPL drivers/net/wireless/marvell/mwifiex/mwifiex 0xa54bae26 mwifiex_reinit_sw +EXPORT_SYMBOL_GPL drivers/net/wireless/marvell/mwifiex/mwifiex 0xa66ba009 mwifiex_disable_auto_ds +EXPORT_SYMBOL_GPL drivers/net/wireless/marvell/mwifiex/mwifiex 0xb08dc3dc _mwifiex_dbg +EXPORT_SYMBOL_GPL drivers/net/wireless/marvell/mwifiex/mwifiex 0xb73da9fb mwifiex_process_sleep_confirm_resp +EXPORT_SYMBOL_GPL drivers/net/wireless/marvell/mwifiex/mwifiex 0xb74941dd mwifiex_init_shutdown_fw +EXPORT_SYMBOL_GPL drivers/net/wireless/marvell/mwifiex/mwifiex 0xbbe07797 mwifiex_add_virtual_intf +EXPORT_SYMBOL_GPL drivers/net/wireless/marvell/mwifiex/mwifiex 0xce66fc65 mwifiex_multi_chan_resync +EXPORT_SYMBOL_GPL drivers/net/wireless/marvell/mwifiex/mwifiex 0xd4dad9f3 mwifiex_alloc_dma_align_buf +EXPORT_SYMBOL_GPL drivers/net/wireless/marvell/mwifiex/mwifiex 0xd747675e mwifiex_drv_info_dump +EXPORT_SYMBOL_GPL drivers/net/wireless/marvell/mwifiex/mwifiex 0xee086d12 mwifiex_add_card +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0x0397d6c8 mt76_sta_state +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0x052b5192 mt76_txq_init +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0x1a8736c0 mt76_set_stream_caps +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0x1a9ae58d mt76_put_txwi +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0x2a1fff08 mt76_txq_schedule +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0x2b1e367a mt76_register_debugfs +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0x34abe959 mt76_rx +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0x3bb10e4e mt76_get_antenna +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0x40c00450 mt76_tx_status_skb_get +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0x4644ba81 mt76_tx_status_skb_add +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0x4d0e382d mt76_sta_pre_rcu_remove +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0x517dec5c __mt76_poll_msec +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0x5869e9ee mt76_set_channel +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0x69bc033b mt76_pci_disable_aspm +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0x6f0c1df8 mt76_eeprom_override +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0x70eace9f mt76_csa_finish +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0x714314db __mt76_poll +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0x76decd9e mt76_register_phy +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0x7796a26e mt76_txq_schedule_all +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0x7b15aaa5 mt76_set_tim +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0x80649947 mt76_txq_remove +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0x85c1bd58 mt76_tx +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0x86c4d3d3 mt76_alloc_device +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0x8816ffde mt76_sw_scan_complete +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0x88976494 mt76_register_device +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0x89f253de mt76_rx_aggr_stop +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0x8a14f388 mt76_get_rate +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0x8ce8fce1 mt76_release_buffered_frames +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0x91b7e92d mt76_sw_scan +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0x9cd45fa4 mt76_free_device +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0xa1851698 mt76_insert_ccmp_hdr +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0xaa762663 mt76_alloc_phy +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0xab83c94b mt76_rx_aggr_start +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0xadbe25eb mt76_dma_attach +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0xb9afd959 mt76_tx_status_unlock +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0xbb3aad5d mt76_mcu_msg_alloc +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0xbe73066d mt76_queues_read +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0xc38def00 mt76_tx_status_lock +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0xc5fc58a3 __tracepoint_dev_irq +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0xc6634315 mt76_ac_to_hwq +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0xca233b5e mt76_unregister_phy +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0xcb3ecfea mt76_get_txpower +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0xcc586f71 mt76_tx_status_skb_done +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0xcd384034 mt76_get_survey +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0xd5798195 mt76_csa_check +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0xd744525e mt76_get_min_avg_rssi +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0xd8eedcbc mt76_mcu_get_response +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0xdbaf1db5 __tracepoint_mac_txdone +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0xdc29780a mt76_mmio_init +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0xde53dda4 mt76_set_irq_mask +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0xe1c3b096 mt76_tx_complete_skb +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0xe1d904cc mt76_dma_cleanup +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0xe24c97ad __mt76_sta_remove +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0xe34ae9d8 mt76_rx_poll_complete +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0xe40b66ef mt76_wcid_alloc +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0xe42f77bb mt76_mcu_rx_event +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0xe5924870 mt76_has_tx_pending +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0xe8495fca mt76_wake_tx_queue +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0xe908ec3b mt76_seq_puts_array +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0xead351f4 mt76_tx_status_check +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0xf4ad8de4 mt76_stop_tx_queues +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0xf6d05f3d mt76_unregister_device +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0xf9911fd9 mt76_update_survey +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0xfb2f770a mt76_eeprom_init +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76-usb 0x02e82607 mt76u_stop_tx +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76-usb 0x10f6d83b mt76u_deinit +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76-usb 0x29ea642d mt76u_alloc_queues +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76-usb 0x358ee4b6 mt76u_init +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76-usb 0x411a3266 mt76u_alloc_mcu_queue +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76-usb 0x6480da04 mt76u_resume_rx +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76-usb 0x75f1301a mt76u_single_wr +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76-usb 0x89b83535 mt76u_vendor_request +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76-usb 0xb1ed6750 mt76u_stop_rx +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76-usb 0xb2bd6627 mt76u_queues_deinit +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76-usb 0xe2cc4043 mt76u_skb_dma_info +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt7615/mt7615-common 0x057c4d49 mt7615_rates +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt7615/mt7615-common 0x0f70025f mt7615_driver_own +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt7615/mt7615-common 0x12eea03b mt7615_eeprom_init +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt7615/mt7615-common 0x16d6bde5 mt7615_mac_sta_poll +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt7615/mt7615-common 0x1bb6305f mt7615_init_txpower +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt7615/mt7615-common 0x2020623a mt7615_mac_sta_remove +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt7615/mt7615-common 0x2238ac6a mt7615_mac_wtbl_update_pk +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt7615/mt7615-common 0x241127c5 mt7615_mac_wtbl_update_key +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt7615/mt7615-common 0x3866db81 mt7615_mcu_restart +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt7615/mt7615-common 0x3d114582 mt7615_mcu_msg_send +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt7615/mt7615-common 0x4034d37e mt7615_phy_init +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt7615/mt7615-common 0x49c03527 mt7615_init_debugfs +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt7615/mt7615-common 0x5b90cd86 mt7615_check_offload_capability +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt7615/mt7615-common 0x6152b65e mt7615_sta_ps +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt7615/mt7615-common 0x6d5494fc mt7615_txp_skb_unmap +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt7615/mt7615-common 0x79b2cfe3 mt7615_ops +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt7615/mt7615-common 0x845d88cc mt7615_mcu_fill_msg +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt7615/mt7615-common 0x8751b116 mt7615_mac_write_txwi +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt7615/mt7615-common 0x8a911eab mt7615_firmware_own +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt7615/mt7615-common 0x973b6d37 __mt7663_load_firmware +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt7615/mt7615-common 0x99d443cd mt7615_mcu_set_eeprom +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt7615/mt7615-common 0xa28f205d mt7615_register_ext_phy +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt7615/mt7615-common 0xa37f8573 mt7615_mcu_set_hif_suspend +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt7615/mt7615-common 0xaacf75d0 mt7615_init_device +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt7615/mt7615-common 0xaad0b449 mt7615_unregister_ext_phy +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt7615/mt7615-common 0xb9480eff mt7615_mac_wtbl_update_cipher +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt7615/mt7615-common 0xbe532194 mt7615_update_channel +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt7615/mt7615-common 0xbea52b2a mt7615_mac_init +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt7615/mt7615-common 0xbf3816d6 mt7615_mcu_init +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt7615/mt7615-common 0xc0795c12 mt7615_mcu_del_wtbl_all +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt7615/mt7615-common 0xc1da3ef5 mt7615_mcu_wait_response +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt7615/mt7615-common 0xc4962efe mt7615_wait_for_mcu_init +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt7615/mt7615-common 0xcc4f6ed0 mt7615_queue_rx_skb +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt7615/mt7615-common 0xd04e7fa1 mt7615_mac_sta_add +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt7615/mt7615-common 0xe4b3fa2c mt7615_dma_reset +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt7615/mt7615-common 0xf3cd2df8 mt7615_mcu_exit +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt7615/mt7615-common 0xfbc7c1b1 mt7615_mac_set_rates +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x0/mt76x0-common 0x0bb0818f mt76x0_register_device +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x0/mt76x0-common 0x422c9a2d mt76x0_chip_onoff +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x0/mt76x0-common 0x92ce3485 mt76x0_config +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x0/mt76x0-common 0xa3450be6 mt76x0_phy_calibrate +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x0/mt76x0-common 0xcf280ddf mt76x0_mac_stop +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x0/mt76x0-common 0xdd51ab5c mt76x0_init_hardware +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0x00ad38d0 mt76x02_mcu_msg_send +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0x00e7b150 mt76x02_phy_set_rxpath +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0x0462ce68 mt76x02_add_rate_power_offset +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0x0bc36bf7 mt76x02_set_ethtool_fwver +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0x0d4023ec mt76x02_get_max_rate_power +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0x0fa25f16 mt76x02_remove_hdr_pad +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0x118f18ed mt76x02_tx_status_data +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0x1245188b mt76x02_dma_cleanup +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0x182dcb90 mt76x02_queue_rx_skb +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0x1f907e52 mt76x02_ext_pa_enabled +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0x21db55ca mt76x02_tx +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0x26c2199f mt76x02_phy_set_band +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0x2dee5f64 mt76x02_eeprom_parse_hw_cap +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0x307e4f2d mt76x02_tx_complete_skb +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0x33c4ede3 mt76x02_mac_setaddr +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0x35d2834d mt76x02_limit_rate_power +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0x3d324b4e mt76x02_mac_wcid_setup +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0x3ff08cac mt76x02_init_agc_gain +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0x41512d5b mt76x02_mac_start +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0x429d6610 mt76x02_ampdu_action +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0x466f1b8e mt76x02_dfs_init_params +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0x48012458 mt76x02_init_beacon_config +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0x48edb42e mt76x02_init_debugfs +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0x49eeaabe mt76x02_sta_remove +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0x4ffe33b5 mt76x02_add_interface +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0x5067a07a mt76x02_set_key +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0x577b2cc4 mt76x02_get_rx_gain +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0x5ab43bfa mt76x02_phy_dfs_adjust_agc +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0x5bd84fd5 mt76x02_rates +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0x5cf7df84 mt76x02_phy_set_txdac +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0x5ef01834 mt76x02_sta_ps +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0x603931e6 mt76x02_enqueue_buffered_bc +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0x635a975e mt76x02_get_efuse_data +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0x640ded25 mt76x02_bss_info_changed +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0x64e41de2 mt76x02_mac_cc_reset +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0x7030165f mt76x02_configure_filter +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0x727fc674 mt76x02_mcu_cleanup +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0x72f40f95 mt76x02_mac_write_txwi +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0x73d8e8be mt76x02_sw_scan_complete +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0x797910f5 mt76x02_resync_beacon_timer +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0x7e6bae16 mt76x02_update_channel +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0x7f11b122 mt76x02_set_rts_threshold +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0x82c83c3e mt76x02_config_mac_addr_list +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0x832d4e29 mt76x02_phy_set_txpower +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0x8628ebe7 mt76x02_set_tx_ackto +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0x8ab1a8f0 mt76x02_set_coverage_class +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0x8ebe3cdd mt76x02_get_lna_gain +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0x91d5b9ee mt76x02_irq_handler +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0x96bc5f0e mt76x02_sta_add +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0x9bc0ade2 mt76x02_tx_prepare_skb +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0xa766fb70 mt76x02_update_beacon_iter +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0xa7e9dfce mt76x02_mac_reset_counters +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0xa9c9d6ca mt76x02_reconfig_complete +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0xabe752d7 mt76x02_mcu_calibrate +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0xb237a140 mt76x02_sta_rate_tbl_update +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0xb583adae mt76x02_rx_poll_complete +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0xbb8efc26 mt76x02_mcu_set_radio_state +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0xbeb53fc1 mt76x02e_init_beacon_config +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0xd26d0969 mt76x02_conf_tx +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0xd2c37914 mt76x02_dma_init +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0xd2dad945 mt76x02_edcca_init +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0xd555e9bf mt76x02_mac_set_beacon +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0xd796c74c mt76x02_tx_set_txpwr_auto +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0xda4fbc04 mt76x02_init_device +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0xe0c59bda mt76x02_mcu_function_select +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0xe14e78bf mt76x02_phy_adjust_vga_gain +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0xe79a8f59 mt76x02_dma_disable +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0xe7aa523e mt76x02_mac_shared_key_setup +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0xf183686e mt76x02_phy_set_bw +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0xf83eae82 mt76x02_eeprom_copy +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0xfebc79ed mt76x02_remove_interface +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-usb 0x139735d5 mt76x02u_init_mcu +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-usb 0x4074edbe mt76x02u_mcu_fw_send_data +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-usb 0x5b3324c3 mt76x02u_init_beacon_config +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-usb 0x71298de8 mt76x02u_tx_prepare_skb +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-usb 0x9461bad6 mt76x02u_tx_complete_skb +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-usb 0x9a1a3ab8 mt76x02u_mac_start +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-usb 0x9fa773b4 mt76x02u_exit_beacon_config +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-usb 0xd4999d46 mt76x02u_mcu_fw_reset +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x2/mt76x2-common 0x05f6e97e mt76x2_get_rate_power +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x2/mt76x2-common 0x127e4def mt76x2_init_txpower +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x2/mt76x2-common 0x25375f58 mt76x2_phy_tssi_compensate +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x2/mt76x2-common 0x2da98420 mt76x2_read_rx_gain +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x2/mt76x2-common 0x34324120 mt76x2_phy_set_txpower_regs +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x2/mt76x2-common 0x44f4d19d mt76x2_reset_wlan +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x2/mt76x2-common 0x58400fd8 mt76x2_mcu_init_gain +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x2/mt76x2-common 0x5b0726ca mt76x2_phy_set_txpower +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x2/mt76x2-common 0x92514440 mt76_write_mac_initvals +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x2/mt76x2-common 0x9e342343 mt76x2_get_temp_comp +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x2/mt76x2-common 0xa19cbd78 mt76x2_eeprom_init +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x2/mt76x2-common 0xae93603a mt76x2_mac_stop +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x2/mt76x2-common 0xbc2ed637 mt76x2_configure_tx_delay +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x2/mt76x2-common 0xbcbdf6ab mt76x2_mcu_tssi_comp +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x2/mt76x2-common 0xbd5261ea mt76x2_mcu_load_cr +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x2/mt76x2-common 0xc19bf763 mt76x2_phy_update_channel_gain +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x2/mt76x2-common 0xf98916a3 mt76x2_get_power_info +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x2/mt76x2-common 0xfc92a819 mt76x2_mcu_set_channel +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x2/mt76x2-common 0xfcbe32a7 mt76x2_apply_gain_adj +EXPORT_SYMBOL_GPL drivers/net/wireless/quantenna/qtnfmac/qtnfmac 0x069d3669 qtnf_get_debugfs_dir +EXPORT_SYMBOL_GPL drivers/net/wireless/quantenna/qtnfmac/qtnfmac 0x31fab83c qtnf_chipid_to_string +EXPORT_SYMBOL_GPL drivers/net/wireless/quantenna/qtnfmac/qtnfmac 0x46a28540 qtnf_core_attach +EXPORT_SYMBOL_GPL drivers/net/wireless/quantenna/qtnfmac/qtnfmac 0x4dad821a qtnf_classify_skb +EXPORT_SYMBOL_GPL drivers/net/wireless/quantenna/qtnfmac/qtnfmac 0x5ed8c4f2 qtnf_core_detach +EXPORT_SYMBOL_GPL drivers/net/wireless/quantenna/qtnfmac/qtnfmac 0xa24b61c6 qtnf_update_tx_stats +EXPORT_SYMBOL_GPL drivers/net/wireless/quantenna/qtnfmac/qtnfmac 0xa4c0931c qtnf_wake_all_queues +EXPORT_SYMBOL_GPL drivers/net/wireless/quantenna/qtnfmac/qtnfmac 0xce543ff8 qtnf_trans_handle_rx_ctl_packet +EXPORT_SYMBOL_GPL drivers/net/wireless/quantenna/qtnfmac/qtnfmac 0xfc502333 qtnf_update_rx_stats +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2800lib 0x05bbb753 rt2800_config_pairwise_key +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2800lib 0x0a25bcb7 rt2800_wait_wpdma_ready +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2800lib 0x2365bf8f rt2800_get_txwi_rxwi_size +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2800lib 0x245ddbaf rt2800_process_rxwi +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2800lib 0x27d78e8c rt2800_config_ant +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2800lib 0x288d04d0 rt2800_rfkill_poll +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2800lib 0x2d4d2751 rt2800_sta_add +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2800lib 0x33a81cba rt2800_read_eeprom_efuse +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2800lib 0x3694ee83 rt2800_txstatus_timeout +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2800lib 0x3af3610d rt2800_config_filter +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2800lib 0x3d5bc35e rt2800_enable_radio +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2800lib 0x40e10135 rt2800_vco_calibration +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2800lib 0x4b83a35b rt2800_load_firmware +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2800lib 0x4f14a716 rt2800_write_beacon +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2800lib 0x5f5ecf55 rt2800_config_erp +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2800lib 0x67dd16cd rt2800_probe_hw +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2800lib 0x69804ee2 rt2800_config +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2800lib 0x6b1ed2b3 rt2800_sta_remove +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2800lib 0x7870a634 rt2800_reset_tuner +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2800lib 0x7c07665e rt2800_config_shared_key +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2800lib 0x7cccde7c rt2800_disable_radio +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2800lib 0x81eefd0a rt2800_txdone_nostatus +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2800lib 0x8d5835e9 rt2800_efuse_detect +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2800lib 0x946bec2b rt2800_conf_tx +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2800lib 0x966c679f rt2800_link_stats +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2800lib 0xa21b1e07 rt2800_mcu_request +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2800lib 0xa3b1eb36 rt2800_wait_csr_ready +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2800lib 0xa8926f76 rt2800_clear_beacon +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2800lib 0xaa0d5c22 rt2800_write_tx_data +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2800lib 0xaffff775 rt2800_get_key_seq +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2800lib 0xb8289bc7 rt2800_get_tsf +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2800lib 0xc2e09abb rt2800_txdone_entry +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2800lib 0xc9a18a56 rt2800_disable_wpdma +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2800lib 0xca1452a8 rt2800_config_intf +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2800lib 0xcd0d30a2 rt2800_gain_calibration +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2800lib 0xd251fe45 rt2800_txstatus_pending +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2800lib 0xd8f19071 rt2800_txdone +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2800lib 0xde8e239c rt2800_pre_reset_hw +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2800lib 0xe3e873f4 rt2800_check_firmware +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2800lib 0xe9c42d02 rt2800_watchdog +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2800lib 0xeed7c0d4 rt2800_ampdu_action +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2800lib 0xf2080365 rt2800_get_survey +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2800lib 0xf40fffe8 rt2800_set_rts_threshold +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2800lib 0xfe03c8b7 rt2800_link_tuner +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2800mmio 0x0fad1430 rt2800mmio_pretbtt_tasklet +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2800mmio 0x2505789d rt2800mmio_tbtt_tasklet +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2800mmio 0x3a648af1 rt2800mmio_probe_hw +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2800mmio 0x3a74ad94 rt2800mmio_get_dma_done +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2800mmio 0x3fa37c32 rt2800mmio_kick_queue +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2800mmio 0x5372fd6b rt2800mmio_enable_radio +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2800mmio 0x5d6fda3a rt2800mmio_queue_init +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2800mmio 0x5fa4db64 rt2800mmio_interrupt +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2800mmio 0x67e59c8d rt2800mmio_get_txwi +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2800mmio 0x72aa8f40 rt2800mmio_init_queues +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2800mmio 0x7b4fa854 rt2800mmio_stop_queue +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2800mmio 0x92c0bcd1 rt2800mmio_rxdone_tasklet +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2800mmio 0x9f0efe03 rt2800mmio_clear_entry +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2800mmio 0xa089f6c9 rt2800mmio_write_tx_desc +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2800mmio 0xac7e1ac5 rt2800mmio_start_queue +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2800mmio 0xb9699370 rt2800mmio_fill_rxdone +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2800mmio 0xc6a1455e rt2800mmio_autowake_tasklet +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2800mmio 0xcaf42559 rt2800mmio_init_registers +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2800mmio 0xd24cef01 rt2800mmio_get_entry_state +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2800mmio 0xe28f94c7 rt2800mmio_txstatus_tasklet +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2800mmio 0xe7a0aafd rt2800mmio_flush_queue +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2800mmio 0xff04cfe0 rt2800mmio_toggle_irq +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00lib 0x053e72b7 rt2x00lib_txdone_nomatch +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00lib 0x16b43763 rt2x00queue_for_each_entry +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00lib 0x182e8d2f rt2x00mac_set_antenna +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00lib 0x1d88b7f1 rt2x00lib_probe_dev +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00lib 0x20c17a2c rt2x00queue_stop_queue +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00lib 0x210afb3f rt2x00lib_remove_dev +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00lib 0x224c5382 rt2x00lib_txdone_noinfo +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00lib 0x241ff117 rt2x00mac_rfkill_poll +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00lib 0x264ec8f9 rt2x00lib_txdone +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00lib 0x32ce5581 rt2x00lib_dmadone +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00lib 0x3c176331 rt2x00queue_stop_queues +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00lib 0x3f6f1750 rt2x00mac_get_antenna +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00lib 0x44d0f56a rt2x00mac_stop +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00lib 0x462837bf rt2x00lib_get_bssidx +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00lib 0x4f02ec31 rt2x00mac_config +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00lib 0x52fbd990 rt2x00mac_sw_scan_start +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00lib 0x61c10800 rt2x00queue_flush_queues +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00lib 0x63db7c72 rt2x00mac_set_key +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00lib 0x6a769d05 rt2x00queue_start_queues +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00lib 0x6cd330cc rt2x00queue_unmap_skb +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00lib 0x7131f459 rt2x00queue_get_entry +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00lib 0x72b1f817 rt2x00mac_add_interface +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00lib 0x7e1ce1f5 rt2x00mac_remove_interface +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00lib 0x8b6b2200 rt2x00lib_resume +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00lib 0x91dddac9 rt2x00mac_get_stats +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00lib 0x9765c6b8 rt2x00mac_conf_tx +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00lib 0x992bfbf3 rt2x00lib_dmastart +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00lib 0x9a35c2b2 rt2x00mac_start +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00lib 0xa7520948 rt2x00mac_bss_info_changed +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00lib 0xac3ca107 rt2x00queue_map_txskb +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00lib 0xafaebfb5 rt2x00mac_set_tim +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00lib 0xb1cebc09 rt2x00mac_configure_filter +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00lib 0xb3dc9140 rt2x00mac_tx_frames_pending +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00lib 0xbb77b5e9 rt2x00lib_beacondone +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00lib 0xc2ec471a rt2x00lib_rxdone +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00lib 0xc3bc6918 rt2x00lib_suspend +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00lib 0xc98cede6 rt2x00mac_tx +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00lib 0xcf30b9c6 rt2x00queue_flush_queue +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00lib 0xd0f680ea rt2x00queue_unpause_queue +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00lib 0xd7c195cb rt2x00mac_get_ringparam +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00lib 0xe1534342 rt2x00mac_reconfig_complete +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00lib 0xe33fec93 rt2x00queue_pause_queue +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00lib 0xe7247bd9 rt2x00mac_flush +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00lib 0xebbc62f7 rt2x00lib_pretbtt +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00lib 0xed5ba1c9 rt2x00lib_set_mac_address +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00lib 0xf2fb6d19 rt2x00queue_start_queue +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00lib 0xf37870a6 rt2x00mac_sw_scan_complete +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00mmio 0x232ab7c7 rt2x00mmio_uninitialize +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00mmio 0x3c5bd749 rt2x00mmio_flush_queue +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00mmio 0x909cb63c rt2x00mmio_regbusy_read +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00mmio 0x912372f1 rt2x00mmio_rxdone +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00mmio 0xf7562c60 rt2x00mmio_initialize +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00pci 0x1fa35fe3 rt2x00pci_resume +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00pci 0x278e99a5 rt2x00pci_remove +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00pci 0xd68382a4 rt2x00pci_probe +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00pci 0xf40342bb rt2x00pci_suspend +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00usb 0x083275ed rt2x00usb_watchdog +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00usb 0x12586dd1 rt2x00usb_register_read_async +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00usb 0x2edd64f0 rt2x00usb_disable_radio +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00usb 0x41de89ad rt2x00usb_flush_queue +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00usb 0x5369969d rt2x00usb_regbusy_read +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00usb 0x568d2882 rt2x00usb_vendor_req_buff_lock +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00usb 0x65734877 rt2x00usb_vendor_request +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00usb 0x6b09fa07 rt2x00usb_uninitialize +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00usb 0x7a32764f rt2x00usb_resume +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00usb 0x8065adf6 rt2x00usb_kick_queue +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00usb 0xb08b385e rt2x00usb_initialize +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00usb 0xb2b54ce0 rt2x00usb_suspend +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00usb 0xc0cfd2d2 rt2x00usb_disconnect +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00usb 0xc14cb1cd rt2x00usb_clear_entry +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00usb 0xe9a2c7c5 rt2x00usb_vendor_request_buff +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00usb 0xfcdcd546 rt2x00usb_probe +EXPORT_SYMBOL_GPL drivers/net/wireless/realtek/rtlwifi/rtl8192c/rtl8192c-common 0x5267ff6f rtl92c_set_p2p_ps_offload_cmd +EXPORT_SYMBOL_GPL drivers/net/wireless/realtek/rtlwifi/rtl8192c/rtl8192c-common 0xb92969a5 dm_writepowerindex +EXPORT_SYMBOL_GPL drivers/net/wireless/realtek/rtlwifi/rtl8192c/rtl8192c-common 0xcfc5aac8 dm_savepowerindex +EXPORT_SYMBOL_GPL drivers/net/wireless/realtek/rtlwifi/rtl8192c/rtl8192c-common 0xfffaa73a dm_restorepowerindex +EXPORT_SYMBOL_GPL drivers/net/wireless/realtek/rtlwifi/rtl8723com/rtl8723-common 0x17e49795 rtl8723_phy_path_a_fill_iqk_matrix +EXPORT_SYMBOL_GPL drivers/net/wireless/realtek/rtlwifi/rtl8723com/rtl8723-common 0x1a76d692 rtl8723_phy_rf_serial_read +EXPORT_SYMBOL_GPL drivers/net/wireless/realtek/rtlwifi/rtl8723com/rtl8723-common 0x3c8a6fb4 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 0x45cad352 rtl8723_phy_init_bb_rf_reg_def +EXPORT_SYMBOL_GPL drivers/net/wireless/realtek/rtlwifi/rtl8723com/rtl8723-common 0x4a7e06d2 rtl8723_phy_reload_adda_registers +EXPORT_SYMBOL_GPL drivers/net/wireless/realtek/rtlwifi/rtl8723com/rtl8723-common 0x4e2dfaca rtl8723_dm_init_dynamic_bb_powersaving +EXPORT_SYMBOL_GPL drivers/net/wireless/realtek/rtlwifi/rtl8723com/rtl8723-common 0x4f168ca9 rtl8723_dm_init_dynamic_txpower +EXPORT_SYMBOL_GPL drivers/net/wireless/realtek/rtlwifi/rtl8723com/rtl8723-common 0x5eb74928 rtl8723_phy_txpwr_idx_to_dbm +EXPORT_SYMBOL_GPL drivers/net/wireless/realtek/rtlwifi/rtl8723com/rtl8723-common 0x673a66b2 rtl8723_download_fw +EXPORT_SYMBOL_GPL drivers/net/wireless/realtek/rtlwifi/rtl8723com/rtl8723-common 0x69557e2d rtl8723_phy_mac_setting_calibration +EXPORT_SYMBOL_GPL drivers/net/wireless/realtek/rtlwifi/rtl8723com/rtl8723-common 0x6c598f40 rtl8723_phy_reload_mac_registers +EXPORT_SYMBOL_GPL drivers/net/wireless/realtek/rtlwifi/rtl8723com/rtl8723-common 0x6e3608f0 rtl8723_phy_pi_mode_switch +EXPORT_SYMBOL_GPL drivers/net/wireless/realtek/rtlwifi/rtl8723com/rtl8723-common 0x799b89f2 rtl8723be_firmware_selfreset +EXPORT_SYMBOL_GPL drivers/net/wireless/realtek/rtlwifi/rtl8723com/rtl8723-common 0x815706ba rtl8723_phy_save_mac_registers +EXPORT_SYMBOL_GPL drivers/net/wireless/realtek/rtlwifi/rtl8723com/rtl8723-common 0x84370014 rtl8723_phy_rf_serial_write +EXPORT_SYMBOL_GPL drivers/net/wireless/realtek/rtlwifi/rtl8723com/rtl8723-common 0x8b03ff7b rtl8723ae_firmware_selfreset +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 0x92208210 rtl8723_phy_query_bb_reg +EXPORT_SYMBOL_GPL drivers/net/wireless/realtek/rtlwifi/rtl8723com/rtl8723-common 0x954584c0 rtl8723_dm_init_edca_turbo +EXPORT_SYMBOL_GPL drivers/net/wireless/realtek/rtlwifi/rtl8723com/rtl8723-common 0x96a0ecff rtl8723_cmd_send_packet +EXPORT_SYMBOL_GPL drivers/net/wireless/realtek/rtlwifi/rtl8723com/rtl8723-common 0xbf7d0bb2 rtl8723_phy_set_bb_reg +EXPORT_SYMBOL_GPL drivers/net/wireless/realtek/rtlwifi/rtl8723com/rtl8723-common 0xbfc8220b rtl8723_phy_path_a_standby +EXPORT_SYMBOL_GPL drivers/net/wireless/realtek/rtlwifi/rtl8723com/rtl8723-common 0xcaac4148 rtl8723_phy_path_adda_on +EXPORT_SYMBOL_GPL drivers/net/wireless/realtek/rtlwifi/rtl8723com/rtl8723-common 0xccd1d1e5 rtl8723_enable_fw_download +EXPORT_SYMBOL_GPL drivers/net/wireless/realtek/rtlwifi/rtl8723com/rtl8723-common 0xdd5b93d8 rtl8723_save_adda_registers +EXPORT_SYMBOL_GPL drivers/net/wireless/realtek/rtlwifi/rtl8723com/rtl8723-common 0xf44ea6cf rtl8723_write_fw +EXPORT_SYMBOL_GPL drivers/net/wireless/realtek/rtlwifi/rtlwifi 0x0673d8bc rtl_swlps_beacon +EXPORT_SYMBOL_GPL drivers/net/wireless/realtek/rtlwifi/rtlwifi 0x19cbccd4 rtl_get_hwinfo +EXPORT_SYMBOL_GPL drivers/net/wireless/realtek/rtlwifi/rtlwifi 0x20dea356 rtl_recognize_peer +EXPORT_SYMBOL_GPL drivers/net/wireless/realtek/rtlwifi/rtlwifi 0x21e27f9a rtl_p2p_info +EXPORT_SYMBOL_GPL drivers/net/wireless/realtek/rtlwifi/rtlwifi 0x2921a4d4 rtl_btc_status_false +EXPORT_SYMBOL_GPL drivers/net/wireless/realtek/rtlwifi/rtlwifi 0x2bc60ced rtl_tx_mgmt_proc +EXPORT_SYMBOL_GPL drivers/net/wireless/realtek/rtlwifi/rtlwifi 0x2d32cdfc rtl_lps_change_work_callback +EXPORT_SYMBOL_GPL drivers/net/wireless/realtek/rtlwifi/rtlwifi 0x2d9f761b rtl_lps_leave +EXPORT_SYMBOL_GPL drivers/net/wireless/realtek/rtlwifi/rtlwifi 0x2e5382f9 rtl_fill_dummy +EXPORT_SYMBOL_GPL drivers/net/wireless/realtek/rtlwifi/rtlwifi 0x342d5e12 rtl_init_rx_config +EXPORT_SYMBOL_GPL drivers/net/wireless/realtek/rtlwifi/rtlwifi 0x368b9e97 rtl_fw_block_write +EXPORT_SYMBOL_GPL drivers/net/wireless/realtek/rtlwifi/rtlwifi 0x384988f3 rtl_is_special_data +EXPORT_SYMBOL_GPL drivers/net/wireless/realtek/rtlwifi/rtlwifi 0x41e763ca rtl_deinit_deferred_work +EXPORT_SYMBOL_GPL drivers/net/wireless/realtek/rtlwifi/rtlwifi 0x4e94cd48 rtl_global_var +EXPORT_SYMBOL_GPL drivers/net/wireless/realtek/rtlwifi/rtlwifi 0x5b7e91f2 rtl_action_proc +EXPORT_SYMBOL_GPL drivers/net/wireless/realtek/rtlwifi/rtlwifi 0x5cb104e6 rtl_lps_enter +EXPORT_SYMBOL_GPL drivers/net/wireless/realtek/rtlwifi/rtlwifi 0x6dd89f0a rtl_tx_report_handler +EXPORT_SYMBOL_GPL drivers/net/wireless/realtek/rtlwifi/rtlwifi 0x87830a40 rtl_ips_nic_on +EXPORT_SYMBOL_GPL drivers/net/wireless/realtek/rtlwifi/rtlwifi 0x97e05663 rtl_tid_to_ac +EXPORT_SYMBOL_GPL drivers/net/wireless/realtek/rtlwifi/rtlwifi 0x9b501e78 rtl_fw_page_write +EXPORT_SYMBOL_GPL drivers/net/wireless/realtek/rtlwifi/rtlwifi 0xa45f91c5 rtl_ops +EXPORT_SYMBOL_GPL drivers/net/wireless/realtek/rtlwifi/rtlwifi 0xa64b70e8 rtl_deinit_rfkill +EXPORT_SYMBOL_GPL drivers/net/wireless/realtek/rtlwifi/rtlwifi 0xb4fe6670 rtl_efuse_ops_init +EXPORT_SYMBOL_GPL drivers/net/wireless/realtek/rtlwifi/rtlwifi 0xbabcf301 rtl_beacon_statistic +EXPORT_SYMBOL_GPL drivers/net/wireless/realtek/rtlwifi/rtlwifi 0xd6635af5 rtl_get_hal_edca_param +EXPORT_SYMBOL_GPL drivers/net/wireless/realtek/rtlwifi/rtlwifi 0xdc532a20 rtl_tx_ackqueue +EXPORT_SYMBOL_GPL drivers/net/wireless/realtek/rtlwifi/rtlwifi 0xe42b3bbd rtl_set_tx_report +EXPORT_SYMBOL_GPL drivers/net/wireless/realtek/rtlwifi/rtlwifi 0xfa4a91e3 read_efuse_byte +EXPORT_SYMBOL_GPL drivers/net/wireless/realtek/rtlwifi/rtlwifi 0xfa94cb51 rtl_init_core +EXPORT_SYMBOL_GPL drivers/net/wireless/realtek/rtlwifi/rtlwifi 0xfaf2ef04 rtl_deinit_core +EXPORT_SYMBOL_GPL drivers/net/wireless/rsi/rsi_91x 0x0f5c3ce9 rsi_zone_enabled +EXPORT_SYMBOL_GPL drivers/net/wireless/rsi/rsi_91x 0x4423cb90 rsi_91x_deinit +EXPORT_SYMBOL_GPL drivers/net/wireless/rsi/rsi_91x 0x761cb5de rsi_read_pkt +EXPORT_SYMBOL_GPL drivers/net/wireless/rsi/rsi_91x 0xcd173710 rsi_dbg +EXPORT_SYMBOL_GPL drivers/net/wireless/rsi/rsi_91x 0xdcdf8e44 rsi_mac80211_detach +EXPORT_SYMBOL_GPL drivers/net/wireless/rsi/rsi_91x 0xf09635f6 rsi_91x_init +EXPORT_SYMBOL_GPL drivers/net/wireless/rsi/rsi_91x 0xf2b83458 rsi_hal_device_init +EXPORT_SYMBOL_GPL drivers/net/wireless/st/cw1200/cw1200_core 0x401a16a5 cw1200_core_probe +EXPORT_SYMBOL_GPL drivers/net/wireless/st/cw1200/cw1200_core 0x7cc095ff cw1200_irq_handler +EXPORT_SYMBOL_GPL drivers/net/wireless/st/cw1200/cw1200_core 0x9bb98200 cw1200_can_suspend +EXPORT_SYMBOL_GPL drivers/net/wireless/st/cw1200/cw1200_core 0xae178584 cw1200_core_release +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wl1251/wl1251 0x11713172 wl1251_init_ieee80211 +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wl1251/wl1251 0x23f60ac1 wl1251_alloc_hw +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wl1251/wl1251 0xae814082 wl1251_free_hw +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x06d3b27e wl12xx_debug_level +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x0dc78171 wlcore_boot_upload_nvs +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x1158f8d6 wlcore_enable_interrupts +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x1541cdda wl1271_acx_set_ht_capabilities +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x1e6faf44 wlcore_synchronize_interrupts +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x20351125 wlcore_get_native_channel_type +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x2614e087 wlcore_event_max_tx_failure +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x26544665 wlcore_event_sched_scan_completed +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x2c94ff69 wlcore_boot_run_firmware +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x30eb2fdf wlcore_cmd_generic_cfg +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x37d0df73 wlcore_set_partition +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x3c623bf2 wl1271_cmd_test +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x3da00cb9 wl1271_acx_init_mem_config +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x475152a7 wlcore_scan_sched_scan_ssid_list +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x50e41f27 wl1271_acx_sleep_auth +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x52af0ef4 wlcore_cmd_wait_for_event_or_timeout +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x5e51410f wlcore_event_ba_rx_constraint +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x6105c94c wlcore_alloc_hw +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x62773f5a wlcore_event_roc_complete +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x62f6e592 wlcore_set_key +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x65589fb3 wlcore_event_channel_switch +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x65feb1e0 wlcore_disable_interrupts_nosync +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x693b1abd wlcore_probe +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x795a54b3 wl12xx_acx_mem_cfg +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x7fa6eed3 wlcore_event_inactive_sta +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x80816ae6 wl1271_tx_min_rate_get +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x85498cd1 wl1271_format_buffer +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x894ba1ea wlcore_event_fw_logger +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x8a9ed808 wl1271_cmd_configure +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x8d99a9af wlcore_free_hw +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x94100d38 wl1271_cmd_data_path +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0xa2cef22e wl1271_debugfs_update_stats +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0xa5518f96 wlcore_remove +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0xb1169836 wl1271_acx_pm_config +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0xbb8c6004 wlcore_event_soft_gemini_sense +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0xbf3d7466 wlcore_boot_upload_firmware +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0xc16b42d4 wlcore_disable_interrupts +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0xc2c720d9 wlcore_translate_addr +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0xd666a8a4 wlcore_scan_sched_scan_results +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0xd9874c58 wl1271_tx_flush +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0xe1b783f9 wl1271_cmd_send +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0xe2812a62 wlcore_event_dummy_packet +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0xe9aa46e1 wlcore_event_rssi_trigger +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0xed7d945e wl12xx_cmd_build_probe_req +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0xf508b57d wlcore_set_scan_chan_params +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0xfc254e4b wlcore_event_beacon_loss +EXPORT_SYMBOL_GPL drivers/nfc/mei_phy 0x02a105c4 nfc_mei_phy_alloc +EXPORT_SYMBOL_GPL drivers/nfc/mei_phy 0xb4f15a2d nfc_mei_phy_free +EXPORT_SYMBOL_GPL drivers/nfc/mei_phy 0xd81b317e mei_phy_ops +EXPORT_SYMBOL_GPL drivers/nfc/nfcmrvl/nfcmrvl 0x04e9d5f6 nfcmrvl_nci_recv_frame +EXPORT_SYMBOL_GPL drivers/nfc/nfcmrvl/nfcmrvl 0x33633e71 nfcmrvl_nci_unregister_dev +EXPORT_SYMBOL_GPL drivers/nfc/nfcmrvl/nfcmrvl 0x7004df94 nfcmrvl_parse_dt +EXPORT_SYMBOL_GPL drivers/nfc/nfcmrvl/nfcmrvl 0x8648120f nfcmrvl_nci_register_dev +EXPORT_SYMBOL_GPL drivers/nfc/pn533/pn533 0x0e97d19a pn533_rx_frame_is_cmd_response +EXPORT_SYMBOL_GPL drivers/nfc/pn533/pn533 0x57361ea9 pn53x_common_init +EXPORT_SYMBOL_GPL drivers/nfc/pn533/pn533 0x5df5a70e pn53x_register_nfc +EXPORT_SYMBOL_GPL drivers/nfc/pn533/pn533 0x666465fe pn53x_unregister_nfc +EXPORT_SYMBOL_GPL drivers/nfc/pn533/pn533 0x97b7b4e6 pn532_i2c_nfc_alloc +EXPORT_SYMBOL_GPL drivers/nfc/pn533/pn533 0xbfa72c8f pn533_finalize_setup +EXPORT_SYMBOL_GPL drivers/nfc/pn533/pn533 0xdecfd339 pn533_rx_frame_is_ack +EXPORT_SYMBOL_GPL drivers/nfc/pn533/pn533 0xea391a36 pn53x_common_clean +EXPORT_SYMBOL_GPL drivers/nfc/st-nci/st-nci 0x63826a0a st_nci_probe +EXPORT_SYMBOL_GPL drivers/nfc/st-nci/st-nci 0x6939b9e9 st_nci_discover_se +EXPORT_SYMBOL_GPL drivers/nfc/st-nci/st-nci 0x91b3725f st_nci_remove +EXPORT_SYMBOL_GPL drivers/nfc/st-nci/st-nci 0x9400c94b st_nci_enable_se +EXPORT_SYMBOL_GPL drivers/nfc/st-nci/st-nci 0x9e634401 st_nci_hci_event_received +EXPORT_SYMBOL_GPL drivers/nfc/st-nci/st-nci 0x9e73e452 st_nci_hci_cmd_received +EXPORT_SYMBOL_GPL drivers/nfc/st-nci/st-nci 0xc81a5ebb st_nci_hci_load_session +EXPORT_SYMBOL_GPL drivers/nfc/st-nci/st-nci 0xefb2616f st_nci_disable_se +EXPORT_SYMBOL_GPL drivers/nfc/st95hf/st95hf 0x2c9c928b st95hf_spi_send +EXPORT_SYMBOL_GPL drivers/nfc/st95hf/st95hf 0x69e01895 st95hf_spi_recv_response +EXPORT_SYMBOL_GPL drivers/nfc/st95hf/st95hf 0x8ed5364a 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 0x1f64eb18 ntb_transport_register_client +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 0x3fc4a107 ntb_transport_unregister_client +EXPORT_SYMBOL_GPL drivers/ntb/ntb_transport 0x436098aa ntb_transport_link_down +EXPORT_SYMBOL_GPL drivers/ntb/ntb_transport 0x66a5b28e ntb_transport_create_queue +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 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/nvdimm/nd_virtio 0x1eb3c2a0 virtio_pmem_host_ack +EXPORT_SYMBOL_GPL drivers/nvdimm/nd_virtio 0x7ca2603c async_pmem_flush +EXPORT_SYMBOL_GPL drivers/nvme/host/nvme-core 0x03473da2 nvme_set_features +EXPORT_SYMBOL_GPL drivers/nvme/host/nvme-core 0x04ce37ec nvme_disable_ctrl +EXPORT_SYMBOL_GPL drivers/nvme/host/nvme-core 0x106acda3 nvme_wait_freeze_timeout +EXPORT_SYMBOL_GPL drivers/nvme/host/nvme-core 0x13985513 nvme_wait_reset +EXPORT_SYMBOL_GPL drivers/nvme/host/nvme-core 0x1981dbd4 nvme_stop_ctrl +EXPORT_SYMBOL_GPL drivers/nvme/host/nvme-core 0x2b477252 nvme_sync_queues +EXPORT_SYMBOL_GPL drivers/nvme/host/nvme-core 0x2b981447 nvme_unfreeze +EXPORT_SYMBOL_GPL drivers/nvme/host/nvme-core 0x4083f8a3 nvme_enable_ctrl +EXPORT_SYMBOL_GPL drivers/nvme/host/nvme-core 0x42cd5e2a nvme_sync_io_queues +EXPORT_SYMBOL_GPL drivers/nvme/host/nvme-core 0x44853f84 nvme_shutdown_ctrl +EXPORT_SYMBOL_GPL drivers/nvme/host/nvme-core 0x480c52b0 nvme_submit_sync_cmd +EXPORT_SYMBOL_GPL drivers/nvme/host/nvme-core 0x49224181 nvme_reset_wq +EXPORT_SYMBOL_GPL drivers/nvme/host/nvme-core 0x514f394e nvme_change_ctrl_state +EXPORT_SYMBOL_GPL drivers/nvme/host/nvme-core 0x51e7145f nvme_get_features +EXPORT_SYMBOL_GPL drivers/nvme/host/nvme-core 0x54085d0d __tracepoint_nvme_sq +EXPORT_SYMBOL_GPL drivers/nvme/host/nvme-core 0x5ac19303 nvme_remove_namespaces +EXPORT_SYMBOL_GPL drivers/nvme/host/nvme-core 0x64b62862 nvme_wq +EXPORT_SYMBOL_GPL drivers/nvme/host/nvme-core 0x68287702 nvme_reset_ctrl +EXPORT_SYMBOL_GPL drivers/nvme/host/nvme-core 0x6c461e62 nvme_setup_cmd +EXPORT_SYMBOL_GPL drivers/nvme/host/nvme-core 0x6f28c06f nvme_set_queue_count +EXPORT_SYMBOL_GPL drivers/nvme/host/nvme-core 0x73a507dc nvme_start_ctrl +EXPORT_SYMBOL_GPL drivers/nvme/host/nvme-core 0x813cf212 nvme_io_timeout +EXPORT_SYMBOL_GPL drivers/nvme/host/nvme-core 0x85fcddf3 nvme_cleanup_cmd +EXPORT_SYMBOL_GPL drivers/nvme/host/nvme-core 0x8a9c70ed nvme_sec_submit +EXPORT_SYMBOL_GPL drivers/nvme/host/nvme-core 0x8bdd28d4 nvme_complete_rq +EXPORT_SYMBOL_GPL drivers/nvme/host/nvme-core 0x8cc2dbb2 nvme_cancel_request +EXPORT_SYMBOL_GPL drivers/nvme/host/nvme-core 0x993fcabc nvme_init_ctrl +EXPORT_SYMBOL_GPL drivers/nvme/host/nvme-core 0x99a9b87d nvme_uninit_ctrl +EXPORT_SYMBOL_GPL drivers/nvme/host/nvme-core 0x9f57db2b nvme_init_identify +EXPORT_SYMBOL_GPL drivers/nvme/host/nvme-core 0xa33e6ccb nvme_stop_queues +EXPORT_SYMBOL_GPL drivers/nvme/host/nvme-core 0xa5aa26cd nvme_delete_ctrl +EXPORT_SYMBOL_GPL drivers/nvme/host/nvme-core 0xae0a3c8c nvme_kill_queues +EXPORT_SYMBOL_GPL drivers/nvme/host/nvme-core 0xb36462c1 nvme_alloc_request +EXPORT_SYMBOL_GPL drivers/nvme/host/nvme-core 0xc5ceeb64 nvme_start_freeze +EXPORT_SYMBOL_GPL drivers/nvme/host/nvme-core 0xca574962 nvme_try_sched_reset +EXPORT_SYMBOL_GPL drivers/nvme/host/nvme-core 0xd152c7ef __nvme_submit_sync_cmd +EXPORT_SYMBOL_GPL drivers/nvme/host/nvme-core 0xd45434ee admin_timeout +EXPORT_SYMBOL_GPL drivers/nvme/host/nvme-core 0xd58bbbcb nvme_delete_wq +EXPORT_SYMBOL_GPL drivers/nvme/host/nvme-core 0xe013faaa nvme_reset_ctrl_sync +EXPORT_SYMBOL_GPL drivers/nvme/host/nvme-core 0xe4821218 nvme_start_queues +EXPORT_SYMBOL_GPL drivers/nvme/host/nvme-core 0xe5dd076d nvme_wait_freeze +EXPORT_SYMBOL_GPL drivers/nvme/host/nvme-core 0xe6949811 nvme_complete_async_event +EXPORT_SYMBOL_GPL drivers/nvme/host/nvme-core 0xfb84ccd8 nvme_stop_keep_alive +EXPORT_SYMBOL_GPL drivers/nvme/host/nvme-fabrics 0x04049fcd nvmf_register_transport +EXPORT_SYMBOL_GPL drivers/nvme/host/nvme-fabrics 0x271d800c nvmf_reg_read32 +EXPORT_SYMBOL_GPL drivers/nvme/host/nvme-fabrics 0x2973fd9f nvmf_connect_io_queue +EXPORT_SYMBOL_GPL drivers/nvme/host/nvme-fabrics 0x3c57a465 nvmf_get_address +EXPORT_SYMBOL_GPL drivers/nvme/host/nvme-fabrics 0x3d4efa08 nvmf_connect_admin_queue +EXPORT_SYMBOL_GPL drivers/nvme/host/nvme-fabrics 0x618c1c3e nvmf_ip_options_match +EXPORT_SYMBOL_GPL drivers/nvme/host/nvme-fabrics 0x63f3d076 nvmf_fail_nonready_command +EXPORT_SYMBOL_GPL drivers/nvme/host/nvme-fabrics 0x75f3df96 nvmf_reg_read64 +EXPORT_SYMBOL_GPL drivers/nvme/host/nvme-fabrics 0x79df4564 nvmf_free_options +EXPORT_SYMBOL_GPL drivers/nvme/host/nvme-fabrics 0x98254540 nvmf_should_reconnect +EXPORT_SYMBOL_GPL drivers/nvme/host/nvme-fabrics 0xbc71c34e __nvmf_check_ready +EXPORT_SYMBOL_GPL drivers/nvme/host/nvme-fabrics 0xdd96a43c nvmf_unregister_transport +EXPORT_SYMBOL_GPL drivers/nvme/host/nvme-fabrics 0xebf69235 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 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 0xcbafa768 nvme_fc_register_localport +EXPORT_SYMBOL_GPL drivers/nvme/host/nvme-fc 0xfca9dc99 nvme_fc_unregister_remoteport +EXPORT_SYMBOL_GPL drivers/nvme/target/nvmet 0x0dad69f4 nvmet_sq_destroy +EXPORT_SYMBOL_GPL drivers/nvme/target/nvmet 0x37735173 nvmet_register_transport +EXPORT_SYMBOL_GPL drivers/nvme/target/nvmet 0x4b8ea521 nvmet_check_transfer_len +EXPORT_SYMBOL_GPL drivers/nvme/target/nvmet 0x667992fd nvmet_req_complete +EXPORT_SYMBOL_GPL drivers/nvme/target/nvmet 0x6bcfac50 nvmet_ctrl_fatal_error +EXPORT_SYMBOL_GPL drivers/nvme/target/nvmet 0x776fa041 nvmet_req_init +EXPORT_SYMBOL_GPL drivers/nvme/target/nvmet 0x964d80b7 nvmet_unregister_transport +EXPORT_SYMBOL_GPL drivers/nvme/target/nvmet 0xc28f5c31 nvmet_req_uninit +EXPORT_SYMBOL_GPL drivers/nvme/target/nvmet 0xc382feb1 nvmet_sq_init +EXPORT_SYMBOL_GPL drivers/nvme/target/nvmet 0xd1c5b26f nvmet_req_alloc_sgls +EXPORT_SYMBOL_GPL drivers/nvme/target/nvmet 0xdf9ebfcb nvmet_req_free_sgls +EXPORT_SYMBOL_GPL drivers/nvme/target/nvmet-fc 0x0b98123d nvmet_fc_rcv_ls_req +EXPORT_SYMBOL_GPL drivers/nvme/target/nvmet-fc 0x1048b92a nvmet_fc_rcv_fcp_req +EXPORT_SYMBOL_GPL drivers/nvme/target/nvmet-fc 0x40fab2d8 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 0x7fa5302a nvmet_fc_rcv_fcp_abort +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 0xe9bdfde8 switchtec_class +EXPORT_SYMBOL_GPL drivers/pinctrl/intel/pinctrl-intel 0x5ba44e41 intel_pinctrl_probe_by_hid +EXPORT_SYMBOL_GPL drivers/pinctrl/intel/pinctrl-intel 0x627ebb58 intel_pinctrl_resume_noirq +EXPORT_SYMBOL_GPL drivers/pinctrl/intel/pinctrl-intel 0xeee33a0d intel_pinctrl_suspend_noirq +EXPORT_SYMBOL_GPL drivers/pinctrl/intel/pinctrl-intel 0xf2f62cb1 intel_pinctrl_probe_by_uid +EXPORT_SYMBOL_GPL drivers/pinctrl/pinctrl-mcp23s08 0x4a94d4fe mcp23x17_regmap +EXPORT_SYMBOL_GPL drivers/pinctrl/pinctrl-mcp23s08 0x7aef7011 mcp23x08_regmap +EXPORT_SYMBOL_GPL drivers/pinctrl/pinctrl-mcp23s08 0x7d1f0373 mcp23s08_probe_one +EXPORT_SYMBOL_GPL drivers/platform/chrome/cros-ec-sensorhub 0x213aa387 cros_ec_sensorhub_register_push_data +EXPORT_SYMBOL_GPL drivers/platform/chrome/cros-ec-sensorhub 0x81c56e3e 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 0x579be2cb wilco_ec_set_property +EXPORT_SYMBOL_GPL drivers/platform/chrome/wilco_ec/wilco_ec 0x6a550aa7 wilco_ec_get_property +EXPORT_SYMBOL_GPL drivers/platform/chrome/wilco_ec/wilco_ec 0x6cd02ce8 wilco_ec_mailbox +EXPORT_SYMBOL_GPL drivers/platform/chrome/wilco_ec/wilco_ec 0xccf199bd wilco_ec_set_byte_property +EXPORT_SYMBOL_GPL drivers/platform/chrome/wilco_ec/wilco_ec 0xff9130c6 wilco_ec_get_byte_property +EXPORT_SYMBOL_GPL drivers/platform/x86/asus-wmi 0x57c46ceb asus_wmi_evaluate_method +EXPORT_SYMBOL_GPL drivers/platform/x86/asus-wmi 0x9d55d8a2 asus_wmi_register_driver +EXPORT_SYMBOL_GPL drivers/platform/x86/asus-wmi 0xca2df658 asus_wmi_unregister_driver +EXPORT_SYMBOL_GPL drivers/platform/x86/dell-rbtn 0x51552fca dell_rbtn_notifier_unregister +EXPORT_SYMBOL_GPL drivers/platform/x86/dell-rbtn 0xa060fe7d dell_rbtn_notifier_register +EXPORT_SYMBOL_GPL drivers/platform/x86/dell-smbios 0x1b0b3141 dell_laptop_register_notifier +EXPORT_SYMBOL_GPL drivers/platform/x86/dell-smbios 0x45170471 dell_smbios_call +EXPORT_SYMBOL_GPL drivers/platform/x86/dell-smbios 0x6c0b9f1f dell_smbios_register_device +EXPORT_SYMBOL_GPL drivers/platform/x86/dell-smbios 0x7fd2ce06 dell_smbios_find_token +EXPORT_SYMBOL_GPL drivers/platform/x86/dell-smbios 0x928e44a4 dell_smbios_unregister_device +EXPORT_SYMBOL_GPL drivers/platform/x86/dell-smbios 0x996bd2e6 dell_smbios_call_filter +EXPORT_SYMBOL_GPL drivers/platform/x86/dell-smbios 0xb9400dbf dell_laptop_call_notifier +EXPORT_SYMBOL_GPL drivers/platform/x86/dell-smbios 0xc2871e79 dell_smbios_error +EXPORT_SYMBOL_GPL drivers/platform/x86/dell-smbios 0xd6c6b12d dell_laptop_unregister_notifier +EXPORT_SYMBOL_GPL drivers/platform/x86/dell-wmi-descriptor 0x8eef8246 dell_wmi_get_hotfix +EXPORT_SYMBOL_GPL drivers/platform/x86/dell-wmi-descriptor 0x9559234e dell_wmi_get_interface_version +EXPORT_SYMBOL_GPL drivers/platform/x86/dell-wmi-descriptor 0xa167d064 dell_wmi_get_size +EXPORT_SYMBOL_GPL drivers/platform/x86/dell-wmi-descriptor 0xa3dcfa65 dell_wmi_get_descriptor_valid +EXPORT_SYMBOL_GPL drivers/platform/x86/intel_ips 0x46809fa9 ips_link_to_i915_driver +EXPORT_SYMBOL_GPL drivers/platform/x86/intel_punit_ipc 0x8ee9455e intel_punit_ipc_command +EXPORT_SYMBOL_GPL drivers/platform/x86/intel_speed_select_if/isst_if_common 0x050ecd13 isst_if_get_pci_dev +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 0x136af905 isst_if_cdev_register +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 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 0xe18f42a5 isst_if_cdev_unregister +EXPORT_SYMBOL_GPL drivers/platform/x86/intel_telemetry_core 0x112d0332 telemetry_get_pltdata +EXPORT_SYMBOL_GPL drivers/platform/x86/intel_telemetry_core 0x17d36efd telemetry_set_pltdata +EXPORT_SYMBOL_GPL drivers/platform/x86/intel_telemetry_core 0x1c7565c2 telemetry_read_events +EXPORT_SYMBOL_GPL drivers/platform/x86/intel_telemetry_core 0x35db93a6 telemetry_get_trace_verbosity +EXPORT_SYMBOL_GPL drivers/platform/x86/intel_telemetry_core 0x5847f501 telemetry_clear_pltdata +EXPORT_SYMBOL_GPL drivers/platform/x86/intel_telemetry_core 0x5bb8e91a telemetry_raw_read_eventlog +EXPORT_SYMBOL_GPL drivers/platform/x86/intel_telemetry_core 0x665cd407 telemetry_read_eventlog +EXPORT_SYMBOL_GPL drivers/platform/x86/intel_telemetry_core 0x6b892524 telemetry_set_sampling_period +EXPORT_SYMBOL_GPL drivers/platform/x86/intel_telemetry_core 0x82bb2dbe telemetry_get_evtname +EXPORT_SYMBOL_GPL drivers/platform/x86/intel_telemetry_core 0x90551504 telemetry_add_events +EXPORT_SYMBOL_GPL drivers/platform/x86/intel_telemetry_core 0xb75bd1e6 telemetry_raw_read_events +EXPORT_SYMBOL_GPL drivers/platform/x86/intel_telemetry_core 0xbb9a2726 telemetry_reset_events +EXPORT_SYMBOL_GPL drivers/platform/x86/intel_telemetry_core 0xd14ffffc telemetry_update_events +EXPORT_SYMBOL_GPL drivers/platform/x86/intel_telemetry_core 0xe1eb4be1 telemetry_set_trace_verbosity +EXPORT_SYMBOL_GPL drivers/platform/x86/intel_telemetry_core 0xe8847f53 telemetry_get_sampling_period +EXPORT_SYMBOL_GPL drivers/platform/x86/intel_telemetry_core 0xf00771b0 telemetry_get_eventconfig +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 0x4ef4508a wmidev_block_query +EXPORT_SYMBOL_GPL drivers/platform/x86/wmi 0x6068bedf wmi_evaluate_method +EXPORT_SYMBOL_GPL drivers/platform/x86/wmi 0x6a4b4e42 set_required_buffer_size +EXPORT_SYMBOL_GPL drivers/platform/x86/wmi 0x76ae31fd wmi_remove_notify_handler +EXPORT_SYMBOL_GPL drivers/platform/x86/wmi 0xaba842fe wmi_query_block +EXPORT_SYMBOL_GPL drivers/platform/x86/wmi 0xc9d4d6d1 wmi_has_guid +EXPORT_SYMBOL_GPL drivers/platform/x86/wmi 0xd7752b86 wmi_set_block +EXPORT_SYMBOL_GPL drivers/platform/x86/wmi 0xe75852c2 wmidev_evaluate_method +EXPORT_SYMBOL_GPL drivers/platform/x86/wmi 0xf18bdd75 wmi_install_notify_handler +EXPORT_SYMBOL_GPL drivers/power/supply/bq27xxx_battery 0x6a2ca86d bq27xxx_battery_teardown +EXPORT_SYMBOL_GPL drivers/power/supply/bq27xxx_battery 0xcb771f7b bq27xxx_battery_update +EXPORT_SYMBOL_GPL drivers/power/supply/bq27xxx_battery 0xe8c70518 bq27xxx_battery_setup +EXPORT_SYMBOL_GPL drivers/power/supply/pcf50633-charger 0x24a19884 pcf50633_mbc_get_status +EXPORT_SYMBOL_GPL drivers/power/supply/pcf50633-charger 0x62258728 pcf50633_mbc_usb_curlim_set +EXPORT_SYMBOL_GPL drivers/power/supply/pcf50633-charger 0x972db40d pcf50633_mbc_get_usb_online_status +EXPORT_SYMBOL_GPL drivers/powercap/intel_rapl_common 0x31d3c60f rapl_remove_package +EXPORT_SYMBOL_GPL drivers/powercap/intel_rapl_common 0x7b777446 rapl_find_package_domain +EXPORT_SYMBOL_GPL drivers/powercap/intel_rapl_common 0x877dfd6c rapl_add_package +EXPORT_SYMBOL_GPL drivers/powercap/intel_rapl_common 0x97a0a7fb rapl_remove_platform_domain +EXPORT_SYMBOL_GPL drivers/powercap/intel_rapl_common 0xc75d7c0b rapl_add_platform_domain +EXPORT_SYMBOL_GPL drivers/regulator/mc13xxx-regulator-core 0x7d6909d6 mc13xxx_regulator_ops +EXPORT_SYMBOL_GPL drivers/regulator/mc13xxx-regulator-core 0x9f649828 mc13xxx_fixed_regulator_ops +EXPORT_SYMBOL_GPL drivers/regulator/mc13xxx-regulator-core 0xa78d5f8c mc13xxx_fixed_regulator_set_voltage +EXPORT_SYMBOL_GPL drivers/regulator/wm8350-regulator 0x0b850a4f wm8350_dcdc_set_slot +EXPORT_SYMBOL_GPL drivers/regulator/wm8350-regulator 0x66cd12c1 wm8350_isink_set_flash +EXPORT_SYMBOL_GPL drivers/regulator/wm8350-regulator 0x686b8fce wm8350_dcdc25_set_mode +EXPORT_SYMBOL_GPL drivers/regulator/wm8350-regulator 0x7040b8d0 wm8350_register_led +EXPORT_SYMBOL_GPL drivers/regulator/wm8350-regulator 0xe16a8223 wm8350_register_regulator +EXPORT_SYMBOL_GPL drivers/regulator/wm8350-regulator 0xec5a4083 wm8350_ldo_set_slot +EXPORT_SYMBOL_GPL drivers/regulator/wm8400-regulator 0x791d41c9 wm8400_register_regulator +EXPORT_SYMBOL_GPL drivers/rpmsg/qcom_glink 0x149236da qcom_glink_native_remove +EXPORT_SYMBOL_GPL drivers/rpmsg/qcom_glink 0x4ab1384e qcom_glink_native_probe +EXPORT_SYMBOL_GPL drivers/rpmsg/qcom_glink 0xf14f5684 qcom_glink_ssr_notify +EXPORT_SYMBOL_GPL drivers/rpmsg/qcom_glink 0xfd2d5a1d qcom_glink_native_unregister +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x007dca0a cxgbi_create_session +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x0439ae75 cxgbi_conn_xmit_pdu +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x0bb1237b cxgbi_sock_closed +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x132b66d9 cxgbi_sock_check_wr_invariants +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x16867ccb cxgbi_get_conn_stats +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x29cfff4c cxgbi_device_portmap_create +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x30660eb2 cxgbi_device_unregister +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x3e03fb6d cxgbi_hbas_add +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x40e7bc9d cxgbi_sock_established +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x42d40c30 cxgbi_sock_rcv_close_conn_rpl +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x44e66dee cxgbi_device_find_by_lldev +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x466e76b1 cxgbi_ddp_ppm_setup +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x497a43e0 cxgbi_sock_act_open_req_arp_failure +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x51de8170 cxgbi_sock_fail_act_open +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x52e802a2 cxgbi_device_find_by_netdev +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x5891e755 cxgbi_cleanup_task +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x63707553 cxgbi_ep_disconnect +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x69593d27 cxgbi_sock_purge_wr_queue +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x6d74b787 cxgbi_device_register +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x71cfc239 cxgbi_set_host_param +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x7f9efb7e cxgbi_conn_alloc_pdu +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x7fdb6004 cxgbi_device_unregister_all +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x83bb694e cxgbi_sock_rcv_peer_close +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x850ef75b cxgbi_create_conn +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x8990530b cxgbi_ep_poll +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x9550b866 cxgbi_sock_select_mss +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x95fced7d cxgbi_get_ep_param +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x98295d1c cxgbi_set_conn_param +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x9e966b3e cxgbi_sock_rcv_abort_rpl +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x9eebb4ff cxgbi_conn_pdu_ready +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0xabcdbff1 cxgbi_hbas_remove +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0xb572c702 cxgbi_conn_init_pdu +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0xb96a8911 cxgbi_sock_rcv_wr_ack +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0xbb2dd780 cxgbi_iscsi_init +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0xc011af75 cxgbi_ddp_set_one_ppod +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0xc6c004fa cxgbi_conn_tx_open +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0xc85f9688 cxgbi_device_find_by_netdev_rcu +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0xc95bc2ec cxgbi_destroy_session +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0xcd8c105e cxgbi_bind_conn +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0xcf441ad4 cxgbi_parse_pdu_itt +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0xd1fd7634 cxgbi_iscsi_cleanup +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0xdd5cb9d5 cxgbi_device_portmap_cleanup +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0xe1ae9622 cxgbi_sock_free_cpl_skbs +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0xe7201039 cxgbi_get_host_param +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0xe931e48e cxgbi_ep_connect +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0xeb1db49c cxgbi_sock_skb_entail +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0xef346615 cxgbi_attr_is_visible +EXPORT_SYMBOL_GPL drivers/scsi/fcoe/libfcoe 0x07041475 fcoe_get_lesb +EXPORT_SYMBOL_GPL drivers/scsi/fcoe/libfcoe 0x0d00e070 fcoe_fc_crc +EXPORT_SYMBOL_GPL drivers/scsi/fcoe/libfcoe 0x23c52d68 fcoe_clean_pending_queue +EXPORT_SYMBOL_GPL drivers/scsi/fcoe/libfcoe 0x25e1da5a __fcoe_get_lesb +EXPORT_SYMBOL_GPL drivers/scsi/fcoe/libfcoe 0x30ffb3fd fcoe_fcf_device_delete +EXPORT_SYMBOL_GPL drivers/scsi/fcoe/libfcoe 0x36458d18 fcoe_get_wwn +EXPORT_SYMBOL_GPL drivers/scsi/fcoe/libfcoe 0x3a9389af fcoe_validate_vport_create +EXPORT_SYMBOL_GPL drivers/scsi/fcoe/libfcoe 0x5aecec71 fcoe_check_wait_queue +EXPORT_SYMBOL_GPL drivers/scsi/fcoe/libfcoe 0x61abffc1 fcoe_link_speed_update +EXPORT_SYMBOL_GPL drivers/scsi/fcoe/libfcoe 0x66892b3d fcoe_libfc_config +EXPORT_SYMBOL_GPL drivers/scsi/fcoe/libfcoe 0x6afc753d fcoe_start_io +EXPORT_SYMBOL_GPL drivers/scsi/fcoe/libfcoe 0x6d84e6be fcoe_fcf_device_add +EXPORT_SYMBOL_GPL drivers/scsi/fcoe/libfcoe 0x880b64f4 fcoe_ctlr_device_add +EXPORT_SYMBOL_GPL drivers/scsi/fcoe/libfcoe 0x8a1359be fcoe_ctlr_device_delete +EXPORT_SYMBOL_GPL drivers/scsi/fcoe/libfcoe 0x95052b80 fcoe_get_paged_crc_eof +EXPORT_SYMBOL_GPL drivers/scsi/fcoe/libfcoe 0xbac58840 fcoe_queue_timer +EXPORT_SYMBOL_GPL drivers/scsi/fcoe/libfcoe 0xdd944534 fcoe_wwn_from_mac +EXPORT_SYMBOL_GPL drivers/scsi/fcoe/libfcoe 0xf167cb7a fcoe_wwn_to_str +EXPORT_SYMBOL_GPL drivers/scsi/fcoe/libfcoe 0xfea19722 fcoe_ctlr_get_lesb +EXPORT_SYMBOL_GPL drivers/scsi/fdomain 0x5eedf138 fdomain_create +EXPORT_SYMBOL_GPL drivers/scsi/fdomain 0xfcb2b753 fdomain_destroy +EXPORT_SYMBOL_GPL drivers/scsi/iscsi_boot_sysfs 0x2a4d271f iscsi_boot_create_acpitbl +EXPORT_SYMBOL_GPL drivers/scsi/iscsi_boot_sysfs 0x2e22d5c9 iscsi_boot_create_kset +EXPORT_SYMBOL_GPL drivers/scsi/iscsi_boot_sysfs 0x802e5a9f iscsi_boot_create_ethernet +EXPORT_SYMBOL_GPL drivers/scsi/iscsi_boot_sysfs 0x99855bfa iscsi_boot_destroy_kset +EXPORT_SYMBOL_GPL drivers/scsi/iscsi_boot_sysfs 0xb5e8e0b5 iscsi_boot_create_target +EXPORT_SYMBOL_GPL drivers/scsi/iscsi_boot_sysfs 0xd5cb4487 iscsi_boot_create_initiator +EXPORT_SYMBOL_GPL drivers/scsi/iscsi_boot_sysfs 0xf89a02bd iscsi_boot_create_host_kset +EXPORT_SYMBOL_GPL drivers/scsi/libfc/libfc 0x48561353 fc_seq_els_rsp_send +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x0124de69 iscsi_eh_abort +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x0c7d583b iscsi_set_param +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x0d83801d iscsi_host_add +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x12b2ad06 iscsi_switch_str_param +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x1ccb11d3 iscsi_conn_teardown +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x20cccdbc iscsi_conn_send_pdu +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x2224aae9 iscsi_eh_device_reset +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x25ab7e87 iscsi_conn_get_param +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x271b2201 iscsi_conn_start +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x2aa0cecc iscsi_host_remove +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x335f0e32 iscsi_target_alloc +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x3878fd6f iscsi_eh_session_reset +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x3bef2f73 iscsi_pool_init +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x42de185f iscsi_suspend_queue +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x4f702293 __iscsi_put_task +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x503635ba iscsi_host_free +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x536ed32e iscsi_host_get_param +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x5f3487e6 iscsi_update_cmdsn +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x5fc31c0b iscsi_session_get_param +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x607908cf iscsi_verify_itt +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x6c6b19c9 iscsi_prep_data_out_pdu +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x7b5eb32f __iscsi_complete_pdu +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x8d303b1b iscsi_pool_free +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x8ec84552 iscsi_suspend_tx +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x8f397dd5 iscsi_queuecommand +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x93c56e7c iscsi_conn_queue_work +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x97e3ffe1 iscsi_session_setup +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x9ccfe7fe iscsi_host_set_param +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0xaae3f53a iscsi_itt_to_task +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0xadaee895 iscsi_session_teardown +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0xae9dc569 iscsi_session_recovery_timedout +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0xb555f5e3 iscsi_complete_scsi_task +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0xc5a0cd54 iscsi_conn_bind +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0xc941deba iscsi_host_alloc +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0xd429500f iscsi_session_failure +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0xdaf779c9 iscsi_eh_recover_target +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0xdb543d9b iscsi_requeue_task +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0xdb863389 iscsi_conn_failure +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0xddfea120 iscsi_conn_setup +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0xe08c8d0e iscsi_eh_cmd_timed_out +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0xe84a198c iscsi_put_task +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0xea6e37c4 iscsi_complete_pdu +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0xeab9cbd5 iscsi_conn_get_addr_param +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0xead8bf82 iscsi_itt_to_ctask +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0xf2e5b378 iscsi_conn_stop +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0xf4e07ca3 __iscsi_get_task +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi_tcp 0x04f8645a iscsi_tcp_conn_teardown +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi_tcp 0x0b45512d iscsi_tcp_segment_unmap +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi_tcp 0x19e07cf9 iscsi_tcp_task_init +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi_tcp 0x1f27a80c iscsi_tcp_segment_done +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi_tcp 0x2465c742 iscsi_tcp_conn_get_stats +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi_tcp 0x3694c72f iscsi_tcp_set_max_r2t +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi_tcp 0x42d107b2 iscsi_tcp_conn_setup +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi_tcp 0x49ea4a33 iscsi_tcp_cleanup_task +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi_tcp 0x4e088766 iscsi_segment_seek_sg +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi_tcp 0x519e0cc2 iscsi_tcp_recv_segment_is_hdr +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi_tcp 0x70c9b5a3 iscsi_tcp_dgst_header +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi_tcp 0x7c4775ff iscsi_tcp_task_xmit +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi_tcp 0x84b1f752 iscsi_tcp_r2tpool_alloc +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi_tcp 0x8b600872 iscsi_tcp_recv_skb +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi_tcp 0x8fc021ce iscsi_tcp_hdr_recv_prep +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi_tcp 0xa0b96776 iscsi_tcp_r2tpool_free +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi_tcp 0xe10076d0 iscsi_segment_init_linear +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0x1cc4ff1e sas_get_local_phy +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0x1fe922c9 sas_ioctl +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0x20a43298 sas_queuecommand +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0x24d99af2 sas_register_ha +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0x2b959dbc sas_task_abort +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0x39bd0eec sas_unregister_ha +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0x448b6159 sas_ata_schedule_reset +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0x449106c9 sas_bios_param +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0x64faa18c sas_request_addr +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0x6800aa80 sas_change_queue_depth +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0x6d8da302 sas_alloc_task +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0x7e962cc2 sas_phy_reset +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0x9359a248 sas_domain_attach_transport +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0x95d6c706 sas_slave_configure +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0xa24eb355 sas_eh_device_reset_handler +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0xa976bf22 sas_target_alloc +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0xac81cbfe sas_target_destroy +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0xb7448622 sas_eh_target_reset_handler +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0xc16e5dc1 sas_eh_abort_handler +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0xc491eac5 sas_drain_work +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0xc6f209a4 dev_attr_phy_event_threshold +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0xcb82a951 sas_ssp_task_response +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0xd7c22cd3 sas_alloc_slow_task +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0xee840ce6 sas_free_task +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x03120cc9 iscsi_is_session_online +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x04a67af0 iscsi_dbg_trace +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x05f2e62c iscsi_create_endpoint +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x067f6806 iscsi_recv_pdu +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x0a46ceb4 iscsi_scan_finished +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x11cce377 iscsi_host_for_each_session +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x1614682c iscsi_destroy_conn +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x1771b5bd iscsi_unblock_session +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x214907bd iscsi_find_flashnode_conn +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x21b451db iscsi_get_port_state_name +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x2d9a43e3 iscsi_is_session_dev +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x3133dc5c __tracepoint_iscsi_dbg_session +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x31fb57ae iscsi_block_session +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x3d69d848 iscsi_offload_mesg +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x3e660fc6 iscsi_destroy_endpoint +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x47867762 __tracepoint_iscsi_dbg_tcp +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x4b87d60b iscsi_get_port_speed_name +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x598cc6fd iscsi_create_session +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x69587e50 iscsi_add_session +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x699fe53e iscsi_get_discovery_parent_name +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x6b6397a9 iscsi_conn_error_event +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x70cd1051 iscsi_remove_session +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x71a62af4 iscsi_free_session +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x72916ec6 iscsi_session_event +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x7abf42b0 iscsi_create_flashnode_sess +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x7e20a9af iscsi_register_transport +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x8171069e iscsi_unregister_transport +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x84a005f1 iscsi_get_router_state_name +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x85ea1762 iscsi_lookup_endpoint +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x86d32bbc iscsi_create_iface +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x8fc2e4b5 iscsi_alloc_session +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x90707d93 iscsi_destroy_flashnode_sess +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x9cf9bb28 iscsi_create_flashnode_conn +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x9d0df526 iscsi_destroy_iface +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0xa7a7273d iscsi_destroy_all_flashnode +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0xa9ce692a iscsi_session_chkready +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0xaa0c1f91 iscsi_flashnode_bus_match +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0xaac3519d __tracepoint_iscsi_dbg_conn +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0xabbc34ca iscsi_find_flashnode_sess +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0xaea92c90 __tracepoint_iscsi_dbg_eh +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0xbc071179 iscsi_get_ipaddress_state_name +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0xbddb6deb iscsi_post_host_event +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0xcc15804e iscsi_create_conn +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0xcf3ef0d4 iscsi_conn_login_event +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0xd4697d5b __tracepoint_iscsi_dbg_sw_tcp +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0xda64196f iscsi_block_scsi_eh +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0xe27886dd iscsi_ping_comp_event +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_sas 0x3b5b58c2 sas_is_tlr_enabled +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_sas 0x5d1976d2 sas_enable_tlr +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_sas 0x7863d816 sas_tlr_supported +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_sas 0xf77f9419 sas_disable_tlr +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 0xb0242a6b 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 0x57dd4191 srp_release_transport +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_srp 0x64e764f6 srp_rport_del +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_srp 0x7a888075 srp_rport_add +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_srp 0x8e251f91 srp_attach_transport +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_srp 0xe6b9228e srp_stop_rport_timers +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_srp 0xf3464aa3 srp_remove_host +EXPORT_SYMBOL_GPL drivers/scsi/ufs/ufshcd-core 0x0862f8ea ufshcd_release +EXPORT_SYMBOL_GPL drivers/scsi/ufs/ufshcd-core 0x2397fc2f ufshcd_remove +EXPORT_SYMBOL_GPL drivers/scsi/ufs/ufshcd-core 0x2be09b7b ufshcd_auto_hibern8_update +EXPORT_SYMBOL_GPL drivers/scsi/ufs/ufshcd-core 0x359f704d ufshcd_link_recovery +EXPORT_SYMBOL_GPL drivers/scsi/ufs/ufshcd-core 0x3cd2077f ufshcd_make_hba_operational +EXPORT_SYMBOL_GPL drivers/scsi/ufs/ufshcd-core 0x5d588c32 ufshcd_update_reg_hist +EXPORT_SYMBOL_GPL drivers/scsi/ufs/ufshcd-core 0x723b1abf ufshcd_delay_us +EXPORT_SYMBOL_GPL drivers/scsi/ufs/ufshcd-core 0x747eacd0 ufshcd_dme_get_attr +EXPORT_SYMBOL_GPL drivers/scsi/ufs/ufshcd-core 0x7bad1105 ufshcd_dme_set_attr +EXPORT_SYMBOL_GPL drivers/scsi/ufs/ufshcd-core 0x801e52dd ufshcd_init +EXPORT_SYMBOL_GPL drivers/scsi/ufs/ufshcd-core 0xaadc2607 ufshcd_config_pwr_mode +EXPORT_SYMBOL_GPL drivers/scsi/ufs/ufshcd-core 0xc1e4027e ufshcd_fixup_dev_quirks +EXPORT_SYMBOL_GPL drivers/scsi/ufs/ufshcd-core 0xc5fab2d0 ufshcd_dealloc_host +EXPORT_SYMBOL_GPL drivers/scsi/ufs/ufshcd-core 0xc989a87a ufshcd_dump_regs +EXPORT_SYMBOL_GPL drivers/scsi/ufs/ufshcd-core 0xce6c2beb ufshcd_uic_hibern8_exit +EXPORT_SYMBOL_GPL drivers/scsi/ufs/ufshcd-core 0xd78cd101 ufshcd_hold +EXPORT_SYMBOL_GPL drivers/scsi/ufs/ufshcd-core 0xdf860cbe ufshcd_hba_enable +EXPORT_SYMBOL_GPL drivers/scsi/ufs/ufshcd-pltfrm 0x15d135da ufshcd_pltfrm_runtime_idle +EXPORT_SYMBOL_GPL drivers/scsi/ufs/ufshcd-pltfrm 0x257c6cfa ufshcd_pltfrm_resume +EXPORT_SYMBOL_GPL drivers/scsi/ufs/ufshcd-pltfrm 0x26e076bc ufshcd_pltfrm_runtime_resume +EXPORT_SYMBOL_GPL drivers/scsi/ufs/ufshcd-pltfrm 0x2af4289b ufshcd_pltfrm_suspend +EXPORT_SYMBOL_GPL drivers/scsi/ufs/ufshcd-pltfrm 0x37b0134b ufshcd_pltfrm_init +EXPORT_SYMBOL_GPL drivers/scsi/ufs/ufshcd-pltfrm 0xb5485024 ufshcd_pltfrm_runtime_suspend +EXPORT_SYMBOL_GPL drivers/scsi/ufs/ufshcd-pltfrm 0xf0771c04 ufshcd_pltfrm_shutdown +EXPORT_SYMBOL_GPL drivers/scsi/ufs/ufshcd-pltfrm 0xff85cd6b ufshcd_get_pwr_dev_param +EXPORT_SYMBOL_GPL drivers/siox/siox-core 0x1c325598 siox_master_alloc +EXPORT_SYMBOL_GPL drivers/siox/siox-core 0x6c6d41ed __siox_driver_register +EXPORT_SYMBOL_GPL drivers/siox/siox-core 0x8002de38 siox_master_unregister +EXPORT_SYMBOL_GPL drivers/siox/siox-core 0xb8398a30 siox_master_register +EXPORT_SYMBOL_GPL drivers/siox/siox-core 0xcf1805e9 siox_device_synced +EXPORT_SYMBOL_GPL drivers/siox/siox-core 0xd3125dae siox_device_connected +EXPORT_SYMBOL_GPL drivers/slimbus/slimbus 0x05bf5d44 slim_readb +EXPORT_SYMBOL_GPL drivers/slimbus/slimbus 0x061e12ef slim_device_report_present +EXPORT_SYMBOL_GPL drivers/slimbus/slimbus 0x167bc130 slim_ctrl_clk_pause +EXPORT_SYMBOL_GPL drivers/slimbus/slimbus 0x1ac6e931 slim_stream_allocate +EXPORT_SYMBOL_GPL drivers/slimbus/slimbus 0x2717d244 of_slim_get_device +EXPORT_SYMBOL_GPL drivers/slimbus/slimbus 0x35dd1597 slim_alloc_txn_tid +EXPORT_SYMBOL_GPL drivers/slimbus/slimbus 0x37fa3f88 slim_driver_unregister +EXPORT_SYMBOL_GPL drivers/slimbus/slimbus 0x46252c26 slim_register_controller +EXPORT_SYMBOL_GPL drivers/slimbus/slimbus 0x49af618f __slim_driver_register +EXPORT_SYMBOL_GPL drivers/slimbus/slimbus 0x4e8ad585 slim_stream_free +EXPORT_SYMBOL_GPL drivers/slimbus/slimbus 0x4fddecf9 slim_writeb +EXPORT_SYMBOL_GPL drivers/slimbus/slimbus 0x625c1458 slim_msg_response +EXPORT_SYMBOL_GPL drivers/slimbus/slimbus 0x6bf94cc9 slim_stream_unprepare +EXPORT_SYMBOL_GPL drivers/slimbus/slimbus 0x7962356e slim_do_transfer +EXPORT_SYMBOL_GPL drivers/slimbus/slimbus 0x7b56c1e0 slim_get_logical_addr +EXPORT_SYMBOL_GPL drivers/slimbus/slimbus 0x81834bb9 slim_xfer_msg +EXPORT_SYMBOL_GPL drivers/slimbus/slimbus 0x8c56bdc3 slim_stream_disable +EXPORT_SYMBOL_GPL drivers/slimbus/slimbus 0x8f18cf42 slim_stream_enable +EXPORT_SYMBOL_GPL drivers/slimbus/slimbus 0xa885bf4a slim_free_txn_tid +EXPORT_SYMBOL_GPL drivers/slimbus/slimbus 0xcce3d0f3 slim_report_absent +EXPORT_SYMBOL_GPL drivers/slimbus/slimbus 0xcdf847b0 slim_unregister_controller +EXPORT_SYMBOL_GPL drivers/slimbus/slimbus 0xcf4ec16f slim_get_device +EXPORT_SYMBOL_GPL drivers/slimbus/slimbus 0xd4c965be slim_write +EXPORT_SYMBOL_GPL drivers/slimbus/slimbus 0xd4d1bd17 slim_stream_prepare +EXPORT_SYMBOL_GPL drivers/slimbus/slimbus 0xdea68579 slim_read +EXPORT_SYMBOL_GPL drivers/slimbus/slimbus 0xeef9ec54 slimbus_bus +EXPORT_SYMBOL_GPL drivers/soundwire/soundwire-bus 0x72323a88 sdw_bus_type +EXPORT_SYMBOL_GPL drivers/soundwire/soundwire-bus 0x850c03b6 __sdw_register_driver +EXPORT_SYMBOL_GPL drivers/soundwire/soundwire-bus 0xc70bdd41 sdw_unregister_driver +EXPORT_SYMBOL_GPL drivers/soundwire/soundwire-cadence 0x033d6f72 sdw_cdns_debugfs_init +EXPORT_SYMBOL_GPL drivers/spi/spi-bitbang 0x167ff15d spi_bitbang_setup_transfer +EXPORT_SYMBOL_GPL drivers/spi/spi-bitbang 0x347214d8 spi_bitbang_cleanup +EXPORT_SYMBOL_GPL drivers/spi/spi-bitbang 0x6db6ebde spi_bitbang_stop +EXPORT_SYMBOL_GPL drivers/spi/spi-bitbang 0x920a989e spi_bitbang_init +EXPORT_SYMBOL_GPL drivers/spi/spi-bitbang 0xa11520b4 spi_bitbang_start +EXPORT_SYMBOL_GPL drivers/spi/spi-bitbang 0xef0ceaee spi_bitbang_setup +EXPORT_SYMBOL_GPL drivers/spi/spi-dw 0x072c8e71 dw_spi_resume_host +EXPORT_SYMBOL_GPL drivers/spi/spi-dw 0x21e4a90d dw_spi_dma_setup_mfld +EXPORT_SYMBOL_GPL drivers/spi/spi-dw 0x2227214c dw_spi_remove_host +EXPORT_SYMBOL_GPL drivers/spi/spi-dw 0x3548f9e8 dw_spi_set_cs +EXPORT_SYMBOL_GPL drivers/spi/spi-dw 0x8e84ae70 dw_spi_update_cr0_v1_01a +EXPORT_SYMBOL_GPL drivers/spi/spi-dw 0x93d7808d dw_spi_update_cr0 +EXPORT_SYMBOL_GPL drivers/spi/spi-dw 0xc77c0139 dw_spi_dma_setup_generic +EXPORT_SYMBOL_GPL drivers/spi/spi-dw 0xf48fb842 dw_spi_add_host +EXPORT_SYMBOL_GPL drivers/spi/spi-dw 0xffde4e8d dw_spi_suspend_host +EXPORT_SYMBOL_GPL drivers/spi/spi-loopback-test 0x5081ef8d spi_test_execute_msg +EXPORT_SYMBOL_GPL drivers/spi/spi-loopback-test 0x65063a47 spi_test_run_tests +EXPORT_SYMBOL_GPL drivers/spi/spi-loopback-test 0x6fa8db2c spi_test_run_test +EXPORT_SYMBOL_GPL drivers/spmi/spmi 0x11f3a8a4 spmi_device_alloc +EXPORT_SYMBOL_GPL drivers/spmi/spmi 0x2f4b5e12 spmi_command_reset +EXPORT_SYMBOL_GPL drivers/spmi/spmi 0x33b638b2 spmi_command_wakeup +EXPORT_SYMBOL_GPL drivers/spmi/spmi 0x3e444f21 spmi_controller_remove +EXPORT_SYMBOL_GPL drivers/spmi/spmi 0x45cb79c2 spmi_register_zero_write +EXPORT_SYMBOL_GPL drivers/spmi/spmi 0x615aa9c3 spmi_ext_register_writel +EXPORT_SYMBOL_GPL drivers/spmi/spmi 0x695c3293 spmi_command_shutdown +EXPORT_SYMBOL_GPL drivers/spmi/spmi 0x72b4d793 spmi_device_add +EXPORT_SYMBOL_GPL drivers/spmi/spmi 0x7b7cd93d spmi_register_read +EXPORT_SYMBOL_GPL drivers/spmi/spmi 0x84472f4e spmi_ext_register_readl +EXPORT_SYMBOL_GPL drivers/spmi/spmi 0x99b4af3e spmi_command_sleep +EXPORT_SYMBOL_GPL drivers/spmi/spmi 0x9b8b90fc spmi_ext_register_write +EXPORT_SYMBOL_GPL drivers/spmi/spmi 0x9f7db6d0 spmi_ext_register_read +EXPORT_SYMBOL_GPL drivers/spmi/spmi 0xa4625fbb spmi_controller_add +EXPORT_SYMBOL_GPL drivers/spmi/spmi 0xb1213add spmi_register_write +EXPORT_SYMBOL_GPL drivers/spmi/spmi 0xd713a94c __spmi_driver_register +EXPORT_SYMBOL_GPL drivers/spmi/spmi 0xe12f8875 spmi_controller_alloc +EXPORT_SYMBOL_GPL drivers/spmi/spmi 0xf09b4426 spmi_device_remove +EXPORT_SYMBOL_GPL drivers/ssb/ssb 0xcd68c679 ssb_pmu_spuravoid_pllupdate +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x018990fc comedi_dio_insn_config +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x06dff2fd comedi_bytes_per_scan +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x0a8211d1 comedi_buf_read_free +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x0bba71d7 comedi_event +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x0cd330f4 range_unknown +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x0e9c8839 comedi_dev_put +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x14426922 comedi_bytes_per_scan_cmd +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x21102f87 range_0_32mA +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x2449692b comedi_dev_get_from_minor +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x26ecbbca comedi_buf_write_free +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x2f0ad9d3 range_bipolar5 +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x409ecd64 comedi_alloc_subdev_readback +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x416c8659 comedi_buf_write_alloc +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x4236eaaf range_4_20mA +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x42bf14ce comedi_driver_unregister +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x45cc37f6 comedi_buf_read_samples +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x4fe634f3 range_bipolar2_5 +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x56ae6386 comedi_alloc_subdevices +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x590da6a3 comedi_handle_events +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x63f4f4ab comedi_nsamples_left +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x67f0b280 comedi_check_chanlist +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x77d87208 comedi_load_firmware +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x7f9a4adc comedi_alloc_spriv +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x8011d01b comedi_buf_write_samples +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x8113872c range_unipolar10 +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x83a16fae comedi_readback_insn_read +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x9426bc17 comedi_alloc_devpriv +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x9bd6cb45 comedi_request_region +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x9c41b602 comedi_dio_update_state +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x9ffc9f1e comedi_buf_read_n_available +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0xa0e405d0 comedi_timeout +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0xb1fa82dd comedi_legacy_detach +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0xb303c093 comedi_set_hw_dev +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0xb3dd1c48 comedi_inc_scan_progress +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0xb679cebc range_0_20mA +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0xb851be1d __comedi_request_region +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0xb8ac023d comedi_auto_unconfig +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0xbb52fc7f range_bipolar10 +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0xbc5425fe comedi_is_subdevice_running +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0xbdbe75c6 range_unipolar2_5 +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0xc73a3ab6 comedi_nscans_left +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0xcb25211f comedi_buf_read_alloc +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0xdb2044b2 range_unipolar5 +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0xe3daad18 comedi_set_spriv_auto_free +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0xff7a5d7f comedi_auto_config +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0xff956673 comedi_driver_register +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi_pci 0x61220d11 comedi_pci_driver_register +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi_pci 0x688506a6 comedi_pci_disable +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi_pci 0x91843ebf comedi_pci_detach +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi_pci 0x9e0c01ab comedi_pci_enable +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi_pci 0xa861a901 comedi_pci_auto_unconfig +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi_pci 0xb35a076e comedi_pci_auto_config +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi_pci 0xb3971758 comedi_to_pci_dev +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi_pci 0xe487c69c comedi_pci_driver_unregister +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi_pcmcia 0x4ba661f0 comedi_pcmcia_driver_register +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi_pcmcia 0x4d30071b comedi_pcmcia_auto_unconfig +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi_pcmcia 0x92e7dcc3 comedi_pcmcia_disable +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi_pcmcia 0xa51b83a8 comedi_pcmcia_driver_unregister +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi_pcmcia 0xccb8efaf comedi_pcmcia_auto_config +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi_pcmcia 0xd1b899c7 comedi_pcmcia_enable +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi_pcmcia 0xfb0c5f5d comedi_to_pcmcia_dev +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi_usb 0x07ebc61d comedi_to_usb_dev +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi_usb 0x1270dee9 comedi_usb_driver_register +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi_usb 0x56ab1436 comedi_usb_auto_unconfig +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi_usb 0x68ec4128 comedi_usb_driver_unregister +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi_usb 0xa99009e5 comedi_usb_auto_config +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi_usb 0xba86fd48 comedi_to_usb_interface +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/addi_watchdog 0x79f4a6cf addi_watchdog_reset +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/addi_watchdog 0xb0c21536 addi_watchdog_init +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/amplc_dio200_common 0x133992a5 amplc_dio200_set_enhance +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/amplc_dio200_common 0xfc392d0b amplc_dio200_common_attach +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/amplc_pc236_common 0x79655ab8 amplc_pc236_common_attach +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/comedi_8254 0x057e3a11 comedi_8254_set_busy +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/comedi_8254 0x23ea6a7c comedi_8254_subdevice_init +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/comedi_8254 0x2f5630f9 comedi_8254_set_mode +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/comedi_8254 0x39dec84b comedi_8254_update_divisors +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/comedi_8254 0x3ce7fd12 comedi_8254_mm_init +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/comedi_8254 0x476c55dd comedi_8254_init +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/comedi_8254 0x498df837 comedi_8254_cascade_ns_to_timer +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/comedi_8254 0x781a6d70 comedi_8254_read +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/comedi_8254 0xaafe168a comedi_8254_pacer_enable +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/comedi_8254 0xb955b1c0 comedi_8254_write +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/comedi_8254 0xe5b28289 comedi_8254_status +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/comedi_8254 0xe98e6e06 comedi_8254_ns_to_timer +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/comedi_8254 0xf33eb124 comedi_8254_load +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/comedi_8255 0x27bb0ff6 subdev_8255_mm_init +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/comedi_8255 0x4ad62a82 subdev_8255_init +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/comedi_8255 0x60604d47 subdev_8255_regbase +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/comedi_isadma 0x12fba874 comedi_isadma_disable +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/comedi_isadma 0x4a17474e comedi_isadma_disable_on_sample +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/comedi_isadma 0x519be70b comedi_isadma_alloc +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/comedi_isadma 0x5542b570 comedi_isadma_free +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/comedi_isadma 0x8b408f87 comedi_isadma_poll +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/comedi_isadma 0xca784d4b comedi_isadma_set_mode +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/comedi_isadma 0xea878430 comedi_isadma_program +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/das08 0x4429f2e0 das08_common_attach +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/mite 0x020c57be mite_prep_dma +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/mite 0x1742922d mite_init_ring_descriptors +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/mite 0x3a3568a7 mite_done +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/mite 0x3b3301d1 mite_request_channel +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/mite 0x491a21a8 mite_request_channel_in_range +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/mite 0x5bd88096 mite_bytes_in_transit +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/mite 0x6179ef9b mite_dma_disarm +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/mite 0x655ec830 mite_release_channel +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/mite 0x7b107311 mite_attach +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/mite 0x8c3ecc2e mite_dma_arm +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/mite 0x9278a73f mite_sync_dma +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/mite 0xa8157a2d mite_free_ring +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/mite 0xb7f9d86a mite_buf_change +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/mite 0xc60f73df mite_ack_linkc +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/mite 0xcace770f mite_detach +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/mite 0xd75744b4 mite_alloc_ring +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/ni_labpc_common 0x533bb673 labpc_common_detach +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/ni_labpc_common 0x5dde0a1f labpc_common_attach +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/ni_labpc_isadma 0x094c9fa4 labpc_handle_dma_status +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/ni_labpc_isadma 0x4daee887 labpc_init_dma_chan +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/ni_labpc_isadma 0x5aa72227 labpc_drain_dma +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/ni_labpc_isadma 0x752046fa labpc_setup_dma +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/ni_labpc_isadma 0xde5470ca labpc_free_dma_chan +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/ni_routing 0x076bc308 ni_find_route_source +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/ni_routing 0x0921123e ni_lookup_route_register +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/ni_routing 0x1facf7f8 ni_is_cmd_dest +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/ni_routing 0x64443d67 ni_get_valid_routes +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/ni_routing 0x6c18c54e ni_count_valid_routes +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/ni_routing 0x85e75c94 ni_assign_device_routes +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/ni_routing 0x863a306d ni_sort_device_routes +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/ni_routing 0x8ab47ba4 ni_route_set_has_source +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/ni_routing 0x8f0f0901 ni_find_route_set +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/ni_routing 0xb3e302a3 ni_route_to_register +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/ni_tio 0x0235b93d ni_tio_get_soft_copy +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/ni_tio 0x062e0efa ni_tio_set_bits +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/ni_tio 0x1e1d3ee6 ni_tio_init_counter +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/ni_tio 0x2c465ced ni_tio_set_gate_src_raw +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/ni_tio 0x2e6ccee6 ni_tio_set_routing +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/ni_tio 0x35b416b5 ni_tio_get_routing +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/ni_tio 0x37b546c6 ni_tio_read +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/ni_tio 0x3bbfd9f1 ni_tio_set_gate_src +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/ni_tio 0x63a61d7a ni_tio_unset_routing +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/ni_tio 0x76c233e7 ni_gpct_device_destroy +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/ni_tio 0xa769930d ni_tio_arm +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/ni_tio 0xad4c7f10 ni_tio_write +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/ni_tio 0xbd809bda ni_tio_insn_write +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/ni_tio 0xd38f82b9 ni_gpct_device_construct +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/ni_tio 0xdcfeed97 ni_tio_insn_config +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/ni_tio 0xf3405a0c ni_tio_insn_read +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/ni_tiocmd 0x3c3d6171 ni_tio_cmd +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/ni_tiocmd 0x62c06a70 ni_tio_cmdtest +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/ni_tiocmd 0x67f7c346 ni_tio_acknowledge +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/ni_tiocmd 0x6a71aaa4 ni_tio_handle_interrupt +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/ni_tiocmd 0x97b6ddc5 ni_tio_cancel +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/ni_tiocmd 0xd8f1af70 ni_tio_set_mite_channel +EXPORT_SYMBOL_GPL drivers/staging/comedi/kcomedilib/kcomedilib 0x5cb172a6 comedi_close +EXPORT_SYMBOL_GPL drivers/staging/comedi/kcomedilib/kcomedilib 0x8f81c360 comedi_dio_config +EXPORT_SYMBOL_GPL drivers/staging/comedi/kcomedilib/kcomedilib 0xc91298d7 comedi_open +EXPORT_SYMBOL_GPL drivers/staging/comedi/kcomedilib/kcomedilib 0xd2b01297 comedi_dio_bitfield2 +EXPORT_SYMBOL_GPL drivers/staging/comedi/kcomedilib/kcomedilib 0xe017a059 comedi_dio_get_config +EXPORT_SYMBOL_GPL drivers/staging/comedi/kcomedilib/kcomedilib 0xedcdaab0 comedi_find_subdevice_by_type +EXPORT_SYMBOL_GPL drivers/staging/comedi/kcomedilib/kcomedilib 0xefa2db78 comedi_get_n_channels +EXPORT_SYMBOL_GPL drivers/staging/fieldbus/fieldbus_dev 0x35dec7c5 fieldbus_dev_register +EXPORT_SYMBOL_GPL drivers/staging/fieldbus/fieldbus_dev 0x76d077a5 fieldbus_dev_unregister +EXPORT_SYMBOL_GPL drivers/staging/fieldbus/fieldbus_dev 0x9487e01f fieldbus_dev_online_changed +EXPORT_SYMBOL_GPL drivers/staging/fieldbus/fieldbus_dev 0xa9979344 fieldbus_dev_area_updated +EXPORT_SYMBOL_GPL drivers/staging/greybus/gb-audio-apbridgea 0x0849cc34 gb_audio_apbridgea_unregister_cport +EXPORT_SYMBOL_GPL drivers/staging/greybus/gb-audio-apbridgea 0x21a4e1d8 gb_audio_apbridgea_shutdown_tx +EXPORT_SYMBOL_GPL drivers/staging/greybus/gb-audio-apbridgea 0x566d3c50 gb_audio_apbridgea_prepare_rx +EXPORT_SYMBOL_GPL drivers/staging/greybus/gb-audio-apbridgea 0x5d404109 gb_audio_apbridgea_start_rx +EXPORT_SYMBOL_GPL drivers/staging/greybus/gb-audio-apbridgea 0x5db65a1f gb_audio_apbridgea_stop_rx +EXPORT_SYMBOL_GPL drivers/staging/greybus/gb-audio-apbridgea 0x5fe3e24a gb_audio_apbridgea_set_rx_data_size +EXPORT_SYMBOL_GPL drivers/staging/greybus/gb-audio-apbridgea 0x60c5fa69 gb_audio_apbridgea_register_cport +EXPORT_SYMBOL_GPL drivers/staging/greybus/gb-audio-apbridgea 0x68ddce6f gb_audio_apbridgea_set_tx_data_size +EXPORT_SYMBOL_GPL drivers/staging/greybus/gb-audio-apbridgea 0x85e6be9a gb_audio_apbridgea_stop_tx +EXPORT_SYMBOL_GPL drivers/staging/greybus/gb-audio-apbridgea 0x8e3dd8d5 gb_audio_apbridgea_prepare_tx +EXPORT_SYMBOL_GPL drivers/staging/greybus/gb-audio-apbridgea 0xcaf65bd3 gb_audio_apbridgea_set_config +EXPORT_SYMBOL_GPL drivers/staging/greybus/gb-audio-apbridgea 0xf9f4055d gb_audio_apbridgea_shutdown_rx +EXPORT_SYMBOL_GPL drivers/staging/greybus/gb-audio-apbridgea 0xfce57a5d gb_audio_apbridgea_start_tx +EXPORT_SYMBOL_GPL drivers/staging/greybus/gb-audio-gb 0x1b20e43a gb_audio_gb_get_topology +EXPORT_SYMBOL_GPL drivers/staging/greybus/gb-audio-gb 0x23762b69 gb_audio_gb_set_tx_data_size +EXPORT_SYMBOL_GPL drivers/staging/greybus/gb-audio-gb 0x3b23e76d gb_audio_gb_activate_rx +EXPORT_SYMBOL_GPL drivers/staging/greybus/gb-audio-gb 0x55dc0ed7 gb_audio_gb_deactivate_tx +EXPORT_SYMBOL_GPL drivers/staging/greybus/gb-audio-gb 0x59cf11c9 gb_audio_gb_enable_widget +EXPORT_SYMBOL_GPL drivers/staging/greybus/gb-audio-gb 0x677190ec gb_audio_gb_get_control +EXPORT_SYMBOL_GPL drivers/staging/greybus/gb-audio-gb 0x9c674d97 gb_audio_gb_activate_tx +EXPORT_SYMBOL_GPL drivers/staging/greybus/gb-audio-gb 0xad432a90 gb_audio_gb_set_pcm +EXPORT_SYMBOL_GPL drivers/staging/greybus/gb-audio-gb 0xc3616ccb gb_audio_gb_set_rx_data_size +EXPORT_SYMBOL_GPL drivers/staging/greybus/gb-audio-gb 0xd17ded6a gb_audio_gb_get_pcm +EXPORT_SYMBOL_GPL drivers/staging/greybus/gb-audio-gb 0xef88ec49 gb_audio_gb_set_control +EXPORT_SYMBOL_GPL drivers/staging/greybus/gb-audio-gb 0xf101820b gb_audio_gb_disable_widget +EXPORT_SYMBOL_GPL drivers/staging/greybus/gb-audio-gb 0xf298a42d gb_audio_gb_deactivate_rx +EXPORT_SYMBOL_GPL drivers/staging/greybus/gb-audio-manager 0x19e9e6b1 gb_audio_manager_remove_all +EXPORT_SYMBOL_GPL drivers/staging/greybus/gb-audio-manager 0x32e6391e gb_audio_manager_remove +EXPORT_SYMBOL_GPL drivers/staging/greybus/gb-audio-manager 0x5a108b0f gb_audio_manager_add +EXPORT_SYMBOL_GPL drivers/staging/greybus/gb-audio-manager 0x68e623d4 gb_audio_manager_get_module +EXPORT_SYMBOL_GPL drivers/staging/greybus/gb-audio-manager 0x79eef2f8 gb_audio_manager_dump_all +EXPORT_SYMBOL_GPL drivers/staging/greybus/gb-audio-manager 0x9ae7c9e3 gb_audio_manager_put_module +EXPORT_SYMBOL_GPL drivers/staging/greybus/gb-audio-manager 0xaeac8ca2 gb_audio_manager_dump_module +EXPORT_SYMBOL_GPL drivers/staging/greybus/gb-gbphy 0x0f3718a7 gb_gbphy_deregister_driver +EXPORT_SYMBOL_GPL drivers/staging/greybus/gb-gbphy 0xd65efc7d gb_gbphy_register_driver +EXPORT_SYMBOL_GPL drivers/staging/greybus/gb-spilib 0xef023933 gb_spilib_master_exit +EXPORT_SYMBOL_GPL drivers/staging/greybus/gb-spilib 0xf75bbe0b gb_spilib_master_init +EXPORT_SYMBOL_GPL drivers/staging/iio/addac/adt7316 0x5827506e adt7316_pm_ops +EXPORT_SYMBOL_GPL drivers/staging/media/atomisp/i2c/atomisp-libmsrlisthelper 0x630110c6 apply_msr_data +EXPORT_SYMBOL_GPL drivers/staging/media/atomisp/i2c/atomisp-libmsrlisthelper 0x97e39838 load_msr_list +EXPORT_SYMBOL_GPL drivers/staging/media/atomisp/i2c/atomisp-libmsrlisthelper 0xf2be4c34 release_msr_list +EXPORT_SYMBOL_GPL drivers/staging/media/atomisp/pci/atomisp_gmin_platform 0x0c5446dc atomisp_register_i2c_module +EXPORT_SYMBOL_GPL drivers/staging/media/atomisp/pci/atomisp_gmin_platform 0x5a4baa8d atomisp_get_platform_data +EXPORT_SYMBOL_GPL drivers/staging/media/atomisp/pci/atomisp_gmin_platform 0x779e47bc atomisp_gmin_find_subdev +EXPORT_SYMBOL_GPL drivers/staging/media/atomisp/pci/atomisp_gmin_platform 0x9e49cfc5 atomisp_gmin_register_vcm_control +EXPORT_SYMBOL_GPL drivers/staging/media/atomisp/pci/atomisp_gmin_platform 0xabcb9de3 gmin_get_var_int +EXPORT_SYMBOL_GPL drivers/staging/media/atomisp/pci/atomisp_gmin_platform 0xb155455e atomisp_gmin_remove_subdev +EXPORT_SYMBOL_GPL drivers/staging/media/atomisp/pci/atomisp_gmin_platform 0xbae0e12f atomisp_get_default_camera_caps +EXPORT_SYMBOL_GPL drivers/staging/media/atomisp/pci/atomisp_gmin_platform 0xbedc3972 camera_sensor_csi +EXPORT_SYMBOL_GPL drivers/staging/media/atomisp/pci/atomisp_gmin_platform 0xf8d6fddf gmin_camera_platform_data +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0x06ae71f2 synth_add +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0x07c7802d spk_ttyio_synth_probe +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0x08c9f5b3 spk_synth_get_index +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0x1a1a982e spk_synth_is_alive_nop +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0x1e39eb14 synth_putws +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0x3e1dfcfe synth_remove +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0x41a160e5 synth_buffer_empty +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0x4449e1dd synth_buffer_clear +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0x466f5eb7 synth_putwc +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0x590cace0 spk_serial_synth_probe +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0x67b0197f spk_do_catch_up_unicode +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0x76bb0bda synth_current +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0x76d40046 synth_buffer_skip_nonlatin1 +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0x83d86040 spk_serial_synth_immediate +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0x84286d4b spk_var_show +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0x84dad068 synth_buffer_getc +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0x8a56713e spk_synth_is_alive_restart +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0x8c82dfca synth_request_region +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0x8e50055a spk_stop_serial_interrupt +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0x8fe0db01 synth_putwc_s +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0x996d45b9 spk_synth_flush +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0xa27b1983 spk_var_store +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0xaadb0612 synth_buffer_peek +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0xae7d6424 spk_ttyio_release +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0xb734cb9d speakup_event +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0xb805d55e spk_ttyio_ops +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0xbbd15a51 speakup_start_ttys +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0xc319c604 synth_putws_s +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0xd13ee2da spk_serial_io_ops +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0xd23a261a spk_do_catch_up +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0xd8fd86cf synth_release_region +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0xd93829dd speakup_info +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0xe194d0ef synth_printf +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0xe5c2dbd1 spk_ttyio_synth_immediate +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0xe7cd4558 spk_serial_release +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0xfd189eef spk_get_var +EXPORT_SYMBOL_GPL drivers/staging/wilc1000/wilc1000 0x211ae63d chip_wakeup +EXPORT_SYMBOL_GPL drivers/staging/wilc1000/wilc1000 0x312a75e0 wilc_handle_isr +EXPORT_SYMBOL_GPL drivers/staging/wilc1000/wilc1000 0x7366ffb1 wilc_netdev_cleanup +EXPORT_SYMBOL_GPL drivers/staging/wilc1000/wilc1000 0xb06467ed wilc_cfg80211_init +EXPORT_SYMBOL_GPL drivers/staging/wilc1000/wilc1000 0xda424cd8 chip_allow_sleep +EXPORT_SYMBOL_GPL drivers/staging/wilc1000/wilc1000 0xeda2bec2 host_sleep_notify +EXPORT_SYMBOL_GPL drivers/staging/wilc1000/wilc1000 0xee4d5568 host_wakeup_notify +EXPORT_SYMBOL_GPL drivers/tee/tee 0x0fcad1cc tee_shm_alloc +EXPORT_SYMBOL_GPL drivers/tee/tee 0x1327aebe tee_client_close_context +EXPORT_SYMBOL_GPL drivers/tee/tee 0x1342f24b tee_shm_register +EXPORT_SYMBOL_GPL drivers/tee/tee 0x1ee268a5 tee_client_close_session +EXPORT_SYMBOL_GPL drivers/tee/tee 0x2baed802 tee_client_open_session +EXPORT_SYMBOL_GPL drivers/tee/tee 0x2ee828fb tee_shm_get_va +EXPORT_SYMBOL_GPL drivers/tee/tee 0x3da24dc4 tee_shm_free +EXPORT_SYMBOL_GPL drivers/tee/tee 0x4f791081 tee_shm_get_from_id +EXPORT_SYMBOL_GPL drivers/tee/tee 0x6568fab1 tee_shm_pool_free +EXPORT_SYMBOL_GPL drivers/tee/tee 0x684dcc59 tee_shm_pool_mgr_alloc_res_mem +EXPORT_SYMBOL_GPL drivers/tee/tee 0x6bb105b6 tee_device_register +EXPORT_SYMBOL_GPL drivers/tee/tee 0x6eff0578 tee_bus_type +EXPORT_SYMBOL_GPL drivers/tee/tee 0x78db0ea9 tee_client_invoke_func +EXPORT_SYMBOL_GPL drivers/tee/tee 0x7c6d9a7f tee_shm_va2pa +EXPORT_SYMBOL_GPL drivers/tee/tee 0x8108590c tee_client_get_version +EXPORT_SYMBOL_GPL drivers/tee/tee 0x8324478f tee_shm_pa2va +EXPORT_SYMBOL_GPL drivers/tee/tee 0x85fd9922 tee_session_calc_client_uuid +EXPORT_SYMBOL_GPL drivers/tee/tee 0x8948dc58 tee_shm_put +EXPORT_SYMBOL_GPL drivers/tee/tee 0x9da6faef tee_client_open_context +EXPORT_SYMBOL_GPL drivers/tee/tee 0x9e50d37b tee_device_alloc +EXPORT_SYMBOL_GPL drivers/tee/tee 0xb6dceecb tee_shm_pool_alloc +EXPORT_SYMBOL_GPL drivers/tee/tee 0xb885c6dc tee_shm_get_pa +EXPORT_SYMBOL_GPL drivers/tee/tee 0xb93ff873 tee_get_drvdata +EXPORT_SYMBOL_GPL drivers/tee/tee 0xcdbc7305 tee_device_unregister +EXPORT_SYMBOL_GPL drivers/tee/tee 0xd4ec488a tee_shm_pool_alloc_res_mem +EXPORT_SYMBOL_GPL drivers/thermal/intel/int340x_thermal/int340x_thermal_zone 0x18e1282d int340x_thermal_read_trips +EXPORT_SYMBOL_GPL drivers/thermal/intel/int340x_thermal/int340x_thermal_zone 0x1ebe3617 int340x_thermal_zone_add +EXPORT_SYMBOL_GPL drivers/thermal/intel/int340x_thermal/int340x_thermal_zone 0xe79e911a int340x_thermal_zone_remove +EXPORT_SYMBOL_GPL drivers/thermal/intel/intel_soc_dts_iosf 0x38ea5f2f intel_soc_dts_iosf_init +EXPORT_SYMBOL_GPL drivers/thermal/intel/intel_soc_dts_iosf 0x432bca81 intel_soc_dts_iosf_interrupt_handler +EXPORT_SYMBOL_GPL drivers/thermal/intel/intel_soc_dts_iosf 0xbccedc69 intel_soc_dts_iosf_add_read_only_critical_trip +EXPORT_SYMBOL_GPL drivers/thermal/intel/intel_soc_dts_iosf 0xc2032053 intel_soc_dts_iosf_exit +EXPORT_SYMBOL_GPL drivers/thunderbolt/thunderbolt 0x01d23ee1 tb_property_create_dir +EXPORT_SYMBOL_GPL drivers/thunderbolt/thunderbolt 0x0f53a267 tb_service_type +EXPORT_SYMBOL_GPL drivers/thunderbolt/thunderbolt 0x17e0128e tb_xdomain_find_by_uuid +EXPORT_SYMBOL_GPL drivers/thunderbolt/thunderbolt 0x29eabb41 tb_ring_start +EXPORT_SYMBOL_GPL drivers/thunderbolt/thunderbolt 0x318565ae tb_xdomain_response +EXPORT_SYMBOL_GPL drivers/thunderbolt/thunderbolt 0x393b4f2f tb_property_free_dir +EXPORT_SYMBOL_GPL drivers/thunderbolt/thunderbolt 0x432f27e2 tb_xdomain_request +EXPORT_SYMBOL_GPL drivers/thunderbolt/thunderbolt 0x476ec448 tb_ring_stop +EXPORT_SYMBOL_GPL drivers/thunderbolt/thunderbolt 0x47cfc74c tb_register_service_driver +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 0x5cb03072 tb_ring_poll_complete +EXPORT_SYMBOL_GPL drivers/thunderbolt/thunderbolt 0x603249ed tb_unregister_property_dir +EXPORT_SYMBOL_GPL drivers/thunderbolt/thunderbolt 0x658e3d97 tb_property_add_immediate +EXPORT_SYMBOL_GPL drivers/thunderbolt/thunderbolt 0x65d3113a tb_xdomain_enable_paths +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 0x8b62f95e tb_property_add_dir +EXPORT_SYMBOL_GPL drivers/thunderbolt/thunderbolt 0x92ca9d35 tb_unregister_service_driver +EXPORT_SYMBOL_GPL drivers/thunderbolt/thunderbolt 0x9fe1951e tb_ring_alloc_rx +EXPORT_SYMBOL_GPL drivers/thunderbolt/thunderbolt 0xa3d2b403 tb_property_add_data +EXPORT_SYMBOL_GPL drivers/thunderbolt/thunderbolt 0xa6955bfb tb_xdomain_find_by_route +EXPORT_SYMBOL_GPL drivers/thunderbolt/thunderbolt 0xb11769ab tb_xdomain_disable_paths +EXPORT_SYMBOL_GPL drivers/thunderbolt/thunderbolt 0xb7c7cdce tb_property_add_text +EXPORT_SYMBOL_GPL drivers/thunderbolt/thunderbolt 0xbacf7549 __tb_ring_enqueue +EXPORT_SYMBOL_GPL drivers/thunderbolt/thunderbolt 0xc9439150 tb_ring_free +EXPORT_SYMBOL_GPL drivers/thunderbolt/thunderbolt 0xdd77a4fb tb_ring_poll +EXPORT_SYMBOL_GPL drivers/thunderbolt/thunderbolt 0xe10c4852 tb_xdomain_type +EXPORT_SYMBOL_GPL drivers/thunderbolt/thunderbolt 0xe59e7e44 tb_ring_alloc_tx +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/tty/n_tracesink 0x8a422e5e n_tracesink_datadrain +EXPORT_SYMBOL_GPL drivers/uio/uio 0x019be4fc __devm_uio_register_device +EXPORT_SYMBOL_GPL drivers/uio/uio 0x08953b28 uio_unregister_device +EXPORT_SYMBOL_GPL drivers/uio/uio 0x0a7b9e1d __uio_register_device +EXPORT_SYMBOL_GPL drivers/uio/uio 0xb52f702b uio_event_notify +EXPORT_SYMBOL_GPL drivers/usb/atm/usbatm 0x3d2efd85 usbatm_usb_probe +EXPORT_SYMBOL_GPL drivers/usb/atm/usbatm 0x63d5ef2c usbatm_usb_disconnect +EXPORT_SYMBOL_GPL drivers/usb/chipidea/ci_hdrc 0x102543b0 ci_hdrc_remove_device +EXPORT_SYMBOL_GPL drivers/usb/chipidea/ci_hdrc 0xc3c153f6 hw_phymode_configure +EXPORT_SYMBOL_GPL drivers/usb/chipidea/ci_hdrc 0xe3bbfdb2 ci_hdrc_add_device +EXPORT_SYMBOL_GPL drivers/usb/common/ulpi 0x0a9c5e9d ulpi_register_interface +EXPORT_SYMBOL_GPL drivers/usb/common/ulpi 0x0b1b58ef ulpi_write +EXPORT_SYMBOL_GPL drivers/usb/common/ulpi 0x1ceebe5f __ulpi_register_driver +EXPORT_SYMBOL_GPL drivers/usb/common/ulpi 0x600c30b7 ulpi_unregister_interface +EXPORT_SYMBOL_GPL drivers/usb/common/ulpi 0xc4931122 ulpi_unregister_driver +EXPORT_SYMBOL_GPL drivers/usb/common/ulpi 0xd566c3cc ulpi_read +EXPORT_SYMBOL_GPL drivers/usb/gadget/function/u_audio 0x41f0e2a4 u_audio_start_playback +EXPORT_SYMBOL_GPL drivers/usb/gadget/function/u_audio 0x50e018aa u_audio_start_capture +EXPORT_SYMBOL_GPL drivers/usb/gadget/function/u_audio 0x5c2419a4 g_audio_setup +EXPORT_SYMBOL_GPL drivers/usb/gadget/function/u_audio 0x60b068df g_audio_cleanup +EXPORT_SYMBOL_GPL drivers/usb/gadget/function/u_audio 0x97559ce5 u_audio_stop_capture +EXPORT_SYMBOL_GPL drivers/usb/gadget/function/u_audio 0xa7540b21 u_audio_stop_playback +EXPORT_SYMBOL_GPL drivers/usb/gadget/function/u_ether 0x1cc28a73 gether_disconnect +EXPORT_SYMBOL_GPL drivers/usb/gadget/function/u_ether 0x241096be gether_setup_name +EXPORT_SYMBOL_GPL drivers/usb/gadget/function/u_ether 0x26960753 gether_get_host_addr_cdc +EXPORT_SYMBOL_GPL drivers/usb/gadget/function/u_ether 0x280e2e7c gether_set_dev_addr +EXPORT_SYMBOL_GPL drivers/usb/gadget/function/u_ether 0x37edc40b gether_set_host_addr +EXPORT_SYMBOL_GPL drivers/usb/gadget/function/u_ether 0x40111570 gether_setup_name_default +EXPORT_SYMBOL_GPL drivers/usb/gadget/function/u_ether 0x6d389abc gether_get_dev_addr +EXPORT_SYMBOL_GPL drivers/usb/gadget/function/u_ether 0x702b8882 gether_set_qmult +EXPORT_SYMBOL_GPL drivers/usb/gadget/function/u_ether 0x7154ef88 gether_get_qmult +EXPORT_SYMBOL_GPL drivers/usb/gadget/function/u_ether 0x804f5028 gether_set_gadget +EXPORT_SYMBOL_GPL drivers/usb/gadget/function/u_ether 0x8878cfa6 gether_cleanup +EXPORT_SYMBOL_GPL drivers/usb/gadget/function/u_ether 0xae9879c4 gether_get_host_addr +EXPORT_SYMBOL_GPL drivers/usb/gadget/function/u_ether 0xb8794f56 gether_get_host_addr_u8 +EXPORT_SYMBOL_GPL drivers/usb/gadget/function/u_ether 0xb99d269c gether_register_netdev +EXPORT_SYMBOL_GPL drivers/usb/gadget/function/u_ether 0xc370410d gether_connect +EXPORT_SYMBOL_GPL drivers/usb/gadget/function/u_ether 0xe240e06b gether_get_ifname +EXPORT_SYMBOL_GPL drivers/usb/gadget/function/u_serial 0x081a4862 gserial_connect +EXPORT_SYMBOL_GPL drivers/usb/gadget/function/u_serial 0x33abf8bc gserial_resume +EXPORT_SYMBOL_GPL drivers/usb/gadget/function/u_serial 0x33bfdca2 gserial_alloc_line +EXPORT_SYMBOL_GPL drivers/usb/gadget/function/u_serial 0x4a3df9d0 gs_alloc_req +EXPORT_SYMBOL_GPL drivers/usb/gadget/function/u_serial 0x60db48f5 gserial_get_console +EXPORT_SYMBOL_GPL drivers/usb/gadget/function/u_serial 0x60ea48a0 gs_free_req +EXPORT_SYMBOL_GPL drivers/usb/gadget/function/u_serial 0x98277e26 gserial_suspend +EXPORT_SYMBOL_GPL drivers/usb/gadget/function/u_serial 0xb5f0a7d6 gserial_disconnect +EXPORT_SYMBOL_GPL drivers/usb/gadget/function/u_serial 0xb6652875 gserial_free_line +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/usb_f_fs 0x244dc19a ffs_name_dev +EXPORT_SYMBOL_GPL drivers/usb/gadget/function/usb_f_fs 0x57f469c5 ffs_lock +EXPORT_SYMBOL_GPL drivers/usb/gadget/function/usb_f_fs 0xc475e6b6 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 0x1ccb58f7 fsg_common_set_num_buffers +EXPORT_SYMBOL_GPL drivers/usb/gadget/function/usb_f_mass_storage 0x26b72549 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 0x38a17166 fsg_common_remove_lun +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 0x423845e4 fsg_ss_bulk_in_comp_desc +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 0x5a260126 fsg_lun_open +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 0x857b6dc2 fsg_hs_function +EXPORT_SYMBOL_GPL drivers/usb/gadget/function/usb_f_mass_storage 0x8fc9b832 fsg_show_cdrom +EXPORT_SYMBOL_GPL drivers/usb/gadget/function/usb_f_mass_storage 0x921cf1bc fsg_store_file +EXPORT_SYMBOL_GPL drivers/usb/gadget/function/usb_f_mass_storage 0x9343964a fsg_store_nofua +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 0x9cc35812 fsg_store_inquiry_string +EXPORT_SYMBOL_GPL drivers/usb/gadget/function/usb_f_mass_storage 0xa1fbec64 fsg_store_ro +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 0xab6c68ac fsg_config_from_params +EXPORT_SYMBOL_GPL drivers/usb/gadget/function/usb_f_mass_storage 0xadf69b46 fsg_common_set_cdev +EXPORT_SYMBOL_GPL drivers/usb/gadget/function/usb_f_mass_storage 0xb0dc7211 fsg_show_file +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 0xc3600a3d fsg_store_removable +EXPORT_SYMBOL_GPL drivers/usb/gadget/function/usb_f_mass_storage 0xc433de2e fsg_lun_close +EXPORT_SYMBOL_GPL drivers/usb/gadget/function/usb_f_mass_storage 0xcd1d4b32 fsg_lun_fsync_sub +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 0xd88e9e37 fsg_show_nofua +EXPORT_SYMBOL_GPL drivers/usb/gadget/function/usb_f_mass_storage 0xdc54943c fsg_store_cdrom +EXPORT_SYMBOL_GPL drivers/usb/gadget/function/usb_f_mass_storage 0xe5f1ba49 fsg_show_inquiry_string +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 0xf4f21b0b fsg_show_removable +EXPORT_SYMBOL_GPL drivers/usb/gadget/function/usb_f_rndis 0x065eb106 rndis_borrow_net +EXPORT_SYMBOL_GPL drivers/usb/gadget/function/usb_f_rndis 0x215afcd8 rndis_free_response +EXPORT_SYMBOL_GPL drivers/usb/gadget/function/usb_f_rndis 0x33f65243 rndis_set_param_medium +EXPORT_SYMBOL_GPL drivers/usb/gadget/function/usb_f_rndis 0x36839356 rndis_add_hdr +EXPORT_SYMBOL_GPL drivers/usb/gadget/function/usb_f_rndis 0x54998c07 rndis_set_param_dev +EXPORT_SYMBOL_GPL drivers/usb/gadget/function/usb_f_rndis 0x566815de rndis_signal_disconnect +EXPORT_SYMBOL_GPL drivers/usb/gadget/function/usb_f_rndis 0x6feff1dd rndis_deregister +EXPORT_SYMBOL_GPL drivers/usb/gadget/function/usb_f_rndis 0x728004c9 rndis_msg_parser +EXPORT_SYMBOL_GPL drivers/usb/gadget/function/usb_f_rndis 0x77004b0b rndis_get_next_response +EXPORT_SYMBOL_GPL drivers/usb/gadget/function/usb_f_rndis 0x85c12899 rndis_uninit +EXPORT_SYMBOL_GPL drivers/usb/gadget/function/usb_f_rndis 0xc6daf0cc rndis_set_host_mac +EXPORT_SYMBOL_GPL drivers/usb/gadget/function/usb_f_rndis 0xe0ac509f rndis_rm_hdr +EXPORT_SYMBOL_GPL drivers/usb/gadget/function/usb_f_rndis 0xef974cb8 rndis_signal_connect +EXPORT_SYMBOL_GPL drivers/usb/gadget/function/usb_f_rndis 0xf01f786c rndis_set_param_vendor +EXPORT_SYMBOL_GPL drivers/usb/gadget/function/usb_f_rndis 0xf77be1aa rndis_register +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0x067e001c config_ep_by_speed_and_alt +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0x0c589aba usb_validate_langid +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0x0cb7e477 usb_ep_autoconfig_release +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0x14582a33 usb_function_activate +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0x22eb87d7 usb_function_deactivate +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0x23d67d8d usb_string_ids_n +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0x2e09263f usb_copy_descriptors +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0x3a997e08 usb_interface_id +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0x490937f4 config_ep_by_speed +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0x4beb505d usb_gadget_get_string +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0x5ec32435 usb_composite_probe +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0x6669a74c usb_function_unregister +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0x667de330 usb_free_all_descriptors +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0x71746741 usb_composite_unregister +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0x7dac37d0 usb_put_function +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0x871ab77e usb_put_function_instance +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0x8eb7ae82 usb_gstrings_attach +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0x904b7805 usb_remove_function +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0x92a44ffc usb_string_id +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0x9754d889 usb_ep_autoconfig_reset +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0x983289c8 usb_composite_overwrite_options +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0x9b9a2cc4 usb_get_function_instance +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0x9bceb4b7 unregister_gadget_item +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0x9d93636a usb_function_register +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0x9da4820e usb_ep_autoconfig +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0xa407d23c usb_otg_descriptor_alloc +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0xaa3ce8ec usb_otg_descriptor_init +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0xab73ffb9 usb_ep_autoconfig_ss +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0xae58044e usb_assign_descriptors +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0xb5fb0ff8 usb_string_ids_tab +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0xb775db55 alloc_ep_req +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0xcf9766b6 usb_add_config_only +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0xd2ea2134 usb_descriptor_fillbuf +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0xea76bee2 usb_get_function +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0xebb22058 usb_add_function +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0xf4286bd2 usb_composite_setup_continue +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0xf474a207 usb_gadget_config_buf +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0xfce64311 usb_add_config +EXPORT_SYMBOL_GPL drivers/usb/gadget/udc/snps_udc_core 0x242d3512 gadget_release +EXPORT_SYMBOL_GPL drivers/usb/gadget/udc/snps_udc_core 0x31d538da udc_basic_init +EXPORT_SYMBOL_GPL drivers/usb/gadget/udc/snps_udc_core 0x38c96aa2 free_dma_pools +EXPORT_SYMBOL_GPL drivers/usb/gadget/udc/snps_udc_core 0x5d01d078 udc_irq +EXPORT_SYMBOL_GPL drivers/usb/gadget/udc/snps_udc_core 0x629d1f22 udc_mask_unused_interrupts +EXPORT_SYMBOL_GPL drivers/usb/gadget/udc/snps_udc_core 0x7ef93330 udc_probe +EXPORT_SYMBOL_GPL drivers/usb/gadget/udc/snps_udc_core 0xad7f89bf udc_enable_dev_setup_interrupts +EXPORT_SYMBOL_GPL drivers/usb/gadget/udc/snps_udc_core 0xdf48cd55 udc_remove +EXPORT_SYMBOL_GPL drivers/usb/gadget/udc/snps_udc_core 0xeeff55be init_dma_pools +EXPORT_SYMBOL_GPL drivers/usb/gadget/udc/snps_udc_core 0xf8cf53ea empty_req_queue +EXPORT_SYMBOL_GPL drivers/usb/gadget/udc/udc-core 0x01b12bfb usb_ep_free_request +EXPORT_SYMBOL_GPL drivers/usb/gadget/udc/udc-core 0x0269d245 usb_udc_vbus_handler +EXPORT_SYMBOL_GPL drivers/usb/gadget/udc/udc-core 0x06dc2a5f gadget_find_ep_by_name +EXPORT_SYMBOL_GPL drivers/usb/gadget/udc/udc-core 0x0a8c3b4b usb_ep_set_halt +EXPORT_SYMBOL_GPL drivers/usb/gadget/udc/udc-core 0x0acfe2e7 usb_ep_set_wedge +EXPORT_SYMBOL_GPL drivers/usb/gadget/udc/udc-core 0x0c09f004 usb_gadget_map_request_by_dev +EXPORT_SYMBOL_GPL drivers/usb/gadget/udc/udc-core 0x0d90d784 usb_ep_fifo_flush +EXPORT_SYMBOL_GPL drivers/usb/gadget/udc/udc-core 0x15bc4d77 usb_gadget_vbus_draw +EXPORT_SYMBOL_GPL drivers/usb/gadget/udc/udc-core 0x19960ddf usb_gadget_connect +EXPORT_SYMBOL_GPL drivers/usb/gadget/udc/udc-core 0x19e71a7f usb_gadget_vbus_connect +EXPORT_SYMBOL_GPL drivers/usb/gadget/udc/udc-core 0x204a88eb usb_del_gadget_udc +EXPORT_SYMBOL_GPL drivers/usb/gadget/udc/udc-core 0x2a65ff36 usb_add_gadget_udc_release +EXPORT_SYMBOL_GPL drivers/usb/gadget/udc/udc-core 0x34936726 usb_gadget_deactivate +EXPORT_SYMBOL_GPL drivers/usb/gadget/udc/udc-core 0x35d2d1c6 usb_gadget_map_request +EXPORT_SYMBOL_GPL drivers/usb/gadget/udc/udc-core 0x3ddbd04f usb_gadget_disconnect +EXPORT_SYMBOL_GPL drivers/usb/gadget/udc/udc-core 0x49d9f030 usb_ep_fifo_status +EXPORT_SYMBOL_GPL drivers/usb/gadget/udc/udc-core 0x506ab3a9 usb_ep_queue +EXPORT_SYMBOL_GPL drivers/usb/gadget/udc/udc-core 0x50b88f41 usb_get_gadget_udc_name +EXPORT_SYMBOL_GPL drivers/usb/gadget/udc/udc-core 0x511b4108 usb_gadget_clear_selfpowered +EXPORT_SYMBOL_GPL drivers/usb/gadget/udc/udc-core 0x544266f4 usb_gadget_set_state +EXPORT_SYMBOL_GPL drivers/usb/gadget/udc/udc-core 0x5fc294ef usb_ep_clear_halt +EXPORT_SYMBOL_GPL drivers/usb/gadget/udc/udc-core 0x662eba27 usb_gadget_unregister_driver +EXPORT_SYMBOL_GPL drivers/usb/gadget/udc/udc-core 0x6fa0b709 usb_gadget_udc_reset +EXPORT_SYMBOL_GPL drivers/usb/gadget/udc/udc-core 0x7a41b9f2 usb_ep_set_maxpacket_limit +EXPORT_SYMBOL_GPL drivers/usb/gadget/udc/udc-core 0x7bb30760 usb_gadget_unmap_request +EXPORT_SYMBOL_GPL drivers/usb/gadget/udc/udc-core 0x7be89624 usb_gadget_giveback_request +EXPORT_SYMBOL_GPL drivers/usb/gadget/udc/udc-core 0x882077d5 usb_ep_dequeue +EXPORT_SYMBOL_GPL drivers/usb/gadget/udc/udc-core 0x8b024f9d usb_gadget_wakeup +EXPORT_SYMBOL_GPL drivers/usb/gadget/udc/udc-core 0x903ca34f usb_gadget_probe_driver +EXPORT_SYMBOL_GPL drivers/usb/gadget/udc/udc-core 0x9eb52803 usb_ep_disable +EXPORT_SYMBOL_GPL drivers/usb/gadget/udc/udc-core 0xa9e74462 usb_ep_alloc_request +EXPORT_SYMBOL_GPL drivers/usb/gadget/udc/udc-core 0xaf201fa6 usb_ep_enable +EXPORT_SYMBOL_GPL drivers/usb/gadget/udc/udc-core 0xb5729e93 usb_gadget_ep_match_desc +EXPORT_SYMBOL_GPL drivers/usb/gadget/udc/udc-core 0xc2c8f43a usb_gadget_set_selfpowered +EXPORT_SYMBOL_GPL drivers/usb/gadget/udc/udc-core 0xc475ac3f usb_gadget_unmap_request_by_dev +EXPORT_SYMBOL_GPL drivers/usb/gadget/udc/udc-core 0xc6224813 usb_gadget_vbus_disconnect +EXPORT_SYMBOL_GPL drivers/usb/gadget/udc/udc-core 0xdc4478c6 usb_gadget_frame_number +EXPORT_SYMBOL_GPL drivers/usb/gadget/udc/udc-core 0xe6a78b4c usb_add_gadget_udc +EXPORT_SYMBOL_GPL drivers/usb/gadget/udc/udc-core 0xe73a9077 usb_gadget_activate +EXPORT_SYMBOL_GPL drivers/usb/host/xhci-pci-renesas 0x18d7e2e5 renesas_xhci_pci_exit +EXPORT_SYMBOL_GPL drivers/usb/host/xhci-pci-renesas 0xd6d49dac renesas_xhci_check_request_fw +EXPORT_SYMBOL_GPL drivers/usb/misc/ezusb 0x05cbf4ad ezusb_fx1_set_reset +EXPORT_SYMBOL_GPL drivers/usb/misc/ezusb 0xeded9f0a ezusb_fx1_ihex_firmware_download +EXPORT_SYMBOL_GPL drivers/usb/misc/ftdi-elan 0x12b9cc86 usb_ftdi_elan_edset_setup +EXPORT_SYMBOL_GPL drivers/usb/misc/ftdi-elan 0x144ce4aa ftdi_elan_gone_away +EXPORT_SYMBOL_GPL drivers/usb/misc/ftdi-elan 0x45cd8709 usb_ftdi_elan_write_pcimem +EXPORT_SYMBOL_GPL drivers/usb/misc/ftdi-elan 0x56ca1922 usb_ftdi_elan_edset_input +EXPORT_SYMBOL_GPL drivers/usb/misc/ftdi-elan 0x5c032480 usb_ftdi_elan_read_pcimem +EXPORT_SYMBOL_GPL drivers/usb/misc/ftdi-elan 0x5c8c585c usb_ftdi_elan_edset_single +EXPORT_SYMBOL_GPL drivers/usb/misc/ftdi-elan 0x7a757db6 usb_ftdi_elan_edset_output +EXPORT_SYMBOL_GPL drivers/usb/misc/ftdi-elan 0xa220dba4 usb_ftdi_elan_edset_flush +EXPORT_SYMBOL_GPL drivers/usb/misc/ftdi-elan 0xd0663848 usb_ftdi_elan_edset_empty +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 0x0c546130 musb_interrupt +EXPORT_SYMBOL_GPL drivers/usb/musb/musb_hdrc 0x1bab3bbd musb_queue_resume_work +EXPORT_SYMBOL_GPL drivers/usb/musb/musb_hdrc 0x2734197f musb_readb +EXPORT_SYMBOL_GPL drivers/usb/musb/musb_hdrc 0x48e4f803 musb_set_host +EXPORT_SYMBOL_GPL drivers/usb/musb/musb_hdrc 0x669594ad musb_clearw +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 0x748758db musb_root_disconnect +EXPORT_SYMBOL_GPL drivers/usb/musb/musb_hdrc 0x9ca46687 musb_get_mode +EXPORT_SYMBOL_GPL drivers/usb/musb/musb_hdrc 0xade3e56c musb_writew +EXPORT_SYMBOL_GPL drivers/usb/musb/musb_hdrc 0xda164f61 musb_set_peripheral +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 0x024e3229 usb_gen_phy_init +EXPORT_SYMBOL_GPL drivers/usb/phy/phy-generic 0x9a9e90ac usb_gen_phy_shutdown +EXPORT_SYMBOL_GPL drivers/usb/phy/phy-generic 0xafe4abdf usb_phy_gen_create_phy +EXPORT_SYMBOL_GPL drivers/usb/phy/phy-generic 0xc09c22d2 usb_phy_generic_unregister +EXPORT_SYMBOL_GPL drivers/usb/phy/phy-generic 0xcb40b266 usb_phy_generic_register +EXPORT_SYMBOL_GPL drivers/usb/phy/phy-isp1301 0x120a4490 isp1301_get_client +EXPORT_SYMBOL_GPL drivers/usb/roles/roles 0x06622e89 fwnode_usb_role_switch_get +EXPORT_SYMBOL_GPL drivers/usb/roles/roles 0x1690b503 usb_role_switch_get_drvdata +EXPORT_SYMBOL_GPL drivers/usb/roles/roles 0x2647d9de usb_role_switch_get +EXPORT_SYMBOL_GPL drivers/usb/roles/roles 0x2882d40e usb_role_switch_unregister +EXPORT_SYMBOL_GPL drivers/usb/roles/roles 0x51a348cc usb_role_switch_set_drvdata +EXPORT_SYMBOL_GPL drivers/usb/roles/roles 0x636d9337 usb_role_switch_find_by_fwnode +EXPORT_SYMBOL_GPL drivers/usb/roles/roles 0xc9fd634a usb_role_switch_put +EXPORT_SYMBOL_GPL drivers/usb/roles/roles 0xd5474690 usb_role_switch_set_role +EXPORT_SYMBOL_GPL drivers/usb/roles/roles 0xeb506445 usb_role_switch_register +EXPORT_SYMBOL_GPL drivers/usb/roles/roles 0xff42c374 usb_role_switch_get_role +EXPORT_SYMBOL_GPL drivers/usb/serial/usb_wwan 0x83ae9be3 usb_wwan_port_probe +EXPORT_SYMBOL_GPL drivers/usb/serial/usbserial 0x05087f17 usb_serial_generic_write_bulk_callback +EXPORT_SYMBOL_GPL drivers/usb/serial/usbserial 0x1cbd2e48 usb_serial_generic_unthrottle +EXPORT_SYMBOL_GPL drivers/usb/serial/usbserial 0x2303dacb usb_serial_handle_break +EXPORT_SYMBOL_GPL drivers/usb/serial/usbserial 0x2361a27e usb_serial_generic_write +EXPORT_SYMBOL_GPL drivers/usb/serial/usbserial 0x3e638cf5 usb_serial_generic_chars_in_buffer +EXPORT_SYMBOL_GPL drivers/usb/serial/usbserial 0x5240e427 usb_serial_generic_throttle +EXPORT_SYMBOL_GPL drivers/usb/serial/usbserial 0x627211f8 usb_serial_generic_process_read_urb +EXPORT_SYMBOL_GPL drivers/usb/serial/usbserial 0x70c03f8f usb_serial_generic_get_icount +EXPORT_SYMBOL_GPL drivers/usb/serial/usbserial 0x8061efed usb_serial_generic_close +EXPORT_SYMBOL_GPL drivers/usb/serial/usbserial 0x8c2b06e4 usb_serial_generic_submit_read_urbs +EXPORT_SYMBOL_GPL drivers/usb/serial/usbserial 0x912f0fe1 usb_serial_handle_sysrq_char +EXPORT_SYMBOL_GPL drivers/usb/serial/usbserial 0x96aa2c51 usb_serial_handle_dcd_change +EXPORT_SYMBOL_GPL drivers/usb/serial/usbserial 0xa1e65845 usb_serial_generic_open +EXPORT_SYMBOL_GPL drivers/usb/serial/usbserial 0xa21344cc usb_serial_generic_read_bulk_callback +EXPORT_SYMBOL_GPL drivers/usb/serial/usbserial 0xc6b4601d usb_serial_generic_tiocmiwait +EXPORT_SYMBOL_GPL drivers/usb/serial/usbserial 0xcb54d55d usb_serial_deregister_drivers +EXPORT_SYMBOL_GPL drivers/usb/serial/usbserial 0xe2c72af8 usb_serial_generic_wait_until_sent +EXPORT_SYMBOL_GPL drivers/usb/serial/usbserial 0xe67af74d usb_serial_generic_resume +EXPORT_SYMBOL_GPL drivers/usb/serial/usbserial 0xf27dc932 usb_serial_port_softint +EXPORT_SYMBOL_GPL drivers/usb/serial/usbserial 0xf81d34e0 usb_serial_register_drivers +EXPORT_SYMBOL_GPL drivers/usb/serial/usbserial 0xff2d507a usb_serial_generic_write_start +EXPORT_SYMBOL_GPL drivers/usb/typec/altmodes/typec_displayport 0x1323f0af dp_altmode_probe +EXPORT_SYMBOL_GPL drivers/usb/typec/altmodes/typec_displayport 0xadd658a5 dp_altmode_remove +EXPORT_SYMBOL_GPL drivers/usb/typec/tcpm/tcpci 0x6f497a3c tcpci_irq +EXPORT_SYMBOL_GPL drivers/usb/typec/tcpm/tcpci 0xa62926a3 tcpci_register_port +EXPORT_SYMBOL_GPL drivers/usb/typec/tcpm/tcpci 0xc529e32e tcpci_unregister_port +EXPORT_SYMBOL_GPL drivers/usb/typec/tcpm/tcpm 0x3b84657b tcpm_pd_transmit_complete +EXPORT_SYMBOL_GPL drivers/usb/typec/tcpm/tcpm 0x5042ef33 tcpm_register_port +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 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 0xea220941 tcpm_tcpc_reset +EXPORT_SYMBOL_GPL drivers/usb/typec/typec 0x03608f2a typec_cable_set_identity +EXPORT_SYMBOL_GPL drivers/usb/typec/typec 0x0d62b272 typec_mux_register +EXPORT_SYMBOL_GPL drivers/usb/typec/typec 0x0d84a569 typec_altmode2port +EXPORT_SYMBOL_GPL drivers/usb/typec/typec 0x0ed41506 typec_switch_set +EXPORT_SYMBOL_GPL drivers/usb/typec/typec 0x14f36bc0 fwnode_typec_switch_get +EXPORT_SYMBOL_GPL drivers/usb/typec/typec 0x19661d10 __typec_altmode_register_driver +EXPORT_SYMBOL_GPL drivers/usb/typec/typec 0x1a89d083 typec_match_altmode +EXPORT_SYMBOL_GPL drivers/usb/typec/typec 0x1b90ac2b typec_unregister_plug +EXPORT_SYMBOL_GPL drivers/usb/typec/typec 0x2c4b45c2 typec_cable_is_active +EXPORT_SYMBOL_GPL drivers/usb/typec/typec 0x2d1e301d typec_find_power_role +EXPORT_SYMBOL_GPL drivers/usb/typec/typec 0x33fd62de typec_set_pwr_opmode +EXPORT_SYMBOL_GPL drivers/usb/typec/typec 0x36852716 typec_set_orientation +EXPORT_SYMBOL_GPL drivers/usb/typec/typec 0x3b75a71a typec_switch_set_drvdata +EXPORT_SYMBOL_GPL drivers/usb/typec/typec 0x3b8ed491 typec_altmode_unregister_driver +EXPORT_SYMBOL_GPL drivers/usb/typec/typec 0x4035ba21 typec_unregister_altmode +EXPORT_SYMBOL_GPL drivers/usb/typec/typec 0x418ef9a0 typec_altmode_update_active +EXPORT_SYMBOL_GPL drivers/usb/typec/typec 0x426285ea typec_unregister_cable +EXPORT_SYMBOL_GPL drivers/usb/typec/typec 0x493159cc typec_partner_set_identity +EXPORT_SYMBOL_GPL drivers/usb/typec/typec 0x4aaf4de5 typec_cable_put +EXPORT_SYMBOL_GPL drivers/usb/typec/typec 0x500c30de typec_altmode_enter +EXPORT_SYMBOL_GPL drivers/usb/typec/typec 0x54c93810 typec_set_mode +EXPORT_SYMBOL_GPL drivers/usb/typec/typec 0x572d7612 typec_mux_get_drvdata +EXPORT_SYMBOL_GPL drivers/usb/typec/typec 0x5869adb2 typec_get_orientation +EXPORT_SYMBOL_GPL drivers/usb/typec/typec 0x5ac3a632 typec_set_vconn_role +EXPORT_SYMBOL_GPL drivers/usb/typec/typec 0x5ee37092 typec_altmode_notify +EXPORT_SYMBOL_GPL drivers/usb/typec/typec 0x5f2c6469 typec_set_data_role +EXPORT_SYMBOL_GPL drivers/usb/typec/typec 0x60311153 fwnode_typec_mux_get +EXPORT_SYMBOL_GPL drivers/usb/typec/typec 0x614740d9 typec_register_partner +EXPORT_SYMBOL_GPL drivers/usb/typec/typec 0x6b971c17 typec_altmode_attention +EXPORT_SYMBOL_GPL drivers/usb/typec/typec 0x734a9c4d typec_get_drvdata +EXPORT_SYMBOL_GPL drivers/usb/typec/typec 0x7e2998e7 typec_set_pwr_role +EXPORT_SYMBOL_GPL drivers/usb/typec/typec 0x7e381153 typec_mux_set_drvdata +EXPORT_SYMBOL_GPL drivers/usb/typec/typec 0x81676a68 typec_altmode_exit +EXPORT_SYMBOL_GPL drivers/usb/typec/typec 0x8362fc31 typec_mux_put +EXPORT_SYMBOL_GPL drivers/usb/typec/typec 0x9049491e typec_find_port_data_role +EXPORT_SYMBOL_GPL drivers/usb/typec/typec 0x95877a04 typec_plug_register_altmode +EXPORT_SYMBOL_GPL drivers/usb/typec/typec 0x96cea214 typec_altmode_get_partner +EXPORT_SYMBOL_GPL drivers/usb/typec/typec 0x9cad8da6 typec_unregister_partner +EXPORT_SYMBOL_GPL drivers/usb/typec/typec 0xa254de98 typec_find_orientation +EXPORT_SYMBOL_GPL drivers/usb/typec/typec 0xa3464a4e typec_altmode_put_plug +EXPORT_SYMBOL_GPL drivers/usb/typec/typec 0xb0b9dc76 typec_switch_get_drvdata +EXPORT_SYMBOL_GPL drivers/usb/typec/typec 0xb682986b typec_switch_register +EXPORT_SYMBOL_GPL drivers/usb/typec/typec 0xb913d9a8 typec_altmode_get_plug +EXPORT_SYMBOL_GPL drivers/usb/typec/typec 0xbab76493 typec_register_port +EXPORT_SYMBOL_GPL drivers/usb/typec/typec 0xc14ed46c typec_mux_set +EXPORT_SYMBOL_GPL drivers/usb/typec/typec 0xc741dbe4 typec_port_register_altmode +EXPORT_SYMBOL_GPL drivers/usb/typec/typec 0xc8f4e41d typec_mux_unregister +EXPORT_SYMBOL_GPL drivers/usb/typec/typec 0xd3fdf2a1 typec_switch_unregister +EXPORT_SYMBOL_GPL drivers/usb/typec/typec 0xda0a9c4c typec_unregister_port +EXPORT_SYMBOL_GPL drivers/usb/typec/typec 0xdd890a7d typec_partner_register_altmode +EXPORT_SYMBOL_GPL drivers/usb/typec/typec 0xde83e38a typec_cable_get +EXPORT_SYMBOL_GPL drivers/usb/typec/typec 0xe2c3b700 typec_register_cable +EXPORT_SYMBOL_GPL drivers/usb/typec/typec 0xe97d56d6 typec_altmode_vdm +EXPORT_SYMBOL_GPL drivers/usb/typec/typec 0xeafc1eb8 typec_find_port_power_role +EXPORT_SYMBOL_GPL drivers/usb/typec/typec 0xee19f4b1 typec_register_plug +EXPORT_SYMBOL_GPL drivers/usb/typec/typec 0xf5c60ec8 typec_switch_put +EXPORT_SYMBOL_GPL drivers/usb/typec/ucsi/typec_ucsi 0x2776e1c8 ucsi_resume +EXPORT_SYMBOL_GPL drivers/usb/typec/ucsi/typec_ucsi 0x35aeed96 ucsi_init +EXPORT_SYMBOL_GPL drivers/usb/typec/ucsi/typec_ucsi 0x3b23870e ucsi_unregister +EXPORT_SYMBOL_GPL drivers/usb/typec/ucsi/typec_ucsi 0x3da24c47 ucsi_connector_change +EXPORT_SYMBOL_GPL drivers/usb/typec/ucsi/typec_ucsi 0x799c6322 ucsi_get_drvdata +EXPORT_SYMBOL_GPL drivers/usb/typec/ucsi/typec_ucsi 0x7a80c038 ucsi_send_command +EXPORT_SYMBOL_GPL drivers/usb/typec/ucsi/typec_ucsi 0xa9b276df ucsi_create +EXPORT_SYMBOL_GPL drivers/usb/typec/ucsi/typec_ucsi 0xbc11e63e ucsi_destroy +EXPORT_SYMBOL_GPL drivers/usb/typec/ucsi/typec_ucsi 0xd8ab88ef ucsi_register +EXPORT_SYMBOL_GPL drivers/usb/typec/ucsi/typec_ucsi 0xf22bd472 ucsi_set_drvdata +EXPORT_SYMBOL_GPL drivers/usb/usbip/usbip-core 0x027e59c2 usbip_pad_iso +EXPORT_SYMBOL_GPL drivers/usb/usbip/usbip-core 0x61b2ff64 dev_attr_usbip_debug +EXPORT_SYMBOL_GPL drivers/usb/usbip/usbip-core 0x64b3bfc0 usbip_dump_urb +EXPORT_SYMBOL_GPL drivers/usb/usbip/usbip-core 0x78b72f44 usbip_debug_flag +EXPORT_SYMBOL_GPL drivers/usb/usbip/usbip-core 0x7bba2928 usbip_stop_eh +EXPORT_SYMBOL_GPL drivers/usb/usbip/usbip-core 0x820d16eb usbip_recv_xbuff +EXPORT_SYMBOL_GPL drivers/usb/usbip/usbip-core 0x8e69586a usbip_event_happened +EXPORT_SYMBOL_GPL drivers/usb/usbip/usbip-core 0x958a6eae usbip_pack_pdu +EXPORT_SYMBOL_GPL drivers/usb/usbip/usbip-core 0xa228b433 usbip_recv +EXPORT_SYMBOL_GPL drivers/usb/usbip/usbip-core 0xa3bb5dc5 usbip_start_eh +EXPORT_SYMBOL_GPL drivers/usb/usbip/usbip-core 0xd02753dc usbip_header_correct_endian +EXPORT_SYMBOL_GPL drivers/usb/usbip/usbip-core 0xdac72456 usbip_in_eh +EXPORT_SYMBOL_GPL drivers/usb/usbip/usbip-core 0xdc94a0b0 usbip_event_add +EXPORT_SYMBOL_GPL drivers/usb/usbip/usbip-core 0xe1ea0586 usbip_dump_header +EXPORT_SYMBOL_GPL drivers/usb/usbip/usbip-core 0xecd0aba6 usbip_recv_iso +EXPORT_SYMBOL_GPL drivers/usb/usbip/usbip-core 0xed0f26f1 usbip_alloc_iso_desc_pdu +EXPORT_SYMBOL_GPL drivers/vdpa/vdpa 0x088af84a __vdpa_alloc_device +EXPORT_SYMBOL_GPL drivers/vdpa/vdpa 0x316576f8 vdpa_register_device +EXPORT_SYMBOL_GPL drivers/vdpa/vdpa 0x90be667b __vdpa_register_driver +EXPORT_SYMBOL_GPL drivers/vdpa/vdpa 0xf8198731 vdpa_unregister_driver +EXPORT_SYMBOL_GPL drivers/vdpa/vdpa 0xfef2075c vdpa_unregister_device +EXPORT_SYMBOL_GPL drivers/vfio/mdev/mdev 0xfc6be225 mdev_bus_type +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x054804ad vhost_dev_stop +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x07115ac3 vhost_add_used_and_signal +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x14c048f6 vhost_vq_init_access +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x1b59c334 vhost_log_access_ok +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x206ff0a3 vhost_dev_has_owner +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x39da3a97 vhost_add_used_n +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x3d0ee15a vhost_disable_notify +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x448d8382 vhost_dev_ioctl +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x4d3a5d6e vhost_discard_vq_desc +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x523da2e4 vhost_dev_set_owner +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x53332022 vhost_init_device_iotlb +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x5604a2a8 vhost_log_write +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x569131bf vhost_has_work +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x574b9885 vhost_vring_ioctl +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x5975ca5e vhost_enable_notify +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x5a3f527d vhost_poll_flush +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x634989c0 vhost_chr_read_iter +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x66935285 vhost_dequeue_msg +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x6e9f59e4 vq_meta_prefetch +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x720aa769 vhost_vq_is_setup +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x766bc685 vhost_work_queue +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x7d296756 vhost_dev_init +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x8e68a444 vhost_work_flush +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x8f934ae8 vhost_enqueue_msg +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x9584b496 vhost_signal +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x958a1ff8 vhost_poll_start +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x95e18cfa vhost_add_used +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0xa909cfc5 vhost_work_init +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0xafa63c27 vhost_add_used_and_signal_n +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0xb15a3a84 vhost_vq_access_ok +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0xc28bad7b vhost_vq_avail_empty +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0xc8dd9317 vhost_exceeds_weight +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0xd5cc3d4c vhost_poll_init +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0xd629a83c vhost_get_vq_desc +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0xdad6fb25 vhost_dev_check_owner +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0xe9c8aed2 vhost_dev_reset_owner +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0xebc4cdd3 vhost_dev_cleanup +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0xf3cb9861 vhost_new_msg +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0xf8684694 vhost_poll_stop +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0xf9ed5ada vhost_poll_queue +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 0x514d0e6a vhost_iotlb_itree_first +EXPORT_SYMBOL_GPL drivers/vhost/vhost_iotlb 0x5f4e5249 vhost_iotlb_reset +EXPORT_SYMBOL_GPL drivers/vhost/vhost_iotlb 0x6bec0e66 vhost_iotlb_del_range +EXPORT_SYMBOL_GPL drivers/vhost/vhost_iotlb 0x7579334f vhost_iotlb_itree_next +EXPORT_SYMBOL_GPL drivers/vhost/vhost_iotlb 0xa24517eb vhost_iotlb_free +EXPORT_SYMBOL_GPL drivers/vhost/vhost_iotlb 0xad111707 vhost_iotlb_map_free +EXPORT_SYMBOL_GPL drivers/vhost/vhost_iotlb 0xc577832d vhost_iotlb_alloc +EXPORT_SYMBOL_GPL drivers/video/backlight/apple_bl 0x2c63e051 apple_bl_register +EXPORT_SYMBOL_GPL drivers/video/backlight/apple_bl 0xdab0f892 apple_bl_unregister +EXPORT_SYMBOL_GPL drivers/video/backlight/ili9320 0x0937e51d ili9320_write +EXPORT_SYMBOL_GPL drivers/video/backlight/ili9320 0x238baf64 ili9320_suspend +EXPORT_SYMBOL_GPL drivers/video/backlight/ili9320 0xaad2f0fe ili9320_write_regs +EXPORT_SYMBOL_GPL drivers/video/backlight/ili9320 0xb1e286ea ili9320_probe_spi +EXPORT_SYMBOL_GPL drivers/video/backlight/ili9320 0xd9d73478 ili9320_shutdown +EXPORT_SYMBOL_GPL drivers/video/backlight/ili9320 0xf42947ee ili9320_resume +EXPORT_SYMBOL_GPL drivers/video/backlight/ili9320 0xff13f08f ili9320_remove +EXPORT_SYMBOL_GPL drivers/video/fbdev/core/fb_ddc 0x5e37ae5e fb_ddc_read +EXPORT_SYMBOL_GPL drivers/video/fbdev/core/fb_sys_fops 0x52734273 fb_sys_read +EXPORT_SYMBOL_GPL drivers/video/fbdev/core/fb_sys_fops 0x6eac67d8 fb_sys_write +EXPORT_SYMBOL_GPL drivers/video/fbdev/sis/sisfb 0x5613cbfa sis_malloc_new +EXPORT_SYMBOL_GPL drivers/video/fbdev/sis/sisfb 0xa9e1dfb6 sis_free_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 0x0e1cee08 viafb_dma_copy_out_sg +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 0x70a7e81a 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 0xfff2dfd2 viafb_gpio_lookup +EXPORT_SYMBOL_GPL drivers/visorbus/visorbus 0x0e338292 visorchannel_signalempty +EXPORT_SYMBOL_GPL drivers/visorbus/visorbus 0x4de03230 visorchannel_signalinsert +EXPORT_SYMBOL_GPL drivers/visorbus/visorbus 0x56401853 visorchannel_signalremove +EXPORT_SYMBOL_GPL drivers/visorbus/visorbus 0x68925205 visorbus_read_channel +EXPORT_SYMBOL_GPL drivers/visorbus/visorbus 0x7887a0a1 visorbus_unregister_visor_driver +EXPORT_SYMBOL_GPL drivers/visorbus/visorbus 0x8cb6c766 visorbus_enable_channel_interrupts +EXPORT_SYMBOL_GPL drivers/visorbus/visorbus 0xafcd57f7 visorbus_register_visor_driver +EXPORT_SYMBOL_GPL drivers/visorbus/visorbus 0xb20a2dd3 visorbus_write_channel +EXPORT_SYMBOL_GPL drivers/visorbus/visorbus 0xc0140fa1 visorbus_disable_channel_interrupts +EXPORT_SYMBOL_GPL drivers/visorbus/visorbus 0xc455c651 visorchannel_get_guid +EXPORT_SYMBOL_GPL drivers/w1/wire 0x17ae5984 w1_touch_bit +EXPORT_SYMBOL_GPL drivers/w1/wire 0x58fb4ea7 w1_reset_bus +EXPORT_SYMBOL_GPL drivers/w1/wire 0x63757e92 w1_calc_crc8 +EXPORT_SYMBOL_GPL drivers/w1/wire 0x690319cc w1_read_block +EXPORT_SYMBOL_GPL drivers/w1/wire 0x6e82f5b9 w1_reset_resume_command +EXPORT_SYMBOL_GPL drivers/w1/wire 0x6f541b02 w1_triplet +EXPORT_SYMBOL_GPL drivers/w1/wire 0x8e7e8ea5 w1_write_block +EXPORT_SYMBOL_GPL drivers/w1/wire 0x99004ab5 w1_next_pullup +EXPORT_SYMBOL_GPL drivers/w1/wire 0x9bdd5889 w1_write_8 +EXPORT_SYMBOL_GPL drivers/w1/wire 0x9cc9a647 w1_reset_select_slave +EXPORT_SYMBOL_GPL drivers/w1/wire 0xd0bbe474 w1_read_8 +EXPORT_SYMBOL_GPL drivers/w1/wire 0xd95c2024 w1_touch_block +EXPORT_SYMBOL_GPL drivers/xen/xen-front-pgdir-shbuf 0x370a62e1 xen_front_pgdir_shbuf_alloc +EXPORT_SYMBOL_GPL drivers/xen/xen-front-pgdir-shbuf 0x908cedb0 xen_front_pgdir_shbuf_map +EXPORT_SYMBOL_GPL drivers/xen/xen-front-pgdir-shbuf 0xb7f3ce93 xen_front_pgdir_shbuf_get_dir_start +EXPORT_SYMBOL_GPL drivers/xen/xen-front-pgdir-shbuf 0xef061bef xen_front_pgdir_shbuf_free +EXPORT_SYMBOL_GPL drivers/xen/xen-front-pgdir-shbuf 0xfbb7827f xen_front_pgdir_shbuf_unmap +EXPORT_SYMBOL_GPL drivers/xen/xen-privcmd 0x04647bd7 xen_privcmd_fops +EXPORT_SYMBOL_GPL drivers/xen/xen-privcmd 0xe51861e4 xen_privcmdbuf_fops +EXPORT_SYMBOL_GPL fs/dlm/dlm 0x4b62826c dlm_unlock +EXPORT_SYMBOL_GPL fs/dlm/dlm 0x647d6170 dlm_lock +EXPORT_SYMBOL_GPL fs/dlm/dlm 0x9be15669 dlm_posix_get +EXPORT_SYMBOL_GPL fs/dlm/dlm 0xc67be9cb 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/dlm/dlm 0xfff28fb4 dlm_posix_unlock +EXPORT_SYMBOL_GPL fs/fscache/fscache 0x092cf98e fscache_object_sleep_till_congested +EXPORT_SYMBOL_GPL fs/lockd/lockd 0x04a669b8 lockd_up +EXPORT_SYMBOL_GPL fs/lockd/lockd 0x0e35d70b nlmsvc_unlock_all_by_sb +EXPORT_SYMBOL_GPL fs/lockd/lockd 0x1bfa4310 nlmclnt_proc +EXPORT_SYMBOL_GPL fs/lockd/lockd 0x77e35ccc nlmsvc_unlock_all_by_ip +EXPORT_SYMBOL_GPL fs/lockd/lockd 0x90291e97 lockd_down +EXPORT_SYMBOL_GPL fs/lockd/lockd 0xe4705846 nlmclnt_init +EXPORT_SYMBOL_GPL fs/lockd/lockd 0xeddaeee9 nlmclnt_done +EXPORT_SYMBOL_GPL fs/lockd/lockd 0xf9b928e6 nlmsvc_ops +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x0294c6a2 nfs_callback_nr_threads +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x02f9b53d nfs_setattr +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x030eb438 nfs_pgio_header_free +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x04533d50 nfs_permission +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x04c300ed nfs4_label_alloc +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x0577e8d7 nfs_retry_commit +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x0c8cd45f nfs_commit_free +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x0cb2af12 nfs_create_rpc_client +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x0d5c5c3c nfs_pgio_current_mirror +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x10399304 nfs_async_iocounter_wait +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x10962bc2 nfs_auth_info_match +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x12a0d996 nfs_setattr_update_inode +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x12ed8f0d nfs_zap_acl_cache +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x13844722 nfs_close_context +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x13ad1970 nfs_alloc_server +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x17b2b24f nfs_sb_deactive +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x19e4c7b9 nfs_file_read +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x1b0c07af nfs_post_op_update_inode_force_wcc +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x206fd085 nfs_fs_type +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x22d795a8 _nfs_display_fhandle_hash +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x24cb5d2a nfs_request_add_commit_list_locked +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x259a4123 nfs_inode_attach_open_context +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x2654534c nfs_link +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x26884ff7 nfs_alloc_fhandle +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x27ff4063 nfs_may_open +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x2913b77c nfs_instantiate +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x2bdea484 nfs_commitdata_release +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x2c3e0b39 nfs_create_server +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x2caa09cb nfs_mkdir +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x2e4e1b44 nfs_pageio_resend +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x2f98bcb9 nfs_drop_inode +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x301139a4 nfs_server_insert_lists +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x3100c0d1 register_nfs_version +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x31be14d3 nfs_server_copy_userdata +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x328ba77e nfs_rename +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x334bb82f nfs_unlink +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x34113c10 nfs_show_path +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x38a67104 nfs_path +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x39e05ac3 nfs_idmap_cache_timeout +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x3c292425 nfs4_dentry_operations +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x3ee6bead nfs_file_fsync +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x3f2690f2 nfs_check_flags +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x40739385 nfs_wait_bit_killable +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x42f2c81f nfs4_client_id_uniquifier +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x444934d3 nfs_statfs +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x45988152 nfs_mknod +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x46c00316 nfs_add_or_obtain +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x47b8eb03 nfs_client_for_each_server +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x49f3dcb0 nfs_post_op_update_inode +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x4aeee050 nfs_filemap_write_and_wait_range +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x4cb9e001 recover_lost_locks +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x4f05a585 nfs_put_client +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x4fbf807d nfs_show_stats +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x502c0d16 nfs_getattr +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x50b06480 nfs_refresh_inode +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x50fa8e23 nfs_show_options +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x50fe6d4e nfs_pageio_reset_read_mds +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x51892d61 nfs_callback_set_tcpport +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x547ad20b nfs_setsecurity +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x54e04f72 nfs_clear_inode +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x55c745a0 nfs_alloc_client +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x57263eb9 nfs_mark_client_ready +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x584b8482 nfs_inc_attr_generation_counter +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x586ea400 nfs_fscache_open_file +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x59588fe5 nfs_show_devname +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x59b5e559 nfs_force_lookup_revalidate +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x59c62d49 nfs_try_get_tree +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x5e943cc0 nfs_put_lock_context +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x60c92c16 nfs_file_mmap +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x62b17b69 get_nfs_open_context +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x6815774f nfs_clone_server +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x6c35b6a7 nfs_file_write +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x6d94c54e nfs_pgheader_init +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x6ec9c124 nfs_submount +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x6f602d84 nfs_open +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x707c6ca1 nfs_commitdata_alloc +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x70e9f180 nfs_fhget +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x75e145fe nfs_sync_inode +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x789d97e8 nfs_lock +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x78da4caa nfs_access_add_cache +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x799cc25e nfs_client_init_status +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x79b2701f nfs_free_server +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x79ceb966 nfs_invalidate_atime +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x7aef3a70 nfs_wb_all +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x7c9722ba nfs_dreq_bytes_left +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x7d0489cc nfs_sb_active +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x7ec20795 nfs_free_inode +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x7f61ad22 nfs_release_request +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x817a955f nfs_scan_commit_list +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x81ef1f27 nfs_generic_pg_test +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x832e8f0b nfs_alloc_fattr +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x844f716d nfs_do_submount +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x85b1982c nfs_generic_pgio +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x8646fd53 nfs_wait_client_init_complete +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x8dd6d087 nfs_initiate_commit +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x8f644067 nfs_file_llseek +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x8fd515fc nfs_write_inode +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x90a5530f nfsiod_workqueue +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x9159233b nfs_lookup +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x91d1fe52 max_session_slots +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x92d4a32b nfs_get_lock_context +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x94e7599d nfs_commit_inode +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x9847a6f0 nfs_initiate_pgio +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x98b0ece8 nfs_init_timeout_values +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x9c5d9686 nfs4_fs_type +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x9cfe5693 nfs_pageio_reset_write_mds +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x9e1a7fe6 nfs_pageio_init_write +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xa05ca625 nfs_fattr_init +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xa5f23a0f nfs_flock +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xa6e82b5a nfs_dentry_operations +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xa827264f nfs_alloc_inode +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xa8abcded __tracepoint_nfs_xdr_status +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xa8e9e1ae send_implementation_id +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xaa6eca27 nfs_clear_verifier_delegated +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xaa9fde04 nfs_access_set_mask +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xaafd4acc max_session_cb_slots +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xabc928c2 nfs_init_commit +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xacada3d8 unregister_nfs_version +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xae0e46ce nfs_init_client +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xb4fdd3c4 nfs_symlink +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xb5c9f58e nfs_umount_begin +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xb5f5c91f __tracepoint_nfs_fsync_exit +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xb7a89789 nfs_revalidate_inode +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xb8f8c692 nfs_client_init_is_complete +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xb93c35b6 nfs_access_zap_cache +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xbac0e039 nfs_file_operations +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xbb836d80 nfs_init_server_rpcclient +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xbc6b2c88 __tracepoint_nfs_fsync_enter +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xbf8a8cbe nfs_reconfigure +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xbfb229ee nfs_probe_fsinfo +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xc147905f nfs_request_add_commit_list +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xc2696c50 nfs_set_verifier +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xc3a2be67 nfs_net_id +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xc77ea9e4 nfs_atomic_open +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xcb3df66e nfs_file_release +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xcd33c4f5 put_nfs_open_context +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xd16c73da nfs_free_client +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xd644db30 nfs_sops +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xd6624ff6 nfs_get_client +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xd785b8c9 nfs_pgio_header_alloc +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xd88219d4 nfs_kill_super +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xdae9b5d7 nfs4_disable_idmapping +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xdbd1339a alloc_nfs_open_context +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xdcc68387 nfs_server_remove_lists +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xe44ea3c8 nfs_writeback_update_inode +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xe943a13b nfs_rmdir +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xec10ef6e nfs_create +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xeccf7da4 nfs_pageio_init_read +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xee8aad97 nfs_file_set_open_context +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xeeb2bedc nfs_request_remove_commit_list +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xfc4c9e7b nfs_wait_on_request +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xfc619abd _nfs_display_fhandle +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xff1e7c29 nfs_init_cinfo +EXPORT_SYMBOL_GPL fs/nfs/nfsv3 0x5c54cb60 nfs3_set_ds_client +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x054bef45 layoutstats_timer +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x0857a31a pnfs_destroy_layout +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x093559f6 nfs4_find_get_deviceid +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x0ade27ae __tracepoint_ff_layout_read_error +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x0ee9f7f4 nfs4_pnfs_ds_add +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x15898e66 pnfs_generic_ds_cinfo_release_lseg +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x163831c3 __tracepoint_nfs4_pnfs_write +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x170b04ca pnfs_error_mark_layout_for_return +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x1cdde079 __tracepoint_nfs4_pnfs_read +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x1e4e46e9 pnfs_layout_mark_request_commit +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x208f5c30 __tracepoint_pnfs_mds_fallback_read_pagelist +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x29690f9a pnfs_register_layoutdriver +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x2bf364b9 pnfs_write_done_resend_to_mds +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x2e7be993 nfs4_pnfs_ds_connect +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x3118229d nfs4_init_deviceid_node +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x348bc655 pnfs_generic_pg_test +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x351a1482 nfs41_sequence_done +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x39ac52fe __tracepoint_ff_layout_commit_error +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x3c7d84cc __tracepoint_pnfs_mds_fallback_write_pagelist +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x3d46cf10 nfs4_schedule_session_recovery +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x3f3f34f1 nfs4_set_rw_stateid +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x40bc3c6d __tracepoint_ff_layout_write_error +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x421772b8 pnfs_generic_commit_pagelist +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x453cbff5 pnfs_generic_pg_init_write +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x4d238ab7 nfs4_find_or_create_ds_client +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x521ee58d pnfs_read_resend_pnfs +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x529ed71f nfs4_put_deviceid_node +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x5a542ace pnfs_generic_prepare_to_resend_writes +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x5efdcff9 pnfs_unregister_layoutdriver +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x6085edbd nfs_map_string_to_numeric +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x611780be nfs4_decode_mp_ds_addr +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x6281c654 pnfs_generic_pg_check_range +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x64ea8f70 pnfs_generic_layout_insert_lseg +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x6659fe69 nfs4_mark_deviceid_unavailable +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x69ac438f nfs4_test_session_trunk +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x69d3558d pnfs_generic_rw_release +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x6a8b1c47 pnfs_generic_scan_commit_lists +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x6b78730a pnfs_generic_pg_writepages +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x7134dfb9 pnfs_report_layoutstat +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x745002d4 nfs4_pnfs_ds_put +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x7600841b nfs42_ssc_open +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x7872b3fe pnfs_set_layoutcommit +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x78ecf37b __tracepoint_pnfs_mds_fallback_pg_init_write +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x81ddedf3 pnfs_ld_write_done +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x845b8ed7 nfs4_sequence_done +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x8ba8cae2 nfs4_test_deviceid_unavailable +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x8c712fa4 pnfs_set_lo_fail +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x8d37945d pnfs_generic_write_commit_done +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x9693abab pnfs_put_lseg +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x96b42997 pnfs_generic_clear_request_commit +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x99979915 nfs4_schedule_lease_recovery +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x9f13a060 nfs4_mark_deviceid_available +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x9fb2cad4 pnfs_alloc_commit_array +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xa0c87e9b pnfs_nfs_generic_sync +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xa2198860 nfs4_schedule_stateid_recovery +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xa265e718 nfs4_delete_deviceid +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xa319bfee __tracepoint_pnfs_mds_fallback_pg_init_read +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xa53d1c65 nfs4_init_ds_session +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xa6fc7dc0 nfs4_schedule_lease_moved_recovery +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xaf8cf6b1 nfs42_proc_layouterror +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xafba954c pnfs_generic_pg_readpages +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xb3198840 nfs42_ssc_close +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xb3512bec pnfs_free_commit_array +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xc1339b21 nfs_remove_bad_delegation +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xc460e9f8 nfs4_set_ds_client +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xc4967ca1 pnfs_generic_sync +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xc787a7bf pnfs_add_commit_array +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xcec30f11 pnfs_generic_pg_init_read +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xd06fd857 pnfs_generic_recover_commit_reqs +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xd09286c3 pnfs_generic_pg_cleanup +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xd691eb14 pnfs_layoutcommit_inode +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xd6ed7dda __tracepoint_pnfs_mds_fallback_write_done +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xd99b1764 pnfs_ld_read_done +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xdc29230a __tracepoint_pnfs_mds_fallback_pg_get_mirror_count +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xdf05942f __tracepoint_nfs4_pnfs_commit_ds +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xe5f35255 nfs4_proc_getdeviceinfo +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xe82a2589 nfs4_setup_sequence +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xe945b3a2 pnfs_update_layout +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xe9d6e96b pnfs_generic_search_commit_reqs +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xed15fb41 nfs4_print_deviceid +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xee960d9f __tracepoint_pnfs_mds_fallback_read_done +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xf0fd1b05 pnfs_generic_ds_cinfo_destroy +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xf1cd7734 pnfs_generic_pg_check_layout +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xf3813bd7 pnfs_read_done_resend_to_mds +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/nfsv4 0xf9a53a64 nfs4_schedule_migration_recovery +EXPORT_SYMBOL_GPL fs/nfs_common/grace 0x19530797 opens_in_grace +EXPORT_SYMBOL_GPL fs/nfs_common/grace 0x1fe1e1ad locks_end_grace +EXPORT_SYMBOL_GPL fs/nfs_common/grace 0x97d9ab87 locks_in_grace +EXPORT_SYMBOL_GPL fs/nfs_common/grace 0xb4352803 locks_start_grace +EXPORT_SYMBOL_GPL fs/nfs_common/nfs_acl 0x7f164d80 nfsacl_decode +EXPORT_SYMBOL_GPL fs/nfs_common/nfs_acl 0xa6183d58 nfsacl_encode +EXPORT_SYMBOL_GPL fs/nfsd/nfsd 0x5b388f0f inter_copy_offload_enable +EXPORT_SYMBOL_GPL fs/ocfs2/cluster/ocfs2_nodemanager 0x11b811bc o2hb_setup_callback +EXPORT_SYMBOL_GPL fs/ocfs2/cluster/ocfs2_nodemanager 0x19de69af o2nm_get_node_by_ip +EXPORT_SYMBOL_GPL fs/ocfs2/cluster/ocfs2_nodemanager 0x1b89c6ee o2hb_fill_node_map +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 0x621ecc84 o2nm_node_put +EXPORT_SYMBOL_GPL fs/ocfs2/cluster/ocfs2_nodemanager 0x6a0c3847 __mlog_printk +EXPORT_SYMBOL_GPL fs/ocfs2/cluster/ocfs2_nodemanager 0x6e8829e0 o2hb_unregister_callback +EXPORT_SYMBOL_GPL fs/ocfs2/cluster/ocfs2_nodemanager 0x7e562ce4 o2nm_node_get +EXPORT_SYMBOL_GPL fs/ocfs2/cluster/ocfs2_nodemanager 0x81a17396 mlog_and_bits +EXPORT_SYMBOL_GPL fs/ocfs2/cluster/ocfs2_nodemanager 0xa87bc9e7 o2nm_configured_node_map +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 0xc4b41e2c o2hb_register_callback +EXPORT_SYMBOL_GPL fs/ocfs2/cluster/ocfs2_nodemanager 0xc4d99852 o2hb_check_node_heartbeating_from_callback +EXPORT_SYMBOL_GPL fs/ocfs2/cluster/ocfs2_nodemanager 0xd180911d o2nm_get_node_by_num +EXPORT_SYMBOL_GPL fs/ocfs2/cluster/ocfs2_nodemanager 0xd859ac8c o2net_fill_node_map +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 0x054caad4 dlm_unregister_domain +EXPORT_SYMBOL_GPL fs/ocfs2/dlm/ocfs2_dlm 0x25d89015 dlm_register_eviction_cb +EXPORT_SYMBOL_GPL fs/ocfs2/dlm/ocfs2_dlm 0x3366e15a dlm_print_one_lock +EXPORT_SYMBOL_GPL fs/ocfs2/dlm/ocfs2_dlm 0x6c800b65 dlmlock +EXPORT_SYMBOL_GPL fs/ocfs2/dlm/ocfs2_dlm 0x7a1211f8 dlm_setup_eviction_cb +EXPORT_SYMBOL_GPL fs/ocfs2/dlm/ocfs2_dlm 0x8394216e dlmunlock +EXPORT_SYMBOL_GPL fs/ocfs2/dlm/ocfs2_dlm 0xca813c27 dlm_register_domain +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 0x11f423a2 ocfs2_kset +EXPORT_SYMBOL_GPL fs/ocfs2/ocfs2_stackglue 0x1475f64b ocfs2_dlm_lvb_valid +EXPORT_SYMBOL_GPL fs/ocfs2/ocfs2_stackglue 0x2b2a48a4 ocfs2_plock +EXPORT_SYMBOL_GPL fs/ocfs2/ocfs2_stackglue 0x4d3af7fa ocfs2_cluster_hangup +EXPORT_SYMBOL_GPL fs/ocfs2/ocfs2_stackglue 0x5f6566b6 ocfs2_stack_glue_unregister +EXPORT_SYMBOL_GPL fs/ocfs2/ocfs2_stackglue 0x76f40744 ocfs2_dlm_lvb +EXPORT_SYMBOL_GPL fs/ocfs2/ocfs2_stackglue 0x903edaba ocfs2_stack_glue_register +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 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/pstore/pstore_blk 0x43cc3d4b pstore_blk_get_config +EXPORT_SYMBOL_GPL fs/pstore/pstore_blk 0x941c79d7 unregister_pstore_blk +EXPORT_SYMBOL_GPL fs/pstore/pstore_blk 0x96d760c6 register_pstore_device +EXPORT_SYMBOL_GPL fs/pstore/pstore_blk 0xb32bf368 register_pstore_blk +EXPORT_SYMBOL_GPL fs/pstore/pstore_blk 0xc3d2aed6 unregister_pstore_device +EXPORT_SYMBOL_GPL fs/pstore/pstore_zone 0x371d646c register_pstore_zone +EXPORT_SYMBOL_GPL fs/pstore/pstore_zone 0x929a9718 unregister_pstore_zone +EXPORT_SYMBOL_GPL kernel/torture 0x1b2fca48 torture_must_stop_irq +EXPORT_SYMBOL_GPL kernel/torture 0x1be7d8be torture_onoff_failures +EXPORT_SYMBOL_GPL kernel/torture 0x3e9619f5 torture_onoff_stats +EXPORT_SYMBOL_GPL kernel/torture 0x3ff9be11 torture_online +EXPORT_SYMBOL_GPL kernel/torture 0x447d9c95 torture_offline +EXPORT_SYMBOL_GPL kernel/torture 0x4b268e1c _torture_stop_kthread +EXPORT_SYMBOL_GPL kernel/torture 0x4c7529bd torture_shutdown_absorb +EXPORT_SYMBOL_GPL kernel/torture 0x52665f8b torture_random +EXPORT_SYMBOL_GPL kernel/torture 0x5a12a7da torture_stutter_init +EXPORT_SYMBOL_GPL kernel/torture 0x679d9e50 torture_must_stop +EXPORT_SYMBOL_GPL kernel/torture 0x688e6a64 torture_cleanup_end +EXPORT_SYMBOL_GPL kernel/torture 0x6c3ff11a torture_init_begin +EXPORT_SYMBOL_GPL kernel/torture 0x6c9024da torture_shuffle_task_register +EXPORT_SYMBOL_GPL kernel/torture 0x8b0e1d2f torture_shuffle_init +EXPORT_SYMBOL_GPL kernel/torture 0xc67a49d4 torture_cleanup_begin +EXPORT_SYMBOL_GPL kernel/torture 0xc94a93e3 torture_onoff_init +EXPORT_SYMBOL_GPL kernel/torture 0xdbc5277a torture_shutdown_init +EXPORT_SYMBOL_GPL kernel/torture 0xe2430307 stutter_wait +EXPORT_SYMBOL_GPL kernel/torture 0xe6989fd3 torture_init_end +EXPORT_SYMBOL_GPL kernel/torture 0xeff40877 _torture_create_kthread +EXPORT_SYMBOL_GPL kernel/torture 0xf6d34fb5 torture_kthread_stopping +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/crc64 0xeaf3cb23 crc64_be +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 0x7f376d08 poly1305_final_generic +EXPORT_SYMBOL_GPL lib/crypto/libpoly1305 0xaeadcbe8 poly1305_init_generic +EXPORT_SYMBOL_GPL lib/crypto/libpoly1305 0xfa617389 poly1305_update_generic +EXPORT_SYMBOL_GPL lib/notifier-error-inject 0x65ddf3ee notifier_err_inject_init +EXPORT_SYMBOL_GPL lib/notifier-error-inject 0x72c11f62 notifier_err_inject_dir +EXPORT_SYMBOL_GPL lib/raid6/raid6_pq 0x1803a6ed raid6_2data_recov +EXPORT_SYMBOL_GPL lib/raid6/raid6_pq 0x2b30f429 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 0x27587282 lowpan_header_decompress +EXPORT_SYMBOL_GPL net/6lowpan/6lowpan 0xc68374ab lowpan_header_compress +EXPORT_SYMBOL_GPL net/802/garp 0x52e08af9 garp_request_leave +EXPORT_SYMBOL_GPL net/802/garp 0x98409e48 garp_init_applicant +EXPORT_SYMBOL_GPL net/802/garp 0xa7c50dd6 garp_unregister_application +EXPORT_SYMBOL_GPL net/802/garp 0xb16a6c37 garp_request_join +EXPORT_SYMBOL_GPL net/802/garp 0xd4caa8c5 garp_register_application +EXPORT_SYMBOL_GPL net/802/garp 0xf3c0c036 garp_uninit_applicant +EXPORT_SYMBOL_GPL net/802/mrp 0x098bf24d mrp_init_applicant +EXPORT_SYMBOL_GPL net/802/mrp 0x31c90065 mrp_register_application +EXPORT_SYMBOL_GPL net/802/mrp 0x4c96daa0 mrp_request_join +EXPORT_SYMBOL_GPL net/802/mrp 0xac4629f0 mrp_unregister_application +EXPORT_SYMBOL_GPL net/802/mrp 0xb1196d67 mrp_uninit_applicant +EXPORT_SYMBOL_GPL net/802/mrp 0xf8214e84 mrp_request_leave +EXPORT_SYMBOL_GPL net/802/stp 0xb2966038 stp_proto_register +EXPORT_SYMBOL_GPL net/802/stp 0xd9dc0dee stp_proto_unregister +EXPORT_SYMBOL_GPL net/9p/9pnet 0x675673ac p9_client_xattrwalk +EXPORT_SYMBOL_GPL net/9p/9pnet 0x78f77afe p9_client_xattrcreate +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 0x6742fdfe 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/bluetooth/bluetooth 0x0423174a l2cap_chan_set_defaults +EXPORT_SYMBOL_GPL net/bluetooth/bluetooth 0x0e1562ba l2cap_chan_connect +EXPORT_SYMBOL_GPL net/bluetooth/bluetooth 0x21ed1472 l2cap_chan_create +EXPORT_SYMBOL_GPL net/bluetooth/bluetooth 0x31b19ce2 l2cap_chan_put +EXPORT_SYMBOL_GPL net/bluetooth/bluetooth 0x55f18c62 l2cap_chan_del +EXPORT_SYMBOL_GPL net/bluetooth/bluetooth 0x6f833692 l2cap_chan_list +EXPORT_SYMBOL_GPL net/bluetooth/bluetooth 0x78610fda bt_debugfs +EXPORT_SYMBOL_GPL net/bluetooth/bluetooth 0xc9137bad l2cap_add_psm +EXPORT_SYMBOL_GPL net/bluetooth/bluetooth 0xde007d63 l2cap_chan_send +EXPORT_SYMBOL_GPL net/bluetooth/hidp/hidp 0x20364f3e hidp_hid_driver +EXPORT_SYMBOL_GPL net/bridge/bridge 0x008f6f77 br_vlan_get_pvid +EXPORT_SYMBOL_GPL net/bridge/bridge 0x0c8c65cb br_forward_finish +EXPORT_SYMBOL_GPL net/bridge/bridge 0x23592436 br_vlan_enabled +EXPORT_SYMBOL_GPL net/bridge/bridge 0x2912c1de br_multicast_has_querier_adjacent +EXPORT_SYMBOL_GPL net/bridge/bridge 0x45f10163 br_multicast_list_adjacent +EXPORT_SYMBOL_GPL net/bridge/bridge 0x47c518ac br_fdb_find_port +EXPORT_SYMBOL_GPL net/bridge/bridge 0x5ba57022 br_handle_frame_finish +EXPORT_SYMBOL_GPL net/bridge/bridge 0x6ca979e7 nf_br_ops +EXPORT_SYMBOL_GPL net/bridge/bridge 0x7b2559d6 br_vlan_get_proto +EXPORT_SYMBOL_GPL net/bridge/bridge 0x7f81850a br_fdb_clear_offload +EXPORT_SYMBOL_GPL net/bridge/bridge 0x98d32019 br_port_flag_is_set +EXPORT_SYMBOL_GPL net/bridge/bridge 0xb1d34062 br_multicast_router +EXPORT_SYMBOL_GPL net/bridge/bridge 0xba187ff5 br_forward +EXPORT_SYMBOL_GPL net/bridge/bridge 0xc44caaf3 br_multicast_has_querier_anywhere +EXPORT_SYMBOL_GPL net/bridge/bridge 0xdc3a5150 br_vlan_get_pvid_rcu +EXPORT_SYMBOL_GPL net/bridge/bridge 0xe1dcedc7 br_dev_queue_push_xmit +EXPORT_SYMBOL_GPL net/bridge/bridge 0xe6cd3205 br_multicast_enabled +EXPORT_SYMBOL_GPL net/bridge/bridge 0xfa8b0db3 br_vlan_get_info +EXPORT_SYMBOL_GPL net/core/failover 0x74f6c003 failover_slave_unregister +EXPORT_SYMBOL_GPL net/core/failover 0xa30e9ad3 failover_unregister +EXPORT_SYMBOL_GPL net/core/failover 0xe7bea339 failover_register +EXPORT_SYMBOL_GPL net/dccp/dccp 0x00ad8c7b dccp_create_openreq_child +EXPORT_SYMBOL_GPL net/dccp/dccp 0x0299cd45 dccp_sync_mss +EXPORT_SYMBOL_GPL net/dccp/dccp 0x13b81e93 dccp_destroy_sock +EXPORT_SYMBOL_GPL net/dccp/dccp 0x173110bc dccp_init_sock +EXPORT_SYMBOL_GPL net/dccp/dccp 0x17e1e202 dccp_done +EXPORT_SYMBOL_GPL net/dccp/dccp 0x182ec2bf dccp_ackvec_parsed_add +EXPORT_SYMBOL_GPL net/dccp/dccp 0x1a8512c6 dccp_make_response +EXPORT_SYMBOL_GPL net/dccp/dccp 0x26be2e38 dccp_insert_option +EXPORT_SYMBOL_GPL net/dccp/dccp 0x2970a84b dccp_ioctl +EXPORT_SYMBOL_GPL net/dccp/dccp 0x370f3e95 dccp_getsockopt +EXPORT_SYMBOL_GPL net/dccp/dccp 0x4cdd391d dccp_feat_list_purge +EXPORT_SYMBOL_GPL net/dccp/dccp 0x510bf728 dccp_child_process +EXPORT_SYMBOL_GPL net/dccp/dccp 0x5754e6d2 dccp_poll +EXPORT_SYMBOL_GPL net/dccp/dccp 0x59814a84 dccp_statistics +EXPORT_SYMBOL_GPL net/dccp/dccp 0x5f1f22f3 dccp_rcv_established +EXPORT_SYMBOL_GPL net/dccp/dccp 0x677f0128 dccp_feat_signal_nn_change +EXPORT_SYMBOL_GPL net/dccp/dccp 0x722630de dccp_hashinfo +EXPORT_SYMBOL_GPL net/dccp/dccp 0x75dbb6d4 dccp_parse_options +EXPORT_SYMBOL_GPL net/dccp/dccp 0x7705e5d7 dccp_set_state +EXPORT_SYMBOL_GPL net/dccp/dccp 0x80993155 dccp_timestamp +EXPORT_SYMBOL_GPL net/dccp/dccp 0x8131127a dccp_sendmsg +EXPORT_SYMBOL_GPL net/dccp/dccp 0x86be7924 dccp_packet_name +EXPORT_SYMBOL_GPL net/dccp/dccp 0x929e81f2 dccp_close +EXPORT_SYMBOL_GPL net/dccp/dccp 0x9598d24d dccp_ackvec_parsed_cleanup +EXPORT_SYMBOL_GPL net/dccp/dccp 0x9cc06b38 dccp_check_req +EXPORT_SYMBOL_GPL net/dccp/dccp 0xa2624a42 dccp_death_row +EXPORT_SYMBOL_GPL net/dccp/dccp 0xa7badac1 compat_dccp_getsockopt +EXPORT_SYMBOL_GPL net/dccp/dccp 0xad236a61 dccp_recvmsg +EXPORT_SYMBOL_GPL net/dccp/dccp 0xb1b152c1 dccp_reqsk_init +EXPORT_SYMBOL_GPL net/dccp/dccp 0xb4e40d6a dccp_rcv_state_process +EXPORT_SYMBOL_GPL net/dccp/dccp 0xbec19c00 dccp_shutdown +EXPORT_SYMBOL_GPL net/dccp/dccp 0xbf15a394 inet_dccp_listen +EXPORT_SYMBOL_GPL net/dccp/dccp 0xc3b6a26c dccp_orphan_count +EXPORT_SYMBOL_GPL net/dccp/dccp 0xca836a03 dccp_setsockopt +EXPORT_SYMBOL_GPL net/dccp/dccp 0xd5f8131b dccp_ctl_make_reset +EXPORT_SYMBOL_GPL net/dccp/dccp 0xd81e382f dccp_disconnect +EXPORT_SYMBOL_GPL net/dccp/dccp 0xdaf8863f dccp_send_sync +EXPORT_SYMBOL_GPL net/dccp/dccp 0xdb54fd70 dccp_connect +EXPORT_SYMBOL_GPL net/dccp/dccp 0xf2b87096 dccp_send_ack +EXPORT_SYMBOL_GPL net/dccp/dccp 0xf57298e9 dccp_feat_nn_get +EXPORT_SYMBOL_GPL net/dccp/dccp 0xf5ab98f3 compat_dccp_setsockopt +EXPORT_SYMBOL_GPL net/dccp/dccp 0xf6319a4d dccp_reqsk_send_ack +EXPORT_SYMBOL_GPL net/dccp/dccp_ipv4 0x5a9f9109 dccp_v4_send_check +EXPORT_SYMBOL_GPL net/dccp/dccp_ipv4 0x6bd3fe80 dccp_invalid_packet +EXPORT_SYMBOL_GPL net/dccp/dccp_ipv4 0x753572fb dccp_v4_do_rcv +EXPORT_SYMBOL_GPL net/dccp/dccp_ipv4 0x8ff5a55b dccp_v4_request_recv_sock +EXPORT_SYMBOL_GPL net/dccp/dccp_ipv4 0xd735b050 dccp_v4_conn_request +EXPORT_SYMBOL_GPL net/dccp/dccp_ipv4 0xf4f357e5 dccp_v4_connect +EXPORT_SYMBOL_GPL net/dsa/dsa_core 0x066a282f dsa_port_from_netdev +EXPORT_SYMBOL_GPL net/dsa/dsa_core 0x0801dcf9 dsa_switch_suspend +EXPORT_SYMBOL_GPL net/dsa/dsa_core 0x0db06d54 dsa_port_get_phy_strings +EXPORT_SYMBOL_GPL net/dsa/dsa_core 0x0f2f31b2 dsa_devlink_param_set +EXPORT_SYMBOL_GPL net/dsa/dsa_core 0x1ce1c03c dsa_devlink_resource_occ_get_unregister +EXPORT_SYMBOL_GPL net/dsa/dsa_core 0x20159f04 dsa_devlink_resources_unregister +EXPORT_SYMBOL_GPL net/dsa/dsa_core 0x292d2af7 dsa_switch_find +EXPORT_SYMBOL_GPL net/dsa/dsa_core 0x2fb1c20c dsa_devlink_resource_occ_get_register +EXPORT_SYMBOL_GPL net/dsa/dsa_core 0x39f277b5 dsa_devlink_params_unregister +EXPORT_SYMBOL_GPL net/dsa/dsa_core 0x47eca610 dsa_port_get_phy_sset_count +EXPORT_SYMBOL_GPL net/dsa/dsa_core 0x5c5bb8ee unregister_dsa_notifier +EXPORT_SYMBOL_GPL net/dsa/dsa_core 0x6d0977b9 dsa_dev_to_net_device +EXPORT_SYMBOL_GPL net/dsa/dsa_core 0x79caf6f2 dsa_tag_drivers_unregister +EXPORT_SYMBOL_GPL net/dsa/dsa_core 0x89c3bcc3 dsa_tag_drivers_register +EXPORT_SYMBOL_GPL net/dsa/dsa_core 0x8e959699 dsa_unregister_switch +EXPORT_SYMBOL_GPL net/dsa/dsa_core 0xadc7f935 dsa_port_get_ethtool_phy_stats +EXPORT_SYMBOL_GPL net/dsa/dsa_core 0xbab193af dsa_devlink_param_get +EXPORT_SYMBOL_GPL net/dsa/dsa_core 0xbcff2405 dsa_switch_resume +EXPORT_SYMBOL_GPL net/dsa/dsa_core 0xc2019b4a dsa_register_switch +EXPORT_SYMBOL_GPL net/dsa/dsa_core 0xdcfb870b dsa_port_phylink_mac_change +EXPORT_SYMBOL_GPL net/dsa/dsa_core 0xe92a2cf5 dsa_devlink_params_register +EXPORT_SYMBOL_GPL net/dsa/dsa_core 0xe9a557f1 dsa_devlink_resource_register +EXPORT_SYMBOL_GPL net/dsa/dsa_core 0xf0a6d706 call_dsa_notifiers +EXPORT_SYMBOL_GPL net/dsa/dsa_core 0xf801c2a4 dsa_enqueue_skb +EXPORT_SYMBOL_GPL net/dsa/dsa_core 0xf86039e0 register_dsa_notifier +EXPORT_SYMBOL_GPL net/dsa/tag_8021q 0x35bcfa69 dsa_8021q_rx_vid_subvlan +EXPORT_SYMBOL_GPL net/dsa/tag_8021q 0x415e894e dsa_8021q_rx_subvlan +EXPORT_SYMBOL_GPL net/dsa/tag_8021q 0x417d1fed dsa_8021q_rx_switch_id +EXPORT_SYMBOL_GPL net/dsa/tag_8021q 0x5557a057 dsa_8021q_xmit +EXPORT_SYMBOL_GPL net/dsa/tag_8021q 0x694c7c8d dsa_8021q_tx_vid +EXPORT_SYMBOL_GPL net/dsa/tag_8021q 0x728df36f dsa_port_setup_8021q_tagging +EXPORT_SYMBOL_GPL net/dsa/tag_8021q 0x9e59271d dsa_8021q_rx_source_port +EXPORT_SYMBOL_GPL net/dsa/tag_8021q 0xd317c2c1 dsa_8021q_rx_vid +EXPORT_SYMBOL_GPL net/dsa/tag_8021q 0xeb80d61c dsa_8021q_crosschip_bridge_leave +EXPORT_SYMBOL_GPL net/dsa/tag_8021q 0xf13e1803 vid_is_dsa_8021q +EXPORT_SYMBOL_GPL net/dsa/tag_8021q 0xf859c631 dsa_8021q_crosschip_bridge_join +EXPORT_SYMBOL_GPL net/ieee802154/ieee802154 0x5a403c07 ieee802154_hdr_peek_addrs +EXPORT_SYMBOL_GPL net/ieee802154/ieee802154 0x6229028b ieee802154_hdr_peek +EXPORT_SYMBOL_GPL net/ieee802154/ieee802154 0x67686724 ieee802154_hdr_pull +EXPORT_SYMBOL_GPL net/ieee802154/ieee802154 0x87e2553b ieee802154_max_payload +EXPORT_SYMBOL_GPL net/ieee802154/ieee802154 0xcd211b0f ieee802154_hdr_push +EXPORT_SYMBOL_GPL net/ife/ife 0x0b1eb370 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 0xb51c3a60 ife_decode +EXPORT_SYMBOL_GPL net/ife/ife 0xe7888e98 ife_tlv_meta_encode +EXPORT_SYMBOL_GPL net/ipv4/esp4 0x67bdd7f2 esp_output_tail +EXPORT_SYMBOL_GPL net/ipv4/esp4 0x9121276d esp_output_head +EXPORT_SYMBOL_GPL net/ipv4/esp4 0xe35e7519 esp_input_done2 +EXPORT_SYMBOL_GPL net/ipv4/gre 0xb409e37c gre_add_protocol +EXPORT_SYMBOL_GPL net/ipv4/gre 0xbf53fe38 gre_del_protocol +EXPORT_SYMBOL_GPL net/ipv4/inet_diag 0x04f983f9 inet_sk_diag_fill +EXPORT_SYMBOL_GPL net/ipv4/inet_diag 0x3cc0e952 inet_diag_dump_icsk +EXPORT_SYMBOL_GPL net/ipv4/inet_diag 0x5c370b0a inet_diag_find_one_icsk +EXPORT_SYMBOL_GPL net/ipv4/inet_diag 0xa6097237 inet_diag_msg_common_fill +EXPORT_SYMBOL_GPL net/ipv4/inet_diag 0xa6b8cbcb inet_diag_unregister +EXPORT_SYMBOL_GPL net/ipv4/inet_diag 0xab286241 inet_diag_bc_sk +EXPORT_SYMBOL_GPL net/ipv4/inet_diag 0xb0d596f8 inet_diag_msg_attrs_fill +EXPORT_SYMBOL_GPL net/ipv4/inet_diag 0xccdd532f inet_diag_register +EXPORT_SYMBOL_GPL net/ipv4/inet_diag 0xe21d3a04 inet_diag_dump_one_icsk +EXPORT_SYMBOL_GPL net/ipv4/ip_gre 0x05c17365 gretap_fb_dev_create +EXPORT_SYMBOL_GPL net/ipv4/ip_tunnel 0x228ce607 ip_tunnel_setup +EXPORT_SYMBOL_GPL net/ipv4/ip_tunnel 0x28eedf46 ip_tunnel_dellink +EXPORT_SYMBOL_GPL net/ipv4/ip_tunnel 0x3e6d639b ip_tunnel_lookup +EXPORT_SYMBOL_GPL net/ipv4/ip_tunnel 0x440f681d ip_tunnel_change_mtu +EXPORT_SYMBOL_GPL net/ipv4/ip_tunnel 0x4bf4f619 ip_tunnel_ctl +EXPORT_SYMBOL_GPL net/ipv4/ip_tunnel 0x57e4666a ip_tunnel_encap_setup +EXPORT_SYMBOL_GPL net/ipv4/ip_tunnel 0x83ca08fa ip_tunnel_changelink +EXPORT_SYMBOL_GPL net/ipv4/ip_tunnel 0x8b03bf65 ip_tunnel_init +EXPORT_SYMBOL_GPL net/ipv4/ip_tunnel 0xacc37e37 __ip_tunnel_change_mtu +EXPORT_SYMBOL_GPL net/ipv4/ip_tunnel 0xaccfd348 ip_tunnel_uninit +EXPORT_SYMBOL_GPL net/ipv4/ip_tunnel 0xc9178c71 ip_tunnel_newlink +EXPORT_SYMBOL_GPL net/ipv4/ip_tunnel 0xd02e3407 ip_tunnel_xmit +EXPORT_SYMBOL_GPL net/ipv4/ip_tunnel 0xddd9714c ip_tunnel_rcv +EXPORT_SYMBOL_GPL net/ipv4/ip_tunnel 0xe005a79b ip_tunnel_ioctl +EXPORT_SYMBOL_GPL net/ipv4/ip_tunnel 0xe467c0b8 ip_md_tunnel_xmit +EXPORT_SYMBOL_GPL net/ipv4/ip_tunnel 0xf0fb65e5 ip_tunnel_delete_nets +EXPORT_SYMBOL_GPL net/ipv4/ip_tunnel 0xf27385fb ip_tunnel_init_net +EXPORT_SYMBOL_GPL net/ipv4/netfilter/arp_tables 0x76ee52aa arpt_alloc_initial_table +EXPORT_SYMBOL_GPL net/ipv4/netfilter/ip_tables 0x671abc76 ipt_alloc_initial_table +EXPORT_SYMBOL_GPL net/ipv4/netfilter/nf_defrag_ipv4 0x47671154 nf_defrag_ipv4_enable +EXPORT_SYMBOL_GPL net/ipv4/netfilter/nf_dup_ipv4 0x827a95ae nf_dup_ipv4 +EXPORT_SYMBOL_GPL net/ipv4/netfilter/nf_reject_ipv4 0x21c6c27b nf_send_unreach +EXPORT_SYMBOL_GPL net/ipv4/netfilter/nf_reject_ipv4 0x512f8790 nf_reject_ip_tcphdr_put +EXPORT_SYMBOL_GPL net/ipv4/netfilter/nf_reject_ipv4 0x931252f2 nf_send_reset +EXPORT_SYMBOL_GPL net/ipv4/netfilter/nf_reject_ipv4 0x9b82019b nf_reject_iphdr_put +EXPORT_SYMBOL_GPL net/ipv4/netfilter/nf_reject_ipv4 0xa0e7bcd1 nf_reject_ip_tcphdr_get +EXPORT_SYMBOL_GPL net/ipv4/netfilter/nf_socket_ipv4 0x6ceac8cc nf_sk_lookup_slow_v4 +EXPORT_SYMBOL_GPL net/ipv4/netfilter/nf_tproxy_ipv4 0x634419d6 nf_tproxy_get_sock_v4 +EXPORT_SYMBOL_GPL net/ipv4/netfilter/nf_tproxy_ipv4 0x9cb2239b nf_tproxy_laddr4 +EXPORT_SYMBOL_GPL net/ipv4/netfilter/nf_tproxy_ipv4 0xf2e4ca50 nf_tproxy_handle_time_wait4 +EXPORT_SYMBOL_GPL net/ipv4/netfilter/nft_fib_ipv4 0x34d50e5f nft_fib4_eval +EXPORT_SYMBOL_GPL net/ipv4/netfilter/nft_fib_ipv4 0x4be7b58f nft_fib4_eval_type +EXPORT_SYMBOL_GPL net/ipv4/tcp_vegas 0x2c9a6138 tcp_vegas_cwnd_event +EXPORT_SYMBOL_GPL net/ipv4/tcp_vegas 0x74163a0a tcp_vegas_pkts_acked +EXPORT_SYMBOL_GPL net/ipv4/tcp_vegas 0x8948e83f tcp_vegas_init +EXPORT_SYMBOL_GPL net/ipv4/tcp_vegas 0xa2bc4b76 tcp_vegas_get_info +EXPORT_SYMBOL_GPL net/ipv4/tcp_vegas 0xd23d4a36 tcp_vegas_state +EXPORT_SYMBOL_GPL net/ipv4/udp_tunnel 0x0faf209f udp_tunnel_sock_release +EXPORT_SYMBOL_GPL net/ipv4/udp_tunnel 0x205d9d9e udp_tunnel_push_rx_port +EXPORT_SYMBOL_GPL net/ipv4/udp_tunnel 0x57424a5c udp_tunnel_notify_del_rx_port +EXPORT_SYMBOL_GPL net/ipv4/udp_tunnel 0x78506e4f udp_tunnel_notify_add_rx_port +EXPORT_SYMBOL_GPL net/ipv4/udp_tunnel 0x795063fb udp_tunnel_drop_rx_port +EXPORT_SYMBOL_GPL net/ipv4/udp_tunnel 0x802d0981 setup_udp_tunnel_sock +EXPORT_SYMBOL_GPL net/ipv4/udp_tunnel 0xbf9fafa9 udp_tunnel_xmit_skb +EXPORT_SYMBOL_GPL net/ipv4/udp_tunnel 0xddec1760 udp_tun_rx_dst +EXPORT_SYMBOL_GPL net/ipv6/esp6 0x47a79462 esp6_output_tail +EXPORT_SYMBOL_GPL net/ipv6/esp6 0x86f95a5d esp6_input_done2 +EXPORT_SYMBOL_GPL net/ipv6/esp6 0xa5faa490 esp6_output_head +EXPORT_SYMBOL_GPL net/ipv6/ip6_tunnel 0x1f40fa6f ip6_tnl_encap_setup +EXPORT_SYMBOL_GPL net/ipv6/ip6_tunnel 0x64fffd15 ip6_tnl_xmit_ctl +EXPORT_SYMBOL_GPL net/ipv6/ip6_tunnel 0xb1231196 ip6_tnl_rcv_ctl +EXPORT_SYMBOL_GPL net/ipv6/ip6_udp_tunnel 0x0119a4b6 udp_tunnel6_xmit_skb +EXPORT_SYMBOL_GPL net/ipv6/ip6_udp_tunnel 0x80e7227b udp_sock_create6 +EXPORT_SYMBOL_GPL net/ipv6/netfilter/ip6_tables 0x3c1bc3b8 ip6t_alloc_initial_table +EXPORT_SYMBOL_GPL net/ipv6/netfilter/nf_defrag_ipv6 0x8843deed nf_ct_frag6_gather +EXPORT_SYMBOL_GPL net/ipv6/netfilter/nf_defrag_ipv6 0xd8ce5e76 nf_defrag_ipv6_enable +EXPORT_SYMBOL_GPL net/ipv6/netfilter/nf_dup_ipv6 0x72876323 nf_dup_ipv6 +EXPORT_SYMBOL_GPL net/ipv6/netfilter/nf_reject_ipv6 0x3c0e8fc4 nf_reject_ip6_tcphdr_put +EXPORT_SYMBOL_GPL net/ipv6/netfilter/nf_reject_ipv6 0x4bb7e557 nf_send_reset6 +EXPORT_SYMBOL_GPL net/ipv6/netfilter/nf_reject_ipv6 0x55cd52fb nf_send_unreach6 +EXPORT_SYMBOL_GPL net/ipv6/netfilter/nf_reject_ipv6 0x6b9d3ad8 nf_reject_ip6_tcphdr_get +EXPORT_SYMBOL_GPL net/ipv6/netfilter/nf_reject_ipv6 0x84d2c0e0 nf_reject_ip6hdr_put +EXPORT_SYMBOL_GPL net/ipv6/netfilter/nf_socket_ipv6 0xeb8d69a5 nf_sk_lookup_slow_v6 +EXPORT_SYMBOL_GPL net/ipv6/netfilter/nf_tproxy_ipv6 0x07b22f27 nf_tproxy_laddr6 +EXPORT_SYMBOL_GPL net/ipv6/netfilter/nf_tproxy_ipv6 0x4c492fd2 nf_tproxy_get_sock_v6 +EXPORT_SYMBOL_GPL net/ipv6/netfilter/nf_tproxy_ipv6 0xeb83f9a9 nf_tproxy_handle_time_wait6 +EXPORT_SYMBOL_GPL net/ipv6/netfilter/nft_fib_ipv6 0x43ba0332 nft_fib6_eval +EXPORT_SYMBOL_GPL net/ipv6/netfilter/nft_fib_ipv6 0x66d63a9b nft_fib6_eval_type +EXPORT_SYMBOL_GPL net/l2tp/l2tp_core 0x0207c687 l2tp_xmit_skb +EXPORT_SYMBOL_GPL net/l2tp/l2tp_core 0x16eef419 l2tp_udp_encap_recv +EXPORT_SYMBOL_GPL net/l2tp/l2tp_core 0x29829179 l2tp_tunnel_get +EXPORT_SYMBOL_GPL net/l2tp/l2tp_core 0x32ed56b9 l2tp_tunnel_create +EXPORT_SYMBOL_GPL net/l2tp/l2tp_core 0x57b3fccf l2tp_tunnel_get_nth +EXPORT_SYMBOL_GPL net/l2tp/l2tp_core 0x5d43ffaf l2tp_session_get_nth +EXPORT_SYMBOL_GPL net/l2tp/l2tp_core 0x5da58b3d l2tp_tunnel_delete +EXPORT_SYMBOL_GPL net/l2tp/l2tp_core 0x61395f44 __l2tp_session_unhash +EXPORT_SYMBOL_GPL net/l2tp/l2tp_core 0x7df453a8 l2tp_session_register +EXPORT_SYMBOL_GPL net/l2tp/l2tp_core 0x8d552339 l2tp_session_get_by_ifname +EXPORT_SYMBOL_GPL net/l2tp/l2tp_core 0x90ec3085 l2tp_session_delete +EXPORT_SYMBOL_GPL net/l2tp/l2tp_core 0x94be9a4f l2tp_session_create +EXPORT_SYMBOL_GPL net/l2tp/l2tp_core 0xb0ff496f l2tp_session_get +EXPORT_SYMBOL_GPL net/l2tp/l2tp_core 0xd93f4977 l2tp_tunnel_register +EXPORT_SYMBOL_GPL net/l2tp/l2tp_core 0xdbd7d0f9 l2tp_tunnel_get_session +EXPORT_SYMBOL_GPL net/l2tp/l2tp_core 0xe5e93771 l2tp_session_free +EXPORT_SYMBOL_GPL net/l2tp/l2tp_core 0xf67c838b l2tp_session_set_header_len +EXPORT_SYMBOL_GPL net/l2tp/l2tp_netlink 0x337f2432 l2tp_nl_unregister_ops +EXPORT_SYMBOL_GPL net/l2tp/l2tp_netlink 0x423dc228 l2tp_nl_register_ops +EXPORT_SYMBOL_GPL net/mac80211/mac80211 0x007b050a wdev_to_ieee80211_vif +EXPORT_SYMBOL_GPL net/mac80211/mac80211 0x06295f14 ieee80211_gtk_rekey_notify +EXPORT_SYMBOL_GPL net/mac80211/mac80211 0x19609253 ieee80211_calc_tx_airtime +EXPORT_SYMBOL_GPL net/mac80211/mac80211 0x279f9ad0 ieee80211_gtk_rekey_add +EXPORT_SYMBOL_GPL net/mac80211/mac80211 0x381dfde4 ieee80211_iterate_active_interfaces_rtnl +EXPORT_SYMBOL_GPL net/mac80211/mac80211 0x3a161269 ieee80211_iter_chan_contexts_atomic +EXPORT_SYMBOL_GPL net/mac80211/mac80211 0x3c6197fe ieee80211_remain_on_channel_expired +EXPORT_SYMBOL_GPL net/mac80211/mac80211 0x3e34591b ieee80211_vif_to_wdev +EXPORT_SYMBOL_GPL net/mac80211/mac80211 0x4e3c77d4 ieee80211_iterate_interfaces +EXPORT_SYMBOL_GPL net/mac80211/mac80211 0x5250cf98 ieee80211_tkip_add_iv +EXPORT_SYMBOL_GPL net/mac80211/mac80211 0x60493a47 ieee80211_iterate_active_interfaces_atomic +EXPORT_SYMBOL_GPL net/mac80211/mac80211 0x6d383532 ieee80211_request_smps +EXPORT_SYMBOL_GPL net/mac80211/mac80211 0x75eef264 ieee80211_find_sta_by_ifaddr +EXPORT_SYMBOL_GPL net/mac80211/mac80211 0x9abdad58 ieee80211_ave_rssi +EXPORT_SYMBOL_GPL net/mac80211/mac80211 0xa11b9e04 ieee80211_resume_disconnect +EXPORT_SYMBOL_GPL net/mac80211/mac80211 0xa1247034 ieee80211_remove_key +EXPORT_SYMBOL_GPL net/mac80211/mac80211 0xb4032cbe ieee80211_ready_on_channel +EXPORT_SYMBOL_GPL net/mac80211/mac80211 0xc00677f2 ieee80211_update_mu_groups +EXPORT_SYMBOL_GPL net/mac80211/mac80211 0xd8e09da4 ieee80211_set_key_rx_seq +EXPORT_SYMBOL_GPL net/mac80211/mac80211 0xf252f118 ieee80211_iterate_stations_atomic +EXPORT_SYMBOL_GPL net/mac80211/mac80211 0xf85c8ada ieee80211_calc_rx_airtime +EXPORT_SYMBOL_GPL net/mpls/mpls_router 0x45ebb0ee mpls_dev_mtu +EXPORT_SYMBOL_GPL net/mpls/mpls_router 0x54d787ca nla_put_labels +EXPORT_SYMBOL_GPL net/mpls/mpls_router 0xbe66fb97 mpls_pkt_too_big +EXPORT_SYMBOL_GPL net/mpls/mpls_router 0xdb222f13 mpls_stats_inc_outucastpkts +EXPORT_SYMBOL_GPL net/mpls/mpls_router 0xe413b0a4 nla_get_labels +EXPORT_SYMBOL_GPL net/mpls/mpls_router 0xf1a8f04f mpls_output_possible +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0x035b06cf ip_set_get_byname +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0x10d56156 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 0x324f92ff ip_set_put_flags +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0x397f6231 ip_set_free +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0x493e25fc ip_set_get_ip6_port +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0x6d800f73 ip_set_elem_len +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0x7924b6de ip_set_hostmask_map +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0x81a6ec30 ip_set_match_extensions +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0x81fff2d1 ip_set_netmask_map +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0x848701a3 ip_set_name_byindex +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0x86040907 ip_set_put_extensions +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0x91f15513 ip_set_get_extensions +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0x9e98722b ip_set_get_ipaddr6 +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0x9efe1ede ip_set_del +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0xa293f8a6 ip_set_get_ipaddr4 +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0xafd666ef ip_set_nfnl_get_byindex +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0xc00afab9 ip_set_extensions +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0xd1c7492d ip_set_add +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0xdc6bc6ef ip_set_type_unregister +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0xdf5d7998 ip_set_nfnl_put +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0xe2ed4dd1 ip_set_get_ip4_port +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0xecb3d5f9 ip_set_type_register +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0xee28a6b8 ip_set_init_comment +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0xf0394d9c ip_set_test +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0xf3b4d4ae ip_set_alloc +EXPORT_SYMBOL_GPL net/netfilter/ipvs/ip_vs 0x6cfb8938 ip_vs_conn_in_get_proto +EXPORT_SYMBOL_GPL net/netfilter/ipvs/ip_vs 0xc1ccd693 unregister_ip_vs_pe +EXPORT_SYMBOL_GPL net/netfilter/ipvs/ip_vs 0xc5a94962 register_ip_vs_pe +EXPORT_SYMBOL_GPL net/netfilter/ipvs/ip_vs 0xe2fa44cb ip_vs_conn_out_get_proto +EXPORT_SYMBOL_GPL net/netfilter/nf_conncount 0x0468092d nf_conncount_init +EXPORT_SYMBOL_GPL net/netfilter/nf_conncount 0x1247d547 nf_conncount_count +EXPORT_SYMBOL_GPL net/netfilter/nf_conncount 0x3ff55ad3 nf_conncount_cache_free +EXPORT_SYMBOL_GPL net/netfilter/nf_conncount 0x6f7d3c83 nf_conncount_destroy +EXPORT_SYMBOL_GPL net/netfilter/nf_conncount 0x8c4cb9c3 nf_conncount_list_init +EXPORT_SYMBOL_GPL net/netfilter/nf_conncount 0xa7e8e1b7 nf_conncount_gc_list +EXPORT_SYMBOL_GPL net/netfilter/nf_conncount 0xbf1c149b nf_conncount_add +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x064fd7be nf_ct_seq_adjust +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x06e2df02 nf_ct_port_tuple_to_nlattr +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x0bc00f80 nf_nat_helper_try_module_get +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x12c7c672 nf_ct_acct_add +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x142d1b3b nf_conntrack_helpers_unregister +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x15d82b07 nf_ct_untimeout +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x1686c710 nf_conntrack_alter_reply +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x1cfbc899 nf_ct_timeout_put_hook +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x2045da0a nf_ct_bridge_unregister +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x2179a5db nf_ct_netns_get +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x224af17d nf_l4proto_log_invalid +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x289c3714 nf_ct_alloc_hashtable +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x28c10c32 nf_ct_expect_init +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x28eff409 nf_conntrack_hash +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x2ee9d160 nf_ct_tmpl_alloc +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x349f15f3 nf_ct_get_id +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x3802f55b nf_ct_l4proto_log_invalid +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x38b74dc6 nf_ct_delete +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x3a918b1a nf_ct_l4proto_find +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x3bb24c3b __nf_conntrack_helper_find +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x3f972300 nf_conntrack_helper_try_module_get +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x41b80c53 nf_ct_tcp_seqadj_set +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x4358171f nf_conntrack_free +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x4416746c nf_ct_expect_related_report +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x45573c46 __nf_ct_refresh_acct +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x478addf5 nf_conntrack_helper_unregister +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x4bb0e4d7 nf_connlabels_put +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x50d2df43 nf_ct_expect_put +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x510d743c nf_ct_get_tuplepr +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x5189a6c0 nf_ct_seqadj_set +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x52efdb02 nf_conntrack_tuple_taken +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x549cc6df nf_conntrack_alloc +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x5a35042b nf_ct_iterate_destroy +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x5d059c54 __nf_ct_try_assign_helper +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x5f274931 nf_ct_extend_register +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x5f49e657 nf_ct_extend_unregister +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x61e004a3 nf_conntrack_helpers_register +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x6256d237 nf_conntrack_eventmask_report +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x67243099 nf_ct_iterate_cleanup_net +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x693c3961 nf_ct_helper_hash +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x6b2c9fa0 nf_conntrack_register_notifier +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x7131bf83 nf_conntrack_in +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x71a62819 nf_ct_bridge_register +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x72651d9b nf_ct_expect_find_get +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x7da80b2e nf_ct_port_nla_policy +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x7eec34c0 nf_ct_remove_expect +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x80f8958f nf_ct_unexpect_related +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x830ed70b nf_ct_set_timeout +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x836bdb00 nf_confirm +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x87493fb0 nf_ct_helper_ext_add +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x8a995a1b __nf_ct_expect_find +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x8ce4c110 nf_ct_seq_offset +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x8ff073c4 nf_ct_expect_iterate_destroy +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x8ffe7e89 nf_conntrack_htable_size +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x93c9d4ae nf_conntrack_helper_register +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x9890352d nf_ct_timeout_find_get_hook +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x9adb7399 nf_conntrack_expect_lock +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x9cffe753 nf_ct_expect_alloc +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x9eea29d4 nf_ct_helper_expectfn_unregister +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xa266bc7c nf_conntrack_unregister_notifier +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xa7af7d4e nf_ct_helper_expectfn_register +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xa90dbc01 nf_nat_helper_put +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xaa0ba119 nf_ct_tmpl_free +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xaa27b80a nf_ct_expect_unregister_notifier +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xadd07964 nf_ct_unconfirmed_destroy +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xae2c8296 nf_ct_helper_init +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xaf0847f0 nf_conntrack_locks +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xafbd6cf5 nf_ct_port_nlattr_to_tuple +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xb2ddebe8 nf_ct_gre_keymap_destroy +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xb608cdd8 nf_ct_seqadj_init +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xb8cbc2d2 nf_ct_gre_keymap_add +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xbfcd512c nf_ct_unlink_expect_report +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xc18ac88d nf_ct_expect_hsize +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xc18e6036 nf_nat_helper_register +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xc40f284c nf_ct_helper_hsize +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xc59628e4 nf_ct_helper_expectfn_find_by_symbol +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xcb051008 nf_ct_helper_expectfn_find_by_name +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xd0646071 nf_conntrack_hash_check_insert +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xd452ca8f nf_connlabels_replace +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xd505c3e0 nf_ct_port_nlattr_tuple_size +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xd96b0889 nf_ct_deliver_cached_events +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xdba7326b nf_conntrack_lock +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xdea7be20 nf_ct_netns_put +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xdf086fd4 nf_ct_kill_acct +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xdf430c6a nf_ct_helper_log +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xe8b7454c nf_conntrack_helper_put +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xeb8eae7a nf_connlabels_get +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xec8beba6 nf_ct_expect_hash +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xec99f736 nf_ct_destroy_timeout +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xf1d3266e nf_conntrack_find_get +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xf38bcdf3 nf_conntrack_max +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xf6eb5783 nf_ct_expect_register_notifier +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xfc878ab7 nf_ct_expect_iterate_net +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xfd427f3f nf_ct_remove_expectations +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xfe731af8 nf_ct_invert_tuple +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xfeb62014 nf_nat_helper_unregister +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xffcaac65 __nf_conntrack_confirm +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_amanda 0x55d74fc7 nf_nat_amanda_hook +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_broadcast 0x09ad86d0 nf_conntrack_broadcast_help +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_ftp 0x1601b83f nf_nat_ftp_hook +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_h323 0x0a59eed4 nat_q931_hook +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_h323 0x1e13645e set_h225_addr_hook +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_h323 0x4519fcc4 set_h245_addr_hook +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_h323 0x4bf73528 nat_h245_hook +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_h323 0x4c49e231 nat_callforwarding_hook +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_h323 0x979984dd set_ras_addr_hook +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_h323 0xb201efca nat_t120_hook +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_h323 0xc685c8e3 set_sig_addr_hook +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_h323 0xda37ba11 nat_rtp_rtcp_hook +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_h323 0xdd861dc4 get_h225_addr +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_irc 0x245eb5f0 nf_nat_irc_hook +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_pptp 0x1ceef65f nf_nat_pptp_hook_exp_gre +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_pptp 0x929a32a2 nf_nat_pptp_hook_expectfn +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_pptp 0x96157c55 nf_nat_pptp_hook_inbound +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_pptp 0xc1c18fe9 nf_nat_pptp_hook_outbound +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_sip 0x031da04f ct_sip_get_sdp_header +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_sip 0x08ed15b4 ct_sip_parse_numerical_param +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_sip 0x279c9c63 ct_sip_parse_address_param +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_sip 0x31fbd3ba nf_nat_sip_hooks +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_sip 0x4597d47f ct_sip_parse_header_uri +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_sip 0x48a8e6f7 ct_sip_get_header +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_sip 0xa78452dd ct_sip_parse_request +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_snmp 0xc2b5aaab nf_nat_snmp_hook +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_tftp 0x2560c72e nf_nat_tftp_hook +EXPORT_SYMBOL_GPL net/netfilter/nf_dup_netdev 0x3b4ce46f nf_dup_netdev_egress +EXPORT_SYMBOL_GPL net/netfilter/nf_dup_netdev 0x436ffef5 nf_fwd_netdev_egress +EXPORT_SYMBOL_GPL net/netfilter/nf_dup_netdev 0x484151a8 nft_fwd_dup_netdev_offload +EXPORT_SYMBOL_GPL net/netfilter/nf_flow_table 0x01c8e9d2 nf_flow_rule_route_ipv4 +EXPORT_SYMBOL_GPL net/netfilter/nf_flow_table 0x06c04e42 flow_offload_alloc +EXPORT_SYMBOL_GPL net/netfilter/nf_flow_table 0x113fade0 nf_flow_offload_ip_hook +EXPORT_SYMBOL_GPL net/netfilter/nf_flow_table 0x31e4ec72 nf_flow_offload_ipv6_hook +EXPORT_SYMBOL_GPL net/netfilter/nf_flow_table 0x6d5b797f nf_flow_rule_route_ipv6 +EXPORT_SYMBOL_GPL net/netfilter/nf_flow_table 0x767fc150 flow_offload_refresh +EXPORT_SYMBOL_GPL net/netfilter/nf_flow_table 0x7a03aae6 nf_flow_table_cleanup +EXPORT_SYMBOL_GPL net/netfilter/nf_flow_table 0x7e0d3327 flow_offload_route_init +EXPORT_SYMBOL_GPL net/netfilter/nf_flow_table 0x8600e94a nf_flow_table_offload_setup +EXPORT_SYMBOL_GPL net/netfilter/nf_flow_table 0x87fca088 flow_offload_add +EXPORT_SYMBOL_GPL net/netfilter/nf_flow_table 0xab7f8eec flow_offload_free +EXPORT_SYMBOL_GPL net/netfilter/nf_flow_table 0xad85593c flow_offload_lookup +EXPORT_SYMBOL_GPL net/netfilter/nf_flow_table 0xe1eb8481 nf_flow_table_init +EXPORT_SYMBOL_GPL net/netfilter/nf_flow_table 0xe6309f7f nf_flow_dnat_port +EXPORT_SYMBOL_GPL net/netfilter/nf_flow_table 0xe6763942 nf_flow_snat_port +EXPORT_SYMBOL_GPL net/netfilter/nf_flow_table 0xe7512ad5 nf_flow_table_free +EXPORT_SYMBOL_GPL net/netfilter/nf_flow_table 0xe8dcdf23 flow_offload_teardown +EXPORT_SYMBOL_GPL net/netfilter/nf_log_common 0x0449ee38 nf_log_dump_packet_common +EXPORT_SYMBOL_GPL net/netfilter/nf_log_common 0x3122e107 nf_log_dump_sk_uid_gid +EXPORT_SYMBOL_GPL net/netfilter/nf_log_common 0x3ab2c013 nf_log_l2packet +EXPORT_SYMBOL_GPL net/netfilter/nf_log_common 0x6810dcc7 nf_log_dump_tcp_header +EXPORT_SYMBOL_GPL net/netfilter/nf_log_common 0x692e7ae3 nf_log_dump_udp_header +EXPORT_SYMBOL_GPL net/netfilter/nf_log_common 0x76fdccf2 nf_log_dump_vlan +EXPORT_SYMBOL_GPL net/netfilter/nf_nat 0x0c246f61 nf_nat_icmpv6_reply_translation +EXPORT_SYMBOL_GPL net/netfilter/nf_nat 0x17e2886f nf_nat_inet_unregister_fn +EXPORT_SYMBOL_GPL net/netfilter/nf_nat 0x3bc17c49 nf_nat_masquerade_inet_register_notifiers +EXPORT_SYMBOL_GPL net/netfilter/nf_nat 0x43557014 nf_nat_inet_fn +EXPORT_SYMBOL_GPL net/netfilter/nf_nat 0x515b143c nf_nat_redirect_ipv6 +EXPORT_SYMBOL_GPL net/netfilter/nf_nat 0x5b1233b1 nf_nat_ipv4_register_fn +EXPORT_SYMBOL_GPL net/netfilter/nf_nat 0x88cfb92f nf_nat_redirect_ipv4 +EXPORT_SYMBOL_GPL net/netfilter/nf_nat 0x92bfe684 nf_nat_masquerade_ipv6 +EXPORT_SYMBOL_GPL net/netfilter/nf_nat 0xb9ca11b3 nf_nat_packet +EXPORT_SYMBOL_GPL net/netfilter/nf_nat 0xba99859b nf_nat_icmp_reply_translation +EXPORT_SYMBOL_GPL net/netfilter/nf_nat 0xbed68c22 nf_nat_ipv4_unregister_fn +EXPORT_SYMBOL_GPL net/netfilter/nf_nat 0xcaad5dec nf_nat_ipv6_unregister_fn +EXPORT_SYMBOL_GPL net/netfilter/nf_nat 0xd9c25654 nf_nat_masquerade_inet_unregister_notifiers +EXPORT_SYMBOL_GPL net/netfilter/nf_nat 0xe2843a40 nf_nat_ipv6_register_fn +EXPORT_SYMBOL_GPL net/netfilter/nf_nat 0xe5dd611f nf_nat_masquerade_ipv4 +EXPORT_SYMBOL_GPL net/netfilter/nf_nat 0xec0c3be1 nf_ct_nat_ext_add +EXPORT_SYMBOL_GPL net/netfilter/nf_nat 0xf9563969 nf_nat_inet_register_fn +EXPORT_SYMBOL_GPL net/netfilter/nf_nat 0xfaebb1bc nf_nat_alloc_null_binding +EXPORT_SYMBOL_GPL net/netfilter/nf_synproxy_core 0x1f099794 synproxy_init_timestamp_cookie +EXPORT_SYMBOL_GPL net/netfilter/nf_synproxy_core 0x28d613b9 synproxy_send_client_synack +EXPORT_SYMBOL_GPL net/netfilter/nf_synproxy_core 0x2f510f5a synproxy_parse_options +EXPORT_SYMBOL_GPL net/netfilter/nf_synproxy_core 0x305758d0 nf_synproxy_ipv6_fini +EXPORT_SYMBOL_GPL net/netfilter/nf_synproxy_core 0x3aec5ff4 synproxy_send_client_synack_ipv6 +EXPORT_SYMBOL_GPL net/netfilter/nf_synproxy_core 0x571458a8 synproxy_recv_client_ack_ipv6 +EXPORT_SYMBOL_GPL net/netfilter/nf_synproxy_core 0x7f823d19 nf_synproxy_ipv4_init +EXPORT_SYMBOL_GPL net/netfilter/nf_synproxy_core 0x856bf6e7 ipv6_synproxy_hook +EXPORT_SYMBOL_GPL net/netfilter/nf_synproxy_core 0x9a6acf4e nf_synproxy_ipv4_fini +EXPORT_SYMBOL_GPL net/netfilter/nf_synproxy_core 0x9edb5eed ipv4_synproxy_hook +EXPORT_SYMBOL_GPL net/netfilter/nf_synproxy_core 0xc0a658bb synproxy_recv_client_ack +EXPORT_SYMBOL_GPL net/netfilter/nf_synproxy_core 0xca9fc082 synproxy_net_id +EXPORT_SYMBOL_GPL net/netfilter/nf_synproxy_core 0xd5bfaa87 nf_synproxy_ipv6_init +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0x04c26b4c nft_chain_validate_hooks +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0x0b64265b nft_dump_register +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0x1be0a064 nft_set_lookup_global +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0x1e6b75a3 nft_parse_register +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0x213a3c32 nft_meta_get_init +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0x21cf780e nft_register_chain_type +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0x243774f5 nft_unregister_flowtable_type +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0x288dfe40 nft_chain_validate +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0x2fe8211e nf_tables_deactivate_set +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0x3251d762 nf_tables_trans_destroy_flush_work +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0x3d50da1a nft_meta_set_destroy +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0x3d774d4b nft_meta_get_dump +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0x41b71e65 nft_trace_enabled +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0x502eed3d nft_meta_policy +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0x5a11ada4 nft_meta_set_eval +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0x60ee3aca nft_data_init +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0x62132698 nft_meta_set_validate +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0x7692821f nft_data_release +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0x7706aeb3 nft_register_obj +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0x81499aa3 nft_meta_set_dump +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0x85430a76 nft_validate_register_load +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0x8dfab76e nft_register_expr +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0x8f74125e __nft_release_basechain +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0x96ce428c nft_set_elem_destroy +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0xa028cbfe nft_unregister_chain_type +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0xa3d088d5 nft_obj_lookup +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0xaa371a61 nft_flowtable_lookup +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0xac7f74b1 nft_unregister_expr +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0xb6eb12fc nft_register_flowtable_type +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0xbe811175 nft_chain_validate_dependency +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0xbe954916 nf_tables_destroy_set +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0xbf1b9236 nft_meta_get_eval +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0xc24e1f9d nft_do_chain +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0xd24b2cf4 nft_data_dump +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0xd5b4fe9d nft_meta_set_init +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0xd79c387f nf_tables_bind_set +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0xde57b5f5 nft_parse_u32_check +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0xe2091dec nft_unregister_obj +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0xe622e6ed nft_obj_notify +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0xe8285891 nft_validate_register_store +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0xe91021a8 nf_tables_deactivate_flowtable +EXPORT_SYMBOL_GPL net/netfilter/nfnetlink 0x56591e7e nfnetlink_has_listeners +EXPORT_SYMBOL_GPL net/netfilter/nfnetlink 0x5ce3b588 nfnl_lock +EXPORT_SYMBOL_GPL net/netfilter/nfnetlink 0x814e9f30 nfnetlink_subsys_unregister +EXPORT_SYMBOL_GPL net/netfilter/nfnetlink 0xb738c464 nfnetlink_set_err +EXPORT_SYMBOL_GPL net/netfilter/nfnetlink 0xc102ead6 nfnetlink_subsys_register +EXPORT_SYMBOL_GPL net/netfilter/nfnetlink 0xdb065657 nfnl_unlock +EXPORT_SYMBOL_GPL net/netfilter/nfnetlink 0xea247453 nfnetlink_unicast +EXPORT_SYMBOL_GPL net/netfilter/nfnetlink 0xfbf690d1 nfnetlink_send +EXPORT_SYMBOL_GPL net/netfilter/nfnetlink_acct 0x2f5e6fb0 nfnl_acct_update +EXPORT_SYMBOL_GPL net/netfilter/nfnetlink_acct 0xafd32eff nfnl_acct_overquota +EXPORT_SYMBOL_GPL net/netfilter/nfnetlink_acct 0xbecf5d14 nfnl_acct_put +EXPORT_SYMBOL_GPL net/netfilter/nfnetlink_acct 0xf4d92550 nfnl_acct_find_get +EXPORT_SYMBOL_GPL net/netfilter/nfnetlink_osf 0x35eff5e0 nf_osf_fingers +EXPORT_SYMBOL_GPL net/netfilter/nfnetlink_osf 0xa723caf8 nf_osf_match +EXPORT_SYMBOL_GPL net/netfilter/nfnetlink_osf 0xeab6e700 nf_osf_find +EXPORT_SYMBOL_GPL net/netfilter/nft_fib 0x16b0f847 nft_fib_store_result +EXPORT_SYMBOL_GPL net/netfilter/nft_fib 0x1f1e29c3 nft_fib_validate +EXPORT_SYMBOL_GPL net/netfilter/nft_fib 0xdfc0732d nft_fib_dump +EXPORT_SYMBOL_GPL net/netfilter/nft_fib 0xf5dcd2d5 nft_fib_init +EXPORT_SYMBOL_GPL net/netfilter/nft_reject 0x01c2972f nft_reject_dump +EXPORT_SYMBOL_GPL net/netfilter/nft_reject 0x105b07e2 nft_reject_policy +EXPORT_SYMBOL_GPL net/netfilter/nft_reject 0x1de558c1 nft_reject_icmpv6_code +EXPORT_SYMBOL_GPL net/netfilter/nft_reject 0x40baab23 nft_reject_init +EXPORT_SYMBOL_GPL net/netfilter/nft_reject 0xcff4a9fc nft_reject_validate +EXPORT_SYMBOL_GPL net/netfilter/nft_reject 0xe2c84666 nft_reject_icmp_code +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0x03686a82 xt_proto_init +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0x0369d192 xt_compat_target_to_user +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0x040a43d5 xt_compat_match_offset +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0x04e27719 xt_compat_flush_offsets +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0x129fe61a xt_compat_target_from_user +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0x24c8e482 xt_copy_counters_from_user +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0x2bc16751 xt_proto_fini +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0x33affc1b xt_table_unlock +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0x6dec3b79 xt_check_target +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0x7bce4603 xt_data_to_user +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0x7c462543 xt_check_match +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0x807d2b2c xt_recseq +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0x80ea6e72 xt_compat_target_offset +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0x823edea5 xt_compat_add_offset +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0x89b89d91 xt_target_to_user +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0x93514bd2 xt_request_find_match +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0x9c995c69 xt_percpu_counter_alloc +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0x9e3b15bd xt_match_to_user +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0xa4a263b1 xt_compat_match_from_user +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0xa7c94f1d xt_compat_lock +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0xbfacb837 xt_percpu_counter_free +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0xc26676eb xt_request_find_target +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0xc44e80c9 xt_unregister_table +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0xc7fae024 xt_compat_calc_jump +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 0xd5446baf xt_request_find_table_lock +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0xd8f1f022 xt_find_table_lock +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0xddf68fc6 xt_find_revision +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0xe353405c xt_hook_ops_alloc +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0xe3767892 xt_compat_match_to_user +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0xe600197e xt_replace_table +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0xf8dfc5fe xt_register_table +EXPORT_SYMBOL_GPL net/netfilter/xt_RATEEST 0x2e67c9e5 xt_rateest_put +EXPORT_SYMBOL_GPL net/netfilter/xt_RATEEST 0x5d494d02 xt_rateest_lookup +EXPORT_SYMBOL_GPL net/nfc/nci/nci_spi 0x41c27320 nci_spi_allocate_spi +EXPORT_SYMBOL_GPL net/nfc/nci/nci_spi 0x982983f0 nci_spi_read +EXPORT_SYMBOL_GPL net/nfc/nci/nci_spi 0xbcc3dc1c nci_spi_send +EXPORT_SYMBOL_GPL net/nfc/nci/nci_uart 0x43e54751 nci_uart_set_config +EXPORT_SYMBOL_GPL net/nfc/nci/nci_uart 0x58ed4137 nci_uart_register +EXPORT_SYMBOL_GPL net/nfc/nci/nci_uart 0x9625654d nci_uart_unregister +EXPORT_SYMBOL_GPL net/nsh/nsh 0x14b21135 nsh_push +EXPORT_SYMBOL_GPL net/nsh/nsh 0xd926b77f nsh_pop +EXPORT_SYMBOL_GPL net/openvswitch/openvswitch 0x1354d19c ovs_vport_ops_unregister +EXPORT_SYMBOL_GPL net/openvswitch/openvswitch 0x28157622 ovs_netdev_tunnel_destroy +EXPORT_SYMBOL_GPL net/openvswitch/openvswitch 0x2baa396e ovs_vport_alloc +EXPORT_SYMBOL_GPL net/openvswitch/openvswitch 0x77a45ea7 __ovs_vport_ops_register +EXPORT_SYMBOL_GPL net/openvswitch/openvswitch 0xa4563b2f ovs_netdev_link +EXPORT_SYMBOL_GPL net/openvswitch/openvswitch 0xb6a917a3 ovs_vport_free +EXPORT_SYMBOL_GPL net/psample/psample 0x3e8c5e7e psample_sample_packet +EXPORT_SYMBOL_GPL net/psample/psample 0x4324a998 psample_group_put +EXPORT_SYMBOL_GPL net/psample/psample 0x44cee692 psample_group_get +EXPORT_SYMBOL_GPL net/psample/psample 0x709ea437 psample_group_take +EXPORT_SYMBOL_GPL net/qrtr/ns 0x636a2832 qrtr_ns_init +EXPORT_SYMBOL_GPL net/qrtr/ns 0x8d25501f qrtr_ns_remove +EXPORT_SYMBOL_GPL net/qrtr/qrtr 0x2319cafc qrtr_endpoint_unregister +EXPORT_SYMBOL_GPL net/qrtr/qrtr 0x5956d8b3 qrtr_endpoint_register +EXPORT_SYMBOL_GPL net/qrtr/qrtr 0x754e639a qrtr_endpoint_post +EXPORT_SYMBOL_GPL net/rds/rds 0x00a467af rds_wq +EXPORT_SYMBOL_GPL net/rds/rds 0x021e1082 rds_trans_unregister +EXPORT_SYMBOL_GPL net/rds/rds 0x09385e7d rds_inc_init +EXPORT_SYMBOL_GPL net/rds/rds 0x0c3992f6 rds_message_put +EXPORT_SYMBOL_GPL net/rds/rds 0x1e57e4c0 rds_send_path_reset +EXPORT_SYMBOL_GPL net/rds/rds 0x20943a51 rds_trans_register +EXPORT_SYMBOL_GPL net/rds/rds 0x2967db3e rds_for_each_conn_info +EXPORT_SYMBOL_GPL net/rds/rds 0x2b0d543c rds_message_add_extension +EXPORT_SYMBOL_GPL net/rds/rds 0x36087aa4 rds_stats +EXPORT_SYMBOL_GPL net/rds/rds 0x3a7fab35 rds_conn_destroy +EXPORT_SYMBOL_GPL net/rds/rds 0x45a4781e rds_addr_cmp +EXPORT_SYMBOL_GPL net/rds/rds 0x4714280e rds_conn_create_outgoing +EXPORT_SYMBOL_GPL net/rds/rds 0x4c4fedb0 rds_conn_path_connect_if_down +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 0x5bda8219 rds_inc_path_init +EXPORT_SYMBOL_GPL net/rds/rds 0x6d64fe68 rds_message_addref +EXPORT_SYMBOL_GPL net/rds/rds 0x704eaa64 rds_send_drop_acked +EXPORT_SYMBOL_GPL net/rds/rds 0x78b85557 rds_inc_put +EXPORT_SYMBOL_GPL net/rds/rds 0x7b399e66 rds_page_remainder_alloc +EXPORT_SYMBOL_GPL net/rds/rds 0x85e4e520 rds_stats_info_copy +EXPORT_SYMBOL_GPL net/rds/rds 0x948978bd rds_conn_create +EXPORT_SYMBOL_GPL net/rds/rds 0xa7b9f081 rds_atomic_send_complete +EXPORT_SYMBOL_GPL net/rds/rds 0xb0d8952d rds_info_register_func +EXPORT_SYMBOL_GPL net/rds/rds 0xb3e43e85 rds_send_path_drop_acked +EXPORT_SYMBOL_GPL net/rds/rds 0xb9bd6f31 rds_message_unmapped +EXPORT_SYMBOL_GPL net/rds/rds 0xc10c5119 rds_conn_connect_if_down +EXPORT_SYMBOL_GPL net/rds/rds 0xc2dab779 rds_info_copy +EXPORT_SYMBOL_GPL net/rds/rds 0xccf86077 rds_send_xmit +EXPORT_SYMBOL_GPL net/rds/rds 0xd52d5bde rds_rdma_send_complete +EXPORT_SYMBOL_GPL net/rds/rds 0xe040a677 rds_recv_incoming +EXPORT_SYMBOL_GPL net/rds/rds 0xf2d54c93 rds_conn_drop +EXPORT_SYMBOL_GPL net/rds/rds 0xf56ef5ef rds_connect_path_complete +EXPORT_SYMBOL_GPL net/rds/rds 0xf774a7d4 rds_send_ping +EXPORT_SYMBOL_GPL net/rds/rds 0xf8c82b14 rds_connect_complete +EXPORT_SYMBOL_GPL net/rds/rds 0xf924f374 rds_conn_path_drop +EXPORT_SYMBOL_GPL net/rds/rds 0xfd22dd56 rds_cong_map_updated +EXPORT_SYMBOL_GPL net/rds/rds 0xff8c6f55 rds_info_deregister_func +EXPORT_SYMBOL_GPL net/sched/sch_pie 0x07695a8c pie_process_dequeue +EXPORT_SYMBOL_GPL net/sched/sch_pie 0x6ce9b467 pie_calculate_probability +EXPORT_SYMBOL_GPL net/sched/sch_pie 0x8e906b21 pie_drop_early +EXPORT_SYMBOL_GPL net/sched/sch_taprio 0x5fc3c6ed taprio_offload_free +EXPORT_SYMBOL_GPL net/sched/sch_taprio 0xa7f08102 taprio_offload_get +EXPORT_SYMBOL_GPL net/sctp/sctp 0x27d4fa66 sctp_transport_lookup_process +EXPORT_SYMBOL_GPL net/sctp/sctp 0xad4fb5b8 sctp_get_sctp_info +EXPORT_SYMBOL_GPL net/sctp/sctp 0xd67d1ef2 sctp_for_each_transport +EXPORT_SYMBOL_GPL net/sctp/sctp 0xf2161f44 sctp_for_each_endpoint +EXPORT_SYMBOL_GPL net/smc/smc 0x05a4fbc1 smcd_unregister_dev +EXPORT_SYMBOL_GPL net/smc/smc 0x80204fc2 smc_proto6 +EXPORT_SYMBOL_GPL net/smc/smc 0x847b8229 smcd_alloc_dev +EXPORT_SYMBOL_GPL net/smc/smc 0x890a72e9 smc_unhash_sk +EXPORT_SYMBOL_GPL net/smc/smc 0x896a53b4 smc_hash_sk +EXPORT_SYMBOL_GPL net/smc/smc 0xb08ac04b smcd_handle_event +EXPORT_SYMBOL_GPL net/smc/smc 0xbe96ccc2 smc_proto +EXPORT_SYMBOL_GPL net/smc/smc 0xc8f4551e smcd_handle_irq +EXPORT_SYMBOL_GPL net/smc/smc 0xe7eda90b smcd_free_dev +EXPORT_SYMBOL_GPL net/smc/smc 0xfbc2d513 smcd_register_dev +EXPORT_SYMBOL_GPL net/sunrpc/auth_gss/auth_rpcgss 0x0b2705c1 svcauth_gss_flavor +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 0xa5d26dee svcauth_gss_register_pseudoflavor +EXPORT_SYMBOL_GPL net/sunrpc/auth_gss/auth_rpcgss 0xbccb4617 gss_mech_register +EXPORT_SYMBOL_GPL net/sunrpc/auth_gss/auth_rpcgss 0xc3a32328 gss_mech_unregister +EXPORT_SYMBOL_GPL net/sunrpc/auth_gss/auth_rpcgss 0xd7673035 g_verify_token_header +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x0141d7bd rpc_pton +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x01e989bc svc_proc_unregister +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x02f72229 xdr_init_decode +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x04a2712e rpc_put_task_async +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x04aead07 rpc_add_pipe_dir_object +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x05d682bf svcauth_unix_set_client +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 0x06f6b8d3 sunrpc_cache_pipe_upcall +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x07bac532 svc_generic_rpcbind_set +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x07cfd629 xprt_reserve_xprt +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x0a9f7b69 rpc_localaddr +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x0bdf71ea svc_fill_symlink_pathname +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x0dc29ab3 __rpc_wait_for_completion_task +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x0fccf3da xdr_process_buf +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x10e650c3 rpc_max_payload +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x121b0ca6 sunrpc_cache_pipe_upcall_timeout +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x138c82df svc_alien_sock +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x13b51a80 put_rpccred +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x1589d44e rpc_restart_call +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x175ee401 xprt_lookup_rqst +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x194bb15c rpc_unlink +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x19f69427 rpc_destroy_pipe_data +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x1a59dd4f rpc_call_sync +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x1afb7e4b csum_partial_copy_to_xdr +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x1c342b19 rpc_clnt_add_xprt +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x1cac0b81 sunrpc_cache_unregister_pipefs +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x1cf99276 svc_shutdown_net +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x1db2e5d8 xdr_stream_decode_string_dup +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x1e119a79 rpcauth_get_pseudoflavor +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x1e8564d5 xdr_encode_array2 +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x1f2a9970 rpc_ntop +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x220b734e rpc_clnt_xprt_switch_put +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x229f6759 xdr_buf_from_iov +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x2339eaa1 rpc_wake_up_next +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x259589e6 rpc_task_timeout +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x2631a6a6 svc_set_num_threads +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x263a860b xprt_force_disconnect +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x26599647 rpcb_getport_async +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x276f254f svc_xprt_init +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x2810521a xdr_reserve_space +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x2919b156 xdr_decode_string_inplace +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x29522efc rpcauth_init_cred +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x29b1b756 sunrpc_init_cache_detail +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x2bcf9e17 rpc_put_task +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x2cc7bbc0 xprt_setup_backchannel +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x2ea66b60 unix_domain_find +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x2f154aa7 rpc_clnt_iterate_for_each_xprt +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x319733ec rpc_proc_unregister +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x31a89d59 rpc_debug +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x326e80bd xdr_inline_decode +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x32a9f236 xdr_write_pages +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x331726d2 svc_seq_show +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x334f7a4c svc_destroy +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x33ceacc7 rpc_count_iostats_metrics +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x33e5a2de bc_svc_process +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x34d184de rpc_wake_up_status +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x356a45a1 svc_find_xprt +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x381dabf3 cache_destroy_net +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x382278dd cache_purge +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x3872234e rpc_free +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x387e1639 rpc_pipefs_notifier_register +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x38a09540 rpc_sleep_on +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x38ca2f91 rpc_set_connect_timeout +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x391b8c7e xprt_get +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x39d8914e svc_set_num_threads_sync +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x3dc922d8 rpc_clnt_test_and_add_xprt +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x3e3ec50f xprt_alloc_slot +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x3e687ddf rpc_num_bc_slots +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x3f9a2b0b rpcauth_get_gssinfo +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x3fb583e5 xdr_stream_decode_string +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x3fd00d66 svc_set_client +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x40baba01 xprt_release_xprt +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x42d222ae xdr_set_scratch_buffer +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x435c8a6c svc_rqst_alloc +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x438bd6d2 xprt_reconnect_delay +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x453efa54 svc_pool_map +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x474e6ea6 rpc_task_release_transport +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x479ad824 xprt_alloc +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x47d39dd5 rpc_init_pipe_dir_head +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x4935065d svc_exit_thread +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x4afedab1 xprtiod_workqueue +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x4d41c19f rpcauth_lookup_credcache +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x4dac77f0 xdr_encode_netobj +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x4e59244c auth_domain_put +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x4e8f6ca7 sunrpc_net_id +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x4fa68676 xdr_stream_decode_opaque_dup +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x50484e9f rpc_shutdown_client +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x5184ed38 rpc_put_sb_net +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x5311f052 svc_rpcb_setup +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x53445f68 nlm_debug +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x54b3f0bd xprt_adjust_cwnd +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x54e447ee rpc_call_null +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x5513c79e svc_sock_update_bufs +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x5777537c rpc_run_task +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x59dd68d9 read_bytes_from_xdr_buf +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x5a3d7c06 xprt_wait_for_buffer_space +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x5a45ba31 svc_auth_unregister +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x5bc27911 svc_proc_register +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x5c91c9fc cache_create_net +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x5d00d958 xdr_inline_pages +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x5d2df98f rpc_peeraddr +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x5ebaa6a3 xprt_free +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x5f35000c rpcauth_create +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x5f7de460 svc_unreg_xprt_class +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x6070d07e rpc_pipe_generic_upcall +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x612156e9 xdr_read_pages +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x6248ad52 cache_check +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x6316ccf0 rpc_sleep_on_priority_timeout +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x6393e595 rpc_uaddr2sockaddr +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x65360044 xprt_wake_pending_tasks +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x66ed2439 rpc_destroy_wait_queue +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x6978bce2 xprt_release_rqst_cong +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x697cf4b7 svc_auth_register +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x6a60459a xprt_free_slot +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x6a87cf45 rpc_clnt_setup_test_and_add_xprt +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x6ab2bb91 xprt_unpin_rqst +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x6b561251 svc_create +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x6bd7d489 rpc_restart_call_prepare +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x6c8b8cd7 rpc_count_iostats +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x6f66dad9 rpc_call_start +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x6f9a6ea7 xdr_buf_trim +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x70c03b95 cache_seq_stop_rcu +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x71bc40e3 rpc_wake_up +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x71df2323 xdr_terminate_string +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x71fa908a cache_flush +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x72e2d3d8 cache_seq_next_rcu +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x73a592f8 svc_drop +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x744d94fb sunrpc_cache_update +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x74e21c7a rpc_remove_pipe_dir_object +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x75babf3a cache_unregister_net +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x75bd70ea xprt_update_rtt +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x7675f5cf rpc_mkpipe_dentry +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x76eea3f2 rpc_delay +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x770be9f5 svc_addsock +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x77c148f8 write_bytes_to_xdr_buf +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x79cb8520 svc_rqst_free +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x7ad587b1 svc_prepare_thread +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x7b710f11 rpc_find_or_alloc_pipe_dir_object +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x7c0b9476 rpc_wake_up_queued_task +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x7d79aebe xprt_destroy_backchannel +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x7de53067 rpc_init_rtt +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x7f1cb2ed rpc_killall_tasks +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x7f3d1b2b xprt_wait_for_reply_request_def +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x80412f47 rpc_max_bc_payload +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x810bf417 svc_generic_init_request +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x819d87f5 auth_domain_find +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x82041ab2 rpc_sleep_on_timeout +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x82085de7 sunrpc_cache_lookup_rcu +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x826c59ab rpc_create +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x83b8e68d rpc_setbufsize +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x857f28df xdr_commit_encode +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x85e4f636 rpc_clnt_xprt_switch_has_addr +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x86a5f535 xprt_put +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x8771670e rpc_switch_client_transport +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x87bf8e4d rpc_init_pipe_dir_object +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x8837c8e4 rpcauth_stringify_acceptor +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x8886c8e4 rpc_alloc_iostats +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x88a617a1 xdr_buf_subsegment +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x890ac803 rpc_exit +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x8b066bf4 rpc_queue_upcall +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x8ce4a20d gssd_running +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x8dad3f7a svc_rpcbind_set_version +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x8efdb542 rpc_clone_client_set_auth +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x906df079 xprt_pin_rqst +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x91bec33c rpcauth_unwrap_resp_decode +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x92a70e16 xdr_decode_array2 +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x948fe7db sunrpc_cache_register_pipefs +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x9544f826 rpcauth_register +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x96594df2 rpc_clnt_swap_activate +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x9670b5a1 rpc_free_iostats +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x99aee353 rpc_init_priority_wait_queue +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x9b3fa9fe svc_print_addr +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x9d19f049 xprt_request_get_cong +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x9d8a565c xdr_init_encode +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x9fb745c3 rpc_net_ns +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xa06d2a49 xdr_stream_pos +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xa13acdb8 svc_pool_map_put +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xa24bd319 svc_xprt_enqueue +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xa63c5816 svc_process +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xa747ec56 svc_bind +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xa7655b7d xdr_decode_word +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xa79d5f12 svc_max_payload +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xa7f503c2 xprt_release_xprt_cong +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xa81a0be7 rpc_clnt_swap_deactivate +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xa9899a17 cache_register_net +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xaa9c8782 svc_xprt_names +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xabbb3330 rpc_clnt_xprt_switch_add_xprt +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xabd9d650 svc_reg_xprt_class +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xac4a23dc xdr_stream_decode_opaque +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xadac7715 svc_fill_write_vector +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xade81cc8 rpcauth_init_credcache +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xaf5bf6ef nfs_debug +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xb08a8320 svc_encode_read_payload +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xb1de68d7 xprt_complete_rqst +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xb296e5dc xdr_init_decode_pages +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xb2b1a28b xprt_disconnect_done +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xb312d0c4 svc_pool_map_get +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xb3853f9c svc_return_autherr +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xb45777fd svc_reserve +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xb51a3724 rpc_pipefs_notifier_unregister +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xb547b0c2 xprt_reconnect_backoff +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xb7b07cbe svc_create_pooled +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xb7ee8e40 svc_close_xprt +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xbbaf5fe0 rpc_bind_new_program +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xbe676352 xprt_register_transport +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xbf5c23bd xdr_shift_buf +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xbf9d1b96 nfsd_debug +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xc12435e3 rpc_calc_rto +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xc7a9a093 rpc_release_client +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xc827aa74 rpc_proc_register +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xc8e96dea qword_addhex +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xcab65cc5 xprt_reserve_xprt_cong +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xcd0c1037 xprt_wait_for_reply_request_rtt +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xce678a59 xdr_decode_netobj +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xcee467f3 xprt_load_transport +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xd0907e83 rpcauth_destroy_credcache +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xd177176b xprt_unregister_transport +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xd2d702e8 rpc_mkpipe_data +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xd2e44a7a rpc_sleep_on_priority +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xd35742c3 rpc_wake_up_first +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xd3918b27 rpc_peeraddr2str +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xd3f070a4 xdr_enter_page +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xd4c8cc6b rpc_prepare_reply_pages +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xd4ca4fff svc_rpcb_cleanup +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xd4d3bbbb svc_xprt_put +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xd692e10a svc_age_temp_xprts_now +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xd92ace70 sunrpc_destroy_cache_detail +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xdc385969 auth_domain_lookup +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xdd65971f svc_create_xprt +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xde0991b5 rpc_force_rebind +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xe18557dd cache_seq_start_rcu +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xe2065b96 svc_xprt_copy_addrs +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xe3c4cdc8 rpc_clnt_show_stats +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xe5386f39 svc_wake_up +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xe5919cb1 xdr_encode_opaque +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xe60c097d _copy_from_pages +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xe713ca81 xprt_write_space +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xe895766e rpc_call_async +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xe97f4ce5 qword_get +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xeb239f4e svc_recv +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xebeaaea3 svc_xprt_do_enqueue +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xedcf6be4 qword_add +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xeeacab69 rpc_update_rtt +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xef0b5d4a rpc_d_lookup_sb +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xef6ac037 rpcauth_wrap_req_encode +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xefb35163 rpc_malloc +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xf0b7775d rpc_init_wait_queue +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xf146bac9 rpcauth_lookupcred +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xf3961983 svc_authenticate +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xf60dcafb xdr_encode_word +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xf7676cc4 rpc_clone_client +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xfaa70bc0 rpc_machine_cred +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xfbc6c831 svcauth_unix_purge +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xfe4a2c10 rpc_get_sb_net +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xfefe7432 sunrpc_cache_unhash +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xffc2108b rpcauth_unregister +EXPORT_SYMBOL_GPL net/tls/tls 0x161bee8f tls_device_sk_destruct +EXPORT_SYMBOL_GPL net/tls/tls 0x7d1a6c2f tls_encrypt_skb +EXPORT_SYMBOL_GPL net/tls/tls 0x9f413754 tls_validate_xmit_skb +EXPORT_SYMBOL_GPL net/tls/tls 0xf51c4713 tls_offload_tx_resync_request +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 0x0dd2029b virtio_transport_get_credit +EXPORT_SYMBOL_GPL net/vmw_vsock/vmw_vsock_virtio_transport_common 0x1837cc8f virtio_transport_notify_recv_pre_dequeue +EXPORT_SYMBOL_GPL net/vmw_vsock/vmw_vsock_virtio_transport_common 0x1a1358b8 virtio_transport_recv_pkt +EXPORT_SYMBOL_GPL net/vmw_vsock/vmw_vsock_virtio_transport_common 0x1a2ae586 virtio_transport_do_socket_init +EXPORT_SYMBOL_GPL net/vmw_vsock/vmw_vsock_virtio_transport_common 0x2c04a631 virtio_transport_stream_dequeue +EXPORT_SYMBOL_GPL net/vmw_vsock/vmw_vsock_virtio_transport_common 0x2cbfc11d virtio_transport_dgram_dequeue +EXPORT_SYMBOL_GPL net/vmw_vsock/vmw_vsock_virtio_transport_common 0x38168d9d virtio_transport_notify_send_pre_block +EXPORT_SYMBOL_GPL net/vmw_vsock/vmw_vsock_virtio_transport_common 0x4e735487 virtio_transport_connect +EXPORT_SYMBOL_GPL net/vmw_vsock/vmw_vsock_virtio_transport_common 0x4f4d1f3b virtio_transport_free_pkt +EXPORT_SYMBOL_GPL net/vmw_vsock/vmw_vsock_virtio_transport_common 0x6ee95f78 virtio_transport_stream_enqueue +EXPORT_SYMBOL_GPL net/vmw_vsock/vmw_vsock_virtio_transport_common 0x7a15fa6b virtio_transport_notify_send_init +EXPORT_SYMBOL_GPL net/vmw_vsock/vmw_vsock_virtio_transport_common 0x7d0f5304 virtio_transport_stream_has_space +EXPORT_SYMBOL_GPL net/vmw_vsock/vmw_vsock_virtio_transport_common 0x8066a599 virtio_transport_inc_tx_pkt +EXPORT_SYMBOL_GPL net/vmw_vsock/vmw_vsock_virtio_transport_common 0x88aa1d20 virtio_transport_release +EXPORT_SYMBOL_GPL net/vmw_vsock/vmw_vsock_virtio_transport_common 0x98018123 virtio_transport_stream_has_data +EXPORT_SYMBOL_GPL net/vmw_vsock/vmw_vsock_virtio_transport_common 0x9ca4dbbc virtio_transport_put_credit +EXPORT_SYMBOL_GPL net/vmw_vsock/vmw_vsock_virtio_transport_common 0x9eda94b7 virtio_transport_shutdown +EXPORT_SYMBOL_GPL net/vmw_vsock/vmw_vsock_virtio_transport_common 0xae320469 virtio_transport_notify_poll_in +EXPORT_SYMBOL_GPL net/vmw_vsock/vmw_vsock_virtio_transport_common 0xafb858eb virtio_transport_notify_recv_init +EXPORT_SYMBOL_GPL net/vmw_vsock/vmw_vsock_virtio_transport_common 0xafdd0e3e virtio_transport_dgram_enqueue +EXPORT_SYMBOL_GPL net/vmw_vsock/vmw_vsock_virtio_transport_common 0xb63d379a virtio_transport_notify_recv_pre_block +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 0xc1312c29 virtio_transport_stream_is_active +EXPORT_SYMBOL_GPL net/vmw_vsock/vmw_vsock_virtio_transport_common 0xc98c8bb4 virtio_transport_stream_rcvhiwat +EXPORT_SYMBOL_GPL net/vmw_vsock/vmw_vsock_virtio_transport_common 0xcb9e8618 virtio_transport_notify_buffer_size +EXPORT_SYMBOL_GPL net/vmw_vsock/vmw_vsock_virtio_transport_common 0xcd86b6bc virtio_transport_notify_poll_out +EXPORT_SYMBOL_GPL net/vmw_vsock/vmw_vsock_virtio_transport_common 0xd8d3569f virtio_transport_notify_recv_post_dequeue +EXPORT_SYMBOL_GPL net/vmw_vsock/vmw_vsock_virtio_transport_common 0xd9dd450d virtio_transport_destruct +EXPORT_SYMBOL_GPL net/vmw_vsock/vmw_vsock_virtio_transport_common 0xdc5a1f50 virtio_transport_notify_send_pre_enqueue +EXPORT_SYMBOL_GPL net/vmw_vsock/vmw_vsock_virtio_transport_common 0xe336f965 virtio_transport_deliver_tap_pkt +EXPORT_SYMBOL_GPL net/vmw_vsock/vmw_vsock_virtio_transport_common 0xf0f84b8e virtio_transport_dgram_bind +EXPORT_SYMBOL_GPL net/vmw_vsock/vmw_vsock_virtio_transport_common 0xf11780cc virtio_transport_notify_send_post_enqueue +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0x0dc89779 vsock_for_each_connected_socket +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0x2663cb64 vsock_addr_equals_addr +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0x284e07d8 vsock_bind_table +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0x33ae636e vsock_remove_pending +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0x3db94112 vsock_core_get_transport +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0x427cb4f3 vsock_deliver_tap +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0x45efbf8c vsock_stream_has_space +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0x4cf8e590 vsock_create_connected +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0x59d943c8 vsock_addr_cast +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0x5f287a79 vsock_add_pending +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0x6168e59d vsock_stream_has_data +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0x73879664 vsock_addr_init +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0x751ff010 vsock_addr_unbind +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0x90aa8549 vsock_find_cid +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0x92f138a3 vsock_core_unregister +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0x9bb6fd09 vsock_connected_table +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0x9fd08d44 vsock_find_bound_socket +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0xa3adde9b vsock_enqueue_accept +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0xb611bf1b vsock_assign_transport +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0xbd0f699d vsock_addr_bound +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0xbd23d672 vsock_remove_tap +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0xc0dc8e04 vsock_insert_connected +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0xc30f8c1d vsock_remove_connected +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0xc92f7f50 vsock_table_lock +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0xd7f79fc3 vsock_remove_sock +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0xd95ac116 vsock_addr_validate +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0xe3cd199b vsock_add_tap +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0xe7f17347 vsock_find_connected_socket +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0xe8a12c02 vsock_remove_bound +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0xf49dc14a vsock_core_register +EXPORT_SYMBOL_GPL net/wimax/wimax 0x34084330 wimax_msg_len +EXPORT_SYMBOL_GPL net/wimax/wimax 0x41cc85a5 wimax_state_get +EXPORT_SYMBOL_GPL net/wimax/wimax 0x42854e0c wimax_msg_alloc +EXPORT_SYMBOL_GPL net/wimax/wimax 0x47580608 wimax_dev_rm +EXPORT_SYMBOL_GPL net/wimax/wimax 0x49918b9f wimax_state_change +EXPORT_SYMBOL_GPL net/wimax/wimax 0x4eb509fb wimax_report_rfkill_sw +EXPORT_SYMBOL_GPL net/wimax/wimax 0x5a9f075b wimax_dev_add +EXPORT_SYMBOL_GPL net/wimax/wimax 0x700093df wimax_report_rfkill_hw +EXPORT_SYMBOL_GPL net/wimax/wimax 0x976aac3d wimax_msg_data_len +EXPORT_SYMBOL_GPL net/wimax/wimax 0x9ab0cfec wimax_msg_data +EXPORT_SYMBOL_GPL net/wimax/wimax 0xe15b13fc wimax_msg +EXPORT_SYMBOL_GPL net/wimax/wimax 0xe3b65853 wimax_msg_send +EXPORT_SYMBOL_GPL net/wimax/wimax 0xf97c90cd wimax_dev_init +EXPORT_SYMBOL_GPL net/wireless/cfg80211 0x07e65664 cfg80211_pmsr_report +EXPORT_SYMBOL_GPL net/wireless/cfg80211 0x2cddd127 cfg80211_wext_siwrts +EXPORT_SYMBOL_GPL net/wireless/cfg80211 0x4773851b cfg80211_vendor_cmd_reply +EXPORT_SYMBOL_GPL net/wireless/cfg80211 0x604190a1 cfg80211_pmsr_complete +EXPORT_SYMBOL_GPL net/wireless/cfg80211 0x647e211b cfg80211_vendor_cmd_get_sender +EXPORT_SYMBOL_GPL net/wireless/cfg80211 0x784b7188 cfg80211_shutdown_all_interfaces +EXPORT_SYMBOL_GPL net/wireless/cfg80211 0x7b4f7902 cfg80211_wext_giwfrag +EXPORT_SYMBOL_GPL net/wireless/cfg80211 0x7e1d9029 cfg80211_wext_siwmode +EXPORT_SYMBOL_GPL net/wireless/cfg80211 0x94ed1d9a cfg80211_wext_giwrts +EXPORT_SYMBOL_GPL net/wireless/cfg80211 0xab8e9860 cfg80211_wext_giwretry +EXPORT_SYMBOL_GPL net/wireless/cfg80211 0xab9895ab cfg80211_wext_giwrange +EXPORT_SYMBOL_GPL net/wireless/cfg80211 0xc323566d cfg80211_wext_giwmode +EXPORT_SYMBOL_GPL net/wireless/cfg80211 0xce2786ff cfg80211_wext_siwfrag +EXPORT_SYMBOL_GPL net/wireless/cfg80211 0xdf3192ff cfg80211_wext_siwscan +EXPORT_SYMBOL_GPL net/wireless/cfg80211 0xfb8f63b9 cfg80211_wext_giwname +EXPORT_SYMBOL_GPL net/wireless/cfg80211 0xfbaf62f3 cfg80211_wext_giwscan +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 0x07483c84 ipcomp_input +EXPORT_SYMBOL_GPL net/xfrm/xfrm_ipcomp 0x9473832d ipcomp_init_state +EXPORT_SYMBOL_GPL net/xfrm/xfrm_ipcomp 0xa30ecd42 ipcomp_output +EXPORT_SYMBOL_GPL net/xfrm/xfrm_ipcomp 0xa733f487 ipcomp_destroy +EXPORT_SYMBOL_GPL sound/ac97_bus 0x9bb36404 snd_ac97_reset +EXPORT_SYMBOL_GPL sound/core/seq/snd-seq 0xadb51cff snd_seq_client_ioctl_unlock +EXPORT_SYMBOL_GPL sound/core/seq/snd-seq 0xe50413d7 snd_seq_client_ioctl_lock +EXPORT_SYMBOL_GPL sound/core/snd 0x0d1de6e1 snd_ctl_sync_vmaster +EXPORT_SYMBOL_GPL sound/core/snd 0x1b1cf0b2 snd_ctl_activate_id +EXPORT_SYMBOL_GPL sound/core/snd 0x4719c0fb snd_card_rw_proc_new +EXPORT_SYMBOL_GPL sound/core/snd 0x56dc9747 snd_device_disconnect +EXPORT_SYMBOL_GPL sound/core/snd 0x6006d805 snd_ctl_add_vmaster_hook +EXPORT_SYMBOL_GPL sound/core/snd 0x6b6e38a6 snd_device_get_state +EXPORT_SYMBOL_GPL sound/core/snd 0x84a0a88a snd_device_initialize +EXPORT_SYMBOL_GPL sound/core/snd 0x8ae9b68c snd_card_add_dev_attr +EXPORT_SYMBOL_GPL sound/core/snd 0x9d921fd3 snd_ctl_apply_vmaster_slaves +EXPORT_SYMBOL_GPL sound/core/snd 0xb468c440 snd_ctl_get_preferred_subdevice +EXPORT_SYMBOL_GPL sound/core/snd 0xe0eb9f77 snd_card_disconnect_sync +EXPORT_SYMBOL_GPL sound/core/snd 0xfa4aee57 snd_card_ref +EXPORT_SYMBOL_GPL sound/core/snd-compress 0x0c7402cd snd_compress_deregister +EXPORT_SYMBOL_GPL sound/core/snd-compress 0xc3c0d5cf snd_compress_register +EXPORT_SYMBOL_GPL sound/core/snd-compress 0xd8fe171f snd_compress_new +EXPORT_SYMBOL_GPL sound/core/snd-compress 0xede2c174 snd_compr_stop_error +EXPORT_SYMBOL_GPL sound/core/snd-pcm 0x04787fc7 snd_pcm_stream_unlock_irq +EXPORT_SYMBOL_GPL sound/core/snd-pcm 0x04e1b99f snd_pcm_std_chmaps +EXPORT_SYMBOL_GPL sound/core/snd-pcm 0x09e913c1 snd_pcm_alt_chmaps +EXPORT_SYMBOL_GPL sound/core/snd-pcm 0x54d2f9b1 _snd_pcm_stream_lock_irqsave +EXPORT_SYMBOL_GPL sound/core/snd-pcm 0x689e85cf snd_pcm_stream_lock_irq +EXPORT_SYMBOL_GPL sound/core/snd-pcm 0x6a10fe17 snd_pcm_stream_lock +EXPORT_SYMBOL_GPL sound/core/snd-pcm 0x8c73b072 snd_pcm_lib_default_mmap +EXPORT_SYMBOL_GPL sound/core/snd-pcm 0x8d864069 snd_pcm_rate_range_to_bits +EXPORT_SYMBOL_GPL sound/core/snd-pcm 0x97c3084c snd_pcm_stop_xrun +EXPORT_SYMBOL_GPL sound/core/snd-pcm 0xa286a234 snd_pcm_format_name +EXPORT_SYMBOL_GPL sound/core/snd-pcm 0xab8bc1a2 snd_pcm_rate_mask_intersect +EXPORT_SYMBOL_GPL sound/core/snd-pcm 0xb5c8bcec snd_pcm_hw_constraint_eld +EXPORT_SYMBOL_GPL sound/core/snd-pcm 0xbf780c36 snd_pcm_stream_unlock_irqrestore +EXPORT_SYMBOL_GPL sound/core/snd-pcm 0xc012c539 snd_pcm_stream_unlock +EXPORT_SYMBOL_GPL sound/core/snd-pcm 0xec194a35 snd_pcm_add_chmap_ctls +EXPORT_SYMBOL_GPL sound/core/snd-pcm-dmaengine 0x054db6c5 snd_dmaengine_pcm_trigger +EXPORT_SYMBOL_GPL sound/core/snd-pcm-dmaengine 0x0ca7f903 snd_hwparams_to_dma_slave_config +EXPORT_SYMBOL_GPL sound/core/snd-pcm-dmaengine 0x227396ac snd_dmaengine_pcm_set_config_from_dai_data +EXPORT_SYMBOL_GPL sound/core/snd-pcm-dmaengine 0x604df938 snd_dmaengine_pcm_refine_runtime_hwparams +EXPORT_SYMBOL_GPL sound/core/snd-pcm-dmaengine 0x6e01c742 snd_dmaengine_pcm_pointer_no_residue +EXPORT_SYMBOL_GPL sound/core/snd-pcm-dmaengine 0x7664df3e snd_dmaengine_pcm_open +EXPORT_SYMBOL_GPL sound/core/snd-pcm-dmaengine 0xa2991d5a snd_dmaengine_pcm_close_release_chan +EXPORT_SYMBOL_GPL sound/core/snd-pcm-dmaengine 0xb1289b0e snd_dmaengine_pcm_pointer +EXPORT_SYMBOL_GPL sound/core/snd-pcm-dmaengine 0xca2637ef snd_dmaengine_pcm_open_request_chan +EXPORT_SYMBOL_GPL sound/core/snd-pcm-dmaengine 0xeb5dac61 snd_dmaengine_pcm_get_chan +EXPORT_SYMBOL_GPL sound/core/snd-pcm-dmaengine 0xec85d15c snd_dmaengine_pcm_close +EXPORT_SYMBOL_GPL sound/core/snd-pcm-dmaengine 0xf1c23946 snd_dmaengine_pcm_request_channel +EXPORT_SYMBOL_GPL sound/core/snd-seq-device 0x7dcf9518 snd_seq_driver_unregister +EXPORT_SYMBOL_GPL sound/core/snd-seq-device 0xd9f34852 __snd_seq_driver_register +EXPORT_SYMBOL_GPL sound/firewire/snd-firewire-lib 0x1a2d6f61 amdtp_am824_set_parameters +EXPORT_SYMBOL_GPL sound/firewire/snd-firewire-lib 0x2da92f25 amdtp_domain_start +EXPORT_SYMBOL_GPL sound/firewire/snd-firewire-lib 0x2fdaf450 amdtp_domain_init +EXPORT_SYMBOL_GPL sound/firewire/snd-firewire-lib 0x35f62f4c amdtp_domain_stream_pcm_ack +EXPORT_SYMBOL_GPL sound/firewire/snd-firewire-lib 0x37a845b8 amdtp_domain_stream_pcm_pointer +EXPORT_SYMBOL_GPL sound/firewire/snd-firewire-lib 0x5944499f amdtp_domain_add_stream +EXPORT_SYMBOL_GPL sound/firewire/snd-firewire-lib 0x6426d73e amdtp_am824_add_pcm_hw_constraints +EXPORT_SYMBOL_GPL sound/firewire/snd-firewire-lib 0x68de65ab amdtp_domain_destroy +EXPORT_SYMBOL_GPL sound/firewire/snd-firewire-lib 0x8d8de846 amdtp_am824_set_pcm_position +EXPORT_SYMBOL_GPL sound/firewire/snd-firewire-lib 0xa4092d7f amdtp_am824_set_midi_position +EXPORT_SYMBOL_GPL sound/firewire/snd-firewire-lib 0xb507362b amdtp_domain_stop +EXPORT_SYMBOL_GPL sound/firewire/snd-firewire-lib 0xd1de25bb amdtp_am824_midi_trigger +EXPORT_SYMBOL_GPL sound/firewire/snd-firewire-lib 0xe9935921 amdtp_am824_init +EXPORT_SYMBOL_GPL sound/hda/ext/snd-hda-ext-core 0x0df6f98c snd_hdac_ext_stop_streams +EXPORT_SYMBOL_GPL sound/hda/ext/snd-hda-ext-core 0x1712594c snd_hdac_link_free_all +EXPORT_SYMBOL_GPL sound/hda/ext/snd-hda-ext-core 0x1997d936 snd_hdac_ext_link_stream_start +EXPORT_SYMBOL_GPL sound/hda/ext/snd-hda-ext-core 0x20d0f48d snd_hdac_ext_bus_link_power_down +EXPORT_SYMBOL_GPL sound/hda/ext/snd-hda-ext-core 0x2864adc4 snd_hdac_ext_stream_init_all +EXPORT_SYMBOL_GPL sound/hda/ext/snd-hda-ext-core 0x2aa644ba snd_hdac_ext_link_set_stream_id +EXPORT_SYMBOL_GPL sound/hda/ext/snd-hda-ext-core 0x2af569e8 snd_hdac_ext_bus_ppcap_enable +EXPORT_SYMBOL_GPL sound/hda/ext/snd-hda-ext-core 0x32f19541 snd_hdac_ext_link_stream_clear +EXPORT_SYMBOL_GPL sound/hda/ext/snd-hda-ext-core 0x35a5c6a7 snd_hdac_ext_stream_get_spbmaxfifo +EXPORT_SYMBOL_GPL sound/hda/ext/snd-hda-ext-core 0x3c0a8230 snd_hdac_ext_bus_get_link +EXPORT_SYMBOL_GPL sound/hda/ext/snd-hda-ext-core 0x40159cc2 snd_hdac_ext_bus_device_init +EXPORT_SYMBOL_GPL sound/hda/ext/snd-hda-ext-core 0x4115a065 snd_hdac_ext_bus_get_ml_capabilities +EXPORT_SYMBOL_GPL sound/hda/ext/snd-hda-ext-core 0x42392ca7 snd_hda_ext_driver_unregister +EXPORT_SYMBOL_GPL sound/hda/ext/snd-hda-ext-core 0x4455a453 snd_hdac_ext_stream_assign +EXPORT_SYMBOL_GPL sound/hda/ext/snd-hda-ext-core 0x44ed94d9 snd_hdac_ext_bus_init +EXPORT_SYMBOL_GPL sound/hda/ext/snd-hda-ext-core 0x4de4c437 snd_hdac_ext_stream_set_lpib +EXPORT_SYMBOL_GPL sound/hda/ext/snd-hda-ext-core 0x620490cc snd_hdac_ext_stream_spbcap_enable +EXPORT_SYMBOL_GPL sound/hda/ext/snd-hda-ext-core 0x62af29f6 snd_hdac_ext_stream_release +EXPORT_SYMBOL_GPL sound/hda/ext/snd-hda-ext-core 0x67a91165 snd_hdac_ext_stream_set_spib +EXPORT_SYMBOL_GPL sound/hda/ext/snd-hda-ext-core 0x9439da32 snd_hdac_stream_free_all +EXPORT_SYMBOL_GPL sound/hda/ext/snd-hda-ext-core 0x94ab81f0 snd_hdac_ext_bus_device_exit +EXPORT_SYMBOL_GPL sound/hda/ext/snd-hda-ext-core 0x99b30208 snd_hdac_ext_bus_link_power_up +EXPORT_SYMBOL_GPL sound/hda/ext/snd-hda-ext-core 0xa508c4a6 snd_hdac_ext_bus_link_put +EXPORT_SYMBOL_GPL sound/hda/ext/snd-hda-ext-core 0xab48e878 snd_hdac_ext_link_stream_reset +EXPORT_SYMBOL_GPL sound/hda/ext/snd-hda-ext-core 0xac028f3d snd_hdac_ext_stream_drsm_enable +EXPORT_SYMBOL_GPL sound/hda/ext/snd-hda-ext-core 0xacea2335 snd_hdac_ext_bus_link_get +EXPORT_SYMBOL_GPL sound/hda/ext/snd-hda-ext-core 0xb07120a1 snd_hdac_ext_bus_link_power_down_all +EXPORT_SYMBOL_GPL sound/hda/ext/snd-hda-ext-core 0xc106665a snd_hdac_ext_stream_set_dpibr +EXPORT_SYMBOL_GPL sound/hda/ext/snd-hda-ext-core 0xc5f287c1 snd_hdac_ext_link_clear_stream_id +EXPORT_SYMBOL_GPL sound/hda/ext/snd-hda-ext-core 0xc8326498 snd_hdac_ext_stream_decouple +EXPORT_SYMBOL_GPL sound/hda/ext/snd-hda-ext-core 0xdc409249 snd_hdac_ext_bus_ppcap_int_enable +EXPORT_SYMBOL_GPL sound/hda/ext/snd-hda-ext-core 0xdf41f89d snd_hdac_ext_bus_link_power_up_all +EXPORT_SYMBOL_GPL sound/hda/ext/snd-hda-ext-core 0xe230654c snd_hdac_ext_bus_device_remove +EXPORT_SYMBOL_GPL sound/hda/ext/snd-hda-ext-core 0xe44e533a snd_hda_ext_driver_register +EXPORT_SYMBOL_GPL sound/hda/ext/snd-hda-ext-core 0xe764224f snd_hdac_ext_stream_init +EXPORT_SYMBOL_GPL sound/hda/ext/snd-hda-ext-core 0xf2a35afb snd_hdac_ext_link_stream_setup +EXPORT_SYMBOL_GPL sound/hda/ext/snd-hda-ext-core 0xfdaccad9 snd_hdac_ext_bus_exit +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0x00b56e3a snd_hdac_sync_power_state +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0x014854e4 snd_hdac_stream_setup +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0x031bb3ff snd_hdac_stream_release +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0x03c2e029 snd_hdac_get_stream_stripe_ctl +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0x0918118a snd_hdac_channel_allocation +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0x0c02463d snd_hda_bus_type +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0x17bcdb9a snd_hdac_stream_reset +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0x2289d4b9 snd_hdac_bus_exit_link_reset +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0x254601dd snd_hdac_add_chmap_ctls +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0x2f4a9b09 snd_hdac_register_chmap_ops +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0x31356526 snd_hdac_power_down_pm +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0x362def7c snd_hdac_is_supported_format +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0x369f88d3 snd_hdac_regmap_update_raw_once +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0x3925a46b snd_hdac_get_sub_nodes +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0x3a30a910 snd_hdac_dsp_prepare +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0x3a69a53a snd_hdac_bus_get_response +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0x3bc949f4 snd_hdac_bus_stop_cmd_io +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0x3bd544c2 snd_hdac_get_active_channels +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0x3ccfd328 snd_hdac_regmap_exit +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0x3cdbf399 snd_hdac_stream_cleanup +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0x3de8c289 snd_hdac_dsp_cleanup +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0x40d63e24 snd_hdac_regmap_read_raw +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0x40e600a2 snd_hdac_bus_parse_capabilities +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0x42a72693 snd_hdac_device_exit +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0x445190f0 snd_hdac_bus_alloc_stream_pages +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0x4c5b2998 snd_hdac_power_up +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0x4c7ec4b6 snd_hdac_get_ch_alloc_from_ca +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0x4d7f5332 snd_hdac_device_init +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0x4ed487d1 snd_hdac_read_parm_uncached +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0x5037050c snd_hdac_stream_timecounter_init +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0x51f7412a snd_hdac_stream_sync +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0x53b64983 snd_hdac_acomp_get_eld +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0x57f7862d snd_hdac_power_up_pm +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0x5a1383f7 snd_hdac_device_register +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0x5c07cb49 snd_hdac_calc_stream_format +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0x5c239e34 snd_hdac_stream_sync_trigger +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0x5c27787a snd_hdac_stream_setup_periods +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0x61a106f9 snd_hdac_codec_read +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0x639bd29d snd_hdac_regmap_add_vendor_verb +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0x6715d20f snd_hdac_refresh_widgets +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0x67bfe791 snd_hdac_spk_to_chmap +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0x686d69be snd_hdac_i915_set_bclk +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0x704aab81 snd_hdac_bus_stop_chip +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0x72adff36 snd_hdac_sync_audio_rate +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0x77c754a8 snd_hdac_chmap_to_spk_mask +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0x79af87ad snd_hdac_query_supported_pcm +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0x87004635 snd_hdac_get_connections +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0x8759dcbf snd_hdac_bus_exec_verb_unlocked +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0x885a61b7 snd_hdac_stream_start +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0x8acd8695 snd_hdac_get_stream +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0x8ce00308 snd_hdac_device_unregister +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0x911f0b33 snd_hdac_setup_channel_mapping +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0x98a4c637 snd_hdac_check_power_state +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0x9a32d1c3 snd_hdac_override_parm +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0x9a8e1877 snd_array_free +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0x9b4465e1 snd_hdac_set_codec_wakeup +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0x9b8b951a snd_hdac_bus_enter_link_reset +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0xa1edd9ee snd_hdac_power_down +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0xa30482a2 snd_hdac_regmap_sync +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0xa7a337b8 snd_hdac_bus_reset_link +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0xa7e226cf snd_hdac_bus_free_stream_pages +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0xaaf524f7 snd_hdac_acomp_exit +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0xab177937 snd_hdac_acomp_register_notifier +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0xad1dc995 snd_hdac_acomp_init +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0xad7f84b7 snd_hdac_stream_assign +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0xb2ff4a36 snd_hdac_regmap_write_raw +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0xba47038b snd_hdac_device_set_chip_name +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0xbe7dd7dc snd_array_new +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0xc6a2f4c7 snd_hdac_display_power +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0xc7058f63 snd_hdac_bus_init_chip +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0xc9ee90bb snd_hdac_bus_exit +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0xcf2ed5c9 snd_hdac_i915_init +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0xd07b7f74 snd_hdac_regmap_init +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0xd07b9bc9 snd_hdac_bus_init_cmd_io +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0xd08653ac snd_hdac_stream_init +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0xd12dd8e8 snd_hdac_stream_clear +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0xd14adbef snd_hdac_bus_send_cmd +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0xd2839c4f snd_hdac_codec_write +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0xd9bdba12 snd_hdac_stream_stop +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0xdac0b90a snd_hdac_bus_update_rirb +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0xdffcd9a5 _snd_hdac_read_parm +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0xe4e07754 snd_hdac_print_channel_allocation +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0xe59459ea snd_hdac_bus_handle_stream_irq +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0xe7a84225 snd_hdac_read +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0xe7f4ecde snd_hdac_codec_modalias +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0xeeae8660 hdac_get_device_id +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0xef48926b snd_hdac_stream_set_params +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0xfb83db34 snd_hdac_dsp_trigger +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0xfbeb16be snd_hdac_regmap_update_raw +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0xffce1465 snd_hdac_bus_init +EXPORT_SYMBOL_GPL sound/hda/snd-intel-dspcfg 0x10078b86 intel_nhlt_get_dmic_geo +EXPORT_SYMBOL_GPL sound/hda/snd-intel-dspcfg 0x2778f4db snd_intel_dsp_driver_probe +EXPORT_SYMBOL_GPL sound/hda/snd-intel-dspcfg 0x4e859456 intel_nhlt_free +EXPORT_SYMBOL_GPL sound/hda/snd-intel-dspcfg 0xb72dd89f intel_nhlt_init +EXPORT_SYMBOL_GPL sound/i2c/other/snd-ak4113 0x26eaa514 snd_ak4113_reg_write +EXPORT_SYMBOL_GPL sound/i2c/other/snd-ak4113 0x37c4c555 snd_ak4113_external_rate +EXPORT_SYMBOL_GPL sound/i2c/other/snd-ak4113 0x419848bf snd_ak4113_build +EXPORT_SYMBOL_GPL sound/i2c/other/snd-ak4113 0x77e3c5c3 snd_ak4113_reinit +EXPORT_SYMBOL_GPL sound/i2c/other/snd-ak4113 0xb54c27a0 snd_ak4113_check_rate_and_errors +EXPORT_SYMBOL_GPL sound/i2c/other/snd-ak4113 0xe0017b50 snd_ak4113_create +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x0140ec80 snd_hda_codec_get_pincfg +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x0676f5ac snd_hda_get_input_pin_attr +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x0a3a5fd1 snd_hda_multi_out_dig_cleanup +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x0cedd80d snd_hda_codec_prepare +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x0e6a4f5d snd_hda_find_mixer_ctl +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x0ed5398b snd_hda_mixer_amp_switch_get +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x0f51f127 hda_get_autocfg_input_label +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x0f9bfefe snd_hda_codec_set_power_to_all +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x10cdca97 azx_get_position +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x11afed83 azx_probe_codecs +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x11d993ff snd_hda_pick_fixup +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x120403a7 snd_hda_load_patch +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x1401225a snd_hda_codec_load_dsp_cleanup +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x1703d0f1 snd_hda_codec_new +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x182ad539 snd_hda_jack_set_dirty_all +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x1938db51 snd_hda_codec_set_pincfg +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x1df3656e snd_hda_codec_cleanup +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x1f9e7859 snd_hda_get_connections +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x2108aa50 snd_hda_add_new_ctls +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x212898cd snd_hda_sequence_write +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x222fc47e _snd_hda_set_pin_ctl +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x242342f9 snd_hda_mixer_amp_switch_put_beep +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x2b9053c6 snd_hda_jack_set_gating_jack +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x2bc30c81 snd_hda_set_power_save +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x2c995643 snd_hda_get_conn_index +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x2e0bf7f8 snd_hda_apply_verbs +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x2f30b539 snd_hda_codec_pcm_put +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x32f09e18 snd_hda_codec_amp_update +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x34f276a4 snd_hda_check_amp_caps +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x38ce402b azx_interrupt +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x38cf79d0 snd_hda_get_num_devices +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x4302b0dd snd_hda_codec_update_widgets +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x4338c30e snd_hda_override_amp_caps +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x4417193e snd_hda_set_dev_select +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x458651a7 snd_hda_parse_pin_defcfg +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x486027e8 snd_hda_jack_poll_all +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x4a501657 snd_hda_spdif_ctls_assign +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x4cb110d0 snd_hda_codec_pcm_new +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x4ed6c761 snd_hda_mixer_amp_switch_info +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x4ee4bcf1 snd_hda_codec_eapd_power_filter +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x4f2a5395 hda_codec_driver_unregister +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x523718be snd_hda_jack_tbl_get_mst +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x54051587 azx_get_pos_posbuf +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x55770834 snd_hda_codec_load_dsp_prepare +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x561eff59 snd_hda_add_nid +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x5718fcbf snd_hda_get_default_vref +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x5aa9d76a snd_hda_detach_beep_device +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x5bb1a5e8 snd_hda_codec_set_name +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x5d1b2980 snd_hda_create_spdif_in_ctls +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x5d2a13d9 snd_hda_pick_pin_fixup +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x5d608152 snd_hda_codec_set_pin_target +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x63275e2e snd_hda_set_vmaster_tlv +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x6453b544 snd_hda_jack_add_kctl_mst +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x659148c1 snd_hda_check_amp_list_power +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x66565b01 snd_hda_codec_build_controls +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x69024f1d snd_hda_mixer_amp_volume_put +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x69f21253 is_jack_detectable +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x6b2a42be snd_hda_apply_pincfgs +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x6c68781d snd_hda_codec_parse_pcms +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x7289905b snd_hda_create_dig_out_ctls +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x77fc077e snd_hda_multi_out_dig_close +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x7b45d2ce snd_hda_codec_configure +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x7b4fae9f snd_hda_mixer_amp_switch_get_beep +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x81dadbd0 snd_hda_jack_tbl_get_from_tag +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x8233fb75 snd_hda_spdif_ctls_unassign +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x832225c0 snd_hda_spdif_out_of_nid +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x84c8092a azx_bus_init +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x84c92236 azx_stop_all_streams +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x85e25c29 __snd_hda_add_vmaster +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x88e6e728 snd_hda_get_conn_list +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x938d6d4b snd_hda_mixer_amp_volume_get +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x94132ae2 snd_hda_input_mux_put +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xa1fc36fe query_amp_caps +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xa495775e snd_hda_multi_out_analog_cleanup +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xa80c7bff snd_hda_sync_vmaster_hook +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xa938d585 snd_hda_jack_unsol_event +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xaa03282a snd_hda_codec_setup_stream +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xaac78d1d snd_hda_multi_out_dig_open +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xab824fec snd_hda_codec_get_pin_target +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xac3f9154 snd_hda_add_vmaster_hook +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xac9c5cd2 snd_hda_get_hint +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xadb614d5 snd_hda_jack_pin_sense +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xadc0b85c snd_hda_add_imux_item +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xb206ca93 snd_hda_codec_device_new +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xb50ee284 azx_init_streams +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xb6d07fd5 snd_hda_codec_amp_init_stereo +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xb8cb5f75 snd_hda_shutup_pins +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xba2a05e8 snd_hda_jack_detect_state_mst +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xbc11711a snd_hda_lock_devices +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xbce8bda5 azx_codec_configure +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xc03618b3 snd_hda_apply_fixup +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xc1beb31d __hda_codec_driver_register +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xc21513f8 azx_free_streams +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xc5489705 snd_hda_codec_load_dsp_trigger +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xc66b2d6b snd_hda_override_conn_list +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xc7cc3b37 snd_hda_get_pin_label +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xc884432b snd_hda_jack_add_kctls +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xcb13596c snd_hda_jack_detect_enable +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xcc83b9c5 snd_hda_input_mux_info +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xce24dcc4 snd_hda_enable_beep_device +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xcef60415 snd_hda_get_dev_select +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xd0547981 snd_hda_add_verbs +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xd38e93a1 snd_hda_mixer_amp_volume_info +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xd5da35e1 snd_hda_ctl_add +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xd5e8e960 snd_hda_multi_out_dig_prepare +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xd663b871 snd_hda_attach_beep_device +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xd670efcc snd_hda_codec_amp_stereo +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xd787ec9b snd_hda_enum_helper_info +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xd95b1dc7 snd_hda_correct_pin_ctl +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xde78b436 snd_hda_multi_out_analog_prepare +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xe118de5d snd_pcm_2_1_chmaps +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xe17de261 snd_hda_get_bool_hint +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xe2342fb5 snd_hda_unlock_devices +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xe278eec8 snd_hda_codec_amp_init +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xe3516f95 snd_hda_jack_detect_enable_callback_mst +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xe4e65ce6 snd_hda_jack_report_sync +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xe6105760 snd_hda_get_int_hint +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xeda3a721 snd_print_pcm_bits +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xef7038e6 azx_get_pos_lpib +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xf113749f __snd_hda_codec_cleanup_stream +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xf27ebaf2 azx_init_chip +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xf45a1bdd snd_hda_mixer_amp_switch_put +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xf9469b51 snd_hda_mixer_amp_tlv +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xfa1d83d9 snd_hda_create_spdif_share_sw +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xfe8ca029 azx_stop_chip +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xff958496 snd_hda_multi_out_analog_open +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec-generic 0x1c31a7c8 snd_hda_gen_add_kctl +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec-generic 0x2b030911 snd_hda_gen_free +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec-generic 0x3458d86d snd_hda_get_path_from_idx +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec-generic 0x386905fc snd_hda_gen_fix_pin_power +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec-generic 0x59d7ae1c snd_hda_activate_path +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec-generic 0x5b537b5f snd_hda_gen_check_power_status +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec-generic 0x5d1810c3 snd_hda_gen_path_power_filter +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec-generic 0x5df33765 snd_hda_gen_parse_auto_config +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec-generic 0x76dc6871 hda_main_out_badness +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec-generic 0x871a6e44 hda_extra_out_badness +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec-generic 0xb039f300 snd_hda_gen_reboot_notify +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec-generic 0xbc61cbf9 snd_hda_gen_build_controls +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec-generic 0xc3828e81 snd_hda_gen_spec_init +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec-generic 0xcd61bf41 snd_hda_add_new_path +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec-generic 0xd38f9d8b snd_hda_gen_line_automute +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec-generic 0xd654d2e0 snd_hda_gen_add_mute_led_cdev +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec-generic 0xdd27bbfe snd_hda_gen_update_outputs +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec-generic 0xdd2f3ff7 snd_hda_gen_add_micmute_led_cdev +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec-generic 0xdd7385fd snd_hda_gen_mic_autoswitch +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec-generic 0xe604e33e snd_hda_get_path_idx +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec-generic 0xeaecb408 snd_hda_gen_build_pcms +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec-generic 0xeefcf489 snd_hda_gen_stream_pm +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec-generic 0xf1fb411f snd_hda_gen_hp_automute +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec-generic 0xfbda8d27 snd_hda_gen_init +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-adau-utils 0xae620be9 adau_calc_pll_cfg +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-adau1761 0x1484aeaf adau1761_regmap_config +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-adau1761 0xe1e77968 adau1761_probe +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-adau17x1 0x021fefa3 adau17x1_volatile_register +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-adau17x1 0x0e856202 adau17x1_probe +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-adau17x1 0x39089c77 adau17x1_add_routes +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-adau17x1 0x3e493276 adau17x1_readable_register +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-adau17x1 0x83e9065e adau17x1_resume +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-adau17x1 0x859ad241 adau17x1_add_widgets +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-adau17x1 0x97bb7122 adau17x1_dai_ops +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-adau17x1 0xb667aac7 adau17x1_set_micbias_voltage +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-adau17x1 0xf8291af6 adau17x1_precious_register +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-adau17x1 0xff2ef9e7 adau17x1_remove +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-adau7118 0x34edb9dd adau7118_probe +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-cs4271 0x56de3df6 cs4271_probe +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-cs4271 0xcdf037a1 cs4271_regmap_config +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-cs42l51 0x0f35c118 cs42l51_probe +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-cs42l51 0x294556d7 cs42l51_regmap +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-cs42l51 0x375ad98c cs42l51_of_match +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-cs42l51 0xbc4d7e10 cs42l51_remove +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-cs42l51 0xbe35ae65 cs42l51_resume +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-cs42l51 0xe2823aaa cs42l51_suspend +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-cs42xx8 0x0245c4f2 cs42xx8_of_match +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-cs42xx8 0x4e39a392 cs42xx8_pm +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-cs42xx8 0x7cac7292 cs42888_data +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-cs42xx8 0x8b6959cb cs42xx8_regmap_config +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-cs42xx8 0xbc921121 cs42xx8_probe +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-cs42xx8 0xcd3794c9 cs42448_data +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-da7219 0x4c7e1308 da7219_aad_jack_det +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-da7219 0x7ddb662b da7219_aad_exit +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-da7219 0x95cc3044 da7219_aad_init +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-es8328 0x181bec6c es8328_regmap_config +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-es8328 0xbbdbec96 es8328_probe +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-hdac-hda 0xdd9e9ce6 snd_soc_hdac_hda_get_ops +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-hdac-hdmi 0x7276f0d8 hdac_hdmi_jack_init +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-hdac-hdmi 0x875914eb hdac_hdmi_jack_port_init +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-hdmi-codec 0x8cfd91f0 hdmi_codec_set_jack_detect +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-max98090 0x87a83943 max98090_mic_detect +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-nau8824 0x26441ad1 nau8824_enable_jack_detect +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-nau8825 0x764081fc nau8825_enable_jack_detect +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-pcm1789-codec 0x22d8db73 pcm1789_common_init +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-pcm1789-codec 0x610aec25 pcm1789_regmap_config +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-pcm1789-codec 0xb9151249 pcm1789_common_exit +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-pcm179x-codec 0x0656f109 pcm179x_common_init +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-pcm179x-codec 0x66ba400d pcm179x_regmap_config +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-pcm186x 0x79b26d4f pcm186x_probe +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-pcm186x 0xb208d01d pcm186x_regmap +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-pcm3168a 0x507e0caf pcm3168a_remove +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-pcm3168a 0x70a9b8dc pcm3168a_pm_ops +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-pcm3168a 0x97f6b0ef pcm3168a_regmap +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-pcm3168a 0x9a8e6aaf pcm3168a_probe +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-pcm512x 0x32bca889 pcm512x_pm_ops +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-pcm512x 0x4cf88867 pcm512x_probe +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-pcm512x 0x72032e03 pcm512x_remove +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-pcm512x 0xc3a8759d pcm512x_regmap +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-rl6231 0x5dc92cdf rl6231_pll_calc +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-rl6231 0x70617a04 rl6231_get_clk_info +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-rl6231 0x8d7fa148 rl6231_get_pre_div +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-rl6231 0xdba4502f rl6231_calc_dmic_clk +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-rl6347a 0xa7aa810f rl6347a_hw_write +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-rl6347a 0xade4bf4c rl6347a_hw_read +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-rt286 0x3461df2b rt286_mic_detect +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-rt298 0x7f2ff174 rt298_mic_detect +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-rt5514-spi 0x61ff58e3 rt5514_spi_burst_read +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-rt5514-spi 0xff87892f rt5514_spi_burst_write +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-rt5640 0x251e7a09 rt5640_sel_asrc_clk_src +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-rt5640 0xf3a905f4 rt5640_dmic_enable +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-rt5645 0x70cf0c18 rt5645_set_jack_detect +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-rt5645 0xf88f3955 rt5645_sel_asrc_clk_src +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-rt5663 0xed16c539 rt5663_sel_asrc_clk_src +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-rt5670 0x4c24e4e5 rt5670_sel_asrc_clk_src +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-rt5670 0x5db164ac rt5670_jack_suspend +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-rt5670 0x7f99f328 rt5670_set_jack_detect +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-rt5670 0xddb4d0ca rt5670_jack_resume +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-rt5677 0x66057b04 rt5677_sel_asrc_clk_src +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-rt5677-spi 0x5fc320ad rt5677_spi_write_firmware +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-rt5677-spi 0x67956035 rt5677_spi_write +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-rt5677-spi 0xc6695825 rt5677_spi_hotword_detected +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-rt5677-spi 0xe8ece129 rt5677_spi_read +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-rt5682 0x120ac312 rt5682_calibrate +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-rt5682 0x28730696 rt5682_supply_names +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-rt5682 0x49c3d97b rt5682_soc_component_dev +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-rt5682 0x4eee237b rt5682_headset_detect +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-rt5682 0x58b54d00 rt5682_aif1_dai_ops +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-rt5682 0x59d3d967 rt5682_jack_detect_handler +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-rt5682 0x666fe83e rt5682_sel_asrc_clk_src +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-rt5682 0x6fd365fb rt5682_volatile_register +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-rt5682 0x97a6e2d2 rt5682_parse_dt +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-rt5682 0xad9ea1a0 rt5682_readable_register +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-rt5682 0xb382f603 rt5682_aif2_dai_ops +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-rt5682 0xb897de56 rt5682_reg +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-rt5682 0xf488f32c rt5682_reset +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-rt5682 0xfe0e112e rt5682_apply_patch_list +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-sigmadsp 0x0390d323 sigmadsp_attach +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-sigmadsp 0x51bafced sigmadsp_restrict_params +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-sigmadsp 0x79bb781b devm_sigmadsp_init +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-sigmadsp 0x9f4d0349 sigmadsp_reset +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-sigmadsp 0xa297981b sigmadsp_setup +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-sigmadsp-i2c 0x12d8d6b7 devm_sigmadsp_init_i2c +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-sigmadsp-regmap 0x71794b04 devm_sigmadsp_init_regmap +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-ssm2602 0x15bec33e ssm2602_probe +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-ssm2602 0xe35907e2 ssm2602_regmap_config +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-tlv320aic32x4 0x1fbecde4 aic32x4_register_clocks +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-ts3a227e 0xbf48f1e0 ts3a227e_enable_jack_detect +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-wm8804 0x92a48d39 wm8804_remove +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-wm8804 0x973be68b wm8804_pm +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-wm8804 0xc0cc2fde wm8804_regmap_config +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-wm8804 0xfbed5c4b wm8804_probe +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-wm8903 0xfc70e752 wm8903_mic_detect +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-wm8962 0x7987db60 wm8962_mic_detect +EXPORT_SYMBOL_GPL sound/soc/fsl/snd-soc-fsl-asrc 0x53ed90be fsl_asrc_component +EXPORT_SYMBOL_GPL sound/soc/fsl/snd-soc-fsl-easrc 0x12093dc8 fsl_easrc_get_dma_channel +EXPORT_SYMBOL_GPL sound/soc/fsl/snd-soc-imx-audmux 0x30693bb7 imx_audmux_v1_configure_port +EXPORT_SYMBOL_GPL sound/soc/fsl/snd-soc-imx-audmux 0x58631dab imx_audmux_v2_configure_port +EXPORT_SYMBOL_GPL sound/soc/generic/snd-soc-simple-card-utils 0x03a2276f asoc_simple_init_jack +EXPORT_SYMBOL_GPL sound/soc/generic/snd-soc-simple-card-utils 0x1281f21a asoc_simple_parse_card_name +EXPORT_SYMBOL_GPL sound/soc/generic/snd-soc-simple-card-utils 0x31cc153a asoc_simple_clean_reference +EXPORT_SYMBOL_GPL sound/soc/generic/snd-soc-simple-card-utils 0x360eb2eb asoc_simple_init_priv +EXPORT_SYMBOL_GPL sound/soc/generic/snd-soc-simple-card-utils 0x4c30d25b asoc_simple_parse_pin_switches +EXPORT_SYMBOL_GPL sound/soc/generic/snd-soc-simple-card-utils 0x5435c37b asoc_simple_parse_daifmt +EXPORT_SYMBOL_GPL sound/soc/generic/snd-soc-simple-card-utils 0x546b524c asoc_simple_set_dailink_name +EXPORT_SYMBOL_GPL sound/soc/generic/snd-soc-simple-card-utils 0x6eff2f3c asoc_simple_shutdown +EXPORT_SYMBOL_GPL sound/soc/generic/snd-soc-simple-card-utils 0x7de3d395 asoc_simple_parse_convert +EXPORT_SYMBOL_GPL sound/soc/generic/snd-soc-simple-card-utils 0x87c6a06a asoc_simple_startup +EXPORT_SYMBOL_GPL sound/soc/generic/snd-soc-simple-card-utils 0xa20922a8 asoc_simple_parse_widgets +EXPORT_SYMBOL_GPL sound/soc/generic/snd-soc-simple-card-utils 0xaa2d97ff asoc_simple_be_hw_params_fixup +EXPORT_SYMBOL_GPL sound/soc/generic/snd-soc-simple-card-utils 0xaf77526a asoc_simple_parse_clk +EXPORT_SYMBOL_GPL sound/soc/generic/snd-soc-simple-card-utils 0xb2f03836 asoc_simple_canonicalize_platform +EXPORT_SYMBOL_GPL sound/soc/generic/snd-soc-simple-card-utils 0xb3590d30 asoc_simple_parse_routing +EXPORT_SYMBOL_GPL sound/soc/generic/snd-soc-simple-card-utils 0xcf627033 asoc_simple_dai_init +EXPORT_SYMBOL_GPL sound/soc/generic/snd-soc-simple-card-utils 0xe1f51f49 asoc_simple_canonicalize_cpu +EXPORT_SYMBOL_GPL sound/soc/generic/snd-soc-simple-card-utils 0xe59a57d4 asoc_simple_hw_params +EXPORT_SYMBOL_GPL sound/soc/generic/snd-soc-simple-card-utils 0xf3bafb75 asoc_simple_convert_fixup +EXPORT_SYMBOL_GPL sound/soc/intel/atom/snd-soc-sst-atom-hifi2-platform 0x50680da5 sst_register_dsp +EXPORT_SYMBOL_GPL sound/soc/intel/atom/snd-soc-sst-atom-hifi2-platform 0x810c27d1 sst_unregister_dsp +EXPORT_SYMBOL_GPL sound/soc/intel/atom/sst/snd-intel-sst-core 0x29103005 intel_sst_pm +EXPORT_SYMBOL_GPL sound/soc/intel/atom/sst/snd-intel-sst-core 0x709cd25f relocate_imr_addr_mrfld +EXPORT_SYMBOL_GPL sound/soc/intel/atom/sst/snd-intel-sst-core 0x7b4759ab sst_context_init +EXPORT_SYMBOL_GPL sound/soc/intel/atom/sst/snd-intel-sst-core 0xa756f37c sst_context_cleanup +EXPORT_SYMBOL_GPL sound/soc/intel/atom/sst/snd-intel-sst-core 0xd7708799 sst_alloc_drv_context +EXPORT_SYMBOL_GPL sound/soc/intel/atom/sst/snd-intel-sst-core 0xdb832893 sst_configure_runtime_pm +EXPORT_SYMBOL_GPL sound/soc/intel/common/snd-soc-acpi-intel-match 0x019b3122 snd_soc_acpi_intel_cfl_machines +EXPORT_SYMBOL_GPL sound/soc/intel/common/snd-soc-acpi-intel-match 0x1d21a3db snd_soc_acpi_intel_glk_machines +EXPORT_SYMBOL_GPL sound/soc/intel/common/snd-soc-acpi-intel-match 0x1f80ea06 snd_soc_acpi_intel_skl_machines +EXPORT_SYMBOL_GPL sound/soc/intel/common/snd-soc-acpi-intel-match 0x2b5d28ad snd_soc_acpi_intel_baytrail_legacy_machines +EXPORT_SYMBOL_GPL sound/soc/intel/common/snd-soc-acpi-intel-match 0x2c947a0c snd_soc_acpi_intel_icl_sdw_machines +EXPORT_SYMBOL_GPL sound/soc/intel/common/snd-soc-acpi-intel-match 0x33ba323b snd_soc_acpi_intel_kbl_machines +EXPORT_SYMBOL_GPL sound/soc/intel/common/snd-soc-acpi-intel-match 0x3719c4bd snd_soc_acpi_intel_broadwell_machines +EXPORT_SYMBOL_GPL sound/soc/intel/common/snd-soc-acpi-intel-match 0x3aaabc6d snd_soc_acpi_intel_haswell_machines +EXPORT_SYMBOL_GPL sound/soc/intel/common/snd-soc-acpi-intel-match 0x49ee336d snd_soc_acpi_intel_icl_machines +EXPORT_SYMBOL_GPL sound/soc/intel/common/snd-soc-acpi-intel-match 0x5b401a9f snd_soc_acpi_intel_cml_machines +EXPORT_SYMBOL_GPL sound/soc/intel/common/snd-soc-acpi-intel-match 0x5bf374aa snd_soc_acpi_intel_cnl_sdw_machines +EXPORT_SYMBOL_GPL sound/soc/intel/common/snd-soc-acpi-intel-match 0x70f4b115 snd_soc_acpi_intel_baytrail_machines +EXPORT_SYMBOL_GPL sound/soc/intel/common/snd-soc-acpi-intel-match 0x7288ae6d snd_soc_acpi_intel_cnl_machines +EXPORT_SYMBOL_GPL sound/soc/intel/common/snd-soc-acpi-intel-match 0x7beb3f35 snd_soc_acpi_intel_cherrytrail_machines +EXPORT_SYMBOL_GPL sound/soc/intel/common/snd-soc-acpi-intel-match 0x814c0dea snd_soc_acpi_intel_tgl_sdw_machines +EXPORT_SYMBOL_GPL sound/soc/intel/common/snd-soc-acpi-intel-match 0x862d7081 snd_soc_acpi_intel_ehl_machines +EXPORT_SYMBOL_GPL sound/soc/intel/common/snd-soc-acpi-intel-match 0x98304585 snd_soc_acpi_intel_tgl_machines +EXPORT_SYMBOL_GPL sound/soc/intel/common/snd-soc-acpi-intel-match 0xc628a218 snd_soc_acpi_intel_cfl_sdw_machines +EXPORT_SYMBOL_GPL sound/soc/intel/common/snd-soc-acpi-intel-match 0xcb73619c snd_soc_acpi_intel_bxt_machines +EXPORT_SYMBOL_GPL sound/soc/intel/common/snd-soc-acpi-intel-match 0xcfbf7257 snd_soc_acpi_intel_hda_machines +EXPORT_SYMBOL_GPL sound/soc/intel/common/snd-soc-acpi-intel-match 0xf45a3960 snd_soc_acpi_intel_cml_sdw_machines +EXPORT_SYMBOL_GPL sound/soc/intel/common/snd-soc-acpi-intel-match 0xfc535677 snd_soc_acpi_intel_jsl_machines +EXPORT_SYMBOL_GPL sound/soc/intel/common/snd-soc-sst-dsp 0x032f1849 sst_dsp_register_poll +EXPORT_SYMBOL_GPL sound/soc/intel/common/snd-soc-sst-dsp 0x07132082 sst_dsp_shim_read +EXPORT_SYMBOL_GPL sound/soc/intel/common/snd-soc-sst-dsp 0x097ce8cf sst_dsp_shim_update_bits64 +EXPORT_SYMBOL_GPL sound/soc/intel/common/snd-soc-sst-dsp 0x0acd6a3f sst_dsp_inbox_write +EXPORT_SYMBOL_GPL sound/soc/intel/common/snd-soc-sst-dsp 0x104540fc sst_dsp_stall +EXPORT_SYMBOL_GPL sound/soc/intel/common/snd-soc-sst-dsp 0x11094708 sst_dsp_dump +EXPORT_SYMBOL_GPL sound/soc/intel/common/snd-soc-sst-dsp 0x16e86983 sst_shim32_read +EXPORT_SYMBOL_GPL sound/soc/intel/common/snd-soc-sst-dsp 0x1d18e078 sst_dsp_ipc_msg_rx +EXPORT_SYMBOL_GPL sound/soc/intel/common/snd-soc-sst-dsp 0x35fa96f8 sst_memcpy_toio_32 +EXPORT_SYMBOL_GPL sound/soc/intel/common/snd-soc-sst-dsp 0x5590aba5 sst_dsp_shim_update_bits64_unlocked +EXPORT_SYMBOL_GPL sound/soc/intel/common/snd-soc-sst-dsp 0x5b3f81c6 sst_dsp_shim_read64 +EXPORT_SYMBOL_GPL sound/soc/intel/common/snd-soc-sst-dsp 0x69551fcc sst_dsp_outbox_read +EXPORT_SYMBOL_GPL sound/soc/intel/common/snd-soc-sst-dsp 0x6a8cf0f5 sst_dsp_boot +EXPORT_SYMBOL_GPL sound/soc/intel/common/snd-soc-sst-dsp 0x6d1426ea sst_dsp_ipc_msg_tx +EXPORT_SYMBOL_GPL sound/soc/intel/common/snd-soc-sst-dsp 0x70ff16ed sst_dsp_reset +EXPORT_SYMBOL_GPL sound/soc/intel/common/snd-soc-sst-dsp 0x7d2fe776 sst_dsp_wake +EXPORT_SYMBOL_GPL sound/soc/intel/common/snd-soc-sst-dsp 0x85387dac sst_dsp_shim_write64_unlocked +EXPORT_SYMBOL_GPL sound/soc/intel/common/snd-soc-sst-dsp 0x8707be0b sst_dsp_shim_write_unlocked +EXPORT_SYMBOL_GPL sound/soc/intel/common/snd-soc-sst-dsp 0x87cdf7d2 sst_shim32_write64 +EXPORT_SYMBOL_GPL sound/soc/intel/common/snd-soc-sst-dsp 0x90d82664 sst_dsp_shim_write +EXPORT_SYMBOL_GPL sound/soc/intel/common/snd-soc-sst-dsp 0x916b1f1e sst_dsp_shim_update_bits_forced_unlocked +EXPORT_SYMBOL_GPL sound/soc/intel/common/snd-soc-sst-dsp 0x96008201 sst_dsp_shim_read64_unlocked +EXPORT_SYMBOL_GPL sound/soc/intel/common/snd-soc-sst-dsp 0xa279ba58 sst_dsp_outbox_write +EXPORT_SYMBOL_GPL sound/soc/intel/common/snd-soc-sst-dsp 0xa35ac26a sst_dsp_mailbox_init +EXPORT_SYMBOL_GPL sound/soc/intel/common/snd-soc-sst-dsp 0xaa15dc9a sst_dsp_shim_update_bits +EXPORT_SYMBOL_GPL sound/soc/intel/common/snd-soc-sst-dsp 0xb0d19687 sst_dsp_shim_update_bits_forced +EXPORT_SYMBOL_GPL sound/soc/intel/common/snd-soc-sst-dsp 0xba5a2d61 sst_dsp_inbox_read +EXPORT_SYMBOL_GPL sound/soc/intel/common/snd-soc-sst-dsp 0xc3be1c62 sst_dsp_shim_read_unlocked +EXPORT_SYMBOL_GPL sound/soc/intel/common/snd-soc-sst-dsp 0xd72a34c2 sst_shim32_read64 +EXPORT_SYMBOL_GPL sound/soc/intel/common/snd-soc-sst-dsp 0xe4265200 sst_dsp_sleep +EXPORT_SYMBOL_GPL sound/soc/intel/common/snd-soc-sst-dsp 0xe9c6de99 sst_shim32_write +EXPORT_SYMBOL_GPL sound/soc/intel/common/snd-soc-sst-dsp 0xea0ab8b2 sst_dsp_shim_write64 +EXPORT_SYMBOL_GPL sound/soc/intel/common/snd-soc-sst-dsp 0xeea6fe78 sst_dsp_shim_update_bits_unlocked +EXPORT_SYMBOL_GPL sound/soc/intel/common/snd-soc-sst-dsp 0xef3e9b67 sst_memcpy_fromio_32 +EXPORT_SYMBOL_GPL sound/soc/intel/common/snd-soc-sst-firmware 0x03cf27c7 sst_block_alloc_scratch +EXPORT_SYMBOL_GPL sound/soc/intel/common/snd-soc-sst-firmware 0x081fdcb4 sst_mem_block_register +EXPORT_SYMBOL_GPL sound/soc/intel/common/snd-soc-sst-firmware 0x13f21e54 sst_module_runtime_free_blocks +EXPORT_SYMBOL_GPL sound/soc/intel/common/snd-soc-sst-firmware 0x16f4cd8d sst_dsp_new +EXPORT_SYMBOL_GPL sound/soc/intel/common/snd-soc-sst-firmware 0x23b972eb sst_free_blocks +EXPORT_SYMBOL_GPL sound/soc/intel/common/snd-soc-sst-firmware 0x2f5c9aa9 sst_fw_reload +EXPORT_SYMBOL_GPL sound/soc/intel/common/snd-soc-sst-firmware 0x5c2afff9 sst_fw_new +EXPORT_SYMBOL_GPL sound/soc/intel/common/snd-soc-sst-firmware 0x61d5b0ec sst_fw_free +EXPORT_SYMBOL_GPL sound/soc/intel/common/snd-soc-sst-firmware 0x64490e59 sst_dsp_dma_put_channel +EXPORT_SYMBOL_GPL sound/soc/intel/common/snd-soc-sst-firmware 0x64bb9333 sst_dsp_dma_get_channel +EXPORT_SYMBOL_GPL sound/soc/intel/common/snd-soc-sst-firmware 0x67005499 sst_module_runtime_save +EXPORT_SYMBOL_GPL sound/soc/intel/common/snd-soc-sst-firmware 0x7627ddba sst_block_free_scratch +EXPORT_SYMBOL_GPL sound/soc/intel/common/snd-soc-sst-firmware 0x7bdb4016 sst_module_runtime_new +EXPORT_SYMBOL_GPL sound/soc/intel/common/snd-soc-sst-firmware 0x7caf708a sst_dsp_free +EXPORT_SYMBOL_GPL sound/soc/intel/common/snd-soc-sst-firmware 0x7fcb27dd sst_module_runtime_alloc_blocks +EXPORT_SYMBOL_GPL sound/soc/intel/common/snd-soc-sst-firmware 0x8149d1ec sst_dsp_get_offset +EXPORT_SYMBOL_GPL sound/soc/intel/common/snd-soc-sst-firmware 0xaa494ee1 sst_module_runtime_free +EXPORT_SYMBOL_GPL sound/soc/intel/common/snd-soc-sst-firmware 0xadb44945 sst_mem_block_unregister_all +EXPORT_SYMBOL_GPL sound/soc/intel/common/snd-soc-sst-firmware 0xadc2adc8 sst_fw_free_all +EXPORT_SYMBOL_GPL sound/soc/intel/common/snd-soc-sst-firmware 0xb9ec2573 sst_module_alloc_blocks +EXPORT_SYMBOL_GPL sound/soc/intel/common/snd-soc-sst-firmware 0xbf6e8f67 sst_alloc_blocks +EXPORT_SYMBOL_GPL sound/soc/intel/common/snd-soc-sst-firmware 0xcbba5e1c sst_module_runtime_get_from_id +EXPORT_SYMBOL_GPL sound/soc/intel/common/snd-soc-sst-firmware 0xcd58fd45 sst_module_runtime_restore +EXPORT_SYMBOL_GPL sound/soc/intel/common/snd-soc-sst-firmware 0xcd764289 sst_dsp_dma_copyto +EXPORT_SYMBOL_GPL sound/soc/intel/common/snd-soc-sst-firmware 0xd559cdb0 sst_module_new +EXPORT_SYMBOL_GPL sound/soc/intel/common/snd-soc-sst-firmware 0xd7955365 sst_fw_unload +EXPORT_SYMBOL_GPL sound/soc/intel/common/snd-soc-sst-firmware 0xea5730b9 sst_module_get_from_id +EXPORT_SYMBOL_GPL sound/soc/intel/common/snd-soc-sst-firmware 0xeb89af13 sst_dsp_dma_copyfrom +EXPORT_SYMBOL_GPL sound/soc/intel/common/snd-soc-sst-firmware 0xf3584d47 sst_module_free +EXPORT_SYMBOL_GPL sound/soc/intel/common/snd-soc-sst-firmware 0xf7b38370 sst_module_free_blocks +EXPORT_SYMBOL_GPL sound/soc/intel/common/snd-soc-sst-ipc 0x061a181b sst_ipc_fini +EXPORT_SYMBOL_GPL sound/soc/intel/common/snd-soc-sst-ipc 0x49828734 sst_ipc_tx_message_nowait +EXPORT_SYMBOL_GPL sound/soc/intel/common/snd-soc-sst-ipc 0x57b34587 sst_ipc_tx_msg_reply_complete +EXPORT_SYMBOL_GPL sound/soc/intel/common/snd-soc-sst-ipc 0x64b6c1d0 sst_ipc_tx_message_nopm +EXPORT_SYMBOL_GPL sound/soc/intel/common/snd-soc-sst-ipc 0x7d31d39a sst_ipc_tx_message_wait +EXPORT_SYMBOL_GPL sound/soc/intel/common/snd-soc-sst-ipc 0x81b3c79f sst_ipc_drop_all +EXPORT_SYMBOL_GPL sound/soc/intel/common/snd-soc-sst-ipc 0xba55d677 sst_ipc_init +EXPORT_SYMBOL_GPL sound/soc/intel/common/snd-soc-sst-ipc 0xd2b43f42 sst_ipc_reply_find_msg +EXPORT_SYMBOL_GPL sound/soc/intel/haswell/snd-soc-sst-haswell-pcm 0x1929b5d9 sst_hsw_dsp_init +EXPORT_SYMBOL_GPL sound/soc/intel/haswell/snd-soc-sst-haswell-pcm 0x8fe64b36 sst_hsw_dsp_free +EXPORT_SYMBOL_GPL sound/soc/intel/haswell/snd-soc-sst-haswell-pcm 0xb40ff91f sst_hsw_device_set_config +EXPORT_SYMBOL_GPL sound/soc/snd-soc-acpi 0x6c5d2bcd snd_soc_acpi_find_package_from_hid +EXPORT_SYMBOL_GPL sound/soc/snd-soc-acpi 0x8795d901 snd_soc_acpi_find_machine +EXPORT_SYMBOL_GPL sound/soc/snd-soc-acpi 0xa2585abc snd_soc_acpi_codec_list +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x02dc9bd6 snd_soc_dapm_stream_stop +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x031652c7 snd_soc_card_jack_new +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x0373411c snd_soc_dapm_get_volsw +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x04114678 snd_soc_find_dai_with_mutex +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x04a182d0 snd_soc_remove_pcm_runtime +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x072a4400 snd_soc_of_parse_tdm_slot +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x0a5990e2 snd_soc_dapm_init +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x0bb9979c snd_soc_put_strobe +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x0bc67934 snd_soc_component_async_complete +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x0c4597ed snd_soc_component_get_pin_status +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x0d6420a1 snd_soc_dai_compr_get_params +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x0ed57d06 snd_soc_unregister_dai +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x0fbdc6f2 snd_soc_add_component +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x110949dd snd_soc_dpcm_fe_can_update +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x13616212 snd_soc_card_get_kcontrol +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x13c84d07 snd_soc_register_component +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x15fd2e9e snd_soc_dai_get_channel_map +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x175cb20a snd_soc_of_get_dai_name +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x1855d610 snd_soc_dai_set_tristate +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x19aec840 snd_soc_dai_set_clkdiv +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x1a3ed231 snd_soc_dapm_force_enable_pin +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x1b474052 snd_soc_register_card +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x1d9e64c2 snd_soc_component_enable_pin_unlocked +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x1dd0afa1 snd_soc_bytes_put +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x1de8c587 snd_soc_bytes_tlv_callback +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x1eb522c9 snd_soc_set_runtime_hwparams +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x238073d8 snd_soc_dai_set_fmt +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x244e8715 snd_soc_component_update_bits +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x2541a979 snd_soc_calc_frame_size +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x26b55b15 snd_soc_jack_notifier_register +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x26e2dd45 snd_dmaengine_pcm_prepare_slave_config +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x27b8ab26 snd_soc_jack_add_pins +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x27d733d7 snd_soc_dai_compr_set_params +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x294773d5 snd_soc_jack_report +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x2b2321c5 snd_soc_rtdcom_lookup +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x2b7a1650 snd_soc_get_dai_id +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x2ccf4523 snd_soc_dapm_enable_pin_unlocked +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x305ce93d snd_soc_component_set_sysclk +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x34c19387 snd_soc_dapm_new_control +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x34f343ea snd_soc_dapm_force_bias_level +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x35516856 snd_soc_get_volsw +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x35ac57fc snd_soc_resume +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x35c075a4 snd_soc_dapm_kcontrol_widget +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x3759734a snd_soc_get_dai_name +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x37808908 snd_soc_dapm_enable_pin +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x39281cdd snd_soc_put_xr_sx +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x39494ab8 snd_soc_dai_set_channel_map +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x3981879a snd_soc_lookup_component_nolocked +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x39a0940c snd_soc_dai_active +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x39b5ece6 snd_soc_tplg_component_load +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x3a264478 snd_soc_of_get_dai_link_codecs +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x3bf5e103 snd_soc_dapm_get_pin_switch +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x3d58c5b0 snd_soc_jack_free_gpios +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x3e54fab0 snd_soc_link_compr_shutdown +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x3ea22b84 snd_soc_card_add_dai_link +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x3ee006e1 snd_soc_dpcm_can_be_params +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x3f2bbc0d snd_soc_get_strobe +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x416306be snd_soc_component_disable_pin +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x41fd3970 snd_soc_put_volsw_range +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x443ea2bd snd_soc_dai_set_sysclk +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x46a6cd77 snd_soc_dapm_mixer_update_power +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x47298b1c dapm_regulator_event +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x47922d63 devm_snd_soc_register_dai +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x485d788f snd_soc_component_force_enable_pin_unlocked +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x4898993b snd_soc_dai_compr_get_metadata +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x4918cce3 snd_soc_info_volsw +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x49af251b snd_soc_runtime_calc_hw +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x4c38e0e8 snd_soc_dapm_kcontrol_dapm +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x4da84072 snd_soc_get_enum_double +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x4f272678 soc_ac97_ops +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x512d547f snd_soc_new_compress +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x515ec53f snd_soc_runtime_set_dai_fmt +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x524e49ba snd_soc_dapm_disable_pin +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x52b96153 snd_soc_dapm_nc_pin_unlocked +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x53e82416 snd_soc_dapm_nc_pin +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x55147b21 snd_soc_lookup_component +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x55abc5da snd_soc_dapm_update_dai +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x55abc608 snd_soc_dai_compr_shutdown +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x5ca7d34b snd_soc_dapm_add_routes +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x5f45719c snd_soc_dapm_get_pin_status +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x64546d29 snd_soc_add_card_controls +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x64650942 devm_snd_soc_register_card +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x67ecc537 snd_soc_dapm_put_pin_switch +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x6998890c snd_soc_component_enable_pin +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x6c589b00 snd_soc_dapm_info_pin_switch +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x6d679162 snd_soc_link_compr_startup +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x6d69fe2f snd_soc_dapm_force_enable_pin_unlocked +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x6e416f0c snd_soc_component_nc_pin +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x6e829cd0 devm_snd_dmaengine_pcm_register +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x74938775 snd_soc_dpcm_runtime_update +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x74dad8f1 snd_soc_tplg_widget_bind_event +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x76258ca3 snd_soc_component_set_pll +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x7691bc89 snd_soc_add_pcm_runtime +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x76d3e5d5 snd_soc_info_enum_double +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x76f6d06f snd_soc_pm_ops +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x77b8fdf6 snd_soc_suspend +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x789bcdcf snd_soc_find_dai +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x7aff1339 dapm_mark_endpoints_dirty +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x7b7f3e0a snd_soc_component_nc_pin_unlocked +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x7bca4d6c snd_soc_debugfs_root +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x7c91f2d7 snd_soc_component_disable_pin_unlocked +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x7d7e5873 snd_soc_dai_set_bclk_ratio +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x7e606130 snd_soc_calc_bclk +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x7f432f78 snd_soc_get_volsw_sx +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x808d831f snd_soc_jack_add_gpiods +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x829659d8 snd_soc_add_component_controls +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x8395822d snd_soc_of_parse_audio_routing +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x88a02140 snd_soc_new_ac97_component +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x8c54c707 snd_soc_close_delayed_work +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x8d42c697 snd_soc_card_remove_dai_link +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x9340f984 snd_soc_put_enum_double +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x96765b25 snd_soc_dapm_put_enum_double +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x97cc8d16 snd_soc_component_write +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x997a6781 snd_soc_dapm_del_routes +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x9c6ab675 snd_soc_of_parse_card_name +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x9e4ddf85 snd_soc_dai_compr_trigger +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x9f158086 snd_soc_get_volsw_range +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xa05a7363 snd_soc_limit_volume +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xa3be1a88 snd_soc_dapm_free +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xa4597186 snd_soc_dapm_sync_unlocked +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xa4ab9606 snd_soc_dapm_sync +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xa58be6b6 snd_soc_unregister_component +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xa66629e2 snd_soc_set_dmi_name +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xa6e9b55c snd_soc_dai_set_tdm_slot +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xa7271b23 snd_soc_set_ac97_ops +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xa755abc4 dapm_kcontrol_get_value +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xa9b47730 snd_soc_dapm_weak_routes +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xac30a8a8 snd_soc_runtime_action +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xb2a59747 snd_soc_of_parse_node_prefix +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xb2e73bf7 snd_soc_dai_compr_ack +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xb36d519e snd_soc_dai_set_pll +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xb44c9e0e snd_soc_component_test_bits +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xb48f16d7 snd_soc_set_ac97_ops_of_reset +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xb4e4fa9b snd_soc_bytes_get +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xb659966b snd_soc_dapm_put_volsw +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xb73821bf dapm_pinctrl_event +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xb79eb6b4 snd_soc_dapm_get_enum_double +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xba2b171c snd_soc_dpcm_get_substream +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xba48c11e snd_soc_link_compr_set_params +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xbad8eb0d snd_soc_component_update_bits_async +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xbba559f1 snd_soc_put_volsw_sx +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xbc1b2488 snd_soc_get_pcm_runtime +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xbfbff90b snd_soc_component_init_regmap +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xc017a51e snd_dmaengine_pcm_register +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xc184a3cd snd_soc_component_set_jack +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xc3021e7a snd_soc_component_force_enable_pin +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xc5da71b4 snd_soc_get_xr_sx +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xc696ecf3 snd_soc_info_volsw_range +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xc70a6995 snd_soc_dai_link_set_capabilities +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xc7814c2c snd_soc_component_exit_regmap +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xc792cdc9 snd_soc_unregister_component_by_driver +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xc8269f94 snd_soc_params_to_frame_size +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xc92198ce snd_soc_tplg_widget_remove +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xc9a3053f snd_soc_put_volsw +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xcaeeb1da snd_soc_unregister_card +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xcd080af3 snd_soc_free_ac97_component +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xcd926a73 snd_soc_info_xr_sx +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xce115609 snd_soc_tplg_component_remove +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xd21592c6 snd_soc_dapm_mux_update_power +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xd2675276 snd_soc_of_parse_audio_simple_widgets +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xdb773f79 snd_soc_dapm_new_controls +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xdf68f8c7 snd_soc_bytes_info +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xe00e7c42 snd_soc_dpcm_can_be_free_stop +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xe0d2e3f5 snd_dmaengine_pcm_unregister +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xe3d3d708 null_dailink_component +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xe4b1fd07 snd_soc_jack_add_gpios +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xe501ab3d snd_soc_add_dai_controls +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xe5dffccb snd_soc_dai_action +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xe6131c85 snd_soc_component_read +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xe7076957 snd_soc_cnew +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xe9f18107 snd_soc_poweroff +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xea19b424 dapm_clock_event +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xeafeafc2 snd_soc_jack_notifier_unregister +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xeb711ae7 snd_soc_params_to_bclk +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xedb3a6e9 snd_soc_dai_digital_mute +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xee7fab36 snd_soc_bytes_info_ext +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xef05a269 devm_snd_soc_register_component +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xf0445383 snd_soc_dai_compr_startup +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xf1e765e4 snd_soc_info_volsw_sx +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xf34907c9 snd_soc_component_read32 +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xf4e09030 snd_soc_dapm_disable_pin_unlocked +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xf679f4de snd_soc_dapm_ignore_suspend +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xf6c0e99e snd_soc_dai_compr_set_metadata +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xf6d10a20 snd_soc_dapm_new_widgets +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xf732ac02 dpcm_be_dai_trigger +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xf7c90d90 snd_soc_dai_compr_pointer +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xf7f131e9 snd_soc_of_put_dai_link_codecs +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xf8be2f79 snd_soc_of_parse_daifmt +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xfb91354e snd_soc_tplg_widget_remove_all +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xfbdf162b snd_soc_dpcm_be_can_update +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xfd45bc64 snd_soc_jack_get_type +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xfe8abf55 snd_soc_jack_add_zones +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xffcd1853 snd_soc_of_get_slot_mask +EXPORT_SYMBOL_GPL sound/soc/sof/snd-sof 0x09e08f30 snd_sof_debugfs_buf_item +EXPORT_SYMBOL_GPL sound/soc/sof/snd-sof 0xaab455dc snd_sof_debugfs_io_item +EXPORT_SYMBOL_GPL sound/soc/sof/snd-sof 0xca5f9cfc snd_sof_dbg_init +EXPORT_SYMBOL_GPL sound/soc/sof/snd-sof 0xe2a0baae snd_sof_free_debug +EXPORT_SYMBOL_GPL sound/usb/line6/snd-usb-line6 0x1021155c line6_read_data +EXPORT_SYMBOL_GPL sound/usb/line6/snd-usb-line6 0x1db29958 line6_suspend +EXPORT_SYMBOL_GPL sound/usb/line6/snd-usb-line6 0x202a1b1b line6_midi_id +EXPORT_SYMBOL_GPL sound/usb/line6/snd-usb-line6 0x2b62397c line6_probe +EXPORT_SYMBOL_GPL sound/usb/line6/snd-usb-line6 0x38f845c8 line6_read_serial_number +EXPORT_SYMBOL_GPL sound/usb/line6/snd-usb-line6 0x76e2c2cf line6_alloc_sysex_buffer +EXPORT_SYMBOL_GPL sound/usb/line6/snd-usb-line6 0x771d4a2e line6_init_pcm +EXPORT_SYMBOL_GPL sound/usb/line6/snd-usb-line6 0x7721c7f6 line6_pcm_release +EXPORT_SYMBOL_GPL sound/usb/line6/snd-usb-line6 0x83827934 line6_resume +EXPORT_SYMBOL_GPL sound/usb/line6/snd-usb-line6 0x8d57010a line6_pcm_acquire +EXPORT_SYMBOL_GPL sound/usb/line6/snd-usb-line6 0xafb099a4 line6_write_data +EXPORT_SYMBOL_GPL sound/usb/line6/snd-usb-line6 0xbace1970 line6_init_midi +EXPORT_SYMBOL_GPL sound/usb/line6/snd-usb-line6 0xc23a9bf0 line6_version_request_async +EXPORT_SYMBOL_GPL sound/usb/line6/snd-usb-line6 0xcd10f86b line6_disconnect +EXPORT_SYMBOL_GPL sound/usb/line6/snd-usb-line6 0xd1265a0d line6_send_sysex_message +EXPORT_SYMBOL_GPL sound/usb/line6/snd-usb-line6 0xdf5560bb line6_send_raw_message_async +EXPORT_SYMBOL_GPL vmlinux 0x00083217 shash_ahash_finup +EXPORT_SYMBOL_GPL vmlinux 0x0013071c regmap_parse_val +EXPORT_SYMBOL_GPL vmlinux 0x001b074f mce_is_correctable +EXPORT_SYMBOL_GPL vmlinux 0x001c26ab gpiochip_remove_pin_ranges +EXPORT_SYMBOL_GPL vmlinux 0x001f2049 pskb_put +EXPORT_SYMBOL_GPL vmlinux 0x0023a9bb regmap_can_raw_write +EXPORT_SYMBOL_GPL vmlinux 0x00276536 ata_pci_device_do_resume +EXPORT_SYMBOL_GPL vmlinux 0x0034f3b6 xen_has_pv_nic_devices +EXPORT_SYMBOL_GPL vmlinux 0x00485921 dev_pm_opp_set_rate +EXPORT_SYMBOL_GPL vmlinux 0x004a1321 pci_vfs_assigned +EXPORT_SYMBOL_GPL vmlinux 0x00513f58 get_timespec64 +EXPORT_SYMBOL_GPL vmlinux 0x00531a17 xen_xlate_map_ballooned_pages +EXPORT_SYMBOL_GPL vmlinux 0x00565f18 pernet_ops_rwsem +EXPORT_SYMBOL_GPL vmlinux 0x0061e57a free_vm_area +EXPORT_SYMBOL_GPL vmlinux 0x00643297 uprobe_unregister +EXPORT_SYMBOL_GPL vmlinux 0x00804761 shmem_truncate_range +EXPORT_SYMBOL_GPL vmlinux 0x00812205 gov_update_cpu_data +EXPORT_SYMBOL_GPL vmlinux 0x00844a37 device_get_dma_attr +EXPORT_SYMBOL_GPL vmlinux 0x008539f0 klp_shadow_alloc +EXPORT_SYMBOL_GPL vmlinux 0x0089daf1 fat_attach +EXPORT_SYMBOL_GPL vmlinux 0x008d9029 kill_dev_dax +EXPORT_SYMBOL_GPL vmlinux 0x00991b3f blk_set_queue_dying +EXPORT_SYMBOL_GPL vmlinux 0x00bcfcf2 pcc_mbox_request_channel +EXPORT_SYMBOL_GPL vmlinux 0x00c39521 platform_device_add +EXPORT_SYMBOL_GPL vmlinux 0x00cb47dd vfs_removexattr +EXPORT_SYMBOL_GPL vmlinux 0x00ce6508 dpm_for_each_dev +EXPORT_SYMBOL_GPL vmlinux 0x00df9837 ioasid_register_allocator +EXPORT_SYMBOL_GPL vmlinux 0x00ed7bb2 cdrom_multisession +EXPORT_SYMBOL_GPL vmlinux 0x00ed9f1b __pci_hp_register +EXPORT_SYMBOL_GPL vmlinux 0x00f64c69 ipv6_stub +EXPORT_SYMBOL_GPL vmlinux 0x00fd476f tcp_is_ulp_esp +EXPORT_SYMBOL_GPL vmlinux 0x0101f2aa devm_namespace_disable +EXPORT_SYMBOL_GPL vmlinux 0x01023d1e irq_alloc_generic_chip +EXPORT_SYMBOL_GPL vmlinux 0x010a839d xen_xlate_unmap_gfn_range +EXPORT_SYMBOL_GPL vmlinux 0x01236e15 arizona_dev_init +EXPORT_SYMBOL_GPL vmlinux 0x012d8d9c relay_reset +EXPORT_SYMBOL_GPL vmlinux 0x012e730e apei_exec_noop +EXPORT_SYMBOL_GPL vmlinux 0x01432666 ipv6_bpf_stub +EXPORT_SYMBOL_GPL vmlinux 0x0144e7fc cs47l24_spi_regmap +EXPORT_SYMBOL_GPL vmlinux 0x0149a3aa md_new_event +EXPORT_SYMBOL_GPL vmlinux 0x015564e1 trace_array_put +EXPORT_SYMBOL_GPL vmlinux 0x015fd5f0 __tracepoint_pelt_irq_tp +EXPORT_SYMBOL_GPL vmlinux 0x016d82ee of_devfreq_cooling_register +EXPORT_SYMBOL_GPL vmlinux 0x016fcddd platform_msi_domain_free_irqs +EXPORT_SYMBOL_GPL vmlinux 0x017c52f1 vfs_readf +EXPORT_SYMBOL_GPL vmlinux 0x0183f196 wm8997_aod +EXPORT_SYMBOL_GPL vmlinux 0x01848a8e local_apic_timer_c2_ok +EXPORT_SYMBOL_GPL vmlinux 0x01866a57 ezx_pcap_set_bits +EXPORT_SYMBOL_GPL vmlinux 0x018b3d1e intel_pt_validate_cap +EXPORT_SYMBOL_GPL vmlinux 0x01a0cb78 property_entries_free +EXPORT_SYMBOL_GPL vmlinux 0x01b10fca ftrace_ops_set_global_filter +EXPORT_SYMBOL_GPL vmlinux 0x01b33b5f devm_reset_control_array_get +EXPORT_SYMBOL_GPL vmlinux 0x01be5495 cpci_hp_register_bus +EXPORT_SYMBOL_GPL vmlinux 0x01c12c32 cpu_bit_bitmap +EXPORT_SYMBOL_GPL vmlinux 0x01c1ed0d icc_set_tag +EXPORT_SYMBOL_GPL vmlinux 0x01c8f74c of_pm_clk_add_clks +EXPORT_SYMBOL_GPL vmlinux 0x01d1429a __sock_recv_wifi_status +EXPORT_SYMBOL_GPL vmlinux 0x01e1a8de kgdb_breakpoint +EXPORT_SYMBOL_GPL vmlinux 0x01ee5532 smp_call_function_any +EXPORT_SYMBOL_GPL vmlinux 0x01fabb24 tty_buffer_unlock_exclusive +EXPORT_SYMBOL_GPL vmlinux 0x020c1e43 max8997_read_reg +EXPORT_SYMBOL_GPL vmlinux 0x02166e3f dev_attr_unload_heads +EXPORT_SYMBOL_GPL vmlinux 0x0220e770 devlink_dpipe_match_put +EXPORT_SYMBOL_GPL vmlinux 0x022258c2 device_change_owner +EXPORT_SYMBOL_GPL vmlinux 0x023372f3 spi_slave_abort +EXPORT_SYMBOL_GPL vmlinux 0x02394899 play_idle_precise +EXPORT_SYMBOL_GPL vmlinux 0x023d299f perf_aux_output_begin +EXPORT_SYMBOL_GPL vmlinux 0x02413817 simple_attr_open +EXPORT_SYMBOL_GPL vmlinux 0x024d13dd request_free_mem_region +EXPORT_SYMBOL_GPL vmlinux 0x025000a9 subsys_dev_iter_exit +EXPORT_SYMBOL_GPL vmlinux 0x0255ec63 pinctrl_utils_reserve_map +EXPORT_SYMBOL_GPL vmlinux 0x0265aa6b bpf_redirect_info +EXPORT_SYMBOL_GPL vmlinux 0x02772a98 debugfs_write_file_bool +EXPORT_SYMBOL_GPL vmlinux 0x027f92a7 pingv6_prot +EXPORT_SYMBOL_GPL vmlinux 0x0282f914 usb_phy_set_charger_current +EXPORT_SYMBOL_GPL vmlinux 0x028fcbd0 serial8250_rpm_get +EXPORT_SYMBOL_GPL vmlinux 0x0292396e ohci_hub_status_data +EXPORT_SYMBOL_GPL vmlinux 0x029c15aa usb_hc_died +EXPORT_SYMBOL_GPL vmlinux 0x029f80c6 pinctrl_dev_get_name +EXPORT_SYMBOL_GPL vmlinux 0x02b8477a dmi_kobj +EXPORT_SYMBOL_GPL vmlinux 0x02ca0f76 ata_bmdma_dumb_qc_prep +EXPORT_SYMBOL_GPL vmlinux 0x02e4fbf8 proc_create_net_single +EXPORT_SYMBOL_GPL vmlinux 0x02e8cc66 noop_backing_dev_info +EXPORT_SYMBOL_GPL vmlinux 0x02e9754e tty_port_link_device +EXPORT_SYMBOL_GPL vmlinux 0x02ec420f kobject_init_and_add +EXPORT_SYMBOL_GPL vmlinux 0x02f7252f pm_runtime_set_autosuspend_delay +EXPORT_SYMBOL_GPL vmlinux 0x02f7e4f4 usb_hcd_pci_pm_ops +EXPORT_SYMBOL_GPL vmlinux 0x0312b3b0 reset_controller_add_lookup +EXPORT_SYMBOL_GPL vmlinux 0x0313e4b5 path_noexec +EXPORT_SYMBOL_GPL vmlinux 0x031e8afd platform_get_irq_byname_optional +EXPORT_SYMBOL_GPL vmlinux 0x03372453 force_irqthreads +EXPORT_SYMBOL_GPL vmlinux 0x033832c7 usb_amd_hang_symptom_quirk +EXPORT_SYMBOL_GPL vmlinux 0x03407ad2 rio_bus_type +EXPORT_SYMBOL_GPL vmlinux 0x0343bdf1 __i2c_board_list +EXPORT_SYMBOL_GPL vmlinux 0x034a4c2a vfs_listxattr +EXPORT_SYMBOL_GPL vmlinux 0x036013a9 __srcu_notifier_call_chain +EXPORT_SYMBOL_GPL vmlinux 0x036de383 perf_event_cgrp_subsys_enabled_key +EXPORT_SYMBOL_GPL vmlinux 0x036e767e __udp_enqueue_schedule_skb +EXPORT_SYMBOL_GPL vmlinux 0x03876479 dma_need_sync +EXPORT_SYMBOL_GPL vmlinux 0x03909275 cpufreq_cpu_get_raw +EXPORT_SYMBOL_GPL vmlinux 0x03952887 ktime_add_safe +EXPORT_SYMBOL_GPL vmlinux 0x03c12dfe cancel_work_sync +EXPORT_SYMBOL_GPL vmlinux 0x03c3c886 efivar_entry_find +EXPORT_SYMBOL_GPL vmlinux 0x03cb8922 devm_irq_alloc_generic_chip +EXPORT_SYMBOL_GPL vmlinux 0x03cd3ff9 iommu_unmap_fast +EXPORT_SYMBOL_GPL vmlinux 0x03ce7234 sched_smt_present +EXPORT_SYMBOL_GPL vmlinux 0x03e84150 dma_request_slave_channel +EXPORT_SYMBOL_GPL vmlinux 0x03ed88b8 dw_pcie_write_dbi +EXPORT_SYMBOL_GPL vmlinux 0x03f2980c usb_add_phy +EXPORT_SYMBOL_GPL vmlinux 0x0402cbbf preempt_notifier_inc +EXPORT_SYMBOL_GPL vmlinux 0x040e1962 x86_vector_domain +EXPORT_SYMBOL_GPL vmlinux 0x040f1418 mbox_request_channel +EXPORT_SYMBOL_GPL vmlinux 0x0419e175 vbin_printf +EXPORT_SYMBOL_GPL vmlinux 0x041b964a __put_task_struct +EXPORT_SYMBOL_GPL vmlinux 0x0430ff02 kthread_func +EXPORT_SYMBOL_GPL vmlinux 0x04420eaf srcu_notifier_call_chain +EXPORT_SYMBOL_GPL vmlinux 0x0446bb67 mmc_cmdq_enable +EXPORT_SYMBOL_GPL vmlinux 0x045bf315 ata_host_init +EXPORT_SYMBOL_GPL vmlinux 0x04609a4d xenbus_probe_devices +EXPORT_SYMBOL_GPL vmlinux 0x0465a073 regmap_reg_in_ranges +EXPORT_SYMBOL_GPL vmlinux 0x04790730 edac_device_handle_ue_count +EXPORT_SYMBOL_GPL vmlinux 0x0483dcf4 device_remove_bin_file +EXPORT_SYMBOL_GPL vmlinux 0x048b5f8d twl4030_audio_get_mclk +EXPORT_SYMBOL_GPL vmlinux 0x0490e772 ping_init_sock +EXPORT_SYMBOL_GPL vmlinux 0x049929c0 hv_stimer_free +EXPORT_SYMBOL_GPL vmlinux 0x04bf0092 io_cgrp_subsys_enabled_key +EXPORT_SYMBOL_GPL vmlinux 0x04c4f603 mpi_get_buffer +EXPORT_SYMBOL_GPL vmlinux 0x04d6d002 pid_nr_ns +EXPORT_SYMBOL_GPL vmlinux 0x04db70d7 da9052_adc_manual_read +EXPORT_SYMBOL_GPL vmlinux 0x04df8fbc lzo1x_decompress_safe +EXPORT_SYMBOL_GPL vmlinux 0x050a4c73 pm_generic_restore_noirq +EXPORT_SYMBOL_GPL vmlinux 0x0510e009 wm831x_reg_lock +EXPORT_SYMBOL_GPL vmlinux 0x05281397 set_online_page_callback +EXPORT_SYMBOL_GPL vmlinux 0x052c9aed ktime_get_real_fast_ns +EXPORT_SYMBOL_GPL vmlinux 0x052e634c iommu_unregister_device_fault_handler +EXPORT_SYMBOL_GPL vmlinux 0x053ac3ee fib_rules_dump +EXPORT_SYMBOL_GPL vmlinux 0x054ac1d0 skb_to_sgvec_nomark +EXPORT_SYMBOL_GPL vmlinux 0x054e550b kernel_halt +EXPORT_SYMBOL_GPL vmlinux 0x055d4f75 gpiochip_generic_free +EXPORT_SYMBOL_GPL vmlinux 0x05665c83 iommu_map_sg_atomic +EXPORT_SYMBOL_GPL vmlinux 0x056acaa0 md_bitmap_resize +EXPORT_SYMBOL_GPL vmlinux 0x056ca3a3 pci_hp_add_bridge +EXPORT_SYMBOL_GPL vmlinux 0x058b582a vt_get_leds +EXPORT_SYMBOL_GPL vmlinux 0x058f9366 apei_exec_collect_resources +EXPORT_SYMBOL_GPL vmlinux 0x05944238 sk_attach_filter +EXPORT_SYMBOL_GPL vmlinux 0x05a5856b __tracepoint_neigh_cleanup_and_release +EXPORT_SYMBOL_GPL vmlinux 0x05b260fa __pm_runtime_resume +EXPORT_SYMBOL_GPL vmlinux 0x05c21bdd gpiod_direction_input +EXPORT_SYMBOL_GPL vmlinux 0x05c70748 sysfs_remove_link_from_group +EXPORT_SYMBOL_GPL vmlinux 0x05eddd39 dev_pm_opp_put_opp_table +EXPORT_SYMBOL_GPL vmlinux 0x05fed7bf security_path_link +EXPORT_SYMBOL_GPL vmlinux 0x061203b9 syscon_node_to_regmap +EXPORT_SYMBOL_GPL vmlinux 0x061a23ae metadata_dst_free_percpu +EXPORT_SYMBOL_GPL vmlinux 0x061b1349 __pci_hp_initialize +EXPORT_SYMBOL_GPL vmlinux 0x06209f49 phy_lookup_setting +EXPORT_SYMBOL_GPL vmlinux 0x0626da5f od_unregister_powersave_bias_handler +EXPORT_SYMBOL_GPL vmlinux 0x063b87e2 ip6_pol_route +EXPORT_SYMBOL_GPL vmlinux 0x063c6205 gpiod_direction_output_raw +EXPORT_SYMBOL_GPL vmlinux 0x064db9a5 mark_mounts_for_expiry +EXPORT_SYMBOL_GPL vmlinux 0x06523566 pinctrl_find_and_add_gpio_range +EXPORT_SYMBOL_GPL vmlinux 0x0664da37 phy_led_trigger_change_speed +EXPORT_SYMBOL_GPL vmlinux 0x0671d86d crypto_alloc_tfm +EXPORT_SYMBOL_GPL vmlinux 0x0677ddd3 devm_phy_optional_get +EXPORT_SYMBOL_GPL vmlinux 0x068d79ad usb_init_urb +EXPORT_SYMBOL_GPL vmlinux 0x0691ff09 validate_xmit_skb_list +EXPORT_SYMBOL_GPL vmlinux 0x06cca30b ring_buffer_record_off +EXPORT_SYMBOL_GPL vmlinux 0x06e480fd devm_ioremap_uc +EXPORT_SYMBOL_GPL vmlinux 0x06fa5fc8 __vfs_setxattr_noperm +EXPORT_SYMBOL_GPL vmlinux 0x070977c2 power_supply_am_i_supplied +EXPORT_SYMBOL_GPL vmlinux 0x07242d92 put_dax +EXPORT_SYMBOL_GPL vmlinux 0x0739c38e wm8350_reg_lock +EXPORT_SYMBOL_GPL vmlinux 0x073d764c scsi_check_sense +EXPORT_SYMBOL_GPL vmlinux 0x07413b77 efivar_entry_set_get_size +EXPORT_SYMBOL_GPL vmlinux 0x07483e75 regmap_add_irq_chip_np +EXPORT_SYMBOL_GPL vmlinux 0x074f98db synth_event_add_field +EXPORT_SYMBOL_GPL vmlinux 0x0754f147 clk_hw_is_enabled +EXPORT_SYMBOL_GPL vmlinux 0x0761b625 fsstack_copy_inode_size +EXPORT_SYMBOL_GPL vmlinux 0x076356e7 sfp_may_have_phy +EXPORT_SYMBOL_GPL vmlinux 0x07646cee ata_tf_to_fis +EXPORT_SYMBOL_GPL vmlinux 0x07827cdc pm_genpd_remove_device +EXPORT_SYMBOL_GPL vmlinux 0x07884ee9 acpi_pm_set_device_wakeup +EXPORT_SYMBOL_GPL vmlinux 0x079302b2 irq_get_irq_data +EXPORT_SYMBOL_GPL vmlinux 0x079ab9fe blkdev_nr_zones +EXPORT_SYMBOL_GPL vmlinux 0x07a1a397 sk_psock_tls_strp_read +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 0x07baad72 subsys_dev_iter_init +EXPORT_SYMBOL_GPL vmlinux 0x07bc9a58 rtnl_put_cacheinfo +EXPORT_SYMBOL_GPL vmlinux 0x07be6905 net_inc_egress_queue +EXPORT_SYMBOL_GPL vmlinux 0x07bf29cd get_cached_msi_msg +EXPORT_SYMBOL_GPL vmlinux 0x07c23703 hrtimer_try_to_cancel +EXPORT_SYMBOL_GPL vmlinux 0x07c25812 bus_remove_file +EXPORT_SYMBOL_GPL vmlinux 0x07cb43f3 devm_regulator_bulk_unregister_supply_alias +EXPORT_SYMBOL_GPL vmlinux 0x07df83b7 arizona_clk32k_enable +EXPORT_SYMBOL_GPL vmlinux 0x07edeba7 hv_free_hyperv_page +EXPORT_SYMBOL_GPL vmlinux 0x08087637 iomap_seek_hole +EXPORT_SYMBOL_GPL vmlinux 0x08135613 dax_write_cache +EXPORT_SYMBOL_GPL vmlinux 0x081bc5a0 regulator_set_voltage_time_sel +EXPORT_SYMBOL_GPL vmlinux 0x081ff359 bus_for_each_dev +EXPORT_SYMBOL_GPL vmlinux 0x0828d609 mc146818_get_time +EXPORT_SYMBOL_GPL vmlinux 0x082a383b rio_register_mport +EXPORT_SYMBOL_GPL vmlinux 0x083b4cec get_net_ns_by_fd +EXPORT_SYMBOL_GPL vmlinux 0x083c7e4d set_foreign_p2m_mapping +EXPORT_SYMBOL_GPL vmlinux 0x0840277c pm_runtime_barrier +EXPORT_SYMBOL_GPL vmlinux 0x08453a03 virtqueue_get_avail_addr +EXPORT_SYMBOL_GPL vmlinux 0x08496d41 hrtimer_sleeper_start_expires +EXPORT_SYMBOL_GPL vmlinux 0x0859f3bc ip6_push_pending_frames +EXPORT_SYMBOL_GPL vmlinux 0x0870adba acpi_device_fix_up_power +EXPORT_SYMBOL_GPL vmlinux 0x08795a28 crypto_unregister_aead +EXPORT_SYMBOL_GPL vmlinux 0x087bc451 pci_user_write_config_dword +EXPORT_SYMBOL_GPL vmlinux 0x087f5dc5 wm831x_of_match +EXPORT_SYMBOL_GPL vmlinux 0x089244e9 devlink_port_param_driverinit_value_set +EXPORT_SYMBOL_GPL vmlinux 0x08a81ec3 crypto_stats_aead_decrypt +EXPORT_SYMBOL_GPL vmlinux 0x08b16c42 devfreq_event_disable_edev +EXPORT_SYMBOL_GPL vmlinux 0x08b52c64 dbs_update +EXPORT_SYMBOL_GPL vmlinux 0x08c208cc dax_layout_busy_page +EXPORT_SYMBOL_GPL vmlinux 0x08c9266a rtc_initialize_alarm +EXPORT_SYMBOL_GPL vmlinux 0x08cbda0a acpi_data_fwnode_ops +EXPORT_SYMBOL_GPL vmlinux 0x08d3bf02 trace_vprintk +EXPORT_SYMBOL_GPL vmlinux 0x08d8dbd3 dev_pm_opp_detach_genpd +EXPORT_SYMBOL_GPL vmlinux 0x08e808bf crypto_remove_spawns +EXPORT_SYMBOL_GPL vmlinux 0x08f1c61f disk_part_iter_next +EXPORT_SYMBOL_GPL vmlinux 0x08fc2e19 trace_event_reg +EXPORT_SYMBOL_GPL vmlinux 0x0907d14d blocking_notifier_chain_register +EXPORT_SYMBOL_GPL vmlinux 0x091eb9b4 round_jiffies +EXPORT_SYMBOL_GPL vmlinux 0x0925493f clear_page_orig +EXPORT_SYMBOL_GPL vmlinux 0x0926d507 phy_modify_mmd_changed +EXPORT_SYMBOL_GPL vmlinux 0x09337cd0 __wake_up_locked_key +EXPORT_SYMBOL_GPL vmlinux 0x093786cf synth_event_add_field_str +EXPORT_SYMBOL_GPL vmlinux 0x093cdee3 usb_register_dev +EXPORT_SYMBOL_GPL vmlinux 0x09632c95 subsys_interface_register +EXPORT_SYMBOL_GPL vmlinux 0x096a7e6f x86_spec_ctrl_base +EXPORT_SYMBOL_GPL vmlinux 0x096b2418 __tracepoint_tcp_send_reset +EXPORT_SYMBOL_GPL vmlinux 0x09770c36 icc_link_destroy +EXPORT_SYMBOL_GPL vmlinux 0x099285a7 badblocks_set +EXPORT_SYMBOL_GPL vmlinux 0x09935a58 pm_generic_poweroff +EXPORT_SYMBOL_GPL vmlinux 0x0997f13e regulator_get_current_limit +EXPORT_SYMBOL_GPL vmlinux 0x09a5e501 ehci_suspend +EXPORT_SYMBOL_GPL vmlinux 0x09b53e14 interval_tree_remove +EXPORT_SYMBOL_GPL vmlinux 0x09d63265 list_lru_count_node +EXPORT_SYMBOL_GPL vmlinux 0x09ea3c7c rio_del_device +EXPORT_SYMBOL_GPL vmlinux 0x09f7d24a edac_pci_free_ctl_info +EXPORT_SYMBOL_GPL vmlinux 0x0a032a9e iommu_device_link +EXPORT_SYMBOL_GPL vmlinux 0x0a0c9d45 inet_peer_base_init +EXPORT_SYMBOL_GPL vmlinux 0x0a1cec53 get_task_mm +EXPORT_SYMBOL_GPL vmlinux 0x0a1d82b0 pciserial_init_ports +EXPORT_SYMBOL_GPL vmlinux 0x0a243600 register_virtio_driver +EXPORT_SYMBOL_GPL vmlinux 0x0a27bbaa spi_sync +EXPORT_SYMBOL_GPL vmlinux 0x0a502c98 dmar_platform_optin +EXPORT_SYMBOL_GPL vmlinux 0x0a56e8c9 devm_hwrng_unregister +EXPORT_SYMBOL_GPL vmlinux 0x0a571d77 fscrypt_ioctl_add_key +EXPORT_SYMBOL_GPL vmlinux 0x0a57c5b3 usb_remove_phy +EXPORT_SYMBOL_GPL vmlinux 0x0a5db566 iommu_device_sysfs_remove +EXPORT_SYMBOL_GPL vmlinux 0x0a6c4041 cn_netlink_send +EXPORT_SYMBOL_GPL vmlinux 0x0a6ce1cc sfp_select_interface +EXPORT_SYMBOL_GPL vmlinux 0x0a6e87fe adp5520_set_bits +EXPORT_SYMBOL_GPL vmlinux 0x0a864a5b pci_assign_unassigned_bus_resources +EXPORT_SYMBOL_GPL vmlinux 0x0a96ffb8 nvdimm_cmd_mask +EXPORT_SYMBOL_GPL vmlinux 0x0aa48f71 extcon_find_edev_by_node +EXPORT_SYMBOL_GPL vmlinux 0x0ac0cf2e kernfs_put +EXPORT_SYMBOL_GPL vmlinux 0x0ac13016 thermal_zone_bind_cooling_device +EXPORT_SYMBOL_GPL vmlinux 0x0ac8da67 blkg_prfill_rwstat +EXPORT_SYMBOL_GPL vmlinux 0x0acc2ade pci_add_dynid +EXPORT_SYMBOL_GPL vmlinux 0x0ad137d3 lpit_read_residency_count_address +EXPORT_SYMBOL_GPL vmlinux 0x0adcf594 __pm_runtime_idle +EXPORT_SYMBOL_GPL vmlinux 0x0ade4087 devlink_resources_unregister +EXPORT_SYMBOL_GPL vmlinux 0x0adedb0f crypto_grab_ahash +EXPORT_SYMBOL_GPL vmlinux 0x0ae834cd acpi_bind_one +EXPORT_SYMBOL_GPL vmlinux 0x0af3978c crypto_shash_final +EXPORT_SYMBOL_GPL vmlinux 0x0af40724 iommu_alloc_resv_region +EXPORT_SYMBOL_GPL vmlinux 0x0b07abe2 unshare_fs_struct +EXPORT_SYMBOL_GPL vmlinux 0x0b1508c2 acpi_subsys_poweroff +EXPORT_SYMBOL_GPL vmlinux 0x0b1bb9f9 synchronize_rcu_tasks +EXPORT_SYMBOL_GPL vmlinux 0x0b1e76c1 fsverity_verify_page +EXPORT_SYMBOL_GPL vmlinux 0x0b22e204 regulator_put +EXPORT_SYMBOL_GPL vmlinux 0x0b2db2d5 remove_resource +EXPORT_SYMBOL_GPL vmlinux 0x0b4584b1 gpiochip_line_is_open_drain +EXPORT_SYMBOL_GPL vmlinux 0x0b52e502 apei_resources_add +EXPORT_SYMBOL_GPL vmlinux 0x0b61cba0 xenbus_switch_state +EXPORT_SYMBOL_GPL vmlinux 0x0b63877b bus_set_iommu +EXPORT_SYMBOL_GPL vmlinux 0x0b7a7ba5 tty_port_default_client_ops +EXPORT_SYMBOL_GPL vmlinux 0x0b86a51d get_net_ns +EXPORT_SYMBOL_GPL vmlinux 0x0b899826 dev_pm_opp_get_suspend_opp_freq +EXPORT_SYMBOL_GPL vmlinux 0x0b93458f __devm_pci_epc_create +EXPORT_SYMBOL_GPL vmlinux 0x0b94493b irq_domain_add_legacy +EXPORT_SYMBOL_GPL vmlinux 0x0bab6f52 usb_autopm_put_interface +EXPORT_SYMBOL_GPL vmlinux 0x0bc49335 debugfs_create_u8 +EXPORT_SYMBOL_GPL vmlinux 0x0bca66c5 hwspin_lock_register +EXPORT_SYMBOL_GPL vmlinux 0x0bdd1460 ip_tunnel_get_stats64 +EXPORT_SYMBOL_GPL vmlinux 0x0c04e0de usb_reset_configuration +EXPORT_SYMBOL_GPL vmlinux 0x0c0d989f dma_get_merge_boundary +EXPORT_SYMBOL_GPL vmlinux 0x0c1f1b11 i2c_adapter_depth +EXPORT_SYMBOL_GPL vmlinux 0x0c2c5802 work_busy +EXPORT_SYMBOL_GPL vmlinux 0x0c32ff8a edac_pci_alloc_index +EXPORT_SYMBOL_GPL vmlinux 0x0c5ce4f6 mmu_interval_notifier_remove +EXPORT_SYMBOL_GPL vmlinux 0x0c789e05 cpufreq_cpu_get +EXPORT_SYMBOL_GPL vmlinux 0x0c805f93 clflush_cache_range +EXPORT_SYMBOL_GPL vmlinux 0x0c9a295a pinctrl_dev_get_devname +EXPORT_SYMBOL_GPL vmlinux 0x0ca0e881 led_sysfs_disable +EXPORT_SYMBOL_GPL vmlinux 0x0caec03c ata_common_sdev_attrs +EXPORT_SYMBOL_GPL vmlinux 0x0cb579c0 __free_iova +EXPORT_SYMBOL_GPL vmlinux 0x0cbe3ee2 software_node_unregister +EXPORT_SYMBOL_GPL vmlinux 0x0cc3b29e acpi_dev_filter_resource_type +EXPORT_SYMBOL_GPL vmlinux 0x0cc4f1e2 crypto_skcipher_setkey +EXPORT_SYMBOL_GPL vmlinux 0x0cc89964 bio_disassociate_blkg +EXPORT_SYMBOL_GPL vmlinux 0x0ccc8b65 devlink_resource_size_get +EXPORT_SYMBOL_GPL vmlinux 0x0cd40973 serdev_device_write_flush +EXPORT_SYMBOL_GPL vmlinux 0x0cf1affe tty_ldisc_release +EXPORT_SYMBOL_GPL vmlinux 0x0d0b7401 get_net_ns_by_pid +EXPORT_SYMBOL_GPL vmlinux 0x0d0f493f ncsi_vlan_rx_add_vid +EXPORT_SYMBOL_GPL vmlinux 0x0d116ad0 __sbitmap_queue_get +EXPORT_SYMBOL_GPL vmlinux 0x0d459213 work_on_cpu_safe +EXPORT_SYMBOL_GPL vmlinux 0x0d4961de nf_log_buf_open +EXPORT_SYMBOL_GPL vmlinux 0x0d5618dd register_wide_hw_breakpoint +EXPORT_SYMBOL_GPL vmlinux 0x0d64e3fa usb_add_hcd +EXPORT_SYMBOL_GPL vmlinux 0x0d76d549 fb_bl_default_curve +EXPORT_SYMBOL_GPL vmlinux 0x0d81b6ce fsverity_file_open +EXPORT_SYMBOL_GPL vmlinux 0x0da09823 da9052_enable_irq +EXPORT_SYMBOL_GPL vmlinux 0x0dbd1ed7 pstore_register +EXPORT_SYMBOL_GPL vmlinux 0x0dc349a2 nvm_set_chunk_meta +EXPORT_SYMBOL_GPL vmlinux 0x0dc373ab wm5110_aod +EXPORT_SYMBOL_GPL vmlinux 0x0dcb3ee8 divider_recalc_rate +EXPORT_SYMBOL_GPL vmlinux 0x0ddb1cd7 llist_reverse_order +EXPORT_SYMBOL_GPL vmlinux 0x0ddb5693 inet6_hash +EXPORT_SYMBOL_GPL vmlinux 0x0df10a54 pm_generic_poweroff_noirq +EXPORT_SYMBOL_GPL vmlinux 0x0df9de48 trace_array_get_by_name +EXPORT_SYMBOL_GPL vmlinux 0x0e007edf xen_evtchn_nr_channels +EXPORT_SYMBOL_GPL vmlinux 0x0e05f244 thermal_zone_device_update +EXPORT_SYMBOL_GPL vmlinux 0x0e13cb4d apei_resources_release +EXPORT_SYMBOL_GPL vmlinux 0x0e1bc5d2 exportfs_encode_inode_fh +EXPORT_SYMBOL_GPL vmlinux 0x0e27a3d3 skb_zerocopy_iter_dgram +EXPORT_SYMBOL_GPL vmlinux 0x0e2a11b0 clk_register_fixed_factor +EXPORT_SYMBOL_GPL vmlinux 0x0e3ea190 ata_sas_tport_add +EXPORT_SYMBOL_GPL vmlinux 0x0e45b5cc xdp_rxq_info_reg_mem_model +EXPORT_SYMBOL_GPL vmlinux 0x0e499ecf ip_route_output_tunnel +EXPORT_SYMBOL_GPL vmlinux 0x0e535bab fat_dir_empty +EXPORT_SYMBOL_GPL vmlinux 0x0e53e350 devlink_resource_occ_get_unregister +EXPORT_SYMBOL_GPL vmlinux 0x0e54ea4f synth_event_trace_end +EXPORT_SYMBOL_GPL vmlinux 0x0e6b79af static_key_disable_cpuslocked +EXPORT_SYMBOL_GPL vmlinux 0x0e92f01c iommu_detach_device +EXPORT_SYMBOL_GPL vmlinux 0x0e984044 debugfs_read_file_bool +EXPORT_SYMBOL_GPL vmlinux 0x0e997c6e regmap_check_range_table +EXPORT_SYMBOL_GPL vmlinux 0x0ea5cbce xen_irq_lateeoi +EXPORT_SYMBOL_GPL vmlinux 0x0ea9b1f0 ata_ncq_sdev_attrs +EXPORT_SYMBOL_GPL vmlinux 0x0eb0bbf9 kmsg_dump_get_buffer +EXPORT_SYMBOL_GPL vmlinux 0x0ec096b0 hv_read_reference_counter +EXPORT_SYMBOL_GPL vmlinux 0x0ec46740 __root_device_register +EXPORT_SYMBOL_GPL vmlinux 0x0eef3387 regulator_unregister_supply_alias +EXPORT_SYMBOL_GPL vmlinux 0x0eef6b53 regulator_is_enabled_regmap +EXPORT_SYMBOL_GPL vmlinux 0x0f0b21fe pm_trace_rtc_abused +EXPORT_SYMBOL_GPL vmlinux 0x0f180070 ring_buffer_free_read_page +EXPORT_SYMBOL_GPL vmlinux 0x0f2a8d25 __blk_req_zone_write_lock +EXPORT_SYMBOL_GPL vmlinux 0x0f2d7d87 mce_unregister_decode_chain +EXPORT_SYMBOL_GPL vmlinux 0x0f3058a4 dev_pm_opp_put_clkname +EXPORT_SYMBOL_GPL vmlinux 0x0f31c40f ata_scsi_ioctl +EXPORT_SYMBOL_GPL vmlinux 0x0f3f750b ping_rcv +EXPORT_SYMBOL_GPL vmlinux 0x0f47d9f6 crypto_find_alg +EXPORT_SYMBOL_GPL vmlinux 0x0f4cf743 ata_pci_device_resume +EXPORT_SYMBOL_GPL vmlinux 0x0f4ec383 devm_irq_setup_generic_chip +EXPORT_SYMBOL_GPL vmlinux 0x0f53e2be ping_get_port +EXPORT_SYMBOL_GPL vmlinux 0x0f5ae8d9 xenbus_register_driver_common +EXPORT_SYMBOL_GPL vmlinux 0x0f65692b dev_set_name +EXPORT_SYMBOL_GPL vmlinux 0x0f66be61 tcp_rate_check_app_limited +EXPORT_SYMBOL_GPL vmlinux 0x0f7ca236 dmi_memdev_name +EXPORT_SYMBOL_GPL vmlinux 0x0f865f9d crypto_unregister_skcipher +EXPORT_SYMBOL_GPL vmlinux 0x0f8c4038 led_blink_set +EXPORT_SYMBOL_GPL vmlinux 0x0f930d3b fwnode_property_read_u32_array +EXPORT_SYMBOL_GPL vmlinux 0x0fa77eb2 __class_register +EXPORT_SYMBOL_GPL vmlinux 0x0fbb7344 memremap_compat_align +EXPORT_SYMBOL_GPL vmlinux 0x0fc37562 amd_smn_read +EXPORT_SYMBOL_GPL vmlinux 0x0fcc1969 copy_from_user_nmi +EXPORT_SYMBOL_GPL vmlinux 0x0fcfbd54 security_path_chown +EXPORT_SYMBOL_GPL vmlinux 0x0fdd595d spi_bus_type +EXPORT_SYMBOL_GPL vmlinux 0x0fe1727e adp5520_read +EXPORT_SYMBOL_GPL vmlinux 0x0fe7617c __tracepoint_suspend_resume +EXPORT_SYMBOL_GPL vmlinux 0x100fed20 crypto_comp_compress +EXPORT_SYMBOL_GPL vmlinux 0x10138352 tracing_on +EXPORT_SYMBOL_GPL vmlinux 0x1038b96f adxl_get_component_names +EXPORT_SYMBOL_GPL vmlinux 0x10537b19 ipv4_sk_update_pmtu +EXPORT_SYMBOL_GPL vmlinux 0x1062aa27 power_supply_batinfo_ocv2cap +EXPORT_SYMBOL_GPL vmlinux 0x1089e218 __spi_alloc_controller +EXPORT_SYMBOL_GPL vmlinux 0x108a0acd bstr_printf +EXPORT_SYMBOL_GPL vmlinux 0x10a54a64 rio_dev_get +EXPORT_SYMBOL_GPL vmlinux 0x10c1c558 trace_event_raw_init +EXPORT_SYMBOL_GPL vmlinux 0x10c2e75a kmsg_dump_register +EXPORT_SYMBOL_GPL vmlinux 0x10c5a258 dev_pm_opp_set_supported_hw +EXPORT_SYMBOL_GPL vmlinux 0x10c9c0ee __clocksource_update_freq_scale +EXPORT_SYMBOL_GPL vmlinux 0x10e1d3e5 fwnode_get_parent +EXPORT_SYMBOL_GPL vmlinux 0x10e61605 alloc_empty_file +EXPORT_SYMBOL_GPL vmlinux 0x10e8ec3f acpi_get_pci_dev +EXPORT_SYMBOL_GPL vmlinux 0x10ecc52c usb_amd_quirk_pll_enable +EXPORT_SYMBOL_GPL vmlinux 0x10ed4892 pci_dev_run_wake +EXPORT_SYMBOL_GPL vmlinux 0x110106c1 cper_severity_to_aer +EXPORT_SYMBOL_GPL vmlinux 0x11075d05 usb_alloc_dev +EXPORT_SYMBOL_GPL vmlinux 0x113259c8 spi_get_next_queued_message +EXPORT_SYMBOL_GPL vmlinux 0x114746f5 extcon_unregister_notifier_all +EXPORT_SYMBOL_GPL vmlinux 0x11501693 sata_scr_read +EXPORT_SYMBOL_GPL vmlinux 0x1172d487 rhashtable_insert_slow +EXPORT_SYMBOL_GPL vmlinux 0x1185c249 arch_apei_report_mem_error +EXPORT_SYMBOL_GPL vmlinux 0x11a18664 inet6_csk_update_pmtu +EXPORT_SYMBOL_GPL vmlinux 0x11a2e0ac crypto_dh_key_len +EXPORT_SYMBOL_GPL vmlinux 0x11c23240 crypto_attr_u32 +EXPORT_SYMBOL_GPL vmlinux 0x11cb2e45 pci_sriov_configure_simple +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 0x11f5fc63 devm_remove_action +EXPORT_SYMBOL_GPL vmlinux 0x11fd644b anon_inode_getfd +EXPORT_SYMBOL_GPL vmlinux 0x120f02cc crypto_stats_init +EXPORT_SYMBOL_GPL vmlinux 0x1211eb14 regulator_set_active_discharge_regmap +EXPORT_SYMBOL_GPL vmlinux 0x121d958a unregister_die_notifier +EXPORT_SYMBOL_GPL vmlinux 0x122caff4 gov_attr_set_init +EXPORT_SYMBOL_GPL vmlinux 0x1234e483 get_cpu_iowait_time_us +EXPORT_SYMBOL_GPL vmlinux 0x1234ffa1 cper_estatus_check_header +EXPORT_SYMBOL_GPL vmlinux 0x124cd645 usb_hcd_unlink_urb_from_ep +EXPORT_SYMBOL_GPL vmlinux 0x125e01ec ip6_route_input_lookup +EXPORT_SYMBOL_GPL vmlinux 0x12614366 gpiod_get_raw_value_cansleep +EXPORT_SYMBOL_GPL vmlinux 0x1262ae70 pinctrl_get +EXPORT_SYMBOL_GPL vmlinux 0x1268f357 resume_device_irqs +EXPORT_SYMBOL_GPL vmlinux 0x12817edf crypto_unregister_kpp +EXPORT_SYMBOL_GPL vmlinux 0x12897252 ipv6_find_tlv +EXPORT_SYMBOL_GPL vmlinux 0x1289edb9 bpf_trace_run7 +EXPORT_SYMBOL_GPL vmlinux 0x129334ae sfp_parse_support +EXPORT_SYMBOL_GPL vmlinux 0x129c4e87 skb_scrub_packet +EXPORT_SYMBOL_GPL vmlinux 0x129ce117 dev_pm_opp_find_freq_exact +EXPORT_SYMBOL_GPL vmlinux 0x12a1d62f od_register_powersave_bias_handler +EXPORT_SYMBOL_GPL vmlinux 0x12ab31f1 idr_alloc_u32 +EXPORT_SYMBOL_GPL vmlinux 0x12bf064c udp4_lib_lookup +EXPORT_SYMBOL_GPL vmlinux 0x12bf6c8c platform_get_irq_optional +EXPORT_SYMBOL_GPL vmlinux 0x12c9d8e2 xhci_dbg_trace +EXPORT_SYMBOL_GPL vmlinux 0x12cce294 tpm_get_timeouts +EXPORT_SYMBOL_GPL vmlinux 0x12dbc8f6 percpu_ref_switch_to_atomic_sync +EXPORT_SYMBOL_GPL vmlinux 0x12e285ec is_uv_system +EXPORT_SYMBOL_GPL vmlinux 0x12e30e98 pci_device_is_present +EXPORT_SYMBOL_GPL vmlinux 0x12eba01c devm_regmap_add_irq_chip +EXPORT_SYMBOL_GPL vmlinux 0x12fcc187 regmap_field_read +EXPORT_SYMBOL_GPL vmlinux 0x131a5ed7 regmap_del_irq_chip +EXPORT_SYMBOL_GPL vmlinux 0x131a6978 rio_get_device +EXPORT_SYMBOL_GPL vmlinux 0x131db64a system_long_wq +EXPORT_SYMBOL_GPL vmlinux 0x133969d7 __trace_printk +EXPORT_SYMBOL_GPL vmlinux 0x133bb7e1 hrtimer_init_sleeper +EXPORT_SYMBOL_GPL vmlinux 0x13591355 i2c_dw_probe_master +EXPORT_SYMBOL_GPL vmlinux 0x13596c13 serdev_controller_remove +EXPORT_SYMBOL_GPL vmlinux 0x136209db power_supply_reg_notifier +EXPORT_SYMBOL_GPL vmlinux 0x1385a956 ethnl_cable_test_fault_length +EXPORT_SYMBOL_GPL vmlinux 0x138aff76 gnttab_init +EXPORT_SYMBOL_GPL vmlinux 0x138e0957 dax_write_cache_enabled +EXPORT_SYMBOL_GPL vmlinux 0x13c19ee7 alarm_forward_now +EXPORT_SYMBOL_GPL vmlinux 0x13ce87e8 asn1_ber_decoder +EXPORT_SYMBOL_GPL vmlinux 0x13df808b serdev_device_set_baudrate +EXPORT_SYMBOL_GPL vmlinux 0x13e3aa9a smca_banks +EXPORT_SYMBOL_GPL vmlinux 0x13ed8784 sdev_evt_alloc +EXPORT_SYMBOL_GPL vmlinux 0x1401b044 dev_pm_opp_init_cpufreq_table +EXPORT_SYMBOL_GPL vmlinux 0x1402e5f1 pci_store_saved_state +EXPORT_SYMBOL_GPL vmlinux 0x14030bdb __devm_alloc_percpu +EXPORT_SYMBOL_GPL vmlinux 0x1403ad09 cpufreq_add_update_util_hook +EXPORT_SYMBOL_GPL vmlinux 0x141225b7 __hwspin_trylock +EXPORT_SYMBOL_GPL vmlinux 0x1418238a __tracepoint_cpu_frequency +EXPORT_SYMBOL_GPL vmlinux 0x141a0464 regmap_write +EXPORT_SYMBOL_GPL vmlinux 0x141f38bf ktime_get_raw_fast_ns +EXPORT_SYMBOL_GPL vmlinux 0x1427bdfd yield_to +EXPORT_SYMBOL_GPL vmlinux 0x14294069 __regmap_init +EXPORT_SYMBOL_GPL vmlinux 0x144e7204 trace_event_buffer_commit +EXPORT_SYMBOL_GPL vmlinux 0x1453ea48 ip_route_output_key_hash +EXPORT_SYMBOL_GPL vmlinux 0x1459a7c4 blockdev_superblock +EXPORT_SYMBOL_GPL vmlinux 0x146273e5 pci_epc_mem_free_addr +EXPORT_SYMBOL_GPL vmlinux 0x14777500 virtio_config_changed +EXPORT_SYMBOL_GPL vmlinux 0x149db3f0 clk_hw_unregister +EXPORT_SYMBOL_GPL vmlinux 0x14d01690 clk_mux_index_to_val +EXPORT_SYMBOL_GPL vmlinux 0x14e1e16c arizona_request_irq +EXPORT_SYMBOL_GPL vmlinux 0x14ec4fdb evtchn_put +EXPORT_SYMBOL_GPL vmlinux 0x1505255b regulator_set_voltage_sel_regmap +EXPORT_SYMBOL_GPL vmlinux 0x150ba612 nf_queue_nf_hook_drop +EXPORT_SYMBOL_GPL vmlinux 0x15185987 irq_remove_generic_chip +EXPORT_SYMBOL_GPL vmlinux 0x1523261d rt_mutex_lock_interruptible +EXPORT_SYMBOL_GPL vmlinux 0x152b7e1d iommu_dev_enable_feature +EXPORT_SYMBOL_GPL vmlinux 0x152fdfac iomap_writepages +EXPORT_SYMBOL_GPL vmlinux 0x153b60a6 klist_del +EXPORT_SYMBOL_GPL vmlinux 0x153d2430 nf_queue +EXPORT_SYMBOL_GPL vmlinux 0x1548c70f __udp6_lib_lookup +EXPORT_SYMBOL_GPL vmlinux 0x154c01a1 __blkdev_driver_ioctl +EXPORT_SYMBOL_GPL vmlinux 0x15510a89 devlink_fmsg_binary_put +EXPORT_SYMBOL_GPL vmlinux 0x1559c019 pci_generic_config_write +EXPORT_SYMBOL_GPL vmlinux 0x156cdac8 __tracepoint_kfree_skb +EXPORT_SYMBOL_GPL vmlinux 0x157a8bec __nvdimm_create +EXPORT_SYMBOL_GPL vmlinux 0x159b81c2 ata_sff_wait_ready +EXPORT_SYMBOL_GPL vmlinux 0x159f9cd2 sk_msg_memcopy_from_iter +EXPORT_SYMBOL_GPL vmlinux 0x15a4965f phy_optional_get +EXPORT_SYMBOL_GPL vmlinux 0x15b35611 devlink_region_snapshot_id_put +EXPORT_SYMBOL_GPL vmlinux 0x15b9493c edac_device_free_ctl_info +EXPORT_SYMBOL_GPL vmlinux 0x15c1ad9d dma_buf_attach +EXPORT_SYMBOL_GPL vmlinux 0x15cae087 devlink_params_unregister +EXPORT_SYMBOL_GPL vmlinux 0x15cf672b virtqueue_enable_cb_prepare +EXPORT_SYMBOL_GPL vmlinux 0x15ea2648 hwpoison_filter_flags_mask +EXPORT_SYMBOL_GPL vmlinux 0x15ea7711 devm_regulator_get_optional +EXPORT_SYMBOL_GPL vmlinux 0x160da6ac __efivar_entry_iter +EXPORT_SYMBOL_GPL vmlinux 0x164a341a kill_pid_usb_asyncio +EXPORT_SYMBOL_GPL vmlinux 0x16516798 osc_pc_lpi_support_confirmed +EXPORT_SYMBOL_GPL vmlinux 0x16623712 xhci_shutdown +EXPORT_SYMBOL_GPL vmlinux 0x16691d01 regulator_list_voltage_pickable_linear_range +EXPORT_SYMBOL_GPL vmlinux 0x166a7b5b battery_hook_register +EXPORT_SYMBOL_GPL vmlinux 0x166d6443 __tracepoint_pelt_rt_tp +EXPORT_SYMBOL_GPL vmlinux 0x166db1b5 sched_clock_idle_wakeup_event +EXPORT_SYMBOL_GPL vmlinux 0x167d7113 acpi_bus_register_early_device +EXPORT_SYMBOL_GPL vmlinux 0x16909d13 bpf_prog_create +EXPORT_SYMBOL_GPL vmlinux 0x16bdaa76 devm_regulator_bulk_register_supply_alias +EXPORT_SYMBOL_GPL vmlinux 0x16c69786 udp_init_sock +EXPORT_SYMBOL_GPL vmlinux 0x16cfbd80 ata_host_register +EXPORT_SYMBOL_GPL vmlinux 0x16d06678 xenbus_dev_remove +EXPORT_SYMBOL_GPL vmlinux 0x16d68f2e pm_runtime_get_if_active +EXPORT_SYMBOL_GPL vmlinux 0x16da1f88 devlink_fmsg_u32_put +EXPORT_SYMBOL_GPL vmlinux 0x16f15139 bind_evtchn_to_irq +EXPORT_SYMBOL_GPL vmlinux 0x16f2ad30 trace_output_call +EXPORT_SYMBOL_GPL vmlinux 0x17065d05 reset_controller_unregister +EXPORT_SYMBOL_GPL vmlinux 0x170cc36c put_timespec64 +EXPORT_SYMBOL_GPL vmlinux 0x1741ddee trace_seq_puts +EXPORT_SYMBOL_GPL vmlinux 0x1749331a fsnotify_find_mark +EXPORT_SYMBOL_GPL vmlinux 0x174e123b kthread_data +EXPORT_SYMBOL_GPL vmlinux 0x1756851d mnt_want_write_file +EXPORT_SYMBOL_GPL vmlinux 0x175b547d debugfs_create_x8 +EXPORT_SYMBOL_GPL vmlinux 0x176031a7 devlink_fmsg_string_put +EXPORT_SYMBOL_GPL vmlinux 0x17614bf3 apei_resources_sub +EXPORT_SYMBOL_GPL vmlinux 0x176adf76 xenmem_reservation_decrease +EXPORT_SYMBOL_GPL vmlinux 0x177c338d twl_get_version +EXPORT_SYMBOL_GPL vmlinux 0x177fece2 spi_res_release +EXPORT_SYMBOL_GPL vmlinux 0x178341f8 dax_finish_sync_fault +EXPORT_SYMBOL_GPL vmlinux 0x1791c2bb badblocks_exit +EXPORT_SYMBOL_GPL vmlinux 0x1798752a dev_attr_em_message_type +EXPORT_SYMBOL_GPL vmlinux 0x179c3a92 device_connection_find_match +EXPORT_SYMBOL_GPL vmlinux 0x17a28b9d devm_phy_package_join +EXPORT_SYMBOL_GPL vmlinux 0x17a2e2e2 input_ff_event +EXPORT_SYMBOL_GPL vmlinux 0x17a3993f __tracepoint_block_split +EXPORT_SYMBOL_GPL vmlinux 0x17a7e6ab uhci_check_and_reset_hc +EXPORT_SYMBOL_GPL vmlinux 0x17add64b gdt_page +EXPORT_SYMBOL_GPL vmlinux 0x17ae8227 bpf_map_put +EXPORT_SYMBOL_GPL vmlinux 0x17b02e97 phy_remove_lookup +EXPORT_SYMBOL_GPL vmlinux 0x17b5b7d1 blkg_rwstat_recursive_sum +EXPORT_SYMBOL_GPL vmlinux 0x17baa7b6 irq_domain_associate_many +EXPORT_SYMBOL_GPL vmlinux 0x17cac280 edac_pci_alloc_ctl_info +EXPORT_SYMBOL_GPL vmlinux 0x17d6239e devm_regulator_unregister_notifier +EXPORT_SYMBOL_GPL vmlinux 0x17e01f11 erst_clear +EXPORT_SYMBOL_GPL vmlinux 0x17e909ef fuse_fill_super_common +EXPORT_SYMBOL_GPL vmlinux 0x17eb09af __clk_hw_register_divider +EXPORT_SYMBOL_GPL vmlinux 0x17ffd1dc blk_clear_pm_only +EXPORT_SYMBOL_GPL vmlinux 0x18008c59 ring_buffer_resize +EXPORT_SYMBOL_GPL vmlinux 0x180113e1 vfio_iommu_group_get +EXPORT_SYMBOL_GPL vmlinux 0x180226e5 ata_port_schedule_eh +EXPORT_SYMBOL_GPL vmlinux 0x180d3e2a blk_mq_quiesce_queue_nowait +EXPORT_SYMBOL_GPL vmlinux 0x18139251 inet6_lookup +EXPORT_SYMBOL_GPL vmlinux 0x1824b659 ata_sff_dma_pause +EXPORT_SYMBOL_GPL vmlinux 0x18383d2d ethnl_cable_test_step +EXPORT_SYMBOL_GPL vmlinux 0x183f1be8 power_supply_set_battery_charged +EXPORT_SYMBOL_GPL vmlinux 0x18582826 amd_pmu_disable_virt +EXPORT_SYMBOL_GPL vmlinux 0x18615d35 efivar_supports_writes +EXPORT_SYMBOL_GPL vmlinux 0x1869a476 ehci_handshake +EXPORT_SYMBOL_GPL vmlinux 0x186b9d2b spi_finalize_current_transfer +EXPORT_SYMBOL_GPL vmlinux 0x1871e164 __dev_forward_skb +EXPORT_SYMBOL_GPL vmlinux 0x18728552 sprint_OID +EXPORT_SYMBOL_GPL vmlinux 0x1878fe6d __pm_runtime_suspend +EXPORT_SYMBOL_GPL vmlinux 0x18864dd5 attribute_container_register +EXPORT_SYMBOL_GPL vmlinux 0x188dcd7d pci_find_next_ht_capability +EXPORT_SYMBOL_GPL vmlinux 0x189157c0 __vfs_removexattr_locked +EXPORT_SYMBOL_GPL vmlinux 0x18a66e94 transport_configure_device +EXPORT_SYMBOL_GPL vmlinux 0x18a68f7c i2c_recover_bus +EXPORT_SYMBOL_GPL vmlinux 0x18b34743 pm_clk_resume +EXPORT_SYMBOL_GPL vmlinux 0x18b53a2b kgdb_unregister_io_module +EXPORT_SYMBOL_GPL vmlinux 0x18dfec2d sk_psock_init +EXPORT_SYMBOL_GPL vmlinux 0x18e4f8aa swphy_read_reg +EXPORT_SYMBOL_GPL vmlinux 0x18fb2caf cpus_read_unlock +EXPORT_SYMBOL_GPL vmlinux 0x1903d80e inet_csk_get_port +EXPORT_SYMBOL_GPL vmlinux 0x1918c670 devm_i2c_new_dummy_device +EXPORT_SYMBOL_GPL vmlinux 0x191d86f3 i2c_dw_adjust_bus_speed +EXPORT_SYMBOL_GPL vmlinux 0x1925d62d mbox_controller_unregister +EXPORT_SYMBOL_GPL vmlinux 0x19272493 spi_mem_dirmap_read +EXPORT_SYMBOL_GPL vmlinux 0x19338604 synth_event_add_next_val +EXPORT_SYMBOL_GPL vmlinux 0x193b5fc9 gnttab_page_cache_put +EXPORT_SYMBOL_GPL vmlinux 0x193dfdf6 klp_get_prev_state +EXPORT_SYMBOL_GPL vmlinux 0x19541d1d pwm_set_chip_data +EXPORT_SYMBOL_GPL vmlinux 0x196614ce hw_breakpoint_restore +EXPORT_SYMBOL_GPL vmlinux 0x19745b9a nvdimm_blk_region_create +EXPORT_SYMBOL_GPL vmlinux 0x197eaca8 wbc_account_cgroup_owner +EXPORT_SYMBOL_GPL vmlinux 0x199e6640 pkcs7_validate_trust +EXPORT_SYMBOL_GPL vmlinux 0x199f09d2 devm_pinctrl_unregister +EXPORT_SYMBOL_GPL vmlinux 0x19a304ba usb_disabled +EXPORT_SYMBOL_GPL vmlinux 0x19a648d4 dax_iomap_fault +EXPORT_SYMBOL_GPL vmlinux 0x19a8883e crypto_grab_spawn +EXPORT_SYMBOL_GPL vmlinux 0x19bed447 cpufreq_dbs_governor_exit +EXPORT_SYMBOL_GPL vmlinux 0x19e386f3 of_clk_hw_register +EXPORT_SYMBOL_GPL vmlinux 0x19e6cada dst_cache_get_ip6 +EXPORT_SYMBOL_GPL vmlinux 0x19e81304 btree_alloc +EXPORT_SYMBOL_GPL vmlinux 0x19e845c7 do_xdp_generic +EXPORT_SYMBOL_GPL vmlinux 0x19e944a0 ip6_dst_lookup_tunnel +EXPORT_SYMBOL_GPL vmlinux 0x19edd064 blkg_rwstat_exit +EXPORT_SYMBOL_GPL vmlinux 0x19ee51e2 ata_port_pbar_desc +EXPORT_SYMBOL_GPL vmlinux 0x19f462ab kfree_call_rcu +EXPORT_SYMBOL_GPL vmlinux 0x1a10c32b crypto_ft_tab +EXPORT_SYMBOL_GPL vmlinux 0x1a146ec3 usb_ep_type_string +EXPORT_SYMBOL_GPL vmlinux 0x1a20a13c __irq_set_handler +EXPORT_SYMBOL_GPL vmlinux 0x1a2623f8 vfs_write +EXPORT_SYMBOL_GPL vmlinux 0x1a3431ca mmc_sanitize +EXPORT_SYMBOL_GPL vmlinux 0x1a34ece0 tcp_ca_get_key_by_name +EXPORT_SYMBOL_GPL vmlinux 0x1a3ba8e8 rcuwait_wake_up +EXPORT_SYMBOL_GPL vmlinux 0x1a496319 _proc_mkdir +EXPORT_SYMBOL_GPL vmlinux 0x1a51c4af proc_get_parent_data +EXPORT_SYMBOL_GPL vmlinux 0x1a5ab876 trace_define_field +EXPORT_SYMBOL_GPL vmlinux 0x1a60c8a0 led_classdev_notify_brightness_hw_changed +EXPORT_SYMBOL_GPL vmlinux 0x1a6bf28f fsnotify_get_cookie +EXPORT_SYMBOL_GPL vmlinux 0x1a75c714 mmu_notifier_range_update_to_read_only +EXPORT_SYMBOL_GPL vmlinux 0x1aa15787 nexthop_select_path +EXPORT_SYMBOL_GPL vmlinux 0x1ab6d2c2 __fsnotify_inode_delete +EXPORT_SYMBOL_GPL vmlinux 0x1ab8a1d4 is_nvdimm_sync +EXPORT_SYMBOL_GPL vmlinux 0x1abb08b5 clk_hw_get_parent_by_index +EXPORT_SYMBOL_GPL vmlinux 0x1ac458a1 public_key_signature_free +EXPORT_SYMBOL_GPL vmlinux 0x1acd18c8 cpuset_cgrp_subsys_on_dfl_key +EXPORT_SYMBOL_GPL vmlinux 0x1ad098fd bus_register +EXPORT_SYMBOL_GPL vmlinux 0x1ae32269 bdev_disk_changed +EXPORT_SYMBOL_GPL vmlinux 0x1ae3a2de usb_hub_find_child +EXPORT_SYMBOL_GPL vmlinux 0x1aef8cf5 __skb_get_hash_symmetric +EXPORT_SYMBOL_GPL vmlinux 0x1af07207 devlink_dpipe_table_counter_enabled +EXPORT_SYMBOL_GPL vmlinux 0x1af07932 __page_file_mapping +EXPORT_SYMBOL_GPL vmlinux 0x1af267f8 int_pow +EXPORT_SYMBOL_GPL vmlinux 0x1af4a80c ncsi_register_dev +EXPORT_SYMBOL_GPL vmlinux 0x1afd5eec bus_for_each_drv +EXPORT_SYMBOL_GPL vmlinux 0x1aff3d55 mce_register_injector_chain +EXPORT_SYMBOL_GPL vmlinux 0x1b07b533 dev_pm_clear_wake_irq +EXPORT_SYMBOL_GPL vmlinux 0x1b080e47 ata_wait_after_reset +EXPORT_SYMBOL_GPL vmlinux 0x1b1471f3 alarm_start +EXPORT_SYMBOL_GPL vmlinux 0x1b30b7d1 nf_checksum +EXPORT_SYMBOL_GPL vmlinux 0x1b5059ce ata_id_xfermask +EXPORT_SYMBOL_GPL vmlinux 0x1b5f4377 trace_seq_putc +EXPORT_SYMBOL_GPL vmlinux 0x1b6131b9 alloc_iova_fast +EXPORT_SYMBOL_GPL vmlinux 0x1b6470ab iommu_sva_bind_gpasid +EXPORT_SYMBOL_GPL vmlinux 0x1b70a358 spi_mem_driver_register_with_owner +EXPORT_SYMBOL_GPL vmlinux 0x1b74672d usb_for_each_dev +EXPORT_SYMBOL_GPL vmlinux 0x1b7a9059 cpci_hp_register_controller +EXPORT_SYMBOL_GPL vmlinux 0x1b80385b acpi_subsys_runtime_resume +EXPORT_SYMBOL_GPL vmlinux 0x1b8822d8 pinctrl_gpio_direction_output +EXPORT_SYMBOL_GPL vmlinux 0x1b92e41d inet_putpeer +EXPORT_SYMBOL_GPL vmlinux 0x1ba237b0 default_cpu_present_to_apicid +EXPORT_SYMBOL_GPL vmlinux 0x1ba26c56 sdio_writesb +EXPORT_SYMBOL_GPL vmlinux 0x1bc5eebe pinctrl_gpio_direction_input +EXPORT_SYMBOL_GPL vmlinux 0x1bcc99fe sock_prot_inuse_add +EXPORT_SYMBOL_GPL vmlinux 0x1bce7dba tpmm_chip_alloc +EXPORT_SYMBOL_GPL vmlinux 0x1bcec770 fwnode_count_parents +EXPORT_SYMBOL_GPL vmlinux 0x1bee4974 sg_alloc_table_chained +EXPORT_SYMBOL_GPL vmlinux 0x1bf8226c fsverity_prepare_setattr +EXPORT_SYMBOL_GPL vmlinux 0x1bfbb8d7 gpiochip_request_own_desc +EXPORT_SYMBOL_GPL vmlinux 0x1c18bf64 usb_driver_release_interface +EXPORT_SYMBOL_GPL vmlinux 0x1c31dd4f vfs_truncate +EXPORT_SYMBOL_GPL vmlinux 0x1c42dc98 regulator_unlock +EXPORT_SYMBOL_GPL vmlinux 0x1c44b902 __blocking_notifier_call_chain +EXPORT_SYMBOL_GPL vmlinux 0x1c5541bd cpufreq_boost_enabled +EXPORT_SYMBOL_GPL vmlinux 0x1c5b1f28 irq_free_descs +EXPORT_SYMBOL_GPL vmlinux 0x1c5d1f2c inet_twsk_hashdance +EXPORT_SYMBOL_GPL vmlinux 0x1c5ff742 clk_get_phase +EXPORT_SYMBOL_GPL vmlinux 0x1c656c20 usb_phy_roothub_alloc +EXPORT_SYMBOL_GPL vmlinux 0x1c746687 kthread_unuse_mm +EXPORT_SYMBOL_GPL vmlinux 0x1c80d27d btree_geo128 +EXPORT_SYMBOL_GPL vmlinux 0x1c87a811 __round_jiffies_up +EXPORT_SYMBOL_GPL vmlinux 0x1c8f98d2 bpf_prog_put +EXPORT_SYMBOL_GPL vmlinux 0x1c92c5fc da9052_request_irq +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 0x1ccef265 devres_destroy +EXPORT_SYMBOL_GPL vmlinux 0x1ce83692 irq_chip_release_resources_parent +EXPORT_SYMBOL_GPL vmlinux 0x1cfe4101 clkdev_hw_create +EXPORT_SYMBOL_GPL vmlinux 0x1d04175e security_kernel_read_file +EXPORT_SYMBOL_GPL vmlinux 0x1d07283f clk_bulk_get_optional +EXPORT_SYMBOL_GPL vmlinux 0x1d13aad8 regulator_map_voltage_iterate +EXPORT_SYMBOL_GPL vmlinux 0x1d168109 phy_pm_runtime_get +EXPORT_SYMBOL_GPL vmlinux 0x1d222ced irq_get_irqchip_state +EXPORT_SYMBOL_GPL vmlinux 0x1d24c35c platform_add_devices +EXPORT_SYMBOL_GPL vmlinux 0x1d2e4a08 regmap_write_async +EXPORT_SYMBOL_GPL vmlinux 0x1d3a4794 serial8250_do_set_divisor +EXPORT_SYMBOL_GPL vmlinux 0x1d4a037a devm_kmalloc +EXPORT_SYMBOL_GPL vmlinux 0x1d736c4a iomap_dio_rw +EXPORT_SYMBOL_GPL vmlinux 0x1d77b0f8 unix_socket_table +EXPORT_SYMBOL_GPL vmlinux 0x1d94a218 dmi_memdev_handle +EXPORT_SYMBOL_GPL vmlinux 0x1da6adf4 alloc_page_buffers +EXPORT_SYMBOL_GPL vmlinux 0x1daea9e4 regulator_desc_list_voltage_linear_range +EXPORT_SYMBOL_GPL vmlinux 0x1db36a24 tcp_reno_cong_avoid +EXPORT_SYMBOL_GPL vmlinux 0x1dd006b4 sched_trace_rq_avg_irq +EXPORT_SYMBOL_GPL vmlinux 0x1dd78ac1 rio_mport_get_feature +EXPORT_SYMBOL_GPL vmlinux 0x1ddc03b8 devlink_param_driverinit_value_get +EXPORT_SYMBOL_GPL vmlinux 0x1df1a0d4 power_supply_get_drvdata +EXPORT_SYMBOL_GPL vmlinux 0x1e038d2e usb_deregister +EXPORT_SYMBOL_GPL vmlinux 0x1e0670c6 reset_control_release +EXPORT_SYMBOL_GPL vmlinux 0x1e1e7fa0 driver_register +EXPORT_SYMBOL_GPL vmlinux 0x1e2b016a gpiochip_free_own_desc +EXPORT_SYMBOL_GPL vmlinux 0x1e335ec4 usb_disable_ltm +EXPORT_SYMBOL_GPL vmlinux 0x1e44cc77 genphy_c45_restart_aneg +EXPORT_SYMBOL_GPL vmlinux 0x1e51dabb __tracepoint_detach_device_from_domain +EXPORT_SYMBOL_GPL vmlinux 0x1e5a5f22 sn_partition_id +EXPORT_SYMBOL_GPL vmlinux 0x1e6c1b58 sk_msg_return_zero +EXPORT_SYMBOL_GPL vmlinux 0x1e6ff241 usb_unlink_urb +EXPORT_SYMBOL_GPL vmlinux 0x1e7bbcb3 kernel_restart +EXPORT_SYMBOL_GPL vmlinux 0x1e892f4d rio_mport_read_config_16 +EXPORT_SYMBOL_GPL vmlinux 0x1e8b4903 sk_set_memalloc +EXPORT_SYMBOL_GPL vmlinux 0x1e8ef71a regmap_attach_dev +EXPORT_SYMBOL_GPL vmlinux 0x1e8fac8e wireless_nlevent_flush +EXPORT_SYMBOL_GPL vmlinux 0x1e9abb25 bpfilter_ops +EXPORT_SYMBOL_GPL vmlinux 0x1e9bc719 freq_qos_update_request +EXPORT_SYMBOL_GPL vmlinux 0x1e9cec72 device_add_groups +EXPORT_SYMBOL_GPL vmlinux 0x1ead1aa9 unregister_pernet_subsys +EXPORT_SYMBOL_GPL vmlinux 0x1eaec09e sbitmap_get +EXPORT_SYMBOL_GPL vmlinux 0x1eb9516e round_jiffies_relative +EXPORT_SYMBOL_GPL vmlinux 0x1ebf6c2a pci_power_names +EXPORT_SYMBOL_GPL vmlinux 0x1ec14f00 gnttab_dma_free_pages +EXPORT_SYMBOL_GPL vmlinux 0x1ec17f1b ata_bmdma_qc_prep +EXPORT_SYMBOL_GPL vmlinux 0x1ed43b8f scsi_internal_device_unblock_nowait +EXPORT_SYMBOL_GPL vmlinux 0x1ee7d3cd hrtimer_init +EXPORT_SYMBOL_GPL vmlinux 0x1ee96b04 task_cputime_adjusted +EXPORT_SYMBOL_GPL vmlinux 0x1ef48bf8 device_property_read_string_array +EXPORT_SYMBOL_GPL vmlinux 0x1ef9f48c spi_alloc_device +EXPORT_SYMBOL_GPL vmlinux 0x1f0cb5bf pm_power_off_prepare +EXPORT_SYMBOL_GPL vmlinux 0x1f0e19b0 shash_ahash_update +EXPORT_SYMBOL_GPL vmlinux 0x1f142dc2 rio_mport_write_config_8 +EXPORT_SYMBOL_GPL vmlinux 0x1f1ddd8d copy_mc_fragile +EXPORT_SYMBOL_GPL vmlinux 0x1f248aa1 ata_bmdma32_port_ops +EXPORT_SYMBOL_GPL vmlinux 0x1f449588 mctrl_gpio_disable_ms +EXPORT_SYMBOL_GPL vmlinux 0x1f563160 bpf_offload_dev_priv +EXPORT_SYMBOL_GPL vmlinux 0x1f59c45d devm_usb_put_phy +EXPORT_SYMBOL_GPL vmlinux 0x1f614cd8 gpiod_is_active_low +EXPORT_SYMBOL_GPL vmlinux 0x1f61b727 pin_user_pages_fast_only +EXPORT_SYMBOL_GPL vmlinux 0x1f718698 md_stop +EXPORT_SYMBOL_GPL vmlinux 0x1f8544b8 panic_timeout +EXPORT_SYMBOL_GPL vmlinux 0x1f9888b7 device_property_present +EXPORT_SYMBOL_GPL vmlinux 0x1fa1d95c sha256_zero_message_hash +EXPORT_SYMBOL_GPL vmlinux 0x1fa68437 sfp_bus_add_upstream +EXPORT_SYMBOL_GPL vmlinux 0x1fa70ff5 tty_standard_install +EXPORT_SYMBOL_GPL vmlinux 0x1faa0161 rio_mport_get_efb +EXPORT_SYMBOL_GPL vmlinux 0x1fb2e6ae __inet_inherit_port +EXPORT_SYMBOL_GPL vmlinux 0x1fb70eb9 gnttab_end_foreign_transfer_ref +EXPORT_SYMBOL_GPL vmlinux 0x1fb7a78e phy_speed_up +EXPORT_SYMBOL_GPL vmlinux 0x1fbafdb5 devfreq_event_get_edev_count +EXPORT_SYMBOL_GPL vmlinux 0x1fc3eb77 pm_generic_restore +EXPORT_SYMBOL_GPL vmlinux 0x1fd2b083 ata_port_freeze +EXPORT_SYMBOL_GPL vmlinux 0x1fe6e504 gpiod_add_hogs +EXPORT_SYMBOL_GPL vmlinux 0x202d4ed6 nvmem_cell_write +EXPORT_SYMBOL_GPL vmlinux 0x203d35b2 serial8250_rx_chars +EXPORT_SYMBOL_GPL vmlinux 0x204c56bc gpiochip_set_nested_irqchip +EXPORT_SYMBOL_GPL vmlinux 0x204f2c5c gnttab_free_grant_reference +EXPORT_SYMBOL_GPL vmlinux 0x20530607 badblocks_store +EXPORT_SYMBOL_GPL vmlinux 0x20642c2c led_trigger_read +EXPORT_SYMBOL_GPL vmlinux 0x206790d2 crypto_stats_kpp_set_secret +EXPORT_SYMBOL_GPL vmlinux 0x2082e5ff wakeup_source_unregister +EXPORT_SYMBOL_GPL vmlinux 0x20835a9f __xdp_release_frame +EXPORT_SYMBOL_GPL vmlinux 0x20899467 hv_stimer0_isr +EXPORT_SYMBOL_GPL vmlinux 0x2093f4dd clk_register_divider_table +EXPORT_SYMBOL_GPL vmlinux 0x20978fb9 idr_find +EXPORT_SYMBOL_GPL vmlinux 0x209cb7f3 raw_seq_stop +EXPORT_SYMBOL_GPL vmlinux 0x209fe2a7 usb_disable_lpm +EXPORT_SYMBOL_GPL vmlinux 0x20a021fa fuse_conn_get +EXPORT_SYMBOL_GPL vmlinux 0x20a63469 acpi_dev_get_resources +EXPORT_SYMBOL_GPL vmlinux 0x20a7d461 register_net_sysctl +EXPORT_SYMBOL_GPL vmlinux 0x20bd070d ata_sff_dev_classify +EXPORT_SYMBOL_GPL vmlinux 0x20c436c0 dev_pm_opp_free_cpufreq_table +EXPORT_SYMBOL_GPL vmlinux 0x20e51bf4 regulator_list_voltage +EXPORT_SYMBOL_GPL vmlinux 0x21033096 xdp_attachment_flags_ok +EXPORT_SYMBOL_GPL vmlinux 0x21076e56 mmc_send_tuning +EXPORT_SYMBOL_GPL vmlinux 0x2107c984 vmf_insert_pfn_pmd_prot +EXPORT_SYMBOL_GPL vmlinux 0x2113dd3c phy_reset +EXPORT_SYMBOL_GPL vmlinux 0x21200485 rdev_set_badblocks +EXPORT_SYMBOL_GPL vmlinux 0x213369ee irq_chip_set_parent_state +EXPORT_SYMBOL_GPL vmlinux 0x214de4da dm_get_table_device +EXPORT_SYMBOL_GPL vmlinux 0x2150b737 console_drivers +EXPORT_SYMBOL_GPL vmlinux 0x21548f62 __platform_register_drivers +EXPORT_SYMBOL_GPL vmlinux 0x21587b94 security_path_truncate +EXPORT_SYMBOL_GPL vmlinux 0x215f8528 nd_blk_region_provider_data +EXPORT_SYMBOL_GPL vmlinux 0x216de4e1 rcu_get_gp_kthreads_prio +EXPORT_SYMBOL_GPL vmlinux 0x2176e42a hwpoison_filter_memcg +EXPORT_SYMBOL_GPL vmlinux 0x21984dd8 devlink_is_reload_failed +EXPORT_SYMBOL_GPL vmlinux 0x21a24d02 devlink_resource_register +EXPORT_SYMBOL_GPL vmlinux 0x21a563da clk_get_accuracy +EXPORT_SYMBOL_GPL vmlinux 0x21ac8b77 iommu_group_get_by_id +EXPORT_SYMBOL_GPL vmlinux 0x21ad82ba vfio_del_group_dev +EXPORT_SYMBOL_GPL vmlinux 0x21af7fee thermal_zone_get_slope +EXPORT_SYMBOL_GPL vmlinux 0x21b708f2 sg_scsi_ioctl +EXPORT_SYMBOL_GPL vmlinux 0x21c21ecb sk_msg_zerocopy_from_iter +EXPORT_SYMBOL_GPL vmlinux 0x21c34c8f gnttab_end_foreign_transfer +EXPORT_SYMBOL_GPL vmlinux 0x21cd536a crypto_put_default_null_skcipher +EXPORT_SYMBOL_GPL vmlinux 0x21ddd1d4 crypto_stats_ahash_final +EXPORT_SYMBOL_GPL vmlinux 0x21dec9d3 virtqueue_add_inbuf_ctx +EXPORT_SYMBOL_GPL vmlinux 0x21ef1b66 l3mdev_update_flow +EXPORT_SYMBOL_GPL vmlinux 0x21f7463b arizona_set_irq_wake +EXPORT_SYMBOL_GPL vmlinux 0x21fd922d pci_slots_kset +EXPORT_SYMBOL_GPL vmlinux 0x2211a4c0 blk_op_str +EXPORT_SYMBOL_GPL vmlinux 0x221eab6d scatterwalk_copychunks +EXPORT_SYMBOL_GPL vmlinux 0x223633d2 led_set_brightness_nosleep +EXPORT_SYMBOL_GPL vmlinux 0x224685ea of_icc_get +EXPORT_SYMBOL_GPL vmlinux 0x2246b4dd __tracepoint_block_bio_remap +EXPORT_SYMBOL_GPL vmlinux 0x224f51bf nvmem_device_cell_read +EXPORT_SYMBOL_GPL vmlinux 0x225e45c7 virtqueue_get_used_addr +EXPORT_SYMBOL_GPL vmlinux 0x2287f8e4 da9052_regmap_config +EXPORT_SYMBOL_GPL vmlinux 0x22a5191a shmem_file_setup +EXPORT_SYMBOL_GPL vmlinux 0x22b1fb5b device_create +EXPORT_SYMBOL_GPL vmlinux 0x22c42b24 devlink_param_value_changed +EXPORT_SYMBOL_GPL vmlinux 0x22cde5f5 nvm_get_chunk_meta +EXPORT_SYMBOL_GPL vmlinux 0x22d9409b iomap_sort_ioends +EXPORT_SYMBOL_GPL vmlinux 0x22deb7ce pwm_lpss_suspend +EXPORT_SYMBOL_GPL vmlinux 0x22e47664 usb_deregister_device_driver +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 0x230ddb7f devm_nvmem_device_get +EXPORT_SYMBOL_GPL vmlinux 0x230f7e27 efivar_entry_add +EXPORT_SYMBOL_GPL vmlinux 0x230f92c7 devlink_free +EXPORT_SYMBOL_GPL vmlinux 0x2318faed scsi_device_from_queue +EXPORT_SYMBOL_GPL vmlinux 0x23323c31 crypto_unregister_shash +EXPORT_SYMBOL_GPL vmlinux 0x233338cd clk_register +EXPORT_SYMBOL_GPL vmlinux 0x23412816 rtc_tm_to_ktime +EXPORT_SYMBOL_GPL vmlinux 0x23416de6 devlink_health_reporter_create +EXPORT_SYMBOL_GPL vmlinux 0x234cf416 devlink_fmsg_string_pair_put +EXPORT_SYMBOL_GPL vmlinux 0x2356da31 ata_sff_freeze +EXPORT_SYMBOL_GPL vmlinux 0x237db31f i2c_bus_type +EXPORT_SYMBOL_GPL vmlinux 0x23864ce7 cpuset_mem_spread_node +EXPORT_SYMBOL_GPL vmlinux 0x2396c7f0 clk_set_parent +EXPORT_SYMBOL_GPL vmlinux 0x2397002d irq_set_chip_and_handler_name +EXPORT_SYMBOL_GPL vmlinux 0x23976ec5 acpi_dma_configure +EXPORT_SYMBOL_GPL vmlinux 0x23b3613c blk_stat_enable_accounting +EXPORT_SYMBOL_GPL vmlinux 0x23b4e0d7 clear_page_rep +EXPORT_SYMBOL_GPL vmlinux 0x23b8b68a irq_domain_reset_irq_data +EXPORT_SYMBOL_GPL vmlinux 0x23bbe090 regmap_async_complete_cb +EXPORT_SYMBOL_GPL vmlinux 0x23d1463a cdrom_read_tocentry +EXPORT_SYMBOL_GPL vmlinux 0x23d947eb subsys_dev_iter_next +EXPORT_SYMBOL_GPL vmlinux 0x23de4455 usb_phy_roothub_resume +EXPORT_SYMBOL_GPL vmlinux 0x23efa421 device_link_add +EXPORT_SYMBOL_GPL vmlinux 0x23f01b7b usb_driver_set_configuration +EXPORT_SYMBOL_GPL vmlinux 0x23f04f6c device_match_fwnode +EXPORT_SYMBOL_GPL vmlinux 0x23f1fc99 dummy_con +EXPORT_SYMBOL_GPL vmlinux 0x24006582 device_match_name +EXPORT_SYMBOL_GPL vmlinux 0x24044e81 ata_sff_lost_interrupt +EXPORT_SYMBOL_GPL vmlinux 0x240d7d50 crypto_stats_rng_seed +EXPORT_SYMBOL_GPL vmlinux 0x2410c338 x86_virt_spec_ctrl +EXPORT_SYMBOL_GPL vmlinux 0x242dd2bc tcp_set_keepalive +EXPORT_SYMBOL_GPL vmlinux 0x243f0b4b crypto_check_attr_type +EXPORT_SYMBOL_GPL vmlinux 0x2446bbe2 regcache_sync_region +EXPORT_SYMBOL_GPL vmlinux 0x24521563 ip6_append_data +EXPORT_SYMBOL_GPL vmlinux 0x24602a5a virtqueue_get_buf +EXPORT_SYMBOL_GPL vmlinux 0x24612b59 devm_device_add_groups +EXPORT_SYMBOL_GPL vmlinux 0x2464da17 gen_pool_size +EXPORT_SYMBOL_GPL vmlinux 0x2467f72e __strp_unpause +EXPORT_SYMBOL_GPL vmlinux 0x2469810f __rcu_read_unlock +EXPORT_SYMBOL_GPL vmlinux 0x246bf575 ip_local_out +EXPORT_SYMBOL_GPL vmlinux 0x246df185 hyperv_fill_flush_guest_mapping_list +EXPORT_SYMBOL_GPL vmlinux 0x24709b2f trace_seq_putmem +EXPORT_SYMBOL_GPL vmlinux 0x24780d2a perf_aux_output_skip +EXPORT_SYMBOL_GPL vmlinux 0x247994e7 gpiochip_add_pin_range +EXPORT_SYMBOL_GPL vmlinux 0x247ef831 kdb_unregister +EXPORT_SYMBOL_GPL vmlinux 0x24a680ce iommu_fwspec_init +EXPORT_SYMBOL_GPL vmlinux 0x24a6ca78 rtnl_af_register +EXPORT_SYMBOL_GPL vmlinux 0x24ad11db wakeup_sources_read_unlock +EXPORT_SYMBOL_GPL vmlinux 0x24affb6e device_get_phy_mode +EXPORT_SYMBOL_GPL vmlinux 0x24b54823 rio_dev_put +EXPORT_SYMBOL_GPL vmlinux 0x24ba3e74 hwmon_device_register_with_info +EXPORT_SYMBOL_GPL vmlinux 0x24bd64f5 tun_get_socket +EXPORT_SYMBOL_GPL vmlinux 0x24ccb785 xenbus_free_evtchn +EXPORT_SYMBOL_GPL vmlinux 0x24da0093 rcu_inkernel_boot_has_ended +EXPORT_SYMBOL_GPL vmlinux 0x24e188ff ethnl_cable_test_alloc +EXPORT_SYMBOL_GPL vmlinux 0x24e60219 phy_set_mode_ext +EXPORT_SYMBOL_GPL vmlinux 0x24eb7e32 leds_list +EXPORT_SYMBOL_GPL vmlinux 0x24f39c39 reset_control_reset +EXPORT_SYMBOL_GPL vmlinux 0x24f58a0d gpiod_export +EXPORT_SYMBOL_GPL vmlinux 0x24f63dcf ata_xfer_mask2mode +EXPORT_SYMBOL_GPL vmlinux 0x24fb412a syscon_regmap_lookup_by_phandle +EXPORT_SYMBOL_GPL vmlinux 0x25011326 tcp_unregister_ulp +EXPORT_SYMBOL_GPL vmlinux 0x25140598 rio_add_device +EXPORT_SYMBOL_GPL vmlinux 0x25227db9 gpiod_count +EXPORT_SYMBOL_GPL vmlinux 0x25301bc6 arch_wb_cache_pmem +EXPORT_SYMBOL_GPL vmlinux 0x25332b5f extcon_get_extcon_dev +EXPORT_SYMBOL_GPL vmlinux 0x25379e73 clk_set_min_rate +EXPORT_SYMBOL_GPL vmlinux 0x25622e65 nvmem_device_get +EXPORT_SYMBOL_GPL vmlinux 0x25812876 bpf_trace_run11 +EXPORT_SYMBOL_GPL vmlinux 0x25887869 nvdimm_clear_poison +EXPORT_SYMBOL_GPL vmlinux 0x2592fc6c console_printk +EXPORT_SYMBOL_GPL vmlinux 0x25ab7381 clk_hw_get_flags +EXPORT_SYMBOL_GPL vmlinux 0x25c4a73a page_mkclean +EXPORT_SYMBOL_GPL vmlinux 0x25c80434 irq_domain_xlate_onecell +EXPORT_SYMBOL_GPL vmlinux 0x25ce7384 ata_pci_bmdma_init +EXPORT_SYMBOL_GPL vmlinux 0x25d1c709 platform_device_del +EXPORT_SYMBOL_GPL vmlinux 0x25dbcada ata_pci_device_do_suspend +EXPORT_SYMBOL_GPL vmlinux 0x25e86faf ip6_input +EXPORT_SYMBOL_GPL vmlinux 0x25f02c87 xen_p2m_addr +EXPORT_SYMBOL_GPL vmlinux 0x25f9fe74 edac_pci_del_device +EXPORT_SYMBOL_GPL vmlinux 0x25fd75a5 devm_led_classdev_register_ext +EXPORT_SYMBOL_GPL vmlinux 0x2609dc27 of_reset_control_array_get +EXPORT_SYMBOL_GPL vmlinux 0x2612f440 iommu_device_unlink +EXPORT_SYMBOL_GPL vmlinux 0x26154e8a skcipher_walk_complete +EXPORT_SYMBOL_GPL vmlinux 0x262a7063 xen_start_info +EXPORT_SYMBOL_GPL vmlinux 0x263c7fce sata_sff_hardreset +EXPORT_SYMBOL_GPL vmlinux 0x263f039e xas_nomem +EXPORT_SYMBOL_GPL vmlinux 0x26520970 vm_memory_committed +EXPORT_SYMBOL_GPL vmlinux 0x2653284d acpi_device_uevent_modalias +EXPORT_SYMBOL_GPL vmlinux 0x265bbef9 kexec_crash_loaded +EXPORT_SYMBOL_GPL vmlinux 0x266b255c pci_probe_reset_bus +EXPORT_SYMBOL_GPL vmlinux 0x267df662 smp_call_on_cpu +EXPORT_SYMBOL_GPL vmlinux 0x26965ddb pm_runtime_force_suspend +EXPORT_SYMBOL_GPL vmlinux 0x269a72ce devm_pwm_put +EXPORT_SYMBOL_GPL vmlinux 0x26ab4755 put_old_itimerspec32 +EXPORT_SYMBOL_GPL vmlinux 0x26c3ee36 usb_hcd_resume_root_hub +EXPORT_SYMBOL_GPL vmlinux 0x26c622ee percpu_ref_switch_to_percpu +EXPORT_SYMBOL_GPL vmlinux 0x26c90ea4 scsi_eh_get_sense +EXPORT_SYMBOL_GPL vmlinux 0x26cda94f e820__mapped_raw_any +EXPORT_SYMBOL_GPL vmlinux 0x26e0b04c rdev_get_id +EXPORT_SYMBOL_GPL vmlinux 0x26e84e69 skb_pull_rcsum +EXPORT_SYMBOL_GPL vmlinux 0x26ed2186 register_vmap_purge_notifier +EXPORT_SYMBOL_GPL vmlinux 0x26f3cee0 regmap_bulk_write +EXPORT_SYMBOL_GPL vmlinux 0x26fb5197 dev_fwnode +EXPORT_SYMBOL_GPL vmlinux 0x26fe0433 xenbus_dev_resume +EXPORT_SYMBOL_GPL vmlinux 0x2723287d cgroup_path_ns +EXPORT_SYMBOL_GPL vmlinux 0x2726e10e iommu_report_device_fault +EXPORT_SYMBOL_GPL vmlinux 0x272a5317 pci_pr3_present +EXPORT_SYMBOL_GPL vmlinux 0x273aab74 xen_have_vector_callback +EXPORT_SYMBOL_GPL vmlinux 0x273dd633 platform_bus +EXPORT_SYMBOL_GPL vmlinux 0x274b41d8 devfreq_event_is_enabled +EXPORT_SYMBOL_GPL vmlinux 0x274cf5e1 __clk_get_flags +EXPORT_SYMBOL_GPL vmlinux 0x274dd1a3 sg_free_table_chained +EXPORT_SYMBOL_GPL vmlinux 0x276513cc ata_sas_scsi_ioctl +EXPORT_SYMBOL_GPL vmlinux 0x27727bde pci_probe_reset_slot +EXPORT_SYMBOL_GPL vmlinux 0x2773c485 __wake_up_locked +EXPORT_SYMBOL_GPL vmlinux 0x277ba52c ethnl_cable_test_finished +EXPORT_SYMBOL_GPL vmlinux 0x2787827f pci_bridge_secondary_bus_reset +EXPORT_SYMBOL_GPL vmlinux 0x279662b7 l3mdev_fib_table_rcu +EXPORT_SYMBOL_GPL vmlinux 0x279cb25a zap_vma_ptes +EXPORT_SYMBOL_GPL vmlinux 0x27a3605a bpf_trace_run5 +EXPORT_SYMBOL_GPL vmlinux 0x27c0591a skcipher_walk_virt +EXPORT_SYMBOL_GPL vmlinux 0x27d3163a driver_attach +EXPORT_SYMBOL_GPL vmlinux 0x27df3105 hv_alloc_hyperv_zeroed_page +EXPORT_SYMBOL_GPL vmlinux 0x27f4f029 ftrace_set_global_filter +EXPORT_SYMBOL_GPL vmlinux 0x27fa66e1 nr_free_buffer_pages +EXPORT_SYMBOL_GPL vmlinux 0x2800584c inet_ehash_nolisten +EXPORT_SYMBOL_GPL vmlinux 0x280ace16 devm_of_pwm_get +EXPORT_SYMBOL_GPL vmlinux 0x281118a5 account_locked_vm +EXPORT_SYMBOL_GPL vmlinux 0x2817f7fd cppc_get_desired_perf +EXPORT_SYMBOL_GPL vmlinux 0x282cdabc usb_led_activity +EXPORT_SYMBOL_GPL vmlinux 0x28448c6e usb_hcd_map_urb_for_dma +EXPORT_SYMBOL_GPL vmlinux 0x28475e59 mmc_app_cmd +EXPORT_SYMBOL_GPL vmlinux 0x284fe794 percpu_ref_exit +EXPORT_SYMBOL_GPL vmlinux 0x2851cbea skb_cow_data +EXPORT_SYMBOL_GPL vmlinux 0x2864abc9 klist_node_attached +EXPORT_SYMBOL_GPL vmlinux 0x286cc647 async_synchronize_cookie_domain +EXPORT_SYMBOL_GPL vmlinux 0x286f7dcc skb_gso_validate_mac_len +EXPORT_SYMBOL_GPL vmlinux 0x287ea570 virtqueue_kick +EXPORT_SYMBOL_GPL vmlinux 0x288528c7 balloon_page_list_enqueue +EXPORT_SYMBOL_GPL vmlinux 0x289905f5 power_supply_set_input_current_limit_from_supplier +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 0x28bbcfc0 pinctrl_force_default +EXPORT_SYMBOL_GPL vmlinux 0x28c807b4 nvmem_cell_read_u16 +EXPORT_SYMBOL_GPL vmlinux 0x28ce39f4 max8997_bulk_read +EXPORT_SYMBOL_GPL vmlinux 0x28db4fb7 devm_mbox_controller_register +EXPORT_SYMBOL_GPL vmlinux 0x28e37d5c icc_provider_del +EXPORT_SYMBOL_GPL vmlinux 0x28e64c64 xen_has_pv_and_legacy_disk_devices +EXPORT_SYMBOL_GPL vmlinux 0x290f1dfc gpiochip_populate_parent_fwspec_fourcell +EXPORT_SYMBOL_GPL vmlinux 0x2911f3e1 dst_cache_get_ip4 +EXPORT_SYMBOL_GPL vmlinux 0x29252e74 __tracepoint_block_unplug +EXPORT_SYMBOL_GPL vmlinux 0x29366b61 register_ftrace_direct +EXPORT_SYMBOL_GPL vmlinux 0x293f4891 pcie_aspm_enabled +EXPORT_SYMBOL_GPL vmlinux 0x29473ac1 regulator_list_hardware_vsel +EXPORT_SYMBOL_GPL vmlinux 0x2951a872 trace_clock_local +EXPORT_SYMBOL_GPL vmlinux 0x29574b73 aead_init_geniv +EXPORT_SYMBOL_GPL vmlinux 0x29646c60 sysfs_file_change_owner +EXPORT_SYMBOL_GPL vmlinux 0x29649545 xen_pcpu_id +EXPORT_SYMBOL_GPL vmlinux 0x29667ba0 thermal_zone_unbind_cooling_device +EXPORT_SYMBOL_GPL vmlinux 0x29a8d6ee ata_link_online +EXPORT_SYMBOL_GPL vmlinux 0x29add8eb set_cpus_allowed_ptr +EXPORT_SYMBOL_GPL vmlinux 0x29eba37f current_is_async +EXPORT_SYMBOL_GPL vmlinux 0x29f88076 list_lru_count_one +EXPORT_SYMBOL_GPL vmlinux 0x2a1c0c5e alloc_skb_for_msg +EXPORT_SYMBOL_GPL vmlinux 0x2a215da3 devm_clk_register +EXPORT_SYMBOL_GPL vmlinux 0x2a2aea17 clk_fixed_rate_ops +EXPORT_SYMBOL_GPL vmlinux 0x2a2d5a57 devlink_trap_groups_unregister +EXPORT_SYMBOL_GPL vmlinux 0x2a4eb64b ata_do_dev_read_id +EXPORT_SYMBOL_GPL vmlinux 0x2a4f307b ping_recvmsg +EXPORT_SYMBOL_GPL vmlinux 0x2a58ae55 disable_kprobe +EXPORT_SYMBOL_GPL vmlinux 0x2a62cb3a ring_buffer_overrun_cpu +EXPORT_SYMBOL_GPL vmlinux 0x2a678a13 __suspend_report_result +EXPORT_SYMBOL_GPL vmlinux 0x2a6ab4f7 __pci_epf_register_driver +EXPORT_SYMBOL_GPL vmlinux 0x2a86f675 crypto_dequeue_request +EXPORT_SYMBOL_GPL vmlinux 0x2a93ee93 led_trigger_register_simple +EXPORT_SYMBOL_GPL vmlinux 0x2aadad1a efi_capsule_update +EXPORT_SYMBOL_GPL vmlinux 0x2ac8ea41 blk_trace_remove +EXPORT_SYMBOL_GPL vmlinux 0x2ad75c68 __ip6_datagram_connect +EXPORT_SYMBOL_GPL vmlinux 0x2adb1dc7 devm_platform_ioremap_resource_byname +EXPORT_SYMBOL_GPL vmlinux 0x2af3e4ec pm_clk_init +EXPORT_SYMBOL_GPL vmlinux 0x2aff68f9 perf_guest_get_msrs +EXPORT_SYMBOL_GPL vmlinux 0x2b01f814 irqd_cfg +EXPORT_SYMBOL_GPL vmlinux 0x2b0765ca xen_store_interface +EXPORT_SYMBOL_GPL vmlinux 0x2b0fe000 gnttab_cancel_free_callback +EXPORT_SYMBOL_GPL vmlinux 0x2b191b75 devm_watchdog_register_device +EXPORT_SYMBOL_GPL vmlinux 0x2b1f347b d_exchange +EXPORT_SYMBOL_GPL vmlinux 0x2b260a74 __tracepoint_cpu_idle +EXPORT_SYMBOL_GPL vmlinux 0x2b2d1148 acpi_dev_gpio_irq_get +EXPORT_SYMBOL_GPL vmlinux 0x2b3598a2 pci_user_write_config_word +EXPORT_SYMBOL_GPL vmlinux 0x2b37dcb1 dev_pm_genpd_set_performance_state +EXPORT_SYMBOL_GPL vmlinux 0x2b3db100 usb_hcd_pci_probe +EXPORT_SYMBOL_GPL vmlinux 0x2b4509dd devlink_health_reporter_state_update +EXPORT_SYMBOL_GPL vmlinux 0x2b49326f devm_get_free_pages +EXPORT_SYMBOL_GPL vmlinux 0x2b52ac8a scsi_host_block +EXPORT_SYMBOL_GPL vmlinux 0x2b5c231f devres_release_group +EXPORT_SYMBOL_GPL vmlinux 0x2b6150fb power_supply_temp2resist_simple +EXPORT_SYMBOL_GPL vmlinux 0x2b627697 netlink_has_listeners +EXPORT_SYMBOL_GPL vmlinux 0x2b6679fe rio_local_set_device_id +EXPORT_SYMBOL_GPL vmlinux 0x2b67b6b7 mds_idle_clear +EXPORT_SYMBOL_GPL vmlinux 0x2b6d960d synth_event_cmd_init +EXPORT_SYMBOL_GPL vmlinux 0x2b7e9709 crypto_ahash_setkey +EXPORT_SYMBOL_GPL vmlinux 0x2b7fc385 hv_init_clocksource +EXPORT_SYMBOL_GPL vmlinux 0x2b8ace0a inet_hash_connect +EXPORT_SYMBOL_GPL vmlinux 0x2b952517 clk_has_parent +EXPORT_SYMBOL_GPL vmlinux 0x2b9997fb atomic_notifier_chain_register +EXPORT_SYMBOL_GPL vmlinux 0x2bbe6c59 crypto_register_rng +EXPORT_SYMBOL_GPL vmlinux 0x2bd1a90d cpufreq_dbs_governor_init +EXPORT_SYMBOL_GPL vmlinux 0x2be310c9 efivar_entry_iter +EXPORT_SYMBOL_GPL vmlinux 0x2be98017 dma_release_channel +EXPORT_SYMBOL_GPL vmlinux 0x2bed2087 device_add +EXPORT_SYMBOL_GPL vmlinux 0x2bf4bb83 spi_mem_exec_op +EXPORT_SYMBOL_GPL vmlinux 0x2bf911a2 scsi_flush_work +EXPORT_SYMBOL_GPL vmlinux 0x2c065858 pci_hp_deregister +EXPORT_SYMBOL_GPL vmlinux 0x2c11c183 device_find_child_by_name +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 0x2c32dc81 blk_queue_set_zoned +EXPORT_SYMBOL_GPL vmlinux 0x2c455584 pci_status_get_and_clear_errors +EXPORT_SYMBOL_GPL vmlinux 0x2c5dc3a8 devfreq_event_add_edev +EXPORT_SYMBOL_GPL vmlinux 0x2c635527 arch_invalidate_pmem +EXPORT_SYMBOL_GPL vmlinux 0x2c66ac85 devlink_info_serial_number_put +EXPORT_SYMBOL_GPL vmlinux 0x2c6d451e cpuidle_get_driver +EXPORT_SYMBOL_GPL vmlinux 0x2c768856 device_release_driver +EXPORT_SYMBOL_GPL vmlinux 0x2c7db649 irq_dispose_mapping +EXPORT_SYMBOL_GPL vmlinux 0x2c80a394 dm_accept_partial_bio +EXPORT_SYMBOL_GPL vmlinux 0x2c80e4b4 do_truncate +EXPORT_SYMBOL_GPL vmlinux 0x2c8dd6b8 edac_mem_types +EXPORT_SYMBOL_GPL vmlinux 0x2c9723d3 put_device +EXPORT_SYMBOL_GPL vmlinux 0x2cc011a2 iomap_invalidatepage +EXPORT_SYMBOL_GPL vmlinux 0x2cc0fe28 securityfs_remove +EXPORT_SYMBOL_GPL vmlinux 0x2cdc893d led_classdev_unregister +EXPORT_SYMBOL_GPL vmlinux 0x2cea32ee unregister_oldmem_pfn_is_ram +EXPORT_SYMBOL_GPL vmlinux 0x2cecc8c3 mbox_client_peek_data +EXPORT_SYMBOL_GPL vmlinux 0x2ced7794 irq_chip_disable_parent +EXPORT_SYMBOL_GPL vmlinux 0x2cf70902 rtc_class_close +EXPORT_SYMBOL_GPL vmlinux 0x2cf77ab8 acpi_find_child_device +EXPORT_SYMBOL_GPL vmlinux 0x2d13160b pwm_request_from_chip +EXPORT_SYMBOL_GPL vmlinux 0x2d1b02d2 usermodehelper_read_lock_wait +EXPORT_SYMBOL_GPL vmlinux 0x2d2b9be7 badblocks_check +EXPORT_SYMBOL_GPL vmlinux 0x2d2dd36f kobj_ns_grab_current +EXPORT_SYMBOL_GPL vmlinux 0x2d30c8c6 irq_chip_set_affinity_parent +EXPORT_SYMBOL_GPL vmlinux 0x2d393f48 intel_soc_pmic_exec_mipi_pmic_seq_element +EXPORT_SYMBOL_GPL vmlinux 0x2d3b8ebc sysfs_remove_mount_point +EXPORT_SYMBOL_GPL vmlinux 0x2d4115c0 wakeup_source_add +EXPORT_SYMBOL_GPL vmlinux 0x2d41e6f5 __trace_puts +EXPORT_SYMBOL_GPL vmlinux 0x2d599841 transport_remove_device +EXPORT_SYMBOL_GPL vmlinux 0x2d6aa0f0 arch_apei_enable_cmcff +EXPORT_SYMBOL_GPL vmlinux 0x2d7935e6 pm_generic_suspend +EXPORT_SYMBOL_GPL vmlinux 0x2d836808 crypto_comp_decompress +EXPORT_SYMBOL_GPL vmlinux 0x2d96c4f5 ata_acpi_stm +EXPORT_SYMBOL_GPL vmlinux 0x2daa2177 x509_free_certificate +EXPORT_SYMBOL_GPL vmlinux 0x2db2826b wm831x_reg_read +EXPORT_SYMBOL_GPL vmlinux 0x2db65ad8 of_hwspin_lock_get_id_byname +EXPORT_SYMBOL_GPL vmlinux 0x2dd8a4da dma_buf_move_notify +EXPORT_SYMBOL_GPL vmlinux 0x2ded90a3 trace_array_set_clr_event +EXPORT_SYMBOL_GPL vmlinux 0x2df979c9 wm8350_block_write +EXPORT_SYMBOL_GPL vmlinux 0x2e028ae6 rcutorture_get_gp_data +EXPORT_SYMBOL_GPL vmlinux 0x2e079482 aead_exit_geniv +EXPORT_SYMBOL_GPL vmlinux 0x2e08226d badrange_add +EXPORT_SYMBOL_GPL vmlinux 0x2e184460 of_css +EXPORT_SYMBOL_GPL vmlinux 0x2e1c3255 pci_epc_raise_irq +EXPORT_SYMBOL_GPL vmlinux 0x2e2360b1 ftrace_set_global_notrace +EXPORT_SYMBOL_GPL vmlinux 0x2e2df7f4 irq_remapping_cap +EXPORT_SYMBOL_GPL vmlinux 0x2e46c20f fuse_dev_install +EXPORT_SYMBOL_GPL vmlinux 0x2e678211 xas_find_conflict +EXPORT_SYMBOL_GPL vmlinux 0x2e68478d devlink_register +EXPORT_SYMBOL_GPL vmlinux 0x2e84a099 netdev_set_default_ethtool_ops +EXPORT_SYMBOL_GPL vmlinux 0x2ebb19fd execute_in_process_context +EXPORT_SYMBOL_GPL vmlinux 0x2ebe3135 cpu_is_hotpluggable +EXPORT_SYMBOL_GPL vmlinux 0x2eda4807 is_uv_hubbed +EXPORT_SYMBOL_GPL vmlinux 0x2ee7c52b btree_visitor +EXPORT_SYMBOL_GPL vmlinux 0x2ef2f5ec mbox_flush +EXPORT_SYMBOL_GPL vmlinux 0x2ef3b1c7 store_sampling_rate +EXPORT_SYMBOL_GPL vmlinux 0x2ef5adc3 __udp4_lib_lookup +EXPORT_SYMBOL_GPL vmlinux 0x2f0106bc fwnode_get_next_parent +EXPORT_SYMBOL_GPL vmlinux 0x2f0d9053 usb_otg_state_string +EXPORT_SYMBOL_GPL vmlinux 0x2f0eddfe replace_page_cache_page +EXPORT_SYMBOL_GPL vmlinux 0x2f1d1884 mmc_regulator_set_vqmmc +EXPORT_SYMBOL_GPL vmlinux 0x2f2bf6c3 inet6_hash_connect +EXPORT_SYMBOL_GPL vmlinux 0x2f2c95c4 flush_work +EXPORT_SYMBOL_GPL vmlinux 0x2f37686b ata_sff_busy_sleep +EXPORT_SYMBOL_GPL vmlinux 0x2f4113a2 dcookie_register +EXPORT_SYMBOL_GPL vmlinux 0x2f43cb37 ata_pci_bmdma_init_one +EXPORT_SYMBOL_GPL vmlinux 0x2f4880df static_key_slow_dec +EXPORT_SYMBOL_GPL vmlinux 0x2f6014f0 usb_phy_get_charger_current +EXPORT_SYMBOL_GPL vmlinux 0x2f64415f unregister_acpi_hed_notifier +EXPORT_SYMBOL_GPL vmlinux 0x2f6fc558 crypto_alg_mod_lookup +EXPORT_SYMBOL_GPL vmlinux 0x2f70deea tty_encode_baud_rate +EXPORT_SYMBOL_GPL vmlinux 0x2f8b3673 crypto_register_kpp +EXPORT_SYMBOL_GPL vmlinux 0x2f97b8bf blk_ksm_destroy +EXPORT_SYMBOL_GPL vmlinux 0x2f98ceee debugfs_create_dir +EXPORT_SYMBOL_GPL vmlinux 0x2fab6b3e kthread_unpark +EXPORT_SYMBOL_GPL vmlinux 0x2faeefac sdio_retune_crc_enable +EXPORT_SYMBOL_GPL vmlinux 0x2fb72e9b sbitmap_init_node +EXPORT_SYMBOL_GPL vmlinux 0x2fc33412 __clk_mux_determine_rate_closest +EXPORT_SYMBOL_GPL vmlinux 0x2fdcfd28 smca_get_long_name +EXPORT_SYMBOL_GPL vmlinux 0x2fe3fa86 rtc_update_irq +EXPORT_SYMBOL_GPL vmlinux 0x2feb31e3 rio_attach_device +EXPORT_SYMBOL_GPL vmlinux 0x2fee0073 devlink_trap_policers_unregister +EXPORT_SYMBOL_GPL vmlinux 0x30034a98 scsi_unregister_device_handler +EXPORT_SYMBOL_GPL vmlinux 0x3016fb02 pci_max_pasids +EXPORT_SYMBOL_GPL vmlinux 0x302ddd6b sysfs_rename_link_ns +EXPORT_SYMBOL_GPL vmlinux 0x303ddc80 sdio_claim_host +EXPORT_SYMBOL_GPL vmlinux 0x304c21d4 usb_register_driver +EXPORT_SYMBOL_GPL vmlinux 0x3055b120 dev_pm_opp_attach_genpd +EXPORT_SYMBOL_GPL vmlinux 0x305a1865 gpiod_get_index_optional +EXPORT_SYMBOL_GPL vmlinux 0x3061cfce ring_buffer_entries_cpu +EXPORT_SYMBOL_GPL vmlinux 0x306c0cb4 pci_generic_config_read +EXPORT_SYMBOL_GPL vmlinux 0x306f5576 pkcs7_verify +EXPORT_SYMBOL_GPL vmlinux 0x307ecfc7 devm_request_pci_bus_resources +EXPORT_SYMBOL_GPL vmlinux 0x3084185c dw_pcie_wait_for_link +EXPORT_SYMBOL_GPL vmlinux 0x30873d66 pci_ioremap_bar +EXPORT_SYMBOL_GPL vmlinux 0x30909cc2 spi_get_device_id +EXPORT_SYMBOL_GPL vmlinux 0x3090cb05 bind_interdomain_evtchn_to_irqhandler_lateeoi +EXPORT_SYMBOL_GPL vmlinux 0x30974399 gpiod_cansleep +EXPORT_SYMBOL_GPL vmlinux 0x30b15b29 thermal_zone_get_temp +EXPORT_SYMBOL_GPL vmlinux 0x30bd8cbf kernel_read_file_from_path +EXPORT_SYMBOL_GPL vmlinux 0x30cf804f slow_virt_to_phys +EXPORT_SYMBOL_GPL vmlinux 0x30d080f2 fsnotify +EXPORT_SYMBOL_GPL vmlinux 0x30d11174 __usb_create_hcd +EXPORT_SYMBOL_GPL vmlinux 0x30e1ec25 apei_map_generic_address +EXPORT_SYMBOL_GPL vmlinux 0x30e97e3d iomap_finish_ioends +EXPORT_SYMBOL_GPL vmlinux 0x31024fde dm_internal_resume +EXPORT_SYMBOL_GPL vmlinux 0x310593fc tpm_chip_register +EXPORT_SYMBOL_GPL vmlinux 0x31128b8e hv_remove_kexec_handler +EXPORT_SYMBOL_GPL vmlinux 0x31217e73 class_create_file_ns +EXPORT_SYMBOL_GPL vmlinux 0x31266931 con_debug_leave +EXPORT_SYMBOL_GPL vmlinux 0x3165daa3 arbitrary_virt_to_machine +EXPORT_SYMBOL_GPL vmlinux 0x31745f68 ata_sff_port_ops +EXPORT_SYMBOL_GPL vmlinux 0x31785f08 __tracepoint_br_fdb_add +EXPORT_SYMBOL_GPL vmlinux 0x317e1efa trace_event_buffer_reserve +EXPORT_SYMBOL_GPL vmlinux 0x317fa61d devlink_port_type_ib_set +EXPORT_SYMBOL_GPL vmlinux 0x31839ad3 software_node_register_nodes +EXPORT_SYMBOL_GPL vmlinux 0x3192d768 cpufreq_remove_update_util_hook +EXPORT_SYMBOL_GPL vmlinux 0x319cafe1 ata_do_set_mode +EXPORT_SYMBOL_GPL vmlinux 0x319cbe71 blk_mq_freeze_queue +EXPORT_SYMBOL_GPL vmlinux 0x319ecde1 class_destroy +EXPORT_SYMBOL_GPL vmlinux 0x31a95e8b ring_buffer_record_enable_cpu +EXPORT_SYMBOL_GPL vmlinux 0x31aa932a fwnode_graph_get_remote_port_parent +EXPORT_SYMBOL_GPL vmlinux 0x31b62373 irq_chip_mask_ack_parent +EXPORT_SYMBOL_GPL vmlinux 0x31c7970f pciserial_suspend_ports +EXPORT_SYMBOL_GPL vmlinux 0x31cc20b5 udp4_hwcsum +EXPORT_SYMBOL_GPL vmlinux 0x31dca4d8 gnttab_claim_grant_reference +EXPORT_SYMBOL_GPL vmlinux 0x31dfb8f6 napi_hash_del +EXPORT_SYMBOL_GPL vmlinux 0x31ea2d2d noop_invalidatepage +EXPORT_SYMBOL_GPL vmlinux 0x320968bd iommu_map +EXPORT_SYMBOL_GPL vmlinux 0x3224b2a9 mpi_read_raw_from_sgl +EXPORT_SYMBOL_GPL vmlinux 0x322eb358 elv_rqhash_add +EXPORT_SYMBOL_GPL vmlinux 0x3237ad61 node_to_amd_nb +EXPORT_SYMBOL_GPL vmlinux 0x325c96a4 class_for_each_device +EXPORT_SYMBOL_GPL vmlinux 0x3262f759 icc_disable +EXPORT_SYMBOL_GPL vmlinux 0x326cefe5 hwpoison_filter_dev_minor +EXPORT_SYMBOL_GPL vmlinux 0x327a2687 bind_evtchn_to_irq_lateeoi +EXPORT_SYMBOL_GPL vmlinux 0x328e3354 __memcpy_flushcache +EXPORT_SYMBOL_GPL vmlinux 0x329ddf26 iomap_ioend_try_merge +EXPORT_SYMBOL_GPL vmlinux 0x32a21a71 fwnode_graph_get_endpoint_by_id +EXPORT_SYMBOL_GPL vmlinux 0x32ab06cc irq_percpu_is_enabled +EXPORT_SYMBOL_GPL vmlinux 0x32bc0fcf preempt_notifier_dec +EXPORT_SYMBOL_GPL vmlinux 0x32c2bb04 list_lru_walk_node +EXPORT_SYMBOL_GPL vmlinux 0x32c3cb4e class_compat_register +EXPORT_SYMBOL_GPL vmlinux 0x32c6c604 __tracepoint_attach_device_to_domain +EXPORT_SYMBOL_GPL vmlinux 0x32e27056 init_uts_ns +EXPORT_SYMBOL_GPL vmlinux 0x32e3b076 mxcsr_feature_mask +EXPORT_SYMBOL_GPL vmlinux 0x32ec4c49 devm_gpio_request_one +EXPORT_SYMBOL_GPL vmlinux 0x32f8f226 transport_destroy_device +EXPORT_SYMBOL_GPL vmlinux 0x330010b6 cpuset_cgrp_subsys_enabled_key +EXPORT_SYMBOL_GPL vmlinux 0x3303f564 pci_d3cold_disable +EXPORT_SYMBOL_GPL vmlinux 0x330e1b76 icc_node_del +EXPORT_SYMBOL_GPL vmlinux 0x3332083f device_remove_groups +EXPORT_SYMBOL_GPL vmlinux 0x333429c0 xen_unregister_device_domain_owner +EXPORT_SYMBOL_GPL vmlinux 0x33496f28 kobject_uevent_env +EXPORT_SYMBOL_GPL vmlinux 0x335359b8 crypto_unregister_algs +EXPORT_SYMBOL_GPL vmlinux 0x335c570f enable_percpu_irq +EXPORT_SYMBOL_GPL vmlinux 0x3362b03c xen_p2m_size +EXPORT_SYMBOL_GPL vmlinux 0x33655159 xen_pcpu_hotplug_sync +EXPORT_SYMBOL_GPL vmlinux 0x337a4ece __sync_filesystem +EXPORT_SYMBOL_GPL vmlinux 0x339ced6e __pm_runtime_disable +EXPORT_SYMBOL_GPL vmlinux 0x339f1645 pci_epf_bind +EXPORT_SYMBOL_GPL vmlinux 0x33abcebb dma_buf_unpin +EXPORT_SYMBOL_GPL vmlinux 0x33d79461 regulator_set_pull_down_regmap +EXPORT_SYMBOL_GPL vmlinux 0x33ddadf6 cgroup_get_from_fd +EXPORT_SYMBOL_GPL vmlinux 0x33e1ce39 elv_register +EXPORT_SYMBOL_GPL vmlinux 0x33e4f9d1 usb_disable_autosuspend +EXPORT_SYMBOL_GPL vmlinux 0x33f26677 invalidate_inode_pages2 +EXPORT_SYMBOL_GPL vmlinux 0x33f75bd2 pci_reset_function +EXPORT_SYMBOL_GPL vmlinux 0x33f779d6 unregister_kretprobe +EXPORT_SYMBOL_GPL vmlinux 0x3406324d device_destroy +EXPORT_SYMBOL_GPL vmlinux 0x34170a60 pm_runtime_no_callbacks +EXPORT_SYMBOL_GPL vmlinux 0x34186c57 wm831x_auxadc_read_uv +EXPORT_SYMBOL_GPL vmlinux 0x3421ca7c __tracepoint_neigh_event_send_dead +EXPORT_SYMBOL_GPL vmlinux 0x342e0cf6 hvc_alloc +EXPORT_SYMBOL_GPL vmlinux 0x34331f04 acpi_os_unmap_memory +EXPORT_SYMBOL_GPL vmlinux 0x34407691 crypto_has_ahash +EXPORT_SYMBOL_GPL vmlinux 0x345d5340 devm_kstrdup_const +EXPORT_SYMBOL_GPL vmlinux 0x34707a00 espintcp_push_skb +EXPORT_SYMBOL_GPL vmlinux 0x3474437b page_cache_sync_readahead +EXPORT_SYMBOL_GPL vmlinux 0x347500f0 driver_find_device +EXPORT_SYMBOL_GPL vmlinux 0x34826984 __reset_control_get +EXPORT_SYMBOL_GPL vmlinux 0x34833ea7 acpi_dev_resume +EXPORT_SYMBOL_GPL vmlinux 0x348f218d pm_generic_runtime_suspend +EXPORT_SYMBOL_GPL vmlinux 0x3495c3fe class_compat_create_link +EXPORT_SYMBOL_GPL vmlinux 0x34a2dec7 inet_ctl_sock_create +EXPORT_SYMBOL_GPL vmlinux 0x34add86d nvdimm_name +EXPORT_SYMBOL_GPL vmlinux 0x34aefaed pcie_port_find_device +EXPORT_SYMBOL_GPL vmlinux 0x34b47346 shash_register_instance +EXPORT_SYMBOL_GPL vmlinux 0x34bab869 look_up_OID +EXPORT_SYMBOL_GPL vmlinux 0x34ddad2e __mnt_drop_write +EXPORT_SYMBOL_GPL vmlinux 0x34e68151 mddev_init +EXPORT_SYMBOL_GPL vmlinux 0x34eab46d bind_evtchn_to_irqhandler +EXPORT_SYMBOL_GPL vmlinux 0x34f0aa83 __devm_of_phy_provider_register +EXPORT_SYMBOL_GPL vmlinux 0x34f248f2 __devm_intel_scu_ipc_register +EXPORT_SYMBOL_GPL vmlinux 0x34f62fcd dev_pm_qos_expose_latency_tolerance +EXPORT_SYMBOL_GPL vmlinux 0x34f63569 debugfs_lookup +EXPORT_SYMBOL_GPL vmlinux 0x34fdad3d attribute_container_classdev_to_container +EXPORT_SYMBOL_GPL vmlinux 0x350f8392 dummy_irq_chip +EXPORT_SYMBOL_GPL vmlinux 0x3524229d fwnode_create_software_node +EXPORT_SYMBOL_GPL vmlinux 0x35275286 iommu_attach_device +EXPORT_SYMBOL_GPL vmlinux 0x352b3813 maxim_charger_calc_reg_current +EXPORT_SYMBOL_GPL vmlinux 0x352ec68b bpf_offload_dev_destroy +EXPORT_SYMBOL_GPL vmlinux 0x3559782e wm5110_i2c_regmap +EXPORT_SYMBOL_GPL vmlinux 0x35597d0b pci_aer_clear_nonfatal_status +EXPORT_SYMBOL_GPL vmlinux 0x355bc89a klist_next +EXPORT_SYMBOL_GPL vmlinux 0x35601145 sysfs_break_active_protection +EXPORT_SYMBOL_GPL vmlinux 0x35640ee6 nvdimm_bus_add_badrange +EXPORT_SYMBOL_GPL vmlinux 0x356501e2 spi_res_add +EXPORT_SYMBOL_GPL vmlinux 0x3567743b vfio_external_user_iommu_id +EXPORT_SYMBOL_GPL vmlinux 0x356f8dd4 rio_release_inb_dbell +EXPORT_SYMBOL_GPL vmlinux 0x3582ef4a dma_buf_vunmap +EXPORT_SYMBOL_GPL vmlinux 0x358ff60f twl_get_hfclk_rate +EXPORT_SYMBOL_GPL vmlinux 0x35c85dd4 watchdog_notify_pretimeout +EXPORT_SYMBOL_GPL vmlinux 0x35d3dc46 crypto_alg_sem +EXPORT_SYMBOL_GPL vmlinux 0x35ee31e6 dw_pcie_host_init +EXPORT_SYMBOL_GPL vmlinux 0x36075bb5 iommu_group_register_notifier +EXPORT_SYMBOL_GPL vmlinux 0x360b5326 bpf_trace_run1 +EXPORT_SYMBOL_GPL vmlinux 0x36173c1d phys_to_target_node +EXPORT_SYMBOL_GPL vmlinux 0x36196677 rio_mport_write_config_32 +EXPORT_SYMBOL_GPL vmlinux 0x36242943 switchdev_deferred_process +EXPORT_SYMBOL_GPL vmlinux 0x362dabf9 virtqueue_add_sgs +EXPORT_SYMBOL_GPL vmlinux 0x363e1b3c acpi_get_psd_map +EXPORT_SYMBOL_GPL vmlinux 0x36742979 iomap_is_partially_uptodate +EXPORT_SYMBOL_GPL vmlinux 0x36898b64 platform_find_device_by_driver +EXPORT_SYMBOL_GPL vmlinux 0x368f88bb devlink_port_attrs_pci_pf_set +EXPORT_SYMBOL_GPL vmlinux 0x368fed0a sysfs_add_file_to_group +EXPORT_SYMBOL_GPL vmlinux 0x36959559 pm_genpd_syscore_poweron +EXPORT_SYMBOL_GPL vmlinux 0x369fcd70 tracing_snapshot +EXPORT_SYMBOL_GPL vmlinux 0x36b5497e intel_iommu_enabled +EXPORT_SYMBOL_GPL vmlinux 0x36d13c6d wbt_disable_default +EXPORT_SYMBOL_GPL vmlinux 0x36eec6b1 cpuidle_get_cpu_driver +EXPORT_SYMBOL_GPL vmlinux 0x36fb7088 gpiod_put_array +EXPORT_SYMBOL_GPL vmlinux 0x370dd7be extcon_get_edev_by_phandle +EXPORT_SYMBOL_GPL vmlinux 0x37169f79 cpu_latency_qos_update_request +EXPORT_SYMBOL_GPL vmlinux 0x37230ee1 gnttab_pages_set_private +EXPORT_SYMBOL_GPL vmlinux 0x372cfd6e gnttab_end_foreign_access +EXPORT_SYMBOL_GPL vmlinux 0x3736ed6c pci_epc_multi_mem_init +EXPORT_SYMBOL_GPL vmlinux 0x373c2b50 splice_to_pipe +EXPORT_SYMBOL_GPL vmlinux 0x374c53e1 ata_get_cmd_descript +EXPORT_SYMBOL_GPL vmlinux 0x3750d770 erst_read +EXPORT_SYMBOL_GPL vmlinux 0x37558c93 udp_cmsg_send +EXPORT_SYMBOL_GPL vmlinux 0x37680f06 ip6_datagram_send_ctl +EXPORT_SYMBOL_GPL vmlinux 0x376cb2c3 regulator_bulk_set_supply_names +EXPORT_SYMBOL_GPL vmlinux 0x377a9f8a pwm_free +EXPORT_SYMBOL_GPL vmlinux 0x377bbcbc pm_suspend_target_state +EXPORT_SYMBOL_GPL vmlinux 0x37914025 xenbus_write +EXPORT_SYMBOL_GPL vmlinux 0x3792efed sk_psock_msg_verdict +EXPORT_SYMBOL_GPL vmlinux 0x379b649a devlink_flash_update_begin_notify +EXPORT_SYMBOL_GPL vmlinux 0x37bc3020 rhltable_init +EXPORT_SYMBOL_GPL vmlinux 0x37d74a2d bpf_prog_sub +EXPORT_SYMBOL_GPL vmlinux 0x37d8d820 nl_table +EXPORT_SYMBOL_GPL vmlinux 0x37decbbf serial8250_request_dma +EXPORT_SYMBOL_GPL vmlinux 0x37ea659f add_memory +EXPORT_SYMBOL_GPL vmlinux 0x37f292c4 pmc_atom_write +EXPORT_SYMBOL_GPL vmlinux 0x3801776b __ioread32_copy +EXPORT_SYMBOL_GPL vmlinux 0x380b2b2f hvc_instantiate +EXPORT_SYMBOL_GPL vmlinux 0x38189465 proc_mkdir_data +EXPORT_SYMBOL_GPL vmlinux 0x382d6a08 device_match_devt +EXPORT_SYMBOL_GPL vmlinux 0x38374815 clear_selection +EXPORT_SYMBOL_GPL vmlinux 0x3857ade4 blk_rq_err_bytes +EXPORT_SYMBOL_GPL vmlinux 0x385be20e ata_cable_sata +EXPORT_SYMBOL_GPL vmlinux 0x385fc6b7 mmu_notifier_register +EXPORT_SYMBOL_GPL vmlinux 0x3866e217 nvmem_device_write +EXPORT_SYMBOL_GPL vmlinux 0x386b8224 device_rename +EXPORT_SYMBOL_GPL vmlinux 0x38722f80 kernel_fpu_end +EXPORT_SYMBOL_GPL vmlinux 0x387c3bb0 i2c_handle_smbus_host_notify +EXPORT_SYMBOL_GPL vmlinux 0x38886b2d serial8250_set_defaults +EXPORT_SYMBOL_GPL vmlinux 0x389b64a2 static_key_count +EXPORT_SYMBOL_GPL vmlinux 0x38aa1397 gpiod_add_lookup_table +EXPORT_SYMBOL_GPL vmlinux 0x38c3ff30 freq_qos_add_notifier +EXPORT_SYMBOL_GPL vmlinux 0x38dcb7d4 power_supply_property_is_writeable +EXPORT_SYMBOL_GPL vmlinux 0x38e5bc5a clk_set_rate_range +EXPORT_SYMBOL_GPL vmlinux 0x38ed0f43 tpm1_do_selftest +EXPORT_SYMBOL_GPL vmlinux 0x390ec341 dw_pcie_upconfig_setup +EXPORT_SYMBOL_GPL vmlinux 0x3916aac3 loop_backing_file +EXPORT_SYMBOL_GPL vmlinux 0x39199e02 gen10g_config_aneg +EXPORT_SYMBOL_GPL vmlinux 0x391ca394 xfrm_audit_policy_delete +EXPORT_SYMBOL_GPL vmlinux 0x3922d8d2 debugfs_create_ulong +EXPORT_SYMBOL_GPL vmlinux 0x39514d06 ehci_resume +EXPORT_SYMBOL_GPL vmlinux 0x395f5e1c srcu_batches_completed +EXPORT_SYMBOL_GPL vmlinux 0x396e2fd7 ms_hyperv +EXPORT_SYMBOL_GPL vmlinux 0x397ad4e1 led_set_brightness +EXPORT_SYMBOL_GPL vmlinux 0x398bfdc7 blkdev_read_iter +EXPORT_SYMBOL_GPL vmlinux 0x398e5f3e tps65912_regmap_config +EXPORT_SYMBOL_GPL vmlinux 0x399758e9 strp_check_rcv +EXPORT_SYMBOL_GPL vmlinux 0x39a4f4f3 pci_epc_start +EXPORT_SYMBOL_GPL vmlinux 0x39a7affc driver_deferred_probe_timeout +EXPORT_SYMBOL_GPL vmlinux 0x39b29de6 crypto_stats_akcipher_encrypt +EXPORT_SYMBOL_GPL vmlinux 0x39c84786 usb_block_urb +EXPORT_SYMBOL_GPL vmlinux 0x39c9f4ba regulator_set_suspend_voltage +EXPORT_SYMBOL_GPL vmlinux 0x39ded098 rdma_cgrp_subsys_enabled_key +EXPORT_SYMBOL_GPL vmlinux 0x39e61495 nf_logger_request_module +EXPORT_SYMBOL_GPL vmlinux 0x39e7caab sata_scr_write_flush +EXPORT_SYMBOL_GPL vmlinux 0x39eb9db6 irq_find_matching_fwspec +EXPORT_SYMBOL_GPL vmlinux 0x39f4b8f6 noop_set_page_dirty +EXPORT_SYMBOL_GPL vmlinux 0x3a06d108 hwspin_lock_free +EXPORT_SYMBOL_GPL vmlinux 0x3a1750b0 regulator_list_voltage_linear +EXPORT_SYMBOL_GPL vmlinux 0x3a1b2c79 ata_sas_port_destroy +EXPORT_SYMBOL_GPL vmlinux 0x3a26ed11 sched_clock +EXPORT_SYMBOL_GPL vmlinux 0x3a282ca9 regulator_bulk_free +EXPORT_SYMBOL_GPL vmlinux 0x3a2e1b39 dm_report_zones_cb +EXPORT_SYMBOL_GPL vmlinux 0x3a38bafb pci_epc_get_features +EXPORT_SYMBOL_GPL vmlinux 0x3a3adfec cn_add_callback +EXPORT_SYMBOL_GPL vmlinux 0x3a4f6a32 ata_sff_interrupt +EXPORT_SYMBOL_GPL vmlinux 0x3a4fb02b devlink_dpipe_entry_ctx_append +EXPORT_SYMBOL_GPL vmlinux 0x3a536bd7 ring_buffer_read_finish +EXPORT_SYMBOL_GPL vmlinux 0x3a55981a static_key_enable_cpuslocked +EXPORT_SYMBOL_GPL vmlinux 0x3a7d80f9 xen_max_p2m_pfn +EXPORT_SYMBOL_GPL vmlinux 0x3a8bbb8e trace_clock_jiffies +EXPORT_SYMBOL_GPL vmlinux 0x3a91f978 devm_hwspin_lock_unregister +EXPORT_SYMBOL_GPL vmlinux 0x3a9be019 asymmetric_key_id_partial +EXPORT_SYMBOL_GPL vmlinux 0x3a9ce97a spi_busnum_to_master +EXPORT_SYMBOL_GPL vmlinux 0x3aa1e276 dev_pm_opp_find_freq_ceil +EXPORT_SYMBOL_GPL vmlinux 0x3aa34491 dmaengine_desc_set_metadata_len +EXPORT_SYMBOL_GPL vmlinux 0x3ab7fe97 find_vpid +EXPORT_SYMBOL_GPL vmlinux 0x3acdf325 twl4030_audio_enable_resource +EXPORT_SYMBOL_GPL vmlinux 0x3ad113fe blk_mq_update_nr_hw_queues +EXPORT_SYMBOL_GPL vmlinux 0x3ad374f3 debugfs_print_regs32 +EXPORT_SYMBOL_GPL vmlinux 0x3ad5026e pci_cfg_access_unlock +EXPORT_SYMBOL_GPL vmlinux 0x3af578f5 hyperv_report_panic +EXPORT_SYMBOL_GPL vmlinux 0x3afa5c18 unregister_pernet_device +EXPORT_SYMBOL_GPL vmlinux 0x3b028566 rio_local_get_device_id +EXPORT_SYMBOL_GPL vmlinux 0x3b20470b gen_pool_get +EXPORT_SYMBOL_GPL vmlinux 0x3b2c9f4f devm_phy_destroy +EXPORT_SYMBOL_GPL vmlinux 0x3b4c240a display_timings_release +EXPORT_SYMBOL_GPL vmlinux 0x3b5108f3 wm831x_device_shutdown +EXPORT_SYMBOL_GPL vmlinux 0x3b5e38c4 iomap_readpage +EXPORT_SYMBOL_GPL vmlinux 0x3b6017cc driver_for_each_device +EXPORT_SYMBOL_GPL vmlinux 0x3b7ad1b7 regmap_bulk_read +EXPORT_SYMBOL_GPL vmlinux 0x3b8979ea gnttab_grant_foreign_transfer_ref +EXPORT_SYMBOL_GPL vmlinux 0x3b91db5b intel_pt_handle_vmx +EXPORT_SYMBOL_GPL vmlinux 0x3b91f6ba tcp_ca_openreq_child +EXPORT_SYMBOL_GPL vmlinux 0x3b95f543 klp_shadow_free +EXPORT_SYMBOL_GPL vmlinux 0x3ba01b47 get_compat_sigset +EXPORT_SYMBOL_GPL vmlinux 0x3baf06b7 vma_kernel_pagesize +EXPORT_SYMBOL_GPL vmlinux 0x3bca49e4 dev_pm_qos_expose_flags +EXPORT_SYMBOL_GPL vmlinux 0x3bcc5a1c virtqueue_notify +EXPORT_SYMBOL_GPL vmlinux 0x3bcf2417 power_supply_get_by_name +EXPORT_SYMBOL_GPL vmlinux 0x3bdb5d28 alg_test +EXPORT_SYMBOL_GPL vmlinux 0x3bdcca4c usb_create_shared_hcd +EXPORT_SYMBOL_GPL vmlinux 0x3be73da5 nvdimm_pmem_region_create +EXPORT_SYMBOL_GPL vmlinux 0x3bf17755 mpi_read_buffer +EXPORT_SYMBOL_GPL vmlinux 0x3bfe89de xdp_rxq_info_reg +EXPORT_SYMBOL_GPL vmlinux 0x3c0e8050 hyperv_pcpu_input_arg +EXPORT_SYMBOL_GPL vmlinux 0x3c1c3725 rcu_fwd_progress_check +EXPORT_SYMBOL_GPL vmlinux 0x3c212744 sbitmap_del_wait_queue +EXPORT_SYMBOL_GPL vmlinux 0x3c26274b set_capacity_revalidate_and_notify +EXPORT_SYMBOL_GPL vmlinux 0x3c3afbac of_hwspin_lock_get_id +EXPORT_SYMBOL_GPL vmlinux 0x3c4aa7d6 skcipher_walk_done +EXPORT_SYMBOL_GPL vmlinux 0x3c51f2a4 balloon_page_dequeue +EXPORT_SYMBOL_GPL vmlinux 0x3c5fa4bf find_extend_vma +EXPORT_SYMBOL_GPL vmlinux 0x3c681dc4 ring_buffer_record_disable +EXPORT_SYMBOL_GPL vmlinux 0x3c74fa99 regmap_raw_read +EXPORT_SYMBOL_GPL vmlinux 0x3c82bea6 pm_runtime_forbid +EXPORT_SYMBOL_GPL vmlinux 0x3c8bb074 bpf_prog_get_type_dev +EXPORT_SYMBOL_GPL vmlinux 0x3c935b3c ata_wait_register +EXPORT_SYMBOL_GPL vmlinux 0x3ca87d68 pci_remove_root_bus +EXPORT_SYMBOL_GPL vmlinux 0x3cc0f319 verify_signature +EXPORT_SYMBOL_GPL vmlinux 0x3cd06035 add_input_randomness +EXPORT_SYMBOL_GPL vmlinux 0x3cd69e0a find_asymmetric_key +EXPORT_SYMBOL_GPL vmlinux 0x3ce5797c extcon_set_property +EXPORT_SYMBOL_GPL vmlinux 0x3cf37051 blkcg_root +EXPORT_SYMBOL_GPL vmlinux 0x3cffd06d pci_find_next_capability +EXPORT_SYMBOL_GPL vmlinux 0x3d388324 dpm_resume_end +EXPORT_SYMBOL_GPL vmlinux 0x3d510a7b rcu_jiffies_till_stall_check +EXPORT_SYMBOL_GPL vmlinux 0x3d5b9abe fsverity_cleanup_inode +EXPORT_SYMBOL_GPL vmlinux 0x3d5fb35d dev_pm_set_dedicated_wake_irq +EXPORT_SYMBOL_GPL vmlinux 0x3d8baf3b zs_huge_class_size +EXPORT_SYMBOL_GPL vmlinux 0x3d968a56 spi_controller_dma_unmap_mem_op_data +EXPORT_SYMBOL_GPL vmlinux 0x3dab593f inet_twsk_alloc +EXPORT_SYMBOL_GPL vmlinux 0x3dafb9d6 __rio_local_read_config_16 +EXPORT_SYMBOL_GPL vmlinux 0x3dc640ec regulator_register_supply_alias +EXPORT_SYMBOL_GPL vmlinux 0x3de9cae1 crypto_remove_final +EXPORT_SYMBOL_GPL vmlinux 0x3df537ab virtio_break_device +EXPORT_SYMBOL_GPL vmlinux 0x3df82d00 mce_log +EXPORT_SYMBOL_GPL vmlinux 0x3dffab94 pcc_mbox_free_channel +EXPORT_SYMBOL_GPL vmlinux 0x3e05e82c wakeup_source_remove +EXPORT_SYMBOL_GPL vmlinux 0x3e0868f5 ata_sff_wait_after_reset +EXPORT_SYMBOL_GPL vmlinux 0x3e0a0058 __pm_relax +EXPORT_SYMBOL_GPL vmlinux 0x3e0c0966 iomap_file_unshare +EXPORT_SYMBOL_GPL vmlinux 0x3e17a352 skb_zerocopy_iter_stream +EXPORT_SYMBOL_GPL vmlinux 0x3e1b688f led_trigger_set_default +EXPORT_SYMBOL_GPL vmlinux 0x3e44daba rio_request_inb_dbell +EXPORT_SYMBOL_GPL vmlinux 0x3e7080cb mpi_read_from_buffer +EXPORT_SYMBOL_GPL vmlinux 0x3e77727c devlink_params_unpublish +EXPORT_SYMBOL_GPL vmlinux 0x3ea5196d apei_osc_setup +EXPORT_SYMBOL_GPL vmlinux 0x3ead0136 virtqueue_kick_prepare +EXPORT_SYMBOL_GPL vmlinux 0x3eb21901 fb_deferred_io_open +EXPORT_SYMBOL_GPL vmlinux 0x3eb3c9c7 device_store_int +EXPORT_SYMBOL_GPL vmlinux 0x3eb4ef52 fib_nl_delrule +EXPORT_SYMBOL_GPL vmlinux 0x3ec62c2a uprobe_register_refctr +EXPORT_SYMBOL_GPL vmlinux 0x3ed96173 kset_find_obj +EXPORT_SYMBOL_GPL vmlinux 0x3ef051c8 crypto_inc +EXPORT_SYMBOL_GPL vmlinux 0x3ef69ed5 usb_hcd_platform_shutdown +EXPORT_SYMBOL_GPL vmlinux 0x3ef8df04 serdev_device_close +EXPORT_SYMBOL_GPL vmlinux 0x3efd1889 dax_direct_access +EXPORT_SYMBOL_GPL vmlinux 0x3f0ebf1a crypto_alloc_shash +EXPORT_SYMBOL_GPL vmlinux 0x3f2196f8 acpi_dev_resource_address_space +EXPORT_SYMBOL_GPL vmlinux 0x3f2e0808 genphy_c45_config_aneg +EXPORT_SYMBOL_GPL vmlinux 0x3f2f5e35 sata_port_ops +EXPORT_SYMBOL_GPL vmlinux 0x3f321069 fwnode_get_next_child_node +EXPORT_SYMBOL_GPL vmlinux 0x3f4632cd phy_10gbit_features +EXPORT_SYMBOL_GPL vmlinux 0x3f65eaa2 blk_poll +EXPORT_SYMBOL_GPL vmlinux 0x3f6b852b fixup_user_fault +EXPORT_SYMBOL_GPL vmlinux 0x3f719c8c bsg_job_put +EXPORT_SYMBOL_GPL vmlinux 0x3f77d2ff spi_mem_default_supports_op +EXPORT_SYMBOL_GPL vmlinux 0x3f84bcd7 dax_alive +EXPORT_SYMBOL_GPL vmlinux 0x3f8ab72e devlink_fmsg_bool_put +EXPORT_SYMBOL_GPL vmlinux 0x3f8b7c8a generic_fh_to_parent +EXPORT_SYMBOL_GPL vmlinux 0x3fae6ab0 hv_vp_index +EXPORT_SYMBOL_GPL vmlinux 0x3fe35aea irq_bypass_unregister_consumer +EXPORT_SYMBOL_GPL vmlinux 0x3fe6c346 devlink_fmsg_binary_pair_put +EXPORT_SYMBOL_GPL vmlinux 0x3fe90973 sdio_writel +EXPORT_SYMBOL_GPL vmlinux 0x3ffdacf3 timerqueue_iterate_next +EXPORT_SYMBOL_GPL vmlinux 0x400a024b acpi_scan_lock_release +EXPORT_SYMBOL_GPL vmlinux 0x400c0f86 bpf_prog_free +EXPORT_SYMBOL_GPL vmlinux 0x40267068 usb_anchor_resume_wakeups +EXPORT_SYMBOL_GPL vmlinux 0x403f9529 gpio_request_one +EXPORT_SYMBOL_GPL vmlinux 0x4065d168 pm_print_active_wakeup_sources +EXPORT_SYMBOL_GPL vmlinux 0x406791f4 irq_chip_set_wake_parent +EXPORT_SYMBOL_GPL vmlinux 0x406c4cb1 hrtimer_resolution +EXPORT_SYMBOL_GPL vmlinux 0x4071b517 out_of_line_wait_on_bit_timeout +EXPORT_SYMBOL_GPL vmlinux 0x407ab0c5 fuse_kill_sb_anon +EXPORT_SYMBOL_GPL vmlinux 0x407af304 usb_wait_anchor_empty_timeout +EXPORT_SYMBOL_GPL vmlinux 0x4085a16d acpi_gpiochip_free_interrupts +EXPORT_SYMBOL_GPL vmlinux 0x4097df06 i2c_dw_prepare_clk +EXPORT_SYMBOL_GPL vmlinux 0x4099f919 tun_ptr_free +EXPORT_SYMBOL_GPL vmlinux 0x40a0aafc __flush_tlb_all +EXPORT_SYMBOL_GPL vmlinux 0x40b43bd0 sbitmap_add_wait_queue +EXPORT_SYMBOL_GPL vmlinux 0x40b751c4 devlink_param_driverinit_value_set +EXPORT_SYMBOL_GPL vmlinux 0x40be349a ncsi_stop_dev +EXPORT_SYMBOL_GPL vmlinux 0x40c40f0e mbox_send_message +EXPORT_SYMBOL_GPL vmlinux 0x40c66991 thermal_cooling_device_unregister +EXPORT_SYMBOL_GPL vmlinux 0x40d69ba2 pinctrl_remove_gpio_range +EXPORT_SYMBOL_GPL vmlinux 0x40d8a989 iomap_bmap +EXPORT_SYMBOL_GPL vmlinux 0x40d95098 __page_file_index +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 0x40fe5ef3 skb_complete_wifi_ack +EXPORT_SYMBOL_GPL vmlinux 0x4100a662 clk_get_scaled_duty_cycle +EXPORT_SYMBOL_GPL vmlinux 0x4115a518 edac_pci_handle_npe +EXPORT_SYMBOL_GPL vmlinux 0x4129f5ee kernel_fpu_begin_mask +EXPORT_SYMBOL_GPL vmlinux 0x412bc681 ring_buffer_empty_cpu +EXPORT_SYMBOL_GPL vmlinux 0x4145cc1e usb_hcd_unmap_urb_for_dma +EXPORT_SYMBOL_GPL vmlinux 0x414d119a videomode_from_timings +EXPORT_SYMBOL_GPL vmlinux 0x4157b06f skb_mpls_push +EXPORT_SYMBOL_GPL vmlinux 0x415e41c7 devm_mbox_controller_unregister +EXPORT_SYMBOL_GPL vmlinux 0x416323b3 crypto_stats_ahash_update +EXPORT_SYMBOL_GPL vmlinux 0x4167109f dev_pm_qos_add_request +EXPORT_SYMBOL_GPL vmlinux 0x417795bc inet6_destroy_sock +EXPORT_SYMBOL_GPL vmlinux 0x41814cb8 dirty_writeback_interval +EXPORT_SYMBOL_GPL vmlinux 0x418674cc ata_dummy_port_info +EXPORT_SYMBOL_GPL vmlinux 0x418873cc irq_bypass_register_producer +EXPORT_SYMBOL_GPL vmlinux 0x41939f52 dm_start_time_ns_from_clone +EXPORT_SYMBOL_GPL vmlinux 0x41950e4f iomap_seek_data +EXPORT_SYMBOL_GPL vmlinux 0x419e7efd sfp_module_stop +EXPORT_SYMBOL_GPL vmlinux 0x41b200f9 percpu_ref_init +EXPORT_SYMBOL_GPL vmlinux 0x41be9124 crypto_skcipher_decrypt +EXPORT_SYMBOL_GPL vmlinux 0x41c56754 clean_record_shared_mapping_range +EXPORT_SYMBOL_GPL vmlinux 0x41c5c879 genphy_c45_an_disable_aneg +EXPORT_SYMBOL_GPL vmlinux 0x41dcb8ea pci_scan_child_bus +EXPORT_SYMBOL_GPL vmlinux 0x41e3a614 rio_get_comptag +EXPORT_SYMBOL_GPL vmlinux 0x41ed3cec eventfd_ctx_remove_wait_queue +EXPORT_SYMBOL_GPL vmlinux 0x41f8a635 devm_gpiod_get_array +EXPORT_SYMBOL_GPL vmlinux 0x42041512 i2c_get_dma_safe_msg_buf +EXPORT_SYMBOL_GPL vmlinux 0x420f3d01 nvmem_unregister_notifier +EXPORT_SYMBOL_GPL vmlinux 0x42214614 __ftrace_vbprintk +EXPORT_SYMBOL_GPL vmlinux 0x42227ec8 ata_sff_qc_fill_rtf +EXPORT_SYMBOL_GPL vmlinux 0x42230915 sbitmap_any_bit_set +EXPORT_SYMBOL_GPL vmlinux 0x42288420 rt_mutex_trylock +EXPORT_SYMBOL_GPL vmlinux 0x4228bcbf kstrdup_quotable_file +EXPORT_SYMBOL_GPL vmlinux 0x422d8f6a regulator_map_voltage_ascend +EXPORT_SYMBOL_GPL vmlinux 0x4231ab35 __hwspin_unlock +EXPORT_SYMBOL_GPL vmlinux 0x4235ab94 crypto_unregister_akcipher +EXPORT_SYMBOL_GPL vmlinux 0x425547b9 device_create_bin_file +EXPORT_SYMBOL_GPL vmlinux 0x4256f881 inet6_csk_addr2sockaddr +EXPORT_SYMBOL_GPL vmlinux 0x425daf69 acpi_device_get_match_data +EXPORT_SYMBOL_GPL vmlinux 0x425fe3d1 __kthread_should_park +EXPORT_SYMBOL_GPL vmlinux 0x42635d55 pm_suspend_global_flags +EXPORT_SYMBOL_GPL vmlinux 0x4281bfe7 xenbus_dev_groups +EXPORT_SYMBOL_GPL vmlinux 0x42825ce2 rcu_scheduler_active +EXPORT_SYMBOL_GPL vmlinux 0x42a5e19a devm_nvdimm_memremap +EXPORT_SYMBOL_GPL vmlinux 0x42a604ae platform_device_unregister +EXPORT_SYMBOL_GPL vmlinux 0x42aab538 dev_coredumpsg +EXPORT_SYMBOL_GPL vmlinux 0x42b4779f _copy_from_iter_flushcache +EXPORT_SYMBOL_GPL vmlinux 0x42bce9e8 pm_generic_freeze_late +EXPORT_SYMBOL_GPL vmlinux 0x42ca0426 pci_epc_add_epf +EXPORT_SYMBOL_GPL vmlinux 0x42d099e4 phy_power_off +EXPORT_SYMBOL_GPL vmlinux 0x42d14827 ip6_datagram_connect +EXPORT_SYMBOL_GPL vmlinux 0x42de3d3d devm_hwspin_lock_register +EXPORT_SYMBOL_GPL vmlinux 0x42e445f6 clk_mux_val_to_index +EXPORT_SYMBOL_GPL vmlinux 0x42e9d0da ring_buffer_unlock_commit +EXPORT_SYMBOL_GPL vmlinux 0x42eaf380 sdio_memcpy_fromio +EXPORT_SYMBOL_GPL vmlinux 0x42ed918a phy_restart_aneg +EXPORT_SYMBOL_GPL vmlinux 0x42f272e8 ack_all_badblocks +EXPORT_SYMBOL_GPL vmlinux 0x42f728aa mctrl_gpio_get_outputs +EXPORT_SYMBOL_GPL vmlinux 0x42fba1c7 __sbitmap_queue_get_shallow +EXPORT_SYMBOL_GPL vmlinux 0x42fd3a28 acomp_request_free +EXPORT_SYMBOL_GPL vmlinux 0x42ff2f71 usb_reset_device +EXPORT_SYMBOL_GPL vmlinux 0x4326e63b class_interface_register +EXPORT_SYMBOL_GPL vmlinux 0x43379abf tty_init_termios +EXPORT_SYMBOL_GPL vmlinux 0x433ae21c user_preparse +EXPORT_SYMBOL_GPL vmlinux 0x4347183f usb_acpi_set_power_state +EXPORT_SYMBOL_GPL vmlinux 0x43553d31 sk_msg_clone +EXPORT_SYMBOL_GPL vmlinux 0x4376546c regulator_get_linear_step +EXPORT_SYMBOL_GPL vmlinux 0x43795a9f alloc_dax +EXPORT_SYMBOL_GPL vmlinux 0x437eb1df ipv6_mod_enabled +EXPORT_SYMBOL_GPL vmlinux 0x438d8df2 iova_cache_get +EXPORT_SYMBOL_GPL vmlinux 0x43936c70 ata_std_bios_param +EXPORT_SYMBOL_GPL vmlinux 0x439b1d0e dax_attribute_group +EXPORT_SYMBOL_GPL vmlinux 0x43a10a58 phy_exit +EXPORT_SYMBOL_GPL vmlinux 0x43aa319e lease_register_notifier +EXPORT_SYMBOL_GPL vmlinux 0x43aa34b9 pwm_get_chip_data +EXPORT_SYMBOL_GPL vmlinux 0x43c7f2eb fixed_phy_unregister +EXPORT_SYMBOL_GPL vmlinux 0x43de4f24 smp_call_function_single_async +EXPORT_SYMBOL_GPL vmlinux 0x43f4beea gpiod_export_link +EXPORT_SYMBOL_GPL vmlinux 0x43f56e82 ata_xfer_mode2shift +EXPORT_SYMBOL_GPL vmlinux 0x43f81957 clk_round_rate +EXPORT_SYMBOL_GPL vmlinux 0x44231522 pinctrl_lookup_state +EXPORT_SYMBOL_GPL vmlinux 0x442d89c5 phy_10gbit_fec_features +EXPORT_SYMBOL_GPL vmlinux 0x443184e4 dma_buf_begin_cpu_access +EXPORT_SYMBOL_GPL vmlinux 0x4436fb1f sysfs_chmod_file +EXPORT_SYMBOL_GPL vmlinux 0x44408ded device_match_any +EXPORT_SYMBOL_GPL vmlinux 0x445a09c0 nvmem_device_cell_write +EXPORT_SYMBOL_GPL vmlinux 0x4460f71c xfrm_output_resume +EXPORT_SYMBOL_GPL vmlinux 0x4477c564 pci_msi_set_desc +EXPORT_SYMBOL_GPL vmlinux 0x4482a2a2 da9052_disable_irq_nosync +EXPORT_SYMBOL_GPL vmlinux 0x4484a5a4 wait_for_device_probe +EXPORT_SYMBOL_GPL vmlinux 0x44959f3f spi_mem_get_name +EXPORT_SYMBOL_GPL vmlinux 0x44a11839 fib_rules_lookup +EXPORT_SYMBOL_GPL vmlinux 0x44b9d59a dev_pm_opp_get_opp_table +EXPORT_SYMBOL_GPL vmlinux 0x44bae227 bit_wait_timeout +EXPORT_SYMBOL_GPL vmlinux 0x44c25848 clk_hw_get_name +EXPORT_SYMBOL_GPL vmlinux 0x44cf8cf0 blk_zone_cond_str +EXPORT_SYMBOL_GPL vmlinux 0x44d92ad5 usb_lock_device_for_reset +EXPORT_SYMBOL_GPL vmlinux 0x44e1e9aa balloon_stats +EXPORT_SYMBOL_GPL vmlinux 0x44e6a466 tracing_snapshot_cond +EXPORT_SYMBOL_GPL vmlinux 0x450110e8 perf_assign_events +EXPORT_SYMBOL_GPL vmlinux 0x4505c601 devlink_port_type_eth_set +EXPORT_SYMBOL_GPL vmlinux 0x4507f4a8 cpuhp_tasks_frozen +EXPORT_SYMBOL_GPL vmlinux 0x450fc5f2 pinctrl_utils_add_config +EXPORT_SYMBOL_GPL vmlinux 0x45313ae7 tcp_done +EXPORT_SYMBOL_GPL vmlinux 0x4531624f usb_decode_ctrl +EXPORT_SYMBOL_GPL vmlinux 0x4531ab62 copy_from_kernel_nofault +EXPORT_SYMBOL_GPL vmlinux 0x4541fe0d mtrr_state +EXPORT_SYMBOL_GPL vmlinux 0x45558f56 clk_unregister_fixed_factor +EXPORT_SYMBOL_GPL vmlinux 0x45574488 blkdev_report_zones +EXPORT_SYMBOL_GPL vmlinux 0x45630143 gpiod_get_array +EXPORT_SYMBOL_GPL vmlinux 0x4564452e bus_create_file +EXPORT_SYMBOL_GPL vmlinux 0x45718ac8 sysfs_update_groups +EXPORT_SYMBOL_GPL vmlinux 0x457594fa crypto_alg_list +EXPORT_SYMBOL_GPL vmlinux 0x457d76a8 usb_phy_roothub_suspend +EXPORT_SYMBOL_GPL vmlinux 0x458311fb __devm_regmap_init_i2c +EXPORT_SYMBOL_GPL vmlinux 0x458efa98 ata_bmdma_port_start32 +EXPORT_SYMBOL_GPL vmlinux 0x459de8bd ip6_flush_pending_frames +EXPORT_SYMBOL_GPL vmlinux 0x459e5bf6 da903x_set_bits +EXPORT_SYMBOL_GPL vmlinux 0x459f12e5 dax_writeback_mapping_range +EXPORT_SYMBOL_GPL vmlinux 0x45cd3f17 tracing_snapshot_cond_enable +EXPORT_SYMBOL_GPL vmlinux 0x45cf5bf7 xfrm_output +EXPORT_SYMBOL_GPL vmlinux 0x45d14bdf hypercall_page +EXPORT_SYMBOL_GPL vmlinux 0x45d4e272 devlink_reload_disable +EXPORT_SYMBOL_GPL vmlinux 0x46013233 net_dec_ingress_queue +EXPORT_SYMBOL_GPL vmlinux 0x460b890a nvmem_cell_read_u64 +EXPORT_SYMBOL_GPL vmlinux 0x46350c3d posix_acl_access_xattr_handler +EXPORT_SYMBOL_GPL vmlinux 0x463d8290 __irq_alloc_descs +EXPORT_SYMBOL_GPL vmlinux 0x4643c6ab virtqueue_disable_cb +EXPORT_SYMBOL_GPL vmlinux 0x464ee46a scsi_dh_activate +EXPORT_SYMBOL_GPL vmlinux 0x46573a08 kick_process +EXPORT_SYMBOL_GPL vmlinux 0x465be6a3 fl6_merge_options +EXPORT_SYMBOL_GPL vmlinux 0x465bf6a1 virtio_max_dma_size +EXPORT_SYMBOL_GPL vmlinux 0x466093fb init_iova_flush_queue +EXPORT_SYMBOL_GPL vmlinux 0x4665414b iommu_cache_invalidate +EXPORT_SYMBOL_GPL vmlinux 0x46661498 led_trigger_register +EXPORT_SYMBOL_GPL vmlinux 0x4688d7ec pvclock_gtod_unregister_notifier +EXPORT_SYMBOL_GPL vmlinux 0x46951eb0 clockevent_delta2ns +EXPORT_SYMBOL_GPL vmlinux 0x46a6c9ef hv_get_tsc_page +EXPORT_SYMBOL_GPL vmlinux 0x46c07385 phy_driver_is_genphy_10g +EXPORT_SYMBOL_GPL vmlinux 0x46c203ac devm_extcon_dev_allocate +EXPORT_SYMBOL_GPL vmlinux 0x46c2b161 pinconf_generic_dump_config +EXPORT_SYMBOL_GPL vmlinux 0x46c5be22 clk_multiplier_ops +EXPORT_SYMBOL_GPL vmlinux 0x46f42be0 devlink_fmsg_u8_put +EXPORT_SYMBOL_GPL vmlinux 0x4707198d nd_region_provider_data +EXPORT_SYMBOL_GPL vmlinux 0x47229b5c gpio_request +EXPORT_SYMBOL_GPL vmlinux 0x4729d6fe devlink_trap_policers_register +EXPORT_SYMBOL_GPL vmlinux 0x4742d905 vfio_group_get_external_user_from_dev +EXPORT_SYMBOL_GPL vmlinux 0x474decce acpiphp_register_attention +EXPORT_SYMBOL_GPL vmlinux 0x475c678a md_rdev_init +EXPORT_SYMBOL_GPL vmlinux 0x475d96c7 rio_request_inb_mbox +EXPORT_SYMBOL_GPL vmlinux 0x475db081 devlink_region_snapshot_id_get +EXPORT_SYMBOL_GPL vmlinux 0x476167c8 remove_memory +EXPORT_SYMBOL_GPL vmlinux 0x4761f17c register_netevent_notifier +EXPORT_SYMBOL_GPL vmlinux 0x4765a9b0 iommu_capable +EXPORT_SYMBOL_GPL vmlinux 0x4766d331 device_init_wakeup +EXPORT_SYMBOL_GPL vmlinux 0x47884890 system_power_efficient_wq +EXPORT_SYMBOL_GPL vmlinux 0x479c2d37 device_wakeup_enable +EXPORT_SYMBOL_GPL vmlinux 0x479f7d4b clk_bulk_disable +EXPORT_SYMBOL_GPL vmlinux 0x47a668a9 nvmem_device_find +EXPORT_SYMBOL_GPL vmlinux 0x47a89953 __tracepoint_pelt_cfs_tp +EXPORT_SYMBOL_GPL vmlinux 0x47aad3b9 have_governor_per_policy +EXPORT_SYMBOL_GPL vmlinux 0x47acbf03 tcp_get_info +EXPORT_SYMBOL_GPL vmlinux 0x47b0c8c8 crypto_register_alg +EXPORT_SYMBOL_GPL vmlinux 0x47d0eea2 acpi_lpat_temp_to_raw +EXPORT_SYMBOL_GPL vmlinux 0x47d643d1 arizona_free_irq +EXPORT_SYMBOL_GPL vmlinux 0x47de0dc7 clk_unregister_mux +EXPORT_SYMBOL_GPL vmlinux 0x47e9ec92 pinctrl_utils_add_map_configs +EXPORT_SYMBOL_GPL vmlinux 0x47f07ac6 fat_build_inode +EXPORT_SYMBOL_GPL vmlinux 0x480d0e71 __xenbus_register_frontend +EXPORT_SYMBOL_GPL vmlinux 0x4828e77b acpi_scan_lock_acquire +EXPORT_SYMBOL_GPL vmlinux 0x48296a43 setfl +EXPORT_SYMBOL_GPL vmlinux 0x48296c32 spi_add_device +EXPORT_SYMBOL_GPL vmlinux 0x48326663 pm_clk_destroy +EXPORT_SYMBOL_GPL vmlinux 0x4844cbb2 ata_ehi_push_desc +EXPORT_SYMBOL_GPL vmlinux 0x486b92b8 raw_seq_start +EXPORT_SYMBOL_GPL vmlinux 0x486db16d find_module +EXPORT_SYMBOL_GPL vmlinux 0x4874bdbe usb_asmedia_modifyflowcontrol +EXPORT_SYMBOL_GPL vmlinux 0x487e46c9 devm_regmap_add_irq_chip_np +EXPORT_SYMBOL_GPL vmlinux 0x489fb6e7 pinctrl_dev_get_drvdata +EXPORT_SYMBOL_GPL vmlinux 0x48a3809b sbitmap_bitmap_show +EXPORT_SYMBOL_GPL vmlinux 0x48a3d20b mctrl_gpio_get +EXPORT_SYMBOL_GPL vmlinux 0x48a53646 __bdev_dax_supported +EXPORT_SYMBOL_GPL vmlinux 0x48a7d578 debugfs_create_file_unsafe +EXPORT_SYMBOL_GPL vmlinux 0x48a9faab regulator_get_voltage_rdev +EXPORT_SYMBOL_GPL vmlinux 0x48ac2d3e cpufreq_unregister_governor +EXPORT_SYMBOL_GPL vmlinux 0x48aceba2 device_remove_file +EXPORT_SYMBOL_GPL vmlinux 0x48cb6b3f pcie_update_link_speed +EXPORT_SYMBOL_GPL vmlinux 0x48d43c0e __mdiobus_modify_changed +EXPORT_SYMBOL_GPL vmlinux 0x48d64ae1 dio_end_io +EXPORT_SYMBOL_GPL vmlinux 0x48dae385 reset_control_get_count +EXPORT_SYMBOL_GPL vmlinux 0x48e62b18 regulator_set_current_limit_regmap +EXPORT_SYMBOL_GPL vmlinux 0x48e95c4b gpiochip_disable_irq +EXPORT_SYMBOL_GPL vmlinux 0x48f49400 apei_hest_parse +EXPORT_SYMBOL_GPL vmlinux 0x490011e0 pm_runtime_force_resume +EXPORT_SYMBOL_GPL vmlinux 0x49004cb2 scsi_dh_set_params +EXPORT_SYMBOL_GPL vmlinux 0x4903137d pci_iomap_wc +EXPORT_SYMBOL_GPL vmlinux 0x49242bc7 freezer_cgrp_subsys_on_dfl_key +EXPORT_SYMBOL_GPL vmlinux 0x49384344 devm_phy_create +EXPORT_SYMBOL_GPL vmlinux 0x4939ebcd numa_map_to_online_node +EXPORT_SYMBOL_GPL vmlinux 0x493a2584 fb_deferred_io_cleanup +EXPORT_SYMBOL_GPL vmlinux 0x493ca54c rio_request_inb_pwrite +EXPORT_SYMBOL_GPL vmlinux 0x4949cc15 ata_host_suspend +EXPORT_SYMBOL_GPL vmlinux 0x494bef6f dev_pm_domain_attach_by_name +EXPORT_SYMBOL_GPL vmlinux 0x495cb2c3 pcie_port_bus_type +EXPORT_SYMBOL_GPL vmlinux 0x4966934f __lock_page_killable +EXPORT_SYMBOL_GPL vmlinux 0x4978f18c inet_csk_route_req +EXPORT_SYMBOL_GPL vmlinux 0x499043d3 crypto_init_queue +EXPORT_SYMBOL_GPL vmlinux 0x4991537f regmap_get_raw_write_max +EXPORT_SYMBOL_GPL vmlinux 0x49951708 sev_enable_key +EXPORT_SYMBOL_GPL vmlinux 0x499fd7a1 xfrm_audit_state_notfound +EXPORT_SYMBOL_GPL vmlinux 0x49a1991f nexthop_for_each_fib6_nh +EXPORT_SYMBOL_GPL vmlinux 0x49c14a61 ex_handler_fault +EXPORT_SYMBOL_GPL vmlinux 0x49c18e4a fib_nh_common_init +EXPORT_SYMBOL_GPL vmlinux 0x49c511ce crypto_destroy_tfm +EXPORT_SYMBOL_GPL vmlinux 0x49c5400d kobj_sysfs_ops +EXPORT_SYMBOL_GPL vmlinux 0x49c9cf2b led_classdev_register_ext +EXPORT_SYMBOL_GPL vmlinux 0x49db5c64 __tracepoint_neigh_event_send_done +EXPORT_SYMBOL_GPL vmlinux 0x49e96999 cond_synchronize_rcu +EXPORT_SYMBOL_GPL vmlinux 0x4a080226 md_do_sync +EXPORT_SYMBOL_GPL vmlinux 0x4a17ed66 sysrq_mask +EXPORT_SYMBOL_GPL vmlinux 0x4a1dbe93 dw8250_setup_port +EXPORT_SYMBOL_GPL vmlinux 0x4a2c5d86 virtqueue_get_buf_ctx +EXPORT_SYMBOL_GPL vmlinux 0x4a39b534 tpm_tis_core_init +EXPORT_SYMBOL_GPL vmlinux 0x4a420d09 acpi_bus_detach_private_data +EXPORT_SYMBOL_GPL vmlinux 0x4a49886e spi_async +EXPORT_SYMBOL_GPL vmlinux 0x4a5a20c2 usb_enable_autosuspend +EXPORT_SYMBOL_GPL vmlinux 0x4a5cbef5 devlink_dpipe_entry_ctx_prepare +EXPORT_SYMBOL_GPL vmlinux 0x4a5fc951 dm_disk +EXPORT_SYMBOL_GPL vmlinux 0x4a8665f1 linear_hugepage_index +EXPORT_SYMBOL_GPL vmlinux 0x4a965d0b add_page_wait_queue +EXPORT_SYMBOL_GPL vmlinux 0x4a9be07c wm8400_reset_codec_reg_cache +EXPORT_SYMBOL_GPL vmlinux 0x4aa349cb kvm_clock +EXPORT_SYMBOL_GPL vmlinux 0x4aa58bea inet_getpeer +EXPORT_SYMBOL_GPL vmlinux 0x4aaa0eb4 usb_enable_intel_xhci_ports +EXPORT_SYMBOL_GPL vmlinux 0x4ab095d0 crypto_alg_extsize +EXPORT_SYMBOL_GPL vmlinux 0x4ac4521c __ata_change_queue_depth +EXPORT_SYMBOL_GPL vmlinux 0x4ae38fcc xdp_return_frame +EXPORT_SYMBOL_GPL vmlinux 0x4ae73a7c rio_mport_initialize +EXPORT_SYMBOL_GPL vmlinux 0x4af51193 debugfs_create_regset32 +EXPORT_SYMBOL_GPL vmlinux 0x4b2097a8 do_take_over_console +EXPORT_SYMBOL_GPL vmlinux 0x4b2b8416 iommu_group_get +EXPORT_SYMBOL_GPL vmlinux 0x4b42bc77 genphy_c45_pma_read_abilities +EXPORT_SYMBOL_GPL vmlinux 0x4b45faaa tpm_chip_unregister +EXPORT_SYMBOL_GPL vmlinux 0x4b464ce5 user_describe +EXPORT_SYMBOL_GPL vmlinux 0x4b51f74c ata_xfer_mode2mask +EXPORT_SYMBOL_GPL vmlinux 0x4b56ce05 xenmem_reservation_increase +EXPORT_SYMBOL_GPL vmlinux 0x4b5b4806 genphy_c45_read_link +EXPORT_SYMBOL_GPL vmlinux 0x4b61765b pci_test_config_bits +EXPORT_SYMBOL_GPL vmlinux 0x4b61e1e9 crypto_ahash_digest +EXPORT_SYMBOL_GPL vmlinux 0x4b762828 start_thread +EXPORT_SYMBOL_GPL vmlinux 0x4b931968 xen_features +EXPORT_SYMBOL_GPL vmlinux 0x4b9e6a5c wm8350_set_bits +EXPORT_SYMBOL_GPL vmlinux 0x4ba44be0 sbitmap_show +EXPORT_SYMBOL_GPL vmlinux 0x4ba8639f user_update +EXPORT_SYMBOL_GPL vmlinux 0x4bc2870c to_nvdimm_bus +EXPORT_SYMBOL_GPL vmlinux 0x4bc3363c dm_get_md +EXPORT_SYMBOL_GPL vmlinux 0x4bc8727f xen_balloon_init +EXPORT_SYMBOL_GPL vmlinux 0x4bd0d062 blkcg_deactivate_policy +EXPORT_SYMBOL_GPL vmlinux 0x4be1e4e5 phy_create +EXPORT_SYMBOL_GPL vmlinux 0x4bf052af device_create_file +EXPORT_SYMBOL_GPL vmlinux 0x4c0b8142 ata_pci_bmdma_clear_simplex +EXPORT_SYMBOL_GPL vmlinux 0x4c0d5911 regmap_get_device +EXPORT_SYMBOL_GPL vmlinux 0x4c0e8846 mddev_unlock +EXPORT_SYMBOL_GPL vmlinux 0x4c2c0ea7 evtchn_make_refcounted +EXPORT_SYMBOL_GPL vmlinux 0x4c2f08bf perf_pmu_register +EXPORT_SYMBOL_GPL vmlinux 0x4c345889 sched_trace_cfs_rq_cpu +EXPORT_SYMBOL_GPL vmlinux 0x4c47fe4c gnttab_free_pages +EXPORT_SYMBOL_GPL vmlinux 0x4c762b5c x86_stepping +EXPORT_SYMBOL_GPL vmlinux 0x4c7f185d pinctrl_unregister +EXPORT_SYMBOL_GPL vmlinux 0x4cbfa1ac ata_ehi_clear_desc +EXPORT_SYMBOL_GPL vmlinux 0x4ccba9fd file_ra_state_init +EXPORT_SYMBOL_GPL vmlinux 0x4cd93684 nvmem_cell_read_u32 +EXPORT_SYMBOL_GPL vmlinux 0x4cf9dd17 gpiochip_irq_unmap +EXPORT_SYMBOL_GPL vmlinux 0x4cfea900 get_dev_pagemap +EXPORT_SYMBOL_GPL vmlinux 0x4d0015e2 cpu_hotplug_disable +EXPORT_SYMBOL_GPL vmlinux 0x4d0e1eb0 irq_chip_ack_parent +EXPORT_SYMBOL_GPL vmlinux 0x4d174a46 lwtunnel_build_state +EXPORT_SYMBOL_GPL vmlinux 0x4d202b8c __xas_prev +EXPORT_SYMBOL_GPL vmlinux 0x4d3a76ac xfrm_state_mtu +EXPORT_SYMBOL_GPL vmlinux 0x4d428b35 __ata_ehi_push_desc +EXPORT_SYMBOL_GPL vmlinux 0x4d4b557e led_init_core +EXPORT_SYMBOL_GPL vmlinux 0x4d4d7b79 blk_mq_map_queues +EXPORT_SYMBOL_GPL vmlinux 0x4d52bd3a fwnode_gpiod_get_index +EXPORT_SYMBOL_GPL vmlinux 0x4d687129 nd_cmd_out_size +EXPORT_SYMBOL_GPL vmlinux 0x4d6d0bbc iommu_group_ref_get +EXPORT_SYMBOL_GPL vmlinux 0x4d75e619 regulator_map_voltage_linear +EXPORT_SYMBOL_GPL vmlinux 0x4d7e37fe dma_buf_export +EXPORT_SYMBOL_GPL vmlinux 0x4d8a96ab xas_set_mark +EXPORT_SYMBOL_GPL vmlinux 0x4d964e74 cpufreq_frequency_table_get_index +EXPORT_SYMBOL_GPL vmlinux 0x4da1f4a7 list_lru_del +EXPORT_SYMBOL_GPL vmlinux 0x4dae16e4 i2c_put_dma_safe_msg_buf +EXPORT_SYMBOL_GPL vmlinux 0x4db47110 da903x_unregister_notifier +EXPORT_SYMBOL_GPL vmlinux 0x4db57087 devm_clk_bulk_get +EXPORT_SYMBOL_GPL vmlinux 0x4dc8b340 pcie_bus_configure_settings +EXPORT_SYMBOL_GPL vmlinux 0x4dc9eb4b ata_dev_disable +EXPORT_SYMBOL_GPL vmlinux 0x4dd9d14d cn_netlink_send_mult +EXPORT_SYMBOL_GPL vmlinux 0x4de17ab3 usb_state_string +EXPORT_SYMBOL_GPL vmlinux 0x4de656d6 pci_epc_map_addr +EXPORT_SYMBOL_GPL vmlinux 0x4dfb58d7 to_nd_region +EXPORT_SYMBOL_GPL vmlinux 0x4dffb69c sched_trace_rq_cpu +EXPORT_SYMBOL_GPL vmlinux 0x4e069ca7 debugfs_create_u32_array +EXPORT_SYMBOL_GPL vmlinux 0x4e17c613 ata_sff_queue_delayed_work +EXPORT_SYMBOL_GPL vmlinux 0x4e1a24e1 devm_regulator_unregister_supply_alias +EXPORT_SYMBOL_GPL vmlinux 0x4e1bd94e devm_intel_scu_ipc_dev_get +EXPORT_SYMBOL_GPL vmlinux 0x4e4867a0 ipv6_dup_options +EXPORT_SYMBOL_GPL vmlinux 0x4e4c37e2 freq_qos_remove_notifier +EXPORT_SYMBOL_GPL vmlinux 0x4e760bb5 sata_set_spd +EXPORT_SYMBOL_GPL vmlinux 0x4e85cc55 iomap_dio_iopoll +EXPORT_SYMBOL_GPL vmlinux 0x4e8feed4 crypto_register_templates +EXPORT_SYMBOL_GPL vmlinux 0x4e99a742 blk_queue_max_zone_append_sectors +EXPORT_SYMBOL_GPL vmlinux 0x4ea5f668 devm_of_phy_get +EXPORT_SYMBOL_GPL vmlinux 0x4eac5fc1 cpu_mitigations_auto_nosmt +EXPORT_SYMBOL_GPL vmlinux 0x4ec1f78b led_trigger_unregister +EXPORT_SYMBOL_GPL vmlinux 0x4ece3615 blocking_notifier_chain_unregister +EXPORT_SYMBOL_GPL vmlinux 0x4ed71ba1 hwspin_lock_request_specific +EXPORT_SYMBOL_GPL vmlinux 0x4ed8ace2 pingv6_ops +EXPORT_SYMBOL_GPL vmlinux 0x4edc94c7 firmware_request_cache +EXPORT_SYMBOL_GPL vmlinux 0x4edec5a5 crypto_aes_set_key +EXPORT_SYMBOL_GPL vmlinux 0x4ef5bcf4 perf_swevent_get_recursion_context +EXPORT_SYMBOL_GPL vmlinux 0x4f0fa658 of_phy_provider_unregister +EXPORT_SYMBOL_GPL vmlinux 0x4f17b1c6 mmu_interval_notifier_insert +EXPORT_SYMBOL_GPL vmlinux 0x4f2593f0 btree_update +EXPORT_SYMBOL_GPL vmlinux 0x4f57e3fa __devm_regmap_init +EXPORT_SYMBOL_GPL vmlinux 0x4f6a07fe show_rcu_gp_kthreads +EXPORT_SYMBOL_GPL vmlinux 0x4f72a987 uart_parse_options +EXPORT_SYMBOL_GPL vmlinux 0x4f7bbadf thermal_add_hwmon_sysfs +EXPORT_SYMBOL_GPL vmlinux 0x4f7ecf69 regulator_bulk_get +EXPORT_SYMBOL_GPL vmlinux 0x4f8ee743 skb_mpls_dec_ttl +EXPORT_SYMBOL_GPL vmlinux 0x4f91a5ee scsi_internal_device_block_nowait +EXPORT_SYMBOL_GPL vmlinux 0x4f998833 task_user_regset_view +EXPORT_SYMBOL_GPL vmlinux 0x4f9a7cd2 pci_epc_set_msix +EXPORT_SYMBOL_GPL vmlinux 0x4fac98a7 machine_check_poll +EXPORT_SYMBOL_GPL vmlinux 0x4fc02643 rhashtable_walk_exit +EXPORT_SYMBOL_GPL vmlinux 0x4fc8206e sock_zerocopy_put_abort +EXPORT_SYMBOL_GPL vmlinux 0x4fdc945d sata_deb_timing_normal +EXPORT_SYMBOL_GPL vmlinux 0x4fe1eddf unregister_netevent_notifier +EXPORT_SYMBOL_GPL vmlinux 0x4ff00370 acpi_device_fwnode_ops +EXPORT_SYMBOL_GPL vmlinux 0x4ff1c720 register_user_hw_breakpoint +EXPORT_SYMBOL_GPL vmlinux 0x500c768c apei_exec_read_register +EXPORT_SYMBOL_GPL vmlinux 0x5010a15a __pm_runtime_use_autosuspend +EXPORT_SYMBOL_GPL vmlinux 0x5016704c edac_mc_find_csrow_by_page +EXPORT_SYMBOL_GPL vmlinux 0x501ae252 transport_setup_device +EXPORT_SYMBOL_GPL vmlinux 0x5026585c xen_irq_from_gsi +EXPORT_SYMBOL_GPL vmlinux 0x50292c63 ping_hash +EXPORT_SYMBOL_GPL vmlinux 0x502c82d7 serdev_device_write_room +EXPORT_SYMBOL_GPL vmlinux 0x505a1923 inet_csk_compat_setsockopt +EXPORT_SYMBOL_GPL vmlinux 0x506cec72 iomap_fiemap +EXPORT_SYMBOL_GPL vmlinux 0x507a35b9 uart_console_device +EXPORT_SYMBOL_GPL vmlinux 0x507ebc7d fl6_update_dst +EXPORT_SYMBOL_GPL vmlinux 0x5091b823 ring_buffer_read_start +EXPORT_SYMBOL_GPL vmlinux 0x5099dbf5 get_current_tty +EXPORT_SYMBOL_GPL vmlinux 0x509d5f55 clk_divider_ro_ops +EXPORT_SYMBOL_GPL vmlinux 0x50a63f93 __tracepoint_devlink_hwmsg +EXPORT_SYMBOL_GPL vmlinux 0x50aadcce acpi_dev_get_dma_resources +EXPORT_SYMBOL_GPL vmlinux 0x50b03f5d l1tf_vmx_mitigation +EXPORT_SYMBOL_GPL vmlinux 0x50b5c464 task_active_pid_ns +EXPORT_SYMBOL_GPL vmlinux 0x50c4b64a led_classdev_suspend +EXPORT_SYMBOL_GPL vmlinux 0x50d1f870 pgprot_writecombine +EXPORT_SYMBOL_GPL vmlinux 0x50e7193a __i2c_first_dynamic_bus_num +EXPORT_SYMBOL_GPL vmlinux 0x50f11ab2 pci_enable_pcie_error_reporting +EXPORT_SYMBOL_GPL vmlinux 0x50fad434 round_jiffies_up +EXPORT_SYMBOL_GPL vmlinux 0x5102974d dma_max_mapping_size +EXPORT_SYMBOL_GPL vmlinux 0x51068c48 compat_only_sysfs_link_entry_to_kobj +EXPORT_SYMBOL_GPL vmlinux 0x5109e548 relay_flush +EXPORT_SYMBOL_GPL vmlinux 0x510be191 ata_sff_exec_command +EXPORT_SYMBOL_GPL vmlinux 0x51130514 proc_create_net_data +EXPORT_SYMBOL_GPL vmlinux 0x5116a6f1 edac_mc_alloc +EXPORT_SYMBOL_GPL vmlinux 0x51390c96 rcu_barrier_tasks_rude +EXPORT_SYMBOL_GPL vmlinux 0x514c0dc8 thermal_of_cooling_device_register +EXPORT_SYMBOL_GPL vmlinux 0x51640ae5 firmware_request_nowarn +EXPORT_SYMBOL_GPL vmlinux 0x5165610b skb_complete_tx_timestamp +EXPORT_SYMBOL_GPL vmlinux 0x5167b504 get_cpu_device +EXPORT_SYMBOL_GPL vmlinux 0x517c5564 unix_outq_len +EXPORT_SYMBOL_GPL vmlinux 0x5187ac4b xen_store_evtchn +EXPORT_SYMBOL_GPL vmlinux 0x518c2fc6 hpet_rtc_dropped_irq +EXPORT_SYMBOL_GPL vmlinux 0x5191485a arizona_dev_exit +EXPORT_SYMBOL_GPL vmlinux 0x5196bc86 icc_node_add +EXPORT_SYMBOL_GPL vmlinux 0x519f092f platform_device_put +EXPORT_SYMBOL_GPL vmlinux 0x51bdd20c pci_find_next_ext_capability +EXPORT_SYMBOL_GPL vmlinux 0x51c065c5 gpiod_get_raw_array_value +EXPORT_SYMBOL_GPL vmlinux 0x51c9e36a tty_buffer_lock_exclusive +EXPORT_SYMBOL_GPL vmlinux 0x51e4b891 crypto_register_algs +EXPORT_SYMBOL_GPL vmlinux 0x51e70531 __fat_fs_error +EXPORT_SYMBOL_GPL vmlinux 0x51f385e9 device_store_bool +EXPORT_SYMBOL_GPL vmlinux 0x51f3d255 get_device_system_crosststamp +EXPORT_SYMBOL_GPL vmlinux 0x51fda5c9 dev_pm_qos_hide_latency_limit +EXPORT_SYMBOL_GPL vmlinux 0x520614a7 crypto_rng_reset +EXPORT_SYMBOL_GPL vmlinux 0x52117087 sdio_readw +EXPORT_SYMBOL_GPL vmlinux 0x52121118 __tracepoint_non_standard_event +EXPORT_SYMBOL_GPL vmlinux 0x52252316 clk_unregister_fixed_rate +EXPORT_SYMBOL_GPL vmlinux 0x52431348 xenbus_transaction_start +EXPORT_SYMBOL_GPL vmlinux 0x52484a6b input_ff_flush +EXPORT_SYMBOL_GPL vmlinux 0x5249f170 ata_sff_port_intr +EXPORT_SYMBOL_GPL vmlinux 0x525d0aa3 trace_seq_printf +EXPORT_SYMBOL_GPL vmlinux 0x5267c291 __devm_regmap_init_spi +EXPORT_SYMBOL_GPL vmlinux 0x526a3302 extcon_get_edev_name +EXPORT_SYMBOL_GPL vmlinux 0x5271c928 sysfs_create_bin_file +EXPORT_SYMBOL_GPL vmlinux 0x527289f4 crypto_unregister_aeads +EXPORT_SYMBOL_GPL vmlinux 0x52933791 fsnotify_alloc_group +EXPORT_SYMBOL_GPL vmlinux 0x529bc3d7 mmc_regulator_get_supply +EXPORT_SYMBOL_GPL vmlinux 0x529bda51 bsg_job_get +EXPORT_SYMBOL_GPL vmlinux 0x529ca166 trace_seq_path +EXPORT_SYMBOL_GPL vmlinux 0x529e64e8 tty_perform_flush +EXPORT_SYMBOL_GPL vmlinux 0x529ed06a device_bind_driver +EXPORT_SYMBOL_GPL vmlinux 0x52b04be6 regulator_get_optional +EXPORT_SYMBOL_GPL vmlinux 0x52b1e3c7 pci_flags +EXPORT_SYMBOL_GPL vmlinux 0x52c24ca1 fwnode_graph_get_remote_endpoint +EXPORT_SYMBOL_GPL vmlinux 0x52c35e83 call_rcu_tasks_trace +EXPORT_SYMBOL_GPL vmlinux 0x52d54fce devlink_info_version_stored_put +EXPORT_SYMBOL_GPL vmlinux 0x52e6e125 tpm_transmit_cmd +EXPORT_SYMBOL_GPL vmlinux 0x52e8fc29 gnttab_alloc_pages +EXPORT_SYMBOL_GPL vmlinux 0x52f4cf05 add_to_page_cache_lru +EXPORT_SYMBOL_GPL vmlinux 0x52fb5629 pci_epc_mem_alloc_addr +EXPORT_SYMBOL_GPL vmlinux 0x532b90b5 kprobe_event_cmd_init +EXPORT_SYMBOL_GPL vmlinux 0x5336b397 pm_generic_suspend_late +EXPORT_SYMBOL_GPL vmlinux 0x533cc662 wm831x_regmap_config +EXPORT_SYMBOL_GPL vmlinux 0x533df681 devlink_traps_unregister +EXPORT_SYMBOL_GPL vmlinux 0x5358864e devlink_fmsg_binary_pair_nest_end +EXPORT_SYMBOL_GPL vmlinux 0x536822e3 sfp_module_insert +EXPORT_SYMBOL_GPL vmlinux 0x5371d1da irq_domain_create_hierarchy +EXPORT_SYMBOL_GPL vmlinux 0x53729a87 tpm_try_get_ops +EXPORT_SYMBOL_GPL vmlinux 0x538d073d phy_duplex_to_str +EXPORT_SYMBOL_GPL vmlinux 0x5391f2c7 gnttab_end_foreign_access_ref +EXPORT_SYMBOL_GPL vmlinux 0x539284b5 regulator_unregister_notifier +EXPORT_SYMBOL_GPL vmlinux 0x539b8df6 ipv6_opt_accepted +EXPORT_SYMBOL_GPL vmlinux 0x539f157b pci_xen_swiotlb_init_late +EXPORT_SYMBOL_GPL vmlinux 0x53b3b00d generic_file_buffered_read +EXPORT_SYMBOL_GPL vmlinux 0x53c089f5 property_entries_dup +EXPORT_SYMBOL_GPL vmlinux 0x53c47c53 apic +EXPORT_SYMBOL_GPL vmlinux 0x53cd2ca5 evm_verifyxattr +EXPORT_SYMBOL_GPL vmlinux 0x53d44d3e xfrm_dev_state_add +EXPORT_SYMBOL_GPL vmlinux 0x53e06c0c power_supply_find_ocv2cap_table +EXPORT_SYMBOL_GPL vmlinux 0x53e22db5 devm_of_icc_get +EXPORT_SYMBOL_GPL vmlinux 0x53e4f0f9 edac_mc_free +EXPORT_SYMBOL_GPL vmlinux 0x5410b875 gpiod_set_consumer_name +EXPORT_SYMBOL_GPL vmlinux 0x541100b5 inet_csk_route_child_sock +EXPORT_SYMBOL_GPL vmlinux 0x541bd60a irq_work_run +EXPORT_SYMBOL_GPL vmlinux 0x54215db5 visitor64 +EXPORT_SYMBOL_GPL vmlinux 0x542bf859 vfs_cancel_lock +EXPORT_SYMBOL_GPL vmlinux 0x54302dee irq_chip_unmask_parent +EXPORT_SYMBOL_GPL vmlinux 0x5435454c divider_ro_round_rate_parent +EXPORT_SYMBOL_GPL vmlinux 0x5447d949 usb_register_device_driver +EXPORT_SYMBOL_GPL vmlinux 0x544be7f5 da903x_update +EXPORT_SYMBOL_GPL vmlinux 0x545025e5 nvmem_add_cell_table +EXPORT_SYMBOL_GPL vmlinux 0x5457c526 regmap_field_alloc +EXPORT_SYMBOL_GPL vmlinux 0x5458432f do_unregister_con_driver +EXPORT_SYMBOL_GPL vmlinux 0x5463fd72 clone_private_mount +EXPORT_SYMBOL_GPL vmlinux 0x5479650c wm831x_auxadc_read +EXPORT_SYMBOL_GPL vmlinux 0x549525ef handle_nested_irq +EXPORT_SYMBOL_GPL vmlinux 0x54955855 alarm_start_relative +EXPORT_SYMBOL_GPL vmlinux 0x54974c44 kernfs_find_and_get_ns +EXPORT_SYMBOL_GPL vmlinux 0x549bcc42 xfrm_audit_state_icvfail +EXPORT_SYMBOL_GPL vmlinux 0x54b0a016 extcon_set_state_sync +EXPORT_SYMBOL_GPL vmlinux 0x54b4caa4 devm_device_remove_group +EXPORT_SYMBOL_GPL vmlinux 0x54b9f797 blk_queue_can_use_dma_map_merging +EXPORT_SYMBOL_GPL vmlinux 0x54bc2911 crypto_aead_decrypt +EXPORT_SYMBOL_GPL vmlinux 0x54e734ff blk_mq_freeze_queue_wait_timeout +EXPORT_SYMBOL_GPL vmlinux 0x54f18da2 device_connection_find +EXPORT_SYMBOL_GPL vmlinux 0x54f8fc3e em_register_perf_domain +EXPORT_SYMBOL_GPL vmlinux 0x550ce709 pat_enabled +EXPORT_SYMBOL_GPL vmlinux 0x5518b1a3 wakeup_source_create +EXPORT_SYMBOL_GPL vmlinux 0x55339365 flush_delayed_fput +EXPORT_SYMBOL_GPL vmlinux 0x553b49a4 cpufreq_get_driver_data +EXPORT_SYMBOL_GPL vmlinux 0x55417264 unregister_vt_notifier +EXPORT_SYMBOL_GPL vmlinux 0x55534e5d fuse_free_conn +EXPORT_SYMBOL_GPL vmlinux 0x55576399 get_user_pages_fast +EXPORT_SYMBOL_GPL vmlinux 0x555dbd7c class_remove_file_ns +EXPORT_SYMBOL_GPL vmlinux 0x555f9eca rhashtable_walk_enter +EXPORT_SYMBOL_GPL vmlinux 0x556d2606 clk_register_mux_table +EXPORT_SYMBOL_GPL vmlinux 0x556e4390 clk_get_rate +EXPORT_SYMBOL_GPL vmlinux 0x55784228 regmap_irq_get_virq +EXPORT_SYMBOL_GPL vmlinux 0x55b1ecf9 devm_hwspin_lock_free +EXPORT_SYMBOL_GPL vmlinux 0x55b4a5f9 __regmap_init_mmio_clk +EXPORT_SYMBOL_GPL vmlinux 0x55c76a23 ksys_sync_helper +EXPORT_SYMBOL_GPL vmlinux 0x55dcccae register_acpi_bus_type +EXPORT_SYMBOL_GPL vmlinux 0x55e08b8a spi_write_then_read +EXPORT_SYMBOL_GPL vmlinux 0x55eecff4 bit_wait_io_timeout +EXPORT_SYMBOL_GPL vmlinux 0x55fa147b acpi_set_modalias +EXPORT_SYMBOL_GPL vmlinux 0x56054c05 crypto_it_tab +EXPORT_SYMBOL_GPL vmlinux 0x56173654 pcap_set_ts_bits +EXPORT_SYMBOL_GPL vmlinux 0x561c5d77 sysfs_merge_group +EXPORT_SYMBOL_GPL vmlinux 0x561eaeca device_dma_supported +EXPORT_SYMBOL_GPL vmlinux 0x562283a3 pm_genpd_add_device +EXPORT_SYMBOL_GPL vmlinux 0x56256e8a orderly_poweroff +EXPORT_SYMBOL_GPL vmlinux 0x56310925 regulator_mode_to_status +EXPORT_SYMBOL_GPL vmlinux 0x56327b92 sata_pmp_port_ops +EXPORT_SYMBOL_GPL vmlinux 0x56398615 mark_tsc_unstable +EXPORT_SYMBOL_GPL vmlinux 0x5641485b tty_termios_encode_baud_rate +EXPORT_SYMBOL_GPL vmlinux 0x565654a6 devm_init_badblocks +EXPORT_SYMBOL_GPL vmlinux 0x565ec57e xfrm_audit_state_replay_overflow +EXPORT_SYMBOL_GPL vmlinux 0x567299af crypto_register_aead +EXPORT_SYMBOL_GPL vmlinux 0x5674b3cb rhashtable_free_and_destroy +EXPORT_SYMBOL_GPL vmlinux 0x568ca87a da903x_writes +EXPORT_SYMBOL_GPL vmlinux 0x569b926c dm_device_name +EXPORT_SYMBOL_GPL vmlinux 0x56ded71c devm_devfreq_event_add_edev +EXPORT_SYMBOL_GPL vmlinux 0x56dfbecd tty_port_tty_hangup +EXPORT_SYMBOL_GPL vmlinux 0x56fc185b skb_segment_list +EXPORT_SYMBOL_GPL vmlinux 0x56fd6a71 fscrypt_fname_siphash +EXPORT_SYMBOL_GPL vmlinux 0x56fee89d d_walk +EXPORT_SYMBOL_GPL vmlinux 0x571464ee ipv4_sk_redirect +EXPORT_SYMBOL_GPL vmlinux 0x5714da57 smp_ops +EXPORT_SYMBOL_GPL vmlinux 0x5714ec0f ata_host_alloc +EXPORT_SYMBOL_GPL vmlinux 0x57358110 tty_get_pgrp +EXPORT_SYMBOL_GPL vmlinux 0x573b5453 ipv6_fixup_options +EXPORT_SYMBOL_GPL vmlinux 0x574609c5 apei_exec_write_register_value +EXPORT_SYMBOL_GPL vmlinux 0x5747bd25 ata_pci_sff_activate_host +EXPORT_SYMBOL_GPL vmlinux 0x57496876 perf_trace_run_bpf_submit +EXPORT_SYMBOL_GPL vmlinux 0x575d8154 skb_zerocopy_headlen +EXPORT_SYMBOL_GPL vmlinux 0x57684f3c mmc_get_ext_csd +EXPORT_SYMBOL_GPL vmlinux 0x57719632 gnttab_grant_foreign_access +EXPORT_SYMBOL_GPL vmlinux 0x57732438 inet_twsk_purge +EXPORT_SYMBOL_GPL vmlinux 0x578980ec __class_create +EXPORT_SYMBOL_GPL vmlinux 0x578eeb4d hugetlb_cgrp_subsys_enabled_key +EXPORT_SYMBOL_GPL vmlinux 0x5790e7a0 pci_unlock_rescan_remove +EXPORT_SYMBOL_GPL vmlinux 0x579e0bf5 rtnl_unregister_all +EXPORT_SYMBOL_GPL vmlinux 0x57c2ba6e pci_epc_unmap_addr +EXPORT_SYMBOL_GPL vmlinux 0x57c39727 kdb_register_flags +EXPORT_SYMBOL_GPL vmlinux 0x57c590f5 pci_msi_unmask_irq +EXPORT_SYMBOL_GPL vmlinux 0x57c840f7 security_file_ioctl +EXPORT_SYMBOL_GPL vmlinux 0x57e10c16 elv_rqhash_del +EXPORT_SYMBOL_GPL vmlinux 0x57e4ad79 ehci_adjust_port_wakeup_flags +EXPORT_SYMBOL_GPL vmlinux 0x57f70547 secure_ipv4_port_ephemeral +EXPORT_SYMBOL_GPL vmlinux 0x57fa0ac3 unwind_get_return_address +EXPORT_SYMBOL_GPL vmlinux 0x57fd4d01 __tcp_send_ack +EXPORT_SYMBOL_GPL vmlinux 0x57ff6bd2 em_cpu_get +EXPORT_SYMBOL_GPL vmlinux 0x58276f93 cper_next_record_id +EXPORT_SYMBOL_GPL vmlinux 0x582b810a fat_search_long +EXPORT_SYMBOL_GPL vmlinux 0x5831e062 cpus_read_trylock +EXPORT_SYMBOL_GPL vmlinux 0x5848a7d0 rcu_read_unlock_trace_special +EXPORT_SYMBOL_GPL vmlinux 0x584f938f wm5110_revd_irq +EXPORT_SYMBOL_GPL vmlinux 0x5857d1cc usb_control_msg +EXPORT_SYMBOL_GPL vmlinux 0x5879a27d sfp_get_module_info +EXPORT_SYMBOL_GPL vmlinux 0x587f6e44 rdev_get_regmap +EXPORT_SYMBOL_GPL vmlinux 0x5884db33 serial8250_em485_destroy +EXPORT_SYMBOL_GPL vmlinux 0x5891420b irq_chip_eoi_parent +EXPORT_SYMBOL_GPL vmlinux 0x589f9d81 bio_release_pages +EXPORT_SYMBOL_GPL vmlinux 0x58a4f0fc is_transparent_hugepage +EXPORT_SYMBOL_GPL vmlinux 0x58d1b651 generic_online_page +EXPORT_SYMBOL_GPL vmlinux 0x58d42d1c gnttab_dma_alloc_pages +EXPORT_SYMBOL_GPL vmlinux 0x58d6311d trace_clock +EXPORT_SYMBOL_GPL vmlinux 0x58dc61e9 rio_release_outb_mbox +EXPORT_SYMBOL_GPL vmlinux 0x58def6ca sfp_module_remove +EXPORT_SYMBOL_GPL vmlinux 0x58f03b99 register_ftrace_function +EXPORT_SYMBOL_GPL vmlinux 0x58f47bd9 ata_noop_qc_prep +EXPORT_SYMBOL_GPL vmlinux 0x58f8d8d3 scsi_bus_type +EXPORT_SYMBOL_GPL vmlinux 0x590daa8c clk_hw_rate_is_protected +EXPORT_SYMBOL_GPL vmlinux 0x59107aa6 cpufreq_register_driver +EXPORT_SYMBOL_GPL vmlinux 0x591c8ff0 extcon_unregister_notifier +EXPORT_SYMBOL_GPL vmlinux 0x5924ef92 pci_cfg_access_lock +EXPORT_SYMBOL_GPL vmlinux 0x5957a47d tcp_leave_memory_pressure +EXPORT_SYMBOL_GPL vmlinux 0x597482c8 rtnl_link_register +EXPORT_SYMBOL_GPL vmlinux 0x597639d7 clk_hw_set_parent +EXPORT_SYMBOL_GPL vmlinux 0x5986d190 kdb_printf +EXPORT_SYMBOL_GPL vmlinux 0x59b2adbf input_ff_effect_from_user +EXPORT_SYMBOL_GPL vmlinux 0x59c60e2a pci_destroy_slot +EXPORT_SYMBOL_GPL vmlinux 0x59c6aff4 irq_set_affinity_hint +EXPORT_SYMBOL_GPL vmlinux 0x59d2a1b4 mm_unaccount_pinned_pages +EXPORT_SYMBOL_GPL vmlinux 0x59dbaeb1 fat_free_clusters +EXPORT_SYMBOL_GPL vmlinux 0x59dc1c81 crypto_shash_finup +EXPORT_SYMBOL_GPL vmlinux 0x5a0471aa __of_reset_control_get +EXPORT_SYMBOL_GPL vmlinux 0x5a090912 crypto_default_rng +EXPORT_SYMBOL_GPL vmlinux 0x5a1d134a rcu_momentary_dyntick_idle +EXPORT_SYMBOL_GPL vmlinux 0x5a1f9b73 debugfs_create_blob +EXPORT_SYMBOL_GPL vmlinux 0x5a378037 thermal_notify_framework +EXPORT_SYMBOL_GPL vmlinux 0x5a443cae serial8250_do_startup +EXPORT_SYMBOL_GPL vmlinux 0x5a49dbc9 timerqueue_del +EXPORT_SYMBOL_GPL vmlinux 0x5a61ebeb tcp_twsk_destructor +EXPORT_SYMBOL_GPL vmlinux 0x5a6cdb52 nf_ct_zone_dflt +EXPORT_SYMBOL_GPL vmlinux 0x5a6ed4e0 _copy_mc_to_iter +EXPORT_SYMBOL_GPL vmlinux 0x5a7bfe41 crypto_probing_notify +EXPORT_SYMBOL_GPL vmlinux 0x5a9a4e38 crypto_req_done +EXPORT_SYMBOL_GPL vmlinux 0x5aaf461a devm_gpiod_get_index +EXPORT_SYMBOL_GPL vmlinux 0x5ab0883a uart_console_write +EXPORT_SYMBOL_GPL vmlinux 0x5ab09745 edac_get_owner +EXPORT_SYMBOL_GPL vmlinux 0x5ac0d3e0 crypto_hash_walk_done +EXPORT_SYMBOL_GPL vmlinux 0x5ac16b1d __generic_fsdax_supported +EXPORT_SYMBOL_GPL vmlinux 0x5ae313d7 __clk_mux_determine_rate +EXPORT_SYMBOL_GPL vmlinux 0x5ae6d089 pci_device_group +EXPORT_SYMBOL_GPL vmlinux 0x5af6d187 blk_lld_busy +EXPORT_SYMBOL_GPL vmlinux 0x5afc7e37 bind_interdomain_evtchn_to_irqhandler +EXPORT_SYMBOL_GPL vmlinux 0x5b03af0b fork_usermode_blob +EXPORT_SYMBOL_GPL vmlinux 0x5b102fbc dma_buf_detach +EXPORT_SYMBOL_GPL vmlinux 0x5b21ceff ring_buffer_iter_peek +EXPORT_SYMBOL_GPL vmlinux 0x5b35c4f9 vfio_group_set_kvm +EXPORT_SYMBOL_GPL vmlinux 0x5b36910d nvdimm_bus_check_dimm_count +EXPORT_SYMBOL_GPL vmlinux 0x5b501f20 gpiod_get_array_value_cansleep +EXPORT_SYMBOL_GPL vmlinux 0x5b5b1656 skcipher_walk_atomise +EXPORT_SYMBOL_GPL vmlinux 0x5b6b0329 swiotlb_max_segment +EXPORT_SYMBOL_GPL vmlinux 0x5b6be678 sched_trace_rq_avg_dl +EXPORT_SYMBOL_GPL vmlinux 0x5b7a8a2b sysfs_remove_files +EXPORT_SYMBOL_GPL vmlinux 0x5b7fc1ea watchdog_register_device +EXPORT_SYMBOL_GPL vmlinux 0x5b863223 pwmchip_remove +EXPORT_SYMBOL_GPL vmlinux 0x5b884364 hyperv_report_panic_msg +EXPORT_SYMBOL_GPL vmlinux 0x5b90eb6f gpiochip_relres_irq +EXPORT_SYMBOL_GPL vmlinux 0x5ba8c1b0 blk_mq_init_queue_data +EXPORT_SYMBOL_GPL vmlinux 0x5bb289ac __tracepoint_extlog_mem_event +EXPORT_SYMBOL_GPL vmlinux 0x5bb2cb99 ping_common_sendmsg +EXPORT_SYMBOL_GPL vmlinux 0x5bbb9231 spi_async_locked +EXPORT_SYMBOL_GPL vmlinux 0x5bbdfa26 scatterwalk_ffwd +EXPORT_SYMBOL_GPL vmlinux 0x5bc125d6 raw_abort +EXPORT_SYMBOL_GPL vmlinux 0x5bc1c6b2 devm_usb_get_phy_by_phandle +EXPORT_SYMBOL_GPL vmlinux 0x5bc7d34e ima_file_check +EXPORT_SYMBOL_GPL vmlinux 0x5bccc82e phy_create_lookup +EXPORT_SYMBOL_GPL vmlinux 0x5bd0748f crypto_del_default_rng +EXPORT_SYMBOL_GPL vmlinux 0x5bdae35b usb_phy_roothub_set_mode +EXPORT_SYMBOL_GPL vmlinux 0x5bdb3367 ehci_hub_control +EXPORT_SYMBOL_GPL vmlinux 0x5bdbac4e rcu_unexpedite_gp +EXPORT_SYMBOL_GPL vmlinux 0x5bf98217 sk_clone_lock +EXPORT_SYMBOL_GPL vmlinux 0x5bfae8ff kernel_kobj +EXPORT_SYMBOL_GPL vmlinux 0x5c0f1f6f edac_pci_create_generic_ctl +EXPORT_SYMBOL_GPL vmlinux 0x5c11cdbb spi_sync_locked +EXPORT_SYMBOL_GPL vmlinux 0x5c1b2640 clean_acked_data_disable +EXPORT_SYMBOL_GPL vmlinux 0x5c2bcd37 bpf_warn_invalid_xdp_action +EXPORT_SYMBOL_GPL vmlinux 0x5c3842ef rt_mutex_timed_lock +EXPORT_SYMBOL_GPL vmlinux 0x5c5a1b16 tick_broadcast_control +EXPORT_SYMBOL_GPL vmlinux 0x5c66e90c efivar_run_worker +EXPORT_SYMBOL_GPL vmlinux 0x5c714597 skb_gso_validate_network_len +EXPORT_SYMBOL_GPL vmlinux 0x5c7bf6f1 blk_mq_start_stopped_hw_queue +EXPORT_SYMBOL_GPL vmlinux 0x5c84db3c xhci_suspend +EXPORT_SYMBOL_GPL vmlinux 0x5c8be677 fib_add_nexthop +EXPORT_SYMBOL_GPL vmlinux 0x5c92be96 tpm_chip_alloc +EXPORT_SYMBOL_GPL vmlinux 0x5cab9945 unregister_xenbus_watch +EXPORT_SYMBOL_GPL vmlinux 0x5cad8fc3 power_supply_ocv2cap_simple +EXPORT_SYMBOL_GPL vmlinux 0x5cb0ddd5 intel_msic_reg_update +EXPORT_SYMBOL_GPL vmlinux 0x5cc4dc90 ohci_setup +EXPORT_SYMBOL_GPL vmlinux 0x5cd23975 xfrm_dev_offload_ok +EXPORT_SYMBOL_GPL vmlinux 0x5cd3e059 do_tcp_sendpages +EXPORT_SYMBOL_GPL vmlinux 0x5cde4a34 nvdimm_bus_unregister +EXPORT_SYMBOL_GPL vmlinux 0x5d0629bb kthread_cancel_work_sync +EXPORT_SYMBOL_GPL vmlinux 0x5d17148b apei_write +EXPORT_SYMBOL_GPL vmlinux 0x5d328885 gpiochip_generic_request +EXPORT_SYMBOL_GPL vmlinux 0x5d3298ba ata_scsi_dma_need_drain +EXPORT_SYMBOL_GPL vmlinux 0x5d7b2c38 vfio_virqfd_disable +EXPORT_SYMBOL_GPL vmlinux 0x5d7bba05 sched_setscheduler_nocheck +EXPORT_SYMBOL_GPL vmlinux 0x5d7c254b pci_epc_destroy +EXPORT_SYMBOL_GPL vmlinux 0x5d8476d3 bpf_sk_storage_diag_alloc +EXPORT_SYMBOL_GPL vmlinux 0x5d90c0e3 mbox_request_channel_byname +EXPORT_SYMBOL_GPL vmlinux 0x5d9317d7 uv_teardown_irq +EXPORT_SYMBOL_GPL vmlinux 0x5d966550 debugfs_create_x64 +EXPORT_SYMBOL_GPL vmlinux 0x5da67adc zs_compact +EXPORT_SYMBOL_GPL vmlinux 0x5dad8bdd acpi_register_gsi +EXPORT_SYMBOL_GPL vmlinux 0x5db6c164 wm8350_clear_bits +EXPORT_SYMBOL_GPL vmlinux 0x5db71a49 handle_fasteoi_nmi +EXPORT_SYMBOL_GPL vmlinux 0x5db9ab13 usb_match_one_id +EXPORT_SYMBOL_GPL vmlinux 0x5dbbfb3a efivar_entry_delete +EXPORT_SYMBOL_GPL vmlinux 0x5dbcfa4f boot_cpu_physical_apicid +EXPORT_SYMBOL_GPL vmlinux 0x5de2bfdd register_kretprobes +EXPORT_SYMBOL_GPL vmlinux 0x5de7447d __atomic_notifier_call_chain +EXPORT_SYMBOL_GPL vmlinux 0x5df141c3 crypto_grab_aead +EXPORT_SYMBOL_GPL vmlinux 0x5e02aa5d tty_save_termios +EXPORT_SYMBOL_GPL vmlinux 0x5e0ab70b mddev_init_writes_pending +EXPORT_SYMBOL_GPL vmlinux 0x5e0f18a9 devm_extcon_dev_register +EXPORT_SYMBOL_GPL vmlinux 0x5e115d85 power_supply_register_no_ws +EXPORT_SYMBOL_GPL vmlinux 0x5e173309 cpu_cgrp_subsys_on_dfl_key +EXPORT_SYMBOL_GPL vmlinux 0x5e2cb6dd blk_ksm_register +EXPORT_SYMBOL_GPL vmlinux 0x5e3a32b4 md_allow_write +EXPORT_SYMBOL_GPL vmlinux 0x5e3a5171 sdio_writeb_readb +EXPORT_SYMBOL_GPL vmlinux 0x5e4c7a5c perf_tp_event +EXPORT_SYMBOL_GPL vmlinux 0x5e515be6 ktime_get_ts64 +EXPORT_SYMBOL_GPL vmlinux 0x5e51cd74 swiotlb_nr_tbl +EXPORT_SYMBOL_GPL vmlinux 0x5e5b2eff wakeup_source_destroy +EXPORT_SYMBOL_GPL vmlinux 0x5e75bbcb gpiod_set_raw_value_cansleep +EXPORT_SYMBOL_GPL vmlinux 0x5e798ffb divider_get_val +EXPORT_SYMBOL_GPL vmlinux 0x5e85415b ring_buffer_consume +EXPORT_SYMBOL_GPL vmlinux 0x5e87a4ea pinctrl_force_sleep +EXPORT_SYMBOL_GPL vmlinux 0x5e8b7937 usb_put_phy +EXPORT_SYMBOL_GPL vmlinux 0x5e8e7686 bio_associate_blkg +EXPORT_SYMBOL_GPL vmlinux 0x5e94b69a tcp_cong_avoid_ai +EXPORT_SYMBOL_GPL vmlinux 0x5e95c216 fat_scan +EXPORT_SYMBOL_GPL vmlinux 0x5e95f1e9 pci_enable_sriov +EXPORT_SYMBOL_GPL vmlinux 0x5e986e39 class_interface_unregister +EXPORT_SYMBOL_GPL vmlinux 0x5e9f2f54 devm_clk_hw_unregister +EXPORT_SYMBOL_GPL vmlinux 0x5eb10fb1 nf_checksum_partial +EXPORT_SYMBOL_GPL vmlinux 0x5ec62549 ata_dev_classify +EXPORT_SYMBOL_GPL vmlinux 0x5ecb8105 handle_level_irq +EXPORT_SYMBOL_GPL vmlinux 0x5ecc7c4b get_pid_task +EXPORT_SYMBOL_GPL vmlinux 0x5ed654eb pci_num_vf +EXPORT_SYMBOL_GPL vmlinux 0x5ee1351d lwtunnel_cmp_encap +EXPORT_SYMBOL_GPL vmlinux 0x5ee2e57b seg6_do_srh_encap +EXPORT_SYMBOL_GPL vmlinux 0x5eeaf495 fuse_abort_conn +EXPORT_SYMBOL_GPL vmlinux 0x5ef475c4 regulator_get_voltage +EXPORT_SYMBOL_GPL vmlinux 0x5efea641 public_key_subtype +EXPORT_SYMBOL_GPL vmlinux 0x5f0da6c4 rio_unlock_device +EXPORT_SYMBOL_GPL vmlinux 0x5f1084f4 irq_create_of_mapping +EXPORT_SYMBOL_GPL vmlinux 0x5f164f0b __mmu_notifier_register +EXPORT_SYMBOL_GPL vmlinux 0x5f20c26e rio_enable_rx_tx_port +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 0x5f3ce8db regulator_is_enabled +EXPORT_SYMBOL_GPL vmlinux 0x5f45b05c dev_pm_opp_get_level +EXPORT_SYMBOL_GPL vmlinux 0x5f5adf11 vfio_device_get_from_dev +EXPORT_SYMBOL_GPL vmlinux 0x5f6f1e9e dax_get_private +EXPORT_SYMBOL_GPL vmlinux 0x5f760d7a virtio_config_enable +EXPORT_SYMBOL_GPL vmlinux 0x5f7d674c software_node_fwnode +EXPORT_SYMBOL_GPL vmlinux 0x5f828d35 crypto_unregister_acomp +EXPORT_SYMBOL_GPL vmlinux 0x5f8a1a0a vfs_read +EXPORT_SYMBOL_GPL vmlinux 0x5f8bfdc0 fwnode_property_present +EXPORT_SYMBOL_GPL vmlinux 0x5f98b376 synth_event_create +EXPORT_SYMBOL_GPL vmlinux 0x5f9caecf virtqueue_poll +EXPORT_SYMBOL_GPL vmlinux 0x5f9cdd75 pm_generic_resume_early +EXPORT_SYMBOL_GPL vmlinux 0x5faa347e crypto_unregister_rng +EXPORT_SYMBOL_GPL vmlinux 0x5fdfa2c1 amd_pmu_enable_virt +EXPORT_SYMBOL_GPL vmlinux 0x5feaa0c0 __netpoll_setup +EXPORT_SYMBOL_GPL vmlinux 0x5fed63e0 thermal_zone_get_offset +EXPORT_SYMBOL_GPL vmlinux 0x5ffc0a16 phy_10gbit_full_features +EXPORT_SYMBOL_GPL vmlinux 0x60069ee1 inet_ehash_locks_alloc +EXPORT_SYMBOL_GPL vmlinux 0x60091316 clk_notifier_register +EXPORT_SYMBOL_GPL vmlinux 0x601158a1 fat_get_dotdot_entry +EXPORT_SYMBOL_GPL vmlinux 0x601ba3eb __tracepoint_io_page_fault +EXPORT_SYMBOL_GPL vmlinux 0x6028ecbc devlink_trap_report +EXPORT_SYMBOL_GPL vmlinux 0x6029f05d dma_buf_get +EXPORT_SYMBOL_GPL vmlinux 0x602d638b strp_unpause +EXPORT_SYMBOL_GPL vmlinux 0x6036ebd1 debugfs_create_u64 +EXPORT_SYMBOL_GPL vmlinux 0x603b042f __srcu_read_unlock +EXPORT_SYMBOL_GPL vmlinux 0x603d0d51 acpi_os_map_iomem +EXPORT_SYMBOL_GPL vmlinux 0x604722fd devices_cgrp_subsys_enabled_key +EXPORT_SYMBOL_GPL vmlinux 0x60578e4f kobject_rename +EXPORT_SYMBOL_GPL vmlinux 0x605eddf3 irq_domain_xlate_onetwocell +EXPORT_SYMBOL_GPL vmlinux 0x60613221 tty_mode_ioctl +EXPORT_SYMBOL_GPL vmlinux 0x60657cee metadata_dst_free +EXPORT_SYMBOL_GPL vmlinux 0x60780fb7 nvdimm_to_bus +EXPORT_SYMBOL_GPL vmlinux 0x607c4683 devlink_info_version_fixed_put +EXPORT_SYMBOL_GPL vmlinux 0x60806523 i2c_acpi_get_i2c_resource +EXPORT_SYMBOL_GPL vmlinux 0x6091797f synchronize_rcu +EXPORT_SYMBOL_GPL vmlinux 0x60965560 disk_part_iter_init +EXPORT_SYMBOL_GPL vmlinux 0x60a13e90 rcu_barrier +EXPORT_SYMBOL_GPL vmlinux 0x60a634c4 vfio_info_cap_add +EXPORT_SYMBOL_GPL vmlinux 0x60a9ffea blk_mq_free_request +EXPORT_SYMBOL_GPL vmlinux 0x60b903af __list_lru_init +EXPORT_SYMBOL_GPL vmlinux 0x60bb0b98 scsi_autopm_get_device +EXPORT_SYMBOL_GPL vmlinux 0x60c11331 netlink_remove_tap +EXPORT_SYMBOL_GPL vmlinux 0x60dadf2f mctrl_gpio_init +EXPORT_SYMBOL_GPL vmlinux 0x60ebc96f ring_buffer_read_prepare +EXPORT_SYMBOL_GPL vmlinux 0x60f99e1b cppc_set_perf +EXPORT_SYMBOL_GPL vmlinux 0x611cfa85 klist_add_tail +EXPORT_SYMBOL_GPL vmlinux 0x611fbf04 pci_generic_config_read32 +EXPORT_SYMBOL_GPL vmlinux 0x6129fb93 sfp_remove_phy +EXPORT_SYMBOL_GPL vmlinux 0x612bfd89 errno_to_blk_status +EXPORT_SYMBOL_GPL vmlinux 0x614b2589 adp5520_register_notifier +EXPORT_SYMBOL_GPL vmlinux 0x6154a2a8 bpf_offload_dev_match +EXPORT_SYMBOL_GPL vmlinux 0x61685ba1 sysfs_group_change_owner +EXPORT_SYMBOL_GPL vmlinux 0x616b30c7 kmsg_dump_rewind +EXPORT_SYMBOL_GPL vmlinux 0x617b026c hwrng_register +EXPORT_SYMBOL_GPL vmlinux 0x6181e79f timerqueue_add +EXPORT_SYMBOL_GPL vmlinux 0x6198dfea __ring_buffer_alloc +EXPORT_SYMBOL_GPL vmlinux 0x6199ad5d crypto_has_skcipher +EXPORT_SYMBOL_GPL vmlinux 0x6199f520 sysfs_remove_file_ns +EXPORT_SYMBOL_GPL vmlinux 0x619b14da fpstate_init +EXPORT_SYMBOL_GPL vmlinux 0x61ae1d2d xas_pause +EXPORT_SYMBOL_GPL vmlinux 0x61b1e531 pinctrl_utils_free_map +EXPORT_SYMBOL_GPL vmlinux 0x61c742f0 ata_host_activate +EXPORT_SYMBOL_GPL vmlinux 0x61e0b28b acpi_pci_check_ejectable +EXPORT_SYMBOL_GPL vmlinux 0x61f1e711 dev_pm_domain_set +EXPORT_SYMBOL_GPL vmlinux 0x61f67c92 phy_gbit_features_array +EXPORT_SYMBOL_GPL vmlinux 0x620b1ccc each_symbol_section +EXPORT_SYMBOL_GPL vmlinux 0x6211f16a subsys_interface_unregister +EXPORT_SYMBOL_GPL vmlinux 0x6228934c devlink_resource_occ_get_register +EXPORT_SYMBOL_GPL vmlinux 0x622c7922 register_oom_notifier +EXPORT_SYMBOL_GPL vmlinux 0x622e58c3 ata_qc_complete +EXPORT_SYMBOL_GPL vmlinux 0x62377a7b blk_io_schedule +EXPORT_SYMBOL_GPL vmlinux 0x6246a629 synchronize_rcu_tasks_trace +EXPORT_SYMBOL_GPL vmlinux 0x6249e18d handle_bad_irq +EXPORT_SYMBOL_GPL vmlinux 0x624d8413 blk_execute_rq_nowait +EXPORT_SYMBOL_GPL vmlinux 0x6257dda7 clk_rate_exclusive_get +EXPORT_SYMBOL_GPL vmlinux 0x6259d291 clk_restore_context +EXPORT_SYMBOL_GPL vmlinux 0x62637f99 scsi_target_unblock +EXPORT_SYMBOL_GPL vmlinux 0x6263da62 platform_get_resource_byname +EXPORT_SYMBOL_GPL vmlinux 0x62859cb6 serdev_device_write_wakeup +EXPORT_SYMBOL_GPL vmlinux 0x628d0ad3 devlink_port_param_driverinit_value_get +EXPORT_SYMBOL_GPL vmlinux 0x629138cb __skb_tstamp_tx +EXPORT_SYMBOL_GPL vmlinux 0x62b4346e wbc_detach_inode +EXPORT_SYMBOL_GPL vmlinux 0x62bb09bf clocks_calc_mult_shift +EXPORT_SYMBOL_GPL vmlinux 0x62bce3fb crypto_register_shash +EXPORT_SYMBOL_GPL vmlinux 0x62c35021 gpiochip_is_requested +EXPORT_SYMBOL_GPL vmlinux 0x62d0227c pci_bus_add_device +EXPORT_SYMBOL_GPL vmlinux 0x62e071e7 sysfs_remove_group +EXPORT_SYMBOL_GPL vmlinux 0x62f040f7 phy_speed_down +EXPORT_SYMBOL_GPL vmlinux 0x62f46ee9 sock_zerocopy_alloc +EXPORT_SYMBOL_GPL vmlinux 0x62fb4a8c dm_hold +EXPORT_SYMBOL_GPL vmlinux 0x63123d7a bpf_trace_run9 +EXPORT_SYMBOL_GPL vmlinux 0x63150e06 clk_get_parent +EXPORT_SYMBOL_GPL vmlinux 0x63197685 s2idle_wake +EXPORT_SYMBOL_GPL vmlinux 0x6326d7cc mmc_send_status +EXPORT_SYMBOL_GPL vmlinux 0x6340434e x86_model +EXPORT_SYMBOL_GPL vmlinux 0x636bcc9a __vfs_setxattr_locked +EXPORT_SYMBOL_GPL vmlinux 0x638a9653 memory_add_physaddr_to_nid +EXPORT_SYMBOL_GPL vmlinux 0x638aff11 proc_douintvec_minmax +EXPORT_SYMBOL_GPL vmlinux 0x638fdae3 __rio_local_write_config_32 +EXPORT_SYMBOL_GPL vmlinux 0x639aeeab blk_mq_sched_request_inserted +EXPORT_SYMBOL_GPL vmlinux 0x63a4104c vfs_setxattr +EXPORT_SYMBOL_GPL vmlinux 0x63c08029 clk_bulk_unprepare +EXPORT_SYMBOL_GPL vmlinux 0x63c44b04 __irq_domain_alloc_fwnode +EXPORT_SYMBOL_GPL vmlinux 0x63c78649 pci_pasid_features +EXPORT_SYMBOL_GPL vmlinux 0x63c8fd2b hv_setup_stimer0_irq +EXPORT_SYMBOL_GPL vmlinux 0x63d9d5b5 vfio_external_group_match_file +EXPORT_SYMBOL_GPL vmlinux 0x63ea80b3 cper_mem_err_type_str +EXPORT_SYMBOL_GPL vmlinux 0x63ec9c14 tty_port_register_device_attr_serdev +EXPORT_SYMBOL_GPL vmlinux 0x63f62774 phy_package_leave +EXPORT_SYMBOL_GPL vmlinux 0x63fd36c5 cpufreq_policy_transition_delay_us +EXPORT_SYMBOL_GPL vmlinux 0x640463b3 usb_mon_register +EXPORT_SYMBOL_GPL vmlinux 0x640ab48f for_each_kernel_tracepoint +EXPORT_SYMBOL_GPL vmlinux 0x641eedad __clk_hw_register_mux +EXPORT_SYMBOL_GPL vmlinux 0x642a6152 devm_regulator_register_supply_alias +EXPORT_SYMBOL_GPL vmlinux 0x642ffb06 devm_memunmap_pages +EXPORT_SYMBOL_GPL vmlinux 0x643d917d scsi_ioctl_block_when_processing_errors +EXPORT_SYMBOL_GPL vmlinux 0x64476a1a pm_runtime_irq_safe +EXPORT_SYMBOL_GPL vmlinux 0x645dc2f2 scsi_queue_work +EXPORT_SYMBOL_GPL vmlinux 0x6461cc3c ata_qc_complete_multiple +EXPORT_SYMBOL_GPL vmlinux 0x646bde02 dw_pcie_find_capability +EXPORT_SYMBOL_GPL vmlinux 0x6488b63c usb_driver_claim_interface +EXPORT_SYMBOL_GPL vmlinux 0x64925270 __dax_synchronous +EXPORT_SYMBOL_GPL vmlinux 0x64a453f5 percpu_free_rwsem +EXPORT_SYMBOL_GPL vmlinux 0x64a62e11 acpi_processor_ffh_cstate_enter +EXPORT_SYMBOL_GPL vmlinux 0x64b6a497 devm_phy_put +EXPORT_SYMBOL_GPL vmlinux 0x64d3cc4e xas_load +EXPORT_SYMBOL_GPL vmlinux 0x64dd8948 phy_pm_runtime_put_sync +EXPORT_SYMBOL_GPL vmlinux 0x64e08f3a devm_pwm_get +EXPORT_SYMBOL_GPL vmlinux 0x64e27c4f synth_event_delete +EXPORT_SYMBOL_GPL vmlinux 0x64f36620 dax_flush +EXPORT_SYMBOL_GPL vmlinux 0x64f5fc0c devres_remove +EXPORT_SYMBOL_GPL vmlinux 0x64faf25c vprintk_default +EXPORT_SYMBOL_GPL vmlinux 0x6502d9c2 xenbus_scanf +EXPORT_SYMBOL_GPL vmlinux 0x650519b3 irq_setup_alt_chip +EXPORT_SYMBOL_GPL vmlinux 0x650d1688 regmap_irq_get_domain +EXPORT_SYMBOL_GPL vmlinux 0x651484ef iommu_sva_get_pasid +EXPORT_SYMBOL_GPL vmlinux 0x651fa03b cpuidle_register +EXPORT_SYMBOL_GPL vmlinux 0x6527a231 dbgp_external_startup +EXPORT_SYMBOL_GPL vmlinux 0x65329bfe tty_release_struct +EXPORT_SYMBOL_GPL vmlinux 0x6545d6b8 ata_sas_port_init +EXPORT_SYMBOL_GPL vmlinux 0x65467984 irq_chip_set_type_parent +EXPORT_SYMBOL_GPL vmlinux 0x655778a5 devlink_net +EXPORT_SYMBOL_GPL vmlinux 0x655a45b5 fb_deferred_io_init +EXPORT_SYMBOL_GPL vmlinux 0x656545b6 blkcg_policy_register +EXPORT_SYMBOL_GPL vmlinux 0x656b5fca dw_pcie_ep_init +EXPORT_SYMBOL_GPL vmlinux 0x65704d22 hv_stimer_cleanup +EXPORT_SYMBOL_GPL vmlinux 0x65831cfb rio_unregister_scan +EXPORT_SYMBOL_GPL vmlinux 0x6586dda6 extcon_set_property_capability +EXPORT_SYMBOL_GPL vmlinux 0x6595b9e4 show_class_attr_string +EXPORT_SYMBOL_GPL vmlinux 0x659a9954 crypto_enqueue_request +EXPORT_SYMBOL_GPL vmlinux 0x659e63f8 tracepoint_probe_register +EXPORT_SYMBOL_GPL vmlinux 0x65b3c5d4 irq_domain_associate +EXPORT_SYMBOL_GPL vmlinux 0x65bde8bc virtqueue_detach_unused_buf +EXPORT_SYMBOL_GPL vmlinux 0x65cc9ffa input_ff_destroy +EXPORT_SYMBOL_GPL vmlinux 0x65ccb6f0 call_netevent_notifiers +EXPORT_SYMBOL_GPL vmlinux 0x65d59488 devlink_dpipe_table_register +EXPORT_SYMBOL_GPL vmlinux 0x65d74698 user_destroy +EXPORT_SYMBOL_GPL vmlinux 0x65e09de4 usb_hcd_check_unlink_urb +EXPORT_SYMBOL_GPL vmlinux 0x65e17eaa pm_runtime_enable +EXPORT_SYMBOL_GPL vmlinux 0x65f6eb86 crypto_lookup_template +EXPORT_SYMBOL_GPL vmlinux 0x65fa7f9e ata_pci_sff_init_host +EXPORT_SYMBOL_GPL vmlinux 0x65fd0c8a trace_array_destroy +EXPORT_SYMBOL_GPL vmlinux 0x65fe833d phy_calibrate +EXPORT_SYMBOL_GPL vmlinux 0x66126976 addrconf_prefix_rcv_add_addr +EXPORT_SYMBOL_GPL vmlinux 0x661601de sprint_symbol +EXPORT_SYMBOL_GPL vmlinux 0x661c2710 kgdb_register_io_module +EXPORT_SYMBOL_GPL vmlinux 0x662291c0 mbox_controller_register +EXPORT_SYMBOL_GPL vmlinux 0x662ad759 iommu_group_remove_device +EXPORT_SYMBOL_GPL vmlinux 0x6636c3c9 irq_set_vcpu_affinity +EXPORT_SYMBOL_GPL vmlinux 0x663bb448 devlink_fmsg_obj_nest_end +EXPORT_SYMBOL_GPL vmlinux 0x6656ee49 page_reporting_register +EXPORT_SYMBOL_GPL vmlinux 0x665e92a0 clk_set_duty_cycle +EXPORT_SYMBOL_GPL vmlinux 0x666b755a __tracepoint_xdp_exception +EXPORT_SYMBOL_GPL vmlinux 0x667064a2 bpf_trace_run12 +EXPORT_SYMBOL_GPL vmlinux 0x6673ab31 wm8350_reg_write +EXPORT_SYMBOL_GPL vmlinux 0x6678b40e dev_pm_get_subsys_data +EXPORT_SYMBOL_GPL vmlinux 0x668402aa crypto_put_default_rng +EXPORT_SYMBOL_GPL vmlinux 0x66854e72 find_symbol +EXPORT_SYMBOL_GPL vmlinux 0x668d5f8b __acpi_node_get_property_reference +EXPORT_SYMBOL_GPL vmlinux 0x6697f8d1 arizona_pm_ops +EXPORT_SYMBOL_GPL vmlinux 0x66a6c061 tracepoint_probe_register_prio +EXPORT_SYMBOL_GPL vmlinux 0x66aa0878 fwnode_property_match_string +EXPORT_SYMBOL_GPL vmlinux 0x66ae4727 mdio_bus_init +EXPORT_SYMBOL_GPL vmlinux 0x66b26b2b clk_hw_unregister_divider +EXPORT_SYMBOL_GPL vmlinux 0x66b6226e icc_get +EXPORT_SYMBOL_GPL vmlinux 0x66b97421 sfp_link_up +EXPORT_SYMBOL_GPL vmlinux 0x66bd3a45 key_type_trusted +EXPORT_SYMBOL_GPL vmlinux 0x66beaf1a pwm_capture +EXPORT_SYMBOL_GPL vmlinux 0x66d87d38 symbol_put_addr +EXPORT_SYMBOL_GPL vmlinux 0x66db0e19 dev_pm_put_subsys_data +EXPORT_SYMBOL_GPL vmlinux 0x66ee5d72 ip_route_output_flow +EXPORT_SYMBOL_GPL vmlinux 0x66ee9faa clk_hw_register_fractional_divider +EXPORT_SYMBOL_GPL vmlinux 0x66f1c156 fuse_dev_fiq_ops +EXPORT_SYMBOL_GPL vmlinux 0x66f626f8 fib6_check_nexthop +EXPORT_SYMBOL_GPL vmlinux 0x67079d7a devm_kmemdup +EXPORT_SYMBOL_GPL vmlinux 0x670a9871 xfrm_audit_state_replay +EXPORT_SYMBOL_GPL vmlinux 0x671a573a security_inode_setattr +EXPORT_SYMBOL_GPL vmlinux 0x671b9f3f uart_get_rs485_mode +EXPORT_SYMBOL_GPL vmlinux 0x672301e0 dev_pm_domain_start +EXPORT_SYMBOL_GPL vmlinux 0x6726c2b0 perf_event_create_kernel_counter +EXPORT_SYMBOL_GPL vmlinux 0x67303f27 powercap_register_control_type +EXPORT_SYMBOL_GPL vmlinux 0x6735d56e tcp_ca_get_name_by_key +EXPORT_SYMBOL_GPL vmlinux 0x6739a503 balloon_set_new_target +EXPORT_SYMBOL_GPL vmlinux 0x677dd4e0 gpiochip_enable_irq +EXPORT_SYMBOL_GPL vmlinux 0x6782806b serdev_device_get_tiocm +EXPORT_SYMBOL_GPL vmlinux 0x678db26f pci_epc_linkup +EXPORT_SYMBOL_GPL vmlinux 0x6790ebd3 mce_is_memory_error +EXPORT_SYMBOL_GPL vmlinux 0x6792e25a __tracepoint_unmap +EXPORT_SYMBOL_GPL vmlinux 0x67955ce6 profile_hits +EXPORT_SYMBOL_GPL vmlinux 0x679ca16b edac_pci_add_device +EXPORT_SYMBOL_GPL vmlinux 0x67a41e21 __raw_v6_lookup +EXPORT_SYMBOL_GPL vmlinux 0x67c0e931 dev_pm_opp_remove +EXPORT_SYMBOL_GPL vmlinux 0x67d1c6d6 usb_find_interface +EXPORT_SYMBOL_GPL vmlinux 0x67d2f8ff devm_regulator_unregister +EXPORT_SYMBOL_GPL vmlinux 0x67da9f7c sha512_zero_message_hash +EXPORT_SYMBOL_GPL vmlinux 0x67dcd76b uv_setup_irq +EXPORT_SYMBOL_GPL vmlinux 0x67f02cbb wm8350_reg_read +EXPORT_SYMBOL_GPL vmlinux 0x67f11832 pci_hp_create_module_link +EXPORT_SYMBOL_GPL vmlinux 0x67f16fba scsi_target_block +EXPORT_SYMBOL_GPL vmlinux 0x67f8f70f fwnode_get_nth_parent +EXPORT_SYMBOL_GPL vmlinux 0x6802eea2 fwnode_property_read_string_array +EXPORT_SYMBOL_GPL vmlinux 0x68280632 cleanup_srcu_struct +EXPORT_SYMBOL_GPL vmlinux 0x682ff057 ring_buffer_commit_overrun_cpu +EXPORT_SYMBOL_GPL vmlinux 0x6855ba00 irq_domain_simple_ops +EXPORT_SYMBOL_GPL vmlinux 0x685759dd led_blink_set_oneshot +EXPORT_SYMBOL_GPL vmlinux 0x686ce30e tpm2_flush_context +EXPORT_SYMBOL_GPL vmlinux 0x6870bca2 synchronize_srcu +EXPORT_SYMBOL_GPL vmlinux 0x688d317d gpiochip_irq_domain_activate +EXPORT_SYMBOL_GPL vmlinux 0x68952493 rcu_note_context_switch +EXPORT_SYMBOL_GPL vmlinux 0x68a7f3ed percpu_up_write +EXPORT_SYMBOL_GPL vmlinux 0x68aab822 fscrypt_show_test_dummy_encryption +EXPORT_SYMBOL_GPL vmlinux 0x68af03b0 dev_pm_opp_put_regulators +EXPORT_SYMBOL_GPL vmlinux 0x68d8f2c6 blk_steal_bios +EXPORT_SYMBOL_GPL vmlinux 0x68df9653 usb_hcd_link_urb_to_ep +EXPORT_SYMBOL_GPL vmlinux 0x68e0f858 device_register +EXPORT_SYMBOL_GPL vmlinux 0x68fb5a0b devlink_port_unregister +EXPORT_SYMBOL_GPL vmlinux 0x690f585e phy_basic_ports_array +EXPORT_SYMBOL_GPL vmlinux 0x6919eebb perf_event_refresh +EXPORT_SYMBOL_GPL vmlinux 0x69283f69 usb_alloc_streams +EXPORT_SYMBOL_GPL vmlinux 0x6931f65b mnt_clone_write +EXPORT_SYMBOL_GPL vmlinux 0x69326078 driver_unregister +EXPORT_SYMBOL_GPL vmlinux 0x69387737 vfio_add_group_dev +EXPORT_SYMBOL_GPL vmlinux 0x693ac369 gpiochip_line_is_irq +EXPORT_SYMBOL_GPL vmlinux 0x694d57ee acpi_subsys_runtime_suspend +EXPORT_SYMBOL_GPL vmlinux 0x6958ae23 dax_get_by_host +EXPORT_SYMBOL_GPL vmlinux 0x696340a5 __i2c_board_lock +EXPORT_SYMBOL_GPL vmlinux 0x6965e5b9 usb_hcd_unmap_urb_setup_for_dma +EXPORT_SYMBOL_GPL vmlinux 0x696d7e0b l1tf_mitigation +EXPORT_SYMBOL_GPL vmlinux 0x69798961 ping_unhash +EXPORT_SYMBOL_GPL vmlinux 0x697c5d0d tracing_snapshot_alloc +EXPORT_SYMBOL_GPL vmlinux 0x6980fa66 blkg_conf_finish +EXPORT_SYMBOL_GPL vmlinux 0x69bf596b tty_set_termios +EXPORT_SYMBOL_GPL vmlinux 0x69cfa7b4 device_find_child +EXPORT_SYMBOL_GPL vmlinux 0x69d62ab1 devm_usb_get_phy +EXPORT_SYMBOL_GPL vmlinux 0x69dcaa7e __mmc_send_status +EXPORT_SYMBOL_GPL vmlinux 0x69e04551 pktgen_xfrm_outer_mode_output +EXPORT_SYMBOL_GPL vmlinux 0x69e683de uuid_gen +EXPORT_SYMBOL_GPL vmlinux 0x69ee2220 linear_range_get_selector_high +EXPORT_SYMBOL_GPL vmlinux 0x69fb6050 pci_restore_msi_state +EXPORT_SYMBOL_GPL vmlinux 0x69fe886b platform_unregister_drivers +EXPORT_SYMBOL_GPL vmlinux 0x6a05b65b fb_videomode_from_videomode +EXPORT_SYMBOL_GPL vmlinux 0x6a090746 platform_device_add_properties +EXPORT_SYMBOL_GPL vmlinux 0x6a09fa0f led_put +EXPORT_SYMBOL_GPL vmlinux 0x6a0d93ef pci_check_and_mask_intx +EXPORT_SYMBOL_GPL vmlinux 0x6a1733eb iommu_group_unregister_notifier +EXPORT_SYMBOL_GPL vmlinux 0x6a178ed8 put_pid_ns +EXPORT_SYMBOL_GPL vmlinux 0x6a24c631 pci_sriov_set_totalvfs +EXPORT_SYMBOL_GPL vmlinux 0x6a27c45d pci_load_and_free_saved_state +EXPORT_SYMBOL_GPL vmlinux 0x6a27fce4 serdev_controller_alloc +EXPORT_SYMBOL_GPL vmlinux 0x6a39db0c dev_pm_domain_attach +EXPORT_SYMBOL_GPL vmlinux 0x6a421062 memory_failure_queue +EXPORT_SYMBOL_GPL vmlinux 0x6a460dc5 schedule_hrtimeout +EXPORT_SYMBOL_GPL vmlinux 0x6a4c0c7a dw_pcie_ep_init_complete +EXPORT_SYMBOL_GPL vmlinux 0x6a4f623b mmu_notifier_synchronize +EXPORT_SYMBOL_GPL vmlinux 0x6a5837b3 debugfs_create_size_t +EXPORT_SYMBOL_GPL vmlinux 0x6a5e2bde __cookie_v6_init_sequence +EXPORT_SYMBOL_GPL vmlinux 0x6a8441be cpci_hp_start +EXPORT_SYMBOL_GPL vmlinux 0x6a876f81 clockevents_register_device +EXPORT_SYMBOL_GPL vmlinux 0x6a8a7554 mbox_chan_received_data +EXPORT_SYMBOL_GPL vmlinux 0x6a93e3ee crypto_register_shashes +EXPORT_SYMBOL_GPL vmlinux 0x6a97064c fsnotify_destroy_mark +EXPORT_SYMBOL_GPL vmlinux 0x6aa2a877 xenbus_printf +EXPORT_SYMBOL_GPL vmlinux 0x6aad9152 xen_set_callback_via +EXPORT_SYMBOL_GPL vmlinux 0x6ab65a13 devres_for_each_res +EXPORT_SYMBOL_GPL vmlinux 0x6ab6a283 devm_serdev_device_open +EXPORT_SYMBOL_GPL vmlinux 0x6ac1054a netlink_add_tap +EXPORT_SYMBOL_GPL vmlinux 0x6adc1a04 __vring_new_virtqueue +EXPORT_SYMBOL_GPL vmlinux 0x6ae691db security_path_rmdir +EXPORT_SYMBOL_GPL vmlinux 0x6ae699f3 root_device_unregister +EXPORT_SYMBOL_GPL vmlinux 0x6aebe243 crypto_larval_alloc +EXPORT_SYMBOL_GPL vmlinux 0x6af4cd1c i2c_acpi_find_bus_speed +EXPORT_SYMBOL_GPL vmlinux 0x6afa0e32 xenbus_watch_path +EXPORT_SYMBOL_GPL vmlinux 0x6b003654 crypto_alloc_kpp +EXPORT_SYMBOL_GPL vmlinux 0x6b0dc565 xen_set_irq_priority +EXPORT_SYMBOL_GPL vmlinux 0x6b130f81 sdio_readb +EXPORT_SYMBOL_GPL vmlinux 0x6b22926b irq_work_sync +EXPORT_SYMBOL_GPL vmlinux 0x6b2420cc posix_clock_unregister +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 0x6b435c27 sdio_release_host +EXPORT_SYMBOL_GPL vmlinux 0x6b5b6d48 dev_pm_domain_detach +EXPORT_SYMBOL_GPL vmlinux 0x6b5e94b8 fib_rule_matchall +EXPORT_SYMBOL_GPL vmlinux 0x6b7a4335 hyperv_cleanup +EXPORT_SYMBOL_GPL vmlinux 0x6b81c38b power_supply_unreg_notifier +EXPORT_SYMBOL_GPL vmlinux 0x6b83c3f8 spi_unregister_controller +EXPORT_SYMBOL_GPL vmlinux 0x6b94625f xenbus_dev_suspend +EXPORT_SYMBOL_GPL vmlinux 0x6ba0ae5a platform_irq_count +EXPORT_SYMBOL_GPL vmlinux 0x6ba2e604 device_store_ulong +EXPORT_SYMBOL_GPL vmlinux 0x6ba36c6a hwpoison_filter_flags_value +EXPORT_SYMBOL_GPL vmlinux 0x6bb944cd regulator_set_voltage +EXPORT_SYMBOL_GPL vmlinux 0x6bc3cb11 xen_unmap_domain_gfn_range +EXPORT_SYMBOL_GPL vmlinux 0x6bc9e9ca rio_unregister_mport +EXPORT_SYMBOL_GPL vmlinux 0x6bd1aa56 stack_trace_save +EXPORT_SYMBOL_GPL vmlinux 0x6bdef35c acpi_ec_mark_gpe_for_wake +EXPORT_SYMBOL_GPL vmlinux 0x6beb089d regmap_mmio_attach_clk +EXPORT_SYMBOL_GPL vmlinux 0x6beb432b acpi_dma_simple_xlate +EXPORT_SYMBOL_GPL vmlinux 0x6c02bdf7 spi_new_device +EXPORT_SYMBOL_GPL vmlinux 0x6c0e75e6 phy_start_machine +EXPORT_SYMBOL_GPL vmlinux 0x6c27d6f8 blk_mq_force_complete_rq +EXPORT_SYMBOL_GPL vmlinux 0x6c28828b usb_hub_release_port +EXPORT_SYMBOL_GPL vmlinux 0x6c389761 acpi_bus_get_private_data +EXPORT_SYMBOL_GPL vmlinux 0x6c3b612b acpi_ec_add_query_handler +EXPORT_SYMBOL_GPL vmlinux 0x6c3da63a md_find_rdev_nr_rcu +EXPORT_SYMBOL_GPL vmlinux 0x6c3f70e0 guid_gen +EXPORT_SYMBOL_GPL vmlinux 0x6c3f827f xenbus_dev_is_online +EXPORT_SYMBOL_GPL vmlinux 0x6c4900a9 fwnode_property_read_string +EXPORT_SYMBOL_GPL vmlinux 0x6c4b6684 reset_control_assert +EXPORT_SYMBOL_GPL vmlinux 0x6c53f844 __irq_domain_add +EXPORT_SYMBOL_GPL vmlinux 0x6c567663 sysfs_unmerge_group +EXPORT_SYMBOL_GPL vmlinux 0x6c5a9398 xenbus_dev_cancel +EXPORT_SYMBOL_GPL vmlinux 0x6c6382cd pinctrl_pm_select_sleep_state +EXPORT_SYMBOL_GPL vmlinux 0x6c655913 register_acpi_hed_notifier +EXPORT_SYMBOL_GPL vmlinux 0x6c679626 disk_has_partitions +EXPORT_SYMBOL_GPL vmlinux 0x6c75a298 devm_pci_epc_destroy +EXPORT_SYMBOL_GPL vmlinux 0x6c99bbb6 blk_add_driver_data +EXPORT_SYMBOL_GPL vmlinux 0x6ca4bf88 async_synchronize_full_domain +EXPORT_SYMBOL_GPL vmlinux 0x6cc77103 pm_schedule_suspend +EXPORT_SYMBOL_GPL vmlinux 0x6cff99a1 devres_remove_group +EXPORT_SYMBOL_GPL vmlinux 0x6d0ae550 pinctrl_gpio_request +EXPORT_SYMBOL_GPL vmlinux 0x6d1085cb input_ff_upload +EXPORT_SYMBOL_GPL vmlinux 0x6d12d6b3 pci_disable_ats +EXPORT_SYMBOL_GPL vmlinux 0x6d2e899d mce_usable_address +EXPORT_SYMBOL_GPL vmlinux 0x6d2fc5a6 net_namespace_list +EXPORT_SYMBOL_GPL vmlinux 0x6d38a384 usb_get_dev +EXPORT_SYMBOL_GPL vmlinux 0x6d3e0380 tty_kopen +EXPORT_SYMBOL_GPL vmlinux 0x6d4bd1a2 i2c_probe_func_quick_read +EXPORT_SYMBOL_GPL vmlinux 0x6d5d8648 mbox_client_txdone +EXPORT_SYMBOL_GPL vmlinux 0x6d5e3d30 regulator_bulk_enable +EXPORT_SYMBOL_GPL vmlinux 0x6d698e21 lwtunnel_input +EXPORT_SYMBOL_GPL vmlinux 0x6d6fec1f ktime_mono_to_any +EXPORT_SYMBOL_GPL vmlinux 0x6d7b200a __devm_irq_alloc_descs +EXPORT_SYMBOL_GPL vmlinux 0x6d7e951e rcu_exp_batches_completed +EXPORT_SYMBOL_GPL vmlinux 0x6d9d624a sk_msg_free +EXPORT_SYMBOL_GPL vmlinux 0x6d9ee2a0 __request_percpu_irq +EXPORT_SYMBOL_GPL vmlinux 0x6dadef07 tps6586x_read +EXPORT_SYMBOL_GPL vmlinux 0x6db1e1ea iommu_aux_attach_device +EXPORT_SYMBOL_GPL vmlinux 0x6db3fc27 fwnode_get_named_child_node +EXPORT_SYMBOL_GPL vmlinux 0x6dbaafd3 put_old_timespec32 +EXPORT_SYMBOL_GPL vmlinux 0x6dcee8e9 regmap_mmio_detach_clk +EXPORT_SYMBOL_GPL vmlinux 0x6dd47e4f bdi_dev_name +EXPORT_SYMBOL_GPL vmlinux 0x6de4d195 irq_domain_free_fwnode +EXPORT_SYMBOL_GPL vmlinux 0x6df867cb usb_get_descriptor +EXPORT_SYMBOL_GPL vmlinux 0x6e00fcfb modify_ftrace_direct +EXPORT_SYMBOL_GPL vmlinux 0x6e17c720 ata_acpi_gtm_xfermask +EXPORT_SYMBOL_GPL vmlinux 0x6e19b3b9 __dax_driver_register +EXPORT_SYMBOL_GPL vmlinux 0x6e2a92f5 kthread_flush_worker +EXPORT_SYMBOL_GPL vmlinux 0x6e2cca2c devlink_dpipe_table_unregister +EXPORT_SYMBOL_GPL vmlinux 0x6e2cf472 spi_controller_suspend +EXPORT_SYMBOL_GPL vmlinux 0x6e30bc17 acpiphp_unregister_attention +EXPORT_SYMBOL_GPL vmlinux 0x6e3ff83a edac_device_alloc_index +EXPORT_SYMBOL_GPL vmlinux 0x6e4a9b29 isa_unregister_driver +EXPORT_SYMBOL_GPL vmlinux 0x6e4bc056 spi_res_free +EXPORT_SYMBOL_GPL vmlinux 0x6e4e50a2 devm_thermal_of_cooling_device_register +EXPORT_SYMBOL_GPL vmlinux 0x6e4fb0c6 iommu_map_sg +EXPORT_SYMBOL_GPL vmlinux 0x6e740915 __ndisc_fill_addr_option +EXPORT_SYMBOL_GPL vmlinux 0x6e7889a5 ip4_datagram_release_cb +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 0x6ead90e2 usb_unlocked_disable_lpm +EXPORT_SYMBOL_GPL vmlinux 0x6eb4235f __regmap_init_spi +EXPORT_SYMBOL_GPL vmlinux 0x6eb4a549 sdio_memcpy_toio +EXPORT_SYMBOL_GPL vmlinux 0x6ebe366f ktime_get_mono_fast_ns +EXPORT_SYMBOL_GPL vmlinux 0x6ec814ee usb_sg_init +EXPORT_SYMBOL_GPL vmlinux 0x6edb5de6 nd_tbl +EXPORT_SYMBOL_GPL vmlinux 0x6ee4a965 fwnode_handle_put +EXPORT_SYMBOL_GPL vmlinux 0x6ee8c94b sfp_get_module_eeprom +EXPORT_SYMBOL_GPL vmlinux 0x6ef6b54f ktime_get_boot_fast_ns +EXPORT_SYMBOL_GPL vmlinux 0x6f12560a get_old_timespec32 +EXPORT_SYMBOL_GPL vmlinux 0x6f134b7b phy_pm_runtime_forbid +EXPORT_SYMBOL_GPL vmlinux 0x6f1f3413 gnttab_unmap_refs_sync +EXPORT_SYMBOL_GPL vmlinux 0x6f224c0b usb_clear_halt +EXPORT_SYMBOL_GPL vmlinux 0x6f241d1b mnt_drop_write +EXPORT_SYMBOL_GPL vmlinux 0x6f29fdfa gpiochip_generic_config +EXPORT_SYMBOL_GPL vmlinux 0x6f30be86 check_move_unevictable_pages +EXPORT_SYMBOL_GPL vmlinux 0x6f347e26 serdev_device_wait_until_sent +EXPORT_SYMBOL_GPL vmlinux 0x6f34c46b pm_clk_create +EXPORT_SYMBOL_GPL vmlinux 0x6f464266 blk_queue_rq_timeout +EXPORT_SYMBOL_GPL vmlinux 0x6f485c01 genphy_c45_read_lpa +EXPORT_SYMBOL_GPL vmlinux 0x6f4c85bb __account_locked_vm +EXPORT_SYMBOL_GPL vmlinux 0x6f59f433 put_pid +EXPORT_SYMBOL_GPL vmlinux 0x6f7cd626 iommu_fwspec_free +EXPORT_SYMBOL_GPL vmlinux 0x6f83ebfa sysfs_remove_file_from_group +EXPORT_SYMBOL_GPL vmlinux 0x6f8c017e debugfs_rename +EXPORT_SYMBOL_GPL vmlinux 0x6f9e763b timecounter_read +EXPORT_SYMBOL_GPL vmlinux 0x6fa00508 skb_clone_tx_timestamp +EXPORT_SYMBOL_GPL vmlinux 0x6fcef6ab ring_buffer_reset +EXPORT_SYMBOL_GPL vmlinux 0x6fdaa95c proc_create_net_data_write +EXPORT_SYMBOL_GPL vmlinux 0x6ff607b6 crypto_get_default_rng +EXPORT_SYMBOL_GPL vmlinux 0x6ffce680 x86_cpu_has_min_microcode_rev +EXPORT_SYMBOL_GPL vmlinux 0x7006586e iommu_get_group_resv_regions +EXPORT_SYMBOL_GPL vmlinux 0x703003ce __platform_driver_probe +EXPORT_SYMBOL_GPL vmlinux 0x7030da55 device_reprobe +EXPORT_SYMBOL_GPL vmlinux 0x703a3ead virtqueue_get_desc_addr +EXPORT_SYMBOL_GPL vmlinux 0x70576fee acpi_processor_ffh_cstate_probe +EXPORT_SYMBOL_GPL vmlinux 0x706dceea tty_ldisc_flush +EXPORT_SYMBOL_GPL vmlinux 0x7073c04f phy_10_100_features_array +EXPORT_SYMBOL_GPL vmlinux 0x707937cb pci_epc_set_msi +EXPORT_SYMBOL_GPL vmlinux 0x707a616f edac_mc_handle_error +EXPORT_SYMBOL_GPL vmlinux 0x707e315a pm_generic_freeze_noirq +EXPORT_SYMBOL_GPL vmlinux 0x70b7c07a gnttab_grant_foreign_transfer +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 0x70f5332f sfi_table_parse +EXPORT_SYMBOL_GPL vmlinux 0x70f73220 devm_fwnode_pwm_get +EXPORT_SYMBOL_GPL vmlinux 0x70f84d6b irq_create_fwspec_mapping +EXPORT_SYMBOL_GPL vmlinux 0x710c73b6 crypto_unregister_notifier +EXPORT_SYMBOL_GPL vmlinux 0x7129147e fsnotify_get_group +EXPORT_SYMBOL_GPL vmlinux 0x712b18be add_disk_randomness +EXPORT_SYMBOL_GPL vmlinux 0x712cd4d8 power_supply_put_battery_info +EXPORT_SYMBOL_GPL vmlinux 0x71300119 tty_port_unregister_device +EXPORT_SYMBOL_GPL vmlinux 0x71316503 kmsg_dump_get_line +EXPORT_SYMBOL_GPL vmlinux 0x71560540 tcpv6_prot +EXPORT_SYMBOL_GPL vmlinux 0x715615d3 pm_generic_runtime_resume +EXPORT_SYMBOL_GPL vmlinux 0x716265c7 debugfs_initialized +EXPORT_SYMBOL_GPL vmlinux 0x71650819 add_bootloader_randomness +EXPORT_SYMBOL_GPL vmlinux 0x71650cc6 fwnode_property_get_reference_args +EXPORT_SYMBOL_GPL vmlinux 0x716a2b72 ata_cable_80wire +EXPORT_SYMBOL_GPL vmlinux 0x717d0f54 fuse_dev_release +EXPORT_SYMBOL_GPL vmlinux 0x7181db30 atomic_notifier_chain_unregister +EXPORT_SYMBOL_GPL vmlinux 0x719e17ff clk_notifier_unregister +EXPORT_SYMBOL_GPL vmlinux 0x71a2ea34 inet6_lookup_listener +EXPORT_SYMBOL_GPL vmlinux 0x71b24eea efivar_entry_get +EXPORT_SYMBOL_GPL vmlinux 0x71c422b7 sdio_release_irq +EXPORT_SYMBOL_GPL vmlinux 0x71cfae07 devm_spi_mem_dirmap_create +EXPORT_SYMBOL_GPL vmlinux 0x71daf236 get_governor_parent_kobj +EXPORT_SYMBOL_GPL vmlinux 0x71f5243f usb_alloc_coherent +EXPORT_SYMBOL_GPL vmlinux 0x71f6670b __cookie_v6_check +EXPORT_SYMBOL_GPL vmlinux 0x7208dca8 i2c_new_ancillary_device +EXPORT_SYMBOL_GPL vmlinux 0x72118aa0 dev_pm_opp_find_freq_ceil_by_volt +EXPORT_SYMBOL_GPL vmlinux 0x7216f86d ata_msleep +EXPORT_SYMBOL_GPL vmlinux 0x722b60d8 gpiod_get_array_value +EXPORT_SYMBOL_GPL vmlinux 0x7238b7e6 dm_send_uevents +EXPORT_SYMBOL_GPL vmlinux 0x725cc2af __bio_try_merge_page +EXPORT_SYMBOL_GPL vmlinux 0x7278d328 all_vm_events +EXPORT_SYMBOL_GPL vmlinux 0x727e3c58 dst_cache_set_ip6 +EXPORT_SYMBOL_GPL vmlinux 0x7295d92c blkdev_ioctl +EXPORT_SYMBOL_GPL vmlinux 0x72c1aeeb __tracepoint_map +EXPORT_SYMBOL_GPL vmlinux 0x72c1fcee pcie_flr +EXPORT_SYMBOL_GPL vmlinux 0x72c5ae1a gpiod_set_raw_array_value_cansleep +EXPORT_SYMBOL_GPL vmlinux 0x72d267dc nvmem_del_cell_lookups +EXPORT_SYMBOL_GPL vmlinux 0x72d72516 register_trace_event +EXPORT_SYMBOL_GPL vmlinux 0x72e02cd7 inet_csk_reqsk_queue_hash_add +EXPORT_SYMBOL_GPL vmlinux 0x72e070e3 devm_power_supply_register_no_ws +EXPORT_SYMBOL_GPL vmlinux 0x72e90af4 dev_attr_link_power_management_policy +EXPORT_SYMBOL_GPL vmlinux 0x72ecb315 switchdev_handle_port_obj_del +EXPORT_SYMBOL_GPL vmlinux 0x72f7dfef devlink_sb_register +EXPORT_SYMBOL_GPL vmlinux 0x7305a788 bus_find_device +EXPORT_SYMBOL_GPL vmlinux 0x7313b4ac spi_delay_to_ns +EXPORT_SYMBOL_GPL vmlinux 0x731dba7a xen_domain_type +EXPORT_SYMBOL_GPL vmlinux 0x732852fe xenbus_transaction_end +EXPORT_SYMBOL_GPL vmlinux 0x73296a31 ping_seq_next +EXPORT_SYMBOL_GPL vmlinux 0x733bfa93 blk_mq_debugfs_rq_show +EXPORT_SYMBOL_GPL vmlinux 0x734235fd __ip6_local_out +EXPORT_SYMBOL_GPL vmlinux 0x73585dac battery_hook_unregister +EXPORT_SYMBOL_GPL vmlinux 0x7362de4f subsys_system_register +EXPORT_SYMBOL_GPL vmlinux 0x73702c00 xfrm_audit_state_delete +EXPORT_SYMBOL_GPL vmlinux 0x737ab146 spi_mem_dirmap_destroy +EXPORT_SYMBOL_GPL vmlinux 0x7381287f trace_handle_return +EXPORT_SYMBOL_GPL vmlinux 0x73876b34 rio_alloc_net +EXPORT_SYMBOL_GPL vmlinux 0x738fe32b amd_get_nodes_per_socket +EXPORT_SYMBOL_GPL vmlinux 0x73986288 crypto_mod_get +EXPORT_SYMBOL_GPL vmlinux 0x739a4815 vfs_submount +EXPORT_SYMBOL_GPL vmlinux 0x73a48b4a ata_sff_std_ports +EXPORT_SYMBOL_GPL vmlinux 0x73a798cf device_remove_file_self +EXPORT_SYMBOL_GPL vmlinux 0x73b694a7 __spi_register_driver +EXPORT_SYMBOL_GPL vmlinux 0x73c2554f __iowrite64_copy +EXPORT_SYMBOL_GPL vmlinux 0x73cc8631 oiap +EXPORT_SYMBOL_GPL vmlinux 0x73cd8c3a serial8250_rx_dma_flush +EXPORT_SYMBOL_GPL vmlinux 0x73fcc23a devm_hwmon_device_unregister +EXPORT_SYMBOL_GPL vmlinux 0x7403a447 device_get_child_node_count +EXPORT_SYMBOL_GPL vmlinux 0x740674d9 __irq_alloc_domain_generic_chips +EXPORT_SYMBOL_GPL vmlinux 0x7411e4ae rio_unregister_driver +EXPORT_SYMBOL_GPL vmlinux 0x7423bb1e iomap_readahead +EXPORT_SYMBOL_GPL vmlinux 0x74346138 __fscrypt_prepare_link +EXPORT_SYMBOL_GPL vmlinux 0x7436cbe4 __blkg_prfill_rwstat +EXPORT_SYMBOL_GPL vmlinux 0x743a165e ata_pack_xfermask +EXPORT_SYMBOL_GPL vmlinux 0x74457e56 apei_resources_fini +EXPORT_SYMBOL_GPL vmlinux 0x7452adff user_return_notifier_register +EXPORT_SYMBOL_GPL vmlinux 0x745918fb of_pwm_get +EXPORT_SYMBOL_GPL vmlinux 0x746b21db usb_get_urb +EXPORT_SYMBOL_GPL vmlinux 0x748bbede class_unregister +EXPORT_SYMBOL_GPL vmlinux 0x74adc438 phy_driver_is_genphy +EXPORT_SYMBOL_GPL vmlinux 0x74af45b6 iommu_unmap +EXPORT_SYMBOL_GPL vmlinux 0x74b099b7 clockevents_unbind_device +EXPORT_SYMBOL_GPL vmlinux 0x74b380d8 dw_pcie_ep_init_notify +EXPORT_SYMBOL_GPL vmlinux 0x74b517e6 irq_domain_translate_twocell +EXPORT_SYMBOL_GPL vmlinux 0x74b5ea68 lcm_not_zero +EXPORT_SYMBOL_GPL vmlinux 0x74baf17a tracing_is_on +EXPORT_SYMBOL_GPL vmlinux 0x74bcb8a0 fsstack_copy_attr_all +EXPORT_SYMBOL_GPL vmlinux 0x74c7bffa stack_trace_snprint +EXPORT_SYMBOL_GPL vmlinux 0x74e4e4a5 dev_pm_opp_find_level_exact +EXPORT_SYMBOL_GPL vmlinux 0x74e73871 housekeeping_overridden +EXPORT_SYMBOL_GPL vmlinux 0x74e999f9 gpiod_get_optional +EXPORT_SYMBOL_GPL vmlinux 0x74eb3410 icc_enable +EXPORT_SYMBOL_GPL vmlinux 0x750a880c ata_slave_link_init +EXPORT_SYMBOL_GPL vmlinux 0x750c6dda clockevents_config_and_register +EXPORT_SYMBOL_GPL vmlinux 0x75133f6e visitor128 +EXPORT_SYMBOL_GPL vmlinux 0x7521afb6 leave_mm +EXPORT_SYMBOL_GPL vmlinux 0x7522f3ba irq_modify_status +EXPORT_SYMBOL_GPL vmlinux 0x75301f1f serial8250_do_set_mctrl +EXPORT_SYMBOL_GPL vmlinux 0x753b725b devm_power_supply_register +EXPORT_SYMBOL_GPL vmlinux 0x7554cf50 ip6_dst_lookup_flow +EXPORT_SYMBOL_GPL vmlinux 0x7559828b tpm_calc_ordinal_duration +EXPORT_SYMBOL_GPL vmlinux 0x75676e8f pwm_adjust_config +EXPORT_SYMBOL_GPL vmlinux 0x75792186 get_xsave_addr +EXPORT_SYMBOL_GPL vmlinux 0x759a7557 xenbus_dev_error +EXPORT_SYMBOL_GPL vmlinux 0x759bfe36 btree_destroy +EXPORT_SYMBOL_GPL vmlinux 0x75a1c89d dev_pm_opp_set_clkname +EXPORT_SYMBOL_GPL vmlinux 0x75a27717 rio_release_dma +EXPORT_SYMBOL_GPL vmlinux 0x75b99176 hwspin_lock_request +EXPORT_SYMBOL_GPL vmlinux 0x75c2c5c5 acpi_subsys_suspend_late +EXPORT_SYMBOL_GPL vmlinux 0x75c33a47 crypto_stats_skcipher_decrypt +EXPORT_SYMBOL_GPL vmlinux 0x75cbfb09 add_interrupt_randomness +EXPORT_SYMBOL_GPL vmlinux 0x75d25e7e __tracepoint_napi_poll +EXPORT_SYMBOL_GPL vmlinux 0x75d87013 blk_mq_make_request +EXPORT_SYMBOL_GPL vmlinux 0x75e0e275 regmap_fields_read +EXPORT_SYMBOL_GPL vmlinux 0x75e9c735 pci_ats_disabled +EXPORT_SYMBOL_GPL vmlinux 0x75f0e875 xas_store +EXPORT_SYMBOL_GPL vmlinux 0x7606ed46 extcon_get_property +EXPORT_SYMBOL_GPL vmlinux 0x760b939a sysfs_change_owner +EXPORT_SYMBOL_GPL vmlinux 0x76105a83 ata_scsi_change_queue_depth +EXPORT_SYMBOL_GPL vmlinux 0x762065be irq_domain_remove +EXPORT_SYMBOL_GPL vmlinux 0x763bd0cd perf_pmu_unregister +EXPORT_SYMBOL_GPL vmlinux 0x763ee20f i2c_new_client_device +EXPORT_SYMBOL_GPL vmlinux 0x7661b962 wm5110_spi_regmap +EXPORT_SYMBOL_GPL vmlinux 0x7665a95b idr_remove +EXPORT_SYMBOL_GPL vmlinux 0x7665ee72 crypto_dh_decode_key +EXPORT_SYMBOL_GPL vmlinux 0x767bdb4d crypto_aead_encrypt +EXPORT_SYMBOL_GPL vmlinux 0x767d1541 dma_run_dependencies +EXPORT_SYMBOL_GPL vmlinux 0x7681946c unregister_pm_notifier +EXPORT_SYMBOL_GPL vmlinux 0x768cb8c5 crypto_stats_rng_generate +EXPORT_SYMBOL_GPL vmlinux 0x768ec56c pm_generic_thaw_early +EXPORT_SYMBOL_GPL vmlinux 0x7692d514 power_supply_external_power_changed +EXPORT_SYMBOL_GPL vmlinux 0x769dfad7 __cpufreq_driver_target +EXPORT_SYMBOL_GPL vmlinux 0x76a43f2f blk_req_zone_write_trylock +EXPORT_SYMBOL_GPL vmlinux 0x76ac0b86 nvdimm_in_overwrite +EXPORT_SYMBOL_GPL vmlinux 0x76b5bea8 tps6586x_irq_get_virq +EXPORT_SYMBOL_GPL vmlinux 0x76c144bb set_pages_array_wt +EXPORT_SYMBOL_GPL vmlinux 0x76cd3db7 devm_mdiobus_free +EXPORT_SYMBOL_GPL vmlinux 0x76d9b876 clk_set_rate +EXPORT_SYMBOL_GPL vmlinux 0x76e85b92 gnttab_request_free_callback +EXPORT_SYMBOL_GPL vmlinux 0x76ea793e fixed_phy_register_with_gpiod +EXPORT_SYMBOL_GPL vmlinux 0x76eeeb0f sha384_zero_message_hash +EXPORT_SYMBOL_GPL vmlinux 0x76ef9e55 transport_class_unregister +EXPORT_SYMBOL_GPL vmlinux 0x76f9948e pci_enable_rom +EXPORT_SYMBOL_GPL vmlinux 0x76faa2f3 rio_register_scan +EXPORT_SYMBOL_GPL vmlinux 0x7712771a unbind_from_irqhandler +EXPORT_SYMBOL_GPL vmlinux 0x77222306 ring_buffer_read_page +EXPORT_SYMBOL_GPL vmlinux 0x7729cbdd task_handoff_register +EXPORT_SYMBOL_GPL vmlinux 0x772c0179 cpuidle_register_driver +EXPORT_SYMBOL_GPL vmlinux 0x773ae02c get_hwpoison_page +EXPORT_SYMBOL_GPL vmlinux 0x773f2713 clk_hw_unregister_mux +EXPORT_SYMBOL_GPL vmlinux 0x7745ea89 klp_enable_patch +EXPORT_SYMBOL_GPL vmlinux 0x7754905d gpiochip_populate_parent_fwspec_twocell +EXPORT_SYMBOL_GPL vmlinux 0x7757b51a clk_unregister +EXPORT_SYMBOL_GPL vmlinux 0x775bf37a access_process_vm +EXPORT_SYMBOL_GPL vmlinux 0x77799644 ata_cable_ignore +EXPORT_SYMBOL_GPL vmlinux 0x778e91a3 perf_aux_output_flag +EXPORT_SYMBOL_GPL vmlinux 0x7791e066 dw_pcie_read +EXPORT_SYMBOL_GPL vmlinux 0x7799745a device_unregister +EXPORT_SYMBOL_GPL vmlinux 0x77ae495d usb_speed_string +EXPORT_SYMBOL_GPL vmlinux 0x77be321c events_sysfs_show +EXPORT_SYMBOL_GPL vmlinux 0x77d343a4 __dma_request_channel +EXPORT_SYMBOL_GPL vmlinux 0x77e75be3 sfp_bus_put +EXPORT_SYMBOL_GPL vmlinux 0x77eb2fe7 __hrtimer_get_remaining +EXPORT_SYMBOL_GPL vmlinux 0x77ecf68d memalloc_socks_key +EXPORT_SYMBOL_GPL vmlinux 0x77f3547b __regmap_init_i2c +EXPORT_SYMBOL_GPL vmlinux 0x77fc99b3 extcon_set_property_sync +EXPORT_SYMBOL_GPL vmlinux 0x77fdf821 ohci_resume +EXPORT_SYMBOL_GPL vmlinux 0x77fe5876 genphy_c45_read_mdix +EXPORT_SYMBOL_GPL vmlinux 0x78041b8f byte_rev_table +EXPORT_SYMBOL_GPL vmlinux 0x780ffba7 phy_resolve_aneg_pause +EXPORT_SYMBOL_GPL vmlinux 0x78146020 l3mdev_master_upper_ifindex_by_index_rcu +EXPORT_SYMBOL_GPL vmlinux 0x7814af27 inode_dax +EXPORT_SYMBOL_GPL vmlinux 0x781c1b24 crypto_register_akcipher +EXPORT_SYMBOL_GPL vmlinux 0x7822e6e8 tpm_default_chip +EXPORT_SYMBOL_GPL vmlinux 0x782adb74 hpet_rtc_interrupt +EXPORT_SYMBOL_GPL vmlinux 0x782f4124 to_software_node +EXPORT_SYMBOL_GPL vmlinux 0x783725fb fscrypt_ioctl_get_key_status +EXPORT_SYMBOL_GPL vmlinux 0x78419f87 acpi_pci_find_root +EXPORT_SYMBOL_GPL vmlinux 0x785a93b4 si_mem_available +EXPORT_SYMBOL_GPL vmlinux 0x785def00 sk_free_unlock_clone +EXPORT_SYMBOL_GPL vmlinux 0x7878e79d extcon_register_notifier_all +EXPORT_SYMBOL_GPL vmlinux 0x787c882b lzo1x_1_compress +EXPORT_SYMBOL_GPL vmlinux 0x7883f48e ata_std_sched_eh +EXPORT_SYMBOL_GPL vmlinux 0x788bfbad ring_buffer_empty +EXPORT_SYMBOL_GPL vmlinux 0x788c153e platform_driver_unregister +EXPORT_SYMBOL_GPL vmlinux 0x78945bbc power_supply_get_battery_info +EXPORT_SYMBOL_GPL vmlinux 0x78986d8e clk_hw_is_prepared +EXPORT_SYMBOL_GPL vmlinux 0x789c73d9 rcu_cpu_stall_suppress_at_boot +EXPORT_SYMBOL_GPL vmlinux 0x78a063c0 tty_port_register_device_attr +EXPORT_SYMBOL_GPL vmlinux 0x78d7af19 gpiod_set_debounce +EXPORT_SYMBOL_GPL vmlinux 0x78ddb76b dmi_match +EXPORT_SYMBOL_GPL vmlinux 0x79088e45 pinctrl_add_gpio_range +EXPORT_SYMBOL_GPL vmlinux 0x790be0b9 usb_bus_idr +EXPORT_SYMBOL_GPL vmlinux 0x790da89c hwmon_device_register_with_groups +EXPORT_SYMBOL_GPL vmlinux 0x790e9d1b wakeup_source_register +EXPORT_SYMBOL_GPL vmlinux 0x79114eac fat_remove_entries +EXPORT_SYMBOL_GPL vmlinux 0x7915cee5 do_machine_check +EXPORT_SYMBOL_GPL vmlinux 0x791748c8 adxl_decode +EXPORT_SYMBOL_GPL vmlinux 0x7918d817 memory_failure +EXPORT_SYMBOL_GPL vmlinux 0x791cc383 tty_buffer_request_room +EXPORT_SYMBOL_GPL vmlinux 0x79287d38 __fscrypt_encrypt_symlink +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 0x79694eba __platform_create_bundle +EXPORT_SYMBOL_GPL vmlinux 0x79753e30 xfrm_audit_policy_add +EXPORT_SYMBOL_GPL vmlinux 0x797c6826 sdio_signal_irq +EXPORT_SYMBOL_GPL vmlinux 0x798b7682 klist_prev +EXPORT_SYMBOL_GPL vmlinux 0x7991fd8d crash_vmclear_loaded_vmcss +EXPORT_SYMBOL_GPL vmlinux 0x799aebb1 sbitmap_get_shallow +EXPORT_SYMBOL_GPL vmlinux 0x79a7db14 tps6586x_reads +EXPORT_SYMBOL_GPL vmlinux 0x79b405bc crypto_inst_setname +EXPORT_SYMBOL_GPL vmlinux 0x79bc842c usb_anchor_suspend_wakeups +EXPORT_SYMBOL_GPL vmlinux 0x79bd7d22 clk_gate_restore_context +EXPORT_SYMBOL_GPL vmlinux 0x79c84ad0 pinctrl_add_gpio_ranges +EXPORT_SYMBOL_GPL vmlinux 0x79cf1043 fpu_kernel_xstate_size +EXPORT_SYMBOL_GPL vmlinux 0x79d2cc03 ip6_datagram_connect_v6_only +EXPORT_SYMBOL_GPL vmlinux 0x79defbe1 kthread_should_park +EXPORT_SYMBOL_GPL vmlinux 0x79e69460 intel_iommu_gfx_mapped +EXPORT_SYMBOL_GPL vmlinux 0x79f54498 crypto_unregister_rngs +EXPORT_SYMBOL_GPL vmlinux 0x79f697e4 lzorle1x_1_compress +EXPORT_SYMBOL_GPL vmlinux 0x79ff20d0 PageHuge +EXPORT_SYMBOL_GPL vmlinux 0x7a2dc8f4 tps6586x_set_bits +EXPORT_SYMBOL_GPL vmlinux 0x7a357c2c spi_split_transfers_maxsize +EXPORT_SYMBOL_GPL vmlinux 0x7a3d2b3b net_ns_type_operations +EXPORT_SYMBOL_GPL vmlinux 0x7a3dde66 __nf_ip6_route +EXPORT_SYMBOL_GPL vmlinux 0x7a60e9d0 devlink_port_attrs_pci_vf_set +EXPORT_SYMBOL_GPL vmlinux 0x7a655f68 acpi_processor_claim_cst_control +EXPORT_SYMBOL_GPL vmlinux 0x7a677360 regmap_multi_reg_write_bypassed +EXPORT_SYMBOL_GPL vmlinux 0x7a71af77 add_memory_driver_managed +EXPORT_SYMBOL_GPL vmlinux 0x7a73e605 wm831x_isinkv_values +EXPORT_SYMBOL_GPL vmlinux 0x7a81541b async_synchronize_cookie +EXPORT_SYMBOL_GPL vmlinux 0x7a98f4b4 copy_from_user_nofault +EXPORT_SYMBOL_GPL vmlinux 0x7a9e4c23 software_node_register_node_group +EXPORT_SYMBOL_GPL vmlinux 0x7abbd84e preempt_notifier_unregister +EXPORT_SYMBOL_GPL vmlinux 0x7abfca43 rhashtable_init +EXPORT_SYMBOL_GPL vmlinux 0x7ac722bd phy_all_ports_features_array +EXPORT_SYMBOL_GPL vmlinux 0x7ac97f70 pci_hp_del +EXPORT_SYMBOL_GPL vmlinux 0x7ad1ded1 pinctrl_register_mappings +EXPORT_SYMBOL_GPL vmlinux 0x7adfbf6e dev_pm_enable_wake_irq +EXPORT_SYMBOL_GPL vmlinux 0x7ae28b98 platform_get_irq_byname +EXPORT_SYMBOL_GPL vmlinux 0x7af78560 fscrypt_ioctl_get_nonce +EXPORT_SYMBOL_GPL vmlinux 0x7af8353f icc_put +EXPORT_SYMBOL_GPL vmlinux 0x7afcb7db __kprobe_event_add_fields +EXPORT_SYMBOL_GPL vmlinux 0x7b032bb2 crypto_shash_tfm_digest +EXPORT_SYMBOL_GPL vmlinux 0x7b083510 tty_prepare_flip_string +EXPORT_SYMBOL_GPL vmlinux 0x7b1426cf kthread_queue_delayed_work +EXPORT_SYMBOL_GPL vmlinux 0x7b178afe unlock_system_sleep +EXPORT_SYMBOL_GPL vmlinux 0x7b18a2ea pci_pri_supported +EXPORT_SYMBOL_GPL vmlinux 0x7b3145c2 hwspin_lock_get_id +EXPORT_SYMBOL_GPL vmlinux 0x7b35555c dev_pm_set_wake_irq +EXPORT_SYMBOL_GPL vmlinux 0x7b37605f sk_msg_alloc +EXPORT_SYMBOL_GPL vmlinux 0x7b4667f0 crypto_register_acomps +EXPORT_SYMBOL_GPL vmlinux 0x7b4c9ba9 sbitmap_queue_min_shallow_depth +EXPORT_SYMBOL_GPL vmlinux 0x7b4ef438 unregister_kprobes +EXPORT_SYMBOL_GPL vmlinux 0x7b51c039 rio_route_add_entry +EXPORT_SYMBOL_GPL vmlinux 0x7b52fa6f devm_acpi_dma_controller_register +EXPORT_SYMBOL_GPL vmlinux 0x7b5452b8 acpi_unregister_gsi +EXPORT_SYMBOL_GPL vmlinux 0x7b5a4926 sha1_zero_message_hash +EXPORT_SYMBOL_GPL vmlinux 0x7b604ec6 iomap_swapfile_activate +EXPORT_SYMBOL_GPL vmlinux 0x7b61279c crypto_ahash_final +EXPORT_SYMBOL_GPL vmlinux 0x7b683d85 edac_device_del_device +EXPORT_SYMBOL_GPL vmlinux 0x7b6f9536 acpi_register_wakeup_handler +EXPORT_SYMBOL_GPL vmlinux 0x7b856860 cpuidle_unregister_device +EXPORT_SYMBOL_GPL vmlinux 0x7b8c2b4f component_add_typed +EXPORT_SYMBOL_GPL vmlinux 0x7b8d68cb __bio_crypt_clone +EXPORT_SYMBOL_GPL vmlinux 0x7b8fec04 hwmon_device_register +EXPORT_SYMBOL_GPL vmlinux 0x7b90d1a9 bind_virq_to_irqhandler +EXPORT_SYMBOL_GPL vmlinux 0x7b9793a2 get_cpu_idle_time_us +EXPORT_SYMBOL_GPL vmlinux 0x7b9dc3eb devfreq_event_set_event +EXPORT_SYMBOL_GPL vmlinux 0x7bb1d640 sata_pmp_error_handler +EXPORT_SYMBOL_GPL vmlinux 0x7bcfd6c1 register_kprobes +EXPORT_SYMBOL_GPL vmlinux 0x7bf3efd9 phy_put +EXPORT_SYMBOL_GPL vmlinux 0x7c1ab230 governor_sysfs_ops +EXPORT_SYMBOL_GPL vmlinux 0x7c20b6a0 load_direct_gdt +EXPORT_SYMBOL_GPL vmlinux 0x7c29277a tps6586x_update +EXPORT_SYMBOL_GPL vmlinux 0x7c39068b efivars_kobject +EXPORT_SYMBOL_GPL vmlinux 0x7c3c175e kernel_read_file +EXPORT_SYMBOL_GPL vmlinux 0x7c453826 tpm_chip_stop +EXPORT_SYMBOL_GPL vmlinux 0x7c4d0be7 screen_glyph_unicode +EXPORT_SYMBOL_GPL vmlinux 0x7c57421b x509_cert_parse +EXPORT_SYMBOL_GPL vmlinux 0x7c5f3711 ioasid_unregister_allocator +EXPORT_SYMBOL_GPL vmlinux 0x7c61ee17 pci_enable_pasid +EXPORT_SYMBOL_GPL vmlinux 0x7c626556 list_lru_destroy +EXPORT_SYMBOL_GPL vmlinux 0x7c681aba efivar_work +EXPORT_SYMBOL_GPL vmlinux 0x7c74966b unregister_wide_hw_breakpoint +EXPORT_SYMBOL_GPL vmlinux 0x7c776fb6 cpufreq_freq_attr_scaling_boost_freqs +EXPORT_SYMBOL_GPL vmlinux 0x7c7f5094 pci_speed_string +EXPORT_SYMBOL_GPL vmlinux 0x7c983a5d dmi_walk +EXPORT_SYMBOL_GPL vmlinux 0x7c9a7371 clk_prepare +EXPORT_SYMBOL_GPL vmlinux 0x7cb803de btree_grim_visitor +EXPORT_SYMBOL_GPL vmlinux 0x7cbb8892 unregister_kretprobes +EXPORT_SYMBOL_GPL vmlinux 0x7cd0fa3f blk_mq_sched_mark_restart_hctx +EXPORT_SYMBOL_GPL vmlinux 0x7cd2dae2 ata_bmdma_port_intr +EXPORT_SYMBOL_GPL vmlinux 0x7cd6f042 cpufreq_get_current_driver +EXPORT_SYMBOL_GPL vmlinux 0x7cdd4405 dev_nit_active +EXPORT_SYMBOL_GPL vmlinux 0x7cddbfe7 cs47l24_irq +EXPORT_SYMBOL_GPL vmlinux 0x7cea767d to_nvdimm +EXPORT_SYMBOL_GPL vmlinux 0x7ceaf0d5 generic_handle_irq +EXPORT_SYMBOL_GPL vmlinux 0x7d00c65b nd_synchronize +EXPORT_SYMBOL_GPL vmlinux 0x7d0e1d95 hv_setup_crash_handler +EXPORT_SYMBOL_GPL vmlinux 0x7d10949a dev_pm_qos_hide_flags +EXPORT_SYMBOL_GPL vmlinux 0x7d1bb1d4 tnum_strn +EXPORT_SYMBOL_GPL vmlinux 0x7d2ca554 pci_epc_get_first_free_bar +EXPORT_SYMBOL_GPL vmlinux 0x7d30856a pwm_get +EXPORT_SYMBOL_GPL vmlinux 0x7d34207b usb_hub_claim_port +EXPORT_SYMBOL_GPL vmlinux 0x7d350bb9 serdev_device_open +EXPORT_SYMBOL_GPL vmlinux 0x7d3bb357 pm_stay_awake +EXPORT_SYMBOL_GPL vmlinux 0x7d463f91 usb_get_hcd +EXPORT_SYMBOL_GPL vmlinux 0x7d4c1ac1 rtc_nvmem_register +EXPORT_SYMBOL_GPL vmlinux 0x7d582145 ksm_madvise +EXPORT_SYMBOL_GPL vmlinux 0x7d59dd46 pm_wq +EXPORT_SYMBOL_GPL vmlinux 0x7d5e3cb9 usb_set_interface +EXPORT_SYMBOL_GPL vmlinux 0x7d675225 ohci_hub_control +EXPORT_SYMBOL_GPL vmlinux 0x7d9ca481 mmc_regulator_set_ocr +EXPORT_SYMBOL_GPL vmlinux 0x7da02255 rtc_set_time +EXPORT_SYMBOL_GPL vmlinux 0x7dbf8da6 kern_mount +EXPORT_SYMBOL_GPL vmlinux 0x7dda30af unregister_tracepoint_module_notifier +EXPORT_SYMBOL_GPL vmlinux 0x7ddb2718 __tracepoint_block_rq_remap +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 0x7dedb5d4 xen_register_device_domain_owner +EXPORT_SYMBOL_GPL vmlinux 0x7e0f269f xdp_rxq_info_unused +EXPORT_SYMBOL_GPL vmlinux 0x7e1ce072 sock_diag_destroy +EXPORT_SYMBOL_GPL vmlinux 0x7e35d137 __netdev_watchdog_up +EXPORT_SYMBOL_GPL vmlinux 0x7e390001 intel_msic_bulk_read +EXPORT_SYMBOL_GPL vmlinux 0x7e3fd6e8 __module_text_address +EXPORT_SYMBOL_GPL vmlinux 0x7e48f034 scsi_register_device_handler +EXPORT_SYMBOL_GPL vmlinux 0x7e49e7f2 __sock_recv_ts_and_drops +EXPORT_SYMBOL_GPL vmlinux 0x7e4a1c0e irq_domain_pop_irq +EXPORT_SYMBOL_GPL vmlinux 0x7e5c7dcd rio_mport_get_physefb +EXPORT_SYMBOL_GPL vmlinux 0x7e5db80b pstore_name_to_type +EXPORT_SYMBOL_GPL vmlinux 0x7e64181d usb_calc_bus_time +EXPORT_SYMBOL_GPL vmlinux 0x7e7ac24c spi_controller_dma_map_mem_op_data +EXPORT_SYMBOL_GPL vmlinux 0x7e7e3f58 ring_buffer_reset_cpu +EXPORT_SYMBOL_GPL vmlinux 0x7e8021d3 regulator_enable_regmap +EXPORT_SYMBOL_GPL vmlinux 0x7e8aedb2 con_debug_enter +EXPORT_SYMBOL_GPL vmlinux 0x7e8d8619 usb_anchor_empty +EXPORT_SYMBOL_GPL vmlinux 0x7e8e0375 scsi_get_vpd_page +EXPORT_SYMBOL_GPL vmlinux 0x7e8f2d34 nd_blk_region_to_dimm +EXPORT_SYMBOL_GPL vmlinux 0x7e9210cf rio_map_outb_region +EXPORT_SYMBOL_GPL vmlinux 0x7e9c556d usb_wakeup_notification +EXPORT_SYMBOL_GPL vmlinux 0x7ea75c24 __wake_up_locked_key_bookmark +EXPORT_SYMBOL_GPL vmlinux 0x7eaea8e5 iommu_dev_feature_enabled +EXPORT_SYMBOL_GPL vmlinux 0x7eb620c0 virtqueue_is_broken +EXPORT_SYMBOL_GPL vmlinux 0x7eb808d0 add_cpu +EXPORT_SYMBOL_GPL vmlinux 0x7eb93263 devm_hwrng_register +EXPORT_SYMBOL_GPL vmlinux 0x7ec3ca6d pci_stop_and_remove_bus_device_locked +EXPORT_SYMBOL_GPL vmlinux 0x7ec814de inet_hashinfo_init +EXPORT_SYMBOL_GPL vmlinux 0x7ece3ed0 pm_genpd_add_subdomain +EXPORT_SYMBOL_GPL vmlinux 0x7eea6b8b pcap_adc_async +EXPORT_SYMBOL_GPL vmlinux 0x7ef4317a bpf_trace_run8 +EXPORT_SYMBOL_GPL vmlinux 0x7f16e5e1 vfio_unregister_iommu_driver +EXPORT_SYMBOL_GPL vmlinux 0x7f1f1b1e acpi_bus_trim +EXPORT_SYMBOL_GPL vmlinux 0x7f7cbc64 ip_tunnel_need_metadata +EXPORT_SYMBOL_GPL vmlinux 0x7f7e59ae acpi_pm_wakeup_event +EXPORT_SYMBOL_GPL vmlinux 0x7fa96509 erst_get_record_id_next +EXPORT_SYMBOL_GPL vmlinux 0x7fafdec9 clk_fixed_factor_ops +EXPORT_SYMBOL_GPL vmlinux 0x7fe59b7e max8997_write_reg +EXPORT_SYMBOL_GPL vmlinux 0x7ff1e24c dev_pm_qos_hide_latency_tolerance +EXPORT_SYMBOL_GPL vmlinux 0x80132e24 genphy_c45_read_pma +EXPORT_SYMBOL_GPL vmlinux 0x8019fa4b serial8250_release_dma +EXPORT_SYMBOL_GPL vmlinux 0x80283db6 get_device +EXPORT_SYMBOL_GPL vmlinux 0x802a34d0 pwm_lpss_probe +EXPORT_SYMBOL_GPL vmlinux 0x803bbaa5 to_nd_desc +EXPORT_SYMBOL_GPL vmlinux 0x803eaa08 rio_pw_enable +EXPORT_SYMBOL_GPL vmlinux 0x805667cf devlink_fmsg_u64_put +EXPORT_SYMBOL_GPL vmlinux 0x807766ea usb_scuttle_anchored_urbs +EXPORT_SYMBOL_GPL vmlinux 0x807ede37 gpiochip_line_is_persistent +EXPORT_SYMBOL_GPL vmlinux 0x807fdcc4 call_rcu_tasks_rude +EXPORT_SYMBOL_GPL vmlinux 0x808a8088 handle_guest_split_lock +EXPORT_SYMBOL_GPL vmlinux 0x808ec1a3 crypto_alg_tested +EXPORT_SYMBOL_GPL vmlinux 0x80b109d4 __tracepoint_pelt_se_tp +EXPORT_SYMBOL_GPL vmlinux 0x80bcc76a xen_set_affinity_evtchn +EXPORT_SYMBOL_GPL vmlinux 0x80c11314 gnttab_query_foreign_access +EXPORT_SYMBOL_GPL vmlinux 0x80c68137 nf_log_buf_close +EXPORT_SYMBOL_GPL vmlinux 0x80cfcfcd devm_platform_get_and_ioremap_resource +EXPORT_SYMBOL_GPL vmlinux 0x80d5e57a mpi_free +EXPORT_SYMBOL_GPL vmlinux 0x80d7574d vmf_insert_pfn_pud_prot +EXPORT_SYMBOL_GPL vmlinux 0x80e33f7c regulator_sync_voltage +EXPORT_SYMBOL_GPL vmlinux 0x80ef67d5 tpm2_get_tpm_pt +EXPORT_SYMBOL_GPL vmlinux 0x80fede4d dev_fill_metadata_dst +EXPORT_SYMBOL_GPL vmlinux 0x81072d11 ata_platform_remove_one +EXPORT_SYMBOL_GPL vmlinux 0x811dc334 usb_unregister_notify +EXPORT_SYMBOL_GPL vmlinux 0x81221cad amd_nb_num +EXPORT_SYMBOL_GPL vmlinux 0x812fa51a xenbus_probe_node +EXPORT_SYMBOL_GPL vmlinux 0x813256f5 __blk_req_zone_write_unlock +EXPORT_SYMBOL_GPL vmlinux 0x814350f8 ata_bmdma_stop +EXPORT_SYMBOL_GPL vmlinux 0x815588a6 clk_enable +EXPORT_SYMBOL_GPL vmlinux 0x815dd3ae md_bitmap_copy_from_slot +EXPORT_SYMBOL_GPL vmlinux 0x815fda83 sed_ioctl +EXPORT_SYMBOL_GPL vmlinux 0x816a41ca cpufreq_update_limits +EXPORT_SYMBOL_GPL vmlinux 0x817e0df9 pm_clk_remove_clk +EXPORT_SYMBOL_GPL vmlinux 0x819d72cb klist_iter_exit +EXPORT_SYMBOL_GPL vmlinux 0x81a9c908 gpiochip_lock_as_irq +EXPORT_SYMBOL_GPL vmlinux 0x81a9e6bb gpiod_set_transitory +EXPORT_SYMBOL_GPL vmlinux 0x81afb5b5 gpiod_set_value_cansleep +EXPORT_SYMBOL_GPL vmlinux 0x81b03377 efivar_entry_set_safe +EXPORT_SYMBOL_GPL vmlinux 0x81b362c5 dma_buf_vmap +EXPORT_SYMBOL_GPL vmlinux 0x81d10485 ioasid_free +EXPORT_SYMBOL_GPL vmlinux 0x81d7c5b7 percpu_ref_kill_and_confirm +EXPORT_SYMBOL_GPL vmlinux 0x81de045c ata_bmdma_start +EXPORT_SYMBOL_GPL vmlinux 0x81e17843 ohci_suspend +EXPORT_SYMBOL_GPL vmlinux 0x81ebd9a5 clk_hw_register +EXPORT_SYMBOL_GPL vmlinux 0x81ed4c58 devm_device_add_group +EXPORT_SYMBOL_GPL vmlinux 0x81ed839a is_dock_device +EXPORT_SYMBOL_GPL vmlinux 0x82041c97 pci_d3cold_enable +EXPORT_SYMBOL_GPL vmlinux 0x82057431 inet6_csk_xmit +EXPORT_SYMBOL_GPL vmlinux 0x82092899 badrange_forget +EXPORT_SYMBOL_GPL vmlinux 0x820af7a2 i2c_client_type +EXPORT_SYMBOL_GPL vmlinux 0x821ec7f1 clk_mux_ro_ops +EXPORT_SYMBOL_GPL vmlinux 0x822112d4 gnttab_page_cache_get +EXPORT_SYMBOL_GPL vmlinux 0x82226c53 pinctrl_unregister_mappings +EXPORT_SYMBOL_GPL vmlinux 0x822595bd __intel_scu_ipc_register +EXPORT_SYMBOL_GPL vmlinux 0x82262e57 iommu_group_for_each_dev +EXPORT_SYMBOL_GPL vmlinux 0x822e90d2 dw_pcie_link_set_max_speed +EXPORT_SYMBOL_GPL vmlinux 0x823eae06 blocking_notifier_call_chain +EXPORT_SYMBOL_GPL vmlinux 0x823f684d pci_user_write_config_byte +EXPORT_SYMBOL_GPL vmlinux 0x827dc0c6 ethnl_cable_test_result +EXPORT_SYMBOL_GPL vmlinux 0x827e61f8 acpi_has_watchdog +EXPORT_SYMBOL_GPL vmlinux 0x82a6bc30 balloon_page_enqueue +EXPORT_SYMBOL_GPL vmlinux 0x82b6aa23 pci_ats_supported +EXPORT_SYMBOL_GPL vmlinux 0x82b8c222 dev_pm_opp_remove_all_dynamic +EXPORT_SYMBOL_GPL vmlinux 0x82d79b51 sysctl_vfs_cache_pressure +EXPORT_SYMBOL_GPL vmlinux 0x82dd18ab regmap_update_bits_base +EXPORT_SYMBOL_GPL vmlinux 0x82ef41a2 serial8250_handle_irq +EXPORT_SYMBOL_GPL vmlinux 0x82f08f11 dax_driver_unregister +EXPORT_SYMBOL_GPL vmlinux 0x82f1bbde ata_sff_prereset +EXPORT_SYMBOL_GPL vmlinux 0x82ff4b95 clk_hw_unregister_fixed_factor +EXPORT_SYMBOL_GPL vmlinux 0x82ff553f iommu_sva_unbind_gpasid +EXPORT_SYMBOL_GPL vmlinux 0x82ff9c33 alarmtimer_get_rtcdev +EXPORT_SYMBOL_GPL vmlinux 0x831426f4 sk_msg_free_partial +EXPORT_SYMBOL_GPL vmlinux 0x831811f1 ip6_route_output_flags +EXPORT_SYMBOL_GPL vmlinux 0x8318cef0 kobject_create_and_add +EXPORT_SYMBOL_GPL vmlinux 0x8322fc7c cpufreq_dbs_governor_stop +EXPORT_SYMBOL_GPL vmlinux 0x83284685 crypto_ahash_finup +EXPORT_SYMBOL_GPL vmlinux 0x8339df73 klist_add_behind +EXPORT_SYMBOL_GPL vmlinux 0x83435fc1 pci_hp_remove_module_link +EXPORT_SYMBOL_GPL vmlinux 0x83482850 inet_hash +EXPORT_SYMBOL_GPL vmlinux 0x8348e4f0 __tracepoint_wbc_writepage +EXPORT_SYMBOL_GPL vmlinux 0x8349a895 nvmem_device_put +EXPORT_SYMBOL_GPL vmlinux 0x8353dfff acpi_os_get_iomem +EXPORT_SYMBOL_GPL vmlinux 0x835bf24e icc_get_name +EXPORT_SYMBOL_GPL vmlinux 0x83675f1e regmap_get_val_bytes +EXPORT_SYMBOL_GPL vmlinux 0x836c5a1e pin_get_name +EXPORT_SYMBOL_GPL vmlinux 0x836efd36 __page_mapcount +EXPORT_SYMBOL_GPL vmlinux 0x8371a2eb dev_get_regmap +EXPORT_SYMBOL_GPL vmlinux 0x83819bc5 bus_rescan_devices +EXPORT_SYMBOL_GPL vmlinux 0x83a7ea71 regmap_get_reg_stride +EXPORT_SYMBOL_GPL vmlinux 0x83c51222 devm_release_action +EXPORT_SYMBOL_GPL vmlinux 0x83d45bbe ata_link_abort +EXPORT_SYMBOL_GPL vmlinux 0x83d7d143 crypto_unregister_templates +EXPORT_SYMBOL_GPL vmlinux 0x840a4e0f perf_event_release_kernel +EXPORT_SYMBOL_GPL vmlinux 0x84106f36 devlink_trap_ctx_priv +EXPORT_SYMBOL_GPL vmlinux 0x84121d33 usb_phy_set_event +EXPORT_SYMBOL_GPL vmlinux 0x84264ced fs_umode_to_ftype +EXPORT_SYMBOL_GPL vmlinux 0x842f046d usb_poison_anchored_urbs +EXPORT_SYMBOL_GPL vmlinux 0x843d70ef acpi_is_root_bridge +EXPORT_SYMBOL_GPL vmlinux 0x84502a47 blk_status_to_errno +EXPORT_SYMBOL_GPL vmlinux 0x845dbf3b scatterwalk_map_and_copy +EXPORT_SYMBOL_GPL vmlinux 0x8462cb62 atapi_cmd_type +EXPORT_SYMBOL_GPL vmlinux 0x846fe681 rio_map_inb_region +EXPORT_SYMBOL_GPL vmlinux 0x849e78d5 rio_release_inb_mbox +EXPORT_SYMBOL_GPL vmlinux 0x84b0e1bb debugfs_attr_read +EXPORT_SYMBOL_GPL vmlinux 0x84b2021f __rtnl_link_register +EXPORT_SYMBOL_GPL vmlinux 0x84b56def pm_wakeup_dev_event +EXPORT_SYMBOL_GPL vmlinux 0x84bc783f devlink_sb_unregister +EXPORT_SYMBOL_GPL vmlinux 0x84cd506f xhci_run +EXPORT_SYMBOL_GPL vmlinux 0x84ed172e fsverity_ioctl_enable +EXPORT_SYMBOL_GPL vmlinux 0x84ef27f5 synth_event_add_fields +EXPORT_SYMBOL_GPL vmlinux 0x84f358fc wm5110_patch +EXPORT_SYMBOL_GPL vmlinux 0x84fc6723 srcu_notifier_chain_register +EXPORT_SYMBOL_GPL vmlinux 0x8506baa8 clk_unregister_gate +EXPORT_SYMBOL_GPL vmlinux 0x8509ab79 serial8250_clear_and_reinit_fifos +EXPORT_SYMBOL_GPL vmlinux 0x850bb6db devlink_health_reporter_destroy +EXPORT_SYMBOL_GPL vmlinux 0x851ae2dd nvdimm_badblocks_populate +EXPORT_SYMBOL_GPL vmlinux 0x851e6003 usb_phy_roothub_calibrate +EXPORT_SYMBOL_GPL vmlinux 0x851f4369 netlink_strict_get_check +EXPORT_SYMBOL_GPL vmlinux 0x8538a245 iommu_aux_get_pasid +EXPORT_SYMBOL_GPL vmlinux 0x8549cac2 tcp_set_state +EXPORT_SYMBOL_GPL vmlinux 0x85540ebc nvmem_cell_put +EXPORT_SYMBOL_GPL vmlinux 0x857f0900 tpm1_getcap +EXPORT_SYMBOL_GPL vmlinux 0x85862277 ioasid_find +EXPORT_SYMBOL_GPL vmlinux 0x858e16bd serial8250_do_set_ldisc +EXPORT_SYMBOL_GPL vmlinux 0x85935a61 acpi_dev_irq_flags +EXPORT_SYMBOL_GPL vmlinux 0x8593b8f5 regulator_set_bypass_regmap +EXPORT_SYMBOL_GPL vmlinux 0x859b0994 shake_page +EXPORT_SYMBOL_GPL vmlinux 0x85a49dc7 pci_vpd_find_info_keyword +EXPORT_SYMBOL_GPL vmlinux 0x85a5155e wm831x_reg_unlock +EXPORT_SYMBOL_GPL vmlinux 0x85b1c626 __tracepoint_rpm_suspend +EXPORT_SYMBOL_GPL vmlinux 0x85b1ccbe icc_nodes_remove +EXPORT_SYMBOL_GPL vmlinux 0x85b38978 percpu_ref_reinit +EXPORT_SYMBOL_GPL vmlinux 0x85b5a408 rio_get_asm +EXPORT_SYMBOL_GPL vmlinux 0x85c54b61 efivar_validate +EXPORT_SYMBOL_GPL vmlinux 0x85cb2c45 xen_has_pv_devices +EXPORT_SYMBOL_GPL vmlinux 0x85d1184c crypto_stats_get +EXPORT_SYMBOL_GPL vmlinux 0x85d57d74 usb_autopm_get_interface_no_resume +EXPORT_SYMBOL_GPL vmlinux 0x85d7edfd hpet_set_periodic_freq +EXPORT_SYMBOL_GPL vmlinux 0x85e5d047 cpuidle_register_device +EXPORT_SYMBOL_GPL vmlinux 0x85e66235 crypto_unregister_scomp +EXPORT_SYMBOL_GPL vmlinux 0x85fd8212 dev_pm_qos_update_user_latency_tolerance +EXPORT_SYMBOL_GPL vmlinux 0x8608fdb6 extcon_dev_unregister +EXPORT_SYMBOL_GPL vmlinux 0x861354fd hwspin_lock_unregister +EXPORT_SYMBOL_GPL vmlinux 0x86169f3e amd_smn_write +EXPORT_SYMBOL_GPL vmlinux 0x861c5860 ndo_dflt_bridge_getlink +EXPORT_SYMBOL_GPL vmlinux 0x862258db timecounter_init +EXPORT_SYMBOL_GPL vmlinux 0x86248ec5 __audit_log_nfcfg +EXPORT_SYMBOL_GPL vmlinux 0x862bb17b linear_range_values_in_range_array +EXPORT_SYMBOL_GPL vmlinux 0x8654be58 hv_remove_vmbus_irq +EXPORT_SYMBOL_GPL vmlinux 0x86585a33 devlink_fmsg_obj_nest_start +EXPORT_SYMBOL_GPL vmlinux 0x86617c31 blkcg_activate_policy +EXPORT_SYMBOL_GPL vmlinux 0x86623fd7 notify_remote_via_irq +EXPORT_SYMBOL_GPL vmlinux 0x866ca6a3 gnttab_page_cache_init +EXPORT_SYMBOL_GPL vmlinux 0x866ff803 relay_open +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 0x867babce mddev_resume +EXPORT_SYMBOL_GPL vmlinux 0x868784cb __symbol_get +EXPORT_SYMBOL_GPL vmlinux 0x868c2f72 scsi_nl_sock +EXPORT_SYMBOL_GPL vmlinux 0x868f4c08 sdio_writew +EXPORT_SYMBOL_GPL vmlinux 0x869a1fd5 usb_root_hub_lost_power +EXPORT_SYMBOL_GPL vmlinux 0x86b13d2a usb_unpoison_anchored_urbs +EXPORT_SYMBOL_GPL vmlinux 0x86b427ce clkdev_create +EXPORT_SYMBOL_GPL vmlinux 0x86c43a8c cper_estatus_check +EXPORT_SYMBOL_GPL vmlinux 0x86c5092f device_property_read_u16_array +EXPORT_SYMBOL_GPL vmlinux 0x86c961b3 __set_dax_synchronous +EXPORT_SYMBOL_GPL vmlinux 0x86d1efdb pinctrl_register +EXPORT_SYMBOL_GPL vmlinux 0x86de06ce switchdev_handle_port_attr_set +EXPORT_SYMBOL_GPL vmlinux 0x86e346f9 srcutorture_get_gp_data +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 0x870e6816 iommu_sva_unbind_device +EXPORT_SYMBOL_GPL vmlinux 0x871f1044 serdev_device_set_flow_control +EXPORT_SYMBOL_GPL vmlinux 0x87239e9e fib_rules_seq_read +EXPORT_SYMBOL_GPL vmlinux 0x8724bb96 ata_sas_port_resume +EXPORT_SYMBOL_GPL vmlinux 0x87348ba2 exportfs_encode_fh +EXPORT_SYMBOL_GPL vmlinux 0x8735ed3d irq_set_affinity_notifier +EXPORT_SYMBOL_GPL vmlinux 0x875582b7 nvmem_del_cell_table +EXPORT_SYMBOL_GPL vmlinux 0x8773e87c __clk_hw_register_gate +EXPORT_SYMBOL_GPL vmlinux 0x879d6974 blkdev_zone_mgmt +EXPORT_SYMBOL_GPL vmlinux 0x879d6b32 trace_event_ignore_this_pid +EXPORT_SYMBOL_GPL vmlinux 0x87a2a0df xdp_rxq_info_is_reg +EXPORT_SYMBOL_GPL vmlinux 0x87b0ed16 device_connection_remove +EXPORT_SYMBOL_GPL vmlinux 0x87cc4816 __scsi_init_queue +EXPORT_SYMBOL_GPL vmlinux 0x87e64181 amd_nb_has_feature +EXPORT_SYMBOL_GPL vmlinux 0x87ef64b2 mdiobus_modify +EXPORT_SYMBOL_GPL vmlinux 0x87f0ac8e blk_mq_queue_inflight +EXPORT_SYMBOL_GPL vmlinux 0x87f1c6e6 bpf_prog_alloc +EXPORT_SYMBOL_GPL vmlinux 0x87f38048 vring_create_virtqueue +EXPORT_SYMBOL_GPL vmlinux 0x88036972 inet_twsk_put +EXPORT_SYMBOL_GPL vmlinux 0x88066be2 __tracepoint_rpm_return_int +EXPORT_SYMBOL_GPL vmlinux 0x881ed737 blk_revalidate_disk_zones +EXPORT_SYMBOL_GPL vmlinux 0x8822096c crypto_enqueue_request_head +EXPORT_SYMBOL_GPL vmlinux 0x88241528 vfs_test_lock +EXPORT_SYMBOL_GPL vmlinux 0x8826a3ef ata_host_put +EXPORT_SYMBOL_GPL vmlinux 0x882f1191 fb_deferred_io_fsync +EXPORT_SYMBOL_GPL vmlinux 0x885528a6 ring_buffer_discard_commit +EXPORT_SYMBOL_GPL vmlinux 0x885abe7f irq_chip_request_resources_parent +EXPORT_SYMBOL_GPL vmlinux 0x885e8c53 pci_find_ext_capability +EXPORT_SYMBOL_GPL vmlinux 0x887ab11c devlink_port_type_clear +EXPORT_SYMBOL_GPL vmlinux 0x8881831a nvdimm_kobj +EXPORT_SYMBOL_GPL vmlinux 0x888c5be5 irq_bypass_register_consumer +EXPORT_SYMBOL_GPL vmlinux 0x889f34e8 inet6_compat_ioctl +EXPORT_SYMBOL_GPL vmlinux 0x88a23c3a xdp_convert_zc_to_xdp_frame +EXPORT_SYMBOL_GPL vmlinux 0x88a72890 fib6_get_table +EXPORT_SYMBOL_GPL vmlinux 0x88a7a0f3 dev_pm_opp_is_turbo +EXPORT_SYMBOL_GPL vmlinux 0x88ab6fe3 kgdb_active +EXPORT_SYMBOL_GPL vmlinux 0x88b4ae92 ring_buffer_normalize_time_stamp +EXPORT_SYMBOL_GPL vmlinux 0x88c91fc7 sk_msg_trim +EXPORT_SYMBOL_GPL vmlinux 0x88d53830 skcipher_alloc_instance_simple +EXPORT_SYMBOL_GPL vmlinux 0x88de06f1 dma_buf_fd +EXPORT_SYMBOL_GPL vmlinux 0x88e1a081 debugfs_create_u16 +EXPORT_SYMBOL_GPL vmlinux 0x88e62a6b fat_detach +EXPORT_SYMBOL_GPL vmlinux 0x88ece1f2 serial8250_em485_config +EXPORT_SYMBOL_GPL vmlinux 0x88f58bdf security_kernel_load_data +EXPORT_SYMBOL_GPL vmlinux 0x890f4f97 __kprobe_event_gen_cmd_start +EXPORT_SYMBOL_GPL vmlinux 0x890fa0fa btree_get_prev +EXPORT_SYMBOL_GPL vmlinux 0x89134cc8 pci_intx +EXPORT_SYMBOL_GPL vmlinux 0x891a5a7f gnttab_max_grant_frames +EXPORT_SYMBOL_GPL vmlinux 0x891cc462 ref_module +EXPORT_SYMBOL_GPL vmlinux 0x8924eb1e rcu_force_quiescent_state +EXPORT_SYMBOL_GPL vmlinux 0x893abbdd devlink_fmsg_u32_pair_put +EXPORT_SYMBOL_GPL vmlinux 0x893d54f0 cpufreq_freq_transition_begin +EXPORT_SYMBOL_GPL vmlinux 0x89485687 iommu_group_put +EXPORT_SYMBOL_GPL vmlinux 0x8948799a devfreq_event_get_event +EXPORT_SYMBOL_GPL vmlinux 0x894b5333 spi_mem_dirmap_write +EXPORT_SYMBOL_GPL vmlinux 0x89696218 reserve_iova +EXPORT_SYMBOL_GPL vmlinux 0x898861cd scsi_free_sgtables +EXPORT_SYMBOL_GPL vmlinux 0x89ae7aa0 rsa_parse_pub_key +EXPORT_SYMBOL_GPL vmlinux 0x89bbafc6 usb_register_notify +EXPORT_SYMBOL_GPL vmlinux 0x89c585cd ncsi_start_dev +EXPORT_SYMBOL_GPL vmlinux 0x89e340cf acpi_bus_get_ejd +EXPORT_SYMBOL_GPL vmlinux 0x89e7c0a8 bpf_sk_storage_diag_put +EXPORT_SYMBOL_GPL vmlinux 0x89ecd170 iommu_domain_window_enable +EXPORT_SYMBOL_GPL vmlinux 0x89ffa58c fuse_do_open +EXPORT_SYMBOL_GPL vmlinux 0x8a0b4ad9 dev_pm_opp_add +EXPORT_SYMBOL_GPL vmlinux 0x8a2045c4 ata_host_alloc_pinfo +EXPORT_SYMBOL_GPL vmlinux 0x8a240bff __xas_next +EXPORT_SYMBOL_GPL vmlinux 0x8a3f84ba linear_range_get_selector_low +EXPORT_SYMBOL_GPL vmlinux 0x8a45a555 acpi_unregister_wakeup_handler +EXPORT_SYMBOL_GPL vmlinux 0x8a4ca7be hyperv_flush_guest_mapping_range +EXPORT_SYMBOL_GPL vmlinux 0x8a62b81b sfp_upstream_stop +EXPORT_SYMBOL_GPL vmlinux 0x8a75057c iommu_aux_detach_device +EXPORT_SYMBOL_GPL vmlinux 0x8a7bc813 regulator_force_disable +EXPORT_SYMBOL_GPL vmlinux 0x8a7cb9c4 platform_thermal_package_rate_control +EXPORT_SYMBOL_GPL vmlinux 0x8a7e13ef da903x_clr_bits +EXPORT_SYMBOL_GPL vmlinux 0x8a838ef6 intel_scu_ipc_dev_put +EXPORT_SYMBOL_GPL vmlinux 0x8a963efc pm_generic_thaw_noirq +EXPORT_SYMBOL_GPL vmlinux 0x8aa7424b lwtunnel_fill_encap +EXPORT_SYMBOL_GPL vmlinux 0x8abacc47 get_max_files +EXPORT_SYMBOL_GPL vmlinux 0x8ac4c892 __inet_twsk_schedule +EXPORT_SYMBOL_GPL vmlinux 0x8ac6a9f8 crypto_register_instance +EXPORT_SYMBOL_GPL vmlinux 0x8ad5ceb1 __uv_hub_info_list +EXPORT_SYMBOL_GPL vmlinux 0x8b08a673 tracing_snapshot_cond_disable +EXPORT_SYMBOL_GPL vmlinux 0x8b149c36 clk_is_match +EXPORT_SYMBOL_GPL vmlinux 0x8b2fa611 acpi_create_platform_device +EXPORT_SYMBOL_GPL vmlinux 0x8b32ed5f wm5102_spi_regmap +EXPORT_SYMBOL_GPL vmlinux 0x8b435844 kobject_uevent +EXPORT_SYMBOL_GPL vmlinux 0x8b46d2ac vfs_kern_mount +EXPORT_SYMBOL_GPL vmlinux 0x8b7aa28c handle_simple_irq +EXPORT_SYMBOL_GPL vmlinux 0x8b7b4d8e hv_stimer_alloc +EXPORT_SYMBOL_GPL vmlinux 0x8b831bf3 udp4_lib_lookup_skb +EXPORT_SYMBOL_GPL vmlinux 0x8b91674e rtnl_delete_link +EXPORT_SYMBOL_GPL vmlinux 0x8b9200fd lookup_address +EXPORT_SYMBOL_GPL vmlinux 0x8b93d1b7 crypto_skcipher_encrypt +EXPORT_SYMBOL_GPL vmlinux 0x8b9c7bb1 spi_controller_resume +EXPORT_SYMBOL_GPL vmlinux 0x8bad9d0a iommu_dev_has_feature +EXPORT_SYMBOL_GPL vmlinux 0x8bdceac4 virtio_device_restore +EXPORT_SYMBOL_GPL vmlinux 0x8be7d918 hvc_remove +EXPORT_SYMBOL_GPL vmlinux 0x8befcf10 devm_acpi_dev_remove_driver_gpios +EXPORT_SYMBOL_GPL vmlinux 0x8c0215f2 pm_system_wakeup +EXPORT_SYMBOL_GPL vmlinux 0x8c03d20c destroy_workqueue +EXPORT_SYMBOL_GPL vmlinux 0x8c09042e skcipher_walk_aead_decrypt +EXPORT_SYMBOL_GPL vmlinux 0x8c1153d6 acpi_device_update_power +EXPORT_SYMBOL_GPL vmlinux 0x8c257caa da9052_free_irq +EXPORT_SYMBOL_GPL vmlinux 0x8c2890c5 devm_hwmon_device_register_with_groups +EXPORT_SYMBOL_GPL vmlinux 0x8c3c0cc3 tcp_reno_undo_cwnd +EXPORT_SYMBOL_GPL vmlinux 0x8c42cecb set_selection_kernel +EXPORT_SYMBOL_GPL vmlinux 0x8c479745 __cpuhp_state_remove_instance +EXPORT_SYMBOL_GPL vmlinux 0x8c484409 gnttab_release_grant_reference +EXPORT_SYMBOL_GPL vmlinux 0x8c49b1ba i2c_dw_configure_master +EXPORT_SYMBOL_GPL vmlinux 0x8c658778 xenbus_read_otherend_details +EXPORT_SYMBOL_GPL vmlinux 0x8c743fb6 reset_control_status +EXPORT_SYMBOL_GPL vmlinux 0x8c7785ef hwmon_device_unregister +EXPORT_SYMBOL_GPL vmlinux 0x8c89e3b8 usb_phy_roothub_power_off +EXPORT_SYMBOL_GPL vmlinux 0x8c9d1661 arch_phys_wc_index +EXPORT_SYMBOL_GPL vmlinux 0x8ca47009 gpiochip_irq_map +EXPORT_SYMBOL_GPL vmlinux 0x8caa1842 led_sysfs_enable +EXPORT_SYMBOL_GPL vmlinux 0x8cabd8f0 devm_clk_hw_register +EXPORT_SYMBOL_GPL vmlinux 0x8cbd6bd2 ftrace_set_notrace +EXPORT_SYMBOL_GPL vmlinux 0x8cc79d86 debugfs_create_file +EXPORT_SYMBOL_GPL vmlinux 0x8cdd3143 disk_part_iter_exit +EXPORT_SYMBOL_GPL vmlinux 0x8cf55d2b blk_mq_virtio_map_queues +EXPORT_SYMBOL_GPL vmlinux 0x8d033999 sock_diag_save_cookie +EXPORT_SYMBOL_GPL vmlinux 0x8d22bb58 iommu_group_alloc +EXPORT_SYMBOL_GPL vmlinux 0x8d27956a kthread_mod_delayed_work +EXPORT_SYMBOL_GPL vmlinux 0x8d2e507a devm_hwspin_lock_request_specific +EXPORT_SYMBOL_GPL vmlinux 0x8d3330b6 cpuacct_cgrp_subsys_enabled_key +EXPORT_SYMBOL_GPL vmlinux 0x8d40da17 mbox_free_channel +EXPORT_SYMBOL_GPL vmlinux 0x8d4ea995 i2c_new_scanned_device +EXPORT_SYMBOL_GPL vmlinux 0x8d522714 __rcu_read_lock +EXPORT_SYMBOL_GPL vmlinux 0x8d5fd735 phy_gbit_features +EXPORT_SYMBOL_GPL vmlinux 0x8d6566b6 dm_per_bio_data +EXPORT_SYMBOL_GPL vmlinux 0x8d7e3373 hwpoison_filter_dev_major +EXPORT_SYMBOL_GPL vmlinux 0x8d7ef132 gpiochip_line_is_valid +EXPORT_SYMBOL_GPL vmlinux 0x8da95330 bd_link_disk_holder +EXPORT_SYMBOL_GPL vmlinux 0x8dca9568 of_icc_get_by_index +EXPORT_SYMBOL_GPL vmlinux 0x8dcfd6bb ata_host_start +EXPORT_SYMBOL_GPL vmlinux 0x8de1b5d6 bio_trim +EXPORT_SYMBOL_GPL vmlinux 0x8ded1c16 vc_scrolldelta_helper +EXPORT_SYMBOL_GPL vmlinux 0x8e0ea639 usb_queue_reset_device +EXPORT_SYMBOL_GPL vmlinux 0x8e1621cf fscrypt_match_name +EXPORT_SYMBOL_GPL vmlinux 0x8e1e9255 ata_sff_tf_read +EXPORT_SYMBOL_GPL vmlinux 0x8e23d58f offline_and_remove_memory +EXPORT_SYMBOL_GPL vmlinux 0x8e3227db proc_create_net_single_write +EXPORT_SYMBOL_GPL vmlinux 0x8e4096db md_bitmap_load +EXPORT_SYMBOL_GPL vmlinux 0x8e4123b8 do_splice_to +EXPORT_SYMBOL_GPL vmlinux 0x8e4eb451 bpf_sk_storage_diag_free +EXPORT_SYMBOL_GPL vmlinux 0x8e4f48c1 xenbus_map_ring_valloc +EXPORT_SYMBOL_GPL vmlinux 0x8e61d8c5 component_unbind_all +EXPORT_SYMBOL_GPL vmlinux 0x8e6a210a class_compat_remove_link +EXPORT_SYMBOL_GPL vmlinux 0x8e6fa8b5 apei_exec_pre_map_gars +EXPORT_SYMBOL_GPL vmlinux 0x8e75f401 regmap_add_irq_chip +EXPORT_SYMBOL_GPL vmlinux 0x8e778f04 skb_mpls_update_lse +EXPORT_SYMBOL_GPL vmlinux 0x8e81a30b raw_unhash_sk +EXPORT_SYMBOL_GPL vmlinux 0x8e92f7c4 static_key_slow_inc +EXPORT_SYMBOL_GPL vmlinux 0x8e97ac55 ip6_datagram_recv_ctl +EXPORT_SYMBOL_GPL vmlinux 0x8e97ec3f sched_trace_rq_avg_rt +EXPORT_SYMBOL_GPL vmlinux 0x8e9bd4a3 hv_alloc_hyperv_page +EXPORT_SYMBOL_GPL vmlinux 0x8e9f0fd9 ip6_redirect +EXPORT_SYMBOL_GPL vmlinux 0x8eaa154d pci_msi_create_irq_domain +EXPORT_SYMBOL_GPL vmlinux 0x8eaa863a ata_sas_tport_delete +EXPORT_SYMBOL_GPL vmlinux 0x8eaa9f3c debugfs_create_devm_seqfile +EXPORT_SYMBOL_GPL vmlinux 0x8eab9a35 nexthop_find_by_id +EXPORT_SYMBOL_GPL vmlinux 0x8eae8dfd usb_find_common_endpoints +EXPORT_SYMBOL_GPL vmlinux 0x8eb211fe cpufreq_register_governor +EXPORT_SYMBOL_GPL vmlinux 0x8eca3d85 power_supply_unregister +EXPORT_SYMBOL_GPL vmlinux 0x8ed5f32b tcp_abort +EXPORT_SYMBOL_GPL vmlinux 0x8ee53e31 register_kprobe +EXPORT_SYMBOL_GPL vmlinux 0x8eee3399 dax_read_unlock +EXPORT_SYMBOL_GPL vmlinux 0x8ef7ceb9 device_del +EXPORT_SYMBOL_GPL vmlinux 0x8f0265c2 do_unbind_con_driver +EXPORT_SYMBOL_GPL vmlinux 0x8f0463b1 srcu_init_notifier_head +EXPORT_SYMBOL_GPL vmlinux 0x8f056de3 ip_build_and_send_pkt +EXPORT_SYMBOL_GPL vmlinux 0x8f0748af rcu_expedite_gp +EXPORT_SYMBOL_GPL vmlinux 0x8f10ecfc usb_urb_ep_type_check +EXPORT_SYMBOL_GPL vmlinux 0x8f2eb429 kvm_arch_para_hints +EXPORT_SYMBOL_GPL vmlinux 0x8f39e9b4 fib_table_lookup +EXPORT_SYMBOL_GPL vmlinux 0x8f557d31 ata_port_desc +EXPORT_SYMBOL_GPL vmlinux 0x8f572526 spi_setup +EXPORT_SYMBOL_GPL vmlinux 0x8f574824 component_master_add_with_match +EXPORT_SYMBOL_GPL vmlinux 0x8f6cee77 __round_jiffies_relative +EXPORT_SYMBOL_GPL vmlinux 0x8f786bee fs_umode_to_dtype +EXPORT_SYMBOL_GPL vmlinux 0x8f7bd0a6 btree_init_mempool +EXPORT_SYMBOL_GPL vmlinux 0x8f801d8d rhashtable_destroy +EXPORT_SYMBOL_GPL vmlinux 0x8f803f3e spi_finalize_current_message +EXPORT_SYMBOL_GPL vmlinux 0x8f9685fe usb_autopm_put_interface_async +EXPORT_SYMBOL_GPL vmlinux 0x8fae96c8 rio_dma_prep_xfer +EXPORT_SYMBOL_GPL vmlinux 0x8fbfb8f5 tcp_bpf_sendmsg_redir +EXPORT_SYMBOL_GPL vmlinux 0x8fc12788 software_node_unregister_node_group +EXPORT_SYMBOL_GPL vmlinux 0x8fcfaeb5 pci_load_saved_state +EXPORT_SYMBOL_GPL vmlinux 0x8fd64636 iomap_migrate_page +EXPORT_SYMBOL_GPL vmlinux 0x9007d972 rhashtable_walk_peek +EXPORT_SYMBOL_GPL vmlinux 0x9014fa04 dev_queue_xmit_nit +EXPORT_SYMBOL_GPL vmlinux 0x9024f443 mds_user_clear +EXPORT_SYMBOL_GPL vmlinux 0x903b627c list_lru_isolate_move +EXPORT_SYMBOL_GPL vmlinux 0x9055d067 fuse_simple_background +EXPORT_SYMBOL_GPL vmlinux 0x9057b91b to_nvdimm_bus_dev +EXPORT_SYMBOL_GPL vmlinux 0x905d8300 rio_release_outb_dbell +EXPORT_SYMBOL_GPL vmlinux 0x905dbd87 iommu_map_atomic +EXPORT_SYMBOL_GPL vmlinux 0x90688bcd devlink_info_driver_name_put +EXPORT_SYMBOL_GPL vmlinux 0x906cd20a ata_bmdma_status +EXPORT_SYMBOL_GPL vmlinux 0x90719cff __fscrypt_prepare_lookup +EXPORT_SYMBOL_GPL vmlinux 0x907274dc acpi_subsys_freeze +EXPORT_SYMBOL_GPL vmlinux 0x9081b5db btree_insert +EXPORT_SYMBOL_GPL vmlinux 0x9084b044 clear_page_erms +EXPORT_SYMBOL_GPL vmlinux 0x90869efa tty_set_ldisc +EXPORT_SYMBOL_GPL vmlinux 0x9094a05d inode_sb_list_add +EXPORT_SYMBOL_GPL vmlinux 0x90a38ad5 ata_pci_sff_init_one +EXPORT_SYMBOL_GPL vmlinux 0x90a9d8cc hv_is_hyperv_initialized +EXPORT_SYMBOL_GPL vmlinux 0x90ad66b1 software_node_unregister_nodes +EXPORT_SYMBOL_GPL vmlinux 0x90aec55e dev_pm_qos_flags +EXPORT_SYMBOL_GPL vmlinux 0x90c8498c apei_exec_write_register +EXPORT_SYMBOL_GPL vmlinux 0x90dc29df aout_dump_debugregs +EXPORT_SYMBOL_GPL vmlinux 0x90de0452 platform_thermal_package_notify +EXPORT_SYMBOL_GPL vmlinux 0x9109d630 validate_xmit_xfrm +EXPORT_SYMBOL_GPL vmlinux 0x911e8fc2 sched_show_task +EXPORT_SYMBOL_GPL vmlinux 0x9127c7b1 pci_disable_rom +EXPORT_SYMBOL_GPL vmlinux 0x912c6f48 irq_gc_mask_clr_bit +EXPORT_SYMBOL_GPL vmlinux 0x913d5e41 pci_host_probe +EXPORT_SYMBOL_GPL vmlinux 0x914a00ee cpuidle_unregister_driver +EXPORT_SYMBOL_GPL vmlinux 0x9155fe65 thermal_zone_device_register +EXPORT_SYMBOL_GPL vmlinux 0x91628481 dev_pm_opp_get_voltage +EXPORT_SYMBOL_GPL vmlinux 0x91652ecb extcon_dev_free +EXPORT_SYMBOL_GPL vmlinux 0x9165b3a4 dm_internal_suspend_fast +EXPORT_SYMBOL_GPL vmlinux 0x9171f3d5 srcu_notifier_chain_unregister +EXPORT_SYMBOL_GPL vmlinux 0x917b66ac crypto_unregister_skciphers +EXPORT_SYMBOL_GPL vmlinux 0x91855cb6 uprobe_register +EXPORT_SYMBOL_GPL vmlinux 0x9194e18f xenbus_mkdir +EXPORT_SYMBOL_GPL vmlinux 0x91976ec9 kthread_flush_work +EXPORT_SYMBOL_GPL vmlinux 0x91a55068 public_key_free +EXPORT_SYMBOL_GPL vmlinux 0x91ac931b devprop_gpiochip_set_names +EXPORT_SYMBOL_GPL vmlinux 0x91b9a4ba e820__mapped_any +EXPORT_SYMBOL_GPL vmlinux 0x91c24cae cpci_hp_unregister_controller +EXPORT_SYMBOL_GPL vmlinux 0x91c6e5b0 pcap_to_irq +EXPORT_SYMBOL_GPL vmlinux 0x91c8b5b5 mutex_lock_io +EXPORT_SYMBOL_GPL vmlinux 0x91d30560 md_run +EXPORT_SYMBOL_GPL vmlinux 0x91f51dc1 iommu_group_add_device +EXPORT_SYMBOL_GPL vmlinux 0x920cc389 visitorl +EXPORT_SYMBOL_GPL vmlinux 0x9212af99 devm_devfreq_event_remove_edev +EXPORT_SYMBOL_GPL vmlinux 0x92141343 kvm_async_pf_task_wake +EXPORT_SYMBOL_GPL vmlinux 0x921608f8 phy_validate +EXPORT_SYMBOL_GPL vmlinux 0x92295424 clk_register_gate +EXPORT_SYMBOL_GPL vmlinux 0x9231dbe4 pci_stop_root_bus +EXPORT_SYMBOL_GPL vmlinux 0x923bca1a udp_destruct_sock +EXPORT_SYMBOL_GPL vmlinux 0x923be477 cpufreq_unregister_driver +EXPORT_SYMBOL_GPL vmlinux 0x923d9dba pkcs7_parse_message +EXPORT_SYMBOL_GPL vmlinux 0x9241b358 __static_key_slow_dec_deferred +EXPORT_SYMBOL_GPL vmlinux 0x924c46f8 zs_unmap_object +EXPORT_SYMBOL_GPL vmlinux 0x9255c97f rio_mport_read_config_8 +EXPORT_SYMBOL_GPL vmlinux 0x9265814e led_update_brightness +EXPORT_SYMBOL_GPL vmlinux 0x92d31cfb fixed_phy_add +EXPORT_SYMBOL_GPL vmlinux 0x92d8e56f __tracepoint_xhci_dbg_quirks +EXPORT_SYMBOL_GPL vmlinux 0x92db8f68 do_trace_rcu_torture_read +EXPORT_SYMBOL_GPL vmlinux 0x92e0f64e xenbus_match +EXPORT_SYMBOL_GPL vmlinux 0x92e8e9ab fsverity_enqueue_verify_work +EXPORT_SYMBOL_GPL vmlinux 0x92f12784 ata_scsi_port_error_handler +EXPORT_SYMBOL_GPL vmlinux 0x93069b11 securityfs_create_dir +EXPORT_SYMBOL_GPL vmlinux 0x930fd343 vfs_getxattr +EXPORT_SYMBOL_GPL vmlinux 0x93170790 blk_fill_rwbs +EXPORT_SYMBOL_GPL vmlinux 0x93255b2b ring_buffer_lock_reserve +EXPORT_SYMBOL_GPL vmlinux 0x932c8d7a linear_range_get_value_array +EXPORT_SYMBOL_GPL vmlinux 0x9332207c crypto_stats_aead_encrypt +EXPORT_SYMBOL_GPL vmlinux 0x933e69b2 ata_sff_postreset +EXPORT_SYMBOL_GPL vmlinux 0x933f75e0 usb_unlink_anchored_urbs +EXPORT_SYMBOL_GPL vmlinux 0x9345e1b3 alloc_dax_region +EXPORT_SYMBOL_GPL vmlinux 0x93492796 usb_enable_ltm +EXPORT_SYMBOL_GPL vmlinux 0x934e9899 pm_clk_remove +EXPORT_SYMBOL_GPL vmlinux 0x93504389 regulator_enable +EXPORT_SYMBOL_GPL vmlinux 0x935bc413 dma_get_required_mask +EXPORT_SYMBOL_GPL vmlinux 0x935e1d4e perf_event_disable +EXPORT_SYMBOL_GPL vmlinux 0x936765c7 nvmem_cell_get +EXPORT_SYMBOL_GPL vmlinux 0x93725986 __tracepoint_pelt_dl_tp +EXPORT_SYMBOL_GPL vmlinux 0x937413bb pid_vnr +EXPORT_SYMBOL_GPL vmlinux 0x937f3256 crypto_unregister_template +EXPORT_SYMBOL_GPL vmlinux 0x9384cd49 ata_tf_from_fis +EXPORT_SYMBOL_GPL vmlinux 0x93906323 dm_internal_suspend_noflush +EXPORT_SYMBOL_GPL vmlinux 0x93922111 get_compat_bpf_fprog +EXPORT_SYMBOL_GPL vmlinux 0x93aed2d8 pci_enable_ats +EXPORT_SYMBOL_GPL vmlinux 0x93bca47e i2c_dw_acpi_configure +EXPORT_SYMBOL_GPL vmlinux 0x93cf32a6 ehci_reset +EXPORT_SYMBOL_GPL vmlinux 0x93d1d424 gnttab_free_grant_references +EXPORT_SYMBOL_GPL vmlinux 0x93d6c825 irq_domain_alloc_irqs_parent +EXPORT_SYMBOL_GPL vmlinux 0x93dc2586 pgprot_writethrough +EXPORT_SYMBOL_GPL vmlinux 0x93eb4aa4 of_pm_clk_add_clk +EXPORT_SYMBOL_GPL vmlinux 0x93ebd5e2 sdio_set_host_pm_flags +EXPORT_SYMBOL_GPL vmlinux 0x93edef07 devlink_health_report +EXPORT_SYMBOL_GPL vmlinux 0x93f17e4b da903x_register_notifier +EXPORT_SYMBOL_GPL vmlinux 0x94193755 bpf_trace_run6 +EXPORT_SYMBOL_GPL vmlinux 0x941a3d4f clk_hw_unregister_fixed_rate +EXPORT_SYMBOL_GPL vmlinux 0x941f2aaa eventfd_ctx_put +EXPORT_SYMBOL_GPL vmlinux 0x94207bd9 nvdimm_setup_pfn +EXPORT_SYMBOL_GPL vmlinux 0x9424058f arch_haltpoll_disable +EXPORT_SYMBOL_GPL vmlinux 0x9425bb34 nvmem_dev_name +EXPORT_SYMBOL_GPL vmlinux 0x942fec7e __serdev_device_driver_register +EXPORT_SYMBOL_GPL vmlinux 0x9430b198 trace_dump_stack +EXPORT_SYMBOL_GPL vmlinux 0x943fc708 xen_setup_shutdown_event +EXPORT_SYMBOL_GPL vmlinux 0x946dd559 sha224_zero_message_hash +EXPORT_SYMBOL_GPL vmlinux 0x947b40c6 cpu_smt_possible +EXPORT_SYMBOL_GPL vmlinux 0x949b5176 devlink_region_snapshot_create +EXPORT_SYMBOL_GPL vmlinux 0x949f7342 __alloc_percpu +EXPORT_SYMBOL_GPL vmlinux 0x94a76a39 i2c_adapter_type +EXPORT_SYMBOL_GPL vmlinux 0x94b572f4 bd_unlink_disk_holder +EXPORT_SYMBOL_GPL vmlinux 0x94bc81db ping_bind +EXPORT_SYMBOL_GPL vmlinux 0x94cb8a03 nf_ct_hook +EXPORT_SYMBOL_GPL vmlinux 0x94def28d securityfs_create_symlink +EXPORT_SYMBOL_GPL vmlinux 0x94ef4d05 cpci_hp_stop +EXPORT_SYMBOL_GPL vmlinux 0x94f37cf1 usb_put_intf +EXPORT_SYMBOL_GPL vmlinux 0x94f64e37 cpufreq_driver_target +EXPORT_SYMBOL_GPL vmlinux 0x95008ca9 fuse_dev_free +EXPORT_SYMBOL_GPL vmlinux 0x9504df26 irq_wake_thread +EXPORT_SYMBOL_GPL vmlinux 0x951a2773 crypto_has_alg +EXPORT_SYMBOL_GPL vmlinux 0x95226da1 rio_free_net +EXPORT_SYMBOL_GPL vmlinux 0x95258207 vfio_device_data +EXPORT_SYMBOL_GPL vmlinux 0x952664c5 do_exit +EXPORT_SYMBOL_GPL vmlinux 0x953e1b9e ktime_get_real_seconds +EXPORT_SYMBOL_GPL vmlinux 0x954c9bd0 sysfs_remove_file_self +EXPORT_SYMBOL_GPL vmlinux 0x9554cb14 task_cgroup_path +EXPORT_SYMBOL_GPL vmlinux 0x9556572e sysfs_create_link +EXPORT_SYMBOL_GPL vmlinux 0x95584659 metadata_dst_alloc +EXPORT_SYMBOL_GPL vmlinux 0x955b0e2e kthread_worker_fn +EXPORT_SYMBOL_GPL vmlinux 0x9564d290 blkcg_print_blkgs +EXPORT_SYMBOL_GPL vmlinux 0x9565b8d9 perf_pmu_migrate_context +EXPORT_SYMBOL_GPL vmlinux 0x956660c7 serdev_device_remove +EXPORT_SYMBOL_GPL vmlinux 0x95688e9f elv_unregister +EXPORT_SYMBOL_GPL vmlinux 0x956ac400 ring_buffer_dropped_events_cpu +EXPORT_SYMBOL_GPL vmlinux 0x956c24fd ptp_classify_raw +EXPORT_SYMBOL_GPL vmlinux 0x958df3ac zs_free +EXPORT_SYMBOL_GPL vmlinux 0x959ec5f5 call_rcu_tasks +EXPORT_SYMBOL_GPL vmlinux 0x95ac2408 adp5520_clr_bits +EXPORT_SYMBOL_GPL vmlinux 0x95bc9078 btree_free +EXPORT_SYMBOL_GPL vmlinux 0x95e6fe44 ata_acpi_cbl_80wire +EXPORT_SYMBOL_GPL vmlinux 0x95ef1ccc dmi_memdev_size +EXPORT_SYMBOL_GPL vmlinux 0x95efa1db pkcs7_free_message +EXPORT_SYMBOL_GPL vmlinux 0x9607ca5f br_fdb_test_addr_hook +EXPORT_SYMBOL_GPL vmlinux 0x9608a5af devfreq_event_remove_edev +EXPORT_SYMBOL_GPL vmlinux 0x961286e0 ring_buffer_read_events_cpu +EXPORT_SYMBOL_GPL vmlinux 0x9615f068 gpiochip_irqchip_add_key +EXPORT_SYMBOL_GPL vmlinux 0x96237444 pinctrl_enable +EXPORT_SYMBOL_GPL vmlinux 0x96292755 rtc_class_open +EXPORT_SYMBOL_GPL vmlinux 0x962c8ae1 usb_kill_anchored_urbs +EXPORT_SYMBOL_GPL vmlinux 0x9636826a sk_detach_filter +EXPORT_SYMBOL_GPL vmlinux 0x963dbb70 ata_scsi_slave_destroy +EXPORT_SYMBOL_GPL vmlinux 0x96554810 register_keyboard_notifier +EXPORT_SYMBOL_GPL vmlinux 0x9660fb7d ping_seq_stop +EXPORT_SYMBOL_GPL vmlinux 0x96762e2d uart_try_toggle_sysrq +EXPORT_SYMBOL_GPL vmlinux 0x967e0182 ip6_datagram_release_cb +EXPORT_SYMBOL_GPL vmlinux 0x9683ef4d sk_msg_return +EXPORT_SYMBOL_GPL vmlinux 0x9688b217 gnttab_batch_copy +EXPORT_SYMBOL_GPL vmlinux 0x968f9a23 efivar_entry_iter_begin +EXPORT_SYMBOL_GPL vmlinux 0x9694ebf1 pci_epf_unbind +EXPORT_SYMBOL_GPL vmlinux 0x969574c6 ata_port_abort +EXPORT_SYMBOL_GPL vmlinux 0x969c73d9 vfio_device_put +EXPORT_SYMBOL_GPL vmlinux 0x969fae19 call_srcu +EXPORT_SYMBOL_GPL vmlinux 0x96ce9f10 netdev_walk_all_upper_dev_rcu +EXPORT_SYMBOL_GPL vmlinux 0x96d71ce7 gpiod_set_config +EXPORT_SYMBOL_GPL vmlinux 0x96e2dae8 power_supply_register +EXPORT_SYMBOL_GPL vmlinux 0x96e56453 call_switchdev_notifiers +EXPORT_SYMBOL_GPL vmlinux 0x96e60bb9 dmaengine_unmap_put +EXPORT_SYMBOL_GPL vmlinux 0x96eaf6a8 fat_getattr +EXPORT_SYMBOL_GPL vmlinux 0x96efd7d2 sata_scr_valid +EXPORT_SYMBOL_GPL vmlinux 0x96f0a7a9 tcp_reno_ssthresh +EXPORT_SYMBOL_GPL vmlinux 0x96f1f751 sysfs_remove_link +EXPORT_SYMBOL_GPL vmlinux 0x97074b85 synth_event_trace_array +EXPORT_SYMBOL_GPL vmlinux 0x9714e0bb ktime_get_raw +EXPORT_SYMBOL_GPL vmlinux 0x9719bcfd pmc_atom_read +EXPORT_SYMBOL_GPL vmlinux 0x971b45bf __udp_gso_segment +EXPORT_SYMBOL_GPL vmlinux 0x971ec773 dm_post_suspending +EXPORT_SYMBOL_GPL vmlinux 0x97323741 icc_set_bw +EXPORT_SYMBOL_GPL vmlinux 0x9733e72f devm_reset_controller_register +EXPORT_SYMBOL_GPL vmlinux 0x9747621a register_pernet_subsys +EXPORT_SYMBOL_GPL vmlinux 0x975519c1 asymmetric_key_id_same +EXPORT_SYMBOL_GPL vmlinux 0x97623558 xas_create_range +EXPORT_SYMBOL_GPL vmlinux 0x977b8316 request_firmware_direct +EXPORT_SYMBOL_GPL vmlinux 0x977be5c7 klist_iter_init_node +EXPORT_SYMBOL_GPL vmlinux 0x97836c19 class_dev_iter_init +EXPORT_SYMBOL_GPL vmlinux 0x97cbfb34 acpi_dev_pm_attach +EXPORT_SYMBOL_GPL vmlinux 0x97d12355 hv_remove_stimer0_irq +EXPORT_SYMBOL_GPL vmlinux 0x97de2b83 debug_locks_silent +EXPORT_SYMBOL_GPL vmlinux 0x97e7f902 trace_vbprintk +EXPORT_SYMBOL_GPL vmlinux 0x97ebc534 strp_init +EXPORT_SYMBOL_GPL vmlinux 0x97f1611a regulator_get_drvdata +EXPORT_SYMBOL_GPL vmlinux 0x97f93edf rdev_clear_badblocks +EXPORT_SYMBOL_GPL vmlinux 0x98104106 regulator_is_equal +EXPORT_SYMBOL_GPL vmlinux 0x9810e568 register_virtio_device +EXPORT_SYMBOL_GPL vmlinux 0x982fd011 gpiochip_get_desc +EXPORT_SYMBOL_GPL vmlinux 0x9833bc0c hvc_kick +EXPORT_SYMBOL_GPL vmlinux 0x983c06b2 query_asymmetric_key +EXPORT_SYMBOL_GPL vmlinux 0x983e89dc regulator_disable_deferred +EXPORT_SYMBOL_GPL vmlinux 0x984b07af irqchip_fwnode_ops +EXPORT_SYMBOL_GPL vmlinux 0x98503a63 mpi_alloc +EXPORT_SYMBOL_GPL vmlinux 0x98536f22 usb_disable_xhci_ports +EXPORT_SYMBOL_GPL vmlinux 0x985453e1 lease_unregister_notifier +EXPORT_SYMBOL_GPL vmlinux 0x98602c16 serial8250_modem_status +EXPORT_SYMBOL_GPL vmlinux 0x987520e2 usb_find_common_endpoints_reverse +EXPORT_SYMBOL_GPL vmlinux 0x9879932b crypto_register_notifier +EXPORT_SYMBOL_GPL vmlinux 0x987ab0a5 amd_get_nb_id +EXPORT_SYMBOL_GPL vmlinux 0x9881693a sock_diag_put_meminfo +EXPORT_SYMBOL_GPL vmlinux 0x988a1a00 sn_region_size +EXPORT_SYMBOL_GPL vmlinux 0x989074ff kmsg_dump_reason_str +EXPORT_SYMBOL_GPL vmlinux 0x9898fa8f gpiod_to_chip +EXPORT_SYMBOL_GPL vmlinux 0x989b142c hypervisor_kobj +EXPORT_SYMBOL_GPL vmlinux 0x98a87069 fsnotify_init_mark +EXPORT_SYMBOL_GPL vmlinux 0x98ac26cd led_stop_software_blink +EXPORT_SYMBOL_GPL vmlinux 0x98bbe2ba housekeeping_affine +EXPORT_SYMBOL_GPL vmlinux 0x98bfa25d regmap_field_update_bits_base +EXPORT_SYMBOL_GPL vmlinux 0x98c2e93b devres_get +EXPORT_SYMBOL_GPL vmlinux 0x98ee62b2 ring_buffer_record_disable_cpu +EXPORT_SYMBOL_GPL vmlinux 0x98f4d306 hyperv_flush_guest_mapping +EXPORT_SYMBOL_GPL vmlinux 0x98fa1e20 dm_get_reserved_rq_based_ios +EXPORT_SYMBOL_GPL vmlinux 0x9911a68e virtio_config_disable +EXPORT_SYMBOL_GPL vmlinux 0x9930f8a3 uv_bios_change_memprotect +EXPORT_SYMBOL_GPL vmlinux 0x99323098 sfp_add_phy +EXPORT_SYMBOL_GPL vmlinux 0x99430ba2 acpi_get_phys_id +EXPORT_SYMBOL_GPL vmlinux 0x99497681 dev_attr_sw_activity +EXPORT_SYMBOL_GPL vmlinux 0x9954b44b blk_mq_freeze_queue_wait +EXPORT_SYMBOL_GPL vmlinux 0x995d1071 prof_on +EXPORT_SYMBOL_GPL vmlinux 0x9970cc70 devm_nvmem_device_put +EXPORT_SYMBOL_GPL vmlinux 0x997f1605 netdev_is_rx_handler_busy +EXPORT_SYMBOL_GPL vmlinux 0x998cbcbd serdev_controller_add +EXPORT_SYMBOL_GPL vmlinux 0x998d79d6 x509_decode_time +EXPORT_SYMBOL_GPL vmlinux 0x99b358bd rio_mport_write_config_16 +EXPORT_SYMBOL_GPL vmlinux 0x99ba84c6 gpiod_toggle_active_low +EXPORT_SYMBOL_GPL vmlinux 0x99bc14c1 __netif_set_xps_queue +EXPORT_SYMBOL_GPL vmlinux 0x99c2ef72 vfio_iommu_group_put +EXPORT_SYMBOL_GPL vmlinux 0x99d24052 uhci_reset_hc +EXPORT_SYMBOL_GPL vmlinux 0x99f018c4 nvmem_cell_read +EXPORT_SYMBOL_GPL vmlinux 0x99f2d00a sysfs_emit_at +EXPORT_SYMBOL_GPL vmlinux 0x9a001513 component_bind_all +EXPORT_SYMBOL_GPL vmlinux 0x9a0e7ee3 synth_event_trace +EXPORT_SYMBOL_GPL vmlinux 0x9a11a0fc crypto_attr_alg_name +EXPORT_SYMBOL_GPL vmlinux 0x9a2367f6 kernfs_path_from_node +EXPORT_SYMBOL_GPL vmlinux 0x9a2d0647 rio_request_outb_dbell +EXPORT_SYMBOL_GPL vmlinux 0x9a2dabf6 regmap_exit +EXPORT_SYMBOL_GPL vmlinux 0x9a52022c mmu_notifier_get_locked +EXPORT_SYMBOL_GPL vmlinux 0x9a58dd2d trace_print_bitmask_seq +EXPORT_SYMBOL_GPL vmlinux 0x9a5c3e00 netdev_rx_handler_unregister +EXPORT_SYMBOL_GPL vmlinux 0x9a8f09c1 devm_hwspin_lock_request +EXPORT_SYMBOL_GPL vmlinux 0x9aa10304 blk_rq_prep_clone +EXPORT_SYMBOL_GPL vmlinux 0x9aa71c2a efi_query_variable_store +EXPORT_SYMBOL_GPL vmlinux 0x9aaac699 dev_pm_opp_cpumask_remove_table +EXPORT_SYMBOL_GPL vmlinux 0x9ac03bab wm8998_i2c_regmap +EXPORT_SYMBOL_GPL vmlinux 0x9ac11b74 suspend_set_ops +EXPORT_SYMBOL_GPL vmlinux 0x9ac514d0 irq_gc_ack_set_bit +EXPORT_SYMBOL_GPL vmlinux 0x9ad41fb1 bpf_map_inc_not_zero +EXPORT_SYMBOL_GPL vmlinux 0x9ad48f64 mddev_congested +EXPORT_SYMBOL_GPL vmlinux 0x9ad58496 phy_restore_page +EXPORT_SYMBOL_GPL vmlinux 0x9adadeed regulator_set_voltage_rdev +EXPORT_SYMBOL_GPL vmlinux 0x9ae4191f sbitmap_queue_init_node +EXPORT_SYMBOL_GPL vmlinux 0x9aeacb87 ring_buffer_iter_empty +EXPORT_SYMBOL_GPL vmlinux 0x9aef9781 driver_remove_file +EXPORT_SYMBOL_GPL vmlinux 0x9b0ae5b9 iommu_domain_alloc +EXPORT_SYMBOL_GPL vmlinux 0x9b169333 rio_route_clr_table +EXPORT_SYMBOL_GPL vmlinux 0x9b1a2e75 tty_buffer_set_limit +EXPORT_SYMBOL_GPL vmlinux 0x9b1b8d35 blk_ksm_init +EXPORT_SYMBOL_GPL vmlinux 0x9b32ff60 dev_pm_opp_enable +EXPORT_SYMBOL_GPL vmlinux 0x9b42af98 virtio_finalize_features +EXPORT_SYMBOL_GPL vmlinux 0x9b551938 devlink_dpipe_entry_ctx_close +EXPORT_SYMBOL_GPL vmlinux 0x9b555c8c pm_suspend_default_s2idle +EXPORT_SYMBOL_GPL vmlinux 0x9b58b94f vfio_group_get_external_user +EXPORT_SYMBOL_GPL vmlinux 0x9b68a4d1 bpf_prog_inc +EXPORT_SYMBOL_GPL vmlinux 0x9b698c42 ioasid_set_data +EXPORT_SYMBOL_GPL vmlinux 0x9b6de43d wait_for_stable_page +EXPORT_SYMBOL_GPL vmlinux 0x9b6ec967 ring_buffer_size +EXPORT_SYMBOL_GPL vmlinux 0x9b7c2cd8 pm_runtime_allow +EXPORT_SYMBOL_GPL vmlinux 0x9b81279c crypto_stats_kpp_compute_shared_secret +EXPORT_SYMBOL_GPL vmlinux 0x9b896724 devlink_param_value_str_fill +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 0x9b9fea5e max8997_update_reg +EXPORT_SYMBOL_GPL vmlinux 0x9ba2bb2b gpio_request_array +EXPORT_SYMBOL_GPL vmlinux 0x9bad141d hv_hypercall_pg +EXPORT_SYMBOL_GPL vmlinux 0x9bb6903b debugfs_real_fops +EXPORT_SYMBOL_GPL vmlinux 0x9bbe0644 net_ns_get_ownership +EXPORT_SYMBOL_GPL vmlinux 0x9bc77923 __tracepoint_neigh_update +EXPORT_SYMBOL_GPL vmlinux 0x9bcbde90 edac_pci_handle_pe +EXPORT_SYMBOL_GPL vmlinux 0x9bcf27cd ata_sff_drain_fifo +EXPORT_SYMBOL_GPL vmlinux 0x9bddce0d bio_clone_blkg_association +EXPORT_SYMBOL_GPL vmlinux 0x9bde33a6 usb_deregister_dev +EXPORT_SYMBOL_GPL vmlinux 0x9be2831a serial8250_tx_chars +EXPORT_SYMBOL_GPL vmlinux 0x9bece81b mpi_cmp_ui +EXPORT_SYMBOL_GPL vmlinux 0x9bf3fcfd crypto_spawn_tfm +EXPORT_SYMBOL_GPL vmlinux 0x9c1aa2c6 cpu_device_create +EXPORT_SYMBOL_GPL vmlinux 0x9c1bda22 ata_sff_thaw +EXPORT_SYMBOL_GPL vmlinux 0x9c1c1025 usb_string +EXPORT_SYMBOL_GPL vmlinux 0x9c2abb15 fwnode_property_read_u64_array +EXPORT_SYMBOL_GPL vmlinux 0x9c36aff3 skb_splice_bits +EXPORT_SYMBOL_GPL vmlinux 0x9c441b01 gpiod_set_raw_value +EXPORT_SYMBOL_GPL vmlinux 0x9c57966b ipv6_proxy_select_ident +EXPORT_SYMBOL_GPL vmlinux 0x9c6b3f91 fuse_dev_alloc_install +EXPORT_SYMBOL_GPL vmlinux 0x9c6febfc add_uevent_var +EXPORT_SYMBOL_GPL vmlinux 0x9c803020 usb_phy_roothub_power_on +EXPORT_SYMBOL_GPL vmlinux 0x9c803f6c crypto_cipher_setkey +EXPORT_SYMBOL_GPL vmlinux 0x9c9337bf __phy_modify +EXPORT_SYMBOL_GPL vmlinux 0x9ca1fd58 pci_disable_pri +EXPORT_SYMBOL_GPL vmlinux 0x9ca480cc clk_gate_is_enabled +EXPORT_SYMBOL_GPL vmlinux 0x9caab9ef acpi_gpio_get_irq_resource +EXPORT_SYMBOL_GPL vmlinux 0x9cb88057 __clocksource_register_scale +EXPORT_SYMBOL_GPL vmlinux 0x9cc0f307 perf_event_period +EXPORT_SYMBOL_GPL vmlinux 0x9cc4f70a register_pm_notifier +EXPORT_SYMBOL_GPL vmlinux 0x9cc9e3e8 key_type_encrypted +EXPORT_SYMBOL_GPL vmlinux 0x9cca58f8 led_trigger_unregister_simple +EXPORT_SYMBOL_GPL vmlinux 0x9cd08257 restore_online_page_callback +EXPORT_SYMBOL_GPL vmlinux 0x9ce2a136 lwtunnel_state_alloc +EXPORT_SYMBOL_GPL vmlinux 0x9ced853c irq_domain_free_irqs_parent +EXPORT_SYMBOL_GPL vmlinux 0x9cf37c44 __iowrite32_copy +EXPORT_SYMBOL_GPL vmlinux 0x9d0274e4 pm_clk_suspend +EXPORT_SYMBOL_GPL vmlinux 0x9d09e8ae ring_buffer_event_data +EXPORT_SYMBOL_GPL vmlinux 0x9d0bd4c2 usb_add_phy_dev +EXPORT_SYMBOL_GPL vmlinux 0x9d14205c cr4_read_shadow +EXPORT_SYMBOL_GPL vmlinux 0x9d1feaf5 usb_free_streams +EXPORT_SYMBOL_GPL vmlinux 0x9d2c7105 ip6_sk_dst_lookup_flow +EXPORT_SYMBOL_GPL vmlinux 0x9d2f59dd led_trigger_event +EXPORT_SYMBOL_GPL vmlinux 0x9d31d0a1 irq_gc_mask_set_bit +EXPORT_SYMBOL_GPL vmlinux 0x9d32f99d tps65912_device_init +EXPORT_SYMBOL_GPL vmlinux 0x9d347379 led_set_brightness_nopm +EXPORT_SYMBOL_GPL vmlinux 0x9d39a7d9 tps6586x_write +EXPORT_SYMBOL_GPL vmlinux 0x9d57cfec crypto_unregister_shashes +EXPORT_SYMBOL_GPL vmlinux 0x9d5cdf8c device_create_with_groups +EXPORT_SYMBOL_GPL vmlinux 0x9d61ce6f ata_cable_40wire +EXPORT_SYMBOL_GPL vmlinux 0x9d69254f scsi_host_complete_all_commands +EXPORT_SYMBOL_GPL vmlinux 0x9d7d690f sysfs_groups_change_owner +EXPORT_SYMBOL_GPL vmlinux 0x9da5a605 device_show_bool +EXPORT_SYMBOL_GPL vmlinux 0x9dd662a5 rio_mport_class +EXPORT_SYMBOL_GPL vmlinux 0x9de461cd sock_gen_put +EXPORT_SYMBOL_GPL vmlinux 0x9df52fa9 __fl6_sock_lookup +EXPORT_SYMBOL_GPL vmlinux 0x9dfaf08d sock_prot_inuse_get +EXPORT_SYMBOL_GPL vmlinux 0x9e005e6f cppc_get_perf_caps +EXPORT_SYMBOL_GPL vmlinux 0x9e08d700 __tracepoint_xdp_bulk_tx +EXPORT_SYMBOL_GPL vmlinux 0x9e238628 xenbus_unmap_ring_vfree +EXPORT_SYMBOL_GPL vmlinux 0x9e2d9b6a dev_pm_qos_remove_request +EXPORT_SYMBOL_GPL vmlinux 0x9e343c92 usb_alloc_urb +EXPORT_SYMBOL_GPL vmlinux 0x9e405fb7 dax_region_put +EXPORT_SYMBOL_GPL vmlinux 0x9e423bbc unregister_ftrace_function +EXPORT_SYMBOL_GPL vmlinux 0x9e472f5f snmp_fold_field +EXPORT_SYMBOL_GPL vmlinux 0x9e4dea0f fwnode_remove_software_node +EXPORT_SYMBOL_GPL vmlinux 0x9e726a7a sata_std_hardreset +EXPORT_SYMBOL_GPL vmlinux 0x9e7e3e01 gpiod_get_index +EXPORT_SYMBOL_GPL vmlinux 0x9e902cb7 netdev_walk_all_lower_dev_rcu +EXPORT_SYMBOL_GPL vmlinux 0x9e951235 ata_sff_softreset +EXPORT_SYMBOL_GPL vmlinux 0x9e9a9464 gpiod_get_direction +EXPORT_SYMBOL_GPL vmlinux 0x9e9ac1e9 srcu_torture_stats_print +EXPORT_SYMBOL_GPL vmlinux 0x9ea4f4e4 blk_mq_sched_try_insert_merge +EXPORT_SYMBOL_GPL vmlinux 0x9eb03972 bpf_prog_create_from_user +EXPORT_SYMBOL_GPL vmlinux 0x9eb7cd07 iommu_attach_group +EXPORT_SYMBOL_GPL vmlinux 0x9ed3c5ef devm_kasprintf +EXPORT_SYMBOL_GPL vmlinux 0x9ed554b3 unregister_keyboard_notifier +EXPORT_SYMBOL_GPL vmlinux 0x9edf2b19 crypto_cipher_encrypt_one +EXPORT_SYMBOL_GPL vmlinux 0x9ee315fa usb_wakeup_enabled_descendants +EXPORT_SYMBOL_GPL vmlinux 0x9ee5aead fscrypt_drop_inode +EXPORT_SYMBOL_GPL vmlinux 0x9ef34add phy_pm_runtime_get_sync +EXPORT_SYMBOL_GPL vmlinux 0x9efe22e5 __efivar_entry_delete +EXPORT_SYMBOL_GPL vmlinux 0x9efe97f8 devm_regulator_put +EXPORT_SYMBOL_GPL vmlinux 0x9f01c37b regulator_register +EXPORT_SYMBOL_GPL vmlinux 0x9f0d8adb inverse_translate +EXPORT_SYMBOL_GPL vmlinux 0x9f1a09eb bsg_setup_queue +EXPORT_SYMBOL_GPL vmlinux 0x9f28b93b sk_setup_caps +EXPORT_SYMBOL_GPL vmlinux 0x9f36457e __tracepoint_fdb_delete +EXPORT_SYMBOL_GPL vmlinux 0x9f48a9d9 kthread_use_mm +EXPORT_SYMBOL_GPL vmlinux 0x9f535630 __audit_inode_child +EXPORT_SYMBOL_GPL vmlinux 0x9f81fcb5 fib_info_nh_uses_dev +EXPORT_SYMBOL_GPL vmlinux 0x9f82665b power_supply_changed +EXPORT_SYMBOL_GPL vmlinux 0x9f882259 kthread_queue_work +EXPORT_SYMBOL_GPL vmlinux 0x9fab32df arch_set_freq_scale +EXPORT_SYMBOL_GPL vmlinux 0x9fba3f8b inet_csk_clone_lock +EXPORT_SYMBOL_GPL vmlinux 0x9fbfebab erst_write +EXPORT_SYMBOL_GPL vmlinux 0x9fc2c7e3 dev_pm_opp_register_set_opp_helper +EXPORT_SYMBOL_GPL vmlinux 0x9fce80db fb_notifier_call_chain +EXPORT_SYMBOL_GPL vmlinux 0x9fcf3357 cpuidle_unregister +EXPORT_SYMBOL_GPL vmlinux 0x9fe899b7 get_cpu_idle_time +EXPORT_SYMBOL_GPL vmlinux 0x9fe8e5f0 vfio_virqfd_enable +EXPORT_SYMBOL_GPL vmlinux 0x9fe939e1 mpi_powm +EXPORT_SYMBOL_GPL vmlinux 0x9fed04b3 generic_fh_to_dentry +EXPORT_SYMBOL_GPL vmlinux 0x9ffbe641 tcp_get_syncookie_mss +EXPORT_SYMBOL_GPL vmlinux 0xa0043e49 posix_acl_create +EXPORT_SYMBOL_GPL vmlinux 0xa016addd tpm_get_random +EXPORT_SYMBOL_GPL vmlinux 0xa01a8d9b nd_cmd_bus_desc +EXPORT_SYMBOL_GPL vmlinux 0xa034df04 inet_csk_compat_getsockopt +EXPORT_SYMBOL_GPL vmlinux 0xa03c1a19 cpufreq_dbs_governor_start +EXPORT_SYMBOL_GPL vmlinux 0xa03d3f36 devm_clk_bulk_get_all +EXPORT_SYMBOL_GPL vmlinux 0xa0465b0c regulator_lock +EXPORT_SYMBOL_GPL vmlinux 0xa04f945a cpus_read_lock +EXPORT_SYMBOL_GPL vmlinux 0xa084878c get_task_pid +EXPORT_SYMBOL_GPL vmlinux 0xa08a41ce usb_put_dev +EXPORT_SYMBOL_GPL vmlinux 0xa08e8701 devm_gpiod_get_optional +EXPORT_SYMBOL_GPL vmlinux 0xa08f5e74 usb_create_hcd +EXPORT_SYMBOL_GPL vmlinux 0xa0925b03 security_kernel_post_read_file +EXPORT_SYMBOL_GPL vmlinux 0xa0a41646 __get_task_comm +EXPORT_SYMBOL_GPL vmlinux 0xa0a5fe94 dma_request_chan +EXPORT_SYMBOL_GPL vmlinux 0xa0b06842 wm8350_device_init +EXPORT_SYMBOL_GPL vmlinux 0xa0b720b4 bus_get_kset +EXPORT_SYMBOL_GPL vmlinux 0xa0bc22e5 crypto_register_acomp +EXPORT_SYMBOL_GPL vmlinux 0xa0c3688a skcipher_walk_aead_encrypt +EXPORT_SYMBOL_GPL vmlinux 0xa0c49c6e class_dev_iter_exit +EXPORT_SYMBOL_GPL vmlinux 0xa0c6befa hrtimer_cancel +EXPORT_SYMBOL_GPL vmlinux 0xa0d30088 crypto_create_tfm +EXPORT_SYMBOL_GPL vmlinux 0xa0d331b5 pci_epc_mem_init +EXPORT_SYMBOL_GPL vmlinux 0xa0d3456d nr_swap_pages +EXPORT_SYMBOL_GPL vmlinux 0xa0d6c87f irq_chip_mask_parent +EXPORT_SYMBOL_GPL vmlinux 0xa0e9382d dev_pm_qos_add_notifier +EXPORT_SYMBOL_GPL vmlinux 0xa0f0a72f regulator_bulk_force_disable +EXPORT_SYMBOL_GPL vmlinux 0xa107a3c0 crypto_shoot_alg +EXPORT_SYMBOL_GPL vmlinux 0xa11216be xen_store_domain_type +EXPORT_SYMBOL_GPL vmlinux 0xa113f5ae __mnt_is_readonly +EXPORT_SYMBOL_GPL vmlinux 0xa141c973 watchdog_unregister_device +EXPORT_SYMBOL_GPL vmlinux 0xa14882dc netdev_walk_all_lower_dev +EXPORT_SYMBOL_GPL vmlinux 0xa14eac53 edac_mc_del_mc +EXPORT_SYMBOL_GPL vmlinux 0xa153473f phy_configure +EXPORT_SYMBOL_GPL vmlinux 0xa156a1f2 erst_get_record_id_end +EXPORT_SYMBOL_GPL vmlinux 0xa1691b63 xas_find_marked +EXPORT_SYMBOL_GPL vmlinux 0xa18ee545 sched_trace_rd_span +EXPORT_SYMBOL_GPL vmlinux 0xa1a96a8c regcache_sync +EXPORT_SYMBOL_GPL vmlinux 0xa1b286c5 dev_pm_disable_wake_irq +EXPORT_SYMBOL_GPL vmlinux 0xa1c1cf90 phy_led_triggers_register +EXPORT_SYMBOL_GPL vmlinux 0xa1c860ba crypto_alloc_sync_skcipher +EXPORT_SYMBOL_GPL vmlinux 0xa1d6ba7a dma_wait_for_async_tx +EXPORT_SYMBOL_GPL vmlinux 0xa1d8004a videomode_from_timing +EXPORT_SYMBOL_GPL vmlinux 0xa1ed9c8b add_hwgenerator_randomness +EXPORT_SYMBOL_GPL vmlinux 0xa1fa562b transport_class_register +EXPORT_SYMBOL_GPL vmlinux 0xa2016699 sysfs_remove_bin_file +EXPORT_SYMBOL_GPL vmlinux 0xa20d01ba __trace_bprintk +EXPORT_SYMBOL_GPL vmlinux 0xa21111db posix_acl_default_xattr_handler +EXPORT_SYMBOL_GPL vmlinux 0xa2128916 devm_led_classdev_unregister +EXPORT_SYMBOL_GPL vmlinux 0xa2138954 bpf_trace_run4 +EXPORT_SYMBOL_GPL vmlinux 0xa222f555 relay_late_setup_files +EXPORT_SYMBOL_GPL vmlinux 0xa228a359 crypto_stats_akcipher_decrypt +EXPORT_SYMBOL_GPL vmlinux 0xa230e07e l3mdev_fib_table_by_index +EXPORT_SYMBOL_GPL vmlinux 0xa259e28b phy_pm_runtime_put +EXPORT_SYMBOL_GPL vmlinux 0xa26d9b4f workqueue_congested +EXPORT_SYMBOL_GPL vmlinux 0xa2817c33 devm_regmap_field_free +EXPORT_SYMBOL_GPL vmlinux 0xa28641d9 dm_put +EXPORT_SYMBOL_GPL vmlinux 0xa28c6d60 usb_altnum_to_altsetting +EXPORT_SYMBOL_GPL vmlinux 0xa28f0c2e irq_domain_free_irqs_common +EXPORT_SYMBOL_GPL vmlinux 0xa28f24ee wait_on_page_writeback +EXPORT_SYMBOL_GPL vmlinux 0xa29a09c9 gpiod_unexport +EXPORT_SYMBOL_GPL vmlinux 0xa2af54b3 irq_from_evtchn +EXPORT_SYMBOL_GPL vmlinux 0xa2b29425 edac_get_sysfs_subsys +EXPORT_SYMBOL_GPL vmlinux 0xa2beb9ed bpf_trace_run3 +EXPORT_SYMBOL_GPL vmlinux 0xa2c2ed95 devlink_trap_groups_register +EXPORT_SYMBOL_GPL vmlinux 0xa2c6f167 dma_async_device_channel_unregister +EXPORT_SYMBOL_GPL vmlinux 0xa2d17092 usb_get_status +EXPORT_SYMBOL_GPL vmlinux 0xa2de839c key_type_asymmetric +EXPORT_SYMBOL_GPL vmlinux 0xa2e1b3ef trace_printk_init_buffers +EXPORT_SYMBOL_GPL vmlinux 0xa2e9be56 open_related_ns +EXPORT_SYMBOL_GPL vmlinux 0xa2f7487f hv_is_hibernation_supported +EXPORT_SYMBOL_GPL vmlinux 0xa2f812f9 phy_10gbit_fec_features_array +EXPORT_SYMBOL_GPL vmlinux 0xa313d49a crypto_shash_setkey +EXPORT_SYMBOL_GPL vmlinux 0xa322a8a1 __mmdrop +EXPORT_SYMBOL_GPL vmlinux 0xa32508cb lwtstate_free +EXPORT_SYMBOL_GPL vmlinux 0xa32695a4 devres_open_group +EXPORT_SYMBOL_GPL vmlinux 0xa3382de2 irq_create_mapping_affinity +EXPORT_SYMBOL_GPL vmlinux 0xa3485320 powercap_register_zone +EXPORT_SYMBOL_GPL vmlinux 0xa3659b5f __tracepoint_devlink_hwerr +EXPORT_SYMBOL_GPL vmlinux 0xa36a1543 max8997_bulk_write +EXPORT_SYMBOL_GPL vmlinux 0xa36f50fb is_binary_blacklisted +EXPORT_SYMBOL_GPL vmlinux 0xa375ef13 __hvc_resize +EXPORT_SYMBOL_GPL vmlinux 0xa38426e5 pm_generic_resume_noirq +EXPORT_SYMBOL_GPL vmlinux 0xa38602cd drain_workqueue +EXPORT_SYMBOL_GPL vmlinux 0xa3872571 pci_generic_config_write32 +EXPORT_SYMBOL_GPL vmlinux 0xa389a49a profile_event_register +EXPORT_SYMBOL_GPL vmlinux 0xa38a9f71 get_itimerspec64 +EXPORT_SYMBOL_GPL vmlinux 0xa3a04602 btree_geo64 +EXPORT_SYMBOL_GPL vmlinux 0xa3a9797e device_node_to_regmap +EXPORT_SYMBOL_GPL vmlinux 0xa3b958ce reset_hung_task_detector +EXPORT_SYMBOL_GPL vmlinux 0xa3b9ef94 iomap_zero_range +EXPORT_SYMBOL_GPL vmlinux 0xa3ec32f2 handle_mm_fault +EXPORT_SYMBOL_GPL vmlinux 0xa3ece414 freezer_cgrp_subsys_enabled_key +EXPORT_SYMBOL_GPL vmlinux 0xa3f12f69 __crypto_xor +EXPORT_SYMBOL_GPL vmlinux 0xa4031b7f sfp_parse_port +EXPORT_SYMBOL_GPL vmlinux 0xa410a295 devlink_region_destroy +EXPORT_SYMBOL_GPL vmlinux 0xa41e2e73 cpuidle_poll_state_init +EXPORT_SYMBOL_GPL vmlinux 0xa429de4e rio_request_outb_mbox +EXPORT_SYMBOL_GPL vmlinux 0xa4362551 perf_event_update_userpage +EXPORT_SYMBOL_GPL vmlinux 0xa43a6d2a ata_pci_device_suspend +EXPORT_SYMBOL_GPL vmlinux 0xa44084a6 add_swap_extent +EXPORT_SYMBOL_GPL vmlinux 0xa4425c4c fwnode_device_is_available +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 0xa4550f19 pci_epf_match_device +EXPORT_SYMBOL_GPL vmlinux 0xa45c7b90 stack_trace_print +EXPORT_SYMBOL_GPL vmlinux 0xa463eb1e ata_bmdma_error_handler +EXPORT_SYMBOL_GPL vmlinux 0xa4700dfc __fib_lookup +EXPORT_SYMBOL_GPL vmlinux 0xa471982d dm_table_set_type +EXPORT_SYMBOL_GPL vmlinux 0xa48196c8 kdb_poll_idx +EXPORT_SYMBOL_GPL vmlinux 0xa48c07d4 power_supply_set_property +EXPORT_SYMBOL_GPL vmlinux 0xa496c305 bsg_unregister_queue +EXPORT_SYMBOL_GPL vmlinux 0xa4a626a4 cs47l24_patch +EXPORT_SYMBOL_GPL vmlinux 0xa4ab7c1c ring_buffer_overruns +EXPORT_SYMBOL_GPL vmlinux 0xa4b07fe7 ring_buffer_change_overwrite +EXPORT_SYMBOL_GPL vmlinux 0xa4b6717c apei_get_debugfs_dir +EXPORT_SYMBOL_GPL vmlinux 0xa4bba564 sysfs_update_group +EXPORT_SYMBOL_GPL vmlinux 0xa4c16b19 bpf_trace_run10 +EXPORT_SYMBOL_GPL vmlinux 0xa4e7fe6c blk_mq_unquiesce_queue +EXPORT_SYMBOL_GPL vmlinux 0xa4ebe450 fs_dax_get_by_bdev +EXPORT_SYMBOL_GPL vmlinux 0xa4facd7f rtnl_register_module +EXPORT_SYMBOL_GPL vmlinux 0xa50335f4 sbitmap_finish_wait +EXPORT_SYMBOL_GPL vmlinux 0xa516fda6 devfreq_cooling_unregister +EXPORT_SYMBOL_GPL vmlinux 0xa531471e clk_save_context +EXPORT_SYMBOL_GPL vmlinux 0xa547cf1b vfs_writef +EXPORT_SYMBOL_GPL vmlinux 0xa548da21 strp_data_ready +EXPORT_SYMBOL_GPL vmlinux 0xa54e8acf iptunnel_xmit +EXPORT_SYMBOL_GPL vmlinux 0xa55788ae i2c_new_dummy_device +EXPORT_SYMBOL_GPL vmlinux 0xa566fc70 pci_epc_init_notify +EXPORT_SYMBOL_GPL vmlinux 0xa5723b0e ping_err +EXPORT_SYMBOL_GPL vmlinux 0xa5747e1f param_ops_bool_enable_only +EXPORT_SYMBOL_GPL vmlinux 0xa57ad66e attribute_container_find_class_device +EXPORT_SYMBOL_GPL vmlinux 0xa5986813 page_endio +EXPORT_SYMBOL_GPL vmlinux 0xa5a3d133 usb_choose_configuration +EXPORT_SYMBOL_GPL vmlinux 0xa5aa429c pinctrl_select_state +EXPORT_SYMBOL_GPL vmlinux 0xa5bda8a1 efi_capsule_supported +EXPORT_SYMBOL_GPL vmlinux 0xa5be44a6 fscrypt_ioctl_remove_key +EXPORT_SYMBOL_GPL vmlinux 0xa5d797d7 pci_reset_bus +EXPORT_SYMBOL_GPL vmlinux 0xa5d7c388 pstore_type_to_name +EXPORT_SYMBOL_GPL vmlinux 0xa5e701f9 gpiod_set_array_value_cansleep +EXPORT_SYMBOL_GPL vmlinux 0xa5efbf4c async_synchronize_full +EXPORT_SYMBOL_GPL vmlinux 0xa5f2b88e iommu_device_unregister +EXPORT_SYMBOL_GPL vmlinux 0xa5ff12c8 sk_msg_free_nocharge +EXPORT_SYMBOL_GPL vmlinux 0xa6090b9d tcp_unregister_congestion_control +EXPORT_SYMBOL_GPL vmlinux 0xa60c1680 devm_rtc_device_register +EXPORT_SYMBOL_GPL vmlinux 0xa60ecd72 cros_ec_get_sensor_count +EXPORT_SYMBOL_GPL vmlinux 0xa6105b94 usb_sg_cancel +EXPORT_SYMBOL_GPL vmlinux 0xa62892c6 efivar_sysfs_list +EXPORT_SYMBOL_GPL vmlinux 0xa62af85b rio_mport_send_doorbell +EXPORT_SYMBOL_GPL vmlinux 0xa63d3f13 pci_reset_function_locked +EXPORT_SYMBOL_GPL vmlinux 0xa63fc8a8 sdio_set_block_size +EXPORT_SYMBOL_GPL vmlinux 0xa666ef4b init_srcu_struct +EXPORT_SYMBOL_GPL vmlinux 0xa6824f3f __tracepoint_br_fdb_external_learn_add +EXPORT_SYMBOL_GPL vmlinux 0xa686b678 ethnl_cable_test_amplitude +EXPORT_SYMBOL_GPL vmlinux 0xa6b06f65 ata_sff_queue_work +EXPORT_SYMBOL_GPL vmlinux 0xa6b21ef2 dpm_suspend_end +EXPORT_SYMBOL_GPL vmlinux 0xa6bcfa93 pm_genpd_init +EXPORT_SYMBOL_GPL vmlinux 0xa6c26593 pci_bus_max_busnr +EXPORT_SYMBOL_GPL vmlinux 0xa6c41f1e inet6_sk_rebuild_header +EXPORT_SYMBOL_GPL vmlinux 0xa6cbe357 ata_sas_port_stop +EXPORT_SYMBOL_GPL vmlinux 0xa6e1a69d kick_all_cpus_sync +EXPORT_SYMBOL_GPL vmlinux 0xa6f6b035 pci_get_dsn +EXPORT_SYMBOL_GPL vmlinux 0xa6fdc10b crypto_stats_akcipher_verify +EXPORT_SYMBOL_GPL vmlinux 0xa6fef79e dm_get_queue_limits +EXPORT_SYMBOL_GPL vmlinux 0xa6ffc6bd fuse_direct_io +EXPORT_SYMBOL_GPL vmlinux 0xa702d0ba __inet_lookup_listener +EXPORT_SYMBOL_GPL vmlinux 0xa709c835 fib6_info_destroy_rcu +EXPORT_SYMBOL_GPL vmlinux 0xa70d2f75 udp6_lib_lookup_skb +EXPORT_SYMBOL_GPL vmlinux 0xa7127da7 mce_unregister_injector_chain +EXPORT_SYMBOL_GPL vmlinux 0xa729283c __rio_local_write_config_8 +EXPORT_SYMBOL_GPL vmlinux 0xa731f387 nl_table_lock +EXPORT_SYMBOL_GPL vmlinux 0xa74312c9 xen_find_device_domain_owner +EXPORT_SYMBOL_GPL vmlinux 0xa75c1bd8 gpiod_put +EXPORT_SYMBOL_GPL vmlinux 0xa7ad7818 init_user_ns +EXPORT_SYMBOL_GPL vmlinux 0xa7bc396f key_type_logon +EXPORT_SYMBOL_GPL vmlinux 0xa7cf698b debugfs_attr_write +EXPORT_SYMBOL_GPL vmlinux 0xa7d250ad tpm_is_tpm2 +EXPORT_SYMBOL_GPL vmlinux 0xa7d56095 iommu_iova_to_phys +EXPORT_SYMBOL_GPL vmlinux 0xa7de3119 gpiochip_line_is_open_source +EXPORT_SYMBOL_GPL vmlinux 0xa7ebf153 rio_dma_prep_slave_sg +EXPORT_SYMBOL_GPL vmlinux 0xa7f2c248 device_match_of_node +EXPORT_SYMBOL_GPL vmlinux 0xa7fadd9c nd_blk_region_set_provider_data +EXPORT_SYMBOL_GPL vmlinux 0xa82d9c98 tty_register_device_attr +EXPORT_SYMBOL_GPL vmlinux 0xa83b62fd fwnode_get_phy_mode +EXPORT_SYMBOL_GPL vmlinux 0xa851973a raw_notifier_call_chain +EXPORT_SYMBOL_GPL vmlinux 0xa85d2196 led_trigger_blink +EXPORT_SYMBOL_GPL vmlinux 0xa8600d50 pm_clk_runtime_suspend +EXPORT_SYMBOL_GPL vmlinux 0xa8acdf2e acpi_dev_get_property +EXPORT_SYMBOL_GPL vmlinux 0xa8bc1596 led_colors +EXPORT_SYMBOL_GPL vmlinux 0xa8cbe35f blk_mq_sched_try_merge +EXPORT_SYMBOL_GPL vmlinux 0xa8d10648 devm_clk_bulk_get_optional +EXPORT_SYMBOL_GPL vmlinux 0xa8d243ec scsi_host_busy_iter +EXPORT_SYMBOL_GPL vmlinux 0xa8e51279 metadata_dst_alloc_percpu +EXPORT_SYMBOL_GPL vmlinux 0xa9126bff hpet_set_rtc_irq_bit +EXPORT_SYMBOL_GPL vmlinux 0xa91819c4 dma_can_mmap +EXPORT_SYMBOL_GPL vmlinux 0xa91efa2c perf_aux_output_end +EXPORT_SYMBOL_GPL vmlinux 0xa92d7cd2 ping_close +EXPORT_SYMBOL_GPL vmlinux 0xa9320d27 ktime_get_seconds +EXPORT_SYMBOL_GPL vmlinux 0xa93466fd fixed_phy_change_carrier +EXPORT_SYMBOL_GPL vmlinux 0xa96a0da7 ip6_sk_redirect +EXPORT_SYMBOL_GPL vmlinux 0xa973f4ab nvdimm_provider_data +EXPORT_SYMBOL_GPL vmlinux 0xa97bc9a6 disk_map_sector_rcu +EXPORT_SYMBOL_GPL vmlinux 0xa97ccea6 acpi_subsys_prepare +EXPORT_SYMBOL_GPL vmlinux 0xa97ff816 crypto_mod_put +EXPORT_SYMBOL_GPL vmlinux 0xa98287a1 mmu_interval_notifier_insert_locked +EXPORT_SYMBOL_GPL vmlinux 0xa9854364 umc_normaddr_to_sysaddr +EXPORT_SYMBOL_GPL vmlinux 0xa99cd44c spi_mem_dirmap_create +EXPORT_SYMBOL_GPL vmlinux 0xa99ef899 devlink_fmsg_bool_pair_put +EXPORT_SYMBOL_GPL vmlinux 0xa9adc560 xenbus_unregister_driver +EXPORT_SYMBOL_GPL vmlinux 0xa9bc8b74 module_mutex +EXPORT_SYMBOL_GPL vmlinux 0xa9c40fd6 ip_valid_fib_dump_req +EXPORT_SYMBOL_GPL vmlinux 0xa9d4adb1 fwnode_handle_get +EXPORT_SYMBOL_GPL vmlinux 0xa9e18049 task_handoff_unregister +EXPORT_SYMBOL_GPL vmlinux 0xa9ed7822 sdio_claim_irq +EXPORT_SYMBOL_GPL vmlinux 0xaa052b91 tcp_sendmsg_locked +EXPORT_SYMBOL_GPL vmlinux 0xaa12da98 gov_attr_set_put +EXPORT_SYMBOL_GPL vmlinux 0xaa230f88 perf_unregister_guest_info_callbacks +EXPORT_SYMBOL_GPL vmlinux 0xaa2d3008 fib4_rule_default +EXPORT_SYMBOL_GPL vmlinux 0xaa2da0a2 blk_update_request +EXPORT_SYMBOL_GPL vmlinux 0xaa39a6d4 ata_pci_remove_one +EXPORT_SYMBOL_GPL vmlinux 0xaa5aee1c uv_bios_mq_watchlist_alloc +EXPORT_SYMBOL_GPL vmlinux 0xaa5f6104 xdp_attachment_query +EXPORT_SYMBOL_GPL vmlinux 0xaa6a50f9 __static_key_deferred_flush +EXPORT_SYMBOL_GPL vmlinux 0xaa86cfb5 uv_possible_blades +EXPORT_SYMBOL_GPL vmlinux 0xaa89a3cb iommu_domain_set_attr +EXPORT_SYMBOL_GPL vmlinux 0xaaa918c9 ftrace_dump +EXPORT_SYMBOL_GPL vmlinux 0xaaaa443a balloon_page_list_dequeue +EXPORT_SYMBOL_GPL vmlinux 0xaaac9213 vring_transport_features +EXPORT_SYMBOL_GPL vmlinux 0xaabc2aa4 invalidate_inode_pages2_range +EXPORT_SYMBOL_GPL vmlinux 0xaabdedd2 device_get_named_child_node +EXPORT_SYMBOL_GPL vmlinux 0xaac1fa47 lwtunnel_encap_add_ops +EXPORT_SYMBOL_GPL vmlinux 0xaac964a4 alloc_vm_area +EXPORT_SYMBOL_GPL vmlinux 0xaada9fa4 spi_take_timestamp_post +EXPORT_SYMBOL_GPL vmlinux 0xaadbe05a phy_check_downshift +EXPORT_SYMBOL_GPL vmlinux 0xaae49e8a pinctrl_register_and_init +EXPORT_SYMBOL_GPL vmlinux 0xaae6f151 platform_device_add_data +EXPORT_SYMBOL_GPL vmlinux 0xaaee01f4 bus_register_notifier +EXPORT_SYMBOL_GPL vmlinux 0xaaff78ef iomap_file_buffered_write +EXPORT_SYMBOL_GPL vmlinux 0xab00d0e4 tcp_orphan_count +EXPORT_SYMBOL_GPL vmlinux 0xab1e0e93 hv_setup_kexec_handler +EXPORT_SYMBOL_GPL vmlinux 0xab2867b9 espintcp_queue_out +EXPORT_SYMBOL_GPL vmlinux 0xab2a7456 skb_morph +EXPORT_SYMBOL_GPL vmlinux 0xab2b61c9 dev_pm_opp_get_max_transition_latency +EXPORT_SYMBOL_GPL vmlinux 0xab626138 sdio_enable_func +EXPORT_SYMBOL_GPL vmlinux 0xab653fa0 tps6586x_writes +EXPORT_SYMBOL_GPL vmlinux 0xab68aafc edac_pci_release_generic_ctl +EXPORT_SYMBOL_GPL vmlinux 0xab6a97d0 dev_pm_opp_find_freq_floor +EXPORT_SYMBOL_GPL vmlinux 0xab6fa743 __fscrypt_prepare_rename +EXPORT_SYMBOL_GPL vmlinux 0xab734ad0 ncsi_vlan_rx_kill_vid +EXPORT_SYMBOL_GPL vmlinux 0xab766d53 da903x_read +EXPORT_SYMBOL_GPL vmlinux 0xab7ca547 inet_unhash +EXPORT_SYMBOL_GPL vmlinux 0xab830d34 devm_pinctrl_register_and_init +EXPORT_SYMBOL_GPL vmlinux 0xab9bd884 perf_register_guest_info_callbacks +EXPORT_SYMBOL_GPL vmlinux 0xabb02cb0 dax_copy_from_iter +EXPORT_SYMBOL_GPL vmlinux 0xabb8761a gpiod_set_value +EXPORT_SYMBOL_GPL vmlinux 0xabc298d0 intel_scu_ipc_unregister +EXPORT_SYMBOL_GPL vmlinux 0xabc640f3 list_lru_isolate +EXPORT_SYMBOL_GPL vmlinux 0xabcd1979 mmu_notifier_put +EXPORT_SYMBOL_GPL vmlinux 0xabd76419 xenbus_frontend_closed +EXPORT_SYMBOL_GPL vmlinux 0xabe28a92 switchdev_handle_port_obj_add +EXPORT_SYMBOL_GPL vmlinux 0xabeaef83 cm_notify_event +EXPORT_SYMBOL_GPL vmlinux 0xac08e482 transport_add_device +EXPORT_SYMBOL_GPL vmlinux 0xac266fd2 regulator_bulk_register_supply_alias +EXPORT_SYMBOL_GPL vmlinux 0xac4a6870 mm_kobj +EXPORT_SYMBOL_GPL vmlinux 0xac6e56c4 dma_resv_wait_timeout_rcu +EXPORT_SYMBOL_GPL vmlinux 0xac76adbc pci_hp_destroy +EXPORT_SYMBOL_GPL vmlinux 0xac9ac604 usb_kill_urb +EXPORT_SYMBOL_GPL vmlinux 0xacb4d88c clk_rate_exclusive_put +EXPORT_SYMBOL_GPL vmlinux 0xacbe7cb1 pci_ioremap_wc_bar +EXPORT_SYMBOL_GPL vmlinux 0xacd35c8d device_property_match_string +EXPORT_SYMBOL_GPL vmlinux 0xace9c868 icc_link_create +EXPORT_SYMBOL_GPL vmlinux 0xaceb9038 nf_queue_entry_free +EXPORT_SYMBOL_GPL vmlinux 0xad0f2b6c unix_table_lock +EXPORT_SYMBOL_GPL vmlinux 0xad3033c8 skb_mpls_pop +EXPORT_SYMBOL_GPL vmlinux 0xad31d8f3 msi_desc_to_pci_sysdata +EXPORT_SYMBOL_GPL vmlinux 0xad42a96b devm_gpiod_unhinge +EXPORT_SYMBOL_GPL vmlinux 0xad4332c2 fwnode_find_reference +EXPORT_SYMBOL_GPL vmlinux 0xad482b27 ata_sas_port_start +EXPORT_SYMBOL_GPL vmlinux 0xad4e6259 remove_cpu +EXPORT_SYMBOL_GPL vmlinux 0xad55263e preempt_notifier_register +EXPORT_SYMBOL_GPL vmlinux 0xad5737fc efivar_init +EXPORT_SYMBOL_GPL vmlinux 0xad5f0017 perf_trace_buf_alloc +EXPORT_SYMBOL_GPL vmlinux 0xad645234 register_switchdev_notifier +EXPORT_SYMBOL_GPL vmlinux 0xad7e249f devm_of_phy_get_by_index +EXPORT_SYMBOL_GPL vmlinux 0xad8522ef usb_remove_hcd +EXPORT_SYMBOL_GPL vmlinux 0xad8e8eb5 crypto_stats_kpp_generate_public_key +EXPORT_SYMBOL_GPL vmlinux 0xada18d74 sfp_register_socket +EXPORT_SYMBOL_GPL vmlinux 0xada1a038 iomap_truncate_page +EXPORT_SYMBOL_GPL vmlinux 0xada38766 dst_cache_destroy +EXPORT_SYMBOL_GPL vmlinux 0xada81ef4 __blk_mq_debugfs_rq_show +EXPORT_SYMBOL_GPL vmlinux 0xadd7f17b adp5520_unregister_notifier +EXPORT_SYMBOL_GPL vmlinux 0xade59bf5 usb_enable_lpm +EXPORT_SYMBOL_GPL vmlinux 0xade862b9 sock_zerocopy_realloc +EXPORT_SYMBOL_GPL vmlinux 0xadf9699b pci_write_msi_msg +EXPORT_SYMBOL_GPL vmlinux 0xae1051b0 net_cls_cgrp_subsys_enabled_key +EXPORT_SYMBOL_GPL vmlinux 0xae16bf9b device_property_read_u32_array +EXPORT_SYMBOL_GPL vmlinux 0xae1da475 iptunnel_handle_offloads +EXPORT_SYMBOL_GPL vmlinux 0xae262acc dev_pm_opp_set_regulators +EXPORT_SYMBOL_GPL vmlinux 0xae2d4d20 __ftrace_vprintk +EXPORT_SYMBOL_GPL vmlinux 0xae39f80e dst_cache_init +EXPORT_SYMBOL_GPL vmlinux 0xae69b1c1 usermodehelper_read_unlock +EXPORT_SYMBOL_GPL vmlinux 0xae79d759 usb_get_current_frame_number +EXPORT_SYMBOL_GPL vmlinux 0xae7c231d mpi_cmp +EXPORT_SYMBOL_GPL vmlinux 0xae82c854 scsi_mode_select +EXPORT_SYMBOL_GPL vmlinux 0xae924e09 __pneigh_lookup +EXPORT_SYMBOL_GPL vmlinux 0xae95c928 dmaengine_desc_attach_metadata +EXPORT_SYMBOL_GPL vmlinux 0xae9de236 regulator_get_mode +EXPORT_SYMBOL_GPL vmlinux 0xaea4a44a hvc_poll +EXPORT_SYMBOL_GPL vmlinux 0xaeb12315 find_iova +EXPORT_SYMBOL_GPL vmlinux 0xaeb30bac crypto_unregister_instance +EXPORT_SYMBOL_GPL vmlinux 0xaeb6f0be __cpuhp_state_add_instance +EXPORT_SYMBOL_GPL vmlinux 0xaee6cdb9 devm_mdiobus_alloc_size +EXPORT_SYMBOL_GPL vmlinux 0xaeeb4e58 regmap_noinc_write +EXPORT_SYMBOL_GPL vmlinux 0xaef5cf2d gpiochip_irqchip_irq_valid +EXPORT_SYMBOL_GPL vmlinux 0xaef932bd mnt_want_write +EXPORT_SYMBOL_GPL vmlinux 0xaefc4359 rtnl_link_unregister +EXPORT_SYMBOL_GPL vmlinux 0xaf076aec nd_fletcher64 +EXPORT_SYMBOL_GPL vmlinux 0xaf0b6ba7 blkg_rwstat_init +EXPORT_SYMBOL_GPL vmlinux 0xaf2a4348 security_inode_create +EXPORT_SYMBOL_GPL vmlinux 0xaf4014ff usb_amd_quirk_pll_check +EXPORT_SYMBOL_GPL vmlinux 0xaf404485 cpufreq_disable_fast_switch +EXPORT_SYMBOL_GPL vmlinux 0xaf793668 __alloc_percpu_gfp +EXPORT_SYMBOL_GPL vmlinux 0xaf878107 usb_sg_wait +EXPORT_SYMBOL_GPL vmlinux 0xaf91a0aa pci_epc_put +EXPORT_SYMBOL_GPL vmlinux 0xafadd957 devm_gpiochip_add_data_with_key +EXPORT_SYMBOL_GPL vmlinux 0xafb35473 ata_sas_async_probe +EXPORT_SYMBOL_GPL vmlinux 0xafcb5ae9 irq_setup_generic_chip +EXPORT_SYMBOL_GPL vmlinux 0xafcf1ab7 fwnode_property_read_u8_array +EXPORT_SYMBOL_GPL vmlinux 0xafddd545 ata_id_c_string +EXPORT_SYMBOL_GPL vmlinux 0xafeda59c __clk_hw_register_fixed_rate +EXPORT_SYMBOL_GPL vmlinux 0xaffb6e9e iomap_writepage +EXPORT_SYMBOL_GPL vmlinux 0xb0117096 bsg_scsi_register_queue +EXPORT_SYMBOL_GPL vmlinux 0xb02ac411 register_xenstore_notifier +EXPORT_SYMBOL_GPL vmlinux 0xb0372209 regmap_get_max_register +EXPORT_SYMBOL_GPL vmlinux 0xb03a3c5e usb_acpi_power_manageable +EXPORT_SYMBOL_GPL vmlinux 0xb04422f4 xen_remap_vma_range +EXPORT_SYMBOL_GPL vmlinux 0xb06a47d8 gnttab_map_refs +EXPORT_SYMBOL_GPL vmlinux 0xb0747ed2 rcu_cpu_stall_suppress +EXPORT_SYMBOL_GPL vmlinux 0xb077e70a clk_unprepare +EXPORT_SYMBOL_GPL vmlinux 0xb08012de gpiod_get_value_cansleep +EXPORT_SYMBOL_GPL vmlinux 0xb0a219d6 serdev_device_set_parity +EXPORT_SYMBOL_GPL vmlinux 0xb0a46ff6 dm_internal_resume_fast +EXPORT_SYMBOL_GPL vmlinux 0xb0b85f47 ring_buffer_iter_reset +EXPORT_SYMBOL_GPL vmlinux 0xb0b979d8 sk_set_peek_off +EXPORT_SYMBOL_GPL vmlinux 0xb0ba3f36 genphy_c45_read_status +EXPORT_SYMBOL_GPL vmlinux 0xb0d0a33f usb_unpoison_urb +EXPORT_SYMBOL_GPL vmlinux 0xb0d1656c gpio_free_array +EXPORT_SYMBOL_GPL vmlinux 0xb0d5d7ad pm_generic_suspend_noirq +EXPORT_SYMBOL_GPL vmlinux 0xb0e2235c device_wakeup_disable +EXPORT_SYMBOL_GPL vmlinux 0xb0e8e671 xenbus_otherend_changed +EXPORT_SYMBOL_GPL vmlinux 0xb0f3cc5c clk_hw_round_rate +EXPORT_SYMBOL_GPL vmlinux 0xb0fbb722 clk_fractional_divider_ops +EXPORT_SYMBOL_GPL vmlinux 0xb10d964d devlink_fmsg_pair_nest_end +EXPORT_SYMBOL_GPL vmlinux 0xb115176d unregister_asymmetric_key_parser +EXPORT_SYMBOL_GPL vmlinux 0xb11d9000 tty_dev_name_to_number +EXPORT_SYMBOL_GPL vmlinux 0xb1387a4f crypto_spawn_tfm2 +EXPORT_SYMBOL_GPL vmlinux 0xb1425b32 dm_table_add_target_callbacks +EXPORT_SYMBOL_GPL vmlinux 0xb15f9061 clk_register_fractional_divider +EXPORT_SYMBOL_GPL vmlinux 0xb1647fc2 devlink_info_version_running_put +EXPORT_SYMBOL_GPL vmlinux 0xb1687786 rio_del_mport_pw_handler +EXPORT_SYMBOL_GPL vmlinux 0xb172ffac efivars_sysfs_init +EXPORT_SYMBOL_GPL vmlinux 0xb18429eb suspend_device_irqs +EXPORT_SYMBOL_GPL vmlinux 0xb1854b31 usb_ifnum_to_if +EXPORT_SYMBOL_GPL vmlinux 0xb18bc2e2 sysfs_create_groups +EXPORT_SYMBOL_GPL vmlinux 0xb1b0b8f9 device_show_ulong +EXPORT_SYMBOL_GPL vmlinux 0xb1bc7754 pm_generic_freeze +EXPORT_SYMBOL_GPL vmlinux 0xb1bed25d dpm_resume_start +EXPORT_SYMBOL_GPL vmlinux 0xb1bedb98 device_initialize +EXPORT_SYMBOL_GPL vmlinux 0xb1dabc1e unregister_ftrace_export +EXPORT_SYMBOL_GPL vmlinux 0xb1e25684 __trace_bputs +EXPORT_SYMBOL_GPL vmlinux 0xb1e25b63 pm_genpd_remove_subdomain +EXPORT_SYMBOL_GPL vmlinux 0xb1ecddd9 rtc_read_time +EXPORT_SYMBOL_GPL vmlinux 0xb1ed1c5b usb_hcd_end_port_resume +EXPORT_SYMBOL_GPL vmlinux 0xb1ef0548 ftrace_set_filter +EXPORT_SYMBOL_GPL vmlinux 0xb1fe06d1 ata_host_detach +EXPORT_SYMBOL_GPL vmlinux 0xb1fe1c1d ptdump_walk_pgd_level_debugfs +EXPORT_SYMBOL_GPL vmlinux 0xb211c1ae led_trigger_set +EXPORT_SYMBOL_GPL vmlinux 0xb2210d64 reset_control_deassert +EXPORT_SYMBOL_GPL vmlinux 0xb23434de register_kretprobe +EXPORT_SYMBOL_GPL vmlinux 0xb23cc41a virtqueue_get_vring_size +EXPORT_SYMBOL_GPL vmlinux 0xb2405efc secure_tcp_seq +EXPORT_SYMBOL_GPL vmlinux 0xb25e563a lookup_address_in_mm +EXPORT_SYMBOL_GPL vmlinux 0xb25f6aee relay_file_operations +EXPORT_SYMBOL_GPL vmlinux 0xb269e438 usb_hcd_is_primary_hcd +EXPORT_SYMBOL_GPL vmlinux 0xb26a1add elfcorehdr_addr +EXPORT_SYMBOL_GPL vmlinux 0xb27723e7 get_user_pages_fast_only +EXPORT_SYMBOL_GPL vmlinux 0xb2780f7c ipv4_redirect +EXPORT_SYMBOL_GPL vmlinux 0xb28014db wm8997_i2c_regmap +EXPORT_SYMBOL_GPL vmlinux 0xb2855c2a blk_queue_required_elevator_features +EXPORT_SYMBOL_GPL vmlinux 0xb29533ee zs_malloc +EXPORT_SYMBOL_GPL vmlinux 0xb29c2d73 pm_runtime_autosuspend_expiration +EXPORT_SYMBOL_GPL vmlinux 0xb2b7dad5 scsi_dh_attached_handler_name +EXPORT_SYMBOL_GPL vmlinux 0xb2c1732e rcu_gp_set_torture_wait +EXPORT_SYMBOL_GPL vmlinux 0xb2c908a9 mmc_cmdq_disable +EXPORT_SYMBOL_GPL vmlinux 0xb2dc7100 sdio_retune_crc_disable +EXPORT_SYMBOL_GPL vmlinux 0xb2de4cf2 clk_gate_ops +EXPORT_SYMBOL_GPL vmlinux 0xb2df328a tty_port_install +EXPORT_SYMBOL_GPL vmlinux 0xb2e49a9f device_move +EXPORT_SYMBOL_GPL vmlinux 0xb2e764e8 suspend_valid_only_mem +EXPORT_SYMBOL_GPL vmlinux 0xb2eccef7 xfrm_local_error +EXPORT_SYMBOL_GPL vmlinux 0xb304cc55 acpi_gpiochip_request_interrupts +EXPORT_SYMBOL_GPL vmlinux 0xb307c909 devlink_fmsg_u64_pair_put +EXPORT_SYMBOL_GPL vmlinux 0xb309da71 tpm_pcr_extend +EXPORT_SYMBOL_GPL vmlinux 0xb31024ab register_pernet_device +EXPORT_SYMBOL_GPL vmlinux 0xb3122f2b xfrm_dev_resume +EXPORT_SYMBOL_GPL vmlinux 0xb316d08e sk_psock_drop +EXPORT_SYMBOL_GPL vmlinux 0xb32273e3 crypto_register_ahashes +EXPORT_SYMBOL_GPL vmlinux 0xb32348be relay_buf_full +EXPORT_SYMBOL_GPL vmlinux 0xb3253ed9 hpet_rtc_timer_init +EXPORT_SYMBOL_GPL vmlinux 0xb32619cb security_file_permission +EXPORT_SYMBOL_GPL vmlinux 0xb3351c6c rhashtable_walk_next +EXPORT_SYMBOL_GPL vmlinux 0xb345b535 led_trigger_rename_static +EXPORT_SYMBOL_GPL vmlinux 0xb3626d1f crypto_shash_digest +EXPORT_SYMBOL_GPL vmlinux 0xb365e1d8 spi_mem_supports_op +EXPORT_SYMBOL_GPL vmlinux 0xb3697565 cpuidle_enable_device +EXPORT_SYMBOL_GPL vmlinux 0xb37798e8 anon_transport_class_unregister +EXPORT_SYMBOL_GPL vmlinux 0xb380a58d bpf_offload_dev_netdev_register +EXPORT_SYMBOL_GPL vmlinux 0xb3833475 regulator_get +EXPORT_SYMBOL_GPL vmlinux 0xb383d2e2 ata_dummy_port_ops +EXPORT_SYMBOL_GPL vmlinux 0xb38b30fb serdev_device_add +EXPORT_SYMBOL_GPL vmlinux 0xb39843d3 perf_get_aux +EXPORT_SYMBOL_GPL vmlinux 0xb399942f ata_sff_queue_pio_task +EXPORT_SYMBOL_GPL vmlinux 0xb3a2e256 tty_wakeup +EXPORT_SYMBOL_GPL vmlinux 0xb3bee951 sock_diag_unregister +EXPORT_SYMBOL_GPL vmlinux 0xb3c5ecd9 mm_account_pinned_pages +EXPORT_SYMBOL_GPL vmlinux 0xb3dabb86 cpufreq_generic_init +EXPORT_SYMBOL_GPL vmlinux 0xb3dc8d0b dev_pm_opp_unregister_set_opp_helper +EXPORT_SYMBOL_GPL vmlinux 0xb407c1df percpu_ref_switch_to_atomic +EXPORT_SYMBOL_GPL vmlinux 0xb40e314a i2c_add_numbered_adapter +EXPORT_SYMBOL_GPL vmlinux 0xb41c17a6 ata_acpi_gtm +EXPORT_SYMBOL_GPL vmlinux 0xb42a48f2 badblocks_show +EXPORT_SYMBOL_GPL vmlinux 0xb42eb2cc vga_default_device +EXPORT_SYMBOL_GPL vmlinux 0xb43f9365 ktime_get +EXPORT_SYMBOL_GPL vmlinux 0xb445a83d __devm_regmap_init_mmio_clk +EXPORT_SYMBOL_GPL vmlinux 0xb44e18ea audit_enabled +EXPORT_SYMBOL_GPL vmlinux 0xb45e035b gpiochip_reqres_irq +EXPORT_SYMBOL_GPL vmlinux 0xb4602f5b bsg_job_done +EXPORT_SYMBOL_GPL vmlinux 0xb47ac8e3 ata_sff_qc_issue +EXPORT_SYMBOL_GPL vmlinux 0xb480f729 ata_sas_sync_probe +EXPORT_SYMBOL_GPL vmlinux 0xb48918c9 switchdev_port_obj_del +EXPORT_SYMBOL_GPL vmlinux 0xb48f0638 software_node_register +EXPORT_SYMBOL_GPL vmlinux 0xb492ec58 xdp_do_redirect +EXPORT_SYMBOL_GPL vmlinux 0xb4b97c90 pvclock_gtod_register_notifier +EXPORT_SYMBOL_GPL vmlinux 0xb4d6f696 pinctrl_pm_select_default_state +EXPORT_SYMBOL_GPL vmlinux 0xb4ea7cf7 kgdb_connected +EXPORT_SYMBOL_GPL vmlinux 0xb4eb342b sdev_evt_send_simple +EXPORT_SYMBOL_GPL vmlinux 0xb4eda0da ring_buffer_event_length +EXPORT_SYMBOL_GPL vmlinux 0xb4ef4a04 ata_bmdma_qc_issue +EXPORT_SYMBOL_GPL vmlinux 0xb4ff6bb6 hrtimer_active +EXPORT_SYMBOL_GPL vmlinux 0xb501b2df nd_cmd_dimm_desc +EXPORT_SYMBOL_GPL vmlinux 0xb5072bf5 set_secondary_fwnode +EXPORT_SYMBOL_GPL vmlinux 0xb507c283 ata_std_prereset +EXPORT_SYMBOL_GPL vmlinux 0xb50c1ffe regulator_suspend_enable +EXPORT_SYMBOL_GPL vmlinux 0xb50e1f27 __uv_cpu_info +EXPORT_SYMBOL_GPL vmlinux 0xb510c250 raw_v4_hashinfo +EXPORT_SYMBOL_GPL vmlinux 0xb5112407 blk_queue_flag_test_and_set +EXPORT_SYMBOL_GPL vmlinux 0xb5144625 fuse_request_end +EXPORT_SYMBOL_GPL vmlinux 0xb51fbd64 edac_op_state +EXPORT_SYMBOL_GPL vmlinux 0xb520eb79 btree_merge +EXPORT_SYMBOL_GPL vmlinux 0xb5220cc1 ata_std_qc_defer +EXPORT_SYMBOL_GPL vmlinux 0xb53b3041 devm_spi_mem_dirmap_destroy +EXPORT_SYMBOL_GPL vmlinux 0xb5412e00 debugfs_create_x16 +EXPORT_SYMBOL_GPL vmlinux 0xb54951e7 edac_device_handle_ce_count +EXPORT_SYMBOL_GPL vmlinux 0xb54c3574 xenbus_alloc_evtchn +EXPORT_SYMBOL_GPL vmlinux 0xb55de71b generic_access_phys +EXPORT_SYMBOL_GPL vmlinux 0xb5645acd spi_bus_lock +EXPORT_SYMBOL_GPL vmlinux 0xb5699922 crypto_unregister_scomps +EXPORT_SYMBOL_GPL vmlinux 0xb583cbe2 key_set_timeout +EXPORT_SYMBOL_GPL vmlinux 0xb5a4da19 pci_iomap_wc_range +EXPORT_SYMBOL_GPL vmlinux 0xb5a83e35 gnttab_setup_auto_xlat_frames +EXPORT_SYMBOL_GPL vmlinux 0xb5a8c226 acpi_gsi_to_irq +EXPORT_SYMBOL_GPL vmlinux 0xb5aa769e blkg_lookup_slowpath +EXPORT_SYMBOL_GPL vmlinux 0xb5c0c844 smpboot_unregister_percpu_thread +EXPORT_SYMBOL_GPL vmlinux 0xb5c71f56 sdio_retune_hold_now +EXPORT_SYMBOL_GPL vmlinux 0xb5cdfe91 regmap_get_raw_read_max +EXPORT_SYMBOL_GPL vmlinux 0xb5cf14a6 acpi_dev_suspend +EXPORT_SYMBOL_GPL vmlinux 0xb5d8485e spi_mem_adjust_op_size +EXPORT_SYMBOL_GPL vmlinux 0xb5d982b4 kthread_park +EXPORT_SYMBOL_GPL vmlinux 0xb5e1fb9b nd_blk_memremap_flags +EXPORT_SYMBOL_GPL vmlinux 0xb5ebea2a blk_insert_cloned_request +EXPORT_SYMBOL_GPL vmlinux 0xb5ed48c8 bind_interdomain_evtchn_to_irq +EXPORT_SYMBOL_GPL vmlinux 0xb60c964b tps6586x_get_version +EXPORT_SYMBOL_GPL vmlinux 0xb625fcbe phy_select_page +EXPORT_SYMBOL_GPL vmlinux 0xb6261484 register_die_notifier +EXPORT_SYMBOL_GPL vmlinux 0xb62769e5 fuse_sync_release +EXPORT_SYMBOL_GPL vmlinux 0xb62c9fa6 regulator_get_voltage_sel_pickable_regmap +EXPORT_SYMBOL_GPL vmlinux 0xb63a5dc6 iommu_sva_bind_device +EXPORT_SYMBOL_GPL vmlinux 0xb645e53b device_connection_add +EXPORT_SYMBOL_GPL vmlinux 0xb6571b4f dma_get_slave_caps +EXPORT_SYMBOL_GPL vmlinux 0xb6787346 sfp_unregister_socket +EXPORT_SYMBOL_GPL vmlinux 0xb678d154 dev_pm_opp_remove_table +EXPORT_SYMBOL_GPL vmlinux 0xb6888188 klp_shadow_get_or_alloc +EXPORT_SYMBOL_GPL vmlinux 0xb6abdc54 tpm_pcr_read +EXPORT_SYMBOL_GPL vmlinux 0xb6c5e614 acpi_processor_evaluate_cst +EXPORT_SYMBOL_GPL vmlinux 0xb6ca9dd7 gpiod_get_array_optional +EXPORT_SYMBOL_GPL vmlinux 0xb6e6d99d clk_disable +EXPORT_SYMBOL_GPL vmlinux 0xb6eb226f __inode_attach_wb +EXPORT_SYMBOL_GPL vmlinux 0xb6ec5e67 platform_device_register +EXPORT_SYMBOL_GPL vmlinux 0xb702838b alloc_iova +EXPORT_SYMBOL_GPL vmlinux 0xb71312e9 sfp_bus_find_fwnode +EXPORT_SYMBOL_GPL vmlinux 0xb72859ac devlink_dpipe_headers_unregister +EXPORT_SYMBOL_GPL vmlinux 0xb7329c06 clk_set_phase +EXPORT_SYMBOL_GPL vmlinux 0xb73713d7 nvmem_add_cell_lookups +EXPORT_SYMBOL_GPL vmlinux 0xb745ddbf crypto_alloc_skcipher +EXPORT_SYMBOL_GPL vmlinux 0xb75041d1 hv_stimer_legacy_init +EXPORT_SYMBOL_GPL vmlinux 0xb75060e4 ahash_register_instance +EXPORT_SYMBOL_GPL vmlinux 0xb75f8eda get_kernel_page +EXPORT_SYMBOL_GPL vmlinux 0xb77137e8 lwtunnel_get_encap_size +EXPORT_SYMBOL_GPL vmlinux 0xb78c5abe raw_seq_next +EXPORT_SYMBOL_GPL vmlinux 0xb79c754a scsi_host_unblock +EXPORT_SYMBOL_GPL vmlinux 0xb7a387fc synchronize_rcu_tasks_rude +EXPORT_SYMBOL_GPL vmlinux 0xb7c69a63 unregister_vmap_purge_notifier +EXPORT_SYMBOL_GPL vmlinux 0xb7cd05d2 ping_seq_start +EXPORT_SYMBOL_GPL vmlinux 0xb7d7c12e hpet_set_alarm_time +EXPORT_SYMBOL_GPL vmlinux 0xb7e8878a device_get_match_data +EXPORT_SYMBOL_GPL vmlinux 0xb7f73ef8 xas_init_marks +EXPORT_SYMBOL_GPL vmlinux 0xb7f990e9 rht_bucket_nested +EXPORT_SYMBOL_GPL vmlinux 0xb80bf336 fsnotify_put_group +EXPORT_SYMBOL_GPL vmlinux 0xb8212341 timecounter_cyc2time +EXPORT_SYMBOL_GPL vmlinux 0xb8213fec skcipher_register_instance +EXPORT_SYMBOL_GPL vmlinux 0xb8273d0b __wake_up_sync +EXPORT_SYMBOL_GPL vmlinux 0xb844ba67 ata_scsi_slave_config +EXPORT_SYMBOL_GPL vmlinux 0xb845630c dma_resv_get_fences_rcu +EXPORT_SYMBOL_GPL vmlinux 0xb847585f is_hash_blacklisted +EXPORT_SYMBOL_GPL vmlinux 0xb848c70d extcon_sync +EXPORT_SYMBOL_GPL vmlinux 0xb854bd8e phy_basic_t1_features +EXPORT_SYMBOL_GPL vmlinux 0xb855123d modify_user_hw_breakpoint +EXPORT_SYMBOL_GPL vmlinux 0xb87da378 lp8788_read_multi_bytes +EXPORT_SYMBOL_GPL vmlinux 0xb88982d2 virtqueue_add_outbuf +EXPORT_SYMBOL_GPL vmlinux 0xb88dbfce irq_set_irqchip_state +EXPORT_SYMBOL_GPL vmlinux 0xb895a78b gnttab_foreach_grant_in_range +EXPORT_SYMBOL_GPL vmlinux 0xb89c980d regmap_field_free +EXPORT_SYMBOL_GPL vmlinux 0xb89e69b1 jump_label_update_timeout +EXPORT_SYMBOL_GPL vmlinux 0xb8a73512 devlink_net_set +EXPORT_SYMBOL_GPL vmlinux 0xb8aa4705 devlink_port_attrs_set +EXPORT_SYMBOL_GPL vmlinux 0xb8b2b1f7 mce_register_decode_chain +EXPORT_SYMBOL_GPL vmlinux 0xb8b3027b da903x_write +EXPORT_SYMBOL_GPL vmlinux 0xb8b9be30 thp_get_unmapped_area +EXPORT_SYMBOL_GPL vmlinux 0xb8cd3a7f nf_logger_put +EXPORT_SYMBOL_GPL vmlinux 0xb8ce019c devlink_port_params_register +EXPORT_SYMBOL_GPL vmlinux 0xb8ecf559 simple_attr_write +EXPORT_SYMBOL_GPL vmlinux 0xb8f0e4e5 tcp_sendpage_locked +EXPORT_SYMBOL_GPL vmlinux 0xb8f11603 idr_alloc +EXPORT_SYMBOL_GPL vmlinux 0xb8fbcd37 devlink_port_params_unregister +EXPORT_SYMBOL_GPL vmlinux 0xb912560d static_key_disable +EXPORT_SYMBOL_GPL vmlinux 0xb9183b07 skb_defer_rx_timestamp +EXPORT_SYMBOL_GPL vmlinux 0xb91b4ad0 debugfs_create_atomic_t +EXPORT_SYMBOL_GPL vmlinux 0xb923006d debugfs_file_put +EXPORT_SYMBOL_GPL vmlinux 0xb92432b3 udp6_lib_lookup +EXPORT_SYMBOL_GPL vmlinux 0xb92f74c2 blkcg_root_css +EXPORT_SYMBOL_GPL vmlinux 0xb933e4b8 devlink_traps_register +EXPORT_SYMBOL_GPL vmlinux 0xb94b8523 uart_insert_char +EXPORT_SYMBOL_GPL vmlinux 0xb95559bc housekeeping_any_cpu +EXPORT_SYMBOL_GPL vmlinux 0xb956f0a3 usb_hcd_pci_shutdown +EXPORT_SYMBOL_GPL vmlinux 0xb9681621 xdp_do_flush +EXPORT_SYMBOL_GPL vmlinux 0xb96dd2bf pci_common_swizzle +EXPORT_SYMBOL_GPL vmlinux 0xb973e0f8 subsys_virtual_register +EXPORT_SYMBOL_GPL vmlinux 0xb98c10d9 pci_epc_set_bar +EXPORT_SYMBOL_GPL vmlinux 0xb99a5301 init_dummy_netdev +EXPORT_SYMBOL_GPL vmlinux 0xb9b257a6 paste_selection +EXPORT_SYMBOL_GPL vmlinux 0xb9b63a70 clk_register_fixed_rate +EXPORT_SYMBOL_GPL vmlinux 0xb9b9df41 usb_amd_dev_put +EXPORT_SYMBOL_GPL vmlinux 0xb9c16f51 hv_max_vp_index +EXPORT_SYMBOL_GPL vmlinux 0xb9c425de register_syscore_ops +EXPORT_SYMBOL_GPL vmlinux 0xb9cecf1a rtc_alarm_irq_enable +EXPORT_SYMBOL_GPL vmlinux 0xb9d025c9 llist_del_first +EXPORT_SYMBOL_GPL vmlinux 0xb9e0fbff phy_led_triggers_unregister +EXPORT_SYMBOL_GPL vmlinux 0xb9ed45c4 devm_extcon_dev_unregister +EXPORT_SYMBOL_GPL vmlinux 0xb9f89246 trace_seq_vprintf +EXPORT_SYMBOL_GPL vmlinux 0xb9fe9eb9 ata_sff_tf_load +EXPORT_SYMBOL_GPL vmlinux 0xba01ec83 hv_stimer_global_cleanup +EXPORT_SYMBOL_GPL vmlinux 0xba0b5182 ip6_route_lookup +EXPORT_SYMBOL_GPL vmlinux 0xba133f94 usb_phy_set_charger_state +EXPORT_SYMBOL_GPL vmlinux 0xba220db7 __wake_up_sync_key +EXPORT_SYMBOL_GPL vmlinux 0xba2b7f64 cpufreq_generic_get +EXPORT_SYMBOL_GPL vmlinux 0xba2bd125 phy_gbit_fibre_features +EXPORT_SYMBOL_GPL vmlinux 0xba82d3c5 relay_subbufs_consumed +EXPORT_SYMBOL_GPL vmlinux 0xba9213de event_triggers_call +EXPORT_SYMBOL_GPL vmlinux 0xba984d9b acpi_ec_remove_query_handler +EXPORT_SYMBOL_GPL vmlinux 0xba9f7181 rio_request_dma +EXPORT_SYMBOL_GPL vmlinux 0xbaa2b72e crypto_cipher_decrypt_one +EXPORT_SYMBOL_GPL vmlinux 0xbaa9d957 regmap_raw_write_async +EXPORT_SYMBOL_GPL vmlinux 0xbab266b1 firmware_kobj +EXPORT_SYMBOL_GPL vmlinux 0xbab9a9f0 maxim_charger_currents +EXPORT_SYMBOL_GPL vmlinux 0xbabec81a __kthread_init_worker +EXPORT_SYMBOL_GPL vmlinux 0xbad56e6b skb_segment +EXPORT_SYMBOL_GPL vmlinux 0xbad6abb7 regmap_fields_update_bits_base +EXPORT_SYMBOL_GPL vmlinux 0xbaf6850c fsnotify_wait_marks_destroyed +EXPORT_SYMBOL_GPL vmlinux 0xbaf89cbc ip6_sk_update_pmtu +EXPORT_SYMBOL_GPL vmlinux 0xbaf9d785 __tss_limit_invalid +EXPORT_SYMBOL_GPL vmlinux 0xbafd5ab3 init_pid_ns +EXPORT_SYMBOL_GPL vmlinux 0xbb0ab47b debug_locks +EXPORT_SYMBOL_GPL vmlinux 0xbb0b25d2 register_xenbus_watch +EXPORT_SYMBOL_GPL vmlinux 0xbb10d7a3 pci_epc_mem_exit +EXPORT_SYMBOL_GPL vmlinux 0xbb127f4e watchdog_init_timeout +EXPORT_SYMBOL_GPL vmlinux 0xbb1b7dc3 tty_ldisc_receive_buf +EXPORT_SYMBOL_GPL vmlinux 0xbb2f4e0d device_show_int +EXPORT_SYMBOL_GPL vmlinux 0xbb39ae85 sb800_prefetch +EXPORT_SYMBOL_GPL vmlinux 0xbb4e3ec3 regulator_set_mode +EXPORT_SYMBOL_GPL vmlinux 0xbb6a3cbd devlink_fmsg_arr_pair_nest_start +EXPORT_SYMBOL_GPL vmlinux 0xbb6b9582 sysfs_create_group +EXPORT_SYMBOL_GPL vmlinux 0xbb6dbac7 devm_kstrdup +EXPORT_SYMBOL_GPL vmlinux 0xbb6f025a asymmetric_key_generate_id +EXPORT_SYMBOL_GPL vmlinux 0xbb706a65 shmem_file_setup_with_mnt +EXPORT_SYMBOL_GPL vmlinux 0xbb7195a5 xdp_warn +EXPORT_SYMBOL_GPL vmlinux 0xbb72ad6a md_start +EXPORT_SYMBOL_GPL vmlinux 0xbb880c98 bpf_trace_run2 +EXPORT_SYMBOL_GPL vmlinux 0xbb8c7a23 crypto_hash_alg_has_setkey +EXPORT_SYMBOL_GPL vmlinux 0xbb93eec5 ioasid_alloc +EXPORT_SYMBOL_GPL vmlinux 0xbb9f477e kset_create_and_add +EXPORT_SYMBOL_GPL vmlinux 0xbbacd8e5 tpm_tis_remove +EXPORT_SYMBOL_GPL vmlinux 0xbbb98859 edid_info +EXPORT_SYMBOL_GPL vmlinux 0xbbbfb4a4 usb_hub_clear_tt_buffer +EXPORT_SYMBOL_GPL vmlinux 0xbbc5695f ipv4_update_pmtu +EXPORT_SYMBOL_GPL vmlinux 0xbbc8aa1a clk_hw_get_num_parents +EXPORT_SYMBOL_GPL vmlinux 0xbbe8438b devm_pinctrl_put +EXPORT_SYMBOL_GPL vmlinux 0xbc023eef dev_pm_qos_add_ancestor_request +EXPORT_SYMBOL_GPL vmlinux 0xbc04bd46 x86_platform +EXPORT_SYMBOL_GPL vmlinux 0xbc08637e usb_interrupt_msg +EXPORT_SYMBOL_GPL vmlinux 0xbc138bb9 ata_dev_pair +EXPORT_SYMBOL_GPL vmlinux 0xbc24d5e9 regmap_async_complete +EXPORT_SYMBOL_GPL vmlinux 0xbc256386 usb_hcd_amd_remote_wakeup_quirk +EXPORT_SYMBOL_GPL vmlinux 0xbc2dda30 gpiochip_unlock_as_irq +EXPORT_SYMBOL_GPL vmlinux 0xbc42720a ata_pio_need_iordy +EXPORT_SYMBOL_GPL vmlinux 0xbc4a3c7c tty_ldisc_ref_wait +EXPORT_SYMBOL_GPL vmlinux 0xbc5ff2f2 devres_add +EXPORT_SYMBOL_GPL vmlinux 0xbc60dc37 cpufreq_show_cpus +EXPORT_SYMBOL_GPL vmlinux 0xbc6bec66 free_percpu_irq +EXPORT_SYMBOL_GPL vmlinux 0xbc7d87b5 perf_event_enable +EXPORT_SYMBOL_GPL vmlinux 0xbc831ce5 bus_sort_breadthfirst +EXPORT_SYMBOL_GPL vmlinux 0xbc94b6b3 sata_link_scr_lpm +EXPORT_SYMBOL_GPL vmlinux 0xbc96432e dev_attr_em_message +EXPORT_SYMBOL_GPL vmlinux 0xbc986268 blk_mq_quiesce_queue +EXPORT_SYMBOL_GPL vmlinux 0xbc9b8588 ehci_cf_port_reset_rwsem +EXPORT_SYMBOL_GPL vmlinux 0xbcab36ca vfs_lock_file +EXPORT_SYMBOL_GPL vmlinux 0xbcac2150 dev_change_net_namespace +EXPORT_SYMBOL_GPL vmlinux 0xbcb838a1 amd_flush_garts +EXPORT_SYMBOL_GPL vmlinux 0xbcc15e75 ktime_get_coarse_with_offset +EXPORT_SYMBOL_GPL vmlinux 0xbcc54d34 fsl_mc_device_group +EXPORT_SYMBOL_GPL vmlinux 0xbccfd4d8 register_oldmem_pfn_is_ram +EXPORT_SYMBOL_GPL vmlinux 0xbcdd5b99 iommu_group_set_name +EXPORT_SYMBOL_GPL vmlinux 0xbce2b980 serial8250_do_shutdown +EXPORT_SYMBOL_GPL vmlinux 0xbce7fbc6 __xenmem_reservation_va_mapping_update +EXPORT_SYMBOL_GPL vmlinux 0xbceefc73 fat_fill_super +EXPORT_SYMBOL_GPL vmlinux 0xbcf1f0e6 zs_create_pool +EXPORT_SYMBOL_GPL vmlinux 0xbd0f2791 acpi_initialize_hp_context +EXPORT_SYMBOL_GPL vmlinux 0xbd18d140 bpf_verifier_log_write +EXPORT_SYMBOL_GPL vmlinux 0xbd1b1fb8 __sock_recv_timestamp +EXPORT_SYMBOL_GPL vmlinux 0xbd3a3052 usb_autopm_put_interface_no_suspend +EXPORT_SYMBOL_GPL vmlinux 0xbd3fe1e3 disable_hardirq +EXPORT_SYMBOL_GPL vmlinux 0xbd42c663 kthread_cancel_delayed_work_sync +EXPORT_SYMBOL_GPL vmlinux 0xbd53f2e6 gpiochip_add_data_with_key +EXPORT_SYMBOL_GPL vmlinux 0xbd5ca71a device_pm_wait_for_dev +EXPORT_SYMBOL_GPL vmlinux 0xbd67cf9b phy_destroy +EXPORT_SYMBOL_GPL vmlinux 0xbd7395f4 gpiochip_remove +EXPORT_SYMBOL_GPL vmlinux 0xbd8f36a6 intel_pmic_install_opregion_handler +EXPORT_SYMBOL_GPL vmlinux 0xbd96cffc fscrypt_ioctl_get_policy_ex +EXPORT_SYMBOL_GPL vmlinux 0xbdb2dfd5 uv_bios_reserved_page_pa +EXPORT_SYMBOL_GPL vmlinux 0xbdd1df29 seg6_do_srh_inline +EXPORT_SYMBOL_GPL vmlinux 0xbdfecbf4 unregister_virtio_device +EXPORT_SYMBOL_GPL vmlinux 0xbe0ff610 iommu_detach_group +EXPORT_SYMBOL_GPL vmlinux 0xbe130ab6 fwnode_get_next_available_child_node +EXPORT_SYMBOL_GPL vmlinux 0xbe22044e rt_mutex_lock +EXPORT_SYMBOL_GPL vmlinux 0xbe374371 nvdimm_has_flush +EXPORT_SYMBOL_GPL vmlinux 0xbe4d9cb9 tty_find_polling_driver +EXPORT_SYMBOL_GPL vmlinux 0xbe5c888b crypto_chain +EXPORT_SYMBOL_GPL vmlinux 0xbe64e0e5 tty_port_register_device +EXPORT_SYMBOL_GPL vmlinux 0xbe687e88 wake_up_all_idle_cpus +EXPORT_SYMBOL_GPL vmlinux 0xbe744257 efi_get_embedded_fw +EXPORT_SYMBOL_GPL vmlinux 0xbe788218 tty_port_tty_wakeup +EXPORT_SYMBOL_GPL vmlinux 0xbe7b1d67 ata_sas_queuecmd +EXPORT_SYMBOL_GPL vmlinux 0xbe8901c3 xen_xenbus_fops +EXPORT_SYMBOL_GPL vmlinux 0xbe930534 shash_ahash_digest +EXPORT_SYMBOL_GPL vmlinux 0xbe9a83d5 dw_pcie_write +EXPORT_SYMBOL_GPL vmlinux 0xbea5ff1e static_key_initialized +EXPORT_SYMBOL_GPL vmlinux 0xbeb37c3a ata_dev_set_feature +EXPORT_SYMBOL_GPL vmlinux 0xbeb62736 acomp_request_alloc +EXPORT_SYMBOL_GPL vmlinux 0xbec66c3a __apei_exec_run +EXPORT_SYMBOL_GPL vmlinux 0xbf041102 register_vt_notifier +EXPORT_SYMBOL_GPL vmlinux 0xbf187e7e regulator_set_current_limit +EXPORT_SYMBOL_GPL vmlinux 0xbf221f03 fat_update_time +EXPORT_SYMBOL_GPL vmlinux 0xbf46d8f2 subsys_find_device_by_id +EXPORT_SYMBOL_GPL vmlinux 0xbf5e4c26 devm_gpio_free +EXPORT_SYMBOL_GPL vmlinux 0xbf666608 gnttab_pages_clear_private +EXPORT_SYMBOL_GPL vmlinux 0xbf6abbe7 housekeeping_enabled +EXPORT_SYMBOL_GPL vmlinux 0xbf814087 lwtunnel_xmit +EXPORT_SYMBOL_GPL vmlinux 0xbfb1be70 hv_setup_vmbus_irq +EXPORT_SYMBOL_GPL vmlinux 0xbfb59748 __set_page_dirty +EXPORT_SYMBOL_GPL vmlinux 0xbfb98d50 uart_set_options +EXPORT_SYMBOL_GPL vmlinux 0xbfbc5434 pciserial_resume_ports +EXPORT_SYMBOL_GPL vmlinux 0xbfe216cf fscrypt_set_test_dummy_encryption +EXPORT_SYMBOL_GPL vmlinux 0xbfe5616d tick_broadcast_oneshot_control +EXPORT_SYMBOL_GPL vmlinux 0xbfec7fc8 gpiod_get_value +EXPORT_SYMBOL_GPL vmlinux 0xbfed2cd9 __wait_rcu_gp +EXPORT_SYMBOL_GPL vmlinux 0xbfefa7b0 sysfs_remove_groups +EXPORT_SYMBOL_GPL vmlinux 0xbff3a656 xhci_ext_cap_init +EXPORT_SYMBOL_GPL vmlinux 0xbffde8ec compat_alloc_user_space +EXPORT_SYMBOL_GPL vmlinux 0xbfff7381 sdev_evt_send +EXPORT_SYMBOL_GPL vmlinux 0xc01ce18a genphy_c45_check_and_restart_aneg +EXPORT_SYMBOL_GPL vmlinux 0xc04089de cpufreq_driver_fast_switch +EXPORT_SYMBOL_GPL vmlinux 0xc06843f7 ata_link_offline +EXPORT_SYMBOL_GPL vmlinux 0xc071818d bsg_remove_queue +EXPORT_SYMBOL_GPL vmlinux 0xc07580fa sched_setattr +EXPORT_SYMBOL_GPL vmlinux 0xc076601d eventfd_ctx_fileget +EXPORT_SYMBOL_GPL vmlinux 0xc07c0a93 spi_delay_exec +EXPORT_SYMBOL_GPL vmlinux 0xc0806d94 __hwspin_lock_timeout +EXPORT_SYMBOL_GPL vmlinux 0xc086e379 task_cls_state +EXPORT_SYMBOL_GPL vmlinux 0xc08bbce6 irq_get_percpu_devid_partition +EXPORT_SYMBOL_GPL vmlinux 0xc0a0624f scsi_schedule_eh +EXPORT_SYMBOL_GPL vmlinux 0xc0a96e14 rcu_gp_is_expedited +EXPORT_SYMBOL_GPL vmlinux 0xc0ac6cdf tpm_chip_start +EXPORT_SYMBOL_GPL vmlinux 0xc0d81473 fat_setattr +EXPORT_SYMBOL_GPL vmlinux 0xc0da0d74 skb_tstamp_tx +EXPORT_SYMBOL_GPL vmlinux 0xc0dcb59e edac_layer_name +EXPORT_SYMBOL_GPL vmlinux 0xc0ddd1eb iommu_domain_free +EXPORT_SYMBOL_GPL vmlinux 0xc0e04b20 set_task_ioprio +EXPORT_SYMBOL_GPL vmlinux 0xc0e12472 crypto_unregister_ahash +EXPORT_SYMBOL_GPL vmlinux 0xc0f0458a ip_tunnel_unneed_metadata +EXPORT_SYMBOL_GPL vmlinux 0xc0f38ec4 rtc_set_alarm +EXPORT_SYMBOL_GPL vmlinux 0xc0f596b8 serdev_device_write +EXPORT_SYMBOL_GPL vmlinux 0xc0faee28 blk_mq_pci_map_queues +EXPORT_SYMBOL_GPL vmlinux 0xc0fceac4 ip6_update_pmtu +EXPORT_SYMBOL_GPL vmlinux 0xc1086e0c sysrq_toggle_support +EXPORT_SYMBOL_GPL vmlinux 0xc10fddb8 name_to_dev_t +EXPORT_SYMBOL_GPL vmlinux 0xc133518f pstore_unregister +EXPORT_SYMBOL_GPL vmlinux 0xc133c9ca crypto_unregister_alg +EXPORT_SYMBOL_GPL vmlinux 0xc1635b8a unregister_trace_event +EXPORT_SYMBOL_GPL vmlinux 0xc16563c8 devlink_unregister +EXPORT_SYMBOL_GPL vmlinux 0xc170fd3d __devm_spi_alloc_controller +EXPORT_SYMBOL_GPL vmlinux 0xc17515d7 usb_hcds_loaded +EXPORT_SYMBOL_GPL vmlinux 0xc17e9946 usb_show_dynids +EXPORT_SYMBOL_GPL vmlinux 0xc18cdf36 amd_df_indirect_read +EXPORT_SYMBOL_GPL vmlinux 0xc19800c9 fib6_new_table +EXPORT_SYMBOL_GPL vmlinux 0xc1d989c5 vfio_external_check_extension +EXPORT_SYMBOL_GPL vmlinux 0xc1df5463 skcipher_walk_async +EXPORT_SYMBOL_GPL vmlinux 0xc1fc27a5 iptunnel_metadata_reply +EXPORT_SYMBOL_GPL vmlinux 0xc2007442 ata_sff_error_handler +EXPORT_SYMBOL_GPL vmlinux 0xc21f2613 usb_hcd_poll_rh_status +EXPORT_SYMBOL_GPL vmlinux 0xc22a3091 vm_unmap_aliases +EXPORT_SYMBOL_GPL vmlinux 0xc25b8971 hv_remove_crash_handler +EXPORT_SYMBOL_GPL vmlinux 0xc25eb3c0 tracing_cond_snapshot_data +EXPORT_SYMBOL_GPL vmlinux 0xc2692173 wakeup_sources_read_lock +EXPORT_SYMBOL_GPL vmlinux 0xc2694770 blkdev_write_iter +EXPORT_SYMBOL_GPL vmlinux 0xc271bbbb iterate_mounts +EXPORT_SYMBOL_GPL vmlinux 0xc280fb46 kdb_register +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 0xc2a814db tcp_memory_pressure +EXPORT_SYMBOL_GPL vmlinux 0xc2b478b2 i2c_new_smbus_alert_device +EXPORT_SYMBOL_GPL vmlinux 0xc2b8ca68 fat_truncate_time +EXPORT_SYMBOL_GPL vmlinux 0xc2c1c427 perf_event_cgrp_subsys_on_dfl_key +EXPORT_SYMBOL_GPL vmlinux 0xc2d1592c find_mci_by_dev +EXPORT_SYMBOL_GPL vmlinux 0xc2de27ca hest_disable +EXPORT_SYMBOL_GPL vmlinux 0xc2f48e9d ethnl_cable_test_free +EXPORT_SYMBOL_GPL vmlinux 0xc3150ad3 bus_get_device_klist +EXPORT_SYMBOL_GPL vmlinux 0xc31f8e9d cros_ec_check_features +EXPORT_SYMBOL_GPL vmlinux 0xc33ceba5 irq_domain_push_irq +EXPORT_SYMBOL_GPL vmlinux 0xc341ae6d zs_map_object +EXPORT_SYMBOL_GPL vmlinux 0xc36bc477 dw_pcie_host_deinit +EXPORT_SYMBOL_GPL vmlinux 0xc3805cd1 fs_ftype_to_dtype +EXPORT_SYMBOL_GPL vmlinux 0xc386d817 cpci_hp_unregister_bus +EXPORT_SYMBOL_GPL vmlinux 0xc38c7ed7 apply_to_existing_page_range +EXPORT_SYMBOL_GPL vmlinux 0xc3939d09 regulator_set_voltage_sel_pickable_regmap +EXPORT_SYMBOL_GPL vmlinux 0xc393cd1c edac_device_add_device +EXPORT_SYMBOL_GPL vmlinux 0xc39e0d2f usb_unanchor_urb +EXPORT_SYMBOL_GPL vmlinux 0xc3a13cfc kernfs_get +EXPORT_SYMBOL_GPL vmlinux 0xc3aa92b2 devm_usb_get_phy_by_node +EXPORT_SYMBOL_GPL vmlinux 0xc3ae0d38 trace_put_event_file +EXPORT_SYMBOL_GPL vmlinux 0xc3bffaef spi_replace_transfers +EXPORT_SYMBOL_GPL vmlinux 0xc3c097bc __percpu_down_read +EXPORT_SYMBOL_GPL vmlinux 0xc3c4c6cc hash_algo_name +EXPORT_SYMBOL_GPL vmlinux 0xc3cc3dda serial8250_init_port +EXPORT_SYMBOL_GPL vmlinux 0xc3de65ff ring_buffer_bytes_cpu +EXPORT_SYMBOL_GPL vmlinux 0xc3e8f2d0 regulator_get_init_drvdata +EXPORT_SYMBOL_GPL vmlinux 0xc3e95fdb pinctrl_find_gpio_range_from_pin_nolock +EXPORT_SYMBOL_GPL vmlinux 0xc3ea5305 iommu_default_passthrough +EXPORT_SYMBOL_GPL vmlinux 0xc3edf6aa save_fsgs_for_kvm +EXPORT_SYMBOL_GPL vmlinux 0xc3f9c412 uart_handle_cts_change +EXPORT_SYMBOL_GPL vmlinux 0xc4081295 fat_sync_inode +EXPORT_SYMBOL_GPL vmlinux 0xc40f4e07 __tracepoint_neigh_update_done +EXPORT_SYMBOL_GPL vmlinux 0xc426c51f klp_shadow_free_all +EXPORT_SYMBOL_GPL vmlinux 0xc428068d sata_deb_timing_long +EXPORT_SYMBOL_GPL vmlinux 0xc42b817a skb_copy_ubufs +EXPORT_SYMBOL_GPL vmlinux 0xc4358e24 __rtc_register_device +EXPORT_SYMBOL_GPL vmlinux 0xc43e92b9 trace_seq_bprintf +EXPORT_SYMBOL_GPL vmlinux 0xc44f56eb securityfs_create_file +EXPORT_SYMBOL_GPL vmlinux 0xc454fc7b twl_get_type +EXPORT_SYMBOL_GPL vmlinux 0xc45d0d13 injectm +EXPORT_SYMBOL_GPL vmlinux 0xc45e23e4 __module_address +EXPORT_SYMBOL_GPL vmlinux 0xc46324f6 dynevent_create +EXPORT_SYMBOL_GPL vmlinux 0xc4661240 nvdimm_flush +EXPORT_SYMBOL_GPL vmlinux 0xc4698280 n_tty_inherit_ops +EXPORT_SYMBOL_GPL vmlinux 0xc471c67a twl4030_audio_disable_resource +EXPORT_SYMBOL_GPL vmlinux 0xc48b7ccf ata_mode_string +EXPORT_SYMBOL_GPL vmlinux 0xc4913442 vfio_group_put_external_user +EXPORT_SYMBOL_GPL vmlinux 0xc4929c25 rtc_read_alarm +EXPORT_SYMBOL_GPL vmlinux 0xc4935e1f regulator_set_drvdata +EXPORT_SYMBOL_GPL vmlinux 0xc494cfe9 kobject_move +EXPORT_SYMBOL_GPL vmlinux 0xc4a31146 rdma_cgrp_subsys_on_dfl_key +EXPORT_SYMBOL_GPL vmlinux 0xc4a42ed7 device_for_each_child_reverse +EXPORT_SYMBOL_GPL vmlinux 0xc4a72936 trusted_tpm_send +EXPORT_SYMBOL_GPL vmlinux 0xc4ac8eef __tracepoint_rpm_idle +EXPORT_SYMBOL_GPL vmlinux 0xc4b1bc76 of_icc_xlate_onecell +EXPORT_SYMBOL_GPL vmlinux 0xc4ba0a61 acpi_dev_add_driver_gpios +EXPORT_SYMBOL_GPL vmlinux 0xc4e66296 serial8250_rpm_get_tx +EXPORT_SYMBOL_GPL vmlinux 0xc4f0da12 ktime_get_with_offset +EXPORT_SYMBOL_GPL vmlinux 0xc50a582b inet_csk_update_pmtu +EXPORT_SYMBOL_GPL vmlinux 0xc50cce6d pm_wakeup_ws_event +EXPORT_SYMBOL_GPL vmlinux 0xc512626a __supported_pte_mask +EXPORT_SYMBOL_GPL vmlinux 0xc5156bf3 fanout_mutex +EXPORT_SYMBOL_GPL vmlinux 0xc51e13dc iommu_domain_get_attr +EXPORT_SYMBOL_GPL vmlinux 0xc5262f73 devres_find +EXPORT_SYMBOL_GPL vmlinux 0xc52f0388 acpi_dev_resource_memory +EXPORT_SYMBOL_GPL vmlinux 0xc52f26a6 rio_lock_device +EXPORT_SYMBOL_GPL vmlinux 0xc53c1e23 sysfs_notify +EXPORT_SYMBOL_GPL vmlinux 0xc54aabb9 sysfs_unbreak_active_protection +EXPORT_SYMBOL_GPL vmlinux 0xc54bc823 bio_associate_blkg_from_css +EXPORT_SYMBOL_GPL vmlinux 0xc5533fea fixed_phy_register +EXPORT_SYMBOL_GPL vmlinux 0xc55ff962 phy_basic_t1_features_array +EXPORT_SYMBOL_GPL vmlinux 0xc5604800 clk_set_rate_exclusive +EXPORT_SYMBOL_GPL vmlinux 0xc569d8ce __clk_get_name +EXPORT_SYMBOL_GPL vmlinux 0xc5748992 phy_package_join +EXPORT_SYMBOL_GPL vmlinux 0xc575c737 debug_locks_off +EXPORT_SYMBOL_GPL vmlinux 0xc5777fca linear_range_get_selector_low_array +EXPORT_SYMBOL_GPL vmlinux 0xc58a3ee6 icc_node_destroy +EXPORT_SYMBOL_GPL vmlinux 0xc58ca103 vfs_setlease +EXPORT_SYMBOL_GPL vmlinux 0xc594d840 acpi_dev_resource_interrupt +EXPORT_SYMBOL_GPL vmlinux 0xc5996c8c pkcs7_get_content_data +EXPORT_SYMBOL_GPL vmlinux 0xc5a5c678 uart_parse_earlycon +EXPORT_SYMBOL_GPL vmlinux 0xc5b31155 __efivar_entry_get +EXPORT_SYMBOL_GPL vmlinux 0xc5d789df alarm_expires_remaining +EXPORT_SYMBOL_GPL vmlinux 0xc5d89cab acpi_subsys_suspend +EXPORT_SYMBOL_GPL vmlinux 0xc5f9bf00 pwm_lpss_remove +EXPORT_SYMBOL_GPL vmlinux 0xc600a8fa nvdimm_region_notify +EXPORT_SYMBOL_GPL vmlinux 0xc60ac3f1 ip6_route_output_flags_noref +EXPORT_SYMBOL_GPL vmlinux 0xc617ee99 user_read +EXPORT_SYMBOL_GPL vmlinux 0xc617f82c unregister_oom_notifier +EXPORT_SYMBOL_GPL vmlinux 0xc62b8522 clear_foreign_p2m_mapping +EXPORT_SYMBOL_GPL vmlinux 0xc62e0c13 regcache_cache_bypass +EXPORT_SYMBOL_GPL vmlinux 0xc642d9f6 rtnl_af_unregister +EXPORT_SYMBOL_GPL vmlinux 0xc6523be9 regmap_multi_reg_write +EXPORT_SYMBOL_GPL vmlinux 0xc654d3f4 lwtunnel_valid_encap_type +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 0xc6779093 ring_buffer_record_enable +EXPORT_SYMBOL_GPL vmlinux 0xc67bd2ca sdio_align_size +EXPORT_SYMBOL_GPL vmlinux 0xc682f838 rdev_get_drvdata +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 0xc6a4a872 __clk_is_enabled +EXPORT_SYMBOL_GPL vmlinux 0xc6aaa72e evm_inode_init_security +EXPORT_SYMBOL_GPL vmlinux 0xc6afad28 sata_async_notification +EXPORT_SYMBOL_GPL vmlinux 0xc6b10427 ex_handler_fprestore +EXPORT_SYMBOL_GPL vmlinux 0xc6b2d0ea pci_epc_get_msi +EXPORT_SYMBOL_GPL vmlinux 0xc6c49df5 dma_buf_dynamic_attach +EXPORT_SYMBOL_GPL vmlinux 0xc6cab405 pm_genpd_remove +EXPORT_SYMBOL_GPL vmlinux 0xc6def34b gnttab_empty_grant_references +EXPORT_SYMBOL_GPL vmlinux 0xc6e45759 phy_modify_changed +EXPORT_SYMBOL_GPL vmlinux 0xc6eec8f5 clk_divider_ops +EXPORT_SYMBOL_GPL vmlinux 0xc7045328 netdev_rx_handler_register +EXPORT_SYMBOL_GPL vmlinux 0xc7061ef3 iova_cache_put +EXPORT_SYMBOL_GPL vmlinux 0xc70ac1a5 wbc_attach_and_unlock_inode +EXPORT_SYMBOL_GPL vmlinux 0xc715b52d power_supply_get_property +EXPORT_SYMBOL_GPL vmlinux 0xc71e64a9 snmp_get_cpu_field +EXPORT_SYMBOL_GPL vmlinux 0xc729e9c0 regulator_get_hardware_vsel_register +EXPORT_SYMBOL_GPL vmlinux 0xc7637bb6 phy_modify +EXPORT_SYMBOL_GPL vmlinux 0xc7856e74 __wake_up_locked_sync_key +EXPORT_SYMBOL_GPL vmlinux 0xc792c3c9 rio_route_get_entry +EXPORT_SYMBOL_GPL vmlinux 0xc7a1840e llist_add_batch +EXPORT_SYMBOL_GPL vmlinux 0xc7b3c870 acpi_driver_match_device +EXPORT_SYMBOL_GPL vmlinux 0xc7beb501 spi_unregister_device +EXPORT_SYMBOL_GPL vmlinux 0xc7c23ff0 xenbus_exists +EXPORT_SYMBOL_GPL vmlinux 0xc7ced1e0 regulator_count_voltages +EXPORT_SYMBOL_GPL vmlinux 0xc7fa4aa9 kobj_ns_drop +EXPORT_SYMBOL_GPL vmlinux 0xc7fa7ed6 of_phy_get +EXPORT_SYMBOL_GPL vmlinux 0xc8061167 extcon_dev_register +EXPORT_SYMBOL_GPL vmlinux 0xc8090299 rio_unmap_outb_region +EXPORT_SYMBOL_GPL vmlinux 0xc80a2c13 wm5102_i2c_regmap +EXPORT_SYMBOL_GPL vmlinux 0xc81c748e dma_get_slave_channel +EXPORT_SYMBOL_GPL vmlinux 0xc81cb9a7 cpufreq_freq_attr_scaling_available_freqs +EXPORT_SYMBOL_GPL vmlinux 0xc82c721f klist_remove +EXPORT_SYMBOL_GPL vmlinux 0xc82cc9c3 devlink_reload_enable +EXPORT_SYMBOL_GPL vmlinux 0xc839c1ce trace_seq_to_user +EXPORT_SYMBOL_GPL vmlinux 0xc8594d3d reset_control_acquire +EXPORT_SYMBOL_GPL vmlinux 0xc85b066d enable_kprobe +EXPORT_SYMBOL_GPL vmlinux 0xc866c7e3 phy_modify_mmd +EXPORT_SYMBOL_GPL vmlinux 0xc86bd0e0 vfio_register_iommu_driver +EXPORT_SYMBOL_GPL vmlinux 0xc87172d6 arizona_clk32k_disable +EXPORT_SYMBOL_GPL vmlinux 0xc87e487a sched_clock_idle_sleep_event +EXPORT_SYMBOL_GPL vmlinux 0xc87fb025 xas_get_mark +EXPORT_SYMBOL_GPL vmlinux 0xc8835ac1 pci_epf_alloc_space +EXPORT_SYMBOL_GPL vmlinux 0xc89f10ee sdio_unregister_driver +EXPORT_SYMBOL_GPL vmlinux 0xc8d2218f intel_msic_reg_read +EXPORT_SYMBOL_GPL vmlinux 0xc8d5546c rio_unmap_inb_region +EXPORT_SYMBOL_GPL vmlinux 0xc8ddd5b5 kstrdup_quotable +EXPORT_SYMBOL_GPL vmlinux 0xc8f162c9 ftrace_set_filter_ip +EXPORT_SYMBOL_GPL vmlinux 0xc8ffe357 cpufreq_generic_attr +EXPORT_SYMBOL_GPL vmlinux 0xc9045b4f crypto_register_skciphers +EXPORT_SYMBOL_GPL vmlinux 0xc9102e4b __pm_stay_awake +EXPORT_SYMBOL_GPL vmlinux 0xc911dd0c blk_mq_rdma_map_queues +EXPORT_SYMBOL_GPL vmlinux 0xc91277a1 kgdb_schedule_breakpoint +EXPORT_SYMBOL_GPL vmlinux 0xc912da18 shash_no_setkey +EXPORT_SYMBOL_GPL vmlinux 0xc9233027 dm_set_target_max_io_len +EXPORT_SYMBOL_GPL vmlinux 0xc925f760 gpiod_to_irq +EXPORT_SYMBOL_GPL vmlinux 0xc92aeb8e regcache_drop_region +EXPORT_SYMBOL_GPL vmlinux 0xc9345c0f digsig_verify +EXPORT_SYMBOL_GPL vmlinux 0xc93a0d9d virtio_device_freeze +EXPORT_SYMBOL_GPL vmlinux 0xc93ab949 platform_get_irq +EXPORT_SYMBOL_GPL vmlinux 0xc93ee1e7 usb_phy_roothub_init +EXPORT_SYMBOL_GPL vmlinux 0xc9561772 fb_destroy_modelist +EXPORT_SYMBOL_GPL vmlinux 0xc96387e3 device_property_read_u8_array +EXPORT_SYMBOL_GPL vmlinux 0xc9641b48 visitor32 +EXPORT_SYMBOL_GPL vmlinux 0xc97a00c9 alarm_try_to_cancel +EXPORT_SYMBOL_GPL vmlinux 0xc9827693 __bpf_call_base +EXPORT_SYMBOL_GPL vmlinux 0xc99ee506 __srcu_read_lock +EXPORT_SYMBOL_GPL vmlinux 0xc9a12c73 dm_bio_from_per_bio_data +EXPORT_SYMBOL_GPL vmlinux 0xc9a4b416 copy_to_user_nofault +EXPORT_SYMBOL_GPL vmlinux 0xc9c1a76b device_set_of_node_from_dev +EXPORT_SYMBOL_GPL vmlinux 0xc9c3f176 hpet_register_irq_handler +EXPORT_SYMBOL_GPL vmlinux 0xc9ce98ad __inet_lookup_established +EXPORT_SYMBOL_GPL vmlinux 0xc9db9beb pci_check_and_unmask_intx +EXPORT_SYMBOL_GPL vmlinux 0xc9df7601 fs_kobj +EXPORT_SYMBOL_GPL vmlinux 0xc9ec4e21 free_percpu +EXPORT_SYMBOL_GPL vmlinux 0xca009988 led_classdev_resume +EXPORT_SYMBOL_GPL vmlinux 0xca167d6b irq_generic_chip_ops +EXPORT_SYMBOL_GPL vmlinux 0xca195667 pm_generic_poweroff_late +EXPORT_SYMBOL_GPL vmlinux 0xca231e9f __kernel_write +EXPORT_SYMBOL_GPL vmlinux 0xca25f774 tpm_put_ops +EXPORT_SYMBOL_GPL vmlinux 0xca26811e tty_kclose +EXPORT_SYMBOL_GPL vmlinux 0xca3e039e devlink_region_create +EXPORT_SYMBOL_GPL vmlinux 0xca426bfc efi_mm +EXPORT_SYMBOL_GPL vmlinux 0xca467318 hibernation_set_ops +EXPORT_SYMBOL_GPL vmlinux 0xca5a81da md_kick_rdev_from_array +EXPORT_SYMBOL_GPL vmlinux 0xca7d8764 kthread_freezable_should_stop +EXPORT_SYMBOL_GPL vmlinux 0xca932a9e thermal_remove_hwmon_sysfs +EXPORT_SYMBOL_GPL vmlinux 0xca99eeed gpiochip_irqchip_add_domain +EXPORT_SYMBOL_GPL vmlinux 0xca9a1d5e ring_buffer_free +EXPORT_SYMBOL_GPL vmlinux 0xcaa68533 cpu_has_xfeatures +EXPORT_SYMBOL_GPL vmlinux 0xcabe04de cpuidle_resume_and_unlock +EXPORT_SYMBOL_GPL vmlinux 0xcac2fef6 tty_port_register_device_serdev +EXPORT_SYMBOL_GPL vmlinux 0xcac41bec locks_release_private +EXPORT_SYMBOL_GPL vmlinux 0xcacd88a0 __tracepoint_br_fdb_update +EXPORT_SYMBOL_GPL vmlinux 0xcadbe06f simple_attr_release +EXPORT_SYMBOL_GPL vmlinux 0xcadf2ead aead_geniv_alloc +EXPORT_SYMBOL_GPL vmlinux 0xcae11b05 cpufreq_freq_transition_end +EXPORT_SYMBOL_GPL vmlinux 0xcae2042d platform_device_add_resources +EXPORT_SYMBOL_GPL vmlinux 0xcaf1d958 evtchn_get +EXPORT_SYMBOL_GPL vmlinux 0xcafdf113 strp_process +EXPORT_SYMBOL_GPL vmlinux 0xcb08e9a3 crypto_stats_akcipher_sign +EXPORT_SYMBOL_GPL vmlinux 0xcb0d4f57 free_fib_info +EXPORT_SYMBOL_GPL vmlinux 0xcb0d66d4 unix_peer_get +EXPORT_SYMBOL_GPL vmlinux 0xcb15eee9 sdhci_pci_get_data +EXPORT_SYMBOL_GPL vmlinux 0xcb23c1c1 get_dcookie +EXPORT_SYMBOL_GPL vmlinux 0xcb25d1b0 usb_autopm_get_interface +EXPORT_SYMBOL_GPL vmlinux 0xcb28945b sata_link_hardreset +EXPORT_SYMBOL_GPL vmlinux 0xcb2bfe2b nvmem_register_notifier +EXPORT_SYMBOL_GPL vmlinux 0xcb34b060 crypto_register_scomps +EXPORT_SYMBOL_GPL vmlinux 0xcb3bfe2c unregister_acpi_bus_type +EXPORT_SYMBOL_GPL vmlinux 0xcb5a258e rtm_getroute_parse_ip_proto +EXPORT_SYMBOL_GPL vmlinux 0xcb72f689 sdio_register_driver +EXPORT_SYMBOL_GPL vmlinux 0xcb80f0fc usb_put_hcd +EXPORT_SYMBOL_GPL vmlinux 0xcb8a461c hv_stimer_legacy_cleanup +EXPORT_SYMBOL_GPL vmlinux 0xcb8d61d3 skb_send_sock_locked +EXPORT_SYMBOL_GPL vmlinux 0xcb970751 stop_machine +EXPORT_SYMBOL_GPL vmlinux 0xcb98827a regulator_set_voltage_time +EXPORT_SYMBOL_GPL vmlinux 0xcba07ca9 usb_ep0_reinit +EXPORT_SYMBOL_GPL vmlinux 0xcba5c847 device_for_each_child +EXPORT_SYMBOL_GPL vmlinux 0xcba9e979 blk_queue_max_discard_segments +EXPORT_SYMBOL_GPL vmlinux 0xcbadb25c event_triggers_post_call +EXPORT_SYMBOL_GPL vmlinux 0xcbb025ac ata_cable_unknown +EXPORT_SYMBOL_GPL vmlinux 0xcbbc4b7f i2c_for_each_dev +EXPORT_SYMBOL_GPL vmlinux 0xcbbd2df1 extcon_register_notifier +EXPORT_SYMBOL_GPL vmlinux 0xcbc676c3 ata_link_next +EXPORT_SYMBOL_GPL vmlinux 0xcbc96e55 spi_mem_driver_unregister +EXPORT_SYMBOL_GPL vmlinux 0xcbcdd669 pwm_lpss_resume +EXPORT_SYMBOL_GPL vmlinux 0xcbd2a325 crypto_type_has_alg +EXPORT_SYMBOL_GPL vmlinux 0xcbd9922d ata_pci_shutdown_one +EXPORT_SYMBOL_GPL vmlinux 0xcbdb4ec1 md_stop_writes +EXPORT_SYMBOL_GPL vmlinux 0xcbdeb93d bus_unregister_notifier +EXPORT_SYMBOL_GPL vmlinux 0xcbe56bc2 zs_get_total_pages +EXPORT_SYMBOL_GPL vmlinux 0xcbf95760 kill_device +EXPORT_SYMBOL_GPL vmlinux 0xcbfec966 kobject_get_path +EXPORT_SYMBOL_GPL vmlinux 0xcc016982 nd_cmd_in_size +EXPORT_SYMBOL_GPL vmlinux 0xcc03cb9d pm_generic_thaw +EXPORT_SYMBOL_GPL vmlinux 0xcc1128b6 edac_device_alloc_ctl_info +EXPORT_SYMBOL_GPL vmlinux 0xcc135b46 xen_remap_pfn +EXPORT_SYMBOL_GPL vmlinux 0xcc1863db __pci_epc_create +EXPORT_SYMBOL_GPL vmlinux 0xcc2698d2 usb_hcd_start_port_resume +EXPORT_SYMBOL_GPL vmlinux 0xcc28a8c1 tcp_twsk_unique +EXPORT_SYMBOL_GPL vmlinux 0xcc2dbfd8 irq_domain_check_msi_remap +EXPORT_SYMBOL_GPL vmlinux 0xcc312197 clk_mux_ops +EXPORT_SYMBOL_GPL vmlinux 0xcc39c03e nvmem_unregister +EXPORT_SYMBOL_GPL vmlinux 0xcc39d690 cgrp_dfl_root +EXPORT_SYMBOL_GPL vmlinux 0xcc504938 clk_hw_get_parent_index +EXPORT_SYMBOL_GPL vmlinux 0xcc5104d0 copy_mc_to_kernel +EXPORT_SYMBOL_GPL vmlinux 0xcc5ae9e8 __synth_event_gen_cmd_start +EXPORT_SYMBOL_GPL vmlinux 0xcc5d33c7 da9052_disable_irq +EXPORT_SYMBOL_GPL vmlinux 0xcc5eeb92 debugfs_file_get +EXPORT_SYMBOL_GPL vmlinux 0xcc739adb css_next_descendant_pre +EXPORT_SYMBOL_GPL vmlinux 0xcc9268fc hwpoison_filter_enable +EXPORT_SYMBOL_GPL vmlinux 0xcc935375 walk_iomem_res_desc +EXPORT_SYMBOL_GPL vmlinux 0xcc9385cb gpiochip_get_data +EXPORT_SYMBOL_GPL vmlinux 0xcc9bfd24 blk_queue_write_cache +EXPORT_SYMBOL_GPL vmlinux 0xcc9e8c2b perf_msr_probe +EXPORT_SYMBOL_GPL vmlinux 0xcca83668 usb_set_device_state +EXPORT_SYMBOL_GPL vmlinux 0xccb3a4bc pci_set_pcie_reset_state +EXPORT_SYMBOL_GPL vmlinux 0xccb93937 iomap_releasepage +EXPORT_SYMBOL_GPL vmlinux 0xcccaf9df shmem_read_mapping_page_gfp +EXPORT_SYMBOL_GPL vmlinux 0xcccd2b32 power_supply_class +EXPORT_SYMBOL_GPL vmlinux 0xcccfb2fa sata_deb_timing_hotplug +EXPORT_SYMBOL_GPL vmlinux 0xccd429aa perf_event_sysfs_show +EXPORT_SYMBOL_GPL vmlinux 0xccd86806 ata_id_string +EXPORT_SYMBOL_GPL vmlinux 0xccdf829f dev_forward_skb +EXPORT_SYMBOL_GPL vmlinux 0xccea4e34 perf_get_x86_pmu_capability +EXPORT_SYMBOL_GPL vmlinux 0xccec296c nvdimm_has_cache +EXPORT_SYMBOL_GPL vmlinux 0xccf25c66 cpufreq_dbs_governor_limits +EXPORT_SYMBOL_GPL vmlinux 0xccf52bc9 sfp_upstream_start +EXPORT_SYMBOL_GPL vmlinux 0xccf59fda apply_to_page_range +EXPORT_SYMBOL_GPL vmlinux 0xccf77be0 device_add_properties +EXPORT_SYMBOL_GPL vmlinux 0xccfcfa64 i2c_generic_scl_recovery +EXPORT_SYMBOL_GPL vmlinux 0xcd24e146 hash_digest_size +EXPORT_SYMBOL_GPL vmlinux 0xcd3e5c7c acpi_release_memory +EXPORT_SYMBOL_GPL vmlinux 0xcd404983 crypto_register_skcipher +EXPORT_SYMBOL_GPL vmlinux 0xcd444e03 create_signature +EXPORT_SYMBOL_GPL vmlinux 0xcd4d5b93 inet_csk_addr2sockaddr +EXPORT_SYMBOL_GPL vmlinux 0xcd4e8dd7 syscon_regmap_lookup_by_phandle_args +EXPORT_SYMBOL_GPL vmlinux 0xcd6f2dc9 nf_log_buf_add +EXPORT_SYMBOL_GPL vmlinux 0xcd81a945 switch_fpu_return +EXPORT_SYMBOL_GPL vmlinux 0xcd91b127 system_highpri_wq +EXPORT_SYMBOL_GPL vmlinux 0xcd9cd2ff wakeme_after_rcu +EXPORT_SYMBOL_GPL vmlinux 0xcdb6adcc ras_userspace_consumers +EXPORT_SYMBOL_GPL vmlinux 0xcdbca26c devlink_params_publish +EXPORT_SYMBOL_GPL vmlinux 0xcdca3691 nr_irqs +EXPORT_SYMBOL_GPL vmlinux 0xcdcf5273 pm_clk_add_clk +EXPORT_SYMBOL_GPL vmlinux 0xcdd1e305 dev_pm_opp_disable +EXPORT_SYMBOL_GPL vmlinux 0xcde26600 cppc_get_transition_latency +EXPORT_SYMBOL_GPL vmlinux 0xce0a4020 xenbus_directory +EXPORT_SYMBOL_GPL vmlinux 0xce1d3272 devm_add_action +EXPORT_SYMBOL_GPL vmlinux 0xce24e288 gpiod_direction_output +EXPORT_SYMBOL_GPL vmlinux 0xce3144e5 genphy_c45_an_config_aneg +EXPORT_SYMBOL_GPL vmlinux 0xce34720a regmap_reinit_cache +EXPORT_SYMBOL_GPL vmlinux 0xce3f9556 sysfs_create_mount_point +EXPORT_SYMBOL_GPL vmlinux 0xce465bd2 debugfs_remove +EXPORT_SYMBOL_GPL vmlinux 0xce4d84e0 acpi_is_pnp_device +EXPORT_SYMBOL_GPL vmlinux 0xce613e28 trace_get_event_file +EXPORT_SYMBOL_GPL vmlinux 0xce6417d9 sdio_get_host_pm_caps +EXPORT_SYMBOL_GPL vmlinux 0xce6db656 rcu_is_watching +EXPORT_SYMBOL_GPL vmlinux 0xce6dd495 i2c_dw_validate_speed +EXPORT_SYMBOL_GPL vmlinux 0xce6e2d1e pcie_has_flr +EXPORT_SYMBOL_GPL vmlinux 0xce81755f iommu_register_device_fault_handler +EXPORT_SYMBOL_GPL vmlinux 0xce879052 __devm_create_dev_dax +EXPORT_SYMBOL_GPL vmlinux 0xce905ecc wm8350_reg_unlock +EXPORT_SYMBOL_GPL vmlinux 0xce9767e0 thermal_zone_device_unregister +EXPORT_SYMBOL_GPL vmlinux 0xce9bc53a wm8350_gpio_config +EXPORT_SYMBOL_GPL vmlinux 0xcea03117 gpiod_get_raw_array_value_cansleep +EXPORT_SYMBOL_GPL vmlinux 0xcea51ce6 ata_sff_data_xfer +EXPORT_SYMBOL_GPL vmlinux 0xceafd233 devm_hwmon_device_register_with_info +EXPORT_SYMBOL_GPL vmlinux 0xceb1f126 mpi_read_raw_data +EXPORT_SYMBOL_GPL vmlinux 0xceb66bec sched_clock_cpu +EXPORT_SYMBOL_GPL vmlinux 0xcec6b7d3 key_type_user +EXPORT_SYMBOL_GPL vmlinux 0xcec9132e set_primary_fwnode +EXPORT_SYMBOL_GPL vmlinux 0xcee1641c kgdb_unregister_nmi_console +EXPORT_SYMBOL_GPL vmlinux 0xcee26726 sdio_disable_func +EXPORT_SYMBOL_GPL vmlinux 0xcee5f58c devres_alloc_node +EXPORT_SYMBOL_GPL vmlinux 0xceed8318 ibft_addr +EXPORT_SYMBOL_GPL vmlinux 0xcefd8927 blk_mq_alloc_request_hctx +EXPORT_SYMBOL_GPL vmlinux 0xcf04ed81 bpf_event_output +EXPORT_SYMBOL_GPL vmlinux 0xcf07d8b1 irq_domain_translate_onecell +EXPORT_SYMBOL_GPL vmlinux 0xcf0fe8f2 ata_sas_port_suspend +EXPORT_SYMBOL_GPL vmlinux 0xcf24e7b0 pci_find_ht_capability +EXPORT_SYMBOL_GPL vmlinux 0xcf3f0ed7 __platform_driver_register +EXPORT_SYMBOL_GPL vmlinux 0xcf54ea93 async_unregister_domain +EXPORT_SYMBOL_GPL vmlinux 0xcf564f90 ehci_setup +EXPORT_SYMBOL_GPL vmlinux 0xcf62096b pm_clk_runtime_resume +EXPORT_SYMBOL_GPL vmlinux 0xcf6399ad regulator_list_voltage_table +EXPORT_SYMBOL_GPL vmlinux 0xcf6d08c5 irq_get_domain_generic_chip +EXPORT_SYMBOL_GPL vmlinux 0xcf808855 lwtunnel_output +EXPORT_SYMBOL_GPL vmlinux 0xcf83c7ed wm831x_bulk_read +EXPORT_SYMBOL_GPL vmlinux 0xcf8bab8e fsnotify_parent +EXPORT_SYMBOL_GPL vmlinux 0xcfaaca47 regulator_get_bypass_regmap +EXPORT_SYMBOL_GPL vmlinux 0xcfbb4211 regulator_bulk_unregister_supply_alias +EXPORT_SYMBOL_GPL vmlinux 0xcfbbb2f9 dev_attr_ncq_prio_enable +EXPORT_SYMBOL_GPL vmlinux 0xcfc15f4b rht_bucket_nested_insert +EXPORT_SYMBOL_GPL vmlinux 0xcfc3e416 ncsi_unregister_dev +EXPORT_SYMBOL_GPL vmlinux 0xcfc5108a devlink_fmsg_u8_pair_put +EXPORT_SYMBOL_GPL vmlinux 0xcfc67822 devm_clk_unregister +EXPORT_SYMBOL_GPL vmlinux 0xcfc7b4e4 rcu_barrier_tasks_trace +EXPORT_SYMBOL_GPL vmlinux 0xcfcf9d09 lp8788_read_byte +EXPORT_SYMBOL_GPL vmlinux 0xcfd29a75 dev_pm_opp_get_freq +EXPORT_SYMBOL_GPL vmlinux 0xcfd30d71 acpi_os_map_memory +EXPORT_SYMBOL_GPL vmlinux 0xcfd9e6b3 cpufreq_driver_resolve_freq +EXPORT_SYMBOL_GPL vmlinux 0xcff508bc devm_gpiod_put_array +EXPORT_SYMBOL_GPL vmlinux 0xd0161898 fscrypt_get_symlink +EXPORT_SYMBOL_GPL vmlinux 0xd02de3bd synth_event_gen_cmd_array_start +EXPORT_SYMBOL_GPL vmlinux 0xd02eb766 sync_page_io +EXPORT_SYMBOL_GPL vmlinux 0xd03470e5 ata_bmdma_port_start +EXPORT_SYMBOL_GPL vmlinux 0xd036cdc4 fwnode_graph_get_next_endpoint +EXPORT_SYMBOL_GPL vmlinux 0xd03eaf4c schedule_hrtimeout_range +EXPORT_SYMBOL_GPL vmlinux 0xd0458ccb xenbus_strstate +EXPORT_SYMBOL_GPL vmlinux 0xd048333d xhci_resume +EXPORT_SYMBOL_GPL vmlinux 0xd04ed230 devm_gpio_request +EXPORT_SYMBOL_GPL vmlinux 0xd05fe47f irq_chip_enable_parent +EXPORT_SYMBOL_GPL vmlinux 0xd06524ba raw_notifier_chain_unregister +EXPORT_SYMBOL_GPL vmlinux 0xd067d3c5 system_freezable_power_efficient_wq +EXPORT_SYMBOL_GPL vmlinux 0xd06a68b3 dev_pm_opp_put_prop_name +EXPORT_SYMBOL_GPL vmlinux 0xd075ce89 dev_pm_opp_put_supported_hw +EXPORT_SYMBOL_GPL vmlinux 0xd08f903d led_trigger_write +EXPORT_SYMBOL_GPL vmlinux 0xd09911a6 acpi_dev_get_irq_type +EXPORT_SYMBOL_GPL vmlinux 0xd0b364a0 sata_scr_write +EXPORT_SYMBOL_GPL vmlinux 0xd0bed2d0 cgroup_attach_task_all +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 0xd0da7bfd phy_get +EXPORT_SYMBOL_GPL vmlinux 0xd0db0f12 run_dax +EXPORT_SYMBOL_GPL vmlinux 0xd119c3c1 rt_mutex_unlock +EXPORT_SYMBOL_GPL vmlinux 0xd12765b5 blk_rq_unprep_clone +EXPORT_SYMBOL_GPL vmlinux 0xd1339547 virtqueue_add_inbuf +EXPORT_SYMBOL_GPL vmlinux 0xd13f2a69 pci_create_slot +EXPORT_SYMBOL_GPL vmlinux 0xd159586c net_prio_cgrp_subsys_enabled_key +EXPORT_SYMBOL_GPL vmlinux 0xd15c4e4d crypto_grab_skcipher +EXPORT_SYMBOL_GPL vmlinux 0xd176228a regulator_get_exclusive +EXPORT_SYMBOL_GPL vmlinux 0xd18295f7 crypto_grab_akcipher +EXPORT_SYMBOL_GPL vmlinux 0xd182ab64 fat_time_unix2fat +EXPORT_SYMBOL_GPL vmlinux 0xd1a8a295 hwmon_notify_event +EXPORT_SYMBOL_GPL vmlinux 0xd1a9be20 ata_sas_slave_configure +EXPORT_SYMBOL_GPL vmlinux 0xd1b2abf6 device_attach +EXPORT_SYMBOL_GPL vmlinux 0xd1b435bf strp_stop +EXPORT_SYMBOL_GPL vmlinux 0xd1b749f1 icc_std_aggregate +EXPORT_SYMBOL_GPL vmlinux 0xd1c9ea0a blk_abort_request +EXPORT_SYMBOL_GPL vmlinux 0xd1cac7bf unregister_ftrace_direct +EXPORT_SYMBOL_GPL vmlinux 0xd1cbc23c add_timer_on +EXPORT_SYMBOL_GPL vmlinux 0xd1da535e pm_runtime_suspended_time +EXPORT_SYMBOL_GPL vmlinux 0xd1f28cc3 tty_put_char +EXPORT_SYMBOL_GPL vmlinux 0xd1f2eee2 nf_logger_find_get +EXPORT_SYMBOL_GPL vmlinux 0xd1f7451f skb_consume_udp +EXPORT_SYMBOL_GPL vmlinux 0xd1faf54c generic_device_group +EXPORT_SYMBOL_GPL vmlinux 0xd1fbc889 unregister_kprobe +EXPORT_SYMBOL_GPL vmlinux 0xd20bf6ba dcookie_unregister +EXPORT_SYMBOL_GPL vmlinux 0xd217e9e6 trace_set_clr_event +EXPORT_SYMBOL_GPL vmlinux 0xd21b61bd async_schedule_node_domain +EXPORT_SYMBOL_GPL vmlinux 0xd21fa4d2 do_splice_from +EXPORT_SYMBOL_GPL vmlinux 0xd24e9e8c klist_init +EXPORT_SYMBOL_GPL vmlinux 0xd260af0d ring_buffer_write +EXPORT_SYMBOL_GPL vmlinux 0xd269522f devm_acpi_dma_controller_free +EXPORT_SYMBOL_GPL vmlinux 0xd26cb53d __phy_modify_mmd +EXPORT_SYMBOL_GPL vmlinux 0xd273b1b1 __round_jiffies_up_relative +EXPORT_SYMBOL_GPL vmlinux 0xd2748762 fuse_get_unique +EXPORT_SYMBOL_GPL vmlinux 0xd27f215d gnttab_alloc_grant_references +EXPORT_SYMBOL_GPL vmlinux 0xd290a7ac devm_free_percpu +EXPORT_SYMBOL_GPL vmlinux 0xd2983702 anon_transport_class_register +EXPORT_SYMBOL_GPL vmlinux 0xd2b0870c dev_pm_opp_put +EXPORT_SYMBOL_GPL vmlinux 0xd2b10a05 ata_timing_find_mode +EXPORT_SYMBOL_GPL vmlinux 0xd2c8ae77 tracepoint_probe_unregister +EXPORT_SYMBOL_GPL vmlinux 0xd2d47b84 synth_event_trace_start +EXPORT_SYMBOL_GPL vmlinux 0xd2dd4812 phy_basic_features +EXPORT_SYMBOL_GPL vmlinux 0xd2fb7c0a serial8250_get_port +EXPORT_SYMBOL_GPL vmlinux 0xd31a2ac5 ring_buffer_oldest_event_ts +EXPORT_SYMBOL_GPL vmlinux 0xd32694be sbitmap_prepare_to_wait +EXPORT_SYMBOL_GPL vmlinux 0xd329c63b kernfs_notify +EXPORT_SYMBOL_GPL vmlinux 0xd32a0446 acpi_dma_request_slave_chan_by_name +EXPORT_SYMBOL_GPL vmlinux 0xd3543f33 nf_hook_entries_insert_raw +EXPORT_SYMBOL_GPL vmlinux 0xd361eae4 blk_mq_flush_busy_ctxs +EXPORT_SYMBOL_GPL vmlinux 0xd3674b16 pci_disable_pasid +EXPORT_SYMBOL_GPL vmlinux 0xd36760ef __usb_get_extra_descriptor +EXPORT_SYMBOL_GPL vmlinux 0xd36dd01b devm_pinctrl_get +EXPORT_SYMBOL_GPL vmlinux 0xd37287b5 percpu_down_write +EXPORT_SYMBOL_GPL vmlinux 0xd3752c27 atomic_notifier_call_chain +EXPORT_SYMBOL_GPL vmlinux 0xd39e9848 put_itimerspec64 +EXPORT_SYMBOL_GPL vmlinux 0xd3b3beb7 acpi_processor_get_performance_info +EXPORT_SYMBOL_GPL vmlinux 0xd3bfa753 usb_bus_idr_lock +EXPORT_SYMBOL_GPL vmlinux 0xd3c6128a crypto_shash_update +EXPORT_SYMBOL_GPL vmlinux 0xd3db97c8 agp_remove_bridge +EXPORT_SYMBOL_GPL vmlinux 0xd3e2d489 tcp_enter_memory_pressure +EXPORT_SYMBOL_GPL vmlinux 0xd3ebb791 gnttab_unmap_refs +EXPORT_SYMBOL_GPL vmlinux 0xd3f0fbf3 tty_ldisc_ref +EXPORT_SYMBOL_GPL vmlinux 0xd3f8f3f4 page_poisoning_enabled +EXPORT_SYMBOL_GPL vmlinux 0xd3fab8fa dw_pcie_read_dbi +EXPORT_SYMBOL_GPL vmlinux 0xd4034828 system_freezable_wq +EXPORT_SYMBOL_GPL vmlinux 0xd40a3757 vring_del_virtqueue +EXPORT_SYMBOL_GPL vmlinux 0xd4155e9f irq_domain_add_simple +EXPORT_SYMBOL_GPL vmlinux 0xd416f63f split_page +EXPORT_SYMBOL_GPL vmlinux 0xd426dbc4 erst_get_record_count +EXPORT_SYMBOL_GPL vmlinux 0xd43e2b1e switchdev_port_obj_add +EXPORT_SYMBOL_GPL vmlinux 0xd44a5eac kgdb_register_nmi_console +EXPORT_SYMBOL_GPL vmlinux 0xd4597869 dw_pcie_link_set_n_fts +EXPORT_SYMBOL_GPL vmlinux 0xd46af5ef cppc_get_perf_ctrs +EXPORT_SYMBOL_GPL vmlinux 0xd489fe0e virtio_add_status +EXPORT_SYMBOL_GPL vmlinux 0xd48fe6b1 blk_trace_startstop +EXPORT_SYMBOL_GPL vmlinux 0xd4a2902b tty_buffer_space_avail +EXPORT_SYMBOL_GPL vmlinux 0xd4a4a3df acpi_debugfs_dir +EXPORT_SYMBOL_GPL vmlinux 0xd4a8fc5b fwnode_get_name +EXPORT_SYMBOL_GPL vmlinux 0xd4a958cd acpi_cppc_processor_probe +EXPORT_SYMBOL_GPL vmlinux 0xd4b6157e devlink_health_reporter_recovery_done +EXPORT_SYMBOL_GPL vmlinux 0xd4bd7812 crypto_register_aeads +EXPORT_SYMBOL_GPL vmlinux 0xd4bff02b udp_abort +EXPORT_SYMBOL_GPL vmlinux 0xd4c14632 system_unbound_wq +EXPORT_SYMBOL_GPL vmlinux 0xd4c5d9dd acpi_unbind_one +EXPORT_SYMBOL_GPL vmlinux 0xd4cb8603 dev_pm_opp_get_opp_count +EXPORT_SYMBOL_GPL vmlinux 0xd4cba664 nf_route +EXPORT_SYMBOL_GPL vmlinux 0xd4cfdd91 platform_device_register_full +EXPORT_SYMBOL_GPL vmlinux 0xd4e6d7e0 linear_range_get_value +EXPORT_SYMBOL_GPL vmlinux 0xd4f0e0b6 power_supply_powers +EXPORT_SYMBOL_GPL vmlinux 0xd5089e4f dst_cache_get +EXPORT_SYMBOL_GPL vmlinux 0xd51049ac tty_ldisc_deref +EXPORT_SYMBOL_GPL vmlinux 0xd5297abf irq_domain_xlate_twocell +EXPORT_SYMBOL_GPL vmlinux 0xd5301b2c linear_range_get_max_value +EXPORT_SYMBOL_GPL vmlinux 0xd539d32a serial8250_do_get_mctrl +EXPORT_SYMBOL_GPL vmlinux 0xd53c67b3 unregister_net_sysctl_table +EXPORT_SYMBOL_GPL vmlinux 0xd54ff6c8 sock_diag_check_cookie +EXPORT_SYMBOL_GPL vmlinux 0xd5566f42 serial8250_em485_stop_tx +EXPORT_SYMBOL_GPL vmlinux 0xd55ad93b iommu_group_get_iommudata +EXPORT_SYMBOL_GPL vmlinux 0xd5777070 pci_user_read_config_dword +EXPORT_SYMBOL_GPL vmlinux 0xd57932cd of_led_get +EXPORT_SYMBOL_GPL vmlinux 0xd57fbd31 hwrng_unregister +EXPORT_SYMBOL_GPL vmlinux 0xd590698a devm_regmap_del_irq_chip +EXPORT_SYMBOL_GPL vmlinux 0xd59a1587 linkmode_resolve_pause +EXPORT_SYMBOL_GPL vmlinux 0xd5ad357f __tracepoint_mc_event +EXPORT_SYMBOL_GPL vmlinux 0xd5b16ac8 relay_switch_subbuf +EXPORT_SYMBOL_GPL vmlinux 0xd5b57ab3 __tracepoint_rpm_resume +EXPORT_SYMBOL_GPL vmlinux 0xd5f3bb7b set_memory_encrypted +EXPORT_SYMBOL_GPL vmlinux 0xd6056f0f gpiochip_add_pingroup_range +EXPORT_SYMBOL_GPL vmlinux 0xd61625b4 bpf_prog_destroy +EXPORT_SYMBOL_GPL vmlinux 0xd642bba8 eventfd_fget +EXPORT_SYMBOL_GPL vmlinux 0xd64ed259 __memcat_p +EXPORT_SYMBOL_GPL vmlinux 0xd67364f7 eventfd_ctx_fdget +EXPORT_SYMBOL_GPL vmlinux 0xd67b2b2e wm831x_reg_write +EXPORT_SYMBOL_GPL vmlinux 0xd693326a device_set_wakeup_enable +EXPORT_SYMBOL_GPL vmlinux 0xd6a87246 nf_hook_entries_delete_raw +EXPORT_SYMBOL_GPL vmlinux 0xd6ad4581 noop_direct_IO +EXPORT_SYMBOL_GPL vmlinux 0xd6b8b68f devm_of_led_get +EXPORT_SYMBOL_GPL vmlinux 0xd6c14ac7 __xenbus_register_backend +EXPORT_SYMBOL_GPL vmlinux 0xd6c15054 platform_msi_domain_alloc_irqs +EXPORT_SYMBOL_GPL vmlinux 0xd6f135b9 pci_platform_power_transition +EXPORT_SYMBOL_GPL vmlinux 0xd6feefa5 agp_num_entries +EXPORT_SYMBOL_GPL vmlinux 0xd724a45a pwmchip_add_with_polarity +EXPORT_SYMBOL_GPL vmlinux 0xd72feba2 xenbus_read_driver_state +EXPORT_SYMBOL_GPL vmlinux 0xd7360fb1 usb_get_dr_mode +EXPORT_SYMBOL_GPL vmlinux 0xd7399d2a efivar_entry_iter_end +EXPORT_SYMBOL_GPL vmlinux 0xd744ab7f switchdev_port_attr_set +EXPORT_SYMBOL_GPL vmlinux 0xd74a3865 devlink_dpipe_headers_register +EXPORT_SYMBOL_GPL vmlinux 0xd75b20aa rsa_parse_priv_key +EXPORT_SYMBOL_GPL vmlinux 0xd75b2fd0 crypto_aead_setkey +EXPORT_SYMBOL_GPL vmlinux 0xd768e985 regulator_has_full_constraints +EXPORT_SYMBOL_GPL vmlinux 0xd774957d mpi_write_to_sgl +EXPORT_SYMBOL_GPL vmlinux 0xd77a9f40 skb_to_sgvec +EXPORT_SYMBOL_GPL vmlinux 0xd7894c99 amd_iommu_is_attach_deferred +EXPORT_SYMBOL_GPL vmlinux 0xd7c39fff free_iova +EXPORT_SYMBOL_GPL vmlinux 0xd7cea889 edac_mod_work +EXPORT_SYMBOL_GPL vmlinux 0xd7d0a37f devm_acpi_dev_add_driver_gpios +EXPORT_SYMBOL_GPL vmlinux 0xd7d1c8cb spi_statistics_add_transfer_stats +EXPORT_SYMBOL_GPL vmlinux 0xd7e029d9 xenbus_dev_probe +EXPORT_SYMBOL_GPL vmlinux 0xd7e4cb12 devm_of_phy_provider_unregister +EXPORT_SYMBOL_GPL vmlinux 0xd7f0428b locks_alloc_lock +EXPORT_SYMBOL_GPL vmlinux 0xd809cc83 sched_trace_cfs_rq_path +EXPORT_SYMBOL_GPL vmlinux 0xd8209560 gpiod_set_array_value +EXPORT_SYMBOL_GPL vmlinux 0xd82a2bea debugfs_create_x32 +EXPORT_SYMBOL_GPL vmlinux 0xd84b6e4e class_dev_iter_next +EXPORT_SYMBOL_GPL vmlinux 0xd84d35bd dax_read_lock +EXPORT_SYMBOL_GPL vmlinux 0xd868db20 pci_user_read_config_word +EXPORT_SYMBOL_GPL vmlinux 0xd87fc0a0 usb_amd_prefetch_quirk +EXPORT_SYMBOL_GPL vmlinux 0xd885fcfe trace_event_buffer_lock_reserve +EXPORT_SYMBOL_GPL vmlinux 0xd8873373 fwnode_graph_get_port_parent +EXPORT_SYMBOL_GPL vmlinux 0xd897e296 ata_sff_irq_on +EXPORT_SYMBOL_GPL vmlinux 0xd89cce4a gnttab_unmap_refs_async +EXPORT_SYMBOL_GPL vmlinux 0xd8b58aaa wp_shared_mapping_range +EXPORT_SYMBOL_GPL vmlinux 0xd8be3bd3 devm_thermal_add_hwmon_sysfs +EXPORT_SYMBOL_GPL vmlinux 0xd8c3824a regmap_read +EXPORT_SYMBOL_GPL vmlinux 0xd8d68ab1 dmi_memdev_type +EXPORT_SYMBOL_GPL vmlinux 0xd8e45a4e policy_has_boost_freq +EXPORT_SYMBOL_GPL vmlinux 0xd8fbb14d net_cls_cgrp_subsys_on_dfl_key +EXPORT_SYMBOL_GPL vmlinux 0xd9004902 sched_trace_cfs_rq_avg +EXPORT_SYMBOL_GPL vmlinux 0xd9096fcf crypto_alloc_ahash +EXPORT_SYMBOL_GPL vmlinux 0xd90b4c43 usb_bulk_msg +EXPORT_SYMBOL_GPL vmlinux 0xd90fbf48 pci_msi_mask_irq +EXPORT_SYMBOL_GPL vmlinux 0xd919806a amd_cache_northbridges +EXPORT_SYMBOL_GPL vmlinux 0xd91e5c24 __bio_add_page +EXPORT_SYMBOL_GPL vmlinux 0xd92f0791 leds_list_lock +EXPORT_SYMBOL_GPL vmlinux 0xd93a5cb1 efivar_variable_is_removable +EXPORT_SYMBOL_GPL vmlinux 0xd93bc62f skb_zerocopy +EXPORT_SYMBOL_GPL vmlinux 0xd93cbedb dev_pm_opp_set_prop_name +EXPORT_SYMBOL_GPL vmlinux 0xd94a6c9f nfnl_ct_hook +EXPORT_SYMBOL_GPL vmlinux 0xd95bacdd devres_close_group +EXPORT_SYMBOL_GPL vmlinux 0xd96778f4 rio_release_inb_pwrite +EXPORT_SYMBOL_GPL vmlinux 0xd96babb4 interval_tree_iter_next +EXPORT_SYMBOL_GPL vmlinux 0xd978bb7d pinctrl_utils_add_map_mux +EXPORT_SYMBOL_GPL vmlinux 0xd97a8276 rio_register_driver +EXPORT_SYMBOL_GPL vmlinux 0xd9803a66 xenbus_grant_ring +EXPORT_SYMBOL_GPL vmlinux 0xd98e0570 tpm2_probe +EXPORT_SYMBOL_GPL vmlinux 0xd991a5ec devlink_dpipe_action_put +EXPORT_SYMBOL_GPL vmlinux 0xd9928a8d cpufreq_enable_fast_switch +EXPORT_SYMBOL_GPL vmlinux 0xd9b4b2f6 ata_timing_compute +EXPORT_SYMBOL_GPL vmlinux 0xd9bd2a03 cpuidle_disable_device +EXPORT_SYMBOL_GPL vmlinux 0xd9c5b819 devlink_port_param_value_changed +EXPORT_SYMBOL_GPL vmlinux 0xd9c8292f serial8250_em485_start_tx +EXPORT_SYMBOL_GPL vmlinux 0xd9d5d879 sbitmap_queue_resize +EXPORT_SYMBOL_GPL vmlinux 0xd9e24457 ring_buffer_peek +EXPORT_SYMBOL_GPL vmlinux 0xd9e45be8 regulator_get_voltage_sel_regmap +EXPORT_SYMBOL_GPL vmlinux 0xd9ee78ac wm831x_set_bits +EXPORT_SYMBOL_GPL vmlinux 0xd9ff2172 ezx_pcap_write +EXPORT_SYMBOL_GPL vmlinux 0xda08b513 __tcp_bpf_recvmsg +EXPORT_SYMBOL_GPL vmlinux 0xda0c37a5 security_path_chmod +EXPORT_SYMBOL_GPL vmlinux 0xda0eb9eb __clk_get_hw +EXPORT_SYMBOL_GPL vmlinux 0xda148247 usb_hcd_giveback_urb +EXPORT_SYMBOL_GPL vmlinux 0xda15a15d alarm_forward +EXPORT_SYMBOL_GPL vmlinux 0xda1f78ee clear_hv_tscchange_cb +EXPORT_SYMBOL_GPL vmlinux 0xda320d31 sfp_module_start +EXPORT_SYMBOL_GPL vmlinux 0xda46c472 devfreq_event_enable_edev +EXPORT_SYMBOL_GPL vmlinux 0xda73059a lp8788_update_bits +EXPORT_SYMBOL_GPL vmlinux 0xda7912d4 freq_qos_add_request +EXPORT_SYMBOL_GPL vmlinux 0xda7b47e8 regulator_get_current_limit_regmap +EXPORT_SYMBOL_GPL vmlinux 0xda882127 extcon_get_state +EXPORT_SYMBOL_GPL vmlinux 0xda89d748 screen_glyph +EXPORT_SYMBOL_GPL vmlinux 0xda8e1302 software_node_find_by_name +EXPORT_SYMBOL_GPL vmlinux 0xda949beb lwtunnel_encap_del_ops +EXPORT_SYMBOL_GPL vmlinux 0xda9b095b mmput +EXPORT_SYMBOL_GPL vmlinux 0xdaa06dc1 acpi_lpat_raw_to_temp +EXPORT_SYMBOL_GPL vmlinux 0xdab51ef0 mmc_abort_tuning +EXPORT_SYMBOL_GPL vmlinux 0xdab5a1eb interval_tree_insert +EXPORT_SYMBOL_GPL vmlinux 0xdabb3eaf perf_event_read_value +EXPORT_SYMBOL_GPL vmlinux 0xdad98406 blk_register_queue +EXPORT_SYMBOL_GPL vmlinux 0xdadaec2b dax_iomap_rw +EXPORT_SYMBOL_GPL vmlinux 0xdade056f iommu_device_register +EXPORT_SYMBOL_GPL vmlinux 0xdae75388 xenbus_watch_pathfmt +EXPORT_SYMBOL_GPL vmlinux 0xdaf3c7a8 cpufreq_cpu_put +EXPORT_SYMBOL_GPL vmlinux 0xdaf4dfb3 fb_mode_option +EXPORT_SYMBOL_GPL vmlinux 0xdaf5c16e __cookie_v4_check +EXPORT_SYMBOL_GPL vmlinux 0xdafcdc3a ktime_get_snapshot +EXPORT_SYMBOL_GPL vmlinux 0xdb012301 ip_fib_metrics_init +EXPORT_SYMBOL_GPL vmlinux 0xdb1765b3 ata_bmdma_irq_clear +EXPORT_SYMBOL_GPL vmlinux 0xdb25da3e irq_work_queue +EXPORT_SYMBOL_GPL vmlinux 0xdb2b18d6 acpi_cppc_processor_exit +EXPORT_SYMBOL_GPL vmlinux 0xdb5fa0f7 input_ff_erase +EXPORT_SYMBOL_GPL vmlinux 0xdb6177d4 dax_inode +EXPORT_SYMBOL_GPL vmlinux 0xdb63a944 acpi_lpat_get_conversion_table +EXPORT_SYMBOL_GPL vmlinux 0xdb735885 alarm_cancel +EXPORT_SYMBOL_GPL vmlinux 0xdb74bdc9 of_pwm_xlate_with_flags +EXPORT_SYMBOL_GPL vmlinux 0xdb86c329 usb_reset_endpoint +EXPORT_SYMBOL_GPL vmlinux 0xdb8a1b3f usermodehelper_read_trylock +EXPORT_SYMBOL_GPL vmlinux 0xdb8b7a1d xen_xlate_remap_gfn_array +EXPORT_SYMBOL_GPL vmlinux 0xdb92ad02 input_ff_create +EXPORT_SYMBOL_GPL vmlinux 0xdb94917e ata_bmdma_post_internal_cmd +EXPORT_SYMBOL_GPL vmlinux 0xdb9e8a91 crypto_drop_spawn +EXPORT_SYMBOL_GPL vmlinux 0xdba03ad9 efivars_register +EXPORT_SYMBOL_GPL vmlinux 0xdba19780 page_cache_async_readahead +EXPORT_SYMBOL_GPL vmlinux 0xdbbaca64 usb_unlocked_enable_lpm +EXPORT_SYMBOL_GPL vmlinux 0xdbc0d2ef led_trigger_blink_oneshot +EXPORT_SYMBOL_GPL vmlinux 0xdbcd9297 get_kernel_pages +EXPORT_SYMBOL_GPL vmlinux 0xdbd10868 sdio_f0_readb +EXPORT_SYMBOL_GPL vmlinux 0xdbd1767c regcache_mark_dirty +EXPORT_SYMBOL_GPL vmlinux 0xdbd297b8 sched_setscheduler +EXPORT_SYMBOL_GPL vmlinux 0xdbd6ee3d aead_register_instance +EXPORT_SYMBOL_GPL vmlinux 0xdbe24667 fib_alias_hw_flags_set +EXPORT_SYMBOL_GPL vmlinux 0xdbe504ff sock_diag_unregister_inet_compat +EXPORT_SYMBOL_GPL vmlinux 0xdbeb660b fuse_conn_init +EXPORT_SYMBOL_GPL vmlinux 0xdbf29726 __tracepoint_neigh_timer_handler +EXPORT_SYMBOL_GPL vmlinux 0xdbf7cb70 mpi_get_nbits +EXPORT_SYMBOL_GPL vmlinux 0xdbfc976f pci_assign_unassigned_bridge_resources +EXPORT_SYMBOL_GPL vmlinux 0xdc0c77c6 crypto_register_template +EXPORT_SYMBOL_GPL vmlinux 0xdc14a211 xen_hvm_evtchn_do_upcall +EXPORT_SYMBOL_GPL vmlinux 0xdc1d2a96 inet_csk_listen_stop +EXPORT_SYMBOL_GPL vmlinux 0xdc1ec5ba fscrypt_ioctl_remove_key_all_users +EXPORT_SYMBOL_GPL vmlinux 0xdc206c6c devm_regulator_bulk_get +EXPORT_SYMBOL_GPL vmlinux 0xdc21e866 hrtimer_forward +EXPORT_SYMBOL_GPL vmlinux 0xdc23a7cb regmap_noinc_read +EXPORT_SYMBOL_GPL vmlinux 0xdc45a5db edac_stop_work +EXPORT_SYMBOL_GPL vmlinux 0xdc45da74 fixed_phy_set_link_update +EXPORT_SYMBOL_GPL vmlinux 0xdc53604e regulator_unregister +EXPORT_SYMBOL_GPL vmlinux 0xdc6596fa irq_set_parent +EXPORT_SYMBOL_GPL vmlinux 0xdc667e35 ata_sff_pause +EXPORT_SYMBOL_GPL vmlinux 0xdc6699cb acpi_dev_free_resource_list +EXPORT_SYMBOL_GPL vmlinux 0xdc7df67f apei_exec_ctx_init +EXPORT_SYMBOL_GPL vmlinux 0xdc825d6c usb_amd_quirk_pll_disable +EXPORT_SYMBOL_GPL vmlinux 0xdc885007 dma_buf_pin +EXPORT_SYMBOL_GPL vmlinux 0xdc97af2e syscore_suspend +EXPORT_SYMBOL_GPL vmlinux 0xdc9d2cfb phy_power_on +EXPORT_SYMBOL_GPL vmlinux 0xdc9fa232 raw_notifier_chain_register +EXPORT_SYMBOL_GPL vmlinux 0xdcb5558f ata_sff_data_xfer32 +EXPORT_SYMBOL_GPL vmlinux 0xdcd14cbd ata_eh_freeze_port +EXPORT_SYMBOL_GPL vmlinux 0xdcd18d2f queue_iova +EXPORT_SYMBOL_GPL vmlinux 0xdce23a83 sbitmap_queue_wake_up +EXPORT_SYMBOL_GPL vmlinux 0xdcec6bf5 ata_qc_get_active +EXPORT_SYMBOL_GPL vmlinux 0xdcf075f0 synchronize_srcu_expedited +EXPORT_SYMBOL_GPL vmlinux 0xdcf44c3f wm8350_block_read +EXPORT_SYMBOL_GPL vmlinux 0xdcf853d3 spi_register_controller +EXPORT_SYMBOL_GPL vmlinux 0xdcfa9f7f irq_domain_set_hwirq_and_chip +EXPORT_SYMBOL_GPL vmlinux 0xdcfde52f sdio_retune_release +EXPORT_SYMBOL_GPL vmlinux 0xdd060504 kernel_read_file_from_fd +EXPORT_SYMBOL_GPL vmlinux 0xdd0762df set_worker_desc +EXPORT_SYMBOL_GPL vmlinux 0xdd0b0ab2 pci_create_root_bus +EXPORT_SYMBOL_GPL vmlinux 0xdd192f2a is_software_node +EXPORT_SYMBOL_GPL vmlinux 0xdd1cd0ad virtio_check_driver_offered_feature +EXPORT_SYMBOL_GPL vmlinux 0xdd1e6898 rio_add_net +EXPORT_SYMBOL_GPL vmlinux 0xdd269d9f call_switchdev_blocking_notifiers +EXPORT_SYMBOL_GPL vmlinux 0xdd391eff profile_event_unregister +EXPORT_SYMBOL_GPL vmlinux 0xdd396a88 fib_nh_common_release +EXPORT_SYMBOL_GPL vmlinux 0xdd3bedeb crypto_alloc_rng +EXPORT_SYMBOL_GPL vmlinux 0xdd477924 __devm_reset_control_get +EXPORT_SYMBOL_GPL vmlinux 0xdd54026c crypto_get_default_null_skcipher +EXPORT_SYMBOL_GPL vmlinux 0xdd626ee3 fuse_len_args +EXPORT_SYMBOL_GPL vmlinux 0xdd64c0d3 nf_nat_hook +EXPORT_SYMBOL_GPL vmlinux 0xdd6de47a fwnode_connection_find_match +EXPORT_SYMBOL_GPL vmlinux 0xdd7f0765 __tracepoint_powernv_throttle +EXPORT_SYMBOL_GPL vmlinux 0xdd87b6eb xdp_rxq_info_unreg_mem_model +EXPORT_SYMBOL_GPL vmlinux 0xdd8af756 fwnode_get_named_gpiod +EXPORT_SYMBOL_GPL vmlinux 0xdda0363d gpiochip_find +EXPORT_SYMBOL_GPL vmlinux 0xdda42bf8 rt_mutex_destroy +EXPORT_SYMBOL_GPL vmlinux 0xddbeeecc pci_lock_rescan_remove +EXPORT_SYMBOL_GPL vmlinux 0xddc36ab0 of_phy_simple_xlate +EXPORT_SYMBOL_GPL vmlinux 0xddc75fee intel_msic_irq_read +EXPORT_SYMBOL_GPL vmlinux 0xddc7d8f0 nvdimm_bus_register +EXPORT_SYMBOL_GPL vmlinux 0xdddc74ca dev_pm_qos_update_request +EXPORT_SYMBOL_GPL vmlinux 0xdde9d92d tpm_pm_resume +EXPORT_SYMBOL_GPL vmlinux 0xddf4da4c pci_epc_get +EXPORT_SYMBOL_GPL vmlinux 0xde09a94d xas_find +EXPORT_SYMBOL_GPL vmlinux 0xde16dda3 pwm_apply_state +EXPORT_SYMBOL_GPL vmlinux 0xde1f46a7 devm_request_free_mem_region +EXPORT_SYMBOL_GPL vmlinux 0xde2d3af0 acpi_dev_resource_ext_address_space +EXPORT_SYMBOL_GPL vmlinux 0xde54f4c5 driver_create_file +EXPORT_SYMBOL_GPL vmlinux 0xde6f1851 TSS_checkhmac1 +EXPORT_SYMBOL_GPL vmlinux 0xde7f528d inet_send_prepare +EXPORT_SYMBOL_GPL vmlinux 0xde8a608d devm_free_pages +EXPORT_SYMBOL_GPL vmlinux 0xde92001d anon_inode_getfile +EXPORT_SYMBOL_GPL vmlinux 0xde972d4e irq_find_mapping +EXPORT_SYMBOL_GPL vmlinux 0xde9ab8c7 xenbus_rm +EXPORT_SYMBOL_GPL vmlinux 0xde9f6e41 dm_bio_get_target_bio_nr +EXPORT_SYMBOL_GPL vmlinux 0xdea0b7f7 strp_done +EXPORT_SYMBOL_GPL vmlinux 0xdea97109 serdev_device_write_buf +EXPORT_SYMBOL_GPL vmlinux 0xdea9919b kmsg_dump_unregister +EXPORT_SYMBOL_GPL vmlinux 0xdeac34cf pm_runtime_set_memalloc_noio +EXPORT_SYMBOL_GPL vmlinux 0xdeae1631 driver_find +EXPORT_SYMBOL_GPL vmlinux 0xdebefcb9 tcp_register_congestion_control +EXPORT_SYMBOL_GPL vmlinux 0xdee46d90 dev_pm_opp_set_sharing_cpus +EXPORT_SYMBOL_GPL vmlinux 0xdee6a8ac simple_attr_read +EXPORT_SYMBOL_GPL vmlinux 0xdeefac98 pci_walk_bus +EXPORT_SYMBOL_GPL vmlinux 0xdef1d9e3 devlink_port_register +EXPORT_SYMBOL_GPL vmlinux 0xdeffa0a7 edac_raw_mc_handle_error +EXPORT_SYMBOL_GPL vmlinux 0xdf0266d3 ata_sas_port_alloc +EXPORT_SYMBOL_GPL vmlinux 0xdf0ca3f4 cpu_latency_qos_request_active +EXPORT_SYMBOL_GPL vmlinux 0xdf0f75c6 eventfd_signal +EXPORT_SYMBOL_GPL vmlinux 0xdf1882af dbgp_reset_prep +EXPORT_SYMBOL_GPL vmlinux 0xdf1c0910 blk_ksm_reprogram_all_keys +EXPORT_SYMBOL_GPL vmlinux 0xdf223247 __tracepoint_sched_overutilized_tp +EXPORT_SYMBOL_GPL vmlinux 0xdf2738bb cpu_cgrp_subsys_enabled_key +EXPORT_SYMBOL_GPL vmlinux 0xdf2fafe3 badblocks_clear +EXPORT_SYMBOL_GPL vmlinux 0xdf46a5c9 init_iova_domain +EXPORT_SYMBOL_GPL vmlinux 0xdf4d5270 dev_pm_qos_expose_latency_limit +EXPORT_SYMBOL_GPL vmlinux 0xdf5e5a0f pci_epf_create +EXPORT_SYMBOL_GPL vmlinux 0xdf60ccf6 desc_to_gpio +EXPORT_SYMBOL_GPL vmlinux 0xdf7e0091 da9055_regmap_config +EXPORT_SYMBOL_GPL vmlinux 0xdf8002a8 fuse_dev_operations +EXPORT_SYMBOL_GPL vmlinux 0xdf81924d uv_bios_mq_watchlist_free +EXPORT_SYMBOL_GPL vmlinux 0xdf83c7fb fib_nl_newrule +EXPORT_SYMBOL_GPL vmlinux 0xdf9208c0 alloc_workqueue +EXPORT_SYMBOL_GPL vmlinux 0xdfc3f11c dma_buf_map_attachment +EXPORT_SYMBOL_GPL vmlinux 0xdfcb6c90 mctrl_gpio_set +EXPORT_SYMBOL_GPL vmlinux 0xdfe7701f fuse_send_init +EXPORT_SYMBOL_GPL vmlinux 0xe0080a58 badblocks_init +EXPORT_SYMBOL_GPL vmlinux 0xe011ac9f wbt_enable_default +EXPORT_SYMBOL_GPL vmlinux 0xe04a21fc synth_event_add_val +EXPORT_SYMBOL_GPL vmlinux 0xe05e2f85 nexthop_free_rcu +EXPORT_SYMBOL_GPL vmlinux 0xe060469a serdev_device_alloc +EXPORT_SYMBOL_GPL vmlinux 0xe071d05d zs_pool_stats +EXPORT_SYMBOL_GPL vmlinux 0xe07740ef addrconf_add_linklocal +EXPORT_SYMBOL_GPL vmlinux 0xe084cce3 screen_pos +EXPORT_SYMBOL_GPL vmlinux 0xe089cfcc agp_memory_reserved +EXPORT_SYMBOL_GPL vmlinux 0xe08c709c iomap_page_mkwrite +EXPORT_SYMBOL_GPL vmlinux 0xe09a3b04 fib_new_table +EXPORT_SYMBOL_GPL vmlinux 0xe0b1c103 clk_set_max_rate +EXPORT_SYMBOL_GPL vmlinux 0xe0b97576 nf_ipv6_ops +EXPORT_SYMBOL_GPL vmlinux 0xe0bdd8cc inode_congested +EXPORT_SYMBOL_GPL vmlinux 0xe0c77bb5 mce_notify_irq +EXPORT_SYMBOL_GPL vmlinux 0xe0d2e08f md_find_rdev_rcu +EXPORT_SYMBOL_GPL vmlinux 0xe0edb476 ata_scsi_unlock_native_capacity +EXPORT_SYMBOL_GPL vmlinux 0xe0ee182a usb_free_coherent +EXPORT_SYMBOL_GPL vmlinux 0xe0f57916 l3mdev_link_scope_lookup +EXPORT_SYMBOL_GPL vmlinux 0xe10cd6ad erst_get_record_id_begin +EXPORT_SYMBOL_GPL vmlinux 0xe10d85ff irq_chip_get_parent_state +EXPORT_SYMBOL_GPL vmlinux 0xe114c451 blkcg_policy_unregister +EXPORT_SYMBOL_GPL vmlinux 0xe11f3b2d crypto_stats_decompress +EXPORT_SYMBOL_GPL vmlinux 0xe12dc927 rtnl_get_net_ns_capable +EXPORT_SYMBOL_GPL vmlinux 0xe1322569 __raw_v4_lookup +EXPORT_SYMBOL_GPL vmlinux 0xe13e453e devfreq_event_reset_event +EXPORT_SYMBOL_GPL vmlinux 0xe1444fd5 rio_add_mport_pw_handler +EXPORT_SYMBOL_GPL vmlinux 0xe14aa555 crypto_register_ahash +EXPORT_SYMBOL_GPL vmlinux 0xe14e3b91 find_get_pid +EXPORT_SYMBOL_GPL vmlinux 0xe1544c3c dma_request_chan_by_mask +EXPORT_SYMBOL_GPL vmlinux 0xe15b7354 devm_gpiod_put +EXPORT_SYMBOL_GPL vmlinux 0xe16084c4 devm_rtc_allocate_device +EXPORT_SYMBOL_GPL vmlinux 0xe1664678 acpi_match_device +EXPORT_SYMBOL_GPL vmlinux 0xe1756f77 perf_event_pause +EXPORT_SYMBOL_GPL vmlinux 0xe1775ee7 dm_get_reserved_bio_based_ios +EXPORT_SYMBOL_GPL vmlinux 0xe18a1e73 crypto_unregister_ahashes +EXPORT_SYMBOL_GPL vmlinux 0xe19f856f sock_diag_register +EXPORT_SYMBOL_GPL vmlinux 0xe1a8d7c9 net_rwsem +EXPORT_SYMBOL_GPL vmlinux 0xe1aa2d62 set_hv_tscchange_cb +EXPORT_SYMBOL_GPL vmlinux 0xe1bd6c99 rio_init_mports +EXPORT_SYMBOL_GPL vmlinux 0xe1c63523 blk_ksm_get_slot_idx +EXPORT_SYMBOL_GPL vmlinux 0xe1cdcf21 crypto_grab_shash +EXPORT_SYMBOL_GPL vmlinux 0xe1e4df72 sock_zerocopy_callback +EXPORT_SYMBOL_GPL vmlinux 0xe1e860dd md_rdev_clear +EXPORT_SYMBOL_GPL vmlinux 0xe1e92b95 smpboot_register_percpu_thread +EXPORT_SYMBOL_GPL vmlinux 0xe1fc08e9 watchdog_set_restart_priority +EXPORT_SYMBOL_GPL vmlinux 0xe20fcf99 crypto_register_rngs +EXPORT_SYMBOL_GPL vmlinux 0xe2164e7d vfs_getxattr_alloc +EXPORT_SYMBOL_GPL vmlinux 0xe2179936 crypto_larval_kill +EXPORT_SYMBOL_GPL vmlinux 0xe21e70bc rhashtable_walk_stop +EXPORT_SYMBOL_GPL vmlinux 0xe21ff22f fib_nexthop_info +EXPORT_SYMBOL_GPL vmlinux 0xe233762a input_event_from_user +EXPORT_SYMBOL_GPL vmlinux 0xe234ac3d devm_kfree +EXPORT_SYMBOL_GPL vmlinux 0xe23d4e48 lp8788_write_byte +EXPORT_SYMBOL_GPL vmlinux 0xe23d9cc6 dev_coredumpv +EXPORT_SYMBOL_GPL vmlinux 0xe24ac72b security_inode_permission +EXPORT_SYMBOL_GPL vmlinux 0xe2555006 gpiod_get +EXPORT_SYMBOL_GPL vmlinux 0xe2582a12 btree_init +EXPORT_SYMBOL_GPL vmlinux 0xe27f75e6 platform_get_resource +EXPORT_SYMBOL_GPL vmlinux 0xe27f8009 sata_link_debounce +EXPORT_SYMBOL_GPL vmlinux 0xe28665fe wakeup_sources_walk_next +EXPORT_SYMBOL_GPL vmlinux 0xe295c0ff is_hpet_enabled +EXPORT_SYMBOL_GPL vmlinux 0xe2b3207a unregister_switchdev_notifier +EXPORT_SYMBOL_GPL vmlinux 0xe2ce2b4d evm_set_key +EXPORT_SYMBOL_GPL vmlinux 0xe2e3a476 agp_add_bridge +EXPORT_SYMBOL_GPL vmlinux 0xe2f80305 nvdimm_volatile_region_create +EXPORT_SYMBOL_GPL vmlinux 0xe2fc325d __fscrypt_prepare_symlink +EXPORT_SYMBOL_GPL vmlinux 0xe3043ff9 request_any_context_irq +EXPORT_SYMBOL_GPL vmlinux 0xe3143c31 uart_handle_dcd_change +EXPORT_SYMBOL_GPL vmlinux 0xe31c0b93 serdev_device_set_tiocm +EXPORT_SYMBOL_GPL vmlinux 0xe31c116f xhci_init_driver +EXPORT_SYMBOL_GPL vmlinux 0xe329399e irq_create_strict_mappings +EXPORT_SYMBOL_GPL vmlinux 0xe329ba24 housekeeping_cpumask +EXPORT_SYMBOL_GPL vmlinux 0xe338c5ac inet_hashinfo2_init_mod +EXPORT_SYMBOL_GPL vmlinux 0xe34198f0 pci_set_cacheline_size +EXPORT_SYMBOL_GPL vmlinux 0xe3948ff4 acpi_walk_dep_device_list +EXPORT_SYMBOL_GPL vmlinux 0xe397caf5 seq_buf_printf +EXPORT_SYMBOL_GPL vmlinux 0xe39a407c fsverity_ioctl_measure +EXPORT_SYMBOL_GPL vmlinux 0xe39d0794 usb_phy_roothub_exit +EXPORT_SYMBOL_GPL vmlinux 0xe3a5a9cd devm_gpiod_get_array_optional +EXPORT_SYMBOL_GPL vmlinux 0xe3b09712 kprobe_event_delete +EXPORT_SYMBOL_GPL vmlinux 0xe3bc7fd4 hpet_unregister_irq_handler +EXPORT_SYMBOL_GPL vmlinux 0xe3bca97a rdev_get_dev +EXPORT_SYMBOL_GPL vmlinux 0xe3cd5fae klist_iter_init +EXPORT_SYMBOL_GPL vmlinux 0xe3d92226 __put_net +EXPORT_SYMBOL_GPL vmlinux 0xe3e88acb __get_current_cr3_fast +EXPORT_SYMBOL_GPL vmlinux 0xe3e8f09d net_dm_hw_report +EXPORT_SYMBOL_GPL vmlinux 0xe3ec2182 fsnotify_put_mark +EXPORT_SYMBOL_GPL vmlinux 0xe3ee77bd dw_pcie_setup_rc +EXPORT_SYMBOL_GPL vmlinux 0xe3f5f9ed component_del +EXPORT_SYMBOL_GPL vmlinux 0xe402b2fe clk_hw_register_fixed_factor +EXPORT_SYMBOL_GPL vmlinux 0xe403e6ac gpiod_get_raw_value +EXPORT_SYMBOL_GPL vmlinux 0xe40bb23e devlink_health_reporter_priv +EXPORT_SYMBOL_GPL vmlinux 0xe41196a6 __of_phy_provider_register +EXPORT_SYMBOL_GPL vmlinux 0xe412dbd7 acpi_dma_request_slave_chan_by_index +EXPORT_SYMBOL_GPL vmlinux 0xe41573e1 fib_rules_register +EXPORT_SYMBOL_GPL vmlinux 0xe41f816c led_trigger_remove +EXPORT_SYMBOL_GPL vmlinux 0xe4248980 cper_estatus_print +EXPORT_SYMBOL_GPL vmlinux 0xe42614a5 pci_epf_free_space +EXPORT_SYMBOL_GPL vmlinux 0xe42b6c9e __rtnl_link_unregister +EXPORT_SYMBOL_GPL vmlinux 0xe4309905 syscore_resume +EXPORT_SYMBOL_GPL vmlinux 0xe435c80c fib_rules_unregister +EXPORT_SYMBOL_GPL vmlinux 0xe43dbc8e iommu_domain_window_disable +EXPORT_SYMBOL_GPL vmlinux 0xe44030e3 __rio_local_read_config_8 +EXPORT_SYMBOL_GPL vmlinux 0xe442e0d2 regulator_map_voltage_pickable_linear_range +EXPORT_SYMBOL_GPL vmlinux 0xe4575277 skb_append_pagefrags +EXPORT_SYMBOL_GPL vmlinux 0xe46dcf0d to_nd_blk_region +EXPORT_SYMBOL_GPL vmlinux 0xe47b281e sysfs_add_link_to_group +EXPORT_SYMBOL_GPL vmlinux 0xe48611ac trace_clock_global +EXPORT_SYMBOL_GPL vmlinux 0xe4874aef __tracepoint_add_device_to_group +EXPORT_SYMBOL_GPL vmlinux 0xe4932b13 cgroup_rstat_updated +EXPORT_SYMBOL_GPL vmlinux 0xe495926a alarm_restart +EXPORT_SYMBOL_GPL vmlinux 0xe4971ade tracing_alloc_snapshot +EXPORT_SYMBOL_GPL vmlinux 0xe49d8890 devm_regulator_register +EXPORT_SYMBOL_GPL vmlinux 0xe4b064f9 pcie_link_speed +EXPORT_SYMBOL_GPL vmlinux 0xe4b818c3 phy_speed_to_str +EXPORT_SYMBOL_GPL vmlinux 0xe4c01109 debugfs_create_bool +EXPORT_SYMBOL_GPL vmlinux 0xe4c2c66c rtc_ktime_to_tm +EXPORT_SYMBOL_GPL vmlinux 0xe4c52908 vfs_fallocate +EXPORT_SYMBOL_GPL vmlinux 0xe4e04578 efivar_entry_remove +EXPORT_SYMBOL_GPL vmlinux 0xe4e48b12 swphy_validate_state +EXPORT_SYMBOL_GPL vmlinux 0xe4ea7868 blk_req_needs_zone_write_lock +EXPORT_SYMBOL_GPL vmlinux 0xe50615f7 dma_buf_mmap +EXPORT_SYMBOL_GPL vmlinux 0xe50d441a clk_mux_determine_rate_flags +EXPORT_SYMBOL_GPL vmlinux 0xe512186a unwind_next_frame +EXPORT_SYMBOL_GPL vmlinux 0xe5125054 pm_relax +EXPORT_SYMBOL_GPL vmlinux 0xe5158f3c decrypt_blob +EXPORT_SYMBOL_GPL vmlinux 0xe52a4ac9 sock_zerocopy_put +EXPORT_SYMBOL_GPL vmlinux 0xe54c6d58 put_iova_domain +EXPORT_SYMBOL_GPL vmlinux 0xe5883bd9 class_compat_unregister +EXPORT_SYMBOL_GPL vmlinux 0xe58aa56b debugfs_create_u32 +EXPORT_SYMBOL_GPL vmlinux 0xe595d69b device_set_wakeup_capable +EXPORT_SYMBOL_GPL vmlinux 0xe599f732 sock_diag_register_inet_compat +EXPORT_SYMBOL_GPL vmlinux 0xe59d78d1 br_ip6_fragment +EXPORT_SYMBOL_GPL vmlinux 0xe5abc599 usb_find_alt_setting +EXPORT_SYMBOL_GPL vmlinux 0xe5b92186 pci_epf_destroy +EXPORT_SYMBOL_GPL vmlinux 0xe5c02b64 freq_qos_remove_request +EXPORT_SYMBOL_GPL vmlinux 0xe5d05c36 bpf_prog_add +EXPORT_SYMBOL_GPL vmlinux 0xe5d37e5e devm_spi_register_controller +EXPORT_SYMBOL_GPL vmlinux 0xe5ef6b02 tps6586x_clr_bits +EXPORT_SYMBOL_GPL vmlinux 0xe60632a9 edac_queue_work +EXPORT_SYMBOL_GPL vmlinux 0xe60a5e8d pids_cgrp_subsys_enabled_key +EXPORT_SYMBOL_GPL vmlinux 0xe612c4e8 edac_mc_add_mc_with_groups +EXPORT_SYMBOL_GPL vmlinux 0xe61f1342 sata_pmp_qc_defer_cmd_switch +EXPORT_SYMBOL_GPL vmlinux 0xe628bb9f phy_fibre_port_array +EXPORT_SYMBOL_GPL vmlinux 0xe62ba613 __vfs_removexattr_noperm +EXPORT_SYMBOL_GPL vmlinux 0xe62bdc03 tun_get_tx_ring +EXPORT_SYMBOL_GPL vmlinux 0xe63db38c sec_irq_init +EXPORT_SYMBOL_GPL vmlinux 0xe642ca8b acpi_subsys_suspend_noirq +EXPORT_SYMBOL_GPL vmlinux 0xe64ad8ea unregister_nmi_handler +EXPORT_SYMBOL_GPL vmlinux 0xe655f2d6 xdp_return_frame_rx_napi +EXPORT_SYMBOL_GPL vmlinux 0xe6571753 pci_epc_write_header +EXPORT_SYMBOL_GPL vmlinux 0xe6838761 pm_genpd_syscore_poweroff +EXPORT_SYMBOL_GPL vmlinux 0xe693ff3f sata_lpm_ignore_phy_events +EXPORT_SYMBOL_GPL vmlinux 0xe6a257f1 divider_round_rate_parent +EXPORT_SYMBOL_GPL vmlinux 0xe6af828b icc_provider_add +EXPORT_SYMBOL_GPL vmlinux 0xe6b71abf devm_gpiod_get_index_optional +EXPORT_SYMBOL_GPL vmlinux 0xe6bf39cb palmas_ext_control_req_config +EXPORT_SYMBOL_GPL vmlinux 0xe6c6fd26 led_set_brightness_sync +EXPORT_SYMBOL_GPL vmlinux 0xe6db7c60 mddev_suspend +EXPORT_SYMBOL_GPL vmlinux 0xe6e40502 rcu_get_gp_seq +EXPORT_SYMBOL_GPL vmlinux 0xe6e4124c pci_ignore_hotplug +EXPORT_SYMBOL_GPL vmlinux 0xe6e4b72a usb_poison_urb +EXPORT_SYMBOL_GPL vmlinux 0xe6e90fd0 wakeup_sources_walk_start +EXPORT_SYMBOL_GPL vmlinux 0xe6f52443 klist_add_head +EXPORT_SYMBOL_GPL vmlinux 0xe6f5e6f5 xas_clear_mark +EXPORT_SYMBOL_GPL vmlinux 0xe6f66d6f pinctrl_find_gpio_range_from_pin +EXPORT_SYMBOL_GPL vmlinux 0xe6f83837 acpi_bus_attach_private_data +EXPORT_SYMBOL_GPL vmlinux 0xe6f8a04f dax_copy_to_iter +EXPORT_SYMBOL_GPL vmlinux 0xe6fca8d3 devm_led_trigger_register +EXPORT_SYMBOL_GPL vmlinux 0xe70b9f04 fuse_dev_alloc +EXPORT_SYMBOL_GPL vmlinux 0xe7166d87 cpufreq_table_index_unsorted +EXPORT_SYMBOL_GPL vmlinux 0xe72013a2 shash_free_singlespawn_instance +EXPORT_SYMBOL_GPL vmlinux 0xe7232e0f user_return_notifier_unregister +EXPORT_SYMBOL_GPL vmlinux 0xe7326fac phy_save_page +EXPORT_SYMBOL_GPL vmlinux 0xe7351c87 devm_gpiod_get +EXPORT_SYMBOL_GPL vmlinux 0xe73aa49b rio_mport_chk_dev_access +EXPORT_SYMBOL_GPL vmlinux 0xe740b58a hv_vp_assist_page +EXPORT_SYMBOL_GPL vmlinux 0xe74cd245 crypto_ahash_walk_first +EXPORT_SYMBOL_GPL vmlinux 0xe74e5c0a usb_match_id +EXPORT_SYMBOL_GPL vmlinux 0xe753b68d devlink_fmsg_arr_pair_nest_end +EXPORT_SYMBOL_GPL vmlinux 0xe75bc91a fuse_do_ioctl +EXPORT_SYMBOL_GPL vmlinux 0xe763e487 fwnode_graph_get_remote_port +EXPORT_SYMBOL_GPL vmlinux 0xe769232e sprint_symbol_no_offset +EXPORT_SYMBOL_GPL vmlinux 0xe76c3b2d acpi_dma_controller_register +EXPORT_SYMBOL_GPL vmlinux 0xe77c0f4e wm8997_irq +EXPORT_SYMBOL_GPL vmlinux 0xe783e261 sysfs_emit +EXPORT_SYMBOL_GPL vmlinux 0xe788b593 mctrl_gpio_init_noauto +EXPORT_SYMBOL_GPL vmlinux 0xe79bf0c4 klp_shadow_get +EXPORT_SYMBOL_GPL vmlinux 0xe79cde0d ata_sff_check_status +EXPORT_SYMBOL_GPL vmlinux 0xe7a4d9fe blk_set_pm_only +EXPORT_SYMBOL_GPL vmlinux 0xe7a74edc devlink_params_register +EXPORT_SYMBOL_GPL vmlinux 0xe7b513a0 irq_domain_get_irq_data +EXPORT_SYMBOL_GPL vmlinux 0xe7bb05f1 sdio_writeb +EXPORT_SYMBOL_GPL vmlinux 0xe7c4de4a usb_autopm_get_interface_async +EXPORT_SYMBOL_GPL vmlinux 0xe7c62c8d fib6_rule_default +EXPORT_SYMBOL_GPL vmlinux 0xe7cbe431 nvdimm_security_setup_events +EXPORT_SYMBOL_GPL vmlinux 0xe7d177a5 devm_device_remove_groups +EXPORT_SYMBOL_GPL vmlinux 0xe7d6d2d4 filter_match_preds +EXPORT_SYMBOL_GPL vmlinux 0xe7ec799e sysfs_create_files +EXPORT_SYMBOL_GPL vmlinux 0xe7eee3d5 __cookie_v4_init_sequence +EXPORT_SYMBOL_GPL vmlinux 0xe7fe76a5 clk_hw_get_parent +EXPORT_SYMBOL_GPL vmlinux 0xe7ffe877 pcpu_base_addr +EXPORT_SYMBOL_GPL vmlinux 0xe8070608 ima_file_hash +EXPORT_SYMBOL_GPL vmlinux 0xe809cffb ring_buffer_time_stamp +EXPORT_SYMBOL_GPL vmlinux 0xe818b32b ata_bmdma_interrupt +EXPORT_SYMBOL_GPL vmlinux 0xe81ddad6 tracing_generic_entry_update +EXPORT_SYMBOL_GPL vmlinux 0xe81e8b22 dev_coredumpm +EXPORT_SYMBOL_GPL vmlinux 0xe828aa50 xfrm_audit_state_notfound_simple +EXPORT_SYMBOL_GPL vmlinux 0xe8302b0f fsverity_verify_bio +EXPORT_SYMBOL_GPL vmlinux 0xe8305ed6 regulator_map_voltage_linear_range +EXPORT_SYMBOL_GPL vmlinux 0xe83eba32 itlb_multihit_kvm_mitigation +EXPORT_SYMBOL_GPL vmlinux 0xe84f6e5c pciserial_remove_ports +EXPORT_SYMBOL_GPL vmlinux 0xe851cb66 usb_hcd_setup_local_mem +EXPORT_SYMBOL_GPL vmlinux 0xe85b4603 fwnode_graph_get_remote_node +EXPORT_SYMBOL_GPL vmlinux 0xe862c4b7 dpm_suspend_start +EXPORT_SYMBOL_GPL vmlinux 0xe87ac246 perf_event_addr_filters_sync +EXPORT_SYMBOL_GPL vmlinux 0xe87adc1d intel_msic_reg_write +EXPORT_SYMBOL_GPL vmlinux 0xe8a52ce0 bpf_prog_inc_not_zero +EXPORT_SYMBOL_GPL vmlinux 0xe8b40f33 __tracepoint_remove_device_from_group +EXPORT_SYMBOL_GPL vmlinux 0xe8dd2ee3 debugfs_create_file_size +EXPORT_SYMBOL_GPL vmlinux 0xe8f5391f ata_port_wait_eh +EXPORT_SYMBOL_GPL vmlinux 0xe8f6ab45 tps80031_ext_power_req_config +EXPORT_SYMBOL_GPL vmlinux 0xe90463c4 devm_pinctrl_register +EXPORT_SYMBOL_GPL vmlinux 0xe90a7f06 acpi_device_modalias +EXPORT_SYMBOL_GPL vmlinux 0xe91cfab8 bus_unregister +EXPORT_SYMBOL_GPL vmlinux 0xe91dda22 __percpu_init_rwsem +EXPORT_SYMBOL_GPL vmlinux 0xe9234bc6 peernet2id_alloc +EXPORT_SYMBOL_GPL vmlinux 0xe93e49c3 devres_free +EXPORT_SYMBOL_GPL vmlinux 0xe948465f ata_dev_next +EXPORT_SYMBOL_GPL vmlinux 0xe9579682 usb_hcd_pci_remove +EXPORT_SYMBOL_GPL vmlinux 0xe95c9f58 wb_writeout_inc +EXPORT_SYMBOL_GPL vmlinux 0xe95d11b3 sdio_readsb +EXPORT_SYMBOL_GPL vmlinux 0xe976d234 regulator_notifier_call_chain +EXPORT_SYMBOL_GPL vmlinux 0xe97ffba6 hwpoison_filter +EXPORT_SYMBOL_GPL vmlinux 0xe99f42da cpu_subsys +EXPORT_SYMBOL_GPL vmlinux 0xe9b3e9e8 regulator_allow_bypass +EXPORT_SYMBOL_GPL vmlinux 0xe9c6f96b virtqueue_get_vring +EXPORT_SYMBOL_GPL vmlinux 0xe9ce931a kvm_para_available +EXPORT_SYMBOL_GPL vmlinux 0xe9d1b7cf irq_to_pcap +EXPORT_SYMBOL_GPL vmlinux 0xe9d998d3 clean_acked_data_enable +EXPORT_SYMBOL_GPL vmlinux 0xe9e18eb7 verify_pkcs7_signature +EXPORT_SYMBOL_GPL vmlinux 0xea124bd1 gcd +EXPORT_SYMBOL_GPL vmlinux 0xea1a2a3f param_set_bool_enable_only +EXPORT_SYMBOL_GPL vmlinux 0xea2719dd pci_hp_add +EXPORT_SYMBOL_GPL vmlinux 0xea38036f ring_buffer_entries +EXPORT_SYMBOL_GPL vmlinux 0xea543ec6 regmap_test_bits +EXPORT_SYMBOL_GPL vmlinux 0xea61860f pci_try_reset_function +EXPORT_SYMBOL_GPL vmlinux 0xea65ec65 pci_user_read_config_byte +EXPORT_SYMBOL_GPL vmlinux 0xea66c252 tcp_register_ulp +EXPORT_SYMBOL_GPL vmlinux 0xea800b1c i2c_acpi_find_adapter_by_handle +EXPORT_SYMBOL_GPL vmlinux 0xea8358ba ethnl_cable_test_pulse +EXPORT_SYMBOL_GPL vmlinux 0xea8532dd spi_res_alloc +EXPORT_SYMBOL_GPL vmlinux 0xea89976f pci_disable_pcie_error_reporting +EXPORT_SYMBOL_GPL vmlinux 0xea8ddc6e __phy_modify_mmd_changed +EXPORT_SYMBOL_GPL vmlinux 0xeaacc087 cgroup_get_from_path +EXPORT_SYMBOL_GPL vmlinux 0xeaad96f9 sbitmap_queue_clear +EXPORT_SYMBOL_GPL vmlinux 0xead54924 mctrl_gpio_to_gpiod +EXPORT_SYMBOL_GPL vmlinux 0xeae0f496 clean_acked_data_flush +EXPORT_SYMBOL_GPL vmlinux 0xeae57df6 __rt_mutex_init +EXPORT_SYMBOL_GPL vmlinux 0xeaf7fe0f sbitmap_resize +EXPORT_SYMBOL_GPL vmlinux 0xeafe07b8 clk_bulk_prepare +EXPORT_SYMBOL_GPL vmlinux 0xeb1814ce balloon_aops +EXPORT_SYMBOL_GPL vmlinux 0xeb2ddfc3 phy_init +EXPORT_SYMBOL_GPL vmlinux 0xeb37ac4d akcipher_register_instance +EXPORT_SYMBOL_GPL vmlinux 0xeb3c8d73 wm5110_irq +EXPORT_SYMBOL_GPL vmlinux 0xeb474fb0 usb_debug_root +EXPORT_SYMBOL_GPL vmlinux 0xeb59ba27 io_cgrp_subsys +EXPORT_SYMBOL_GPL vmlinux 0xeb6aaf36 kernel_read_file_from_path_initns +EXPORT_SYMBOL_GPL vmlinux 0xeb740f45 pm_generic_resume +EXPORT_SYMBOL_GPL vmlinux 0xeb7cb802 mctrl_gpio_free +EXPORT_SYMBOL_GPL vmlinux 0xeb833c22 xen_has_pv_disk_devices +EXPORT_SYMBOL_GPL vmlinux 0xeb96caf0 nf_ip_route +EXPORT_SYMBOL_GPL vmlinux 0xeb992b38 sata_link_resume +EXPORT_SYMBOL_GPL vmlinux 0xeba621e0 virtqueue_enable_cb_delayed +EXPORT_SYMBOL_GPL vmlinux 0xeba8b29f __crypto_alloc_tfm +EXPORT_SYMBOL_GPL vmlinux 0xebbda679 __rio_local_write_config_16 +EXPORT_SYMBOL_GPL vmlinux 0xebc9a09f lock_system_sleep +EXPORT_SYMBOL_GPL vmlinux 0xebd4cc11 mctrl_gpio_enable_ms +EXPORT_SYMBOL_GPL vmlinux 0xebd5cf51 handle_untracked_irq +EXPORT_SYMBOL_GPL vmlinux 0xec119dd4 irq_set_chained_handler_and_data +EXPORT_SYMBOL_GPL vmlinux 0xec1628e6 pv_info +EXPORT_SYMBOL_GPL vmlinux 0xec20016c mbox_chan_txdone +EXPORT_SYMBOL_GPL vmlinux 0xec254b3c __trace_note_message +EXPORT_SYMBOL_GPL vmlinux 0xec2a9a74 iommu_get_domain_for_dev +EXPORT_SYMBOL_GPL vmlinux 0xec3616c0 unix_inq_len +EXPORT_SYMBOL_GPL vmlinux 0xec5668f6 dax_zero_page_range +EXPORT_SYMBOL_GPL vmlinux 0xec5ad73b trace_seq_bitmask +EXPORT_SYMBOL_GPL vmlinux 0xec660cd3 __tracepoint_fib6_table_lookup +EXPORT_SYMBOL_GPL vmlinux 0xec68ba70 clk_bulk_enable +EXPORT_SYMBOL_GPL vmlinux 0xec722ca4 pwm_request +EXPORT_SYMBOL_GPL vmlinux 0xec74c673 pci_epc_stop +EXPORT_SYMBOL_GPL vmlinux 0xec774acb cpufreq_frequency_table_verify +EXPORT_SYMBOL_GPL vmlinux 0xec788566 acpi_target_system_state +EXPORT_SYMBOL_GPL vmlinux 0xec86e148 devm_fwnode_gpiod_get_index +EXPORT_SYMBOL_GPL vmlinux 0xec9dfc85 encrypt_blob +EXPORT_SYMBOL_GPL vmlinux 0xeca0394f fat_alloc_new_dir +EXPORT_SYMBOL_GPL vmlinux 0xecaa6f7d ip6_local_out +EXPORT_SYMBOL_GPL vmlinux 0xecaa7941 device_link_remove +EXPORT_SYMBOL_GPL vmlinux 0xecba68e3 gnttab_batch_map +EXPORT_SYMBOL_GPL vmlinux 0xecd8f23d xenbus_read +EXPORT_SYMBOL_GPL vmlinux 0xecf2d506 direct_make_request +EXPORT_SYMBOL_GPL vmlinux 0xecf91ccf pci_bus_resource_n +EXPORT_SYMBOL_GPL vmlinux 0xecf930db devm_regmap_field_alloc +EXPORT_SYMBOL_GPL vmlinux 0xecf9e6c8 sbitmap_queue_show +EXPORT_SYMBOL_GPL vmlinux 0xecfdc267 xfrm_audit_state_add +EXPORT_SYMBOL_GPL vmlinux 0xed1bcb5d alarm_init +EXPORT_SYMBOL_GPL vmlinux 0xed456abb crypto_stats_compress +EXPORT_SYMBOL_GPL vmlinux 0xed632987 devfreq_get_devfreq_by_phandle +EXPORT_SYMBOL_GPL vmlinux 0xed655b24 usb_store_new_id +EXPORT_SYMBOL_GPL vmlinux 0xed6582f1 intel_msic_bulk_write +EXPORT_SYMBOL_GPL vmlinux 0xed66f540 dev_pm_opp_get_max_clock_latency +EXPORT_SYMBOL_GPL vmlinux 0xed67ee6d ipv6_recv_error +EXPORT_SYMBOL_GPL vmlinux 0xed74dab9 pm_clk_add +EXPORT_SYMBOL_GPL vmlinux 0xed7c7b91 raw_v6_hashinfo +EXPORT_SYMBOL_GPL vmlinux 0xed98190b input_class +EXPORT_SYMBOL_GPL vmlinux 0xedb7c60b regulator_list_voltage_linear_range +EXPORT_SYMBOL_GPL vmlinux 0xedce64d1 iommu_dev_disable_feature +EXPORT_SYMBOL_GPL vmlinux 0xedd092d5 power_supply_notifier +EXPORT_SYMBOL_GPL vmlinux 0xedd428d0 xenbus_dev_fatal +EXPORT_SYMBOL_GPL vmlinux 0xedd87292 __unwind_start +EXPORT_SYMBOL_GPL vmlinux 0xede98ec5 intel_pt_validate_hw_cap +EXPORT_SYMBOL_GPL vmlinux 0xede9a09a btree_lookup +EXPORT_SYMBOL_GPL vmlinux 0xee139504 blk_mq_bio_list_merge +EXPORT_SYMBOL_GPL vmlinux 0xee13e697 set_personality_ia32 +EXPORT_SYMBOL_GPL vmlinux 0xee1828e6 regulator_disable +EXPORT_SYMBOL_GPL vmlinux 0xee32c201 find_pid_ns +EXPORT_SYMBOL_GPL vmlinux 0xee38ef57 register_switchdev_blocking_notifier +EXPORT_SYMBOL_GPL vmlinux 0xee4244eb scsi_dh_attach +EXPORT_SYMBOL_GPL vmlinux 0xee5904f8 crypto_stats_skcipher_encrypt +EXPORT_SYMBOL_GPL vmlinux 0xee5e145d devm_extcon_dev_free +EXPORT_SYMBOL_GPL vmlinux 0xee6467c7 spi_bus_unlock +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 0xee73a5b4 attribute_container_unregister +EXPORT_SYMBOL_GPL vmlinux 0xee7d1d55 ata_bmdma_setup +EXPORT_SYMBOL_GPL vmlinux 0xee8200e4 nvmem_register +EXPORT_SYMBOL_GPL vmlinux 0xee97ed93 unregister_virtio_driver +EXPORT_SYMBOL_GPL vmlinux 0xee9fcda6 apei_mce_report_mem_error +EXPORT_SYMBOL_GPL vmlinux 0xeea323aa memunmap_pages +EXPORT_SYMBOL_GPL vmlinux 0xeeb4f6bc ata_std_postreset +EXPORT_SYMBOL_GPL vmlinux 0xeedd987e phy_10gbit_features_array +EXPORT_SYMBOL_GPL vmlinux 0xeedfcec3 task_work_run +EXPORT_SYMBOL_GPL vmlinux 0xeee667d3 fpregs_assert_state_consistent +EXPORT_SYMBOL_GPL vmlinux 0xeeee42e1 __device_reset +EXPORT_SYMBOL_GPL vmlinux 0xeefda288 rio_mport_read_config_32 +EXPORT_SYMBOL_GPL vmlinux 0xef1063f9 genphy_c45_pma_setup_forced +EXPORT_SYMBOL_GPL vmlinux 0xef1f6e23 apei_resources_request +EXPORT_SYMBOL_GPL vmlinux 0xef20b689 regulator_register_notifier +EXPORT_SYMBOL_GPL vmlinux 0xef2433ab reset_controller_register +EXPORT_SYMBOL_GPL vmlinux 0xef28e374 i2c_parse_fw_timings +EXPORT_SYMBOL_GPL vmlinux 0xef29fcdd clk_bulk_put +EXPORT_SYMBOL_GPL vmlinux 0xef30f09c powercap_unregister_control_type +EXPORT_SYMBOL_GPL vmlinux 0xef333004 mmu_notifier_unregister +EXPORT_SYMBOL_GPL vmlinux 0xef378a97 powercap_unregister_zone +EXPORT_SYMBOL_GPL vmlinux 0xef38051d scsi_eh_ready_devs +EXPORT_SYMBOL_GPL vmlinux 0xef3cd6d2 dst_cache_set_ip4 +EXPORT_SYMBOL_GPL vmlinux 0xef464c28 getboottime64 +EXPORT_SYMBOL_GPL vmlinux 0xef52071d is_current_mnt_ns +EXPORT_SYMBOL_GPL vmlinux 0xef6731dc i2c_acpi_new_device +EXPORT_SYMBOL_GPL vmlinux 0xef6abb5f platform_bus_type +EXPORT_SYMBOL_GPL vmlinux 0xef6c3f70 round_jiffies_up_relative +EXPORT_SYMBOL_GPL vmlinux 0xef6e9d28 tpm_pm_suspend +EXPORT_SYMBOL_GPL vmlinux 0xef70eb7e ring_buffer_iter_advance +EXPORT_SYMBOL_GPL vmlinux 0xef876e8a crypto_alloc_akcipher +EXPORT_SYMBOL_GPL vmlinux 0xef8abbbd icc_node_create +EXPORT_SYMBOL_GPL vmlinux 0xef8fc95f kvm_async_pf_task_wait_schedule +EXPORT_SYMBOL_GPL vmlinux 0xef90641d __netpoll_cleanup +EXPORT_SYMBOL_GPL vmlinux 0xef92ef33 btree_last +EXPORT_SYMBOL_GPL vmlinux 0xefa2c27d register_tracepoint_module_notifier +EXPORT_SYMBOL_GPL vmlinux 0xefb26e63 __rio_local_read_config_32 +EXPORT_SYMBOL_GPL vmlinux 0xefdbde5a devlink_dpipe_table_resource_set +EXPORT_SYMBOL_GPL vmlinux 0xefdf1302 device_remove_properties +EXPORT_SYMBOL_GPL vmlinux 0xefeafcf1 edac_has_mcs +EXPORT_SYMBOL_GPL vmlinux 0xeffe21b6 gpiod_set_raw_array_value +EXPORT_SYMBOL_GPL vmlinux 0xf019f624 power_supply_put +EXPORT_SYMBOL_GPL vmlinux 0xf01cb957 dw_pcie_ep_linkup +EXPORT_SYMBOL_GPL vmlinux 0xf029c210 dev_pm_opp_get_sharing_cpus +EXPORT_SYMBOL_GPL vmlinux 0xf04429b4 acpi_bus_get_status_handle +EXPORT_SYMBOL_GPL vmlinux 0xf048faaa __xenmem_reservation_va_mapping_reset +EXPORT_SYMBOL_GPL vmlinux 0xf0504ce5 tracepoint_srcu +EXPORT_SYMBOL_GPL vmlinux 0xf0648558 devm_namespace_enable +EXPORT_SYMBOL_GPL vmlinux 0xf0696401 acpi_pci_detect_ejectable +EXPORT_SYMBOL_GPL vmlinux 0xf06d1ee2 of_devfreq_cooling_register_power +EXPORT_SYMBOL_GPL vmlinux 0xf08050c4 rhashtable_walk_start_check +EXPORT_SYMBOL_GPL vmlinux 0xf0910075 sfp_bus_del_upstream +EXPORT_SYMBOL_GPL vmlinux 0xf0921d10 led_compose_name +EXPORT_SYMBOL_GPL vmlinux 0xf09e102f acpi_dma_controller_free +EXPORT_SYMBOL_GPL vmlinux 0xf0a02925 ata_pci_sff_prepare_host +EXPORT_SYMBOL_GPL vmlinux 0xf0a07a61 spi_set_cs_timing +EXPORT_SYMBOL_GPL vmlinux 0xf0b61125 serial8250_read_char +EXPORT_SYMBOL_GPL vmlinux 0xf0d478c7 list_lru_add +EXPORT_SYMBOL_GPL vmlinux 0xf0dd9ffc ata_pci_bmdma_prepare_host +EXPORT_SYMBOL_GPL vmlinux 0xf0e237ef dm_noflush_suspending +EXPORT_SYMBOL_GPL vmlinux 0xf0f820b5 extcon_get_property_capability +EXPORT_SYMBOL_GPL vmlinux 0xf10d76b8 serial8250_rpm_put_tx +EXPORT_SYMBOL_GPL vmlinux 0xf115a271 irq_set_default_host +EXPORT_SYMBOL_GPL vmlinux 0xf1361941 pci_vpd_find_tag +EXPORT_SYMBOL_GPL vmlinux 0xf14740aa exportfs_decode_fh +EXPORT_SYMBOL_GPL vmlinux 0xf15a518a bpf_offload_dev_create +EXPORT_SYMBOL_GPL vmlinux 0xf1700158 regmap_register_patch +EXPORT_SYMBOL_GPL vmlinux 0xf174dc0c ata_sff_dev_select +EXPORT_SYMBOL_GPL vmlinux 0xf184d189 kernel_power_off +EXPORT_SYMBOL_GPL vmlinux 0xf18b7ed6 usb_get_intf +EXPORT_SYMBOL_GPL vmlinux 0xf1989509 ata_host_resume +EXPORT_SYMBOL_GPL vmlinux 0xf198995f pinctrl_select_default_state +EXPORT_SYMBOL_GPL vmlinux 0xf19e0250 ping_queue_rcv_skb +EXPORT_SYMBOL_GPL vmlinux 0xf1a09aba blk_trace_setup +EXPORT_SYMBOL_GPL vmlinux 0xf1ab2b1a pci_set_host_bridge_release +EXPORT_SYMBOL_GPL vmlinux 0xf1b31314 delayacct_on +EXPORT_SYMBOL_GPL vmlinux 0xf1cd8929 kvm_read_and_reset_apf_flags +EXPORT_SYMBOL_GPL vmlinux 0xf1e02475 regulator_bulk_disable +EXPORT_SYMBOL_GPL vmlinux 0xf1ec1242 trace_array_printk +EXPORT_SYMBOL_GPL vmlinux 0xf21e1f9b disable_percpu_irq +EXPORT_SYMBOL_GPL vmlinux 0xf230fa2e ata_std_error_handler +EXPORT_SYMBOL_GPL vmlinux 0xf23b9b97 balloon_page_alloc +EXPORT_SYMBOL_GPL vmlinux 0xf24b77fd dev_pm_opp_get_max_volt_latency +EXPORT_SYMBOL_GPL vmlinux 0xf24bd534 devm_nvmem_cell_get +EXPORT_SYMBOL_GPL vmlinux 0xf25a0f64 ohci_init_driver +EXPORT_SYMBOL_GPL vmlinux 0xf2769c5b iomap_set_page_dirty +EXPORT_SYMBOL_GPL vmlinux 0xf27d0a7b gnttab_grant_foreign_access_ref +EXPORT_SYMBOL_GPL vmlinux 0xf28baa6d posix_clock_register +EXPORT_SYMBOL_GPL vmlinux 0xf2967796 ring_buffer_record_on +EXPORT_SYMBOL_GPL vmlinux 0xf2a29d83 mmc_switch +EXPORT_SYMBOL_GPL vmlinux 0xf2b33cb7 memory_cgrp_subsys_on_dfl_key +EXPORT_SYMBOL_GPL vmlinux 0xf2b46c8c serial8250_rpm_put +EXPORT_SYMBOL_GPL vmlinux 0xf2c970b0 pci_epc_clear_bar +EXPORT_SYMBOL_GPL vmlinux 0xf2d06daf devfreq_cooling_register +EXPORT_SYMBOL_GPL vmlinux 0xf2d080fc ehci_init_driver +EXPORT_SYMBOL_GPL vmlinux 0xf2e4abd3 devlink_alloc +EXPORT_SYMBOL_GPL vmlinux 0xf2e725de devm_memremap_pages +EXPORT_SYMBOL_GPL vmlinux 0xf2e81f09 devm_regulator_get_exclusive +EXPORT_SYMBOL_GPL vmlinux 0xf2f667e6 nf_queue_entry_get_refs +EXPORT_SYMBOL_GPL vmlinux 0xf3095659 klp_get_state +EXPORT_SYMBOL_GPL vmlinux 0xf30a5502 cpufreq_enable_boost_support +EXPORT_SYMBOL_GPL vmlinux 0xf30e0ab9 regcache_cache_only +EXPORT_SYMBOL_GPL vmlinux 0xf311e156 key_being_used_for +EXPORT_SYMBOL_GPL vmlinux 0xf31632e0 ezx_pcap_read +EXPORT_SYMBOL_GPL vmlinux 0xf31b3fd1 workqueue_set_max_active +EXPORT_SYMBOL_GPL vmlinux 0xf326ea54 device_property_read_u64_array +EXPORT_SYMBOL_GPL vmlinux 0xf32bdc5d unregister_xenstore_notifier +EXPORT_SYMBOL_GPL vmlinux 0xf331236f btree_geo32 +EXPORT_SYMBOL_GPL vmlinux 0xf335596e of_phy_put +EXPORT_SYMBOL_GPL vmlinux 0xf339672f __pm_runtime_set_status +EXPORT_SYMBOL_GPL vmlinux 0xf33d5646 crypto_aead_setauthsize +EXPORT_SYMBOL_GPL vmlinux 0xf34cd61e adp5520_write +EXPORT_SYMBOL_GPL vmlinux 0xf352023f memory_cgrp_subsys_enabled_key +EXPORT_SYMBOL_GPL vmlinux 0xf3552f59 devm_gpiod_get_from_of_node +EXPORT_SYMBOL_GPL vmlinux 0xf3573b85 security_path_symlink +EXPORT_SYMBOL_GPL vmlinux 0xf359e4c8 i2c_unregister_device +EXPORT_SYMBOL_GPL vmlinux 0xf35c82ed usb_set_configuration +EXPORT_SYMBOL_GPL vmlinux 0xf3682b0f relay_close +EXPORT_SYMBOL_GPL vmlinux 0xf37379c7 skb_partial_csum_set +EXPORT_SYMBOL_GPL vmlinux 0xf3760ba9 thermal_zone_get_zone_by_name +EXPORT_SYMBOL_GPL vmlinux 0xf3808cb1 get_state_synchronize_rcu +EXPORT_SYMBOL_GPL vmlinux 0xf38c9314 pci_cfg_access_trylock +EXPORT_SYMBOL_GPL vmlinux 0xf38fba81 bpf_offload_dev_netdev_unregister +EXPORT_SYMBOL_GPL vmlinux 0xf39ef353 sysfs_create_file_ns +EXPORT_SYMBOL_GPL vmlinux 0xf3b28546 devres_release +EXPORT_SYMBOL_GPL vmlinux 0xf3b451ca kdb_poll_funcs +EXPORT_SYMBOL_GPL vmlinux 0xf3b95d79 btree_remove +EXPORT_SYMBOL_GPL vmlinux 0xf3bb81de blk_mq_sched_free_hctx_data +EXPORT_SYMBOL_GPL vmlinux 0xf3d6529b dw_pcie_msi_init +EXPORT_SYMBOL_GPL vmlinux 0xf40d4231 devm_regulator_register_notifier +EXPORT_SYMBOL_GPL vmlinux 0xf422db74 usb_get_from_anchor +EXPORT_SYMBOL_GPL vmlinux 0xf4415da3 rio_inb_pwrite_handler +EXPORT_SYMBOL_GPL vmlinux 0xf44b0287 fuse_conn_put +EXPORT_SYMBOL_GPL vmlinux 0xf4513068 nd_region_dev +EXPORT_SYMBOL_GPL vmlinux 0xf46145c2 pwmchip_add +EXPORT_SYMBOL_GPL vmlinux 0xf4689d50 linkmode_set_pause +EXPORT_SYMBOL_GPL vmlinux 0xf485d7a6 ring_buffer_swap_cpu +EXPORT_SYMBOL_GPL vmlinux 0xf4a07f9a efivar_entry_size +EXPORT_SYMBOL_GPL vmlinux 0xf4aac760 device_link_del +EXPORT_SYMBOL_GPL vmlinux 0xf4af35c2 rcu_gp_is_normal +EXPORT_SYMBOL_GPL vmlinux 0xf4b44944 sock_inuse_get +EXPORT_SYMBOL_GPL vmlinux 0xf4d99833 fwnode_property_read_u16_array +EXPORT_SYMBOL_GPL vmlinux 0xf4da71b3 public_key_verify_signature +EXPORT_SYMBOL_GPL vmlinux 0xf4e335f1 dmaengine_desc_get_metadata_ptr +EXPORT_SYMBOL_GPL vmlinux 0xf4e67a07 dev_pm_qos_remove_notifier +EXPORT_SYMBOL_GPL vmlinux 0xf4f0f0e9 usb_free_urb +EXPORT_SYMBOL_GPL vmlinux 0xf4f69d1f clk_hw_unregister_gate +EXPORT_SYMBOL_GPL vmlinux 0xf503317e fscrypt_file_open +EXPORT_SYMBOL_GPL vmlinux 0xf5076f65 fuse_file_poll +EXPORT_SYMBOL_GPL vmlinux 0xf50bb9b8 isa_register_driver +EXPORT_SYMBOL_GPL vmlinux 0xf50e911e copy_reserved_iova +EXPORT_SYMBOL_GPL vmlinux 0xf5163b4f devm_phy_get +EXPORT_SYMBOL_GPL vmlinux 0xf54bd49b lcm +EXPORT_SYMBOL_GPL vmlinux 0xf553318d cpuidle_pause_and_lock +EXPORT_SYMBOL_GPL vmlinux 0xf5660c74 sdio_readl +EXPORT_SYMBOL_GPL vmlinux 0xf56d730f irq_create_direct_mapping +EXPORT_SYMBOL_GPL vmlinux 0xf584174d xen_pci_frontend +EXPORT_SYMBOL_GPL vmlinux 0xf58ebce8 component_add +EXPORT_SYMBOL_GPL vmlinux 0xf5a3ba99 linear_range_values_in_range +EXPORT_SYMBOL_GPL vmlinux 0xf5a691cd invalidate_bh_lrus +EXPORT_SYMBOL_GPL vmlinux 0xf5af01b6 tcp_slow_start +EXPORT_SYMBOL_GPL vmlinux 0xf5c1cae6 gpio_to_desc +EXPORT_SYMBOL_GPL vmlinux 0xf5d7eb5a register_ftrace_export +EXPORT_SYMBOL_GPL vmlinux 0xf5f12a6f usb_get_phy +EXPORT_SYMBOL_GPL vmlinux 0xf5f370e0 async_schedule_node +EXPORT_SYMBOL_GPL vmlinux 0xf600968d iommu_set_fault_handler +EXPORT_SYMBOL_GPL vmlinux 0xf604f670 platform_device_alloc +EXPORT_SYMBOL_GPL vmlinux 0xf6142abf pci_rescan_bus +EXPORT_SYMBOL_GPL vmlinux 0xf622dd90 rio_request_mport_dma +EXPORT_SYMBOL_GPL vmlinux 0xf6230e49 fpregs_mark_activate +EXPORT_SYMBOL_GPL vmlinux 0xf63646d6 pci_epc_remove_epf +EXPORT_SYMBOL_GPL vmlinux 0xf64dec76 dequeue_signal +EXPORT_SYMBOL_GPL vmlinux 0xf65461f8 lwtunnel_valid_encap_type_attr +EXPORT_SYMBOL_GPL vmlinux 0xf65eac43 bpf_map_inc_with_uref +EXPORT_SYMBOL_GPL vmlinux 0xf663ee2f pcap_adc_sync +EXPORT_SYMBOL_GPL vmlinux 0xf671d928 blk_freeze_queue_start +EXPORT_SYMBOL_GPL vmlinux 0xf671e2f0 __pci_reset_function_locked +EXPORT_SYMBOL_GPL vmlinux 0xf678bf2f sysfs_create_link_nowarn +EXPORT_SYMBOL_GPL vmlinux 0xf6a28554 region_intersects +EXPORT_SYMBOL_GPL vmlinux 0xf6b5cbfb dm_suspended +EXPORT_SYMBOL_GPL vmlinux 0xf6c71a25 cper_severity_str +EXPORT_SYMBOL_GPL vmlinux 0xf6c8dc62 cpu_hotplug_enable +EXPORT_SYMBOL_GPL vmlinux 0xf6c9228c sbitmap_queue_wake_all +EXPORT_SYMBOL_GPL vmlinux 0xf6e772c3 irq_bypass_unregister_producer +EXPORT_SYMBOL_GPL vmlinux 0xf6e874f5 ata_timing_merge +EXPORT_SYMBOL_GPL vmlinux 0xf6f16c56 rcu_barrier_tasks +EXPORT_SYMBOL_GPL vmlinux 0xf6f8b80a tps65912_device_exit +EXPORT_SYMBOL_GPL vmlinux 0xf6fdff0c regmap_raw_write +EXPORT_SYMBOL_GPL vmlinux 0xf7041916 device_property_read_string +EXPORT_SYMBOL_GPL vmlinux 0xf70e4a4d preempt_schedule_notrace +EXPORT_SYMBOL_GPL vmlinux 0xf73c6a89 tpm2_get_cc_attrs_tbl +EXPORT_SYMBOL_GPL vmlinux 0xf7455c16 input_event_to_user +EXPORT_SYMBOL_GPL vmlinux 0xf749debc md5_zero_message_hash +EXPORT_SYMBOL_GPL vmlinux 0xf74bb274 mod_delayed_work_on +EXPORT_SYMBOL_GPL vmlinux 0xf74e7c93 jump_label_rate_limit +EXPORT_SYMBOL_GPL vmlinux 0xf7604204 pwm_put +EXPORT_SYMBOL_GPL vmlinux 0xf767ca35 fixed_percpu_data +EXPORT_SYMBOL_GPL vmlinux 0xf772f9ea regulator_get_error_flags +EXPORT_SYMBOL_GPL vmlinux 0xf775399e devm_nvmem_register +EXPORT_SYMBOL_GPL vmlinux 0xf7866b4f bind_evtchn_to_irqhandler_lateeoi +EXPORT_SYMBOL_GPL vmlinux 0xf7a2687e user_free_preparse +EXPORT_SYMBOL_GPL vmlinux 0xf7a6adae page_cache_readahead_unbounded +EXPORT_SYMBOL_GPL vmlinux 0xf7aa0b8d crypto_hash_walk_first +EXPORT_SYMBOL_GPL vmlinux 0xf7bc95b0 devlink_fmsg_pair_nest_start +EXPORT_SYMBOL_GPL vmlinux 0xf7c3f273 xen_resume_notifier_register +EXPORT_SYMBOL_GPL vmlinux 0xf7d961d8 clk_hw_unregister_composite +EXPORT_SYMBOL_GPL vmlinux 0xf80e3886 wm8350_read_auxadc +EXPORT_SYMBOL_GPL vmlinux 0xf81249ab report_iommu_fault +EXPORT_SYMBOL_GPL vmlinux 0xf82f3657 work_on_cpu +EXPORT_SYMBOL_GPL vmlinux 0xf83153b6 bpf_map_inc +EXPORT_SYMBOL_GPL vmlinux 0xf834c26d housekeeping_test_cpu +EXPORT_SYMBOL_GPL vmlinux 0xf84d82ae firmware_request_platform +EXPORT_SYMBOL_GPL vmlinux 0xf84e28a2 srcu_barrier +EXPORT_SYMBOL_GPL vmlinux 0xf84ed30c phy_gbit_all_ports_features +EXPORT_SYMBOL_GPL vmlinux 0xf85a0f1a xenbus_dev_changed +EXPORT_SYMBOL_GPL vmlinux 0xf872dffa bind_interdomain_evtchn_to_irq_lateeoi +EXPORT_SYMBOL_GPL vmlinux 0xf87d205e update_time +EXPORT_SYMBOL_GPL vmlinux 0xf87eb9a5 shmem_zero_setup +EXPORT_SYMBOL_GPL vmlinux 0xf880cf6b sk_psock_destroy +EXPORT_SYMBOL_GPL vmlinux 0xf881cecd load_fixmap_gdt +EXPORT_SYMBOL_GPL vmlinux 0xf88faea8 ata_bmdma_port_ops +EXPORT_SYMBOL_GPL vmlinux 0xf8bb2d19 bpf_prog_select_runtime +EXPORT_SYMBOL_GPL vmlinux 0xf8c330fa __blkg_prfill_u64 +EXPORT_SYMBOL_GPL vmlinux 0xf8c5c782 acpi_dev_remove_driver_gpios +EXPORT_SYMBOL_GPL vmlinux 0xf8ce4643 crypto_alloc_base +EXPORT_SYMBOL_GPL vmlinux 0xf8dbc798 crypto_unregister_acomps +EXPORT_SYMBOL_GPL vmlinux 0xf8e1f16f pci_msi_prepare +EXPORT_SYMBOL_GPL vmlinux 0xf8f3a0fb ata_ratelimit +EXPORT_SYMBOL_GPL vmlinux 0xf8fe3986 pat_pfn_immune_to_uc_mtrr +EXPORT_SYMBOL_GPL vmlinux 0xf90a26d4 ata_scsi_queuecmd +EXPORT_SYMBOL_GPL vmlinux 0xf912b7e3 pm_generic_restore_early +EXPORT_SYMBOL_GPL vmlinux 0xf913116a pci_epf_unregister_driver +EXPORT_SYMBOL_GPL vmlinux 0xf91ab2ed __tracepoint_arm_event +EXPORT_SYMBOL_GPL vmlinux 0xf932015f __raw_notifier_call_chain +EXPORT_SYMBOL_GPL vmlinux 0xf93911f8 iommu_page_response +EXPORT_SYMBOL_GPL vmlinux 0xf947cda6 blk_mq_unfreeze_queue +EXPORT_SYMBOL_GPL vmlinux 0xf95322f4 kthread_parkme +EXPORT_SYMBOL_GPL vmlinux 0xf955e9c5 bprintf +EXPORT_SYMBOL_GPL vmlinux 0xf95fc2cd raw_hash_sk +EXPORT_SYMBOL_GPL vmlinux 0xf9a054b5 __round_jiffies +EXPORT_SYMBOL_GPL vmlinux 0xf9a5bb53 iommu_fwspec_add_ids +EXPORT_SYMBOL_GPL vmlinux 0xf9a9adc5 gov_attr_set_get +EXPORT_SYMBOL_GPL vmlinux 0xf9ac1819 dw_pcie_find_ext_capability +EXPORT_SYMBOL_GPL vmlinux 0xf9aebf09 usb_anchor_urb +EXPORT_SYMBOL_GPL vmlinux 0xf9b08686 usb_get_maximum_speed +EXPORT_SYMBOL_GPL vmlinux 0xf9b5ce12 dax_supported +EXPORT_SYMBOL_GPL vmlinux 0xf9b5ffb1 component_master_del +EXPORT_SYMBOL_GPL vmlinux 0xf9cafd7e regulator_disable_regmap +EXPORT_SYMBOL_GPL vmlinux 0xf9eed7d4 devlink_flash_update_status_notify +EXPORT_SYMBOL_GPL vmlinux 0xfa0a8896 acpi_dev_resource_io +EXPORT_SYMBOL_GPL vmlinux 0xfa145a4b iommu_device_sysfs_add +EXPORT_SYMBOL_GPL vmlinux 0xfa1eb910 unregister_syscore_ops +EXPORT_SYMBOL_GPL vmlinux 0xfa2c0ced led_get_default_pattern +EXPORT_SYMBOL_GPL vmlinux 0xfa3258c0 handle_fasteoi_irq +EXPORT_SYMBOL_GPL vmlinux 0xfa349688 aer_recover_queue +EXPORT_SYMBOL_GPL vmlinux 0xfa35044a alternatives_patched +EXPORT_SYMBOL_GPL vmlinux 0xfa3d1a6f spi_take_timestamp_pre +EXPORT_SYMBOL_GPL vmlinux 0xfa3d877f dma_get_any_slave_channel +EXPORT_SYMBOL_GPL vmlinux 0xfa42ab65 pm_clk_add_notifier +EXPORT_SYMBOL_GPL vmlinux 0xfa49312c dev_pm_domain_attach_by_id +EXPORT_SYMBOL_GPL vmlinux 0xfa5d1112 pinctrl_get_group_pins +EXPORT_SYMBOL_GPL vmlinux 0xfa633674 regulator_set_soft_start_regmap +EXPORT_SYMBOL_GPL vmlinux 0xfa666974 queue_work_node +EXPORT_SYMBOL_GPL vmlinux 0xfa66e37a tpm_tis_resume +EXPORT_SYMBOL_GPL vmlinux 0xfa680218 list_lru_walk_one +EXPORT_SYMBOL_GPL vmlinux 0xfa690589 netdev_cmd_to_name +EXPORT_SYMBOL_GPL vmlinux 0xfa6da694 devm_platform_ioremap_resource +EXPORT_SYMBOL_GPL vmlinux 0xfa71606d ohci_restart +EXPORT_SYMBOL_GPL vmlinux 0xfa78a1cb tpm_send +EXPORT_SYMBOL_GPL vmlinux 0xfa7a3ecd class_find_device +EXPORT_SYMBOL_GPL vmlinux 0xfa823077 i2c_get_device_id +EXPORT_SYMBOL_GPL vmlinux 0xfa9a79d8 regulator_set_load +EXPORT_SYMBOL_GPL vmlinux 0xfa9a7a9a debugfs_create_symlink +EXPORT_SYMBOL_GPL vmlinux 0xfaa4bcd9 bio_alloc_mddev +EXPORT_SYMBOL_GPL vmlinux 0xfab30dc0 mdio_bus_exit +EXPORT_SYMBOL_GPL vmlinux 0xfab53ed9 pinctrl_gpio_can_use_line +EXPORT_SYMBOL_GPL vmlinux 0xfad9c827 kill_dax +EXPORT_SYMBOL_GPL vmlinux 0xfafc2eeb extcon_set_state +EXPORT_SYMBOL_GPL vmlinux 0xfb05d9f5 rtc_update_irq_enable +EXPORT_SYMBOL_GPL vmlinux 0xfb0ec7a4 efivar_entry_set +EXPORT_SYMBOL_GPL vmlinux 0xfb28a38f ip6_dst_lookup +EXPORT_SYMBOL_GPL vmlinux 0xfb322290 devfreq_event_get_edev_by_phandle +EXPORT_SYMBOL_GPL vmlinux 0xfb32b30f ring_buffer_read_prepare_sync +EXPORT_SYMBOL_GPL vmlinux 0xfb3dfe8a page_reporting_unregister +EXPORT_SYMBOL_GPL vmlinux 0xfb53eacb regulator_is_supported_voltage +EXPORT_SYMBOL_GPL vmlinux 0xfb59ef54 vring_new_virtqueue +EXPORT_SYMBOL_GPL vmlinux 0xfb6a6d52 acpi_subsys_complete +EXPORT_SYMBOL_GPL vmlinux 0xfb6eedf9 power_group_name +EXPORT_SYMBOL_GPL vmlinux 0xfb906e26 pci_sriov_get_totalvfs +EXPORT_SYMBOL_GPL vmlinux 0xfb92045c dma_async_device_channel_register +EXPORT_SYMBOL_GPL vmlinux 0xfba52679 regmap_get_val_endian +EXPORT_SYMBOL_GPL vmlinux 0xfba998c3 dma_buf_end_cpu_access +EXPORT_SYMBOL_GPL vmlinux 0xfbad3c2b pinctrl_pm_select_idle_state +EXPORT_SYMBOL_GPL vmlinux 0xfbbac6c8 blkg_conf_prep +EXPORT_SYMBOL_GPL vmlinux 0xfbbd41ca no_action +EXPORT_SYMBOL_GPL vmlinux 0xfbbdbd96 xdp_attachment_setup +EXPORT_SYMBOL_GPL vmlinux 0xfbcdc74e fat_add_entries +EXPORT_SYMBOL_GPL vmlinux 0xfbdfc558 hrtimer_start_range_ns +EXPORT_SYMBOL_GPL vmlinux 0xfbe1eef2 ping_getfrag +EXPORT_SYMBOL_GPL vmlinux 0xfbe28889 sk_clear_memalloc +EXPORT_SYMBOL_GPL vmlinux 0xfbeb20c9 __clk_determine_rate +EXPORT_SYMBOL_GPL vmlinux 0xfbfa0abf pci_disable_sriov +EXPORT_SYMBOL_GPL vmlinux 0xfbff52e3 xdp_rxq_info_unreg +EXPORT_SYMBOL_GPL vmlinux 0xfbffd601 net_prio_cgrp_subsys_on_dfl_key +EXPORT_SYMBOL_GPL vmlinux 0xfc03d97a page_is_ram +EXPORT_SYMBOL_GPL vmlinux 0xfc0797e4 free_iova_fast +EXPORT_SYMBOL_GPL vmlinux 0xfc14bb2e dm_get_dev_t +EXPORT_SYMBOL_GPL vmlinux 0xfc19bc45 crypto_dh_encode_key +EXPORT_SYMBOL_GPL vmlinux 0xfc201b66 sprint_oid +EXPORT_SYMBOL_GPL vmlinux 0xfc254d15 gnttab_free_auto_xlat_frames +EXPORT_SYMBOL_GPL vmlinux 0xfc3b4246 acpi_bus_update_power +EXPORT_SYMBOL_GPL vmlinux 0xfc4366e9 mmu_interval_read_begin +EXPORT_SYMBOL_GPL vmlinux 0xfc471d0f pinctrl_put +EXPORT_SYMBOL_GPL vmlinux 0xfc506532 devm_regulator_get +EXPORT_SYMBOL_GPL vmlinux 0xfc746b3c gnttab_page_cache_shrink +EXPORT_SYMBOL_GPL vmlinux 0xfcaa1642 wm8997_patch +EXPORT_SYMBOL_GPL vmlinux 0xfcc1edd3 memory_block_size_bytes +EXPORT_SYMBOL_GPL vmlinux 0xfcd1ff28 is_skb_forwardable +EXPORT_SYMBOL_GPL vmlinux 0xfcec8e10 crypto_alloc_acomp +EXPORT_SYMBOL_GPL vmlinux 0xfcf61a3b bio_iov_iter_get_pages +EXPORT_SYMBOL_GPL vmlinux 0xfd06d51b phy_pm_runtime_allow +EXPORT_SYMBOL_GPL vmlinux 0xfd0ef6e4 gpiochip_irq_domain_deactivate +EXPORT_SYMBOL_GPL vmlinux 0xfd2ed710 acpi_subsys_restore_early +EXPORT_SYMBOL_GPL vmlinux 0xfd36a887 xfrm_state_afinfo_get_rcu +EXPORT_SYMBOL_GPL vmlinux 0xfd3a0bcb phy_resolve_aneg_linkmode +EXPORT_SYMBOL_GPL vmlinux 0xfd40d7e4 rio_set_port_lockout +EXPORT_SYMBOL_GPL vmlinux 0xfd4624f7 i2c_match_id +EXPORT_SYMBOL_GPL vmlinux 0xfd48c446 __netpoll_free +EXPORT_SYMBOL_GPL vmlinux 0xfd544984 usb_amd_pt_check_port +EXPORT_SYMBOL_GPL vmlinux 0xfd5b3986 security_inode_mkdir +EXPORT_SYMBOL_GPL vmlinux 0xfd63a28d l3mdev_master_ifindex_rcu +EXPORT_SYMBOL_GPL vmlinux 0xfd7243c7 erst_disable +EXPORT_SYMBOL_GPL vmlinux 0xfd8bade6 sdio_f0_writeb +EXPORT_SYMBOL_GPL vmlinux 0xfd9f5f87 kstrdup_quotable_cmdline +EXPORT_SYMBOL_GPL vmlinux 0xfdbd7a17 crypto_get_attr_type +EXPORT_SYMBOL_GPL vmlinux 0xfdc2f9aa device_get_next_child_node +EXPORT_SYMBOL_GPL vmlinux 0xfdc6266a sis_info133_for_sata +EXPORT_SYMBOL_GPL vmlinux 0xfddd3ef1 fat_flush_inodes +EXPORT_SYMBOL_GPL vmlinux 0xfde60a1a crypto_alloc_aead +EXPORT_SYMBOL_GPL vmlinux 0xfdf637af dm_table_device_name +EXPORT_SYMBOL_GPL vmlinux 0xfdf9754f genphy_c45_aneg_done +EXPORT_SYMBOL_GPL vmlinux 0xfe01dca7 crypto_register_scomp +EXPORT_SYMBOL_GPL vmlinux 0xfe08df7b dma_buf_unmap_attachment +EXPORT_SYMBOL_GPL vmlinux 0xfe0e7cd3 apei_exec_post_unmap_gars +EXPORT_SYMBOL_GPL vmlinux 0xfe2d1dbd dm_path_uevent +EXPORT_SYMBOL_GPL vmlinux 0xfe31c6a4 __tracepoint_block_bio_complete +EXPORT_SYMBOL_GPL vmlinux 0xfe3250ce dma_resv_test_signaled_rcu +EXPORT_SYMBOL_GPL vmlinux 0xfe3d8ee6 devlink_flash_update_end_notify +EXPORT_SYMBOL_GPL vmlinux 0xfe45ff6e virtqueue_enable_cb +EXPORT_SYMBOL_GPL vmlinux 0xfe476039 ktime_get_resolution_ns +EXPORT_SYMBOL_GPL vmlinux 0xfe57a990 da903x_reads +EXPORT_SYMBOL_GPL vmlinux 0xfe69325f percpu_ref_resurrect +EXPORT_SYMBOL_GPL vmlinux 0xfe6e803d clk_hw_get_rate +EXPORT_SYMBOL_GPL vmlinux 0xfe727411 get_phys_to_machine +EXPORT_SYMBOL_GPL vmlinux 0xfe75ea73 pci_epc_get_msix +EXPORT_SYMBOL_GPL vmlinux 0xfe82097a __fput_sync +EXPORT_SYMBOL_GPL vmlinux 0xfe89418f scsi_autopm_put_device +EXPORT_SYMBOL_GPL vmlinux 0xfe8cdb84 ring_buffer_alloc_read_page +EXPORT_SYMBOL_GPL vmlinux 0xfe990052 gpio_free +EXPORT_SYMBOL_GPL vmlinux 0xfea77460 regulator_suspend_disable +EXPORT_SYMBOL_GPL vmlinux 0xfed11ed1 usb_mon_deregister +EXPORT_SYMBOL_GPL vmlinux 0xfee22afe thermal_cooling_device_register +EXPORT_SYMBOL_GPL vmlinux 0xfee79475 xhci_gen_setup +EXPORT_SYMBOL_GPL vmlinux 0xfeedb884 iommu_present +EXPORT_SYMBOL_GPL vmlinux 0xfeeecd05 apei_read +EXPORT_SYMBOL_GPL vmlinux 0xfef26f55 efivars_unregister +EXPORT_SYMBOL_GPL vmlinux 0xfefd5ded clk_hw_set_rate_range +EXPORT_SYMBOL_GPL vmlinux 0xff01259c da9052_adc_read_temp +EXPORT_SYMBOL_GPL vmlinux 0xff04f58c ata_eh_analyze_ncq_error +EXPORT_SYMBOL_GPL vmlinux 0xff05fa13 vring_interrupt +EXPORT_SYMBOL_GPL vmlinux 0xff1e67b9 setup_APIC_eilvt +EXPORT_SYMBOL_GPL vmlinux 0xff2652ad fsnotify_add_mark +EXPORT_SYMBOL_GPL vmlinux 0xff291ecf clk_unregister_divider +EXPORT_SYMBOL_GPL vmlinux 0xff3c76bf unregister_hw_breakpoint +EXPORT_SYMBOL_GPL vmlinux 0xff3d55c0 __iptunnel_pull_header +EXPORT_SYMBOL_GPL vmlinux 0xff4c2fdb inet_csk_listen_start +EXPORT_SYMBOL_GPL vmlinux 0xff5a8cfe cn_del_callback +EXPORT_SYMBOL_GPL vmlinux 0xff81487d gpiod_remove_lookup_table +EXPORT_SYMBOL_GPL vmlinux 0xff8e74e2 arch_haltpoll_enable +EXPORT_SYMBOL_GPL vmlinux 0xff979d60 usb_submit_urb +EXPORT_SYMBOL_GPL vmlinux 0xff9d5c06 memremap_pages +EXPORT_SYMBOL_GPL vmlinux 0xff9e23d1 hugetlb_cgrp_subsys_on_dfl_key +EXPORT_SYMBOL_GPL vmlinux 0xffa329e0 acpi_kobj +EXPORT_SYMBOL_GPL vmlinux 0xffae8e8b nsecs_to_jiffies +EXPORT_SYMBOL_GPL vmlinux 0xffd796ae ata_sff_hsm_move +EXPORT_SYMBOL_GPL vmlinux 0xffdb499d register_asymmetric_key_parser +EXPORT_SYMBOL_GPL vmlinux 0xffdc2040 evict_inodes +EXPORT_SYMBOL_GPL vmlinux 0xfffaa507 dma_buf_put +EXPORT_SYMBOL_GPL vmlinux 0xfffd7a99 pin_user_pages_fast +FIRMWARE_LOADER_PRIVATE EXPORT_SYMBOL_GPL 0xd3ae7756 fw_fallback_config vmlinux +LTC2497 EXPORT_SYMBOL 0x28459eb8 ltc2497core_remove drivers/iio/adc/ltc2497-core +LTC2497 EXPORT_SYMBOL 0x3ddf6714 ltc2497core_probe drivers/iio/adc/ltc2497-core +MCB EXPORT_SYMBOL_GPL 0x000ea1c0 mcb_alloc_dev drivers/mcb/mcb +MCB EXPORT_SYMBOL_GPL 0x225c5d02 mcb_alloc_bus drivers/mcb/mcb +MCB EXPORT_SYMBOL_GPL 0x24b482bd mcb_get_irq drivers/mcb/mcb +MCB EXPORT_SYMBOL_GPL 0x50170fd0 mcb_bus_add_devices drivers/mcb/mcb +MCB EXPORT_SYMBOL_GPL 0x6caf4dd8 mcb_bus_put drivers/mcb/mcb +MCB EXPORT_SYMBOL_GPL 0x8810e11e mcb_get_resource drivers/mcb/mcb +MCB EXPORT_SYMBOL_GPL 0x97df6c94 mcb_bus_get drivers/mcb/mcb +MCB EXPORT_SYMBOL_GPL 0xae07038f chameleon_parse_cells drivers/mcb/mcb +MCB EXPORT_SYMBOL_GPL 0xbd7ef4b9 mcb_device_register drivers/mcb/mcb +MCB EXPORT_SYMBOL_GPL 0xd8016e4c __mcb_register_driver drivers/mcb/mcb +MCB EXPORT_SYMBOL_GPL 0xde0980cd mcb_free_dev drivers/mcb/mcb +MCB EXPORT_SYMBOL_GPL 0xe0ba9893 mcb_release_bus drivers/mcb/mcb +MCB EXPORT_SYMBOL_GPL 0xe73b2f42 mcb_request_mem drivers/mcb/mcb +MCB EXPORT_SYMBOL_GPL 0xeb2c8905 mcb_release_mem drivers/mcb/mcb +MCB EXPORT_SYMBOL_GPL 0xfedc076c mcb_unregister_driver drivers/mcb/mcb +SND_SOC_SOF_HDA_AUDIO_CODEC EXPORT_SYMBOL 0x102bccb0 hda_codec_jack_wake_enable sound/soc/sof/intel/snd-sof-intel-hda +SND_SOC_SOF_HDA_AUDIO_CODEC EXPORT_SYMBOL 0xa50cf6db hda_codec_jack_check sound/soc/sof/intel/snd-sof-intel-hda +SND_SOC_SOF_HDA_AUDIO_CODEC EXPORT_SYMBOL 0xaaf99c7f hda_codec_probe_bus sound/soc/sof/intel/snd-sof-intel-hda +SND_SOC_SOF_HDA_AUDIO_CODEC_I915 EXPORT_SYMBOL 0x2987166e hda_codec_i915_display_power sound/soc/sof/intel/snd-sof-intel-hda +SND_SOC_SOF_HDA_AUDIO_CODEC_I915 EXPORT_SYMBOL 0x43947153 hda_codec_i915_init sound/soc/sof/intel/snd-sof-intel-hda +SND_SOC_SOF_HDA_AUDIO_CODEC_I915 EXPORT_SYMBOL 0x9d1c9650 hda_codec_i915_exit sound/soc/sof/intel/snd-sof-intel-hda +SND_SOC_SOF_INTEL_HDA_COMMON EXPORT_SYMBOL 0x0ec08d08 sof_cnl_ops sound/soc/sof/intel/snd-sof-intel-hda-common +SND_SOC_SOF_INTEL_HDA_COMMON EXPORT_SYMBOL 0x5b5be595 apl_chip_info sound/soc/sof/intel/snd-sof-intel-hda-common +SND_SOC_SOF_INTEL_HDA_COMMON EXPORT_SYMBOL 0x61cf31b7 icl_chip_info sound/soc/sof/intel/snd-sof-intel-hda-common +SND_SOC_SOF_INTEL_HDA_COMMON EXPORT_SYMBOL 0x703e1716 tgl_chip_info sound/soc/sof/intel/snd-sof-intel-hda-common +SND_SOC_SOF_INTEL_HDA_COMMON EXPORT_SYMBOL 0x7b046de6 sof_apl_ops sound/soc/sof/intel/snd-sof-intel-hda-common +SND_SOC_SOF_INTEL_HDA_COMMON EXPORT_SYMBOL 0xa9a9b2b6 jsl_chip_info sound/soc/sof/intel/snd-sof-intel-hda-common +SND_SOC_SOF_INTEL_HDA_COMMON EXPORT_SYMBOL 0xacf31f39 ehl_chip_info sound/soc/sof/intel/snd-sof-intel-hda-common +SND_SOC_SOF_INTEL_HDA_COMMON EXPORT_SYMBOL 0xf4d48b52 cnl_chip_info sound/soc/sof/intel/snd-sof-intel-hda-common +SND_SOC_SOF_INTEL_HIFI_EP_IPC EXPORT_SYMBOL 0x2288ebf6 intel_ipc_msg_data sound/soc/sof/intel/snd-sof-intel-ipc +SND_SOC_SOF_INTEL_HIFI_EP_IPC EXPORT_SYMBOL 0xa1271f0e intel_pcm_open sound/soc/sof/intel/snd-sof-intel-ipc +SND_SOC_SOF_INTEL_HIFI_EP_IPC EXPORT_SYMBOL 0xbaffeeb3 intel_ipc_pcm_params sound/soc/sof/intel/snd-sof-intel-ipc +SND_SOC_SOF_INTEL_HIFI_EP_IPC EXPORT_SYMBOL 0xd047adb2 intel_pcm_close sound/soc/sof/intel/snd-sof-intel-ipc +SND_SOC_SOF_MERRIFIELD EXPORT_SYMBOL 0x127945f9 sof_tng_ops sound/soc/sof/intel/snd-sof-intel-byt +SND_SOC_SOF_MERRIFIELD EXPORT_SYMBOL 0x8639b9f0 tng_chip_info sound/soc/sof/intel/snd-sof-intel-byt +SND_SOC_SOF_XTENSA EXPORT_SYMBOL 0x2f4a33cc sof_xtensa_arch_ops sound/soc/sof/xtensa/snd-sof-xtensa-dsp +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 0x0bae92f3 usb_stor_ctrl_transfer drivers/usb/storage/usb-storage +USB_STORAGE EXPORT_SYMBOL_GPL 0x120c863b usb_stor_bulk_srb 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 0x23c693eb usb_stor_CB_reset drivers/usb/storage/usb-storage +USB_STORAGE EXPORT_SYMBOL_GPL 0x250eaaa1 usb_stor_post_reset drivers/usb/storage/usb-storage +USB_STORAGE EXPORT_SYMBOL_GPL 0x347c5e46 usb_stor_access_xfer_buf drivers/usb/storage/usb-storage +USB_STORAGE EXPORT_SYMBOL_GPL 0x3cbe3cc2 usb_stor_bulk_transfer_sg drivers/usb/storage/usb-storage +USB_STORAGE EXPORT_SYMBOL_GPL 0x44a98311 usb_stor_adjust_quirks drivers/usb/storage/usb-storage +USB_STORAGE EXPORT_SYMBOL_GPL 0x59b44629 usb_stor_clear_halt drivers/usb/storage/usb-storage +USB_STORAGE EXPORT_SYMBOL_GPL 0x5e4aea2b usb_stor_set_xfer_buf drivers/usb/storage/usb-storage +USB_STORAGE EXPORT_SYMBOL_GPL 0x6744d999 usb_stor_Bulk_transport drivers/usb/storage/usb-storage +USB_STORAGE EXPORT_SYMBOL_GPL 0x6aee32e1 usb_stor_suspend drivers/usb/storage/usb-storage +USB_STORAGE EXPORT_SYMBOL_GPL 0x6f1f8163 usb_stor_transparent_scsi_command drivers/usb/storage/usb-storage +USB_STORAGE EXPORT_SYMBOL_GPL 0x77d0b9d5 usb_stor_control_msg drivers/usb/storage/usb-storage +USB_STORAGE EXPORT_SYMBOL_GPL 0x7bb004c8 usb_stor_disconnect drivers/usb/storage/usb-storage +USB_STORAGE EXPORT_SYMBOL_GPL 0x938cd5aa usb_stor_host_template_init drivers/usb/storage/usb-storage +USB_STORAGE EXPORT_SYMBOL_GPL 0x9392a997 usb_stor_resume drivers/usb/storage/usb-storage +USB_STORAGE EXPORT_SYMBOL_GPL 0x97ccc910 usb_stor_probe2 drivers/usb/storage/usb-storage +USB_STORAGE EXPORT_SYMBOL_GPL 0xa1dd853f usb_stor_reset_resume drivers/usb/storage/usb-storage +USB_STORAGE EXPORT_SYMBOL_GPL 0xb424cc05 usb_stor_pre_reset drivers/usb/storage/usb-storage +USB_STORAGE EXPORT_SYMBOL_GPL 0xbc01c02c usb_stor_Bulk_reset drivers/usb/storage/usb-storage +USB_STORAGE EXPORT_SYMBOL_GPL 0xcb97db29 usb_stor_probe1 drivers/usb/storage/usb-storage +USB_STORAGE EXPORT_SYMBOL_GPL 0xef1d6aef fill_inquiry_response drivers/usb/storage/usb-storage +USB_STORAGE EXPORT_SYMBOL_GPL 0xf8ece36f usb_stor_bulk_transfer_buf drivers/usb/storage/usb-storage +USB_STORAGE EXPORT_SYMBOL_GPL 0xfcdd03eb usb_stor_CB_transport drivers/usb/storage/usb-storage --- linux-azure-5.8-5.8.0.orig/debian.master/abi/5.8.0-50.56/amd64/lowlatency.compiler +++ linux-azure-5.8-5.8.0/debian.master/abi/5.8.0-50.56/amd64/lowlatency.compiler @@ -0,0 +1 @@ +GCC: (Ubuntu 10.2.0-13ubuntu1) 10.2.0 --- linux-azure-5.8-5.8.0.orig/debian.master/abi/5.8.0-50.56/amd64/lowlatency.modules +++ linux-azure-5.8-5.8.0/debian.master/abi/5.8.0-50.56/amd64/lowlatency.modules @@ -0,0 +1,5730 @@ +104-quad-8 +3c509 +3c574_cs +3c589_cs +3c59x +3w-9xxx +3w-sas +3w-xxxx +53c700 +6lowpan +6pack +8021q +8139cp +8139too +8250_dw +8250_exar +8250_lpss +8250_men_mcb +8250_mid +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_rdma +9pnet_virtio +9pnet_xen +BusLogic +a100u2w +a3d +a8293 +aacraid +aat2870-regulator +aat2870_bl +ab3100 +ab3100-otp +abituguru +abituguru3 +abp060mg +ac97_bus +acard-ahci +acecad +acenic +acer-wireless +acer-wmi +acerhdf +acp_audio_dma +acpi-als +acpi_configfs +acpi_extlog +acpi_ipmi +acpi_pad +acpi_power_meter +acpi_tad +acpi_thermal_rel +acpiphp_ibm +acquirewdt +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 +ad5064 +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 +ad5770r +ad5791 +ad5820 +ad5933 +ad7091r-base +ad7091r5 +ad7124 +ad714x +ad714x-i2c +ad714x-spi +ad7150 +ad7192 +ad7266 +ad7280a +ad7291 +ad7292 +ad7298 +ad7303 +ad7314 +ad7414 +ad7418 +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 +ad9389b +ad9467 +ad9523 +ad9832 +ad9834 +ad_sigma_delta +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 +ade7854 +ade7854-i2c +ade7854-spi +adf4350 +adf4371 +adf7242 +adfs +adi +adi-axi-adc +adiantum +adin +adis16080 +adis16130 +adis16136 +adis16201 +adis16203 +adis16209 +adis16240 +adis16260 +adis16400 +adis16460 +adis16475 +adis16480 +adis_lib +adjd_s311 +adl_pci6208 +adl_pci7x3x +adl_pci8164 +adl_pci9111 +adl_pci9118 +adm1021 +adm1025 +adm1026 +adm1029 +adm1031 +adm1177 +adm1275 +adm8211 +adm9240 +adp1653 +adp5061 +adp5520-keys +adp5520_bl +adp5588-keys +adp5589-keys +adp8860_bl +adp8870_bl +adq12b +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_pci1710 +adv_pci1720 +adv_pci1723 +adv_pci1724 +adv_pci1760 +adv_pci_dio +advansys +advantechwdt +adxl34x +adxl34x-i2c +adxl34x-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_platform +aic79xx +aic7xxx +aic94xx +aio_aio12_8 +aio_iiro_16 +aiptek +aircable +airo +airo_cs +airspy +ak7375 +ak881x +ak8975 +al3010 +al3320a +alcor +alcor_pci +algif_aead +algif_hash +algif_rng +algif_skcipher +alienware-wmi +alim1535_wdt +alim7101_wdt +altera-ci +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 +ambassador +amc6821 +amd +amd-rng +amd-xgbe +amd5536udc_pci +amd64_edac_mod +amd76xrom +amd8111e +amd_energy +amd_freq_sensitivity +amdgpu +amdtee +amilo-rfkill +amlogic-gxl-crypto +amplc_dio200 +amplc_dio200_common +amplc_dio200_pci +amplc_pc236 +amplc_pc236_common +amplc_pc263 +amplc_pci224 +amplc_pci230 +amplc_pci236 +amplc_pci263 +ams-iaq-core +ams369fg06 +analog +analogix-anx78xx +analogix_dp +ansi_cprng +anubis +aoe +apanel +apds9300 +apds9802als +apds990x +apds9960 +apex +apple-gmux +apple-mfi-fastcharge +apple_bl +appledisplay +applesmc +applespi +appletalk +appletouch +applicom +aptina-pll +aqc111 +aquantia +ar5523 +ar7part +ar9331 +arasan-nand-controller +arc-rawmode +arc-rimi +arc4 +arc_ps2 +arc_uart +arcfb +arcmsr +arcnet +arcxcnn_bl +arizona-haptics +arizona-i2c +arizona-ldo1 +arizona-micsupp +arizona-spi +ark3116 +arkfb +arp_tables +arpt_mangle +arptable_filter +as102_fe +as370-hwmon +as3711-regulator +as3711_bl +as3935 +as5011 +asb100 +asc7621 +ascot2e +ashmem_linux +asix +aspeed-pwm-tacho +aspeed-video +ast +asus-laptop +asus-nb-wmi +asus-wireless +asus-wmi +asus_atk0110 +asym_tpm +async_memcpy +async_pq +async_raid6_recov +async_tx +async_xor +at24 +at25 +at76c50x-usb +at803x +at86rf230 +atbm8830 +aten +ath +ath10k_core +ath10k_pci +ath10k_sdio +ath10k_usb +ath3k +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 +atomisp +atomisp-gc0310 +atomisp-gc2235 +atomisp-libmsrlisthelper +atomisp-lm3554 +atomisp-mt9m114 +atomisp-ov2680 +atomisp-ov2722 +atomisp-ov5693 +atomisp_gmin_platform +atp +atp870u +atusb +atxp1 +aty128fb +atyfb +au0828 +au8522_common +au8522_decoder +au8522_dig +aufs +auo-pixcir-ts +auth_rpcgss +authenc +authencesn +autofs4 +avmfritz +ax25 +ax88179_178a +ax88796b +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 +bareudp +batman-adv +baycom_par +baycom_ser_fdx +baycom_ser_hdx +bcache +bch +bcm-phy-lib +bcm-sf2 +bcm203x +bcm3510 +bcm54140 +bcm590xx +bcm590xx-regulator +bcm5974 +bcm7xxx +bcm87xx +bcma +bcma-hcd +bcmsysport +bd6107 +bd9571mwv +bd9571mwv-regulator +bd99954-charger +bdc +be2iscsi +be2net +befs +bel-pfe +belkin_sa +bfa +bfq +bfs +bfusb +bh1750 +bh1770glc +bh1780 +binder_linux +binfmt_misc +blake2b_generic +blake2s-x86_64 +blake2s_generic +block2mtd +blocklayoutdriver +blowfish-x86_64 +blowfish_common +blowfish_generic +bluecard_cs +bluetooth +bluetooth_6lowpan +bma150 +bma220_spi +bma400_core +bma400_i2c +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 +bmi160_core +bmi160_i2c +bmi160_spi +bmp280 +bmp280-i2c +bmp280-spi +bna +bnep +bnx2 +bnx2fc +bnx2i +bnx2x +bnxt_en +bnxt_re +bochs-drm +bonding +bpa10x +bpck +bpfilter +bpqether +bq2415x_charger +bq24190_charger +bq24257_charger +bq24735-charger +bq25890_charger +bq27xxx_battery +bq27xxx_battery_hdq +bq27xxx_battery_i2c +br2684 +br_netfilter +brcmfmac +brcmsmac +brcmutil +brd +bridge +broadcom +bsd_comp +bt3c_cs +bt819 +bt856 +bt866 +bt878 +btbcm +btcoexist +btintel +btmrvl +btmrvl_sdio +btmtksdio +btmtkuart +btqca +btrfs +btrsi +btrtl +btsdio +bttv +btusb +bu21013_ts +bu21029_ts +budget +budget-av +budget-ci +budget-core +budget-patch +c2port-duramar2150 +c67x00 +c6xdigio +c_can +c_can_pci +c_can_platform +ca8210 +cachefiles +cadence_wdt +cafe_ccic +cafe_nand +caif +caif_hsi +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-j1939 +can-raw +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_das16_cs +cb_pcidas +cb_pcidas64 +cb_pcidda +cb_pcimdas +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 +cdns3 +cdns3-pci-wrap +cec +cec-gpio +ceph +cfag12864b +cfag12864bfb +cfb +cfg80211 +cfi_cmdset_0001 +cfi_cmdset_0002 +cfi_cmdset_0020 +cfi_probe +cfi_util +cfspi_slave +ch +ch341 +ch7006 +ch9200 +chacha-x86_64 +chacha20poly1305 +chacha_generic +chaoskey +charlcd +chcr +chipone_icn8505 +chipreg +chnl_net +chromeos_laptop +chromeos_pstore +chromeos_tbmc +ci_hdrc +ci_hdrc_msm +ci_hdrc_pci +ci_hdrc_usb2 +cicada +cifs +cio-dac +cirrus +cirrusfb +ck804xrom +classmate-laptop +clip +clk-cdce706 +clk-cs2000-cp +clk-max9485 +clk-palmas +clk-pwm +clk-s2mps11 +clk-si5341 +clk-si5351 +clk-si544 +clk-twl6040 +clk-wm831x +cls_basic +cls_bpf +cls_cgroup +cls_flow +cls_flower +cls_fw +cls_matchall +cls_route +cls_rsvp +cls_rsvp6 +cls_tcindex +cls_u32 +cm109 +cm32181 +cm3232 +cm3323 +cm36651 +cm4000_cs +cm4040_cs +cma3000_d0x +cma3000_d0x_i2c +cmac +cmdlinepart +cmtp +cnic +cobalt +cobra +coda +com20020 +com20020-pci +com20020_cs +com90io +com90xx +comedi +comedi_8254 +comedi_8255 +comedi_bond +comedi_isadma +comedi_parport +comedi_pci +comedi_pcmcia +comedi_test +comedi_usb +comm +compal-laptop +contec_pci_dio +cops +cordic +core +coretemp +cortina +cosm_bus +cosm_client +counter +cp210x +cpcihp_generic +cpcihp_zt5550 +cpia2 +cpu5wdt +cpuid +cpuidle-haltpoll +cqhci +cr_bllcd +cramfs +crc-itu-t +crc32-pclmul +crc32_generic +crc4 +crc64 +crc7 +crc8 +crct10dif-pclmul +cros-ec-cec +cros-ec-sensorhub +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_sensors +cros_ec_sensors_core +cros_ec_spi +cros_ec_sysfs +cros_ec_typec +cros_kbd_led_backlight +cros_usbpd-charger +cros_usbpd_logger +cros_usbpd_notify +crvml +cryptd +crypto_engine +crypto_safexcel +crypto_simd +crypto_user +cryptoloop +cs3308 +cs5345 +cs53l32a +cs89x0 +csiostor +ct82c710 +curve25519-generic +curve25519-x86_64 +cuse +cw1200_core +cw1200_wlan_sdio +cw1200_wlan_spi +cw2015_battery +cx18 +cx18-alsa +cx22700 +cx22702 +cx231xx +cx231xx-alsa +cx231xx-dvb +cx2341x +cx23885 +cx24110 +cx24113 +cx24116 +cx24117 +cx24120 +cx24123 +cx25821 +cx25821-alsa +cx25840 +cx82310_eth +cx88-alsa +cx88-blackbird +cx88-dvb +cx88-vp3054-i2c +cx8800 +cx8802 +cx88xx +cxacru +cxd2099 +cxd2820r +cxd2841er +cxd2880 +cxd2880-spi +cxgb +cxgb3 +cxgb3i +cxgb4 +cxgb4i +cxgb4vf +cxgbit +cy8ctma140 +cy8ctmg110_ts +cyapatp +cyber2000fb +cyberjack +cyclades +cypress_cy7c63 +cypress_firmware +cypress_m8 +cytherm +cyttsp4_core +cyttsp4_i2c +cyttsp4_spi +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 +dac02 +daqboard2000 +das08 +das08_cs +das08_isa +das08_pci +das16 +das16m1 +das1800 +das6402 +das800 +davicom +dax_hmem +dax_pmem +dax_pmem_compat +dax_pmem_core +db9 +dc395x +dca +dccp +dccp_diag +dccp_ipv4 +dccp_ipv6 +dcdbas +ddbridge +ddbridge-dummy-fe +de2104x +de4x5 +decnet +defxx +dell-laptop +dell-rbtn +dell-smbios +dell-smm-hwmon +dell-smo8800 +dell-uart-backlight +dell-wmi +dell-wmi-aio +dell-wmi-descriptor +dell-wmi-led +dell_rbu +denali +denali_pci +des3_ede-x86_64 +des_generic +designware_i2s +device_dax +dfl +dfl-afu +dfl-fme +dfl-fme-br +dfl-fme-mgr +dfl-fme-region +dfl-pci +dht11 +diag +dib0070 +dib0090 +dib3000mb +dib3000mc +dib7000m +dib7000p +dib8000 +dib9000 +dibx000_common +digi_acceleport +diskonchip +dl2k +dlci +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-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 +dmard09 +dmard10 +dme1737 +dmfe +dmi-sysfs +dmm32at +dmx3191d +dn_rtmsg +dnet +dp83640 +dp83822 +dp83848 +dp83867 +dp83869 +dp83tc811 +dps310 +dpt_i2o +dptf_power +drbd +drivetemp +drm +drm_kms_helper +drm_mipi_dbi +drm_ttm_helper +drm_vram_helper +drm_xen_front +drv260x +drv2665 +drv2667 +drx39xyj +drxd +drxk +ds1621 +ds1682 +ds1803 +ds1wm +ds2482 +ds2490 +ds2760_battery +ds2780_battery +ds2781_battery +ds2782_battery +ds3000 +ds4424 +ds620 +dsa_core +dsbr100 +dst +dst_ca +dstr +dt2801 +dt2811 +dt2814 +dt2815 +dt2817 +dt282x +dt3000 +dt3155 +dt9812 +dtl1_cs +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 +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 +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 +echainiv +echo +ecrdsa_generic +edac_mce_amd +edt-ft5x06 +ee1004 +eeepc-laptop +eeepc-wmi +eeprom +eeprom_93cx6 +eeprom_93xx46 +eeti_ts +efa +efi-pstore +efi_test +efibc +efs +egalax_ts_serial +ehci-fsl +ehset +einj +ektf2127 +elan_i2c +elo +em28xx +em28xx-alsa +em28xx-dvb +em28xx-rc +em28xx-v4l +em_canid +em_cmp +em_ipset +em_ipt +em_meta +em_nbyte +em_text +em_u32 +emc1403 +emc2103 +emc6w201 +emi26 +emi62 +empeg +ems_pci +ems_pcmcia +ems_usb +emu10k1-gp +ena +enc28j60 +enclosure +encx24j600 +encx24j600-regmap +ene_ir +eni +enic +epat +epia +epic100 +eql +erofs +esas2r +esb2rom +esd_usb2 +esp4 +esp4_offload +esp6 +esp6_offload +esp_scsi +essiv +et1011c +et131x +et8ek8 +ethoc +eurotechwdt +evbug +exc3000 +exfat +extcon-adc-jack +extcon-arizona +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 +failover +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_sys_fops +fb_tinylcd +fb_tls8204 +fb_uc1611 +fb_uc1701 +fb_upd161704 +fb_watterott +fbtft +fc0011 +fc0012 +fc0013 +fc2580 +fcoe +fcrypt +fdomain +fdomain_cs +fdomain_pci +fdp +fdp_i2c +fealnx +ff-memless +fieldbus_dev +fintek-cir +firedtv +firestream +firewire-core +firewire-net +firewire-ohci +firewire-sbp2 +firewire-serial +fit2 +fit3 +fixed +fjes +fl512 +floppy +fm10k +fm801-gp +fm_drv +fmvj18x_cs +fnic +forcedeth +fore_200e +fotg210-hcd +fotg210-udc +fou +fou6 +fpga-bridge +fpga-mgr +fpga-region +freevxfs +friq +frpw +fscache +fschmd +fsia6b +fsl-mph-dr-of +fsl_linflexuart +fsl_lpuart +ftdi-elan +ftdi_sio +ftl +ftrace-direct +ftrace-direct-modify +ftrace-direct-too +ftsteutates +fujitsu-laptop +fujitsu-tablet +fujitsu_ts +fusb302 +fxas21002c_core +fxas21002c_i2c +fxas21002c_spi +fxos8700_core +fxos8700_i2c +fxos8700_spi +g450_pll +g760a +g762 +g_acm_ms +g_audio +g_cdc +g_dbgp +g_ether +g_ffs +g_hid +g_mass_storage +g_midi +g_ncm +g_nokia +g_printer +g_serial +g_webcam +g_zero +gadgetfs +gamecon +gameport +garmin_gps +garp +gasket +gb-audio-apbridgea +gb-audio-gb +gb-audio-manager +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 +gdth +gen_probe +generic +generic-adc-battery +generic_bl +genet +geneve +genwqe_card +gf2k +gfs2 +ghash-clmulni-intel +gl518sm +gl520sm +gl620a +glue_helper +gluebi +gm12u320 +gma500_gfx +gnss +gnss-mtk +gnss-serial +gnss-sirf +gnss-ubx +go7007 +go7007-loader +go7007-usb +goku_udc +goodix +gp2ap002 +gp2ap020a00f +gp8psk-fe +gpd-pocket-fan +gpio +gpio-104-dio-48e +gpio-104-idi-48 +gpio-104-idio-16 +gpio-adp5520 +gpio-adp5588 +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-exar +gpio-f7188x +gpio-generic +gpio-gpio-mm +gpio-ich +gpio-it87 +gpio-janz-ttl +gpio-kempld +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-regulator +gpio-sch +gpio-sch311x +gpio-siox +gpio-tpic2810 +gpio-tps65086 +gpio-tps65912 +gpio-tqmx86 +gpio-twl4030 +gpio-twl6040 +gpio-ucb1400 +gpio-vibra +gpio-viperboard +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_fpga +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 +gtco +gtp +guillemot +gunze +gve +habanalabs +hackrf +hamachi +hampshire +hangcheck-timer +hanwang +hci +hci_nokia +hci_uart +hci_vhci +hd3ss3220 +hd44780 +hdaps +hdc100x +hdlc +hdlc_cisco +hdlc_fr +hdlc_ppp +hdlc_raw +hdlc_raw_eth +hdlc_x25 +hdlcdrv +hdma +hdma_mgmt +hdpvr +he +hecubafb +helene +hexium_gemini +hexium_orion +hfcmulti +hfcpci +hfcsusb +hfi1 +hfs +hfsplus +hgafb +hi311x +hi556 +hi6210-i2s +hi8435 +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-ezkey +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-lg-g15 +hid-logitech +hid-logitech-dj +hid-logitech-hidpp +hid-macally +hid-magicmouse +hid-maltron +hid-mcp2221 +hid-mf +hid-microsoft +hid-monterey +hid-multitouch +hid-nti +hid-ntrig +hid-ortek +hid-penmount +hid-petalynx +hid-picolcd +hid-pl +hid-plantronics +hid-primax +hid-prodikeys +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-sensor-accel-3d +hid-sensor-als +hid-sensor-custom +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-sjoy +hid-sony +hid-speedlink +hid-steam +hid-steelseries +hid-sunplus +hid-tivo +hid-tmff +hid-topseed +hid-twinhan +hid-u2fzero +hid-uclogic +hid-udraw-ps3 +hid-viewsonic +hid-waltop +hid-wiimote +hid-xinmo +hid-zpff +hid-zydacron +hideep +hidp +hih6130 +hinic +hio +hmc425a +hmc5843_core +hmc5843_i2c +hmc5843_spi +hmc6352 +hopper +horizon +horus3a +hostap +hostap_cs +hostap_pci +hostap_plx +hp-wireless +hp-wmi +hp03 +hp206c +hp_accel +hpfs +hpilo +hpsa +hptiop +hpwdt +hsi +hsi_char +hso +hsr +hsu_dma +htc-pasic3 +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 +hyperbus-core +hyperv-keyboard +hyperv_fb +i10nm_edac +i2400m +i2400m-usb +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-cht-wc +i2c-cros-ec-tunnel +i2c-designware-pci +i2c-diolan-u2c +i2c-dln2 +i2c-gpio +i2c-hid +i2c-i801 +i2c-isch +i2c-ismt +i2c-kempld +i2c-matroxfb +i2c-mlxcpld +i2c-multi-instantiate +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-xiic +i3000_edac +i3200_edac +i3c +i3c-master-cdns +i40e +i40iw +i5000_edac +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 +icp +icp10100 +icp_multi +icplus +ics932s401 +ideapad-laptop +ideapad_slidebar +idma64 +idmouse +idt77252 +idt_89hpesx +idt_gen2 +idt_gen3 +idtcps +idxd +ie31200_edac +ie6xx_wdt +ieee802154 +ieee802154_6lowpan +ieee802154_socket +ifb +ifcvf +ife +ifi_canfd +iforce +iforce-serio +iforce-usb +igb +igbvf +igc +igorplugusb +iguanair +ii_pci20kc +iio-trig-hrtimer +iio-trig-interrupt +iio-trig-loop +iio-trig-sysfs +iio_dummy +iio_hwmon +ila +ili210x +ili9225 +ili922x +ili9320 +ili9341 +ili9486 +img-ascii-lcd +img-i2s-in +img-i2s-out +img-parallel-out +img-spdif-in +img-spdif-out +imm +imon +imon_raw +ims-pcu +imx214 +imx219 +imx258 +imx274 +imx290 +imx319 +imx355 +ina209 +ina2xx +ina2xx-adc +ina3221 +industrialio +industrialio-buffer-cb +industrialio-buffer-dma +industrialio-buffer-dmaengine +industrialio-configfs +industrialio-hw-consumer +industrialio-sw-device +industrialio-sw-trigger +industrialio-triggered-buffer +industrialio-triggered-event +inet_diag +inexio +inftl +initio +input-leds +input-polldev +inspur-ipsps +int3400_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-rng +intel-rst +intel-smartconnect +intel-uncore-frequency +intel-vbtn +intel-wmi-sbl-fw-update +intel-wmi-thunderbolt +intel-xhci-usb-role-switch +intel-xway +intel_bxt_pmic_thermal +intel_bxtwc_tmu +intel_cht_int33fe +intel_chtdc_ti_pwrbtn +intel_int0002_vgpio +intel_ips +intel_menlow +intel_mid_powerbtn +intel_mid_thermal +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_scu_ipcutil +intel_scu_pltdrv +intel_soc_dts_iosf +intel_soc_dts_thermal +intel_soc_pmic_bxtwc +intel_soc_pmic_chtdc_ti +intel_soc_pmic_mrfld +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_vr_nor +intelfb +interact +inv-mpu6050 +inv-mpu6050-i2c +inv-mpu6050-spi +io_edgeport +io_ti +ioatdma +iommu_v2 +ionic +iowarrior +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_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_CLUSTERIP +ipt_ECN +ipt_REJECT +ipt_SYNPROXY +ipt_ah +ipt_rpfilter +iptable_filter +iptable_mangle +iptable_nat +iptable_raw +iptable_security +ipu3-cio2 +ipu3-imgu +ipvlan +ipvtap +ipw +ipw2100 +ipw2200 +ipwireless +iqs269a +iqs5xx +iqs620at-temp +iqs621-als +iqs624-pos +iqs62x +iqs62x-keys +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 +ir38064 +irps5401 +irq-madera +isci +iscsi_boot_sysfs +iscsi_ibft +iscsi_target_mod +iscsi_tcp +isdnhdlc +isicom +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 +it87 +it8712f_wdt +it87_wdt +it913x +itd1000 +ite-cir +itg3200 +iuu_phoenix +ivtv +ivtv-alsa +ivtvfb +iw_cm +iw_cxgb4 +iwl3945 +iwl4965 +iwldvm +iwlegacy +iwlmvm +iwlwifi +ix2505v +ixgb +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 +kernelcapi +keyspan +keyspan_pda +keyspan_remote +keywrap +kfifo_buf +khazad +kheaders +kl5kusb105 +kmem +kmx61 +kobil_sct +kpc2000 +kpc2000_i2c +kpc2000_spi +kpc_dma +ks0108 +ks0127 +ks7010 +ks8842 +ks8851 +ks8851_mll +ksz8795 +ksz8795_spi +ksz884x +ksz9477 +ksz9477_i2c +ksz9477_spi +ksz_common +ktti +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 +lcd +ldusb +lec +led-class-flash +leds-88pm860x +leds-adp5520 +leds-apu +leds-as3645a +leds-bd2802 +leds-blinkm +leds-clevo-mail +leds-da903x +leds-da9052 +leds-dac124s085 +leds-gpio +leds-lm3530 +leds-lm3532 +leds-lm3533 +leds-lm355x +leds-lm3601x +leds-lm36274 +leds-lm3642 +leds-lp3944 +leds-lp3952 +leds-lp5521 +leds-lp5523 +leds-lp5562 +leds-lp55xx-common +leds-lp8501 +leds-lp8788 +leds-max8997 +leds-mc13783 +leds-menf21bmc +leds-mlxcpld +leds-mlxreg +leds-mt6323 +leds-nic78bx +leds-pca9532 +leds-pca955x +leds-pca963x +leds-pwm +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-gpio +ledtrig-heartbeat +ledtrig-netdev +ledtrig-oneshot +ledtrig-pattern +ledtrig-timer +ledtrig-transient +ledtrig-usbport +legousbtower +lg-laptop +lg-vl600 +lg2160 +lgdt3305 +lgdt3306a +lgdt330x +lgs8gl5 +lgs8gxx +lib80211 +lib80211_crypt_ccmp +lib80211_crypt_tkip +lib80211_crypt_wep +libahci +libahci_platform +libarc4 +libblake2s +libblake2s-generic +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 +lightning +lineage-pem +linear +liquidio +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 +lmc +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 +ltc1660 +ltc2471 +ltc2485 +ltc2496 +ltc2497 +ltc2497-core +ltc2632 +ltc2941-battery-gauge +ltc2945 +ltc2947-core +ltc2947-i2c +ltc2947-spi +ltc2978 +ltc2983 +ltc2990 +ltc3589 +ltc3676 +ltc3815 +ltc4151 +ltc4215 +ltc4222 +ltc4245 +ltc4260 +ltc4261 +ltpc +ltr501 +ltv350qv +lv0104cs +lv5207lp +lvstest +lxt +lz4 +lz4hc +lz4hc_compress +m2m-deinterlace +m52790 +m5mols +m62332 +m88ds3103 +m88rs2000 +m88rs6000t +mISDN_core +mISDN_dsp +mISDNinfineon +mISDNipac +mISDNisar +m_can +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 +mantis +mantis_core +map_absent +map_funcs +map_ram +map_rom +marvell +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 +max11801_ts +max1241 +max1363 +max14577-regulator +max14577_charger +max1586 +max16064 +max16065 +max1619 +max16601 +max1668 +max17040_battery +max17042_battery +max1721x_battery +max197 +max20730 +max20751 +max2165 +max2175 +max30100 +max30102 +max3100 +max31722 +max31730 +max31785 +max31790 +max31856 +max3420_udc +max3421-hcd +max34440 +max44000 +max44009 +max517 +max5432 +max5481 +max5487 +max63xx_wdt +max6621 +max6639 +max6642 +max6650 +max6697 +max6875 +max7359_keypad +max77693-haptic +max77693-regulator +max77693_charger +max77826-regulator +max8649 +max8660 +max8688 +max8903_charger +max8907 +max8907-regulator +max8925-regulator +max8925_bl +max8925_onkey +max8925_power +max8952 +max8997-regulator +max8997_charger +max8997_haptic +max8998 +max8998_charger +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 +mc44s803 +mcam-core +mcb +mcb-lpc +mcb-pci +mcba_usb +mce-inject +mceusb +mchp23k256 +mcp251x +mcp3021 +mcp320x +mcp3422 +mcp3911 +mcp4018 +mcp41010 +mcp4131 +mcp4531 +mcp4725 +mcp4922 +mcr20a +mcs5000_ts +mcs7830 +mcs_touchkey +mct_u232 +md-cluster +md4 +mdc800 +mdev +mdio +mdio-bcm-unimac +mdio-bitbang +mdio-cavium +mdio-gpio +mdio-i2c +mdio-mscc-miim +mdio-mvusb +mdio-thunder +mdio-xpcs +me4000 +me_daq +megaraid +megaraid_mbox +megaraid_mm +megaraid_sas +mei +mei-me +mei-txe +mei_hdcp +mei_phy +mei_wdt +melfas_mip4 +memory-notifier-error-inject +memstick +men_z135_uart +men_z188_adc +mena21_wdt +menf21bmc +menf21bmc_hwmon +menf21bmc_wdt +menz69_wdt +metro-usb +metronomefb +meye +mf6x4 +mgag200 +mhi +mi0283qt +mic_bus +mic_card +mic_cosm +mic_host +mic_x100_dma +michael_mic +micrel +microchip +microchip_t1 +microread +microread_i2c +microread_mei +microtek +mii +minix +mip6 +mite +mk712 +mkiss +ml86v7667 +mlx-platform +mlx4_core +mlx4_en +mlx4_ib +mlx5_core +mlx5_ib +mlx90614 +mlx90632 +mlx_wdt +mlxfw +mlxreg-fan +mlxreg-hotplug +mlxreg-io +mlxsw_core +mlxsw_i2c +mlxsw_minimal +mlxsw_pci +mlxsw_spectrum +mlxsw_switchib +mlxsw_switchx2 +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_sound +most_usb +most_video +moxa +mp2629 +mp2629_adc +mp2629_charger +mp8859 +mpc624 +mpl115 +mpl115_i2c +mpl115_spi +mpl3115 +mpls_gso +mpls_iptunnel +mpls_router +mpoa +mpr121_touchkey +mpt3sas +mptbase +mptctl +mptfc +mptlan +mptsas +mptscsih +mptspi +mpu3050 +mrf24j40 +mrp +ms5611_core +ms5611_i2c +ms5611_spi +ms5637 +ms_block +ms_sensors_i2c +mscc +mscc_ocelot_common +msdos +msi-laptop +msi-wmi +msi001 +msi2500 +msp3400 +mspro_block +msr +mt2060 +mt2063 +mt20xx +mt2131 +mt2266 +mt312 +mt352 +mt6311-regulator +mt6323-regulator +mt6358-regulator +mt6360-core +mt6397 +mt6397-regulator +mt7530 +mt76 +mt76-usb +mt7601u +mt7603e +mt7615-common +mt7615e +mt7663u +mt76x0-common +mt76x02-lib +mt76x02-usb +mt76x0e +mt76x0u +mt76x2-common +mt76x2e +mt76x2u +mt7915e +mt9m001 +mt9m032 +mt9m111 +mt9p031 +mt9t001 +mt9t112 +mt9v011 +mt9v032 +mt9v111 +mtd +mtd_blkdevs +mtd_dataflash +mtdblock +mtdblock_ro +mtdoops +mtdpstore +mtdram +mtdswap +mtip32xx +mtk-pmic-keys +mtk-sd +mtouch +multipath +multiq3 +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 +mxl111sf-demod +mxl111sf-tuner +mxl301rf +mxl5005s +mxl5007t +mxl5xx +mxm-wmi +mxser +mxuport +myrb +myri10ge +myrs +n411 +n5pf +n_gsm +n_hdlc +n_tracerouter +n_tracesink +nand +nand_ecc +nandcore +nandsim +national +natsemi +nau7802 +navman +nb8800 +nbd +nci +nci_spi +nci_uart +nct6683 +nct6775 +nct7802 +nct7904 +nd_blk +nd_btt +nd_pmem +nd_virtio +ne2k-pci +neofb +net1080 +net2272 +net2280 +net_failover +netconsole +netdevsim +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_flow_table_ipv4 +nf_flow_table_ipv6 +nf_log_arp +nf_log_bridge +nf_log_common +nf_log_ipv4 +nf_log_ipv6 +nf_log_netdev +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_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_counter +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_objref +nft_osf +nft_queue +nft_quota +nft_redir +nft_reject +nft_reject_bridge +nft_reject_inet +nft_reject_ipv4 +nft_reject_ipv6 +nft_socket +nft_synproxy +nft_tproxy +nft_tunnel +nft_xfrm +nftl +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_at_a2150 +ni_at_ao +ni_atmio +ni_atmio16d +ni_daq_700 +ni_daq_dio24 +ni_labpc +ni_labpc_common +ni_labpc_cs +ni_labpc_isadma +ni_labpc_pci +ni_mio_cs +ni_pcidio +ni_pcimio +ni_routing +ni_tio +ni_tiocmd +ni_usb6501 +nic7018_wdt +nicpf +nicstar +nicvf +nilfs2 +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 +noon010pc30 +nosy +notifier-error-inject +nouveau +nozomi +npcm750-pwm-fan +ns +ns558 +ns83820 +nsh +ntb +ntb_hw_idt +ntb_hw_intel +ntb_hw_switchtec +ntb_netdev +ntb_perf +ntb_pingpong +ntb_tool +ntb_transport +ntc_thermistor +ntfs +null_blk +nuvoton-cir +nv_tco +nvidiafb +nvme +nvme-core +nvme-fabrics +nvme-fc +nvme-loop +nvme-rdma +nvme-tcp +nvmem-rave-sp-eeprom +nvmem_qcom-spmi-sdam +nvmet +nvmet-fc +nvmet-rdma +nvmet-tcp +nvram +nxp-nci +nxp-nci_i2c +nxp-tja11xx +nxt200x +nxt6000 +objagg +ocfb +ocfs2 +ocfs2_dlm +ocfs2_dlmfs +ocfs2_nodemanager +ocfs2_stack_o2cb +ocfs2_stack_user +ocfs2_stackglue +ocrdma +of_xilinx_wdt +ofb +omfs +omninet +on20 +on26 +onenand +opa_vnic +opencores-kbd +openvswitch +oprofile +opt3001 +opticon +option +or51132 +or51211 +orangefs +orinoco +orinoco_cs +orinoco_nortel +orinoco_plx +orinoco_tmd +orinoco_usb +oti6858 +otm3225a +ov13858 +ov2640 +ov2659 +ov2680 +ov2685 +ov2740 +ov5647 +ov5670 +ov5675 +ov5695 +ov6650 +ov7251 +ov7640 +ov7670 +ov772x +ov7740 +ov8856 +ov9640 +ov9650 +overlay +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-raspberrypi-touchscreen +paride +parkbd +parman +parport +parport_ax88796 +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_pcmcia +pata_pdc2027x +pata_pdc202xx_old +pata_piccolo +pata_platform +pata_radisys +pata_rdc +pata_rz1000 +pata_sch +pata_serverworks +pata_sil680 +pata_sl82c105 +pata_triflex +pata_via +pblk +pc300too +pc87360 +pc87413_wdt +pc87427 +pcap-regulator +pcap_keys +pcap_ts +pcbc +pcd +pcengines-apuv2 +pcf50633 +pcf50633-adc +pcf50633-backlight +pcf50633-charger +pcf50633-gpio +pcf50633-input +pcf50633-regulator +pcf8574_keypad +pcf8591 +pch_udc +pci +pci-hyperv +pci-hyperv-intf +pci-pf-stub +pci-stub +pci200syn +pcips2 +pcl711 +pcl724 +pcl726 +pcl730 +pcl812 +pcl816 +pcl818 +pcm3724 +pcmad +pcmcia +pcmcia_core +pcmcia_rsrc +pcmciamtd +pcmda12 +pcmmio +pcmuio +pcnet32 +pcnet_cs +pcrypt +pcspkr +pcwd_pci +pcwd_usb +pd +pd6729 +pda_power +pdc_adma +peak_pci +peak_pciefd +peak_pcmcia +peak_usb +peaq-wmi +pegasus +pegasus_notetaker +penmount +pf +pfuze100-regulator +pg +phantom +phonet +phram +phy-bcm-kona-usb2 +phy-cpcap-usb +phy-exynos-usb2 +phy-generic +phy-gpio-vbus-usb +phy-intel-emmc +phy-isp1301 +phy-pxa-28nm-hsic +phy-pxa-28nm-usb2 +phy-qcom-usb-hs +phy-qcom-usb-hsic +phy-tahvo +phy-tusb1210 +phylink +physmap +pi3usb30532 +pi433 +pinctrl-broxton +pinctrl-cannonlake +pinctrl-cedarfork +pinctrl-da9062 +pinctrl-denverton +pinctrl-geminilake +pinctrl-icelake +pinctrl-intel +pinctrl-jasperlake +pinctrl-lewisburg +pinctrl-lynxpoint +pinctrl-madera +pinctrl-mcp23s08 +pinctrl-mcp23s08_i2c +pinctrl-mcp23s08_spi +pinctrl-sunrisepoint +pinctrl-tigerlake +ping +pistachio-internal-dac +pixcir_i2c_ts +pkcs7_test_key +pkcs8_key_parser +pktcdvd +pktgen +pl2303 +plat-ram +plat_nand +platform_lcd +plip +plusb +pluto2 +plx_dma +plx_pci +pm-notifier-error-inject +pm2fb +pm3fb +pm80xx +pmbus +pmbus_core +pmc551 +pmcraid +pms7003 +pn532_uart +pn533 +pn533_i2c +pn533_usb +pn544 +pn544_i2c +pn544_mei +pn_pep +pnd2_edac +poly1305-x86_64 +poly1305_generic +port100 +powermate +powr1220 +ppa +ppdev +ppp_async +ppp_deflate +ppp_mppe +ppp_synctty +pppoatm +pppoe +pppox +pps-gpio +pps-ldisc +pps_parport +pptp +pretimeout_panic +prism2_usb +processor_thermal_device +ps2-gpio +ps2mult +psample +psmouse +psnap +pstore_blk +pstore_zone +psxpad-spi +pt +ptp_clockmatrix +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 +pvrusb2 +pwc +pwm-beeper +pwm-cros-ec +pwm-iqs620a +pwm-lp3943 +pwm-pca9685 +pwm-regulator +pwm-twl +pwm-twl-led +pwm-vibra +pwm_bl +pxa27x_udc +pxe1610 +pxrc +qat_c3xxx +qat_c3xxxvf +qat_c62x +qat_c62xvf +qat_dh895xcc +qat_dh895xccvf +qca8k +qcaux +qcom-cpr +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_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 +qxl +r592 +r6040 +r8152 +r8169 +r8188eu +r8192e_pci +r8192u_usb +r820t +r852 +r8712u +r8723bs +r8a66597-hcd +r8a66597-udc +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-si476x +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 +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-behold +rc-behold-columbus +rc-budget-ci-old +rc-cec +rc-cinergy +rc-cinergy-1400 +rc-core +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-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-kworld-315u +rc-kworld-pc150u +rc-kworld-plus-tv-analog +rc-leadtek-y04g0051 +rc-lme2510 +rc-loopback +rc-manli +rc-medion-x10 +rc-medion-x10-digitainer +rc-medion-x10-or2x +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-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-tango +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-dvd +rc-zx-irdec +rc5t583-regulator +rcuperf +rdc321x-southbridge +rdma_cm +rdma_rxe +rdma_ucm +rdmavt +rds +rds_rdma +rds_tcp +realtek +realtek-smi +redboot +redrat3 +reed_solomon +regmap-i3c +regmap-sccb +regmap-sdw +regmap-slimbus +regmap-spmi +regmap-w1 +regulator-haptic +reiserfs +repaper +reset-ti-syscon +resistive-adc-touch +retu-mfd +retu-pwrbutton +retu_wdt +rfc1051 +rfc1201 +rfcomm +rfd77402 +rfd_ftl +rfkill-gpio +rio-scan +rio_cm +rio_mport_cdev +rionet +rivafb +rj54n1cb0c +rm3100-core +rm3100-i2c +rm3100-spi +rmd128 +rmd160 +rmd256 +rmd320 +rmi_core +rmi_i2c +rmi_smbus +rmi_spi +rmnet +rnbd-client +rnbd-server +rndis_host +rndis_wlan +rockchip +rocker +rocket +rohm_bu21023 +roles +romfs +rose +rotary_encoder +rp2 +rpcrdma +rpcsec_gss_krb5 +rpmsg_char +rpmsg_core +rpr0521 +rsi_91x +rsi_sdio +rsi_usb +rsxx +rt2400pci +rt2500pci +rt2500usb +rt2800lib +rt2800mmio +rt2800pci +rt2800usb +rt2x00lib +rt2x00mmio +rt2x00pci +rt2x00usb +rt5033 +rt5033-regulator +rt5033_battery +rt61pci +rt73usb +rt9455_charger +rtc-88pm80x +rtc-88pm860x +rtc-ab-b5ze-s3 +rtc-ab-eoz9 +rtc-ab3100 +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-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-rv8803 +rtc-rx4581 +rtc-rx6110 +rtc-rx8010 +rtc-rx8025 +rtc-rx8581 +rtc-s35390a +rtc-s5m +rtc-sd3078 +rtc-stk17ta8 +rtc-tps6586x +rtc-tps65910 +rtc-tps80031 +rtc-v3020 +rtc-wilco-ec +rtc-wm831x +rtc-wm8350 +rtc-x1205 +rtd520 +rti800 +rti802 +rtl2830 +rtl2832 +rtl2832_sdr +rtl8150 +rtl8187 +rtl8188ee +rtl818x_pci +rtl8192c-common +rtl8192ce +rtl8192cu +rtl8192de +rtl8192ee +rtl8192se +rtl8723-common +rtl8723ae +rtl8723be +rtl8821ae +rtl8xxxu +rtl_pci +rtl_usb +rtllib +rtllib_crypt_ccmp +rtllib_crypt_tkip +rtllib_crypt_wep +rtlwifi +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_8822b +rtw88_8822be +rtw88_8822c +rtw88_8822ce +rtw88_core +rtw88_pci +rx51_battery +rxrpc +s1d13xxxfb +s2250 +s2255drv +s2io +s2mpa01 +s2mps11 +s3fb +s3fwrn5 +s3fwrn5_i2c +s526 +s5c73m3 +s5h1409 +s5h1411 +s5h1420 +s5h1432 +s5k4ecgx +s5k5baf +s5k6a3 +s5k6aa +s5m8767 +s626 +s6sy761 +s921 +saa6588 +saa6752hs +saa7110 +saa7115 +saa7127 +saa7134 +saa7134-alsa +saa7134-dvb +saa7134-empress +saa7134-go7007 +saa7146 +saa7146_vv +saa7164 +saa717x +saa7185 +saa7706h +safe_serial +salsa20_generic +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 +sbni +sbp_target +sbs +sbs-battery +sbs-charger +sbs-manager +sbshc +sc1200wdt +sc16is7xx +sc92031 +sca3000 +scb2_flash +sch311x_wdt +sch5627 +sch5636 +sch56xx-common +sch_atm +sch_cake +sch_cbq +sch_cbs +sch_choke +sch_codel +sch_drr +sch_dsmark +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_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 +scif +scif_bus +scr24x_cs +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 +sdhci +sdhci-acpi +sdhci-pci +sdhci-pltfm +sdhci-xenon-driver +sdhci_f_sdh30 +sdio_uart +sdricoh_cs +seco-cec +seed +sensorhub +serial_cs +serial_ir +serio_raw +sermouse +serpent-avx-x86_64 +serpent-avx2 +serpent-sse2-x86_64 +serpent_generic +serport +ses +sf-pdma +sfc +sfc-falcon +sfp +sgi_w1 +sgp30 +sha1-ssse3 +sha256-ssse3 +sha3_generic +sha512-ssse3 +shark2 +shiftfs +sht15 +sht21 +sht3x +shtc1 +si1133 +si1145 +si2157 +si2165 +si2168 +si21xx +si4713 +si476x-core +si7005 +si7020 +sidewinder +sierra +sierra_net +sil164 +silead +sim710 +siox-bus-gpio +siox-core +sir_ir +sirf-audio-codec +sis-agp +sis190 +sis5595 +sis900 +sis_i2c +sisfb +sisusbvga +sit +siw +sja1000 +sja1000_isa +sja1000_platform +sja1105 +skd +skfp +skge +skx_edac +sky2 +sky81452 +sky81452-backlight +sky81452-regulator +sl811-hcd +sl811_cs +slcan +slg51000-regulator +slicoss +slim-qcom-ctrl +slimbus +slip +slram +sm3_generic +sm4_generic +sm501 +sm501fb +sm712fb +sm750fb +sm_common +sm_ftl +smartpqi +smb347-charger +smc +smc91c92_cs +smc_diag +smiapp +smiapp-pll +smipcie +smm665 +smsc +smsc37b787_wdt +smsc47b397 +smsc47m1 +smsc47m192 +smsc75xx +smsc911x +smsc9420 +smsc95xx +smscufx +smsdvb +smsmdtv +smssdio +smsusb +snd +snd-ac97-codec +snd-acp3x-i2s +snd-acp3x-pcm-dma +snd-acp3x-pdm-dma +snd-acp3x-rn +snd-ad1889 +snd-ak4113 +snd-ak4114 +snd-ak4117 +snd-ak4xxx-adda +snd-ali5451 +snd-aloop +snd-als300 +snd-als4000 +snd-asihpi +snd-atiixp +snd-atiixp-modem +snd-au8810 +snd-au8820 +snd-au8830 +snd-aw2 +snd-azt3328 +snd-bcd2000 +snd-bebob +snd-bt87x +snd-ca0106 +snd-cmipci +snd-compress +snd-cs4281 +snd-cs46xx +snd-cs8427 +snd-ctxfi +snd-darla20 +snd-darla24 +snd-dice +snd-dummy +snd-echo3g +snd-emu10k1 +snd-emu10k1-synth +snd-emu10k1x +snd-emux-synth +snd-ens1370 +snd-ens1371 +snd-es1938 +snd-es1968 +snd-fireface +snd-firewire-digi00x +snd-firewire-lib +snd-firewire-motu +snd-firewire-tascam +snd-fireworks +snd-fm801 +snd-gina20 +snd-gina24 +snd-hda-codec +snd-hda-codec-analog +snd-hda-codec-ca0110 +snd-hda-codec-ca0132 +snd-hda-codec-cirrus +snd-hda-codec-cmedia +snd-hda-codec-conexant +snd-hda-codec-generic +snd-hda-codec-hdmi +snd-hda-codec-idt +snd-hda-codec-realtek +snd-hda-codec-si3054 +snd-hda-codec-via +snd-hda-core +snd-hda-ext-core +snd-hda-intel +snd-hdmi-lpe-audio +snd-hdsp +snd-hdspm +snd-hrtimer +snd-hwdep +snd-i2c +snd-ice1712 +snd-ice1724 +snd-ice17xx-ak4xxx +snd-indigo +snd-indigodj +snd-indigodjx +snd-indigoio +snd-indigoiox +snd-intel-dspcfg +snd-intel-sst-acpi +snd-intel-sst-core +snd-intel-sst-pci +snd-intel8x0 +snd-intel8x0m +snd-isight +snd-korg1212 +snd-layla20 +snd-layla24 +snd-lola +snd-lx6464es +snd-maestro3 +snd-mia +snd-mixart +snd-mixer-oss +snd-mona +snd-mpu401 +snd-mpu401-uart +snd-mtpav +snd-mts64 +snd-nm256 +snd-opl3-lib +snd-opl3-synth +snd-oxfw +snd-oxygen +snd-oxygen-lib +snd-pci-acp3x +snd-pcm +snd-pcm-dmaengine +snd-pcsp +snd-pcxhr +snd-pdaudiocf +snd-portman2x4 +snd-pt2258 +snd-rawmidi +snd-riptide +snd-rme32 +snd-rme96 +snd-rme9652 +snd-rn-pci-acp3x +snd-sb-common +snd-seq +snd-seq-device +snd-seq-dummy +snd-seq-midi +snd-seq-midi-emul +snd-seq-midi-event +snd-seq-virmidi +snd-serial-u16550 +snd-skl_nau88l25_max98357a +snd-soc-63xx +snd-soc-ac97 +snd-soc-acp-da7219mx98357-mach +snd-soc-acp-rt5645-mach +snd-soc-acp-rt5682-mach +snd-soc-acpi +snd-soc-acpi-intel-match +snd-soc-adau-utils +snd-soc-adau1701 +snd-soc-adau1761 +snd-soc-adau1761-i2c +snd-soc-adau1761-spi +snd-soc-adau17x1 +snd-soc-adau7002 +snd-soc-adau7118 +snd-soc-adau7118-hw +snd-soc-adau7118-i2c +snd-soc-ak4104 +snd-soc-ak4118 +snd-soc-ak4458 +snd-soc-ak4554 +snd-soc-ak4613 +snd-soc-ak4642 +snd-soc-ak5386 +snd-soc-ak5558 +snd-soc-alc5623 +snd-soc-bd28623 +snd-soc-bt-sco +snd-soc-cml_rt1011_rt5682 +snd-soc-core +snd-soc-cros-ec-codec +snd-soc-cs35l32 +snd-soc-cs35l33 +snd-soc-cs35l34 +snd-soc-cs35l35 +snd-soc-cs35l36 +snd-soc-cs4265 +snd-soc-cs4270 +snd-soc-cs4271 +snd-soc-cs4271-i2c +snd-soc-cs4271-spi +snd-soc-cs42l42 +snd-soc-cs42l51 +snd-soc-cs42l51-i2c +snd-soc-cs42l52 +snd-soc-cs42l56 +snd-soc-cs42l73 +snd-soc-cs42xx8 +snd-soc-cs42xx8-i2c +snd-soc-cs43130 +snd-soc-cs4341 +snd-soc-cs4349 +snd-soc-cs53l30 +snd-soc-cx2072x +snd-soc-da7213 +snd-soc-da7219 +snd-soc-dmic +snd-soc-ehl-rt5660 +snd-soc-es7134 +snd-soc-es7241 +snd-soc-es8316 +snd-soc-es8328 +snd-soc-es8328-i2c +snd-soc-es8328-spi +snd-soc-fsl-asrc +snd-soc-fsl-audmix +snd-soc-fsl-easrc +snd-soc-fsl-esai +snd-soc-fsl-micfil +snd-soc-fsl-mqs +snd-soc-fsl-sai +snd-soc-fsl-spdif +snd-soc-fsl-ssi +snd-soc-gtm601 +snd-soc-hdac-hda +snd-soc-hdac-hdmi +snd-soc-hdmi-codec +snd-soc-imx-audmux +snd-soc-inno-rk3036 +snd-soc-kbl_da7219_max98357a +snd-soc-kbl_da7219_max98927 +snd-soc-kbl_rt5660 +snd-soc-kbl_rt5663_max98927 +snd-soc-kbl_rt5663_rt5514_max98927 +snd-soc-max9759 +snd-soc-max98088 +snd-soc-max98090 +snd-soc-max98357a +snd-soc-max98373 +snd-soc-max98390 +snd-soc-max98504 +snd-soc-max9860 +snd-soc-max9867 +snd-soc-max98927 +snd-soc-msm8916-analog +snd-soc-msm8916-digital +snd-soc-mt6351 +snd-soc-mt6358 +snd-soc-mt6660 +snd-soc-nau8540 +snd-soc-nau8810 +snd-soc-nau8822 +snd-soc-nau8824 +snd-soc-nau8825 +snd-soc-pcm1681 +snd-soc-pcm1789-codec +snd-soc-pcm1789-i2c +snd-soc-pcm179x-codec +snd-soc-pcm179x-i2c +snd-soc-pcm179x-spi +snd-soc-pcm186x +snd-soc-pcm186x-i2c +snd-soc-pcm186x-spi +snd-soc-pcm3060 +snd-soc-pcm3060-i2c +snd-soc-pcm3060-spi +snd-soc-pcm3168a +snd-soc-pcm3168a-i2c +snd-soc-pcm3168a-spi +snd-soc-pcm512x +snd-soc-pcm512x-i2c +snd-soc-pcm512x-spi +snd-soc-rk3328 +snd-soc-rl6231 +snd-soc-rl6347a +snd-soc-rt1011 +snd-soc-rt1015 +snd-soc-rt1308-sdw +snd-soc-rt286 +snd-soc-rt298 +snd-soc-rt5514 +snd-soc-rt5514-spi +snd-soc-rt5616 +snd-soc-rt5631 +snd-soc-rt5640 +snd-soc-rt5645 +snd-soc-rt5651 +snd-soc-rt5660 +snd-soc-rt5663 +snd-soc-rt5670 +snd-soc-rt5677 +snd-soc-rt5677-spi +snd-soc-rt5682 +snd-soc-rt5682-i2c +snd-soc-rt5682-sdw +snd-soc-rt700 +snd-soc-rt711 +snd-soc-rt715 +snd-soc-sgtl5000 +snd-soc-si476x +snd-soc-sigmadsp +snd-soc-sigmadsp-i2c +snd-soc-sigmadsp-regmap +snd-soc-simple-amplifier +snd-soc-simple-card +snd-soc-simple-card-utils +snd-soc-skl_hda_dsp +snd-soc-skl_nau88l25_ssm4567 +snd-soc-skl_rt286 +snd-soc-sof_da7219_max98373 +snd-soc-sof_rt5682 +snd-soc-spdif-rx +snd-soc-spdif-tx +snd-soc-ssm2305 +snd-soc-ssm2602 +snd-soc-ssm2602-i2c +snd-soc-ssm2602-spi +snd-soc-ssm4567 +snd-soc-sst-acpi +snd-soc-sst-atom-hifi2-platform +snd-soc-sst-bdw-rt5650-mach +snd-soc-sst-bdw-rt5677-mach +snd-soc-sst-broadwell +snd-soc-sst-bxt-da7219_max98357a +snd-soc-sst-bxt-rt298 +snd-soc-sst-byt-cht-cx2072x +snd-soc-sst-byt-cht-da7213 +snd-soc-sst-byt-cht-es8316 +snd-soc-sst-bytcr-rt5640 +snd-soc-sst-bytcr-rt5651 +snd-soc-sst-cht-bsw-max98090_ti +snd-soc-sst-cht-bsw-nau8824 +snd-soc-sst-cht-bsw-rt5645 +snd-soc-sst-cht-bsw-rt5672 +snd-soc-sst-dsp +snd-soc-sst-firmware +snd-soc-sst-glk-rt5682_max98357a +snd-soc-sst-haswell +snd-soc-sst-haswell-pcm +snd-soc-sst-ipc +snd-soc-sst-sof-pcm512x +snd-soc-sst-sof-wm8804 +snd-soc-sta32x +snd-soc-sta350 +snd-soc-sti-sas +snd-soc-tas2552 +snd-soc-tas2562 +snd-soc-tas2770 +snd-soc-tas5086 +snd-soc-tas571x +snd-soc-tas5720 +snd-soc-tas6424 +snd-soc-tda7419 +snd-soc-tfa9879 +snd-soc-tlv320adcx140 +snd-soc-tlv320aic23 +snd-soc-tlv320aic23-i2c +snd-soc-tlv320aic23-spi +snd-soc-tlv320aic31xx +snd-soc-tlv320aic32x4 +snd-soc-tlv320aic32x4-i2c +snd-soc-tlv320aic32x4-spi +snd-soc-tlv320aic3x +snd-soc-tpa6130a2 +snd-soc-ts3a227e +snd-soc-tscs42xx +snd-soc-tscs454 +snd-soc-uda1334 +snd-soc-wcd9335 +snd-soc-wcd934x +snd-soc-wm8510 +snd-soc-wm8523 +snd-soc-wm8524 +snd-soc-wm8580 +snd-soc-wm8711 +snd-soc-wm8728 +snd-soc-wm8731 +snd-soc-wm8737 +snd-soc-wm8741 +snd-soc-wm8750 +snd-soc-wm8753 +snd-soc-wm8770 +snd-soc-wm8776 +snd-soc-wm8782 +snd-soc-wm8804 +snd-soc-wm8804-i2c +snd-soc-wm8804-spi +snd-soc-wm8903 +snd-soc-wm8904 +snd-soc-wm8960 +snd-soc-wm8962 +snd-soc-wm8974 +snd-soc-wm8978 +snd-soc-wm8985 +snd-soc-wsa881x +snd-soc-xlnx-formatter-pcm +snd-soc-xlnx-i2s +snd-soc-xlnx-spdif +snd-soc-xtfpga-i2s +snd-soc-zl38060 +snd-soc-zx-aud96p22 +snd-sof +snd-sof-acpi +snd-sof-intel-byt +snd-sof-intel-hda +snd-sof-intel-hda-common +snd-sof-intel-ipc +snd-sof-pci +snd-sof-xtensa-dsp +snd-sonicvibes +snd-timer +snd-trident +snd-ua101 +snd-usb-6fire +snd-usb-audio +snd-usb-caiaq +snd-usb-hiface +snd-usb-line6 +snd-usb-pod +snd-usb-podhd +snd-usb-toneport +snd-usb-us122l +snd-usb-usx2y +snd-usb-variax +snd-usbmidi-lib +snd-util-mem +snd-via82xx +snd-via82xx-modem +snd-virmidi +snd-virtuoso +snd-vx-lib +snd-vx222 +snd-vxpocket +snd-ymfpci +snd_xen_front +snic +snps_udc_core +soc_button_array +softdog +softing +softing_cs +solo6x10 +solos-pci +sony-btf-mpx +sony-laptop +soundcore +soundwire-bus +soundwire-cadence +soundwire-intel +soundwire-qcom +sp2 +sp5100_tco +sp8870 +sp887x +spaceball +spaceorb +sparse-keymap +spcp8x5 +speakup +speakup_acntsa +speakup_apollo +speakup_audptr +speakup_bns +speakup_decext +speakup_dectlk +speakup_dummy +speakup_ltlk +speakup_soft +speakup_spkout +speakup_txprt +spectrum_cs +speedfax +speedstep-lib +speedtch +spi-altera +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-lm70llp +spi-loopback-test +spi-mux +spi-mxic +spi-nor +spi-nxp-fspi +spi-oc-tiny +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 +sr030pc30 +sr9700 +sr9800 +srf04 +srf08 +ssb +ssb-hcd +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_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 +stkwebcam +stm_console +stm_core +stm_ftrace +stm_heartbeat +stm_p_basic +stm_p_sys-t +stmfts +stmmac +stmmac-pci +stmmac-platform +stowaway +stp +streamzap +streebog_generic +stts751 +stv0288 +stv0297 +stv0299 +stv0367 +stv0900 +stv090x +stv0910 +stv6110 +stv6110x +stv6111 +stx104 +sundance +sungem +sungem_phy +sunhme +suni +sunkbd +sunrpc +sur40 +surface3-wmi +surface3_button +surface3_power +surface3_spi +surfacepro3_button +svgalib +switchtec +sx8 +sx8654 +sx9310 +sx9500 +sym53c500_cs +sym53c8xx +symbolserial +synaptics_i2c +synaptics_usb +synclink +synclink_cs +synclink_gt +synclinkmp +syscopyarea +sysfillrect +sysimgblt +system76_acpi +sysv +t5403 +tag_8021q +tag_ar9331 +tag_brcm +tag_dsa +tag_edsa +tag_gswip +tag_ksz +tag_lan9303 +tag_mtk +tag_ocelot +tag_qca +tag_sja1105 +tag_trailer +tap +target_core_file +target_core_iblock +target_core_mod +target_core_pscsi +target_core_user +tc-dwc-g210 +tc-dwc-g210-pci +tc-dwc-g210-pltfrm +tc358743 +tc654 +tc74 +tc90522 +tca6416-keypad +tca8418_keypad +tcan4x5x +tcm_fc +tcm_loop +tcm_qla2xxx +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_rt1711h +tcpm +tcrypt +tcs3414 +tcs3472 +tda10021 +tda10023 +tda10048 +tda1004x +tda10071 +tda10086 +tda18212 +tda18218 +tda18250 +tda18271 +tda18271c2dd +tda1997x +tda665x +tda7432 +tda8083 +tda8261 +tda826x +tda827x +tda8290 +tda9840 +tda9887 +tda9950 +tda998x +tdfxfb +tdo24m +tea +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 +tgr192 +thermal-generic-adc +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-ads7950 +ti-dac082s085 +ti-dac5571 +ti-dac7311 +ti-dac7612 +ti-lmu +ti-tlc4541 +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 +tm6000 +tm6000-alsa +tm6000-dvb +tmdc +tmp006 +tmp007 +tmp102 +tmp103 +tmp108 +tmp401 +tmp421 +tmp513 +topstar-laptop +torture +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_key_parser +tpm_nsc +tpm_st33zp24 +tpm_st33zp24_i2c +tpm_st33zp24_spi +tpm_tis_spi +tpm_vtpm_proxy +tps40422 +tps51632-regulator +tps53679 +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 +tps6598x +tps80031-regulator +tqmx86 +tqmx86_wdt +trace-printk +trancevibrator +trf7970a +tridentfb +ts2020 +ts_bm +ts_fsm +ts_kmp +tsc2004 +tsc2005 +tsc2007 +tsc200x-core +tsc40 +tsi568 +tsi57x +tsi721_mport +tsl2550 +tsl2563 +tsl2583 +tsl2772 +tsl4531 +tsys01 +tsys02d +ttm +ttpci-eeprom +ttusb_dec +ttusbdecfe +ttusbir +ttynull +tua6100 +tua9001 +tulip +tuner +tuner-simple +tuner-types +tuner-xc2028 +tunnel4 +tunnel6 +turbografx +tvaudio +tveeprom +tvp514x +tvp5150 +tvp7002 +tw2804 +tw5864 +tw68 +tw686x +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 +typec +typec_displayport +typec_nvidia +typec_ucsi +typhoon +u132-hcd +uPD60620 +uPD98402 +u_audio +u_ether +u_serial +uacce +uartlite +uas +ubi +ubifs +ubuntu-host +ucan +ucb1400_core +ucb1400_ts +ucd9000 +ucd9200 +ucsi_acpi +ucsi_ccg +uda1342 +udc-core +udf +udl +udlfb +udp_diag +udp_tunnel +ueagle-atm +ufs +ufshcd-core +ufshcd-dwc +ufshcd-pci +ufshcd-pltfrm +uhid +uio +uio_aec +uio_cif +uio_dmem_genirq +uio_hv_generic +uio_mf624 +uio_netx +uio_pci_generic +uio_pdrv_genirq +uio_pruss +uio_sercos3 +uleds +uli526x +ulpi +umem +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_midi +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_uac1 +usb_f_uac1_legacy +usb_f_uac2 +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 +usbtv +usbvision +usdhi6rol0 +userio +userspace-consumer +ushc +usnic_verbs +uss720 +uv_mmtimer +uvcvideo +uvesafb +v4l2-dv-timings +v4l2-flash-led-class +v4l2-fwnode +v4l2-mem2mem +v4l2-tpg +vboxguest +vboxsf +vboxvideo +vcan +vcnl3020 +vcnl4000 +vcnl4035 +vdpa +vdpa_sim +veml6030 +veml6070 +ves1820 +ves1x93 +veth +vfio_mdev +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 +videobuf-vmalloc +videobuf2-common +videobuf2-dma-contig +videobuf2-dma-sg +videobuf2-dvb +videobuf2-memops +videobuf2-v4l2 +videobuf2-vmalloc +videodev +vim2m +vimc +viperboard +viperboard_adc +virt-dma +virt_wifi +virtio-gpu +virtio-rng +virtio_blk +virtio_crypto +virtio_input +virtio_mem +virtio_net +virtio_pmem +virtio_rpmsg_bus +virtio_scsi +virtio_vdpa +virtiofs +virtual +visor +visorbus +visorhba +visorinput +visornic +vitesse +vitesse-vsc73xx-core +vitesse-vsc73xx-platform +vitesse-vsc73xx-spi +vivid +vkms +vl53l0x-i2c +vl6180 +vmac +vmd +vme_ca91cx42 +vme_fake +vme_tsi148 +vme_user +vme_vmivme7805 +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 +vop +vop_bus +vp27smpx +vport-geneve +vport-gre +vport-vxlan +vpx3220 +vrf +vringh +vs6624 +vsock +vsock_diag +vsock_loopback +vsockmon +vsxxxaa +vt1211 +vt6655_stage +vt6656_stage +vt8231 +vt8623fb +vub300 +vx855 +vxcan +vxge +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 +wilc1000 +wilc1000-sdio +wilc1000-spi +wilco-charger +wilco_ec +wilco_ec_debugfs +wilco_ec_events +wilco_ec_telem +wimax +winbond-840 +winbond-cir +wire +wireguard +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 +wm97xx-ts +wmi +wmi-bmof +wp512 +x25 +x25_asy +x38_edac +x86_pkg_temp_thermal +x_tables +xbox_remote +xc4000 +xc5000 +xcbc +xdpe12284 +xen-blkback +xen-evtchn +xen-fbfront +xen-front-pgdir-shbuf +xen-gntalloc +xen-gntdev +xen-kbdfront +xen-netback +xen-pciback +xen-pcifront +xen-privcmd +xen-scsiback +xen-scsifront +xen-tpmfront +xen_wdt +xenfs +xfrm4_tunnel +xfrm6_tunnel +xfrm_algo +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_gmii2rgmii +xilinx_sdfec +xillybus_core +xillybus_pcie +xirc2ps_cs +xircom_cb +xlnx_vcu +xor +xp +xpad +xpc +xpnet +xr_usb_serial_common +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 +yealink +yellowfin +yenta_socket +yurex +z3fold +zatm +zaurus +zavl +zcommon +zd1201 +zd1211rw +zd1301 +zd1301_demod +zet6223 +zforce_ts +zfs +zhenhua +ziirave_wdt +zl10036 +zl10039 +zl10353 +zl6100 +zlua +znvpair +zonefs +zopt2201 +zpa2326 +zpa2326_i2c +zpa2326_spi +zr364xx +zram +zstd +zunicode +zx-tdm --- linux-azure-5.8-5.8.0.orig/debian.master/abi/5.8.0-50.56/amd64/lowlatency.retpoline +++ linux-azure-5.8-5.8.0/debian.master/abi/5.8.0-50.56/amd64/lowlatency.retpoline @@ -0,0 +1 @@ +# retpoline v1.0 --- linux-azure-5.8-5.8.0.orig/debian.master/abi/5.8.0-50.56/arm64/generic +++ linux-azure-5.8-5.8.0/debian.master/abi/5.8.0-50.56/arm64/generic @@ -0,0 +1,24573 @@ +EXPORT_SYMBOL arch/arm64/crypto/aes-ce-cipher 0x68f275ad ce_aes_expandkey +EXPORT_SYMBOL arch/arm64/crypto/aes-ce-cipher 0x8ff421c6 ce_aes_setkey +EXPORT_SYMBOL arch/arm64/crypto/aes-neon-blk 0x52d67a4e neon_aes_cbc_encrypt +EXPORT_SYMBOL arch/arm64/crypto/aes-neon-blk 0xd5f41819 neon_aes_ecb_encrypt +EXPORT_SYMBOL arch/arm64/crypto/aes-neon-blk 0xea11590c neon_aes_xts_encrypt +EXPORT_SYMBOL arch/arm64/crypto/aes-neon-blk 0xefc32a9b neon_aes_xts_decrypt +EXPORT_SYMBOL arch/arm64/crypto/chacha-neon 0x220b49ab chacha_crypt_arch +EXPORT_SYMBOL arch/arm64/crypto/chacha-neon 0xdc94f829 chacha_init_arch +EXPORT_SYMBOL arch/arm64/crypto/chacha-neon 0xdd8ec6bd hchacha_block_arch +EXPORT_SYMBOL arch/arm64/crypto/poly1305-neon 0x6ddf27bc poly1305_update_arch +EXPORT_SYMBOL arch/arm64/crypto/poly1305-neon 0x737051cc poly1305_init_arch +EXPORT_SYMBOL arch/arm64/crypto/poly1305-neon 0xf39f5240 poly1305_final_arch +EXPORT_SYMBOL arch/arm64/crypto/sha256-arm64 0xb455924d sha256_block_data_order +EXPORT_SYMBOL arch/arm64/crypto/sha512-arm64 0x6402c8df sha512_block_data_order +EXPORT_SYMBOL arch/arm64/lib/xor-neon 0xd4671463 xor_block_inner_neon +EXPORT_SYMBOL crypto/ecc 0x16e410ff vli_from_be64 +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 0x9263b417 ecc_point_mult_shamir +EXPORT_SYMBOL crypto/ecc 0x92668805 vli_cmp +EXPORT_SYMBOL crypto/ecc 0x9f6efabd vli_sub +EXPORT_SYMBOL crypto/ecc 0xa76b31a2 crypto_ecdh_shared_secret +EXPORT_SYMBOL crypto/ecc 0xd6315f31 ecc_gen_privkey +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 0x08b6ff10 crypto_nhpoly1305_init +EXPORT_SYMBOL crypto/nhpoly1305 0x143fbdf3 crypto_nhpoly1305_final_helper +EXPORT_SYMBOL crypto/nhpoly1305 0x222454e3 crypto_nhpoly1305_update_helper +EXPORT_SYMBOL crypto/nhpoly1305 0x5db93c15 crypto_nhpoly1305_final +EXPORT_SYMBOL crypto/nhpoly1305 0x7675e4b5 crypto_nhpoly1305_setkey +EXPORT_SYMBOL crypto/nhpoly1305 0x9282d8ef crypto_nhpoly1305_update +EXPORT_SYMBOL crypto/sha3_generic 0x55fa6174 crypto_sha3_update +EXPORT_SYMBOL crypto/sha3_generic 0x6c00bf11 crypto_sha3_init +EXPORT_SYMBOL crypto/sha3_generic 0x75396817 crypto_sha3_final +EXPORT_SYMBOL crypto/sm3_generic 0x38b6caf1 crypto_sm3_finup +EXPORT_SYMBOL crypto/sm3_generic 0xfb502bd8 crypto_sm3_update +EXPORT_SYMBOL crypto/xor 0x5b6c00e6 xor_blocks +EXPORT_SYMBOL drivers/acpi/nfit/nfit 0xceec93be to_nfit_uuid +EXPORT_SYMBOL drivers/atm/suni 0x9839ae5e suni_init +EXPORT_SYMBOL drivers/bcma/bcma 0x31069b56 bcma_core_irq +EXPORT_SYMBOL drivers/bcma/bcma 0xb6d4c370 bcma_core_dma_translation +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/bluetooth/btbcm 0x420c9745 btbcm_patchram +EXPORT_SYMBOL drivers/bluetooth/btrsi 0x9cf6d49e rsi_bt_ops +EXPORT_SYMBOL drivers/bus/mhi/core/mhi 0x20e9880a 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 0x230094ac ipmi_smi_watchdog_pretimeout +EXPORT_SYMBOL drivers/char/ipmi/ipmi_msghandler 0x31cab048 ipmi_smi_msg_received +EXPORT_SYMBOL drivers/char/ipmi/ipmi_msghandler 0x32a7ef14 ipmi_get_smi_info +EXPORT_SYMBOL drivers/char/ipmi/ipmi_msghandler 0x40f2b10c ipmi_alloc_smi_msg +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 0x67369b42 ipmi_addr_src_to_str +EXPORT_SYMBOL drivers/char/ipmi/ipmi_msghandler 0x6e6445e1 ipmi_smi_watcher_register +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 0x974d9c04 ipmi_add_smi +EXPORT_SYMBOL drivers/char/ipmi/ipmi_msghandler 0x9b2bf0ef ipmi_smi_watcher_unregister +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 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/tpm/st33zp24/tpm_st33zp24 0x22118248 st33zp24_probe +EXPORT_SYMBOL drivers/char/tpm/st33zp24/tpm_st33zp24 0x2f638dc8 st33zp24_pm_suspend +EXPORT_SYMBOL drivers/char/tpm/st33zp24/tpm_st33zp24 0x32c2aa22 st33zp24_pm_resume +EXPORT_SYMBOL drivers/char/tpm/st33zp24/tpm_st33zp24 0x5de49613 st33zp24_remove +EXPORT_SYMBOL drivers/char/xillybus/xillybus_core 0x04dce207 xillybus_init_endpoint +EXPORT_SYMBOL drivers/char/xillybus/xillybus_core 0x20e93976 xillybus_endpoint_remove +EXPORT_SYMBOL drivers/char/xillybus/xillybus_core 0x25978d50 xillybus_isr +EXPORT_SYMBOL drivers/char/xillybus/xillybus_core 0x6109ffd8 xillybus_endpoint_discovery +EXPORT_SYMBOL drivers/crypto/atmel-i2c 0x6da86c52 atmel_i2c_probe +EXPORT_SYMBOL drivers/crypto/atmel-i2c 0x80a11b1d atmel_i2c_init_read_cmd +EXPORT_SYMBOL drivers/crypto/atmel-i2c 0xb433f688 atmel_i2c_enqueue +EXPORT_SYMBOL drivers/crypto/atmel-i2c 0xc0954e01 atmel_i2c_send_receive +EXPORT_SYMBOL drivers/crypto/atmel-i2c 0xc71ed50c atmel_i2c_init_genkey_cmd +EXPORT_SYMBOL drivers/crypto/atmel-i2c 0xf283e995 atmel_i2c_init_random_cmd +EXPORT_SYMBOL drivers/crypto/atmel-i2c 0xfaab573f atmel_i2c_init_ecdh_cmd +EXPORT_SYMBOL drivers/crypto/caam/caam 0x1414bd49 caam_drv_ctx_init +EXPORT_SYMBOL drivers/crypto/caam/caam 0x17572340 caam_congested +EXPORT_SYMBOL drivers/crypto/caam/caam 0x37734e06 caam_dpaa2 +EXPORT_SYMBOL drivers/crypto/caam/caam 0x44ae4bc4 qi_cache_free +EXPORT_SYMBOL drivers/crypto/caam/caam 0x8cc96d24 caam_qi_enqueue +EXPORT_SYMBOL drivers/crypto/caam/caam 0xa84685bc caam_drv_ctx_rel +EXPORT_SYMBOL drivers/crypto/caam/caam 0xc0eaa792 qi_cache_alloc +EXPORT_SYMBOL drivers/crypto/caam/caam 0xc665b51d caam_drv_ctx_update +EXPORT_SYMBOL drivers/crypto/caam/caam_jr 0x50d7ee27 split_key_done +EXPORT_SYMBOL drivers/crypto/caam/caam_jr 0x5f83039a caam_jr_alloc +EXPORT_SYMBOL drivers/crypto/caam/caam_jr 0x81d9c15d gen_split_key +EXPORT_SYMBOL drivers/crypto/caam/caam_jr 0xc5d1d212 caam_jr_free +EXPORT_SYMBOL drivers/crypto/caam/caam_jr 0xddd2e87c caam_jr_enqueue +EXPORT_SYMBOL drivers/crypto/caam/caamalg_desc 0x2e152bb7 cnstr_shdsc_xts_skcipher_encap +EXPORT_SYMBOL drivers/crypto/caam/caamalg_desc 0x3b54a9ad cnstr_shdsc_aead_decap +EXPORT_SYMBOL drivers/crypto/caam/caamalg_desc 0x76a68e3e cnstr_shdsc_chachapoly +EXPORT_SYMBOL drivers/crypto/caam/caamalg_desc 0x7b0c587f cnstr_shdsc_rfc4543_decap +EXPORT_SYMBOL drivers/crypto/caam/caamalg_desc 0x7b7bcab8 cnstr_shdsc_rfc4543_encap +EXPORT_SYMBOL drivers/crypto/caam/caamalg_desc 0x86bcdec7 cnstr_shdsc_xts_skcipher_decap +EXPORT_SYMBOL drivers/crypto/caam/caamalg_desc 0x88430d4c cnstr_shdsc_aead_null_encap +EXPORT_SYMBOL drivers/crypto/caam/caamalg_desc 0x91ac0969 cnstr_shdsc_aead_encap +EXPORT_SYMBOL drivers/crypto/caam/caamalg_desc 0xa3115081 cnstr_shdsc_skcipher_decap +EXPORT_SYMBOL drivers/crypto/caam/caamalg_desc 0xa340e264 cnstr_shdsc_aead_givencap +EXPORT_SYMBOL drivers/crypto/caam/caamalg_desc 0xa99d7fa6 cnstr_shdsc_aead_null_decap +EXPORT_SYMBOL drivers/crypto/caam/caamalg_desc 0xebcdd349 cnstr_shdsc_skcipher_encap +EXPORT_SYMBOL drivers/crypto/caam/caamalg_desc 0xf92c5da5 cnstr_shdsc_gcm_decap +EXPORT_SYMBOL drivers/crypto/caam/caamalg_desc 0xf95bcf62 cnstr_shdsc_gcm_encap +EXPORT_SYMBOL drivers/crypto/caam/caamalg_desc 0xfd807e48 cnstr_shdsc_rfc4106_decap +EXPORT_SYMBOL drivers/crypto/caam/caamalg_desc 0xfdf7ec8f cnstr_shdsc_rfc4106_encap +EXPORT_SYMBOL drivers/crypto/caam/caamhash_desc 0x30a1e372 cnstr_shdsc_sk_hash +EXPORT_SYMBOL drivers/crypto/caam/caamhash_desc 0xb5571dbf cnstr_shdsc_ahash +EXPORT_SYMBOL drivers/crypto/caam/dpaa2_caam 0xb89590ee dpaa2_caam_enqueue +EXPORT_SYMBOL drivers/crypto/caam/error 0x53d0fc97 caam_ptr_sz +EXPORT_SYMBOL drivers/crypto/caam/error 0xa51f16c7 caam_little_end +EXPORT_SYMBOL drivers/crypto/caam/error 0xbd67c092 caam_imx +EXPORT_SYMBOL drivers/crypto/caam/error 0xd25da602 caam_dump_sg +EXPORT_SYMBOL drivers/crypto/caam/error 0xdaafaa5f caam_strstatus +EXPORT_SYMBOL drivers/dma/xilinx/xilinx_dma 0x24411d5b xilinx_vdma_channel_set_config +EXPORT_SYMBOL drivers/firewire/firewire-core 0x0bc6094c fw_core_remove_descriptor +EXPORT_SYMBOL drivers/firewire/firewire-core 0x1c280f59 fw_bus_type +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 0x3bdb07aa fw_card_add +EXPORT_SYMBOL drivers/firewire/firewire-core 0x3c56ef91 fw_workqueue +EXPORT_SYMBOL drivers/firewire/firewire-core 0x4aa9e92f fw_iso_context_flush_completions +EXPORT_SYMBOL drivers/firewire/firewire-core 0x535b034d fw_iso_buffer_init +EXPORT_SYMBOL drivers/firewire/firewire-core 0x66e648c8 fw_run_transaction +EXPORT_SYMBOL drivers/firewire/firewire-core 0x69b745eb fw_iso_context_destroy +EXPORT_SYMBOL drivers/firewire/firewire-core 0x6b58e10d fw_iso_buffer_destroy +EXPORT_SYMBOL drivers/firewire/firewire-core 0x6dc50487 fw_csr_string +EXPORT_SYMBOL drivers/firewire/firewire-core 0x81b86eb1 fw_core_handle_request +EXPORT_SYMBOL drivers/firewire/firewire-core 0x858614b5 fw_core_handle_bus_reset +EXPORT_SYMBOL drivers/firewire/firewire-core 0x86468d44 fw_rcode_string +EXPORT_SYMBOL drivers/firewire/firewire-core 0x86d91cb6 fw_cancel_transaction +EXPORT_SYMBOL drivers/firewire/firewire-core 0x87505cc4 fw_iso_context_stop +EXPORT_SYMBOL drivers/firewire/firewire-core 0x881fee40 fw_send_response +EXPORT_SYMBOL drivers/firewire/firewire-core 0x8a4bb825 fw_schedule_bus_reset +EXPORT_SYMBOL drivers/firewire/firewire-core 0x939b5a78 fw_iso_context_create +EXPORT_SYMBOL drivers/firewire/firewire-core 0x9d1b2b6f fw_device_enable_phys_dma +EXPORT_SYMBOL drivers/firewire/firewire-core 0x9ddddc3c fw_fill_response +EXPORT_SYMBOL drivers/firewire/firewire-core 0xaedf84ce fw_high_memory_region +EXPORT_SYMBOL drivers/firewire/firewire-core 0xb8ced1b5 fw_iso_resource_manage +EXPORT_SYMBOL drivers/firewire/firewire-core 0xc19305b7 fw_send_request +EXPORT_SYMBOL drivers/firewire/firewire-core 0xc5172750 fw_iso_context_queue +EXPORT_SYMBOL drivers/firewire/firewire-core 0xd2a7978c fw_iso_context_queue_flush +EXPORT_SYMBOL drivers/firewire/firewire-core 0xd66ed7c7 fw_card_initialize +EXPORT_SYMBOL drivers/firewire/firewire-core 0xe136e0fa fw_iso_context_start +EXPORT_SYMBOL drivers/firewire/firewire-core 0xe1e13ffa fw_core_remove_address_handler +EXPORT_SYMBOL drivers/firewire/firewire-core 0xe3fde125 fw_csr_iterator_next +EXPORT_SYMBOL drivers/firewire/firewire-core 0xe7a014fd fw_core_handle_response +EXPORT_SYMBOL drivers/firewire/firewire-core 0xe80e5087 fw_csr_iterator_init +EXPORT_SYMBOL drivers/firewire/firewire-core 0xe8671753 fw_core_add_address_handler +EXPORT_SYMBOL drivers/firewire/firewire-core 0xee55ae5e fw_core_remove_card +EXPORT_SYMBOL drivers/firmware/broadcom/tee_bnxt_fw 0x57b73b33 tee_bnxt_fw_load +EXPORT_SYMBOL drivers/firmware/broadcom/tee_bnxt_fw 0xdfaff93c tee_bnxt_copy_coredump +EXPORT_SYMBOL drivers/firmware/imx/imx-dsp 0x44487c75 imx_dsp_ring_doorbell +EXPORT_SYMBOL drivers/gpu/drm/drm 0x000f44f7 drm_i2c_encoder_save +EXPORT_SYMBOL drivers/gpu/drm/drm 0x013b3a41 drm_atomic_get_bridge_state +EXPORT_SYMBOL drivers/gpu/drm/drm 0x024b53a7 drm_atomic_get_new_bridge_state +EXPORT_SYMBOL drivers/gpu/drm/drm 0x02580818 drm_connector_set_link_status_property +EXPORT_SYMBOL drivers/gpu/drm/drm 0x030cec86 drm_compat_ioctl +EXPORT_SYMBOL drivers/gpu/drm/drm 0x0320097b drm_writeback_signal_completion +EXPORT_SYMBOL drivers/gpu/drm/drm 0x03893473 drm_panel_remove +EXPORT_SYMBOL drivers/gpu/drm/drm 0x03c63897 __drm_get_edid_firmware_path +EXPORT_SYMBOL drivers/gpu/drm/drm 0x043bf880 __devm_drm_dev_alloc +EXPORT_SYMBOL drivers/gpu/drm/drm 0x04aec604 drm_gem_dma_resv_wait +EXPORT_SYMBOL drivers/gpu/drm/drm 0x04ce610f drm_gem_prime_handle_to_fd +EXPORT_SYMBOL drivers/gpu/drm/drm 0x0501d75d drm_atomic_set_fence_for_plane +EXPORT_SYMBOL drivers/gpu/drm/drm 0x066d3898 drm_connector_set_path_property +EXPORT_SYMBOL drivers/gpu/drm/drm 0x070b28aa drm_ht_remove_item +EXPORT_SYMBOL drivers/gpu/drm/drm 0x0712e21d drm_edid_get_monitor_name +EXPORT_SYMBOL drivers/gpu/drm/drm 0x07556706 drmm_add_final_kfree +EXPORT_SYMBOL drivers/gpu/drm/drm 0x07569971 drm_clflush_pages +EXPORT_SYMBOL drivers/gpu/drm/drm 0x07f88521 drm_edid_is_valid +EXPORT_SYMBOL drivers/gpu/drm/drm 0x07fb449a drm_vma_offset_manager_destroy +EXPORT_SYMBOL drivers/gpu/drm/drm 0x0886c076 drm_plane_create_zpos_property +EXPORT_SYMBOL drivers/gpu/drm/drm 0x08a99350 drm_connector_attach_scaling_mode_property +EXPORT_SYMBOL drivers/gpu/drm/drm 0x09901815 drm_crtc_cleanup +EXPORT_SYMBOL drivers/gpu/drm/drm 0x099447a5 drm_gem_shmem_unpin +EXPORT_SYMBOL drivers/gpu/drm/drm 0x0a72f765 drm_clflush_virt_range +EXPORT_SYMBOL drivers/gpu/drm/drm 0x0ab1ee78 drm_panel_add +EXPORT_SYMBOL drivers/gpu/drm/drm 0x0aff7a71 drm_any_plane_has_format +EXPORT_SYMBOL drivers/gpu/drm/drm 0x0bfbf62c drm_gtf_mode +EXPORT_SYMBOL drivers/gpu/drm/drm 0x0c6f42a2 drm_hdmi_avi_infoframe_bars +EXPORT_SYMBOL drivers/gpu/drm/drm 0x0c81a1bc drm_i2c_encoder_prepare +EXPORT_SYMBOL drivers/gpu/drm/drm 0x0cc7e06d drm_release_noglobal +EXPORT_SYMBOL drivers/gpu/drm/drm 0x0cf8f2e7 drm_prime_sg_to_page_addr_arrays +EXPORT_SYMBOL drivers/gpu/drm/drm 0x0d2ecab1 drm_i2c_encoder_mode_set +EXPORT_SYMBOL drivers/gpu/drm/drm 0x0dee1c9a drm_match_cea_mode +EXPORT_SYMBOL drivers/gpu/drm/drm 0x0fd60df2 drm_get_connector_status_name +EXPORT_SYMBOL drivers/gpu/drm/drm 0x107742a9 drm_get_subpixel_order_name +EXPORT_SYMBOL drivers/gpu/drm/drm 0x10c62b61 __drm_printfn_debug +EXPORT_SYMBOL drivers/gpu/drm/drm 0x11b9567a drm_vma_node_is_allowed +EXPORT_SYMBOL drivers/gpu/drm/drm 0x120dac4d drm_master_get +EXPORT_SYMBOL drivers/gpu/drm/drm 0x127a8c6b drm_flip_work_queue +EXPORT_SYMBOL drivers/gpu/drm/drm 0x12fce5d0 drm_master_internal_acquire +EXPORT_SYMBOL drivers/gpu/drm/drm 0x130413c5 drm_mode_get_tile_group +EXPORT_SYMBOL drivers/gpu/drm/drm 0x130495af drm_gem_map_attach +EXPORT_SYMBOL drivers/gpu/drm/drm 0x13e14103 drm_mode_equal_no_clocks_no_stereo +EXPORT_SYMBOL drivers/gpu/drm/drm 0x152b8b0f drm_of_crtc_port_mask +EXPORT_SYMBOL drivers/gpu/drm/drm 0x153dceed drm_crtc_vblank_get +EXPORT_SYMBOL drivers/gpu/drm/drm 0x15d8aa41 __drm_printfn_seq_file +EXPORT_SYMBOL drivers/gpu/drm/drm 0x15f9c82d drm_framebuffer_plane_height +EXPORT_SYMBOL drivers/gpu/drm/drm 0x16323f24 drm_property_create_object +EXPORT_SYMBOL drivers/gpu/drm/drm 0x1647a039 drm_modeset_acquire_init +EXPORT_SYMBOL drivers/gpu/drm/drm 0x165513d9 drm_object_attach_property +EXPORT_SYMBOL drivers/gpu/drm/drm 0x16ac2597 drm_printf +EXPORT_SYMBOL drivers/gpu/drm/drm 0x170173be drm_of_find_possible_crtcs +EXPORT_SYMBOL drivers/gpu/drm/drm 0x17171cab drm_atomic_bridge_chain_check +EXPORT_SYMBOL drivers/gpu/drm/drm 0x187f3e19 drm_dev_unregister +EXPORT_SYMBOL drivers/gpu/drm/drm 0x19915e3b drm_writeback_cleanup_job +EXPORT_SYMBOL drivers/gpu/drm/drm 0x19af6779 drm_crtc_set_max_vblank_count +EXPORT_SYMBOL drivers/gpu/drm/drm 0x1a411479 drm_syncobj_free +EXPORT_SYMBOL drivers/gpu/drm/drm 0x1a80a672 drm_color_lut_check +EXPORT_SYMBOL drivers/gpu/drm/drm 0x1d3c93da drm_gem_unmap_dma_buf +EXPORT_SYMBOL drivers/gpu/drm/drm 0x1da1011a drm_dev_has_vblank +EXPORT_SYMBOL drivers/gpu/drm/drm 0x1e196880 drm_gem_object_lookup +EXPORT_SYMBOL drivers/gpu/drm/drm 0x1e777d79 drm_dev_dbg +EXPORT_SYMBOL drivers/gpu/drm/drm 0x20e4ed72 drm_connector_cleanup +EXPORT_SYMBOL drivers/gpu/drm/drm 0x20eec6b7 drm_encoder_cleanup +EXPORT_SYMBOL drivers/gpu/drm/drm 0x217678a0 drm_connector_list_iter_begin +EXPORT_SYMBOL drivers/gpu/drm/drm 0x2183c08c drm_mm_scan_add_block +EXPORT_SYMBOL drivers/gpu/drm/drm 0x21d541eb drm_flip_work_queue_task +EXPORT_SYMBOL drivers/gpu/drm/drm 0x222dea23 drm_panel_init +EXPORT_SYMBOL drivers/gpu/drm/drm 0x2267b435 drm_mode_create_tv_margin_properties +EXPORT_SYMBOL drivers/gpu/drm/drm 0x232276ed drm_atomic_bridge_chain_enable +EXPORT_SYMBOL drivers/gpu/drm/drm 0x23570b12 drm_connector_unregister +EXPORT_SYMBOL drivers/gpu/drm/drm 0x23db0918 drm_atomic_set_mode_for_crtc +EXPORT_SYMBOL drivers/gpu/drm/drm 0x2532689b drm_mode_is_420 +EXPORT_SYMBOL drivers/gpu/drm/drm 0x2547ae94 drm_mode_create +EXPORT_SYMBOL drivers/gpu/drm/drm 0x25daad93 __drm_mm_interval_first +EXPORT_SYMBOL drivers/gpu/drm/drm 0x26396472 drm_i2c_encoder_dpms +EXPORT_SYMBOL drivers/gpu/drm/drm 0x267c47dc drm_debugfs_create_files +EXPORT_SYMBOL drivers/gpu/drm/drm 0x26f4dbce drm_mode_validate_ycbcr420 +EXPORT_SYMBOL drivers/gpu/drm/drm 0x2754dad8 drm_mm_reserve_node +EXPORT_SYMBOL drivers/gpu/drm/drm 0x279831d0 drm_crtc_wait_one_vblank +EXPORT_SYMBOL drivers/gpu/drm/drm 0x27c4ef94 drm_gem_get_pages +EXPORT_SYMBOL drivers/gpu/drm/drm 0x28fa15cf drm_crtc_init_with_planes +EXPORT_SYMBOL drivers/gpu/drm/drm 0x299f03a1 drm_crtc_send_vblank_event +EXPORT_SYMBOL drivers/gpu/drm/drm 0x29f078d1 drm_mode_legacy_fb_format +EXPORT_SYMBOL drivers/gpu/drm/drm 0x2a29a1f0 drm_atomic_bridge_chain_post_disable +EXPORT_SYMBOL drivers/gpu/drm/drm 0x2a962499 drm_mm_scan_init_with_range +EXPORT_SYMBOL drivers/gpu/drm/drm 0x2ae0bfea drm_vma_offset_lookup_locked +EXPORT_SYMBOL drivers/gpu/drm/drm 0x2af3b066 drm_client_buffer_vunmap +EXPORT_SYMBOL drivers/gpu/drm/drm 0x2d50570f drm_rect_calc_hscale +EXPORT_SYMBOL drivers/gpu/drm/drm 0x2db9afe9 drm_set_preferred_mode +EXPORT_SYMBOL drivers/gpu/drm/drm 0x2e30f510 drm_atomic_get_plane_state +EXPORT_SYMBOL drivers/gpu/drm/drm 0x2f1dc6e3 drm_object_property_get_value +EXPORT_SYMBOL drivers/gpu/drm/drm 0x2f8576d1 drm_plane_create_color_properties +EXPORT_SYMBOL drivers/gpu/drm/drm 0x3017d8ce drm_property_create_bitmask +EXPORT_SYMBOL drivers/gpu/drm/drm 0x305dc377 drm_writeback_queue_job +EXPORT_SYMBOL drivers/gpu/drm/drm 0x3107e7d4 __drmm_add_action_or_reset +EXPORT_SYMBOL drivers/gpu/drm/drm 0x3179a59f drm_syncobj_find_fence +EXPORT_SYMBOL drivers/gpu/drm/drm 0x31b8a5e3 __drm_set_edid_firmware_path +EXPORT_SYMBOL drivers/gpu/drm/drm 0x33ebf6d7 drm_atomic_add_encoder_bridges +EXPORT_SYMBOL drivers/gpu/drm/drm 0x344b5fb7 drm_atomic_bridge_chain_pre_enable +EXPORT_SYMBOL drivers/gpu/drm/drm 0x3503d682 drm_mode_vrefresh +EXPORT_SYMBOL drivers/gpu/drm/drm 0x35137546 drm_probe_ddc +EXPORT_SYMBOL drivers/gpu/drm/drm 0x35367bde drm_gem_handle_delete +EXPORT_SYMBOL drivers/gpu/drm/drm 0x35afae24 __drm_puts_seq_file +EXPORT_SYMBOL drivers/gpu/drm/drm 0x378d294c drm_mode_is_420_also +EXPORT_SYMBOL drivers/gpu/drm/drm 0x38538ccf drm_connector_attach_vrr_capable_property +EXPORT_SYMBOL drivers/gpu/drm/drm 0x386e9263 drm_mode_prune_invalid +EXPORT_SYMBOL drivers/gpu/drm/drm 0x397f4de6 drm_plane_create_rotation_property +EXPORT_SYMBOL drivers/gpu/drm/drm 0x39ea5067 drm_atomic_private_obj_init +EXPORT_SYMBOL drivers/gpu/drm/drm 0x3a5dbb4f drm_atomic_private_obj_fini +EXPORT_SYMBOL drivers/gpu/drm/drm 0x3aec1bec drm_vma_node_allow +EXPORT_SYMBOL drivers/gpu/drm/drm 0x3b02e148 drm_send_event_locked +EXPORT_SYMBOL drivers/gpu/drm/drm 0x3b75c7ab drm_get_edid +EXPORT_SYMBOL drivers/gpu/drm/drm 0x3b77ddc5 drm_gem_shmem_create_with_handle +EXPORT_SYMBOL drivers/gpu/drm/drm 0x3ba17eab drm_ht_insert_item +EXPORT_SYMBOL drivers/gpu/drm/drm 0x3bb1f384 drm_crtc_enable_color_mgmt +EXPORT_SYMBOL drivers/gpu/drm/drm 0x3c22a4d8 drm_vma_offset_manager_init +EXPORT_SYMBOL drivers/gpu/drm/drm 0x3c46e38b drm_modeset_lock_all +EXPORT_SYMBOL drivers/gpu/drm/drm 0x3c6e6bb1 drm_gem_prime_mmap +EXPORT_SYMBOL drivers/gpu/drm/drm 0x3c9ada15 drm_mode_find_dmt +EXPORT_SYMBOL drivers/gpu/drm/drm 0x3e50b109 drm_gem_fence_array_add +EXPORT_SYMBOL drivers/gpu/drm/drm 0x3ecd1ffa drm_connector_attach_content_type_property +EXPORT_SYMBOL drivers/gpu/drm/drm 0x41a76d96 drm_mode_object_put +EXPORT_SYMBOL drivers/gpu/drm/drm 0x420e4249 drmm_mode_config_init +EXPORT_SYMBOL drivers/gpu/drm/drm 0x429b122b drm_gem_dmabuf_vmap +EXPORT_SYMBOL drivers/gpu/drm/drm 0x42a17530 drm_atomic_get_crtc_state +EXPORT_SYMBOL drivers/gpu/drm/drm 0x42a4f23c drm_connector_list_iter_end +EXPORT_SYMBOL drivers/gpu/drm/drm 0x4372a60a drm_master_internal_release +EXPORT_SYMBOL drivers/gpu/drm/drm 0x44576475 drm_mode_parse_command_line_for_connector +EXPORT_SYMBOL drivers/gpu/drm/drm 0x44fcf82e drm_gem_prime_export +EXPORT_SYMBOL drivers/gpu/drm/drm 0x4579e8ee drm_crtc_vblank_waitqueue +EXPORT_SYMBOL drivers/gpu/drm/drm 0x45f351ea drm_vblank_restore +EXPORT_SYMBOL drivers/gpu/drm/drm 0x474156b5 drm_mode_equal +EXPORT_SYMBOL drivers/gpu/drm/drm 0x474395da drm_i2c_encoder_commit +EXPORT_SYMBOL drivers/gpu/drm/drm 0x47f985aa drm_edid_duplicate +EXPORT_SYMBOL drivers/gpu/drm/drm 0x481e53f9 drm_mode_object_find +EXPORT_SYMBOL drivers/gpu/drm/drm 0x489de94c drm_legacy_ioremap +EXPORT_SYMBOL drivers/gpu/drm/drm 0x48e300bd drm_gem_mmap_obj +EXPORT_SYMBOL drivers/gpu/drm/drm 0x48fb5d7a drm_mode_create_content_type_property +EXPORT_SYMBOL drivers/gpu/drm/drm 0x49b88b4d drm_handle_vblank +EXPORT_SYMBOL drivers/gpu/drm/drm 0x4ad6d7ca __drm_atomic_helper_disable_plane +EXPORT_SYMBOL drivers/gpu/drm/drm 0x4b7ebf95 drm_mm_remove_node +EXPORT_SYMBOL drivers/gpu/drm/drm 0x4be3c9ab drm_mode_put_tile_group +EXPORT_SYMBOL drivers/gpu/drm/drm 0x4c500e16 drm_display_info_set_bus_formats +EXPORT_SYMBOL drivers/gpu/drm/drm 0x4c552739 drm_writeback_prepare_job +EXPORT_SYMBOL drivers/gpu/drm/drm 0x4d16847a drm_mode_destroy +EXPORT_SYMBOL drivers/gpu/drm/drm 0x4d4f1353 drm_mode_create_aspect_ratio_property +EXPORT_SYMBOL drivers/gpu/drm/drm 0x4e095f11 drm_get_format_name +EXPORT_SYMBOL drivers/gpu/drm/drm 0x4f18a150 __drm_debug +EXPORT_SYMBOL drivers/gpu/drm/drm 0x4f9840db drm_syncobj_add_point +EXPORT_SYMBOL drivers/gpu/drm/drm 0x4ff04958 drm_writeback_get_out_fence +EXPORT_SYMBOL drivers/gpu/drm/drm 0x50674de7 drm_timeout_abs_to_jiffies +EXPORT_SYMBOL drivers/gpu/drm/drm 0x506a8367 drm_atomic_set_fb_for_plane +EXPORT_SYMBOL drivers/gpu/drm/drm 0x5089ab24 drm_connector_attach_edid_property +EXPORT_SYMBOL drivers/gpu/drm/drm 0x5313e98d drm_crtc_vblank_off +EXPORT_SYMBOL drivers/gpu/drm/drm 0x54304b0c drm_framebuffer_init +EXPORT_SYMBOL drivers/gpu/drm/drm 0x54c40c42 drm_gem_object_release +EXPORT_SYMBOL drivers/gpu/drm/drm 0x5542443b drm_flip_work_init +EXPORT_SYMBOL drivers/gpu/drm/drm 0x55732a2e drm_atomic_state_clear +EXPORT_SYMBOL drivers/gpu/drm/drm 0x55f3f40b drm_client_modeset_commit +EXPORT_SYMBOL drivers/gpu/drm/drm 0x568db171 drm_gem_dmabuf_mmap +EXPORT_SYMBOL drivers/gpu/drm/drm 0x56c6e828 drm_mode_get_hv_timing +EXPORT_SYMBOL drivers/gpu/drm/drm 0x57174c43 drm_dev_put +EXPORT_SYMBOL drivers/gpu/drm/drm 0x57540b61 drm_bridge_chain_mode_set +EXPORT_SYMBOL drivers/gpu/drm/drm 0x57698a50 drm_mm_takedown +EXPORT_SYMBOL drivers/gpu/drm/drm 0x57b6efe3 drm_ioctl_flags +EXPORT_SYMBOL drivers/gpu/drm/drm 0x57e1df0e drm_syncobj_replace_fence +EXPORT_SYMBOL drivers/gpu/drm/drm 0x59056243 drm_mm_replace_node +EXPORT_SYMBOL drivers/gpu/drm/drm 0x59a9e971 drm_open +EXPORT_SYMBOL drivers/gpu/drm/drm 0x5c510ae0 drm_panel_prepare +EXPORT_SYMBOL drivers/gpu/drm/drm 0x5cbcccaa drm_crtc_check_viewport +EXPORT_SYMBOL drivers/gpu/drm/drm 0x5d70634c drm_gem_dmabuf_release +EXPORT_SYMBOL drivers/gpu/drm/drm 0x5e64a0d0 drm_release +EXPORT_SYMBOL drivers/gpu/drm/drm 0x5e6a50fc drm_plane_create_zpos_immutable_property +EXPORT_SYMBOL drivers/gpu/drm/drm 0x5f096225 drm_vma_offset_remove +EXPORT_SYMBOL drivers/gpu/drm/drm 0x5f7985a5 drm_mm_scan_remove_block +EXPORT_SYMBOL drivers/gpu/drm/drm 0x5fd6dda6 drm_framebuffer_remove +EXPORT_SYMBOL drivers/gpu/drm/drm 0x5fded3e5 drm_client_modeset_probe +EXPORT_SYMBOL drivers/gpu/drm/drm 0x614c9fd5 drm_plane_cleanup +EXPORT_SYMBOL drivers/gpu/drm/drm 0x62c40912 drm_hdmi_avi_infoframe_colorspace +EXPORT_SYMBOL drivers/gpu/drm/drm 0x637cac19 drm_mode_set_crtcinfo +EXPORT_SYMBOL drivers/gpu/drm/drm 0x6422672b drm_send_event +EXPORT_SYMBOL drivers/gpu/drm/drm 0x645cd58f drm_i2c_encoder_mode_fixup +EXPORT_SYMBOL drivers/gpu/drm/drm 0x656ab228 drm_client_rotation +EXPORT_SYMBOL drivers/gpu/drm/drm 0x65ee9fc2 drm_mode_duplicate +EXPORT_SYMBOL drivers/gpu/drm/drm 0x66551bc7 drm_detect_monitor_audio +EXPORT_SYMBOL drivers/gpu/drm/drm 0x66960359 drm_client_dev_hotplug +EXPORT_SYMBOL drivers/gpu/drm/drm 0x671d21d3 devm_drm_dev_init +EXPORT_SYMBOL drivers/gpu/drm/drm 0x6903e78a drm_is_current_master +EXPORT_SYMBOL drivers/gpu/drm/drm 0x690cc635 drm_dev_init +EXPORT_SYMBOL drivers/gpu/drm/drm 0x6931e2a6 drm_atomic_get_connector_state +EXPORT_SYMBOL drivers/gpu/drm/drm 0x6a4a9cc9 drm_modeset_unlock_all +EXPORT_SYMBOL drivers/gpu/drm/drm 0x6aa0d630 drm_framebuffer_cleanup +EXPORT_SYMBOL drivers/gpu/drm/drm 0x6b092bd5 drm_sysfs_hotplug_event +EXPORT_SYMBOL drivers/gpu/drm/drm 0x6b20daf6 drm_mode_create_hdmi_colorspace_property +EXPORT_SYMBOL drivers/gpu/drm/drm 0x6b2fcedd of_drm_find_bridge +EXPORT_SYMBOL drivers/gpu/drm/drm 0x6cfcbf96 drm_hdmi_avi_infoframe_from_display_mode +EXPORT_SYMBOL drivers/gpu/drm/drm 0x6d9c9d99 drm_i2c_encoder_destroy +EXPORT_SYMBOL drivers/gpu/drm/drm 0x6dcc6429 drm_crtc_vblank_on +EXPORT_SYMBOL drivers/gpu/drm/drm 0x6e30ba8e drm_rect_rotate_inv +EXPORT_SYMBOL drivers/gpu/drm/drm 0x6e5517de drm_modeset_lock_single_interruptible +EXPORT_SYMBOL drivers/gpu/drm/drm 0x6eb26b10 drm_crtc_vblank_helper_get_vblank_timestamp +EXPORT_SYMBOL drivers/gpu/drm/drm 0x6fa0bee2 drm_property_blob_put +EXPORT_SYMBOL drivers/gpu/drm/drm 0x702f7fa1 drm_syncobj_get_handle +EXPORT_SYMBOL drivers/gpu/drm/drm 0x712c07fe drm_invalid_op +EXPORT_SYMBOL drivers/gpu/drm/drm 0x71f6af24 drm_syncobj_find +EXPORT_SYMBOL drivers/gpu/drm/drm 0x7269f123 drm_of_component_probe +EXPORT_SYMBOL drivers/gpu/drm/drm 0x72fbd280 drm_add_override_edid_modes +EXPORT_SYMBOL drivers/gpu/drm/drm 0x734c2228 drm_dev_alloc +EXPORT_SYMBOL drivers/gpu/drm/drm 0x74b14b4c drm_vma_offset_add +EXPORT_SYMBOL drivers/gpu/drm/drm 0x76465d99 drm_read +EXPORT_SYMBOL drivers/gpu/drm/drm 0x76f5f8a6 drm_i2c_encoder_detect +EXPORT_SYMBOL drivers/gpu/drm/drm 0x77434898 drm_gem_fence_array_add_implicit +EXPORT_SYMBOL drivers/gpu/drm/drm 0x77ec9aca drm_atomic_state_default_release +EXPORT_SYMBOL drivers/gpu/drm/drm 0x783e4ba6 drm_atomic_normalize_zpos +EXPORT_SYMBOL drivers/gpu/drm/drm 0x795759e8 drm_connector_has_possible_encoder +EXPORT_SYMBOL drivers/gpu/drm/drm 0x7a65be80 drm_hdmi_vendor_infoframe_from_display_mode +EXPORT_SYMBOL drivers/gpu/drm/drm 0x7b052d82 drm_poll +EXPORT_SYMBOL drivers/gpu/drm/drm 0x7cc4788c drm_bridge_chain_mode_fixup +EXPORT_SYMBOL drivers/gpu/drm/drm 0x7d6d13ee drm_modeset_unlock +EXPORT_SYMBOL drivers/gpu/drm/drm 0x7e6008a1 drm_modeset_backoff +EXPORT_SYMBOL drivers/gpu/drm/drm 0x7edc546f drm_mm_print +EXPORT_SYMBOL drivers/gpu/drm/drm 0x7f737e39 drm_gem_shmem_get_pages +EXPORT_SYMBOL drivers/gpu/drm/drm 0x7fd7ee51 drm_client_framebuffer_create +EXPORT_SYMBOL drivers/gpu/drm/drm 0x805bac1b drm_object_property_set_value +EXPORT_SYMBOL drivers/gpu/drm/drm 0x80beb7b1 drm_property_create_bool +EXPORT_SYMBOL drivers/gpu/drm/drm 0x8108949d drm_mode_equal_no_clocks +EXPORT_SYMBOL drivers/gpu/drm/drm 0x81992424 drm_edid_header_is_valid +EXPORT_SYMBOL drivers/gpu/drm/drm 0x822f84c9 drm_property_create_blob +EXPORT_SYMBOL drivers/gpu/drm/drm 0x82682635 drm_property_create_enum +EXPORT_SYMBOL drivers/gpu/drm/drm 0x826c1f50 drm_gem_cma_prime_import_sg_table_vmap +EXPORT_SYMBOL drivers/gpu/drm/drm 0x82b0e553 drm_atomic_nonblocking_commit +EXPORT_SYMBOL drivers/gpu/drm/drm 0x83dc70ff drm_connector_attach_tv_margin_properties +EXPORT_SYMBOL drivers/gpu/drm/drm 0x83ec8f95 drm_connector_init_with_ddc +EXPORT_SYMBOL drivers/gpu/drm/drm 0x842dd90c drm_flip_work_commit +EXPORT_SYMBOL drivers/gpu/drm/drm 0x84b707dd drm_crtc_vblank_count +EXPORT_SYMBOL drivers/gpu/drm/drm 0x8563a554 drm_ht_remove +EXPORT_SYMBOL drivers/gpu/drm/drm 0x864c3cd6 drm_connector_update_edid_property +EXPORT_SYMBOL drivers/gpu/drm/drm 0x871ab41a drm_rect_intersect +EXPORT_SYMBOL drivers/gpu/drm/drm 0x8739bb60 drm_gem_lock_reservations +EXPORT_SYMBOL drivers/gpu/drm/drm 0x8810b610 drm_atomic_get_old_connector_for_encoder +EXPORT_SYMBOL drivers/gpu/drm/drm 0x8888c250 drm_event_reserve_init_locked +EXPORT_SYMBOL drivers/gpu/drm/drm 0x8944fbc7 drm_panel_detach +EXPORT_SYMBOL drivers/gpu/drm/drm 0x8b00c8fd drm_add_edid_modes +EXPORT_SYMBOL drivers/gpu/drm/drm 0x8b368dd7 drm_gem_cma_print_info +EXPORT_SYMBOL drivers/gpu/drm/drm 0x8c29aef8 drm_connector_register +EXPORT_SYMBOL drivers/gpu/drm/drm 0x8c2d8a6e drm_client_register +EXPORT_SYMBOL drivers/gpu/drm/drm 0x8c4fd37c drm_mode_set_name +EXPORT_SYMBOL drivers/gpu/drm/drm 0x8d34149f drm_debugfs_remove_files +EXPORT_SYMBOL drivers/gpu/drm/drm 0x8d4f1534 drm_client_init +EXPORT_SYMBOL drivers/gpu/drm/drm 0x8d819309 drm_dev_enter +EXPORT_SYMBOL drivers/gpu/drm/drm 0x8dc8ac06 drm_crtc_vblank_reset +EXPORT_SYMBOL drivers/gpu/drm/drm 0x8f38514c drm_atomic_get_new_connector_for_encoder +EXPORT_SYMBOL drivers/gpu/drm/drm 0x90a09e58 drm_crtc_vblank_restore +EXPORT_SYMBOL drivers/gpu/drm/drm 0x91fec1cc drm_rect_calc_vscale +EXPORT_SYMBOL drivers/gpu/drm/drm 0x9213f5c3 drm_edid_to_speaker_allocation +EXPORT_SYMBOL drivers/gpu/drm/drm 0x9323dc71 drm_gtf_mode_complex +EXPORT_SYMBOL drivers/gpu/drm/drm 0x9365e800 drm_property_add_enum +EXPORT_SYMBOL drivers/gpu/drm/drm 0x93947222 drm_atomic_check_only +EXPORT_SYMBOL drivers/gpu/drm/drm 0x93e2285e drm_mode_plane_set_obj_prop +EXPORT_SYMBOL drivers/gpu/drm/drm 0x94af35ce drm_gem_shmem_pin +EXPORT_SYMBOL drivers/gpu/drm/drm 0x94c041f7 __drmm_add_action +EXPORT_SYMBOL drivers/gpu/drm/drm 0x95dbc76d drm_ht_create +EXPORT_SYMBOL drivers/gpu/drm/drm 0x96b009b3 drm_atomic_set_mode_prop_for_crtc +EXPORT_SYMBOL drivers/gpu/drm/drm 0x96d55304 drm_connector_set_panel_orientation_with_quirk +EXPORT_SYMBOL drivers/gpu/drm/drm 0x97646d7c drm_atomic_bridge_chain_disable +EXPORT_SYMBOL drivers/gpu/drm/drm 0x982698bd drm_mode_match +EXPORT_SYMBOL drivers/gpu/drm/drm 0x9838bcbc drm_mode_create_tile_group +EXPORT_SYMBOL drivers/gpu/drm/drm 0x992ff201 drm_wait_one_vblank +EXPORT_SYMBOL drivers/gpu/drm/drm 0x99ce308e drm_calc_timestamping_constants +EXPORT_SYMBOL drivers/gpu/drm/drm 0x99dfded3 drm_framebuffer_lookup +EXPORT_SYMBOL drivers/gpu/drm/drm 0x99fd20aa drm_rect_clip_scaled +EXPORT_SYMBOL drivers/gpu/drm/drm 0x9a0384f9 __drm_atomic_helper_set_config +EXPORT_SYMBOL drivers/gpu/drm/drm 0x9a75aace drm_client_modeset_dpms +EXPORT_SYMBOL drivers/gpu/drm/drm 0x9af84454 drm_modeset_lock_init +EXPORT_SYMBOL drivers/gpu/drm/drm 0x9b8a53f5 drm_ht_just_insert_please +EXPORT_SYMBOL drivers/gpu/drm/drm 0x9b8cea93 drm_panel_enable +EXPORT_SYMBOL drivers/gpu/drm/drm 0x9e78be9a drm_plane_force_disable +EXPORT_SYMBOL drivers/gpu/drm/drm 0x9f20f2b5 drm_mode_create_dp_colorspace_property +EXPORT_SYMBOL drivers/gpu/drm/drm 0x9f8f3552 drm_panel_disable +EXPORT_SYMBOL drivers/gpu/drm/drm 0x9fe8c67a drm_gem_prime_import +EXPORT_SYMBOL drivers/gpu/drm/drm 0xa04836a7 drm_prime_gem_destroy +EXPORT_SYMBOL drivers/gpu/drm/drm 0xa0713087 drm_ht_find_item +EXPORT_SYMBOL drivers/gpu/drm/drm 0xa11280f3 drm_connector_attach_content_protection_property +EXPORT_SYMBOL drivers/gpu/drm/drm 0xa1f94aad drm_master_put +EXPORT_SYMBOL drivers/gpu/drm/drm 0xa2436144 drm_cma_gem_create_object_default_funcs +EXPORT_SYMBOL drivers/gpu/drm/drm 0xa2d064ef drm_bridge_remove +EXPORT_SYMBOL drivers/gpu/drm/drm 0xa2fdea0d drm_connector_attach_encoder +EXPORT_SYMBOL drivers/gpu/drm/drm 0xa361d073 drm_gem_prime_fd_to_handle +EXPORT_SYMBOL drivers/gpu/drm/drm 0xa4f74cb3 drm_legacy_ioremap_wc +EXPORT_SYMBOL drivers/gpu/drm/drm 0xa81c5148 drm_panel_get_modes +EXPORT_SYMBOL drivers/gpu/drm/drm 0xa873f47a drm_atomic_get_old_private_obj_state +EXPORT_SYMBOL drivers/gpu/drm/drm 0xa8ad5d01 drm_detect_hdmi_monitor +EXPORT_SYMBOL drivers/gpu/drm/drm 0xa90f5a3f drm_hdcp_update_content_protection +EXPORT_SYMBOL drivers/gpu/drm/drm 0xa97a5e8d drm_modeset_drop_locks +EXPORT_SYMBOL drivers/gpu/drm/drm 0xaa038b6b drm_connector_list_update +EXPORT_SYMBOL drivers/gpu/drm/drm 0xaac39ff3 __drm_printfn_info +EXPORT_SYMBOL drivers/gpu/drm/drm 0xaad35913 drm_framebuffer_plane_width +EXPORT_SYMBOL drivers/gpu/drm/drm 0xab28c39f drm_modeset_lock +EXPORT_SYMBOL drivers/gpu/drm/drm 0xab57f291 drm_gem_dmabuf_export +EXPORT_SYMBOL drivers/gpu/drm/drm 0xac266ad7 drm_i2c_encoder_init +EXPORT_SYMBOL drivers/gpu/drm/drm 0xacd2dffb drm_atomic_set_crtc_for_plane +EXPORT_SYMBOL drivers/gpu/drm/drm 0xad4e902b drm_color_ctm_s31_32_to_qm_n +EXPORT_SYMBOL drivers/gpu/drm/drm 0xae12160c drm_mode_config_cleanup +EXPORT_SYMBOL drivers/gpu/drm/drm 0xae277372 __drm_crtc_commit_free +EXPORT_SYMBOL drivers/gpu/drm/drm 0xaed8e413 drm_bridge_chain_disable +EXPORT_SYMBOL drivers/gpu/drm/drm 0xaee9afb9 drm_gem_shmem_vmap +EXPORT_SYMBOL drivers/gpu/drm/drm 0xaf5b1326 drm_atomic_get_new_private_obj_state +EXPORT_SYMBOL drivers/gpu/drm/drm 0xafc42947 drm_mode_create_from_cmdline_mode +EXPORT_SYMBOL drivers/gpu/drm/drm 0xb053adda drm_rect_rotate +EXPORT_SYMBOL drivers/gpu/drm/drm 0xb0b05ff5 drm_clflush_sg +EXPORT_SYMBOL drivers/gpu/drm/drm 0xb0c9b8b3 drm_av_sync_delay +EXPORT_SYMBOL drivers/gpu/drm/drm 0xb11ac7a7 __drm_err +EXPORT_SYMBOL drivers/gpu/drm/drm 0xb12071f6 drm_mode_set_config_internal +EXPORT_SYMBOL drivers/gpu/drm/drm 0xb2d0eedb drm_bridge_add +EXPORT_SYMBOL drivers/gpu/drm/drm 0xb33f4af1 drm_atomic_get_private_obj_state +EXPORT_SYMBOL drivers/gpu/drm/drm 0xb4032484 drm_mm_insert_node_in_range +EXPORT_SYMBOL drivers/gpu/drm/drm 0xb4572d8b drm_gem_put_pages +EXPORT_SYMBOL drivers/gpu/drm/drm 0xb462d06a drm_gem_object_put +EXPORT_SYMBOL drivers/gpu/drm/drm 0xb4f9055e drm_atomic_add_affected_planes +EXPORT_SYMBOL drivers/gpu/drm/drm 0xb535e070 drm_client_modeset_commit_locked +EXPORT_SYMBOL drivers/gpu/drm/drm 0xb548b8ac drm_hdmi_infoframe_set_hdr_metadata +EXPORT_SYMBOL drivers/gpu/drm/drm 0xb6127243 drm_need_swiotlb +EXPORT_SYMBOL drivers/gpu/drm/drm 0xb75b193e drm_crtc_accurate_vblank_count +EXPORT_SYMBOL drivers/gpu/drm/drm 0xb826710e drm_bridge_attach +EXPORT_SYMBOL drivers/gpu/drm/drm 0xb82e4089 drm_atomic_set_crtc_for_connector +EXPORT_SYMBOL drivers/gpu/drm/drm 0xb853833f drm_mode_validate_size +EXPORT_SYMBOL drivers/gpu/drm/drm 0xb8bdb3f5 drm_puts +EXPORT_SYMBOL drivers/gpu/drm/drm 0xb94699a7 drm_property_create_range +EXPORT_SYMBOL drivers/gpu/drm/drm 0xb9cad492 __drm_atomic_state_free +EXPORT_SYMBOL drivers/gpu/drm/drm 0xb9d4546b drm_crtc_vblank_put +EXPORT_SYMBOL drivers/gpu/drm/drm 0xb9f56e22 drm_format_info_block_width +EXPORT_SYMBOL drivers/gpu/drm/drm 0xbb33ee7b drm_default_rgb_quant_range +EXPORT_SYMBOL drivers/gpu/drm/drm 0xbc7a530f drm_plane_from_index +EXPORT_SYMBOL drivers/gpu/drm/drm 0xbcac69bd drm_connector_list_iter_next +EXPORT_SYMBOL drivers/gpu/drm/drm 0xbde793e6 drm_put_dev +EXPORT_SYMBOL drivers/gpu/drm/drm 0xbe0f2408 drm_driver_legacy_fb_format +EXPORT_SYMBOL drivers/gpu/drm/drm 0xbf529f7e drm_gem_create_mmap_offset_size +EXPORT_SYMBOL drivers/gpu/drm/drm 0xc0dd545e drm_state_dump +EXPORT_SYMBOL drivers/gpu/drm/drm 0xc2532590 drm_plane_init +EXPORT_SYMBOL drivers/gpu/drm/drm 0xc269f18a drm_modeset_lock_all_ctx +EXPORT_SYMBOL drivers/gpu/drm/drm 0xc2c36138 drm_mode_is_420_only +EXPORT_SYMBOL drivers/gpu/drm/drm 0xc324efb9 drm_edid_to_sad +EXPORT_SYMBOL drivers/gpu/drm/drm 0xc3267e48 drm_panel_attach +EXPORT_SYMBOL drivers/gpu/drm/drm 0xc32cb8ee drm_connector_set_vrr_capable_property +EXPORT_SYMBOL drivers/gpu/drm/drm 0xc3b65f81 drm_gem_shmem_madvise +EXPORT_SYMBOL drivers/gpu/drm/drm 0xc3c69c08 drm_gem_private_object_init +EXPORT_SYMBOL drivers/gpu/drm/drm 0xc4e7007b drmm_kfree +EXPORT_SYMBOL drivers/gpu/drm/drm 0xc5992401 __drm_puts_coredump +EXPORT_SYMBOL drivers/gpu/drm/drm 0xc5ca78d9 drm_bridge_chain_mode_valid +EXPORT_SYMBOL drivers/gpu/drm/drm 0xc6323239 drm_flip_work_cleanup +EXPORT_SYMBOL drivers/gpu/drm/drm 0xc657338a drm_mode_probed_add +EXPORT_SYMBOL drivers/gpu/drm/drm 0xc68b6ee3 drm_atomic_state_alloc +EXPORT_SYMBOL drivers/gpu/drm/drm 0xc7f0f027 drm_format_info_min_pitch +EXPORT_SYMBOL drivers/gpu/drm/drm 0xc861e090 drm_hdmi_avi_infoframe_quant_range +EXPORT_SYMBOL drivers/gpu/drm/drm 0xc8683502 drmm_kmalloc +EXPORT_SYMBOL drivers/gpu/drm/drm 0xc89b6e82 drm_crtc_vblank_count_and_time +EXPORT_SYMBOL drivers/gpu/drm/drm 0xc8a4bf02 drm_sysfs_connector_status_event +EXPORT_SYMBOL drivers/gpu/drm/drm 0xc92a2f55 drm_gem_mmap +EXPORT_SYMBOL drivers/gpu/drm/drm 0xc98518ce drm_cvt_mode +EXPORT_SYMBOL drivers/gpu/drm/drm 0xc9d31a9f drm_mode_create_scaling_mode_property +EXPORT_SYMBOL drivers/gpu/drm/drm 0xca10ea35 drm_mode_crtc_set_gamma_size +EXPORT_SYMBOL drivers/gpu/drm/drm 0xcb2340b8 drm_rect_debug_print +EXPORT_SYMBOL drivers/gpu/drm/drm 0xcb595ce8 drm_gem_shmem_purge_locked +EXPORT_SYMBOL drivers/gpu/drm/drm 0xcb84c61f of_drm_find_panel +EXPORT_SYMBOL drivers/gpu/drm/drm 0xcc585bb9 drm_gem_dmabuf_vunmap +EXPORT_SYMBOL drivers/gpu/drm/drm 0xccea57ae drm_panel_unprepare +EXPORT_SYMBOL drivers/gpu/drm/drm 0xcd372109 drm_dev_set_unique +EXPORT_SYMBOL drivers/gpu/drm/drm 0xce0fbb78 drm_gem_objects_lookup +EXPORT_SYMBOL drivers/gpu/drm/drm 0xcf11a549 drm_flip_work_allocate_task +EXPORT_SYMBOL drivers/gpu/drm/drm 0xcf1a0d75 drm_plane_create_alpha_property +EXPORT_SYMBOL drivers/gpu/drm/drm 0xd01598ae drm_property_destroy +EXPORT_SYMBOL drivers/gpu/drm/drm 0xd12a935b drm_mode_create_tv_properties +EXPORT_SYMBOL drivers/gpu/drm/drm 0xd13f9985 drm_edid_block_valid +EXPORT_SYMBOL drivers/gpu/drm/drm 0xd1586ba3 drm_dev_register +EXPORT_SYMBOL drivers/gpu/drm/drm 0xd170d216 drm_property_replace_blob +EXPORT_SYMBOL drivers/gpu/drm/drm 0xd1b9701f drm_gem_vm_open +EXPORT_SYMBOL drivers/gpu/drm/drm 0xd2a2dbbf drm_crtc_arm_vblank_event +EXPORT_SYMBOL drivers/gpu/drm/drm 0xd312574a drm_property_create_signed_range +EXPORT_SYMBOL drivers/gpu/drm/drm 0xd3476054 drm_dev_get +EXPORT_SYMBOL drivers/gpu/drm/drm 0xd3fdc324 drm_dev_unplug +EXPORT_SYMBOL drivers/gpu/drm/drm 0xd479b1e6 drm_syncobj_create +EXPORT_SYMBOL drivers/gpu/drm/drm 0xd489af8e drm_atomic_commit +EXPORT_SYMBOL drivers/gpu/drm/drm 0xd4955483 drm_gem_handle_create +EXPORT_SYMBOL drivers/gpu/drm/drm 0xd5c5a796 drm_panel_of_backlight +EXPORT_SYMBOL drivers/gpu/drm/drm 0xd680a377 drm_gem_object_free +EXPORT_SYMBOL drivers/gpu/drm/drm 0xd6d7445e drm_ioctl_kernel +EXPORT_SYMBOL drivers/gpu/drm/drm 0xd8ed380f drm_atomic_get_old_bridge_state +EXPORT_SYMBOL drivers/gpu/drm/drm 0xd96b425a __drm_printfn_coredump +EXPORT_SYMBOL drivers/gpu/drm/drm 0xd9ca1f4f drm_legacy_ioremapfree +EXPORT_SYMBOL drivers/gpu/drm/drm 0xd9fff2d2 drm_framebuffer_unregister_private +EXPORT_SYMBOL drivers/gpu/drm/drm 0xda06d2ab drm_gem_unlock_reservations +EXPORT_SYMBOL drivers/gpu/drm/drm 0xdabc78ee drm_connector_init +EXPORT_SYMBOL drivers/gpu/drm/drm 0xdbae0a76 drm_mode_create_dvi_i_properties +EXPORT_SYMBOL drivers/gpu/drm/drm 0xdc0eeeee drm_gem_shmem_vunmap +EXPORT_SYMBOL drivers/gpu/drm/drm 0xdc7e9f89 drm_gem_free_mmap_offset +EXPORT_SYMBOL drivers/gpu/drm/drm 0xdc940953 drm_atomic_state_default_clear +EXPORT_SYMBOL drivers/gpu/drm/drm 0xdc9682a4 drm_crtc_vblank_helper_get_vblank_timestamp_internal +EXPORT_SYMBOL drivers/gpu/drm/drm 0xdcc08a3c drm_client_framebuffer_delete +EXPORT_SYMBOL drivers/gpu/drm/drm 0xdd259f0c drm_gem_create_mmap_offset +EXPORT_SYMBOL drivers/gpu/drm/drm 0xdd51e975 drm_property_lookup_blob +EXPORT_SYMBOL drivers/gpu/drm/drm 0xde4774c3 drm_gem_map_dma_buf +EXPORT_SYMBOL drivers/gpu/drm/drm 0xded6f524 drm_bridge_chain_pre_enable +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 0xe036c37a drm_warn_on_modeset_not_all_locked +EXPORT_SYMBOL drivers/gpu/drm/drm 0xe03f47c6 drm_mode_validate_driver +EXPORT_SYMBOL drivers/gpu/drm/drm 0xe116d3a4 drm_vma_node_revoke +EXPORT_SYMBOL drivers/gpu/drm/drm 0xe132e01f drm_add_modes_noedid +EXPORT_SYMBOL drivers/gpu/drm/drm 0xe141e62d drm_event_reserve_init +EXPORT_SYMBOL drivers/gpu/drm/drm 0xe36b3343 drm_gem_shmem_put_pages +EXPORT_SYMBOL drivers/gpu/drm/drm 0xe57aab20 drm_dev_printk +EXPORT_SYMBOL drivers/gpu/drm/drm 0xe61b0569 drm_plane_create_blend_mode_property +EXPORT_SYMBOL drivers/gpu/drm/drm 0xe6208444 drm_property_create +EXPORT_SYMBOL drivers/gpu/drm/drm 0xe6415b07 drm_atomic_state_init +EXPORT_SYMBOL drivers/gpu/drm/drm 0xe75ed474 drm_irq_uninstall +EXPORT_SYMBOL drivers/gpu/drm/drm 0xe817eb01 __drm_printfn_err +EXPORT_SYMBOL drivers/gpu/drm/drm 0xe8a034df drm_dev_exit +EXPORT_SYMBOL drivers/gpu/drm/drm 0xe99586ee drm_connector_set_tile_property +EXPORT_SYMBOL drivers/gpu/drm/drm 0xea72299a drm_mode_create_suggested_offset_properties +EXPORT_SYMBOL drivers/gpu/drm/drm 0xeb4395c6 drm_connector_set_panel_orientation +EXPORT_SYMBOL drivers/gpu/drm/drm 0xeb58842e drm_syncobj_get_fd +EXPORT_SYMBOL drivers/gpu/drm/drm 0xebeab697 drm_print_regset32 +EXPORT_SYMBOL drivers/gpu/drm/drm 0xebfb4321 drm_bridge_chain_post_disable +EXPORT_SYMBOL drivers/gpu/drm/drm 0xec12af74 __drm_dbg +EXPORT_SYMBOL drivers/gpu/drm/drm 0xec828bb7 drm_modeset_acquire_fini +EXPORT_SYMBOL drivers/gpu/drm/drm 0xee456319 drm_client_release +EXPORT_SYMBOL drivers/gpu/drm/drm 0xee576403 drm_get_edid_switcheroo +EXPORT_SYMBOL drivers/gpu/drm/drm 0xeef14d8c drm_format_info_block_height +EXPORT_SYMBOL drivers/gpu/drm/drm 0xef0b1f37 drm_crtc_handle_vblank +EXPORT_SYMBOL drivers/gpu/drm/drm 0xefecaa86 drm_vblank_init +EXPORT_SYMBOL drivers/gpu/drm/drm 0xf03158e3 drm_hdmi_avi_infoframe_content_type +EXPORT_SYMBOL drivers/gpu/drm/drm 0xf0517d7a drm_mm_init +EXPORT_SYMBOL drivers/gpu/drm/drm 0xf0ab9bf4 drm_gem_shmem_print_info +EXPORT_SYMBOL drivers/gpu/drm/drm 0xf0b7192f drm_event_cancel_free +EXPORT_SYMBOL drivers/gpu/drm/drm 0xf1421d13 drm_mode_sort +EXPORT_SYMBOL drivers/gpu/drm/drm 0xf156b11c drm_gem_object_put_unlocked +EXPORT_SYMBOL drivers/gpu/drm/drm 0xf168e887 drm_gem_shmem_purge +EXPORT_SYMBOL drivers/gpu/drm/drm 0xf17a06ad drm_atomic_add_affected_connectors +EXPORT_SYMBOL drivers/gpu/drm/drm 0xf2ae854a drm_gem_map_detach +EXPORT_SYMBOL drivers/gpu/drm/drm 0xf31f5cf8 drm_irq_install +EXPORT_SYMBOL drivers/gpu/drm/drm 0xf336f488 drm_i2c_encoder_restore +EXPORT_SYMBOL drivers/gpu/drm/drm 0xf3804ce3 drm_property_blob_get +EXPORT_SYMBOL drivers/gpu/drm/drm 0xf3c081a3 drm_connector_attach_max_bpc_property +EXPORT_SYMBOL drivers/gpu/drm/drm 0xf406e46a drm_get_connector_type_name +EXPORT_SYMBOL drivers/gpu/drm/drm 0xf6a35bc6 drm_client_buffer_vmap +EXPORT_SYMBOL drivers/gpu/drm/drm 0xf6b24817 drm_prime_pages_to_sg +EXPORT_SYMBOL drivers/gpu/drm/drm 0xf7526478 drm_gem_vm_close +EXPORT_SYMBOL drivers/gpu/drm/drm 0xf7de7781 drm_gem_prime_import_dev +EXPORT_SYMBOL drivers/gpu/drm/drm 0xf826786c drm_format_info +EXPORT_SYMBOL drivers/gpu/drm/drm 0xf83b4954 drm_ioctl_permit +EXPORT_SYMBOL drivers/gpu/drm/drm 0xf89dc518 drm_gem_object_init +EXPORT_SYMBOL drivers/gpu/drm/drm 0xf9516509 drm_bridge_chain_enable +EXPORT_SYMBOL drivers/gpu/drm/drm 0xfad31f6c drm_mode_config_reset +EXPORT_SYMBOL drivers/gpu/drm/drm 0xfafcc0ad drm_ioctl +EXPORT_SYMBOL drivers/gpu/drm/drm 0xfbdedbce drm_encoder_init +EXPORT_SYMBOL drivers/gpu/drm/drm 0xfbeacef5 drm_universal_plane_init +EXPORT_SYMBOL drivers/gpu/drm/drm 0xfbfc8f47 drm_mode_object_get +EXPORT_SYMBOL drivers/gpu/drm/drm 0xfc39877c drm_get_format_info +EXPORT_SYMBOL drivers/gpu/drm/drm 0xfd84ae56 drm_gem_dumb_destroy +EXPORT_SYMBOL drivers/gpu/drm/drm 0xfdd5d195 drm_writeback_connector_init +EXPORT_SYMBOL drivers/gpu/drm/drm 0xfed795af drm_mode_debug_printmodeline +EXPORT_SYMBOL drivers/gpu/drm/drm 0xff0e0975 drm_noop +EXPORT_SYMBOL drivers/gpu/drm/drm 0xff8de91d drm_print_bits +EXPORT_SYMBOL drivers/gpu/drm/drm 0xff90a292 drm_mode_copy +EXPORT_SYMBOL drivers/gpu/drm/drm 0xff928f42 drm_property_replace_global_blob +EXPORT_SYMBOL drivers/gpu/drm/drm 0xffa512c0 drm_crtc_from_index +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x01a01a8a drm_fb_swab16 +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x028f03ed drm_fb_xrgb8888_to_rgb565_dstclip +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x033ec9a1 drm_fb_helper_set_suspend_unlocked +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x039456fa drm_dp_mst_put_port_malloc +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x04f40e69 drm_dp_mst_get_edid +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x05e9f789 drm_dp_read_desc +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x066ffd90 drm_helper_mode_fill_fb_struct +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x06c49551 drm_dp_dsc_sink_line_buf_depth +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x0746b17d drm_dp_dual_mode_detect +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x09dee32b drm_atomic_helper_disable_all +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x0a30950b drm_fb_helper_prepare +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x0ebcf078 drm_dp_mst_connector_late_register +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x0ed94109 drm_atomic_helper_update_legacy_modeset_state +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x10d26aea drm_atomic_helper_commit_planes +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x123c2637 drm_atomic_helper_bridge_propagate_bus_fmt +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x134c20d3 drm_fb_helper_cfb_copyarea +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x141e0506 drm_self_refresh_helper_init +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x1459275c drm_simple_display_pipe_init +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x14b47f66 drm_dp_downstream_id +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x150de03f drm_helper_resume_force_mode +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x15766f6e drm_dp_mst_topology_state_funcs +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x16514a20 __drm_atomic_helper_plane_state_reset +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x16e463d0 __drm_atomic_helper_crtc_destroy_state +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x189a94f7 drm_atomic_helper_check_plane_state +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x18ca545c drm_dp_dual_mode_set_tmds_output +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x18d8c434 __drm_atomic_helper_plane_reset +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x18eee575 drm_simple_display_pipe_attach_bridge +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x19496814 drm_kms_helper_poll_enable +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x19599be3 drm_scdc_set_scrambling +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x1ace3df6 drm_dp_remote_aux_init +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x1b101e8b drm_atomic_helper_commit_tail +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x1b320c24 drm_dp_mst_add_affected_dsc_crtcs +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x1b99117b drm_fb_helper_restore_fbdev_mode_unlocked +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x1d7a6cd5 drm_atomic_helper_damage_iter_init +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x1e565a4d drm_atomic_helper_connector_tv_reset +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x20dbdd14 drm_kms_helper_poll_fini +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x217631cf drm_atomic_helper_bridge_reset +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x219e31c2 drm_atomic_helper_page_flip +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x2247d171 drm_atomic_helper_plane_duplicate_state +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x22d1ad62 drm_fb_helper_alloc_fbi +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x24a4b2ea drm_atomic_helper_disable_plane +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x25f7768d devm_drm_panel_bridge_add_typed +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x26815dbc drm_dp_link_rate_to_bw_code +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x277f9ab6 drm_panel_bridge_add_typed +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x2796e467 drm_dp_set_phy_test_pattern +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x284e1727 drm_dp_send_power_updown_phy +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x2b06cb6a drm_fb_helper_sys_imageblit +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x2cfce124 drm_dp_check_act_status +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x2d83c119 drm_atomic_helper_commit_duplicated_state +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x2f2b5f77 drm_atomic_helper_page_flip_target +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x30a0b11b drm_atomic_helper_check_planes +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x30ef754f drm_crtc_init +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x322b9e1f drm_dp_update_payload_part1 +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x33bda51b drm_helper_force_disable_all +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x33cbe0a5 __drm_atomic_helper_connector_destroy_state +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x33d2f371 drm_dp_get_phy_test_pattern +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x35c38a87 drm_fb_helper_sys_fillrect +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x35fa31ad drm_dp_send_real_edid_checksum +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x36368edc drm_atomic_helper_connector_reset +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x37269106 drm_fb_helper_blank +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x38cd271a __drm_atomic_helper_crtc_duplicate_state +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x3a45ad42 drm_dp_atomic_release_vcpi_slots +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x3a8063f3 drm_dp_dsc_sink_supported_input_bpcs +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x3c19f421 __drm_atomic_helper_plane_duplicate_state +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x3da78abb drm_helper_crtc_in_use +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x3e16d5ea drm_fb_helper_sys_read +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x426fcf42 drm_dp_downstream_debug +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x42b91ec6 drm_fb_helper_setcmap +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x43691aad drm_atomic_helper_update_plane +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x43754cf1 drm_atomic_helper_fake_vblank +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x43c229bd drm_dp_mst_atomic_check +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x44df1836 drm_atomic_helper_commit_cleanup_done +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x46f3a0ea drm_kms_helper_poll_disable +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x48b62a57 drm_dp_link_train_channel_eq_delay +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x48e0cf0d drm_atomic_helper_commit_modeset_disables +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x4a661c53 drm_dp_mst_get_port_malloc +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x4b6d80d3 drm_atomic_helper_damage_merged +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x4ba27b2b drm_dp_aux_unregister +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x4d7656b5 drm_dp_mst_hpd_irq +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x4fd97e55 drm_atomic_helper_async_check +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x50ccc4e8 drm_fb_helper_set_par +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x51509c31 drm_fb_helper_initial_config +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x51f9dcc2 drm_atomic_helper_commit +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x5407ae9e drm_dp_get_dual_mode_type_name +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x54cdcc03 drm_scdc_set_high_tmds_clock_ratio +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x56ab45fe drm_dp_cec_set_edid +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x579cfcef drm_atomic_helper_swap_state +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x581fa14a drm_atomic_helper_check_modeset +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x582f248e drm_dp_get_adjust_request_pre_emphasis +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x58936f4c drm_helper_encoder_in_use +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x5898b3fd drm_fb_helper_check_var +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x58d8fcaa drm_dsc_pps_payload_pack +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x59d05af6 drm_atomic_helper_dirtyfb +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x59dc4ec8 drm_fb_memcpy +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x5a155fd9 drm_atomic_helper_check_plane_damage +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x5a4734d1 drm_kms_helper_is_poll_worker +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x5ac3fe0e drm_atomic_helper_wait_for_vblanks +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x5c985c31 drm_atomic_helper_commit_hw_done +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x5d5aa50f drm_atomic_helper_commit_planes_on_crtc +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x5ff2f013 drm_dp_start_crc +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x62ba43df drm_atomic_helper_shutdown +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x640355e9 drm_fb_helper_init +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x648d953b drm_dsc_dp_pps_header_init +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x6615069e drm_dp_dsc_sink_max_slice_count +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x6703a697 drm_kms_helper_poll_init +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x68c9c8cc drm_atomic_helper_commit_modeset_enables +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x6a5f6da0 drm_dp_dpcd_read +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x6a926571 __drm_atomic_helper_plane_destroy_state +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x6b5c2b06 drm_atomic_helper_damage_iter_next +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x6d1ea64e drm_fb_helper_debug_enter +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x712b78c7 drm_dp_mst_deallocate_vcpi +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x72427fd4 drm_dp_aux_register +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x726268c5 drm_primary_helper_destroy +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x72f3b5aa drm_fb_helper_lastclose +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x73011db0 drm_dp_bw_code_to_link_rate +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x74037dda drm_fb_helper_unregister_fbi +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x7674c0e6 drm_dp_atomic_find_vcpi_slots +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x76e6618e drm_atomic_helper_crtc_duplicate_state +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x76e86174 drm_fb_memcpy_dstclip +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x77475fa5 drm_self_refresh_helper_update_avg_times +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x77fa358f drm_atomic_helper_commit_tail_rpm +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x78ff814d drm_dp_mst_detect_port +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x794d0332 drm_atomic_helper_wait_for_flip_done +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x7ad45728 __drm_atomic_helper_connector_state_reset +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x8371f9e3 drm_dp_cec_unset_edid +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x840f4e1f drm_fb_helper_ioctl +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x85e0eeaa drm_fb_helper_pan_display +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x85e67b9c drm_atomic_get_mst_topology_state +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x8800f434 drm_atomic_helper_plane_reset +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x894b1f57 drm_dp_get_adjust_request_post_cursor +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x89ed369f drm_gem_fb_simple_display_pipe_prepare_fb +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x8c1a11d4 drm_scdc_write +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x8c3952d9 drm_atomic_helper_connector_destroy_state +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x8ca2d9e4 drm_dp_calc_pbn_mode +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x8d701329 drm_dp_clock_recovery_ok +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x91d5d912 drm_atomic_helper_wait_for_dependencies +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x92340566 drm_fb_xrgb8888_to_rgb565 +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x92d6455a drm_fb_xrgb8888_to_gray8 +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x963a9099 drm_dp_cec_unregister_connector +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x965fbb53 drm_atomic_helper_setup_commit +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x969a4ca9 drm_fb_helper_sys_write +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x96ccfd74 drm_primary_helper_funcs +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x972475ad drm_fb_helper_set_suspend +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x98908a6c drm_dp_cec_register_connector +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x99be2403 __drm_atomic_helper_connector_duplicate_state +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x9aa6ed41 drm_fb_helper_output_poll_changed +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x9ba6907c drm_atomic_helper_duplicate_state +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x9bca0b6e drm_dp_cec_irq +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x9d40726a drm_panel_bridge_add +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xa0aba11d __drm_atomic_helper_crtc_reset +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xa0ed3f3f drm_atomic_helper_legacy_gamma_set +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xa1fefe6a drm_dp_psr_setup_time +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xa2f5c65b drm_dp_get_edid_quirks +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xa66bbea4 drm_dp_mst_dump_topology +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xa6c64199 drm_dp_mst_topology_mgr_destroy +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xa6ff9496 drm_dp_link_train_clock_recovery_delay +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xa7f204c2 drm_fb_helper_fill_info +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xa92235e8 drm_helper_probe_single_connector_modes +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xa9339e0b __drm_atomic_helper_connector_reset +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xaa5cc5e8 drm_atomic_helper_set_config +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xaab1bcb6 drm_dp_mst_topology_mgr_init +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xab0e7cd4 drm_fb_helper_modinit +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xab561a33 drm_scdc_get_scrambling_status +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xabbf80a7 drm_dp_get_vc_payload_bw +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xaca7ab9f drm_panel_bridge_connector +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xacef8aa5 drm_dp_vsc_sdp_log +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xae027a7e drm_crtc_helper_set_mode +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xafef78d3 drm_dp_update_payload_part2 +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xb15c8adf __drm_atomic_helper_bridge_reset +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xb1c8fa24 drm_dp_mst_topology_mgr_resume +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xb2e27fa0 drm_dp_mst_allocate_vcpi +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xb36c8296 drm_simple_encoder_init +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xb391398a devm_drm_panel_bridge_add +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xb5a0a8dd drm_dp_dual_mode_write +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xb8018b9a drm_self_refresh_helper_alter_state +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xbb2b768f drm_atomic_helper_plane_destroy_state +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xbb87ca69 drm_fb_helper_fini +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xbdc24d7e drm_dp_mst_dsc_aux_for_port +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xbee24fb0 drm_plane_enable_fb_damage_clips +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xbef8dd5c drm_dp_dual_mode_max_tmds_clock +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xbf75ade5 drm_lspcon_set_mode +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xc0daed66 drm_atomic_helper_crtc_destroy_state +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xc0e07f80 drm_atomic_helper_bridge_duplicate_state +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xc2b4fe33 drm_atomic_helper_async_commit +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xc3be4315 drm_fb_helper_deferred_io +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xc41f3de1 drm_gem_fb_create_handle +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xc5852dd6 drm_helper_probe_detect +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xc587e080 drm_dp_stop_crc +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xc5c99a79 drm_dp_get_adjust_request_voltage +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xc717f04a drm_dp_find_vcpi_slots +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xc8923566 drm_dp_aux_init +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xcb3faf6b drm_helper_disable_unused_functions +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xcc6fb578 drm_fb_helper_hotplug_event +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xcd517ad6 drm_atomic_helper_check +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xcd924165 drm_dp_dual_mode_get_tmds_output +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xce370de4 drm_atomic_helper_prepare_planes +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xce57737c drm_crtc_helper_set_config +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xcf51ca39 drm_fb_helper_cfb_imageblit +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xd0d84ab9 __drm_atomic_helper_bridge_duplicate_state +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xd1227b24 drm_atomic_helper_suspend +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xd221cddc drm_helper_hpd_irq_event +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xd35250d1 drm_fb_helper_cfb_fillrect +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xd3c15f8d drm_helper_move_panel_connectors_to_head +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xd5601eff drm_scdc_read +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xd5ee5e8b drm_fb_xrgb8888_to_rgb888_dstclip +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xd814e234 drm_dp_dpcd_write +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xd94bc6d8 drm_self_refresh_helper_cleanup +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xdedeefd1 drm_dp_dual_mode_read +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xe02abfbb drm_dp_downstream_max_bpc +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xe0567fae drm_dp_mst_get_vcpi_slots +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xe0bbc049 drm_fb_helper_debug_leave +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xe0ee9a49 drm_mode_config_helper_resume +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xe1a8fe53 __drm_atomic_helper_private_obj_duplicate_state +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xe21f2f81 drm_dp_mst_connector_early_unregister +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xe387f91b drm_atomic_helper_bridge_destroy_state +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xe5507a9d drm_atomic_helper_disable_planes_on_crtc +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xe621b55b drm_dp_mst_topology_mgr_set_mst +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xe6dda6d2 __drm_atomic_helper_crtc_state_reset +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xe8f9e6b2 drm_dp_mst_reset_vcpi_slots +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xe9a70bd8 drm_mode_config_helper_suspend +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xebf8deb6 drm_dp_dpcd_read_link_status +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xed28e935 drm_fbdev_generic_setup +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xedcf81ce drm_dp_channel_eq_ok +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xf1d84340 drm_kms_helper_hotplug_event +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xf2329e89 drm_dp_downstream_max_clock +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xf34a2169 drm_atomic_helper_crtc_reset +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xf508ddf2 drm_atomic_helper_wait_for_fences +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xf5ddfa85 drm_fb_helper_sys_copyarea +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xf695495d drm_helper_connector_dpms +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xf70d7998 drm_gem_fb_destroy +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xf7b35f11 drm_atomic_helper_connector_duplicate_state +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xf7bd68ff drm_dp_mst_atomic_enable_dsc +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xfa1c6302 drm_atomic_helper_cleanup_planes +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xfbefc94e drm_dp_mst_topology_mgr_suspend +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xfc409464 drm_panel_bridge_remove +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xfe12bcb9 drm_dsc_compute_rc_parameters +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xff4fa417 drm_atomic_helper_resume +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xffc6ae59 drm_lspcon_get_mode +EXPORT_SYMBOL drivers/gpu/drm/drm_mipi_dbi 0x12181f40 mipi_dbi_pipe_update +EXPORT_SYMBOL drivers/gpu/drm/drm_mipi_dbi 0x1cd07ece mipi_dbi_spi_init +EXPORT_SYMBOL drivers/gpu/drm/drm_mipi_dbi 0x3afc20f6 mipi_dbi_command_buf +EXPORT_SYMBOL drivers/gpu/drm/drm_mipi_dbi 0x44418bb6 mipi_dbi_spi_cmd_max_speed +EXPORT_SYMBOL drivers/gpu/drm/drm_mipi_dbi 0x595f7f63 mipi_dbi_dev_init_with_formats +EXPORT_SYMBOL drivers/gpu/drm/drm_mipi_dbi 0x5ecca56c mipi_dbi_poweron_reset +EXPORT_SYMBOL drivers/gpu/drm/drm_mipi_dbi 0x6ec8b329 mipi_dbi_buf_copy +EXPORT_SYMBOL drivers/gpu/drm/drm_mipi_dbi 0x7a7a4c74 mipi_dbi_spi_transfer +EXPORT_SYMBOL drivers/gpu/drm/drm_mipi_dbi 0x7c908505 mipi_dbi_hw_reset +EXPORT_SYMBOL drivers/gpu/drm/drm_mipi_dbi 0x8fd6a976 mipi_dbi_debugfs_init +EXPORT_SYMBOL drivers/gpu/drm/drm_mipi_dbi 0x907031c9 mipi_dbi_poweron_conditional_reset +EXPORT_SYMBOL drivers/gpu/drm/drm_mipi_dbi 0xbec2b5e1 mipi_dbi_command_stackbuf +EXPORT_SYMBOL drivers/gpu/drm/drm_mipi_dbi 0xc07d8e63 mipi_dbi_enable_flush +EXPORT_SYMBOL drivers/gpu/drm/drm_mipi_dbi 0xd34d0d15 mipi_dbi_pipe_disable +EXPORT_SYMBOL drivers/gpu/drm/drm_mipi_dbi 0xd5522899 mipi_dbi_command_read +EXPORT_SYMBOL drivers/gpu/drm/drm_mipi_dbi 0xe81e81b9 mipi_dbi_display_is_on +EXPORT_SYMBOL drivers/gpu/drm/drm_mipi_dbi 0xfe096f35 mipi_dbi_dev_init +EXPORT_SYMBOL drivers/gpu/drm/drm_ttm_helper 0x47ad56d2 drm_gem_ttm_print_info +EXPORT_SYMBOL drivers/gpu/drm/drm_ttm_helper 0xca4b1bb9 drm_gem_ttm_mmap +EXPORT_SYMBOL drivers/gpu/drm/drm_vram_helper 0x0379edc6 drm_gem_vram_plane_helper_cleanup_fb +EXPORT_SYMBOL drivers/gpu/drm/drm_vram_helper 0x037e1849 drm_gem_vram_offset +EXPORT_SYMBOL drivers/gpu/drm/drm_vram_helper 0x0cbacdde drm_gem_vram_simple_display_pipe_cleanup_fb +EXPORT_SYMBOL drivers/gpu/drm/drm_vram_helper 0x1809dd94 drm_gem_vram_put +EXPORT_SYMBOL drivers/gpu/drm/drm_vram_helper 0x254dc174 drm_gem_vram_unpin +EXPORT_SYMBOL drivers/gpu/drm/drm_vram_helper 0x2e5061c0 drm_gem_vram_simple_display_pipe_prepare_fb +EXPORT_SYMBOL drivers/gpu/drm/drm_vram_helper 0x340194cb drm_vram_mm_debugfs_init +EXPORT_SYMBOL drivers/gpu/drm/drm_vram_helper 0x34232348 drm_vram_helper_release_mm +EXPORT_SYMBOL drivers/gpu/drm/drm_vram_helper 0x3ea80723 drm_gem_vram_kmap +EXPORT_SYMBOL drivers/gpu/drm/drm_vram_helper 0x50daf61d drm_gem_vram_driver_dumb_mmap_offset +EXPORT_SYMBOL drivers/gpu/drm/drm_vram_helper 0x6236746d drm_vram_helper_alloc_mm +EXPORT_SYMBOL drivers/gpu/drm/drm_vram_helper 0x67b5302a drm_gem_vram_plane_helper_prepare_fb +EXPORT_SYMBOL drivers/gpu/drm/drm_vram_helper 0x7b4c1e6d drm_gem_vram_kunmap +EXPORT_SYMBOL drivers/gpu/drm/drm_vram_helper 0x8f30cc9d drm_gem_vram_create +EXPORT_SYMBOL drivers/gpu/drm/drm_vram_helper 0x993bf709 drm_gem_vram_fill_create_dumb +EXPORT_SYMBOL drivers/gpu/drm/drm_vram_helper 0x9ea4bc9f drm_gem_vram_vmap +EXPORT_SYMBOL drivers/gpu/drm/drm_vram_helper 0xc6733d4f drm_gem_vram_vunmap +EXPORT_SYMBOL drivers/gpu/drm/drm_vram_helper 0xc7e31f35 drm_gem_vram_pin +EXPORT_SYMBOL drivers/gpu/drm/drm_vram_helper 0xd5a76586 drm_gem_vram_mmap_offset +EXPORT_SYMBOL drivers/gpu/drm/drm_vram_helper 0xf652f0ed drm_vram_helper_mode_valid +EXPORT_SYMBOL drivers/gpu/drm/drm_vram_helper 0xf847f507 drm_gem_vram_driver_dumb_create +EXPORT_SYMBOL drivers/gpu/drm/rockchip/rockchipdrm 0x54e0ba9c rockchip_drm_wait_vact_end +EXPORT_SYMBOL drivers/gpu/drm/scheduler/gpu-sched 0x0ff0128c drm_sched_fini +EXPORT_SYMBOL drivers/gpu/drm/scheduler/gpu-sched 0x14ac2922 drm_sched_job_init +EXPORT_SYMBOL drivers/gpu/drm/scheduler/gpu-sched 0x198bbfb0 drm_sched_entity_destroy +EXPORT_SYMBOL drivers/gpu/drm/scheduler/gpu-sched 0x31ec7ed5 drm_sched_entity_modify_sched +EXPORT_SYMBOL drivers/gpu/drm/scheduler/gpu-sched 0x36ae3202 drm_sched_suspend_timeout +EXPORT_SYMBOL drivers/gpu/drm/scheduler/gpu-sched 0x389958b9 drm_sched_resubmit_jobs +EXPORT_SYMBOL drivers/gpu/drm/scheduler/gpu-sched 0x71d810fb drm_sched_entity_fini +EXPORT_SYMBOL drivers/gpu/drm/scheduler/gpu-sched 0x79935e95 drm_sched_entity_init +EXPORT_SYMBOL drivers/gpu/drm/scheduler/gpu-sched 0x7c3b01f0 drm_sched_stop +EXPORT_SYMBOL drivers/gpu/drm/scheduler/gpu-sched 0x87261da5 drm_sched_pick_best +EXPORT_SYMBOL drivers/gpu/drm/scheduler/gpu-sched 0x89870fdc drm_sched_entity_set_priority +EXPORT_SYMBOL drivers/gpu/drm/scheduler/gpu-sched 0x98eb7432 drm_sched_dependency_optimized +EXPORT_SYMBOL drivers/gpu/drm/scheduler/gpu-sched 0xa28fb761 drm_sched_resume_timeout +EXPORT_SYMBOL drivers/gpu/drm/scheduler/gpu-sched 0xa8df827e drm_sched_entity_flush +EXPORT_SYMBOL drivers/gpu/drm/scheduler/gpu-sched 0xae542ae9 drm_sched_increase_karma +EXPORT_SYMBOL drivers/gpu/drm/scheduler/gpu-sched 0xb733b797 to_drm_sched_fence +EXPORT_SYMBOL drivers/gpu/drm/scheduler/gpu-sched 0xc429c263 drm_sched_start +EXPORT_SYMBOL drivers/gpu/drm/scheduler/gpu-sched 0xcc9974f1 drm_sched_fault +EXPORT_SYMBOL drivers/gpu/drm/scheduler/gpu-sched 0xd1dfc225 drm_sched_entity_push_job +EXPORT_SYMBOL drivers/gpu/drm/scheduler/gpu-sched 0xdc5f1968 drm_sched_init +EXPORT_SYMBOL drivers/gpu/drm/scheduler/gpu-sched 0xe8cf522c drm_sched_job_cleanup +EXPORT_SYMBOL drivers/gpu/drm/sun4i/sun4i-frontend 0x2f59ad3d sun4i_frontend_update_formats +EXPORT_SYMBOL drivers/gpu/drm/sun4i/sun4i-frontend 0x4ac573e9 sun4i_frontend_update_buffer +EXPORT_SYMBOL drivers/gpu/drm/sun4i/sun4i-frontend 0x67a6f1dd sun4i_frontend_update_coord +EXPORT_SYMBOL drivers/gpu/drm/sun4i/sun4i-frontend 0x96413fdb sunxi_bt601_yuv2rgb_coef +EXPORT_SYMBOL drivers/gpu/drm/sun4i/sun4i-frontend 0xa56421f4 sun4i_frontend_enable +EXPORT_SYMBOL drivers/gpu/drm/sun4i/sun4i-frontend 0xa631b179 sun4i_frontend_format_is_supported +EXPORT_SYMBOL drivers/gpu/drm/sun4i/sun4i-frontend 0xacedd0c5 sun4i_frontend_exit +EXPORT_SYMBOL drivers/gpu/drm/sun4i/sun4i-frontend 0xde9ffe01 sun4i_frontend_init +EXPORT_SYMBOL drivers/gpu/drm/sun4i/sun4i-frontend 0xe13164ef sun4i_frontend_of_table +EXPORT_SYMBOL drivers/gpu/drm/sun4i/sun4i-tcon 0x164eeb66 sun4i_tcon_enable_vblank +EXPORT_SYMBOL drivers/gpu/drm/sun4i/sun4i-tcon 0x1cd95c09 sun4i_tcon_mode_set +EXPORT_SYMBOL drivers/gpu/drm/sun4i/sun4i-tcon 0x22634dcc sun4i_lvds_init +EXPORT_SYMBOL drivers/gpu/drm/sun4i/sun4i-tcon 0x6c10c7a7 sun4i_tcon_of_table +EXPORT_SYMBOL drivers/gpu/drm/sun4i/sun4i-tcon 0x920097f9 sun4i_dclk_free +EXPORT_SYMBOL drivers/gpu/drm/sun4i/sun4i-tcon 0xaa9040eb sun4i_dclk_create +EXPORT_SYMBOL drivers/gpu/drm/sun4i/sun4i-tcon 0xe47ddd1c sun4i_rgb_init +EXPORT_SYMBOL drivers/gpu/drm/sun4i/sun8i_tcon_top 0x1aeff3b6 sun8i_tcon_top_de_config +EXPORT_SYMBOL drivers/gpu/drm/sun4i/sun8i_tcon_top 0x350e5dcd sun8i_tcon_top_of_table +EXPORT_SYMBOL drivers/gpu/drm/sun4i/sun8i_tcon_top 0xabfab582 sun8i_tcon_top_set_hdmi_src +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x0661cb76 ttm_pool_populate +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x0d6c63f4 ttm_eu_reserve_buffers +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x0e623435 ttm_bo_move_to_lru_tail +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x0f621d77 ttm_mem_glob +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x11f77cb8 ttm_bo_pipeline_move +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x1c888084 ttm_check_under_lowerlimit +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x23414945 ttm_bo_create +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x246197fa ttm_unmap_and_unpopulate_pages +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x255ae216 ttm_bo_swapout +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x2b2fca31 ttm_bo_move_ttm +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x31dd844e ttm_bo_vm_fault +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x3500146d ttm_bo_glob +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x4b37b7ea ttm_bo_evict_mm +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x51f403b5 ttm_bo_swapout_all +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x59a664ba ttm_populate_and_map_pages +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x59b879b8 ttm_bo_init +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x5e46d4a7 ttm_bo_unlock_delayed_workqueue +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x6052860c ttm_round_pot +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x69b95790 ttm_bo_device_init +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x6a89746f ttm_bo_mem_compat +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x6ba26754 ttm_bo_vm_open +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x6d68798a ttm_bo_clean_mm +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x6e4ea40d ttm_bo_vm_access +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x73769a02 ttm_bo_mem_space +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x770d576a ttm_bo_put +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x78780ab6 ttm_bo_mmap +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x81b453b5 ttm_io_prot +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x857af481 ttm_bo_device_release +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x88178a5d ttm_tt_set_placement_caching +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x8913e431 ttm_tt_fini +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x92588b7b ttm_bo_init_mm +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x9c887542 ttm_tt_init +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xa07fdb2c ttm_bo_bulk_move_lru_tail +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xa1e273c8 ttm_dma_tt_init +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xa1efc6e6 ttm_bo_wait +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xa929067b ttm_bo_vm_close +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xb057cebc ttm_bo_init_reserved +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xb595c4e4 ttm_bo_move_accel_cleanup +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xb6bc400d ttm_eu_backoff_reservation +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xba635de0 ttm_bo_manager_func +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xbb874f77 ttm_bo_eviction_valuable +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xbdcf504b ttm_bo_unmap_virtual +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xbe757a85 ttm_bo_acc_size +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xc0f0bbff ttm_bo_mmap_obj +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xc1d43b86 ttm_bo_vm_reserve +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xce12c18f ttm_pool_unpopulate +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xcfb81529 ttm_bo_lock_delayed_workqueue +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xd2196e4a ttm_eu_fence_buffer_objects +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xd27dec57 ttm_tt_bind +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xd7d3d00e ttm_mem_global_free +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xd8f41e22 ttm_mem_global_alloc +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xdac729e4 ttm_page_alloc_debugfs +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xdc7d0818 ttm_get_kernel_zone_memory_size +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xddfce82c ttm_dma_tt_fini +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xe322d941 ttm_bo_mem_put +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xe80cdc70 ttm_bo_validate +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xe962caff ttm_bo_move_memcpy +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xef7b6228 ttm_bo_dma_acc_size +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xf07d351a ttm_sg_tt_init +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xf4607a28 ttm_bo_vm_fault_reserved +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xf4881ee6 ttm_bo_kunmap +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xf7d7cc07 ttm_bo_kmap +EXPORT_SYMBOL drivers/hid/hid 0x3a897a0b hid_bus_type +EXPORT_SYMBOL drivers/hwmon/hwmon-vid 0x2f9e7f8e vid_which_vrm +EXPORT_SYMBOL drivers/hwmon/hwmon-vid 0x446615bd vid_from_reg +EXPORT_SYMBOL drivers/hwmon/sch56xx-common 0x01568393 sch56xx_read_virtual_reg +EXPORT_SYMBOL drivers/hwmon/sch56xx-common 0x34257f35 sch56xx_watchdog_unregister +EXPORT_SYMBOL drivers/hwmon/sch56xx-common 0x7833c705 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 0x229b0507 i2c_bit_add_numbered_bus +EXPORT_SYMBOL drivers/i2c/algos/i2c-algo-bit 0x946508dc i2c_bit_add_bus +EXPORT_SYMBOL drivers/i2c/algos/i2c-algo-bit 0xc5acaf21 i2c_bit_algo +EXPORT_SYMBOL drivers/i2c/algos/i2c-algo-pca 0x8bb128e8 i2c_pca_add_numbered_bus +EXPORT_SYMBOL drivers/i2c/algos/i2c-algo-pca 0xdaee8b1a i2c_pca_add_bus +EXPORT_SYMBOL drivers/i2c/busses/i2c-amd756 0x7281980a amd756_smbus +EXPORT_SYMBOL drivers/iio/accel/bma400_core 0x5dbe2c5a bma400_remove +EXPORT_SYMBOL drivers/iio/accel/bma400_core 0x5f1cbae4 bma400_probe +EXPORT_SYMBOL drivers/iio/accel/bma400_core 0xdcbef4ca bma400_regmap_config +EXPORT_SYMBOL drivers/iio/accel/kxsd9 0x2590477b kxsd9_dev_pm_ops +EXPORT_SYMBOL drivers/iio/accel/kxsd9 0x53ce3ddf kxsd9_common_remove +EXPORT_SYMBOL drivers/iio/accel/kxsd9 0xb7b67c9d kxsd9_common_probe +EXPORT_SYMBOL drivers/iio/accel/mma9551_core 0x10b8ce4e mma9551_write_config_words +EXPORT_SYMBOL drivers/iio/accel/mma9551_core 0x34adefd0 mma9551_read_version +EXPORT_SYMBOL drivers/iio/accel/mma9551_core 0x3cae0721 mma9551_read_accel_chan +EXPORT_SYMBOL drivers/iio/accel/mma9551_core 0x41ef446c mma9551_read_accel_scale +EXPORT_SYMBOL drivers/iio/accel/mma9551_core 0x4b1a6c14 mma9551_read_config_word +EXPORT_SYMBOL drivers/iio/accel/mma9551_core 0x68314136 mma9551_gpio_config +EXPORT_SYMBOL drivers/iio/accel/mma9551_core 0x6e126480 mma9551_set_power_state +EXPORT_SYMBOL drivers/iio/accel/mma9551_core 0x895c8ce8 mma9551_read_status_words +EXPORT_SYMBOL drivers/iio/accel/mma9551_core 0x8d49f474 mma9551_set_device_state +EXPORT_SYMBOL drivers/iio/accel/mma9551_core 0xa01876e3 mma9551_update_config_bits +EXPORT_SYMBOL drivers/iio/accel/mma9551_core 0xa5cc1ef6 mma9551_write_config_byte +EXPORT_SYMBOL drivers/iio/accel/mma9551_core 0xaefc4f79 mma9551_read_config_words +EXPORT_SYMBOL drivers/iio/accel/mma9551_core 0xb5148e93 mma9551_read_config_byte +EXPORT_SYMBOL drivers/iio/accel/mma9551_core 0xbcd7fe96 mma9551_sleep +EXPORT_SYMBOL drivers/iio/accel/mma9551_core 0xd6b0c357 mma9551_read_status_byte +EXPORT_SYMBOL drivers/iio/accel/mma9551_core 0xd770cef0 mma9551_read_status_word +EXPORT_SYMBOL drivers/iio/accel/mma9551_core 0xe6798d6d mma9551_app_reset +EXPORT_SYMBOL drivers/iio/accel/mma9551_core 0xfac9dc23 mma9551_write_config_word +EXPORT_SYMBOL drivers/iio/accel/st_accel 0x0ee55eab st_accel_common_probe +EXPORT_SYMBOL drivers/iio/accel/st_accel 0xd73df3cd st_accel_common_remove +EXPORT_SYMBOL drivers/iio/accel/st_accel 0xdcd03bb6 st_accel_get_settings +EXPORT_SYMBOL drivers/iio/adc/qcom-vadc-common 0x70e6eca1 qcom_vadc_decimation_from_dt +EXPORT_SYMBOL drivers/iio/adc/qcom-vadc-common 0xcae36995 qcom_vadc_scale +EXPORT_SYMBOL drivers/iio/adc/qcom-vadc-common 0xf253ae31 qcom_adc5_hw_scale +EXPORT_SYMBOL drivers/iio/buffer/industrialio-buffer-dmaengine 0x1ac4e360 iio_dmaengine_buffer_alloc +EXPORT_SYMBOL drivers/iio/buffer/industrialio-triggered-buffer 0x57ac1bae iio_triggered_buffer_cleanup +EXPORT_SYMBOL drivers/iio/buffer/industrialio-triggered-buffer 0xe494f018 iio_triggered_buffer_setup +EXPORT_SYMBOL drivers/iio/buffer/kfifo_buf 0x218f8c72 iio_kfifo_allocate +EXPORT_SYMBOL drivers/iio/buffer/kfifo_buf 0x2c8eb32b iio_kfifo_free +EXPORT_SYMBOL drivers/iio/buffer/kfifo_buf 0xc5cdf49d devm_iio_kfifo_allocate +EXPORT_SYMBOL drivers/iio/chemical/bme680_core 0x516e1888 bme680_regmap_config +EXPORT_SYMBOL drivers/iio/common/hid-sensors/hid-sensor-iio-common 0x2fa01a9f hid_sensor_write_raw_hyst_value +EXPORT_SYMBOL drivers/iio/common/hid-sensors/hid-sensor-iio-common 0x3b012167 hid_sensor_convert_timestamp +EXPORT_SYMBOL drivers/iio/common/hid-sensors/hid-sensor-iio-common 0x4fc3d8ab hid_sensor_read_samp_freq_value +EXPORT_SYMBOL drivers/iio/common/hid-sensors/hid-sensor-iio-common 0x719bd252 hid_sensor_read_raw_hyst_value +EXPORT_SYMBOL drivers/iio/common/hid-sensors/hid-sensor-iio-common 0x7f7621ec hid_sensor_format_scale +EXPORT_SYMBOL drivers/iio/common/hid-sensors/hid-sensor-iio-common 0x8500f179 hid_sensor_write_samp_freq_value +EXPORT_SYMBOL drivers/iio/common/hid-sensors/hid-sensor-iio-common 0xb8d29271 hid_sensor_set_report_latency +EXPORT_SYMBOL drivers/iio/common/hid-sensors/hid-sensor-iio-common 0xbd4282bd hid_sensor_get_report_latency +EXPORT_SYMBOL drivers/iio/common/hid-sensors/hid-sensor-iio-common 0xc1d0cef0 hid_sensor_parse_common_attributes +EXPORT_SYMBOL drivers/iio/common/hid-sensors/hid-sensor-iio-common 0xcbf49da5 hid_sensor_read_poll_value +EXPORT_SYMBOL drivers/iio/common/hid-sensors/hid-sensor-iio-common 0xf372f776 hid_sensor_batch_mode_supported +EXPORT_SYMBOL drivers/iio/common/hid-sensors/hid-sensor-trigger 0x87371b23 hid_sensor_remove_trigger +EXPORT_SYMBOL drivers/iio/common/hid-sensors/hid-sensor-trigger 0x8b9cccae hid_sensor_power_state +EXPORT_SYMBOL drivers/iio/common/hid-sensors/hid-sensor-trigger 0xa2dd52a1 hid_sensor_pm_ops +EXPORT_SYMBOL drivers/iio/common/hid-sensors/hid-sensor-trigger 0xcbcc76b6 hid_sensor_setup_trigger +EXPORT_SYMBOL drivers/iio/common/ms_sensors/ms_sensors_i2c 0x045688dd ms_sensors_read_prom_word +EXPORT_SYMBOL drivers/iio/common/ms_sensors/ms_sensors_i2c 0x04e270ee ms_sensors_write_heater +EXPORT_SYMBOL drivers/iio/common/ms_sensors/ms_sensors_i2c 0x1c17d513 ms_sensors_show_heater +EXPORT_SYMBOL drivers/iio/common/ms_sensors/ms_sensors_i2c 0x25f3a34d ms_sensors_ht_read_temperature +EXPORT_SYMBOL drivers/iio/common/ms_sensors/ms_sensors_i2c 0x2d2f5cd5 ms_sensors_reset +EXPORT_SYMBOL drivers/iio/common/ms_sensors/ms_sensors_i2c 0x308f5d25 ms_sensors_tp_read_prom +EXPORT_SYMBOL drivers/iio/common/ms_sensors/ms_sensors_i2c 0x42b6a050 ms_sensors_convert_and_read +EXPORT_SYMBOL drivers/iio/common/ms_sensors/ms_sensors_i2c 0x596a73f3 ms_sensors_write_resolution +EXPORT_SYMBOL drivers/iio/common/ms_sensors/ms_sensors_i2c 0x8c041c5c ms_sensors_read_serial +EXPORT_SYMBOL drivers/iio/common/ms_sensors/ms_sensors_i2c 0xea9161a4 ms_sensors_show_battery_low +EXPORT_SYMBOL drivers/iio/common/ms_sensors/ms_sensors_i2c 0xf52bdf1b ms_sensors_read_temp_and_pressure +EXPORT_SYMBOL drivers/iio/common/ms_sensors/ms_sensors_i2c 0xff8f2e0f ms_sensors_ht_read_humidity +EXPORT_SYMBOL drivers/iio/common/ssp_sensors/sensorhub 0x60ddd48e ssp_enable_sensor +EXPORT_SYMBOL drivers/iio/common/ssp_sensors/sensorhub 0x6fc7b051 ssp_get_sensor_delay +EXPORT_SYMBOL drivers/iio/common/ssp_sensors/sensorhub 0xb6ab199d ssp_disable_sensor +EXPORT_SYMBOL drivers/iio/common/ssp_sensors/sensorhub 0xddb828b3 ssp_register_consumer +EXPORT_SYMBOL drivers/iio/common/ssp_sensors/sensorhub 0xf0ef9615 ssp_change_delay +EXPORT_SYMBOL drivers/iio/common/ssp_sensors/ssp_iio 0x11621d6c ssp_common_buffer_postdisable +EXPORT_SYMBOL drivers/iio/common/ssp_sensors/ssp_iio 0x5edadddd ssp_common_buffer_postenable +EXPORT_SYMBOL drivers/iio/common/ssp_sensors/ssp_iio 0x8eb68ef1 ssp_common_process_data +EXPORT_SYMBOL drivers/iio/common/st_sensors/st_sensors 0x058768f3 st_sensors_verify_id +EXPORT_SYMBOL drivers/iio/common/st_sensors/st_sensors 0x074d7047 st_sensors_trigger_handler +EXPORT_SYMBOL drivers/iio/common/st_sensors/st_sensors 0x21d198c0 st_sensors_dev_name_probe +EXPORT_SYMBOL drivers/iio/common/st_sensors/st_sensors 0x25f124a3 st_sensors_sysfs_sampling_frequency_avail +EXPORT_SYMBOL drivers/iio/common/st_sensors/st_sensors 0x3cf832bb st_sensors_set_fullscale_by_gain +EXPORT_SYMBOL drivers/iio/common/st_sensors/st_sensors 0x5b265012 st_sensors_set_odr +EXPORT_SYMBOL drivers/iio/common/st_sensors/st_sensors 0x6bc0ec56 st_sensors_set_enable +EXPORT_SYMBOL drivers/iio/common/st_sensors/st_sensors 0x801b85a9 st_sensors_get_settings_index +EXPORT_SYMBOL drivers/iio/common/st_sensors/st_sensors 0x9fb9d8c6 st_sensors_set_dataready_irq +EXPORT_SYMBOL drivers/iio/common/st_sensors/st_sensors 0xa0e44862 st_sensors_read_info_raw +EXPORT_SYMBOL drivers/iio/common/st_sensors/st_sensors 0xacedf654 st_sensors_sysfs_scale_avail +EXPORT_SYMBOL drivers/iio/common/st_sensors/st_sensors 0xc234737f st_sensors_power_disable +EXPORT_SYMBOL drivers/iio/common/st_sensors/st_sensors 0xccb4606e st_sensors_allocate_trigger +EXPORT_SYMBOL drivers/iio/common/st_sensors/st_sensors 0xd81609d4 st_sensors_debugfs_reg_access +EXPORT_SYMBOL drivers/iio/common/st_sensors/st_sensors 0xe33ea20b st_sensors_power_enable +EXPORT_SYMBOL drivers/iio/common/st_sensors/st_sensors 0xed9aa121 st_sensors_init_sensor +EXPORT_SYMBOL drivers/iio/common/st_sensors/st_sensors 0xee9d7dd1 st_sensors_set_axis_enable +EXPORT_SYMBOL drivers/iio/common/st_sensors/st_sensors 0xef4beb8b st_sensors_deallocate_trigger +EXPORT_SYMBOL drivers/iio/common/st_sensors/st_sensors 0xfe252e47 st_sensors_validate_device +EXPORT_SYMBOL drivers/iio/common/st_sensors/st_sensors_i2c 0xece5eba2 st_sensors_i2c_configure +EXPORT_SYMBOL drivers/iio/common/st_sensors/st_sensors_spi 0x1e412ec9 st_sensors_spi_configure +EXPORT_SYMBOL drivers/iio/gyro/mpu3050 0x0f01b41d mpu3050_common_probe +EXPORT_SYMBOL drivers/iio/gyro/mpu3050 0x3e9c3757 mpu3050_common_remove +EXPORT_SYMBOL drivers/iio/gyro/mpu3050 0x425065e3 mpu3050_dev_pm_ops +EXPORT_SYMBOL drivers/iio/gyro/st_gyro 0x8aae96fd st_gyro_common_probe +EXPORT_SYMBOL drivers/iio/gyro/st_gyro 0xbaa5edba st_gyro_common_remove +EXPORT_SYMBOL drivers/iio/gyro/st_gyro 0xc3e3fb80 st_gyro_get_settings +EXPORT_SYMBOL drivers/iio/humidity/hts221 0x0f97a156 hts221_pm_ops +EXPORT_SYMBOL drivers/iio/humidity/hts221 0xaa37c624 hts221_probe +EXPORT_SYMBOL drivers/iio/imu/adis_lib 0x6d32704b adis_debugfs_reg_access +EXPORT_SYMBOL drivers/iio/imu/adis_lib 0xa538be71 adis_enable_irq +EXPORT_SYMBOL drivers/iio/imu/bmi160/bmi160_core 0xca19cfae bmi160_enable_irq +EXPORT_SYMBOL drivers/iio/imu/bmi160/bmi160_core 0xfec2ebe6 bmi160_regmap_config +EXPORT_SYMBOL drivers/iio/imu/fxos8700_core 0xbc9c1eed fxos8700_regmap_config +EXPORT_SYMBOL drivers/iio/imu/st_lsm6dsx/st_lsm6dsx 0x40bd911e st_lsm6dsx_probe +EXPORT_SYMBOL drivers/iio/imu/st_lsm6dsx/st_lsm6dsx 0x4d5a2761 st_lsm6dsx_pm_ops +EXPORT_SYMBOL drivers/iio/industrialio 0x00700714 iio_triggered_buffer_predisable +EXPORT_SYMBOL drivers/iio/industrialio 0x07c7549a iio_triggered_buffer_postenable +EXPORT_SYMBOL drivers/iio/industrialio 0x0aa020c6 iio_read_mount_matrix +EXPORT_SYMBOL drivers/iio/industrialio 0x0df184fd iio_trigger_free +EXPORT_SYMBOL drivers/iio/industrialio 0x1090a4b7 iio_get_time_ns +EXPORT_SYMBOL drivers/iio/industrialio 0x16c1fbee iio_device_alloc +EXPORT_SYMBOL drivers/iio/industrialio 0x182a0ca1 __iio_trigger_register +EXPORT_SYMBOL drivers/iio/industrialio 0x212b3f45 iio_get_time_res +EXPORT_SYMBOL drivers/iio/industrialio 0x22738faa iio_trigger_poll +EXPORT_SYMBOL drivers/iio/industrialio 0x23ee5140 iio_trigger_using_own +EXPORT_SYMBOL drivers/iio/industrialio 0x2d6bcdcb iio_trigger_generic_data_rdy_poll +EXPORT_SYMBOL drivers/iio/industrialio 0x41dbc80e iio_bus_type +EXPORT_SYMBOL drivers/iio/industrialio 0x4bb4470f iio_device_set_clock +EXPORT_SYMBOL drivers/iio/industrialio 0x62aa8aa2 iio_trigger_notify_done +EXPORT_SYMBOL drivers/iio/industrialio 0x665b2d7e iio_buffer_init +EXPORT_SYMBOL drivers/iio/industrialio 0x73003a3a __iio_device_register +EXPORT_SYMBOL drivers/iio/industrialio 0x77fac527 iio_device_free +EXPORT_SYMBOL drivers/iio/industrialio 0x908e1ba3 iio_trigger_alloc +EXPORT_SYMBOL drivers/iio/industrialio 0x965a4461 iio_trigger_set_immutable +EXPORT_SYMBOL drivers/iio/industrialio 0x993aea8d iio_push_event +EXPORT_SYMBOL drivers/iio/industrialio 0x9bad9232 iio_trigger_poll_chained +EXPORT_SYMBOL drivers/iio/industrialio 0xb7265438 iio_device_unregister +EXPORT_SYMBOL drivers/iio/industrialio 0xd69b93f5 iio_trigger_validate_own_device +EXPORT_SYMBOL drivers/iio/industrialio 0xdf76bbeb iio_pollfunc_store_time +EXPORT_SYMBOL drivers/iio/industrialio 0xe1c19ef8 iio_read_const_attr +EXPORT_SYMBOL drivers/iio/industrialio 0xfdf8ddda iio_trigger_unregister +EXPORT_SYMBOL drivers/iio/industrialio-configfs 0xcd1cb3ca iio_configfs_subsys +EXPORT_SYMBOL drivers/iio/industrialio-sw-device 0x124b1fc8 iio_sw_device_destroy +EXPORT_SYMBOL drivers/iio/industrialio-sw-device 0x55bea01e iio_register_sw_device_type +EXPORT_SYMBOL drivers/iio/industrialio-sw-device 0x7f3bed3d iio_sw_device_create +EXPORT_SYMBOL drivers/iio/industrialio-sw-device 0x9c439f25 iio_unregister_sw_device_type +EXPORT_SYMBOL drivers/iio/industrialio-sw-trigger 0x4a0ad44a iio_sw_trigger_destroy +EXPORT_SYMBOL drivers/iio/industrialio-sw-trigger 0x9ef4bca3 iio_unregister_sw_trigger_type +EXPORT_SYMBOL drivers/iio/industrialio-sw-trigger 0xb1c71280 iio_sw_trigger_create +EXPORT_SYMBOL drivers/iio/industrialio-sw-trigger 0xee271500 iio_register_sw_trigger_type +EXPORT_SYMBOL drivers/iio/industrialio-triggered-event 0x62ed42ca iio_triggered_event_cleanup +EXPORT_SYMBOL drivers/iio/industrialio-triggered-event 0xb22e8993 iio_triggered_event_setup +EXPORT_SYMBOL drivers/iio/light/st_uvis25_core 0x1f8dacf1 st_uvis25_pm_ops +EXPORT_SYMBOL drivers/iio/light/st_uvis25_core 0xf9f7aa3b st_uvis25_probe +EXPORT_SYMBOL drivers/iio/magnetometer/bmc150_magn 0x143b4930 bmc150_magn_remove +EXPORT_SYMBOL drivers/iio/magnetometer/bmc150_magn 0x57ecd3c9 bmc150_magn_probe +EXPORT_SYMBOL drivers/iio/magnetometer/bmc150_magn 0x977080eb bmc150_magn_regmap_config +EXPORT_SYMBOL drivers/iio/magnetometer/bmc150_magn 0xef0d80c8 bmc150_magn_pm_ops +EXPORT_SYMBOL drivers/iio/magnetometer/hmc5843_core 0x7e871372 hmc5843_common_suspend +EXPORT_SYMBOL drivers/iio/magnetometer/hmc5843_core 0xa0159382 hmc5843_common_probe +EXPORT_SYMBOL drivers/iio/magnetometer/hmc5843_core 0xb2fa805b hmc5843_common_remove +EXPORT_SYMBOL drivers/iio/magnetometer/hmc5843_core 0xd93dbcf5 hmc5843_common_resume +EXPORT_SYMBOL drivers/iio/magnetometer/st_magn 0x52173021 st_magn_get_settings +EXPORT_SYMBOL drivers/iio/magnetometer/st_magn 0x58e2f3e3 st_magn_common_remove +EXPORT_SYMBOL drivers/iio/magnetometer/st_magn 0x75cadb34 st_magn_common_probe +EXPORT_SYMBOL drivers/iio/pressure/bmp280 0x11cfb6d7 bmp180_regmap_config +EXPORT_SYMBOL drivers/iio/pressure/bmp280 0x17ddd78f bmp280_dev_pm_ops +EXPORT_SYMBOL drivers/iio/pressure/bmp280 0x452f9c78 bmp280_common_probe +EXPORT_SYMBOL drivers/iio/pressure/bmp280 0xfb496bb5 bmp280_regmap_config +EXPORT_SYMBOL drivers/iio/pressure/ms5611_core 0x7ef3e72e ms5611_remove +EXPORT_SYMBOL drivers/iio/pressure/ms5611_core 0xe251ea15 ms5611_probe +EXPORT_SYMBOL drivers/iio/pressure/st_pressure 0xccb0518b st_press_common_probe +EXPORT_SYMBOL drivers/iio/pressure/st_pressure 0xdab411f8 st_press_get_settings +EXPORT_SYMBOL drivers/iio/pressure/st_pressure 0xec91860a st_press_common_remove +EXPORT_SYMBOL drivers/infiniband/core/ib_cm 0x095c046f ib_cm_listen +EXPORT_SYMBOL drivers/infiniband/core/ib_cm 0x29a29f27 ib_send_cm_drep +EXPORT_SYMBOL drivers/infiniband/core/ib_cm 0x38408af5 ib_send_cm_rep +EXPORT_SYMBOL drivers/infiniband/core/ib_cm 0x64a5bcaf ib_create_cm_id +EXPORT_SYMBOL drivers/infiniband/core/ib_cm 0x69824a14 ibcm_reject_msg +EXPORT_SYMBOL drivers/infiniband/core/ib_cm 0x794c774c ib_send_cm_mra +EXPORT_SYMBOL drivers/infiniband/core/ib_cm 0x84345e3d ib_destroy_cm_id +EXPORT_SYMBOL drivers/infiniband/core/ib_cm 0x87d11f3d ib_send_cm_sidr_rep +EXPORT_SYMBOL drivers/infiniband/core/ib_cm 0x8d82e0da ib_cm_init_qp_attr +EXPORT_SYMBOL drivers/infiniband/core/ib_cm 0x98d99403 ib_send_cm_req +EXPORT_SYMBOL drivers/infiniband/core/ib_cm 0xa0392ac2 ib_send_cm_dreq +EXPORT_SYMBOL drivers/infiniband/core/ib_cm 0xb9fc3a1a ib_cm_insert_listen +EXPORT_SYMBOL drivers/infiniband/core/ib_cm 0xc554d0b7 cm_class +EXPORT_SYMBOL drivers/infiniband/core/ib_cm 0xc802fe0f ib_send_cm_rtu +EXPORT_SYMBOL drivers/infiniband/core/ib_cm 0xc846e6ae ib_send_cm_sidr_req +EXPORT_SYMBOL drivers/infiniband/core/ib_cm 0xe1594106 ib_send_cm_rej +EXPORT_SYMBOL drivers/infiniband/core/ib_cm 0xf2a381f6 ib_cm_notify +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x014a1284 rdma_rw_ctx_destroy_signature +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x033d7e9c ib_advise_mr +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x0443bed8 ib_device_get_by_netdev +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x05649f30 rdma_replace_ah_attr +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x09fb4448 ib_process_cq_direct +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x0ac4ff60 rdma_user_mmap_entry_get +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x0b8ac53c ib_cq_pool_get +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x0c7d14d5 rdma_restrack_count +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x0c86f5cb ib_sa_register_client +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x0c90c3c0 rdma_nl_put_driver_u32_hex +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x0d6ce573 ib_query_srq +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x0fd24b90 ib_register_client +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x10b7d94f ib_close_qp +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x11f043f0 ib_destroy_cq_user +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x135cfd66 ib_sa_get_mcmember_rec +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x1410841b __ib_alloc_cq_any +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x184621a4 ib_get_rdma_header_version +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x1b037462 __rdma_block_iter_start +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x1b1f5d29 ib_sa_join_multicast +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x1c8f23ae ibdev_printk +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x1db54936 ib_create_qp_security +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x1de4863e rdma_nl_put_driver_u64_hex +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x1fec5b80 ib_init_ah_attr_from_path +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x22db7d4c rdma_user_mmap_io +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x22f3cf93 ib_pack +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x23466554 ib_destroy_qp_user +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x23b20d05 ib_sg_to_pages +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x253ba69a ib_create_srq_user +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x25c05986 ib_register_device +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x28b5af53 ibnl_put_msg +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x2a91bb33 ib_cache_gid_type_str +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x2b0ded03 rdma_port_get_link_layer +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x2e3490b3 ib_get_vf_config +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x2f3ec1a5 rdma_restrack_put +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x2fa63232 ib_sa_guid_info_rec_query +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x305e5701 rdma_addr_size_kss +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x311b6052 ib_map_mr_sg_pi +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x314a1743 rdma_link_register +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x318cf005 ib_set_vf_link_state +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x3258fa0c rdma_query_gid +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x366d4ad7 ib_unregister_device_and_put +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x37602a96 ib_dealloc_device +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x37a11c04 rdma_user_mmap_entry_insert_range +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x39cddb03 ib_get_vf_guid +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x3c801f99 ib_modify_srq +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x3cbc85a0 ib_rdmacg_try_charge +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x3cf49e84 rdma_init_netdev +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x3d8c45a1 ibdev_info +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x3f6aa675 rdma_rw_ctx_init +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x3fc2387c ib_ud_header_unpack +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x418a2694 ib_set_client_data +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x41c2eb0c rdma_get_gid_attr +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x42cd17c7 ib_unregister_device_queued +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 0x443455c6 rdma_user_mmap_entry_insert +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x44f5d070 rdma_create_ah +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x45fb8985 rdma_nl_chk_listeners +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x469ba954 rdma_rw_ctx_post +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x47d3dac2 ib_get_vf_stats +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x47fe57e4 rdma_nl_stat_hwcounter_entry +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x49e86a0e ib_get_gids_from_rdma_hdr +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x4c2a7101 rdma_rw_ctx_signature_init +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x4c8f3437 ib_dealloc_xrcd +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x4e008f3d ibdev_err +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 0x510a39dd rdma_umap_priv_init +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x516dede2 ib_detach_mcast +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x530ffd55 rdma_move_ah_attr +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x53f492df rdma_move_grh_sgid_attr +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x54e327c1 ib_drain_qp +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x55d096c4 ib_device_put +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x57b269b8 ib_dealloc_pd_user +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x5aa50c5e ib_mad_kernel_rmpp_agent +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x5cdb6df7 rdma_roce_rescan_device +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x5cde9f57 ib_destroy_srq_user +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x5ea4e2b0 ib_post_send_mad +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x613b1e2e ib_is_mad_class_rmpp +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x614a264a ib_rdmacg_uncharge +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x614d78f6 ib_port_register_module_stat +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x61cce8e9 rdma_find_gid_by_port +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x61d24c52 ib_rate_to_mbps +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x624bd322 rdma_query_ah +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x6289f614 ib_modify_wq +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x6323bda5 ib_get_rmpp_segment +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x63f7d40b ib_unregister_event_handler +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x658c6476 rdma_find_gid +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x6615b818 ib_query_pkey +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x69cc1493 ib_get_cached_pkey +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x6a1caf52 rdma_nl_put_driver_u64 +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x6b958320 ib_ud_ip4_csum +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x6e6b6804 rdma_restrack_del +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x6eef9d48 ibdev_notice +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x6f3614b6 rdma_is_zero_gid +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x7029594e ib_modify_device +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x7121ec16 rdma_read_gid_hw_context +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x71cb25fc rdma_dev_access_netns +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x71f51917 ib_modify_qp_with_udata +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x727a411f rdma_resolve_ip +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x75202643 rdma_create_user_ah +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x75a729a0 rdma_nl_unregister +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x787ccc4c ib_get_mad_data_offset +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x79621ff1 ib_get_cached_subnet_prefix +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x7a6c397d rdma_rw_ctx_destroy +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x7b56b034 ib_unregister_driver +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x7c1c313e ib_sa_sendonly_fullmem_support +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x7d02ecd9 rdma_read_gid_attr_ndev_rcu +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x7e33e1fa ib_attach_mcast +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x7ec55376 ib_find_exact_cached_pkey +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x7f2a1f68 ib_find_gid +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x7f790400 rdma_copy_src_l2_addr +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x8092b96f ib_find_pkey +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x837910ad ib_init_ah_attr_from_wc +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x842ccfc8 ib_open_qp +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x8560fbdd ib_register_mad_agent +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x86b99d4f rdma_modify_ah +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x86cef180 rdma_addr_size +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x878ca9fe ib_modify_mad +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x87f4883d rdma_destroy_ah_attr +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x8ccfeaef ib_alloc_mr_integrity +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x8e7528da __rdma_block_iter_next +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x8ff992ca ib_device_set_netdev +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x90df9c46 ib_create_qp +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x90e807c7 ib_cache_gid_parse_type_str +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x927f1559 rdma_restrack_set_task +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x94471512 rdma_translate_ip +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x94bd5521 ib_modify_qp +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x95f462b9 rdma_set_cq_moderation +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x96c4ceb3 rdma_addr_cancel +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x99404071 ib_mr_pool_destroy +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x99886131 ib_alloc_mr_user +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x9c515aac ibdev_alert +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x9e63f982 ib_modify_port +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x9f38afd9 rdma_destroy_ah_user +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xa2697a03 ib_create_ah_from_wc +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xa28199a2 rdma_nl_unicast +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xa2d7702e ib_sa_path_rec_get +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xa432baf6 ib_unpack +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xa6e77c6c ib_get_device_fw_str +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xaa5b698f rdma_restrack_uadd +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xaab82c66 ibdev_crit +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xab2a5ceb ib_query_port +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xab6ae3d2 __ib_alloc_cq +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xae956dce ib_rate_to_mult +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xafda3953 rdma_restrack_get_byid +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xb06ec291 rdma_link_unregister +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xb36e4148 ib_sa_pack_path +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xb51ad964 __ib_alloc_xrcd +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xb68ebf71 rdma_user_mmap_entry_put +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xb7852a05 ib_ud_header_init +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xb7af5e4d ib_query_qp +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xb898ae2a ib_mr_pool_put +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xb93776f2 rdma_nl_put_driver_string +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xb945e8d0 ib_check_mr_status +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xb9c1d22a rdma_restrack_get +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xba01297f ib_dispatch_event +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xba1e6a2e rdma_nl_unicast_wait +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xba8276c9 rdma_read_gid_l2_fields +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xbd689bb9 __ib_create_cq +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xbddb41f2 ib_dereg_mr_user +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xbe5e0be2 ib_free_recv_mad +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xbf6afc88 ib_mr_pool_get +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xc20755ab ib_set_vf_guid +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xc35649ca rdma_nl_put_driver_u32 +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xc37597ad roce_gid_type_mask_support +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xc4ec312c ib_reg_user_mr +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xc504c711 ib_resize_cq +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xc5b25279 ibdev_emerg +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xc714a459 rdma_nl_multicast +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xc7408860 ib_find_cached_pkey +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xc7bcea57 rdma_hold_gid_attr +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xc8379595 _ib_alloc_device +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xc9a79da1 rdma_alloc_netdev +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xca3997e2 ib_device_get_by_name +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xcb445ecf ib_init_ah_from_mcmember +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xce598679 ib_drain_sq +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xd1e644a7 ib_destroy_rwq_ind_table +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xd2377720 ib_port_unregister_module_stat +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xd43882c2 rdma_user_mmap_entry_get_pgoff +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xd6089d48 __ib_alloc_pd +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xd6636ca6 rdma_addr_size_in6 +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xd6e65d77 ib_modify_qp_is_ok +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xd9449a11 ib_create_wq +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xd9c23e6f ib_register_event_handler +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xda0d50ec ib_sa_cancel_query +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xdb63036f ib_mr_pool_init +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xde4ae239 ib_set_device_ops +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xdf0e1b1d ibnl_put_attr +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xdf47896f rdma_rw_ctx_wrs +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xdf750b27 rdma_restrack_kadd +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xe044cf77 ib_free_cq +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xe38b4de0 ib_free_send_mad +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xe4f7df20 ib_create_rwq_ind_table +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xe56ff2b1 ib_cq_pool_put +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xe5840ec6 ib_wc_status_msg +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xe5a78c1e ib_sa_unpack_path +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xe7b52e5f mult_to_ib_rate +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xe989be16 ib_get_cached_port_state +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xe9e799fc ib_ud_header_pack +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xec299096 ib_cancel_mad +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xec797f99 rdma_rw_mr_factor +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xed552532 rdma_copy_ah_attr +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xeec42cf4 ib_map_mr_sg +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xefd9b2ab rdma_nl_register +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xf2b91937 ib_drain_rq +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xf39f0016 ib_create_send_mad +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xf4380ab1 ib_sa_service_rec_query +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xf47283fe ib_get_eth_speed +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xf528e296 ib_get_cached_lmc +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xf564abcb rdma_user_mmap_entry_remove +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xf5dedb30 rdma_node_get_transport +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xf602923c rdma_put_gid_attr +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xf6ed3334 ib_event_msg +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xfb0ff343 ib_unregister_device +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xfc6d1ef7 ib_unregister_client +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xfd8a9d60 ibdev_warn +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xfdb3393c ib_destroy_wq +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xfed036d4 ib_get_net_dev_by_params +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xfeef470b ib_unregister_mad_agent +EXPORT_SYMBOL drivers/infiniband/core/ib_uverbs 0x0897536e ib_umem_odp_get +EXPORT_SYMBOL drivers/infiniband/core/ib_uverbs 0x0c388dd7 ib_umem_release +EXPORT_SYMBOL drivers/infiniband/core/ib_uverbs 0x11a58369 ib_umem_get +EXPORT_SYMBOL drivers/infiniband/core/ib_uverbs 0x1b3c1523 ib_uverbs_get_ucontext_file +EXPORT_SYMBOL drivers/infiniband/core/ib_uverbs 0x1b54bd5d ib_copy_path_rec_from_user +EXPORT_SYMBOL drivers/infiniband/core/ib_uverbs 0x2077d191 uverbs_destroy_def_handler +EXPORT_SYMBOL drivers/infiniband/core/ib_uverbs 0x2a53b5df flow_resources_add +EXPORT_SYMBOL drivers/infiniband/core/ib_uverbs 0x373d9cc8 ib_umem_odp_alloc_child +EXPORT_SYMBOL drivers/infiniband/core/ib_uverbs 0x45835ead ib_umem_page_count +EXPORT_SYMBOL drivers/infiniband/core/ib_uverbs 0x4b1de46f uverbs_finalize_uobj_create +EXPORT_SYMBOL drivers/infiniband/core/ib_uverbs 0x4d11e4e0 uverbs_uobject_put +EXPORT_SYMBOL drivers/infiniband/core/ib_uverbs 0x58cbeb42 _uverbs_get_const +EXPORT_SYMBOL drivers/infiniband/core/ib_uverbs 0x5e06c2e9 uverbs_fd_class +EXPORT_SYMBOL drivers/infiniband/core/ib_uverbs 0x5e172f2e ib_umem_find_best_pgsz +EXPORT_SYMBOL drivers/infiniband/core/ib_uverbs 0x63057f4b ib_copy_path_rec_to_user +EXPORT_SYMBOL drivers/infiniband/core/ib_uverbs 0x6a3a6ab7 uverbs_get_flags64 +EXPORT_SYMBOL drivers/infiniband/core/ib_uverbs 0x742de091 ib_umem_odp_alloc_implicit +EXPORT_SYMBOL drivers/infiniband/core/ib_uverbs 0x7495d45b uverbs_uobject_fd_release +EXPORT_SYMBOL drivers/infiniband/core/ib_uverbs 0x7c7c2b08 ib_umem_odp_unmap_dma_pages +EXPORT_SYMBOL drivers/infiniband/core/ib_uverbs 0x82f72d08 ib_copy_ah_attr_to_user +EXPORT_SYMBOL drivers/infiniband/core/ib_uverbs 0x9d192a86 uverbs_copy_to +EXPORT_SYMBOL drivers/infiniband/core/ib_uverbs 0xa518f060 ib_umem_odp_map_dma_pages +EXPORT_SYMBOL drivers/infiniband/core/ib_uverbs 0xae1f9790 uverbs_idr_class +EXPORT_SYMBOL drivers/infiniband/core/ib_uverbs 0xae4953cc flow_resources_alloc +EXPORT_SYMBOL drivers/infiniband/core/ib_uverbs 0xb64600b6 ib_copy_qp_attr_to_user +EXPORT_SYMBOL drivers/infiniband/core/ib_uverbs 0xb6b5832f _uverbs_alloc +EXPORT_SYMBOL drivers/infiniband/core/ib_uverbs 0xd0ec64f1 ib_uverbs_flow_resources_free +EXPORT_SYMBOL drivers/infiniband/core/ib_uverbs 0xdd0bdae1 ib_umem_odp_release +EXPORT_SYMBOL drivers/infiniband/core/ib_uverbs 0xe5d9fcdc ib_umem_copy_from +EXPORT_SYMBOL drivers/infiniband/core/ib_uverbs 0xfc0fba87 uverbs_get_flags32 +EXPORT_SYMBOL drivers/infiniband/core/iw_cm 0x0094c951 iw_cm_init_qp_attr +EXPORT_SYMBOL drivers/infiniband/core/iw_cm 0x07da8ee7 iw_cm_reject +EXPORT_SYMBOL drivers/infiniband/core/iw_cm 0x14d6ae6d iw_create_cm_id +EXPORT_SYMBOL drivers/infiniband/core/iw_cm 0x1855873f iw_cm_disconnect +EXPORT_SYMBOL drivers/infiniband/core/iw_cm 0x57cc4d45 iw_cm_accept +EXPORT_SYMBOL drivers/infiniband/core/iw_cm 0xc6e5220b iw_cm_connect +EXPORT_SYMBOL drivers/infiniband/core/iw_cm 0xd14f449a iw_destroy_cm_id +EXPORT_SYMBOL drivers/infiniband/core/iw_cm 0xf3df871f iwcm_reject_msg +EXPORT_SYMBOL drivers/infiniband/core/iw_cm 0xf9848567 iw_cm_listen +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0x15f52dd6 rdma_create_qp +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0x16422c98 rdma_notify +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0x20f5216e rdma_join_multicast +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0x22e9f64b __rdma_create_id +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0x24ce579d rdma_iw_cm_id +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0x2567d3cd rdma_set_afonly +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0x31d75a23 rdma_init_qp_attr +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0x33f28c67 rdma_resolve_route +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0x3487d84e rdma_resolve_addr +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0x3b1b978e rdma_destroy_id +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0x4ee07d52 rdma_connect +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0x59bb149b rdma_res_to_id +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0x60c5534e rdma_destroy_qp +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0x61aee1b8 rdma_reject_msg +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0x6f103146 rdma_leave_multicast +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0x7d5cca6b rdma_reject +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0x81bd8244 rdma_set_ack_timeout +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0x907df803 rdma_event_msg +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0x9caedb3d rdma_read_gids +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0xabad9fed rdma_consumer_reject_data +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0xc01ce69c rdma_listen +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0xc7866bcf __rdma_accept_ece +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0xc84e42bd rdma_set_service_type +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0xd4b7f0ea rdma_disconnect +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0xd5f01b1f rdma_set_reuseaddr +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0xd878baf2 __rdma_accept +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0xdbea2064 rdma_bind_addr +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0xe704e982 rdma_set_ib_path +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0xf9891f16 rdma_get_service_id +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0xfc7f4f6f rdma_connect_ece +EXPORT_SYMBOL drivers/infiniband/ulp/rtrs/rtrs-client 0x1d2066f6 rtrs_clt_put_permit +EXPORT_SYMBOL drivers/infiniband/ulp/rtrs/rtrs-client 0x33e9a926 rtrs_clt_request +EXPORT_SYMBOL drivers/infiniband/ulp/rtrs/rtrs-client 0x501f598d rtrs_permit_to_pdu +EXPORT_SYMBOL drivers/infiniband/ulp/rtrs/rtrs-client 0x7350feca rtrs_clt_close +EXPORT_SYMBOL drivers/infiniband/ulp/rtrs/rtrs-client 0xa1c0195c rtrs_clt_open +EXPORT_SYMBOL drivers/infiniband/ulp/rtrs/rtrs-client 0xc74f80e8 rtrs_clt_get_permit +EXPORT_SYMBOL drivers/infiniband/ulp/rtrs/rtrs-client 0xf4357c10 rtrs_clt_query +EXPORT_SYMBOL drivers/infiniband/ulp/rtrs/rtrs-core 0x4ac28b42 rtrs_ib_dev_find_or_add +EXPORT_SYMBOL drivers/infiniband/ulp/rtrs/rtrs-core 0x5b01e41d sockaddr_to_str +EXPORT_SYMBOL drivers/infiniband/ulp/rtrs/rtrs-core 0x6fbeb522 rtrs_rdma_dev_pd_init +EXPORT_SYMBOL drivers/infiniband/ulp/rtrs/rtrs-core 0x887302f3 rtrs_addr_to_sockaddr +EXPORT_SYMBOL drivers/infiniband/ulp/rtrs/rtrs-core 0x93a04641 rtrs_ib_dev_put +EXPORT_SYMBOL drivers/infiniband/ulp/rtrs/rtrs-core 0xff1811fb rtrs_rdma_dev_pd_deinit +EXPORT_SYMBOL drivers/infiniband/ulp/rtrs/rtrs-server 0x5d07af02 rtrs_srv_open +EXPORT_SYMBOL drivers/infiniband/ulp/rtrs/rtrs-server 0x74099224 rtrs_srv_set_sess_priv +EXPORT_SYMBOL drivers/infiniband/ulp/rtrs/rtrs-server 0x8fd7ff0a rtrs_srv_close +EXPORT_SYMBOL drivers/infiniband/ulp/rtrs/rtrs-server 0xa671e231 rtrs_srv_resp_rdma +EXPORT_SYMBOL drivers/infiniband/ulp/rtrs/rtrs-server 0xdab7d061 rtrs_srv_get_sess_name +EXPORT_SYMBOL drivers/infiniband/ulp/rtrs/rtrs-server 0xec3d131f rtrs_srv_get_queue_depth +EXPORT_SYMBOL drivers/input/gameport/gameport 0x1148f95f gameport_unregister_port +EXPORT_SYMBOL drivers/input/gameport/gameport 0x187c8d94 gameport_close +EXPORT_SYMBOL drivers/input/gameport/gameport 0x5ea6fdc1 gameport_set_phys +EXPORT_SYMBOL drivers/input/gameport/gameport 0x67f4c5ce gameport_open +EXPORT_SYMBOL drivers/input/gameport/gameport 0x80830003 gameport_unregister_driver +EXPORT_SYMBOL drivers/input/gameport/gameport 0xa5963f03 __gameport_register_driver +EXPORT_SYMBOL drivers/input/gameport/gameport 0xb2337de3 __gameport_register_port +EXPORT_SYMBOL drivers/input/gameport/gameport 0xb96ede26 gameport_stop_polling +EXPORT_SYMBOL drivers/input/gameport/gameport 0xfd265ce5 gameport_start_polling +EXPORT_SYMBOL drivers/input/input-polldev 0x46e1c27f input_register_polled_device +EXPORT_SYMBOL drivers/input/input-polldev 0x938ae098 input_allocate_polled_device +EXPORT_SYMBOL drivers/input/input-polldev 0xad45be3c input_unregister_polled_device +EXPORT_SYMBOL drivers/input/input-polldev 0xc43f0a03 devm_input_allocate_polled_device +EXPORT_SYMBOL drivers/input/input-polldev 0xdbe3066f input_free_polled_device +EXPORT_SYMBOL drivers/input/joystick/iforce/iforce 0x5025c468 iforce_send_packet +EXPORT_SYMBOL drivers/input/joystick/iforce/iforce 0x57cdc58f iforce_init_device +EXPORT_SYMBOL drivers/input/joystick/iforce/iforce 0xeaef1c8d iforce_process_packet +EXPORT_SYMBOL drivers/input/matrix-keymap 0xeb273648 matrix_keypad_build_keymap +EXPORT_SYMBOL drivers/input/misc/ad714x 0x16ae0f93 ad714x_probe +EXPORT_SYMBOL drivers/input/misc/ad714x 0x199fcb76 ad714x_enable +EXPORT_SYMBOL drivers/input/misc/ad714x 0x95a0c7ab ad714x_disable +EXPORT_SYMBOL drivers/input/misc/cma3000_d0x 0x2d1f3534 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 0xb7f53eb2 rmi_unregister_transport_device +EXPORT_SYMBOL drivers/input/sparse-keymap 0x149aae15 sparse_keymap_entry_from_keycode +EXPORT_SYMBOL drivers/input/sparse-keymap 0x6a366064 sparse_keymap_report_entry +EXPORT_SYMBOL drivers/input/sparse-keymap 0x7b29940d sparse_keymap_setup +EXPORT_SYMBOL drivers/input/sparse-keymap 0xac158790 sparse_keymap_report_event +EXPORT_SYMBOL drivers/input/sparse-keymap 0xff314bcd sparse_keymap_entry_from_scancode +EXPORT_SYMBOL drivers/input/touchscreen/ad7879 0x821dabc7 ad7879_probe +EXPORT_SYMBOL drivers/input/touchscreen/ad7879 0x95e6a38d ad7879_pm_ops +EXPORT_SYMBOL drivers/isdn/capi/kernelcapi 0x0fb7ade4 detach_capi_ctr +EXPORT_SYMBOL drivers/isdn/capi/kernelcapi 0x324cbde8 capi_ctr_handle_message +EXPORT_SYMBOL drivers/isdn/capi/kernelcapi 0x614f357f attach_capi_ctr +EXPORT_SYMBOL drivers/isdn/capi/kernelcapi 0xbea9640e capi_ctr_ready +EXPORT_SYMBOL drivers/isdn/capi/kernelcapi 0xf7664374 capi_ctr_down +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 0x1813e8cb mISDNisac_irq +EXPORT_SYMBOL drivers/isdn/hardware/mISDN/mISDNipac 0x34ad21aa mISDNipac_init +EXPORT_SYMBOL drivers/isdn/hardware/mISDN/mISDNipac 0xa27b003a mISDNisac_init +EXPORT_SYMBOL drivers/isdn/hardware/mISDN/mISDNipac 0xe6e2a944 mISDNipac_irq +EXPORT_SYMBOL drivers/isdn/hardware/mISDN/mISDNisar 0x26d8ba5e mISDNisar_irq +EXPORT_SYMBOL drivers/isdn/hardware/mISDN/mISDNisar 0x525a9088 mISDNisar_init +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0x03a68066 mISDN_FsmRestartTimer +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0x0fd10261 mISDN_freedchannel +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0x2348cc3c mISDN_FsmFree +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0x2385eacf queue_ch_frame +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0x26236de8 mISDN_clock_update +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 0x329127cc recv_Dchannel +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0x334ad91b recv_Bchannel_skb +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0x3a98f317 mISDNDevName4ch +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0x50c2230c mISDN_FsmChangeState +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0x57e50fec recv_Dchannel_skb +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0x588886a6 l1_event +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0x6047df40 mISDN_FsmInitTimer +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0x6b5b1f32 mISDN_unregister_device +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0x743c8fcf dchannel_senddata +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0x7d1c6b5d recv_Echannel +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0x7d9fc7c3 mISDN_ctrl_bchannel +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0x8986d493 create_l1 +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0x9b745320 get_next_dframe +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0x9c928457 mISDN_FsmNew +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0x9fab61d1 mISDN_unregister_Bprotocol +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0xc3401729 mISDN_register_clock +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0xc8c470d0 recv_Bchannel +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0xca2a3f95 bchannel_senddata +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0xd1d280a6 bchannel_get_rxbuf +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 0xd72fbaa2 get_next_bframe +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0xd7d24f09 mISDN_clear_bchannel +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0xd943e13a mISDN_initdchannel +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0xd9469bbc mISDN_register_device +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0xdb062991 mISDN_freebchannel +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0xe2b5047b mISDN_register_Bprotocol +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0xe8f617eb mISDN_unregister_clock +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0xf5a9484d mISDN_initbchannel +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 0x0b7af884 ti_lmu_common_get_brt_res +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/leds/leds-ti-lmu-common 0xdcdd800a ti_lmu_common_get_ramp_params +EXPORT_SYMBOL drivers/mailbox/omap-mailbox 0x2c09b600 omap_mbox_enable_irq +EXPORT_SYMBOL drivers/mailbox/omap-mailbox 0x4cdc7543 omap_mbox_request_channel +EXPORT_SYMBOL drivers/mailbox/omap-mailbox 0x6e03c733 omap_mbox_disable_irq +EXPORT_SYMBOL drivers/md/dm-log 0x2b5d1734 dm_dirty_log_destroy +EXPORT_SYMBOL drivers/md/dm-log 0xaf35cd7a dm_dirty_log_type_register +EXPORT_SYMBOL drivers/md/dm-log 0xc1d4f0f3 dm_dirty_log_type_unregister +EXPORT_SYMBOL drivers/md/dm-log 0xde058efa dm_dirty_log_create +EXPORT_SYMBOL drivers/md/dm-snapshot 0x1ba00b39 dm_exception_store_destroy +EXPORT_SYMBOL drivers/md/dm-snapshot 0x46bd35f1 dm_exception_store_type_register +EXPORT_SYMBOL drivers/md/dm-snapshot 0x60e4b1f9 dm_snap_origin +EXPORT_SYMBOL drivers/md/dm-snapshot 0x7e765361 dm_snap_cow +EXPORT_SYMBOL drivers/md/dm-snapshot 0x7fb553e7 dm_exception_store_type_unregister +EXPORT_SYMBOL drivers/md/dm-snapshot 0x9eeead74 dm_exception_store_create +EXPORT_SYMBOL drivers/md/raid456 0x899efedc r5c_journal_mode_set +EXPORT_SYMBOL drivers/md/raid456 0xd6bc7205 raid5_set_cache_size +EXPORT_SYMBOL drivers/media/common/b2c2/b2c2-flexcop 0x0b24c486 flexcop_device_initialize +EXPORT_SYMBOL drivers/media/common/b2c2/b2c2-flexcop 0x11b8a9cd flexcop_dump_reg +EXPORT_SYMBOL drivers/media/common/b2c2/b2c2-flexcop 0x195d377b flexcop_eeprom_check_mac_addr +EXPORT_SYMBOL drivers/media/common/b2c2/b2c2-flexcop 0x3ee6a6ea flexcop_i2c_request +EXPORT_SYMBOL drivers/media/common/b2c2/b2c2-flexcop 0x4a44a167 flexcop_pid_feed_control +EXPORT_SYMBOL drivers/media/common/b2c2/b2c2-flexcop 0x4de24843 flexcop_sram_ctrl +EXPORT_SYMBOL drivers/media/common/b2c2/b2c2-flexcop 0x5b73b490 flexcop_pass_dmx_data +EXPORT_SYMBOL drivers/media/common/b2c2/b2c2-flexcop 0x7d9a4519 flexcop_device_kmalloc +EXPORT_SYMBOL drivers/media/common/b2c2/b2c2-flexcop 0x87b69b8f flexcop_device_kfree +EXPORT_SYMBOL drivers/media/common/b2c2/b2c2-flexcop 0xa85d40d0 flexcop_device_exit +EXPORT_SYMBOL drivers/media/common/b2c2/b2c2-flexcop 0xbb4f79fd flexcop_wan_set_speed +EXPORT_SYMBOL drivers/media/common/b2c2/b2c2-flexcop 0xbbc6ba84 flexcop_pass_dmx_packets +EXPORT_SYMBOL drivers/media/common/b2c2/b2c2-flexcop 0xc028a084 flexcop_sram_set_dest +EXPORT_SYMBOL drivers/media/common/cx2341x 0x1d872d51 cx2341x_handler_set_50hz +EXPORT_SYMBOL drivers/media/common/cx2341x 0x55aa7c5f cx2341x_mpeg_ctrls +EXPORT_SYMBOL drivers/media/common/cx2341x 0x745e6add cx2341x_handler_set_busy +EXPORT_SYMBOL drivers/media/common/cx2341x 0x8d3a49fd cx2341x_ctrl_get_menu +EXPORT_SYMBOL drivers/media/common/cx2341x 0x9f91137a cx2341x_handler_init +EXPORT_SYMBOL drivers/media/common/cx2341x 0xb84d1d72 cx2341x_handler_setup +EXPORT_SYMBOL drivers/media/common/cx2341x 0xb9c8f3f1 cx2341x_update +EXPORT_SYMBOL drivers/media/common/cx2341x 0xc889377e cx2341x_log_status +EXPORT_SYMBOL drivers/media/common/cx2341x 0xdaff62f9 cx2341x_fill_defaults +EXPORT_SYMBOL drivers/media/common/cx2341x 0xe197a5dd cx2341x_ext_ctrls +EXPORT_SYMBOL drivers/media/common/cx2341x 0xeb854f47 cx2341x_ctrl_query +EXPORT_SYMBOL drivers/media/common/cypress_firmware 0xbd46fc42 cypress_load_firmware +EXPORT_SYMBOL drivers/media/common/tveeprom 0x0dbf0296 tveeprom_hauppauge_analog +EXPORT_SYMBOL drivers/media/common/tveeprom 0x3eae597a tveeprom_read +EXPORT_SYMBOL drivers/media/common/videobuf2/videobuf2-common 0x19a0af1d vb2_buffer_in_use +EXPORT_SYMBOL drivers/media/common/videobuf2/videobuf2-common 0xdda21578 vb2_verify_memory_type +EXPORT_SYMBOL drivers/media/common/videobuf2/videobuf2-dvb 0x6466ee2a vb2_dvb_get_frontend +EXPORT_SYMBOL drivers/media/common/videobuf2/videobuf2-dvb 0x74166196 vb2_dvb_alloc_frontend +EXPORT_SYMBOL drivers/media/common/videobuf2/videobuf2-dvb 0x7bdc5281 vb2_dvb_register_bus +EXPORT_SYMBOL drivers/media/common/videobuf2/videobuf2-dvb 0x8099451c vb2_dvb_find_frontend +EXPORT_SYMBOL drivers/media/common/videobuf2/videobuf2-dvb 0xd61a4c3a vb2_dvb_dealloc_frontends +EXPORT_SYMBOL drivers/media/common/videobuf2/videobuf2-dvb 0xfcf8e446 vb2_dvb_unregister_bus +EXPORT_SYMBOL drivers/media/common/videobuf2/videobuf2-memops 0xa21fa765 vb2_create_framevec +EXPORT_SYMBOL drivers/media/common/videobuf2/videobuf2-memops 0xccd197c7 vb2_destroy_framevec +EXPORT_SYMBOL drivers/media/common/videobuf2/videobuf2-v4l2 0x8da5b278 vb2_querybuf +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x08733236 intlog10 +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x0d9a80f1 dvb_generic_open +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x1e40f5a6 dvb_ca_en50221_camready_irq +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x2cd29b1c dvb_frontend_detach +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x2ed002b2 dvb_net_init +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x2f5cdf80 dvb_ringbuffer_write +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x3b93d71a dvb_frontend_sleep_until +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x3feecaf6 dvb_dmx_swfilter_raw +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 0x62609eec dvb_register_adapter +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x635b2878 dvb_unregister_frontend +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x67480317 dvb_dmx_init +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x697544a6 dvb_free_device +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x72dec182 dvb_ca_en50221_camchange_irq +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x7751ad77 dvb_dmx_swfilter_204 +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x7b0d51ce dvb_dmx_release +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x80985cc4 dvb_dmx_swfilter +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x831f5f7a dvb_remove_device +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x8865ecf9 dvb_frontend_suspend +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x8ec581fd dvb_frontend_resume +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x91a6794b dvb_ringbuffer_read_user +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0xa42be35a dvb_register_device +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0xaa943ecb dvb_ca_en50221_release +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0xb1e4d0ae dvb_net_release +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0xb2719120 dvb_unregister_adapter +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0xb3352dd2 dvb_ringbuffer_empty +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0xb3ca2812 dvb_ca_en50221_init +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0xb9a33c2e dvb_generic_ioctl +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0xbb0168bb dvb_ca_en50221_frda_irq +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0xbeb0554f dvb_generic_release +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0xc3f679f9 dvb_ringbuffer_write_user +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0xd549a45a dvb_frontend_reinitialise +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0xdcf60586 dvb_dmx_swfilter_packets +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0xe138ce6b dvb_ringbuffer_avail +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0xe3a684f7 dvb_dmxdev_init +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0xe5687e95 dvb_unregister_device +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0xe768b2f4 dvb_register_frontend +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0xebbc2d9b dvb_ringbuffer_init +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0xed94b7b9 dvb_dmxdev_release +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-frontends/ascot2e 0x37c10b21 ascot2e_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/atbm8830 0x3dfb1f51 atbm8830_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/au8522_common 0x0cead6de au8522_led_ctrl +EXPORT_SYMBOL drivers/media/dvb-frontends/au8522_common 0x2514d02a au8522_i2c_gate_ctrl +EXPORT_SYMBOL drivers/media/dvb-frontends/au8522_common 0x4583f2f0 au8522_readreg +EXPORT_SYMBOL drivers/media/dvb-frontends/au8522_common 0x63e02ba0 au8522_sleep +EXPORT_SYMBOL drivers/media/dvb-frontends/au8522_common 0x6feb7ddd au8522_release_state +EXPORT_SYMBOL drivers/media/dvb-frontends/au8522_common 0x79bfdccf au8522_init +EXPORT_SYMBOL drivers/media/dvb-frontends/au8522_common 0x9435a225 au8522_analog_i2c_gate_ctrl +EXPORT_SYMBOL drivers/media/dvb-frontends/au8522_common 0xa8d451f8 au8522_writereg +EXPORT_SYMBOL drivers/media/dvb-frontends/au8522_common 0xe88e7bad au8522_get_state +EXPORT_SYMBOL drivers/media/dvb-frontends/au8522_dig 0x152d12ea au8522_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/bcm3510 0xfed4dc13 bcm3510_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/cx22700 0x4c2d3614 cx22700_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/cx22702 0xad67e400 cx22702_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/cx24110 0xd0140040 cx24110_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/cx24113 0x004175c3 cx24113_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/cx24113 0xdf30debf cx24113_agc_callback +EXPORT_SYMBOL drivers/media/dvb-frontends/cx24116 0x0101e381 cx24116_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/cx24120 0xea0dfc8b cx24120_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/cx24123 0x68d9d5fd cx24123_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/cx24123 0xa4b343ba cx24123_get_tuner_i2c_adapter +EXPORT_SYMBOL drivers/media/dvb-frontends/cxd2820r 0x90b010e0 cxd2820r_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/cxd2841er 0x66096e50 cxd2841er_attach_s +EXPORT_SYMBOL drivers/media/dvb-frontends/cxd2841er 0x7faba72f cxd2841er_attach_t_c +EXPORT_SYMBOL drivers/media/dvb-frontends/cxd2880/cxd2880 0x38d5532d cxd2880_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/dib0070 0x0ba8ed49 dib0070_wbd_offset +EXPORT_SYMBOL drivers/media/dvb-frontends/dib0070 0x2916ecc1 dib0070_get_rf_output +EXPORT_SYMBOL drivers/media/dvb-frontends/dib0070 0x5e0be8a6 dib0070_set_rf_output +EXPORT_SYMBOL drivers/media/dvb-frontends/dib0070 0x96134bde dib0070_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/dib0070 0xece70dee dib0070_ctrl_agc_filter +EXPORT_SYMBOL drivers/media/dvb-frontends/dib0090 0x17bc731e dib0090_pwm_gain_reset +EXPORT_SYMBOL drivers/media/dvb-frontends/dib0090 0x1e4bd84c dib0090_register +EXPORT_SYMBOL drivers/media/dvb-frontends/dib0090 0x3c20b80f dib0090_update_tuning_table_7090 +EXPORT_SYMBOL drivers/media/dvb-frontends/dib0090 0x475ed064 dib0090_set_tune_state +EXPORT_SYMBOL drivers/media/dvb-frontends/dib0090 0x4aa377a3 dib0090_set_dc_servo +EXPORT_SYMBOL drivers/media/dvb-frontends/dib0090 0x511036d1 dib0090_get_tune_state +EXPORT_SYMBOL drivers/media/dvb-frontends/dib0090 0x62163e52 dib0090_set_switch +EXPORT_SYMBOL drivers/media/dvb-frontends/dib0090 0x7f95bb66 dib0090_dcc_freq +EXPORT_SYMBOL drivers/media/dvb-frontends/dib0090 0x805c4a3c dib0090_fw_register +EXPORT_SYMBOL drivers/media/dvb-frontends/dib0090 0x922e1503 dib0090_get_wbd_offset +EXPORT_SYMBOL drivers/media/dvb-frontends/dib0090 0x97bfe672 dib0090_gain_control +EXPORT_SYMBOL drivers/media/dvb-frontends/dib0090 0xa54b6999 dib0090_set_vga +EXPORT_SYMBOL drivers/media/dvb-frontends/dib0090 0xb20fb82f dib0090_get_current_gain +EXPORT_SYMBOL drivers/media/dvb-frontends/dib0090 0xeda10e85 dib0090_get_wbd_target +EXPORT_SYMBOL drivers/media/dvb-frontends/dib0090 0xf58573d3 dib0090_update_rframp_7090 +EXPORT_SYMBOL drivers/media/dvb-frontends/dib3000mb 0x2181ffc5 dib3000mb_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/dib3000mc 0x0ecbe509 dib3000mc_set_config +EXPORT_SYMBOL drivers/media/dvb-frontends/dib3000mc 0x0f198143 dib3000mc_pid_parse +EXPORT_SYMBOL drivers/media/dvb-frontends/dib3000mc 0x319882f4 dib3000mc_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/dib3000mc 0x3784013d dib3000mc_pid_control +EXPORT_SYMBOL drivers/media/dvb-frontends/dib3000mc 0x4aa79c63 dib3000mc_i2c_enumeration +EXPORT_SYMBOL drivers/media/dvb-frontends/dib3000mc 0xf9a0ce70 dib3000mc_get_tuner_i2c_master +EXPORT_SYMBOL drivers/media/dvb-frontends/dib7000m 0x17a0d05e dib7000m_get_i2c_master +EXPORT_SYMBOL drivers/media/dvb-frontends/dib7000m 0x35c488e2 dib7000m_pid_filter +EXPORT_SYMBOL drivers/media/dvb-frontends/dib7000m 0xdb4631d2 dib7000m_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/dib7000m 0xdf5bdedb dib7000m_pid_filter_ctrl +EXPORT_SYMBOL drivers/media/dvb-frontends/dib7000p 0x3bedac21 dib7000p_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/dib8000 0xefc4cbc0 dib8000_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/dib9000 0x2a085fce dib9000_i2c_enumeration +EXPORT_SYMBOL drivers/media/dvb-frontends/dib9000 0x58f2fbf4 dib9000_fw_pid_filter +EXPORT_SYMBOL drivers/media/dvb-frontends/dib9000 0x6491a18f dib9000_firmware_post_pll_init +EXPORT_SYMBOL drivers/media/dvb-frontends/dib9000 0x814324ff dib9000_fw_pid_filter_ctrl +EXPORT_SYMBOL drivers/media/dvb-frontends/dib9000 0x81c3b1fb dib9000_get_tuner_interface +EXPORT_SYMBOL drivers/media/dvb-frontends/dib9000 0x845ec7f2 dib9000_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/dib9000 0x85f49a97 dib9000_set_slave_frontend +EXPORT_SYMBOL drivers/media/dvb-frontends/dib9000 0x97d62678 dib9000_get_i2c_master +EXPORT_SYMBOL drivers/media/dvb-frontends/dib9000 0x9fbcfd2b dib9000_fw_set_component_bus_speed +EXPORT_SYMBOL drivers/media/dvb-frontends/dib9000 0xa4a1f6de dib9000_get_component_bus_interface +EXPORT_SYMBOL drivers/media/dvb-frontends/dib9000 0xc82e1e24 dib9000_set_gpio +EXPORT_SYMBOL drivers/media/dvb-frontends/dib9000 0xcc542f66 dib9000_set_i2c_adapter +EXPORT_SYMBOL drivers/media/dvb-frontends/dib9000 0xe153d280 dib9000_get_slave_frontend +EXPORT_SYMBOL drivers/media/dvb-frontends/dibx000_common 0x5c1b2ae8 dibx000_get_i2c_adapter +EXPORT_SYMBOL drivers/media/dvb-frontends/dibx000_common 0x787e98cf dibx000_exit_i2c_master +EXPORT_SYMBOL drivers/media/dvb-frontends/dibx000_common 0x8e99f33c dibx000_reset_i2c_master +EXPORT_SYMBOL drivers/media/dvb-frontends/dibx000_common 0xbfe60129 dibx000_init_i2c_master +EXPORT_SYMBOL drivers/media/dvb-frontends/dibx000_common 0xc68a5f54 dibx000_i2c_set_speed +EXPORT_SYMBOL drivers/media/dvb-frontends/drx39xyj/drx39xyj 0xe7c93af2 drx39xxj_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/drxd 0x86db6fa7 drxd_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/drxk 0x5745efdc drxk_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/ds3000 0xb4061d2f ds3000_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/dvb-pll 0x1cb70530 dvb_pll_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/dvb_dummy_fe 0x39e81abf dvb_dummy_fe_ofdm_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/dvb_dummy_fe 0x92263ed7 dvb_dummy_fe_qpsk_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/dvb_dummy_fe 0xa168a174 dvb_dummy_fe_qam_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/ec100 0xc1becc6c ec100_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/helene 0xafaa7ec6 helene_attach_s +EXPORT_SYMBOL drivers/media/dvb-frontends/helene 0xc83c485c helene_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/horus3a 0x90d109ed horus3a_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/isl6405 0x856bfb69 isl6405_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/isl6421 0x0ec731b0 isl6421_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/isl6423 0xda90ed8e isl6423_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/itd1000 0x304e162d itd1000_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/ix2505v 0x4d557d12 ix2505v_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/l64781 0x137e2b43 l64781_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/lg2160 0x1ed72539 lg2160_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/lgdt3305 0x92fa5ea6 lgdt3305_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/lgdt3306a 0x6c8a08d6 lgdt3306a_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/lgdt330x 0x2f0a3bfb lgdt330x_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/lgs8gl5 0x3ca999ef lgs8gl5_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/lgs8gxx 0x18b4e86a lgs8gxx_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/lnbh25 0x4c96e503 lnbh25_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/lnbh29 0x7b9d0ee0 lnbh29_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/lnbp21 0x66546139 lnbh24_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/lnbp21 0xeaf16ac7 lnbp21_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/lnbp22 0x12ddd4d3 lnbp22_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/m88ds3103 0xed3027fb m88ds3103_get_agc_pwm +EXPORT_SYMBOL drivers/media/dvb-frontends/m88ds3103 0xee5a0378 m88ds3103_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/m88rs2000 0xc3060e5c m88rs2000_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/mb86a16 0x23276fe2 mb86a16_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/mb86a20s 0xd660c676 mb86a20s_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/mt312 0x57dbebc7 mt312_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/mt352 0xeb8deb4a mt352_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/nxt200x 0xf9df509f nxt200x_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/nxt6000 0x2d302d7b nxt6000_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/or51132 0x463a1fbd or51132_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/or51211 0xf32149b1 or51211_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/s5h1409 0xc040c42f s5h1409_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/s5h1411 0x32ec36e8 s5h1411_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/s5h1420 0x67f1ee5a s5h1420_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/s5h1420 0x7dcd2f3d s5h1420_get_tuner_i2c_adapter +EXPORT_SYMBOL drivers/media/dvb-frontends/s5h1432 0x9abd6c71 s5h1432_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/s921 0x7fe1c5c8 s921_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/si21xx 0x753c5b1b si21xx_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/sp8870 0x1111bd50 sp8870_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/sp887x 0xb8c984cd sp887x_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/stb0899 0x74bf1e48 stb0899_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/stb6000 0xd60e16e3 stb6000_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/stb6100 0x849d8d09 stb6100_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/stv0288 0x00ab3b02 stv0288_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/stv0297 0xbcbe48c4 stv0297_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/stv0299 0x47569946 stv0299_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/stv0367 0x401b1077 stv0367cab_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/stv0367 0x7e7c3ba6 stv0367ddb_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/stv0367 0x989be1e4 stv0367ter_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/stv0900 0xed881d03 stv0900_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/stv090x 0xc055de54 stv090x_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/stv6110 0xc644976d stv6110_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/stv6110x 0x2257bae3 stv6110x_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/tda10021 0xa228c75b tda10021_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/tda10023 0xe974ba0c tda10023_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/tda10048 0xd4554335 tda10048_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/tda1004x 0x4a74c211 tda10045_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/tda1004x 0x8070e6c5 tda10046_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/tda10086 0xd2682ca7 tda10086_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/tda665x 0xbf5654ba tda665x_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/tda8083 0xe2dcda19 tda8083_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/tda8261 0xaf0520fb tda8261_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/tda826x 0xa194547c tda826x_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/ts2020 0xe4973506 ts2020_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/tua6100 0xeacfc722 tua6100_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/ves1820 0x17eab980 ves1820_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/ves1x93 0x9d7b5aef ves1x93_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/zd1301_demod 0x3826b200 zd1301_demod_get_dvb_frontend +EXPORT_SYMBOL drivers/media/dvb-frontends/zd1301_demod 0xc78ddd73 zd1301_demod_get_i2c_adapter +EXPORT_SYMBOL drivers/media/dvb-frontends/zl10036 0x3b483778 zl10036_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/zl10039 0x7c4b4166 zl10039_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/zl10353 0x6a7e9006 zl10353_attach +EXPORT_SYMBOL drivers/media/pci/b2c2/b2c2-flexcop-pci 0x0e7ab8a2 flexcop_dma_config +EXPORT_SYMBOL drivers/media/pci/b2c2/b2c2-flexcop-pci 0x29135601 flexcop_dma_xfer_control +EXPORT_SYMBOL drivers/media/pci/b2c2/b2c2-flexcop-pci 0x48d08300 flexcop_dma_config_timer +EXPORT_SYMBOL drivers/media/pci/b2c2/b2c2-flexcop-pci 0xbe0431cd flexcop_dma_control_size_irq +EXPORT_SYMBOL drivers/media/pci/b2c2/b2c2-flexcop-pci 0xe0409657 flexcop_dma_allocate +EXPORT_SYMBOL drivers/media/pci/b2c2/b2c2-flexcop-pci 0xe24170a9 flexcop_dma_free +EXPORT_SYMBOL drivers/media/pci/b2c2/b2c2-flexcop-pci 0xfbb94bff flexcop_dma_control_timer_irq +EXPORT_SYMBOL drivers/media/pci/bt8xx/bt878 0x18750407 bt878_device_control +EXPORT_SYMBOL drivers/media/pci/bt8xx/bt878 0x23948340 bt878_start +EXPORT_SYMBOL drivers/media/pci/bt8xx/bt878 0x55d3b500 bt878_stop +EXPORT_SYMBOL drivers/media/pci/bt8xx/bt878 0x57307932 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 0x3157430a bttv_get_pcidev +EXPORT_SYMBOL drivers/media/pci/bt8xx/bttv 0x375cda4f bttv_sub_register +EXPORT_SYMBOL drivers/media/pci/bt8xx/bttv 0x761b2a55 bttv_sub_unregister +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 0x0325bca4 dst_error_bailout +EXPORT_SYMBOL drivers/media/pci/bt8xx/dst 0x0ac5513b dst_wait_dst_ready +EXPORT_SYMBOL drivers/media/pci/bt8xx/dst 0x224918a9 rdc_reset_state +EXPORT_SYMBOL drivers/media/pci/bt8xx/dst 0x23d401e3 dst_comm_init +EXPORT_SYMBOL drivers/media/pci/bt8xx/dst 0x43a983fd dst_check_sum +EXPORT_SYMBOL drivers/media/pci/bt8xx/dst 0x4470f351 dst_pio_disable +EXPORT_SYMBOL drivers/media/pci/bt8xx/dst 0xb2ebc662 read_dst +EXPORT_SYMBOL drivers/media/pci/bt8xx/dst 0xd8cab6e8 dst_attach +EXPORT_SYMBOL drivers/media/pci/bt8xx/dst 0xf970818d write_dst +EXPORT_SYMBOL drivers/media/pci/bt8xx/dst 0xfa1239c4 dst_error_recovery +EXPORT_SYMBOL drivers/media/pci/bt8xx/dst_ca 0x48761e70 dst_ca_attach +EXPORT_SYMBOL drivers/media/pci/cx18/cx18 0x1b363ae6 cx18_ext_init +EXPORT_SYMBOL drivers/media/pci/cx18/cx18 0x2cdea06d cx18_reset_ir_gpio +EXPORT_SYMBOL drivers/media/pci/cx18/cx18 0x2e231ef3 cx18_stop_v4l2_encode_stream +EXPORT_SYMBOL drivers/media/pci/cx18/cx18 0x562a587f cx18_claim_stream +EXPORT_SYMBOL drivers/media/pci/cx18/cx18 0x65c2d06b cx18_release_stream +EXPORT_SYMBOL drivers/media/pci/cx18/cx18 0xce1f8599 cx18_start_v4l2_encode_stream +EXPORT_SYMBOL drivers/media/pci/cx23885/altera-ci 0x55e9d0ec altera_ci_init +EXPORT_SYMBOL drivers/media/pci/cx23885/altera-ci 0x6ff7510d altera_ci_tuner_reset +EXPORT_SYMBOL drivers/media/pci/cx23885/altera-ci 0xdb3faf38 altera_ci_release +EXPORT_SYMBOL drivers/media/pci/cx23885/altera-ci 0xe66b9812 altera_ci_irq +EXPORT_SYMBOL drivers/media/pci/cx25821/cx25821 0x239a8f16 cx25821_dev_get +EXPORT_SYMBOL drivers/media/pci/cx25821/cx25821 0x2800dcc2 cx25821_set_gpiopin_direction +EXPORT_SYMBOL drivers/media/pci/cx25821/cx25821 0x44b517f5 cx25821_print_irqbits +EXPORT_SYMBOL drivers/media/pci/cx25821/cx25821 0xa25f90ba cx25821_riscmem_alloc +EXPORT_SYMBOL drivers/media/pci/cx25821/cx25821 0xd6816562 cx25821_sram_channel_dump_audio +EXPORT_SYMBOL drivers/media/pci/cx25821/cx25821 0xd9f9c600 cx25821_sram_channel_setup_audio +EXPORT_SYMBOL drivers/media/pci/cx25821/cx25821 0xe1670fce cx25821_dev_unregister +EXPORT_SYMBOL drivers/media/pci/cx25821/cx25821 0xe9050411 cx25821_sram_channels +EXPORT_SYMBOL drivers/media/pci/cx25821/cx25821 0xeaf8df7b cx25821_risc_databuffer_audio +EXPORT_SYMBOL drivers/media/pci/cx88/cx88-vp3054-i2c 0x5130ab45 vp3054_i2c_remove +EXPORT_SYMBOL drivers/media/pci/cx88/cx88-vp3054-i2c 0xf3566632 vp3054_i2c_probe +EXPORT_SYMBOL drivers/media/pci/cx88/cx8800 0x251558c6 cx88_set_freq +EXPORT_SYMBOL drivers/media/pci/cx88/cx8800 0x6b1f07cd cx88_enum_input +EXPORT_SYMBOL drivers/media/pci/cx88/cx8800 0x885f46f1 cx88_video_mux +EXPORT_SYMBOL drivers/media/pci/cx88/cx8800 0xa2927a09 cx88_querycap +EXPORT_SYMBOL drivers/media/pci/cx88/cx8802 0x00a3f0f3 cx8802_cancel_buffers +EXPORT_SYMBOL drivers/media/pci/cx88/cx8802 0x147cfedd cx8802_buf_prepare +EXPORT_SYMBOL drivers/media/pci/cx88/cx8802 0x3cb58f8a cx8802_start_dma +EXPORT_SYMBOL drivers/media/pci/cx88/cx8802 0x3ed32e67 cx8802_buf_queue +EXPORT_SYMBOL drivers/media/pci/cx88/cx8802 0x4b754526 cx8802_unregister_driver +EXPORT_SYMBOL drivers/media/pci/cx88/cx8802 0xa02fcb92 cx8802_get_driver +EXPORT_SYMBOL drivers/media/pci/cx88/cx8802 0xf3bed670 cx8802_register_driver +EXPORT_SYMBOL drivers/media/pci/cx88/cx88xx 0x01b51b46 cx88_wakeup +EXPORT_SYMBOL drivers/media/pci/cx88/cx88xx 0x029c9284 cx88_reset +EXPORT_SYMBOL drivers/media/pci/cx88/cx88xx 0x1158f61f cx88_get_stereo +EXPORT_SYMBOL drivers/media/pci/cx88/cx88xx 0x144b04bd cx88_set_scale +EXPORT_SYMBOL drivers/media/pci/cx88/cx88xx 0x1567a23e cx88_set_tvaudio +EXPORT_SYMBOL drivers/media/pci/cx88/cx88xx 0x2dea5882 cx88_core_get +EXPORT_SYMBOL drivers/media/pci/cx88/cx88xx 0x3cc93e48 cx88_risc_databuffer +EXPORT_SYMBOL drivers/media/pci/cx88/cx88xx 0x4a2708e3 cx88_core_irq +EXPORT_SYMBOL drivers/media/pci/cx88/cx88xx 0x519a5d6e cx88_ir_stop +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 0x694ac8ad cx88_dsp_detect_stereo_sap +EXPORT_SYMBOL drivers/media/pci/cx88/cx88xx 0x7a677060 cx88_risc_buffer +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 0x96c03314 cx88_set_tvnorm +EXPORT_SYMBOL drivers/media/pci/cx88/cx88xx 0x9f0417ef cx88_sram_channel_setup +EXPORT_SYMBOL drivers/media/pci/cx88/cx88xx 0xa781d6b8 cx88_newstation +EXPORT_SYMBOL drivers/media/pci/cx88/cx88xx 0xb19f064e cx88_ir_start +EXPORT_SYMBOL drivers/media/pci/cx88/cx88xx 0xbf1c70d7 cx88_shutdown +EXPORT_SYMBOL drivers/media/pci/cx88/cx88xx 0xc46c0f8b cx88_sram_channel_dump +EXPORT_SYMBOL drivers/media/pci/cx88/cx88xx 0xe78a1fee cx88_core_put +EXPORT_SYMBOL drivers/media/pci/cx88/cx88xx 0xf7201641 cx88_set_stereo +EXPORT_SYMBOL drivers/media/pci/cx88/cx88xx 0xfef9fee4 cx88_vdev_init +EXPORT_SYMBOL drivers/media/pci/ddbridge/ddbridge-dummy-fe 0x1f81af3a ddbridge_dummy_fe_qam_attach +EXPORT_SYMBOL drivers/media/pci/ivtv/ivtv 0x0e74382e ivtv_firmware_check +EXPORT_SYMBOL drivers/media/pci/ivtv/ivtv 0x14f67530 ivtv_debug +EXPORT_SYMBOL drivers/media/pci/ivtv/ivtv 0x273a9fb1 ivtv_udma_unmap +EXPORT_SYMBOL drivers/media/pci/ivtv/ivtv 0x3e749af2 ivtv_udma_prepare +EXPORT_SYMBOL drivers/media/pci/ivtv/ivtv 0x649f0eb6 ivtv_api +EXPORT_SYMBOL drivers/media/pci/ivtv/ivtv 0x6ea51b12 ivtv_udma_alloc +EXPORT_SYMBOL drivers/media/pci/ivtv/ivtv 0x85576711 ivtv_start_v4l2_encode_stream +EXPORT_SYMBOL drivers/media/pci/ivtv/ivtv 0x8606b9d8 ivtv_udma_setup +EXPORT_SYMBOL drivers/media/pci/ivtv/ivtv 0x8748ab22 ivtv_ext_init +EXPORT_SYMBOL drivers/media/pci/ivtv/ivtv 0x9cd30feb ivtv_set_irq_mask +EXPORT_SYMBOL drivers/media/pci/ivtv/ivtv 0xa93414c5 ivtv_claim_stream +EXPORT_SYMBOL drivers/media/pci/ivtv/ivtv 0xc105137a ivtv_stop_v4l2_encode_stream +EXPORT_SYMBOL drivers/media/pci/ivtv/ivtv 0xc1753e5b ivtv_reset_ir_gpio +EXPORT_SYMBOL drivers/media/pci/ivtv/ivtv 0xdb6d9542 ivtv_release_stream +EXPORT_SYMBOL drivers/media/pci/ivtv/ivtv 0xe35b6361 ivtv_vapi +EXPORT_SYMBOL drivers/media/pci/ivtv/ivtv 0xe71ef460 ivtv_init_on_first_open +EXPORT_SYMBOL drivers/media/pci/ivtv/ivtv 0xed9e7a56 ivtv_vapi_result +EXPORT_SYMBOL drivers/media/pci/ivtv/ivtv 0xedda36a9 ivtv_clear_irq_mask +EXPORT_SYMBOL drivers/media/pci/saa7134/saa7134 0x04e83446 saa7134_tuner_callback +EXPORT_SYMBOL drivers/media/pci/saa7134/saa7134 0x0a99c94c saa7134_set_gpio +EXPORT_SYMBOL drivers/media/pci/saa7134/saa7134 0x1211df5d saa7134_devlist +EXPORT_SYMBOL drivers/media/pci/saa7134/saa7134 0x1f1292cc saa7134_pgtable_alloc +EXPORT_SYMBOL drivers/media/pci/saa7134/saa7134 0x2134090c saa7134_pgtable_free +EXPORT_SYMBOL drivers/media/pci/saa7134/saa7134 0x581824fa saa7134_devlist_lock +EXPORT_SYMBOL drivers/media/pci/saa7134/saa7134 0x5d8c2e7f saa7134_set_dmabits +EXPORT_SYMBOL drivers/media/pci/saa7134/saa7134 0x730c4be3 saa7134_boards +EXPORT_SYMBOL drivers/media/pci/saa7134/saa7134 0x758feed7 saa7134_tvaudio_setmute +EXPORT_SYMBOL drivers/media/pci/saa7134/saa7134 0x8fa424fd saa_dsp_writel +EXPORT_SYMBOL drivers/media/pci/saa7134/saa7134 0x94300cf1 saa7134_ts_unregister +EXPORT_SYMBOL drivers/media/pci/saa7134/saa7134 0xa18cd11e saa7134_pgtable_build +EXPORT_SYMBOL drivers/media/pci/saa7134/saa7134 0xa3d3673d saa7134_dmasound_init +EXPORT_SYMBOL drivers/media/pci/saa7134/saa7134 0xbce6559e saa7134_ts_register +EXPORT_SYMBOL drivers/media/pci/saa7134/saa7134 0xefe4a930 saa7134_dmasound_exit +EXPORT_SYMBOL drivers/media/pci/ttpci/ttpci-eeprom 0x693e74ba ttpci_eeprom_decode_mac +EXPORT_SYMBOL drivers/media/pci/ttpci/ttpci-eeprom 0xe021b37b ttpci_eeprom_parse_mac +EXPORT_SYMBOL drivers/media/radio/tea575x 0x0989f841 snd_tea575x_s_hw_freq_seek +EXPORT_SYMBOL drivers/media/radio/tea575x 0x355483f2 snd_tea575x_set_freq +EXPORT_SYMBOL drivers/media/radio/tea575x 0x5523a358 snd_tea575x_g_tuner +EXPORT_SYMBOL drivers/media/radio/tea575x 0x84734b47 snd_tea575x_enum_freq_bands +EXPORT_SYMBOL drivers/media/radio/tea575x 0x937e892a snd_tea575x_exit +EXPORT_SYMBOL drivers/media/radio/tea575x 0xb17f4a8d snd_tea575x_hw_init +EXPORT_SYMBOL drivers/media/radio/tea575x 0xc9a6d0c6 snd_tea575x_init +EXPORT_SYMBOL drivers/media/rc/rc-core 0x2ad91f6e ir_raw_gen_pl +EXPORT_SYMBOL drivers/media/rc/rc-core 0x3131b773 ir_raw_encode_scancode +EXPORT_SYMBOL drivers/media/rc/rc-core 0x446d1202 ir_raw_handler_unregister +EXPORT_SYMBOL drivers/media/rc/rc-core 0x4725eda1 ir_raw_encode_carrier +EXPORT_SYMBOL drivers/media/rc/rc-core 0x7cf52901 ir_raw_gen_manchester +EXPORT_SYMBOL drivers/media/rc/rc-core 0x9e12e343 ir_raw_gen_pd +EXPORT_SYMBOL drivers/media/rc/rc-core 0xb044426c ir_raw_handler_register +EXPORT_SYMBOL drivers/media/tuners/fc0011 0x5bafbb70 fc0011_attach +EXPORT_SYMBOL drivers/media/tuners/fc0012 0xb329ee24 fc0012_attach +EXPORT_SYMBOL drivers/media/tuners/fc0013 0x02dbb9f5 fc0013_rc_cal_add +EXPORT_SYMBOL drivers/media/tuners/fc0013 0x61a46faf fc0013_rc_cal_reset +EXPORT_SYMBOL drivers/media/tuners/fc0013 0xda6fd0eb fc0013_attach +EXPORT_SYMBOL drivers/media/tuners/max2165 0x8b3f897d max2165_attach +EXPORT_SYMBOL drivers/media/tuners/mc44s803 0x294451a4 mc44s803_attach +EXPORT_SYMBOL drivers/media/tuners/mt2060 0x452cc087 mt2060_attach +EXPORT_SYMBOL drivers/media/tuners/mt2131 0x082227b3 mt2131_attach +EXPORT_SYMBOL drivers/media/tuners/mt2266 0x714cd5c9 mt2266_attach +EXPORT_SYMBOL drivers/media/tuners/mxl5005s 0xe1972b87 mxl5005s_attach +EXPORT_SYMBOL drivers/media/tuners/qt1010 0x3b11f6e0 qt1010_attach +EXPORT_SYMBOL drivers/media/tuners/tda18218 0xc998837b tda18218_attach +EXPORT_SYMBOL drivers/media/tuners/tuner-types 0x4c48939e tuners +EXPORT_SYMBOL drivers/media/tuners/tuner-types 0xc2821775 tuner_count +EXPORT_SYMBOL drivers/media/tuners/tuner-xc2028 0x1bf6842b xc2028_attach +EXPORT_SYMBOL drivers/media/tuners/xc4000 0xbe6dc0fa xc4000_attach +EXPORT_SYMBOL drivers/media/tuners/xc5000 0xce4e4281 xc5000_attach +EXPORT_SYMBOL drivers/media/usb/cx231xx/cx231xx 0xb7b55b36 cx231xx_register_extension +EXPORT_SYMBOL drivers/media/usb/cx231xx/cx231xx 0xdd7493ab cx231xx_unregister_extension +EXPORT_SYMBOL drivers/media/usb/dvb-usb-v2/dvb_usb_v2 0x0f1c2ad4 dvb_usbv2_reset_resume +EXPORT_SYMBOL drivers/media/usb/dvb-usb-v2/dvb_usb_v2 0x4b2e5a6e dvb_usbv2_generic_write +EXPORT_SYMBOL drivers/media/usb/dvb-usb-v2/dvb_usb_v2 0x5abfe572 dvb_usbv2_probe +EXPORT_SYMBOL drivers/media/usb/dvb-usb-v2/dvb_usb_v2 0x8a4b8385 dvb_usbv2_resume +EXPORT_SYMBOL drivers/media/usb/dvb-usb-v2/dvb_usb_v2 0x8a6accc4 dvb_usbv2_generic_rw_locked +EXPORT_SYMBOL drivers/media/usb/dvb-usb-v2/dvb_usb_v2 0x8e583282 dvb_usbv2_generic_rw +EXPORT_SYMBOL drivers/media/usb/dvb-usb-v2/dvb_usb_v2 0x9ba4225c dvb_usbv2_suspend +EXPORT_SYMBOL drivers/media/usb/dvb-usb-v2/dvb_usb_v2 0xcc59d4ce dvb_usbv2_disconnect +EXPORT_SYMBOL drivers/media/usb/dvb-usb-v2/dvb_usb_v2 0xce159e8a dvb_usbv2_generic_write_locked +EXPORT_SYMBOL drivers/media/usb/dvb-usb/dvb-usb 0x02bfddc4 dvb_usb_generic_write +EXPORT_SYMBOL drivers/media/usb/dvb-usb/dvb-usb 0x4014d9b2 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 0xa2e0c973 dvb_usb_device_exit +EXPORT_SYMBOL drivers/media/usb/dvb-usb/dvb-usb 0xb7b886e0 dvb_usb_device_init +EXPORT_SYMBOL drivers/media/usb/dvb-usb/dvb-usb 0xc59cb823 dvb_usb_nec_rc_key_to_event +EXPORT_SYMBOL drivers/media/usb/dvb-usb/dvb-usb 0xc945092b 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 0xd4e288db rc_map_af9005_table_size +EXPORT_SYMBOL drivers/media/usb/dvb-usb/dvb-usb-af9005-remote 0xef7b931b af9005_rc_decode +EXPORT_SYMBOL drivers/media/usb/dvb-usb/dvb-usb-dibusb-common 0x06cf95fa dibusb2_0_streaming_ctrl +EXPORT_SYMBOL drivers/media/usb/dvb-usb/dvb-usb-dibusb-common 0x2c292b22 dibusb_power_ctrl +EXPORT_SYMBOL drivers/media/usb/dvb-usb/dvb-usb-dibusb-common 0x5c6971f2 dibusb_pid_filter_ctrl +EXPORT_SYMBOL drivers/media/usb/dvb-usb/dvb-usb-dibusb-common 0x630d26b9 dibusb_streaming_ctrl +EXPORT_SYMBOL drivers/media/usb/dvb-usb/dvb-usb-dibusb-common 0x7fcf7599 dibusb_i2c_algo +EXPORT_SYMBOL drivers/media/usb/dvb-usb/dvb-usb-dibusb-common 0x829c003d dibusb_read_eeprom_byte +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 0xcfabfe50 dibusb_pid_filter +EXPORT_SYMBOL drivers/media/usb/dvb-usb/dvb-usb-dibusb-common 0xd49d7e7c dibusb2_0_power_ctrl +EXPORT_SYMBOL drivers/media/usb/dvb-usb/dvb-usb-dibusb-common 0xdb4319b1 dibusb_rc_query +EXPORT_SYMBOL drivers/media/usb/dvb-usb/dvb-usb-dibusb-mc-common 0x24e209cb dibusb_dib3000mc_tuner_attach +EXPORT_SYMBOL drivers/media/usb/dvb-usb/dvb-usb-dibusb-mc-common 0x6731e0a7 dibusb_dib3000mc_frontend_attach +EXPORT_SYMBOL drivers/media/usb/em28xx/em28xx 0x209816e8 em28xx_register_extension +EXPORT_SYMBOL drivers/media/usb/em28xx/em28xx 0x9352515d em28xx_unregister_extension +EXPORT_SYMBOL drivers/media/usb/go7007/go7007 0x2d8f4379 go7007_snd_remove +EXPORT_SYMBOL drivers/media/usb/go7007/go7007 0x56258e48 go7007_snd_init +EXPORT_SYMBOL drivers/media/usb/go7007/go7007 0x7e19ee5a go7007_alloc +EXPORT_SYMBOL drivers/media/usb/go7007/go7007 0x823ef505 go7007_register_encoder +EXPORT_SYMBOL drivers/media/usb/go7007/go7007 0xb85e73a3 go7007_read_addr +EXPORT_SYMBOL drivers/media/usb/go7007/go7007 0xcc535efd go7007_update_board +EXPORT_SYMBOL drivers/media/usb/go7007/go7007 0xd19fd340 go7007_read_interrupt +EXPORT_SYMBOL drivers/media/usb/go7007/go7007 0xd343f972 go7007_parse_video_stream +EXPORT_SYMBOL drivers/media/usb/go7007/go7007 0xe7b4ae98 go7007_boot_encoder +EXPORT_SYMBOL drivers/media/usb/gspca/gspca_main 0x07d4fea8 gspca_frame_add +EXPORT_SYMBOL drivers/media/usb/gspca/gspca_main 0x36c94c7b gspca_resume +EXPORT_SYMBOL drivers/media/usb/gspca/gspca_main 0x47906ca2 gspca_dev_probe2 +EXPORT_SYMBOL drivers/media/usb/gspca/gspca_main 0x4ed012b9 gspca_suspend +EXPORT_SYMBOL drivers/media/usb/gspca/gspca_main 0x5c21a2f8 gspca_dev_probe +EXPORT_SYMBOL drivers/media/usb/gspca/gspca_main 0x5d143855 gspca_coarse_grained_expo_autogain +EXPORT_SYMBOL drivers/media/usb/gspca/gspca_main 0x9670af2c gspca_debug +EXPORT_SYMBOL drivers/media/usb/gspca/gspca_main 0xb85ff01e gspca_disconnect +EXPORT_SYMBOL drivers/media/usb/gspca/gspca_main 0xd9f5719c gspca_expo_autogain +EXPORT_SYMBOL drivers/media/usb/tm6000/tm6000 0x11eef93e tm6000_init_digital_mode +EXPORT_SYMBOL drivers/media/usb/tm6000/tm6000 0x2eb8dae7 tm6000_unregister_extension +EXPORT_SYMBOL drivers/media/usb/tm6000/tm6000 0x34fa1c64 tm6000_register_extension +EXPORT_SYMBOL drivers/media/usb/ttusb-dec/ttusbdecfe 0x5de18122 ttusbdecfe_dvbt_attach +EXPORT_SYMBOL drivers/media/usb/ttusb-dec/ttusbdecfe 0x762680e8 ttusbdecfe_dvbs_attach +EXPORT_SYMBOL drivers/media/v4l2-core/v4l2-mem2mem 0x12333c05 v4l2_m2m_mmap +EXPORT_SYMBOL drivers/media/v4l2-core/v4l2-mem2mem 0x459e133f v4l2_m2m_get_curr_priv +EXPORT_SYMBOL drivers/media/v4l2-core/v4l2-mem2mem 0x55cec47c v4l2_m2m_buf_done_and_job_finish +EXPORT_SYMBOL drivers/media/v4l2-core/v4l2-mem2mem 0xbc22e5ee v4l2_m2m_job_finish +EXPORT_SYMBOL drivers/media/v4l2-core/v4l2-mem2mem 0xc2d7d8b0 v4l2_m2m_get_vq +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 0x0985659c v4l2_querymenu +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x0bd008d0 v4l2_async_notifier_register +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x0cb48b9a v4l2_clk_unregister +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x0d0d361f v4l2_ctrl_request_setup +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x0f0f6ea7 v4l2_ctrl_new_fwnode_properties +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 0x1869e662 video_unregister_device +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x18c4b834 v4l2_try_ext_ctrls +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x1a46f8fc __video_register_device +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x21a47c3a v4l2_ctrl_new_std_menu_items +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x2225d97c v4l2_clk_get +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x2342f1ae v4l2_prio_open +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x2640e13a v4l2_query_ext_ctrl +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x28b12cc9 v4l2_format_info +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x2a99db6d v4l2_async_register_subdev +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x2abd109c v4l2_subdev_init +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x2c0ba195 v4l2_clk_set_rate +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x2dd4d447 v4l2_clk_enable +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x2e273a13 v4l2_clk_disable +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 0x37b7634c v4l2_ctrl_poll +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x3973be84 v4l2_ctrl_new_std_compound +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x3adbd595 v4l2_field_names +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x3bdd0f94 v4l2_prio_change +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x407b0512 v4l2_ctrl_auto_cluster +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x43662fd0 v4l2_clk_put +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x437f8087 v4l2_ctrl_activate +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x48b7ecc2 video_device_alloc +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x4c5eb075 v4l2_clk_unregister_fixed +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x4c687b95 v4l2_ctrl_log_status +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x5cc0c991 v4l2_ctrl_sub_ev_ops +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x5d057f42 __v4l2_ctrl_s_ctrl_string +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x60ad901c v4l2_ctrl_g_ctrl_int64 +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x63b821ec v4l2_clk_register +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x693868fd video_ioctl2 +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x6f9fe565 v4l2_s_ctrl +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x758ea40b v4l2_clk_get_rate +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x799a82cf v4l2_ctrl_handler_log_status +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x7acfc0d2 v4l2_ctrl_g_ctrl +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x8106095a v4l2_prio_max +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x8280534c v4l2_ctrl_fill +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x82b4e428 v4l2_ctrl_cluster +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x89e3897d v4l2_ctrl_query_fill +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x8bcf6b8b v4l2_s_ext_ctrls +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x8c40fd83 v4l2_ctrl_new_std_menu +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x8f4f76d0 v4l2_ctrl_subscribe_event +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x9369959d v4l2_ctrl_handler_free +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x95d64edd v4l2_ctrl_subdev_subscribe_event +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x96fecd28 v4l2_ctrl_new_custom +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x9ca24ad6 __v4l2_ctrl_grab +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xa0462f31 v4l2_ctrl_subdev_log_status +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xa1826efc v4l2_async_notifier_init +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xa31cd7ff v4l2_ctrl_new_std +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xa41f47fe v4l2_g_ext_ctrls +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xa43341c7 v4l2_ctrl_handler_init_class +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xa47a8a43 v4l2_ctrl_handler_setup +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xa7513af1 __v4l2_ctrl_s_ctrl_compound +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xab1d7ad7 __v4l2_ctrl_s_ctrl +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xb6e5b5e3 v4l2_ctrl_notify +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xb77b0159 v4l2_prio_init +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xb9e799f5 v4l2_ctrl_radio_filter +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xbc5671dc v4l_printk_ioctl +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xbe321bb2 video_devdata +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xbe839978 v4l2_ctrl_add_handler +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xc74756dc v4l2_async_unregister_subdev +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xc910f531 video_device_release_empty +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xcda04a5b v4l2_prio_close +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xd00b5cbb v4l2_ctrl_find +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xd16d9c01 v4l2_ctrl_get_int_menu +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xd198a41f v4l2_g_ctrl +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xd25a259c v4l2_subdev_call_wrappers +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xd2acb76a v4l2_ctrl_new_int_menu +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xdbf277e0 __v4l2_clk_register_fixed +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xde532c92 v4l2_async_notifier_unregister +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xe2b92059 v4l2_video_std_construct +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xed4977f7 __v4l2_ctrl_modify_range +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xf2f3beb3 v4l2_ctrl_request_complete +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 0xf6775f77 __v4l2_ctrl_s_ctrl_int64 +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xf76b69e2 v4l2_async_subdev_notifier_register +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xf775f214 video_device_release +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xfd72adb2 v4l2_queryctrl +EXPORT_SYMBOL drivers/memstick/core/memstick 0x38f0f2cc memstick_set_rw_addr +EXPORT_SYMBOL drivers/memstick/core/memstick 0x45523046 memstick_new_req +EXPORT_SYMBOL drivers/memstick/core/memstick 0x456fa6b0 memstick_remove_host +EXPORT_SYMBOL drivers/memstick/core/memstick 0x4a4e5778 memstick_init_req_sg +EXPORT_SYMBOL drivers/memstick/core/memstick 0x4d290b08 memstick_register_driver +EXPORT_SYMBOL drivers/memstick/core/memstick 0x6727b01e memstick_next_req +EXPORT_SYMBOL drivers/memstick/core/memstick 0x8bebe9f5 memstick_resume_host +EXPORT_SYMBOL drivers/memstick/core/memstick 0x8ea66818 memstick_suspend_host +EXPORT_SYMBOL drivers/memstick/core/memstick 0x8f3898b9 memstick_detect_change +EXPORT_SYMBOL drivers/memstick/core/memstick 0xa8bda46f memstick_alloc_host +EXPORT_SYMBOL drivers/memstick/core/memstick 0xae50437c memstick_init_req +EXPORT_SYMBOL drivers/memstick/core/memstick 0xaf82f037 memstick_free_host +EXPORT_SYMBOL drivers/memstick/core/memstick 0xc5cf6868 memstick_unregister_driver +EXPORT_SYMBOL drivers/memstick/core/memstick 0xe493e41b memstick_add_host +EXPORT_SYMBOL drivers/memstick/host/r592 0x52f1b23b memstick_debug_get_tpc_name +EXPORT_SYMBOL drivers/message/fusion/mptbase 0x0741d10d mpt_put_msg_frame_hi_pri +EXPORT_SYMBOL drivers/message/fusion/mptbase 0x0a59f620 mpt_free_fw_memory +EXPORT_SYMBOL drivers/message/fusion/mptbase 0x16ad9368 mpt_HardResetHandler +EXPORT_SYMBOL drivers/message/fusion/mptbase 0x246b50d1 mpt_Soft_Hard_ResetHandler +EXPORT_SYMBOL drivers/message/fusion/mptbase 0x2864d08e mpt_event_register +EXPORT_SYMBOL drivers/message/fusion/mptbase 0x2e5c883a mpt_attach +EXPORT_SYMBOL drivers/message/fusion/mptbase 0x367af492 mpt_verify_adapter +EXPORT_SYMBOL drivers/message/fusion/mptbase 0x38b044f4 mpt_put_msg_frame +EXPORT_SYMBOL drivers/message/fusion/mptbase 0x4325f8bb mpt_raid_phys_disk_pg0 +EXPORT_SYMBOL drivers/message/fusion/mptbase 0x45c5c511 mpt_findImVolumes +EXPORT_SYMBOL drivers/message/fusion/mptbase 0x502108d0 mpt_fwfault_debug +EXPORT_SYMBOL drivers/message/fusion/mptbase 0x54e9db83 mpt_GetIocState +EXPORT_SYMBOL drivers/message/fusion/mptbase 0x59f82724 mpt_config +EXPORT_SYMBOL drivers/message/fusion/mptbase 0x5c63ea3a mpt_suspend +EXPORT_SYMBOL drivers/message/fusion/mptbase 0x5d25602a mpt_free_msg_frame +EXPORT_SYMBOL drivers/message/fusion/mptbase 0x610b257e mpt_reset_deregister +EXPORT_SYMBOL drivers/message/fusion/mptbase 0x69995e63 mpt_alloc_fw_memory +EXPORT_SYMBOL drivers/message/fusion/mptbase 0x6be9866c mptbase_sas_persist_operation +EXPORT_SYMBOL drivers/message/fusion/mptbase 0x74a0134a mpt_device_driver_deregister +EXPORT_SYMBOL drivers/message/fusion/mptbase 0x7a1bc080 mpt_send_handshake_request +EXPORT_SYMBOL drivers/message/fusion/mptbase 0x8dca0ae9 mpt_resume +EXPORT_SYMBOL drivers/message/fusion/mptbase 0x981efe92 mpt_deregister +EXPORT_SYMBOL drivers/message/fusion/mptbase 0x9dd04b48 mpt_reset_register +EXPORT_SYMBOL drivers/message/fusion/mptbase 0xa0a88b13 mpt_device_driver_register +EXPORT_SYMBOL drivers/message/fusion/mptbase 0xa78a7ed8 mpt_print_ioc_summary +EXPORT_SYMBOL drivers/message/fusion/mptbase 0xa7c12359 mpt_detach +EXPORT_SYMBOL drivers/message/fusion/mptbase 0xc16c1c21 mpt_halt_firmware +EXPORT_SYMBOL drivers/message/fusion/mptbase 0xc8ae715c mpt_set_taskmgmt_in_progress_flag +EXPORT_SYMBOL drivers/message/fusion/mptbase 0xd9ea1af6 mpt_raid_phys_disk_pg1 +EXPORT_SYMBOL drivers/message/fusion/mptbase 0xdd805159 ioc_list +EXPORT_SYMBOL drivers/message/fusion/mptbase 0xe6c1e126 mpt_event_deregister +EXPORT_SYMBOL drivers/message/fusion/mptbase 0xe9a3c016 mpt_raid_phys_disk_get_num_paths +EXPORT_SYMBOL drivers/message/fusion/mptbase 0xed3603bb mpt_register +EXPORT_SYMBOL drivers/message/fusion/mptbase 0xefa3ea0f mpt_clear_taskmgmt_in_progress_flag +EXPORT_SYMBOL drivers/message/fusion/mptbase 0xfa7a3663 mpt_get_msg_frame +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0x0e6920da mptscsih_slave_destroy +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0x12b1134c mptscsih_bus_reset +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0x19d23b97 mptscsih_slave_configure +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0x24df1794 mptscsih_bios_param +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0x2da17a64 mptscsih_raid_id_to_num +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0x2ecfb1ce mptscsih_host_attrs +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0x3a544e1a mptscsih_change_queue_depth +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0x40d808fe mptscsih_is_phys_disk +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0x5a4355bd mptscsih_taskmgmt_complete +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0x5f881c6b mptscsih_taskmgmt_response_code +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0x6920c9b2 mptscsih_event_process +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0x7b246901 mptscsih_qcmd +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0x87d4b603 mptscsih_resume +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0x8f8de9a6 mptscsih_ioc_reset +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0x8fb0ad0c mptscsih_scandv_complete +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0x9dcfc721 mptscsih_suspend +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0x9df6a50e mptscsih_host_reset +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0x9ee59f47 mptscsih_show_info +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0xa33d1042 mptscsih_shutdown +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0xa833f522 mptscsih_flush_running_cmds +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0xd5369db8 mptscsih_dev_reset +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0xdad6387b mptscsih_get_scsi_lookup +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0xdb2fec5c mptscsih_io_done +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0xdd713710 mptscsih_remove +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0xdee00dbc mptscsih_abort +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0xdfd8ea23 mptscsih_info +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0xe698eec2 mptscsih_IssueTaskMgmt +EXPORT_SYMBOL drivers/mfd/axp20x 0x1192f320 axp20x_match_device +EXPORT_SYMBOL drivers/mfd/axp20x 0x1fd041b7 axp20x_device_probe +EXPORT_SYMBOL drivers/mfd/axp20x 0xb11d9faf axp20x_device_remove +EXPORT_SYMBOL drivers/mfd/dln2 0x1c3c0c05 dln2_unregister_event_cb +EXPORT_SYMBOL drivers/mfd/dln2 0x28a4603c dln2_register_event_cb +EXPORT_SYMBOL drivers/mfd/dln2 0x87794209 dln2_transfer +EXPORT_SYMBOL drivers/mfd/htc-pasic3 0xc62da070 pasic3_read_register +EXPORT_SYMBOL drivers/mfd/htc-pasic3 0xfdf44854 pasic3_write_register +EXPORT_SYMBOL drivers/mfd/mc13xxx-core 0x0eae97bf mc13xxx_get_flags +EXPORT_SYMBOL drivers/mfd/mc13xxx-core 0x63bfe833 mc13xxx_reg_write +EXPORT_SYMBOL drivers/mfd/mc13xxx-core 0x73b2f37e mc13xxx_reg_read +EXPORT_SYMBOL drivers/mfd/mc13xxx-core 0x73ccc8f9 mc13xxx_unlock +EXPORT_SYMBOL drivers/mfd/mc13xxx-core 0x7f44eca7 mc13xxx_irq_mask +EXPORT_SYMBOL drivers/mfd/mc13xxx-core 0x7fee4d48 mc13xxx_irq_free +EXPORT_SYMBOL drivers/mfd/mc13xxx-core 0x93e458c5 mc13xxx_reg_rmw +EXPORT_SYMBOL drivers/mfd/mc13xxx-core 0xa6a3f735 mc13xxx_lock +EXPORT_SYMBOL drivers/mfd/mc13xxx-core 0xaafc5724 mc13xxx_irq_status +EXPORT_SYMBOL drivers/mfd/mc13xxx-core 0xb865b73c mc13xxx_irq_request +EXPORT_SYMBOL drivers/mfd/mc13xxx-core 0xd264f6b2 mc13xxx_irq_unmask +EXPORT_SYMBOL drivers/mfd/qcom_rpm 0xd520f912 qcom_rpm_write +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 0x2db0d807 wm8994_irq_init +EXPORT_SYMBOL drivers/mfd/wm8994 0x48488a1f wm8958_regmap_config +EXPORT_SYMBOL drivers/mfd/wm8994 0x577a7326 wm8994_irq_exit +EXPORT_SYMBOL drivers/mfd/wm8994 0x7a723186 wm8994_regmap_config +EXPORT_SYMBOL drivers/mfd/wm8994 0x92495334 wm8994_base_regmap_config +EXPORT_SYMBOL drivers/mfd/wm8994 0xd72a8832 wm1811_regmap_config +EXPORT_SYMBOL drivers/misc/ad525x_dpot 0x0288a04b ad_dpot_remove +EXPORT_SYMBOL drivers/misc/ad525x_dpot 0x543756de ad_dpot_probe +EXPORT_SYMBOL drivers/misc/altera-stapl/altera-stapl 0x5bafa76e altera_init +EXPORT_SYMBOL drivers/misc/c2port/core 0x6bb349fb c2port_device_register +EXPORT_SYMBOL drivers/misc/c2port/core 0x8a2d5cfa c2port_device_unregister +EXPORT_SYMBOL drivers/misc/tifm_core 0x01664d72 tifm_eject +EXPORT_SYMBOL drivers/misc/tifm_core 0x0ffb277f tifm_queue_work +EXPORT_SYMBOL drivers/misc/tifm_core 0x1f8cb167 tifm_remove_adapter +EXPORT_SYMBOL drivers/misc/tifm_core 0x309aeb1b tifm_add_adapter +EXPORT_SYMBOL drivers/misc/tifm_core 0x5d1ec3a3 tifm_alloc_adapter +EXPORT_SYMBOL drivers/misc/tifm_core 0x818f1157 tifm_unregister_driver +EXPORT_SYMBOL drivers/misc/tifm_core 0x8b23d3e3 tifm_unmap_sg +EXPORT_SYMBOL drivers/misc/tifm_core 0x9b1cb54d tifm_map_sg +EXPORT_SYMBOL drivers/misc/tifm_core 0xa2da2050 tifm_register_driver +EXPORT_SYMBOL drivers/misc/tifm_core 0xb4b6a60e tifm_alloc_device +EXPORT_SYMBOL drivers/misc/tifm_core 0xc9d78d94 tifm_free_device +EXPORT_SYMBOL drivers/misc/tifm_core 0xd287d9b4 tifm_free_adapter +EXPORT_SYMBOL drivers/misc/tifm_core 0xeafedd2b tifm_has_ms_pif +EXPORT_SYMBOL drivers/mmc/host/cqhci 0x4cbca3c7 cqhci_pltfm_init +EXPORT_SYMBOL drivers/mmc/host/cqhci 0x529f1cad cqhci_deactivate +EXPORT_SYMBOL drivers/mmc/host/cqhci 0x9237b288 cqhci_irq +EXPORT_SYMBOL drivers/mmc/host/cqhci 0xad80bbc9 cqhci_init +EXPORT_SYMBOL drivers/mmc/host/cqhci 0xed352920 cqhci_resume +EXPORT_SYMBOL drivers/mmc/host/dw_mmc 0x1f587e25 dw_mci_probe +EXPORT_SYMBOL drivers/mmc/host/dw_mmc 0x8d86cf37 dw_mci_runtime_resume +EXPORT_SYMBOL drivers/mmc/host/dw_mmc 0xa8e01f6c dw_mci_runtime_suspend +EXPORT_SYMBOL drivers/mmc/host/dw_mmc 0xfa487642 dw_mci_remove +EXPORT_SYMBOL drivers/mmc/host/of_mmc_spi 0x350b0c72 mmc_spi_get_pdata +EXPORT_SYMBOL drivers/mmc/host/of_mmc_spi 0xfea0e89d mmc_spi_put_pdata +EXPORT_SYMBOL drivers/mtd/chips/cfi_util 0x1efd24da cfi_varsize_frob +EXPORT_SYMBOL drivers/mtd/chips/cfi_util 0x3a3bee3c cfi_fixup +EXPORT_SYMBOL drivers/mtd/chips/cfi_util 0x712ad471 cfi_read_pri +EXPORT_SYMBOL drivers/mtd/chips/cfi_util 0x76ea3155 cfi_build_cmd +EXPORT_SYMBOL drivers/mtd/chips/cfi_util 0x811733ff cfi_merge_status +EXPORT_SYMBOL drivers/mtd/chips/cfi_util 0x9efb0d9f cfi_build_cmd_addr +EXPORT_SYMBOL drivers/mtd/chips/cfi_util 0xef6c7378 cfi_send_gen_cmd +EXPORT_SYMBOL drivers/mtd/chips/cfi_util 0xff9fa623 cfi_udelay +EXPORT_SYMBOL drivers/mtd/chips/chipreg 0x2eea5bb9 unregister_mtd_chip_driver +EXPORT_SYMBOL drivers/mtd/chips/chipreg 0x2f9ae113 map_destroy +EXPORT_SYMBOL drivers/mtd/chips/chipreg 0x474c4f89 do_map_probe +EXPORT_SYMBOL drivers/mtd/chips/chipreg 0xea37f6e8 register_mtd_chip_driver +EXPORT_SYMBOL drivers/mtd/chips/gen_probe 0x29daf1df mtd_do_chip_probe +EXPORT_SYMBOL drivers/mtd/lpddr/lpddr_cmds 0xb982739c lpddr_cmdset +EXPORT_SYMBOL drivers/mtd/maps/map_funcs 0xc946c3cb simple_map_init +EXPORT_SYMBOL drivers/mtd/mtd 0xd2910d51 mtd_concat_create +EXPORT_SYMBOL drivers/mtd/mtd 0xe24cac31 mtd_concat_destroy +EXPORT_SYMBOL drivers/mtd/nand/onenand/onenand 0xac2c6c42 onenand_addr +EXPORT_SYMBOL drivers/mtd/nand/onenand/onenand 0xba525f87 flexonenand_region +EXPORT_SYMBOL drivers/mtd/nand/raw/denali 0x30db096f denali_calc_ecc_bytes +EXPORT_SYMBOL drivers/mtd/nand/raw/denali 0xbfa5fe6e denali_remove +EXPORT_SYMBOL drivers/mtd/nand/raw/denali 0xc64da8f5 denali_init +EXPORT_SYMBOL drivers/mtd/nand/raw/mtk_ecc 0x102603bc mtk_ecc_get_parity_bits +EXPORT_SYMBOL drivers/mtd/nand/raw/mtk_ecc 0x5437e775 mtk_ecc_disable +EXPORT_SYMBOL drivers/mtd/nand/raw/mtk_ecc 0x5de55d81 mtk_ecc_get_stats +EXPORT_SYMBOL drivers/mtd/nand/raw/mtk_ecc 0x6df58afb mtk_ecc_release +EXPORT_SYMBOL drivers/mtd/nand/raw/mtk_ecc 0x76e53683 mtk_ecc_wait_done +EXPORT_SYMBOL drivers/mtd/nand/raw/mtk_ecc 0x8dcc87d2 mtk_ecc_enable +EXPORT_SYMBOL drivers/mtd/nand/raw/mtk_ecc 0xa9b0e7f6 of_mtk_ecc_get +EXPORT_SYMBOL drivers/mtd/nand/raw/mtk_ecc 0xda64ef4a mtk_ecc_adjust_strength +EXPORT_SYMBOL drivers/mtd/nand/raw/mtk_ecc 0xec8b9207 mtk_ecc_encode +EXPORT_SYMBOL drivers/mtd/nand/raw/nand 0x07107c51 nand_read_page_raw +EXPORT_SYMBOL drivers/mtd/nand/raw/nand 0x0b6a7599 nand_bch_init +EXPORT_SYMBOL drivers/mtd/nand/raw/nand 0x1113c3af nand_scan_with_ids +EXPORT_SYMBOL drivers/mtd/nand/raw/nand 0x24f85cb6 nand_bch_calculate_ecc +EXPORT_SYMBOL drivers/mtd/nand/raw/nand 0x389eb985 nand_create_bbt +EXPORT_SYMBOL drivers/mtd/nand/raw/nand 0x70097aa0 nand_bch_free +EXPORT_SYMBOL drivers/mtd/nand/raw/nand 0x7286eabe 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 0x941feb9c nand_write_oob_std +EXPORT_SYMBOL drivers/mtd/nand/raw/nand 0x9ff1edde nand_bch_correct_data +EXPORT_SYMBOL drivers/mtd/nand/raw/nand 0xc70a3069 nand_monolithic_write_page_raw +EXPORT_SYMBOL drivers/mtd/nand/raw/nand 0xf22ae84e nand_read_oob_std +EXPORT_SYMBOL drivers/mtd/nand/raw/nand 0xfb7a91d7 nand_write_page_raw +EXPORT_SYMBOL drivers/mtd/nand/raw/nand 0xfd9a9ce3 nand_get_set_features_notsupp +EXPORT_SYMBOL drivers/mtd/nand/raw/nand_ecc 0x793cf888 nand_correct_data +EXPORT_SYMBOL drivers/mtd/nand/raw/nand_ecc 0xa43d1c72 __nand_correct_data +EXPORT_SYMBOL drivers/mtd/nand/raw/nand_ecc 0xb636dd73 __nand_calculate_ecc +EXPORT_SYMBOL drivers/mtd/nand/raw/nand_ecc 0xd4bc34f5 nand_calculate_ecc +EXPORT_SYMBOL drivers/net/arcnet/arcnet 0x02b0fcdf arcnet_open +EXPORT_SYMBOL drivers/net/arcnet/arcnet 0x371edad9 alloc_arcdev +EXPORT_SYMBOL drivers/net/arcnet/arcnet 0x3c5711aa arc_proto_default +EXPORT_SYMBOL drivers/net/arcnet/arcnet 0x51d1f61d arcnet_timeout +EXPORT_SYMBOL drivers/net/arcnet/arcnet 0x6534792a arcnet_debug +EXPORT_SYMBOL drivers/net/arcnet/arcnet 0x7609a365 arcnet_send_packet +EXPORT_SYMBOL drivers/net/arcnet/arcnet 0x78c885ec arc_bcast_proto +EXPORT_SYMBOL drivers/net/arcnet/arcnet 0xccd3bca0 arcnet_unregister_proto +EXPORT_SYMBOL drivers/net/arcnet/arcnet 0xcdea8b70 arc_proto_map +EXPORT_SYMBOL drivers/net/arcnet/arcnet 0xea985629 arc_raw_proto +EXPORT_SYMBOL drivers/net/arcnet/arcnet 0xecb730b0 arcnet_interrupt +EXPORT_SYMBOL drivers/net/arcnet/arcnet 0xef7a0a22 arcnet_close +EXPORT_SYMBOL drivers/net/arcnet/com20020 0x083c1b45 com20020_found +EXPORT_SYMBOL drivers/net/arcnet/com20020 0x92ac37cd com20020_check +EXPORT_SYMBOL drivers/net/arcnet/com20020 0x9a1de4c0 com20020_netdev_ops +EXPORT_SYMBOL drivers/net/dsa/b53/b53_common 0x070f4ccc b53_br_egress_floods +EXPORT_SYMBOL drivers/net/dsa/b53/b53_common 0x0c800db7 b53_phylink_mac_link_down +EXPORT_SYMBOL drivers/net/dsa/b53/b53_common 0x11f007d8 b53_imp_vlan_setup +EXPORT_SYMBOL drivers/net/dsa/b53/b53_common 0x17320761 b53_vlan_add +EXPORT_SYMBOL drivers/net/dsa/b53/b53_common 0x193736fb b53_enable_port +EXPORT_SYMBOL drivers/net/dsa/b53/b53_common 0x1942bc21 b53_mirror_del +EXPORT_SYMBOL drivers/net/dsa/b53/b53_common 0x196cd07e b53_eee_enable_set +EXPORT_SYMBOL drivers/net/dsa/b53/b53_common 0x2069fe92 b53_br_leave +EXPORT_SYMBOL drivers/net/dsa/b53/b53_common 0x2081b570 b53_get_ethtool_stats +EXPORT_SYMBOL drivers/net/dsa/b53/b53_common 0x26500b87 b53_set_mac_eee +EXPORT_SYMBOL drivers/net/dsa/b53/b53_common 0x27fe146c b53_phylink_mac_an_restart +EXPORT_SYMBOL drivers/net/dsa/b53/b53_common 0x2d74cf70 b53_fdb_del +EXPORT_SYMBOL drivers/net/dsa/b53/b53_common 0x313833b7 b53_phylink_mac_config +EXPORT_SYMBOL drivers/net/dsa/b53/b53_common 0x31ce94e4 b53_get_tag_protocol +EXPORT_SYMBOL drivers/net/dsa/b53/b53_common 0x33ebccee b53_get_mac_eee +EXPORT_SYMBOL drivers/net/dsa/b53/b53_common 0x38ff5731 b53_configure_vlan +EXPORT_SYMBOL drivers/net/dsa/b53/b53_common 0x3e2fe8f5 b53_mirror_add +EXPORT_SYMBOL drivers/net/dsa/b53/b53_common 0x44216338 b53_fdb_dump +EXPORT_SYMBOL drivers/net/dsa/b53/b53_common 0x44359b23 b53_disable_port +EXPORT_SYMBOL drivers/net/dsa/b53/b53_common 0x6172f5a5 b53_brcm_hdr_setup +EXPORT_SYMBOL drivers/net/dsa/b53/b53_common 0x6378fcb5 b53_vlan_filtering +EXPORT_SYMBOL drivers/net/dsa/b53/b53_common 0x687dd73a b53_switch_register +EXPORT_SYMBOL drivers/net/dsa/b53/b53_common 0x799de7d5 b53_phylink_mac_link_state +EXPORT_SYMBOL drivers/net/dsa/b53/b53_common 0x7a8fb31e b53_vlan_del +EXPORT_SYMBOL drivers/net/dsa/b53/b53_common 0x82a4dd3b b53_eee_init +EXPORT_SYMBOL drivers/net/dsa/b53/b53_common 0x857b57bb b53_mdb_del +EXPORT_SYMBOL drivers/net/dsa/b53/b53_common 0x881e0c2c b53_port_event +EXPORT_SYMBOL drivers/net/dsa/b53/b53_common 0x937cf238 b53_vlan_prepare +EXPORT_SYMBOL drivers/net/dsa/b53/b53_common 0x96b50a14 b53_get_strings +EXPORT_SYMBOL drivers/net/dsa/b53/b53_common 0x9bd4ee2e b53_fdb_add +EXPORT_SYMBOL drivers/net/dsa/b53/b53_common 0xa2202246 b53_switch_alloc +EXPORT_SYMBOL drivers/net/dsa/b53/b53_common 0xbaaaf103 b53_mdb_add +EXPORT_SYMBOL drivers/net/dsa/b53/b53_common 0xbe2d0ba2 b53_phylink_validate +EXPORT_SYMBOL drivers/net/dsa/b53/b53_common 0xc38b0ec7 b53_get_sset_count +EXPORT_SYMBOL drivers/net/dsa/b53/b53_common 0xce2f08b4 b53_switch_detect +EXPORT_SYMBOL drivers/net/dsa/b53/b53_common 0xce429d90 b53_mdb_prepare +EXPORT_SYMBOL drivers/net/dsa/b53/b53_common 0xe37a5e15 b53_br_join +EXPORT_SYMBOL drivers/net/dsa/b53/b53_common 0xe7e5d3ff b53_phylink_mac_link_up +EXPORT_SYMBOL drivers/net/dsa/b53/b53_common 0xed9cbd18 b53_get_ethtool_phy_stats +EXPORT_SYMBOL drivers/net/dsa/b53/b53_common 0xee4cef36 b53_br_fast_age +EXPORT_SYMBOL drivers/net/dsa/b53/b53_common 0xef53927d b53_br_set_stp_state +EXPORT_SYMBOL drivers/net/dsa/b53/b53_serdes 0x0a8d7a10 b53_serdes_an_restart +EXPORT_SYMBOL drivers/net/dsa/b53/b53_serdes 0x28c47a93 b53_serdes_phylink_validate +EXPORT_SYMBOL drivers/net/dsa/b53/b53_serdes 0x393e1256 b53_serdes_config +EXPORT_SYMBOL drivers/net/dsa/b53/b53_serdes 0x3bf9279a b53_serdes_init +EXPORT_SYMBOL drivers/net/dsa/b53/b53_serdes 0x4fed4aa4 b53_serdes_link_state +EXPORT_SYMBOL drivers/net/dsa/b53/b53_serdes 0x7db50828 b53_serdes_link_set +EXPORT_SYMBOL drivers/net/dsa/lan9303-core 0x75b8ee0f lan9303_remove +EXPORT_SYMBOL drivers/net/dsa/lan9303-core 0xada83f40 lan9303_register_set +EXPORT_SYMBOL drivers/net/dsa/lan9303-core 0xcd72ebdb lan9303_probe +EXPORT_SYMBOL drivers/net/dsa/microchip/ksz8795 0xf569282d ksz8795_switch_register +EXPORT_SYMBOL drivers/net/dsa/microchip/ksz9477 0x152a78ea ksz9477_switch_register +EXPORT_SYMBOL drivers/net/dsa/microchip/ksz_common 0x51179f54 ksz_switch_remove +EXPORT_SYMBOL drivers/net/dsa/microchip/ksz_common 0x739a50a7 ksz_switch_alloc +EXPORT_SYMBOL drivers/net/dsa/microchip/ksz_common 0xb1b11ec2 ksz_switch_register +EXPORT_SYMBOL drivers/net/dsa/vitesse-vsc73xx-core 0x6edacdf2 vsc73xx_probe +EXPORT_SYMBOL drivers/net/dsa/vitesse-vsc73xx-core 0x99d242fe vsc73xx_is_addr_valid +EXPORT_SYMBOL drivers/net/dsa/vitesse-vsc73xx-core 0xaaa25324 vsc73xx_remove +EXPORT_SYMBOL drivers/net/ethernet/8390/8390 0x072d9e6e ei_start_xmit +EXPORT_SYMBOL drivers/net/ethernet/8390/8390 0x0a2627b1 ei_poll +EXPORT_SYMBOL drivers/net/ethernet/8390/8390 0x119721ac ei_interrupt +EXPORT_SYMBOL drivers/net/ethernet/8390/8390 0x2d55198c ei_get_stats +EXPORT_SYMBOL drivers/net/ethernet/8390/8390 0x46e04875 NS8390_init +EXPORT_SYMBOL drivers/net/ethernet/8390/8390 0x5273cd39 ei_set_multicast_list +EXPORT_SYMBOL drivers/net/ethernet/8390/8390 0x66447783 ei_netdev_ops +EXPORT_SYMBOL drivers/net/ethernet/8390/8390 0x816edd49 ei_open +EXPORT_SYMBOL drivers/net/ethernet/8390/8390 0xda58c58c ei_close +EXPORT_SYMBOL drivers/net/ethernet/8390/8390 0xf44bd041 __alloc_ei_netdev +EXPORT_SYMBOL drivers/net/ethernet/8390/8390 0xfb8c7efd ei_tx_timeout +EXPORT_SYMBOL drivers/net/ethernet/broadcom/cnic 0x56a93b7c cnic_register_driver +EXPORT_SYMBOL drivers/net/ethernet/broadcom/cnic 0x636af174 cnic_unregister_driver +EXPORT_SYMBOL drivers/net/ethernet/cavium/common/cavium_ptp 0x35e5255d cavium_ptp_put +EXPORT_SYMBOL drivers/net/ethernet/cavium/common/cavium_ptp 0x69bafd0e cavium_ptp_get +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 0x03965f3d cxgb3_ofld_send +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb3/cxgb3 0x0e7b17e0 t3_l2t_send_event +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb3/cxgb3 0x0f487786 cxgb3_unregister_client +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb3/cxgb3 0x270eee5a cxgb3_free_stid +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb3/cxgb3 0x45c536ff cxgb3_free_atid +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb3/cxgb3 0x52727754 cxgb3_alloc_stid +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb3/cxgb3 0x5b3067b1 t3_l2t_send_slow +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb3/cxgb3 0x8c988ec3 cxgb3_alloc_atid +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb3/cxgb3 0x9e655f3f t3_register_cpl_handler +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb3/cxgb3 0xb6c40659 cxgb3_queue_tid_release +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb3/cxgb3 0xc4bc6b48 t3_l2t_get +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb3/cxgb3 0xda3cb685 cxgb3_insert_tid +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb3/cxgb3 0xf3c60c9f cxgb3_remove_tid +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb3/cxgb3 0xf4aee50e cxgb3_register_client +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb3/cxgb3 0xf99f0e18 dev2t3cdev +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb3/cxgb3 0xfcd5d0ca t3_l2e_free +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0x0c005568 cxgb4_port_idx +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0x0d9aa380 cxgb4_read_tpte +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0x1103f31a cxgb4_clip_get +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0x1e27ca74 cxgb4_update_root_dev_clip +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0x229e7120 cxgb4_check_l2t_valid +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0x23717157 cxgb4_l2t_alloc_switching +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0x23eb7bad cxgb4_remove_tid +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0x252510d8 cxgb4_smt_alloc_switching +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0x2739553c cxgb4_immdata_send +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0x2921a8f4 cxgb4_port_chan +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0x2c0380aa t4_cleanup_clip_tbl +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0x2c53ca74 cxgb4_remove_server +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0x2fc7a1dd cxgb4_read_sge_timestamp +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0x312bb4c4 cxgb4_ring_tx_db +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0x31c9e405 cxgb4_free_stid +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0x3dca3bd4 cxgb4_iscsi_init +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0x3fa9a990 cxgb4_reclaim_completed_tx +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0x41a9e147 cxgb4_crypto_send +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0x47d17f85 cxgb4_register_uld +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0x4aabe4a0 cxgb4_sync_txq_pidx +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0x4aec74d3 cxgb4_alloc_atid +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0x4c00847b cxgb4_pktgl_to_skb +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0x5079a70b cxgb4_alloc_stid +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0x50ee5c07 cxgb4_best_aligned_mtu +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0x5194b304 cxgb4_map_skb +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0x52c926c6 cxgb4_create_server_filter +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0x5987337d cxgb4_remove_server_filter +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0x5d23608b cxgb4_l2t_get +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0x676a11a9 cxgb4_unregister_uld +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0x6d1a63cc cxgb4_flush_eq_cache +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0x741383e0 cxgb4_ofld_send +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0x77e0acca cxgb4_dbfifo_count +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0x85373d91 cxgb4_port_viid +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0x86e907f8 cxgb4_get_tcp_stats +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0x883b246b cxgb4_free_atid +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0x9464f1e9 cxgb4_get_srq_entry +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0x94909352 cxgb4_l2t_send +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0x9ddeda2f cxgb4_bar2_sge_qregs +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0xa3953424 cxgb4_create_server +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0xa8db193f cxgb4_smt_release +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0xb99bc426 cxgb4_port_e2cchan +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0xbfd2fc93 cxgb4_clip_release +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0xc003b72f cxgb4_l2t_release +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0xc9dedb3f cxgb4_create_server6 +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0xd45c0ddd cxgb4_alloc_sftid +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0xd69a0294 cxgb4_best_mtu +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0xd72694a8 cxgb4_write_sgl +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0xe830c365 cxgb4_select_ntuple +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0xefe30cee cxgb4_inline_tx_skb +EXPORT_SYMBOL drivers/net/ethernet/chelsio/libcxgb/libcxgb 0x0d30e958 cxgb_find_route6 +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 0x28424721 cxgbi_ppm_ppods_reserve +EXPORT_SYMBOL drivers/net/ethernet/chelsio/libcxgb/libcxgb 0x2f4ed5c9 cxgbi_ppm_make_ppod_hdr +EXPORT_SYMBOL drivers/net/ethernet/chelsio/libcxgb/libcxgb 0x539c63a4 cxgb_find_route +EXPORT_SYMBOL drivers/net/ethernet/chelsio/libcxgb/libcxgb 0x68861b8d cxgbi_ppm_init +EXPORT_SYMBOL drivers/net/ethernet/chelsio/libcxgb/libcxgb 0xb5efbf17 cxgbi_ppm_ppod_release +EXPORT_SYMBOL drivers/net/ethernet/chelsio/libcxgb/libcxgb 0xd748569f cxgbi_ppm_release +EXPORT_SYMBOL drivers/net/ethernet/cisco/enic/enic 0x20f4a045 vnic_dev_get_res_count +EXPORT_SYMBOL drivers/net/ethernet/cisco/enic/enic 0x84169c56 enic_api_devcmd_proxy_by_index +EXPORT_SYMBOL drivers/net/ethernet/cisco/enic/enic 0x9fe89a42 vnic_dev_get_pdev +EXPORT_SYMBOL drivers/net/ethernet/cisco/enic/enic 0xe09deca3 vnic_dev_get_res +EXPORT_SYMBOL drivers/net/ethernet/cisco/enic/enic 0xf000c609 vnic_dev_unregister +EXPORT_SYMBOL drivers/net/ethernet/cisco/enic/enic 0xfd1130a4 vnic_dev_register +EXPORT_SYMBOL drivers/net/ethernet/emulex/benet/be2net 0x4e2e10d2 be_roce_mcc_cmd +EXPORT_SYMBOL drivers/net/ethernet/emulex/benet/be2net 0x98c37831 be_roce_unregister_driver +EXPORT_SYMBOL drivers/net/ethernet/emulex/benet/be2net 0xa46bdb5d be_roce_register_driver +EXPORT_SYMBOL drivers/net/ethernet/freescale/dpaa2/fsl-dpaa2-eth 0x4412391e dpaa2_phc_index +EXPORT_SYMBOL drivers/net/ethernet/freescale/enetc/fsl-enetc-ptp 0x5431a304 enetc_phc_index +EXPORT_SYMBOL drivers/net/ethernet/hisilicon/hns/hnae 0x0a7e445e hnae_get_handle +EXPORT_SYMBOL drivers/net/ethernet/hisilicon/hns/hnae 0x1b626d3f hnae_put_handle +EXPORT_SYMBOL drivers/net/ethernet/hisilicon/hns/hnae 0x6267cd01 hnae_ae_register +EXPORT_SYMBOL drivers/net/ethernet/hisilicon/hns/hnae 0xb1266858 hnae_register_notifier +EXPORT_SYMBOL drivers/net/ethernet/hisilicon/hns/hnae 0xb2a7ef91 hnae_ae_unregister +EXPORT_SYMBOL drivers/net/ethernet/hisilicon/hns/hnae 0xcd2b07cf hnae_reinit_handle +EXPORT_SYMBOL drivers/net/ethernet/hisilicon/hns/hnae 0xdf24adef hnae_unregister_notifier +EXPORT_SYMBOL drivers/net/ethernet/hisilicon/hns/hns_dsaf 0xfe6d6add hns_dsaf_roce_reset +EXPORT_SYMBOL drivers/net/ethernet/hisilicon/hns3/hnae3 0x2b482502 hnae3_unregister_ae_dev +EXPORT_SYMBOL drivers/net/ethernet/hisilicon/hns3/hnae3 0x4563b97d hnae3_set_client_init_flag +EXPORT_SYMBOL drivers/net/ethernet/hisilicon/hns3/hnae3 0x56fc4e6a hnae3_register_ae_dev +EXPORT_SYMBOL drivers/net/ethernet/hisilicon/hns3/hnae3 0x82911917 hnae3_register_client +EXPORT_SYMBOL drivers/net/ethernet/hisilicon/hns3/hnae3 0xb216c78c hnae3_unregister_ae_algo +EXPORT_SYMBOL drivers/net/ethernet/hisilicon/hns3/hnae3 0xcd15bd77 hnae3_register_ae_algo +EXPORT_SYMBOL drivers/net/ethernet/hisilicon/hns3/hnae3 0xff25727f hnae3_unregister_client +EXPORT_SYMBOL drivers/net/ethernet/intel/i40e/i40e 0x2e742831 i40e_unregister_client +EXPORT_SYMBOL drivers/net/ethernet/intel/i40e/i40e 0xe1e6200d i40e_register_client +EXPORT_SYMBOL drivers/net/ethernet/intel/iavf/iavf 0x15721eaf iavf_unregister_client +EXPORT_SYMBOL drivers/net/ethernet/intel/iavf/iavf 0xc9c1983f iavf_register_client +EXPORT_SYMBOL drivers/net/ethernet/marvell/octeontx2/af/octeontx2_mbox 0x2972a9a5 otx2_mbox_destroy +EXPORT_SYMBOL drivers/net/ethernet/marvell/octeontx2/af/octeontx2_mbox 0x3f7a3958 otx2_mbox_busy_poll_for_rsp +EXPORT_SYMBOL drivers/net/ethernet/marvell/octeontx2/af/octeontx2_mbox 0x41620c47 otx2_mbox_reset +EXPORT_SYMBOL drivers/net/ethernet/marvell/octeontx2/af/octeontx2_mbox 0x50fe8a09 otx2_reply_invalid_msg +EXPORT_SYMBOL drivers/net/ethernet/marvell/octeontx2/af/octeontx2_mbox 0x7e09bfc4 otx2_mbox_msg_send +EXPORT_SYMBOL drivers/net/ethernet/marvell/octeontx2/af/octeontx2_mbox 0x89bdedb2 otx2_mbox_get_rsp +EXPORT_SYMBOL drivers/net/ethernet/marvell/octeontx2/af/octeontx2_mbox 0x8bf93ee1 otx2_mbox_alloc_msg_rsp +EXPORT_SYMBOL drivers/net/ethernet/marvell/octeontx2/af/octeontx2_mbox 0x8f772a3f otx2_mbox_id2name +EXPORT_SYMBOL drivers/net/ethernet/marvell/octeontx2/af/octeontx2_mbox 0xa5e79590 otx2_mbox_wait_for_rsp +EXPORT_SYMBOL drivers/net/ethernet/marvell/octeontx2/af/octeontx2_mbox 0xb78ede21 otx2_mbox_nonempty +EXPORT_SYMBOL drivers/net/ethernet/marvell/octeontx2/af/octeontx2_mbox 0xd4293b26 otx2_mbox_check_rsp_msgs +EXPORT_SYMBOL drivers/net/ethernet/marvell/octeontx2/af/octeontx2_mbox 0xdbfd1d17 __otx2_mbox_reset +EXPORT_SYMBOL drivers/net/ethernet/marvell/octeontx2/af/octeontx2_mbox 0xdce6d7cd otx2_mbox_init +EXPORT_SYMBOL drivers/net/ethernet/marvell/octeontx2/nic/octeontx2_nicpf 0x0d8a142e otx2_get_mac_from_af +EXPORT_SYMBOL drivers/net/ethernet/marvell/octeontx2/nic/octeontx2_nicpf 0x1a244414 otx2_tx_timeout +EXPORT_SYMBOL drivers/net/ethernet/marvell/octeontx2/nic/octeontx2_nicpf 0x238f2b3d mbox_handler_npa_lf_alloc +EXPORT_SYMBOL drivers/net/ethernet/marvell/octeontx2/nic/octeontx2_nicpf 0x45e0326f otx2_get_stats64 +EXPORT_SYMBOL drivers/net/ethernet/marvell/octeontx2/nic/octeontx2_nicpf 0x5ca7a443 otx2_open +EXPORT_SYMBOL drivers/net/ethernet/marvell/octeontx2/nic/octeontx2_nicpf 0x5d0dccce otx2_set_real_num_queues +EXPORT_SYMBOL drivers/net/ethernet/marvell/octeontx2/nic/octeontx2_nicpf 0x6cf8ca95 mbox_handler_nix_bp_enable +EXPORT_SYMBOL drivers/net/ethernet/marvell/octeontx2/nic/octeontx2_nicpf 0x74887638 mbox_handler_nix_txsch_alloc +EXPORT_SYMBOL drivers/net/ethernet/marvell/octeontx2/nic/octeontx2_nicpf 0x7ce7d5ea otx2_detach_resources +EXPORT_SYMBOL drivers/net/ethernet/marvell/octeontx2/nic/octeontx2_nicpf 0x8ed9f1af mbox_handler_msix_offset +EXPORT_SYMBOL drivers/net/ethernet/marvell/octeontx2/nic/octeontx2_nicpf 0x8f70c95f otx2_mbox_up_handler_cgx_link_event +EXPORT_SYMBOL drivers/net/ethernet/marvell/octeontx2/nic/octeontx2_nicpf 0x932ea55c otx2_set_mac_address +EXPORT_SYMBOL drivers/net/ethernet/marvell/octeontx2/nic/octeontx2_nicpf 0xd18aace9 otx2_stop +EXPORT_SYMBOL drivers/net/ethernet/marvell/octeontx2/nic/octeontx2_nicpf 0xd7c3c27c otx2_attach_npa_nix +EXPORT_SYMBOL drivers/net/ethernet/marvell/octeontx2/nic/octeontx2_nicpf 0xe3867f1b otx2_sq_append_skb +EXPORT_SYMBOL drivers/net/ethernet/marvell/octeontx2/nic/octeontx2_nicpf 0xedb5feed otx2vf_set_ethtool_ops +EXPORT_SYMBOL drivers/net/ethernet/marvell/octeontx2/nic/octeontx2_nicpf 0xff7fe3df mbox_handler_nix_lf_alloc +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x06df35bb mlx4_ALLOCATE_VPP_get +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x08ff3acb mlx4_is_eq_shared +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x11d60524 mlx4_max_tc +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x1a685553 mlx4_is_eq_vector_valid +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x1d929562 mlx4_get_slave_port_state +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x1fbaca88 mlx4_get_parav_qkey +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x204a4d7e set_and_calc_slave_port_state +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x253f8fcb mlx4_get_slave_pkey_gid_tbl_len +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x2a44e776 mlx4_gen_slaves_port_mgt_ev +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x2bb9f569 mlx4_get_eqs_per_port +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x3599a08f mlx4_SET_PORT_fcs_check +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x3891cc56 mlx4_get_module_info +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x3cbd9e54 mlx4_SET_PORT_qpn_calc +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x4055b5a9 mlx4_SET_PORT_user_mac +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x44f672b4 mlx4_query_diag_counters +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x45a705b2 mlx4_get_slave_node_guid +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x4887f489 mlx4_assign_eq +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x59dde981 mlx4_eq_get_irq +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x5c01ce6e set_phv_bit +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x6051d4f4 mlx4_gen_guid_change_eqe +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x61a5afb9 mlx4_SET_PORT_SCHEDULER +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x68810d28 mlx4_get_cpu_rmap +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x70f3dff4 mlx4_SET_PORT_VXLAN +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x7c59043d mlx4_SET_PORT_user_mtu +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x7cc1f88c mlx4_is_slave_active +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 0x88999e27 mlx4_ALLOCATE_VPP_set +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x89a07642 mlx4_get_roce_gid_from_slave +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x8c754ff3 mlx4_test_async +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x93941e83 mlx4_gen_pkey_eqe +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x9d920db0 mlx4_gen_port_state_change_eqe +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xa1b34e21 mlx4_SET_VPORT_QOS_set +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xa1e34795 mlx4_test_interrupt +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xb0160caa mlx4_release_eq +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xb5c0925f mlx4_sync_pkey_table +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xbd5057b7 get_phv_bit +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xc5319b2f mlx4_SET_PORT_PRIO2TC +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xcee5e84e mlx4_SET_VPORT_QOS_get +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xd7b929d7 mlx4_tunnel_steer_add +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xdac40e00 mlx4_SET_PORT_BEACON +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xe0f50c8b mlx4_get_is_vlan_offload_disabled +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xf7d14712 mlx4_SET_MCAST_FLTR +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xfd09e96b mlx4_put_slave_node_guid +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xff1533d9 mlx4_SET_PORT_general +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xff43906e mlx4_get_slave_from_roce_gid +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x03901d9c mlx5_core_dealloc_pd +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x03c0087e mlx5_cmd_cleanup +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x070a1a4c mlx5_fpga_sbu_conn_create +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x0a24a974 mlx5_core_destroy_tis +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x0a58b354 mlx5_modify_header_alloc +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x0fdcbc0e mlx5_eswitch_vport_match_metadata_enabled +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x1073b404 mlx5_core_attach_mcg +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x122e7aab mlx5_core_modify_cq +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x13313e3b mlx5_fs_add_rx_underlay_qpn +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x13921921 mlx5_core_alloc_pd +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x15f9f523 mlx5_debug_qp_add +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x1cbb0d5a mlx5_cmd_init_async_ctx +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x21610683 mlx5_fpga_get_sbu_caps +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x21b9e851 mlx5_rdma_rn_get_params +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x2606f05d mlx5_notifier_register +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x27fa4d63 __tracepoint_mlx5_fs_del_fg +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x29b08acb mlx5_core_query_rq +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x2f2cf067 mlx5_query_port_ib_proto_oper +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x2ff2a1d5 mlx5_eq_notifier_register +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x318ddd18 mlx5_eswitch_reg_c1_loopback_enabled +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x31ab6f1e mlx5_core_destroy_psv +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x32705594 __tracepoint_mlx5_fs_del_rule +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x32e60ecb mlx5_core_roce_gid_set +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x336b0bbe mlx5_get_flow_namespace +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x3481384a mlx5_core_alloc_transport_domain +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x365c77f4 mlx5_core_query_mkey +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x37651b47 __tracepoint_mlx5_fs_set_fte +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x38d17502 mlx5_core_modify_sq +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x3a047369 mlx5_notifier_unregister +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x3c0b9319 mlx5_cmd_cleanup_async_ctx +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x3db06007 mlx5_core_dealloc_transport_domain +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x3e3737cd mlx5_cmd_alloc_uar +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x3e960390 __tracepoint_mlx5_fw +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x3ea9c13c mlx5_core_modify_tis +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x3fb9179e mlx5_create_auto_grouped_flow_table +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x43c2233b mlx5_packet_reformat_dealloc +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x46150cf1 __tracepoint_mlx5_fs_del_ft +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x471bdef3 mlx5_cmd_free_uar +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x48455564 mlx5_eswitch_get_encap_mode +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x4887b061 mlx5_rl_add_rate +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x4b59bf37 mlx5_eswitch_unregister_vport_reps +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x5216b7ad mlx5_put_uars_page +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x6075cfca mlx5_lag_query_cong_counters +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 0x66caba45 mlx5_eswitch_vport_rep +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x69652713 mlx5_lag_get_roce_netdev +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x6de1abad mlx5_comp_irq_get_affinity_mask +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x72943970 mlx5_cmd_destroy_vport_lag +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x7631c12e mlx5_core_destroy_cq +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x7e7d7140 mlx5_modify_header_dealloc +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x84045880 mlx5_eq_destroy_generic +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x847aa360 mlx5_fpga_sbu_conn_sendmsg +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x87a25e22 __tracepoint_mlx5_fs_add_rule +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x898aec2d mlx5_eq_disable +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x89ba0fc8 mlx5_cmd_set_state +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x8b37a371 mlx5_nic_vport_disable_roce +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x8eeefaa0 __tracepoint_mlx5_fs_add_fg +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x8f01811d mlx5_fpga_mem_read +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x8fd33938 mlx5_rl_is_in_range +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x917145f0 mlx5_cmd_exec_cb +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x922f15c8 mlx5_eq_enable +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x93138d9f mlx5_unregister_interface +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x96eb2c99 mlx5_fc_id +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x97890ecd mlx5_fc_create +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x9884865a mlx5_del_flow_rules +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x98ab7cc6 mlx5_destroy_flow_table +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x9901c988 mlx5_lag_is_sriov +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x995a88c9 mlx5_eq_get_eqe +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x99ce1868 mlx5_lag_is_roce +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x9b41711a mlx5_get_fdb_sub_ns +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xa16004ec mlx5_cmd_exec_polling +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xa2974f9e mlx5_core_destroy_mkey +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xa2af7655 mlx5_fpga_mem_write +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xa2f0076e mlx5_core_create_tir +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xa47beda7 mlx5_alloc_bfreg +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xa541a2a2 mlx5_rl_remove_rate_raw +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xaa4eeb32 mlx5_core_create_tis +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xae9ea383 __tracepoint_mlx5_fs_del_fte +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xb1767fc9 mlx5_cmd_exec +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xb1cd743b mlx5_get_uars_page +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xb6fe76a0 mlx5_rl_remove_rate +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xbb144c76 mlx5_qp_debugfs_init +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xbdd5e183 mlx5_core_destroy_rq +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xbeba37d4 mlx5_register_interface +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xc1416340 mlx5_cmd_init +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xc1525421 mlx5_eswitch_get_proto_dev +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xc7446428 mlx5_core_create_rqt +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xc75c7023 mlx5_eswitch_add_send_to_vport_rule +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xc79e4503 mlx5_packet_reformat_alloc +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xc99d6669 mlx5_fc_query +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xc9b46be2 mlx5_core_query_vendor_id +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xcc3d6cfe mlx5_qp_debugfs_cleanup +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xcd48e4c5 mlx5_eswitch_register_vport_reps +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xcefd390d mlx5_fs_remove_rx_underlay_qpn +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xd0332f52 mlx5_rl_add_rate_raw +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xd227f47f mlx5_vector2eqn +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xd582eaf7 mlx5_free_bfreg +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xd609904c mlx5_eswitch_get_vport_metadata_for_match +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xd6871b4a mlx5_core_query_cq +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xd89d5b4d mlx5_add_flow_rules +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xda732a65 mlx5_lag_is_active +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xdd45b06a mlx5_eq_create_generic +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xe172df34 mlx5_debug_qp_remove +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xe419ac30 mlx5_core_create_mkey +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xe5990c36 mlx5_core_detach_mcg +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xe798e141 mlx5_core_destroy_tir +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xe7f8e72f mlx5_core_create_cq +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xe8c076b9 mlx5_core_create_rq +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xeb00044f mlx5_core_modify_rq +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xeb1b96da mlx5_eq_notifier_unregister +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xec775ae3 mlx5_core_destroy_rqt +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xef01bb32 __tracepoint_mlx5_fs_add_ft +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xef212ce7 mlx5_fpga_sbu_conn_destroy +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xf120e368 mlx5_create_lag_demux_flow_table +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xf121c96c mlx5_cmd_create_vport_lag +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xf1775653 mlx5_lag_get_slave_port +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xf1d5447a mlx5_comp_vectors_count +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xf4218f85 mlx5_debugfs_root +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xf449079d mlx5_buf_alloc +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xf4939d78 mlx5_eswitch_uplink_get_proto_dev +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xf69f7fe6 mlx5_core_create_psv +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xf6dbd3da mlx5_core_modify_cq_moderation +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xf88c4ff9 mlx5_fc_destroy +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xfa61fb86 mlx5_core_query_sq +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xff8ad52f mlx5_eq_update_ci +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxfw/mlxfw 0xf466232f mlxfw_firmware_flash +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0x02998acf mlxsw_afa_block_append_counter +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 0x07abcc0c mlxsw_afa_block_append_trap +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0x0ca34ccf mlxsw_core_max_ports +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0x0e2b5842 mlxsw_afa_block_append_vlan_modify +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0x0e81c09c mlxsw_afk_destroy +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0x15801382 mlxsw_afk_key_info_put +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0x18afb0e1 mlxsw_core_driver_unregister +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0x190ce04a mlxsw_afa_block_append_mirror +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 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 0x2a9788df mlxsw_core_trap_unregister +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0x2c68ced3 mlxsw_core_read_frc_h +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0x2decde87 mlxsw_core_fw_flash_start +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0x2f2c4887 mlxsw_afa_block_append_qos_switch_prio +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0x35ba2254 mlxsw_afk_values_add_u32 +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0x3e453c28 mlxsw_core_ptp_transmitted +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0x3f123442 mlxsw_core_kvd_sizes_get +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0x41055a45 mlxsw_core_event_listener_unregister +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 0x47fd6eee mlxsw_core_fw_flash_end +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0x484489a4 mlxsw_cmd_exec +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0x4a6ed376 mlxsw_core_port_fini +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0x5cf3dd79 mlxsw_core_bus_device_unregister +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0x5d6fed5e mlxsw_core_rx_listener_register +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0x5df93d59 mlxsw_core_driver_register +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0x5ff17b5c mlxsw_afa_block_destroy +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0x615ef5fc mlxsw_afa_block_append_qos_dscp +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 0x65e16da4 mlxsw_afk_key_info_get +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0x692ac04e mlxsw_afk_create +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0x71e1d813 mlxsw_core_port_clear +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0x73cf1d7a mlxsw_core_res_get +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0x749556a2 mlxsw_afk_key_info_subset +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0x76a65e3b mlxsw_core_port_init +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0x77768221 mlxsw_core_module_max_width +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0x77d83398 mlxsw_core_read_frc_l +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0x8039e2aa mlxsw_core_skb_receive +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 0x858c30d0 mlxsw_afa_block_create +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0x8854d198 mlxsw_reg_write +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0x8ba5fa7e mlxsw_core_lag_mapping_set +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0x902c3533 mlxsw_core_schedule_dw +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0x963cfb6a mlxsw_core_resources_query +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0x995bb9bc mlxsw_core_trap_register +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 0x9e41f494 mlxsw_afk_encode +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0xa1264ecf mlxsw_core_bus_device_register +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0xa200c248 mlxsw_env_get_module_eeprom +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0xa3d0d2b6 mlxsw_afa_block_append_fwd +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0xa7765e88 mlxsw_reg_query +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0xa7ccb62a mlxsw_afa_block_append_qos_dsfield +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0xae1ce405 mlxsw_core_rx_listener_unregister +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0xae6c1973 mlxsw_core_port_devlink_port_get +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0xb0717797 mlxsw_afa_block_append_fid_set +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0xb2f24677 mlxsw_core_res_valid +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0xb5e762fa mlxsw_afk_values_add_buf +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 0xba05b3b0 mlxsw_core_emad_string_tlv_enable +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0xbc222a8d mlxsw_afk_clear +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0xbe82d6cc mlxsw_env_get_module_info +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0xbfb7df3c mlxsw_core_driver_priv +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0xbfd01f33 mlxsw_core_port_ib_set +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0xc364d0ac mlxsw_core_trap_state_set +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0xc9c2e4cc mlxsw_core_lag_mapping_clear +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 0xcd9a40a4 mlxsw_afa_block_append_drop +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0xd1a82f0b mlxsw_core_lag_mapping_get +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0xd252e62d mlxsw_core_skb_transmit_busy +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 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 0xdeb1dc2e mlxsw_afa_block_first_kvdl_index +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0xdeff4950 mlxsw_core_event_listener_register +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0xe16986dd mlxsw_afa_block_activity_get +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0xecab212a mlxsw_afa_cookie_lookup +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0xeeef4014 mlxsw_afa_create +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0xf16a0f15 mlxsw_core_port_eth_set +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0xf2ca3bae mlxsw_core_res_query_enabled +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0xf41cd62b mlxsw_core_skb_transmit +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0xf4909bea mlxsw_core_port_type_get +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0xf7fbba9f mlxsw_afa_block_append_qos_ecn +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0xff007c25 mlxsw_core_cpu_port_fini +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_i2c 0x564c9d84 mlxsw_i2c_driver_register +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_i2c 0xfc130997 mlxsw_i2c_driver_unregister +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_pci 0xb879b16e mlxsw_pci_driver_unregister +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_pci 0xfa8b6498 mlxsw_pci_driver_register +EXPORT_SYMBOL drivers/net/ethernet/mscc/mscc_ocelot_common 0x016a3d85 ocelot_port_bridge_leave +EXPORT_SYMBOL drivers/net/ethernet/mscc/mscc_ocelot_common 0x09b212c4 ocelot_port_set_maxlen +EXPORT_SYMBOL drivers/net/ethernet/mscc/mscc_ocelot_common 0x0b150222 ocelot_netdevice_nb +EXPORT_SYMBOL drivers/net/ethernet/mscc/mscc_ocelot_common 0x12cd3e26 ocelot_ptp_adjtime +EXPORT_SYMBOL drivers/net/ethernet/mscc/mscc_ocelot_common 0x18a5c854 ocelot_fdb_add +EXPORT_SYMBOL drivers/net/ethernet/mscc/mscc_ocelot_common 0x1cc08f44 __ocelot_rmw_ix +EXPORT_SYMBOL drivers/net/ethernet/mscc/mscc_ocelot_common 0x1e0b6083 ocelot_port_disable +EXPORT_SYMBOL drivers/net/ethernet/mscc/mscc_ocelot_common 0x1ec1ffdc __ocelot_write_ix +EXPORT_SYMBOL drivers/net/ethernet/mscc/mscc_ocelot_common 0x1ec3c70f ocelot_port_policer_del +EXPORT_SYMBOL drivers/net/ethernet/mscc/mscc_ocelot_common 0x214b4cda ocelot_init_port +EXPORT_SYMBOL drivers/net/ethernet/mscc/mscc_ocelot_common 0x22ddbafb ocelot_vlan_add +EXPORT_SYMBOL drivers/net/ethernet/mscc/mscc_ocelot_common 0x34ce6918 ocelot_fdb_del +EXPORT_SYMBOL drivers/net/ethernet/mscc/mscc_ocelot_common 0x3b648c83 ocelot_get_max_mtu +EXPORT_SYMBOL drivers/net/ethernet/mscc/mscc_ocelot_common 0x3eeb793a ocelot_chip_init +EXPORT_SYMBOL drivers/net/ethernet/mscc/mscc_ocelot_common 0x45b990c6 ocelot_port_vlan_filtering +EXPORT_SYMBOL drivers/net/ethernet/mscc/mscc_ocelot_common 0x4c3ac544 ocelot_ptp_verify +EXPORT_SYMBOL drivers/net/ethernet/mscc/mscc_ocelot_common 0x5901b94b ocelot_adjust_link +EXPORT_SYMBOL drivers/net/ethernet/mscc/mscc_ocelot_common 0x5e658cdb ocelot_port_readl +EXPORT_SYMBOL drivers/net/ethernet/mscc/mscc_ocelot_common 0x66810231 __ocelot_read_ix +EXPORT_SYMBOL drivers/net/ethernet/mscc/mscc_ocelot_common 0x6aa488d8 ocelot_ptp_settime64 +EXPORT_SYMBOL drivers/net/ethernet/mscc/mscc_ocelot_common 0x6ea7464f ocelot_ptp_adjfine +EXPORT_SYMBOL drivers/net/ethernet/mscc/mscc_ocelot_common 0x7debc0d5 ocelot_regmap_init +EXPORT_SYMBOL drivers/net/ethernet/mscc/mscc_ocelot_common 0x8a3c6323 ocelot_port_add_txtstamp_skb +EXPORT_SYMBOL drivers/net/ethernet/mscc/mscc_ocelot_common 0x8e8db7fa ocelot_deinit +EXPORT_SYMBOL drivers/net/ethernet/mscc/mscc_ocelot_common 0x90823c95 ocelot_ptp_gettime64 +EXPORT_SYMBOL drivers/net/ethernet/mscc/mscc_ocelot_common 0x9480f16f ocelot_hwstamp_set +EXPORT_SYMBOL drivers/net/ethernet/mscc/mscc_ocelot_common 0x96267197 ocelot_fdb_dump +EXPORT_SYMBOL drivers/net/ethernet/mscc/mscc_ocelot_common 0x964d4180 ocelot_get_strings +EXPORT_SYMBOL drivers/net/ethernet/mscc/mscc_ocelot_common 0x9badc6a9 ocelot_deinit_timestamp +EXPORT_SYMBOL drivers/net/ethernet/mscc/mscc_ocelot_common 0xa1b09976 ocelot_get_sset_count +EXPORT_SYMBOL drivers/net/ethernet/mscc/mscc_ocelot_common 0xa32de186 ocelot_bridge_stp_state_set +EXPORT_SYMBOL drivers/net/ethernet/mscc/mscc_ocelot_common 0xa33e5a8b ocelot_port_writel +EXPORT_SYMBOL drivers/net/ethernet/mscc/mscc_ocelot_common 0xa5a1fc96 ocelot_init +EXPORT_SYMBOL drivers/net/ethernet/mscc/mscc_ocelot_common 0xb4d6e7cc ocelot_hwstamp_get +EXPORT_SYMBOL drivers/net/ethernet/mscc/mscc_ocelot_common 0xbcb52b11 ocelot_get_ts_info +EXPORT_SYMBOL drivers/net/ethernet/mscc/mscc_ocelot_common 0xcb54951f ocelot_port_enable +EXPORT_SYMBOL drivers/net/ethernet/mscc/mscc_ocelot_common 0xcd2be43f ocelot_configure_cpu +EXPORT_SYMBOL drivers/net/ethernet/mscc/mscc_ocelot_common 0xcfdc9077 ocelot_regfields_init +EXPORT_SYMBOL drivers/net/ethernet/mscc/mscc_ocelot_common 0xd0348add ocelot_switchdev_nb +EXPORT_SYMBOL drivers/net/ethernet/mscc/mscc_ocelot_common 0xd37f38aa ocelot_vlan_del +EXPORT_SYMBOL drivers/net/ethernet/mscc/mscc_ocelot_common 0xd687ad34 ocelot_get_ethtool_stats +EXPORT_SYMBOL drivers/net/ethernet/mscc/mscc_ocelot_common 0xde72d43c ocelot_init_timestamp +EXPORT_SYMBOL drivers/net/ethernet/mscc/mscc_ocelot_common 0xe4aad215 ocelot_ptp_enable +EXPORT_SYMBOL drivers/net/ethernet/mscc/mscc_ocelot_common 0xe54a91e8 ocelot_switchdev_blocking_nb +EXPORT_SYMBOL drivers/net/ethernet/mscc/mscc_ocelot_common 0xe91b602a ocelot_probe_port +EXPORT_SYMBOL drivers/net/ethernet/mscc/mscc_ocelot_common 0xea94ba0b ocelot_set_ageing_time +EXPORT_SYMBOL drivers/net/ethernet/mscc/mscc_ocelot_common 0xf643bcdf ocelot_port_policer_add +EXPORT_SYMBOL drivers/net/ethernet/mscc/mscc_ocelot_common 0xf91c8f78 ocelot_get_txtstamp +EXPORT_SYMBOL drivers/net/ethernet/mscc/mscc_ocelot_common 0xfcbda730 ocelot_port_bridge_join +EXPORT_SYMBOL drivers/net/ethernet/qlogic/qed/qed 0x4f264472 qed_put_iscsi_ops +EXPORT_SYMBOL drivers/net/ethernet/qlogic/qed/qed 0x5ccb5f1c qed_get_iscsi_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 0xa4d6e953 qed_get_fcoe_ops +EXPORT_SYMBOL drivers/net/ethernet/qlogic/qed/qed 0xd098510e qed_get_rdma_ops +EXPORT_SYMBOL drivers/net/ethernet/qlogic/qed/qed 0xd0b8c3e6 qed_get_eth_ops +EXPORT_SYMBOL drivers/net/ethernet/qlogic/qede/qede 0x310c774c qede_rdma_unregister_driver +EXPORT_SYMBOL drivers/net/ethernet/qlogic/qede/qede 0x3843edbf qede_rdma_register_driver +EXPORT_SYMBOL drivers/net/hamradio/hdlcdrv 0x19cd2cbc hdlcdrv_receiver +EXPORT_SYMBOL drivers/net/hamradio/hdlcdrv 0x481f1eb5 hdlcdrv_transmitter +EXPORT_SYMBOL drivers/net/hamradio/hdlcdrv 0x5a74daf2 hdlcdrv_unregister +EXPORT_SYMBOL drivers/net/hamradio/hdlcdrv 0x6b279035 hdlcdrv_arbitrate +EXPORT_SYMBOL drivers/net/hamradio/hdlcdrv 0xe00a7f49 hdlcdrv_register +EXPORT_SYMBOL drivers/net/mdio 0x3e17f466 mdio_set_flag +EXPORT_SYMBOL drivers/net/mdio 0x60443957 mdio45_probe +EXPORT_SYMBOL drivers/net/mdio 0x63e0fee5 mdio45_links_ok +EXPORT_SYMBOL drivers/net/mdio 0x652fb0b6 mdio45_ethtool_ksettings_get_npage +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/phy/bcm-phy-lib 0x1d4dc449 bcm54xx_auxctl_write +EXPORT_SYMBOL drivers/net/phy/mdio-bitbang 0x0c9452ed free_mdio_bitbang +EXPORT_SYMBOL drivers/net/phy/mdio-bitbang 0x3d812447 alloc_mdio_bitbang +EXPORT_SYMBOL drivers/net/phy/mdio-cavium 0x9e329a17 cavium_mdiobus_write +EXPORT_SYMBOL drivers/net/phy/mdio-cavium 0xd201806c cavium_mdiobus_read +EXPORT_SYMBOL drivers/net/phy/mdio-octeon 0x8a1d5c26 octeon_mdiobus_force_mod_depencency +EXPORT_SYMBOL drivers/net/phy/mdio-xgene 0x8fa270ad xgene_mdio_rd_mac +EXPORT_SYMBOL drivers/net/phy/mdio-xgene 0x9d74b3f6 xgene_mdio_wr_mac +EXPORT_SYMBOL drivers/net/phy/mdio-xgene 0xc7a36d5a xgene_mdio_rgmii_read +EXPORT_SYMBOL drivers/net/phy/mdio-xgene 0xca65fbe9 xgene_enet_phy_register +EXPORT_SYMBOL drivers/net/phy/mdio-xgene 0xf6b88673 xgene_mdio_rgmii_write +EXPORT_SYMBOL drivers/net/ppp/pppox 0x1b424b80 register_pppox_proto +EXPORT_SYMBOL drivers/net/ppp/pppox 0x8497f637 pppox_ioctl +EXPORT_SYMBOL drivers/net/ppp/pppox 0xc3c11428 pppox_unbind_sock +EXPORT_SYMBOL drivers/net/ppp/pppox 0xda131118 pppox_compat_ioctl +EXPORT_SYMBOL drivers/net/ppp/pppox 0xe0ff7a18 unregister_pppox_proto +EXPORT_SYMBOL drivers/net/sungem_phy 0x4c245269 sungem_phy_probe +EXPORT_SYMBOL drivers/net/team/team 0x09fd6d32 team_options_change_check +EXPORT_SYMBOL drivers/net/team/team 0x23a96b62 team_options_unregister +EXPORT_SYMBOL drivers/net/team/team 0x2a2d89e4 team_modeop_port_enter +EXPORT_SYMBOL drivers/net/team/team 0x2fe57bba team_option_inst_set_change +EXPORT_SYMBOL drivers/net/team/team 0x8055f25e team_modeop_port_change_dev_addr +EXPORT_SYMBOL drivers/net/team/team 0x96c00986 team_options_register +EXPORT_SYMBOL drivers/net/team/team 0xeb4bae6a team_mode_unregister +EXPORT_SYMBOL drivers/net/team/team 0xf0634a3f team_mode_register +EXPORT_SYMBOL drivers/net/usb/usbnet 0x8136b606 usbnet_device_suggests_idle +EXPORT_SYMBOL drivers/net/usb/usbnet 0xb352dba7 usbnet_manage_power +EXPORT_SYMBOL drivers/net/usb/usbnet 0xdbda3532 usbnet_link_change +EXPORT_SYMBOL drivers/net/wan/hdlc 0x03d38e04 attach_hdlc_protocol +EXPORT_SYMBOL drivers/net/wan/hdlc 0x150e6a5e detach_hdlc_protocol +EXPORT_SYMBOL drivers/net/wan/hdlc 0x43add2d3 hdlc_close +EXPORT_SYMBOL drivers/net/wan/hdlc 0x43fa65b7 hdlc_ioctl +EXPORT_SYMBOL drivers/net/wan/hdlc 0x67d7938a unregister_hdlc_protocol +EXPORT_SYMBOL drivers/net/wan/hdlc 0x9ff88a8e register_hdlc_protocol +EXPORT_SYMBOL drivers/net/wan/hdlc 0xb980d29e hdlc_start_xmit +EXPORT_SYMBOL drivers/net/wan/hdlc 0xc6258c98 alloc_hdlcdev +EXPORT_SYMBOL drivers/net/wan/hdlc 0xef6cdcb2 unregister_hdlc_device +EXPORT_SYMBOL drivers/net/wan/hdlc 0xfffa89b2 hdlc_open +EXPORT_SYMBOL drivers/net/wimax/i2400m/i2400m 0x2bffef1d i2400m_unknown_barker +EXPORT_SYMBOL drivers/net/wireless/ath/ath 0x07a1509e dfs_pattern_detector_init +EXPORT_SYMBOL drivers/net/wireless/ath/ath 0x108b188f ath_is_49ghz_allowed +EXPORT_SYMBOL drivers/net/wireless/ath/ath 0x110bbbcb ath_hw_get_listen_time +EXPORT_SYMBOL drivers/net/wireless/ath/ath 0x3488653a ath_key_config +EXPORT_SYMBOL drivers/net/wireless/ath/ath 0x366aaa22 ath_hw_setbssidmask +EXPORT_SYMBOL drivers/net/wireless/ath/ath 0x4571aea8 ath_is_world_regd +EXPORT_SYMBOL drivers/net/wireless/ath/ath 0x4c4ff58a ath_is_mybeacon +EXPORT_SYMBOL drivers/net/wireless/ath/ath 0x534daef9 ath_printk +EXPORT_SYMBOL drivers/net/wireless/ath/ath 0x7173b293 ath_reg_notifier_apply +EXPORT_SYMBOL drivers/net/wireless/ath/ath 0x8b1dd797 ath_hw_keyreset +EXPORT_SYMBOL drivers/net/wireless/ath/ath 0xa18f224e ath_regd_find_country_by_name +EXPORT_SYMBOL drivers/net/wireless/ath/ath 0xa48c541b ath_rxbuf_alloc +EXPORT_SYMBOL drivers/net/wireless/ath/ath 0xa67751a1 ath_regd_init +EXPORT_SYMBOL drivers/net/wireless/ath/ath 0xaadf681f ath_hw_cycle_counters_update +EXPORT_SYMBOL drivers/net/wireless/ath/ath 0xb6588ba6 ath_bus_type_strings +EXPORT_SYMBOL drivers/net/wireless/ath/ath 0xca9ee08b ath_key_delete +EXPORT_SYMBOL drivers/net/wireless/ath/ath 0xf08b651e ath_regd_get_band_ctl +EXPORT_SYMBOL drivers/net/wireless/ath/ath10k/ath10k_core 0x00247130 ath10k_ce_rx_update_write_idx +EXPORT_SYMBOL drivers/net/wireless/ath/ath10k/ath10k_core 0x015e5db2 ath10k_debug_mask +EXPORT_SYMBOL drivers/net/wireless/ath/ath10k/ath10k_core 0x060a7321 ath10k_htc_rx_completion_handler +EXPORT_SYMBOL drivers/net/wireless/ath/ath10k/ath10k_core 0x104bfc69 ath10k_ce_num_free_src_entries +EXPORT_SYMBOL drivers/net/wireless/ath/ath10k/ath10k_core 0x115757fc ath10k_htc_process_trailer +EXPORT_SYMBOL drivers/net/wireless/ath/ath10k/ath10k_core 0x16722624 ath10k_ce_dump_registers +EXPORT_SYMBOL drivers/net/wireless/ath/ath10k/ath10k_core 0x1a03c969 ath10k_ce_completed_send_next_nolock +EXPORT_SYMBOL drivers/net/wireless/ath/ath10k/ath10k_core 0x2028409a ath10k_ce_send +EXPORT_SYMBOL drivers/net/wireless/ath/ath10k/ath10k_core 0x30fbc808 ath10k_warn +EXPORT_SYMBOL drivers/net/wireless/ath/ath10k/ath10k_core 0x3246f330 ath10k_htt_rx_pktlog_completion_handler +EXPORT_SYMBOL drivers/net/wireless/ath/ath10k/ath10k_core 0x384b1354 ath10k_ce_free_rri +EXPORT_SYMBOL drivers/net/wireless/ath/ath10k/ath10k_core 0x385d72be ath10k_ce_cancel_send_next +EXPORT_SYMBOL drivers/net/wireless/ath/ath10k/ath10k_core 0x38e391f5 ath10k_core_create +EXPORT_SYMBOL drivers/net/wireless/ath/ath10k/ath10k_core 0x3d1c7ffe ath10k_ce_per_engine_service +EXPORT_SYMBOL drivers/net/wireless/ath/ath10k/ath10k_core 0x3d3e7538 ath10k_ce_rx_post_buf +EXPORT_SYMBOL drivers/net/wireless/ath/ath10k/ath10k_core 0x41759f20 ath10k_htt_txrx_compl_task +EXPORT_SYMBOL drivers/net/wireless/ath/ath10k/ath10k_core 0x41a3d99e ath10k_ce_deinit_pipe +EXPORT_SYMBOL drivers/net/wireless/ath/ath10k/ath10k_core 0x4b2de9f0 ath10k_core_register +EXPORT_SYMBOL drivers/net/wireless/ath/ath10k/ath10k_core 0x50dd77c4 __tracepoint_ath10k_log_dbg +EXPORT_SYMBOL drivers/net/wireless/ath/ath10k/ath10k_core 0x517a435a ath10k_htc_tx_completion_handler +EXPORT_SYMBOL drivers/net/wireless/ath/ath10k/ath10k_core 0x5d11db2c ath10k_core_free_board_files +EXPORT_SYMBOL drivers/net/wireless/ath/ath10k/ath10k_core 0x6888070b ath10k_ce_completed_send_next +EXPORT_SYMBOL drivers/net/wireless/ath/ath10k/ath10k_core 0x6c8b21c6 ath10k_ce_alloc_rri +EXPORT_SYMBOL drivers/net/wireless/ath/ath10k/ath10k_core 0x7de1a9d4 ath10k_mac_tx_push_pending +EXPORT_SYMBOL drivers/net/wireless/ath/ath10k/ath10k_core 0x7de7d129 ath10k_ce_free_pipe +EXPORT_SYMBOL drivers/net/wireless/ath/ath10k/ath10k_core 0x7eb9e919 ath10k_ce_revoke_recv_next +EXPORT_SYMBOL drivers/net/wireless/ath/ath10k/ath10k_core 0x80cf88ec ath10k_core_destroy +EXPORT_SYMBOL drivers/net/wireless/ath/ath10k/ath10k_core 0x84924a2e ath10k_core_unregister +EXPORT_SYMBOL drivers/net/wireless/ath/ath10k/ath10k_core 0x8a6ea741 ath10k_ce_disable_interrupts +EXPORT_SYMBOL drivers/net/wireless/ath/ath10k/ath10k_core 0x8f7733ff ath10k_coredump_get_mem_layout +EXPORT_SYMBOL drivers/net/wireless/ath/ath10k/ath10k_core 0x90f0ef77 ath10k_core_start +EXPORT_SYMBOL drivers/net/wireless/ath/ath10k/ath10k_core 0x965fe3e1 ath10k_htc_notify_tx_completion +EXPORT_SYMBOL drivers/net/wireless/ath/ath10k/ath10k_core 0x9bdcef8b ath10k_ce_enable_interrupts +EXPORT_SYMBOL drivers/net/wireless/ath/ath10k/ath10k_core 0x9c5d53c5 ath10k_htt_hif_tx_complete +EXPORT_SYMBOL drivers/net/wireless/ath/ath10k/ath10k_core 0xa4615cad __ath10k_ce_send_revert +EXPORT_SYMBOL drivers/net/wireless/ath/ath10k/ath10k_core 0xb24f8003 ath10k_err +EXPORT_SYMBOL drivers/net/wireless/ath/ath10k/ath10k_core 0xb988f993 ath10k_ce_init_pipe +EXPORT_SYMBOL drivers/net/wireless/ath/ath10k/ath10k_core 0xb9b9a49f ath10k_ce_completed_recv_next_nolock +EXPORT_SYMBOL drivers/net/wireless/ath/ath10k/ath10k_core 0xc0453e62 ath10k_htt_rx_hl_indication +EXPORT_SYMBOL drivers/net/wireless/ath/ath10k/ath10k_core 0xcf317317 ath10k_ce_send_nolock +EXPORT_SYMBOL drivers/net/wireless/ath/ath10k/ath10k_core 0xd1f24d03 ath10k_core_stop +EXPORT_SYMBOL drivers/net/wireless/ath/ath10k/ath10k_core 0xd3fa7eec ath10k_coredump_new +EXPORT_SYMBOL drivers/net/wireless/ath/ath10k/ath10k_core 0xd5bebc5c ath10k_ce_completed_recv_next +EXPORT_SYMBOL drivers/net/wireless/ath/ath10k/ath10k_core 0xda17ddaf ath10k_print_driver_info +EXPORT_SYMBOL drivers/net/wireless/ath/ath10k/ath10k_core 0xdd9e284c ath10k_ce_per_engine_service_any +EXPORT_SYMBOL drivers/net/wireless/ath/ath10k/ath10k_core 0xdebb7d60 __ath10k_ce_rx_num_free_bufs +EXPORT_SYMBOL drivers/net/wireless/ath/ath10k/ath10k_core 0xf08663d3 ath10k_ce_alloc_pipe +EXPORT_SYMBOL drivers/net/wireless/ath/ath10k/ath10k_core 0xf5c86f8a ath10k_info +EXPORT_SYMBOL drivers/net/wireless/ath/ath10k/ath10k_core 0xfa7e26b3 ath10k_htt_t2h_msg_handler +EXPORT_SYMBOL drivers/net/wireless/ath/ath10k/ath10k_core 0xfb36fd03 ath10k_core_fetch_board_file +EXPORT_SYMBOL drivers/net/wireless/ath/ath11k/ath11k 0xb8d61d2d ath11k_dp_service_srng +EXPORT_SYMBOL drivers/net/wireless/ath/ath11k/ath11k 0xb9caa8ee ath11k_core_get_hw_mac_id +EXPORT_SYMBOL drivers/net/wireless/ath/ath6kl/ath6kl_core 0x1354043d ath6kl_warn +EXPORT_SYMBOL drivers/net/wireless/ath/ath6kl/ath6kl_core 0x1955e3a3 ath6kl_core_init +EXPORT_SYMBOL drivers/net/wireless/ath/ath6kl/ath6kl_core 0x3502feef ath6kl_info +EXPORT_SYMBOL drivers/net/wireless/ath/ath6kl/ath6kl_core 0x4d6fefbb ath6kl_core_destroy +EXPORT_SYMBOL drivers/net/wireless/ath/ath6kl/ath6kl_core 0x51a89b5e ath6kl_core_cleanup +EXPORT_SYMBOL drivers/net/wireless/ath/ath6kl/ath6kl_core 0x5bb16a90 ath6kl_cfg80211_suspend +EXPORT_SYMBOL drivers/net/wireless/ath/ath6kl/ath6kl_core 0x91cfb84a ath6kl_hif_rw_comp_handler +EXPORT_SYMBOL drivers/net/wireless/ath/ath6kl/ath6kl_core 0xaf5bae8b ath6kl_core_tx_complete +EXPORT_SYMBOL drivers/net/wireless/ath/ath6kl/ath6kl_core 0xb2270cc1 ath6kl_hif_intr_bh_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 0xc63fe350 ath6kl_read_tgt_stats +EXPORT_SYMBOL drivers/net/wireless/ath/ath6kl/ath6kl_core 0xc6de86ec ath6kl_core_rx_complete +EXPORT_SYMBOL drivers/net/wireless/ath/ath6kl/ath6kl_core 0xd204054c ath6kl_stop_txrx +EXPORT_SYMBOL drivers/net/wireless/ath/ath6kl/ath6kl_core 0xe924a2fb ath6kl_core_create +EXPORT_SYMBOL drivers/net/wireless/ath/ath6kl/ath6kl_core 0xfd7724ce ath6kl_cfg80211_resume +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_common 0x094df8ef ath9k_cmn_spectral_deinit_debug +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_common 0x2025c3cf ath9k_cmn_spectral_scan_config +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_common 0x26d31258 ath9k_cmn_get_hw_crypto_keytype +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_common 0x2ac4e45c ath9k_cmn_init_crypto +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_common 0x2c8f4693 ath9k_cmn_init_channels_rates +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_common 0x335d20a2 ath9k_cmn_debug_modal_eeprom +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_common 0x4212af19 ath9k_cmn_rx_skb_postprocess +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_common 0x42f44281 ath9k_cmn_update_txpow +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_common 0x463e2ff4 ath9k_cmn_beacon_config_adhoc +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_common 0x87db15f9 ath9k_cmn_spectral_init_debug +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_common 0x96e522d5 ath9k_cmn_process_rssi +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_common 0x976415b0 ath_cmn_process_fft +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_common 0x9c85ea4d ath9k_cmn_beacon_config_ap +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_common 0xa0542682 ath9k_cmn_debug_recv +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_common 0xad47ed39 ath9k_cmn_process_rate +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_common 0xaf372d2b ath9k_cmn_get_channel +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_common 0xb45213da ath9k_cmn_reload_chainmask +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_common 0xb76fccc7 ath9k_cmn_debug_stat_rx +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_common 0xc5680ece ath9k_cmn_beacon_config_sta +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_common 0xcf25350d ath9k_cmn_spectral_scan_trigger +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_common 0xd2981357 ath9k_cmn_count_streams +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_common 0xd89c2abf ath9k_cmn_setup_ht_cap +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_common 0xeaf0daf8 ath9k_cmn_debug_phy_err +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_common 0xfaae1638 ath9k_cmn_rx_accept +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_common 0xfe9d09c1 ath9k_cmn_debug_base_eeprom +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x067ee60a ath9k_hw_kill_interrupts +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x0900bdb9 ath_gen_timer_isr +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x09b5e650 ath9k_hw_btcoex_init_3wire +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x0a8b36bb ar9003_mci_set_bt_version +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x0b97c9e0 ath9k_hw_set_gpio +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x0f77dafc ath9k_hw_get_tsf_offset +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x1057317d ath9k_hw_reset +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x122f61ab ar9003_paprd_setup_gain_table +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x19036e90 ath9k_hw_setpower +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x1a397351 ath9k_hw_abortpcurecv +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x1a78ee72 ath9k_hw_puttxbuf +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x1a819d84 ar9003_mci_state +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x1e4057dc ath9k_hw_setmcastfilter +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x231b4c0b ath9k_hw_btcoex_deinit +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x266713d8 ath9k_hw_check_alive +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x268a58c8 ath9k_hw_init_global_settings +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x2b3b9b23 ath9k_hw_intrpend +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x30e58f0e ar9003_mci_send_message +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x367c3989 ar9003_hw_disable_phy_restart +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x3954cd01 ath9k_hw_btcoex_disable +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x397487a9 ath9k_hw_beaconinit +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x3aa0555e ath9k_hw_rxprocdesc +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x3d0c31a3 ath9k_hw_wait +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x3ef6310a ath_gen_timer_alloc +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x415005c4 ath9k_hw_settsf64 +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x471f99db ath9k_hw_btcoex_enable +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x479cc103 ar9003_paprd_init_table +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x4d1e26bc ath9k_hw_gettsf64 +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x5252b8ed ath9k_hw_init +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x566c6f58 ath9k_hw_numtxpending +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x5ae853c5 ath9k_hw_set_rx_bufsize +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x5c578b8f ath9k_hw_set_interrupts +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x5c8a56b8 ar9003_paprd_create_curve +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x60928375 ath9k_hw_write_associd +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x6111bc74 ath9k_hw_gettxbuf +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x6243c391 ath9k_hw_disable +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x6ac56eed ar9003_hw_bb_watchdog_check +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x6acc682b ath9k_hw_setup_statusring +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x6af4689b ath9k_hw_computetxtime +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x6ca48668 ath9k_hw_enable_interrupts +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x707d4cd8 ath9k_hw_set_txq_props +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x76e9c386 ath9k_hw_gen_timer_start +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x77594c00 ath9k_hw_getnf +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x7a2a76db ath9k_hw_name +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x8119599d ath9k_hw_btcoex_bt_stomp +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x828f65cc ath9k_hw_setuptxqueue +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x84c003ee ath9k_hw_resettxqueue +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x85a554af ath9k_hw_set_sta_beacon_timers +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x876b4f37 ath9k_hw_gpio_request_out +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x87f2a8d7 ath9k_hw_stop_dma_queue +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x9185f07f ar9003_paprd_is_done +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x96192130 ath9k_hw_deinit +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x9b1cdd9e ath9k_hw_stopdmarecv +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x9c359696 ath9k_hw_reset_calvalid +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x9e7d6a30 ath9k_hw_reset_tsf +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x9eaa66bf ath9k_hw_gpio_get +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x9f0b448e ath9k_hw_phy_disable +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x9fdece70 ar9003_paprd_enable +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xa1479d7e ath9k_hw_gpio_free +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xa32c1d65 ath9k_hw_setrxfilter +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xa555b7d8 ath9k_hw_startpcureceive +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xa6ad3d13 ar9003_is_paprd_enabled +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xa730863e ar9003_mci_get_next_gpm_offset +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xa9f89955 ath9k_hw_beaconq_setup +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xaaf9158a ath9k_hw_putrxbuf +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xabf861b0 ath9k_hw_btcoex_set_concur_txprio +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xadcbe2d4 ar9003_hw_bb_watchdog_dbg_info +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xae938a81 ath9k_hw_setantenna +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xb1296162 ath9k_hw_set_tsfadjust +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xb24eeab6 ath9k_hw_addrxbuf_edma +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xb50682c3 ath9k_hw_btcoex_init_mci +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xb51695cc ar9003_mci_send_wlan_channels +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xb6feebb3 ath9k_hw_ani_monitor +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xb91b23d0 ath9k_hw_btcoex_init_2wire +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xbbe922ad ath9k_hw_setuprxdesc +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xc08e77a0 ath9k_hw_abort_tx_dma +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xc141c3a2 ath9k_hw_process_rxdesc_edma +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xc439a034 ath_gen_timer_free +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xc4e33139 ath9k_hw_getchan_noise +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xc6681999 ath9k_hw_btcoex_set_weight +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xc6c78041 ath9k_hw_bstuck_nfcal +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xc72acc6a ar9003_mci_cleanup +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xc7f8e6d4 ath9k_hw_updatetxtriglevel +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xcb085d10 ath9k_hw_init_btcoex_hw +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xcbfbf581 ath9k_hw_gen_timer_stop +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xd027b777 ath9k_hw_gpio_request_in +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xd0718d13 ath9k_hw_setrxabort +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xd124d163 ath9k_hw_releasetxqueue +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xd4164127 ath9k_hw_wow_apply_pattern +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xd6b32172 ath9k_hw_check_nav +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xd93d1ff9 ar9003_mci_get_interrupt +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xdc76bb2b ath9k_hw_wow_wakeup +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xe2cdbd38 ath9k_hw_getrxfilter +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xe66e44e8 ath9k_hw_setopmode +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xe827e4bf ath9k_hw_loadnf +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xe8947750 ath9k_hw_set_tx_filter +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xf08d766d ar9003_get_pll_sqsum_dvc +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xf0bb7fde ath9k_hw_txstart +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xf381cc51 ath9k_hw_set_txpowerlimit +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xf46fe321 ath9k_hw_resume_interrupts +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xf47f031a ath9k_hw_btcoex_init_scheme +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xf51e47ef ath9k_hw_disable_mib_counters +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xf6de39b3 ath9k_hw_wow_enable +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xf6e8ff8e ath9k_hw_get_txq_props +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xf6ff4251 ath9k_hw_gettsf32 +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xf7d01686 ar9003_paprd_populate_single_table +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xf844c096 ar9003_mci_setup +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xfad050f2 ath9k_hw_disable_interrupts +EXPORT_SYMBOL drivers/net/wireless/atmel/atmel 0x3fe6fe76 atmel_open +EXPORT_SYMBOL drivers/net/wireless/atmel/atmel 0x929f3c7a init_atmel_card +EXPORT_SYMBOL drivers/net/wireless/atmel/atmel 0xf36ea0e7 stop_atmel_card +EXPORT_SYMBOL drivers/net/wireless/broadcom/brcm80211/brcmutil/brcmutil 0x1906648e brcmu_boardrev_str +EXPORT_SYMBOL drivers/net/wireless/broadcom/brcm80211/brcmutil/brcmutil 0x1b727df9 brcmu_pktq_mlen +EXPORT_SYMBOL drivers/net/wireless/broadcom/brcm80211/brcmutil/brcmutil 0x586589a1 brcmu_pktq_pdeq_match +EXPORT_SYMBOL drivers/net/wireless/broadcom/brcm80211/brcmutil/brcmutil 0x5b3b83a1 brcmu_pktq_pdeq_tail +EXPORT_SYMBOL drivers/net/wireless/broadcom/brcm80211/brcmutil/brcmutil 0x7acea8a8 brcmu_pktq_peek_tail +EXPORT_SYMBOL drivers/net/wireless/broadcom/brcm80211/brcmutil/brcmutil 0x926d38e7 brcmu_pktq_flush +EXPORT_SYMBOL drivers/net/wireless/broadcom/brcm80211/brcmutil/brcmutil 0x9cefc2d9 brcmu_pktq_pflush +EXPORT_SYMBOL drivers/net/wireless/broadcom/brcm80211/brcmutil/brcmutil 0x9f0f9705 brcmu_pkt_buf_free_skb +EXPORT_SYMBOL drivers/net/wireless/broadcom/brcm80211/brcmutil/brcmutil 0xa049fa21 brcmu_pktq_init +EXPORT_SYMBOL drivers/net/wireless/broadcom/brcm80211/brcmutil/brcmutil 0xa17c0ccf brcmu_dotrev_str +EXPORT_SYMBOL drivers/net/wireless/broadcom/brcm80211/brcmutil/brcmutil 0xaa188eb6 brcmu_pktq_mdeq +EXPORT_SYMBOL drivers/net/wireless/broadcom/brcm80211/brcmutil/brcmutil 0xcb5c2107 brcmu_pktq_penq +EXPORT_SYMBOL drivers/net/wireless/broadcom/brcm80211/brcmutil/brcmutil 0xd6217d91 brcmu_d11_attach +EXPORT_SYMBOL drivers/net/wireless/broadcom/brcm80211/brcmutil/brcmutil 0xdadb5bde brcmu_pktq_penq_head +EXPORT_SYMBOL drivers/net/wireless/broadcom/brcm80211/brcmutil/brcmutil 0xf328927a brcmu_pktq_pdeq +EXPORT_SYMBOL drivers/net/wireless/broadcom/brcm80211/brcmutil/brcmutil 0xf8c0612b brcmu_pkt_buf_get_skb +EXPORT_SYMBOL drivers/net/wireless/intel/ipw2x00/libipw 0x0601a853 libipw_wx_get_encode +EXPORT_SYMBOL drivers/net/wireless/intel/ipw2x00/libipw 0x0a26b6ca libipw_freq_to_channel +EXPORT_SYMBOL drivers/net/wireless/intel/ipw2x00/libipw 0x0db382dd libipw_wx_set_encodeext +EXPORT_SYMBOL drivers/net/wireless/intel/ipw2x00/libipw 0x0e96ec27 libipw_wx_set_encode +EXPORT_SYMBOL drivers/net/wireless/intel/ipw2x00/libipw 0x21730153 libipw_is_valid_channel +EXPORT_SYMBOL drivers/net/wireless/intel/ipw2x00/libipw 0x25fe4bb8 libipw_rx_mgt +EXPORT_SYMBOL drivers/net/wireless/intel/ipw2x00/libipw 0x27d7fcbd libipw_networks_age +EXPORT_SYMBOL drivers/net/wireless/intel/ipw2x00/libipw 0x39409e56 libipw_channel_to_index +EXPORT_SYMBOL drivers/net/wireless/intel/ipw2x00/libipw 0x49fce554 libipw_get_channel +EXPORT_SYMBOL drivers/net/wireless/intel/ipw2x00/libipw 0x7565236f libipw_xmit +EXPORT_SYMBOL drivers/net/wireless/intel/ipw2x00/libipw 0xa125b522 libipw_get_channel_flags +EXPORT_SYMBOL drivers/net/wireless/intel/ipw2x00/libipw 0xa435cebf libipw_wx_get_encodeext +EXPORT_SYMBOL drivers/net/wireless/intel/ipw2x00/libipw 0xa970b0da libipw_rx +EXPORT_SYMBOL drivers/net/wireless/intel/ipw2x00/libipw 0xc4e4d4ed free_libipw +EXPORT_SYMBOL drivers/net/wireless/intel/ipw2x00/libipw 0xd47d994c libipw_set_geo +EXPORT_SYMBOL drivers/net/wireless/intel/ipw2x00/libipw 0xe71b5e81 libipw_txb_free +EXPORT_SYMBOL drivers/net/wireless/intel/ipw2x00/libipw 0xee0b82aa libipw_wx_get_scan +EXPORT_SYMBOL drivers/net/wireless/intel/ipw2x00/libipw 0xf6b6f4b5 alloc_libipw +EXPORT_SYMBOL drivers/net/wireless/intel/ipw2x00/libipw 0xf7e2cbd7 libipw_get_geo +EXPORT_SYMBOL drivers/net/wireless/intel/ipw2x00/libipw 0xfeb720a3 libipw_channel_to_freq +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x01c40056 il_check_rxon_cmd +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x02ea3d41 il_set_rate +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x041b73f0 il_hdl_pm_debug_stats +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x076c30bc il_set_rxon_hwcrypto +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x09437953 il_rx_queue_space +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x0b4a4f9a il_tx_queue_free +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x0fdbbc5e il_restore_stations +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x15f1afb6 il_eeprom_free +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x16214a40 il_add_beacon_time +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x1b5e2213 il_fill_probe_req +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x1dfd4b23 il_send_cmd +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x205edf61 il_cancel_scan_deferred_work +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x223a7806 il_cmd_queue_free +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x22e94d06 il_set_decrypted_flag +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x25b052c6 il_mac_remove_interface +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x26ad65d8 il_init_scan_params +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x28759aae il_hdl_spectrum_measurement +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x28f74ace il_send_add_sta +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x2ad22193 il_mac_change_interface +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x2ad4919e il_pm_ops +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x2bf7eea6 il_queue_space +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x2c325057 il_send_lq_cmd +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x2dc8bdbf il_scan_cancel_timeout +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x2df078cd il_rx_queue_alloc +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x2ea099b1 il_eeprom_query16 +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x2f0779ab il_mac_add_interface +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x3055ecc0 il_txq_update_write_ptr +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x35c780f6 il_add_station_common +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x3a9852dd il_dbgfs_register +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x3e68c06a il_update_stats +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x3f1283e1 il_apm_stop +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x4126dcdd il_send_cmd_pdu +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x416bd26a il_debug_level +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x45d516a5 il_leds_exit +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x46bf553a il_init_channel_map +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x496f369b il_rx_queue_update_write_ptr +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x4df14765 il_mac_conf_tx +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x4f161d46 il_set_bit +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x4fc2236b il_is_ht40_tx_allowed +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x4fd30adc il_setup_rx_scan_handlers +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x50f98571 il_send_bt_config +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x53c95ade il_tx_cmd_protection +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x5565b6ee il_power_update_mode +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x59c250dc il_read_targ_mem +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x5a38a5d2 il_get_channel_info +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x5b72ce20 il_apm_init +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x5ec5dff8 il_wr_prph +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x62675087 il_mac_config +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x64429208 il_tx_queue_reset +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x6535fb5d il_set_tx_power +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x683eccce il_tx_queue_unmap +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x69c1cc9b il_setup_watchdog +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x6da00b1c il_tx_cmd_complete +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x6fced0d7 il_send_cmd_pdu_async +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x70036fec il_send_rxon_timing +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x70963fe9 il_eeprom_query_addr +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x7202cc57 il_hdl_pm_sleep +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x7aeb3cc9 il_get_active_dwell_time +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x7df85a68 il_scan_cancel +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x7e7b5f57 il_free_txq_mem +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x7e96e91f il_init_geos +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x7f74a7ca il_hdl_error +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x8248ab04 il_send_stats_request +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x84948060 il_connection_init_rx_config +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x84f4ce78 il_chswitch_done +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x852346bf il_cmd_queue_unmap +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x90cae619 il_get_free_ucode_key_idx +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x98bed8cf il_leds_init +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x9910e61a il_set_rxon_channel +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x9cb5ad79 il_clear_ucode_stations +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x9cc714af il_bg_watchdog +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x9e196f36 il_hdl_csa +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x9f37e1fa il_mac_reset_tsf +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0xa08b3363 il_setup_scan_deferred_work +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0xa98563c2 il_free_geos +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0xaa3c2b82 il_get_lowest_plcp +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0xab92a7cc il_eeprom_init +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0xaf436c73 il_free_channel_map +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0xb1cb2a98 il_write_targ_mem +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0xb4c948da il_poll_bit +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0xb65510a3 il_get_cmd_string +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0xb7bd33ff il_isr +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0xbcc53075 il_mac_flush +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0xbe34c6ed il_full_rxon_required +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0xc1e3974a il_clear_bit +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0xc4671823 il_set_flags_for_band +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0xcaaa6c8a il_power_initialize +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0xcfc8cc02 il_mac_bss_info_changed +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0xd3238ddd il_tx_queue_init +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0xd57ca45c il_mac_sta_remove +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0xd9b926f6 il_irq_handle_error +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0xdafc35c7 il_usecs_to_beacons +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0xdd69aa54 _il_apm_stop +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0xde0e48ec il_send_cmd_sync +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0xe1e44f26 il_mac_hw_scan +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0xe277aa6b il_get_passive_dwell_time +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0xe34e3e4f il_get_single_channel_number +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0xe4e23e2d il_force_reset +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0xe7e48a66 il_alloc_txq_mem +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0xef608630 il_rd_prph +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0xf5c8c6d5 il_dbgfs_unregister +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0xf62dd055 il_set_rxon_ht +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0xf70a693b il_bcast_addr +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0xf7ac4900 _il_poll_bit +EXPORT_SYMBOL drivers/net/wireless/intel/iwlwifi/iwlwifi 0x1ee9c199 __tracepoint_iwlwifi_dev_ucode_event +EXPORT_SYMBOL drivers/net/wireless/intel/iwlwifi/iwlwifi 0x20a6a247 __tracepoint_iwlwifi_dev_ucode_cont_event +EXPORT_SYMBOL drivers/net/wireless/intel/iwlwifi/iwlwifi 0xb72ade7d __tracepoint_iwlwifi_dev_ucode_wrap_event +EXPORT_SYMBOL drivers/net/wireless/intersil/hostap/hostap 0x0656a374 hostap_init_data +EXPORT_SYMBOL drivers/net/wireless/intersil/hostap/hostap 0x09d847c9 hostap_remove_interface +EXPORT_SYMBOL drivers/net/wireless/intersil/hostap/hostap 0x0ce7b189 hostap_init_proc +EXPORT_SYMBOL drivers/net/wireless/intersil/hostap/hostap 0x10e827ce hostap_check_sta_fw_version +EXPORT_SYMBOL drivers/net/wireless/intersil/hostap/hostap 0x13abdd5a hostap_dump_tx_header +EXPORT_SYMBOL drivers/net/wireless/intersil/hostap/hostap 0x18397f67 hostap_set_hostapd_sta +EXPORT_SYMBOL drivers/net/wireless/intersil/hostap/hostap 0x185d0603 hostap_set_antsel +EXPORT_SYMBOL drivers/net/wireless/intersil/hostap/hostap 0x1f398d6f hostap_free_data +EXPORT_SYMBOL drivers/net/wireless/intersil/hostap/hostap 0x23bb9e49 hostap_set_encryption +EXPORT_SYMBOL drivers/net/wireless/intersil/hostap/hostap 0x34c6341e hostap_info_process +EXPORT_SYMBOL drivers/net/wireless/intersil/hostap/hostap 0x371041ed hostap_set_word +EXPORT_SYMBOL drivers/net/wireless/intersil/hostap/hostap 0x42744f42 hostap_set_roaming +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 0x8f55127f hostap_info_init +EXPORT_SYMBOL drivers/net/wireless/intersil/hostap/hostap 0x91b957e8 prism2_update_comms_qual +EXPORT_SYMBOL drivers/net/wireless/intersil/hostap/hostap 0x9ac2d1cc hostap_set_auth_algs +EXPORT_SYMBOL drivers/net/wireless/intersil/hostap/hostap 0xb1155ec7 hostap_80211_rx +EXPORT_SYMBOL drivers/net/wireless/intersil/hostap/hostap 0xb4b77c8b hostap_80211_get_hdrlen +EXPORT_SYMBOL drivers/net/wireless/intersil/hostap/hostap 0xbb1f9799 hostap_set_hostapd +EXPORT_SYMBOL drivers/net/wireless/intersil/hostap/hostap 0xc07bee9a hostap_handle_sta_tx_exc +EXPORT_SYMBOL drivers/net/wireless/intersil/hostap/hostap 0xc3153638 hostap_add_interface +EXPORT_SYMBOL drivers/net/wireless/intersil/hostap/hostap 0xd11fb4f8 hostap_master_start_xmit +EXPORT_SYMBOL drivers/net/wireless/intersil/hostap/hostap 0xd5210a95 hostap_80211_ops +EXPORT_SYMBOL drivers/net/wireless/intersil/hostap/hostap 0xdcf63d91 hostap_get_porttype +EXPORT_SYMBOL drivers/net/wireless/intersil/hostap/hostap 0xdeb35554 hostap_init_ap_proc +EXPORT_SYMBOL drivers/net/wireless/intersil/hostap/hostap 0xdf78a0db hostap_setup_dev +EXPORT_SYMBOL drivers/net/wireless/intersil/hostap/hostap 0xe82dfd00 hostap_set_string +EXPORT_SYMBOL drivers/net/wireless/intersil/hostap/hostap 0xfd5b0350 hostap_remove_proc +EXPORT_SYMBOL drivers/net/wireless/intersil/orinoco/orinoco 0x0aedf2d5 orinoco_set_multicast_list +EXPORT_SYMBOL drivers/net/wireless/intersil/orinoco/orinoco 0x0eb0af1c orinoco_tx_timeout +EXPORT_SYMBOL drivers/net/wireless/intersil/orinoco/orinoco 0x160bf744 orinoco_change_mtu +EXPORT_SYMBOL drivers/net/wireless/intersil/orinoco/orinoco 0x1e0754d7 __orinoco_ev_rx +EXPORT_SYMBOL drivers/net/wireless/intersil/orinoco/orinoco 0x20b542b4 hermes_struct_init +EXPORT_SYMBOL drivers/net/wireless/intersil/orinoco/orinoco 0x2902610b __orinoco_ev_info +EXPORT_SYMBOL drivers/net/wireless/intersil/orinoco/orinoco 0x3049ccdf alloc_orinocodev +EXPORT_SYMBOL drivers/net/wireless/intersil/orinoco/orinoco 0x3a23fd4f free_orinocodev +EXPORT_SYMBOL drivers/net/wireless/intersil/orinoco/orinoco 0x5575edf3 orinoco_process_xmit_skb +EXPORT_SYMBOL drivers/net/wireless/intersil/orinoco/orinoco 0x5f0ddb82 orinoco_up +EXPORT_SYMBOL drivers/net/wireless/intersil/orinoco/orinoco 0x6154e3cd orinoco_if_add +EXPORT_SYMBOL drivers/net/wireless/intersil/orinoco/orinoco 0x83374834 orinoco_down +EXPORT_SYMBOL drivers/net/wireless/intersil/orinoco/orinoco 0x8a3b07cb orinoco_stop +EXPORT_SYMBOL drivers/net/wireless/intersil/orinoco/orinoco 0xb72eaf89 orinoco_if_del +EXPORT_SYMBOL drivers/net/wireless/intersil/orinoco/orinoco 0xc4c27411 orinoco_open +EXPORT_SYMBOL drivers/net/wireless/intersil/orinoco/orinoco 0xe314ecb3 orinoco_init +EXPORT_SYMBOL drivers/net/wireless/intersil/orinoco/orinoco 0xffe27bca orinoco_interrupt +EXPORT_SYMBOL drivers/net/wireless/mediatek/mt76/mt76 0x3a1f52a7 mt76_wcid_key_setup +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/btcoexist/btcoexist 0x5ba24a92 rtl_btc_get_ops_pointer +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtl8192c/rtl8192c-common 0x010d60eb rtl92c_set_fw_rsvdpagepkt +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtl8192c/rtl8192c-common 0x016765c8 rtl92c_phy_query_bb_reg +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtl8192c/rtl8192c-common 0x02717c1e rtl92c_dm_init_rate_adaptive_mask +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtl8192c/rtl8192c-common 0x07c3a90b rtl92c_phy_rf_config +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtl8192c/rtl8192c-common 0x0ab11c1a rtl92c_phy_sw_chnl +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtl8192c/rtl8192c-common 0x176582bb rtl92c_firmware_selfreset +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtl8192c/rtl8192c-common 0x183d62ab _rtl92c_phy_set_rf_sleep +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtl8192c/rtl8192c-common 0x19cad7cb _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 0x250fb095 rtl92c_phy_ap_calibrate +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtl8192c/rtl8192c-common 0x32dee16e rtl92c_phy_update_txpower_dbm +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtl8192c/rtl8192c-common 0x39764e1d rtl92c_phy_sw_chnl_callback +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtl8192c/rtl8192c-common 0x3a2a4563 rtl92c_bt_rssi_state_change +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtl8192c/rtl8192c-common 0x46a8d00f rtl92c_dm_check_txpower_tracking +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtl8192c/rtl8192c-common 0x53dd16ec rtl92c_phy_set_io +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtl8192c/rtl8192c-common 0x5d19cb74 rtl92c_phy_set_bb_reg +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtl8192c/rtl8192c-common 0x5ed8fba9 rtl92c_dm_watchdog +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtl8192c/rtl8192c-common 0x5f4ab15f rtl92c_dm_init_edca_turbo +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtl8192c/rtl8192c-common 0x6a759097 rtl92c_phy_lc_calibrate +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtl8192c/rtl8192c-common 0x7312e355 rtl92c_dm_init +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtl8192c/rtl8192c-common 0x75675739 rtl92c_phy_set_io_cmd +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtl8192c/rtl8192c-common 0x77733f59 rtl92c_phy_set_rfpath_switch +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtl8192c/rtl8192c-common 0x7884273d rtl92c_dm_bt_coexist +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtl8192c/rtl8192c-common 0x7dc7983b _rtl92c_phy_fw_rf_serial_read +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtl8192c/rtl8192c-common 0x7e0e8162 _rtl92c_phy_init_bb_rf_register_definition +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtl8192c/rtl8192c-common 0x8451d7d0 rtl92c_phy_set_bw_mode +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtl8192c/rtl8192c-common 0x89662912 rtl92c_phy_set_txpower_level +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtl8192c/rtl8192c-common 0x8fa4f991 _rtl92c_phy_fw_rf_serial_write +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtl8192c/rtl8192c-common 0x950e9a95 _rtl92c_phy_dbm_to_txpwr_idx +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtl8192c/rtl8192c-common 0x95b07f4e rtl92c_phy_iq_calibrate +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtl8192c/rtl8192c-common 0xac5e4586 rtl8192_phy_check_is_legal_rfpath +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtl8192c/rtl8192c-common 0xba04abc6 _rtl92c_phy_bb8192c_config_parafile +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtl8192c/rtl8192c-common 0xc0769b7c rtl92c_fill_h2c_cmd +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtl8192c/rtl8192c-common 0xca556824 rtl92c_dm_rf_saving +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtl8192c/rtl8192c-common 0xca5b8af1 rtl92c_set_fw_pwrmode_cmd +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtl8192c/rtl8192c-common 0xe3eb1bd4 _rtl92c_phy_txpwr_idx_to_dbm +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtl8192c/rtl8192c-common 0xea309212 rtl92c_set_fw_joinbss_report_cmd +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtl8192c/rtl8192c-common 0xeae09d6c rtl92ce_phy_set_rf_on +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtl8192c/rtl8192c-common 0xec3cb773 rtl92c_download_fw +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtl8192c/rtl8192c-common 0xf2eaa7d0 _rtl92c_phy_rf_serial_write +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtl8192c/rtl8192c-common 0xf3d69f11 rtl92c_dm_write_dig +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtl8192c/rtl8192c-common 0xf74bd038 _rtl92c_store_pwrindex_diffrate_offset +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtl_pci 0x25b03f7f rtl_pci_suspend +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtl_pci 0x5050bfc8 rtl_pci_resume +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtl_pci 0x85055a75 rtl_pci_disconnect +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtl_pci 0xa1794257 rtl_pci_probe +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtl_usb 0x4361690d rtl_usb_probe +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtl_usb 0x669f2e46 rtl_usb_suspend +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtl_usb 0xce307452 rtl_usb_disconnect +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtl_usb 0xd0659ba0 rtl_usb_resume +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtlwifi 0x06e4773a rtl_c2hcmd_enqueue +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtlwifi 0x0b038e24 channel5g_80m +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtlwifi 0x0b12ea02 efuse_shadow_read +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtlwifi 0x0de99486 rtl_cam_add_one_entry +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtlwifi 0x0e311b74 rtl_collect_scan_list +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtlwifi 0x109ce678 rtlwifi_rate_mapping +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtlwifi 0x18b4a420 rtl_efuse_shadow_map_update +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtlwifi 0x196f70f9 efuse_one_byte_read +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtlwifi 0x1b945315 rtl_addr_delay +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtlwifi 0x1b9e797f rtl_cmd_send_packet +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtlwifi 0x1d19610d rtl_phy_scan_operation_backup +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtlwifi 0x30a956d7 rtl_query_rxpwrpercentage +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtlwifi 0x3f0f1391 rtl_rx_ampdu_apply +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtlwifi 0x48bba8a2 rtl_dm_diginit +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtlwifi 0x4aa5dd15 rtl_cam_mark_invalid +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtlwifi 0x4bae200b rtl_process_phyinfo +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtlwifi 0x4d8c64e4 rtl_rfreg_delay +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtlwifi 0x544f35ec rtl_bb_delay +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtlwifi 0x54824f58 channel5g +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtlwifi 0x552241bc rtl_cam_del_entry +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtlwifi 0x5549cb91 rtl_ps_disable_nic +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtlwifi 0x590d7725 rtl_signal_scale_mapping +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtlwifi 0x5b8cbd8d rtl_cam_get_free_entry +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtlwifi 0x6641c997 rtl_get_tcb_desc +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtlwifi 0x7c1e5f86 efuse_read_1byte +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtlwifi 0x8ea60059 rtl_fw_cb +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtlwifi 0x9c92921e rtl_cam_reset_all_entry +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtlwifi 0x9ddad462 rtl_cam_empty_entry +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtlwifi 0xa87b073c rtl_init_rfkill +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtlwifi 0xb4a512a1 efuse_power_switch +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtlwifi 0xb51c1c8c rtl_hal_pwrseqcmdparsing +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtlwifi 0xc83b1d1e rtl_cam_delete_one_entry +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtlwifi 0xceebdb5d rtl_mrate_idx_to_arfr_id +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtlwifi 0xdb3a84d5 rtl_send_smps_action +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtlwifi 0xe166dff4 rtl_ps_enable_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/rtw88/rtw88_8723d 0x0f85e133 rtw8723d_hw_spec +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw88/rtw88_8822b 0xe4659b81 rtw8822b_hw_spec +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw88/rtw88_8822c 0x0ba7f0bf rtw8822c_hw_spec +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw88/rtw88_core 0x0c99eb4e rtw_phy_init +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw88/rtw88_core 0x158e3189 rtw_coex_write_indirect_reg +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw88/rtw88_core 0x1679862f rtw_phy_pwrtrack_get_delta +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw88/rtw88_core 0x1b46a813 rtw_ops +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw88/rtw88_core 0x23b617db rtw_phy_cfg_rf +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw88/rtw88_core 0x2444b701 check_hw_ready +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw88/rtw88_core 0x256d4e13 rtw_set_channel_mac +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw88/rtw88_core 0x2c0e05b7 rtw_bf_remove_bfee_mu +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw88/rtw88_core 0x2f42975d rtw_tx_write_data_h2c_get +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw88/rtw88_core 0x30f184c5 rtw_phy_get_tx_power_index +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw88/rtw88_core 0x33b3f3c0 rtw_debug_mask +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw88/rtw88_core 0x38a1655b rtw_phy_read_rf +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw88/rtw88_core 0x3a98d3e9 rtw_phy_write_rf_reg_mix +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw88/rtw88_core 0x3b68501a rtw_phy_pwrtrack_need_iqk +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw88/rtw88_core 0x3bf226cf rtw_bf_set_gid_table +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw88/rtw88_core 0x3dc8f5d9 rtw_fw_c2h_cmd_rx_irqsafe +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw88/rtw88_core 0x40d0a8ef rtw_power_mode_change +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw88/rtw88_core 0x42ad6532 rtw_coex_read_indirect_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 0x519c8ba9 rtw_rate_size +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw88/rtw88_core 0x58210e60 rtw_rate_section +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw88/rtw88_core 0x63cf198e rtw_register_hw +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw88/rtw88_core 0x78ebf236 rtw_restore_reg +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw88/rtw88_core 0x7deaf9dc rtw_phy_pwrtrack_avg +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw88/rtw88_core 0x7eeb664d rtw_unregister_hw +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw88/rtw88_core 0x7fe642e1 rtw_phy_cfg_mac +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw88/rtw88_core 0x8218fac2 rtw_phy_cfg_bb +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw88/rtw88_core 0x83e2b144 rtw_tx_fill_tx_desc +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw88/rtw88_core 0x88c17ae2 rtw_phy_config_swing_table +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw88/rtw88_core 0x9047cc46 rtw_phy_pwrtrack_get_pwridx +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw88/rtw88_core 0x91832812 rtw_parse_tbl_phy_cond +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw88/rtw88_core 0x9315040c rtw_coex_write_scbd +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw88/rtw88_core 0x9c44de19 rtw_fw_do_iqk +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw88/rtw88_core 0xa1b9484e rtw_chip_info_setup +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw88/rtw88_core 0xa7e9eec8 rtw_phy_read_rf_sipi +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw88/rtw88_core 0xab935fa3 rtw_bf_enable_bfee_mu +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw88/rtw88_core 0xb8289bc1 rtw_parse_tbl_txpwr_lmt +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw88/rtw88_core 0xb83bb649 rtw_parse_tbl_bb_pg +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw88/rtw88_core 0xb844c67b rtw_read8_physical_efuse +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw88/rtw88_core 0xbfc9fe6b rtw_bf_cfg_csi_rate +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw88/rtw88_core 0xc4cb8e5e rtw_phy_pwrtrack_thermal_changed +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw88/rtw88_core 0xc717f94c rtw_core_deinit +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw88/rtw88_core 0xc916e956 rtw_bf_phy_init +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw88/rtw88_core 0xc94c4465 rtw_core_init +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw88/rtw88_core 0xc96da480 rtw_phy_set_tx_power_level +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw88/rtw88_core 0xd3df93e1 rtw_phy_load_tables +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw88/rtw88_core 0xd6959903 rtw_rx_stats +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw88/rtw88_core 0xd91df748 rtw_phy_cfg_agc +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw88/rtw88_core 0xdd2162bb rtw_bf_enable_bfee_su +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw88/rtw88_core 0xdf004861 rtw_tx_report_enqueue +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw88/rtw88_core 0xec0160dc rtw_tx_write_data_rsvd_page_get +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw88/rtw88_core 0xedd6384e rtw_bf_remove_bfee_su +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw88/rtw88_core 0xee5fa788 rtw_phy_write_rf_reg_sipi +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw88/rtw88_core 0xf34249ad rtw_fw_lps_deep_mode +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw88/rtw88_core 0xf60c11fe rtw_rx_fill_rx_status +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw88/rtw88_core 0xf8b99b38 __rtw_dbg +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw88/rtw88_pci 0x2b10636c rtw_pm_ops +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw88/rtw88_pci 0x38984cbe rtw_pci_remove +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw88/rtw88_pci 0x63dd00c2 rtw_pci_probe +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw88/rtw88_pci 0x8f150372 rtw_pci_shutdown +EXPORT_SYMBOL drivers/net/wireless/rsi/rsi_91x 0x4b708d52 rsi_config_wowlan +EXPORT_SYMBOL drivers/net/wireless/ti/wlcore/wlcore 0x43c14934 wlcore_calc_packet_alignment +EXPORT_SYMBOL drivers/net/wireless/ti/wlcore/wlcore 0x924351af wl12xx_is_dummy_packet +EXPORT_SYMBOL drivers/net/wireless/ti/wlcore/wlcore 0x99886da1 wlcore_tx_complete +EXPORT_SYMBOL drivers/net/wireless/ti/wlcore/wlcore 0xbdd2f3f3 wl1271_free_tx_id +EXPORT_SYMBOL drivers/nfc/fdp/fdp 0x0f4b936a fdp_nci_probe +EXPORT_SYMBOL drivers/nfc/fdp/fdp 0x2e63c0f4 fdp_nci_recv_frame +EXPORT_SYMBOL drivers/nfc/fdp/fdp 0xcd52e682 fdp_nci_remove +EXPORT_SYMBOL drivers/nfc/microread/microread 0x394c6a23 microread_probe +EXPORT_SYMBOL drivers/nfc/microread/microread 0x96efea86 microread_remove +EXPORT_SYMBOL drivers/nfc/nxp-nci/nxp-nci 0x06015be1 nxp_nci_probe +EXPORT_SYMBOL drivers/nfc/nxp-nci/nxp-nci 0x5d8904d0 nxp_nci_remove +EXPORT_SYMBOL drivers/nfc/nxp-nci/nxp-nci 0x6fa5c09b nxp_nci_fw_recv_frame +EXPORT_SYMBOL drivers/nfc/pn533/pn533 0x6d96e426 pn533_recv_frame +EXPORT_SYMBOL drivers/nfc/pn544/pn544 0x254058e2 pn544_hci_probe +EXPORT_SYMBOL drivers/nfc/pn544/pn544 0x3b7b29f4 pn544_hci_remove +EXPORT_SYMBOL drivers/nfc/s3fwrn5/s3fwrn5 0x7482ef2d s3fwrn5_recv_frame +EXPORT_SYMBOL drivers/nfc/s3fwrn5/s3fwrn5 0x9b34ea94 s3fwrn5_probe +EXPORT_SYMBOL drivers/nfc/s3fwrn5/s3fwrn5 0xb2691d1c s3fwrn5_remove +EXPORT_SYMBOL drivers/nfc/st-nci/st-nci 0x25f19cc3 st_nci_vendor_cmds_init +EXPORT_SYMBOL drivers/nfc/st-nci/st-nci 0x7831108f ndlc_recv +EXPORT_SYMBOL drivers/nfc/st-nci/st-nci 0x7b93836d ndlc_send +EXPORT_SYMBOL drivers/nfc/st-nci/st-nci 0x92b9a37b ndlc_remove +EXPORT_SYMBOL drivers/nfc/st-nci/st-nci 0x981f70ba st_nci_se_deinit +EXPORT_SYMBOL drivers/nfc/st-nci/st-nci 0x994c1e8d ndlc_probe +EXPORT_SYMBOL drivers/nfc/st-nci/st-nci 0xb3f76537 st_nci_se_init +EXPORT_SYMBOL drivers/nfc/st-nci/st-nci 0xbe3f9db9 ndlc_close +EXPORT_SYMBOL drivers/nfc/st-nci/st-nci 0xccd2df3d st_nci_se_io +EXPORT_SYMBOL drivers/nfc/st-nci/st-nci 0xde0f55f5 ndlc_open +EXPORT_SYMBOL drivers/nfc/st21nfca/st21nfca_hci 0x1e49e36d st21nfca_hci_remove +EXPORT_SYMBOL drivers/nfc/st21nfca/st21nfca_hci 0x2120d21f st21nfca_hci_disable_se +EXPORT_SYMBOL drivers/nfc/st21nfca/st21nfca_hci 0x3b83aaab st21nfca_hci_enable_se +EXPORT_SYMBOL drivers/nfc/st21nfca/st21nfca_hci 0x410db193 st21nfca_im_send_dep_req +EXPORT_SYMBOL drivers/nfc/st21nfca/st21nfca_hci 0x533f35b0 st21nfca_hci_probe +EXPORT_SYMBOL drivers/nfc/st21nfca/st21nfca_hci 0x62dee6b2 st21nfca_hci_loopback_event_received +EXPORT_SYMBOL drivers/nfc/st21nfca/st21nfca_hci 0x684fe8c5 st21nfca_hci_discover_se +EXPORT_SYMBOL drivers/nfc/st21nfca/st21nfca_hci 0x77a273e7 st21nfca_dep_deinit +EXPORT_SYMBOL drivers/nfc/st21nfca/st21nfca_hci 0xa1b5ab9b st21nfca_im_send_atr_req +EXPORT_SYMBOL drivers/nfc/st21nfca/st21nfca_hci 0xa65e8e72 st21nfca_se_deinit +EXPORT_SYMBOL drivers/nfc/st21nfca/st21nfca_hci 0xbdc252e9 st21nfca_apdu_reader_event_received +EXPORT_SYMBOL drivers/nfc/st21nfca/st21nfca_hci 0xc5c60b8a st21nfca_connectivity_event_received +EXPORT_SYMBOL drivers/nfc/st21nfca/st21nfca_hci 0xcf65caa8 st21nfca_se_init +EXPORT_SYMBOL drivers/nfc/st21nfca/st21nfca_hci 0xd0cab492 st21nfca_vendor_cmds_init +EXPORT_SYMBOL drivers/nfc/st21nfca/st21nfca_hci 0xd3f2017f st21nfca_tm_send_dep_res +EXPORT_SYMBOL drivers/nfc/st21nfca/st21nfca_hci 0xe7ce1146 st21nfca_dep_init +EXPORT_SYMBOL drivers/nfc/st21nfca/st21nfca_hci 0xf65e8fc9 st21nfca_dep_event_received +EXPORT_SYMBOL drivers/nfc/st21nfca/st21nfca_hci 0xfa3bd54b st21nfca_hci_se_io +EXPORT_SYMBOL drivers/ntb/ntb 0x04f7aeef ntb_db_event +EXPORT_SYMBOL drivers/ntb/ntb 0x3a1050e4 ntbm_msi_free_irq +EXPORT_SYMBOL drivers/ntb/ntb 0x3d53c2f1 ntb_msi_clear_mws +EXPORT_SYMBOL drivers/ntb/ntb 0x3de6986a ntb_msi_peer_addr +EXPORT_SYMBOL drivers/ntb/ntb 0x6fed0fbc ntb_msi_setup_mws +EXPORT_SYMBOL drivers/ntb/ntb 0x79068194 ntb_default_peer_port_count +EXPORT_SYMBOL drivers/ntb/ntb 0x850ff005 ntb_register_device +EXPORT_SYMBOL drivers/ntb/ntb 0x96bbf97f ntb_unregister_device +EXPORT_SYMBOL drivers/ntb/ntb 0x9bab1596 ntb_set_ctx +EXPORT_SYMBOL drivers/ntb/ntb 0x9ebe05a0 ntb_default_port_number +EXPORT_SYMBOL drivers/ntb/ntb 0xb1c5b9c9 ntb_default_peer_port_number +EXPORT_SYMBOL drivers/ntb/ntb 0xb6601082 ntb_unregister_client +EXPORT_SYMBOL drivers/ntb/ntb 0xc5d1b255 ntb_clear_ctx +EXPORT_SYMBOL drivers/ntb/ntb 0xcd6e3466 ntb_msi_peer_trigger +EXPORT_SYMBOL drivers/ntb/ntb 0xd057d943 ntbm_msi_request_threaded_irq +EXPORT_SYMBOL drivers/ntb/ntb 0xd90fb224 ntb_msi_init +EXPORT_SYMBOL drivers/ntb/ntb 0xe7f943c4 ntb_default_peer_port_idx +EXPORT_SYMBOL drivers/ntb/ntb 0xf6564b30 __ntb_register_client +EXPORT_SYMBOL drivers/ntb/ntb 0xfa8dc68a ntb_msg_event +EXPORT_SYMBOL drivers/ntb/ntb 0xff01b56c ntb_link_event +EXPORT_SYMBOL drivers/nvdimm/nd_btt 0x31fd66db nvdimm_namespace_detach_btt +EXPORT_SYMBOL drivers/nvdimm/nd_btt 0x67f37c2e nvdimm_namespace_attach_btt +EXPORT_SYMBOL drivers/parport/parport 0x064adac7 __parport_register_driver +EXPORT_SYMBOL drivers/parport/parport 0x07ba2283 parport_find_base +EXPORT_SYMBOL drivers/parport/parport 0x16fc4dde parport_claim_or_block +EXPORT_SYMBOL drivers/parport/parport 0x1a8db117 parport_set_timeout +EXPORT_SYMBOL drivers/parport/parport 0x21426170 parport_ieee1284_epp_read_data +EXPORT_SYMBOL drivers/parport/parport 0x23ebcfb1 parport_register_dev_model +EXPORT_SYMBOL drivers/parport/parport 0x2d3b9b22 parport_del_port +EXPORT_SYMBOL drivers/parport/parport 0x3cb9e35e parport_put_port +EXPORT_SYMBOL drivers/parport/parport 0x44fd4018 parport_ieee1284_ecp_read_data +EXPORT_SYMBOL drivers/parport/parport 0x47e8d02b parport_ieee1284_read_nibble +EXPORT_SYMBOL drivers/parport/parport 0x4d2a941b parport_ieee1284_interrupt +EXPORT_SYMBOL drivers/parport/parport 0x55fc1e71 parport_ieee1284_epp_write_data +EXPORT_SYMBOL drivers/parport/parport 0x5ca42aaa parport_ieee1284_epp_write_addr +EXPORT_SYMBOL drivers/parport/parport 0x5e3a3912 parport_irq_handler +EXPORT_SYMBOL drivers/parport/parport 0x614873d0 parport_release +EXPORT_SYMBOL drivers/parport/parport 0x6a4ad302 parport_remove_port +EXPORT_SYMBOL drivers/parport/parport 0x7c8c3513 parport_get_port +EXPORT_SYMBOL drivers/parport/parport 0x893a7084 parport_ieee1284_read_byte +EXPORT_SYMBOL drivers/parport/parport 0x9a5968e1 parport_find_number +EXPORT_SYMBOL drivers/parport/parport 0x9a5aa56b parport_wait_peripheral +EXPORT_SYMBOL drivers/parport/parport 0x9edfaeb0 parport_announce_port +EXPORT_SYMBOL drivers/parport/parport 0xa20ba6c2 parport_ieee1284_epp_read_addr +EXPORT_SYMBOL drivers/parport/parport 0xa7af4ca9 parport_read +EXPORT_SYMBOL drivers/parport/parport 0xb3620274 parport_wait_event +EXPORT_SYMBOL drivers/parport/parport 0xb662664f parport_ieee1284_ecp_write_addr +EXPORT_SYMBOL drivers/parport/parport 0xbf3a5294 parport_ieee1284_ecp_write_data +EXPORT_SYMBOL drivers/parport/parport 0xd412a091 parport_unregister_driver +EXPORT_SYMBOL drivers/parport/parport 0xdd2c797e parport_negotiate +EXPORT_SYMBOL drivers/parport/parport 0xdfb9c493 parport_write +EXPORT_SYMBOL drivers/parport/parport 0xe5cb4753 parport_unregister_device +EXPORT_SYMBOL drivers/parport/parport 0xe6c0c738 parport_claim +EXPORT_SYMBOL drivers/parport/parport 0xef612619 parport_register_port +EXPORT_SYMBOL drivers/parport/parport 0xf7af3a50 parport_ieee1284_write_compat +EXPORT_SYMBOL drivers/pci/controller/pcie-iproc 0x406fee7a iproc_pcie_remove +EXPORT_SYMBOL drivers/pci/controller/pcie-iproc 0x79ed954e iproc_pcie_setup +EXPORT_SYMBOL drivers/pcmcia/pcmcia_core 0x212db8d2 pcmcia_socket_list +EXPORT_SYMBOL drivers/pcmcia/pcmcia_core 0x26c991d1 pcmcia_register_socket +EXPORT_SYMBOL drivers/pcmcia/pcmcia_core 0x37334303 pcmcia_unregister_socket +EXPORT_SYMBOL drivers/pcmcia/pcmcia_core 0x38401513 pcmcia_put_socket +EXPORT_SYMBOL drivers/pcmcia/pcmcia_core 0x41f3dbaf pcmcia_parse_events +EXPORT_SYMBOL drivers/pcmcia/pcmcia_core 0x520b5cca pcmcia_reset_card +EXPORT_SYMBOL drivers/pcmcia/pcmcia_core 0x5fc54de0 pcmcia_parse_uevents +EXPORT_SYMBOL drivers/pcmcia/pcmcia_core 0xaba27b5d pcmcia_get_socket_by_nr +EXPORT_SYMBOL drivers/pcmcia/pcmcia_core 0xcd87361e pccard_register_pcmcia +EXPORT_SYMBOL drivers/pcmcia/pcmcia_core 0xcf97f3bd dead_socket +EXPORT_SYMBOL drivers/pcmcia/pcmcia_core 0xe10970cd pcmcia_socket_class +EXPORT_SYMBOL drivers/pcmcia/pcmcia_core 0xf7e7577b pcmcia_get_socket +EXPORT_SYMBOL drivers/pcmcia/pcmcia_core 0xf942709b pcmcia_socket_list_rwsem +EXPORT_SYMBOL drivers/pcmcia/pcmcia_rsrc 0x5db190df pccard_static_ops +EXPORT_SYMBOL drivers/platform/chrome/cros_ec 0x00654de0 cros_ec_suspend +EXPORT_SYMBOL drivers/platform/chrome/cros_ec 0x61f9c11c cros_ec_resume +EXPORT_SYMBOL drivers/platform/chrome/cros_ec 0xaf1fd509 cros_ec_unregister +EXPORT_SYMBOL drivers/platform/chrome/cros_ec 0xbe0b2fa9 cros_ec_register +EXPORT_SYMBOL drivers/platform/chrome/cros_ec 0xfe7216c3 cros_ec_handle_event +EXPORT_SYMBOL drivers/regulator/rohm-regulator 0x98eb8742 rohm_regulator_set_dvs_levels +EXPORT_SYMBOL drivers/rpmsg/qcom_smd 0x3330a1c8 qcom_smd_unregister_edge +EXPORT_SYMBOL drivers/rpmsg/qcom_smd 0x3a38199d qcom_smd_register_edge +EXPORT_SYMBOL drivers/rpmsg/rpmsg_core 0x047a2b54 rpmsg_create_ept +EXPORT_SYMBOL drivers/rpmsg/rpmsg_core 0x1eddb1cf rpmsg_poll +EXPORT_SYMBOL drivers/rpmsg/rpmsg_core 0x2ec75903 rpmsg_send +EXPORT_SYMBOL drivers/rpmsg/rpmsg_core 0x47f56917 __register_rpmsg_driver +EXPORT_SYMBOL drivers/rpmsg/rpmsg_core 0x5959a478 rpmsg_trysend_offchannel +EXPORT_SYMBOL drivers/rpmsg/rpmsg_core 0x79cec56b rpmsg_destroy_ept +EXPORT_SYMBOL drivers/rpmsg/rpmsg_core 0x89e10d48 unregister_rpmsg_driver +EXPORT_SYMBOL drivers/rpmsg/rpmsg_core 0x962667ff rpmsg_unregister_device +EXPORT_SYMBOL drivers/rpmsg/rpmsg_core 0x9a9f9859 rpmsg_trysendto +EXPORT_SYMBOL drivers/rpmsg/rpmsg_core 0xb1b42a7f rpmsg_find_device +EXPORT_SYMBOL drivers/rpmsg/rpmsg_core 0xb2014264 rpmsg_send_offchannel +EXPORT_SYMBOL drivers/rpmsg/rpmsg_core 0xb3d457ef rpmsg_sendto +EXPORT_SYMBOL drivers/rpmsg/rpmsg_core 0xd13c6bcc rpmsg_trysend +EXPORT_SYMBOL drivers/rpmsg/rpmsg_core 0xfa291a67 rpmsg_register_device +EXPORT_SYMBOL drivers/rtc/rtc-ds1685 0x35fbc4f3 ds1685_rtc_poweroff +EXPORT_SYMBOL drivers/scsi/esp_scsi 0x4a29ab38 scsi_esp_intr +EXPORT_SYMBOL drivers/scsi/esp_scsi 0x838b064f scsi_esp_cmd +EXPORT_SYMBOL drivers/scsi/esp_scsi 0xdbc41f67 scsi_esp_unregister +EXPORT_SYMBOL drivers/scsi/esp_scsi 0xe354999d scsi_esp_template +EXPORT_SYMBOL drivers/scsi/esp_scsi 0xe76a3b93 scsi_esp_register +EXPORT_SYMBOL drivers/scsi/fcoe/libfcoe 0x1d841f7e fcoe_ctlr_link_up +EXPORT_SYMBOL drivers/scsi/fcoe/libfcoe 0x1dda88a0 fcoe_ctlr_recv_flogi +EXPORT_SYMBOL drivers/scsi/fcoe/libfcoe 0x3a4e3ffa fcoe_ctlr_set_fip_mode +EXPORT_SYMBOL drivers/scsi/fcoe/libfcoe 0x6a29fde9 fcoe_ctlr_destroy +EXPORT_SYMBOL drivers/scsi/fcoe/libfcoe 0x88c254ab fcoe_ctlr_init +EXPORT_SYMBOL drivers/scsi/fcoe/libfcoe 0x9f87c458 fcoe_ctlr_els_send +EXPORT_SYMBOL drivers/scsi/fcoe/libfcoe 0xcae8fc48 fcoe_fcf_get_selected +EXPORT_SYMBOL drivers/scsi/fcoe/libfcoe 0xd875bdd7 fcoe_transport_attach +EXPORT_SYMBOL drivers/scsi/fcoe/libfcoe 0xd8b91078 fcoe_ctlr_recv +EXPORT_SYMBOL drivers/scsi/fcoe/libfcoe 0xe760e72d fcoe_transport_detach +EXPORT_SYMBOL drivers/scsi/fcoe/libfcoe 0xfb4593db fcoe_ctlr_link_down +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x00f73c35 fc_exch_init +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x018c4a89 fc_rport_login +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x046cc298 fc_linkdown +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x06f0e7fb fc_elsct_send +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x0920600d fc_exch_seq_send +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x0d96271c fc_exch_update_stats +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x11e81681 fc_elsct_init +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x16985a81 fc_lport_set_local_id +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x22b90986 fc_exch_mgr_del +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x2c113ba8 fc_rport_lookup +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x2e1d4509 fc_linkup +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x35907fcf fc_lport_init +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x3bed1c93 fc_seq_assign +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x46af4aac fc_seq_set_resp +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x478d2a16 fc_rport_create +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x4b2dc94d fc_exch_recv +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x4bfff5b4 fc_eh_abort +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x54fe9ea1 fc_queuecommand +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x554cd576 fc_fcp_init +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x5d84bb00 fc_lport_iterate +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x5ed95dec fc_fc4_deregister_provider +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x615b3af0 fc_exch_mgr_alloc +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x62b73f09 fc_fabric_login +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x68886677 fc_get_host_port_state +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x69219e2a fc_frame_crc_check +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x71d81ac1 _fc_frame_alloc +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x7d996961 fc_slave_alloc +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x7df55f2c fc_get_host_speed +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x7f1c618d fc_exch_mgr_add +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x7f3407a7 fc_seq_start_next +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x808025a0 fc_lport_bsg_request +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x811811e0 fc_exch_done +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x83528d8a fc_lport_config +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x85e01831 fc_frame_alloc_fill +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x8708d073 fc_rport_logoff +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x89b32d45 fc_fcp_destroy +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x97c26851 fc_exch_mgr_list_clone +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x9d4c9da4 fc_get_host_stats +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 0xa38df985 fc_lport_logo_resp +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0xa3bcccab fc_fill_reply_hdr +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0xa49bc978 fc_fabric_logoff +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0xa4fdee42 fc_eh_device_reset +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0xaa883b26 fc_seq_send +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0xab07de7d fc_lport_recv +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0xabe65048 fc_vport_id_lookup +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0xb0ddd5a1 fc_rport_flush_queue +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0xb73551fe fc_eh_host_reset +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0xc8dfc956 fc_rport_recv_req +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0xd17b79d5 fc_lport_destroy +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0xd1e2b432 fc_fill_hdr +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0xd25c5086 fc_rport_terminate_io +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0xd77c1938 libfc_vport_create +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0xdaad93e8 fc_vport_setlink +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0xdacfc681 fc_set_mfs +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0xdc815f25 fc_exch_mgr_reset +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0xdedec12f fc_set_rport_loss_tmo +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0xe5cf06b5 fc_lport_notifier_head +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0xe6b4d688 fc_fc4_register_provider +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0xe7913021 fc_exch_mgr_free +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0xe8b7dfe2 fc_lport_flogi_resp +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0xea5b3c45 fc_disc_config +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0xee5d0c56 fc_disc_init +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0xf6241ab7 fc_lport_reset +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0xfa4667d1 fc_seq_release +EXPORT_SYMBOL drivers/scsi/libsas/libsas 0x4a8e3d34 try_test_sas_gpio_gp_bit +EXPORT_SYMBOL drivers/scsi/libsas/libsas 0x9d805189 sas_resume_ha +EXPORT_SYMBOL drivers/scsi/libsas/libsas 0xb0a183a0 sas_prep_resume_ha +EXPORT_SYMBOL drivers/scsi/libsas/libsas 0xb9af7c58 sas_suspend_ha +EXPORT_SYMBOL drivers/scsi/megaraid/megaraid_mm 0xa21fafb9 mraid_mm_adapter_app_handle +EXPORT_SYMBOL drivers/scsi/megaraid/megaraid_mm 0xa9d3202d mraid_mm_register_adp +EXPORT_SYMBOL drivers/scsi/megaraid/megaraid_mm 0xb2cf7c01 mraid_mm_unregister_adp +EXPORT_SYMBOL drivers/scsi/qla2xxx/qla2xxx 0x02f1e92d qlt_unreg_sess +EXPORT_SYMBOL drivers/scsi/qla2xxx/qla2xxx 0x29aaaa0a qlt_xmit_tm_rsp +EXPORT_SYMBOL drivers/scsi/qla2xxx/qla2xxx 0x2b1e874d qlt_stop_phase2 +EXPORT_SYMBOL drivers/scsi/qla2xxx/qla2xxx 0x2e4b649a qlt_abort_cmd +EXPORT_SYMBOL drivers/scsi/qla2xxx/qla2xxx 0x4391ade7 qlt_lport_deregister +EXPORT_SYMBOL drivers/scsi/qla2xxx/qla2xxx 0x4a70e59e qlt_free_cmd +EXPORT_SYMBOL drivers/scsi/qla2xxx/qla2xxx 0x4b864180 qlt_lport_register +EXPORT_SYMBOL drivers/scsi/qla2xxx/qla2xxx 0x5aa933ab qlt_free_mcmd +EXPORT_SYMBOL drivers/scsi/qla2xxx/qla2xxx 0x9d32da0b qlt_stop_phase1 +EXPORT_SYMBOL drivers/scsi/qla2xxx/qla2xxx 0xe4247f65 qlt_xmit_response +EXPORT_SYMBOL drivers/scsi/qla2xxx/qla2xxx 0xede67196 qlt_rdy_to_xfer +EXPORT_SYMBOL drivers/scsi/qla2xxx/qla2xxx 0xef991722 qlt_enable_vha +EXPORT_SYMBOL drivers/scsi/raid_class 0xb2abeef5 raid_class_attach +EXPORT_SYMBOL drivers/scsi/raid_class 0xbc9f2c25 raid_component_add +EXPORT_SYMBOL drivers/scsi/raid_class 0xd9b0cbcb raid_class_release +EXPORT_SYMBOL drivers/scsi/scsi_transport_fc 0x0c9e3946 fc_host_post_event +EXPORT_SYMBOL drivers/scsi/scsi_transport_fc 0x0cf717d1 fc_host_fpin_rcv +EXPORT_SYMBOL drivers/scsi/scsi_transport_fc 0x0f7394ed fc_release_transport +EXPORT_SYMBOL drivers/scsi/scsi_transport_fc 0x375f8bbd fc_get_event_number +EXPORT_SYMBOL drivers/scsi/scsi_transport_fc 0x46e66aea fc_remove_host +EXPORT_SYMBOL drivers/scsi/scsi_transport_fc 0x5d8fe705 fc_remote_port_delete +EXPORT_SYMBOL drivers/scsi/scsi_transport_fc 0x70964e74 fc_eh_timed_out +EXPORT_SYMBOL drivers/scsi/scsi_transport_fc 0x7ee47f0e fc_vport_create +EXPORT_SYMBOL drivers/scsi/scsi_transport_fc 0xa4b4a1c2 scsi_is_fc_rport +EXPORT_SYMBOL drivers/scsi/scsi_transport_fc 0xaf6ec749 fc_host_post_vendor_event +EXPORT_SYMBOL drivers/scsi/scsi_transport_fc 0xbc96998d fc_host_post_fc_event +EXPORT_SYMBOL drivers/scsi/scsi_transport_fc 0xc185b4f2 fc_remote_port_add +EXPORT_SYMBOL drivers/scsi/scsi_transport_fc 0xd760b7ef fc_block_scsi_eh +EXPORT_SYMBOL drivers/scsi/scsi_transport_fc 0xdf3bf4d4 fc_attach_transport +EXPORT_SYMBOL drivers/scsi/scsi_transport_fc 0xf0fa57b3 fc_block_rport +EXPORT_SYMBOL drivers/scsi/scsi_transport_fc 0xfe88cb1c fc_vport_terminate +EXPORT_SYMBOL drivers/scsi/scsi_transport_fc 0xff771837 fc_remote_port_rolechg +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0x00360ad8 sas_phy_alloc +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0x07945cf5 scsi_is_sas_phy +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0x1ca59b9e sas_rphy_remove +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0x2e57a855 sas_rphy_free +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0x36533f68 sas_port_delete +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0x36774fbc sas_rphy_unlink +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0x3844e7f3 sas_phy_free +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0x38bd67e3 sas_port_alloc_num +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0x3acec5fa sas_port_add +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0x403c1417 sas_port_mark_backlink +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0x4714f82b sas_remove_host +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0x47b1db58 sas_rphy_delete +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0x4cc68591 sas_end_device_alloc +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0x60b4f090 sas_expander_alloc +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0x63c38a2a sas_attach_transport +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0x70dabfdc sas_get_address +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0x790b9a3f sas_port_free +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0x7b0f4fbd sas_read_port_mode_page +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0x8ad7a572 sas_phy_add +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0xa1d72787 sas_release_transport +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0xa7deaab4 sas_phy_delete +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0xb82e69f4 scsi_is_sas_port +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0xba45c688 sas_port_alloc +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0xc0136947 scsi_is_sas_rphy +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0xd10c8184 sas_port_add_phy +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0xd3ed380a sas_port_delete_phy +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0xdafe8d1b sas_rphy_add +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0xea924f0a sas_port_get_phy +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0xfadb6180 sas_remove_children +EXPORT_SYMBOL drivers/scsi/scsi_transport_spi 0x11ec7964 spi_display_xfer_agreement +EXPORT_SYMBOL drivers/scsi/scsi_transport_spi 0x3006a77f spi_dv_device +EXPORT_SYMBOL drivers/scsi/scsi_transport_spi 0x3686ea09 spi_print_msg +EXPORT_SYMBOL drivers/scsi/scsi_transport_spi 0x73d808d6 spi_schedule_dv_device +EXPORT_SYMBOL drivers/scsi/scsi_transport_spi 0x9c24562a spi_attach_transport +EXPORT_SYMBOL drivers/scsi/scsi_transport_spi 0xeec7f9ea spi_release_transport +EXPORT_SYMBOL drivers/scsi/scsi_transport_srp 0x279d0dfb srp_reconnect_rport +EXPORT_SYMBOL drivers/scsi/scsi_transport_srp 0x38f5d6cc srp_start_tl_fail_timers +EXPORT_SYMBOL drivers/scsi/scsi_transport_srp 0x405b6e05 srp_parse_tmo +EXPORT_SYMBOL drivers/scsi/scsi_transport_srp 0xd7069b24 srp_rport_put +EXPORT_SYMBOL drivers/scsi/scsi_transport_srp 0xe60813f1 srp_rport_get +EXPORT_SYMBOL drivers/scsi/scsi_transport_srp 0xfd87a2d4 srp_timed_out +EXPORT_SYMBOL drivers/scsi/ufs/tc-dwc-g210 0x2805b06a tc_dwc_g210_config_20_bit +EXPORT_SYMBOL drivers/scsi/ufs/tc-dwc-g210 0x54982dda tc_dwc_g210_config_40_bit +EXPORT_SYMBOL drivers/scsi/ufs/ufshcd-core 0x09dfe2cc ufshcd_runtime_resume +EXPORT_SYMBOL drivers/scsi/ufs/ufshcd-core 0x6d284a85 ufshcd_runtime_idle +EXPORT_SYMBOL drivers/scsi/ufs/ufshcd-core 0x7292e9c6 ufshcd_runtime_suspend +EXPORT_SYMBOL drivers/scsi/ufs/ufshcd-core 0x8ea0080d ufshcd_get_local_unipro_ver +EXPORT_SYMBOL drivers/scsi/ufs/ufshcd-core 0x9e0a0394 ufshcd_alloc_host +EXPORT_SYMBOL drivers/scsi/ufs/ufshcd-core 0xb2e019e7 ufshcd_system_suspend +EXPORT_SYMBOL drivers/scsi/ufs/ufshcd-core 0xc1436eb3 ufshcd_system_resume +EXPORT_SYMBOL drivers/scsi/ufs/ufshcd-core 0xe52577a5 ufshcd_shutdown +EXPORT_SYMBOL drivers/scsi/ufs/ufshcd-core 0xed22b395 ufshcd_map_desc_id_to_length +EXPORT_SYMBOL drivers/scsi/ufs/ufshcd-dwc 0x4b8f52de ufshcd_dwc_dme_set_attrs +EXPORT_SYMBOL drivers/scsi/ufs/ufshcd-dwc 0xe73ac1e0 ufshcd_dwc_link_startup_notify +EXPORT_SYMBOL drivers/soc/fsl/dpio/fsl-mc-dpio 0x030f2d6c dpaa2_io_service_enqueue_fq +EXPORT_SYMBOL drivers/soc/fsl/dpio/fsl-mc-dpio 0x3d01f417 dpaa2_io_service_pull_fq +EXPORT_SYMBOL drivers/soc/fsl/dpio/fsl-mc-dpio 0xc4ccef03 dpaa2_io_get_cpu +EXPORT_SYMBOL drivers/soc/fsl/dpio/fsl-mc-dpio 0xdb008703 dpaa2_io_service_enqueue_multiple_fq +EXPORT_SYMBOL drivers/soc/fsl/dpio/fsl-mc-dpio 0xe0f67b93 dpaa2_io_service_enqueue_multiple_desc_fq +EXPORT_SYMBOL drivers/soc/mediatek/mtk-cmdq-helper 0x0348ce8f cmdq_pkt_destroy +EXPORT_SYMBOL drivers/soc/mediatek/mtk-cmdq-helper 0x0a86537c cmdq_pkt_poll_mask +EXPORT_SYMBOL drivers/soc/mediatek/mtk-cmdq-helper 0x23d0b9f2 cmdq_pkt_clear_event +EXPORT_SYMBOL drivers/soc/mediatek/mtk-cmdq-helper 0x41f3a1df cmdq_mbox_create +EXPORT_SYMBOL drivers/soc/mediatek/mtk-cmdq-helper 0x50396152 cmdq_pkt_write_mask +EXPORT_SYMBOL drivers/soc/mediatek/mtk-cmdq-helper 0x58684d20 cmdq_dev_get_client_reg +EXPORT_SYMBOL drivers/soc/mediatek/mtk-cmdq-helper 0x85e281f0 cmdq_pkt_poll +EXPORT_SYMBOL drivers/soc/mediatek/mtk-cmdq-helper 0xa066b5c3 cmdq_pkt_write +EXPORT_SYMBOL drivers/soc/mediatek/mtk-cmdq-helper 0xa846e75e cmdq_pkt_wfe +EXPORT_SYMBOL drivers/soc/mediatek/mtk-cmdq-helper 0xa9dc86da cmdq_pkt_flush_async +EXPORT_SYMBOL drivers/soc/mediatek/mtk-cmdq-helper 0xe19c6bbd cmdq_pkt_create +EXPORT_SYMBOL drivers/soc/mediatek/mtk-cmdq-helper 0xede9ce4c cmdq_pkt_flush +EXPORT_SYMBOL drivers/soc/mediatek/mtk-cmdq-helper 0xef239965 cmdq_mbox_destroy +EXPORT_SYMBOL drivers/soc/qcom/ocmem 0x0838fb82 of_get_ocmem +EXPORT_SYMBOL drivers/soc/qcom/ocmem 0xc53d76b1 ocmem_allocate +EXPORT_SYMBOL drivers/soc/qcom/ocmem 0xf9b05967 ocmem_free +EXPORT_SYMBOL drivers/soc/qcom/pdr_interface 0x1c76ea4d pdr_restart_pd +EXPORT_SYMBOL drivers/soc/qcom/pdr_interface 0x432975e6 pdr_add_lookup +EXPORT_SYMBOL drivers/soc/qcom/pdr_interface 0x47b2ed49 pdr_handle_alloc +EXPORT_SYMBOL drivers/soc/qcom/pdr_interface 0xf618ca5b pdr_handle_release +EXPORT_SYMBOL drivers/soc/qcom/qcom-geni-se 0x0312294f geni_se_clk_tbl_get +EXPORT_SYMBOL drivers/soc/qcom/qcom-geni-se 0x0c418b94 geni_se_init +EXPORT_SYMBOL drivers/soc/qcom/qcom-geni-se 0x3aa6f22f geni_se_resources_off +EXPORT_SYMBOL drivers/soc/qcom/qcom-geni-se 0x628d65ec geni_se_tx_dma_unprep +EXPORT_SYMBOL drivers/soc/qcom/qcom-geni-se 0x6c20a386 geni_se_tx_dma_prep +EXPORT_SYMBOL drivers/soc/qcom/qcom-geni-se 0x6c6b4311 geni_se_rx_dma_prep +EXPORT_SYMBOL drivers/soc/qcom/qcom-geni-se 0x79c8cfaa geni_se_config_packing +EXPORT_SYMBOL drivers/soc/qcom/qcom-geni-se 0xb1aa352a geni_se_rx_dma_unprep +EXPORT_SYMBOL drivers/soc/qcom/qcom-geni-se 0xc1db5eee geni_se_clk_freq_match +EXPORT_SYMBOL drivers/soc/qcom/qcom-geni-se 0xcd8e1c2a geni_se_resources_on +EXPORT_SYMBOL drivers/soc/qcom/qcom-geni-se 0xe37a7deb geni_se_get_qup_hw_version +EXPORT_SYMBOL drivers/soc/qcom/qcom-geni-se 0xff926da4 geni_se_select_mode +EXPORT_SYMBOL drivers/soc/qcom/qmi_helpers 0x0ef12cc9 qmi_encode_message +EXPORT_SYMBOL drivers/soc/qcom/qmi_helpers 0x13f56c90 qmi_handle_init +EXPORT_SYMBOL drivers/soc/qcom/qmi_helpers 0x21ce5888 qmi_response_type_v01_ei +EXPORT_SYMBOL drivers/soc/qcom/qmi_helpers 0x3b992dd3 qmi_txn_cancel +EXPORT_SYMBOL drivers/soc/qcom/qmi_helpers 0x4a9e7262 qmi_send_request +EXPORT_SYMBOL drivers/soc/qcom/qmi_helpers 0x68772745 qmi_decode_message +EXPORT_SYMBOL drivers/soc/qcom/qmi_helpers 0x8b16f0c0 qmi_txn_wait +EXPORT_SYMBOL drivers/soc/qcom/qmi_helpers 0x98fd76ec qmi_send_response +EXPORT_SYMBOL drivers/soc/qcom/qmi_helpers 0xae9bc49f qmi_send_indication +EXPORT_SYMBOL drivers/soc/qcom/qmi_helpers 0xce78f4b9 qmi_txn_init +EXPORT_SYMBOL drivers/soc/qcom/qmi_helpers 0xd7a86cb0 qmi_handle_release +EXPORT_SYMBOL drivers/soc/qcom/qmi_helpers 0xfab816ed qmi_add_lookup +EXPORT_SYMBOL drivers/soc/qcom/qmi_helpers 0xff8d25f5 qmi_add_server +EXPORT_SYMBOL drivers/soc/qcom/smd-rpm 0x3abef80b qcom_rpm_smd_write +EXPORT_SYMBOL drivers/soc/qcom/smem 0x34b57571 qcom_smem_alloc +EXPORT_SYMBOL drivers/soc/qcom/smem 0x5a710273 qcom_smem_get_free_space +EXPORT_SYMBOL drivers/soc/qcom/smem 0x9979b76e qcom_smem_virt_to_phys +EXPORT_SYMBOL drivers/soc/qcom/smem 0xeeffa750 qcom_smem_get +EXPORT_SYMBOL drivers/soc/qcom/wcnss_ctrl 0x899096e1 qcom_wcnss_open_channel +EXPORT_SYMBOL drivers/soundwire/soundwire-bus 0x16568455 sdw_master_read_prop +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 0x272cb17d sdw_bus_exit_clk_stop +EXPORT_SYMBOL drivers/soundwire/soundwire-bus 0x275b0267 sdw_stream_remove_slave +EXPORT_SYMBOL drivers/soundwire/soundwire-bus 0x2dab79c1 sdw_bus_clk_stop +EXPORT_SYMBOL drivers/soundwire/soundwire-bus 0x2de6099b sdw_read +EXPORT_SYMBOL drivers/soundwire/soundwire-bus 0x46dab086 sdw_clear_slave_status +EXPORT_SYMBOL drivers/soundwire/soundwire-bus 0x4cde88bf sdw_disable_stream +EXPORT_SYMBOL drivers/soundwire/soundwire-bus 0x4d6ccc8a sdw_bus_master_delete +EXPORT_SYMBOL drivers/soundwire/soundwire-bus 0x51e2931d sdw_nread +EXPORT_SYMBOL drivers/soundwire/soundwire-bus 0x60e31fbb sdw_find_col_index +EXPORT_SYMBOL drivers/soundwire/soundwire-bus 0x71891d59 sdw_deprepare_stream +EXPORT_SYMBOL drivers/soundwire/soundwire-bus 0x7989c512 sdw_handle_slave_status +EXPORT_SYMBOL drivers/soundwire/soundwire-bus 0x7d1c020a sdw_bus_prep_clk_stop +EXPORT_SYMBOL drivers/soundwire/soundwire-bus 0x809e381e sdw_slave_read_prop +EXPORT_SYMBOL drivers/soundwire/soundwire-bus 0x8ebc4eae sdw_stream_add_master +EXPORT_SYMBOL drivers/soundwire/soundwire-bus 0x9485d3b5 sdw_write +EXPORT_SYMBOL drivers/soundwire/soundwire-bus 0x989e271b sdw_stream_add_slave +EXPORT_SYMBOL drivers/soundwire/soundwire-bus 0x9e122d79 sdw_alloc_stream +EXPORT_SYMBOL drivers/soundwire/soundwire-bus 0xb51a96a0 sdw_stream_remove_master +EXPORT_SYMBOL drivers/soundwire/soundwire-bus 0xbbec2c2e sdw_enable_stream +EXPORT_SYMBOL drivers/soundwire/soundwire-bus 0xcf551429 sdw_bus_master_add +EXPORT_SYMBOL drivers/soundwire/soundwire-bus 0xd19d61bc sdw_nwrite +EXPORT_SYMBOL drivers/soundwire/soundwire-bus 0xda5bce09 sdw_release_stream +EXPORT_SYMBOL drivers/soundwire/soundwire-cadence 0x0b5901ee sdw_cdns_is_clock_stop +EXPORT_SYMBOL drivers/soundwire/soundwire-cadence 0x34712074 sdw_cdns_irq +EXPORT_SYMBOL drivers/soundwire/soundwire-cadence 0x491c20d7 sdw_cdns_init +EXPORT_SYMBOL drivers/soundwire/soundwire-cadence 0x56714814 cdns_reset_page_addr +EXPORT_SYMBOL drivers/soundwire/soundwire-cadence 0x60bc4231 sdw_cdns_alloc_pdi +EXPORT_SYMBOL drivers/soundwire/soundwire-cadence 0x6325dc86 cdns_xfer_msg +EXPORT_SYMBOL drivers/soundwire/soundwire-cadence 0x780111da sdw_cdns_enable_interrupt +EXPORT_SYMBOL drivers/soundwire/soundwire-cadence 0x7e03a29c cdns_bus_conf +EXPORT_SYMBOL drivers/soundwire/soundwire-cadence 0x845ab16d cdns_xfer_msg_defer +EXPORT_SYMBOL drivers/soundwire/soundwire-cadence 0x9a919406 cdns_set_sdw_stream +EXPORT_SYMBOL drivers/soundwire/soundwire-cadence 0x9e0ee8cc sdw_cdns_probe +EXPORT_SYMBOL drivers/soundwire/soundwire-cadence 0xa76a6fcb sdw_cdns_thread +EXPORT_SYMBOL drivers/soundwire/soundwire-cadence 0xe5a55364 sdw_cdns_pdi_init +EXPORT_SYMBOL drivers/soundwire/soundwire-cadence 0xef2bb057 sdw_cdns_config_stream +EXPORT_SYMBOL drivers/soundwire/soundwire-cadence 0xf3721524 sdw_cdns_clock_restart +EXPORT_SYMBOL drivers/soundwire/soundwire-cadence 0xf503a96d sdw_cdns_clock_stop +EXPORT_SYMBOL drivers/soundwire/soundwire-cadence 0xfa15df7f sdw_cdns_exit_reset +EXPORT_SYMBOL drivers/soundwire/soundwire-intel 0x9d3c26fe sdw_intel_exit +EXPORT_SYMBOL drivers/ssb/ssb 0x084361e7 ssb_bus_may_powerdown +EXPORT_SYMBOL drivers/ssb/ssb 0x2174c41f ssb_pcihost_register +EXPORT_SYMBOL drivers/ssb/ssb 0x21cde204 ssb_commit_settings +EXPORT_SYMBOL drivers/ssb/ssb 0x21ed0070 ssb_device_enable +EXPORT_SYMBOL drivers/ssb/ssb 0x2fccff81 ssb_clockspeed +EXPORT_SYMBOL drivers/ssb/ssb 0x36df0b64 ssb_driver_unregister +EXPORT_SYMBOL drivers/ssb/ssb 0x3c43b3a6 ssb_dma_translation +EXPORT_SYMBOL drivers/ssb/ssb 0x49a4abd1 ssb_bus_unregister +EXPORT_SYMBOL drivers/ssb/ssb 0x6d094512 ssb_pmu_set_ldo_paref +EXPORT_SYMBOL drivers/ssb/ssb 0x765cd379 ssb_bus_sdiobus_register +EXPORT_SYMBOL drivers/ssb/ssb 0x79d6f164 ssb_pcicore_dev_irqvecs_enable +EXPORT_SYMBOL drivers/ssb/ssb 0x7f53d3c4 ssb_chipco_gpio_control +EXPORT_SYMBOL drivers/ssb/ssb 0x98aa4c5e ssb_bus_suspend +EXPORT_SYMBOL drivers/ssb/ssb 0x98cc3c9f ssb_set_devtypedata +EXPORT_SYMBOL drivers/ssb/ssb 0x9a6f99fc ssb_pmu_set_ldo_voltage +EXPORT_SYMBOL drivers/ssb/ssb 0xaf969640 ssb_device_disable +EXPORT_SYMBOL drivers/ssb/ssb 0xcb17f1cb ssb_admatch_base +EXPORT_SYMBOL drivers/ssb/ssb 0xcd1b5f08 ssb_device_is_enabled +EXPORT_SYMBOL drivers/ssb/ssb 0xdfc7c6ef ssb_admatch_size +EXPORT_SYMBOL drivers/ssb/ssb 0xe9c9600c ssb_bus_resume +EXPORT_SYMBOL drivers/ssb/ssb 0xeb38a210 __ssb_driver_register +EXPORT_SYMBOL drivers/ssb/ssb 0xecdacac3 ssb_bus_powerup +EXPORT_SYMBOL drivers/staging/fbtft/fbtft 0x051c55ad fbtft_framebuffer_release +EXPORT_SYMBOL drivers/staging/fbtft/fbtft 0x0600290c fbtft_write_gpio16_wr_latched +EXPORT_SYMBOL drivers/staging/fbtft/fbtft 0x1148af4a fbtft_read_spi +EXPORT_SYMBOL drivers/staging/fbtft/fbtft 0x2792b41b fbtft_write_vmem16_bus8 +EXPORT_SYMBOL drivers/staging/fbtft/fbtft 0x2f07ffaa fbtft_remove_common +EXPORT_SYMBOL drivers/staging/fbtft/fbtft 0x4527c615 fbtft_register_backlight +EXPORT_SYMBOL drivers/staging/fbtft/fbtft 0x47544fa3 fbtft_init_display +EXPORT_SYMBOL drivers/staging/fbtft/fbtft 0x4de5f47d fbtft_unregister_framebuffer +EXPORT_SYMBOL drivers/staging/fbtft/fbtft 0x5cf6f598 fbtft_probe_common +EXPORT_SYMBOL drivers/staging/fbtft/fbtft 0x61ba21a1 fbtft_write_reg16_bus8 +EXPORT_SYMBOL drivers/staging/fbtft/fbtft 0x6c47922f fbtft_write_spi_emulate_9 +EXPORT_SYMBOL drivers/staging/fbtft/fbtft 0x6f03c462 fbtft_write_buf_dc +EXPORT_SYMBOL drivers/staging/fbtft/fbtft 0x7ce31a63 fbtft_write_vmem16_bus16 +EXPORT_SYMBOL drivers/staging/fbtft/fbtft 0x829c84e6 fbtft_framebuffer_alloc +EXPORT_SYMBOL drivers/staging/fbtft/fbtft 0x852ede8c fbtft_write_reg16_bus16 +EXPORT_SYMBOL drivers/staging/fbtft/fbtft 0x893f032e fbtft_write_spi +EXPORT_SYMBOL drivers/staging/fbtft/fbtft 0x984ca629 fbtft_write_vmem8_bus8 +EXPORT_SYMBOL drivers/staging/fbtft/fbtft 0x98b8caed fbtft_write_reg8_bus8 +EXPORT_SYMBOL drivers/staging/fbtft/fbtft 0xb3740d24 fbtft_write_gpio8_wr +EXPORT_SYMBOL drivers/staging/fbtft/fbtft 0xbaf1cd43 fbtft_write_vmem16_bus9 +EXPORT_SYMBOL drivers/staging/fbtft/fbtft 0xbea2e3f5 fbtft_dbg_hex +EXPORT_SYMBOL drivers/staging/fbtft/fbtft 0xddd251da fbtft_write_reg8_bus9 +EXPORT_SYMBOL drivers/staging/fbtft/fbtft 0xe58ae66f fbtft_unregister_backlight +EXPORT_SYMBOL drivers/staging/fbtft/fbtft 0xf4a238fe fbtft_register_framebuffer +EXPORT_SYMBOL drivers/staging/fbtft/fbtft 0xffc91cab fbtft_write_gpio16_wr +EXPORT_SYMBOL drivers/staging/gasket/gasket 0x00c9f6a6 gasket_pci_add_device +EXPORT_SYMBOL drivers/staging/gasket/gasket 0x04f1d91b gasket_get_ioctl_permissions_cb +EXPORT_SYMBOL drivers/staging/gasket/gasket 0x065f9c9d gasket_page_table_max_size +EXPORT_SYMBOL drivers/staging/gasket/gasket 0x339c2b95 gasket_page_table_map +EXPORT_SYMBOL drivers/staging/gasket/gasket 0x34cc3109 gasket_sysfs_get_device_data +EXPORT_SYMBOL drivers/staging/gasket/gasket 0x372973e0 gasket_page_table_are_addrs_bad +EXPORT_SYMBOL drivers/staging/gasket/gasket 0x38c3d415 gasket_page_table_num_active_pages +EXPORT_SYMBOL drivers/staging/gasket/gasket 0x4109757c gasket_page_table_partition +EXPORT_SYMBOL drivers/staging/gasket/gasket 0x4292ff96 gasket_page_table_is_dev_addr_bad +EXPORT_SYMBOL drivers/staging/gasket/gasket 0x43299805 gasket_register_device +EXPORT_SYMBOL drivers/staging/gasket/gasket 0x5184b57d gasket_reset_nolock +EXPORT_SYMBOL drivers/staging/gasket/gasket 0x772ff619 gasket_enable_device +EXPORT_SYMBOL drivers/staging/gasket/gasket 0x77311f6a gasket_page_table_unmap_all +EXPORT_SYMBOL drivers/staging/gasket/gasket 0x89a16e7d gasket_unregister_device +EXPORT_SYMBOL drivers/staging/gasket/gasket 0x8a1abfe2 gasket_sysfs_put_device_data +EXPORT_SYMBOL drivers/staging/gasket/gasket 0x8c92da47 gasket_page_table_num_simple_entries +EXPORT_SYMBOL drivers/staging/gasket/gasket 0xb1f9955d gasket_sysfs_create_entries +EXPORT_SYMBOL drivers/staging/gasket/gasket 0xb2879c33 gasket_sysfs_register_store +EXPORT_SYMBOL drivers/staging/gasket/gasket 0xb3634615 gasket_pci_remove_device +EXPORT_SYMBOL drivers/staging/gasket/gasket 0xbaa2668a gasket_num_name_lookup +EXPORT_SYMBOL drivers/staging/gasket/gasket 0xbaf2f8cd gasket_page_table_unmap +EXPORT_SYMBOL drivers/staging/gasket/gasket 0xc225208c gasket_page_table_num_entries +EXPORT_SYMBOL drivers/staging/gasket/gasket 0xc66e2003 gasket_mm_unmap_region +EXPORT_SYMBOL drivers/staging/gasket/gasket 0xe243d048 gasket_wait_with_reschedule +EXPORT_SYMBOL drivers/staging/gasket/gasket 0xe76edaa5 gasket_sysfs_get_attr +EXPORT_SYMBOL drivers/staging/gasket/gasket 0xe79d763a gasket_sysfs_put_attr +EXPORT_SYMBOL drivers/staging/gasket/gasket 0xe827ebff gasket_disable_device +EXPORT_SYMBOL drivers/staging/gasket/gasket 0xfc2475c2 gasket_reset +EXPORT_SYMBOL drivers/staging/iio/addac/adt7316 0x505a3caf adt7316_probe +EXPORT_SYMBOL drivers/staging/iio/meter/ade7854 0xa843fef1 ade7854_probe +EXPORT_SYMBOL drivers/staging/media/allegro-dvt/allegro 0x2c79d0f2 msg_type_name +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x0932789d rtllib_start_send_beacons +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x0eb33af2 rtllib_wx_get_essid +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x12c409dc rtllib_DisableIntelPromiscuousMode +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x14bfc66b rtllib_act_scanning +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x1b2275a6 rtllib_get_beacon +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x1bf63a1a dot11d_channel_map +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x1c114823 alloc_rtllib +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x22166084 rt_global_debug_component +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x22d389eb rtllib_ps_tx_ack +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x25a1201b rtllib_wx_get_encode +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x269d24e0 rtllib_sta_ps_send_null_frame +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x36195324 rtllib_wx_set_rts +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x41d4cc18 rtllib_stop_scan_syncro +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x42fe2f43 rtllib_wx_set_essid +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x46b9a4db RemovePeerTS +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x47f0d022 rtllib_wx_set_rawtx +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x4e4aa1b9 rtllib_wx_set_gen_ie +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x528be271 rtllib_softmac_start_protocol +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x5ddacdec rtllib_wx_set_auth +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x66333868 rtllib_wx_set_wap +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x6e8d0c1b rtllib_reset_queue +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x7a94bba4 rtllib_xmit +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x7d34b9b7 rtllib_wx_set_mlme +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x7e8dc333 dot11d_init +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x84183cd1 rtllib_wx_set_scan +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x8755d4d7 rtllib_wx_get_rts +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x8b490a08 rtllib_stop_send_beacons +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x9200f494 rtllib_wx_get_name +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x932aeb1f rtllib_EnableIntelPromiscuousMode +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x996a139d rtllib_legal_channel +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x998bee14 rtllib_wx_set_encode +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0xa01dd3f0 rtllib_wx_get_scan +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0xaff36a19 rtllib_wx_set_power +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0xc2c30fae rtllib_wx_get_freq +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0xc2e73d85 rtllib_wx_get_rate +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0xc8120375 rtllib_wx_set_mode +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0xcaad1f44 rtllib_start_scan_syncro +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0xd243e98f rtllib_softmac_stop_protocol +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0xd77fbf9b rtllib_wx_get_wap +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0xdd62f1e0 rtllib_rx +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0xdf78f620 rtllib_wlan_frequencies +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0xe117165c rtllib_stop_scan +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0xe31d09b8 rtllib_MgntDisconnect +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0xe3be7fa8 rtllib_wx_get_power +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0xe6a6a530 rtllib_wx_set_encode_ext +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0xe6c6e08f rtllib_wx_set_freq +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0xe6e2d2a4 rtllib_wx_set_rate +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0xe821e309 notify_wx_assoc_event +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0xec17ec54 rtllib_wx_get_mode +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0xf072221d HT_update_self_and_peer_setting +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0xfc534285 free_rtllib +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x000a1d46 ieee80211_stop_queue_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x018c55f2 ieee80211_wx_get_scan_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x09bad89e ieee80211_softmac_xmit_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x1622d5d7 ieee80211_wake_queue_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x1bd7d68f dot11d_update_country_ie +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x1cb22b18 HTUpdateSelfAndPeerSetting +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x1d66a0ff ieee80211_is_shortslot_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x236fd138 ieee80211_wx_get_encode_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x267bed34 ieee80211_wx_get_essid_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x26936b8f ieee80211_wx_set_freq_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x2822656a ieee80211_softmac_stop_protocol_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x2ca05f3b ieee80211_wx_get_power_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x2f397b04 ieee80211_start_send_beacons_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x4010d69b ieee80211_wx_set_encode_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x44fbc9a3 ieee80211_wx_set_mode_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x4cb6eca5 ieee80211_wx_set_rawtx_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x534c3f17 ieee80211_disassociate_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x55cb2526 ieee80211_wx_set_power_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x572c51f3 SendDisassociation_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x5baa6580 ieee80211_reset_queue_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x5d69d2da is_legal_channel +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x5f109729 ieee80211_wx_set_essid_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x62614dbf ieee80211_rx_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x63adbe56 ieee80211_txb_free_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x640bbd1e ieee80211_wx_set_rate_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x6a23c095 ieee80211_wx_set_gen_ie_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x71781bca ieee80211_stop_scan_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x77f50780 ieee80211_wx_set_mlme_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x78ba5f57 ieee80211_wpa_supplicant_ioctl_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x7f87ef34 to_legal_channel +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x85d43540 ieee80211_wx_get_encode_ext_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x8cc8ac11 ieee80211_softmac_start_protocol_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x8e899a3a ieee80211_rx_mgt_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x9072060b ieee80211_wx_set_auth_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x9151d286 ieee80211_wx_get_freq_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x91d78f21 notify_wx_assoc_event_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x9cf00d07 ieee80211_wx_get_name_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x9e99df56 dot11d_get_max_tx_pwr_in_dbm +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0xa359c0f5 ieee80211_wx_set_encode_ext_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0xb17286d3 ieee80211_wx_get_rts_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0xb1aa1010 ieee80211_stop_send_beacons_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0xb6090000 ieee80211_wx_set_wap_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0xb64eecfb ieee80211_wx_set_scan_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0xbf5c7ddb dot11d_reset +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0xc370a43e ieee80211_wlan_frequencies_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0xc9ec327e ieee80211_wx_get_wap_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0xcb4bfb71 ieee80211_ps_tx_ack_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0xce97b4ad ieee80211_wx_set_rts_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0xd3c90417 ieee80211_wx_get_rate_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0xd6a74599 rtl8192u_dot11d_init +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0xd84461a6 ieee80211_start_scan_syncro_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0xe1f96346 ieee80211_get_beacon_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0xecc5fb1b ieee80211_is_54g_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0xf33970aa ieee80211_wx_get_mode_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0xf707eb1d dot11d_scan_complete +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0xfd9d3eeb ieee80211_softmac_scan_syncro_rsl +EXPORT_SYMBOL drivers/staging/vc04_services/vchiq 0x2b777418 vchi_get_peer_version +EXPORT_SYMBOL drivers/staging/vc04_services/vchiq 0x2f3516ab vchiq_connect +EXPORT_SYMBOL drivers/staging/vc04_services/vchiq 0x36331e4f vchi_held_msg_release +EXPORT_SYMBOL drivers/staging/vc04_services/vchiq 0x47f110c2 vchi_service_release +EXPORT_SYMBOL drivers/staging/vc04_services/vchiq 0x5211f7cb vchi_initialise +EXPORT_SYMBOL drivers/staging/vc04_services/vchiq 0x57e16fff vchi_disconnect +EXPORT_SYMBOL drivers/staging/vc04_services/vchiq 0x582ed8ca vchiq_bulk_receive +EXPORT_SYMBOL drivers/staging/vc04_services/vchiq 0x6682543a vchi_msg_dequeue +EXPORT_SYMBOL drivers/staging/vc04_services/vchiq 0x69df51ac vchi_bulk_queue_receive +EXPORT_SYMBOL drivers/staging/vc04_services/vchiq 0x713b5716 vchiq_shutdown +EXPORT_SYMBOL drivers/staging/vc04_services/vchiq 0x84112d9c vchi_connect +EXPORT_SYMBOL drivers/staging/vc04_services/vchiq 0x915629ae vchi_bulk_queue_transmit +EXPORT_SYMBOL drivers/staging/vc04_services/vchiq 0x92b2feb4 vchiq_bulk_transmit +EXPORT_SYMBOL drivers/staging/vc04_services/vchiq 0xa22e9df3 vchiq_add_connected_callback +EXPORT_SYMBOL drivers/staging/vc04_services/vchiq 0xaa03351f vchi_service_open +EXPORT_SYMBOL drivers/staging/vc04_services/vchiq 0xaba69e05 vchiq_add_service +EXPORT_SYMBOL drivers/staging/vc04_services/vchiq 0xbd9445f3 vchi_msg_remove +EXPORT_SYMBOL drivers/staging/vc04_services/vchiq 0xbf670d66 vchi_msg_peek +EXPORT_SYMBOL drivers/staging/vc04_services/vchiq 0xc1fdb31f vchiq_open_service +EXPORT_SYMBOL drivers/staging/vc04_services/vchiq 0xc4b0bf30 vchi_service_close +EXPORT_SYMBOL drivers/staging/vc04_services/vchiq 0xc5c429da vchiq_initialise +EXPORT_SYMBOL drivers/staging/vc04_services/vchiq 0xcc07cfe3 vchi_queue_kernel_message +EXPORT_SYMBOL drivers/staging/vc04_services/vchiq 0xf2e8c52e vchi_service_use +EXPORT_SYMBOL drivers/staging/vc04_services/vchiq 0xf63a36d7 vchi_msg_hold +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x01d9ac82 iscsit_queue_rsp +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x07cb21d9 iscsit_register_transport +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x08d2ea7e iscsit_setup_scsi_cmd +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x0b1cb3fd iscsit_reject_cmd +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x1dc2f62a iscsit_build_logout_rsp +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x257c1c15 iscsit_stop_dataout_timer +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x27f93358 iscsit_get_datain_values +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x2b5e046e iscsit_handle_logout_cmd +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x2fc2fb1e iscsit_build_reject +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x36fbf015 iscsit_logout_post_handler +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x3a2259b8 iscsi_target_check_login_request +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x468643ea iscsit_find_cmd_from_itt_or_dump +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x4b785202 iscsit_response_queue +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x4c7173b0 iscsit_find_cmd_from_itt +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x4d9f032c iscsit_free_cmd +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x500b987c iscsit_check_dataout_payload +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x5420ea76 iscsi_change_param_sprintf +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x5596aa86 iscsit_process_nop_out +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x58072e2e iscsit_handle_task_mgt_cmd +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x5ff02a4a iscsit_setup_text_cmd +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x6565a493 iscsit_increment_maxcmdsn +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x6a9ff6f6 iscsit_check_dataout_hdr +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x6d68ebbb iscsit_process_scsi_cmd +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x714a08a9 iscsit_aborted_task +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x72e93d6d iscsit_immediate_queue +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x76a61db6 iscsit_set_unsolicited_dataout +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x7eec83d3 __iscsit_check_dataout_hdr +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x80e738a1 iscsit_sequence_cmd +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x964c2ef9 iscsit_build_r2ts_for_cmd +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x96c98499 iscsit_build_rsp_pdu +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x9ce45751 iscsit_build_text_rsp +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0xa1326767 iscsit_build_task_mgt_rsp +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0xab7a4d17 iscsit_cause_connection_reinstatement +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0xaeab1ece iscsit_unregister_transport +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0xb5c4e2f4 iscsit_process_text_cmd +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0xc29e1aa5 iscsit_release_cmd +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0xce33aa54 iscsit_add_reject +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0xce9ac3d6 iscsit_add_cmd_to_immediate_queue +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0xda58e05d iscsit_build_datain_pdu +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0xde709a0e iscsit_setup_nop_out +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0xe842db4e iscsit_tmr_post_handler +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0xf34332f0 iscsi_find_param_from_key +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0xf9d33783 iscsit_handle_snack +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0xfbca37c5 iscsit_build_nopin_rsp +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0xfdc160cc iscsit_allocate_cmd +EXPORT_SYMBOL drivers/target/target_core_mod 0x01ce019c target_cmd_init_cdb +EXPORT_SYMBOL drivers/target/target_core_mod 0x020b5e7a core_allocate_nexus_loss_ua +EXPORT_SYMBOL drivers/target/target_core_mod 0x02501768 spc_emulate_report_luns +EXPORT_SYMBOL drivers/target/target_core_mod 0x02c2f235 transport_free_session +EXPORT_SYMBOL drivers/target/target_core_mod 0x0871ffd6 transport_set_vpd_ident +EXPORT_SYMBOL drivers/target/target_core_mod 0x123665a0 target_nacl_find_deve +EXPORT_SYMBOL drivers/target/target_core_mod 0x142072c0 transport_set_vpd_assoc +EXPORT_SYMBOL drivers/target/target_core_mod 0x17534081 target_lun_is_rdonly +EXPORT_SYMBOL drivers/target/target_core_mod 0x19e35553 transport_alloc_session +EXPORT_SYMBOL drivers/target/target_core_mod 0x20420edc target_wait_for_sess_cmds +EXPORT_SYMBOL drivers/target/target_core_mod 0x217f3370 core_tpg_set_initiator_node_queue_depth +EXPORT_SYMBOL drivers/target/target_core_mod 0x22ddd894 target_cmd_parse_cdb +EXPORT_SYMBOL drivers/target/target_core_mod 0x27ed524e core_tpg_get_initiator_node_acl +EXPORT_SYMBOL drivers/target/target_core_mod 0x3074d765 core_tpg_deregister +EXPORT_SYMBOL drivers/target/target_core_mod 0x335f4d7c target_get_sess_cmd +EXPORT_SYMBOL drivers/target/target_core_mod 0x3426f3bf target_to_linux_sector +EXPORT_SYMBOL drivers/target/target_core_mod 0x3473ff59 passthrough_attrib_attrs +EXPORT_SYMBOL drivers/target/target_core_mod 0x354ca9c3 target_remove_session +EXPORT_SYMBOL drivers/target/target_core_mod 0x35c498b0 target_register_template +EXPORT_SYMBOL drivers/target/target_core_mod 0x3a20a9d7 transport_set_vpd_ident_type +EXPORT_SYMBOL drivers/target/target_core_mod 0x3c266ba7 core_alua_check_nonop_delay +EXPORT_SYMBOL drivers/target/target_core_mod 0x3ef39834 passthrough_parse_cdb +EXPORT_SYMBOL drivers/target/target_core_mod 0x40647ccb transport_kmap_data_sg +EXPORT_SYMBOL drivers/target/target_core_mod 0x443cd8d1 transport_lookup_cmd_lun +EXPORT_SYMBOL drivers/target/target_core_mod 0x46f99304 transport_alloc_session_tags +EXPORT_SYMBOL drivers/target/target_core_mod 0x49baf2ba transport_backend_register +EXPORT_SYMBOL drivers/target/target_core_mod 0x50c1edea spc_emulate_inquiry_std +EXPORT_SYMBOL drivers/target/target_core_mod 0x547e4491 target_unregister_template +EXPORT_SYMBOL drivers/target/target_core_mod 0x54c022eb transport_init_se_cmd +EXPORT_SYMBOL drivers/target/target_core_mod 0x5619abc7 core_tpg_register +EXPORT_SYMBOL drivers/target/target_core_mod 0x577ecc44 transport_kunmap_data_sg +EXPORT_SYMBOL drivers/target/target_core_mod 0x59a4e829 target_undepend_item +EXPORT_SYMBOL drivers/target/target_core_mod 0x5e552773 target_execute_cmd +EXPORT_SYMBOL drivers/target/target_core_mod 0x61eab8a3 core_tpg_set_initiator_node_tag +EXPORT_SYMBOL drivers/target/target_core_mod 0x638bffb7 target_free_sgl +EXPORT_SYMBOL drivers/target/target_core_mod 0x6c73cfa7 target_show_dynamic_sessions +EXPORT_SYMBOL drivers/target/target_core_mod 0x6dbff696 transport_wait_for_tasks +EXPORT_SYMBOL drivers/target/target_core_mod 0x6fb538f7 target_setup_session +EXPORT_SYMBOL drivers/target/target_core_mod 0x70699852 __transport_register_session +EXPORT_SYMBOL drivers/target/target_core_mod 0x73d357d2 transport_send_check_condition_and_sense +EXPORT_SYMBOL drivers/target/target_core_mod 0x741f8e23 core_tpg_check_initiator_node_acl +EXPORT_SYMBOL drivers/target/target_core_mod 0x75b3a387 target_depend_item +EXPORT_SYMBOL drivers/target/target_core_mod 0x77511a0b transport_generic_new_cmd +EXPORT_SYMBOL drivers/target/target_core_mod 0x7a1d0d3c target_alloc_sgl +EXPORT_SYMBOL drivers/target/target_core_mod 0x8a87007a sbc_dif_verify +EXPORT_SYMBOL drivers/target/target_core_mod 0x8ae578b8 target_submit_tmr +EXPORT_SYMBOL drivers/target/target_core_mod 0x8c3c5208 target_put_sess_cmd +EXPORT_SYMBOL drivers/target/target_core_mod 0x8c6af761 transport_generic_request_failure +EXPORT_SYMBOL drivers/target/target_core_mod 0x8d2044ef transport_register_session +EXPORT_SYMBOL drivers/target/target_core_mod 0x8d219e38 transport_copy_sense_to_cmd +EXPORT_SYMBOL drivers/target/target_core_mod 0x960dd67c sbc_dif_copy_prot +EXPORT_SYMBOL drivers/target/target_core_mod 0x99949a1d sbc_get_device_type +EXPORT_SYMBOL drivers/target/target_core_mod 0x9a973cd4 target_show_cmd +EXPORT_SYMBOL drivers/target/target_core_mod 0xa1a75105 target_submit_cmd_map_sgls +EXPORT_SYMBOL drivers/target/target_core_mod 0xafae2d5f transport_deregister_session +EXPORT_SYMBOL drivers/target/target_core_mod 0xb08ae6d4 core_tmr_alloc_req +EXPORT_SYMBOL drivers/target/target_core_mod 0xb95b0294 transport_generic_handle_tmr +EXPORT_SYMBOL drivers/target/target_core_mod 0xbae7dc56 transport_handle_cdb_direct +EXPORT_SYMBOL drivers/target/target_core_mod 0xc2316c3b transport_lookup_tmr_lun +EXPORT_SYMBOL drivers/target/target_core_mod 0xc268279f target_backend_unregister +EXPORT_SYMBOL drivers/target/target_core_mod 0xcc14d2ee spc_parse_cdb +EXPORT_SYMBOL drivers/target/target_core_mod 0xcc286d9e transport_deregister_session_configfs +EXPORT_SYMBOL drivers/target/target_core_mod 0xccdd206c target_complete_cmd_with_length +EXPORT_SYMBOL drivers/target/target_core_mod 0xcd272494 sbc_parse_cdb +EXPORT_SYMBOL drivers/target/target_core_mod 0xcd32c5fb passthrough_pr_attrib_attrs +EXPORT_SYMBOL drivers/target/target_core_mod 0xd4e8d2ca target_put_nacl +EXPORT_SYMBOL drivers/target/target_core_mod 0xdab78aba spc_emulate_evpd_83 +EXPORT_SYMBOL drivers/target/target_core_mod 0xdf52a58b target_submit_cmd +EXPORT_SYMBOL drivers/target/target_core_mod 0xe370328e target_sess_cmd_list_set_waiting +EXPORT_SYMBOL drivers/target/target_core_mod 0xe510ea83 transport_init_session +EXPORT_SYMBOL drivers/target/target_core_mod 0xe7325200 target_tpg_has_node_acl +EXPORT_SYMBOL drivers/target/target_core_mod 0xe8dc207b transport_generic_free_cmd +EXPORT_SYMBOL drivers/target/target_core_mod 0xecde4bf2 target_configure_unmap_from_queue +EXPORT_SYMBOL drivers/target/target_core_mod 0xf3c2dfe0 transport_set_vpd_proto_id +EXPORT_SYMBOL drivers/target/target_core_mod 0xf5282c21 sbc_get_write_same_sectors +EXPORT_SYMBOL drivers/target/target_core_mod 0xf79f41b5 target_send_busy +EXPORT_SYMBOL drivers/target/target_core_mod 0xf7eac8d7 sbc_attrib_attrs +EXPORT_SYMBOL drivers/target/target_core_mod 0xfcd59706 target_complete_cmd +EXPORT_SYMBOL drivers/usb/class/cdc-wdm 0xa9122de9 usb_cdc_wdm_register +EXPORT_SYMBOL drivers/usb/gadget/libcomposite 0x6970f35e usb_os_desc_prepare_interf_dir +EXPORT_SYMBOL drivers/usb/host/sl811-hcd 0x27204718 sl811h_driver +EXPORT_SYMBOL drivers/usb/serial/usb_wwan 0x0b8516de usb_wwan_port_remove +EXPORT_SYMBOL drivers/usb/serial/usb_wwan 0x0e6ceec9 usb_wwan_suspend +EXPORT_SYMBOL drivers/usb/serial/usb_wwan 0x1b8a0010 usb_wwan_write +EXPORT_SYMBOL drivers/usb/serial/usb_wwan 0x56461af6 usb_wwan_get_serial_info +EXPORT_SYMBOL drivers/usb/serial/usb_wwan 0x63263162 usb_wwan_write_room +EXPORT_SYMBOL drivers/usb/serial/usb_wwan 0x6945c133 usb_wwan_tiocmget +EXPORT_SYMBOL drivers/usb/serial/usb_wwan 0x7519e725 usb_wwan_close +EXPORT_SYMBOL drivers/usb/serial/usb_wwan 0x7f09305b usb_wwan_tiocmset +EXPORT_SYMBOL drivers/usb/serial/usb_wwan 0x82b81d6b usb_wwan_open +EXPORT_SYMBOL drivers/usb/serial/usb_wwan 0x85159ba6 usb_wwan_resume +EXPORT_SYMBOL drivers/usb/serial/usb_wwan 0xa748b020 usb_wwan_dtr_rts +EXPORT_SYMBOL drivers/usb/serial/usb_wwan 0xb18a8599 usb_wwan_chars_in_buffer +EXPORT_SYMBOL drivers/usb/serial/usb_wwan 0xef7e5708 usb_wwan_set_serial_info +EXPORT_SYMBOL drivers/usb/serial/usbserial 0x5dd22a35 usb_serial_resume +EXPORT_SYMBOL drivers/usb/serial/usbserial 0x888d7f14 usb_serial_suspend +EXPORT_SYMBOL drivers/vfio/mdev/mdev 0x06d4e01e mdev_set_drvdata +EXPORT_SYMBOL drivers/vfio/mdev/mdev 0x491839ed mdev_unregister_driver +EXPORT_SYMBOL drivers/vfio/mdev/mdev 0x569ed51a mdev_register_device +EXPORT_SYMBOL drivers/vfio/mdev/mdev 0x678ba257 mdev_register_driver +EXPORT_SYMBOL drivers/vfio/mdev/mdev 0x8e913b6c mdev_get_drvdata +EXPORT_SYMBOL drivers/vfio/mdev/mdev 0x9010220a mdev_from_dev +EXPORT_SYMBOL drivers/vfio/mdev/mdev 0xa9afadcf mdev_uuid +EXPORT_SYMBOL drivers/vfio/mdev/mdev 0xa9c6c2f0 mdev_dev +EXPORT_SYMBOL drivers/vfio/mdev/mdev 0xb6bf21bf mdev_unregister_device +EXPORT_SYMBOL drivers/vfio/mdev/mdev 0xbdda3e55 mdev_set_iommu_device +EXPORT_SYMBOL drivers/vfio/mdev/mdev 0xbe5fb84d mdev_parent_dev +EXPORT_SYMBOL drivers/vfio/mdev/mdev 0xc6b413f4 mdev_get_iommu_device +EXPORT_SYMBOL drivers/vfio/vfio 0x19567d06 vfio_info_cap_shift +EXPORT_SYMBOL drivers/vfio/vfio 0x1aa9fba0 vfio_dma_rw +EXPORT_SYMBOL drivers/vfio/vfio 0x48a81d7e vfio_group_pin_pages +EXPORT_SYMBOL drivers/vfio/vfio 0x6c28be5a vfio_info_add_capability +EXPORT_SYMBOL drivers/vfio/vfio 0x747eaedb vfio_pin_pages +EXPORT_SYMBOL drivers/vfio/vfio 0x7834defd vfio_group_unpin_pages +EXPORT_SYMBOL drivers/vfio/vfio 0x9df007d5 vfio_unregister_notifier +EXPORT_SYMBOL drivers/vfio/vfio 0xadc044b7 vfio_set_irqs_validate_and_prepare +EXPORT_SYMBOL drivers/vfio/vfio 0xc02318d9 vfio_unpin_pages +EXPORT_SYMBOL drivers/vfio/vfio 0xc6acd75d vfio_register_notifier +EXPORT_SYMBOL drivers/vhost/vhost 0x0af478d6 vhost_chr_write_iter +EXPORT_SYMBOL drivers/vhost/vhost 0xbbad0b69 vhost_chr_poll +EXPORT_SYMBOL drivers/vhost/vringh 0x3b304ebb vringh_iov_push_user +EXPORT_SYMBOL drivers/vhost/vringh 0x3ecc1eea vringh_getdesc_kern +EXPORT_SYMBOL drivers/vhost/vringh 0x4311cd91 vringh_iov_pull_user +EXPORT_SYMBOL drivers/vhost/vringh 0x44d6f41b vringh_notify_enable_kern +EXPORT_SYMBOL drivers/vhost/vringh 0x4b6a6e23 vringh_iov_pull_iotlb +EXPORT_SYMBOL drivers/vhost/vringh 0x4d0529ee vringh_complete_multi_user +EXPORT_SYMBOL drivers/vhost/vringh 0x56f694fc vringh_abandon_kern +EXPORT_SYMBOL drivers/vhost/vringh 0x58bc86ac vringh_complete_user +EXPORT_SYMBOL drivers/vhost/vringh 0x5aa88061 vringh_init_user +EXPORT_SYMBOL drivers/vhost/vringh 0x5e47ee29 vringh_notify_enable_user +EXPORT_SYMBOL drivers/vhost/vringh 0x6d95262b vringh_getdesc_user +EXPORT_SYMBOL drivers/vhost/vringh 0x80ad788a vringh_notify_disable_user +EXPORT_SYMBOL drivers/vhost/vringh 0x85665842 vringh_notify_enable_iotlb +EXPORT_SYMBOL drivers/vhost/vringh 0x8701069c vringh_abandon_iotlb +EXPORT_SYMBOL drivers/vhost/vringh 0x8bfb5a2b vringh_complete_iotlb +EXPORT_SYMBOL drivers/vhost/vringh 0x8d40c6f4 vringh_getdesc_iotlb +EXPORT_SYMBOL drivers/vhost/vringh 0x8e78a074 vringh_need_notify_user +EXPORT_SYMBOL drivers/vhost/vringh 0x91b5a92c vringh_abandon_user +EXPORT_SYMBOL drivers/vhost/vringh 0x97fa07e9 vringh_iov_push_kern +EXPORT_SYMBOL drivers/vhost/vringh 0xac2d6746 vringh_init_kern +EXPORT_SYMBOL drivers/vhost/vringh 0xaf01a583 vringh_set_iotlb +EXPORT_SYMBOL drivers/vhost/vringh 0xbf4f4fbd vringh_need_notify_iotlb +EXPORT_SYMBOL drivers/vhost/vringh 0xd3a14d7d vringh_complete_kern +EXPORT_SYMBOL drivers/vhost/vringh 0xde804bb9 vringh_iov_pull_kern +EXPORT_SYMBOL drivers/vhost/vringh 0xe544457e vringh_notify_disable_iotlb +EXPORT_SYMBOL drivers/vhost/vringh 0xee1c7df3 vringh_init_iotlb +EXPORT_SYMBOL drivers/vhost/vringh 0xf1bbb2ad vringh_need_notify_kern +EXPORT_SYMBOL drivers/vhost/vringh 0xf6784994 vringh_iov_push_iotlb +EXPORT_SYMBOL drivers/vhost/vringh 0xff6e6a53 vringh_notify_disable_kern +EXPORT_SYMBOL drivers/video/backlight/lcd 0x53b628cb devm_lcd_device_unregister +EXPORT_SYMBOL drivers/video/backlight/lcd 0x53d80f9d devm_lcd_device_register +EXPORT_SYMBOL drivers/video/backlight/lcd 0x84475de6 lcd_device_register +EXPORT_SYMBOL drivers/video/backlight/lcd 0xfd11c3e0 lcd_device_unregister +EXPORT_SYMBOL drivers/video/fbdev/core/svgalib 0x17f3f471 svga_set_default_seq_regs +EXPORT_SYMBOL drivers/video/fbdev/core/svgalib 0x1ac8f16e svga_tilefill +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 0x5d2e172b svga_tileblit +EXPORT_SYMBOL drivers/video/fbdev/core/svgalib 0x6108b881 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 0xab91af3a svga_settile +EXPORT_SYMBOL drivers/video/fbdev/core/svgalib 0xb0ab2b2e svga_check_timings +EXPORT_SYMBOL drivers/video/fbdev/core/svgalib 0xb774688c svga_get_tilemax +EXPORT_SYMBOL drivers/video/fbdev/core/svgalib 0xd22ca511 svga_set_default_atc_regs +EXPORT_SYMBOL drivers/video/fbdev/core/svgalib 0xd39e9c15 svga_tilecopy +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 0xf0c7a5cc svga_get_caps +EXPORT_SYMBOL drivers/video/fbdev/core/syscopyarea 0x04b8f7fe sys_copyarea +EXPORT_SYMBOL drivers/video/fbdev/core/sysfillrect 0x8ee67e4d sys_fillrect +EXPORT_SYMBOL drivers/video/fbdev/core/sysimgblt 0x9f414a29 sys_imageblit +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 0xa91d7a80 cyber2000fb_attach +EXPORT_SYMBOL drivers/video/fbdev/cyber2000fb 0xb39f68d1 cyber2000fb_enable_extregs +EXPORT_SYMBOL drivers/video/fbdev/macmodes 0x0f5fed0e mac_find_mode +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/matrox/g450_pll 0x7d069e4c matroxfb_g450_setclk +EXPORT_SYMBOL drivers/video/fbdev/matrox/g450_pll 0x87acd081 matroxfb_g450_setpll_cond +EXPORT_SYMBOL drivers/video/fbdev/matrox/g450_pll 0xbb0e8d84 g450_mnp2f +EXPORT_SYMBOL drivers/video/fbdev/matrox/matroxfb_DAC1064 0x5f1c3c04 matrox_mystique +EXPORT_SYMBOL drivers/video/fbdev/matrox/matroxfb_DAC1064 0xaadfe600 DAC1064_global_restore +EXPORT_SYMBOL drivers/video/fbdev/matrox/matroxfb_DAC1064 0xcad320dc matrox_G100 +EXPORT_SYMBOL drivers/video/fbdev/matrox/matroxfb_DAC1064 0xf0849614 DAC1064_global_init +EXPORT_SYMBOL drivers/video/fbdev/matrox/matroxfb_Ti3026 0x18dfc8de matrox_millennium +EXPORT_SYMBOL drivers/video/fbdev/matrox/matroxfb_accel 0x24c19761 matrox_cfbX_init +EXPORT_SYMBOL drivers/video/fbdev/matrox/matroxfb_base 0x9c62a9cc matroxfb_unregister_driver +EXPORT_SYMBOL drivers/video/fbdev/matrox/matroxfb_base 0xae03e2d8 matroxfb_register_driver +EXPORT_SYMBOL drivers/video/fbdev/matrox/matroxfb_base 0xd4916501 matroxfb_enable_irq +EXPORT_SYMBOL drivers/video/fbdev/matrox/matroxfb_base 0xf798a911 matroxfb_wait_for_sync +EXPORT_SYMBOL drivers/video/fbdev/matrox/matroxfb_g450 0xcf7ae0a9 matroxfb_g450_connect +EXPORT_SYMBOL drivers/video/fbdev/matrox/matroxfb_g450 0xe06a568a matroxfb_g450_shutdown +EXPORT_SYMBOL drivers/video/fbdev/matrox/matroxfb_misc 0x20f02189 matroxfb_vgaHWrestore +EXPORT_SYMBOL drivers/video/fbdev/matrox/matroxfb_misc 0x24cbdeb1 matroxfb_DAC_out +EXPORT_SYMBOL drivers/video/fbdev/matrox/matroxfb_misc 0x25cf8049 matroxfb_PLL_calcclock +EXPORT_SYMBOL drivers/video/fbdev/matrox/matroxfb_misc 0x71409158 matroxfb_read_pins +EXPORT_SYMBOL drivers/video/fbdev/matrox/matroxfb_misc 0x8c29005d matroxfb_DAC_in +EXPORT_SYMBOL drivers/video/fbdev/matrox/matroxfb_misc 0xcdb5b847 matroxfb_vgaHWinit +EXPORT_SYMBOL drivers/video/fbdev/matrox/matroxfb_misc 0xcdc90c64 matroxfb_var2my +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/w1/slaves/w1_ds2780 0x9a2d26d0 w1_ds2780_io +EXPORT_SYMBOL drivers/w1/slaves/w1_ds2780 0xf22dd6e3 w1_ds2780_eeprom_cmd +EXPORT_SYMBOL drivers/w1/slaves/w1_ds2781 0x200a3df7 w1_ds2781_io +EXPORT_SYMBOL drivers/w1/slaves/w1_ds2781 0xdd71fa9b w1_ds2781_eeprom_cmd +EXPORT_SYMBOL drivers/w1/wire 0x65ed6564 w1_register_family +EXPORT_SYMBOL drivers/w1/wire 0xa8037e7c w1_add_master_device +EXPORT_SYMBOL drivers/w1/wire 0xd1d00da2 w1_unregister_family +EXPORT_SYMBOL drivers/w1/wire 0xfe02bd27 w1_remove_master_device +EXPORT_SYMBOL drivers/watchdog/bd70528_wdt 0x74d95f32 bd70528_wdt_set +EXPORT_SYMBOL drivers/watchdog/bd70528_wdt 0x96c12d10 bd70528_wdt_unlock +EXPORT_SYMBOL drivers/watchdog/bd70528_wdt 0xc6439d59 bd70528_wdt_lock +EXPORT_SYMBOL fs/fscache/fscache 0x03c2fc75 fscache_obtained_object +EXPORT_SYMBOL fs/fscache/fscache 0x0810900c fscache_mark_page_cached +EXPORT_SYMBOL fs/fscache/fscache 0x09bd14c7 fscache_check_aux +EXPORT_SYMBOL fs/fscache/fscache 0x0c6ae9d4 __fscache_enable_cookie +EXPORT_SYMBOL fs/fscache/fscache 0x188e0482 __fscache_unregister_netfs +EXPORT_SYMBOL fs/fscache/fscache 0x24e32add fscache_object_lookup_negative +EXPORT_SYMBOL fs/fscache/fscache 0x268359f7 __fscache_acquire_cookie +EXPORT_SYMBOL fs/fscache/fscache 0x2c40c24a fscache_fsdef_index +EXPORT_SYMBOL fs/fscache/fscache 0x2c7d84d6 __fscache_alloc_page +EXPORT_SYMBOL fs/fscache/fscache 0x2cd1af39 __fscache_disable_cookie +EXPORT_SYMBOL fs/fscache/fscache 0x32afa358 fscache_add_cache +EXPORT_SYMBOL fs/fscache/fscache 0x3ae7948e __fscache_write_page +EXPORT_SYMBOL fs/fscache/fscache 0x4463f64b fscache_operation_init +EXPORT_SYMBOL fs/fscache/fscache 0x49b5014a __fscache_read_or_alloc_pages +EXPORT_SYMBOL fs/fscache/fscache 0x4c8f198b __fscache_uncache_page +EXPORT_SYMBOL fs/fscache/fscache 0x5525ef4a __fscache_update_cookie +EXPORT_SYMBOL fs/fscache/fscache 0x5fa7e12c __fscache_maybe_release_page +EXPORT_SYMBOL fs/fscache/fscache 0x625cd56a fscache_object_destroy +EXPORT_SYMBOL fs/fscache/fscache 0x662845cb fscache_op_complete +EXPORT_SYMBOL fs/fscache/fscache 0x6acefa42 fscache_cache_cleared_wq +EXPORT_SYMBOL fs/fscache/fscache 0x6e923564 fscache_enqueue_operation +EXPORT_SYMBOL fs/fscache/fscache 0x74530ecd fscache_op_debug_id +EXPORT_SYMBOL fs/fscache/fscache 0x76d18c15 __fscache_readpages_cancel +EXPORT_SYMBOL fs/fscache/fscache 0x80575e02 fscache_mark_pages_cached +EXPORT_SYMBOL fs/fscache/fscache 0x838bb872 __fscache_register_netfs +EXPORT_SYMBOL fs/fscache/fscache 0x9f8c7276 fscache_init_cache +EXPORT_SYMBOL fs/fscache/fscache 0xa182e4ba fscache_io_error +EXPORT_SYMBOL fs/fscache/fscache 0xa4102c10 __fscache_relinquish_cookie +EXPORT_SYMBOL fs/fscache/fscache 0xa8cfdbfc fscache_put_operation +EXPORT_SYMBOL fs/fscache/fscache 0xa8d2f7a7 __fscache_wait_on_invalidate +EXPORT_SYMBOL fs/fscache/fscache 0xb175b9e5 __fscache_check_page_write +EXPORT_SYMBOL fs/fscache/fscache 0xb3d89be0 fscache_object_retrying_stale +EXPORT_SYMBOL fs/fscache/fscache 0xb64dd7f0 __fscache_uncache_all_inode_pages +EXPORT_SYMBOL fs/fscache/fscache 0xbe3cb73b fscache_object_init +EXPORT_SYMBOL fs/fscache/fscache 0xc4ed0c27 __fscache_attr_changed +EXPORT_SYMBOL fs/fscache/fscache 0xc7902681 fscache_withdraw_cache +EXPORT_SYMBOL fs/fscache/fscache 0xcbacafa8 __fscache_read_or_alloc_page +EXPORT_SYMBOL fs/fscache/fscache 0xcd94aa9b __fscache_check_consistency +EXPORT_SYMBOL fs/fscache/fscache 0xdde86067 fscache_object_mark_killed +EXPORT_SYMBOL fs/fscache/fscache 0xf8ed4aab __fscache_invalidate +EXPORT_SYMBOL fs/fscache/fscache 0xfeadf345 __fscache_wait_on_page_write +EXPORT_SYMBOL fs/ocfs2/cluster/ocfs2_nodemanager 0xbfd7d7a2 o2hb_global_heartbeat_active +EXPORT_SYMBOL fs/quota/quota_tree 0x01c320e2 qtree_release_dquot +EXPORT_SYMBOL fs/quota/quota_tree 0x42a2aef0 qtree_get_next_id +EXPORT_SYMBOL fs/quota/quota_tree 0x99637dd2 qtree_read_dquot +EXPORT_SYMBOL fs/quota/quota_tree 0xa540a7ad qtree_delete_dquot +EXPORT_SYMBOL fs/quota/quota_tree 0xd4455320 qtree_write_dquot +EXPORT_SYMBOL fs/quota/quota_tree 0xde768286 qtree_entry_unused +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 0xaa8106bc crc8_populate_msb +EXPORT_SYMBOL lib/crc8 0xc3cd034d crc8_populate_lsb +EXPORT_SYMBOL lib/crc8 0xe2aae5cc crc8 +EXPORT_SYMBOL lib/crypto/libarc4 0x2bb32ad1 arc4_setkey +EXPORT_SYMBOL lib/crypto/libarc4 0xcd47fcc4 arc4_crypt +EXPORT_SYMBOL lib/crypto/libblake2s 0x7bcc24fd blake2s256_hmac +EXPORT_SYMBOL lib/crypto/libblake2s 0xa3cefaa0 blake2s_update +EXPORT_SYMBOL lib/crypto/libblake2s 0xadae6df8 blake2s_final +EXPORT_SYMBOL lib/crypto/libblake2s-generic 0x755f4ba3 blake2s_compress_generic +EXPORT_SYMBOL lib/crypto/libchacha 0xcec122d7 chacha_crypt_generic +EXPORT_SYMBOL lib/crypto/libchacha20poly1305 0x147c3f2e chacha20poly1305_encrypt +EXPORT_SYMBOL lib/crypto/libchacha20poly1305 0x1c679fe2 chacha20poly1305_decrypt +EXPORT_SYMBOL lib/crypto/libchacha20poly1305 0x37b34b92 chacha20poly1305_encrypt_sg_inplace +EXPORT_SYMBOL lib/crypto/libchacha20poly1305 0x5b19e187 chacha20poly1305_decrypt_sg_inplace +EXPORT_SYMBOL lib/crypto/libchacha20poly1305 0xbaf4d923 xchacha20poly1305_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 0x4dba97c6 poly1305_core_setkey +EXPORT_SYMBOL lib/crypto/libpoly1305 0xbcb90cb3 poly1305_core_emit +EXPORT_SYMBOL lib/libcrc32c 0x89a0cd52 crc32c_impl +EXPORT_SYMBOL lib/libcrc32c 0xb15b4109 crc32c +EXPORT_SYMBOL lib/lru_cache 0x0641307b lc_destroy +EXPORT_SYMBOL lib/lru_cache 0x098d2ed9 lc_try_get +EXPORT_SYMBOL lib/lru_cache 0x2d47ac83 lc_committed +EXPORT_SYMBOL lib/lru_cache 0x2f3dcecb lc_index_of +EXPORT_SYMBOL lib/lru_cache 0x4522d82a lc_reset +EXPORT_SYMBOL lib/lru_cache 0x4cf5f5a8 lc_is_used +EXPORT_SYMBOL lib/lru_cache 0x5752f31b lc_del +EXPORT_SYMBOL lib/lru_cache 0x7257beee lc_element_by_index +EXPORT_SYMBOL lib/lru_cache 0x9134feb7 lc_get +EXPORT_SYMBOL lib/lru_cache 0x96a2d9e4 lc_seq_dump_details +EXPORT_SYMBOL lib/lru_cache 0xb672aa97 lc_create +EXPORT_SYMBOL lib/lru_cache 0xbfbe53d5 lc_get_cumulative +EXPORT_SYMBOL lib/lru_cache 0xc3a98c1d lc_try_lock +EXPORT_SYMBOL lib/lru_cache 0xcc979a91 lc_set +EXPORT_SYMBOL lib/lru_cache 0xefec290a lc_find +EXPORT_SYMBOL lib/lru_cache 0xf250d433 lc_seq_printf_stats +EXPORT_SYMBOL lib/lru_cache 0xfd525ec7 lc_put +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 0x0e9c70d1 lowpan_unregister_netdev +EXPORT_SYMBOL net/6lowpan/6lowpan 0x2c48ba94 lowpan_nhc_del +EXPORT_SYMBOL net/6lowpan/6lowpan 0x5b601566 lowpan_register_netdevice +EXPORT_SYMBOL net/6lowpan/6lowpan 0x61b4a0ee lowpan_nhc_add +EXPORT_SYMBOL net/6lowpan/6lowpan 0x7bfcc288 lowpan_register_netdev +EXPORT_SYMBOL net/6lowpan/6lowpan 0xc8d890e3 lowpan_unregister_netdevice +EXPORT_SYMBOL net/802/p8022 0x524c934d register_8022_client +EXPORT_SYMBOL net/802/p8022 0x7dfddc3d unregister_8022_client +EXPORT_SYMBOL net/802/psnap 0x727af8bf unregister_snap_client +EXPORT_SYMBOL net/802/psnap 0x948fb0c8 register_snap_client +EXPORT_SYMBOL net/9p/9pnet 0x01730414 p9_client_disconnect +EXPORT_SYMBOL net/9p/9pnet 0x06afcd4e p9_client_getlock_dotl +EXPORT_SYMBOL net/9p/9pnet 0x06ee6b96 p9_client_cb +EXPORT_SYMBOL net/9p/9pnet 0x0741a21f p9_client_create_dotl +EXPORT_SYMBOL net/9p/9pnet 0x08aeb896 p9_client_readlink +EXPORT_SYMBOL net/9p/9pnet 0x1430723c p9_req_put +EXPORT_SYMBOL net/9p/9pnet 0x15c7bd92 p9_tag_lookup +EXPORT_SYMBOL net/9p/9pnet 0x1a4dda12 p9_client_walk +EXPORT_SYMBOL net/9p/9pnet 0x1dc71b07 p9_show_client_options +EXPORT_SYMBOL net/9p/9pnet 0x232efd58 p9_is_proto_dotu +EXPORT_SYMBOL net/9p/9pnet 0x23389eb8 p9_client_begin_disconnect +EXPORT_SYMBOL net/9p/9pnet 0x25952e20 p9_client_mknod_dotl +EXPORT_SYMBOL net/9p/9pnet 0x288acb73 p9_client_symlink +EXPORT_SYMBOL net/9p/9pnet 0x2a2975de p9_client_statfs +EXPORT_SYMBOL net/9p/9pnet 0x2e42ca35 p9_client_write +EXPORT_SYMBOL net/9p/9pnet 0x2f55707b p9_client_link +EXPORT_SYMBOL net/9p/9pnet 0x3d73a797 p9_errstr2errno +EXPORT_SYMBOL net/9p/9pnet 0x41ce9823 p9stat_read +EXPORT_SYMBOL net/9p/9pnet 0x42158da3 p9_client_renameat +EXPORT_SYMBOL net/9p/9pnet 0x4e79b1c6 p9_client_attach +EXPORT_SYMBOL net/9p/9pnet 0x5639a8af p9_client_unlinkat +EXPORT_SYMBOL net/9p/9pnet 0x57fb492f p9_client_readdir +EXPORT_SYMBOL net/9p/9pnet 0x5d77a33d p9_client_rename +EXPORT_SYMBOL net/9p/9pnet 0x64dc5a0c v9fs_get_trans_by_name +EXPORT_SYMBOL net/9p/9pnet 0x6c93416f p9_client_create +EXPORT_SYMBOL net/9p/9pnet 0x6f441070 v9fs_get_default_trans +EXPORT_SYMBOL net/9p/9pnet 0x7649dd64 p9_release_pages +EXPORT_SYMBOL net/9p/9pnet 0x79c38721 p9_client_stat +EXPORT_SYMBOL net/9p/9pnet 0x89c17a2c p9_client_mkdir_dotl +EXPORT_SYMBOL net/9p/9pnet 0x917283dd p9_is_proto_dotl +EXPORT_SYMBOL net/9p/9pnet 0x917dc149 p9_client_fsync +EXPORT_SYMBOL net/9p/9pnet 0x95bd8f96 p9dirent_read +EXPORT_SYMBOL net/9p/9pnet 0x980a9f87 p9_client_getattr_dotl +EXPORT_SYMBOL net/9p/9pnet 0x984c5e73 p9_fcall_fini +EXPORT_SYMBOL net/9p/9pnet 0xa0940b19 p9_client_fcreate +EXPORT_SYMBOL net/9p/9pnet 0xa5c73c1a p9_client_read +EXPORT_SYMBOL net/9p/9pnet 0xa81fca09 p9_client_destroy +EXPORT_SYMBOL net/9p/9pnet 0xb59c8f74 p9_client_setattr +EXPORT_SYMBOL net/9p/9pnet 0xb79f25fd p9_parse_header +EXPORT_SYMBOL net/9p/9pnet 0xbe595ba7 v9fs_register_trans +EXPORT_SYMBOL net/9p/9pnet 0xc201d67a p9_client_clunk +EXPORT_SYMBOL net/9p/9pnet 0xc6350031 p9_client_remove +EXPORT_SYMBOL net/9p/9pnet 0xc9d07e0e p9_client_lock_dotl +EXPORT_SYMBOL net/9p/9pnet 0xd384c683 p9stat_free +EXPORT_SYMBOL net/9p/9pnet 0xd61c8955 v9fs_unregister_trans +EXPORT_SYMBOL net/9p/9pnet 0xe47e1ee5 p9_client_read_once +EXPORT_SYMBOL net/9p/9pnet 0xe58a3360 p9_error_init +EXPORT_SYMBOL net/9p/9pnet 0xecf026e8 p9_client_wstat +EXPORT_SYMBOL net/9p/9pnet 0xfa04b4ac p9_client_open +EXPORT_SYMBOL net/appletalk/appletalk 0x6eb56478 atalk_find_dev_addr +EXPORT_SYMBOL net/appletalk/appletalk 0xab2ec23d aarp_send_ddp +EXPORT_SYMBOL net/appletalk/appletalk 0xc3aa039c alloc_ltalkdev +EXPORT_SYMBOL net/appletalk/appletalk 0xd53c5f9d atrtr_get_dev +EXPORT_SYMBOL net/atm/atm 0x066df4ba deregister_atm_ioctl +EXPORT_SYMBOL net/atm/atm 0x2cc2d52d vcc_hash +EXPORT_SYMBOL net/atm/atm 0x4443d399 atm_proc_root +EXPORT_SYMBOL net/atm/atm 0x44c6e633 vcc_sklist_lock +EXPORT_SYMBOL net/atm/atm 0x5623b802 vcc_process_recv_queue +EXPORT_SYMBOL net/atm/atm 0x769cad07 atm_dev_deregister +EXPORT_SYMBOL net/atm/atm 0x7ea6df12 register_atm_ioctl +EXPORT_SYMBOL net/atm/atm 0x8ac25428 atm_dev_signal_change +EXPORT_SYMBOL net/atm/atm 0x923d2d10 vcc_release_async +EXPORT_SYMBOL net/atm/atm 0x9feaf287 sonet_subtract_stats +EXPORT_SYMBOL net/atm/atm 0xa40dc08f atm_dev_release_vccs +EXPORT_SYMBOL net/atm/atm 0xaa024146 sonet_copy_stats +EXPORT_SYMBOL net/atm/atm 0xb0c8f00e atm_init_aal5 +EXPORT_SYMBOL net/atm/atm 0xd9704caa vcc_insert_socket +EXPORT_SYMBOL net/atm/atm 0xdd33e294 atm_alloc_charge +EXPORT_SYMBOL net/atm/atm 0xdf3e3a37 atm_dev_register +EXPORT_SYMBOL net/atm/atm 0xe7e2f25b atm_charge +EXPORT_SYMBOL net/atm/atm 0xf49bc67a atm_pcr_goal +EXPORT_SYMBOL net/atm/atm 0xfe62cbd9 atm_dev_lookup +EXPORT_SYMBOL net/ax25/ax25 0x14cecd59 ax25_display_timer +EXPORT_SYMBOL net/ax25/ax25 0x242852b9 ax25_uid_policy +EXPORT_SYMBOL net/ax25/ax25 0x3b540792 ax25_linkfail_register +EXPORT_SYMBOL net/ax25/ax25 0x3f6a0bb9 ax25_send_frame +EXPORT_SYMBOL net/ax25/ax25 0x4502c65a asc2ax +EXPORT_SYMBOL net/ax25/ax25 0x53dea1ff ax2asc +EXPORT_SYMBOL net/ax25/ax25 0x7fec8ee8 ax25_ip_xmit +EXPORT_SYMBOL net/ax25/ax25 0x8ede9e26 ax25_protocol_release +EXPORT_SYMBOL net/ax25/ax25 0x99ed1223 ax25_find_cb +EXPORT_SYMBOL net/ax25/ax25 0xb7f413f7 ax25_listen_register +EXPORT_SYMBOL net/ax25/ax25 0xc1444946 ax25cmp +EXPORT_SYMBOL net/ax25/ax25 0xc72882de ax25_listen_release +EXPORT_SYMBOL net/ax25/ax25 0xd43ecbf1 null_ax25_address +EXPORT_SYMBOL net/ax25/ax25 0xe1d36f14 ax25_header_ops +EXPORT_SYMBOL net/ax25/ax25 0xee02e420 ax25_findbyuid +EXPORT_SYMBOL net/ax25/ax25 0xfcc263dc ax25_linkfail_release +EXPORT_SYMBOL net/bluetooth/bluetooth 0x03b7ea2f hci_get_route +EXPORT_SYMBOL net/bluetooth/bluetooth 0x061a2230 bt_sock_recvmsg +EXPORT_SYMBOL net/bluetooth/bluetooth 0x0699bcf9 hci_conn_check_secure +EXPORT_SYMBOL net/bluetooth/bluetooth 0x06f2d629 hci_mgmt_chan_register +EXPORT_SYMBOL net/bluetooth/bluetooth 0x0718b8b7 bt_info +EXPORT_SYMBOL net/bluetooth/bluetooth 0x12504e1c bt_sock_unlink +EXPORT_SYMBOL net/bluetooth/bluetooth 0x161c87f0 bt_sock_register +EXPORT_SYMBOL net/bluetooth/bluetooth 0x180f4949 hci_mgmt_chan_unregister +EXPORT_SYMBOL net/bluetooth/bluetooth 0x1d7a5fc6 hci_conn_switch_role +EXPORT_SYMBOL net/bluetooth/bluetooth 0x1e2c42fe hci_register_dev +EXPORT_SYMBOL net/bluetooth/bluetooth 0x1ee91bc4 hci_set_fw_info +EXPORT_SYMBOL net/bluetooth/bluetooth 0x214e4265 bt_warn +EXPORT_SYMBOL net/bluetooth/bluetooth 0x251ffd0d l2cap_register_user +EXPORT_SYMBOL net/bluetooth/bluetooth 0x259aa545 hci_register_cb +EXPORT_SYMBOL net/bluetooth/bluetooth 0x2c149c66 hci_resume_dev +EXPORT_SYMBOL net/bluetooth/bluetooth 0x3cadb054 l2cap_chan_close +EXPORT_SYMBOL net/bluetooth/bluetooth 0x3ddd708d bt_procfs_cleanup +EXPORT_SYMBOL net/bluetooth/bluetooth 0x3e8c6dfa __hci_cmd_send +EXPORT_SYMBOL net/bluetooth/bluetooth 0x415b0de5 hci_recv_frame +EXPORT_SYMBOL net/bluetooth/bluetooth 0x4250eb10 bt_sock_link +EXPORT_SYMBOL net/bluetooth/bluetooth 0x51fb3579 bt_sock_wait_state +EXPORT_SYMBOL net/bluetooth/bluetooth 0x595eafdc hci_suspend_dev +EXPORT_SYMBOL net/bluetooth/bluetooth 0x636d81ca __hci_cmd_sync_ev +EXPORT_SYMBOL net/bluetooth/bluetooth 0x7495c6c9 hci_unregister_dev +EXPORT_SYMBOL net/bluetooth/bluetooth 0x7aad008b bt_to_errno +EXPORT_SYMBOL net/bluetooth/bluetooth 0x7b5ce5c3 baswap +EXPORT_SYMBOL net/bluetooth/bluetooth 0x7b8c32f1 bt_err +EXPORT_SYMBOL net/bluetooth/bluetooth 0x805e4ccc hci_unregister_cb +EXPORT_SYMBOL net/bluetooth/bluetooth 0x8a780891 bt_sock_wait_ready +EXPORT_SYMBOL net/bluetooth/bluetooth 0x8f823984 l2cap_is_socket +EXPORT_SYMBOL net/bluetooth/bluetooth 0x8fea24bd bt_sock_unregister +EXPORT_SYMBOL net/bluetooth/bluetooth 0x92f37f78 bt_accept_unlink +EXPORT_SYMBOL net/bluetooth/bluetooth 0x984afd54 hci_cmd_sync +EXPORT_SYMBOL net/bluetooth/bluetooth 0x98fc0420 l2cap_unregister_user +EXPORT_SYMBOL net/bluetooth/bluetooth 0x998cd90d bt_sock_reclassify_lock +EXPORT_SYMBOL net/bluetooth/bluetooth 0xa06836bc l2cap_conn_get +EXPORT_SYMBOL net/bluetooth/bluetooth 0xa3cfd066 hci_free_dev +EXPORT_SYMBOL net/bluetooth/bluetooth 0xb83c4d90 bt_accept_dequeue +EXPORT_SYMBOL net/bluetooth/bluetooth 0xb9b779bc hci_set_hw_info +EXPORT_SYMBOL net/bluetooth/bluetooth 0xbfef158a bt_sock_ioctl +EXPORT_SYMBOL net/bluetooth/bluetooth 0xc0334ab3 bt_sock_stream_recvmsg +EXPORT_SYMBOL net/bluetooth/bluetooth 0xc92198bf bt_procfs_init +EXPORT_SYMBOL net/bluetooth/bluetooth 0xce556757 hci_reset_dev +EXPORT_SYMBOL net/bluetooth/bluetooth 0xd13c9e77 __hci_cmd_sync +EXPORT_SYMBOL net/bluetooth/bluetooth 0xd7613212 bt_err_ratelimited +EXPORT_SYMBOL net/bluetooth/bluetooth 0xd88acc77 l2cap_conn_put +EXPORT_SYMBOL net/bluetooth/bluetooth 0xddacccf6 bt_warn_ratelimited +EXPORT_SYMBOL net/bluetooth/bluetooth 0xe1374ce7 bt_accept_enqueue +EXPORT_SYMBOL net/bluetooth/bluetooth 0xe9f58969 bt_sock_poll +EXPORT_SYMBOL net/bluetooth/bluetooth 0xeccffe42 hci_conn_security +EXPORT_SYMBOL net/bluetooth/bluetooth 0xece50195 hci_alloc_dev +EXPORT_SYMBOL net/bluetooth/bluetooth 0xf7f3c7a2 hci_recv_diag +EXPORT_SYMBOL net/bridge/netfilter/ebtables 0x78eb1168 ebt_do_table +EXPORT_SYMBOL net/bridge/netfilter/ebtables 0xa2cdddbf ebt_unregister_table +EXPORT_SYMBOL net/bridge/netfilter/ebtables 0xb1787807 ebt_register_table +EXPORT_SYMBOL net/caif/caif 0x1446b60a caif_client_register_refcnt +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 0x3d8771ea caif_enroll_dev +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 0x4ff4526d get_cfcnfg +EXPORT_SYMBOL net/caif/caif 0x6335db71 caif_disconnect_client +EXPORT_SYMBOL net/caif/caif 0x839ddb7b cfcnfg_set_phy_state +EXPORT_SYMBOL net/caif/caif 0x8bcbd402 cfcnfg_add_phy_layer +EXPORT_SYMBOL net/caif/caif 0x9e3e305d cfpkt_set_prio +EXPORT_SYMBOL net/caif/caif 0xa6a9ac58 caif_connect_client +EXPORT_SYMBOL net/caif/caif 0xb7b6874e caif_free_client +EXPORT_SYMBOL net/can/can 0x24271610 can_sock_destruct +EXPORT_SYMBOL net/can/can 0x476af2b2 can_rx_unregister +EXPORT_SYMBOL net/can/can 0x582bb8d6 can_rx_register +EXPORT_SYMBOL net/can/can 0x5cfbb441 can_send +EXPORT_SYMBOL net/can/can 0x5f68b403 can_proto_unregister +EXPORT_SYMBOL net/can/can 0xa626fe62 can_proto_register +EXPORT_SYMBOL net/ceph/libceph 0x013a5ca6 ceph_msg_get +EXPORT_SYMBOL net/ceph/libceph 0x03674b24 ceph_messenger_init +EXPORT_SYMBOL net/ceph/libceph 0x07faef01 ceph_cls_lock_info +EXPORT_SYMBOL net/ceph/libceph 0x0ada969c ceph_con_close +EXPORT_SYMBOL net/ceph/libceph 0x0cd44f02 ceph_put_page_vector +EXPORT_SYMBOL net/ceph/libceph 0x0d1ea740 ceph_msg_data_add_bvecs +EXPORT_SYMBOL net/ceph/libceph 0x0dd4a4f0 osd_req_op_extent_dup_last +EXPORT_SYMBOL net/ceph/libceph 0x1122b12e ceph_osdc_notify_ack +EXPORT_SYMBOL net/ceph/libceph 0x165b1948 ceph_pagelist_free_reserve +EXPORT_SYMBOL net/ceph/libceph 0x1ca7562a ceph_alloc_page_vector +EXPORT_SYMBOL net/ceph/libceph 0x1d0eb19a ceph_con_send +EXPORT_SYMBOL net/ceph/libceph 0x2087719e ceph_oid_copy +EXPORT_SYMBOL net/ceph/libceph 0x2101cbc9 ceph_oid_destroy +EXPORT_SYMBOL net/ceph/libceph 0x2494626d ceph_object_locator_to_pg +EXPORT_SYMBOL net/ceph/libceph 0x24ba7f09 ceph_msg_data_add_pages +EXPORT_SYMBOL net/ceph/libceph 0x26082657 osd_req_op_alloc_hint_init +EXPORT_SYMBOL net/ceph/libceph 0x26d4e61f osd_req_op_extent_osd_data_bvec_pos +EXPORT_SYMBOL net/ceph/libceph 0x28d73832 ceph_msg_dump +EXPORT_SYMBOL net/ceph/libceph 0x2a983d26 ceph_pagelist_release +EXPORT_SYMBOL net/ceph/libceph 0x322d8cc0 __ceph_open_session +EXPORT_SYMBOL net/ceph/libceph 0x38f2d94e ceph_file_to_extents +EXPORT_SYMBOL net/ceph/libceph 0x39815c00 ceph_msg_data_add_pagelist +EXPORT_SYMBOL net/ceph/libceph 0x3bd62989 ceph_osdc_cancel_request +EXPORT_SYMBOL net/ceph/libceph 0x3bf13734 ceph_osdc_unwatch +EXPORT_SYMBOL net/ceph/libceph 0x3c8d7111 ceph_get_num_objects +EXPORT_SYMBOL net/ceph/libceph 0x3d8208d3 ceph_osdc_notify +EXPORT_SYMBOL net/ceph/libceph 0x417a9131 ceph_oloc_destroy +EXPORT_SYMBOL net/ceph/libceph 0x46555f2e ceph_pg_poolid_by_name +EXPORT_SYMBOL net/ceph/libceph 0x466b85b8 libceph_compatible +EXPORT_SYMBOL net/ceph/libceph 0x46c81d44 ceph_osdc_flush_notifies +EXPORT_SYMBOL net/ceph/libceph 0x4768ec03 ceph_con_keepalive +EXPORT_SYMBOL net/ceph/libceph 0x48ea13db ceph_copy_user_to_page_vector +EXPORT_SYMBOL net/ceph/libceph 0x4c23ac57 ceph_client_addr +EXPORT_SYMBOL net/ceph/libceph 0x4dd58bd5 ceph_msg_put +EXPORT_SYMBOL net/ceph/libceph 0x4df5c55a ceph_monc_got_map +EXPORT_SYMBOL net/ceph/libceph 0x501be3e6 ceph_auth_create_authorizer +EXPORT_SYMBOL net/ceph/libceph 0x51dbe404 ceph_osdc_get_request +EXPORT_SYMBOL net/ceph/libceph 0x5483049e ceph_osdc_call +EXPORT_SYMBOL net/ceph/libceph 0x56b81b25 ceph_monc_do_statfs +EXPORT_SYMBOL net/ceph/libceph 0x57baf885 ceph_str_hash +EXPORT_SYMBOL net/ceph/libceph 0x57df4c4f ceph_msg_data_add_bio +EXPORT_SYMBOL net/ceph/libceph 0x5aeeee62 ceph_oid_aprintf +EXPORT_SYMBOL net/ceph/libceph 0x5e0ec6a3 ceph_pg_pool_name_by_id +EXPORT_SYMBOL net/ceph/libceph 0x610f0fcd ceph_auth_add_authorizer_challenge +EXPORT_SYMBOL net/ceph/libceph 0x62b60618 osd_req_op_extent_osd_data +EXPORT_SYMBOL net/ceph/libceph 0x63758856 ceph_str_hash_name +EXPORT_SYMBOL net/ceph/libceph 0x64e76efc osd_req_op_cls_request_data_pagelist +EXPORT_SYMBOL net/ceph/libceph 0x65b3c567 ceph_osdc_sync +EXPORT_SYMBOL net/ceph/libceph 0x673fc72a ceph_monc_stop +EXPORT_SYMBOL net/ceph/libceph 0x67c50db1 ceph_open_session +EXPORT_SYMBOL net/ceph/libceph 0x6a7a38a0 ceph_pr_addr +EXPORT_SYMBOL net/ceph/libceph 0x6af51527 osd_req_op_xattr_init +EXPORT_SYMBOL net/ceph/libceph 0x6f1dd070 ceph_osdc_clear_abort_err +EXPORT_SYMBOL net/ceph/libceph 0x728e248f osd_req_op_extent_osd_data_pagelist +EXPORT_SYMBOL net/ceph/libceph 0x7358e4c4 ceph_alloc_options +EXPORT_SYMBOL net/ceph/libceph 0x769341d5 ceph_client_gid +EXPORT_SYMBOL net/ceph/libceph 0x7701630b ceph_release_page_vector +EXPORT_SYMBOL net/ceph/libceph 0x8048117f ceph_msg_new +EXPORT_SYMBOL net/ceph/libceph 0x82cbe64b ceph_osdc_copy_from +EXPORT_SYMBOL net/ceph/libceph 0x86fca7e4 ceph_put_snap_context +EXPORT_SYMBOL net/ceph/libceph 0x88c32e65 ceph_osdc_update_epoch_barrier +EXPORT_SYMBOL net/ceph/libceph 0x8cb2fd7e ceph_con_init +EXPORT_SYMBOL net/ceph/libceph 0x8cc414e3 ceph_osdc_put_request +EXPORT_SYMBOL net/ceph/libceph 0x8ff9612f ceph_osdc_wait_request +EXPORT_SYMBOL net/ceph/libceph 0x9284590f ceph_print_client_options +EXPORT_SYMBOL net/ceph/libceph 0x94f73c50 ceph_parse_mon_ips +EXPORT_SYMBOL net/ceph/libceph 0x964a5e1c ceph_osdc_abort_requests +EXPORT_SYMBOL net/ceph/libceph 0x96e40ce0 osd_req_op_cls_request_data_bvecs +EXPORT_SYMBOL net/ceph/libceph 0x996a0eb7 ceph_auth_invalidate_authorizer +EXPORT_SYMBOL net/ceph/libceph 0x9b101a60 ceph_check_fsid +EXPORT_SYMBOL net/ceph/libceph 0x9b2f3478 ceph_pg_pool_flags +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 0x9d007bce ceph_osdc_new_request +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 0xa21099f6 ceph_copy_to_page_vector +EXPORT_SYMBOL net/ceph/libceph 0xa35da9cc ceph_monc_blacklist_add +EXPORT_SYMBOL net/ceph/libceph 0xa4d68c95 ceph_copy_from_page_vector +EXPORT_SYMBOL net/ceph/libceph 0xa698f998 ceph_free_lockers +EXPORT_SYMBOL net/ceph/libceph 0xa6d72dce ceph_osdc_watch +EXPORT_SYMBOL net/ceph/libceph 0xa8858495 ceph_zero_page_vector_range +EXPORT_SYMBOL net/ceph/libceph 0xacce0137 osd_req_op_extent_osd_data_pages +EXPORT_SYMBOL net/ceph/libceph 0xad703657 ceph_auth_destroy_authorizer +EXPORT_SYMBOL net/ceph/libceph 0xaf1beeba ceph_monc_validate_auth +EXPORT_SYMBOL net/ceph/libceph 0xafb8a407 ceph_msgr_flush +EXPORT_SYMBOL net/ceph/libceph 0xb06e6957 ceph_auth_is_authenticated +EXPORT_SYMBOL net/ceph/libceph 0xb1cb7e43 ceph_msg_new2 +EXPORT_SYMBOL net/ceph/libceph 0xb3feb46f osd_req_op_init +EXPORT_SYMBOL net/ceph/libceph 0xb473b8d5 ceph_osdc_start_request +EXPORT_SYMBOL net/ceph/libceph 0xb54676fa ceph_msg_type_name +EXPORT_SYMBOL net/ceph/libceph 0xb6e24323 ceph_create_client +EXPORT_SYMBOL net/ceph/libceph 0xb72c162e ceph_buffer_release +EXPORT_SYMBOL net/ceph/libceph 0xb752ad37 ceph_cls_break_lock +EXPORT_SYMBOL net/ceph/libceph 0xb7ae9c32 ceph_monc_init +EXPORT_SYMBOL net/ceph/libceph 0xb8a2dd50 ceph_osdc_alloc_request +EXPORT_SYMBOL net/ceph/libceph 0xba4c46f6 ceph_messenger_fini +EXPORT_SYMBOL net/ceph/libceph 0xba5fe3e8 ceph_wait_for_latest_osdmap +EXPORT_SYMBOL net/ceph/libceph 0xbbd1654a ceph_destroy_client +EXPORT_SYMBOL net/ceph/libceph 0xbcceb1a7 ceph_cls_unlock +EXPORT_SYMBOL net/ceph/libceph 0xbd2f79ae ceph_oloc_copy +EXPORT_SYMBOL net/ceph/libceph 0xbd8c1313 ceph_destroy_options +EXPORT_SYMBOL net/ceph/libceph 0xbe3879aa ceph_get_snap_context +EXPORT_SYMBOL net/ceph/libceph 0xc13f6249 ceph_monc_open_session +EXPORT_SYMBOL net/ceph/libceph 0xc1935a00 ceph_osdc_list_watchers +EXPORT_SYMBOL net/ceph/libceph 0xc1fd09d9 osd_req_op_cls_request_data_pages +EXPORT_SYMBOL net/ceph/libceph 0xc2dcd03d ceph_auth_update_authorizer +EXPORT_SYMBOL net/ceph/libceph 0xc366bfa1 ceph_pagelist_truncate +EXPORT_SYMBOL net/ceph/libceph 0xc3ea13cd ceph_parse_param +EXPORT_SYMBOL net/ceph/libceph 0xca80437b ceph_extent_to_file +EXPORT_SYMBOL net/ceph/libceph 0xcb5ab157 ceph_monc_get_version +EXPORT_SYMBOL net/ceph/libceph 0xce7e01cc osd_req_op_raw_data_in_pages +EXPORT_SYMBOL net/ceph/libceph 0xd19a3317 osd_req_op_cls_response_data_pages +EXPORT_SYMBOL net/ceph/libceph 0xd41a3942 ceph_monc_wait_osdmap +EXPORT_SYMBOL net/ceph/libceph 0xd4eb7735 ceph_decode_entity_addr +EXPORT_SYMBOL net/ceph/libceph 0xda939b11 ceph_auth_verify_authorizer_reply +EXPORT_SYMBOL net/ceph/libceph 0xdc935fc8 ceph_monc_renew_subs +EXPORT_SYMBOL net/ceph/libceph 0xdd4bfd0d 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 0xe272762b ceph_cls_lock +EXPORT_SYMBOL net/ceph/libceph 0xe599032e ceph_osdc_alloc_messages +EXPORT_SYMBOL net/ceph/libceph 0xe76e7226 ceph_pagelist_alloc +EXPORT_SYMBOL net/ceph/libceph 0xe9f05d97 ceph_monc_get_version_async +EXPORT_SYMBOL net/ceph/libceph 0xea2ed499 osd_req_op_extent_osd_data_bio +EXPORT_SYMBOL net/ceph/libceph 0xeb127290 ceph_monc_want_map +EXPORT_SYMBOL net/ceph/libceph 0xee120c03 ceph_release_string +EXPORT_SYMBOL net/ceph/libceph 0xeef6cfa3 ceph_iterate_extents +EXPORT_SYMBOL net/ceph/libceph 0xef65f2f5 ceph_pg_to_acting_primary +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 0xf04dbb61 ceph_compare_options +EXPORT_SYMBOL net/ceph/libceph 0xf393f21f ceph_osdc_maybe_request_map +EXPORT_SYMBOL net/ceph/libceph 0xf5177025 osd_req_op_extent_update +EXPORT_SYMBOL net/ceph/libceph 0xf6899dbb ceph_reset_client_addr +EXPORT_SYMBOL net/ceph/libceph 0xf72e013c ceph_con_open +EXPORT_SYMBOL net/ceph/libceph 0xf914a29b ceph_cls_set_cookie +EXPORT_SYMBOL net/ceph/libceph 0xfaa48230 ceph_cls_assert_locked +EXPORT_SYMBOL net/ceph/libceph 0xfd7b67c6 osd_req_op_extent_init +EXPORT_SYMBOL net/ceph/libceph 0xfeaba48c osd_req_op_extent_osd_data_bvecs +EXPORT_SYMBOL net/dccp/dccp_ipv4 0x3532d7fa dccp_req_err +EXPORT_SYMBOL net/dccp/dccp_ipv4 0xbc17d05e dccp_syn_ack_timeout +EXPORT_SYMBOL net/dsa/dsa_core 0x7aa88f75 dsa_port_vid_add +EXPORT_SYMBOL net/dsa/dsa_core 0xd455ee34 dsa_port_vid_del +EXPORT_SYMBOL net/ieee802154/ieee802154 0x0400a84f wpan_phy_free +EXPORT_SYMBOL net/ieee802154/ieee802154 0x698b4dd9 wpan_phy_find +EXPORT_SYMBOL net/ieee802154/ieee802154 0x96f1f95d wpan_phy_register +EXPORT_SYMBOL net/ieee802154/ieee802154 0x9850da4c wpan_phy_for_each +EXPORT_SYMBOL net/ieee802154/ieee802154 0xe7facb58 wpan_phy_new +EXPORT_SYMBOL net/ieee802154/ieee802154 0xf67efe34 wpan_phy_unregister +EXPORT_SYMBOL net/ipv4/fou 0x1757d1a4 fou_encap_hlen +EXPORT_SYMBOL net/ipv4/fou 0x65cd8162 __gue_build_header +EXPORT_SYMBOL net/ipv4/fou 0x8807b9b7 __fou_build_header +EXPORT_SYMBOL net/ipv4/fou 0xf13914b3 gue_encap_hlen +EXPORT_SYMBOL net/ipv4/gre 0x64bee015 gre_parse_header +EXPORT_SYMBOL net/ipv4/ip_tunnel 0x041917cb ip_tunnel_get_iflink +EXPORT_SYMBOL net/ipv4/ip_tunnel 0xac278a25 ip_tunnel_encap_del_ops +EXPORT_SYMBOL net/ipv4/ip_tunnel 0xb75ae1f2 ip_tunnel_get_link_net +EXPORT_SYMBOL net/ipv4/ip_tunnel 0xea54bf41 ip_tunnel_encap_add_ops +EXPORT_SYMBOL net/ipv4/netfilter/arp_tables 0x47355b82 arpt_do_table +EXPORT_SYMBOL net/ipv4/netfilter/arp_tables 0x8390d8ad arpt_unregister_table +EXPORT_SYMBOL net/ipv4/netfilter/arp_tables 0xc240e3c6 arpt_register_table +EXPORT_SYMBOL net/ipv4/netfilter/ip_tables 0x1d68926c ipt_unregister_table_exit +EXPORT_SYMBOL net/ipv4/netfilter/ip_tables 0x429141e7 ipt_unregister_table +EXPORT_SYMBOL net/ipv4/netfilter/ip_tables 0x458fbeba ipt_unregister_table_pre_exit +EXPORT_SYMBOL net/ipv4/netfilter/ip_tables 0xbf9361c3 ipt_register_table +EXPORT_SYMBOL net/ipv4/netfilter/ip_tables 0xc257e0f4 ipt_do_table +EXPORT_SYMBOL net/ipv4/tunnel4 0xad4ac5e3 xfrm4_tunnel_deregister +EXPORT_SYMBOL net/ipv4/tunnel4 0xb4ca3c54 xfrm4_tunnel_register +EXPORT_SYMBOL net/ipv4/udp_tunnel 0xc92f7edf udp_sock_create4 +EXPORT_SYMBOL net/ipv6/ip6_tunnel 0x0be295db ip6_tnl_encap_add_ops +EXPORT_SYMBOL net/ipv6/ip6_tunnel 0x19c3d68b ip6_tnl_get_iflink +EXPORT_SYMBOL net/ipv6/ip6_tunnel 0x22f57cd5 ip6_tnl_change_mtu +EXPORT_SYMBOL net/ipv6/ip6_tunnel 0x47d2bfa6 ip6_tnl_parse_tlv_enc_lim +EXPORT_SYMBOL net/ipv6/ip6_tunnel 0x5d64c6d3 ip6_tnl_encap_del_ops +EXPORT_SYMBOL net/ipv6/ip6_tunnel 0x5ee2bcca ip6_tnl_xmit +EXPORT_SYMBOL net/ipv6/ip6_tunnel 0x668b26ed ip6_tnl_get_link_net +EXPORT_SYMBOL net/ipv6/ip6_tunnel 0x66ce33d4 ip6_tnl_get_cap +EXPORT_SYMBOL net/ipv6/ip6_tunnel 0x92b9cbb6 ip6_tnl_rcv +EXPORT_SYMBOL net/ipv6/netfilter/ip6_tables 0x60e2bd52 ip6t_unregister_table +EXPORT_SYMBOL net/ipv6/netfilter/ip6_tables 0x77910ae6 ip6t_unregister_table_exit +EXPORT_SYMBOL net/ipv6/netfilter/ip6_tables 0x83e98a1e ip6t_unregister_table_pre_exit +EXPORT_SYMBOL net/ipv6/netfilter/ip6_tables 0x887f5a4a ip6t_do_table +EXPORT_SYMBOL net/ipv6/netfilter/ip6_tables 0x9acb88df ip6t_register_table +EXPORT_SYMBOL net/ipv6/tunnel6 0x7a0595d0 xfrm6_tunnel_register +EXPORT_SYMBOL net/ipv6/tunnel6 0xd6cf561e xfrm6_tunnel_deregister +EXPORT_SYMBOL net/ipv6/xfrm6_tunnel 0xbc2b8c92 xfrm6_tunnel_spi_lookup +EXPORT_SYMBOL net/ipv6/xfrm6_tunnel 0xd35f9c42 xfrm6_tunnel_alloc_spi +EXPORT_SYMBOL net/l2tp/l2tp_core 0x0ffde1a0 l2tp_recv_common +EXPORT_SYMBOL net/l2tp/l2tp_core 0x1044fc59 l2tp_tunnel_free +EXPORT_SYMBOL net/l2tp/l2tp_ip 0x9664fc8a l2tp_ioctl +EXPORT_SYMBOL net/lapb/lapb 0x0e299bfe lapb_unregister +EXPORT_SYMBOL net/lapb/lapb 0x1e9661ad lapb_data_request +EXPORT_SYMBOL net/lapb/lapb 0x327f6af6 lapb_getparms +EXPORT_SYMBOL net/lapb/lapb 0x58912781 lapb_register +EXPORT_SYMBOL net/lapb/lapb 0x8f69887f lapb_disconnect_request +EXPORT_SYMBOL net/lapb/lapb 0xad6628ba lapb_data_received +EXPORT_SYMBOL net/lapb/lapb 0xc0372d53 lapb_setparms +EXPORT_SYMBOL net/lapb/lapb 0xf568177e lapb_connect_request +EXPORT_SYMBOL net/llc/llc 0x365c4143 llc_sap_find +EXPORT_SYMBOL net/llc/llc 0x38b92846 llc_remove_pack +EXPORT_SYMBOL net/llc/llc 0x39ee126d llc_sap_open +EXPORT_SYMBOL net/llc/llc 0x52d7b2fd llc_sap_list +EXPORT_SYMBOL net/llc/llc 0x586d1bd6 llc_mac_hdr_init +EXPORT_SYMBOL net/llc/llc 0x6777cfbb llc_add_pack +EXPORT_SYMBOL net/llc/llc 0xb7b705b4 llc_sap_close +EXPORT_SYMBOL net/llc/llc 0xc7eb7288 llc_set_station_handler +EXPORT_SYMBOL net/llc/llc 0xcd3ef9c2 llc_build_and_send_ui_pkt +EXPORT_SYMBOL net/mac80211/mac80211 0x011430c5 ieee80211_alloc_hw_nm +EXPORT_SYMBOL net/mac80211/mac80211 0x01454802 ieee80211_sta_set_buffered +EXPORT_SYMBOL net/mac80211/mac80211 0x063f5308 ieee80211_get_tkip_p1k_iv +EXPORT_SYMBOL net/mac80211/mac80211 0x07e7e713 ieee80211_nan_func_match +EXPORT_SYMBOL net/mac80211/mac80211 0x09d7be3a ieee80211_mark_rx_ba_filtered_frames +EXPORT_SYMBOL net/mac80211/mac80211 0x14cceb18 ieee80211_ap_probereq_get +EXPORT_SYMBOL net/mac80211/mac80211 0x16e6b7cf ieee80211_get_tx_rates +EXPORT_SYMBOL net/mac80211/mac80211 0x183dcd3b ieee80211_get_key_rx_seq +EXPORT_SYMBOL net/mac80211/mac80211 0x19f37f0d ieee80211_update_p2p_noa +EXPORT_SYMBOL net/mac80211/mac80211 0x1a03f1be ieee80211_csa_finish +EXPORT_SYMBOL net/mac80211/mac80211 0x1a66fc17 ieee80211_get_tkip_rx_p1k +EXPORT_SYMBOL net/mac80211/mac80211 0x1ac4b751 __ieee80211_get_radio_led_name +EXPORT_SYMBOL net/mac80211/mac80211 0x1d2407fa ieee80211_tx_status_ext +EXPORT_SYMBOL net/mac80211/mac80211 0x2291a64e ieee80211_wake_queues +EXPORT_SYMBOL net/mac80211/mac80211 0x2a914919 __ieee80211_get_rx_led_name +EXPORT_SYMBOL net/mac80211/mac80211 0x2a9d65d2 ieee80211_nan_func_terminated +EXPORT_SYMBOL net/mac80211/mac80211 0x2c0594d3 ieee80211_tdls_oper_request +EXPORT_SYMBOL net/mac80211/mac80211 0x2dc88de0 ieee80211_stop_queue +EXPORT_SYMBOL net/mac80211/mac80211 0x2ed19150 ieee80211_probereq_get +EXPORT_SYMBOL net/mac80211/mac80211 0x34810c3e ieee80211_tx_prepare_skb +EXPORT_SYMBOL net/mac80211/mac80211 0x359ae306 ieee80211_sta_eosp +EXPORT_SYMBOL net/mac80211/mac80211 0x3ae75c6a __ieee80211_create_tpt_led_trigger +EXPORT_SYMBOL net/mac80211/mac80211 0x3b46872b ieee80211_tx_rate_update +EXPORT_SYMBOL net/mac80211/mac80211 0x3d403d0b ieee80211_rx_ba_timer_expired +EXPORT_SYMBOL net/mac80211/mac80211 0x3e79b6e6 ieee80211_next_txq +EXPORT_SYMBOL net/mac80211/mac80211 0x3ee0a6e9 ieee80211_generic_frame_duration +EXPORT_SYMBOL net/mac80211/mac80211 0x3ee39858 ieee80211_queue_work +EXPORT_SYMBOL net/mac80211/mac80211 0x3f8d52ef __ieee80211_get_tx_led_name +EXPORT_SYMBOL net/mac80211/mac80211 0x3fabb615 ieee80211_stop_tx_ba_session +EXPORT_SYMBOL net/mac80211/mac80211 0x404dc5cf ieee80211_beacon_get_tim +EXPORT_SYMBOL net/mac80211/mac80211 0x43bbb444 ieee80211_tx_status_8023 +EXPORT_SYMBOL net/mac80211/mac80211 0x46d3b773 ieee80211_reserve_tid +EXPORT_SYMBOL net/mac80211/mac80211 0x4bb02e6d ieee80211_rts_duration +EXPORT_SYMBOL net/mac80211/mac80211 0x4d4d278a ieee80211_free_txskb +EXPORT_SYMBOL net/mac80211/mac80211 0x4e6d2a19 ieee80211_chswitch_done +EXPORT_SYMBOL net/mac80211/mac80211 0x50fd713f ieee80211_tx_status_irqsafe +EXPORT_SYMBOL net/mac80211/mac80211 0x577cb83e ieee80211_stop_rx_ba_session +EXPORT_SYMBOL net/mac80211/mac80211 0x58988ebe ieee80211_radar_detected +EXPORT_SYMBOL net/mac80211/mac80211 0x5aa17b33 ieee80211_ctstoself_duration +EXPORT_SYMBOL net/mac80211/mac80211 0x5ccd285c ieee80211_rx_napi +EXPORT_SYMBOL net/mac80211/mac80211 0x621ef33b __ieee80211_get_assoc_led_name +EXPORT_SYMBOL net/mac80211/mac80211 0x656084ff ieee80211_pspoll_get +EXPORT_SYMBOL net/mac80211/mac80211 0x67c9160d ieee80211_rx_irqsafe +EXPORT_SYMBOL net/mac80211/mac80211 0x6848dee0 ieee80211_nullfunc_get +EXPORT_SYMBOL net/mac80211/mac80211 0x68de125b ieee80211_sched_scan_stopped +EXPORT_SYMBOL net/mac80211/mac80211 0x6a75fc55 ieee80211_txq_airtime_check +EXPORT_SYMBOL net/mac80211/mac80211 0x713d6bd5 rate_control_set_rates +EXPORT_SYMBOL net/mac80211/mac80211 0x71acfc1a ieee80211_iter_keys +EXPORT_SYMBOL net/mac80211/mac80211 0x7659253c ieee80211_cqm_beacon_loss_notify +EXPORT_SYMBOL net/mac80211/mac80211 0x77081daf ieee80211_queue_stopped +EXPORT_SYMBOL net/mac80211/mac80211 0x795eb442 ieee80211_queue_delayed_work +EXPORT_SYMBOL net/mac80211/mac80211 0x7a4601ae ieee80211_enable_rssi_reports +EXPORT_SYMBOL net/mac80211/mac80211 0x7ad55699 ieee80211_proberesp_get +EXPORT_SYMBOL net/mac80211/mac80211 0x7ba47b19 ieee80211_sta_ps_transition +EXPORT_SYMBOL net/mac80211/mac80211 0x813bfaca ieee80211_unreserve_tid +EXPORT_SYMBOL net/mac80211/mac80211 0x929dadf4 ieee80211_send_eosp_nullfunc +EXPORT_SYMBOL net/mac80211/mac80211 0x92aa9049 ieee80211_register_hw +EXPORT_SYMBOL net/mac80211/mac80211 0x991a0ca0 ieee80211_parse_p2p_noa +EXPORT_SYMBOL net/mac80211/mac80211 0x9a95255a ieee80211_start_tx_ba_session +EXPORT_SYMBOL net/mac80211/mac80211 0x9d99b162 ieee80211_free_hw +EXPORT_SYMBOL net/mac80211/mac80211 0x9ff74698 ieee80211_get_tkip_p2k +EXPORT_SYMBOL net/mac80211/mac80211 0xa23c628d ieee80211_csa_update_counter +EXPORT_SYMBOL net/mac80211/mac80211 0xa442e666 ieee80211_set_hw_80211_encap +EXPORT_SYMBOL net/mac80211/mac80211 0xa45c05bf ieee80211_find_sta +EXPORT_SYMBOL net/mac80211/mac80211 0xa4fa0c97 ieee80211_unregister_hw +EXPORT_SYMBOL net/mac80211/mac80211 0xa6abe453 ieee80211_csa_set_counter +EXPORT_SYMBOL net/mac80211/mac80211 0xa6dd7110 ieee80211_report_low_ack +EXPORT_SYMBOL net/mac80211/mac80211 0xa8e7b492 ieee80211_get_buffered_bc +EXPORT_SYMBOL net/mac80211/mac80211 0xabba0fed ieee80211_manage_rx_ba_offl +EXPORT_SYMBOL net/mac80211/mac80211 0xb25c0a48 ieee80211_restart_hw +EXPORT_SYMBOL net/mac80211/mac80211 0xb2f17a05 ieee80211_sta_block_awake +EXPORT_SYMBOL net/mac80211/mac80211 0xb6726d00 __ieee80211_schedule_txq +EXPORT_SYMBOL net/mac80211/mac80211 0xb6afe3c1 wiphy_to_ieee80211_hw +EXPORT_SYMBOL net/mac80211/mac80211 0xb9a0bc81 ieee80211_stop_tx_ba_cb_irqsafe +EXPORT_SYMBOL net/mac80211/mac80211 0xbbb81a63 ieee80211_start_tx_ba_cb_irqsafe +EXPORT_SYMBOL net/mac80211/mac80211 0xbbdb2e46 ieee80211_scan_completed +EXPORT_SYMBOL net/mac80211/mac80211 0xbe0ebfc3 ieee80211_sta_pspoll +EXPORT_SYMBOL net/mac80211/mac80211 0xbf4a04c3 ieee80211_send_bar +EXPORT_SYMBOL net/mac80211/mac80211 0xca51c808 ieee80211_ctstoself_get +EXPORT_SYMBOL net/mac80211/mac80211 0xce2703f7 ieee80211_beacon_get_template +EXPORT_SYMBOL net/mac80211/mac80211 0xce3d9a63 ieee80211_txq_may_transmit +EXPORT_SYMBOL net/mac80211/mac80211 0xd10f7631 ieee80211_report_wowlan_wakeup +EXPORT_SYMBOL net/mac80211/mac80211 0xd1e717f1 ieee80211_tx_status +EXPORT_SYMBOL net/mac80211/mac80211 0xd2f3c35b ieee80211_csa_is_complete +EXPORT_SYMBOL net/mac80211/mac80211 0xd4e392ff ieee80211_wake_queue +EXPORT_SYMBOL net/mac80211/mac80211 0xd4eba964 ieee80211_connection_loss +EXPORT_SYMBOL net/mac80211/mac80211 0xd5367d4e ieee80211_rate_control_unregister +EXPORT_SYMBOL net/mac80211/mac80211 0xd967dc58 ieee80211_txq_schedule_start +EXPORT_SYMBOL net/mac80211/mac80211 0xde12a930 ieee80211_rate_control_register +EXPORT_SYMBOL net/mac80211/mac80211 0xde343a74 ieee80211_beacon_loss +EXPORT_SYMBOL net/mac80211/mac80211 0xe731aed3 ieee80211_txq_get_depth +EXPORT_SYMBOL net/mac80211/mac80211 0xe9f6154c ieee80211_disable_rssi_reports +EXPORT_SYMBOL net/mac80211/mac80211 0xf12692df ieee80211_stop_queues +EXPORT_SYMBOL net/mac80211/mac80211 0xf16c5aff ieee80211_sched_scan_results +EXPORT_SYMBOL net/mac80211/mac80211 0xf46fc2ff ieee80211_cqm_rssi_notify +EXPORT_SYMBOL net/mac80211/mac80211 0xf53b1a3e ieee80211_rts_get +EXPORT_SYMBOL net/mac80211/mac80211 0xf57f4507 ieee80211_sta_uapsd_trigger +EXPORT_SYMBOL net/mac80211/mac80211 0xf67ec65c ieee80211_iter_keys_rcu +EXPORT_SYMBOL net/mac80211/mac80211 0xf851ac1c ieee80211_sta_register_airtime +EXPORT_SYMBOL net/mac80211/mac80211 0xfd2993e5 ieee80211_tx_dequeue +EXPORT_SYMBOL net/mac802154/mac802154 0x1538ddc9 ieee802154_stop_queue +EXPORT_SYMBOL net/mac802154/mac802154 0x6f131bb2 ieee802154_free_hw +EXPORT_SYMBOL net/mac802154/mac802154 0x6f1941bc ieee802154_xmit_complete +EXPORT_SYMBOL net/mac802154/mac802154 0x8ed659ed ieee802154_unregister_hw +EXPORT_SYMBOL net/mac802154/mac802154 0xbfa55649 ieee802154_rx_irqsafe +EXPORT_SYMBOL net/mac802154/mac802154 0xe5d6eb9a ieee802154_alloc_hw +EXPORT_SYMBOL net/mac802154/mac802154 0xe8ad0ca7 ieee802154_register_hw +EXPORT_SYMBOL net/mac802154/mac802154 0xf917b23d ieee802154_wake_queue +EXPORT_SYMBOL net/netfilter/ipvs/ip_vs 0x0e03ddcc ip_vs_proto_data_get +EXPORT_SYMBOL net/netfilter/ipvs/ip_vs 0x2ca8e49c unregister_ip_vs_app +EXPORT_SYMBOL net/netfilter/ipvs/ip_vs 0x3aab1b16 ip_vs_nfct_expect_related +EXPORT_SYMBOL net/netfilter/ipvs/ip_vs 0x4fc84b42 unregister_ip_vs_scheduler +EXPORT_SYMBOL net/netfilter/ipvs/ip_vs 0x6184faa9 register_ip_vs_app_inc +EXPORT_SYMBOL net/netfilter/ipvs/ip_vs 0x82540042 register_ip_vs_app +EXPORT_SYMBOL net/netfilter/ipvs/ip_vs 0x8355330d ip_vs_new_conn_out +EXPORT_SYMBOL net/netfilter/ipvs/ip_vs 0x883fe201 ip_vs_conn_new +EXPORT_SYMBOL net/netfilter/ipvs/ip_vs 0xabf26169 ip_vs_proto_get +EXPORT_SYMBOL net/netfilter/ipvs/ip_vs 0xc270d34e ip_vs_tcp_conn_listen +EXPORT_SYMBOL net/netfilter/ipvs/ip_vs 0xc62ef9d7 ip_vs_conn_out_get +EXPORT_SYMBOL net/netfilter/ipvs/ip_vs 0xd23a44ad register_ip_vs_scheduler +EXPORT_SYMBOL net/netfilter/ipvs/ip_vs 0xd48b46cc ip_vs_conn_put +EXPORT_SYMBOL net/netfilter/ipvs/ip_vs 0xd831a1a2 ip_vs_proto_name +EXPORT_SYMBOL net/netfilter/ipvs/ip_vs 0xeb691c4f ip_vs_conn_in_get +EXPORT_SYMBOL net/netfilter/ipvs/ip_vs 0xff246455 ip_vs_scheduler_err +EXPORT_SYMBOL net/netfilter/nf_conntrack 0x2e3f0907 nf_ct_ext_add +EXPORT_SYMBOL net/netfilter/nf_conntrack_pptp 0xf2a36612 pptp_msg_name +EXPORT_SYMBOL net/netfilter/nf_nat 0x3bd370fc nf_nat_follow_master +EXPORT_SYMBOL net/netfilter/nf_nat 0x45ea68ff nf_nat_setup_info +EXPORT_SYMBOL net/netfilter/nf_nat 0x6d418c96 __nf_nat_mangle_tcp_packet +EXPORT_SYMBOL net/netfilter/nf_nat 0x8477b300 nf_xfrm_me_harder +EXPORT_SYMBOL net/netfilter/nf_nat 0xa5b541f9 nf_nat_mangle_udp_packet +EXPORT_SYMBOL net/netfilter/nft_fib 0xe8203072 nft_fib_policy +EXPORT_SYMBOL net/netfilter/x_tables 0x00f82d43 xt_find_match +EXPORT_SYMBOL net/netfilter/x_tables 0x0d7f5fcd xt_alloc_entry_offsets +EXPORT_SYMBOL net/netfilter/x_tables 0x38da7bb1 xt_unregister_targets +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 0x482aa857 xt_register_matches +EXPORT_SYMBOL net/netfilter/x_tables 0x50873741 xt_compat_init_offsets +EXPORT_SYMBOL net/netfilter/x_tables 0x5dc1d7d5 xt_unregister_match +EXPORT_SYMBOL net/netfilter/x_tables 0x727aa0f8 xt_table_get_private_protected +EXPORT_SYMBOL net/netfilter/x_tables 0x7ee087b4 xt_register_target +EXPORT_SYMBOL net/netfilter/x_tables 0x9043c69f xt_register_targets +EXPORT_SYMBOL net/netfilter/x_tables 0x977fd4bf xt_alloc_table_info +EXPORT_SYMBOL net/netfilter/x_tables 0xa25fc115 xt_compat_check_entry_offsets +EXPORT_SYMBOL net/netfilter/x_tables 0xb1398124 xt_unregister_target +EXPORT_SYMBOL net/netfilter/x_tables 0xb648d3fa xt_unregister_matches +EXPORT_SYMBOL net/netfilter/x_tables 0xc8a438c8 xt_register_match +EXPORT_SYMBOL net/netfilter/x_tables 0xcb3e91cc xt_counters_alloc +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 0xfef779fa xt_find_jump_offset +EXPORT_SYMBOL net/nfc/hci/hci 0x0646c7fd nfc_hci_allocate_device +EXPORT_SYMBOL net/nfc/hci/hci 0x1329dc5d nfc_hci_set_param +EXPORT_SYMBOL net/nfc/hci/hci 0x1468ef1d nfc_hci_disconnect_gate +EXPORT_SYMBOL net/nfc/hci/hci 0x14de6cb8 nfc_hci_reset_pipes_per_host +EXPORT_SYMBOL net/nfc/hci/hci 0x289e2e53 nfc_hci_recv_frame +EXPORT_SYMBOL net/nfc/hci/hci 0x28c9807b nfc_hci_free_device +EXPORT_SYMBOL net/nfc/hci/hci 0x31e0d246 nfc_hci_send_event +EXPORT_SYMBOL net/nfc/hci/hci 0x375d17d8 nfc_hci_driver_failure +EXPORT_SYMBOL net/nfc/hci/hci 0x47b2af00 nfc_llc_start +EXPORT_SYMBOL net/nfc/hci/hci 0x549b765c nfc_hci_target_discovered +EXPORT_SYMBOL net/nfc/hci/hci 0x6800fad7 nfc_hci_connect_gate +EXPORT_SYMBOL net/nfc/hci/hci 0x6bfab963 nfc_hci_register_device +EXPORT_SYMBOL net/nfc/hci/hci 0x731b6def nfc_hci_get_param +EXPORT_SYMBOL net/nfc/hci/hci 0x74fe3670 nfc_hci_result_to_errno +EXPORT_SYMBOL net/nfc/hci/hci 0x7cf2549d nfc_hci_set_clientdata +EXPORT_SYMBOL net/nfc/hci/hci 0xd6eccf75 nfc_hci_reset_pipes +EXPORT_SYMBOL net/nfc/hci/hci 0xd7c323fd nfc_hci_get_clientdata +EXPORT_SYMBOL net/nfc/hci/hci 0xdd231c55 nfc_hci_sak_to_protocol +EXPORT_SYMBOL net/nfc/hci/hci 0xe06428c8 nfc_llc_stop +EXPORT_SYMBOL net/nfc/hci/hci 0xe9972429 nfc_hci_send_cmd +EXPORT_SYMBOL net/nfc/hci/hci 0xead1aa65 nfc_hci_unregister_device +EXPORT_SYMBOL net/nfc/hci/hci 0xf144f413 nfc_hci_disconnect_all_gates +EXPORT_SYMBOL net/nfc/hci/hci 0xfaacf3aa nfc_hci_send_cmd_async +EXPORT_SYMBOL net/nfc/nci/nci 0x0659efee nci_send_data +EXPORT_SYMBOL net/nfc/nci/nci 0x13812665 nci_conn_max_data_pkt_payload_size +EXPORT_SYMBOL net/nfc/nci/nci 0x13e1666e nci_free_device +EXPORT_SYMBOL net/nfc/nci/nci 0x231fed41 nci_register_device +EXPORT_SYMBOL net/nfc/nci/nci 0x2f508b48 nci_set_config +EXPORT_SYMBOL net/nfc/nci/nci 0x50d8eb67 nci_get_conn_info_by_dest_type_params +EXPORT_SYMBOL net/nfc/nci/nci 0x60520883 nci_core_cmd +EXPORT_SYMBOL net/nfc/nci/nci 0x6187c732 nci_nfcee_mode_set +EXPORT_SYMBOL net/nfc/nci/nci 0x6f9f8c50 nci_core_init +EXPORT_SYMBOL net/nfc/nci/nci 0x775605c3 nci_hci_open_pipe +EXPORT_SYMBOL net/nfc/nci/nci 0x87b0c709 nci_unregister_device +EXPORT_SYMBOL net/nfc/nci/nci 0x8d4ad70b nci_send_cmd +EXPORT_SYMBOL net/nfc/nci/nci 0x8d57362f nci_hci_send_event +EXPORT_SYMBOL net/nfc/nci/nci 0x94fb8744 nci_send_frame +EXPORT_SYMBOL net/nfc/nci/nci 0x9b58e20e nci_hci_get_param +EXPORT_SYMBOL net/nfc/nci/nci 0x9c50f13d nci_hci_send_cmd +EXPORT_SYMBOL net/nfc/nci/nci 0x9ea8a431 nci_core_conn_close +EXPORT_SYMBOL net/nfc/nci/nci 0x9f0b5fd4 nci_prop_cmd +EXPORT_SYMBOL net/nfc/nci/nci 0x9f255cc8 nci_hci_set_param +EXPORT_SYMBOL net/nfc/nci/nci 0xa5139003 nci_core_conn_create +EXPORT_SYMBOL net/nfc/nci/nci 0xad9b4c2d nci_nfcee_discover +EXPORT_SYMBOL net/nfc/nci/nci 0xb83cd047 nci_req_complete +EXPORT_SYMBOL net/nfc/nci/nci 0xba490602 nci_to_errno +EXPORT_SYMBOL net/nfc/nci/nci 0xceedcffa nci_recv_frame +EXPORT_SYMBOL net/nfc/nci/nci 0xdc373260 nci_nfcc_loopback +EXPORT_SYMBOL net/nfc/nci/nci 0xde6e75b2 nci_core_reset +EXPORT_SYMBOL net/nfc/nci/nci 0xe44c438c nci_allocate_device +EXPORT_SYMBOL net/nfc/nci/nci 0xee744751 nci_hci_clear_all_pipes +EXPORT_SYMBOL net/nfc/nci/nci 0xf173e32b nci_hci_connect_gate +EXPORT_SYMBOL net/nfc/nci/nci 0xfa2ccfe8 nci_hci_dev_session_init +EXPORT_SYMBOL net/nfc/nfc 0x087be449 nfc_alloc_recv_skb +EXPORT_SYMBOL net/nfc/nfc 0x0a2a4596 nfc_driver_failure +EXPORT_SYMBOL net/nfc/nfc 0x1bb88253 nfc_se_connectivity +EXPORT_SYMBOL net/nfc/nfc 0x26d4739a __nfc_alloc_vendor_cmd_reply_skb +EXPORT_SYMBOL net/nfc/nfc 0x349bdcc2 nfc_add_se +EXPORT_SYMBOL net/nfc/nfc 0x39a2c464 nfc_tm_activated +EXPORT_SYMBOL net/nfc/nfc 0x3ab3ad8c nfc_allocate_device +EXPORT_SYMBOL net/nfc/nfc 0x4929537b nfc_se_transaction +EXPORT_SYMBOL net/nfc/nfc 0x4d2865c8 nfc_class +EXPORT_SYMBOL net/nfc/nfc 0x4ea787dc nfc_remove_se +EXPORT_SYMBOL net/nfc/nfc 0x52d135da nfc_fw_download_done +EXPORT_SYMBOL net/nfc/nfc 0x567fa569 nfc_proto_unregister +EXPORT_SYMBOL net/nfc/nfc 0x6102f412 nfc_set_remote_general_bytes +EXPORT_SYMBOL net/nfc/nfc 0x64aedda4 nfc_get_local_general_bytes +EXPORT_SYMBOL net/nfc/nfc 0x677bf839 nfc_proto_register +EXPORT_SYMBOL net/nfc/nfc 0x773c5775 nfc_dep_link_is_up +EXPORT_SYMBOL net/nfc/nfc 0x791c54bc nfc_vendor_cmd_reply +EXPORT_SYMBOL net/nfc/nfc 0x90e405b2 nfc_target_lost +EXPORT_SYMBOL net/nfc/nfc 0x96d52a56 nfc_find_se +EXPORT_SYMBOL net/nfc/nfc 0x9d8a404c nfc_tm_deactivated +EXPORT_SYMBOL net/nfc/nfc 0xb7de9f15 nfc_send_to_raw_sock +EXPORT_SYMBOL net/nfc/nfc 0xbf7d938d nfc_targets_found +EXPORT_SYMBOL net/nfc/nfc 0xc3a66379 nfc_tm_data_received +EXPORT_SYMBOL net/nfc/nfc 0xfdf0a1eb nfc_unregister_device +EXPORT_SYMBOL net/nfc/nfc 0xff5932e5 nfc_register_device +EXPORT_SYMBOL net/nfc/nfc_digital 0x49f5bd8a nfc_digital_allocate_device +EXPORT_SYMBOL net/nfc/nfc_digital 0x722974f9 nfc_digital_register_device +EXPORT_SYMBOL net/nfc/nfc_digital 0x8048ce85 nfc_digital_unregister_device +EXPORT_SYMBOL net/nfc/nfc_digital 0xa611f0b0 nfc_digital_free_device +EXPORT_SYMBOL net/phonet/phonet 0x0ea6cb34 pn_sock_unhash +EXPORT_SYMBOL net/phonet/phonet 0x4f35ccb5 phonet_stream_ops +EXPORT_SYMBOL net/phonet/phonet 0x6323b1c5 pn_sock_hash +EXPORT_SYMBOL net/phonet/phonet 0x948ee94a pn_sock_get_port +EXPORT_SYMBOL net/phonet/phonet 0xa466f86d pn_skb_send +EXPORT_SYMBOL net/phonet/phonet 0xd39c3710 phonet_proto_register +EXPORT_SYMBOL net/phonet/phonet 0xea5c5702 phonet_header_ops +EXPORT_SYMBOL net/phonet/phonet 0xf5c37f02 phonet_proto_unregister +EXPORT_SYMBOL net/rxrpc/rxrpc 0x0c1e7649 rxrpc_kernel_get_peer +EXPORT_SYMBOL net/rxrpc/rxrpc 0x0c1fa044 rxrpc_get_null_key +EXPORT_SYMBOL net/rxrpc/rxrpc 0x0de984c2 rxrpc_kernel_begin_call +EXPORT_SYMBOL net/rxrpc/rxrpc 0x13b200e6 rxrpc_kernel_send_data +EXPORT_SYMBOL net/rxrpc/rxrpc 0x2165e609 rxrpc_kernel_new_call_notification +EXPORT_SYMBOL net/rxrpc/rxrpc 0x2ad04159 key_type_rxrpc +EXPORT_SYMBOL net/rxrpc/rxrpc 0x31bf3ca3 rxrpc_debug_id +EXPORT_SYMBOL net/rxrpc/rxrpc 0x3d22e99a rxrpc_kernel_set_max_life +EXPORT_SYMBOL net/rxrpc/rxrpc 0x5681a245 rxrpc_kernel_get_epoch +EXPORT_SYMBOL net/rxrpc/rxrpc 0x5956d2ac rxrpc_kernel_abort_call +EXPORT_SYMBOL net/rxrpc/rxrpc 0x5e10e07d rxrpc_kernel_get_reply_time +EXPORT_SYMBOL net/rxrpc/rxrpc 0x70811718 rxrpc_sock_set_min_security_level +EXPORT_SYMBOL net/rxrpc/rxrpc 0x71bf9d5c rxrpc_kernel_charge_accept +EXPORT_SYMBOL net/rxrpc/rxrpc 0x7545fab6 rxrpc_get_server_data_key +EXPORT_SYMBOL net/rxrpc/rxrpc 0x90fffaeb rxrpc_kernel_check_life +EXPORT_SYMBOL net/rxrpc/rxrpc 0xa31dc1b9 rxrpc_kernel_set_tx_length +EXPORT_SYMBOL net/rxrpc/rxrpc 0xa8d26f75 rxrpc_kernel_end_call +EXPORT_SYMBOL net/rxrpc/rxrpc 0xc2ed60b1 rxrpc_kernel_recv_data +EXPORT_SYMBOL net/rxrpc/rxrpc 0xccb057c8 rxrpc_kernel_get_srtt +EXPORT_SYMBOL net/sctp/sctp 0x82bf62e7 sctp_do_peeloff +EXPORT_SYMBOL net/sunrpc/auth_gss/auth_rpcgss 0x050bec9c gss_mech_get +EXPORT_SYMBOL net/sunrpc/auth_gss/auth_rpcgss 0x4234d6a6 gss_pseudoflavor_to_service +EXPORT_SYMBOL net/sunrpc/auth_gss/auth_rpcgss 0x4f7a7e87 gss_mech_put +EXPORT_SYMBOL net/sunrpc/sunrpc 0x6d77ca9b xdr_restrict_buflen +EXPORT_SYMBOL net/sunrpc/sunrpc 0x8100f2aa svc_pool_stats_open +EXPORT_SYMBOL net/sunrpc/sunrpc 0x96f19e5b xdr_truncate_encode +EXPORT_SYMBOL net/tipc/tipc 0x6c215e08 tipc_sk_fill_sock_diag +EXPORT_SYMBOL net/tipc/tipc 0xc1e9b160 tipc_dump_done +EXPORT_SYMBOL net/tipc/tipc 0xdf168dc3 tipc_dump_start +EXPORT_SYMBOL net/tipc/tipc 0xf15f52c6 tipc_nl_sk_walk +EXPORT_SYMBOL net/tls/tls 0x3e458374 tls_get_record +EXPORT_SYMBOL net/wimax/wimax 0x836c6080 wimax_reset +EXPORT_SYMBOL net/wimax/wimax 0xe957b400 wimax_rfkill +EXPORT_SYMBOL net/wireless/cfg80211 0x0132be90 wiphy_rfkill_stop_polling +EXPORT_SYMBOL net/wireless/cfg80211 0x05e2b6f6 cfg80211_michael_mic_failure +EXPORT_SYMBOL net/wireless/cfg80211 0x0b47b227 cfg80211_rx_mlme_mgmt +EXPORT_SYMBOL net/wireless/cfg80211 0x0cd025ba cfg80211_rx_assoc_resp +EXPORT_SYMBOL net/wireless/cfg80211 0x0d1ae500 wiphy_apply_custom_regulatory +EXPORT_SYMBOL net/wireless/cfg80211 0x117aca91 cfg80211_merge_profile +EXPORT_SYMBOL net/wireless/cfg80211 0x15a37cf3 cfg80211_calculate_bitrate +EXPORT_SYMBOL net/wireless/cfg80211 0x15a6f884 cfg80211_cqm_rssi_notify +EXPORT_SYMBOL net/wireless/cfg80211 0x1879fcbd bridge_tunnel_header +EXPORT_SYMBOL net/wireless/cfg80211 0x18b53545 cfg80211_chandef_create +EXPORT_SYMBOL net/wireless/cfg80211 0x19601aa5 cfg80211_port_authorized +EXPORT_SYMBOL net/wireless/cfg80211 0x1a8e4a80 cfg80211_external_auth_request +EXPORT_SYMBOL net/wireless/cfg80211 0x1c600648 cfg80211_tx_mgmt_expired +EXPORT_SYMBOL net/wireless/cfg80211 0x1ce2497f reg_query_regdb_wmm +EXPORT_SYMBOL net/wireless/cfg80211 0x242aaba2 cfg80211_nan_func_terminated +EXPORT_SYMBOL net/wireless/cfg80211 0x275269b3 ieee80211_ie_split_ric +EXPORT_SYMBOL net/wireless/cfg80211 0x28446f90 ieee80211_get_response_rate +EXPORT_SYMBOL net/wireless/cfg80211 0x28b2f876 cfg80211_control_port_tx_status +EXPORT_SYMBOL net/wireless/cfg80211 0x293e1d0a cfg80211_unregister_wdev +EXPORT_SYMBOL net/wireless/cfg80211 0x29890c28 cfg80211_ibss_joined +EXPORT_SYMBOL net/wireless/cfg80211 0x29e66da0 cfg80211_remain_on_channel_expired +EXPORT_SYMBOL net/wireless/cfg80211 0x3028377f cfg80211_notify_new_peer_candidate +EXPORT_SYMBOL net/wireless/cfg80211 0x31621066 cfg80211_check_combinations +EXPORT_SYMBOL net/wireless/cfg80211 0x330e22bd cfg80211_report_wowlan_wakeup +EXPORT_SYMBOL net/wireless/cfg80211 0x351f1425 wiphy_register +EXPORT_SYMBOL net/wireless/cfg80211 0x3614ca0e freq_reg_info +EXPORT_SYMBOL net/wireless/cfg80211 0x3bd8aaa1 ieee80211_operating_class_to_band +EXPORT_SYMBOL net/wireless/cfg80211 0x3c8fc8b7 __cfg80211_alloc_reply_skb +EXPORT_SYMBOL net/wireless/cfg80211 0x3f820697 cfg80211_rx_mgmt_khz +EXPORT_SYMBOL net/wireless/cfg80211 0x43e02918 cfg80211_scan_done +EXPORT_SYMBOL net/wireless/cfg80211 0x43f5efcf cfg80211_sinfo_alloc_tid_stats +EXPORT_SYMBOL net/wireless/cfg80211 0x456c83d9 cfg80211_get_bss +EXPORT_SYMBOL net/wireless/cfg80211 0x46312808 ieee80211_radiotap_iterator_next +EXPORT_SYMBOL net/wireless/cfg80211 0x4bef922d wiphy_free +EXPORT_SYMBOL net/wireless/cfg80211 0x4c89bfaf cfg80211_cqm_beacon_loss_notify +EXPORT_SYMBOL net/wireless/cfg80211 0x4d27972c cfg80211_update_owe_info_event +EXPORT_SYMBOL net/wireless/cfg80211 0x4fae37e4 regulatory_set_wiphy_regd +EXPORT_SYMBOL net/wireless/cfg80211 0x5406be22 cfg80211_rx_spurious_frame +EXPORT_SYMBOL net/wireless/cfg80211 0x559c4454 cfg80211_ch_switch_notify +EXPORT_SYMBOL net/wireless/cfg80211 0x5a571816 cfg80211_mgmt_tx_status +EXPORT_SYMBOL net/wireless/cfg80211 0x5b344360 regulatory_hint +EXPORT_SYMBOL net/wireless/cfg80211 0x5fb25309 regulatory_set_wiphy_regd_sync_rtnl +EXPORT_SYMBOL net/wireless/cfg80211 0x60a19aed cfg80211_ref_bss +EXPORT_SYMBOL net/wireless/cfg80211 0x63d73540 cfg80211_report_obss_beacon_khz +EXPORT_SYMBOL net/wireless/cfg80211 0x66dc41fe regulatory_pre_cac_allowed +EXPORT_SYMBOL net/wireless/cfg80211 0x67d86dcd ieee80211_chandef_to_operating_class +EXPORT_SYMBOL net/wireless/cfg80211 0x68600c40 ieee80211_mandatory_rates +EXPORT_SYMBOL net/wireless/cfg80211 0x693ba620 wiphy_rfkill_start_polling +EXPORT_SYMBOL net/wireless/cfg80211 0x69b18f43 rfc1042_header +EXPORT_SYMBOL net/wireless/cfg80211 0x6b79f2ce cfg80211_radar_event +EXPORT_SYMBOL net/wireless/cfg80211 0x6bedf402 ieee80211_freq_khz_to_channel +EXPORT_SYMBOL net/wireless/cfg80211 0x7145523c cfg80211_put_bss +EXPORT_SYMBOL net/wireless/cfg80211 0x721da735 ieee80211_get_num_supported_channels +EXPORT_SYMBOL net/wireless/cfg80211 0x74af2a2b cfg80211_connect_done +EXPORT_SYMBOL net/wireless/cfg80211 0x74d55fe8 __cfg80211_send_event_skb +EXPORT_SYMBOL net/wireless/cfg80211 0x7601f8cf cfg80211_cqm_pktloss_notify +EXPORT_SYMBOL net/wireless/cfg80211 0x77845941 cfg80211_ch_switch_started_notify +EXPORT_SYMBOL net/wireless/cfg80211 0x79077155 ieee80211_data_to_8023_exthdr +EXPORT_SYMBOL net/wireless/cfg80211 0x79b82a71 cfg80211_find_vendor_elem +EXPORT_SYMBOL net/wireless/cfg80211 0x7c3ac925 ieee80211_get_vht_max_nss +EXPORT_SYMBOL net/wireless/cfg80211 0x7c6524d4 cfg80211_reg_can_beacon +EXPORT_SYMBOL net/wireless/cfg80211 0x7ef39823 ieee80211_hdrlen +EXPORT_SYMBOL net/wireless/cfg80211 0x7f329dfd cfg80211_crit_proto_stopped +EXPORT_SYMBOL net/wireless/cfg80211 0x7fe2ce07 cfg80211_inform_bss_data +EXPORT_SYMBOL net/wireless/cfg80211 0x810dc1bc ieee80211_get_hdrlen_from_skb +EXPORT_SYMBOL net/wireless/cfg80211 0x817f2e32 cfg80211_reg_can_beacon_relax +EXPORT_SYMBOL net/wireless/cfg80211 0x81a471d6 cfg80211_chandef_valid +EXPORT_SYMBOL net/wireless/cfg80211 0x82b7a998 cfg80211_conn_failed +EXPORT_SYMBOL net/wireless/cfg80211 0x82c61a7b wiphy_read_of_freq_limits +EXPORT_SYMBOL net/wireless/cfg80211 0x86dce922 cfg80211_disconnected +EXPORT_SYMBOL net/wireless/cfg80211 0x89ab1c60 cfg80211_sched_scan_stopped_rtnl +EXPORT_SYMBOL net/wireless/cfg80211 0x8e316804 cfg80211_gtk_rekey_notify +EXPORT_SYMBOL net/wireless/cfg80211 0x8fa02936 cfg80211_free_nan_func +EXPORT_SYMBOL net/wireless/cfg80211 0x92b85e45 cfg80211_sched_scan_results +EXPORT_SYMBOL net/wireless/cfg80211 0x9565f892 cfg80211_iter_combinations +EXPORT_SYMBOL net/wireless/cfg80211 0x9bd35b9f cfg80211_send_layer2_update +EXPORT_SYMBOL net/wireless/cfg80211 0x9d6cba30 cfg80211_find_elem_match +EXPORT_SYMBOL net/wireless/cfg80211 0x9e565096 cfg80211_iftype_allowed +EXPORT_SYMBOL net/wireless/cfg80211 0x9f829827 cfg80211_auth_timeout +EXPORT_SYMBOL net/wireless/cfg80211 0xa4706b1a cfg80211_abandon_assoc +EXPORT_SYMBOL net/wireless/cfg80211 0xa77e49ce cfg80211_roamed +EXPORT_SYMBOL net/wireless/cfg80211 0xa8163f10 cfg80211_ready_on_channel +EXPORT_SYMBOL net/wireless/cfg80211 0xa9e1be0e cfg80211_chandef_dfs_required +EXPORT_SYMBOL net/wireless/cfg80211 0xac97a207 ieee80211_radiotap_iterator_init +EXPORT_SYMBOL net/wireless/cfg80211 0xacc94439 cfg80211_tx_mlme_mgmt +EXPORT_SYMBOL net/wireless/cfg80211 0xad4d5236 cfg80211_get_station +EXPORT_SYMBOL net/wireless/cfg80211 0xae182ab0 cfg80211_del_sta_sinfo +EXPORT_SYMBOL net/wireless/cfg80211 0xafe8b001 ieee80211_channel_to_freq_khz +EXPORT_SYMBOL net/wireless/cfg80211 0xb038e9c6 cfg80211_sched_scan_stopped +EXPORT_SYMBOL net/wireless/cfg80211 0xb1e20361 cfg80211_cqm_txe_notify +EXPORT_SYMBOL net/wireless/cfg80211 0xb3cc39ef cfg80211_stop_iface +EXPORT_SYMBOL net/wireless/cfg80211 0xb481095b wiphy_unregister +EXPORT_SYMBOL net/wireless/cfg80211 0xb6620fb7 cfg80211_check_station_change +EXPORT_SYMBOL net/wireless/cfg80211 0xb8b93009 cfg80211_rx_control_port +EXPORT_SYMBOL net/wireless/cfg80211 0xb9cbc965 cfg80211_chandef_usable +EXPORT_SYMBOL net/wireless/cfg80211 0xbaea16ee cfg80211_assoc_timeout +EXPORT_SYMBOL net/wireless/cfg80211 0xbb41528d cfg80211_rx_unprot_mlme_mgmt +EXPORT_SYMBOL net/wireless/cfg80211 0xbfedf4c8 wiphy_rfkill_set_hw_state +EXPORT_SYMBOL net/wireless/cfg80211 0xc0cd9de5 cfg80211_nan_match +EXPORT_SYMBOL net/wireless/cfg80211 0xc235d700 ieee80211_get_channel_khz +EXPORT_SYMBOL net/wireless/cfg80211 0xcbec5bba cfg80211_ft_event +EXPORT_SYMBOL net/wireless/cfg80211 0xcc1a7c48 cfg80211_is_element_inherited +EXPORT_SYMBOL net/wireless/cfg80211 0xce27fc64 cfg80211_probe_status +EXPORT_SYMBOL net/wireless/cfg80211 0xd081d50d ieee80211_amsdu_to_8023s +EXPORT_SYMBOL net/wireless/cfg80211 0xd47c9526 cfg80211_new_sta +EXPORT_SYMBOL net/wireless/cfg80211 0xd552d25e cfg80211_unlink_bss +EXPORT_SYMBOL net/wireless/cfg80211 0xd56d55f3 ieee80211_get_mesh_hdrlen +EXPORT_SYMBOL net/wireless/cfg80211 0xd5b90bf1 cfg80211_inform_bss_frame_data +EXPORT_SYMBOL net/wireless/cfg80211 0xda2b5aa0 cfg80211_sta_opmode_change_notify +EXPORT_SYMBOL net/wireless/cfg80211 0xda672b87 cfg80211_bss_iter +EXPORT_SYMBOL net/wireless/cfg80211 0xdba126c1 reg_initiator_name +EXPORT_SYMBOL net/wireless/cfg80211 0xdbf6e358 wiphy_new_nm +EXPORT_SYMBOL net/wireless/cfg80211 0xe37e992c cfg80211_tdls_oper_request +EXPORT_SYMBOL net/wireless/cfg80211 0xe4f95842 cfg80211_rx_unexpected_4addr_frame +EXPORT_SYMBOL net/wireless/cfg80211 0xec10d904 cfg80211_pmksa_candidate_notify +EXPORT_SYMBOL net/wireless/cfg80211 0xee668161 cfg80211_classify8021d +EXPORT_SYMBOL net/wireless/cfg80211 0xf4b133a3 cfg80211_get_drvinfo +EXPORT_SYMBOL net/wireless/cfg80211 0xf5596d89 cfg80211_get_p2p_attr +EXPORT_SYMBOL net/wireless/cfg80211 0xf7ba2d9a __cfg80211_alloc_event_skb +EXPORT_SYMBOL net/wireless/cfg80211 0xfae8514f cfg80211_chandef_compatible +EXPORT_SYMBOL net/wireless/cfg80211 0xfde122be cfg80211_cac_event +EXPORT_SYMBOL net/wireless/cfg80211 0xff0c113a ieee80211_bss_get_elem +EXPORT_SYMBOL net/wireless/lib80211 0x09e3966a lib80211_crypt_info_init +EXPORT_SYMBOL net/wireless/lib80211 0x5c6d03ee lib80211_unregister_crypto_ops +EXPORT_SYMBOL net/wireless/lib80211 0x6c81c1b8 lib80211_register_crypto_ops +EXPORT_SYMBOL net/wireless/lib80211 0x7f948b35 lib80211_get_crypto_ops +EXPORT_SYMBOL net/wireless/lib80211 0xa170ca60 lib80211_crypt_info_free +EXPORT_SYMBOL net/wireless/lib80211 0xba42228f lib80211_crypt_delayed_deinit +EXPORT_SYMBOL sound/ac97_bus 0xaf4555b5 ac97_bus_type +EXPORT_SYMBOL sound/core/oss/snd-mixer-oss 0x119e0199 snd_mixer_oss_ioctl_card +EXPORT_SYMBOL sound/core/seq/snd-seq 0x1a724fcc snd_seq_kernel_client_ctl +EXPORT_SYMBOL sound/core/seq/snd-seq 0x3061c52d snd_use_lock_sync_helper +EXPORT_SYMBOL sound/core/seq/snd-seq 0x3fb4d161 snd_seq_kernel_client_dispatch +EXPORT_SYMBOL sound/core/seq/snd-seq 0x6bb71038 snd_seq_delete_kernel_client +EXPORT_SYMBOL sound/core/seq/snd-seq 0x6e687b92 snd_seq_kernel_client_enqueue +EXPORT_SYMBOL sound/core/seq/snd-seq 0x73c82cc7 snd_seq_event_port_attach +EXPORT_SYMBOL sound/core/seq/snd-seq 0x7ac2f329 snd_seq_expand_var_event +EXPORT_SYMBOL sound/core/seq/snd-seq 0x7b8699eb snd_seq_event_port_detach +EXPORT_SYMBOL sound/core/seq/snd-seq 0x82886421 snd_seq_create_kernel_client +EXPORT_SYMBOL sound/core/seq/snd-seq 0xb8e448a0 snd_seq_set_queue_tempo +EXPORT_SYMBOL sound/core/seq/snd-seq 0xbe10865a snd_seq_kernel_client_write_poll +EXPORT_SYMBOL sound/core/seq/snd-seq 0xe934da1d snd_seq_dump_var_event +EXPORT_SYMBOL sound/core/seq/snd-seq-midi-emul 0x6ea09972 snd_midi_channel_alloc_set +EXPORT_SYMBOL sound/core/seq/snd-seq-midi-emul 0x833a3e07 snd_midi_channel_set_clear +EXPORT_SYMBOL sound/core/seq/snd-seq-midi-emul 0xb9948d2c snd_midi_channel_free_set +EXPORT_SYMBOL sound/core/seq/snd-seq-midi-emul 0xf912f0c8 snd_midi_process_event +EXPORT_SYMBOL sound/core/seq/snd-seq-midi-event 0x734e4fba snd_midi_event_encode_byte +EXPORT_SYMBOL sound/core/seq/snd-seq-midi-event 0x7a3e0db5 snd_midi_event_no_status +EXPORT_SYMBOL sound/core/seq/snd-seq-midi-event 0x8150b379 snd_midi_event_reset_encode +EXPORT_SYMBOL sound/core/seq/snd-seq-midi-event 0xb8620ad8 snd_midi_event_reset_decode +EXPORT_SYMBOL sound/core/seq/snd-seq-midi-event 0xdd70dbf6 snd_midi_event_decode +EXPORT_SYMBOL sound/core/seq/snd-seq-midi-event 0xdd935c83 snd_midi_event_free +EXPORT_SYMBOL sound/core/seq/snd-seq-midi-event 0xe9e6c50c snd_midi_event_new +EXPORT_SYMBOL sound/core/seq/snd-seq-virmidi 0xf84b2a66 snd_virmidi_new +EXPORT_SYMBOL sound/core/snd 0x055f3614 snd_jack_set_parent +EXPORT_SYMBOL sound/core/snd 0x0bec1bbd snd_power_wait +EXPORT_SYMBOL sound/core/snd 0x0d54b84c snd_register_oss_device +EXPORT_SYMBOL sound/core/snd 0x198788b4 snd_lookup_oss_minor_data +EXPORT_SYMBOL sound/core/snd 0x1b3c6c8a snd_ctl_boolean_mono_info +EXPORT_SYMBOL sound/core/snd 0x1f4c364a snd_card_free_when_closed +EXPORT_SYMBOL sound/core/snd 0x235d8e87 snd_device_free +EXPORT_SYMBOL sound/core/snd 0x23742444 snd_ctl_replace +EXPORT_SYMBOL sound/core/snd 0x23c1ff01 snd_ctl_unregister_ioctl +EXPORT_SYMBOL sound/core/snd 0x24a94b26 snd_info_get_line +EXPORT_SYMBOL sound/core/snd 0x25b6f0c8 snd_info_create_module_entry +EXPORT_SYMBOL sound/core/snd 0x25d89cc1 snd_device_new +EXPORT_SYMBOL sound/core/snd 0x2736f9f7 snd_ctl_boolean_stereo_info +EXPORT_SYMBOL sound/core/snd 0x2c77f457 snd_mixer_oss_notify_callback +EXPORT_SYMBOL sound/core/snd 0x2ce314ad snd_component_add +EXPORT_SYMBOL sound/core/snd 0x31a9b2f1 snd_ctl_remove +EXPORT_SYMBOL sound/core/snd 0x342a2354 copy_to_user_fromio +EXPORT_SYMBOL sound/core/snd 0x3524d6ca snd_device_register +EXPORT_SYMBOL sound/core/snd 0x394131cd snd_ctl_free_one +EXPORT_SYMBOL sound/core/snd 0x3971b4df snd_ecards_limit +EXPORT_SYMBOL sound/core/snd 0x3c5e3117 snd_ctl_new1 +EXPORT_SYMBOL sound/core/snd 0x48285686 snd_info_register +EXPORT_SYMBOL sound/core/snd 0x49c5e3c6 _snd_ctl_add_slave +EXPORT_SYMBOL sound/core/snd 0x4a3ea5c0 snd_request_card +EXPORT_SYMBOL sound/core/snd 0x4a5d1102 snd_jack_set_key +EXPORT_SYMBOL sound/core/snd 0x519a57f3 snd_ctl_register_ioctl_compat +EXPORT_SYMBOL sound/core/snd 0x5282e50c snd_ctl_find_id +EXPORT_SYMBOL sound/core/snd 0x540e830f snd_card_file_remove +EXPORT_SYMBOL sound/core/snd 0x545daefe snd_card_file_add +EXPORT_SYMBOL sound/core/snd 0x58309b1f snd_ctl_rename_id +EXPORT_SYMBOL sound/core/snd 0x5fd6b2d9 snd_jack_add_new_kctl +EXPORT_SYMBOL sound/core/snd 0x65e8afb7 snd_ctl_unregister_ioctl_compat +EXPORT_SYMBOL sound/core/snd 0x6c891a8b snd_card_disconnect +EXPORT_SYMBOL sound/core/snd 0x728c9af8 snd_ctl_find_numid +EXPORT_SYMBOL sound/core/snd 0x72eb562a snd_info_create_card_entry +EXPORT_SYMBOL sound/core/snd 0x73076315 snd_pci_quirk_lookup_id +EXPORT_SYMBOL sound/core/snd 0x7365c628 snd_unregister_device +EXPORT_SYMBOL sound/core/snd 0x7680a762 snd_info_free_entry +EXPORT_SYMBOL sound/core/snd 0x8c058a12 snd_ctl_make_virtual_master +EXPORT_SYMBOL sound/core/snd 0x8df3789f snd_oss_info_register +EXPORT_SYMBOL sound/core/snd 0x8f595b11 snd_major +EXPORT_SYMBOL sound/core/snd 0x98cec2e5 snd_card_set_id +EXPORT_SYMBOL sound/core/snd 0x9a735e2e snd_card_register +EXPORT_SYMBOL sound/core/snd 0x9e6d79f8 snd_info_get_str +EXPORT_SYMBOL sound/core/snd 0xa4d47540 snd_seq_root +EXPORT_SYMBOL sound/core/snd 0xab22e75d snd_pci_quirk_lookup +EXPORT_SYMBOL sound/core/snd 0xab2614bc snd_jack_new +EXPORT_SYMBOL sound/core/snd 0xb2e5ae4a snd_lookup_minor_data +EXPORT_SYMBOL sound/core/snd 0xc4b46a32 snd_jack_report +EXPORT_SYMBOL sound/core/snd 0xc5a6d10b release_and_free_resource +EXPORT_SYMBOL sound/core/snd 0xcc6a729f snd_ctl_enum_info +EXPORT_SYMBOL sound/core/snd 0xd4d53331 snd_unregister_oss_device +EXPORT_SYMBOL sound/core/snd 0xe89413d3 snd_ctl_notify +EXPORT_SYMBOL sound/core/snd 0xe974c0b5 snd_card_free +EXPORT_SYMBOL sound/core/snd 0xeab1ec48 snd_card_new +EXPORT_SYMBOL sound/core/snd 0xeb3cdada snd_register_device +EXPORT_SYMBOL sound/core/snd 0xf30d1eab snd_ctl_register_ioctl +EXPORT_SYMBOL sound/core/snd 0xfa612787 snd_ctl_add +EXPORT_SYMBOL sound/core/snd 0xfeba459a snd_ctl_remove_id +EXPORT_SYMBOL sound/core/snd 0xfffd89db copy_from_user_toio +EXPORT_SYMBOL sound/core/snd-compress 0x5eba7f66 snd_compr_malloc_pages +EXPORT_SYMBOL sound/core/snd-compress 0xcdadec7d snd_compr_free_pages +EXPORT_SYMBOL sound/core/snd-hwdep 0x32e92e95 snd_hwdep_new +EXPORT_SYMBOL sound/core/snd-pcm 0x0283dfe3 _snd_pcm_hw_params_any +EXPORT_SYMBOL sound/core/snd-pcm 0x03c6b6da snd_pcm_lib_preallocate_pages +EXPORT_SYMBOL sound/core/snd-pcm 0x04cda566 snd_interval_refine +EXPORT_SYMBOL sound/core/snd-pcm 0x11eba48e snd_pcm_create_iec958_consumer_hw_params +EXPORT_SYMBOL sound/core/snd-pcm 0x120a4a1a snd_pcm_hw_param_first +EXPORT_SYMBOL sound/core/snd-pcm 0x18728dd4 snd_pcm_lib_preallocate_pages_for_all +EXPORT_SYMBOL sound/core/snd-pcm 0x1a253f2a snd_pcm_lib_free_pages +EXPORT_SYMBOL sound/core/snd-pcm 0x1d027e4b snd_pcm_format_signed +EXPORT_SYMBOL sound/core/snd-pcm 0x207a2b63 snd_pcm_release_substream +EXPORT_SYMBOL sound/core/snd-pcm 0x2d2e8a1e snd_pcm_lib_malloc_pages +EXPORT_SYMBOL sound/core/snd-pcm 0x3023906f snd_pcm_hw_constraint_mask64 +EXPORT_SYMBOL sound/core/snd-pcm 0x3282f1a7 snd_pcm_set_sync +EXPORT_SYMBOL sound/core/snd-pcm 0x36e5ed98 snd_pcm_stop +EXPORT_SYMBOL sound/core/snd-pcm 0x3796bdcc snd_pcm_format_little_endian +EXPORT_SYMBOL sound/core/snd-pcm 0x37ba4571 snd_pcm_lib_ioctl +EXPORT_SYMBOL sound/core/snd-pcm 0x39bf9301 _snd_pcm_hw_param_setempty +EXPORT_SYMBOL sound/core/snd-pcm 0x3c85e892 snd_pcm_set_ops +EXPORT_SYMBOL sound/core/snd-pcm 0x44ca22dc snd_pcm_hw_param_last +EXPORT_SYMBOL sound/core/snd-pcm 0x44ee79ef snd_pcm_hw_rule_noresample +EXPORT_SYMBOL sound/core/snd-pcm 0x4612c5b9 snd_dma_alloc_pages_fallback +EXPORT_SYMBOL sound/core/snd-pcm 0x4939399e snd_pcm_new_internal +EXPORT_SYMBOL sound/core/snd-pcm 0x4c4fbf6e snd_pcm_set_managed_buffer +EXPORT_SYMBOL sound/core/snd-pcm 0x4f56c398 snd_pcm_lib_free_vmalloc_buffer +EXPORT_SYMBOL sound/core/snd-pcm 0x4f72306c snd_pcm_kernel_ioctl +EXPORT_SYMBOL sound/core/snd-pcm 0x4f816e9b snd_pcm_format_big_endian +EXPORT_SYMBOL sound/core/snd-pcm 0x503bd137 snd_interval_ranges +EXPORT_SYMBOL sound/core/snd-pcm 0x52e3e4a5 snd_pcm_hw_param_value +EXPORT_SYMBOL sound/core/snd-pcm 0x5bf4b098 snd_dma_alloc_pages +EXPORT_SYMBOL sound/core/snd-pcm 0x5e7f4920 snd_pcm_format_set_silence +EXPORT_SYMBOL sound/core/snd-pcm 0x650f8603 snd_pcm_format_silence_64 +EXPORT_SYMBOL sound/core/snd-pcm 0x68a24153 snd_pcm_format_physical_width +EXPORT_SYMBOL sound/core/snd-pcm 0x69255f54 snd_pcm_hw_limit_rates +EXPORT_SYMBOL sound/core/snd-pcm 0x6d5372b2 snd_pcm_lib_preallocate_free_for_all +EXPORT_SYMBOL sound/core/snd-pcm 0x6ef8fcd8 snd_pcm_format_linear +EXPORT_SYMBOL sound/core/snd-pcm 0x70d7ae24 snd_pcm_hw_rule_add +EXPORT_SYMBOL sound/core/snd-pcm 0x7186a9da snd_pcm_hw_constraint_ratnums +EXPORT_SYMBOL sound/core/snd-pcm 0x718da532 __snd_pcm_lib_xfer +EXPORT_SYMBOL sound/core/snd-pcm 0x7e3d54dc snd_pcm_hw_constraint_msbits +EXPORT_SYMBOL sound/core/snd-pcm 0x834dc955 snd_pcm_format_size +EXPORT_SYMBOL sound/core/snd-pcm 0x8e767f03 snd_pcm_hw_constraint_minmax +EXPORT_SYMBOL sound/core/snd-pcm 0x91ef01d6 snd_pcm_create_iec958_consumer +EXPORT_SYMBOL sound/core/snd-pcm 0x92a2b741 snd_pcm_hw_constraint_integer +EXPORT_SYMBOL sound/core/snd-pcm 0x94098ff8 snd_interval_list +EXPORT_SYMBOL sound/core/snd-pcm 0x9577b8d0 snd_pcm_period_elapsed +EXPORT_SYMBOL sound/core/snd-pcm 0x9c12ba1d snd_pcm_new_stream +EXPORT_SYMBOL sound/core/snd-pcm 0xa33c84b6 snd_pcm_hw_refine +EXPORT_SYMBOL sound/core/snd-pcm 0xa61aa028 snd_pcm_format_unsigned +EXPORT_SYMBOL sound/core/snd-pcm 0xac437f7b snd_interval_ratnum +EXPORT_SYMBOL sound/core/snd-pcm 0xad23b3ae snd_pcm_open_substream +EXPORT_SYMBOL sound/core/snd-pcm 0xadb02854 snd_pcm_mmap_data +EXPORT_SYMBOL sound/core/snd-pcm 0xaeff3b5d snd_pcm_hw_constraint_ranges +EXPORT_SYMBOL sound/core/snd-pcm 0xb6a952a9 snd_pcm_new +EXPORT_SYMBOL sound/core/snd-pcm 0xb9638db4 snd_pcm_rate_to_rate_bit +EXPORT_SYMBOL sound/core/snd-pcm 0xcf71042a snd_pcm_lib_get_vmalloc_page +EXPORT_SYMBOL sound/core/snd-pcm 0xd337a9c3 snd_pcm_hw_constraint_list +EXPORT_SYMBOL sound/core/snd-pcm 0xd73fb26a snd_pcm_hw_constraint_step +EXPORT_SYMBOL sound/core/snd-pcm 0xe0c5a4b2 snd_pcm_suspend_all +EXPORT_SYMBOL sound/core/snd-pcm 0xe4804b35 snd_pcm_set_managed_buffer_all +EXPORT_SYMBOL sound/core/snd-pcm 0xe56a9336 snd_pcm_format_width +EXPORT_SYMBOL sound/core/snd-pcm 0xee0a9b29 snd_pcm_hw_constraint_ratdens +EXPORT_SYMBOL sound/core/snd-pcm 0xf01b10a0 snd_dma_free_pages +EXPORT_SYMBOL sound/core/snd-pcm 0xf3e4ad73 _snd_pcm_lib_alloc_vmalloc_buffer +EXPORT_SYMBOL sound/core/snd-pcm 0xf6daae58 snd_pcm_hw_constraint_pow2 +EXPORT_SYMBOL sound/core/snd-pcm 0xff6104d0 snd_pcm_rate_bit_to_rate +EXPORT_SYMBOL sound/core/snd-rawmidi 0x0e16828c snd_rawmidi_kernel_release +EXPORT_SYMBOL sound/core/snd-rawmidi 0x4574cccc __snd_rawmidi_transmit_ack +EXPORT_SYMBOL sound/core/snd-rawmidi 0x583d6248 snd_rawmidi_output_params +EXPORT_SYMBOL sound/core/snd-rawmidi 0x59298eca snd_rawmidi_info_select +EXPORT_SYMBOL sound/core/snd-rawmidi 0x62fc4554 snd_rawmidi_input_params +EXPORT_SYMBOL sound/core/snd-rawmidi 0x675e00e5 snd_rawmidi_receive +EXPORT_SYMBOL sound/core/snd-rawmidi 0x7b818a92 snd_rawmidi_transmit +EXPORT_SYMBOL sound/core/snd-rawmidi 0x7ec220b2 snd_rawmidi_set_ops +EXPORT_SYMBOL sound/core/snd-rawmidi 0x7ecfed3e snd_rawmidi_drop_output +EXPORT_SYMBOL sound/core/snd-rawmidi 0x89b75231 __snd_rawmidi_transmit_peek +EXPORT_SYMBOL sound/core/snd-rawmidi 0x8c8feaed snd_rawmidi_kernel_open +EXPORT_SYMBOL sound/core/snd-rawmidi 0x8e076e70 snd_rawmidi_proceed +EXPORT_SYMBOL sound/core/snd-rawmidi 0xb3e84a52 snd_rawmidi_drain_input +EXPORT_SYMBOL sound/core/snd-rawmidi 0xc19ff4cd snd_rawmidi_new +EXPORT_SYMBOL sound/core/snd-rawmidi 0xc59d3144 snd_rawmidi_kernel_read +EXPORT_SYMBOL sound/core/snd-rawmidi 0xd70fc7ca snd_rawmidi_transmit_empty +EXPORT_SYMBOL sound/core/snd-rawmidi 0xda420acc snd_rawmidi_drain_output +EXPORT_SYMBOL sound/core/snd-rawmidi 0xea48cbd8 snd_rawmidi_transmit_peek +EXPORT_SYMBOL sound/core/snd-rawmidi 0xf83e70f5 snd_rawmidi_kernel_write +EXPORT_SYMBOL sound/core/snd-rawmidi 0xfc8b95de snd_rawmidi_transmit_ack +EXPORT_SYMBOL sound/core/snd-seq-device 0x091def1c snd_seq_autoload_exit +EXPORT_SYMBOL sound/core/snd-seq-device 0x370a0736 snd_seq_autoload_init +EXPORT_SYMBOL sound/core/snd-seq-device 0x6339b6d0 snd_seq_device_load_drivers +EXPORT_SYMBOL sound/core/snd-seq-device 0x7f0e0819 snd_seq_device_new +EXPORT_SYMBOL sound/core/snd-timer 0x03987a40 snd_timer_open +EXPORT_SYMBOL sound/core/snd-timer 0x10e7855b snd_timer_new +EXPORT_SYMBOL sound/core/snd-timer 0x1721f1b2 snd_timer_close +EXPORT_SYMBOL sound/core/snd-timer 0x1cdc0f7c snd_timer_instance_new +EXPORT_SYMBOL sound/core/snd-timer 0x31c6685b snd_timer_global_free +EXPORT_SYMBOL sound/core/snd-timer 0x3b0db752 snd_timer_instance_free +EXPORT_SYMBOL sound/core/snd-timer 0x3c954ef1 snd_timer_global_new +EXPORT_SYMBOL sound/core/snd-timer 0x41aef599 snd_timer_resolution +EXPORT_SYMBOL sound/core/snd-timer 0x5ac14675 snd_timer_stop +EXPORT_SYMBOL sound/core/snd-timer 0x5afa5d75 snd_timer_global_register +EXPORT_SYMBOL sound/core/snd-timer 0x62a7fd5d snd_timer_interrupt +EXPORT_SYMBOL sound/core/snd-timer 0xcc0df4e6 snd_timer_start +EXPORT_SYMBOL sound/core/snd-timer 0xcd238e22 snd_timer_notify +EXPORT_SYMBOL sound/core/snd-timer 0xd2a6ef51 snd_timer_pause +EXPORT_SYMBOL sound/core/snd-timer 0xf469cfa6 snd_timer_continue +EXPORT_SYMBOL sound/drivers/mpu401/snd-mpu401-uart 0x6d629c59 snd_mpu401_uart_interrupt_tx +EXPORT_SYMBOL sound/drivers/mpu401/snd-mpu401-uart 0xc0fec227 snd_mpu401_uart_interrupt +EXPORT_SYMBOL sound/drivers/mpu401/snd-mpu401-uart 0xf13c7920 snd_mpu401_uart_new +EXPORT_SYMBOL sound/drivers/opl3/snd-opl3-lib 0x05060a19 snd_opl3_regmap +EXPORT_SYMBOL sound/drivers/opl3/snd-opl3-lib 0x115d8b6b snd_opl3_timer_new +EXPORT_SYMBOL sound/drivers/opl3/snd-opl3-lib 0x42c4810e snd_opl3_interrupt +EXPORT_SYMBOL sound/drivers/opl3/snd-opl3-lib 0x57b3102b snd_opl3_hwdep_new +EXPORT_SYMBOL sound/drivers/opl3/snd-opl3-lib 0x6410ff46 snd_opl3_new +EXPORT_SYMBOL sound/drivers/opl3/snd-opl3-lib 0x95073922 snd_opl3_create +EXPORT_SYMBOL sound/drivers/opl3/snd-opl3-lib 0xb799cf9b snd_opl3_find_patch +EXPORT_SYMBOL sound/drivers/opl3/snd-opl3-lib 0xba66ae9e snd_opl3_reset +EXPORT_SYMBOL sound/drivers/opl3/snd-opl3-lib 0xf0d51782 snd_opl3_init +EXPORT_SYMBOL sound/drivers/opl3/snd-opl3-lib 0xf25c26a3 snd_opl3_load_patch +EXPORT_SYMBOL sound/drivers/vx/snd-vx-lib 0x226138b0 snd_vx_threaded_irq_handler +EXPORT_SYMBOL sound/drivers/vx/snd-vx-lib 0x36e605b9 snd_vx_resume +EXPORT_SYMBOL sound/drivers/vx/snd-vx-lib 0x43dd568a snd_vx_check_reg_bit +EXPORT_SYMBOL sound/drivers/vx/snd-vx-lib 0x56724b62 snd_vx_suspend +EXPORT_SYMBOL sound/drivers/vx/snd-vx-lib 0x6d165308 snd_vx_setup_firmware +EXPORT_SYMBOL sound/drivers/vx/snd-vx-lib 0x7d3cafee snd_vx_create +EXPORT_SYMBOL sound/drivers/vx/snd-vx-lib 0xa8a97f61 snd_vx_free_firmware +EXPORT_SYMBOL sound/drivers/vx/snd-vx-lib 0xaadcc9d6 snd_vx_load_boot_image +EXPORT_SYMBOL sound/drivers/vx/snd-vx-lib 0xb03bc652 snd_vx_dsp_load +EXPORT_SYMBOL sound/drivers/vx/snd-vx-lib 0xd10a3d3e snd_vx_dsp_boot +EXPORT_SYMBOL sound/drivers/vx/snd-vx-lib 0xf1f04d23 snd_vx_irq_handler +EXPORT_SYMBOL sound/firewire/snd-firewire-lib 0x03c3d425 cmp_connection_release +EXPORT_SYMBOL sound/firewire/snd-firewire-lib 0x0ff24a6d amdtp_stream_init +EXPORT_SYMBOL sound/firewire/snd-firewire-lib 0x12ea2854 fcp_avc_transaction +EXPORT_SYMBOL sound/firewire/snd-firewire-lib 0x17596861 amdtp_stream_update +EXPORT_SYMBOL sound/firewire/snd-firewire-lib 0x1ff61853 cmp_connection_init +EXPORT_SYMBOL sound/firewire/snd-firewire-lib 0x20254e45 amdtp_syt_intervals +EXPORT_SYMBOL sound/firewire/snd-firewire-lib 0x27c0721d fw_iso_resources_free +EXPORT_SYMBOL sound/firewire/snd-firewire-lib 0x46679651 fw_iso_resources_update +EXPORT_SYMBOL sound/firewire/snd-firewire-lib 0x53ca18e8 amdtp_rate_table +EXPORT_SYMBOL sound/firewire/snd-firewire-lib 0x5aa52951 fw_iso_resources_allocate +EXPORT_SYMBOL sound/firewire/snd-firewire-lib 0x5e7602a9 amdtp_stream_add_pcm_hw_constraints +EXPORT_SYMBOL sound/firewire/snd-firewire-lib 0x603fd005 cmp_connection_destroy +EXPORT_SYMBOL sound/firewire/snd-firewire-lib 0x61477326 fcp_bus_reset +EXPORT_SYMBOL sound/firewire/snd-firewire-lib 0x7865bf1a avc_general_set_sig_fmt +EXPORT_SYMBOL sound/firewire/snd-firewire-lib 0x7a04e58d cmp_connection_check_used +EXPORT_SYMBOL sound/firewire/snd-firewire-lib 0x7cc2694c amdtp_stream_pcm_prepare +EXPORT_SYMBOL sound/firewire/snd-firewire-lib 0x84444d43 fw_iso_resources_init +EXPORT_SYMBOL sound/firewire/snd-firewire-lib 0x8d142f75 snd_fw_schedule_registration +EXPORT_SYMBOL sound/firewire/snd-firewire-lib 0xa2828c15 iso_packets_buffer_destroy +EXPORT_SYMBOL sound/firewire/snd-firewire-lib 0xa735c9e7 avc_general_get_sig_fmt +EXPORT_SYMBOL sound/firewire/snd-firewire-lib 0xaa9e7481 cmp_connection_reserve +EXPORT_SYMBOL sound/firewire/snd-firewire-lib 0xb4433bc7 amdtp_stream_set_parameters +EXPORT_SYMBOL sound/firewire/snd-firewire-lib 0xbcd4d16e snd_fw_transaction +EXPORT_SYMBOL sound/firewire/snd-firewire-lib 0xd033c34b amdtp_stream_pcm_abort +EXPORT_SYMBOL sound/firewire/snd-firewire-lib 0xd1b9023a cmp_connection_break +EXPORT_SYMBOL sound/firewire/snd-firewire-lib 0xd49f196b amdtp_stream_destroy +EXPORT_SYMBOL sound/firewire/snd-firewire-lib 0xdc9fa48a iso_packets_buffer_init +EXPORT_SYMBOL sound/firewire/snd-firewire-lib 0xe33d3783 cmp_connection_update +EXPORT_SYMBOL sound/firewire/snd-firewire-lib 0xe459f305 cmp_connection_establish +EXPORT_SYMBOL sound/firewire/snd-firewire-lib 0xe4f2125f amdtp_stream_get_max_payload +EXPORT_SYMBOL sound/firewire/snd-firewire-lib 0xee1abf3c avc_general_get_plug_info +EXPORT_SYMBOL sound/firewire/snd-firewire-lib 0xf811ba3f fw_iso_resources_destroy +EXPORT_SYMBOL sound/i2c/other/snd-ak4113 0x0c1d2677 snd_ak4113_resume +EXPORT_SYMBOL sound/i2c/other/snd-ak4113 0xce49e0e1 snd_ak4113_suspend +EXPORT_SYMBOL sound/i2c/other/snd-ak4114 0x02ccf728 snd_ak4114_check_rate_and_errors +EXPORT_SYMBOL sound/i2c/other/snd-ak4114 0x3fbea8f4 snd_ak4114_reinit +EXPORT_SYMBOL sound/i2c/other/snd-ak4114 0x742ba338 snd_ak4114_external_rate +EXPORT_SYMBOL sound/i2c/other/snd-ak4114 0x9e3f5d36 snd_ak4114_resume +EXPORT_SYMBOL sound/i2c/other/snd-ak4114 0xb2c093b4 snd_ak4114_reg_write +EXPORT_SYMBOL sound/i2c/other/snd-ak4114 0xca8e9a58 snd_ak4114_create +EXPORT_SYMBOL sound/i2c/other/snd-ak4114 0xcbe5c42a snd_ak4114_suspend +EXPORT_SYMBOL sound/i2c/other/snd-ak4114 0xe148a2d9 snd_ak4114_build +EXPORT_SYMBOL sound/i2c/other/snd-ak4xxx-adda 0x0020fdf6 snd_akm4xxx_reset +EXPORT_SYMBOL sound/i2c/other/snd-ak4xxx-adda 0x91eef3a2 snd_akm4xxx_build_controls +EXPORT_SYMBOL sound/i2c/other/snd-ak4xxx-adda 0xe3d7ce68 snd_akm4xxx_init +EXPORT_SYMBOL sound/i2c/other/snd-ak4xxx-adda 0xfa9580fb snd_akm4xxx_write +EXPORT_SYMBOL sound/i2c/other/snd-pt2258 0x449da55f snd_pt2258_reset +EXPORT_SYMBOL sound/i2c/other/snd-pt2258 0xe37cbae2 snd_pt2258_build_controls +EXPORT_SYMBOL sound/i2c/snd-cs8427 0x30c34c43 snd_cs8427_iec958_active +EXPORT_SYMBOL sound/i2c/snd-cs8427 0x77d4a6d0 snd_cs8427_init +EXPORT_SYMBOL sound/i2c/snd-cs8427 0xac41ca41 snd_cs8427_iec958_build +EXPORT_SYMBOL sound/i2c/snd-cs8427 0xb12886be snd_cs8427_reg_write +EXPORT_SYMBOL sound/i2c/snd-cs8427 0xe3d61978 snd_cs8427_create +EXPORT_SYMBOL sound/i2c/snd-cs8427 0xf9a0d348 snd_cs8427_iec958_pcm +EXPORT_SYMBOL sound/i2c/snd-i2c 0x0d13931d snd_i2c_device_create +EXPORT_SYMBOL sound/i2c/snd-i2c 0x18a508a1 snd_i2c_readbytes +EXPORT_SYMBOL sound/i2c/snd-i2c 0x49e52653 snd_i2c_sendbytes +EXPORT_SYMBOL sound/i2c/snd-i2c 0x4fca4e48 snd_i2c_probeaddr +EXPORT_SYMBOL sound/i2c/snd-i2c 0x67182330 snd_i2c_device_free +EXPORT_SYMBOL sound/i2c/snd-i2c 0x91bfef1c snd_i2c_bus_create +EXPORT_SYMBOL sound/pci/ac97/snd-ac97-codec 0x1ab83913 snd_ac97_write +EXPORT_SYMBOL sound/pci/ac97/snd-ac97-codec 0x1aff42e7 snd_ac97_mixer +EXPORT_SYMBOL sound/pci/ac97/snd-ac97-codec 0x4b9ea06d snd_ac97_pcm_assign +EXPORT_SYMBOL sound/pci/ac97/snd-ac97-codec 0x4f91d20b snd_ac97_tune_hardware +EXPORT_SYMBOL sound/pci/ac97/snd-ac97-codec 0x5476e747 snd_ac97_get_short_name +EXPORT_SYMBOL sound/pci/ac97/snd-ac97-codec 0x6e540054 snd_ac97_pcm_close +EXPORT_SYMBOL sound/pci/ac97/snd-ac97-codec 0x6f2f49a8 snd_ac97_read +EXPORT_SYMBOL sound/pci/ac97/snd-ac97-codec 0x82666a91 snd_ac97_pcm_double_rate_rules +EXPORT_SYMBOL sound/pci/ac97/snd-ac97-codec 0x97d9ca71 snd_ac97_update +EXPORT_SYMBOL sound/pci/ac97/snd-ac97-codec 0x988cc1dd snd_ac97_resume +EXPORT_SYMBOL sound/pci/ac97/snd-ac97-codec 0xab2167b0 snd_ac97_pcm_open +EXPORT_SYMBOL sound/pci/ac97/snd-ac97-codec 0xad8ce778 snd_ac97_bus +EXPORT_SYMBOL sound/pci/ac97/snd-ac97-codec 0xd792361c snd_ac97_suspend +EXPORT_SYMBOL sound/pci/ac97/snd-ac97-codec 0xe4782764 snd_ac97_update_power +EXPORT_SYMBOL sound/pci/ac97/snd-ac97-codec 0xe5940ee2 snd_ac97_set_rate +EXPORT_SYMBOL sound/pci/ac97/snd-ac97-codec 0xf4c0a69c snd_ac97_write_cache +EXPORT_SYMBOL sound/pci/ac97/snd-ac97-codec 0xf6b4dfc1 snd_ac97_update_bits +EXPORT_SYMBOL sound/pci/emu10k1/snd-emu10k1 0x0c0be5a2 snd_emu10k1_ptr_read +EXPORT_SYMBOL sound/pci/emu10k1/snd-emu10k1 0x1b8f8343 snd_emu10k1_synth_copy_from_user +EXPORT_SYMBOL sound/pci/emu10k1/snd-emu10k1 0x29ad7319 snd_emu10k1_voice_free +EXPORT_SYMBOL sound/pci/emu10k1/snd-emu10k1 0x3a5854e6 snd_emu10k1_synth_alloc +EXPORT_SYMBOL sound/pci/emu10k1/snd-emu10k1 0x4813069f snd_emu10k1_synth_free +EXPORT_SYMBOL sound/pci/emu10k1/snd-emu10k1 0xb4f01fbb snd_emu10k1_synth_bzero +EXPORT_SYMBOL sound/pci/emu10k1/snd-emu10k1 0xb8cc27f8 snd_emu10k1_voice_alloc +EXPORT_SYMBOL sound/pci/emu10k1/snd-emu10k1 0xdae766f3 snd_emu10k1_ptr_write +EXPORT_SYMBOL sound/pci/emu10k1/snd-emu10k1 0xf4f028bb snd_emu10k1_memblk_map +EXPORT_SYMBOL sound/pci/ice1712/snd-ice17xx-ak4xxx 0x80248fe9 snd_ice1712_akm4xxx_build_controls +EXPORT_SYMBOL sound/pci/ice1712/snd-ice17xx-ak4xxx 0xa286b3dd snd_ice1712_akm4xxx_init +EXPORT_SYMBOL sound/pci/ice1712/snd-ice17xx-ak4xxx 0xd42f177f snd_ice1712_akm4xxx_free +EXPORT_SYMBOL sound/pci/oxygen/snd-oxygen-lib 0x08f3de7d oxygen_write_spi +EXPORT_SYMBOL sound/pci/oxygen/snd-oxygen-lib 0x1e62c75d oxygen_write_uart +EXPORT_SYMBOL sound/pci/oxygen/snd-oxygen-lib 0x228b286b oxygen_pci_remove +EXPORT_SYMBOL sound/pci/oxygen/snd-oxygen-lib 0x2489e7b5 oxygen_write32_masked +EXPORT_SYMBOL sound/pci/oxygen/snd-oxygen-lib 0x28405bd0 oxygen_read16 +EXPORT_SYMBOL sound/pci/oxygen/snd-oxygen-lib 0x3340a7c7 oxygen_write8 +EXPORT_SYMBOL sound/pci/oxygen/snd-oxygen-lib 0x35ede692 oxygen_read8 +EXPORT_SYMBOL sound/pci/oxygen/snd-oxygen-lib 0x41314710 oxygen_reset_uart +EXPORT_SYMBOL sound/pci/oxygen/snd-oxygen-lib 0x49b3941b oxygen_write_ac97_masked +EXPORT_SYMBOL sound/pci/oxygen/snd-oxygen-lib 0x5cbcd03c oxygen_update_dac_routing +EXPORT_SYMBOL sound/pci/oxygen/snd-oxygen-lib 0x66a88e2e oxygen_pci_shutdown +EXPORT_SYMBOL sound/pci/oxygen/snd-oxygen-lib 0x69a3881a oxygen_write16 +EXPORT_SYMBOL sound/pci/oxygen/snd-oxygen-lib 0x6d15fe86 oxygen_write_ac97 +EXPORT_SYMBOL sound/pci/oxygen/snd-oxygen-lib 0x83ef515a oxygen_read32 +EXPORT_SYMBOL sound/pci/oxygen/snd-oxygen-lib 0xa8f2e962 oxygen_write_i2c +EXPORT_SYMBOL sound/pci/oxygen/snd-oxygen-lib 0xb8c44e86 oxygen_read_ac97 +EXPORT_SYMBOL sound/pci/oxygen/snd-oxygen-lib 0xc2ded0f0 oxygen_write8_masked +EXPORT_SYMBOL sound/pci/oxygen/snd-oxygen-lib 0xcbed4f86 oxygen_pci_pm +EXPORT_SYMBOL sound/pci/oxygen/snd-oxygen-lib 0xce91e480 oxygen_write32 +EXPORT_SYMBOL sound/pci/oxygen/snd-oxygen-lib 0xce985162 oxygen_write16_masked +EXPORT_SYMBOL sound/pci/oxygen/snd-oxygen-lib 0xd538bdcc oxygen_pci_probe +EXPORT_SYMBOL sound/pci/trident/snd-trident 0x4ba3057b snd_trident_write_voice_regs +EXPORT_SYMBOL sound/pci/trident/snd-trident 0xae5dcb12 snd_trident_start_voice +EXPORT_SYMBOL sound/pci/trident/snd-trident 0xba5544e2 snd_trident_stop_voice +EXPORT_SYMBOL sound/pci/trident/snd-trident 0xe47e9dd0 snd_trident_alloc_voice +EXPORT_SYMBOL sound/pci/trident/snd-trident 0xe8003de0 snd_trident_free_voice +EXPORT_SYMBOL sound/soc/amd/acp_audio_dma 0xea74f232 bt_uart_enable +EXPORT_SYMBOL sound/soc/codecs/snd-soc-pcm3060 0x2ad09ddd pcm3060_probe +EXPORT_SYMBOL sound/soc/codecs/snd-soc-pcm3060 0xe90b59d5 pcm3060_regmap +EXPORT_SYMBOL sound/soc/codecs/snd-soc-rt715 0xed2acb24 hda_to_sdw +EXPORT_SYMBOL sound/soc/codecs/snd-soc-tlv320aic23 0x0c1127d0 tlv320aic23_regmap +EXPORT_SYMBOL sound/soc/codecs/snd-soc-tlv320aic23 0xbd97e246 tlv320aic23_probe +EXPORT_SYMBOL sound/soc/codecs/snd-soc-tlv320aic32x4 0x5c21998c aic32x4_probe +EXPORT_SYMBOL sound/soc/codecs/snd-soc-tlv320aic32x4 0x7e4fa764 aic32x4_remove +EXPORT_SYMBOL sound/soc/codecs/snd-soc-tlv320aic32x4 0xb5b57bfa aic32x4_regmap_config +EXPORT_SYMBOL sound/soc/qcom/snd-soc-qcom-common 0x75a66b01 qcom_snd_parse_of +EXPORT_SYMBOL sound/soc/snd-soc-core 0x6bf51893 snd_soc_alloc_ac97_component +EXPORT_SYMBOL sound/soc/sof/imx/snd-sof-imx8 0x6763fe81 sof_imx8x_ops +EXPORT_SYMBOL sound/soc/sof/imx/snd-sof-imx8 0xfc2181e8 sof_imx8_ops +EXPORT_SYMBOL sound/soc/sof/imx/snd-sof-imx8m 0x52c88986 sof_imx8m_ops +EXPORT_SYMBOL sound/soc/sof/snd-sof 0x01a43b85 sof_machine_register +EXPORT_SYMBOL sound/soc/sof/snd-sof 0x0460a0a4 snd_sof_load_firmware +EXPORT_SYMBOL sound/soc/sof/snd-sof 0x0eff0984 snd_sof_suspend +EXPORT_SYMBOL sound/soc/sof/snd-sof 0x140eb250 snd_sof_dsp_update_bits64_unlocked +EXPORT_SYMBOL sound/soc/sof/snd-sof 0x16aed52e snd_sof_runtime_idle +EXPORT_SYMBOL sound/soc/sof/snd-sof 0x17983905 snd_sof_fw_parse_ext_data +EXPORT_SYMBOL sound/soc/sof/snd-sof 0x1d22a5ea sof_ipc_tx_message_no_pm +EXPORT_SYMBOL sound/soc/sof/snd-sof 0x2a9c08b6 snd_sof_init_trace +EXPORT_SYMBOL sound/soc/sof/snd-sof 0x332138d0 sof_machine_check +EXPORT_SYMBOL sound/soc/sof/snd-sof 0x36a4b9f8 snd_sof_load_firmware_memcpy +EXPORT_SYMBOL sound/soc/sof/snd-sof 0x38486966 snd_sof_ipc_stream_posn +EXPORT_SYMBOL sound/soc/sof/snd-sof 0x3b0b0802 snd_sof_ipc_msgs_rx +EXPORT_SYMBOL sound/soc/sof/snd-sof 0x45f0a547 snd_sof_run_firmware +EXPORT_SYMBOL sound/soc/sof/snd-sof 0x4c8c4256 snd_sof_ipc_reply +EXPORT_SYMBOL sound/soc/sof/snd-sof 0x4ca3d419 snd_sof_create_page_table +EXPORT_SYMBOL sound/soc/sof/snd-sof 0x4d748f50 sof_mailbox_read +EXPORT_SYMBOL sound/soc/sof/snd-sof 0x51809861 sof_io_read +EXPORT_SYMBOL sound/soc/sof/snd-sof 0x544b357a snd_sof_dsp_update_bits_forced +EXPORT_SYMBOL sound/soc/sof/snd-sof 0x5b70e7e3 snd_sof_resume +EXPORT_SYMBOL sound/soc/sof/snd-sof 0x5c10936b snd_sof_load_firmware_raw +EXPORT_SYMBOL sound/soc/sof/snd-sof 0x5c144c16 snd_sof_free_trace +EXPORT_SYMBOL sound/soc/sof/snd-sof 0x61519680 snd_sof_complete +EXPORT_SYMBOL sound/soc/sof/snd-sof 0x61e1ff68 snd_sof_ipc_free +EXPORT_SYMBOL sound/soc/sof/snd-sof 0x661ffc77 snd_sof_get_status +EXPORT_SYMBOL sound/soc/sof/snd-sof 0x66f2018d snd_sof_dsp_panic +EXPORT_SYMBOL sound/soc/sof/snd-sof 0x6d04dca7 snd_sof_dsp_update_bits_unlocked +EXPORT_SYMBOL sound/soc/sof/snd-sof 0x6ff855e6 sof_fw_ready +EXPORT_SYMBOL sound/soc/sof/snd-sof 0x76882987 snd_sof_ipc_valid +EXPORT_SYMBOL sound/soc/sof/snd-sof 0x7d681f21 snd_sof_ipc_init +EXPORT_SYMBOL sound/soc/sof/snd-sof 0x8112de72 snd_sof_dsp_update_bits64 +EXPORT_SYMBOL sound/soc/sof/snd-sof 0x8741719e snd_sof_dsp_mailbox_init +EXPORT_SYMBOL sound/soc/sof/snd-sof 0x8b429273 snd_sof_trace_notify_for_error +EXPORT_SYMBOL sound/soc/sof/snd-sof 0x9b8800f4 sof_mailbox_write +EXPORT_SYMBOL sound/soc/sof/snd-sof 0x9e44536b snd_sof_dsp_update_bits +EXPORT_SYMBOL sound/soc/sof/snd-sof 0xa3c1fdcb snd_sof_pci_update_bits +EXPORT_SYMBOL sound/soc/sof/snd-sof 0xb3a5ee62 snd_sof_prepare +EXPORT_SYMBOL sound/soc/sof/snd-sof 0xb420890f sof_block_read +EXPORT_SYMBOL sound/soc/sof/snd-sof 0xb45468ec snd_sof_dsp_only_d0i3_compatible_stream_active +EXPORT_SYMBOL sound/soc/sof/snd-sof 0xb72720a0 snd_sof_release_trace +EXPORT_SYMBOL sound/soc/sof/snd-sof 0xbfb771b2 snd_sof_device_remove +EXPORT_SYMBOL sound/soc/sof/snd-sof 0xbfeb4420 sof_machine_unregister +EXPORT_SYMBOL sound/soc/sof/snd-sof 0xc50b92e2 sof_io_read64 +EXPORT_SYMBOL sound/soc/sof/snd-sof 0xc7203bb6 sof_block_write +EXPORT_SYMBOL sound/soc/sof/snd-sof 0xcfdc5f98 sof_ipc_tx_message +EXPORT_SYMBOL sound/soc/sof/snd-sof 0xd0dc49d6 snd_sof_handle_fw_exception +EXPORT_SYMBOL sound/soc/sof/snd-sof 0xd8bd20da snd_sof_device_probe +EXPORT_SYMBOL sound/soc/sof/snd-sof 0xe105f3c9 sof_io_write64 +EXPORT_SYMBOL sound/soc/sof/snd-sof 0xe5210653 snd_sof_ipc_set_get_comp_data +EXPORT_SYMBOL sound/soc/sof/snd-sof 0xe96e8dc1 sof_io_write +EXPORT_SYMBOL sound/soc/sof/snd-sof 0xeb908573 snd_sof_runtime_resume +EXPORT_SYMBOL sound/soc/sof/snd-sof 0xec0b72ff snd_sof_parse_module_memcpy +EXPORT_SYMBOL sound/soc/sof/snd-sof 0xf53a1fd6 snd_sof_pcm_period_elapsed +EXPORT_SYMBOL sound/soc/sof/snd-sof 0xf7df5665 snd_sof_fw_unload +EXPORT_SYMBOL sound/soc/sof/snd-sof 0xf9a54f70 snd_sof_load_topology +EXPORT_SYMBOL sound/soc/sof/snd-sof 0xfe407aa2 snd_sof_runtime_suspend +EXPORT_SYMBOL sound/soundcore 0x0d7916ad register_sound_special +EXPORT_SYMBOL sound/soundcore 0x327e019d register_sound_special_device +EXPORT_SYMBOL sound/soundcore 0x64cf82b9 register_sound_dsp +EXPORT_SYMBOL sound/soundcore 0x7afc9d8a unregister_sound_mixer +EXPORT_SYMBOL sound/soundcore 0x895159e4 register_sound_mixer +EXPORT_SYMBOL sound/soundcore 0x99c95fa5 unregister_sound_special +EXPORT_SYMBOL sound/soundcore 0xcc3c10f9 sound_class +EXPORT_SYMBOL sound/soundcore 0xcd083b10 unregister_sound_dsp +EXPORT_SYMBOL sound/synth/emux/snd-emux-synth 0x03559191 snd_emux_lock_voice +EXPORT_SYMBOL sound/synth/emux/snd-emux-synth 0x655cb202 snd_sf_linear_to_log +EXPORT_SYMBOL sound/synth/emux/snd-emux-synth 0x6acb7cd6 snd_emux_register +EXPORT_SYMBOL sound/synth/emux/snd-emux-synth 0x6b79b05d snd_emux_free +EXPORT_SYMBOL sound/synth/emux/snd-emux-synth 0x99a6e77d snd_emux_unlock_voice +EXPORT_SYMBOL sound/synth/emux/snd-emux-synth 0xac3d9a8a snd_emux_new +EXPORT_SYMBOL sound/synth/emux/snd-emux-synth 0xcb779039 snd_emux_terminate_all +EXPORT_SYMBOL sound/synth/snd-util-mem 0x293ac667 snd_util_mem_free +EXPORT_SYMBOL sound/synth/snd-util-mem 0x34ac95ae snd_util_memhdr_new +EXPORT_SYMBOL sound/synth/snd-util-mem 0x48f920c4 __snd_util_mem_alloc +EXPORT_SYMBOL sound/synth/snd-util-mem 0x7d95566f snd_util_mem_avail +EXPORT_SYMBOL sound/synth/snd-util-mem 0x85659341 snd_util_mem_alloc +EXPORT_SYMBOL sound/synth/snd-util-mem 0x97bb24f2 __snd_util_memblk_new +EXPORT_SYMBOL sound/synth/snd-util-mem 0x9db98086 __snd_util_mem_free +EXPORT_SYMBOL sound/synth/snd-util-mem 0xe2935f8c snd_util_memhdr_free +EXPORT_SYMBOL sound/usb/snd-usbmidi-lib 0x0ac9a092 __snd_usbmidi_create +EXPORT_SYMBOL sound/usb/snd-usbmidi-lib 0x16756dc0 snd_usbmidi_input_start +EXPORT_SYMBOL sound/usb/snd-usbmidi-lib 0x63343b1d snd_usbmidi_input_stop +EXPORT_SYMBOL sound/usb/snd-usbmidi-lib 0xb2af19e1 snd_usbmidi_resume +EXPORT_SYMBOL sound/usb/snd-usbmidi-lib 0xbed43a41 snd_usbmidi_suspend +EXPORT_SYMBOL sound/usb/snd-usbmidi-lib 0xd9d2bb03 snd_usbmidi_disconnect +EXPORT_SYMBOL vmlinux 0x004755ae mdio_driver_register +EXPORT_SYMBOL vmlinux 0x0049d7fb unregister_nls +EXPORT_SYMBOL vmlinux 0x005c8196 jbd2_journal_init_inode +EXPORT_SYMBOL vmlinux 0x00746f72 fbcon_set_rotate +EXPORT_SYMBOL vmlinux 0x00748133 from_kuid_munged +EXPORT_SYMBOL vmlinux 0x00860d34 __ip_dev_find +EXPORT_SYMBOL vmlinux 0x0097576f rtc_add_groups +EXPORT_SYMBOL vmlinux 0x009b19aa tcf_block_netif_keep_dst +EXPORT_SYMBOL vmlinux 0x00a1d0a4 inet_select_addr +EXPORT_SYMBOL vmlinux 0x00b4e615 posix_acl_equiv_mode +EXPORT_SYMBOL vmlinux 0x00bc10f4 devm_pci_alloc_host_bridge +EXPORT_SYMBOL vmlinux 0x00d7e722 vme_lm_count +EXPORT_SYMBOL vmlinux 0x00dd62f3 sock_efree +EXPORT_SYMBOL vmlinux 0x00efb3e7 user_path_at_empty +EXPORT_SYMBOL vmlinux 0x01000e51 schedule +EXPORT_SYMBOL vmlinux 0x01059f79 phy_start_cable_test_tdr +EXPORT_SYMBOL vmlinux 0x0105dd84 kernel_sendmsg_locked +EXPORT_SYMBOL vmlinux 0x01066f59 d_splice_alias +EXPORT_SYMBOL vmlinux 0x010b4f64 inet_proto_csum_replace_by_diff +EXPORT_SYMBOL vmlinux 0x01238305 padata_alloc_possible +EXPORT_SYMBOL vmlinux 0x0129c4f8 par_io_data_set +EXPORT_SYMBOL vmlinux 0x012de2ea xudma_rchanrt_read +EXPORT_SYMBOL vmlinux 0x01362249 jbd2_journal_blocks_per_page +EXPORT_SYMBOL vmlinux 0x013f26ae dma_fence_get_stub +EXPORT_SYMBOL vmlinux 0x0147812c kblockd_mod_delayed_work_on +EXPORT_SYMBOL vmlinux 0x01505d85 imx_scu_call_rpc +EXPORT_SYMBOL vmlinux 0x01553371 vm_brk_flags +EXPORT_SYMBOL vmlinux 0x015af7f4 system_state +EXPORT_SYMBOL vmlinux 0x0162c65c mr_mfc_seq_next +EXPORT_SYMBOL vmlinux 0x016da741 devm_gen_pool_create +EXPORT_SYMBOL vmlinux 0x01757935 rdmacg_register_device +EXPORT_SYMBOL vmlinux 0x01790e94 csum_partial_copy +EXPORT_SYMBOL vmlinux 0x017de3d5 nr_cpu_ids +EXPORT_SYMBOL vmlinux 0x018574a1 mb_cache_entry_delete +EXPORT_SYMBOL vmlinux 0x018671d7 get_tree_single_reconf +EXPORT_SYMBOL vmlinux 0x0188cd88 vme_alloc_consistent +EXPORT_SYMBOL vmlinux 0x01969973 tty_vhangup +EXPORT_SYMBOL vmlinux 0x01a31da5 device_add_disk +EXPORT_SYMBOL vmlinux 0x01a9d2a7 tcf_exts_change +EXPORT_SYMBOL vmlinux 0x01af2b4d vfs_mkdir +EXPORT_SYMBOL vmlinux 0x01b6865c xa_get_mark +EXPORT_SYMBOL vmlinux 0x01bf55fc paddr_vmcoreinfo_note +EXPORT_SYMBOL vmlinux 0x01cd4a93 sock_create_lite +EXPORT_SYMBOL vmlinux 0x01d08c30 block_is_partially_uptodate +EXPORT_SYMBOL vmlinux 0x01d3c734 bdgrab +EXPORT_SYMBOL vmlinux 0x01df5245 security_sb_clone_mnt_opts +EXPORT_SYMBOL vmlinux 0x01e91763 phy_aneg_done +EXPORT_SYMBOL vmlinux 0x01f670a1 rproc_elf_sanity_check +EXPORT_SYMBOL vmlinux 0x0207e9f4 tty_unthrottle +EXPORT_SYMBOL vmlinux 0x0209c51d ip_getsockopt +EXPORT_SYMBOL vmlinux 0x020dbf27 bitmap_alloc +EXPORT_SYMBOL vmlinux 0x02124474 ip_send_check +EXPORT_SYMBOL vmlinux 0x02293ac3 dma_fence_chain_ops +EXPORT_SYMBOL vmlinux 0x02306320 ipv6_sock_mc_join +EXPORT_SYMBOL vmlinux 0x023ea9e9 d_mark_dontcache +EXPORT_SYMBOL vmlinux 0x023ead06 udp6_seq_ops +EXPORT_SYMBOL vmlinux 0x0244723d skb_trim +EXPORT_SYMBOL vmlinux 0x025483b1 set_current_groups +EXPORT_SYMBOL vmlinux 0x026adaf2 pci_release_region +EXPORT_SYMBOL vmlinux 0x026e6948 write_inode_now +EXPORT_SYMBOL vmlinux 0x0274dc2b netif_get_num_default_rss_queues +EXPORT_SYMBOL vmlinux 0x028276e1 phy_read_mmd +EXPORT_SYMBOL vmlinux 0x0296695f refcount_warn_saturate +EXPORT_SYMBOL vmlinux 0x0299b3bd sk_stream_error +EXPORT_SYMBOL vmlinux 0x02a18c74 nf_conntrack_destroy +EXPORT_SYMBOL vmlinux 0x02b8ab42 sg_copy_to_buffer +EXPORT_SYMBOL vmlinux 0x02c065f8 ucc_set_qe_mux_mii_mng +EXPORT_SYMBOL vmlinux 0x02d71492 scsi_mode_sense +EXPORT_SYMBOL vmlinux 0x02e0efdb i2c_register_driver +EXPORT_SYMBOL vmlinux 0x02ea111e scsi_driverbyte_string +EXPORT_SYMBOL vmlinux 0x02f90276 new_inode +EXPORT_SYMBOL vmlinux 0x031966cb kiocb_set_cancel_fn +EXPORT_SYMBOL vmlinux 0x033265f3 mipi_dsi_driver_register_full +EXPORT_SYMBOL vmlinux 0x0332e3ac tcp_read_sock +EXPORT_SYMBOL vmlinux 0x0334795d icst307_s2div +EXPORT_SYMBOL vmlinux 0x0334da4e scsi_command_size_tbl +EXPORT_SYMBOL vmlinux 0x03382e5b mdio_device_remove +EXPORT_SYMBOL vmlinux 0x0346f248 flow_rule_match_icmp +EXPORT_SYMBOL vmlinux 0x03659d29 fixed_size_llseek +EXPORT_SYMBOL vmlinux 0x0366307a console_suspend_enabled +EXPORT_SYMBOL vmlinux 0x037a0cba kfree +EXPORT_SYMBOL vmlinux 0x03815f35 ledtrig_disk_activity +EXPORT_SYMBOL vmlinux 0x038b855e get_tree_nodev +EXPORT_SYMBOL vmlinux 0x0392c67c wireless_send_event +EXPORT_SYMBOL vmlinux 0x0397edd5 fb_edid_to_monspecs +EXPORT_SYMBOL vmlinux 0x039e0313 phy_detach +EXPORT_SYMBOL vmlinux 0x03abd730 mii_check_gmii_support +EXPORT_SYMBOL vmlinux 0x03c94e81 dev_open +EXPORT_SYMBOL vmlinux 0x03d2c130 init_task +EXPORT_SYMBOL vmlinux 0x03dc1ce5 thaw_super +EXPORT_SYMBOL vmlinux 0x03eebafe gnet_stats_copy_queue +EXPORT_SYMBOL vmlinux 0x03f1a35f dev_mc_init +EXPORT_SYMBOL vmlinux 0x03fd2571 vm_unmap_ram +EXPORT_SYMBOL vmlinux 0x03feea40 cpumask_next +EXPORT_SYMBOL vmlinux 0x03ffec9b inet_del_protocol +EXPORT_SYMBOL vmlinux 0x040df056 elevator_alloc +EXPORT_SYMBOL vmlinux 0x040ef9ff scsi_target_quiesce +EXPORT_SYMBOL vmlinux 0x04162736 pm_vt_switch_unregister +EXPORT_SYMBOL vmlinux 0x0419556f dev_addr_add +EXPORT_SYMBOL vmlinux 0x0419850c eth_platform_get_mac_address +EXPORT_SYMBOL vmlinux 0x0421aad0 netdev_notice +EXPORT_SYMBOL vmlinux 0x0423f546 netdev_adjacent_change_commit +EXPORT_SYMBOL vmlinux 0x04482cdb __refrigerator +EXPORT_SYMBOL vmlinux 0x04559758 inode_get_bytes +EXPORT_SYMBOL vmlinux 0x04673adb qman_ip_rev +EXPORT_SYMBOL vmlinux 0x046f7187 backlight_device_get_by_type +EXPORT_SYMBOL vmlinux 0x0484c6c4 acpi_enter_sleep_state_prep +EXPORT_SYMBOL vmlinux 0x04863e28 hdmi_audio_infoframe_pack_only +EXPORT_SYMBOL vmlinux 0x048e374a sock_i_uid +EXPORT_SYMBOL vmlinux 0x048f33a2 dm_table_get_md +EXPORT_SYMBOL vmlinux 0x049664cb sk_page_frag_refill +EXPORT_SYMBOL vmlinux 0x04968b48 is_nvdimm_bus_locked +EXPORT_SYMBOL vmlinux 0x049b8452 page_mapped +EXPORT_SYMBOL vmlinux 0x04b4718a dev_loopback_xmit +EXPORT_SYMBOL vmlinux 0x04e9a24b scsi_verify_blk_ioctl +EXPORT_SYMBOL vmlinux 0x04ea56f9 _kstrtol +EXPORT_SYMBOL vmlinux 0x04ea5d10 ksize +EXPORT_SYMBOL vmlinux 0x04f13173 seq_release +EXPORT_SYMBOL vmlinux 0x04f7d149 mii_ethtool_gset +EXPORT_SYMBOL vmlinux 0x0501e0e1 __skb_gro_checksum_complete +EXPORT_SYMBOL vmlinux 0x0507c35a security_inode_listsecurity +EXPORT_SYMBOL vmlinux 0x050877b9 dmi_first_match +EXPORT_SYMBOL vmlinux 0x0514f003 netdev_lower_get_next +EXPORT_SYMBOL vmlinux 0x051a88a0 inet6_offloads +EXPORT_SYMBOL vmlinux 0x051d58e8 dma_fence_wait_any_timeout +EXPORT_SYMBOL vmlinux 0x05240ee7 percpu_counter_batch +EXPORT_SYMBOL vmlinux 0x054496b4 schedule_timeout_interruptible +EXPORT_SYMBOL vmlinux 0x0548e26d pci_request_selected_regions +EXPORT_SYMBOL vmlinux 0x054c16a7 iov_iter_bvec +EXPORT_SYMBOL vmlinux 0x055528f0 mntput +EXPORT_SYMBOL vmlinux 0x055e77e8 jiffies_64 +EXPORT_SYMBOL vmlinux 0x0568479c generic_delete_inode +EXPORT_SYMBOL vmlinux 0x05707bd9 dcache_dir_close +EXPORT_SYMBOL vmlinux 0x05740ccf inode_add_bytes +EXPORT_SYMBOL vmlinux 0x0585d979 unregister_cdrom +EXPORT_SYMBOL vmlinux 0x05954b43 skb_checksum_trimmed +EXPORT_SYMBOL vmlinux 0x05a8ef8d tcp_timewait_state_process +EXPORT_SYMBOL vmlinux 0x05bd4224 seg6_push_hmac +EXPORT_SYMBOL vmlinux 0x05e07839 setup_arg_pages +EXPORT_SYMBOL vmlinux 0x05f2d0a8 iw_handler_set_thrspy +EXPORT_SYMBOL vmlinux 0x060ba97c gen_pool_free_owner +EXPORT_SYMBOL vmlinux 0x061651be strcat +EXPORT_SYMBOL vmlinux 0x061aa76e tty_register_device +EXPORT_SYMBOL vmlinux 0x06248f2b blk_mq_queue_stopped +EXPORT_SYMBOL vmlinux 0x0634100a bitmap_parselist_user +EXPORT_SYMBOL vmlinux 0x063560c0 pci_bus_read_config_byte +EXPORT_SYMBOL vmlinux 0x065246b8 frame_vector_create +EXPORT_SYMBOL vmlinux 0x06662e42 pm8606_osc_enable +EXPORT_SYMBOL vmlinux 0x0689556d __post_watch_notification +EXPORT_SYMBOL vmlinux 0x06bd88b5 ucs2_strnlen +EXPORT_SYMBOL vmlinux 0x06c8f2de slhc_compress +EXPORT_SYMBOL vmlinux 0x06dc3fec blk_mq_delay_run_hw_queues +EXPORT_SYMBOL vmlinux 0x06f66827 of_find_property +EXPORT_SYMBOL vmlinux 0x06f9e7a8 tc_setup_cb_reoffload +EXPORT_SYMBOL vmlinux 0x070ff0cd icmp_ndo_send +EXPORT_SYMBOL vmlinux 0x072f901c vme_master_rmw +EXPORT_SYMBOL vmlinux 0x07410e9b nf_log_unset +EXPORT_SYMBOL vmlinux 0x0745a981 xa_erase +EXPORT_SYMBOL vmlinux 0x07499548 cdev_device_add +EXPORT_SYMBOL vmlinux 0x074ae652 __napi_schedule +EXPORT_SYMBOL vmlinux 0x074db0f2 sock_common_getsockopt +EXPORT_SYMBOL vmlinux 0x075b58cb sock_no_getsockopt +EXPORT_SYMBOL vmlinux 0x078087c3 __generic_file_write_iter +EXPORT_SYMBOL vmlinux 0x0781ec97 logic_insl +EXPORT_SYMBOL vmlinux 0x078de761 clear_inode +EXPORT_SYMBOL vmlinux 0x0794b657 put_cmsg +EXPORT_SYMBOL vmlinux 0x07a56f0c of_node_name_eq +EXPORT_SYMBOL vmlinux 0x07a890c8 fb_alloc_cmap +EXPORT_SYMBOL vmlinux 0x07cc4a5d printk_timed_ratelimit +EXPORT_SYMBOL vmlinux 0x07ceeac9 panic_notifier_list +EXPORT_SYMBOL vmlinux 0x07db66cc udp_lib_unhash +EXPORT_SYMBOL vmlinux 0x07eb2985 param_ops_long +EXPORT_SYMBOL vmlinux 0x07eb5779 fqdir_exit +EXPORT_SYMBOL vmlinux 0x07f57478 pci_unmap_iospace +EXPORT_SYMBOL vmlinux 0x07f6f698 sock_kmalloc +EXPORT_SYMBOL vmlinux 0x0805f2c8 ecryptfs_get_auth_tok_key +EXPORT_SYMBOL vmlinux 0x08162c74 free_bucket_spinlocks +EXPORT_SYMBOL vmlinux 0x0816b686 md_cluster_ops +EXPORT_SYMBOL vmlinux 0x08249512 iwe_stream_add_point +EXPORT_SYMBOL vmlinux 0x082c3213 pci_root_buses +EXPORT_SYMBOL vmlinux 0x08356f32 fman_sp_set_buf_pools_in_asc_order_of_buf_sizes +EXPORT_SYMBOL vmlinux 0x083eb21c rfkill_unregister +EXPORT_SYMBOL vmlinux 0x0869bcbe filemap_fdatawrite_range +EXPORT_SYMBOL vmlinux 0x086dca61 neigh_seq_start +EXPORT_SYMBOL vmlinux 0x087b48a6 vme_bus_type +EXPORT_SYMBOL vmlinux 0x0882a449 security_xfrm_policy_alloc +EXPORT_SYMBOL vmlinux 0x08914cf2 i2c_smbus_write_byte_data +EXPORT_SYMBOL vmlinux 0x0898b7e1 init_net +EXPORT_SYMBOL vmlinux 0x08ae0d62 cdrom_dummy_generic_packet +EXPORT_SYMBOL vmlinux 0x08bf0b02 i2c_smbus_write_i2c_block_data +EXPORT_SYMBOL vmlinux 0x08c3ed37 vme_master_request +EXPORT_SYMBOL vmlinux 0x08c698cc pci_alloc_host_bridge +EXPORT_SYMBOL vmlinux 0x08d539c3 sk_capable +EXPORT_SYMBOL vmlinux 0x08e39398 cmd_db_read_addr +EXPORT_SYMBOL vmlinux 0x08ead7a7 nd_region_to_nstype +EXPORT_SYMBOL vmlinux 0x08eb60de keyring_search +EXPORT_SYMBOL vmlinux 0x08f643ce inet_csk_reset_keepalive_timer +EXPORT_SYMBOL vmlinux 0x0910c0f7 inet_csk_clear_xmit_timers +EXPORT_SYMBOL vmlinux 0x091e3c69 PDE_DATA +EXPORT_SYMBOL vmlinux 0x0923e182 devfreq_update_interval +EXPORT_SYMBOL vmlinux 0x092e26bf acpi_remove_address_space_handler +EXPORT_SYMBOL vmlinux 0x093712e5 acpi_purge_cached_objects +EXPORT_SYMBOL vmlinux 0x09458a50 unregister_netdev +EXPORT_SYMBOL vmlinux 0x09682235 down_timeout +EXPORT_SYMBOL vmlinux 0x09769037 dmt_modes +EXPORT_SYMBOL vmlinux 0x097af021 neigh_proc_dointvec_jiffies +EXPORT_SYMBOL vmlinux 0x097caf9b of_get_address +EXPORT_SYMBOL vmlinux 0x098637a4 mipi_dsi_dcs_set_display_on +EXPORT_SYMBOL vmlinux 0x098a9cfd jbd2_journal_extend +EXPORT_SYMBOL vmlinux 0x098b71c6 fb_dealloc_cmap +EXPORT_SYMBOL vmlinux 0x0990e8ec mmc_free_host +EXPORT_SYMBOL vmlinux 0x0999fce9 wake_up_process +EXPORT_SYMBOL vmlinux 0x09c1a398 xsk_clear_rx_need_wakeup +EXPORT_SYMBOL vmlinux 0x09c8eb55 font_vga_8x16 +EXPORT_SYMBOL vmlinux 0x09d44df9 in_lock_functions +EXPORT_SYMBOL vmlinux 0x09da0ba4 xa_set_mark +EXPORT_SYMBOL vmlinux 0x09db7d2b add_random_ready_callback +EXPORT_SYMBOL vmlinux 0x09f9b261 xudma_rchan_put +EXPORT_SYMBOL vmlinux 0x09fe7e88 cpufreq_generic_suspend +EXPORT_SYMBOL vmlinux 0x0a0ebc08 __xa_cmpxchg +EXPORT_SYMBOL vmlinux 0x0a1dbc76 tcp_rx_skb_cache_key +EXPORT_SYMBOL vmlinux 0x0a215d64 ip6_err_gen_icmpv6_unreach +EXPORT_SYMBOL vmlinux 0x0a292872 reservation_seqcount_class +EXPORT_SYMBOL vmlinux 0x0a2a7017 gnet_stats_finish_copy +EXPORT_SYMBOL vmlinux 0x0a38467f __dev_kfree_skb_irq +EXPORT_SYMBOL vmlinux 0x0a3a92c0 tcp_fastopen_defer_connect +EXPORT_SYMBOL vmlinux 0x0a43190d __check_sticky +EXPORT_SYMBOL vmlinux 0x0a51bf2b param_set_byte +EXPORT_SYMBOL vmlinux 0x0a640901 inet_frag_destroy +EXPORT_SYMBOL vmlinux 0x0a721302 padata_stop +EXPORT_SYMBOL vmlinux 0x0a770832 register_memory_notifier +EXPORT_SYMBOL vmlinux 0x0a86fe76 inet_frags_fini +EXPORT_SYMBOL vmlinux 0x0aa309cf synchronize_hardirq +EXPORT_SYMBOL vmlinux 0x0aaccc92 pci_remap_iospace +EXPORT_SYMBOL vmlinux 0x0ab53856 fs_context_for_submount +EXPORT_SYMBOL vmlinux 0x0abbf89b tcp_v4_md5_hash_skb +EXPORT_SYMBOL vmlinux 0x0abd0cee get_user_pages +EXPORT_SYMBOL vmlinux 0x0ac7fe0a input_set_max_poll_interval +EXPORT_SYMBOL vmlinux 0x0acf7679 dma_issue_pending_all +EXPORT_SYMBOL vmlinux 0x0ad00f88 f_setown +EXPORT_SYMBOL vmlinux 0x0ae84d59 tty_throttle +EXPORT_SYMBOL vmlinux 0x0af20eae down_read_interruptible +EXPORT_SYMBOL vmlinux 0x0afb7a2b iov_iter_init +EXPORT_SYMBOL vmlinux 0x0b01b6d9 pci_find_next_bus +EXPORT_SYMBOL vmlinux 0x0b122bae phy_mii_ioctl +EXPORT_SYMBOL vmlinux 0x0b165432 phy_ethtool_nway_reset +EXPORT_SYMBOL vmlinux 0x0b1beb31 vmalloc_32_user +EXPORT_SYMBOL vmlinux 0x0b1e7758 inet6_unregister_icmp_sender +EXPORT_SYMBOL vmlinux 0x0b26b8c8 acpi_run_osc +EXPORT_SYMBOL vmlinux 0x0b290ada dma_fence_chain_walk +EXPORT_SYMBOL vmlinux 0x0b2cb334 psched_ratecfg_precompute +EXPORT_SYMBOL vmlinux 0x0b30f0be set_security_override_from_ctx +EXPORT_SYMBOL vmlinux 0x0b6a50b5 phy_ethtool_set_wol +EXPORT_SYMBOL vmlinux 0x0b6d4bbc __skb_checksum_complete +EXPORT_SYMBOL vmlinux 0x0b742fd7 simple_strtol +EXPORT_SYMBOL vmlinux 0x0b8cef3c skb_try_coalesce +EXPORT_SYMBOL vmlinux 0x0b987557 set_page_dirty_lock +EXPORT_SYMBOL vmlinux 0x0b999976 twl6040_get_sysclk +EXPORT_SYMBOL vmlinux 0x0b9df762 scsi_scan_host +EXPORT_SYMBOL vmlinux 0x0ba051dd vfs_iocb_iter_read +EXPORT_SYMBOL vmlinux 0x0bb3f3e0 scsi_dma_unmap +EXPORT_SYMBOL vmlinux 0x0bc477a2 irq_set_irq_type +EXPORT_SYMBOL vmlinux 0x0bdd5998 tty_port_put +EXPORT_SYMBOL vmlinux 0x0bee6167 clk_get +EXPORT_SYMBOL vmlinux 0x0c0f79af ZSTD_getDictID_fromFrame +EXPORT_SYMBOL vmlinux 0x0c2045a1 __hw_addr_ref_unsync_dev +EXPORT_SYMBOL vmlinux 0x0c25ec48 secure_tcpv6_seq +EXPORT_SYMBOL vmlinux 0x0c34e704 tcp_enter_cwr +EXPORT_SYMBOL vmlinux 0x0c357d83 blk_queue_flag_set +EXPORT_SYMBOL vmlinux 0x0c48298a get_tree_keyed +EXPORT_SYMBOL vmlinux 0x0c5b15c3 mmc_gpiod_request_cd +EXPORT_SYMBOL vmlinux 0x0c6bdc3f vme_master_read +EXPORT_SYMBOL vmlinux 0x0c7bc086 uart_update_timeout +EXPORT_SYMBOL vmlinux 0x0c829f1d vlan_vids_del_by_dev +EXPORT_SYMBOL vmlinux 0x0c86632a page_pool_put_page +EXPORT_SYMBOL vmlinux 0x0cb15fc8 configfs_register_subsystem +EXPORT_SYMBOL vmlinux 0x0cb264a1 security_lock_kernel_down +EXPORT_SYMBOL vmlinux 0x0cba729e sock_no_sendpage_locked +EXPORT_SYMBOL vmlinux 0x0cc4b4b6 crc_ccitt_false +EXPORT_SYMBOL vmlinux 0x0ccdbb4b ip_setsockopt +EXPORT_SYMBOL vmlinux 0x0cd385b2 get_super_thawed +EXPORT_SYMBOL vmlinux 0x0cd3c931 generic_perform_write +EXPORT_SYMBOL vmlinux 0x0cd5835b ipv6_flowlabel_exclusive +EXPORT_SYMBOL vmlinux 0x0ce19729 mb_cache_entry_touch +EXPORT_SYMBOL vmlinux 0x0ce981a9 register_quota_format +EXPORT_SYMBOL vmlinux 0x0cef0d2f tcp_v4_mtu_reduced +EXPORT_SYMBOL vmlinux 0x0d078c16 remove_watch_from_object +EXPORT_SYMBOL vmlinux 0x0d07f543 get_anon_bdev +EXPORT_SYMBOL vmlinux 0x0d2ca20f ucc_fast_get_qe_cr_subblock +EXPORT_SYMBOL vmlinux 0x0d3f5c1a fman_get_max_frm +EXPORT_SYMBOL vmlinux 0x0d4ac756 tcp_initialize_rcv_mss +EXPORT_SYMBOL vmlinux 0x0d4b37f7 tty_unregister_driver +EXPORT_SYMBOL vmlinux 0x0d542439 __ipv6_addr_type +EXPORT_SYMBOL vmlinux 0x0d5a0c03 nvm_unregister +EXPORT_SYMBOL vmlinux 0x0d61eeee __bitmap_subset +EXPORT_SYMBOL vmlinux 0x0d6e44e8 sock_wmalloc +EXPORT_SYMBOL vmlinux 0x0d729899 flow_rule_match_enc_keyid +EXPORT_SYMBOL vmlinux 0x0d7311a2 devm_memremap +EXPORT_SYMBOL vmlinux 0x0d7a3e04 acpi_pm_device_sleep_state +EXPORT_SYMBOL vmlinux 0x0d7a5c30 dcb_ieee_setapp +EXPORT_SYMBOL vmlinux 0x0d7f4fe9 key_unlink +EXPORT_SYMBOL vmlinux 0x0da9e13a dev_uc_sync +EXPORT_SYMBOL vmlinux 0x0dca5737 input_set_poll_interval +EXPORT_SYMBOL vmlinux 0x0dcca2cb scsi_bios_ptable +EXPORT_SYMBOL vmlinux 0x0dd7f010 invalidate_mapping_pages +EXPORT_SYMBOL vmlinux 0x0de13591 xfrm_policy_delete +EXPORT_SYMBOL vmlinux 0x0e125233 devm_pci_remap_cfg_resource +EXPORT_SYMBOL vmlinux 0x0e17678a siphash_4u64 +EXPORT_SYMBOL vmlinux 0x0e27a2dd ZSTD_initCCtx +EXPORT_SYMBOL vmlinux 0x0e37ec06 pci_disable_device +EXPORT_SYMBOL vmlinux 0x0e3949f3 __cleancache_put_page +EXPORT_SYMBOL vmlinux 0x0e74ad2d utf8ncursor +EXPORT_SYMBOL vmlinux 0x0e846d60 proc_create_seq_private +EXPORT_SYMBOL vmlinux 0x0ea39be5 pci_scan_root_bus +EXPORT_SYMBOL vmlinux 0x0ec5babe vme_dma_free +EXPORT_SYMBOL vmlinux 0x0ee52715 copy_page_from_iter +EXPORT_SYMBOL vmlinux 0x0ee7fda5 flow_rule_match_ip +EXPORT_SYMBOL vmlinux 0x0eeedd71 dcbnl_cee_notify +EXPORT_SYMBOL vmlinux 0x0ef4a591 bioset_exit +EXPORT_SYMBOL vmlinux 0x0f008a6e fbcon_rotate_ud +EXPORT_SYMBOL vmlinux 0x0f09cc34 schedule_timeout_killable +EXPORT_SYMBOL vmlinux 0x0f0f201a dev_addr_init +EXPORT_SYMBOL vmlinux 0x0f2bfdcb blk_integrity_unregister +EXPORT_SYMBOL vmlinux 0x0f304f38 __nd_driver_register +EXPORT_SYMBOL vmlinux 0x0f37ca89 lockref_put_not_zero +EXPORT_SYMBOL vmlinux 0x0f58ab89 xfrm_parse_spi +EXPORT_SYMBOL vmlinux 0x0f66fec9 genphy_c37_config_aneg +EXPORT_SYMBOL vmlinux 0x0f763a18 dst_cow_metrics_generic +EXPORT_SYMBOL vmlinux 0x0f86f560 kthread_delayed_work_timer_fn +EXPORT_SYMBOL vmlinux 0x0f877520 vme_dma_list_free +EXPORT_SYMBOL vmlinux 0x0fa2110f nvm_end_io +EXPORT_SYMBOL vmlinux 0x0fab1ab0 hdmi_spd_infoframe_pack +EXPORT_SYMBOL vmlinux 0x0faef0ed __tasklet_schedule +EXPORT_SYMBOL vmlinux 0x0fb2f8a4 mktime64 +EXPORT_SYMBOL vmlinux 0x0fbb5505 fscrypt_setup_filename +EXPORT_SYMBOL vmlinux 0x0fbbd426 netdev_class_remove_file_ns +EXPORT_SYMBOL vmlinux 0x0fd902db mb_cache_entry_create +EXPORT_SYMBOL vmlinux 0x0fff5afc time64_to_tm +EXPORT_SYMBOL vmlinux 0x100fbe69 vm_zone_stat +EXPORT_SYMBOL vmlinux 0x1025009a cpm_muram_alloc_fixed +EXPORT_SYMBOL vmlinux 0x102936ec qe_clock_source +EXPORT_SYMBOL vmlinux 0x10345964 free_task +EXPORT_SYMBOL vmlinux 0x1035c7c2 __release_region +EXPORT_SYMBOL vmlinux 0x10556110 fwnode_irq_get +EXPORT_SYMBOL vmlinux 0x1057a279 bsearch +EXPORT_SYMBOL vmlinux 0x1068004b gf128mul_bbe +EXPORT_SYMBOL vmlinux 0x10691ae7 netif_rx_ni +EXPORT_SYMBOL vmlinux 0x1077ebb1 security_inode_copy_up +EXPORT_SYMBOL vmlinux 0x107e5878 zlib_inflateEnd +EXPORT_SYMBOL vmlinux 0x107f042f tcp_time_wait +EXPORT_SYMBOL vmlinux 0x108a5e34 fc_mount +EXPORT_SYMBOL vmlinux 0x10909dbf sk_stream_wait_memory +EXPORT_SYMBOL vmlinux 0x109efc6c nd_pfn_probe +EXPORT_SYMBOL vmlinux 0x10a02478 phy_free_interrupt +EXPORT_SYMBOL vmlinux 0x10a8fbc8 rproc_boot +EXPORT_SYMBOL vmlinux 0x10c3f57e __gnet_stats_copy_queue +EXPORT_SYMBOL vmlinux 0x10d9f885 scsi_sense_desc_find +EXPORT_SYMBOL vmlinux 0x10dcf71d nf_log_set +EXPORT_SYMBOL vmlinux 0x10ead663 seq_open_private +EXPORT_SYMBOL vmlinux 0x10fa691f genphy_update_link +EXPORT_SYMBOL vmlinux 0x11089ac7 _ctype +EXPORT_SYMBOL vmlinux 0x1112ce94 dm_put_table_device +EXPORT_SYMBOL vmlinux 0x114b41ad pci_remove_bus +EXPORT_SYMBOL vmlinux 0x115110f2 unlock_two_nondirectories +EXPORT_SYMBOL vmlinux 0x115967ce fman_get_pause_cfg +EXPORT_SYMBOL vmlinux 0x1163f0a7 blk_max_low_pfn +EXPORT_SYMBOL vmlinux 0x116636c2 __skb_pad +EXPORT_SYMBOL vmlinux 0x117093be qdisc_class_hash_init +EXPORT_SYMBOL vmlinux 0x11afc4f7 flow_rule_match_enc_ports +EXPORT_SYMBOL vmlinux 0x11b87c41 clk_add_alias +EXPORT_SYMBOL vmlinux 0x11c7f363 mod_zone_page_state +EXPORT_SYMBOL vmlinux 0x11d88056 devm_devfreq_remove_device +EXPORT_SYMBOL vmlinux 0x11de3ac4 mmc_release_host +EXPORT_SYMBOL vmlinux 0x11e0ec41 dm_read_arg +EXPORT_SYMBOL vmlinux 0x11e30762 chacha_block_generic +EXPORT_SYMBOL vmlinux 0x11f47d8c utf8_strncmp +EXPORT_SYMBOL vmlinux 0x11f7ed4c hex_to_bin +EXPORT_SYMBOL vmlinux 0x11ffdfee ucc_slow_stop_tx +EXPORT_SYMBOL vmlinux 0x120833cb dma_mmap_attrs +EXPORT_SYMBOL vmlinux 0x120b336a __rb_insert_augmented +EXPORT_SYMBOL vmlinux 0x123307ba netdev_lower_get_first_private_rcu +EXPORT_SYMBOL vmlinux 0x124b2f09 nd_device_unregister +EXPORT_SYMBOL vmlinux 0x1278221d ZSTD_compressBegin_usingCDict +EXPORT_SYMBOL vmlinux 0x127e38c6 fscrypt_encrypt_pagecache_blocks +EXPORT_SYMBOL vmlinux 0x128142b1 tcf_block_get +EXPORT_SYMBOL vmlinux 0x129a3984 scsi_add_device +EXPORT_SYMBOL vmlinux 0x12a38747 usleep_range +EXPORT_SYMBOL vmlinux 0x12ca9da6 rproc_coredump_add_segment +EXPORT_SYMBOL vmlinux 0x12cabc89 siphash_2u64 +EXPORT_SYMBOL vmlinux 0x12d4700c __neigh_set_probe_once +EXPORT_SYMBOL vmlinux 0x12f6f69c fb_videomode_to_var +EXPORT_SYMBOL vmlinux 0x12f747f7 netdev_set_sb_channel +EXPORT_SYMBOL vmlinux 0x13057764 do_splice_direct +EXPORT_SYMBOL vmlinux 0x130afd75 acpi_get_sleep_type_data +EXPORT_SYMBOL vmlinux 0x130cc8f5 __devm_request_region +EXPORT_SYMBOL vmlinux 0x13110126 request_resource +EXPORT_SYMBOL vmlinux 0x131a6146 xa_clear_mark +EXPORT_SYMBOL vmlinux 0x131ac50c key_payload_reserve +EXPORT_SYMBOL vmlinux 0x131d5079 of_n_size_cells +EXPORT_SYMBOL vmlinux 0x13243d4b wl1251_get_platform_data +EXPORT_SYMBOL vmlinux 0x134244a4 tc_cleanup_flow_action +EXPORT_SYMBOL vmlinux 0x134cdd34 inet_frag_rbtree_purge +EXPORT_SYMBOL vmlinux 0x13515ad8 __skb_gso_segment +EXPORT_SYMBOL vmlinux 0x1362bce3 con_is_bound +EXPORT_SYMBOL vmlinux 0x1365389a ppp_input +EXPORT_SYMBOL vmlinux 0x136cc2cd rproc_elf_load_rsc_table +EXPORT_SYMBOL vmlinux 0x13782d3b locks_mandatory_area +EXPORT_SYMBOL vmlinux 0x137f3c6a __cpuhp_remove_state_cpuslocked +EXPORT_SYMBOL vmlinux 0x138742cd flow_indr_dev_setup_offload +EXPORT_SYMBOL vmlinux 0x139f2189 __kfifo_alloc +EXPORT_SYMBOL vmlinux 0x13a18630 dev_queue_xmit_accel +EXPORT_SYMBOL vmlinux 0x13a48f84 vfs_fsync +EXPORT_SYMBOL vmlinux 0x13ae3f69 filemap_fdatawait_keep_errors +EXPORT_SYMBOL vmlinux 0x13d0adf7 __kfifo_out +EXPORT_SYMBOL vmlinux 0x13e996e7 vme_dma_request +EXPORT_SYMBOL vmlinux 0x1401bed9 jbd2_journal_load +EXPORT_SYMBOL vmlinux 0x14042616 eth_header_parse_protocol +EXPORT_SYMBOL vmlinux 0x141271bf acpi_dev_found +EXPORT_SYMBOL vmlinux 0x14177843 d_path +EXPORT_SYMBOL vmlinux 0x1426f3da blk_get_queue +EXPORT_SYMBOL vmlinux 0x14605535 dma_fence_context_alloc +EXPORT_SYMBOL vmlinux 0x146289b7 crc16_table +EXPORT_SYMBOL vmlinux 0x147f80ed find_get_pages_range_tag +EXPORT_SYMBOL vmlinux 0x148bb793 insert_inode_locked4 +EXPORT_SYMBOL vmlinux 0x148be68f unload_nls +EXPORT_SYMBOL vmlinux 0x148ef782 phy_resume +EXPORT_SYMBOL vmlinux 0x149387b7 vme_dma_list_exec +EXPORT_SYMBOL vmlinux 0x14a1b449 ip_sock_set_freebind +EXPORT_SYMBOL vmlinux 0x14b39caa blk_queue_max_discard_sectors +EXPORT_SYMBOL vmlinux 0x14b89635 arm64_const_caps_ready +EXPORT_SYMBOL vmlinux 0x14c67e3e tcp_tx_delay_enabled +EXPORT_SYMBOL vmlinux 0x14c967eb __netdev_alloc_skb +EXPORT_SYMBOL vmlinux 0x14d9f0cc clean_bdev_aliases +EXPORT_SYMBOL vmlinux 0x14f45fcc bman_free_pool +EXPORT_SYMBOL vmlinux 0x14fb2365 cmdline_parts_set +EXPORT_SYMBOL vmlinux 0x15097ded __starget_for_each_device +EXPORT_SYMBOL vmlinux 0x1517ae5b uart_unregister_driver +EXPORT_SYMBOL vmlinux 0x151f4898 schedule_timeout_uninterruptible +EXPORT_SYMBOL vmlinux 0x1526b301 unix_tot_inflight +EXPORT_SYMBOL vmlinux 0x1534db76 tcp_req_err +EXPORT_SYMBOL vmlinux 0x15353b45 of_get_compatible_child +EXPORT_SYMBOL vmlinux 0x154c6338 dm_kcopyd_client_destroy +EXPORT_SYMBOL vmlinux 0x156943a1 vlan_vid_del +EXPORT_SYMBOL vmlinux 0x15732149 d_rehash +EXPORT_SYMBOL vmlinux 0x157ec261 vfs_ioctl +EXPORT_SYMBOL vmlinux 0x158712e1 dquot_operations +EXPORT_SYMBOL vmlinux 0x15b02a56 nlmsg_notify +EXPORT_SYMBOL vmlinux 0x15b947b2 phy_register_fixup_for_id +EXPORT_SYMBOL vmlinux 0x15ba50a6 jiffies +EXPORT_SYMBOL vmlinux 0x15bafe29 unregister_md_cluster_operations +EXPORT_SYMBOL vmlinux 0x15bed7a5 LZ4_decompress_safe_partial +EXPORT_SYMBOL vmlinux 0x15c85de3 mempool_init +EXPORT_SYMBOL vmlinux 0x15d15a19 xfrm_policy_flush +EXPORT_SYMBOL vmlinux 0x15ea4898 qman_oos_fq +EXPORT_SYMBOL vmlinux 0x15edd0d2 qdisc_offload_graft_helper +EXPORT_SYMBOL vmlinux 0x16195b91 inet_addr_type +EXPORT_SYMBOL vmlinux 0x16226f4f alloc_skb_with_frags +EXPORT_SYMBOL vmlinux 0x162893fd hashlen_string +EXPORT_SYMBOL vmlinux 0x16316a10 ZSTD_getFrameContentSize +EXPORT_SYMBOL vmlinux 0x163baa19 of_device_unregister +EXPORT_SYMBOL vmlinux 0x1654f51c xfrm_state_lookup +EXPORT_SYMBOL vmlinux 0x167386fd key_move +EXPORT_SYMBOL vmlinux 0x167c5967 print_hex_dump +EXPORT_SYMBOL vmlinux 0x169938c1 __sysfs_match_string +EXPORT_SYMBOL vmlinux 0x16a0241b unregister_key_type +EXPORT_SYMBOL vmlinux 0x16a206be genphy_read_status_fixed +EXPORT_SYMBOL vmlinux 0x16a454c0 mpage_readahead +EXPORT_SYMBOL vmlinux 0x16a65fc9 inet_addr_type_dev_table +EXPORT_SYMBOL vmlinux 0x16cdc340 acpi_get_table +EXPORT_SYMBOL vmlinux 0x16d1935c pci_fixup_cardbus +EXPORT_SYMBOL vmlinux 0x16dee44d dma_fence_init +EXPORT_SYMBOL vmlinux 0x16e297c3 bit_wait +EXPORT_SYMBOL vmlinux 0x16e7e2cb cpu_all_bits +EXPORT_SYMBOL vmlinux 0x170ddf79 acpi_install_notify_handler +EXPORT_SYMBOL vmlinux 0x1713c739 netdev_upper_get_next_dev_rcu +EXPORT_SYMBOL vmlinux 0x171c97ca nd_btt_arena_is_valid +EXPORT_SYMBOL vmlinux 0x1727dc44 posix_acl_to_xattr +EXPORT_SYMBOL vmlinux 0x173309a9 security_inode_invalidate_secctx +EXPORT_SYMBOL vmlinux 0x173cf582 dquot_writeback_dquots +EXPORT_SYMBOL vmlinux 0x1757d7b8 vlan_dev_vlan_id +EXPORT_SYMBOL vmlinux 0x1765ea1f __xa_alloc_cyclic +EXPORT_SYMBOL vmlinux 0x1774d2d8 pagevec_lookup_range_tag +EXPORT_SYMBOL vmlinux 0x17825d3f xudma_rchan_get +EXPORT_SYMBOL vmlinux 0x17850cfa clear_wb_congested +EXPORT_SYMBOL vmlinux 0x178c4894 qe_upload_firmware +EXPORT_SYMBOL vmlinux 0x1799b7eb jbd2_journal_start_commit +EXPORT_SYMBOL vmlinux 0x179a80c4 dump_skip +EXPORT_SYMBOL vmlinux 0x17a36f93 init_special_inode +EXPORT_SYMBOL vmlinux 0x17a633f3 con_copy_unimap +EXPORT_SYMBOL vmlinux 0x17af03b8 unix_detach_fds +EXPORT_SYMBOL vmlinux 0x17b371d0 of_find_i2c_adapter_by_node +EXPORT_SYMBOL vmlinux 0x17b5021b sk_stream_kill_queues +EXPORT_SYMBOL vmlinux 0x17b9986d security_sk_clone +EXPORT_SYMBOL vmlinux 0x17c1fd48 bio_add_pc_page +EXPORT_SYMBOL vmlinux 0x17c4902b page_cache_prev_miss +EXPORT_SYMBOL vmlinux 0x17cca9c4 scsi_remove_target +EXPORT_SYMBOL vmlinux 0x17cec979 input_event +EXPORT_SYMBOL vmlinux 0x17e64d2e follow_up +EXPORT_SYMBOL vmlinux 0x17f17a77 pci_ep_cfs_remove_epf_group +EXPORT_SYMBOL vmlinux 0x17f45b93 tty_name +EXPORT_SYMBOL vmlinux 0x1812b453 dev_deactivate +EXPORT_SYMBOL vmlinux 0x1815fb27 dev_mc_unsync +EXPORT_SYMBOL vmlinux 0x18345b8e __bitmap_replace +EXPORT_SYMBOL vmlinux 0x184083f2 rfkill_alloc +EXPORT_SYMBOL vmlinux 0x18456896 is_nd_btt +EXPORT_SYMBOL vmlinux 0x185c98f5 blk_pre_runtime_suspend +EXPORT_SYMBOL vmlinux 0x185db316 scsi_is_host_device +EXPORT_SYMBOL vmlinux 0x18741d11 config_item_put +EXPORT_SYMBOL vmlinux 0x187884a8 cpm_muram_free +EXPORT_SYMBOL vmlinux 0x1879912d ppp_register_channel +EXPORT_SYMBOL vmlinux 0x188034fd tcf_block_get_ext +EXPORT_SYMBOL vmlinux 0x18888d00 downgrade_write +EXPORT_SYMBOL vmlinux 0x188ea314 jiffies_to_timespec64 +EXPORT_SYMBOL vmlinux 0x1892c0a1 pci_write_config_word +EXPORT_SYMBOL vmlinux 0x18b48e28 __memset_io +EXPORT_SYMBOL vmlinux 0x18b72cf1 con_is_visible +EXPORT_SYMBOL vmlinux 0x18c6962d kill_block_super +EXPORT_SYMBOL vmlinux 0x18e60984 __do_once_start +EXPORT_SYMBOL vmlinux 0x18efd028 hdmi_drm_infoframe_unpack_only +EXPORT_SYMBOL vmlinux 0x18f1c4d4 bdi_alloc +EXPORT_SYMBOL vmlinux 0x1913b943 serial8250_do_pm +EXPORT_SYMBOL vmlinux 0x193bae21 alloc_fcdev +EXPORT_SYMBOL vmlinux 0x193f6dc5 netdev_printk +EXPORT_SYMBOL vmlinux 0x19436b98 pci_enable_msi +EXPORT_SYMBOL vmlinux 0x1953c958 mempool_create +EXPORT_SYMBOL vmlinux 0x1984d421 out_of_line_wait_on_bit +EXPORT_SYMBOL vmlinux 0x198620d7 security_add_mnt_opt +EXPORT_SYMBOL vmlinux 0x1989ee4a blk_queue_max_write_zeroes_sectors +EXPORT_SYMBOL vmlinux 0x199ed0cd net_disable_timestamp +EXPORT_SYMBOL vmlinux 0x19a40ccc phy_queue_state_machine +EXPORT_SYMBOL vmlinux 0x19bd383b security_secmark_refcount_dec +EXPORT_SYMBOL vmlinux 0x19ccd692 d_obtain_alias +EXPORT_SYMBOL vmlinux 0x19d7d57d skb_recv_datagram +EXPORT_SYMBOL vmlinux 0x19dbca55 notify_change +EXPORT_SYMBOL vmlinux 0x19ff6f2f file_update_time +EXPORT_SYMBOL vmlinux 0x1a107de2 ZSTD_compressCCtx +EXPORT_SYMBOL vmlinux 0x1a188e2b dm_kobject_release +EXPORT_SYMBOL vmlinux 0x1a1bac9c ZSTD_decompressDCtx +EXPORT_SYMBOL vmlinux 0x1a45cb6c acpi_disabled +EXPORT_SYMBOL vmlinux 0x1a4b67e7 mipi_dsi_driver_unregister +EXPORT_SYMBOL vmlinux 0x1a9a433c prandom_u32_state +EXPORT_SYMBOL vmlinux 0x1aa6c90a amba_device_unregister +EXPORT_SYMBOL vmlinux 0x1aafe0f9 twl6040_get_vibralr_status +EXPORT_SYMBOL vmlinux 0x1ac5d3cb strcspn +EXPORT_SYMBOL vmlinux 0x1ae00889 of_find_backlight_by_node +EXPORT_SYMBOL vmlinux 0x1aeebe4a mmc_wait_for_req +EXPORT_SYMBOL vmlinux 0x1b015d25 bitmap_parselist +EXPORT_SYMBOL vmlinux 0x1b293646 find_lock_entry +EXPORT_SYMBOL vmlinux 0x1b3e3792 jbd2_log_start_commit +EXPORT_SYMBOL vmlinux 0x1b5196fc xudma_tchan_put +EXPORT_SYMBOL vmlinux 0x1b597b7a swake_up_all +EXPORT_SYMBOL vmlinux 0x1b6314fd in_aton +EXPORT_SYMBOL vmlinux 0x1b6e364f blk_mq_rq_cpu +EXPORT_SYMBOL vmlinux 0x1b700d37 put_vaddr_frames +EXPORT_SYMBOL vmlinux 0x1b777357 rdmacg_unregister_device +EXPORT_SYMBOL vmlinux 0x1ba59527 __kmalloc_node +EXPORT_SYMBOL vmlinux 0x1bb0ac76 genlmsg_multicast_allns +EXPORT_SYMBOL vmlinux 0x1bb51249 tcp_have_smc +EXPORT_SYMBOL vmlinux 0x1bb86b9a xen_start_info +EXPORT_SYMBOL vmlinux 0x1bba1255 pci_disable_msi +EXPORT_SYMBOL vmlinux 0x1bc689da nvm_register +EXPORT_SYMBOL vmlinux 0x1bcefcb3 devfreq_unregister_notifier +EXPORT_SYMBOL vmlinux 0x1bd59dbe vme_free_consistent +EXPORT_SYMBOL vmlinux 0x1c3310f7 input_set_abs_params +EXPORT_SYMBOL vmlinux 0x1c338147 vm_numa_stat +EXPORT_SYMBOL vmlinux 0x1c349a78 __skb_free_datagram_locked +EXPORT_SYMBOL vmlinux 0x1c43e088 dquot_scan_active +EXPORT_SYMBOL vmlinux 0x1c444501 bio_add_page +EXPORT_SYMBOL vmlinux 0x1c44806d xp_free +EXPORT_SYMBOL vmlinux 0x1c560f17 __qdisc_calculate_pkt_len +EXPORT_SYMBOL vmlinux 0x1c58427f acpi_remove_notify_handler +EXPORT_SYMBOL vmlinux 0x1c59ee52 param_set_ullong +EXPORT_SYMBOL vmlinux 0x1c5e3878 icst525_idx2s +EXPORT_SYMBOL vmlinux 0x1c8f59a5 xfrm_trans_queue_net +EXPORT_SYMBOL vmlinux 0x1c8fd13b _dev_warn +EXPORT_SYMBOL vmlinux 0x1ca60a5e finish_no_open +EXPORT_SYMBOL vmlinux 0x1cb2c6d8 kvasprintf +EXPORT_SYMBOL vmlinux 0x1cc417f9 __cgroup_bpf_run_filter_skb +EXPORT_SYMBOL vmlinux 0x1cd54da3 debugfs_create_automount +EXPORT_SYMBOL vmlinux 0x1cd8438b pxm_to_node +EXPORT_SYMBOL vmlinux 0x1cdbfebf ilookup +EXPORT_SYMBOL vmlinux 0x1cdd39ba logic_outsl +EXPORT_SYMBOL vmlinux 0x1cf5efa6 xudma_rflow_get_id +EXPORT_SYMBOL vmlinux 0x1d07e365 memdup_user_nul +EXPORT_SYMBOL vmlinux 0x1d1abdf0 acpi_get_physical_device_location +EXPORT_SYMBOL vmlinux 0x1d24c881 ___ratelimit +EXPORT_SYMBOL vmlinux 0x1d2d6d15 wait_iff_congested +EXPORT_SYMBOL vmlinux 0x1d2fce95 blk_mq_start_hw_queues +EXPORT_SYMBOL vmlinux 0x1d30e286 mmc_wait_for_req_done +EXPORT_SYMBOL vmlinux 0x1d40b6f3 idr_for_each +EXPORT_SYMBOL vmlinux 0x1d5bbf43 ipv6_chk_addr_and_flags +EXPORT_SYMBOL vmlinux 0x1d5f9555 frame_vector_destroy +EXPORT_SYMBOL vmlinux 0x1d66b4e5 ucc_fast_dump_regs +EXPORT_SYMBOL vmlinux 0x1d68e80d scsi_device_quiesce +EXPORT_SYMBOL vmlinux 0x1d6b1951 __napi_alloc_skb +EXPORT_SYMBOL vmlinux 0x1d70ced5 netif_stacked_transfer_operstate +EXPORT_SYMBOL vmlinux 0x1d7b083c blk_queue_chunk_sectors +EXPORT_SYMBOL vmlinux 0x1d87d667 dquot_get_state +EXPORT_SYMBOL vmlinux 0x1d8bdd16 crypto_sha256_finup +EXPORT_SYMBOL vmlinux 0x1d8f6840 km_policy_expired +EXPORT_SYMBOL vmlinux 0x1d9aba7e devfreq_remove_device +EXPORT_SYMBOL vmlinux 0x1dbc6c58 of_io_request_and_map +EXPORT_SYMBOL vmlinux 0x1dc6c93b lookup_user_key +EXPORT_SYMBOL vmlinux 0x1dd43031 netlink_unicast +EXPORT_SYMBOL vmlinux 0x1dd571e6 fb_copy_cmap +EXPORT_SYMBOL vmlinux 0x1ddd643c flow_hash_from_keys +EXPORT_SYMBOL vmlinux 0x1de4ccb2 get_sg_io_hdr +EXPORT_SYMBOL vmlinux 0x1de67f9b qcom_scm_io_writel +EXPORT_SYMBOL vmlinux 0x1de9523b inet6_unregister_protosw +EXPORT_SYMBOL vmlinux 0x1dea724b tcf_generic_walker +EXPORT_SYMBOL vmlinux 0x1df63e88 ZSTD_compressBegin +EXPORT_SYMBOL vmlinux 0x1e0373fc imx_scu_irq_group_enable +EXPORT_SYMBOL vmlinux 0x1e0a0c24 mod_timer_pending +EXPORT_SYMBOL vmlinux 0x1e0cd7fe acpi_detach_data +EXPORT_SYMBOL vmlinux 0x1e1e140e ns_to_timespec64 +EXPORT_SYMBOL vmlinux 0x1e2b0344 balance_dirty_pages_ratelimited +EXPORT_SYMBOL vmlinux 0x1e4bd8a2 skb_unlink +EXPORT_SYMBOL vmlinux 0x1e56d0f9 generic_write_checks +EXPORT_SYMBOL vmlinux 0x1e62643b skb_flow_dissector_init +EXPORT_SYMBOL vmlinux 0x1e6d26a8 strstr +EXPORT_SYMBOL vmlinux 0x1e7fa1da tty_port_alloc_xmit_buf +EXPORT_SYMBOL vmlinux 0x1e9153e0 inet6_add_offload +EXPORT_SYMBOL vmlinux 0x1e975d6e sk_wait_data +EXPORT_SYMBOL vmlinux 0x1e9edfb7 seq_hlist_start_head_rcu +EXPORT_SYMBOL vmlinux 0x1ebb44a5 max8998_bulk_read +EXPORT_SYMBOL vmlinux 0x1ec6227c phy_set_max_speed +EXPORT_SYMBOL vmlinux 0x1ed8bad9 remove_proc_entry +EXPORT_SYMBOL vmlinux 0x1edb69d6 ktime_get_raw_ts64 +EXPORT_SYMBOL vmlinux 0x1efd9a33 alloc_xenballooned_pages +EXPORT_SYMBOL vmlinux 0x1f03912b ZSTD_flushStream +EXPORT_SYMBOL vmlinux 0x1f069dbd ndo_dflt_fdb_dump +EXPORT_SYMBOL vmlinux 0x1f0c7c6c neigh_changeaddr +EXPORT_SYMBOL vmlinux 0x1f2576cc amba_driver_register +EXPORT_SYMBOL vmlinux 0x1f27457f blk_queue_alignment_offset +EXPORT_SYMBOL vmlinux 0x1f4baf08 netif_skb_features +EXPORT_SYMBOL vmlinux 0x1f557414 gen_pool_has_addr +EXPORT_SYMBOL vmlinux 0x1f802033 phy_start +EXPORT_SYMBOL vmlinux 0x1f95ff68 param_ops_ulong +EXPORT_SYMBOL vmlinux 0x1fae8fd4 vfs_iter_write +EXPORT_SYMBOL vmlinux 0x1fbd16da ip_tos2prio +EXPORT_SYMBOL vmlinux 0x1fbdb9da skb_page_frag_refill +EXPORT_SYMBOL vmlinux 0x1fc3113b crypto_sha1_update +EXPORT_SYMBOL vmlinux 0x1fd07fff kdb_grepping_flag +EXPORT_SYMBOL vmlinux 0x1fdf9462 __cleancache_invalidate_page +EXPORT_SYMBOL vmlinux 0x1fe912f1 netdev_alloc_frag +EXPORT_SYMBOL vmlinux 0x1fe9e912 configfs_remove_default_groups +EXPORT_SYMBOL vmlinux 0x1feb45c4 skb_flow_dissect_ct +EXPORT_SYMBOL vmlinux 0x20000329 simple_strtoul +EXPORT_SYMBOL vmlinux 0x200b2041 in6addr_any +EXPORT_SYMBOL vmlinux 0x200c4818 tcf_classify_ingress +EXPORT_SYMBOL vmlinux 0x2012222d mipi_dsi_set_maximum_return_packet_size +EXPORT_SYMBOL vmlinux 0x202f00e6 register_gifconf +EXPORT_SYMBOL vmlinux 0x20463df4 wait_for_completion_killable +EXPORT_SYMBOL vmlinux 0x204995ce set_bh_page +EXPORT_SYMBOL vmlinux 0x204af5b5 netlbl_audit_start +EXPORT_SYMBOL vmlinux 0x204c19f5 tcp_alloc_md5sig_pool +EXPORT_SYMBOL vmlinux 0x204c5067 scsi_dev_info_add_list +EXPORT_SYMBOL vmlinux 0x2054f963 send_sig_mceerr +EXPORT_SYMBOL vmlinux 0x20653fa7 mipi_dsi_dcs_set_tear_scanline +EXPORT_SYMBOL vmlinux 0x2067876f rproc_coredump_add_custom_segment +EXPORT_SYMBOL vmlinux 0x2072ee9b request_threaded_irq +EXPORT_SYMBOL vmlinux 0x20775b77 clkdev_hw_alloc +EXPORT_SYMBOL vmlinux 0x207aac87 filemap_flush +EXPORT_SYMBOL vmlinux 0x207bcb43 ata_port_printk +EXPORT_SYMBOL vmlinux 0x20a1b519 acpi_resource_to_address64 +EXPORT_SYMBOL vmlinux 0x20a789ac irq_set_chip_data +EXPORT_SYMBOL vmlinux 0x20c64986 tcp_enter_quickack_mode +EXPORT_SYMBOL vmlinux 0x20cbb30a __percpu_counter_init +EXPORT_SYMBOL vmlinux 0x20d4643e fget +EXPORT_SYMBOL vmlinux 0x20d65e40 fb_find_nearest_mode +EXPORT_SYMBOL vmlinux 0x20eadeb6 ip_compute_csum +EXPORT_SYMBOL vmlinux 0x20f2fecc single_open_size +EXPORT_SYMBOL vmlinux 0x20ff533d pps_event +EXPORT_SYMBOL vmlinux 0x20fff6ec ZSTD_DStreamInSize +EXPORT_SYMBOL vmlinux 0x21059cd7 audit_log_task_context +EXPORT_SYMBOL vmlinux 0x211fdce6 serial8250_set_isa_configurator +EXPORT_SYMBOL vmlinux 0x212626f7 netdev_pick_tx +EXPORT_SYMBOL vmlinux 0x21289dae dump_align +EXPORT_SYMBOL vmlinux 0x2128c2a1 inet_listen +EXPORT_SYMBOL vmlinux 0x212cc386 truncate_pagecache +EXPORT_SYMBOL vmlinux 0x21345013 __xfrm_dst_lookup +EXPORT_SYMBOL vmlinux 0x213a738d memregion_alloc +EXPORT_SYMBOL vmlinux 0x213e4965 ps2_is_keyboard_id +EXPORT_SYMBOL vmlinux 0x215a8ec8 slhc_init +EXPORT_SYMBOL vmlinux 0x216cc2e9 request_key_with_auxdata +EXPORT_SYMBOL vmlinux 0x2175993d dquot_resume +EXPORT_SYMBOL vmlinux 0x21763a79 ip_fraglist_init +EXPORT_SYMBOL vmlinux 0x218e600b pci_add_resource_offset +EXPORT_SYMBOL vmlinux 0x21a4638f from_kuid +EXPORT_SYMBOL vmlinux 0x21a9b490 acpi_bus_register_driver +EXPORT_SYMBOL vmlinux 0x21aeec42 redraw_screen +EXPORT_SYMBOL vmlinux 0x21bbd2d5 dma_resv_add_excl_fence +EXPORT_SYMBOL vmlinux 0x21bdb523 errseq_check_and_advance +EXPORT_SYMBOL vmlinux 0x21be37e1 hdmi_avi_infoframe_check +EXPORT_SYMBOL vmlinux 0x21d08a5e rproc_elf_load_segments +EXPORT_SYMBOL vmlinux 0x21d901b5 mipi_dsi_dcs_set_page_address +EXPORT_SYMBOL vmlinux 0x21e13cb3 inet_peer_xrlim_allow +EXPORT_SYMBOL vmlinux 0x21ef374c try_wait_for_completion +EXPORT_SYMBOL vmlinux 0x21f7be19 xsk_umem_consume_tx_done +EXPORT_SYMBOL vmlinux 0x22032bed ipv6_chk_prefix +EXPORT_SYMBOL vmlinux 0x220e55d0 mem_section +EXPORT_SYMBOL vmlinux 0x222e7ce2 sysfs_streq +EXPORT_SYMBOL vmlinux 0x2234ca51 acpi_match_platform_list +EXPORT_SYMBOL vmlinux 0x224ce651 xudma_free_gp_rflow_range +EXPORT_SYMBOL vmlinux 0x2250615f netpoll_setup +EXPORT_SYMBOL vmlinux 0x2256b792 md_write_end +EXPORT_SYMBOL vmlinux 0x226dd700 pci_read_config_word +EXPORT_SYMBOL vmlinux 0x2276db98 kstrtoint +EXPORT_SYMBOL vmlinux 0x22793151 napi_get_frags +EXPORT_SYMBOL vmlinux 0x227c7fb9 netif_receive_skb_core +EXPORT_SYMBOL vmlinux 0x22812c85 blk_queue_flag_clear +EXPORT_SYMBOL vmlinux 0x22a5b04c fs_context_for_mount +EXPORT_SYMBOL vmlinux 0x22ae3ed2 fscrypt_decrypt_pagecache_blocks +EXPORT_SYMBOL vmlinux 0x22affb72 add_to_page_cache_locked +EXPORT_SYMBOL vmlinux 0x22b325d5 kd_mksound +EXPORT_SYMBOL vmlinux 0x22b615de bdev_dax_pgoff +EXPORT_SYMBOL vmlinux 0x22c68ab9 jbd2_journal_invalidatepage +EXPORT_SYMBOL vmlinux 0x22c6ccae tcp_openreq_init_rwin +EXPORT_SYMBOL vmlinux 0x22c81f5c ata_link_printk +EXPORT_SYMBOL vmlinux 0x22d03530 kern_path_create +EXPORT_SYMBOL vmlinux 0x22f62b86 locks_copy_conflock +EXPORT_SYMBOL vmlinux 0x22f98f98 __netlink_kernel_create +EXPORT_SYMBOL vmlinux 0x231038b0 inet_sk_rebuild_header +EXPORT_SYMBOL vmlinux 0x232d07be skb_tx_error +EXPORT_SYMBOL vmlinux 0x232e877f block_write_begin +EXPORT_SYMBOL vmlinux 0x233419ed of_clk_get +EXPORT_SYMBOL vmlinux 0x23489979 path_put +EXPORT_SYMBOL vmlinux 0x234c0e02 ipv6_mc_check_mld +EXPORT_SYMBOL vmlinux 0x23588e70 mipi_dsi_host_register +EXPORT_SYMBOL vmlinux 0x2361ac9f blk_put_queue +EXPORT_SYMBOL vmlinux 0x2363170f elv_rb_add +EXPORT_SYMBOL vmlinux 0x23792a39 vga_set_legacy_decoding +EXPORT_SYMBOL vmlinux 0x238b099f mipi_dsi_packet_format_is_short +EXPORT_SYMBOL vmlinux 0x238b360b set_anon_super_fc +EXPORT_SYMBOL vmlinux 0x2396b223 km_new_mapping +EXPORT_SYMBOL vmlinux 0x239959d8 pcim_iomap_regions +EXPORT_SYMBOL vmlinux 0x23a17e41 cfb_copyarea +EXPORT_SYMBOL vmlinux 0x23b706d7 tcp_get_cookie_sock +EXPORT_SYMBOL vmlinux 0x23b9d6e2 mangle_path +EXPORT_SYMBOL vmlinux 0x23c9891c kstrtoint_from_user +EXPORT_SYMBOL vmlinux 0x23cabbb1 register_sysctl_paths +EXPORT_SYMBOL vmlinux 0x23daa989 mipi_dsi_create_packet +EXPORT_SYMBOL vmlinux 0x23e02dbb key_instantiate_and_link +EXPORT_SYMBOL vmlinux 0x23e0babd mpage_readpage +EXPORT_SYMBOL vmlinux 0x23ee13fd mb_cache_entry_find_first +EXPORT_SYMBOL vmlinux 0x23fd3028 vmalloc_node +EXPORT_SYMBOL vmlinux 0x2408a549 generic_copy_file_range +EXPORT_SYMBOL vmlinux 0x240d802b configfs_unregister_subsystem +EXPORT_SYMBOL vmlinux 0x24212d86 __frontswap_invalidate_page +EXPORT_SYMBOL vmlinux 0x24225818 nvm_submit_io +EXPORT_SYMBOL vmlinux 0x243a70c3 bio_alloc_bioset +EXPORT_SYMBOL vmlinux 0x24428be5 strncpy_from_user +EXPORT_SYMBOL vmlinux 0x24437c4e brioctl_set +EXPORT_SYMBOL vmlinux 0x2459bbcc console_set_on_cmdline +EXPORT_SYMBOL vmlinux 0x2473f47e dm_table_get_size +EXPORT_SYMBOL vmlinux 0x247a2b70 rproc_alloc +EXPORT_SYMBOL vmlinux 0x2484adc3 __kfifo_to_user_r +EXPORT_SYMBOL vmlinux 0x248ddf27 kfree_skb +EXPORT_SYMBOL vmlinux 0x2494665b udp6_set_csum +EXPORT_SYMBOL vmlinux 0x24cea60d framebuffer_release +EXPORT_SYMBOL vmlinux 0x24d0c367 flow_rule_match_vlan +EXPORT_SYMBOL vmlinux 0x24d273d1 add_timer +EXPORT_SYMBOL vmlinux 0x24e20eda gnet_stats_copy_app +EXPORT_SYMBOL vmlinux 0x24fd26f1 pps_unregister_source +EXPORT_SYMBOL vmlinux 0x24fdb97b skb_csum_hwoffload_help +EXPORT_SYMBOL vmlinux 0x250531d1 generic_mii_ioctl +EXPORT_SYMBOL vmlinux 0x250d09cd neigh_event_ns +EXPORT_SYMBOL vmlinux 0x251b60ab devfreq_monitor_stop +EXPORT_SYMBOL vmlinux 0x2524ba17 ZSTD_getCParams +EXPORT_SYMBOL vmlinux 0x25277497 rfkill_register +EXPORT_SYMBOL vmlinux 0x254e59d5 __serio_register_port +EXPORT_SYMBOL vmlinux 0x2552fa92 tty_port_carrier_raised +EXPORT_SYMBOL vmlinux 0x2559c876 scsi_rescan_device +EXPORT_SYMBOL vmlinux 0x255fa99e mipi_dsi_turn_on_peripheral +EXPORT_SYMBOL vmlinux 0x256988bd inet6_del_protocol +EXPORT_SYMBOL vmlinux 0x2570a138 reservation_seqcount_string +EXPORT_SYMBOL vmlinux 0x25801a58 update_devfreq +EXPORT_SYMBOL vmlinux 0x25820c64 fs_overflowuid +EXPORT_SYMBOL vmlinux 0x258d2f76 net_dim_get_tx_moderation +EXPORT_SYMBOL vmlinux 0x25974000 wait_for_completion +EXPORT_SYMBOL vmlinux 0x25a65511 on_each_cpu_mask +EXPORT_SYMBOL vmlinux 0x25a65b7c xfrm_state_unregister_afinfo +EXPORT_SYMBOL vmlinux 0x25b1d906 mr_table_alloc +EXPORT_SYMBOL vmlinux 0x25b65abf kill_litter_super +EXPORT_SYMBOL vmlinux 0x25c0c2a4 devm_nvmem_cell_put +EXPORT_SYMBOL vmlinux 0x25c2f332 bdi_register +EXPORT_SYMBOL vmlinux 0x25c5cf00 loop_register_transfer +EXPORT_SYMBOL vmlinux 0x25dd3fa0 serio_bus +EXPORT_SYMBOL vmlinux 0x25e58a09 hdmi_avi_infoframe_init +EXPORT_SYMBOL vmlinux 0x25e9d4bd resource_list_free +EXPORT_SYMBOL vmlinux 0x260a095a __sg_alloc_table +EXPORT_SYMBOL vmlinux 0x260fa6e6 tcp_sendmsg +EXPORT_SYMBOL vmlinux 0x26178a62 vfs_setpos +EXPORT_SYMBOL vmlinux 0x262057ca vme_irq_request +EXPORT_SYMBOL vmlinux 0x262127a3 generic_file_mmap +EXPORT_SYMBOL vmlinux 0x262e4381 fs_param_is_u64 +EXPORT_SYMBOL vmlinux 0x262fec39 __mmc_claim_host +EXPORT_SYMBOL vmlinux 0x26379899 unregister_quota_format +EXPORT_SYMBOL vmlinux 0x263beb75 ecryptfs_get_versions +EXPORT_SYMBOL vmlinux 0x263c3152 bcmp +EXPORT_SYMBOL vmlinux 0x263de860 __bforget +EXPORT_SYMBOL vmlinux 0x263f0d1f qman_portal_set_iperiod +EXPORT_SYMBOL vmlinux 0x265cdd42 mod_node_page_state +EXPORT_SYMBOL vmlinux 0x266497ad input_mt_drop_unused +EXPORT_SYMBOL vmlinux 0x267b8df2 netdev_has_upper_dev_all_rcu +EXPORT_SYMBOL vmlinux 0x267ed9d8 posix_acl_chmod +EXPORT_SYMBOL vmlinux 0x2688ec10 bitmap_zalloc +EXPORT_SYMBOL vmlinux 0x26abddcc i2c_verify_adapter +EXPORT_SYMBOL vmlinux 0x26b15218 n_tty_ioctl_helper +EXPORT_SYMBOL vmlinux 0x26b3ed69 inet6_getname +EXPORT_SYMBOL vmlinux 0x26b59a9a phy_connect_direct +EXPORT_SYMBOL vmlinux 0x26c99ee0 ipv6_chk_custom_prefix +EXPORT_SYMBOL vmlinux 0x26cc73c3 complete_and_exit +EXPORT_SYMBOL vmlinux 0x26cdeb15 ppp_dev_name +EXPORT_SYMBOL vmlinux 0x26d298d6 inet_accept +EXPORT_SYMBOL vmlinux 0x26e298e0 unregister_memory_notifier +EXPORT_SYMBOL vmlinux 0x26e56f9b sunxi_sram_claim +EXPORT_SYMBOL vmlinux 0x26ebeb97 free_inode_nonrcu +EXPORT_SYMBOL vmlinux 0x270b6c9b nd_device_notify +EXPORT_SYMBOL vmlinux 0x271a9020 invalidate_inode_buffers +EXPORT_SYMBOL vmlinux 0x271cba95 acpi_bus_private_data_handler +EXPORT_SYMBOL vmlinux 0x2720dd00 d_lookup +EXPORT_SYMBOL vmlinux 0x272664c2 bio_clone_fast +EXPORT_SYMBOL vmlinux 0x272a8933 udp_memory_allocated +EXPORT_SYMBOL vmlinux 0x2733eaf7 scsi_dev_info_list_add_keyed +EXPORT_SYMBOL vmlinux 0x27479d14 param_free_charp +EXPORT_SYMBOL vmlinux 0x27480083 flow_block_cb_incref +EXPORT_SYMBOL vmlinux 0x275dfee4 ucc_slow_free +EXPORT_SYMBOL vmlinux 0x275f3d49 hdmi_vendor_infoframe_check +EXPORT_SYMBOL vmlinux 0x275fd1c5 xfrm_state_register_afinfo +EXPORT_SYMBOL vmlinux 0x27639220 blk_verify_command +EXPORT_SYMBOL vmlinux 0x27756bc8 scsi_sanitize_inquiry_string +EXPORT_SYMBOL vmlinux 0x277cd31e of_get_i2c_adapter_by_node +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 0x278e923c scsi_vpd_tpg_id +EXPORT_SYMBOL vmlinux 0x2794917d may_umount_tree +EXPORT_SYMBOL vmlinux 0x279be432 ZSTD_copyCCtx +EXPORT_SYMBOL vmlinux 0x27a16396 __block_write_full_page +EXPORT_SYMBOL vmlinux 0x27bb98a3 discard_new_inode +EXPORT_SYMBOL vmlinux 0x27bbf221 disable_irq_nosync +EXPORT_SYMBOL vmlinux 0x27c3c728 qman_release_fqid +EXPORT_SYMBOL vmlinux 0x27c775ed pneigh_enqueue +EXPORT_SYMBOL vmlinux 0x27c93f08 dquot_reclaim_space_nodirty +EXPORT_SYMBOL vmlinux 0x27ca3e95 simple_rmdir +EXPORT_SYMBOL vmlinux 0x27cdca93 pci_add_resource +EXPORT_SYMBOL vmlinux 0x27d42e11 mini_qdisc_pair_init +EXPORT_SYMBOL vmlinux 0x27d529ce rproc_add_carveout +EXPORT_SYMBOL vmlinux 0x27e14483 ethtool_op_get_ts_info +EXPORT_SYMBOL vmlinux 0x27e7896a skb_vlan_untag +EXPORT_SYMBOL vmlinux 0x281823c5 __kfifo_out_peek +EXPORT_SYMBOL vmlinux 0x2818e883 bio_devname +EXPORT_SYMBOL vmlinux 0x2830df41 tcf_exts_terse_dump +EXPORT_SYMBOL vmlinux 0x2833f577 ZSTD_compressBegin_advanced +EXPORT_SYMBOL vmlinux 0x285dea73 pci_match_id +EXPORT_SYMBOL vmlinux 0x28699866 sock_register +EXPORT_SYMBOL vmlinux 0x2875a315 utf32_to_utf8 +EXPORT_SYMBOL vmlinux 0x289c6b17 md_bitmap_start_sync +EXPORT_SYMBOL vmlinux 0x28aee663 input_set_timestamp +EXPORT_SYMBOL vmlinux 0x28b50af3 pci_disable_link_state_locked +EXPORT_SYMBOL vmlinux 0x28e03706 __dev_get_by_flags +EXPORT_SYMBOL vmlinux 0x28e7e615 kthread_create_worker_on_cpu +EXPORT_SYMBOL vmlinux 0x28f65343 gnet_stats_copy_basic_hw +EXPORT_SYMBOL vmlinux 0x2914ea2d ZSTD_compressBlock +EXPORT_SYMBOL vmlinux 0x291e4155 request_firmware_nowait +EXPORT_SYMBOL vmlinux 0x292031f7 genphy_read_lpa +EXPORT_SYMBOL vmlinux 0x292334c0 fs_param_is_enum +EXPORT_SYMBOL vmlinux 0x29346894 nf_ct_attach +EXPORT_SYMBOL vmlinux 0x294b9ea1 on_each_cpu +EXPORT_SYMBOL vmlinux 0x2960adc8 sget_fc +EXPORT_SYMBOL vmlinux 0x296cb509 __xa_insert +EXPORT_SYMBOL vmlinux 0x299853c5 pm860x_bulk_write +EXPORT_SYMBOL vmlinux 0x29987f1f mipi_dsi_dcs_get_pixel_format +EXPORT_SYMBOL vmlinux 0x29a2efec super_setup_bdi +EXPORT_SYMBOL vmlinux 0x29e1e204 hdmi_audio_infoframe_pack +EXPORT_SYMBOL vmlinux 0x29ef2d32 __neigh_for_each_release +EXPORT_SYMBOL vmlinux 0x29f6fab9 mount_nodev +EXPORT_SYMBOL vmlinux 0x2a078a94 mdio_device_free +EXPORT_SYMBOL vmlinux 0x2a20993a sock_set_keepalive +EXPORT_SYMBOL vmlinux 0x2a303d4d check_signature +EXPORT_SYMBOL vmlinux 0x2a3fc450 configfs_register_group +EXPORT_SYMBOL vmlinux 0x2a528c42 tty_kref_put +EXPORT_SYMBOL vmlinux 0x2a52b457 nvm_submit_io_sync +EXPORT_SYMBOL vmlinux 0x2a605cd3 phy_drivers_register +EXPORT_SYMBOL vmlinux 0x2a60c2d7 node_states +EXPORT_SYMBOL vmlinux 0x2a60c676 single_release +EXPORT_SYMBOL vmlinux 0x2a633c1c phy_register_fixup_for_uid +EXPORT_SYMBOL vmlinux 0x2a69dd93 d_alloc_anon +EXPORT_SYMBOL vmlinux 0x2a702862 arp_xmit +EXPORT_SYMBOL vmlinux 0x2a852dea fman_register_intr +EXPORT_SYMBOL vmlinux 0x2a87005f mdio_bus_type +EXPORT_SYMBOL vmlinux 0x2a898ca4 rtnl_notify +EXPORT_SYMBOL vmlinux 0x2a916658 generic_block_fiemap +EXPORT_SYMBOL vmlinux 0x2a9239e5 skb_copy_expand +EXPORT_SYMBOL vmlinux 0x2a9a3905 vme_master_get +EXPORT_SYMBOL vmlinux 0x2aa0843e mempool_resize +EXPORT_SYMBOL vmlinux 0x2aabaf9d xudma_tchan_get +EXPORT_SYMBOL vmlinux 0x2ab2ee91 brcmstb_get_product_id +EXPORT_SYMBOL vmlinux 0x2ab7989d mutex_lock +EXPORT_SYMBOL vmlinux 0x2ab9c9b9 jbd2_journal_clear_features +EXPORT_SYMBOL vmlinux 0x2acae6f6 devfreq_update_status +EXPORT_SYMBOL vmlinux 0x2ad7a2ed __cleancache_init_shared_fs +EXPORT_SYMBOL vmlinux 0x2adafbca config_item_get +EXPORT_SYMBOL vmlinux 0x2ae63e8d acpi_bus_get_status +EXPORT_SYMBOL vmlinux 0x2b082783 devm_of_clk_del_provider +EXPORT_SYMBOL vmlinux 0x2b159852 fs_param_is_bool +EXPORT_SYMBOL vmlinux 0x2b1abce3 fman_has_errata_a050385 +EXPORT_SYMBOL vmlinux 0x2b29661b vlan_for_each +EXPORT_SYMBOL vmlinux 0x2b298192 of_get_parent +EXPORT_SYMBOL vmlinux 0x2b57d07a fsync_bdev +EXPORT_SYMBOL vmlinux 0x2b593aa8 gen_pool_alloc_algo_owner +EXPORT_SYMBOL vmlinux 0x2b63cfd6 blk_mq_stop_hw_queue +EXPORT_SYMBOL vmlinux 0x2b68bd2f del_timer +EXPORT_SYMBOL vmlinux 0x2b6d631d cdrom_get_last_written +EXPORT_SYMBOL vmlinux 0x2b7876e6 __bio_clone_fast +EXPORT_SYMBOL vmlinux 0x2b8c11b7 fib_notifier_ops_register +EXPORT_SYMBOL vmlinux 0x2b9da7a4 genl_lock +EXPORT_SYMBOL vmlinux 0x2ba0a59e mr_vif_seq_idx +EXPORT_SYMBOL vmlinux 0x2bb6099e dq_data_lock +EXPORT_SYMBOL vmlinux 0x2bd0046b padata_set_cpumask +EXPORT_SYMBOL vmlinux 0x2bd60ab9 acpi_reset +EXPORT_SYMBOL vmlinux 0x2be0ee46 netdev_state_change +EXPORT_SYMBOL vmlinux 0x2bfbab10 __memmove +EXPORT_SYMBOL vmlinux 0x2c052e98 wait_for_key_construction +EXPORT_SYMBOL vmlinux 0x2c256e1f input_scancode_to_scalar +EXPORT_SYMBOL vmlinux 0x2c2edec7 scsi_unblock_requests +EXPORT_SYMBOL vmlinux 0x2c40324e copy_string_kernel +EXPORT_SYMBOL vmlinux 0x2c41a3fe pskb_extract +EXPORT_SYMBOL vmlinux 0x2c4d6d3f xfrm_alloc_spi +EXPORT_SYMBOL vmlinux 0x2c541e7b radix_tree_next_chunk +EXPORT_SYMBOL vmlinux 0x2c6ff98e neigh_parms_release +EXPORT_SYMBOL vmlinux 0x2c826e9c flow_rule_match_enc_control +EXPORT_SYMBOL vmlinux 0x2c83d7a7 invalidate_bdev +EXPORT_SYMBOL vmlinux 0x2c86a1d5 put_cmsg_scm_timestamping +EXPORT_SYMBOL vmlinux 0x2c897871 _dev_notice +EXPORT_SYMBOL vmlinux 0x2c91e17c vm_get_page_prot +EXPORT_SYMBOL vmlinux 0x2c980713 bdi_put +EXPORT_SYMBOL vmlinux 0x2cbf3b6c ip6_route_me_harder +EXPORT_SYMBOL vmlinux 0x2cc2535e sk_free +EXPORT_SYMBOL vmlinux 0x2cc314f8 blkdev_get_by_dev +EXPORT_SYMBOL vmlinux 0x2ccd059a dim_on_top +EXPORT_SYMBOL vmlinux 0x2cdf87a1 proc_dointvec_minmax +EXPORT_SYMBOL vmlinux 0x2ce0ad62 kernel_recvmsg +EXPORT_SYMBOL vmlinux 0x2ceef750 handle_edge_irq +EXPORT_SYMBOL vmlinux 0x2cf14b15 ucc_fast_disable +EXPORT_SYMBOL vmlinux 0x2cf73cb7 kstrtoll_from_user +EXPORT_SYMBOL vmlinux 0x2d053d57 __skb_flow_get_ports +EXPORT_SYMBOL vmlinux 0x2d089205 is_nd_pfn +EXPORT_SYMBOL vmlinux 0x2d0e93bf jbd2_journal_restart +EXPORT_SYMBOL vmlinux 0x2d140a58 genl_unlock +EXPORT_SYMBOL vmlinux 0x2d192c70 sg_zero_buffer +EXPORT_SYMBOL vmlinux 0x2d30596c from_kqid_munged +EXPORT_SYMBOL vmlinux 0x2d3385d3 system_wq +EXPORT_SYMBOL vmlinux 0x2d39b0a7 kstrdup +EXPORT_SYMBOL vmlinux 0x2d3a873b qdisc_put_unlocked +EXPORT_SYMBOL vmlinux 0x2d3d0ce8 __alloc_disk_node +EXPORT_SYMBOL vmlinux 0x2d4c773a hdmi_spd_infoframe_init +EXPORT_SYMBOL vmlinux 0x2d5f19ce dev_vprintk_emit +EXPORT_SYMBOL vmlinux 0x2d7af037 lookup_one_len +EXPORT_SYMBOL vmlinux 0x2d912bca dmi_get_bios_year +EXPORT_SYMBOL vmlinux 0x2d994605 security_inode_copy_up_xattr +EXPORT_SYMBOL vmlinux 0x2da29336 pci_ep_cfs_add_epf_group +EXPORT_SYMBOL vmlinux 0x2da3f1a2 dev_disable_lro +EXPORT_SYMBOL vmlinux 0x2db3bc61 check_zeroed_user +EXPORT_SYMBOL vmlinux 0x2db3d320 mutex_lock_interruptible +EXPORT_SYMBOL vmlinux 0x2dce2f1c __irq_regs +EXPORT_SYMBOL vmlinux 0x2de4bea4 devm_free_irq +EXPORT_SYMBOL vmlinux 0x2de76348 mini_qdisc_pair_swap +EXPORT_SYMBOL vmlinux 0x2e0b1deb dma_fence_get_status +EXPORT_SYMBOL vmlinux 0x2e11c450 flow_indr_dev_unregister +EXPORT_SYMBOL vmlinux 0x2e16de31 pci_prepare_to_sleep +EXPORT_SYMBOL vmlinux 0x2e1ca751 clk_put +EXPORT_SYMBOL vmlinux 0x2e24a992 i2c_get_adapter +EXPORT_SYMBOL vmlinux 0x2e2b40d2 strncat +EXPORT_SYMBOL vmlinux 0x2e2c4ddc logic_inw +EXPORT_SYMBOL vmlinux 0x2e34e763 vm_map_pages +EXPORT_SYMBOL vmlinux 0x2e3bcce2 wait_for_completion_interruptible +EXPORT_SYMBOL vmlinux 0x2e439142 drm_get_panel_orientation_quirk +EXPORT_SYMBOL vmlinux 0x2e445380 bio_free_pages +EXPORT_SYMBOL vmlinux 0x2e54d431 netif_rx +EXPORT_SYMBOL vmlinux 0x2e5772d0 iput +EXPORT_SYMBOL vmlinux 0x2e5b27da xudma_alloc_gp_rflow_range +EXPORT_SYMBOL vmlinux 0x2e5fe036 __skb_ext_put +EXPORT_SYMBOL vmlinux 0x2e697791 input_free_device +EXPORT_SYMBOL vmlinux 0x2e84b6d5 blk_queue_max_write_same_sectors +EXPORT_SYMBOL vmlinux 0x2e8c46e7 phy_stop +EXPORT_SYMBOL vmlinux 0x2e9fc238 param_ops_uint +EXPORT_SYMBOL vmlinux 0x2eaed36b security_inet_conn_established +EXPORT_SYMBOL vmlinux 0x2ec3453b qman_schedule_fq +EXPORT_SYMBOL vmlinux 0x2ec5ce58 tty_hung_up_p +EXPORT_SYMBOL vmlinux 0x2ec6bba0 errseq_set +EXPORT_SYMBOL vmlinux 0x2ec6ef47 qman_get_qm_portal_config +EXPORT_SYMBOL vmlinux 0x2ed1faa3 xfrm_policy_hash_rebuild +EXPORT_SYMBOL vmlinux 0x2edbeaf7 hex2bin +EXPORT_SYMBOL vmlinux 0x2ee4c2b1 hdmi_avi_infoframe_pack_only +EXPORT_SYMBOL vmlinux 0x2eec468c devm_memunmap +EXPORT_SYMBOL vmlinux 0x2ef3d1a3 xfrm_trans_queue +EXPORT_SYMBOL vmlinux 0x2f03fc4b security_secmark_refcount_inc +EXPORT_SYMBOL vmlinux 0x2f0616f2 dup_iter +EXPORT_SYMBOL vmlinux 0x2f1a6d6c __lock_buffer +EXPORT_SYMBOL vmlinux 0x2f23d63f textsearch_register +EXPORT_SYMBOL vmlinux 0x2f2e91b2 security_ib_alloc_security +EXPORT_SYMBOL vmlinux 0x2f333aab imx_scu_get_handle +EXPORT_SYMBOL vmlinux 0x2f341eab scm_fp_dup +EXPORT_SYMBOL vmlinux 0x2f384db3 acpi_is_video_device +EXPORT_SYMBOL vmlinux 0x2f538d4c config_item_get_unless_zero +EXPORT_SYMBOL vmlinux 0x2f6af630 __tcf_em_tree_match +EXPORT_SYMBOL vmlinux 0x2f70fb57 netlbl_calipso_ops_register +EXPORT_SYMBOL vmlinux 0x2f72cd2b pci_request_regions_exclusive +EXPORT_SYMBOL vmlinux 0x2f7754a8 dma_pool_free +EXPORT_SYMBOL vmlinux 0x2f9c794a call_netdevice_notifiers +EXPORT_SYMBOL vmlinux 0x2faabb89 pcie_set_readrq +EXPORT_SYMBOL vmlinux 0x2fac5ce1 _copy_from_iter_full +EXPORT_SYMBOL vmlinux 0x2fb6de5d add_device_randomness +EXPORT_SYMBOL vmlinux 0x2fbffa97 simple_rename +EXPORT_SYMBOL vmlinux 0x2fcda446 softnet_data +EXPORT_SYMBOL vmlinux 0x2fdb8344 inet_frag_kill +EXPORT_SYMBOL vmlinux 0x2fdc1615 inet_gro_receive +EXPORT_SYMBOL vmlinux 0x2fe252cc unregister_inet6addr_notifier +EXPORT_SYMBOL vmlinux 0x2fe330fd blk_queue_io_opt +EXPORT_SYMBOL vmlinux 0x2fe5b535 qcom_scm_assign_mem +EXPORT_SYMBOL vmlinux 0x2feaddc5 bioset_init_from_src +EXPORT_SYMBOL vmlinux 0x2feb9961 devm_backlight_device_unregister +EXPORT_SYMBOL vmlinux 0x2ff3ffc7 __pskb_pull_tail +EXPORT_SYMBOL vmlinux 0x3026f44b mr_rtm_dumproute +EXPORT_SYMBOL vmlinux 0x303ca5a6 __put_cred +EXPORT_SYMBOL vmlinux 0x3056a64b vga_put +EXPORT_SYMBOL vmlinux 0x30768c7b __inet_hash +EXPORT_SYMBOL vmlinux 0x30773c91 stop_tty +EXPORT_SYMBOL vmlinux 0x3096be16 names_cachep +EXPORT_SYMBOL vmlinux 0x30a80826 __kfifo_from_user +EXPORT_SYMBOL vmlinux 0x30a8e679 generic_file_read_iter +EXPORT_SYMBOL vmlinux 0x30aa89a5 tcp_poll +EXPORT_SYMBOL vmlinux 0x30acfde9 hsiphash_2u32 +EXPORT_SYMBOL vmlinux 0x30af45a1 ZSTD_initCStream +EXPORT_SYMBOL vmlinux 0x30bd5ee0 qman_destroy_fq +EXPORT_SYMBOL vmlinux 0x30e618cc blk_queue_update_dma_alignment +EXPORT_SYMBOL vmlinux 0x30e74134 tty_termios_copy_hw +EXPORT_SYMBOL vmlinux 0x30f7ff71 skb_mac_gso_segment +EXPORT_SYMBOL vmlinux 0x3100cff9 lockref_get_or_lock +EXPORT_SYMBOL vmlinux 0x3102d70b frontswap_curr_pages +EXPORT_SYMBOL vmlinux 0x311670ed scsi_host_put +EXPORT_SYMBOL vmlinux 0x3126a9e8 siphash_1u64 +EXPORT_SYMBOL vmlinux 0x312acc26 of_device_alloc +EXPORT_SYMBOL vmlinux 0x313fbac7 skb_flow_dissect_meta +EXPORT_SYMBOL vmlinux 0x3145216f pci_dev_present +EXPORT_SYMBOL vmlinux 0x315e0edb send_sig +EXPORT_SYMBOL vmlinux 0x317d3f93 jbd2_journal_errno +EXPORT_SYMBOL vmlinux 0x318c36c5 dcb_ieee_getapp_mask +EXPORT_SYMBOL vmlinux 0x318cd619 netpoll_poll_enable +EXPORT_SYMBOL vmlinux 0x318d6fec mutex_is_locked +EXPORT_SYMBOL vmlinux 0x318f67e4 sock_no_accept +EXPORT_SYMBOL vmlinux 0x319d493d proc_dostring +EXPORT_SYMBOL vmlinux 0x31a4767f qcom_scm_hdcp_available +EXPORT_SYMBOL vmlinux 0x31d3e2db dquot_alloc +EXPORT_SYMBOL vmlinux 0x31d97356 flow_rule_match_enc_opts +EXPORT_SYMBOL vmlinux 0x31dacc8c filemap_check_errors +EXPORT_SYMBOL vmlinux 0x31f3e767 vfs_create_mount +EXPORT_SYMBOL vmlinux 0x3202dd2e pnp_is_active +EXPORT_SYMBOL vmlinux 0x320525cb __register_chrdev +EXPORT_SYMBOL vmlinux 0x320e6a12 open_exec +EXPORT_SYMBOL vmlinux 0x322b3ab7 inode_sub_bytes +EXPORT_SYMBOL vmlinux 0x32394d4b qe_issue_cmd +EXPORT_SYMBOL vmlinux 0x326d6959 md_unregister_thread +EXPORT_SYMBOL vmlinux 0x3271a12a check_disk_change +EXPORT_SYMBOL vmlinux 0x327c84bf vme_lm_attach +EXPORT_SYMBOL vmlinux 0x3283e6b0 prandom_seed_full_state +EXPORT_SYMBOL vmlinux 0x3286fd09 of_translate_address +EXPORT_SYMBOL vmlinux 0x3287a24b rdmacg_try_charge +EXPORT_SYMBOL vmlinux 0x328be5cd mdiobus_setup_mdiodev_from_board_info +EXPORT_SYMBOL vmlinux 0x329619e7 buffer_migrate_page +EXPORT_SYMBOL vmlinux 0x32b5f5c9 filemap_range_has_page +EXPORT_SYMBOL vmlinux 0x32b8f072 mmc_register_driver +EXPORT_SYMBOL vmlinux 0x32cccd02 dquot_quota_sync +EXPORT_SYMBOL vmlinux 0x32ce3777 radix_tree_preload +EXPORT_SYMBOL vmlinux 0x32e2c7d7 netdev_set_tc_queue +EXPORT_SYMBOL vmlinux 0x32e6f1a0 acpi_video_backlight_string +EXPORT_SYMBOL vmlinux 0x32efa4ec backlight_device_set_brightness +EXPORT_SYMBOL vmlinux 0x3300f41b dev_get_phys_port_id +EXPORT_SYMBOL vmlinux 0x33037fd8 logic_outl +EXPORT_SYMBOL vmlinux 0x335b06b5 vfs_clone_file_range +EXPORT_SYMBOL vmlinux 0x336998f1 ipv6_dev_mc_inc +EXPORT_SYMBOL vmlinux 0x33736a1d __genradix_ptr_alloc +EXPORT_SYMBOL vmlinux 0x3375b7c4 phy_support_asym_pause +EXPORT_SYMBOL vmlinux 0x3385b32b unregister_tcf_proto_ops +EXPORT_SYMBOL vmlinux 0x338cacb2 netdev_unbind_sb_channel +EXPORT_SYMBOL vmlinux 0x338d37a5 page_pool_destroy +EXPORT_SYMBOL vmlinux 0x33b164ea scsi_host_lookup +EXPORT_SYMBOL vmlinux 0x33ce3c3e kernel_sendpage +EXPORT_SYMBOL vmlinux 0x33f0768c cpufreq_quick_get_max +EXPORT_SYMBOL vmlinux 0x33fcf44a __kfifo_out_r +EXPORT_SYMBOL vmlinux 0x34241364 udp_lib_getsockopt +EXPORT_SYMBOL vmlinux 0x3429f763 free_xenballooned_pages +EXPORT_SYMBOL vmlinux 0x344ca9d4 qman_init_fq +EXPORT_SYMBOL vmlinux 0x3464b0c7 sock_edemux +EXPORT_SYMBOL vmlinux 0x346a17d2 dm_io +EXPORT_SYMBOL vmlinux 0x346bb806 km_report +EXPORT_SYMBOL vmlinux 0x3471b268 vfs_dedupe_file_range +EXPORT_SYMBOL vmlinux 0x348d470d tcf_chain_put_by_act +EXPORT_SYMBOL vmlinux 0x349031fe of_root +EXPORT_SYMBOL vmlinux 0x349ac524 __tracepoint_dma_fence_emit +EXPORT_SYMBOL vmlinux 0x349cba85 strchr +EXPORT_SYMBOL vmlinux 0x34a1f7e3 acpi_processor_get_psd +EXPORT_SYMBOL vmlinux 0x34a75e16 dev_uc_sync_multiple +EXPORT_SYMBOL vmlinux 0x34c4c5c7 cred_fscmp +EXPORT_SYMBOL vmlinux 0x34da07f5 phy_get_eee_err +EXPORT_SYMBOL vmlinux 0x34f3484e security_tun_dev_attach_queue +EXPORT_SYMBOL vmlinux 0x34fe35c2 blk_rq_init +EXPORT_SYMBOL vmlinux 0x35001f5b flow_rule_match_meta +EXPORT_SYMBOL vmlinux 0x350ea558 dma_fence_default_wait +EXPORT_SYMBOL vmlinux 0x3517383e register_reboot_notifier +EXPORT_SYMBOL vmlinux 0x3539f11b match_strlcpy +EXPORT_SYMBOL vmlinux 0x356461c8 rtc_time64_to_tm +EXPORT_SYMBOL vmlinux 0x357755f5 udp6_csum_init +EXPORT_SYMBOL vmlinux 0x3585442b pci_pme_active +EXPORT_SYMBOL vmlinux 0x358bd54b phy_suspend +EXPORT_SYMBOL vmlinux 0x35932832 netdev_upper_dev_unlink +EXPORT_SYMBOL vmlinux 0x359ec42f _raw_read_trylock +EXPORT_SYMBOL vmlinux 0x35a2ad40 blk_pm_runtime_init +EXPORT_SYMBOL vmlinux 0x35a88f28 zlib_inflateInit2 +EXPORT_SYMBOL vmlinux 0x35c82986 devm_extcon_register_notifier_all +EXPORT_SYMBOL vmlinux 0x35d0d981 scsi_device_get +EXPORT_SYMBOL vmlinux 0x35dc3a30 set_wb_congested +EXPORT_SYMBOL vmlinux 0x35e31f31 textsearch_prepare +EXPORT_SYMBOL vmlinux 0x35e6c8fb from_kgid +EXPORT_SYMBOL vmlinux 0x35ec1734 sg_miter_skip +EXPORT_SYMBOL vmlinux 0x35f11040 __blkdev_issue_zeroout +EXPORT_SYMBOL vmlinux 0x35fe8f31 input_mt_report_slot_state +EXPORT_SYMBOL vmlinux 0x36003ca1 build_skb_around +EXPORT_SYMBOL vmlinux 0x3605fc68 __ip_select_ident +EXPORT_SYMBOL vmlinux 0x3608e76e vfs_ioc_fssetxattr_check +EXPORT_SYMBOL vmlinux 0x360b1afe probe_irq_mask +EXPORT_SYMBOL vmlinux 0x36501e50 devm_ioremap +EXPORT_SYMBOL vmlinux 0x365acda7 set_normalized_timespec64 +EXPORT_SYMBOL vmlinux 0x365e7911 kstrdup_const +EXPORT_SYMBOL vmlinux 0x367ea197 __f_setown +EXPORT_SYMBOL vmlinux 0x36861ff2 qdisc_class_hash_grow +EXPORT_SYMBOL vmlinux 0x368ae564 __ethtool_get_link_ksettings +EXPORT_SYMBOL vmlinux 0x36a1fff2 mmc_can_gpio_cd +EXPORT_SYMBOL vmlinux 0x36b75bd0 sock_bind_add +EXPORT_SYMBOL vmlinux 0x36cf1c08 xfrm_unregister_type +EXPORT_SYMBOL vmlinux 0x36dc992e vme_unregister_driver +EXPORT_SYMBOL vmlinux 0x37015b78 flow_rule_match_mpls +EXPORT_SYMBOL vmlinux 0x37110088 remove_wait_queue +EXPORT_SYMBOL vmlinux 0x371e7f3a ZSTD_initCDict +EXPORT_SYMBOL vmlinux 0x372ee694 __set_page_dirty_nobuffers +EXPORT_SYMBOL vmlinux 0x373112d6 noop_qdisc +EXPORT_SYMBOL vmlinux 0x3737d9a9 ZSTD_DStreamWorkspaceBound +EXPORT_SYMBOL vmlinux 0x3744cf36 vmalloc_to_pfn +EXPORT_SYMBOL vmlinux 0x375236cd __xfrm_state_delete +EXPORT_SYMBOL vmlinux 0x3755f990 gf128mul_init_64k_bbe +EXPORT_SYMBOL vmlinux 0x37746fde ZSTD_initDStream +EXPORT_SYMBOL vmlinux 0x377d4fd4 alloc_fddidev +EXPORT_SYMBOL vmlinux 0x377d8004 acpi_error +EXPORT_SYMBOL vmlinux 0x378f426b __ip4_datagram_connect +EXPORT_SYMBOL vmlinux 0x37a9f0fe eth_commit_mac_addr_change +EXPORT_SYMBOL vmlinux 0x37af3190 dm_table_run_md_queue_async +EXPORT_SYMBOL vmlinux 0x37b45611 sock_alloc_file +EXPORT_SYMBOL vmlinux 0x37bb41dc scsi_block_requests +EXPORT_SYMBOL vmlinux 0x37befc70 jiffies_to_msecs +EXPORT_SYMBOL vmlinux 0x37db8f19 dmi_get_date +EXPORT_SYMBOL vmlinux 0x37dc3292 param_set_invbool +EXPORT_SYMBOL vmlinux 0x37ddcfb7 set_disk_ro +EXPORT_SYMBOL vmlinux 0x37f383ad nf_unregister_net_hook +EXPORT_SYMBOL vmlinux 0x37fef94a imx_scu_enable_general_irq_channel +EXPORT_SYMBOL vmlinux 0x38195458 serial8250_register_8250_port +EXPORT_SYMBOL vmlinux 0x381a798a setup_max_cpus +EXPORT_SYMBOL vmlinux 0x383253c4 ndo_dflt_fdb_del +EXPORT_SYMBOL vmlinux 0x383e3d85 of_phy_get_and_connect +EXPORT_SYMBOL vmlinux 0x3854fdfa vme_bus_error_handler +EXPORT_SYMBOL vmlinux 0x38589d57 tcf_em_unregister +EXPORT_SYMBOL vmlinux 0x3865477b jbd2_journal_destroy +EXPORT_SYMBOL vmlinux 0x386ea33c clocksource_change_rating +EXPORT_SYMBOL vmlinux 0x38869d88 kstat +EXPORT_SYMBOL vmlinux 0x388aa3c9 neigh_proc_dointvec_ms_jiffies +EXPORT_SYMBOL vmlinux 0x3891ffc8 ecryptfs_fill_auth_tok +EXPORT_SYMBOL vmlinux 0x389617b0 LZ4_decompress_fast_continue +EXPORT_SYMBOL vmlinux 0x38a3f958 sock_enable_timestamps +EXPORT_SYMBOL vmlinux 0x38a71b7e pci_free_resource_list +EXPORT_SYMBOL vmlinux 0x38a9f7c5 in6addr_loopback +EXPORT_SYMBOL vmlinux 0x38e46431 mempool_exit +EXPORT_SYMBOL vmlinux 0x39085cbc of_graph_parse_endpoint +EXPORT_SYMBOL vmlinux 0x391a62e2 vme_slot_num +EXPORT_SYMBOL vmlinux 0x3928b0c5 nd_pfn_validate +EXPORT_SYMBOL vmlinux 0x3928efe9 __per_cpu_offset +EXPORT_SYMBOL vmlinux 0x392b1fea wait_for_completion_io +EXPORT_SYMBOL vmlinux 0x392e26d9 dquot_quota_on_mount +EXPORT_SYMBOL vmlinux 0x393800a1 of_device_is_available +EXPORT_SYMBOL vmlinux 0x3939f8f0 rfkill_pause_polling +EXPORT_SYMBOL vmlinux 0x39461d6a in_egroup_p +EXPORT_SYMBOL vmlinux 0x3949b26c xfrm_dst_ifdown +EXPORT_SYMBOL vmlinux 0x394a1e11 phy_sfp_attach +EXPORT_SYMBOL vmlinux 0x3955fcf6 __kfifo_in_r +EXPORT_SYMBOL vmlinux 0x39589678 netdev_txq_to_tc +EXPORT_SYMBOL vmlinux 0x395d9fdf devm_request_threaded_irq +EXPORT_SYMBOL vmlinux 0x396288a7 get_fs_type +EXPORT_SYMBOL vmlinux 0x396ea62d release_sock +EXPORT_SYMBOL vmlinux 0x39991865 icmp_global_allow +EXPORT_SYMBOL vmlinux 0x399ad043 __kfifo_dma_out_finish_r +EXPORT_SYMBOL vmlinux 0x39a09f19 mdiobus_is_registered_device +EXPORT_SYMBOL vmlinux 0x39a5d76d udp_sk_rx_dst_set +EXPORT_SYMBOL vmlinux 0x39b10f82 ip_tunnel_parse_protocol +EXPORT_SYMBOL vmlinux 0x39b52d19 __bitmap_and +EXPORT_SYMBOL vmlinux 0x39b8d49c cpu_rmap_update +EXPORT_SYMBOL vmlinux 0x39cdf9b8 of_find_node_with_property +EXPORT_SYMBOL vmlinux 0x39d146cd __netif_schedule +EXPORT_SYMBOL vmlinux 0x39d9fbd3 devm_request_any_context_irq +EXPORT_SYMBOL vmlinux 0x39f9769f irq_stat +EXPORT_SYMBOL vmlinux 0x3a050aab inet_getname +EXPORT_SYMBOL vmlinux 0x3a13f54a sgl_alloc +EXPORT_SYMBOL vmlinux 0x3a2ec949 proc_create +EXPORT_SYMBOL vmlinux 0x3a2f6702 sg_alloc_table +EXPORT_SYMBOL vmlinux 0x3a49d490 mipi_dsi_compression_mode +EXPORT_SYMBOL vmlinux 0x3a4f9d28 rng_is_initialized +EXPORT_SYMBOL vmlinux 0x3a75073b scsi_host_busy +EXPORT_SYMBOL vmlinux 0x3a87677b unix_attach_fds +EXPORT_SYMBOL vmlinux 0x3a9359a9 devm_request_resource +EXPORT_SYMBOL vmlinux 0x3a996607 bio_integrity_add_page +EXPORT_SYMBOL vmlinux 0x3ab3be5e vfs_rmdir +EXPORT_SYMBOL vmlinux 0x3ab7b1cc scsi_set_sense_field_pointer +EXPORT_SYMBOL vmlinux 0x3abf08ef touch_atime +EXPORT_SYMBOL vmlinux 0x3ad2824e inet6_bind +EXPORT_SYMBOL vmlinux 0x3ad5cda3 lockref_get_not_zero +EXPORT_SYMBOL vmlinux 0x3ad7a5d5 acpi_evaluate_reference +EXPORT_SYMBOL vmlinux 0x3ada78a4 build_skb +EXPORT_SYMBOL vmlinux 0x3ada9e06 acpi_check_region +EXPORT_SYMBOL vmlinux 0x3adedd4c blk_queue_max_segments +EXPORT_SYMBOL vmlinux 0x3af09621 tcp_gro_complete +EXPORT_SYMBOL vmlinux 0x3aff3200 acpi_evaluate_object_typed +EXPORT_SYMBOL vmlinux 0x3b1266c0 no_llseek +EXPORT_SYMBOL vmlinux 0x3b20fb95 dma_fence_remove_callback +EXPORT_SYMBOL vmlinux 0x3b2a7205 md_write_inc +EXPORT_SYMBOL vmlinux 0x3b321462 LZ4_setStreamDecode +EXPORT_SYMBOL vmlinux 0x3b42d5ec cdev_alloc +EXPORT_SYMBOL vmlinux 0x3b644591 __bitmap_shift_left +EXPORT_SYMBOL vmlinux 0x3b6b3a8f flow_rule_match_enc_ipv4_addrs +EXPORT_SYMBOL vmlinux 0x3b9144c9 acpi_get_current_resources +EXPORT_SYMBOL vmlinux 0x3b917c4a is_subdir +EXPORT_SYMBOL vmlinux 0x3ba472c9 skb_checksum +EXPORT_SYMBOL vmlinux 0x3bb0a342 uart_write_wakeup +EXPORT_SYMBOL vmlinux 0x3bbd7237 fwnode_graph_parse_endpoint +EXPORT_SYMBOL vmlinux 0x3bc9fbc5 dev_getbyhwaddr_rcu +EXPORT_SYMBOL vmlinux 0x3bdbe959 nonseekable_open +EXPORT_SYMBOL vmlinux 0x3bdf9a4d file_check_and_advance_wb_err +EXPORT_SYMBOL vmlinux 0x3be719c4 pci_bus_read_dev_vendor_id +EXPORT_SYMBOL vmlinux 0x3be7643e security_xfrm_policy_free +EXPORT_SYMBOL vmlinux 0x3c01807a fwnode_get_mac_address +EXPORT_SYMBOL vmlinux 0x3c185c61 page_put_link +EXPORT_SYMBOL vmlinux 0x3c3215c4 qe_immr +EXPORT_SYMBOL vmlinux 0x3c3e2d01 __page_frag_cache_drain +EXPORT_SYMBOL vmlinux 0x3c3fce39 __local_bh_enable_ip +EXPORT_SYMBOL vmlinux 0x3c3ff9fd sprintf +EXPORT_SYMBOL vmlinux 0x3c408395 md_error +EXPORT_SYMBOL vmlinux 0x3c41746b tty_port_hangup +EXPORT_SYMBOL vmlinux 0x3c59facc flow_rule_match_cvlan +EXPORT_SYMBOL vmlinux 0x3c5cd721 tcf_exts_dump +EXPORT_SYMBOL vmlinux 0x3c61159c pci_release_resource +EXPORT_SYMBOL vmlinux 0x3c69c53b dcache_dir_open +EXPORT_SYMBOL vmlinux 0x3c714d84 pm860x_reg_write +EXPORT_SYMBOL vmlinux 0x3c72a314 iterate_supers_type +EXPORT_SYMBOL vmlinux 0x3c80c06c kstrtoull +EXPORT_SYMBOL vmlinux 0x3c963b58 __frontswap_store +EXPORT_SYMBOL vmlinux 0x3c9d3a38 configfs_depend_item +EXPORT_SYMBOL vmlinux 0x3cb53312 proc_symlink +EXPORT_SYMBOL vmlinux 0x3cc21793 pci_lost_interrupt +EXPORT_SYMBOL vmlinux 0x3cd9ed83 logic_insw +EXPORT_SYMBOL vmlinux 0x3ce07b0d dcb_ieee_getapp_dscp_prio_mask_map +EXPORT_SYMBOL vmlinux 0x3ce4ca6f disable_irq +EXPORT_SYMBOL vmlinux 0x3d02cd70 dma_fence_signal_locked +EXPORT_SYMBOL vmlinux 0x3d06b424 mmc_can_gpio_ro +EXPORT_SYMBOL vmlinux 0x3d09df32 pmem_should_map_pages +EXPORT_SYMBOL vmlinux 0x3d210724 gen_pool_dma_zalloc_align +EXPORT_SYMBOL vmlinux 0x3d240764 ip6_frag_next +EXPORT_SYMBOL vmlinux 0x3d24174a security_path_mknod +EXPORT_SYMBOL vmlinux 0x3d524042 skb_get_hash_perturb +EXPORT_SYMBOL vmlinux 0x3d5652cb __skb_try_recv_datagram +EXPORT_SYMBOL vmlinux 0x3d56e7b3 utf8_unload +EXPORT_SYMBOL vmlinux 0x3d5714f2 xfrm6_protocol_deregister +EXPORT_SYMBOL vmlinux 0x3d59297e neigh_direct_output +EXPORT_SYMBOL vmlinux 0x3d5bb3fd refcount_dec_and_lock_irqsave +EXPORT_SYMBOL vmlinux 0x3d62b904 dev_get_by_name_rcu +EXPORT_SYMBOL vmlinux 0x3d74f20c blk_set_queue_depth +EXPORT_SYMBOL vmlinux 0x3d786b05 rpmh_write_batch +EXPORT_SYMBOL vmlinux 0x3d9ee9f0 clear_page +EXPORT_SYMBOL vmlinux 0x3da58bbc always_delete_dentry +EXPORT_SYMBOL vmlinux 0x3dabf271 memcg_sockets_enabled_key +EXPORT_SYMBOL vmlinux 0x3dad9978 cancel_delayed_work +EXPORT_SYMBOL vmlinux 0x3dafc384 touchscreen_report_pos +EXPORT_SYMBOL vmlinux 0x3db54717 neigh_app_ns +EXPORT_SYMBOL vmlinux 0x3dba6b3f lock_rename +EXPORT_SYMBOL vmlinux 0x3dbf694c migrate_vma_pages +EXPORT_SYMBOL vmlinux 0x3dc619d3 swake_up_locked +EXPORT_SYMBOL vmlinux 0x3dcb88a0 irq_set_handler_data +EXPORT_SYMBOL vmlinux 0x3dd29bbc dma_direct_map_page +EXPORT_SYMBOL vmlinux 0x3dd3f054 xudma_rchan_get_id +EXPORT_SYMBOL vmlinux 0x3dd9b230 proc_dointvec_userhz_jiffies +EXPORT_SYMBOL vmlinux 0x3de4a22d register_netdevice_notifier_net +EXPORT_SYMBOL vmlinux 0x3de73c17 dcb_getapp +EXPORT_SYMBOL vmlinux 0x3df36aff register_md_personality +EXPORT_SYMBOL vmlinux 0x3dfb86b9 resource_list_create_entry +EXPORT_SYMBOL vmlinux 0x3dfc897c seq_hlist_start_head +EXPORT_SYMBOL vmlinux 0x3e037e42 iov_iter_advance +EXPORT_SYMBOL vmlinux 0x3e0679d9 kobject_init +EXPORT_SYMBOL vmlinux 0x3e0b3476 iget_failed +EXPORT_SYMBOL vmlinux 0x3e21f7f0 request_firmware_into_buf +EXPORT_SYMBOL vmlinux 0x3e2b0ba6 groups_alloc +EXPORT_SYMBOL vmlinux 0x3e57f298 mdio_device_reset +EXPORT_SYMBOL vmlinux 0x3e71a5a7 simple_get_link +EXPORT_SYMBOL vmlinux 0x3e742a06 ip6_find_1stfragopt +EXPORT_SYMBOL vmlinux 0x3e9110fa __hw_addr_unsync +EXPORT_SYMBOL vmlinux 0x3e916620 serio_interrupt +EXPORT_SYMBOL vmlinux 0x3e9686d3 amba_release_regions +EXPORT_SYMBOL vmlinux 0x3e9a6b3c jbd2_journal_get_create_access +EXPORT_SYMBOL vmlinux 0x3e9e798a generic_remap_file_range_prep +EXPORT_SYMBOL vmlinux 0x3ebc5486 send_sig_info +EXPORT_SYMBOL vmlinux 0x3ec6b981 of_graph_get_remote_endpoint +EXPORT_SYMBOL vmlinux 0x3ecbe8fc compat_ip_setsockopt +EXPORT_SYMBOL vmlinux 0x3ee9c1fa dma_direct_unmap_sg +EXPORT_SYMBOL vmlinux 0x3eeb2322 __wake_up +EXPORT_SYMBOL vmlinux 0x3ef65b33 km_query +EXPORT_SYMBOL vmlinux 0x3efe1703 phy_unregister_fixup_for_id +EXPORT_SYMBOL vmlinux 0x3f0d7412 qdisc_hash_add +EXPORT_SYMBOL vmlinux 0x3f0eabd2 xxh64_update +EXPORT_SYMBOL vmlinux 0x3f139ec8 __vlan_find_dev_deep_rcu +EXPORT_SYMBOL vmlinux 0x3f40138c ipv6_dev_mc_dec +EXPORT_SYMBOL vmlinux 0x3f4547a7 put_unused_fd +EXPORT_SYMBOL vmlinux 0x3f4bd846 gen_pool_first_fit_order_align +EXPORT_SYMBOL vmlinux 0x3f50b520 nf_unregister_sockopt +EXPORT_SYMBOL vmlinux 0x3f545cad cpumask_any_and_distribute +EXPORT_SYMBOL vmlinux 0x3f6667ed netdev_boot_setup_check +EXPORT_SYMBOL vmlinux 0x3f85776b sk_common_release +EXPORT_SYMBOL vmlinux 0x3f89071b security_ib_pkey_access +EXPORT_SYMBOL vmlinux 0x3fa527b8 clk_hw_register_clkdev +EXPORT_SYMBOL vmlinux 0x3fb561fe ppp_input_error +EXPORT_SYMBOL vmlinux 0x3fb6c1f0 abx500_get_register_page_interruptible +EXPORT_SYMBOL vmlinux 0x3fbe037a __close_fd_get_file +EXPORT_SYMBOL vmlinux 0x3fbef639 __d_lookup_done +EXPORT_SYMBOL vmlinux 0x3fbf3c89 vme_slave_set +EXPORT_SYMBOL vmlinux 0x3fcb0839 mmc_cqe_post_req +EXPORT_SYMBOL vmlinux 0x3fcc3bd2 iget5_locked +EXPORT_SYMBOL vmlinux 0x3fd0acb6 param_get_byte +EXPORT_SYMBOL vmlinux 0x3fd78f3b register_chrdev_region +EXPORT_SYMBOL vmlinux 0x3fe2ccbe memweight +EXPORT_SYMBOL vmlinux 0x3fe63f62 sk_ns_capable +EXPORT_SYMBOL vmlinux 0x3fed3d61 reuseport_detach_sock +EXPORT_SYMBOL vmlinux 0x400e0abf nf_register_queue_handler +EXPORT_SYMBOL vmlinux 0x4036e163 compat_ip_getsockopt +EXPORT_SYMBOL vmlinux 0x40520eba dquot_quota_on +EXPORT_SYMBOL vmlinux 0x4053769c i2c_add_adapter +EXPORT_SYMBOL vmlinux 0x40562235 register_mii_timestamper +EXPORT_SYMBOL vmlinux 0x4065571a tty_port_close_end +EXPORT_SYMBOL vmlinux 0x40798c64 kill_pgrp +EXPORT_SYMBOL vmlinux 0x40973662 sysctl_udp_mem +EXPORT_SYMBOL vmlinux 0x409873e3 tty_termios_baud_rate +EXPORT_SYMBOL vmlinux 0x409bcb62 mutex_unlock +EXPORT_SYMBOL vmlinux 0x40a9b349 vzalloc +EXPORT_SYMBOL vmlinux 0x40c00a4c tso_count_descs +EXPORT_SYMBOL vmlinux 0x40c7247c si_meminfo +EXPORT_SYMBOL vmlinux 0x40d04664 console_trylock +EXPORT_SYMBOL vmlinux 0x40d59096 unregister_restart_handler +EXPORT_SYMBOL vmlinux 0x40d84a37 ZSTD_getFrameParams +EXPORT_SYMBOL vmlinux 0x40e0353a fb_set_var +EXPORT_SYMBOL vmlinux 0x40e4547c dev_close +EXPORT_SYMBOL vmlinux 0x40e5d3ad mr_table_dump +EXPORT_SYMBOL vmlinux 0x4108533a inode_io_list_del +EXPORT_SYMBOL vmlinux 0x4110075a netdev_get_xmit_slave +EXPORT_SYMBOL vmlinux 0x411cde2c mfd_cell_disable +EXPORT_SYMBOL vmlinux 0x411ce7e1 mnt_drop_write_file +EXPORT_SYMBOL vmlinux 0x41256eef sock_wfree +EXPORT_SYMBOL vmlinux 0x4130cb2b md_check_no_bitmap +EXPORT_SYMBOL vmlinux 0x4133e98e of_get_mac_address +EXPORT_SYMBOL vmlinux 0x413ceb31 inet_csk_reqsk_queue_drop_and_put +EXPORT_SYMBOL vmlinux 0x4145992d padata_start +EXPORT_SYMBOL vmlinux 0x41482d8b strndup_user +EXPORT_SYMBOL vmlinux 0x4152b902 phy_reset_after_clk_enable +EXPORT_SYMBOL vmlinux 0x41773486 pci_scan_bus +EXPORT_SYMBOL vmlinux 0x4188d439 neigh_rand_reach_time +EXPORT_SYMBOL vmlinux 0x4198ca95 __do_once_done +EXPORT_SYMBOL vmlinux 0x419b9107 follow_down +EXPORT_SYMBOL vmlinux 0x41a318dc netif_tx_wake_queue +EXPORT_SYMBOL vmlinux 0x41c7d528 sock_alloc +EXPORT_SYMBOL vmlinux 0x41d0e4da nf_ip_checksum +EXPORT_SYMBOL vmlinux 0x41de900b tcp_v4_syn_recv_sock +EXPORT_SYMBOL vmlinux 0x41efdeaf radix_tree_lookup_slot +EXPORT_SYMBOL vmlinux 0x4204bad4 pci_enable_device +EXPORT_SYMBOL vmlinux 0x4209564c blkdev_issue_discard +EXPORT_SYMBOL vmlinux 0x420b7bb0 vfs_copy_file_range +EXPORT_SYMBOL vmlinux 0x42160169 flush_workqueue +EXPORT_SYMBOL vmlinux 0x4223e799 input_mt_get_slot_by_key +EXPORT_SYMBOL vmlinux 0x4227875a __sk_dst_check +EXPORT_SYMBOL vmlinux 0x4230a8d7 sg_nents_for_len +EXPORT_SYMBOL vmlinux 0x4248ae3c single_task_running +EXPORT_SYMBOL vmlinux 0x424d3620 zlib_inflateIncomp +EXPORT_SYMBOL vmlinux 0x425187b6 mark_buffer_dirty_inode +EXPORT_SYMBOL vmlinux 0x42578e80 acpi_get_type +EXPORT_SYMBOL vmlinux 0x4260a4dd bio_endio +EXPORT_SYMBOL vmlinux 0x4260d92b __udp_disconnect +EXPORT_SYMBOL vmlinux 0x42733250 tc_setup_cb_destroy +EXPORT_SYMBOL vmlinux 0x42919f31 jbd2_journal_dirty_metadata +EXPORT_SYMBOL vmlinux 0x42a36115 seq_hex_dump +EXPORT_SYMBOL vmlinux 0x42ae9d0a tcp_v4_send_check +EXPORT_SYMBOL vmlinux 0x42bed8d4 unix_gc_lock +EXPORT_SYMBOL vmlinux 0x42bf3c80 serio_reconnect +EXPORT_SYMBOL vmlinux 0x42c089b6 d_drop +EXPORT_SYMBOL vmlinux 0x42d6bc58 pcix_get_max_mmrbc +EXPORT_SYMBOL vmlinux 0x42d99176 vfs_unlink +EXPORT_SYMBOL vmlinux 0x42e06ef9 phy_do_ioctl_running +EXPORT_SYMBOL vmlinux 0x42e935cc crypto_sha1_finup +EXPORT_SYMBOL vmlinux 0x42efac5b inode_needs_sync +EXPORT_SYMBOL vmlinux 0x42f1b900 fb_pad_unaligned_buffer +EXPORT_SYMBOL vmlinux 0x4302d0eb free_pages +EXPORT_SYMBOL vmlinux 0x430ecc96 ZSTD_initCStream_usingCDict +EXPORT_SYMBOL vmlinux 0x4334dd13 dma_direct_sync_single_for_cpu +EXPORT_SYMBOL vmlinux 0x4336fcca ucs2_as_utf8 +EXPORT_SYMBOL vmlinux 0x433cabfb acpi_decode_pld_buffer +EXPORT_SYMBOL vmlinux 0x4351577a fb_parse_edid +EXPORT_SYMBOL vmlinux 0x43687271 phys_mem_access_prot +EXPORT_SYMBOL vmlinux 0x437a0d6d __sock_tx_timestamp +EXPORT_SYMBOL vmlinux 0x4383ad9a seq_read_iter +EXPORT_SYMBOL vmlinux 0x438610bd security_tun_dev_alloc_security +EXPORT_SYMBOL vmlinux 0x438d76ee inet_csk_complete_hashdance +EXPORT_SYMBOL vmlinux 0x4393909e flush_signals +EXPORT_SYMBOL vmlinux 0x43a22059 from_kprojid_munged +EXPORT_SYMBOL vmlinux 0x43a7ed86 dev_pre_changeaddr_notify +EXPORT_SYMBOL vmlinux 0x43b9c145 udplite_prot +EXPORT_SYMBOL vmlinux 0x43c5d921 skb_find_text +EXPORT_SYMBOL vmlinux 0x43c991ca seq_putc +EXPORT_SYMBOL vmlinux 0x43cf5526 blk_rq_map_kern +EXPORT_SYMBOL vmlinux 0x43df7710 skb_checksum_help +EXPORT_SYMBOL vmlinux 0x43eb8042 dev_uc_unsync +EXPORT_SYMBOL vmlinux 0x43f412a1 tty_port_raise_dtr_rts +EXPORT_SYMBOL vmlinux 0x43fbea75 __neigh_create +EXPORT_SYMBOL vmlinux 0x4403bbd0 imx_sc_misc_set_control +EXPORT_SYMBOL vmlinux 0x441bba52 scsi_register_interface +EXPORT_SYMBOL vmlinux 0x44469a76 crc_ccitt_false_table +EXPORT_SYMBOL vmlinux 0x444897fc mdiobus_write_nested +EXPORT_SYMBOL vmlinux 0x444d7cb9 of_get_cpu_node +EXPORT_SYMBOL vmlinux 0x4453e3fb bd_set_size +EXPORT_SYMBOL vmlinux 0x44614da8 scsi_host_get +EXPORT_SYMBOL vmlinux 0x44624248 inet_csk_prepare_forced_close +EXPORT_SYMBOL vmlinux 0x4462d35e cpufreq_get_hw_max_freq +EXPORT_SYMBOL vmlinux 0x44880b04 locks_free_lock +EXPORT_SYMBOL vmlinux 0x448e9895 kern_unmount +EXPORT_SYMBOL vmlinux 0x44993bee pci_read_vpd +EXPORT_SYMBOL vmlinux 0x449ad0a7 memcmp +EXPORT_SYMBOL vmlinux 0x449c8c99 tcp_simple_retransmit +EXPORT_SYMBOL vmlinux 0x44a6e90a irq_cpu_rmap_add +EXPORT_SYMBOL vmlinux 0x44ae6434 of_get_cpu_state_node +EXPORT_SYMBOL vmlinux 0x44df82ea wait_on_page_bit +EXPORT_SYMBOL vmlinux 0x44e9a829 match_token +EXPORT_SYMBOL vmlinux 0x45006cee default_red +EXPORT_SYMBOL vmlinux 0x45062386 of_mdio_find_bus +EXPORT_SYMBOL vmlinux 0x45081703 ec_get_handle +EXPORT_SYMBOL vmlinux 0x450d9a35 cmd_db_read_slave_id +EXPORT_SYMBOL vmlinux 0x452413a1 qman_alloc_pool_range +EXPORT_SYMBOL vmlinux 0x452ba683 ipv6_ext_hdr +EXPORT_SYMBOL vmlinux 0x453a53bc amba_request_regions +EXPORT_SYMBOL vmlinux 0x453c8403 pci_msi_enabled +EXPORT_SYMBOL vmlinux 0x4548ee81 mdiobus_scan +EXPORT_SYMBOL vmlinux 0x454c0d6b netif_tx_stop_all_queues +EXPORT_SYMBOL vmlinux 0x454f3cfb nvdimm_bus_lock +EXPORT_SYMBOL vmlinux 0x45535485 xxh32_update +EXPORT_SYMBOL vmlinux 0x4559988a vlan_vids_add_by_dev +EXPORT_SYMBOL vmlinux 0x45747f12 vfs_fsync_range +EXPORT_SYMBOL vmlinux 0x4575c9a5 dquot_get_next_id +EXPORT_SYMBOL vmlinux 0x4578f528 __kfifo_to_user +EXPORT_SYMBOL vmlinux 0x45888608 dma_resv_init +EXPORT_SYMBOL vmlinux 0x45d74135 get_mm_exe_file +EXPORT_SYMBOL vmlinux 0x45e69e01 prepare_to_wait_exclusive +EXPORT_SYMBOL vmlinux 0x45ee9ce8 filemap_fault +EXPORT_SYMBOL vmlinux 0x46045dd7 kstrtou8 +EXPORT_SYMBOL vmlinux 0x4608f610 __skb_checksum_complete_head +EXPORT_SYMBOL vmlinux 0x461ac773 kstrtol_from_user +EXPORT_SYMBOL vmlinux 0x461d16ca sg_nents +EXPORT_SYMBOL vmlinux 0x462b9cf0 __tty_alloc_driver +EXPORT_SYMBOL vmlinux 0x463219fb tcp_hashinfo +EXPORT_SYMBOL vmlinux 0x4633383e devm_devfreq_add_device +EXPORT_SYMBOL vmlinux 0x4659b92d of_graph_get_endpoint_count +EXPORT_SYMBOL vmlinux 0x465e24ff ucs2_utf8size +EXPORT_SYMBOL vmlinux 0x46647f5a kern_unmount_array +EXPORT_SYMBOL vmlinux 0x466c14a7 __delay +EXPORT_SYMBOL vmlinux 0x467df16d netdev_rss_key_fill +EXPORT_SYMBOL vmlinux 0x4687f408 ps2_sliced_command +EXPORT_SYMBOL vmlinux 0x4691f416 netif_schedule_queue +EXPORT_SYMBOL vmlinux 0x4698fe8a bman_release +EXPORT_SYMBOL vmlinux 0x469a6ec7 tcp_parse_md5sig_option +EXPORT_SYMBOL vmlinux 0x46a1c525 __brelse +EXPORT_SYMBOL vmlinux 0x46a287ac pci_free_irq_vectors +EXPORT_SYMBOL vmlinux 0x46ab7bcc mipi_dsi_dcs_nop +EXPORT_SYMBOL vmlinux 0x46c47fb6 __node_distance +EXPORT_SYMBOL vmlinux 0x46d76580 is_bad_inode +EXPORT_SYMBOL vmlinux 0x46ec5cf6 unlock_new_inode +EXPORT_SYMBOL vmlinux 0x46f39d86 pci_write_config_byte +EXPORT_SYMBOL vmlinux 0x46ff7d12 qcom_scm_iommu_secure_ptbl_size +EXPORT_SYMBOL vmlinux 0x470612dc fman_port_get_qman_channel_id +EXPORT_SYMBOL vmlinux 0x4706c533 fscrypt_fname_alloc_buffer +EXPORT_SYMBOL vmlinux 0x4715a909 acpi_load_table +EXPORT_SYMBOL vmlinux 0x471a89d4 __put_user_ns +EXPORT_SYMBOL vmlinux 0x471ad310 pagevec_lookup_range_nr_tag +EXPORT_SYMBOL vmlinux 0x472ce8da param_get_ulong +EXPORT_SYMBOL vmlinux 0x473db91f uart_get_baud_rate +EXPORT_SYMBOL vmlinux 0x474cca08 sock_bindtoindex +EXPORT_SYMBOL vmlinux 0x4753c83a __scsi_add_device +EXPORT_SYMBOL vmlinux 0x475d7427 fman_get_rx_extra_headroom +EXPORT_SYMBOL vmlinux 0x475edbd9 tty_set_operations +EXPORT_SYMBOL vmlinux 0x47709e42 free_anon_bdev +EXPORT_SYMBOL vmlinux 0x477c7680 iov_iter_gap_alignment +EXPORT_SYMBOL vmlinux 0x4780d462 qdisc_hash_del +EXPORT_SYMBOL vmlinux 0x479137ca imx_scu_irq_unregister_notifier +EXPORT_SYMBOL vmlinux 0x47939e0d __tasklet_hi_schedule +EXPORT_SYMBOL vmlinux 0x47960bc4 proc_do_large_bitmap +EXPORT_SYMBOL vmlinux 0x479c3c86 find_next_zero_bit +EXPORT_SYMBOL vmlinux 0x47a0cdcb mb_cache_entry_find_next +EXPORT_SYMBOL vmlinux 0x47a414d4 clear_page_dirty_for_io +EXPORT_SYMBOL vmlinux 0x47ad1953 __pagevec_release +EXPORT_SYMBOL vmlinux 0x47b5e86b filemap_fdatawait_range_keep_errors +EXPORT_SYMBOL vmlinux 0x47be92c9 i2c_smbus_write_byte +EXPORT_SYMBOL vmlinux 0x47c65bfc unregister_inet6addr_validator_notifier +EXPORT_SYMBOL vmlinux 0x47c9dc58 netdev_name_node_alt_create +EXPORT_SYMBOL vmlinux 0x47e7dfa4 flow_indr_block_cb_alloc +EXPORT_SYMBOL vmlinux 0x480b0416 clkdev_alloc +EXPORT_SYMBOL vmlinux 0x48193639 acpi_lid_open +EXPORT_SYMBOL vmlinux 0x482927a0 bio_chain +EXPORT_SYMBOL vmlinux 0x4829a47e memcpy +EXPORT_SYMBOL vmlinux 0x4829cf6b fscrypt_enqueue_decrypt_work +EXPORT_SYMBOL vmlinux 0x4837bb10 logic_outsb +EXPORT_SYMBOL vmlinux 0x483ca886 sync_blockdev +EXPORT_SYMBOL vmlinux 0x4841bdee strnchr +EXPORT_SYMBOL vmlinux 0x4846d08c alloc_pages_current +EXPORT_SYMBOL vmlinux 0x4847e597 pcie_relaxed_ordering_enabled +EXPORT_SYMBOL vmlinux 0x4848cfb1 phy_mipi_dphy_get_default_config +EXPORT_SYMBOL vmlinux 0x484f6edf ktime_get_coarse_real_ts64 +EXPORT_SYMBOL vmlinux 0x485100b8 ppp_unit_number +EXPORT_SYMBOL vmlinux 0x4859b8bb rtc_year_days +EXPORT_SYMBOL vmlinux 0x485c285c uart_match_port +EXPORT_SYMBOL vmlinux 0x486075c8 gen_pool_dma_alloc +EXPORT_SYMBOL vmlinux 0x4868f46d dev_get_by_napi_id +EXPORT_SYMBOL vmlinux 0x486e9253 tty_port_open +EXPORT_SYMBOL vmlinux 0x48882dbe netdev_notify_peers +EXPORT_SYMBOL vmlinux 0x48916009 d_alloc +EXPORT_SYMBOL vmlinux 0x489eda10 memset32 +EXPORT_SYMBOL vmlinux 0x489f6e0b rdma_dim +EXPORT_SYMBOL vmlinux 0x489fa133 param_ops_short +EXPORT_SYMBOL vmlinux 0x48a89143 pmem_sector_size +EXPORT_SYMBOL vmlinux 0x48a91171 string_get_size +EXPORT_SYMBOL vmlinux 0x48b1321a get_user_pages_locked +EXPORT_SYMBOL vmlinux 0x48b99a13 vme_lm_free +EXPORT_SYMBOL vmlinux 0x48bb07cc dump_page +EXPORT_SYMBOL vmlinux 0x48c093fb _atomic_dec_and_lock_irqsave +EXPORT_SYMBOL vmlinux 0x48c37adc pcibus_to_node +EXPORT_SYMBOL vmlinux 0x48c42d2b __nla_put +EXPORT_SYMBOL vmlinux 0x48e0cdc3 of_find_backlight +EXPORT_SYMBOL vmlinux 0x48fd0a6f sb_min_blocksize +EXPORT_SYMBOL vmlinux 0x49045426 icmp_err_convert +EXPORT_SYMBOL vmlinux 0x49117473 of_graph_get_port_by_id +EXPORT_SYMBOL vmlinux 0x491429da bio_split +EXPORT_SYMBOL vmlinux 0x491a400f pagecache_isize_extended +EXPORT_SYMBOL vmlinux 0x492a0cab fscrypt_free_inode +EXPORT_SYMBOL vmlinux 0x49309ab5 write_one_page +EXPORT_SYMBOL vmlinux 0x493152f4 i2c_smbus_read_i2c_block_data_or_emulated +EXPORT_SYMBOL vmlinux 0x4939af89 get_task_cred +EXPORT_SYMBOL vmlinux 0x494b9318 blk_integrity_compare +EXPORT_SYMBOL vmlinux 0x49538ae7 d_delete +EXPORT_SYMBOL vmlinux 0x495639fb pci_enable_ptm +EXPORT_SYMBOL vmlinux 0x497610e3 devm_pci_remap_cfgspace +EXPORT_SYMBOL vmlinux 0x498cd333 config_item_init_type_name +EXPORT_SYMBOL vmlinux 0x498e9128 ZSTD_findDecompressedSize +EXPORT_SYMBOL vmlinux 0x4992ca09 input_get_timestamp +EXPORT_SYMBOL vmlinux 0x499c44b3 i2c_smbus_read_byte +EXPORT_SYMBOL vmlinux 0x499f0ecf nd_sb_checksum +EXPORT_SYMBOL vmlinux 0x49b163b8 acpi_bus_scan +EXPORT_SYMBOL vmlinux 0x49b1c6c6 scsi_free_host_dev +EXPORT_SYMBOL vmlinux 0x49e470ae __nlmsg_put +EXPORT_SYMBOL vmlinux 0x49ed86a0 ZSTD_endStream +EXPORT_SYMBOL vmlinux 0x4a00128c abx500_get_chip_id +EXPORT_SYMBOL vmlinux 0x4a3ad70e wait_for_completion_timeout +EXPORT_SYMBOL vmlinux 0x4a477667 md_integrity_add_rdev +EXPORT_SYMBOL vmlinux 0x4a81d18b phy_ethtool_ksettings_get +EXPORT_SYMBOL vmlinux 0x4a850a04 cdrom_check_events +EXPORT_SYMBOL vmlinux 0x4a8b2caa netdev_err +EXPORT_SYMBOL vmlinux 0x4a8c702f __skb_vlan_pop +EXPORT_SYMBOL vmlinux 0x4a96a8eb xxh32_digest +EXPORT_SYMBOL vmlinux 0x4a9d65ed mark_buffer_write_io_error +EXPORT_SYMBOL vmlinux 0x4aa6c955 dec_zone_page_state +EXPORT_SYMBOL vmlinux 0x4ab208ba acpi_walk_resource_buffer +EXPORT_SYMBOL vmlinux 0x4ad54f09 cdrom_number_of_slots +EXPORT_SYMBOL vmlinux 0x4ae54a71 scsi_remove_device +EXPORT_SYMBOL vmlinux 0x4ae8bf8e __vfs_removexattr +EXPORT_SYMBOL vmlinux 0x4aea463f crc32_le_shift +EXPORT_SYMBOL vmlinux 0x4aede49c kernel_sendmsg +EXPORT_SYMBOL vmlinux 0x4af0a2e8 dcb_ieee_getapp_default_prio_mask +EXPORT_SYMBOL vmlinux 0x4afb2238 add_wait_queue +EXPORT_SYMBOL vmlinux 0x4b1109d1 iommu_get_dma_cookie +EXPORT_SYMBOL vmlinux 0x4b232677 vme_bus_num +EXPORT_SYMBOL vmlinux 0x4b26cfd4 backlight_device_register +EXPORT_SYMBOL vmlinux 0x4b4b752a fifo_create_dflt +EXPORT_SYMBOL vmlinux 0x4b4f5601 sget +EXPORT_SYMBOL vmlinux 0x4b533b41 iov_iter_copy_from_user_atomic +EXPORT_SYMBOL vmlinux 0x4b5fd49e dm_kcopyd_do_callback +EXPORT_SYMBOL vmlinux 0x4b6df007 acpi_evaluate_reg +EXPORT_SYMBOL vmlinux 0x4b8778fe pci_scan_root_bus_bridge +EXPORT_SYMBOL vmlinux 0x4b986298 sock_init_data +EXPORT_SYMBOL vmlinux 0x4b9ec9eb pm860x_bulk_read +EXPORT_SYMBOL vmlinux 0x4ba86e0f try_lookup_one_len +EXPORT_SYMBOL vmlinux 0x4bb17a1c param_get_charp +EXPORT_SYMBOL vmlinux 0x4bb4875a vfs_getattr_nosec +EXPORT_SYMBOL vmlinux 0x4bcc2662 mempool_init_node +EXPORT_SYMBOL vmlinux 0x4bdbc583 of_graph_get_next_endpoint +EXPORT_SYMBOL vmlinux 0x4beef02a seg6_hmac_net_init +EXPORT_SYMBOL vmlinux 0x4bef1c67 empty_name +EXPORT_SYMBOL vmlinux 0x4bf3ce6f qman_release_cgrid +EXPORT_SYMBOL vmlinux 0x4c07a7e0 acpi_processor_unregister_performance +EXPORT_SYMBOL vmlinux 0x4c1bbd62 mroute6_is_socket +EXPORT_SYMBOL vmlinux 0x4c1f2914 xfrm6_rcv_encap +EXPORT_SYMBOL vmlinux 0x4c21e48f skb_abort_seq_read +EXPORT_SYMBOL vmlinux 0x4c380ed1 generic_pipe_buf_get +EXPORT_SYMBOL vmlinux 0x4c38d4e0 utf8_strncasecmp_folded +EXPORT_SYMBOL vmlinux 0x4c416eb9 LZ4_decompress_fast +EXPORT_SYMBOL vmlinux 0x4c558e83 __devm_release_region +EXPORT_SYMBOL vmlinux 0x4c56f92c key_type_keyring +EXPORT_SYMBOL vmlinux 0x4c65b860 flow_rule_match_ct +EXPORT_SYMBOL vmlinux 0x4c70753f fman_port_bind +EXPORT_SYMBOL vmlinux 0x4c773887 inet_dgram_connect +EXPORT_SYMBOL vmlinux 0x4c78d7ab pci_bus_alloc_resource +EXPORT_SYMBOL vmlinux 0x4c83d083 mipi_dsi_dcs_set_pixel_format +EXPORT_SYMBOL vmlinux 0x4cb3e86f unix_destruct_scm +EXPORT_SYMBOL vmlinux 0x4cba441d iwe_stream_add_event +EXPORT_SYMBOL vmlinux 0x4cc8ffbf splice_direct_to_actor +EXPORT_SYMBOL vmlinux 0x4ceb6631 ip_mc_check_igmp +EXPORT_SYMBOL vmlinux 0x4d0040a0 cpumask_next_and +EXPORT_SYMBOL vmlinux 0x4d0a15ee dev_uc_add +EXPORT_SYMBOL vmlinux 0x4d0d163d copy_page +EXPORT_SYMBOL vmlinux 0x4d2c7133 acpi_info +EXPORT_SYMBOL vmlinux 0x4d4c11a1 i2c_del_adapter +EXPORT_SYMBOL vmlinux 0x4d536e76 blk_post_runtime_suspend +EXPORT_SYMBOL vmlinux 0x4d65cbd5 csum_ipv6_magic +EXPORT_SYMBOL vmlinux 0x4d6965cd open_with_fake_path +EXPORT_SYMBOL vmlinux 0x4d8420f4 eth_header +EXPORT_SYMBOL vmlinux 0x4d924f20 memremap +EXPORT_SYMBOL vmlinux 0x4d9b652b rb_erase +EXPORT_SYMBOL vmlinux 0x4dbcd660 mii_ethtool_get_link_ksettings +EXPORT_SYMBOL vmlinux 0x4dc3cd33 pci_irq_vector +EXPORT_SYMBOL vmlinux 0x4dca08ee sync_file_get_fence +EXPORT_SYMBOL vmlinux 0x4dd8b078 unlock_page_memcg +EXPORT_SYMBOL vmlinux 0x4de995ec gen_pool_dma_alloc_algo +EXPORT_SYMBOL vmlinux 0x4dead252 inet_csk_delete_keepalive_timer +EXPORT_SYMBOL vmlinux 0x4dec58bd cdrom_open +EXPORT_SYMBOL vmlinux 0x4df02057 crc32_be +EXPORT_SYMBOL vmlinux 0x4df2ea84 gen_estimator_read +EXPORT_SYMBOL vmlinux 0x4dfab6f0 xp_raw_get_data +EXPORT_SYMBOL vmlinux 0x4e19079e lookup_one_len_unlocked +EXPORT_SYMBOL vmlinux 0x4e20bcf8 radix_tree_tag_set +EXPORT_SYMBOL vmlinux 0x4e2e74c1 qcom_scm_io_readl +EXPORT_SYMBOL vmlinux 0x4e3567f7 match_int +EXPORT_SYMBOL vmlinux 0x4e4e5b09 dma_sync_wait +EXPORT_SYMBOL vmlinux 0x4e4ec170 __sync_dirty_buffer +EXPORT_SYMBOL vmlinux 0x4e4f0f16 dma_fence_chain_find_seqno +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 0x4ea25709 dql_reset +EXPORT_SYMBOL vmlinux 0x4eada8f7 security_secid_to_secctx +EXPORT_SYMBOL vmlinux 0x4ebbbc53 blk_stack_limits +EXPORT_SYMBOL vmlinux 0x4ec54e78 bitmap_to_arr32 +EXPORT_SYMBOL vmlinux 0x4eed39fa ipv6_getsockopt +EXPORT_SYMBOL vmlinux 0x4ef96045 nla_put +EXPORT_SYMBOL vmlinux 0x4f11b59d devm_get_clk_from_child +EXPORT_SYMBOL vmlinux 0x4f1cd128 security_tun_dev_create +EXPORT_SYMBOL vmlinux 0x4f2250ba rtc_tm_to_time64 +EXPORT_SYMBOL vmlinux 0x4f2dac2e ipv6_sock_mc_drop +EXPORT_SYMBOL vmlinux 0x4f3ec851 __mdiobus_write +EXPORT_SYMBOL vmlinux 0x4f3feb17 register_cdrom +EXPORT_SYMBOL vmlinux 0x4f4d78c5 LZ4_compress_default +EXPORT_SYMBOL vmlinux 0x4f55166f acpi_set_current_resources +EXPORT_SYMBOL vmlinux 0x4f657feb tty_port_close_start +EXPORT_SYMBOL vmlinux 0x4f77ead4 __skb_checksum +EXPORT_SYMBOL vmlinux 0x4f94a7eb mntget +EXPORT_SYMBOL vmlinux 0x4fb7b9d8 make_kprojid +EXPORT_SYMBOL vmlinux 0x4fbf78aa __ip_queue_xmit +EXPORT_SYMBOL vmlinux 0x4fcb6c76 vm_map_pages_zero +EXPORT_SYMBOL vmlinux 0x50097088 security_tun_dev_free_security +EXPORT_SYMBOL vmlinux 0x5009c71d glob_match +EXPORT_SYMBOL vmlinux 0x5014863d netdev_info +EXPORT_SYMBOL vmlinux 0x5015ec97 phy_find_first +EXPORT_SYMBOL vmlinux 0x5027bde2 acpi_acquire_mutex +EXPORT_SYMBOL vmlinux 0x502bcb54 phy_set_asym_pause +EXPORT_SYMBOL vmlinux 0x502d9005 tcf_em_register +EXPORT_SYMBOL vmlinux 0x5033e161 proto_register +EXPORT_SYMBOL vmlinux 0x50544e25 tcf_action_exec +EXPORT_SYMBOL vmlinux 0x50624917 sha1_init +EXPORT_SYMBOL vmlinux 0x506dff1a __genradix_free +EXPORT_SYMBOL vmlinux 0x5077b933 of_find_matching_node_and_match +EXPORT_SYMBOL vmlinux 0x5081a597 simple_dir_operations +EXPORT_SYMBOL vmlinux 0x50834d34 scsi_scan_target +EXPORT_SYMBOL vmlinux 0x50933dff dquot_alloc_inode +EXPORT_SYMBOL vmlinux 0x50974b43 blk_mq_free_tag_set +EXPORT_SYMBOL vmlinux 0x509b64ea acpi_has_method +EXPORT_SYMBOL vmlinux 0x50a4698c fb_videomode_to_modelist +EXPORT_SYMBOL vmlinux 0x50ac428c of_graph_get_endpoint_by_regs +EXPORT_SYMBOL vmlinux 0x50b73ce2 rfkill_find_type +EXPORT_SYMBOL vmlinux 0x50b96eca filemap_map_pages +EXPORT_SYMBOL vmlinux 0x50be748d security_ib_free_security +EXPORT_SYMBOL vmlinux 0x50d9ceca free_buffer_head +EXPORT_SYMBOL vmlinux 0x50e25002 flow_block_cb_lookup +EXPORT_SYMBOL vmlinux 0x50e3aff0 dma_get_sgtable_attrs +EXPORT_SYMBOL vmlinux 0x50ec6d53 ps2_command +EXPORT_SYMBOL vmlinux 0x50ef4dda pci_get_domain_bus_and_slot +EXPORT_SYMBOL vmlinux 0x50f3460e i2c_smbus_write_block_data +EXPORT_SYMBOL vmlinux 0x50f85302 __arm_smccc_hvc +EXPORT_SYMBOL vmlinux 0x50f91491 __genradix_ptr +EXPORT_SYMBOL vmlinux 0x5102a30b do_wait_intr_irq +EXPORT_SYMBOL vmlinux 0x51059b8b nd_region_release_lane +EXPORT_SYMBOL vmlinux 0x510908aa dev_change_carrier +EXPORT_SYMBOL vmlinux 0x515083bf acpi_release_mutex +EXPORT_SYMBOL vmlinux 0x515f520b qman_portal_get_iperiod +EXPORT_SYMBOL vmlinux 0x51641162 opal_unlock_from_suspend +EXPORT_SYMBOL vmlinux 0x51683a02 set_blocksize +EXPORT_SYMBOL vmlinux 0x5193b25f devm_kvasprintf +EXPORT_SYMBOL vmlinux 0x51a039db of_platform_device_create +EXPORT_SYMBOL vmlinux 0x51a64caa __block_write_begin +EXPORT_SYMBOL vmlinux 0x51d12d4e acpi_pci_disabled +EXPORT_SYMBOL vmlinux 0x51d8a5ea iommu_get_msi_cookie +EXPORT_SYMBOL vmlinux 0x51dc0983 elv_rb_latter_request +EXPORT_SYMBOL vmlinux 0x51e1797d key_put +EXPORT_SYMBOL vmlinux 0x51e77c97 pfn_valid +EXPORT_SYMBOL vmlinux 0x5203d176 cmd_db_ready +EXPORT_SYMBOL vmlinux 0x521aad60 dev_uc_del +EXPORT_SYMBOL vmlinux 0x5228f770 mipi_dsi_host_unregister +EXPORT_SYMBOL vmlinux 0x52356f19 twl6040_reg_write +EXPORT_SYMBOL vmlinux 0x52431144 vme_new_dma_list +EXPORT_SYMBOL vmlinux 0x52483372 of_node_name_prefix +EXPORT_SYMBOL vmlinux 0x5253c490 cont_write_begin +EXPORT_SYMBOL vmlinux 0x526c27af sock_no_sendmsg +EXPORT_SYMBOL vmlinux 0x526eef2c hdmi_vendor_infoframe_pack +EXPORT_SYMBOL vmlinux 0x527c0091 jbd2_journal_clear_err +EXPORT_SYMBOL vmlinux 0x528bc4b1 compat_ipv6_getsockopt +EXPORT_SYMBOL vmlinux 0x528c7bc2 netdev_features_change +EXPORT_SYMBOL vmlinux 0x5291442b console_start +EXPORT_SYMBOL vmlinux 0x52983a4f vme_master_write +EXPORT_SYMBOL vmlinux 0x529f440b add_to_pipe +EXPORT_SYMBOL vmlinux 0x52b8ed0a filp_close +EXPORT_SYMBOL vmlinux 0x52c96bb7 inet_pton_with_scope +EXPORT_SYMBOL vmlinux 0x52d717da xz_dec_init +EXPORT_SYMBOL vmlinux 0x52ecbc75 crc_ccitt +EXPORT_SYMBOL vmlinux 0x52ee60ce iter_file_splice_write +EXPORT_SYMBOL vmlinux 0x52f2850a imx_sc_pm_cpu_start +EXPORT_SYMBOL vmlinux 0x530b1e98 pm_suspend +EXPORT_SYMBOL vmlinux 0x530ca9ba netdev_refcnt_read +EXPORT_SYMBOL vmlinux 0x530e6bc1 misc_deregister +EXPORT_SYMBOL vmlinux 0x531071df pci_iomap_range +EXPORT_SYMBOL vmlinux 0x53126ecc __percpu_counter_sum +EXPORT_SYMBOL vmlinux 0x531b4fbe bh_uptodate_or_lock +EXPORT_SYMBOL vmlinux 0x533206b5 sort_r +EXPORT_SYMBOL vmlinux 0x533cf6e3 dqput +EXPORT_SYMBOL vmlinux 0x534f3f6e set_binfmt +EXPORT_SYMBOL vmlinux 0x53675dc5 default_llseek +EXPORT_SYMBOL vmlinux 0x537eb0b0 nvm_register_tgt_type +EXPORT_SYMBOL vmlinux 0x537ee29f sock_dequeue_err_skb +EXPORT_SYMBOL vmlinux 0x5392fb4d genl_unregister_family +EXPORT_SYMBOL vmlinux 0x5395a0ec tty_driver_flush_buffer +EXPORT_SYMBOL vmlinux 0x53b954a2 up_read +EXPORT_SYMBOL vmlinux 0x53d47930 fs_param_is_s32 +EXPORT_SYMBOL vmlinux 0x53da03a0 of_find_net_device_by_node +EXPORT_SYMBOL vmlinux 0x53fa36d1 ZSTD_decompressBlock +EXPORT_SYMBOL vmlinux 0x5402da9f xudma_navss_psil_pair +EXPORT_SYMBOL vmlinux 0x54081fe6 ipv6_chk_addr +EXPORT_SYMBOL vmlinux 0x5418a856 __sk_queue_drop_skb +EXPORT_SYMBOL vmlinux 0x541d846c unlock_page +EXPORT_SYMBOL vmlinux 0x54245b39 kstrtoull_from_user +EXPORT_SYMBOL vmlinux 0x54391083 dqget +EXPORT_SYMBOL vmlinux 0x543ef284 seq_hlist_start +EXPORT_SYMBOL vmlinux 0x54466b46 __register_binfmt +EXPORT_SYMBOL vmlinux 0x544de3dd rproc_of_resm_mem_entry_init +EXPORT_SYMBOL vmlinux 0x5465d413 block_write_end +EXPORT_SYMBOL vmlinux 0x5469ff81 efi +EXPORT_SYMBOL vmlinux 0x54747807 seq_escape +EXPORT_SYMBOL vmlinux 0x547a05df __nla_put_64bit +EXPORT_SYMBOL vmlinux 0x548a3e04 skb_copy_header +EXPORT_SYMBOL vmlinux 0x54a0ab7b phy_ethtool_set_link_ksettings +EXPORT_SYMBOL vmlinux 0x54a9ce8d dev_remove_pack +EXPORT_SYMBOL vmlinux 0x54a9db5f _kstrtoul +EXPORT_SYMBOL vmlinux 0x54ac1377 scsi_device_resume +EXPORT_SYMBOL vmlinux 0x54b3041d fb_set_cmap +EXPORT_SYMBOL vmlinux 0x54dd2ff7 datagram_poll +EXPORT_SYMBOL vmlinux 0x54e6fcdd net_enable_timestamp +EXPORT_SYMBOL vmlinux 0x54ea6dfe xen_start_flags +EXPORT_SYMBOL vmlinux 0x5506b8f7 netlbl_bitmap_setbit +EXPORT_SYMBOL vmlinux 0x5508f28d bman_acquire +EXPORT_SYMBOL vmlinux 0x550c1bf2 update_region +EXPORT_SYMBOL vmlinux 0x551bd071 __rb_erase_color +EXPORT_SYMBOL vmlinux 0x552db3aa qman_query_cgr_congested +EXPORT_SYMBOL vmlinux 0x55386741 skb_headers_offset_update +EXPORT_SYMBOL vmlinux 0x554ae3a4 irq_poll_sched +EXPORT_SYMBOL vmlinux 0x555e2e8e tc_setup_cb_call +EXPORT_SYMBOL vmlinux 0x55686530 __arch_clear_user +EXPORT_SYMBOL vmlinux 0x556a27b8 sock_no_ioctl +EXPORT_SYMBOL vmlinux 0x556b5d62 __kfifo_dma_in_prepare_r +EXPORT_SYMBOL vmlinux 0x557ed982 cros_ec_prepare_tx +EXPORT_SYMBOL vmlinux 0x5584f962 config_group_init_type_name +EXPORT_SYMBOL vmlinux 0x5586e64f __netlink_dump_start +EXPORT_SYMBOL vmlinux 0x558a2799 commit_creds +EXPORT_SYMBOL vmlinux 0x558b281d aes_expandkey +EXPORT_SYMBOL vmlinux 0x55a2e638 mipi_dsi_dcs_soft_reset +EXPORT_SYMBOL vmlinux 0x55ab8332 dm_kcopyd_copy +EXPORT_SYMBOL vmlinux 0x55e31703 ethtool_convert_link_mode_to_legacy_u32 +EXPORT_SYMBOL vmlinux 0x55ed4706 file_ns_capable +EXPORT_SYMBOL vmlinux 0x55fb0f6a qman_start_using_portal +EXPORT_SYMBOL vmlinux 0x56000535 param_set_long +EXPORT_SYMBOL vmlinux 0x560d8e6e sock_no_mmap +EXPORT_SYMBOL vmlinux 0x5614f48a qman_dqrr_get_ithresh +EXPORT_SYMBOL vmlinux 0x562b6d2a vm_iomap_memory +EXPORT_SYMBOL vmlinux 0x563284cd ip_route_me_harder +EXPORT_SYMBOL vmlinux 0x5635a60a vmalloc_user +EXPORT_SYMBOL vmlinux 0x5642504d vfs_get_link +EXPORT_SYMBOL vmlinux 0x56466e42 ZSTD_CStreamInSize +EXPORT_SYMBOL vmlinux 0x56470118 __warn_printk +EXPORT_SYMBOL vmlinux 0x5649411c unregister_fib_notifier +EXPORT_SYMBOL vmlinux 0x564f7608 acpi_reconfig_notifier_register +EXPORT_SYMBOL vmlinux 0x56694917 iw_handler_get_spy +EXPORT_SYMBOL vmlinux 0x5677c043 dma_supported +EXPORT_SYMBOL vmlinux 0x567b76b6 netdev_change_features +EXPORT_SYMBOL vmlinux 0x567d3708 sync_mapping_buffers +EXPORT_SYMBOL vmlinux 0x567d63d2 phy_device_register +EXPORT_SYMBOL vmlinux 0x56802ae8 rps_cpu_mask +EXPORT_SYMBOL vmlinux 0x569abcca acpi_walk_resources +EXPORT_SYMBOL vmlinux 0x56a51cdd of_graph_get_remote_port_parent +EXPORT_SYMBOL vmlinux 0x56a88599 xfrm_find_acq_byseq +EXPORT_SYMBOL vmlinux 0x56aa4289 tcp_v4_do_rcv +EXPORT_SYMBOL vmlinux 0x56b79bc9 pci_find_bus +EXPORT_SYMBOL vmlinux 0x56c8799d scsi_kunmap_atomic_sg +EXPORT_SYMBOL vmlinux 0x56d6c3a3 skb_kill_datagram +EXPORT_SYMBOL vmlinux 0x56de0519 bio_integrity_prep +EXPORT_SYMBOL vmlinux 0x56efc3dc watchdog_register_governor +EXPORT_SYMBOL vmlinux 0x56f1407c cfb_imageblit +EXPORT_SYMBOL vmlinux 0x56f8c371 __tracepoint_kfree +EXPORT_SYMBOL vmlinux 0x5713035b __alloc_skb +EXPORT_SYMBOL vmlinux 0x571a0ed8 genphy_loopback +EXPORT_SYMBOL vmlinux 0x5738f57a simple_getattr +EXPORT_SYMBOL vmlinux 0x5747d486 put_tty_driver +EXPORT_SYMBOL vmlinux 0x574c2e74 bitmap_release_region +EXPORT_SYMBOL vmlinux 0x57575f08 dmaengine_put +EXPORT_SYMBOL vmlinux 0x575a5f8a rproc_mem_entry_init +EXPORT_SYMBOL vmlinux 0x575aa982 netpoll_print_options +EXPORT_SYMBOL vmlinux 0x57617e4b blk_mq_tagset_wait_completed_request +EXPORT_SYMBOL vmlinux 0x57674fd7 __sw_hweight16 +EXPORT_SYMBOL vmlinux 0x5782b027 tty_devnum +EXPORT_SYMBOL vmlinux 0x578a1876 tun_xdp_to_ptr +EXPORT_SYMBOL vmlinux 0x578a408b ZSTD_initDCtx +EXPORT_SYMBOL vmlinux 0x57900416 gen_pool_fixed_alloc +EXPORT_SYMBOL vmlinux 0x579200e9 sock_rfree +EXPORT_SYMBOL vmlinux 0x5792f848 strlcpy +EXPORT_SYMBOL vmlinux 0x57998316 pcix_get_mmrbc +EXPORT_SYMBOL vmlinux 0x57a36691 __dec_zone_page_state +EXPORT_SYMBOL vmlinux 0x57afc052 md_bitmap_free +EXPORT_SYMBOL vmlinux 0x57bc19d2 down_write +EXPORT_SYMBOL vmlinux 0x57c9e1fe register_shrinker +EXPORT_SYMBOL vmlinux 0x57ec8860 truncate_setsize +EXPORT_SYMBOL vmlinux 0x57f38cdc qe_get_firmware_info +EXPORT_SYMBOL vmlinux 0x57f7abd6 __scsi_iterate_devices +EXPORT_SYMBOL vmlinux 0x57fdbe3a pnp_possible_config +EXPORT_SYMBOL vmlinux 0x58062fbc dec_node_page_state +EXPORT_SYMBOL vmlinux 0x5818fe3c posix_acl_from_mode +EXPORT_SYMBOL vmlinux 0x5819c74a tcp_shutdown +EXPORT_SYMBOL vmlinux 0x581f98da zlib_inflate +EXPORT_SYMBOL vmlinux 0x582606eb xudma_rflow_put +EXPORT_SYMBOL vmlinux 0x582b6275 xfrm_if_unregister_cb +EXPORT_SYMBOL vmlinux 0x58382047 xfrm_policy_walk +EXPORT_SYMBOL vmlinux 0x5838f6c9 rtc_valid_tm +EXPORT_SYMBOL vmlinux 0x584b2802 udp_gro_receive +EXPORT_SYMBOL vmlinux 0x5856c209 module_refcount +EXPORT_SYMBOL vmlinux 0x58604e4d alloc_iova_mem +EXPORT_SYMBOL vmlinux 0x5868427c user_revoke +EXPORT_SYMBOL vmlinux 0x5868a9e7 dquot_file_open +EXPORT_SYMBOL vmlinux 0x586b42f6 input_grab_device +EXPORT_SYMBOL vmlinux 0x587b892e qe_get_num_of_risc +EXPORT_SYMBOL vmlinux 0x587d6d22 __ip_options_compile +EXPORT_SYMBOL vmlinux 0x587f22d7 devmap_managed_key +EXPORT_SYMBOL vmlinux 0x588472b0 d_instantiate_anon +EXPORT_SYMBOL vmlinux 0x5899f12a pin_user_pages_unlocked +EXPORT_SYMBOL vmlinux 0x58acf24b mdiobus_register_board_info +EXPORT_SYMBOL vmlinux 0x58adb05c get_vaddr_frames +EXPORT_SYMBOL vmlinux 0x58b4645c dev_close_many +EXPORT_SYMBOL vmlinux 0x58b73bc7 match_wildcard +EXPORT_SYMBOL vmlinux 0x58e3306d bit_wait_io +EXPORT_SYMBOL vmlinux 0x58fdaeb7 pci_fixup_device +EXPORT_SYMBOL vmlinux 0x5904ed2b nd_dax_probe +EXPORT_SYMBOL vmlinux 0x5907b9b5 nla_append +EXPORT_SYMBOL vmlinux 0x5908d8af mr_vif_seq_next +EXPORT_SYMBOL vmlinux 0x590a0fe1 write_dirty_buffer +EXPORT_SYMBOL vmlinux 0x5914f0e9 tcp_md5_do_del +EXPORT_SYMBOL vmlinux 0x59188869 inet6_register_protosw +EXPORT_SYMBOL vmlinux 0x59279ba4 pcie_get_width_cap +EXPORT_SYMBOL vmlinux 0x5947f96e pci_enable_atomic_ops_to_root +EXPORT_SYMBOL vmlinux 0x59481e76 __napi_schedule_irqoff +EXPORT_SYMBOL vmlinux 0x59494371 reuseport_alloc +EXPORT_SYMBOL vmlinux 0x59588850 vsscanf +EXPORT_SYMBOL vmlinux 0x595f8feb get_bitmap_from_slot +EXPORT_SYMBOL vmlinux 0x596327f7 md_bitmap_startwrite +EXPORT_SYMBOL vmlinux 0x597b80f0 __neigh_event_send +EXPORT_SYMBOL vmlinux 0x599b4888 qe_setbrg +EXPORT_SYMBOL vmlinux 0x599fb41c kvmalloc_node +EXPORT_SYMBOL vmlinux 0x599fe1f6 da903x_query_status +EXPORT_SYMBOL vmlinux 0x59a2f0ee packing +EXPORT_SYMBOL vmlinux 0x59b4ac3e tcp_memory_allocated +EXPORT_SYMBOL vmlinux 0x59bce381 fscrypt_ioctl_get_policy +EXPORT_SYMBOL vmlinux 0x59c21266 inet_stream_connect +EXPORT_SYMBOL vmlinux 0x59d0f756 clkdev_drop +EXPORT_SYMBOL vmlinux 0x59ee54e3 of_find_node_by_type +EXPORT_SYMBOL vmlinux 0x59efd7f0 acpi_device_set_power +EXPORT_SYMBOL vmlinux 0x59f81568 __xfrm_policy_check +EXPORT_SYMBOL vmlinux 0x5a08cf44 lease_get_mtime +EXPORT_SYMBOL vmlinux 0x5a0b73d0 zlib_deflateInit2 +EXPORT_SYMBOL vmlinux 0x5a17e58c rtnl_link_get_net +EXPORT_SYMBOL vmlinux 0x5a44f8cb __crypto_memneq +EXPORT_SYMBOL vmlinux 0x5a4d313e gf128mul_4k_lle +EXPORT_SYMBOL vmlinux 0x5a60b950 qm_channel_pool1 +EXPORT_SYMBOL vmlinux 0x5a6e08d4 d_add +EXPORT_SYMBOL vmlinux 0x5a7b97aa serio_close +EXPORT_SYMBOL vmlinux 0x5a81fdb0 blk_execute_rq +EXPORT_SYMBOL vmlinux 0x5a8ae15a ZSTD_initDDict +EXPORT_SYMBOL vmlinux 0x5a921311 strncmp +EXPORT_SYMBOL vmlinux 0x5a965735 page_pool_release_page +EXPORT_SYMBOL vmlinux 0x5a99117e md_finish_reshape +EXPORT_SYMBOL vmlinux 0x5a99fe84 fbcon_rotate_ccw +EXPORT_SYMBOL vmlinux 0x5a9f1d63 memmove +EXPORT_SYMBOL vmlinux 0x5aad5304 of_get_next_parent +EXPORT_SYMBOL vmlinux 0x5ab7ac97 phy_connect +EXPORT_SYMBOL vmlinux 0x5abeec62 get_tz_trend +EXPORT_SYMBOL vmlinux 0x5ad9e95d mipi_dsi_device_register_full +EXPORT_SYMBOL vmlinux 0x5ade1559 zero_fill_bio_iter +EXPORT_SYMBOL vmlinux 0x5aeba367 memory_cgrp_subsys +EXPORT_SYMBOL vmlinux 0x5aebdafa of_translate_dma_address +EXPORT_SYMBOL vmlinux 0x5aed2418 param_ops_bool +EXPORT_SYMBOL vmlinux 0x5af2dc10 cpu_hwcaps +EXPORT_SYMBOL vmlinux 0x5afc8fec __lock_page +EXPORT_SYMBOL vmlinux 0x5b04cfe5 scsi_add_host_with_dma +EXPORT_SYMBOL vmlinux 0x5b06b56d bd_start_claiming +EXPORT_SYMBOL vmlinux 0x5b2f27fb do_wait_intr +EXPORT_SYMBOL vmlinux 0x5b36d5dd utf8agemax +EXPORT_SYMBOL vmlinux 0x5b387241 dquot_set_dqblk +EXPORT_SYMBOL vmlinux 0x5b3965e8 posix_lock_file +EXPORT_SYMBOL vmlinux 0x5b3a1f9d unpin_user_pages +EXPORT_SYMBOL vmlinux 0x5b3e282f xa_store +EXPORT_SYMBOL vmlinux 0x5b40a60b fs_param_is_string +EXPORT_SYMBOL vmlinux 0x5b54903b qcom_scm_pas_mem_setup +EXPORT_SYMBOL vmlinux 0x5b56860c vm_munmap +EXPORT_SYMBOL vmlinux 0x5b5c1f23 param_set_charp +EXPORT_SYMBOL vmlinux 0x5b67bc71 tcp_setsockopt +EXPORT_SYMBOL vmlinux 0x5b9225ec seg6_hmac_info_del +EXPORT_SYMBOL vmlinux 0x5b951c02 jbd2__journal_restart +EXPORT_SYMBOL vmlinux 0x5bb85a88 ipv6_find_hdr +EXPORT_SYMBOL vmlinux 0x5bbbab3b sdev_enable_disk_events +EXPORT_SYMBOL vmlinux 0x5bc30e8e nf_reinject +EXPORT_SYMBOL vmlinux 0x5bc92e85 LZ4_compress_destSize +EXPORT_SYMBOL vmlinux 0x5bd4ff88 flow_action_cookie_create +EXPORT_SYMBOL vmlinux 0x5bd84a20 nobh_write_end +EXPORT_SYMBOL vmlinux 0x5be63c5b crc32c_csum_stub +EXPORT_SYMBOL vmlinux 0x5bfb56ba netdev_bonding_info_change +EXPORT_SYMBOL vmlinux 0x5bff57e3 security_sock_graft +EXPORT_SYMBOL vmlinux 0x5c00d810 ZSTD_CDictWorkspaceBound +EXPORT_SYMBOL vmlinux 0x5c2272e9 xfrm_state_alloc +EXPORT_SYMBOL vmlinux 0x5c26a53b wait_for_completion_io_timeout +EXPORT_SYMBOL vmlinux 0x5c4265f6 blk_unregister_region +EXPORT_SYMBOL vmlinux 0x5c59d385 tcf_register_action +EXPORT_SYMBOL vmlinux 0x5c66d0da nf_register_sockopt +EXPORT_SYMBOL vmlinux 0x5c7a03ec fib_default_rule_add +EXPORT_SYMBOL vmlinux 0x5c8ef773 dquot_get_next_dqblk +EXPORT_SYMBOL vmlinux 0x5c9cad1a netpoll_cleanup +EXPORT_SYMBOL vmlinux 0x5c9dee77 __scsi_execute +EXPORT_SYMBOL vmlinux 0x5cee6d42 dm_unregister_target +EXPORT_SYMBOL vmlinux 0x5cf10f68 netdev_lower_get_next_private_rcu +EXPORT_SYMBOL vmlinux 0x5cf53ce2 input_free_minor +EXPORT_SYMBOL vmlinux 0x5cfb26a0 acpi_enter_sleep_state +EXPORT_SYMBOL vmlinux 0x5cfff1f0 pci_ep_cfs_remove_epc_group +EXPORT_SYMBOL vmlinux 0x5d0271cf tcf_exts_validate +EXPORT_SYMBOL vmlinux 0x5d07346c blk_queue_segment_boundary +EXPORT_SYMBOL vmlinux 0x5d0b8f82 seg6_hmac_validate_skb +EXPORT_SYMBOL vmlinux 0x5d0ec61c rproc_put +EXPORT_SYMBOL vmlinux 0x5d112304 __memcpy_fromio +EXPORT_SYMBOL vmlinux 0x5d1477e0 xfrm_policy_alloc +EXPORT_SYMBOL vmlinux 0x5d49aabc init_wait_var_entry +EXPORT_SYMBOL vmlinux 0x5d4a029f nvdimm_namespace_capacity +EXPORT_SYMBOL vmlinux 0x5d68c1d8 tty_lock +EXPORT_SYMBOL vmlinux 0x5d6c4cbf get_tree_bdev +EXPORT_SYMBOL vmlinux 0x5d78a8f6 vm_node_stat +EXPORT_SYMBOL vmlinux 0x5d830297 get_random_bytes_arch +EXPORT_SYMBOL vmlinux 0x5d9f20ed bio_integrity_alloc +EXPORT_SYMBOL vmlinux 0x5da8fc4c of_clk_get_by_name +EXPORT_SYMBOL vmlinux 0x5dac4cd6 qman_dqrr_set_ithresh +EXPORT_SYMBOL vmlinux 0x5dadf594 fb_pan_display +EXPORT_SYMBOL vmlinux 0x5db3a6f0 netpoll_send_skb +EXPORT_SYMBOL vmlinux 0x5dd3ee52 security_sk_classify_flow +EXPORT_SYMBOL vmlinux 0x5ddb978b module_layout +EXPORT_SYMBOL vmlinux 0x5decfb07 d_make_root +EXPORT_SYMBOL vmlinux 0x5deda938 dma_resv_fini +EXPORT_SYMBOL vmlinux 0x5dedbfa7 tcf_chain_get_by_act +EXPORT_SYMBOL vmlinux 0x5df25c14 security_unix_may_send +EXPORT_SYMBOL vmlinux 0x5dffb495 ZSTD_decompress_usingDDict +EXPORT_SYMBOL vmlinux 0x5e0ccb9f sha1_transform +EXPORT_SYMBOL vmlinux 0x5e3240a0 __cpu_online_mask +EXPORT_SYMBOL vmlinux 0x5e332b52 __var_waitqueue +EXPORT_SYMBOL vmlinux 0x5e373fb4 gf128mul_64k_bbe +EXPORT_SYMBOL vmlinux 0x5e5b76f8 __tracepoint_kmalloc_node +EXPORT_SYMBOL vmlinux 0x5e7ee174 reuseport_attach_prog +EXPORT_SYMBOL vmlinux 0x5e84fd92 bio_uninit +EXPORT_SYMBOL vmlinux 0x5e855e56 gen_pool_first_fit_align +EXPORT_SYMBOL vmlinux 0x5e8e9315 sock_pfree +EXPORT_SYMBOL vmlinux 0x5e95b1cd current_umask +EXPORT_SYMBOL vmlinux 0x5e9689d3 proc_set_size +EXPORT_SYMBOL vmlinux 0x5eb24829 dm_shift_arg +EXPORT_SYMBOL vmlinux 0x5eb44e85 set_posix_acl +EXPORT_SYMBOL vmlinux 0x5ec09a3b backlight_device_get_by_name +EXPORT_SYMBOL vmlinux 0x5ec4aee6 put_sg_io_hdr +EXPORT_SYMBOL vmlinux 0x5ecf1624 sync_inode +EXPORT_SYMBOL vmlinux 0x5ed040b0 pm_set_vt_switch +EXPORT_SYMBOL vmlinux 0x5ed2969e string_escape_mem_ascii +EXPORT_SYMBOL vmlinux 0x5ed90adc int_to_scsilun +EXPORT_SYMBOL vmlinux 0x5ed9d759 input_mt_report_pointer_emulation +EXPORT_SYMBOL vmlinux 0x5ee16721 flow_get_u32_src +EXPORT_SYMBOL vmlinux 0x5ef6a672 gen_pool_for_each_chunk +EXPORT_SYMBOL vmlinux 0x5efde8e6 proc_doulongvec_ms_jiffies_minmax +EXPORT_SYMBOL vmlinux 0x5f098b2a in6addr_interfacelocal_allrouters +EXPORT_SYMBOL vmlinux 0x5f2d892c dev_activate +EXPORT_SYMBOL vmlinux 0x5f3137bd pcie_get_readrq +EXPORT_SYMBOL vmlinux 0x5f394e47 xp_dma_sync_for_cpu_slow +EXPORT_SYMBOL vmlinux 0x5f491fb1 give_up_console +EXPORT_SYMBOL vmlinux 0x5f5be04c is_acpi_data_node +EXPORT_SYMBOL vmlinux 0x5f663a43 d_find_alias +EXPORT_SYMBOL vmlinux 0x5f6b889c rproc_va_to_pa +EXPORT_SYMBOL vmlinux 0x5f6f5245 sock_alloc_send_pskb +EXPORT_SYMBOL vmlinux 0x5f880392 hdmi_infoframe_log +EXPORT_SYMBOL vmlinux 0x5f93525c acpi_extract_package +EXPORT_SYMBOL vmlinux 0x5f958274 dst_discard_out +EXPORT_SYMBOL vmlinux 0x5fa804a3 iget_locked +EXPORT_SYMBOL vmlinux 0x5fc0c8b3 make_kgid +EXPORT_SYMBOL vmlinux 0x5fc72f0e alloc_pages_exact +EXPORT_SYMBOL vmlinux 0x5fc90169 skb_add_rx_frag +EXPORT_SYMBOL vmlinux 0x5fcb748c scsi_print_sense_hdr +EXPORT_SYMBOL vmlinux 0x5fed178c meson_sm_call +EXPORT_SYMBOL vmlinux 0x5ff4f984 inet_csk_reqsk_queue_drop +EXPORT_SYMBOL vmlinux 0x5ff9eb0e lockref_mark_dead +EXPORT_SYMBOL vmlinux 0x6004858d LZ4_compress_fast +EXPORT_SYMBOL vmlinux 0x6005c351 zpool_has_pool +EXPORT_SYMBOL vmlinux 0x600683d3 do_unblank_screen +EXPORT_SYMBOL vmlinux 0x601496f4 revert_creds +EXPORT_SYMBOL vmlinux 0x6018c9ea __nla_reserve +EXPORT_SYMBOL vmlinux 0x6019d1e8 security_dentry_create_files_as +EXPORT_SYMBOL vmlinux 0x601f665f dm_io_client_create +EXPORT_SYMBOL vmlinux 0x602d063d security_binder_set_context_mgr +EXPORT_SYMBOL vmlinux 0x60351b98 __nla_validate +EXPORT_SYMBOL vmlinux 0x60352082 register_inet6addr_notifier +EXPORT_SYMBOL vmlinux 0x605790dc fiemap_fill_next_extent +EXPORT_SYMBOL vmlinux 0x606da707 napi_gro_receive +EXPORT_SYMBOL vmlinux 0x6078c8d6 try_to_free_buffers +EXPORT_SYMBOL vmlinux 0x607d4eef node_data +EXPORT_SYMBOL vmlinux 0x607eff55 padata_do_parallel +EXPORT_SYMBOL vmlinux 0x608741b5 __init_swait_queue_head +EXPORT_SYMBOL vmlinux 0x6091b333 unregister_chrdev_region +EXPORT_SYMBOL vmlinux 0x609b2853 hdmi_infoframe_pack +EXPORT_SYMBOL vmlinux 0x609bcd98 in6_pton +EXPORT_SYMBOL vmlinux 0x609f1c7e synchronize_net +EXPORT_SYMBOL vmlinux 0x60a48f91 devm_mfd_add_devices +EXPORT_SYMBOL vmlinux 0x60a8237d genl_register_family +EXPORT_SYMBOL vmlinux 0x60aaeb4b qman_p_irqsource_add +EXPORT_SYMBOL vmlinux 0x60b10353 rtnl_kfree_skbs +EXPORT_SYMBOL vmlinux 0x60b3071f neigh_proc_dointvec +EXPORT_SYMBOL vmlinux 0x60d86515 generic_pipe_buf_try_steal +EXPORT_SYMBOL vmlinux 0x60d8ab30 vme_lm_get +EXPORT_SYMBOL vmlinux 0x60dc4686 edac_mc_find +EXPORT_SYMBOL vmlinux 0x60ddd012 dev_get_stats +EXPORT_SYMBOL vmlinux 0x60eda113 textsearch_destroy +EXPORT_SYMBOL vmlinux 0x60ef7f7a fbcon_rotate_cw +EXPORT_SYMBOL vmlinux 0x60f963d5 md_check_recovery +EXPORT_SYMBOL vmlinux 0x60fc6b40 sock_set_reuseaddr +EXPORT_SYMBOL vmlinux 0x6102e774 no_seek_end_llseek +EXPORT_SYMBOL vmlinux 0x61057c0b inet_frag_reasm_finish +EXPORT_SYMBOL vmlinux 0x61177cc1 vfs_parse_fs_string +EXPORT_SYMBOL vmlinux 0x6128b5fc __printk_ratelimit +EXPORT_SYMBOL vmlinux 0x61577694 ZSTD_compressEnd +EXPORT_SYMBOL vmlinux 0x615911d7 __bitmap_set +EXPORT_SYMBOL vmlinux 0x61607941 mini_qdisc_pair_block_init +EXPORT_SYMBOL vmlinux 0x617c452b queued_read_lock_slowpath +EXPORT_SYMBOL vmlinux 0x6185b747 radix_tree_gang_lookup_tag +EXPORT_SYMBOL vmlinux 0x618833bb keyring_clear +EXPORT_SYMBOL vmlinux 0x618865ed xattr_full_name +EXPORT_SYMBOL vmlinux 0x618911fc numa_node +EXPORT_SYMBOL vmlinux 0x619cb7dd simple_read_from_buffer +EXPORT_SYMBOL vmlinux 0x61a98113 generic_shutdown_super +EXPORT_SYMBOL vmlinux 0x61b7b126 simple_strtoull +EXPORT_SYMBOL vmlinux 0x61bf2de8 dmam_pool_create +EXPORT_SYMBOL vmlinux 0x61c550bd nf_hook_slow_list +EXPORT_SYMBOL vmlinux 0x61c85327 file_path +EXPORT_SYMBOL vmlinux 0x61c8cc43 pcie_get_mps +EXPORT_SYMBOL vmlinux 0x61d5eefd blk_rq_map_user_iov +EXPORT_SYMBOL vmlinux 0x61e272c9 sha256_final +EXPORT_SYMBOL vmlinux 0x61ea189b fb_pad_aligned_buffer +EXPORT_SYMBOL vmlinux 0x61f2bd0a vme_lm_request +EXPORT_SYMBOL vmlinux 0x61ffd063 nf_log_unbind_pf +EXPORT_SYMBOL vmlinux 0x6214aef2 cpufreq_unregister_notifier +EXPORT_SYMBOL vmlinux 0x62177a31 inet_recvmsg +EXPORT_SYMBOL vmlinux 0x6228c21f smp_call_function_single +EXPORT_SYMBOL vmlinux 0x62424a43 arp_tbl +EXPORT_SYMBOL vmlinux 0x6256cad1 pci_map_rom +EXPORT_SYMBOL vmlinux 0x62577de0 __dquot_free_space +EXPORT_SYMBOL vmlinux 0x62737e1d sock_unregister +EXPORT_SYMBOL vmlinux 0x62849ac7 dev_valid_name +EXPORT_SYMBOL vmlinux 0x62890955 __tracepoint_spi_transfer_stop +EXPORT_SYMBOL vmlinux 0x62936ea4 __break_lease +EXPORT_SYMBOL vmlinux 0x62bf3656 tty_port_destroy +EXPORT_SYMBOL vmlinux 0x62bf6edf utf8agemin +EXPORT_SYMBOL vmlinux 0x62cac127 vm_event_states +EXPORT_SYMBOL vmlinux 0x62d96443 qman_dma_portal +EXPORT_SYMBOL vmlinux 0x62e9d8e0 dma_free_attrs +EXPORT_SYMBOL vmlinux 0x62ed1eca rproc_del +EXPORT_SYMBOL vmlinux 0x62fe2b7a stream_open +EXPORT_SYMBOL vmlinux 0x6300ce6f of_phy_deregister_fixed_link +EXPORT_SYMBOL vmlinux 0x6313c157 abx500_startup_irq_enabled +EXPORT_SYMBOL vmlinux 0x63179f48 mmc_add_host +EXPORT_SYMBOL vmlinux 0x63187451 pcie_aspm_support_enabled +EXPORT_SYMBOL vmlinux 0x631d06aa cpu_rmap_put +EXPORT_SYMBOL vmlinux 0x63263ebd __blk_rq_map_sg +EXPORT_SYMBOL vmlinux 0x632a8bb1 register_mii_tstamp_controller +EXPORT_SYMBOL vmlinux 0x632b6143 of_get_child_by_name +EXPORT_SYMBOL vmlinux 0x632baa1b iommu_dma_get_resv_regions +EXPORT_SYMBOL vmlinux 0x633660cd dma_virt_ops +EXPORT_SYMBOL vmlinux 0x633afe52 dma_resv_add_shared_fence +EXPORT_SYMBOL vmlinux 0x6346d1c5 rproc_remove_subdev +EXPORT_SYMBOL vmlinux 0x635ff76d LZ4_saveDict +EXPORT_SYMBOL vmlinux 0x637b0fbd mfd_remove_devices +EXPORT_SYMBOL vmlinux 0x638bafd7 devfreq_add_governor +EXPORT_SYMBOL vmlinux 0x639385d0 bdput +EXPORT_SYMBOL vmlinux 0x63a58370 flow_action_cookie_destroy +EXPORT_SYMBOL vmlinux 0x63a7c28c bitmap_find_free_region +EXPORT_SYMBOL vmlinux 0x63a9af2b netif_set_real_num_tx_queues +EXPORT_SYMBOL vmlinux 0x63ab8627 mmc_gpio_set_cd_isr +EXPORT_SYMBOL vmlinux 0x63b2403f finish_open +EXPORT_SYMBOL vmlinux 0x63bf2020 dquot_set_dqinfo +EXPORT_SYMBOL vmlinux 0x63c4d61f __bitmap_weight +EXPORT_SYMBOL vmlinux 0x63c8129d nmi_panic +EXPORT_SYMBOL vmlinux 0x63d4c88c udp_lib_setsockopt +EXPORT_SYMBOL vmlinux 0x63d6dbd9 __tracepoint_kmem_cache_alloc_node +EXPORT_SYMBOL vmlinux 0x63e7961b secure_tcpv6_ts_off +EXPORT_SYMBOL vmlinux 0x63eb9355 panic_blink +EXPORT_SYMBOL vmlinux 0x63ff75d9 kernel_connect +EXPORT_SYMBOL vmlinux 0x6405dcd3 slhc_toss +EXPORT_SYMBOL vmlinux 0x640e9de5 skb_split +EXPORT_SYMBOL vmlinux 0x6410731a netdev_lower_get_next_private +EXPORT_SYMBOL vmlinux 0x64127b67 bitmap_find_next_zero_area_off +EXPORT_SYMBOL vmlinux 0x6420427b dquot_drop +EXPORT_SYMBOL vmlinux 0x642a7458 sockfd_lookup +EXPORT_SYMBOL vmlinux 0x642eb5c6 xen_poll_irq_timeout +EXPORT_SYMBOL vmlinux 0x643031aa of_count_phandle_with_args +EXPORT_SYMBOL vmlinux 0x6435bfe5 pci_get_subsys +EXPORT_SYMBOL vmlinux 0x643d9ba1 groups_free +EXPORT_SYMBOL vmlinux 0x64440551 from_kprojid +EXPORT_SYMBOL vmlinux 0x644be12c qman_affine_cpus +EXPORT_SYMBOL vmlinux 0x6461b1b1 vfs_fadvise +EXPORT_SYMBOL vmlinux 0x646b6d09 file_fdatawait_range +EXPORT_SYMBOL vmlinux 0x646c50dd inode_init_always +EXPORT_SYMBOL vmlinux 0x64788392 __sg_alloc_table_from_pages +EXPORT_SYMBOL vmlinux 0x6481ffe0 hsiphash_1u32 +EXPORT_SYMBOL vmlinux 0x6482c8f0 migrate_page_move_mapping +EXPORT_SYMBOL vmlinux 0x648eb59d gc_inflight_list +EXPORT_SYMBOL vmlinux 0x6492b4d1 blk_put_request +EXPORT_SYMBOL vmlinux 0x64999478 congestion_wait +EXPORT_SYMBOL vmlinux 0x649cd184 mmc_gpiod_request_cd_irq +EXPORT_SYMBOL vmlinux 0x64a9c928 default_blu +EXPORT_SYMBOL vmlinux 0x64b06163 sg_miter_start +EXPORT_SYMBOL vmlinux 0x64b4665f __inet_stream_connect +EXPORT_SYMBOL vmlinux 0x64bbc288 string_unescape +EXPORT_SYMBOL vmlinux 0x64c6690d nf_setsockopt +EXPORT_SYMBOL vmlinux 0x64c6ae3c setattr_prepare +EXPORT_SYMBOL vmlinux 0x64d677f6 rpmh_write +EXPORT_SYMBOL vmlinux 0x64eec020 mmc_request_done +EXPORT_SYMBOL vmlinux 0x64fdaeee pci_get_device +EXPORT_SYMBOL vmlinux 0x6513a3fa fb_get_color_depth +EXPORT_SYMBOL vmlinux 0x651a4139 test_taint +EXPORT_SYMBOL vmlinux 0x652032cb mac_pton +EXPORT_SYMBOL vmlinux 0x6528ddf4 skb_ensure_writable +EXPORT_SYMBOL vmlinux 0x652ce9aa nla_memcmp +EXPORT_SYMBOL vmlinux 0x652f5862 security_inode_init_security +EXPORT_SYMBOL vmlinux 0x6538f343 tcp_ld_RTO_revert +EXPORT_SYMBOL vmlinux 0x65408378 zlib_inflate_blob +EXPORT_SYMBOL vmlinux 0x654449c3 memset16 +EXPORT_SYMBOL vmlinux 0x654e40a0 put_devmap_managed_page +EXPORT_SYMBOL vmlinux 0x6560a636 __close_fd +EXPORT_SYMBOL vmlinux 0x656c1a0e string_escape_mem +EXPORT_SYMBOL vmlinux 0x656e4a6e snprintf +EXPORT_SYMBOL vmlinux 0x65706a99 unregister_qdisc +EXPORT_SYMBOL vmlinux 0x65806c33 find_inode_nowait +EXPORT_SYMBOL vmlinux 0x658ce1a8 xxh64_reset +EXPORT_SYMBOL vmlinux 0x6594bd48 phy_driver_register +EXPORT_SYMBOL vmlinux 0x659ded26 xfrm_flush_gc +EXPORT_SYMBOL vmlinux 0x65cf8831 ZSTD_decompress_usingDict +EXPORT_SYMBOL vmlinux 0x65d1bab2 acpi_bios_warning +EXPORT_SYMBOL vmlinux 0x65d9e877 cpufreq_register_notifier +EXPORT_SYMBOL vmlinux 0x65dccf13 xz_dec_end +EXPORT_SYMBOL vmlinux 0x65e0d6d7 memory_read_from_buffer +EXPORT_SYMBOL vmlinux 0x65e30f23 tcf_idr_create +EXPORT_SYMBOL vmlinux 0x6626afca down +EXPORT_SYMBOL vmlinux 0x662c6b4c key_invalidate +EXPORT_SYMBOL vmlinux 0x663bba07 would_dump +EXPORT_SYMBOL vmlinux 0x664b1e29 qman_delete_cgr +EXPORT_SYMBOL vmlinux 0x66549a3d genphy_resume +EXPORT_SYMBOL vmlinux 0x665f38bb dst_release +EXPORT_SYMBOL vmlinux 0x66628bf3 ip_tunnel_metadata_cnt +EXPORT_SYMBOL vmlinux 0x666863dc par_io_config_pin +EXPORT_SYMBOL vmlinux 0x6673f96d xxh32_reset +EXPORT_SYMBOL vmlinux 0x667b58c1 xsk_set_tx_need_wakeup +EXPORT_SYMBOL vmlinux 0x66877401 jbd2_journal_stop +EXPORT_SYMBOL vmlinux 0x668b19a1 down_read +EXPORT_SYMBOL vmlinux 0x668cb50a dump_truncate +EXPORT_SYMBOL vmlinux 0x66af1fd1 lockref_put_or_lock +EXPORT_SYMBOL vmlinux 0x66b4cc41 kmemdup +EXPORT_SYMBOL vmlinux 0x66d08a18 scsi_cmd_blk_ioctl +EXPORT_SYMBOL vmlinux 0x66d29e23 nla_put_64bit +EXPORT_SYMBOL vmlinux 0x66d2ebec nla_reserve_64bit +EXPORT_SYMBOL vmlinux 0x6709ee05 mount_subtree +EXPORT_SYMBOL vmlinux 0x670d673d of_cpu_node_to_id +EXPORT_SYMBOL vmlinux 0x671071fc fs_bio_set +EXPORT_SYMBOL vmlinux 0x67151515 of_find_mipi_dsi_host_by_node +EXPORT_SYMBOL vmlinux 0x671e8679 to_nd_dax +EXPORT_SYMBOL vmlinux 0x67412d2f ucc_slow_enable +EXPORT_SYMBOL vmlinux 0x6749d53f hdmi_vendor_infoframe_init +EXPORT_SYMBOL vmlinux 0x67510f25 pci_bus_add_devices +EXPORT_SYMBOL vmlinux 0x675c4f8d scsi_print_result +EXPORT_SYMBOL vmlinux 0x675ca816 iterate_fd +EXPORT_SYMBOL vmlinux 0x675d445e dev_getfirstbyhwtype +EXPORT_SYMBOL vmlinux 0x676dc453 seq_read +EXPORT_SYMBOL vmlinux 0x678b85b3 seg6_hmac_net_exit +EXPORT_SYMBOL vmlinux 0x678b96ec dma_pool_alloc +EXPORT_SYMBOL vmlinux 0x67a15cdb iommu_put_dma_cookie +EXPORT_SYMBOL vmlinux 0x67a3a934 nvdimm_namespace_common_probe +EXPORT_SYMBOL vmlinux 0x67a5b3e3 get_user_pages_unlocked +EXPORT_SYMBOL vmlinux 0x67b27ec1 tty_std_termios +EXPORT_SYMBOL vmlinux 0x67b78eb3 seq_hlist_next_rcu +EXPORT_SYMBOL vmlinux 0x67badc18 mipi_dsi_shutdown_peripheral +EXPORT_SYMBOL vmlinux 0x67c0603d fscrypt_ioctl_set_policy +EXPORT_SYMBOL vmlinux 0x67c13ea0 acpi_read +EXPORT_SYMBOL vmlinux 0x67c4a6c9 dev_mc_sync_multiple +EXPORT_SYMBOL vmlinux 0x67cb017d thermal_zone_device_critical +EXPORT_SYMBOL vmlinux 0x67ce20c3 deactivate_locked_super +EXPORT_SYMBOL vmlinux 0x67d23780 __skb_recv_udp +EXPORT_SYMBOL vmlinux 0x67d9e1c7 d_move +EXPORT_SYMBOL vmlinux 0x67ed4076 tcp_v4_connect +EXPORT_SYMBOL vmlinux 0x67fb655d __fs_parse +EXPORT_SYMBOL vmlinux 0x67fd41a8 vlan_ioctl_set +EXPORT_SYMBOL vmlinux 0x68187bea generic_setlease +EXPORT_SYMBOL vmlinux 0x681bae4b tcp_v4_conn_request +EXPORT_SYMBOL vmlinux 0x683a9560 __gnet_stats_copy_basic +EXPORT_SYMBOL vmlinux 0x683fbd06 input_get_keycode +EXPORT_SYMBOL vmlinux 0x68421a30 ip_sock_set_tos +EXPORT_SYMBOL vmlinux 0x684f479c xfrm_if_register_cb +EXPORT_SYMBOL vmlinux 0x685bc049 scsi_eh_restore_cmnd +EXPORT_SYMBOL vmlinux 0x685e31ca groups_sort +EXPORT_SYMBOL vmlinux 0x68639ec9 __sk_mem_reduce_allocated +EXPORT_SYMBOL vmlinux 0x6866329c dcbnl_ieee_notify +EXPORT_SYMBOL vmlinux 0x68673cd0 tcp_splice_read +EXPORT_SYMBOL vmlinux 0x687b6a16 kdbgetsymval +EXPORT_SYMBOL vmlinux 0x6893856f xfrm_stateonly_find +EXPORT_SYMBOL vmlinux 0x6897a790 nf_getsockopt +EXPORT_SYMBOL vmlinux 0x68996fea tcp_sync_mss +EXPORT_SYMBOL vmlinux 0x689fa1df blk_queue_dma_alignment +EXPORT_SYMBOL vmlinux 0x68a73f9d soft_cursor +EXPORT_SYMBOL vmlinux 0x68a90b51 get_default_font +EXPORT_SYMBOL vmlinux 0x68b31a30 ipv4_specific +EXPORT_SYMBOL vmlinux 0x68b729bb mr_mfc_find_any_parent +EXPORT_SYMBOL vmlinux 0x68dd92f5 fbcon_set_tileops +EXPORT_SYMBOL vmlinux 0x68fb581a icst307_idx2s +EXPORT_SYMBOL vmlinux 0x68fca692 inet_unregister_protosw +EXPORT_SYMBOL vmlinux 0x69049cd2 radix_tree_replace_slot +EXPORT_SYMBOL vmlinux 0x693140bd xp_can_alloc +EXPORT_SYMBOL vmlinux 0x693bd1e6 blk_register_region +EXPORT_SYMBOL vmlinux 0x6945b732 inet_csk_accept +EXPORT_SYMBOL vmlinux 0x69493b1a kstrtos16 +EXPORT_SYMBOL vmlinux 0x69585523 __ksize +EXPORT_SYMBOL vmlinux 0x6962d06d acpi_notifier_call_chain +EXPORT_SYMBOL vmlinux 0x69668826 netdev_increment_features +EXPORT_SYMBOL vmlinux 0x696aaf27 pci_enable_device_mem +EXPORT_SYMBOL vmlinux 0x6971447a rtc_month_days +EXPORT_SYMBOL vmlinux 0x6990ae9e dev_get_by_index_rcu +EXPORT_SYMBOL vmlinux 0x69956072 devm_backlight_device_register +EXPORT_SYMBOL vmlinux 0x69a516f6 do_clone_file_range +EXPORT_SYMBOL vmlinux 0x69a5e24d cad_pid +EXPORT_SYMBOL vmlinux 0x69ad2f20 kstrtouint +EXPORT_SYMBOL vmlinux 0x69b46b1e neigh_seq_stop +EXPORT_SYMBOL vmlinux 0x69c0011c tcp_create_openreq_child +EXPORT_SYMBOL vmlinux 0x69c4be70 netdev_has_any_upper_dev +EXPORT_SYMBOL vmlinux 0x69c9a007 fscrypt_encrypt_block_inplace +EXPORT_SYMBOL vmlinux 0x69dd3b5b crc32_le +EXPORT_SYMBOL vmlinux 0x69de8757 vme_check_window +EXPORT_SYMBOL vmlinux 0x69ed972b vme_register_error_handler +EXPORT_SYMBOL vmlinux 0x69f2144d d_alloc_name +EXPORT_SYMBOL vmlinux 0x6a03751f sgl_free_order +EXPORT_SYMBOL vmlinux 0x6a037cf1 mempool_kfree +EXPORT_SYMBOL vmlinux 0x6a1d0d3f inet_sk_rx_dst_set +EXPORT_SYMBOL vmlinux 0x6a1f093d seg6_hmac_info_add +EXPORT_SYMBOL vmlinux 0x6a345dd2 iov_iter_kvec +EXPORT_SYMBOL vmlinux 0x6a3766b2 qman_delete_cgr_safe +EXPORT_SYMBOL vmlinux 0x6a449c4f register_sysctl_table +EXPORT_SYMBOL vmlinux 0x6a536341 inet_sk_set_state +EXPORT_SYMBOL vmlinux 0x6a5cb5ee __get_free_pages +EXPORT_SYMBOL vmlinux 0x6a5ecb18 unregister_module_notifier +EXPORT_SYMBOL vmlinux 0x6a5fa363 sigprocmask +EXPORT_SYMBOL vmlinux 0x6a6a29d6 register_framebuffer +EXPORT_SYMBOL vmlinux 0x6a71859c simple_dir_inode_operations +EXPORT_SYMBOL vmlinux 0x6a7e5e51 kthread_stop +EXPORT_SYMBOL vmlinux 0x6a823300 dma_cache_sync +EXPORT_SYMBOL vmlinux 0x6a88ed0d tcp_md5_hash_skb_data +EXPORT_SYMBOL vmlinux 0x6a8b9ff3 devm_extcon_register_notifier +EXPORT_SYMBOL vmlinux 0x6a9a9917 mmc_can_secure_erase_trim +EXPORT_SYMBOL vmlinux 0x6a9ba4db register_netdevice +EXPORT_SYMBOL vmlinux 0x6a9db2ce scsi_ioctl +EXPORT_SYMBOL vmlinux 0x6aa11aa6 sgl_free_n_order +EXPORT_SYMBOL vmlinux 0x6ab487c4 blk_limits_io_opt +EXPORT_SYMBOL vmlinux 0x6ac31b87 generic_fadvise +EXPORT_SYMBOL vmlinux 0x6add5c9a dmi_find_device +EXPORT_SYMBOL vmlinux 0x6adecbb8 io_uring_get_socket +EXPORT_SYMBOL vmlinux 0x6aeefac4 zlib_deflateReset +EXPORT_SYMBOL vmlinux 0x6b072147 ip_frag_init +EXPORT_SYMBOL vmlinux 0x6b205623 current_time +EXPORT_SYMBOL vmlinux 0x6b270fc8 input_open_device +EXPORT_SYMBOL vmlinux 0x6b27729b radix_tree_gang_lookup +EXPORT_SYMBOL vmlinux 0x6b2941b2 __arch_copy_to_user +EXPORT_SYMBOL vmlinux 0x6b2dc060 dump_stack +EXPORT_SYMBOL vmlinux 0x6b372027 truncate_pagecache_range +EXPORT_SYMBOL vmlinux 0x6b4024b4 cpumask_any_but +EXPORT_SYMBOL vmlinux 0x6b40fde1 vfs_mknod +EXPORT_SYMBOL vmlinux 0x6b48e26e netlink_broadcast_filtered +EXPORT_SYMBOL vmlinux 0x6b4b2933 __ioremap +EXPORT_SYMBOL vmlinux 0x6b55acd0 rtnl_lock_killable +EXPORT_SYMBOL vmlinux 0x6b640864 nla_strlcpy +EXPORT_SYMBOL vmlinux 0x6b692356 flow_block_cb_alloc +EXPORT_SYMBOL vmlinux 0x6b71a1e4 pci_scan_single_device +EXPORT_SYMBOL vmlinux 0x6b7e3f42 elv_rb_former_request +EXPORT_SYMBOL vmlinux 0x6b853d06 ns_to_kernel_old_timeval +EXPORT_SYMBOL vmlinux 0x6b8bf149 netif_receive_skb_list +EXPORT_SYMBOL vmlinux 0x6b96d634 skb_dequeue_tail +EXPORT_SYMBOL vmlinux 0x6b9d2620 __quota_error +EXPORT_SYMBOL vmlinux 0x6bc3fbc0 __unregister_chrdev +EXPORT_SYMBOL vmlinux 0x6bd8a1d6 inet_put_port +EXPORT_SYMBOL vmlinux 0x6bde0780 phy_device_remove +EXPORT_SYMBOL vmlinux 0x6be1c1f8 acpi_install_method +EXPORT_SYMBOL vmlinux 0x6bef3732 ps2_end_command +EXPORT_SYMBOL vmlinux 0x6bfce4c8 dcache_readdir +EXPORT_SYMBOL vmlinux 0x6bfeada9 security_inode_setsecctx +EXPORT_SYMBOL vmlinux 0x6c224cda gen_pool_destroy +EXPORT_SYMBOL vmlinux 0x6c257ac0 tty_termios_hw_change +EXPORT_SYMBOL vmlinux 0x6c280bb8 rproc_add +EXPORT_SYMBOL vmlinux 0x6c29b8f9 blkdev_put +EXPORT_SYMBOL vmlinux 0x6c391023 pci_dev_get +EXPORT_SYMBOL vmlinux 0x6c561e2f of_find_all_nodes +EXPORT_SYMBOL vmlinux 0x6c577985 get_task_exe_file +EXPORT_SYMBOL vmlinux 0x6c5d9b45 netlink_set_err +EXPORT_SYMBOL vmlinux 0x6c5dae23 scsi_kmap_atomic_sg +EXPORT_SYMBOL vmlinux 0x6c5ed355 ihold +EXPORT_SYMBOL vmlinux 0x6c61ce70 num_registered_fb +EXPORT_SYMBOL vmlinux 0x6c62cd89 phy_start_aneg +EXPORT_SYMBOL vmlinux 0x6c63ebf0 tcp_sock_set_user_timeout +EXPORT_SYMBOL vmlinux 0x6c6fd1e3 posix_test_lock +EXPORT_SYMBOL vmlinux 0x6cade9b4 napi_consume_skb +EXPORT_SYMBOL vmlinux 0x6cb46525 netlbl_catmap_walk +EXPORT_SYMBOL vmlinux 0x6cba99ab jbd2_journal_wipe +EXPORT_SYMBOL vmlinux 0x6cdaaf15 skb_put +EXPORT_SYMBOL vmlinux 0x6cf0d67d qe_get_num_of_snums +EXPORT_SYMBOL vmlinux 0x6cf62166 __tracepoint_kmem_cache_alloc +EXPORT_SYMBOL vmlinux 0x6d044666 nf_ct_get_tuple_skb +EXPORT_SYMBOL vmlinux 0x6d294e43 clock_t_to_jiffies +EXPORT_SYMBOL vmlinux 0x6d30b450 jbd2_journal_abort +EXPORT_SYMBOL vmlinux 0x6d340f64 tty_termios_input_baud_rate +EXPORT_SYMBOL vmlinux 0x6d3ab6ad dev_set_alias +EXPORT_SYMBOL vmlinux 0x6d5f5b91 radix_tree_tagged +EXPORT_SYMBOL vmlinux 0x6d73c95f logic_outw +EXPORT_SYMBOL vmlinux 0x6d79cef5 __skb_ext_del +EXPORT_SYMBOL vmlinux 0x6d7abe02 first_ec +EXPORT_SYMBOL vmlinux 0x6d7c7dcc bitmap_cut +EXPORT_SYMBOL vmlinux 0x6d8b9b1c sk_dst_check +EXPORT_SYMBOL vmlinux 0x6d90e8b4 skb_copy +EXPORT_SYMBOL vmlinux 0x6d9e0468 skb_clone +EXPORT_SYMBOL vmlinux 0x6da0d84c tcf_get_next_proto +EXPORT_SYMBOL vmlinux 0x6db4f2e8 pcie_bandwidth_available +EXPORT_SYMBOL vmlinux 0x6dc35b25 radix_tree_iter_delete +EXPORT_SYMBOL vmlinux 0x6dc8828a generic_iommu_put_resv_regions +EXPORT_SYMBOL vmlinux 0x6dcf857f uuid_null +EXPORT_SYMBOL vmlinux 0x6dd17e7b acpi_get_table_header +EXPORT_SYMBOL vmlinux 0x6dd4ea77 phy_device_create +EXPORT_SYMBOL vmlinux 0x6ddf6d51 dev_mc_add +EXPORT_SYMBOL vmlinux 0x6df01f66 elv_rb_find +EXPORT_SYMBOL vmlinux 0x6df1aaf1 kernel_sigaction +EXPORT_SYMBOL vmlinux 0x6e019034 __tracepoint_module_get +EXPORT_SYMBOL vmlinux 0x6e040954 __mdiobus_read +EXPORT_SYMBOL vmlinux 0x6e263215 blk_integrity_merge_bio +EXPORT_SYMBOL vmlinux 0x6e27a13b genphy_suspend +EXPORT_SYMBOL vmlinux 0x6e286604 hdmi_drm_infoframe_pack +EXPORT_SYMBOL vmlinux 0x6e5b8651 xz_dec_run +EXPORT_SYMBOL vmlinux 0x6e5c3963 max8998_write_reg +EXPORT_SYMBOL vmlinux 0x6e70bf65 dquot_quotactl_sysfile_ops +EXPORT_SYMBOL vmlinux 0x6e720ff2 rtnl_unlock +EXPORT_SYMBOL vmlinux 0x6e782741 seq_printf +EXPORT_SYMBOL vmlinux 0x6e8364dd vfs_parse_fs_param +EXPORT_SYMBOL vmlinux 0x6e9dd606 __symbol_put +EXPORT_SYMBOL vmlinux 0x6ea380a8 tcf_classify +EXPORT_SYMBOL vmlinux 0x6ea9363b force_sig +EXPORT_SYMBOL vmlinux 0x6ec0fa3e call_fib_notifier +EXPORT_SYMBOL vmlinux 0x6ecba6e7 mmc_is_req_done +EXPORT_SYMBOL vmlinux 0x6ed30567 __dynamic_ibdev_dbg +EXPORT_SYMBOL vmlinux 0x6ed8a5fc hdmi_drm_infoframe_check +EXPORT_SYMBOL vmlinux 0x6ee29eec __dec_node_page_state +EXPORT_SYMBOL vmlinux 0x6ef189f6 pm860x_reg_read +EXPORT_SYMBOL vmlinux 0x6ef5ffa2 nvm_dev_dma_alloc +EXPORT_SYMBOL vmlinux 0x6f06de18 mdio_device_create +EXPORT_SYMBOL vmlinux 0x6f1d3c7c skb_dump +EXPORT_SYMBOL vmlinux 0x6f312fa5 uart_register_driver +EXPORT_SYMBOL vmlinux 0x6f41a428 acpi_get_vendor_resource +EXPORT_SYMBOL vmlinux 0x6f4d893a gro_cells_receive +EXPORT_SYMBOL vmlinux 0x6f4fefb0 security_socket_getpeersec_dgram +EXPORT_SYMBOL vmlinux 0x6f61ced2 xp_dma_unmap +EXPORT_SYMBOL vmlinux 0x6f6d263b generic_parse_monolithic +EXPORT_SYMBOL vmlinux 0x6f77a92c __d_drop +EXPORT_SYMBOL vmlinux 0x6f8f674a bpf_dispatcher_xdp_func +EXPORT_SYMBOL vmlinux 0x6f915a45 dqstats +EXPORT_SYMBOL vmlinux 0x6fa65fa7 pin_user_pages +EXPORT_SYMBOL vmlinux 0x6fb49676 queue_rcu_work +EXPORT_SYMBOL vmlinux 0x6fbc6a00 radix_tree_insert +EXPORT_SYMBOL vmlinux 0x6fcb87a1 touch_softlockup_watchdog +EXPORT_SYMBOL vmlinux 0x6fd9c35a __clzdi2 +EXPORT_SYMBOL vmlinux 0x6fe6381f compat_sock_common_setsockopt +EXPORT_SYMBOL vmlinux 0x6ff646d5 netdev_reset_tc +EXPORT_SYMBOL vmlinux 0x6ffbc4ea iptun_encaps +EXPORT_SYMBOL vmlinux 0x6ffd9db4 padata_do_serial +EXPORT_SYMBOL vmlinux 0x70002fe8 siphash_1u32 +EXPORT_SYMBOL vmlinux 0x70048a98 vmap +EXPORT_SYMBOL vmlinux 0x7013840e blk_mq_init_allocated_queue +EXPORT_SYMBOL vmlinux 0x701543f8 pci_set_power_state +EXPORT_SYMBOL vmlinux 0x7015c31d d_obtain_root +EXPORT_SYMBOL vmlinux 0x7023bea8 unregister_acpi_notifier +EXPORT_SYMBOL vmlinux 0x702946da ucs2_strlen +EXPORT_SYMBOL vmlinux 0x702d1147 neigh_table_clear +EXPORT_SYMBOL vmlinux 0x7071a4f2 cmdline_parts_free +EXPORT_SYMBOL vmlinux 0x7080946d pci_stop_and_remove_bus_device +EXPORT_SYMBOL vmlinux 0x70a87c83 input_register_device +EXPORT_SYMBOL vmlinux 0x70ad75fb radix_tree_lookup +EXPORT_SYMBOL vmlinux 0x70b13f71 ethtool_op_get_link +EXPORT_SYMBOL vmlinux 0x70bf3672 dma_direct_unmap_page +EXPORT_SYMBOL vmlinux 0x70c756b0 mdiobus_unregister_device +EXPORT_SYMBOL vmlinux 0x70d1a18e qman_release_pool +EXPORT_SYMBOL vmlinux 0x70e00172 simple_readpage +EXPORT_SYMBOL vmlinux 0x70f45906 dump_emit +EXPORT_SYMBOL vmlinux 0x710768bd cdev_add +EXPORT_SYMBOL vmlinux 0x711b56e7 param_set_ulong +EXPORT_SYMBOL vmlinux 0x7129e5f8 hex_asc +EXPORT_SYMBOL vmlinux 0x71313f0f proc_mkdir_mode +EXPORT_SYMBOL vmlinux 0x7141b88a logic_insb +EXPORT_SYMBOL vmlinux 0x7171121c overflowgid +EXPORT_SYMBOL vmlinux 0x7188a8a0 tcp_syn_ack_timeout +EXPORT_SYMBOL vmlinux 0x71a04561 get_phy_device +EXPORT_SYMBOL vmlinux 0x71a50dbc register_blkdev +EXPORT_SYMBOL vmlinux 0x71a672ef dmam_pool_destroy +EXPORT_SYMBOL vmlinux 0x71ca8d27 pci_assign_resource +EXPORT_SYMBOL vmlinux 0x71f40785 xfrm_register_km +EXPORT_SYMBOL vmlinux 0x7205240e blk_mq_delay_run_hw_queue +EXPORT_SYMBOL vmlinux 0x72125db8 input_mt_report_finger_count +EXPORT_SYMBOL vmlinux 0x724ddac7 utf8version_is_supported +EXPORT_SYMBOL vmlinux 0x725a82a9 jbd2__journal_start +EXPORT_SYMBOL vmlinux 0x726bc3c7 wait_for_completion_killable_timeout +EXPORT_SYMBOL vmlinux 0x7275a70c sock_create +EXPORT_SYMBOL vmlinux 0x729f231f xfrm_policy_insert +EXPORT_SYMBOL vmlinux 0x72b5ac16 uart_add_one_port +EXPORT_SYMBOL vmlinux 0x72b9d287 default_grn +EXPORT_SYMBOL vmlinux 0x72c7f573 vfs_statfs +EXPORT_SYMBOL vmlinux 0x72c8b751 dev_add_pack +EXPORT_SYMBOL vmlinux 0x72cfd5df dev_mc_del +EXPORT_SYMBOL vmlinux 0x72d29a16 __get_hash_from_flowi6 +EXPORT_SYMBOL vmlinux 0x72ea7b2d scsi_device_type +EXPORT_SYMBOL vmlinux 0x72ef769b irq_to_desc +EXPORT_SYMBOL vmlinux 0x72fd0c84 genphy_aneg_done +EXPORT_SYMBOL vmlinux 0x7315a4e9 twl6030_mmc_card_detect_config +EXPORT_SYMBOL vmlinux 0x731c4a9c dma_fence_signal +EXPORT_SYMBOL vmlinux 0x731dba7a xen_domain_type +EXPORT_SYMBOL vmlinux 0x732cbf40 vmf_insert_mixed_prot +EXPORT_SYMBOL vmlinux 0x732f2d90 serio_open +EXPORT_SYMBOL vmlinux 0x735b1530 icmpv6_ndo_send +EXPORT_SYMBOL vmlinux 0x735e6a81 acpi_evaluate_integer +EXPORT_SYMBOL vmlinux 0x7380dffa argv_split +EXPORT_SYMBOL vmlinux 0x738de108 nf_log_register +EXPORT_SYMBOL vmlinux 0x739162e2 neigh_connected_output +EXPORT_SYMBOL vmlinux 0x739449c3 pci_ep_cfs_add_epc_group +EXPORT_SYMBOL vmlinux 0x73978c4a inode_set_bytes +EXPORT_SYMBOL vmlinux 0x739ef38a timestamp_truncate +EXPORT_SYMBOL vmlinux 0x73a68323 skb_queue_head +EXPORT_SYMBOL vmlinux 0x73abb180 alloc_contig_range +EXPORT_SYMBOL vmlinux 0x73c1c203 kernel_read +EXPORT_SYMBOL vmlinux 0x73d0e214 generic_make_request +EXPORT_SYMBOL vmlinux 0x73d5b37d security_sctp_bind_connect +EXPORT_SYMBOL vmlinux 0x73ebd888 dma_resv_reserve_shared +EXPORT_SYMBOL vmlinux 0x740b278f iov_iter_pipe +EXPORT_SYMBOL vmlinux 0x7410aba2 strreplace +EXPORT_SYMBOL vmlinux 0x7412ed5b kvfree_sensitive +EXPORT_SYMBOL vmlinux 0x74233c84 cdrom_release +EXPORT_SYMBOL vmlinux 0x742578a5 wait_for_random_bytes +EXPORT_SYMBOL vmlinux 0x74284cfb pcie_capability_clear_and_set_word +EXPORT_SYMBOL vmlinux 0x742eabb4 fs_param_is_fd +EXPORT_SYMBOL vmlinux 0x7435965a ppp_register_compressor +EXPORT_SYMBOL vmlinux 0x743f4126 keygen_port_hashing_init +EXPORT_SYMBOL vmlinux 0x74421de5 simple_write_begin +EXPORT_SYMBOL vmlinux 0x7453d3e8 security_release_secctx +EXPORT_SYMBOL vmlinux 0x74554cd2 blk_mq_unique_tag +EXPORT_SYMBOL vmlinux 0x74725e69 ZSTD_compressContinue +EXPORT_SYMBOL vmlinux 0x74754435 acpi_bus_generate_netlink_event +EXPORT_SYMBOL vmlinux 0x749849d8 LZ4_loadDict +EXPORT_SYMBOL vmlinux 0x74a710c3 finish_swait +EXPORT_SYMBOL vmlinux 0x74c0bbd2 make_kuid +EXPORT_SYMBOL vmlinux 0x74c134b9 __sw_hweight32 +EXPORT_SYMBOL vmlinux 0x74c7789e pcibios_bus_to_resource +EXPORT_SYMBOL vmlinux 0x74e5ff1a udpv6_encap_enable +EXPORT_SYMBOL vmlinux 0x7506cea0 key_alloc +EXPORT_SYMBOL vmlinux 0x75244d59 arp_send +EXPORT_SYMBOL vmlinux 0x7524f9ed _copy_from_iter_nocache +EXPORT_SYMBOL vmlinux 0x755b78c6 meson_sm_call_write +EXPORT_SYMBOL vmlinux 0x755e3ce6 of_find_i2c_device_by_node +EXPORT_SYMBOL vmlinux 0x757b65cb pnp_register_card_driver +EXPORT_SYMBOL vmlinux 0x757f088f cpm_muram_offset +EXPORT_SYMBOL vmlinux 0x757f37e8 scsi_target_resume +EXPORT_SYMBOL vmlinux 0x7584dfc5 nvm_dev_dma_free +EXPORT_SYMBOL vmlinux 0x75871f5e acpi_get_next_object +EXPORT_SYMBOL vmlinux 0x758bc6af mdiobus_read_nested +EXPORT_SYMBOL vmlinux 0x75922edd ilookup5_nowait +EXPORT_SYMBOL vmlinux 0x759c417c vlan_dev_real_dev +EXPORT_SYMBOL vmlinux 0x75b822d1 pci_write_vpd +EXPORT_SYMBOL vmlinux 0x75bda77a seq_hlist_next +EXPORT_SYMBOL vmlinux 0x75d0deb9 nsecs_to_jiffies64 +EXPORT_SYMBOL vmlinux 0x75d499dd vmcore_add_device_dump +EXPORT_SYMBOL vmlinux 0x75dab518 dev_pm_opp_register_notifier +EXPORT_SYMBOL vmlinux 0x75e7b193 sock_release +EXPORT_SYMBOL vmlinux 0x75f86591 pm860x_page_reg_write +EXPORT_SYMBOL vmlinux 0x75f98c5a blk_mq_run_hw_queue +EXPORT_SYMBOL vmlinux 0x760a0f4f yield +EXPORT_SYMBOL vmlinux 0x7614c4be pcie_port_service_unregister +EXPORT_SYMBOL vmlinux 0x7624249e dim_park_tired +EXPORT_SYMBOL vmlinux 0x76258a0b qdisc_put +EXPORT_SYMBOL vmlinux 0x7633e957 ip_mc_leave_group +EXPORT_SYMBOL vmlinux 0x7647726c handle_sysrq +EXPORT_SYMBOL vmlinux 0x7652dcb6 inet_protos +EXPORT_SYMBOL vmlinux 0x765a69b8 phy_disconnect +EXPORT_SYMBOL vmlinux 0x765ff474 crc_t10dif_generic +EXPORT_SYMBOL vmlinux 0x766a0927 mempool_alloc_pages +EXPORT_SYMBOL vmlinux 0x766b4c4c vlan_filter_push_vids +EXPORT_SYMBOL vmlinux 0x76782f42 jbd2_journal_flush +EXPORT_SYMBOL vmlinux 0x769975d7 module_put +EXPORT_SYMBOL vmlinux 0x769f6e64 errseq_check +EXPORT_SYMBOL vmlinux 0x76ad3fca max8925_set_bits +EXPORT_SYMBOL vmlinux 0x76bf26ec fs_param_is_u32 +EXPORT_SYMBOL vmlinux 0x76d3cd60 laptop_mode +EXPORT_SYMBOL vmlinux 0x76d451c4 add_taint +EXPORT_SYMBOL vmlinux 0x76d797f2 inet_del_offload +EXPORT_SYMBOL vmlinux 0x76ecc2d6 xfrm_state_update +EXPORT_SYMBOL vmlinux 0x76fad3d8 netif_napi_del +EXPORT_SYMBOL vmlinux 0x770073c4 qdisc_reset +EXPORT_SYMBOL vmlinux 0x772349b8 rt6_lookup +EXPORT_SYMBOL vmlinux 0x77272103 netdev_master_upper_dev_link +EXPORT_SYMBOL vmlinux 0x77302fc9 compat_nf_setsockopt +EXPORT_SYMBOL vmlinux 0x7732159c free_irq_cpu_rmap +EXPORT_SYMBOL vmlinux 0x77358855 iomem_resource +EXPORT_SYMBOL vmlinux 0x773fa409 __kfifo_dma_in_finish_r +EXPORT_SYMBOL vmlinux 0x77456e0a acpi_root_dir +EXPORT_SYMBOL vmlinux 0x779059d4 ppp_unregister_compressor +EXPORT_SYMBOL vmlinux 0x7791193f icst525_s2div +EXPORT_SYMBOL vmlinux 0x779a18af kstrtoll +EXPORT_SYMBOL vmlinux 0x77b091a2 kernel_sock_ip_overhead +EXPORT_SYMBOL vmlinux 0x77b0c431 phy_init_hw +EXPORT_SYMBOL vmlinux 0x77b1dabf tty_do_resize +EXPORT_SYMBOL vmlinux 0x77bc13a0 strim +EXPORT_SYMBOL vmlinux 0x77d52c01 vga_tryget +EXPORT_SYMBOL vmlinux 0x77d78cbb fib_notifier_ops_unregister +EXPORT_SYMBOL vmlinux 0x77daab4a pnp_disable_dev +EXPORT_SYMBOL vmlinux 0x77e9eb37 aes_encrypt +EXPORT_SYMBOL vmlinux 0x77f00f60 linkwatch_fire_event +EXPORT_SYMBOL vmlinux 0x7807f0f8 schedule_timeout_idle +EXPORT_SYMBOL vmlinux 0x78330566 netdev_lower_state_changed +EXPORT_SYMBOL vmlinux 0x7838d7b1 lock_sock_nested +EXPORT_SYMBOL vmlinux 0x7839e7f1 xfrm_state_check_expire +EXPORT_SYMBOL vmlinux 0x7846af3e __kfifo_len_r +EXPORT_SYMBOL vmlinux 0x785d8590 put_disk_and_module +EXPORT_SYMBOL vmlinux 0x786ccbe5 tc_setup_cb_replace +EXPORT_SYMBOL vmlinux 0x7880c781 dm_kcopyd_prepare_callback +EXPORT_SYMBOL vmlinux 0x7889beee udp_ioctl +EXPORT_SYMBOL vmlinux 0x788ca72b pci_bus_read_config_dword +EXPORT_SYMBOL vmlinux 0x789affb1 frontswap_tmem_exclusive_gets +EXPORT_SYMBOL vmlinux 0x78a16f48 aes_decrypt +EXPORT_SYMBOL vmlinux 0x78aacb4c scsi_report_bus_reset +EXPORT_SYMBOL vmlinux 0x78ae6192 cdrom_mode_select +EXPORT_SYMBOL vmlinux 0x78b28421 key_task_permission +EXPORT_SYMBOL vmlinux 0x78c3d9c7 flow_indr_dev_register +EXPORT_SYMBOL vmlinux 0x78df6bd7 no_pci_devices +EXPORT_SYMBOL vmlinux 0x78e8e3d1 dev_uc_init +EXPORT_SYMBOL vmlinux 0x7916cb22 par_io_of_config +EXPORT_SYMBOL vmlinux 0x79441135 of_get_property +EXPORT_SYMBOL vmlinux 0x794cb742 unregister_filesystem +EXPORT_SYMBOL vmlinux 0x79526fa6 ___pskb_trim +EXPORT_SYMBOL vmlinux 0x7972959a of_n_addr_cells +EXPORT_SYMBOL vmlinux 0x79739c3c utf8nagemin +EXPORT_SYMBOL vmlinux 0x7984eefc key_update +EXPORT_SYMBOL vmlinux 0x798d52b6 to_ndd +EXPORT_SYMBOL vmlinux 0x79a33f85 vme_get_size +EXPORT_SYMBOL vmlinux 0x79aa04a2 get_random_bytes +EXPORT_SYMBOL vmlinux 0x79aa50c3 ipv6_setsockopt +EXPORT_SYMBOL vmlinux 0x79c24c48 cdrom_ioctl +EXPORT_SYMBOL vmlinux 0x79c92d5e set_groups +EXPORT_SYMBOL vmlinux 0x79db6fc9 neigh_lookup +EXPORT_SYMBOL vmlinux 0x79e07bc4 devm_devfreq_register_opp_notifier +EXPORT_SYMBOL vmlinux 0x7a058d6e tcp_sock_set_quickack +EXPORT_SYMBOL vmlinux 0x7a0884ec arp_create +EXPORT_SYMBOL vmlinux 0x7a09a064 seg6_hmac_compute +EXPORT_SYMBOL vmlinux 0x7a1bcd59 gf128mul_x8_ble +EXPORT_SYMBOL vmlinux 0x7a2af7b4 cpu_number +EXPORT_SYMBOL vmlinux 0x7a4497db kzfree +EXPORT_SYMBOL vmlinux 0x7a47c6bd kthread_destroy_worker +EXPORT_SYMBOL vmlinux 0x7a660dee ps2_drain +EXPORT_SYMBOL vmlinux 0x7a804b17 tcf_em_tree_destroy +EXPORT_SYMBOL vmlinux 0x7a95e5ae do_settimeofday64 +EXPORT_SYMBOL vmlinux 0x7a968137 ucc_slow_restart_tx +EXPORT_SYMBOL vmlinux 0x7a9a4683 blkdev_get_by_path +EXPORT_SYMBOL vmlinux 0x7a9b37e8 blk_start_plug +EXPORT_SYMBOL vmlinux 0x7a9c16a0 scsi_print_sense +EXPORT_SYMBOL vmlinux 0x7aa1756e kvfree +EXPORT_SYMBOL vmlinux 0x7aaeb78c __skb_warn_lro_forwarding +EXPORT_SYMBOL vmlinux 0x7ab88a45 system_freezing_cnt +EXPORT_SYMBOL vmlinux 0x7abef251 pcim_iomap_regions_request_all +EXPORT_SYMBOL vmlinux 0x7ad050b9 qid_lt +EXPORT_SYMBOL vmlinux 0x7adc0fbf rb_replace_node_rcu +EXPORT_SYMBOL vmlinux 0x7ae10898 blk_rq_map_integrity_sg +EXPORT_SYMBOL vmlinux 0x7ae5d317 qe_get_snum +EXPORT_SYMBOL vmlinux 0x7afa2206 nd_btt_probe +EXPORT_SYMBOL vmlinux 0x7b0192da kstrtou16 +EXPORT_SYMBOL vmlinux 0x7b17b566 mipi_dsi_dcs_set_tear_off +EXPORT_SYMBOL vmlinux 0x7b21aedc gnet_stats_copy_basic +EXPORT_SYMBOL vmlinux 0x7b2c48bb I_BDEV +EXPORT_SYMBOL vmlinux 0x7b48e701 unregister_shrinker +EXPORT_SYMBOL vmlinux 0x7b4da6ff __init_rwsem +EXPORT_SYMBOL vmlinux 0x7b55282d netlink_net_capable +EXPORT_SYMBOL vmlinux 0x7b5b8f31 sha256_update +EXPORT_SYMBOL vmlinux 0x7b7ced10 tcf_block_put +EXPORT_SYMBOL vmlinux 0x7b82b9a1 idr_replace +EXPORT_SYMBOL vmlinux 0x7bb29c8e input_mt_sync_frame +EXPORT_SYMBOL vmlinux 0x7bb50b88 acpi_write +EXPORT_SYMBOL vmlinux 0x7bb69383 nvdimm_namespace_locked +EXPORT_SYMBOL vmlinux 0x7bb71f80 zap_page_range +EXPORT_SYMBOL vmlinux 0x7bb8a7ce posix_acl_from_xattr +EXPORT_SYMBOL vmlinux 0x7bbccd05 nr_node_ids +EXPORT_SYMBOL vmlinux 0x7bc0562c inet_sendpage +EXPORT_SYMBOL vmlinux 0x7bc481f0 generic_file_write_iter +EXPORT_SYMBOL vmlinux 0x7bdc62dc copy_page_to_iter +EXPORT_SYMBOL vmlinux 0x7bed23d7 ns_capable +EXPORT_SYMBOL vmlinux 0x7bf0edcf xfrm_state_walk_done +EXPORT_SYMBOL vmlinux 0x7c03db86 pci_irq_get_affinity +EXPORT_SYMBOL vmlinux 0x7c173634 __bitmap_complement +EXPORT_SYMBOL vmlinux 0x7c20508e inet6_release +EXPORT_SYMBOL vmlinux 0x7c2d57d8 ps2_sendbyte +EXPORT_SYMBOL vmlinux 0x7c314090 ip4_datagram_connect +EXPORT_SYMBOL vmlinux 0x7c3464e4 mmc_run_bkops +EXPORT_SYMBOL vmlinux 0x7c437991 xfrm_unregister_km +EXPORT_SYMBOL vmlinux 0x7c441bde md_bitmap_sync_with_cluster +EXPORT_SYMBOL vmlinux 0x7c46233a cpufreq_quick_get +EXPORT_SYMBOL vmlinux 0x7c601745 dquot_initialize +EXPORT_SYMBOL vmlinux 0x7c8fadc8 register_key_type +EXPORT_SYMBOL vmlinux 0x7c9ca58f __sg_page_iter_next +EXPORT_SYMBOL vmlinux 0x7ca13f36 dquot_get_dqblk +EXPORT_SYMBOL vmlinux 0x7cb1aea1 devlink_dpipe_header_ethernet +EXPORT_SYMBOL vmlinux 0x7cb9b545 phy_advertise_supported +EXPORT_SYMBOL vmlinux 0x7cd52d3d genphy_config_eee_advert +EXPORT_SYMBOL vmlinux 0x7cd7c264 acpi_get_hp_hw_control_from_firmware +EXPORT_SYMBOL vmlinux 0x7ce18c9f from_kqid +EXPORT_SYMBOL vmlinux 0x7cec2822 udp_prot +EXPORT_SYMBOL vmlinux 0x7cee12d5 inet_gso_segment +EXPORT_SYMBOL vmlinux 0x7cf35220 vme_master_free +EXPORT_SYMBOL vmlinux 0x7cf770d3 dst_release_immediate +EXPORT_SYMBOL vmlinux 0x7cfaa6a2 iov_iter_fault_in_readable +EXPORT_SYMBOL vmlinux 0x7cfe368d net_dim_get_def_tx_moderation +EXPORT_SYMBOL vmlinux 0x7d036a93 __cleancache_get_page +EXPORT_SYMBOL vmlinux 0x7d074b7f kthread_associate_blkcg +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 0x7d178bd3 xfrm_policy_bysel_ctx +EXPORT_SYMBOL vmlinux 0x7d179f7a dmam_alloc_attrs +EXPORT_SYMBOL vmlinux 0x7d1a9d93 cpufreq_get_policy +EXPORT_SYMBOL vmlinux 0x7d20e96d unpin_user_page +EXPORT_SYMBOL vmlinux 0x7d462665 mdio_find_bus +EXPORT_SYMBOL vmlinux 0x7d48874b tc_setup_flow_action +EXPORT_SYMBOL vmlinux 0x7d4b176a netlbl_catmap_setbit +EXPORT_SYMBOL vmlinux 0x7d4d0e2b mark_buffer_dirty +EXPORT_SYMBOL vmlinux 0x7d5e1008 __crc32c_le_shift +EXPORT_SYMBOL vmlinux 0x7d7a2c3d of_get_next_cpu_node +EXPORT_SYMBOL vmlinux 0x7d9f7043 flow_block_cb_priv +EXPORT_SYMBOL vmlinux 0x7da479d7 mdiobus_register_device +EXPORT_SYMBOL vmlinux 0x7daece67 quota_send_warning +EXPORT_SYMBOL vmlinux 0x7db8b50c cdev_set_parent +EXPORT_SYMBOL vmlinux 0x7dbb4613 kmem_cache_free_bulk +EXPORT_SYMBOL vmlinux 0x7dbf3e41 security_d_instantiate +EXPORT_SYMBOL vmlinux 0x7dc3cdae vfs_getattr +EXPORT_SYMBOL vmlinux 0x7dd3dc5f tcp_seq_stop +EXPORT_SYMBOL vmlinux 0x7dd6f7a4 eth_header_cache_update +EXPORT_SYMBOL vmlinux 0x7dec9fe7 bio_list_copy_data +EXPORT_SYMBOL vmlinux 0x7deff673 dm_consume_args +EXPORT_SYMBOL vmlinux 0x7df47180 __phy_resume +EXPORT_SYMBOL vmlinux 0x7e0826e2 atomic_dec_and_mutex_lock +EXPORT_SYMBOL vmlinux 0x7e3191f6 try_to_del_timer_sync +EXPORT_SYMBOL vmlinux 0x7e31b8b3 __netlink_ns_capable +EXPORT_SYMBOL vmlinux 0x7e3d9285 truncate_inode_pages +EXPORT_SYMBOL vmlinux 0x7e44d7f8 cros_ec_get_next_event +EXPORT_SYMBOL vmlinux 0x7eae3ed4 dm_mq_kick_requeue_list +EXPORT_SYMBOL vmlinux 0x7eb8c975 vm_insert_page +EXPORT_SYMBOL vmlinux 0x7ec78bdd rename_lock +EXPORT_SYMBOL vmlinux 0x7ed134eb sock_set_priority +EXPORT_SYMBOL vmlinux 0x7eda957a inet6_ioctl +EXPORT_SYMBOL vmlinux 0x7f02188f __msecs_to_jiffies +EXPORT_SYMBOL vmlinux 0x7f03b6a9 crc_ccitt_table +EXPORT_SYMBOL vmlinux 0x7f05f0e2 netlink_rcv_skb +EXPORT_SYMBOL vmlinux 0x7f0cce60 tcp_make_synack +EXPORT_SYMBOL vmlinux 0x7f0dc5dd migrate_page_states +EXPORT_SYMBOL vmlinux 0x7f1878e0 input_match_device_id +EXPORT_SYMBOL vmlinux 0x7f1b9fe7 __test_set_page_writeback +EXPORT_SYMBOL vmlinux 0x7f1f7f0b register_tcf_proto_ops +EXPORT_SYMBOL vmlinux 0x7f24de73 jiffies_to_usecs +EXPORT_SYMBOL vmlinux 0x7f25667c input_unregister_handle +EXPORT_SYMBOL vmlinux 0x7f52071a net_dim +EXPORT_SYMBOL vmlinux 0x7f5b4fe4 sg_free_table +EXPORT_SYMBOL vmlinux 0x7f63c515 netdev_name_node_alt_destroy +EXPORT_SYMBOL vmlinux 0x7f73d585 set_create_files_as +EXPORT_SYMBOL vmlinux 0x7f78b8b3 pci_pme_capable +EXPORT_SYMBOL vmlinux 0x7f7e89d7 ip_tunnel_header_ops +EXPORT_SYMBOL vmlinux 0x7f7f7bb4 irq_poll_disable +EXPORT_SYMBOL vmlinux 0x7f967d4a inet_frag_reasm_prepare +EXPORT_SYMBOL vmlinux 0x7fa8107e xfrm_unregister_type_offload +EXPORT_SYMBOL vmlinux 0x7fad56f1 iov_iter_discard +EXPORT_SYMBOL vmlinux 0x7faea0d0 ip_mc_inc_group +EXPORT_SYMBOL vmlinux 0x7fb770a2 migrate_vma_setup +EXPORT_SYMBOL vmlinux 0x7fcccf99 register_filesystem +EXPORT_SYMBOL vmlinux 0x7fce45c1 xfrm_input_register_afinfo +EXPORT_SYMBOL vmlinux 0x7fe105d7 bman_ip_rev +EXPORT_SYMBOL vmlinux 0x7fe32873 rb_replace_node +EXPORT_SYMBOL vmlinux 0x801af609 of_iomap +EXPORT_SYMBOL vmlinux 0x802fe7f7 drop_nlink +EXPORT_SYMBOL vmlinux 0x803ddbb6 __posix_acl_create +EXPORT_SYMBOL vmlinux 0x8043dc62 simple_lookup +EXPORT_SYMBOL vmlinux 0x80532001 try_to_writeback_inodes_sb +EXPORT_SYMBOL vmlinux 0x806056a3 passthru_features_check +EXPORT_SYMBOL vmlinux 0x8071f01d mmc_gpiod_request_ro +EXPORT_SYMBOL vmlinux 0x807a718a inet_ioctl +EXPORT_SYMBOL vmlinux 0x8089fbba dma_fence_array_create +EXPORT_SYMBOL vmlinux 0x8090242f fb_firmware_edid +EXPORT_SYMBOL vmlinux 0x809712ff hdmi_avi_infoframe_pack +EXPORT_SYMBOL vmlinux 0x80a717a8 __percpu_counter_compare +EXPORT_SYMBOL vmlinux 0x80abf230 md_bitmap_unplug +EXPORT_SYMBOL vmlinux 0x80bc8f20 ip_sock_set_recverr +EXPORT_SYMBOL vmlinux 0x80c093bf twl6040_get_pll +EXPORT_SYMBOL vmlinux 0x80c4ea84 scsi_block_when_processing_errors +EXPORT_SYMBOL vmlinux 0x80ca5026 _bin2bcd +EXPORT_SYMBOL vmlinux 0x80d68d3e fb_register_client +EXPORT_SYMBOL vmlinux 0x80ecc6ef i2c_smbus_read_i2c_block_data +EXPORT_SYMBOL vmlinux 0x8112b3d2 scsi_build_sense_buffer +EXPORT_SYMBOL vmlinux 0x81188c30 match_string +EXPORT_SYMBOL vmlinux 0x8136407f skb_copy_and_csum_datagram_msg +EXPORT_SYMBOL vmlinux 0x81533963 sysfs_format_mac +EXPORT_SYMBOL vmlinux 0x815b5dd4 match_octal +EXPORT_SYMBOL vmlinux 0x815f2897 empty_zero_page +EXPORT_SYMBOL vmlinux 0x81630968 path_get +EXPORT_SYMBOL vmlinux 0x818416e1 scsi_set_sense_information +EXPORT_SYMBOL vmlinux 0x818edf97 cpm_muram_alloc +EXPORT_SYMBOL vmlinux 0x81a406e1 sock_set_rcvbuf +EXPORT_SYMBOL vmlinux 0x81ac5e33 trace_print_hex_dump_seq +EXPORT_SYMBOL vmlinux 0x81b395b3 down_interruptible +EXPORT_SYMBOL vmlinux 0x81b8621a tcp_peek_len +EXPORT_SYMBOL vmlinux 0x81db6ebb xz_dec_reset +EXPORT_SYMBOL vmlinux 0x81e6b37f dmi_get_system_info +EXPORT_SYMBOL vmlinux 0x820716db dma_alloc_attrs +EXPORT_SYMBOL vmlinux 0x82072614 tasklet_kill +EXPORT_SYMBOL vmlinux 0x821747bf ip_options_compile +EXPORT_SYMBOL vmlinux 0x821933b9 dquot_mark_dquot_dirty +EXPORT_SYMBOL vmlinux 0x8227e0fa locks_remove_posix +EXPORT_SYMBOL vmlinux 0x8229292c ipmi_platform_add +EXPORT_SYMBOL vmlinux 0x822cf9b4 pci_free_host_bridge +EXPORT_SYMBOL vmlinux 0x823d3505 cmxgcr_lock +EXPORT_SYMBOL vmlinux 0x8244d6bc processors +EXPORT_SYMBOL vmlinux 0x8246c3f8 tcf_block_put_ext +EXPORT_SYMBOL vmlinux 0x825a76f8 simple_symlink_inode_operations +EXPORT_SYMBOL vmlinux 0x8263a6d9 proc_douintvec +EXPORT_SYMBOL vmlinux 0x82663045 __dquot_alloc_space +EXPORT_SYMBOL vmlinux 0x828062b1 __frontswap_init +EXPORT_SYMBOL vmlinux 0x829da6a0 __skb_wait_for_more_packets +EXPORT_SYMBOL vmlinux 0x82a0328f of_dev_put +EXPORT_SYMBOL vmlinux 0x82a3b1d6 tty_chars_in_buffer +EXPORT_SYMBOL vmlinux 0x82aa8fdb vme_master_mmap +EXPORT_SYMBOL vmlinux 0x82b14a13 frontswap_register_ops +EXPORT_SYMBOL vmlinux 0x82ba2bbc read_cache_page_gfp +EXPORT_SYMBOL vmlinux 0x82c87ad5 nr_online_nodes +EXPORT_SYMBOL vmlinux 0x82d0f411 pnp_unregister_driver +EXPORT_SYMBOL vmlinux 0x82d4f7ec configfs_undepend_item +EXPORT_SYMBOL vmlinux 0x82e932b7 kernel_accept +EXPORT_SYMBOL vmlinux 0x82eeb0a5 complete_request_key +EXPORT_SYMBOL vmlinux 0x83066d26 vc_cons +EXPORT_SYMBOL vmlinux 0x83145978 tty_port_close +EXPORT_SYMBOL vmlinux 0x832ad3b2 unregister_md_personality +EXPORT_SYMBOL vmlinux 0x832fe924 pci_bus_write_config_dword +EXPORT_SYMBOL vmlinux 0x83581089 gf128mul_init_4k_lle +EXPORT_SYMBOL vmlinux 0x83749847 super_setup_bdi_name +EXPORT_SYMBOL vmlinux 0x837b7b09 __dynamic_pr_debug +EXPORT_SYMBOL vmlinux 0x838d2bc8 siphash_3u32 +EXPORT_SYMBOL vmlinux 0x838d6d0f vga_client_register +EXPORT_SYMBOL vmlinux 0x838e6cea ip6mr_rule_default +EXPORT_SYMBOL vmlinux 0x83a23545 of_platform_bus_probe +EXPORT_SYMBOL vmlinux 0x83bcf1d1 blk_mq_stop_hw_queues +EXPORT_SYMBOL vmlinux 0x83c52fba xfrm4_protocol_init +EXPORT_SYMBOL vmlinux 0x83f01670 cros_ec_query_all +EXPORT_SYMBOL vmlinux 0x840342c6 sgl_free +EXPORT_SYMBOL vmlinux 0x8438199f rtnl_create_link +EXPORT_SYMBOL vmlinux 0x845a3a1c cpu_hwcap_keys +EXPORT_SYMBOL vmlinux 0x8473f800 unregister_mii_timestamper +EXPORT_SYMBOL vmlinux 0x84758405 pps_lookup_dev +EXPORT_SYMBOL vmlinux 0x8478d6da gnet_stats_start_copy +EXPORT_SYMBOL vmlinux 0x848a7b85 prepare_to_swait_event +EXPORT_SYMBOL vmlinux 0x84934649 mark_info_dirty +EXPORT_SYMBOL vmlinux 0x849c39af migrate_page_copy +EXPORT_SYMBOL vmlinux 0x84b01dfa tcf_action_update_stats +EXPORT_SYMBOL vmlinux 0x84c0a4c5 _copy_to_iter +EXPORT_SYMBOL vmlinux 0x84c1c552 proc_dointvec_ms_jiffies +EXPORT_SYMBOL vmlinux 0x84ddd8c4 mr_mfc_find_any +EXPORT_SYMBOL vmlinux 0x85150337 is_nd_dax +EXPORT_SYMBOL vmlinux 0x851b9121 xudma_dev_get_psil_base +EXPORT_SYMBOL vmlinux 0x851c8df0 nd_integrity_init +EXPORT_SYMBOL vmlinux 0x8551ff39 __vfs_getxattr +EXPORT_SYMBOL vmlinux 0x85532eb1 __tracepoint_dma_fence_enable_signal +EXPORT_SYMBOL vmlinux 0x856260a0 phy_ethtool_get_eee +EXPORT_SYMBOL vmlinux 0x85670f1d rtnl_is_locked +EXPORT_SYMBOL vmlinux 0x8569aa79 abx500_remove_ops +EXPORT_SYMBOL vmlinux 0x8574b7c3 alloc_buffer_head +EXPORT_SYMBOL vmlinux 0x857d8435 generic_file_open +EXPORT_SYMBOL vmlinux 0x858b3fe3 free_iova_mem +EXPORT_SYMBOL vmlinux 0x8591d7d5 ledtrig_mtd_activity +EXPORT_SYMBOL vmlinux 0x85b4cf2f utf8nlen +EXPORT_SYMBOL vmlinux 0x85b5e625 rfkill_set_states +EXPORT_SYMBOL vmlinux 0x85bd1608 __request_region +EXPORT_SYMBOL vmlinux 0x85d50730 config_group_init +EXPORT_SYMBOL vmlinux 0x85d7703f sock_common_setsockopt +EXPORT_SYMBOL vmlinux 0x85de7e72 ata_std_end_eh +EXPORT_SYMBOL vmlinux 0x85df9b6c strsep +EXPORT_SYMBOL vmlinux 0x85e5f191 fuse_dequeue_forget +EXPORT_SYMBOL vmlinux 0x85ea9f87 gro_find_complete_by_type +EXPORT_SYMBOL vmlinux 0x85efc7e0 zero_pfn +EXPORT_SYMBOL vmlinux 0x85fbc931 slhc_uncompress +EXPORT_SYMBOL vmlinux 0x861d6251 tty_port_lower_dtr_rts +EXPORT_SYMBOL vmlinux 0x86299abf fscrypt_decrypt_block_inplace +EXPORT_SYMBOL vmlinux 0x8637defc bprm_change_interp +EXPORT_SYMBOL vmlinux 0x863a276a color_table +EXPORT_SYMBOL vmlinux 0x864c8c9d eth_type_trans +EXPORT_SYMBOL vmlinux 0x865029ac __hw_addr_sync +EXPORT_SYMBOL vmlinux 0x86669440 i2c_verify_client +EXPORT_SYMBOL vmlinux 0x86759f86 filemap_page_mkwrite +EXPORT_SYMBOL vmlinux 0x868acba5 get_options +EXPORT_SYMBOL vmlinux 0x868e526a msm_pinctrl_remove +EXPORT_SYMBOL vmlinux 0x86a12f21 should_remove_suid +EXPORT_SYMBOL vmlinux 0x86b36597 __find_get_block +EXPORT_SYMBOL vmlinux 0x86b55d90 inc_node_page_state +EXPORT_SYMBOL vmlinux 0x86c0f270 fb_show_logo +EXPORT_SYMBOL vmlinux 0x86d52ba5 lookup_constant +EXPORT_SYMBOL vmlinux 0x86eb31a7 blk_queue_max_segment_size +EXPORT_SYMBOL vmlinux 0x86fb9b05 bitmap_parse_user +EXPORT_SYMBOL vmlinux 0x87139e67 unregister_netdevice_notifier_dev_net +EXPORT_SYMBOL vmlinux 0x8748da46 devm_release_resource +EXPORT_SYMBOL vmlinux 0x8761c87b rps_needed +EXPORT_SYMBOL vmlinux 0x8763a126 _dev_emerg +EXPORT_SYMBOL vmlinux 0x877d5961 pnp_start_dev +EXPORT_SYMBOL vmlinux 0x87802d8d devm_ioport_unmap +EXPORT_SYMBOL vmlinux 0x878469bd ZSTD_decompressStream +EXPORT_SYMBOL vmlinux 0x87b8798d sg_next +EXPORT_SYMBOL vmlinux 0x87bf4112 get_thermal_instance +EXPORT_SYMBOL vmlinux 0x87c152ef netdev_rx_csum_fault +EXPORT_SYMBOL vmlinux 0x87c28f52 of_find_node_opts_by_path +EXPORT_SYMBOL vmlinux 0x87d01b88 prepare_creds +EXPORT_SYMBOL vmlinux 0x87e3c887 netpoll_send_udp +EXPORT_SYMBOL vmlinux 0x8805899a mmc_put_card +EXPORT_SYMBOL vmlinux 0x8807cf35 skb_copy_datagram_from_iter +EXPORT_SYMBOL vmlinux 0x880c434a acpi_dev_hid_uid_match +EXPORT_SYMBOL vmlinux 0x8816fcb6 fs_lookup_param +EXPORT_SYMBOL vmlinux 0x881bad5e phy_mipi_dphy_config_validate +EXPORT_SYMBOL vmlinux 0x881c4413 gen_pool_first_fit +EXPORT_SYMBOL vmlinux 0x88227955 tcf_em_tree_dump +EXPORT_SYMBOL vmlinux 0x882eb19e inet_csk_init_xmit_timers +EXPORT_SYMBOL vmlinux 0x885452b2 devm_rproc_alloc +EXPORT_SYMBOL vmlinux 0x8863ce45 pci_disable_link_state +EXPORT_SYMBOL vmlinux 0x88684cb3 inet_proto_csum_replace16 +EXPORT_SYMBOL vmlinux 0x886e94a3 nd_dev_to_uuid +EXPORT_SYMBOL vmlinux 0x88822d38 unregister_blocking_lsm_notifier +EXPORT_SYMBOL vmlinux 0x8888f1fe xxh32 +EXPORT_SYMBOL vmlinux 0x88905af3 vme_unregister_bridge +EXPORT_SYMBOL vmlinux 0x88abb78b ZSTD_insertBlock +EXPORT_SYMBOL vmlinux 0x88af62d6 security_path_mkdir +EXPORT_SYMBOL vmlinux 0x88b178a5 alloc_anon_inode +EXPORT_SYMBOL vmlinux 0x88c11fc8 input_unregister_handler +EXPORT_SYMBOL vmlinux 0x88db9f48 __check_object_size +EXPORT_SYMBOL vmlinux 0x88e1d0f0 page_frag_free +EXPORT_SYMBOL vmlinux 0x8907742b vme_dma_list_add +EXPORT_SYMBOL vmlinux 0x89087c8a devfreq_register_notifier +EXPORT_SYMBOL vmlinux 0x891fdde9 pcie_port_service_register +EXPORT_SYMBOL vmlinux 0x893ff549 d_find_any_alias +EXPORT_SYMBOL vmlinux 0x89434b4b radix_tree_tag_clear +EXPORT_SYMBOL vmlinux 0x8946ea72 fpsimd_context_busy +EXPORT_SYMBOL vmlinux 0x8953657c devm_ioremap_wc +EXPORT_SYMBOL vmlinux 0x895f8377 mmc_erase_group_aligned +EXPORT_SYMBOL vmlinux 0x896a9c4a dma_fence_chain_init +EXPORT_SYMBOL vmlinux 0x8995d931 pci_add_new_bus +EXPORT_SYMBOL vmlinux 0x89ab4c42 xfrm6_rcv_spi +EXPORT_SYMBOL vmlinux 0x89adac07 dev_remove_offload +EXPORT_SYMBOL vmlinux 0x89aef127 km_policy_notify +EXPORT_SYMBOL vmlinux 0x89b41f1b jbd2_journal_forget +EXPORT_SYMBOL vmlinux 0x89b87f1b vfs_tmpfile +EXPORT_SYMBOL vmlinux 0x89d7a0ef of_node_put +EXPORT_SYMBOL vmlinux 0x89f13c36 dquot_initialize_needed +EXPORT_SYMBOL vmlinux 0x8a0292f2 PageMovable +EXPORT_SYMBOL vmlinux 0x8a2593f2 dquot_release +EXPORT_SYMBOL vmlinux 0x8a2addb1 udp_seq_ops +EXPORT_SYMBOL vmlinux 0x8a47043d LZ4_decompress_safe_continue +EXPORT_SYMBOL vmlinux 0x8a490c90 rfkill_set_sw_state +EXPORT_SYMBOL vmlinux 0x8a5c3c81 end_buffer_write_sync +EXPORT_SYMBOL vmlinux 0x8a6af65c kstrtoul_from_user +EXPORT_SYMBOL vmlinux 0x8a7d1c31 high_memory +EXPORT_SYMBOL vmlinux 0x8a859146 d_set_d_op +EXPORT_SYMBOL vmlinux 0x8a89b40a blk_dump_rq_flags +EXPORT_SYMBOL vmlinux 0x8a8cd470 param_set_copystring +EXPORT_SYMBOL vmlinux 0x8a948f27 __nla_parse +EXPORT_SYMBOL vmlinux 0x8a982a6d amba_driver_unregister +EXPORT_SYMBOL vmlinux 0x8a99a016 mempool_free_slab +EXPORT_SYMBOL vmlinux 0x8aa2d176 irq_domain_set_info +EXPORT_SYMBOL vmlinux 0x8aaef3a1 __generic_file_fsync +EXPORT_SYMBOL vmlinux 0x8abe28e0 sock_no_listen +EXPORT_SYMBOL vmlinux 0x8abfd40e security_binder_transfer_file +EXPORT_SYMBOL vmlinux 0x8ac136ae imx_sc_misc_get_control +EXPORT_SYMBOL vmlinux 0x8ac3334b net_dim_get_def_rx_moderation +EXPORT_SYMBOL vmlinux 0x8ac743de sg_copy_buffer +EXPORT_SYMBOL vmlinux 0x8ac77a4a ipv6_mc_check_icmpv6 +EXPORT_SYMBOL vmlinux 0x8acddcfc kmem_cache_alloc_trace +EXPORT_SYMBOL vmlinux 0x8ad852a9 nf_hook_slow +EXPORT_SYMBOL vmlinux 0x8aed33ee tcp_rcv_established +EXPORT_SYMBOL vmlinux 0x8aee7a95 netlink_kernel_release +EXPORT_SYMBOL vmlinux 0x8b0088d1 LZ4_decompress_safe_usingDict +EXPORT_SYMBOL vmlinux 0x8b09d404 sk_filter_trim_cap +EXPORT_SYMBOL vmlinux 0x8b115568 pci_find_parent_resource +EXPORT_SYMBOL vmlinux 0x8b1a2c56 fb_prepare_logo +EXPORT_SYMBOL vmlinux 0x8b2a779e uart_get_divisor +EXPORT_SYMBOL vmlinux 0x8b2ffd83 __cpu_present_mask +EXPORT_SYMBOL vmlinux 0x8b44d529 skb_flow_dissect_tunnel_info +EXPORT_SYMBOL vmlinux 0x8b4ffb2b phy_read_paged +EXPORT_SYMBOL vmlinux 0x8b618d08 overflowuid +EXPORT_SYMBOL vmlinux 0x8b756fff neigh_ifdown +EXPORT_SYMBOL vmlinux 0x8b8059bd in_group_p +EXPORT_SYMBOL vmlinux 0x8b8b8af1 ww_mutex_unlock +EXPORT_SYMBOL vmlinux 0x8b8cb31b remove_proc_subtree +EXPORT_SYMBOL vmlinux 0x8b910be2 errseq_sample +EXPORT_SYMBOL vmlinux 0x8b989cf9 acpi_bus_can_wakeup +EXPORT_SYMBOL vmlinux 0x8b9ea582 ZSTD_copyDCtx +EXPORT_SYMBOL vmlinux 0x8ba9f6ea scsi_eh_finish_cmd +EXPORT_SYMBOL vmlinux 0x8bba1ec8 napi_gro_flush +EXPORT_SYMBOL vmlinux 0x8be189ab ucc_slow_disable +EXPORT_SYMBOL vmlinux 0x8becb98a framebuffer_alloc +EXPORT_SYMBOL vmlinux 0x8bf01e31 mmc_detect_change +EXPORT_SYMBOL vmlinux 0x8bfa5f1a audit_log +EXPORT_SYMBOL vmlinux 0x8c010f92 pnp_device_attach +EXPORT_SYMBOL vmlinux 0x8c14446e scsi_dma_map +EXPORT_SYMBOL vmlinux 0x8c1b7b1a xudma_dev_get_tisci_rm +EXPORT_SYMBOL vmlinux 0x8c26d495 prepare_to_wait_event +EXPORT_SYMBOL vmlinux 0x8c6bf651 flow_block_cb_is_busy +EXPORT_SYMBOL vmlinux 0x8c70d70f tcp_recvmsg +EXPORT_SYMBOL vmlinux 0x8c7776f0 unregister_mii_tstamp_controller +EXPORT_SYMBOL vmlinux 0x8c7ed1a1 netdev_crit +EXPORT_SYMBOL vmlinux 0x8c875387 simple_recursive_removal +EXPORT_SYMBOL vmlinux 0x8c9e338f acpi_bios_error +EXPORT_SYMBOL vmlinux 0x8ca854d6 d_set_fallthru +EXPORT_SYMBOL vmlinux 0x8cb544df __tracepoint_kmalloc +EXPORT_SYMBOL vmlinux 0x8cc53d20 __par_io_config_pin +EXPORT_SYMBOL vmlinux 0x8cd66115 jbd2_journal_inode_ranged_wait +EXPORT_SYMBOL vmlinux 0x8cda8029 xen_clear_irq_pending +EXPORT_SYMBOL vmlinux 0x8cdb94a2 phy_print_status +EXPORT_SYMBOL vmlinux 0x8cddc30b skb_udp_tunnel_segment +EXPORT_SYMBOL vmlinux 0x8cf0614c nvmem_get_mac_address +EXPORT_SYMBOL vmlinux 0x8d023178 bpf_prog_get_type_path +EXPORT_SYMBOL vmlinux 0x8d0ee7a2 nd_btt_version +EXPORT_SYMBOL vmlinux 0x8d101e42 sock_setsockopt +EXPORT_SYMBOL vmlinux 0x8d145ac9 vme_irq_generate +EXPORT_SYMBOL vmlinux 0x8d17d604 pfifo_fast_ops +EXPORT_SYMBOL vmlinux 0x8d1a2d4a file_open_root +EXPORT_SYMBOL vmlinux 0x8d1e8226 mr_mfc_seq_idx +EXPORT_SYMBOL vmlinux 0x8d32582d register_qdisc +EXPORT_SYMBOL vmlinux 0x8d55bb8a qid_eq +EXPORT_SYMBOL vmlinux 0x8d704c01 mdiobus_unregister +EXPORT_SYMBOL vmlinux 0x8d724b95 md_write_start +EXPORT_SYMBOL vmlinux 0x8d73278e hex_asc_upper +EXPORT_SYMBOL vmlinux 0x8d9ca0e6 dma_fence_enable_sw_signaling +EXPORT_SYMBOL vmlinux 0x8db0bec1 netdev_next_lower_dev_rcu +EXPORT_SYMBOL vmlinux 0x8ddd8aad schedule_timeout +EXPORT_SYMBOL vmlinux 0x8df4afd9 qe_put_snum +EXPORT_SYMBOL vmlinux 0x8df92f66 memchr_inv +EXPORT_SYMBOL vmlinux 0x8df9dd10 guid_null +EXPORT_SYMBOL vmlinux 0x8e17b3ae idr_destroy +EXPORT_SYMBOL vmlinux 0x8e21c9a1 dma_fence_add_callback +EXPORT_SYMBOL vmlinux 0x8e3f1e59 ptp_find_pin_unlocked +EXPORT_SYMBOL vmlinux 0x8e4c60a3 cpm_muram_dma +EXPORT_SYMBOL vmlinux 0x8e50e41e inet_bind +EXPORT_SYMBOL vmlinux 0x8e5178f8 mmc_retune_pause +EXPORT_SYMBOL vmlinux 0x8e672f03 tcp_mss_to_mtu +EXPORT_SYMBOL vmlinux 0x8e6fedf4 dquot_claim_space_nodirty +EXPORT_SYMBOL vmlinux 0x8e719466 md_handle_request +EXPORT_SYMBOL vmlinux 0x8e7d8539 max8925_reg_write +EXPORT_SYMBOL vmlinux 0x8e8b87c9 netif_receive_skb +EXPORT_SYMBOL vmlinux 0x8e93bd24 security_secctx_to_secid +EXPORT_SYMBOL vmlinux 0x8eb27c85 input_mt_destroy_slots +EXPORT_SYMBOL vmlinux 0x8eb9f710 tcp_get_md5sig_pool +EXPORT_SYMBOL vmlinux 0x8ec14314 logfc +EXPORT_SYMBOL vmlinux 0x8ed0a39d inet_gro_complete +EXPORT_SYMBOL vmlinux 0x8ed34cca sock_queue_rcv_skb +EXPORT_SYMBOL vmlinux 0x8ef9c0e8 load_nls +EXPORT_SYMBOL vmlinux 0x8f01afd6 twl6030_interrupt_mask +EXPORT_SYMBOL vmlinux 0x8f158935 rproc_coredump_set_elf_info +EXPORT_SYMBOL vmlinux 0x8f18a3d0 component_match_add_typed +EXPORT_SYMBOL vmlinux 0x8f40802f sock_no_getname +EXPORT_SYMBOL vmlinux 0x8f4aef82 sock_alloc_send_skb +EXPORT_SYMBOL vmlinux 0x8f552e37 jbd2_journal_force_commit +EXPORT_SYMBOL vmlinux 0x8f55d91f pagecache_get_page +EXPORT_SYMBOL vmlinux 0x8f876c49 scsi_partsize +EXPORT_SYMBOL vmlinux 0x8f98f652 xfrm_policy_byid +EXPORT_SYMBOL vmlinux 0x8f996a30 ethtool_convert_legacy_u32_to_link_mode +EXPORT_SYMBOL vmlinux 0x8fa25c24 xa_find +EXPORT_SYMBOL vmlinux 0x8fa32c2d eth_mac_addr +EXPORT_SYMBOL vmlinux 0x8fc9ea11 fman_port_cfg_buf_prefix_content +EXPORT_SYMBOL vmlinux 0x8fd180e7 kernel_neon_begin +EXPORT_SYMBOL vmlinux 0x8fda6a7f __next_node_in +EXPORT_SYMBOL vmlinux 0x8ff89ed0 seg6_hmac_exit +EXPORT_SYMBOL vmlinux 0x8ffbdba9 blk_limits_io_min +EXPORT_SYMBOL vmlinux 0x90176c72 seq_puts +EXPORT_SYMBOL vmlinux 0x902d8722 vme_slave_get +EXPORT_SYMBOL vmlinux 0x902f5199 cpumask_next_wrap +EXPORT_SYMBOL vmlinux 0x9034a696 mempool_destroy +EXPORT_SYMBOL vmlinux 0x90408fae alloc_etherdev_mqs +EXPORT_SYMBOL vmlinux 0x90451b9c poll_freewait +EXPORT_SYMBOL vmlinux 0x9054ee54 ethtool_intersect_link_masks +EXPORT_SYMBOL vmlinux 0x90552e50 __sock_queue_rcv_skb +EXPORT_SYMBOL vmlinux 0x905695ab sg_copy_from_buffer +EXPORT_SYMBOL vmlinux 0x90576ec4 vmemdup_user +EXPORT_SYMBOL vmlinux 0x9074bbcc tty_unregister_device +EXPORT_SYMBOL vmlinux 0x907ba52c posix_acl_valid +EXPORT_SYMBOL vmlinux 0x907bc547 dma_direct_sync_sg_for_cpu +EXPORT_SYMBOL vmlinux 0x90883b7a i2c_transfer_buffer_flags +EXPORT_SYMBOL vmlinux 0x909b978f remap_vmalloc_range +EXPORT_SYMBOL vmlinux 0x90b4d700 sock_recvmsg +EXPORT_SYMBOL vmlinux 0x90d4a682 security_sctp_assoc_request +EXPORT_SYMBOL vmlinux 0x9106a44a devm_devfreq_unregister_opp_notifier +EXPORT_SYMBOL vmlinux 0x9108e9b9 rproc_elf_find_loaded_rsc_table +EXPORT_SYMBOL vmlinux 0x910a2ec3 mdiobus_free +EXPORT_SYMBOL vmlinux 0x912cc4b0 of_graph_get_port_parent +EXPORT_SYMBOL vmlinux 0x9135cf59 simple_nosetlease +EXPORT_SYMBOL vmlinux 0x91478b82 security_dentry_init_security +EXPORT_SYMBOL vmlinux 0x9154ac30 skb_queue_tail +EXPORT_SYMBOL vmlinux 0x91614d1c dma_async_device_unregister +EXPORT_SYMBOL vmlinux 0x9166fada strncpy +EXPORT_SYMBOL vmlinux 0x916ddbf6 of_device_get_match_data +EXPORT_SYMBOL vmlinux 0x9177614c of_mdiobus_child_is_phy +EXPORT_SYMBOL vmlinux 0x91936ec2 pci_save_state +EXPORT_SYMBOL vmlinux 0x919c58f3 __clzsi2 +EXPORT_SYMBOL vmlinux 0x91a7b1da qdisc_class_hash_remove +EXPORT_SYMBOL vmlinux 0x91b72352 xfrm_init_state +EXPORT_SYMBOL vmlinux 0x91b9a839 generic_write_end +EXPORT_SYMBOL vmlinux 0x91c0980e icst_hz +EXPORT_SYMBOL vmlinux 0x91dc6d60 tcp_rtx_synack +EXPORT_SYMBOL vmlinux 0x91e1c4b3 skb_prepare_seq_read +EXPORT_SYMBOL vmlinux 0x91e2afe0 page_symlink +EXPORT_SYMBOL vmlinux 0x91f44510 idr_alloc_cyclic +EXPORT_SYMBOL vmlinux 0x92093e2d dquot_commit_info +EXPORT_SYMBOL vmlinux 0x9214265c devm_clk_get +EXPORT_SYMBOL vmlinux 0x921b13f7 md_bitmap_close_sync +EXPORT_SYMBOL vmlinux 0x922f45a6 __bitmap_clear +EXPORT_SYMBOL vmlinux 0x9234b950 devfreq_resume_device +EXPORT_SYMBOL vmlinux 0x923b1276 dmaengine_get +EXPORT_SYMBOL vmlinux 0x92540fbf finish_wait +EXPORT_SYMBOL vmlinux 0x9258c776 hdmi_vendor_infoframe_pack_only +EXPORT_SYMBOL vmlinux 0x9282b015 configfs_depend_item_unlocked +EXPORT_SYMBOL vmlinux 0x9282f561 jbd2_journal_init_jbd_inode +EXPORT_SYMBOL vmlinux 0x928ee442 put_watch_queue +EXPORT_SYMBOL vmlinux 0x9291cd3b memdup_user +EXPORT_SYMBOL vmlinux 0x929545a9 tc_setup_cb_add +EXPORT_SYMBOL vmlinux 0x929f4ee9 dcb_ieee_delapp +EXPORT_SYMBOL vmlinux 0x92a13e02 pci_release_selected_regions +EXPORT_SYMBOL vmlinux 0x92b0580c __ip_mc_dec_group +EXPORT_SYMBOL vmlinux 0x92b99a33 acpi_put_table +EXPORT_SYMBOL vmlinux 0x92b9b180 slash_name +EXPORT_SYMBOL vmlinux 0x92d6e93c t10_pi_type3_crc +EXPORT_SYMBOL vmlinux 0x92d9cdef iov_iter_for_each_range +EXPORT_SYMBOL vmlinux 0x92ec510d jiffies64_to_msecs +EXPORT_SYMBOL vmlinux 0x92fa5abb vme_lm_detach +EXPORT_SYMBOL vmlinux 0x92fb2a51 pin_user_pages_remote +EXPORT_SYMBOL vmlinux 0x93018fdb param_ops_string +EXPORT_SYMBOL vmlinux 0x93022ba6 __scsi_format_command +EXPORT_SYMBOL vmlinux 0x9305bf68 find_next_and_bit +EXPORT_SYMBOL vmlinux 0x9305f8e6 cpufreq_get +EXPORT_SYMBOL vmlinux 0x9325f980 inet_add_offload +EXPORT_SYMBOL vmlinux 0x932a3180 clk_bulk_get_all +EXPORT_SYMBOL vmlinux 0x9340aeda __dynamic_netdev_dbg +EXPORT_SYMBOL vmlinux 0x93551af0 fd_install +EXPORT_SYMBOL vmlinux 0x935a30e0 page_pool_update_nid +EXPORT_SYMBOL vmlinux 0x936ca13c flow_rule_alloc +EXPORT_SYMBOL vmlinux 0x937733e3 qid_valid +EXPORT_SYMBOL vmlinux 0x937e953d devm_clk_hw_register_clkdev +EXPORT_SYMBOL vmlinux 0x93a6e0b2 io_schedule +EXPORT_SYMBOL vmlinux 0x93a7fe64 freeze_super +EXPORT_SYMBOL vmlinux 0x93b3fc74 register_dcbevent_notifier +EXPORT_SYMBOL vmlinux 0x93c06126 bio_integrity_trim +EXPORT_SYMBOL vmlinux 0x93c1992f nla_put_nohdr +EXPORT_SYMBOL vmlinux 0x93d6dd8c complete_all +EXPORT_SYMBOL vmlinux 0x93e54097 __dynamic_dev_dbg +EXPORT_SYMBOL vmlinux 0x93f12ea9 irq_set_chip +EXPORT_SYMBOL vmlinux 0x93f46546 ip_fraglist_prepare +EXPORT_SYMBOL vmlinux 0x94049c93 textsearch_unregister +EXPORT_SYMBOL vmlinux 0x9412e192 pci_get_class +EXPORT_SYMBOL vmlinux 0x9418c0aa phy_attach_direct +EXPORT_SYMBOL vmlinux 0x9425caca sched_autogroup_detach +EXPORT_SYMBOL vmlinux 0x9428f816 dim_turn +EXPORT_SYMBOL vmlinux 0x94326b55 mmc_detect_card_removed +EXPORT_SYMBOL vmlinux 0x9432706f ppp_register_net_channel +EXPORT_SYMBOL vmlinux 0x944375db _totalram_pages +EXPORT_SYMBOL vmlinux 0x944a564d is_console_locked +EXPORT_SYMBOL vmlinux 0x945ba508 tty_port_tty_get +EXPORT_SYMBOL vmlinux 0x945bc83e jbd2_journal_get_write_access +EXPORT_SYMBOL vmlinux 0x94885499 mipi_dsi_dcs_set_column_address +EXPORT_SYMBOL vmlinux 0x9490c488 of_match_node +EXPORT_SYMBOL vmlinux 0x94961283 vunmap +EXPORT_SYMBOL vmlinux 0x94bb7ec3 gen_pool_dma_zalloc_algo +EXPORT_SYMBOL vmlinux 0x94bf03ca utf8_to_utf32 +EXPORT_SYMBOL vmlinux 0x94c12255 fman_unregister_intr +EXPORT_SYMBOL vmlinux 0x94e2d032 vlan_filter_drop_vids +EXPORT_SYMBOL vmlinux 0x94e481cf ZSTD_adjustCParams +EXPORT_SYMBOL vmlinux 0x94ecfe03 pci_alloc_dev +EXPORT_SYMBOL vmlinux 0x94f68173 xfrm_register_type_offload +EXPORT_SYMBOL vmlinux 0x94fc8d93 smp_call_function_many +EXPORT_SYMBOL vmlinux 0x95086166 dcb_ieee_getapp_prio_dscp_mask_map +EXPORT_SYMBOL vmlinux 0x950c0daa ppp_channel_index +EXPORT_SYMBOL vmlinux 0x9522f351 param_get_invbool +EXPORT_SYMBOL vmlinux 0x95322737 noop_llseek +EXPORT_SYMBOL vmlinux 0x9545af6d tasklet_init +EXPORT_SYMBOL vmlinux 0x954cef6f init_on_alloc +EXPORT_SYMBOL vmlinux 0x954d473c rt_dst_clone +EXPORT_SYMBOL vmlinux 0x954f099c idr_preload +EXPORT_SYMBOL vmlinux 0x956c90f1 vfs_statx_fd +EXPORT_SYMBOL vmlinux 0x956e649c bdget_disk +EXPORT_SYMBOL vmlinux 0x95722936 ucc_fast_transmit_on_demand +EXPORT_SYMBOL vmlinux 0x9598b916 dev_set_promiscuity +EXPORT_SYMBOL vmlinux 0x95a67b07 udp_table +EXPORT_SYMBOL vmlinux 0x95bdf09e md_reload_sb +EXPORT_SYMBOL vmlinux 0x95c50a18 netdev_bind_sb_channel_queue +EXPORT_SYMBOL vmlinux 0x95d7131d alloc_file_pseudo +EXPORT_SYMBOL vmlinux 0x95da46b1 napi_schedule_prep +EXPORT_SYMBOL vmlinux 0x95e29651 cookie_timestamp_decode +EXPORT_SYMBOL vmlinux 0x95fcd441 __nla_put_nohdr +EXPORT_SYMBOL vmlinux 0x96160969 mount_bdev +EXPORT_SYMBOL vmlinux 0x9616e224 dev_mc_flush +EXPORT_SYMBOL vmlinux 0x961cbf30 sock_kzfree_s +EXPORT_SYMBOL vmlinux 0x96283e80 simple_open +EXPORT_SYMBOL vmlinux 0x9632e7be show_init_ipc_ns +EXPORT_SYMBOL vmlinux 0x963c4120 param_ops_ushort +EXPORT_SYMBOL vmlinux 0x963e590a param_get_int +EXPORT_SYMBOL vmlinux 0x9642d487 key_link +EXPORT_SYMBOL vmlinux 0x964a0285 km_state_notify +EXPORT_SYMBOL vmlinux 0x964ade4d jbd2_transaction_committed +EXPORT_SYMBOL vmlinux 0x966254c8 scsi_test_unit_ready +EXPORT_SYMBOL vmlinux 0x96674ab4 bio_copy_data +EXPORT_SYMBOL vmlinux 0x96848186 scnprintf +EXPORT_SYMBOL vmlinux 0x9688de8b memstart_addr +EXPORT_SYMBOL vmlinux 0x96936004 devfreq_add_device +EXPORT_SYMBOL vmlinux 0x969b6f7d fman_port_get_device +EXPORT_SYMBOL vmlinux 0x96b29254 strncasecmp +EXPORT_SYMBOL vmlinux 0x96ba4705 end_buffer_async_write +EXPORT_SYMBOL vmlinux 0x96be2f09 pcim_iounmap_regions +EXPORT_SYMBOL vmlinux 0x96c17136 fb_var_to_videomode +EXPORT_SYMBOL vmlinux 0x96c515e3 dquot_acquire +EXPORT_SYMBOL vmlinux 0x96ccc74b dquot_transfer +EXPORT_SYMBOL vmlinux 0x96cd2b04 scsi_sense_key_string +EXPORT_SYMBOL vmlinux 0x96d2c869 fbcon_update_vcs +EXPORT_SYMBOL vmlinux 0x96de8e14 find_inode_rcu +EXPORT_SYMBOL vmlinux 0x96e5d30f gen_pool_set_algo +EXPORT_SYMBOL vmlinux 0x96ebe4d2 scsi_device_put +EXPORT_SYMBOL vmlinux 0x96f2ca84 skb_store_bits +EXPORT_SYMBOL vmlinux 0x96fab350 dim_park_on_top +EXPORT_SYMBOL vmlinux 0x9713a0bb misc_register +EXPORT_SYMBOL vmlinux 0x9726d365 pci_release_regions +EXPORT_SYMBOL vmlinux 0x973fa82e register_acpi_notifier +EXPORT_SYMBOL vmlinux 0x974358c4 xp_set_rxq_info +EXPORT_SYMBOL vmlinux 0x9746eb89 ZSTD_decompressBegin_usingDict +EXPORT_SYMBOL vmlinux 0x9759d7ab set_user_nice +EXPORT_SYMBOL vmlinux 0x9770f5af __dev_remove_pack +EXPORT_SYMBOL vmlinux 0x977f511b __mutex_init +EXPORT_SYMBOL vmlinux 0x978e8635 sync_inodes_sb +EXPORT_SYMBOL vmlinux 0x97934ecf del_timer_sync +EXPORT_SYMBOL vmlinux 0x97999817 rfkill_set_hw_state +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 0x97c027f1 vfs_create +EXPORT_SYMBOL vmlinux 0x97e096e9 rio_query_mport +EXPORT_SYMBOL vmlinux 0x97eb9e4e refresh_frequency_limits +EXPORT_SYMBOL vmlinux 0x97ee0e13 mmc_hw_reset +EXPORT_SYMBOL vmlinux 0x97fb4f67 mii_link_ok +EXPORT_SYMBOL vmlinux 0x97fe9e5f skb_queue_purge +EXPORT_SYMBOL vmlinux 0x9829fc11 __kfifo_out_peek_r +EXPORT_SYMBOL vmlinux 0x982d91b7 tcp_rcv_state_process +EXPORT_SYMBOL vmlinux 0x982f96c8 devm_iounmap +EXPORT_SYMBOL vmlinux 0x9844a289 udp_set_csum +EXPORT_SYMBOL vmlinux 0x985af978 netdev_adjacent_change_abort +EXPORT_SYMBOL vmlinux 0x98779bbf freeze_bdev +EXPORT_SYMBOL vmlinux 0x98806786 locks_init_lock +EXPORT_SYMBOL vmlinux 0x989ec67e tcp_connect +EXPORT_SYMBOL vmlinux 0x98aa9c17 ww_mutex_lock_interruptible +EXPORT_SYMBOL vmlinux 0x98acc3f8 iterate_dir +EXPORT_SYMBOL vmlinux 0x98c039dc dma_fence_wait_timeout +EXPORT_SYMBOL vmlinux 0x98c89ade security_xfrm_state_alloc +EXPORT_SYMBOL vmlinux 0x98cc9179 jbd2_journal_force_commit_nested +EXPORT_SYMBOL vmlinux 0x98cf60b3 strlen +EXPORT_SYMBOL vmlinux 0x98d1d056 padata_free +EXPORT_SYMBOL vmlinux 0x98e2a606 iproc_msi_init +EXPORT_SYMBOL vmlinux 0x98e2dd99 skb_pull +EXPORT_SYMBOL vmlinux 0x98e508ef ignore_console_lock_warning +EXPORT_SYMBOL vmlinux 0x98ef90e2 __register_nls +EXPORT_SYMBOL vmlinux 0x98f0722c __filemap_set_wb_err +EXPORT_SYMBOL vmlinux 0x99078b39 trace_print_flags_seq +EXPORT_SYMBOL vmlinux 0x99094fb2 qcom_scm_is_available +EXPORT_SYMBOL vmlinux 0x990cbf3a pci_unregister_driver +EXPORT_SYMBOL vmlinux 0x9925dbf0 ip6_dst_alloc +EXPORT_SYMBOL vmlinux 0x992faec3 tso_start +EXPORT_SYMBOL vmlinux 0x9939eba0 backlight_unregister_notifier +EXPORT_SYMBOL vmlinux 0x993a6e66 netif_device_detach +EXPORT_SYMBOL vmlinux 0x9944f04b pci_request_regions +EXPORT_SYMBOL vmlinux 0x99461ce3 xfrm_state_insert +EXPORT_SYMBOL vmlinux 0x99517682 udp_encap_enable +EXPORT_SYMBOL vmlinux 0x9960b0ee rproc_add_subdev +EXPORT_SYMBOL vmlinux 0x9975dc22 acpi_get_handle +EXPORT_SYMBOL vmlinux 0x99856735 sunxi_sram_release +EXPORT_SYMBOL vmlinux 0x99862870 pci_clear_master +EXPORT_SYMBOL vmlinux 0x999e8297 vfree +EXPORT_SYMBOL vmlinux 0x99d472b1 net_dim_get_rx_moderation +EXPORT_SYMBOL vmlinux 0x99d78ad0 seq_write +EXPORT_SYMBOL vmlinux 0x99daa9bf try_offline_node +EXPORT_SYMBOL vmlinux 0x99e03dd7 mmput_async +EXPORT_SYMBOL vmlinux 0x99e11afd pci_scan_bridge +EXPORT_SYMBOL vmlinux 0x99e12cee bioset_integrity_create +EXPORT_SYMBOL vmlinux 0x99ea6147 of_find_compatible_node +EXPORT_SYMBOL vmlinux 0x99ee193f skb_realloc_headroom +EXPORT_SYMBOL vmlinux 0x99f3f645 netif_carrier_off +EXPORT_SYMBOL vmlinux 0x99fe9920 kobject_get_unless_zero +EXPORT_SYMBOL vmlinux 0x9a0c3a18 vme_unregister_error_handler +EXPORT_SYMBOL vmlinux 0x9a0cbd4d dev_mc_add_excl +EXPORT_SYMBOL vmlinux 0x9a11a884 abx500_set_register_interruptible +EXPORT_SYMBOL vmlinux 0x9a17114d compat_ipv6_setsockopt +EXPORT_SYMBOL vmlinux 0x9a19ec50 make_flow_keys_digest +EXPORT_SYMBOL vmlinux 0x9a1a3e44 devm_devfreq_unregister_notifier +EXPORT_SYMBOL vmlinux 0x9a1b743a vfs_dup_fs_context +EXPORT_SYMBOL vmlinux 0x9a1dfd65 strpbrk +EXPORT_SYMBOL vmlinux 0x9a22391e radix_tree_gang_lookup_tag_slot +EXPORT_SYMBOL vmlinux 0x9a22d46b vm_insert_pages +EXPORT_SYMBOL vmlinux 0x9a4a13a3 blk_mq_tagset_busy_iter +EXPORT_SYMBOL vmlinux 0x9a4e459a mr_mfc_find_parent +EXPORT_SYMBOL vmlinux 0x9a583306 netlbl_bitmap_walk +EXPORT_SYMBOL vmlinux 0x9a669104 nvm_unregister_tgt_type +EXPORT_SYMBOL vmlinux 0x9a6b32fd serio_unregister_driver +EXPORT_SYMBOL vmlinux 0x9a6fb19e of_phy_connect +EXPORT_SYMBOL vmlinux 0x9a73b032 ZSTD_initDStream_usingDDict +EXPORT_SYMBOL vmlinux 0x9a88cf90 sock_no_shutdown +EXPORT_SYMBOL vmlinux 0x9a8ce59e ip_defrag +EXPORT_SYMBOL vmlinux 0x9a9276ef key_revoke +EXPORT_SYMBOL vmlinux 0x9aaeefce sysctl_nf_log_all_netns +EXPORT_SYMBOL vmlinux 0x9ac30cf8 netif_napi_add +EXPORT_SYMBOL vmlinux 0x9acd508b iov_iter_npages +EXPORT_SYMBOL vmlinux 0x9adfea5b dev_get_port_parent_id +EXPORT_SYMBOL vmlinux 0x9afb4074 skb_copy_datagram_iter +EXPORT_SYMBOL vmlinux 0x9b022f6a fput +EXPORT_SYMBOL vmlinux 0x9b09a2e7 backlight_device_unregister +EXPORT_SYMBOL vmlinux 0x9b0c0548 set_page_dirty +EXPORT_SYMBOL vmlinux 0x9b128a66 qcom_scm_set_remote_state +EXPORT_SYMBOL vmlinux 0x9b2560b9 gf128mul_init_4k_bbe +EXPORT_SYMBOL vmlinux 0x9b33e0d7 unregister_dcbevent_notifier +EXPORT_SYMBOL vmlinux 0x9b39425c mpage_writepage +EXPORT_SYMBOL vmlinux 0x9b420478 utf8_strncasecmp +EXPORT_SYMBOL vmlinux 0x9b496b21 posix_acl_alloc +EXPORT_SYMBOL vmlinux 0x9b4c9292 uart_resume_port +EXPORT_SYMBOL vmlinux 0x9b547513 compat_tcp_getsockopt +EXPORT_SYMBOL vmlinux 0x9b6d5df2 md_reap_sync_thread +EXPORT_SYMBOL vmlinux 0x9b72478f acpi_unload_parent_table +EXPORT_SYMBOL vmlinux 0x9b781612 kernel_bind +EXPORT_SYMBOL vmlinux 0x9b80637f sock_i_ino +EXPORT_SYMBOL vmlinux 0x9bb10313 dentry_open +EXPORT_SYMBOL vmlinux 0x9bbfe838 pci_bus_read_config_word +EXPORT_SYMBOL vmlinux 0x9bd097fb xsk_umem_uses_need_wakeup +EXPORT_SYMBOL vmlinux 0x9c122bcf mempool_create_node +EXPORT_SYMBOL vmlinux 0x9c19d62a of_phy_attach +EXPORT_SYMBOL vmlinux 0x9c1e5bf5 queued_spin_lock_slowpath +EXPORT_SYMBOL vmlinux 0x9c2e02dd mipi_dsi_attach +EXPORT_SYMBOL vmlinux 0x9c6d5543 dev_uc_flush +EXPORT_SYMBOL vmlinux 0x9c942adc vprintk_emit +EXPORT_SYMBOL vmlinux 0x9cab34a6 rfkill_set_led_trigger_name +EXPORT_SYMBOL vmlinux 0x9cac0bcb unregister_console +EXPORT_SYMBOL vmlinux 0x9cb79543 pci_read_config_byte +EXPORT_SYMBOL vmlinux 0x9ccf7171 vme_dma_pci_attribute +EXPORT_SYMBOL vmlinux 0x9cd72ef3 sock_from_file +EXPORT_SYMBOL vmlinux 0x9cd91791 register_sysctl +EXPORT_SYMBOL vmlinux 0x9cd9f833 inet_rcv_saddr_equal +EXPORT_SYMBOL vmlinux 0x9cdfb3f7 sysctl_fb_tunnels_only_for_init_net +EXPORT_SYMBOL vmlinux 0x9ce5a880 kernel_getpeername +EXPORT_SYMBOL vmlinux 0x9ce81498 eth_get_headlen +EXPORT_SYMBOL vmlinux 0x9cfff808 mmc_retune_timer_stop +EXPORT_SYMBOL vmlinux 0x9d09f84c of_find_device_by_node +EXPORT_SYMBOL vmlinux 0x9d0d6206 unregister_netdevice_notifier +EXPORT_SYMBOL vmlinux 0x9d19d98f blk_queue_virt_boundary +EXPORT_SYMBOL vmlinux 0x9d1a5e3a __memcpy +EXPORT_SYMBOL vmlinux 0x9d1a96cf blackhole_netdev +EXPORT_SYMBOL vmlinux 0x9d2e7707 unregister_sysrq_key +EXPORT_SYMBOL vmlinux 0x9d3f7a15 inet_register_protosw +EXPORT_SYMBOL vmlinux 0x9d61e994 ucs2_strncmp +EXPORT_SYMBOL vmlinux 0x9d6231b2 kernel_getsockname +EXPORT_SYMBOL vmlinux 0x9d7339ec skb_clone_sk +EXPORT_SYMBOL vmlinux 0x9d7e6c45 pci_back_from_sleep +EXPORT_SYMBOL vmlinux 0x9d84f334 pfifo_qdisc_ops +EXPORT_SYMBOL vmlinux 0x9d8d297f tcp_conn_request +EXPORT_SYMBOL vmlinux 0x9d92f3ad __wait_on_bit_lock +EXPORT_SYMBOL vmlinux 0x9d97ab2c audit_log_object_context +EXPORT_SYMBOL vmlinux 0x9da1bd02 devm_of_iomap +EXPORT_SYMBOL vmlinux 0x9da3777d dput +EXPORT_SYMBOL vmlinux 0x9da63da3 mmc_set_data_timeout +EXPORT_SYMBOL vmlinux 0x9ddf1bb1 jbd2_trans_will_send_data_barrier +EXPORT_SYMBOL vmlinux 0x9df21d0e qman_affine_channel +EXPORT_SYMBOL vmlinux 0x9dfa96bf get_super +EXPORT_SYMBOL vmlinux 0x9dfab136 import_iovec +EXPORT_SYMBOL vmlinux 0x9dfd4131 call_fib_notifiers +EXPORT_SYMBOL vmlinux 0x9e03ef11 prepare_kernel_cred +EXPORT_SYMBOL vmlinux 0x9e04d54b flow_rule_match_ports +EXPORT_SYMBOL vmlinux 0x9e0c711d vzalloc_node +EXPORT_SYMBOL vmlinux 0x9e0fa5ae hsiphash_3u32 +EXPORT_SYMBOL vmlinux 0x9e13f6f6 gf128mul_lle +EXPORT_SYMBOL vmlinux 0x9e247cbf dev_get_by_name +EXPORT_SYMBOL vmlinux 0x9e2737f0 acpi_install_interface_handler +EXPORT_SYMBOL vmlinux 0x9e4faeef dm_io_client_destroy +EXPORT_SYMBOL vmlinux 0x9e58efad pskb_trim_rcsum_slow +EXPORT_SYMBOL vmlinux 0x9e5e750d node_to_cpumask_map +EXPORT_SYMBOL vmlinux 0x9e61bb05 set_freezable +EXPORT_SYMBOL vmlinux 0x9e684f8e __task_pid_nr_ns +EXPORT_SYMBOL vmlinux 0x9e6bc7f4 rt_dst_alloc +EXPORT_SYMBOL vmlinux 0x9e6c9a91 icmpv6_send +EXPORT_SYMBOL vmlinux 0x9e79c550 udp_sendmsg +EXPORT_SYMBOL vmlinux 0x9e7d0458 generic_splice_sendpage +EXPORT_SYMBOL vmlinux 0x9e7d63fa kmem_cache_alloc_bulk +EXPORT_SYMBOL vmlinux 0x9e7d6bd0 __udelay +EXPORT_SYMBOL vmlinux 0x9e8afea2 __dev_set_mtu +EXPORT_SYMBOL vmlinux 0x9e9eab95 devcgroup_check_permission +EXPORT_SYMBOL vmlinux 0x9e9fdd9d memunmap +EXPORT_SYMBOL vmlinux 0x9ea53d7f vsnprintf +EXPORT_SYMBOL vmlinux 0x9eab3b9a phy_modify_paged +EXPORT_SYMBOL vmlinux 0x9eacf8a5 kstrndup +EXPORT_SYMBOL vmlinux 0x9eb139ac uart_suspend_port +EXPORT_SYMBOL vmlinux 0x9eb621c7 scsi_device_lookup +EXPORT_SYMBOL vmlinux 0x9ec0e639 twl6030_interrupt_unmask +EXPORT_SYMBOL vmlinux 0x9ec1a786 jbd2_journal_unlock_updates +EXPORT_SYMBOL vmlinux 0x9ec653e3 noop_fsync +EXPORT_SYMBOL vmlinux 0x9ec68169 xfrm_state_lookup_byaddr +EXPORT_SYMBOL vmlinux 0x9ec6ca96 ktime_get_real_ts64 +EXPORT_SYMBOL vmlinux 0x9ed7c847 brcmstb_get_family_id +EXPORT_SYMBOL vmlinux 0x9ed978de vme_lm_set +EXPORT_SYMBOL vmlinux 0x9ed9df14 netif_device_attach +EXPORT_SYMBOL vmlinux 0x9ef3daeb nf_unregister_net_hooks +EXPORT_SYMBOL vmlinux 0x9ef45182 release_pages +EXPORT_SYMBOL vmlinux 0x9f0045aa dma_async_device_register +EXPORT_SYMBOL vmlinux 0x9f26c94b __hw_addr_unsync_dev +EXPORT_SYMBOL vmlinux 0x9f2b5037 dev_change_proto_down_generic +EXPORT_SYMBOL vmlinux 0x9f2c2cda vfs_iocb_iter_write +EXPORT_SYMBOL vmlinux 0x9f2d8549 xfrm_state_delete +EXPORT_SYMBOL vmlinux 0x9f3b671c nvdimm_bus_unlock +EXPORT_SYMBOL vmlinux 0x9f46ced8 __sw_hweight64 +EXPORT_SYMBOL vmlinux 0x9f49dcc4 __stack_chk_fail +EXPORT_SYMBOL vmlinux 0x9f4b1aa5 ip_generic_getfrag +EXPORT_SYMBOL vmlinux 0x9f4f2aa3 acpi_gbl_FADT +EXPORT_SYMBOL vmlinux 0x9f50b770 keyring_restrict +EXPORT_SYMBOL vmlinux 0x9f54ead7 gro_cells_destroy +EXPORT_SYMBOL vmlinux 0x9f65c857 ZSTD_checkCParams +EXPORT_SYMBOL vmlinux 0x9f6d4f10 dmaenginem_async_device_register +EXPORT_SYMBOL vmlinux 0x9f789cb4 blk_set_runtime_active +EXPORT_SYMBOL vmlinux 0x9f790ddb mmc_retune_unpause +EXPORT_SYMBOL vmlinux 0x9f7a49c5 call_usermodehelper_exec +EXPORT_SYMBOL vmlinux 0x9f7d7dbb logic_outsw +EXPORT_SYMBOL vmlinux 0x9f84e3ea nd_device_register +EXPORT_SYMBOL vmlinux 0x9f8b69fb unregister_binfmt +EXPORT_SYMBOL vmlinux 0x9f984513 strrchr +EXPORT_SYMBOL vmlinux 0x9fa7184a cancel_delayed_work_sync +EXPORT_SYMBOL vmlinux 0x9fa95f6c forget_all_cached_acls +EXPORT_SYMBOL vmlinux 0x9fb082c9 __sk_receive_skb +EXPORT_SYMBOL vmlinux 0x9fb1d0ed uuid_is_valid +EXPORT_SYMBOL vmlinux 0x9fb478c1 phy_modify_paged_changed +EXPORT_SYMBOL vmlinux 0x9fc03836 rproc_elf_get_boot_addr +EXPORT_SYMBOL vmlinux 0x9fcf05eb vfs_ioc_setflags_prepare +EXPORT_SYMBOL vmlinux 0x9fdc08fb mmc_cqe_start_req +EXPORT_SYMBOL vmlinux 0x9fdecc31 unregister_netdevice_many +EXPORT_SYMBOL vmlinux 0x9fe2379a __xfrm_route_forward +EXPORT_SYMBOL vmlinux 0x9feed7ce timer_reduce +EXPORT_SYMBOL vmlinux 0x9ff7c53b __mark_inode_dirty +EXPORT_SYMBOL vmlinux 0x9ffa3a75 netdev_max_backlog +EXPORT_SYMBOL vmlinux 0xa0018488 tag_pages_for_writeback +EXPORT_SYMBOL vmlinux 0xa00aca2a dql_completed +EXPORT_SYMBOL vmlinux 0xa0155efd kernel_sendpage_locked +EXPORT_SYMBOL vmlinux 0xa02aa74a __cond_resched_lock +EXPORT_SYMBOL vmlinux 0xa02c5883 qdisc_watchdog_schedule_range_ns +EXPORT_SYMBOL vmlinux 0xa043315a blk_cleanup_queue +EXPORT_SYMBOL vmlinux 0xa0436e98 in6addr_linklocal_allnodes +EXPORT_SYMBOL vmlinux 0xa04b2b0b md_wait_for_blocked_rdev +EXPORT_SYMBOL vmlinux 0xa057df8f twl_set_regcache_bypass +EXPORT_SYMBOL vmlinux 0xa07a37f0 memchr +EXPORT_SYMBOL vmlinux 0xa084749a __bitmap_or +EXPORT_SYMBOL vmlinux 0xa095e02e generic_check_addressable +EXPORT_SYMBOL vmlinux 0xa0a2b7f4 of_get_next_available_child +EXPORT_SYMBOL vmlinux 0xa0ae1e73 siphash_3u64 +EXPORT_SYMBOL vmlinux 0xa0b04675 vmalloc_32 +EXPORT_SYMBOL vmlinux 0xa0bdffae pci_msix_vec_count +EXPORT_SYMBOL vmlinux 0xa0d63b01 __blockdev_direct_IO +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 0xa0f18cc8 qdisc_warn_nonwc +EXPORT_SYMBOL vmlinux 0xa0f47508 finalize_exec +EXPORT_SYMBOL vmlinux 0xa0fbac79 wake_up_bit +EXPORT_SYMBOL vmlinux 0xa108eb4d sysctl_optmem_max +EXPORT_SYMBOL vmlinux 0xa1143251 mipi_dsi_dcs_set_display_brightness +EXPORT_SYMBOL vmlinux 0xa120d33c tty_unregister_ldisc +EXPORT_SYMBOL vmlinux 0xa13e780a gen_replace_estimator +EXPORT_SYMBOL vmlinux 0xa155c071 ZSTD_compressBegin_usingDict +EXPORT_SYMBOL vmlinux 0xa169a0b4 tcp_child_process +EXPORT_SYMBOL vmlinux 0xa173e327 page_pool_alloc_pages +EXPORT_SYMBOL vmlinux 0xa1873f75 kset_register +EXPORT_SYMBOL vmlinux 0xa1b973d4 t10_pi_type1_ip +EXPORT_SYMBOL vmlinux 0xa1c76e0a _cond_resched +EXPORT_SYMBOL vmlinux 0xa1d71c75 d_alloc_parallel +EXPORT_SYMBOL vmlinux 0xa1dee2b5 inet6_csk_route_req +EXPORT_SYMBOL vmlinux 0xa1e5e0fc drop_super +EXPORT_SYMBOL vmlinux 0xa1f4d338 netpoll_poll_dev +EXPORT_SYMBOL vmlinux 0xa1f61432 set_security_override +EXPORT_SYMBOL vmlinux 0xa2035ac6 qcom_scm_set_warm_boot_addr +EXPORT_SYMBOL vmlinux 0xa2060911 inet_current_timestamp +EXPORT_SYMBOL vmlinux 0xa2247e92 device_get_mac_address +EXPORT_SYMBOL vmlinux 0xa228ee02 phy_do_ioctl +EXPORT_SYMBOL vmlinux 0xa2326c49 acpi_remove_table_handler +EXPORT_SYMBOL vmlinux 0xa236f1cf kernel_param_unlock +EXPORT_SYMBOL vmlinux 0xa248a6e0 sk_stream_wait_close +EXPORT_SYMBOL vmlinux 0xa24f23d8 __request_module +EXPORT_SYMBOL vmlinux 0xa25b90ab utf8byte +EXPORT_SYMBOL vmlinux 0xa25bbb52 rproc_vq_interrupt +EXPORT_SYMBOL vmlinux 0xa263892b fscrypt_fname_free_buffer +EXPORT_SYMBOL vmlinux 0xa28cfcc0 gen_estimator_active +EXPORT_SYMBOL vmlinux 0xa29f8e8f rtnl_set_sk_err +EXPORT_SYMBOL vmlinux 0xa2a0dc31 unmap_mapping_range +EXPORT_SYMBOL vmlinux 0xa2d2bffe pcie_capability_read_word +EXPORT_SYMBOL vmlinux 0xa2eb8e68 create_empty_buffers +EXPORT_SYMBOL vmlinux 0xa2ec1a29 vm_mmap +EXPORT_SYMBOL vmlinux 0xa2ef4647 param_get_short +EXPORT_SYMBOL vmlinux 0xa2f83f77 kobject_get +EXPORT_SYMBOL vmlinux 0xa306636c filp_open +EXPORT_SYMBOL vmlinux 0xa31c13bd devm_clk_get_optional +EXPORT_SYMBOL vmlinux 0xa339e6e5 on_each_cpu_cond_mask +EXPORT_SYMBOL vmlinux 0xa34f8ed9 kill_fasync +EXPORT_SYMBOL vmlinux 0xa363d845 request_key_rcu +EXPORT_SYMBOL vmlinux 0xa3669134 jbd2_log_wait_commit +EXPORT_SYMBOL vmlinux 0xa36c3e6b mdiobus_get_phy +EXPORT_SYMBOL vmlinux 0xa3713b70 has_capability +EXPORT_SYMBOL vmlinux 0xa3921245 request_key_tag +EXPORT_SYMBOL vmlinux 0xa39b454a address_space_init_once +EXPORT_SYMBOL vmlinux 0xa3a682d3 __breadahead_gfp +EXPORT_SYMBOL vmlinux 0xa3ad6273 cros_ec_cmd_xfer_status +EXPORT_SYMBOL vmlinux 0xa3b9da12 pci_scan_slot +EXPORT_SYMBOL vmlinux 0xa3c9753f twl6040_power +EXPORT_SYMBOL vmlinux 0xa3ea9664 fasync_helper +EXPORT_SYMBOL vmlinux 0xa3fa23c7 twl6040_set_pll +EXPORT_SYMBOL vmlinux 0xa3fea172 sha224_final +EXPORT_SYMBOL vmlinux 0xa40fd153 shrink_dcache_parent +EXPORT_SYMBOL vmlinux 0xa40ff01b acpi_dbg_layer +EXPORT_SYMBOL vmlinux 0xa41ad203 tcp_add_backlog +EXPORT_SYMBOL vmlinux 0xa42a0518 tty_port_block_til_ready +EXPORT_SYMBOL vmlinux 0xa4454b3c writeback_inodes_sb +EXPORT_SYMBOL vmlinux 0xa4711e69 current_in_userns +EXPORT_SYMBOL vmlinux 0xa472c965 dquot_load_quota_sb +EXPORT_SYMBOL vmlinux 0xa4857c0e xp_alloc +EXPORT_SYMBOL vmlinux 0xa488752b bioset_init +EXPORT_SYMBOL vmlinux 0xa48e515e vfs_iter_read +EXPORT_SYMBOL vmlinux 0xa4a5cb4f pci_alloc_irq_vectors_affinity +EXPORT_SYMBOL vmlinux 0xa4bb4454 devm_rproc_add +EXPORT_SYMBOL vmlinux 0xa4c8127c ZSTD_maxCLevel +EXPORT_SYMBOL vmlinux 0xa4d22b1e udp_seq_next +EXPORT_SYMBOL vmlinux 0xa4d4371f vme_init_bridge +EXPORT_SYMBOL vmlinux 0xa4d6aec3 dm_kcopyd_zero +EXPORT_SYMBOL vmlinux 0xa4de2c1d blkdev_compat_ptr_ioctl +EXPORT_SYMBOL vmlinux 0xa4e53463 __dev_get_by_index +EXPORT_SYMBOL vmlinux 0xa4fca045 qcom_scm_ocmem_lock +EXPORT_SYMBOL vmlinux 0xa5056338 __hsiphash_aligned +EXPORT_SYMBOL vmlinux 0xa514b395 bio_integrity_clone +EXPORT_SYMBOL vmlinux 0xa52bedf6 xenbus_dev_request_and_reply +EXPORT_SYMBOL vmlinux 0xa52ffd50 pci_reenable_device +EXPORT_SYMBOL vmlinux 0xa54b68e2 mmc_of_parse +EXPORT_SYMBOL vmlinux 0xa5504e11 lookup_bdev +EXPORT_SYMBOL vmlinux 0xa5526619 rb_insert_color +EXPORT_SYMBOL vmlinux 0xa553734c scsi_print_command +EXPORT_SYMBOL vmlinux 0xa56eff50 kthread_create_on_node +EXPORT_SYMBOL vmlinux 0xa577f10e pcim_set_mwi +EXPORT_SYMBOL vmlinux 0xa5798a23 dev_mc_del_global +EXPORT_SYMBOL vmlinux 0xa580effb __wait_on_buffer +EXPORT_SYMBOL vmlinux 0xa5916960 vmf_insert_mixed +EXPORT_SYMBOL vmlinux 0xa591e8bf iunique +EXPORT_SYMBOL vmlinux 0xa5976e4f dev_base_lock +EXPORT_SYMBOL vmlinux 0xa598d7de seg6_hmac_info_lookup +EXPORT_SYMBOL vmlinux 0xa5ac3e33 ZSTD_DCtxWorkspaceBound +EXPORT_SYMBOL vmlinux 0xa5ae2fef __module_put_and_exit +EXPORT_SYMBOL vmlinux 0xa5b4aae5 scsicam_bios_param +EXPORT_SYMBOL vmlinux 0xa5dc61e1 xfrm_init_replay +EXPORT_SYMBOL vmlinux 0xa5f5a216 fs_param_is_path +EXPORT_SYMBOL vmlinux 0xa5f7cf37 __cpu_possible_mask +EXPORT_SYMBOL vmlinux 0xa6001148 fman_get_bmi_max_fifo_size +EXPORT_SYMBOL vmlinux 0xa601c11d xfrm_lookup +EXPORT_SYMBOL vmlinux 0xa604072b mmc_unregister_driver +EXPORT_SYMBOL vmlinux 0xa60661be make_bad_inode +EXPORT_SYMBOL vmlinux 0xa606a90b blkdev_issue_flush +EXPORT_SYMBOL vmlinux 0xa616aa33 udp_gro_complete +EXPORT_SYMBOL vmlinux 0xa61ca011 dev_add_offload +EXPORT_SYMBOL vmlinux 0xa61cd2f3 vfs_mkobj +EXPORT_SYMBOL vmlinux 0xa61ced89 qdisc_put_rtab +EXPORT_SYMBOL vmlinux 0xa625788e put_ipc_ns +EXPORT_SYMBOL vmlinux 0xa6257a2f complete +EXPORT_SYMBOL vmlinux 0xa630ac8e rawv6_mh_filter_unregister +EXPORT_SYMBOL vmlinux 0xa650b573 fs_context_for_reconfigure +EXPORT_SYMBOL vmlinux 0xa6542ec5 of_match_device +EXPORT_SYMBOL vmlinux 0xa6634fe1 gro_find_receive_by_type +EXPORT_SYMBOL vmlinux 0xa67dbc22 fscrypt_fname_disk_to_usr +EXPORT_SYMBOL vmlinux 0xa681fe88 generate_random_uuid +EXPORT_SYMBOL vmlinux 0xa6841fb6 tun_ptr_to_xdp +EXPORT_SYMBOL vmlinux 0xa68cbe99 jbd2_journal_inode_ranged_write +EXPORT_SYMBOL vmlinux 0xa692c6ee default_qdisc_ops +EXPORT_SYMBOL vmlinux 0xa694d542 cros_ec_cmd_xfer +EXPORT_SYMBOL vmlinux 0xa6a4c8ff key_validate +EXPORT_SYMBOL vmlinux 0xa6acb2e4 netif_carrier_on +EXPORT_SYMBOL vmlinux 0xa6c4f918 genphy_soft_reset +EXPORT_SYMBOL vmlinux 0xa6d6dc3a zpool_unregister_driver +EXPORT_SYMBOL vmlinux 0xa7051287 devm_pci_remap_iospace +EXPORT_SYMBOL vmlinux 0xa70bc96d qcom_scm_restore_sec_cfg_available +EXPORT_SYMBOL vmlinux 0xa7169821 genphy_c37_read_status +EXPORT_SYMBOL vmlinux 0xa71acc92 fman_port_config +EXPORT_SYMBOL vmlinux 0xa7231a32 fs_param_is_blob +EXPORT_SYMBOL vmlinux 0xa745b74c jbd2_journal_revoke +EXPORT_SYMBOL vmlinux 0xa74c9877 refcount_dec_and_rtnl_lock +EXPORT_SYMBOL vmlinux 0xa75d0659 vfs_symlink +EXPORT_SYMBOL vmlinux 0xa76cb383 register_netdevice_notifier_dev_net +EXPORT_SYMBOL vmlinux 0xa77bfd29 register_inet6addr_validator_notifier +EXPORT_SYMBOL vmlinux 0xa7886dc3 __sb_start_write +EXPORT_SYMBOL vmlinux 0xa79338a9 security_path_rename +EXPORT_SYMBOL vmlinux 0xa7bf1881 inode_newsize_ok +EXPORT_SYMBOL vmlinux 0xa7d5f92e ida_destroy +EXPORT_SYMBOL vmlinux 0xa7e38f12 flow_keys_basic_dissector +EXPORT_SYMBOL vmlinux 0xa7ed6217 sock_set_sndtimeo +EXPORT_SYMBOL vmlinux 0xa7eedcc4 call_usermodehelper +EXPORT_SYMBOL vmlinux 0xa804de26 vfs_path_lookup +EXPORT_SYMBOL vmlinux 0xa80c35a4 pcim_iomap +EXPORT_SYMBOL vmlinux 0xa813c83d mmc_gpio_set_cd_wake +EXPORT_SYMBOL vmlinux 0xa8181adf proc_dointvec +EXPORT_SYMBOL vmlinux 0xa81829e2 nobh_write_begin +EXPORT_SYMBOL vmlinux 0xa8293f1e flow_rule_match_ipv4_addrs +EXPORT_SYMBOL vmlinux 0xa82bf04f netdev_set_num_tc +EXPORT_SYMBOL vmlinux 0xa8306b78 scaled_ppm_to_ppb +EXPORT_SYMBOL vmlinux 0xa843805a get_unused_fd_flags +EXPORT_SYMBOL vmlinux 0xa84ce9e0 crypto_aes_inv_sbox +EXPORT_SYMBOL vmlinux 0xa853396b xa_extract +EXPORT_SYMBOL vmlinux 0xa855ac2f ping_prot +EXPORT_SYMBOL vmlinux 0xa857df2a page_pool_create +EXPORT_SYMBOL vmlinux 0xa85a3e6d xa_load +EXPORT_SYMBOL vmlinux 0xa8666150 from_kgid_munged +EXPORT_SYMBOL vmlinux 0xa8694ecd kblockd_schedule_work +EXPORT_SYMBOL vmlinux 0xa86dea32 dst_init +EXPORT_SYMBOL vmlinux 0xa886af97 textsearch_find_continuous +EXPORT_SYMBOL vmlinux 0xa888af9d inet_frags_init +EXPORT_SYMBOL vmlinux 0xa8971890 scsi_set_medium_removal +EXPORT_SYMBOL vmlinux 0xa897e3e7 mempool_free +EXPORT_SYMBOL vmlinux 0xa8a8110c kernel_neon_end +EXPORT_SYMBOL vmlinux 0xa8b732e2 try_to_release_page +EXPORT_SYMBOL vmlinux 0xa8caa845 clk_bulk_put_all +EXPORT_SYMBOL vmlinux 0xa8cb85f6 ethtool_virtdev_set_link_ksettings +EXPORT_SYMBOL vmlinux 0xa8db4b22 blk_queue_physical_block_size +EXPORT_SYMBOL vmlinux 0xa8e6933a qdf2400_e44_present +EXPORT_SYMBOL vmlinux 0xa8edad44 security_tun_dev_attach +EXPORT_SYMBOL vmlinux 0xa8f6c843 ip_frag_ecn_table +EXPORT_SYMBOL vmlinux 0xa8f89409 kthread_create_worker +EXPORT_SYMBOL vmlinux 0xa9075a87 phy_ethtool_get_wol +EXPORT_SYMBOL vmlinux 0xa90ca0de flush_rcu_work +EXPORT_SYMBOL vmlinux 0xa916b694 strnlen +EXPORT_SYMBOL vmlinux 0xa925b9c1 d_add_ci +EXPORT_SYMBOL vmlinux 0xa926249c scsi_device_set_state +EXPORT_SYMBOL vmlinux 0xa92a8ef7 locks_copy_lock +EXPORT_SYMBOL vmlinux 0xa934bc4b flow_get_u32_dst +EXPORT_SYMBOL vmlinux 0xa952f087 max8925_bulk_write +EXPORT_SYMBOL vmlinux 0xa95ed7da tcp_seq_start +EXPORT_SYMBOL vmlinux 0xa965ca81 reciprocal_value +EXPORT_SYMBOL vmlinux 0xa96e1584 devm_extcon_unregister_notifier_all +EXPORT_SYMBOL vmlinux 0xa97463c9 __siphash_aligned +EXPORT_SYMBOL vmlinux 0xa98240c2 ethtool_rx_flow_rule_destroy +EXPORT_SYMBOL vmlinux 0xa9859c10 page_cache_next_miss +EXPORT_SYMBOL vmlinux 0xa9875b08 dst_dev_put +EXPORT_SYMBOL vmlinux 0xa99b39c2 prandom_bytes +EXPORT_SYMBOL vmlinux 0xa99b4a62 tcp_filter +EXPORT_SYMBOL vmlinux 0xa9b90a9a __dst_destroy_metrics_generic +EXPORT_SYMBOL vmlinux 0xa9c9148d __skb_flow_dissect +EXPORT_SYMBOL vmlinux 0xa9da95ab skb_copy_bits +EXPORT_SYMBOL vmlinux 0xa9eec0ee pci_request_irq +EXPORT_SYMBOL vmlinux 0xa9faf179 __cancel_dirty_page +EXPORT_SYMBOL vmlinux 0xa9fff7f2 cfb_fillrect +EXPORT_SYMBOL vmlinux 0xaa00fdc0 ec_transaction +EXPORT_SYMBOL vmlinux 0xaa07daf0 inode_nohighmem +EXPORT_SYMBOL vmlinux 0xaa112bf6 fsl_ifc_ctrl_dev +EXPORT_SYMBOL vmlinux 0xaa341905 acpi_bios_exception +EXPORT_SYMBOL vmlinux 0xaa37e460 ptp_cancel_worker_sync +EXPORT_SYMBOL vmlinux 0xaa3d200a skb_set_owner_w +EXPORT_SYMBOL vmlinux 0xaa52874e sock_no_sendpage +EXPORT_SYMBOL vmlinux 0xaa6f23ad rfkill_get_led_trigger_name +EXPORT_SYMBOL vmlinux 0xaaa4b9bc hchacha_block_generic +EXPORT_SYMBOL vmlinux 0xaaa7251c con_set_default_unimap +EXPORT_SYMBOL vmlinux 0xaaa82479 sg_miter_next +EXPORT_SYMBOL vmlinux 0xaad0ae78 __bitmap_shift_right +EXPORT_SYMBOL vmlinux 0xaad473d5 input_reset_device +EXPORT_SYMBOL vmlinux 0xaad6d92f rfkill_init_sw_state +EXPORT_SYMBOL vmlinux 0xaad8c7d6 default_wake_function +EXPORT_SYMBOL vmlinux 0xaae8ab0e acpi_bus_power_manageable +EXPORT_SYMBOL vmlinux 0xaaf4a60e acpi_match_device_ids +EXPORT_SYMBOL vmlinux 0xaaf8bbc3 neigh_table_init +EXPORT_SYMBOL vmlinux 0xaafdc258 strcasecmp +EXPORT_SYMBOL vmlinux 0xaafe7b49 udp_seq_stop +EXPORT_SYMBOL vmlinux 0xab21a80f of_node_get +EXPORT_SYMBOL vmlinux 0xab2fe9b1 unix_get_socket +EXPORT_SYMBOL vmlinux 0xab328fea find_vma +EXPORT_SYMBOL vmlinux 0xab3697e4 irq_poll_init +EXPORT_SYMBOL vmlinux 0xab3b75ea vme_dma_pattern_attribute +EXPORT_SYMBOL vmlinux 0xab4cebf2 __mod_zone_page_state +EXPORT_SYMBOL vmlinux 0xab57bc60 file_remove_privs +EXPORT_SYMBOL vmlinux 0xab600421 probe_irq_off +EXPORT_SYMBOL vmlinux 0xab63baa5 unregister_inetaddr_validator_notifier +EXPORT_SYMBOL vmlinux 0xab6713e5 md_bitmap_cond_end_sync +EXPORT_SYMBOL vmlinux 0xab67a0ac dql_init +EXPORT_SYMBOL vmlinux 0xab735372 ipmi_dmi_get_slave_addr +EXPORT_SYMBOL vmlinux 0xab781570 fb_get_options +EXPORT_SYMBOL vmlinux 0xab8c9d72 pipe_unlock +EXPORT_SYMBOL vmlinux 0xaba81805 xps_rxqs_needed +EXPORT_SYMBOL vmlinux 0xabbcee0e filemap_write_and_wait_range +EXPORT_SYMBOL vmlinux 0xabd3eab9 inet_frag_pull_head +EXPORT_SYMBOL vmlinux 0xabdcd164 phy_write_paged +EXPORT_SYMBOL vmlinux 0xabe38b90 inet_rtx_syn_ack +EXPORT_SYMBOL vmlinux 0xabf32f29 utf16s_to_utf8s +EXPORT_SYMBOL vmlinux 0xabf8ad4d bio_put +EXPORT_SYMBOL vmlinux 0xabfd2f1a pnp_register_driver +EXPORT_SYMBOL vmlinux 0xac0453a5 kfree_skb_partial +EXPORT_SYMBOL vmlinux 0xac1467b4 __module_get +EXPORT_SYMBOL vmlinux 0xac1a55be unregister_reboot_notifier +EXPORT_SYMBOL vmlinux 0xac1eb8fb blk_queue_update_dma_pad +EXPORT_SYMBOL vmlinux 0xac273d7e qdisc_tree_reduce_backlog +EXPORT_SYMBOL vmlinux 0xac3201b0 udp_flow_hashrnd +EXPORT_SYMBOL vmlinux 0xac36726d netpoll_parse_options +EXPORT_SYMBOL vmlinux 0xac3b0d80 bh_submit_read +EXPORT_SYMBOL vmlinux 0xac537ac2 percpu_counter_destroy +EXPORT_SYMBOL vmlinux 0xac5fcec0 in4_pton +EXPORT_SYMBOL vmlinux 0xac8384d5 fget_raw +EXPORT_SYMBOL vmlinux 0xac8597d5 mb_cache_entry_get +EXPORT_SYMBOL vmlinux 0xac94e86b vsprintf +EXPORT_SYMBOL vmlinux 0xac9689ec generic_writepages +EXPORT_SYMBOL vmlinux 0xaca126f4 set_anon_super +EXPORT_SYMBOL vmlinux 0xaca9d62a _copy_from_iter_full_nocache +EXPORT_SYMBOL vmlinux 0xacaa4c72 dma_fence_match_context +EXPORT_SYMBOL vmlinux 0xacab29b7 seq_hlist_start_percpu +EXPORT_SYMBOL vmlinux 0xacadacc9 __cleancache_invalidate_fs +EXPORT_SYMBOL vmlinux 0xacb1a1af dev_printk_emit +EXPORT_SYMBOL vmlinux 0xacc1ff0d qman_volatile_dequeue +EXPORT_SYMBOL vmlinux 0xacd81eb3 jbd2_inode_cache +EXPORT_SYMBOL vmlinux 0xacdb3d6c kernel_param_lock +EXPORT_SYMBOL vmlinux 0xace0511f phy_get_pause +EXPORT_SYMBOL vmlinux 0xacf4d843 match_strdup +EXPORT_SYMBOL vmlinux 0xacf56a8c __dev_get_by_name +EXPORT_SYMBOL vmlinux 0xacf649bf audit_log_task_info +EXPORT_SYMBOL vmlinux 0xacfc7cfd pnp_release_card_device +EXPORT_SYMBOL vmlinux 0xad01e394 mr_dump +EXPORT_SYMBOL vmlinux 0xad0413d4 match_hex +EXPORT_SYMBOL vmlinux 0xad0b3793 tcp_release_cb +EXPORT_SYMBOL vmlinux 0xad297cc9 mipi_dsi_device_unregister +EXPORT_SYMBOL vmlinux 0xad2dec21 security_skb_classify_flow +EXPORT_SYMBOL vmlinux 0xad3ea04c qman_p_irqsource_remove +EXPORT_SYMBOL vmlinux 0xad4ea75f inet_confirm_addr +EXPORT_SYMBOL vmlinux 0xad503fd7 tcp_check_req +EXPORT_SYMBOL vmlinux 0xad531863 __scsi_device_lookup +EXPORT_SYMBOL vmlinux 0xad61d644 pci_bus_find_capability +EXPORT_SYMBOL vmlinux 0xad63670b generic_block_bmap +EXPORT_SYMBOL vmlinux 0xad682b8f xudma_rchanrt_write +EXPORT_SYMBOL vmlinux 0xad6ba40e radix_tree_tag_get +EXPORT_SYMBOL vmlinux 0xad73041f autoremove_wake_function +EXPORT_SYMBOL vmlinux 0xad84bef8 dm_table_event +EXPORT_SYMBOL vmlinux 0xad9901ae bit_waitqueue +EXPORT_SYMBOL vmlinux 0xad995dac netdev_stats_to_stats64 +EXPORT_SYMBOL vmlinux 0xad99e4c7 lease_modify +EXPORT_SYMBOL vmlinux 0xad9b6b73 sock_no_setsockopt +EXPORT_SYMBOL vmlinux 0xada31e57 gen_pool_dma_alloc_align +EXPORT_SYMBOL vmlinux 0xadafd7ba tty_check_change +EXPORT_SYMBOL vmlinux 0xadb1aeac touch_buffer +EXPORT_SYMBOL vmlinux 0xadb4f529 lock_two_nondirectories +EXPORT_SYMBOL vmlinux 0xadb62145 blkdev_issue_write_same +EXPORT_SYMBOL vmlinux 0xadb94158 posix_acl_update_mode +EXPORT_SYMBOL vmlinux 0xadbeed61 mipi_dsi_packet_format_is_long +EXPORT_SYMBOL vmlinux 0xadcba50b ZSTD_findFrameCompressedSize +EXPORT_SYMBOL vmlinux 0xadd139d4 rfs_needed +EXPORT_SYMBOL vmlinux 0xade5f1a8 security_socket_socketpair +EXPORT_SYMBOL vmlinux 0xadfdfcef __bitmap_andnot +EXPORT_SYMBOL vmlinux 0xae019fde __getblk_gfp +EXPORT_SYMBOL vmlinux 0xae04012c __vmalloc +EXPORT_SYMBOL vmlinux 0xae0da9cb _dev_crit +EXPORT_SYMBOL vmlinux 0xae196f45 pci_bus_size_bridges +EXPORT_SYMBOL vmlinux 0xae1b6056 devfreq_suspend_device +EXPORT_SYMBOL vmlinux 0xae1db6f8 vfs_get_super +EXPORT_SYMBOL vmlinux 0xae1e94dc blk_integrity_register +EXPORT_SYMBOL vmlinux 0xae316c11 icmpv6_err_convert +EXPORT_SYMBOL vmlinux 0xae33c403 xudma_navss_psil_unpair +EXPORT_SYMBOL vmlinux 0xae4ed3e3 d_genocide +EXPORT_SYMBOL vmlinux 0xae5a04bb acpi_evaluate_dsm +EXPORT_SYMBOL vmlinux 0xae742bb5 qman_enqueue +EXPORT_SYMBOL vmlinux 0xae7e3a35 mutex_trylock_recursive +EXPORT_SYMBOL vmlinux 0xae89d7fc mmc_of_parse_voltage +EXPORT_SYMBOL vmlinux 0xae9c1f48 pci_free_irq +EXPORT_SYMBOL vmlinux 0xaea7e007 amba_find_device +EXPORT_SYMBOL vmlinux 0xaeac049a generate_random_guid +EXPORT_SYMBOL vmlinux 0xaead56fb iw_handler_get_thrspy +EXPORT_SYMBOL vmlinux 0xaeaf8680 __SetPageMovable +EXPORT_SYMBOL vmlinux 0xaebd12e3 ethtool_notify +EXPORT_SYMBOL vmlinux 0xaebd12f0 acpi_get_name +EXPORT_SYMBOL vmlinux 0xaec60722 abort_creds +EXPORT_SYMBOL vmlinux 0xaee4466b dma_direct_map_sg +EXPORT_SYMBOL vmlinux 0xaef1cd97 sync_filesystem +EXPORT_SYMBOL vmlinux 0xaef6abfd dev_alloc_name +EXPORT_SYMBOL vmlinux 0xaf1f56d1 __pskb_copy_fclone +EXPORT_SYMBOL vmlinux 0xaf223eac call_usermodehelper_setup +EXPORT_SYMBOL vmlinux 0xaf310552 consume_skb +EXPORT_SYMBOL vmlinux 0xaf3dd7dc scsi_logging_level +EXPORT_SYMBOL vmlinux 0xaf507de1 __arch_copy_from_user +EXPORT_SYMBOL vmlinux 0xaf561f7a input_set_capability +EXPORT_SYMBOL vmlinux 0xaf56600a arm64_use_ng_mappings +EXPORT_SYMBOL vmlinux 0xaf686c5e inet_dev_addr_type +EXPORT_SYMBOL vmlinux 0xaf6bc570 blk_mq_requeue_request +EXPORT_SYMBOL vmlinux 0xaf712dc0 rdmacg_uncharge +EXPORT_SYMBOL vmlinux 0xaf8462aa sock_queue_err_skb +EXPORT_SYMBOL vmlinux 0xafb48c87 md_set_array_sectors +EXPORT_SYMBOL vmlinux 0xafb91e5c devm_extcon_unregister_notifier +EXPORT_SYMBOL vmlinux 0xafcc5216 i2c_put_adapter +EXPORT_SYMBOL vmlinux 0xafd261b0 init_pseudo +EXPORT_SYMBOL vmlinux 0xaff6e998 tty_insert_flip_string_fixed_flag +EXPORT_SYMBOL vmlinux 0xb0197e1f insert_inode_locked +EXPORT_SYMBOL vmlinux 0xb01bebf9 xfrm_get_acqseq +EXPORT_SYMBOL vmlinux 0xb030f987 input_inject_event +EXPORT_SYMBOL vmlinux 0xb043d5e8 blk_queue_split +EXPORT_SYMBOL vmlinux 0xb04e538e udp_skb_destructor +EXPORT_SYMBOL vmlinux 0xb051ecc0 __inc_node_page_state +EXPORT_SYMBOL vmlinux 0xb05fc310 sysctl_rmem_max +EXPORT_SYMBOL vmlinux 0xb061a98a mutex_lock_killable +EXPORT_SYMBOL vmlinux 0xb08da96f md_flush_request +EXPORT_SYMBOL vmlinux 0xb099cd5e rpmh_invalidate +EXPORT_SYMBOL vmlinux 0xb0a0da0c rational_best_approximation +EXPORT_SYMBOL vmlinux 0xb0aed408 ZSTD_compressStream +EXPORT_SYMBOL vmlinux 0xb0c5e247 lockref_put_return +EXPORT_SYMBOL vmlinux 0xb0e10781 get_option +EXPORT_SYMBOL vmlinux 0xb0e34c9a get_cached_acl_rcu +EXPORT_SYMBOL vmlinux 0xb0f389ee utf8_normalize +EXPORT_SYMBOL vmlinux 0xb0f3ab0a generic_listxattr +EXPORT_SYMBOL vmlinux 0xb10e7df4 __kfifo_dma_in_prepare +EXPORT_SYMBOL vmlinux 0xb121390a probe_irq_on +EXPORT_SYMBOL vmlinux 0xb1221661 ethtool_rx_flow_rule_create +EXPORT_SYMBOL vmlinux 0xb1247bcf dcache_dir_lseek +EXPORT_SYMBOL vmlinux 0xb12cbacb fb_unregister_client +EXPORT_SYMBOL vmlinux 0xb1421bd9 dev_get_phys_port_name +EXPORT_SYMBOL vmlinux 0xb14ab1ef hdmi_audio_infoframe_init +EXPORT_SYMBOL vmlinux 0xb14fb275 acpi_bus_get_device +EXPORT_SYMBOL vmlinux 0xb14fc46a find_next_clump8 +EXPORT_SYMBOL vmlinux 0xb1565097 pm_vt_switch_required +EXPORT_SYMBOL vmlinux 0xb162413e xfrm_state_free +EXPORT_SYMBOL vmlinux 0xb162ef19 configfs_unregister_default_group +EXPORT_SYMBOL vmlinux 0xb16414d3 skb_free_datagram +EXPORT_SYMBOL vmlinux 0xb16900ad cmdline_parts_parse +EXPORT_SYMBOL vmlinux 0xb1731e47 tcp_sock_set_keepidle +EXPORT_SYMBOL vmlinux 0xb1a5ab8c on_each_cpu_cond +EXPORT_SYMBOL vmlinux 0xb1abd157 dev_get_iflink +EXPORT_SYMBOL vmlinux 0xb1bcb9c3 sock_diag_put_filterinfo +EXPORT_SYMBOL vmlinux 0xb1c3a01a oops_in_progress +EXPORT_SYMBOL vmlinux 0xb1da21e0 inet_stream_ops +EXPORT_SYMBOL vmlinux 0xb1db9a69 fsl_ifc_find +EXPORT_SYMBOL vmlinux 0xb1ddf995 jiffies_64_to_clock_t +EXPORT_SYMBOL vmlinux 0xb1df9ef6 mark_page_accessed +EXPORT_SYMBOL vmlinux 0xb1dff39a tcp_select_initial_window +EXPORT_SYMBOL vmlinux 0xb1e12d81 krealloc +EXPORT_SYMBOL vmlinux 0xb20962ce param_array_ops +EXPORT_SYMBOL vmlinux 0xb2224684 pci_setup_cardbus +EXPORT_SYMBOL vmlinux 0xb2245800 path_is_under +EXPORT_SYMBOL vmlinux 0xb2258d95 pcie_set_mps +EXPORT_SYMBOL vmlinux 0xb22e16d5 radix_tree_maybe_preload +EXPORT_SYMBOL vmlinux 0xb2586fae serio_unregister_child_port +EXPORT_SYMBOL vmlinux 0xb25dce0d dev_change_proto_down +EXPORT_SYMBOL vmlinux 0xb260fd6d simple_transaction_get +EXPORT_SYMBOL vmlinux 0xb266bbdd devfreq_monitor_suspend +EXPORT_SYMBOL vmlinux 0xb281ba19 seq_file_path +EXPORT_SYMBOL vmlinux 0xb289f1ac inode_init_once +EXPORT_SYMBOL vmlinux 0xb2a6f4d1 kmem_cache_create_usercopy +EXPORT_SYMBOL vmlinux 0xb2aa8dc1 find_inode_by_ino_rcu +EXPORT_SYMBOL vmlinux 0xb2bbe772 kmem_cache_alloc +EXPORT_SYMBOL vmlinux 0xb2bcb088 acpi_current_gpe_count +EXPORT_SYMBOL vmlinux 0xb2c0a1b7 ipmr_rule_default +EXPORT_SYMBOL vmlinux 0xb2c6ff29 __fib6_flush_trees +EXPORT_SYMBOL vmlinux 0xb2cb0613 set_cached_acl +EXPORT_SYMBOL vmlinux 0xb2d28db7 pci_bus_set_ops +EXPORT_SYMBOL vmlinux 0xb2e6da01 acpi_bus_unregister_driver +EXPORT_SYMBOL vmlinux 0xb2ead97c kimage_vaddr +EXPORT_SYMBOL vmlinux 0xb2f35c6a xxh64 +EXPORT_SYMBOL vmlinux 0xb2fa96b3 md_bitmap_end_sync +EXPORT_SYMBOL vmlinux 0xb2fcb56d queue_delayed_work_on +EXPORT_SYMBOL vmlinux 0xb308c97d wait_woken +EXPORT_SYMBOL vmlinux 0xb30b9822 vme_master_set +EXPORT_SYMBOL vmlinux 0xb315339a xfrm_state_delete_tunnel +EXPORT_SYMBOL vmlinux 0xb3193d84 tcp_md5_hash_key +EXPORT_SYMBOL vmlinux 0xb31a4193 done_path_create +EXPORT_SYMBOL vmlinux 0xb320cc0e sg_init_one +EXPORT_SYMBOL vmlinux 0xb32728bb qcom_scm_iommu_secure_ptbl_init +EXPORT_SYMBOL vmlinux 0xb328549d __nla_reserve_nohdr +EXPORT_SYMBOL vmlinux 0xb337a392 dev_addr_flush +EXPORT_SYMBOL vmlinux 0xb3550ba9 tcf_exts_num_actions +EXPORT_SYMBOL vmlinux 0xb3687850 out_of_line_wait_on_bit_lock +EXPORT_SYMBOL vmlinux 0xb3908870 dst_alloc +EXPORT_SYMBOL vmlinux 0xb3bd68cc security_secmark_relabel_packet +EXPORT_SYMBOL vmlinux 0xb3d2c76d scsi_hostbyte_string +EXPORT_SYMBOL vmlinux 0xb3d7613b setattr_copy +EXPORT_SYMBOL vmlinux 0xb3e09786 inode_permission +EXPORT_SYMBOL vmlinux 0xb3e8c7d0 iw_handler_set_spy +EXPORT_SYMBOL vmlinux 0xb3f548ad kmemdup_nul +EXPORT_SYMBOL vmlinux 0xb3f7646e kthread_should_stop +EXPORT_SYMBOL vmlinux 0xb4043948 acpi_execute_simple_method +EXPORT_SYMBOL vmlinux 0xb417f082 kstrtos8_from_user +EXPORT_SYMBOL vmlinux 0xb423dba1 console_blanked +EXPORT_SYMBOL vmlinux 0xb4296653 param_set_bool +EXPORT_SYMBOL vmlinux 0xb43de5ea kernel_listen +EXPORT_SYMBOL vmlinux 0xb4577003 acpi_dev_present +EXPORT_SYMBOL vmlinux 0xb4738772 ip_do_fragment +EXPORT_SYMBOL vmlinux 0xb48a7a35 mmc_command_done +EXPORT_SYMBOL vmlinux 0xb48d4d22 security_sb_eat_lsm_opts +EXPORT_SYMBOL vmlinux 0xb4985beb ZSTD_resetCStream +EXPORT_SYMBOL vmlinux 0xb4d407eb pcim_pin_device +EXPORT_SYMBOL vmlinux 0xb4d538ef cdc_parse_cdc_header +EXPORT_SYMBOL vmlinux 0xb4dc7a65 of_device_is_compatible +EXPORT_SYMBOL vmlinux 0xb4f13d2a abort +EXPORT_SYMBOL vmlinux 0xb50c9e25 _copy_from_iter +EXPORT_SYMBOL vmlinux 0xb53f2810 tcp_sockets_allocated +EXPORT_SYMBOL vmlinux 0xb54227db nd_region_acquire_lane +EXPORT_SYMBOL vmlinux 0xb552a733 tcf_exts_destroy +EXPORT_SYMBOL vmlinux 0xb55fc76d napi_complete_done +EXPORT_SYMBOL vmlinux 0xb5613edb config_group_find_item +EXPORT_SYMBOL vmlinux 0xb567e432 neigh_seq_next +EXPORT_SYMBOL vmlinux 0xb5715cf0 __tty_insert_flip_char +EXPORT_SYMBOL vmlinux 0xb57343c2 frontswap_shrink +EXPORT_SYMBOL vmlinux 0xb57f1e27 fman_port_disable +EXPORT_SYMBOL vmlinux 0xb5813674 blk_pre_runtime_resume +EXPORT_SYMBOL vmlinux 0xb586b46c pci_read_config_dword +EXPORT_SYMBOL vmlinux 0xb58aeaab kernel_cpustat +EXPORT_SYMBOL vmlinux 0xb5a459dc unregister_blkdev +EXPORT_SYMBOL vmlinux 0xb5a66e5b genphy_read_mmd_unsupported +EXPORT_SYMBOL vmlinux 0xb5a6b6e0 ip6_xmit +EXPORT_SYMBOL vmlinux 0xb5aa7165 dma_pool_destroy +EXPORT_SYMBOL vmlinux 0xb5b990ec flush_dcache_page +EXPORT_SYMBOL vmlinux 0xb5e2a9dd dev_pm_opp_unregister_notifier +EXPORT_SYMBOL vmlinux 0xb5e73116 flush_delayed_work +EXPORT_SYMBOL vmlinux 0xb5e733dd inet_csk_reqsk_queue_add +EXPORT_SYMBOL vmlinux 0xb5f5029e mdio_device_register +EXPORT_SYMBOL vmlinux 0xb61ad56c get_disk_and_module +EXPORT_SYMBOL vmlinux 0xb61dcec6 bdget +EXPORT_SYMBOL vmlinux 0xb633f115 irq_poll_enable +EXPORT_SYMBOL vmlinux 0xb649978d fb_find_mode +EXPORT_SYMBOL vmlinux 0xb653cbc5 dma_find_channel +EXPORT_SYMBOL vmlinux 0xb654ef65 acpi_os_read_port +EXPORT_SYMBOL vmlinux 0xb6550590 genphy_write_mmd_unsupported +EXPORT_SYMBOL vmlinux 0xb6600623 flow_rule_match_enc_ip +EXPORT_SYMBOL vmlinux 0xb670bb33 __vfs_setxattr +EXPORT_SYMBOL vmlinux 0xb6719c09 sk_stop_timer +EXPORT_SYMBOL vmlinux 0xb6747630 eth_validate_addr +EXPORT_SYMBOL vmlinux 0xb676cd0b qman_create_fq +EXPORT_SYMBOL vmlinux 0xb677d9a7 dquot_disable +EXPORT_SYMBOL vmlinux 0xb678366f int_sqrt +EXPORT_SYMBOL vmlinux 0xb67baae2 nla_reserve +EXPORT_SYMBOL vmlinux 0xb67c9280 utf8cursor +EXPORT_SYMBOL vmlinux 0xb67caf65 ucc_fast_enable +EXPORT_SYMBOL vmlinux 0xb67f56d3 buffer_check_dirty_writeback +EXPORT_SYMBOL vmlinux 0xb67fec0e uuid_parse +EXPORT_SYMBOL vmlinux 0xb687d5a0 genphy_check_and_restart_aneg +EXPORT_SYMBOL vmlinux 0xb6936ffe _bcd2bin +EXPORT_SYMBOL vmlinux 0xb69f6aae xfrm_lookup_with_ifid +EXPORT_SYMBOL vmlinux 0xb6a68816 find_last_bit +EXPORT_SYMBOL vmlinux 0xb6abca2c disk_start_io_acct +EXPORT_SYMBOL vmlinux 0xb6acaa13 phy_sfp_detach +EXPORT_SYMBOL vmlinux 0xb6ae3fa2 __inet6_lookup_established +EXPORT_SYMBOL vmlinux 0xb6c8163f blk_mq_run_hw_queues +EXPORT_SYMBOL vmlinux 0xb6e88aee unlock_rename +EXPORT_SYMBOL vmlinux 0xb6fd7e81 pcim_iounmap +EXPORT_SYMBOL vmlinux 0xb719340f xsk_umem_consume_tx +EXPORT_SYMBOL vmlinux 0xb71b5c13 mark_buffer_async_write +EXPORT_SYMBOL vmlinux 0xb737b185 gen_pool_best_fit +EXPORT_SYMBOL vmlinux 0xb738a45a xsk_set_rx_need_wakeup +EXPORT_SYMBOL vmlinux 0xb7542b8a pneigh_lookup +EXPORT_SYMBOL vmlinux 0xb754ed4f dev_mc_sync +EXPORT_SYMBOL vmlinux 0xb7688155 ucc_slow_init +EXPORT_SYMBOL vmlinux 0xb77fe15b skb_push +EXPORT_SYMBOL vmlinux 0xb78657c3 tcf_unregister_action +EXPORT_SYMBOL vmlinux 0xb788fb30 gic_pmr_sync +EXPORT_SYMBOL vmlinux 0xb78debe3 LZ4_decompress_fast_usingDict +EXPORT_SYMBOL vmlinux 0xb7c0f443 sort +EXPORT_SYMBOL vmlinux 0xb7c6db70 sysctl_max_skb_frags +EXPORT_SYMBOL vmlinux 0xb7c8ad94 vme_irq_handler +EXPORT_SYMBOL vmlinux 0xb7cfdcf7 nf_ip6_checksum +EXPORT_SYMBOL vmlinux 0xb7ecfcb0 dmam_free_coherent +EXPORT_SYMBOL vmlinux 0xb7f0cf71 pci_disable_msix +EXPORT_SYMBOL vmlinux 0xb83129db ZSTD_decompressContinue +EXPORT_SYMBOL vmlinux 0xb8337791 pci_set_master +EXPORT_SYMBOL vmlinux 0xb83fdd35 block_page_mkwrite +EXPORT_SYMBOL vmlinux 0xb842716c qcom_scm_ocmem_lock_available +EXPORT_SYMBOL vmlinux 0xb84a1f0e i2c_smbus_write_word_data +EXPORT_SYMBOL vmlinux 0xb84ac8fa __ClearPageMovable +EXPORT_SYMBOL vmlinux 0xb84ea6a8 read_cache_page +EXPORT_SYMBOL vmlinux 0xb85b70c9 load_nls_default +EXPORT_SYMBOL vmlinux 0xb8605d9c qman_p_static_dequeue_add +EXPORT_SYMBOL vmlinux 0xb868ac5c register_sysrq_key +EXPORT_SYMBOL vmlinux 0xb876656e netlink_broadcast +EXPORT_SYMBOL vmlinux 0xb895df30 of_dev_get +EXPORT_SYMBOL vmlinux 0xb89b6e6b guid_parse +EXPORT_SYMBOL vmlinux 0xb89d5194 unregister_netdevice_queue +EXPORT_SYMBOL vmlinux 0xb89e43f2 qman_query_fq_np +EXPORT_SYMBOL vmlinux 0xb8b043f2 kfree_link +EXPORT_SYMBOL vmlinux 0xb8b9f817 kmalloc_order_trace +EXPORT_SYMBOL vmlinux 0xb8c2ea2d param_get_bool +EXPORT_SYMBOL vmlinux 0xb8c598bf pci_bus_write_config_word +EXPORT_SYMBOL vmlinux 0xb8c61b44 dquot_commit +EXPORT_SYMBOL vmlinux 0xb8d67982 dev_uc_add_excl +EXPORT_SYMBOL vmlinux 0xb8fd347e nf_log_unregister +EXPORT_SYMBOL vmlinux 0xb9056bb6 remove_conflicting_framebuffers +EXPORT_SYMBOL vmlinux 0xb907513f unpoison_memory +EXPORT_SYMBOL vmlinux 0xb90c2470 dquot_load_quota_inode +EXPORT_SYMBOL vmlinux 0xb90ff6d5 msi_desc_to_pci_dev +EXPORT_SYMBOL vmlinux 0xb911bb58 minmax_running_max +EXPORT_SYMBOL vmlinux 0xb91a6b3c __pci_register_driver +EXPORT_SYMBOL vmlinux 0xb94339c4 qdisc_put_stab +EXPORT_SYMBOL vmlinux 0xb94d57dd migrate_page +EXPORT_SYMBOL vmlinux 0xb95ae0b8 scsi_get_host_dev +EXPORT_SYMBOL vmlinux 0xb961b08e vm_map_ram +EXPORT_SYMBOL vmlinux 0xb97220ff bitmap_parse +EXPORT_SYMBOL vmlinux 0xb978eb81 dquot_quota_off +EXPORT_SYMBOL vmlinux 0xb9a1e978 dev_load +EXPORT_SYMBOL vmlinux 0xb9a41576 __destroy_inode +EXPORT_SYMBOL vmlinux 0xb9a58055 scsi_eh_prep_cmnd +EXPORT_SYMBOL vmlinux 0xb9acbdf0 dev_set_mac_address +EXPORT_SYMBOL vmlinux 0xb9af1d0d __xa_clear_mark +EXPORT_SYMBOL vmlinux 0xb9b632cd eth_header_cache +EXPORT_SYMBOL vmlinux 0xb9bd777d kthread_blkcg +EXPORT_SYMBOL vmlinux 0xb9d5d999 registered_fb +EXPORT_SYMBOL vmlinux 0xb9e3fa17 d_exact_alias +EXPORT_SYMBOL vmlinux 0xb9e8e2cc in6addr_sitelocal_allrouters +EXPORT_SYMBOL vmlinux 0xb9ed2c38 of_find_node_by_phandle +EXPORT_SYMBOL vmlinux 0xb9f7025c mmc_alloc_host +EXPORT_SYMBOL vmlinux 0xb9fc381a qcom_scm_hdcp_req +EXPORT_SYMBOL vmlinux 0xba1008c8 __crc32c_le +EXPORT_SYMBOL vmlinux 0xba441d21 kset_unregister +EXPORT_SYMBOL vmlinux 0xba497f13 loops_per_jiffy +EXPORT_SYMBOL vmlinux 0xba4d34f8 netdev_port_same_parent_id +EXPORT_SYMBOL vmlinux 0xba5ca4f9 clocksource_unregister +EXPORT_SYMBOL vmlinux 0xba627871 tty_port_tty_set +EXPORT_SYMBOL vmlinux 0xba707a78 qe_get_brg_clk +EXPORT_SYMBOL vmlinux 0xba901d94 rproc_free +EXPORT_SYMBOL vmlinux 0xba9d7aff sock_create_kern +EXPORT_SYMBOL vmlinux 0xbaac461c pci_iomap +EXPORT_SYMBOL vmlinux 0xbad7c404 generic_file_readonly_mmap +EXPORT_SYMBOL vmlinux 0xbadcaade blk_set_default_limits +EXPORT_SYMBOL vmlinux 0xbae10c02 ps2_cmd_aborted +EXPORT_SYMBOL vmlinux 0xbaeedf7d path_nosuid +EXPORT_SYMBOL vmlinux 0xbaffff96 ZSTD_CStreamWorkspaceBound +EXPORT_SYMBOL vmlinux 0xbb0540aa zlib_inflateReset +EXPORT_SYMBOL vmlinux 0xbb1b38c6 nosteal_pipe_buf_ops +EXPORT_SYMBOL vmlinux 0xbb21260e convert_ifc_address +EXPORT_SYMBOL vmlinux 0xbb24f607 init_cdrom_command +EXPORT_SYMBOL vmlinux 0xbb35675b __bitmap_intersects +EXPORT_SYMBOL vmlinux 0xbb371cf7 generic_read_dir +EXPORT_SYMBOL vmlinux 0xbb42d55b km_state_expired +EXPORT_SYMBOL vmlinux 0xbb453cf1 kmem_cache_size +EXPORT_SYMBOL vmlinux 0xbb4f4766 simple_write_to_buffer +EXPORT_SYMBOL vmlinux 0xbb687724 bman_new_pool +EXPORT_SYMBOL vmlinux 0xbb7309e3 xfrm_state_walk +EXPORT_SYMBOL vmlinux 0xbb7708cf pci_try_set_mwi +EXPORT_SYMBOL vmlinux 0xbb908cde devfreq_monitor_start +EXPORT_SYMBOL vmlinux 0xbb9fce08 rproc_da_to_va +EXPORT_SYMBOL vmlinux 0xbba03d5b xfrm_state_add +EXPORT_SYMBOL vmlinux 0xbbaa26c7 mdiobus_write +EXPORT_SYMBOL vmlinux 0xbbb41aee phy_validate_pause +EXPORT_SYMBOL vmlinux 0xbbbb3d5b __skb_recv_datagram +EXPORT_SYMBOL vmlinux 0xbbdf1d31 sock_common_recvmsg +EXPORT_SYMBOL vmlinux 0xbbe46b86 devm_input_allocate_device +EXPORT_SYMBOL vmlinux 0xbbe80fdb kmalloc_order +EXPORT_SYMBOL vmlinux 0xbbeecf14 mfd_add_devices +EXPORT_SYMBOL vmlinux 0xbc05f037 jbd2_journal_start +EXPORT_SYMBOL vmlinux 0xbc0f549e jbd2_journal_check_available_features +EXPORT_SYMBOL vmlinux 0xbc1d8ba9 ndo_dflt_fdb_add +EXPORT_SYMBOL vmlinux 0xbc2031de acpi_processor_get_bios_limit +EXPORT_SYMBOL vmlinux 0xbc22486f md_integrity_register +EXPORT_SYMBOL vmlinux 0xbc25f7cc free_contig_range +EXPORT_SYMBOL vmlinux 0xbc300040 ps2_handle_ack +EXPORT_SYMBOL vmlinux 0xbc475abc __sk_backlog_rcv +EXPORT_SYMBOL vmlinux 0xbc50ab47 tty_schedule_flip +EXPORT_SYMBOL vmlinux 0xbc64c5d7 get_unmapped_area +EXPORT_SYMBOL vmlinux 0xbc6d378b tty_write_room +EXPORT_SYMBOL vmlinux 0xbc899046 find_get_pages_contig +EXPORT_SYMBOL vmlinux 0xbc89bf9b vlan_vid_add +EXPORT_SYMBOL vmlinux 0xbcab6ee6 sscanf +EXPORT_SYMBOL vmlinux 0xbcb66e09 of_pci_range_to_resource +EXPORT_SYMBOL vmlinux 0xbcb72eb3 tty_port_free_xmit_buf +EXPORT_SYMBOL vmlinux 0xbcbdf60f kstrtos8 +EXPORT_SYMBOL vmlinux 0xbcc308bb strnlen_user +EXPORT_SYMBOL vmlinux 0xbcc97235 genphy_restart_aneg +EXPORT_SYMBOL vmlinux 0xbccd82ac simple_statfs +EXPORT_SYMBOL vmlinux 0xbcdf8985 param_set_ushort +EXPORT_SYMBOL vmlinux 0xbce32642 trace_raw_output_prep +EXPORT_SYMBOL vmlinux 0xbcf0f504 crypto_sha512_finup +EXPORT_SYMBOL vmlinux 0xbd06b428 blk_mq_delay_kick_requeue_list +EXPORT_SYMBOL vmlinux 0xbd2470e8 pci_set_mwi +EXPORT_SYMBOL vmlinux 0xbd2932b8 nf_register_net_hook +EXPORT_SYMBOL vmlinux 0xbd29edbe neigh_update +EXPORT_SYMBOL vmlinux 0xbd2aac56 scm_detach_fds +EXPORT_SYMBOL vmlinux 0xbd462b55 __kfifo_init +EXPORT_SYMBOL vmlinux 0xbd59d983 fman_set_port_params +EXPORT_SYMBOL vmlinux 0xbd5d6b98 device_match_acpi_dev +EXPORT_SYMBOL vmlinux 0xbd660589 phy_drivers_unregister +EXPORT_SYMBOL vmlinux 0xbd6841d4 crc16 +EXPORT_SYMBOL vmlinux 0xbd715381 vme_slave_request +EXPORT_SYMBOL vmlinux 0xbd78d62e ns_capable_setid +EXPORT_SYMBOL vmlinux 0xbd89b210 acpi_device_hid +EXPORT_SYMBOL vmlinux 0xbd8b34ee pcie_capability_clear_and_set_dword +EXPORT_SYMBOL vmlinux 0xbd943c92 iov_iter_get_pages_alloc +EXPORT_SYMBOL vmlinux 0xbd9fca74 mipi_dsi_dcs_get_display_brightness +EXPORT_SYMBOL vmlinux 0xbda14748 vme_irq_free +EXPORT_SYMBOL vmlinux 0xbda29b37 mmc_sw_reset +EXPORT_SYMBOL vmlinux 0xbdacb6c8 flow_block_cb_setup_simple +EXPORT_SYMBOL vmlinux 0xbdadc675 revalidate_disk +EXPORT_SYMBOL vmlinux 0xbdae13df fscrypt_decrypt_bio +EXPORT_SYMBOL vmlinux 0xbdc675ac _dev_info +EXPORT_SYMBOL vmlinux 0xbdd06331 sock_set_reuseport +EXPORT_SYMBOL vmlinux 0xbdd91f5d phy_attached_info_irq +EXPORT_SYMBOL vmlinux 0xbde94ce3 msm_pinctrl_dev_pm_ops +EXPORT_SYMBOL vmlinux 0xbdeba6ec devm_devfreq_register_notifier +EXPORT_SYMBOL vmlinux 0xbded35db blk_queue_io_min +EXPORT_SYMBOL vmlinux 0xbdf842bb iov_iter_get_pages +EXPORT_SYMBOL vmlinux 0xbe029f17 nobh_truncate_page +EXPORT_SYMBOL vmlinux 0xbe0edc94 d_hash_and_lookup +EXPORT_SYMBOL vmlinux 0xbe49252c acpi_os_write_port +EXPORT_SYMBOL vmlinux 0xbe4e1ba0 tcp_getsockopt +EXPORT_SYMBOL vmlinux 0xbe4eb6ed secure_dccpv6_sequence_number +EXPORT_SYMBOL vmlinux 0xbe5263a5 flow_rule_match_basic +EXPORT_SYMBOL vmlinux 0xbe54de35 secpath_set +EXPORT_SYMBOL vmlinux 0xbe5a24e9 xxh32_copy_state +EXPORT_SYMBOL vmlinux 0xbe6a866f __wait_on_bit +EXPORT_SYMBOL vmlinux 0xbe7e05a8 acpi_tb_install_and_load_table +EXPORT_SYMBOL vmlinux 0xbea5c1f2 iov_iter_zero +EXPORT_SYMBOL vmlinux 0xbeafcdcb block_commit_write +EXPORT_SYMBOL vmlinux 0xbec17215 peernet2id +EXPORT_SYMBOL vmlinux 0xbec645bf blk_get_request +EXPORT_SYMBOL vmlinux 0xbed4721c generic_file_llseek +EXPORT_SYMBOL vmlinux 0xbef43296 console_conditional_schedule +EXPORT_SYMBOL vmlinux 0xbef471dc pci_wait_for_pending_transaction +EXPORT_SYMBOL vmlinux 0xbef6ca77 pci_set_vpd_size +EXPORT_SYMBOL vmlinux 0xbefa51a3 gen_pool_add_owner +EXPORT_SYMBOL vmlinux 0xbf05da73 simple_setattr +EXPORT_SYMBOL vmlinux 0xbf452213 simple_fill_super +EXPORT_SYMBOL vmlinux 0xbf4a398c skb_flow_get_icmp_tci +EXPORT_SYMBOL vmlinux 0xbf4e3fba fscrypt_free_bounce_page +EXPORT_SYMBOL vmlinux 0xbf564279 qdisc_watchdog_init_clockid +EXPORT_SYMBOL vmlinux 0xbf59c419 posix_acl_init +EXPORT_SYMBOL vmlinux 0xbf7904ff vc_resize +EXPORT_SYMBOL vmlinux 0xbf7ea475 generic_file_splice_read +EXPORT_SYMBOL vmlinux 0xbf8f4972 tso_build_hdr +EXPORT_SYMBOL vmlinux 0xbf943d1b register_netdev +EXPORT_SYMBOL vmlinux 0xbf9bcc8d __cap_empty_set +EXPORT_SYMBOL vmlinux 0xbfcbc0d2 stmp_reset_block +EXPORT_SYMBOL vmlinux 0xbfda2b40 configfs_unregister_group +EXPORT_SYMBOL vmlinux 0xbfee3ad5 loop_unregister_transfer +EXPORT_SYMBOL vmlinux 0xbfff887e mmc_flush_cache +EXPORT_SYMBOL vmlinux 0xc00a9c5e dev_addr_del +EXPORT_SYMBOL vmlinux 0xc00fb90c of_device_is_big_endian +EXPORT_SYMBOL vmlinux 0xc01d06aa fman_set_mac_max_frame +EXPORT_SYMBOL vmlinux 0xc025016c flow_keys_dissector +EXPORT_SYMBOL vmlinux 0xc025d405 seq_lseek +EXPORT_SYMBOL vmlinux 0xc029e95b sched_autogroup_create_attach +EXPORT_SYMBOL vmlinux 0xc049aa13 ata_dev_printk +EXPORT_SYMBOL vmlinux 0xc0607ce6 __blk_mq_end_request +EXPORT_SYMBOL vmlinux 0xc06cf7b2 input_flush_device +EXPORT_SYMBOL vmlinux 0xc0732d30 __cpuhp_setup_state_cpuslocked +EXPORT_SYMBOL vmlinux 0xc0754876 inet_get_local_port_range +EXPORT_SYMBOL vmlinux 0xc0763484 rfkill_blocked +EXPORT_SYMBOL vmlinux 0xc07b0863 fb_destroy_modedb +EXPORT_SYMBOL vmlinux 0xc08a3631 flow_rule_match_tcp +EXPORT_SYMBOL vmlinux 0xc096e23d hdmi_drm_infoframe_init +EXPORT_SYMBOL vmlinux 0xc0a3d105 find_next_bit +EXPORT_SYMBOL vmlinux 0xc0a9d753 skb_vlan_push +EXPORT_SYMBOL vmlinux 0xc0b2664d devlink_dpipe_header_ipv4 +EXPORT_SYMBOL vmlinux 0xc0bca0f1 ZSTD_nextSrcSizeToDecompress +EXPORT_SYMBOL vmlinux 0xc0be1ed8 ns_capable_noaudit +EXPORT_SYMBOL vmlinux 0xc0c5c27f bio_advance +EXPORT_SYMBOL vmlinux 0xc0d5feee vfs_statx +EXPORT_SYMBOL vmlinux 0xc0dc347a scsi_report_device_reset +EXPORT_SYMBOL vmlinux 0xc0e0a560 fs_param_is_blockdev +EXPORT_SYMBOL vmlinux 0xc0ff12fb nla_strdup +EXPORT_SYMBOL vmlinux 0xc1125650 max8998_bulk_write +EXPORT_SYMBOL vmlinux 0xc1179daa kstrtou8_from_user +EXPORT_SYMBOL vmlinux 0xc1353de1 ipv6_select_ident +EXPORT_SYMBOL vmlinux 0xc13fd003 vlan_dev_vlan_proto +EXPORT_SYMBOL vmlinux 0xc14dc168 acpi_get_data +EXPORT_SYMBOL vmlinux 0xc1514a3b free_irq +EXPORT_SYMBOL vmlinux 0xc156566e xfrm_register_type +EXPORT_SYMBOL vmlinux 0xc1568dd6 dev_pick_tx_cpu_id +EXPORT_SYMBOL vmlinux 0xc156c981 refcount_dec_and_mutex_lock +EXPORT_SYMBOL vmlinux 0xc1579516 fman_port_enable +EXPORT_SYMBOL vmlinux 0xc16410b9 ZSTD_getDictID_fromDDict +EXPORT_SYMBOL vmlinux 0xc164a51c keygen_init +EXPORT_SYMBOL vmlinux 0xc164e3f6 config_item_set_name +EXPORT_SYMBOL vmlinux 0xc16be39d iter_div_u64_rem +EXPORT_SYMBOL vmlinux 0xc16ca1e5 skb_orphan_partial +EXPORT_SYMBOL vmlinux 0xc19261e0 inode_set_flags +EXPORT_SYMBOL vmlinux 0xc1946e88 compat_import_iovec +EXPORT_SYMBOL vmlinux 0xc1afe89a padata_alloc_shell +EXPORT_SYMBOL vmlinux 0xc1c10520 generic_update_time +EXPORT_SYMBOL vmlinux 0xc1c5cb58 unlock_buffer +EXPORT_SYMBOL vmlinux 0xc1c65154 of_mdiobus_phy_device_register +EXPORT_SYMBOL vmlinux 0xc1cb5def nvm_alloc_dev +EXPORT_SYMBOL vmlinux 0xc1d8cfaf __fdget +EXPORT_SYMBOL vmlinux 0xc1ef30a8 devm_clk_release_clkdev +EXPORT_SYMBOL vmlinux 0xc1f2da15 bd_finish_claiming +EXPORT_SYMBOL vmlinux 0xc1f66031 dma_resv_copy_fences +EXPORT_SYMBOL vmlinux 0xc1fc68db __inc_zone_page_state +EXPORT_SYMBOL vmlinux 0xc2050974 fman_port_get_tstamp +EXPORT_SYMBOL vmlinux 0xc221bb6f d_tmpfile +EXPORT_SYMBOL vmlinux 0xc2260a43 devm_alloc_etherdev_mqs +EXPORT_SYMBOL vmlinux 0xc22d94e5 blk_mq_alloc_request +EXPORT_SYMBOL vmlinux 0xc2310cdc logic_inl +EXPORT_SYMBOL vmlinux 0xc253d1f0 gnet_stats_copy_rate_est +EXPORT_SYMBOL vmlinux 0xc259492e follow_pfn +EXPORT_SYMBOL vmlinux 0xc25be5fb blk_mq_alloc_tag_set +EXPORT_SYMBOL vmlinux 0xc261a886 csum_and_copy_from_iter +EXPORT_SYMBOL vmlinux 0xc26274be locks_delete_block +EXPORT_SYMBOL vmlinux 0xc267960e utf8_validate +EXPORT_SYMBOL vmlinux 0xc270443f phy_loopback +EXPORT_SYMBOL vmlinux 0xc2856134 follow_pte_pmd +EXPORT_SYMBOL vmlinux 0xc29bf967 strspn +EXPORT_SYMBOL vmlinux 0xc2a17ebe seqno_fence_ops +EXPORT_SYMBOL vmlinux 0xc2bf56f6 sdev_prefix_printk +EXPORT_SYMBOL vmlinux 0xc2c2073e gnet_stats_start_copy_compat +EXPORT_SYMBOL vmlinux 0xc2c607b2 blk_alloc_queue +EXPORT_SYMBOL vmlinux 0xc2cdeb59 rtnl_unicast +EXPORT_SYMBOL vmlinux 0xc2e4c9f5 seq_escape_mem_ascii +EXPORT_SYMBOL vmlinux 0xc2e587d1 reset_devices +EXPORT_SYMBOL vmlinux 0xc2ed1fc1 mii_check_media +EXPORT_SYMBOL vmlinux 0xc2eddfe9 neigh_sysctl_unregister +EXPORT_SYMBOL vmlinux 0xc2f11eac meson_sm_call_read +EXPORT_SYMBOL vmlinux 0xc2f52274 __lshrti3 +EXPORT_SYMBOL vmlinux 0xc306c3a8 page_frag_alloc +EXPORT_SYMBOL vmlinux 0xc310b981 strnstr +EXPORT_SYMBOL vmlinux 0xc31db0ce is_vmalloc_addr +EXPORT_SYMBOL vmlinux 0xc32c71af register_inetaddr_validator_notifier +EXPORT_SYMBOL vmlinux 0xc338fef4 xfrm_spd_getinfo +EXPORT_SYMBOL vmlinux 0xc3399911 xfrm_state_flush +EXPORT_SYMBOL vmlinux 0xc3494837 mmc_remove_host +EXPORT_SYMBOL vmlinux 0xc349f2ae dev_queue_xmit +EXPORT_SYMBOL vmlinux 0xc3545d29 netdev_class_create_file_ns +EXPORT_SYMBOL vmlinux 0xc35973c5 netif_set_xps_queue +EXPORT_SYMBOL vmlinux 0xc36a3bd4 __acpi_handle_debug +EXPORT_SYMBOL vmlinux 0xc372a962 of_phy_find_device +EXPORT_SYMBOL vmlinux 0xc3762aec mempool_alloc +EXPORT_SYMBOL vmlinux 0xc37f9c6e cpufreq_update_policy +EXPORT_SYMBOL vmlinux 0xc38c83b8 mod_timer +EXPORT_SYMBOL vmlinux 0xc3942966 override_creds +EXPORT_SYMBOL vmlinux 0xc3b6dc5e reuseport_add_sock +EXPORT_SYMBOL vmlinux 0xc3b8514d set_nlink +EXPORT_SYMBOL vmlinux 0xc3bc72ad trace_print_array_seq +EXPORT_SYMBOL vmlinux 0xc3c5b99f writeback_inodes_sb_nr +EXPORT_SYMBOL vmlinux 0xc3d2138a sync_inode_metadata +EXPORT_SYMBOL vmlinux 0xc3e95ad6 __kfree_skb +EXPORT_SYMBOL vmlinux 0xc3ef1e8a dma_set_coherent_mask +EXPORT_SYMBOL vmlinux 0xc3ff38c2 down_read_trylock +EXPORT_SYMBOL vmlinux 0xc4141721 sock_no_socketpair +EXPORT_SYMBOL vmlinux 0xc41bc980 iwe_stream_add_value +EXPORT_SYMBOL vmlinux 0xc4212ab9 qdisc_class_hash_insert +EXPORT_SYMBOL vmlinux 0xc4272049 pci_wake_from_d3 +EXPORT_SYMBOL vmlinux 0xc42b1c5a add_watch_to_object +EXPORT_SYMBOL vmlinux 0xc42dcb99 acpi_evaluate_ost +EXPORT_SYMBOL vmlinux 0xc437e55b kfree_skb_list +EXPORT_SYMBOL vmlinux 0xc44df0ae blk_rq_append_bio +EXPORT_SYMBOL vmlinux 0xc4708199 cpm_muram_addr +EXPORT_SYMBOL vmlinux 0xc4777aa9 __ctzsi2 +EXPORT_SYMBOL vmlinux 0xc48191d1 sk_send_sigurg +EXPORT_SYMBOL vmlinux 0xc495b160 kill_anon_super +EXPORT_SYMBOL vmlinux 0xc499ca1c rtnl_configure_link +EXPORT_SYMBOL vmlinux 0xc4b13905 of_graph_get_remote_node +EXPORT_SYMBOL vmlinux 0xc4b21d2f qman_get_affine_portal +EXPORT_SYMBOL vmlinux 0xc4b39ca4 fman_bind +EXPORT_SYMBOL vmlinux 0xc4bec795 free_netdev +EXPORT_SYMBOL vmlinux 0xc4d0eeeb tty_port_init +EXPORT_SYMBOL vmlinux 0xc4ead71a rawv6_mh_filter_register +EXPORT_SYMBOL vmlinux 0xc4eaf2f4 vfs_get_tree +EXPORT_SYMBOL vmlinux 0xc4f89147 phy_register_fixup +EXPORT_SYMBOL vmlinux 0xc51289ed pcim_enable_device +EXPORT_SYMBOL vmlinux 0xc527639b jbd2_journal_update_sb_errno +EXPORT_SYMBOL vmlinux 0xc528a49a queued_write_lock_slowpath +EXPORT_SYMBOL vmlinux 0xc53790c1 account_page_redirty +EXPORT_SYMBOL vmlinux 0xc5561305 sock_recv_errqueue +EXPORT_SYMBOL vmlinux 0xc56a41e6 vabits_actual +EXPORT_SYMBOL vmlinux 0xc57c48a3 idr_get_next +EXPORT_SYMBOL vmlinux 0xc5850110 printk +EXPORT_SYMBOL vmlinux 0xc598bbe7 neigh_parms_alloc +EXPORT_SYMBOL vmlinux 0xc599a772 security_xfrm_state_delete +EXPORT_SYMBOL vmlinux 0xc5a21042 qdisc_offload_dump_helper +EXPORT_SYMBOL vmlinux 0xc5b6f236 queue_work_on +EXPORT_SYMBOL vmlinux 0xc5b85749 compat_tcp_setsockopt +EXPORT_SYMBOL vmlinux 0xc5c26774 pagecache_write_end +EXPORT_SYMBOL vmlinux 0xc5e5573a frame_vector_to_pages +EXPORT_SYMBOL vmlinux 0xc5e74216 release_resource +EXPORT_SYMBOL vmlinux 0xc5ee7cd4 __dev_getfirstbyhwtype +EXPORT_SYMBOL vmlinux 0xc5f7e801 sg_last +EXPORT_SYMBOL vmlinux 0xc6055c9e kvasprintf_const +EXPORT_SYMBOL vmlinux 0xc609ca75 cdrom_get_media_event +EXPORT_SYMBOL vmlinux 0xc60d0620 __num_online_cpus +EXPORT_SYMBOL vmlinux 0xc61abd1f phy_set_sym_pause +EXPORT_SYMBOL vmlinux 0xc6280154 filemap_fdatawrite +EXPORT_SYMBOL vmlinux 0xc631580a console_unlock +EXPORT_SYMBOL vmlinux 0xc633d82d phy_unregister_fixup +EXPORT_SYMBOL vmlinux 0xc6370db0 __icmp_send +EXPORT_SYMBOL vmlinux 0xc652072b seq_release_private +EXPORT_SYMBOL vmlinux 0xc6535ed3 blkdev_fsync +EXPORT_SYMBOL vmlinux 0xc65ae352 simple_empty +EXPORT_SYMBOL vmlinux 0xc65e4e97 secure_dccp_sequence_number +EXPORT_SYMBOL vmlinux 0xc666a132 crc_t10dif +EXPORT_SYMBOL vmlinux 0xc66a8304 cpu_rmap_add +EXPORT_SYMBOL vmlinux 0xc66d919f dm_table_get_mode +EXPORT_SYMBOL vmlinux 0xc68d7ead pcie_get_speed_cap +EXPORT_SYMBOL vmlinux 0xc69b614f serial8250_do_set_termios +EXPORT_SYMBOL vmlinux 0xc69fce52 qcom_scm_qsmmu500_wait_safe_toggle +EXPORT_SYMBOL vmlinux 0xc6a15204 simple_link +EXPORT_SYMBOL vmlinux 0xc6b13d25 abx500_get_register_interruptible +EXPORT_SYMBOL vmlinux 0xc6cb465a __kfifo_max_r +EXPORT_SYMBOL vmlinux 0xc6cbbc89 capable +EXPORT_SYMBOL vmlinux 0xc6d09aa9 release_firmware +EXPORT_SYMBOL vmlinux 0xc6f46339 init_timer_key +EXPORT_SYMBOL vmlinux 0xc6f55146 blk_mq_start_stopped_hw_queues +EXPORT_SYMBOL vmlinux 0xc6fdfc5c fman_set_mac_active_pause +EXPORT_SYMBOL vmlinux 0xc7040bf5 ucc_tdm_init +EXPORT_SYMBOL vmlinux 0xc70433c0 security_binder_transaction +EXPORT_SYMBOL vmlinux 0xc7072925 wireless_spy_update +EXPORT_SYMBOL vmlinux 0xc708f1fe ec_write +EXPORT_SYMBOL vmlinux 0xc70d90a1 simple_unlink +EXPORT_SYMBOL vmlinux 0xc71295c1 clk_bulk_get +EXPORT_SYMBOL vmlinux 0xc71d218f drop_super_exclusive +EXPORT_SYMBOL vmlinux 0xc7208c3a serial8250_resume_port +EXPORT_SYMBOL vmlinux 0xc754b743 pci_enable_wake +EXPORT_SYMBOL vmlinux 0xc76f483f tcf_action_dump_1 +EXPORT_SYMBOL vmlinux 0xc77440aa msm_pinctrl_probe +EXPORT_SYMBOL vmlinux 0xc781bd9f rfkill_resume_polling +EXPORT_SYMBOL vmlinux 0xc7856a3d inet6addr_notifier_call_chain +EXPORT_SYMBOL vmlinux 0xc7991086 get_cached_acl +EXPORT_SYMBOL vmlinux 0xc79bcd36 dm_vcalloc +EXPORT_SYMBOL vmlinux 0xc7a4fbed rtnl_lock +EXPORT_SYMBOL vmlinux 0xc7ae2b4d __skb_get_hash +EXPORT_SYMBOL vmlinux 0xc7bca8f8 __phy_write_mmd +EXPORT_SYMBOL vmlinux 0xc7c1107a LZ4_decompress_safe +EXPORT_SYMBOL vmlinux 0xc7c12ec0 sk_alloc +EXPORT_SYMBOL vmlinux 0xc7d094b5 dm_read_arg_group +EXPORT_SYMBOL vmlinux 0xc7d53e7c kmem_cache_alloc_node +EXPORT_SYMBOL vmlinux 0xc7da59b9 blk_sync_queue +EXPORT_SYMBOL vmlinux 0xc7e0e66c devm_register_netdev +EXPORT_SYMBOL vmlinux 0xc7e85f83 block_truncate_page +EXPORT_SYMBOL vmlinux 0xc8047162 nf_log_trace +EXPORT_SYMBOL vmlinux 0xc80ab559 swake_up_one +EXPORT_SYMBOL vmlinux 0xc81e91a8 napi_busy_loop +EXPORT_SYMBOL vmlinux 0xc838c3f5 __ashrti3 +EXPORT_SYMBOL vmlinux 0xc841d35d fqdir_init +EXPORT_SYMBOL vmlinux 0xc84a0a7e seq_hlist_start_rcu +EXPORT_SYMBOL vmlinux 0xc84b190c nf_log_packet +EXPORT_SYMBOL vmlinux 0xc858a614 nla_reserve_nohdr +EXPORT_SYMBOL vmlinux 0xc870a741 simple_dentry_operations +EXPORT_SYMBOL vmlinux 0xc872fd85 in6addr_interfacelocal_allnodes +EXPORT_SYMBOL vmlinux 0xc8827b75 sysctl_vals +EXPORT_SYMBOL vmlinux 0xc890c008 zlib_deflateEnd +EXPORT_SYMBOL vmlinux 0xc89846c4 xudma_tchanrt_read +EXPORT_SYMBOL vmlinux 0xc899ce97 mmc_cqe_recovery +EXPORT_SYMBOL vmlinux 0xc8a91f5b cpumask_local_spread +EXPORT_SYMBOL vmlinux 0xc8de2585 sock_kfree_s +EXPORT_SYMBOL vmlinux 0xc8e7622c inetpeer_invalidate_tree +EXPORT_SYMBOL vmlinux 0xc8efd6e3 kernel_write +EXPORT_SYMBOL vmlinux 0xc8fbb0c7 can_nice +EXPORT_SYMBOL vmlinux 0xc90afb0c cros_ec_get_host_event +EXPORT_SYMBOL vmlinux 0xc93e8461 acpi_get_event_resources +EXPORT_SYMBOL vmlinux 0xc9424a70 __genphy_config_aneg +EXPORT_SYMBOL vmlinux 0xc9589c72 locks_lock_inode_wait +EXPORT_SYMBOL vmlinux 0xc9634df9 in6addr_linklocal_allrouters +EXPORT_SYMBOL vmlinux 0xc9636178 xdp_get_umem_from_qid +EXPORT_SYMBOL vmlinux 0xc96c5d9c nvdimm_revalidate_disk +EXPORT_SYMBOL vmlinux 0xc972449f mempool_alloc_slab +EXPORT_SYMBOL vmlinux 0xc9822234 clk_register_clkdev +EXPORT_SYMBOL vmlinux 0xc982eda1 __cgroup_bpf_run_filter_sock_addr +EXPORT_SYMBOL vmlinux 0xc98f312c skb_checksum_setup +EXPORT_SYMBOL vmlinux 0xc9957204 __arch_copy_in_user +EXPORT_SYMBOL vmlinux 0xc99e2a55 twl_rev +EXPORT_SYMBOL vmlinux 0xc9a1aa36 pci_claim_resource +EXPORT_SYMBOL vmlinux 0xc9aca3f8 ipv6_dev_get_saddr +EXPORT_SYMBOL vmlinux 0xc9af93fb pin_user_pages_locked +EXPORT_SYMBOL vmlinux 0xc9b7d822 dev_get_flags +EXPORT_SYMBOL vmlinux 0xc9d004b1 proc_set_user +EXPORT_SYMBOL vmlinux 0xc9d3f71d _dev_err +EXPORT_SYMBOL vmlinux 0xc9d97fdc jbd2_journal_begin_ordered_truncate +EXPORT_SYMBOL vmlinux 0xc9deb574 __scm_send +EXPORT_SYMBOL vmlinux 0xc9df055a xfrm_policy_walk_init +EXPORT_SYMBOL vmlinux 0xc9ed2d31 ps2_begin_command +EXPORT_SYMBOL vmlinux 0xc9f73da7 fb_validate_mode +EXPORT_SYMBOL vmlinux 0xca0976ec kobject_add +EXPORT_SYMBOL vmlinux 0xca15413f ZSTD_resetDStream +EXPORT_SYMBOL vmlinux 0xca1bcdda read_cache_pages +EXPORT_SYMBOL vmlinux 0xca1ea2c7 blk_set_stacking_limits +EXPORT_SYMBOL vmlinux 0xca21ebd3 bitmap_free +EXPORT_SYMBOL vmlinux 0xca3a4311 nobh_writepage +EXPORT_SYMBOL vmlinux 0xca431c05 wake_bit_function +EXPORT_SYMBOL vmlinux 0xca54379f devm_nvmem_unregister +EXPORT_SYMBOL vmlinux 0xca62afaf xudma_rflow_is_gp +EXPORT_SYMBOL vmlinux 0xca6b406a bd_abort_claiming +EXPORT_SYMBOL vmlinux 0xca6b6bda blk_mq_end_request +EXPORT_SYMBOL vmlinux 0xca7c309b pnp_unregister_card_driver +EXPORT_SYMBOL vmlinux 0xca886b68 __frontswap_load +EXPORT_SYMBOL vmlinux 0xca8f50f0 __page_cache_alloc +EXPORT_SYMBOL vmlinux 0xca92948f inet_offloads +EXPORT_SYMBOL vmlinux 0xca9360b5 rb_next +EXPORT_SYMBOL vmlinux 0xca9beaa4 __xa_store +EXPORT_SYMBOL vmlinux 0xcaa4aa2a vmf_insert_pfn +EXPORT_SYMBOL vmlinux 0xcac05c24 start_tty +EXPORT_SYMBOL vmlinux 0xcac8972c udp_seq_start +EXPORT_SYMBOL vmlinux 0xcad1aca8 acpi_exception +EXPORT_SYMBOL vmlinux 0xcadd787d skb_copy_and_hash_datagram_iter +EXPORT_SYMBOL vmlinux 0xcaf2c603 scsi_sd_pm_domain +EXPORT_SYMBOL vmlinux 0xcaf6bdea scsi_get_device_flags_keyed +EXPORT_SYMBOL vmlinux 0xcb00c0ad netdev_alert +EXPORT_SYMBOL vmlinux 0xcb0288ea ledtrig_cpu +EXPORT_SYMBOL vmlinux 0xcb13eae8 input_enable_softrepeat +EXPORT_SYMBOL vmlinux 0xcb16b3d7 tcf_idrinfo_destroy +EXPORT_SYMBOL vmlinux 0xcb3ae215 call_blocking_lsm_notifier +EXPORT_SYMBOL vmlinux 0xcb4cef16 xfrm6_input_addr +EXPORT_SYMBOL vmlinux 0xcb5c55c7 scsi_host_alloc +EXPORT_SYMBOL vmlinux 0xcb5da614 configfs_register_default_group +EXPORT_SYMBOL vmlinux 0xcb61accc generic_file_llseek_size +EXPORT_SYMBOL vmlinux 0xcb733bf2 acpi_bus_set_power +EXPORT_SYMBOL vmlinux 0xcb952c79 jbd2_journal_set_features +EXPORT_SYMBOL vmlinux 0xcb978e95 tcp_disconnect +EXPORT_SYMBOL vmlinux 0xcb9e1a22 acpi_os_map_generic_address +EXPORT_SYMBOL vmlinux 0xcba4abe3 list_sort +EXPORT_SYMBOL vmlinux 0xcbb52b3f file_write_and_wait_range +EXPORT_SYMBOL vmlinux 0xcbb8d34b xfrm4_rcv +EXPORT_SYMBOL vmlinux 0xcbc88a23 ZSTD_isFrame +EXPORT_SYMBOL vmlinux 0xcbd4898c fortify_panic +EXPORT_SYMBOL vmlinux 0xcbe45110 __remove_inode_hash +EXPORT_SYMBOL vmlinux 0xcbeaa54f generic_ro_fops +EXPORT_SYMBOL vmlinux 0xcbeddcff twl6030_mmc_card_detect +EXPORT_SYMBOL vmlinux 0xcbee484c bio_reset +EXPORT_SYMBOL vmlinux 0xcbfb33e4 init_opal_dev +EXPORT_SYMBOL vmlinux 0xcc058b56 tcf_get_next_chain +EXPORT_SYMBOL vmlinux 0xcc1b882a idr_get_next_ul +EXPORT_SYMBOL vmlinux 0xcc20ed08 remove_arg_zero +EXPORT_SYMBOL vmlinux 0xcc248d26 serial8250_suspend_port +EXPORT_SYMBOL vmlinux 0xcc2849c4 put_cmsg_scm_timestamping64 +EXPORT_SYMBOL vmlinux 0xcc328a5c reservation_ww_class +EXPORT_SYMBOL vmlinux 0xcc445ceb __sg_page_iter_dma_next +EXPORT_SYMBOL vmlinux 0xcc4627bf security_sock_rcv_skb +EXPORT_SYMBOL vmlinux 0xcc48093b input_close_device +EXPORT_SYMBOL vmlinux 0xcc5005fe msleep_interruptible +EXPORT_SYMBOL vmlinux 0xcc5c2df4 trace_print_symbols_seq +EXPORT_SYMBOL vmlinux 0xcc5d22d9 can_do_mlock +EXPORT_SYMBOL vmlinux 0xcc6feec1 key_reject_and_link +EXPORT_SYMBOL vmlinux 0xcc8abdc9 netdev_has_upper_dev +EXPORT_SYMBOL vmlinux 0xcca57027 phy_driver_unregister +EXPORT_SYMBOL vmlinux 0xcca5839d xen_vcpu_id +EXPORT_SYMBOL vmlinux 0xccbb0618 unregister_nexthop_notifier +EXPORT_SYMBOL vmlinux 0xccbee762 pci_unmap_rom +EXPORT_SYMBOL vmlinux 0xccc21f5e input_get_new_minor +EXPORT_SYMBOL vmlinux 0xccc758d8 nla_policy_len +EXPORT_SYMBOL vmlinux 0xccd4c999 __sg_page_iter_start +EXPORT_SYMBOL vmlinux 0xcce84843 netdev_adjacent_change_prepare +EXPORT_SYMBOL vmlinux 0xccef37e4 ZSTD_DStreamOutSize +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 0xcd0fd5cb xsk_umem_complete_tx +EXPORT_SYMBOL vmlinux 0xcd256667 tcp_md5_needed +EXPORT_SYMBOL vmlinux 0xcd279169 nla_find +EXPORT_SYMBOL vmlinux 0xcd2e702c netdev_warn +EXPORT_SYMBOL vmlinux 0xcd3f86bb udp_lib_get_port +EXPORT_SYMBOL vmlinux 0xcd4218d6 dquot_destroy +EXPORT_SYMBOL vmlinux 0xcd6c057e phy_ethtool_ksettings_set +EXPORT_SYMBOL vmlinux 0xcd7e37ee seq_dentry +EXPORT_SYMBOL vmlinux 0xcd8ce890 acpi_format_exception +EXPORT_SYMBOL vmlinux 0xcd91efb8 xfrm_input_unregister_afinfo +EXPORT_SYMBOL vmlinux 0xcd967acb ip6_frag_init +EXPORT_SYMBOL vmlinux 0xcdad86c7 tty_register_ldisc +EXPORT_SYMBOL vmlinux 0xcdc29256 xfrm_policy_destroy +EXPORT_SYMBOL vmlinux 0xcdc39c9e security_ismaclabel +EXPORT_SYMBOL vmlinux 0xcdca9140 pcim_iomap_table +EXPORT_SYMBOL vmlinux 0xcddb0953 devm_clk_put +EXPORT_SYMBOL vmlinux 0xcde77bcc free_opal_dev +EXPORT_SYMBOL vmlinux 0xcdf4c2b5 napi_gro_frags +EXPORT_SYMBOL vmlinux 0xce036f24 sg_split +EXPORT_SYMBOL vmlinux 0xce0cef3c max8998_read_reg +EXPORT_SYMBOL vmlinux 0xce2840e7 irq_set_irq_wake +EXPORT_SYMBOL vmlinux 0xce3864eb ZSTD_compress_usingDict +EXPORT_SYMBOL vmlinux 0xce407033 __cgroup_bpf_run_filter_sock_ops +EXPORT_SYMBOL vmlinux 0xce4cdb8e fb_find_best_mode +EXPORT_SYMBOL vmlinux 0xce4d8c5e devfreq_unregister_opp_notifier +EXPORT_SYMBOL vmlinux 0xce4e47b6 __kfifo_skip_r +EXPORT_SYMBOL vmlinux 0xce50e5de ZSTD_compress_usingCDict +EXPORT_SYMBOL vmlinux 0xce5ac24f zlib_inflate_workspacesize +EXPORT_SYMBOL vmlinux 0xce601a8a of_mdiobus_register +EXPORT_SYMBOL vmlinux 0xce6208a3 fscrypt_inherit_context +EXPORT_SYMBOL vmlinux 0xce6477b2 acpi_pci_osc_control_set +EXPORT_SYMBOL vmlinux 0xce655ee3 serio_rescan +EXPORT_SYMBOL vmlinux 0xce731b34 ucc_slow_get_qe_cr_subblock +EXPORT_SYMBOL vmlinux 0xce76c257 acpi_get_irq_routing_table +EXPORT_SYMBOL vmlinux 0xce7bfe70 vm_brk +EXPORT_SYMBOL vmlinux 0xce807a25 up_write +EXPORT_SYMBOL vmlinux 0xce9a8a0c dev_driver_string +EXPORT_SYMBOL vmlinux 0xce9c48ac sync_file_create +EXPORT_SYMBOL vmlinux 0xceab0311 strchrnul +EXPORT_SYMBOL vmlinux 0xced0f4d4 gen_pool_create +EXPORT_SYMBOL vmlinux 0xced12aa2 write_cache_pages +EXPORT_SYMBOL vmlinux 0xceec8abd __mb_cache_entry_free +EXPORT_SYMBOL vmlinux 0xcefcd99a serial8250_unregister_port +EXPORT_SYMBOL vmlinux 0xcf000c7e hdmi_infoframe_check +EXPORT_SYMBOL vmlinux 0xcf0ba18e d_prune_aliases +EXPORT_SYMBOL vmlinux 0xcf0eaea7 d_instantiate_new +EXPORT_SYMBOL vmlinux 0xcf116f6d security_inode_notifysecctx +EXPORT_SYMBOL vmlinux 0xcf15b93b pnpacpi_protocol +EXPORT_SYMBOL vmlinux 0xcf1c6ca3 cmdline_parts_find +EXPORT_SYMBOL vmlinux 0xcf2a6966 up +EXPORT_SYMBOL vmlinux 0xcf43f534 max8925_reg_read +EXPORT_SYMBOL vmlinux 0xcf4fdd4d _atomic_dec_and_lock +EXPORT_SYMBOL vmlinux 0xcf5599ab disk_end_io_acct +EXPORT_SYMBOL vmlinux 0xcf5ac11b scsi_command_normalize_sense +EXPORT_SYMBOL vmlinux 0xcf5cc41a xp_raw_get_dma +EXPORT_SYMBOL vmlinux 0xcf83d83a __tracepoint_spi_transfer_start +EXPORT_SYMBOL vmlinux 0xcf8939b5 lru_cache_add +EXPORT_SYMBOL vmlinux 0xcf96a869 scsi_is_target_device +EXPORT_SYMBOL vmlinux 0xcf9b558d touchscreen_set_mt_pos +EXPORT_SYMBOL vmlinux 0xcf9f5bbe dns_query +EXPORT_SYMBOL vmlinux 0xcfa39036 udp_poll +EXPORT_SYMBOL vmlinux 0xcfd00b2e fb_get_buffer_offset +EXPORT_SYMBOL vmlinux 0xcfeb98a8 acpi_processor_register_performance +EXPORT_SYMBOL vmlinux 0xcffa119f param_ops_charp +EXPORT_SYMBOL vmlinux 0xd0087708 sync_dirty_buffer +EXPORT_SYMBOL vmlinux 0xd0096e26 param_ops_invbool +EXPORT_SYMBOL vmlinux 0xd02f5e75 kmem_cache_destroy +EXPORT_SYMBOL vmlinux 0xd03c47c5 input_mt_init_slots +EXPORT_SYMBOL vmlinux 0xd042475c qdisc_get_rtab +EXPORT_SYMBOL vmlinux 0xd04c1a64 sysctl_devconf_inherit_init_net +EXPORT_SYMBOL vmlinux 0xd0569279 __ip_mc_inc_group +EXPORT_SYMBOL vmlinux 0xd0654aba woken_wake_function +EXPORT_SYMBOL vmlinux 0xd0874941 mmc_calc_max_discard +EXPORT_SYMBOL vmlinux 0xd087c5c3 tty_unlock +EXPORT_SYMBOL vmlinux 0xd08adb2b trace_seq_hex_dump +EXPORT_SYMBOL vmlinux 0xd092398e acpi_processor_notify_smm +EXPORT_SYMBOL vmlinux 0xd09314f8 xfrm6_rcv +EXPORT_SYMBOL vmlinux 0xd0a440a2 pci_enable_msix_range +EXPORT_SYMBOL vmlinux 0xd0a73907 clkdev_add +EXPORT_SYMBOL vmlinux 0xd0a91bab skip_spaces +EXPORT_SYMBOL vmlinux 0xd0b74705 acpi_install_interface +EXPORT_SYMBOL vmlinux 0xd0bd487b hdmi_drm_infoframe_pack_only +EXPORT_SYMBOL vmlinux 0xd0d01d10 truncate_inode_pages_final +EXPORT_SYMBOL vmlinux 0xd0d7fb20 pnp_device_detach +EXPORT_SYMBOL vmlinux 0xd0e75ee6 mii_ethtool_set_link_ksettings +EXPORT_SYMBOL vmlinux 0xd0ef6760 del_gendisk +EXPORT_SYMBOL vmlinux 0xd0fe8d51 sg_pcopy_from_buffer +EXPORT_SYMBOL vmlinux 0xd112c6e1 pcix_set_mmrbc +EXPORT_SYMBOL vmlinux 0xd11c4089 scmd_printk +EXPORT_SYMBOL vmlinux 0xd120e48f seq_path +EXPORT_SYMBOL vmlinux 0xd131ea28 sock_no_connect +EXPORT_SYMBOL vmlinux 0xd135cf61 cros_ec_check_result +EXPORT_SYMBOL vmlinux 0xd1363cc1 ucs2_strsize +EXPORT_SYMBOL vmlinux 0xd152d447 pci_bus_assign_resources +EXPORT_SYMBOL vmlinux 0xd15a70c5 mii_nway_restart +EXPORT_SYMBOL vmlinux 0xd1816f32 frontswap_writethrough +EXPORT_SYMBOL vmlinux 0xd18dfb8b skb_copy_and_csum_bits +EXPORT_SYMBOL vmlinux 0xd194ddf9 acpi_gpe_count +EXPORT_SYMBOL vmlinux 0xd1a23930 begin_new_exec +EXPORT_SYMBOL vmlinux 0xd1b19581 __put_page +EXPORT_SYMBOL vmlinux 0xd1bb1e25 mmc_can_trim +EXPORT_SYMBOL vmlinux 0xd1beb9dc pci_resize_resource +EXPORT_SYMBOL vmlinux 0xd1c18bea inet_add_protocol +EXPORT_SYMBOL vmlinux 0xd1d57de5 input_handler_for_each_handle +EXPORT_SYMBOL vmlinux 0xd1d87e92 scsi_mlreturn_string +EXPORT_SYMBOL vmlinux 0xd1f439a6 cdrom_mode_sense +EXPORT_SYMBOL vmlinux 0xd1f46ede unregister_framebuffer +EXPORT_SYMBOL vmlinux 0xd1f52c32 backlight_force_update +EXPORT_SYMBOL vmlinux 0xd1f87b4c touchscreen_parse_properties +EXPORT_SYMBOL vmlinux 0xd2051916 qcom_scm_cpu_power_down +EXPORT_SYMBOL vmlinux 0xd20c6eed vlan_uses_dev +EXPORT_SYMBOL vmlinux 0xd218c29d dev_get_by_index +EXPORT_SYMBOL vmlinux 0xd2237016 radix_tree_delete_item +EXPORT_SYMBOL vmlinux 0xd225f3dc security_binder_transfer_binder +EXPORT_SYMBOL vmlinux 0xd23634c9 dma_set_mask +EXPORT_SYMBOL vmlinux 0xd2428b1d phy_support_sym_pause +EXPORT_SYMBOL vmlinux 0xd2500d4e of_parse_phandle_with_fixed_args +EXPORT_SYMBOL vmlinux 0xd25bc5d4 csum_tcpudp_nofold +EXPORT_SYMBOL vmlinux 0xd25d4f74 console_blank_hook +EXPORT_SYMBOL vmlinux 0xd262dfcb vscnprintf +EXPORT_SYMBOL vmlinux 0xd26616ac i2c_smbus_xfer +EXPORT_SYMBOL vmlinux 0xd26ada32 ip_frag_next +EXPORT_SYMBOL vmlinux 0xd26af8c8 __tcf_idr_release +EXPORT_SYMBOL vmlinux 0xd2730035 jbd2_complete_transaction +EXPORT_SYMBOL vmlinux 0xd27b25dd blk_check_plugged +EXPORT_SYMBOL vmlinux 0xd2aa8b15 jbd2_journal_free_reserved +EXPORT_SYMBOL vmlinux 0xd2c10aba pnp_stop_dev +EXPORT_SYMBOL vmlinux 0xd2c99738 __kmalloc_track_caller +EXPORT_SYMBOL vmlinux 0xd2d2feb5 devm_ioport_map +EXPORT_SYMBOL vmlinux 0xd2d755a3 thaw_bdev +EXPORT_SYMBOL vmlinux 0xd2da1048 register_netdevice_notifier +EXPORT_SYMBOL vmlinux 0xd2db7c0a jbd2_journal_ack_err +EXPORT_SYMBOL vmlinux 0xd2de66a6 vmf_insert_mixed_mkwrite +EXPORT_SYMBOL vmlinux 0xd2e2a9d0 hdmi_spd_infoframe_pack_only +EXPORT_SYMBOL vmlinux 0xd2ea49b8 acpi_leave_sleep_state_prep +EXPORT_SYMBOL vmlinux 0xd307642a flow_rule_match_ipv6_addrs +EXPORT_SYMBOL vmlinux 0xd31ccb06 of_machine_is_compatible +EXPORT_SYMBOL vmlinux 0xd333693d netdev_update_features +EXPORT_SYMBOL vmlinux 0xd33c7e9f bio_copy_data_iter +EXPORT_SYMBOL vmlinux 0xd34df742 try_module_get +EXPORT_SYMBOL vmlinux 0xd3543063 memcg_kmem_enabled_key +EXPORT_SYMBOL vmlinux 0xd354e956 __sock_cmsg_send +EXPORT_SYMBOL vmlinux 0xd3559ef4 __memset +EXPORT_SYMBOL vmlinux 0xd35713cf pci_dev_driver +EXPORT_SYMBOL vmlinux 0xd359c79d jbd2_journal_get_undo_access +EXPORT_SYMBOL vmlinux 0xd35a6d31 mempool_kmalloc +EXPORT_SYMBOL vmlinux 0xd35adef7 tcf_idr_cleanup +EXPORT_SYMBOL vmlinux 0xd363a81e poll_initwait +EXPORT_SYMBOL vmlinux 0xd366a2cc inode_dio_wait +EXPORT_SYMBOL vmlinux 0xd36dc10c get_random_u32 +EXPORT_SYMBOL vmlinux 0xd36e3d59 prandom_bytes_state +EXPORT_SYMBOL vmlinux 0xd379e747 tcp_sock_set_syncnt +EXPORT_SYMBOL vmlinux 0xd3a46db1 xfrm_input_resume +EXPORT_SYMBOL vmlinux 0xd3b24a16 pci_select_bars +EXPORT_SYMBOL vmlinux 0xd3ce9408 inetdev_by_index +EXPORT_SYMBOL vmlinux 0xd3eaf1ed devlink_dpipe_entry_clear +EXPORT_SYMBOL vmlinux 0xd3fba534 qcom_scm_set_cold_boot_addr +EXPORT_SYMBOL vmlinux 0xd40261ae inet_addr_type_table +EXPORT_SYMBOL vmlinux 0xd402ffc1 inet6_protos +EXPORT_SYMBOL vmlinux 0xd406d266 fb_mode_is_equal +EXPORT_SYMBOL vmlinux 0xd410db3a netif_set_real_num_rx_queues +EXPORT_SYMBOL vmlinux 0xd412805d fb_get_mode +EXPORT_SYMBOL vmlinux 0xd425212e param_set_short +EXPORT_SYMBOL vmlinux 0xd42f9033 dma_direct_sync_sg_for_device +EXPORT_SYMBOL vmlinux 0xd42ffa5a netdev_master_upper_dev_get +EXPORT_SYMBOL vmlinux 0xd4339de8 qcom_scm_pas_init_image +EXPORT_SYMBOL vmlinux 0xd44e7dbb phy_init_eee +EXPORT_SYMBOL vmlinux 0xd45cc6ca bin2hex +EXPORT_SYMBOL vmlinux 0xd45ec0a5 input_register_handle +EXPORT_SYMBOL vmlinux 0xd4835ef8 dmi_check_system +EXPORT_SYMBOL vmlinux 0xd4a69d20 qm_channel_caam +EXPORT_SYMBOL vmlinux 0xd4b2846d inet_frag_queue_insert +EXPORT_SYMBOL vmlinux 0xd4bb4a82 inet6addr_validator_notifier_call_chain +EXPORT_SYMBOL vmlinux 0xd4c11d02 __mdiobus_register +EXPORT_SYMBOL vmlinux 0xd4cd5714 tcp_close +EXPORT_SYMBOL vmlinux 0xd4d1983c udplite_table +EXPORT_SYMBOL vmlinux 0xd4e12ca8 generic_cont_expand_simple +EXPORT_SYMBOL vmlinux 0xd4ecd764 ata_scsi_cmd_error_handler +EXPORT_SYMBOL vmlinux 0xd4f76aff mr_fill_mroute +EXPORT_SYMBOL vmlinux 0xd4fa5a87 __kfifo_dma_out_prepare +EXPORT_SYMBOL vmlinux 0xd51eb639 zerocopy_sg_from_iter +EXPORT_SYMBOL vmlinux 0xd5263820 mb_cache_destroy +EXPORT_SYMBOL vmlinux 0xd5282efe __hw_addr_ref_sync_dev +EXPORT_SYMBOL vmlinux 0xd52c0e34 nf_register_net_hooks +EXPORT_SYMBOL vmlinux 0xd5346bfc acpi_get_possible_resources +EXPORT_SYMBOL vmlinux 0xd546e488 simple_write_end +EXPORT_SYMBOL vmlinux 0xd551a4b7 do_SAK +EXPORT_SYMBOL vmlinux 0xd56f7a01 abx500_register_ops +EXPORT_SYMBOL vmlinux 0xd59d841f ll_rw_block +EXPORT_SYMBOL vmlinux 0xd5a15a99 blk_mq_init_sq_queue +EXPORT_SYMBOL vmlinux 0xd5abdc40 rpmh_write_async +EXPORT_SYMBOL vmlinux 0xd5b3d0d5 xxh64_copy_state +EXPORT_SYMBOL vmlinux 0xd5b75def param_get_long +EXPORT_SYMBOL vmlinux 0xd5c38e06 pci_write_config_dword +EXPORT_SYMBOL vmlinux 0xd5e15062 dquot_free_inode +EXPORT_SYMBOL vmlinux 0xd5f9b95c security_sctp_sk_clone +EXPORT_SYMBOL vmlinux 0xd5fd90f1 prepare_to_wait +EXPORT_SYMBOL vmlinux 0xd60736ec gf128mul_free_64k +EXPORT_SYMBOL vmlinux 0xd62365cc get_tree_single +EXPORT_SYMBOL vmlinux 0xd62ecd49 rps_sock_flow_table +EXPORT_SYMBOL vmlinux 0xd63fd8d1 utf8nagemax +EXPORT_SYMBOL vmlinux 0xd643239a acpi_leave_sleep_state +EXPORT_SYMBOL vmlinux 0xd65b4781 simple_transaction_set +EXPORT_SYMBOL vmlinux 0xd65e1c31 uart_remove_one_port +EXPORT_SYMBOL vmlinux 0xd6668027 acpi_dev_get_first_match_dev +EXPORT_SYMBOL vmlinux 0xd668d8e4 input_allocate_device +EXPORT_SYMBOL vmlinux 0xd67a343b phy_attach +EXPORT_SYMBOL vmlinux 0xd6832dfb __tcp_md5_do_lookup +EXPORT_SYMBOL vmlinux 0xd683a6e8 elv_rb_del +EXPORT_SYMBOL vmlinux 0xd6886ca8 __dev_direct_xmit +EXPORT_SYMBOL vmlinux 0xd688716b dm_kcopyd_client_create +EXPORT_SYMBOL vmlinux 0xd68c5a1f adjust_resource +EXPORT_SYMBOL vmlinux 0xd68ef1e1 of_xudma_dev_get +EXPORT_SYMBOL vmlinux 0xd691c6a9 unregister_sysctl_table +EXPORT_SYMBOL vmlinux 0xd69e0061 fscrypt_zeroout_range +EXPORT_SYMBOL vmlinux 0xd6a2025c proc_mkdir +EXPORT_SYMBOL vmlinux 0xd6a4fd30 phy_mac_interrupt +EXPORT_SYMBOL vmlinux 0xd6a91f54 twl_i2c_read +EXPORT_SYMBOL vmlinux 0xd6c6992b inet_proto_csum_replace4 +EXPORT_SYMBOL vmlinux 0xd6c85967 blk_queue_max_hw_sectors +EXPORT_SYMBOL vmlinux 0xd6dd249e __inode_add_bytes +EXPORT_SYMBOL vmlinux 0xd6e112bb xfrm_policy_register_afinfo +EXPORT_SYMBOL vmlinux 0xd6e1ab86 __frontswap_test +EXPORT_SYMBOL vmlinux 0xd6eaaea1 full_name_hash +EXPORT_SYMBOL vmlinux 0xd6ee688f vmalloc +EXPORT_SYMBOL vmlinux 0xd6fde043 is_module_sig_enforced +EXPORT_SYMBOL vmlinux 0xd6fea47a compat_sock_common_getsockopt +EXPORT_SYMBOL vmlinux 0xd7054342 scsi_compat_ioctl +EXPORT_SYMBOL vmlinux 0xd70d35a1 gf128mul_4k_bbe +EXPORT_SYMBOL vmlinux 0xd70f62b6 acpi_os_execute +EXPORT_SYMBOL vmlinux 0xd738ca1b phy_unregister_fixup_for_uid +EXPORT_SYMBOL vmlinux 0xd739e8c5 of_device_register +EXPORT_SYMBOL vmlinux 0xd74253da ip6tun_encaps +EXPORT_SYMBOL vmlinux 0xd7679913 single_open +EXPORT_SYMBOL vmlinux 0xd771c5f2 register_console +EXPORT_SYMBOL vmlinux 0xd78f2d94 end_buffer_read_sync +EXPORT_SYMBOL vmlinux 0xd79b90cf sk_stream_wait_connect +EXPORT_SYMBOL vmlinux 0xd79dffc0 vmf_insert_pfn_prot +EXPORT_SYMBOL vmlinux 0xd7a7b169 fman_reset_mac +EXPORT_SYMBOL vmlinux 0xd7a7e7f8 sg_miter_stop +EXPORT_SYMBOL vmlinux 0xd7d280ad irq_poll_complete +EXPORT_SYMBOL vmlinux 0xd7e10bbb phy_start_cable_test +EXPORT_SYMBOL vmlinux 0xd7e56a4e simple_strtoll +EXPORT_SYMBOL vmlinux 0xd7f5ccb1 neigh_resolve_output +EXPORT_SYMBOL vmlinux 0xd7ff1b8a __ashlti3 +EXPORT_SYMBOL vmlinux 0xd80581bd twl6040_clear_bits +EXPORT_SYMBOL vmlinux 0xd8131274 qman_alloc_cgrid_range +EXPORT_SYMBOL vmlinux 0xd828a18b sk_net_capable +EXPORT_SYMBOL vmlinux 0xd828f063 xudma_tchanrt_write +EXPORT_SYMBOL vmlinux 0xd8602b6a tun_is_xdp_frame +EXPORT_SYMBOL vmlinux 0xd866a3c9 to_nd_btt +EXPORT_SYMBOL vmlinux 0xd879ee30 grab_cache_page_write_begin +EXPORT_SYMBOL vmlinux 0xd8825f03 xsk_clear_tx_need_wakeup +EXPORT_SYMBOL vmlinux 0xd886d6f8 cookie_ecn_ok +EXPORT_SYMBOL vmlinux 0xd89bb365 __phy_read_mmd +EXPORT_SYMBOL vmlinux 0xd89da37f movable_zone +EXPORT_SYMBOL vmlinux 0xd8a4c7ec pci_dev_put +EXPORT_SYMBOL vmlinux 0xd8a994eb scsi_extd_sense_format +EXPORT_SYMBOL vmlinux 0xd8af9b93 empty_aops +EXPORT_SYMBOL vmlinux 0xd8b485cd input_unregister_device +EXPORT_SYMBOL vmlinux 0xd8cb18ab mmc_retune_release +EXPORT_SYMBOL vmlinux 0xd8d126c9 ip_cmsg_recv_offset +EXPORT_SYMBOL vmlinux 0xd8df08ac acpi_handle_printk +EXPORT_SYMBOL vmlinux 0xd8dfe3f8 fddi_type_trans +EXPORT_SYMBOL vmlinux 0xd8e0b226 __xfrm_init_state +EXPORT_SYMBOL vmlinux 0xd8eff3f8 ptp_clock_index +EXPORT_SYMBOL vmlinux 0xd901c129 import_single_range +EXPORT_SYMBOL vmlinux 0xd90758b1 end_page_writeback +EXPORT_SYMBOL vmlinux 0xd90cb249 ZSTD_getBlockSizeMax +EXPORT_SYMBOL vmlinux 0xd9165646 scsi_remove_host +EXPORT_SYMBOL vmlinux 0xd921ef07 __splice_from_pipe +EXPORT_SYMBOL vmlinux 0xd92deb6b acpi_evaluate_object +EXPORT_SYMBOL vmlinux 0xd9369257 udp_push_pending_frames +EXPORT_SYMBOL vmlinux 0xd9444ea2 ptp_clock_register +EXPORT_SYMBOL vmlinux 0xd9491c14 xa_destroy +EXPORT_SYMBOL vmlinux 0xd94b92fc tcf_idr_search +EXPORT_SYMBOL vmlinux 0xd96637dd tcp_md5_do_add +EXPORT_SYMBOL vmlinux 0xd96c8b6d __sb_end_write +EXPORT_SYMBOL vmlinux 0xd976c700 cdev_init +EXPORT_SYMBOL vmlinux 0xd985dc99 mempool_free_pages +EXPORT_SYMBOL vmlinux 0xd98d11bf scsi_vpd_lun_id +EXPORT_SYMBOL vmlinux 0xd99a6b3a ww_mutex_lock +EXPORT_SYMBOL vmlinux 0xd9a5ea54 __init_waitqueue_head +EXPORT_SYMBOL vmlinux 0xd9b85ef6 lockref_get +EXPORT_SYMBOL vmlinux 0xd9c0abb1 dentry_path_raw +EXPORT_SYMBOL vmlinux 0xd9d6f4a8 dma_dummy_ops +EXPORT_SYMBOL vmlinux 0xd9d8fd16 register_restart_handler +EXPORT_SYMBOL vmlinux 0xd9d952d1 crypto_aes_sbox +EXPORT_SYMBOL vmlinux 0xd9e8aee7 refcount_dec_and_lock +EXPORT_SYMBOL vmlinux 0xd9ee35f1 device_add_disk_no_queue_reg +EXPORT_SYMBOL vmlinux 0xda10443c xudma_tchan_get_id +EXPORT_SYMBOL vmlinux 0xda23a02b fb_blank +EXPORT_SYMBOL vmlinux 0xda3d10a8 security_tun_dev_open +EXPORT_SYMBOL vmlinux 0xda438a1f abx500_mask_and_set_register_interruptible +EXPORT_SYMBOL vmlinux 0xda72a7ec ZSTD_nextInputType +EXPORT_SYMBOL vmlinux 0xda7969ad bmap +EXPORT_SYMBOL vmlinux 0xda81551a of_find_node_by_name +EXPORT_SYMBOL vmlinux 0xda872864 security_locked_down +EXPORT_SYMBOL vmlinux 0xda89ea3b ip_idents_reserve +EXPORT_SYMBOL vmlinux 0xda9fc7ae kstrtobool_from_user +EXPORT_SYMBOL vmlinux 0xdac165d5 xfrm_find_acq +EXPORT_SYMBOL vmlinux 0xdac4913a bitmap_allocate_region +EXPORT_SYMBOL vmlinux 0xdad97ca7 qdisc_watchdog_init +EXPORT_SYMBOL vmlinux 0xdaed074b page_symlink_inode_operations +EXPORT_SYMBOL vmlinux 0xdb026b66 hmm_range_fault +EXPORT_SYMBOL vmlinux 0xdb276ca8 set_device_ro +EXPORT_SYMBOL vmlinux 0xdb376ce0 inet_release +EXPORT_SYMBOL vmlinux 0xdb457670 ptp_clock_event +EXPORT_SYMBOL vmlinux 0xdb55c076 radix_tree_iter_resume +EXPORT_SYMBOL vmlinux 0xdb68bbad rfkill_destroy +EXPORT_SYMBOL vmlinux 0xdb73ee24 netlink_ack +EXPORT_SYMBOL vmlinux 0xdb74e67d tcf_idr_check_alloc +EXPORT_SYMBOL vmlinux 0xdb760f52 __kfifo_free +EXPORT_SYMBOL vmlinux 0xdb761100 unpin_user_pages_dirty_lock +EXPORT_SYMBOL vmlinux 0xdb7920b4 t10_pi_type3_ip +EXPORT_SYMBOL vmlinux 0xdb8677f7 pci_find_resource +EXPORT_SYMBOL vmlinux 0xdb903208 mmc_set_blocklen +EXPORT_SYMBOL vmlinux 0xdb95639d tcp_sock_set_cork +EXPORT_SYMBOL vmlinux 0xdbaea9e3 pci_bus_claim_resources +EXPORT_SYMBOL vmlinux 0xdbbc5408 pm8606_osc_disable +EXPORT_SYMBOL vmlinux 0xdbcf041a acpi_install_address_space_handler +EXPORT_SYMBOL vmlinux 0xdbdf6c92 ioport_resource +EXPORT_SYMBOL vmlinux 0xdbe931a3 __insert_inode_hash +EXPORT_SYMBOL vmlinux 0xdc067b73 __free_pages +EXPORT_SYMBOL vmlinux 0xdc07eb77 iov_iter_revert +EXPORT_SYMBOL vmlinux 0xdc14eda7 pci_pci_problems +EXPORT_SYMBOL vmlinux 0xdc1a2177 tcp_v4_md5_lookup +EXPORT_SYMBOL vmlinux 0xdc1cc785 i2c_clients_command +EXPORT_SYMBOL vmlinux 0xdc21989f input_get_poll_interval +EXPORT_SYMBOL vmlinux 0xdc327a8b i2c_smbus_read_byte_data +EXPORT_SYMBOL vmlinux 0xdc34158f fman_port_init +EXPORT_SYMBOL vmlinux 0xdc3fcbc9 __sw_hweight8 +EXPORT_SYMBOL vmlinux 0xdc46dee9 blk_mq_start_request +EXPORT_SYMBOL vmlinux 0xdc49c198 reciprocal_value_adv +EXPORT_SYMBOL vmlinux 0xdc512134 backlight_register_notifier +EXPORT_SYMBOL vmlinux 0xdc71a575 generic_error_remove_page +EXPORT_SYMBOL vmlinux 0xdc7a011f blk_mq_kick_requeue_list +EXPORT_SYMBOL vmlinux 0xdc7b3303 __sock_create +EXPORT_SYMBOL vmlinux 0xdc964394 register_md_cluster_operations +EXPORT_SYMBOL vmlinux 0xdca8c3d4 logic_outb +EXPORT_SYMBOL vmlinux 0xdcb1067e fscrypt_has_permitted_context +EXPORT_SYMBOL vmlinux 0xdcb764ad memset +EXPORT_SYMBOL vmlinux 0xdcc928d1 blk_mq_start_hw_queue +EXPORT_SYMBOL vmlinux 0xdcc959b9 security_task_getsecid +EXPORT_SYMBOL vmlinux 0xdce4d7ee xp_dma_sync_for_device_slow +EXPORT_SYMBOL vmlinux 0xdcf9c71f inc_zone_page_state +EXPORT_SYMBOL vmlinux 0xdd038d47 pci_msi_vec_count +EXPORT_SYMBOL vmlinux 0xdd05ac13 ip_sock_set_pktinfo +EXPORT_SYMBOL vmlinux 0xdd06add5 mmc_gpio_get_ro +EXPORT_SYMBOL vmlinux 0xdd0d3f22 generic_permission +EXPORT_SYMBOL vmlinux 0xdd159b89 devm_ioremap_resource +EXPORT_SYMBOL vmlinux 0xdd18a993 acpi_check_dsm +EXPORT_SYMBOL vmlinux 0xdd1bbacc get_mem_cgroup_from_page +EXPORT_SYMBOL vmlinux 0xdd282a36 proc_create_single_data +EXPORT_SYMBOL vmlinux 0xdd2c169b mb_cache_create +EXPORT_SYMBOL vmlinux 0xdd336d58 tcf_em_tree_validate +EXPORT_SYMBOL vmlinux 0xdd580f9f dm_put_device +EXPORT_SYMBOL vmlinux 0xdd64e639 strscpy +EXPORT_SYMBOL vmlinux 0xdd742d72 __sg_free_table +EXPORT_SYMBOL vmlinux 0xdd7e3192 qcom_scm_pas_auth_and_reset +EXPORT_SYMBOL vmlinux 0xdd8166a1 dma_fence_free +EXPORT_SYMBOL vmlinux 0xdd849d51 scsi_get_sense_info_fld +EXPORT_SYMBOL vmlinux 0xdd8d3a41 proto_unregister +EXPORT_SYMBOL vmlinux 0xdd903f83 tcp_sock_set_nodelay +EXPORT_SYMBOL vmlinux 0xddad7952 acpi_dbg_level +EXPORT_SYMBOL vmlinux 0xddb013f4 xfrm6_protocol_register +EXPORT_SYMBOL vmlinux 0xddd6b4c2 rproc_get_by_phandle +EXPORT_SYMBOL vmlinux 0xddd7ad36 security_path_unlink +EXPORT_SYMBOL vmlinux 0xdddaba75 bdevname +EXPORT_SYMBOL vmlinux 0xddf6ad7a completion_done +EXPORT_SYMBOL vmlinux 0xddf9f301 d_instantiate +EXPORT_SYMBOL vmlinux 0xddfd8316 skb_vlan_pop +EXPORT_SYMBOL vmlinux 0xde0a1d91 netdev_emerg +EXPORT_SYMBOL vmlinux 0xde1018ec skb_coalesce_rx_frag +EXPORT_SYMBOL vmlinux 0xde1c68ab ipv6_push_frag_opts +EXPORT_SYMBOL vmlinux 0xde252399 nf_log_bind_pf +EXPORT_SYMBOL vmlinux 0xde293f9e add_wait_queue_exclusive +EXPORT_SYMBOL vmlinux 0xde481079 flow_rule_match_control +EXPORT_SYMBOL vmlinux 0xde4d4ace dim_calc_stats +EXPORT_SYMBOL vmlinux 0xde65b6fd generic_fillattr +EXPORT_SYMBOL vmlinux 0xde713006 compat_nf_getsockopt +EXPORT_SYMBOL vmlinux 0xde753aa2 pcie_capability_write_dword +EXPORT_SYMBOL vmlinux 0xde755d08 ata_print_version +EXPORT_SYMBOL vmlinux 0xde79e99f security_inode_getsecctx +EXPORT_SYMBOL vmlinux 0xde8e4754 del_random_ready_callback +EXPORT_SYMBOL vmlinux 0xdea53027 neigh_for_each +EXPORT_SYMBOL vmlinux 0xdea5b108 __seq_open_private +EXPORT_SYMBOL vmlinux 0xdea6d1a7 phy_device_free +EXPORT_SYMBOL vmlinux 0xdea8a11d inet6_register_icmp_sender +EXPORT_SYMBOL vmlinux 0xdeb7e309 tty_wait_until_sent +EXPORT_SYMBOL vmlinux 0xded39a6b gen_kill_estimator +EXPORT_SYMBOL vmlinux 0xded6a415 acpi_get_object_info +EXPORT_SYMBOL vmlinux 0xded7c479 disk_stack_limits +EXPORT_SYMBOL vmlinux 0xded94510 phy_write_mmd +EXPORT_SYMBOL vmlinux 0xdee365b0 _raw_write_trylock +EXPORT_SYMBOL vmlinux 0xdeeee782 ether_setup +EXPORT_SYMBOL vmlinux 0xdef7befd eth_gro_complete +EXPORT_SYMBOL vmlinux 0xdef7c893 fb_match_mode +EXPORT_SYMBOL vmlinux 0xdef8c04b tcp_parse_options +EXPORT_SYMBOL vmlinux 0xdf0285c5 mmc_start_request +EXPORT_SYMBOL vmlinux 0xdf05f7c6 param_get_uint +EXPORT_SYMBOL vmlinux 0xdf1e4837 t10_pi_type1_crc +EXPORT_SYMBOL vmlinux 0xdf29e695 blk_queue_logical_block_size +EXPORT_SYMBOL vmlinux 0xdf2c2742 rb_last +EXPORT_SYMBOL vmlinux 0xdf327b5f security_cred_getsecid +EXPORT_SYMBOL vmlinux 0xdf36914b xa_find_after +EXPORT_SYMBOL vmlinux 0xdf414f09 pci_bus_write_config_byte +EXPORT_SYMBOL vmlinux 0xdf54a8f7 netlink_unregister_notifier +EXPORT_SYMBOL vmlinux 0xdf673bc6 ppp_unregister_channel +EXPORT_SYMBOL vmlinux 0xdf67ffe7 phy_attached_info +EXPORT_SYMBOL vmlinux 0xdf6b082f proc_dointvec_jiffies +EXPORT_SYMBOL vmlinux 0xdf7223ad jbd2_journal_release_jbd_inode +EXPORT_SYMBOL vmlinux 0xdf7ce49e tcp_sendpage +EXPORT_SYMBOL vmlinux 0xdf80cd5e ptp_find_pin +EXPORT_SYMBOL vmlinux 0xdf8690d5 may_umount +EXPORT_SYMBOL vmlinux 0xdf8c695a __ndelay +EXPORT_SYMBOL vmlinux 0xdf929370 fs_overflowgid +EXPORT_SYMBOL vmlinux 0xdf93b9d8 timespec64_to_jiffies +EXPORT_SYMBOL vmlinux 0xdf94188d fb_set_suspend +EXPORT_SYMBOL vmlinux 0xdfa0f1bd mipi_dsi_dcs_set_tear_on +EXPORT_SYMBOL vmlinux 0xdfa94cd4 dev_trans_start +EXPORT_SYMBOL vmlinux 0xdfacc647 kobject_del +EXPORT_SYMBOL vmlinux 0xdfb14029 down_read_killable +EXPORT_SYMBOL vmlinux 0xdfb4375d of_parse_phandle +EXPORT_SYMBOL vmlinux 0xdfb8cac9 amba_device_register +EXPORT_SYMBOL vmlinux 0xdfb97eb3 mount_single +EXPORT_SYMBOL vmlinux 0xdfcc992c current_work +EXPORT_SYMBOL vmlinux 0xdfdfa9e7 utf8nfdi +EXPORT_SYMBOL vmlinux 0xdfe5bbc6 md_register_thread +EXPORT_SYMBOL vmlinux 0xdfe77871 abx500_event_registers_startup_state_get +EXPORT_SYMBOL vmlinux 0xdff905e5 vme_slave_free +EXPORT_SYMBOL vmlinux 0xdffb744b frame_vector_to_pfns +EXPORT_SYMBOL vmlinux 0xdffc80fc vesa_modes +EXPORT_SYMBOL vmlinux 0xe013c243 padata_free_shell +EXPORT_SYMBOL vmlinux 0xe0145d80 migrate_vma_finalize +EXPORT_SYMBOL vmlinux 0xe01e2357 inet_frag_find +EXPORT_SYMBOL vmlinux 0xe02ba436 trace_print_hex_seq +EXPORT_SYMBOL vmlinux 0xe02c9c92 __xa_erase +EXPORT_SYMBOL vmlinux 0xe036a1db scsi_alloc_sgtables +EXPORT_SYMBOL vmlinux 0xe03a689d dma_fence_array_ops +EXPORT_SYMBOL vmlinux 0xe03d4681 pci_bus_type +EXPORT_SYMBOL vmlinux 0xe05aada4 xfrm_user_policy +EXPORT_SYMBOL vmlinux 0xe06ccf05 mmc_get_card +EXPORT_SYMBOL vmlinux 0xe07e5f44 acpi_reconfig_notifier_unregister +EXPORT_SYMBOL vmlinux 0xe082e88d acpi_check_address_range +EXPORT_SYMBOL vmlinux 0xe0875eb1 kstrtobool +EXPORT_SYMBOL vmlinux 0xe092b965 __i2c_transfer +EXPORT_SYMBOL vmlinux 0xe0955f76 utf8_casefold +EXPORT_SYMBOL vmlinux 0xe09c1905 remap_vmalloc_range_partial +EXPORT_SYMBOL vmlinux 0xe0b13336 argv_free +EXPORT_SYMBOL vmlinux 0xe0bef318 icst_hz_to_vco +EXPORT_SYMBOL vmlinux 0xe0e4359c __cgroup_bpf_run_filter_sk +EXPORT_SYMBOL vmlinux 0xe0f153eb page_mapping +EXPORT_SYMBOL vmlinux 0xe113bbbc csum_partial +EXPORT_SYMBOL vmlinux 0xe11420ab kmem_cache_alloc_node_trace +EXPORT_SYMBOL vmlinux 0xe114398a tty_hangup +EXPORT_SYMBOL vmlinux 0xe11ca997 ZSTD_getDictID_fromDict +EXPORT_SYMBOL vmlinux 0xe11d6068 console_stop +EXPORT_SYMBOL vmlinux 0xe123f3d9 dma_fence_release +EXPORT_SYMBOL vmlinux 0xe12bda79 vme_dma_free_attribute +EXPORT_SYMBOL vmlinux 0xe12de666 iov_iter_single_seg_count +EXPORT_SYMBOL vmlinux 0xe138fb8c percpu_counter_add_batch +EXPORT_SYMBOL vmlinux 0xe13cd8a7 dmi_name_in_vendors +EXPORT_SYMBOL vmlinux 0xe13d5d07 kstrtou16_from_user +EXPORT_SYMBOL vmlinux 0xe14c8097 scsi_is_sdev_device +EXPORT_SYMBOL vmlinux 0xe1563afb input_alloc_absinfo +EXPORT_SYMBOL vmlinux 0xe1584c18 xfrm_dev_state_flush +EXPORT_SYMBOL vmlinux 0xe18212e6 __inode_sub_bytes +EXPORT_SYMBOL vmlinux 0xe187bbdd page_zero_new_buffers +EXPORT_SYMBOL vmlinux 0xe199b05b pci_enable_device_io +EXPORT_SYMBOL vmlinux 0xe19dcb25 proc_create_data +EXPORT_SYMBOL vmlinux 0xe1a4299f __xfrm_state_destroy +EXPORT_SYMBOL vmlinux 0xe1a4f16a secure_ipv6_port_ephemeral +EXPORT_SYMBOL vmlinux 0xe1a86240 __cleancache_init_fs +EXPORT_SYMBOL vmlinux 0xe1b017b9 kill_pid +EXPORT_SYMBOL vmlinux 0xe1c6b85b nd_namespace_blk_validate +EXPORT_SYMBOL vmlinux 0xe1cd22af sock_no_bind +EXPORT_SYMBOL vmlinux 0xe1dcf64a audit_log_format +EXPORT_SYMBOL vmlinux 0xe1e407c8 crypto_sha512_update +EXPORT_SYMBOL vmlinux 0xe1e7e40c rtnl_nla_parse_ifla +EXPORT_SYMBOL vmlinux 0xe1e895ea jbd2_journal_try_to_free_buffers +EXPORT_SYMBOL vmlinux 0xe1f6883c netpoll_poll_disable +EXPORT_SYMBOL vmlinux 0xe1fec47b block_invalidatepage +EXPORT_SYMBOL vmlinux 0xe2006d15 max8998_update_reg +EXPORT_SYMBOL vmlinux 0xe2109f3f ab3100_event_register +EXPORT_SYMBOL vmlinux 0xe21f18ac __genradix_iter_peek +EXPORT_SYMBOL vmlinux 0xe245007c fman_get_mem_region +EXPORT_SYMBOL vmlinux 0xe2533b61 scsi_register_driver +EXPORT_SYMBOL vmlinux 0xe25db422 sock_sendmsg +EXPORT_SYMBOL vmlinux 0xe273d75d alloc_cpu_rmap +EXPORT_SYMBOL vmlinux 0xe28bca9e mipi_dsi_generic_write +EXPORT_SYMBOL vmlinux 0xe2cdcd38 mdiobus_alloc_size +EXPORT_SYMBOL vmlinux 0xe2d5255a strcmp +EXPORT_SYMBOL vmlinux 0xe2e0c7c6 __flush_icache_range +EXPORT_SYMBOL vmlinux 0xe2f245bf genphy_read_abilities +EXPORT_SYMBOL vmlinux 0xe2f3bf88 mnt_set_expiry +EXPORT_SYMBOL vmlinux 0xe2fd9017 jbd2_journal_check_used_features +EXPORT_SYMBOL vmlinux 0xe2ffeef3 scsi_req_init +EXPORT_SYMBOL vmlinux 0xe31d3e0e zpool_register_driver +EXPORT_SYMBOL vmlinux 0xe32ab4d8 xxh64_digest +EXPORT_SYMBOL vmlinux 0xe331f2dd pps_register_source +EXPORT_SYMBOL vmlinux 0xe3535adf dev_mc_add_global +EXPORT_SYMBOL vmlinux 0xe354ad26 neigh_destroy +EXPORT_SYMBOL vmlinux 0xe354dbc8 jbd2_journal_start_reserved +EXPORT_SYMBOL vmlinux 0xe35be82b kmem_cache_create +EXPORT_SYMBOL vmlinux 0xe35f26b4 sdev_disable_disk_events +EXPORT_SYMBOL vmlinux 0xe387da39 dm_get_device +EXPORT_SYMBOL vmlinux 0xe3b92b97 i2c_transfer +EXPORT_SYMBOL vmlinux 0xe3d32bab tty_driver_kref_put +EXPORT_SYMBOL vmlinux 0xe3ec2f2b alloc_chrdev_region +EXPORT_SYMBOL vmlinux 0xe3fd8314 security_unix_stream_connect +EXPORT_SYMBOL vmlinux 0xe3ff2c41 get_random_u64 +EXPORT_SYMBOL vmlinux 0xe40976c0 pnp_range_reserved +EXPORT_SYMBOL vmlinux 0xe40b5a3e tty_flip_buffer_push +EXPORT_SYMBOL vmlinux 0xe40c37ea down_write_trylock +EXPORT_SYMBOL vmlinux 0xe4103922 ip_options_rcv_srr +EXPORT_SYMBOL vmlinux 0xe41476d9 ZSTD_getParams +EXPORT_SYMBOL vmlinux 0xe420c2db seq_open +EXPORT_SYMBOL vmlinux 0xe4329092 __ctzdi2 +EXPORT_SYMBOL vmlinux 0xe441e95a refcount_dec_not_one +EXPORT_SYMBOL vmlinux 0xe45a407e max8925_bulk_read +EXPORT_SYMBOL vmlinux 0xe469e430 rproc_report_crash +EXPORT_SYMBOL vmlinux 0xe46e82a4 in6_dev_finish_destroy +EXPORT_SYMBOL vmlinux 0xe4bbc1dd kimage_voffset +EXPORT_SYMBOL vmlinux 0xe4da83d1 sock_no_recvmsg +EXPORT_SYMBOL vmlinux 0xe4f0048f tcf_action_set_ctrlact +EXPORT_SYMBOL vmlinux 0xe500efdd sk_reset_timer +EXPORT_SYMBOL vmlinux 0xe5013942 tcp_ioctl +EXPORT_SYMBOL vmlinux 0xe5122941 ps2_init +EXPORT_SYMBOL vmlinux 0xe523ad75 synchronize_irq +EXPORT_SYMBOL vmlinux 0xe55d086c capable_wrt_inode_uidgid +EXPORT_SYMBOL vmlinux 0xe57feefb qcom_scm_ocmem_unlock +EXPORT_SYMBOL vmlinux 0xe58090ca security_ib_endport_manage_subnet +EXPORT_SYMBOL vmlinux 0xe5867808 dlci_ioctl_set +EXPORT_SYMBOL vmlinux 0xe590dea3 sk_busy_loop_end +EXPORT_SYMBOL vmlinux 0xe5a76075 i2c_smbus_read_word_data +EXPORT_SYMBOL vmlinux 0xe5ae22b7 md_done_sync +EXPORT_SYMBOL vmlinux 0xe5bc9a53 slhc_free +EXPORT_SYMBOL vmlinux 0xe5c60bd2 percpu_counter_set +EXPORT_SYMBOL vmlinux 0xe5c78a99 do_blank_screen +EXPORT_SYMBOL vmlinux 0xe5ef4c28 param_ops_ullong +EXPORT_SYMBOL vmlinux 0xe5f03ae1 pcie_print_link_status +EXPORT_SYMBOL vmlinux 0xe5f653b4 ptp_schedule_worker +EXPORT_SYMBOL vmlinux 0xe5fa7d10 pci_choose_state +EXPORT_SYMBOL vmlinux 0xe5ff46e2 take_dentry_name_snapshot +EXPORT_SYMBOL vmlinux 0xe6011d1f tty_insert_flip_string_flags +EXPORT_SYMBOL vmlinux 0xe60c287e blk_rq_unmap_user +EXPORT_SYMBOL vmlinux 0xe60e925f inet_reqsk_alloc +EXPORT_SYMBOL vmlinux 0xe610c76b get_super_exclusive_thawed +EXPORT_SYMBOL vmlinux 0xe613634a reuseport_select_sock +EXPORT_SYMBOL vmlinux 0xe613a798 inet_addr_is_any +EXPORT_SYMBOL vmlinux 0xe6200ac0 dev_set_group +EXPORT_SYMBOL vmlinux 0xe6227dba page_readlink +EXPORT_SYMBOL vmlinux 0xe62fdc4c mipi_dsi_dcs_get_power_mode +EXPORT_SYMBOL vmlinux 0xe644a61b param_get_string +EXPORT_SYMBOL vmlinux 0xe64646bb fbcon_set_bitops +EXPORT_SYMBOL vmlinux 0xe64ba837 ab3100_event_unregister +EXPORT_SYMBOL vmlinux 0xe64f681d vme_register_driver +EXPORT_SYMBOL vmlinux 0xe6589dc2 xfrm4_protocol_deregister +EXPORT_SYMBOL vmlinux 0xe6720157 shrink_dcache_sb +EXPORT_SYMBOL vmlinux 0xe68a1458 ilookup5 +EXPORT_SYMBOL vmlinux 0xe691ac7f ZSTD_decompressBegin +EXPORT_SYMBOL vmlinux 0xe698638f blk_mq_complete_request +EXPORT_SYMBOL vmlinux 0xe6b33ea8 of_phy_is_fixed_link +EXPORT_SYMBOL vmlinux 0xe6e431c7 twl6040_set_bits +EXPORT_SYMBOL vmlinux 0xe6f07a72 keyring_alloc +EXPORT_SYMBOL vmlinux 0xe6f1f6a3 path_is_mountpoint +EXPORT_SYMBOL vmlinux 0xe7094ed6 mmc_cqe_request_done +EXPORT_SYMBOL vmlinux 0xe70e58ef param_ops_int +EXPORT_SYMBOL vmlinux 0xe7257ab8 xa_store_range +EXPORT_SYMBOL vmlinux 0xe72d5ef2 sg_alloc_table_from_pages +EXPORT_SYMBOL vmlinux 0xe7324b9a utf8nfdicf +EXPORT_SYMBOL vmlinux 0xe73ff6d0 get_ipc_ns_exported +EXPORT_SYMBOL vmlinux 0xe74a9c7b lock_page_memcg +EXPORT_SYMBOL vmlinux 0xe74b0926 tcf_exts_dump_stats +EXPORT_SYMBOL vmlinux 0xe7698027 ioremap_cache +EXPORT_SYMBOL vmlinux 0xe78505c5 fman_get_qman_channel_id +EXPORT_SYMBOL vmlinux 0xe78ecc38 input_register_handler +EXPORT_SYMBOL vmlinux 0xe78ff3be dma_async_tx_descriptor_init +EXPORT_SYMBOL vmlinux 0xe7a02573 ida_alloc_range +EXPORT_SYMBOL vmlinux 0xe7b0353b __cpu_active_mask +EXPORT_SYMBOL vmlinux 0xe7c7dd3f skb_ext_add +EXPORT_SYMBOL vmlinux 0xe7ca039b ptp_clock_unregister +EXPORT_SYMBOL vmlinux 0xe7d3c4c1 __tracepoint_kmem_cache_free +EXPORT_SYMBOL vmlinux 0xe7d4daac seq_list_next +EXPORT_SYMBOL vmlinux 0xe7d8d665 dev_change_flags +EXPORT_SYMBOL vmlinux 0xe80a7866 bdi_set_max_ratio +EXPORT_SYMBOL vmlinux 0xe81e69e0 lookup_positive_unlocked +EXPORT_SYMBOL vmlinux 0xe82bb01c i2c_del_driver +EXPORT_SYMBOL vmlinux 0xe852dd97 bdev_stack_limits +EXPORT_SYMBOL vmlinux 0xe85aaa3d fb_class +EXPORT_SYMBOL vmlinux 0xe85e9c10 prepare_to_swait_exclusive +EXPORT_SYMBOL vmlinux 0xe85f2123 acpi_tb_unload_table +EXPORT_SYMBOL vmlinux 0xe8619089 pci_find_capability +EXPORT_SYMBOL vmlinux 0xe8971631 neigh_xmit +EXPORT_SYMBOL vmlinux 0xe8b80940 security_old_inode_init_security +EXPORT_SYMBOL vmlinux 0xe8c45b86 pci_request_region +EXPORT_SYMBOL vmlinux 0xe8cb8eb6 remove_conflicting_pci_framebuffers +EXPORT_SYMBOL vmlinux 0xe8cf3ffb skb_append +EXPORT_SYMBOL vmlinux 0xe8e399b4 pci_request_selected_regions_exclusive +EXPORT_SYMBOL vmlinux 0xe8e82b8f blkdev_issue_zeroout +EXPORT_SYMBOL vmlinux 0xe8ef10f7 inet_dgram_ops +EXPORT_SYMBOL vmlinux 0xe8fbf4fa __alloc_bucket_spinlocks +EXPORT_SYMBOL vmlinux 0xe90253f0 xudma_rflow_get +EXPORT_SYMBOL vmlinux 0xe910f00c fman_get_revision +EXPORT_SYMBOL vmlinux 0xe914e41e strcpy +EXPORT_SYMBOL vmlinux 0xe91e00f4 inode_insert5 +EXPORT_SYMBOL vmlinux 0xe9251b6a ip_sock_set_mtu_discover +EXPORT_SYMBOL vmlinux 0xe9343e2b pipe_lock +EXPORT_SYMBOL vmlinux 0xe937b665 seq_put_decimal_ll +EXPORT_SYMBOL vmlinux 0xe94082b6 __sk_mem_reclaim +EXPORT_SYMBOL vmlinux 0xe945dd8b __sk_mem_schedule +EXPORT_SYMBOL vmlinux 0xe953b21f get_next_ino +EXPORT_SYMBOL vmlinux 0xe95c4d8a param_set_bint +EXPORT_SYMBOL vmlinux 0xe95cbde0 tcp_mmap +EXPORT_SYMBOL vmlinux 0xe960c33e map_kernel_range_noflush +EXPORT_SYMBOL vmlinux 0xe97bb6ef __alloc_pages_nodemask +EXPORT_SYMBOL vmlinux 0xe984b995 __cleancache_invalidate_inode +EXPORT_SYMBOL vmlinux 0xe99e5a45 i2c_smbus_read_block_data +EXPORT_SYMBOL vmlinux 0xe9a7217d __blkdev_issue_discard +EXPORT_SYMBOL vmlinux 0xe9af7397 __xa_set_mark +EXPORT_SYMBOL vmlinux 0xe9b22e96 ip_mc_join_group +EXPORT_SYMBOL vmlinux 0xe9b4c1fc thermal_cdev_update +EXPORT_SYMBOL vmlinux 0xe9d0d5ff mem_cgroup_from_task +EXPORT_SYMBOL vmlinux 0xe9d934a4 jbd2_journal_set_triggers +EXPORT_SYMBOL vmlinux 0xe9e8faeb efi_tpm_final_log_size +EXPORT_SYMBOL vmlinux 0xe9ed1073 wait_on_page_bit_killable +EXPORT_SYMBOL vmlinux 0xe9ede659 inet6_add_protocol +EXPORT_SYMBOL vmlinux 0xe9f7149c zlib_deflate_workspacesize +EXPORT_SYMBOL vmlinux 0xe9f7751e xfrm_policy_unregister_afinfo +EXPORT_SYMBOL vmlinux 0xe9f86336 redirty_page_for_writepage +EXPORT_SYMBOL vmlinux 0xe9fc0829 put_fs_context +EXPORT_SYMBOL vmlinux 0xe9fd0d8b devm_register_reboot_notifier +EXPORT_SYMBOL vmlinux 0xe9fea196 xfrm_replay_seqhi +EXPORT_SYMBOL vmlinux 0xea0c058d netdev_lower_dev_get_private +EXPORT_SYMBOL vmlinux 0xea10490f udp_pre_connect +EXPORT_SYMBOL vmlinux 0xea11ba2b hash_and_copy_to_iter +EXPORT_SYMBOL vmlinux 0xea231bdc down_write_killable +EXPORT_SYMBOL vmlinux 0xea36a6c2 nf_unregister_queue_handler +EXPORT_SYMBOL vmlinux 0xea3c8e4e scsilun_to_int +EXPORT_SYMBOL vmlinux 0xea48d83b register_fib_notifier +EXPORT_SYMBOL vmlinux 0xea5ffc05 mdio_driver_unregister +EXPORT_SYMBOL vmlinux 0xea6f9a36 zlib_deflate_dfltcc_enabled +EXPORT_SYMBOL vmlinux 0xea778fab sg_pcopy_to_buffer +EXPORT_SYMBOL vmlinux 0xea7e0664 __set_page_dirty_buffers +EXPORT_SYMBOL vmlinux 0xea80dfe1 security_req_classify_flow +EXPORT_SYMBOL vmlinux 0xea861c8f jbd2_journal_init_dev +EXPORT_SYMBOL vmlinux 0xea895700 genl_notify +EXPORT_SYMBOL vmlinux 0xea8dd742 __invalidate_device +EXPORT_SYMBOL vmlinux 0xea9003ac param_get_ullong +EXPORT_SYMBOL vmlinux 0xea9d99b7 pcie_capability_read_dword +EXPORT_SYMBOL vmlinux 0xeaa7f0c6 vga_remove_vgacon +EXPORT_SYMBOL vmlinux 0xeab6f4c4 acpi_check_resource_conflict +EXPORT_SYMBOL vmlinux 0xeab6f4d2 blk_mq_init_queue +EXPORT_SYMBOL vmlinux 0xeacb5d09 xp_dma_map +EXPORT_SYMBOL vmlinux 0xead8c400 bman_get_bpid +EXPORT_SYMBOL vmlinux 0xeadc56da forget_cached_acl +EXPORT_SYMBOL vmlinux 0xeadcffd2 xfrm_sad_getinfo +EXPORT_SYMBOL vmlinux 0xeae1ff63 pcie_capability_write_word +EXPORT_SYMBOL vmlinux 0xeae3dfd6 __const_udelay +EXPORT_SYMBOL vmlinux 0xeae42eaf scsi_cmd_ioctl +EXPORT_SYMBOL vmlinux 0xeafc141f __posix_acl_chmod +EXPORT_SYMBOL vmlinux 0xeb13f841 blk_rq_map_user +EXPORT_SYMBOL vmlinux 0xeb1b2867 compat_ptr_ioctl +EXPORT_SYMBOL vmlinux 0xeb233a45 __kmalloc +EXPORT_SYMBOL vmlinux 0xeb2391c9 gen_new_estimator +EXPORT_SYMBOL vmlinux 0xeb355f6a rtnetlink_put_metrics +EXPORT_SYMBOL vmlinux 0xeb37101c audit_log_end +EXPORT_SYMBOL vmlinux 0xeb3ab0af __scsi_device_lookup_by_target +EXPORT_SYMBOL vmlinux 0xeb44339a free_pages_exact +EXPORT_SYMBOL vmlinux 0xeb444ce9 bdev_read_only +EXPORT_SYMBOL vmlinux 0xeb67d9a1 submit_bio_wait +EXPORT_SYMBOL vmlinux 0xeb6cffa5 tso_build_data +EXPORT_SYMBOL vmlinux 0xeb744716 pid_task +EXPORT_SYMBOL vmlinux 0xeb7f6046 acpi_get_devices +EXPORT_SYMBOL vmlinux 0xeb9e913d sgl_alloc_order +EXPORT_SYMBOL vmlinux 0xebca1899 inode_owner_or_capable +EXPORT_SYMBOL vmlinux 0xebd6ff97 md_bitmap_endwrite +EXPORT_SYMBOL vmlinux 0xebdedee6 tcp_v4_destroy_sock +EXPORT_SYMBOL vmlinux 0xec088609 phy_ethtool_get_link_ksettings +EXPORT_SYMBOL vmlinux 0xec237e4f xps_needed +EXPORT_SYMBOL vmlinux 0xec2b8a42 acpi_walk_namespace +EXPORT_SYMBOL vmlinux 0xec2e1c8f proc_doulongvec_minmax +EXPORT_SYMBOL vmlinux 0xec2f7bd3 ip6_dst_hoplimit +EXPORT_SYMBOL vmlinux 0xec3112fb ip_route_input_noref +EXPORT_SYMBOL vmlinux 0xec344881 get_mem_cgroup_from_mm +EXPORT_SYMBOL vmlinux 0xec3da7ce xfrm_state_lookup_byspi +EXPORT_SYMBOL vmlinux 0xec41716a qman_alloc_fqid_range +EXPORT_SYMBOL vmlinux 0xec4d9e3a clk_get_sys +EXPORT_SYMBOL vmlinux 0xec555b12 block_write_full_page +EXPORT_SYMBOL vmlinux 0xec691050 seq_put_decimal_ull +EXPORT_SYMBOL vmlinux 0xec6bf552 xfrm4_rcv_encap +EXPORT_SYMBOL vmlinux 0xec73d8d2 serio_unregister_port +EXPORT_SYMBOL vmlinux 0xec74f08a tcp_mtup_init +EXPORT_SYMBOL vmlinux 0xec8bf2e9 submit_bh +EXPORT_SYMBOL vmlinux 0xec9bca00 kobject_set_name +EXPORT_SYMBOL vmlinux 0xeca3d5ab napi_disable +EXPORT_SYMBOL vmlinux 0xeca60505 dget_parent +EXPORT_SYMBOL vmlinux 0xecb8f5ff remap_pfn_range +EXPORT_SYMBOL vmlinux 0xecc98f0a proc_remove +EXPORT_SYMBOL vmlinux 0xecda4b85 eth_gro_receive +EXPORT_SYMBOL vmlinux 0xece784c2 rb_first +EXPORT_SYMBOL vmlinux 0xecfd68ef acpi_get_node +EXPORT_SYMBOL vmlinux 0xed00c4fb acpi_os_printf +EXPORT_SYMBOL vmlinux 0xed069e27 fscrypt_put_encryption_info +EXPORT_SYMBOL vmlinux 0xed0e6a10 neigh_carrier_down +EXPORT_SYMBOL vmlinux 0xed30602f rc5t583_ext_power_req_config +EXPORT_SYMBOL vmlinux 0xed55f929 acpi_os_unmap_generic_address +EXPORT_SYMBOL vmlinux 0xed581867 elv_bio_merge_ok +EXPORT_SYMBOL vmlinux 0xed6156fa __zerocopy_sg_from_iter +EXPORT_SYMBOL vmlinux 0xed625c3d __page_symlink +EXPORT_SYMBOL vmlinux 0xed69e91d flow_block_cb_decref +EXPORT_SYMBOL vmlinux 0xed6fc369 block_read_full_page +EXPORT_SYMBOL vmlinux 0xed835fd1 mmc_can_discard +EXPORT_SYMBOL vmlinux 0xed8a2d95 memset64 +EXPORT_SYMBOL vmlinux 0xeda0cd00 ioc_lookup_icq +EXPORT_SYMBOL vmlinux 0xeda962de to_nd_pfn +EXPORT_SYMBOL vmlinux 0xedbaee5e nla_strcmp +EXPORT_SYMBOL vmlinux 0xedc03953 iounmap +EXPORT_SYMBOL vmlinux 0xeddaf0c7 dst_destroy +EXPORT_SYMBOL vmlinux 0xee026c58 vfs_link +EXPORT_SYMBOL vmlinux 0xee1b7303 user_path_create +EXPORT_SYMBOL vmlinux 0xee2d0fc7 _local_bh_enable +EXPORT_SYMBOL vmlinux 0xee2edb83 param_ops_byte +EXPORT_SYMBOL vmlinux 0xee327a64 netdev_upper_dev_link +EXPORT_SYMBOL vmlinux 0xee3283c4 tcp_seq_next +EXPORT_SYMBOL vmlinux 0xee3d6c68 cdev_device_del +EXPORT_SYMBOL vmlinux 0xee58e970 fb_add_videomode +EXPORT_SYMBOL vmlinux 0xee5b21e5 nvdimm_namespace_disk_name +EXPORT_SYMBOL vmlinux 0xee7d7deb gen_pool_dma_zalloc +EXPORT_SYMBOL vmlinux 0xee7eb9e1 pnp_platform_devices +EXPORT_SYMBOL vmlinux 0xee8d74d6 jiffies64_to_nsecs +EXPORT_SYMBOL vmlinux 0xee91879b rb_first_postorder +EXPORT_SYMBOL vmlinux 0xeec646ed phy_sfp_probe +EXPORT_SYMBOL vmlinux 0xeefa0016 tcp_sock_set_keepcnt +EXPORT_SYMBOL vmlinux 0xeefc7bbc md_bitmap_update_sb +EXPORT_SYMBOL vmlinux 0xef007d77 ps2_handle_response +EXPORT_SYMBOL vmlinux 0xef3ac6d2 csum_and_copy_to_iter +EXPORT_SYMBOL vmlinux 0xef3f9cd7 mii_ethtool_sset +EXPORT_SYMBOL vmlinux 0xef40c6cd eth_prepare_mac_addr_change +EXPORT_SYMBOL vmlinux 0xef447ffa of_parse_phandle_with_args +EXPORT_SYMBOL vmlinux 0xef584b66 submit_bio +EXPORT_SYMBOL vmlinux 0xef8ac53d qcom_scm_restore_sec_cfg +EXPORT_SYMBOL vmlinux 0xefaf2e4f tcf_queue_work +EXPORT_SYMBOL vmlinux 0xefbb6ad3 seq_pad +EXPORT_SYMBOL vmlinux 0xefbf516a free_cgroup_ns +EXPORT_SYMBOL vmlinux 0xefc19b11 of_graph_get_remote_port +EXPORT_SYMBOL vmlinux 0xefc885fc inet_sock_destruct +EXPORT_SYMBOL vmlinux 0xefcaad4a param_set_int +EXPORT_SYMBOL vmlinux 0xefcb3f50 eth_header_parse +EXPORT_SYMBOL vmlinux 0xefcbfe77 pm860x_page_bulk_read +EXPORT_SYMBOL vmlinux 0xefcea2e7 acpi_warning +EXPORT_SYMBOL vmlinux 0xefd2b334 blk_post_runtime_resume +EXPORT_SYMBOL vmlinux 0xefd30512 __cpuhp_setup_state +EXPORT_SYMBOL vmlinux 0xefe4f679 ZSTD_CCtxWorkspaceBound +EXPORT_SYMBOL vmlinux 0xefee932c acpi_get_data_full +EXPORT_SYMBOL vmlinux 0xeff608e0 kstrtos16_from_user +EXPORT_SYMBOL vmlinux 0xeff8bf13 devfreq_recommended_opp +EXPORT_SYMBOL vmlinux 0xf0009fee put_pages_list +EXPORT_SYMBOL vmlinux 0xf00496ae genphy_read_status +EXPORT_SYMBOL vmlinux 0xf0068fc3 vfs_dedupe_file_range_one +EXPORT_SYMBOL vmlinux 0xf008a885 seg6_hmac_init +EXPORT_SYMBOL vmlinux 0xf0110181 phy_remove_link_mode +EXPORT_SYMBOL vmlinux 0xf01d39c5 phy_request_interrupt +EXPORT_SYMBOL vmlinux 0xf02aa937 wait_for_completion_interruptible_timeout +EXPORT_SYMBOL vmlinux 0xf0411680 alloc_pages_vma +EXPORT_SYMBOL vmlinux 0xf0414c3f pagevec_lookup_range +EXPORT_SYMBOL vmlinux 0xf049b428 ip_ct_attach +EXPORT_SYMBOL vmlinux 0xf05ba494 input_release_device +EXPORT_SYMBOL vmlinux 0xf05e7327 mipi_dsi_detach +EXPORT_SYMBOL vmlinux 0xf081ef9d scsi_device_lookup_by_target +EXPORT_SYMBOL vmlinux 0xf089425c pagecache_write_begin +EXPORT_SYMBOL vmlinux 0xf08c67de napi_alloc_frag +EXPORT_SYMBOL vmlinux 0xf097b462 qdisc_watchdog_cancel +EXPORT_SYMBOL vmlinux 0xf09b5d9a get_zeroed_page +EXPORT_SYMBOL vmlinux 0xf09ebeaa __mod_node_page_state +EXPORT_SYMBOL vmlinux 0xf0a0c136 xfrm_policy_walk_done +EXPORT_SYMBOL vmlinux 0xf0b2419f cmd_db_read_aux_data +EXPORT_SYMBOL vmlinux 0xf0c2331c __dev_kfree_skb_any +EXPORT_SYMBOL vmlinux 0xf0da7f3b __bread_gfp +EXPORT_SYMBOL vmlinux 0xf102033e slhc_remember +EXPORT_SYMBOL vmlinux 0xf1050151 mfd_cell_enable +EXPORT_SYMBOL vmlinux 0xf112e83d tcf_idr_create_from_flags +EXPORT_SYMBOL vmlinux 0xf12e1ec0 phy_ethtool_set_eee +EXPORT_SYMBOL vmlinux 0xf1304402 kmem_cache_shrink +EXPORT_SYMBOL vmlinux 0xf14666e0 blkdev_get +EXPORT_SYMBOL vmlinux 0xf14d5c6d netdev_master_upper_dev_get_rcu +EXPORT_SYMBOL vmlinux 0xf15a67d5 iproc_msi_exit +EXPORT_SYMBOL vmlinux 0xf1732386 genlmsg_put +EXPORT_SYMBOL vmlinux 0xf17a69f3 seq_vprintf +EXPORT_SYMBOL vmlinux 0xf18300ad logic_inb +EXPORT_SYMBOL vmlinux 0xf1914488 qdisc_create_dflt +EXPORT_SYMBOL vmlinux 0xf195c682 fb_invert_cmaps +EXPORT_SYMBOL vmlinux 0xf1969a8e __usecs_to_jiffies +EXPORT_SYMBOL vmlinux 0xf1a9238f genphy_setup_forced +EXPORT_SYMBOL vmlinux 0xf1b60517 xfrm4_protocol_register +EXPORT_SYMBOL vmlinux 0xf1c50001 task_work_add +EXPORT_SYMBOL vmlinux 0xf1cc0aaa pci_get_slot +EXPORT_SYMBOL vmlinux 0xf1d00628 __cpuhp_remove_state +EXPORT_SYMBOL vmlinux 0xf1d4ff89 inet_csk_destroy_sock +EXPORT_SYMBOL vmlinux 0xf1db1704 nla_memcpy +EXPORT_SYMBOL vmlinux 0xf1dbcf5c get_vm_area +EXPORT_SYMBOL vmlinux 0xf1e046cc panic +EXPORT_SYMBOL vmlinux 0xf1e98c74 avenrun +EXPORT_SYMBOL vmlinux 0xf1f2028c neigh_lookup_nodev +EXPORT_SYMBOL vmlinux 0xf21017d9 mutex_trylock +EXPORT_SYMBOL vmlinux 0xf21beaf8 fscrypt_get_encryption_info +EXPORT_SYMBOL vmlinux 0xf2215f74 blk_finish_plug +EXPORT_SYMBOL vmlinux 0xf22a8d83 profile_pc +EXPORT_SYMBOL vmlinux 0xf23fcb99 __kfifo_in +EXPORT_SYMBOL vmlinux 0xf2669a2c imx_scu_irq_register_notifier +EXPORT_SYMBOL vmlinux 0xf267e1ef dev_printk +EXPORT_SYMBOL vmlinux 0xf2702fbe security_sb_remount +EXPORT_SYMBOL vmlinux 0xf2705d8b ucc_fast_init +EXPORT_SYMBOL vmlinux 0xf275e248 mmc_can_erase +EXPORT_SYMBOL vmlinux 0xf27efe9d mipi_dsi_dcs_set_display_off +EXPORT_SYMBOL vmlinux 0xf28278af pci_clear_mwi +EXPORT_SYMBOL vmlinux 0xf28404cf devlink_dpipe_header_ipv6 +EXPORT_SYMBOL vmlinux 0xf29403e5 acpi_install_table_handler +EXPORT_SYMBOL vmlinux 0xf294d130 of_parse_phandle_with_args_map +EXPORT_SYMBOL vmlinux 0xf29f8515 __kfifo_dma_out_prepare_r +EXPORT_SYMBOL vmlinux 0xf2ab11e0 generic_file_direct_write +EXPORT_SYMBOL vmlinux 0xf2abbbe5 d_invalidate +EXPORT_SYMBOL vmlinux 0xf2bd19a0 scsi_change_queue_depth +EXPORT_SYMBOL vmlinux 0xf2c43f3f zlib_deflate +EXPORT_SYMBOL vmlinux 0xf2e5bd87 security_free_mnt_opts +EXPORT_SYMBOL vmlinux 0xf2f53617 memregion_free +EXPORT_SYMBOL vmlinux 0xf2f6f5a3 blk_queue_stack_limits +EXPORT_SYMBOL vmlinux 0xf2f70c25 qman_fq_fqid +EXPORT_SYMBOL vmlinux 0xf310495d cleancache_register_ops +EXPORT_SYMBOL vmlinux 0xf3107926 sha224_update +EXPORT_SYMBOL vmlinux 0xf3260618 ppp_output_wakeup +EXPORT_SYMBOL vmlinux 0xf32f0c3d inc_nlink +EXPORT_SYMBOL vmlinux 0xf338f045 cdrom_media_changed +EXPORT_SYMBOL vmlinux 0xf346231f seq_list_start_head +EXPORT_SYMBOL vmlinux 0xf353a698 register_module_notifier +EXPORT_SYMBOL vmlinux 0xf354bde3 inet_sendmsg +EXPORT_SYMBOL vmlinux 0xf369dd95 clear_nlink +EXPORT_SYMBOL vmlinux 0xf36c19ac pci_restore_state +EXPORT_SYMBOL vmlinux 0xf36d1d35 neigh_sysctl_register +EXPORT_SYMBOL vmlinux 0xf3706ab2 devfreq_monitor_resume +EXPORT_SYMBOL vmlinux 0xf3795527 dma_pool_create +EXPORT_SYMBOL vmlinux 0xf3837d00 mpage_writepages +EXPORT_SYMBOL vmlinux 0xf389fe60 __hw_addr_init +EXPORT_SYMBOL vmlinux 0xf3916987 global_cursor_default +EXPORT_SYMBOL vmlinux 0xf3918522 qman_retire_fq +EXPORT_SYMBOL vmlinux 0xf3979f58 dev_lstats_read +EXPORT_SYMBOL vmlinux 0xf39f8286 xfrm_input +EXPORT_SYMBOL vmlinux 0xf3a57892 release_dentry_name_snapshot +EXPORT_SYMBOL vmlinux 0xf3b30a06 utf8version_latest +EXPORT_SYMBOL vmlinux 0xf3c65723 blk_queue_bounce_limit +EXPORT_SYMBOL vmlinux 0xf3cc1ed6 filemap_fdatawait_range +EXPORT_SYMBOL vmlinux 0xf3e0e1df allocate_resource +EXPORT_SYMBOL vmlinux 0xf3e6402e __bitmap_equal +EXPORT_SYMBOL vmlinux 0xf3ef4d05 mipi_dsi_dcs_write_buffer +EXPORT_SYMBOL vmlinux 0xf40e7a73 __xa_alloc +EXPORT_SYMBOL vmlinux 0xf425eaeb __nla_reserve_64bit +EXPORT_SYMBOL vmlinux 0xf433e7a9 devfreq_register_opp_notifier +EXPORT_SYMBOL vmlinux 0xf43d2caa acpi_remove_interface +EXPORT_SYMBOL vmlinux 0xf44a904a net_ns_barrier +EXPORT_SYMBOL vmlinux 0xf4510aa9 is_acpi_device_node +EXPORT_SYMBOL vmlinux 0xf471008d rps_may_expire_flow +EXPORT_SYMBOL vmlinux 0xf474c21c bitmap_print_to_pagebuf +EXPORT_SYMBOL vmlinux 0xf474fdcb kfree_const +EXPORT_SYMBOL vmlinux 0xf4a515f7 rproc_shutdown +EXPORT_SYMBOL vmlinux 0xf4b2b86e cgroup_bpf_enabled_key +EXPORT_SYMBOL vmlinux 0xf4b736c7 mmc_gpio_get_cd +EXPORT_SYMBOL vmlinux 0xf4b754fd acpi_resources_are_enforced +EXPORT_SYMBOL vmlinux 0xf4bdbeb9 __frontswap_invalidate_area +EXPORT_SYMBOL vmlinux 0xf4bee677 inet_shutdown +EXPORT_SYMBOL vmlinux 0xf4cdccaf proc_create_mount_point +EXPORT_SYMBOL vmlinux 0xf4ce19d1 param_get_ushort +EXPORT_SYMBOL vmlinux 0xf4d325e3 crypto_sha256_update +EXPORT_SYMBOL vmlinux 0xf4db35bc stpcpy +EXPORT_SYMBOL vmlinux 0xf4f14de6 rtnl_trylock +EXPORT_SYMBOL vmlinux 0xf4f7d1bf mipi_dsi_dcs_exit_sleep_mode +EXPORT_SYMBOL vmlinux 0xf5089c56 ucc_of_parse_tdm +EXPORT_SYMBOL vmlinux 0xf51aba5d truncate_inode_pages_range +EXPORT_SYMBOL vmlinux 0xf5267805 vga_get +EXPORT_SYMBOL vmlinux 0xf534043f mipi_dsi_generic_read +EXPORT_SYMBOL vmlinux 0xf53632e2 starget_for_each_device +EXPORT_SYMBOL vmlinux 0xf5383289 no_seek_end_llseek_size +EXPORT_SYMBOL vmlinux 0xf53d4c26 qdisc_class_hash_destroy +EXPORT_SYMBOL vmlinux 0xf567d9dc tty_register_driver +EXPORT_SYMBOL vmlinux 0xf56c3eb1 blk_mq_tag_to_rq +EXPORT_SYMBOL vmlinux 0xf57e63b2 pnp_request_card_device +EXPORT_SYMBOL vmlinux 0xf58a1076 of_find_mipi_dsi_device_by_node +EXPORT_SYMBOL vmlinux 0xf591753d nf_hooks_needed +EXPORT_SYMBOL vmlinux 0xf595e0d2 inet_twsk_deschedule_put +EXPORT_SYMBOL vmlinux 0xf5a20ed2 __genradix_prealloc +EXPORT_SYMBOL vmlinux 0xf5c35bbd dev_pick_tx_zero +EXPORT_SYMBOL vmlinux 0xf5cc2b97 __ps2_command +EXPORT_SYMBOL vmlinux 0xf5d3fbb6 setup_new_exec +EXPORT_SYMBOL vmlinux 0xf5e5a87b hdmi_infoframe_pack_only +EXPORT_SYMBOL vmlinux 0xf5e7ea40 ktime_get_coarse_ts64 +EXPORT_SYMBOL vmlinux 0xf5f30a51 mii_check_link +EXPORT_SYMBOL vmlinux 0xf5fab0df tcp_sock_set_keepintvl +EXPORT_SYMBOL vmlinux 0xf614cfe8 put_disk +EXPORT_SYMBOL vmlinux 0xf629d44b follow_down_one +EXPORT_SYMBOL vmlinux 0xf62c39fe ucc_slow_graceful_stop_tx +EXPORT_SYMBOL vmlinux 0xf636f617 vfs_readlink +EXPORT_SYMBOL vmlinux 0xf643d104 hsiphash_4u32 +EXPORT_SYMBOL vmlinux 0xf643fcb2 lock_sock_fast +EXPORT_SYMBOL vmlinux 0xf665f74f sock_load_diag_module +EXPORT_SYMBOL vmlinux 0xf681835f adjust_managed_page_count +EXPORT_SYMBOL vmlinux 0xf681acfc hdmi_infoframe_unpack +EXPORT_SYMBOL vmlinux 0xf68285c0 register_inetaddr_notifier +EXPORT_SYMBOL vmlinux 0xf68a07c6 blk_integrity_merge_rq +EXPORT_SYMBOL vmlinux 0xf6929f4e _dev_alert +EXPORT_SYMBOL vmlinux 0xf6ae9031 __breadahead +EXPORT_SYMBOL vmlinux 0xf6c0ee9f scsi_track_queue_full +EXPORT_SYMBOL vmlinux 0xf6cd7b18 kern_path +EXPORT_SYMBOL vmlinux 0xf6d8d53b param_set_uint +EXPORT_SYMBOL vmlinux 0xf6ebc03b net_ratelimit +EXPORT_SYMBOL vmlinux 0xf6f9d58d init_on_free +EXPORT_SYMBOL vmlinux 0xf6fc8791 __bitmap_xor +EXPORT_SYMBOL vmlinux 0xf70a4804 twl6040_reg_read +EXPORT_SYMBOL vmlinux 0xf718a12a input_setup_polling +EXPORT_SYMBOL vmlinux 0xf727a07c file_modified +EXPORT_SYMBOL vmlinux 0xf738d1be register_blocking_lsm_notifier +EXPORT_SYMBOL vmlinux 0xf74a4357 skb_copy_and_csum_dev +EXPORT_SYMBOL vmlinux 0xf7584a9c find_font +EXPORT_SYMBOL vmlinux 0xf76843b5 qcom_scm_pas_supported +EXPORT_SYMBOL vmlinux 0xf771bbaa ip_check_defrag +EXPORT_SYMBOL vmlinux 0xf77337a1 hdmi_audio_infoframe_check +EXPORT_SYMBOL vmlinux 0xf77393a7 jbd2_journal_lock_updates +EXPORT_SYMBOL vmlinux 0xf77555cd __memcpy_toio +EXPORT_SYMBOL vmlinux 0xf777ad7d fifo_set_limit +EXPORT_SYMBOL vmlinux 0xf7a04e80 of_phy_register_fixed_link +EXPORT_SYMBOL vmlinux 0xf7c77591 mmc_wait_for_cmd +EXPORT_SYMBOL vmlinux 0xf7da6e6f acpi_unload_table +EXPORT_SYMBOL vmlinux 0xf7ea6311 qman_p_poll_dqrr +EXPORT_SYMBOL vmlinux 0xf7f05c17 fman_port_use_kg_hash +EXPORT_SYMBOL vmlinux 0xf7f6773a mipi_dsi_dcs_enter_sleep_mode +EXPORT_SYMBOL vmlinux 0xf80201f6 __dquot_transfer +EXPORT_SYMBOL vmlinux 0xf811e69d scsi_eh_flush_done_q +EXPORT_SYMBOL vmlinux 0xf812cff6 memscan +EXPORT_SYMBOL vmlinux 0xf82417a9 of_get_next_child +EXPORT_SYMBOL vmlinux 0xf82abc1d isa_dma_bridge_buggy +EXPORT_SYMBOL vmlinux 0xf82c7fd2 __i2c_smbus_xfer +EXPORT_SYMBOL vmlinux 0xf82ec573 rb_prev +EXPORT_SYMBOL vmlinux 0xf84bd6ee bpf_stats_enabled_key +EXPORT_SYMBOL vmlinux 0xf8524dc5 path_has_submounts +EXPORT_SYMBOL vmlinux 0xf876cc86 igrab +EXPORT_SYMBOL vmlinux 0xf888ca21 sg_init_table +EXPORT_SYMBOL vmlinux 0xf88fff56 kobject_put +EXPORT_SYMBOL vmlinux 0xf8967ae1 rtc_add_group +EXPORT_SYMBOL vmlinux 0xf89f4a86 pnp_get_resource +EXPORT_SYMBOL vmlinux 0xf8bf8e22 ZSTD_DDictWorkspaceBound +EXPORT_SYMBOL vmlinux 0xf8d07858 bitmap_from_arr32 +EXPORT_SYMBOL vmlinux 0xf8de90a9 sb_set_blocksize +EXPORT_SYMBOL vmlinux 0xf8e8cdb9 component_match_add_release +EXPORT_SYMBOL vmlinux 0xf8f224a5 get_acl +EXPORT_SYMBOL vmlinux 0xf8f61ebc wake_up_var +EXPORT_SYMBOL vmlinux 0xf9110f92 tcf_action_check_ctrlact +EXPORT_SYMBOL vmlinux 0xf915179e refcount_dec_if_one +EXPORT_SYMBOL vmlinux 0xf9158196 security_inet_conn_request +EXPORT_SYMBOL vmlinux 0xf916ebbb vfs_get_fsid +EXPORT_SYMBOL vmlinux 0xf91b89ab fman_sp_build_buffer_struct +EXPORT_SYMBOL vmlinux 0xf93aae46 __arm_smccc_smc +EXPORT_SYMBOL vmlinux 0xf93fd09c fb_find_mode_cvt +EXPORT_SYMBOL vmlinux 0xf95c619b acpi_processor_preregister_performance +EXPORT_SYMBOL vmlinux 0xf970fb8a input_set_min_poll_interval +EXPORT_SYMBOL vmlinux 0xf971cea8 utf8len +EXPORT_SYMBOL vmlinux 0xf9722676 twl_i2c_write +EXPORT_SYMBOL vmlinux 0xf980e5c6 watchdog_unregister_governor +EXPORT_SYMBOL vmlinux 0xf98b6cec dev_graft_qdisc +EXPORT_SYMBOL vmlinux 0xf98f735f iov_iter_alignment +EXPORT_SYMBOL vmlinux 0xf9a482f9 msleep +EXPORT_SYMBOL vmlinux 0xf9a9ed5a udp_lib_rehash +EXPORT_SYMBOL vmlinux 0xf9ae03c4 dma_direct_sync_single_for_device +EXPORT_SYMBOL vmlinux 0xf9c0b663 strlcat +EXPORT_SYMBOL vmlinux 0xf9c1f957 audit_log_start +EXPORT_SYMBOL vmlinux 0xf9c8a5bd mdiobus_read +EXPORT_SYMBOL vmlinux 0xf9cbfe53 deactivate_super +EXPORT_SYMBOL vmlinux 0xf9eced44 LZ4_compress_fast_continue +EXPORT_SYMBOL vmlinux 0xfa08f4b8 __tracepoint_dma_fence_signaled +EXPORT_SYMBOL vmlinux 0xfa17d7b3 mipi_dsi_dcs_write +EXPORT_SYMBOL vmlinux 0xfa280abe tcp_prot +EXPORT_SYMBOL vmlinux 0xfa28d84c rproc_get_by_child +EXPORT_SYMBOL vmlinux 0xfa297415 acpi_map_pxm_to_node +EXPORT_SYMBOL vmlinux 0xfa29a7f7 __sk_mem_raise_allocated +EXPORT_SYMBOL vmlinux 0xfa3561f1 simple_release_fs +EXPORT_SYMBOL vmlinux 0xfa3c42de csum_and_copy_from_iter_full +EXPORT_SYMBOL vmlinux 0xfa400868 dm_register_target +EXPORT_SYMBOL vmlinux 0xfa546530 udp_flush_pending_frames +EXPORT_SYMBOL vmlinux 0xfa55245f tcp_init_sock +EXPORT_SYMBOL vmlinux 0xfa599bb2 netlink_register_notifier +EXPORT_SYMBOL vmlinux 0xfa5e0905 freezing_slow_path +EXPORT_SYMBOL vmlinux 0xfa7552ca flow_rule_match_enc_ipv6_addrs +EXPORT_SYMBOL vmlinux 0xfa851b9f mmc_card_is_blockaddr +EXPORT_SYMBOL vmlinux 0xfa873ad0 prandom_seed +EXPORT_SYMBOL vmlinux 0xfa8b5317 cdev_del +EXPORT_SYMBOL vmlinux 0xfa8cc34e generic_key_instantiate +EXPORT_SYMBOL vmlinux 0xfa992c58 tcp_set_rcvlowat +EXPORT_SYMBOL vmlinux 0xfaa146c4 get_user_pages_remote +EXPORT_SYMBOL vmlinux 0xfabc38e9 delete_from_page_cache +EXPORT_SYMBOL vmlinux 0xfabda4a7 netlink_capable +EXPORT_SYMBOL vmlinux 0xfac5af0d md_update_sb +EXPORT_SYMBOL vmlinux 0xfac749bb __scsi_print_sense +EXPORT_SYMBOL vmlinux 0xfac8865f sysctl_wmem_max +EXPORT_SYMBOL vmlinux 0xfacef507 scsi_report_opcode +EXPORT_SYMBOL vmlinux 0xfada2f38 blk_rq_count_integrity_sg +EXPORT_SYMBOL vmlinux 0xfadfa09b unregister_netdevice_notifier_net +EXPORT_SYMBOL vmlinux 0xfaeead14 ndisc_mc_map +EXPORT_SYMBOL vmlinux 0xfaf03991 register_nexthop_notifier +EXPORT_SYMBOL vmlinux 0xfb0f424d __serio_register_driver +EXPORT_SYMBOL vmlinux 0xfb1e5705 xfrm_lookup_route +EXPORT_SYMBOL vmlinux 0xfb27cf17 devfreq_remove_governor +EXPORT_SYMBOL vmlinux 0xfb332781 input_mt_assign_slots +EXPORT_SYMBOL vmlinux 0xfb384d37 kasprintf +EXPORT_SYMBOL vmlinux 0xfb393359 vfs_rename +EXPORT_SYMBOL vmlinux 0xfb481954 vprintk +EXPORT_SYMBOL vmlinux 0xfb55c960 sock_gettstamp +EXPORT_SYMBOL vmlinux 0xfb633d92 inet6_del_offload +EXPORT_SYMBOL vmlinux 0xfb6af58d recalc_sigpending +EXPORT_SYMBOL vmlinux 0xfb6b04d2 page_get_link +EXPORT_SYMBOL vmlinux 0xfb746cc9 down_killable +EXPORT_SYMBOL vmlinux 0xfb7f6409 pm860x_set_bits +EXPORT_SYMBOL vmlinux 0xfb7fb315 pskb_expand_head +EXPORT_SYMBOL vmlinux 0xfb856a17 vme_register_bridge +EXPORT_SYMBOL vmlinux 0xfba7ddd2 match_u64 +EXPORT_SYMBOL vmlinux 0xfbaaf01e console_lock +EXPORT_SYMBOL vmlinux 0xfbad3cf0 scsi_normalize_sense +EXPORT_SYMBOL vmlinux 0xfbad79e0 udp_disconnect +EXPORT_SYMBOL vmlinux 0xfbb045bb simple_pin_fs +EXPORT_SYMBOL vmlinux 0xfbb8a761 strscpy_pad +EXPORT_SYMBOL vmlinux 0xfbbfe55e mmc_erase +EXPORT_SYMBOL vmlinux 0xfbc4f89e io_schedule_timeout +EXPORT_SYMBOL vmlinux 0xfbc9812d vfs_llseek +EXPORT_SYMBOL vmlinux 0xfbd341f1 of_get_pci_address +EXPORT_SYMBOL vmlinux 0xfbd8f0b9 sk_mc_loop +EXPORT_SYMBOL vmlinux 0xfbe4b175 qman_create_cgr +EXPORT_SYMBOL vmlinux 0xfbe8ee28 acpi_get_table_by_index +EXPORT_SYMBOL vmlinux 0xfbe9d690 kmem_cache_free +EXPORT_SYMBOL vmlinux 0xfbf56ccc flow_block_cb_free +EXPORT_SYMBOL vmlinux 0xfbfac23a inode_init_owner +EXPORT_SYMBOL vmlinux 0xfbfe0e86 ucc_fast_free +EXPORT_SYMBOL vmlinux 0xfc03e8c9 bfifo_qdisc_ops +EXPORT_SYMBOL vmlinux 0xfc22c029 mipi_dsi_picture_parameter_set +EXPORT_SYMBOL vmlinux 0xfc2406c4 vmalloc_to_page +EXPORT_SYMBOL vmlinux 0xfc336d2e __wake_up_bit +EXPORT_SYMBOL vmlinux 0xfc386584 devm_of_find_backlight +EXPORT_SYMBOL vmlinux 0xfc399557 utf8_load +EXPORT_SYMBOL vmlinux 0xfc4152fc ec_read +EXPORT_SYMBOL vmlinux 0xfc52abc7 qcom_scm_pas_shutdown +EXPORT_SYMBOL vmlinux 0xfc5c46e2 acpi_buffer_to_resource +EXPORT_SYMBOL vmlinux 0xfc5f89aa param_ops_bint +EXPORT_SYMBOL vmlinux 0xfc753a6f netlink_ns_capable +EXPORT_SYMBOL vmlinux 0xfc7e2596 down_trylock +EXPORT_SYMBOL vmlinux 0xfc881b89 fman_port_get_hash_result_offset +EXPORT_SYMBOL vmlinux 0xfcab0cba skb_dequeue +EXPORT_SYMBOL vmlinux 0xfcb926cd kstrtouint_from_user +EXPORT_SYMBOL vmlinux 0xfcc697f3 pnp_activate_dev +EXPORT_SYMBOL vmlinux 0xfcd1819a hdmi_spd_infoframe_check +EXPORT_SYMBOL vmlinux 0xfce9bf51 ipv6_skip_exthdr +EXPORT_SYMBOL vmlinux 0xfcec0987 enable_irq +EXPORT_SYMBOL vmlinux 0xfd08dac5 sock_no_sendmsg_locked +EXPORT_SYMBOL vmlinux 0xfd147f3d vif_device_init +EXPORT_SYMBOL vmlinux 0xfd3764d0 simple_transaction_release +EXPORT_SYMBOL vmlinux 0xfd4324da __xfrm_decode_session +EXPORT_SYMBOL vmlinux 0xfd5436c6 simple_transaction_read +EXPORT_SYMBOL vmlinux 0xfd5a835f in_dev_finish_destroy +EXPORT_SYMBOL vmlinux 0xfd6945ef reuseport_detach_prog +EXPORT_SYMBOL vmlinux 0xfd731134 flow_rule_match_eth_addrs +EXPORT_SYMBOL vmlinux 0xfd972992 mipi_dsi_dcs_read +EXPORT_SYMBOL vmlinux 0xfda9581f prandom_u32 +EXPORT_SYMBOL vmlinux 0xfdcb4ed3 acpi_os_get_line +EXPORT_SYMBOL vmlinux 0xfdcc8a0e fb_find_best_display +EXPORT_SYMBOL vmlinux 0xfdce3eb1 phy_attached_print +EXPORT_SYMBOL vmlinux 0xfdd8b72f alloc_netdev_mqs +EXPORT_SYMBOL vmlinux 0xfdf70093 ZSTD_CStreamOutSize +EXPORT_SYMBOL vmlinux 0xfdf9b562 get_watch_queue +EXPORT_SYMBOL vmlinux 0xfdfe4174 dma_direct_map_resource +EXPORT_SYMBOL vmlinux 0xfe029963 unregister_inetaddr_notifier +EXPORT_SYMBOL vmlinux 0xfe042aa8 dmaengine_get_unmap_data +EXPORT_SYMBOL vmlinux 0xfe0a2197 xfrm6_rcv_tnl +EXPORT_SYMBOL vmlinux 0xfe18873c sock_cmsg_send +EXPORT_SYMBOL vmlinux 0xfe1d2e94 key_create_or_update +EXPORT_SYMBOL vmlinux 0xfe273695 xfrm6_find_1stfragopt +EXPORT_SYMBOL vmlinux 0xfe487975 init_wait_entry +EXPORT_SYMBOL vmlinux 0xfe51d738 skb_seq_read +EXPORT_SYMBOL vmlinux 0xfe54f716 md_wakeup_thread +EXPORT_SYMBOL vmlinux 0xfe5d4bb2 sys_tz +EXPORT_SYMBOL vmlinux 0xfe5e1049 kmalloc_caches +EXPORT_SYMBOL vmlinux 0xfe7a84d5 dcb_setapp +EXPORT_SYMBOL vmlinux 0xfe81e560 kthread_bind +EXPORT_SYMBOL vmlinux 0xfe916dc6 hex_dump_to_buffer +EXPORT_SYMBOL vmlinux 0xfe96edd9 ip6_fraglist_init +EXPORT_SYMBOL vmlinux 0xfe9ebbbb acpi_osi_is_win8 +EXPORT_SYMBOL vmlinux 0xfeb5d0aa verify_spi_info +EXPORT_SYMBOL vmlinux 0xfebf5166 generic_file_fsync +EXPORT_SYMBOL vmlinux 0xfecabc77 fiemap_prep +EXPORT_SYMBOL vmlinux 0xfedbb6ea dev_set_mtu +EXPORT_SYMBOL vmlinux 0xfedcdb60 seq_hlist_next_percpu +EXPORT_SYMBOL vmlinux 0xfeebc7c4 __kfifo_from_user_r +EXPORT_SYMBOL vmlinux 0xfef74017 dev_set_allmulti +EXPORT_SYMBOL vmlinux 0xfefcb98e vme_dma_vme_attribute +EXPORT_SYMBOL vmlinux 0xff0647c1 bio_init +EXPORT_SYMBOL vmlinux 0xff129817 pcibios_resource_to_bus +EXPORT_SYMBOL vmlinux 0xff1e9dd8 seq_list_start +EXPORT_SYMBOL vmlinux 0xff23f2fc ip6_fraglist_prepare +EXPORT_SYMBOL vmlinux 0xff278481 security_sb_set_mnt_opts +EXPORT_SYMBOL vmlinux 0xff5232ea sock_no_linger +EXPORT_SYMBOL vmlinux 0xff65642d generic_pipe_buf_release +EXPORT_SYMBOL vmlinux 0xff6878cf fb_default_cmap +EXPORT_SYMBOL vmlinux 0xff6f9cf8 __scm_destroy +EXPORT_SYMBOL vmlinux 0xff87cd18 lockref_get_not_dead +EXPORT_SYMBOL vmlinux 0xff9c4b56 ZSTD_compressBound +EXPORT_SYMBOL vmlinux 0xffa253d9 gro_cells_init +EXPORT_SYMBOL vmlinux 0xffb7c514 ida_free +EXPORT_SYMBOL vmlinux 0xffb9ab59 request_firmware +EXPORT_SYMBOL vmlinux 0xffd1392c __hw_addr_sync_dev +EXPORT_SYMBOL vmlinux 0xffdb1568 kernel_sock_shutdown +EXPORT_SYMBOL vmlinux 0xffecd42a input_set_keycode +EXPORT_SYMBOL vmlinux 0xffeedf6a delayed_work_timer_fn +EXPORT_SYMBOL vmlinux 0xfff2979e sock_wake_async +EXPORT_SYMBOL_GPL crypto/af_alg 0x03fa634f af_alg_make_sg +EXPORT_SYMBOL_GPL crypto/af_alg 0x0f598ad1 af_alg_poll +EXPORT_SYMBOL_GPL crypto/af_alg 0x142b579a af_alg_free_resources +EXPORT_SYMBOL_GPL crypto/af_alg 0x3b3bcc5c af_alg_accept +EXPORT_SYMBOL_GPL crypto/af_alg 0x3e0d13ff af_alg_async_cb +EXPORT_SYMBOL_GPL crypto/af_alg 0x639b7692 af_alg_unregister_type +EXPORT_SYMBOL_GPL crypto/af_alg 0x6ba222bd af_alg_wmem_wakeup +EXPORT_SYMBOL_GPL crypto/af_alg 0x6f0a90b7 af_alg_sendmsg +EXPORT_SYMBOL_GPL crypto/af_alg 0x79a8ec4e af_alg_count_tsgl +EXPORT_SYMBOL_GPL crypto/af_alg 0xa4abaa97 af_alg_free_sg +EXPORT_SYMBOL_GPL crypto/af_alg 0xb136dac3 af_alg_pull_tsgl +EXPORT_SYMBOL_GPL crypto/af_alg 0xc84d2f9c af_alg_register_type +EXPORT_SYMBOL_GPL crypto/af_alg 0xd5fdfe2c af_alg_release +EXPORT_SYMBOL_GPL crypto/af_alg 0xe3a3563c af_alg_wait_for_data +EXPORT_SYMBOL_GPL crypto/af_alg 0xeb4dbb98 af_alg_release_parent +EXPORT_SYMBOL_GPL crypto/af_alg 0xf01bf4c3 af_alg_sendpage +EXPORT_SYMBOL_GPL crypto/af_alg 0xf8594966 af_alg_get_rsgl +EXPORT_SYMBOL_GPL crypto/af_alg 0xf9610584 af_alg_alloc_areq +EXPORT_SYMBOL_GPL crypto/asymmetric_keys/asym_tpm 0x7430f97c tpm_key_create +EXPORT_SYMBOL_GPL crypto/asymmetric_keys/asym_tpm 0xa7f7327f asym_tpm_subtype +EXPORT_SYMBOL_GPL crypto/async_tx/async_memcpy 0x7c4a6f9f async_memcpy +EXPORT_SYMBOL_GPL crypto/async_tx/async_pq 0x61fae322 async_syndrome_val +EXPORT_SYMBOL_GPL crypto/async_tx/async_pq 0xa4886b0d async_gen_syndrome +EXPORT_SYMBOL_GPL crypto/async_tx/async_raid6_recov 0x263eff62 async_raid6_datap_recov +EXPORT_SYMBOL_GPL crypto/async_tx/async_raid6_recov 0x69aefacd async_raid6_2data_recov +EXPORT_SYMBOL_GPL crypto/async_tx/async_tx 0x0ef9270e async_tx_submit +EXPORT_SYMBOL_GPL crypto/async_tx/async_tx 0x34bb2601 async_trigger_callback +EXPORT_SYMBOL_GPL crypto/async_tx/async_tx 0x66dc13fd async_tx_quiesce +EXPORT_SYMBOL_GPL crypto/async_tx/async_tx 0x731589b0 __async_tx_find_channel +EXPORT_SYMBOL_GPL crypto/async_tx/async_xor 0x9dfc59dd async_xor_val +EXPORT_SYMBOL_GPL crypto/async_tx/async_xor 0xdef50c89 async_xor +EXPORT_SYMBOL_GPL crypto/authenc 0x2479193e crypto_authenc_extractkeys +EXPORT_SYMBOL_GPL crypto/blowfish_common 0xdf509bf5 blowfish_setkey +EXPORT_SYMBOL_GPL crypto/cast5_generic 0x188d9d26 __cast5_decrypt +EXPORT_SYMBOL_GPL crypto/cast5_generic 0x235b348e 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 0x50bed3e6 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 0x19cf8a5e cryptd_free_ahash +EXPORT_SYMBOL_GPL crypto/cryptd 0x2511a7ef cryptd_free_aead +EXPORT_SYMBOL_GPL crypto/cryptd 0x4a381106 cryptd_free_skcipher +EXPORT_SYMBOL_GPL crypto/cryptd 0x7f14ef87 cryptd_aead_queued +EXPORT_SYMBOL_GPL crypto/cryptd 0x7fb97182 cryptd_ahash_queued +EXPORT_SYMBOL_GPL crypto/cryptd 0x87b95267 cryptd_shash_desc +EXPORT_SYMBOL_GPL crypto/cryptd 0x93891b84 cryptd_alloc_aead +EXPORT_SYMBOL_GPL crypto/cryptd 0x95ebbb87 cryptd_skcipher_queued +EXPORT_SYMBOL_GPL crypto/cryptd 0xa12e44ec cryptd_alloc_skcipher +EXPORT_SYMBOL_GPL crypto/cryptd 0xa63e6313 cryptd_ahash_child +EXPORT_SYMBOL_GPL crypto/cryptd 0xbc6c3025 cryptd_alloc_ahash +EXPORT_SYMBOL_GPL crypto/cryptd 0xd006ad45 cryptd_skcipher_child +EXPORT_SYMBOL_GPL crypto/cryptd 0xec897de5 cryptd_aead_child +EXPORT_SYMBOL_GPL crypto/crypto_engine 0x08b086b3 crypto_transfer_akcipher_request_to_engine +EXPORT_SYMBOL_GPL crypto/crypto_engine 0x1af7c605 crypto_engine_alloc_init +EXPORT_SYMBOL_GPL crypto/crypto_engine 0x2bf25ee3 crypto_engine_start +EXPORT_SYMBOL_GPL crypto/crypto_engine 0x2e58acf1 crypto_finalize_skcipher_request +EXPORT_SYMBOL_GPL crypto/crypto_engine 0x4f92b673 crypto_finalize_hash_request +EXPORT_SYMBOL_GPL crypto/crypto_engine 0x53f6df28 crypto_finalize_akcipher_request +EXPORT_SYMBOL_GPL crypto/crypto_engine 0x7df7e2b6 crypto_engine_exit +EXPORT_SYMBOL_GPL crypto/crypto_engine 0x93759af9 crypto_engine_alloc_init_and_set +EXPORT_SYMBOL_GPL crypto/crypto_engine 0x946bf86d crypto_engine_stop +EXPORT_SYMBOL_GPL crypto/crypto_engine 0xbba1799c crypto_transfer_aead_request_to_engine +EXPORT_SYMBOL_GPL crypto/crypto_engine 0xdf6e5613 crypto_transfer_skcipher_request_to_engine +EXPORT_SYMBOL_GPL crypto/crypto_engine 0xe777463d crypto_transfer_hash_request_to_engine +EXPORT_SYMBOL_GPL crypto/crypto_engine 0xfc6152fd crypto_finalize_aead_request +EXPORT_SYMBOL_GPL crypto/crypto_simd 0x36de30a0 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 0x851c747c simd_aead_create +EXPORT_SYMBOL_GPL crypto/crypto_simd 0x88638552 simd_skcipher_create_compat +EXPORT_SYMBOL_GPL crypto/crypto_simd 0x8f7287a4 simd_register_aeads_compat +EXPORT_SYMBOL_GPL crypto/crypto_simd 0xbf2d5776 simd_unregister_skciphers +EXPORT_SYMBOL_GPL crypto/crypto_simd 0xbfd26f15 simd_aead_free +EXPORT_SYMBOL_GPL crypto/crypto_simd 0xc29eff18 simd_unregister_aeads +EXPORT_SYMBOL_GPL crypto/crypto_simd 0xefe73979 simd_skcipher_free +EXPORT_SYMBOL_GPL crypto/ecdh_generic 0x515ba532 crypto_ecdh_decode_key +EXPORT_SYMBOL_GPL crypto/ecdh_generic 0x7a395d76 crypto_ecdh_encode_key +EXPORT_SYMBOL_GPL crypto/ecdh_generic 0xd5a29505 crypto_ecdh_key_len +EXPORT_SYMBOL_GPL crypto/serpent_generic 0x3959a1db serpent_setkey +EXPORT_SYMBOL_GPL crypto/serpent_generic 0x4eb4c55e __serpent_encrypt +EXPORT_SYMBOL_GPL crypto/serpent_generic 0xbcc074f3 __serpent_decrypt +EXPORT_SYMBOL_GPL crypto/serpent_generic 0xd4c9681a __serpent_setkey +EXPORT_SYMBOL_GPL crypto/sm3_generic 0x0bddca87 sm3_zero_message_hash +EXPORT_SYMBOL_GPL crypto/sm4_generic 0x09a89410 crypto_sm4_expand_key +EXPORT_SYMBOL_GPL crypto/sm4_generic 0x1b2e4ed8 crypto_sm4_decrypt +EXPORT_SYMBOL_GPL crypto/sm4_generic 0x85490bd9 crypto_sm4_set_key +EXPORT_SYMBOL_GPL crypto/sm4_generic 0x8b46cf4c crypto_sm4_encrypt +EXPORT_SYMBOL_GPL crypto/twofish_common 0x720547b4 twofish_setkey +EXPORT_SYMBOL_GPL crypto/twofish_common 0xe22b7787 __twofish_setkey +EXPORT_SYMBOL_GPL drivers/acpi/nfit/nfit 0x304e5777 acpi_nfit_ctl +EXPORT_SYMBOL_GPL drivers/acpi/nfit/nfit 0x34aad815 acpi_nfit_init +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 0x674e18ea acpi_nfit_desc_init +EXPORT_SYMBOL_GPL drivers/acpi/nfit/nfit 0x9e1f6edb __acpi_nvdimm_notify +EXPORT_SYMBOL_GPL drivers/acpi/nfit/nfit 0xefa76b65 __acpi_nfit_notify +EXPORT_SYMBOL_GPL drivers/ata/pata_platform 0xfcad562f __pata_platform_probe +EXPORT_SYMBOL_GPL drivers/ata/pata_sis 0xf935dd34 sis_info133_for_sata +EXPORT_SYMBOL_GPL drivers/auxdisplay/charlcd 0x727ea304 charlcd_poke +EXPORT_SYMBOL_GPL drivers/auxdisplay/charlcd 0x9192a401 charlcd_register +EXPORT_SYMBOL_GPL drivers/auxdisplay/charlcd 0xa2a58bbe charlcd_alloc +EXPORT_SYMBOL_GPL drivers/auxdisplay/charlcd 0xac53a91b charlcd_unregister +EXPORT_SYMBOL_GPL drivers/auxdisplay/charlcd 0xd0cc2e18 charlcd_free +EXPORT_SYMBOL_GPL drivers/base/regmap/regmap-i3c 0xe5259bbe __devm_regmap_init_i3c +EXPORT_SYMBOL_GPL drivers/base/regmap/regmap-sccb 0xb4257a60 __regmap_init_sccb +EXPORT_SYMBOL_GPL drivers/base/regmap/regmap-sccb 0xdf068e0f __devm_regmap_init_sccb +EXPORT_SYMBOL_GPL drivers/base/regmap/regmap-sdw 0x4282e77e __regmap_init_sdw +EXPORT_SYMBOL_GPL drivers/base/regmap/regmap-sdw 0x8129c183 __devm_regmap_init_sdw +EXPORT_SYMBOL_GPL drivers/base/regmap/regmap-slimbus 0x33057df4 __devm_regmap_init_slimbus +EXPORT_SYMBOL_GPL drivers/base/regmap/regmap-slimbus 0x436c8a78 __regmap_init_slimbus +EXPORT_SYMBOL_GPL drivers/base/regmap/regmap-spmi 0x6f2df6a2 __devm_regmap_init_spmi_ext +EXPORT_SYMBOL_GPL drivers/base/regmap/regmap-spmi 0x782b3d3c __regmap_init_spmi_ext +EXPORT_SYMBOL_GPL drivers/base/regmap/regmap-spmi 0xe87eff2a __devm_regmap_init_spmi_base +EXPORT_SYMBOL_GPL drivers/base/regmap/regmap-spmi 0xffde47a2 __regmap_init_spmi_base +EXPORT_SYMBOL_GPL drivers/base/regmap/regmap-w1 0x6f916d66 __regmap_init_w1 +EXPORT_SYMBOL_GPL drivers/base/regmap/regmap-w1 0x852efcf1 __devm_regmap_init_w1 +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0x0313b7e8 bcma_chipco_regctl_maskset +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0x0f489c6c bcma_chipco_chipctl_maskset +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0x13383e96 bcma_chipco_pll_read +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0x236a4c27 bcma_chipco_gpio_outen +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0x2610ddd2 bcma_find_core_unit +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0x2e0f99a8 bcma_core_pll_ctl +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0x436d7e03 bcma_core_enable +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0x540a5b45 bcma_host_pci_irq_ctl +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0x5d68e03f bcma_chipco_gpio_control +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0x629f7ca3 bcma_host_pci_up +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0x76f1cbfa bcma_chipco_get_alp_clock +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0x7c007fc3 bcma_core_set_clockmode +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0x8516ddda bcma_chipco_pll_maskset +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0x8804cfc4 bcma_pmu_spuravoid_pllupdate +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0x96247cf2 bcma_pmu_get_bus_clock +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0xb056157d bcma_core_is_enabled +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0xc29361d0 bcma_chipco_b_mii_write +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0xc3bc1ca8 __bcma_driver_register +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0xc7dd2a30 bcma_driver_unregister +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0xca81e885 bcma_host_pci_down +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0xcb8786fe bcma_core_disable +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0xd6d44fea bcma_chipco_pll_write +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0xea5603a7 bcma_core_pci_power_save +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0xffef9fcf bcma_chipco_gpio_out +EXPORT_SYMBOL_GPL drivers/bluetooth/btbcm 0x2632ae2f btbcm_read_pcm_int_params +EXPORT_SYMBOL_GPL drivers/bluetooth/btbcm 0x2f3c8bf8 btbcm_setup_apple +EXPORT_SYMBOL_GPL drivers/bluetooth/btbcm 0x3769d0ad btbcm_write_pcm_int_params +EXPORT_SYMBOL_GPL drivers/bluetooth/btbcm 0xac0d6587 btbcm_initialize +EXPORT_SYMBOL_GPL drivers/bluetooth/btbcm 0xad48115a btbcm_finalize +EXPORT_SYMBOL_GPL drivers/bluetooth/btbcm 0xd9e7816b btbcm_setup_patchram +EXPORT_SYMBOL_GPL drivers/bluetooth/btbcm 0xe5b054dd btbcm_set_bdaddr +EXPORT_SYMBOL_GPL drivers/bluetooth/btbcm 0xef330a5c btbcm_check_bdaddr +EXPORT_SYMBOL_GPL drivers/bluetooth/btintel 0x04396b39 btintel_set_diag_mfg +EXPORT_SYMBOL_GPL drivers/bluetooth/btintel 0x0e91d98c btintel_hw_error +EXPORT_SYMBOL_GPL drivers/bluetooth/btintel 0x42c40162 btintel_set_event_mask +EXPORT_SYMBOL_GPL drivers/bluetooth/btintel 0x5dc5e527 btintel_secure_send +EXPORT_SYMBOL_GPL drivers/bluetooth/btintel 0x66c912a4 btintel_download_firmware +EXPORT_SYMBOL_GPL drivers/bluetooth/btintel 0x69dfefd7 btintel_enter_mfg +EXPORT_SYMBOL_GPL drivers/bluetooth/btintel 0x7c4703c7 btintel_read_boot_params +EXPORT_SYMBOL_GPL drivers/bluetooth/btintel 0x992e8021 btintel_read_version +EXPORT_SYMBOL_GPL drivers/bluetooth/btintel 0x9cc0b229 btintel_set_event_mask_mfg +EXPORT_SYMBOL_GPL drivers/bluetooth/btintel 0xd78e10fc btintel_send_intel_reset +EXPORT_SYMBOL_GPL drivers/bluetooth/btintel 0xe18c3e22 btintel_load_ddc_config +EXPORT_SYMBOL_GPL drivers/bluetooth/btintel 0xe25e0f23 btintel_reset_to_bootloader +EXPORT_SYMBOL_GPL drivers/bluetooth/btintel 0xe97a288a btintel_regmap_init +EXPORT_SYMBOL_GPL drivers/bluetooth/btintel 0xe9fa9adb btintel_set_bdaddr +EXPORT_SYMBOL_GPL drivers/bluetooth/btintel 0xed2bf7d7 btintel_exit_mfg +EXPORT_SYMBOL_GPL drivers/bluetooth/btintel 0xf1f5729d btintel_version_info +EXPORT_SYMBOL_GPL drivers/bluetooth/btintel 0xf262b7bd btintel_check_bdaddr +EXPORT_SYMBOL_GPL drivers/bluetooth/btintel 0xf70b120e btintel_set_diag +EXPORT_SYMBOL_GPL drivers/bluetooth/btmrvl 0x0941b4bb btmrvl_send_hscfg_cmd +EXPORT_SYMBOL_GPL drivers/bluetooth/btmrvl 0x0f1fa9cd btmrvl_add_card +EXPORT_SYMBOL_GPL drivers/bluetooth/btmrvl 0x366f9768 btmrvl_interrupt +EXPORT_SYMBOL_GPL drivers/bluetooth/btmrvl 0x3e93b478 btmrvl_check_evtpkt +EXPORT_SYMBOL_GPL drivers/bluetooth/btmrvl 0x8133728a btmrvl_remove_card +EXPORT_SYMBOL_GPL drivers/bluetooth/btmrvl 0x9f7e220b btmrvl_process_event +EXPORT_SYMBOL_GPL drivers/bluetooth/btmrvl 0xbea50016 btmrvl_pscan_window_reporting +EXPORT_SYMBOL_GPL drivers/bluetooth/btmrvl 0xd5d24066 btmrvl_enable_hs +EXPORT_SYMBOL_GPL drivers/bluetooth/btmrvl 0xee0ab410 btmrvl_enable_ps +EXPORT_SYMBOL_GPL drivers/bluetooth/btmrvl 0xeeb9fb48 btmrvl_register_hdev +EXPORT_SYMBOL_GPL drivers/bluetooth/btmrvl 0xfb9f176a btmrvl_send_module_cfg_cmd +EXPORT_SYMBOL_GPL drivers/bluetooth/btqca 0x3085c23b qca_set_bdaddr_rome +EXPORT_SYMBOL_GPL drivers/bluetooth/btqca 0x3ebd8654 qca_set_bdaddr +EXPORT_SYMBOL_GPL drivers/bluetooth/btqca 0x87a6d4e9 qca_read_soc_version +EXPORT_SYMBOL_GPL drivers/bluetooth/btqca 0xe72582ed qca_uart_setup +EXPORT_SYMBOL_GPL drivers/bluetooth/btqca 0xef3f24ea qca_send_pre_shutdown_cmd +EXPORT_SYMBOL_GPL drivers/bluetooth/btrtl 0x5ee7cf03 btrtl_download_firmware +EXPORT_SYMBOL_GPL drivers/bluetooth/btrtl 0xa93401a0 btrtl_setup_realtek +EXPORT_SYMBOL_GPL drivers/bluetooth/btrtl 0xaf78f260 btrtl_free +EXPORT_SYMBOL_GPL drivers/bluetooth/btrtl 0xcb1e3826 btrtl_shutdown_realtek +EXPORT_SYMBOL_GPL drivers/bluetooth/btrtl 0xd557cef8 btrtl_get_uart_settings +EXPORT_SYMBOL_GPL drivers/bluetooth/btrtl 0xf01ce61a btrtl_initialize +EXPORT_SYMBOL_GPL drivers/bluetooth/hci_uart 0x49b05316 hci_uart_register_device +EXPORT_SYMBOL_GPL drivers/bluetooth/hci_uart 0x5b290ed3 hci_uart_tx_wakeup +EXPORT_SYMBOL_GPL drivers/bluetooth/hci_uart 0x8413660d hci_uart_unregister_device +EXPORT_SYMBOL_GPL drivers/bluetooth/hci_uart 0xcb26ba33 h4_recv_buf +EXPORT_SYMBOL_GPL drivers/bus/mhi/core/mhi 0x201cdbc4 mhi_queue_skb +EXPORT_SYMBOL_GPL drivers/bus/mhi/core/mhi 0x2be9bc0a mhi_device_get_sync +EXPORT_SYMBOL_GPL drivers/bus/mhi/core/mhi 0x35481d73 __mhi_driver_register +EXPORT_SYMBOL_GPL drivers/bus/mhi/core/mhi 0x359cca4e mhi_driver_unregister +EXPORT_SYMBOL_GPL drivers/bus/mhi/core/mhi 0x3efabbc9 mhi_queue_dma +EXPORT_SYMBOL_GPL drivers/bus/mhi/core/mhi 0x4d3e8d14 mhi_force_rddm_mode +EXPORT_SYMBOL_GPL drivers/bus/mhi/core/mhi 0x6d985bf3 mhi_async_power_up +EXPORT_SYMBOL_GPL drivers/bus/mhi/core/mhi 0x705e4c24 mhi_pm_resume +EXPORT_SYMBOL_GPL drivers/bus/mhi/core/mhi 0x71f8dcba mhi_prepare_for_transfer +EXPORT_SYMBOL_GPL drivers/bus/mhi/core/mhi 0x7566b435 mhi_register_controller +EXPORT_SYMBOL_GPL drivers/bus/mhi/core/mhi 0x7f185bcd mhi_poll +EXPORT_SYMBOL_GPL drivers/bus/mhi/core/mhi 0x908789fd mhi_pm_suspend +EXPORT_SYMBOL_GPL drivers/bus/mhi/core/mhi 0x963d656f mhi_prepare_for_power_up +EXPORT_SYMBOL_GPL drivers/bus/mhi/core/mhi 0xa3b9d1e4 mhi_device_put +EXPORT_SYMBOL_GPL drivers/bus/mhi/core/mhi 0xa63ac43f mhi_device_get +EXPORT_SYMBOL_GPL drivers/bus/mhi/core/mhi 0xacf214eb mhi_unregister_controller +EXPORT_SYMBOL_GPL drivers/bus/mhi/core/mhi 0xd4a8bb2a mhi_queue_buf +EXPORT_SYMBOL_GPL drivers/bus/mhi/core/mhi 0xdd94230e mhi_download_rddm_img +EXPORT_SYMBOL_GPL drivers/bus/mhi/core/mhi 0xe3b4216b mhi_unprepare_after_power_down +EXPORT_SYMBOL_GPL drivers/bus/mhi/core/mhi 0xf06fad87 mhi_power_down +EXPORT_SYMBOL_GPL drivers/bus/mhi/core/mhi 0xfacf14b3 mhi_notify +EXPORT_SYMBOL_GPL drivers/bus/mhi/core/mhi 0xfdbe3724 mhi_unprepare_from_transfer +EXPORT_SYMBOL_GPL drivers/bus/moxtet 0x10d23587 moxtet_device_written +EXPORT_SYMBOL_GPL drivers/bus/moxtet 0x16f123ec moxtet_device_read +EXPORT_SYMBOL_GPL drivers/bus/moxtet 0xf0a4155c moxtet_device_write +EXPORT_SYMBOL_GPL drivers/bus/moxtet 0xfc05516e __moxtet_register_driver +EXPORT_SYMBOL_GPL drivers/bus/sunxi-rsb 0x201a258d __devm_regmap_init_sunxi_rsb +EXPORT_SYMBOL_GPL drivers/bus/sunxi-rsb 0xd1730d3d sunxi_rsb_driver_register +EXPORT_SYMBOL_GPL drivers/clk/meson/clk-phase 0x259c6a72 meson_clk_phase_ops +EXPORT_SYMBOL_GPL drivers/clk/meson/clk-phase 0x875b274f meson_clk_triphase_ops +EXPORT_SYMBOL_GPL drivers/clk/meson/sclk-div 0xce28c471 meson_sclk_div_ops +EXPORT_SYMBOL_GPL drivers/clk/qcom/clk-qcom 0x0000139e clk_alpha_pll_ops +EXPORT_SYMBOL_GPL drivers/clk/qcom/clk-qcom 0x08f0cc30 clk_is_enabled_regmap +EXPORT_SYMBOL_GPL drivers/clk/qcom/clk-qcom 0x09020683 devm_clk_register_regmap +EXPORT_SYMBOL_GPL drivers/clk/qcom/clk-qcom 0x0d10c3c4 clk_enable_regmap +EXPORT_SYMBOL_GPL drivers/clk/qcom/clk-qcom 0x0d678ab9 qcom_reset_ops +EXPORT_SYMBOL_GPL drivers/clk/qcom/clk-qcom 0x0e5f8a53 clk_pll_sr2_ops +EXPORT_SYMBOL_GPL drivers/clk/qcom/clk-qcom 0x0e98da3d clk_pll_vote_ops +EXPORT_SYMBOL_GPL drivers/clk/qcom/clk-qcom 0x17d44071 clk_alpha_pll_hwfsm_ops +EXPORT_SYMBOL_GPL drivers/clk/qcom/clk-qcom 0x1987883d clk_alpha_pll_fixed_lucid_ops +EXPORT_SYMBOL_GPL drivers/clk/qcom/clk-qcom 0x272f3204 clk_alpha_pll_fixed_ops +EXPORT_SYMBOL_GPL drivers/clk/qcom/clk-qcom 0x2a9c7452 clk_rcg_lcc_ops +EXPORT_SYMBOL_GPL drivers/clk/qcom/clk-qcom 0x2b0d957d clk_pixel_ops +EXPORT_SYMBOL_GPL drivers/clk/qcom/clk-qcom 0x2b2b5c7b qcom_cc_probe_by_index +EXPORT_SYMBOL_GPL drivers/clk/qcom/clk-qcom 0x2cae96b3 clk_regmap_div_ops +EXPORT_SYMBOL_GPL drivers/clk/qcom/clk-qcom 0x30bbf987 clk_rcg2_shared_ops +EXPORT_SYMBOL_GPL drivers/clk/qcom/clk-qcom 0x310b6341 clk_regmap_mux_closest_ops +EXPORT_SYMBOL_GPL drivers/clk/qcom/clk-qcom 0x3747af55 clk_rcg_bypass2_ops +EXPORT_SYMBOL_GPL drivers/clk/qcom/clk-qcom 0x395868a1 qcom_find_freq_floor +EXPORT_SYMBOL_GPL drivers/clk/qcom/clk-qcom 0x3dfc2dc5 clk_branch_simple_ops +EXPORT_SYMBOL_GPL drivers/clk/qcom/clk-qcom 0x405d394a clk_alpha_pll_postdiv_ops +EXPORT_SYMBOL_GPL drivers/clk/qcom/clk-qcom 0x418e9cfd clk_pll_ops +EXPORT_SYMBOL_GPL drivers/clk/qcom/clk-qcom 0x4b0ed6da clk_ops_hfpll +EXPORT_SYMBOL_GPL drivers/clk/qcom/clk-qcom 0x5111f2ad clk_rcg2_ops +EXPORT_SYMBOL_GPL drivers/clk/qcom/clk-qcom 0x520df3b7 clk_rcg_esc_ops +EXPORT_SYMBOL_GPL drivers/clk/qcom/clk-qcom 0x57172323 clk_byte_ops +EXPORT_SYMBOL_GPL drivers/clk/qcom/clk-qcom 0x5a6ae327 clk_alpha_pll_configure +EXPORT_SYMBOL_GPL drivers/clk/qcom/clk-qcom 0x5e6abb22 mux_div_set_src_div +EXPORT_SYMBOL_GPL drivers/clk/qcom/clk-qcom 0x615dbb77 clk_branch2_ops +EXPORT_SYMBOL_GPL drivers/clk/qcom/clk-qcom 0x631939a9 clk_branch2_aon_ops +EXPORT_SYMBOL_GPL drivers/clk/qcom/clk-qcom 0x63ee9aa4 clk_alpha_pll_fixed_fabia_ops +EXPORT_SYMBOL_GPL drivers/clk/qcom/clk-qcom 0x6596a109 qcom_cc_register_sleep_clk +EXPORT_SYMBOL_GPL drivers/clk/qcom/clk-qcom 0x66922845 clk_branch_ops +EXPORT_SYMBOL_GPL drivers/clk/qcom/clk-qcom 0x68199825 clk_disable_regmap +EXPORT_SYMBOL_GPL drivers/clk/qcom/clk-qcom 0x6af41b8b qcom_pll_set_fsm_mode +EXPORT_SYMBOL_GPL drivers/clk/qcom/clk-qcom 0x6b58fd54 qcom_cc_map +EXPORT_SYMBOL_GPL drivers/clk/qcom/clk-qcom 0x7019378d clk_pll_configure_sr_hpm_lp +EXPORT_SYMBOL_GPL drivers/clk/qcom/clk-qcom 0x766e9f87 clk_regmap_div_ro_ops +EXPORT_SYMBOL_GPL drivers/clk/qcom/clk-qcom 0x787e8234 qcom_find_freq +EXPORT_SYMBOL_GPL drivers/clk/qcom/clk-qcom 0x78b81ea0 clk_rcg2_floor_ops +EXPORT_SYMBOL_GPL drivers/clk/qcom/clk-qcom 0x7a7d500f clk_fabia_pll_configure +EXPORT_SYMBOL_GPL drivers/clk/qcom/clk-qcom 0x7e66fd9e clk_regmap_mux_div_ops +EXPORT_SYMBOL_GPL drivers/clk/qcom/clk-qcom 0x8b1042e6 qcom_cc_probe +EXPORT_SYMBOL_GPL drivers/clk/qcom/clk-qcom 0x8b55eac4 clk_dyn_rcg_ops +EXPORT_SYMBOL_GPL drivers/clk/qcom/clk-qcom 0x91c41c9f clk_edp_pixel_ops +EXPORT_SYMBOL_GPL drivers/clk/qcom/clk-qcom 0x97488818 clk_rcg_pixel_ops +EXPORT_SYMBOL_GPL drivers/clk/qcom/clk-qcom 0x9c8854a1 clk_alpha_pll_lucid_ops +EXPORT_SYMBOL_GPL drivers/clk/qcom/clk-qcom 0x9d909edd clk_gfx3d_ops +EXPORT_SYMBOL_GPL drivers/clk/qcom/clk-qcom 0x9e33f365 clk_trion_pll_postdiv_ops +EXPORT_SYMBOL_GPL drivers/clk/qcom/clk-qcom 0x9f241baa clk_rcg_ops +EXPORT_SYMBOL_GPL drivers/clk/qcom/clk-qcom 0xa30a653c qcom_cc_really_probe +EXPORT_SYMBOL_GPL drivers/clk/qcom/clk-qcom 0xa6f08f9a clk_trion_fixed_pll_ops +EXPORT_SYMBOL_GPL drivers/clk/qcom/clk-qcom 0xaa403ee8 clk_alpha_pll_huayra_ops +EXPORT_SYMBOL_GPL drivers/clk/qcom/clk-qcom 0xadc2751b clk_alpha_pll_postdiv_fabia_ops +EXPORT_SYMBOL_GPL drivers/clk/qcom/clk-qcom 0xb09ba7ac qcom_find_src_index +EXPORT_SYMBOL_GPL drivers/clk/qcom/clk-qcom 0xba961aa7 clk_dp_ops +EXPORT_SYMBOL_GPL drivers/clk/qcom/clk-qcom 0xc150d434 clk_alpha_pll_postdiv_ro_ops +EXPORT_SYMBOL_GPL drivers/clk/qcom/clk-qcom 0xc5bdfa11 clk_byte2_ops +EXPORT_SYMBOL_GPL drivers/clk/qcom/clk-qcom 0xce340fb8 clk_alpha_pll_regs +EXPORT_SYMBOL_GPL drivers/clk/qcom/clk-qcom 0xcf422970 clk_rcg_bypass_ops +EXPORT_SYMBOL_GPL drivers/clk/qcom/clk-qcom 0xd7ab6782 clk_alpha_pll_postdiv_lucid_ops +EXPORT_SYMBOL_GPL drivers/clk/qcom/clk-qcom 0xdc014e02 qcom_cc_register_rcg_dfs +EXPORT_SYMBOL_GPL drivers/clk/qcom/clk-qcom 0xdffcf609 qcom_cc_register_board_clk +EXPORT_SYMBOL_GPL drivers/clk/qcom/clk-qcom 0xe6e14638 clk_alpha_pll_fabia_ops +EXPORT_SYMBOL_GPL drivers/clk/qcom/clk-qcom 0xe816a036 clk_pll_configure_sr +EXPORT_SYMBOL_GPL drivers/clk/qcom/clk-qcom 0xec88bfe0 clk_lucid_pll_configure +EXPORT_SYMBOL_GPL drivers/clk/sprd/clk-sprd 0x096aa17b sprd_div_helper_recalc_rate +EXPORT_SYMBOL_GPL drivers/clk/sprd/clk-sprd 0x0a3ec278 sprd_gate_ops +EXPORT_SYMBOL_GPL drivers/clk/sprd/clk-sprd 0x14212841 sprd_div_ops +EXPORT_SYMBOL_GPL drivers/clk/sprd/clk-sprd 0x1ca519ca sprd_pll_ops +EXPORT_SYMBOL_GPL drivers/clk/sprd/clk-sprd 0x37e40b55 sprd_clk_regmap_init +EXPORT_SYMBOL_GPL drivers/clk/sprd/clk-sprd 0x4cad4f51 sprd_div_helper_round_rate +EXPORT_SYMBOL_GPL drivers/clk/sprd/clk-sprd 0x4f93d75f sprd_mux_helper_get_parent +EXPORT_SYMBOL_GPL drivers/clk/sprd/clk-sprd 0x597905e4 sprd_sc_gate_ops +EXPORT_SYMBOL_GPL drivers/clk/sprd/clk-sprd 0x6b8639b9 sprd_div_helper_set_rate +EXPORT_SYMBOL_GPL drivers/clk/sprd/clk-sprd 0x911aa4a0 sprd_mux_ops +EXPORT_SYMBOL_GPL drivers/clk/sprd/clk-sprd 0x9925914a sprd_mux_helper_set_parent +EXPORT_SYMBOL_GPL drivers/clk/sprd/clk-sprd 0xaf833f64 sprd_pll_sc_gate_ops +EXPORT_SYMBOL_GPL drivers/clk/sprd/clk-sprd 0xddecd266 sprd_clk_probe +EXPORT_SYMBOL_GPL drivers/clk/sprd/clk-sprd 0xe305cb73 sprd_comp_ops +EXPORT_SYMBOL_GPL drivers/counter/counter 0x01aab51b counter_count_direction_str +EXPORT_SYMBOL_GPL drivers/counter/counter 0x28935163 counter_unregister +EXPORT_SYMBOL_GPL drivers/counter/counter 0x2b9eee17 counter_signal_enum_available_read +EXPORT_SYMBOL_GPL drivers/counter/counter 0x2d801de0 counter_device_enum_read +EXPORT_SYMBOL_GPL drivers/counter/counter 0x41f34d63 counter_device_enum_write +EXPORT_SYMBOL_GPL drivers/counter/counter 0x48e99ed5 counter_signal_enum_write +EXPORT_SYMBOL_GPL drivers/counter/counter 0x4a874253 devm_counter_unregister +EXPORT_SYMBOL_GPL drivers/counter/counter 0x529f425c counter_register +EXPORT_SYMBOL_GPL drivers/counter/counter 0x570aa1a6 counter_count_enum_read +EXPORT_SYMBOL_GPL drivers/counter/counter 0x5d2a8e52 counter_device_enum_available_read +EXPORT_SYMBOL_GPL drivers/counter/counter 0x6028e7bc counter_signal_enum_read +EXPORT_SYMBOL_GPL drivers/counter/counter 0x67d4b1e9 counter_count_enum_available_read +EXPORT_SYMBOL_GPL drivers/counter/counter 0x71fe037d devm_counter_register +EXPORT_SYMBOL_GPL drivers/counter/counter 0xb3efce61 counter_count_enum_write +EXPORT_SYMBOL_GPL drivers/counter/counter 0xee526d0f counter_count_mode_str +EXPORT_SYMBOL_GPL drivers/crypto/ccp/ccp 0x04773b60 ccp_present +EXPORT_SYMBOL_GPL drivers/crypto/ccp/ccp 0x3a1a3979 ccp_version +EXPORT_SYMBOL_GPL drivers/crypto/ccp/ccp 0x49705eff ccp_enqueue_cmd +EXPORT_SYMBOL_GPL drivers/crypto/hisilicon/hisi_qm 0x00d8f6d8 hisi_acc_sg_buf_unmap +EXPORT_SYMBOL_GPL drivers/crypto/hisilicon/hisi_qm 0x05f133cf hisi_qm_debug_regs_clear +EXPORT_SYMBOL_GPL drivers/crypto/hisilicon/hisi_qm 0x14d50b78 hisi_qm_dev_err_uninit +EXPORT_SYMBOL_GPL drivers/crypto/hisilicon/hisi_qm 0x1ba1739c hisi_qm_get_vft +EXPORT_SYMBOL_GPL drivers/crypto/hisilicon/hisi_qm 0x23cea267 hisi_qm_dev_err_detected +EXPORT_SYMBOL_GPL drivers/crypto/hisilicon/hisi_qm 0x2f5d0694 hisi_qm_start_qp +EXPORT_SYMBOL_GPL drivers/crypto/hisilicon/hisi_qm 0x3ed568b6 hisi_qm_reset_done +EXPORT_SYMBOL_GPL drivers/crypto/hisilicon/hisi_qm 0x436a471e hisi_qm_free_qps +EXPORT_SYMBOL_GPL drivers/crypto/hisilicon/hisi_qm 0x4e18339d hisi_qm_sriov_enable +EXPORT_SYMBOL_GPL drivers/crypto/hisilicon/hisi_qm 0x5234284c hisi_qm_init +EXPORT_SYMBOL_GPL drivers/crypto/hisilicon/hisi_qm 0x534e527f hisi_qm_alloc_qps_node +EXPORT_SYMBOL_GPL drivers/crypto/hisilicon/hisi_qm 0x805284cc hisi_qm_dev_slot_reset +EXPORT_SYMBOL_GPL drivers/crypto/hisilicon/hisi_qm 0x80f56022 hisi_qm_start +EXPORT_SYMBOL_GPL drivers/crypto/hisilicon/hisi_qm 0x87bab07a hisi_qm_create_qp +EXPORT_SYMBOL_GPL drivers/crypto/hisilicon/hisi_qm 0x89020d61 hisi_qp_send +EXPORT_SYMBOL_GPL drivers/crypto/hisilicon/hisi_qm 0x92799cb0 hisi_acc_create_sgl_pool +EXPORT_SYMBOL_GPL drivers/crypto/hisilicon/hisi_qm 0x95c60ceb hisi_qm_sriov_configure +EXPORT_SYMBOL_GPL drivers/crypto/hisilicon/hisi_qm 0xad0bf83f hisi_qm_stop +EXPORT_SYMBOL_GPL drivers/crypto/hisilicon/hisi_qm 0xb1201df8 hisi_acc_free_sgl_pool +EXPORT_SYMBOL_GPL drivers/crypto/hisilicon/hisi_qm 0xba505e08 hisi_qm_dev_err_init +EXPORT_SYMBOL_GPL drivers/crypto/hisilicon/hisi_qm 0xbf6fa9c2 hisi_qm_sriov_disable +EXPORT_SYMBOL_GPL drivers/crypto/hisilicon/hisi_qm 0xc4aba1a4 hisi_acc_sg_buf_map_to_hw_sgl +EXPORT_SYMBOL_GPL drivers/crypto/hisilicon/hisi_qm 0xcce55180 hisi_qm_get_free_qp_num +EXPORT_SYMBOL_GPL drivers/crypto/hisilicon/hisi_qm 0xd76db01a hisi_qm_uninit +EXPORT_SYMBOL_GPL drivers/crypto/hisilicon/hisi_qm 0xed1a3491 hisi_qm_reset_prepare +EXPORT_SYMBOL_GPL drivers/crypto/hisilicon/hisi_qm 0xf4302396 hisi_qm_release_qp +EXPORT_SYMBOL_GPL drivers/crypto/hisilicon/hisi_qm 0xfa0110df hisi_qm_stop_qp +EXPORT_SYMBOL_GPL drivers/crypto/hisilicon/hisi_qm 0xfea89e75 hisi_qm_debug_init +EXPORT_SYMBOL_GPL drivers/crypto/marvell/octeontx/octeontx-cpt 0x32e43048 otx_cpt_uc_supports_eng_type +EXPORT_SYMBOL_GPL drivers/crypto/marvell/octeontx/octeontx-cpt 0x7c0de21b otx_cpt_eng_grp_has_eng_type +EXPORT_SYMBOL_GPL drivers/dax/device_dax 0xeea096c1 dev_dax_probe +EXPORT_SYMBOL_GPL drivers/dax/pmem/dax_pmem_core 0x03e90425 __dax_pmem_probe +EXPORT_SYMBOL_GPL drivers/dma/dw-edma/dw-edma 0x6ef7347c dw_edma_probe +EXPORT_SYMBOL_GPL drivers/dma/dw-edma/dw-edma 0xd44bcd07 dw_edma_remove +EXPORT_SYMBOL_GPL drivers/dma/dw/dw_dmac_core 0x43ec01f9 dw_dma_filter +EXPORT_SYMBOL_GPL drivers/dma/dw/dw_dmac_core 0x60fd3786 idma32_dma_probe +EXPORT_SYMBOL_GPL drivers/dma/dw/dw_dmac_core 0x7043b693 do_dw_dma_disable +EXPORT_SYMBOL_GPL drivers/dma/dw/dw_dmac_core 0x850cff1c do_dw_dma_enable +EXPORT_SYMBOL_GPL drivers/dma/dw/dw_dmac_core 0xacfcf524 dw_dma_remove +EXPORT_SYMBOL_GPL drivers/dma/dw/dw_dmac_core 0xc7a931ce dw_dma_probe +EXPORT_SYMBOL_GPL drivers/dma/dw/dw_dmac_core 0xd45c6880 idma32_dma_remove +EXPORT_SYMBOL_GPL drivers/dma/fsl-dpaa2-qdma/dpdmai 0x05fe78bf dpdmai_get_rx_queue +EXPORT_SYMBOL_GPL drivers/dma/fsl-dpaa2-qdma/dpdmai 0x0cf99c2e dpdmai_destroy +EXPORT_SYMBOL_GPL drivers/dma/fsl-dpaa2-qdma/dpdmai 0x2012e188 dpdmai_open +EXPORT_SYMBOL_GPL drivers/dma/fsl-dpaa2-qdma/dpdmai 0x37ed1e8c dpdmai_close +EXPORT_SYMBOL_GPL drivers/dma/fsl-dpaa2-qdma/dpdmai 0x3b38cb26 dpdmai_get_tx_queue +EXPORT_SYMBOL_GPL drivers/dma/fsl-dpaa2-qdma/dpdmai 0x5e0edaef dpdmai_set_rx_queue +EXPORT_SYMBOL_GPL drivers/dma/fsl-dpaa2-qdma/dpdmai 0x71f91caa dpdmai_get_attributes +EXPORT_SYMBOL_GPL drivers/dma/fsl-dpaa2-qdma/dpdmai 0x8afde869 dpdmai_disable +EXPORT_SYMBOL_GPL drivers/dma/fsl-dpaa2-qdma/dpdmai 0x9b4047c7 dpdmai_reset +EXPORT_SYMBOL_GPL drivers/dma/fsl-dpaa2-qdma/dpdmai 0xd6d5485b dpdmai_enable +EXPORT_SYMBOL_GPL drivers/dma/fsl-edma-common 0x0a33d17a fsl_edma_tx_status +EXPORT_SYMBOL_GPL drivers/dma/fsl-edma-common 0x1d4990d3 fsl_edma_prep_slave_sg +EXPORT_SYMBOL_GPL drivers/dma/fsl-edma-common 0x2225b34c fsl_edma_free_chan_resources +EXPORT_SYMBOL_GPL drivers/dma/fsl-edma-common 0x2be2c0f8 fsl_edma_terminate_all +EXPORT_SYMBOL_GPL drivers/dma/fsl-edma-common 0x3194f09b fsl_edma_resume +EXPORT_SYMBOL_GPL drivers/dma/fsl-edma-common 0x83e172c9 fsl_edma_setup_regs +EXPORT_SYMBOL_GPL drivers/dma/fsl-edma-common 0x8841dca5 fsl_edma_disable_request +EXPORT_SYMBOL_GPL drivers/dma/fsl-edma-common 0x8a4c342c fsl_edma_free_desc +EXPORT_SYMBOL_GPL drivers/dma/fsl-edma-common 0x8bbef20a fsl_edma_slave_config +EXPORT_SYMBOL_GPL drivers/dma/fsl-edma-common 0x8d5f63e2 fsl_edma_prep_dma_cyclic +EXPORT_SYMBOL_GPL drivers/dma/fsl-edma-common 0x92228215 fsl_edma_xfer_desc +EXPORT_SYMBOL_GPL drivers/dma/fsl-edma-common 0xad1a6967 fsl_edma_chan_mux +EXPORT_SYMBOL_GPL drivers/dma/fsl-edma-common 0xe3ecdd27 fsl_edma_alloc_chan_resources +EXPORT_SYMBOL_GPL drivers/dma/fsl-edma-common 0xe3f31085 fsl_edma_issue_pending +EXPORT_SYMBOL_GPL drivers/dma/fsl-edma-common 0xe81c440c fsl_edma_pause +EXPORT_SYMBOL_GPL drivers/dma/fsl-edma-common 0xf463f2c0 fsl_edma_cleanup_vchan +EXPORT_SYMBOL_GPL drivers/dma/qcom/hdma_mgmt 0x4fe16661 hidma_mgmt_init_sys +EXPORT_SYMBOL_GPL drivers/dma/qcom/hdma_mgmt 0x81398870 hidma_mgmt_setup +EXPORT_SYMBOL_GPL drivers/firewire/firewire-core 0xe86fb5c7 fw_card_release +EXPORT_SYMBOL_GPL drivers/firmware/arm_scpi 0x7e3e0f55 get_scpi_ops +EXPORT_SYMBOL_GPL drivers/firmware/stratix10-svc 0x0e7b7015 stratix10_svc_done +EXPORT_SYMBOL_GPL drivers/firmware/stratix10-svc 0x41d5ad1c stratix10_svc_allocate_memory +EXPORT_SYMBOL_GPL drivers/firmware/stratix10-svc 0x50f5368a stratix10_svc_free_channel +EXPORT_SYMBOL_GPL drivers/firmware/stratix10-svc 0x595b630e stratix10_svc_free_memory +EXPORT_SYMBOL_GPL drivers/firmware/stratix10-svc 0x69c86836 stratix10_svc_request_channel_byname +EXPORT_SYMBOL_GPL drivers/firmware/stratix10-svc 0xd3df684d stratix10_svc_send +EXPORT_SYMBOL_GPL drivers/fpga/altera-pr-ip-core 0xa7c17de5 alt_pr_register +EXPORT_SYMBOL_GPL drivers/fpga/altera-pr-ip-core 0xe6bd6f15 alt_pr_unregister +EXPORT_SYMBOL_GPL drivers/fpga/dfl 0x0abb0f7a dfl_fpga_dev_ops_unregister +EXPORT_SYMBOL_GPL drivers/fpga/dfl 0x2285824f dfl_fpga_feature_devs_remove +EXPORT_SYMBOL_GPL drivers/fpga/dfl 0x397c297f dfl_fpga_dev_ops_register +EXPORT_SYMBOL_GPL drivers/fpga/dfl 0x45cc8437 dfl_fpga_feature_devs_enumerate +EXPORT_SYMBOL_GPL drivers/fpga/dfl 0x51e66590 dfl_fpga_enum_info_alloc +EXPORT_SYMBOL_GPL drivers/fpga/dfl 0x69b33771 __dfl_fpga_cdev_find_port +EXPORT_SYMBOL_GPL drivers/fpga/dfl 0x71e8640a dfl_fpga_cdev_config_ports_pf +EXPORT_SYMBOL_GPL drivers/fpga/dfl 0x74d93be8 dfl_fpga_cdev_assign_port +EXPORT_SYMBOL_GPL drivers/fpga/dfl 0x98453ab8 dfl_fpga_dev_feature_uinit +EXPORT_SYMBOL_GPL drivers/fpga/dfl 0xa088cf37 dfl_fpga_cdev_release_port +EXPORT_SYMBOL_GPL drivers/fpga/dfl 0xa2caede3 dfl_fpga_check_port_id +EXPORT_SYMBOL_GPL drivers/fpga/dfl 0xcd08a660 dfl_fpga_port_ops_put +EXPORT_SYMBOL_GPL drivers/fpga/dfl 0xd247d76e dfl_fpga_enum_info_free +EXPORT_SYMBOL_GPL drivers/fpga/dfl 0xd59a4a11 dfl_fpga_dev_feature_init +EXPORT_SYMBOL_GPL drivers/fpga/dfl 0xd9ae62c4 dfl_fpga_enum_info_add_dfl +EXPORT_SYMBOL_GPL drivers/fpga/dfl 0xe1eb8bf3 dfl_fpga_cdev_config_ports_vf +EXPORT_SYMBOL_GPL drivers/fpga/dfl 0xe37cd2b9 dfl_fpga_port_ops_get +EXPORT_SYMBOL_GPL drivers/fpga/dfl 0xe57d26ce dfl_fpga_port_ops_add +EXPORT_SYMBOL_GPL drivers/fpga/dfl 0xea0696ad dfl_fpga_port_ops_del +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 0x1fc787ea fpga_bridge_free +EXPORT_SYMBOL_GPL drivers/fpga/fpga-bridge 0x2c8167cf fpga_bridges_disable +EXPORT_SYMBOL_GPL drivers/fpga/fpga-bridge 0x3689ceab of_fpga_bridge_get +EXPORT_SYMBOL_GPL drivers/fpga/fpga-bridge 0x4b6ede99 fpga_bridge_enable +EXPORT_SYMBOL_GPL drivers/fpga/fpga-bridge 0x513c3585 fpga_bridge_create +EXPORT_SYMBOL_GPL drivers/fpga/fpga-bridge 0x7123dd3f fpga_bridge_disable +EXPORT_SYMBOL_GPL drivers/fpga/fpga-bridge 0x862c7794 of_fpga_bridge_get_to_list +EXPORT_SYMBOL_GPL drivers/fpga/fpga-bridge 0x9bdf73ba fpga_bridge_put +EXPORT_SYMBOL_GPL drivers/fpga/fpga-bridge 0xb8e86a9d devm_fpga_bridge_create +EXPORT_SYMBOL_GPL drivers/fpga/fpga-bridge 0xc3e7eff7 fpga_bridge_get_to_list +EXPORT_SYMBOL_GPL drivers/fpga/fpga-bridge 0xc4bf73b6 fpga_bridge_register +EXPORT_SYMBOL_GPL drivers/fpga/fpga-bridge 0xcd17cb3e fpga_bridge_unregister +EXPORT_SYMBOL_GPL drivers/fpga/fpga-bridge 0xdbbbea09 fpga_bridge_get +EXPORT_SYMBOL_GPL drivers/fpga/fpga-mgr 0x12276a13 fpga_mgr_load +EXPORT_SYMBOL_GPL drivers/fpga/fpga-mgr 0x3dfd04ba fpga_mgr_unlock +EXPORT_SYMBOL_GPL drivers/fpga/fpga-mgr 0x50062fa5 fpga_mgr_free +EXPORT_SYMBOL_GPL drivers/fpga/fpga-mgr 0x558cdcb7 devm_fpga_mgr_create +EXPORT_SYMBOL_GPL drivers/fpga/fpga-mgr 0x5c0e7195 fpga_mgr_lock +EXPORT_SYMBOL_GPL drivers/fpga/fpga-mgr 0x5d164e55 fpga_mgr_put +EXPORT_SYMBOL_GPL drivers/fpga/fpga-mgr 0x621b87cf fpga_mgr_create +EXPORT_SYMBOL_GPL drivers/fpga/fpga-mgr 0x7f1f2746 fpga_mgr_unregister +EXPORT_SYMBOL_GPL drivers/fpga/fpga-mgr 0xa3ccb096 fpga_mgr_get +EXPORT_SYMBOL_GPL drivers/fpga/fpga-mgr 0xb418cda8 of_fpga_mgr_get +EXPORT_SYMBOL_GPL drivers/fpga/fpga-mgr 0xd050d125 fpga_mgr_register +EXPORT_SYMBOL_GPL drivers/fpga/fpga-mgr 0xd994d97d fpga_image_info_alloc +EXPORT_SYMBOL_GPL drivers/fpga/fpga-mgr 0xfcde7db2 fpga_image_info_free +EXPORT_SYMBOL_GPL drivers/fpga/fpga-region 0x645b7996 fpga_region_create +EXPORT_SYMBOL_GPL drivers/fpga/fpga-region 0x6e3e556c fpga_region_program_fpga +EXPORT_SYMBOL_GPL drivers/fpga/fpga-region 0x7b5b75fa fpga_region_unregister +EXPORT_SYMBOL_GPL drivers/fpga/fpga-region 0xb7d0ee37 fpga_region_class_find +EXPORT_SYMBOL_GPL drivers/fpga/fpga-region 0xb986d3fc devm_fpga_region_create +EXPORT_SYMBOL_GPL drivers/fpga/fpga-region 0xe0fda1a3 fpga_region_register +EXPORT_SYMBOL_GPL drivers/fpga/fpga-region 0xf1db4d19 fpga_region_free +EXPORT_SYMBOL_GPL drivers/fsi/fsi-core 0x08397266 fsi_get_new_minor +EXPORT_SYMBOL_GPL drivers/fsi/fsi-core 0x0ebdbcef fsi_master_rescan +EXPORT_SYMBOL_GPL drivers/fsi/fsi-core 0x312abce0 fsi_device_read +EXPORT_SYMBOL_GPL drivers/fsi/fsi-core 0x33d8275f fsi_device_write +EXPORT_SYMBOL_GPL drivers/fsi/fsi-core 0x3a93847e fsi_slave_claim_range +EXPORT_SYMBOL_GPL drivers/fsi/fsi-core 0x5a57d574 fsi_free_minor +EXPORT_SYMBOL_GPL drivers/fsi/fsi-core 0x72387268 fsi_cdev_type +EXPORT_SYMBOL_GPL drivers/fsi/fsi-core 0x78060f23 fsi_slave_read +EXPORT_SYMBOL_GPL drivers/fsi/fsi-core 0xac7bd6a8 fsi_master_unregister +EXPORT_SYMBOL_GPL drivers/fsi/fsi-core 0xaeb95d96 fsi_driver_unregister +EXPORT_SYMBOL_GPL drivers/fsi/fsi-core 0xb2663cc5 fsi_bus_type +EXPORT_SYMBOL_GPL drivers/fsi/fsi-core 0xbd958e6f fsi_master_register +EXPORT_SYMBOL_GPL drivers/fsi/fsi-core 0xbf23cd75 fsi_driver_register +EXPORT_SYMBOL_GPL drivers/fsi/fsi-core 0xce22aee2 fsi_slave_release_range +EXPORT_SYMBOL_GPL drivers/fsi/fsi-core 0xd942f235 fsi_slave_write +EXPORT_SYMBOL_GPL drivers/fsi/fsi-occ 0x0ca577f9 fsi_occ_submit +EXPORT_SYMBOL_GPL drivers/fsi/fsi-sbefifo 0x93cf62f9 sbefifo_parse_status +EXPORT_SYMBOL_GPL drivers/fsi/fsi-sbefifo 0x9ac41344 sbefifo_submit +EXPORT_SYMBOL_GPL drivers/gnss/gnss 0x78a232f1 gnss_put_device +EXPORT_SYMBOL_GPL drivers/gnss/gnss 0x8ffc9496 gnss_register_device +EXPORT_SYMBOL_GPL drivers/gnss/gnss 0x96374d65 gnss_deregister_device +EXPORT_SYMBOL_GPL drivers/gnss/gnss 0xa64ae10d gnss_insert_raw +EXPORT_SYMBOL_GPL drivers/gnss/gnss 0xb987fe97 gnss_allocate_device +EXPORT_SYMBOL_GPL drivers/gnss/gnss-serial 0x3c731b0e gnss_serial_allocate +EXPORT_SYMBOL_GPL drivers/gnss/gnss-serial 0x5c29480f gnss_serial_register +EXPORT_SYMBOL_GPL drivers/gnss/gnss-serial 0x61acf3f0 gnss_serial_deregister +EXPORT_SYMBOL_GPL drivers/gnss/gnss-serial 0x78b5064a gnss_serial_pm_ops +EXPORT_SYMBOL_GPL drivers/gnss/gnss-serial 0xf4dc9f7f gnss_serial_free +EXPORT_SYMBOL_GPL drivers/gpio/gpio-max730x 0x655b0773 __max730x_probe +EXPORT_SYMBOL_GPL drivers/gpio/gpio-max730x 0xcdbbc844 __max730x_remove +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 0x56027333 analogix_dp_bind +EXPORT_SYMBOL_GPL drivers/gpu/drm/bridge/analogix/analogix_dp 0x8c533557 analogix_dp_start_crc +EXPORT_SYMBOL_GPL drivers/gpu/drm/bridge/analogix/analogix_dp 0xc2be081e analogix_dp_probe +EXPORT_SYMBOL_GPL drivers/gpu/drm/bridge/analogix/analogix_dp 0xc4123daf analogix_dp_suspend +EXPORT_SYMBOL_GPL drivers/gpu/drm/bridge/analogix/analogix_dp 0xd25e6f6e analogix_dp_stop_crc +EXPORT_SYMBOL_GPL drivers/gpu/drm/bridge/analogix/analogix_dp 0xe1167211 analogix_dp_unbind +EXPORT_SYMBOL_GPL drivers/gpu/drm/bridge/analogix/analogix_dp 0xe2113f13 analogix_dp_remove +EXPORT_SYMBOL_GPL drivers/gpu/drm/bridge/analogix/analogix_dp 0xf7e43d5b analogix_dp_resume +EXPORT_SYMBOL_GPL drivers/gpu/drm/bridge/synopsys/dw-hdmi 0x09340e05 dw_hdmi_set_channel_count +EXPORT_SYMBOL_GPL drivers/gpu/drm/bridge/synopsys/dw-hdmi 0x094f6fc5 dw_hdmi_phy_i2c_set_addr +EXPORT_SYMBOL_GPL drivers/gpu/drm/bridge/synopsys/dw-hdmi 0x1461e227 dw_hdmi_set_channel_status +EXPORT_SYMBOL_GPL drivers/gpu/drm/bridge/synopsys/dw-hdmi 0x157e02b6 dw_hdmi_phy_reset +EXPORT_SYMBOL_GPL drivers/gpu/drm/bridge/synopsys/dw-hdmi 0x2d1c0e80 dw_hdmi_setup_rx_sense +EXPORT_SYMBOL_GPL drivers/gpu/drm/bridge/synopsys/dw-hdmi 0x2fac9436 dw_hdmi_set_channel_allocation +EXPORT_SYMBOL_GPL drivers/gpu/drm/bridge/synopsys/dw-hdmi 0x316212a8 dw_hdmi_unbind +EXPORT_SYMBOL_GPL drivers/gpu/drm/bridge/synopsys/dw-hdmi 0x3d234a3c dw_hdmi_probe +EXPORT_SYMBOL_GPL drivers/gpu/drm/bridge/synopsys/dw-hdmi 0x42926f4a dw_hdmi_resume +EXPORT_SYMBOL_GPL drivers/gpu/drm/bridge/synopsys/dw-hdmi 0x4a9b174f dw_hdmi_remove +EXPORT_SYMBOL_GPL drivers/gpu/drm/bridge/synopsys/dw-hdmi 0x6712b5a7 dw_hdmi_phy_gen2_txpwron +EXPORT_SYMBOL_GPL drivers/gpu/drm/bridge/synopsys/dw-hdmi 0x7d8a3aee dw_hdmi_phy_i2c_write +EXPORT_SYMBOL_GPL drivers/gpu/drm/bridge/synopsys/dw-hdmi 0x822671f9 dw_hdmi_set_high_tmds_clock_ratio +EXPORT_SYMBOL_GPL drivers/gpu/drm/bridge/synopsys/dw-hdmi 0x8dcd6f43 dw_hdmi_set_sample_rate +EXPORT_SYMBOL_GPL drivers/gpu/drm/bridge/synopsys/dw-hdmi 0x9411a1b8 dw_hdmi_bind +EXPORT_SYMBOL_GPL drivers/gpu/drm/bridge/synopsys/dw-hdmi 0x9b44a60b dw_hdmi_phy_gen2_pddq +EXPORT_SYMBOL_GPL drivers/gpu/drm/bridge/synopsys/dw-hdmi 0xce27012a dw_hdmi_audio_disable +EXPORT_SYMBOL_GPL drivers/gpu/drm/bridge/synopsys/dw-hdmi 0xd4e5ef3d dw_hdmi_set_plugged_cb +EXPORT_SYMBOL_GPL drivers/gpu/drm/bridge/synopsys/dw-hdmi 0xd6968220 dw_hdmi_phy_setup_hpd +EXPORT_SYMBOL_GPL drivers/gpu/drm/bridge/synopsys/dw-hdmi 0xd8fe547b dw_hdmi_audio_enable +EXPORT_SYMBOL_GPL drivers/gpu/drm/bridge/synopsys/dw-hdmi 0xdafa1790 dw_hdmi_phy_read_hpd +EXPORT_SYMBOL_GPL drivers/gpu/drm/bridge/synopsys/dw-hdmi 0xf5922009 dw_hdmi_phy_update_hpd +EXPORT_SYMBOL_GPL drivers/gpu/drm/bridge/synopsys/dw-mipi-dsi 0x0d667204 dw_mipi_dsi_unbind +EXPORT_SYMBOL_GPL drivers/gpu/drm/bridge/synopsys/dw-mipi-dsi 0x41361ae4 dw_mipi_dsi_set_slave +EXPORT_SYMBOL_GPL drivers/gpu/drm/bridge/synopsys/dw-mipi-dsi 0x42ac3b2e dw_mipi_dsi_remove +EXPORT_SYMBOL_GPL drivers/gpu/drm/bridge/synopsys/dw-mipi-dsi 0x54360398 dw_mipi_dsi_probe +EXPORT_SYMBOL_GPL drivers/gpu/drm/bridge/synopsys/dw-mipi-dsi 0xdb6c6e0f dw_mipi_dsi_bind +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm 0x01be860d drm_gem_shmem_get_pages_sgt +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm 0x0e8b4c7e drm_of_component_match_add +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm 0x12c7f1a9 drm_bridge_detect +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm 0x1a5eadc8 drm_gem_cma_vm_ops +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm 0x1d6ec267 drm_display_mode_to_videomode +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm 0x241f7869 drm_crtc_add_crc_entry +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm 0x2c90448c drm_bridge_hpd_notify +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm 0x332fd663 drm_class_device_unregister +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm 0x3749d045 drm_gem_shmem_free_object +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm 0x399edd9e drm_bridge_hpd_enable +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm 0x3fae2969 drm_gem_cma_prime_import_sg_table +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm 0x54217d10 drm_bridge_hpd_disable +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm 0x567cf503 drm_class_device_register +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm 0x5699c6c1 drm_gem_dumb_map_offset +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm 0x61c6d6bf drm_gem_cma_dumb_create +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm 0x68b7858d drm_display_mode_from_videomode +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm 0x6a74b88c drm_gem_cma_mmap +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm 0x75531c23 drm_gem_shmem_prime_import_sg_table +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm 0x7a50f5f2 drm_hdcp_check_ksvs_revoked +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm 0x84408044 drmm_kstrdup +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm 0x8c1986a8 drm_gem_cma_dumb_create_internal +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm 0x8d076933 drm_gem_shmem_create +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm 0x92970b4c drm_gem_shmem_dumb_create +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm 0x9de4121c drm_do_get_edid +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm 0x9f649c80 drm_gem_cma_prime_get_sg_table +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm 0xad885165 drm_bus_flags_from_videomode +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm 0xc3e8dc64 drm_of_lvds_get_dual_link_pixel_order +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm 0xc43cf692 drm_gem_shmem_mmap +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm 0xc7814c66 drm_bridge_get_edid +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm 0xcd287621 drm_gem_cma_prime_vunmap +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm 0xcd745a0c drm_gem_cma_prime_vmap +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm 0xcdcb7c71 drm_gem_shmem_get_sg_table +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm 0xcf84b4f1 of_get_drm_display_mode +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm 0xdb90f299 drm_gem_cma_create +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm 0xeb431abd drm_bridge_get_modes +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm 0xf149ca41 drm_of_find_panel_or_bridge +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm 0xf1f5e3eb drm_gem_cma_free_object +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm 0xf452530f drm_gem_cma_prime_mmap +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm 0xf5dc13f4 drm_of_encoder_active_endpoint +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm 0xf81cc991 drm_get_unmapped_area +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm_kms_helper 0x325dcdad drm_gem_fb_init_with_funcs +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm_kms_helper 0x3d07711a drm_bridge_connector_disable_hpd +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm_kms_helper 0x7579cddb drm_gem_fb_create_with_funcs +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm_kms_helper 0x82047549 drm_gem_fb_create +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm_kms_helper 0xa7b8294e drm_bridge_connector_init +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm_kms_helper 0xae8018d1 drm_fb_cma_get_gem_obj +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm_kms_helper 0xb4eb4fe3 drm_gem_fb_get_obj +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm_kms_helper 0xbafaf137 drm_bridge_connector_enable_hpd +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm_kms_helper 0xc5f3b463 drm_gem_fb_afbc_init +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm_kms_helper 0xd38c1da4 drm_gem_fb_create_with_dirty +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm_kms_helper 0xf18bbc14 drm_fb_cma_get_gem_addr +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm_kms_helper 0xf373bf86 drm_gem_fb_prepare_fb +EXPORT_SYMBOL_GPL drivers/gpu/drm/meson/meson-drm 0x298133f4 meson_vclk_setup +EXPORT_SYMBOL_GPL drivers/gpu/drm/meson/meson-drm 0x2c73cfcf meson_venc_hdmi_venc_repeat +EXPORT_SYMBOL_GPL drivers/gpu/drm/meson/meson-drm 0x2e6fa815 meson_vclk_vic_supported_freq +EXPORT_SYMBOL_GPL drivers/gpu/drm/meson/meson-drm 0x450c228b meson_vclk_dmt_supported_freq +EXPORT_SYMBOL_GPL drivers/gpu/drm/meson/meson-drm 0x54d01e45 meson_venc_hdmi_mode_set +EXPORT_SYMBOL_GPL drivers/gpu/drm/meson/meson-drm 0xab5bee2f meson_venc_hdmi_supported_vic +EXPORT_SYMBOL_GPL drivers/gpu/drm/meson/meson-drm 0xfd34888c meson_venc_hdmi_supported_mode +EXPORT_SYMBOL_GPL drivers/gpu/drm/pl111/pl111_drm 0x13a34f15 pl111_versatile_init +EXPORT_SYMBOL_GPL drivers/gpu/drm/rcar-du/rcar_cmm 0x7a48d6b2 rcar_cmm_setup +EXPORT_SYMBOL_GPL drivers/gpu/drm/rcar-du/rcar_cmm 0x8ea8ea4f rcar_cmm_disable +EXPORT_SYMBOL_GPL drivers/gpu/drm/rcar-du/rcar_cmm 0xa6539444 rcar_cmm_enable +EXPORT_SYMBOL_GPL drivers/gpu/drm/rcar-du/rcar_cmm 0xb6f1f73e rcar_cmm_init +EXPORT_SYMBOL_GPL drivers/gpu/drm/rcar-du/rcar_lvds 0x8841cc24 rcar_lvds_clk_disable +EXPORT_SYMBOL_GPL drivers/gpu/drm/rcar-du/rcar_lvds 0xf8805b10 rcar_lvds_clk_enable +EXPORT_SYMBOL_GPL drivers/gpu/drm/rcar-du/rcar_lvds 0xfe1df98e rcar_lvds_dual_link +EXPORT_SYMBOL_GPL drivers/gpu/drm/rockchip/rockchipdrm 0x7f2cfd19 vop_component_ops +EXPORT_SYMBOL_GPL drivers/gpu/drm/rockchip/rockchipdrm 0x8ef56dd4 rockchip_rgb_init +EXPORT_SYMBOL_GPL drivers/gpu/drm/rockchip/rockchipdrm 0xfead7585 rockchip_rgb_fini +EXPORT_SYMBOL_GPL drivers/gpu/drm/ttm/ttm 0x4452875f ttm_dma_unpopulate +EXPORT_SYMBOL_GPL drivers/gpu/drm/ttm/ttm 0xd8ce78e3 ttm_dma_populate +EXPORT_SYMBOL_GPL drivers/gpu/drm/ttm/ttm 0xe72a7ff9 ttm_dma_page_alloc_debugfs +EXPORT_SYMBOL_GPL drivers/greybus/greybus 0x00639cd8 __tracepoint_gb_hd_in +EXPORT_SYMBOL_GPL drivers/greybus/greybus 0x0442541b __tracepoint_gb_message_submit +EXPORT_SYMBOL_GPL drivers/greybus/greybus 0x0e448b7d gb_operation_sync_timeout +EXPORT_SYMBOL_GPL drivers/greybus/greybus 0x15d1942f greybus_disabled +EXPORT_SYMBOL_GPL drivers/greybus/greybus 0x1d9bb3ad greybus_deregister_driver +EXPORT_SYMBOL_GPL drivers/greybus/greybus 0x221d1dd1 gb_debugfs_get +EXPORT_SYMBOL_GPL drivers/greybus/greybus 0x249ee4f5 greybus_data_rcvd +EXPORT_SYMBOL_GPL drivers/greybus/greybus 0x2ccc9426 gb_connection_disable +EXPORT_SYMBOL_GPL drivers/greybus/greybus 0x372a23b7 gb_connection_enable +EXPORT_SYMBOL_GPL drivers/greybus/greybus 0x395774b1 gb_svc_intf_set_power_mode +EXPORT_SYMBOL_GPL drivers/greybus/greybus 0x3d52d107 __tracepoint_gb_hd_add +EXPORT_SYMBOL_GPL drivers/greybus/greybus 0x3e9d267a gb_connection_enable_tx +EXPORT_SYMBOL_GPL drivers/greybus/greybus 0x3ef75a08 __tracepoint_gb_hd_release +EXPORT_SYMBOL_GPL drivers/greybus/greybus 0x4797e6d4 gb_operation_get +EXPORT_SYMBOL_GPL drivers/greybus/greybus 0x501ec31e gb_connection_destroy +EXPORT_SYMBOL_GPL drivers/greybus/greybus 0x51d3d3e5 gb_connection_latency_tag_disable +EXPORT_SYMBOL_GPL drivers/greybus/greybus 0x56f7b8be gb_connection_latency_tag_enable +EXPORT_SYMBOL_GPL drivers/greybus/greybus 0x5ac9af41 gb_connection_disable_forced +EXPORT_SYMBOL_GPL drivers/greybus/greybus 0x5fba5c5c gb_connection_create +EXPORT_SYMBOL_GPL drivers/greybus/greybus 0x607e398c gb_connection_create_flags +EXPORT_SYMBOL_GPL drivers/greybus/greybus 0x6590442d gb_hd_put +EXPORT_SYMBOL_GPL drivers/greybus/greybus 0x6ca20798 gb_hd_output +EXPORT_SYMBOL_GPL drivers/greybus/greybus 0x72b26560 gb_connection_disable_rx +EXPORT_SYMBOL_GPL drivers/greybus/greybus 0x77a17f05 gb_operation_result +EXPORT_SYMBOL_GPL drivers/greybus/greybus 0x77bda8a2 greybus_message_sent +EXPORT_SYMBOL_GPL drivers/greybus/greybus 0x7a381f48 gb_operation_response_alloc +EXPORT_SYMBOL_GPL drivers/greybus/greybus 0x7ab445e5 gb_operation_request_send_sync_timeout +EXPORT_SYMBOL_GPL drivers/greybus/greybus 0x7aeb267e gb_operation_get_payload_size_max +EXPORT_SYMBOL_GPL drivers/greybus/greybus 0x81cd837d gb_operation_request_send +EXPORT_SYMBOL_GPL drivers/greybus/greybus 0x8a42aea3 gb_hd_shutdown +EXPORT_SYMBOL_GPL drivers/greybus/greybus 0x9862539e gb_hd_cport_release_reserved +EXPORT_SYMBOL_GPL drivers/greybus/greybus 0x99a9de55 gb_operation_create_flags +EXPORT_SYMBOL_GPL drivers/greybus/greybus 0xb827a5e2 gb_operation_unidirectional_timeout +EXPORT_SYMBOL_GPL drivers/greybus/greybus 0xbf0c7b08 gb_hd_del +EXPORT_SYMBOL_GPL drivers/greybus/greybus 0xc397c10a __tracepoint_gb_hd_del +EXPORT_SYMBOL_GPL drivers/greybus/greybus 0xc99bc5dd greybus_register_driver +EXPORT_SYMBOL_GPL drivers/greybus/greybus 0xcad47b1e gb_operation_put +EXPORT_SYMBOL_GPL drivers/greybus/greybus 0xcb8c92cd __tracepoint_gb_hd_create +EXPORT_SYMBOL_GPL drivers/greybus/greybus 0xdf50a794 gb_hd_create +EXPORT_SYMBOL_GPL drivers/greybus/greybus 0xec78723a gb_hd_add +EXPORT_SYMBOL_GPL drivers/greybus/greybus 0xf6ee928d gb_interface_request_mode_switch +EXPORT_SYMBOL_GPL drivers/greybus/greybus 0xf79d5c1d gb_connection_create_offloaded +EXPORT_SYMBOL_GPL drivers/greybus/greybus 0xf9dc3ecb gb_operation_cancel +EXPORT_SYMBOL_GPL drivers/greybus/greybus 0xfddb8a86 gb_hd_cport_reserve +EXPORT_SYMBOL_GPL drivers/hid/hid 0x031d4e6b hidraw_connect +EXPORT_SYMBOL_GPL drivers/hid/hid 0x05306b01 hid_destroy_device +EXPORT_SYMBOL_GPL drivers/hid/hid 0x05495392 hid_debug +EXPORT_SYMBOL_GPL drivers/hid/hid 0x09b54fa6 hid_connect +EXPORT_SYMBOL_GPL drivers/hid/hid 0x19d52f1f hid_quirks_exit +EXPORT_SYMBOL_GPL drivers/hid/hid 0x3d08374f hid_setup_resolution_multiplier +EXPORT_SYMBOL_GPL drivers/hid/hid 0x41b0701a hidraw_disconnect +EXPORT_SYMBOL_GPL drivers/hid/hid 0x4ceac92a hid_report_raw_event +EXPORT_SYMBOL_GPL drivers/hid/hid 0x529f4674 hidinput_disconnect +EXPORT_SYMBOL_GPL drivers/hid/hid 0x538bf6f6 hid_output_report +EXPORT_SYMBOL_GPL drivers/hid/hid 0x5df12511 hid_open_report +EXPORT_SYMBOL_GPL drivers/hid/hid 0x6054dc22 __hid_request +EXPORT_SYMBOL_GPL drivers/hid/hid 0x63392f69 hid_compare_device_paths +EXPORT_SYMBOL_GPL drivers/hid/hid 0x635256cf hid_lookup_quirk +EXPORT_SYMBOL_GPL drivers/hid/hid 0x74b4b79c hid_input_report +EXPORT_SYMBOL_GPL drivers/hid/hid 0x76bc91cb hid_parse_report +EXPORT_SYMBOL_GPL drivers/hid/hid 0x7a1122a3 hidinput_report_event +EXPORT_SYMBOL_GPL drivers/hid/hid 0x8160add5 hid_validate_values +EXPORT_SYMBOL_GPL drivers/hid/hid 0x83471dcc hid_register_report +EXPORT_SYMBOL_GPL drivers/hid/hid 0x8b13a8b8 hid_snto32 +EXPORT_SYMBOL_GPL drivers/hid/hid 0x8e80e4b5 hid_dump_device +EXPORT_SYMBOL_GPL drivers/hid/hid 0x90f3b1c9 hidinput_count_leds +EXPORT_SYMBOL_GPL drivers/hid/hid 0x92015b29 hid_hw_start +EXPORT_SYMBOL_GPL drivers/hid/hid 0x92938773 hid_match_device +EXPORT_SYMBOL_GPL drivers/hid/hid 0x92a290f0 hid_alloc_report_buf +EXPORT_SYMBOL_GPL drivers/hid/hid 0x93e28ea2 hid_field_extract +EXPORT_SYMBOL_GPL drivers/hid/hid 0x95fa30cc hid_debug_event +EXPORT_SYMBOL_GPL drivers/hid/hid 0x9cb33c4c hid_dump_input +EXPORT_SYMBOL_GPL drivers/hid/hid 0xaa114cf8 hid_dump_field +EXPORT_SYMBOL_GPL drivers/hid/hid 0xad0bb6a0 hid_check_keys_pressed +EXPORT_SYMBOL_GPL drivers/hid/hid 0xaefd55b0 hid_ignore +EXPORT_SYMBOL_GPL drivers/hid/hid 0xb0c6336e hid_unregister_driver +EXPORT_SYMBOL_GPL drivers/hid/hid 0xb259a3b9 __hid_register_driver +EXPORT_SYMBOL_GPL drivers/hid/hid 0xb96e55f0 hidinput_connect +EXPORT_SYMBOL_GPL drivers/hid/hid 0xb99bbaad hidinput_find_field +EXPORT_SYMBOL_GPL drivers/hid/hid 0xbd1dcbd4 hid_disconnect +EXPORT_SYMBOL_GPL drivers/hid/hid 0xc38c3575 hid_hw_open +EXPORT_SYMBOL_GPL drivers/hid/hid 0xcab009bb hid_resolv_usage +EXPORT_SYMBOL_GPL drivers/hid/hid 0xd335964e hid_hw_stop +EXPORT_SYMBOL_GPL drivers/hid/hid 0xda9e5738 hid_set_field +EXPORT_SYMBOL_GPL drivers/hid/hid 0xdc9151ae hidinput_calc_abs_res +EXPORT_SYMBOL_GPL drivers/hid/hid 0xdcd4127a hid_hw_close +EXPORT_SYMBOL_GPL drivers/hid/hid 0xe0e762ab hidraw_report_event +EXPORT_SYMBOL_GPL drivers/hid/hid 0xe34005d7 hid_dump_report +EXPORT_SYMBOL_GPL drivers/hid/hid 0xe9ed4b9c hid_add_device +EXPORT_SYMBOL_GPL drivers/hid/hid 0xe9f0b662 hidinput_get_led_field +EXPORT_SYMBOL_GPL drivers/hid/hid 0xfa355613 hid_quirks_init +EXPORT_SYMBOL_GPL drivers/hid/hid 0xfe979288 hid_allocate_device +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 0x482361e6 roccat_connect +EXPORT_SYMBOL_GPL drivers/hid/hid-roccat-common 0x752d5863 roccat_common2_send +EXPORT_SYMBOL_GPL drivers/hid/hid-roccat-common 0x9765631b roccat_common2_sysfs_write +EXPORT_SYMBOL_GPL drivers/hid/hid-roccat-common 0xc10a70d9 roccat_common2_send_with_status +EXPORT_SYMBOL_GPL drivers/hid/hid-roccat-common 0xc9b4ef3e roccat_common2_device_init_struct +EXPORT_SYMBOL_GPL drivers/hid/hid-roccat-common 0xd9080a52 roccat_common2_receive +EXPORT_SYMBOL_GPL drivers/hid/hid-roccat-common 0xf758cec1 roccat_common2_sysfs_read +EXPORT_SYMBOL_GPL drivers/hid/hid-sensor-hub 0x043a2d8b sensor_hub_input_get_attribute_info +EXPORT_SYMBOL_GPL drivers/hid/hid-sensor-hub 0x142d86f5 sensor_hub_device_open +EXPORT_SYMBOL_GPL drivers/hid/hid-sensor-hub 0x369cb90d sensor_hub_register_callback +EXPORT_SYMBOL_GPL drivers/hid/hid-sensor-hub 0x41c7e53c sensor_hub_set_feature +EXPORT_SYMBOL_GPL drivers/hid/hid-sensor-hub 0x75090623 sensor_hub_get_feature +EXPORT_SYMBOL_GPL drivers/hid/hid-sensor-hub 0x82eda480 hid_sensor_get_usage_index +EXPORT_SYMBOL_GPL drivers/hid/hid-sensor-hub 0x86f427ff sensor_hub_remove_callback +EXPORT_SYMBOL_GPL drivers/hid/hid-sensor-hub 0x93669ff6 sensor_hub_device_close +EXPORT_SYMBOL_GPL drivers/hid/hid-sensor-hub 0x9789a238 sensor_hub_input_attr_get_raw_value +EXPORT_SYMBOL_GPL drivers/hid/i2c-hid/i2c-hid 0xb24c7025 i2c_hid_ll_driver +EXPORT_SYMBOL_GPL drivers/hid/uhid 0x8f7e7497 uhid_hid_driver +EXPORT_SYMBOL_GPL drivers/hid/usbhid/usbhid 0x124ad4ae usb_hid_driver +EXPORT_SYMBOL_GPL drivers/hid/usbhid/usbhid 0x89f788e2 hiddev_hid_event +EXPORT_SYMBOL_GPL drivers/hsi/hsi 0x106976ee hsi_alloc_controller +EXPORT_SYMBOL_GPL drivers/hsi/hsi 0x18fd115c hsi_register_port_event +EXPORT_SYMBOL_GPL drivers/hsi/hsi 0x1d1e970a hsi_add_clients_from_dt +EXPORT_SYMBOL_GPL drivers/hsi/hsi 0x20b6e4a3 hsi_get_channel_id_by_name +EXPORT_SYMBOL_GPL drivers/hsi/hsi 0x48c527de hsi_new_client +EXPORT_SYMBOL_GPL drivers/hsi/hsi 0x4e627516 hsi_free_msg +EXPORT_SYMBOL_GPL drivers/hsi/hsi 0x5210a5bf hsi_board_list +EXPORT_SYMBOL_GPL drivers/hsi/hsi 0x5750b921 hsi_unregister_port_event +EXPORT_SYMBOL_GPL drivers/hsi/hsi 0x6da1d9dc hsi_unregister_controller +EXPORT_SYMBOL_GPL drivers/hsi/hsi 0x74d468e2 hsi_release_port +EXPORT_SYMBOL_GPL drivers/hsi/hsi 0x78bce8c4 hsi_event +EXPORT_SYMBOL_GPL drivers/hsi/hsi 0x7eacc27d hsi_put_controller +EXPORT_SYMBOL_GPL drivers/hsi/hsi 0x8743d788 hsi_claim_port +EXPORT_SYMBOL_GPL drivers/hsi/hsi 0x8de42df9 hsi_remove_client +EXPORT_SYMBOL_GPL drivers/hsi/hsi 0xb6d371e5 hsi_alloc_msg +EXPORT_SYMBOL_GPL drivers/hsi/hsi 0xc35c4ba9 hsi_port_unregister_clients +EXPORT_SYMBOL_GPL drivers/hsi/hsi 0xee613415 hsi_async +EXPORT_SYMBOL_GPL drivers/hsi/hsi 0xf816dca5 hsi_register_client_driver +EXPORT_SYMBOL_GPL drivers/hsi/hsi 0xf8e4cd66 hsi_register_controller +EXPORT_SYMBOL_GPL drivers/hwmon/adt7x10 0x3fc8fec8 adt7x10_probe +EXPORT_SYMBOL_GPL drivers/hwmon/adt7x10 0x4f8d063a adt7x10_dev_pm_ops +EXPORT_SYMBOL_GPL drivers/hwmon/adt7x10 0xae57a993 adt7x10_remove +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/ltc2947-core 0xe5821ffc ltc2947_pm_ops +EXPORT_SYMBOL_GPL drivers/hwmon/pmbus/pmbus_core 0x01804f32 pmbus_get_fan_rate_device +EXPORT_SYMBOL_GPL drivers/hwmon/pmbus/pmbus_core 0x22556602 pmbus_read_byte_data +EXPORT_SYMBOL_GPL drivers/hwmon/pmbus/pmbus_core 0x24f81091 pmbus_check_word_register +EXPORT_SYMBOL_GPL drivers/hwmon/pmbus/pmbus_core 0x2de212fc pmbus_get_debugfs_dir +EXPORT_SYMBOL_GPL drivers/hwmon/pmbus/pmbus_core 0x305b1ed5 pmbus_clear_faults +EXPORT_SYMBOL_GPL drivers/hwmon/pmbus/pmbus_core 0x319b2c1a pmbus_regulator_ops +EXPORT_SYMBOL_GPL drivers/hwmon/pmbus/pmbus_core 0x4b3d6f5a pmbus_read_word_data +EXPORT_SYMBOL_GPL drivers/hwmon/pmbus/pmbus_core 0x5a6c9fc1 pmbus_get_fan_rate_cached +EXPORT_SYMBOL_GPL drivers/hwmon/pmbus/pmbus_core 0x5b4494b3 pmbus_write_byte_data +EXPORT_SYMBOL_GPL drivers/hwmon/pmbus/pmbus_core 0x65b65fb8 pmbus_do_probe +EXPORT_SYMBOL_GPL drivers/hwmon/pmbus/pmbus_core 0x74f732bd pmbus_clear_cache +EXPORT_SYMBOL_GPL drivers/hwmon/pmbus/pmbus_core 0x935adede pmbus_update_byte_data +EXPORT_SYMBOL_GPL drivers/hwmon/pmbus/pmbus_core 0x96f4a9c9 pmbus_check_byte_register +EXPORT_SYMBOL_GPL drivers/hwmon/pmbus/pmbus_core 0xae99b63f pmbus_set_page +EXPORT_SYMBOL_GPL drivers/hwmon/pmbus/pmbus_core 0xb49d2996 pmbus_get_driver_info +EXPORT_SYMBOL_GPL drivers/hwmon/pmbus/pmbus_core 0xd4367cf3 pmbus_write_byte +EXPORT_SYMBOL_GPL drivers/hwmon/pmbus/pmbus_core 0xd8a28130 pmbus_write_word_data +EXPORT_SYMBOL_GPL drivers/hwmon/pmbus/pmbus_core 0xe5a3bce1 pmbus_update_fan +EXPORT_SYMBOL_GPL drivers/hwmon/pmbus/pmbus_core 0xe63223ff pmbus_do_remove +EXPORT_SYMBOL_GPL drivers/hwtracing/intel_th/intel_th 0x21514a45 intel_th_alloc +EXPORT_SYMBOL_GPL drivers/hwtracing/intel_th/intel_th 0x53186442 intel_th_set_output +EXPORT_SYMBOL_GPL drivers/hwtracing/intel_th/intel_th 0x606e7257 intel_th_trace_enable +EXPORT_SYMBOL_GPL drivers/hwtracing/intel_th/intel_th 0x67afce4b intel_th_trace_switch +EXPORT_SYMBOL_GPL drivers/hwtracing/intel_th/intel_th 0x7a607bcd intel_th_trace_disable +EXPORT_SYMBOL_GPL drivers/hwtracing/intel_th/intel_th 0xb089b8f6 intel_th_driver_register +EXPORT_SYMBOL_GPL drivers/hwtracing/intel_th/intel_th 0xc29c365e intel_th_output_enable +EXPORT_SYMBOL_GPL drivers/hwtracing/intel_th/intel_th 0xfb6bd949 intel_th_free +EXPORT_SYMBOL_GPL drivers/hwtracing/intel_th/intel_th 0xfde7a68d intel_th_driver_unregister +EXPORT_SYMBOL_GPL drivers/hwtracing/intel_th/intel_th_msu 0xbb0a7633 intel_th_msc_window_unlock +EXPORT_SYMBOL_GPL drivers/hwtracing/intel_th/intel_th_msu 0xbb6a8ae6 intel_th_msu_buffer_register +EXPORT_SYMBOL_GPL drivers/hwtracing/intel_th/intel_th_msu 0xeabad491 intel_th_msu_buffer_unregister +EXPORT_SYMBOL_GPL drivers/hwtracing/stm/stm_core 0x0c236898 stm_source_write +EXPORT_SYMBOL_GPL drivers/hwtracing/stm/stm_core 0x19c17985 stm_unregister_device +EXPORT_SYMBOL_GPL drivers/hwtracing/stm/stm_core 0x208d8f89 stm_source_unregister_device +EXPORT_SYMBOL_GPL drivers/hwtracing/stm/stm_core 0x229767b8 stm_source_register_device +EXPORT_SYMBOL_GPL drivers/hwtracing/stm/stm_core 0x5f51b228 stm_register_protocol +EXPORT_SYMBOL_GPL drivers/hwtracing/stm/stm_core 0x71818af3 to_pdrv_policy_node +EXPORT_SYMBOL_GPL drivers/hwtracing/stm/stm_core 0xa1c778d8 stm_data_write +EXPORT_SYMBOL_GPL drivers/hwtracing/stm/stm_core 0xbc1ab1ef stm_unregister_protocol +EXPORT_SYMBOL_GPL drivers/hwtracing/stm/stm_core 0xed667388 stm_register_device +EXPORT_SYMBOL_GPL drivers/i2c/i2c-mux 0x6dca0238 i2c_root_adapter +EXPORT_SYMBOL_GPL drivers/i2c/i2c-mux 0xb72c5415 i2c_mux_del_adapters +EXPORT_SYMBOL_GPL drivers/i2c/i2c-mux 0xd17cc572 i2c_mux_alloc +EXPORT_SYMBOL_GPL drivers/i2c/i2c-mux 0xe4316d1c i2c_mux_add_adapter +EXPORT_SYMBOL_GPL drivers/i2c/i2c-smbus 0x1ef3dce0 i2c_register_spd +EXPORT_SYMBOL_GPL drivers/i2c/i2c-smbus 0x5d9b9b53 i2c_handle_smbus_alert +EXPORT_SYMBOL_GPL drivers/i3c/i3c 0x2da802d5 i3c_master_entdaa_locked +EXPORT_SYMBOL_GPL drivers/i3c/i3c 0x3bd50b65 i3c_master_disec_locked +EXPORT_SYMBOL_GPL drivers/i3c/i3c 0x55a4a40e i3c_master_register +EXPORT_SYMBOL_GPL drivers/i3c/i3c 0x63ac88c5 i3c_device_free_ibi +EXPORT_SYMBOL_GPL drivers/i3c/i3c 0x653b9fa7 i3c_driver_register_with_owner +EXPORT_SYMBOL_GPL drivers/i3c/i3c 0x7131cf0d i3c_device_enable_ibi +EXPORT_SYMBOL_GPL drivers/i3c/i3c 0x74ba1416 i3cdev_to_dev +EXPORT_SYMBOL_GPL drivers/i3c/i3c 0x76fe3e05 i3c_generic_ibi_free_pool +EXPORT_SYMBOL_GPL drivers/i3c/i3c 0x786069a9 i3c_master_queue_ibi +EXPORT_SYMBOL_GPL drivers/i3c/i3c 0x861bd9c2 i3c_generic_ibi_alloc_pool +EXPORT_SYMBOL_GPL drivers/i3c/i3c 0x87af57bf i3c_master_do_daa +EXPORT_SYMBOL_GPL drivers/i3c/i3c 0x8a8a6412 i3c_device_disable_ibi +EXPORT_SYMBOL_GPL drivers/i3c/i3c 0xb1171543 i3c_master_add_i3c_dev_locked +EXPORT_SYMBOL_GPL drivers/i3c/i3c 0xb24afe57 i3c_master_unregister +EXPORT_SYMBOL_GPL drivers/i3c/i3c 0xba742fba i3c_device_match_id +EXPORT_SYMBOL_GPL drivers/i3c/i3c 0xbe908a52 i3c_master_get_free_addr +EXPORT_SYMBOL_GPL drivers/i3c/i3c 0xc45789fc i3c_device_do_priv_xfers +EXPORT_SYMBOL_GPL drivers/i3c/i3c 0xcbbff734 i3c_master_set_info +EXPORT_SYMBOL_GPL drivers/i3c/i3c 0xd5322362 i3c_driver_unregister +EXPORT_SYMBOL_GPL drivers/i3c/i3c 0xd84300c7 i3c_master_enec_locked +EXPORT_SYMBOL_GPL drivers/i3c/i3c 0xe09bd188 i3c_generic_ibi_recycle_slot +EXPORT_SYMBOL_GPL drivers/i3c/i3c 0xe175c2cf i3c_generic_ibi_get_free_slot +EXPORT_SYMBOL_GPL drivers/i3c/i3c 0xf5ad06d4 i3c_master_defslvs_locked +EXPORT_SYMBOL_GPL drivers/i3c/i3c 0xf7fcdeb1 i3c_device_request_ibi +EXPORT_SYMBOL_GPL drivers/i3c/i3c 0xf98d4c2e dev_to_i3cdev +EXPORT_SYMBOL_GPL drivers/i3c/i3c 0xfe23c807 i3c_device_get_info +EXPORT_SYMBOL_GPL drivers/iio/accel/adxl372 0x11c20eee adxl372_probe +EXPORT_SYMBOL_GPL drivers/iio/accel/adxl372 0x3ccd5f44 adxl372_readable_noinc_reg +EXPORT_SYMBOL_GPL drivers/iio/accel/bmc150-accel-core 0x005ebf92 bmc150_accel_pm_ops +EXPORT_SYMBOL_GPL drivers/iio/accel/bmc150-accel-core 0x5c1f95ea bmc150_accel_core_probe +EXPORT_SYMBOL_GPL drivers/iio/accel/bmc150-accel-core 0xd5d70864 bmc150_accel_core_remove +EXPORT_SYMBOL_GPL drivers/iio/accel/bmc150-accel-core 0xd5edd3c3 bmc150_regmap_conf +EXPORT_SYMBOL_GPL drivers/iio/accel/mma7455_core 0x06ac2e22 mma7455_core_remove +EXPORT_SYMBOL_GPL drivers/iio/accel/mma7455_core 0xd778594e mma7455_core_regmap +EXPORT_SYMBOL_GPL drivers/iio/accel/mma7455_core 0xf5aaad4d mma7455_core_probe +EXPORT_SYMBOL_GPL drivers/iio/adc/ad7091r-base 0xa93eeef2 ad7091r_regmap_config +EXPORT_SYMBOL_GPL drivers/iio/adc/ad7091r-base 0xe54231a1 ad7091r_probe +EXPORT_SYMBOL_GPL drivers/iio/adc/ad7606 0x9ca63b05 ad7606_probe +EXPORT_SYMBOL_GPL drivers/iio/adc/ad7606 0xf6eeba35 ad7606_pm_ops +EXPORT_SYMBOL_GPL drivers/iio/adc/ad_sigma_delta 0x0277df79 ad_sd_calibrate_all +EXPORT_SYMBOL_GPL drivers/iio/adc/ad_sigma_delta 0x06088df9 ad_sd_validate_trigger +EXPORT_SYMBOL_GPL drivers/iio/adc/ad_sigma_delta 0x0b8fa514 ad_sigma_delta_single_conversion +EXPORT_SYMBOL_GPL drivers/iio/adc/ad_sigma_delta 0x520af31f ad_sd_reset +EXPORT_SYMBOL_GPL drivers/iio/adc/ad_sigma_delta 0x52c904b4 ad_sd_setup_buffer_and_trigger +EXPORT_SYMBOL_GPL drivers/iio/adc/ad_sigma_delta 0x9130c11a ad_sd_set_comm +EXPORT_SYMBOL_GPL drivers/iio/adc/ad_sigma_delta 0xc709a2fa ad_sd_cleanup_buffer_and_trigger +EXPORT_SYMBOL_GPL drivers/iio/adc/ad_sigma_delta 0xd2b0bea3 ad_sd_init +EXPORT_SYMBOL_GPL drivers/iio/adc/ad_sigma_delta 0xf44b03d1 ad_sd_calibrate +EXPORT_SYMBOL_GPL drivers/iio/adc/ad_sigma_delta 0xfb5993c4 ad_sd_read_reg +EXPORT_SYMBOL_GPL drivers/iio/adc/ad_sigma_delta 0xfc79d4ef ad_sd_write_reg +EXPORT_SYMBOL_GPL drivers/iio/adc/adi-axi-adc 0x212ea50a devm_adi_axi_adc_conv_register +EXPORT_SYMBOL_GPL drivers/iio/adc/adi-axi-adc 0x91afb565 adi_axi_adc_conv_priv +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 0x6c32f251 iio_channel_cb_get_iio_dev +EXPORT_SYMBOL_GPL drivers/iio/buffer/industrialio-buffer-cb 0x7a711aef iio_channel_start_all_cb +EXPORT_SYMBOL_GPL drivers/iio/buffer/industrialio-buffer-cb 0x94da80fc iio_channel_get_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 0xe3a33eca iio_channel_cb_get_channels +EXPORT_SYMBOL_GPL drivers/iio/buffer/industrialio-buffer-dma 0x01519d23 iio_dma_buffer_block_done +EXPORT_SYMBOL_GPL drivers/iio/buffer/industrialio-buffer-dma 0x083130d9 iio_dma_buffer_set_length +EXPORT_SYMBOL_GPL drivers/iio/buffer/industrialio-buffer-dma 0x173d1354 iio_dma_buffer_request_update +EXPORT_SYMBOL_GPL drivers/iio/buffer/industrialio-buffer-dma 0x3584372b iio_dma_buffer_release +EXPORT_SYMBOL_GPL drivers/iio/buffer/industrialio-buffer-dma 0x416aca72 iio_dma_buffer_block_list_abort +EXPORT_SYMBOL_GPL drivers/iio/buffer/industrialio-buffer-dma 0x4a57f7df iio_dma_buffer_enable +EXPORT_SYMBOL_GPL drivers/iio/buffer/industrialio-buffer-dma 0x5136ca5d iio_dma_buffer_read +EXPORT_SYMBOL_GPL drivers/iio/buffer/industrialio-buffer-dma 0x541121b6 iio_dma_buffer_disable +EXPORT_SYMBOL_GPL drivers/iio/buffer/industrialio-buffer-dma 0x5f9de85b iio_dma_buffer_init +EXPORT_SYMBOL_GPL drivers/iio/buffer/industrialio-buffer-dma 0x82ff544b iio_dma_buffer_data_available +EXPORT_SYMBOL_GPL drivers/iio/buffer/industrialio-buffer-dma 0x91917295 iio_dma_buffer_set_bytes_per_datum +EXPORT_SYMBOL_GPL drivers/iio/buffer/industrialio-buffer-dma 0xfd99c3f3 iio_dma_buffer_exit +EXPORT_SYMBOL_GPL drivers/iio/buffer/industrialio-buffer-dmaengine 0x46183c4b devm_iio_dmaengine_buffer_alloc +EXPORT_SYMBOL_GPL drivers/iio/buffer/industrialio-buffer-dmaengine 0x53e2d3e7 iio_dmaengine_buffer_free +EXPORT_SYMBOL_GPL drivers/iio/buffer/industrialio-hw-consumer 0x3391543d iio_hw_consumer_disable +EXPORT_SYMBOL_GPL drivers/iio/buffer/industrialio-hw-consumer 0x50ea9f48 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 0xcd8cec75 devm_iio_hw_consumer_alloc +EXPORT_SYMBOL_GPL drivers/iio/buffer/industrialio-triggered-buffer 0x68bf23b7 devm_iio_triggered_buffer_setup +EXPORT_SYMBOL_GPL drivers/iio/chemical/bme680_core 0x90f6cd17 bme680_core_probe +EXPORT_SYMBOL_GPL drivers/iio/common/cros_ec_sensors/cros_ec_sensors_core 0x4570c9a7 cros_ec_sensors_read_lpc +EXPORT_SYMBOL_GPL drivers/iio/common/cros_ec_sensors/cros_ec_sensors_core 0x57b2af3e cros_ec_sensors_ext_info +EXPORT_SYMBOL_GPL drivers/iio/common/cros_ec_sensors/cros_ec_sensors_core 0x621649fc cros_ec_sensor_fifo_attributes +EXPORT_SYMBOL_GPL drivers/iio/common/cros_ec_sensors/cros_ec_sensors_core 0x7ac6ffab cros_ec_sensors_core_read_avail +EXPORT_SYMBOL_GPL drivers/iio/common/cros_ec_sensors/cros_ec_sensors_core 0x843a8827 cros_ec_sensors_core_read +EXPORT_SYMBOL_GPL drivers/iio/common/cros_ec_sensors/cros_ec_sensors_core 0x8dbb3dfd cros_ec_sensors_push_data +EXPORT_SYMBOL_GPL drivers/iio/common/cros_ec_sensors/cros_ec_sensors_core 0x98a6758e 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 0xca9db81d cros_ec_sensors_read_cmd +EXPORT_SYMBOL_GPL drivers/iio/common/cros_ec_sensors/cros_ec_sensors_core 0xe0dedac6 cros_ec_motion_send_host_cmd +EXPORT_SYMBOL_GPL drivers/iio/common/cros_ec_sensors/cros_ec_sensors_core 0xedc5b5b7 cros_ec_sensors_core_write +EXPORT_SYMBOL_GPL drivers/iio/dac/ad5592r-base 0x1f2650fc ad5592r_remove +EXPORT_SYMBOL_GPL drivers/iio/dac/ad5592r-base 0x21f1c16d ad5592r_probe +EXPORT_SYMBOL_GPL drivers/iio/dac/ad5686 0x6e5b9d5c ad5686_remove +EXPORT_SYMBOL_GPL drivers/iio/dac/ad5686 0x76bef4b1 ad5686_probe +EXPORT_SYMBOL_GPL drivers/iio/gyro/bmg160_core 0x14db1007 bmg160_core_remove +EXPORT_SYMBOL_GPL drivers/iio/gyro/bmg160_core 0xad49aa63 bmg160_core_probe +EXPORT_SYMBOL_GPL drivers/iio/gyro/bmg160_core 0xc0d9e342 bmg160_pm_ops +EXPORT_SYMBOL_GPL drivers/iio/gyro/fxas21002c_core 0x14f39aad fxas21002c_pm_ops +EXPORT_SYMBOL_GPL drivers/iio/gyro/fxas21002c_core 0x4ad9d87f fxas21002c_core_probe +EXPORT_SYMBOL_GPL drivers/iio/gyro/fxas21002c_core 0xb82cfe7e fxas21002c_core_remove +EXPORT_SYMBOL_GPL drivers/iio/imu/adis_lib 0x079ac515 adis_single_conversion +EXPORT_SYMBOL_GPL drivers/iio/imu/adis_lib 0x19cc5784 adis_update_scan_mode +EXPORT_SYMBOL_GPL drivers/iio/imu/adis_lib 0x1d00aa6a adis_remove_trigger +EXPORT_SYMBOL_GPL drivers/iio/imu/adis_lib 0x1edcf71c devm_adis_probe_trigger +EXPORT_SYMBOL_GPL drivers/iio/imu/adis_lib 0x21b5d56b __adis_initial_startup +EXPORT_SYMBOL_GPL drivers/iio/imu/adis_lib 0x2fe9788d adis_probe_trigger +EXPORT_SYMBOL_GPL drivers/iio/imu/adis_lib 0x3f0996ee __adis_read_reg +EXPORT_SYMBOL_GPL drivers/iio/imu/adis_lib 0x4061f308 __adis_update_bits_base +EXPORT_SYMBOL_GPL drivers/iio/imu/adis_lib 0x4bc5f911 adis_cleanup_buffer_and_trigger +EXPORT_SYMBOL_GPL drivers/iio/imu/adis_lib 0x4f4bfa72 __adis_write_reg +EXPORT_SYMBOL_GPL drivers/iio/imu/adis_lib 0x5c5e8dec devm_adis_setup_buffer_and_trigger +EXPORT_SYMBOL_GPL drivers/iio/imu/adis_lib 0x95a6242f adis_setup_buffer_and_trigger +EXPORT_SYMBOL_GPL drivers/iio/imu/adis_lib 0xbe429909 adis_init +EXPORT_SYMBOL_GPL drivers/iio/imu/adis_lib 0xcb58a417 __adis_check_status +EXPORT_SYMBOL_GPL drivers/iio/imu/adis_lib 0xfa8b7675 __adis_reset +EXPORT_SYMBOL_GPL drivers/iio/imu/bmi160/bmi160_core 0xe11cd395 bmi160_core_probe +EXPORT_SYMBOL_GPL drivers/iio/imu/fxos8700_core 0x9decb95b fxos8700_core_probe +EXPORT_SYMBOL_GPL drivers/iio/imu/inv_mpu6050/inv-mpu6050 0x0db81b3c inv_mpu_pmops +EXPORT_SYMBOL_GPL drivers/iio/imu/inv_mpu6050/inv-mpu6050 0xb7f6b9d0 inv_mpu_core_probe +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x0572b447 iio_read_channel_ext_info +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x079cadad iio_get_channel_ext_info_count +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x098c05c8 iio_device_attach_buffer +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x0f724c9f iio_dealloc_pollfunc +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x15fbbf4a __devm_iio_trigger_register +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x1c801a1d iio_channel_release +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x1fbe1b09 iio_read_channel_raw +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x26f6b499 iio_str_to_fixpoint +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x2af71888 iio_convert_raw_to_processed +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x2d4cd575 devm_iio_device_alloc +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x324ba545 iio_buffer_get +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x3712ae93 iio_read_channel_offset +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x390b1970 iio_write_channel_ext_info +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x3e482898 iio_buffer_set_attrs +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x3eb8eb38 iio_update_buffers +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x3f0a0e6a iio_enum_available_read +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x40d9ce8a iio_channel_release_all +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x4604527f iio_enum_write +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x475fdda1 iio_device_release_direct_mode +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x4dce7dd4 iio_format_value +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x50162669 iio_map_array_unregister +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x5bd3c47d iio_read_avail_channel_attribute +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x6913ca41 iio_channel_get_all +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x6cd28575 devm_iio_channel_get_all +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x723778b0 iio_buffer_put +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x79694322 __devm_iio_device_register +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x871d27d4 iio_map_array_register +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x8a570347 iio_read_max_channel_raw +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x8d50171e iio_write_channel_raw +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x8f600ec7 iio_write_channel_attribute +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x92215d42 iio_read_channel_scale +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x9c425722 iio_validate_scan_mask_onehot +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0xa3ac1149 iio_channel_get +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0xa4c15027 iio_enum_read +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0xa7854c84 iio_read_avail_channel_raw +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0xac5f87d3 iio_get_channel_type +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0xb3f26c95 devm_iio_channel_get +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0xc5bf033b iio_device_claim_direct_mode +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0xccd063b6 iio_read_channel_processed +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0xcd4c5215 iio_show_mount_matrix +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0xd1c40076 iio_alloc_pollfunc +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0xd3cf23af iio_push_to_buffers +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0xd6a5d69e iio_read_channel_average_raw +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0xd7439366 devm_iio_trigger_alloc +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0xfada73b2 iio_read_channel_attribute +EXPORT_SYMBOL_GPL drivers/iio/magnetometer/rm3100-core 0x0a1424e0 rm3100_volatile_table +EXPORT_SYMBOL_GPL drivers/iio/magnetometer/rm3100-core 0xaa911f08 rm3100_readable_table +EXPORT_SYMBOL_GPL drivers/iio/magnetometer/rm3100-core 0xcc7209be rm3100_writable_table +EXPORT_SYMBOL_GPL drivers/iio/magnetometer/rm3100-core 0xfc055861 rm3100_common_probe +EXPORT_SYMBOL_GPL drivers/iio/pressure/mpl115 0x91f1cb88 mpl115_probe +EXPORT_SYMBOL_GPL drivers/iio/pressure/zpa2326 0x672da47d zpa2326_isreg_readable +EXPORT_SYMBOL_GPL drivers/iio/pressure/zpa2326 0x7a3b1996 zpa2326_probe +EXPORT_SYMBOL_GPL drivers/iio/pressure/zpa2326 0x7ed34285 zpa2326_isreg_precious +EXPORT_SYMBOL_GPL drivers/iio/pressure/zpa2326 0xc567299e zpa2326_pm_ops +EXPORT_SYMBOL_GPL drivers/iio/pressure/zpa2326 0xc93684dd zpa2326_remove +EXPORT_SYMBOL_GPL drivers/iio/pressure/zpa2326 0xd07c2ced zpa2326_isreg_writeable +EXPORT_SYMBOL_GPL drivers/infiniband/core/ib_core 0xdbd019c4 ib_wq +EXPORT_SYMBOL_GPL drivers/infiniband/ulp/rtrs/rtrs-core 0x062300fb rtrs_send_hb_ack +EXPORT_SYMBOL_GPL drivers/infiniband/ulp/rtrs/rtrs-core 0x0e297e02 rtrs_iu_post_rdma_write_imm +EXPORT_SYMBOL_GPL drivers/infiniband/ulp/rtrs/rtrs-core 0x1904cb49 rtrs_init_hb +EXPORT_SYMBOL_GPL drivers/infiniband/ulp/rtrs/rtrs-core 0x1d31ff6b rtrs_iu_alloc +EXPORT_SYMBOL_GPL drivers/infiniband/ulp/rtrs/rtrs-core 0x3ae09be7 rtrs_cq_qp_create +EXPORT_SYMBOL_GPL drivers/infiniband/ulp/rtrs/rtrs-core 0x45181e39 rtrs_post_recv_empty +EXPORT_SYMBOL_GPL drivers/infiniband/ulp/rtrs/rtrs-core 0x51c88259 rtrs_iu_free +EXPORT_SYMBOL_GPL drivers/infiniband/ulp/rtrs/rtrs-core 0x55d2d380 rtrs_iu_post_send +EXPORT_SYMBOL_GPL drivers/infiniband/ulp/rtrs/rtrs-core 0x6ccfc49d rtrs_stop_hb +EXPORT_SYMBOL_GPL drivers/infiniband/ulp/rtrs/rtrs-core 0x935833b0 rtrs_post_rdma_write_imm_empty +EXPORT_SYMBOL_GPL drivers/infiniband/ulp/rtrs/rtrs-core 0xb74836a5 rtrs_iu_post_recv +EXPORT_SYMBOL_GPL drivers/infiniband/ulp/rtrs/rtrs-core 0xb878d616 rtrs_cq_qp_destroy +EXPORT_SYMBOL_GPL drivers/infiniband/ulp/rtrs/rtrs-core 0xd14c4e4e rtrs_start_hb +EXPORT_SYMBOL_GPL drivers/input/ff-memless 0x5f52fc2e input_ff_create_memless +EXPORT_SYMBOL_GPL drivers/input/matrix-keymap 0x7f48521b matrix_keypad_parse_properties +EXPORT_SYMBOL_GPL drivers/input/misc/adxl34x 0x35b61d24 adxl34x_probe +EXPORT_SYMBOL_GPL drivers/input/misc/adxl34x 0x49a4fcbd adxl34x_remove +EXPORT_SYMBOL_GPL drivers/input/misc/adxl34x 0x66535a18 adxl34x_suspend +EXPORT_SYMBOL_GPL drivers/input/misc/adxl34x 0xe4586827 adxl34x_resume +EXPORT_SYMBOL_GPL drivers/input/rmi4/rmi_core 0x0c13c77f rmi_2d_sensor_abs_process +EXPORT_SYMBOL_GPL drivers/input/rmi4/rmi_core 0x1d128e91 rmi_register_transport_device +EXPORT_SYMBOL_GPL drivers/input/rmi4/rmi_core 0x35809290 rmi_2d_sensor_of_probe +EXPORT_SYMBOL_GPL drivers/input/rmi4/rmi_core 0x48e7bff3 __rmi_register_function_handler +EXPORT_SYMBOL_GPL drivers/input/rmi4/rmi_core 0x91ca7e86 rmi_dbg +EXPORT_SYMBOL_GPL drivers/input/rmi4/rmi_core 0xa5535679 rmi_driver_resume +EXPORT_SYMBOL_GPL drivers/input/rmi4/rmi_core 0xba81146a rmi_set_attn_data +EXPORT_SYMBOL_GPL drivers/input/rmi4/rmi_core 0xc3dbe112 rmi_of_property_read_u32 +EXPORT_SYMBOL_GPL drivers/input/rmi4/rmi_core 0xc6d04db0 rmi_unregister_function_handler +EXPORT_SYMBOL_GPL drivers/input/rmi4/rmi_core 0xcc614ced rmi_2d_sensor_abs_report +EXPORT_SYMBOL_GPL drivers/input/rmi4/rmi_core 0xe7cc9475 rmi_driver_suspend +EXPORT_SYMBOL_GPL drivers/input/rmi4/rmi_core 0xed50ee40 rmi_2d_sensor_configure_input +EXPORT_SYMBOL_GPL drivers/input/rmi4/rmi_core 0xfb424112 rmi_2d_sensor_rel_report +EXPORT_SYMBOL_GPL drivers/input/touchscreen/cyttsp4_core 0x5cda0019 cyttsp4_remove +EXPORT_SYMBOL_GPL drivers/input/touchscreen/cyttsp4_core 0xb97e1164 cyttsp4_pm_ops +EXPORT_SYMBOL_GPL drivers/input/touchscreen/cyttsp4_core 0xcfa8effa cyttsp4_probe +EXPORT_SYMBOL_GPL drivers/input/touchscreen/cyttsp_core 0x1464331a cyttsp_probe +EXPORT_SYMBOL_GPL drivers/input/touchscreen/cyttsp_core 0xf96c5d2a cyttsp_pm_ops +EXPORT_SYMBOL_GPL drivers/input/touchscreen/cyttsp_i2c_common 0x2a2bb96d cyttsp_i2c_write_block_data +EXPORT_SYMBOL_GPL drivers/input/touchscreen/cyttsp_i2c_common 0x6b047fa7 cyttsp_i2c_read_block_data +EXPORT_SYMBOL_GPL drivers/input/touchscreen/tsc200x-core 0x21f32a6e tsc200x_remove +EXPORT_SYMBOL_GPL drivers/input/touchscreen/tsc200x-core 0x7829b4dd tsc200x_pm_ops +EXPORT_SYMBOL_GPL drivers/input/touchscreen/tsc200x-core 0xb0afd438 tsc200x_probe +EXPORT_SYMBOL_GPL drivers/input/touchscreen/tsc200x-core 0xfaca0901 tsc200x_regmap_config +EXPORT_SYMBOL_GPL drivers/input/touchscreen/wm97xx-ts 0x0e572f03 wm9705_codec +EXPORT_SYMBOL_GPL drivers/input/touchscreen/wm97xx-ts 0x13e93259 wm9712_codec +EXPORT_SYMBOL_GPL drivers/input/touchscreen/wm97xx-ts 0x19f3d455 wm97xx_reg_read +EXPORT_SYMBOL_GPL drivers/input/touchscreen/wm97xx-ts 0x42ea02a6 wm97xx_get_gpio +EXPORT_SYMBOL_GPL drivers/input/touchscreen/wm97xx-ts 0x697cc525 wm97xx_config_gpio +EXPORT_SYMBOL_GPL drivers/input/touchscreen/wm97xx-ts 0x7df2dbe3 wm97xx_set_gpio +EXPORT_SYMBOL_GPL drivers/input/touchscreen/wm97xx-ts 0xa3e32ca6 wm97xx_register_mach_ops +EXPORT_SYMBOL_GPL drivers/input/touchscreen/wm97xx-ts 0xd8837d0b wm97xx_set_suspend_mode +EXPORT_SYMBOL_GPL drivers/input/touchscreen/wm97xx-ts 0xdf4332c7 wm9713_codec +EXPORT_SYMBOL_GPL drivers/input/touchscreen/wm97xx-ts 0xe02ea111 wm97xx_read_aux_adc +EXPORT_SYMBOL_GPL drivers/input/touchscreen/wm97xx-ts 0xe6fe2f56 wm97xx_reg_write +EXPORT_SYMBOL_GPL drivers/input/touchscreen/wm97xx-ts 0xf39ea2b1 wm97xx_unregister_mach_ops +EXPORT_SYMBOL_GPL drivers/interconnect/imx/imx-interconnect 0x96a3f20a imx_icc_unregister +EXPORT_SYMBOL_GPL drivers/interconnect/imx/imx-interconnect 0xe29c0dbd imx_icc_register +EXPORT_SYMBOL_GPL drivers/interconnect/qcom/icc-bcm-voter 0x0b39b783 qcom_icc_bcm_voter_commit +EXPORT_SYMBOL_GPL drivers/interconnect/qcom/icc-bcm-voter 0x2914cec7 qcom_icc_bcm_voter_add +EXPORT_SYMBOL_GPL drivers/interconnect/qcom/icc-bcm-voter 0xee1a20d1 of_bcm_voter_get +EXPORT_SYMBOL_GPL drivers/interconnect/qcom/icc-rpmh 0x14558653 qcom_icc_aggregate +EXPORT_SYMBOL_GPL drivers/interconnect/qcom/icc-rpmh 0x2542f6bb qcom_icc_set +EXPORT_SYMBOL_GPL drivers/interconnect/qcom/icc-rpmh 0xe2f15d73 qcom_icc_bcm_init +EXPORT_SYMBOL_GPL drivers/interconnect/qcom/icc-rpmh 0xefd35052 qcom_icc_pre_aggregate +EXPORT_SYMBOL_GPL drivers/interconnect/qcom/icc-smd-rpm 0x81e513ad qcom_icc_rpm_smd_available +EXPORT_SYMBOL_GPL drivers/interconnect/qcom/icc-smd-rpm 0xe8dbdc6c qcom_icc_rpm_smd_send +EXPORT_SYMBOL_GPL drivers/ipack/ipack 0x0b969da3 ipack_driver_register +EXPORT_SYMBOL_GPL drivers/ipack/ipack 0x3281a6bf ipack_bus_unregister +EXPORT_SYMBOL_GPL drivers/ipack/ipack 0x4f36b3b4 ipack_put_device +EXPORT_SYMBOL_GPL drivers/ipack/ipack 0x5c93c25a ipack_device_add +EXPORT_SYMBOL_GPL drivers/ipack/ipack 0x7d15c4f5 ipack_device_del +EXPORT_SYMBOL_GPL drivers/ipack/ipack 0x881f3f0b ipack_get_device +EXPORT_SYMBOL_GPL drivers/ipack/ipack 0xaa09110b ipack_driver_unregister +EXPORT_SYMBOL_GPL drivers/ipack/ipack 0xb1bc416d ipack_bus_register +EXPORT_SYMBOL_GPL drivers/ipack/ipack 0xf81a1adc ipack_device_init +EXPORT_SYMBOL_GPL drivers/leds/led-class-flash 0x047d5367 devm_led_classdev_flash_register_ext +EXPORT_SYMBOL_GPL drivers/leds/led-class-flash 0x04ebf894 led_update_flash_brightness +EXPORT_SYMBOL_GPL drivers/leds/led-class-flash 0x22a840af led_set_flash_brightness +EXPORT_SYMBOL_GPL drivers/leds/led-class-flash 0x2de6fad5 led_set_flash_timeout +EXPORT_SYMBOL_GPL drivers/leds/led-class-flash 0x5f7d7d58 led_classdev_flash_register_ext +EXPORT_SYMBOL_GPL drivers/leds/led-class-flash 0x75600223 led_get_flash_fault +EXPORT_SYMBOL_GPL drivers/leds/led-class-flash 0xbcd1b205 devm_led_classdev_flash_unregister +EXPORT_SYMBOL_GPL drivers/leds/led-class-flash 0xedd9234a led_classdev_flash_unregister +EXPORT_SYMBOL_GPL drivers/leds/leds-lp55xx-common 0x0aeaa104 lp55xx_update_bits +EXPORT_SYMBOL_GPL drivers/leds/leds-lp55xx-common 0x10258a0d lp55xx_unregister_leds +EXPORT_SYMBOL_GPL drivers/leds/leds-lp55xx-common 0x21988c26 lp55xx_init_device +EXPORT_SYMBOL_GPL drivers/leds/leds-lp55xx-common 0x2918277c lp55xx_is_extclk_used +EXPORT_SYMBOL_GPL drivers/leds/leds-lp55xx-common 0x642c0ce3 lp55xx_write +EXPORT_SYMBOL_GPL drivers/leds/leds-lp55xx-common 0x67aa04db lp55xx_unregister_sysfs +EXPORT_SYMBOL_GPL drivers/leds/leds-lp55xx-common 0x7b387a6d lp55xx_deinit_device +EXPORT_SYMBOL_GPL drivers/leds/leds-lp55xx-common 0x9b130654 lp55xx_register_leds +EXPORT_SYMBOL_GPL drivers/leds/leds-lp55xx-common 0xa37f55ad lp55xx_register_sysfs +EXPORT_SYMBOL_GPL drivers/leds/leds-lp55xx-common 0xb0d1713b lp55xx_of_populate_pdata +EXPORT_SYMBOL_GPL drivers/leds/leds-lp55xx-common 0xdf8ee5a0 lp55xx_read +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 0x15b97715 __tracepoint_bcache_write +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0x19b88bec __tracepoint_bcache_writeback +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0x2307b422 __tracepoint_bcache_journal_full +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0x2b46c4b6 __tracepoint_bcache_btree_node_alloc_fail +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0x2b793afb __tracepoint_bcache_read +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0x2fbf8560 __tracepoint_bcache_btree_read +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0x33554606 __tracepoint_bcache_journal_entry_full +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0x414c7765 __tracepoint_bcache_btree_node_alloc +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0x5f6a4a3e __tracepoint_bcache_btree_node_free +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0x65fb81f0 __tracepoint_bcache_btree_node_compact +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0x6b1045c7 __tracepoint_bcache_btree_set_root +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0x7260fb66 __tracepoint_bcache_btree_write +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0x748968f6 __tracepoint_bcache_btree_insert_key +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0x7574c715 __tracepoint_bcache_gc_end +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0x7c8a33fe __tracepoint_bcache_read_retry +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0x96bf5dba __tracepoint_bcache_writeback_collision +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0xa353964f __tracepoint_bcache_request_end +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0xa4682eff __tracepoint_bcache_gc_start +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0xab4c5652 __tracepoint_bcache_btree_node_split +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0xb22f8879 __tracepoint_bcache_bypass_sequential +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0xbf53dc9d __tracepoint_bcache_btree_gc_coalesce +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0xc00185bc __tracepoint_bcache_gc_copy_collision +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0xc13b483f __tracepoint_bcache_invalidate +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0xc36e201d __tracepoint_bcache_gc_copy +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0xc8feefc9 __tracepoint_bcache_alloc_fail +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0xd8da0f0e __tracepoint_bcache_cache_insert +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0xd9f20dee __tracepoint_bcache_journal_replay_key +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0xe9c4d700 __tracepoint_bcache_bypass_congested +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0xee603d81 __tracepoint_bcache_journal_write +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0xf5d8bf62 __tracepoint_bcache_btree_cache_cannibalize +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0xf8502c64 __tracepoint_bcache_request_start +EXPORT_SYMBOL_GPL drivers/md/dm-bio-prison 0x02df78d4 dm_cell_get_v2 +EXPORT_SYMBOL_GPL drivers/md/dm-bio-prison 0x0f2bb5ad dm_cell_release_no_holder +EXPORT_SYMBOL_GPL drivers/md/dm-bio-prison 0x17242917 dm_cell_unlock_v2 +EXPORT_SYMBOL_GPL drivers/md/dm-bio-prison 0x17dd39d6 dm_deferred_set_create +EXPORT_SYMBOL_GPL drivers/md/dm-bio-prison 0x2eb01e04 dm_deferred_set_destroy +EXPORT_SYMBOL_GPL drivers/md/dm-bio-prison 0x4191a225 dm_bio_prison_alloc_cell_v2 +EXPORT_SYMBOL_GPL drivers/md/dm-bio-prison 0x431b2aff dm_cell_quiesce_v2 +EXPORT_SYMBOL_GPL drivers/md/dm-bio-prison 0x4661a059 dm_cell_error +EXPORT_SYMBOL_GPL drivers/md/dm-bio-prison 0x4fa53cb7 dm_bio_prison_free_cell_v2 +EXPORT_SYMBOL_GPL drivers/md/dm-bio-prison 0x629d5f87 dm_cell_put_v2 +EXPORT_SYMBOL_GPL drivers/md/dm-bio-prison 0x6791a44e dm_deferred_entry_dec +EXPORT_SYMBOL_GPL drivers/md/dm-bio-prison 0x753e20b2 dm_bio_prison_create +EXPORT_SYMBOL_GPL drivers/md/dm-bio-prison 0x8f3c4b4c dm_bio_detain +EXPORT_SYMBOL_GPL drivers/md/dm-bio-prison 0x9ce981d1 dm_get_cell +EXPORT_SYMBOL_GPL drivers/md/dm-bio-prison 0xa7d73503 dm_cell_lock_promote_v2 +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 0xbe7953bf dm_bio_prison_free_cell +EXPORT_SYMBOL_GPL drivers/md/dm-bio-prison 0xc13ab51d dm_cell_release +EXPORT_SYMBOL_GPL drivers/md/dm-bio-prison 0xc587af49 dm_bio_prison_alloc_cell +EXPORT_SYMBOL_GPL drivers/md/dm-bio-prison 0xca2e3a88 dm_deferred_entry_inc +EXPORT_SYMBOL_GPL drivers/md/dm-bio-prison 0xd8619538 dm_cell_promote_or_release +EXPORT_SYMBOL_GPL drivers/md/dm-bio-prison 0xd99e003d dm_bio_prison_create_v2 +EXPORT_SYMBOL_GPL drivers/md/dm-bio-prison 0xdd5de3e0 dm_cell_visit_release +EXPORT_SYMBOL_GPL drivers/md/dm-bio-prison 0xe59794ad dm_cell_lock_v2 +EXPORT_SYMBOL_GPL drivers/md/dm-bufio 0x0ad0dc4f dm_bufio_mark_buffer_dirty +EXPORT_SYMBOL_GPL drivers/md/dm-bufio 0x111ab12a dm_bufio_mark_partial_buffer_dirty +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 0x480b015f dm_bufio_client_create +EXPORT_SYMBOL_GPL drivers/md/dm-bufio 0x6aebce95 dm_bufio_issue_discard +EXPORT_SYMBOL_GPL drivers/md/dm-bufio 0x6d3f57bd dm_bufio_get_client +EXPORT_SYMBOL_GPL drivers/md/dm-bufio 0x72f07bf4 dm_bufio_set_minimum_buffers +EXPORT_SYMBOL_GPL drivers/md/dm-bufio 0x74dcd98c dm_bufio_get_aux_data +EXPORT_SYMBOL_GPL drivers/md/dm-bufio 0x7c381a76 dm_bufio_get_block_size +EXPORT_SYMBOL_GPL drivers/md/dm-bufio 0x867e87eb dm_bufio_get_dm_io_client +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 0xb2438d54 dm_bufio_release_move +EXPORT_SYMBOL_GPL drivers/md/dm-bufio 0xc0d7df85 dm_bufio_new +EXPORT_SYMBOL_GPL drivers/md/dm-bufio 0xc90df7e5 dm_bufio_prefetch +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 0x5adc2807 btracker_destroy +EXPORT_SYMBOL_GPL drivers/md/dm-cache 0x5de611a9 btracker_nr_writebacks_queued +EXPORT_SYMBOL_GPL drivers/md/dm-cache 0x75ff410a dm_cache_policy_unregister +EXPORT_SYMBOL_GPL drivers/md/dm-cache 0x7890d535 dm_cache_policy_get_name +EXPORT_SYMBOL_GPL drivers/md/dm-cache 0x87bee547 btracker_queue +EXPORT_SYMBOL_GPL drivers/md/dm-cache 0x890723f7 dm_cache_policy_get_version +EXPORT_SYMBOL_GPL drivers/md/dm-cache 0x9be8c380 dm_cache_policy_register +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 0xadbefda4 dm_cache_policy_destroy +EXPORT_SYMBOL_GPL drivers/md/dm-cache 0xbf1a2968 btracker_create +EXPORT_SYMBOL_GPL drivers/md/dm-cache 0xccfe6409 btracker_nr_demotions_queued +EXPORT_SYMBOL_GPL drivers/md/dm-cache 0xcf8c2590 dm_cache_policy_get_hint_size +EXPORT_SYMBOL_GPL drivers/md/dm-cache 0xe1bdae47 dm_cache_policy_create +EXPORT_SYMBOL_GPL drivers/md/dm-multipath 0x1c3f46cb dm_unregister_path_selector +EXPORT_SYMBOL_GPL drivers/md/dm-multipath 0x4a6cd804 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 0x36fc3e23 dm_rh_bio_to_region +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 0x57e16c3e dm_rh_get_state +EXPORT_SYMBOL_GPL drivers/md/dm-region-hash 0x5f4a6e61 dm_rh_dec +EXPORT_SYMBOL_GPL drivers/md/dm-region-hash 0x6502968c dm_rh_dirty_log +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 0x7ed6d358 dm_region_hash_create +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 0xbaf36aa1 dm_rh_inc_pending +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 0xdf99bdd9 dm_rh_delay +EXPORT_SYMBOL_GPL drivers/md/dm-region-hash 0xf376c2a3 dm_rh_mark_nosync +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 0x09cc81fa dm_btree_cursor_skip +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x0a7e77f3 dm_btree_cursor_end +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x0b25f6bc dm_array_resize +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x0b36102c dm_array_empty +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x0be67537 dm_btree_walk +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x0e198232 dm_btree_insert +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x10e6ccea dm_bitset_clear_bit +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x16af9071 dm_array_set_value +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x1e3f728d dm_block_data +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x23ebd5fb dm_bitset_set_bit +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x2417c5c4 dm_btree_empty +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x24621ca3 dm_sm_disk_open +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x2adee13f dm_btree_cursor_next +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 0x34d45c77 dm_btree_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 0x36a34e58 dm_array_cursor_get_value +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x36b84cda dm_array_del +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x3a797d19 dm_btree_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 0x432b8178 dm_array_cursor_begin +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x4557b425 dm_bitset_test_bit +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x48d1c7dc dm_btree_find_lowest_key +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x48e323be dm_bm_unlock +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x49081644 dm_btree_remove +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x4a4cb558 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 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 0x5cf0d0bb dm_tm_create_with_sm +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x63b0c22d dm_bitset_flush +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x688d422d dm_bm_block_size +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x6af8a872 dm_array_info_init +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x6bb4bf8f dm_array_cursor_next +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x6e1e3821 dm_array_walk +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x6f2fe3c4 dm_btree_remove_leaves +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 0x7485935a dm_btree_lookup +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x7551b46e dm_tm_open_with_sm +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x764567c8 dm_btree_find_highest_key +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 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 0x885b0024 dm_array_new +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x89783bda dm_array_cursor_end +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 0x95a52abd dm_bm_is_read_only +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x97263968 dm_bitset_resize +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x98db2687 dm_bitset_cursor_end +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 0x9e98460e dm_bitset_empty +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x9fc82a9f dm_block_manager_create +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0xa2ea5542 dm_bitset_del +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0xa3cc1157 dm_btree_cursor_begin +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0xa51fbedc dm_bitset_new +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0xaab0ef04 dm_bitset_cursor_skip +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0xb6949944 dm_array_get_value +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0xbb461fb7 dm_bitset_cursor_begin +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0xbbb5df05 dm_array_cursor_skip +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0xc248bde2 dm_disk_bitset_init +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0xcedfc878 dm_bitset_cursor_get_value +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0xd163cade dm_tm_commit +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0xd51c29f1 dm_sm_disk_create +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0xd6711a58 dm_bitset_cursor_next +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0xe781f874 dm_tm_dec +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0xf398644f dm_btree_lookup_next +EXPORT_SYMBOL_GPL drivers/media/cec/core/cec 0x0566520f cec_notifier_cec_adap_unregister +EXPORT_SYMBOL_GPL drivers/media/cec/core/cec 0x0589a63d cec_fill_conn_info_from_drm +EXPORT_SYMBOL_GPL drivers/media/cec/core/cec 0x070930f9 cec_queue_pin_hpd_event +EXPORT_SYMBOL_GPL drivers/media/cec/core/cec 0x276245f9 cec_transmit_done_ts +EXPORT_SYMBOL_GPL drivers/media/cec/core/cec 0x395a644e cec_transmit_attempt_done_ts +EXPORT_SYMBOL_GPL drivers/media/cec/core/cec 0x4362daf0 cec_notifier_parse_hdmi_phandle +EXPORT_SYMBOL_GPL drivers/media/cec/core/cec 0x5ea62134 cec_s_phys_addr +EXPORT_SYMBOL_GPL drivers/media/cec/core/cec 0x72aea291 cec_notifier_conn_register +EXPORT_SYMBOL_GPL drivers/media/cec/core/cec 0x7896c333 cec_queue_pin_cec_event +EXPORT_SYMBOL_GPL drivers/media/cec/core/cec 0x7fdea215 cec_pin_changed +EXPORT_SYMBOL_GPL drivers/media/cec/core/cec 0x8f1b0685 cec_notifier_cec_adap_register +EXPORT_SYMBOL_GPL drivers/media/cec/core/cec 0x933e7ac6 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 0xab536c6f cec_received_msg_ts +EXPORT_SYMBOL_GPL drivers/media/cec/core/cec 0xac9cf7b9 cec_allocate_adapter +EXPORT_SYMBOL_GPL drivers/media/cec/core/cec 0xaee236c6 cec_notifier_conn_unregister +EXPORT_SYMBOL_GPL drivers/media/cec/core/cec 0xb3895539 cec_queue_pin_5v_event +EXPORT_SYMBOL_GPL drivers/media/cec/core/cec 0xb6d320ea cec_s_conn_info +EXPORT_SYMBOL_GPL drivers/media/cec/core/cec 0xb6fcfba9 cec_register_adapter +EXPORT_SYMBOL_GPL drivers/media/cec/core/cec 0xbe4de675 cec_get_edid_phys_addr +EXPORT_SYMBOL_GPL drivers/media/cec/core/cec 0xe0bb80dd cec_pin_allocate_adapter +EXPORT_SYMBOL_GPL drivers/media/cec/core/cec 0xe85617d7 cec_unregister_adapter +EXPORT_SYMBOL_GPL drivers/media/cec/core/cec 0xe9ca344f cec_delete_adapter +EXPORT_SYMBOL_GPL drivers/media/cec/core/cec 0xea875d12 cec_s_phys_addr_from_edid +EXPORT_SYMBOL_GPL drivers/media/cec/core/cec 0xf8c99364 cec_notifier_set_phys_addr_from_edid +EXPORT_SYMBOL_GPL drivers/media/cec/core/cec 0xfb3a2e53 cec_s_log_addrs +EXPORT_SYMBOL_GPL drivers/media/common/b2c2/b2c2-flexcop 0x66c0289a b2c2_flexcop_debug +EXPORT_SYMBOL_GPL drivers/media/common/saa7146/saa7146 0x29d09b62 saa7146_pgtable_free +EXPORT_SYMBOL_GPL drivers/media/common/saa7146/saa7146 0x36ca6ebc saa7146_register_extension +EXPORT_SYMBOL_GPL drivers/media/common/saa7146/saa7146 0x43a86594 saa7146_vmalloc_build_pgtable +EXPORT_SYMBOL_GPL drivers/media/common/saa7146/saa7146 0x8de98562 saa7146_pgtable_alloc +EXPORT_SYMBOL_GPL drivers/media/common/saa7146/saa7146 0xa69473a7 saa7146_pgtable_build_single +EXPORT_SYMBOL_GPL drivers/media/common/saa7146/saa7146 0xaad65ec8 saa7146_vfree_destroy_pgtable +EXPORT_SYMBOL_GPL drivers/media/common/saa7146/saa7146 0xb052ceed saa7146_wait_for_debi_done +EXPORT_SYMBOL_GPL drivers/media/common/saa7146/saa7146 0xc50fed88 saa7146_unregister_extension +EXPORT_SYMBOL_GPL drivers/media/common/saa7146/saa7146 0xcc410243 saa7146_i2c_adapter_prepare +EXPORT_SYMBOL_GPL drivers/media/common/saa7146/saa7146 0xe3cd9b5c saa7146_debug +EXPORT_SYMBOL_GPL drivers/media/common/saa7146/saa7146 0xe8a9c161 saa7146_setgpio +EXPORT_SYMBOL_GPL drivers/media/common/saa7146/saa7146_vv 0x1f194c07 saa7146_unregister_device +EXPORT_SYMBOL_GPL drivers/media/common/saa7146/saa7146_vv 0x26e54983 saa7146_register_device +EXPORT_SYMBOL_GPL drivers/media/common/saa7146/saa7146_vv 0x8374db55 saa7146_vv_release +EXPORT_SYMBOL_GPL drivers/media/common/saa7146/saa7146_vv 0xad8e21aa saa7146_start_preview +EXPORT_SYMBOL_GPL drivers/media/common/saa7146/saa7146_vv 0xc7ba1440 saa7146_set_hps_source_and_sync +EXPORT_SYMBOL_GPL drivers/media/common/saa7146/saa7146_vv 0xdf310ab3 saa7146_vv_init +EXPORT_SYMBOL_GPL drivers/media/common/saa7146/saa7146_vv 0xefb813e5 saa7146_stop_preview +EXPORT_SYMBOL_GPL drivers/media/common/siano/smsmdtv 0x0a36ed0a smscore_register_client +EXPORT_SYMBOL_GPL drivers/media/common/siano/smsmdtv 0x13f4fc2d smscore_onresponse +EXPORT_SYMBOL_GPL drivers/media/common/siano/smsmdtv 0x18a74af1 sms_board_power +EXPORT_SYMBOL_GPL drivers/media/common/siano/smsmdtv 0x21e36bf2 smscore_registry_getmode +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 0x45284ae9 smsendian_handle_rx_message +EXPORT_SYMBOL_GPL drivers/media/common/siano/smsmdtv 0x4919180a smscore_unregister_hotplug +EXPORT_SYMBOL_GPL drivers/media/common/siano/smsmdtv 0x4da9fc25 smscore_unregister_device +EXPORT_SYMBOL_GPL drivers/media/common/siano/smsmdtv 0x5316e6ee smscore_putbuffer +EXPORT_SYMBOL_GPL drivers/media/common/siano/smsmdtv 0x53565807 smscore_get_board_id +EXPORT_SYMBOL_GPL drivers/media/common/siano/smsmdtv 0x6a412362 smscore_register_hotplug +EXPORT_SYMBOL_GPL drivers/media/common/siano/smsmdtv 0x74ee9098 sms_board_load_modules +EXPORT_SYMBOL_GPL drivers/media/common/siano/smsmdtv 0x7a6f21af smscore_register_device +EXPORT_SYMBOL_GPL drivers/media/common/siano/smsmdtv 0x7b165e57 sms_board_lna_control +EXPORT_SYMBOL_GPL drivers/media/common/siano/smsmdtv 0x7c576277 smsendian_handle_message_header +EXPORT_SYMBOL_GPL drivers/media/common/siano/smsmdtv 0x7f2eb1c7 sms_board_event +EXPORT_SYMBOL_GPL drivers/media/common/siano/smsmdtv 0x844539ae sms_get_board +EXPORT_SYMBOL_GPL drivers/media/common/siano/smsmdtv 0x8a8793b2 smscore_get_device_mode +EXPORT_SYMBOL_GPL drivers/media/common/siano/smsmdtv 0x8f9bcb2d sms_board_led_feedback +EXPORT_SYMBOL_GPL drivers/media/common/siano/smsmdtv 0x979082cd smscore_set_board_id +EXPORT_SYMBOL_GPL drivers/media/common/siano/smsmdtv 0x99a81ab3 smsclient_sendrequest +EXPORT_SYMBOL_GPL drivers/media/common/siano/smsmdtv 0xaeafb8d6 smscore_start_device +EXPORT_SYMBOL_GPL drivers/media/common/siano/smsmdtv 0xb4dbddb8 sms_board_setup +EXPORT_SYMBOL_GPL drivers/media/common/siano/smsmdtv 0xbbdb5c42 smscore_unregister_client +EXPORT_SYMBOL_GPL drivers/media/common/siano/smsmdtv 0xfab7d955 smscore_getbuffer +EXPORT_SYMBOL_GPL drivers/media/common/v4l2-tpg/v4l2-tpg 0x03005a48 tpg_alloc +EXPORT_SYMBOL_GPL drivers/media/common/v4l2-tpg/v4l2-tpg 0x040dc7cd tpg_aspect_strings +EXPORT_SYMBOL_GPL drivers/media/common/v4l2-tpg/v4l2-tpg 0x4d1d285c tpg_init +EXPORT_SYMBOL_GPL drivers/media/common/v4l2-tpg/v4l2-tpg 0x517e7ccd tpg_fill_plane_buffer +EXPORT_SYMBOL_GPL drivers/media/common/v4l2-tpg/v4l2-tpg 0x579c6308 tpg_gen_text +EXPORT_SYMBOL_GPL drivers/media/common/v4l2-tpg/v4l2-tpg 0x6026aaf0 tpg_log_status +EXPORT_SYMBOL_GPL drivers/media/common/v4l2-tpg/v4l2-tpg 0x6960e899 tpg_s_crop_compose +EXPORT_SYMBOL_GPL drivers/media/common/v4l2-tpg/v4l2-tpg 0x756516e7 tpg_s_fourcc +EXPORT_SYMBOL_GPL drivers/media/common/v4l2-tpg/v4l2-tpg 0x7a5d8c0b tpg_update_mv_step +EXPORT_SYMBOL_GPL drivers/media/common/v4l2-tpg/v4l2-tpg 0x86b4ddf7 tpg_reset_source +EXPORT_SYMBOL_GPL drivers/media/common/v4l2-tpg/v4l2-tpg 0x975a1e29 tpg_g_interleaved_plane +EXPORT_SYMBOL_GPL drivers/media/common/v4l2-tpg/v4l2-tpg 0xaa5503d9 tpg_set_font +EXPORT_SYMBOL_GPL drivers/media/common/v4l2-tpg/v4l2-tpg 0xc6110b6e tpg_free +EXPORT_SYMBOL_GPL drivers/media/common/v4l2-tpg/v4l2-tpg 0xc6808be7 tpg_calc_text_basep +EXPORT_SYMBOL_GPL drivers/media/common/v4l2-tpg/v4l2-tpg 0xce8159bb tpg_pattern_strings +EXPORT_SYMBOL_GPL drivers/media/common/v4l2-tpg/v4l2-tpg 0xf65c5e46 tpg_fillbuffer +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-common 0x0834aacd vb2_buffer_done +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-common 0x0b856965 vb2_mmap +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-common 0x2e385f94 vb2_request_object_is_buffer +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-common 0x326e10f4 vb2_core_create_bufs +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-common 0x3391770f vb2_read +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-common 0x389ceeb6 vb2_thread_stop +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-common 0x3f623848 __tracepoint_vb2_qbuf +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-common 0x4e1ce95a vb2_queue_error +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-common 0x638ad287 vb2_plane_vaddr +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-common 0x6a6a23d3 vb2_core_queue_init +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-common 0x6b31d8cf vb2_plane_cookie +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-common 0x6d3b4e43 vb2_core_streamon +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-common 0x78c74bf4 vb2_core_streamoff +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-common 0x8ddae992 __tracepoint_vb2_buf_done +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-common 0x90828029 __tracepoint_vb2_dqbuf +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-common 0x9440cbfc vb2_write +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-common 0x98b4e401 vb2_discard_done +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-common 0x9b9cfc9d vb2_core_queue_release +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-common 0x9e786678 vb2_request_buffer_cnt +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-common 0xa086a15f vb2_core_poll +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-common 0xac65ec95 vb2_core_reqbufs +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-common 0xb3d924e4 vb2_core_querybuf +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-common 0xc88264fe __tracepoint_vb2_buf_queue +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-common 0xcd48957b vb2_core_dqbuf +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-common 0xce3742f3 vb2_thread_start +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-common 0xdf209a7b vb2_core_qbuf +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-common 0xe594a0ff vb2_core_prepare_buf +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-common 0xe737932e vb2_core_expbuf +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-common 0xf968a935 vb2_wait_for_all_buffers +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-dma-contig 0x31754cbe vb2_dma_contig_memops +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-dma-contig 0xf9198994 vb2_dma_contig_set_max_seg_size +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-dma-sg 0x9ef5df83 vb2_dma_sg_memops +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-memops 0xdbe8030d vb2_common_vm_ops +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-v4l2 0x0561d442 vb2_ioctl_prepare_buf +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-v4l2 0x081e9a5c vb2_fop_read +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-v4l2 0x0b246045 vb2_request_queue +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-v4l2 0x0e29f6b7 vb2_queue_init +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-v4l2 0x1314167c vb2_fop_write +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-v4l2 0x166b6b75 vb2_find_timestamp +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-v4l2 0x2475aab7 vb2_ioctl_expbuf +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-v4l2 0x26143a24 vb2_prepare_buf +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-v4l2 0x3155a402 vb2_ioctl_reqbufs +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-v4l2 0x42b05527 vb2_ops_wait_finish +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-v4l2 0x432856d0 vb2_expbuf +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-v4l2 0x5f3d36bc vb2_ioctl_streamon +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-v4l2 0x64aefaeb vb2_ioctl_create_bufs +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-v4l2 0x79a2172e vb2_dqbuf +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-v4l2 0x821850b8 vb2_fop_poll +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-v4l2 0x9a19616a vb2_ioctl_dqbuf +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-v4l2 0xaf707b1b vb2_queue_release +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-v4l2 0xb34b6e04 vb2_ioctl_streamoff +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-v4l2 0xb7e9a8a9 vb2_streamon +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-v4l2 0xc0cb2a60 vb2_create_bufs +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-v4l2 0xc268e449 vb2_streamoff +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-v4l2 0xc5b07fb1 vb2_fop_mmap +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-v4l2 0xd355b99c vb2_ops_wait_prepare +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-v4l2 0xd6556281 vb2_fop_release +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-v4l2 0xd7b1de83 vb2_request_validate +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-v4l2 0xde869b3a _vb2_fop_release +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-v4l2 0xdfd33745 vb2_poll +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-v4l2 0xef6ad0a5 vb2_ioctl_querybuf +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-v4l2 0xef795de9 vb2_ioctl_qbuf +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-v4l2 0xf4f2f426 vb2_reqbufs +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-v4l2 0xfb84958a vb2_qbuf +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-vmalloc 0x0df25d78 vb2_vmalloc_memops +EXPORT_SYMBOL_GPL drivers/media/dvb-core/dvb-core 0x87f31d3f dvb_module_probe +EXPORT_SYMBOL_GPL drivers/media/dvb-core/dvb-core 0xa546b84d dvb_create_media_graph +EXPORT_SYMBOL_GPL drivers/media/dvb-core/dvb-core 0xbdd09eaa dvb_module_release +EXPORT_SYMBOL_GPL drivers/media/dvb-frontends/as102_fe 0x451ec8f4 as102_attach +EXPORT_SYMBOL_GPL drivers/media/dvb-frontends/cx24117 0xbfda4cc1 cx24117_attach +EXPORT_SYMBOL_GPL drivers/media/dvb-frontends/gp8psk-fe 0xd63cfd08 gp8psk_fe_attach +EXPORT_SYMBOL_GPL drivers/media/dvb-frontends/mxl5xx 0xc9000d71 mxl5xx_attach +EXPORT_SYMBOL_GPL drivers/media/dvb-frontends/stv0910 0x5191f33f stv0910_attach +EXPORT_SYMBOL_GPL drivers/media/dvb-frontends/stv6111 0x2087c4ca stv6111_attach +EXPORT_SYMBOL_GPL drivers/media/dvb-frontends/tda18271c2dd 0x505e29b9 tda18271c2dd_attach +EXPORT_SYMBOL_GPL drivers/media/i2c/aptina-pll 0x0a979bd6 aptina_pll_calculate +EXPORT_SYMBOL_GPL drivers/media/i2c/smiapp-pll 0x1b8ee50f smiapp_pll_calculate +EXPORT_SYMBOL_GPL drivers/media/mc/mc 0x0104b91e media_device_unregister_entity +EXPORT_SYMBOL_GPL drivers/media/mc/mc 0x03d6a658 media_request_object_init +EXPORT_SYMBOL_GPL drivers/media/mc/mc 0x0e7cb7a3 __media_remove_intf_link +EXPORT_SYMBOL_GPL drivers/media/mc/mc 0x0ef02ae5 media_request_put +EXPORT_SYMBOL_GPL drivers/media/mc/mc 0x126f6b1a media_graph_walk_start +EXPORT_SYMBOL_GPL drivers/media/mc/mc 0x13623688 __media_pipeline_stop +EXPORT_SYMBOL_GPL drivers/media/mc/mc 0x1578c2a1 media_graph_walk_cleanup +EXPORT_SYMBOL_GPL drivers/media/mc/mc 0x181470b5 __media_remove_intf_links +EXPORT_SYMBOL_GPL drivers/media/mc/mc 0x1b1330d4 media_pipeline_stop +EXPORT_SYMBOL_GPL drivers/media/mc/mc 0x2b3ef1fb media_remove_intf_links +EXPORT_SYMBOL_GPL drivers/media/mc/mc 0x2d6c6f17 media_device_usb_allocate +EXPORT_SYMBOL_GPL drivers/media/mc/mc 0x30f125dc media_device_init +EXPORT_SYMBOL_GPL drivers/media/mc/mc 0x39625cd7 media_device_register_entity +EXPORT_SYMBOL_GPL drivers/media/mc/mc 0x405c335d media_entity_setup_link +EXPORT_SYMBOL_GPL drivers/media/mc/mc 0x41253ebe media_entity_remove_links +EXPORT_SYMBOL_GPL drivers/media/mc/mc 0x556328d5 media_graph_walk_init +EXPORT_SYMBOL_GPL drivers/media/mc/mc 0x57a4ebad media_entity_get_fwnode_pad +EXPORT_SYMBOL_GPL drivers/media/mc/mc 0x6376fae0 media_request_object_complete +EXPORT_SYMBOL_GPL drivers/media/mc/mc 0x68b995d3 __media_entity_remove_links +EXPORT_SYMBOL_GPL drivers/media/mc/mc 0x6ca9db7a media_remove_intf_link +EXPORT_SYMBOL_GPL drivers/media/mc/mc 0x74447ef1 media_devnode_remove +EXPORT_SYMBOL_GPL drivers/media/mc/mc 0x7471fbc8 media_device_register_entity_notify +EXPORT_SYMBOL_GPL drivers/media/mc/mc 0x7efbc616 media_get_pad_index +EXPORT_SYMBOL_GPL drivers/media/mc/mc 0x8c7a6ff4 media_device_unregister +EXPORT_SYMBOL_GPL drivers/media/mc/mc 0x939e6987 media_request_object_unbind +EXPORT_SYMBOL_GPL drivers/media/mc/mc 0x9a2b7ed2 media_create_intf_link +EXPORT_SYMBOL_GPL drivers/media/mc/mc 0xa382b436 media_device_delete +EXPORT_SYMBOL_GPL drivers/media/mc/mc 0xa4032c47 __media_device_usb_init +EXPORT_SYMBOL_GPL drivers/media/mc/mc 0xaafccf62 media_create_pad_links +EXPORT_SYMBOL_GPL drivers/media/mc/mc 0xb19a372d media_request_get_by_fd +EXPORT_SYMBOL_GPL drivers/media/mc/mc 0xb853a52c media_request_object_put +EXPORT_SYMBOL_GPL drivers/media/mc/mc 0xbd00e227 media_entity_remote_pad +EXPORT_SYMBOL_GPL drivers/media/mc/mc 0xc408036c media_create_pad_link +EXPORT_SYMBOL_GPL drivers/media/mc/mc 0xc505f73b media_device_pci_init +EXPORT_SYMBOL_GPL drivers/media/mc/mc 0xc5c01cb2 media_request_object_bind +EXPORT_SYMBOL_GPL drivers/media/mc/mc 0xcae6eb1c media_devnode_create +EXPORT_SYMBOL_GPL drivers/media/mc/mc 0xccc9c158 __media_device_register +EXPORT_SYMBOL_GPL drivers/media/mc/mc 0xd1a9ac7b media_device_cleanup +EXPORT_SYMBOL_GPL drivers/media/mc/mc 0xd7dae462 __media_pipeline_start +EXPORT_SYMBOL_GPL drivers/media/mc/mc 0xd90bfde8 media_entity_pads_init +EXPORT_SYMBOL_GPL drivers/media/mc/mc 0xda2c9494 __media_entity_setup_link +EXPORT_SYMBOL_GPL drivers/media/mc/mc 0xdb6ef8a3 media_entity_find_link +EXPORT_SYMBOL_GPL drivers/media/mc/mc 0xdb843381 media_device_unregister_entity_notify +EXPORT_SYMBOL_GPL drivers/media/mc/mc 0xdbda6304 media_graph_walk_next +EXPORT_SYMBOL_GPL drivers/media/mc/mc 0xdc581289 __media_entity_enum_init +EXPORT_SYMBOL_GPL drivers/media/mc/mc 0xe5ceecd6 media_entity_enum_cleanup +EXPORT_SYMBOL_GPL drivers/media/mc/mc 0xe65ebe27 media_pipeline_start +EXPORT_SYMBOL_GPL drivers/media/mc/mc 0xea2e1628 media_request_object_find +EXPORT_SYMBOL_GPL drivers/media/pci/cx88/cx88xx 0xcb7b8f89 cx88_setup_xc3028 +EXPORT_SYMBOL_GPL drivers/media/pci/mantis/mantis_core 0x0b78da16 mantis_dvb_exit +EXPORT_SYMBOL_GPL drivers/media/pci/mantis/mantis_core 0x115f29e8 mantis_gpio_set_bits +EXPORT_SYMBOL_GPL drivers/media/pci/mantis/mantis_core 0x11605eb0 mantis_dvb_init +EXPORT_SYMBOL_GPL drivers/media/pci/mantis/mantis_core 0x3b5b6bd5 mantis_frontend_power +EXPORT_SYMBOL_GPL drivers/media/pci/mantis/mantis_core 0x3c6e3da3 mantis_uart_init +EXPORT_SYMBOL_GPL drivers/media/pci/mantis/mantis_core 0x426c6ab4 mantis_pci_exit +EXPORT_SYMBOL_GPL drivers/media/pci/mantis/mantis_core 0x45f725fb mantis_input_init +EXPORT_SYMBOL_GPL drivers/media/pci/mantis/mantis_core 0x4801dae2 mantis_pci_init +EXPORT_SYMBOL_GPL drivers/media/pci/mantis/mantis_core 0x6e59b3c6 mantis_frontend_soft_reset +EXPORT_SYMBOL_GPL drivers/media/pci/mantis/mantis_core 0x9bdb3e2d mantis_uart_exit +EXPORT_SYMBOL_GPL drivers/media/pci/mantis/mantis_core 0xa6a9a0cd mantis_ca_init +EXPORT_SYMBOL_GPL drivers/media/pci/mantis/mantis_core 0xa994905e mantis_input_exit +EXPORT_SYMBOL_GPL drivers/media/pci/mantis/mantis_core 0xc684f856 mantis_i2c_init +EXPORT_SYMBOL_GPL drivers/media/pci/mantis/mantis_core 0xc7ab852b mantis_dma_init +EXPORT_SYMBOL_GPL drivers/media/pci/mantis/mantis_core 0xdc9c7cf0 mantis_i2c_exit +EXPORT_SYMBOL_GPL drivers/media/pci/mantis/mantis_core 0xddb3018d mantis_dma_exit +EXPORT_SYMBOL_GPL drivers/media/pci/mantis/mantis_core 0xe0875ba1 mantis_stream_control +EXPORT_SYMBOL_GPL drivers/media/pci/mantis/mantis_core 0xe6cf887c mantis_get_mac +EXPORT_SYMBOL_GPL drivers/media/pci/mantis/mantis_core 0xed83c3d3 mantis_ca_exit +EXPORT_SYMBOL_GPL drivers/media/pci/saa7134/saa7134 0x3dfb047a saa7134_ts_start_streaming +EXPORT_SYMBOL_GPL drivers/media/pci/saa7134/saa7134 0x3f44f5c8 saa7134_querystd +EXPORT_SYMBOL_GPL drivers/media/pci/saa7134/saa7134 0x47a07f67 saa7134_stop_streaming +EXPORT_SYMBOL_GPL drivers/media/pci/saa7134/saa7134 0x48aa8713 saa7134_ts_stop_streaming +EXPORT_SYMBOL_GPL drivers/media/pci/saa7134/saa7134 0x499a3c04 saa7134_vb2_buffer_queue +EXPORT_SYMBOL_GPL drivers/media/pci/saa7134/saa7134 0x65e7d8c5 saa7134_g_input +EXPORT_SYMBOL_GPL drivers/media/pci/saa7134/saa7134 0x6eda67b2 saa7134_querycap +EXPORT_SYMBOL_GPL drivers/media/pci/saa7134/saa7134 0x9cd921e7 saa7134_ts_qops +EXPORT_SYMBOL_GPL drivers/media/pci/saa7134/saa7134 0x9dfad91c saa7134_ts_queue_setup +EXPORT_SYMBOL_GPL drivers/media/pci/saa7134/saa7134 0xa2a0f311 saa7134_s_std +EXPORT_SYMBOL_GPL drivers/media/pci/saa7134/saa7134 0xa5e4f4fd saa7134_enum_input +EXPORT_SYMBOL_GPL drivers/media/pci/saa7134/saa7134 0xb24d37c6 saa7134_s_tuner +EXPORT_SYMBOL_GPL drivers/media/pci/saa7134/saa7134 0xb2733180 saa7134_ts_buffer_prepare +EXPORT_SYMBOL_GPL drivers/media/pci/saa7134/saa7134 0xc822d52c saa7134_g_std +EXPORT_SYMBOL_GPL drivers/media/pci/saa7134/saa7134 0xc877ae40 saa7134_s_input +EXPORT_SYMBOL_GPL drivers/media/pci/saa7134/saa7134 0xd231bb0a saa7134_g_frequency +EXPORT_SYMBOL_GPL drivers/media/pci/saa7134/saa7134 0xd5179b18 saa7134_g_tuner +EXPORT_SYMBOL_GPL drivers/media/pci/saa7134/saa7134 0xf518ba3e saa7134_s_frequency +EXPORT_SYMBOL_GPL drivers/media/pci/saa7134/saa7134 0xf6776b88 saa7134_ts_buffer_init +EXPORT_SYMBOL_GPL drivers/media/pci/ttpci/budget-core 0x2dd556a0 ttpci_budget_debiwrite +EXPORT_SYMBOL_GPL drivers/media/pci/ttpci/budget-core 0x37eb4bac ttpci_budget_init_hooks +EXPORT_SYMBOL_GPL drivers/media/pci/ttpci/budget-core 0x53b45526 ttpci_budget_irq10_handler +EXPORT_SYMBOL_GPL drivers/media/pci/ttpci/budget-core 0x592cf3dd ttpci_budget_init +EXPORT_SYMBOL_GPL drivers/media/pci/ttpci/budget-core 0x7948c222 budget_debug +EXPORT_SYMBOL_GPL drivers/media/pci/ttpci/budget-core 0xa12211df ttpci_budget_deinit +EXPORT_SYMBOL_GPL drivers/media/pci/ttpci/budget-core 0xba0666fe ttpci_budget_set_video_port +EXPORT_SYMBOL_GPL drivers/media/pci/ttpci/budget-core 0xcb9731ba ttpci_budget_debiread +EXPORT_SYMBOL_GPL drivers/media/platform/marvell-ccic/mcam-core 0x5d9c3870 mccic_shutdown +EXPORT_SYMBOL_GPL drivers/media/platform/marvell-ccic/mcam-core 0x735c78bc mccic_suspend +EXPORT_SYMBOL_GPL drivers/media/platform/marvell-ccic/mcam-core 0xa1093cf3 mccic_resume +EXPORT_SYMBOL_GPL drivers/media/platform/marvell-ccic/mcam-core 0xdb5e427c mccic_irq +EXPORT_SYMBOL_GPL drivers/media/platform/marvell-ccic/mcam-core 0xf47aaf0a mccic_register +EXPORT_SYMBOL_GPL drivers/media/platform/mtk-vpu/mtk-vpu 0x36b38087 vpu_get_plat_device +EXPORT_SYMBOL_GPL drivers/media/platform/mtk-vpu/mtk-vpu 0x39fccffa vpu_get_vdec_hw_capa +EXPORT_SYMBOL_GPL drivers/media/platform/mtk-vpu/mtk-vpu 0x485cc91f vpu_load_firmware +EXPORT_SYMBOL_GPL drivers/media/platform/mtk-vpu/mtk-vpu 0x5ea40e20 vpu_mapping_dm_addr +EXPORT_SYMBOL_GPL drivers/media/platform/mtk-vpu/mtk-vpu 0x898f74bd vpu_ipi_send +EXPORT_SYMBOL_GPL drivers/media/platform/mtk-vpu/mtk-vpu 0x92af5a6f vpu_get_venc_hw_capa +EXPORT_SYMBOL_GPL drivers/media/platform/mtk-vpu/mtk-vpu 0xb71edc09 vpu_ipi_register +EXPORT_SYMBOL_GPL drivers/media/platform/mtk-vpu/mtk-vpu 0xf82f3494 vpu_wdt_reg_handler +EXPORT_SYMBOL_GPL drivers/media/platform/qcom/venus/venus-core 0x0a6aec01 venus_helper_release_buf_ref +EXPORT_SYMBOL_GPL drivers/media/platform/qcom/venus/venus-core 0x0c4422a3 venus_helper_set_color_format +EXPORT_SYMBOL_GPL drivers/media/platform/qcom/venus/venus-core 0x27b12c5f venus_helper_m2m_device_run +EXPORT_SYMBOL_GPL drivers/media/platform/qcom/venus/venus-core 0x28c72999 hfi_session_unload_res +EXPORT_SYMBOL_GPL drivers/media/platform/qcom/venus/venus-core 0x2b9aa5a1 venus_helper_intbufs_realloc +EXPORT_SYMBOL_GPL drivers/media/platform/qcom/venus/venus-core 0x2d693ecb venus_helper_m2m_job_abort +EXPORT_SYMBOL_GPL drivers/media/platform/qcom/venus/venus-core 0x2dd5f609 venus_helper_set_dyn_bufmode +EXPORT_SYMBOL_GPL drivers/media/platform/qcom/venus/venus-core 0x301a30d9 venus_helper_vb2_stop_streaming +EXPORT_SYMBOL_GPL drivers/media/platform/qcom/venus/venus-core 0x3043dee7 venus_helper_queue_dpb_bufs +EXPORT_SYMBOL_GPL drivers/media/platform/qcom/venus/venus-core 0x33a570fe hfi_session_init +EXPORT_SYMBOL_GPL drivers/media/platform/qcom/venus/venus-core 0x35211ba4 venus_helper_set_input_resolution +EXPORT_SYMBOL_GPL drivers/media/platform/qcom/venus/venus-core 0x3563602c venus_helper_init_instance +EXPORT_SYMBOL_GPL drivers/media/platform/qcom/venus/venus-core 0x381340c4 venus_helper_process_initial_out_bufs +EXPORT_SYMBOL_GPL drivers/media/platform/qcom/venus/venus-core 0x3d615aae hfi_session_create +EXPORT_SYMBOL_GPL drivers/media/platform/qcom/venus/venus-core 0x42317635 venus_helper_get_ts_metadata +EXPORT_SYMBOL_GPL drivers/media/platform/qcom/venus/venus-core 0x46b06c55 venus_helper_buffers_done +EXPORT_SYMBOL_GPL drivers/media/platform/qcom/venus/venus-core 0x4cd48ce6 venus_helper_init_codec_freq_data +EXPORT_SYMBOL_GPL drivers/media/platform/qcom/venus/venus-core 0x5337fc55 venus_helper_get_opb_size +EXPORT_SYMBOL_GPL drivers/media/platform/qcom/venus/venus-core 0x76c1d154 hfi_session_set_property +EXPORT_SYMBOL_GPL drivers/media/platform/qcom/venus/venus-core 0x76e84045 venus_helper_set_bufsize +EXPORT_SYMBOL_GPL drivers/media/platform/qcom/venus/venus-core 0x805fc6b8 hfi_session_stop +EXPORT_SYMBOL_GPL drivers/media/platform/qcom/venus/venus-core 0x82499855 venus_helper_set_work_mode +EXPORT_SYMBOL_GPL drivers/media/platform/qcom/venus/venus-core 0x872f0ce1 venus_helper_process_initial_cap_bufs +EXPORT_SYMBOL_GPL drivers/media/platform/qcom/venus/venus-core 0x996f784b hfi_session_flush +EXPORT_SYMBOL_GPL drivers/media/platform/qcom/venus/venus-core 0x9f40d49a venus_helper_check_codec +EXPORT_SYMBOL_GPL drivers/media/platform/qcom/venus/venus-core 0xa19967ee venus_helper_find_buf +EXPORT_SYMBOL_GPL drivers/media/platform/qcom/venus/venus-core 0xa4cb37c7 hfi_session_deinit +EXPORT_SYMBOL_GPL drivers/media/platform/qcom/venus/venus-core 0xb0513d86 venus_helper_free_dpb_bufs +EXPORT_SYMBOL_GPL drivers/media/platform/qcom/venus/venus-core 0xb27399c4 venus_helper_unregister_bufs +EXPORT_SYMBOL_GPL drivers/media/platform/qcom/venus/venus-core 0xb5da1da9 venus_helper_get_framesz_raw +EXPORT_SYMBOL_GPL drivers/media/platform/qcom/venus/venus-core 0xb6cf6318 venus_helper_set_output_resolution +EXPORT_SYMBOL_GPL drivers/media/platform/qcom/venus/venus-core 0xb9089908 venus_helper_intbufs_free +EXPORT_SYMBOL_GPL drivers/media/platform/qcom/venus/venus-core 0xbebc434b hfi_session_process_buf +EXPORT_SYMBOL_GPL drivers/media/platform/qcom/venus/venus-core 0xc3f7da89 venus_helper_get_out_fmts +EXPORT_SYMBOL_GPL drivers/media/platform/qcom/venus/venus-core 0xcb4c6f22 hfi_session_continue +EXPORT_SYMBOL_GPL drivers/media/platform/qcom/venus/venus-core 0xd14dfa2a venus_helper_set_multistream +EXPORT_SYMBOL_GPL drivers/media/platform/qcom/venus/venus-core 0xd21da2e4 venus_helper_get_framesz +EXPORT_SYMBOL_GPL drivers/media/platform/qcom/venus/venus-core 0xd369be24 venus_helper_vb2_buf_prepare +EXPORT_SYMBOL_GPL drivers/media/platform/qcom/venus/venus-core 0xde4f695a hfi_session_start +EXPORT_SYMBOL_GPL drivers/media/platform/qcom/venus/venus-core 0xded0b006 venus_helper_vb2_start_streaming +EXPORT_SYMBOL_GPL drivers/media/platform/qcom/venus/venus-core 0xe1dbfce7 venus_helper_alloc_dpb_bufs +EXPORT_SYMBOL_GPL drivers/media/platform/qcom/venus/venus-core 0xe5c76dd2 hfi_session_destroy +EXPORT_SYMBOL_GPL drivers/media/platform/qcom/venus/venus-core 0xe5fbe3b9 hfi_session_abort +EXPORT_SYMBOL_GPL drivers/media/platform/qcom/venus/venus-core 0xe72ac092 venus_helper_acquire_buf_ref +EXPORT_SYMBOL_GPL drivers/media/platform/qcom/venus/venus-core 0xedc00121 venus_helper_vb2_buf_queue +EXPORT_SYMBOL_GPL drivers/media/platform/qcom/venus/venus-core 0xf164dc06 venus_helper_get_bufreq +EXPORT_SYMBOL_GPL drivers/media/platform/qcom/venus/venus-core 0xf1ead2ff venus_helper_set_num_bufs +EXPORT_SYMBOL_GPL drivers/media/platform/qcom/venus/venus-core 0xf249b20d venus_helper_intbufs_alloc +EXPORT_SYMBOL_GPL drivers/media/platform/qcom/venus/venus-core 0xf4c641b8 hfi_session_get_property +EXPORT_SYMBOL_GPL drivers/media/platform/qcom/venus/venus-core 0xfbbd39b5 venus_helper_vb2_buf_init +EXPORT_SYMBOL_GPL drivers/media/platform/qcom/venus/venus-core 0xfd5b6962 venus_helper_set_raw_format +EXPORT_SYMBOL_GPL drivers/media/platform/rcar-fcp 0x3d858696 rcar_fcp_put +EXPORT_SYMBOL_GPL drivers/media/platform/rcar-fcp 0x4ad5d888 rcar_fcp_enable +EXPORT_SYMBOL_GPL drivers/media/platform/rcar-fcp 0x5fe6f6e8 rcar_fcp_disable +EXPORT_SYMBOL_GPL drivers/media/platform/rcar-fcp 0x9877c29f rcar_fcp_get +EXPORT_SYMBOL_GPL drivers/media/platform/rcar-fcp 0xc1f82373 rcar_fcp_get_device +EXPORT_SYMBOL_GPL drivers/media/platform/vsp1/vsp1 0x1c75a7f9 vsp1_du_atomic_update +EXPORT_SYMBOL_GPL drivers/media/platform/vsp1/vsp1 0x36e50dcf vsp1_du_setup_lif +EXPORT_SYMBOL_GPL drivers/media/platform/vsp1/vsp1 0x72e2ad9a vsp1_du_atomic_flush +EXPORT_SYMBOL_GPL drivers/media/platform/vsp1/vsp1 0xa0eba9f4 vsp1_du_atomic_begin +EXPORT_SYMBOL_GPL drivers/media/platform/vsp1/vsp1 0xb0b09049 vsp1_du_init +EXPORT_SYMBOL_GPL drivers/media/platform/vsp1/vsp1 0xcb62c9ad vsp1_du_map_sg +EXPORT_SYMBOL_GPL drivers/media/platform/vsp1/vsp1 0xf6589a76 vsp1_du_unmap_sg +EXPORT_SYMBOL_GPL drivers/media/platform/xilinx/xilinx-video 0x0ad3794b xvip_enum_frame_size +EXPORT_SYMBOL_GPL drivers/media/platform/xilinx/xilinx-video 0x293a9002 xvip_cleanup_resources +EXPORT_SYMBOL_GPL drivers/media/platform/xilinx/xilinx-video 0x2dc8b5d3 xvip_enum_mbus_code +EXPORT_SYMBOL_GPL drivers/media/platform/xilinx/xilinx-video 0x3c7eb685 xvip_set_format_size +EXPORT_SYMBOL_GPL drivers/media/platform/xilinx/xilinx-video 0x4b4d79a2 xvip_clr_and_set +EXPORT_SYMBOL_GPL drivers/media/platform/xilinx/xilinx-video 0x5a287545 xvip_init_resources +EXPORT_SYMBOL_GPL drivers/media/platform/xilinx/xilinx-video 0xb17a0698 xvip_of_get_format +EXPORT_SYMBOL_GPL drivers/media/platform/xilinx/xilinx-video 0xb67940fb xvip_get_format_by_fourcc +EXPORT_SYMBOL_GPL drivers/media/platform/xilinx/xilinx-video 0xd96eb4e3 xvip_clr_or_set +EXPORT_SYMBOL_GPL drivers/media/platform/xilinx/xilinx-video 0xe08e6063 xvip_get_format_by_code +EXPORT_SYMBOL_GPL drivers/media/platform/xilinx/xilinx-vtc 0x3c16a6b1 xvtc_generator_stop +EXPORT_SYMBOL_GPL drivers/media/platform/xilinx/xilinx-vtc 0x47d7900b xvtc_generator_start +EXPORT_SYMBOL_GPL drivers/media/platform/xilinx/xilinx-vtc 0xa8a0f912 xvtc_put +EXPORT_SYMBOL_GPL drivers/media/platform/xilinx/xilinx-vtc 0xef7dd5aa xvtc_of_get +EXPORT_SYMBOL_GPL drivers/media/radio/shark2 0x161b6ac8 radio_tea5777_init +EXPORT_SYMBOL_GPL drivers/media/radio/shark2 0xe4ef5fd4 radio_tea5777_exit +EXPORT_SYMBOL_GPL drivers/media/radio/si470x/radio-si470x-common 0x55977710 si470x_ctrl_ops +EXPORT_SYMBOL_GPL drivers/media/radio/si470x/radio-si470x-common 0x630acdd9 si470x_start +EXPORT_SYMBOL_GPL drivers/media/radio/si470x/radio-si470x-common 0x7644170d si470x_set_freq +EXPORT_SYMBOL_GPL drivers/media/radio/si470x/radio-si470x-common 0x84ebf77a si470x_stop +EXPORT_SYMBOL_GPL drivers/media/radio/si470x/radio-si470x-common 0x91cda8cb si470x_viddev_template +EXPORT_SYMBOL_GPL drivers/media/rc/rc-core 0x087ba771 rc_map_get +EXPORT_SYMBOL_GPL drivers/media/rc/rc-core 0x0befa112 rc_free_device +EXPORT_SYMBOL_GPL drivers/media/rc/rc-core 0x1ac62c77 rc_map_unregister +EXPORT_SYMBOL_GPL drivers/media/rc/rc-core 0x40b6a9ae ir_lirc_scancode_event +EXPORT_SYMBOL_GPL drivers/media/rc/rc-core 0x4cbe285f rc_keydown +EXPORT_SYMBOL_GPL drivers/media/rc/rc-core 0x53f25875 rc_repeat +EXPORT_SYMBOL_GPL drivers/media/rc/rc-core 0x591b4266 ir_raw_event_store +EXPORT_SYMBOL_GPL drivers/media/rc/rc-core 0x64507b5e ir_raw_event_store_with_timeout +EXPORT_SYMBOL_GPL drivers/media/rc/rc-core 0x6a55631b devm_rc_register_device +EXPORT_SYMBOL_GPL drivers/media/rc/rc-core 0x70f30845 devm_rc_allocate_device +EXPORT_SYMBOL_GPL drivers/media/rc/rc-core 0x777f5bef ir_raw_event_set_idle +EXPORT_SYMBOL_GPL drivers/media/rc/rc-core 0x7bc8ac67 rc_map_register +EXPORT_SYMBOL_GPL drivers/media/rc/rc-core 0x95abcab0 rc_register_device +EXPORT_SYMBOL_GPL drivers/media/rc/rc-core 0xbd983de7 rc_allocate_device +EXPORT_SYMBOL_GPL drivers/media/rc/rc-core 0xc40525ba rc_unregister_device +EXPORT_SYMBOL_GPL drivers/media/rc/rc-core 0xca71c158 ir_raw_event_store_edge +EXPORT_SYMBOL_GPL drivers/media/rc/rc-core 0xcc7c1a0a rc_keydown_notimeout +EXPORT_SYMBOL_GPL drivers/media/rc/rc-core 0xcdd7ae7a ir_raw_event_store_with_filter +EXPORT_SYMBOL_GPL drivers/media/rc/rc-core 0xe1958dc3 rc_keyup +EXPORT_SYMBOL_GPL drivers/media/rc/rc-core 0xec203e6c ir_raw_event_handle +EXPORT_SYMBOL_GPL drivers/media/rc/rc-core 0xf9b0f31d rc_g_keycode_from_table +EXPORT_SYMBOL_GPL drivers/media/tuners/mt2063 0xecb5f88c mt2063_attach +EXPORT_SYMBOL_GPL drivers/media/tuners/mt20xx 0xb8b6649c microtune_attach +EXPORT_SYMBOL_GPL drivers/media/tuners/mxl5007t 0x9410f088 mxl5007t_attach +EXPORT_SYMBOL_GPL drivers/media/tuners/r820t 0xe7a0308f r820t_attach +EXPORT_SYMBOL_GPL drivers/media/tuners/tda18271 0x3ec9d11b tda18271_attach +EXPORT_SYMBOL_GPL drivers/media/tuners/tda827x 0x340ce202 tda827x_attach +EXPORT_SYMBOL_GPL drivers/media/tuners/tda8290 0x306ad683 tda829x_probe +EXPORT_SYMBOL_GPL drivers/media/tuners/tda8290 0x9df975b2 tda829x_attach +EXPORT_SYMBOL_GPL drivers/media/tuners/tda9887 0x05a238da tda9887_attach +EXPORT_SYMBOL_GPL drivers/media/tuners/tea5761 0x64ffb1bf tea5761_autodetection +EXPORT_SYMBOL_GPL drivers/media/tuners/tea5761 0xb4a14fa6 tea5761_attach +EXPORT_SYMBOL_GPL drivers/media/tuners/tea5767 0x07f322a2 tea5767_autodetection +EXPORT_SYMBOL_GPL drivers/media/tuners/tea5767 0xbd601b60 tea5767_attach +EXPORT_SYMBOL_GPL drivers/media/tuners/tuner-simple 0x27f52181 simple_tuner_attach +EXPORT_SYMBOL_GPL drivers/media/usb/cx231xx/cx231xx 0x017ea7c7 cx231xx_tuner_callback +EXPORT_SYMBOL_GPL drivers/media/usb/cx231xx/cx231xx 0x0d855ee3 is_fw_load +EXPORT_SYMBOL_GPL drivers/media/usb/cx231xx/cx231xx 0x2a807834 cx231xx_send_usb_command +EXPORT_SYMBOL_GPL drivers/media/usb/cx231xx/cx231xx 0x2b8c2f60 cx231xx_uninit_vbi_isoc +EXPORT_SYMBOL_GPL drivers/media/usb/cx231xx/cx231xx 0x376a5d67 cx231xx_init_bulk +EXPORT_SYMBOL_GPL drivers/media/usb/cx231xx/cx231xx 0x3b84d734 cx231xx_set_alt_setting +EXPORT_SYMBOL_GPL drivers/media/usb/cx231xx/cx231xx 0x43a544ca cx231xx_send_gpio_cmd +EXPORT_SYMBOL_GPL drivers/media/usb/cx231xx/cx231xx 0x4714e21a cx231xx_set_mode +EXPORT_SYMBOL_GPL drivers/media/usb/cx231xx/cx231xx 0x515fa78f cx231xx_capture_start +EXPORT_SYMBOL_GPL drivers/media/usb/cx231xx/cx231xx 0x53308018 cx231xx_uninit_isoc +EXPORT_SYMBOL_GPL drivers/media/usb/cx231xx/cx231xx 0x6f027524 cx231xx_enable_i2c_port_3 +EXPORT_SYMBOL_GPL drivers/media/usb/cx231xx/cx231xx 0x72378e63 cx231xx_get_i2c_adap +EXPORT_SYMBOL_GPL drivers/media/usb/cx231xx/cx231xx 0x7e267688 cx231xx_disable656 +EXPORT_SYMBOL_GPL drivers/media/usb/cx231xx/cx231xx 0x8bc0a42b cx231xx_enable656 +EXPORT_SYMBOL_GPL drivers/media/usb/cx231xx/cx231xx 0x94b61038 cx231xx_uninit_bulk +EXPORT_SYMBOL_GPL drivers/media/usb/cx231xx/cx231xx 0xa75ae72c cx231xx_dev_init +EXPORT_SYMBOL_GPL drivers/media/usb/cx231xx/cx231xx 0xaa758aac cx231xx_unmute_audio +EXPORT_SYMBOL_GPL drivers/media/usb/cx231xx/cx231xx 0xc47c11d1 cx231xx_dev_uninit +EXPORT_SYMBOL_GPL drivers/media/usb/cx231xx/cx231xx 0xc7252fd7 cx231xx_demod_reset +EXPORT_SYMBOL_GPL drivers/media/usb/cx231xx/cx231xx 0xd41a890c cx231xx_init_vbi_isoc +EXPORT_SYMBOL_GPL drivers/media/usb/cx231xx/cx231xx 0xd74e8daf cx231xx_init_isoc +EXPORT_SYMBOL_GPL drivers/media/usb/dvb-usb-v2/mxl111sf-demod 0x93f31673 mxl111sf_demod_attach +EXPORT_SYMBOL_GPL drivers/media/usb/dvb-usb-v2/mxl111sf-tuner 0xeff3f02a mxl111sf_tuner_attach +EXPORT_SYMBOL_GPL drivers/media/usb/em28xx/em28xx 0x02333a65 em28xx_setup_xc3028 +EXPORT_SYMBOL_GPL drivers/media/usb/em28xx/em28xx 0x2ae9e499 em28xx_write_ac97 +EXPORT_SYMBOL_GPL drivers/media/usb/em28xx/em28xx 0x33ca3677 em28xx_read_reg +EXPORT_SYMBOL_GPL drivers/media/usb/em28xx/em28xx 0x36000948 em28xx_init_usb_xfer +EXPORT_SYMBOL_GPL drivers/media/usb/em28xx/em28xx 0x49726d53 em28xx_read_ac97 +EXPORT_SYMBOL_GPL drivers/media/usb/em28xx/em28xx 0x4bf8fba4 em28xx_audio_analog_set +EXPORT_SYMBOL_GPL drivers/media/usb/em28xx/em28xx 0x552eb3c9 em28xx_set_mode +EXPORT_SYMBOL_GPL drivers/media/usb/em28xx/em28xx 0x5edebb24 em28xx_write_reg_bits +EXPORT_SYMBOL_GPL drivers/media/usb/em28xx/em28xx 0x721f7cc7 em28xx_free_device +EXPORT_SYMBOL_GPL drivers/media/usb/em28xx/em28xx 0x72c8d1eb em28xx_write_reg +EXPORT_SYMBOL_GPL drivers/media/usb/em28xx/em28xx 0x7c65f34f em28xx_find_led +EXPORT_SYMBOL_GPL drivers/media/usb/em28xx/em28xx 0x7fc8652c em28xx_tuner_callback +EXPORT_SYMBOL_GPL drivers/media/usb/em28xx/em28xx 0x87d484e8 em28xx_write_regs +EXPORT_SYMBOL_GPL drivers/media/usb/em28xx/em28xx 0x921d7c65 em28xx_boards +EXPORT_SYMBOL_GPL drivers/media/usb/em28xx/em28xx 0x99a0e0f4 em28xx_gpio_set +EXPORT_SYMBOL_GPL drivers/media/usb/em28xx/em28xx 0x9a1750d1 em28xx_toggle_reg_bits +EXPORT_SYMBOL_GPL drivers/media/usb/em28xx/em28xx 0x9ba3f593 em28xx_alloc_urbs +EXPORT_SYMBOL_GPL drivers/media/usb/em28xx/em28xx 0xacb73974 em28xx_audio_setup +EXPORT_SYMBOL_GPL drivers/media/usb/em28xx/em28xx 0xcf19b3e8 em28xx_stop_urbs +EXPORT_SYMBOL_GPL drivers/media/usb/em28xx/em28xx 0xd6a69b73 em28xx_init_camera +EXPORT_SYMBOL_GPL drivers/media/usb/em28xx/em28xx 0xd978984f em28xx_uninit_usb_xfer +EXPORT_SYMBOL_GPL drivers/media/usb/tm6000/tm6000 0x2309a6d6 tm6000_xc5000_callback +EXPORT_SYMBOL_GPL drivers/media/usb/tm6000/tm6000 0x5cd130b3 tm6000_set_audio_bitrate +EXPORT_SYMBOL_GPL drivers/media/usb/tm6000/tm6000 0x65eb6eaf tm6000_set_reg +EXPORT_SYMBOL_GPL drivers/media/usb/tm6000/tm6000 0x89b611dd tm6000_debug +EXPORT_SYMBOL_GPL drivers/media/usb/tm6000/tm6000 0xd5b41108 tm6000_get_reg +EXPORT_SYMBOL_GPL drivers/media/usb/tm6000/tm6000 0xdff8e89d tm6000_tuner_callback +EXPORT_SYMBOL_GPL drivers/media/usb/tm6000/tm6000 0xe011bb0a tm6000_set_reg_mask +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 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 0xef15cc44 v4l2_hdmi_rx_colorimetry +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 0x5171d8ff v4l2_flash_release +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-flash-led-class 0xaf44d7c7 v4l2_flash_indicator_init +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-flash-led-class 0xebc71fa7 v4l2_flash_init +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-fwnode 0x0da8beed v4l2_async_notifier_parse_fwnode_endpoints_by_port +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-fwnode 0x0e9ad59a v4l2_fwnode_endpoint_free +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-fwnode 0x3d7cc1ae v4l2_fwnode_parse_link +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-fwnode 0x45a4021b v4l2_async_notifier_parse_fwnode_sensor_common +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-fwnode 0x48343407 v4l2_fwnode_connector_add_link +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-fwnode 0x612ddce5 v4l2_fwnode_connector_free +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-fwnode 0x8f2405e5 v4l2_fwnode_endpoint_alloc_parse +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-fwnode 0xb8d79263 v4l2_fwnode_connector_parse +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-fwnode 0xba54f32e v4l2_async_notifier_parse_fwnode_endpoints +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-fwnode 0xc26d3df9 v4l2_fwnode_device_parse +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-fwnode 0xc508eaab v4l2_async_register_subdev_sensor_common +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-fwnode 0xf7465a7e v4l2_fwnode_endpoint_parse +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-fwnode 0xfb2d933f v4l2_fwnode_put_link +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-h264 0x8468300b v4l2_h264_init_reflist_builder +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-h264 0xa003c02f v4l2_h264_build_b_ref_lists +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-h264 0xae38bf6d v4l2_h264_build_p_ref_list +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-jpeg 0x30b5ebc6 v4l2_jpeg_parse_scan_header +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-jpeg 0xcbfdf5cb v4l2_jpeg_parse_frame_header +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-jpeg 0xe8956e3f v4l2_jpeg_parse_huffman_tables +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-jpeg 0xf8ffd565 v4l2_jpeg_parse_quantization_tables +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-jpeg 0xfe634d65 v4l2_jpeg_parse_header +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0x01794ac1 v4l2_m2m_expbuf +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0x019b8b9e v4l2_m2m_prepare_buf +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0x06faf4da v4l2_m2m_buf_remove_by_buf +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0x07f19ffe v4l2_m2m_next_buf +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0x24f15cb3 v4l2_m2m_reqbufs +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0x265b6e5a v4l2_m2m_ioctl_dqbuf +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0x3d086576 v4l2_m2m_ctx_release +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0x45453d04 v4l2_m2m_last_buffer_done +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0x49eb5e16 v4l2_m2m_querybuf +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0x4de445f0 v4l2_m2m_update_stop_streaming_state +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0x4dfbc512 v4l2_m2m_buf_queue +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0x5313a0cc v4l2_m2m_buf_remove_by_idx +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0x57c3d3cd v4l2_m2m_streamon +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0x58b950ce v4l2_m2m_ioctl_stateless_try_decoder_cmd +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0x5a66f29d v4l2_m2m_ioctl_streamon +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0x5e048839 v4l2_m2m_ioctl_reqbufs +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0x6623ddd5 v4l2_m2m_streamoff +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0x730f2eae v4l2_m2m_init +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0x747c7a52 v4l2_m2m_ioctl_stateless_decoder_cmd +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0x7a9763ba v4l2_m2m_buf_copy_metadata +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0x7e12d3fc v4l2_m2m_ioctl_prepare_buf +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0x7f476ca9 v4l2_m2m_qbuf +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0x838e41cd v4l2_m2m_register_media_controller +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0x951112bf v4l2_m2m_ioctl_expbuf +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0x982b8909 v4l2_m2m_try_schedule +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0x995df953 v4l2_m2m_fop_poll +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0x9984b347 v4l2_m2m_ioctl_try_encoder_cmd +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0x9a5e70c9 v4l2_m2m_ioctl_encoder_cmd +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0x9a7633cd v4l2_m2m_decoder_cmd +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0xa3a992e0 v4l2_m2m_update_start_streaming_state +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0xa46f27f1 v4l2_m2m_buf_remove +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0xa8eb2a4a v4l2_m2m_ctx_init +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0xabc6d6bd v4l2_m2m_last_buf +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0xb600e49c v4l2_m2m_request_queue +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0xc6fca5ad v4l2_m2m_release +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0xc7eda12a v4l2_m2m_create_bufs +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0xc928a219 v4l2_m2m_encoder_cmd +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0xcbf57758 v4l2_m2m_ioctl_qbuf +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0xd44b09fa v4l2_m2m_ioctl_querybuf +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0xd7557c51 v4l2_m2m_poll +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0xdd5ff3a9 v4l2_m2m_ioctl_decoder_cmd +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0xe0eb11fc v4l2_m2m_dqbuf +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0xeab99c33 v4l2_m2m_fop_mmap +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0xf13ff84d v4l2_m2m_unregister_media_controller +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0xf6998d4a v4l2_m2m_ioctl_try_decoder_cmd +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0xfdfcdef4 v4l2_m2m_ioctl_create_bufs +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0xff27259e v4l2_m2m_ioctl_streamoff +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0x0131a482 videobuf_queue_to_vaddr +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0x0ce07e16 videobuf_mmap_setup +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0x1e4f1348 videobuf_queue_is_busy +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0x26c115a7 videobuf_mmap_mapper +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0x2c094211 videobuf_read_one +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0x4823a7cc videobuf_read_stream +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0x5b88cb2f videobuf_qbuf +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0x65444d08 videobuf_querybuf +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0x87e9b25e videobuf_reqbufs +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0x893c219d __videobuf_mmap_setup +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0x99cb4baf videobuf_dqbuf +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0x9f152a76 videobuf_iolock +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0xb0db1e3c videobuf_streamoff +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0xc596a7d3 videobuf_alloc_vb +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0xca740b2f videobuf_queue_cancel +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0xce7ff712 videobuf_next_field +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0xe07b6e3b videobuf_stop +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0xe34bbb3d videobuf_read_stop +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0xea563a11 videobuf_poll_stream +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0xec923369 videobuf_streamon +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0xf0119a58 videobuf_read_start +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0xf78f8a21 videobuf_waiton +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0xfc27611a videobuf_mmap_free +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0xfc5d701d videobuf_queue_core_init +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-dma-sg 0x553a86d0 videobuf_sg_alloc +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-dma-sg 0xe11df654 videobuf_to_dma +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-dma-sg 0xe70b7eb7 videobuf_dma_free +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-dma-sg 0xf11411ca videobuf_queue_sg_init +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-dma-sg 0xf3d47e71 videobuf_dma_unmap +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-vmalloc 0x1e1525a4 videobuf_to_vmalloc +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-vmalloc 0x27a7c836 videobuf_vmalloc_free +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-vmalloc 0x4814d870 videobuf_queue_vmalloc_init +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x0edac673 v4l2_event_subdev_unsubscribe +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x12f3b72c v4l2_subdev_get_fwnode_pad_1_to_1 +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x147223be v4l2_spi_new_subdev +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x193edd98 v4l2_ctrl_request_hdl_find +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x1a04e88c v4l2_fh_init +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x1b394e57 v4l2_async_notifier_add_fwnode_subdev +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x24703d0e v4l2_create_fwnode_links +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x2583e9d6 v4l2_spi_subdev_init +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x2a53ca39 __tracepoint_vb2_v4l2_qbuf +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x2b39964f v4l2_fh_add +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x2ce42ec7 v4l2_device_register +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x32431a1e __tracepoint_vb2_v4l2_buf_queue +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x38761696 v4l2_device_unregister +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x3c930766 v4l2_ctrl_request_hdl_ctrl_find +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x4309b5b8 v4l2_async_notifier_add_fwnode_remote_subdev +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x43996a8c __tracepoint_vb2_v4l2_buf_done +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x4a459842 v4l2_event_subscribe +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x50d65b11 v4l2_subdev_free_pad_config +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x55a0618b v4l2_event_unsubscribe_all +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x5a44297a v4l2_i2c_new_subdev +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x5a55aa02 v4l2_i2c_new_subdev_board +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x5c52bbfb v4l2_subdev_link_validate_default +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x603d264a v4l2_device_put +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x6e9acc41 v4l2_fill_pixfmt_mp +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x7af42fb9 v4l2_async_notifier_cleanup +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x811bf3fa v4l2_g_parm_cap +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x81b429cc v4l2_fh_del +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x853f8aca v4l2_s_parm_cap +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x8a1caea6 v4l2_event_queue_fh +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x8e849278 __v4l2_device_register_subdev_nodes +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x94f52cc9 v4l2_fh_release +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x9b4875af v4l2_device_disconnect +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x9ea37eb2 v4l2_src_change_event_subscribe +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x9fef35ac v4l2_apply_frmsize_constraints +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0xa3b56e8b v4l2_i2c_subdev_init +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0xa8cd38d5 v4l2_event_queue +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0xa96c28e6 __v4l2_ctrl_handler_setup +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0xab237ba5 v4l2_event_unsubscribe +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0xb0e9fc46 v4l2_pipeline_pm_put +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0xb23292fd v4l2_fh_exit +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0xb795f071 __tracepoint_vb2_v4l2_dqbuf +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0xb8b36cec v4l2_subdev_notify_event +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0xb98334ec v4l2_src_change_event_subdev_subscribe +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0xbd115c1f v4l2_compat_ioctl32 +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0xbeaefd9d v4l2_subdev_alloc_pad_config +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0xc07f5df6 v4l2_device_unregister_subdev +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0xc1ceebc5 v4l2_async_notifier_add_subdev +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0xc32ef5b5 v4l_disable_media_source +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0xc39e1949 v4l_vb2q_enable_media_source +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0xc40b2805 v4l2_subdev_link_validate +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0xc5eff3c8 v4l_enable_media_source +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0xc724253a v4l2_async_notifier_add_devname_subdev +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0xc729700f v4l2_create_fwnode_links_to_pad +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0xc9e4a819 v4l2_fh_open +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0xcc501597 v4l2_fill_pixfmt +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0xd39ed1ba v4l2_i2c_subdev_addr +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0xd8c0355d v4l2_pipeline_pm_get +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0xd9eba1c2 v4l2_pipeline_link_notify +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0xdc740fe1 v4l2_async_notifier_add_i2c_subdev +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0xe2822320 __v4l2_find_nearest_size +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0xe2b703fd v4l2_fh_is_singular +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0xed38e288 v4l2_i2c_subdev_set_name +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0xf2a353ac v4l2_i2c_tuner_addrs +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0xf3405cad v4l2_device_set_name +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0xf36e895c v4l2_event_dequeue +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0xf5ef842e v4l_bound_align_image +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0xf67df451 v4l2_device_register_subdev +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0xf6f477b4 v4l2_mc_create_media_graph +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0xfd80246e v4l2_event_pending +EXPORT_SYMBOL_GPL drivers/mfd/88pm80x 0x29311878 pm80x_init +EXPORT_SYMBOL_GPL drivers/mfd/88pm80x 0x87769313 pm80x_pm_ops +EXPORT_SYMBOL_GPL drivers/mfd/88pm80x 0xcc1e235f pm80x_regmap_config +EXPORT_SYMBOL_GPL drivers/mfd/88pm80x 0xd99fd720 pm80x_deinit +EXPORT_SYMBOL_GPL drivers/mfd/da9150-core 0x2741c0bc da9150_write_qif +EXPORT_SYMBOL_GPL drivers/mfd/da9150-core 0x2f0a665f da9150_bulk_write +EXPORT_SYMBOL_GPL drivers/mfd/da9150-core 0x8499a8a7 da9150_reg_read +EXPORT_SYMBOL_GPL drivers/mfd/da9150-core 0xb84d3cd1 da9150_set_bits +EXPORT_SYMBOL_GPL drivers/mfd/da9150-core 0xb87cddd1 da9150_reg_write +EXPORT_SYMBOL_GPL drivers/mfd/da9150-core 0xb93b2cb4 da9150_bulk_read +EXPORT_SYMBOL_GPL drivers/mfd/da9150-core 0xe7e40580 da9150_read_qif +EXPORT_SYMBOL_GPL drivers/mfd/gateworks-gsc 0xa142a524 gsc_read +EXPORT_SYMBOL_GPL drivers/mfd/gateworks-gsc 0xb7abd1c4 gsc_write +EXPORT_SYMBOL_GPL drivers/mfd/iqs62x 0x22a28670 iqs62x_events +EXPORT_SYMBOL_GPL drivers/mfd/kempld-core 0x0cfc3913 kempld_release_mutex +EXPORT_SYMBOL_GPL drivers/mfd/kempld-core 0x2e7b1da0 kempld_read8 +EXPORT_SYMBOL_GPL drivers/mfd/kempld-core 0x33b63ef1 kempld_write16 +EXPORT_SYMBOL_GPL drivers/mfd/kempld-core 0x538eba7c kempld_read16 +EXPORT_SYMBOL_GPL drivers/mfd/kempld-core 0x74ba238f kempld_read32 +EXPORT_SYMBOL_GPL drivers/mfd/kempld-core 0x7c90e5c4 kempld_write8 +EXPORT_SYMBOL_GPL drivers/mfd/kempld-core 0xf3224fe7 kempld_write32 +EXPORT_SYMBOL_GPL drivers/mfd/kempld-core 0xfee903cb kempld_get_mutex +EXPORT_SYMBOL_GPL drivers/mfd/lm3533-core 0x0304ae18 lm3533_write +EXPORT_SYMBOL_GPL drivers/mfd/lm3533-core 0x62659840 lm3533_read +EXPORT_SYMBOL_GPL drivers/mfd/lm3533-core 0xa3494c42 lm3533_update +EXPORT_SYMBOL_GPL drivers/mfd/lm3533-ctrlbank 0x0a1270a7 lm3533_ctrlbank_get_pwm +EXPORT_SYMBOL_GPL drivers/mfd/lm3533-ctrlbank 0x0d08f2d7 lm3533_ctrlbank_set_brightness +EXPORT_SYMBOL_GPL drivers/mfd/lm3533-ctrlbank 0x5bae88c9 lm3533_ctrlbank_get_brightness +EXPORT_SYMBOL_GPL drivers/mfd/lm3533-ctrlbank 0x621064a4 lm3533_ctrlbank_set_max_current +EXPORT_SYMBOL_GPL drivers/mfd/lm3533-ctrlbank 0x6fa5dac8 lm3533_ctrlbank_disable +EXPORT_SYMBOL_GPL drivers/mfd/lm3533-ctrlbank 0x837e71fd lm3533_ctrlbank_set_pwm +EXPORT_SYMBOL_GPL drivers/mfd/lm3533-ctrlbank 0xbd74458a lm3533_ctrlbank_enable +EXPORT_SYMBOL_GPL drivers/mfd/lp3943 0x45c110b2 lp3943_update_bits +EXPORT_SYMBOL_GPL drivers/mfd/lp3943 0x5f14f1fd lp3943_write_byte +EXPORT_SYMBOL_GPL drivers/mfd/lp3943 0xbbac5a15 lp3943_read_byte +EXPORT_SYMBOL_GPL drivers/mfd/madera 0x06e6cccf cs47l35_32bit_spi_regmap +EXPORT_SYMBOL_GPL drivers/mfd/madera 0x06eb108f cs47l35_16bit_spi_regmap +EXPORT_SYMBOL_GPL drivers/mfd/madera 0x0f379262 madera_of_match +EXPORT_SYMBOL_GPL drivers/mfd/madera 0x1bc03bfa cs47l92_16bit_spi_regmap +EXPORT_SYMBOL_GPL drivers/mfd/madera 0x1bcde7ba cs47l92_32bit_spi_regmap +EXPORT_SYMBOL_GPL drivers/mfd/madera 0x2c412007 cs47l90_32bit_i2c_regmap +EXPORT_SYMBOL_GPL drivers/mfd/madera 0x2c4cfc47 cs47l90_16bit_i2c_regmap +EXPORT_SYMBOL_GPL drivers/mfd/madera 0x349457b7 cs47l85_32bit_spi_regmap +EXPORT_SYMBOL_GPL drivers/mfd/madera 0x34998bf7 cs47l85_16bit_spi_regmap +EXPORT_SYMBOL_GPL drivers/mfd/madera 0x45d3d1c3 cs47l35_16bit_i2c_regmap +EXPORT_SYMBOL_GPL drivers/mfd/madera 0x45de0d83 cs47l35_32bit_i2c_regmap +EXPORT_SYMBOL_GPL drivers/mfd/madera 0x56f4aed0 madera_dev_init +EXPORT_SYMBOL_GPL drivers/mfd/madera 0x58f526f6 cs47l92_32bit_i2c_regmap +EXPORT_SYMBOL_GPL drivers/mfd/madera 0x58f8fab6 cs47l92_16bit_i2c_regmap +EXPORT_SYMBOL_GPL drivers/mfd/madera 0x6f743d0b cs47l90_16bit_spi_regmap +EXPORT_SYMBOL_GPL drivers/mfd/madera 0x6f79e14b cs47l90_32bit_spi_regmap +EXPORT_SYMBOL_GPL drivers/mfd/madera 0x76a0fbfe cs47l85_patch +EXPORT_SYMBOL_GPL drivers/mfd/madera 0x77a14abb cs47l85_16bit_i2c_regmap +EXPORT_SYMBOL_GPL drivers/mfd/madera 0x77ac96fb cs47l85_32bit_i2c_regmap +EXPORT_SYMBOL_GPL drivers/mfd/madera 0x83b42cbd cs47l15_patch +EXPORT_SYMBOL_GPL drivers/mfd/madera 0x85418d82 cs47l35_patch +EXPORT_SYMBOL_GPL drivers/mfd/madera 0x8f107b0f cs47l15_32bit_i2c_regmap +EXPORT_SYMBOL_GPL drivers/mfd/madera 0x8f1da74f cs47l15_16bit_i2c_regmap +EXPORT_SYMBOL_GPL drivers/mfd/madera 0x916c5b8c cs47l92_patch +EXPORT_SYMBOL_GPL drivers/mfd/madera 0x982f1188 madera_dev_exit +EXPORT_SYMBOL_GPL drivers/mfd/madera 0xcc256603 cs47l15_16bit_spi_regmap +EXPORT_SYMBOL_GPL drivers/mfd/madera 0xcc28ba43 cs47l15_32bit_spi_regmap +EXPORT_SYMBOL_GPL drivers/mfd/madera 0xd2787bc9 cs47l90_patch +EXPORT_SYMBOL_GPL drivers/mfd/madera 0xebe384cb madera_name_from_type +EXPORT_SYMBOL_GPL drivers/mfd/madera 0xec17e935 madera_pm_ops +EXPORT_SYMBOL_GPL drivers/mfd/mc13xxx-core 0x20f2dcdb mc13xxx_adc_do_conversion +EXPORT_SYMBOL_GPL drivers/mfd/mc13xxx-core 0x4d8be526 mc13xxx_common_init +EXPORT_SYMBOL_GPL drivers/mfd/mc13xxx-core 0xa615ffba mc13xxx_variant_mc34708 +EXPORT_SYMBOL_GPL drivers/mfd/mc13xxx-core 0xb41a0ad2 mc13xxx_variant_mc13783 +EXPORT_SYMBOL_GPL drivers/mfd/mc13xxx-core 0xb89d64dd mc13xxx_common_exit +EXPORT_SYMBOL_GPL drivers/mfd/mc13xxx-core 0xf4a041f2 mc13xxx_variant_mc13892 +EXPORT_SYMBOL_GPL drivers/mfd/motorola-cpcap 0xa226dbe8 cpcap_sense_virq +EXPORT_SYMBOL_GPL drivers/mfd/pcf50633 0x01825fe1 pcf50633_free_irq +EXPORT_SYMBOL_GPL drivers/mfd/pcf50633 0x285684b0 pcf50633_write_block +EXPORT_SYMBOL_GPL drivers/mfd/pcf50633 0x4243ec46 pcf50633_reg_read +EXPORT_SYMBOL_GPL drivers/mfd/pcf50633 0x47fc5885 pcf50633_irq_mask_get +EXPORT_SYMBOL_GPL drivers/mfd/pcf50633 0x69b5bf72 pcf50633_reg_clear_bits +EXPORT_SYMBOL_GPL drivers/mfd/pcf50633 0x8f5cace4 pcf50633_irq_unmask +EXPORT_SYMBOL_GPL drivers/mfd/pcf50633 0x903a2f20 pcf50633_register_irq +EXPORT_SYMBOL_GPL drivers/mfd/pcf50633 0xaac945c6 pcf50633_read_block +EXPORT_SYMBOL_GPL drivers/mfd/pcf50633 0xae308c3e pcf50633_irq_mask +EXPORT_SYMBOL_GPL drivers/mfd/pcf50633 0xeb12eb9e pcf50633_reg_write +EXPORT_SYMBOL_GPL drivers/mfd/pcf50633 0xffbc17b3 pcf50633_reg_set_bit_mask +EXPORT_SYMBOL_GPL drivers/mfd/pcf50633-adc 0x6e351929 pcf50633_adc_sync_read +EXPORT_SYMBOL_GPL drivers/mfd/pcf50633-adc 0x999ed722 pcf50633_adc_async_read +EXPORT_SYMBOL_GPL drivers/mfd/pcf50633-gpio 0x25ed906b pcf50633_gpio_invert_get +EXPORT_SYMBOL_GPL drivers/mfd/pcf50633-gpio 0x33b394dc pcf50633_gpio_get +EXPORT_SYMBOL_GPL drivers/mfd/pcf50633-gpio 0x648bcf75 pcf50633_gpio_power_supply_set +EXPORT_SYMBOL_GPL drivers/mfd/pcf50633-gpio 0x71c111f2 pcf50633_gpio_invert_set +EXPORT_SYMBOL_GPL drivers/mfd/pcf50633-gpio 0x9e194cb2 pcf50633_gpio_set +EXPORT_SYMBOL_GPL drivers/mfd/rave-sp 0x43e53ef9 rave_sp_exec +EXPORT_SYMBOL_GPL drivers/mfd/rave-sp 0xb7ec0837 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 0x05fc178a si476x_core_is_a_secondary_tuner +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0x09175ff9 si476x_core_cmd_fm_phase_div_status +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0x1fb4b148 si476x_core_cmd_ic_link_gpo_ctl_pin_cfg +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0x2c6bd84b si476x_core_cmd_fm_rsq_status +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0x2d32bc51 si476x_core_stop +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0x32c95cd3 si476x_core_cmd_am_tune_freq +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0x3b2f993e si476x_core_start +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0x3ff0f675 si476x_core_cmd_zif_pin_cfg +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0x40c8593a si476x_core_i2c_xfer +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0x424fd4fd si476x_core_cmd_am_seek_start +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0x43833203 si476x_core_cmd_am_acf_status +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0x54616342 si476x_core_cmd_power_down +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0x6aca6fe3 si476x_core_cmd_fm_tune_freq +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0x6adf1371 si476x_core_cmd_fm_phase_diversity +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0x7dc713b9 si476x_core_is_in_am_receiver_mode +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0x84edd9f3 si476x_core_cmd_ana_audio_pin_cfg +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0x85d73d8b si476x_core_cmd_fm_acf_status +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0x8823c86f si476x_core_cmd_set_property +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0x915c71e3 si476x_core_is_a_primary_tuner +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0x9c7f1e1b si476x_core_cmd_func_info +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0x9db5744d si476x_core_cmd_power_up +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0xa2dc2add si476x_core_has_am +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0xa45067c2 si476x_core_cmd_fm_rds_status +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0xb402c984 si476x_core_cmd_agc_status +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0xc16a95ec si476x_core_cmd_get_property +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0xc2e07979 si476x_core_cmd_dig_audio_pin_cfg +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0xc776c67a si476x_core_is_powered_up +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0xd596b5ef si476x_core_set_power_state +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0xd8726c61 si476x_core_cmd_fm_rds_blockcount +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0xdd0c39f0 si476x_core_cmd_fm_seek_start +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0xe0189bc2 devm_regmap_init_si476x +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0xe6c9af02 si476x_core_cmd_am_rsq_status +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0xf22952b9 si476x_core_has_diversity +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0xfeb8436b si476x_core_cmd_intb_pin_cfg +EXPORT_SYMBOL_GPL drivers/mfd/sm501 0x361456ca sm501_misc_control +EXPORT_SYMBOL_GPL drivers/mfd/sm501 0x52059520 sm501_modify_reg +EXPORT_SYMBOL_GPL drivers/mfd/sm501 0x89c7dff5 sm501_unit_power +EXPORT_SYMBOL_GPL drivers/mfd/sm501 0xa5a03d16 sm501_find_clock +EXPORT_SYMBOL_GPL drivers/mfd/sm501 0xcd01c965 sm501_set_clock +EXPORT_SYMBOL_GPL drivers/mfd/sprd-sc27xx-spi 0x41b32276 sprd_pmic_detect_charger_type +EXPORT_SYMBOL_GPL drivers/mfd/stmfx 0x0fcc98a2 stmfx_function_enable +EXPORT_SYMBOL_GPL drivers/mfd/stmfx 0x610617a3 stmfx_function_disable +EXPORT_SYMBOL_GPL drivers/mfd/ti_am335x_tscadc 0x27dab7c6 am335x_tsc_se_set_once +EXPORT_SYMBOL_GPL drivers/mfd/ti_am335x_tscadc 0x711f43c6 am335x_tsc_se_adc_done +EXPORT_SYMBOL_GPL drivers/mfd/ti_am335x_tscadc 0xae22e167 am335x_tsc_se_set_cache +EXPORT_SYMBOL_GPL drivers/mfd/ti_am335x_tscadc 0xeccff589 am335x_tsc_se_clr +EXPORT_SYMBOL_GPL drivers/mfd/tps65217 0x0156d2b8 tps65217_reg_read +EXPORT_SYMBOL_GPL drivers/mfd/tps65217 0x75fff0ca tps65217_clear_bits +EXPORT_SYMBOL_GPL drivers/mfd/tps65217 0xbfcd479c tps65217_set_bits +EXPORT_SYMBOL_GPL drivers/mfd/tps65217 0xe29f8854 tps65217_reg_write +EXPORT_SYMBOL_GPL drivers/mfd/tps65218 0x048de382 tps65218_clear_bits +EXPORT_SYMBOL_GPL drivers/mfd/tps65218 0xd55b810f tps65218_set_bits +EXPORT_SYMBOL_GPL drivers/mfd/tps65218 0xd9288dba tps65218_reg_write +EXPORT_SYMBOL_GPL drivers/mfd/ucb1400_core 0x37a96753 ucb1400_adc_read +EXPORT_SYMBOL_GPL drivers/misc/cardreader/alcor_pci 0x112861d5 alcor_write8 +EXPORT_SYMBOL_GPL drivers/misc/cardreader/alcor_pci 0x3b94adcb alcor_read32be +EXPORT_SYMBOL_GPL drivers/misc/cardreader/alcor_pci 0x4341c6cf alcor_read8 +EXPORT_SYMBOL_GPL drivers/misc/cardreader/alcor_pci 0x70746e7c alcor_read32 +EXPORT_SYMBOL_GPL drivers/misc/cardreader/alcor_pci 0x9a545fed alcor_write32 +EXPORT_SYMBOL_GPL drivers/misc/cardreader/alcor_pci 0xb391f700 alcor_write32be +EXPORT_SYMBOL_GPL drivers/misc/cardreader/alcor_pci 0xe76912fa alcor_write16 +EXPORT_SYMBOL_GPL drivers/misc/cardreader/rtsx_pci 0x02b60cdd rtsx_pci_write_register +EXPORT_SYMBOL_GPL drivers/misc/cardreader/rtsx_pci 0x05eb3757 rtsx_pci_read_ppbuf +EXPORT_SYMBOL_GPL drivers/misc/cardreader/rtsx_pci 0x181b11a9 rtsx_pci_complete_unfinished_transfer +EXPORT_SYMBOL_GPL drivers/misc/cardreader/rtsx_pci 0x2c7f3326 rtsx_pci_read_phy_register +EXPORT_SYMBOL_GPL drivers/misc/cardreader/rtsx_pci 0x44a49b8c rtsx_pci_write_phy_register +EXPORT_SYMBOL_GPL drivers/misc/cardreader/rtsx_pci 0x44f56b31 rtsx_pci_read_register +EXPORT_SYMBOL_GPL drivers/misc/cardreader/rtsx_pci 0x62ac7ee0 rtsx_pci_card_power_on +EXPORT_SYMBOL_GPL drivers/misc/cardreader/rtsx_pci 0x6b746d0c rtsx_pci_card_pull_ctl_disable +EXPORT_SYMBOL_GPL drivers/misc/cardreader/rtsx_pci 0x72a9e1c4 rtsx_pci_transfer_data +EXPORT_SYMBOL_GPL drivers/misc/cardreader/rtsx_pci 0x7cb45b35 rtsx_pci_dma_map_sg +EXPORT_SYMBOL_GPL drivers/misc/cardreader/rtsx_pci 0x8040404a rtsx_pci_dma_transfer +EXPORT_SYMBOL_GPL drivers/misc/cardreader/rtsx_pci 0x84044823 rtsx_pci_send_cmd +EXPORT_SYMBOL_GPL drivers/misc/cardreader/rtsx_pci 0x9152fcb4 rtsx_pci_send_cmd_no_wait +EXPORT_SYMBOL_GPL drivers/misc/cardreader/rtsx_pci 0x91d18019 rtsx_pci_start_run +EXPORT_SYMBOL_GPL drivers/misc/cardreader/rtsx_pci 0xa4470180 rtsx_pci_card_pull_ctl_enable +EXPORT_SYMBOL_GPL drivers/misc/cardreader/rtsx_pci 0xa9d4c49b rtsx_pci_dma_unmap_sg +EXPORT_SYMBOL_GPL drivers/misc/cardreader/rtsx_pci 0xaf7047dc rtsx_pci_switch_output_voltage +EXPORT_SYMBOL_GPL drivers/misc/cardreader/rtsx_pci 0xbe729000 rtsx_pci_add_cmd +EXPORT_SYMBOL_GPL drivers/misc/cardreader/rtsx_pci 0xcd7ce533 rtsx_pci_write_ppbuf +EXPORT_SYMBOL_GPL drivers/misc/cardreader/rtsx_pci 0xdcb93c74 rtsx_pci_card_power_off +EXPORT_SYMBOL_GPL drivers/misc/cardreader/rtsx_pci 0xec6d8ebd rtsx_pci_card_exclusive_check +EXPORT_SYMBOL_GPL drivers/misc/cardreader/rtsx_pci 0xf0ace39b rtsx_pci_stop_cmd +EXPORT_SYMBOL_GPL drivers/misc/cardreader/rtsx_pci 0xf99ab16b rtsx_pci_switch_clock +EXPORT_SYMBOL_GPL drivers/misc/cardreader/rtsx_pci 0xfb38634b rtsx_pci_card_exist +EXPORT_SYMBOL_GPL drivers/misc/cardreader/rtsx_usb 0x194150d8 rtsx_usb_add_cmd +EXPORT_SYMBOL_GPL drivers/misc/cardreader/rtsx_usb 0x27f8b12d rtsx_usb_get_rsp +EXPORT_SYMBOL_GPL drivers/misc/cardreader/rtsx_usb 0x57eec2ba rtsx_usb_read_ppbuf +EXPORT_SYMBOL_GPL drivers/misc/cardreader/rtsx_usb 0x64ce351f rtsx_usb_read_register +EXPORT_SYMBOL_GPL drivers/misc/cardreader/rtsx_usb 0x7028ff1c rtsx_usb_card_exclusive_check +EXPORT_SYMBOL_GPL drivers/misc/cardreader/rtsx_usb 0x744a6403 rtsx_usb_ep0_write_register +EXPORT_SYMBOL_GPL drivers/misc/cardreader/rtsx_usb 0x8439df1d rtsx_usb_write_register +EXPORT_SYMBOL_GPL drivers/misc/cardreader/rtsx_usb 0x92f55fd4 rtsx_usb_transfer_data +EXPORT_SYMBOL_GPL drivers/misc/cardreader/rtsx_usb 0x9daef0c1 rtsx_usb_ep0_read_register +EXPORT_SYMBOL_GPL drivers/misc/cardreader/rtsx_usb 0xa9e32cf1 rtsx_usb_get_card_status +EXPORT_SYMBOL_GPL drivers/misc/cardreader/rtsx_usb 0xd8c71ea9 rtsx_usb_write_ppbuf +EXPORT_SYMBOL_GPL drivers/misc/cardreader/rtsx_usb 0xf5c9ab3f rtsx_usb_switch_clock +EXPORT_SYMBOL_GPL drivers/misc/cardreader/rtsx_usb 0xfb51f524 rtsx_usb_send_cmd +EXPORT_SYMBOL_GPL drivers/misc/cb710/cb710 0x2fe63be1 cb710_pci_update_config_reg +EXPORT_SYMBOL_GPL drivers/misc/cb710/cb710 0x5c153f09 cb710_set_irq_handler +EXPORT_SYMBOL_GPL drivers/misc/cb710/cb710 0x7cafdb17 cb710_sg_dwiter_read_next_block +EXPORT_SYMBOL_GPL drivers/misc/cb710/cb710 0xf08ef06c cb710_sg_dwiter_write_next_block +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 0x0cfd2754 enclosure_register +EXPORT_SYMBOL_GPL drivers/misc/enclosure 0x1048e320 enclosure_component_alloc +EXPORT_SYMBOL_GPL drivers/misc/enclosure 0x21fc947e enclosure_add_device +EXPORT_SYMBOL_GPL drivers/misc/enclosure 0x221a66d2 enclosure_find +EXPORT_SYMBOL_GPL drivers/misc/enclosure 0x43e47be0 enclosure_unregister +EXPORT_SYMBOL_GPL drivers/misc/enclosure 0x53208fee enclosure_for_each_device +EXPORT_SYMBOL_GPL drivers/misc/enclosure 0x60629933 enclosure_component_register +EXPORT_SYMBOL_GPL drivers/misc/enclosure 0xd281083d enclosure_remove_device +EXPORT_SYMBOL_GPL drivers/misc/lis3lv02d/lis3lv02d 0x06515370 lis3lv02d_poweron +EXPORT_SYMBOL_GPL drivers/misc/lis3lv02d/lis3lv02d 0x35d44a39 lis3lv02d_joystick_enable +EXPORT_SYMBOL_GPL drivers/misc/lis3lv02d/lis3lv02d 0x50ca0e47 lis3lv02d_poweroff +EXPORT_SYMBOL_GPL drivers/misc/lis3lv02d/lis3lv02d 0x5accd338 lis3lv02d_remove_fs +EXPORT_SYMBOL_GPL drivers/misc/lis3lv02d/lis3lv02d 0x6d53284b lis3lv02d_init_device +EXPORT_SYMBOL_GPL drivers/misc/lis3lv02d/lis3lv02d 0x8c8860a8 lis3lv02d_init_dt +EXPORT_SYMBOL_GPL drivers/misc/lis3lv02d/lis3lv02d 0xced5f5c6 lis3lv02d_joystick_disable +EXPORT_SYMBOL_GPL drivers/misc/lis3lv02d/lis3lv02d 0xf8deecc2 lis3_dev +EXPORT_SYMBOL_GPL drivers/misc/ti-st/st_drv 0x0b52993f st_unregister +EXPORT_SYMBOL_GPL drivers/misc/ti-st/st_drv 0x518a2137 st_register +EXPORT_SYMBOL_GPL drivers/misc/uacce/uacce 0x3b77de4e uacce_register +EXPORT_SYMBOL_GPL drivers/misc/uacce/uacce 0xaeb803c8 uacce_remove +EXPORT_SYMBOL_GPL drivers/misc/uacce/uacce 0xff196cf5 uacce_alloc +EXPORT_SYMBOL_GPL drivers/mmc/host/dw_mmc-pltfm 0x8fcdbdbc dw_mci_pltfm_register +EXPORT_SYMBOL_GPL drivers/mmc/host/dw_mmc-pltfm 0xb6dea8bf dw_mci_pltfm_remove +EXPORT_SYMBOL_GPL drivers/mmc/host/dw_mmc-pltfm 0xc21a5909 dw_mci_pltfm_pmops +EXPORT_SYMBOL_GPL drivers/mmc/host/mmc_hsq 0x0260bccb mmc_hsq_init +EXPORT_SYMBOL_GPL drivers/mmc/host/mmc_hsq 0xcb6d7c3f mmc_hsq_finalize_request +EXPORT_SYMBOL_GPL drivers/mmc/host/mmc_hsq 0xe9db3127 mmc_hsq_resume +EXPORT_SYMBOL_GPL drivers/mmc/host/mmc_hsq 0xfc611f5b mmc_hsq_suspend +EXPORT_SYMBOL_GPL drivers/mmc/host/renesas_sdhi_core 0x2efe52ff renesas_sdhi_remove +EXPORT_SYMBOL_GPL drivers/mmc/host/renesas_sdhi_core 0x55ed2eea renesas_sdhi_probe +EXPORT_SYMBOL_GPL drivers/mmc/host/sdhci 0x0209224d sdhci_set_uhs_signaling +EXPORT_SYMBOL_GPL drivers/mmc/host/sdhci 0x09b17de8 sdhci_execute_tuning +EXPORT_SYMBOL_GPL drivers/mmc/host/sdhci 0x09c271f1 sdhci_free_host +EXPORT_SYMBOL_GPL drivers/mmc/host/sdhci 0x1a0241dd sdhci_set_power_noreg +EXPORT_SYMBOL_GPL drivers/mmc/host/sdhci 0x20308ad3 sdhci_cqe_disable +EXPORT_SYMBOL_GPL drivers/mmc/host/sdhci 0x23b3e6b4 sdhci_enable_sdio_irq +EXPORT_SYMBOL_GPL drivers/mmc/host/sdhci 0x25dbde88 sdhci_set_power +EXPORT_SYMBOL_GPL drivers/mmc/host/sdhci 0x27baad9d sdhci_calc_clk +EXPORT_SYMBOL_GPL drivers/mmc/host/sdhci 0x2fd2443b sdhci_set_ios +EXPORT_SYMBOL_GPL drivers/mmc/host/sdhci 0x31fe7716 sdhci_dumpregs +EXPORT_SYMBOL_GPL drivers/mmc/host/sdhci 0x350351de sdhci_request_atomic +EXPORT_SYMBOL_GPL drivers/mmc/host/sdhci 0x3b0b9478 sdhci_set_power_and_bus_voltage +EXPORT_SYMBOL_GPL drivers/mmc/host/sdhci 0x4ae13566 sdhci_cqe_enable +EXPORT_SYMBOL_GPL drivers/mmc/host/sdhci 0x4b432cda sdhci_setup_host +EXPORT_SYMBOL_GPL drivers/mmc/host/sdhci 0x540f6ff1 sdhci_reset +EXPORT_SYMBOL_GPL drivers/mmc/host/sdhci 0x57b403c4 sdhci_send_tuning +EXPORT_SYMBOL_GPL drivers/mmc/host/sdhci 0x58628799 __sdhci_set_timeout +EXPORT_SYMBOL_GPL drivers/mmc/host/sdhci 0x5996c5ad sdhci_reset_tuning +EXPORT_SYMBOL_GPL drivers/mmc/host/sdhci 0x5c231183 sdhci_remove_host +EXPORT_SYMBOL_GPL drivers/mmc/host/sdhci 0x725ae38e sdhci_set_data_timeout_irq +EXPORT_SYMBOL_GPL drivers/mmc/host/sdhci 0x898c4517 sdhci_set_clock +EXPORT_SYMBOL_GPL drivers/mmc/host/sdhci 0x8b527846 sdhci_add_host +EXPORT_SYMBOL_GPL drivers/mmc/host/sdhci 0x97e104a0 sdhci_resume_host +EXPORT_SYMBOL_GPL drivers/mmc/host/sdhci 0x9a24bc03 sdhci_cleanup_host +EXPORT_SYMBOL_GPL drivers/mmc/host/sdhci 0x9d9c672c sdhci_switch_external_dma +EXPORT_SYMBOL_GPL drivers/mmc/host/sdhci 0xa01666f1 sdhci_enable_v4_mode +EXPORT_SYMBOL_GPL drivers/mmc/host/sdhci 0xb13f84b4 sdhci_adma_write_desc +EXPORT_SYMBOL_GPL drivers/mmc/host/sdhci 0xc0b78fb0 sdhci_enable_clk +EXPORT_SYMBOL_GPL drivers/mmc/host/sdhci 0xc4a400bd sdhci_alloc_host +EXPORT_SYMBOL_GPL drivers/mmc/host/sdhci 0xcc04d583 sdhci_runtime_resume_host +EXPORT_SYMBOL_GPL drivers/mmc/host/sdhci 0xdb51750d sdhci_cqe_irq +EXPORT_SYMBOL_GPL drivers/mmc/host/sdhci 0xdfba158b sdhci_abort_tuning +EXPORT_SYMBOL_GPL drivers/mmc/host/sdhci 0xe37dfb7f sdhci_start_signal_voltage_switch +EXPORT_SYMBOL_GPL drivers/mmc/host/sdhci 0xe3f3e884 sdhci_runtime_suspend_host +EXPORT_SYMBOL_GPL drivers/mmc/host/sdhci 0xe48cc46b __sdhci_add_host +EXPORT_SYMBOL_GPL drivers/mmc/host/sdhci 0xee789bc7 __sdhci_read_caps +EXPORT_SYMBOL_GPL drivers/mmc/host/sdhci 0xfb58cf92 sdhci_set_bus_width +EXPORT_SYMBOL_GPL drivers/mmc/host/sdhci 0xfcd56f32 sdhci_start_tuning +EXPORT_SYMBOL_GPL drivers/mmc/host/sdhci 0xfd262908 sdhci_suspend_host +EXPORT_SYMBOL_GPL drivers/mmc/host/sdhci 0xfd6d88fa sdhci_request +EXPORT_SYMBOL_GPL drivers/mmc/host/sdhci 0xff75b147 sdhci_end_tuning +EXPORT_SYMBOL_GPL drivers/mmc/host/sdhci-pltfm 0x143d3c44 sdhci_pltfm_suspend +EXPORT_SYMBOL_GPL drivers/mmc/host/sdhci-pltfm 0x2023832d sdhci_pltfm_unregister +EXPORT_SYMBOL_GPL drivers/mmc/host/sdhci-pltfm 0x3c382807 sdhci_pltfm_free +EXPORT_SYMBOL_GPL drivers/mmc/host/sdhci-pltfm 0x7824a29f sdhci_pltfm_pmops +EXPORT_SYMBOL_GPL drivers/mmc/host/sdhci-pltfm 0x7fc3ea44 sdhci_pltfm_register +EXPORT_SYMBOL_GPL drivers/mmc/host/sdhci-pltfm 0x932cf2c5 sdhci_pltfm_clk_get_max_clock +EXPORT_SYMBOL_GPL drivers/mmc/host/sdhci-pltfm 0xa21a9e5a sdhci_get_property +EXPORT_SYMBOL_GPL drivers/mmc/host/sdhci-pltfm 0xbf8067f1 sdhci_pltfm_resume +EXPORT_SYMBOL_GPL drivers/mmc/host/sdhci-pltfm 0xe1a0cbfb sdhci_pltfm_init +EXPORT_SYMBOL_GPL drivers/mmc/host/tmio_mmc_core 0x0cc54f99 tmio_mmc_do_data_irq +EXPORT_SYMBOL_GPL drivers/mmc/host/tmio_mmc_core 0x378f2335 tmio_mmc_irq +EXPORT_SYMBOL_GPL drivers/mmc/host/tmio_mmc_core 0x3bdccdb6 tmio_mmc_disable_mmc_irqs +EXPORT_SYMBOL_GPL drivers/mmc/host/tmio_mmc_core 0x64273672 tmio_mmc_host_probe +EXPORT_SYMBOL_GPL drivers/mmc/host/tmio_mmc_core 0x736a9f0f tmio_mmc_host_remove +EXPORT_SYMBOL_GPL drivers/mmc/host/tmio_mmc_core 0x89ce0558 tmio_mmc_host_runtime_suspend +EXPORT_SYMBOL_GPL drivers/mmc/host/tmio_mmc_core 0x9add9e3a tmio_mmc_host_runtime_resume +EXPORT_SYMBOL_GPL drivers/mmc/host/tmio_mmc_core 0xa8035b7d tmio_mmc_host_free +EXPORT_SYMBOL_GPL drivers/mmc/host/tmio_mmc_core 0xb9497f88 tmio_mmc_enable_mmc_irqs +EXPORT_SYMBOL_GPL drivers/mmc/host/tmio_mmc_core 0xf99ef928 tmio_mmc_host_alloc +EXPORT_SYMBOL_GPL drivers/most/most_core 0x01ed51c6 most_submit_mbo +EXPORT_SYMBOL_GPL drivers/most/most_core 0x1e401ec8 most_start_channel +EXPORT_SYMBOL_GPL drivers/most/most_core 0x367b2868 most_deregister_interface +EXPORT_SYMBOL_GPL drivers/most/most_core 0x6ec3add2 most_register_component +EXPORT_SYMBOL_GPL drivers/most/most_core 0x70166a17 most_stop_enqueue +EXPORT_SYMBOL_GPL drivers/most/most_core 0x7b774a4e channel_has_mbo +EXPORT_SYMBOL_GPL drivers/most/most_core 0xcd6d524a most_deregister_configfs_subsys +EXPORT_SYMBOL_GPL drivers/most/most_core 0xd28314ee most_get_mbo +EXPORT_SYMBOL_GPL drivers/most/most_core 0xd653f86d most_resume_enqueue +EXPORT_SYMBOL_GPL drivers/most/most_core 0xe3519242 most_put_mbo +EXPORT_SYMBOL_GPL drivers/most/most_core 0xe9e7c016 most_deregister_component +EXPORT_SYMBOL_GPL drivers/most/most_core 0xefb8e3ce most_register_interface +EXPORT_SYMBOL_GPL drivers/most/most_core 0xf4d417f3 most_register_configfs_subsys +EXPORT_SYMBOL_GPL drivers/most/most_core 0xfdcbe45b most_stop_channel +EXPORT_SYMBOL_GPL drivers/mtd/chips/cfi_cmdset_0001 0x7dbb7855 cfi_cmdset_0200 +EXPORT_SYMBOL_GPL drivers/mtd/chips/cfi_cmdset_0001 0x80a55dc3 cfi_cmdset_0003 +EXPORT_SYMBOL_GPL drivers/mtd/chips/cfi_cmdset_0001 0xbf8c782b cfi_cmdset_0001 +EXPORT_SYMBOL_GPL drivers/mtd/chips/cfi_cmdset_0002 0x6cc800b1 cfi_cmdset_0701 +EXPORT_SYMBOL_GPL drivers/mtd/chips/cfi_cmdset_0002 0x9f31cf37 cfi_cmdset_0002 +EXPORT_SYMBOL_GPL drivers/mtd/chips/cfi_cmdset_0002 0xe16384e7 cfi_cmdset_0006 +EXPORT_SYMBOL_GPL drivers/mtd/chips/cfi_cmdset_0020 0x0ef6a9b0 cfi_cmdset_0020 +EXPORT_SYMBOL_GPL drivers/mtd/chips/cfi_util 0x0358611a cfi_qry_mode_off +EXPORT_SYMBOL_GPL drivers/mtd/chips/cfi_util 0x33710905 cfi_qry_present +EXPORT_SYMBOL_GPL drivers/mtd/chips/cfi_util 0xd03ad421 cfi_qry_mode_on +EXPORT_SYMBOL_GPL drivers/mtd/hyperbus/hyperbus-core 0x01a1d3a0 hyperbus_register_device +EXPORT_SYMBOL_GPL drivers/mtd/hyperbus/hyperbus-core 0x23076a1c hyperbus_unregister_device +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0x008d99e7 mtd_wunit_to_pairing_info +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0x01f1cb4f deregister_mtd_parser +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0x042ffdc6 mtd_writev +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0x0e79a263 mtd_erase +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0x0ee8395b mtd_ooblayout_get_databytes +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0x102e7fdc kill_mtd_super +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0x1cc4695a mtd_read_oob +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0x2a939209 mtd_ooblayout_set_databytes +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0x327e6045 mtd_ooblayout_get_eccbytes +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0x43312d05 mtd_pairing_info_to_wunit +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0x49593b13 __get_mtd_device +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0x548e8c51 mtd_get_fact_prot_info +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0x554aca38 mtd_write_user_prot_reg +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0x5590394e mtd_lock_user_prot_reg +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0x55fe0183 mtd_lock +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0x5b50430d mtd_get_user_prot_info +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0x6024c796 mtd_get_unmapped_area +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0x63edc705 mtd_write_oob +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0x6af373cd unregister_mtd_user +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0x77557835 mtd_write +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0x780c9bcb get_mtd_device +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0x7a802f3e mtd_read_user_prot_reg +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0x7b918484 get_tree_mtd +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0x7d7458e4 mtd_ooblayout_ecc +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0x7e32c1de mtd_unlock +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0x8d56b27b mtd_panic_write +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0x9721656c mtd_unpoint +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0x9956878b mtd_block_isreserved +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0x9f529101 mtd_ooblayout_find_eccregion +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0xa065f37f put_mtd_device +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0xa06ff2cf get_mtd_device_nm +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0xa4b64777 mtd_read_fact_prot_reg +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0xadcd8e68 mtd_device_parse_register +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0xae3ce498 mtd_read +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0xae56ee57 mtd_block_isbad +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0xb3fa1418 __put_mtd_device +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0xb5f345b5 mtd_device_unregister +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0xb672638f mtd_ooblayout_count_eccbytes +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0xb9f77933 mtd_point +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0xbcf12f8d mtd_add_partition +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0xbd29be86 mtd_ooblayout_set_eccbytes +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0xbe2a06f3 mtd_block_markbad +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0xc0451c1c mtd_del_partition +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0xc9db585f mtd_ooblayout_count_freebytes +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0xcd4c5103 mtd_is_locked +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0xd67261dd __register_mtd_parser +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0xe53a7801 mtd_pairing_groups +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0xe62c1ea0 mtd_table_mutex +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0xf1b7335b mtd_get_device_size +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0xf2d6d7bf mtd_ooblayout_free +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0xfb16bd23 mtd_kmalloc_up_to +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0xfc18c0fd __mtd_next_device +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0xffd3ac2a register_mtd_user +EXPORT_SYMBOL_GPL drivers/mtd/mtd_blkdevs 0x1952b2b9 register_mtd_blktrans +EXPORT_SYMBOL_GPL drivers/mtd/mtd_blkdevs 0x24086a4b deregister_mtd_blktrans +EXPORT_SYMBOL_GPL drivers/mtd/mtd_blkdevs 0x62020648 del_mtd_blktrans_dev +EXPORT_SYMBOL_GPL drivers/mtd/mtd_blkdevs 0xb4e461c4 mtd_blktrans_cease_background +EXPORT_SYMBOL_GPL drivers/mtd/mtd_blkdevs 0xe2e00efe add_mtd_blktrans_dev +EXPORT_SYMBOL_GPL drivers/mtd/nand/nandcore 0x1812171d nanddev_cleanup +EXPORT_SYMBOL_GPL drivers/mtd/nand/nandcore 0x296b8c30 nanddev_mtd_erase +EXPORT_SYMBOL_GPL drivers/mtd/nand/nandcore 0x2b7aea05 nanddev_bbt_init +EXPORT_SYMBOL_GPL drivers/mtd/nand/nandcore 0x2ff28ee3 nanddev_mtd_max_bad_blocks +EXPORT_SYMBOL_GPL drivers/mtd/nand/nandcore 0x76e9abeb nanddev_bbt_set_block_status +EXPORT_SYMBOL_GPL drivers/mtd/nand/nandcore 0x8237d93c nanddev_init +EXPORT_SYMBOL_GPL drivers/mtd/nand/nandcore 0x831f1b19 nanddev_bbt_get_block_status +EXPORT_SYMBOL_GPL drivers/mtd/nand/nandcore 0x8ef54c01 nanddev_markbad +EXPORT_SYMBOL_GPL drivers/mtd/nand/nandcore 0xb1b98348 nanddev_isbad +EXPORT_SYMBOL_GPL drivers/mtd/nand/nandcore 0xe9d767ee nanddev_erase +EXPORT_SYMBOL_GPL drivers/mtd/nand/nandcore 0xedefc0b7 nanddev_bbt_update +EXPORT_SYMBOL_GPL drivers/mtd/nand/nandcore 0xeef4c35d nanddev_isreserved +EXPORT_SYMBOL_GPL drivers/mtd/nand/nandcore 0xf79e9109 nanddev_bbt_cleanup +EXPORT_SYMBOL_GPL drivers/mtd/nand/onenand/onenand 0x17a3631c onenand_scan +EXPORT_SYMBOL_GPL drivers/mtd/nand/onenand/onenand 0x7dda9b7c onenand_release +EXPORT_SYMBOL_GPL drivers/mtd/nand/raw/brcmnand/brcmnand 0xb19b6ba4 brcmnand_probe +EXPORT_SYMBOL_GPL drivers/mtd/nand/raw/brcmnand/brcmnand 0xc7823b22 brcmnand_remove +EXPORT_SYMBOL_GPL drivers/mtd/nand/raw/brcmnand/brcmnand 0xe6545b4c brcmnand_pm_ops +EXPORT_SYMBOL_GPL drivers/mtd/nand/raw/denali 0x22557291 denali_chip_init +EXPORT_SYMBOL_GPL drivers/mtd/nand/raw/nand 0x00be0bbf nand_read_data_op +EXPORT_SYMBOL_GPL drivers/mtd/nand/raw/nand 0x06413a4a nand_prog_page_end_op +EXPORT_SYMBOL_GPL drivers/mtd/nand/raw/nand 0x074c0ced nand_prog_page_op +EXPORT_SYMBOL_GPL drivers/mtd/nand/raw/nand 0x11091291 nand_extract_bits +EXPORT_SYMBOL_GPL drivers/mtd/nand/raw/nand 0x1a69ddde nand_read_oob_op +EXPORT_SYMBOL_GPL drivers/mtd/nand/raw/nand 0x1bd30627 nand_wait_ready +EXPORT_SYMBOL_GPL drivers/mtd/nand/raw/nand 0x1e0cb74e nand_soft_waitrdy +EXPORT_SYMBOL_GPL drivers/mtd/nand/raw/nand 0x1e903ad6 nand_reset_op +EXPORT_SYMBOL_GPL drivers/mtd/nand/raw/nand 0x27cd28c5 nand_op_parser_exec_op +EXPORT_SYMBOL_GPL drivers/mtd/nand/raw/nand 0x2915b87b nand_change_read_column_op +EXPORT_SYMBOL_GPL drivers/mtd/nand/raw/nand 0x2d368c4c nand_subop_get_addr_start_off +EXPORT_SYMBOL_GPL drivers/mtd/nand/raw/nand 0x3b13af30 nand_cleanup +EXPORT_SYMBOL_GPL drivers/mtd/nand/raw/nand 0x3d4c0d5e nand_gpio_waitrdy +EXPORT_SYMBOL_GPL drivers/mtd/nand/raw/nand 0x45b17417 nand_prog_page_begin_op +EXPORT_SYMBOL_GPL drivers/mtd/nand/raw/nand 0x47e7dca9 nand_select_target +EXPORT_SYMBOL_GPL drivers/mtd/nand/raw/nand 0x488cee09 nand_decode_ext_id +EXPORT_SYMBOL_GPL drivers/mtd/nand/raw/nand 0x5632e63d nand_subop_get_num_addr_cyc +EXPORT_SYMBOL_GPL drivers/mtd/nand/raw/nand 0x5eebc665 nand_readid_op +EXPORT_SYMBOL_GPL drivers/mtd/nand/raw/nand 0x6ce3b2d4 nand_status_op +EXPORT_SYMBOL_GPL drivers/mtd/nand/raw/nand 0x6ee64aae nand_ooblayout_lp_ops +EXPORT_SYMBOL_GPL drivers/mtd/nand/raw/nand 0x73e82765 nand_change_write_column_op +EXPORT_SYMBOL_GPL drivers/mtd/nand/raw/nand 0x9f8d52db nand_read_page_op +EXPORT_SYMBOL_GPL drivers/mtd/nand/raw/nand 0xa6d22a75 nand_ecc_choose_conf +EXPORT_SYMBOL_GPL drivers/mtd/nand/raw/nand 0xb1daeeab nand_deselect_target +EXPORT_SYMBOL_GPL drivers/mtd/nand/raw/nand 0xc06bca47 nand_erase_op +EXPORT_SYMBOL_GPL drivers/mtd/nand/raw/nand 0xcaa610a0 nand_write_data_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/nand 0xe4243fc7 nand_reset +EXPORT_SYMBOL_GPL drivers/mtd/nand/raw/nand 0xff70a689 nand_ooblayout_sp_ops +EXPORT_SYMBOL_GPL drivers/mtd/nand/raw/sm_common 0x3677aeb1 sm_register_device +EXPORT_SYMBOL_GPL drivers/mtd/spi-nor/spi-nor 0x69178ade spi_nor_scan +EXPORT_SYMBOL_GPL drivers/mtd/spi-nor/spi-nor 0xe7e99601 spi_nor_restore +EXPORT_SYMBOL_GPL drivers/mtd/ubi/ubi 0x0a73215e ubi_leb_read_sg +EXPORT_SYMBOL_GPL drivers/mtd/ubi/ubi 0x1403602e ubi_open_volume_nm +EXPORT_SYMBOL_GPL drivers/mtd/ubi/ubi 0x1717dac5 ubi_leb_read +EXPORT_SYMBOL_GPL drivers/mtd/ubi/ubi 0x18accca6 ubi_open_volume_path +EXPORT_SYMBOL_GPL drivers/mtd/ubi/ubi 0x211a938c ubi_close_volume +EXPORT_SYMBOL_GPL drivers/mtd/ubi/ubi 0x36c76376 ubi_is_mapped +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 0x4588eb34 ubi_leb_map +EXPORT_SYMBOL_GPL drivers/mtd/ubi/ubi 0x66011ab6 ubi_get_device_info +EXPORT_SYMBOL_GPL drivers/mtd/ubi/ubi 0x77b303f8 ubi_leb_unmap +EXPORT_SYMBOL_GPL drivers/mtd/ubi/ubi 0x823115dc ubi_leb_change +EXPORT_SYMBOL_GPL drivers/mtd/ubi/ubi 0x85a8ee76 ubi_unregister_volume_notifier +EXPORT_SYMBOL_GPL drivers/mtd/ubi/ubi 0xbc107a58 ubi_leb_write +EXPORT_SYMBOL_GPL drivers/mtd/ubi/ubi 0xc5a81db4 ubi_leb_erase +EXPORT_SYMBOL_GPL drivers/mtd/ubi/ubi 0xc7fb619e ubi_do_get_device_info +EXPORT_SYMBOL_GPL drivers/mtd/ubi/ubi 0xd9b97079 ubi_open_volume +EXPORT_SYMBOL_GPL drivers/mtd/ubi/ubi 0xe9da04bf ubi_get_volume_info +EXPORT_SYMBOL_GPL drivers/mtd/ubi/ubi 0xf5ee9ba8 ubi_register_volume_notifier +EXPORT_SYMBOL_GPL drivers/mux/mux-core 0x0467faeb mux_chip_register +EXPORT_SYMBOL_GPL drivers/mux/mux-core 0x0c091f18 mux_control_try_select +EXPORT_SYMBOL_GPL drivers/mux/mux-core 0x27c172e8 mux_chip_free +EXPORT_SYMBOL_GPL drivers/mux/mux-core 0x4130ef0b mux_control_states +EXPORT_SYMBOL_GPL drivers/mux/mux-core 0x6cf67548 mux_chip_alloc +EXPORT_SYMBOL_GPL drivers/mux/mux-core 0x868ff4d1 devm_mux_chip_alloc +EXPORT_SYMBOL_GPL drivers/mux/mux-core 0x9d32ef21 mux_control_put +EXPORT_SYMBOL_GPL drivers/mux/mux-core 0xa12d1b4b mux_chip_unregister +EXPORT_SYMBOL_GPL drivers/mux/mux-core 0xa7897576 mux_control_deselect +EXPORT_SYMBOL_GPL drivers/mux/mux-core 0xb8918696 devm_mux_chip_register +EXPORT_SYMBOL_GPL drivers/mux/mux-core 0xba03f3aa devm_mux_control_get +EXPORT_SYMBOL_GPL drivers/mux/mux-core 0xbbe4ece3 mux_control_get +EXPORT_SYMBOL_GPL drivers/mux/mux-core 0xf017341c mux_control_select +EXPORT_SYMBOL_GPL drivers/net/arcnet/arcnet 0x175f705c arcnet_led_event +EXPORT_SYMBOL_GPL drivers/net/arcnet/arcnet 0x6f77c691 devm_arcnet_led_init +EXPORT_SYMBOL_GPL drivers/net/bareudp 0xb208ccce bareudp_dev_create +EXPORT_SYMBOL_GPL drivers/net/can/c_can/c_can 0x109f25fb alloc_c_can_dev +EXPORT_SYMBOL_GPL drivers/net/can/c_can/c_can 0x66fbd011 unregister_c_can_dev +EXPORT_SYMBOL_GPL drivers/net/can/c_can/c_can 0x7e370422 free_c_can_dev +EXPORT_SYMBOL_GPL drivers/net/can/c_can/c_can 0x9e2eba6f c_can_power_down +EXPORT_SYMBOL_GPL drivers/net/can/c_can/c_can 0xba019915 c_can_power_up +EXPORT_SYMBOL_GPL drivers/net/can/c_can/c_can 0xebfd7286 register_c_can_dev +EXPORT_SYMBOL_GPL drivers/net/can/can-dev 0x07288974 free_candev +EXPORT_SYMBOL_GPL drivers/net/can/can-dev 0x0a673ecc can_change_state +EXPORT_SYMBOL_GPL drivers/net/can/can-dev 0x0c952c9a can_change_mtu +EXPORT_SYMBOL_GPL drivers/net/can/can-dev 0x142a4474 alloc_can_skb +EXPORT_SYMBOL_GPL drivers/net/can/can-dev 0x16081ffb can_dlc2len +EXPORT_SYMBOL_GPL drivers/net/can/can-dev 0x43b0c5d5 can_rx_offload_queue_sorted +EXPORT_SYMBOL_GPL drivers/net/can/can-dev 0x44bfc6bb can_rx_offload_enable +EXPORT_SYMBOL_GPL drivers/net/can/can-dev 0x4579736e alloc_canfd_skb +EXPORT_SYMBOL_GPL drivers/net/can/can-dev 0x484aaf29 can_rx_offload_add_fifo +EXPORT_SYMBOL_GPL drivers/net/can/can-dev 0x4b2c04b3 can_rx_offload_add_timestamp +EXPORT_SYMBOL_GPL drivers/net/can/can-dev 0x4b89b68b alloc_candev_mqs +EXPORT_SYMBOL_GPL drivers/net/can/can-dev 0x4f8bb3d1 unregister_candev +EXPORT_SYMBOL_GPL drivers/net/can/can-dev 0x5095698b can_rx_offload_get_echo_skb +EXPORT_SYMBOL_GPL drivers/net/can/can-dev 0x5853a242 can_put_echo_skb +EXPORT_SYMBOL_GPL drivers/net/can/can-dev 0x6778e2d4 can_bus_off +EXPORT_SYMBOL_GPL drivers/net/can/can-dev 0x7527364d can_rx_offload_del +EXPORT_SYMBOL_GPL drivers/net/can/can-dev 0x7e46dfc5 can_free_echo_skb +EXPORT_SYMBOL_GPL drivers/net/can/can-dev 0x8762619a can_len2dlc +EXPORT_SYMBOL_GPL drivers/net/can/can-dev 0x87c0ef63 can_get_echo_skb +EXPORT_SYMBOL_GPL drivers/net/can/can-dev 0x916f294b can_rx_offload_queue_tail +EXPORT_SYMBOL_GPL drivers/net/can/can-dev 0x9500e1bf open_candev +EXPORT_SYMBOL_GPL drivers/net/can/can-dev 0x96279d8f safe_candev_priv +EXPORT_SYMBOL_GPL drivers/net/can/can-dev 0x99081e0f close_candev +EXPORT_SYMBOL_GPL drivers/net/can/can-dev 0xaaf16987 can_rx_offload_irq_offload_fifo +EXPORT_SYMBOL_GPL drivers/net/can/can-dev 0xb282f53c alloc_can_err_skb +EXPORT_SYMBOL_GPL drivers/net/can/can-dev 0xb5192d05 of_can_transceiver +EXPORT_SYMBOL_GPL drivers/net/can/can-dev 0xf0d74e55 register_candev +EXPORT_SYMBOL_GPL drivers/net/can/can-dev 0xf19c4423 can_rx_offload_irq_offload_timestamp +EXPORT_SYMBOL_GPL drivers/net/can/cc770/cc770 0x85d19e48 register_cc770dev +EXPORT_SYMBOL_GPL drivers/net/can/cc770/cc770 0x8b7efc57 unregister_cc770dev +EXPORT_SYMBOL_GPL drivers/net/can/cc770/cc770 0xd7c9cb8a alloc_cc770dev +EXPORT_SYMBOL_GPL drivers/net/can/cc770/cc770 0xf0edb880 free_cc770dev +EXPORT_SYMBOL_GPL drivers/net/can/m_can/m_can 0x540eccdb m_can_class_allocate_dev +EXPORT_SYMBOL_GPL drivers/net/can/m_can/m_can 0x63cd5795 m_can_class_get_clocks +EXPORT_SYMBOL_GPL drivers/net/can/m_can/m_can 0x67e44ce8 m_can_class_unregister +EXPORT_SYMBOL_GPL drivers/net/can/m_can/m_can 0x755f3bc1 m_can_class_resume +EXPORT_SYMBOL_GPL drivers/net/can/m_can/m_can 0x7cdcc3b0 m_can_class_suspend +EXPORT_SYMBOL_GPL drivers/net/can/m_can/m_can 0xa41f520f m_can_class_register +EXPORT_SYMBOL_GPL drivers/net/can/m_can/m_can 0xb67e9af0 m_can_class_free_dev +EXPORT_SYMBOL_GPL drivers/net/can/m_can/m_can 0xc0ec80a7 m_can_init_ram +EXPORT_SYMBOL_GPL drivers/net/can/sja1000/sja1000 0x04219dca register_sja1000dev +EXPORT_SYMBOL_GPL drivers/net/can/sja1000/sja1000 0x49ebd0d2 sja1000_interrupt +EXPORT_SYMBOL_GPL drivers/net/can/sja1000/sja1000 0x6ac79d8f unregister_sja1000dev +EXPORT_SYMBOL_GPL drivers/net/can/sja1000/sja1000 0xd50f304d free_sja1000dev +EXPORT_SYMBOL_GPL drivers/net/can/sja1000/sja1000 0xfcd44cfa alloc_sja1000dev +EXPORT_SYMBOL_GPL drivers/net/dsa/lan9303-core 0x1e398891 lan9303_indirect_phy_ops +EXPORT_SYMBOL_GPL drivers/net/dsa/microchip/ksz_common 0x1cdf5437 ksz_port_bridge_leave +EXPORT_SYMBOL_GPL drivers/net/dsa/microchip/ksz_common 0x2b3ce86b ksz_port_fdb_dump +EXPORT_SYMBOL_GPL drivers/net/dsa/microchip/ksz_common 0x43d7556c ksz_phy_write16 +EXPORT_SYMBOL_GPL drivers/net/dsa/microchip/ksz_common 0x59439799 ksz_port_bridge_join +EXPORT_SYMBOL_GPL drivers/net/dsa/microchip/ksz_common 0x6106e923 ksz_port_fast_age +EXPORT_SYMBOL_GPL drivers/net/dsa/microchip/ksz_common 0x6675b95d ksz_disable_port +EXPORT_SYMBOL_GPL drivers/net/dsa/microchip/ksz_common 0x6f3c0b27 ksz_init_mib_timer +EXPORT_SYMBOL_GPL drivers/net/dsa/microchip/ksz_common 0x9185453a ksz_phy_read16 +EXPORT_SYMBOL_GPL drivers/net/dsa/microchip/ksz_common 0xa7d09f43 ksz_port_vlan_prepare +EXPORT_SYMBOL_GPL drivers/net/dsa/microchip/ksz_common 0xaab82891 ksz_port_mdb_add +EXPORT_SYMBOL_GPL drivers/net/dsa/microchip/ksz_common 0xaea7909d ksz_sset_count +EXPORT_SYMBOL_GPL drivers/net/dsa/microchip/ksz_common 0xb1d3fe42 ksz_port_mdb_del +EXPORT_SYMBOL_GPL drivers/net/dsa/microchip/ksz_common 0xb6334703 ksz_adjust_link +EXPORT_SYMBOL_GPL drivers/net/dsa/microchip/ksz_common 0xe00af029 ksz_get_ethtool_stats +EXPORT_SYMBOL_GPL drivers/net/dsa/microchip/ksz_common 0xe4ef729c ksz_update_port_member +EXPORT_SYMBOL_GPL drivers/net/dsa/microchip/ksz_common 0xe7381862 ksz_port_mdb_prepare +EXPORT_SYMBOL_GPL drivers/net/dsa/microchip/ksz_common 0xe8a70e7c ksz_enable_port +EXPORT_SYMBOL_GPL drivers/net/dsa/realtek-smi 0x2d038c6a rtl8366_get_strings +EXPORT_SYMBOL_GPL drivers/net/dsa/realtek-smi 0x38cc1cb2 rtl8366rb_variant +EXPORT_SYMBOL_GPL drivers/net/dsa/realtek-smi 0x3a08e3b2 rtl8366_vlan_filtering +EXPORT_SYMBOL_GPL drivers/net/dsa/realtek-smi 0x420e11bc rtl8366_reset_vlan +EXPORT_SYMBOL_GPL drivers/net/dsa/realtek-smi 0x5c54ef33 rtl8366_mc_is_used +EXPORT_SYMBOL_GPL drivers/net/dsa/realtek-smi 0x6cb988db rtl8366_set_vlan +EXPORT_SYMBOL_GPL drivers/net/dsa/realtek-smi 0x8597bd87 rtl8366_set_pvid +EXPORT_SYMBOL_GPL drivers/net/dsa/realtek-smi 0x9439a431 rtl8366_init_vlan +EXPORT_SYMBOL_GPL drivers/net/dsa/realtek-smi 0xb6678ef3 rtl8366_get_sset_count +EXPORT_SYMBOL_GPL drivers/net/dsa/realtek-smi 0xcb94f9db rtl8366_vlan_add +EXPORT_SYMBOL_GPL drivers/net/dsa/realtek-smi 0xd0f0d234 rtl8366_vlan_prepare +EXPORT_SYMBOL_GPL drivers/net/dsa/realtek-smi 0xd4551163 rtl8366_vlan_del +EXPORT_SYMBOL_GPL drivers/net/dsa/realtek-smi 0xe6b7d619 realtek_smi_write_reg_noack +EXPORT_SYMBOL_GPL drivers/net/dsa/realtek-smi 0xeb847c71 rtl8366_enable_vlan +EXPORT_SYMBOL_GPL drivers/net/dsa/realtek-smi 0xf7c1dd71 rtl8366_enable_vlan4k +EXPORT_SYMBOL_GPL drivers/net/dsa/realtek-smi 0xfa66e102 rtl8366_get_ethtool_stats +EXPORT_SYMBOL_GPL drivers/net/ethernet/arc/arc_emac 0x19a47e2a arc_emac_remove +EXPORT_SYMBOL_GPL drivers/net/ethernet/arc/arc_emac 0x9486a7c0 arc_emac_probe +EXPORT_SYMBOL_GPL drivers/net/ethernet/freescale/enetc/fsl-enetc-mdio 0x51cfcf1b enetc_mdio_write +EXPORT_SYMBOL_GPL drivers/net/ethernet/freescale/enetc/fsl-enetc-mdio 0x837616da enetc_mdio_read +EXPORT_SYMBOL_GPL drivers/net/ethernet/freescale/enetc/fsl-enetc-mdio 0xbf558d05 enetc_hw_alloc +EXPORT_SYMBOL_GPL drivers/net/ethernet/freescale/enetc/fsl-enetc-mdio 0xd9d61d6f enetc_mdio_lock +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x0464c846 mlx4_unbond +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x091bad61 mlx4_mr_hw_change_pd +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x0ba50dda mlx4_get_slave_default_vlan +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x0bd037ca mlx4_unregister_interface +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x0c7f4f25 mlx4_db_free +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x0d86fc36 mlx4_find_cached_vlan +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x11589e57 mlx4_set_vf_rate +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x14da9f38 mlx4_replace_zero_macs +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x153521e5 mlx4_phys_to_slaves_pport_actv +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x181e7987 mlx4_set_vf_vlan +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x18f2d74b mlx4_qp_modify +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x19909efc mlx4_ACCESS_PTYS_REG +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x1c7af89f __mlx4_replace_mac +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x1cddc90c mlx4_register_vlan +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x202e0631 __mlx4_register_mac +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x20b92a77 mlx4_unicast_detach +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x212be509 mlx4_get_protocol_dev +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x214c718d mlx4_pd_alloc +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x222ed08e mlx4_free_cmd_mailbox +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x228aeb6b mlx4_qp_alloc +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x22b87a0a mlx4_wol_read +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x2480c97f mlx4_port_map_set +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x27a43e2b mlx4_config_vxlan_port +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x2945218f mlx4_mr_rereg_mem_write +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x2f4634fb mlx4_get_devlink_port +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x33382630 mlx4_mr_hw_put_mpt +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x33a904b7 mlx4_multicast_detach +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x33f3cb8a mlx4_unregister_mac +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x344956a6 mlx4_mw_free +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x37f97c82 mlx4_cq_alloc +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x39b48ea0 mlx4_get_base_qpn +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x3ce8f207 mlx4_qp_query +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x449c0a40 mlx4_qp_free +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x457c6c45 mlx4_mr_hw_write_mpt +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x46ec28e5 mlx4_update_qp +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x4a6cd9ce mlx4_hw_rule_sz +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x4b666ed8 mlx4_write_mtt +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x4bcb8120 mlx4_config_roce_v2_port +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x4c2cc942 mlx4_mw_enable +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x4d6986e2 __mlx4_cmd +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x4e240578 mlx4_multicast_promisc_remove +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x5b1bac4c mlx4_xrcd_alloc +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x608ac09e mlx4_db_alloc +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x62736470 mlx4_get_active_ports +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x63b4b88f mlx4_set_vf_spoofchk +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x65f334b0 mlx4_unicast_attach +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x6e6390d9 mlx4_multicast_attach +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x6f1aba44 mlx4_map_sw_to_hw_steering_mode +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x72628e14 mlx4_register_mac +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x7270e358 mlx4_get_base_gid_ix +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x728820a2 mlx4_mw_alloc +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x74505574 mlx4_pd_free +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x74a1b257 mlx4_uar_free +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x76918a57 mlx4_buf_free +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x781d13ff mlx4_flow_steer_promisc_remove +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x7cbb3e0d mlx4_FLOW_STEERING_IB_UC_QP_RANGE +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x7d477319 mlx4_qp_remove +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x7d4ae480 mlx4_wol_write +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x7d8bffd9 mlx4_srq_arm +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x7f07fc3d mlx4_set_admin_guid +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x805705b6 mlx4_srq_free +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x8116a15d mlx4_buf_alloc +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x85b75949 mlx4_flow_detach +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x85bc453e mlx4_get_admin_guid +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x86577861 mlx4_map_sw_to_hw_steering_id +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x875bab60 mlx4_counter_free +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x89451e78 mlx4_mtt_cleanup +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x8968f489 mlx4_alloc_hwq_res +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x8c93536a mlx4_unregister_vlan +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x8cddc6d0 mlx4_set_vf_mac +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x8df1861d mlx4_bf_alloc +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x8f1108ef mlx4_get_vf_stats +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x8fb83b0b mlx4_mr_alloc +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x9165e52a mlx4_unicast_promisc_add +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x921cc7fc mlx4_vf_get_enable_smi_admin +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x93888098 mlx4_get_vf_config +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x9e0b8b6d mlx4_SYNC_TPT +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x9f0191f4 mlx4_free_hwq_res +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x9f2bba8e mlx4_phys_to_slave_port +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x9f2dc309 mlx4_cq_modify +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xa2f30511 mlx4_bond +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xa38fea44 mlx4_slave_convert_port +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xa4ae5474 mlx4_qp_to_ready +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xa5328ed4 mlx4_mr_free +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xa54fc6b4 mlx4_get_counter_stats +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xaf8b3752 mlx4_CLOSE_PORT +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xaf9545d6 mlx4_mr_hw_change_access +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xafbe8f99 mlx4_bf_free +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xb181338b mlx4_register_interface +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xb2c3baa9 mlx4_cq_free +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xb512ae00 mlx4_unicast_promisc_remove +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xb6b3d313 mlx4_flow_attach +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xb7dd6f34 mlx4_uar_alloc +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xb8f25e69 mlx4_mtt_addr +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xc05e76a2 mlx4_vf_smi_enabled +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xc8358a37 mlx4_srq_alloc +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xd277bec8 mlx4_config_dev_retrieval +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xd3b93630 mlx4_alloc_cmd_mailbox +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xd9647e98 mlx4_vf_set_enable_smi_admin +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xdadeb63e mlx4_xrcd_free +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xdc45c4b9 mlx4_mtt_init +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xdd6c31ed mlx4_mr_rereg_mem_cleanup +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xdf6b62b4 mlx4_get_internal_clock_params +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xe06c40a3 mlx4_set_vf_link_state +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xe17e2b33 mlx4_mr_hw_get_mpt +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xe1eaf02e mlx4_qp_release_range +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xe5ecc505 mlx4_flow_steer_promisc_add +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xe81e7b23 mlx4_get_default_counter_index +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xeab32231 mlx4_read_clock +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xeb8143a1 mlx4_counter_alloc +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xebd7eecb mlx4_srq_query +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xeebf9ad4 mlx4_qp_reserve_range +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xef072dc6 mlx4_phys_to_slaves_pport +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xf2351f44 mlx4_buf_write_mtt +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xf2769b14 mlx4_find_cached_mac +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xf3a62413 mlx4_multicast_promisc_add +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xf3b37f77 mlx4_srq_lookup +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xf6253590 __mlx4_unregister_mac +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xf641fc5d mlx4_cq_resize +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xfb9509c5 mlx4_mr_enable +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xfeae371c mlx4_INIT_PORT +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x041b2dcf mlx5_query_hca_vport_node_guid +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x06909cc7 mlx5_query_port_ets_rate_limit +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 0x08aa0203 mlx5_query_port_pfc +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x0ce82f41 mlx5_query_port_link_width_oper +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x1700531d mlx5_query_port_tc_group +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x17075508 mlx5_query_port_prio_tc +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x17feb559 mlx5_query_nic_vport_promisc +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x18ae5e4f mlx5_modify_port_ets_rate_limit +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x1a4de192 mlx5_modify_nic_vport_mac_list +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x1b0445c8 mlx5_core_query_ib_ppcnt +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x2a95007f mlx5_query_nic_vport_min_inline +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x2c7ea6ff mlx5_query_port_ptys +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x316a86d4 mlx5_accel_esp_destroy_xfrm +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x31887f44 mlx5_frag_buf_free +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x3fbe0a50 mlx5_modify_nic_vport_mac_address +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x419eaa63 mlx5_toggle_port_link +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x427dd148 mlx5_modify_nic_vport_mtu +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x44e5c6d3 mlx5_query_module_eeprom +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x468961fe mlx5_set_port_tc_bw_alloc +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x4b8b357a mlx5_query_nic_system_image_guid +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x4c55877a mlx5_query_port_max_mtu +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x4f23c17d mlx5_query_nic_vport_mtu +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x528a4f5e mlx5_nic_vport_enable_roce +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x53267f83 mlx5_core_query_sq_state +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x55c8f950 mlx5_set_port_pause +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x65adad22 mlx5_core_modify_hca_vport_context +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x6ac2a63c mlx5_nic_vport_update_local_lb +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x6d1ad4f3 mlx5_buf_free +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x6f0e5e89 mlx5_query_hca_vport_gid +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x6fcb0a55 mlx5_set_port_wol +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x75d25a1f mlx5_accel_esp_create_xfrm +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x778fc0ad mlx5_query_nic_vport_system_image_guid +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x7c28eee8 mlx5_query_nic_vport_mac_address +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x7d3a81ea mlx5_query_port_admin_status +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x83ab832c mlx5_accel_esp_modify_xfrm +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x8699777d mlx5_core_reserved_gids_count +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x91a97a27 mlx5_set_port_prio_tc +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x91d3dedf mlx5_eswitch_get_total_vports +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x920f60ff mlx5_query_port_tc_bw_alloc +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x962ed97d mlx5_query_mac_address +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x9b0dd4c2 mlx5_query_nic_vport_qkey_viol_cntr +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xa5067706 mlx5_query_min_inline +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xa5bc5dea mlx5_modify_nic_vport_promisc +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xa691f501 mlx5_query_hca_vport_pkey +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xa75f49d6 mlx5_fill_page_array +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xaa166373 mlx5_set_port_admin_status +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xaa2e7c29 mlx5_query_port_pause +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xadb0aaad mlx5_accel_ipsec_device_caps +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xb046bd71 mlx5_nic_vport_query_local_lb +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xb3c65f3b mlx5_query_hca_vport_system_image_guid +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xb3e7665d mlx5_nic_vport_affiliate_multiport +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xb66f8eb8 mlx5_core_access_reg +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xb97b046d mlx5_db_alloc_node +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xbb7aeb75 mlx5_set_port_mtu +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xbcc1ec4b mlx5_db_free +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xc52f38fc mlx5_set_port_tc_group +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xd05714a6 mlx5_set_port_pfc +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xd0cbe5c6 mlx5_core_query_vport_counter +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xd1aa91b6 mlx5_query_nic_vport_node_guid +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xd7cfe7f9 mlx5_query_port_wol +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xd8637ea2 mlx5_set_port_caps +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xdd311815 mlx5_frag_buf_alloc_node +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xe556d499 mlx5_query_port_oper_mtu +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xe73a73a8 mlx5_modify_nic_vport_vlans +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xee2c210c mlx5_nic_vport_unaffiliate_multiport +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xee304767 mlx5_dm_sw_icm_alloc +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xef35d4f7 mlx5_dm_sw_icm_dealloc +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xf015f3a6 mlx5_eswitch_mode +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xf0f63474 mlx5_query_nic_vport_mac_list +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xf3b8a5ed mlx5_db_alloc +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xf68d3703 mlx5_query_hca_vport_context +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xfda43795 mlx5_query_port_vl_hw_cap +EXPORT_SYMBOL_GPL drivers/net/ethernet/microchip/encx24j600-regmap 0x440b313c 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_common 0x1592f58c ocelot_cls_flower_replace +EXPORT_SYMBOL_GPL drivers/net/ethernet/mscc/mscc_ocelot_common 0x775927bd ocelot_cls_flower_destroy +EXPORT_SYMBOL_GPL drivers/net/ethernet/mscc/mscc_ocelot_common 0xdc703782 ocelot_cls_flower_stats +EXPORT_SYMBOL_GPL drivers/net/ethernet/qualcomm/qca_7k_common 0x0b28a9ad qcafrm_create_footer +EXPORT_SYMBOL_GPL drivers/net/ethernet/qualcomm/qca_7k_common 0x2b6ddf3f qcafrm_fsm_decode +EXPORT_SYMBOL_GPL drivers/net/ethernet/qualcomm/qca_7k_common 0x41da0375 qcafrm_create_header +EXPORT_SYMBOL_GPL drivers/net/ethernet/stmicro/stmmac/stmmac 0x399f0faf stmmac_dvr_remove +EXPORT_SYMBOL_GPL drivers/net/ethernet/stmicro/stmmac/stmmac 0x6bc458ae stmmac_suspend +EXPORT_SYMBOL_GPL drivers/net/ethernet/stmicro/stmmac/stmmac 0x6d60d8b0 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 0xc1a2b65e stmmac_resume +EXPORT_SYMBOL_GPL drivers/net/ethernet/stmicro/stmmac/stmmac 0xd1cc24db stmmac_set_mac_addr +EXPORT_SYMBOL_GPL drivers/net/ethernet/stmicro/stmmac/stmmac-platform 0x364fb0bd stmmac_probe_config_dt +EXPORT_SYMBOL_GPL drivers/net/ethernet/stmicro/stmmac/stmmac-platform 0x6ab18ad6 stmmac_remove_config_dt +EXPORT_SYMBOL_GPL drivers/net/ethernet/stmicro/stmmac/stmmac-platform 0x6e427896 stmmac_get_platform_resources +EXPORT_SYMBOL_GPL drivers/net/ethernet/stmicro/stmmac/stmmac-platform 0x856ac673 stmmac_pltfr_pm_ops +EXPORT_SYMBOL_GPL drivers/net/ethernet/stmicro/stmmac/stmmac-platform 0xd31d61d2 stmmac_pltfr_remove +EXPORT_SYMBOL_GPL drivers/net/ethernet/ti/am65-cpts 0x03a0bc44 am65_cpts_create +EXPORT_SYMBOL_GPL drivers/net/ethernet/ti/am65-cpts 0x19f091c0 am65_cpts_tx_timestamp +EXPORT_SYMBOL_GPL drivers/net/ethernet/ti/am65-cpts 0x405b51c2 am65_cpts_ns_gettime +EXPORT_SYMBOL_GPL drivers/net/ethernet/ti/am65-cpts 0x65f910b5 am65_cpts_prep_tx_timestamp +EXPORT_SYMBOL_GPL drivers/net/ethernet/ti/am65-cpts 0x91fd3558 am65_cpts_rx_enable +EXPORT_SYMBOL_GPL drivers/net/ethernet/ti/am65-cpts 0xb60b988a am65_cpts_estf_disable +EXPORT_SYMBOL_GPL drivers/net/ethernet/ti/am65-cpts 0xbfc83e4d am65_cpts_estf_enable +EXPORT_SYMBOL_GPL drivers/net/ethernet/ti/am65-cpts 0xfca9b9d9 am65_cpts_phc_index +EXPORT_SYMBOL_GPL drivers/net/ethernet/wiznet/w5100 0x1fb1c825 w5100_probe +EXPORT_SYMBOL_GPL drivers/net/ethernet/wiznet/w5100 0xb665a391 w5100_remove +EXPORT_SYMBOL_GPL drivers/net/ethernet/wiznet/w5100 0xe578a35a w5100_ops_priv +EXPORT_SYMBOL_GPL drivers/net/ethernet/wiznet/w5100 0xec5732e9 w5100_pm_ops +EXPORT_SYMBOL_GPL drivers/net/geneve 0xa71dd671 geneve_dev_create_fb +EXPORT_SYMBOL_GPL drivers/net/ipvlan/ipvlan 0x0576409b ipvlan_link_register +EXPORT_SYMBOL_GPL drivers/net/ipvlan/ipvlan 0x329729a1 ipvlan_link_delete +EXPORT_SYMBOL_GPL drivers/net/ipvlan/ipvlan 0x620a8240 ipvlan_link_new +EXPORT_SYMBOL_GPL drivers/net/ipvlan/ipvlan 0x6d38cde1 ipvlan_count_rx +EXPORT_SYMBOL_GPL drivers/net/ipvlan/ipvlan 0xbcf678ed ipvlan_link_setup +EXPORT_SYMBOL_GPL drivers/net/macsec 0x38b42f8c macsec_pn_wrapped +EXPORT_SYMBOL_GPL drivers/net/macvlan 0x1b04f310 macvlan_link_register +EXPORT_SYMBOL_GPL drivers/net/macvlan 0x312406a5 macvlan_common_setup +EXPORT_SYMBOL_GPL drivers/net/macvlan 0x911baea5 macvlan_common_newlink +EXPORT_SYMBOL_GPL drivers/net/macvlan 0xd529d204 macvlan_dellink +EXPORT_SYMBOL_GPL drivers/net/net_failover 0x2d6db1ca net_failover_destroy +EXPORT_SYMBOL_GPL drivers/net/net_failover 0x71f59d1d net_failover_create +EXPORT_SYMBOL_GPL drivers/net/phy/bcm-phy-lib 0x0572d7a2 bcm_phy_read_exp +EXPORT_SYMBOL_GPL drivers/net/phy/bcm-phy-lib 0x09a76cd4 bcm_phy_enable_apd +EXPORT_SYMBOL_GPL drivers/net/phy/bcm-phy-lib 0x09da7d7d bcm_phy_modify_exp +EXPORT_SYMBOL_GPL drivers/net/phy/bcm-phy-lib 0x0ea5c3a3 bcm_phy_cable_test_get_status +EXPORT_SYMBOL_GPL drivers/net/phy/bcm-phy-lib 0x176f65cd bcm_phy_write_shadow +EXPORT_SYMBOL_GPL drivers/net/phy/bcm-phy-lib 0x197f302c bcm_phy_28nm_a0b0_afe_config_init +EXPORT_SYMBOL_GPL drivers/net/phy/bcm-phy-lib 0x25f692b7 __bcm_phy_read_rdb +EXPORT_SYMBOL_GPL drivers/net/phy/bcm-phy-lib 0x2b085843 bcm54xx_auxctl_read +EXPORT_SYMBOL_GPL drivers/net/phy/bcm-phy-lib 0x3f10cf45 bcm_phy_cable_test_start +EXPORT_SYMBOL_GPL drivers/net/phy/bcm-phy-lib 0x42079624 bcm_phy_cable_test_get_status_rdb +EXPORT_SYMBOL_GPL drivers/net/phy/bcm-phy-lib 0x424337b9 __bcm_phy_modify_rdb +EXPORT_SYMBOL_GPL drivers/net/phy/bcm-phy-lib 0x463f97d5 bcm_phy_read_misc +EXPORT_SYMBOL_GPL drivers/net/phy/bcm-phy-lib 0x59595ff8 bcm_phy_read_shadow +EXPORT_SYMBOL_GPL drivers/net/phy/bcm-phy-lib 0x68ac2236 bcm_phy_downshift_get +EXPORT_SYMBOL_GPL drivers/net/phy/bcm-phy-lib 0x78cdbca1 bcm_phy_downshift_set +EXPORT_SYMBOL_GPL drivers/net/phy/bcm-phy-lib 0x88ea7f30 __bcm_phy_read_exp +EXPORT_SYMBOL_GPL drivers/net/phy/bcm-phy-lib 0x90d31d20 bcm_phy_get_sset_count +EXPORT_SYMBOL_GPL drivers/net/phy/bcm-phy-lib 0x91357a4b bcm_phy_cable_test_start_rdb +EXPORT_SYMBOL_GPL drivers/net/phy/bcm-phy-lib 0x92c45bab __bcm_phy_modify_exp +EXPORT_SYMBOL_GPL drivers/net/phy/bcm-phy-lib 0x99b93c59 bcm_phy_config_intr +EXPORT_SYMBOL_GPL drivers/net/phy/bcm-phy-lib 0x9c0d3a48 bcm_phy_r_rc_cal_reset +EXPORT_SYMBOL_GPL drivers/net/phy/bcm-phy-lib 0xa021e73a __bcm_phy_write_exp +EXPORT_SYMBOL_GPL drivers/net/phy/bcm-phy-lib 0xa18efd76 bcm_phy_get_strings +EXPORT_SYMBOL_GPL drivers/net/phy/bcm-phy-lib 0xa86e2189 bcm_phy_ack_intr +EXPORT_SYMBOL_GPL drivers/net/phy/bcm-phy-lib 0xa86e3a25 bcm_phy_read_rdb +EXPORT_SYMBOL_GPL drivers/net/phy/bcm-phy-lib 0xaafebfd0 bcm_phy_set_eee +EXPORT_SYMBOL_GPL drivers/net/phy/bcm-phy-lib 0xb6c01a73 bcm_phy_write_misc +EXPORT_SYMBOL_GPL drivers/net/phy/bcm-phy-lib 0xb8bfe620 __bcm_phy_write_rdb +EXPORT_SYMBOL_GPL drivers/net/phy/bcm-phy-lib 0xcbe21081 bcm_phy_write_rdb +EXPORT_SYMBOL_GPL drivers/net/phy/bcm-phy-lib 0xce55eefb bcm_phy_enable_jumbo +EXPORT_SYMBOL_GPL drivers/net/phy/bcm-phy-lib 0xd37c119b bcm_phy_write_exp +EXPORT_SYMBOL_GPL drivers/net/phy/bcm-phy-lib 0xd95d116f bcm_phy_modify_rdb +EXPORT_SYMBOL_GPL drivers/net/phy/bcm-phy-lib 0xda982969 bcm_phy_get_stats +EXPORT_SYMBOL_GPL drivers/net/phy/mdio-i2c 0xaa58a332 mdio_i2c_alloc +EXPORT_SYMBOL_GPL drivers/net/phy/mdio-xpcs 0xb33e5319 mdio_xpcs_get_ops +EXPORT_SYMBOL_GPL drivers/net/phy/phylink 0x08213956 phylink_ethtool_get_wol +EXPORT_SYMBOL_GPL drivers/net/phy/phylink 0x1162b00e phylink_ethtool_ksettings_get +EXPORT_SYMBOL_GPL drivers/net/phy/phylink 0x12135396 phylink_mac_change +EXPORT_SYMBOL_GPL drivers/net/phy/phylink 0x15c4e3e2 phylink_ethtool_set_pauseparam +EXPORT_SYMBOL_GPL drivers/net/phy/phylink 0x18660e4a phylink_create +EXPORT_SYMBOL_GPL drivers/net/phy/phylink 0x2c8e28ee phylink_ethtool_get_eee +EXPORT_SYMBOL_GPL drivers/net/phy/phylink 0x36c610d9 phylink_mii_c22_pcs_an_restart +EXPORT_SYMBOL_GPL drivers/net/phy/phylink 0x48db09a3 phylink_mii_c45_pcs_get_state +EXPORT_SYMBOL_GPL drivers/net/phy/phylink 0x57727285 phylink_ethtool_set_eee +EXPORT_SYMBOL_GPL drivers/net/phy/phylink 0x5e44a428 phylink_add_pcs +EXPORT_SYMBOL_GPL drivers/net/phy/phylink 0x5fb6b35f phylink_helper_basex_speed +EXPORT_SYMBOL_GPL drivers/net/phy/phylink 0x62104126 phylink_ethtool_set_wol +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 0x86ff345f phylink_ethtool_ksettings_set +EXPORT_SYMBOL_GPL drivers/net/phy/phylink 0x8e7acd60 phylink_mii_c22_pcs_set_advertisement +EXPORT_SYMBOL_GPL drivers/net/phy/phylink 0x911fcd6c phylink_start +EXPORT_SYMBOL_GPL drivers/net/phy/phylink 0x983276da phylink_disconnect_phy +EXPORT_SYMBOL_GPL drivers/net/phy/phylink 0xb3876d24 phylink_of_phy_connect +EXPORT_SYMBOL_GPL drivers/net/phy/phylink 0xc1958ebc phylink_connect_phy +EXPORT_SYMBOL_GPL drivers/net/phy/phylink 0xc1d15a4c phylink_set_port_modes +EXPORT_SYMBOL_GPL drivers/net/phy/phylink 0xd56df9d2 phylink_mii_c22_pcs_get_state +EXPORT_SYMBOL_GPL drivers/net/phy/phylink 0xdcb0a2c0 phylink_stop +EXPORT_SYMBOL_GPL drivers/net/phy/phylink 0xde66f4a7 phylink_mii_ioctl +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 0xf8fe5642 phylink_ethtool_get_pauseparam +EXPORT_SYMBOL_GPL drivers/net/tap 0x164f7522 tap_create_cdev +EXPORT_SYMBOL_GPL drivers/net/tap 0x3212734a tap_del_queues +EXPORT_SYMBOL_GPL drivers/net/tap 0x3ca8d4e1 tap_get_minor +EXPORT_SYMBOL_GPL drivers/net/tap 0x65e4eaf0 tap_handle_frame +EXPORT_SYMBOL_GPL drivers/net/tap 0xa9951123 tap_free_minor +EXPORT_SYMBOL_GPL drivers/net/tap 0xb9a743a4 tap_destroy_cdev +EXPORT_SYMBOL_GPL drivers/net/tap 0xd4b709d1 tap_queue_resize +EXPORT_SYMBOL_GPL drivers/net/tap 0xe08fc3ef tap_get_ptr_ring +EXPORT_SYMBOL_GPL drivers/net/tap 0xfa0503ee tap_get_socket +EXPORT_SYMBOL_GPL drivers/net/usb/cdc_ether 0x136b43f3 usbnet_cdc_status +EXPORT_SYMBOL_GPL drivers/net/usb/cdc_ether 0x88c78fd6 usbnet_generic_cdc_bind +EXPORT_SYMBOL_GPL drivers/net/usb/cdc_ether 0xb7a33130 usbnet_cdc_bind +EXPORT_SYMBOL_GPL drivers/net/usb/cdc_ether 0xc7bddf1d usbnet_ether_cdc_bind +EXPORT_SYMBOL_GPL drivers/net/usb/cdc_ether 0xfc3250b3 usbnet_cdc_unbind +EXPORT_SYMBOL_GPL drivers/net/usb/cdc_ncm 0x037ac943 cdc_ncm_rx_verify_nth16 +EXPORT_SYMBOL_GPL drivers/net/usb/cdc_ncm 0x1fb91d79 cdc_ncm_rx_verify_nth32 +EXPORT_SYMBOL_GPL drivers/net/usb/cdc_ncm 0x3eb54025 cdc_ncm_select_altsetting +EXPORT_SYMBOL_GPL drivers/net/usb/cdc_ncm 0x4724f2fa cdc_ncm_rx_verify_ndp16 +EXPORT_SYMBOL_GPL drivers/net/usb/cdc_ncm 0x65325c7b cdc_ncm_rx_fixup +EXPORT_SYMBOL_GPL drivers/net/usb/cdc_ncm 0x81726839 cdc_ncm_fill_tx_frame +EXPORT_SYMBOL_GPL drivers/net/usb/cdc_ncm 0x9d1797ee cdc_ncm_rx_verify_ndp32 +EXPORT_SYMBOL_GPL drivers/net/usb/cdc_ncm 0xb5133595 cdc_ncm_change_mtu +EXPORT_SYMBOL_GPL drivers/net/usb/cdc_ncm 0xb8f869b0 cdc_ncm_unbind +EXPORT_SYMBOL_GPL drivers/net/usb/cdc_ncm 0xddb62b10 cdc_ncm_tx_fixup +EXPORT_SYMBOL_GPL drivers/net/usb/cdc_ncm 0xdf9a3f4c cdc_ncm_bind_common +EXPORT_SYMBOL_GPL drivers/net/usb/rndis_host 0x2f294295 rndis_tx_fixup +EXPORT_SYMBOL_GPL drivers/net/usb/rndis_host 0x36af148d generic_rndis_bind +EXPORT_SYMBOL_GPL drivers/net/usb/rndis_host 0x47032f0d rndis_rx_fixup +EXPORT_SYMBOL_GPL drivers/net/usb/rndis_host 0x9251cc45 rndis_status +EXPORT_SYMBOL_GPL drivers/net/usb/rndis_host 0xfc5acaa0 rndis_unbind +EXPORT_SYMBOL_GPL drivers/net/usb/rndis_host 0xff6c6ae0 rndis_command +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0x146ca466 usbnet_get_msglevel +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0x26e8a4a6 usbnet_get_link_ksettings +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0x30c0099b usbnet_get_stats64 +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0x3240ca9e usbnet_status_start +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0x329793c6 usbnet_tx_timeout +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0x37e14b94 usbnet_get_drvinfo +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0x426c3534 usbnet_set_link_ksettings +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0x4a0bb766 usbnet_defer_kevent +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0x50952f2d usbnet_status_stop +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0x513ec8f3 usbnet_open +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0x578b224d usbnet_set_msglevel +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0x58808476 usbnet_write_cmd_async +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0x61a247b6 usbnet_resume_rx +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0x6b3e4cd4 usbnet_read_cmd +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0x6e8fe52d usbnet_suspend +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0x75459bc0 usbnet_purge_paused_rxq +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0x759c46c4 usbnet_stop +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0x80565831 usbnet_disconnect +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0x86a4d7ce usbnet_write_cmd_nopm +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0x86b38a40 usbnet_write_cmd +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0x951d67d2 usbnet_get_ethernet_addr +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0xa7c06608 usbnet_read_cmd_nopm +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0xadbd2f56 usbnet_update_max_qlen +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0xaf28ece2 usbnet_unlink_rx_urbs +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0xaf9836b8 usbnet_resume +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0xb127372a usbnet_start_xmit +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0xb1de74de usbnet_probe +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0xb44b86d6 usbnet_get_link +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0xcb87bac5 usbnet_nway_reset +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0xe68aec11 usbnet_change_mtu +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0xed28af34 usbnet_get_endpoints +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0xf4b68263 usbnet_pause_rx +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0xfe14b5aa usbnet_skb_return +EXPORT_SYMBOL_GPL drivers/net/vxlan 0x6de0e684 vxlan_dev_create +EXPORT_SYMBOL_GPL drivers/net/vxlan 0x8fec98a7 vxlan_fdb_clear_offload +EXPORT_SYMBOL_GPL drivers/net/vxlan 0xbcb63de7 vxlan_fdb_replay +EXPORT_SYMBOL_GPL drivers/net/vxlan 0xf709d727 vxlan_fdb_find_uc +EXPORT_SYMBOL_GPL drivers/net/wimax/i2400m/i2400m 0x0d2a4c72 i2400m_pre_reset +EXPORT_SYMBOL_GPL drivers/net/wimax/i2400m/i2400m 0x393eabc1 i2400m_setup +EXPORT_SYMBOL_GPL drivers/net/wimax/i2400m/i2400m 0x4e144604 i2400m_tx +EXPORT_SYMBOL_GPL drivers/net/wimax/i2400m/i2400m 0x6e0a495e i2400m_dev_bootstrap +EXPORT_SYMBOL_GPL drivers/net/wimax/i2400m/i2400m 0x6e79a49e i2400m_cmd_enter_powersave +EXPORT_SYMBOL_GPL drivers/net/wimax/i2400m/i2400m 0x81da3c75 i2400m_tx_msg_get +EXPORT_SYMBOL_GPL drivers/net/wimax/i2400m/i2400m 0x89082066 i2400m_dev_reset_handle +EXPORT_SYMBOL_GPL drivers/net/wimax/i2400m/i2400m 0x8fcdb7d9 i2400m_error_recovery +EXPORT_SYMBOL_GPL drivers/net/wimax/i2400m/i2400m 0x93c95150 i2400m_reset +EXPORT_SYMBOL_GPL drivers/net/wimax/i2400m/i2400m 0x9dae1bd0 i2400m_tx_msg_sent +EXPORT_SYMBOL_GPL drivers/net/wimax/i2400m/i2400m 0xa3ebee98 i2400m_rx +EXPORT_SYMBOL_GPL drivers/net/wimax/i2400m/i2400m 0xb00b793c i2400m_bm_cmd_prepare +EXPORT_SYMBOL_GPL drivers/net/wimax/i2400m/i2400m 0xb5b8cce3 i2400m_netdev_setup +EXPORT_SYMBOL_GPL drivers/net/wimax/i2400m/i2400m 0xbf4edabd i2400m_init +EXPORT_SYMBOL_GPL drivers/net/wimax/i2400m/i2400m 0xd6668ec4 i2400m_post_reset +EXPORT_SYMBOL_GPL drivers/net/wimax/i2400m/i2400m 0xe24ff71b i2400m_release +EXPORT_SYMBOL_GPL drivers/net/wimax/i2400m/i2400m 0xf0d0de6d i2400m_is_boot_barker +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/ipw2x00/libipw 0xde037874 libipw_rx_any +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x69656ee2 il_dealloc_bcast_stations +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x755398e5 il_prep_station +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x941621db _il_grab_nic_access +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlegacy/iwlegacy 0xbc899afb il_mac_tx_last_beacon +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlegacy/iwlegacy 0xd5b0332d il_remove_station +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0x01982809 iwl_write_prph_no_grab +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0x02b4e452 iwl_finish_nic_init +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0x03aec158 iwl_get_cmd_string +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0x043f38ec iwl_get_shared_mem_conf +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0x068b318c iwl_set_bits_mask_prph +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0x0b855f79 iwl_fw_lookup_notif_ver +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0x0d0d3d6f __iwl_dbg +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0x11e4476a iwl_force_nmi +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0x12661501 __iwl_info +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0x1332e4de iwl_abort_notification_waits +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0x14061d7f iwl_fw_start_dbg_conf +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0x1711a616 iwl_free_fw_paging +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0x1b7267bb iwl_init_paging +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0x1e17dcd7 iwl_acpi_get_mcc +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0x22453c63 iwl_wait_notification +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0x255fd6d3 iwl_read_eeprom +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0x2710c362 iwl_dump_desc_assert +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0x2e652ca4 iwl_clear_bits_prph +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0x2f7ed838 iwl_parse_nvm_data +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0x3316e2dd iwl_write_direct32 +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0x34195768 iwl_parse_eeprom_data +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0x35033c81 iwl_phy_db_free +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0x3615956a __iwl_warn +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0x3674ec7f iwl_read_external_nvm +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0x3d9eaba9 iwl_fw_runtime_init +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0x54822825 iwl_sar_geo_support +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0x5988395c iwl_notification_wait_init +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0x5c52e109 iwl_opmode_deregister +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0x5d5c9b8f iwl_write_direct64 +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0x601ac688 iwl_acpi_get_dsm_u8 +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0x72461ab9 iwl_fw_dbg_collect +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0x72c95769 iwl_read32 +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0x74ab2f82 iwl_phy_db_init +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0x776221bf iwl_send_phy_db_data +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0x7ec5fbdb iwl_fw_dbg_stop_sync +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0x84fb8491 iwl_acpi_get_object +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0x88300909 iwl_read_prph_no_grab +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0x8bd6f811 iwl_fw_dbg_error_collect +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0x8c62c6cc iwl_dbg_tlv_del_timers +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0x900acc38 iwl_poll_bit +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0x9121c0f4 iwl_dbg_tlv_time_point +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0x947937ec iwl_write32 +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0x96ec39ff iwl_write_prph +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0x97787b42 iwl_fw_dbg_collect_trig +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0x9a4f8a44 iwl_read_prph +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0x9da76b13 iwl_get_nvm +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0x9deb3bdc iwl_acpi_get_pwr_limit +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0xa23422ac iwl_write8 +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0xa3cd2b7f __iwl_err +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0xa4f3a6df iwl_read_direct32 +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0xa9f05394 iwlwifi_mod_params +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0xae4eeaaa iwl_trans_send_cmd +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0xb96d0c4f iwl_fw_runtime_suspend +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0xbc2dd222 iwl_parse_nvm_mcc_info +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0xc09333a3 iwl_cmd_groups_verify_sorted +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0xc3cc26b1 iwl_sar_set_profile +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0xc4645d2b iwl_sar_get_wrds_table +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0xc6d12f84 __iwl_crit +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0xcb0378a7 iwl_fw_runtime_resume +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0xcca43374 iwl_sar_get_ewrd_table +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0xcd914e00 iwl_fw_lookup_cmd_ver +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0xcdb2a505 iwl_acpi_get_eckv +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0xce0c6460 iwl_phy_db_set_section +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0xd1630028 iwl_opmode_register +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0xd330f939 iwl_set_soc_latency +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0xd384302e iwl_fw_dbg_read_d3_debug_data +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0xd4f05938 iwl_sar_geo_init +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0xd8021966 iwl_fw_dbg_collect_desc +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0xd827525b iwl_sar_select_profile +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0xe0eb5838 iwl_init_notification_wait +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0xe75b7e77 iwl_notification_wait +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0xe8bd139a iwl_poll_direct_bit +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0xea1b26fc iwl_nvm_fixups +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0xee29db77 iwl_fw_error_print_fseq_regs +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0xf11a3a12 iwl_set_bits_prph +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0xf69d989a iwl_sar_get_wgds_table +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0xf6b911f2 iwl_validate_sar_geo_profile +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0xf88964e4 iwl_remove_notification +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0xf9f13653 iwl_acpi_get_tas +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0xfa334ebe iwl_write64 +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0xfac9da5f iwl_acpi_get_wifi_pkg +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0xfbe6cd4d iwl_write_prph64_no_grab +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0xfe2bccab iwl_fw_dbg_stop_restart_recording +EXPORT_SYMBOL_GPL drivers/net/wireless/intersil/p54/p54common 0x298311c9 p54_free_skb +EXPORT_SYMBOL_GPL drivers/net/wireless/intersil/p54/p54common 0x46bb8ef7 p54_register_common +EXPORT_SYMBOL_GPL drivers/net/wireless/intersil/p54/p54common 0x5bfa0888 p54_read_eeprom +EXPORT_SYMBOL_GPL drivers/net/wireless/intersil/p54/p54common 0x734345a0 p54_parse_firmware +EXPORT_SYMBOL_GPL drivers/net/wireless/intersil/p54/p54common 0xb20f5713 p54_unregister_common +EXPORT_SYMBOL_GPL drivers/net/wireless/intersil/p54/p54common 0xb2fe23f1 p54_rx +EXPORT_SYMBOL_GPL drivers/net/wireless/intersil/p54/p54common 0xe4459562 p54_init_common +EXPORT_SYMBOL_GPL drivers/net/wireless/intersil/p54/p54common 0xea19abd7 p54_parse_eeprom +EXPORT_SYMBOL_GPL drivers/net/wireless/intersil/p54/p54common 0xf1a7ec92 p54_free_common +EXPORT_SYMBOL_GPL drivers/net/wireless/marvell/libertas/libertas 0x0df196a6 lbs_start_card +EXPORT_SYMBOL_GPL drivers/net/wireless/marvell/libertas/libertas 0x0ead935b lbs_queue_event +EXPORT_SYMBOL_GPL drivers/net/wireless/marvell/libertas/libertas 0x1c121417 lbs_remove_card +EXPORT_SYMBOL_GPL drivers/net/wireless/marvell/libertas/libertas 0x30fa9a80 lbs_notify_command_response +EXPORT_SYMBOL_GPL drivers/net/wireless/marvell/libertas/libertas 0x313d7d7a lbs_process_rxed_packet +EXPORT_SYMBOL_GPL drivers/net/wireless/marvell/libertas/libertas 0x35efae17 lbs_get_firmware_async +EXPORT_SYMBOL_GPL drivers/net/wireless/marvell/libertas/libertas 0x4a03d46a lbs_stop_card +EXPORT_SYMBOL_GPL drivers/net/wireless/marvell/libertas/libertas 0x4cf3948c lbs_get_firmware +EXPORT_SYMBOL_GPL drivers/net/wireless/marvell/libertas/libertas 0x547009a7 __lbs_cmd +EXPORT_SYMBOL_GPL drivers/net/wireless/marvell/libertas/libertas 0x58a352eb lbs_add_card +EXPORT_SYMBOL_GPL drivers/net/wireless/marvell/libertas/libertas 0x5fdf38b8 lbs_disablemesh +EXPORT_SYMBOL_GPL drivers/net/wireless/marvell/libertas/libertas 0x6e421603 lbs_host_to_card_done +EXPORT_SYMBOL_GPL drivers/net/wireless/marvell/libertas/libertas 0x6fdd090b lbs_resume +EXPORT_SYMBOL_GPL drivers/net/wireless/marvell/libertas/libertas 0x74698982 lbs_host_sleep_cfg +EXPORT_SYMBOL_GPL drivers/net/wireless/marvell/libertas/libertas 0x897a7026 lbs_send_tx_feedback +EXPORT_SYMBOL_GPL drivers/net/wireless/marvell/libertas/libertas 0xd29dba19 lbs_suspend +EXPORT_SYMBOL_GPL drivers/net/wireless/marvell/libertas/libertas 0xe9b7bde6 lbs_cmd_copyback +EXPORT_SYMBOL_GPL drivers/net/wireless/marvell/libertas/libertas 0xf64277de lbs_debug +EXPORT_SYMBOL_GPL drivers/net/wireless/marvell/libertas_tf/libertas_tf 0x20be8ee0 lbtf_cmd_copyback +EXPORT_SYMBOL_GPL drivers/net/wireless/marvell/libertas_tf/libertas_tf 0x49a589cb lbtf_rx +EXPORT_SYMBOL_GPL drivers/net/wireless/marvell/libertas_tf/libertas_tf 0x4ab10cf1 lbtf_add_card +EXPORT_SYMBOL_GPL drivers/net/wireless/marvell/libertas_tf/libertas_tf 0x8b94afde lbtf_cmd_response_rx +EXPORT_SYMBOL_GPL drivers/net/wireless/marvell/libertas_tf/libertas_tf 0x9ac3f17e lbtf_remove_card +EXPORT_SYMBOL_GPL drivers/net/wireless/marvell/libertas_tf/libertas_tf 0xc576561f 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 0xd8114528 __lbtf_cmd +EXPORT_SYMBOL_GPL drivers/net/wireless/marvell/libertas_tf/libertas_tf 0xdf9e9142 lbtf_send_tx_feedback +EXPORT_SYMBOL_GPL drivers/net/wireless/marvell/mwifiex/mwifiex 0x00d58e8a mwifiex_del_virtual_intf +EXPORT_SYMBOL_GPL drivers/net/wireless/marvell/mwifiex/mwifiex 0x027fd500 mwifiex_add_virtual_intf +EXPORT_SYMBOL_GPL drivers/net/wireless/marvell/mwifiex/mwifiex 0x04aad559 _mwifiex_dbg +EXPORT_SYMBOL_GPL drivers/net/wireless/marvell/mwifiex/mwifiex 0x04b5c59c mwifiex_drv_info_dump +EXPORT_SYMBOL_GPL drivers/net/wireless/marvell/mwifiex/mwifiex 0x07b59e5a mwifiex_fw_dump_event +EXPORT_SYMBOL_GPL drivers/net/wireless/marvell/mwifiex/mwifiex 0x105a3540 mwifiex_enable_hs +EXPORT_SYMBOL_GPL drivers/net/wireless/marvell/mwifiex/mwifiex 0x467f3ed6 mwifiex_init_shutdown_fw +EXPORT_SYMBOL_GPL drivers/net/wireless/marvell/mwifiex/mwifiex 0x56ff7e20 mwifiex_main_process +EXPORT_SYMBOL_GPL drivers/net/wireless/marvell/mwifiex/mwifiex 0x59a69418 mwifiex_dnld_fw +EXPORT_SYMBOL_GPL drivers/net/wireless/marvell/mwifiex/mwifiex 0x5cf0badf mwifiex_remove_card +EXPORT_SYMBOL_GPL drivers/net/wireless/marvell/mwifiex/mwifiex 0x63562639 mwifiex_handle_rx_packet +EXPORT_SYMBOL_GPL drivers/net/wireless/marvell/mwifiex/mwifiex 0x83d9a755 mwifiex_cancel_hs +EXPORT_SYMBOL_GPL drivers/net/wireless/marvell/mwifiex/mwifiex 0x9f450d65 mwifiex_write_data_complete +EXPORT_SYMBOL_GPL drivers/net/wireless/marvell/mwifiex/mwifiex 0x9ff0650d mwifiex_deauthenticate_all +EXPORT_SYMBOL_GPL drivers/net/wireless/marvell/mwifiex/mwifiex 0xa0e917ed mwifiex_process_hs_config +EXPORT_SYMBOL_GPL drivers/net/wireless/marvell/mwifiex/mwifiex 0xb497cb81 mwifiex_reinit_sw +EXPORT_SYMBOL_GPL drivers/net/wireless/marvell/mwifiex/mwifiex 0xc38bbf5f mwifiex_prepare_fw_dump_info +EXPORT_SYMBOL_GPL drivers/net/wireless/marvell/mwifiex/mwifiex 0xcd9e4384 mwifiex_queue_main_work +EXPORT_SYMBOL_GPL drivers/net/wireless/marvell/mwifiex/mwifiex 0xd4dad9f3 mwifiex_alloc_dma_align_buf +EXPORT_SYMBOL_GPL drivers/net/wireless/marvell/mwifiex/mwifiex 0xd6313f80 mwifiex_shutdown_sw +EXPORT_SYMBOL_GPL drivers/net/wireless/marvell/mwifiex/mwifiex 0xddb98c6d mwifiex_process_sleep_confirm_resp +EXPORT_SYMBOL_GPL drivers/net/wireless/marvell/mwifiex/mwifiex 0xe47f31e0 mwifiex_add_card +EXPORT_SYMBOL_GPL drivers/net/wireless/marvell/mwifiex/mwifiex 0xef6195d3 mwifiex_disable_auto_ds +EXPORT_SYMBOL_GPL drivers/net/wireless/marvell/mwifiex/mwifiex 0xf1625686 mwifiex_upload_device_dump +EXPORT_SYMBOL_GPL drivers/net/wireless/marvell/mwifiex/mwifiex 0xfa52cb0a mwifiex_multi_chan_resync +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0x006ef96c mt76_sw_scan_complete +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0x03553880 mt76_tx_status_lock +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0x09db2d4c mt76_txq_init +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0x09e01c3b mt76_queues_read +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0x0e78a592 mt76_seq_puts_array +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0x142377f1 mt76_alloc_device +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0x14a437c7 mt76_eeprom_override +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0x151c6848 mt76_set_channel +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0x1681b811 mt76_dma_attach +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0x18df8547 mt76_csa_finish +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0x1973794b mt76_csa_check +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0x1d335263 mt76_sta_pre_rcu_remove +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0x1f071d54 mt76_register_phy +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0x271cdc0e mt76_rx_poll_complete +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0x2ab761f3 mt76_rx_aggr_start +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0x31943df4 mt76_rx_aggr_stop +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0x3b321697 mt76_mcu_get_response +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0x43435aed mt76_txq_remove +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0x45464ec1 mt76_set_irq_mask +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0x467df45d mt76_sw_scan +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0x4a736c29 mt76_sta_state +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0x53ddd777 mt76_set_stream_caps +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0x59a245ee mt76_insert_ccmp_hdr +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0x5fd4db04 mt76_txq_schedule +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0x6000473a mt76_txq_schedule_all +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0x62a3bd89 __mt76_poll_msec +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0x6ed38157 mt76_mcu_rx_event +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0x70b8ab44 mt76_tx_status_unlock +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0x71d7bc66 mt76_tx_status_check +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0x752fc319 mt76_get_txpower +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0x771b5067 mt76_update_survey +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0x7a08987d mt76_pci_disable_aspm +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0x7f082a71 mt76_has_tx_pending +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0x87b474ab mt76_tx_status_skb_get +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0x91bf47e6 __mt76_sta_remove +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0x93e8261e mt76_dma_cleanup +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0x95293bae mt76_wake_tx_queue +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0x972cee9c mt76_rx +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0x98ae67f6 mt76_stop_tx_queues +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0x9b645048 __mt76_poll +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0xa349eb2f mt76_free_device +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0xa4e00c37 mt76_tx_status_skb_done +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0xa75f6946 mt76_alloc_phy +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0xa9d8ba88 mt76_tx_complete_skb +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0xb06232d1 mt76_release_buffered_frames +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0xb1ba7034 mt76_tx_status_skb_add +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0xb2f7ddfb mt76_tx +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0xb4603386 mt76_register_debugfs +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0xb6fb9846 mt76_mcu_msg_alloc +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0xb970ba5b mt76_get_rate +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0xb999f413 mt76_get_survey +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0xba93a75e mt76_register_device +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0xbc9ebc8a mt76_set_tim +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0xbcab03c4 mt76_put_txwi +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0xc4f5bf42 mt76_get_min_avg_rssi +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0xc5fc58a3 __tracepoint_dev_irq +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0xc6634315 mt76_ac_to_hwq +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0xc818d79d mt76_mmio_init +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0xd005fe1f mt76_unregister_device +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0xd013e673 mt76_unregister_phy +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0xdbaf1db5 __tracepoint_mac_txdone +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0xde336689 mt76_eeprom_init +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0xe40b66ef mt76_wcid_alloc +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0xf44d3971 mt76_get_antenna +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76-usb 0x06157330 mt76u_skb_dma_info +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76-usb 0x1039d98f mt76u_alloc_queues +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76-usb 0x25469f0d mt76u_single_wr +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76-usb 0x2fd6a94e mt76u_alloc_mcu_queue +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76-usb 0x5f853f9d mt76u_deinit +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76-usb 0x6029e328 mt76u_queues_deinit +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76-usb 0x79664cb9 mt76u_stop_tx +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76-usb 0x8b2f2cae mt76u_vendor_request +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76-usb 0xc626c8f4 mt76u_resume_rx +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76-usb 0xcbca8564 mt76u_stop_rx +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76-usb 0xcfaa9f7d mt76u_init +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt7615/mt7615-common 0x057c4d49 mt7615_rates +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt7615/mt7615-common 0x0fd17ec2 mt7615_mcu_restart +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt7615/mt7615-common 0x105bd72f mt7615_init_device +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt7615/mt7615-common 0x11dfd1fe mt7615_mac_sta_poll +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt7615/mt7615-common 0x1393d983 mt7615_sta_ps +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt7615/mt7615-common 0x1c5e7842 __mt7663_load_firmware +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt7615/mt7615-common 0x1de83f23 mt7615_mac_set_rates +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt7615/mt7615-common 0x231fb4f8 mt7615_register_ext_phy +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt7615/mt7615-common 0x2347002b mt7615_update_channel +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt7615/mt7615-common 0x29337e7d mt7615_mcu_wait_response +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt7615/mt7615-common 0x2b356022 mt7615_mac_wtbl_update_cipher +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt7615/mt7615-common 0x399011af mt7615_mcu_set_hif_suspend +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt7615/mt7615-common 0x3eca493a mt7615_mcu_exit +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt7615/mt7615-common 0x3f2b1c11 mt7615_ops +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt7615/mt7615-common 0x5cbdd559 mt7615_mcu_set_eeprom +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt7615/mt7615-common 0x5e4f644b mt7615_init_txpower +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt7615/mt7615-common 0x67b55ea8 mt7615_eeprom_init +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt7615/mt7615-common 0x68fe959e mt7615_mcu_msg_send +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt7615/mt7615-common 0x69fe0a0e mt7615_mac_wtbl_update_pk +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt7615/mt7615-common 0x7c035c4c mt7615_mac_sta_remove +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt7615/mt7615-common 0x8483df08 mt7615_wait_for_mcu_init +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt7615/mt7615-common 0x8932a49b mt7615_mac_init +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt7615/mt7615-common 0xa0bc9054 mt7615_mac_wtbl_update_key +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt7615/mt7615-common 0xa19ac4fc mt7615_phy_init +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt7615/mt7615-common 0xac1f046a mt7615_init_debugfs +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt7615/mt7615-common 0xac4a0224 mt7615_mcu_del_wtbl_all +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt7615/mt7615-common 0xacdbce92 mt7615_check_offload_capability +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt7615/mt7615-common 0xaea2871b mt7615_firmware_own +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt7615/mt7615-common 0xb703bc17 mt7615_mcu_init +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt7615/mt7615-common 0xc50741d4 mt7615_txp_skb_unmap +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt7615/mt7615-common 0xc706d6ad mt7615_driver_own +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt7615/mt7615-common 0xd6518851 mt7615_dma_reset +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt7615/mt7615-common 0xd869d8ed mt7615_mac_write_txwi +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt7615/mt7615-common 0xdd23f3fd mt7615_unregister_ext_phy +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt7615/mt7615-common 0xe9621b61 mt7615_mac_sta_add +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt7615/mt7615-common 0xf349385e mt7615_mcu_fill_msg +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt7615/mt7615-common 0xfb2015a7 mt7615_queue_rx_skb +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x0/mt76x0-common 0x24e2ab43 mt76x0_init_hardware +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x0/mt76x0-common 0x35c60613 mt76x0_config +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x0/mt76x0-common 0x3ffc300c mt76x0_chip_onoff +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x0/mt76x0-common 0x5461502d mt76x0_register_device +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x0/mt76x0-common 0x95605af5 mt76x0_phy_calibrate +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x0/mt76x0-common 0xfc8c569b mt76x0_mac_stop +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0x036623aa mt76x02_enqueue_buffered_bc +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0x0462ce68 mt76x02_add_rate_power_offset +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0x04c624e7 mt76x02_init_device +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0x051f2b83 mt76x02_init_beacon_config +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0x0654e339 mt76x02_sw_scan_complete +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0x06b12151 mt76x02_set_key +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0x0d4023ec mt76x02_get_max_rate_power +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0x11cc64d1 mt76x02_add_interface +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0x12158309 mt76x02_dma_init +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0x13217570 mt76x02_set_rts_threshold +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0x200e3ff7 mt76x02_update_beacon_iter +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0x20f7f9ad mt76x02_get_rx_gain +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0x295ed920 mt76x02_tx_prepare_skb +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0x2e176dc7 mt76x02_init_debugfs +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0x303694f9 mt76x02_get_efuse_data +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0x30a906a6 mt76x02_mac_reset_counters +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0x33efcb76 mt76x02_ext_pa_enabled +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0x3559baf1 mt76x02_remove_hdr_pad +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0x35d2834d mt76x02_limit_rate_power +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0x3900d553 mt76x02_rx_poll_complete +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0x3acd0254 mt76x02_mac_write_txwi +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0x3b74f46d mt76x02_get_lna_gain +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0x3ebf8d30 mt76x02_sta_ps +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0x422da6dd mt76x02_reconfig_complete +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0x44a41b5f mt76x02_queue_rx_skb +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0x456ec3f6 mt76x02_sta_rate_tbl_update +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0x4928adcb mt76x02_phy_adjust_vga_gain +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0x5a22361c mt76x02_dma_cleanup +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0x5a2ee325 mt76x02_sta_remove +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0x5ac8df07 mt76x02_eeprom_copy +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0x5bd84fd5 mt76x02_rates +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0x5c090b76 mt76x02_mac_wcid_setup +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0x5e2694ed mt76x02_tx +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0x61a1e1ad mt76x02_update_channel +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0x661c47cf mt76x02_sta_add +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0x6d7f7ee7 mt76x02_configure_filter +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0x72aa39cf mt76x02_phy_set_band +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0x79d9effc mt76x02_phy_set_bw +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0x7d1e26de mt76x02_dma_disable +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0x801f8464 mt76x02_tx_status_data +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0x8084ed8f mt76x02_mac_set_beacon +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0x8520c32c mt76x02_tx_set_txpwr_auto +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0x884fbb69 mt76x02_config_mac_addr_list +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0x88bc0408 mt76x02_mac_cc_reset +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0x8dcde69b mt76x02_mcu_cleanup +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0x91d5b9ee mt76x02_irq_handler +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0x9460bc8a mt76x02_eeprom_parse_hw_cap +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0x9853e8cc mt76x02_mcu_calibrate +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0x9ca19af7 mt76x02_set_tx_ackto +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0xa35c5a88 mt76x02_phy_set_rxpath +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0xa7b0de0e mt76x02_mcu_function_select +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0xac993bc8 mt76x02_remove_interface +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0xb18d842c mt76x02_ampdu_action +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0xb1930b71 mt76x02_phy_set_txpower +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0xb1952f26 mt76x02_set_ethtool_fwver +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0xb40fa893 mt76x02_mac_setaddr +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0xb4b54511 mt76x02_tx_complete_skb +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0xb9ec2234 mt76x02_set_coverage_class +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0xba685d98 mt76x02_bss_info_changed +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0xbc95def2 mt76x02_mcu_msg_send +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0xc14b94c1 mt76x02_edcca_init +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0xc514d0c5 mt76x02_mcu_set_radio_state +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0xc737f42d mt76x02_mac_shared_key_setup +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0xcbbd15d1 mt76x02_resync_beacon_timer +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0xce90a7af mt76x02_conf_tx +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0xe2a34669 mt76x02_init_agc_gain +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0xecccb253 mt76x02_phy_dfs_adjust_agc +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0xf68ce324 mt76x02_mac_start +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0xfc1488ae mt76x02_dfs_init_params +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0xfda9a70c mt76x02_phy_set_txdac +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0xfe794e72 mt76x02e_init_beacon_config +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-usb 0x2319addb mt76x02u_mcu_fw_send_data +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-usb 0x2cd8e1c4 mt76x02u_tx_complete_skb +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-usb 0x3622e766 mt76x02u_tx_prepare_skb +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-usb 0x47b722eb mt76x02u_init_mcu +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-usb 0x9a24ccf8 mt76x02u_init_beacon_config +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-usb 0x9e6503ac mt76x02u_mcu_fw_reset +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-usb 0xa711601e mt76x02u_exit_beacon_config +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-usb 0xa8f78447 mt76x02u_mac_start +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x2/mt76x2-common 0x1afad5de mt76x2_mcu_set_channel +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x2/mt76x2-common 0x1e016e3e mt76x2_init_txpower +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x2/mt76x2-common 0x28248b7d mt76x2_mcu_load_cr +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x2/mt76x2-common 0x435d8b66 mt76x2_phy_set_txpower_regs +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x2/mt76x2-common 0x43877719 mt76x2_get_temp_comp +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x2/mt76x2-common 0x4cd1194c mt76x2_configure_tx_delay +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x2/mt76x2-common 0x54868a0c mt76x2_get_power_info +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x2/mt76x2-common 0x6c2a2e09 mt76x2_eeprom_init +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x2/mt76x2-common 0x7520edbe mt76x2_get_rate_power +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x2/mt76x2-common 0x8a313e3b mt76x2_phy_tssi_compensate +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x2/mt76x2-common 0x99945f68 mt76x2_mcu_tssi_comp +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x2/mt76x2-common 0xbf8978f2 mt76x2_phy_set_txpower +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x2/mt76x2-common 0xc28189b6 mt76x2_mcu_init_gain +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x2/mt76x2-common 0xc4981234 mt76x2_mac_stop +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x2/mt76x2-common 0xcd2b46ad mt76x2_phy_update_channel_gain +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x2/mt76x2-common 0xda65ac8a mt76x2_reset_wlan +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x2/mt76x2-common 0xe985c871 mt76x2_read_rx_gain +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x2/mt76x2-common 0xf2dbc199 mt76_write_mac_initvals +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x2/mt76x2-common 0xf4a91673 mt76x2_apply_gain_adj +EXPORT_SYMBOL_GPL drivers/net/wireless/quantenna/qtnfmac/qtnfmac 0x09e442b3 qtnf_wake_all_queues +EXPORT_SYMBOL_GPL drivers/net/wireless/quantenna/qtnfmac/qtnfmac 0x0c8e936e qtnf_classify_skb +EXPORT_SYMBOL_GPL drivers/net/wireless/quantenna/qtnfmac/qtnfmac 0x2f6d7233 qtnf_update_rx_stats +EXPORT_SYMBOL_GPL drivers/net/wireless/quantenna/qtnfmac/qtnfmac 0x31fab83c qtnf_chipid_to_string +EXPORT_SYMBOL_GPL drivers/net/wireless/quantenna/qtnfmac/qtnfmac 0x585e9ef7 qtnf_get_debugfs_dir +EXPORT_SYMBOL_GPL drivers/net/wireless/quantenna/qtnfmac/qtnfmac 0x67f64aff qtnf_trans_handle_rx_ctl_packet +EXPORT_SYMBOL_GPL drivers/net/wireless/quantenna/qtnfmac/qtnfmac 0xa242dae0 qtnf_core_attach +EXPORT_SYMBOL_GPL drivers/net/wireless/quantenna/qtnfmac/qtnfmac 0xcfe3c45c qtnf_core_detach +EXPORT_SYMBOL_GPL drivers/net/wireless/quantenna/qtnfmac/qtnfmac 0xeea06620 qtnf_update_tx_stats +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2800lib 0x081b5b3d rt2800_rfkill_poll +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2800lib 0x0e1486d7 rt2800_config_shared_key +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2800lib 0x11b4bcef rt2800_efuse_detect +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2800lib 0x137c638a rt2800_config_filter +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2800lib 0x13e5815b rt2800_write_tx_data +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2800lib 0x1597f03b rt2800_probe_hw +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2800lib 0x1be710f1 rt2800_enable_radio +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2800lib 0x2eb85161 rt2800_write_beacon +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2800lib 0x3444a7f4 rt2800_get_txwi_rxwi_size +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2800lib 0x35673a88 rt2800_process_rxwi +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2800lib 0x418dbfb3 rt2800_reset_tuner +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2800lib 0x44aff3ad rt2800_wait_csr_ready +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2800lib 0x4d4b2ce2 rt2800_txstatus_timeout +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2800lib 0x5068fd07 rt2800_ampdu_action +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2800lib 0x523faebc rt2800_link_stats +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2800lib 0x575c1882 rt2800_txdone_entry +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2800lib 0x5e8f3d94 rt2800_gain_calibration +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2800lib 0x706c2b65 rt2800_sta_remove +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2800lib 0x7a340749 rt2800_disable_wpdma +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2800lib 0x7d566fcd rt2800_config_erp +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2800lib 0x81fc3a89 rt2800_load_firmware +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2800lib 0x8227abac rt2800_config_pairwise_key +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2800lib 0x8c477bba rt2800_wait_wpdma_ready +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2800lib 0x98bf9eb7 rt2800_clear_beacon +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2800lib 0x9ba9a4fb rt2800_txdone_nostatus +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2800lib 0xa4bb30d9 rt2800_get_survey +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2800lib 0xa6069501 rt2800_disable_radio +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2800lib 0xaba63e16 rt2800_vco_calibration +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2800lib 0xb51d1aee rt2800_pre_reset_hw +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2800lib 0xb835ab63 rt2800_watchdog +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2800lib 0xb89e9fbd rt2800_get_key_seq +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2800lib 0xbd29b833 rt2800_read_eeprom_efuse +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2800lib 0xbd86a75a rt2800_link_tuner +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2800lib 0xc044f1bc rt2800_txdone +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2800lib 0xc23b663d rt2800_check_firmware +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2800lib 0xc5fac4de rt2800_conf_tx +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2800lib 0xd2a7ea68 rt2800_txstatus_pending +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2800lib 0xd4814ca7 rt2800_config +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2800lib 0xd5026511 rt2800_config_intf +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2800lib 0xec650025 rt2800_get_tsf +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2800lib 0xf0670773 rt2800_sta_add +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2800lib 0xf652376c rt2800_set_rts_threshold +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2800lib 0xfbfa9989 rt2800_mcu_request +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2800lib 0xfe61f9c1 rt2800_config_ant +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2800mmio 0x0fad1430 rt2800mmio_pretbtt_tasklet +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2800mmio 0x0fdd91f5 rt2800mmio_get_entry_state +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2800mmio 0x126524de rt2800mmio_toggle_irq +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2800mmio 0x1620d480 rt2800mmio_get_dma_done +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2800mmio 0x2505789d rt2800mmio_tbtt_tasklet +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2800mmio 0x2e57a88f rt2800mmio_probe_hw +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2800mmio 0x2f5e0e14 rt2800mmio_init_queues +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2800mmio 0x318aa741 rt2800mmio_kick_queue +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2800mmio 0x5aa68a38 rt2800mmio_init_registers +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2800mmio 0x5fa4db64 rt2800mmio_interrupt +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2800mmio 0x6267867e rt2800mmio_flush_queue +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2800mmio 0x8603a2c2 rt2800mmio_start_queue +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2800mmio 0x91a9885e rt2800mmio_enable_radio +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2800mmio 0x92c0bcd1 rt2800mmio_rxdone_tasklet +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2800mmio 0x95c78290 rt2800mmio_fill_rxdone +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2800mmio 0xbd9c93b4 rt2800mmio_write_tx_desc +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2800mmio 0xc6a1455e rt2800mmio_autowake_tasklet +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2800mmio 0xc7feb74a rt2800mmio_get_txwi +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2800mmio 0xd86af674 rt2800mmio_stop_queue +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2800mmio 0xdc3675d4 rt2800mmio_clear_entry +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2800mmio 0xe28f94c7 rt2800mmio_txstatus_tasklet +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2800mmio 0xe67654ed rt2800mmio_queue_init +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00lib 0x09668a10 rt2x00mac_bss_info_changed +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00lib 0x15efcd3a rt2x00lib_dmadone +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00lib 0x1934935d rt2x00mac_set_antenna +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00lib 0x1983942f rt2x00lib_suspend +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00lib 0x201abc3c rt2x00queue_stop_queues +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00lib 0x2c7b5c45 rt2x00lib_dmastart +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00lib 0x31433f2a rt2x00mac_reconfig_complete +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00lib 0x31f9fb3c rt2x00lib_resume +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00lib 0x3202001d rt2x00mac_sw_scan_start +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00lib 0x36b7cf83 rt2x00lib_txdone_nomatch +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00lib 0x3da35de6 rt2x00lib_get_bssidx +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00lib 0x3e97345e rt2x00mac_stop +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00lib 0x43125339 rt2x00mac_tx +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00lib 0x45652673 rt2x00lib_rxdone +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00lib 0x46658429 rt2x00queue_stop_queue +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00lib 0x47e707a6 rt2x00mac_add_interface +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00lib 0x48d38acf rt2x00queue_flush_queue +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00lib 0x49f0ca44 rt2x00mac_get_antenna +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00lib 0x4c39e057 rt2x00mac_tx_frames_pending +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00lib 0x4feb30b2 rt2x00mac_set_key +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00lib 0x5509e1f4 rt2x00mac_start +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00lib 0x6213bb26 rt2x00mac_configure_filter +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00lib 0x63a13574 rt2x00mac_rfkill_poll +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00lib 0x66aa8b5f rt2x00mac_remove_interface +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00lib 0x685c91cd rt2x00queue_pause_queue +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00lib 0x754778c5 rt2x00lib_pretbtt +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00lib 0x7761ea95 rt2x00lib_set_mac_address +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00lib 0x7972f118 rt2x00mac_get_ringparam +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00lib 0x83245e86 rt2x00queue_unpause_queue +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00lib 0x85042725 rt2x00lib_remove_dev +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00lib 0x859c0b7b rt2x00lib_beacondone +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00lib 0x90242ece rt2x00queue_flush_queues +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00lib 0x903da821 rt2x00lib_txdone +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00lib 0x934780f9 rt2x00queue_start_queue +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00lib 0x94984b4a rt2x00queue_for_each_entry +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00lib 0x9b6e905e rt2x00mac_get_stats +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00lib 0x9c59abf7 rt2x00lib_txdone_noinfo +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00lib 0xa61c4cec rt2x00queue_start_queues +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00lib 0xafc3bd7a rt2x00lib_probe_dev +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00lib 0xb7407a53 rt2x00mac_set_tim +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00lib 0xb9668d2f rt2x00mac_conf_tx +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00lib 0xc16c4ec3 rt2x00queue_map_txskb +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00lib 0xcc6753ae rt2x00mac_sw_scan_complete +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00lib 0xd33b8dc3 rt2x00mac_config +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00lib 0xe307e55a rt2x00queue_unmap_skb +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00lib 0xe349284c rt2x00mac_flush +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00lib 0xffd427aa rt2x00queue_get_entry +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00mmio 0x003a29a3 rt2x00mmio_regbusy_read +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00mmio 0x1899d701 rt2x00mmio_rxdone +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00mmio 0x71932d09 rt2x00mmio_initialize +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00mmio 0xe47afef3 rt2x00mmio_uninitialize +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00mmio 0xe67b2ece rt2x00mmio_flush_queue +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00pci 0x230e3501 rt2x00pci_remove +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00pci 0x75a8fae7 rt2x00pci_probe +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00pci 0xc706c700 rt2x00pci_suspend +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00pci 0xedab293f rt2x00pci_resume +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00usb 0x04276460 rt2x00usb_disable_radio +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00usb 0x218e2ffd rt2x00usb_resume +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00usb 0x284e4b42 rt2x00usb_suspend +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00usb 0x395944b8 rt2x00usb_disconnect +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00usb 0x58dec16e rt2x00usb_initialize +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00usb 0x84c3c6ed rt2x00usb_vendor_request_buff +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00usb 0x8dbc5164 rt2x00usb_clear_entry +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00usb 0x92bcc792 rt2x00usb_register_read_async +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00usb 0xa2397f64 rt2x00usb_watchdog +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00usb 0xa3760e17 rt2x00usb_flush_queue +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00usb 0xb749bd62 rt2x00usb_uninitialize +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00usb 0xc37b2d27 rt2x00usb_vendor_req_buff_lock +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00usb 0xcb57bfb7 rt2x00usb_kick_queue +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00usb 0xd7221aec rt2x00usb_probe +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00usb 0xf705b956 rt2x00usb_vendor_request +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00usb 0xfc2148b0 rt2x00usb_regbusy_read +EXPORT_SYMBOL_GPL drivers/net/wireless/realtek/rtlwifi/rtl8192c/rtl8192c-common 0x2041aaa5 dm_restorepowerindex +EXPORT_SYMBOL_GPL drivers/net/wireless/realtek/rtlwifi/rtl8192c/rtl8192c-common 0x71a4423f dm_writepowerindex +EXPORT_SYMBOL_GPL drivers/net/wireless/realtek/rtlwifi/rtl8192c/rtl8192c-common 0x7da07859 rtl92c_set_p2p_ps_offload_cmd +EXPORT_SYMBOL_GPL drivers/net/wireless/realtek/rtlwifi/rtl8192c/rtl8192c-common 0xa81f9d82 dm_savepowerindex +EXPORT_SYMBOL_GPL drivers/net/wireless/realtek/rtlwifi/rtl8723com/rtl8723-common 0x006fc02f rtl8723_fw_free_to_go +EXPORT_SYMBOL_GPL drivers/net/wireless/realtek/rtlwifi/rtl8723com/rtl8723-common 0x131d323a rtl8723_dm_init_dynamic_bb_powersaving +EXPORT_SYMBOL_GPL drivers/net/wireless/realtek/rtlwifi/rtl8723com/rtl8723-common 0x23eb04a6 rtl8723_phy_mac_setting_calibration +EXPORT_SYMBOL_GPL drivers/net/wireless/realtek/rtlwifi/rtl8723com/rtl8723-common 0x386e5b18 rtl8723_phy_pi_mode_switch +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 0x3fc084f4 rtl8723_download_fw +EXPORT_SYMBOL_GPL drivers/net/wireless/realtek/rtlwifi/rtl8723com/rtl8723-common 0x45271f0b rtl8723_phy_rf_serial_read +EXPORT_SYMBOL_GPL drivers/net/wireless/realtek/rtlwifi/rtl8723com/rtl8723-common 0x4e1f6466 rtl8723_phy_init_bb_rf_reg_def +EXPORT_SYMBOL_GPL drivers/net/wireless/realtek/rtlwifi/rtl8723com/rtl8723-common 0x4f07ed62 rtl8723_write_fw +EXPORT_SYMBOL_GPL drivers/net/wireless/realtek/rtlwifi/rtl8723com/rtl8723-common 0x5149e4d7 rtl8723_phy_query_bb_reg +EXPORT_SYMBOL_GPL drivers/net/wireless/realtek/rtlwifi/rtl8723com/rtl8723-common 0x5357b016 rtl8723_phy_path_adda_on +EXPORT_SYMBOL_GPL drivers/net/wireless/realtek/rtlwifi/rtl8723com/rtl8723-common 0x5c24fb11 rtl8723_enable_fw_download +EXPORT_SYMBOL_GPL drivers/net/wireless/realtek/rtlwifi/rtl8723com/rtl8723-common 0x729de9d4 rtl8723_phy_txpwr_idx_to_dbm +EXPORT_SYMBOL_GPL drivers/net/wireless/realtek/rtlwifi/rtl8723com/rtl8723-common 0x79136a99 rtl8723_phy_set_bb_reg +EXPORT_SYMBOL_GPL drivers/net/wireless/realtek/rtlwifi/rtl8723com/rtl8723-common 0x7dcc2020 rtl8723_dm_init_edca_turbo +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 0x8d26e0cc rtl8723_save_adda_registers +EXPORT_SYMBOL_GPL drivers/net/wireless/realtek/rtlwifi/rtl8723com/rtl8723-common 0x9546cc98 rtl8723_phy_path_a_fill_iqk_matrix +EXPORT_SYMBOL_GPL drivers/net/wireless/realtek/rtlwifi/rtl8723com/rtl8723-common 0x9d3ec142 rtl8723_phy_rf_serial_write +EXPORT_SYMBOL_GPL drivers/net/wireless/realtek/rtlwifi/rtl8723com/rtl8723-common 0xa0c8422d rtl8723_phy_save_mac_registers +EXPORT_SYMBOL_GPL drivers/net/wireless/realtek/rtlwifi/rtl8723com/rtl8723-common 0xa17f8179 rtl8723_phy_path_a_standby +EXPORT_SYMBOL_GPL drivers/net/wireless/realtek/rtlwifi/rtl8723com/rtl8723-common 0xc129ddae rtl8723be_firmware_selfreset +EXPORT_SYMBOL_GPL drivers/net/wireless/realtek/rtlwifi/rtl8723com/rtl8723-common 0xc80035ed rtl8723_phy_reload_mac_registers +EXPORT_SYMBOL_GPL drivers/net/wireless/realtek/rtlwifi/rtl8723com/rtl8723-common 0xce8cff81 rtl8723_cmd_send_packet +EXPORT_SYMBOL_GPL drivers/net/wireless/realtek/rtlwifi/rtl8723com/rtl8723-common 0xd5024c3f rtl8723_phy_reload_adda_registers +EXPORT_SYMBOL_GPL drivers/net/wireless/realtek/rtlwifi/rtl8723com/rtl8723-common 0xd8b1d386 rtl8723ae_firmware_selfreset +EXPORT_SYMBOL_GPL drivers/net/wireless/realtek/rtlwifi/rtl8723com/rtl8723-common 0xf4a41023 rtl8723_dm_init_dynamic_txpower +EXPORT_SYMBOL_GPL drivers/net/wireless/realtek/rtlwifi/rtlwifi 0x037c6c7a rtl_lps_leave +EXPORT_SYMBOL_GPL drivers/net/wireless/realtek/rtlwifi/rtlwifi 0x0585d0b3 rtl_tx_report_handler +EXPORT_SYMBOL_GPL drivers/net/wireless/realtek/rtlwifi/rtlwifi 0x13c8449e rtl_lps_enter +EXPORT_SYMBOL_GPL drivers/net/wireless/realtek/rtlwifi/rtlwifi 0x1bdfd20e rtl_beacon_statistic +EXPORT_SYMBOL_GPL drivers/net/wireless/realtek/rtlwifi/rtlwifi 0x1c5915d9 rtl_get_hwinfo +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 0x340c60f5 rtl_p2p_info +EXPORT_SYMBOL_GPL drivers/net/wireless/realtek/rtlwifi/rtlwifi 0x43d2b3c8 rtl_deinit_core +EXPORT_SYMBOL_GPL drivers/net/wireless/realtek/rtlwifi/rtlwifi 0x4e94cd48 rtl_global_var +EXPORT_SYMBOL_GPL drivers/net/wireless/realtek/rtlwifi/rtlwifi 0x56db3be5 rtl_fw_page_write +EXPORT_SYMBOL_GPL drivers/net/wireless/realtek/rtlwifi/rtlwifi 0x61a9de99 rtl_ops +EXPORT_SYMBOL_GPL drivers/net/wireless/realtek/rtlwifi/rtlwifi 0x621f56ca rtl_init_rx_config +EXPORT_SYMBOL_GPL drivers/net/wireless/realtek/rtlwifi/rtlwifi 0x74db5830 rtl_action_proc +EXPORT_SYMBOL_GPL drivers/net/wireless/realtek/rtlwifi/rtlwifi 0x7888beab rtl_get_hal_edca_param +EXPORT_SYMBOL_GPL drivers/net/wireless/realtek/rtlwifi/rtlwifi 0x78e7c99b rtl_efuse_ops_init +EXPORT_SYMBOL_GPL drivers/net/wireless/realtek/rtlwifi/rtlwifi 0x7a38babb rtl_is_special_data +EXPORT_SYMBOL_GPL drivers/net/wireless/realtek/rtlwifi/rtlwifi 0x86f6e4f4 read_efuse_byte +EXPORT_SYMBOL_GPL drivers/net/wireless/realtek/rtlwifi/rtlwifi 0x97e05663 rtl_tid_to_ac +EXPORT_SYMBOL_GPL drivers/net/wireless/realtek/rtlwifi/rtlwifi 0x98e1da40 rtl_swlps_beacon +EXPORT_SYMBOL_GPL drivers/net/wireless/realtek/rtlwifi/rtlwifi 0xa51f3ec4 rtl_tx_mgmt_proc +EXPORT_SYMBOL_GPL drivers/net/wireless/realtek/rtlwifi/rtlwifi 0xa7b5753a rtl_ips_nic_on +EXPORT_SYMBOL_GPL drivers/net/wireless/realtek/rtlwifi/rtlwifi 0xb9b8c5eb rtl_init_core +EXPORT_SYMBOL_GPL drivers/net/wireless/realtek/rtlwifi/rtlwifi 0xc525f126 rtl_recognize_peer +EXPORT_SYMBOL_GPL drivers/net/wireless/realtek/rtlwifi/rtlwifi 0xd94329a9 rtl_set_tx_report +EXPORT_SYMBOL_GPL drivers/net/wireless/realtek/rtlwifi/rtlwifi 0xe8c13877 rtl_deinit_deferred_work +EXPORT_SYMBOL_GPL drivers/net/wireless/realtek/rtlwifi/rtlwifi 0xeb6a4bc0 rtl_tx_ackqueue +EXPORT_SYMBOL_GPL drivers/net/wireless/realtek/rtlwifi/rtlwifi 0xf8279904 rtl_fw_block_write +EXPORT_SYMBOL_GPL drivers/net/wireless/realtek/rtlwifi/rtlwifi 0xfb0f6f8c rtl_deinit_rfkill +EXPORT_SYMBOL_GPL drivers/net/wireless/rsi/rsi_91x 0x0f5c3ce9 rsi_zone_enabled +EXPORT_SYMBOL_GPL drivers/net/wireless/rsi/rsi_91x 0x749b8a69 rsi_91x_deinit +EXPORT_SYMBOL_GPL drivers/net/wireless/rsi/rsi_91x 0x8bd40eec rsi_hal_device_init +EXPORT_SYMBOL_GPL drivers/net/wireless/rsi/rsi_91x 0xa3583e50 rsi_read_pkt +EXPORT_SYMBOL_GPL drivers/net/wireless/rsi/rsi_91x 0xb104d5a8 rsi_91x_init +EXPORT_SYMBOL_GPL drivers/net/wireless/rsi/rsi_91x 0xcd173710 rsi_dbg +EXPORT_SYMBOL_GPL drivers/net/wireless/rsi/rsi_91x 0xe59156fe rsi_mac80211_detach +EXPORT_SYMBOL_GPL drivers/net/wireless/st/cw1200/cw1200_core 0x42bc6a73 cw1200_core_release +EXPORT_SYMBOL_GPL drivers/net/wireless/st/cw1200/cw1200_core 0x76275b83 cw1200_can_suspend +EXPORT_SYMBOL_GPL drivers/net/wireless/st/cw1200/cw1200_core 0x935a95db cw1200_core_probe +EXPORT_SYMBOL_GPL drivers/net/wireless/st/cw1200/cw1200_core 0xbc6bd1df cw1200_irq_handler +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wl1251/wl1251 0x3573138c wl1251_alloc_hw +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wl1251/wl1251 0x3ef4a821 wl1251_free_hw +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wl1251/wl1251 0xa79996e0 wl1251_init_ieee80211 +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x03a37bd1 wlcore_synchronize_interrupts +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x05792ccc wlcore_event_fw_logger +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x06d3b27e wl12xx_debug_level +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x09904417 wlcore_disable_interrupts_nosync +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x0b045b46 wlcore_set_key +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x12283df8 wl1271_cmd_data_path +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x1af3f4ac wlcore_alloc_hw +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x1dcfd7ab wlcore_set_scan_chan_params +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x20351125 wlcore_get_native_channel_type +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x2ac03386 wl1271_acx_set_ht_capabilities +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x2ae1f870 wl1271_cmd_configure +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x2f42734c wlcore_remove +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x3e417ff7 wlcore_disable_interrupts +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x43c7a19f wlcore_boot_upload_firmware +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x49ad9106 wl1271_acx_init_mem_config +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x52a7b684 wlcore_translate_addr +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x5d224ffc wlcore_event_sched_scan_completed +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x651aea0e wl1271_debugfs_update_stats +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x660dca4f wlcore_event_inactive_sta +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x7edc6cee wlcore_boot_upload_nvs +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x85498cd1 wl1271_format_buffer +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x8cc41d7d wl1271_tx_flush +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x8d8a095d wlcore_event_rssi_trigger +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x90280925 wlcore_set_partition +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x91945883 wlcore_boot_run_firmware +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0xa17b71bd wl1271_acx_pm_config +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0xa2848345 wlcore_event_ba_rx_constraint +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0xa35fee5d wlcore_event_beacon_loss +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0xaeb77bbf wlcore_scan_sched_scan_ssid_list +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0xafedbbca wl12xx_acx_mem_cfg +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0xb0381eb9 wlcore_event_max_tx_failure +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0xb8196b6d wlcore_cmd_generic_cfg +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0xba515453 wl1271_acx_sleep_auth +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0xbb20a0f2 wlcore_cmd_wait_for_event_or_timeout +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0xbc3b9b72 wl1271_cmd_test +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0xc4a48dab wl12xx_cmd_build_probe_req +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0xc6f0e842 wlcore_event_roc_complete +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0xd0df47a4 wl1271_cmd_send +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0xd2744eca wlcore_probe +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0xd89738cd wlcore_free_hw +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0xddd23bd6 wlcore_event_dummy_packet +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0xe63ac6ef wlcore_enable_interrupts +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0xf3ca8810 wlcore_scan_sched_scan_results +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0xf73a1119 wlcore_event_channel_switch +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0xfc74e4ed wl1271_tx_min_rate_get +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0xff69a0ca wlcore_event_soft_gemini_sense +EXPORT_SYMBOL_GPL drivers/nfc/nfcmrvl/nfcmrvl 0x40ff8cbd nfcmrvl_nci_recv_frame +EXPORT_SYMBOL_GPL drivers/nfc/nfcmrvl/nfcmrvl 0x486fb8ef nfcmrvl_parse_dt +EXPORT_SYMBOL_GPL drivers/nfc/nfcmrvl/nfcmrvl 0x88dd6c08 nfcmrvl_nci_register_dev +EXPORT_SYMBOL_GPL drivers/nfc/nfcmrvl/nfcmrvl 0xf6c705be nfcmrvl_nci_unregister_dev +EXPORT_SYMBOL_GPL drivers/nfc/pn533/pn533 0x2adf1670 pn533_rx_frame_is_cmd_response +EXPORT_SYMBOL_GPL drivers/nfc/pn533/pn533 0x30c21cbd pn53x_register_nfc +EXPORT_SYMBOL_GPL drivers/nfc/pn533/pn533 0x53f15570 pn532_i2c_nfc_alloc +EXPORT_SYMBOL_GPL drivers/nfc/pn533/pn533 0x612c905f pn53x_common_init +EXPORT_SYMBOL_GPL drivers/nfc/pn533/pn533 0x908bf8bc pn53x_common_clean +EXPORT_SYMBOL_GPL drivers/nfc/pn533/pn533 0xb1690de8 pn533_finalize_setup +EXPORT_SYMBOL_GPL drivers/nfc/pn533/pn533 0xc86ac6af pn53x_unregister_nfc +EXPORT_SYMBOL_GPL drivers/nfc/pn533/pn533 0xdecfd339 pn533_rx_frame_is_ack +EXPORT_SYMBOL_GPL drivers/nfc/st-nci/st-nci 0x19a085b1 st_nci_disable_se +EXPORT_SYMBOL_GPL drivers/nfc/st-nci/st-nci 0x1a93e7e5 st_nci_remove +EXPORT_SYMBOL_GPL drivers/nfc/st-nci/st-nci 0x1ed89794 st_nci_hci_load_session +EXPORT_SYMBOL_GPL drivers/nfc/st-nci/st-nci 0x45539f2d st_nci_discover_se +EXPORT_SYMBOL_GPL drivers/nfc/st-nci/st-nci 0x52922b71 st_nci_hci_cmd_received +EXPORT_SYMBOL_GPL drivers/nfc/st-nci/st-nci 0x89ab7a86 st_nci_probe +EXPORT_SYMBOL_GPL drivers/nfc/st-nci/st-nci 0x953defd9 st_nci_enable_se +EXPORT_SYMBOL_GPL drivers/nfc/st-nci/st-nci 0xc00f020f st_nci_hci_event_received +EXPORT_SYMBOL_GPL drivers/nfc/st95hf/st95hf 0x26e177d3 st95hf_spi_recv_echo_res +EXPORT_SYMBOL_GPL drivers/nfc/st95hf/st95hf 0x9034d39b st95hf_spi_recv_response +EXPORT_SYMBOL_GPL drivers/nfc/st95hf/st95hf 0xf8ded5ef st95hf_spi_send +EXPORT_SYMBOL_GPL drivers/ntb/ntb_transport 0x0862001f ntb_transport_tx_free_entry +EXPORT_SYMBOL_GPL drivers/ntb/ntb_transport 0x1cb65d7c ntb_transport_register_client +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 0x52f93ce1 ntb_transport_unregister_client +EXPORT_SYMBOL_GPL drivers/ntb/ntb_transport 0x7526532f ntb_transport_create_queue +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 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/nvdimm/nd_virtio 0x0c58bfb7 virtio_pmem_host_ack +EXPORT_SYMBOL_GPL drivers/nvdimm/nd_virtio 0x43a22b4b async_pmem_flush +EXPORT_SYMBOL_GPL drivers/nvme/host/nvme-core 0x05b2f9cc nvme_complete_rq +EXPORT_SYMBOL_GPL drivers/nvme/host/nvme-core 0x1379d967 nvme_wait_freeze +EXPORT_SYMBOL_GPL drivers/nvme/host/nvme-core 0x14ec02ec nvme_init_ctrl +EXPORT_SYMBOL_GPL drivers/nvme/host/nvme-core 0x1f09f15f __nvme_submit_sync_cmd +EXPORT_SYMBOL_GPL drivers/nvme/host/nvme-core 0x381494f2 nvme_cleanup_cmd +EXPORT_SYMBOL_GPL drivers/nvme/host/nvme-core 0x38ed1075 nvme_uninit_ctrl +EXPORT_SYMBOL_GPL drivers/nvme/host/nvme-core 0x39fdbc5f nvme_kill_queues +EXPORT_SYMBOL_GPL drivers/nvme/host/nvme-core 0x48bb8f1c nvme_cancel_request +EXPORT_SYMBOL_GPL drivers/nvme/host/nvme-core 0x49224181 nvme_reset_wq +EXPORT_SYMBOL_GPL drivers/nvme/host/nvme-core 0x4e0f6953 nvme_try_sched_reset +EXPORT_SYMBOL_GPL drivers/nvme/host/nvme-core 0x54085d0d __tracepoint_nvme_sq +EXPORT_SYMBOL_GPL drivers/nvme/host/nvme-core 0x64b62862 nvme_wq +EXPORT_SYMBOL_GPL drivers/nvme/host/nvme-core 0x65224a93 nvme_enable_ctrl +EXPORT_SYMBOL_GPL drivers/nvme/host/nvme-core 0x6c455064 nvme_remove_namespaces +EXPORT_SYMBOL_GPL drivers/nvme/host/nvme-core 0x713af3bc nvme_submit_sync_cmd +EXPORT_SYMBOL_GPL drivers/nvme/host/nvme-core 0x73c06eb8 nvme_disable_ctrl +EXPORT_SYMBOL_GPL drivers/nvme/host/nvme-core 0x7a1a2cd5 nvme_sync_io_queues +EXPORT_SYMBOL_GPL drivers/nvme/host/nvme-core 0x813cf212 nvme_io_timeout +EXPORT_SYMBOL_GPL drivers/nvme/host/nvme-core 0x8a9c70ed nvme_sec_submit +EXPORT_SYMBOL_GPL drivers/nvme/host/nvme-core 0x91ba8adf nvme_sync_queues +EXPORT_SYMBOL_GPL drivers/nvme/host/nvme-core 0x999c0701 nvme_reset_ctrl_sync +EXPORT_SYMBOL_GPL drivers/nvme/host/nvme-core 0xa299e0c7 nvme_stop_ctrl +EXPORT_SYMBOL_GPL drivers/nvme/host/nvme-core 0xa318d1d7 nvme_shutdown_ctrl +EXPORT_SYMBOL_GPL drivers/nvme/host/nvme-core 0xa54d93aa nvme_reset_ctrl +EXPORT_SYMBOL_GPL drivers/nvme/host/nvme-core 0xa8219f8a nvme_set_queue_count +EXPORT_SYMBOL_GPL drivers/nvme/host/nvme-core 0xace91e56 nvme_start_queues +EXPORT_SYMBOL_GPL drivers/nvme/host/nvme-core 0xae49a884 nvme_wait_reset +EXPORT_SYMBOL_GPL drivers/nvme/host/nvme-core 0xb0547662 nvme_set_features +EXPORT_SYMBOL_GPL drivers/nvme/host/nvme-core 0xbd8c2d5e nvme_stop_queues +EXPORT_SYMBOL_GPL drivers/nvme/host/nvme-core 0xbe1816e6 nvme_init_identify +EXPORT_SYMBOL_GPL drivers/nvme/host/nvme-core 0xc15a67d8 nvme_change_ctrl_state +EXPORT_SYMBOL_GPL drivers/nvme/host/nvme-core 0xc73ac21d nvme_start_freeze +EXPORT_SYMBOL_GPL drivers/nvme/host/nvme-core 0xc8a3e25a nvme_setup_cmd +EXPORT_SYMBOL_GPL drivers/nvme/host/nvme-core 0xcb74e538 nvme_alloc_request +EXPORT_SYMBOL_GPL drivers/nvme/host/nvme-core 0xcf2178d1 nvme_unfreeze +EXPORT_SYMBOL_GPL drivers/nvme/host/nvme-core 0xd45434ee admin_timeout +EXPORT_SYMBOL_GPL drivers/nvme/host/nvme-core 0xd58bbbcb nvme_delete_wq +EXPORT_SYMBOL_GPL drivers/nvme/host/nvme-core 0xddb52245 nvme_delete_ctrl +EXPORT_SYMBOL_GPL drivers/nvme/host/nvme-core 0xddf0c113 nvme_wait_freeze_timeout +EXPORT_SYMBOL_GPL drivers/nvme/host/nvme-core 0xe82c3ce0 nvme_get_features +EXPORT_SYMBOL_GPL drivers/nvme/host/nvme-core 0xecabbe04 nvme_stop_keep_alive +EXPORT_SYMBOL_GPL drivers/nvme/host/nvme-core 0xf165fbde nvme_start_ctrl +EXPORT_SYMBOL_GPL drivers/nvme/host/nvme-core 0xf5b644e2 nvme_complete_async_event +EXPORT_SYMBOL_GPL drivers/nvme/host/nvme-fabrics 0x1e7bcccf nvmf_reg_read32 +EXPORT_SYMBOL_GPL drivers/nvme/host/nvme-fabrics 0x1f739d9b nvmf_reg_read64 +EXPORT_SYMBOL_GPL drivers/nvme/host/nvme-fabrics 0x204051c5 nvmf_fail_nonready_command +EXPORT_SYMBOL_GPL drivers/nvme/host/nvme-fabrics 0x21dfaa59 __nvmf_check_ready +EXPORT_SYMBOL_GPL drivers/nvme/host/nvme-fabrics 0x4463b5f6 nvmf_connect_io_queue +EXPORT_SYMBOL_GPL drivers/nvme/host/nvme-fabrics 0x4dd57df8 nvmf_register_transport +EXPORT_SYMBOL_GPL drivers/nvme/host/nvme-fabrics 0x79df4564 nvmf_free_options +EXPORT_SYMBOL_GPL drivers/nvme/host/nvme-fabrics 0x7daefdb3 nvmf_should_reconnect +EXPORT_SYMBOL_GPL drivers/nvme/host/nvme-fabrics 0x865c0333 nvmf_ip_options_match +EXPORT_SYMBOL_GPL drivers/nvme/host/nvme-fabrics 0x879d0dcf nvmf_reg_write32 +EXPORT_SYMBOL_GPL drivers/nvme/host/nvme-fabrics 0x8c2e8070 nvmf_get_address +EXPORT_SYMBOL_GPL drivers/nvme/host/nvme-fabrics 0xd86b451d nvmf_connect_admin_queue +EXPORT_SYMBOL_GPL drivers/nvme/host/nvme-fabrics 0xda00f1cb nvmf_unregister_transport +EXPORT_SYMBOL_GPL drivers/nvme/host/nvme-fc 0x0d12e564 nvme_fc_register_remoteport +EXPORT_SYMBOL_GPL drivers/nvme/host/nvme-fc 0x2a25d787 nvme_fc_register_localport +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 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 0xfca9dc99 nvme_fc_unregister_remoteport +EXPORT_SYMBOL_GPL drivers/nvme/target/nvmet 0x0cb23515 nvmet_req_alloc_sgls +EXPORT_SYMBOL_GPL drivers/nvme/target/nvmet 0x0dd31352 nvmet_req_free_sgls +EXPORT_SYMBOL_GPL drivers/nvme/target/nvmet 0x236376e5 nvmet_register_transport +EXPORT_SYMBOL_GPL drivers/nvme/target/nvmet 0x2c8c2741 nvmet_unregister_transport +EXPORT_SYMBOL_GPL drivers/nvme/target/nvmet 0x54938499 nvmet_req_complete +EXPORT_SYMBOL_GPL drivers/nvme/target/nvmet 0x5dd2bea6 nvmet_sq_destroy +EXPORT_SYMBOL_GPL drivers/nvme/target/nvmet 0x97b0efdc nvmet_req_init +EXPORT_SYMBOL_GPL drivers/nvme/target/nvmet 0xba187464 nvmet_check_transfer_len +EXPORT_SYMBOL_GPL drivers/nvme/target/nvmet 0xe7acecdc nvmet_ctrl_fatal_error +EXPORT_SYMBOL_GPL drivers/nvme/target/nvmet 0xe8929603 nvmet_sq_init +EXPORT_SYMBOL_GPL drivers/nvme/target/nvmet 0xf66fd9a0 nvmet_req_uninit +EXPORT_SYMBOL_GPL drivers/nvme/target/nvmet-fc 0x0b98123d nvmet_fc_rcv_ls_req +EXPORT_SYMBOL_GPL drivers/nvme/target/nvmet-fc 0x1048b92a nvmet_fc_rcv_fcp_req +EXPORT_SYMBOL_GPL drivers/nvme/target/nvmet-fc 0x2a759175 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 0x7fa5302a nvmet_fc_rcv_fcp_abort +EXPORT_SYMBOL_GPL drivers/nvme/target/nvmet-fc 0x9ef76d99 nvmet_fc_unregister_targetport +EXPORT_SYMBOL_GPL drivers/pci/controller/pcie-iproc 0x6158dc97 iproc_pcie_shutdown +EXPORT_SYMBOL_GPL drivers/pci/switch/switchtec 0xf219660e switchtec_class +EXPORT_SYMBOL_GPL drivers/phy/allwinner/phy-sun4i-usb 0x1b0db8e8 sun4i_usb_phy_set_squelch_detect +EXPORT_SYMBOL_GPL drivers/phy/qualcomm/phy-qcom-ufs 0x1cfec83f get_ufs_qcom_phy +EXPORT_SYMBOL_GPL drivers/phy/qualcomm/phy-qcom-ufs 0x326cd58f ufs_qcom_phy_set_tx_lane_enable +EXPORT_SYMBOL_GPL drivers/phy/qualcomm/phy-qcom-ufs 0x3ec66656 ufs_qcom_phy_calibrate +EXPORT_SYMBOL_GPL drivers/phy/qualcomm/phy-qcom-ufs 0x92407330 ufs_qcom_phy_generic_probe +EXPORT_SYMBOL_GPL drivers/phy/qualcomm/phy-qcom-ufs 0x9a7b1651 ufs_qcom_phy_init_clks +EXPORT_SYMBOL_GPL drivers/phy/qualcomm/phy-qcom-ufs 0xc51f8f8f ufs_qcom_phy_power_off +EXPORT_SYMBOL_GPL drivers/phy/qualcomm/phy-qcom-ufs 0xcc42c547 ufs_qcom_phy_init_vregulators +EXPORT_SYMBOL_GPL drivers/phy/qualcomm/phy-qcom-ufs 0xd2672f5e ufs_qcom_phy_power_on +EXPORT_SYMBOL_GPL drivers/phy/qualcomm/phy-qcom-ufs 0xdf80b6e5 ufs_qcom_phy_save_controller_version +EXPORT_SYMBOL_GPL drivers/phy/ti/phy-omap-usb2 0x00d48f33 omap_usb2_set_comparator +EXPORT_SYMBOL_GPL drivers/pinctrl/pinctrl-mcp23s08 0x61c93695 mcp23s08_probe_one +EXPORT_SYMBOL_GPL drivers/pinctrl/pinctrl-mcp23s08 0xda5cc78f mcp23x08_regmap +EXPORT_SYMBOL_GPL drivers/pinctrl/pinctrl-mcp23s08 0xea276360 mcp23x17_regmap +EXPORT_SYMBOL_GPL drivers/platform/chrome/cros-ec-sensorhub 0x578cd6a6 cros_ec_sensorhub_unregister_push_data +EXPORT_SYMBOL_GPL drivers/platform/chrome/cros-ec-sensorhub 0xae29eab0 cros_ec_sensorhub_register_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/power/reset/reboot-mode 0x094fad2e devm_reboot_mode_unregister +EXPORT_SYMBOL_GPL drivers/power/reset/reboot-mode 0x36d57281 devm_reboot_mode_register +EXPORT_SYMBOL_GPL drivers/power/reset/reboot-mode 0x593b0316 reboot_mode_register +EXPORT_SYMBOL_GPL drivers/power/reset/reboot-mode 0xc34bc723 reboot_mode_unregister +EXPORT_SYMBOL_GPL drivers/power/supply/bq27xxx_battery 0x6501e5f0 bq27xxx_battery_teardown +EXPORT_SYMBOL_GPL drivers/power/supply/bq27xxx_battery 0x928b06dd bq27xxx_battery_update +EXPORT_SYMBOL_GPL drivers/power/supply/bq27xxx_battery 0xe8c7ff32 bq27xxx_battery_setup +EXPORT_SYMBOL_GPL drivers/power/supply/pcf50633-charger 0x23874fd5 pcf50633_mbc_get_usb_online_status +EXPORT_SYMBOL_GPL drivers/power/supply/pcf50633-charger 0xe14bd799 pcf50633_mbc_usb_curlim_set +EXPORT_SYMBOL_GPL drivers/power/supply/pcf50633-charger 0xe5d20eb2 pcf50633_mbc_get_status +EXPORT_SYMBOL_GPL drivers/ptp/ptp-qoriq 0x24867d40 ptp_qoriq_enable +EXPORT_SYMBOL_GPL drivers/ptp/ptp-qoriq 0x24b7688f ptp_qoriq_init +EXPORT_SYMBOL_GPL drivers/ptp/ptp-qoriq 0x2e4ec2f4 ptp_qoriq_gettime +EXPORT_SYMBOL_GPL drivers/ptp/ptp-qoriq 0x2eae82b0 ptp_qoriq_isr +EXPORT_SYMBOL_GPL drivers/ptp/ptp-qoriq 0x6a733ca8 ptp_qoriq_free +EXPORT_SYMBOL_GPL drivers/ptp/ptp-qoriq 0x8a4cd9b4 extts_clean_up +EXPORT_SYMBOL_GPL drivers/ptp/ptp-qoriq 0xa3900106 ptp_qoriq_settime +EXPORT_SYMBOL_GPL drivers/ptp/ptp-qoriq 0xa8b2c8f7 ptp_qoriq_adjfine +EXPORT_SYMBOL_GPL drivers/ptp/ptp-qoriq 0xb19b1269 ptp_qoriq_adjtime +EXPORT_SYMBOL_GPL drivers/regulator/mc13xxx-regulator-core 0x54836fa4 mc13xxx_fixed_regulator_set_voltage +EXPORT_SYMBOL_GPL drivers/regulator/mc13xxx-regulator-core 0x776c1e19 mc13xxx_fixed_regulator_ops +EXPORT_SYMBOL_GPL drivers/regulator/mc13xxx-regulator-core 0x8346fc3b mc13xxx_parse_regulators_dt +EXPORT_SYMBOL_GPL drivers/regulator/mc13xxx-regulator-core 0xa02b7c25 mc13xxx_get_num_regulators_dt +EXPORT_SYMBOL_GPL drivers/regulator/mc13xxx-regulator-core 0xeaa5656d mc13xxx_regulator_ops +EXPORT_SYMBOL_GPL drivers/regulator/wm8350-regulator 0x0fc95daa wm8350_dcdc_set_slot +EXPORT_SYMBOL_GPL drivers/regulator/wm8350-regulator 0x414b0b09 wm8350_isink_set_flash +EXPORT_SYMBOL_GPL drivers/regulator/wm8350-regulator 0x74adc864 wm8350_register_led +EXPORT_SYMBOL_GPL drivers/regulator/wm8350-regulator 0x825e3f9c wm8350_register_regulator +EXPORT_SYMBOL_GPL drivers/regulator/wm8350-regulator 0x9143a08e wm8350_ldo_set_slot +EXPORT_SYMBOL_GPL drivers/regulator/wm8350-regulator 0xfc4d56ae wm8350_dcdc25_set_mode +EXPORT_SYMBOL_GPL drivers/regulator/wm8400-regulator 0xcf4dace4 wm8400_register_regulator +EXPORT_SYMBOL_GPL drivers/remoteproc/mtk_scp 0x036fd12b scp_get_device +EXPORT_SYMBOL_GPL drivers/remoteproc/mtk_scp 0x071d6ae0 scp_get_vdec_hw_capa +EXPORT_SYMBOL_GPL drivers/remoteproc/mtk_scp 0x48eb6209 scp_put +EXPORT_SYMBOL_GPL drivers/remoteproc/mtk_scp 0x4bd33236 scp_get_rproc +EXPORT_SYMBOL_GPL drivers/remoteproc/mtk_scp 0x6e9dc2ec scp_get_venc_hw_capa +EXPORT_SYMBOL_GPL drivers/remoteproc/mtk_scp 0xc0d772e9 scp_mapping_dm_addr +EXPORT_SYMBOL_GPL drivers/remoteproc/mtk_scp 0xf5c61535 scp_get +EXPORT_SYMBOL_GPL drivers/remoteproc/mtk_scp_ipi 0x09313652 scp_memcpy_aligned +EXPORT_SYMBOL_GPL drivers/remoteproc/mtk_scp_ipi 0x4a84febb scp_ipi_unlock +EXPORT_SYMBOL_GPL drivers/remoteproc/mtk_scp_ipi 0x97bd0d6d scp_ipi_send +EXPORT_SYMBOL_GPL drivers/remoteproc/mtk_scp_ipi 0xb42d6ab4 scp_ipi_register +EXPORT_SYMBOL_GPL drivers/remoteproc/mtk_scp_ipi 0xe4566f12 scp_ipi_unregister +EXPORT_SYMBOL_GPL drivers/remoteproc/mtk_scp_ipi 0xee21907e scp_ipi_lock +EXPORT_SYMBOL_GPL drivers/remoteproc/qcom_common 0x0ba3addd qcom_remove_ssr_subdev +EXPORT_SYMBOL_GPL drivers/remoteproc/qcom_common 0x31bfd40e qcom_unregister_ssr_notifier +EXPORT_SYMBOL_GPL drivers/remoteproc/qcom_common 0x5049f3e8 qcom_register_dump_segments +EXPORT_SYMBOL_GPL drivers/remoteproc/qcom_common 0x86a84622 qcom_register_ssr_notifier +EXPORT_SYMBOL_GPL drivers/remoteproc/qcom_common 0xa0963ea4 qcom_remove_smd_subdev +EXPORT_SYMBOL_GPL drivers/remoteproc/qcom_common 0xb2f21e49 qcom_remove_glink_subdev +EXPORT_SYMBOL_GPL drivers/remoteproc/qcom_common 0xb852d7e9 qcom_add_smd_subdev +EXPORT_SYMBOL_GPL drivers/remoteproc/qcom_common 0xd65f4d68 qcom_add_glink_subdev +EXPORT_SYMBOL_GPL drivers/remoteproc/qcom_common 0xe953f958 qcom_add_ssr_subdev +EXPORT_SYMBOL_GPL drivers/remoteproc/qcom_q6v5 0x1d6e896c qcom_q6v5_wait_for_start +EXPORT_SYMBOL_GPL drivers/remoteproc/qcom_q6v5 0x3934191f qcom_q6v5_unprepare +EXPORT_SYMBOL_GPL drivers/remoteproc/qcom_q6v5 0x5258c5ab qcom_q6v5_panic +EXPORT_SYMBOL_GPL drivers/remoteproc/qcom_q6v5 0x617efe95 qcom_q6v5_init +EXPORT_SYMBOL_GPL drivers/remoteproc/qcom_q6v5 0xf0c6a662 qcom_q6v5_prepare +EXPORT_SYMBOL_GPL drivers/remoteproc/qcom_q6v5 0xf7fde3e8 qcom_q6v5_request_stop +EXPORT_SYMBOL_GPL drivers/remoteproc/qcom_q6v5_ipa_notify 0x62796cc7 qcom_add_ipa_notify_subdev +EXPORT_SYMBOL_GPL drivers/remoteproc/qcom_q6v5_ipa_notify 0x81e50cd9 qcom_remove_ipa_notify_subdev +EXPORT_SYMBOL_GPL drivers/remoteproc/qcom_q6v5_mss 0x8de5c6af qcom_register_ipa_notify +EXPORT_SYMBOL_GPL drivers/remoteproc/qcom_q6v5_mss 0xa879ee39 qcom_deregister_ipa_notify +EXPORT_SYMBOL_GPL drivers/remoteproc/qcom_sysmon 0x4a3f460c qcom_add_sysmon_subdev +EXPORT_SYMBOL_GPL drivers/remoteproc/qcom_sysmon 0xa881c6fc qcom_remove_sysmon_subdev +EXPORT_SYMBOL_GPL drivers/rpmsg/mtk_rpmsg 0x86903274 mtk_rpmsg_destroy_rproc_subdev +EXPORT_SYMBOL_GPL drivers/rpmsg/mtk_rpmsg 0xe9fb9791 mtk_rpmsg_create_rproc_subdev +EXPORT_SYMBOL_GPL drivers/rpmsg/qcom_glink 0x149236da qcom_glink_native_remove +EXPORT_SYMBOL_GPL drivers/rpmsg/qcom_glink 0xd4259372 qcom_glink_native_probe +EXPORT_SYMBOL_GPL drivers/rpmsg/qcom_glink 0xf14f5684 qcom_glink_ssr_notify +EXPORT_SYMBOL_GPL drivers/rpmsg/qcom_glink 0xfd2d5a1d qcom_glink_native_unregister +EXPORT_SYMBOL_GPL drivers/rpmsg/qcom_glink_smem 0x72dd75d9 qcom_glink_smem_unregister +EXPORT_SYMBOL_GPL drivers/rpmsg/qcom_glink_smem 0xe792b118 qcom_glink_smem_register +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x041669c4 cxgbi_get_conn_stats +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x06735c29 cxgbi_conn_alloc_pdu +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x148a2c64 cxgbi_conn_init_pdu +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x19af4896 cxgbi_device_find_by_netdev +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x1e4898b8 cxgbi_create_conn +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x1ee37e56 cxgbi_device_register +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x20b54489 cxgbi_ddp_ppm_setup +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x350fe454 cxgbi_bind_conn +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x35e8c06c cxgbi_get_ep_param +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x3f4011cc cxgbi_sock_rcv_wr_ack +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x41c90054 cxgbi_conn_tx_open +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x467e2bc4 cxgbi_sock_purge_wr_queue +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x48dc5125 cxgbi_device_portmap_cleanup +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x4f6d46a0 cxgbi_destroy_session +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x4f7a8e67 cxgbi_sock_rcv_peer_close +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x5761b289 cxgbi_sock_established +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x5a33b6c4 cxgbi_hbas_remove +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x5c744adf cxgbi_ep_connect +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x5f7385c8 cxgbi_sock_rcv_close_conn_rpl +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x7bc3f8e0 cxgbi_parse_pdu_itt +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x7fdb6004 cxgbi_device_unregister_all +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x85d7cbfc cxgbi_device_find_by_lldev +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x88fb4216 cxgbi_set_conn_param +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x942db0b2 cxgbi_device_find_by_netdev_rcu +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x9c2775ba cxgbi_iscsi_cleanup +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x9e752d76 cxgbi_create_session +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0xa0d351a3 cxgbi_sock_check_wr_invariants +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0xaa2f12ca cxgbi_sock_skb_entail +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0xae83c608 cxgbi_conn_pdu_ready +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0xbe1c46c4 cxgbi_sock_select_mss +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0xc011af75 cxgbi_ddp_set_one_ppod +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0xd55423bf cxgbi_iscsi_init +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0xd8cf804f cxgbi_hbas_add +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0xd9637112 cxgbi_sock_closed +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0xdac768e9 cxgbi_set_host_param +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0xdcbc024b cxgbi_device_unregister +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0xe1bee806 cxgbi_sock_free_cpl_skbs +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0xe1c3ea17 cxgbi_ep_disconnect +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0xe25bfdbf cxgbi_device_portmap_create +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0xe3cfa1d5 cxgbi_ep_poll +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0xe80707d1 cxgbi_sock_fail_act_open +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0xe84a9ec2 cxgbi_sock_act_open_req_arp_failure +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0xec2ddca9 cxgbi_sock_rcv_abort_rpl +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0xef346615 cxgbi_attr_is_visible +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0xefda9c3e cxgbi_get_host_param +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0xf0daf5ee cxgbi_cleanup_task +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0xf7b96ce0 cxgbi_conn_xmit_pdu +EXPORT_SYMBOL_GPL drivers/scsi/fcoe/libfcoe 0x094a5d13 fcoe_libfc_config +EXPORT_SYMBOL_GPL drivers/scsi/fcoe/libfcoe 0x215295cf fcoe_fcf_device_delete +EXPORT_SYMBOL_GPL drivers/scsi/fcoe/libfcoe 0x2f9036a2 fcoe_check_wait_queue +EXPORT_SYMBOL_GPL drivers/scsi/fcoe/libfcoe 0x4d678812 fcoe_get_wwn +EXPORT_SYMBOL_GPL drivers/scsi/fcoe/libfcoe 0x50b15d78 fcoe_get_lesb +EXPORT_SYMBOL_GPL drivers/scsi/fcoe/libfcoe 0x6f06c997 fcoe_start_io +EXPORT_SYMBOL_GPL drivers/scsi/fcoe/libfcoe 0x7954af3e fcoe_link_speed_update +EXPORT_SYMBOL_GPL drivers/scsi/fcoe/libfcoe 0x8ad76497 fcoe_clean_pending_queue +EXPORT_SYMBOL_GPL drivers/scsi/fcoe/libfcoe 0x9ce6b769 fcoe_validate_vport_create +EXPORT_SYMBOL_GPL drivers/scsi/fcoe/libfcoe 0xa0deb713 fcoe_fcf_device_add +EXPORT_SYMBOL_GPL drivers/scsi/fcoe/libfcoe 0xbac58840 fcoe_queue_timer +EXPORT_SYMBOL_GPL drivers/scsi/fcoe/libfcoe 0xc2cbd81b fcoe_ctlr_device_add +EXPORT_SYMBOL_GPL drivers/scsi/fcoe/libfcoe 0xce24971b __fcoe_get_lesb +EXPORT_SYMBOL_GPL drivers/scsi/fcoe/libfcoe 0xdd944534 fcoe_wwn_from_mac +EXPORT_SYMBOL_GPL drivers/scsi/fcoe/libfcoe 0xed9abb6b fcoe_get_paged_crc_eof +EXPORT_SYMBOL_GPL drivers/scsi/fcoe/libfcoe 0xf167cb7a fcoe_wwn_to_str +EXPORT_SYMBOL_GPL drivers/scsi/fcoe/libfcoe 0xf2e4a5dc fcoe_ctlr_get_lesb +EXPORT_SYMBOL_GPL drivers/scsi/fcoe/libfcoe 0xf42f30db fcoe_ctlr_device_delete +EXPORT_SYMBOL_GPL drivers/scsi/fcoe/libfcoe 0xfc7a579f fcoe_fc_crc +EXPORT_SYMBOL_GPL drivers/scsi/fdomain 0x08710cec fdomain_create +EXPORT_SYMBOL_GPL drivers/scsi/fdomain 0x70158ccc fdomain_destroy +EXPORT_SYMBOL_GPL drivers/scsi/hisi_sas/hisi_sas_main 0x036e79b1 hisi_sas_slot_task_free +EXPORT_SYMBOL_GPL drivers/scsi/hisi_sas/hisi_sas_main 0x0b582c3f hisi_sas_release_tasks +EXPORT_SYMBOL_GPL drivers/scsi/hisi_sas/hisi_sas_main 0x1dcfe2a1 hisi_sas_controller_reset_prepare +EXPORT_SYMBOL_GPL drivers/scsi/hisi_sas/hisi_sas_main 0x242b99ef hisi_sas_debugfs_work_handler +EXPORT_SYMBOL_GPL drivers/scsi/hisi_sas/hisi_sas_main 0x2545de33 hisi_sas_init_mem +EXPORT_SYMBOL_GPL drivers/scsi/hisi_sas/hisi_sas_main 0x269e661c hisi_sas_phy_down +EXPORT_SYMBOL_GPL drivers/scsi/hisi_sas/hisi_sas_main 0x297d373e hisi_sas_debugfs_exit +EXPORT_SYMBOL_GPL drivers/scsi/hisi_sas/hisi_sas_main 0x379bb5f8 hisi_sas_sync_irqs +EXPORT_SYMBOL_GPL drivers/scsi/hisi_sas/hisi_sas_main 0x3d67010d hisi_sas_probe +EXPORT_SYMBOL_GPL drivers/scsi/hisi_sas/hisi_sas_main 0x3e5d1313 hisi_sas_scan_finished +EXPORT_SYMBOL_GPL drivers/scsi/hisi_sas/hisi_sas_main 0x3fdf7546 hisi_sas_slave_configure +EXPORT_SYMBOL_GPL drivers/scsi/hisi_sas/hisi_sas_main 0x4b04175b hisi_sas_get_fw_info +EXPORT_SYMBOL_GPL drivers/scsi/hisi_sas/hisi_sas_main 0x4c569ddf hisi_sas_notify_phy_event +EXPORT_SYMBOL_GPL drivers/scsi/hisi_sas/hisi_sas_main 0x4fc22123 hisi_sas_stt +EXPORT_SYMBOL_GPL drivers/scsi/hisi_sas/hisi_sas_main 0x52d092f1 hisi_sas_scan_start +EXPORT_SYMBOL_GPL drivers/scsi/hisi_sas/hisi_sas_main 0x562c1814 hisi_sas_host_reset +EXPORT_SYMBOL_GPL drivers/scsi/hisi_sas/hisi_sas_main 0x5b50cfd2 hisi_sas_debugfs_init +EXPORT_SYMBOL_GPL drivers/scsi/hisi_sas/hisi_sas_main 0x64505961 hisi_sas_controller_reset_done +EXPORT_SYMBOL_GPL drivers/scsi/hisi_sas/hisi_sas_main 0x693f2f74 to_hisi_sas_port +EXPORT_SYMBOL_GPL drivers/scsi/hisi_sas/hisi_sas_main 0x6c5c5fb9 hisi_sas_sata_done +EXPORT_SYMBOL_GPL drivers/scsi/hisi_sas/hisi_sas_main 0x84a21868 hisi_sas_alloc +EXPORT_SYMBOL_GPL drivers/scsi/hisi_sas/hisi_sas_main 0x8c27ff02 hisi_sas_phy_enable +EXPORT_SYMBOL_GPL drivers/scsi/hisi_sas/hisi_sas_main 0x9b807c91 hisi_sas_get_prog_phy_linkrate_mask +EXPORT_SYMBOL_GPL drivers/scsi/hisi_sas/hisi_sas_main 0x9e7c96a6 hisi_sas_free +EXPORT_SYMBOL_GPL drivers/scsi/hisi_sas/hisi_sas_main 0xab1d8386 hisi_sas_stop_phys +EXPORT_SYMBOL_GPL drivers/scsi/hisi_sas/hisi_sas_main 0xae9f942d hisi_sas_remove +EXPORT_SYMBOL_GPL drivers/scsi/hisi_sas/hisi_sas_main 0xb03aa9c5 hisi_sas_rst_work_handler +EXPORT_SYMBOL_GPL drivers/scsi/hisi_sas/hisi_sas_main 0xc3a41131 hisi_sas_debugfs_dump_count +EXPORT_SYMBOL_GPL drivers/scsi/hisi_sas/hisi_sas_main 0xe330cb74 hisi_sas_sync_rst_work_handler +EXPORT_SYMBOL_GPL drivers/scsi/hisi_sas/hisi_sas_main 0xe987d9aa hisi_sas_debugfs_enable +EXPORT_SYMBOL_GPL drivers/scsi/hisi_sas/hisi_sas_main 0xebfae55c hisi_sas_get_ata_protocol +EXPORT_SYMBOL_GPL drivers/scsi/hisi_sas/hisi_sas_main 0xfc17a31f hisi_sas_phy_oob_ready +EXPORT_SYMBOL_GPL drivers/scsi/iscsi_boot_sysfs 0x0494d840 iscsi_boot_create_acpitbl +EXPORT_SYMBOL_GPL drivers/scsi/iscsi_boot_sysfs 0x2318d0e9 iscsi_boot_destroy_kset +EXPORT_SYMBOL_GPL drivers/scsi/iscsi_boot_sysfs 0x7bc22244 iscsi_boot_create_kset +EXPORT_SYMBOL_GPL drivers/scsi/iscsi_boot_sysfs 0x7bd4cf05 iscsi_boot_create_ethernet +EXPORT_SYMBOL_GPL drivers/scsi/iscsi_boot_sysfs 0xc4732131 iscsi_boot_create_host_kset +EXPORT_SYMBOL_GPL drivers/scsi/iscsi_boot_sysfs 0xc5eac448 iscsi_boot_create_initiator +EXPORT_SYMBOL_GPL drivers/scsi/iscsi_boot_sysfs 0xd81a3ec8 iscsi_boot_create_target +EXPORT_SYMBOL_GPL drivers/scsi/libfc/libfc 0x48561353 fc_seq_els_rsp_send +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x04021635 iscsi_requeue_task +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x05883df4 iscsi_host_remove +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x09c89a41 iscsi_session_setup +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x0aa4553e iscsi_conn_failure +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x0ed96e29 iscsi_conn_setup +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x10829ea2 __iscsi_complete_pdu +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x10e22621 iscsi_session_get_param +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x11dd7603 iscsi_conn_bind +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x12b2ad06 iscsi_switch_str_param +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x1acfc5e9 iscsi_set_param +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x1c99098a iscsi_conn_start +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x1ffb15f4 iscsi_itt_to_ctask +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x27f3d5a0 iscsi_eh_cmd_timed_out +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x299c3817 iscsi_host_add +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x2e4c68e9 iscsi_prep_data_out_pdu +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x3676778d iscsi_suspend_tx +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x374e144d iscsi_host_get_param +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x378bb046 iscsi_queuecommand +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x3bef2f73 iscsi_pool_init +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x4d45901d iscsi_eh_session_reset +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x523310cc iscsi_conn_queue_work +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x612f5e2a iscsi_conn_stop +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x6bd6556f iscsi_update_cmdsn +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x749ba1e3 iscsi_target_alloc +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x74cd08c7 iscsi_eh_device_reset +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x83d7d21f iscsi_conn_teardown +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x868dd46d iscsi_itt_to_task +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x869daa4f __iscsi_get_task +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x8c2ee035 iscsi_conn_get_param +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x8d303b1b iscsi_pool_free +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x926bbcf7 __iscsi_put_task +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0xa7353c36 iscsi_put_task +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0xb6508020 iscsi_verify_itt +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0xb6d87409 iscsi_host_alloc +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0xca10baaa iscsi_eh_abort +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0xcd974806 iscsi_session_recovery_timedout +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0xd69e154a iscsi_host_free +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0xd82545ec iscsi_eh_recover_target +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0xd9850b73 iscsi_suspend_queue +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0xe223e66a iscsi_host_set_param +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0xe364ed8b iscsi_complete_scsi_task +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0xeab9cbd5 iscsi_conn_get_addr_param +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0xed523270 iscsi_conn_send_pdu +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0xf1e748c1 iscsi_session_teardown +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0xfe9708a8 iscsi_session_failure +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0xffcf4e8f iscsi_complete_pdu +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi_tcp 0x054810bf iscsi_tcp_segment_done +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi_tcp 0x30160928 iscsi_tcp_conn_teardown +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi_tcp 0x49776447 iscsi_tcp_r2tpool_free +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi_tcp 0x5201fcdd iscsi_tcp_dgst_header +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi_tcp 0x55366220 iscsi_tcp_conn_get_stats +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi_tcp 0x5cf0c63b iscsi_tcp_task_init +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi_tcp 0x74f5ba6f iscsi_segment_seek_sg +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi_tcp 0x775b1e0a iscsi_segment_init_linear +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi_tcp 0x82103ef0 iscsi_tcp_conn_setup +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi_tcp 0x8e1f9caf iscsi_tcp_recv_skb +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi_tcp 0x96901a0c iscsi_tcp_task_xmit +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi_tcp 0xab6080f6 iscsi_tcp_cleanup_task +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi_tcp 0xc96e6b7b iscsi_tcp_r2tpool_alloc +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi_tcp 0xce6ba0bb iscsi_tcp_hdr_recv_prep +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi_tcp 0xd711afca iscsi_tcp_recv_segment_is_hdr +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi_tcp 0xe0e40b94 iscsi_tcp_set_max_r2t +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi_tcp 0xe4880f5a iscsi_tcp_segment_unmap +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0x002eccaf sas_phy_reset +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0x07ab2c53 sas_get_local_phy +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0x32b1708e sas_ssp_task_response +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0x373539c7 sas_eh_device_reset_handler +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0x482f98d6 sas_queuecommand +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0x4f1c135e sas_eh_abort_handler +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0x5ba7a734 sas_slave_configure +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0x7ce5dbdc sas_ioctl +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0x847d9ed5 sas_request_addr +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0x863cce8e sas_register_ha +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0x8a1e5dc6 sas_target_destroy +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0x8a6f2de3 sas_drain_work +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0x9d26b358 sas_target_alloc +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0xacac11b1 sas_domain_attach_transport +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0xb0333e02 sas_ata_schedule_reset +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0xbe43c806 sas_bios_param +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0xcb121fbc sas_free_task +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0xce9b128f sas_alloc_slow_task +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0xcfd9658f sas_unregister_ha +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0xdac732fb sas_task_abort +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0xe0728875 sas_eh_target_reset_handler +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0xf20778ad sas_alloc_task +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0xfcb5454a dev_attr_phy_event_threshold +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0xff90ff27 sas_change_queue_depth +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x07eea2b3 iscsi_add_session +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x0f6cbdf5 iscsi_create_session +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x191c6f29 iscsi_alloc_session +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x23b25a85 iscsi_block_session +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x24d8894e iscsi_is_session_online +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x3133dc5c __tracepoint_iscsi_dbg_session +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x336c9360 iscsi_get_port_speed_name +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x34ab5483 iscsi_dbg_trace +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x3737a646 iscsi_remove_session +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x37c4b6ec iscsi_unregister_transport +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x39fa47d7 iscsi_block_scsi_eh +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x3f68353c iscsi_lookup_endpoint +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x41334c5a iscsi_destroy_all_flashnode +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x46ac453a iscsi_destroy_endpoint +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x47867762 __tracepoint_iscsi_dbg_tcp +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x488a79ff iscsi_is_session_dev +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x58dd014c iscsi_create_iface +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x5ee74db5 iscsi_destroy_iface +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x61675c01 iscsi_conn_login_event +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x699fe53e iscsi_get_discovery_parent_name +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x6dc08493 iscsi_offload_mesg +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x6f6959b8 iscsi_create_flashnode_conn +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x70260f41 iscsi_find_flashnode_conn +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x72bc8d4d iscsi_destroy_flashnode_sess +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x79d00b74 iscsi_create_flashnode_sess +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x84a005f1 iscsi_get_router_state_name +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x8938da22 iscsi_unblock_session +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x8a6ea84b iscsi_create_conn +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0xa05671f7 iscsi_find_flashnode_sess +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0xaac3519d __tracepoint_iscsi_dbg_conn +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0xabc3edee iscsi_flashnode_bus_match +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0xae7ded7b iscsi_scan_finished +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0xaea92c90 __tracepoint_iscsi_dbg_eh +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0xb033617c iscsi_destroy_conn +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0xb43a1552 iscsi_conn_error_event +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0xb5eae5cf iscsi_recv_pdu +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0xb807572e iscsi_session_event +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0xbc071179 iscsi_get_ipaddress_state_name +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0xbda52bbd iscsi_ping_comp_event +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0xbf70c472 iscsi_create_endpoint +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0xc8d08e37 iscsi_get_port_state_name +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0xd4697d5b __tracepoint_iscsi_dbg_sw_tcp +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0xe12c0893 iscsi_register_transport +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0xe7f32dbd iscsi_post_host_event +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0xf3981e82 iscsi_host_for_each_session +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0xf9164a0a iscsi_session_chkready +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0xfd5e98e3 iscsi_free_session +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_sas 0x262004b9 sas_is_tlr_enabled +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_sas 0x6dbb46f0 sas_enable_tlr +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_sas 0x8720f3dc sas_tlr_supported +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_sas 0xbac8bab4 sas_disable_tlr +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_spi 0x09802d14 spi_populate_tag_msg +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 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 0x2852a4d6 srp_rport_del +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_srp 0x4bbbc1d9 srp_stop_rport_timers +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_srp 0x54427168 srp_attach_transport +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_srp 0x593750d5 srp_rport_add +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_srp 0xb76da6eb srp_remove_host +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_srp 0xdaba8f37 srp_release_transport +EXPORT_SYMBOL_GPL drivers/scsi/ufs/ufshcd-core 0x1179c402 ufshcd_make_hba_operational +EXPORT_SYMBOL_GPL drivers/scsi/ufs/ufshcd-core 0x2b7bdd5d ufshcd_remove +EXPORT_SYMBOL_GPL drivers/scsi/ufs/ufshcd-core 0x46d396a5 ufshcd_fixup_dev_quirks +EXPORT_SYMBOL_GPL drivers/scsi/ufs/ufshcd-core 0x4be9fefb ufshcd_init +EXPORT_SYMBOL_GPL drivers/scsi/ufs/ufshcd-core 0x4bf8cc16 ufshcd_dealloc_host +EXPORT_SYMBOL_GPL drivers/scsi/ufs/ufshcd-core 0x5ac0da6c ufshcd_release +EXPORT_SYMBOL_GPL drivers/scsi/ufs/ufshcd-core 0x5c1c7ae1 ufshcd_dme_get_attr +EXPORT_SYMBOL_GPL drivers/scsi/ufs/ufshcd-core 0x5d588c32 ufshcd_update_reg_hist +EXPORT_SYMBOL_GPL drivers/scsi/ufs/ufshcd-core 0x6c9e61e7 ufshcd_hold +EXPORT_SYMBOL_GPL drivers/scsi/ufs/ufshcd-core 0x723b1abf ufshcd_delay_us +EXPORT_SYMBOL_GPL drivers/scsi/ufs/ufshcd-core 0x799740d5 ufshcd_link_recovery +EXPORT_SYMBOL_GPL drivers/scsi/ufs/ufshcd-core 0xa7726d4e ufshcd_hba_enable +EXPORT_SYMBOL_GPL drivers/scsi/ufs/ufshcd-core 0xaaf07893 ufshcd_auto_hibern8_update +EXPORT_SYMBOL_GPL drivers/scsi/ufs/ufshcd-core 0xaccf6117 ufshcd_config_pwr_mode +EXPORT_SYMBOL_GPL drivers/scsi/ufs/ufshcd-core 0xb2a8166e ufshcd_uic_hibern8_exit +EXPORT_SYMBOL_GPL drivers/scsi/ufs/ufshcd-core 0xc8c4a319 ufshcd_dme_set_attr +EXPORT_SYMBOL_GPL drivers/scsi/ufs/ufshcd-core 0xe5e69315 ufshcd_dump_regs +EXPORT_SYMBOL_GPL drivers/scsi/ufs/ufshcd-pltfrm 0x0278eb6d ufshcd_pltfrm_resume +EXPORT_SYMBOL_GPL drivers/scsi/ufs/ufshcd-pltfrm 0x2695ad83 ufshcd_pltfrm_runtime_suspend +EXPORT_SYMBOL_GPL drivers/scsi/ufs/ufshcd-pltfrm 0x374fc275 ufshcd_pltfrm_shutdown +EXPORT_SYMBOL_GPL drivers/scsi/ufs/ufshcd-pltfrm 0x49a74098 ufshcd_pltfrm_runtime_idle +EXPORT_SYMBOL_GPL drivers/scsi/ufs/ufshcd-pltfrm 0x7043666c ufshcd_pltfrm_init +EXPORT_SYMBOL_GPL drivers/scsi/ufs/ufshcd-pltfrm 0x828c1601 ufshcd_pltfrm_suspend +EXPORT_SYMBOL_GPL drivers/scsi/ufs/ufshcd-pltfrm 0xca07040b ufshcd_pltfrm_runtime_resume +EXPORT_SYMBOL_GPL drivers/scsi/ufs/ufshcd-pltfrm 0xff85cd6b ufshcd_get_pwr_dev_param +EXPORT_SYMBOL_GPL drivers/siox/siox-core 0x3481246f siox_master_unregister +EXPORT_SYMBOL_GPL drivers/siox/siox-core 0x48ef9701 __siox_driver_register +EXPORT_SYMBOL_GPL drivers/siox/siox-core 0xb9ce9a7b siox_master_alloc +EXPORT_SYMBOL_GPL drivers/siox/siox-core 0xc695e68c siox_device_connected +EXPORT_SYMBOL_GPL drivers/siox/siox-core 0xc72a3854 siox_master_register +EXPORT_SYMBOL_GPL drivers/siox/siox-core 0xc9f13e8e siox_device_synced +EXPORT_SYMBOL_GPL drivers/slimbus/slimbus 0x054246ff slim_report_absent +EXPORT_SYMBOL_GPL drivers/slimbus/slimbus 0x10ecbde5 slim_get_device +EXPORT_SYMBOL_GPL drivers/slimbus/slimbus 0x135e60de slim_get_logical_addr +EXPORT_SYMBOL_GPL drivers/slimbus/slimbus 0x17e1f88d slim_read +EXPORT_SYMBOL_GPL drivers/slimbus/slimbus 0x1c9eb931 slim_xfer_msg +EXPORT_SYMBOL_GPL drivers/slimbus/slimbus 0x1e9ad323 slimbus_bus +EXPORT_SYMBOL_GPL drivers/slimbus/slimbus 0x22f6f985 slim_device_report_present +EXPORT_SYMBOL_GPL drivers/slimbus/slimbus 0x49a22c21 slim_do_transfer +EXPORT_SYMBOL_GPL drivers/slimbus/slimbus 0x4c0115de slim_write +EXPORT_SYMBOL_GPL drivers/slimbus/slimbus 0x4d0defba slim_stream_unprepare +EXPORT_SYMBOL_GPL drivers/slimbus/slimbus 0x537c21a9 slim_writeb +EXPORT_SYMBOL_GPL drivers/slimbus/slimbus 0x5397862e slim_free_txn_tid +EXPORT_SYMBOL_GPL drivers/slimbus/slimbus 0x599aa2fd slim_ctrl_clk_pause +EXPORT_SYMBOL_GPL drivers/slimbus/slimbus 0x652befe0 __slim_driver_register +EXPORT_SYMBOL_GPL drivers/slimbus/slimbus 0x6dc5112c slim_unregister_controller +EXPORT_SYMBOL_GPL drivers/slimbus/slimbus 0x72450401 of_slim_get_device +EXPORT_SYMBOL_GPL drivers/slimbus/slimbus 0x76127e97 slim_readb +EXPORT_SYMBOL_GPL drivers/slimbus/slimbus 0x7b4164ab slim_stream_prepare +EXPORT_SYMBOL_GPL drivers/slimbus/slimbus 0x87279226 slim_stream_disable +EXPORT_SYMBOL_GPL drivers/slimbus/slimbus 0x880ad330 slim_driver_unregister +EXPORT_SYMBOL_GPL drivers/slimbus/slimbus 0x91711290 slim_stream_free +EXPORT_SYMBOL_GPL drivers/slimbus/slimbus 0x9aa49fb4 slim_msg_response +EXPORT_SYMBOL_GPL drivers/slimbus/slimbus 0xc0d38d4e slim_stream_allocate +EXPORT_SYMBOL_GPL drivers/slimbus/slimbus 0xc33513bf slim_register_controller +EXPORT_SYMBOL_GPL drivers/slimbus/slimbus 0xc9b5c396 slim_stream_enable +EXPORT_SYMBOL_GPL drivers/slimbus/slimbus 0xef0e8df5 slim_alloc_txn_tid +EXPORT_SYMBOL_GPL drivers/soc/amlogic/meson-canvas 0x494128eb meson_canvas_alloc +EXPORT_SYMBOL_GPL drivers/soc/amlogic/meson-canvas 0x673c5a86 meson_canvas_config +EXPORT_SYMBOL_GPL drivers/soc/amlogic/meson-canvas 0x8b855933 meson_canvas_get +EXPORT_SYMBOL_GPL drivers/soc/amlogic/meson-canvas 0xfbd79150 meson_canvas_free +EXPORT_SYMBOL_GPL drivers/soc/fsl/dpio/fsl-mc-dpio 0x0261cd01 dpaa2_io_store_next +EXPORT_SYMBOL_GPL drivers/soc/fsl/dpio/fsl-mc-dpio 0x0ab37baa dpaa2_io_store_create +EXPORT_SYMBOL_GPL drivers/soc/fsl/dpio/fsl-mc-dpio 0x1b7c4023 dpaa2_io_service_rearm +EXPORT_SYMBOL_GPL drivers/soc/fsl/dpio/fsl-mc-dpio 0x2dc0841f dpaa2_io_service_deregister +EXPORT_SYMBOL_GPL drivers/soc/fsl/dpio/fsl-mc-dpio 0x2ea89927 dpaa2_io_service_pull_channel +EXPORT_SYMBOL_GPL drivers/soc/fsl/dpio/fsl-mc-dpio 0x2f10852c dpaa2_io_service_select +EXPORT_SYMBOL_GPL drivers/soc/fsl/dpio/fsl-mc-dpio 0x3f8992eb dpaa2_io_service_release +EXPORT_SYMBOL_GPL drivers/soc/fsl/dpio/fsl-mc-dpio 0x4994345c dpaa2_io_store_destroy +EXPORT_SYMBOL_GPL drivers/soc/fsl/dpio/fsl-mc-dpio 0x6560c60d dpaa2_io_service_acquire +EXPORT_SYMBOL_GPL drivers/soc/fsl/dpio/fsl-mc-dpio 0x736d3b3f dpaa2_io_service_register +EXPORT_SYMBOL_GPL drivers/soc/fsl/dpio/fsl-mc-dpio 0x79cf65a1 dpaa2_io_service_enqueue_qd +EXPORT_SYMBOL_GPL drivers/soc/fsl/dpio/fsl-mc-dpio 0x8edafa55 dpaa2_io_query_bp_count +EXPORT_SYMBOL_GPL drivers/soc/fsl/dpio/fsl-mc-dpio 0xb9e81961 dpaa2_io_query_fq_count +EXPORT_SYMBOL_GPL drivers/soc/qcom/apr 0x30d2b052 aprbus +EXPORT_SYMBOL_GPL drivers/soc/qcom/apr 0x412c8d08 apr_driver_unregister +EXPORT_SYMBOL_GPL drivers/soc/qcom/apr 0x83b6bba7 apr_send_pkt +EXPORT_SYMBOL_GPL drivers/soc/qcom/apr 0xd6671c35 __apr_driver_register +EXPORT_SYMBOL_GPL drivers/soc/qcom/llcc-qcom 0x03c9a66d llcc_get_slice_size +EXPORT_SYMBOL_GPL drivers/soc/qcom/llcc-qcom 0x0679b34d llcc_slice_getd +EXPORT_SYMBOL_GPL drivers/soc/qcom/llcc-qcom 0x7e773088 llcc_get_slice_id +EXPORT_SYMBOL_GPL drivers/soc/qcom/llcc-qcom 0xad3516c4 llcc_slice_activate +EXPORT_SYMBOL_GPL drivers/soc/qcom/llcc-qcom 0xb534ec76 llcc_slice_deactivate +EXPORT_SYMBOL_GPL drivers/soc/qcom/llcc-qcom 0xb68b1300 llcc_slice_putd +EXPORT_SYMBOL_GPL drivers/soc/qcom/mdt_loader 0x5db77c83 qcom_mdt_load_no_init +EXPORT_SYMBOL_GPL drivers/soc/qcom/mdt_loader 0xa1c6a5b9 qcom_mdt_read_metadata +EXPORT_SYMBOL_GPL drivers/soc/qcom/mdt_loader 0xd86c2234 qcom_mdt_load +EXPORT_SYMBOL_GPL drivers/soc/qcom/mdt_loader 0xe8a3861c qcom_mdt_get_size +EXPORT_SYMBOL_GPL drivers/soundwire/soundwire-bus 0x4247a986 sdw_bus_type +EXPORT_SYMBOL_GPL drivers/soundwire/soundwire-bus 0x7b91aafe __sdw_register_driver +EXPORT_SYMBOL_GPL drivers/soundwire/soundwire-bus 0xa6a8fce7 sdw_unregister_driver +EXPORT_SYMBOL_GPL drivers/soundwire/soundwire-cadence 0x42ce98dd sdw_cdns_debugfs_init +EXPORT_SYMBOL_GPL drivers/spi/spi-bcm-qspi 0x23917790 bcm_qspi_probe +EXPORT_SYMBOL_GPL drivers/spi/spi-bcm-qspi 0x8114c233 bcm_qspi_remove +EXPORT_SYMBOL_GPL drivers/spi/spi-bcm-qspi 0xe2cbd231 bcm_qspi_pm_ops +EXPORT_SYMBOL_GPL drivers/spi/spi-bitbang 0x0ffb2105 spi_bitbang_start +EXPORT_SYMBOL_GPL drivers/spi/spi-bitbang 0x19f430e4 spi_bitbang_init +EXPORT_SYMBOL_GPL drivers/spi/spi-bitbang 0x95a32156 spi_bitbang_setup_transfer +EXPORT_SYMBOL_GPL drivers/spi/spi-bitbang 0x97dff2ca spi_bitbang_cleanup +EXPORT_SYMBOL_GPL drivers/spi/spi-bitbang 0xa654968a spi_bitbang_stop +EXPORT_SYMBOL_GPL drivers/spi/spi-bitbang 0xbcc89136 spi_bitbang_setup +EXPORT_SYMBOL_GPL drivers/spi/spi-dw 0x4ea8dedb dw_spi_update_cr0_v1_01a +EXPORT_SYMBOL_GPL drivers/spi/spi-dw 0x899028b5 dw_spi_set_cs +EXPORT_SYMBOL_GPL drivers/spi/spi-dw 0x961b2310 dw_spi_dma_setup_generic +EXPORT_SYMBOL_GPL drivers/spi/spi-dw 0x9b36c225 dw_spi_add_host +EXPORT_SYMBOL_GPL drivers/spi/spi-dw 0xa12856ef dw_spi_resume_host +EXPORT_SYMBOL_GPL drivers/spi/spi-dw 0xa7110416 dw_spi_remove_host +EXPORT_SYMBOL_GPL drivers/spi/spi-dw 0xc95f5d19 dw_spi_suspend_host +EXPORT_SYMBOL_GPL drivers/spi/spi-dw 0xd015bd3f dw_spi_dma_setup_mfld +EXPORT_SYMBOL_GPL drivers/spi/spi-dw 0xe563d111 dw_spi_update_cr0 +EXPORT_SYMBOL_GPL drivers/spi/spi-loopback-test 0x0a2ad623 spi_test_execute_msg +EXPORT_SYMBOL_GPL drivers/spi/spi-loopback-test 0x3459645e spi_test_run_test +EXPORT_SYMBOL_GPL drivers/spi/spi-loopback-test 0x552331e6 spi_test_run_tests +EXPORT_SYMBOL_GPL drivers/spmi/spmi 0x0c2790c4 spmi_controller_alloc +EXPORT_SYMBOL_GPL drivers/spmi/spmi 0x2f0e5c74 spmi_command_shutdown +EXPORT_SYMBOL_GPL drivers/spmi/spmi 0x39293a20 spmi_device_alloc +EXPORT_SYMBOL_GPL drivers/spmi/spmi 0x4213868e spmi_command_reset +EXPORT_SYMBOL_GPL drivers/spmi/spmi 0x559e6f41 spmi_command_sleep +EXPORT_SYMBOL_GPL drivers/spmi/spmi 0x623b20ca spmi_command_wakeup +EXPORT_SYMBOL_GPL drivers/spmi/spmi 0x6eb25f89 spmi_register_read +EXPORT_SYMBOL_GPL drivers/spmi/spmi 0x7847485c spmi_register_zero_write +EXPORT_SYMBOL_GPL drivers/spmi/spmi 0x886b0692 spmi_register_write +EXPORT_SYMBOL_GPL drivers/spmi/spmi 0x8bcd5b70 spmi_ext_register_write +EXPORT_SYMBOL_GPL drivers/spmi/spmi 0x9045d746 spmi_controller_remove +EXPORT_SYMBOL_GPL drivers/spmi/spmi 0x9cbe2d1c spmi_ext_register_read +EXPORT_SYMBOL_GPL drivers/spmi/spmi 0xa904b590 spmi_controller_add +EXPORT_SYMBOL_GPL drivers/spmi/spmi 0xafccc789 spmi_ext_register_writel +EXPORT_SYMBOL_GPL drivers/spmi/spmi 0xc65ea45d __spmi_driver_register +EXPORT_SYMBOL_GPL drivers/spmi/spmi 0xce3c9849 spmi_device_remove +EXPORT_SYMBOL_GPL drivers/spmi/spmi 0xeda1f625 spmi_device_add +EXPORT_SYMBOL_GPL drivers/spmi/spmi 0xf0dc4945 spmi_ext_register_readl +EXPORT_SYMBOL_GPL drivers/ssb/ssb 0x853004e8 ssb_pmu_spuravoid_pllupdate +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x01a1b4b8 comedi_alloc_subdevices +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x0cd330f4 range_unknown +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x1bc0026c comedi_buf_read_n_available +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x1c8eb6eb comedi_inc_scan_progress +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x1e8b8313 comedi_alloc_spriv +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x1f6215d1 comedi_dev_put +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x21102f87 range_0_32mA +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x2f0ad9d3 range_bipolar5 +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x30639a07 comedi_driver_unregister +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x4236eaaf range_4_20mA +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x4904ef10 comedi_alloc_subdev_readback +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x4b9228e8 comedi_bytes_per_scan +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x4fe634f3 range_bipolar2_5 +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x5196c175 comedi_auto_config +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x54a33517 comedi_alloc_devpriv +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x5951d6c4 comedi_handle_events +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x69c82042 comedi_check_chanlist +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x6f5a71b9 comedi_set_spriv_auto_free +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x6ff40f05 comedi_buf_read_alloc +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x7918bea5 comedi_readback_insn_read +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x7a47587b comedi_driver_register +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x7d887db8 comedi_legacy_detach +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x8113872c range_unipolar10 +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x8f73b074 comedi_bytes_per_scan_cmd +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x8f9dc076 comedi_nscans_left +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x9605cd7a comedi_buf_write_alloc +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x977d6118 comedi_is_subdevice_running +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x9f87309d comedi_buf_write_free +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0xa66da5f6 comedi_dio_insn_config +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0xababa48e comedi_set_hw_dev +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0xb679cebc range_0_20mA +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0xbb52fc7f range_bipolar10 +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0xbdbe75c6 range_unipolar2_5 +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0xc4c7a6cb comedi_request_region +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0xc73d2c5b comedi_buf_write_samples +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0xcbf8ecf7 __comedi_request_region +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0xd693f16a comedi_dio_update_state +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0xd74d650d comedi_dev_get_from_minor +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0xd79a2001 comedi_buf_read_free +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0xdb2044b2 range_unipolar5 +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0xe026b091 comedi_nsamples_left +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0xe107a39e comedi_timeout +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0xe2766d14 comedi_buf_read_samples +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0xe3c6d694 comedi_event +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0xe58fdc77 comedi_auto_unconfig +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0xfc82ca94 comedi_load_firmware +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi_pci 0x263531c1 comedi_pci_enable +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi_pci 0x3104bf06 comedi_pci_auto_unconfig +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi_pci 0x3e7671bc comedi_to_pci_dev +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi_pci 0x843d8234 comedi_pci_detach +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi_pci 0x8fd11537 comedi_pci_driver_unregister +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi_pci 0xb3d65cf0 comedi_pci_disable +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi_pci 0xb7d69458 comedi_pci_driver_register +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi_pci 0xfe4ea249 comedi_pci_auto_config +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi_usb 0x27fd3d08 comedi_to_usb_interface +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi_usb 0x59fcc9e0 comedi_usb_auto_unconfig +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi_usb 0x60a31ea1 comedi_usb_driver_register +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi_usb 0x87c0ec18 comedi_usb_driver_unregister +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi_usb 0xb901318f comedi_usb_auto_config +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi_usb 0xca33f63e comedi_to_usb_dev +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/addi_watchdog 0x79f4a6cf addi_watchdog_reset +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/addi_watchdog 0xfeaecc92 addi_watchdog_init +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/amplc_dio200_common 0x4b0e0c0a amplc_dio200_common_attach +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/amplc_dio200_common 0xa5da426d amplc_dio200_set_enhance +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/amplc_pc236_common 0x5c42c5ed amplc_pc236_common_attach +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/comedi_8254 0x3684b105 comedi_8254_load +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/comedi_8254 0x4b851c10 comedi_8254_update_divisors +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/comedi_8254 0x60c7746a comedi_8254_status +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/comedi_8254 0x6a662e61 comedi_8254_set_mode +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/comedi_8254 0x724f342c comedi_8254_subdevice_init +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/comedi_8254 0x76b9360b comedi_8254_write +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/comedi_8254 0x797554a2 comedi_8254_init +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/comedi_8254 0x89b39e35 comedi_8254_cascade_ns_to_timer +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/comedi_8254 0xa0cb11e6 comedi_8254_set_busy +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/comedi_8254 0xa7bd19a0 comedi_8254_mm_init +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/comedi_8254 0xbfba95a9 comedi_8254_pacer_enable +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/comedi_8254 0xd77d8cbc comedi_8254_ns_to_timer +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/comedi_8254 0xdc95568a comedi_8254_read +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/comedi_8255 0x2a8bc865 subdev_8255_mm_init +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/comedi_8255 0x9c361d84 subdev_8255_regbase +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/comedi_8255 0xfa9f149a subdev_8255_init +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/das08 0x87d54840 das08_common_attach +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/mite 0x09b040b4 mite_sync_dma +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/mite 0x18aa04e0 mite_dma_arm +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/mite 0x1b7d5858 mite_free_ring +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/mite 0x21dbfb0d mite_prep_dma +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/mite 0x321bfc2e mite_ack_linkc +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/mite 0x4996e1ae mite_release_channel +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/mite 0x53528e06 mite_alloc_ring +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/mite 0x6fd3c060 mite_bytes_in_transit +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/mite 0x7be7a87e mite_dma_disarm +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/mite 0x883aee69 mite_done +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/mite 0x99c2ba8c mite_detach +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/mite 0xaf10ef8a mite_request_channel +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/mite 0xb44bdc76 mite_init_ring_descriptors +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/mite 0xbc09a07c mite_buf_change +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/mite 0xd4cc9bb8 mite_request_channel_in_range +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/mite 0xfc8ce827 mite_attach +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/ni_labpc_common 0xac33f74d labpc_common_attach +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/ni_labpc_common 0xe3135cc2 labpc_common_detach +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/ni_routing 0x076bc308 ni_find_route_source +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/ni_routing 0x0921123e ni_lookup_route_register +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/ni_routing 0x1facf7f8 ni_is_cmd_dest +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/ni_routing 0x64443d67 ni_get_valid_routes +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/ni_routing 0x6c18c54e ni_count_valid_routes +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/ni_routing 0x85e75c94 ni_assign_device_routes +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/ni_routing 0x863a306d ni_sort_device_routes +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/ni_routing 0x8ab47ba4 ni_route_set_has_source +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/ni_routing 0x8f0f0901 ni_find_route_set +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/ni_routing 0xb3e302a3 ni_route_to_register +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/ni_tio 0x01550702 ni_tio_insn_config +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/ni_tio 0x05eb27b9 ni_tio_set_routing +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/ni_tio 0x4fbe9e03 ni_tio_set_gate_src +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/ni_tio 0x5b60889e ni_tio_read +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/ni_tio 0x5c489efa ni_tio_get_routing +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/ni_tio 0x6bbc59ff ni_gpct_device_destroy +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/ni_tio 0x7ec94d08 ni_tio_insn_write +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/ni_tio 0xaa1f0fec ni_tio_unset_routing +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/ni_tio 0xbc008800 ni_tio_arm +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/ni_tio 0xcccbbaa8 ni_tio_init_counter +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/ni_tio 0xd19773c8 ni_tio_set_gate_src_raw +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/ni_tio 0xda53fd97 ni_tio_set_bits +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/ni_tio 0xdfa09641 ni_tio_get_soft_copy +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/ni_tio 0xe65953c2 ni_gpct_device_construct +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/ni_tio 0xeeea8042 ni_tio_write +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/ni_tio 0xfca50462 ni_tio_insn_read +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/ni_tiocmd 0x01e21c6a ni_tio_cmdtest +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/ni_tiocmd 0x06cdf73e ni_tio_cancel +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/ni_tiocmd 0x3d50904e ni_tio_cmd +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/ni_tiocmd 0x55109a71 ni_tio_acknowledge +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/ni_tiocmd 0x905a6596 ni_tio_handle_interrupt +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/ni_tiocmd 0xbb955f97 ni_tio_set_mite_channel +EXPORT_SYMBOL_GPL drivers/staging/comedi/kcomedilib/kcomedilib 0x0945ae37 comedi_find_subdevice_by_type +EXPORT_SYMBOL_GPL drivers/staging/comedi/kcomedilib/kcomedilib 0x6f82e434 comedi_dio_config +EXPORT_SYMBOL_GPL drivers/staging/comedi/kcomedilib/kcomedilib 0x86299acd comedi_dio_bitfield2 +EXPORT_SYMBOL_GPL drivers/staging/comedi/kcomedilib/kcomedilib 0x9268d39c comedi_open +EXPORT_SYMBOL_GPL drivers/staging/comedi/kcomedilib/kcomedilib 0xa614b8f6 comedi_close +EXPORT_SYMBOL_GPL drivers/staging/comedi/kcomedilib/kcomedilib 0xb33ada58 comedi_get_n_channels +EXPORT_SYMBOL_GPL drivers/staging/comedi/kcomedilib/kcomedilib 0xdc9f36ce comedi_dio_get_config +EXPORT_SYMBOL_GPL drivers/staging/fieldbus/anybuss/anybuss_core 0x27ea0dde anybuss_finish_init +EXPORT_SYMBOL_GPL drivers/staging/fieldbus/anybuss/anybuss_core 0x321ab283 anybuss_client_driver_unregister +EXPORT_SYMBOL_GPL drivers/staging/fieldbus/anybuss/anybuss_core 0x43858ebf anybuss_send_msg +EXPORT_SYMBOL_GPL drivers/staging/fieldbus/anybuss/anybuss_core 0x68791429 anybuss_recv_msg +EXPORT_SYMBOL_GPL drivers/staging/fieldbus/anybuss/anybuss_core 0x7562b925 anybuss_write_input +EXPORT_SYMBOL_GPL drivers/staging/fieldbus/anybuss/anybuss_core 0x772607f0 anybuss_host_common_probe +EXPORT_SYMBOL_GPL drivers/staging/fieldbus/anybuss/anybuss_core 0x96bb0069 anybuss_client_driver_register +EXPORT_SYMBOL_GPL drivers/staging/fieldbus/anybuss/anybuss_core 0x9706da74 devm_anybuss_host_common_probe +EXPORT_SYMBOL_GPL drivers/staging/fieldbus/anybuss/anybuss_core 0xae83819d anybuss_read_fbctrl +EXPORT_SYMBOL_GPL drivers/staging/fieldbus/anybuss/anybuss_core 0xb0f4f0b7 anybuss_start_init +EXPORT_SYMBOL_GPL drivers/staging/fieldbus/anybuss/anybuss_core 0xc33798db anybuss_set_power +EXPORT_SYMBOL_GPL drivers/staging/fieldbus/anybuss/anybuss_core 0xcb9b64d6 anybuss_send_ext +EXPORT_SYMBOL_GPL drivers/staging/fieldbus/anybuss/anybuss_core 0xe57e12f3 anybuss_read_output +EXPORT_SYMBOL_GPL drivers/staging/fieldbus/anybuss/anybuss_core 0xfce879ad anybuss_host_common_remove +EXPORT_SYMBOL_GPL drivers/staging/fieldbus/fieldbus_dev 0x48c8f8d8 fieldbus_dev_register +EXPORT_SYMBOL_GPL drivers/staging/fieldbus/fieldbus_dev 0x79bf65bb fieldbus_dev_area_updated +EXPORT_SYMBOL_GPL drivers/staging/fieldbus/fieldbus_dev 0x8f26c370 fieldbus_dev_online_changed +EXPORT_SYMBOL_GPL drivers/staging/fieldbus/fieldbus_dev 0xe54fe06f fieldbus_dev_unregister +EXPORT_SYMBOL_GPL drivers/staging/greybus/gb-audio-apbridgea 0x0c3ea7b5 gb_audio_apbridgea_shutdown_tx +EXPORT_SYMBOL_GPL drivers/staging/greybus/gb-audio-apbridgea 0x3a996d7b gb_audio_apbridgea_start_tx +EXPORT_SYMBOL_GPL drivers/staging/greybus/gb-audio-apbridgea 0x5ed5d0fa gb_audio_apbridgea_shutdown_rx +EXPORT_SYMBOL_GPL drivers/staging/greybus/gb-audio-apbridgea 0x6695eece gb_audio_apbridgea_set_tx_data_size +EXPORT_SYMBOL_GPL drivers/staging/greybus/gb-audio-apbridgea 0x71d9c2eb gb_audio_apbridgea_register_cport +EXPORT_SYMBOL_GPL drivers/staging/greybus/gb-audio-apbridgea 0x77399693 gb_audio_apbridgea_set_rx_data_size +EXPORT_SYMBOL_GPL drivers/staging/greybus/gb-audio-apbridgea 0x839d7b19 gb_audio_apbridgea_prepare_rx +EXPORT_SYMBOL_GPL drivers/staging/greybus/gb-audio-apbridgea 0xa05b8bb0 gb_audio_apbridgea_start_rx +EXPORT_SYMBOL_GPL drivers/staging/greybus/gb-audio-apbridgea 0xa47bd50c gb_audio_apbridgea_stop_rx +EXPORT_SYMBOL_GPL drivers/staging/greybus/gb-audio-apbridgea 0xcab11710 gb_audio_apbridgea_set_config +EXPORT_SYMBOL_GPL drivers/staging/greybus/gb-audio-apbridgea 0xd1760c56 gb_audio_apbridgea_prepare_tx +EXPORT_SYMBOL_GPL drivers/staging/greybus/gb-audio-apbridgea 0xf690a243 gb_audio_apbridgea_stop_tx +EXPORT_SYMBOL_GPL drivers/staging/greybus/gb-audio-apbridgea 0xfd0da165 gb_audio_apbridgea_unregister_cport +EXPORT_SYMBOL_GPL drivers/staging/greybus/gb-audio-gb 0x196917b1 gb_audio_gb_enable_widget +EXPORT_SYMBOL_GPL drivers/staging/greybus/gb-audio-gb 0x1f1813d7 gb_audio_gb_set_tx_data_size +EXPORT_SYMBOL_GPL drivers/staging/greybus/gb-audio-gb 0x2634bc92 gb_audio_gb_deactivate_tx +EXPORT_SYMBOL_GPL drivers/staging/greybus/gb-audio-gb 0x2e62d574 gb_audio_gb_get_topology +EXPORT_SYMBOL_GPL drivers/staging/greybus/gb-audio-gb 0x4229756a gb_audio_gb_set_pcm +EXPORT_SYMBOL_GPL drivers/staging/greybus/gb-audio-gb 0x492ed1d1 gb_audio_gb_set_control +EXPORT_SYMBOL_GPL drivers/staging/greybus/gb-audio-gb 0x60c8c885 gb_audio_gb_deactivate_rx +EXPORT_SYMBOL_GPL drivers/staging/greybus/gb-audio-gb 0x897ef1f3 gb_audio_gb_get_control +EXPORT_SYMBOL_GPL drivers/staging/greybus/gb-audio-gb 0x8b735a6f gb_audio_gb_get_pcm +EXPORT_SYMBOL_GPL drivers/staging/greybus/gb-audio-gb 0x9183c56f gb_audio_gb_activate_tx +EXPORT_SYMBOL_GPL drivers/staging/greybus/gb-audio-gb 0xd667e90f gb_audio_gb_set_rx_data_size +EXPORT_SYMBOL_GPL drivers/staging/greybus/gb-audio-gb 0xd77fb178 gb_audio_gb_activate_rx +EXPORT_SYMBOL_GPL drivers/staging/greybus/gb-audio-gb 0xe77023bc gb_audio_gb_disable_widget +EXPORT_SYMBOL_GPL drivers/staging/greybus/gb-audio-manager 0x19e9e6b1 gb_audio_manager_remove_all +EXPORT_SYMBOL_GPL drivers/staging/greybus/gb-audio-manager 0x32e6391e gb_audio_manager_remove +EXPORT_SYMBOL_GPL drivers/staging/greybus/gb-audio-manager 0x5a108b0f gb_audio_manager_add +EXPORT_SYMBOL_GPL drivers/staging/greybus/gb-audio-manager 0x79eef2f8 gb_audio_manager_dump_all +EXPORT_SYMBOL_GPL drivers/staging/greybus/gb-audio-manager 0xa95cfb4f gb_audio_manager_put_module +EXPORT_SYMBOL_GPL drivers/staging/greybus/gb-audio-manager 0xaeac8ca2 gb_audio_manager_dump_module +EXPORT_SYMBOL_GPL drivers/staging/greybus/gb-audio-manager 0xd3253735 gb_audio_manager_get_module +EXPORT_SYMBOL_GPL drivers/staging/greybus/gb-gbphy 0x73604d02 gb_gbphy_register_driver +EXPORT_SYMBOL_GPL drivers/staging/greybus/gb-gbphy 0x99f11db4 gb_gbphy_deregister_driver +EXPORT_SYMBOL_GPL drivers/staging/greybus/gb-spilib 0x4ef03d79 gb_spilib_master_init +EXPORT_SYMBOL_GPL drivers/staging/greybus/gb-spilib 0x952596a8 gb_spilib_master_exit +EXPORT_SYMBOL_GPL drivers/staging/iio/addac/adt7316 0x13965887 adt7316_pm_ops +EXPORT_SYMBOL_GPL drivers/staging/media/allegro-dvt/allegro 0x09d3f6ec nal_h264_write_filler +EXPORT_SYMBOL_GPL drivers/staging/media/allegro-dvt/allegro 0x3b825582 nal_h264_read_pps +EXPORT_SYMBOL_GPL drivers/staging/media/allegro-dvt/allegro 0x8383145f nal_h264_write_pps +EXPORT_SYMBOL_GPL drivers/staging/media/allegro-dvt/allegro 0xa2487f58 nal_h264_read_filler +EXPORT_SYMBOL_GPL drivers/staging/media/allegro-dvt/allegro 0xd3e0489a nal_h264_read_sps +EXPORT_SYMBOL_GPL drivers/staging/media/allegro-dvt/allegro 0xf30c8c83 nal_h264_write_sps +EXPORT_SYMBOL_GPL drivers/staging/media/meson/vdec/meson-vdec 0x115655e9 amvdec_am21c_body_size +EXPORT_SYMBOL_GPL drivers/staging/media/meson/vdec/meson-vdec 0x14eb8b1a codec_hevc_fill_mmu_map +EXPORT_SYMBOL_GPL drivers/staging/media/meson/vdec/meson-vdec 0x17f0e0a8 amvdec_write_dos_bits +EXPORT_SYMBOL_GPL drivers/staging/media/meson/vdec/meson-vdec 0x1cb1e6d9 amvdec_am21c_size +EXPORT_SYMBOL_GPL drivers/staging/media/meson/vdec/meson-vdec 0x26517aba codec_hevc_setup_buffers +EXPORT_SYMBOL_GPL drivers/staging/media/meson/vdec/meson-vdec 0x2e721855 amvdec_write_parser +EXPORT_SYMBOL_GPL drivers/staging/media/meson/vdec/meson-vdec 0x3e8bb814 codec_hevc_setup_decode_head +EXPORT_SYMBOL_GPL drivers/staging/media/meson/vdec/meson-vdec 0x5c0ebdb8 amvdec_write_dos +EXPORT_SYMBOL_GPL drivers/staging/media/meson/vdec/meson-vdec 0x5d9f5f18 amvdec_get_output_size +EXPORT_SYMBOL_GPL drivers/staging/media/meson/vdec/meson-vdec 0x5ff35ee8 amvdec_am21c_head_size +EXPORT_SYMBOL_GPL drivers/staging/media/meson/vdec/meson-vdec 0x6424a40d amvdec_read_dos +EXPORT_SYMBOL_GPL drivers/staging/media/meson/vdec/meson-vdec 0x7139bafb amvdec_add_ts +EXPORT_SYMBOL_GPL drivers/staging/media/meson/vdec/meson-vdec 0x8249660c amvdec_set_par_from_dar +EXPORT_SYMBOL_GPL drivers/staging/media/meson/vdec/meson-vdec 0xa8951419 amvdec_dst_buf_done_idx +EXPORT_SYMBOL_GPL drivers/staging/media/meson/vdec/meson-vdec 0xac1aec24 amvdec_src_change +EXPORT_SYMBOL_GPL drivers/staging/media/meson/vdec/meson-vdec 0xbc9814bc amvdec_abort +EXPORT_SYMBOL_GPL drivers/staging/media/meson/vdec/meson-vdec 0xbf9ae18d amvdec_remove_ts +EXPORT_SYMBOL_GPL drivers/staging/media/meson/vdec/meson-vdec 0xc3028024 codec_hevc_free_fbc_buffers +EXPORT_SYMBOL_GPL drivers/staging/media/meson/vdec/meson-vdec 0xd0244cdd amvdec_dst_buf_done +EXPORT_SYMBOL_GPL drivers/staging/media/meson/vdec/meson-vdec 0xd02be5a1 amvdec_clear_dos_bits +EXPORT_SYMBOL_GPL drivers/staging/media/meson/vdec/meson-vdec 0xe25e495a codec_hevc_free_mmu_headers +EXPORT_SYMBOL_GPL drivers/staging/media/meson/vdec/meson-vdec 0xe2fcf617 amvdec_dst_buf_done_offset +EXPORT_SYMBOL_GPL drivers/staging/media/meson/vdec/meson-vdec 0xef4d5772 amvdec_read_parser +EXPORT_SYMBOL_GPL drivers/staging/media/meson/vdec/meson-vdec 0xf19d1be3 amvdec_set_canvases +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0x17f56951 spk_do_catch_up_unicode +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0x1e39eb14 synth_putws +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0x325b459d spk_var_show +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0x36df09b0 spk_serial_io_ops +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0x41a160e5 synth_buffer_empty +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0x4449e1dd synth_buffer_clear +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0x466f5eb7 synth_putwc +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0x4d96e0d0 synth_add +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0x5335e710 spk_serial_synth_probe +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0x5f9b26f8 spk_ttyio_synth_probe +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0x63e3ff6c spk_synth_is_alive_restart +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0x6e29ebe1 spk_synth_get_index +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0x75a5f80d spk_var_store +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0x76d40046 synth_buffer_skip_nonlatin1 +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0x7b6a7aa7 spk_serial_synth_immediate +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0x84dad068 synth_buffer_getc +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0x8c82dfca synth_request_region +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0x8e50055a spk_stop_serial_interrupt +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0x8fe0db01 synth_putwc_s +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0x9db74b45 synth_current +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0xaadb0612 synth_buffer_peek +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0xae7d6424 spk_ttyio_release +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0xb734cb9d speakup_event +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0xbbd15a51 speakup_start_ttys +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0xc2056b3d spk_synth_flush +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0xc2d6e86f synth_remove +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0xc319c604 synth_putws_s +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0xccab1170 spk_ttyio_ops +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0xce3f61f9 spk_synth_is_alive_nop +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0xd8fd86cf synth_release_region +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0xd93829dd speakup_info +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0xe194d0ef synth_printf +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0xe7cd4558 spk_serial_release +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0xf56c4e52 spk_ttyio_synth_immediate +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0xfaaeee02 spk_do_catch_up +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0xfd189eef spk_get_var +EXPORT_SYMBOL_GPL drivers/staging/wilc1000/wilc1000 0x11cf75a6 host_sleep_notify +EXPORT_SYMBOL_GPL drivers/staging/wilc1000/wilc1000 0x2c3918f6 wilc_netdev_cleanup +EXPORT_SYMBOL_GPL drivers/staging/wilc1000/wilc1000 0x3fe1bd7a host_wakeup_notify +EXPORT_SYMBOL_GPL drivers/staging/wilc1000/wilc1000 0x62b6b102 wilc_handle_isr +EXPORT_SYMBOL_GPL drivers/staging/wilc1000/wilc1000 0x7168a43e wilc_cfg80211_init +EXPORT_SYMBOL_GPL drivers/staging/wilc1000/wilc1000 0x87d058ba chip_wakeup +EXPORT_SYMBOL_GPL drivers/staging/wilc1000/wilc1000 0x8adeb4fc chip_allow_sleep +EXPORT_SYMBOL_GPL drivers/tee/tee 0x145da236 tee_client_open_context +EXPORT_SYMBOL_GPL drivers/tee/tee 0x229b5d03 tee_shm_get_from_id +EXPORT_SYMBOL_GPL drivers/tee/tee 0x27173b57 tee_client_close_context +EXPORT_SYMBOL_GPL drivers/tee/tee 0x35d18e6f tee_client_open_session +EXPORT_SYMBOL_GPL drivers/tee/tee 0x3da2aa1c tee_device_register +EXPORT_SYMBOL_GPL drivers/tee/tee 0x40736b33 tee_shm_va2pa +EXPORT_SYMBOL_GPL drivers/tee/tee 0x5e17a62b tee_shm_pool_free +EXPORT_SYMBOL_GPL drivers/tee/tee 0x5f043c25 tee_shm_pool_alloc_res_mem +EXPORT_SYMBOL_GPL drivers/tee/tee 0x64557202 tee_shm_pa2va +EXPORT_SYMBOL_GPL drivers/tee/tee 0x684a19a1 tee_device_unregister +EXPORT_SYMBOL_GPL drivers/tee/tee 0x784864b8 tee_shm_pool_alloc +EXPORT_SYMBOL_GPL drivers/tee/tee 0x85fd9922 tee_session_calc_client_uuid +EXPORT_SYMBOL_GPL drivers/tee/tee 0x88cf4ec8 tee_bus_type +EXPORT_SYMBOL_GPL drivers/tee/tee 0x89c43926 tee_get_drvdata +EXPORT_SYMBOL_GPL drivers/tee/tee 0xa462c433 tee_device_alloc +EXPORT_SYMBOL_GPL drivers/tee/tee 0xafe22c3a tee_shm_get_pa +EXPORT_SYMBOL_GPL drivers/tee/tee 0xb3e67962 tee_client_invoke_func +EXPORT_SYMBOL_GPL drivers/tee/tee 0xb7207f1c tee_shm_pool_mgr_alloc_res_mem +EXPORT_SYMBOL_GPL drivers/tee/tee 0xcd2f6ac1 tee_client_get_version +EXPORT_SYMBOL_GPL drivers/tee/tee 0xcea3471a tee_shm_free +EXPORT_SYMBOL_GPL drivers/tee/tee 0xe6a8ac53 tee_shm_alloc +EXPORT_SYMBOL_GPL drivers/tee/tee 0xf8eae984 tee_client_close_session +EXPORT_SYMBOL_GPL drivers/tee/tee 0xf9c17f19 tee_shm_get_va +EXPORT_SYMBOL_GPL drivers/tee/tee 0xfc537518 tee_shm_register +EXPORT_SYMBOL_GPL drivers/tee/tee 0xff0a7881 tee_shm_put +EXPORT_SYMBOL_GPL drivers/thunderbolt/thunderbolt 0x01d23ee1 tb_property_create_dir +EXPORT_SYMBOL_GPL drivers/thunderbolt/thunderbolt 0x0280269c tb_xdomain_find_by_route +EXPORT_SYMBOL_GPL drivers/thunderbolt/thunderbolt 0x04ea56e9 tb_ring_stop +EXPORT_SYMBOL_GPL drivers/thunderbolt/thunderbolt 0x1edec226 tb_ring_alloc_tx +EXPORT_SYMBOL_GPL drivers/thunderbolt/thunderbolt 0x30870fee tb_ring_start +EXPORT_SYMBOL_GPL drivers/thunderbolt/thunderbolt 0x32b24ee2 tb_xdomain_request +EXPORT_SYMBOL_GPL drivers/thunderbolt/thunderbolt 0x393b4f2f tb_property_free_dir +EXPORT_SYMBOL_GPL drivers/thunderbolt/thunderbolt 0x3c01aeeb tb_ring_free +EXPORT_SYMBOL_GPL drivers/thunderbolt/thunderbolt 0x3fe3c46d tb_ring_poll +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 0x5312f748 tb_service_type +EXPORT_SYMBOL_GPL drivers/thunderbolt/thunderbolt 0x603249ed tb_unregister_property_dir +EXPORT_SYMBOL_GPL drivers/thunderbolt/thunderbolt 0x658e3d97 tb_property_add_immediate +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 0x7c43871a tb_ring_poll_complete +EXPORT_SYMBOL_GPL drivers/thunderbolt/thunderbolt 0x7f235768 tb_xdomain_enable_paths +EXPORT_SYMBOL_GPL drivers/thunderbolt/thunderbolt 0x8b62f95e tb_property_add_dir +EXPORT_SYMBOL_GPL drivers/thunderbolt/thunderbolt 0x903edba1 tb_xdomain_response +EXPORT_SYMBOL_GPL drivers/thunderbolt/thunderbolt 0x9580b4ab __tb_ring_enqueue +EXPORT_SYMBOL_GPL drivers/thunderbolt/thunderbolt 0x9a559be6 tb_unregister_service_driver +EXPORT_SYMBOL_GPL drivers/thunderbolt/thunderbolt 0xa288e137 tb_xdomain_find_by_uuid +EXPORT_SYMBOL_GPL drivers/thunderbolt/thunderbolt 0xa3d2b403 tb_property_add_data +EXPORT_SYMBOL_GPL drivers/thunderbolt/thunderbolt 0xa7ec422f tb_register_service_driver +EXPORT_SYMBOL_GPL drivers/thunderbolt/thunderbolt 0xb7c7cdce tb_property_add_text +EXPORT_SYMBOL_GPL drivers/thunderbolt/thunderbolt 0xbd4d1d7d tb_xdomain_type +EXPORT_SYMBOL_GPL drivers/thunderbolt/thunderbolt 0xddf08896 tb_xdomain_disable_paths +EXPORT_SYMBOL_GPL drivers/thunderbolt/thunderbolt 0xe590cf26 tb_ring_alloc_rx +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/tty/n_tracesink 0x8a422e5e n_tracesink_datadrain +EXPORT_SYMBOL_GPL drivers/uio/uio 0x0404e5b6 __uio_register_device +EXPORT_SYMBOL_GPL drivers/uio/uio 0x3acb0ed9 uio_event_notify +EXPORT_SYMBOL_GPL drivers/uio/uio 0xc1a626c5 uio_unregister_device +EXPORT_SYMBOL_GPL drivers/uio/uio 0xe0646cea __devm_uio_register_device +EXPORT_SYMBOL_GPL drivers/usb/atm/usbatm 0x36bf0764 usbatm_usb_disconnect +EXPORT_SYMBOL_GPL drivers/usb/atm/usbatm 0xfa970724 usbatm_usb_probe +EXPORT_SYMBOL_GPL drivers/usb/chipidea/ci_hdrc 0x904e07ca hw_phymode_configure +EXPORT_SYMBOL_GPL drivers/usb/chipidea/ci_hdrc 0x9597f5fb ci_hdrc_remove_device +EXPORT_SYMBOL_GPL drivers/usb/chipidea/ci_hdrc 0xb0d99aab ci_hdrc_add_device +EXPORT_SYMBOL_GPL drivers/usb/chipidea/usbmisc_imx 0x23935c94 imx_usbmisc_init +EXPORT_SYMBOL_GPL drivers/usb/chipidea/usbmisc_imx 0x7049f52b imx_usbmisc_set_wakeup +EXPORT_SYMBOL_GPL drivers/usb/chipidea/usbmisc_imx 0x719d09ab imx_usbmisc_charger_detection +EXPORT_SYMBOL_GPL drivers/usb/chipidea/usbmisc_imx 0xa384d94c imx_usbmisc_hsic_set_connect +EXPORT_SYMBOL_GPL drivers/usb/chipidea/usbmisc_imx 0xe8fe5096 imx_usbmisc_init_post +EXPORT_SYMBOL_GPL drivers/usb/chipidea/usbmisc_imx 0xff313a02 imx_usbmisc_hsic_set_clk +EXPORT_SYMBOL_GPL drivers/usb/common/ulpi 0x15922cee ulpi_read +EXPORT_SYMBOL_GPL drivers/usb/common/ulpi 0x5ef93e36 ulpi_unregister_driver +EXPORT_SYMBOL_GPL drivers/usb/common/ulpi 0x668e1f2c ulpi_write +EXPORT_SYMBOL_GPL drivers/usb/common/ulpi 0x962c0438 ulpi_unregister_interface +EXPORT_SYMBOL_GPL drivers/usb/common/ulpi 0xac4a2280 ulpi_register_interface +EXPORT_SYMBOL_GPL drivers/usb/common/ulpi 0xdc82b5d9 __ulpi_register_driver +EXPORT_SYMBOL_GPL drivers/usb/gadget/function/u_audio 0x24888f71 u_audio_start_playback +EXPORT_SYMBOL_GPL drivers/usb/gadget/function/u_audio 0x449705d5 g_audio_setup +EXPORT_SYMBOL_GPL drivers/usb/gadget/function/u_audio 0x573ce539 g_audio_cleanup +EXPORT_SYMBOL_GPL drivers/usb/gadget/function/u_audio 0x6d832146 u_audio_stop_playback +EXPORT_SYMBOL_GPL drivers/usb/gadget/function/u_audio 0x9de86636 u_audio_start_capture +EXPORT_SYMBOL_GPL drivers/usb/gadget/function/u_audio 0xff011cd0 u_audio_stop_capture +EXPORT_SYMBOL_GPL drivers/usb/gadget/function/u_ether 0x00b5ee01 gether_get_qmult +EXPORT_SYMBOL_GPL drivers/usb/gadget/function/u_ether 0x10851f38 gether_connect +EXPORT_SYMBOL_GPL drivers/usb/gadget/function/u_ether 0x3646a90f gether_set_qmult +EXPORT_SYMBOL_GPL drivers/usb/gadget/function/u_ether 0x4b8df525 gether_register_netdev +EXPORT_SYMBOL_GPL drivers/usb/gadget/function/u_ether 0x6b1b3894 gether_set_dev_addr +EXPORT_SYMBOL_GPL drivers/usb/gadget/function/u_ether 0x8878cfa6 gether_cleanup +EXPORT_SYMBOL_GPL drivers/usb/gadget/function/u_ether 0x91a89e4c gether_setup_name_default +EXPORT_SYMBOL_GPL drivers/usb/gadget/function/u_ether 0xa99a92b8 gether_get_dev_addr +EXPORT_SYMBOL_GPL drivers/usb/gadget/function/u_ether 0xb5e59f20 gether_set_gadget +EXPORT_SYMBOL_GPL drivers/usb/gadget/function/u_ether 0xc49aab90 gether_setup_name +EXPORT_SYMBOL_GPL drivers/usb/gadget/function/u_ether 0xc62dc482 gether_get_ifname +EXPORT_SYMBOL_GPL drivers/usb/gadget/function/u_ether 0xc744b0f9 gether_disconnect +EXPORT_SYMBOL_GPL drivers/usb/gadget/function/u_ether 0xd391bea2 gether_get_host_addr +EXPORT_SYMBOL_GPL drivers/usb/gadget/function/u_ether 0xe3df1a20 gether_set_host_addr +EXPORT_SYMBOL_GPL drivers/usb/gadget/function/u_ether 0xe41db31b gether_get_host_addr_cdc +EXPORT_SYMBOL_GPL drivers/usb/gadget/function/u_ether 0xfb49ce0d gether_get_host_addr_u8 +EXPORT_SYMBOL_GPL drivers/usb/gadget/function/u_serial 0x222055f0 gserial_connect +EXPORT_SYMBOL_GPL drivers/usb/gadget/function/u_serial 0x33bfdca2 gserial_alloc_line +EXPORT_SYMBOL_GPL drivers/usb/gadget/function/u_serial 0x3c9e6cd5 gserial_resume +EXPORT_SYMBOL_GPL drivers/usb/gadget/function/u_serial 0x4a3df9d0 gs_alloc_req +EXPORT_SYMBOL_GPL drivers/usb/gadget/function/u_serial 0x60db48f5 gserial_get_console +EXPORT_SYMBOL_GPL drivers/usb/gadget/function/u_serial 0x60ea48a0 gs_free_req +EXPORT_SYMBOL_GPL drivers/usb/gadget/function/u_serial 0x64a191b7 gserial_disconnect +EXPORT_SYMBOL_GPL drivers/usb/gadget/function/u_serial 0xb6652875 gserial_free_line +EXPORT_SYMBOL_GPL drivers/usb/gadget/function/u_serial 0xc0a01527 gserial_set_console +EXPORT_SYMBOL_GPL drivers/usb/gadget/function/u_serial 0xe03690dd gserial_suspend +EXPORT_SYMBOL_GPL drivers/usb/gadget/function/u_serial 0xe89dc424 gserial_alloc_line_no_console +EXPORT_SYMBOL_GPL drivers/usb/gadget/function/usb_f_fs 0x358d3a32 ffs_name_dev +EXPORT_SYMBOL_GPL drivers/usb/gadget/function/usb_f_fs 0x57f469c5 ffs_lock +EXPORT_SYMBOL_GPL drivers/usb/gadget/function/usb_f_fs 0xeb13a23a ffs_single_dev +EXPORT_SYMBOL_GPL drivers/usb/gadget/function/usb_f_mass_storage 0x0658a15d fsg_store_inquiry_string +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 0x1b75ff92 fsg_store_nofua +EXPORT_SYMBOL_GPL drivers/usb/gadget/function/usb_f_mass_storage 0x1c99c2ea fsg_show_cdrom +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 0x2933ee1d fsg_ss_bulk_in_desc +EXPORT_SYMBOL_GPL drivers/usb/gadget/function/usb_f_mass_storage 0x31813b39 fsg_store_file +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 0x3b690ad5 fsg_show_removable +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 0x423845e4 fsg_ss_bulk_in_comp_desc +EXPORT_SYMBOL_GPL drivers/usb/gadget/function/usb_f_mass_storage 0x42a9ce20 fsg_show_file +EXPORT_SYMBOL_GPL drivers/usb/gadget/function/usb_f_mass_storage 0x505aad04 fsg_show_ro +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 0x5a3c192c fsg_show_nofua +EXPORT_SYMBOL_GPL drivers/usb/gadget/function/usb_f_mass_storage 0x68f215cf fsg_common_remove_lun +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 0x70522f96 fsg_store_removable +EXPORT_SYMBOL_GPL drivers/usb/gadget/function/usb_f_mass_storage 0x75d0b0bd fsg_store_cdrom +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 0x857b6dc2 fsg_hs_function +EXPORT_SYMBOL_GPL drivers/usb/gadget/function/usb_f_mass_storage 0x8d2d19fc fsg_store_ro +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 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 0xab6c68ac fsg_config_from_params +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 0xd195fa9e fsg_common_set_cdev +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 0xdee0a9de fsg_lun_open +EXPORT_SYMBOL_GPL drivers/usb/gadget/function/usb_f_mass_storage 0xedee970e fsg_lun_fsync_sub +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 0xf984cad5 fsg_lun_close +EXPORT_SYMBOL_GPL drivers/usb/gadget/function/usb_f_mass_storage 0xf9e13bf4 fsg_show_inquiry_string +EXPORT_SYMBOL_GPL drivers/usb/gadget/function/usb_f_rndis 0x22e21e3b rndis_rm_hdr +EXPORT_SYMBOL_GPL drivers/usb/gadget/function/usb_f_rndis 0x270a31d2 rndis_set_param_medium +EXPORT_SYMBOL_GPL drivers/usb/gadget/function/usb_f_rndis 0x384f3545 rndis_get_next_response +EXPORT_SYMBOL_GPL drivers/usb/gadget/function/usb_f_rndis 0x47642d41 rndis_msg_parser +EXPORT_SYMBOL_GPL drivers/usb/gadget/function/usb_f_rndis 0x54df2985 rndis_uninit +EXPORT_SYMBOL_GPL drivers/usb/gadget/function/usb_f_rndis 0x5e52fbef rndis_signal_disconnect +EXPORT_SYMBOL_GPL drivers/usb/gadget/function/usb_f_rndis 0x7e3777d6 rndis_deregister +EXPORT_SYMBOL_GPL drivers/usb/gadget/function/usb_f_rndis 0x82292a73 rndis_signal_connect +EXPORT_SYMBOL_GPL drivers/usb/gadget/function/usb_f_rndis 0x8fb77f1a rndis_free_response +EXPORT_SYMBOL_GPL drivers/usb/gadget/function/usb_f_rndis 0x937f97e4 rndis_add_hdr +EXPORT_SYMBOL_GPL drivers/usb/gadget/function/usb_f_rndis 0x9a095c7a rndis_register +EXPORT_SYMBOL_GPL drivers/usb/gadget/function/usb_f_rndis 0xaf7a8b94 rndis_set_param_dev +EXPORT_SYMBOL_GPL drivers/usb/gadget/function/usb_f_rndis 0xc842019e rndis_set_host_mac +EXPORT_SYMBOL_GPL drivers/usb/gadget/function/usb_f_rndis 0xdc449f28 rndis_set_param_vendor +EXPORT_SYMBOL_GPL drivers/usb/gadget/function/usb_f_rndis 0xec24868d rndis_borrow_net +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0x084b03f5 usb_ep_autoconfig_ss +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0x0c589aba usb_validate_langid +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0x0cb7e477 usb_ep_autoconfig_release +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0x18e99812 config_ep_by_speed_and_alt +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0x1d50590d usb_function_unregister +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0x2593a0c3 usb_composite_unregister +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0x26c7b899 usb_assign_descriptors +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0x276ae248 usb_get_function +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0x2e09263f usb_copy_descriptors +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0x37e593df usb_string_ids_tab +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0x41b56e8c config_ep_by_speed +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0x41e4f8eb usb_composite_overwrite_options +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0x4b34b0c0 usb_ep_autoconfig +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0x4beb505d usb_gadget_get_string +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0x51b2b6d2 usb_remove_function +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0x540887be unregister_gadget_item +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0x55391886 usb_otg_descriptor_init +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0x6136c479 usb_function_register +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0x658a487f usb_get_function_instance +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0x67551f0a usb_free_all_descriptors +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0x680428f5 usb_function_deactivate +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0x7a4a93d2 usb_otg_descriptor_alloc +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0x8e644fa8 usb_put_function +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0x8ecc95e1 usb_ep_autoconfig_reset +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0x8ed27bd3 usb_composite_setup_continue +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0x9952c2cd usb_string_id +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0xa39167d7 usb_put_function_instance +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0xa8ad13ae usb_composite_probe +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0xae2a5ee7 usb_add_function +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0xb14a5e00 usb_add_config_only +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0xb775db55 alloc_ep_req +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0xce946077 usb_gstrings_attach +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0xd2ea2134 usb_descriptor_fillbuf +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0xda865acb usb_add_config +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0xee011b19 usb_interface_id +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0xf28939e4 usb_function_activate +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0xf474a207 usb_gadget_config_buf +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0xfd4a68e8 usb_string_ids_n +EXPORT_SYMBOL_GPL drivers/usb/gadget/udc/snps_udc_core 0x12b74710 empty_req_queue +EXPORT_SYMBOL_GPL drivers/usb/gadget/udc/snps_udc_core 0x2d148a4d gadget_release +EXPORT_SYMBOL_GPL drivers/usb/gadget/udc/snps_udc_core 0x4746af86 udc_mask_unused_interrupts +EXPORT_SYMBOL_GPL drivers/usb/gadget/udc/snps_udc_core 0x5d01d078 udc_irq +EXPORT_SYMBOL_GPL drivers/usb/gadget/udc/snps_udc_core 0x716b2d87 free_dma_pools +EXPORT_SYMBOL_GPL drivers/usb/gadget/udc/snps_udc_core 0x87c5d494 udc_enable_dev_setup_interrupts +EXPORT_SYMBOL_GPL drivers/usb/gadget/udc/snps_udc_core 0x8ce62a35 udc_remove +EXPORT_SYMBOL_GPL drivers/usb/gadget/udc/snps_udc_core 0x8dad8c3c udc_basic_init +EXPORT_SYMBOL_GPL drivers/usb/gadget/udc/snps_udc_core 0x9ca92697 udc_probe +EXPORT_SYMBOL_GPL drivers/usb/gadget/udc/snps_udc_core 0xcefb1361 init_dma_pools +EXPORT_SYMBOL_GPL drivers/usb/gadget/udc/udc-core 0x01b12bfb usb_ep_free_request +EXPORT_SYMBOL_GPL drivers/usb/gadget/udc/udc-core 0x0210d999 usb_gadget_vbus_connect +EXPORT_SYMBOL_GPL drivers/usb/gadget/udc/udc-core 0x05818f50 usb_udc_vbus_handler +EXPORT_SYMBOL_GPL drivers/usb/gadget/udc/udc-core 0x07243717 usb_gadget_probe_driver +EXPORT_SYMBOL_GPL drivers/usb/gadget/udc/udc-core 0x088ef424 usb_gadget_udc_reset +EXPORT_SYMBOL_GPL drivers/usb/gadget/udc/udc-core 0x0a8c3b4b usb_ep_set_halt +EXPORT_SYMBOL_GPL drivers/usb/gadget/udc/udc-core 0x0acfe2e7 usb_ep_set_wedge +EXPORT_SYMBOL_GPL drivers/usb/gadget/udc/udc-core 0x0d90d784 usb_ep_fifo_flush +EXPORT_SYMBOL_GPL drivers/usb/gadget/udc/udc-core 0x164e5c24 usb_gadget_ep_match_desc +EXPORT_SYMBOL_GPL drivers/usb/gadget/udc/udc-core 0x35f8ab63 usb_del_gadget_udc +EXPORT_SYMBOL_GPL drivers/usb/gadget/udc/udc-core 0x47e3000e usb_gadget_vbus_disconnect +EXPORT_SYMBOL_GPL drivers/usb/gadget/udc/udc-core 0x49d9f030 usb_ep_fifo_status +EXPORT_SYMBOL_GPL drivers/usb/gadget/udc/udc-core 0x4a843352 usb_gadget_vbus_draw +EXPORT_SYMBOL_GPL drivers/usb/gadget/udc/udc-core 0x506ab3a9 usb_ep_queue +EXPORT_SYMBOL_GPL drivers/usb/gadget/udc/udc-core 0x50b88f41 usb_get_gadget_udc_name +EXPORT_SYMBOL_GPL drivers/usb/gadget/udc/udc-core 0x511f508a gadget_find_ep_by_name +EXPORT_SYMBOL_GPL drivers/usb/gadget/udc/udc-core 0x5fc294ef usb_ep_clear_halt +EXPORT_SYMBOL_GPL drivers/usb/gadget/udc/udc-core 0x6376349a usb_add_gadget_udc_release +EXPORT_SYMBOL_GPL drivers/usb/gadget/udc/udc-core 0x78c2a378 usb_gadget_frame_number +EXPORT_SYMBOL_GPL drivers/usb/gadget/udc/udc-core 0x7a41b9f2 usb_ep_set_maxpacket_limit +EXPORT_SYMBOL_GPL drivers/usb/gadget/udc/udc-core 0x7be89624 usb_gadget_giveback_request +EXPORT_SYMBOL_GPL drivers/usb/gadget/udc/udc-core 0x882077d5 usb_ep_dequeue +EXPORT_SYMBOL_GPL drivers/usb/gadget/udc/udc-core 0x9b647fcf usb_gadget_set_selfpowered +EXPORT_SYMBOL_GPL drivers/usb/gadget/udc/udc-core 0x9e95730b usb_gadget_unmap_request_by_dev +EXPORT_SYMBOL_GPL drivers/usb/gadget/udc/udc-core 0x9eb52803 usb_ep_disable +EXPORT_SYMBOL_GPL drivers/usb/gadget/udc/udc-core 0xa2dff914 usb_gadget_wakeup +EXPORT_SYMBOL_GPL drivers/usb/gadget/udc/udc-core 0xa9e74462 usb_ep_alloc_request +EXPORT_SYMBOL_GPL drivers/usb/gadget/udc/udc-core 0xaf201fa6 usb_ep_enable +EXPORT_SYMBOL_GPL drivers/usb/gadget/udc/udc-core 0xb1ee6d0a usb_gadget_clear_selfpowered +EXPORT_SYMBOL_GPL drivers/usb/gadget/udc/udc-core 0xb239afec usb_gadget_map_request_by_dev +EXPORT_SYMBOL_GPL drivers/usb/gadget/udc/udc-core 0xb60b12f7 usb_gadget_set_state +EXPORT_SYMBOL_GPL drivers/usb/gadget/udc/udc-core 0xccbee7c2 usb_gadget_deactivate +EXPORT_SYMBOL_GPL drivers/usb/gadget/udc/udc-core 0xd8cb7aef usb_gadget_disconnect +EXPORT_SYMBOL_GPL drivers/usb/gadget/udc/udc-core 0xde4a9fd7 usb_gadget_unmap_request +EXPORT_SYMBOL_GPL drivers/usb/gadget/udc/udc-core 0xdeba68f2 usb_gadget_unregister_driver +EXPORT_SYMBOL_GPL drivers/usb/gadget/udc/udc-core 0xf4b81321 usb_gadget_activate +EXPORT_SYMBOL_GPL drivers/usb/gadget/udc/udc-core 0xf6ce8cb8 usb_gadget_connect +EXPORT_SYMBOL_GPL drivers/usb/gadget/udc/udc-core 0xf95037fe usb_add_gadget_udc +EXPORT_SYMBOL_GPL drivers/usb/gadget/udc/udc-core 0xfd95439c usb_gadget_map_request +EXPORT_SYMBOL_GPL drivers/usb/host/xhci-pci-renesas 0xae9690cb renesas_xhci_check_request_fw +EXPORT_SYMBOL_GPL drivers/usb/host/xhci-pci-renesas 0xf9fa1630 renesas_xhci_pci_exit +EXPORT_SYMBOL_GPL drivers/usb/misc/ezusb 0x9c06aedc ezusb_fx1_set_reset +EXPORT_SYMBOL_GPL drivers/usb/misc/ezusb 0xe5bfc2a7 ezusb_fx1_ihex_firmware_download +EXPORT_SYMBOL_GPL drivers/usb/misc/ftdi-elan 0x2307fa78 usb_ftdi_elan_edset_single +EXPORT_SYMBOL_GPL drivers/usb/misc/ftdi-elan 0x24c10364 usb_ftdi_elan_read_pcimem +EXPORT_SYMBOL_GPL drivers/usb/misc/ftdi-elan 0x29934698 usb_ftdi_elan_edset_flush +EXPORT_SYMBOL_GPL drivers/usb/misc/ftdi-elan 0x30885336 usb_ftdi_elan_edset_input +EXPORT_SYMBOL_GPL drivers/usb/misc/ftdi-elan 0x48f96563 usb_ftdi_elan_edset_empty +EXPORT_SYMBOL_GPL drivers/usb/misc/ftdi-elan 0x6e2121bb usb_ftdi_elan_write_pcimem +EXPORT_SYMBOL_GPL drivers/usb/misc/ftdi-elan 0x87dc314c usb_ftdi_elan_edset_setup +EXPORT_SYMBOL_GPL drivers/usb/misc/ftdi-elan 0xcbc63fff ftdi_elan_gone_away +EXPORT_SYMBOL_GPL drivers/usb/misc/ftdi-elan 0xd082c170 usb_ftdi_elan_edset_output +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 0x167332a0 musb_root_disconnect +EXPORT_SYMBOL_GPL drivers/usb/musb/musb_hdrc 0x2734197f musb_readb +EXPORT_SYMBOL_GPL drivers/usb/musb/musb_hdrc 0x5e1a510e musb_interrupt +EXPORT_SYMBOL_GPL drivers/usb/musb/musb_hdrc 0x669594ad musb_clearw +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 0x7ad750b9 musb_set_peripheral +EXPORT_SYMBOL_GPL drivers/usb/musb/musb_hdrc 0x801712ec musb_set_host +EXPORT_SYMBOL_GPL drivers/usb/musb/musb_hdrc 0x9997e342 musb_get_mode +EXPORT_SYMBOL_GPL drivers/usb/musb/musb_hdrc 0xa652d85d musb_queue_resume_work +EXPORT_SYMBOL_GPL drivers/usb/musb/musb_hdrc 0xade3e56c musb_writew +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 0x3df2e086 usb_gen_phy_shutdown +EXPORT_SYMBOL_GPL drivers/usb/phy/phy-generic 0x498eff42 usb_phy_generic_unregister +EXPORT_SYMBOL_GPL drivers/usb/phy/phy-generic 0x7c6d3165 usb_phy_gen_create_phy +EXPORT_SYMBOL_GPL drivers/usb/phy/phy-generic 0xd7891440 usb_gen_phy_init +EXPORT_SYMBOL_GPL drivers/usb/phy/phy-generic 0xf615641a usb_phy_generic_register +EXPORT_SYMBOL_GPL drivers/usb/phy/phy-isp1301 0x77cc15db isp1301_get_client +EXPORT_SYMBOL_GPL drivers/usb/serial/usb_wwan 0x443b1afb usb_wwan_port_probe +EXPORT_SYMBOL_GPL drivers/usb/serial/usbserial 0x11ac1a2d usb_serial_port_softint +EXPORT_SYMBOL_GPL drivers/usb/serial/usbserial 0x1289bf27 usb_serial_register_drivers +EXPORT_SYMBOL_GPL drivers/usb/serial/usbserial 0x13255fa2 usb_serial_handle_dcd_change +EXPORT_SYMBOL_GPL drivers/usb/serial/usbserial 0x167e0bfc usb_serial_generic_write_bulk_callback +EXPORT_SYMBOL_GPL drivers/usb/serial/usbserial 0x174dfcef usb_serial_generic_wait_until_sent +EXPORT_SYMBOL_GPL drivers/usb/serial/usbserial 0x287c5fc4 usb_serial_generic_submit_read_urbs +EXPORT_SYMBOL_GPL drivers/usb/serial/usbserial 0x2a10a70c usb_serial_deregister_drivers +EXPORT_SYMBOL_GPL drivers/usb/serial/usbserial 0x33e486d4 usb_serial_generic_read_bulk_callback +EXPORT_SYMBOL_GPL drivers/usb/serial/usbserial 0x4d476e0a usb_serial_generic_close +EXPORT_SYMBOL_GPL drivers/usb/serial/usbserial 0x5087cb2f usb_serial_generic_resume +EXPORT_SYMBOL_GPL drivers/usb/serial/usbserial 0x530404d0 usb_serial_handle_break +EXPORT_SYMBOL_GPL drivers/usb/serial/usbserial 0x53934315 usb_serial_generic_throttle +EXPORT_SYMBOL_GPL drivers/usb/serial/usbserial 0x5514d2f3 usb_serial_generic_unthrottle +EXPORT_SYMBOL_GPL drivers/usb/serial/usbserial 0x64cb2fa3 usb_serial_generic_tiocmiwait +EXPORT_SYMBOL_GPL drivers/usb/serial/usbserial 0x67f6fa2b usb_serial_generic_process_read_urb +EXPORT_SYMBOL_GPL drivers/usb/serial/usbserial 0x7beca44f usb_serial_generic_chars_in_buffer +EXPORT_SYMBOL_GPL drivers/usb/serial/usbserial 0x7f0812a5 usb_serial_generic_open +EXPORT_SYMBOL_GPL drivers/usb/serial/usbserial 0x9a0758fa usb_serial_generic_get_icount +EXPORT_SYMBOL_GPL drivers/usb/serial/usbserial 0xa4d26269 usb_serial_generic_write_start +EXPORT_SYMBOL_GPL drivers/usb/serial/usbserial 0xd69cf2d1 usb_serial_handle_sysrq_char +EXPORT_SYMBOL_GPL drivers/usb/serial/usbserial 0xfb7f7cd0 usb_serial_generic_write +EXPORT_SYMBOL_GPL drivers/usb/typec/altmodes/typec_displayport 0x0b8e00cf dp_altmode_remove +EXPORT_SYMBOL_GPL drivers/usb/typec/altmodes/typec_displayport 0x3d9370cf dp_altmode_probe +EXPORT_SYMBOL_GPL drivers/usb/typec/tcpm/tcpci 0x22c449cd tcpci_register_port +EXPORT_SYMBOL_GPL drivers/usb/typec/tcpm/tcpci 0x6f497a3c tcpci_irq +EXPORT_SYMBOL_GPL drivers/usb/typec/tcpm/tcpci 0xc529e32e tcpci_unregister_port +EXPORT_SYMBOL_GPL drivers/usb/typec/tcpm/tcpm 0x2fac6461 tcpm_register_port +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 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 0xea220941 tcpm_tcpc_reset +EXPORT_SYMBOL_GPL drivers/usb/typec/typec 0x01748e75 typec_switch_put +EXPORT_SYMBOL_GPL drivers/usb/typec/typec 0x03608f2a typec_cable_set_identity +EXPORT_SYMBOL_GPL drivers/usb/typec/typec 0x045bed21 typec_switch_get_drvdata +EXPORT_SYMBOL_GPL drivers/usb/typec/typec 0x09eeebbe fwnode_typec_switch_get +EXPORT_SYMBOL_GPL drivers/usb/typec/typec 0x11098ae8 typec_match_altmode +EXPORT_SYMBOL_GPL drivers/usb/typec/typec 0x1b90ac2b typec_unregister_plug +EXPORT_SYMBOL_GPL drivers/usb/typec/typec 0x2a6ab845 typec_altmode_get_partner +EXPORT_SYMBOL_GPL drivers/usb/typec/typec 0x2ad2ba58 typec_mux_get_drvdata +EXPORT_SYMBOL_GPL drivers/usb/typec/typec 0x2c4b45c2 typec_cable_is_active +EXPORT_SYMBOL_GPL drivers/usb/typec/typec 0x2d1e301d typec_find_power_role +EXPORT_SYMBOL_GPL drivers/usb/typec/typec 0x3379f744 typec_switch_unregister +EXPORT_SYMBOL_GPL drivers/usb/typec/typec 0x33a486ce typec_altmode_unregister_driver +EXPORT_SYMBOL_GPL drivers/usb/typec/typec 0x33fd62de typec_set_pwr_opmode +EXPORT_SYMBOL_GPL drivers/usb/typec/typec 0x36852716 typec_set_orientation +EXPORT_SYMBOL_GPL drivers/usb/typec/typec 0x3ec2b639 typec_mux_set +EXPORT_SYMBOL_GPL drivers/usb/typec/typec 0x3fea3d95 typec_switch_set_drvdata +EXPORT_SYMBOL_GPL drivers/usb/typec/typec 0x426285ea typec_unregister_cable +EXPORT_SYMBOL_GPL drivers/usb/typec/typec 0x493159cc typec_partner_set_identity +EXPORT_SYMBOL_GPL drivers/usb/typec/typec 0x4aaf4de5 typec_cable_put +EXPORT_SYMBOL_GPL drivers/usb/typec/typec 0x4c839aa4 typec_mux_register +EXPORT_SYMBOL_GPL drivers/usb/typec/typec 0x52f717c1 typec_unregister_altmode +EXPORT_SYMBOL_GPL drivers/usb/typec/typec 0x54c93810 typec_set_mode +EXPORT_SYMBOL_GPL drivers/usb/typec/typec 0x5869adb2 typec_get_orientation +EXPORT_SYMBOL_GPL drivers/usb/typec/typec 0x5ac3a632 typec_set_vconn_role +EXPORT_SYMBOL_GPL drivers/usb/typec/typec 0x5f2c6469 typec_set_data_role +EXPORT_SYMBOL_GPL drivers/usb/typec/typec 0x5ffbd4ff typec_altmode_vdm +EXPORT_SYMBOL_GPL drivers/usb/typec/typec 0x614740d9 typec_register_partner +EXPORT_SYMBOL_GPL drivers/usb/typec/typec 0x62976d9e typec_register_port +EXPORT_SYMBOL_GPL drivers/usb/typec/typec 0x67e55dc7 typec_altmode_put_plug +EXPORT_SYMBOL_GPL drivers/usb/typec/typec 0x6eda4260 typec_altmode_update_active +EXPORT_SYMBOL_GPL drivers/usb/typec/typec 0x734a9c4d typec_get_drvdata +EXPORT_SYMBOL_GPL drivers/usb/typec/typec 0x7e2998e7 typec_set_pwr_role +EXPORT_SYMBOL_GPL drivers/usb/typec/typec 0x835ab094 typec_plug_register_altmode +EXPORT_SYMBOL_GPL drivers/usb/typec/typec 0x86633ad9 typec_altmode_attention +EXPORT_SYMBOL_GPL drivers/usb/typec/typec 0x86c97a95 typec_altmode_get_plug +EXPORT_SYMBOL_GPL drivers/usb/typec/typec 0x9049491e typec_find_port_data_role +EXPORT_SYMBOL_GPL drivers/usb/typec/typec 0x9cad8da6 typec_unregister_partner +EXPORT_SYMBOL_GPL drivers/usb/typec/typec 0xa254de98 typec_find_orientation +EXPORT_SYMBOL_GPL drivers/usb/typec/typec 0xafa807ea fwnode_typec_mux_get +EXPORT_SYMBOL_GPL drivers/usb/typec/typec 0xafdf52c2 typec_partner_register_altmode +EXPORT_SYMBOL_GPL drivers/usb/typec/typec 0xbc4b9e3e typec_mux_unregister +EXPORT_SYMBOL_GPL drivers/usb/typec/typec 0xc3878a78 typec_mux_set_drvdata +EXPORT_SYMBOL_GPL drivers/usb/typec/typec 0xcdeaf67f typec_altmode_notify +EXPORT_SYMBOL_GPL drivers/usb/typec/typec 0xd19c1174 typec_port_register_altmode +EXPORT_SYMBOL_GPL drivers/usb/typec/typec 0xda0a9c4c typec_unregister_port +EXPORT_SYMBOL_GPL drivers/usb/typec/typec 0xde83e38a typec_cable_get +EXPORT_SYMBOL_GPL drivers/usb/typec/typec 0xe2c3b700 typec_register_cable +EXPORT_SYMBOL_GPL drivers/usb/typec/typec 0xe2d688b9 __typec_altmode_register_driver +EXPORT_SYMBOL_GPL drivers/usb/typec/typec 0xe9321257 typec_switch_set +EXPORT_SYMBOL_GPL drivers/usb/typec/typec 0xeafc1eb8 typec_find_port_power_role +EXPORT_SYMBOL_GPL drivers/usb/typec/typec 0xee19f4b1 typec_register_plug +EXPORT_SYMBOL_GPL drivers/usb/typec/typec 0xeedcfa85 typec_switch_register +EXPORT_SYMBOL_GPL drivers/usb/typec/typec 0xf4942c62 typec_altmode_enter +EXPORT_SYMBOL_GPL drivers/usb/typec/typec 0xf78d15cc typec_mux_put +EXPORT_SYMBOL_GPL drivers/usb/typec/typec 0xf8fbb5eb typec_altmode_exit +EXPORT_SYMBOL_GPL drivers/usb/typec/typec 0xfa07a76d typec_altmode2port +EXPORT_SYMBOL_GPL drivers/usb/typec/ucsi/typec_ucsi 0x01cdff93 ucsi_unregister +EXPORT_SYMBOL_GPL drivers/usb/typec/ucsi/typec_ucsi 0x219b15ef ucsi_get_drvdata +EXPORT_SYMBOL_GPL drivers/usb/typec/ucsi/typec_ucsi 0x8ece9262 ucsi_resume +EXPORT_SYMBOL_GPL drivers/usb/typec/ucsi/typec_ucsi 0x96a301ef ucsi_destroy +EXPORT_SYMBOL_GPL drivers/usb/typec/ucsi/typec_ucsi 0xba641a29 ucsi_create +EXPORT_SYMBOL_GPL drivers/usb/typec/ucsi/typec_ucsi 0xd1a100d1 ucsi_connector_change +EXPORT_SYMBOL_GPL drivers/usb/typec/ucsi/typec_ucsi 0xd2c4cdba ucsi_send_command +EXPORT_SYMBOL_GPL drivers/usb/typec/ucsi/typec_ucsi 0xf080d4d6 ucsi_register +EXPORT_SYMBOL_GPL drivers/usb/typec/ucsi/typec_ucsi 0xf92c5c26 ucsi_set_drvdata +EXPORT_SYMBOL_GPL drivers/usb/typec/ucsi/typec_ucsi 0xf94fe9d5 ucsi_init +EXPORT_SYMBOL_GPL drivers/usb/usbip/usbip-core 0x011df6a4 usbip_recv_xbuff +EXPORT_SYMBOL_GPL drivers/usb/usbip/usbip-core 0x19216600 usbip_pad_iso +EXPORT_SYMBOL_GPL drivers/usb/usbip/usbip-core 0x1f22ec35 usbip_recv_iso +EXPORT_SYMBOL_GPL drivers/usb/usbip/usbip-core 0x21ae09be usbip_dump_urb +EXPORT_SYMBOL_GPL drivers/usb/usbip/usbip-core 0x21f90516 usbip_event_happened +EXPORT_SYMBOL_GPL drivers/usb/usbip/usbip-core 0x320b4fd9 usbip_event_add +EXPORT_SYMBOL_GPL drivers/usb/usbip/usbip-core 0x5e62aa55 dev_attr_usbip_debug +EXPORT_SYMBOL_GPL drivers/usb/usbip/usbip-core 0x78b72f44 usbip_debug_flag +EXPORT_SYMBOL_GPL drivers/usb/usbip/usbip-core 0x7d818094 usbip_start_eh +EXPORT_SYMBOL_GPL drivers/usb/usbip/usbip-core 0xbf2597d9 usbip_recv +EXPORT_SYMBOL_GPL drivers/usb/usbip/usbip-core 0xc24cd093 usbip_stop_eh +EXPORT_SYMBOL_GPL drivers/usb/usbip/usbip-core 0xd02753dc usbip_header_correct_endian +EXPORT_SYMBOL_GPL drivers/usb/usbip/usbip-core 0xd2723de0 usbip_in_eh +EXPORT_SYMBOL_GPL drivers/usb/usbip/usbip-core 0xd6ea0797 usbip_alloc_iso_desc_pdu +EXPORT_SYMBOL_GPL drivers/usb/usbip/usbip-core 0xdd455896 usbip_pack_pdu +EXPORT_SYMBOL_GPL drivers/usb/usbip/usbip-core 0xe1ea0586 usbip_dump_header +EXPORT_SYMBOL_GPL drivers/vdpa/vdpa 0x47653693 __vdpa_register_driver +EXPORT_SYMBOL_GPL drivers/vdpa/vdpa 0x62ff1f28 __vdpa_alloc_device +EXPORT_SYMBOL_GPL drivers/vdpa/vdpa 0x83819268 vdpa_register_device +EXPORT_SYMBOL_GPL drivers/vdpa/vdpa 0xcc1896d7 vdpa_unregister_driver +EXPORT_SYMBOL_GPL drivers/vdpa/vdpa 0xf695e819 vdpa_unregister_device +EXPORT_SYMBOL_GPL drivers/vfio/mdev/mdev 0x8d69528e mdev_bus_type +EXPORT_SYMBOL_GPL drivers/vfio/platform/vfio-platform-base 0x3e428034 vfio_platform_unregister_reset +EXPORT_SYMBOL_GPL drivers/vfio/platform/vfio-platform-base 0x6be461cb vfio_platform_probe_common +EXPORT_SYMBOL_GPL drivers/vfio/platform/vfio-platform-base 0x91a860d4 vfio_platform_remove_common +EXPORT_SYMBOL_GPL drivers/vfio/platform/vfio-platform-base 0xbfa6c6df __vfio_platform_register_reset +EXPORT_SYMBOL_GPL drivers/vfio/vfio 0x265ece98 vfio_group_get_external_user +EXPORT_SYMBOL_GPL drivers/vfio/vfio 0x3567743b vfio_external_user_iommu_id +EXPORT_SYMBOL_GPL drivers/vfio/vfio 0x5b35c4f9 vfio_group_set_kvm +EXPORT_SYMBOL_GPL drivers/vfio/vfio 0x60a634c4 vfio_info_cap_add +EXPORT_SYMBOL_GPL drivers/vfio/vfio 0x6996a0f5 vfio_group_get_external_user_from_dev +EXPORT_SYMBOL_GPL drivers/vfio/vfio 0x781cfb01 vfio_iommu_group_put +EXPORT_SYMBOL_GPL drivers/vfio/vfio 0x839d3ff3 vfio_register_iommu_driver +EXPORT_SYMBOL_GPL drivers/vfio/vfio 0x87de0644 vfio_external_group_match_file +EXPORT_SYMBOL_GPL drivers/vfio/vfio 0x95258207 vfio_device_data +EXPORT_SYMBOL_GPL drivers/vfio/vfio 0x969c73d9 vfio_device_put +EXPORT_SYMBOL_GPL drivers/vfio/vfio 0xa03ca872 vfio_add_group_dev +EXPORT_SYMBOL_GPL drivers/vfio/vfio 0xa79dd6e6 vfio_unregister_iommu_driver +EXPORT_SYMBOL_GPL drivers/vfio/vfio 0xc1d989c5 vfio_external_check_extension +EXPORT_SYMBOL_GPL drivers/vfio/vfio 0xc4913442 vfio_group_put_external_user +EXPORT_SYMBOL_GPL drivers/vfio/vfio 0xf054be3c vfio_del_group_dev +EXPORT_SYMBOL_GPL drivers/vfio/vfio 0xf9193d50 vfio_iommu_group_get +EXPORT_SYMBOL_GPL drivers/vfio/vfio 0xfbb32704 vfio_device_get_from_dev +EXPORT_SYMBOL_GPL drivers/vfio/vfio_virqfd 0x41f0ab88 vfio_virqfd_disable +EXPORT_SYMBOL_GPL drivers/vfio/vfio_virqfd 0x5a836655 vfio_virqfd_enable +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x0e96ff70 vhost_vq_access_ok +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x170ceb8b vhost_poll_init +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x1e4859f6 vhost_poll_queue +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x1f33d7dd vhost_add_used +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x2183f519 vhost_add_used_and_signal +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x2468cee0 vhost_dev_set_owner +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x32b59325 vhost_work_flush +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x387ff1a4 vhost_poll_flush +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x3b36d852 vhost_exceeds_weight +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x45f6b817 vhost_dev_stop +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x4df461c2 vhost_vq_is_setup +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x4fef6341 vhost_add_used_n +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x50c5b5f7 vhost_enable_notify +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x578ee66e vhost_dev_cleanup +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x5da63aa6 vhost_poll_start +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x5f0caa04 vhost_log_access_ok +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x65b681d5 vhost_dequeue_msg +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x6986e1d2 vhost_vring_ioctl +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x7fea26a6 vhost_dev_check_owner +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x82c1b122 vq_meta_prefetch +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x8782137a vhost_dev_has_owner +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x8ba8049b vhost_get_vq_desc +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x90ad4b9a vhost_has_work +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x97afcf45 vhost_new_msg +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0xa2970fb5 vhost_disable_notify +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0xa4055988 vhost_poll_stop +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0xa72e6d5b vhost_log_write +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0xa909cfc5 vhost_work_init +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0xa960c930 vhost_work_queue +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0xad0fd6ef vhost_dev_reset_owner +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0xb48a9491 vhost_signal +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0xb4d9bd18 vhost_vq_avail_empty +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0xb9808727 vhost_vq_init_access +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0xbe4c7e1e vhost_chr_read_iter +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0xbfee1996 vhost_dev_init +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0xca7572e4 vhost_init_device_iotlb +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0xf24c064f vhost_add_used_and_signal_n +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0xf346bd3d vhost_discard_vq_desc +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0xf34d4a5d vhost_dev_ioctl +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0xf5bdd51b vhost_enqueue_msg +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 0x514d0e6a vhost_iotlb_itree_first +EXPORT_SYMBOL_GPL drivers/vhost/vhost_iotlb 0x5f4e5249 vhost_iotlb_reset +EXPORT_SYMBOL_GPL drivers/vhost/vhost_iotlb 0x6bec0e66 vhost_iotlb_del_range +EXPORT_SYMBOL_GPL drivers/vhost/vhost_iotlb 0x7579334f vhost_iotlb_itree_next +EXPORT_SYMBOL_GPL drivers/vhost/vhost_iotlb 0xa24517eb vhost_iotlb_free +EXPORT_SYMBOL_GPL drivers/vhost/vhost_iotlb 0xad111707 vhost_iotlb_map_free +EXPORT_SYMBOL_GPL drivers/vhost/vhost_iotlb 0xc577832d vhost_iotlb_alloc +EXPORT_SYMBOL_GPL drivers/video/backlight/ili9320 0x01590fbc ili9320_remove +EXPORT_SYMBOL_GPL drivers/video/backlight/ili9320 0x40c141e0 ili9320_write_regs +EXPORT_SYMBOL_GPL drivers/video/backlight/ili9320 0x5dc7fe7a ili9320_write +EXPORT_SYMBOL_GPL drivers/video/backlight/ili9320 0x902bb51e ili9320_resume +EXPORT_SYMBOL_GPL drivers/video/backlight/ili9320 0xc2569967 ili9320_suspend +EXPORT_SYMBOL_GPL drivers/video/backlight/ili9320 0xd36e3054 ili9320_shutdown +EXPORT_SYMBOL_GPL drivers/video/backlight/ili9320 0xe2d39942 ili9320_probe_spi +EXPORT_SYMBOL_GPL drivers/video/fbdev/core/fb_ddc 0x69f61581 fb_ddc_read +EXPORT_SYMBOL_GPL drivers/video/fbdev/core/fb_sys_fops 0x398c697f fb_sys_write +EXPORT_SYMBOL_GPL drivers/video/fbdev/core/fb_sys_fops 0x89016e3e fb_sys_read +EXPORT_SYMBOL_GPL drivers/video/fbdev/sis/sisfb 0xde4107a5 sis_free_new +EXPORT_SYMBOL_GPL drivers/video/fbdev/sis/sisfb 0xe344563a sis_malloc_new +EXPORT_SYMBOL_GPL drivers/w1/wire 0x44695321 w1_triplet +EXPORT_SYMBOL_GPL drivers/w1/wire 0x5f86ea68 w1_reset_bus +EXPORT_SYMBOL_GPL drivers/w1/wire 0x624c4932 w1_read_8 +EXPORT_SYMBOL_GPL drivers/w1/wire 0x63757e92 w1_calc_crc8 +EXPORT_SYMBOL_GPL drivers/w1/wire 0x642d429d w1_write_block +EXPORT_SYMBOL_GPL drivers/w1/wire 0x89a8dd33 w1_reset_select_slave +EXPORT_SYMBOL_GPL drivers/w1/wire 0x8da610ad w1_reset_resume_command +EXPORT_SYMBOL_GPL drivers/w1/wire 0xaa483325 w1_touch_bit +EXPORT_SYMBOL_GPL drivers/w1/wire 0xbdf51522 w1_read_block +EXPORT_SYMBOL_GPL drivers/w1/wire 0xf761d74f w1_write_8 +EXPORT_SYMBOL_GPL drivers/w1/wire 0xfc799a19 w1_touch_block +EXPORT_SYMBOL_GPL drivers/w1/wire 0xfe5839f7 w1_next_pullup +EXPORT_SYMBOL_GPL drivers/xen/xen-front-pgdir-shbuf 0x4053b5bc xen_front_pgdir_shbuf_get_dir_start +EXPORT_SYMBOL_GPL drivers/xen/xen-front-pgdir-shbuf 0x57970947 xen_front_pgdir_shbuf_unmap +EXPORT_SYMBOL_GPL drivers/xen/xen-front-pgdir-shbuf 0x5eaf9fa2 xen_front_pgdir_shbuf_free +EXPORT_SYMBOL_GPL drivers/xen/xen-front-pgdir-shbuf 0xa7ba92a2 xen_front_pgdir_shbuf_map +EXPORT_SYMBOL_GPL drivers/xen/xen-front-pgdir-shbuf 0xe7fab11f xen_front_pgdir_shbuf_alloc +EXPORT_SYMBOL_GPL drivers/xen/xen-privcmd 0x10a11e92 xen_privcmdbuf_fops +EXPORT_SYMBOL_GPL drivers/xen/xen-privcmd 0x864d1d23 xen_privcmd_fops +EXPORT_SYMBOL_GPL fs/dlm/dlm 0x33806996 dlm_posix_lock +EXPORT_SYMBOL_GPL fs/dlm/dlm 0x35bb97ed dlm_posix_unlock +EXPORT_SYMBOL_GPL fs/dlm/dlm 0x4b62826c dlm_unlock +EXPORT_SYMBOL_GPL fs/dlm/dlm 0x647d6170 dlm_lock +EXPORT_SYMBOL_GPL fs/dlm/dlm 0xacf1e8eb dlm_posix_get +EXPORT_SYMBOL_GPL fs/dlm/dlm 0xcd224e1d dlm_new_lockspace +EXPORT_SYMBOL_GPL fs/dlm/dlm 0xcf9f3328 dlm_release_lockspace +EXPORT_SYMBOL_GPL fs/fscache/fscache 0x092cf98e fscache_object_sleep_till_congested +EXPORT_SYMBOL_GPL fs/lockd/lockd 0x5e98384e nlmclnt_proc +EXPORT_SYMBOL_GPL fs/lockd/lockd 0x77e35ccc nlmsvc_unlock_all_by_ip +EXPORT_SYMBOL_GPL fs/lockd/lockd 0x90297232 nlmsvc_ops +EXPORT_SYMBOL_GPL fs/lockd/lockd 0x9fd19df8 lockd_up +EXPORT_SYMBOL_GPL fs/lockd/lockd 0xb378cf83 lockd_down +EXPORT_SYMBOL_GPL fs/lockd/lockd 0xc5a2a567 nlmclnt_init +EXPORT_SYMBOL_GPL fs/lockd/lockd 0xcda6d1d0 nlmclnt_done +EXPORT_SYMBOL_GPL fs/lockd/lockd 0xe74f0d8c nlmsvc_unlock_all_by_sb +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x00694ccc nfs_alloc_server +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x011e0e7a nfs_rmdir +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x0294c6a2 nfs_callback_nr_threads +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x03063835 nfs_pgheader_init +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x03366ffa nfs_file_llseek +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x054f5d2b nfs_initiate_commit +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x05ed36cb nfs_filemap_write_and_wait_range +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x0b03d177 nfs_submount +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x0e983288 nfs_sb_active +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x10962bc2 nfs_auth_info_match +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x119bc380 nfs_get_lock_context +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x1319e13e nfs_server_copy_userdata +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x17080d12 nfs_probe_fsinfo +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x171b2d6e nfs_file_mmap +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x1817dd7c nfs_pageio_reset_read_mds +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x1a873ded nfs_force_lookup_revalidate +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x1c3edd19 nfs_reconfigure +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x1dded8f5 nfs_create +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x1f54bf6d nfs_symlink +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x1f63802b nfs_post_op_update_inode +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x22d795a8 _nfs_display_fhandle_hash +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x230b2cfe nfs4_fs_type +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x26884ff7 nfs_alloc_fhandle +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x271a477b nfs_wait_client_init_complete +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x27f6354a nfs_file_set_open_context +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x29a95a8f nfs_fhget +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x2b85afe3 nfs_alloc_client +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x2f8b3a6b nfs_free_client +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x30fce8f7 nfs_access_zap_cache +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x317fa9a4 nfs_rename +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x34c1f227 nfs_client_init_status +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x37cb817f nfs_server_insert_lists +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x3835bb4a nfs_set_verifier +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x38e509ce nfs_commit_free +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x39e05ac3 nfs_idmap_cache_timeout +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x3f2690f2 nfs_check_flags +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x40739385 nfs_wait_bit_killable +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x42f2c81f nfs4_client_id_uniquifier +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x43ad4194 nfs_clone_server +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x43e3438b nfs_invalidate_atime +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x44e205c6 nfs_writeback_update_inode +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x46bba5a0 nfs_unlink +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x494c7743 nfs_create_server +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x4cb9e001 recover_lost_locks +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x4cc6013e nfs_lock +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x4de86263 nfs_pageio_init_write +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x4df848bb nfs_commit_inode +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x4f7d7a98 nfs_free_inode +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x51892d61 nfs_callback_set_tcpport +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x5233d0f8 nfs_commitdata_release +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x5299f314 nfs_pageio_resend +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x52ee6483 nfs_setattr_update_inode +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x54d4109f put_nfs_open_context +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x555ae488 nfs_sops +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x584b8482 nfs_inc_attr_generation_counter +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x60dd26a9 nfs_file_operations +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x64820dbc nfs_generic_pg_test +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x653b8c03 nfs_instantiate +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x65d2ba75 nfs_free_server +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x69042b67 nfs_statfs +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x6969ca07 nfs_mkdir +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x6c01bfae nfs_umount_begin +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x721ba2c4 nfs_init_server_rpcclient +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x72f09fe6 nfs_pgio_header_free +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x7643344c nfs_write_inode +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x795c9647 nfs_open +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x7c9722ba nfs_dreq_bytes_left +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x7d216c52 nfs_flock +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x832e8f0b nfs_alloc_fattr +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x84a42fef nfs_init_commit +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x85efd4fa nfs_atomic_open +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x88e09193 nfs_scan_commit_list +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x8d4155ac nfs_async_iocounter_wait +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x90a5530f nfsiod_workqueue +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x90c22d5e nfs_client_init_is_complete +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x91d1fe52 max_session_slots +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x9816f03a nfs_server_remove_lists +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x98b0ece8 nfs_init_timeout_values +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x9b26b189 nfs_client_for_each_server +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x9e152837 nfs_mknod +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xa05ca625 nfs_fattr_init +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xa0bd1c39 nfs_clear_verifier_delegated +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xa0d326a5 nfs_pgio_header_alloc +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xa2f63612 nfs4_label_alloc +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xa34f725d nfs_initiate_pgio +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xa6b4beb6 nfs_fs_type +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xa778ddbf nfs_request_add_commit_list_locked +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xa78fbf05 register_nfs_version +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xa8abcded __tracepoint_nfs_xdr_status +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xa8e9e1ae send_implementation_id +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xa9449984 nfs_kill_super +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xa981349b nfs_zap_acl_cache +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xaa54d212 nfs_sb_deactive +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xaa9fde04 nfs_access_set_mask +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xaafd4acc max_session_cb_slots +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xab148f83 nfs_setattr +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xadee88ee nfs_dentry_operations +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xb0706d4f nfs_show_options +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xb2a1d3cf nfs_generic_pgio +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xb311c7b4 nfs_close_context +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xb4ed0a9b nfs_file_release +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xb56c142a nfs_commitdata_alloc +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xb5f5c91f __tracepoint_nfs_fsync_exit +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xb634119d nfs_refresh_inode +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xbafc4768 nfs_access_add_cache +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xbb9b9bb3 nfs_try_get_tree +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xbc6b2c88 __tracepoint_nfs_fsync_enter +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xbce3f2de nfs_request_add_commit_list +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xbef9266b nfs_setsecurity +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xbfbb11e5 nfs_pageio_reset_write_mds +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xc221b4b8 nfs_permission +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xc2df395b get_nfs_open_context +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xc3a2be67 nfs_net_id +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xc668cddd nfs_release_request +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xc6798d97 nfs_alloc_inode +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xc7cab227 nfs_sync_inode +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xca981cd5 nfs_wait_on_request +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xcc198ef8 nfs_may_open +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xcd0b660f nfs_revalidate_inode +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xd007ea1f nfs_file_fsync +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xd0b06d65 nfs_pgio_current_mirror +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xd5ad88d4 nfs_create_rpc_client +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xd6ed8d4d nfs_getattr +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xd9a7063a nfs_show_stats +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xd9cadae3 nfs_do_submount +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xdaaabb1b nfs_mark_client_ready +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xdae9b5d7 nfs4_disable_idmapping +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xdb218aae nfs_put_lock_context +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xdbe8f5cb nfs_init_client +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xdc172815 nfs_add_or_obtain +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xdcf67e03 nfs_path +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xdd8c3d84 nfs_put_client +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xdec8f544 nfs_pageio_init_read +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xdf69a3f5 nfs_lookup +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xe1b59d81 nfs_request_remove_commit_list +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xe3d1f278 nfs_file_read +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xe5bf1115 nfs_post_op_update_inode_force_wcc +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xe5c5ce63 nfs_fscache_open_file +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xe82d4484 unregister_nfs_version +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xe9408cda nfs_wb_all +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xec00ec6f nfs_retry_commit +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xf02e5513 nfs4_dentry_operations +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xf5568665 nfs_link +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xf563b23e nfs_show_devname +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xf5a904e4 nfs_show_path +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xf5acec1f nfs_init_cinfo +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xf5faee77 nfs_inode_attach_open_context +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xf671dbcc nfs_clear_inode +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xf9ed0ae4 nfs_get_client +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xfb1bfc0b alloc_nfs_open_context +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xfbcb2378 nfs_drop_inode +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xfc619abd _nfs_display_fhandle +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xfc9636a2 nfs_file_write +EXPORT_SYMBOL_GPL fs/nfs/nfsv3 0x816aeeec nfs3_set_ds_client +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x02254be7 pnfs_alloc_commit_array +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x0261c931 pnfs_destroy_layout +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x028423be nfs4_delete_deviceid +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x054bef45 layoutstats_timer +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x0ade27ae __tracepoint_ff_layout_read_error +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x0c57b98c pnfs_write_done_resend_to_mds +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x0d7a11f7 pnfs_generic_clear_request_commit +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x0dcf78e1 pnfs_generic_layout_insert_lseg +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x10a51445 nfs4_find_get_deviceid +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x12a68331 nfs4_find_or_create_ds_client +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x12cb2997 pnfs_generic_pg_test +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x1352adbe nfs42_ssc_open +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x163831c3 __tracepoint_nfs4_pnfs_write +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x1cdde079 __tracepoint_nfs4_pnfs_read +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x2064a5ed nfs42_ssc_close +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x208f5c30 __tracepoint_pnfs_mds_fallback_read_pagelist +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x2505fa62 nfs4_pnfs_ds_add +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x2d775be6 nfs4_decode_mp_ds_addr +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x2f5e26ba nfs4_init_ds_session +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x32f89712 nfs4_schedule_session_recovery +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x34190de0 pnfs_generic_sync +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x386cb763 pnfs_ld_read_done +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x39ac52fe __tracepoint_ff_layout_commit_error +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x3c7d84cc __tracepoint_pnfs_mds_fallback_write_pagelist +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x3e563e77 nfs4_test_session_trunk +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x3e6bf4be pnfs_generic_pg_check_layout +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x40bc3c6d __tracepoint_ff_layout_write_error +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x4203f4c1 pnfs_ld_write_done +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x42083e54 nfs42_proc_layouterror +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x48bbc709 pnfs_generic_write_commit_done +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x491aecba nfs_remove_bad_delegation +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x4d1c13cb pnfs_free_commit_array +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x55ef6cde nfs4_setup_sequence +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x576ee267 pnfs_generic_commit_pagelist +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x59383843 pnfs_generic_prepare_to_resend_writes +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x59d0ace1 nfs4_schedule_lease_moved_recovery +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x5bfabe9b nfs4_schedule_stateid_recovery +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x5c8286e7 nfs4_pnfs_ds_connect +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x6085edbd nfs_map_string_to_numeric +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x61e54e70 pnfs_generic_recover_commit_reqs +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x65590aa6 pnfs_set_layoutcommit +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x67fd218c pnfs_generic_pg_cleanup +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x688d00ca nfs4_set_rw_stateid +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x69d3558d pnfs_generic_rw_release +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x6b43aa11 pnfs_update_layout +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x74989171 nfs4_sequence_done +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x78ecf37b __tracepoint_pnfs_mds_fallback_pg_init_write +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x79739ef6 pnfs_generic_pg_init_read +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x81bffd45 pnfs_add_commit_array +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x8808bbc0 pnfs_layoutcommit_inode +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x8e7a8f79 pnfs_layout_mark_request_commit +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x957aabd7 pnfs_nfs_generic_sync +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x9ba8c3e0 nfs4_set_ds_client +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x9c576a9c pnfs_generic_pg_readpages +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xa028cad4 pnfs_register_layoutdriver +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xa2570bba nfs4_schedule_migration_recovery +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xa319bfee __tracepoint_pnfs_mds_fallback_pg_init_read +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xa4d8c90a nfs4_init_deviceid_node +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xad67fdfc pnfs_generic_ds_cinfo_destroy +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xb3aad044 nfs41_sequence_done +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xb9dff1af pnfs_put_lseg +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xbbc98fb3 pnfs_generic_pg_writepages +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xbd50c957 pnfs_generic_pg_init_write +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xbe1c00d8 pnfs_generic_pg_check_range +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xc7fa1a0d nfs4_schedule_lease_recovery +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xcadb19e5 pnfs_set_lo_fail +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xd6b17449 pnfs_generic_ds_cinfo_release_lseg +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xd6ed7dda __tracepoint_pnfs_mds_fallback_write_done +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xd7d464cd pnfs_generic_search_commit_reqs +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xd9507471 nfs4_put_deviceid_node +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xdb4ff927 nfs4_mark_deviceid_available +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xdc29230a __tracepoint_pnfs_mds_fallback_pg_get_mirror_count +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xdf05942f __tracepoint_nfs4_pnfs_commit_ds +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xe05c8872 pnfs_read_resend_pnfs +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xe1a847aa nfs4_proc_getdeviceinfo +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xed15fb41 nfs4_print_deviceid +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xee0c46a9 pnfs_report_layoutstat +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xee1e1e36 nfs4_mark_deviceid_unavailable +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xee960d9f __tracepoint_pnfs_mds_fallback_read_done +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xf3938041 pnfs_generic_scan_commit_lists +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xf3d86d22 nfs4_pnfs_ds_put +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xf7801360 nfs41_maxgetdevinfo_overhead +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xf924cf75 pnfs_unregister_layoutdriver +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xf999267e pnfs_generic_commit_release +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xfb93bdef nfs4_test_deviceid_unavailable +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xfb9630a3 pnfs_error_mark_layout_for_return +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xfd59f7ba pnfs_read_done_resend_to_mds +EXPORT_SYMBOL_GPL fs/nfs_common/grace 0x19530797 opens_in_grace +EXPORT_SYMBOL_GPL fs/nfs_common/grace 0x1fe1e1ad locks_end_grace +EXPORT_SYMBOL_GPL fs/nfs_common/grace 0x97d9ab87 locks_in_grace +EXPORT_SYMBOL_GPL fs/nfs_common/grace 0xb4352803 locks_start_grace +EXPORT_SYMBOL_GPL fs/nfs_common/nfs_acl 0x1bb542a8 nfsacl_decode +EXPORT_SYMBOL_GPL fs/nfs_common/nfs_acl 0x8c559828 nfsacl_encode +EXPORT_SYMBOL_GPL fs/nfsd/nfsd 0x5b388f0f inter_copy_offload_enable +EXPORT_SYMBOL_GPL fs/ocfs2/cluster/ocfs2_nodemanager 0x1b89c6ee o2hb_fill_node_map +EXPORT_SYMBOL_GPL fs/ocfs2/cluster/ocfs2_nodemanager 0x1c76fedd o2nm_node_put +EXPORT_SYMBOL_GPL fs/ocfs2/cluster/ocfs2_nodemanager 0x2f2e1afc o2nm_get_node_by_num +EXPORT_SYMBOL_GPL fs/ocfs2/cluster/ocfs2_nodemanager 0x4900035b o2hb_stop_all_regions +EXPORT_SYMBOL_GPL fs/ocfs2/cluster/ocfs2_nodemanager 0x5694c80d o2nm_node_get +EXPORT_SYMBOL_GPL fs/ocfs2/cluster/ocfs2_nodemanager 0x58c88ff2 o2hb_get_all_regions +EXPORT_SYMBOL_GPL fs/ocfs2/cluster/ocfs2_nodemanager 0x58e71ca9 o2nm_get_node_by_ip +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 0x81a17396 mlog_and_bits +EXPORT_SYMBOL_GPL fs/ocfs2/cluster/ocfs2_nodemanager 0x824e1721 o2hb_setup_callback +EXPORT_SYMBOL_GPL fs/ocfs2/cluster/ocfs2_nodemanager 0x914cdcff o2hb_unregister_callback +EXPORT_SYMBOL_GPL fs/ocfs2/cluster/ocfs2_nodemanager 0xa87bc9e7 o2nm_configured_node_map +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 0xc510b532 o2hb_register_callback +EXPORT_SYMBOL_GPL fs/ocfs2/cluster/ocfs2_nodemanager 0xd859ac8c o2net_fill_node_map +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 0x41ff98cb dlmunlock +EXPORT_SYMBOL_GPL fs/ocfs2/dlm/ocfs2_dlm 0x4885167e dlm_register_eviction_cb +EXPORT_SYMBOL_GPL fs/ocfs2/dlm/ocfs2_dlm 0x68ff7d2c dlmlock +EXPORT_SYMBOL_GPL fs/ocfs2/dlm/ocfs2_dlm 0x7a1211f8 dlm_setup_eviction_cb +EXPORT_SYMBOL_GPL fs/ocfs2/dlm/ocfs2_dlm 0x7b6c1674 dlm_register_domain +EXPORT_SYMBOL_GPL fs/ocfs2/dlm/ocfs2_dlm 0x8918071e dlm_unregister_domain +EXPORT_SYMBOL_GPL fs/ocfs2/dlm/ocfs2_dlm 0xba90173a dlm_print_one_lock +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 0x24ba511e ocfs2_kset +EXPORT_SYMBOL_GPL fs/ocfs2/ocfs2_stackglue 0x4d3af7fa ocfs2_cluster_hangup +EXPORT_SYMBOL_GPL fs/ocfs2/ocfs2_stackglue 0x5a88cd4b ocfs2_plock +EXPORT_SYMBOL_GPL fs/ocfs2/ocfs2_stackglue 0x76f40744 ocfs2_dlm_lvb +EXPORT_SYMBOL_GPL fs/ocfs2/ocfs2_stackglue 0x9507547f ocfs2_cluster_disconnect +EXPORT_SYMBOL_GPL fs/ocfs2/ocfs2_stackglue 0x95a0465b ocfs2_stack_glue_register +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 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 0xe720eb60 ocfs2_stack_glue_unregister +EXPORT_SYMBOL_GPL fs/pstore/pstore_blk 0x43cc3d4b pstore_blk_get_config +EXPORT_SYMBOL_GPL fs/pstore/pstore_blk 0x941c79d7 unregister_pstore_blk +EXPORT_SYMBOL_GPL fs/pstore/pstore_blk 0x96d760c6 register_pstore_device +EXPORT_SYMBOL_GPL fs/pstore/pstore_blk 0xb32bf368 register_pstore_blk +EXPORT_SYMBOL_GPL fs/pstore/pstore_blk 0xc3d2aed6 unregister_pstore_device +EXPORT_SYMBOL_GPL fs/pstore/pstore_zone 0x57029c52 unregister_pstore_zone +EXPORT_SYMBOL_GPL fs/pstore/pstore_zone 0x90c11c52 register_pstore_zone +EXPORT_SYMBOL_GPL kernel/torture 0x1b2fca48 torture_must_stop_irq +EXPORT_SYMBOL_GPL kernel/torture 0x1be7d8be torture_onoff_failures +EXPORT_SYMBOL_GPL kernel/torture 0x3b137dd9 _torture_stop_kthread +EXPORT_SYMBOL_GPL kernel/torture 0x3e9619f5 torture_onoff_stats +EXPORT_SYMBOL_GPL kernel/torture 0x3ff9be11 torture_online +EXPORT_SYMBOL_GPL kernel/torture 0x447d9c95 torture_offline +EXPORT_SYMBOL_GPL kernel/torture 0x4c7529bd torture_shutdown_absorb +EXPORT_SYMBOL_GPL kernel/torture 0x52665f8b torture_random +EXPORT_SYMBOL_GPL kernel/torture 0x5a12a7da torture_stutter_init +EXPORT_SYMBOL_GPL kernel/torture 0x679d9e50 torture_must_stop +EXPORT_SYMBOL_GPL kernel/torture 0x688e6a64 torture_cleanup_end +EXPORT_SYMBOL_GPL kernel/torture 0x6c3ff11a torture_init_begin +EXPORT_SYMBOL_GPL kernel/torture 0x8b0e1d2f torture_shuffle_init +EXPORT_SYMBOL_GPL kernel/torture 0xb0f13c68 _torture_create_kthread +EXPORT_SYMBOL_GPL kernel/torture 0xc67a49d4 torture_cleanup_begin +EXPORT_SYMBOL_GPL kernel/torture 0xc94a93e3 torture_onoff_init +EXPORT_SYMBOL_GPL kernel/torture 0xdbc5277a torture_shutdown_init +EXPORT_SYMBOL_GPL kernel/torture 0xe21c9c32 torture_shuffle_task_register +EXPORT_SYMBOL_GPL kernel/torture 0xe2430307 stutter_wait +EXPORT_SYMBOL_GPL kernel/torture 0xe6989fd3 torture_init_end +EXPORT_SYMBOL_GPL kernel/torture 0xf6d34fb5 torture_kthread_stopping +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/crc64 0xeaf3cb23 crc64_be +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 0x39e8fa4b poly1305_update_generic +EXPORT_SYMBOL_GPL lib/crypto/libpoly1305 0x4370baea poly1305_init_generic +EXPORT_SYMBOL_GPL lib/crypto/libpoly1305 0x4a833012 poly1305_final_generic +EXPORT_SYMBOL_GPL lib/notifier-error-inject 0x002943c0 notifier_err_inject_init +EXPORT_SYMBOL_GPL lib/notifier-error-inject 0x6f495013 notifier_err_inject_dir +EXPORT_SYMBOL_GPL lib/raid6/raid6_pq 0x1803a6ed raid6_2data_recov +EXPORT_SYMBOL_GPL lib/raid6/raid6_pq 0x2b30f429 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 0x3500533f lowpan_header_decompress +EXPORT_SYMBOL_GPL net/6lowpan/6lowpan 0xb8a6fc40 lowpan_header_compress +EXPORT_SYMBOL_GPL net/802/garp 0x0f0492d7 garp_unregister_application +EXPORT_SYMBOL_GPL net/802/garp 0x2e78364b garp_request_leave +EXPORT_SYMBOL_GPL net/802/garp 0x5c1ab439 garp_init_applicant +EXPORT_SYMBOL_GPL net/802/garp 0x86c1dcd5 garp_uninit_applicant +EXPORT_SYMBOL_GPL net/802/garp 0xd15ee10b garp_request_join +EXPORT_SYMBOL_GPL net/802/garp 0xe714dc8b garp_register_application +EXPORT_SYMBOL_GPL net/802/mrp 0x4bcd1851 mrp_request_join +EXPORT_SYMBOL_GPL net/802/mrp 0x7f2e31db mrp_request_leave +EXPORT_SYMBOL_GPL net/802/mrp 0xb1627589 mrp_uninit_applicant +EXPORT_SYMBOL_GPL net/802/mrp 0xdc86e264 mrp_unregister_application +EXPORT_SYMBOL_GPL net/802/mrp 0xe6da725f mrp_init_applicant +EXPORT_SYMBOL_GPL net/802/mrp 0xfe1eecce mrp_register_application +EXPORT_SYMBOL_GPL net/802/stp 0x0a512038 stp_proto_register +EXPORT_SYMBOL_GPL net/802/stp 0x1b9ce9ef stp_proto_unregister +EXPORT_SYMBOL_GPL net/9p/9pnet 0xd4ad6342 p9_client_xattrcreate +EXPORT_SYMBOL_GPL net/9p/9pnet 0xe4c8d03e 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 0x1ff11e66 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/bluetooth/bluetooth 0x28bf1caa l2cap_chan_put +EXPORT_SYMBOL_GPL net/bluetooth/bluetooth 0x2968b599 l2cap_chan_send +EXPORT_SYMBOL_GPL net/bluetooth/bluetooth 0x48c6ec55 bt_debugfs +EXPORT_SYMBOL_GPL net/bluetooth/bluetooth 0x4937dd5c l2cap_chan_connect +EXPORT_SYMBOL_GPL net/bluetooth/bluetooth 0x4de303b4 l2cap_chan_set_defaults +EXPORT_SYMBOL_GPL net/bluetooth/bluetooth 0x7c21fded l2cap_chan_list +EXPORT_SYMBOL_GPL net/bluetooth/bluetooth 0x8980acab l2cap_add_psm +EXPORT_SYMBOL_GPL net/bluetooth/bluetooth 0xaeb81713 l2cap_chan_create +EXPORT_SYMBOL_GPL net/bluetooth/bluetooth 0xc5c6a624 l2cap_chan_del +EXPORT_SYMBOL_GPL net/bluetooth/hidp/hidp 0xc403f60d hidp_hid_driver +EXPORT_SYMBOL_GPL net/bridge/bridge 0x05c32ad7 br_vlan_get_pvid +EXPORT_SYMBOL_GPL net/bridge/bridge 0x0d293ce4 br_multicast_enabled +EXPORT_SYMBOL_GPL net/bridge/bridge 0x3953827f br_multicast_router +EXPORT_SYMBOL_GPL net/bridge/bridge 0x5e73ef52 br_handle_frame_finish +EXPORT_SYMBOL_GPL net/bridge/bridge 0x69f7e296 br_fdb_clear_offload +EXPORT_SYMBOL_GPL net/bridge/bridge 0x747e98d3 br_multicast_has_querier_anywhere +EXPORT_SYMBOL_GPL net/bridge/bridge 0x79e538a6 br_forward +EXPORT_SYMBOL_GPL net/bridge/bridge 0x7d40c602 br_port_flag_is_set +EXPORT_SYMBOL_GPL net/bridge/bridge 0x7fdffa35 br_forward_finish +EXPORT_SYMBOL_GPL net/bridge/bridge 0x8be16a0a br_vlan_enabled +EXPORT_SYMBOL_GPL net/bridge/bridge 0x9c20c063 br_multicast_has_querier_adjacent +EXPORT_SYMBOL_GPL net/bridge/bridge 0x9f885d78 br_dev_queue_push_xmit +EXPORT_SYMBOL_GPL net/bridge/bridge 0xa509e4c6 br_multicast_list_adjacent +EXPORT_SYMBOL_GPL net/bridge/bridge 0xaa584ae5 br_vlan_get_pvid_rcu +EXPORT_SYMBOL_GPL net/bridge/bridge 0xd922e4f6 br_vlan_get_proto +EXPORT_SYMBOL_GPL net/bridge/bridge 0xee708267 br_fdb_find_port +EXPORT_SYMBOL_GPL net/bridge/bridge 0xf1f60ed0 br_vlan_get_info +EXPORT_SYMBOL_GPL net/bridge/bridge 0xfdd1455c nf_br_ops +EXPORT_SYMBOL_GPL net/core/failover 0x5ccc1163 failover_register +EXPORT_SYMBOL_GPL net/core/failover 0x8a7eb64e failover_unregister +EXPORT_SYMBOL_GPL net/core/failover 0x8f765cad failover_slave_unregister +EXPORT_SYMBOL_GPL net/dccp/dccp 0x10b0badb dccp_done +EXPORT_SYMBOL_GPL net/dccp/dccp 0x12ca61b6 dccp_feat_nn_get +EXPORT_SYMBOL_GPL net/dccp/dccp 0x158b1109 dccp_check_req +EXPORT_SYMBOL_GPL net/dccp/dccp 0x182ec2bf dccp_ackvec_parsed_add +EXPORT_SYMBOL_GPL net/dccp/dccp 0x1b5fce22 dccp_connect +EXPORT_SYMBOL_GPL net/dccp/dccp 0x2ba7c8c2 dccp_insert_option +EXPORT_SYMBOL_GPL net/dccp/dccp 0x370aea8d dccp_shutdown +EXPORT_SYMBOL_GPL net/dccp/dccp 0x41b55904 dccp_destroy_sock +EXPORT_SYMBOL_GPL net/dccp/dccp 0x4467af45 dccp_sync_mss +EXPORT_SYMBOL_GPL net/dccp/dccp 0x4cdd391d dccp_feat_list_purge +EXPORT_SYMBOL_GPL net/dccp/dccp 0x4e979058 dccp_sendmsg +EXPORT_SYMBOL_GPL net/dccp/dccp 0x4e9df083 dccp_create_openreq_child +EXPORT_SYMBOL_GPL net/dccp/dccp 0x53a7acfc dccp_init_sock +EXPORT_SYMBOL_GPL net/dccp/dccp 0x56bef4b0 dccp_parse_options +EXPORT_SYMBOL_GPL net/dccp/dccp 0x5952dcfc dccp_setsockopt +EXPORT_SYMBOL_GPL net/dccp/dccp 0x59814a84 dccp_statistics +EXPORT_SYMBOL_GPL net/dccp/dccp 0x6455980b dccp_poll +EXPORT_SYMBOL_GPL net/dccp/dccp 0x722630de dccp_hashinfo +EXPORT_SYMBOL_GPL net/dccp/dccp 0x7726d462 dccp_rcv_established +EXPORT_SYMBOL_GPL net/dccp/dccp 0x7fd04c47 dccp_getsockopt +EXPORT_SYMBOL_GPL net/dccp/dccp 0x80993155 dccp_timestamp +EXPORT_SYMBOL_GPL net/dccp/dccp 0x86be7924 dccp_packet_name +EXPORT_SYMBOL_GPL net/dccp/dccp 0x8cebca84 dccp_reqsk_init +EXPORT_SYMBOL_GPL net/dccp/dccp 0x9598d24d dccp_ackvec_parsed_cleanup +EXPORT_SYMBOL_GPL net/dccp/dccp 0x985a6eaa dccp_set_state +EXPORT_SYMBOL_GPL net/dccp/dccp 0x99b1ff5b dccp_send_ack +EXPORT_SYMBOL_GPL net/dccp/dccp 0xa2624a42 dccp_death_row +EXPORT_SYMBOL_GPL net/dccp/dccp 0xb012714b dccp_disconnect +EXPORT_SYMBOL_GPL net/dccp/dccp 0xb6511594 dccp_make_response +EXPORT_SYMBOL_GPL net/dccp/dccp 0xbf5d8955 compat_dccp_getsockopt +EXPORT_SYMBOL_GPL net/dccp/dccp 0xc3b6a26c dccp_orphan_count +EXPORT_SYMBOL_GPL net/dccp/dccp 0xd70d4439 compat_dccp_setsockopt +EXPORT_SYMBOL_GPL net/dccp/dccp 0xe1d938bc dccp_recvmsg +EXPORT_SYMBOL_GPL net/dccp/dccp 0xe2f42f59 dccp_rcv_state_process +EXPORT_SYMBOL_GPL net/dccp/dccp 0xe348f5e3 dccp_child_process +EXPORT_SYMBOL_GPL net/dccp/dccp 0xe9e4bd80 dccp_ctl_make_reset +EXPORT_SYMBOL_GPL net/dccp/dccp 0xea880623 dccp_feat_signal_nn_change +EXPORT_SYMBOL_GPL net/dccp/dccp 0xed9b5f48 dccp_send_sync +EXPORT_SYMBOL_GPL net/dccp/dccp 0xee14c854 dccp_ioctl +EXPORT_SYMBOL_GPL net/dccp/dccp 0xef2ee152 dccp_close +EXPORT_SYMBOL_GPL net/dccp/dccp 0xf04feb64 inet_dccp_listen +EXPORT_SYMBOL_GPL net/dccp/dccp 0xfe7946b5 dccp_reqsk_send_ack +EXPORT_SYMBOL_GPL net/dccp/dccp_ipv4 0x169f48f5 dccp_v4_connect +EXPORT_SYMBOL_GPL net/dccp/dccp_ipv4 0x41397b27 dccp_invalid_packet +EXPORT_SYMBOL_GPL net/dccp/dccp_ipv4 0x5b6a4401 dccp_v4_conn_request +EXPORT_SYMBOL_GPL net/dccp/dccp_ipv4 0x6f226eb2 dccp_v4_request_recv_sock +EXPORT_SYMBOL_GPL net/dccp/dccp_ipv4 0xd6311117 dccp_v4_send_check +EXPORT_SYMBOL_GPL net/dccp/dccp_ipv4 0xf4f322c3 dccp_v4_do_rcv +EXPORT_SYMBOL_GPL net/dsa/dsa_core 0x0c65286a dsa_devlink_resources_unregister +EXPORT_SYMBOL_GPL net/dsa/dsa_core 0x2e507800 dsa_switch_suspend +EXPORT_SYMBOL_GPL net/dsa/dsa_core 0x3478f45d dsa_devlink_resource_register +EXPORT_SYMBOL_GPL net/dsa/dsa_core 0x458208b9 dsa_devlink_param_get +EXPORT_SYMBOL_GPL net/dsa/dsa_core 0x4b92e884 dsa_devlink_resource_occ_get_register +EXPORT_SYMBOL_GPL net/dsa/dsa_core 0x5c5bb8ee unregister_dsa_notifier +EXPORT_SYMBOL_GPL net/dsa/dsa_core 0x5d4d4068 dsa_enqueue_skb +EXPORT_SYMBOL_GPL net/dsa/dsa_core 0x5ea40d6a dsa_switch_find +EXPORT_SYMBOL_GPL net/dsa/dsa_core 0x5ee0b446 dsa_tag_drivers_unregister +EXPORT_SYMBOL_GPL net/dsa/dsa_core 0x67810666 call_dsa_notifiers +EXPORT_SYMBOL_GPL net/dsa/dsa_core 0x682469c6 dsa_switch_resume +EXPORT_SYMBOL_GPL net/dsa/dsa_core 0x6e40ff89 dsa_devlink_resource_occ_get_unregister +EXPORT_SYMBOL_GPL net/dsa/dsa_core 0x6f2609fd dsa_devlink_param_set +EXPORT_SYMBOL_GPL net/dsa/dsa_core 0x73c9bd9d dsa_register_switch +EXPORT_SYMBOL_GPL net/dsa/dsa_core 0x8a7c0ff1 dsa_port_get_phy_sset_count +EXPORT_SYMBOL_GPL net/dsa/dsa_core 0x8acf7a70 dsa_port_get_ethtool_phy_stats +EXPORT_SYMBOL_GPL net/dsa/dsa_core 0x9722702f dsa_port_phylink_mac_change +EXPORT_SYMBOL_GPL net/dsa/dsa_core 0x97c3b8a6 dsa_unregister_switch +EXPORT_SYMBOL_GPL net/dsa/dsa_core 0x98b6499a dsa_port_from_netdev +EXPORT_SYMBOL_GPL net/dsa/dsa_core 0xa4d84838 dsa_devlink_params_unregister +EXPORT_SYMBOL_GPL net/dsa/dsa_core 0xd46e8a88 dsa_tag_drivers_register +EXPORT_SYMBOL_GPL net/dsa/dsa_core 0xe16b1f7e dsa_devlink_params_register +EXPORT_SYMBOL_GPL net/dsa/dsa_core 0xf4d12696 dsa_port_get_phy_strings +EXPORT_SYMBOL_GPL net/dsa/dsa_core 0xf86039e0 register_dsa_notifier +EXPORT_SYMBOL_GPL net/dsa/dsa_core 0xfb881be8 dsa_dev_to_net_device +EXPORT_SYMBOL_GPL net/dsa/tag_8021q 0x05bb9faa dsa_8021q_crosschip_bridge_join +EXPORT_SYMBOL_GPL net/dsa/tag_8021q 0x415e894e dsa_8021q_rx_subvlan +EXPORT_SYMBOL_GPL net/dsa/tag_8021q 0x417d1fed dsa_8021q_rx_switch_id +EXPORT_SYMBOL_GPL net/dsa/tag_8021q 0x73f0dd20 dsa_8021q_rx_vid_subvlan +EXPORT_SYMBOL_GPL net/dsa/tag_8021q 0x8c459d15 dsa_8021q_crosschip_bridge_leave +EXPORT_SYMBOL_GPL net/dsa/tag_8021q 0x8f9769b2 dsa_port_setup_8021q_tagging +EXPORT_SYMBOL_GPL net/dsa/tag_8021q 0x9e59271d dsa_8021q_rx_source_port +EXPORT_SYMBOL_GPL net/dsa/tag_8021q 0xd60d0c0d dsa_8021q_tx_vid +EXPORT_SYMBOL_GPL net/dsa/tag_8021q 0xd7391276 dsa_8021q_rx_vid +EXPORT_SYMBOL_GPL net/dsa/tag_8021q 0xddc57f7c dsa_8021q_xmit +EXPORT_SYMBOL_GPL net/dsa/tag_8021q 0xf13e1803 vid_is_dsa_8021q +EXPORT_SYMBOL_GPL net/ieee802154/ieee802154 0x48710e81 ieee802154_hdr_peek_addrs +EXPORT_SYMBOL_GPL net/ieee802154/ieee802154 0x76a7096f ieee802154_hdr_peek +EXPORT_SYMBOL_GPL net/ieee802154/ieee802154 0x84f320a9 ieee802154_hdr_pull +EXPORT_SYMBOL_GPL net/ieee802154/ieee802154 0x87e2553b ieee802154_max_payload +EXPORT_SYMBOL_GPL net/ieee802154/ieee802154 0xa4a7eb0e ieee802154_hdr_push +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 0x77aa027f ife_decode +EXPORT_SYMBOL_GPL net/ife/ife 0xe7888e98 ife_tlv_meta_encode +EXPORT_SYMBOL_GPL net/ife/ife 0xf599b741 ife_encode +EXPORT_SYMBOL_GPL net/ipv4/esp4 0x1a135350 esp_output_tail +EXPORT_SYMBOL_GPL net/ipv4/esp4 0x665f1fee esp_input_done2 +EXPORT_SYMBOL_GPL net/ipv4/esp4 0xfe8b6f7d esp_output_head +EXPORT_SYMBOL_GPL net/ipv4/gre 0xa22eda83 gre_del_protocol +EXPORT_SYMBOL_GPL net/ipv4/gre 0xf34fd5ee gre_add_protocol +EXPORT_SYMBOL_GPL net/ipv4/inet_diag 0x06161fab inet_diag_bc_sk +EXPORT_SYMBOL_GPL net/ipv4/inet_diag 0x3b502843 inet_diag_dump_icsk +EXPORT_SYMBOL_GPL net/ipv4/inet_diag 0x4e0cdcc5 inet_diag_find_one_icsk +EXPORT_SYMBOL_GPL net/ipv4/inet_diag 0xa3efaafe inet_diag_msg_common_fill +EXPORT_SYMBOL_GPL net/ipv4/inet_diag 0xdc2a64f7 inet_diag_unregister +EXPORT_SYMBOL_GPL net/ipv4/inet_diag 0xedcdabc6 inet_diag_msg_attrs_fill +EXPORT_SYMBOL_GPL net/ipv4/inet_diag 0xf4620b4c inet_sk_diag_fill +EXPORT_SYMBOL_GPL net/ipv4/inet_diag 0xfbec9fa0 inet_diag_register +EXPORT_SYMBOL_GPL net/ipv4/inet_diag 0xfcd5f424 inet_diag_dump_one_icsk +EXPORT_SYMBOL_GPL net/ipv4/ip_gre 0xa3242fff gretap_fb_dev_create +EXPORT_SYMBOL_GPL net/ipv4/ip_tunnel 0x0bafbcac ip_tunnel_rcv +EXPORT_SYMBOL_GPL net/ipv4/ip_tunnel 0x2987aaf8 ip_tunnel_ctl +EXPORT_SYMBOL_GPL net/ipv4/ip_tunnel 0x31082e8c ip_tunnel_newlink +EXPORT_SYMBOL_GPL net/ipv4/ip_tunnel 0x4cffa078 ip_md_tunnel_xmit +EXPORT_SYMBOL_GPL net/ipv4/ip_tunnel 0x60e94b05 __ip_tunnel_change_mtu +EXPORT_SYMBOL_GPL net/ipv4/ip_tunnel 0x63507284 ip_tunnel_delete_nets +EXPORT_SYMBOL_GPL net/ipv4/ip_tunnel 0x67154c41 ip_tunnel_encap_setup +EXPORT_SYMBOL_GPL net/ipv4/ip_tunnel 0x843e6704 ip_tunnel_uninit +EXPORT_SYMBOL_GPL net/ipv4/ip_tunnel 0x8af82019 ip_tunnel_init +EXPORT_SYMBOL_GPL net/ipv4/ip_tunnel 0x8b6563dc ip_tunnel_ioctl +EXPORT_SYMBOL_GPL net/ipv4/ip_tunnel 0x8c85beb5 ip_tunnel_change_mtu +EXPORT_SYMBOL_GPL net/ipv4/ip_tunnel 0x9f991c8b ip_tunnel_xmit +EXPORT_SYMBOL_GPL net/ipv4/ip_tunnel 0xac3b70a9 ip_tunnel_dellink +EXPORT_SYMBOL_GPL net/ipv4/ip_tunnel 0xb85fdb83 ip_tunnel_init_net +EXPORT_SYMBOL_GPL net/ipv4/ip_tunnel 0xbce1f684 ip_tunnel_lookup +EXPORT_SYMBOL_GPL net/ipv4/ip_tunnel 0xcb092f5f ip_tunnel_setup +EXPORT_SYMBOL_GPL net/ipv4/ip_tunnel 0xe6c7db9c ip_tunnel_changelink +EXPORT_SYMBOL_GPL net/ipv4/netfilter/arp_tables 0x92742aa2 arpt_alloc_initial_table +EXPORT_SYMBOL_GPL net/ipv4/netfilter/ip_tables 0x455a6820 ipt_alloc_initial_table +EXPORT_SYMBOL_GPL net/ipv4/netfilter/nf_defrag_ipv4 0x912bf66b nf_defrag_ipv4_enable +EXPORT_SYMBOL_GPL net/ipv4/netfilter/nf_dup_ipv4 0x1da78163 nf_dup_ipv4 +EXPORT_SYMBOL_GPL net/ipv4/netfilter/nf_reject_ipv4 0x66fde265 nf_reject_iphdr_put +EXPORT_SYMBOL_GPL net/ipv4/netfilter/nf_reject_ipv4 0x70321954 nf_send_unreach +EXPORT_SYMBOL_GPL net/ipv4/netfilter/nf_reject_ipv4 0xea54a17d nf_send_reset +EXPORT_SYMBOL_GPL net/ipv4/netfilter/nf_reject_ipv4 0xf20b47e9 nf_reject_ip_tcphdr_put +EXPORT_SYMBOL_GPL net/ipv4/netfilter/nf_reject_ipv4 0xf74ec75e nf_reject_ip_tcphdr_get +EXPORT_SYMBOL_GPL net/ipv4/netfilter/nf_socket_ipv4 0x57f6fa38 nf_sk_lookup_slow_v4 +EXPORT_SYMBOL_GPL net/ipv4/netfilter/nf_tproxy_ipv4 0x67c62222 nf_tproxy_handle_time_wait4 +EXPORT_SYMBOL_GPL net/ipv4/netfilter/nf_tproxy_ipv4 0x8579c6ae nf_tproxy_get_sock_v4 +EXPORT_SYMBOL_GPL net/ipv4/netfilter/nf_tproxy_ipv4 0xc352d928 nf_tproxy_laddr4 +EXPORT_SYMBOL_GPL net/ipv4/netfilter/nft_fib_ipv4 0x4fbfac19 nft_fib4_eval +EXPORT_SYMBOL_GPL net/ipv4/netfilter/nft_fib_ipv4 0xcf6a5535 nft_fib4_eval_type +EXPORT_SYMBOL_GPL net/ipv4/tcp_vegas 0x3b93e391 tcp_vegas_init +EXPORT_SYMBOL_GPL net/ipv4/tcp_vegas 0x4ebc608b tcp_vegas_get_info +EXPORT_SYMBOL_GPL net/ipv4/tcp_vegas 0x5977e174 tcp_vegas_state +EXPORT_SYMBOL_GPL net/ipv4/tcp_vegas 0x8cef002a tcp_vegas_pkts_acked +EXPORT_SYMBOL_GPL net/ipv4/tcp_vegas 0xada8a91b tcp_vegas_cwnd_event +EXPORT_SYMBOL_GPL net/ipv4/udp_tunnel 0x4e05bb03 udp_tunnel_push_rx_port +EXPORT_SYMBOL_GPL net/ipv4/udp_tunnel 0x51d68f46 udp_tunnel_notify_add_rx_port +EXPORT_SYMBOL_GPL net/ipv4/udp_tunnel 0x5d28badb udp_tunnel_drop_rx_port +EXPORT_SYMBOL_GPL net/ipv4/udp_tunnel 0x89b49e1e udp_tun_rx_dst +EXPORT_SYMBOL_GPL net/ipv4/udp_tunnel 0x90eb974f udp_tunnel_xmit_skb +EXPORT_SYMBOL_GPL net/ipv4/udp_tunnel 0xc938898f udp_tunnel_notify_del_rx_port +EXPORT_SYMBOL_GPL net/ipv4/udp_tunnel 0xdb5c1bb1 setup_udp_tunnel_sock +EXPORT_SYMBOL_GPL net/ipv4/udp_tunnel 0xdd122c22 udp_tunnel_sock_release +EXPORT_SYMBOL_GPL net/ipv6/esp6 0x0fc9104b esp6_output_tail +EXPORT_SYMBOL_GPL net/ipv6/esp6 0x6814364a esp6_input_done2 +EXPORT_SYMBOL_GPL net/ipv6/esp6 0xff5392cb esp6_output_head +EXPORT_SYMBOL_GPL net/ipv6/ip6_tunnel 0x3beb97f4 ip6_tnl_xmit_ctl +EXPORT_SYMBOL_GPL net/ipv6/ip6_tunnel 0x9ed6d31f ip6_tnl_rcv_ctl +EXPORT_SYMBOL_GPL net/ipv6/ip6_tunnel 0xb8e0d55c ip6_tnl_encap_setup +EXPORT_SYMBOL_GPL net/ipv6/ip6_udp_tunnel 0x34e137d0 udp_sock_create6 +EXPORT_SYMBOL_GPL net/ipv6/ip6_udp_tunnel 0xc36da83f udp_tunnel6_xmit_skb +EXPORT_SYMBOL_GPL net/ipv6/netfilter/ip6_tables 0x1a16c214 ip6t_alloc_initial_table +EXPORT_SYMBOL_GPL net/ipv6/netfilter/nf_defrag_ipv6 0x5c72a9f0 nf_defrag_ipv6_enable +EXPORT_SYMBOL_GPL net/ipv6/netfilter/nf_defrag_ipv6 0x7354e751 nf_ct_frag6_gather +EXPORT_SYMBOL_GPL net/ipv6/netfilter/nf_dup_ipv6 0x716e6688 nf_dup_ipv6 +EXPORT_SYMBOL_GPL net/ipv6/netfilter/nf_reject_ipv6 0x2b9f0c35 nf_reject_ip6_tcphdr_get +EXPORT_SYMBOL_GPL net/ipv6/netfilter/nf_reject_ipv6 0x4247ec12 nf_send_unreach6 +EXPORT_SYMBOL_GPL net/ipv6/netfilter/nf_reject_ipv6 0x56ef23ff nf_reject_ip6_tcphdr_put +EXPORT_SYMBOL_GPL net/ipv6/netfilter/nf_reject_ipv6 0xb9814398 nf_reject_ip6hdr_put +EXPORT_SYMBOL_GPL net/ipv6/netfilter/nf_reject_ipv6 0xbfab1157 nf_send_reset6 +EXPORT_SYMBOL_GPL net/ipv6/netfilter/nf_socket_ipv6 0xd0915b51 nf_sk_lookup_slow_v6 +EXPORT_SYMBOL_GPL net/ipv6/netfilter/nf_tproxy_ipv6 0x1ef00d1b nf_tproxy_handle_time_wait6 +EXPORT_SYMBOL_GPL net/ipv6/netfilter/nf_tproxy_ipv6 0xb868ea06 nf_tproxy_get_sock_v6 +EXPORT_SYMBOL_GPL net/ipv6/netfilter/nf_tproxy_ipv6 0xcdc36691 nf_tproxy_laddr6 +EXPORT_SYMBOL_GPL net/ipv6/netfilter/nft_fib_ipv6 0x5be78937 nft_fib6_eval +EXPORT_SYMBOL_GPL net/ipv6/netfilter/nft_fib_ipv6 0x82079e81 nft_fib6_eval_type +EXPORT_SYMBOL_GPL net/l2tp/l2tp_core 0x1e2a3e84 l2tp_session_set_header_len +EXPORT_SYMBOL_GPL net/l2tp/l2tp_core 0x2f687ebc l2tp_session_delete +EXPORT_SYMBOL_GPL net/l2tp/l2tp_core 0x34619e9c l2tp_session_get_nth +EXPORT_SYMBOL_GPL net/l2tp/l2tp_core 0x3c3613d3 l2tp_tunnel_get +EXPORT_SYMBOL_GPL net/l2tp/l2tp_core 0x547c905b l2tp_tunnel_get_session +EXPORT_SYMBOL_GPL net/l2tp/l2tp_core 0x641aa859 l2tp_xmit_skb +EXPORT_SYMBOL_GPL net/l2tp/l2tp_core 0x77139b13 l2tp_session_get_by_ifname +EXPORT_SYMBOL_GPL net/l2tp/l2tp_core 0x7aa04517 l2tp_tunnel_get_nth +EXPORT_SYMBOL_GPL net/l2tp/l2tp_core 0x7cc103a5 l2tp_session_create +EXPORT_SYMBOL_GPL net/l2tp/l2tp_core 0x8eab3f7f l2tp_tunnel_create +EXPORT_SYMBOL_GPL net/l2tp/l2tp_core 0xb81fed38 l2tp_session_register +EXPORT_SYMBOL_GPL net/l2tp/l2tp_core 0xbc486440 __l2tp_session_unhash +EXPORT_SYMBOL_GPL net/l2tp/l2tp_core 0xc9555c6c l2tp_tunnel_register +EXPORT_SYMBOL_GPL net/l2tp/l2tp_core 0xd168d3e8 l2tp_udp_encap_recv +EXPORT_SYMBOL_GPL net/l2tp/l2tp_core 0xe1e07239 l2tp_session_get +EXPORT_SYMBOL_GPL net/l2tp/l2tp_core 0xe75f735d l2tp_tunnel_delete +EXPORT_SYMBOL_GPL net/l2tp/l2tp_core 0xf3197f75 l2tp_session_free +EXPORT_SYMBOL_GPL net/l2tp/l2tp_netlink 0x2d95c905 l2tp_nl_register_ops +EXPORT_SYMBOL_GPL net/l2tp/l2tp_netlink 0x337f2432 l2tp_nl_unregister_ops +EXPORT_SYMBOL_GPL net/mac80211/mac80211 0x0242a7ad ieee80211_calc_tx_airtime +EXPORT_SYMBOL_GPL net/mac80211/mac80211 0x032407d6 ieee80211_gtk_rekey_add +EXPORT_SYMBOL_GPL net/mac80211/mac80211 0x03d19717 ieee80211_iter_chan_contexts_atomic +EXPORT_SYMBOL_GPL net/mac80211/mac80211 0x0bcc8725 wdev_to_ieee80211_vif +EXPORT_SYMBOL_GPL net/mac80211/mac80211 0x35a4879f ieee80211_calc_rx_airtime +EXPORT_SYMBOL_GPL net/mac80211/mac80211 0x4992eaf5 ieee80211_update_mu_groups +EXPORT_SYMBOL_GPL net/mac80211/mac80211 0x4c1a95c4 ieee80211_iterate_interfaces +EXPORT_SYMBOL_GPL net/mac80211/mac80211 0x5250cf98 ieee80211_tkip_add_iv +EXPORT_SYMBOL_GPL net/mac80211/mac80211 0x596000f1 ieee80211_find_sta_by_ifaddr +EXPORT_SYMBOL_GPL net/mac80211/mac80211 0x6007292b ieee80211_iterate_active_interfaces_rtnl +EXPORT_SYMBOL_GPL net/mac80211/mac80211 0x6c2871c8 ieee80211_gtk_rekey_notify +EXPORT_SYMBOL_GPL net/mac80211/mac80211 0x7a142bba ieee80211_remain_on_channel_expired +EXPORT_SYMBOL_GPL net/mac80211/mac80211 0x838b0aca ieee80211_iterate_stations_atomic +EXPORT_SYMBOL_GPL net/mac80211/mac80211 0xa1247034 ieee80211_remove_key +EXPORT_SYMBOL_GPL net/mac80211/mac80211 0xb5156dd8 ieee80211_resume_disconnect +EXPORT_SYMBOL_GPL net/mac80211/mac80211 0xbd82f0d0 ieee80211_ave_rssi +EXPORT_SYMBOL_GPL net/mac80211/mac80211 0xcd33e76b ieee80211_ready_on_channel +EXPORT_SYMBOL_GPL net/mac80211/mac80211 0xd8e09da4 ieee80211_set_key_rx_seq +EXPORT_SYMBOL_GPL net/mac80211/mac80211 0xeca92fa6 ieee80211_request_smps +EXPORT_SYMBOL_GPL net/mac80211/mac80211 0xf078850a ieee80211_iterate_active_interfaces_atomic +EXPORT_SYMBOL_GPL net/mac80211/mac80211 0xf7ea634c ieee80211_vif_to_wdev +EXPORT_SYMBOL_GPL net/mpls/mpls_router 0x1d59ad07 nla_put_labels +EXPORT_SYMBOL_GPL net/mpls/mpls_router 0x6a00f20c mpls_pkt_too_big +EXPORT_SYMBOL_GPL net/mpls/mpls_router 0x70556cb7 mpls_stats_inc_outucastpkts +EXPORT_SYMBOL_GPL net/mpls/mpls_router 0x98f6d4ad mpls_output_possible +EXPORT_SYMBOL_GPL net/mpls/mpls_router 0xe413b0a4 nla_get_labels +EXPORT_SYMBOL_GPL net/mpls/mpls_router 0xed383a3b mpls_dev_mtu +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0x0b5d63d3 ip_set_put_byindex +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0x0d7a8ab3 ip_set_add +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0x22d966c6 ip_set_range_to_cidr +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0x22febccc ip_set_init_comment +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0x28d91aa7 ip_set_extensions +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0x2e5d73e2 ip_set_type_unregister +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0x2fbe0032 ip_set_nfnl_get_byindex +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0x320ba56e ip_set_del +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0x3617d812 ip_set_name_byindex +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0x397f6231 ip_set_free +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0x5c67530d 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 0x805b6d27 ip_set_put_extensions +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0x81fff2d1 ip_set_netmask_map +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0x9e98722b ip_set_get_ipaddr6 +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0x9eacd905 ip_set_get_extensions +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0xa293f8a6 ip_set_get_ipaddr4 +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0xa2f86661 ip_set_get_ip6_port +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0xb10a9242 ip_set_get_byname +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0xb23c1824 ip_set_type_register +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0xb5c52212 ip_set_get_ip4_port +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0xbc9fa91c ip_set_elem_len +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0xc0df7bd2 ip_set_test +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0xcdc70519 ip_set_nfnl_put +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0xf3b4d4ae ip_set_alloc +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0xf9cbf138 ip_set_match_extensions +EXPORT_SYMBOL_GPL net/netfilter/ipvs/ip_vs 0xac67025a register_ip_vs_pe +EXPORT_SYMBOL_GPL net/netfilter/ipvs/ip_vs 0xd6fd1361 unregister_ip_vs_pe +EXPORT_SYMBOL_GPL net/netfilter/ipvs/ip_vs 0xdf3fe0fb ip_vs_conn_in_get_proto +EXPORT_SYMBOL_GPL net/netfilter/ipvs/ip_vs 0xe02413a8 ip_vs_conn_out_get_proto +EXPORT_SYMBOL_GPL net/netfilter/nf_conncount 0x33cb94a7 nf_conncount_count +EXPORT_SYMBOL_GPL net/netfilter/nf_conncount 0x3ff55ad3 nf_conncount_cache_free +EXPORT_SYMBOL_GPL net/netfilter/nf_conncount 0x8c4cb9c3 nf_conncount_list_init +EXPORT_SYMBOL_GPL net/netfilter/nf_conncount 0xb13c77ec nf_conncount_gc_list +EXPORT_SYMBOL_GPL net/netfilter/nf_conncount 0xbfc3c741 nf_conncount_destroy +EXPORT_SYMBOL_GPL net/netfilter/nf_conncount 0xd3aeb6f4 nf_conncount_add +EXPORT_SYMBOL_GPL net/netfilter/nf_conncount 0xfcfa234d nf_conncount_init +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x018ef292 __nf_ct_try_assign_helper +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x084fa813 nf_ct_untimeout +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x09557eec nf_ct_timeout_find_get_hook +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x09bd5dba nf_ct_expect_find_get +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x0a114ade nf_conntrack_in +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x0bc00f80 nf_nat_helper_try_module_get +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x0ded16c0 __nf_ct_refresh_acct +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x1422b4a6 nf_ct_delete +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x17fa84aa nf_conntrack_find_get +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x19007294 nf_ct_gre_keymap_destroy +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x1bf3095f nf_ct_helper_expectfn_find_by_symbol +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x1cba55c1 nf_l4proto_log_invalid +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x1e5264a2 nf_ct_seqadj_set +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x1ef7cd0f nf_ct_set_timeout +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x2358954a nf_ct_seqadj_init +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x2480e5d2 nf_ct_port_tuple_to_nlattr +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 0x2a3c2e2d nf_conntrack_helpers_register +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x39cc2cb1 nf_nat_helper_unregister +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x3d8a3ff9 nf_ct_bridge_register +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x3e90e00c nf_nat_helper_put +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x42249d87 nf_ct_seq_adjust +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x48907b2d nf_connlabels_replace +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x4d6fb6ec nf_conntrack_register_notifier +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x50eed700 __nf_conntrack_helper_find +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x522e4b3a nf_ct_helper_expectfn_unregister +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x565565ea nf_ct_extend_unregister +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x5aa85efa nf_ct_remove_expectations +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x5f90f1da nf_ct_iterate_cleanup_net +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x62aea6ab nf_ct_expect_register_notifier +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x651703a5 nf_ct_extend_register +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x65ee05a9 nf_ct_bridge_unregister +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x693c3961 nf_ct_helper_hash +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x6f152fa9 nf_conntrack_helpers_unregister +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x730a7cb3 nf_ct_tcp_seqadj_set +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x731a54e0 nf_ct_l4proto_log_invalid +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x75b0e46c nf_ct_expect_unregister_notifier +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x76da71e4 __nf_conntrack_confirm +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x7c13e8fc nf_ct_expect_alloc +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x7da80b2e nf_ct_port_nla_policy +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x7e8a4afd nf_conntrack_unregister_notifier +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x7f3ab57f nf_ct_destroy_timeout +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x867743ba nf_ct_get_id +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x87d91277 nf_ct_iterate_destroy +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x89c18a62 nf_connlabels_put +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x8b2aef75 nf_conntrack_hash_check_insert +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x8ded0dc5 nf_conntrack_helper_register +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x8ffe7e89 nf_conntrack_htable_size +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x925d71d1 nf_ct_tmpl_alloc +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x960084fb nf_confirm +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x97a3a1c9 nf_ct_seq_offset +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x98da1640 nf_ct_helper_expectfn_register +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x998313d7 nf_ct_helper_log +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x9adb7399 nf_conntrack_expect_lock +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x9b02890d nf_conntrack_helper_unregister +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x9b50c5ac nf_ct_acct_add +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x9f51c03d nf_conntrack_helper_try_module_get +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xa283a5d0 nf_ct_deliver_cached_events +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xa6e39be8 nf_ct_expect_iterate_net +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xacd54110 nf_conntrack_alter_reply +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xaf0847f0 nf_conntrack_locks +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xafbd6cf5 nf_ct_port_nlattr_to_tuple +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xb07d720c nf_ct_timeout_put_hook +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xb1ec6add nf_connlabels_get +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xb584cd48 nf_ct_expect_put +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xb61f1725 nf_ct_expect_related_report +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xb65c7f3a nf_conntrack_eventmask_report +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xb93b73cb nf_ct_kill_acct +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xbfb29211 nf_conntrack_helper_put +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xbfb42403 nf_ct_tmpl_free +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xc18ac88d nf_ct_expect_hsize +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xc40f284c nf_ct_helper_hsize +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xc92aa903 nf_ct_expect_iterate_destroy +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xc9fc5e7f nf_ct_netns_put +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xcfe538e5 nf_ct_helper_expectfn_find_by_name +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xd0b3494e nf_ct_unconfirmed_destroy +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xd2dafcef nf_ct_expect_init +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xd505c3e0 nf_ct_port_nlattr_tuple_size +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xd93bdcb2 nf_ct_get_tuplepr +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xdba7326b nf_conntrack_lock +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xe33029d1 nf_nat_helper_register +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xe36bb82c nf_ct_helper_init +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xe58ced49 nf_ct_l4proto_find +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xe7d46e88 __nf_ct_expect_find +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xec8beba6 nf_ct_expect_hash +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xed4e7645 nf_conntrack_tuple_taken +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xf20c2e26 nf_ct_unexpect_related +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xf38bcdf3 nf_conntrack_max +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xf4ee13d6 nf_ct_gre_keymap_add +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xf50681d6 nf_ct_unlink_expect_report +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xf8d22791 nf_conntrack_free +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xfe40df0b nf_conntrack_alloc +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xfe6591d7 nf_ct_netns_get +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xfe731af8 nf_ct_invert_tuple +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xfedda341 nf_ct_remove_expect +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xffe2882b nf_ct_helper_ext_add +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_amanda 0xcec1a2dc nf_nat_amanda_hook +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_broadcast 0xf6cf51c6 nf_conntrack_broadcast_help +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_ftp 0xd5c7d541 nf_nat_ftp_hook +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_h323 0x00c64d2a nat_t120_hook +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_h323 0x0acfe318 get_h225_addr +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_h323 0x1588fc8f set_h225_addr_hook +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_h323 0x20d0794c nat_q931_hook +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_h323 0x24d0deca nat_rtp_rtcp_hook +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_h323 0xb1d721fd set_sig_addr_hook +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_h323 0xc668ef66 set_h245_addr_hook +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_h323 0xc85bd3c6 set_ras_addr_hook +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_h323 0xdd3d2bf6 nat_h245_hook +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_h323 0xf9896023 nat_callforwarding_hook +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_irc 0xb8fca306 nf_nat_irc_hook +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_pptp 0x251f45a5 nf_nat_pptp_hook_inbound +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_pptp 0x707c4251 nf_nat_pptp_hook_exp_gre +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_pptp 0x7ff10ae6 nf_nat_pptp_hook_outbound +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_pptp 0x8e359557 nf_nat_pptp_hook_expectfn +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_sip 0x0287a532 ct_sip_parse_request +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_sip 0x150d842e ct_sip_get_header +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_sip 0x672cf78d ct_sip_get_sdp_header +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_sip 0x787ff54b ct_sip_parse_address_param +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_sip 0xb9bfb993 ct_sip_parse_header_uri +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_sip 0xcf4bd66a ct_sip_parse_numerical_param +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_sip 0xf0904ba7 nf_nat_sip_hooks +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_snmp 0x52011ace nf_nat_snmp_hook +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_tftp 0x6db45bcf nf_nat_tftp_hook +EXPORT_SYMBOL_GPL net/netfilter/nf_dup_netdev 0x71f91cc5 nf_dup_netdev_egress +EXPORT_SYMBOL_GPL net/netfilter/nf_dup_netdev 0xf567fa8c nft_fwd_dup_netdev_offload +EXPORT_SYMBOL_GPL net/netfilter/nf_dup_netdev 0xf8318d34 nf_fwd_netdev_egress +EXPORT_SYMBOL_GPL net/netfilter/nf_flow_table 0x05991344 nf_flow_offload_ipv6_hook +EXPORT_SYMBOL_GPL net/netfilter/nf_flow_table 0x3f03ca1d nf_flow_rule_route_ipv4 +EXPORT_SYMBOL_GPL net/netfilter/nf_flow_table 0x3fae94fb flow_offload_free +EXPORT_SYMBOL_GPL net/netfilter/nf_flow_table 0x59d50a76 flow_offload_teardown +EXPORT_SYMBOL_GPL net/netfilter/nf_flow_table 0x68a7bed0 flow_offload_add +EXPORT_SYMBOL_GPL net/netfilter/nf_flow_table 0x69eb8c29 flow_offload_refresh +EXPORT_SYMBOL_GPL net/netfilter/nf_flow_table 0x748daf3a flow_offload_route_init +EXPORT_SYMBOL_GPL net/netfilter/nf_flow_table 0x7b1aeee8 flow_offload_alloc +EXPORT_SYMBOL_GPL net/netfilter/nf_flow_table 0x7cc85820 nf_flow_table_offload_setup +EXPORT_SYMBOL_GPL net/netfilter/nf_flow_table 0x89d093b6 nf_flow_table_init +EXPORT_SYMBOL_GPL net/netfilter/nf_flow_table 0xa10b82f4 nf_flow_snat_port +EXPORT_SYMBOL_GPL net/netfilter/nf_flow_table 0xa885631e nf_flow_table_free +EXPORT_SYMBOL_GPL net/netfilter/nf_flow_table 0xc66ca320 nf_flow_dnat_port +EXPORT_SYMBOL_GPL net/netfilter/nf_flow_table 0xcfe725b9 flow_offload_lookup +EXPORT_SYMBOL_GPL net/netfilter/nf_flow_table 0xdac3eba5 nf_flow_table_cleanup +EXPORT_SYMBOL_GPL net/netfilter/nf_flow_table 0xf701fb1e nf_flow_rule_route_ipv6 +EXPORT_SYMBOL_GPL net/netfilter/nf_flow_table 0xff3534ae nf_flow_offload_ip_hook +EXPORT_SYMBOL_GPL net/netfilter/nf_log_common 0x33be8fb9 nf_log_l2packet +EXPORT_SYMBOL_GPL net/netfilter/nf_log_common 0x3c04fa6f nf_log_dump_packet_common +EXPORT_SYMBOL_GPL net/netfilter/nf_log_common 0x8d7e654f nf_log_dump_sk_uid_gid +EXPORT_SYMBOL_GPL net/netfilter/nf_log_common 0xa2d0ac37 nf_log_dump_vlan +EXPORT_SYMBOL_GPL net/netfilter/nf_log_common 0xc251fa77 nf_log_dump_tcp_header +EXPORT_SYMBOL_GPL net/netfilter/nf_log_common 0xdc2946bb nf_log_dump_udp_header +EXPORT_SYMBOL_GPL net/netfilter/nf_nat 0x1951118b nf_nat_masquerade_ipv4 +EXPORT_SYMBOL_GPL net/netfilter/nf_nat 0x3bc17c49 nf_nat_masquerade_inet_register_notifiers +EXPORT_SYMBOL_GPL net/netfilter/nf_nat 0x533fb172 nf_nat_redirect_ipv6 +EXPORT_SYMBOL_GPL net/netfilter/nf_nat 0x54bbdc59 nf_nat_alloc_null_binding +EXPORT_SYMBOL_GPL net/netfilter/nf_nat 0x610d97f4 nf_ct_nat_ext_add +EXPORT_SYMBOL_GPL net/netfilter/nf_nat 0x693087a9 nf_nat_icmp_reply_translation +EXPORT_SYMBOL_GPL net/netfilter/nf_nat 0x792eb096 nf_nat_packet +EXPORT_SYMBOL_GPL net/netfilter/nf_nat 0x7941ae3f nf_nat_masquerade_ipv6 +EXPORT_SYMBOL_GPL net/netfilter/nf_nat 0x7adc3d54 nf_nat_ipv4_unregister_fn +EXPORT_SYMBOL_GPL net/netfilter/nf_nat 0x898e1742 nf_nat_inet_unregister_fn +EXPORT_SYMBOL_GPL net/netfilter/nf_nat 0x99dc689e nf_nat_inet_fn +EXPORT_SYMBOL_GPL net/netfilter/nf_nat 0xa6f8c66b nf_nat_icmpv6_reply_translation +EXPORT_SYMBOL_GPL net/netfilter/nf_nat 0xba31ed53 nf_nat_ipv6_register_fn +EXPORT_SYMBOL_GPL net/netfilter/nf_nat 0xba9088d1 nf_nat_inet_register_fn +EXPORT_SYMBOL_GPL net/netfilter/nf_nat 0xbde378fd nf_nat_ipv6_unregister_fn +EXPORT_SYMBOL_GPL net/netfilter/nf_nat 0xd9c25654 nf_nat_masquerade_inet_unregister_notifiers +EXPORT_SYMBOL_GPL net/netfilter/nf_nat 0xe5338af8 nf_nat_redirect_ipv4 +EXPORT_SYMBOL_GPL net/netfilter/nf_nat 0xeff8a514 nf_nat_ipv4_register_fn +EXPORT_SYMBOL_GPL net/netfilter/nf_synproxy_core 0x12a1a694 ipv4_synproxy_hook +EXPORT_SYMBOL_GPL net/netfilter/nf_synproxy_core 0x1f099794 synproxy_init_timestamp_cookie +EXPORT_SYMBOL_GPL net/netfilter/nf_synproxy_core 0x24236c28 synproxy_parse_options +EXPORT_SYMBOL_GPL net/netfilter/nf_synproxy_core 0x263e0038 nf_synproxy_ipv6_init +EXPORT_SYMBOL_GPL net/netfilter/nf_synproxy_core 0x3863a0f2 ipv6_synproxy_hook +EXPORT_SYMBOL_GPL net/netfilter/nf_synproxy_core 0x418ffbcd synproxy_recv_client_ack_ipv6 +EXPORT_SYMBOL_GPL net/netfilter/nf_synproxy_core 0x4ce1f67c synproxy_send_client_synack_ipv6 +EXPORT_SYMBOL_GPL net/netfilter/nf_synproxy_core 0x50e38a84 nf_synproxy_ipv6_fini +EXPORT_SYMBOL_GPL net/netfilter/nf_synproxy_core 0xa9e0d623 synproxy_send_client_synack +EXPORT_SYMBOL_GPL net/netfilter/nf_synproxy_core 0xb06f7dbc nf_synproxy_ipv4_init +EXPORT_SYMBOL_GPL net/netfilter/nf_synproxy_core 0xc6b2f700 nf_synproxy_ipv4_fini +EXPORT_SYMBOL_GPL net/netfilter/nf_synproxy_core 0xca9fc082 synproxy_net_id +EXPORT_SYMBOL_GPL net/netfilter/nf_synproxy_core 0xcca61dfd synproxy_recv_client_ack +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0x04c26b4c nft_chain_validate_hooks +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0x13730aec __nft_release_basechain +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0x140ee9f4 nft_flowtable_lookup +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0x1bf96d00 nft_do_chain +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0x1e6b75a3 nft_parse_register +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0x3251d762 nf_tables_trans_destroy_flush_work +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0x41b71e65 nft_trace_enabled +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0x453f57ec nft_obj_notify +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0x502eed3d nft_meta_policy +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0x563db477 nft_register_expr +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0x5fdbf4a9 nft_set_elem_destroy +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0x7692821f nft_data_release +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0x7725e3a3 nft_data_init +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0x78e026f7 nft_dump_register +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0x79ba179d nft_validate_register_store +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0x817f7f77 nft_register_obj +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0x85430a76 nft_validate_register_load +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0x89815514 nft_data_dump +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0x9acde222 nft_meta_get_init +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0xa554c733 nft_meta_get_dump +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0xa8b52b72 nft_chain_validate +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0xae7e377f nft_unregister_flowtable_type +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0xb9ed32d9 nf_tables_bind_set +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0xbe811175 nft_chain_validate_dependency +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0xbf3aae34 nf_tables_deactivate_set +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0xbf4af2a5 nft_meta_set_init +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0xc2ac2ac7 nft_register_chain_type +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0xc4f587c4 nft_meta_set_eval +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0xc771851e nft_meta_set_validate +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0xcf1abb3e nft_set_lookup_global +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0xd19e2979 nf_tables_destroy_set +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0xd3185dfe nft_meta_set_destroy +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0xd533cf02 nft_register_flowtable_type +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0xd8f8fe99 nft_unregister_obj +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0xdce1f74e nft_meta_set_dump +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0xde57b5f5 nft_parse_u32_check +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0xe1af8a64 nft_unregister_expr +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0xe738b8a5 nft_obj_lookup +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0xf374c288 nft_unregister_chain_type +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0xf4f1bb54 nft_meta_get_eval +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0xfc8943e1 nf_tables_deactivate_flowtable +EXPORT_SYMBOL_GPL net/netfilter/nfnetlink 0x0490235f nfnetlink_send +EXPORT_SYMBOL_GPL net/netfilter/nfnetlink 0x09a6b219 nfnetlink_unicast +EXPORT_SYMBOL_GPL net/netfilter/nfnetlink 0x20ba18af nfnetlink_subsys_unregister +EXPORT_SYMBOL_GPL net/netfilter/nfnetlink 0x33703fed nfnetlink_has_listeners +EXPORT_SYMBOL_GPL net/netfilter/nfnetlink 0x5ce3b588 nfnl_lock +EXPORT_SYMBOL_GPL net/netfilter/nfnetlink 0x7f1cdc43 nfnetlink_subsys_register +EXPORT_SYMBOL_GPL net/netfilter/nfnetlink 0xdb065657 nfnl_unlock +EXPORT_SYMBOL_GPL net/netfilter/nfnetlink 0xef1d09b3 nfnetlink_set_err +EXPORT_SYMBOL_GPL net/netfilter/nfnetlink_acct 0x5a258382 nfnl_acct_find_get +EXPORT_SYMBOL_GPL net/netfilter/nfnetlink_acct 0x71455207 nfnl_acct_overquota +EXPORT_SYMBOL_GPL net/netfilter/nfnetlink_acct 0x7a8983c7 nfnl_acct_update +EXPORT_SYMBOL_GPL net/netfilter/nfnetlink_acct 0xbecf5d14 nfnl_acct_put +EXPORT_SYMBOL_GPL net/netfilter/nfnetlink_osf 0x146cb4df nf_osf_find +EXPORT_SYMBOL_GPL net/netfilter/nfnetlink_osf 0x35eff5e0 nf_osf_fingers +EXPORT_SYMBOL_GPL net/netfilter/nfnetlink_osf 0x8c087ce6 nf_osf_match +EXPORT_SYMBOL_GPL net/netfilter/nft_fib 0x938bd5c9 nft_fib_dump +EXPORT_SYMBOL_GPL net/netfilter/nft_fib 0xa95cfffc nft_fib_init +EXPORT_SYMBOL_GPL net/netfilter/nft_fib 0xae176c96 nft_fib_store_result +EXPORT_SYMBOL_GPL net/netfilter/nft_fib 0xe4f71114 nft_fib_validate +EXPORT_SYMBOL_GPL net/netfilter/nft_reject 0x105b07e2 nft_reject_policy +EXPORT_SYMBOL_GPL net/netfilter/nft_reject 0x1de558c1 nft_reject_icmpv6_code +EXPORT_SYMBOL_GPL net/netfilter/nft_reject 0x52f9713b nft_reject_validate +EXPORT_SYMBOL_GPL net/netfilter/nft_reject 0xb036ff50 nft_reject_dump +EXPORT_SYMBOL_GPL net/netfilter/nft_reject 0xe2c84666 nft_reject_icmp_code +EXPORT_SYMBOL_GPL net/netfilter/nft_reject 0xf6f210c7 nft_reject_init +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0x0396ca74 xt_compat_match_offset +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0x04e27719 xt_compat_flush_offsets +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0x07dacfb5 xt_register_table +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0x0b1089ed xt_compat_target_to_user +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0x192976b5 xt_table_unlock +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0x21f46d18 xt_replace_table +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0x24c8e482 xt_copy_counters_from_user +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0x395da824 xt_compat_match_from_user +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0x4e5be428 xt_request_find_table_lock +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0x50a79e30 xt_proto_fini +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0x57dacc7b xt_compat_target_offset +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0x5dec4626 xt_match_to_user +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0x6a418f28 xt_check_target +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 0x8904cdf3 xt_hook_ops_alloc +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0x8bd5602c xt_request_find_target +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0x9c995c69 xt_percpu_counter_alloc +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0xa3b1d0fa xt_find_table_lock +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0xa7c94f1d xt_compat_lock +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0xbc6673a2 xt_unregister_table +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0xbe1fdafe xt_request_find_match +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0xbfacb837 xt_percpu_counter_free +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0xc7fae024 xt_compat_calc_jump +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0xca2bf980 xt_compat_target_from_user +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0xce81f972 xt_compat_match_to_user +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 0xe367637a xt_proto_init +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0xed6253c0 xt_target_to_user +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0xf8571cbd xt_check_match +EXPORT_SYMBOL_GPL net/netfilter/xt_RATEEST 0x2cfb464b xt_rateest_put +EXPORT_SYMBOL_GPL net/netfilter/xt_RATEEST 0x8dbc39b7 xt_rateest_lookup +EXPORT_SYMBOL_GPL net/nfc/nci/nci_spi 0x01c4fcef nci_spi_allocate_spi +EXPORT_SYMBOL_GPL net/nfc/nci/nci_spi 0xb0612f16 nci_spi_send +EXPORT_SYMBOL_GPL net/nfc/nci/nci_spi 0xe68fbe1f nci_spi_read +EXPORT_SYMBOL_GPL net/nfc/nci/nci_uart 0x80019632 nci_uart_unregister +EXPORT_SYMBOL_GPL net/nfc/nci/nci_uart 0x92dddae1 nci_uart_set_config +EXPORT_SYMBOL_GPL net/nfc/nci/nci_uart 0x933dcda9 nci_uart_register +EXPORT_SYMBOL_GPL net/nsh/nsh 0xe34ab98b nsh_pop +EXPORT_SYMBOL_GPL net/nsh/nsh 0xf9c17a65 nsh_push +EXPORT_SYMBOL_GPL net/openvswitch/openvswitch 0x6d697ba0 ovs_netdev_tunnel_destroy +EXPORT_SYMBOL_GPL net/openvswitch/openvswitch 0x7765163f ovs_vport_free +EXPORT_SYMBOL_GPL net/openvswitch/openvswitch 0x929a2b40 __ovs_vport_ops_register +EXPORT_SYMBOL_GPL net/openvswitch/openvswitch 0xa2573263 ovs_vport_ops_unregister +EXPORT_SYMBOL_GPL net/openvswitch/openvswitch 0xbfe3570b ovs_vport_alloc +EXPORT_SYMBOL_GPL net/openvswitch/openvswitch 0xfadae966 ovs_netdev_link +EXPORT_SYMBOL_GPL net/psample/psample 0x3be7673f psample_group_get +EXPORT_SYMBOL_GPL net/psample/psample 0x7cb41b49 psample_group_take +EXPORT_SYMBOL_GPL net/psample/psample 0x92a8d66e psample_sample_packet +EXPORT_SYMBOL_GPL net/psample/psample 0xd16d9a02 psample_group_put +EXPORT_SYMBOL_GPL net/qrtr/ns 0x636a2832 qrtr_ns_init +EXPORT_SYMBOL_GPL net/qrtr/ns 0x8d25501f qrtr_ns_remove +EXPORT_SYMBOL_GPL net/qrtr/qrtr 0x27dcf049 qrtr_endpoint_register +EXPORT_SYMBOL_GPL net/qrtr/qrtr 0x331dc430 qrtr_endpoint_post +EXPORT_SYMBOL_GPL net/qrtr/qrtr 0x575547e4 qrtr_endpoint_unregister +EXPORT_SYMBOL_GPL net/rds/rds 0x00a467af rds_wq +EXPORT_SYMBOL_GPL net/rds/rds 0x0856a565 rds_message_unmapped +EXPORT_SYMBOL_GPL net/rds/rds 0x2b0d543c rds_message_add_extension +EXPORT_SYMBOL_GPL net/rds/rds 0x2d090451 rds_send_ping +EXPORT_SYMBOL_GPL net/rds/rds 0x36087aa4 rds_stats +EXPORT_SYMBOL_GPL net/rds/rds 0x4355ea2e rds_send_path_reset +EXPORT_SYMBOL_GPL net/rds/rds 0x45a4781e rds_addr_cmp +EXPORT_SYMBOL_GPL net/rds/rds 0x5700f8af rds_connect_path_complete +EXPORT_SYMBOL_GPL net/rds/rds 0x5720dc4f rds_conn_create_outgoing +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 0x6190e04c rds_conn_path_drop +EXPORT_SYMBOL_GPL net/rds/rds 0x759eacb5 rds_trans_register +EXPORT_SYMBOL_GPL net/rds/rds 0x78b77e16 rds_message_addref +EXPORT_SYMBOL_GPL net/rds/rds 0x7b399e66 rds_page_remainder_alloc +EXPORT_SYMBOL_GPL net/rds/rds 0x7c279356 rds_conn_drop +EXPORT_SYMBOL_GPL net/rds/rds 0x7ce0beb4 rds_inc_put +EXPORT_SYMBOL_GPL net/rds/rds 0x7d953aa9 rds_info_deregister_func +EXPORT_SYMBOL_GPL net/rds/rds 0x85e4e520 rds_stats_info_copy +EXPORT_SYMBOL_GPL net/rds/rds 0x9263bafc rds_for_each_conn_info +EXPORT_SYMBOL_GPL net/rds/rds 0xa481c7c9 rds_conn_path_connect_if_down +EXPORT_SYMBOL_GPL net/rds/rds 0xa69218c4 rds_atomic_send_complete +EXPORT_SYMBOL_GPL net/rds/rds 0xaa2fd48a rds_conn_destroy +EXPORT_SYMBOL_GPL net/rds/rds 0xaeb6f6c9 rds_conn_create +EXPORT_SYMBOL_GPL net/rds/rds 0xb4c60229 rds_info_register_func +EXPORT_SYMBOL_GPL net/rds/rds 0xba5db9f3 rds_recv_incoming +EXPORT_SYMBOL_GPL net/rds/rds 0xc2dab779 rds_info_copy +EXPORT_SYMBOL_GPL net/rds/rds 0xc8a27b30 rds_message_put +EXPORT_SYMBOL_GPL net/rds/rds 0xd174c9b3 rds_rdma_send_complete +EXPORT_SYMBOL_GPL net/rds/rds 0xd511a1b8 rds_inc_path_init +EXPORT_SYMBOL_GPL net/rds/rds 0xd5fd3a60 rds_send_drop_acked +EXPORT_SYMBOL_GPL net/rds/rds 0xe76bc1c3 rds_send_xmit +EXPORT_SYMBOL_GPL net/rds/rds 0xeed5192f rds_conn_connect_if_down +EXPORT_SYMBOL_GPL net/rds/rds 0xeff1a4ed rds_inc_init +EXPORT_SYMBOL_GPL net/rds/rds 0xf84af387 rds_send_path_drop_acked +EXPORT_SYMBOL_GPL net/rds/rds 0xf98979fe rds_trans_unregister +EXPORT_SYMBOL_GPL net/rds/rds 0xf9ee87d1 rds_connect_complete +EXPORT_SYMBOL_GPL net/rds/rds 0xfd22dd56 rds_cong_map_updated +EXPORT_SYMBOL_GPL net/sched/sch_pie 0x12404660 pie_process_dequeue +EXPORT_SYMBOL_GPL net/sched/sch_pie 0x1d03fdee pie_drop_early +EXPORT_SYMBOL_GPL net/sched/sch_pie 0x6ce9b467 pie_calculate_probability +EXPORT_SYMBOL_GPL net/sched/sch_taprio 0x5fc3c6ed taprio_offload_free +EXPORT_SYMBOL_GPL net/sched/sch_taprio 0xa7f08102 taprio_offload_get +EXPORT_SYMBOL_GPL net/sctp/sctp 0x2d0f3cbe sctp_for_each_endpoint +EXPORT_SYMBOL_GPL net/sctp/sctp 0x34f9fa53 sctp_for_each_transport +EXPORT_SYMBOL_GPL net/sctp/sctp 0x8ff8dbb5 sctp_transport_lookup_process +EXPORT_SYMBOL_GPL net/sctp/sctp 0xe16a325b sctp_get_sctp_info +EXPORT_SYMBOL_GPL net/smc/smc 0x013112d0 smc_unhash_sk +EXPORT_SYMBOL_GPL net/smc/smc 0x22a0920d smcd_free_dev +EXPORT_SYMBOL_GPL net/smc/smc 0x67d50c02 smcd_unregister_dev +EXPORT_SYMBOL_GPL net/smc/smc 0x97ce180c smc_proto +EXPORT_SYMBOL_GPL net/smc/smc 0xa2c53610 smcd_alloc_dev +EXPORT_SYMBOL_GPL net/smc/smc 0xaada8d33 smcd_handle_event +EXPORT_SYMBOL_GPL net/smc/smc 0xadcfb0e8 smc_hash_sk +EXPORT_SYMBOL_GPL net/smc/smc 0xba491622 smcd_register_dev +EXPORT_SYMBOL_GPL net/smc/smc 0xba4bd8b6 smcd_handle_irq +EXPORT_SYMBOL_GPL net/smc/smc 0xfcd5f8a1 smc_proto6 +EXPORT_SYMBOL_GPL net/sunrpc/auth_gss/auth_rpcgss 0x38d3dce5 g_make_token_header +EXPORT_SYMBOL_GPL net/sunrpc/auth_gss/auth_rpcgss 0x3bfdbdc2 svcauth_gss_flavor +EXPORT_SYMBOL_GPL net/sunrpc/auth_gss/auth_rpcgss 0x482ac5a4 g_token_size +EXPORT_SYMBOL_GPL net/sunrpc/auth_gss/auth_rpcgss 0x9d50d334 gss_mech_unregister +EXPORT_SYMBOL_GPL net/sunrpc/auth_gss/auth_rpcgss 0xd7673035 g_verify_token_header +EXPORT_SYMBOL_GPL net/sunrpc/auth_gss/auth_rpcgss 0xe76c7e65 svcauth_gss_register_pseudoflavor +EXPORT_SYMBOL_GPL net/sunrpc/auth_gss/auth_rpcgss 0xf306cb3e gss_mech_register +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x01a89cb8 xprt_disconnect_done +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x02974ced xdr_stream_decode_opaque_dup +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x03171db3 rpc_clnt_swap_activate +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x033fcffa svc_create_xprt +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x03f513ff svc_alien_sock +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x04d554f0 rpc_clnt_setup_test_and_add_xprt +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x057bf3d8 rpc_clnt_show_stats +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 0x08585f42 rpc_pton +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x08f4b62a svc_generic_rpcbind_set +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x09aeb25d rpc_clnt_swap_deactivate +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x0bf3d2b0 rpc_pipe_generic_upcall +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x0cbd7b7e write_bytes_to_xdr_buf +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x0cdb6434 svc_rpcbind_set_version +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x10462ab6 rpc_prepare_reply_pages +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x10b293fb xdr_init_encode +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x10f68a02 xdr_read_pages +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x115a38ec svc_addsock +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x11f24cb9 rpc_create +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x1227c6d1 svc_wake_up +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x1352f2d1 xdr_shift_buf +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x13b24c97 svc_return_autherr +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x156cd798 rpc_unlink +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x16684f04 rpc_bind_new_program +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x16e2ab43 csum_partial_copy_to_xdr +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x18d7408e rpc_d_lookup_sb +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x1a7a2a10 rpc_call_null +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x1b643d50 xprt_adjust_cwnd +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x1b853174 xprt_unpin_rqst +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x1cdbc5d1 svc_age_temp_xprts_now +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x1e119a79 rpcauth_get_pseudoflavor +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x1f2a9970 rpc_ntop +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x206004fe bc_svc_process +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x211c5211 svc_destroy +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x2321474a svc_find_xprt +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x233c4c0f xprt_complete_rqst +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x2445d9aa rpc_get_sb_net +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x250aa4a6 put_rpccred +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x26193012 xprt_setup_backchannel +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x263ddfb3 rpc_sleep_on_priority_timeout +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x26f5307a rpcauth_lookupcred +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x27c8364c rpc_call_start +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x2919b156 xdr_decode_string_inplace +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x29c3fb8f xprt_unregister_transport +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x29d2fc36 rpc_count_iostats +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x2b2e57b6 rpc_run_task +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x2c0be6eb xdr_init_decode +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x2c6ff3fc svc_rqst_alloc +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x2ceb0093 rpc_max_payload +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x2d18f345 rpc_sleep_on_priority +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x2dfda773 auth_domain_find +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x2ebffd65 rpc_switch_client_transport +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x31a89d59 rpc_debug +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x32b33dd0 __rpc_wait_for_completion_task +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x34d184de rpc_wake_up_status +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x34e46342 xprt_wait_for_buffer_space +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x34f41aa5 svcauth_unix_set_client +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x387e1639 rpc_pipefs_notifier_register +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x38bb025b rpc_exit +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x396170bf xdr_encode_word +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x3a0b7b54 rpc_uaddr2sockaddr +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x3acc29a6 rpc_add_pipe_dir_object +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x3c3b06b2 rpc_restart_call_prepare +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x3cf382ad svc_max_payload +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x3e12d1d4 xprt_alloc_slot +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x3f75afa9 rpc_clnt_xprt_switch_put +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x3f9a2b0b rpcauth_get_gssinfo +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x417d1a21 svc_fill_write_vector +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x42ab4a83 xdr_enter_page +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x44cd0fde cache_purge +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x453efa54 svc_pool_map +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x456ee4b0 rpcauth_stringify_acceptor +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x48cb17fd rpc_clnt_xprt_switch_has_addr +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x49df098d rpc_restart_call +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x4afaf8a3 svc_sock_update_bufs +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x4afedab1 xprtiod_workqueue +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x4c1b8757 svc_xprt_put +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x4c295ac2 xdr_buf_subsegment +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x4dac77f0 xdr_encode_netobj +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x4dcbcbef svc_close_xprt +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x4e36a729 gssd_running +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x4e8f6ca7 sunrpc_net_id +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x4f9355e4 rpc_net_ns +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x509a43ee rpc_destroy_pipe_data +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x528b2cf8 rpcauth_create +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x53445f68 nlm_debug +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x5375406c rpc_wake_up_queued_task +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x537ae650 auth_domain_put +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x539a3b66 rpc_localaddr +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x546e3462 cache_seq_stop_rcu +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x56ef4c1b rpc_set_connect_timeout +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x5730d15e rpc_clnt_xprt_switch_add_xprt +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x57baf3c4 svc_rpcb_cleanup +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x5a1dace0 xprt_wait_for_reply_request_def +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x5a45ba31 svc_auth_unregister +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x5a9bdd14 rpc_count_iostats_metrics +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x5aad9fce rpc_sleep_on +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x5bd0e673 sunrpc_cache_unregister_pipefs +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x5cab12fe rpcauth_register +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x5cf4f2d0 xdr_stream_pos +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x5d9caef8 xdr_inline_pages +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x5decea9a xprt_register_transport +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x5fdcf458 xprt_put +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x604bad1c xdr_inline_decode +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x62610a12 sunrpc_destroy_cache_detail +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x637ea3dd svc_generic_init_request +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x6429fe0d rpc_init_pipe_dir_head +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x663cfa14 xdr_commit_encode +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x66ed2439 rpc_destroy_wait_queue +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x67408f76 xprt_write_space +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x67e4ae28 cache_seq_start_rcu +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x68b9278d rpcauth_destroy_credcache +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x6921b48e svc_rpcb_setup +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x6acbc20c rpc_shutdown_client +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x6bafa919 xprt_release_rqst_cong +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x6e1bfc4a xprt_lookup_rqst +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x6f150b3c rpc_sleep_on_timeout +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x6f3085cf svc_xprt_init +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 0x73a2e3e3 xdr_stream_decode_opaque +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x73bcb50f rpcb_getport_async +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x754d14f3 rpc_delay +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x76195306 xdr_decode_array2 +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x78093f60 cache_unregister_net +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x782084c0 cache_seq_next_rcu +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x7aeea362 svc_seq_show +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x7de53067 rpc_init_rtt +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x7deea0c5 rpc_wake_up_first +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x7e4e917f svc_drop +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x81d4b0fa xdr_buf_trim +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x832be265 rpc_put_task +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x83611ee4 xprt_force_disconnect +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x844b0778 rpc_put_task_async +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x85d6c267 xprt_destroy_backchannel +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x86f9da4f rpc_proc_register +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x895304dc svc_set_num_threads_sync +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x8a841de4 rpc_killall_tasks +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x8abf77eb rpc_wake_up_next +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x8ae8cc0f svc_xprt_copy_addrs +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x8beefadb rpcauth_unregister +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x8c2d2818 svc_encode_read_payload +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x8ca683ae svc_xprt_names +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x8e95efb7 svc_xprt_enqueue +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x9150295a xdr_encode_array2 +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x91a269a5 rpc_max_bc_payload +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x91c82fd5 sunrpc_init_cache_detail +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x9364e138 cache_register_net +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x93f7123e rpc_find_or_alloc_pipe_dir_object +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x9670b5a1 rpc_free_iostats +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x9733bc7f svc_reg_xprt_class +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x973f327a cache_create_net +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x9931b24a xdr_decode_word +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x99897f7a xdr_process_buf +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x99aee353 rpc_init_priority_wait_queue +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x99f6ec61 xprt_reserve_xprt_cong +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x9aa499e2 svc_auth_register +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x9be950c0 cache_destroy_net +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xa030661c rpc_clnt_iterate_for_each_xprt +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xa13acdb8 svc_pool_map_put +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xa19a7086 sunrpc_cache_pipe_upcall_timeout +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xa2eac05e sunrpc_cache_lookup_rcu +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xa3f6cbaa rpc_peeraddr2str +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xa443c38a svc_print_addr +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xa55fc6fb rpcauth_wrap_req_encode +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xa68d44b4 xdr_terminate_string +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xa7b0184e svcauth_unix_purge +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xa81237ff xprt_request_get_cong +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xaa9fad71 svc_create +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xac6f9bc8 rpc_task_timeout +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xaccfe56e rpc_call_sync +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xad4f0955 rpc_clone_client +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xae727719 rpc_proc_unregister +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xaf5bf6ef nfs_debug +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xb19f3e4f rpc_clnt_add_xprt +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xb29b1563 svc_set_num_threads +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xb312d0c4 svc_pool_map_get +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xb35391f1 svc_shutdown_net +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xb3547ee9 svc_unreg_xprt_class +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xb51a3724 rpc_pipefs_notifier_unregister +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xb5ca0a8d rpc_free +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xb5d32c33 svc_prepare_thread +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xb5ee6535 rpcauth_unwrap_resp_decode +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xb60cbc5f xprt_release_xprt +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xb7bca62e svc_fill_symlink_pathname +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xb965e74b svc_create_pooled +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xb97c3361 svc_process +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xbdae23e1 rpc_setbufsize +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xbdd79655 rpc_num_bc_slots +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xbe08df86 rpc_remove_pipe_dir_object +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xbead9fd6 xprt_wait_for_reply_request_rtt +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xbf9d1b96 nfsd_debug +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xc12435e3 rpc_calc_rto +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xc1a089a2 auth_domain_lookup +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xc2dccefe unix_domain_find +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xc3047d11 rpc_mkpipe_dentry +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xc31adaf7 rpc_malloc +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xc46b3033 svc_bind +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xc54661f7 svc_authenticate +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xc60bd029 rpcauth_init_cred +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xc61c8bbe xprt_wake_pending_tasks +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xc63ab625 rpc_alloc_iostats +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xc69da9e0 rpc_force_rebind +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xc766f238 xprt_update_rtt +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xc76828fe xdr_stream_decode_string_dup +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xc78c851e xdr_buf_from_iov +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xc805c51a rpc_mkpipe_data +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xc83f8b80 sunrpc_cache_update +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xc8e96dea qword_addhex +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xcd10ef81 svc_reserve +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xce678a59 xdr_decode_netobj +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xcee467f3 xprt_load_transport +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xcf8f4f18 xprt_reserve_xprt +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xcf9e2908 xdr_init_decode_pages +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xd1fab60a rpc_release_client +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xd307f902 xprt_reconnect_delay +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xd317e8bf xdr_set_scratch_buffer +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xd32312a3 rpc_peeraddr +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xd37f3510 svc_proc_register +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xd50491ab sunrpc_cache_unhash +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xd9ac83a9 svc_set_client +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xdac50ec4 rpc_clone_client_set_auth +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xdb2dd68c xdr_reserve_space +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xdbe1bb18 xprt_free_slot +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xdc549cc4 rpc_queue_upcall +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xddb9148c svc_xprt_do_enqueue +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xe1cc42c2 xprt_free +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xe5919cb1 xdr_encode_opaque +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xe74c98ae svc_recv +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xe77ec121 rpcauth_init_credcache +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xe9087978 xprt_alloc +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xe940d173 sunrpc_cache_register_pipefs +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xe97f4ce5 qword_get +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xea169264 svc_proc_unregister +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xeccffcc3 rpcauth_lookup_credcache +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xedacb585 rpc_put_sb_net +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xedcf6be4 qword_add +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xedf7d01f xprt_reconnect_backoff +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xee8d74f3 xprt_get +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xeeacab69 rpc_update_rtt +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xef8a5884 read_bytes_from_xdr_buf +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xef9a2edd xprt_pin_rqst +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xf0b7775d rpc_init_wait_queue +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xf311614e rpc_clnt_test_and_add_xprt +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xf32be229 svc_exit_thread +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xf61f5051 rpc_init_pipe_dir_object +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xf6a3069b xdr_stream_decode_string +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xfa78b617 xprt_release_xprt_cong +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xfaa70bc0 rpc_machine_cred +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xfae87377 xdr_write_pages +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xfba578c9 rpc_task_release_transport +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xfc41dac9 sunrpc_cache_pipe_upcall +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xfc57392d cache_check +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xfc972847 rpc_call_async +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xfcc1acab _copy_from_pages +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xfcce6a44 svc_rqst_free +EXPORT_SYMBOL_GPL net/tls/tls 0x016f06dc tls_offload_tx_resync_request +EXPORT_SYMBOL_GPL net/tls/tls 0x81c978a7 tls_encrypt_skb +EXPORT_SYMBOL_GPL net/tls/tls 0x96789716 tls_validate_xmit_skb +EXPORT_SYMBOL_GPL net/tls/tls 0xae0ec1c5 tls_device_sk_destruct +EXPORT_SYMBOL_GPL net/vmw_vsock/vmw_vsock_virtio_transport_common 0x03a23be4 virtio_transport_notify_send_post_enqueue +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 0x13b44260 virtio_transport_stream_is_active +EXPORT_SYMBOL_GPL net/vmw_vsock/vmw_vsock_virtio_transport_common 0x1598dc38 virtio_transport_stream_has_data +EXPORT_SYMBOL_GPL net/vmw_vsock/vmw_vsock_virtio_transport_common 0x19b558c4 virtio_transport_notify_recv_post_dequeue +EXPORT_SYMBOL_GPL net/vmw_vsock/vmw_vsock_virtio_transport_common 0x1b4ebb4e virtio_transport_notify_recv_pre_dequeue +EXPORT_SYMBOL_GPL net/vmw_vsock/vmw_vsock_virtio_transport_common 0x1bf3e652 virtio_transport_stream_enqueue +EXPORT_SYMBOL_GPL net/vmw_vsock/vmw_vsock_virtio_transport_common 0x1fd8e03e virtio_transport_notify_recv_init +EXPORT_SYMBOL_GPL net/vmw_vsock/vmw_vsock_virtio_transport_common 0x22cb32f0 virtio_transport_destruct +EXPORT_SYMBOL_GPL net/vmw_vsock/vmw_vsock_virtio_transport_common 0x3ed6e15d virtio_transport_stream_has_space +EXPORT_SYMBOL_GPL net/vmw_vsock/vmw_vsock_virtio_transport_common 0x3f0089f6 virtio_transport_release +EXPORT_SYMBOL_GPL net/vmw_vsock/vmw_vsock_virtio_transport_common 0x4cd7f902 virtio_transport_free_pkt +EXPORT_SYMBOL_GPL net/vmw_vsock/vmw_vsock_virtio_transport_common 0x4fc9373c virtio_transport_stream_dequeue +EXPORT_SYMBOL_GPL net/vmw_vsock/vmw_vsock_virtio_transport_common 0x6b7d4cae virtio_transport_notify_poll_out +EXPORT_SYMBOL_GPL net/vmw_vsock/vmw_vsock_virtio_transport_common 0x6fb674eb virtio_transport_dgram_enqueue +EXPORT_SYMBOL_GPL net/vmw_vsock/vmw_vsock_virtio_transport_common 0x7c7c221f virtio_transport_shutdown +EXPORT_SYMBOL_GPL net/vmw_vsock/vmw_vsock_virtio_transport_common 0x7cf56d85 virtio_transport_dgram_bind +EXPORT_SYMBOL_GPL net/vmw_vsock/vmw_vsock_virtio_transport_common 0x8788d9da virtio_transport_do_socket_init +EXPORT_SYMBOL_GPL net/vmw_vsock/vmw_vsock_virtio_transport_common 0x8b3d54dd virtio_transport_inc_tx_pkt +EXPORT_SYMBOL_GPL net/vmw_vsock/vmw_vsock_virtio_transport_common 0x8b8bbae8 virtio_transport_stream_rcvhiwat +EXPORT_SYMBOL_GPL net/vmw_vsock/vmw_vsock_virtio_transport_common 0x94f517f5 virtio_transport_dgram_dequeue +EXPORT_SYMBOL_GPL net/vmw_vsock/vmw_vsock_virtio_transport_common 0x9a577a55 virtio_transport_connect +EXPORT_SYMBOL_GPL net/vmw_vsock/vmw_vsock_virtio_transport_common 0xa0ff2c12 virtio_transport_notify_recv_pre_block +EXPORT_SYMBOL_GPL net/vmw_vsock/vmw_vsock_virtio_transport_common 0xb10d7094 virtio_transport_put_credit +EXPORT_SYMBOL_GPL net/vmw_vsock/vmw_vsock_virtio_transport_common 0xb89554a1 virtio_transport_get_credit +EXPORT_SYMBOL_GPL net/vmw_vsock/vmw_vsock_virtio_transport_common 0xb9834577 virtio_transport_notify_send_pre_enqueue +EXPORT_SYMBOL_GPL net/vmw_vsock/vmw_vsock_virtio_transport_common 0xb99fe9ec virtio_transport_notify_send_init +EXPORT_SYMBOL_GPL net/vmw_vsock/vmw_vsock_virtio_transport_common 0xba0d7791 virtio_transport_recv_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 0xc92352a6 virtio_transport_notify_poll_in +EXPORT_SYMBOL_GPL net/vmw_vsock/vmw_vsock_virtio_transport_common 0xd28c4faf virtio_transport_deliver_tap_pkt +EXPORT_SYMBOL_GPL net/vmw_vsock/vmw_vsock_virtio_transport_common 0xe5751bf2 virtio_transport_notify_send_pre_block +EXPORT_SYMBOL_GPL net/vmw_vsock/vmw_vsock_virtio_transport_common 0xfdc0d518 virtio_transport_notify_buffer_size +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0x1031bb2e vsock_enqueue_accept +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0x1e021e3e vsock_stream_has_space +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0x265bfaa3 vsock_deliver_tap +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0x2663cb64 vsock_addr_equals_addr +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0x284e07d8 vsock_bind_table +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0x286e5cda vsock_remove_connected +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0x3f2fecef vsock_remove_bound +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0x4109cdc9 vsock_stream_has_data +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0x47bceaf3 vsock_add_pending +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0x4c45eeea vsock_core_register +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0x4da41382 vsock_find_connected_socket +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0x59d943c8 vsock_addr_cast +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0x73879664 vsock_addr_init +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0x751ff010 vsock_addr_unbind +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0x7f3b5e9c vsock_remove_pending +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0x90aa8549 vsock_find_cid +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0x98956a49 vsock_create_connected +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0x9ae6aeb0 vsock_core_unregister +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0x9bb6fd09 vsock_connected_table +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0xa37b1a16 vsock_assign_transport +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0xb6eff59d vsock_add_tap +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0xb8835e21 vsock_remove_sock +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0xbd0f699d vsock_addr_bound +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0xc338aeb0 vsock_find_bound_socket +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0xc92f7f50 vsock_table_lock +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0xcf4c70ba vsock_remove_tap +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0xd95ac116 vsock_addr_validate +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0xe5194565 vsock_for_each_connected_socket +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0xe663928a vsock_insert_connected +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0xeeb68e8e vsock_core_get_transport +EXPORT_SYMBOL_GPL net/wimax/wimax 0x0f16209a wimax_msg_len +EXPORT_SYMBOL_GPL net/wimax/wimax 0x11c533b6 wimax_dev_init +EXPORT_SYMBOL_GPL net/wimax/wimax 0x1ae07e56 wimax_report_rfkill_sw +EXPORT_SYMBOL_GPL net/wimax/wimax 0x1cc9d203 wimax_msg +EXPORT_SYMBOL_GPL net/wimax/wimax 0x387fa884 wimax_msg_send +EXPORT_SYMBOL_GPL net/wimax/wimax 0x3e800cbb wimax_msg_alloc +EXPORT_SYMBOL_GPL net/wimax/wimax 0x4548c30a wimax_state_get +EXPORT_SYMBOL_GPL net/wimax/wimax 0x67b71b4c wimax_report_rfkill_hw +EXPORT_SYMBOL_GPL net/wimax/wimax 0x7250ef08 wimax_msg_data +EXPORT_SYMBOL_GPL net/wimax/wimax 0x7c235fbf wimax_dev_rm +EXPORT_SYMBOL_GPL net/wimax/wimax 0xa1f9bc96 wimax_dev_add +EXPORT_SYMBOL_GPL net/wimax/wimax 0xad51f284 wimax_state_change +EXPORT_SYMBOL_GPL net/wimax/wimax 0xca93c02c wimax_msg_data_len +EXPORT_SYMBOL_GPL net/wireless/cfg80211 0x04879ff1 cfg80211_wext_siwmode +EXPORT_SYMBOL_GPL net/wireless/cfg80211 0x1e1e9002 cfg80211_wext_siwrts +EXPORT_SYMBOL_GPL net/wireless/cfg80211 0x21629705 cfg80211_wext_giwmode +EXPORT_SYMBOL_GPL net/wireless/cfg80211 0x3a0a855a cfg80211_wext_siwfrag +EXPORT_SYMBOL_GPL net/wireless/cfg80211 0x62a5b8da cfg80211_wext_siwscan +EXPORT_SYMBOL_GPL net/wireless/cfg80211 0xa2559ddd cfg80211_vendor_cmd_reply +EXPORT_SYMBOL_GPL net/wireless/cfg80211 0xb463e764 cfg80211_pmsr_report +EXPORT_SYMBOL_GPL net/wireless/cfg80211 0xb914695b cfg80211_wext_giwrange +EXPORT_SYMBOL_GPL net/wireless/cfg80211 0xc7e7c254 cfg80211_vendor_cmd_get_sender +EXPORT_SYMBOL_GPL net/wireless/cfg80211 0xca8f330c cfg80211_shutdown_all_interfaces +EXPORT_SYMBOL_GPL net/wireless/cfg80211 0xdeefb0ad cfg80211_wext_giwfrag +EXPORT_SYMBOL_GPL net/wireless/cfg80211 0xe60f972d cfg80211_wext_giwname +EXPORT_SYMBOL_GPL net/wireless/cfg80211 0xe86de781 cfg80211_wext_giwscan +EXPORT_SYMBOL_GPL net/wireless/cfg80211 0xe87df678 cfg80211_wext_giwretry +EXPORT_SYMBOL_GPL net/wireless/cfg80211 0xf26b563e cfg80211_pmsr_complete +EXPORT_SYMBOL_GPL net/wireless/cfg80211 0xf5e46c8e cfg80211_wext_giwrts +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 0x0878ae4a ipcomp_init_state +EXPORT_SYMBOL_GPL net/xfrm/xfrm_ipcomp 0x4c12ec63 ipcomp_output +EXPORT_SYMBOL_GPL net/xfrm/xfrm_ipcomp 0xaa007145 ipcomp_input +EXPORT_SYMBOL_GPL net/xfrm/xfrm_ipcomp 0xbdb63d02 ipcomp_destroy +EXPORT_SYMBOL_GPL sound/ac97_bus 0x8f9e60e7 snd_ac97_reset +EXPORT_SYMBOL_GPL sound/core/seq/snd-seq 0xadb51cff snd_seq_client_ioctl_unlock +EXPORT_SYMBOL_GPL sound/core/seq/snd-seq 0xe50413d7 snd_seq_client_ioctl_lock +EXPORT_SYMBOL_GPL sound/core/snd 0x04c7f73b snd_ctl_sync_vmaster +EXPORT_SYMBOL_GPL sound/core/snd 0x1028e679 snd_ctl_apply_vmaster_slaves +EXPORT_SYMBOL_GPL sound/core/snd 0x1755393d snd_card_disconnect_sync +EXPORT_SYMBOL_GPL sound/core/snd 0x5803d42b snd_card_ref +EXPORT_SYMBOL_GPL sound/core/snd 0x66d9529f snd_device_initialize +EXPORT_SYMBOL_GPL sound/core/snd 0x754e2bc0 snd_card_add_dev_attr +EXPORT_SYMBOL_GPL sound/core/snd 0x8cd5f5c2 snd_card_rw_proc_new +EXPORT_SYMBOL_GPL sound/core/snd 0x9b27c955 snd_ctl_get_preferred_subdevice +EXPORT_SYMBOL_GPL sound/core/snd 0xbaf31122 snd_device_disconnect +EXPORT_SYMBOL_GPL sound/core/snd 0xca26d093 snd_ctl_add_vmaster_hook +EXPORT_SYMBOL_GPL sound/core/snd 0xd525bf54 snd_ctl_activate_id +EXPORT_SYMBOL_GPL sound/core/snd 0xe973e5df snd_device_get_state +EXPORT_SYMBOL_GPL sound/core/snd-compress 0x3b992458 snd_compress_new +EXPORT_SYMBOL_GPL sound/core/snd-compress 0x60bf9da8 snd_compress_deregister +EXPORT_SYMBOL_GPL sound/core/snd-compress 0x7b7cfab7 snd_compr_stop_error +EXPORT_SYMBOL_GPL sound/core/snd-compress 0xc15841f7 snd_compress_register +EXPORT_SYMBOL_GPL sound/core/snd-pcm 0x04e1b99f snd_pcm_std_chmaps +EXPORT_SYMBOL_GPL sound/core/snd-pcm 0x09e913c1 snd_pcm_alt_chmaps +EXPORT_SYMBOL_GPL sound/core/snd-pcm 0x105923af snd_pcm_lib_default_mmap +EXPORT_SYMBOL_GPL sound/core/snd-pcm 0x6807d84d snd_pcm_stream_lock_irq +EXPORT_SYMBOL_GPL sound/core/snd-pcm 0x85838ebd snd_pcm_stream_unlock_irqrestore +EXPORT_SYMBOL_GPL sound/core/snd-pcm 0x89933bca _snd_pcm_stream_lock_irqsave +EXPORT_SYMBOL_GPL sound/core/snd-pcm 0x8a6ea964 snd_pcm_stop_xrun +EXPORT_SYMBOL_GPL sound/core/snd-pcm 0x8d864069 snd_pcm_rate_range_to_bits +EXPORT_SYMBOL_GPL sound/core/snd-pcm 0x91cd7bce snd_pcm_stream_lock +EXPORT_SYMBOL_GPL sound/core/snd-pcm 0xa286a234 snd_pcm_format_name +EXPORT_SYMBOL_GPL sound/core/snd-pcm 0xab8bc1a2 snd_pcm_rate_mask_intersect +EXPORT_SYMBOL_GPL sound/core/snd-pcm 0xb393ac06 snd_pcm_stream_unlock_irq +EXPORT_SYMBOL_GPL sound/core/snd-pcm 0xc3df795b snd_pcm_add_chmap_ctls +EXPORT_SYMBOL_GPL sound/core/snd-pcm 0xc774b80a snd_pcm_hw_constraint_eld +EXPORT_SYMBOL_GPL sound/core/snd-pcm 0xdafe7b0f snd_pcm_stream_unlock +EXPORT_SYMBOL_GPL sound/core/snd-pcm-dmaengine 0x1f877609 snd_dmaengine_pcm_open_request_chan +EXPORT_SYMBOL_GPL sound/core/snd-pcm-dmaengine 0x2fae111b snd_dmaengine_pcm_set_config_from_dai_data +EXPORT_SYMBOL_GPL sound/core/snd-pcm-dmaengine 0x301d7410 snd_dmaengine_pcm_pointer +EXPORT_SYMBOL_GPL sound/core/snd-pcm-dmaengine 0x7f4f97b9 snd_hwparams_to_dma_slave_config +EXPORT_SYMBOL_GPL sound/core/snd-pcm-dmaengine 0x92711b54 snd_dmaengine_pcm_open +EXPORT_SYMBOL_GPL sound/core/snd-pcm-dmaengine 0x99ca489d snd_dmaengine_pcm_pointer_no_residue +EXPORT_SYMBOL_GPL sound/core/snd-pcm-dmaengine 0xa40bea52 snd_dmaengine_pcm_refine_runtime_hwparams +EXPORT_SYMBOL_GPL sound/core/snd-pcm-dmaengine 0xa609a20a snd_dmaengine_pcm_get_chan +EXPORT_SYMBOL_GPL sound/core/snd-pcm-dmaengine 0xa8132c93 snd_dmaengine_pcm_close_release_chan +EXPORT_SYMBOL_GPL sound/core/snd-pcm-dmaengine 0xaf05f1d4 snd_dmaengine_pcm_request_channel +EXPORT_SYMBOL_GPL sound/core/snd-pcm-dmaengine 0xb0dd82d2 snd_dmaengine_pcm_trigger +EXPORT_SYMBOL_GPL sound/core/snd-pcm-dmaengine 0xf4f6ef68 snd_dmaengine_pcm_close +EXPORT_SYMBOL_GPL sound/core/snd-seq-device 0x2ee677a2 snd_seq_driver_unregister +EXPORT_SYMBOL_GPL sound/core/snd-seq-device 0x39462bd3 __snd_seq_driver_register +EXPORT_SYMBOL_GPL sound/firewire/snd-firewire-lib 0x12ce3b29 amdtp_am824_midi_trigger +EXPORT_SYMBOL_GPL sound/firewire/snd-firewire-lib 0x1b9b1901 amdtp_domain_init +EXPORT_SYMBOL_GPL sound/firewire/snd-firewire-lib 0x1e1f592a amdtp_am824_set_midi_position +EXPORT_SYMBOL_GPL sound/firewire/snd-firewire-lib 0x28cf4e81 amdtp_am824_set_parameters +EXPORT_SYMBOL_GPL sound/firewire/snd-firewire-lib 0x48b629e8 amdtp_domain_start +EXPORT_SYMBOL_GPL sound/firewire/snd-firewire-lib 0x5321584d amdtp_domain_stream_pcm_ack +EXPORT_SYMBOL_GPL sound/firewire/snd-firewire-lib 0x5a42bd2a amdtp_am824_init +EXPORT_SYMBOL_GPL sound/firewire/snd-firewire-lib 0x6c52e1e0 amdtp_domain_stop +EXPORT_SYMBOL_GPL sound/firewire/snd-firewire-lib 0x87f441a6 amdtp_am824_set_pcm_position +EXPORT_SYMBOL_GPL sound/firewire/snd-firewire-lib 0x8d100616 amdtp_am824_add_pcm_hw_constraints +EXPORT_SYMBOL_GPL sound/firewire/snd-firewire-lib 0xe9d91251 amdtp_domain_destroy +EXPORT_SYMBOL_GPL sound/firewire/snd-firewire-lib 0xeaf498d7 amdtp_domain_add_stream +EXPORT_SYMBOL_GPL sound/firewire/snd-firewire-lib 0xedc01313 amdtp_domain_stream_pcm_pointer +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0x02b94a55 snd_hdac_regmap_update_raw_once +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0x06bfcdcd snd_hdac_display_power +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0x095a54f6 snd_hda_bus_type +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0x126e2613 snd_hdac_bus_init +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0x1709ff87 snd_hdac_codec_write +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0x1a9f1e2c snd_hdac_read_parm_uncached +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0x1c74ce6c hdac_get_device_id +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0x1c87f349 snd_hdac_acomp_register_notifier +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0x1c9b1c70 snd_hdac_is_supported_format +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0x1cc0e11e snd_hdac_channel_allocation +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0x2d8a8fc4 snd_hdac_stream_start +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0x36c24931 snd_hdac_bus_handle_stream_irq +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0x37bba719 snd_hdac_dsp_cleanup +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0x3a672376 snd_hdac_check_power_state +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0x3bd544c2 snd_hdac_get_active_channels +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0x3dbcaf2d snd_hdac_setup_channel_mapping +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0x3f33e6dc snd_hdac_stream_set_params +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0x3fda316b snd_hdac_refresh_widgets +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0x40b760fb snd_hdac_override_parm +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0x42ac9958 snd_hdac_get_connections +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0x4c7ec4b6 snd_hdac_get_ch_alloc_from_ca +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0x50f62558 snd_hdac_bus_exit_link_reset +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0x524ec1a3 snd_hdac_regmap_write_raw +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0x587e55dc snd_hdac_bus_exec_verb_unlocked +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0x58bcbc1a _snd_hdac_read_parm +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0x59d4e462 snd_hdac_stream_reset +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0x5c07cb49 snd_hdac_calc_stream_format +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0x6150bfe8 snd_hdac_bus_free_stream_pages +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0x616414a7 snd_hdac_device_init +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0x61712fa0 snd_hdac_bus_stop_chip +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0x62c6487e snd_hdac_dsp_prepare +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0x6462be1d snd_hdac_device_exit +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0x667bc090 snd_hdac_bus_update_rirb +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0x67bfe791 snd_hdac_spk_to_chmap +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0x6a4f4a21 snd_hdac_device_unregister +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0x75303d04 snd_hdac_regmap_sync +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0x77c754a8 snd_hdac_chmap_to_spk_mask +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0x78f25905 snd_hdac_stream_release +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0x7e43f85d snd_hdac_get_stream +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0x82f01c72 snd_hdac_power_up +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0x866e5c41 snd_hdac_add_chmap_ctls +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0x89660219 snd_hdac_get_sub_nodes +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0x8a9450b0 snd_hdac_stream_timecounter_init +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0x8e6d40f6 snd_hdac_stream_init +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0x8ef3eca6 snd_hdac_bus_alloc_stream_pages +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0x90ccdaf8 snd_hdac_regmap_init +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0x918333fa snd_hdac_bus_enter_link_reset +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0x9767bc45 snd_hdac_acomp_init +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0x977f51a0 snd_hdac_read +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0x9868d3c3 snd_hdac_stream_assign +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0x9937ee42 snd_hdac_device_register +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0x9a8e1877 snd_array_free +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0x9d85f8f4 snd_hdac_stream_setup_periods +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0xa1154e30 snd_hdac_regmap_update_raw +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0xa1554028 snd_hdac_sync_power_state +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0xa207cb66 snd_hdac_dsp_trigger +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0xa6b1d806 snd_hdac_query_supported_pcm +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0xa7d6e2b4 snd_hdac_stream_stop +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0xab424f13 snd_hdac_bus_init_chip +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0xb112b68a snd_hdac_power_down_pm +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0xb1fe5ed1 snd_hdac_stream_setup +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0xb3803b24 snd_hdac_get_stream_stripe_ctl +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0xb43fbbe9 snd_hdac_bus_send_cmd +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0xbae2d95b snd_hdac_device_set_chip_name +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0xbb5344dd snd_hdac_set_codec_wakeup +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0xbe7dd7dc snd_array_new +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0xbe91fadf snd_hdac_stream_clear +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0xbeca6be6 snd_hdac_regmap_add_vendor_verb +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0xc345bf72 snd_hdac_power_up_pm +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0xc4cdd945 snd_hdac_regmap_exit +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0xc53ea6af snd_hdac_sync_audio_rate +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0xc646f689 snd_hdac_bus_init_cmd_io +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0xc921c1b1 snd_hdac_acomp_get_eld +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0xd0819d67 snd_hdac_regmap_read_raw +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0xd618576e snd_hdac_bus_get_response +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0xd8941e5d snd_hdac_bus_exit +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0xe0eaa504 snd_hdac_register_chmap_ops +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0xe307fcf4 snd_hdac_bus_parse_capabilities +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0xe4e07754 snd_hdac_print_channel_allocation +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0xe55b9822 snd_hdac_power_down +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0xe75f1e9e snd_hdac_bus_reset_link +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0xec793c48 snd_hdac_codec_read +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0xed7221f3 snd_hdac_stream_sync +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0xee058446 snd_hdac_acomp_exit +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0xf24718ee snd_hdac_stream_sync_trigger +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0xf6a48332 snd_hdac_bus_stop_cmd_io +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0xf758ef7b snd_hdac_codec_modalias +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0xfbc4f6bc snd_hdac_stream_cleanup +EXPORT_SYMBOL_GPL sound/hda/snd-intel-dspcfg 0x256f77c1 intel_nhlt_init +EXPORT_SYMBOL_GPL sound/hda/snd-intel-dspcfg 0x4e859456 intel_nhlt_free +EXPORT_SYMBOL_GPL sound/hda/snd-intel-dspcfg 0x8058665c intel_nhlt_get_dmic_geo +EXPORT_SYMBOL_GPL sound/hda/snd-intel-dspcfg 0xfd1c7ad2 snd_intel_dsp_driver_probe +EXPORT_SYMBOL_GPL sound/i2c/other/snd-ak4113 0x13a2bbc8 snd_ak4113_check_rate_and_errors +EXPORT_SYMBOL_GPL sound/i2c/other/snd-ak4113 0x53f286f6 snd_ak4113_create +EXPORT_SYMBOL_GPL sound/i2c/other/snd-ak4113 0x8987a03a snd_ak4113_external_rate +EXPORT_SYMBOL_GPL sound/i2c/other/snd-ak4113 0x8d7b96c6 snd_ak4113_build +EXPORT_SYMBOL_GPL sound/i2c/other/snd-ak4113 0xd81b3b03 snd_ak4113_reg_write +EXPORT_SYMBOL_GPL sound/i2c/other/snd-ak4113 0xeed1e6b5 snd_ak4113_reinit +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x012a5c50 _snd_hda_set_pin_ctl +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x05f79edd snd_hda_add_vmaster_hook +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x0676f5ac snd_hda_get_input_pin_attr +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x0b4e07da __hda_codec_driver_register +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x0b6a97cf snd_hda_apply_fixup +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x0c090c9b snd_hda_jack_detect_enable +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x0cb24492 snd_hda_create_spdif_share_sw +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x0d9d3cbf azx_probe_codecs +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x0e39ef83 snd_hda_get_num_devices +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x0f564570 snd_hda_jack_poll_all +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x13f2dbc8 snd_hda_codec_amp_update +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x17986818 snd_hda_override_conn_list +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x1b76aaaa snd_hda_jack_tbl_get_from_tag +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x1c2f0796 snd_hda_unlock_devices +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x1d6e14df __snd_hda_codec_cleanup_stream +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x1e4b9de3 snd_hda_codec_parse_pcms +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x1f9d4925 snd_hda_codec_set_pincfg +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x27b30533 snd_hda_ctl_add +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x30fa7be4 snd_hda_correct_pin_ctl +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x31e81a52 snd_hda_mixer_amp_switch_info +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x32eb75c5 snd_hda_jack_add_kctls +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x3331540f snd_hda_mixer_amp_volume_get +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x33740f07 snd_hda_override_amp_caps +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x33dcbf78 snd_hda_get_connections +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x38ce402b azx_interrupt +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x3a970660 query_amp_caps +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x3acd7bad snd_hda_add_imux_item +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x3ce294bc snd_hda_mixer_amp_tlv +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x3ecda8f2 snd_hda_mixer_amp_volume_put +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x3ee86e3a snd_hda_codec_load_dsp_cleanup +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x3f6130ed snd_hda_get_conn_index +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x3f934b90 snd_hda_find_mixer_ctl +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x3fd7a672 __snd_hda_add_vmaster +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x43880a16 snd_hda_check_amp_list_power +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x44b095d0 snd_hda_codec_pcm_put +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x470749d7 snd_hda_set_dev_select +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x47973fe5 snd_hda_codec_amp_init +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x482f1e1e snd_hda_codec_get_pin_target +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x4b360e30 snd_hda_codec_configure +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x4e138569 azx_free_streams +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x4ec3eed1 snd_hda_multi_out_analog_open +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x56d1c8ba snd_hda_shutup_pins +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x577e2359 snd_hda_parse_pin_defcfg +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x5810fffd snd_hda_input_mux_put +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x5bea47e8 snd_hda_jack_unsol_event +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x5c0a7ad4 snd_hda_create_spdif_in_ctls +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x5d415e39 hda_get_autocfg_input_label +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x5f8ee674 snd_hda_get_default_vref +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x603087d3 azx_bus_init +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x61c4868a snd_hda_apply_verbs +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x653b00e9 snd_hda_mixer_amp_switch_get_beep +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x6af5c8c1 snd_hda_jack_tbl_get_mst +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x6c95ac19 snd_hda_load_patch +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x6f61690f snd_hda_codec_pcm_new +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x7031e875 snd_hda_set_vmaster_tlv +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x74c6fd96 snd_hda_jack_set_dirty_all +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x75300ace snd_hda_get_pin_label +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x75cc9615 snd_hda_codec_build_controls +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x7805525b snd_hda_codec_setup_stream +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x78ccd8ec azx_codec_configure +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x7976422b snd_hda_create_dig_out_ctls +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x7acc21c4 snd_hda_add_nid +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x7c735947 snd_hda_codec_load_dsp_trigger +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x7d859b67 snd_hda_get_bool_hint +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x7f2e6d9f snd_hda_multi_out_dig_prepare +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x86459f09 snd_hda_spdif_out_of_nid +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x87583000 azx_init_chip +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x883915a5 snd_hda_pick_fixup +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x8867a890 snd_hda_codec_device_new +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x88695362 azx_init_streams +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x8b9be11c snd_hda_codec_prepare +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x90647738 is_jack_detectable +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x91c22a66 snd_hda_apply_pincfgs +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x93a66dbb snd_hda_get_dev_select +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x94d36156 hda_codec_driver_unregister +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x953b26c8 snd_hda_multi_out_analog_cleanup +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x9e8fffbb snd_hda_check_amp_caps +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x9ff562b4 snd_hda_get_hint +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xa13c06df snd_hda_codec_new +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xa5a6ac6e snd_hda_sequence_write +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xa73ab778 snd_hda_add_verbs +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xabe61244 snd_hda_jack_pin_sense +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xac1e10fe snd_hda_add_new_ctls +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xacad768d snd_hda_codec_eapd_power_filter +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xaefbb0d8 azx_stop_all_streams +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xb2ed79ab azx_get_position +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xb5588ac6 snd_hda_attach_beep_device +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xb67fe8ac snd_hda_multi_out_dig_open +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xb9047bde snd_hda_mixer_amp_switch_put_beep +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xb9461f1c snd_hda_lock_devices +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xba928a49 snd_hda_pick_pin_fixup +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xbd2f2cc8 snd_hda_codec_load_dsp_prepare +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xbf961f51 azx_get_pos_posbuf +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xc03b60e1 snd_hda_jack_detect_enable_callback_mst +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xc0e2035e snd_hda_codec_amp_stereo +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xc298a2a2 snd_hda_multi_out_dig_cleanup +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xc3064e05 snd_hda_codec_update_widgets +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xc604091f snd_hda_set_power_save +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xc9dd41b6 snd_hda_multi_out_dig_close +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xca5b0b68 snd_hda_codec_set_power_to_all +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xcc83b9c5 snd_hda_input_mux_info +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xce184298 snd_hda_multi_out_analog_prepare +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xd0996220 snd_hda_codec_set_name +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xd18c1efa snd_hda_enable_beep_device +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xd1d35405 snd_hda_codec_cleanup +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xd3a389fb snd_hda_get_conn_list +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xd56240f3 snd_hda_sync_vmaster_hook +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xd655a185 snd_hda_mixer_amp_switch_put +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xd9701325 snd_hda_mixer_amp_volume_info +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xdba95d78 snd_hda_mixer_amp_switch_get +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xe0aeaa42 snd_hda_spdif_ctls_unassign +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xe118de5d snd_pcm_2_1_chmaps +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xe1b2f616 snd_hda_detach_beep_device +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xe1c2d243 snd_hda_jack_set_gating_jack +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xe6e9b126 snd_hda_enum_helper_info +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xe72ddc65 snd_hda_codec_get_pincfg +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xe7801d2c snd_hda_spdif_ctls_assign +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xec170f07 snd_hda_codec_set_pin_target +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xed200af1 snd_hda_codec_amp_init_stereo +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xeda3a721 snd_print_pcm_bits +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xf5e908f0 azx_stop_chip +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xf960769b snd_hda_jack_report_sync +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xf9bb8f82 snd_hda_jack_detect_state_mst +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xf9c782a7 snd_hda_get_int_hint +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xfe695d8d snd_hda_jack_add_kctl_mst +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xfee6e16b azx_get_pos_lpib +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec-generic 0x015a79e4 snd_hda_gen_stream_pm +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec-generic 0x019691cf snd_hda_gen_build_pcms +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec-generic 0x0508fb57 snd_hda_gen_mic_autoswitch +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec-generic 0x0ce55b81 snd_hda_gen_hp_automute +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec-generic 0x230ea3ec snd_hda_gen_path_power_filter +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec-generic 0x2b077813 snd_hda_gen_add_kctl +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec-generic 0x3a5e25ac snd_hda_gen_add_micmute_led_cdev +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec-generic 0x430102b8 snd_hda_gen_add_mute_led_cdev +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec-generic 0x52454658 snd_hda_gen_parse_auto_config +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec-generic 0x5a57bb0e snd_hda_get_path_idx +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec-generic 0x648bfed9 snd_hda_gen_line_automute +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec-generic 0x730981ef snd_hda_get_path_from_idx +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec-generic 0x76dc6871 hda_main_out_badness +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec-generic 0x77512fd1 snd_hda_gen_build_controls +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec-generic 0x7cee95bc snd_hda_gen_check_power_status +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec-generic 0x871a6e44 hda_extra_out_badness +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec-generic 0x89733ddf snd_hda_activate_path +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec-generic 0x8c161874 snd_hda_gen_init +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec-generic 0x91800413 snd_hda_add_new_path +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec-generic 0xa49e05bc snd_hda_gen_spec_init +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec-generic 0xb0691545 snd_hda_gen_fix_pin_power +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec-generic 0xb69b16c2 snd_hda_gen_free +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec-generic 0xb9b3045b snd_hda_gen_update_outputs +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec-generic 0xee41a303 snd_hda_gen_reboot_notify +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-adau-utils 0xae620be9 adau_calc_pll_cfg +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-adau1761 0x01fb00ec adau1761_probe +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-adau1761 0x90601397 adau1761_regmap_config +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-adau17x1 0x0289f34e adau17x1_resume +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-adau17x1 0x39f1b16f adau17x1_precious_register +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-adau17x1 0x51b3012b adau17x1_add_routes +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-adau17x1 0x57d651f0 adau17x1_readable_register +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-adau17x1 0x8951aa68 adau17x1_remove +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-adau17x1 0xb625131d adau17x1_add_widgets +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-adau17x1 0xdfd8fda2 adau17x1_dai_ops +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-adau17x1 0xf860474f adau17x1_set_micbias_voltage +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-adau17x1 0xfc1393e7 adau17x1_volatile_register +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-adau17x1 0xfeae34e5 adau17x1_probe +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-adau7118 0xfad07802 adau7118_probe +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-cs4271 0x01037693 cs4271_regmap_config +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-cs4271 0x5aa7dbf5 cs4271_probe +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-cs4271 0x7d05786f cs4271_dt_ids +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-cs42l51 0x1a0dba27 cs42l51_suspend +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-cs42l51 0x2b3755dd cs42l51_probe +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-cs42l51 0x375ad98c cs42l51_of_match +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-cs42l51 0x41f401da cs42l51_regmap +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-cs42l51 0x6bd9e288 cs42l51_resume +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-cs42l51 0xbe9cd17f cs42l51_remove +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-cs42xx8 0x0245c4f2 cs42xx8_of_match +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-cs42xx8 0x2800fe0c cs42xx8_regmap_config +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-cs42xx8 0x4df398a0 cs42xx8_probe +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-cs42xx8 0x787cb5ed cs42xx8_pm +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-cs42xx8 0x7cac7292 cs42888_data +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-cs42xx8 0xcd3794c9 cs42448_data +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-da7219 0x5d44abbf da7219_aad_exit +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-da7219 0xa47f41ef da7219_aad_init +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-da7219 0xd00f65b4 da7219_aad_jack_det +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-es8328 0xcdbc5f0e es8328_regmap_config +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-es8328 0xd7f80ed9 es8328_probe +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-hdmi-codec 0x70f66a94 hdmi_codec_set_jack_detect +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-max98090 0xf2256844 max98090_mic_detect +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-nau8824 0x02d29478 nau8824_enable_jack_detect +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-pcm1789-codec 0xa326a7d0 pcm1789_common_exit +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-pcm1789-codec 0xac54326c pcm1789_common_init +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-pcm1789-codec 0xc2634be2 pcm1789_regmap_config +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-pcm179x-codec 0x4a06ba6f pcm179x_common_init +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-pcm179x-codec 0xc5d3e7ca pcm179x_regmap_config +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-pcm186x 0xcd48981f pcm186x_probe +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-pcm186x 0xdab98710 pcm186x_regmap +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-pcm3168a 0x04458230 pcm3168a_regmap +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-pcm3168a 0x3468b598 pcm3168a_probe +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-pcm3168a 0x50fd29fb pcm3168a_pm_ops +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-pcm3168a 0x9ca2ed00 pcm3168a_remove +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-pcm512x 0x039f2a77 pcm512x_probe +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-pcm512x 0x5bffe958 pcm512x_pm_ops +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-pcm512x 0xab192290 pcm512x_regmap +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-pcm512x 0xad4b7c05 pcm512x_remove +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-rl6231 0x5dc92cdf rl6231_pll_calc +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-rl6231 0x70617a04 rl6231_get_clk_info +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-rl6231 0x8d7fa148 rl6231_get_pre_div +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-rl6231 0xdba4502f rl6231_calc_dmic_clk +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-rt5514-spi 0x61ff58e3 rt5514_spi_burst_read +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-rt5514-spi 0xff87892f rt5514_spi_burst_write +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-rt5645 0x78fda3f6 rt5645_set_jack_detect +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-rt5645 0xdd1c4894 rt5645_sel_asrc_clk_src +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-rt5663 0x899d74f8 rt5663_sel_asrc_clk_src +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-rt5682 0x180c9bdd rt5682_parse_dt +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-rt5682 0x28730696 rt5682_supply_names +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-rt5682 0x2d45be2f rt5682_aif2_dai_ops +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-rt5682 0x59d3d967 rt5682_jack_detect_handler +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-rt5682 0x6d71f274 rt5682_readable_register +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-rt5682 0x7e4baa5a rt5682_apply_patch_list +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-rt5682 0x99dddeb1 rt5682_volatile_register +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-rt5682 0xaf8cc3a2 rt5682_headset_detect +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-rt5682 0xb6d38e9f rt5682_soc_component_dev +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-rt5682 0xb897de56 rt5682_reg +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-rt5682 0xbd3fc454 rt5682_reset +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-rt5682 0xc672052c rt5682_aif1_dai_ops +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-rt5682 0xcbaae55b rt5682_calibrate +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-rt5682 0xf66cd719 rt5682_sel_asrc_clk_src +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-sigmadsp 0x7e7c7f73 sigmadsp_restrict_params +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-sigmadsp 0x813f7094 sigmadsp_setup +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-sigmadsp 0x97fcb5f8 sigmadsp_reset +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-sigmadsp 0xb5807ae4 devm_sigmadsp_init +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-sigmadsp 0xe715f349 sigmadsp_attach +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-sigmadsp-i2c 0xf9326aa5 devm_sigmadsp_init_i2c +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-sigmadsp-regmap 0x5453e5ff devm_sigmadsp_init_regmap +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-ssm2602 0x0704b6e3 ssm2602_probe +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-ssm2602 0x4030a025 ssm2602_regmap_config +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-tlv320aic32x4 0x36c236c2 aic32x4_register_clocks +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-ts3a227e 0x2c9910a9 ts3a227e_enable_jack_detect +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-wm8804 0x156b9cbc wm8804_regmap_config +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-wm8804 0x1659324f wm8804_remove +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-wm8804 0xc1e6da76 wm8804_probe +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-wm8804 0xd1676f21 wm8804_pm +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-wm8903 0x255301d3 wm8903_mic_detect +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-wm8962 0x01078046 wm8962_mic_detect +EXPORT_SYMBOL_GPL sound/soc/fsl/imx-pcm-dma 0xc21a6645 imx_pcm_dma_init +EXPORT_SYMBOL_GPL sound/soc/fsl/snd-soc-fsl-asrc 0xbc99c2fa fsl_asrc_component +EXPORT_SYMBOL_GPL sound/soc/fsl/snd-soc-fsl-easrc 0x33322e9b fsl_easrc_get_dma_channel +EXPORT_SYMBOL_GPL sound/soc/fsl/snd-soc-imx-audmux 0x30693bb7 imx_audmux_v1_configure_port +EXPORT_SYMBOL_GPL sound/soc/fsl/snd-soc-imx-audmux 0x58631dab imx_audmux_v2_configure_port +EXPORT_SYMBOL_GPL sound/soc/generic/snd-soc-simple-card-utils 0x040920a9 asoc_simple_be_hw_params_fixup +EXPORT_SYMBOL_GPL sound/soc/generic/snd-soc-simple-card-utils 0x0e24edc5 asoc_simple_init_priv +EXPORT_SYMBOL_GPL sound/soc/generic/snd-soc-simple-card-utils 0x1d306679 asoc_simple_parse_routing +EXPORT_SYMBOL_GPL sound/soc/generic/snd-soc-simple-card-utils 0x22b976d1 asoc_simple_parse_pin_switches +EXPORT_SYMBOL_GPL sound/soc/generic/snd-soc-simple-card-utils 0x2c94578e asoc_simple_set_dailink_name +EXPORT_SYMBOL_GPL sound/soc/generic/snd-soc-simple-card-utils 0x3190828e asoc_simple_hw_params +EXPORT_SYMBOL_GPL sound/soc/generic/snd-soc-simple-card-utils 0x459450fa asoc_simple_startup +EXPORT_SYMBOL_GPL sound/soc/generic/snd-soc-simple-card-utils 0x4904d4df asoc_simple_parse_card_name +EXPORT_SYMBOL_GPL sound/soc/generic/snd-soc-simple-card-utils 0x609459e5 asoc_simple_init_jack +EXPORT_SYMBOL_GPL sound/soc/generic/snd-soc-simple-card-utils 0x8a114aaa asoc_simple_canonicalize_cpu +EXPORT_SYMBOL_GPL sound/soc/generic/snd-soc-simple-card-utils 0x8adcc8a8 asoc_simple_parse_widgets +EXPORT_SYMBOL_GPL sound/soc/generic/snd-soc-simple-card-utils 0x8c599fef asoc_simple_dai_init +EXPORT_SYMBOL_GPL sound/soc/generic/snd-soc-simple-card-utils 0x8cd3f875 asoc_simple_shutdown +EXPORT_SYMBOL_GPL sound/soc/generic/snd-soc-simple-card-utils 0x97684dd9 asoc_simple_parse_daifmt +EXPORT_SYMBOL_GPL sound/soc/generic/snd-soc-simple-card-utils 0xa436e43a asoc_simple_clean_reference +EXPORT_SYMBOL_GPL sound/soc/generic/snd-soc-simple-card-utils 0xcb46cd6d asoc_simple_parse_clk +EXPORT_SYMBOL_GPL sound/soc/generic/snd-soc-simple-card-utils 0xd2adf7d8 asoc_simple_parse_convert +EXPORT_SYMBOL_GPL sound/soc/generic/snd-soc-simple-card-utils 0xf12cb830 asoc_simple_canonicalize_platform +EXPORT_SYMBOL_GPL sound/soc/generic/snd-soc-simple-card-utils 0xf3bafb75 asoc_simple_convert_fixup +EXPORT_SYMBOL_GPL sound/soc/mediatek/common/snd-soc-mtk-common 0x0100edf0 mtk_dynamic_irq_acquire +EXPORT_SYMBOL_GPL sound/soc/mediatek/common/snd-soc-mtk-common 0x01f1dc3e mtk_dynamic_irq_release +EXPORT_SYMBOL_GPL sound/soc/mediatek/common/snd-soc-mtk-common 0x1f485fab mtk_afe_fe_ops +EXPORT_SYMBOL_GPL sound/soc/mediatek/common/snd-soc-mtk-common 0x27ea0779 mtk_memif_set_rate_substream +EXPORT_SYMBOL_GPL sound/soc/mediatek/common/snd-soc-mtk-common 0x29e8da8a mtk_afe_fe_trigger +EXPORT_SYMBOL_GPL sound/soc/mediatek/common/snd-soc-mtk-common 0x3157d76c mtk_afe_fe_prepare +EXPORT_SYMBOL_GPL sound/soc/mediatek/common/snd-soc-mtk-common 0x3543f69c mtk_memif_set_disable +EXPORT_SYMBOL_GPL sound/soc/mediatek/common/snd-soc-mtk-common 0x354c2e87 mtk_afe_add_sub_dai_control +EXPORT_SYMBOL_GPL sound/soc/mediatek/common/snd-soc-mtk-common 0x40209d0d mtk_afe_fe_shutdown +EXPORT_SYMBOL_GPL sound/soc/mediatek/common/snd-soc-mtk-common 0x4326f215 mtk_afe_fe_hw_free +EXPORT_SYMBOL_GPL sound/soc/mediatek/common/snd-soc-mtk-common 0x457f3f47 mtk_afe_combine_sub_dai +EXPORT_SYMBOL_GPL sound/soc/mediatek/common/snd-soc-mtk-common 0x4762dba6 mtk_memif_set_channel +EXPORT_SYMBOL_GPL sound/soc/mediatek/common/snd-soc-mtk-common 0x6aafb4ae mtk_afe_resume +EXPORT_SYMBOL_GPL sound/soc/mediatek/common/snd-soc-mtk-common 0x8eab4495 mtk_memif_set_pbuf_size +EXPORT_SYMBOL_GPL sound/soc/mediatek/common/snd-soc-mtk-common 0x9344607b mtk_memif_set_addr +EXPORT_SYMBOL_GPL sound/soc/mediatek/common/snd-soc-mtk-common 0xa3b932bd mtk_memif_set_enable +EXPORT_SYMBOL_GPL sound/soc/mediatek/common/snd-soc-mtk-common 0xa5c58a2d mtk_afe_pcm_platform +EXPORT_SYMBOL_GPL sound/soc/mediatek/common/snd-soc-mtk-common 0xa9caa0d6 mtk_afe_pcm_new +EXPORT_SYMBOL_GPL sound/soc/mediatek/common/snd-soc-mtk-common 0xab6e4d40 mtk_afe_suspend +EXPORT_SYMBOL_GPL sound/soc/mediatek/common/snd-soc-mtk-common 0xaefcc1c2 mtk_afe_fe_hw_params +EXPORT_SYMBOL_GPL sound/soc/mediatek/common/snd-soc-mtk-common 0xb99a2a73 mtk_afe_fe_startup +EXPORT_SYMBOL_GPL sound/soc/mediatek/common/snd-soc-mtk-common 0xd83b32be mtk_memif_set_format +EXPORT_SYMBOL_GPL sound/soc/mediatek/common/snd-soc-mtk-common 0xdd60597e mtk_afe_pcm_pointer +EXPORT_SYMBOL_GPL sound/soc/mediatek/common/snd-soc-mtk-common 0xf17012b1 mtk_memif_set_rate +EXPORT_SYMBOL_GPL sound/soc/meson/snd-soc-meson-axg-fifo 0x38d30724 axg_fifo_pcm_new +EXPORT_SYMBOL_GPL sound/soc/meson/snd-soc-meson-axg-fifo 0x41d2fb27 axg_fifo_pcm_trigger +EXPORT_SYMBOL_GPL sound/soc/meson/snd-soc-meson-axg-fifo 0x5da8580e axg_fifo_pcm_hw_free +EXPORT_SYMBOL_GPL sound/soc/meson/snd-soc-meson-axg-fifo 0x646d2a36 g12a_fifo_pcm_hw_params +EXPORT_SYMBOL_GPL sound/soc/meson/snd-soc-meson-axg-fifo 0x8ff50886 axg_fifo_pcm_close +EXPORT_SYMBOL_GPL sound/soc/meson/snd-soc-meson-axg-fifo 0xa23e4960 axg_fifo_pcm_hw_params +EXPORT_SYMBOL_GPL sound/soc/meson/snd-soc-meson-axg-fifo 0xc71c7c36 axg_fifo_pcm_open +EXPORT_SYMBOL_GPL sound/soc/meson/snd-soc-meson-axg-fifo 0xec638eed axg_fifo_pcm_pointer +EXPORT_SYMBOL_GPL sound/soc/meson/snd-soc-meson-axg-fifo 0xf9ebd141 axg_fifo_probe +EXPORT_SYMBOL_GPL sound/soc/meson/snd-soc-meson-axg-tdm-formatter 0x1a8f97f5 axg_tdm_formatter_probe +EXPORT_SYMBOL_GPL sound/soc/meson/snd-soc-meson-axg-tdm-formatter 0x216268ee axg_tdm_stream_alloc +EXPORT_SYMBOL_GPL sound/soc/meson/snd-soc-meson-axg-tdm-formatter 0x809a0ec6 axg_tdm_formatter_event +EXPORT_SYMBOL_GPL sound/soc/meson/snd-soc-meson-axg-tdm-formatter 0x9258a990 axg_tdm_stream_stop +EXPORT_SYMBOL_GPL sound/soc/meson/snd-soc-meson-axg-tdm-formatter 0xb0e9b620 axg_tdm_formatter_set_channel_masks +EXPORT_SYMBOL_GPL sound/soc/meson/snd-soc-meson-axg-tdm-formatter 0xd6361dff axg_tdm_stream_start +EXPORT_SYMBOL_GPL sound/soc/meson/snd-soc-meson-axg-tdm-formatter 0xf2948bf2 axg_tdm_stream_free +EXPORT_SYMBOL_GPL sound/soc/meson/snd-soc-meson-axg-tdm-interface 0x8e0c8088 axg_tdm_set_tdm_slots +EXPORT_SYMBOL_GPL sound/soc/meson/snd-soc-meson-card-utils 0x2e611765 meson_card_remove +EXPORT_SYMBOL_GPL sound/soc/meson/snd-soc-meson-card-utils 0x3b408fb4 meson_card_parse_dai +EXPORT_SYMBOL_GPL sound/soc/meson/snd-soc-meson-card-utils 0x9f066973 meson_card_set_fe_link +EXPORT_SYMBOL_GPL sound/soc/meson/snd-soc-meson-card-utils 0xaa4c74d2 meson_card_i2s_set_sysclk +EXPORT_SYMBOL_GPL sound/soc/meson/snd-soc-meson-card-utils 0xb6f8d91f meson_card_probe +EXPORT_SYMBOL_GPL sound/soc/meson/snd-soc-meson-card-utils 0xba9a6e6f meson_card_reallocate_links +EXPORT_SYMBOL_GPL sound/soc/meson/snd-soc-meson-card-utils 0xd22eb0b9 meson_card_parse_daifmt +EXPORT_SYMBOL_GPL sound/soc/meson/snd-soc-meson-card-utils 0xf35ff484 meson_card_set_be_link +EXPORT_SYMBOL_GPL sound/soc/meson/snd-soc-meson-codec-glue 0x1844d793 meson_codec_glue_output_startup +EXPORT_SYMBOL_GPL sound/soc/meson/snd-soc-meson-codec-glue 0x2501b89c meson_codec_glue_input_set_fmt +EXPORT_SYMBOL_GPL sound/soc/meson/snd-soc-meson-codec-glue 0x9dade6fd meson_codec_glue_input_dai_remove +EXPORT_SYMBOL_GPL sound/soc/meson/snd-soc-meson-codec-glue 0xa2ba90f3 meson_codec_glue_input_hw_params +EXPORT_SYMBOL_GPL sound/soc/meson/snd-soc-meson-codec-glue 0xa9febb0c meson_codec_glue_input_get_data +EXPORT_SYMBOL_GPL sound/soc/meson/snd-soc-meson-codec-glue 0xc9537e94 meson_codec_glue_input_dai_probe +EXPORT_SYMBOL_GPL sound/soc/qcom/qdsp6/q6adm 0x28421460 q6adm_get_copp_id +EXPORT_SYMBOL_GPL sound/soc/qcom/qdsp6/q6adm 0x6e5f5ff5 q6adm_matrix_map +EXPORT_SYMBOL_GPL sound/soc/qcom/qdsp6/q6adm 0xcc0bcd11 q6adm_close +EXPORT_SYMBOL_GPL sound/soc/qcom/qdsp6/q6adm 0xed2bb6b3 q6adm_open +EXPORT_SYMBOL_GPL sound/soc/qcom/qdsp6/q6afe 0x369b6eeb q6afe_port_put +EXPORT_SYMBOL_GPL sound/soc/qcom/qdsp6/q6afe 0x3997e13a q6afe_is_rx_port +EXPORT_SYMBOL_GPL sound/soc/qcom/qdsp6/q6afe 0x3b16d6e7 q6afe_port_stop +EXPORT_SYMBOL_GPL sound/soc/qcom/qdsp6/q6afe 0x498d993b q6afe_get_port_id +EXPORT_SYMBOL_GPL sound/soc/qcom/qdsp6/q6afe 0x5332304f q6afe_slim_port_prepare +EXPORT_SYMBOL_GPL sound/soc/qcom/qdsp6/q6afe 0x6e89c3ae q6afe_port_get_from_id +EXPORT_SYMBOL_GPL sound/soc/qcom/qdsp6/q6afe 0x7df60063 q6afe_port_set_sysclk +EXPORT_SYMBOL_GPL sound/soc/qcom/qdsp6/q6afe 0xae809786 q6afe_hdmi_port_prepare +EXPORT_SYMBOL_GPL sound/soc/qcom/qdsp6/q6afe 0xd4523c59 q6afe_i2s_port_prepare +EXPORT_SYMBOL_GPL sound/soc/qcom/qdsp6/q6afe 0xe45246a8 q6afe_port_start +EXPORT_SYMBOL_GPL sound/soc/qcom/qdsp6/q6afe 0xfaf22370 q6afe_tdm_port_prepare +EXPORT_SYMBOL_GPL sound/soc/qcom/qdsp6/q6asm 0x01d71b3d q6asm_stream_media_format_block_wma_v9 +EXPORT_SYMBOL_GPL sound/soc/qcom/qdsp6/q6asm 0x0fe75f2b q6asm_audio_client_alloc +EXPORT_SYMBOL_GPL sound/soc/qcom/qdsp6/q6asm 0x151ae9d4 q6asm_cmd +EXPORT_SYMBOL_GPL sound/soc/qcom/qdsp6/q6asm 0x40299233 q6asm_run +EXPORT_SYMBOL_GPL sound/soc/qcom/qdsp6/q6asm 0x5382edf1 q6asm_open_read +EXPORT_SYMBOL_GPL sound/soc/qcom/qdsp6/q6asm 0x689e402d q6asm_stream_media_format_block_alac +EXPORT_SYMBOL_GPL sound/soc/qcom/qdsp6/q6asm 0x68db31e2 q6asm_unmap_memory_regions +EXPORT_SYMBOL_GPL sound/soc/qcom/qdsp6/q6asm 0x6eb89e95 q6asm_media_format_block_multi_ch_pcm +EXPORT_SYMBOL_GPL sound/soc/qcom/qdsp6/q6asm 0x720ce413 q6asm_stream_media_format_block_flac +EXPORT_SYMBOL_GPL sound/soc/qcom/qdsp6/q6asm 0x7353d9dd q6asm_cmd_nowait +EXPORT_SYMBOL_GPL sound/soc/qcom/qdsp6/q6asm 0x857330c9 q6asm_write_async +EXPORT_SYMBOL_GPL sound/soc/qcom/qdsp6/q6asm 0xa06e9828 q6asm_stream_media_format_block_ape +EXPORT_SYMBOL_GPL sound/soc/qcom/qdsp6/q6asm 0xc5a116a4 q6asm_get_session_id +EXPORT_SYMBOL_GPL sound/soc/qcom/qdsp6/q6asm 0xcc4952e4 q6asm_audio_client_free +EXPORT_SYMBOL_GPL sound/soc/qcom/qdsp6/q6asm 0xd599e50f q6asm_enc_cfg_blk_pcm_format_support +EXPORT_SYMBOL_GPL sound/soc/qcom/qdsp6/q6asm 0xdbedfcd9 q6asm_run_nowait +EXPORT_SYMBOL_GPL sound/soc/qcom/qdsp6/q6asm 0xe060c0a1 q6asm_read +EXPORT_SYMBOL_GPL sound/soc/qcom/qdsp6/q6asm 0xe1531577 q6asm_open_write +EXPORT_SYMBOL_GPL sound/soc/qcom/qdsp6/q6asm 0xea75a5dd q6asm_map_memory_regions +EXPORT_SYMBOL_GPL sound/soc/qcom/qdsp6/q6asm 0xf40aaabe q6asm_stream_media_format_block_wma_v10 +EXPORT_SYMBOL_GPL sound/soc/qcom/qdsp6/q6core 0x7e52e977 q6core_is_adsp_ready +EXPORT_SYMBOL_GPL sound/soc/qcom/qdsp6/q6core 0x9b02ea0d q6core_get_svc_api_info +EXPORT_SYMBOL_GPL sound/soc/qcom/qdsp6/q6dsp-common 0x17142e58 q6dsp_map_channels +EXPORT_SYMBOL_GPL sound/soc/qcom/qdsp6/q6routing 0x5b75f756 q6routing_stream_open +EXPORT_SYMBOL_GPL sound/soc/qcom/qdsp6/q6routing 0xa7a64259 q6routing_stream_close +EXPORT_SYMBOL_GPL sound/soc/qcom/snd-soc-lpass-cpu 0x0efe2b59 asoc_qcom_lpass_cpu_dai_ops +EXPORT_SYMBOL_GPL sound/soc/qcom/snd-soc-lpass-cpu 0x25f64ac1 asoc_qcom_lpass_cpu_platform_remove +EXPORT_SYMBOL_GPL sound/soc/qcom/snd-soc-lpass-cpu 0x86eb8825 asoc_qcom_lpass_cpu_dai_probe +EXPORT_SYMBOL_GPL sound/soc/qcom/snd-soc-lpass-cpu 0xfa7a5cd0 asoc_qcom_lpass_cpu_platform_probe +EXPORT_SYMBOL_GPL sound/soc/qcom/snd-soc-lpass-platform 0x13422766 asoc_qcom_lpass_platform_register +EXPORT_SYMBOL_GPL sound/soc/rockchip/snd-soc-rockchip-pcm 0xed90a5b8 rockchip_pcm_platform_register +EXPORT_SYMBOL_GPL sound/soc/snd-soc-acpi 0x6c5d2bcd snd_soc_acpi_find_package_from_hid +EXPORT_SYMBOL_GPL sound/soc/snd-soc-acpi 0x8795d901 snd_soc_acpi_find_machine +EXPORT_SYMBOL_GPL sound/soc/snd-soc-acpi 0xa2585abc snd_soc_acpi_codec_list +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x0186f22e snd_soc_dapm_put_enum_double +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x02859368 snd_soc_jack_notifier_unregister +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x038c7e37 snd_soc_register_card +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x044a199c snd_soc_put_strobe +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x04fe2b5c snd_soc_bytes_get +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x058381ca snd_soc_component_disable_pin +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x07b022c1 snd_soc_dai_set_pll +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x0a13d571 snd_soc_dai_compr_pointer +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x0ab6300b snd_soc_dai_set_channel_map +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x0b72b09c snd_soc_bytes_tlv_callback +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x0babf909 snd_soc_component_nc_pin +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x0d8e9df2 devm_snd_soc_register_dai +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x0e7d2a82 snd_soc_bytes_info +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x0ffa4b50 snd_soc_dai_compr_set_params +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x10130b94 snd_soc_dai_compr_get_params +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x13a338d2 snd_soc_add_dai_controls +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x15c0d53c snd_soc_add_card_controls +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x16308e33 snd_soc_dai_set_bclk_ratio +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x16bb7d8b snd_soc_poweroff +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x177b3ce7 snd_soc_tplg_component_load +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x19009285 snd_soc_resume +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x1976425e snd_soc_cnew +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x1aa5ffcf snd_soc_dai_compr_startup +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x1b6dd356 snd_soc_dapm_nc_pin_unlocked +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x1ea07048 snd_soc_unregister_component +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x1ec851af snd_soc_dpcm_fe_can_update +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x1f7b7555 snd_soc_dai_set_fmt +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x211fd7df snd_soc_dapm_get_pin_switch +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x21a10a8b snd_soc_set_ac97_ops +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x224079d0 snd_soc_pm_ops +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x2541a979 snd_soc_calc_frame_size +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x25c16cf8 snd_soc_dapm_sync_unlocked +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x263a37ee snd_soc_debugfs_root +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x2900f910 devm_snd_soc_register_component +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x29e568e2 snd_soc_dai_set_tristate +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x2bd8507c snd_soc_runtime_action +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x306bfffe snd_soc_component_get_pin_status +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x31837b02 snd_soc_component_write +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x318b13e2 snd_soc_dai_set_clkdiv +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x345fddad snd_soc_jack_add_zones +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x365bc61d dpcm_be_dai_trigger +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x37ef03d4 snd_soc_dapm_put_pin_switch +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x38664110 snd_soc_jack_add_gpiods +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x3a02c1d4 snd_soc_set_ac97_ops_of_reset +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x3b6d7089 snd_soc_get_dai_name +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x3d12f3ff snd_soc_component_force_enable_pin +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x3d2be0e2 snd_soc_component_set_pll +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x3d405735 snd_soc_tplg_component_remove +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x3e490e0f snd_soc_dai_compr_trigger +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x3ea74f8b snd_soc_unregister_dai +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x406dc382 snd_soc_set_dmi_name +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x44f81cfe snd_soc_dapm_del_routes +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x466daceb snd_soc_dapm_force_enable_pin_unlocked +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x487a05f4 snd_soc_component_disable_pin_unlocked +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x48d32999 snd_soc_jack_free_gpios +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x4947fe84 snd_soc_runtime_calc_hw +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x4a6c4e19 snd_soc_link_compr_set_params +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x4ad852c7 snd_soc_dai_active +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x4af0cb8e snd_soc_link_compr_shutdown +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x4b83ba8a snd_soc_runtime_set_dai_fmt +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x4c4a7b33 snd_soc_dapm_new_widgets +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x4dd3f2ea snd_soc_new_compress +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x52602d20 snd_soc_remove_pcm_runtime +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x52d455cf snd_soc_lookup_component +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x53da43fc dapm_kcontrol_get_value +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x5443f126 snd_soc_component_exit_regmap +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x551c9ded snd_soc_add_component +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x55d2e10a snd_soc_jack_get_type +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x56f14b83 snd_soc_dai_compr_ack +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x57aa0d65 snd_soc_component_read32 +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x59db1982 snd_soc_card_add_dai_link +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x5c0aa0c2 snd_soc_jack_add_pins +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x5ddd85bb snd_soc_info_volsw +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x5e0ce96e snd_soc_dapm_new_controls +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x5eb87837 snd_soc_dapm_sync +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x61078db7 snd_soc_tplg_widget_bind_event +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x612de3eb snd_soc_dai_set_tdm_slot +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x621d1f04 snd_soc_dapm_new_control +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x6229f17c snd_soc_of_parse_tdm_slot +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x62e37c5f snd_soc_card_get_kcontrol +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x633feecc snd_soc_component_force_enable_pin_unlocked +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x64431792 snd_soc_dapm_nc_pin +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x67221293 snd_soc_dapm_mux_update_power +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x692e1ff1 snd_soc_of_parse_audio_simple_widgets +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x6a94cad7 snd_soc_of_get_dai_link_codecs +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x700e3b22 snd_soc_component_test_bits +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x70dda6d7 snd_soc_component_nc_pin_unlocked +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x737e9adb snd_soc_component_read +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x76536fb2 snd_soc_info_volsw_range +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x77c5a9ce snd_soc_component_set_jack +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x77d6b2bc snd_soc_dapm_info_pin_switch +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x789295b4 snd_soc_dai_set_sysclk +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x79414c1b snd_soc_of_parse_daifmt +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x7bdeecff dapm_regulator_event +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x7e606130 snd_soc_calc_bclk +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x80250ece snd_soc_dapm_force_bias_level +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x80640328 snd_soc_dpcm_can_be_params +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x82983214 snd_soc_get_xr_sx +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x82fa1089 snd_soc_dapm_init +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x83bd5590 snd_soc_dapm_update_dai +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x84621313 snd_soc_put_volsw_sx +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x854c3b22 dapm_clock_event +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x85eb03d6 snd_soc_dpcm_runtime_update +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x85f379f9 snd_soc_bytes_put +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x8946735f snd_soc_unregister_component_by_driver +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x896986b6 snd_soc_get_volsw_sx +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x8a258434 snd_soc_info_xr_sx +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x8b03cb67 snd_soc_dapm_enable_pin_unlocked +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x8c8669b2 snd_soc_set_runtime_hwparams +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x8d2ad142 snd_soc_component_update_bits +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x8e83ef7c snd_soc_link_compr_startup +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x9168b153 snd_soc_put_volsw_range +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x9583c004 snd_soc_component_set_sysclk +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x9584d603 snd_soc_free_ac97_component +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x9642db72 snd_soc_dapm_get_enum_double +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x97da27ae snd_soc_of_parse_node_prefix +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x9a072270 snd_soc_component_enable_pin_unlocked +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x9a0acb03 snd_soc_dapm_put_volsw +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x9af7d3a7 snd_soc_dapm_add_routes +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x9b078788 snd_soc_put_xr_sx +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x9bc46fd0 snd_soc_put_enum_double +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x9e258275 snd_soc_card_remove_dai_link +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x9e551454 devm_snd_dmaengine_pcm_register +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x9f8e1c8c snd_soc_dpcm_get_substream +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xa178d319 snd_soc_dapm_disable_pin +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xa31f8ce7 snd_soc_dapm_ignore_suspend +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xa3a733dc snd_soc_dapm_enable_pin +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xa3d85a87 snd_soc_dai_get_channel_map +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xa4d8c365 snd_dmaengine_pcm_prepare_slave_config +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xa63ab339 snd_soc_jack_notifier_register +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xa6f58bd6 snd_soc_get_pcm_runtime +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xaacbe5a3 devm_snd_soc_register_card +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xac25b183 snd_soc_dai_compr_set_metadata +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xadd1056a snd_soc_dapm_force_enable_pin +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xaf2e80d0 snd_soc_component_init_regmap +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xb07211c6 snd_soc_dai_compr_get_metadata +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xb2e37847 snd_soc_dapm_kcontrol_widget +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xb2f5eac2 snd_soc_dapm_free +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xb5801d6f snd_soc_dai_action +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xb86679f7 snd_soc_of_parse_audio_routing +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xb8e91ebe snd_soc_component_enable_pin +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xbd7076ee snd_soc_dai_compr_shutdown +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xbdd6d5d5 snd_soc_component_update_bits_async +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xbedff6df snd_soc_dapm_kcontrol_dapm +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xbeea5dda snd_soc_dapm_stream_stop +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xc39778ff snd_soc_info_volsw_sx +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xc61b50ff snd_soc_dapm_mixer_update_power +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xc8269f94 snd_soc_params_to_frame_size +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xc840d189 snd_soc_dapm_weak_routes +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xcb36f9a4 snd_soc_unregister_card +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xccc8605a snd_soc_find_dai +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xcd37b44f snd_soc_of_put_dai_link_codecs +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xce1d20ca snd_dmaengine_pcm_unregister +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xce63d193 snd_soc_tplg_widget_remove_all +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xcf66ce9b snd_soc_jack_add_gpios +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xd35de59c snd_soc_of_get_dai_name +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xd3ee72ea snd_soc_jack_report +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xd4c42be3 snd_soc_card_jack_new +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xd53f8902 snd_soc_get_volsw_range +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xd56ad81d dapm_pinctrl_event +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xd643c822 snd_soc_close_delayed_work +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xd6cfbd31 snd_soc_bytes_info_ext +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xd769bebc snd_soc_dpcm_can_be_free_stop +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xda23cb3c snd_soc_info_enum_double +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xdb3e217d snd_soc_add_component_controls +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xdb3e830c snd_soc_dapm_get_volsw +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xdbaec3ec snd_soc_get_dai_id +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xde443c3c snd_soc_dai_link_set_capabilities +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xdf935781 snd_soc_get_enum_double +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xdfb1dfde snd_soc_new_ac97_component +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xe0005669 snd_soc_dai_digital_mute +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xe3e225ac snd_soc_component_async_complete +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xe6d7e138 snd_soc_put_volsw +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xe8f15979 snd_soc_limit_volume +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xe9943fe1 snd_soc_find_dai_with_mutex +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xeac07aa6 snd_soc_dapm_disable_pin_unlocked +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xeb711ae7 snd_soc_params_to_bclk +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xec530c8a snd_soc_register_component +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xecac3b1a snd_soc_of_parse_card_name +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xece5bb6a null_dailink_component +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xf0303d3b snd_soc_dpcm_be_can_update +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xf2070977 snd_soc_add_pcm_runtime +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xf356c3bb soc_ac97_ops +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xf6816a92 snd_dmaengine_pcm_register +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xf69102b4 snd_soc_lookup_component_nolocked +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xf73a3c8f snd_soc_rtdcom_lookup +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xf84cdb3b snd_soc_tplg_widget_remove +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xf85bf94d dapm_mark_endpoints_dirty +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xf904be84 snd_soc_of_get_slot_mask +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xf96c12f6 snd_soc_suspend +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xfba0d54e snd_soc_dapm_get_pin_status +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xfdea5946 snd_soc_get_strobe +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xff4854a4 snd_soc_get_volsw +EXPORT_SYMBOL_GPL sound/soc/sof/snd-sof 0x22f8b352 snd_sof_dbg_init +EXPORT_SYMBOL_GPL sound/soc/sof/snd-sof 0x81cfce6e snd_sof_free_debug +EXPORT_SYMBOL_GPL sound/soc/sof/snd-sof 0xa0fe7d5f snd_sof_debugfs_io_item +EXPORT_SYMBOL_GPL sound/soc/sof/snd-sof 0xfbdcbcc6 snd_sof_debugfs_buf_item +EXPORT_SYMBOL_GPL sound/soc/sprd/sprd-mcdt 0x2c64d423 sprd_mcdt_request_chan +EXPORT_SYMBOL_GPL sound/soc/sprd/sprd-mcdt 0x5061832c sprd_mcdt_chan_int_disable +EXPORT_SYMBOL_GPL sound/soc/sprd/sprd-mcdt 0x609193c3 sprd_mcdt_chan_write +EXPORT_SYMBOL_GPL sound/soc/sprd/sprd-mcdt 0x68b4b311 sprd_mcdt_chan_dma_enable +EXPORT_SYMBOL_GPL sound/soc/sprd/sprd-mcdt 0x6c283cec sprd_mcdt_chan_int_enable +EXPORT_SYMBOL_GPL sound/soc/sprd/sprd-mcdt 0xa5fdddd3 sprd_mcdt_chan_read +EXPORT_SYMBOL_GPL sound/soc/sprd/sprd-mcdt 0xb67dbf49 sprd_mcdt_chan_dma_disable +EXPORT_SYMBOL_GPL sound/soc/sprd/sprd-mcdt 0xdf547b54 sprd_mcdt_free_chan +EXPORT_SYMBOL_GPL sound/soc/sunxi/sun8i-adda-pr-regmap 0x37a3a5c2 sun8i_adda_pr_regmap_init +EXPORT_SYMBOL_GPL sound/soc/ti/snd-soc-ti-edma 0x49a8f09a edma_pcm_platform_register +EXPORT_SYMBOL_GPL sound/soc/ti/snd-soc-ti-sdma 0xce745eb8 sdma_pcm_platform_register +EXPORT_SYMBOL_GPL sound/soc/ti/snd-soc-ti-udma 0xb9938b8d udma_pcm_platform_register +EXPORT_SYMBOL_GPL sound/usb/line6/snd-usb-line6 0x098b1df7 line6_version_request_async +EXPORT_SYMBOL_GPL sound/usb/line6/snd-usb-line6 0x16657c05 line6_read_serial_number +EXPORT_SYMBOL_GPL sound/usb/line6/snd-usb-line6 0x1abe3bd3 line6_pcm_release +EXPORT_SYMBOL_GPL sound/usb/line6/snd-usb-line6 0x202a1b1b line6_midi_id +EXPORT_SYMBOL_GPL sound/usb/line6/snd-usb-line6 0x30b37579 line6_write_data +EXPORT_SYMBOL_GPL sound/usb/line6/snd-usb-line6 0x383e7707 line6_suspend +EXPORT_SYMBOL_GPL sound/usb/line6/snd-usb-line6 0x49b4d333 line6_alloc_sysex_buffer +EXPORT_SYMBOL_GPL sound/usb/line6/snd-usb-line6 0x66d82d0d line6_send_sysex_message +EXPORT_SYMBOL_GPL sound/usb/line6/snd-usb-line6 0x791f3562 line6_disconnect +EXPORT_SYMBOL_GPL sound/usb/line6/snd-usb-line6 0x7f3abe7d line6_pcm_acquire +EXPORT_SYMBOL_GPL sound/usb/line6/snd-usb-line6 0x9087b617 line6_init_midi +EXPORT_SYMBOL_GPL sound/usb/line6/snd-usb-line6 0x9d6abaa2 line6_send_raw_message_async +EXPORT_SYMBOL_GPL sound/usb/line6/snd-usb-line6 0xc2c1a0db line6_read_data +EXPORT_SYMBOL_GPL sound/usb/line6/snd-usb-line6 0xc97aa427 line6_resume +EXPORT_SYMBOL_GPL sound/usb/line6/snd-usb-line6 0xd6eb5768 line6_init_pcm +EXPORT_SYMBOL_GPL sound/usb/line6/snd-usb-line6 0xf4881f47 line6_probe +EXPORT_SYMBOL_GPL vmlinux 0x0003b3f7 br_fdb_test_addr_hook +EXPORT_SYMBOL_GPL vmlinux 0x00102d32 devm_free_percpu +EXPORT_SYMBOL_GPL vmlinux 0x0010cd29 mpc8xxx_spi_rx_buf_u32 +EXPORT_SYMBOL_GPL vmlinux 0x001f6aad ipv4_redirect +EXPORT_SYMBOL_GPL vmlinux 0x0032049d cs47l24_patch +EXPORT_SYMBOL_GPL vmlinux 0x003855f6 extcon_unregister_notifier_all +EXPORT_SYMBOL_GPL vmlinux 0x00513f58 get_timespec64 +EXPORT_SYMBOL_GPL vmlinux 0x00565f18 pernet_ops_rwsem +EXPORT_SYMBOL_GPL vmlinux 0x0059b844 device_match_devt +EXPORT_SYMBOL_GPL vmlinux 0x00758f94 sched_trace_rq_avg_rt +EXPORT_SYMBOL_GPL vmlinux 0x0079d18f acpi_pci_find_root +EXPORT_SYMBOL_GPL vmlinux 0x008d0aba input_ff_upload +EXPORT_SYMBOL_GPL vmlinux 0x008e3223 debugfs_read_file_bool +EXPORT_SYMBOL_GPL vmlinux 0x00992a52 usb_get_urb +EXPORT_SYMBOL_GPL vmlinux 0x009c60d3 debugfs_create_u32_array +EXPORT_SYMBOL_GPL vmlinux 0x00a1b899 nl_table +EXPORT_SYMBOL_GPL vmlinux 0x00c3337f qcom_smem_state_get +EXPORT_SYMBOL_GPL vmlinux 0x00e80265 dpcon_enable +EXPORT_SYMBOL_GPL vmlinux 0x00f36145 devlink_port_type_clear +EXPORT_SYMBOL_GPL vmlinux 0x00f5d49c virtqueue_get_buf_ctx +EXPORT_SYMBOL_GPL vmlinux 0x01178b1b scsi_internal_device_unblock_nowait +EXPORT_SYMBOL_GPL vmlinux 0x012e730e apei_exec_noop +EXPORT_SYMBOL_GPL vmlinux 0x013a9784 device_get_child_node_count +EXPORT_SYMBOL_GPL vmlinux 0x013bafc0 tun_get_tx_ring +EXPORT_SYMBOL_GPL vmlinux 0x0144e77f bio_release_pages +EXPORT_SYMBOL_GPL vmlinux 0x014d930a relay_reset +EXPORT_SYMBOL_GPL vmlinux 0x015fd5f0 __tracepoint_pelt_irq_tp +EXPORT_SYMBOL_GPL vmlinux 0x016f927e pci_ecam_create +EXPORT_SYMBOL_GPL vmlinux 0x0183f196 wm8997_aod +EXPORT_SYMBOL_GPL vmlinux 0x01866a57 ezx_pcap_set_bits +EXPORT_SYMBOL_GPL vmlinux 0x0188ce4e pci_cfg_access_lock +EXPORT_SYMBOL_GPL vmlinux 0x01a0cb78 property_entries_free +EXPORT_SYMBOL_GPL vmlinux 0x01c6cb0c cpu_cluster_pm_enter +EXPORT_SYMBOL_GPL vmlinux 0x01ce5eca xdp_attachment_query +EXPORT_SYMBOL_GPL vmlinux 0x01e1a8de kgdb_breakpoint +EXPORT_SYMBOL_GPL vmlinux 0x01e67468 crypto_create_tfm +EXPORT_SYMBOL_GPL vmlinux 0x01ec30fc virtqueue_enable_cb +EXPORT_SYMBOL_GPL vmlinux 0x01ec902e acpi_pm_wakeup_event +EXPORT_SYMBOL_GPL vmlinux 0x01f69bfd __pci_hp_register +EXPORT_SYMBOL_GPL vmlinux 0x02027daa fuse_dev_free +EXPORT_SYMBOL_GPL vmlinux 0x0203dcb7 blkdev_read_iter +EXPORT_SYMBOL_GPL vmlinux 0x0213e8d1 fwnode_property_read_string +EXPORT_SYMBOL_GPL vmlinux 0x0218bd85 bpf_event_output +EXPORT_SYMBOL_GPL vmlinux 0x022fc1b0 meson_clk_dualdiv_ro_ops +EXPORT_SYMBOL_GPL vmlinux 0x02394899 play_idle_precise +EXPORT_SYMBOL_GPL vmlinux 0x0244c752 usb_control_msg +EXPORT_SYMBOL_GPL vmlinux 0x024d13dd request_free_mem_region +EXPORT_SYMBOL_GPL vmlinux 0x027a676b iommu_domain_get_attr +EXPORT_SYMBOL_GPL vmlinux 0x0281ee38 blk_queue_max_zone_append_sectors +EXPORT_SYMBOL_GPL vmlinux 0x0293cd18 mnt_want_write +EXPORT_SYMBOL_GPL vmlinux 0x0295c489 rio_request_mport_dma +EXPORT_SYMBOL_GPL vmlinux 0x029dd9d5 gnttab_batch_copy +EXPORT_SYMBOL_GPL vmlinux 0x02a8b7eb adp5520_register_notifier +EXPORT_SYMBOL_GPL vmlinux 0x02ac3fe0 eventfd_fget +EXPORT_SYMBOL_GPL vmlinux 0x02c7ec70 gnttab_unmap_refs_sync +EXPORT_SYMBOL_GPL vmlinux 0x02e8080f irq_chip_enable_parent +EXPORT_SYMBOL_GPL vmlinux 0x02e9ea77 nvdimm_flush +EXPORT_SYMBOL_GPL vmlinux 0x02efdb6b tcp_set_state +EXPORT_SYMBOL_GPL vmlinux 0x02f83872 skb_gso_validate_mac_len +EXPORT_SYMBOL_GPL vmlinux 0x0312b3b0 reset_controller_add_lookup +EXPORT_SYMBOL_GPL vmlinux 0x0321cdbf of_alias_get_highest_id +EXPORT_SYMBOL_GPL vmlinux 0x032c3f8b fsverity_file_open +EXPORT_SYMBOL_GPL vmlinux 0x03372453 force_irqthreads +EXPORT_SYMBOL_GPL vmlinux 0x033832c7 usb_amd_hang_symptom_quirk +EXPORT_SYMBOL_GPL vmlinux 0x0343bdf1 __i2c_board_list +EXPORT_SYMBOL_GPL vmlinux 0x034a7f4f qcom_smem_state_register +EXPORT_SYMBOL_GPL vmlinux 0x036029d0 regmap_write_async +EXPORT_SYMBOL_GPL vmlinux 0x036de383 perf_event_cgrp_subsys_enabled_key +EXPORT_SYMBOL_GPL vmlinux 0x036e5370 fsnotify +EXPORT_SYMBOL_GPL vmlinux 0x03819a9f usb_phy_set_charger_state +EXPORT_SYMBOL_GPL vmlinux 0x038a1354 seg6_do_srh_encap +EXPORT_SYMBOL_GPL vmlinux 0x03952887 ktime_add_safe +EXPORT_SYMBOL_GPL vmlinux 0x03ae66ea input_ff_flush +EXPORT_SYMBOL_GPL vmlinux 0x03c12dfe cancel_work_sync +EXPORT_SYMBOL_GPL vmlinux 0x03c6f62e ahci_shost_attrs +EXPORT_SYMBOL_GPL vmlinux 0x03ce7234 sched_smt_present +EXPORT_SYMBOL_GPL vmlinux 0x03d3c660 of_icc_get_by_index +EXPORT_SYMBOL_GPL vmlinux 0x03df1a01 pstore_unregister +EXPORT_SYMBOL_GPL vmlinux 0x03e03e17 ata_scsi_ioctl +EXPORT_SYMBOL_GPL vmlinux 0x03e3a035 tty_kopen +EXPORT_SYMBOL_GPL vmlinux 0x03f4b6bb mmc_pwrseq_register +EXPORT_SYMBOL_GPL vmlinux 0x03f84404 usb_of_get_device_node +EXPORT_SYMBOL_GPL vmlinux 0x03f8994c tcp_rate_check_app_limited +EXPORT_SYMBOL_GPL vmlinux 0x0402cbbf preempt_notifier_inc +EXPORT_SYMBOL_GPL vmlinux 0x040e7149 elv_register +EXPORT_SYMBOL_GPL vmlinux 0x0414e525 pm_clk_add_notifier +EXPORT_SYMBOL_GPL vmlinux 0x0419e175 vbin_printf +EXPORT_SYMBOL_GPL vmlinux 0x0422d619 max8997_read_reg +EXPORT_SYMBOL_GPL vmlinux 0x0427948c fsnotify_put_mark +EXPORT_SYMBOL_GPL vmlinux 0x0428d1e4 ata_sas_port_suspend +EXPORT_SYMBOL_GPL vmlinux 0x043c7d95 ip6_append_data +EXPORT_SYMBOL_GPL vmlinux 0x04481ab2 crypto_cipher_setkey +EXPORT_SYMBOL_GPL vmlinux 0x0465a073 regmap_reg_in_ranges +EXPORT_SYMBOL_GPL vmlinux 0x046f359e of_overlay_notifier_register +EXPORT_SYMBOL_GPL vmlinux 0x0477769a kobject_init_and_add +EXPORT_SYMBOL_GPL vmlinux 0x048b5f8d twl4030_audio_get_mclk +EXPORT_SYMBOL_GPL vmlinux 0x0493f729 bpf_prog_create +EXPORT_SYMBOL_GPL vmlinux 0x0495508d pci_user_write_config_dword +EXPORT_SYMBOL_GPL vmlinux 0x04bf0092 io_cgrp_subsys_enabled_key +EXPORT_SYMBOL_GPL vmlinux 0x04c4f603 mpi_get_buffer +EXPORT_SYMBOL_GPL vmlinux 0x04cd438f xfrm_dev_resume +EXPORT_SYMBOL_GPL vmlinux 0x04d1a90a ata_port_schedule_eh +EXPORT_SYMBOL_GPL vmlinux 0x04df8fbc lzo1x_decompress_safe +EXPORT_SYMBOL_GPL vmlinux 0x05177e9d acpiphp_register_attention +EXPORT_SYMBOL_GPL vmlinux 0x051e33da regulator_lock +EXPORT_SYMBOL_GPL vmlinux 0x0523b43b mpc8xxx_spi_tx_buf_u16 +EXPORT_SYMBOL_GPL vmlinux 0x0524353c gpiod_set_raw_array_value +EXPORT_SYMBOL_GPL vmlinux 0x05247650 pci_epc_write_header +EXPORT_SYMBOL_GPL vmlinux 0x052c9aed ktime_get_real_fast_ns +EXPORT_SYMBOL_GPL vmlinux 0x054ca6d7 devlink_traps_unregister +EXPORT_SYMBOL_GPL vmlinux 0x054cbaf6 driver_find_device +EXPORT_SYMBOL_GPL vmlinux 0x054e550b kernel_halt +EXPORT_SYMBOL_GPL vmlinux 0x05610897 of_changeset_destroy +EXPORT_SYMBOL_GPL vmlinux 0x0573c3c5 nvdimm_in_overwrite +EXPORT_SYMBOL_GPL vmlinux 0x0577839c usb_create_hcd +EXPORT_SYMBOL_GPL vmlinux 0x057c4395 gnttab_unmap_refs +EXPORT_SYMBOL_GPL vmlinux 0x057ce998 irq_chip_set_affinity_parent +EXPORT_SYMBOL_GPL vmlinux 0x058b582a vt_get_leds +EXPORT_SYMBOL_GPL vmlinux 0x058f9366 apei_exec_collect_resources +EXPORT_SYMBOL_GPL vmlinux 0x05a5856b __tracepoint_neigh_cleanup_and_release +EXPORT_SYMBOL_GPL vmlinux 0x05acefa0 regulator_is_supported_voltage +EXPORT_SYMBOL_GPL vmlinux 0x05b836ae arizona_clk32k_enable +EXPORT_SYMBOL_GPL vmlinux 0x05c2d05b fib_rules_dump +EXPORT_SYMBOL_GPL vmlinux 0x060d7316 is_skb_forwardable +EXPORT_SYMBOL_GPL vmlinux 0x06137eba dev_pm_put_subsys_data +EXPORT_SYMBOL_GPL vmlinux 0x061ad670 debugfs_attr_write +EXPORT_SYMBOL_GPL vmlinux 0x06209f49 phy_lookup_setting +EXPORT_SYMBOL_GPL vmlinux 0x0626da5f od_unregister_powersave_bias_handler +EXPORT_SYMBOL_GPL vmlinux 0x062a470d irq_domain_add_simple +EXPORT_SYMBOL_GPL vmlinux 0x062ea668 pci_cfg_access_trylock +EXPORT_SYMBOL_GPL vmlinux 0x063e04fe pci_ecam_map_bus +EXPORT_SYMBOL_GPL vmlinux 0x064db9a5 mark_mounts_for_expiry +EXPORT_SYMBOL_GPL vmlinux 0x0656e857 ata_bmdma_qc_prep +EXPORT_SYMBOL_GPL vmlinux 0x0661cf1d crypto_larval_kill +EXPORT_SYMBOL_GPL vmlinux 0x0662e8b8 pinmux_generic_get_function_groups +EXPORT_SYMBOL_GPL vmlinux 0x06821736 paste_selection +EXPORT_SYMBOL_GPL vmlinux 0x0684e16e rio_unmap_inb_region +EXPORT_SYMBOL_GPL vmlinux 0x068693ed perf_pmu_unregister +EXPORT_SYMBOL_GPL vmlinux 0x06960c55 fat_free_clusters +EXPORT_SYMBOL_GPL vmlinux 0x06a44ca8 dev_attr_unload_heads +EXPORT_SYMBOL_GPL vmlinux 0x06ace640 cpufreq_freq_attr_scaling_available_freqs +EXPORT_SYMBOL_GPL vmlinux 0x06adbc97 xhci_mtk_add_ep_quirk +EXPORT_SYMBOL_GPL vmlinux 0x06cca30b ring_buffer_record_off +EXPORT_SYMBOL_GPL vmlinux 0x06d2da66 usb_alloc_dev +EXPORT_SYMBOL_GPL vmlinux 0x06dce5a5 ipv6_find_tlv +EXPORT_SYMBOL_GPL vmlinux 0x06e12354 clk_regmap_divider_ro_ops +EXPORT_SYMBOL_GPL vmlinux 0x06e4433e sunxi_ccu_set_mmc_timing_mode +EXPORT_SYMBOL_GPL vmlinux 0x06e5d4c7 md_stop +EXPORT_SYMBOL_GPL vmlinux 0x0700b49f ti_sci_inta_msi_get_virq +EXPORT_SYMBOL_GPL vmlinux 0x071edeb6 power_supply_set_battery_charged +EXPORT_SYMBOL_GPL vmlinux 0x07242d92 put_dax +EXPORT_SYMBOL_GPL vmlinux 0x07382bae sk_msg_free_partial +EXPORT_SYMBOL_GPL vmlinux 0x074ae9da udp_cmsg_send +EXPORT_SYMBOL_GPL vmlinux 0x074f14c5 find_pid_ns +EXPORT_SYMBOL_GPL vmlinux 0x074f98db synth_event_add_field +EXPORT_SYMBOL_GPL vmlinux 0x0752d0fe usb_autopm_put_interface +EXPORT_SYMBOL_GPL vmlinux 0x075e6030 irq_domain_associate_many +EXPORT_SYMBOL_GPL vmlinux 0x076356e7 sfp_may_have_phy +EXPORT_SYMBOL_GPL vmlinux 0x07646cee ata_tf_to_fis +EXPORT_SYMBOL_GPL vmlinux 0x076895b2 devm_mdiobus_free +EXPORT_SYMBOL_GPL vmlinux 0x07709623 debugfs_lookup +EXPORT_SYMBOL_GPL vmlinux 0x0772e53b of_clk_del_provider +EXPORT_SYMBOL_GPL vmlinux 0x0799beeb __clk_hw_register_gate +EXPORT_SYMBOL_GPL vmlinux 0x07a00085 dmaengine_unmap_put +EXPORT_SYMBOL_GPL vmlinux 0x07b21f85 kdb_get_kbd_char +EXPORT_SYMBOL_GPL vmlinux 0x07b4750b hisi_uncore_pmu_enable +EXPORT_SYMBOL_GPL vmlinux 0x07b52e38 rtnl_unregister +EXPORT_SYMBOL_GPL vmlinux 0x07be6905 net_inc_egress_queue +EXPORT_SYMBOL_GPL vmlinux 0x07beb46e ata_common_sdev_attrs +EXPORT_SYMBOL_GPL vmlinux 0x07bf29cd get_cached_msi_msg +EXPORT_SYMBOL_GPL vmlinux 0x07c23703 hrtimer_try_to_cancel +EXPORT_SYMBOL_GPL vmlinux 0x07d0f045 gpiochip_generic_config +EXPORT_SYMBOL_GPL vmlinux 0x07d67c21 page_cache_async_readahead +EXPORT_SYMBOL_GPL vmlinux 0x07e69387 validate_xmit_skb_list +EXPORT_SYMBOL_GPL vmlinux 0x07f02125 pci_get_dsn +EXPORT_SYMBOL_GPL vmlinux 0x07f19c83 pinctrl_force_default +EXPORT_SYMBOL_GPL vmlinux 0x07f8cdb6 of_pci_parse_bus_range +EXPORT_SYMBOL_GPL vmlinux 0x07fa055e scmi_protocol_unregister +EXPORT_SYMBOL_GPL vmlinux 0x07fb4e6f srcutorture_get_gp_data +EXPORT_SYMBOL_GPL vmlinux 0x080b625d blk_set_queue_dying +EXPORT_SYMBOL_GPL vmlinux 0x08135613 dax_write_cache +EXPORT_SYMBOL_GPL vmlinux 0x0816538c sysfs_merge_group +EXPORT_SYMBOL_GPL vmlinux 0x081ee8b8 devm_pwm_get +EXPORT_SYMBOL_GPL vmlinux 0x083be4ed iomap_dio_iopoll +EXPORT_SYMBOL_GPL vmlinux 0x083c0ca2 skcipher_alloc_instance_simple +EXPORT_SYMBOL_GPL vmlinux 0x08418d08 dt_init_idle_driver +EXPORT_SYMBOL_GPL vmlinux 0x0843ba7f wm831x_reg_lock +EXPORT_SYMBOL_GPL vmlinux 0x08484b4d devm_regmap_field_alloc +EXPORT_SYMBOL_GPL vmlinux 0x084a9cf8 gfn_to_memslot +EXPORT_SYMBOL_GPL vmlinux 0x08557a4c mtk_pinconf_bias_set_rev1 +EXPORT_SYMBOL_GPL vmlinux 0x08572b7b phy_driver_is_genphy +EXPORT_SYMBOL_GPL vmlinux 0x0857e341 skcipher_walk_virt +EXPORT_SYMBOL_GPL vmlinux 0x08597308 mtk_pinconf_drive_get +EXPORT_SYMBOL_GPL vmlinux 0x086e5876 blkcg_deactivate_policy +EXPORT_SYMBOL_GPL vmlinux 0x0870bd66 crypto_stats_kpp_compute_shared_secret +EXPORT_SYMBOL_GPL vmlinux 0x087f5dc5 wm831x_of_match +EXPORT_SYMBOL_GPL vmlinux 0x088944c9 skcipher_register_instance +EXPORT_SYMBOL_GPL vmlinux 0x088efe89 set_capacity_revalidate_and_notify +EXPORT_SYMBOL_GPL vmlinux 0x08911a2a uart_handle_dcd_change +EXPORT_SYMBOL_GPL vmlinux 0x08a7a21e devlink_port_param_value_changed +EXPORT_SYMBOL_GPL vmlinux 0x08ad6c21 raw_seq_stop +EXPORT_SYMBOL_GPL vmlinux 0x08cd6802 pci_epf_free_space +EXPORT_SYMBOL_GPL vmlinux 0x08d3bf02 trace_vprintk +EXPORT_SYMBOL_GPL vmlinux 0x08da98ee sysfs_remove_files +EXPORT_SYMBOL_GPL vmlinux 0x08e772cd extcon_set_property +EXPORT_SYMBOL_GPL vmlinux 0x08e79f9f udp6_lib_lookup_skb +EXPORT_SYMBOL_GPL vmlinux 0x08efb908 devfreq_event_get_event +EXPORT_SYMBOL_GPL vmlinux 0x08f3c44d virtqueue_add_inbuf_ctx +EXPORT_SYMBOL_GPL vmlinux 0x0900e018 stmpe811_adc_common_init +EXPORT_SYMBOL_GPL vmlinux 0x09032052 blk_trace_startstop +EXPORT_SYMBOL_GPL vmlinux 0x090554c9 pci_probe_reset_bus +EXPORT_SYMBOL_GPL vmlinux 0x0907d14d blocking_notifier_chain_register +EXPORT_SYMBOL_GPL vmlinux 0x0913b5f8 preempt_notifier_unregister +EXPORT_SYMBOL_GPL vmlinux 0x091eb9b4 round_jiffies +EXPORT_SYMBOL_GPL vmlinux 0x0932d1e8 bdi_dev_name +EXPORT_SYMBOL_GPL vmlinux 0x09337cd0 __wake_up_locked_key +EXPORT_SYMBOL_GPL vmlinux 0x093786cf synth_event_add_field_str +EXPORT_SYMBOL_GPL vmlinux 0x09394a68 tty_wakeup +EXPORT_SYMBOL_GPL vmlinux 0x093eb3cb disk_part_iter_next +EXPORT_SYMBOL_GPL vmlinux 0x094b253e ipv6_opt_accepted +EXPORT_SYMBOL_GPL vmlinux 0x096293bf uhci_check_and_reset_hc +EXPORT_SYMBOL_GPL vmlinux 0x096b2418 __tracepoint_tcp_send_reset +EXPORT_SYMBOL_GPL vmlinux 0x096d39a1 pci_hp_del +EXPORT_SYMBOL_GPL vmlinux 0x0987a8ea sk_free_unlock_clone +EXPORT_SYMBOL_GPL vmlinux 0x0989b419 device_property_read_u16_array +EXPORT_SYMBOL_GPL vmlinux 0x098bc1af kick_process +EXPORT_SYMBOL_GPL vmlinux 0x09ab64fe sfp_bus_find_fwnode +EXPORT_SYMBOL_GPL vmlinux 0x09af0625 gpiod_get_index +EXPORT_SYMBOL_GPL vmlinux 0x09b53e14 interval_tree_remove +EXPORT_SYMBOL_GPL vmlinux 0x09ba3be9 genphy_c45_pma_setup_forced +EXPORT_SYMBOL_GPL vmlinux 0x09ceec31 __rt_mutex_init +EXPORT_SYMBOL_GPL vmlinux 0x09d63265 list_lru_count_node +EXPORT_SYMBOL_GPL vmlinux 0x09e0f450 of_platform_default_populate +EXPORT_SYMBOL_GPL vmlinux 0x09f35ad3 tcp_register_congestion_control +EXPORT_SYMBOL_GPL vmlinux 0x0a01934b mnt_want_write_file +EXPORT_SYMBOL_GPL vmlinux 0x0a091430 ahci_port_resume +EXPORT_SYMBOL_GPL vmlinux 0x0a0c9d45 inet_peer_base_init +EXPORT_SYMBOL_GPL vmlinux 0x0a19b9d6 serdev_controller_remove +EXPORT_SYMBOL_GPL vmlinux 0x0a24f51d usb_alloc_urb +EXPORT_SYMBOL_GPL vmlinux 0x0a2a8594 nexthop_select_path +EXPORT_SYMBOL_GPL vmlinux 0x0a305514 iommu_domain_free +EXPORT_SYMBOL_GPL vmlinux 0x0a369952 trace_put_event_file +EXPORT_SYMBOL_GPL vmlinux 0x0a5122d7 devlink_dpipe_entry_ctx_prepare +EXPORT_SYMBOL_GPL vmlinux 0x0a51e8b9 encrypt_blob +EXPORT_SYMBOL_GPL vmlinux 0x0a525e5d devm_regulator_bulk_get +EXPORT_SYMBOL_GPL vmlinux 0x0a6c4041 cn_netlink_send +EXPORT_SYMBOL_GPL vmlinux 0x0a6ce1cc sfp_select_interface +EXPORT_SYMBOL_GPL vmlinux 0x0a73d87a regmap_field_update_bits_base +EXPORT_SYMBOL_GPL vmlinux 0x0a7873b4 wm8350_set_bits +EXPORT_SYMBOL_GPL vmlinux 0x0a78770b bpf_trace_run12 +EXPORT_SYMBOL_GPL vmlinux 0x0a7c91c8 serial8250_release_dma +EXPORT_SYMBOL_GPL vmlinux 0x0a7e6b3c genphy_c45_read_lpa +EXPORT_SYMBOL_GPL vmlinux 0x0a95f0e2 mbox_client_peek_data +EXPORT_SYMBOL_GPL vmlinux 0x0a9b2bac fwnode_get_next_parent +EXPORT_SYMBOL_GPL vmlinux 0x0aa17d71 tty_buffer_request_room +EXPORT_SYMBOL_GPL vmlinux 0x0ab5f373 transport_class_unregister +EXPORT_SYMBOL_GPL vmlinux 0x0abb6a7a scsi_host_complete_all_commands +EXPORT_SYMBOL_GPL vmlinux 0x0abc6be6 k3_ringacc_ring_is_full +EXPORT_SYMBOL_GPL vmlinux 0x0abf31e4 i2c_new_client_device +EXPORT_SYMBOL_GPL vmlinux 0x0ac81ad1 __put_task_struct +EXPORT_SYMBOL_GPL vmlinux 0x0ac82a21 pci_iomap_wc +EXPORT_SYMBOL_GPL vmlinux 0x0acb7863 crypto_register_aead +EXPORT_SYMBOL_GPL vmlinux 0x0ae8f05a device_get_named_child_node +EXPORT_SYMBOL_GPL vmlinux 0x0af1e6bc fb_deferred_io_init +EXPORT_SYMBOL_GPL vmlinux 0x0af40724 iommu_alloc_resv_region +EXPORT_SYMBOL_GPL vmlinux 0x0b008a2f usb_ep0_reinit +EXPORT_SYMBOL_GPL vmlinux 0x0b07abe2 unshare_fs_struct +EXPORT_SYMBOL_GPL vmlinux 0x0b1bb9f9 synchronize_rcu_tasks +EXPORT_SYMBOL_GPL vmlinux 0x0b2403a0 __tcp_bpf_recvmsg +EXPORT_SYMBOL_GPL vmlinux 0x0b24b646 iommu_map +EXPORT_SYMBOL_GPL vmlinux 0x0b2db2d5 remove_resource +EXPORT_SYMBOL_GPL vmlinux 0x0b3a3ed7 zynqmp_pm_fpga_get_status +EXPORT_SYMBOL_GPL vmlinux 0x0b52e502 apei_resources_add +EXPORT_SYMBOL_GPL vmlinux 0x0b644976 regmap_raw_write +EXPORT_SYMBOL_GPL vmlinux 0x0b690f04 k3_udma_glue_tx_get_txcq_id +EXPORT_SYMBOL_GPL vmlinux 0x0b86a51d get_net_ns +EXPORT_SYMBOL_GPL vmlinux 0x0b95088e __fscrypt_prepare_symlink +EXPORT_SYMBOL_GPL vmlinux 0x0b9b44bb sata_scr_write +EXPORT_SYMBOL_GPL vmlinux 0x0b9fd2cc ahci_set_em_messages +EXPORT_SYMBOL_GPL vmlinux 0x0ba6d554 devres_remove +EXPORT_SYMBOL_GPL vmlinux 0x0baa9c76 irq_chip_set_wake_parent +EXPORT_SYMBOL_GPL vmlinux 0x0bb028d4 hisi_clk_register_fixed_factor +EXPORT_SYMBOL_GPL vmlinux 0x0bce3077 ip6_pol_route +EXPORT_SYMBOL_GPL vmlinux 0x0bd06547 genphy_c45_an_disable_aneg +EXPORT_SYMBOL_GPL vmlinux 0x0bd5d44b blk_insert_cloned_request +EXPORT_SYMBOL_GPL vmlinux 0x0becec61 securityfs_create_symlink +EXPORT_SYMBOL_GPL vmlinux 0x0bf72c6b ata_wait_after_reset +EXPORT_SYMBOL_GPL vmlinux 0x0c0027ab uart_insert_char +EXPORT_SYMBOL_GPL vmlinux 0x0c0f1cc6 icc_std_aggregate +EXPORT_SYMBOL_GPL vmlinux 0x0c25dd25 pcie_bus_configure_settings +EXPORT_SYMBOL_GPL vmlinux 0x0c2c5802 work_busy +EXPORT_SYMBOL_GPL vmlinux 0x0c32ff8a edac_pci_alloc_index +EXPORT_SYMBOL_GPL vmlinux 0x0c3b2241 altr_sysmgr_regmap_lookup_by_phandle +EXPORT_SYMBOL_GPL vmlinux 0x0c3e6241 k3_udma_glue_disable_rx_chn +EXPORT_SYMBOL_GPL vmlinux 0x0c4939db devm_kmalloc +EXPORT_SYMBOL_GPL vmlinux 0x0c559ccb bpf_trace_run3 +EXPORT_SYMBOL_GPL vmlinux 0x0c560fa3 devm_watchdog_register_device +EXPORT_SYMBOL_GPL vmlinux 0x0c5d30e4 skcipher_walk_done +EXPORT_SYMBOL_GPL vmlinux 0x0c824c96 divider_recalc_rate +EXPORT_SYMBOL_GPL vmlinux 0x0c835f4d edac_device_handle_ce_count +EXPORT_SYMBOL_GPL vmlinux 0x0c861a60 kthread_data +EXPORT_SYMBOL_GPL vmlinux 0x0c8e0475 devm_usb_put_phy +EXPORT_SYMBOL_GPL vmlinux 0x0ca22e70 shash_register_instance +EXPORT_SYMBOL_GPL vmlinux 0x0cb2f6bd pci_aer_clear_nonfatal_status +EXPORT_SYMBOL_GPL vmlinux 0x0cb5168e nf_ipv6_ops +EXPORT_SYMBOL_GPL vmlinux 0x0cb579c0 __free_iova +EXPORT_SYMBOL_GPL vmlinux 0x0cbe3ee2 software_node_unregister +EXPORT_SYMBOL_GPL vmlinux 0x0cc3b29e acpi_dev_filter_resource_type +EXPORT_SYMBOL_GPL vmlinux 0x0cc4399b put_device +EXPORT_SYMBOL_GPL vmlinux 0x0cddeb02 devm_of_icc_get +EXPORT_SYMBOL_GPL vmlinux 0x0ce3dd73 bman_is_probed +EXPORT_SYMBOL_GPL vmlinux 0x0ce99733 ohci_init_driver +EXPORT_SYMBOL_GPL vmlinux 0x0d015c83 iommu_attach_group +EXPORT_SYMBOL_GPL vmlinux 0x0d116ad0 __sbitmap_queue_get +EXPORT_SYMBOL_GPL vmlinux 0x0d40d8be ti_sci_get_num_resources +EXPORT_SYMBOL_GPL vmlinux 0x0d42bac5 ip6_datagram_connect +EXPORT_SYMBOL_GPL vmlinux 0x0d459213 work_on_cpu_safe +EXPORT_SYMBOL_GPL vmlinux 0x0d4961de nf_log_buf_open +EXPORT_SYMBOL_GPL vmlinux 0x0d5dab7a attribute_container_find_class_device +EXPORT_SYMBOL_GPL vmlinux 0x0d5e0c3c security_file_ioctl +EXPORT_SYMBOL_GPL vmlinux 0x0d6582fc dev_pm_genpd_set_performance_state +EXPORT_SYMBOL_GPL vmlinux 0x0d7359ac fwnode_get_parent +EXPORT_SYMBOL_GPL vmlinux 0x0d756883 dma_buf_export +EXPORT_SYMBOL_GPL vmlinux 0x0d7cbc21 devm_devfreq_event_add_edev +EXPORT_SYMBOL_GPL vmlinux 0x0d882def cgroup_get_from_path +EXPORT_SYMBOL_GPL vmlinux 0x0d98f6b0 of_devfreq_cooling_register +EXPORT_SYMBOL_GPL vmlinux 0x0d9cba2b of_property_match_string +EXPORT_SYMBOL_GPL vmlinux 0x0da72cab device_release_driver +EXPORT_SYMBOL_GPL vmlinux 0x0dafac0e irq_set_default_host +EXPORT_SYMBOL_GPL vmlinux 0x0db2acfe fsl_mc_bus_dprc_type +EXPORT_SYMBOL_GPL vmlinux 0x0db32527 get_device +EXPORT_SYMBOL_GPL vmlinux 0x0dc373ab wm5110_aod +EXPORT_SYMBOL_GPL vmlinux 0x0ddb1cd7 llist_reverse_order +EXPORT_SYMBOL_GPL vmlinux 0x0df9ab93 irq_chip_ack_parent +EXPORT_SYMBOL_GPL vmlinux 0x0e007edf xen_evtchn_nr_channels +EXPORT_SYMBOL_GPL vmlinux 0x0e064773 lwtunnel_cmp_encap +EXPORT_SYMBOL_GPL vmlinux 0x0e13cb4d apei_resources_release +EXPORT_SYMBOL_GPL vmlinux 0x0e293d1a blk_mq_quiesce_queue +EXPORT_SYMBOL_GPL vmlinux 0x0e51b323 max8997_write_reg +EXPORT_SYMBOL_GPL vmlinux 0x0e537268 fat_fill_super +EXPORT_SYMBOL_GPL vmlinux 0x0e5ca760 fsl_mc_populate_irq_pool +EXPORT_SYMBOL_GPL vmlinux 0x0e6b79af static_key_disable_cpuslocked +EXPORT_SYMBOL_GPL vmlinux 0x0e6c8861 exportfs_decode_fh +EXPORT_SYMBOL_GPL vmlinux 0x0e6ee6ee kvm_vcpu_read_guest_atomic +EXPORT_SYMBOL_GPL vmlinux 0x0e713045 ksm_madvise +EXPORT_SYMBOL_GPL vmlinux 0x0e7234a3 rdev_get_dev +EXPORT_SYMBOL_GPL vmlinux 0x0e91539d dw_pcie_host_deinit +EXPORT_SYMBOL_GPL vmlinux 0x0e925f67 vma_kernel_pagesize +EXPORT_SYMBOL_GPL vmlinux 0x0e949aa9 percpu_up_write +EXPORT_SYMBOL_GPL vmlinux 0x0e9fa427 shash_no_setkey +EXPORT_SYMBOL_GPL vmlinux 0x0ea5511b ncsi_register_dev +EXPORT_SYMBOL_GPL vmlinux 0x0ea5cbce xen_irq_lateeoi +EXPORT_SYMBOL_GPL vmlinux 0x0eb0bbf9 kmsg_dump_get_buffer +EXPORT_SYMBOL_GPL vmlinux 0x0ebad489 is_current_mnt_ns +EXPORT_SYMBOL_GPL vmlinux 0x0ec8c8b9 ethnl_cable_test_result +EXPORT_SYMBOL_GPL vmlinux 0x0ed4ed5f rio_release_outb_dbell +EXPORT_SYMBOL_GPL vmlinux 0x0ed68b57 dev_pm_opp_get_max_clock_latency +EXPORT_SYMBOL_GPL vmlinux 0x0ed81069 kernfs_notify +EXPORT_SYMBOL_GPL vmlinux 0x0ed8c917 devm_ti_sci_get_handle +EXPORT_SYMBOL_GPL vmlinux 0x0eec8b4e devlink_region_create +EXPORT_SYMBOL_GPL vmlinux 0x0ef2e47d ipv6_recv_error +EXPORT_SYMBOL_GPL vmlinux 0x0ef43194 __ndisc_fill_addr_option +EXPORT_SYMBOL_GPL vmlinux 0x0f0995b2 serial8250_set_defaults +EXPORT_SYMBOL_GPL vmlinux 0x0f180070 ring_buffer_free_read_page +EXPORT_SYMBOL_GPL vmlinux 0x0f26fa7f pinctrl_parse_index_with_args +EXPORT_SYMBOL_GPL vmlinux 0x0f33cbd1 crypto_unregister_instance +EXPORT_SYMBOL_GPL vmlinux 0x0f3807d6 spi_bus_type +EXPORT_SYMBOL_GPL vmlinux 0x0f39445d extcon_get_property +EXPORT_SYMBOL_GPL vmlinux 0x0f4acfd0 phy_create +EXPORT_SYMBOL_GPL vmlinux 0x0f7ca236 dmi_memdev_name +EXPORT_SYMBOL_GPL vmlinux 0x0f8dbf9f blk_mq_freeze_queue_wait_timeout +EXPORT_SYMBOL_GPL vmlinux 0x0f9c441d usb_hcd_unmap_urb_setup_for_dma +EXPORT_SYMBOL_GPL vmlinux 0x0f9d2410 debugfs_create_u64 +EXPORT_SYMBOL_GPL vmlinux 0x0fb52fd6 pm_runtime_enable +EXPORT_SYMBOL_GPL vmlinux 0x0fbaaa14 edac_mc_handle_error +EXPORT_SYMBOL_GPL vmlinux 0x0fbb7344 memremap_compat_align +EXPORT_SYMBOL_GPL vmlinux 0x0fc43c20 hisi_format_sysfs_show +EXPORT_SYMBOL_GPL vmlinux 0x0fc89039 amba_apb_device_add_res +EXPORT_SYMBOL_GPL vmlinux 0x0fd668d8 power_supply_unregister +EXPORT_SYMBOL_GPL vmlinux 0x0fe7617c __tracepoint_suspend_resume +EXPORT_SYMBOL_GPL vmlinux 0x10006d83 l3mdev_link_scope_lookup +EXPORT_SYMBOL_GPL vmlinux 0x1004c959 devlink_dpipe_table_register +EXPORT_SYMBOL_GPL vmlinux 0x100e2811 crypto_alloc_acomp +EXPORT_SYMBOL_GPL vmlinux 0x100fdc15 edac_pci_alloc_ctl_info +EXPORT_SYMBOL_GPL vmlinux 0x10138352 tracing_on +EXPORT_SYMBOL_GPL vmlinux 0x1013bbbc bpf_prog_sub +EXPORT_SYMBOL_GPL vmlinux 0x10146cf1 set_online_page_callback +EXPORT_SYMBOL_GPL vmlinux 0x1030398d lwtunnel_input +EXPORT_SYMBOL_GPL vmlinux 0x1062aa27 power_supply_batinfo_ocv2cap +EXPORT_SYMBOL_GPL vmlinux 0x10695790 tty_buffer_set_limit +EXPORT_SYMBOL_GPL vmlinux 0x107ceb14 __rio_local_read_config_32 +EXPORT_SYMBOL_GPL vmlinux 0x10853d8d wm831x_auxadc_read +EXPORT_SYMBOL_GPL vmlinux 0x108a0acd bstr_printf +EXPORT_SYMBOL_GPL vmlinux 0x108f52dc devm_acpi_dev_add_driver_gpios +EXPORT_SYMBOL_GPL vmlinux 0x10916f6d security_inode_permission +EXPORT_SYMBOL_GPL vmlinux 0x10ac5b38 regulator_set_voltage_rdev +EXPORT_SYMBOL_GPL vmlinux 0x10b2c8c9 blk_execute_rq_nowait +EXPORT_SYMBOL_GPL vmlinux 0x10bc1785 platform_get_resource_byname +EXPORT_SYMBOL_GPL vmlinux 0x10c2e75a kmsg_dump_register +EXPORT_SYMBOL_GPL vmlinux 0x10c767a8 devres_find +EXPORT_SYMBOL_GPL vmlinux 0x10db05f9 sbitmap_bitmap_show +EXPORT_SYMBOL_GPL vmlinux 0x10e47a93 device_store_int +EXPORT_SYMBOL_GPL vmlinux 0x10ecc52c usb_amd_quirk_pll_enable +EXPORT_SYMBOL_GPL vmlinux 0x10fb97c4 crypto_register_ahash +EXPORT_SYMBOL_GPL vmlinux 0x110106c1 cper_severity_to_aer +EXPORT_SYMBOL_GPL vmlinux 0x11138d33 is_nvdimm_sync +EXPORT_SYMBOL_GPL vmlinux 0x111f8314 devm_regulator_bulk_unregister_supply_alias +EXPORT_SYMBOL_GPL vmlinux 0x112371bd dma_buf_unpin +EXPORT_SYMBOL_GPL vmlinux 0x113ad0b9 sdio_readw +EXPORT_SYMBOL_GPL vmlinux 0x113d52e8 crypto_unregister_aead +EXPORT_SYMBOL_GPL vmlinux 0x116288df bio_trim +EXPORT_SYMBOL_GPL vmlinux 0x1166f829 __irq_domain_alloc_fwnode +EXPORT_SYMBOL_GPL vmlinux 0x1172d487 rhashtable_insert_slow +EXPORT_SYMBOL_GPL vmlinux 0x1173a108 tun_get_socket +EXPORT_SYMBOL_GPL vmlinux 0x1185c249 arch_apei_report_mem_error +EXPORT_SYMBOL_GPL vmlinux 0x1186a48e rio_unregister_mport +EXPORT_SYMBOL_GPL vmlinux 0x118813e2 unix_outq_len +EXPORT_SYMBOL_GPL vmlinux 0x11a2e0ac crypto_dh_key_len +EXPORT_SYMBOL_GPL vmlinux 0x11b08446 kvm_read_guest_page +EXPORT_SYMBOL_GPL vmlinux 0x11b365c1 dev_pm_opp_enable +EXPORT_SYMBOL_GPL vmlinux 0x11b5c6c6 of_irq_parse_one +EXPORT_SYMBOL_GPL vmlinux 0x11b79e85 blk_req_zone_write_trylock +EXPORT_SYMBOL_GPL vmlinux 0x11c1659d scsi_schedule_eh +EXPORT_SYMBOL_GPL vmlinux 0x11c23240 crypto_attr_u32 +EXPORT_SYMBOL_GPL vmlinux 0x11c4cf90 sdio_retune_crc_disable +EXPORT_SYMBOL_GPL vmlinux 0x11c67771 regulator_get_optional +EXPORT_SYMBOL_GPL vmlinux 0x11cb00f5 of_clk_src_onecell_get +EXPORT_SYMBOL_GPL vmlinux 0x11cfd067 sock_zerocopy_alloc +EXPORT_SYMBOL_GPL vmlinux 0x11db8f29 sock_diag_save_cookie +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 0x11e14c87 irq_create_direct_mapping +EXPORT_SYMBOL_GPL vmlinux 0x11ed2e63 pstore_register +EXPORT_SYMBOL_GPL vmlinux 0x1208bb30 crypto_ahash_final +EXPORT_SYMBOL_GPL vmlinux 0x120f4a01 regulator_bulk_get +EXPORT_SYMBOL_GPL vmlinux 0x1215a2b6 dev_pm_opp_of_get_opp_desc_node +EXPORT_SYMBOL_GPL vmlinux 0x12184734 crypto_drop_spawn +EXPORT_SYMBOL_GPL vmlinux 0x121d958a unregister_die_notifier +EXPORT_SYMBOL_GPL vmlinux 0x122d8275 power_supply_set_input_current_limit_from_supplier +EXPORT_SYMBOL_GPL vmlinux 0x122ed7b6 usb_autopm_put_interface_async +EXPORT_SYMBOL_GPL vmlinux 0x1234e483 get_cpu_iowait_time_us +EXPORT_SYMBOL_GPL vmlinux 0x1234ffa1 cper_estatus_check_header +EXPORT_SYMBOL_GPL vmlinux 0x12479f97 gpiod_get_raw_array_value +EXPORT_SYMBOL_GPL vmlinux 0x1259b431 phy_exit +EXPORT_SYMBOL_GPL vmlinux 0x1268f357 resume_device_irqs +EXPORT_SYMBOL_GPL vmlinux 0x128c2ae8 tty_port_link_device +EXPORT_SYMBOL_GPL vmlinux 0x12906955 is_transparent_hugepage +EXPORT_SYMBOL_GPL vmlinux 0x129334ae sfp_parse_support +EXPORT_SYMBOL_GPL vmlinux 0x12ab31f1 idr_alloc_u32 +EXPORT_SYMBOL_GPL vmlinux 0x12be4d01 tty_find_polling_driver +EXPORT_SYMBOL_GPL vmlinux 0x12c028a6 pci_check_and_unmask_intx +EXPORT_SYMBOL_GPL vmlinux 0x12cd0b53 led_classdev_unregister +EXPORT_SYMBOL_GPL vmlinux 0x12dbc8f6 percpu_ref_switch_to_atomic_sync +EXPORT_SYMBOL_GPL vmlinux 0x12e185de da903x_reads +EXPORT_SYMBOL_GPL vmlinux 0x12e99a3a mtk_eint_find_irq +EXPORT_SYMBOL_GPL vmlinux 0x12eb7ccf cgroup_rstat_updated +EXPORT_SYMBOL_GPL vmlinux 0x12f66367 bpf_prog_select_runtime +EXPORT_SYMBOL_GPL vmlinux 0x12f8577c __pm_runtime_idle +EXPORT_SYMBOL_GPL vmlinux 0x1301eacb fuse_dev_install +EXPORT_SYMBOL_GPL vmlinux 0x130c5f06 clk_hw_set_rate_range +EXPORT_SYMBOL_GPL vmlinux 0x130cf3f2 phy_create_lookup +EXPORT_SYMBOL_GPL vmlinux 0x131a5ed7 regmap_del_irq_chip +EXPORT_SYMBOL_GPL vmlinux 0x131db64a system_long_wq +EXPORT_SYMBOL_GPL vmlinux 0x13230daf gpiochip_unlock_as_irq +EXPORT_SYMBOL_GPL vmlinux 0x1325b92b acpi_subsys_prepare +EXPORT_SYMBOL_GPL vmlinux 0x133969d7 __trace_printk +EXPORT_SYMBOL_GPL vmlinux 0x13432236 nf_queue_entry_free +EXPORT_SYMBOL_GPL vmlinux 0x135687da efivar_entry_get +EXPORT_SYMBOL_GPL vmlinux 0x135f572f security_inode_mkdir +EXPORT_SYMBOL_GPL vmlinux 0x136117c4 tps6586x_get_version +EXPORT_SYMBOL_GPL vmlinux 0x136209db power_supply_reg_notifier +EXPORT_SYMBOL_GPL vmlinux 0x136a8d2e devm_regulator_unregister_supply_alias +EXPORT_SYMBOL_GPL vmlinux 0x1382f880 trace_event_raw_init +EXPORT_SYMBOL_GPL vmlinux 0x138aff76 gnttab_init +EXPORT_SYMBOL_GPL vmlinux 0x138e0957 dax_write_cache_enabled +EXPORT_SYMBOL_GPL vmlinux 0x13a6d46a dev_pm_opp_put_opp_table +EXPORT_SYMBOL_GPL vmlinux 0x13aa8297 rio_mport_class +EXPORT_SYMBOL_GPL vmlinux 0x13b15391 usb_for_each_dev +EXPORT_SYMBOL_GPL vmlinux 0x13b18a11 dev_pm_domain_set +EXPORT_SYMBOL_GPL vmlinux 0x13c19ee7 alarm_forward_now +EXPORT_SYMBOL_GPL vmlinux 0x13ce87e8 asn1_ber_decoder +EXPORT_SYMBOL_GPL vmlinux 0x13ed8784 sdev_evt_alloc +EXPORT_SYMBOL_GPL vmlinux 0x13fe6311 xdp_convert_zc_to_xdp_frame +EXPORT_SYMBOL_GPL vmlinux 0x1403ad09 cpufreq_add_update_util_hook +EXPORT_SYMBOL_GPL vmlinux 0x1404e657 scsi_host_busy_iter +EXPORT_SYMBOL_GPL vmlinux 0x140fc7d7 ata_host_register +EXPORT_SYMBOL_GPL vmlinux 0x1412d0e3 addrconf_add_linklocal +EXPORT_SYMBOL_GPL vmlinux 0x1418238a __tracepoint_cpu_frequency +EXPORT_SYMBOL_GPL vmlinux 0x141f38bf ktime_get_raw_fast_ns +EXPORT_SYMBOL_GPL vmlinux 0x1427508e cpufreq_register_governor +EXPORT_SYMBOL_GPL vmlinux 0x1429e507 find_mci_by_dev +EXPORT_SYMBOL_GPL vmlinux 0x1433b3a8 gpiochip_line_is_open_source +EXPORT_SYMBOL_GPL vmlinux 0x144591f9 hisi_reset_init +EXPORT_SYMBOL_GPL vmlinux 0x1456762b k3_ringacc_ring_get_free +EXPORT_SYMBOL_GPL vmlinux 0x1485a307 free_io_pgtable_ops +EXPORT_SYMBOL_GPL vmlinux 0x14886c74 nf_nat_hook +EXPORT_SYMBOL_GPL vmlinux 0x1490b16a rio_mport_write_config_8 +EXPORT_SYMBOL_GPL vmlinux 0x14a37c48 inet_csk_listen_stop +EXPORT_SYMBOL_GPL vmlinux 0x14aea24d of_i2c_setup_smbus_alert +EXPORT_SYMBOL_GPL vmlinux 0x14d01690 clk_mux_index_to_val +EXPORT_SYMBOL_GPL vmlinux 0x14d382d9 pinctrl_lookup_state +EXPORT_SYMBOL_GPL vmlinux 0x14d5ff70 phy_reset +EXPORT_SYMBOL_GPL vmlinux 0x14d7eda5 spi_take_timestamp_post +EXPORT_SYMBOL_GPL vmlinux 0x14dbaec9 tpm_calc_ordinal_duration +EXPORT_SYMBOL_GPL vmlinux 0x14e17f1e bgmac_alloc +EXPORT_SYMBOL_GPL vmlinux 0x14e6f394 to_nd_region +EXPORT_SYMBOL_GPL vmlinux 0x14ec4fdb evtchn_put +EXPORT_SYMBOL_GPL vmlinux 0x14ede9c8 fsnotify_parent +EXPORT_SYMBOL_GPL vmlinux 0x150a1925 netdev_rx_handler_unregister +EXPORT_SYMBOL_GPL vmlinux 0x15129b9e blk_add_driver_data +EXPORT_SYMBOL_GPL vmlinux 0x151694a9 of_clk_parent_fill +EXPORT_SYMBOL_GPL vmlinux 0x1525ebb6 pin_user_pages_fast_only +EXPORT_SYMBOL_GPL vmlinux 0x152665cd debugfs_create_size_t +EXPORT_SYMBOL_GPL vmlinux 0x1531a116 css_next_descendant_pre +EXPORT_SYMBOL_GPL vmlinux 0x153b60a6 klist_del +EXPORT_SYMBOL_GPL vmlinux 0x15510a89 devlink_fmsg_binary_put +EXPORT_SYMBOL_GPL vmlinux 0x155efc4e ata_scsi_dma_need_drain +EXPORT_SYMBOL_GPL vmlinux 0x1563b906 device_property_read_string_array +EXPORT_SYMBOL_GPL vmlinux 0x15698242 sdio_retune_crc_enable +EXPORT_SYMBOL_GPL vmlinux 0x156cdac8 __tracepoint_kfree_skb +EXPORT_SYMBOL_GPL vmlinux 0x15701201 pinctrl_select_default_state +EXPORT_SYMBOL_GPL vmlinux 0x157a64fe __pneigh_lookup +EXPORT_SYMBOL_GPL vmlinux 0x15934fab gpiochip_add_pin_range +EXPORT_SYMBOL_GPL vmlinux 0x159bc7a4 device_find_child +EXPORT_SYMBOL_GPL vmlinux 0x159f5beb rt_mutex_destroy +EXPORT_SYMBOL_GPL vmlinux 0x15ba9efe blk_mq_flush_busy_ctxs +EXPORT_SYMBOL_GPL vmlinux 0x15ceba45 bpf_map_inc_not_zero +EXPORT_SYMBOL_GPL vmlinux 0x15d373b9 ata_qc_complete_multiple +EXPORT_SYMBOL_GPL vmlinux 0x15e20f91 ahci_start_fis_rx +EXPORT_SYMBOL_GPL vmlinux 0x15e4e8c0 rtc_class_close +EXPORT_SYMBOL_GPL vmlinux 0x15ea2648 hwpoison_filter_flags_mask +EXPORT_SYMBOL_GPL vmlinux 0x15f9fec0 of_platform_device_destroy +EXPORT_SYMBOL_GPL vmlinux 0x1603e2ee __sock_recv_timestamp +EXPORT_SYMBOL_GPL vmlinux 0x16237914 usb_hcd_platform_shutdown +EXPORT_SYMBOL_GPL vmlinux 0x162843a7 regulator_register_notifier +EXPORT_SYMBOL_GPL vmlinux 0x162d9d0a skb_splice_bits +EXPORT_SYMBOL_GPL vmlinux 0x163eeb0b dma_buf_map_attachment +EXPORT_SYMBOL_GPL vmlinux 0x1646116f regulator_enable +EXPORT_SYMBOL_GPL vmlinux 0x164dde13 fsl_mc_allocate_irqs +EXPORT_SYMBOL_GPL vmlinux 0x16516798 osc_pc_lpi_support_confirmed +EXPORT_SYMBOL_GPL vmlinux 0x1659a70a crypto_alloc_sync_skcipher +EXPORT_SYMBOL_GPL vmlinux 0x165e88e1 sdio_release_host +EXPORT_SYMBOL_GPL vmlinux 0x1666c1a3 bgmac_enet_remove +EXPORT_SYMBOL_GPL vmlinux 0x166ca67e pci_hp_add +EXPORT_SYMBOL_GPL vmlinux 0x166d6443 __tracepoint_pelt_rt_tp +EXPORT_SYMBOL_GPL vmlinux 0x16735905 component_unbind_all +EXPORT_SYMBOL_GPL vmlinux 0x1675dd22 fwnode_get_name +EXPORT_SYMBOL_GPL vmlinux 0x167d7113 acpi_bus_register_early_device +EXPORT_SYMBOL_GPL vmlinux 0x167d9343 fscrypt_ioctl_remove_key_all_users +EXPORT_SYMBOL_GPL vmlinux 0x16907655 pwm_apply_state +EXPORT_SYMBOL_GPL vmlinux 0x1690b503 usb_role_switch_get_drvdata +EXPORT_SYMBOL_GPL vmlinux 0x1694914c pinctrl_put +EXPORT_SYMBOL_GPL vmlinux 0x16a2d757 mark_page_dirty +EXPORT_SYMBOL_GPL vmlinux 0x16a608c5 hisi_clk_init +EXPORT_SYMBOL_GPL vmlinux 0x16a8697c kthread_cancel_delayed_work_sync +EXPORT_SYMBOL_GPL vmlinux 0x16b2a272 tracepoint_srcu +EXPORT_SYMBOL_GPL vmlinux 0x16bbba7e rtc_set_alarm +EXPORT_SYMBOL_GPL vmlinux 0x16bbc630 irq_domain_xlate_onetwocell +EXPORT_SYMBOL_GPL vmlinux 0x16bdfc6c xfrm_dev_offload_ok +EXPORT_SYMBOL_GPL vmlinux 0x16c4f1ae security_path_truncate +EXPORT_SYMBOL_GPL vmlinux 0x16cf1f3b dax_supported +EXPORT_SYMBOL_GPL vmlinux 0x16da1f88 devlink_fmsg_u32_put +EXPORT_SYMBOL_GPL vmlinux 0x16eb2c68 crypto_alloc_shash +EXPORT_SYMBOL_GPL vmlinux 0x16ee012e irq_domain_pop_irq +EXPORT_SYMBOL_GPL vmlinux 0x16f15139 bind_evtchn_to_irq +EXPORT_SYMBOL_GPL vmlinux 0x16f2640d devm_phy_create +EXPORT_SYMBOL_GPL vmlinux 0x16f87be0 ethnl_cable_test_alloc +EXPORT_SYMBOL_GPL vmlinux 0x16ffc8bc devm_kasprintf +EXPORT_SYMBOL_GPL vmlinux 0x17001303 virtqueue_get_buf +EXPORT_SYMBOL_GPL vmlinux 0x17031800 cpufreq_dbs_governor_exit +EXPORT_SYMBOL_GPL vmlinux 0x170cc36c put_timespec64 +EXPORT_SYMBOL_GPL vmlinux 0x171987d5 __phy_modify_mmd_changed +EXPORT_SYMBOL_GPL vmlinux 0x172b7f2c screen_glyph_unicode +EXPORT_SYMBOL_GPL vmlinux 0x1741ddee trace_seq_puts +EXPORT_SYMBOL_GPL vmlinux 0x174ea197 sprd_pinctrl_shutdown +EXPORT_SYMBOL_GPL vmlinux 0x1759005d crypto_stats_kpp_set_secret +EXPORT_SYMBOL_GPL vmlinux 0x17591ecd zynqmp_pm_write_ggs +EXPORT_SYMBOL_GPL vmlinux 0x175b3039 irq_domain_xlate_twocell +EXPORT_SYMBOL_GPL vmlinux 0x176031a7 devlink_fmsg_string_put +EXPORT_SYMBOL_GPL vmlinux 0x17614bf3 apei_resources_sub +EXPORT_SYMBOL_GPL vmlinux 0x177c338d twl_get_version +EXPORT_SYMBOL_GPL vmlinux 0x178ae307 devm_gpio_request_one +EXPORT_SYMBOL_GPL vmlinux 0x178e562c __regmap_init_mmio_clk +EXPORT_SYMBOL_GPL vmlinux 0x1793e776 nvmem_cell_read_u16 +EXPORT_SYMBOL_GPL vmlinux 0x17970345 gpiod_unexport +EXPORT_SYMBOL_GPL vmlinux 0x17a3993f __tracepoint_block_split +EXPORT_SYMBOL_GPL vmlinux 0x17d74af9 rockchip_pcie_enable_clocks +EXPORT_SYMBOL_GPL vmlinux 0x17dd537b pci_epc_destroy +EXPORT_SYMBOL_GPL vmlinux 0x17e01f11 erst_clear +EXPORT_SYMBOL_GPL vmlinux 0x17e72c6f console_drivers +EXPORT_SYMBOL_GPL vmlinux 0x17ecd73b raw_unhash_sk +EXPORT_SYMBOL_GPL vmlinux 0x17eea215 blkdev_nr_zones +EXPORT_SYMBOL_GPL vmlinux 0x18008c59 ring_buffer_resize +EXPORT_SYMBOL_GPL vmlinux 0x1804bce1 cpufreq_cpu_get +EXPORT_SYMBOL_GPL vmlinux 0x180e7cbb rio_dev_put +EXPORT_SYMBOL_GPL vmlinux 0x18151359 tcp_ca_openreq_child +EXPORT_SYMBOL_GPL vmlinux 0x1856a3d3 ata_eh_analyze_ncq_error +EXPORT_SYMBOL_GPL vmlinux 0x1860f880 devm_memremap_pages +EXPORT_SYMBOL_GPL vmlinux 0x18615d35 efivar_supports_writes +EXPORT_SYMBOL_GPL vmlinux 0x18728552 sprint_OID +EXPORT_SYMBOL_GPL vmlinux 0x187da1f1 to_of_pinfo +EXPORT_SYMBOL_GPL vmlinux 0x187e359b inet6_lookup_listener +EXPORT_SYMBOL_GPL vmlinux 0x18c16850 class_remove_file_ns +EXPORT_SYMBOL_GPL vmlinux 0x18dfe727 da903x_register_notifier +EXPORT_SYMBOL_GPL vmlinux 0x18e4f8aa swphy_read_reg +EXPORT_SYMBOL_GPL vmlinux 0x18f10f38 k3_udma_glue_enable_rx_chn +EXPORT_SYMBOL_GPL vmlinux 0x18fb2caf cpus_read_unlock +EXPORT_SYMBOL_GPL vmlinux 0x1913e964 ata_host_resume +EXPORT_SYMBOL_GPL vmlinux 0x192b6892 verify_signature +EXPORT_SYMBOL_GPL vmlinux 0x1930966d scsi_target_unblock +EXPORT_SYMBOL_GPL vmlinux 0x1937dac4 __account_locked_vm +EXPORT_SYMBOL_GPL vmlinux 0x194352a6 __regmap_init +EXPORT_SYMBOL_GPL vmlinux 0x19515cc9 register_user_hw_breakpoint +EXPORT_SYMBOL_GPL vmlinux 0x1983fad2 get_current_tty +EXPORT_SYMBOL_GPL vmlinux 0x1986e530 blk_mq_alloc_request_hctx +EXPORT_SYMBOL_GPL vmlinux 0x199e6640 pkcs7_validate_trust +EXPORT_SYMBOL_GPL vmlinux 0x19a304ba usb_disabled +EXPORT_SYMBOL_GPL vmlinux 0x19aa3b07 tps65912_device_init +EXPORT_SYMBOL_GPL vmlinux 0x19aeb339 devm_gpio_free +EXPORT_SYMBOL_GPL vmlinux 0x19b2e7d8 acpi_subsys_poweroff +EXPORT_SYMBOL_GPL vmlinux 0x19c20269 soc_device_unregister +EXPORT_SYMBOL_GPL vmlinux 0x19c4cd48 ping_seq_next +EXPORT_SYMBOL_GPL vmlinux 0x19cec797 skcipher_walk_aead_decrypt +EXPORT_SYMBOL_GPL vmlinux 0x19d30733 clockevents_register_device +EXPORT_SYMBOL_GPL vmlinux 0x19e81304 btree_alloc +EXPORT_SYMBOL_GPL vmlinux 0x19ebdecf power_supply_get_by_name +EXPORT_SYMBOL_GPL vmlinux 0x19edd064 blkg_rwstat_exit +EXPORT_SYMBOL_GPL vmlinux 0x19f462ab kfree_call_rcu +EXPORT_SYMBOL_GPL vmlinux 0x19f6f988 genphy_c45_check_and_restart_aneg +EXPORT_SYMBOL_GPL vmlinux 0x1a05ff63 skb_mpls_dec_ttl +EXPORT_SYMBOL_GPL vmlinux 0x1a10c32b crypto_ft_tab +EXPORT_SYMBOL_GPL vmlinux 0x1a146ec3 usb_ep_type_string +EXPORT_SYMBOL_GPL vmlinux 0x1a1fd81f adp5520_set_bits +EXPORT_SYMBOL_GPL vmlinux 0x1a252060 kvm_clear_guest +EXPORT_SYMBOL_GPL vmlinux 0x1a59e56e cpufreq_register_driver +EXPORT_SYMBOL_GPL vmlinux 0x1a5cd3c2 devm_regmap_field_free +EXPORT_SYMBOL_GPL vmlinux 0x1a6bf28f fsnotify_get_cookie +EXPORT_SYMBOL_GPL vmlinux 0x1a77903a of_alias_get_alias_list +EXPORT_SYMBOL_GPL vmlinux 0x1a78bcb9 virtqueue_enable_cb_prepare +EXPORT_SYMBOL_GPL vmlinux 0x1a799e01 dma_buf_attach +EXPORT_SYMBOL_GPL vmlinux 0x1a7b8f86 sched_show_task +EXPORT_SYMBOL_GPL vmlinux 0x1a9a23fa rtc_update_irq +EXPORT_SYMBOL_GPL vmlinux 0x1aae9373 pci_iomap_wc_range +EXPORT_SYMBOL_GPL vmlinux 0x1ac458a1 public_key_signature_free +EXPORT_SYMBOL_GPL vmlinux 0x1acc53c2 serdev_device_close +EXPORT_SYMBOL_GPL vmlinux 0x1acd18c8 cpuset_cgrp_subsys_on_dfl_key +EXPORT_SYMBOL_GPL vmlinux 0x1ace5adc clk_register_hisi_phase +EXPORT_SYMBOL_GPL vmlinux 0x1ad8b714 sdio_claim_host +EXPORT_SYMBOL_GPL vmlinux 0x1af01162 blk_register_queue +EXPORT_SYMBOL_GPL vmlinux 0x1af267f8 int_pow +EXPORT_SYMBOL_GPL vmlinux 0x1b02f8a1 d_exchange +EXPORT_SYMBOL_GPL vmlinux 0x1b0ea758 uart_handle_cts_change +EXPORT_SYMBOL_GPL vmlinux 0x1b1471f3 alarm_start +EXPORT_SYMBOL_GPL vmlinux 0x1b1718a0 sched_trace_rq_avg_irq +EXPORT_SYMBOL_GPL vmlinux 0x1b1c23f0 of_property_read_variable_u8_array +EXPORT_SYMBOL_GPL vmlinux 0x1b27fab4 crypto_shash_tfm_digest +EXPORT_SYMBOL_GPL vmlinux 0x1b33203d mnt_drop_write +EXPORT_SYMBOL_GPL vmlinux 0x1b38b181 device_connection_remove +EXPORT_SYMBOL_GPL vmlinux 0x1b3cb0c9 __srcu_notifier_call_chain +EXPORT_SYMBOL_GPL vmlinux 0x1b5059ce ata_id_xfermask +EXPORT_SYMBOL_GPL vmlinux 0x1b5f4377 trace_seq_putc +EXPORT_SYMBOL_GPL vmlinux 0x1b6131b9 alloc_iova_fast +EXPORT_SYMBOL_GPL vmlinux 0x1b61a25f spi_add_device +EXPORT_SYMBOL_GPL vmlinux 0x1b69acff acpi_dev_get_resources +EXPORT_SYMBOL_GPL vmlinux 0x1b76d749 ahci_stop_engine +EXPORT_SYMBOL_GPL vmlinux 0x1b78e29c dpcon_reset +EXPORT_SYMBOL_GPL vmlinux 0x1b8822d8 pinctrl_gpio_direction_output +EXPORT_SYMBOL_GPL vmlinux 0x1b92e41d inet_putpeer +EXPORT_SYMBOL_GPL vmlinux 0x1bb0ff43 debugfs_create_u16 +EXPORT_SYMBOL_GPL vmlinux 0x1bb4db7b bsg_scsi_register_queue +EXPORT_SYMBOL_GPL vmlinux 0x1bb64aa3 regulator_is_enabled +EXPORT_SYMBOL_GPL vmlinux 0x1bbdf9ec blk_lld_busy +EXPORT_SYMBOL_GPL vmlinux 0x1bc5eebe pinctrl_gpio_direction_input +EXPORT_SYMBOL_GPL vmlinux 0x1bc9af36 posix_acl_create +EXPORT_SYMBOL_GPL vmlinux 0x1bd8b32e unregister_virtio_driver +EXPORT_SYMBOL_GPL vmlinux 0x1bdc601c devfreq_event_get_edev_count +EXPORT_SYMBOL_GPL vmlinux 0x1bdf7a21 sprd_pinctrl_remove +EXPORT_SYMBOL_GPL vmlinux 0x1bec150f pci_set_host_bridge_release +EXPORT_SYMBOL_GPL vmlinux 0x1bec80e0 __set_page_dirty +EXPORT_SYMBOL_GPL vmlinux 0x1bee4974 sg_alloc_table_chained +EXPORT_SYMBOL_GPL vmlinux 0x1bf5c9f4 device_move +EXPORT_SYMBOL_GPL vmlinux 0x1bf643bc crypto_alloc_kpp +EXPORT_SYMBOL_GPL vmlinux 0x1bf7a06c scsi_register_device_handler +EXPORT_SYMBOL_GPL vmlinux 0x1c13fe0c serial8250_init_port +EXPORT_SYMBOL_GPL vmlinux 0x1c224004 devm_gpiod_get_array_optional +EXPORT_SYMBOL_GPL vmlinux 0x1c296cdc icc_put +EXPORT_SYMBOL_GPL vmlinux 0x1c2b4ffe class_interface_unregister +EXPORT_SYMBOL_GPL vmlinux 0x1c39b58b loop_backing_file +EXPORT_SYMBOL_GPL vmlinux 0x1c39c3bd crypto_aead_encrypt +EXPORT_SYMBOL_GPL vmlinux 0x1c413cb6 mtk_pinconf_bias_get +EXPORT_SYMBOL_GPL vmlinux 0x1c41bf7a dma_release_channel +EXPORT_SYMBOL_GPL vmlinux 0x1c44b902 __blocking_notifier_call_chain +EXPORT_SYMBOL_GPL vmlinux 0x1c4f3b68 clk_fixed_factor_ops +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 0x1c6ca649 hisi_cpumask_sysfs_show +EXPORT_SYMBOL_GPL vmlinux 0x1c77d4c5 component_add +EXPORT_SYMBOL_GPL vmlinux 0x1c80d27d btree_geo128 +EXPORT_SYMBOL_GPL vmlinux 0x1c82232c regulator_list_hardware_vsel +EXPORT_SYMBOL_GPL vmlinux 0x1c823f15 ipv6_dup_options +EXPORT_SYMBOL_GPL vmlinux 0x1c87a811 __round_jiffies_up +EXPORT_SYMBOL_GPL vmlinux 0x1c89fb22 zynqmp_pm_clock_setparent +EXPORT_SYMBOL_GPL vmlinux 0x1ca35b70 ethnl_cable_test_free +EXPORT_SYMBOL_GPL vmlinux 0x1ca4a930 smp_call_function_any +EXPORT_SYMBOL_GPL vmlinux 0x1cacd79b amba_device_alloc +EXPORT_SYMBOL_GPL vmlinux 0x1cae53e4 pci_common_swizzle +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 0x1cc36ec0 mmc_regulator_set_vqmmc +EXPORT_SYMBOL_GPL vmlinux 0x1cca9ab2 debugfs_rename +EXPORT_SYMBOL_GPL vmlinux 0x1ccd38d4 of_clk_hw_register +EXPORT_SYMBOL_GPL vmlinux 0x1cd1f436 clk_regmap_divider_ops +EXPORT_SYMBOL_GPL vmlinux 0x1cd4154a dev_pm_opp_find_freq_ceil +EXPORT_SYMBOL_GPL vmlinux 0x1cddf819 sched_trace_rq_avg_dl +EXPORT_SYMBOL_GPL vmlinux 0x1cea5aee get_cpu_device +EXPORT_SYMBOL_GPL vmlinux 0x1cf43e8c governor_sysfs_ops +EXPORT_SYMBOL_GPL vmlinux 0x1d0d1a21 regmap_fields_update_bits_base +EXPORT_SYMBOL_GPL vmlinux 0x1d1453cf crypto_grab_shash +EXPORT_SYMBOL_GPL vmlinux 0x1d222ced irq_get_irqchip_state +EXPORT_SYMBOL_GPL vmlinux 0x1d26dab3 md_rdev_init +EXPORT_SYMBOL_GPL vmlinux 0x1d289f43 devm_gpiod_get_index +EXPORT_SYMBOL_GPL vmlinux 0x1d3f61f8 iommu_sva_get_pasid +EXPORT_SYMBOL_GPL vmlinux 0x1d77b0f8 unix_socket_table +EXPORT_SYMBOL_GPL vmlinux 0x1d94a218 dmi_memdev_handle +EXPORT_SYMBOL_GPL vmlinux 0x1d9b206a pci_ioremap_wc_bar +EXPORT_SYMBOL_GPL vmlinux 0x1daa3480 kvm_put_kvm_no_destroy +EXPORT_SYMBOL_GPL vmlinux 0x1dbcbf5d fib4_rule_default +EXPORT_SYMBOL_GPL vmlinux 0x1dbd34b2 regmap_field_alloc +EXPORT_SYMBOL_GPL vmlinux 0x1dc3a590 crypto_stats_get +EXPORT_SYMBOL_GPL vmlinux 0x1dc8b81b ata_host_alloc +EXPORT_SYMBOL_GPL vmlinux 0x1dc9081c da9052_enable_irq +EXPORT_SYMBOL_GPL vmlinux 0x1deae378 ata_wait_register +EXPORT_SYMBOL_GPL vmlinux 0x1e0670c6 reset_control_release +EXPORT_SYMBOL_GPL vmlinux 0x1e0ab589 blk_ksm_init +EXPORT_SYMBOL_GPL vmlinux 0x1e30579e hwmon_device_unregister +EXPORT_SYMBOL_GPL vmlinux 0x1e356d0e phy_power_off +EXPORT_SYMBOL_GPL vmlinux 0x1e3c22d6 security_path_rmdir +EXPORT_SYMBOL_GPL vmlinux 0x1e51dabb __tracepoint_detach_device_from_domain +EXPORT_SYMBOL_GPL vmlinux 0x1e6b2c1a usb_put_intf +EXPORT_SYMBOL_GPL vmlinux 0x1e7bbcb3 kernel_restart +EXPORT_SYMBOL_GPL vmlinux 0x1e83fee6 HYPERVISOR_physdev_op +EXPORT_SYMBOL_GPL vmlinux 0x1e848405 spi_controller_dma_map_mem_op_data +EXPORT_SYMBOL_GPL vmlinux 0x1e8d6e47 __clk_determine_rate +EXPORT_SYMBOL_GPL vmlinux 0x1e8fac8e wireless_nlevent_flush +EXPORT_SYMBOL_GPL vmlinux 0x1e92038b rio_del_mport_pw_handler +EXPORT_SYMBOL_GPL vmlinux 0x1e9bc719 freq_qos_update_request +EXPORT_SYMBOL_GPL vmlinux 0x1ea417f5 driver_register +EXPORT_SYMBOL_GPL vmlinux 0x1ea997cd __srcu_read_lock +EXPORT_SYMBOL_GPL vmlinux 0x1eaec09e sbitmap_get +EXPORT_SYMBOL_GPL vmlinux 0x1eb5e129 devm_hwmon_device_register_with_groups +EXPORT_SYMBOL_GPL vmlinux 0x1eb9516e round_jiffies_relative +EXPORT_SYMBOL_GPL vmlinux 0x1ebf6c2a pci_power_names +EXPORT_SYMBOL_GPL vmlinux 0x1ecaaa36 pm_generic_restore +EXPORT_SYMBOL_GPL vmlinux 0x1ed47918 sysfs_rename_link_ns +EXPORT_SYMBOL_GPL vmlinux 0x1ee2ef34 crypto_larval_alloc +EXPORT_SYMBOL_GPL vmlinux 0x1ee7d3cd hrtimer_init +EXPORT_SYMBOL_GPL vmlinux 0x1ef130e8 devm_gpiod_get +EXPORT_SYMBOL_GPL vmlinux 0x1ef27a52 xhci_gen_setup +EXPORT_SYMBOL_GPL vmlinux 0x1ef7eee7 crypto_shash_digest +EXPORT_SYMBOL_GPL vmlinux 0x1efb0340 devm_power_supply_get_by_phandle +EXPORT_SYMBOL_GPL vmlinux 0x1f055de3 kvm_vcpu_yield_to +EXPORT_SYMBOL_GPL vmlinux 0x1f096887 pci_sriov_get_totalvfs +EXPORT_SYMBOL_GPL vmlinux 0x1f0cb5bf pm_power_off_prepare +EXPORT_SYMBOL_GPL vmlinux 0x1f14b978 __netpoll_free +EXPORT_SYMBOL_GPL vmlinux 0x1f1cc011 zynqmp_pm_get_chipid +EXPORT_SYMBOL_GPL vmlinux 0x1f26eb14 da9052_adc_read_temp +EXPORT_SYMBOL_GPL vmlinux 0x1f26fb6c pci_epc_get_msi +EXPORT_SYMBOL_GPL vmlinux 0x1f287915 crypto_comp_decompress +EXPORT_SYMBOL_GPL vmlinux 0x1f310d54 iommu_sva_bind_gpasid +EXPORT_SYMBOL_GPL vmlinux 0x1f31493f pwm_free +EXPORT_SYMBOL_GPL vmlinux 0x1f40f8c7 ahci_platform_enable_clks +EXPORT_SYMBOL_GPL vmlinux 0x1f449588 mctrl_gpio_disable_ms +EXPORT_SYMBOL_GPL vmlinux 0x1f47032a usb_enable_intel_xhci_ports +EXPORT_SYMBOL_GPL vmlinux 0x1f4a0f08 fat_remove_entries +EXPORT_SYMBOL_GPL vmlinux 0x1f563160 bpf_offload_dev_priv +EXPORT_SYMBOL_GPL vmlinux 0x1f771d6e blk_mq_force_complete_rq +EXPORT_SYMBOL_GPL vmlinux 0x1f8544b8 panic_timeout +EXPORT_SYMBOL_GPL vmlinux 0x1f89a301 dmaengine_desc_set_metadata_len +EXPORT_SYMBOL_GPL vmlinux 0x1f9a2b53 zynqmp_pm_clock_enable +EXPORT_SYMBOL_GPL vmlinux 0x1fa1d95c sha256_zero_message_hash +EXPORT_SYMBOL_GPL vmlinux 0x1fb11d6e debugfs_write_file_bool +EXPORT_SYMBOL_GPL vmlinux 0x1fb70eb9 gnttab_end_foreign_transfer_ref +EXPORT_SYMBOL_GPL vmlinux 0x1fcf18c4 gov_attr_set_get +EXPORT_SYMBOL_GPL vmlinux 0x1fd9e3b7 efivar_entry_remove +EXPORT_SYMBOL_GPL vmlinux 0x1fe6e504 gpiod_add_hogs +EXPORT_SYMBOL_GPL vmlinux 0x1ff210d2 xen_remap_vma_range +EXPORT_SYMBOL_GPL vmlinux 0x1ffe2a13 ata_sff_freeze +EXPORT_SYMBOL_GPL vmlinux 0x200ad7c7 switchdev_handle_port_obj_add +EXPORT_SYMBOL_GPL vmlinux 0x2020693b skb_append_pagefrags +EXPORT_SYMBOL_GPL vmlinux 0x202d4ed6 nvmem_cell_write +EXPORT_SYMBOL_GPL vmlinux 0x2049c4c8 regmap_irq_get_domain +EXPORT_SYMBOL_GPL vmlinux 0x204af798 pm_genpd_syscore_poweron +EXPORT_SYMBOL_GPL vmlinux 0x204f2c5c gnttab_free_grant_reference +EXPORT_SYMBOL_GPL vmlinux 0x20500165 cpufreq_freq_attr_scaling_boost_freqs +EXPORT_SYMBOL_GPL vmlinux 0x2050d851 dm_noflush_suspending +EXPORT_SYMBOL_GPL vmlinux 0x2055af0f ata_std_bios_param +EXPORT_SYMBOL_GPL vmlinux 0x2060e57a ata_dummy_port_ops +EXPORT_SYMBOL_GPL vmlinux 0x206d4e87 da903x_read +EXPORT_SYMBOL_GPL vmlinux 0x20835a9f __xdp_release_frame +EXPORT_SYMBOL_GPL vmlinux 0x2086ec74 devm_gpiod_get_from_of_node +EXPORT_SYMBOL_GPL vmlinux 0x2093f4dd clk_register_divider_table +EXPORT_SYMBOL_GPL vmlinux 0x20978fb9 idr_find +EXPORT_SYMBOL_GPL vmlinux 0x20984078 rdev_clear_badblocks +EXPORT_SYMBOL_GPL vmlinux 0x20a5d215 shmem_file_setup_with_mnt +EXPORT_SYMBOL_GPL vmlinux 0x20abcbac acpi_gpiochip_request_interrupts +EXPORT_SYMBOL_GPL vmlinux 0x20ac96e2 ata_cable_40wire +EXPORT_SYMBOL_GPL vmlinux 0x20bf13f5 tpm_try_get_ops +EXPORT_SYMBOL_GPL vmlinux 0x20c14857 __tcp_send_ack +EXPORT_SYMBOL_GPL vmlinux 0x20e2633c ata_sff_queue_pio_task +EXPORT_SYMBOL_GPL vmlinux 0x20edab85 pwm_request_from_chip +EXPORT_SYMBOL_GPL vmlinux 0x20f9ab1c mtk_pinconf_bias_disable_set_rev1 +EXPORT_SYMBOL_GPL vmlinux 0x20fc2dd6 phy_optional_get +EXPORT_SYMBOL_GPL vmlinux 0x2102fdbd ata_cable_sata +EXPORT_SYMBOL_GPL vmlinux 0x21098d1f sysfs_remove_bin_file +EXPORT_SYMBOL_GPL vmlinux 0x21131710 mpc8xxx_spi_rx_buf_u8 +EXPORT_SYMBOL_GPL vmlinux 0x2126d3f6 of_property_read_u64 +EXPORT_SYMBOL_GPL vmlinux 0x214611ed gpiod_count +EXPORT_SYMBOL_GPL vmlinux 0x21479bce page_mkclean +EXPORT_SYMBOL_GPL vmlinux 0x215bd07d dm_post_suspending +EXPORT_SYMBOL_GPL vmlinux 0x21646049 mmc_send_status +EXPORT_SYMBOL_GPL vmlinux 0x2169b494 acpi_driver_match_device +EXPORT_SYMBOL_GPL vmlinux 0x216de4e1 rcu_get_gp_kthreads_prio +EXPORT_SYMBOL_GPL vmlinux 0x2175eb9f securityfs_remove +EXPORT_SYMBOL_GPL vmlinux 0x2176e42a hwpoison_filter_memcg +EXPORT_SYMBOL_GPL vmlinux 0x2180e0f5 simple_attr_read +EXPORT_SYMBOL_GPL vmlinux 0x218a613f vchan_find_desc +EXPORT_SYMBOL_GPL vmlinux 0x21a563da clk_get_accuracy +EXPORT_SYMBOL_GPL vmlinux 0x21a8534b of_clk_add_provider +EXPORT_SYMBOL_GPL vmlinux 0x21a9d793 __gfn_to_pfn_memslot +EXPORT_SYMBOL_GPL vmlinux 0x21ac8b77 iommu_group_get_by_id +EXPORT_SYMBOL_GPL vmlinux 0x21b3423f ata_cable_80wire +EXPORT_SYMBOL_GPL vmlinux 0x21b66e16 devm_device_remove_group +EXPORT_SYMBOL_GPL vmlinux 0x21c34c8f gnttab_end_foreign_transfer +EXPORT_SYMBOL_GPL vmlinux 0x21cd536a crypto_put_default_null_skcipher +EXPORT_SYMBOL_GPL vmlinux 0x21d5cba1 device_property_read_u32_array +EXPORT_SYMBOL_GPL vmlinux 0x21d82c30 debugfs_create_x16 +EXPORT_SYMBOL_GPL vmlinux 0x21daf2f3 do_unregister_con_driver +EXPORT_SYMBOL_GPL vmlinux 0x21fb2ff4 __udp_enqueue_schedule_skb +EXPORT_SYMBOL_GPL vmlinux 0x21fe9e3f xenbus_map_ring_valloc +EXPORT_SYMBOL_GPL vmlinux 0x22096812 regmap_field_read +EXPORT_SYMBOL_GPL vmlinux 0x2211a4c0 blk_op_str +EXPORT_SYMBOL_GPL vmlinux 0x2212ac4a kvm_vcpu_write_guest_page +EXPORT_SYMBOL_GPL vmlinux 0x221eab6d scatterwalk_copychunks +EXPORT_SYMBOL_GPL vmlinux 0x2246b4dd __tracepoint_block_bio_remap +EXPORT_SYMBOL_GPL vmlinux 0x224a7a5f blk_mq_start_stopped_hw_queue +EXPORT_SYMBOL_GPL vmlinux 0x224f51bf nvmem_device_cell_read +EXPORT_SYMBOL_GPL vmlinux 0x22555c70 of_genpd_add_provider_simple +EXPORT_SYMBOL_GPL vmlinux 0x228b0d05 regcache_mark_dirty +EXPORT_SYMBOL_GPL vmlinux 0x2291ebf1 __pm_runtime_set_status +EXPORT_SYMBOL_GPL vmlinux 0x229e8602 syscon_regmap_lookup_by_phandle_args +EXPORT_SYMBOL_GPL vmlinux 0x22acaa04 tpm_pcr_read +EXPORT_SYMBOL_GPL vmlinux 0x22ae8097 __fscrypt_prepare_rename +EXPORT_SYMBOL_GPL vmlinux 0x22afff5c gpiod_get_value +EXPORT_SYMBOL_GPL vmlinux 0x22b03d5b devm_kmemdup +EXPORT_SYMBOL_GPL vmlinux 0x22d2db7f skb_mpls_push +EXPORT_SYMBOL_GPL vmlinux 0x22d9409b iomap_sort_ioends +EXPORT_SYMBOL_GPL vmlinux 0x22db8246 xen_dbgp_external_startup +EXPORT_SYMBOL_GPL vmlinux 0x22dceade ip6_push_pending_frames +EXPORT_SYMBOL_GPL vmlinux 0x22ec5205 cpu_latency_qos_remove_request +EXPORT_SYMBOL_GPL vmlinux 0x22f1ab75 xenbus_free_evtchn +EXPORT_SYMBOL_GPL vmlinux 0x22f441d4 kvm_release_page_dirty +EXPORT_SYMBOL_GPL vmlinux 0x22fd08ba cpuacct_cgrp_subsys_on_dfl_key +EXPORT_SYMBOL_GPL vmlinux 0x22fdb6b6 virtqueue_get_desc_addr +EXPORT_SYMBOL_GPL vmlinux 0x2305f0b9 pinconf_generic_dt_subnode_to_map +EXPORT_SYMBOL_GPL vmlinux 0x2326717e gfn_to_pfn_memslot +EXPORT_SYMBOL_GPL vmlinux 0x232ab97b pci_bus_add_device +EXPORT_SYMBOL_GPL vmlinux 0x232c0a10 xen_unmap_domain_gfn_range +EXPORT_SYMBOL_GPL vmlinux 0x233043ce spi_setup +EXPORT_SYMBOL_GPL vmlinux 0x233be5c1 fsl_mc_resource_allocate +EXPORT_SYMBOL_GPL vmlinux 0x234027ab fsverity_prepare_setattr +EXPORT_SYMBOL_GPL vmlinux 0x23412816 rtc_tm_to_ktime +EXPORT_SYMBOL_GPL vmlinux 0x23422a2c ip4_datagram_release_cb +EXPORT_SYMBOL_GPL vmlinux 0x234cf416 devlink_fmsg_string_pair_put +EXPORT_SYMBOL_GPL vmlinux 0x235172b5 rio_dma_prep_xfer +EXPORT_SYMBOL_GPL vmlinux 0x235549da user_destroy +EXPORT_SYMBOL_GPL vmlinux 0x235c4488 i2c_dw_prepare_clk +EXPORT_SYMBOL_GPL vmlinux 0x235e63ff crypto_unregister_algs +EXPORT_SYMBOL_GPL vmlinux 0x236773a0 phy_set_mode_ext +EXPORT_SYMBOL_GPL vmlinux 0x237a4331 tps6586x_set_bits +EXPORT_SYMBOL_GPL vmlinux 0x2380cec9 device_connection_add +EXPORT_SYMBOL_GPL vmlinux 0x23864ce7 cpuset_mem_spread_node +EXPORT_SYMBOL_GPL vmlinux 0x2396c7f0 clk_set_parent +EXPORT_SYMBOL_GPL vmlinux 0x23b6b1b3 strp_done +EXPORT_SYMBOL_GPL vmlinux 0x23c138c7 iommu_fwspec_add_ids +EXPORT_SYMBOL_GPL vmlinux 0x23c82d4a bpf_prog_get_type_dev +EXPORT_SYMBOL_GPL vmlinux 0x23ce84cf hwspin_lock_get_id +EXPORT_SYMBOL_GPL vmlinux 0x23d19f7f dev_pm_qos_add_notifier +EXPORT_SYMBOL_GPL vmlinux 0x23d31940 i2c_client_type +EXPORT_SYMBOL_GPL vmlinux 0x23e21ef2 rio_local_set_device_id +EXPORT_SYMBOL_GPL vmlinux 0x23ee09c9 rio_mport_write_config_16 +EXPORT_SYMBOL_GPL vmlinux 0x23f9db82 fuse_get_unique +EXPORT_SYMBOL_GPL vmlinux 0x2405510a synth_event_gen_cmd_array_start +EXPORT_SYMBOL_GPL vmlinux 0x24169e93 devm_regulator_register_notifier +EXPORT_SYMBOL_GPL vmlinux 0x241f8e94 zynqmp_pm_set_requirement +EXPORT_SYMBOL_GPL vmlinux 0x241fcf79 mddev_resume +EXPORT_SYMBOL_GPL vmlinux 0x2422fb27 gpiod_is_active_low +EXPORT_SYMBOL_GPL vmlinux 0x242a5084 pci_ioremap_bar +EXPORT_SYMBOL_GPL vmlinux 0x243f0b4b crypto_check_attr_type +EXPORT_SYMBOL_GPL vmlinux 0x2442cb0c fscrypt_ioctl_get_key_status +EXPORT_SYMBOL_GPL vmlinux 0x24565fb3 pinctrl_remove_gpio_range +EXPORT_SYMBOL_GPL vmlinux 0x2462acb2 mctrl_gpio_init_noauto +EXPORT_SYMBOL_GPL vmlinux 0x2464da17 gen_pool_size +EXPORT_SYMBOL_GPL vmlinux 0x24709b2f trace_seq_putmem +EXPORT_SYMBOL_GPL vmlinux 0x2470e9a6 i2c_acpi_new_device +EXPORT_SYMBOL_GPL vmlinux 0x247ef831 kdb_unregister +EXPORT_SYMBOL_GPL vmlinux 0x24a86d9b led_blink_set +EXPORT_SYMBOL_GPL vmlinux 0x24ad11db wakeup_sources_read_unlock +EXPORT_SYMBOL_GPL vmlinux 0x24b90d42 scsi_get_vpd_page +EXPORT_SYMBOL_GPL vmlinux 0x24d67a58 get_net_ns_by_pid +EXPORT_SYMBOL_GPL vmlinux 0x24da0093 rcu_inkernel_boot_has_ended +EXPORT_SYMBOL_GPL vmlinux 0x24e6e868 pm_genpd_opp_to_performance_state +EXPORT_SYMBOL_GPL vmlinux 0x24eb7e32 leds_list +EXPORT_SYMBOL_GPL vmlinux 0x24f39c39 reset_control_reset +EXPORT_SYMBOL_GPL vmlinux 0x24f63dcf ata_xfer_mask2mode +EXPORT_SYMBOL_GPL vmlinux 0x24f9a743 gpiochip_get_desc +EXPORT_SYMBOL_GPL vmlinux 0x250b2215 iommu_sva_unbind_device +EXPORT_SYMBOL_GPL vmlinux 0x2518b943 irq_domain_free_fwnode +EXPORT_SYMBOL_GPL vmlinux 0x25219767 dpbp_close +EXPORT_SYMBOL_GPL vmlinux 0x25301bc6 arch_wb_cache_pmem +EXPORT_SYMBOL_GPL vmlinux 0x25322cb8 serdev_controller_alloc +EXPORT_SYMBOL_GPL vmlinux 0x25350b2d i2c_slave_unregister +EXPORT_SYMBOL_GPL vmlinux 0x25379e73 clk_set_min_rate +EXPORT_SYMBOL_GPL vmlinux 0x2539e5b0 wb_writeout_inc +EXPORT_SYMBOL_GPL vmlinux 0x253da6f2 spi_take_timestamp_pre +EXPORT_SYMBOL_GPL vmlinux 0x2555bfa4 clean_acked_data_enable +EXPORT_SYMBOL_GPL vmlinux 0x256a784c disable_kprobe +EXPORT_SYMBOL_GPL vmlinux 0x2574da11 zynqmp_pm_write_pggs +EXPORT_SYMBOL_GPL vmlinux 0x257d75db crypto_shash_finup +EXPORT_SYMBOL_GPL vmlinux 0x25872347 ata_timing_compute +EXPORT_SYMBOL_GPL vmlinux 0x258c343d __mnt_drop_write +EXPORT_SYMBOL_GPL vmlinux 0x2592fc6c console_printk +EXPORT_SYMBOL_GPL vmlinux 0x25adda2a k3_udma_glue_push_rx_chn +EXPORT_SYMBOL_GPL vmlinux 0x25b23fc0 usb_disable_autosuspend +EXPORT_SYMBOL_GPL vmlinux 0x25ba1b3a clk_hw_unregister_fixed_rate +EXPORT_SYMBOL_GPL vmlinux 0x25bc4076 devm_regulator_bulk_register_supply_alias +EXPORT_SYMBOL_GPL vmlinux 0x25c91cab udp4_lib_lookup_skb +EXPORT_SYMBOL_GPL vmlinux 0x25d1412b dm_start_time_ns_from_clone +EXPORT_SYMBOL_GPL vmlinux 0x25d95b1d device_get_match_data +EXPORT_SYMBOL_GPL vmlinux 0x25e6367a dw_pcie_ep_linkup +EXPORT_SYMBOL_GPL vmlinux 0x25ef1ee9 dev_pm_set_wake_irq +EXPORT_SYMBOL_GPL vmlinux 0x25f0bdce clock_cooling_unregister +EXPORT_SYMBOL_GPL vmlinux 0x25f47398 devm_of_pwm_get +EXPORT_SYMBOL_GPL vmlinux 0x26036e23 of_irq_find_parent +EXPORT_SYMBOL_GPL vmlinux 0x2609ea56 dev_pm_opp_add +EXPORT_SYMBOL_GPL vmlinux 0x260e623b pci_scan_child_bus +EXPORT_SYMBOL_GPL vmlinux 0x26192cd2 clear_foreign_p2m_mapping +EXPORT_SYMBOL_GPL vmlinux 0x26212980 xhci_mtk_sch_init +EXPORT_SYMBOL_GPL vmlinux 0x2623963a pci_load_and_free_saved_state +EXPORT_SYMBOL_GPL vmlinux 0x26302138 da9052_disable_irq_nosync +EXPORT_SYMBOL_GPL vmlinux 0x2638e80c device_property_match_string +EXPORT_SYMBOL_GPL vmlinux 0x263b287e iommu_unmap_fast +EXPORT_SYMBOL_GPL vmlinux 0x263f039e xas_nomem +EXPORT_SYMBOL_GPL vmlinux 0x264a1c28 devfreq_event_set_event +EXPORT_SYMBOL_GPL vmlinux 0x26520970 vm_memory_committed +EXPORT_SYMBOL_GPL vmlinux 0x265bbef9 kexec_crash_loaded +EXPORT_SYMBOL_GPL vmlinux 0x26657882 vfs_setlease +EXPORT_SYMBOL_GPL vmlinux 0x2669ddea wm5102_i2c_regmap +EXPORT_SYMBOL_GPL vmlinux 0x266ca9ca devm_led_classdev_register_ext +EXPORT_SYMBOL_GPL vmlinux 0x267df662 smp_call_on_cpu +EXPORT_SYMBOL_GPL vmlinux 0x26884650 device_show_bool +EXPORT_SYMBOL_GPL vmlinux 0x26a01c4c tty_port_register_device_serdev +EXPORT_SYMBOL_GPL vmlinux 0x26a2fc27 cgroup_path_ns +EXPORT_SYMBOL_GPL vmlinux 0x26a9c59c bpf_prog_inc_not_zero +EXPORT_SYMBOL_GPL vmlinux 0x26ab4755 put_old_itimerspec32 +EXPORT_SYMBOL_GPL vmlinux 0x26ab5ac3 __netpoll_setup +EXPORT_SYMBOL_GPL vmlinux 0x26afea8e splice_to_pipe +EXPORT_SYMBOL_GPL vmlinux 0x26b18d12 max8997_update_reg +EXPORT_SYMBOL_GPL vmlinux 0x26b56e5c rio_release_inb_dbell +EXPORT_SYMBOL_GPL vmlinux 0x26c622ee percpu_ref_switch_to_percpu +EXPORT_SYMBOL_GPL vmlinux 0x26c90ea4 scsi_eh_get_sense +EXPORT_SYMBOL_GPL vmlinux 0x26d70303 dma_wait_for_async_tx +EXPORT_SYMBOL_GPL vmlinux 0x26e739eb usb_register_device_driver +EXPORT_SYMBOL_GPL vmlinux 0x26ed2186 register_vmap_purge_notifier +EXPORT_SYMBOL_GPL vmlinux 0x26f9a17f register_pernet_device +EXPORT_SYMBOL_GPL vmlinux 0x27046576 kvm_exit +EXPORT_SYMBOL_GPL vmlinux 0x270dd4eb mmc_send_tuning +EXPORT_SYMBOL_GPL vmlinux 0x271f4e33 usb_get_status +EXPORT_SYMBOL_GPL vmlinux 0x272e9d77 hisi_reset_exit +EXPORT_SYMBOL_GPL vmlinux 0x272edfcb gfn_to_hva +EXPORT_SYMBOL_GPL vmlinux 0x27330d37 cpufreq_unregister_driver +EXPORT_SYMBOL_GPL vmlinux 0x273f1b86 fsl_mc_bus_dpbp_type +EXPORT_SYMBOL_GPL vmlinux 0x274cf5e1 __clk_get_flags +EXPORT_SYMBOL_GPL vmlinux 0x274dd1a3 sg_free_table_chained +EXPORT_SYMBOL_GPL vmlinux 0x27558d59 __devm_regmap_init_i2c +EXPORT_SYMBOL_GPL vmlinux 0x27715e4a enable_kprobe +EXPORT_SYMBOL_GPL vmlinux 0x27732367 of_hwspin_lock_get_id_byname +EXPORT_SYMBOL_GPL vmlinux 0x2773c485 __wake_up_locked +EXPORT_SYMBOL_GPL vmlinux 0x27746977 ata_bmdma_port_start32 +EXPORT_SYMBOL_GPL vmlinux 0x278a4490 extcon_set_state_sync +EXPORT_SYMBOL_GPL vmlinux 0x279d0a7f dw_pcie_find_capability +EXPORT_SYMBOL_GPL vmlinux 0x27a3ed1f bus_find_device +EXPORT_SYMBOL_GPL vmlinux 0x27ac5d54 device_get_dma_attr +EXPORT_SYMBOL_GPL vmlinux 0x27c7ed83 acpi_dev_suspend +EXPORT_SYMBOL_GPL vmlinux 0x27f4f029 ftrace_set_global_filter +EXPORT_SYMBOL_GPL vmlinux 0x27f69da3 pm_runtime_set_memalloc_noio +EXPORT_SYMBOL_GPL vmlinux 0x27fa3115 rio_register_scan +EXPORT_SYMBOL_GPL vmlinux 0x27fa66e1 nr_free_buffer_pages +EXPORT_SYMBOL_GPL vmlinux 0x2809c92c hisi_event_sysfs_show +EXPORT_SYMBOL_GPL vmlinux 0x280ac924 l3mdev_master_ifindex_rcu +EXPORT_SYMBOL_GPL vmlinux 0x2811c2e0 __rio_local_read_config_8 +EXPORT_SYMBOL_GPL vmlinux 0x2817f7fd cppc_get_desired_perf +EXPORT_SYMBOL_GPL vmlinux 0x282cdabc usb_led_activity +EXPORT_SYMBOL_GPL vmlinux 0x284fe794 percpu_ref_exit +EXPORT_SYMBOL_GPL vmlinux 0x28573f08 ata_sff_qc_fill_rtf +EXPORT_SYMBOL_GPL vmlinux 0x285a425e iptunnel_xmit +EXPORT_SYMBOL_GPL vmlinux 0x2864abc9 klist_node_attached +EXPORT_SYMBOL_GPL vmlinux 0x286b7e8a arizona_free_irq +EXPORT_SYMBOL_GPL vmlinux 0x286cc647 async_synchronize_cookie_domain +EXPORT_SYMBOL_GPL vmlinux 0x2882d40e usb_role_switch_unregister +EXPORT_SYMBOL_GPL vmlinux 0x28869a09 acpi_get_pci_dev +EXPORT_SYMBOL_GPL vmlinux 0x289b2712 power_supply_put_battery_info +EXPORT_SYMBOL_GPL vmlinux 0x289fad28 unregister_virtio_device +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 0x28b030d2 of_overlay_notifier_unregister +EXPORT_SYMBOL_GPL vmlinux 0x28b33cac gnttab_alloc_pages +EXPORT_SYMBOL_GPL vmlinux 0x28c48acd phy_led_triggers_unregister +EXPORT_SYMBOL_GPL vmlinux 0x28c77c70 sprd_pinctrl_core_probe +EXPORT_SYMBOL_GPL vmlinux 0x28f14e58 irq_domain_free_irqs_common +EXPORT_SYMBOL_GPL vmlinux 0x28f26684 irq_set_affinity_hint +EXPORT_SYMBOL_GPL vmlinux 0x29039324 ata_pci_bmdma_prepare_host +EXPORT_SYMBOL_GPL vmlinux 0x29252e74 __tracepoint_block_unplug +EXPORT_SYMBOL_GPL vmlinux 0x2925cc8c efivar_entry_add +EXPORT_SYMBOL_GPL vmlinux 0x2933e4d7 sysfs_add_file_to_group +EXPORT_SYMBOL_GPL vmlinux 0x2949560c hisi_uncore_pmu_del +EXPORT_SYMBOL_GPL vmlinux 0x294a168b phy_check_downshift +EXPORT_SYMBOL_GPL vmlinux 0x295b982a hisi_clk_register_fixed_rate +EXPORT_SYMBOL_GPL vmlinux 0x295fa313 register_kretprobes +EXPORT_SYMBOL_GPL vmlinux 0x2966762b ata_link_online +EXPORT_SYMBOL_GPL vmlinux 0x29882094 mtk_pinconf_drive_get_rev1 +EXPORT_SYMBOL_GPL vmlinux 0x2988b20a hwspin_lock_free +EXPORT_SYMBOL_GPL vmlinux 0x298a5f02 sk_psock_tls_strp_read +EXPORT_SYMBOL_GPL vmlinux 0x298a84dd sysfs_remove_file_ns +EXPORT_SYMBOL_GPL vmlinux 0x29984a82 handle_level_irq +EXPORT_SYMBOL_GPL vmlinux 0x29ad8465 n_tty_inherit_ops +EXPORT_SYMBOL_GPL vmlinux 0x29b10e67 iptunnel_metadata_reply +EXPORT_SYMBOL_GPL vmlinux 0x29bc1dd3 led_set_brightness_nosleep +EXPORT_SYMBOL_GPL vmlinux 0x29cd6e54 devlink_port_register +EXPORT_SYMBOL_GPL vmlinux 0x29cd8ab0 rcuwait_wake_up +EXPORT_SYMBOL_GPL vmlinux 0x29cffdc0 dma_buf_pin +EXPORT_SYMBOL_GPL vmlinux 0x29d76547 k3_udma_glue_tdown_rx_chn +EXPORT_SYMBOL_GPL vmlinux 0x29d799d9 of_genpd_remove_last +EXPORT_SYMBOL_GPL vmlinux 0x29df3b4c regulator_get_mode +EXPORT_SYMBOL_GPL vmlinux 0x29e2470e genphy_c45_read_pma +EXPORT_SYMBOL_GPL vmlinux 0x29eba37f current_is_async +EXPORT_SYMBOL_GPL vmlinux 0x29ee1f24 pwm_get +EXPORT_SYMBOL_GPL vmlinux 0x2a0a40fa mdio_bus_init +EXPORT_SYMBOL_GPL vmlinux 0x2a2cb17a __skb_tstamp_tx +EXPORT_SYMBOL_GPL vmlinux 0x2a323558 dev_forward_skb +EXPORT_SYMBOL_GPL vmlinux 0x2a34ae2b crypto_skcipher_decrypt +EXPORT_SYMBOL_GPL vmlinux 0x2a400e02 relay_close +EXPORT_SYMBOL_GPL vmlinux 0x2a62cb3a ring_buffer_overrun_cpu +EXPORT_SYMBOL_GPL vmlinux 0x2a6549fa led_trigger_blink +EXPORT_SYMBOL_GPL vmlinux 0x2a66d54d power_supply_put +EXPORT_SYMBOL_GPL vmlinux 0x2a678a13 __suspend_report_result +EXPORT_SYMBOL_GPL vmlinux 0x2a7e1ded gfn_to_pfn_memslot_atomic +EXPORT_SYMBOL_GPL vmlinux 0x2a85a3c7 devm_ioremap_uc +EXPORT_SYMBOL_GPL vmlinux 0x2a96f56d __skb_get_hash_symmetric +EXPORT_SYMBOL_GPL vmlinux 0x2aadad1a efi_capsule_update +EXPORT_SYMBOL_GPL vmlinux 0x2abe6b6b pm_clk_create +EXPORT_SYMBOL_GPL vmlinux 0x2ac1ee87 devm_hwspin_lock_unregister +EXPORT_SYMBOL_GPL vmlinux 0x2ad9958b usb_disable_lpm +EXPORT_SYMBOL_GPL vmlinux 0x2ae1689e zynqmp_pm_clock_getdivider +EXPORT_SYMBOL_GPL vmlinux 0x2ae90dfe of_phy_get +EXPORT_SYMBOL_GPL vmlinux 0x2b0765ca xen_store_interface +EXPORT_SYMBOL_GPL vmlinux 0x2b0c56ea dma_resv_get_fences_rcu +EXPORT_SYMBOL_GPL vmlinux 0x2b0fe000 gnttab_cancel_free_callback +EXPORT_SYMBOL_GPL vmlinux 0x2b14a55b phy_start_machine +EXPORT_SYMBOL_GPL vmlinux 0x2b1d47d3 of_fwnode_ops +EXPORT_SYMBOL_GPL vmlinux 0x2b260a74 __tracepoint_cpu_idle +EXPORT_SYMBOL_GPL vmlinux 0x2b26849d spi_mem_exec_op +EXPORT_SYMBOL_GPL vmlinux 0x2b4509dd devlink_health_reporter_state_update +EXPORT_SYMBOL_GPL vmlinux 0x2b4a5dd3 iommu_domain_alloc +EXPORT_SYMBOL_GPL vmlinux 0x2b5200f0 ahci_dev_classify +EXPORT_SYMBOL_GPL vmlinux 0x2b6150fb power_supply_temp2resist_simple +EXPORT_SYMBOL_GPL vmlinux 0x2b619f27 ahci_platform_disable_regulators +EXPORT_SYMBOL_GPL vmlinux 0x2b6aa8c6 inet_send_prepare +EXPORT_SYMBOL_GPL vmlinux 0x2b6d960d synth_event_cmd_init +EXPORT_SYMBOL_GPL vmlinux 0x2b80098b tty_ldisc_release +EXPORT_SYMBOL_GPL vmlinux 0x2b81b3da rio_release_inb_mbox +EXPORT_SYMBOL_GPL vmlinux 0x2b952517 clk_has_parent +EXPORT_SYMBOL_GPL vmlinux 0x2b953704 usb_wakeup_enabled_descendants +EXPORT_SYMBOL_GPL vmlinux 0x2b960b66 qman_is_probed +EXPORT_SYMBOL_GPL vmlinux 0x2b9997fb atomic_notifier_chain_register +EXPORT_SYMBOL_GPL vmlinux 0x2b9feb8c scsi_mode_select +EXPORT_SYMBOL_GPL vmlinux 0x2bad55a1 devm_pinctrl_register_and_init +EXPORT_SYMBOL_GPL vmlinux 0x2bbaea2b fwnode_property_read_u8_array +EXPORT_SYMBOL_GPL vmlinux 0x2bda27c2 vga_default_device +EXPORT_SYMBOL_GPL vmlinux 0x2bdd0933 irq_domain_simple_ops +EXPORT_SYMBOL_GPL vmlinux 0x2c099c5a clk_hw_register +EXPORT_SYMBOL_GPL vmlinux 0x2c14aed4 inet_csk_update_pmtu +EXPORT_SYMBOL_GPL vmlinux 0x2c208607 power_supply_is_system_supplied +EXPORT_SYMBOL_GPL vmlinux 0x2c21c8c5 devlink_flash_update_end_notify +EXPORT_SYMBOL_GPL vmlinux 0x2c3054f9 net_inc_ingress_queue +EXPORT_SYMBOL_GPL vmlinux 0x2c47b3a3 acpi_dma_request_slave_chan_by_index +EXPORT_SYMBOL_GPL vmlinux 0x2c48e9fe devm_nvmem_cell_get +EXPORT_SYMBOL_GPL vmlinux 0x2c635527 arch_invalidate_pmem +EXPORT_SYMBOL_GPL vmlinux 0x2c66ac85 devlink_info_serial_number_put +EXPORT_SYMBOL_GPL vmlinux 0x2c78eafd iommu_attach_device +EXPORT_SYMBOL_GPL vmlinux 0x2c7db649 irq_dispose_mapping +EXPORT_SYMBOL_GPL vmlinux 0x2c8dd6b8 edac_mem_types +EXPORT_SYMBOL_GPL vmlinux 0x2c97f8a2 of_reconfig_notifier_register +EXPORT_SYMBOL_GPL vmlinux 0x2c9f89d6 efivar_entry_iter +EXPORT_SYMBOL_GPL vmlinux 0x2ca49fd6 __xenbus_register_frontend +EXPORT_SYMBOL_GPL vmlinux 0x2cc495c5 rpi_firmware_property_list +EXPORT_SYMBOL_GPL vmlinux 0x2cc5196e power_supply_class +EXPORT_SYMBOL_GPL vmlinux 0x2ce4656f fib6_new_table +EXPORT_SYMBOL_GPL vmlinux 0x2cea32ee unregister_oldmem_pfn_is_ram +EXPORT_SYMBOL_GPL vmlinux 0x2cf20673 wakeup_source_remove +EXPORT_SYMBOL_GPL vmlinux 0x2cfe867a virtqueue_is_broken +EXPORT_SYMBOL_GPL vmlinux 0x2d063a26 i2c_dw_acpi_configure +EXPORT_SYMBOL_GPL vmlinux 0x2d06b16d tpm_pm_resume +EXPORT_SYMBOL_GPL vmlinux 0x2d1a4bd4 sysfs_unmerge_group +EXPORT_SYMBOL_GPL vmlinux 0x2d1b02d2 usermodehelper_read_lock_wait +EXPORT_SYMBOL_GPL vmlinux 0x2d26f39f regmap_get_reg_stride +EXPORT_SYMBOL_GPL vmlinux 0x2d290a3f mtk_eint_do_resume +EXPORT_SYMBOL_GPL vmlinux 0x2d2dd36f kobj_ns_grab_current +EXPORT_SYMBOL_GPL vmlinux 0x2d3baeb6 usb_add_phy +EXPORT_SYMBOL_GPL vmlinux 0x2d41e6f5 __trace_puts +EXPORT_SYMBOL_GPL vmlinux 0x2d481241 phy_pm_runtime_get +EXPORT_SYMBOL_GPL vmlinux 0x2d52be7b tpm_chip_register +EXPORT_SYMBOL_GPL vmlinux 0x2d6aa0f0 arch_apei_enable_cmcff +EXPORT_SYMBOL_GPL vmlinux 0x2d6edb84 shmem_truncate_range +EXPORT_SYMBOL_GPL vmlinux 0x2d80243a devfreq_event_disable_edev +EXPORT_SYMBOL_GPL vmlinux 0x2da5f893 rio_enable_rx_tx_port +EXPORT_SYMBOL_GPL vmlinux 0x2daa2177 x509_free_certificate +EXPORT_SYMBOL_GPL vmlinux 0x2db67d4a owl_sps_set_pg +EXPORT_SYMBOL_GPL vmlinux 0x2dbd356a devlink_port_attrs_pci_vf_set +EXPORT_SYMBOL_GPL vmlinux 0x2dc9638c acpi_initialize_hp_context +EXPORT_SYMBOL_GPL vmlinux 0x2dd323a2 of_pci_get_devfn +EXPORT_SYMBOL_GPL vmlinux 0x2dd7ac63 fsl_mc_bus_dpseci_type +EXPORT_SYMBOL_GPL vmlinux 0x2df8bbaa adp5520_write +EXPORT_SYMBOL_GPL vmlinux 0x2dfc9734 netdev_walk_all_lower_dev +EXPORT_SYMBOL_GPL vmlinux 0x2e028ae6 rcutorture_get_gp_data +EXPORT_SYMBOL_GPL vmlinux 0x2e068bd7 crypto_get_default_null_skcipher +EXPORT_SYMBOL_GPL vmlinux 0x2e08226d badrange_add +EXPORT_SYMBOL_GPL vmlinux 0x2e0b0d9e sock_zerocopy_realloc +EXPORT_SYMBOL_GPL vmlinux 0x2e0b84d7 mbox_request_channel_byname +EXPORT_SYMBOL_GPL vmlinux 0x2e2360b1 ftrace_set_global_notrace +EXPORT_SYMBOL_GPL vmlinux 0x2e4d712c pl08x_filter_id +EXPORT_SYMBOL_GPL vmlinux 0x2e678211 xas_find_conflict +EXPORT_SYMBOL_GPL vmlinux 0x2e74eb7c fsl_mc_bus_dpcon_type +EXPORT_SYMBOL_GPL vmlinux 0x2e7cbe52 device_remove_bin_file +EXPORT_SYMBOL_GPL vmlinux 0x2e8232db kernfs_path_from_node +EXPORT_SYMBOL_GPL vmlinux 0x2e94eda0 sdio_f0_writeb +EXPORT_SYMBOL_GPL vmlinux 0x2e989727 driver_for_each_device +EXPORT_SYMBOL_GPL vmlinux 0x2e9fa3d3 rtnl_af_register +EXPORT_SYMBOL_GPL vmlinux 0x2ea00a6b mmc_pwrseq_unregister +EXPORT_SYMBOL_GPL vmlinux 0x2eabf528 gpiochip_generic_free +EXPORT_SYMBOL_GPL vmlinux 0x2eb0a613 event_triggers_post_call +EXPORT_SYMBOL_GPL vmlinux 0x2eb72e33 xfrm_local_error +EXPORT_SYMBOL_GPL vmlinux 0x2ebb19fd execute_in_process_context +EXPORT_SYMBOL_GPL vmlinux 0x2ebe3135 cpu_is_hotpluggable +EXPORT_SYMBOL_GPL vmlinux 0x2ee7c52b btree_visitor +EXPORT_SYMBOL_GPL vmlinux 0x2eec335f __devm_regmap_init +EXPORT_SYMBOL_GPL vmlinux 0x2ef88956 regmap_raw_write_async +EXPORT_SYMBOL_GPL vmlinux 0x2f045e36 __nf_ip6_route +EXPORT_SYMBOL_GPL vmlinux 0x2f0d9053 usb_otg_state_string +EXPORT_SYMBOL_GPL vmlinux 0x2f1ec502 __devm_of_phy_provider_register +EXPORT_SYMBOL_GPL vmlinux 0x2f1f1022 clk_divider_ro_ops +EXPORT_SYMBOL_GPL vmlinux 0x2f212dc2 watchdog_init_timeout +EXPORT_SYMBOL_GPL vmlinux 0x2f26d42d sk_setup_caps +EXPORT_SYMBOL_GPL vmlinux 0x2f270d41 fat_alloc_new_dir +EXPORT_SYMBOL_GPL vmlinux 0x2f2c95c4 flush_work +EXPORT_SYMBOL_GPL vmlinux 0x2f4113a2 dcookie_register +EXPORT_SYMBOL_GPL vmlinux 0x2f4300d7 devm_regmap_add_irq_chip_np +EXPORT_SYMBOL_GPL vmlinux 0x2f4880df static_key_slow_dec +EXPORT_SYMBOL_GPL vmlinux 0x2f559e99 i2c_slave_register +EXPORT_SYMBOL_GPL vmlinux 0x2f5b3b0d srcu_notifier_call_chain +EXPORT_SYMBOL_GPL vmlinux 0x2f64415f unregister_acpi_hed_notifier +EXPORT_SYMBOL_GPL vmlinux 0x2f7b63e1 da903x_unregister_notifier +EXPORT_SYMBOL_GPL vmlinux 0x2f7e53a7 sb800_prefetch +EXPORT_SYMBOL_GPL vmlinux 0x2f846bc7 led_update_brightness +EXPORT_SYMBOL_GPL vmlinux 0x2f85a113 regulator_bulk_disable +EXPORT_SYMBOL_GPL vmlinux 0x2f91bb9f scsi_free_sgtables +EXPORT_SYMBOL_GPL vmlinux 0x2f986eba blk_mq_rdma_map_queues +EXPORT_SYMBOL_GPL vmlinux 0x2f9bf5ac regulator_allow_bypass +EXPORT_SYMBOL_GPL vmlinux 0x2fb72e9b sbitmap_init_node +EXPORT_SYMBOL_GPL vmlinux 0x2fbb852f fsverity_ioctl_enable +EXPORT_SYMBOL_GPL vmlinux 0x2fe9ad07 sdio_set_block_size +EXPORT_SYMBOL_GPL vmlinux 0x2ff59f74 ata_pio_need_iordy +EXPORT_SYMBOL_GPL vmlinux 0x2ffe98b8 meson_vid_pll_div_ro_ops +EXPORT_SYMBOL_GPL vmlinux 0x30009db2 blkdev_zone_mgmt +EXPORT_SYMBOL_GPL vmlinux 0x300a8da0 ata_sff_prereset +EXPORT_SYMBOL_GPL vmlinux 0x30137da3 hrtimer_sleeper_start_expires +EXPORT_SYMBOL_GPL vmlinux 0x3021efc5 ata_sas_async_probe +EXPORT_SYMBOL_GPL vmlinux 0x302fd7d8 pingv6_prot +EXPORT_SYMBOL_GPL vmlinux 0x30351294 k3_udma_glue_rx_flow_get_fdq_id +EXPORT_SYMBOL_GPL vmlinux 0x30450457 regulator_set_voltage +EXPORT_SYMBOL_GPL vmlinux 0x304e05ea of_pwm_xlate_with_flags +EXPORT_SYMBOL_GPL vmlinux 0x304e633d fat_sync_inode +EXPORT_SYMBOL_GPL vmlinux 0x3055a401 ata_sas_port_resume +EXPORT_SYMBOL_GPL vmlinux 0x3061cfce ring_buffer_entries_cpu +EXPORT_SYMBOL_GPL vmlinux 0x306f5576 pkcs7_verify +EXPORT_SYMBOL_GPL vmlinux 0x307d98d6 devm_pci_epc_destroy +EXPORT_SYMBOL_GPL vmlinux 0x3090cb05 bind_interdomain_evtchn_to_irqhandler_lateeoi +EXPORT_SYMBOL_GPL vmlinux 0x30b133bf inet_twsk_alloc +EXPORT_SYMBOL_GPL vmlinux 0x30bd28a1 usb_disable_xhci_ports +EXPORT_SYMBOL_GPL vmlinux 0x30bd8cbf kernel_read_file_from_path +EXPORT_SYMBOL_GPL vmlinux 0x30e1ec25 apei_map_generic_address +EXPORT_SYMBOL_GPL vmlinux 0x30f163a7 crypto_register_scomps +EXPORT_SYMBOL_GPL vmlinux 0x30fd4984 ata_sff_dev_classify +EXPORT_SYMBOL_GPL vmlinux 0x31266931 con_debug_leave +EXPORT_SYMBOL_GPL vmlinux 0x312f68cf of_reconfig_get_state_change +EXPORT_SYMBOL_GPL vmlinux 0x314369d9 dax_layout_busy_page +EXPORT_SYMBOL_GPL vmlinux 0x315a43d4 wm8350_block_write +EXPORT_SYMBOL_GPL vmlinux 0x315a8925 xen_xlate_unmap_gfn_range +EXPORT_SYMBOL_GPL vmlinux 0x315e76f5 __inet_lookup_listener +EXPORT_SYMBOL_GPL vmlinux 0x31785f08 __tracepoint_br_fdb_add +EXPORT_SYMBOL_GPL vmlinux 0x31832cad lp8788_read_byte +EXPORT_SYMBOL_GPL vmlinux 0x31839ad3 software_node_register_nodes +EXPORT_SYMBOL_GPL vmlinux 0x318c15b3 iommu_iova_to_phys +EXPORT_SYMBOL_GPL vmlinux 0x3190c9ea fib_alias_hw_flags_set +EXPORT_SYMBOL_GPL vmlinux 0x31912286 acpi_match_device +EXPORT_SYMBOL_GPL vmlinux 0x3192d768 cpufreq_remove_update_util_hook +EXPORT_SYMBOL_GPL vmlinux 0x319ec846 regcache_sync_region +EXPORT_SYMBOL_GPL vmlinux 0x31a95e8b ring_buffer_record_enable_cpu +EXPORT_SYMBOL_GPL vmlinux 0x31c06576 sdio_register_driver +EXPORT_SYMBOL_GPL vmlinux 0x31c70b56 tcp_is_ulp_esp +EXPORT_SYMBOL_GPL vmlinux 0x31c7970f pciserial_suspend_ports +EXPORT_SYMBOL_GPL vmlinux 0x31c80966 vfs_listxattr +EXPORT_SYMBOL_GPL vmlinux 0x31d0eeab rtc_read_alarm +EXPORT_SYMBOL_GPL vmlinux 0x31d4525b extcon_get_property_capability +EXPORT_SYMBOL_GPL vmlinux 0x31dca4d8 gnttab_claim_grant_reference +EXPORT_SYMBOL_GPL vmlinux 0x31e9e8d5 zynqmp_pm_set_suspend_mode +EXPORT_SYMBOL_GPL vmlinux 0x31f7c728 usb_clear_halt +EXPORT_SYMBOL_GPL vmlinux 0x3224b2a9 mpi_read_raw_from_sgl +EXPORT_SYMBOL_GPL vmlinux 0x32322b57 usb_unlocked_enable_lpm +EXPORT_SYMBOL_GPL vmlinux 0x326b704b psil_set_new_ep_config +EXPORT_SYMBOL_GPL vmlinux 0x326cefe5 hwpoison_filter_dev_minor +EXPORT_SYMBOL_GPL vmlinux 0x327a2687 bind_evtchn_to_irq_lateeoi +EXPORT_SYMBOL_GPL vmlinux 0x327f69e2 devm_nvmem_device_put +EXPORT_SYMBOL_GPL vmlinux 0x3288277e usb_phy_roothub_alloc +EXPORT_SYMBOL_GPL vmlinux 0x328d81bb regulator_get_error_flags +EXPORT_SYMBOL_GPL vmlinux 0x3294501b kvm_write_guest_offset_cached +EXPORT_SYMBOL_GPL vmlinux 0x32a35c78 scsi_dh_set_params +EXPORT_SYMBOL_GPL vmlinux 0x32a7be78 ata_host_detach +EXPORT_SYMBOL_GPL vmlinux 0x32a7cc68 pci_remove_root_bus +EXPORT_SYMBOL_GPL vmlinux 0x32ab06cc irq_percpu_is_enabled +EXPORT_SYMBOL_GPL vmlinux 0x32bc0fcf preempt_notifier_dec +EXPORT_SYMBOL_GPL vmlinux 0x32c2bb04 list_lru_walk_node +EXPORT_SYMBOL_GPL vmlinux 0x32c3cb4e class_compat_register +EXPORT_SYMBOL_GPL vmlinux 0x32c68e35 efivar_entry_delete +EXPORT_SYMBOL_GPL vmlinux 0x32c6c604 __tracepoint_attach_device_to_domain +EXPORT_SYMBOL_GPL vmlinux 0x32e80d09 xfrm_audit_state_notfound_simple +EXPORT_SYMBOL_GPL vmlinux 0x32eae30f spi_mem_default_supports_op +EXPORT_SYMBOL_GPL vmlinux 0x32f6bf9d dev_attr_ncq_prio_enable +EXPORT_SYMBOL_GPL vmlinux 0x32faf0d1 crypto_grab_aead +EXPORT_SYMBOL_GPL vmlinux 0x32fe2f2a wakeup_sources_walk_start +EXPORT_SYMBOL_GPL vmlinux 0x330010b6 cpuset_cgrp_subsys_enabled_key +EXPORT_SYMBOL_GPL vmlinux 0x330be5db phy_pm_runtime_forbid +EXPORT_SYMBOL_GPL vmlinux 0x3343bffa regulator_set_load +EXPORT_SYMBOL_GPL vmlinux 0x3350998b rio_route_add_entry +EXPORT_SYMBOL_GPL vmlinux 0x335c570f enable_percpu_irq +EXPORT_SYMBOL_GPL vmlinux 0x33642120 dev_pm_opp_get_max_volt_latency +EXPORT_SYMBOL_GPL vmlinux 0x33709432 pingv6_ops +EXPORT_SYMBOL_GPL vmlinux 0x33d7c89c pskb_put +EXPORT_SYMBOL_GPL vmlinux 0x33ec3b87 icc_get +EXPORT_SYMBOL_GPL vmlinux 0x33f54dbe fuse_file_poll +EXPORT_SYMBOL_GPL vmlinux 0x3421ca7c __tracepoint_neigh_event_send_dead +EXPORT_SYMBOL_GPL vmlinux 0x34331f04 acpi_os_unmap_memory +EXPORT_SYMBOL_GPL vmlinux 0x343de0d8 mmu_notifier_get_locked +EXPORT_SYMBOL_GPL vmlinux 0x34407691 crypto_has_ahash +EXPORT_SYMBOL_GPL vmlinux 0x345274b7 bio_clone_blkg_association +EXPORT_SYMBOL_GPL vmlinux 0x3468b6eb gov_attr_set_put +EXPORT_SYMBOL_GPL vmlinux 0x346a7da4 bus_unregister_notifier +EXPORT_SYMBOL_GPL vmlinux 0x3473e067 usb_hcd_pci_shutdown +EXPORT_SYMBOL_GPL vmlinux 0x347e8aa7 strp_stop +EXPORT_SYMBOL_GPL vmlinux 0x347ef6e8 clk_hw_get_name +EXPORT_SYMBOL_GPL vmlinux 0x349fa0f0 espintcp_queue_out +EXPORT_SYMBOL_GPL vmlinux 0x34b1ec59 dax_inode +EXPORT_SYMBOL_GPL vmlinux 0x34b5b073 rtc_alarm_irq_enable +EXPORT_SYMBOL_GPL vmlinux 0x34b67c8a cpufreq_freq_transition_begin +EXPORT_SYMBOL_GPL vmlinux 0x34bab869 look_up_OID +EXPORT_SYMBOL_GPL vmlinux 0x34dbafd8 attribute_container_register +EXPORT_SYMBOL_GPL vmlinux 0x34dc8b1a srcu_torture_stats_print +EXPORT_SYMBOL_GPL vmlinux 0x34df2dc7 tracing_snapshot_cond_enable +EXPORT_SYMBOL_GPL vmlinux 0x34eab46d bind_evtchn_to_irqhandler +EXPORT_SYMBOL_GPL vmlinux 0x34ec7d01 ata_sff_data_xfer +EXPORT_SYMBOL_GPL vmlinux 0x34f4c83b lwtunnel_xmit +EXPORT_SYMBOL_GPL vmlinux 0x34fb084d devm_gpiod_put +EXPORT_SYMBOL_GPL vmlinux 0x3504ecbb ohci_restart +EXPORT_SYMBOL_GPL vmlinux 0x350710da tty_port_register_device_attr +EXPORT_SYMBOL_GPL vmlinux 0x350f5942 thermal_add_hwmon_sysfs +EXPORT_SYMBOL_GPL vmlinux 0x352b3813 maxim_charger_calc_reg_current +EXPORT_SYMBOL_GPL vmlinux 0x352ec68b bpf_offload_dev_destroy +EXPORT_SYMBOL_GPL vmlinux 0x352fd6c3 netlink_has_listeners +EXPORT_SYMBOL_GPL vmlinux 0x3530e3c2 xenbus_register_driver_common +EXPORT_SYMBOL_GPL vmlinux 0x3555d24a regulator_get_drvdata +EXPORT_SYMBOL_GPL vmlinux 0x355bc89a klist_next +EXPORT_SYMBOL_GPL vmlinux 0x355e000d ping_hash +EXPORT_SYMBOL_GPL vmlinux 0x3561a5c2 of_property_read_string +EXPORT_SYMBOL_GPL vmlinux 0x3576f47b irq_domain_xlate_onecell +EXPORT_SYMBOL_GPL vmlinux 0x358bbc37 sysfs_create_group +EXPORT_SYMBOL_GPL vmlinux 0x358ff60f twl_get_hfclk_rate +EXPORT_SYMBOL_GPL vmlinux 0x35a10e9a pci_msi_mask_irq +EXPORT_SYMBOL_GPL vmlinux 0x35a4f59d zynqmp_pm_clock_setdivider +EXPORT_SYMBOL_GPL vmlinux 0x35b2cf38 rt_mutex_lock_interruptible +EXPORT_SYMBOL_GPL vmlinux 0x35b2fded mnt_clone_write +EXPORT_SYMBOL_GPL vmlinux 0x35ba39f3 ethnl_cable_test_finished +EXPORT_SYMBOL_GPL vmlinux 0x35bb3a94 tps6586x_writes +EXPORT_SYMBOL_GPL vmlinux 0x35c37e72 kvm_init +EXPORT_SYMBOL_GPL vmlinux 0x35d3dc46 crypto_alg_sem +EXPORT_SYMBOL_GPL vmlinux 0x35d4ed9f spi_mem_dirmap_read +EXPORT_SYMBOL_GPL vmlinux 0x35d7f597 br_ip6_fragment +EXPORT_SYMBOL_GPL vmlinux 0x35dfb66b get_dcookie +EXPORT_SYMBOL_GPL vmlinux 0x35f5f763 debugfs_create_x64 +EXPORT_SYMBOL_GPL vmlinux 0x36075bb5 iommu_group_register_notifier +EXPORT_SYMBOL_GPL vmlinux 0x361ce3c3 spi_controller_resume +EXPORT_SYMBOL_GPL vmlinux 0x36242943 switchdev_deferred_process +EXPORT_SYMBOL_GPL vmlinux 0x36267626 device_get_phy_mode +EXPORT_SYMBOL_GPL vmlinux 0x3640d887 ahci_platform_shutdown +EXPORT_SYMBOL_GPL vmlinux 0x3644890a rio_release_outb_mbox +EXPORT_SYMBOL_GPL vmlinux 0x364be299 bus_get_device_klist +EXPORT_SYMBOL_GPL vmlinux 0x3656992e dm_suspended +EXPORT_SYMBOL_GPL vmlinux 0x367523dd perf_event_pause +EXPORT_SYMBOL_GPL vmlinux 0x36763961 cpuidle_get_driver +EXPORT_SYMBOL_GPL vmlinux 0x368d2848 pci_epc_mem_free_addr +EXPORT_SYMBOL_GPL vmlinux 0x368e70a3 kthread_unpark +EXPORT_SYMBOL_GPL vmlinux 0x3694f657 dev_pm_opp_disable +EXPORT_SYMBOL_GPL vmlinux 0x369f8f33 bgmac_enet_resume +EXPORT_SYMBOL_GPL vmlinux 0x369fcd70 tracing_snapshot +EXPORT_SYMBOL_GPL vmlinux 0x36a68545 of_get_named_gpio_flags +EXPORT_SYMBOL_GPL vmlinux 0x36b2ca48 devlink_dpipe_action_put +EXPORT_SYMBOL_GPL vmlinux 0x36c717dd kobject_rename +EXPORT_SYMBOL_GPL vmlinux 0x36db6fcd rdev_get_id +EXPORT_SYMBOL_GPL vmlinux 0x36e5db4e pci_device_group +EXPORT_SYMBOL_GPL vmlinux 0x36eff6f9 clk_hw_register_fixed_factor +EXPORT_SYMBOL_GPL vmlinux 0x37121e62 balloon_page_dequeue +EXPORT_SYMBOL_GPL vmlinux 0x37169f79 cpu_latency_qos_update_request +EXPORT_SYMBOL_GPL vmlinux 0x37288ed7 devm_regulator_unregister_notifier +EXPORT_SYMBOL_GPL vmlinux 0x372cfd6e gnttab_end_foreign_access +EXPORT_SYMBOL_GPL vmlinux 0x372f1f14 virtqueue_detach_unused_buf +EXPORT_SYMBOL_GPL vmlinux 0x374a1ebf ata_pci_sff_prepare_host +EXPORT_SYMBOL_GPL vmlinux 0x374c53e1 ata_get_cmd_descript +EXPORT_SYMBOL_GPL vmlinux 0x3750d770 erst_read +EXPORT_SYMBOL_GPL vmlinux 0x37591232 nvdimm_clear_poison +EXPORT_SYMBOL_GPL vmlinux 0x375e4573 tpm2_flush_context +EXPORT_SYMBOL_GPL vmlinux 0x3760bab6 strp_check_rcv +EXPORT_SYMBOL_GPL vmlinux 0x376a5235 inet_csk_compat_getsockopt +EXPORT_SYMBOL_GPL vmlinux 0x376e8a17 crypto_skcipher_setkey +EXPORT_SYMBOL_GPL vmlinux 0x377bbcbc pm_suspend_target_state +EXPORT_SYMBOL_GPL vmlinux 0x378adfb7 zynqmp_pm_sd_dll_reset +EXPORT_SYMBOL_GPL vmlinux 0x37914025 xenbus_write +EXPORT_SYMBOL_GPL vmlinux 0x37959486 nvdimm_volatile_region_create +EXPORT_SYMBOL_GPL vmlinux 0x37a2b534 dev_pm_enable_wake_irq +EXPORT_SYMBOL_GPL vmlinux 0x37b410f8 pwm_request +EXPORT_SYMBOL_GPL vmlinux 0x37b4e798 of_detach_node +EXPORT_SYMBOL_GPL vmlinux 0x37bbfda1 nexthop_for_each_fib6_nh +EXPORT_SYMBOL_GPL vmlinux 0x37bc3020 rhltable_init +EXPORT_SYMBOL_GPL vmlinux 0x37bd4e47 sdio_readb +EXPORT_SYMBOL_GPL vmlinux 0x37c4e46b crypto_alloc_skcipher +EXPORT_SYMBOL_GPL vmlinux 0x37d63f87 pinctrl_unregister +EXPORT_SYMBOL_GPL vmlinux 0x37dab6e1 acpi_dev_pm_attach +EXPORT_SYMBOL_GPL vmlinux 0x37e19e79 debugfs_create_file +EXPORT_SYMBOL_GPL vmlinux 0x37ea659f add_memory +EXPORT_SYMBOL_GPL vmlinux 0x37eb9d7f edac_device_del_device +EXPORT_SYMBOL_GPL vmlinux 0x37f29e5a usb_set_configuration +EXPORT_SYMBOL_GPL vmlinux 0x3801776b __ioread32_copy +EXPORT_SYMBOL_GPL vmlinux 0x3801882c pci_hp_deregister +EXPORT_SYMBOL_GPL vmlinux 0x38374815 clear_selection +EXPORT_SYMBOL_GPL vmlinux 0x38386c8a of_usb_get_phy_mode +EXPORT_SYMBOL_GPL vmlinux 0x3859ba91 pci_epc_mem_alloc_addr +EXPORT_SYMBOL_GPL vmlinux 0x3866e217 nvmem_device_write +EXPORT_SYMBOL_GPL vmlinux 0x38996b18 ata_msleep +EXPORT_SYMBOL_GPL vmlinux 0x389b64a2 static_key_count +EXPORT_SYMBOL_GPL vmlinux 0x38a577a7 blk_ksm_destroy +EXPORT_SYMBOL_GPL vmlinux 0x38aa1397 gpiod_add_lookup_table +EXPORT_SYMBOL_GPL vmlinux 0x38afb686 gpiochip_line_is_valid +EXPORT_SYMBOL_GPL vmlinux 0x38c3ff30 freq_qos_add_notifier +EXPORT_SYMBOL_GPL vmlinux 0x38d364b3 tpm_tis_remove +EXPORT_SYMBOL_GPL vmlinux 0x38dfd0fb crypto_hash_walk_first +EXPORT_SYMBOL_GPL vmlinux 0x38e235e5 tpm_put_ops +EXPORT_SYMBOL_GPL vmlinux 0x38e33c04 peernet2id_alloc +EXPORT_SYMBOL_GPL vmlinux 0x38e5bc5a clk_set_rate_range +EXPORT_SYMBOL_GPL vmlinux 0x38e8729d irq_create_mapping_affinity +EXPORT_SYMBOL_GPL vmlinux 0x39061481 of_get_pci_domain_nr +EXPORT_SYMBOL_GPL vmlinux 0x3911f444 regmap_get_raw_write_max +EXPORT_SYMBOL_GPL vmlinux 0x3917b642 spi_new_device +EXPORT_SYMBOL_GPL vmlinux 0x3928f735 gpiod_get_raw_value +EXPORT_SYMBOL_GPL vmlinux 0x392951f2 get_task_pid +EXPORT_SYMBOL_GPL vmlinux 0x39322fd6 pm_generic_poweroff +EXPORT_SYMBOL_GPL vmlinux 0x395ee4d2 skb_segment +EXPORT_SYMBOL_GPL vmlinux 0x395fe315 regulator_bulk_set_supply_names +EXPORT_SYMBOL_GPL vmlinux 0x3963d791 addrconf_prefix_rcv_add_addr +EXPORT_SYMBOL_GPL vmlinux 0x3975b435 sata_port_ops +EXPORT_SYMBOL_GPL vmlinux 0x39781d68 ahci_kick_engine +EXPORT_SYMBOL_GPL vmlinux 0x39857bdb gpiochip_populate_parent_fwspec_twocell +EXPORT_SYMBOL_GPL vmlinux 0x39a7affc driver_deferred_probe_timeout +EXPORT_SYMBOL_GPL vmlinux 0x39b5a449 clk_hw_register_fractional_divider +EXPORT_SYMBOL_GPL vmlinux 0x39ce3384 udp6_lib_lookup +EXPORT_SYMBOL_GPL vmlinux 0x39d98aa0 crypto_register_templates +EXPORT_SYMBOL_GPL vmlinux 0x39ded098 rdma_cgrp_subsys_enabled_key +EXPORT_SYMBOL_GPL vmlinux 0x39e61495 nf_logger_request_module +EXPORT_SYMBOL_GPL vmlinux 0x39fd83db halt_poll_ns_shrink +EXPORT_SYMBOL_GPL vmlinux 0x3a00ef42 usb_driver_claim_interface +EXPORT_SYMBOL_GPL vmlinux 0x3a093494 dev_nit_active +EXPORT_SYMBOL_GPL vmlinux 0x3a147d5a set_selection_kernel +EXPORT_SYMBOL_GPL vmlinux 0x3a14b2fb acpi_device_fix_up_power +EXPORT_SYMBOL_GPL vmlinux 0x3a1a9cf5 gpiod_set_raw_array_value_cansleep +EXPORT_SYMBOL_GPL vmlinux 0x3a2e1b39 dm_report_zones_cb +EXPORT_SYMBOL_GPL vmlinux 0x3a340c6b clk_register_fixed_rate +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 0x3a687fb7 amba_ahb_device_add +EXPORT_SYMBOL_GPL vmlinux 0x3a805f1c __ata_change_queue_depth +EXPORT_SYMBOL_GPL vmlinux 0x3a84bbe6 __devm_alloc_percpu +EXPORT_SYMBOL_GPL vmlinux 0x3a90064e xenbus_dev_fatal +EXPORT_SYMBOL_GPL vmlinux 0x3a9be019 asymmetric_key_id_partial +EXPORT_SYMBOL_GPL vmlinux 0x3ab89d84 iomap_page_mkwrite +EXPORT_SYMBOL_GPL vmlinux 0x3acdf325 twl4030_audio_enable_resource +EXPORT_SYMBOL_GPL vmlinux 0x3acfcbd5 da9052_free_irq +EXPORT_SYMBOL_GPL vmlinux 0x3ad5ee22 __ip6_local_out +EXPORT_SYMBOL_GPL vmlinux 0x3ae37974 simple_attr_write +EXPORT_SYMBOL_GPL vmlinux 0x3ae51ff1 platform_device_add_data +EXPORT_SYMBOL_GPL vmlinux 0x3aea56a1 ata_sff_port_ops +EXPORT_SYMBOL_GPL vmlinux 0x3aed5594 mtk_pinconf_drive_set_rev1 +EXPORT_SYMBOL_GPL vmlinux 0x3af5017a acpi_create_platform_device +EXPORT_SYMBOL_GPL vmlinux 0x3aff4f5f edac_device_handle_ue_count +EXPORT_SYMBOL_GPL vmlinux 0x3b02ffb9 cpufreq_table_index_unsorted +EXPORT_SYMBOL_GPL vmlinux 0x3b0ef036 of_device_modalias +EXPORT_SYMBOL_GPL vmlinux 0x3b135ea5 dprc_get_obj_region +EXPORT_SYMBOL_GPL vmlinux 0x3b1d5658 irq_gc_ack_set_bit +EXPORT_SYMBOL_GPL vmlinux 0x3b35101e relay_file_operations +EXPORT_SYMBOL_GPL vmlinux 0x3b46b8a2 inet_ctl_sock_create +EXPORT_SYMBOL_GPL vmlinux 0x3b499be2 mtk_pinconf_adv_drive_get +EXPORT_SYMBOL_GPL vmlinux 0x3b4c240a display_timings_release +EXPORT_SYMBOL_GPL vmlinux 0x3b4e0ae2 led_trigger_read +EXPORT_SYMBOL_GPL vmlinux 0x3b4e932b genphy_c45_read_link +EXPORT_SYMBOL_GPL vmlinux 0x3b5c62ae ata_sff_lost_interrupt +EXPORT_SYMBOL_GPL vmlinux 0x3b5d7f06 ip6_sk_update_pmtu +EXPORT_SYMBOL_GPL vmlinux 0x3b605a25 fat_add_entries +EXPORT_SYMBOL_GPL vmlinux 0x3b69ee8b ata_bmdma_qc_issue +EXPORT_SYMBOL_GPL vmlinux 0x3b78bf02 sunxi_ccu_get_mmc_timing_mode +EXPORT_SYMBOL_GPL vmlinux 0x3b83591d ohci_suspend +EXPORT_SYMBOL_GPL vmlinux 0x3b8979ea gnttab_grant_foreign_transfer_ref +EXPORT_SYMBOL_GPL vmlinux 0x3b8dbc5b virtio_max_dma_size +EXPORT_SYMBOL_GPL vmlinux 0x3ba01b47 get_compat_sigset +EXPORT_SYMBOL_GPL vmlinux 0x3babe3ac trace_array_printk +EXPORT_SYMBOL_GPL vmlinux 0x3baf25c3 sysfs_remove_link +EXPORT_SYMBOL_GPL vmlinux 0x3bb8c273 __strp_unpause +EXPORT_SYMBOL_GPL vmlinux 0x3bc46293 irq_create_of_mapping +EXPORT_SYMBOL_GPL vmlinux 0x3bc7c6a1 dev_pm_opp_of_find_icc_paths +EXPORT_SYMBOL_GPL vmlinux 0x3bc930c0 regulator_get_hardware_vsel_register +EXPORT_SYMBOL_GPL vmlinux 0x3bd42a24 check_move_unevictable_pages +EXPORT_SYMBOL_GPL vmlinux 0x3bdb5d28 alg_test +EXPORT_SYMBOL_GPL vmlinux 0x3be26080 tty_ldisc_ref +EXPORT_SYMBOL_GPL vmlinux 0x3bf17755 mpi_read_buffer +EXPORT_SYMBOL_GPL vmlinux 0x3bf8feae regmap_bulk_read +EXPORT_SYMBOL_GPL vmlinux 0x3bfb5416 serial8250_do_get_mctrl +EXPORT_SYMBOL_GPL vmlinux 0x3bfc6b43 gpiod_set_array_value_cansleep +EXPORT_SYMBOL_GPL vmlinux 0x3c026bc1 devm_regulator_put +EXPORT_SYMBOL_GPL vmlinux 0x3c11c2d3 ata_sas_sync_probe +EXPORT_SYMBOL_GPL vmlinux 0x3c164276 pinctrl_generic_get_group_count +EXPORT_SYMBOL_GPL vmlinux 0x3c1a8f59 kernfs_put +EXPORT_SYMBOL_GPL vmlinux 0x3c1c3725 rcu_fwd_progress_check +EXPORT_SYMBOL_GPL vmlinux 0x3c1cfe32 icc_set_bw +EXPORT_SYMBOL_GPL vmlinux 0x3c20fb7f nf_hook_entries_insert_raw +EXPORT_SYMBOL_GPL vmlinux 0x3c212744 sbitmap_del_wait_queue +EXPORT_SYMBOL_GPL vmlinux 0x3c2b68f7 of_changeset_apply +EXPORT_SYMBOL_GPL vmlinux 0x3c2bd626 regulator_bulk_free +EXPORT_SYMBOL_GPL vmlinux 0x3c439b20 pwm_capture +EXPORT_SYMBOL_GPL vmlinux 0x3c4d0dbf pci_disable_pcie_error_reporting +EXPORT_SYMBOL_GPL vmlinux 0x3c56d786 gpiochip_remove +EXPORT_SYMBOL_GPL vmlinux 0x3c5c1aac serial8250_do_set_ldisc +EXPORT_SYMBOL_GPL vmlinux 0x3c5c5bae regulator_is_enabled_regmap +EXPORT_SYMBOL_GPL vmlinux 0x3c681dc4 ring_buffer_record_disable +EXPORT_SYMBOL_GPL vmlinux 0x3c79ac4d of_reset_control_array_get +EXPORT_SYMBOL_GPL vmlinux 0x3c8df542 fscrypt_set_test_dummy_encryption +EXPORT_SYMBOL_GPL vmlinux 0x3c9d571b of_changeset_action +EXPORT_SYMBOL_GPL vmlinux 0x3ca426f7 gpiochip_set_nested_irqchip +EXPORT_SYMBOL_GPL vmlinux 0x3cc95859 l3mdev_update_flow +EXPORT_SYMBOL_GPL vmlinux 0x3ccd8b46 zynqmp_pm_clock_getparent +EXPORT_SYMBOL_GPL vmlinux 0x3cd06035 add_input_randomness +EXPORT_SYMBOL_GPL vmlinux 0x3ce25e4d tcp_register_ulp +EXPORT_SYMBOL_GPL vmlinux 0x3ce77caf register_kprobe +EXPORT_SYMBOL_GPL vmlinux 0x3ce9a842 spi_mem_get_name +EXPORT_SYMBOL_GPL vmlinux 0x3cf3711b strp_process +EXPORT_SYMBOL_GPL vmlinux 0x3cf47e1d ata_sff_wait_after_reset +EXPORT_SYMBOL_GPL vmlinux 0x3d04d8e4 dev_pm_opp_get_sharing_cpus +EXPORT_SYMBOL_GPL vmlinux 0x3d2ade2a balloon_page_enqueue +EXPORT_SYMBOL_GPL vmlinux 0x3d2c2071 dma_buf_unmap_attachment +EXPORT_SYMBOL_GPL vmlinux 0x3d388324 dpm_resume_end +EXPORT_SYMBOL_GPL vmlinux 0x3d510a7b rcu_jiffies_till_stall_check +EXPORT_SYMBOL_GPL vmlinux 0x3d76ef6a yield_to +EXPORT_SYMBOL_GPL vmlinux 0x3d7a82aa devm_clk_bulk_get_all +EXPORT_SYMBOL_GPL vmlinux 0x3d8831f8 of_pci_dma_range_parser_init +EXPORT_SYMBOL_GPL vmlinux 0x3d8baf3b zs_huge_class_size +EXPORT_SYMBOL_GPL vmlinux 0x3d9e3f41 crypto_rng_reset +EXPORT_SYMBOL_GPL vmlinux 0x3da37171 pinctrl_utils_add_map_configs +EXPORT_SYMBOL_GPL vmlinux 0x3da67e3b input_ff_event +EXPORT_SYMBOL_GPL vmlinux 0x3daa6ef6 regmap_exit +EXPORT_SYMBOL_GPL vmlinux 0x3dc526a9 arizona_of_match +EXPORT_SYMBOL_GPL vmlinux 0x3dd077da debugfs_create_bool +EXPORT_SYMBOL_GPL vmlinux 0x3ddaab44 fuse_direct_io +EXPORT_SYMBOL_GPL vmlinux 0x3ddce108 rtnl_link_register +EXPORT_SYMBOL_GPL vmlinux 0x3de9cae1 crypto_remove_final +EXPORT_SYMBOL_GPL vmlinux 0x3df70c99 trace_clock_global +EXPORT_SYMBOL_GPL vmlinux 0x3e08fcc8 iomap_readahead +EXPORT_SYMBOL_GPL vmlinux 0x3e0d5ae8 crypto_default_rng +EXPORT_SYMBOL_GPL vmlinux 0x3e20efc0 acpi_bind_one +EXPORT_SYMBOL_GPL vmlinux 0x3e334950 cpufreq_policy_transition_delay_us +EXPORT_SYMBOL_GPL vmlinux 0x3e3e159a devfreq_get_devfreq_by_phandle +EXPORT_SYMBOL_GPL vmlinux 0x3e3e4df2 pwm_get_chip_data +EXPORT_SYMBOL_GPL vmlinux 0x3e557f2c ti_sci_get_by_phandle +EXPORT_SYMBOL_GPL vmlinux 0x3e59f260 devlink_dpipe_table_counter_enabled +EXPORT_SYMBOL_GPL vmlinux 0x3e605145 ti_sci_release_resource +EXPORT_SYMBOL_GPL vmlinux 0x3e6ecd92 sata_async_notification +EXPORT_SYMBOL_GPL vmlinux 0x3e7080cb mpi_read_from_buffer +EXPORT_SYMBOL_GPL vmlinux 0x3e76e64b usb_free_urb +EXPORT_SYMBOL_GPL vmlinux 0x3e871e4e fat_search_long +EXPORT_SYMBOL_GPL vmlinux 0x3e9efb10 ping_err +EXPORT_SYMBOL_GPL vmlinux 0x3ea5196d apei_osc_setup +EXPORT_SYMBOL_GPL vmlinux 0x3eac151e iomap_truncate_page +EXPORT_SYMBOL_GPL vmlinux 0x3eaf0b5b ima_file_hash +EXPORT_SYMBOL_GPL vmlinux 0x3ec4fc27 hisi_uncore_pmu_online_cpu +EXPORT_SYMBOL_GPL vmlinux 0x3ed68d38 save_stack_trace_tsk +EXPORT_SYMBOL_GPL vmlinux 0x3ef051c8 crypto_inc +EXPORT_SYMBOL_GPL vmlinux 0x3efd1889 dax_direct_access +EXPORT_SYMBOL_GPL vmlinux 0x3f116dc0 kthread_func +EXPORT_SYMBOL_GPL vmlinux 0x3f1d8213 sysfs_remove_mount_point +EXPORT_SYMBOL_GPL vmlinux 0x3f2196f8 acpi_dev_resource_address_space +EXPORT_SYMBOL_GPL vmlinux 0x3f26f92a perf_aux_output_flag +EXPORT_SYMBOL_GPL vmlinux 0x3f3619f8 ping_close +EXPORT_SYMBOL_GPL vmlinux 0x3f4632cd phy_10gbit_features +EXPORT_SYMBOL_GPL vmlinux 0x3f525db0 skb_complete_tx_timestamp +EXPORT_SYMBOL_GPL vmlinux 0x3f5db9f9 __udp_gso_segment +EXPORT_SYMBOL_GPL vmlinux 0x3f6abfc3 __clk_mux_determine_rate_closest +EXPORT_SYMBOL_GPL vmlinux 0x3f753f94 scsi_host_unblock +EXPORT_SYMBOL_GPL vmlinux 0x3f7b4317 vfs_cancel_lock +EXPORT_SYMBOL_GPL vmlinux 0x3f805dd9 serial8250_request_dma +EXPORT_SYMBOL_GPL vmlinux 0x3f81cb91 pm_genpd_add_device +EXPORT_SYMBOL_GPL vmlinux 0x3f84bcd7 dax_alive +EXPORT_SYMBOL_GPL vmlinux 0x3f8ab72e devlink_fmsg_bool_put +EXPORT_SYMBOL_GPL vmlinux 0x3f941463 sk_msg_memcopy_from_iter +EXPORT_SYMBOL_GPL vmlinux 0x3fac4f47 regulator_set_voltage_sel_pickable_regmap +EXPORT_SYMBOL_GPL vmlinux 0x3fad5cfc blkcg_policy_register +EXPORT_SYMBOL_GPL vmlinux 0x3fbc1c76 uart_set_options +EXPORT_SYMBOL_GPL vmlinux 0x3fca81f0 tpm_chip_start +EXPORT_SYMBOL_GPL vmlinux 0x3fdb9b33 irq_set_chained_handler_and_data +EXPORT_SYMBOL_GPL vmlinux 0x3fe35aea irq_bypass_unregister_consumer +EXPORT_SYMBOL_GPL vmlinux 0x3fe62346 devm_phy_destroy +EXPORT_SYMBOL_GPL vmlinux 0x3fe6c346 devlink_fmsg_binary_pair_put +EXPORT_SYMBOL_GPL vmlinux 0x3fe7a383 pcie_port_bus_type +EXPORT_SYMBOL_GPL vmlinux 0x3fea029c hisi_clk_register_gate +EXPORT_SYMBOL_GPL vmlinux 0x3febfc6b tty_port_install +EXPORT_SYMBOL_GPL vmlinux 0x3ff0c203 cm_notify_event +EXPORT_SYMBOL_GPL vmlinux 0x3ffdacf3 timerqueue_iterate_next +EXPORT_SYMBOL_GPL vmlinux 0x3fff9acf serdev_device_get_tiocm +EXPORT_SYMBOL_GPL vmlinux 0x400a024b acpi_scan_lock_release +EXPORT_SYMBOL_GPL vmlinux 0x400c0424 gpiochip_request_own_desc +EXPORT_SYMBOL_GPL vmlinux 0x400cca0c regulator_notifier_call_chain +EXPORT_SYMBOL_GPL vmlinux 0x40118c7a perf_event_period +EXPORT_SYMBOL_GPL vmlinux 0x4020c0e9 dm_set_target_max_io_len +EXPORT_SYMBOL_GPL vmlinux 0x40267068 usb_anchor_resume_wakeups +EXPORT_SYMBOL_GPL vmlinux 0x4029cd35 led_classdev_resume +EXPORT_SYMBOL_GPL vmlinux 0x403f9529 gpio_request_one +EXPORT_SYMBOL_GPL vmlinux 0x404d8380 __page_file_mapping +EXPORT_SYMBOL_GPL vmlinux 0x40538082 dev_coredumpv +EXPORT_SYMBOL_GPL vmlinux 0x4060de62 led_trigger_rename_static +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 0x407518d9 pci_generic_config_write +EXPORT_SYMBOL_GPL vmlinux 0x407af304 usb_wait_anchor_empty_timeout +EXPORT_SYMBOL_GPL vmlinux 0x4088d4d2 devm_namespace_disable +EXPORT_SYMBOL_GPL vmlinux 0x4099be77 mbox_controller_unregister +EXPORT_SYMBOL_GPL vmlinux 0x4099f919 tun_ptr_free +EXPORT_SYMBOL_GPL vmlinux 0x409a9e75 rtnl_put_cacheinfo +EXPORT_SYMBOL_GPL vmlinux 0x40ad9838 bpf_redirect_info +EXPORT_SYMBOL_GPL vmlinux 0x40b43bd0 sbitmap_add_wait_queue +EXPORT_SYMBOL_GPL vmlinux 0x40cce411 rio_lock_device +EXPORT_SYMBOL_GPL vmlinux 0x40d86b5a kvm_vcpu_gfn_to_pfn +EXPORT_SYMBOL_GPL vmlinux 0x40e11c86 usb_role_switch_get +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 0x41109acf dma_buf_move_notify +EXPORT_SYMBOL_GPL vmlinux 0x4110cb0b of_msi_configure +EXPORT_SYMBOL_GPL vmlinux 0x411aa45c bpf_map_inc +EXPORT_SYMBOL_GPL vmlinux 0x41237f71 cpu_have_feature +EXPORT_SYMBOL_GPL vmlinux 0x412bc681 ring_buffer_empty_cpu +EXPORT_SYMBOL_GPL vmlinux 0x41357eae synth_event_trace +EXPORT_SYMBOL_GPL vmlinux 0x413a31d1 mtk_pinconf_drive_get_raw +EXPORT_SYMBOL_GPL vmlinux 0x41472f08 battery_hook_unregister +EXPORT_SYMBOL_GPL vmlinux 0x414b088b meson_clk_mpll_ro_ops +EXPORT_SYMBOL_GPL vmlinux 0x414d119a videomode_from_timings +EXPORT_SYMBOL_GPL vmlinux 0x4156ab88 dm_get_table_device +EXPORT_SYMBOL_GPL vmlinux 0x416c4d60 ahci_do_softreset +EXPORT_SYMBOL_GPL vmlinux 0x41814cb8 dirty_writeback_interval +EXPORT_SYMBOL_GPL vmlinux 0x418873cc irq_bypass_register_producer +EXPORT_SYMBOL_GPL vmlinux 0x419e7efd sfp_module_stop +EXPORT_SYMBOL_GPL vmlinux 0x41aa6a81 __clocksource_register_scale +EXPORT_SYMBOL_GPL vmlinux 0x41aca12f __platform_driver_register +EXPORT_SYMBOL_GPL vmlinux 0x41b200f9 percpu_ref_init +EXPORT_SYMBOL_GPL vmlinux 0x41b8f2a9 devm_regmap_del_irq_chip +EXPORT_SYMBOL_GPL vmlinux 0x41cd6f7d nvm_set_chunk_meta +EXPORT_SYMBOL_GPL vmlinux 0x41e17b8a __spi_alloc_controller +EXPORT_SYMBOL_GPL vmlinux 0x41ed3cec eventfd_ctx_remove_wait_queue +EXPORT_SYMBOL_GPL vmlinux 0x41eda85f subsys_dev_iter_init +EXPORT_SYMBOL_GPL vmlinux 0x42041512 i2c_get_dma_safe_msg_buf +EXPORT_SYMBOL_GPL vmlinux 0x420f3d01 nvmem_unregister_notifier +EXPORT_SYMBOL_GPL vmlinux 0x42214614 __ftrace_vbprintk +EXPORT_SYMBOL_GPL vmlinux 0x42230915 sbitmap_any_bit_set +EXPORT_SYMBOL_GPL vmlinux 0x42324b3c devm_init_badblocks +EXPORT_SYMBOL_GPL vmlinux 0x423c23ea sata_std_hardreset +EXPORT_SYMBOL_GPL vmlinux 0x42568ee0 screen_glyph +EXPORT_SYMBOL_GPL vmlinux 0x425b4f3f __rio_local_write_config_32 +EXPORT_SYMBOL_GPL vmlinux 0x42635d55 pm_suspend_global_flags +EXPORT_SYMBOL_GPL vmlinux 0x42641053 __hwspin_trylock +EXPORT_SYMBOL_GPL vmlinux 0x426c47de sfp_register_socket +EXPORT_SYMBOL_GPL vmlinux 0x427a3a3e clk_mux_val_to_index +EXPORT_SYMBOL_GPL vmlinux 0x42825ce2 rcu_scheduler_active +EXPORT_SYMBOL_GPL vmlinux 0x428839d4 regulator_map_voltage_linear_range +EXPORT_SYMBOL_GPL vmlinux 0x428b5401 powercap_unregister_zone +EXPORT_SYMBOL_GPL vmlinux 0x42ace545 skb_mpls_pop +EXPORT_SYMBOL_GPL vmlinux 0x42b9ffd7 cpuidle_unregister_driver +EXPORT_SYMBOL_GPL vmlinux 0x42d3bc17 regulator_suspend_enable +EXPORT_SYMBOL_GPL vmlinux 0x42e9d0da ring_buffer_unlock_commit +EXPORT_SYMBOL_GPL vmlinux 0x42f728aa mctrl_gpio_get_outputs +EXPORT_SYMBOL_GPL vmlinux 0x42fba1c7 __sbitmap_queue_get_shallow +EXPORT_SYMBOL_GPL vmlinux 0x43000db6 vmf_insert_pfn_pmd_prot +EXPORT_SYMBOL_GPL vmlinux 0x4325475f usb_hub_release_port +EXPORT_SYMBOL_GPL vmlinux 0x4328b85f regmap_reinit_cache +EXPORT_SYMBOL_GPL vmlinux 0x43346c06 hisi_clk_register_phase +EXPORT_SYMBOL_GPL vmlinux 0x433ae21c user_preparse +EXPORT_SYMBOL_GPL vmlinux 0x43439bbd ata_host_put +EXPORT_SYMBOL_GPL vmlinux 0x434b14c7 gpiochip_line_is_irq +EXPORT_SYMBOL_GPL vmlinux 0x435b6d66 gpiod_set_debounce +EXPORT_SYMBOL_GPL vmlinux 0x435f37f9 gpiochip_irq_map +EXPORT_SYMBOL_GPL vmlinux 0x437eb1df ipv6_mod_enabled +EXPORT_SYMBOL_GPL vmlinux 0x438808ef xhci_mtk_drop_ep_quirk +EXPORT_SYMBOL_GPL vmlinux 0x4389b731 md_stop_writes +EXPORT_SYMBOL_GPL vmlinux 0x438d8df2 iova_cache_get +EXPORT_SYMBOL_GPL vmlinux 0x4393d13f get_governor_parent_kobj +EXPORT_SYMBOL_GPL vmlinux 0x43aa319e lease_register_notifier +EXPORT_SYMBOL_GPL vmlinux 0x43b247f0 i2c_new_ancillary_device +EXPORT_SYMBOL_GPL vmlinux 0x43b5aded inet_unhash +EXPORT_SYMBOL_GPL vmlinux 0x43b89bb2 icc_node_create +EXPORT_SYMBOL_GPL vmlinux 0x43c11428 crypto_register_ahashes +EXPORT_SYMBOL_GPL vmlinux 0x43c2a786 __cpu_clear_user_page +EXPORT_SYMBOL_GPL vmlinux 0x43de4f24 smp_call_function_single_async +EXPORT_SYMBOL_GPL vmlinux 0x43f56e82 ata_xfer_mode2shift +EXPORT_SYMBOL_GPL vmlinux 0x43f81957 clk_round_rate +EXPORT_SYMBOL_GPL vmlinux 0x43fac6d1 dbs_update +EXPORT_SYMBOL_GPL vmlinux 0x440330b9 perf_aux_output_skip +EXPORT_SYMBOL_GPL vmlinux 0x44043c58 usb_wakeup_notification +EXPORT_SYMBOL_GPL vmlinux 0x44126e1d tty_port_register_device +EXPORT_SYMBOL_GPL vmlinux 0x4420d292 __netif_set_xps_queue +EXPORT_SYMBOL_GPL vmlinux 0x442d89c5 phy_10gbit_fec_features +EXPORT_SYMBOL_GPL vmlinux 0x442df9b1 devres_alloc_node +EXPORT_SYMBOL_GPL vmlinux 0x44434748 virtqueue_add_inbuf +EXPORT_SYMBOL_GPL vmlinux 0x44464308 rpi_firmware_init_vl805 +EXPORT_SYMBOL_GPL vmlinux 0x444f1735 cpu_pm_register_notifier +EXPORT_SYMBOL_GPL vmlinux 0x445a09c0 nvmem_device_cell_write +EXPORT_SYMBOL_GPL vmlinux 0x446318d5 fat_scan +EXPORT_SYMBOL_GPL vmlinux 0x446685cd skb_morph +EXPORT_SYMBOL_GPL vmlinux 0x4484a5a4 wait_for_device_probe +EXPORT_SYMBOL_GPL vmlinux 0x44876ab2 lwtunnel_build_state +EXPORT_SYMBOL_GPL vmlinux 0x449f6983 iomap_fiemap +EXPORT_SYMBOL_GPL vmlinux 0x44a793ab HYPERVISOR_grant_table_op +EXPORT_SYMBOL_GPL vmlinux 0x44b4faa6 rio_release_dma +EXPORT_SYMBOL_GPL vmlinux 0x44b810dd of_address_to_resource +EXPORT_SYMBOL_GPL vmlinux 0x44bae227 bit_wait_timeout +EXPORT_SYMBOL_GPL vmlinux 0x44c3f2c1 gpiod_set_value_cansleep +EXPORT_SYMBOL_GPL vmlinux 0x44cb98ae spi_replace_transfers +EXPORT_SYMBOL_GPL vmlinux 0x44cc3307 bsg_remove_queue +EXPORT_SYMBOL_GPL vmlinux 0x44cf8cf0 blk_zone_cond_str +EXPORT_SYMBOL_GPL vmlinux 0x44e1e9aa balloon_stats +EXPORT_SYMBOL_GPL vmlinux 0x44e7c6e2 fat_truncate_time +EXPORT_SYMBOL_GPL vmlinux 0x44ee1cb6 clk_register_fixed_factor +EXPORT_SYMBOL_GPL vmlinux 0x44ee5463 crypto_unregister_shash +EXPORT_SYMBOL_GPL vmlinux 0x44fa6b45 i2c_new_smbus_alert_device +EXPORT_SYMBOL_GPL vmlinux 0x44fa9131 of_get_display_timing +EXPORT_SYMBOL_GPL vmlinux 0x44fee405 badblocks_store +EXPORT_SYMBOL_GPL vmlinux 0x4507f4a8 cpuhp_tasks_frozen +EXPORT_SYMBOL_GPL vmlinux 0x4515065b fwnode_graph_get_next_endpoint +EXPORT_SYMBOL_GPL vmlinux 0x4527962b ahci_sdev_attrs +EXPORT_SYMBOL_GPL vmlinux 0x4528b440 usb_get_descriptor +EXPORT_SYMBOL_GPL vmlinux 0x452a962d thermal_zone_device_unregister +EXPORT_SYMBOL_GPL vmlinux 0x4531624f usb_decode_ctrl +EXPORT_SYMBOL_GPL vmlinux 0x4531ab62 copy_from_kernel_nofault +EXPORT_SYMBOL_GPL vmlinux 0x45395b8d ata_acpi_stm +EXPORT_SYMBOL_GPL vmlinux 0x454b9e7f perf_event_refresh +EXPORT_SYMBOL_GPL vmlinux 0x454e629a fsl_mc_resource_free +EXPORT_SYMBOL_GPL vmlinux 0x4554ced1 usb_phy_set_charger_current +EXPORT_SYMBOL_GPL vmlinux 0x45558f56 clk_unregister_fixed_factor +EXPORT_SYMBOL_GPL vmlinux 0x455d9b0c thermal_zone_bind_cooling_device +EXPORT_SYMBOL_GPL vmlinux 0x4561f990 qcom_smem_state_unregister +EXPORT_SYMBOL_GPL vmlinux 0x4565f53e __spi_register_driver +EXPORT_SYMBOL_GPL vmlinux 0x457594fa crypto_alg_list +EXPORT_SYMBOL_GPL vmlinux 0x457963d0 phy_validate +EXPORT_SYMBOL_GPL vmlinux 0x45816444 devlink_resource_register +EXPORT_SYMBOL_GPL vmlinux 0x458ff218 seg6_do_srh_inline +EXPORT_SYMBOL_GPL vmlinux 0x459a7763 pinctrl_get +EXPORT_SYMBOL_GPL vmlinux 0x45b72ea5 gnttab_pages_set_private +EXPORT_SYMBOL_GPL vmlinux 0x45c186d3 pci_enable_sriov +EXPORT_SYMBOL_GPL vmlinux 0x45c33c3e pci_epf_create +EXPORT_SYMBOL_GPL vmlinux 0x45c9de1b crypto_shash_setkey +EXPORT_SYMBOL_GPL vmlinux 0x45cfb6cf ata_bmdma_irq_clear +EXPORT_SYMBOL_GPL vmlinux 0x45d825ca irq_chip_get_parent_state +EXPORT_SYMBOL_GPL vmlinux 0x45e92f9c acpi_dev_add_driver_gpios +EXPORT_SYMBOL_GPL vmlinux 0x46013233 net_dec_ingress_queue +EXPORT_SYMBOL_GPL vmlinux 0x46066e5b perf_pmu_name +EXPORT_SYMBOL_GPL vmlinux 0x4608e6c2 trace_event_ignore_this_pid +EXPORT_SYMBOL_GPL vmlinux 0x46240a89 sk_msg_clone +EXPORT_SYMBOL_GPL vmlinux 0x462e3b9c spi_bus_unlock +EXPORT_SYMBOL_GPL vmlinux 0x4631c219 fwnode_property_match_string +EXPORT_SYMBOL_GPL vmlinux 0x46323377 dev_pm_domain_start +EXPORT_SYMBOL_GPL vmlinux 0x464287de pcc_mbox_request_channel +EXPORT_SYMBOL_GPL vmlinux 0x4642d3ca fwnode_handle_get +EXPORT_SYMBOL_GPL vmlinux 0x466093fb init_iova_flush_queue +EXPORT_SYMBOL_GPL vmlinux 0x4667a170 devm_hwspin_lock_request +EXPORT_SYMBOL_GPL vmlinux 0x4688d7ec pvclock_gtod_unregister_notifier +EXPORT_SYMBOL_GPL vmlinux 0x468f80b8 blk_mq_queue_inflight +EXPORT_SYMBOL_GPL vmlinux 0x46a29a29 genphy_c45_an_config_aneg +EXPORT_SYMBOL_GPL vmlinux 0x46a656ff fuse_kill_sb_anon +EXPORT_SYMBOL_GPL vmlinux 0x46afc0b4 software_node_fwnode +EXPORT_SYMBOL_GPL vmlinux 0x46b6a203 ehci_hub_control +EXPORT_SYMBOL_GPL vmlinux 0x46c5be22 clk_multiplier_ops +EXPORT_SYMBOL_GPL vmlinux 0x46c9ef9c k3_udma_glue_rx_flow_init +EXPORT_SYMBOL_GPL vmlinux 0x46cb5f57 watchdog_set_restart_priority +EXPORT_SYMBOL_GPL vmlinux 0x46cca273 bpf_trace_run10 +EXPORT_SYMBOL_GPL vmlinux 0x46e62e40 phy_pm_runtime_put_sync +EXPORT_SYMBOL_GPL vmlinux 0x46e9ccc4 rio_release_inb_pwrite +EXPORT_SYMBOL_GPL vmlinux 0x46ef7919 scsi_autopm_get_device +EXPORT_SYMBOL_GPL vmlinux 0x46f42be0 devlink_fmsg_u8_put +EXPORT_SYMBOL_GPL vmlinux 0x470219c5 get_user_pages_fast_only +EXPORT_SYMBOL_GPL vmlinux 0x471df26b ata_sff_port_intr +EXPORT_SYMBOL_GPL vmlinux 0x47229b5c gpio_request +EXPORT_SYMBOL_GPL vmlinux 0x4727a171 inet_csk_clone_lock +EXPORT_SYMBOL_GPL vmlinux 0x4731f7d5 stmpe_block_write +EXPORT_SYMBOL_GPL vmlinux 0x473369b1 iommu_unregister_device_fault_handler +EXPORT_SYMBOL_GPL vmlinux 0x47372fe6 handle_fasteoi_irq +EXPORT_SYMBOL_GPL vmlinux 0x473bd830 dax_attribute_group +EXPORT_SYMBOL_GPL vmlinux 0x47444ae0 gnttab_dma_alloc_pages +EXPORT_SYMBOL_GPL vmlinux 0x474d41e7 bpf_map_inc_with_uref +EXPORT_SYMBOL_GPL vmlinux 0x47547e02 tcp_reno_undo_cwnd +EXPORT_SYMBOL_GPL vmlinux 0x476167c8 remove_memory +EXPORT_SYMBOL_GPL vmlinux 0x4761f17c register_netevent_notifier +EXPORT_SYMBOL_GPL vmlinux 0x47624a6b usb_bulk_msg +EXPORT_SYMBOL_GPL vmlinux 0x47696c9e bio_associate_blkg +EXPORT_SYMBOL_GPL vmlinux 0x476a7e9e cpufreq_driver_target +EXPORT_SYMBOL_GPL vmlinux 0x476e2a0f platform_msi_domain_alloc_irqs +EXPORT_SYMBOL_GPL vmlinux 0x477501ff regulator_set_soft_start_regmap +EXPORT_SYMBOL_GPL vmlinux 0x4785dfbb hvc_poll +EXPORT_SYMBOL_GPL vmlinux 0x47884890 system_power_efficient_wq +EXPORT_SYMBOL_GPL vmlinux 0x479cb337 scsi_ioctl_block_when_processing_errors +EXPORT_SYMBOL_GPL vmlinux 0x479f7d4b clk_bulk_disable +EXPORT_SYMBOL_GPL vmlinux 0x47a63e80 xdp_return_frame_rx_napi +EXPORT_SYMBOL_GPL vmlinux 0x47a89953 __tracepoint_pelt_cfs_tp +EXPORT_SYMBOL_GPL vmlinux 0x47aad3b9 have_governor_per_policy +EXPORT_SYMBOL_GPL vmlinux 0x47c3a57e fib_nh_common_release +EXPORT_SYMBOL_GPL vmlinux 0x47d0eea2 acpi_lpat_temp_to_raw +EXPORT_SYMBOL_GPL vmlinux 0x47d155c3 fib_rules_lookup +EXPORT_SYMBOL_GPL vmlinux 0x47db391c mdio_mux_init +EXPORT_SYMBOL_GPL vmlinux 0x47de0dc7 clk_unregister_mux +EXPORT_SYMBOL_GPL vmlinux 0x47deabcc __blkg_prfill_u64 +EXPORT_SYMBOL_GPL vmlinux 0x47f01a94 devm_pinctrl_unregister +EXPORT_SYMBOL_GPL vmlinux 0x4815aa79 dev_pm_opp_cpumask_remove_table +EXPORT_SYMBOL_GPL vmlinux 0x481bc0c2 rtnl_delete_link +EXPORT_SYMBOL_GPL vmlinux 0x48254bb3 acpi_irq_create_hierarchy +EXPORT_SYMBOL_GPL vmlinux 0x4828e77b acpi_scan_lock_acquire +EXPORT_SYMBOL_GPL vmlinux 0x4828ebcd relay_late_setup_files +EXPORT_SYMBOL_GPL vmlinux 0x482905d9 sock_diag_put_meminfo +EXPORT_SYMBOL_GPL vmlinux 0x482b076a serdev_device_set_flow_control +EXPORT_SYMBOL_GPL vmlinux 0x483a69d4 cpufreq_cooling_unregister +EXPORT_SYMBOL_GPL vmlinux 0x4843a748 qman_portals_probed +EXPORT_SYMBOL_GPL vmlinux 0x48590ea5 devm_spi_mem_dirmap_create +EXPORT_SYMBOL_GPL vmlinux 0x485cd7f6 kvm_rebooting +EXPORT_SYMBOL_GPL vmlinux 0x486c9c03 usb_find_alt_setting +EXPORT_SYMBOL_GPL vmlinux 0x487f57b7 devlink_sb_unregister +EXPORT_SYMBOL_GPL vmlinux 0x48881145 udp4_lib_lookup +EXPORT_SYMBOL_GPL vmlinux 0x488caeed rtc_update_irq_enable +EXPORT_SYMBOL_GPL vmlinux 0x489e9028 debugfs_create_u8 +EXPORT_SYMBOL_GPL vmlinux 0x48a3d20b mctrl_gpio_get +EXPORT_SYMBOL_GPL vmlinux 0x48b40d1b bgmac_enet_probe +EXPORT_SYMBOL_GPL vmlinux 0x48be2cb8 acpi_dma_request_slave_chan_by_name +EXPORT_SYMBOL_GPL vmlinux 0x48ced2ed devm_extcon_dev_register +EXPORT_SYMBOL_GPL vmlinux 0x48db13c4 meson_clk_mpll_ops +EXPORT_SYMBOL_GPL vmlinux 0x48e4de32 iommu_get_domain_for_dev +EXPORT_SYMBOL_GPL vmlinux 0x48f49400 apei_hest_parse +EXPORT_SYMBOL_GPL vmlinux 0x49017367 ip6_dst_lookup +EXPORT_SYMBOL_GPL vmlinux 0x4913581c synth_event_trace_end +EXPORT_SYMBOL_GPL vmlinux 0x491933c9 sdio_enable_func +EXPORT_SYMBOL_GPL vmlinux 0x491a54a1 cpci_hp_register_controller +EXPORT_SYMBOL_GPL vmlinux 0x491afd5f ahci_ops +EXPORT_SYMBOL_GPL vmlinux 0x491fd53e usb_lock_device_for_reset +EXPORT_SYMBOL_GPL vmlinux 0x49242bc7 freezer_cgrp_subsys_on_dfl_key +EXPORT_SYMBOL_GPL vmlinux 0x49367f81 ahci_check_ready +EXPORT_SYMBOL_GPL vmlinux 0x4937b51c pci_reset_function_locked +EXPORT_SYMBOL_GPL vmlinux 0x4939ebcd numa_map_to_online_node +EXPORT_SYMBOL_GPL vmlinux 0x494ff0fa crypto_aes_set_key +EXPORT_SYMBOL_GPL vmlinux 0x496e81a9 init_uts_ns +EXPORT_SYMBOL_GPL vmlinux 0x496f9837 iomap_swapfile_activate +EXPORT_SYMBOL_GPL vmlinux 0x4982bcf0 pinctrl_enable +EXPORT_SYMBOL_GPL vmlinux 0x498943f5 __kthread_should_park +EXPORT_SYMBOL_GPL vmlinux 0x499043d3 crypto_init_queue +EXPORT_SYMBOL_GPL vmlinux 0x499a9402 dev_coredumpm +EXPORT_SYMBOL_GPL vmlinux 0x499e8b44 ata_bmdma_error_handler +EXPORT_SYMBOL_GPL vmlinux 0x49a0928d pm_runtime_forbid +EXPORT_SYMBOL_GPL vmlinux 0x49a90477 regulator_disable +EXPORT_SYMBOL_GPL vmlinux 0x49adb132 serial8250_do_set_mctrl +EXPORT_SYMBOL_GPL vmlinux 0x49b3f1d8 cpufreq_dbs_governor_limits +EXPORT_SYMBOL_GPL vmlinux 0x49c1ec52 relay_switch_subbuf +EXPORT_SYMBOL_GPL vmlinux 0x49c83a15 xenbus_watch_path +EXPORT_SYMBOL_GPL vmlinux 0x49cda04d of_reserved_mem_device_init_by_name +EXPORT_SYMBOL_GPL vmlinux 0x49d3d49c subsys_find_device_by_id +EXPORT_SYMBOL_GPL vmlinux 0x49db5c64 __tracepoint_neigh_event_send_done +EXPORT_SYMBOL_GPL vmlinux 0x49e0fd21 __cpu_copy_user_page +EXPORT_SYMBOL_GPL vmlinux 0x49e8d32b security_kernel_read_file +EXPORT_SYMBOL_GPL vmlinux 0x49e96999 cond_synchronize_rcu +EXPORT_SYMBOL_GPL vmlinux 0x49eb08ab pci_msi_unmask_irq +EXPORT_SYMBOL_GPL vmlinux 0x4a077061 sata_scr_valid +EXPORT_SYMBOL_GPL vmlinux 0x4a07f203 pci_add_dynid +EXPORT_SYMBOL_GPL vmlinux 0x4a17ed66 sysrq_mask +EXPORT_SYMBOL_GPL vmlinux 0x4a2e1dae gfn_to_hva_memslot +EXPORT_SYMBOL_GPL vmlinux 0x4a2eff78 fib_nexthop_info +EXPORT_SYMBOL_GPL vmlinux 0x4a420d09 acpi_bus_detach_private_data +EXPORT_SYMBOL_GPL vmlinux 0x4a4897bb dev_pm_opp_free_cpufreq_table +EXPORT_SYMBOL_GPL vmlinux 0x4a80b8eb regulator_set_active_discharge_regmap +EXPORT_SYMBOL_GPL vmlinux 0x4a8660f1 pm_generic_thaw +EXPORT_SYMBOL_GPL vmlinux 0x4a9493c2 tpm_get_random +EXPORT_SYMBOL_GPL vmlinux 0x4aa42064 divider_round_rate_parent +EXPORT_SYMBOL_GPL vmlinux 0x4aa58bea inet_getpeer +EXPORT_SYMBOL_GPL vmlinux 0x4ab44d6e fscrypt_ioctl_add_key +EXPORT_SYMBOL_GPL vmlinux 0x4acfae02 trace_get_event_file +EXPORT_SYMBOL_GPL vmlinux 0x4afaffad dax_driver_unregister +EXPORT_SYMBOL_GPL vmlinux 0x4afd13c2 nd_blk_region_provider_data +EXPORT_SYMBOL_GPL vmlinux 0x4aff4889 evm_inode_init_security +EXPORT_SYMBOL_GPL vmlinux 0x4b04a7cc to_nd_blk_region +EXPORT_SYMBOL_GPL vmlinux 0x4b0fb94f irq_alloc_generic_chip +EXPORT_SYMBOL_GPL vmlinux 0x4b2b5286 set_task_ioprio +EXPORT_SYMBOL_GPL vmlinux 0x4b2ff7f1 acpi_subsys_complete +EXPORT_SYMBOL_GPL vmlinux 0x4b3e7015 init_dummy_netdev +EXPORT_SYMBOL_GPL vmlinux 0x4b3f8bb7 devm_pinctrl_put +EXPORT_SYMBOL_GPL vmlinux 0x4b51f74c ata_xfer_mode2mask +EXPORT_SYMBOL_GPL vmlinux 0x4b68fd0b driver_attach +EXPORT_SYMBOL_GPL vmlinux 0x4b6a3e7e pci_epc_add_epf +EXPORT_SYMBOL_GPL vmlinux 0x4b817351 clone_private_mount +EXPORT_SYMBOL_GPL vmlinux 0x4b8ccb51 dev_pm_domain_attach_by_id +EXPORT_SYMBOL_GPL vmlinux 0x4b904167 devm_get_free_pages +EXPORT_SYMBOL_GPL vmlinux 0x4b90d1b6 ata_sas_slave_configure +EXPORT_SYMBOL_GPL vmlinux 0x4b931968 xen_features +EXPORT_SYMBOL_GPL vmlinux 0x4ba8a46f irq_generic_chip_ops +EXPORT_SYMBOL_GPL vmlinux 0x4bace628 account_locked_vm +EXPORT_SYMBOL_GPL vmlinux 0x4bb3344b crypto_register_rngs +EXPORT_SYMBOL_GPL vmlinux 0x4bc73bad trace_define_field +EXPORT_SYMBOL_GPL vmlinux 0x4bc8727f xen_balloon_init +EXPORT_SYMBOL_GPL vmlinux 0x4be2e50e pci_find_ext_capability +EXPORT_SYMBOL_GPL vmlinux 0x4bf1d278 vfs_fallocate +EXPORT_SYMBOL_GPL vmlinux 0x4bf540e6 strp_data_ready +EXPORT_SYMBOL_GPL vmlinux 0x4bf5bf67 ahci_platform_resume_host +EXPORT_SYMBOL_GPL vmlinux 0x4c14f3b2 __of_reset_control_get +EXPORT_SYMBOL_GPL vmlinux 0x4c19a036 sk_detach_filter +EXPORT_SYMBOL_GPL vmlinux 0x4c2564bc regulator_disable_regmap +EXPORT_SYMBOL_GPL vmlinux 0x4c2c0ea7 evtchn_make_refcounted +EXPORT_SYMBOL_GPL vmlinux 0x4c5eea31 perf_event_sysfs_show +EXPORT_SYMBOL_GPL vmlinux 0x4c788f5f clockevent_delta2ns +EXPORT_SYMBOL_GPL vmlinux 0x4c7b02f5 __crypto_alloc_tfm +EXPORT_SYMBOL_GPL vmlinux 0x4c9d9f40 device_show_int +EXPORT_SYMBOL_GPL vmlinux 0x4cae8797 kvm_read_guest +EXPORT_SYMBOL_GPL vmlinux 0x4cc99a81 dm_get_md +EXPORT_SYMBOL_GPL vmlinux 0x4cccbcea devlink_reload_enable +EXPORT_SYMBOL_GPL vmlinux 0x4ce38dd8 iommu_capable +EXPORT_SYMBOL_GPL vmlinux 0x4ce5e074 shash_ahash_update +EXPORT_SYMBOL_GPL vmlinux 0x4ce5e458 acpi_subsys_runtime_resume +EXPORT_SYMBOL_GPL vmlinux 0x4d0015e2 cpu_hotplug_disable +EXPORT_SYMBOL_GPL vmlinux 0x4d09784f perf_tp_event +EXPORT_SYMBOL_GPL vmlinux 0x4d155086 crypto_aead_setkey +EXPORT_SYMBOL_GPL vmlinux 0x4d17f4e9 transport_class_register +EXPORT_SYMBOL_GPL vmlinux 0x4d202b8c __xas_prev +EXPORT_SYMBOL_GPL vmlinux 0x4d322843 sysfs_create_bin_file +EXPORT_SYMBOL_GPL vmlinux 0x4d33e1b8 i2c_dw_validate_speed +EXPORT_SYMBOL_GPL vmlinux 0x4d462b0a bpf_prog_create_from_user +EXPORT_SYMBOL_GPL vmlinux 0x4d4d7b79 blk_mq_map_queues +EXPORT_SYMBOL_GPL vmlinux 0x4d503f1e hwmon_device_register +EXPORT_SYMBOL_GPL vmlinux 0x4d52c7a9 hisi_uncore_pmu_read +EXPORT_SYMBOL_GPL vmlinux 0x4d6d0bbc iommu_group_ref_get +EXPORT_SYMBOL_GPL vmlinux 0x4d7d042f crypto_register_instance +EXPORT_SYMBOL_GPL vmlinux 0x4d83c710 k3_udma_glue_tdown_tx_chn +EXPORT_SYMBOL_GPL vmlinux 0x4d8a96ab xas_set_mark +EXPORT_SYMBOL_GPL vmlinux 0x4d95d6d1 memcpy_flushcache +EXPORT_SYMBOL_GPL vmlinux 0x4da1f4a7 list_lru_del +EXPORT_SYMBOL_GPL vmlinux 0x4da65b42 of_mm_gpiochip_add_data +EXPORT_SYMBOL_GPL vmlinux 0x4dae16e4 i2c_put_dma_safe_msg_buf +EXPORT_SYMBOL_GPL vmlinux 0x4db77f4d hwspin_lock_request +EXPORT_SYMBOL_GPL vmlinux 0x4dbdb767 ti_sci_get_free_resource +EXPORT_SYMBOL_GPL vmlinux 0x4dd9d14d cn_netlink_send_mult +EXPORT_SYMBOL_GPL vmlinux 0x4dde2173 __vfs_setxattr_locked +EXPORT_SYMBOL_GPL vmlinux 0x4de17ab3 usb_state_string +EXPORT_SYMBOL_GPL vmlinux 0x4de72a8e shmem_read_mapping_page_gfp +EXPORT_SYMBOL_GPL vmlinux 0x4e17c613 ata_sff_queue_delayed_work +EXPORT_SYMBOL_GPL vmlinux 0x4e293d51 crypto_unregister_skcipher +EXPORT_SYMBOL_GPL vmlinux 0x4e2f94d4 inet_twsk_hashdance +EXPORT_SYMBOL_GPL vmlinux 0x4e3348d5 serial8250_read_char +EXPORT_SYMBOL_GPL vmlinux 0x4e3fd1b4 kvm_release_pfn_clean +EXPORT_SYMBOL_GPL vmlinux 0x4e49035b kthread_flush_work +EXPORT_SYMBOL_GPL vmlinux 0x4e4a3e7c blk_mq_sched_free_hctx_data +EXPORT_SYMBOL_GPL vmlinux 0x4e4c37e2 freq_qos_remove_notifier +EXPORT_SYMBOL_GPL vmlinux 0x4e574847 __devm_create_dev_dax +EXPORT_SYMBOL_GPL vmlinux 0x4e5dab52 sdev_evt_send +EXPORT_SYMBOL_GPL vmlinux 0x4e636f3b gpiod_get_optional +EXPORT_SYMBOL_GPL vmlinux 0x4e814c52 xdp_rxq_info_reg +EXPORT_SYMBOL_GPL vmlinux 0x4e8c3ded gpiochip_populate_parent_fwspec_fourcell +EXPORT_SYMBOL_GPL vmlinux 0x4e9f9c68 devlink_dpipe_headers_register +EXPORT_SYMBOL_GPL vmlinux 0x4ea0498d pm_generic_thaw_early +EXPORT_SYMBOL_GPL vmlinux 0x4eac5fc1 cpu_mitigations_auto_nosmt +EXPORT_SYMBOL_GPL vmlinux 0x4ec7ed71 ipv4_sk_redirect +EXPORT_SYMBOL_GPL vmlinux 0x4ecc1298 perf_event_create_kernel_counter +EXPORT_SYMBOL_GPL vmlinux 0x4ece3615 blocking_notifier_chain_unregister +EXPORT_SYMBOL_GPL vmlinux 0x4ee453cb ata_do_dev_read_id +EXPORT_SYMBOL_GPL vmlinux 0x4ef5bcf4 perf_swevent_get_recursion_context +EXPORT_SYMBOL_GPL vmlinux 0x4f0786ef __platform_create_bundle +EXPORT_SYMBOL_GPL vmlinux 0x4f17db39 dm_send_uevents +EXPORT_SYMBOL_GPL vmlinux 0x4f20f899 pinconf_generic_parse_dt_config +EXPORT_SYMBOL_GPL vmlinux 0x4f2593f0 btree_update +EXPORT_SYMBOL_GPL vmlinux 0x4f26485e __sock_recv_ts_and_drops +EXPORT_SYMBOL_GPL vmlinux 0x4f41084b xfrm_audit_policy_delete +EXPORT_SYMBOL_GPL vmlinux 0x4f42622f balloon_page_list_dequeue +EXPORT_SYMBOL_GPL vmlinux 0x4f520b32 tpm_is_tpm2 +EXPORT_SYMBOL_GPL vmlinux 0x4f5ef435 blk_set_pm_only +EXPORT_SYMBOL_GPL vmlinux 0x4f6a07fe show_rcu_gp_kthreads +EXPORT_SYMBOL_GPL vmlinux 0x4f717a4c usb_remove_phy +EXPORT_SYMBOL_GPL vmlinux 0x4f72a987 uart_parse_options +EXPORT_SYMBOL_GPL vmlinux 0x4f73361c xfrm_output +EXPORT_SYMBOL_GPL vmlinux 0x4f8a52b4 meson_sm_get +EXPORT_SYMBOL_GPL vmlinux 0x4f938149 __blk_req_zone_write_unlock +EXPORT_SYMBOL_GPL vmlinux 0x4f98d766 cpu_pm_unregister_notifier +EXPORT_SYMBOL_GPL vmlinux 0x4f9ad1ee __devm_spi_alloc_controller +EXPORT_SYMBOL_GPL vmlinux 0x4fa55f62 devfreq_event_get_edev_by_phandle +EXPORT_SYMBOL_GPL vmlinux 0x4fa5b3eb hwmon_device_register_with_groups +EXPORT_SYMBOL_GPL vmlinux 0x4fc02643 rhashtable_walk_exit +EXPORT_SYMBOL_GPL vmlinux 0x4fc8206e sock_zerocopy_put_abort +EXPORT_SYMBOL_GPL vmlinux 0x4fdc945d sata_deb_timing_normal +EXPORT_SYMBOL_GPL vmlinux 0x4fe1eddf unregister_netevent_notifier +EXPORT_SYMBOL_GPL vmlinux 0x4fe26d72 pm_generic_freeze_late +EXPORT_SYMBOL_GPL vmlinux 0x4fe78ad9 phy_select_page +EXPORT_SYMBOL_GPL vmlinux 0x4ffefde1 kvm_vcpu_gfn_to_hva +EXPORT_SYMBOL_GPL vmlinux 0x5006fb2b tcp_abort +EXPORT_SYMBOL_GPL vmlinux 0x500c768c apei_exec_read_register +EXPORT_SYMBOL_GPL vmlinux 0x50261de9 devlink_port_param_driverinit_value_get +EXPORT_SYMBOL_GPL vmlinux 0x5026585c xen_irq_from_gsi +EXPORT_SYMBOL_GPL vmlinux 0x507216b8 efivars_unregister +EXPORT_SYMBOL_GPL vmlinux 0x50739d25 xfrm_audit_state_replay_overflow +EXPORT_SYMBOL_GPL vmlinux 0x507ebc7d fl6_update_dst +EXPORT_SYMBOL_GPL vmlinux 0x5091b823 ring_buffer_read_start +EXPORT_SYMBOL_GPL vmlinux 0x509ea22f firmware_request_nowarn +EXPORT_SYMBOL_GPL vmlinux 0x50a63f93 __tracepoint_devlink_hwmsg +EXPORT_SYMBOL_GPL vmlinux 0x50a8ff79 ahci_do_hardreset +EXPORT_SYMBOL_GPL vmlinux 0x50b7a714 page_cache_sync_readahead +EXPORT_SYMBOL_GPL vmlinux 0x50c2ae54 rpi_firmware_property +EXPORT_SYMBOL_GPL vmlinux 0x50e7193a __i2c_first_dynamic_bus_num +EXPORT_SYMBOL_GPL vmlinux 0x50ebd7ae pwm_put +EXPORT_SYMBOL_GPL vmlinux 0x50f17dc6 crypto_stats_init +EXPORT_SYMBOL_GPL vmlinux 0x50fad434 round_jiffies_up +EXPORT_SYMBOL_GPL vmlinux 0x50fb8ce7 strp_init +EXPORT_SYMBOL_GPL vmlinux 0x5123a9ac strp_unpause +EXPORT_SYMBOL_GPL vmlinux 0x51241b24 __get_task_comm +EXPORT_SYMBOL_GPL vmlinux 0x51362b46 __list_lru_init +EXPORT_SYMBOL_GPL vmlinux 0x51390c96 rcu_barrier_tasks_rude +EXPORT_SYMBOL_GPL vmlinux 0x513bfb47 ata_bmdma_dumb_qc_prep +EXPORT_SYMBOL_GPL vmlinux 0x514da9fa usb_deregister_device_driver +EXPORT_SYMBOL_GPL vmlinux 0x5157f40c rdev_set_badblocks +EXPORT_SYMBOL_GPL vmlinux 0x516016bc skb_mpls_update_lse +EXPORT_SYMBOL_GPL vmlinux 0x5160317b setfl +EXPORT_SYMBOL_GPL vmlinux 0x51673dfc devlink_dpipe_entry_ctx_close +EXPORT_SYMBOL_GPL vmlinux 0x5169344d k3_udma_glue_pop_tx_chn +EXPORT_SYMBOL_GPL vmlinux 0x5187ac4b xen_store_evtchn +EXPORT_SYMBOL_GPL vmlinux 0x519fa588 ack_all_badblocks +EXPORT_SYMBOL_GPL vmlinux 0x51a348cc usb_role_switch_set_drvdata +EXPORT_SYMBOL_GPL vmlinux 0x51b276fe __xenbus_register_backend +EXPORT_SYMBOL_GPL vmlinux 0x51c0b742 clk_hw_unregister +EXPORT_SYMBOL_GPL vmlinux 0x51cfcd4a gpiod_get_array_value_cansleep +EXPORT_SYMBOL_GPL vmlinux 0x51d22026 mmc_regulator_get_supply +EXPORT_SYMBOL_GPL vmlinux 0x51fc9a6d xenmem_reservation_decrease +EXPORT_SYMBOL_GPL vmlinux 0x52036e4e cpufreq_cooling_register +EXPORT_SYMBOL_GPL vmlinux 0x520c401b genphy_c45_aneg_done +EXPORT_SYMBOL_GPL vmlinux 0x52121118 __tracepoint_non_standard_event +EXPORT_SYMBOL_GPL vmlinux 0x52252316 clk_unregister_fixed_rate +EXPORT_SYMBOL_GPL vmlinux 0x52383223 get_pid_task +EXPORT_SYMBOL_GPL vmlinux 0x52431348 xenbus_transaction_start +EXPORT_SYMBOL_GPL vmlinux 0x5247ef4f fib_rule_matchall +EXPORT_SYMBOL_GPL vmlinux 0x5252783b dev_pm_qos_expose_latency_tolerance +EXPORT_SYMBOL_GPL vmlinux 0x5252a1b1 blkcg_policy_unregister +EXPORT_SYMBOL_GPL vmlinux 0x52560e4a extcon_find_edev_by_node +EXPORT_SYMBOL_GPL vmlinux 0x525d0aa3 trace_seq_printf +EXPORT_SYMBOL_GPL vmlinux 0x528914bd fsl_mc_bus_dpsw_type +EXPORT_SYMBOL_GPL vmlinux 0x528dc3c4 of_css +EXPORT_SYMBOL_GPL vmlinux 0x52b1e3c7 pci_flags +EXPORT_SYMBOL_GPL vmlinux 0x52c35e83 call_rcu_tasks_trace +EXPORT_SYMBOL_GPL vmlinux 0x52cd9807 fwnode_create_software_node +EXPORT_SYMBOL_GPL vmlinux 0x52d54fce devlink_info_version_stored_put +EXPORT_SYMBOL_GPL vmlinux 0x531333cd unregister_wide_hw_breakpoint +EXPORT_SYMBOL_GPL vmlinux 0x531b8c8e kvm_set_memory_region +EXPORT_SYMBOL_GPL vmlinux 0x53237bc9 pci_epc_clear_bar +EXPORT_SYMBOL_GPL vmlinux 0x532b90b5 kprobe_event_cmd_init +EXPORT_SYMBOL_GPL vmlinux 0x53372065 md_start +EXPORT_SYMBOL_GPL vmlinux 0x53455f11 d_walk +EXPORT_SYMBOL_GPL vmlinux 0x534aa49a scsi_dh_attach +EXPORT_SYMBOL_GPL vmlinux 0x5358864e devlink_fmsg_binary_pair_nest_end +EXPORT_SYMBOL_GPL vmlinux 0x5358e014 wm831x_reg_unlock +EXPORT_SYMBOL_GPL vmlinux 0x535eb57c __udp4_lib_lookup +EXPORT_SYMBOL_GPL vmlinux 0x53652774 of_reserved_mem_lookup +EXPORT_SYMBOL_GPL vmlinux 0x536611a7 bgmac_enet_suspend +EXPORT_SYMBOL_GPL vmlinux 0x536822e3 sfp_module_insert +EXPORT_SYMBOL_GPL vmlinux 0x53716773 spi_write_then_read +EXPORT_SYMBOL_GPL vmlinux 0x537656aa kgdb_unregister_io_module +EXPORT_SYMBOL_GPL vmlinux 0x537968c2 smpboot_register_percpu_thread +EXPORT_SYMBOL_GPL vmlinux 0x5385fcba netdev_rx_handler_register +EXPORT_SYMBOL_GPL vmlinux 0x5388484e gpiochip_is_requested +EXPORT_SYMBOL_GPL vmlinux 0x5389545d __module_text_address +EXPORT_SYMBOL_GPL vmlinux 0x538b92a2 extcon_register_notifier +EXPORT_SYMBOL_GPL vmlinux 0x538d073d phy_duplex_to_str +EXPORT_SYMBOL_GPL vmlinux 0x5391f2c7 gnttab_end_foreign_access_ref +EXPORT_SYMBOL_GPL vmlinux 0x53a0ffdb fuse_simple_background +EXPORT_SYMBOL_GPL vmlinux 0x53b13a23 icc_nodes_remove +EXPORT_SYMBOL_GPL vmlinux 0x53b71988 gpiod_set_config +EXPORT_SYMBOL_GPL vmlinux 0x53c089f5 property_entries_dup +EXPORT_SYMBOL_GPL vmlinux 0x53c14194 spi_split_transfers_maxsize +EXPORT_SYMBOL_GPL vmlinux 0x53e06c0c power_supply_find_ocv2cap_table +EXPORT_SYMBOL_GPL vmlinux 0x53e0b54b devm_gpiochip_add_data_with_key +EXPORT_SYMBOL_GPL vmlinux 0x53e0c99f register_pernet_subsys +EXPORT_SYMBOL_GPL vmlinux 0x53e331a5 devm_led_classdev_unregister +EXPORT_SYMBOL_GPL vmlinux 0x53e67bc9 pin_get_name +EXPORT_SYMBOL_GPL vmlinux 0x540bc461 set_primary_fwnode +EXPORT_SYMBOL_GPL vmlinux 0x541bd60a irq_work_run +EXPORT_SYMBOL_GPL vmlinux 0x54215db5 visitor64 +EXPORT_SYMBOL_GPL vmlinux 0x544d043e cpufreq_dbs_governor_start +EXPORT_SYMBOL_GPL vmlinux 0x545025e5 nvmem_add_cell_table +EXPORT_SYMBOL_GPL vmlinux 0x54525256 cgroup_attach_task_all +EXPORT_SYMBOL_GPL vmlinux 0x5459ae9b crypto_skcipher_encrypt +EXPORT_SYMBOL_GPL vmlinux 0x545c7b6e crypto_register_kpp +EXPORT_SYMBOL_GPL vmlinux 0x54736fb3 kvm_write_guest +EXPORT_SYMBOL_GPL vmlinux 0x5474060b pinconf_generic_dt_free_map +EXPORT_SYMBOL_GPL vmlinux 0x54744c88 regmap_noinc_write +EXPORT_SYMBOL_GPL vmlinux 0x54801cfe msi_desc_to_pci_sysdata +EXPORT_SYMBOL_GPL vmlinux 0x548c4124 usb_get_dev +EXPORT_SYMBOL_GPL vmlinux 0x549525ef handle_nested_irq +EXPORT_SYMBOL_GPL vmlinux 0x54955855 alarm_start_relative +EXPORT_SYMBOL_GPL vmlinux 0x54a25da2 qcom_smem_state_put +EXPORT_SYMBOL_GPL vmlinux 0x54a4403c ata_std_qc_defer +EXPORT_SYMBOL_GPL vmlinux 0x54b1d5a4 regulator_unregister_notifier +EXPORT_SYMBOL_GPL vmlinux 0x54e8863c virtio_config_enable +EXPORT_SYMBOL_GPL vmlinux 0x54f05053 usb_reset_device +EXPORT_SYMBOL_GPL vmlinux 0x55339365 flush_delayed_fput +EXPORT_SYMBOL_GPL vmlinux 0x553b49a4 cpufreq_get_driver_data +EXPORT_SYMBOL_GPL vmlinux 0x553f4f4e wakeup_source_add +EXPORT_SYMBOL_GPL vmlinux 0x55417264 unregister_vt_notifier +EXPORT_SYMBOL_GPL vmlinux 0x555e6f30 securityfs_create_dir +EXPORT_SYMBOL_GPL vmlinux 0x555f9eca rhashtable_walk_enter +EXPORT_SYMBOL_GPL vmlinux 0x556d2606 clk_register_mux_table +EXPORT_SYMBOL_GPL vmlinux 0x556e4390 clk_get_rate +EXPORT_SYMBOL_GPL vmlinux 0x55784228 regmap_irq_get_virq +EXPORT_SYMBOL_GPL vmlinux 0x557dc686 dev_change_net_namespace +EXPORT_SYMBOL_GPL vmlinux 0x558a6c2c ata_std_prereset +EXPORT_SYMBOL_GPL vmlinux 0x5590f03f pci_host_probe +EXPORT_SYMBOL_GPL vmlinux 0x55948b11 ti_sci_put_handle +EXPORT_SYMBOL_GPL vmlinux 0x559ca7ed device_property_present +EXPORT_SYMBOL_GPL vmlinux 0x55a8a560 clk_fixed_rate_ops +EXPORT_SYMBOL_GPL vmlinux 0x55af4a81 pci_try_reset_function +EXPORT_SYMBOL_GPL vmlinux 0x55bddc07 class_unregister +EXPORT_SYMBOL_GPL vmlinux 0x55c34955 pinctrl_pm_select_sleep_state +EXPORT_SYMBOL_GPL vmlinux 0x55c76a23 ksys_sync_helper +EXPORT_SYMBOL_GPL vmlinux 0x55c85537 register_kretprobe +EXPORT_SYMBOL_GPL vmlinux 0x55c8bcb7 edac_pci_add_device +EXPORT_SYMBOL_GPL vmlinux 0x55c9880c zynqmp_pm_release_node +EXPORT_SYMBOL_GPL vmlinux 0x55cca521 spi_get_device_id +EXPORT_SYMBOL_GPL vmlinux 0x55d01d69 ip6_flush_pending_frames +EXPORT_SYMBOL_GPL vmlinux 0x55d08f47 register_wide_hw_breakpoint +EXPORT_SYMBOL_GPL vmlinux 0x55d4c087 gpiod_get_direction +EXPORT_SYMBOL_GPL vmlinux 0x55de4235 sock_diag_destroy +EXPORT_SYMBOL_GPL vmlinux 0x55e04422 dev_pm_qos_flags +EXPORT_SYMBOL_GPL vmlinux 0x55eecff4 bit_wait_io_timeout +EXPORT_SYMBOL_GPL vmlinux 0x55fe2920 sk_clear_memalloc +EXPORT_SYMBOL_GPL vmlinux 0x560515bd blk_mq_quiesce_queue_nowait +EXPORT_SYMBOL_GPL vmlinux 0x56054c05 crypto_it_tab +EXPORT_SYMBOL_GPL vmlinux 0x56173654 pcap_set_ts_bits +EXPORT_SYMBOL_GPL vmlinux 0x56256e8a orderly_poweroff +EXPORT_SYMBOL_GPL vmlinux 0x562b80b1 pm_generic_resume_noirq +EXPORT_SYMBOL_GPL vmlinux 0x56310925 regulator_mode_to_status +EXPORT_SYMBOL_GPL vmlinux 0x56335352 policy_has_boost_freq +EXPORT_SYMBOL_GPL vmlinux 0x563c5dd5 arizona_clk32k_disable +EXPORT_SYMBOL_GPL vmlinux 0x5641485b tty_termios_encode_baud_rate +EXPORT_SYMBOL_GPL vmlinux 0x565bbf49 serial8250_rpm_get +EXPORT_SYMBOL_GPL vmlinux 0x5674b3cb rhashtable_free_and_destroy +EXPORT_SYMBOL_GPL vmlinux 0x567a7bdf debugfs_create_devm_seqfile +EXPORT_SYMBOL_GPL vmlinux 0x567c8da2 devlink_free +EXPORT_SYMBOL_GPL vmlinux 0x56884181 ip6_update_pmtu +EXPORT_SYMBOL_GPL vmlinux 0x568cd97c usb_of_has_combined_node +EXPORT_SYMBOL_GPL vmlinux 0x56af67ba rio_map_outb_region +EXPORT_SYMBOL_GPL vmlinux 0x56c0218f i2c_probe_func_quick_read +EXPORT_SYMBOL_GPL vmlinux 0x56e5ec45 input_ff_destroy +EXPORT_SYMBOL_GPL vmlinux 0x56e85fae dev_pm_qos_remove_notifier +EXPORT_SYMBOL_GPL vmlinux 0x56e9103b cpu_pm_enter +EXPORT_SYMBOL_GPL vmlinux 0x5717ea96 usb_sg_wait +EXPORT_SYMBOL_GPL vmlinux 0x5719fccb usb_unlocked_disable_lpm +EXPORT_SYMBOL_GPL vmlinux 0x571a2153 fixup_user_fault +EXPORT_SYMBOL_GPL vmlinux 0x571f5f1b extcon_unregister_notifier +EXPORT_SYMBOL_GPL vmlinux 0x572ccbdc kset_find_obj +EXPORT_SYMBOL_GPL vmlinux 0x573b5453 ipv6_fixup_options +EXPORT_SYMBOL_GPL vmlinux 0x573b8a56 dev_pm_opp_set_supported_hw +EXPORT_SYMBOL_GPL vmlinux 0x574609c5 apei_exec_write_register_value +EXPORT_SYMBOL_GPL vmlinux 0x574a0f8f pm_runtime_set_autosuspend_delay +EXPORT_SYMBOL_GPL vmlinux 0x575d1c2c i2c_bus_type +EXPORT_SYMBOL_GPL vmlinux 0x576b2086 acomp_request_alloc +EXPORT_SYMBOL_GPL vmlinux 0x57714dfc icc_disable +EXPORT_SYMBOL_GPL vmlinux 0x57719632 gnttab_grant_foreign_access +EXPORT_SYMBOL_GPL vmlinux 0x57732438 inet_twsk_purge +EXPORT_SYMBOL_GPL vmlinux 0x5778064e crypto_ahash_digest +EXPORT_SYMBOL_GPL vmlinux 0x577b0e53 power_supply_am_i_supplied +EXPORT_SYMBOL_GPL vmlinux 0x578a74d5 ata_sff_irq_on +EXPORT_SYMBOL_GPL vmlinux 0x578eeb4d hugetlb_cgrp_subsys_enabled_key +EXPORT_SYMBOL_GPL vmlinux 0x5790e7a0 pci_unlock_rescan_remove +EXPORT_SYMBOL_GPL vmlinux 0x5796bc75 get_dev_pagemap +EXPORT_SYMBOL_GPL vmlinux 0x579cf662 virtqueue_kick +EXPORT_SYMBOL_GPL vmlinux 0x579e0bf5 rtnl_unregister_all +EXPORT_SYMBOL_GPL vmlinux 0x579e3607 crypto_find_alg +EXPORT_SYMBOL_GPL vmlinux 0x57aeff27 regmap_mmio_attach_clk +EXPORT_SYMBOL_GPL vmlinux 0x57bbf7c2 subsys_virtual_register +EXPORT_SYMBOL_GPL vmlinux 0x57c39727 kdb_register_flags +EXPORT_SYMBOL_GPL vmlinux 0x57d81e8d hwpoison_filter +EXPORT_SYMBOL_GPL vmlinux 0x57ed70b1 devm_acpi_dma_controller_register +EXPORT_SYMBOL_GPL vmlinux 0x57ef7829 extcon_get_extcon_dev +EXPORT_SYMBOL_GPL vmlinux 0x57f2a3c3 __rio_local_read_config_16 +EXPORT_SYMBOL_GPL vmlinux 0x57f302af devres_release +EXPORT_SYMBOL_GPL vmlinux 0x57f70547 secure_ipv4_port_ephemeral +EXPORT_SYMBOL_GPL vmlinux 0x57fbea4e md_run +EXPORT_SYMBOL_GPL vmlinux 0x57fe7ac9 fwnode_property_read_u64_array +EXPORT_SYMBOL_GPL vmlinux 0x57ff6bd2 em_cpu_get +EXPORT_SYMBOL_GPL vmlinux 0x58054097 fwnode_get_phy_mode +EXPORT_SYMBOL_GPL vmlinux 0x581707b3 dm_device_name +EXPORT_SYMBOL_GPL vmlinux 0x58276f93 cper_next_record_id +EXPORT_SYMBOL_GPL vmlinux 0x58288174 regulator_set_voltage_time_sel +EXPORT_SYMBOL_GPL vmlinux 0x582b8ed8 da9052_adc_manual_read +EXPORT_SYMBOL_GPL vmlinux 0x582c57fb bpf_trace_run4 +EXPORT_SYMBOL_GPL vmlinux 0x5831e062 cpus_read_trylock +EXPORT_SYMBOL_GPL vmlinux 0x58361f0f __nvdimm_create +EXPORT_SYMBOL_GPL vmlinux 0x584f938f wm5110_revd_irq +EXPORT_SYMBOL_GPL vmlinux 0x5866f599 crypto_alg_extsize +EXPORT_SYMBOL_GPL vmlinux 0x586fbca0 rio_unregister_driver +EXPORT_SYMBOL_GPL vmlinux 0x586fdcbd cdrom_multisession +EXPORT_SYMBOL_GPL vmlinux 0x5877d227 relay_subbufs_consumed +EXPORT_SYMBOL_GPL vmlinux 0x5879a27d sfp_get_module_info +EXPORT_SYMBOL_GPL vmlinux 0x58817436 i2c_recover_bus +EXPORT_SYMBOL_GPL vmlinux 0x588ee70f acpi_debugfs_dir +EXPORT_SYMBOL_GPL vmlinux 0x5893c591 xenbus_dev_error +EXPORT_SYMBOL_GPL vmlinux 0x58955e40 handle_fasteoi_ack_irq +EXPORT_SYMBOL_GPL vmlinux 0x58a6d39f extcon_dev_unregister +EXPORT_SYMBOL_GPL vmlinux 0x58b6a995 acpi_find_child_device +EXPORT_SYMBOL_GPL vmlinux 0x58cc52a6 devres_destroy +EXPORT_SYMBOL_GPL vmlinux 0x58def6ca sfp_module_remove +EXPORT_SYMBOL_GPL vmlinux 0x58e14f15 HYPERVISOR_event_channel_op +EXPORT_SYMBOL_GPL vmlinux 0x58ec2aa9 __udp6_lib_lookup +EXPORT_SYMBOL_GPL vmlinux 0x58f32db8 key_type_user +EXPORT_SYMBOL_GPL vmlinux 0x58fc6b34 spi_register_controller +EXPORT_SYMBOL_GPL vmlinux 0x58ff4e50 wakeup_source_destroy +EXPORT_SYMBOL_GPL vmlinux 0x593ba6f9 ti_sci_inta_msi_create_irq_domain +EXPORT_SYMBOL_GPL vmlinux 0x5958919c tpm_chip_alloc +EXPORT_SYMBOL_GPL vmlinux 0x596b5e3a sk_msg_zerocopy_from_iter +EXPORT_SYMBOL_GPL vmlinux 0x597337ad pciserial_init_ports +EXPORT_SYMBOL_GPL vmlinux 0x59740c89 __usb_create_hcd +EXPORT_SYMBOL_GPL vmlinux 0x597dcf2c __vfs_removexattr_noperm +EXPORT_SYMBOL_GPL vmlinux 0x5986d190 kdb_printf +EXPORT_SYMBOL_GPL vmlinux 0x59881f24 pinctrl_generic_get_group_name +EXPORT_SYMBOL_GPL vmlinux 0x5989cf5e fwnode_graph_get_remote_endpoint +EXPORT_SYMBOL_GPL vmlinux 0x598cabfa pci_epc_multi_mem_init +EXPORT_SYMBOL_GPL vmlinux 0x59a87701 spi_res_release +EXPORT_SYMBOL_GPL vmlinux 0x59aa3a6a rio_dev_get +EXPORT_SYMBOL_GPL vmlinux 0x59b23acd do_xdp_generic +EXPORT_SYMBOL_GPL vmlinux 0x59b2adbf input_ff_effect_from_user +EXPORT_SYMBOL_GPL vmlinux 0x59c08674 acpi_dma_controller_register +EXPORT_SYMBOL_GPL vmlinux 0x59cbdb0d pm_stay_awake +EXPORT_SYMBOL_GPL vmlinux 0x59d2a1b4 mm_unaccount_pinned_pages +EXPORT_SYMBOL_GPL vmlinux 0x59e640c0 halt_poll_ns +EXPORT_SYMBOL_GPL vmlinux 0x59fa2902 fib_new_table +EXPORT_SYMBOL_GPL vmlinux 0x59fe70a8 ftrace_set_filter_ip +EXPORT_SYMBOL_GPL vmlinux 0x5a1d134a rcu_momentary_dyntick_idle +EXPORT_SYMBOL_GPL vmlinux 0x5a49dbc9 timerqueue_del +EXPORT_SYMBOL_GPL vmlinux 0x5a4e371e __fscrypt_prepare_lookup +EXPORT_SYMBOL_GPL vmlinux 0x5a6cdb52 nf_ct_zone_dflt +EXPORT_SYMBOL_GPL vmlinux 0x5a7184d6 devm_power_supply_register +EXPORT_SYMBOL_GPL vmlinux 0x5a729cef of_get_videomode +EXPORT_SYMBOL_GPL vmlinux 0x5a73b059 device_match_fwnode +EXPORT_SYMBOL_GPL vmlinux 0x5a7bfe41 crypto_probing_notify +EXPORT_SYMBOL_GPL vmlinux 0x5a823f49 dw_pcie_write_dbi +EXPORT_SYMBOL_GPL vmlinux 0x5ab09745 edac_get_owner +EXPORT_SYMBOL_GPL vmlinux 0x5ab27ef3 ahci_print_info +EXPORT_SYMBOL_GPL vmlinux 0x5ab9e678 usb_hcd_is_primary_hcd +EXPORT_SYMBOL_GPL vmlinux 0x5abaf3d3 irq_chip_disable_parent +EXPORT_SYMBOL_GPL vmlinux 0x5ac15d50 devm_extcon_dev_allocate +EXPORT_SYMBOL_GPL vmlinux 0x5ad7e1b1 cpuidle_register_driver +EXPORT_SYMBOL_GPL vmlinux 0x5af51f26 rockchip_pcie_deinit_phys +EXPORT_SYMBOL_GPL vmlinux 0x5afc7e37 bind_interdomain_evtchn_to_irqhandler +EXPORT_SYMBOL_GPL vmlinux 0x5b0b8d44 nvdimm_to_bus +EXPORT_SYMBOL_GPL vmlinux 0x5b14cdd4 ehci_adjust_port_wakeup_flags +EXPORT_SYMBOL_GPL vmlinux 0x5b18b473 regulator_get_bypass_regmap +EXPORT_SYMBOL_GPL vmlinux 0x5b1a430b tps6586x_read +EXPORT_SYMBOL_GPL vmlinux 0x5b200c61 trace_event_buffer_commit +EXPORT_SYMBOL_GPL vmlinux 0x5b21ceff ring_buffer_iter_peek +EXPORT_SYMBOL_GPL vmlinux 0x5b230c55 ata_pci_remove_one +EXPORT_SYMBOL_GPL vmlinux 0x5b23654b mmc_cmdq_disable +EXPORT_SYMBOL_GPL vmlinux 0x5b25f6c6 sched_trace_cfs_rq_avg +EXPORT_SYMBOL_GPL vmlinux 0x5b46689e usb_sg_cancel +EXPORT_SYMBOL_GPL vmlinux 0x5b529f5b tc3589x_block_read +EXPORT_SYMBOL_GPL vmlinux 0x5b532234 dm_put +EXPORT_SYMBOL_GPL vmlinux 0x5b55f76d ip_build_and_send_pkt +EXPORT_SYMBOL_GPL vmlinux 0x5b6b0329 swiotlb_max_segment +EXPORT_SYMBOL_GPL vmlinux 0x5b6bf2b1 devlink_param_value_changed +EXPORT_SYMBOL_GPL vmlinux 0x5b6c52f3 register_trace_event +EXPORT_SYMBOL_GPL vmlinux 0x5b6d20c6 simple_attr_release +EXPORT_SYMBOL_GPL vmlinux 0x5b739e8f xdp_rxq_info_reg_mem_model +EXPORT_SYMBOL_GPL vmlinux 0x5b7d4807 securityfs_create_file +EXPORT_SYMBOL_GPL vmlinux 0x5b80cde1 pci_test_config_bits +EXPORT_SYMBOL_GPL vmlinux 0x5b8e57db pci_walk_bus +EXPORT_SYMBOL_GPL vmlinux 0x5b937b48 stmpe_enable +EXPORT_SYMBOL_GPL vmlinux 0x5b9ff612 pm_generic_restore_early +EXPORT_SYMBOL_GPL vmlinux 0x5ba07d95 of_property_read_u32_index +EXPORT_SYMBOL_GPL vmlinux 0x5bb0c866 pci_hp_destroy +EXPORT_SYMBOL_GPL vmlinux 0x5bb8f5be pci_ats_supported +EXPORT_SYMBOL_GPL vmlinux 0x5bbb3cd1 ip_fib_metrics_init +EXPORT_SYMBOL_GPL vmlinux 0x5bbdfa26 scatterwalk_ffwd +EXPORT_SYMBOL_GPL vmlinux 0x5bc96999 blk_mq_update_nr_hw_queues +EXPORT_SYMBOL_GPL vmlinux 0x5bd0748f crypto_del_default_rng +EXPORT_SYMBOL_GPL vmlinux 0x5bd93d53 dma_get_merge_boundary +EXPORT_SYMBOL_GPL vmlinux 0x5bdae35b usb_phy_roothub_set_mode +EXPORT_SYMBOL_GPL vmlinux 0x5bdb5997 inet_hash_connect +EXPORT_SYMBOL_GPL vmlinux 0x5bdbac4e rcu_unexpedite_gp +EXPORT_SYMBOL_GPL vmlinux 0x5beba069 vc_scrolldelta_helper +EXPORT_SYMBOL_GPL vmlinux 0x5bfc773b pm_generic_suspend_late +EXPORT_SYMBOL_GPL vmlinux 0x5c00ca29 sysfs_add_link_to_group +EXPORT_SYMBOL_GPL vmlinux 0x5c049a17 find_extend_vma +EXPORT_SYMBOL_GPL vmlinux 0x5c0f77ce HYPERVISOR_platform_op_raw +EXPORT_SYMBOL_GPL vmlinux 0x5c2bcd37 bpf_warn_invalid_xdp_action +EXPORT_SYMBOL_GPL vmlinux 0x5c40bee3 __pm_runtime_resume +EXPORT_SYMBOL_GPL vmlinux 0x5c5293b6 skb_cow_data +EXPORT_SYMBOL_GPL vmlinux 0x5c5a1b16 tick_broadcast_control +EXPORT_SYMBOL_GPL vmlinux 0x5c66e90c efivar_run_worker +EXPORT_SYMBOL_GPL vmlinux 0x5c7cc47b inet_csk_reqsk_queue_hash_add +EXPORT_SYMBOL_GPL vmlinux 0x5c8b6b71 spi_controller_dma_unmap_mem_op_data +EXPORT_SYMBOL_GPL vmlinux 0x5c93107d of_nvmem_cell_get +EXPORT_SYMBOL_GPL vmlinux 0x5ca67d02 param_set_bool_enable_only +EXPORT_SYMBOL_GPL vmlinux 0x5caa20b2 virtio_break_device +EXPORT_SYMBOL_GPL vmlinux 0x5cab9945 unregister_xenbus_watch +EXPORT_SYMBOL_GPL vmlinux 0x5cad8fc3 power_supply_ocv2cap_simple +EXPORT_SYMBOL_GPL vmlinux 0x5caf4e69 spi_mem_dirmap_destroy +EXPORT_SYMBOL_GPL vmlinux 0x5cbc5e16 of_genpd_remove_subdomain +EXPORT_SYMBOL_GPL vmlinux 0x5cbf8936 gpiochip_free_own_desc +EXPORT_SYMBOL_GPL vmlinux 0x5ccbb7ff fsnotify_get_group +EXPORT_SYMBOL_GPL vmlinux 0x5ce28fda led_sysfs_enable +EXPORT_SYMBOL_GPL vmlinux 0x5ce33c10 devlink_is_reload_failed +EXPORT_SYMBOL_GPL vmlinux 0x5ce61187 spi_bus_lock +EXPORT_SYMBOL_GPL vmlinux 0x5cf8bde2 of_thermal_is_trip_valid +EXPORT_SYMBOL_GPL vmlinux 0x5cf9c940 devm_of_phy_get +EXPORT_SYMBOL_GPL vmlinux 0x5d0087a7 meson_clk_pcie_pll_ops +EXPORT_SYMBOL_GPL vmlinux 0x5d17148b apei_write +EXPORT_SYMBOL_GPL vmlinux 0x5d2434c5 nf_hook_entries_delete_raw +EXPORT_SYMBOL_GPL vmlinux 0x5d34354c nf_ip_route +EXPORT_SYMBOL_GPL vmlinux 0x5d3e27dd regulator_list_voltage_pickable_linear_range +EXPORT_SYMBOL_GPL vmlinux 0x5d4f93c5 fsl_mc_cleanup_irq_pool +EXPORT_SYMBOL_GPL vmlinux 0x5d63f5f3 devlink_port_params_register +EXPORT_SYMBOL_GPL vmlinux 0x5d76332c usb_of_get_interface_node +EXPORT_SYMBOL_GPL vmlinux 0x5d76690e platform_device_alloc +EXPORT_SYMBOL_GPL vmlinux 0x5d76e074 pci_find_next_capability +EXPORT_SYMBOL_GPL vmlinux 0x5d8476d3 bpf_sk_storage_diag_alloc +EXPORT_SYMBOL_GPL vmlinux 0x5d8b96fa bdev_disk_changed +EXPORT_SYMBOL_GPL vmlinux 0x5da67adc zs_compact +EXPORT_SYMBOL_GPL vmlinux 0x5da806c3 acpi_subsys_suspend_noirq +EXPORT_SYMBOL_GPL vmlinux 0x5daaf3bb devlink_reload_disable +EXPORT_SYMBOL_GPL vmlinux 0x5de412cd k3_ringacc_ring_push +EXPORT_SYMBOL_GPL vmlinux 0x5de7447d __atomic_notifier_call_chain +EXPORT_SYMBOL_GPL vmlinux 0x5dfbb358 __hvc_resize +EXPORT_SYMBOL_GPL vmlinux 0x5e173309 cpu_cgrp_subsys_on_dfl_key +EXPORT_SYMBOL_GPL vmlinux 0x5e3d4fe3 gpiod_set_consumer_name +EXPORT_SYMBOL_GPL vmlinux 0x5e515be6 ktime_get_ts64 +EXPORT_SYMBOL_GPL vmlinux 0x5e51cd74 swiotlb_nr_tbl +EXPORT_SYMBOL_GPL vmlinux 0x5e60af2f dev_pm_opp_register_set_opp_helper +EXPORT_SYMBOL_GPL vmlinux 0x5e612a09 pin_user_pages_fast +EXPORT_SYMBOL_GPL vmlinux 0x5e615260 device_set_wakeup_enable +EXPORT_SYMBOL_GPL vmlinux 0x5e685495 crypto_unregister_kpp +EXPORT_SYMBOL_GPL vmlinux 0x5e6da935 ip6_dst_lookup_flow +EXPORT_SYMBOL_GPL vmlinux 0x5e70d373 crypto_unregister_alg +EXPORT_SYMBOL_GPL vmlinux 0x5e76bb57 k3_ringacc_ring_get_size +EXPORT_SYMBOL_GPL vmlinux 0x5e798ffb divider_get_val +EXPORT_SYMBOL_GPL vmlinux 0x5e85415b ring_buffer_consume +EXPORT_SYMBOL_GPL vmlinux 0x5eab7842 serdev_device_write_buf +EXPORT_SYMBOL_GPL vmlinux 0x5ec18779 __trace_note_message +EXPORT_SYMBOL_GPL vmlinux 0x5ec62549 ata_dev_classify +EXPORT_SYMBOL_GPL vmlinux 0x5eced7f3 bus_register +EXPORT_SYMBOL_GPL vmlinux 0x5ed35f04 tpm_pm_suspend +EXPORT_SYMBOL_GPL vmlinux 0x5ee4616a to_nd_desc +EXPORT_SYMBOL_GPL vmlinux 0x5ee90e4a mtk_pinconf_drive_set +EXPORT_SYMBOL_GPL vmlinux 0x5ef548cf mtk_eint_do_suspend +EXPORT_SYMBOL_GPL vmlinux 0x5efc1a43 srcu_batches_completed +EXPORT_SYMBOL_GPL vmlinux 0x5f23e3fa insert_resource +EXPORT_SYMBOL_GPL vmlinux 0x5f2de2c0 mbox_controller_register +EXPORT_SYMBOL_GPL vmlinux 0x5f315fdb pci_disable_ats +EXPORT_SYMBOL_GPL vmlinux 0x5f318a4e bd_link_disk_holder +EXPORT_SYMBOL_GPL vmlinux 0x5f3a7a3b stmpe_reg_read +EXPORT_SYMBOL_GPL vmlinux 0x5f48e31f phy_restart_aneg +EXPORT_SYMBOL_GPL vmlinux 0x5f4b1edd devm_reset_controller_register +EXPORT_SYMBOL_GPL vmlinux 0x5f5bfaaf nvmem_device_get +EXPORT_SYMBOL_GPL vmlinux 0x5f6c3440 __of_phy_provider_register +EXPORT_SYMBOL_GPL vmlinux 0x5f6f1e9e dax_get_private +EXPORT_SYMBOL_GPL vmlinux 0x5f6fa188 edac_device_free_ctl_info +EXPORT_SYMBOL_GPL vmlinux 0x5f72a984 dpcon_disable +EXPORT_SYMBOL_GPL vmlinux 0x5f862fde dst_cache_get_ip6 +EXPORT_SYMBOL_GPL vmlinux 0x5f8928b3 dw8250_setup_port +EXPORT_SYMBOL_GPL vmlinux 0x5f8dc83a tcp_reno_cong_avoid +EXPORT_SYMBOL_GPL vmlinux 0x5f9ed574 regulator_get_voltage_sel_regmap +EXPORT_SYMBOL_GPL vmlinux 0x5fb8848b halt_poll_ns_grow_start +EXPORT_SYMBOL_GPL vmlinux 0x5fbb5f33 fuse_dev_alloc_install +EXPORT_SYMBOL_GPL vmlinux 0x5fd42971 subsys_interface_unregister +EXPORT_SYMBOL_GPL vmlinux 0x5fdabf4c iommu_map_sg +EXPORT_SYMBOL_GPL vmlinux 0x5fe267a2 usb_hcd_pci_remove +EXPORT_SYMBOL_GPL vmlinux 0x5ffc0a16 phy_10gbit_full_features +EXPORT_SYMBOL_GPL vmlinux 0x60019704 wbt_disable_default +EXPORT_SYMBOL_GPL vmlinux 0x6003de36 of_devfreq_cooling_register_power +EXPORT_SYMBOL_GPL vmlinux 0x60069ee1 inet_ehash_locks_alloc +EXPORT_SYMBOL_GPL vmlinux 0x60091316 clk_notifier_register +EXPORT_SYMBOL_GPL vmlinux 0x600a4eb4 extcon_sync +EXPORT_SYMBOL_GPL vmlinux 0x6010d0dd regulator_set_pull_down_regmap +EXPORT_SYMBOL_GPL vmlinux 0x6014c0f2 class_dev_iter_next +EXPORT_SYMBOL_GPL vmlinux 0x601ba3eb __tracepoint_io_page_fault +EXPORT_SYMBOL_GPL vmlinux 0x602f43f4 pci_epc_start +EXPORT_SYMBOL_GPL vmlinux 0x6030b82b mmc_regulator_set_ocr +EXPORT_SYMBOL_GPL vmlinux 0x603a6a1e crypto_grab_spawn +EXPORT_SYMBOL_GPL vmlinux 0x603d0d51 acpi_os_map_iomem +EXPORT_SYMBOL_GPL vmlinux 0x60442822 phys_to_mach +EXPORT_SYMBOL_GPL vmlinux 0x604722fd devices_cgrp_subsys_enabled_key +EXPORT_SYMBOL_GPL vmlinux 0x605d5bfa cache_line_size +EXPORT_SYMBOL_GPL vmlinux 0x60626709 get_hwpoison_page +EXPORT_SYMBOL_GPL vmlinux 0x607c4683 devlink_info_version_fixed_put +EXPORT_SYMBOL_GPL vmlinux 0x60806523 i2c_acpi_get_i2c_resource +EXPORT_SYMBOL_GPL vmlinux 0x6080c31a xenbus_dev_cancel +EXPORT_SYMBOL_GPL vmlinux 0x6085f1ef devlink_region_snapshot_id_put +EXPORT_SYMBOL_GPL vmlinux 0x608acc32 devm_hwrng_register +EXPORT_SYMBOL_GPL vmlinux 0x6091797f synchronize_rcu +EXPORT_SYMBOL_GPL vmlinux 0x60a13e90 rcu_barrier +EXPORT_SYMBOL_GPL vmlinux 0x60a32daa ipv6_proxy_select_ident +EXPORT_SYMBOL_GPL vmlinux 0x60a32ea9 pm_power_off +EXPORT_SYMBOL_GPL vmlinux 0x60acc82f dma_buf_end_cpu_access +EXPORT_SYMBOL_GPL vmlinux 0x60af2471 sysfs_file_change_owner +EXPORT_SYMBOL_GPL vmlinux 0x60b2967c devm_gpio_request +EXPORT_SYMBOL_GPL vmlinux 0x60c8df40 bpf_prog_put +EXPORT_SYMBOL_GPL vmlinux 0x60ea7c3a usb_get_hcd +EXPORT_SYMBOL_GPL vmlinux 0x60eae37d gpiod_set_raw_value_cansleep +EXPORT_SYMBOL_GPL vmlinux 0x60ebc96f ring_buffer_read_prepare +EXPORT_SYMBOL_GPL vmlinux 0x60f99e1b cppc_set_perf +EXPORT_SYMBOL_GPL vmlinux 0x61051c4d spi_sync +EXPORT_SYMBOL_GPL vmlinux 0x611cfa85 klist_add_tail +EXPORT_SYMBOL_GPL vmlinux 0x6122e5e5 led_set_brightness +EXPORT_SYMBOL_GPL vmlinux 0x612348c8 ata_dev_pair +EXPORT_SYMBOL_GPL vmlinux 0x6129fb93 sfp_remove_phy +EXPORT_SYMBOL_GPL vmlinux 0x612bddb2 kvm_irq_has_notifier +EXPORT_SYMBOL_GPL vmlinux 0x612bfd89 errno_to_blk_status +EXPORT_SYMBOL_GPL vmlinux 0x612f514c of_property_read_variable_u64_array +EXPORT_SYMBOL_GPL vmlinux 0x6148da3b serial8250_handle_irq +EXPORT_SYMBOL_GPL vmlinux 0x614adcb7 of_overlay_remove_all +EXPORT_SYMBOL_GPL vmlinux 0x61512734 perf_event_read_value +EXPORT_SYMBOL_GPL vmlinux 0x616b30c7 kmsg_dump_rewind +EXPORT_SYMBOL_GPL vmlinux 0x617b026c hwrng_register +EXPORT_SYMBOL_GPL vmlinux 0x6181e79f timerqueue_add +EXPORT_SYMBOL_GPL vmlinux 0x6198dfea __ring_buffer_alloc +EXPORT_SYMBOL_GPL vmlinux 0x6199ad5d crypto_has_skcipher +EXPORT_SYMBOL_GPL vmlinux 0x61a12df6 __clk_get_hw +EXPORT_SYMBOL_GPL vmlinux 0x61ae1d2d xas_pause +EXPORT_SYMBOL_GPL vmlinux 0x61b91503 ata_bmdma_port_intr +EXPORT_SYMBOL_GPL vmlinux 0x61c83b37 power_supply_get_property +EXPORT_SYMBOL_GPL vmlinux 0x61ee181c ata_pci_device_suspend +EXPORT_SYMBOL_GPL vmlinux 0x61f67c92 phy_gbit_features_array +EXPORT_SYMBOL_GPL vmlinux 0x620243de devm_usb_get_phy_by_node +EXPORT_SYMBOL_GPL vmlinux 0x62126f46 devm_clk_bulk_get_optional +EXPORT_SYMBOL_GPL vmlinux 0x62174e49 rio_mport_initialize +EXPORT_SYMBOL_GPL vmlinux 0x62178158 of_pm_clk_add_clks +EXPORT_SYMBOL_GPL vmlinux 0x6225880a skb_segment_list +EXPORT_SYMBOL_GPL vmlinux 0x622c7922 register_oom_notifier +EXPORT_SYMBOL_GPL vmlinux 0x6232b016 iterate_mounts +EXPORT_SYMBOL_GPL vmlinux 0x62377a7b blk_io_schedule +EXPORT_SYMBOL_GPL vmlinux 0x6238b9c2 ata_link_offline +EXPORT_SYMBOL_GPL vmlinux 0x6238c8e2 housekeeping_cpumask +EXPORT_SYMBOL_GPL vmlinux 0x623a1368 irq_remove_generic_chip +EXPORT_SYMBOL_GPL vmlinux 0x623f0ffe devres_get +EXPORT_SYMBOL_GPL vmlinux 0x6246a629 synchronize_rcu_tasks_trace +EXPORT_SYMBOL_GPL vmlinux 0x6257dda7 clk_rate_exclusive_get +EXPORT_SYMBOL_GPL vmlinux 0x6259d291 clk_restore_context +EXPORT_SYMBOL_GPL vmlinux 0x625fd19f get_user_pages_fast +EXPORT_SYMBOL_GPL vmlinux 0x627500fe fuse_conn_get +EXPORT_SYMBOL_GPL vmlinux 0x6277f6ef ata_sff_check_status +EXPORT_SYMBOL_GPL vmlinux 0x628d50f3 nd_cmd_out_size +EXPORT_SYMBOL_GPL vmlinux 0x62930e5f hisi_uncore_pmu_event_update +EXPORT_SYMBOL_GPL vmlinux 0x62964c69 add_disk_randomness +EXPORT_SYMBOL_GPL vmlinux 0x62a4fbda __rtnl_link_unregister +EXPORT_SYMBOL_GPL vmlinux 0x62b470a3 gpiochip_reqres_irq +EXPORT_SYMBOL_GPL vmlinux 0x62bb09bf clocks_calc_mult_shift +EXPORT_SYMBOL_GPL vmlinux 0x62c976dc pinctrl_register +EXPORT_SYMBOL_GPL vmlinux 0x62d73d9a acpi_dma_controller_free +EXPORT_SYMBOL_GPL vmlinux 0x62d94822 of_mm_gpiochip_remove +EXPORT_SYMBOL_GPL vmlinux 0x63150e06 clk_get_parent +EXPORT_SYMBOL_GPL vmlinux 0x6318757f mdio_mux_uninit +EXPORT_SYMBOL_GPL vmlinux 0x63197685 s2idle_wake +EXPORT_SYMBOL_GPL vmlinux 0x632e8b6e pm_genpd_remove_subdomain +EXPORT_SYMBOL_GPL vmlinux 0x63358028 powercap_register_control_type +EXPORT_SYMBOL_GPL vmlinux 0x633904a7 device_node_to_regmap +EXPORT_SYMBOL_GPL vmlinux 0x634118d7 power_supply_property_is_writeable +EXPORT_SYMBOL_GPL vmlinux 0x634624a1 fsstack_copy_attr_all +EXPORT_SYMBOL_GPL vmlinux 0x6346dc23 of_genpd_del_provider +EXPORT_SYMBOL_GPL vmlinux 0x634bfbdb tty_encode_baud_rate +EXPORT_SYMBOL_GPL vmlinux 0x63578e1d skb_pull_rcsum +EXPORT_SYMBOL_GPL vmlinux 0x63637596 pid_nr_ns +EXPORT_SYMBOL_GPL vmlinux 0x636ed69c __page_mapcount +EXPORT_SYMBOL_GPL vmlinux 0x63712630 devm_clk_unregister +EXPORT_SYMBOL_GPL vmlinux 0x6385f455 wm831x_set_bits +EXPORT_SYMBOL_GPL vmlinux 0x638aff11 proc_douintvec_minmax +EXPORT_SYMBOL_GPL vmlinux 0x638c5c62 input_class +EXPORT_SYMBOL_GPL vmlinux 0x6397c891 devm_regulator_unregister +EXPORT_SYMBOL_GPL vmlinux 0x63a06ebe ata_bmdma32_port_ops +EXPORT_SYMBOL_GPL vmlinux 0x63bb292b devm_usb_get_phy_by_phandle +EXPORT_SYMBOL_GPL vmlinux 0x63c08029 clk_bulk_unprepare +EXPORT_SYMBOL_GPL vmlinux 0x63c1d80b platform_get_resource +EXPORT_SYMBOL_GPL vmlinux 0x63ea80b3 cper_mem_err_type_str +EXPORT_SYMBOL_GPL vmlinux 0x63f5b5b4 __serdev_device_driver_register +EXPORT_SYMBOL_GPL vmlinux 0x63f7033c fib6_rule_default +EXPORT_SYMBOL_GPL vmlinux 0x64017a0d edac_pci_create_generic_ctl +EXPORT_SYMBOL_GPL vmlinux 0x640ab48f for_each_kernel_tracepoint +EXPORT_SYMBOL_GPL vmlinux 0x643b06b0 zynqmp_pm_clock_setrate +EXPORT_SYMBOL_GPL vmlinux 0x64579659 devlink_region_snapshot_id_get +EXPORT_SYMBOL_GPL vmlinux 0x64675eaf kvm_vcpu_map +EXPORT_SYMBOL_GPL vmlinux 0x647537f3 pl320_ipc_register_notifier +EXPORT_SYMBOL_GPL vmlinux 0x647b5a67 pci_bridge_secondary_bus_reset +EXPORT_SYMBOL_GPL vmlinux 0x64925270 __dax_synchronous +EXPORT_SYMBOL_GPL vmlinux 0x649be67c spi_finalize_current_message +EXPORT_SYMBOL_GPL vmlinux 0x64a513ce of_dma_xlate_by_chan_id +EXPORT_SYMBOL_GPL vmlinux 0x64c41442 powercap_unregister_control_type +EXPORT_SYMBOL_GPL vmlinux 0x64c67b7c crypto_register_shash +EXPORT_SYMBOL_GPL vmlinux 0x64c848a0 sdio_writesb +EXPORT_SYMBOL_GPL vmlinux 0x64d3cc4e xas_load +EXPORT_SYMBOL_GPL vmlinux 0x64d5c560 query_asymmetric_key +EXPORT_SYMBOL_GPL vmlinux 0x64e27c4f synth_event_delete +EXPORT_SYMBOL_GPL vmlinux 0x64f36620 dax_flush +EXPORT_SYMBOL_GPL vmlinux 0x64faf25c vprintk_default +EXPORT_SYMBOL_GPL vmlinux 0x6502d9c2 xenbus_scanf +EXPORT_SYMBOL_GPL vmlinux 0x65053351 blk_poll +EXPORT_SYMBOL_GPL vmlinux 0x65067143 ahci_platform_disable_clks +EXPORT_SYMBOL_GPL vmlinux 0x650fcb3c virtio_finalize_features +EXPORT_SYMBOL_GPL vmlinux 0x651869c4 bus_get_kset +EXPORT_SYMBOL_GPL vmlinux 0x6537bb72 __page_file_index +EXPORT_SYMBOL_GPL vmlinux 0x654444ae inet6_lookup +EXPORT_SYMBOL_GPL vmlinux 0x65450309 irq_domain_set_hwirq_and_chip +EXPORT_SYMBOL_GPL vmlinux 0x654ec27f xhci_run +EXPORT_SYMBOL_GPL vmlinux 0x65511ca6 wm5102_spi_regmap +EXPORT_SYMBOL_GPL vmlinux 0x655e4879 __irq_alloc_descs +EXPORT_SYMBOL_GPL vmlinux 0x657e0e2c iomap_finish_ioends +EXPORT_SYMBOL_GPL vmlinux 0x659bfddc dm_internal_resume +EXPORT_SYMBOL_GPL vmlinux 0x659e63f8 tracepoint_probe_register +EXPORT_SYMBOL_GPL vmlinux 0x65a17b34 fwnode_graph_get_remote_node +EXPORT_SYMBOL_GPL vmlinux 0x65ccb6f0 call_netevent_notifiers +EXPORT_SYMBOL_GPL vmlinux 0x65db4d36 fib6_get_table +EXPORT_SYMBOL_GPL vmlinux 0x65e01af9 __sync_icache_dcache +EXPORT_SYMBOL_GPL vmlinux 0x65e8caeb phy_modify +EXPORT_SYMBOL_GPL vmlinux 0x65ebc500 usb_hub_find_child +EXPORT_SYMBOL_GPL vmlinux 0x65fd7c74 percpu_free_rwsem +EXPORT_SYMBOL_GPL vmlinux 0x6608e6c1 fb_bl_default_curve +EXPORT_SYMBOL_GPL vmlinux 0x661601de sprint_symbol +EXPORT_SYMBOL_GPL vmlinux 0x6636c3c9 irq_set_vcpu_affinity +EXPORT_SYMBOL_GPL vmlinux 0x663bb448 devlink_fmsg_obj_nest_end +EXPORT_SYMBOL_GPL vmlinux 0x663ee88c crypto_stats_akcipher_decrypt +EXPORT_SYMBOL_GPL vmlinux 0x664eb54a k3_ringacc_ring_reset_dma +EXPORT_SYMBOL_GPL vmlinux 0x6656ee49 page_reporting_register +EXPORT_SYMBOL_GPL vmlinux 0x665d7558 dmaengine_desc_get_metadata_ptr +EXPORT_SYMBOL_GPL vmlinux 0x665e92a0 clk_set_duty_cycle +EXPORT_SYMBOL_GPL vmlinux 0x665ed5bf regulator_set_current_limit_regmap +EXPORT_SYMBOL_GPL vmlinux 0x6660f4bf set_secondary_fwnode +EXPORT_SYMBOL_GPL vmlinux 0x666b755a __tracepoint_xdp_exception +EXPORT_SYMBOL_GPL vmlinux 0x6683f326 crypto_stats_rng_seed +EXPORT_SYMBOL_GPL vmlinux 0x668402aa crypto_put_default_rng +EXPORT_SYMBOL_GPL vmlinux 0x6698e716 fuse_abort_conn +EXPORT_SYMBOL_GPL vmlinux 0x66a6c061 tracepoint_probe_register_prio +EXPORT_SYMBOL_GPL vmlinux 0x66a81df4 ata_sas_port_start +EXPORT_SYMBOL_GPL vmlinux 0x66b53918 rtc_read_time +EXPORT_SYMBOL_GPL vmlinux 0x66b97421 sfp_link_up +EXPORT_SYMBOL_GPL vmlinux 0x66bcf85a aead_register_instance +EXPORT_SYMBOL_GPL vmlinux 0x66c16503 rio_route_clr_table +EXPORT_SYMBOL_GPL vmlinux 0x66cb629b usb_disable_ltm +EXPORT_SYMBOL_GPL vmlinux 0x66cbcaf4 pci_disable_rom +EXPORT_SYMBOL_GPL vmlinux 0x66d87d38 symbol_put_addr +EXPORT_SYMBOL_GPL vmlinux 0x66dae379 devm_otg_ulpi_create +EXPORT_SYMBOL_GPL vmlinux 0x66f37280 pci_disable_pri +EXPORT_SYMBOL_GPL vmlinux 0x66fa1775 kvm_vcpu_wake_up +EXPORT_SYMBOL_GPL vmlinux 0x670da364 dev_pm_opp_put_regulators +EXPORT_SYMBOL_GPL vmlinux 0x67235e1a memremap_pages +EXPORT_SYMBOL_GPL vmlinux 0x6727aa97 ata_pci_sff_init_one +EXPORT_SYMBOL_GPL vmlinux 0x6735d56e tcp_ca_get_name_by_key +EXPORT_SYMBOL_GPL vmlinux 0x6739a503 balloon_set_new_target +EXPORT_SYMBOL_GPL vmlinux 0x6769f9e6 da903x_clr_bits +EXPORT_SYMBOL_GPL vmlinux 0x676c688f k3_ringacc_ring_free +EXPORT_SYMBOL_GPL vmlinux 0x676d9e33 vfs_removexattr +EXPORT_SYMBOL_GPL vmlinux 0x67718b65 pm_runtime_barrier +EXPORT_SYMBOL_GPL vmlinux 0x6778981a otg_ulpi_create +EXPORT_SYMBOL_GPL vmlinux 0x677b4190 fat_flush_inodes +EXPORT_SYMBOL_GPL vmlinux 0x67824883 dev_pm_opp_remove_table +EXPORT_SYMBOL_GPL vmlinux 0x678c33b5 dma_run_dependencies +EXPORT_SYMBOL_GPL vmlinux 0x6792e25a __tracepoint_unmap +EXPORT_SYMBOL_GPL vmlinux 0x67955ce6 profile_hits +EXPORT_SYMBOL_GPL vmlinux 0x67a18841 pm_runtime_force_resume +EXPORT_SYMBOL_GPL vmlinux 0x67a8dd6a arizona_of_get_type +EXPORT_SYMBOL_GPL vmlinux 0x67b7856e bpf_prog_free +EXPORT_SYMBOL_GPL vmlinux 0x67da9f7c sha512_zero_message_hash +EXPORT_SYMBOL_GPL vmlinux 0x67fbe59e mmu_interval_notifier_remove +EXPORT_SYMBOL_GPL vmlinux 0x68248154 power_supply_changed +EXPORT_SYMBOL_GPL vmlinux 0x68263d99 pci_sriov_configure_simple +EXPORT_SYMBOL_GPL vmlinux 0x682ff057 ring_buffer_commit_overrun_cpu +EXPORT_SYMBOL_GPL vmlinux 0x6833adc1 uart_try_toggle_sysrq +EXPORT_SYMBOL_GPL vmlinux 0x683ab55f virtqueue_disable_cb +EXPORT_SYMBOL_GPL vmlinux 0x68425019 gpiochip_irq_unmap +EXPORT_SYMBOL_GPL vmlinux 0x6844c419 regulator_enable_regmap +EXPORT_SYMBOL_GPL vmlinux 0x684ca117 zynqmp_pm_get_pll_frac_mode +EXPORT_SYMBOL_GPL vmlinux 0x68543a3b usb_enable_autosuspend +EXPORT_SYMBOL_GPL vmlinux 0x6869c8eb unregister_kprobes +EXPORT_SYMBOL_GPL vmlinux 0x68766390 rio_dma_prep_slave_sg +EXPORT_SYMBOL_GPL vmlinux 0x6882c886 blk_mq_init_queue_data +EXPORT_SYMBOL_GPL vmlinux 0x68889e71 fwnode_get_next_child_node +EXPORT_SYMBOL_GPL vmlinux 0x688950ad ip6_route_output_flags +EXPORT_SYMBOL_GPL vmlinux 0x6892e3c3 kvm_set_pfn_accessed +EXPORT_SYMBOL_GPL vmlinux 0x68952493 rcu_note_context_switch +EXPORT_SYMBOL_GPL vmlinux 0x689844c2 phy_put +EXPORT_SYMBOL_GPL vmlinux 0x68a8c7dd ata_platform_remove_one +EXPORT_SYMBOL_GPL vmlinux 0x68ad3d26 mtk_pinconf_bias_disable_get_rev1 +EXPORT_SYMBOL_GPL vmlinux 0x68c0a1a9 devm_phy_package_join +EXPORT_SYMBOL_GPL vmlinux 0x68ca5226 irq_get_domain_generic_chip +EXPORT_SYMBOL_GPL vmlinux 0x68d94361 mmc_app_cmd +EXPORT_SYMBOL_GPL vmlinux 0x68dba123 __clk_hw_register_fixed_rate +EXPORT_SYMBOL_GPL vmlinux 0x68e86673 exportfs_encode_inode_fh +EXPORT_SYMBOL_GPL vmlinux 0x68f26ae7 cpufreq_unregister_governor +EXPORT_SYMBOL_GPL vmlinux 0x6903fb9a crypto_stats_aead_decrypt +EXPORT_SYMBOL_GPL vmlinux 0x690f585e phy_basic_ports_array +EXPORT_SYMBOL_GPL vmlinux 0x692514dc rt_mutex_timed_lock +EXPORT_SYMBOL_GPL vmlinux 0x692c5a7f irq_get_irq_data +EXPORT_SYMBOL_GPL vmlinux 0x69345eff ip_valid_fib_dump_req +EXPORT_SYMBOL_GPL vmlinux 0x694957e2 devm_regulator_register_supply_alias +EXPORT_SYMBOL_GPL vmlinux 0x694a0602 ata_port_pbar_desc +EXPORT_SYMBOL_GPL vmlinux 0x694ce030 firmware_kobj +EXPORT_SYMBOL_GPL vmlinux 0x69505134 phy_init +EXPORT_SYMBOL_GPL vmlinux 0x6957238c i2c_add_numbered_adapter +EXPORT_SYMBOL_GPL vmlinux 0x6958ae23 dax_get_by_host +EXPORT_SYMBOL_GPL vmlinux 0x695c64fa of_genpd_add_device +EXPORT_SYMBOL_GPL vmlinux 0x69625bbe set_foreign_p2m_mapping +EXPORT_SYMBOL_GPL vmlinux 0x69633b98 __netdev_watchdog_up +EXPORT_SYMBOL_GPL vmlinux 0x696340a5 __i2c_board_lock +EXPORT_SYMBOL_GPL vmlinux 0x696f2b63 of_changeset_init +EXPORT_SYMBOL_GPL vmlinux 0x697c5d0d tracing_snapshot_alloc +EXPORT_SYMBOL_GPL vmlinux 0x698061e0 metadata_dst_free +EXPORT_SYMBOL_GPL vmlinux 0x69846b4b iommu_device_sysfs_add +EXPORT_SYMBOL_GPL vmlinux 0x69922313 __bio_add_page +EXPORT_SYMBOL_GPL vmlinux 0x69a0f3e1 devm_platform_ioremap_resource +EXPORT_SYMBOL_GPL vmlinux 0x69b18bdd pm_runtime_suspended_time +EXPORT_SYMBOL_GPL vmlinux 0x69d9de5c inet_csk_route_child_sock +EXPORT_SYMBOL_GPL vmlinux 0x69db3110 sata_link_debounce +EXPORT_SYMBOL_GPL vmlinux 0x69e683de uuid_gen +EXPORT_SYMBOL_GPL vmlinux 0x69ee2220 linear_range_get_selector_high +EXPORT_SYMBOL_GPL vmlinux 0x69ef2377 dma_get_required_mask +EXPORT_SYMBOL_GPL vmlinux 0x69f55a05 vcpu_load +EXPORT_SYMBOL_GPL vmlinux 0x6a05b65b fb_videomode_from_videomode +EXPORT_SYMBOL_GPL vmlinux 0x6a1733eb iommu_group_unregister_notifier +EXPORT_SYMBOL_GPL vmlinux 0x6a204849 regulator_map_voltage_pickable_linear_range +EXPORT_SYMBOL_GPL vmlinux 0x6a330008 pci_user_write_config_word +EXPORT_SYMBOL_GPL vmlinux 0x6a35633c spi_mem_adjust_op_size +EXPORT_SYMBOL_GPL vmlinux 0x6a421062 memory_failure_queue +EXPORT_SYMBOL_GPL vmlinux 0x6a460dc5 schedule_hrtimeout +EXPORT_SYMBOL_GPL vmlinux 0x6a4a331e pci_find_next_ext_capability +EXPORT_SYMBOL_GPL vmlinux 0x6a4c2adc k3_udma_glue_push_tx_chn +EXPORT_SYMBOL_GPL vmlinux 0x6a4f623b mmu_notifier_synchronize +EXPORT_SYMBOL_GPL vmlinux 0x6a5e2bde __cookie_v6_init_sequence +EXPORT_SYMBOL_GPL vmlinux 0x6a6bbe94 sysfs_create_files +EXPORT_SYMBOL_GPL vmlinux 0x6a6bf3ed dev_pm_opp_set_regulators +EXPORT_SYMBOL_GPL vmlinux 0x6a6dda44 serdev_device_write_wakeup +EXPORT_SYMBOL_GPL vmlinux 0x6a7391a8 dw_pcie_ep_init +EXPORT_SYMBOL_GPL vmlinux 0x6a759e2b dst_cache_get_ip4 +EXPORT_SYMBOL_GPL vmlinux 0x6a798437 usb_choose_configuration +EXPORT_SYMBOL_GPL vmlinux 0x6a8441be cpci_hp_start +EXPORT_SYMBOL_GPL vmlinux 0x6a846cf4 page_endio +EXPORT_SYMBOL_GPL vmlinux 0x6aa2a877 xenbus_printf +EXPORT_SYMBOL_GPL vmlinux 0x6aad9152 xen_set_callback_via +EXPORT_SYMBOL_GPL vmlinux 0x6aaf0f63 da9052_regmap_config +EXPORT_SYMBOL_GPL vmlinux 0x6aca50b9 __audit_inode_child +EXPORT_SYMBOL_GPL vmlinux 0x6ae05326 blk_mq_pci_map_queues +EXPORT_SYMBOL_GPL vmlinux 0x6af55d40 fscrypt_ioctl_get_policy_ex +EXPORT_SYMBOL_GPL vmlinux 0x6afe86bc sched_trace_cfs_rq_cpu +EXPORT_SYMBOL_GPL vmlinux 0x6b0dc565 xen_set_irq_priority +EXPORT_SYMBOL_GPL vmlinux 0x6b22926b irq_work_sync +EXPORT_SYMBOL_GPL vmlinux 0x6b2b69f7 static_key_enable +EXPORT_SYMBOL_GPL vmlinux 0x6b3ae022 acpi_os_unmap_iomem +EXPORT_SYMBOL_GPL vmlinux 0x6b4045ee zynqmp_pm_get_api_version +EXPORT_SYMBOL_GPL vmlinux 0x6b413c9b sfp_link_down +EXPORT_SYMBOL_GPL vmlinux 0x6b477707 ehci_suspend +EXPORT_SYMBOL_GPL vmlinux 0x6b50b4b3 device_rename +EXPORT_SYMBOL_GPL vmlinux 0x6b77d553 sdio_retune_release +EXPORT_SYMBOL_GPL vmlinux 0x6b8133e9 usb_driver_release_interface +EXPORT_SYMBOL_GPL vmlinux 0x6b81c38b power_supply_unreg_notifier +EXPORT_SYMBOL_GPL vmlinux 0x6b834121 bman_portals_probed +EXPORT_SYMBOL_GPL vmlinux 0x6b857fd7 devfreq_event_reset_event +EXPORT_SYMBOL_GPL vmlinux 0x6b8daceb fat_get_dotdot_entry +EXPORT_SYMBOL_GPL vmlinux 0x6b969e16 task_cls_state +EXPORT_SYMBOL_GPL vmlinux 0x6b9a71fd __rtnl_link_register +EXPORT_SYMBOL_GPL vmlinux 0x6ba36c6a hwpoison_filter_flags_value +EXPORT_SYMBOL_GPL vmlinux 0x6ba521f7 em_register_perf_domain +EXPORT_SYMBOL_GPL vmlinux 0x6ba5b1b9 clk_hw_get_rate +EXPORT_SYMBOL_GPL vmlinux 0x6baaafbf devm_request_pci_bus_resources +EXPORT_SYMBOL_GPL vmlinux 0x6bbba728 __irq_domain_add +EXPORT_SYMBOL_GPL vmlinux 0x6bbf849c thermal_remove_hwmon_sysfs +EXPORT_SYMBOL_GPL vmlinux 0x6bd1aa56 stack_trace_save +EXPORT_SYMBOL_GPL vmlinux 0x6bdadadd usb_hcd_pci_pm_ops +EXPORT_SYMBOL_GPL vmlinux 0x6bdef35c acpi_ec_mark_gpe_for_wake +EXPORT_SYMBOL_GPL vmlinux 0x6bea38ce iommu_device_register +EXPORT_SYMBOL_GPL vmlinux 0x6bfd495f mmu_interval_read_begin +EXPORT_SYMBOL_GPL vmlinux 0x6c065942 __cpufreq_driver_target +EXPORT_SYMBOL_GPL vmlinux 0x6c095f85 vfs_test_lock +EXPORT_SYMBOL_GPL vmlinux 0x6c247190 xenbus_dev_resume +EXPORT_SYMBOL_GPL vmlinux 0x6c389761 acpi_bus_get_private_data +EXPORT_SYMBOL_GPL vmlinux 0x6c38cebb tcp_sendpage_locked +EXPORT_SYMBOL_GPL vmlinux 0x6c3b612b acpi_ec_add_query_handler +EXPORT_SYMBOL_GPL vmlinux 0x6c3dca9e dm_internal_resume_fast +EXPORT_SYMBOL_GPL vmlinux 0x6c3f70e0 guid_gen +EXPORT_SYMBOL_GPL vmlinux 0x6c405e8a amba_ahb_device_add_res +EXPORT_SYMBOL_GPL vmlinux 0x6c4b6684 reset_control_assert +EXPORT_SYMBOL_GPL vmlinux 0x6c617bb3 devm_acpi_dev_remove_driver_gpios +EXPORT_SYMBOL_GPL vmlinux 0x6c655913 register_acpi_hed_notifier +EXPORT_SYMBOL_GPL vmlinux 0x6c66bc68 gpiochip_irqchip_add_key +EXPORT_SYMBOL_GPL vmlinux 0x6c6ad10e __inet_twsk_schedule +EXPORT_SYMBOL_GPL vmlinux 0x6c6e8e41 crypto_unregister_template +EXPORT_SYMBOL_GPL vmlinux 0x6c77d0df dev_pm_opp_of_register_em +EXPORT_SYMBOL_GPL vmlinux 0x6c8a3000 tpm_chip_unregister +EXPORT_SYMBOL_GPL vmlinux 0x6ca4bf88 async_synchronize_full_domain +EXPORT_SYMBOL_GPL vmlinux 0x6cacc78f regcache_drop_region +EXPORT_SYMBOL_GPL vmlinux 0x6cb0ce87 irq_get_percpu_devid_partition +EXPORT_SYMBOL_GPL vmlinux 0x6cb651bd blk_mq_free_request +EXPORT_SYMBOL_GPL vmlinux 0x6cbb04f8 blk_mq_sched_request_inserted +EXPORT_SYMBOL_GPL vmlinux 0x6cbccc66 devm_request_free_mem_region +EXPORT_SYMBOL_GPL vmlinux 0x6cccb73b of_property_read_u64_index +EXPORT_SYMBOL_GPL vmlinux 0x6cce49aa tpm_tis_resume +EXPORT_SYMBOL_GPL vmlinux 0x6ce06db2 crypto_stats_ahash_update +EXPORT_SYMBOL_GPL vmlinux 0x6ce10eb0 trace_clock_jiffies +EXPORT_SYMBOL_GPL vmlinux 0x6cf0ee82 of_thermal_get_ntrips +EXPORT_SYMBOL_GPL vmlinux 0x6d0ae550 pinctrl_gpio_request +EXPORT_SYMBOL_GPL vmlinux 0x6d161467 sdio_writew +EXPORT_SYMBOL_GPL vmlinux 0x6d164837 pinctrl_generic_get_group_pins +EXPORT_SYMBOL_GPL vmlinux 0x6d20ee5e led_put +EXPORT_SYMBOL_GPL vmlinux 0x6d2fc5a6 net_namespace_list +EXPORT_SYMBOL_GPL vmlinux 0x6d4e7cd4 rpi_firmware_get +EXPORT_SYMBOL_GPL vmlinux 0x6d63a861 nvdimm_bus_unregister +EXPORT_SYMBOL_GPL vmlinux 0x6d6fec1f ktime_mono_to_any +EXPORT_SYMBOL_GPL vmlinux 0x6d742428 do_tcp_sendpages +EXPORT_SYMBOL_GPL vmlinux 0x6d78105e devlink_flash_update_status_notify +EXPORT_SYMBOL_GPL vmlinux 0x6d7e951e rcu_exp_batches_completed +EXPORT_SYMBOL_GPL vmlinux 0x6d841f70 irq_domain_free_irqs_parent +EXPORT_SYMBOL_GPL vmlinux 0x6d9655ce acpi_pm_set_device_wakeup +EXPORT_SYMBOL_GPL vmlinux 0x6d9ee2a0 __request_percpu_irq +EXPORT_SYMBOL_GPL vmlinux 0x6daf5539 edac_pci_del_device +EXPORT_SYMBOL_GPL vmlinux 0x6db0a0be genphy_c45_read_status +EXPORT_SYMBOL_GPL vmlinux 0x6db12dfe __phy_modify +EXPORT_SYMBOL_GPL vmlinux 0x6dbaafd3 put_old_timespec32 +EXPORT_SYMBOL_GPL vmlinux 0x6dda761c dw_pcie_link_set_n_fts +EXPORT_SYMBOL_GPL vmlinux 0x6de0ce06 of_phy_simple_xlate +EXPORT_SYMBOL_GPL vmlinux 0x6defd01e iommu_present +EXPORT_SYMBOL_GPL vmlinux 0x6df2a6ac genpd_dev_pm_attach +EXPORT_SYMBOL_GPL vmlinux 0x6df84afa usb_debug_root +EXPORT_SYMBOL_GPL vmlinux 0x6dfac486 generic_fh_to_parent +EXPORT_SYMBOL_GPL vmlinux 0x6dfb013f icc_provider_add +EXPORT_SYMBOL_GPL vmlinux 0x6dfd92c8 fat_setattr +EXPORT_SYMBOL_GPL vmlinux 0x6e13fc5a rio_bus_type +EXPORT_SYMBOL_GPL vmlinux 0x6e18e7ad extcon_get_edev_by_phandle +EXPORT_SYMBOL_GPL vmlinux 0x6e252b94 switchdev_handle_port_attr_set +EXPORT_SYMBOL_GPL vmlinux 0x6e280874 crypto_unregister_shashes +EXPORT_SYMBOL_GPL vmlinux 0x6e2c62dd k3_ringacc_ring_cfg +EXPORT_SYMBOL_GPL vmlinux 0x6e36e483 tps6586x_irq_get_virq +EXPORT_SYMBOL_GPL vmlinux 0x6e3ff83a edac_device_alloc_index +EXPORT_SYMBOL_GPL vmlinux 0x6e4aa78d k3_udma_glue_rx_flow_enable +EXPORT_SYMBOL_GPL vmlinux 0x6e4bc056 spi_res_free +EXPORT_SYMBOL_GPL vmlinux 0x6e4cd33f device_pm_wait_for_dev +EXPORT_SYMBOL_GPL vmlinux 0x6e5f9543 nvdimm_name +EXPORT_SYMBOL_GPL vmlinux 0x6e612cda kvm_get_running_vcpu +EXPORT_SYMBOL_GPL vmlinux 0x6e766646 fscrypt_ioctl_remove_key +EXPORT_SYMBOL_GPL vmlinux 0x6e7943ec iommu_group_id +EXPORT_SYMBOL_GPL vmlinux 0x6e86d285 ata_sas_queuecmd +EXPORT_SYMBOL_GPL vmlinux 0x6e89a560 regmap_irq_chip_get_base +EXPORT_SYMBOL_GPL vmlinux 0x6e8f4af2 stmpe_block_read +EXPORT_SYMBOL_GPL vmlinux 0x6e9ab7cd ata_dev_next +EXPORT_SYMBOL_GPL vmlinux 0x6ea0ff55 devm_hwspin_lock_free +EXPORT_SYMBOL_GPL vmlinux 0x6eb6fe17 compat_only_sysfs_link_entry_to_kobj +EXPORT_SYMBOL_GPL vmlinux 0x6ebe366f ktime_get_mono_fast_ns +EXPORT_SYMBOL_GPL vmlinux 0x6ec5fff5 kill_device +EXPORT_SYMBOL_GPL vmlinux 0x6ed07aab clean_acked_data_disable +EXPORT_SYMBOL_GPL vmlinux 0x6ed7235f inet6_sk_rebuild_header +EXPORT_SYMBOL_GPL vmlinux 0x6ee8c94b sfp_get_module_eeprom +EXPORT_SYMBOL_GPL vmlinux 0x6eed924d regulator_set_suspend_voltage +EXPORT_SYMBOL_GPL vmlinux 0x6ef6b54f ktime_get_boot_fast_ns +EXPORT_SYMBOL_GPL vmlinux 0x6ef7606d __efivar_entry_iter +EXPORT_SYMBOL_GPL vmlinux 0x6f08afd2 fixed_phy_change_carrier +EXPORT_SYMBOL_GPL vmlinux 0x6f12560a get_old_timespec32 +EXPORT_SYMBOL_GPL vmlinux 0x6f36ead0 devlink_sb_register +EXPORT_SYMBOL_GPL vmlinux 0x6f638666 devres_open_group +EXPORT_SYMBOL_GPL vmlinux 0x6f71d87f alarmtimer_get_rtcdev +EXPORT_SYMBOL_GPL vmlinux 0x6f806f99 perf_event_disable +EXPORT_SYMBOL_GPL vmlinux 0x6f91a59c devlink_trap_report +EXPORT_SYMBOL_GPL vmlinux 0x6f92ae74 blk_stat_enable_accounting +EXPORT_SYMBOL_GPL vmlinux 0x6f9e763b timecounter_read +EXPORT_SYMBOL_GPL vmlinux 0x6fb0586c regulator_map_voltage_linear +EXPORT_SYMBOL_GPL vmlinux 0x6fcd1036 blk_rq_prep_clone +EXPORT_SYMBOL_GPL vmlinux 0x6fcef6ab ring_buffer_reset +EXPORT_SYMBOL_GPL vmlinux 0x6fd6809e dev_pm_qos_expose_latency_limit +EXPORT_SYMBOL_GPL vmlinux 0x6fd737c1 ip6_sk_dst_lookup_flow +EXPORT_SYMBOL_GPL vmlinux 0x6ff01609 __regmap_init_i2c +EXPORT_SYMBOL_GPL vmlinux 0x6ff353fc kgdb_register_io_module +EXPORT_SYMBOL_GPL vmlinux 0x6ff607b6 crypto_get_default_rng +EXPORT_SYMBOL_GPL vmlinux 0x7006586e iommu_get_group_resv_regions +EXPORT_SYMBOL_GPL vmlinux 0x700a4be6 kvm_vcpu_on_spin +EXPORT_SYMBOL_GPL vmlinux 0x701f3c2b hwmon_notify_event +EXPORT_SYMBOL_GPL vmlinux 0x7033905f mmc_switch +EXPORT_SYMBOL_GPL vmlinux 0x703399a8 of_pci_address_to_resource +EXPORT_SYMBOL_GPL vmlinux 0x70357562 sata_link_scr_lpm +EXPORT_SYMBOL_GPL vmlinux 0x7056c93e driver_create_file +EXPORT_SYMBOL_GPL vmlinux 0x70610dd4 call_srcu +EXPORT_SYMBOL_GPL vmlinux 0x7068b833 pm_runtime_autosuspend_expiration +EXPORT_SYMBOL_GPL vmlinux 0x7070a9c4 dev_attr_sw_activity +EXPORT_SYMBOL_GPL vmlinux 0x7073c04f phy_10_100_features_array +EXPORT_SYMBOL_GPL vmlinux 0x7083e9c0 noop_invalidatepage +EXPORT_SYMBOL_GPL vmlinux 0x70869f07 mbox_free_channel +EXPORT_SYMBOL_GPL vmlinux 0x708c0594 regulator_disable_deferred +EXPORT_SYMBOL_GPL vmlinux 0x708f5de2 fsl_mc_driver_unregister +EXPORT_SYMBOL_GPL vmlinux 0x70967a53 PageHuge +EXPORT_SYMBOL_GPL vmlinux 0x70a1ef67 blk_queue_set_zoned +EXPORT_SYMBOL_GPL vmlinux 0x70aca1b1 dmaengine_desc_attach_metadata +EXPORT_SYMBOL_GPL vmlinux 0x70acfffa tcp_get_syncookie_mss +EXPORT_SYMBOL_GPL vmlinux 0x70b105ff to_nvdimm_bus +EXPORT_SYMBOL_GPL vmlinux 0x70b7c07a gnttab_grant_foreign_transfer +EXPORT_SYMBOL_GPL vmlinux 0x70bae37f kobject_uevent_env +EXPORT_SYMBOL_GPL vmlinux 0x70bca0ab platform_get_irq_byname_optional +EXPORT_SYMBOL_GPL vmlinux 0x70bd3d95 fixed_phy_set_link_update +EXPORT_SYMBOL_GPL vmlinux 0x70c18b1f sbitmap_queue_show +EXPORT_SYMBOL_GPL vmlinux 0x70c2c7ea pids_cgrp_subsys_on_dfl_key +EXPORT_SYMBOL_GPL vmlinux 0x70c52dc5 nf_skb_duplicated +EXPORT_SYMBOL_GPL vmlinux 0x70cf032f usb_hcd_irq +EXPORT_SYMBOL_GPL vmlinux 0x70d42dfa wm831x_regmap_config +EXPORT_SYMBOL_GPL vmlinux 0x70da534a gnttab_unmap_refs_async +EXPORT_SYMBOL_GPL vmlinux 0x70da5fb1 bpf_trace_run2 +EXPORT_SYMBOL_GPL vmlinux 0x70db89ec cpci_hp_unregister_bus +EXPORT_SYMBOL_GPL vmlinux 0x70e0c846 get_kernel_page +EXPORT_SYMBOL_GPL vmlinux 0x70eaf47e rio_request_inb_mbox +EXPORT_SYMBOL_GPL vmlinux 0x70fa5dc5 thermal_zone_of_get_sensor_id +EXPORT_SYMBOL_GPL vmlinux 0x7101ed4f mm_kobj +EXPORT_SYMBOL_GPL vmlinux 0x710a5684 badblocks_show +EXPORT_SYMBOL_GPL vmlinux 0x710c73b6 crypto_unregister_notifier +EXPORT_SYMBOL_GPL vmlinux 0x7113a672 mddev_init_writes_pending +EXPORT_SYMBOL_GPL vmlinux 0x712d367c of_reserved_mem_device_release +EXPORT_SYMBOL_GPL vmlinux 0x71316503 kmsg_dump_get_line +EXPORT_SYMBOL_GPL vmlinux 0x713311dd wait_on_page_writeback +EXPORT_SYMBOL_GPL vmlinux 0x713f0850 fwnode_property_read_string_array +EXPORT_SYMBOL_GPL vmlinux 0x7143f146 __devm_reset_control_get +EXPORT_SYMBOL_GPL vmlinux 0x7148b8de spi_statistics_add_transfer_stats +EXPORT_SYMBOL_GPL vmlinux 0x7155adcd of_device_uevent_modalias +EXPORT_SYMBOL_GPL vmlinux 0x716265c7 debugfs_initialized +EXPORT_SYMBOL_GPL vmlinux 0x71650819 add_bootloader_randomness +EXPORT_SYMBOL_GPL vmlinux 0x716c9bcc xfrm_state_afinfo_get_rcu +EXPORT_SYMBOL_GPL vmlinux 0x71753c0b regmap_test_bits +EXPORT_SYMBOL_GPL vmlinux 0x71819086 usb_autopm_get_interface_async +EXPORT_SYMBOL_GPL vmlinux 0x7181db30 atomic_notifier_chain_unregister +EXPORT_SYMBOL_GPL vmlinux 0x718c8cad wm831x_reg_read +EXPORT_SYMBOL_GPL vmlinux 0x719778e8 thermal_notify_framework +EXPORT_SYMBOL_GPL vmlinux 0x719e17ff clk_notifier_unregister +EXPORT_SYMBOL_GPL vmlinux 0x71b5727d regulator_bulk_enable +EXPORT_SYMBOL_GPL vmlinux 0x71b687ed __acpi_node_get_property_reference +EXPORT_SYMBOL_GPL vmlinux 0x71b6fe98 __fsnotify_inode_delete +EXPORT_SYMBOL_GPL vmlinux 0x71cd848c pinctrl_pm_select_idle_state +EXPORT_SYMBOL_GPL vmlinux 0x71dd5f56 spi_slave_abort +EXPORT_SYMBOL_GPL vmlinux 0x71ed2181 cpufreq_frequency_table_get_index +EXPORT_SYMBOL_GPL vmlinux 0x71f479a4 of_clk_set_defaults +EXPORT_SYMBOL_GPL vmlinux 0x71f6670b __cookie_v6_check +EXPORT_SYMBOL_GPL vmlinux 0x71ffa99d wm831x_auxadc_read_uv +EXPORT_SYMBOL_GPL vmlinux 0x72065dd3 skb_copy_ubufs +EXPORT_SYMBOL_GPL vmlinux 0x7227e90f bpf_sk_storage_diag_put +EXPORT_SYMBOL_GPL vmlinux 0x72338aa5 i2c_detect_slave_mode +EXPORT_SYMBOL_GPL vmlinux 0x725ef455 dpm_for_each_dev +EXPORT_SYMBOL_GPL vmlinux 0x726e05ac ip_route_output_key_hash +EXPORT_SYMBOL_GPL vmlinux 0x7278d328 all_vm_events +EXPORT_SYMBOL_GPL vmlinux 0x7293461a mmc_abort_tuning +EXPORT_SYMBOL_GPL vmlinux 0x72b0072f pci_vfs_assigned +EXPORT_SYMBOL_GPL vmlinux 0x72b924c9 gpiochip_irqchip_irq_valid +EXPORT_SYMBOL_GPL vmlinux 0x72c1aeeb __tracepoint_map +EXPORT_SYMBOL_GPL vmlinux 0x72c427ec ahci_platform_get_resources +EXPORT_SYMBOL_GPL vmlinux 0x72c5fd8e devlink_resource_size_get +EXPORT_SYMBOL_GPL vmlinux 0x72cb842e fuse_dev_release +EXPORT_SYMBOL_GPL vmlinux 0x72d267dc nvmem_del_cell_lookups +EXPORT_SYMBOL_GPL vmlinux 0x72e9ed8c sync_page_io +EXPORT_SYMBOL_GPL vmlinux 0x72f48fdf ata_sff_data_xfer32 +EXPORT_SYMBOL_GPL vmlinux 0x7313b4ac spi_delay_to_ns +EXPORT_SYMBOL_GPL vmlinux 0x73217d64 device_create_file +EXPORT_SYMBOL_GPL vmlinux 0x73242dcd cpu_set_feature +EXPORT_SYMBOL_GPL vmlinux 0x732852fe xenbus_transaction_end +EXPORT_SYMBOL_GPL vmlinux 0x734021e6 dm_disk +EXPORT_SYMBOL_GPL vmlinux 0x73535819 irqchip_fwnode_ops +EXPORT_SYMBOL_GPL vmlinux 0x73623b16 vring_transport_features +EXPORT_SYMBOL_GPL vmlinux 0x73758617 iommu_dev_feature_enabled +EXPORT_SYMBOL_GPL vmlinux 0x737f5163 subsys_system_register +EXPORT_SYMBOL_GPL vmlinux 0x7381287f trace_handle_return +EXPORT_SYMBOL_GPL vmlinux 0x7381bcdd of_usb_host_tpl_support +EXPORT_SYMBOL_GPL vmlinux 0x738b865b rio_get_asm +EXPORT_SYMBOL_GPL vmlinux 0x738d53e8 tcp_cong_avoid_ai +EXPORT_SYMBOL_GPL vmlinux 0x73949a7d regmap_bulk_write +EXPORT_SYMBOL_GPL vmlinux 0x73a48b4a ata_sff_std_ports +EXPORT_SYMBOL_GPL vmlinux 0x73b7e201 devm_device_remove_groups +EXPORT_SYMBOL_GPL vmlinux 0x73c2554f __iowrite64_copy +EXPORT_SYMBOL_GPL vmlinux 0x73cc8631 oiap +EXPORT_SYMBOL_GPL vmlinux 0x73d17bce usb_unlink_urb +EXPORT_SYMBOL_GPL vmlinux 0x73e3c167 rt_mutex_trylock +EXPORT_SYMBOL_GPL vmlinux 0x73f3e0cb rio_pw_enable +EXPORT_SYMBOL_GPL vmlinux 0x73ff93f0 devlink_params_unpublish +EXPORT_SYMBOL_GPL vmlinux 0x740427ea fs_dax_get_by_bdev +EXPORT_SYMBOL_GPL vmlinux 0x741be060 of_hwspin_lock_get_id +EXPORT_SYMBOL_GPL vmlinux 0x74249dfa of_k3_ringacc_get_by_phandle +EXPORT_SYMBOL_GPL vmlinux 0x743a165e ata_pack_xfermask +EXPORT_SYMBOL_GPL vmlinux 0x743b99d8 xenmem_reservation_increase +EXPORT_SYMBOL_GPL vmlinux 0x743ba17b devm_phy_get +EXPORT_SYMBOL_GPL vmlinux 0x74457e56 apei_resources_fini +EXPORT_SYMBOL_GPL vmlinux 0x745e740e usb_queue_reset_device +EXPORT_SYMBOL_GPL vmlinux 0x74617483 wbt_enable_default +EXPORT_SYMBOL_GPL vmlinux 0x7472f8c4 md_find_rdev_rcu +EXPORT_SYMBOL_GPL vmlinux 0x748bd366 regulator_set_drvdata +EXPORT_SYMBOL_GPL vmlinux 0x748f8936 tty_set_ldisc +EXPORT_SYMBOL_GPL vmlinux 0x74a31282 crypto_aead_setauthsize +EXPORT_SYMBOL_GPL vmlinux 0x74a3ca52 wm8998_i2c_regmap +EXPORT_SYMBOL_GPL vmlinux 0x74a52c0a blkdev_report_zones +EXPORT_SYMBOL_GPL vmlinux 0x74b5ea68 lcm_not_zero +EXPORT_SYMBOL_GPL vmlinux 0x74b75559 crypto_unregister_acomps +EXPORT_SYMBOL_GPL vmlinux 0x74b78288 fwnode_graph_get_endpoint_by_id +EXPORT_SYMBOL_GPL vmlinux 0x74ba5b4e tcp_ca_get_key_by_name +EXPORT_SYMBOL_GPL vmlinux 0x74ba66ae efivars_register +EXPORT_SYMBOL_GPL vmlinux 0x74baf17a tracing_is_on +EXPORT_SYMBOL_GPL vmlinux 0x74c7bffa stack_trace_snprint +EXPORT_SYMBOL_GPL vmlinux 0x74da847a da903x_update +EXPORT_SYMBOL_GPL vmlinux 0x74e73871 housekeeping_overridden +EXPORT_SYMBOL_GPL vmlinux 0x74ec3581 pci_disable_sriov +EXPORT_SYMBOL_GPL vmlinux 0x75064963 fib_nl_delrule +EXPORT_SYMBOL_GPL vmlinux 0x7509846f acpi_pci_check_ejectable +EXPORT_SYMBOL_GPL vmlinux 0x75133f6e visitor128 +EXPORT_SYMBOL_GPL vmlinux 0x751a1e61 ata_bmdma_stop +EXPORT_SYMBOL_GPL vmlinux 0x7522f3ba irq_modify_status +EXPORT_SYMBOL_GPL vmlinux 0x75286ac5 genphy_c45_pma_read_abilities +EXPORT_SYMBOL_GPL vmlinux 0x75440abf find_vpid +EXPORT_SYMBOL_GPL vmlinux 0x7545cb4b gpiod_get +EXPORT_SYMBOL_GPL vmlinux 0x754f01e1 register_acpi_bus_type +EXPORT_SYMBOL_GPL vmlinux 0x755ca284 virtqueue_enable_cb_delayed +EXPORT_SYMBOL_GPL vmlinux 0x758a43fe k3_ringacc_get_ring_irq_num +EXPORT_SYMBOL_GPL vmlinux 0x758c1f07 watchdog_unregister_device +EXPORT_SYMBOL_GPL vmlinux 0x759139cb of_pci_check_probe_only +EXPORT_SYMBOL_GPL vmlinux 0x759bfe36 btree_destroy +EXPORT_SYMBOL_GPL vmlinux 0x75ad7bc3 component_del +EXPORT_SYMBOL_GPL vmlinux 0x75ae58ab devm_i2c_new_dummy_device +EXPORT_SYMBOL_GPL vmlinux 0x75c833e3 sata_link_resume +EXPORT_SYMBOL_GPL vmlinux 0x75cbfb09 add_interrupt_randomness +EXPORT_SYMBOL_GPL vmlinux 0x75cd6ad1 adp5520_read +EXPORT_SYMBOL_GPL vmlinux 0x75d25e7e __tracepoint_napi_poll +EXPORT_SYMBOL_GPL vmlinux 0x75d97a01 of_prop_next_string +EXPORT_SYMBOL_GPL vmlinux 0x75dd246d shash_ahash_digest +EXPORT_SYMBOL_GPL vmlinux 0x75dd4ebe of_overlay_remove +EXPORT_SYMBOL_GPL vmlinux 0x75ddcd07 usb_phy_roothub_suspend +EXPORT_SYMBOL_GPL vmlinux 0x75e9c735 pci_ats_disabled +EXPORT_SYMBOL_GPL vmlinux 0x75f0e875 xas_store +EXPORT_SYMBOL_GPL vmlinux 0x75fb9062 arch_timer_read_counter +EXPORT_SYMBOL_GPL vmlinux 0x7610c46a mtk_build_eint +EXPORT_SYMBOL_GPL vmlinux 0x762785af syscon_node_to_regmap +EXPORT_SYMBOL_GPL vmlinux 0x763307e4 blk_update_request +EXPORT_SYMBOL_GPL vmlinux 0x7647425f component_add_typed +EXPORT_SYMBOL_GPL vmlinux 0x766146c5 wait_for_stable_page +EXPORT_SYMBOL_GPL vmlinux 0x7665a95b idr_remove +EXPORT_SYMBOL_GPL vmlinux 0x7665ee72 crypto_dh_decode_key +EXPORT_SYMBOL_GPL vmlinux 0x766884b3 devm_clk_register +EXPORT_SYMBOL_GPL vmlinux 0x7681946c unregister_pm_notifier +EXPORT_SYMBOL_GPL vmlinux 0x7688025c security_path_chown +EXPORT_SYMBOL_GPL vmlinux 0x769268e5 sk_psock_msg_verdict +EXPORT_SYMBOL_GPL vmlinux 0x76983e4f dev_pm_opp_set_rate +EXPORT_SYMBOL_GPL vmlinux 0x76aa4a89 xfrm_dev_state_add +EXPORT_SYMBOL_GPL vmlinux 0x76acebf2 crypto_stats_skcipher_encrypt +EXPORT_SYMBOL_GPL vmlinux 0x76cec241 pinctrl_generic_add_group +EXPORT_SYMBOL_GPL vmlinux 0x76d68bd3 fib_rules_seq_read +EXPORT_SYMBOL_GPL vmlinux 0x76d9b876 clk_set_rate +EXPORT_SYMBOL_GPL vmlinux 0x76e85b92 gnttab_request_free_callback +EXPORT_SYMBOL_GPL vmlinux 0x76eeeb0f sha384_zero_message_hash +EXPORT_SYMBOL_GPL vmlinux 0x76f92143 dm_bio_from_per_bio_data +EXPORT_SYMBOL_GPL vmlinux 0x77031666 tty_ldisc_deref +EXPORT_SYMBOL_GPL vmlinux 0x7712771a unbind_from_irqhandler +EXPORT_SYMBOL_GPL vmlinux 0x77222306 ring_buffer_read_page +EXPORT_SYMBOL_GPL vmlinux 0x7728a82e dev_pm_opp_remove_all_dynamic +EXPORT_SYMBOL_GPL vmlinux 0x7729cbdd task_handoff_register +EXPORT_SYMBOL_GPL vmlinux 0x77460812 acpi_register_gsi +EXPORT_SYMBOL_GPL vmlinux 0x774f2a07 spi_unregister_device +EXPORT_SYMBOL_GPL vmlinux 0x7757b51a clk_unregister +EXPORT_SYMBOL_GPL vmlinux 0x77849a6f clk_mux_ro_ops +EXPORT_SYMBOL_GPL vmlinux 0x7791e066 dw_pcie_read +EXPORT_SYMBOL_GPL vmlinux 0x77ae495d usb_speed_string +EXPORT_SYMBOL_GPL vmlinux 0x77aef0f1 __ata_ehi_push_desc +EXPORT_SYMBOL_GPL vmlinux 0x77b6c674 __dev_forward_skb +EXPORT_SYMBOL_GPL vmlinux 0x77e75be3 sfp_bus_put +EXPORT_SYMBOL_GPL vmlinux 0x77eb2fe7 __hrtimer_get_remaining +EXPORT_SYMBOL_GPL vmlinux 0x77ecf68d memalloc_socks_key +EXPORT_SYMBOL_GPL vmlinux 0x7808c6f5 fixed_phy_unregister +EXPORT_SYMBOL_GPL vmlinux 0x780c74d5 spi_async_locked +EXPORT_SYMBOL_GPL vmlinux 0x7813aee3 dev_pm_opp_put_clkname +EXPORT_SYMBOL_GPL vmlinux 0x782a3efc ata_link_abort +EXPORT_SYMBOL_GPL vmlinux 0x7857fcae task_active_pid_ns +EXPORT_SYMBOL_GPL vmlinux 0x785a93b4 si_mem_available +EXPORT_SYMBOL_GPL vmlinux 0x7871b493 led_stop_software_blink +EXPORT_SYMBOL_GPL vmlinux 0x78741b2a edac_get_sysfs_subsys +EXPORT_SYMBOL_GPL vmlinux 0x787c882b lzo1x_1_compress +EXPORT_SYMBOL_GPL vmlinux 0x788b0795 security_inode_create +EXPORT_SYMBOL_GPL vmlinux 0x788bfbad ring_buffer_empty +EXPORT_SYMBOL_GPL vmlinux 0x78982866 mddev_suspend +EXPORT_SYMBOL_GPL vmlinux 0x789c73d9 rcu_cpu_stall_suppress_at_boot +EXPORT_SYMBOL_GPL vmlinux 0x789ec304 ip6_route_output_flags_noref +EXPORT_SYMBOL_GPL vmlinux 0x78a692c5 of_genpd_add_subdomain +EXPORT_SYMBOL_GPL vmlinux 0x78aad2dc put_pid +EXPORT_SYMBOL_GPL vmlinux 0x78b22314 devm_thermal_of_cooling_device_register +EXPORT_SYMBOL_GPL vmlinux 0x78c46d12 ncsi_vlan_rx_add_vid +EXPORT_SYMBOL_GPL vmlinux 0x78c85dc6 trace_array_set_clr_event +EXPORT_SYMBOL_GPL vmlinux 0x78c8dda2 iommu_device_unregister +EXPORT_SYMBOL_GPL vmlinux 0x78ddb76b dmi_match +EXPORT_SYMBOL_GPL vmlinux 0x78e890e9 regmap_get_raw_read_max +EXPORT_SYMBOL_GPL vmlinux 0x78f0026e serial8250_em485_start_tx +EXPORT_SYMBOL_GPL vmlinux 0x78fa96d7 kobject_uevent +EXPORT_SYMBOL_GPL vmlinux 0x790be0b9 usb_bus_idr +EXPORT_SYMBOL_GPL vmlinux 0x7918d817 memory_failure +EXPORT_SYMBOL_GPL vmlinux 0x7919ea62 sdio_set_host_pm_flags +EXPORT_SYMBOL_GPL vmlinux 0x7944e0fc tracing_off +EXPORT_SYMBOL_GPL vmlinux 0x79470a2c TSS_authhmac +EXPORT_SYMBOL_GPL vmlinux 0x794a0461 rockchip_pcie_disable_clocks +EXPORT_SYMBOL_GPL vmlinux 0x794b7271 orderly_reboot +EXPORT_SYMBOL_GPL vmlinux 0x7966f6e9 skb_send_sock_locked +EXPORT_SYMBOL_GPL vmlinux 0x79679008 usb_sg_init +EXPORT_SYMBOL_GPL vmlinux 0x797d8e02 edac_pci_release_generic_ctl +EXPORT_SYMBOL_GPL vmlinux 0x7983dc2d usb_get_current_frame_number +EXPORT_SYMBOL_GPL vmlinux 0x7984fa07 kthread_flush_worker +EXPORT_SYMBOL_GPL vmlinux 0x7985db18 device_attach +EXPORT_SYMBOL_GPL vmlinux 0x79879895 serial8250_tx_chars +EXPORT_SYMBOL_GPL vmlinux 0x798b7682 klist_prev +EXPORT_SYMBOL_GPL vmlinux 0x798c3b92 iommu_map_sg_atomic +EXPORT_SYMBOL_GPL vmlinux 0x799aebb1 sbitmap_get_shallow +EXPORT_SYMBOL_GPL vmlinux 0x79a4e933 rt_mutex_lock +EXPORT_SYMBOL_GPL vmlinux 0x79a672a0 synth_event_add_next_val +EXPORT_SYMBOL_GPL vmlinux 0x79aaf7dd phy_resolve_aneg_pause +EXPORT_SYMBOL_GPL vmlinux 0x79bc842c usb_anchor_suspend_wakeups +EXPORT_SYMBOL_GPL vmlinux 0x79defbe1 kthread_should_park +EXPORT_SYMBOL_GPL vmlinux 0x79e23632 acpi_device_modalias +EXPORT_SYMBOL_GPL vmlinux 0x79ed5817 clockevents_config_and_register +EXPORT_SYMBOL_GPL vmlinux 0x79f4a931 dm_per_bio_data +EXPORT_SYMBOL_GPL vmlinux 0x79f697e4 lzorle1x_1_compress +EXPORT_SYMBOL_GPL vmlinux 0x79f99487 spi_mem_driver_register_with_owner +EXPORT_SYMBOL_GPL vmlinux 0x7a08440a ata_qc_complete +EXPORT_SYMBOL_GPL vmlinux 0x7a0918dc acpi_device_get_match_data +EXPORT_SYMBOL_GPL vmlinux 0x7a0930e7 proc_create_net_single_write +EXPORT_SYMBOL_GPL vmlinux 0x7a1cb8b4 ncsi_start_dev +EXPORT_SYMBOL_GPL vmlinux 0x7a33dbca synchronize_srcu_expedited +EXPORT_SYMBOL_GPL vmlinux 0x7a3cca99 sysfs_groups_change_owner +EXPORT_SYMBOL_GPL vmlinux 0x7a418da6 badblocks_exit +EXPORT_SYMBOL_GPL vmlinux 0x7a672569 xen_xlate_map_ballooned_pages +EXPORT_SYMBOL_GPL vmlinux 0x7a71af77 add_memory_driver_managed +EXPORT_SYMBOL_GPL vmlinux 0x7a73e605 wm831x_isinkv_values +EXPORT_SYMBOL_GPL vmlinux 0x7a7f48fa proc_get_parent_data +EXPORT_SYMBOL_GPL vmlinux 0x7a81541b async_synchronize_cookie +EXPORT_SYMBOL_GPL vmlinux 0x7a858b06 acpi_is_pnp_device +EXPORT_SYMBOL_GPL vmlinux 0x7a865223 kstrdup_quotable_file +EXPORT_SYMBOL_GPL vmlinux 0x7a893b84 tty_register_device_attr +EXPORT_SYMBOL_GPL vmlinux 0x7a932431 da903x_writes +EXPORT_SYMBOL_GPL vmlinux 0x7a95780a device_match_of_node +EXPORT_SYMBOL_GPL vmlinux 0x7a98f4b4 copy_from_user_nofault +EXPORT_SYMBOL_GPL vmlinux 0x7a9e4c23 software_node_register_node_group +EXPORT_SYMBOL_GPL vmlinux 0x7abfca43 rhashtable_init +EXPORT_SYMBOL_GPL vmlinux 0x7ac0d02a sata_link_hardreset +EXPORT_SYMBOL_GPL vmlinux 0x7ac10ad8 icst_clk_register +EXPORT_SYMBOL_GPL vmlinux 0x7ac722bd phy_all_ports_features_array +EXPORT_SYMBOL_GPL vmlinux 0x7aca9674 of_pci_find_child_device +EXPORT_SYMBOL_GPL vmlinux 0x7ad1af9a devm_of_platform_depopulate +EXPORT_SYMBOL_GPL vmlinux 0x7ad1ded1 pinctrl_register_mappings +EXPORT_SYMBOL_GPL vmlinux 0x7ad2c64c k3_udma_glue_release_rx_chn +EXPORT_SYMBOL_GPL vmlinux 0x7add7f25 iommu_device_sysfs_remove +EXPORT_SYMBOL_GPL vmlinux 0x7aeccdf2 reset_controller_register +EXPORT_SYMBOL_GPL vmlinux 0x7af86b7b fuse_dev_fiq_ops +EXPORT_SYMBOL_GPL vmlinux 0x7afcb7db __kprobe_event_add_fields +EXPORT_SYMBOL_GPL vmlinux 0x7afe324e halt_poll_ns_grow +EXPORT_SYMBOL_GPL vmlinux 0x7b11bddb dev_pm_opp_of_add_table_indexed +EXPORT_SYMBOL_GPL vmlinux 0x7b178afe unlock_system_sleep +EXPORT_SYMBOL_GPL vmlinux 0x7b1aff70 wakeup_sources_walk_next +EXPORT_SYMBOL_GPL vmlinux 0x7b2163bd HYPERVISOR_tmem_op +EXPORT_SYMBOL_GPL vmlinux 0x7b240fb1 device_unregister +EXPORT_SYMBOL_GPL vmlinux 0x7b4c9ba9 sbitmap_queue_min_shallow_depth +EXPORT_SYMBOL_GPL vmlinux 0x7b5452b8 acpi_unregister_gsi +EXPORT_SYMBOL_GPL vmlinux 0x7b5a4926 sha1_zero_message_hash +EXPORT_SYMBOL_GPL vmlinux 0x7b610a7e irq_create_fwspec_mapping +EXPORT_SYMBOL_GPL vmlinux 0x7b6f9536 acpi_register_wakeup_handler +EXPORT_SYMBOL_GPL vmlinux 0x7b856860 cpuidle_unregister_device +EXPORT_SYMBOL_GPL vmlinux 0x7b88df94 srcu_notifier_chain_unregister +EXPORT_SYMBOL_GPL vmlinux 0x7b90d1a9 bind_virq_to_irqhandler +EXPORT_SYMBOL_GPL vmlinux 0x7b96446e fsnotify_put_group +EXPORT_SYMBOL_GPL vmlinux 0x7b9793a2 get_cpu_idle_time_us +EXPORT_SYMBOL_GPL vmlinux 0x7bc05d03 unregister_kretprobe +EXPORT_SYMBOL_GPL vmlinux 0x7bc37265 of_fdt_unflatten_tree +EXPORT_SYMBOL_GPL vmlinux 0x7bc44984 wm831x_device_shutdown +EXPORT_SYMBOL_GPL vmlinux 0x7bcc62eb arizona_pm_ops +EXPORT_SYMBOL_GPL vmlinux 0x7bd2c2c2 handle_untracked_irq +EXPORT_SYMBOL_GPL vmlinux 0x7be5d689 proc_create_net_data +EXPORT_SYMBOL_GPL vmlinux 0x7bee20a2 led_trigger_blink_oneshot +EXPORT_SYMBOL_GPL vmlinux 0x7c05dd1d crypto_alloc_ahash +EXPORT_SYMBOL_GPL vmlinux 0x7c0c6610 xdp_attachment_setup +EXPORT_SYMBOL_GPL vmlinux 0x7c0dabbf amba_bustype +EXPORT_SYMBOL_GPL vmlinux 0x7c2642eb da9052_request_irq +EXPORT_SYMBOL_GPL vmlinux 0x7c3bedd7 acpi_dma_simple_xlate +EXPORT_SYMBOL_GPL vmlinux 0x7c3e70b1 ata_pci_sff_init_host +EXPORT_SYMBOL_GPL vmlinux 0x7c5221fb pci_epf_bind +EXPORT_SYMBOL_GPL vmlinux 0x7c57421b x509_cert_parse +EXPORT_SYMBOL_GPL vmlinux 0x7c5df4fd phy_modify_mmd +EXPORT_SYMBOL_GPL vmlinux 0x7c626556 list_lru_destroy +EXPORT_SYMBOL_GPL vmlinux 0x7c681aba efivar_work +EXPORT_SYMBOL_GPL vmlinux 0x7c7f5094 pci_speed_string +EXPORT_SYMBOL_GPL vmlinux 0x7c83f28e pci_epc_get +EXPORT_SYMBOL_GPL vmlinux 0x7c90b806 platform_device_put +EXPORT_SYMBOL_GPL vmlinux 0x7c94c99a kvm_release_pfn_dirty +EXPORT_SYMBOL_GPL vmlinux 0x7c983a5d dmi_walk +EXPORT_SYMBOL_GPL vmlinux 0x7c9879c1 phy_calibrate +EXPORT_SYMBOL_GPL vmlinux 0x7c9a7371 clk_prepare +EXPORT_SYMBOL_GPL vmlinux 0x7c9ba7c7 regmap_multi_reg_write_bypassed +EXPORT_SYMBOL_GPL vmlinux 0x7cb040fc vchan_tx_desc_free +EXPORT_SYMBOL_GPL vmlinux 0x7cb803de btree_grim_visitor +EXPORT_SYMBOL_GPL vmlinux 0x7cd6f042 cpufreq_get_current_driver +EXPORT_SYMBOL_GPL vmlinux 0x7cdb895f of_irq_parse_and_map_pci +EXPORT_SYMBOL_GPL vmlinux 0x7cddbfe7 cs47l24_irq +EXPORT_SYMBOL_GPL vmlinux 0x7ce00437 dev_pm_opp_init_cpufreq_table +EXPORT_SYMBOL_GPL vmlinux 0x7ce954b6 device_link_add +EXPORT_SYMBOL_GPL vmlinux 0x7ceaf0d5 generic_handle_irq +EXPORT_SYMBOL_GPL vmlinux 0x7d00c65b nd_synchronize +EXPORT_SYMBOL_GPL vmlinux 0x7d0baefe ata_sff_error_handler +EXPORT_SYMBOL_GPL vmlinux 0x7d154b6a usb_role_switch_find_by_fwnode +EXPORT_SYMBOL_GPL vmlinux 0x7d1bb1d4 tnum_strn +EXPORT_SYMBOL_GPL vmlinux 0x7d2583e6 wm8350_reg_unlock +EXPORT_SYMBOL_GPL vmlinux 0x7d2ca554 pci_epc_get_first_free_bar +EXPORT_SYMBOL_GPL vmlinux 0x7d32893f zynqmp_pm_request_node +EXPORT_SYMBOL_GPL vmlinux 0x7d335f19 regulator_suspend_disable +EXPORT_SYMBOL_GPL vmlinux 0x7d38dc75 gpiod_export +EXPORT_SYMBOL_GPL vmlinux 0x7d42cd0d devm_add_action +EXPORT_SYMBOL_GPL vmlinux 0x7d4ab425 key_type_logon +EXPORT_SYMBOL_GPL vmlinux 0x7d59dd46 pm_wq +EXPORT_SYMBOL_GPL vmlinux 0x7d65461b dm_internal_suspend_fast +EXPORT_SYMBOL_GPL vmlinux 0x7d68a3a8 debugfs_create_symlink +EXPORT_SYMBOL_GPL vmlinux 0x7d6b055a devlink_port_type_ib_set +EXPORT_SYMBOL_GPL vmlinux 0x7d6fb2bb __pci_epc_create +EXPORT_SYMBOL_GPL vmlinux 0x7d7c0435 fwnode_gpiod_get_index +EXPORT_SYMBOL_GPL vmlinux 0x7d89712a fscrypt_fname_siphash +EXPORT_SYMBOL_GPL vmlinux 0x7da83ca2 fib_add_nexthop +EXPORT_SYMBOL_GPL vmlinux 0x7db98f1c inet6_csk_update_pmtu +EXPORT_SYMBOL_GPL vmlinux 0x7dbc7c28 usb_deregister_dev +EXPORT_SYMBOL_GPL vmlinux 0x7dc5b43c edac_pci_free_ctl_info +EXPORT_SYMBOL_GPL vmlinux 0x7dda30af unregister_tracepoint_module_notifier +EXPORT_SYMBOL_GPL vmlinux 0x7ddadd8a do_unbind_con_driver +EXPORT_SYMBOL_GPL vmlinux 0x7ddb2718 __tracepoint_block_rq_remap +EXPORT_SYMBOL_GPL vmlinux 0x7ddbe90b udp_abort +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 0x7deaa707 dev_pm_qos_remove_request +EXPORT_SYMBOL_GPL vmlinux 0x7ded2759 devlink_port_attrs_pci_pf_set +EXPORT_SYMBOL_GPL vmlinux 0x7df2c584 init_user_ns +EXPORT_SYMBOL_GPL vmlinux 0x7e0497a3 rio_add_mport_pw_handler +EXPORT_SYMBOL_GPL vmlinux 0x7e11346d mmc_get_ext_csd +EXPORT_SYMBOL_GPL vmlinux 0x7e17b711 clk_hw_is_prepared +EXPORT_SYMBOL_GPL vmlinux 0x7e275ca6 vfs_setxattr +EXPORT_SYMBOL_GPL vmlinux 0x7e2e4951 ata_sas_tport_add +EXPORT_SYMBOL_GPL vmlinux 0x7e3e60fa irq_set_chip_and_handler_name +EXPORT_SYMBOL_GPL vmlinux 0x7e442978 devlink_port_attrs_set +EXPORT_SYMBOL_GPL vmlinux 0x7e458fbd ncsi_unregister_dev +EXPORT_SYMBOL_GPL vmlinux 0x7e460550 gpiochip_relres_irq +EXPORT_SYMBOL_GPL vmlinux 0x7e4ab5e1 serdev_device_wait_until_sent +EXPORT_SYMBOL_GPL vmlinux 0x7e5c79ea fib_rules_unregister +EXPORT_SYMBOL_GPL vmlinux 0x7e5db80b pstore_name_to_type +EXPORT_SYMBOL_GPL vmlinux 0x7e64181d usb_calc_bus_time +EXPORT_SYMBOL_GPL vmlinux 0x7e707239 devm_clk_bulk_get +EXPORT_SYMBOL_GPL vmlinux 0x7e79523a dst_cache_get +EXPORT_SYMBOL_GPL vmlinux 0x7e7db6e2 pinctrl_find_and_add_gpio_range +EXPORT_SYMBOL_GPL vmlinux 0x7e7e3f58 ring_buffer_reset_cpu +EXPORT_SYMBOL_GPL vmlinux 0x7e7ef774 ahci_pmp_retry_srst_ops +EXPORT_SYMBOL_GPL vmlinux 0x7e83cba8 fwnode_connection_find_match +EXPORT_SYMBOL_GPL vmlinux 0x7e8a2fe7 netdev_is_rx_handler_busy +EXPORT_SYMBOL_GPL vmlinux 0x7e8d8619 usb_anchor_empty +EXPORT_SYMBOL_GPL vmlinux 0x7e8e143c dev_pm_opp_set_sharing_cpus +EXPORT_SYMBOL_GPL vmlinux 0x7e92f45c fwnode_graph_get_remote_port_parent +EXPORT_SYMBOL_GPL vmlinux 0x7e93c2e5 ata_sff_tf_read +EXPORT_SYMBOL_GPL vmlinux 0x7ea75c24 __wake_up_locked_key_bookmark +EXPORT_SYMBOL_GPL vmlinux 0x7eb7a50b crypto_cipher_decrypt_one +EXPORT_SYMBOL_GPL vmlinux 0x7eb808d0 add_cpu +EXPORT_SYMBOL_GPL vmlinux 0x7eb85a68 kill_pid_usb_asyncio +EXPORT_SYMBOL_GPL vmlinux 0x7ec814de inet_hashinfo_init +EXPORT_SYMBOL_GPL vmlinux 0x7ee905db dev_get_regmap +EXPORT_SYMBOL_GPL vmlinux 0x7eea6b8b pcap_adc_async +EXPORT_SYMBOL_GPL vmlinux 0x7eebc15a devlink_port_params_unregister +EXPORT_SYMBOL_GPL vmlinux 0x7eedd67e fwnode_handle_put +EXPORT_SYMBOL_GPL vmlinux 0x7ef3ee2e __class_create +EXPORT_SYMBOL_GPL vmlinux 0x7ef86e0d devm_gpiod_get_index_optional +EXPORT_SYMBOL_GPL vmlinux 0x7efe547c vfs_getxattr_alloc +EXPORT_SYMBOL_GPL vmlinux 0x7f050bd7 iomap_dio_rw +EXPORT_SYMBOL_GPL vmlinux 0x7f083f80 ata_cable_ignore +EXPORT_SYMBOL_GPL vmlinux 0x7f0a4e2d skb_zerocopy_headlen +EXPORT_SYMBOL_GPL vmlinux 0x7f16277f skcipher_walk_atomise +EXPORT_SYMBOL_GPL vmlinux 0x7f268849 od_register_powersave_bias_handler +EXPORT_SYMBOL_GPL vmlinux 0x7f343197 ata_port_desc +EXPORT_SYMBOL_GPL vmlinux 0x7f41daa4 bio_alloc_mddev +EXPORT_SYMBOL_GPL vmlinux 0x7f41e818 rio_alloc_net +EXPORT_SYMBOL_GPL vmlinux 0x7f424c2c device_show_ulong +EXPORT_SYMBOL_GPL vmlinux 0x7f4807ca regmap_async_complete +EXPORT_SYMBOL_GPL vmlinux 0x7f4863d2 regulator_unregister_supply_alias +EXPORT_SYMBOL_GPL vmlinux 0x7f53cce3 dev_pm_opp_remove +EXPORT_SYMBOL_GPL vmlinux 0x7f63adbb tty_buffer_space_avail +EXPORT_SYMBOL_GPL vmlinux 0x7f7cbc64 ip_tunnel_need_metadata +EXPORT_SYMBOL_GPL vmlinux 0x7f8d15a9 usb_put_dev +EXPORT_SYMBOL_GPL vmlinux 0x7fa796b2 pinctrl_pm_select_default_state +EXPORT_SYMBOL_GPL vmlinux 0x7fa96509 erst_get_record_id_next +EXPORT_SYMBOL_GPL vmlinux 0x7fb1d6cf serdev_device_set_parity +EXPORT_SYMBOL_GPL vmlinux 0x7fc92904 bio_disassociate_blkg +EXPORT_SYMBOL_GPL vmlinux 0x7fdfedb9 kstrdup_quotable_cmdline +EXPORT_SYMBOL_GPL vmlinux 0x7ffac0ad cgroup_get_from_fd +EXPORT_SYMBOL_GPL vmlinux 0x7ffb3846 aead_init_geniv +EXPORT_SYMBOL_GPL vmlinux 0x7ffc2ca6 put_pid_ns +EXPORT_SYMBOL_GPL vmlinux 0x80005dbf nvdimm_region_notify +EXPORT_SYMBOL_GPL vmlinux 0x800f9aac class_destroy +EXPORT_SYMBOL_GPL vmlinux 0x80135182 k3_ringacc_ring_pop_tail +EXPORT_SYMBOL_GPL vmlinux 0x80268fe9 bus_set_iommu +EXPORT_SYMBOL_GPL vmlinux 0x8030ee17 devm_irq_setup_generic_chip +EXPORT_SYMBOL_GPL vmlinux 0x80365af0 dev_pm_qos_hide_latency_limit +EXPORT_SYMBOL_GPL vmlinux 0x8045a968 iommu_fwspec_init +EXPORT_SYMBOL_GPL vmlinux 0x805667cf devlink_fmsg_u64_put +EXPORT_SYMBOL_GPL vmlinux 0x805afea0 tty_prepare_flip_string +EXPORT_SYMBOL_GPL vmlinux 0x807431d5 scsi_check_sense +EXPORT_SYMBOL_GPL vmlinux 0x807766ea usb_scuttle_anchored_urbs +EXPORT_SYMBOL_GPL vmlinux 0x807fdcc4 call_rcu_tasks_rude +EXPORT_SYMBOL_GPL vmlinux 0x80862d3d xdp_rxq_info_unreg_mem_model +EXPORT_SYMBOL_GPL vmlinux 0x808ec1a3 crypto_alg_tested +EXPORT_SYMBOL_GPL vmlinux 0x809498fe cpufreq_freq_transition_end +EXPORT_SYMBOL_GPL vmlinux 0x80aea733 gen10g_config_aneg +EXPORT_SYMBOL_GPL vmlinux 0x80af7827 ata_cable_unknown +EXPORT_SYMBOL_GPL vmlinux 0x80b109d4 __tracepoint_pelt_se_tp +EXPORT_SYMBOL_GPL vmlinux 0x80c11314 gnttab_query_foreign_access +EXPORT_SYMBOL_GPL vmlinux 0x80c449b0 generic_device_group +EXPORT_SYMBOL_GPL vmlinux 0x80c68137 nf_log_buf_close +EXPORT_SYMBOL_GPL vmlinux 0x80ca9318 tty_buffer_lock_exclusive +EXPORT_SYMBOL_GPL vmlinux 0x80d5e57a mpi_free +EXPORT_SYMBOL_GPL vmlinux 0x80df2294 acpi_set_modalias +EXPORT_SYMBOL_GPL vmlinux 0x80eb545b iomap_invalidatepage +EXPORT_SYMBOL_GPL vmlinux 0x8115740c __bio_crypt_clone +EXPORT_SYMBOL_GPL vmlinux 0x811dc334 usb_unregister_notify +EXPORT_SYMBOL_GPL vmlinux 0x81239aeb aead_geniv_alloc +EXPORT_SYMBOL_GPL vmlinux 0x813007d4 acpi_gpiochip_free_interrupts +EXPORT_SYMBOL_GPL vmlinux 0x813ea878 devm_regmap_init_vexpress_config +EXPORT_SYMBOL_GPL vmlinux 0x814865a2 ip6_redirect +EXPORT_SYMBOL_GPL vmlinux 0x815588a6 clk_enable +EXPORT_SYMBOL_GPL vmlinux 0x8159e462 md_rdev_clear +EXPORT_SYMBOL_GPL vmlinux 0x815dcfec pm_genpd_syscore_poweroff +EXPORT_SYMBOL_GPL vmlinux 0x815fda83 sed_ioctl +EXPORT_SYMBOL_GPL vmlinux 0x8165597c nvdimm_cmd_mask +EXPORT_SYMBOL_GPL vmlinux 0x816a41ca cpufreq_update_limits +EXPORT_SYMBOL_GPL vmlinux 0x81877742 free_fib_info +EXPORT_SYMBOL_GPL vmlinux 0x8192bf25 dma_async_device_channel_register +EXPORT_SYMBOL_GPL vmlinux 0x819930cf xenbus_probe_node +EXPORT_SYMBOL_GPL vmlinux 0x819d72cb klist_iter_exit +EXPORT_SYMBOL_GPL vmlinux 0x81a72d4f edac_mc_add_mc_with_groups +EXPORT_SYMBOL_GPL vmlinux 0x81aa78d8 zynqmp_pm_aes_engine +EXPORT_SYMBOL_GPL vmlinux 0x81b03377 efivar_entry_set_safe +EXPORT_SYMBOL_GPL vmlinux 0x81b08b3c max8997_bulk_read +EXPORT_SYMBOL_GPL vmlinux 0x81b541b7 acpi_kobj +EXPORT_SYMBOL_GPL vmlinux 0x81c4eec5 mtk_pinconf_bias_disable_get +EXPORT_SYMBOL_GPL vmlinux 0x81d58a45 inet6_csk_addr2sockaddr +EXPORT_SYMBOL_GPL vmlinux 0x81d7c5b7 percpu_ref_kill_and_confirm +EXPORT_SYMBOL_GPL vmlinux 0x81dc89ba regmap_update_bits_base +EXPORT_SYMBOL_GPL vmlinux 0x81de4986 tty_ldisc_receive_buf +EXPORT_SYMBOL_GPL vmlinux 0x81e8be29 irq_domain_associate +EXPORT_SYMBOL_GPL vmlinux 0x81fb17d9 bus_rescan_devices +EXPORT_SYMBOL_GPL vmlinux 0x82092899 badrange_forget +EXPORT_SYMBOL_GPL vmlinux 0x8220a38e k3_ringacc_get_ring_id +EXPORT_SYMBOL_GPL vmlinux 0x822199c7 platform_device_del +EXPORT_SYMBOL_GPL vmlinux 0x82226c53 pinctrl_unregister_mappings +EXPORT_SYMBOL_GPL vmlinux 0x8224b6c1 locks_alloc_lock +EXPORT_SYMBOL_GPL vmlinux 0x823eae06 blocking_notifier_call_chain +EXPORT_SYMBOL_GPL vmlinux 0x8255bf7b pci_find_next_ht_capability +EXPORT_SYMBOL_GPL vmlinux 0x825b4c6c phy_package_leave +EXPORT_SYMBOL_GPL vmlinux 0x825b5653 regulator_set_voltage_time +EXPORT_SYMBOL_GPL vmlinux 0x826b5332 usb_store_new_id +EXPORT_SYMBOL_GPL vmlinux 0x827e61f8 acpi_has_watchdog +EXPORT_SYMBOL_GPL vmlinux 0x828b04e4 reset_control_get_count +EXPORT_SYMBOL_GPL vmlinux 0x82a35744 fwnode_usb_role_switch_get +EXPORT_SYMBOL_GPL vmlinux 0x82b55458 fuse_dev_alloc +EXPORT_SYMBOL_GPL vmlinux 0x82cb6418 crypto_ahash_finup +EXPORT_SYMBOL_GPL vmlinux 0x82d6d7d4 fsl_mc_bus_dpni_type +EXPORT_SYMBOL_GPL vmlinux 0x82d79b51 sysctl_vfs_cache_pressure +EXPORT_SYMBOL_GPL vmlinux 0x82edecab trace_seq_path +EXPORT_SYMBOL_GPL vmlinux 0x831a4180 acpi_subsys_suspend_late +EXPORT_SYMBOL_GPL vmlinux 0x8336a8bd get_net_ns_by_fd +EXPORT_SYMBOL_GPL vmlinux 0x8339df73 klist_add_behind +EXPORT_SYMBOL_GPL vmlinux 0x834660d7 skb_tstamp_tx +EXPORT_SYMBOL_GPL vmlinux 0x8348e4f0 __tracepoint_wbc_writepage +EXPORT_SYMBOL_GPL vmlinux 0x8349a895 nvmem_device_put +EXPORT_SYMBOL_GPL vmlinux 0x834e55de acpi_device_uevent_modalias +EXPORT_SYMBOL_GPL vmlinux 0x8352a074 devm_device_add_group +EXPORT_SYMBOL_GPL vmlinux 0x8353b8a8 pci_disable_pasid +EXPORT_SYMBOL_GPL vmlinux 0x8353dfff acpi_os_get_iomem +EXPORT_SYMBOL_GPL vmlinux 0x835cddb1 phy_get +EXPORT_SYMBOL_GPL vmlinux 0x835fdadb usb_put_hcd +EXPORT_SYMBOL_GPL vmlinux 0x836501c4 md_bitmap_resize +EXPORT_SYMBOL_GPL vmlinux 0x8374ab99 find_get_pid +EXPORT_SYMBOL_GPL vmlinux 0x8376381d inode_sb_list_add +EXPORT_SYMBOL_GPL vmlinux 0x8391adde syscon_regmap_lookup_by_phandle +EXPORT_SYMBOL_GPL vmlinux 0x83953086 fuse_dev_operations +EXPORT_SYMBOL_GPL vmlinux 0x83998a93 pci_device_is_present +EXPORT_SYMBOL_GPL vmlinux 0x8399e1b7 devm_of_platform_populate +EXPORT_SYMBOL_GPL vmlinux 0x83ab0334 nvdimm_kobj +EXPORT_SYMBOL_GPL vmlinux 0x83acddfc irq_chip_set_parent_state +EXPORT_SYMBOL_GPL vmlinux 0x83d7833a spi_busnum_to_master +EXPORT_SYMBOL_GPL vmlinux 0x83fe85eb dprc_close +EXPORT_SYMBOL_GPL vmlinux 0x84106f36 devlink_trap_ctx_priv +EXPORT_SYMBOL_GPL vmlinux 0x8418201f phy_pm_runtime_put +EXPORT_SYMBOL_GPL vmlinux 0x84188297 serial8250_rpm_get_tx +EXPORT_SYMBOL_GPL vmlinux 0x84239ea0 dev_pm_opp_find_freq_floor +EXPORT_SYMBOL_GPL vmlinux 0x84241fc9 pm_runtime_force_suspend +EXPORT_SYMBOL_GPL vmlinux 0x8424885c dev_pm_opp_get_level +EXPORT_SYMBOL_GPL vmlinux 0x842520af blk_mq_debugfs_rq_show +EXPORT_SYMBOL_GPL vmlinux 0x84264ced fs_umode_to_ftype +EXPORT_SYMBOL_GPL vmlinux 0x842f046d usb_poison_anchored_urbs +EXPORT_SYMBOL_GPL vmlinux 0x843ba900 fwnode_get_nth_parent +EXPORT_SYMBOL_GPL vmlinux 0x843d70ef acpi_is_root_bridge +EXPORT_SYMBOL_GPL vmlinux 0x843e0285 tty_buffer_unlock_exclusive +EXPORT_SYMBOL_GPL vmlinux 0x84502a47 blk_status_to_errno +EXPORT_SYMBOL_GPL vmlinux 0x845dbf3b scatterwalk_map_and_copy +EXPORT_SYMBOL_GPL vmlinux 0x8462cb62 atapi_cmd_type +EXPORT_SYMBOL_GPL vmlinux 0x8462da4d class_create_file_ns +EXPORT_SYMBOL_GPL vmlinux 0x846bda00 pinctrl_dev_get_name +EXPORT_SYMBOL_GPL vmlinux 0x846d7c2e debugfs_create_atomic_t +EXPORT_SYMBOL_GPL vmlinux 0x84782326 kvm_write_guest_cached +EXPORT_SYMBOL_GPL vmlinux 0x847f1eae srcu_notifier_chain_register +EXPORT_SYMBOL_GPL vmlinux 0x847f2ff5 bpf_offload_dev_netdev_unregister +EXPORT_SYMBOL_GPL vmlinux 0x84938836 timer_unstable_counter_workaround +EXPORT_SYMBOL_GPL vmlinux 0x84a8d0eb of_changeset_revert +EXPORT_SYMBOL_GPL vmlinux 0x84a8df67 of_dma_simple_xlate +EXPORT_SYMBOL_GPL vmlinux 0x84ef27f5 synth_event_add_fields +EXPORT_SYMBOL_GPL vmlinux 0x84fa962e gpiochip_add_data_with_key +EXPORT_SYMBOL_GPL vmlinux 0x850236b5 iommu_detach_device +EXPORT_SYMBOL_GPL vmlinux 0x8506baa8 clk_unregister_gate +EXPORT_SYMBOL_GPL vmlinux 0x850bb6db devlink_health_reporter_destroy +EXPORT_SYMBOL_GPL vmlinux 0x851c7c98 pci_set_cacheline_size +EXPORT_SYMBOL_GPL vmlinux 0x851e6003 usb_phy_roothub_calibrate +EXPORT_SYMBOL_GPL vmlinux 0x85267fa1 of_dma_router_register +EXPORT_SYMBOL_GPL vmlinux 0x85461626 sysfs_change_owner +EXPORT_SYMBOL_GPL vmlinux 0x85540ebc nvmem_cell_put +EXPORT_SYMBOL_GPL vmlinux 0x855831bc bus_sort_breadthfirst +EXPORT_SYMBOL_GPL vmlinux 0x85692551 ata_scsi_unlock_native_capacity +EXPORT_SYMBOL_GPL vmlinux 0x85764c09 crypto_mod_get +EXPORT_SYMBOL_GPL vmlinux 0x857afe1b __netpoll_cleanup +EXPORT_SYMBOL_GPL vmlinux 0x85857ad6 ip6_input +EXPORT_SYMBOL_GPL vmlinux 0x8589b2ee devm_irq_alloc_generic_chip +EXPORT_SYMBOL_GPL vmlinux 0x85935a61 acpi_dev_irq_flags +EXPORT_SYMBOL_GPL vmlinux 0x859d8fab pwmchip_remove +EXPORT_SYMBOL_GPL vmlinux 0x85a49dc7 pci_vpd_find_info_keyword +EXPORT_SYMBOL_GPL vmlinux 0x85b1c626 __tracepoint_rpm_suspend +EXPORT_SYMBOL_GPL vmlinux 0x85b38978 percpu_ref_reinit +EXPORT_SYMBOL_GPL vmlinux 0x85b90d21 fwnode_get_next_available_child_node +EXPORT_SYMBOL_GPL vmlinux 0x85b9bb6f blk_mq_sched_mark_restart_hctx +EXPORT_SYMBOL_GPL vmlinux 0x85c29a6b pm_generic_restore_noirq +EXPORT_SYMBOL_GPL vmlinux 0x85c54b61 efivar_validate +EXPORT_SYMBOL_GPL vmlinux 0x85e37f3b xhci_suspend +EXPORT_SYMBOL_GPL vmlinux 0x85e5d047 cpuidle_register_device +EXPORT_SYMBOL_GPL vmlinux 0x85ea0128 gpiochip_irqchip_add_domain +EXPORT_SYMBOL_GPL vmlinux 0x85ed8219 netlink_add_tap +EXPORT_SYMBOL_GPL vmlinux 0x85ff9fac shash_free_singlespawn_instance +EXPORT_SYMBOL_GPL vmlinux 0x862258db timecounter_init +EXPORT_SYMBOL_GPL vmlinux 0x86248ec5 __audit_log_nfcfg +EXPORT_SYMBOL_GPL vmlinux 0x862bb17b linear_range_values_in_range_array +EXPORT_SYMBOL_GPL vmlinux 0x863a284a crypto_stats_akcipher_encrypt +EXPORT_SYMBOL_GPL vmlinux 0x864117f4 __fl6_sock_lookup +EXPORT_SYMBOL_GPL vmlinux 0x8643a06f __clk_hw_register_divider +EXPORT_SYMBOL_GPL vmlinux 0x86585a33 devlink_fmsg_obj_nest_start +EXPORT_SYMBOL_GPL vmlinux 0x8658b4f5 __bio_try_merge_page +EXPORT_SYMBOL_GPL vmlinux 0x86623fd7 notify_remote_via_irq +EXPORT_SYMBOL_GPL vmlinux 0x86641e66 dst_cache_set_ip6 +EXPORT_SYMBOL_GPL vmlinux 0x866ca6a3 gnttab_page_cache_init +EXPORT_SYMBOL_GPL vmlinux 0x86700220 acpi_get_cpuid +EXPORT_SYMBOL_GPL vmlinux 0x8677245d unregister_switchdev_blocking_notifier +EXPORT_SYMBOL_GPL vmlinux 0x867a609b ping_recvmsg +EXPORT_SYMBOL_GPL vmlinux 0x867f1cf0 sock_diag_register +EXPORT_SYMBOL_GPL vmlinux 0x868784cb __symbol_get +EXPORT_SYMBOL_GPL vmlinux 0x868ac3d6 nf_checksum_partial +EXPORT_SYMBOL_GPL vmlinux 0x868de39d tty_port_register_device_attr_serdev +EXPORT_SYMBOL_GPL vmlinux 0x868ee3af of_get_fb_videomode +EXPORT_SYMBOL_GPL vmlinux 0x8690680c vfs_kern_mount +EXPORT_SYMBOL_GPL vmlinux 0x86a6aaeb blk_trace_setup +EXPORT_SYMBOL_GPL vmlinux 0x86ae72e8 bgpio_init +EXPORT_SYMBOL_GPL vmlinux 0x86b13d2a usb_unpoison_anchored_urbs +EXPORT_SYMBOL_GPL vmlinux 0x86c43a8c cper_estatus_check +EXPORT_SYMBOL_GPL vmlinux 0x86c961b3 __set_dax_synchronous +EXPORT_SYMBOL_GPL vmlinux 0x86cffeb8 ipv4_sk_update_pmtu +EXPORT_SYMBOL_GPL vmlinux 0x86dcf4e2 i2c_acpi_find_adapter_by_handle +EXPORT_SYMBOL_GPL vmlinux 0x86e1b87e tcp_enter_memory_pressure +EXPORT_SYMBOL_GPL vmlinux 0x86f4f8db ethnl_cable_test_fault_length +EXPORT_SYMBOL_GPL vmlinux 0x86f6b99d synchronize_rcu_expedited +EXPORT_SYMBOL_GPL vmlinux 0x86f85114 net_dec_egress_queue +EXPORT_SYMBOL_GPL vmlinux 0x86f8c232 fsl_mc_bus_dpmcp_type +EXPORT_SYMBOL_GPL vmlinux 0x86fa2018 clockevents_unbind_device +EXPORT_SYMBOL_GPL vmlinux 0x87029306 rio_map_inb_region +EXPORT_SYMBOL_GPL vmlinux 0x8709b191 device_match_any +EXPORT_SYMBOL_GPL vmlinux 0x870e16b7 xen_test_irq_shared +EXPORT_SYMBOL_GPL vmlinux 0x871a51bf pm_clk_remove_clk +EXPORT_SYMBOL_GPL vmlinux 0x871e4f25 iomap_seek_data +EXPORT_SYMBOL_GPL vmlinux 0x8729fded fsl_mc_bus_type +EXPORT_SYMBOL_GPL vmlinux 0x872e0359 unregister_kretprobes +EXPORT_SYMBOL_GPL vmlinux 0x87424d24 devm_gpiod_get_optional +EXPORT_SYMBOL_GPL vmlinux 0x874aaa48 fwnode_property_read_u32_array +EXPORT_SYMBOL_GPL vmlinux 0x8751ed32 devlink_dpipe_entry_ctx_append +EXPORT_SYMBOL_GPL vmlinux 0x875582b7 nvmem_del_cell_table +EXPORT_SYMBOL_GPL vmlinux 0x8755c42f spi_get_next_queued_message +EXPORT_SYMBOL_GPL vmlinux 0x8757f799 md_new_event +EXPORT_SYMBOL_GPL vmlinux 0x876c315e bpf_map_put +EXPORT_SYMBOL_GPL vmlinux 0x8778c393 fwnode_graph_get_port_parent +EXPORT_SYMBOL_GPL vmlinux 0x87902ce7 security_kernel_post_read_file +EXPORT_SYMBOL_GPL vmlinux 0x879820ca thermal_zone_device_update +EXPORT_SYMBOL_GPL vmlinux 0x879a3f35 inet_twsk_put +EXPORT_SYMBOL_GPL vmlinux 0x87c03326 ip_local_out +EXPORT_SYMBOL_GPL vmlinux 0x87e34cc5 devm_remove_action +EXPORT_SYMBOL_GPL vmlinux 0x87e4cd26 usb_ifnum_to_if +EXPORT_SYMBOL_GPL vmlinux 0x87f49b50 md_do_sync +EXPORT_SYMBOL_GPL vmlinux 0x88066be2 __tracepoint_rpm_return_int +EXPORT_SYMBOL_GPL vmlinux 0x8807fe8d dev_pm_opp_unregister_set_opp_helper +EXPORT_SYMBOL_GPL vmlinux 0x882b1bcd pwm_adjust_config +EXPORT_SYMBOL_GPL vmlinux 0x8831b41b xen_xlate_remap_gfn_array +EXPORT_SYMBOL_GPL vmlinux 0x883e8a7a xfrm_audit_state_icvfail +EXPORT_SYMBOL_GPL vmlinux 0x884e299c nd_cmd_in_size +EXPORT_SYMBOL_GPL vmlinux 0x885528a6 ring_buffer_discard_commit +EXPORT_SYMBOL_GPL vmlinux 0x8856e29f user_update +EXPORT_SYMBOL_GPL vmlinux 0x8865624f akcipher_register_instance +EXPORT_SYMBOL_GPL vmlinux 0x886b5d2b usb_autopm_get_interface_no_resume +EXPORT_SYMBOL_GPL vmlinux 0x8871429e bgmac_phy_connect_direct +EXPORT_SYMBOL_GPL vmlinux 0x8876ecc8 pm_generic_resume_early +EXPORT_SYMBOL_GPL vmlinux 0x888c5be5 irq_bypass_register_consumer +EXPORT_SYMBOL_GPL vmlinux 0x889e46d0 phy_pm_runtime_get_sync +EXPORT_SYMBOL_GPL vmlinux 0x88a0b63a gfn_to_page +EXPORT_SYMBOL_GPL vmlinux 0x88ab6fe3 kgdb_active +EXPORT_SYMBOL_GPL vmlinux 0x88b0f210 class_dev_iter_init +EXPORT_SYMBOL_GPL vmlinux 0x88b4ae92 ring_buffer_normalize_time_stamp +EXPORT_SYMBOL_GPL vmlinux 0x88b63406 serial8250_do_set_divisor +EXPORT_SYMBOL_GPL vmlinux 0x88b7aa8e virtqueue_get_vring +EXPORT_SYMBOL_GPL vmlinux 0x88c5b31f acpi_dev_get_dma_resources +EXPORT_SYMBOL_GPL vmlinux 0x88cd7a9a k3_ringacc_ring_get_occ +EXPORT_SYMBOL_GPL vmlinux 0x88f1a3a8 __pm_runtime_use_autosuspend +EXPORT_SYMBOL_GPL vmlinux 0x88f58bdf security_kernel_load_data +EXPORT_SYMBOL_GPL vmlinux 0x88fa3dcb virtio_device_restore +EXPORT_SYMBOL_GPL vmlinux 0x890265f9 nf_route +EXPORT_SYMBOL_GPL vmlinux 0x89073b5c crypto_stats_aead_encrypt +EXPORT_SYMBOL_GPL vmlinux 0x8908521f mmu_notifier_put +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 0x89239e9f kset_create_and_add +EXPORT_SYMBOL_GPL vmlinux 0x8924eb1e rcu_force_quiescent_state +EXPORT_SYMBOL_GPL vmlinux 0x8939155d pci_epc_mem_exit +EXPORT_SYMBOL_GPL vmlinux 0x893abbdd devlink_fmsg_u32_pair_put +EXPORT_SYMBOL_GPL vmlinux 0x893b9e24 task_cputime_adjusted +EXPORT_SYMBOL_GPL vmlinux 0x89485687 iommu_group_put +EXPORT_SYMBOL_GPL vmlinux 0x894a497b devlink_port_param_driverinit_value_set +EXPORT_SYMBOL_GPL vmlinux 0x894ecc50 blk_mq_virtio_map_queues +EXPORT_SYMBOL_GPL vmlinux 0x895d5deb nd_blk_memremap_flags +EXPORT_SYMBOL_GPL vmlinux 0x89696218 reserve_iova +EXPORT_SYMBOL_GPL vmlinux 0x896b3e22 vfs_truncate +EXPORT_SYMBOL_GPL vmlinux 0x896f408e inode_congested +EXPORT_SYMBOL_GPL vmlinux 0x8975a3a9 __kvm_set_memory_region +EXPORT_SYMBOL_GPL vmlinux 0x898a299a edac_device_alloc_ctl_info +EXPORT_SYMBOL_GPL vmlinux 0x89989b5f led_set_brightness_nopm +EXPORT_SYMBOL_GPL vmlinux 0x899c7b6b dev_pm_opp_set_clkname +EXPORT_SYMBOL_GPL vmlinux 0x899e6719 kthread_park +EXPORT_SYMBOL_GPL vmlinux 0x89a4476d HYPERVISOR_multicall +EXPORT_SYMBOL_GPL vmlinux 0x89ae7aa0 rsa_parse_pub_key +EXPORT_SYMBOL_GPL vmlinux 0x89bbafc6 usb_register_notify +EXPORT_SYMBOL_GPL vmlinux 0x89d1e9a1 of_led_get +EXPORT_SYMBOL_GPL vmlinux 0x89e340cf acpi_bus_get_ejd +EXPORT_SYMBOL_GPL vmlinux 0x89e41b81 led_trigger_remove +EXPORT_SYMBOL_GPL vmlinux 0x89f0a812 gnttab_map_refs +EXPORT_SYMBOL_GPL vmlinux 0x8a078b40 rio_mport_read_config_16 +EXPORT_SYMBOL_GPL vmlinux 0x8a0c9e60 crypto_lookup_template +EXPORT_SYMBOL_GPL vmlinux 0x8a106de3 devm_of_led_get +EXPORT_SYMBOL_GPL vmlinux 0x8a1318cf disk_part_iter_init +EXPORT_SYMBOL_GPL vmlinux 0x8a240bff __xas_next +EXPORT_SYMBOL_GPL vmlinux 0x8a291afd dma_buf_mmap +EXPORT_SYMBOL_GPL vmlinux 0x8a30ac9c __devm_regmap_init_mmio_clk +EXPORT_SYMBOL_GPL vmlinux 0x8a3cb2de dax_copy_from_iter +EXPORT_SYMBOL_GPL vmlinux 0x8a3f84ba linear_range_get_selector_low +EXPORT_SYMBOL_GPL vmlinux 0x8a45a555 acpi_unregister_wakeup_handler +EXPORT_SYMBOL_GPL vmlinux 0x8a47c7f0 xfrm_audit_state_notfound +EXPORT_SYMBOL_GPL vmlinux 0x8a4e533e __vfs_setxattr_noperm +EXPORT_SYMBOL_GPL vmlinux 0x8a554a36 mpc8xxx_spi_strmode +EXPORT_SYMBOL_GPL vmlinux 0x8a5f444d init_pid_ns +EXPORT_SYMBOL_GPL vmlinux 0x8a62b81b sfp_upstream_stop +EXPORT_SYMBOL_GPL vmlinux 0x8a9f2a8d regmap_parse_val +EXPORT_SYMBOL_GPL vmlinux 0x8abacc47 get_max_files +EXPORT_SYMBOL_GPL vmlinux 0x8ac5f938 dev_pm_opp_get_opp_table +EXPORT_SYMBOL_GPL vmlinux 0x8ad236a3 perf_event_release_kernel +EXPORT_SYMBOL_GPL vmlinux 0x8ad7b7e4 sock_prot_inuse_get +EXPORT_SYMBOL_GPL vmlinux 0x8ae84759 scmi_driver_register +EXPORT_SYMBOL_GPL vmlinux 0x8af24d28 extcon_get_edev_name +EXPORT_SYMBOL_GPL vmlinux 0x8b149c36 clk_is_match +EXPORT_SYMBOL_GPL vmlinux 0x8b4ecb5b hisi_uncore_pmu_counter_valid +EXPORT_SYMBOL_GPL vmlinux 0x8b56b9eb crypto_stats_rng_generate +EXPORT_SYMBOL_GPL vmlinux 0x8b62ce1d crypto_unregister_skciphers +EXPORT_SYMBOL_GPL vmlinux 0x8b795068 percpu_down_write +EXPORT_SYMBOL_GPL vmlinux 0x8b7abcaa phy_remove_lookup +EXPORT_SYMBOL_GPL vmlinux 0x8b7c545b sk_set_peek_off +EXPORT_SYMBOL_GPL vmlinux 0x8b84172e irq_chip_unmask_parent +EXPORT_SYMBOL_GPL vmlinux 0x8b87dc65 crypto_cipher_encrypt_one +EXPORT_SYMBOL_GPL vmlinux 0x8b8a7b8c blkcg_root +EXPORT_SYMBOL_GPL vmlinux 0x8b8ead76 sock_diag_unregister +EXPORT_SYMBOL_GPL vmlinux 0x8b95e345 hrtimer_init_sleeper +EXPORT_SYMBOL_GPL vmlinux 0x8ba5afe9 HYPERVISOR_memory_op +EXPORT_SYMBOL_GPL vmlinux 0x8ba77b99 pinctrl_find_gpio_range_from_pin_nolock +EXPORT_SYMBOL_GPL vmlinux 0x8bb5684b of_phy_provider_unregister +EXPORT_SYMBOL_GPL vmlinux 0x8bf5f379 k3_udma_glue_release_tx_chn +EXPORT_SYMBOL_GPL vmlinux 0x8bf6256b synth_event_add_val +EXPORT_SYMBOL_GPL vmlinux 0x8bfa7011 tcp_unregister_ulp +EXPORT_SYMBOL_GPL vmlinux 0x8c0215f2 pm_system_wakeup +EXPORT_SYMBOL_GPL vmlinux 0x8c03d20c destroy_workqueue +EXPORT_SYMBOL_GPL vmlinux 0x8c069246 usb_hc_died +EXPORT_SYMBOL_GPL vmlinux 0x8c1e848b devm_extcon_dev_unregister +EXPORT_SYMBOL_GPL vmlinux 0x8c254d44 i2c_for_each_dev +EXPORT_SYMBOL_GPL vmlinux 0x8c2cbb24 mtk_pinconf_bias_set +EXPORT_SYMBOL_GPL vmlinux 0x8c392092 regulator_set_bypass_regmap +EXPORT_SYMBOL_GPL vmlinux 0x8c42b635 bus_create_file +EXPORT_SYMBOL_GPL vmlinux 0x8c479745 __cpuhp_state_remove_instance +EXPORT_SYMBOL_GPL vmlinux 0x8c484409 gnttab_release_grant_reference +EXPORT_SYMBOL_GPL vmlinux 0x8c743fb6 reset_control_status +EXPORT_SYMBOL_GPL vmlinux 0x8c89e3b8 usb_phy_roothub_power_off +EXPORT_SYMBOL_GPL vmlinux 0x8cb5a38e k3_udma_glue_rx_flow_disable +EXPORT_SYMBOL_GPL vmlinux 0x8cd7e8f6 clk_fractional_divider_ops +EXPORT_SYMBOL_GPL vmlinux 0x8ce24198 ref_module +EXPORT_SYMBOL_GPL vmlinux 0x8d04940d dma_buf_put +EXPORT_SYMBOL_GPL vmlinux 0x8d139a50 pm_generic_runtime_suspend +EXPORT_SYMBOL_GPL vmlinux 0x8d15f0a5 pci_epc_init_notify +EXPORT_SYMBOL_GPL vmlinux 0x8d22bb58 iommu_group_alloc +EXPORT_SYMBOL_GPL vmlinux 0x8d293fe9 blk_queue_required_elevator_features +EXPORT_SYMBOL_GPL vmlinux 0x8d3330b6 cpuacct_cgrp_subsys_enabled_key +EXPORT_SYMBOL_GPL vmlinux 0x8d3bc488 regulator_get_voltage_rdev +EXPORT_SYMBOL_GPL vmlinux 0x8d40b2c0 iommu_cache_invalidate +EXPORT_SYMBOL_GPL vmlinux 0x8d413d4e devfreq_event_is_enabled +EXPORT_SYMBOL_GPL vmlinux 0x8d5240aa ncsi_vlan_rx_kill_vid +EXPORT_SYMBOL_GPL vmlinux 0x8d564c03 pci_ecam_free +EXPORT_SYMBOL_GPL vmlinux 0x8d5ad877 free_vm_area +EXPORT_SYMBOL_GPL vmlinux 0x8d5fd735 phy_gbit_features +EXPORT_SYMBOL_GPL vmlinux 0x8d7e3373 hwpoison_filter_dev_major +EXPORT_SYMBOL_GPL vmlinux 0x8d83c139 divider_ro_round_rate_parent +EXPORT_SYMBOL_GPL vmlinux 0x8d8b4994 unregister_asymmetric_key_parser +EXPORT_SYMBOL_GPL vmlinux 0x8d9632ed dio_end_io +EXPORT_SYMBOL_GPL vmlinux 0x8da79e3a md_find_rdev_nr_rcu +EXPORT_SYMBOL_GPL vmlinux 0x8da9ec7b xdp_do_redirect +EXPORT_SYMBOL_GPL vmlinux 0x8dbf7aaa privcmd_call +EXPORT_SYMBOL_GPL vmlinux 0x8dcc9fe0 iommu_group_add_device +EXPORT_SYMBOL_GPL vmlinux 0x8dd461ea mpc8xxx_spi_rx_buf_u16 +EXPORT_SYMBOL_GPL vmlinux 0x8ddde2c3 devm_regmap_add_irq_chip +EXPORT_SYMBOL_GPL vmlinux 0x8de01f87 crypto_alloc_akcipher +EXPORT_SYMBOL_GPL vmlinux 0x8df17512 of_get_regulator_init_data +EXPORT_SYMBOL_GPL vmlinux 0x8df6cd24 l3mdev_fib_table_rcu +EXPORT_SYMBOL_GPL vmlinux 0x8e00c8f9 bpf_prog_inc +EXPORT_SYMBOL_GPL vmlinux 0x8e02564c cpufreq_enable_fast_switch +EXPORT_SYMBOL_GPL vmlinux 0x8e1621cf fscrypt_match_name +EXPORT_SYMBOL_GPL vmlinux 0x8e16419b trace_clock_local +EXPORT_SYMBOL_GPL vmlinux 0x8e1882a6 kvm_get_kvm +EXPORT_SYMBOL_GPL vmlinux 0x8e21dab5 platform_get_irq_optional +EXPORT_SYMBOL_GPL vmlinux 0x8e23d58f offline_and_remove_memory +EXPORT_SYMBOL_GPL vmlinux 0x8e23d5b2 device_create_bin_file +EXPORT_SYMBOL_GPL vmlinux 0x8e2d95d0 regulator_force_disable +EXPORT_SYMBOL_GPL vmlinux 0x8e346090 hisi_uncore_pmu_stop +EXPORT_SYMBOL_GPL vmlinux 0x8e4665ab of_dma_configure +EXPORT_SYMBOL_GPL vmlinux 0x8e4afee4 __dax_driver_register +EXPORT_SYMBOL_GPL vmlinux 0x8e4b63a6 hisi_clk_register_gate_sep +EXPORT_SYMBOL_GPL vmlinux 0x8e4eb451 bpf_sk_storage_diag_free +EXPORT_SYMBOL_GPL vmlinux 0x8e68d279 tps65912_regmap_config +EXPORT_SYMBOL_GPL vmlinux 0x8e6a3c87 i2c_acpi_find_bus_speed +EXPORT_SYMBOL_GPL vmlinux 0x8e6fa8b5 apei_exec_pre_map_gars +EXPORT_SYMBOL_GPL vmlinux 0x8e76eafd _copy_from_iter_flushcache +EXPORT_SYMBOL_GPL vmlinux 0x8e78a36b mmu_interval_notifier_insert +EXPORT_SYMBOL_GPL vmlinux 0x8e7f0a9c acpi_get_phys_id +EXPORT_SYMBOL_GPL vmlinux 0x8e87c650 kthread_mod_delayed_work +EXPORT_SYMBOL_GPL vmlinux 0x8e883555 kvm_vcpu_read_guest +EXPORT_SYMBOL_GPL vmlinux 0x8e92a0e0 sysfs_remove_link_from_group +EXPORT_SYMBOL_GPL vmlinux 0x8e92f7c4 static_key_slow_inc +EXPORT_SYMBOL_GPL vmlinux 0x8eae8dfd usb_find_common_endpoints +EXPORT_SYMBOL_GPL vmlinux 0x8eb24213 dev_pm_domain_attach_by_name +EXPORT_SYMBOL_GPL vmlinux 0x8eb2e056 device_store_bool +EXPORT_SYMBOL_GPL vmlinux 0x8ecbc0a3 __synth_event_gen_cmd_start +EXPORT_SYMBOL_GPL vmlinux 0x8ed89015 crypto_spawn_tfm +EXPORT_SYMBOL_GPL vmlinux 0x8ee00adf acpi_cppc_processor_exit +EXPORT_SYMBOL_GPL vmlinux 0x8eee3399 dax_read_unlock +EXPORT_SYMBOL_GPL vmlinux 0x8ef330a6 dev_pm_qos_add_request +EXPORT_SYMBOL_GPL vmlinux 0x8ef9c399 inet6_destroy_sock +EXPORT_SYMBOL_GPL vmlinux 0x8f0748af rcu_expedite_gp +EXPORT_SYMBOL_GPL vmlinux 0x8f0a38f8 devlink_dpipe_table_unregister +EXPORT_SYMBOL_GPL vmlinux 0x8f0ef72f sched_trace_rq_cpu +EXPORT_SYMBOL_GPL vmlinux 0x8f2093e4 xenbus_dev_changed +EXPORT_SYMBOL_GPL vmlinux 0x8f2a66c5 pci_platform_power_transition +EXPORT_SYMBOL_GPL vmlinux 0x8f2dcdfe iomap_readpage +EXPORT_SYMBOL_GPL vmlinux 0x8f33c92f dev_pm_opp_of_cpumask_add_table +EXPORT_SYMBOL_GPL vmlinux 0x8f394c07 metadata_dst_alloc +EXPORT_SYMBOL_GPL vmlinux 0x8f3969e1 zynqmp_pm_clock_getrate +EXPORT_SYMBOL_GPL vmlinux 0x8f516ff3 edac_mc_del_mc +EXPORT_SYMBOL_GPL vmlinux 0x8f575b48 devm_nvdimm_memremap +EXPORT_SYMBOL_GPL vmlinux 0x8f6683ba dummy_irq_chip +EXPORT_SYMBOL_GPL vmlinux 0x8f6cee77 __round_jiffies_relative +EXPORT_SYMBOL_GPL vmlinux 0x8f6d3802 blockdev_superblock +EXPORT_SYMBOL_GPL vmlinux 0x8f6d8335 mddev_init +EXPORT_SYMBOL_GPL vmlinux 0x8f786bee fs_umode_to_dtype +EXPORT_SYMBOL_GPL vmlinux 0x8f7bab47 scsi_bus_type +EXPORT_SYMBOL_GPL vmlinux 0x8f7bd0a6 btree_init_mempool +EXPORT_SYMBOL_GPL vmlinux 0x8f801d8d rhashtable_destroy +EXPORT_SYMBOL_GPL vmlinux 0x8f9884b1 tcp_get_info +EXPORT_SYMBOL_GPL vmlinux 0x8fa6052c sysfs_remove_groups +EXPORT_SYMBOL_GPL vmlinux 0x8fba69a2 ata_sff_thaw +EXPORT_SYMBOL_GPL vmlinux 0x8fc12788 software_node_unregister_node_group +EXPORT_SYMBOL_GPL vmlinux 0x8fc13c13 hisi_uncore_pmu_event_init +EXPORT_SYMBOL_GPL vmlinux 0x8fd5063f rockchip_pcie_parse_dt +EXPORT_SYMBOL_GPL vmlinux 0x8fda5857 adp5520_clr_bits +EXPORT_SYMBOL_GPL vmlinux 0x90069e53 locks_release_private +EXPORT_SYMBOL_GPL vmlinux 0x9007d972 rhashtable_walk_peek +EXPORT_SYMBOL_GPL vmlinux 0x901a94cc device_add_properties +EXPORT_SYMBOL_GPL vmlinux 0x9024b103 debugfs_attr_read +EXPORT_SYMBOL_GPL vmlinux 0x903b627c list_lru_isolate_move +EXPORT_SYMBOL_GPL vmlinux 0x904e32b1 fuse_conn_put +EXPORT_SYMBOL_GPL vmlinux 0x90688bcd devlink_info_driver_name_put +EXPORT_SYMBOL_GPL vmlinux 0x906cc754 usb_string +EXPORT_SYMBOL_GPL vmlinux 0x9081b5db btree_insert +EXPORT_SYMBOL_GPL vmlinux 0x90897f39 dw_pcie_link_set_max_speed +EXPORT_SYMBOL_GPL vmlinux 0x908c579c register_net_sysctl +EXPORT_SYMBOL_GPL vmlinux 0x909183df gpiochip_irq_domain_deactivate +EXPORT_SYMBOL_GPL vmlinux 0x90ad66b1 software_node_unregister_nodes +EXPORT_SYMBOL_GPL vmlinux 0x90af7426 efivars_kobject +EXPORT_SYMBOL_GPL vmlinux 0x90b12f67 crypto_stats_akcipher_verify +EXPORT_SYMBOL_GPL vmlinux 0x90b4d2e3 device_destroy +EXPORT_SYMBOL_GPL vmlinux 0x90b763f1 HYPERVISOR_console_io +EXPORT_SYMBOL_GPL vmlinux 0x90c8498c apei_exec_write_register +EXPORT_SYMBOL_GPL vmlinux 0x90c952b1 tps6586x_reads +EXPORT_SYMBOL_GPL vmlinux 0x90ce8348 sysfs_update_group +EXPORT_SYMBOL_GPL vmlinux 0x90d8deb3 usb_register_dev +EXPORT_SYMBOL_GPL vmlinux 0x90e8018d platform_msi_domain_free_irqs +EXPORT_SYMBOL_GPL vmlinux 0x90e8f3cd rio_add_net +EXPORT_SYMBOL_GPL vmlinux 0x90f1700e cgrp_dfl_root +EXPORT_SYMBOL_GPL vmlinux 0x90fd25f4 pm_generic_thaw_noirq +EXPORT_SYMBOL_GPL vmlinux 0x90fe1039 regmap_write +EXPORT_SYMBOL_GPL vmlinux 0x9100e444 mtk_pinconf_bias_disable_set +EXPORT_SYMBOL_GPL vmlinux 0x910baad1 serdev_device_write_flush +EXPORT_SYMBOL_GPL vmlinux 0x91171dee blk_rq_err_bytes +EXPORT_SYMBOL_GPL vmlinux 0x911bd64c mtk_mmsys_ddp_connect +EXPORT_SYMBOL_GPL vmlinux 0x914c65f0 iomap_file_buffered_write +EXPORT_SYMBOL_GPL vmlinux 0x91568d20 fib_table_lookup +EXPORT_SYMBOL_GPL vmlinux 0x916c6fcf balloon_page_alloc +EXPORT_SYMBOL_GPL vmlinux 0x9190c14d pci_epc_mem_init +EXPORT_SYMBOL_GPL vmlinux 0x919425fd pv_ops +EXPORT_SYMBOL_GPL vmlinux 0x9194e18f xenbus_mkdir +EXPORT_SYMBOL_GPL vmlinux 0x91a55068 public_key_free +EXPORT_SYMBOL_GPL vmlinux 0x91ab9f36 pm_clk_runtime_suspend +EXPORT_SYMBOL_GPL vmlinux 0x91bf220d mbox_chan_txdone +EXPORT_SYMBOL_GPL vmlinux 0x91c6e5b0 pcap_to_irq +EXPORT_SYMBOL_GPL vmlinux 0x91c8b5b5 mutex_lock_io +EXPORT_SYMBOL_GPL vmlinux 0x91ce0d8e gpiod_put +EXPORT_SYMBOL_GPL vmlinux 0x91e30809 HYPERVISOR_vm_assist +EXPORT_SYMBOL_GPL vmlinux 0x91f1565f sk_psock_init +EXPORT_SYMBOL_GPL vmlinux 0x91f31481 sata_sff_hardreset +EXPORT_SYMBOL_GPL vmlinux 0x91f4ec2c dma_get_slave_caps +EXPORT_SYMBOL_GPL vmlinux 0x91f5a88e fsverity_cleanup_inode +EXPORT_SYMBOL_GPL vmlinux 0x920829b2 regulator_unlock +EXPORT_SYMBOL_GPL vmlinux 0x920cc389 visitorl +EXPORT_SYMBOL_GPL vmlinux 0x9210b623 ipv6_bpf_stub +EXPORT_SYMBOL_GPL vmlinux 0x921aa79e amba_device_put +EXPORT_SYMBOL_GPL vmlinux 0x92295424 clk_register_gate +EXPORT_SYMBOL_GPL vmlinux 0x922e3a5a acpi_dev_resume +EXPORT_SYMBOL_GPL vmlinux 0x923d9dba pkcs7_parse_message +EXPORT_SYMBOL_GPL vmlinux 0x9241b358 __static_key_slow_dec_deferred +EXPORT_SYMBOL_GPL vmlinux 0x924c46f8 zs_unmap_object +EXPORT_SYMBOL_GPL vmlinux 0x924ddb35 pm_generic_suspend_noirq +EXPORT_SYMBOL_GPL vmlinux 0x9269c2d7 __fsl_mc_driver_register +EXPORT_SYMBOL_GPL vmlinux 0x926c1554 bus_for_each_drv +EXPORT_SYMBOL_GPL vmlinux 0x927487ea zynqmp_pm_read_ggs +EXPORT_SYMBOL_GPL vmlinux 0x9282a2d5 regmap_mmio_detach_clk +EXPORT_SYMBOL_GPL vmlinux 0x9291b976 cpuidle_register +EXPORT_SYMBOL_GPL vmlinux 0x92a0c6d8 pm_genpd_add_subdomain +EXPORT_SYMBOL_GPL vmlinux 0x92a22b8b ti_sci_inta_msi_domain_free_irqs +EXPORT_SYMBOL_GPL vmlinux 0x92c42f6d noop_set_page_dirty +EXPORT_SYMBOL_GPL vmlinux 0x92caf2ac clock_cooling_get_level +EXPORT_SYMBOL_GPL vmlinux 0x92d04e5e phy_save_page +EXPORT_SYMBOL_GPL vmlinux 0x92d31cfb fixed_phy_add +EXPORT_SYMBOL_GPL vmlinux 0x92d527fd irq_chip_mask_parent +EXPORT_SYMBOL_GPL vmlinux 0x92d8e56f __tracepoint_xhci_dbg_quirks +EXPORT_SYMBOL_GPL vmlinux 0x92db8f68 do_trace_rcu_torture_read +EXPORT_SYMBOL_GPL vmlinux 0x92df6556 gpiod_to_irq +EXPORT_SYMBOL_GPL vmlinux 0x92e8e9ab fsverity_enqueue_verify_work +EXPORT_SYMBOL_GPL vmlinux 0x92e9cb84 kern_mount +EXPORT_SYMBOL_GPL vmlinux 0x92eb431c fsl_mc_bus_dpmac_type +EXPORT_SYMBOL_GPL vmlinux 0x92fd7a24 ip6_local_out +EXPORT_SYMBOL_GPL vmlinux 0x9301dffd i2c_of_match_device +EXPORT_SYMBOL_GPL vmlinux 0x93068199 acpi_device_fwnode_ops +EXPORT_SYMBOL_GPL vmlinux 0x930ab533 k3_ringacc_request_ring +EXPORT_SYMBOL_GPL vmlinux 0x93107e57 sock_diag_unregister_inet_compat +EXPORT_SYMBOL_GPL vmlinux 0x93132aa7 rio_request_outb_dbell +EXPORT_SYMBOL_GPL vmlinux 0x93170790 blk_fill_rwbs +EXPORT_SYMBOL_GPL vmlinux 0x931af295 usb_register_driver +EXPORT_SYMBOL_GPL vmlinux 0x93255b2b ring_buffer_lock_reserve +EXPORT_SYMBOL_GPL vmlinux 0x932c8d7a linear_range_get_value_array +EXPORT_SYMBOL_GPL vmlinux 0x933f75e0 usb_unlink_anchored_urbs +EXPORT_SYMBOL_GPL vmlinux 0x936245e8 user_describe +EXPORT_SYMBOL_GPL vmlinux 0x93725986 __tracepoint_pelt_dl_tp +EXPORT_SYMBOL_GPL vmlinux 0x9377a3cb xdp_rxq_info_unreg +EXPORT_SYMBOL_GPL vmlinux 0x9382e32e alloc_page_buffers +EXPORT_SYMBOL_GPL vmlinux 0x9384cd49 ata_tf_from_fis +EXPORT_SYMBOL_GPL vmlinux 0x9388e02d tcp_unregister_congestion_control +EXPORT_SYMBOL_GPL vmlinux 0x938cc011 trace_array_get_by_name +EXPORT_SYMBOL_GPL vmlinux 0x93922111 get_compat_bpf_fprog +EXPORT_SYMBOL_GPL vmlinux 0x93a91232 regulator_list_voltage_linear_range +EXPORT_SYMBOL_GPL vmlinux 0x93b47407 vchan_tx_submit +EXPORT_SYMBOL_GPL vmlinux 0x93b818b8 devfreq_event_remove_edev +EXPORT_SYMBOL_GPL vmlinux 0x93b94168 serial8250_em485_config +EXPORT_SYMBOL_GPL vmlinux 0x93d1d424 gnttab_free_grant_references +EXPORT_SYMBOL_GPL vmlinux 0x93dd40e5 pci_pasid_features +EXPORT_SYMBOL_GPL vmlinux 0x93edef07 devlink_health_report +EXPORT_SYMBOL_GPL vmlinux 0x940cf2b2 irq_chip_request_resources_parent +EXPORT_SYMBOL_GPL vmlinux 0x941824f9 reset_controller_unregister +EXPORT_SYMBOL_GPL vmlinux 0x941f2aaa eventfd_ctx_put +EXPORT_SYMBOL_GPL vmlinux 0x942246f4 metadata_dst_free_percpu +EXPORT_SYMBOL_GPL vmlinux 0x9425bb34 nvmem_dev_name +EXPORT_SYMBOL_GPL vmlinux 0x942c9d3d iomap_is_partially_uptodate +EXPORT_SYMBOL_GPL vmlinux 0x9430b198 trace_dump_stack +EXPORT_SYMBOL_GPL vmlinux 0x9437f68e fixed_phy_register_with_gpiod +EXPORT_SYMBOL_GPL vmlinux 0x943fc708 xen_setup_shutdown_event +EXPORT_SYMBOL_GPL vmlinux 0x94496483 of_pci_range_parser_init +EXPORT_SYMBOL_GPL vmlinux 0x944f468f tty_ldisc_flush +EXPORT_SYMBOL_GPL vmlinux 0x9450d026 pm_generic_poweroff_noirq +EXPORT_SYMBOL_GPL vmlinux 0x9451eb99 dev_pm_qos_expose_flags +EXPORT_SYMBOL_GPL vmlinux 0x945d993a clk_gate_ops +EXPORT_SYMBOL_GPL vmlinux 0x945df638 firmware_request_platform +EXPORT_SYMBOL_GPL vmlinux 0x94666994 ping_unhash +EXPORT_SYMBOL_GPL vmlinux 0x946dd559 sha224_zero_message_hash +EXPORT_SYMBOL_GPL vmlinux 0x947e56bd anon_transport_class_register +EXPORT_SYMBOL_GPL vmlinux 0x949b5176 devlink_region_snapshot_create +EXPORT_SYMBOL_GPL vmlinux 0x949f7342 __alloc_percpu +EXPORT_SYMBOL_GPL vmlinux 0x94aa0167 clk_hw_get_parent +EXPORT_SYMBOL_GPL vmlinux 0x94b9eb62 dpbp_disable +EXPORT_SYMBOL_GPL vmlinux 0x94bdb401 nvdimm_has_cache +EXPORT_SYMBOL_GPL vmlinux 0x94cd2eb4 skb_zerocopy_iter_dgram +EXPORT_SYMBOL_GPL vmlinux 0x94d11ac6 kernel_read_file +EXPORT_SYMBOL_GPL vmlinux 0x94e62d2e __set_phys_to_machine_multi +EXPORT_SYMBOL_GPL vmlinux 0x94ef4d05 cpci_hp_stop +EXPORT_SYMBOL_GPL vmlinux 0x94eff7bb pm_genpd_remove_device +EXPORT_SYMBOL_GPL vmlinux 0x94f0136c irq_set_affinity_notifier +EXPORT_SYMBOL_GPL vmlinux 0x94fb8332 iommu_group_remove_device +EXPORT_SYMBOL_GPL vmlinux 0x9504df26 irq_wake_thread +EXPORT_SYMBOL_GPL vmlinux 0x950ea90e __class_register +EXPORT_SYMBOL_GPL vmlinux 0x950eacf1 skb_defer_rx_timestamp +EXPORT_SYMBOL_GPL vmlinux 0x950ef58b ahci_platform_resume +EXPORT_SYMBOL_GPL vmlinux 0x95121f8d devm_acpi_dma_controller_free +EXPORT_SYMBOL_GPL vmlinux 0x951a2773 crypto_has_alg +EXPORT_SYMBOL_GPL vmlinux 0x951f73c9 pci_destroy_slot +EXPORT_SYMBOL_GPL vmlinux 0x952664c5 do_exit +EXPORT_SYMBOL_GPL vmlinux 0x952df815 pci_load_saved_state +EXPORT_SYMBOL_GPL vmlinux 0x953e1b9e ktime_get_real_seconds +EXPORT_SYMBOL_GPL vmlinux 0x954b8ac1 uart_console_write +EXPORT_SYMBOL_GPL vmlinux 0x955b0e2e kthread_worker_fn +EXPORT_SYMBOL_GPL vmlinux 0x955c9304 ata_sff_dma_pause +EXPORT_SYMBOL_GPL vmlinux 0x956ac400 ring_buffer_dropped_events_cpu +EXPORT_SYMBOL_GPL vmlinux 0x958df3ac zs_free +EXPORT_SYMBOL_GPL vmlinux 0x95918c66 ahci_save_initial_config +EXPORT_SYMBOL_GPL vmlinux 0x959ec5f5 call_rcu_tasks +EXPORT_SYMBOL_GPL vmlinux 0x95a0c226 rio_free_net +EXPORT_SYMBOL_GPL vmlinux 0x95a74abf vfs_writef +EXPORT_SYMBOL_GPL vmlinux 0x95b203a9 ata_std_error_handler +EXPORT_SYMBOL_GPL vmlinux 0x95b3580b dma_get_slave_channel +EXPORT_SYMBOL_GPL vmlinux 0x95bc9078 btree_free +EXPORT_SYMBOL_GPL vmlinux 0x95c0cd7c dprc_open +EXPORT_SYMBOL_GPL vmlinux 0x95c2b216 pcie_has_flr +EXPORT_SYMBOL_GPL vmlinux 0x95c7f8f7 tty_port_tty_hangup +EXPORT_SYMBOL_GPL vmlinux 0x95d05c18 xen_dbgp_reset_prep +EXPORT_SYMBOL_GPL vmlinux 0x95d43597 iommu_domain_window_disable +EXPORT_SYMBOL_GPL vmlinux 0x95ef1ccc dmi_memdev_size +EXPORT_SYMBOL_GPL vmlinux 0x95efa1db pkcs7_free_message +EXPORT_SYMBOL_GPL vmlinux 0x960e593d i2c_unregister_device +EXPORT_SYMBOL_GPL vmlinux 0x961286e0 ring_buffer_read_events_cpu +EXPORT_SYMBOL_GPL vmlinux 0x96175891 dev_pm_opp_of_remove_table +EXPORT_SYMBOL_GPL vmlinux 0x961828e3 gfn_to_pfn_prot +EXPORT_SYMBOL_GPL vmlinux 0x961ae0b4 hisi_uncore_pmu_add +EXPORT_SYMBOL_GPL vmlinux 0x96246cf3 pci_epc_set_msi +EXPORT_SYMBOL_GPL vmlinux 0x962c8ae1 usb_kill_anchored_urbs +EXPORT_SYMBOL_GPL vmlinux 0x9632e31b clk_hw_unregister_gate +EXPORT_SYMBOL_GPL vmlinux 0x9642ddf8 show_class_attr_string +EXPORT_SYMBOL_GPL vmlinux 0x9651d298 dev_pm_opp_is_turbo +EXPORT_SYMBOL_GPL vmlinux 0x96554810 register_keyboard_notifier +EXPORT_SYMBOL_GPL vmlinux 0x9657af29 xfrm_audit_policy_add +EXPORT_SYMBOL_GPL vmlinux 0x96657339 blk_trace_remove +EXPORT_SYMBOL_GPL vmlinux 0x96686245 ata_ehi_push_desc +EXPORT_SYMBOL_GPL vmlinux 0x96708f8f bpfilter_ops +EXPORT_SYMBOL_GPL vmlinux 0x9677b03c component_bind_all +EXPORT_SYMBOL_GPL vmlinux 0x968f9a23 efivar_entry_iter_begin +EXPORT_SYMBOL_GPL vmlinux 0x96953cdb crypto_register_acomps +EXPORT_SYMBOL_GPL vmlinux 0x96a82b34 crypto_stats_skcipher_decrypt +EXPORT_SYMBOL_GPL vmlinux 0x96ca0458 sk_msg_alloc +EXPORT_SYMBOL_GPL vmlinux 0x96cf25be tcp_done +EXPORT_SYMBOL_GPL vmlinux 0x96cfeb41 of_genpd_parse_idle_states +EXPORT_SYMBOL_GPL vmlinux 0x96d445a7 clk_mux_ops +EXPORT_SYMBOL_GPL vmlinux 0x96d95972 devlink_dpipe_headers_unregister +EXPORT_SYMBOL_GPL vmlinux 0x96e0f7d3 extcon_get_state +EXPORT_SYMBOL_GPL vmlinux 0x96f418f9 ping_bind +EXPORT_SYMBOL_GPL vmlinux 0x9701df28 vchan_dma_desc_free_list +EXPORT_SYMBOL_GPL vmlinux 0x97085198 pci_store_saved_state +EXPORT_SYMBOL_GPL vmlinux 0x9714e0bb ktime_get_raw +EXPORT_SYMBOL_GPL vmlinux 0x9715c5c0 led_trigger_register_simple +EXPORT_SYMBOL_GPL vmlinux 0x9718c963 ata_sff_drain_fifo +EXPORT_SYMBOL_GPL vmlinux 0x9719245e icc_link_create +EXPORT_SYMBOL_GPL vmlinux 0x9721337b elv_rqhash_del +EXPORT_SYMBOL_GPL vmlinux 0x97324694 rtc_initialize_alarm +EXPORT_SYMBOL_GPL vmlinux 0x97426670 sock_diag_check_cookie +EXPORT_SYMBOL_GPL vmlinux 0x97534555 gnttab_foreach_grant_in_range +EXPORT_SYMBOL_GPL vmlinux 0x975519c1 asymmetric_key_id_same +EXPORT_SYMBOL_GPL vmlinux 0x9756f716 da9055_regmap_config +EXPORT_SYMBOL_GPL vmlinux 0x97623558 xas_create_range +EXPORT_SYMBOL_GPL vmlinux 0x97688631 crypto_shash_final +EXPORT_SYMBOL_GPL vmlinux 0x9770cff9 fwnode_device_is_available +EXPORT_SYMBOL_GPL vmlinux 0x9770d5f3 gpiod_set_transitory +EXPORT_SYMBOL_GPL vmlinux 0x977be5c7 klist_iter_init_node +EXPORT_SYMBOL_GPL vmlinux 0x97849807 kvm_io_bus_get_dev +EXPORT_SYMBOL_GPL vmlinux 0x9787afeb ata_pci_device_do_suspend +EXPORT_SYMBOL_GPL vmlinux 0x979d5ab6 kobject_move +EXPORT_SYMBOL_GPL vmlinux 0x97abb826 clk_regmap_gate_ops +EXPORT_SYMBOL_GPL vmlinux 0x97bc4a2f kvm_is_visible_gfn +EXPORT_SYMBOL_GPL vmlinux 0x97c04ae0 blk_mq_bio_list_merge +EXPORT_SYMBOL_GPL vmlinux 0x97d92219 regulator_bulk_force_disable +EXPORT_SYMBOL_GPL vmlinux 0x97dc2261 devm_hwmon_device_register_with_info +EXPORT_SYMBOL_GPL vmlinux 0x97de2b83 debug_locks_silent +EXPORT_SYMBOL_GPL vmlinux 0x97e733f2 pci_sriov_set_totalvfs +EXPORT_SYMBOL_GPL vmlinux 0x97e7f902 trace_vbprintk +EXPORT_SYMBOL_GPL vmlinux 0x97fb0ea1 ata_acpi_gtm +EXPORT_SYMBOL_GPL vmlinux 0x9802489b wm5110_spi_regmap +EXPORT_SYMBOL_GPL vmlinux 0x980c7b23 sdio_retune_hold_now +EXPORT_SYMBOL_GPL vmlinux 0x98277e4d bpf_offload_dev_netdev_register +EXPORT_SYMBOL_GPL vmlinux 0x9830186b balloon_aops +EXPORT_SYMBOL_GPL vmlinux 0x9833bc0c hvc_kick +EXPORT_SYMBOL_GPL vmlinux 0x98503a63 mpi_alloc +EXPORT_SYMBOL_GPL vmlinux 0x985453e1 lease_unregister_notifier +EXPORT_SYMBOL_GPL vmlinux 0x98708ba0 power_supply_external_power_changed +EXPORT_SYMBOL_GPL vmlinux 0x987520e2 usb_find_common_endpoints_reverse +EXPORT_SYMBOL_GPL vmlinux 0x9879932b crypto_register_notifier +EXPORT_SYMBOL_GPL vmlinux 0x98857509 xfrm_output_resume +EXPORT_SYMBOL_GPL vmlinux 0x989074ff kmsg_dump_reason_str +EXPORT_SYMBOL_GPL vmlinux 0x98911ba8 ata_pci_device_resume +EXPORT_SYMBOL_GPL vmlinux 0x989a0752 fuse_do_ioctl +EXPORT_SYMBOL_GPL vmlinux 0x98c27c74 usb_deregister +EXPORT_SYMBOL_GPL vmlinux 0x98ebeaeb raw_seq_start +EXPORT_SYMBOL_GPL vmlinux 0x98ee62b2 ring_buffer_record_disable_cpu +EXPORT_SYMBOL_GPL vmlinux 0x98fa1e20 dm_get_reserved_rq_based_ios +EXPORT_SYMBOL_GPL vmlinux 0x98ff5535 pinctrl_count_index_with_args +EXPORT_SYMBOL_GPL vmlinux 0x9904ff40 dax_writeback_mapping_range +EXPORT_SYMBOL_GPL vmlinux 0x99091f41 vfs_lock_file +EXPORT_SYMBOL_GPL vmlinux 0x990b8543 serial8250_em485_stop_tx +EXPORT_SYMBOL_GPL vmlinux 0x990c1527 gpiochip_remove_pin_ranges +EXPORT_SYMBOL_GPL vmlinux 0x991a00de usb_amd_pt_check_port +EXPORT_SYMBOL_GPL vmlinux 0x991eaea2 crypto_grab_akcipher +EXPORT_SYMBOL_GPL vmlinux 0x993ae56e device_connection_find_match +EXPORT_SYMBOL_GPL vmlinux 0x9945f261 anon_inode_getfile +EXPORT_SYMBOL_GPL vmlinux 0x995d1071 prof_on +EXPORT_SYMBOL_GPL vmlinux 0x99750b35 of_alias_get_id +EXPORT_SYMBOL_GPL vmlinux 0x998d79d6 x509_decode_time +EXPORT_SYMBOL_GPL vmlinux 0x999a2730 attribute_container_classdev_to_container +EXPORT_SYMBOL_GPL vmlinux 0x99c0fab6 cpci_hp_unregister_controller +EXPORT_SYMBOL_GPL vmlinux 0x99dfbfcc udp4_hwcsum +EXPORT_SYMBOL_GPL vmlinux 0x99eb0d1b blk_mq_freeze_queue +EXPORT_SYMBOL_GPL vmlinux 0x99ebdf9f devm_regulator_register +EXPORT_SYMBOL_GPL vmlinux 0x99f018c4 nvmem_cell_read +EXPORT_SYMBOL_GPL vmlinux 0x99f2d00a sysfs_emit_at +EXPORT_SYMBOL_GPL vmlinux 0x9a0bf4f9 __phy_modify_mmd +EXPORT_SYMBOL_GPL vmlinux 0x9a0c80e7 bgmac_adjust_link +EXPORT_SYMBOL_GPL vmlinux 0x9a11a0fc crypto_attr_alg_name +EXPORT_SYMBOL_GPL vmlinux 0x9a16ef4a memunmap_pages +EXPORT_SYMBOL_GPL vmlinux 0x9a506276 event_triggers_call +EXPORT_SYMBOL_GPL vmlinux 0x9a58dd2d trace_print_bitmask_seq +EXPORT_SYMBOL_GPL vmlinux 0x9a660d1a pcie_update_link_speed +EXPORT_SYMBOL_GPL vmlinux 0x9a6b2620 security_path_chmod +EXPORT_SYMBOL_GPL vmlinux 0x9a996df2 sdev_evt_send_simple +EXPORT_SYMBOL_GPL vmlinux 0x9aa11eb7 iommu_set_fault_handler +EXPORT_SYMBOL_GPL vmlinux 0x9aacff7f devm_namespace_enable +EXPORT_SYMBOL_GPL vmlinux 0x9ac11b74 suspend_set_ops +EXPORT_SYMBOL_GPL vmlinux 0x9ad921e8 usb_acpi_set_power_state +EXPORT_SYMBOL_GPL vmlinux 0x9ae4191f sbitmap_queue_init_node +EXPORT_SYMBOL_GPL vmlinux 0x9aeacb87 ring_buffer_iter_empty +EXPORT_SYMBOL_GPL vmlinux 0x9afc1837 rio_local_get_device_id +EXPORT_SYMBOL_GPL vmlinux 0x9b07dfe8 pci_d3cold_disable +EXPORT_SYMBOL_GPL vmlinux 0x9b0a641f bsg_unregister_queue +EXPORT_SYMBOL_GPL vmlinux 0x9b0b84ad regulator_get_current_limit +EXPORT_SYMBOL_GPL vmlinux 0x9b14f732 each_symbol_section +EXPORT_SYMBOL_GPL vmlinux 0x9b163db4 do_take_over_console +EXPORT_SYMBOL_GPL vmlinux 0x9b2d065a gpiod_get_value_cansleep +EXPORT_SYMBOL_GPL vmlinux 0x9b316343 crypto_alloc_base +EXPORT_SYMBOL_GPL vmlinux 0x9b405bcf direct_make_request +EXPORT_SYMBOL_GPL vmlinux 0x9b4b60fe devfreq_event_add_edev +EXPORT_SYMBOL_GPL vmlinux 0x9b4c9804 sk_msg_free_nocharge +EXPORT_SYMBOL_GPL vmlinux 0x9b555c8c pm_suspend_default_s2idle +EXPORT_SYMBOL_GPL vmlinux 0x9b6b7195 ata_bmdma_port_ops +EXPORT_SYMBOL_GPL vmlinux 0x9b6ec967 ring_buffer_size +EXPORT_SYMBOL_GPL vmlinux 0x9b70de4f devlink_register +EXPORT_SYMBOL_GPL vmlinux 0x9b74d770 devm_mdiobus_alloc_size +EXPORT_SYMBOL_GPL vmlinux 0x9b781e6e ata_sff_exec_command +EXPORT_SYMBOL_GPL vmlinux 0x9b896724 devlink_param_value_str_fill +EXPORT_SYMBOL_GPL vmlinux 0x9b9071cb get_old_itimerspec32 +EXPORT_SYMBOL_GPL vmlinux 0x9b92d16e pinctrl_gpio_set_config +EXPORT_SYMBOL_GPL vmlinux 0x9b993fcf gpiod_export_link +EXPORT_SYMBOL_GPL vmlinux 0x9b9cabc7 dev_pm_opp_find_freq_ceil_by_volt +EXPORT_SYMBOL_GPL vmlinux 0x9ba2bb2b gpio_request_array +EXPORT_SYMBOL_GPL vmlinux 0x9ba4acf8 serial8250_clear_and_reinit_fifos +EXPORT_SYMBOL_GPL vmlinux 0x9baa8e83 dma_request_chan +EXPORT_SYMBOL_GPL vmlinux 0x9bbb7749 crypto_ahash_walk_first +EXPORT_SYMBOL_GPL vmlinux 0x9bbd74f9 pm_relax +EXPORT_SYMBOL_GPL vmlinux 0x9bc77923 __tracepoint_neigh_update +EXPORT_SYMBOL_GPL vmlinux 0x9bd54c9f rio_unmap_outb_region +EXPORT_SYMBOL_GPL vmlinux 0x9bde4c32 tty_save_termios +EXPORT_SYMBOL_GPL vmlinux 0x9be1831b inet6_compat_ioctl +EXPORT_SYMBOL_GPL vmlinux 0x9bece81b mpi_cmp_ui +EXPORT_SYMBOL_GPL vmlinux 0x9bfad32d rio_mport_write_config_32 +EXPORT_SYMBOL_GPL vmlinux 0x9c0d7777 kobject_create_and_add +EXPORT_SYMBOL_GPL vmlinux 0x9c15bb24 genphy_c45_read_mdix +EXPORT_SYMBOL_GPL vmlinux 0x9c1c2a04 of_irq_get_byname +EXPORT_SYMBOL_GPL vmlinux 0x9c1e0110 crypto_shoot_alg +EXPORT_SYMBOL_GPL vmlinux 0x9c24454a acomp_request_free +EXPORT_SYMBOL_GPL vmlinux 0x9c29f8c2 rio_request_outb_mbox +EXPORT_SYMBOL_GPL vmlinux 0x9c482672 devm_thermal_zone_of_sensor_unregister +EXPORT_SYMBOL_GPL vmlinux 0x9c4bd8c9 i2c_generic_scl_recovery +EXPORT_SYMBOL_GPL vmlinux 0x9c5b9e31 lwtunnel_get_encap_size +EXPORT_SYMBOL_GPL vmlinux 0x9c6982bd virtqueue_add_sgs +EXPORT_SYMBOL_GPL vmlinux 0x9c6d7a4a dev_queue_xmit_nit +EXPORT_SYMBOL_GPL vmlinux 0x9c6febfc add_uevent_var +EXPORT_SYMBOL_GPL vmlinux 0x9c803020 usb_phy_roothub_power_on +EXPORT_SYMBOL_GPL vmlinux 0x9c937b4b thermal_zone_get_slope +EXPORT_SYMBOL_GPL vmlinux 0x9c946c19 pci_pr3_present +EXPORT_SYMBOL_GPL vmlinux 0x9c9ab07f handle_mm_fault +EXPORT_SYMBOL_GPL vmlinux 0x9ca2867c debugfs_create_blob +EXPORT_SYMBOL_GPL vmlinux 0x9ca58c3a mmc_cmdq_enable +EXPORT_SYMBOL_GPL vmlinux 0x9ca80c34 gpiod_get_raw_value_cansleep +EXPORT_SYMBOL_GPL vmlinux 0x9caab9ef acpi_gpio_get_irq_resource +EXPORT_SYMBOL_GPL vmlinux 0x9cc4f70a register_pm_notifier +EXPORT_SYMBOL_GPL vmlinux 0x9ccf9941 crypto_stats_akcipher_sign +EXPORT_SYMBOL_GPL vmlinux 0x9cd7eebf ahci_platform_enable_resources +EXPORT_SYMBOL_GPL vmlinux 0x9ce24c23 usb_hcd_setup_local_mem +EXPORT_SYMBOL_GPL vmlinux 0x9ce2ea43 posix_acl_default_xattr_handler +EXPORT_SYMBOL_GPL vmlinux 0x9ce3024b power_supply_register +EXPORT_SYMBOL_GPL vmlinux 0x9ce738ae __module_address +EXPORT_SYMBOL_GPL vmlinux 0x9cf37c44 __iowrite32_copy +EXPORT_SYMBOL_GPL vmlinux 0x9cf44173 sdio_align_size +EXPORT_SYMBOL_GPL vmlinux 0x9cf77258 bpf_prog_destroy +EXPORT_SYMBOL_GPL vmlinux 0x9d09e8ae ring_buffer_event_data +EXPORT_SYMBOL_GPL vmlinux 0x9d1e45f3 dma_buf_dynamic_attach +EXPORT_SYMBOL_GPL vmlinux 0x9d3603bc xfrm_audit_state_delete +EXPORT_SYMBOL_GPL vmlinux 0x9d39165d __kernel_write +EXPORT_SYMBOL_GPL vmlinux 0x9d4ae2c9 powercap_register_zone +EXPORT_SYMBOL_GPL vmlinux 0x9d509953 serial8250_em485_destroy +EXPORT_SYMBOL_GPL vmlinux 0x9d52c82d ata_acpi_cbl_80wire +EXPORT_SYMBOL_GPL vmlinux 0x9d593c1b pm_generic_freeze_noirq +EXPORT_SYMBOL_GPL vmlinux 0x9d5d3e1a nvdimm_blk_region_create +EXPORT_SYMBOL_GPL vmlinux 0x9d9422f7 of_nvmem_device_get +EXPORT_SYMBOL_GPL vmlinux 0x9da942c8 dev_pm_opp_detach_genpd +EXPORT_SYMBOL_GPL vmlinux 0x9db5476c devm_ti_sci_get_by_phandle +EXPORT_SYMBOL_GPL vmlinux 0x9db79967 meson_clk_pll_ro_ops +EXPORT_SYMBOL_GPL vmlinux 0x9db9ded6 ip6_route_input_lookup +EXPORT_SYMBOL_GPL vmlinux 0x9dcb21db rtc_nvmem_register +EXPORT_SYMBOL_GPL vmlinux 0x9e005e6f cppc_get_perf_caps +EXPORT_SYMBOL_GPL vmlinux 0x9e05e6d5 __fscrypt_encrypt_symlink +EXPORT_SYMBOL_GPL vmlinux 0x9e08d700 __tracepoint_xdp_bulk_tx +EXPORT_SYMBOL_GPL vmlinux 0x9e3a16e2 regulator_set_current_limit +EXPORT_SYMBOL_GPL vmlinux 0x9e3f081d acpi_dev_remove_driver_gpios +EXPORT_SYMBOL_GPL vmlinux 0x9e472f5f snmp_fold_field +EXPORT_SYMBOL_GPL vmlinux 0x9e4acdfb pci_hp_remove_module_link +EXPORT_SYMBOL_GPL vmlinux 0x9e59f3b5 arizona_dev_init +EXPORT_SYMBOL_GPL vmlinux 0x9e5a057a mddev_unlock +EXPORT_SYMBOL_GPL vmlinux 0x9e70b94f alloc_skb_for_msg +EXPORT_SYMBOL_GPL vmlinux 0x9e79624d lwtstate_free +EXPORT_SYMBOL_GPL vmlinux 0x9e7fb3df nf_queue_nf_hook_drop +EXPORT_SYMBOL_GPL vmlinux 0x9e9421d6 sec_irq_init +EXPORT_SYMBOL_GPL vmlinux 0x9e99be92 regulator_desc_list_voltage_linear_range +EXPORT_SYMBOL_GPL vmlinux 0x9ea1331f regmap_get_val_endian +EXPORT_SYMBOL_GPL vmlinux 0x9ea9cc9f ata_port_abort +EXPORT_SYMBOL_GPL vmlinux 0x9ebc9a1c rio_get_device +EXPORT_SYMBOL_GPL vmlinux 0x9ec4dce3 dev_pm_opp_get_max_transition_latency +EXPORT_SYMBOL_GPL vmlinux 0x9ece5f7c devm_regulator_get +EXPORT_SYMBOL_GPL vmlinux 0x9ed554b3 unregister_keyboard_notifier +EXPORT_SYMBOL_GPL vmlinux 0x9ef617f5 perf_pmu_register +EXPORT_SYMBOL_GPL vmlinux 0x9f0197d1 thermal_zone_get_offset +EXPORT_SYMBOL_GPL vmlinux 0x9f11b1db devm_rtc_device_register +EXPORT_SYMBOL_GPL vmlinux 0x9f32f336 pinctrl_add_gpio_ranges +EXPORT_SYMBOL_GPL vmlinux 0x9f36457e __tracepoint_fdb_delete +EXPORT_SYMBOL_GPL vmlinux 0x9f3f848c __efivar_entry_delete +EXPORT_SYMBOL_GPL vmlinux 0x9f4c8048 crypto_remove_spawns +EXPORT_SYMBOL_GPL vmlinux 0x9f517986 HYPERVISOR_hvm_op +EXPORT_SYMBOL_GPL vmlinux 0x9f62300e acpi_device_update_power +EXPORT_SYMBOL_GPL vmlinux 0x9f6bb588 iommu_domain_set_attr +EXPORT_SYMBOL_GPL vmlinux 0x9f6d78fc kvm_get_pfn +EXPORT_SYMBOL_GPL vmlinux 0x9f75bcbd power_supply_powers +EXPORT_SYMBOL_GPL vmlinux 0x9f85f305 fuse_send_init +EXPORT_SYMBOL_GPL vmlinux 0x9f982cdf kobj_sysfs_ops +EXPORT_SYMBOL_GPL vmlinux 0x9fb51c4a device_remove_file_self +EXPORT_SYMBOL_GPL vmlinux 0x9fbb9b04 lp8788_update_bits +EXPORT_SYMBOL_GPL vmlinux 0x9fbfebab erst_write +EXPORT_SYMBOL_GPL vmlinux 0x9fca119f trace_event_buffer_lock_reserve +EXPORT_SYMBOL_GPL vmlinux 0x9fce80db fb_notifier_call_chain +EXPORT_SYMBOL_GPL vmlinux 0x9fd117ae gpiod_direction_output_raw +EXPORT_SYMBOL_GPL vmlinux 0x9fe5c828 component_master_add_with_match +EXPORT_SYMBOL_GPL vmlinux 0x9fe899b7 get_cpu_idle_time +EXPORT_SYMBOL_GPL vmlinux 0x9fe939e1 mpi_powm +EXPORT_SYMBOL_GPL vmlinux 0x9ffaa15f proc_create_net_data_write +EXPORT_SYMBOL_GPL vmlinux 0x9ffd254f skb_to_sgvec +EXPORT_SYMBOL_GPL vmlinux 0xa0179533 bus_register_notifier +EXPORT_SYMBOL_GPL vmlinux 0xa01a8d9b nd_cmd_bus_desc +EXPORT_SYMBOL_GPL vmlinux 0xa0282918 tcp_sendmsg_locked +EXPORT_SYMBOL_GPL vmlinux 0xa0290d12 __devm_pci_epc_create +EXPORT_SYMBOL_GPL vmlinux 0xa0343865 ata_pci_sff_activate_host +EXPORT_SYMBOL_GPL vmlinux 0xa03bcc38 class_compat_create_link +EXPORT_SYMBOL_GPL vmlinux 0xa0450444 fsl_mc_object_allocate +EXPORT_SYMBOL_GPL vmlinux 0xa04f945a cpus_read_lock +EXPORT_SYMBOL_GPL vmlinux 0xa0514012 regulator_count_voltages +EXPORT_SYMBOL_GPL vmlinux 0xa064e42a regulator_sync_voltage +EXPORT_SYMBOL_GPL vmlinux 0xa06aadf6 virtqueue_get_used_addr +EXPORT_SYMBOL_GPL vmlinux 0xa0a4bd1b mtk_pinconf_bias_get_rev1 +EXPORT_SYMBOL_GPL vmlinux 0xa0c0a5ee __clocksource_update_freq_scale +EXPORT_SYMBOL_GPL vmlinux 0xa0c6befa hrtimer_cancel +EXPORT_SYMBOL_GPL vmlinux 0xa0cd2657 uprobe_register +EXPORT_SYMBOL_GPL vmlinux 0xa0d3456d nr_swap_pages +EXPORT_SYMBOL_GPL vmlinux 0xa0e22d63 of_dma_controller_free +EXPORT_SYMBOL_GPL vmlinux 0xa0e8c702 pci_assign_unassigned_bus_resources +EXPORT_SYMBOL_GPL vmlinux 0xa0faccf8 device_property_read_u8_array +EXPORT_SYMBOL_GPL vmlinux 0xa0fc8bc8 ohci_setup +EXPORT_SYMBOL_GPL vmlinux 0xa10d809f of_platform_populate +EXPORT_SYMBOL_GPL vmlinux 0xa11216be xen_store_domain_type +EXPORT_SYMBOL_GPL vmlinux 0xa11f2e0c crypto_stats_compress +EXPORT_SYMBOL_GPL vmlinux 0xa1268ce2 serial8250_do_shutdown +EXPORT_SYMBOL_GPL vmlinux 0xa128e296 of_pm_clk_add_clk +EXPORT_SYMBOL_GPL vmlinux 0xa134737c ata_sff_softreset +EXPORT_SYMBOL_GPL vmlinux 0xa13ffd39 regulator_bulk_register_supply_alias +EXPORT_SYMBOL_GPL vmlinux 0xa14a4cf2 espintcp_push_skb +EXPORT_SYMBOL_GPL vmlinux 0xa15310e0 devm_of_clk_add_hw_provider +EXPORT_SYMBOL_GPL vmlinux 0xa156a1f2 erst_get_record_id_end +EXPORT_SYMBOL_GPL vmlinux 0xa1641d4c restore_online_page_callback +EXPORT_SYMBOL_GPL vmlinux 0xa1644c64 dma_buf_get +EXPORT_SYMBOL_GPL vmlinux 0xa1691b63 xas_find_marked +EXPORT_SYMBOL_GPL vmlinux 0xa16bd696 alloc_vm_area +EXPORT_SYMBOL_GPL vmlinux 0xa18a4906 led_trigger_unregister_simple +EXPORT_SYMBOL_GPL vmlinux 0xa193c8c2 pci_set_pcie_reset_state +EXPORT_SYMBOL_GPL vmlinux 0xa19c48b2 pci_epc_put +EXPORT_SYMBOL_GPL vmlinux 0xa1c4231f kvm_set_pfn_dirty +EXPORT_SYMBOL_GPL vmlinux 0xa1cf093e fuse_request_end +EXPORT_SYMBOL_GPL vmlinux 0xa1d8004a videomode_from_timing +EXPORT_SYMBOL_GPL vmlinux 0xa1e63269 usb_hcd_poll_rh_status +EXPORT_SYMBOL_GPL vmlinux 0xa1e94069 dev_pm_clear_wake_irq +EXPORT_SYMBOL_GPL vmlinux 0xa1ed9c8b add_hwgenerator_randomness +EXPORT_SYMBOL_GPL vmlinux 0xa200199a rtnl_get_net_ns_capable +EXPORT_SYMBOL_GPL vmlinux 0xa2064496 fsl_mc_device_add +EXPORT_SYMBOL_GPL vmlinux 0xa20d01ba __trace_bprintk +EXPORT_SYMBOL_GPL vmlinux 0xa22c511c of_find_spi_device_by_node +EXPORT_SYMBOL_GPL vmlinux 0xa22d00ae iommu_aux_get_pasid +EXPORT_SYMBOL_GPL vmlinux 0xa23a7f30 kvm_release_page_clean +EXPORT_SYMBOL_GPL vmlinux 0xa23ebaa7 pci_epf_match_device +EXPORT_SYMBOL_GPL vmlinux 0xa26229e1 __percpu_down_read +EXPORT_SYMBOL_GPL vmlinux 0xa26d9b4f workqueue_congested +EXPORT_SYMBOL_GPL vmlinux 0xa27d2216 fuse_sync_release +EXPORT_SYMBOL_GPL vmlinux 0xa29b95ec devm_spi_register_controller +EXPORT_SYMBOL_GPL vmlinux 0xa2af54b3 irq_from_evtchn +EXPORT_SYMBOL_GPL vmlinux 0xa2b237cd __pci_hp_initialize +EXPORT_SYMBOL_GPL vmlinux 0xa2cce7a2 fib_nl_newrule +EXPORT_SYMBOL_GPL vmlinux 0xa2cd6caf irq_domain_alloc_irqs_parent +EXPORT_SYMBOL_GPL vmlinux 0xa2d4de5d tty_standard_install +EXPORT_SYMBOL_GPL vmlinux 0xa2e1b3ef trace_printk_init_buffers +EXPORT_SYMBOL_GPL vmlinux 0xa2f51bea kvm_vcpu_kick +EXPORT_SYMBOL_GPL vmlinux 0xa2f812f9 phy_10gbit_fec_features_array +EXPORT_SYMBOL_GPL vmlinux 0xa30ad672 get_device_system_crosststamp +EXPORT_SYMBOL_GPL vmlinux 0xa30ea0cf pci_hp_create_module_link +EXPORT_SYMBOL_GPL vmlinux 0xa32d2932 bpf_trace_run5 +EXPORT_SYMBOL_GPL vmlinux 0xa33105ea cpufreq_dbs_governor_init +EXPORT_SYMBOL_GPL vmlinux 0xa33743e5 ipv4_update_pmtu +EXPORT_SYMBOL_GPL vmlinux 0xa3386e14 pci_num_vf +EXPORT_SYMBOL_GPL vmlinux 0xa33a6ddf rio_mport_get_physefb +EXPORT_SYMBOL_GPL vmlinux 0xa34ff487 regulator_register_supply_alias +EXPORT_SYMBOL_GPL vmlinux 0xa35d4b1d phy_resolve_aneg_linkmode +EXPORT_SYMBOL_GPL vmlinux 0xa3659b5f __tracepoint_devlink_hwerr +EXPORT_SYMBOL_GPL vmlinux 0xa36f50fb is_binary_blacklisted +EXPORT_SYMBOL_GPL vmlinux 0xa37627ca crypto_unregister_templates +EXPORT_SYMBOL_GPL vmlinux 0xa3808ba7 devprop_gpiochip_set_names +EXPORT_SYMBOL_GPL vmlinux 0xa38602cd drain_workqueue +EXPORT_SYMBOL_GPL vmlinux 0xa389a49a profile_event_register +EXPORT_SYMBOL_GPL vmlinux 0xa38a9f71 get_itimerspec64 +EXPORT_SYMBOL_GPL vmlinux 0xa38c1436 cpu_bit_bitmap +EXPORT_SYMBOL_GPL vmlinux 0xa3953db2 meson_clk_cpu_dyndiv_ops +EXPORT_SYMBOL_GPL vmlinux 0xa3970925 kernel_kobj +EXPORT_SYMBOL_GPL vmlinux 0xa3a04602 btree_geo64 +EXPORT_SYMBOL_GPL vmlinux 0xa3a256f9 cros_ec_get_sensor_count +EXPORT_SYMBOL_GPL vmlinux 0xa3ae711b sdio_signal_irq +EXPORT_SYMBOL_GPL vmlinux 0xa3b958ce reset_hung_task_detector +EXPORT_SYMBOL_GPL vmlinux 0xa3c31f98 usb_reset_configuration +EXPORT_SYMBOL_GPL vmlinux 0xa3d19ffc sdio_writeb_readb +EXPORT_SYMBOL_GPL vmlinux 0xa3d767af rt_mutex_unlock +EXPORT_SYMBOL_GPL vmlinux 0xa3dcb681 zynqmp_pm_fpga_load +EXPORT_SYMBOL_GPL vmlinux 0xa3ece414 freezer_cgrp_subsys_enabled_key +EXPORT_SYMBOL_GPL vmlinux 0xa3f12f69 __crypto_xor +EXPORT_SYMBOL_GPL vmlinux 0xa4031b7f sfp_parse_port +EXPORT_SYMBOL_GPL vmlinux 0xa410a295 devlink_region_destroy +EXPORT_SYMBOL_GPL vmlinux 0xa4234c8b pci_user_read_config_byte +EXPORT_SYMBOL_GPL vmlinux 0xa42b072f hisi_uncore_pmu_start +EXPORT_SYMBOL_GPL vmlinux 0xa4393f41 usb_phy_roothub_resume +EXPORT_SYMBOL_GPL vmlinux 0xa44a1307 interval_tree_iter_first +EXPORT_SYMBOL_GPL vmlinux 0xa45264b7 ima_file_check +EXPORT_SYMBOL_GPL vmlinux 0xa452f2a4 xen_pirq_from_irq +EXPORT_SYMBOL_GPL vmlinux 0xa4534080 xenbus_unmap_ring_vfree +EXPORT_SYMBOL_GPL vmlinux 0xa45c7b90 stack_trace_print +EXPORT_SYMBOL_GPL vmlinux 0xa45d44fc zynqmp_pm_get_pll_frac_data +EXPORT_SYMBOL_GPL vmlinux 0xa471982d dm_table_set_type +EXPORT_SYMBOL_GPL vmlinux 0xa48196c8 kdb_poll_idx +EXPORT_SYMBOL_GPL vmlinux 0xa4845b5b device_for_each_child +EXPORT_SYMBOL_GPL vmlinux 0xa4877ccb of_clk_hw_simple_get +EXPORT_SYMBOL_GPL vmlinux 0xa48e742b tpm_send +EXPORT_SYMBOL_GPL vmlinux 0xa49c802c gpiod_direction_output +EXPORT_SYMBOL_GPL vmlinux 0xa4ab7c1c ring_buffer_overruns +EXPORT_SYMBOL_GPL vmlinux 0xa4b07fe7 ring_buffer_change_overwrite +EXPORT_SYMBOL_GPL vmlinux 0xa4b7cfba blk_rq_unprep_clone +EXPORT_SYMBOL_GPL vmlinux 0xa4bfb27f fscrypt_file_open +EXPORT_SYMBOL_GPL vmlinux 0xa4cc1a8d platform_device_add +EXPORT_SYMBOL_GPL vmlinux 0xa4ec6c01 pinctrl_find_gpio_range_from_pin +EXPORT_SYMBOL_GPL vmlinux 0xa4f2a2ed acpi_irq_get +EXPORT_SYMBOL_GPL vmlinux 0xa50335f4 sbitmap_finish_wait +EXPORT_SYMBOL_GPL vmlinux 0xa5081eda gpiod_get_array +EXPORT_SYMBOL_GPL vmlinux 0xa511efde security_path_symlink +EXPORT_SYMBOL_GPL vmlinux 0xa5203752 pci_epc_get_msix +EXPORT_SYMBOL_GPL vmlinux 0xa531471e clk_save_context +EXPORT_SYMBOL_GPL vmlinux 0xa53712ff disk_part_iter_exit +EXPORT_SYMBOL_GPL vmlinux 0xa5484838 rockchip_pcie_cfg_configuration_accesses +EXPORT_SYMBOL_GPL vmlinux 0xa54d5469 device_link_del +EXPORT_SYMBOL_GPL vmlinux 0xa55d6f01 fsnotify_init_mark +EXPORT_SYMBOL_GPL vmlinux 0xa58c1622 mmu_interval_notifier_insert_locked +EXPORT_SYMBOL_GPL vmlinux 0xa5a0f5da fsl_mc_device_remove +EXPORT_SYMBOL_GPL vmlinux 0xa5b88154 kvm_vcpu_write_guest +EXPORT_SYMBOL_GPL vmlinux 0xa5bda8a1 efi_capsule_supported +EXPORT_SYMBOL_GPL vmlinux 0xa5c5c322 net_dm_hw_report +EXPORT_SYMBOL_GPL vmlinux 0xa5d7c388 pstore_type_to_name +EXPORT_SYMBOL_GPL vmlinux 0xa5dc9df8 fwnode_get_named_child_node +EXPORT_SYMBOL_GPL vmlinux 0xa5e7aae6 ahci_reset_em +EXPORT_SYMBOL_GPL vmlinux 0xa5efbf4c async_synchronize_full +EXPORT_SYMBOL_GPL vmlinux 0xa6060983 scmi_driver_unregister +EXPORT_SYMBOL_GPL vmlinux 0xa611d2de disk_has_partitions +EXPORT_SYMBOL_GPL vmlinux 0xa613da39 unregister_pernet_device +EXPORT_SYMBOL_GPL vmlinux 0xa6143ac6 mmu_notifier_unregister +EXPORT_SYMBOL_GPL vmlinux 0xa619667c dprc_get_obj +EXPORT_SYMBOL_GPL vmlinux 0xa62688f3 ehci_reset +EXPORT_SYMBOL_GPL vmlinux 0xa6277047 pcie_aspm_enabled +EXPORT_SYMBOL_GPL vmlinux 0xa62892c6 efivar_sysfs_list +EXPORT_SYMBOL_GPL vmlinux 0xa6386778 wm8400_reset_codec_reg_cache +EXPORT_SYMBOL_GPL vmlinux 0xa639d149 apei_get_debugfs_dir +EXPORT_SYMBOL_GPL vmlinux 0xa645ca5b devres_for_each_res +EXPORT_SYMBOL_GPL vmlinux 0xa66aeaae ata_dummy_port_info +EXPORT_SYMBOL_GPL vmlinux 0xa66bb932 serdev_device_add +EXPORT_SYMBOL_GPL vmlinux 0xa6824f3f __tracepoint_br_fdb_external_learn_add +EXPORT_SYMBOL_GPL vmlinux 0xa69128e8 page_cache_readahead_unbounded +EXPORT_SYMBOL_GPL vmlinux 0xa6b06f65 ata_sff_queue_work +EXPORT_SYMBOL_GPL vmlinux 0xa6b21ef2 dpm_suspend_end +EXPORT_SYMBOL_GPL vmlinux 0xa6b414bb wakeup_source_unregister +EXPORT_SYMBOL_GPL vmlinux 0xa6b80482 phy_modify_changed +EXPORT_SYMBOL_GPL vmlinux 0xa6bc5d87 ncsi_stop_dev +EXPORT_SYMBOL_GPL vmlinux 0xa6e1a69d kick_all_cpus_sync +EXPORT_SYMBOL_GPL vmlinux 0xa6fcafd4 crypto_alloc_tfm +EXPORT_SYMBOL_GPL vmlinux 0xa709b201 devfreq_event_enable_edev +EXPORT_SYMBOL_GPL vmlinux 0xa709c835 fib6_info_destroy_rcu +EXPORT_SYMBOL_GPL vmlinux 0xa70c1d93 tcp_bpf_sendmsg_redir +EXPORT_SYMBOL_GPL vmlinux 0xa7113b10 dpcon_set_notification +EXPORT_SYMBOL_GPL vmlinux 0xa7198523 ulpi_viewport_access_ops +EXPORT_SYMBOL_GPL vmlinux 0xa71c6c77 transport_remove_device +EXPORT_SYMBOL_GPL vmlinux 0xa731f387 nl_table_lock +EXPORT_SYMBOL_GPL vmlinux 0xa7336759 evm_verifyxattr +EXPORT_SYMBOL_GPL vmlinux 0xa73455ce devm_platform_get_and_ioremap_resource +EXPORT_SYMBOL_GPL vmlinux 0xa73a7774 rio_get_comptag +EXPORT_SYMBOL_GPL vmlinux 0xa74a6930 gov_update_cpu_data +EXPORT_SYMBOL_GPL vmlinux 0xa759ebc8 gpiod_set_array_value +EXPORT_SYMBOL_GPL vmlinux 0xa77e5b45 iommu_register_device_fault_handler +EXPORT_SYMBOL_GPL vmlinux 0xa77ec3b1 device_remove_groups +EXPORT_SYMBOL_GPL vmlinux 0xa7856098 cpu_topology +EXPORT_SYMBOL_GPL vmlinux 0xa788700b copy_to_user_nofault +EXPORT_SYMBOL_GPL vmlinux 0xa799292b dma_max_mapping_size +EXPORT_SYMBOL_GPL vmlinux 0xa7c76bf4 scsi_host_block +EXPORT_SYMBOL_GPL vmlinux 0xa7d9457c ata_bmdma_setup +EXPORT_SYMBOL_GPL vmlinux 0xa7e21237 fb_deferred_io_fsync +EXPORT_SYMBOL_GPL vmlinux 0xa7e457d7 dpbp_get_attributes +EXPORT_SYMBOL_GPL vmlinux 0xa7f2f195 sched_trace_rd_span +EXPORT_SYMBOL_GPL vmlinux 0xa80789f2 sysfs_create_mount_point +EXPORT_SYMBOL_GPL vmlinux 0xa80c708b rdev_get_regmap +EXPORT_SYMBOL_GPL vmlinux 0xa81a2e64 fat_update_time +EXPORT_SYMBOL_GPL vmlinux 0xa81e385f get_kernel_pages +EXPORT_SYMBOL_GPL vmlinux 0xa8315f12 ata_qc_get_active +EXPORT_SYMBOL_GPL vmlinux 0xa83235a9 of_device_request_module +EXPORT_SYMBOL_GPL vmlinux 0xa83dc5d3 mtk_hw_set_value +EXPORT_SYMBOL_GPL vmlinux 0xa851973a raw_notifier_call_chain +EXPORT_SYMBOL_GPL vmlinux 0xa8671f45 power_supply_get_drvdata +EXPORT_SYMBOL_GPL vmlinux 0xa86d041b gpiod_direction_input +EXPORT_SYMBOL_GPL vmlinux 0xa87c2a52 bpf_trace_run1 +EXPORT_SYMBOL_GPL vmlinux 0xa88044a5 serdev_controller_add +EXPORT_SYMBOL_GPL vmlinux 0xa8976623 ehci_setup +EXPORT_SYMBOL_GPL vmlinux 0xa8a19015 xenbus_switch_state +EXPORT_SYMBOL_GPL vmlinux 0xa8a62ace __pci_reset_function_locked +EXPORT_SYMBOL_GPL vmlinux 0xa8a9d253 stmpe_disable +EXPORT_SYMBOL_GPL vmlinux 0xa8b17bd3 bpf_prog_alloc +EXPORT_SYMBOL_GPL vmlinux 0xa8b286cc adp5520_unregister_notifier +EXPORT_SYMBOL_GPL vmlinux 0xa8bc1596 led_colors +EXPORT_SYMBOL_GPL vmlinux 0xa8bce916 i2c_dw_probe_master +EXPORT_SYMBOL_GPL vmlinux 0xa8c9262b pci_restore_msi_state +EXPORT_SYMBOL_GPL vmlinux 0xa8e29187 pinconf_generic_dump_config +EXPORT_SYMBOL_GPL vmlinux 0xa8e51b41 devlink_net_set +EXPORT_SYMBOL_GPL vmlinux 0xa8ebe54e cpu_device_create +EXPORT_SYMBOL_GPL vmlinux 0xa90aac06 irq_setup_generic_chip +EXPORT_SYMBOL_GPL vmlinux 0xa91ffba3 crypto_unregister_aeads +EXPORT_SYMBOL_GPL vmlinux 0xa9244f37 device_set_wakeup_capable +EXPORT_SYMBOL_GPL vmlinux 0xa9318cc7 dax_copy_to_iter +EXPORT_SYMBOL_GPL vmlinux 0xa9320d27 ktime_get_seconds +EXPORT_SYMBOL_GPL vmlinux 0xa936a20d of_phandle_iterator_init +EXPORT_SYMBOL_GPL vmlinux 0xa93f5d5d of_platform_depopulate +EXPORT_SYMBOL_GPL vmlinux 0xa96d0752 __generic_fsdax_supported +EXPORT_SYMBOL_GPL vmlinux 0xa979ec9b find_asymmetric_key +EXPORT_SYMBOL_GPL vmlinux 0xa97aec55 eventfd_ctx_fileget +EXPORT_SYMBOL_GPL vmlinux 0xa97c9935 acpi_subsys_runtime_suspend +EXPORT_SYMBOL_GPL vmlinux 0xa986a182 ahci_platform_disable_phys +EXPORT_SYMBOL_GPL vmlinux 0xa98733ff ip_tunnel_get_stats64 +EXPORT_SYMBOL_GPL vmlinux 0xa9969394 serdev_device_alloc +EXPORT_SYMBOL_GPL vmlinux 0xa99941f9 usb_anchor_urb +EXPORT_SYMBOL_GPL vmlinux 0xa99ef899 devlink_fmsg_bool_pair_put +EXPORT_SYMBOL_GPL vmlinux 0xa9b4287a pm_runtime_no_callbacks +EXPORT_SYMBOL_GPL vmlinux 0xa9b5efcf wbc_attach_and_unlock_inode +EXPORT_SYMBOL_GPL vmlinux 0xa9bc8b74 module_mutex +EXPORT_SYMBOL_GPL vmlinux 0xa9be1c41 crypto_comp_compress +EXPORT_SYMBOL_GPL vmlinux 0xa9e18049 task_handoff_unregister +EXPORT_SYMBOL_GPL vmlinux 0xa9e629ce cpu_subsys +EXPORT_SYMBOL_GPL vmlinux 0xa9f3418b is_software_node +EXPORT_SYMBOL_GPL vmlinux 0xa9fb9a69 lp8788_write_byte +EXPORT_SYMBOL_GPL vmlinux 0xaa13a4c0 sdio_readsb +EXPORT_SYMBOL_GPL vmlinux 0xaa1702c5 handle_simple_irq +EXPORT_SYMBOL_GPL vmlinux 0xaa1968d5 dpbp_enable +EXPORT_SYMBOL_GPL vmlinux 0xaa230f88 perf_unregister_guest_info_callbacks +EXPORT_SYMBOL_GPL vmlinux 0xaa39b76d tpm_default_chip +EXPORT_SYMBOL_GPL vmlinux 0xaa521a87 __pci_epf_register_driver +EXPORT_SYMBOL_GPL vmlinux 0xaa6a50f9 __static_key_deferred_flush +EXPORT_SYMBOL_GPL vmlinux 0xaa86b05c pci_max_pasids +EXPORT_SYMBOL_GPL vmlinux 0xaa9981b2 devm_gpiod_unhinge +EXPORT_SYMBOL_GPL vmlinux 0xaa9bddd8 ftrace_set_filter +EXPORT_SYMBOL_GPL vmlinux 0xaaa56e07 bpf_offload_dev_match +EXPORT_SYMBOL_GPL vmlinux 0xaaa7801b crypto_enqueue_request +EXPORT_SYMBOL_GPL vmlinux 0xaaa918c9 ftrace_dump +EXPORT_SYMBOL_GPL vmlinux 0xaab038db icc_set_tag +EXPORT_SYMBOL_GPL vmlinux 0xaabb40b9 crypto_dequeue_request +EXPORT_SYMBOL_GPL vmlinux 0xaac75c24 clk_hw_round_rate +EXPORT_SYMBOL_GPL vmlinux 0xaaeb332f perf_aux_output_begin +EXPORT_SYMBOL_GPL vmlinux 0xaaf03c00 perf_get_aux +EXPORT_SYMBOL_GPL vmlinux 0xaaf34ba0 irq_chip_set_type_parent +EXPORT_SYMBOL_GPL vmlinux 0xaaf95668 usb_hcd_resume_root_hub +EXPORT_SYMBOL_GPL vmlinux 0xab00d0e4 tcp_orphan_count +EXPORT_SYMBOL_GPL vmlinux 0xab052adb iomap_migrate_page +EXPORT_SYMBOL_GPL vmlinux 0xab060841 zynqmp_pm_query_data +EXPORT_SYMBOL_GPL vmlinux 0xab0d9829 i2c_adapter_depth +EXPORT_SYMBOL_GPL vmlinux 0xab212afe sk_msg_free +EXPORT_SYMBOL_GPL vmlinux 0xab445889 sk_msg_return_zero +EXPORT_SYMBOL_GPL vmlinux 0xab4e5146 wm8350_clear_bits +EXPORT_SYMBOL_GPL vmlinux 0xab54dca5 pci_d3cold_enable +EXPORT_SYMBOL_GPL vmlinux 0xab70bc0b sk_msg_return +EXPORT_SYMBOL_GPL vmlinux 0xab763ed6 devm_platform_ioremap_resource_byname +EXPORT_SYMBOL_GPL vmlinux 0xab796650 device_init_wakeup +EXPORT_SYMBOL_GPL vmlinux 0xab8a54f3 extcon_set_state +EXPORT_SYMBOL_GPL vmlinux 0xab9bd884 perf_register_guest_info_callbacks +EXPORT_SYMBOL_GPL vmlinux 0xab9d2b6f nvmem_register +EXPORT_SYMBOL_GPL vmlinux 0xabba4a0b dmi_kobj +EXPORT_SYMBOL_GPL vmlinux 0xabbdbd35 zynqmp_pm_reset_get_status +EXPORT_SYMBOL_GPL vmlinux 0xabc640f3 list_lru_isolate +EXPORT_SYMBOL_GPL vmlinux 0xabcf8fd6 create_signature +EXPORT_SYMBOL_GPL vmlinux 0xabd45848 stop_machine +EXPORT_SYMBOL_GPL vmlinux 0xabdb41c0 device_change_owner +EXPORT_SYMBOL_GPL vmlinux 0xabdc9c3c of_irq_parse_raw +EXPORT_SYMBOL_GPL vmlinux 0xabdd5e10 devm_release_action +EXPORT_SYMBOL_GPL vmlinux 0xabe87f79 pm_clk_add_clk +EXPORT_SYMBOL_GPL vmlinux 0xabf8bc72 devm_hwspin_lock_register +EXPORT_SYMBOL_GPL vmlinux 0xabfff2af __pm_runtime_suspend +EXPORT_SYMBOL_GPL vmlinux 0xac039d89 __platform_register_drivers +EXPORT_SYMBOL_GPL vmlinux 0xac06bf51 devlink_health_reporter_create +EXPORT_SYMBOL_GPL vmlinux 0xac0d80d4 sysfs_unbreak_active_protection +EXPORT_SYMBOL_GPL vmlinux 0xac23254f __lock_page_killable +EXPORT_SYMBOL_GPL vmlinux 0xac31e75d dpcon_get_attributes +EXPORT_SYMBOL_GPL vmlinux 0xac3d50a1 of_pci_get_max_link_speed +EXPORT_SYMBOL_GPL vmlinux 0xac51090c devm_devfreq_event_remove_edev +EXPORT_SYMBOL_GPL vmlinux 0xac5e2c18 file_ra_state_init +EXPORT_SYMBOL_GPL vmlinux 0xac5fd6e2 of_icc_get +EXPORT_SYMBOL_GPL vmlinux 0xac72da47 psil_get_ep_config +EXPORT_SYMBOL_GPL vmlinux 0xac78cc24 usb_hcd_link_urb_to_ep +EXPORT_SYMBOL_GPL vmlinux 0xac8403da tty_port_tty_wakeup +EXPORT_SYMBOL_GPL vmlinux 0xac99560f blkdev_ioctl +EXPORT_SYMBOL_GPL vmlinux 0xaca174b0 devres_add +EXPORT_SYMBOL_GPL vmlinux 0xaca492ff regmap_noinc_read +EXPORT_SYMBOL_GPL vmlinux 0xaca8ef48 gpiochip_enable_irq +EXPORT_SYMBOL_GPL vmlinux 0xacb4d88c clk_rate_exclusive_put +EXPORT_SYMBOL_GPL vmlinux 0xacc12296 blk_queue_can_use_dma_map_merging +EXPORT_SYMBOL_GPL vmlinux 0xacd28488 update_time +EXPORT_SYMBOL_GPL vmlinux 0xace99d2f serdev_device_write_room +EXPORT_SYMBOL_GPL vmlinux 0xad02f022 trace_output_call +EXPORT_SYMBOL_GPL vmlinux 0xad0f2b6c unix_table_lock +EXPORT_SYMBOL_GPL vmlinux 0xad17b824 __inet_lookup_established +EXPORT_SYMBOL_GPL vmlinux 0xad1bed38 led_blink_set_oneshot +EXPORT_SYMBOL_GPL vmlinux 0xad25afd3 switchdev_port_obj_add +EXPORT_SYMBOL_GPL vmlinux 0xad28330d bpf_trace_run6 +EXPORT_SYMBOL_GPL vmlinux 0xad330ff0 crypto_enqueue_request_head +EXPORT_SYMBOL_GPL vmlinux 0xad407713 perf_trace_run_bpf_submit +EXPORT_SYMBOL_GPL vmlinux 0xad4e6259 remove_cpu +EXPORT_SYMBOL_GPL vmlinux 0xad5737fc efivar_init +EXPORT_SYMBOL_GPL vmlinux 0xad645234 register_switchdev_notifier +EXPORT_SYMBOL_GPL vmlinux 0xad834b41 usb_enable_ltm +EXPORT_SYMBOL_GPL vmlinux 0xad8850de transport_setup_device +EXPORT_SYMBOL_GPL vmlinux 0xada177e3 ping_seq_start +EXPORT_SYMBOL_GPL vmlinux 0xada33f74 usb_get_intf +EXPORT_SYMBOL_GPL vmlinux 0xada38766 dst_cache_destroy +EXPORT_SYMBOL_GPL vmlinux 0xada9d464 tracing_snapshot_cond_disable +EXPORT_SYMBOL_GPL vmlinux 0xadbc0d51 sata_pmp_error_handler +EXPORT_SYMBOL_GPL vmlinux 0xaddc59d9 tps65912_device_exit +EXPORT_SYMBOL_GPL vmlinux 0xaddccde1 efivar_entry_find +EXPORT_SYMBOL_GPL vmlinux 0xade86a35 iommu_detach_group +EXPORT_SYMBOL_GPL vmlinux 0xadf9699b pci_write_msi_msg +EXPORT_SYMBOL_GPL vmlinux 0xae1051b0 net_cls_cgrp_subsys_enabled_key +EXPORT_SYMBOL_GPL vmlinux 0xae1228f5 spi_res_add +EXPORT_SYMBOL_GPL vmlinux 0xae17a733 __irq_alloc_domain_generic_chips +EXPORT_SYMBOL_GPL vmlinux 0xae2036d0 add_to_page_cache_lru +EXPORT_SYMBOL_GPL vmlinux 0xae21ca2f ata_sas_port_stop +EXPORT_SYMBOL_GPL vmlinux 0xae29f9fe blk_queue_write_cache +EXPORT_SYMBOL_GPL vmlinux 0xae2cad4e iommu_fwspec_free +EXPORT_SYMBOL_GPL vmlinux 0xae2d4d20 __ftrace_vprintk +EXPORT_SYMBOL_GPL vmlinux 0xae39f80e dst_cache_init +EXPORT_SYMBOL_GPL vmlinux 0xae3f6934 thermal_zone_of_sensor_register +EXPORT_SYMBOL_GPL vmlinux 0xae4720a2 extcon_dev_free +EXPORT_SYMBOL_GPL vmlinux 0xae66224d dev_pm_opp_of_cpumask_remove_table +EXPORT_SYMBOL_GPL vmlinux 0xae662649 usb_hcd_giveback_urb +EXPORT_SYMBOL_GPL vmlinux 0xae69b1c1 usermodehelper_read_unlock +EXPORT_SYMBOL_GPL vmlinux 0xae7c231d mpi_cmp +EXPORT_SYMBOL_GPL vmlinux 0xae7fd274 skb_consume_udp +EXPORT_SYMBOL_GPL vmlinux 0xae80e903 iommu_unmap +EXPORT_SYMBOL_GPL vmlinux 0xae834889 devm_nvmem_register +EXPORT_SYMBOL_GPL vmlinux 0xae93cda6 xenbus_probe_devices +EXPORT_SYMBOL_GPL vmlinux 0xae98773a pinctrl_select_state +EXPORT_SYMBOL_GPL vmlinux 0xaeb12315 find_iova +EXPORT_SYMBOL_GPL vmlinux 0xaeb6296a tpm1_do_selftest +EXPORT_SYMBOL_GPL vmlinux 0xaeb6f0be __cpuhp_state_add_instance +EXPORT_SYMBOL_GPL vmlinux 0xaec55c24 scsi_device_from_queue +EXPORT_SYMBOL_GPL vmlinux 0xaed399f1 ata_dev_set_feature +EXPORT_SYMBOL_GPL vmlinux 0xaed6f308 trace_event_reg +EXPORT_SYMBOL_GPL vmlinux 0xaf00a8f9 device_get_next_child_node +EXPORT_SYMBOL_GPL vmlinux 0xaf076aec nd_fletcher64 +EXPORT_SYMBOL_GPL vmlinux 0xaf07ce2e raw_seq_next +EXPORT_SYMBOL_GPL vmlinux 0xaf0b6ba7 blkg_rwstat_init +EXPORT_SYMBOL_GPL vmlinux 0xaf207c00 pci_user_read_config_dword +EXPORT_SYMBOL_GPL vmlinux 0xaf2bbd00 hisi_uncore_pmu_disable +EXPORT_SYMBOL_GPL vmlinux 0xaf348da7 cpu_pm_exit +EXPORT_SYMBOL_GPL vmlinux 0xaf4014ff usb_amd_quirk_pll_check +EXPORT_SYMBOL_GPL vmlinux 0xaf6ba1f1 pinmux_generic_get_function +EXPORT_SYMBOL_GPL vmlinux 0xaf793668 __alloc_percpu_gfp +EXPORT_SYMBOL_GPL vmlinux 0xafb07262 __pfn_to_mfn +EXPORT_SYMBOL_GPL vmlinux 0xafb3cdfb lochnagar_update_config +EXPORT_SYMBOL_GPL vmlinux 0xafb70efb of_phandle_iterator_next +EXPORT_SYMBOL_GPL vmlinux 0xafb71fca regmap_can_raw_write +EXPORT_SYMBOL_GPL vmlinux 0xafb737ae dev_set_name +EXPORT_SYMBOL_GPL vmlinux 0xafbdf5db device_for_each_child_reverse +EXPORT_SYMBOL_GPL vmlinux 0xafc4e394 call_switchdev_notifiers +EXPORT_SYMBOL_GPL vmlinux 0xafddd545 ata_id_c_string +EXPORT_SYMBOL_GPL vmlinux 0xafeb4806 unregister_trace_event +EXPORT_SYMBOL_GPL vmlinux 0xaff0cef7 scsi_dh_attached_handler_name +EXPORT_SYMBOL_GPL vmlinux 0xb0204c02 sysfs_create_file_ns +EXPORT_SYMBOL_GPL vmlinux 0xb02ac411 register_xenstore_notifier +EXPORT_SYMBOL_GPL vmlinux 0xb02e17fe kvm_vcpu_block +EXPORT_SYMBOL_GPL vmlinux 0xb04223b1 serdev_device_open +EXPORT_SYMBOL_GPL vmlinux 0xb05b5c35 crypto_register_rng +EXPORT_SYMBOL_GPL vmlinux 0xb06c7b15 devm_phy_optional_get +EXPORT_SYMBOL_GPL vmlinux 0xb06c9e8b fwnode_property_present +EXPORT_SYMBOL_GPL vmlinux 0xb0747ed2 rcu_cpu_stall_suppress +EXPORT_SYMBOL_GPL vmlinux 0xb077e70a clk_unprepare +EXPORT_SYMBOL_GPL vmlinux 0xb086d14a ata_sff_hsm_move +EXPORT_SYMBOL_GPL vmlinux 0xb08a22a3 cpufreq_show_cpus +EXPORT_SYMBOL_GPL vmlinux 0xb08c5b7d fsl8250_handle_irq +EXPORT_SYMBOL_GPL vmlinux 0xb094555d inet6_hash_connect +EXPORT_SYMBOL_GPL vmlinux 0xb096931c iomap_seek_hole +EXPORT_SYMBOL_GPL vmlinux 0xb0b85f47 ring_buffer_iter_reset +EXPORT_SYMBOL_GPL vmlinux 0xb0d1656c gpio_free_array +EXPORT_SYMBOL_GPL vmlinux 0xb0d8327b pci_find_ht_capability +EXPORT_SYMBOL_GPL vmlinux 0xb0e8e671 xenbus_otherend_changed +EXPORT_SYMBOL_GPL vmlinux 0xb1046a22 usb_block_urb +EXPORT_SYMBOL_GPL vmlinux 0xb107b5de kvm_vcpu_read_guest_page +EXPORT_SYMBOL_GPL vmlinux 0xb10d964d devlink_fmsg_pair_nest_end +EXPORT_SYMBOL_GPL vmlinux 0xb112b54a i2c_handle_smbus_host_notify +EXPORT_SYMBOL_GPL vmlinux 0xb115ab97 sdio_get_host_pm_caps +EXPORT_SYMBOL_GPL vmlinux 0xb11d9000 tty_dev_name_to_number +EXPORT_SYMBOL_GPL vmlinux 0xb1256bf9 sdio_memcpy_fromio +EXPORT_SYMBOL_GPL vmlinux 0xb132e784 pm_clk_remove +EXPORT_SYMBOL_GPL vmlinux 0xb1343434 skcipher_walk_aead_encrypt +EXPORT_SYMBOL_GPL vmlinux 0xb1380d12 platform_device_add_properties +EXPORT_SYMBOL_GPL vmlinux 0xb1425b32 dm_table_add_target_callbacks +EXPORT_SYMBOL_GPL vmlinux 0xb1647fc2 devlink_info_version_running_put +EXPORT_SYMBOL_GPL vmlinux 0xb166d4cf mtk_smi_larb_get +EXPORT_SYMBOL_GPL vmlinux 0xb16974f3 dma_resv_wait_timeout_rcu +EXPORT_SYMBOL_GPL vmlinux 0xb172ffac efivars_sysfs_init +EXPORT_SYMBOL_GPL vmlinux 0xb1839e82 kvm_vcpu_gfn_to_memslot +EXPORT_SYMBOL_GPL vmlinux 0xb18429eb suspend_device_irqs +EXPORT_SYMBOL_GPL vmlinux 0xb18e2375 ata_sff_qc_issue +EXPORT_SYMBOL_GPL vmlinux 0xb190ea23 hwspin_lock_register +EXPORT_SYMBOL_GPL vmlinux 0xb1b46449 __ip6_datagram_connect +EXPORT_SYMBOL_GPL vmlinux 0xb1b4e973 mtk_paris_pinctrl_probe +EXPORT_SYMBOL_GPL vmlinux 0xb1b8721f class_compat_remove_link +EXPORT_SYMBOL_GPL vmlinux 0xb1bed25d dpm_resume_start +EXPORT_SYMBOL_GPL vmlinux 0xb1c6d551 gpiochip_get_data +EXPORT_SYMBOL_GPL vmlinux 0xb1dabc1e unregister_ftrace_export +EXPORT_SYMBOL_GPL vmlinux 0xb1e25684 __trace_bputs +EXPORT_SYMBOL_GPL vmlinux 0xb201ca0d blk_revalidate_disk_zones +EXPORT_SYMBOL_GPL vmlinux 0xb214ecbf ohci_hub_control +EXPORT_SYMBOL_GPL vmlinux 0xb2187299 pm_wakeup_dev_event +EXPORT_SYMBOL_GPL vmlinux 0xb2210d64 reset_control_deassert +EXPORT_SYMBOL_GPL vmlinux 0xb2405efc secure_tcp_seq +EXPORT_SYMBOL_GPL vmlinux 0xb2467e8f ata_slave_link_init +EXPORT_SYMBOL_GPL vmlinux 0xb2508a0f ata_noop_qc_prep +EXPORT_SYMBOL_GPL vmlinux 0xb25a6489 perf_event_update_userpage +EXPORT_SYMBOL_GPL vmlinux 0xb25cafa8 skb_scrub_packet +EXPORT_SYMBOL_GPL vmlinux 0xb26a1add elfcorehdr_addr +EXPORT_SYMBOL_GPL vmlinux 0xb27714a1 spi_async +EXPORT_SYMBOL_GPL vmlinux 0xb28014db wm8997_i2c_regmap +EXPORT_SYMBOL_GPL vmlinux 0xb2924590 devlink_params_register +EXPORT_SYMBOL_GPL vmlinux 0xb29533ee zs_malloc +EXPORT_SYMBOL_GPL vmlinux 0xb29c2bf0 pci_slots_kset +EXPORT_SYMBOL_GPL vmlinux 0xb2a1a64e subsys_dev_iter_next +EXPORT_SYMBOL_GPL vmlinux 0xb2a4e7df lwtunnel_state_alloc +EXPORT_SYMBOL_GPL vmlinux 0xb2a5e3b8 tcp_set_keepalive +EXPORT_SYMBOL_GPL vmlinux 0xb2a6c19f blkdev_write_iter +EXPORT_SYMBOL_GPL vmlinux 0xb2b48be3 acpi_processor_get_performance_info +EXPORT_SYMBOL_GPL vmlinux 0xb2c1732e rcu_gp_set_torture_wait +EXPORT_SYMBOL_GPL vmlinux 0xb2d2c843 replace_page_cache_page +EXPORT_SYMBOL_GPL vmlinux 0xb2dc4f7f devres_remove_group +EXPORT_SYMBOL_GPL vmlinux 0xb2e764e8 suspend_valid_only_mem +EXPORT_SYMBOL_GPL vmlinux 0xb3010098 pm_clk_resume +EXPORT_SYMBOL_GPL vmlinux 0xb303e1e1 inet_csk_addr2sockaddr +EXPORT_SYMBOL_GPL vmlinux 0xb306aafa bpf_trace_run8 +EXPORT_SYMBOL_GPL vmlinux 0xb307c909 devlink_fmsg_u64_pair_put +EXPORT_SYMBOL_GPL vmlinux 0xb30a409f switchdev_handle_port_obj_del +EXPORT_SYMBOL_GPL vmlinux 0xb3329922 regulator_get_linear_step +EXPORT_SYMBOL_GPL vmlinux 0xb3351c6c rhashtable_walk_next +EXPORT_SYMBOL_GPL vmlinux 0xb337cf88 generic_online_page +EXPORT_SYMBOL_GPL vmlinux 0xb34bd5da devm_pinctrl_register +EXPORT_SYMBOL_GPL vmlinux 0xb3549fc8 clock_cooling_register +EXPORT_SYMBOL_GPL vmlinux 0xb3697565 cpuidle_enable_device +EXPORT_SYMBOL_GPL vmlinux 0xb36f9c6e skb_complete_wifi_ack +EXPORT_SYMBOL_GPL vmlinux 0xb393101c kill_dev_dax +EXPORT_SYMBOL_GPL vmlinux 0xb39a3683 pinctrl_generic_remove_group +EXPORT_SYMBOL_GPL vmlinux 0xb3ab85fa __srcu_read_unlock +EXPORT_SYMBOL_GPL vmlinux 0xb3b9ad31 ahci_host_activate +EXPORT_SYMBOL_GPL vmlinux 0xb3c5ecd9 mm_account_pinned_pages +EXPORT_SYMBOL_GPL vmlinux 0xb3ca59d5 rio_register_mport +EXPORT_SYMBOL_GPL vmlinux 0xb3d8b558 gpiochip_disable_irq +EXPORT_SYMBOL_GPL vmlinux 0xb3df4e82 dev_pm_domain_detach +EXPORT_SYMBOL_GPL vmlinux 0xb3fb1553 xenbus_dev_remove +EXPORT_SYMBOL_GPL vmlinux 0xb3ffe429 device_reprobe +EXPORT_SYMBOL_GPL vmlinux 0xb407c1df percpu_ref_switch_to_atomic +EXPORT_SYMBOL_GPL vmlinux 0xb40d1e4c vfs_read +EXPORT_SYMBOL_GPL vmlinux 0xb41c73af tty_port_default_client_ops +EXPORT_SYMBOL_GPL vmlinux 0xb42dc1a5 spi_controller_suspend +EXPORT_SYMBOL_GPL vmlinux 0xb43b4056 arizona_dev_exit +EXPORT_SYMBOL_GPL vmlinux 0xb43f9365 ktime_get +EXPORT_SYMBOL_GPL vmlinux 0xb443b9f1 platform_device_register +EXPORT_SYMBOL_GPL vmlinux 0xb44e18ea audit_enabled +EXPORT_SYMBOL_GPL vmlinux 0xb456f01c dm_get_queue_limits +EXPORT_SYMBOL_GPL vmlinux 0xb4584da4 __pm_stay_awake +EXPORT_SYMBOL_GPL vmlinux 0xb466e7e6 __clk_hw_register_mux +EXPORT_SYMBOL_GPL vmlinux 0xb4686d29 __blk_mq_debugfs_rq_show +EXPORT_SYMBOL_GPL vmlinux 0xb47de6d7 pci_create_slot +EXPORT_SYMBOL_GPL vmlinux 0xb4819f8f sata_pmp_port_ops +EXPORT_SYMBOL_GPL vmlinux 0xb48f0638 software_node_register +EXPORT_SYMBOL_GPL vmlinux 0xb492611b sysfs_remove_file_from_group +EXPORT_SYMBOL_GPL vmlinux 0xb49b8d21 __device_reset +EXPORT_SYMBOL_GPL vmlinux 0xb4b8ad08 gpiod_get_index_optional +EXPORT_SYMBOL_GPL vmlinux 0xb4b97c90 pvclock_gtod_register_notifier +EXPORT_SYMBOL_GPL vmlinux 0xb4c78c6f sk_set_memalloc +EXPORT_SYMBOL_GPL vmlinux 0xb4cac28f clk_hw_get_parent_by_index +EXPORT_SYMBOL_GPL vmlinux 0xb4cc8181 blk_abort_request +EXPORT_SYMBOL_GPL vmlinux 0xb4dadd03 pm_clk_runtime_resume +EXPORT_SYMBOL_GPL vmlinux 0xb4ea7cf7 kgdb_connected +EXPORT_SYMBOL_GPL vmlinux 0xb4eda0da ring_buffer_event_length +EXPORT_SYMBOL_GPL vmlinux 0xb4edd3be usb_phy_set_event +EXPORT_SYMBOL_GPL vmlinux 0xb4ee5ff4 crypto_hash_alg_has_setkey +EXPORT_SYMBOL_GPL vmlinux 0xb4ef9f88 ata_sas_port_destroy +EXPORT_SYMBOL_GPL vmlinux 0xb4f6e419 scmi_protocol_register +EXPORT_SYMBOL_GPL vmlinux 0xb4fd2ddc crypto_register_algs +EXPORT_SYMBOL_GPL vmlinux 0xb4ff6bb6 hrtimer_active +EXPORT_SYMBOL_GPL vmlinux 0xb501b2df nd_cmd_dimm_desc +EXPORT_SYMBOL_GPL vmlinux 0xb510c250 raw_v4_hashinfo +EXPORT_SYMBOL_GPL vmlinux 0xb513454c lwtunnel_output +EXPORT_SYMBOL_GPL vmlinux 0xb51fbd64 edac_op_state +EXPORT_SYMBOL_GPL vmlinux 0xb520eb79 btree_merge +EXPORT_SYMBOL_GPL vmlinux 0xb52d3775 regulator_unregister +EXPORT_SYMBOL_GPL vmlinux 0xb533ea44 usb_free_streams +EXPORT_SYMBOL_GPL vmlinux 0xb53f467c acpi_subsys_restore_early +EXPORT_SYMBOL_GPL vmlinux 0xb5436356 of_cpufreq_cooling_register +EXPORT_SYMBOL_GPL vmlinux 0xb5460fac crypto_aead_decrypt +EXPORT_SYMBOL_GPL vmlinux 0xb546485d of_property_read_variable_u16_array +EXPORT_SYMBOL_GPL vmlinux 0xb54b0e9b generic_file_buffered_read +EXPORT_SYMBOL_GPL vmlinux 0xb54b753a led_set_brightness_sync +EXPORT_SYMBOL_GPL vmlinux 0xb5539062 clk_hw_get_num_parents +EXPORT_SYMBOL_GPL vmlinux 0xb555819c posix_clock_register +EXPORT_SYMBOL_GPL vmlinux 0xb55de460 HYPERVISOR_dm_op +EXPORT_SYMBOL_GPL vmlinux 0xb579076a regmap_add_irq_chip_np +EXPORT_SYMBOL_GPL vmlinux 0xb5854078 debugfs_print_regs32 +EXPORT_SYMBOL_GPL vmlinux 0xb5a83e35 gnttab_setup_auto_xlat_frames +EXPORT_SYMBOL_GPL vmlinux 0xb5a8c226 acpi_gsi_to_irq +EXPORT_SYMBOL_GPL vmlinux 0xb5b6db8e tpm_transmit_cmd +EXPORT_SYMBOL_GPL vmlinux 0xb5cd70e5 clkdev_hw_create +EXPORT_SYMBOL_GPL vmlinux 0xb5cdf8f8 pinctrl_utils_free_map +EXPORT_SYMBOL_GPL vmlinux 0xb5d17480 blk_freeze_queue_start +EXPORT_SYMBOL_GPL vmlinux 0xb5d92946 usb_hcd_end_port_resume +EXPORT_SYMBOL_GPL vmlinux 0xb5dc1102 desc_to_gpio +EXPORT_SYMBOL_GPL vmlinux 0xb5e4a86f edac_pci_handle_pe +EXPORT_SYMBOL_GPL vmlinux 0xb5ed48c8 bind_interdomain_evtchn_to_irq +EXPORT_SYMBOL_GPL vmlinux 0xb5f597bd regmap_register_patch +EXPORT_SYMBOL_GPL vmlinux 0xb5f83386 aead_exit_geniv +EXPORT_SYMBOL_GPL vmlinux 0xb5f8ca92 rio_inb_pwrite_handler +EXPORT_SYMBOL_GPL vmlinux 0xb5f97ba7 of_pinctrl_get +EXPORT_SYMBOL_GPL vmlinux 0xb5fe5608 cleanup_srcu_struct +EXPORT_SYMBOL_GPL vmlinux 0xb61dd682 user_read +EXPORT_SYMBOL_GPL vmlinux 0xb6261484 register_die_notifier +EXPORT_SYMBOL_GPL vmlinux 0xb63f2154 napi_hash_del +EXPORT_SYMBOL_GPL vmlinux 0xb652cfb6 phy_configure +EXPORT_SYMBOL_GPL vmlinux 0xb661fed1 kvm_write_guest_page +EXPORT_SYMBOL_GPL vmlinux 0xb668988c perf_event_enable +EXPORT_SYMBOL_GPL vmlinux 0xb66e975e gpiod_to_chip +EXPORT_SYMBOL_GPL vmlinux 0xb6787346 sfp_unregister_socket +EXPORT_SYMBOL_GPL vmlinux 0xb68c7cf8 mpc8xxx_spi_tx_buf_u8 +EXPORT_SYMBOL_GPL vmlinux 0xb6a76fd4 ahci_handle_port_intr +EXPORT_SYMBOL_GPL vmlinux 0xb6a8bacf phy_led_triggers_register +EXPORT_SYMBOL_GPL vmlinux 0xb6bfc379 tps6586x_clr_bits +EXPORT_SYMBOL_GPL vmlinux 0xb6c13d6d usb_kill_urb +EXPORT_SYMBOL_GPL vmlinux 0xb6c8f9a5 alloc_io_pgtable_ops +EXPORT_SYMBOL_GPL vmlinux 0xb6e17d8f devlink_trap_policers_register +EXPORT_SYMBOL_GPL vmlinux 0xb6e6d15a __put_net +EXPORT_SYMBOL_GPL vmlinux 0xb6e6d99d clk_disable +EXPORT_SYMBOL_GPL vmlinux 0xb7026121 unregister_acpi_bus_type +EXPORT_SYMBOL_GPL vmlinux 0xb702838b alloc_iova +EXPORT_SYMBOL_GPL vmlinux 0xb70973e0 rio_mport_get_efb +EXPORT_SYMBOL_GPL vmlinux 0xb71ebfc3 usb_reset_endpoint +EXPORT_SYMBOL_GPL vmlinux 0xb71f212b crypto_unregister_rng +EXPORT_SYMBOL_GPL vmlinux 0xb720de9f rio_unlock_device +EXPORT_SYMBOL_GPL vmlinux 0xb723a8ca __blkdev_driver_ioctl +EXPORT_SYMBOL_GPL vmlinux 0xb7329c06 clk_set_phase +EXPORT_SYMBOL_GPL vmlinux 0xb73713d7 nvmem_add_cell_lookups +EXPORT_SYMBOL_GPL vmlinux 0xb74b43c9 sk_psock_drop +EXPORT_SYMBOL_GPL vmlinux 0xb75665aa regmap_async_complete_cb +EXPORT_SYMBOL_GPL vmlinux 0xb757086a of_prop_next_u32 +EXPORT_SYMBOL_GPL vmlinux 0xb7695ec7 fat_build_inode +EXPORT_SYMBOL_GPL vmlinux 0xb76cfaaa net_ns_type_operations +EXPORT_SYMBOL_GPL vmlinux 0xb7871749 nvdimm_setup_pfn +EXPORT_SYMBOL_GPL vmlinux 0xb7a2fc00 rtc_set_time +EXPORT_SYMBOL_GPL vmlinux 0xb7a361b4 ahci_platform_suspend_host +EXPORT_SYMBOL_GPL vmlinux 0xb7a387fc synchronize_rcu_tasks_rude +EXPORT_SYMBOL_GPL vmlinux 0xb7b100fc edac_mc_find_csrow_by_page +EXPORT_SYMBOL_GPL vmlinux 0xb7b5883c fsnotify_alloc_group +EXPORT_SYMBOL_GPL vmlinux 0xb7b61e4a posix_clock_unregister +EXPORT_SYMBOL_GPL vmlinux 0xb7bf1ad2 netdev_walk_all_upper_dev_rcu +EXPORT_SYMBOL_GPL vmlinux 0xb7c69a63 unregister_vmap_purge_notifier +EXPORT_SYMBOL_GPL vmlinux 0xb7df8c6c dev_pm_opp_get_voltage +EXPORT_SYMBOL_GPL vmlinux 0xb7ecbe16 is_dock_device +EXPORT_SYMBOL_GPL vmlinux 0xb7f5d22b crypto_unregister_ahashes +EXPORT_SYMBOL_GPL vmlinux 0xb7f6f663 kvm_io_bus_write +EXPORT_SYMBOL_GPL vmlinux 0xb7f73ef8 xas_init_marks +EXPORT_SYMBOL_GPL vmlinux 0xb7f990e9 rht_bucket_nested +EXPORT_SYMBOL_GPL vmlinux 0xb800697b device_remove_file +EXPORT_SYMBOL_GPL vmlinux 0xb80c2e1a ata_bmdma_post_internal_cmd +EXPORT_SYMBOL_GPL vmlinux 0xb8198a4d transport_destroy_device +EXPORT_SYMBOL_GPL vmlinux 0xb81daee0 sysfs_break_active_protection +EXPORT_SYMBOL_GPL vmlinux 0xb820cb84 usb_set_device_state +EXPORT_SYMBOL_GPL vmlinux 0xb8212341 timecounter_cyc2time +EXPORT_SYMBOL_GPL vmlinux 0xb825d029 __kthread_init_worker +EXPORT_SYMBOL_GPL vmlinux 0xb8273d0b __wake_up_sync +EXPORT_SYMBOL_GPL vmlinux 0xb8308abd sata_pmp_qc_defer_cmd_switch +EXPORT_SYMBOL_GPL vmlinux 0xb834415c perf_pmu_migrate_context +EXPORT_SYMBOL_GPL vmlinux 0xb847585f is_hash_blacklisted +EXPORT_SYMBOL_GPL vmlinux 0xb852d406 serial8250_do_startup +EXPORT_SYMBOL_GPL vmlinux 0xb854bd8e phy_basic_t1_features +EXPORT_SYMBOL_GPL vmlinux 0xb8612532 ahci_error_handler +EXPORT_SYMBOL_GPL vmlinux 0xb8617afa irq_chip_mask_ack_parent +EXPORT_SYMBOL_GPL vmlinux 0xb864336b icc_get_name +EXPORT_SYMBOL_GPL vmlinux 0xb87d373c of_console_check +EXPORT_SYMBOL_GPL vmlinux 0xb88dbfce irq_set_irqchip_state +EXPORT_SYMBOL_GPL vmlinux 0xb89bc9bc efivar_entry_set +EXPORT_SYMBOL_GPL vmlinux 0xb89c1467 fwnode_graph_get_remote_port +EXPORT_SYMBOL_GPL vmlinux 0xb89e49fe pm_genpd_init +EXPORT_SYMBOL_GPL vmlinux 0xb89e69b1 jump_label_update_timeout +EXPORT_SYMBOL_GPL vmlinux 0xb8b129e8 virtio_config_disable +EXPORT_SYMBOL_GPL vmlinux 0xb8b30ad4 power_supply_get_battery_info +EXPORT_SYMBOL_GPL vmlinux 0xb8cd3a7f nf_logger_put +EXPORT_SYMBOL_GPL vmlinux 0xb8e731dd clk_hw_unregister_divider +EXPORT_SYMBOL_GPL vmlinux 0xb8eb7c91 blk_mq_sched_try_insert_merge +EXPORT_SYMBOL_GPL vmlinux 0xb8f11603 idr_alloc +EXPORT_SYMBOL_GPL vmlinux 0xb90b96a4 device_dma_supported +EXPORT_SYMBOL_GPL vmlinux 0xb90de972 inet_csk_compat_setsockopt +EXPORT_SYMBOL_GPL vmlinux 0xb912560d static_key_disable +EXPORT_SYMBOL_GPL vmlinux 0xb917b6d7 return_address +EXPORT_SYMBOL_GPL vmlinux 0xb91e847b sdio_memcpy_toio +EXPORT_SYMBOL_GPL vmlinux 0xb921ad05 pinctrl_utils_add_config +EXPORT_SYMBOL_GPL vmlinux 0xb92f6f2b dummy_con +EXPORT_SYMBOL_GPL vmlinux 0xb95559bc housekeeping_any_cpu +EXPORT_SYMBOL_GPL vmlinux 0xb9681621 xdp_do_flush +EXPORT_SYMBOL_GPL vmlinux 0xb970af7a regulator_list_voltage_linear +EXPORT_SYMBOL_GPL vmlinux 0xb97aebe5 alloc_dax_region +EXPORT_SYMBOL_GPL vmlinux 0xb97dad3d ptp_classify_raw +EXPORT_SYMBOL_GPL vmlinux 0xb98af2fd device_add +EXPORT_SYMBOL_GPL vmlinux 0xb994ec22 evict_inodes +EXPORT_SYMBOL_GPL vmlinux 0xb9b9df41 usb_amd_dev_put +EXPORT_SYMBOL_GPL vmlinux 0xb9c425de register_syscore_ops +EXPORT_SYMBOL_GPL vmlinux 0xb9ca7edb usb_alloc_streams +EXPORT_SYMBOL_GPL vmlinux 0xb9d025c9 llist_del_first +EXPORT_SYMBOL_GPL vmlinux 0xb9f1c10b dma_buf_detach +EXPORT_SYMBOL_GPL vmlinux 0xb9f87ff0 led_init_core +EXPORT_SYMBOL_GPL vmlinux 0xb9f89246 trace_seq_vprintf +EXPORT_SYMBOL_GPL vmlinux 0xba07f21e clk_hw_is_enabled +EXPORT_SYMBOL_GPL vmlinux 0xba1a6626 mtk_pinconf_bias_set_combo +EXPORT_SYMBOL_GPL vmlinux 0xba220db7 __wake_up_sync_key +EXPORT_SYMBOL_GPL vmlinux 0xba25d250 blk_queue_max_discard_segments +EXPORT_SYMBOL_GPL vmlinux 0xba2b7f64 cpufreq_generic_get +EXPORT_SYMBOL_GPL vmlinux 0xba2bd125 phy_gbit_fibre_features +EXPORT_SYMBOL_GPL vmlinux 0xba2f728e driver_remove_file +EXPORT_SYMBOL_GPL vmlinux 0xba433456 platform_driver_unregister +EXPORT_SYMBOL_GPL vmlinux 0xba60bf51 input_ff_create +EXPORT_SYMBOL_GPL vmlinux 0xba691402 ata_host_activate +EXPORT_SYMBOL_GPL vmlinux 0xba7359bb irq_domain_create_hierarchy +EXPORT_SYMBOL_GPL vmlinux 0xba8bcb78 dev_pm_opp_put_prop_name +EXPORT_SYMBOL_GPL vmlinux 0xba94e771 sata_scr_read +EXPORT_SYMBOL_GPL vmlinux 0xba9560d0 pci_stop_root_bus +EXPORT_SYMBOL_GPL vmlinux 0xba984d9b acpi_ec_remove_query_handler +EXPORT_SYMBOL_GPL vmlinux 0xba9e0591 sock_gen_put +EXPORT_SYMBOL_GPL vmlinux 0xbab6ae52 __sync_filesystem +EXPORT_SYMBOL_GPL vmlinux 0xbab9a9f0 maxim_charger_currents +EXPORT_SYMBOL_GPL vmlinux 0xbabf2dbc ahci_reset_controller +EXPORT_SYMBOL_GPL vmlinux 0xbac71e17 i2c_new_scanned_device +EXPORT_SYMBOL_GPL vmlinux 0xbacb4976 icc_provider_del +EXPORT_SYMBOL_GPL vmlinux 0xbad41702 pinctrl_dev_get_devname +EXPORT_SYMBOL_GPL vmlinux 0xbae929b5 __vfs_removexattr_locked +EXPORT_SYMBOL_GPL vmlinux 0xbaf6850c fsnotify_wait_marks_destroyed +EXPORT_SYMBOL_GPL vmlinux 0xbb06faaf k3_udma_glue_request_tx_chn +EXPORT_SYMBOL_GPL vmlinux 0xbb0ab47b debug_locks +EXPORT_SYMBOL_GPL vmlinux 0xbb0b25d2 register_xenbus_watch +EXPORT_SYMBOL_GPL vmlinux 0xbb0cd812 platform_bus +EXPORT_SYMBOL_GPL vmlinux 0xbb14c207 pci_parse_request_of_pci_ranges +EXPORT_SYMBOL_GPL vmlinux 0xbb155c0d con_debug_enter +EXPORT_SYMBOL_GPL vmlinux 0xbb176fd1 wm8350_reg_read +EXPORT_SYMBOL_GPL vmlinux 0xbb1e6e86 raw_hash_sk +EXPORT_SYMBOL_GPL vmlinux 0xbb1f591b __efivar_entry_get +EXPORT_SYMBOL_GPL vmlinux 0xbb2487e2 hisi_uncore_pmu_get_event_idx +EXPORT_SYMBOL_GPL vmlinux 0xbb409188 mmc_sanitize +EXPORT_SYMBOL_GPL vmlinux 0xbb456802 iommu_aux_detach_device +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 0xbb755abf gen_pool_get +EXPORT_SYMBOL_GPL vmlinux 0xbb77bb4c mbox_flush +EXPORT_SYMBOL_GPL vmlinux 0xbb839fe1 devm_phy_put +EXPORT_SYMBOL_GPL vmlinux 0xbb905c4d nexthop_find_by_id +EXPORT_SYMBOL_GPL vmlinux 0xbb9be0bb md_bitmap_load +EXPORT_SYMBOL_GPL vmlinux 0xbbbf9d7d dst_cache_set_ip4 +EXPORT_SYMBOL_GPL vmlinux 0xbbd509c1 dev_pm_opp_put +EXPORT_SYMBOL_GPL vmlinux 0xbbefe128 iomap_ioend_try_merge +EXPORT_SYMBOL_GPL vmlinux 0xbbf27385 xhci_resume +EXPORT_SYMBOL_GPL vmlinux 0xbbfa49e7 fsl_mc_get_endpoint +EXPORT_SYMBOL_GPL vmlinux 0xbc00f453 cpci_hp_register_bus +EXPORT_SYMBOL_GPL vmlinux 0xbc1fa89a ata_std_sched_eh +EXPORT_SYMBOL_GPL vmlinux 0xbc6bec66 free_percpu_irq +EXPORT_SYMBOL_GPL vmlinux 0xbc775842 nvdimm_bus_add_badrange +EXPORT_SYMBOL_GPL vmlinux 0xbc78540f register_asymmetric_key_parser +EXPORT_SYMBOL_GPL vmlinux 0xbc7ec879 stmpe_reg_write +EXPORT_SYMBOL_GPL vmlinux 0xbc853573 __fput_sync +EXPORT_SYMBOL_GPL vmlinux 0xbc8edf4a bsg_job_put +EXPORT_SYMBOL_GPL vmlinux 0xbc9b8588 ehci_cf_port_reset_rwsem +EXPORT_SYMBOL_GPL vmlinux 0xbcc15e75 ktime_get_coarse_with_offset +EXPORT_SYMBOL_GPL vmlinux 0xbcc88bb1 class_find_device +EXPORT_SYMBOL_GPL vmlinux 0xbccfd4d8 register_oldmem_pfn_is_ram +EXPORT_SYMBOL_GPL vmlinux 0xbcd162ff iomap_file_unshare +EXPORT_SYMBOL_GPL vmlinux 0xbcd24cd3 clk_gate_restore_context +EXPORT_SYMBOL_GPL vmlinux 0xbcd61dfc linear_hugepage_index +EXPORT_SYMBOL_GPL vmlinux 0xbcdb2747 reset_simple_ops +EXPORT_SYMBOL_GPL vmlinux 0xbcdd5b99 iommu_group_set_name +EXPORT_SYMBOL_GPL vmlinux 0xbcea581e pci_epc_get_features +EXPORT_SYMBOL_GPL vmlinux 0xbced9b9f xenbus_grant_ring +EXPORT_SYMBOL_GPL vmlinux 0xbcf1f0e6 zs_create_pool +EXPORT_SYMBOL_GPL vmlinux 0xbd190268 vchan_init +EXPORT_SYMBOL_GPL vmlinux 0xbd266fa9 vfs_getxattr +EXPORT_SYMBOL_GPL vmlinux 0xbd2b5cd8 nd_region_provider_data +EXPORT_SYMBOL_GPL vmlinux 0xbd2ce79e dev_pm_qos_hide_latency_tolerance +EXPORT_SYMBOL_GPL vmlinux 0xbd2e4631 ata_host_init +EXPORT_SYMBOL_GPL vmlinux 0xbd3fe1e3 disable_hardirq +EXPORT_SYMBOL_GPL vmlinux 0xbd45320f of_resolve_phandles +EXPORT_SYMBOL_GPL vmlinux 0xbd6eba24 xen_set_affinity_evtchn +EXPORT_SYMBOL_GPL vmlinux 0xbd6f874f dw_pcie_upconfig_setup +EXPORT_SYMBOL_GPL vmlinux 0xbd7b4f1f devm_kstrdup +EXPORT_SYMBOL_GPL vmlinux 0xbd7f2586 regmap_read +EXPORT_SYMBOL_GPL vmlinux 0xbd7f9233 usb_hub_claim_port +EXPORT_SYMBOL_GPL vmlinux 0xbd996800 rtnl_register_module +EXPORT_SYMBOL_GPL vmlinux 0xbd9b91b5 genphy_c45_config_aneg +EXPORT_SYMBOL_GPL vmlinux 0xbddb9dd8 crypto_grab_skcipher +EXPORT_SYMBOL_GPL vmlinux 0xbe259f8c led_get_default_pattern +EXPORT_SYMBOL_GPL vmlinux 0xbe2bee54 xhci_shutdown +EXPORT_SYMBOL_GPL vmlinux 0xbe50f145 fat_attach +EXPORT_SYMBOL_GPL vmlinux 0xbe5c888b crypto_chain +EXPORT_SYMBOL_GPL vmlinux 0xbe5e3414 k3_udma_glue_reset_rx_chn +EXPORT_SYMBOL_GPL vmlinux 0xbe687e88 wake_up_all_idle_cpus +EXPORT_SYMBOL_GPL vmlinux 0xbe6e08f4 screen_pos +EXPORT_SYMBOL_GPL vmlinux 0xbe7116ce devlink_dpipe_match_put +EXPORT_SYMBOL_GPL vmlinux 0xbe96dfd8 of_reconfig_notifier_unregister +EXPORT_SYMBOL_GPL vmlinux 0xbe9a83d5 dw_pcie_write +EXPORT_SYMBOL_GPL vmlinux 0xbea20511 pwmchip_add_with_polarity +EXPORT_SYMBOL_GPL vmlinux 0xbea43673 phy_restore_page +EXPORT_SYMBOL_GPL vmlinux 0xbea5ff1e static_key_initialized +EXPORT_SYMBOL_GPL vmlinux 0xbeb2d836 spi_unregister_controller +EXPORT_SYMBOL_GPL vmlinux 0xbebd0150 trace_array_put +EXPORT_SYMBOL_GPL vmlinux 0xbec66c3a __apei_exec_run +EXPORT_SYMBOL_GPL vmlinux 0xbecd2069 dev_pm_opp_get_freq +EXPORT_SYMBOL_GPL vmlinux 0xbed32f5c debugfs_create_regset32 +EXPORT_SYMBOL_GPL vmlinux 0xbefd99c4 fwnode_property_get_reference_args +EXPORT_SYMBOL_GPL vmlinux 0xbeffcb45 of_clk_get_from_provider +EXPORT_SYMBOL_GPL vmlinux 0xbf041102 register_vt_notifier +EXPORT_SYMBOL_GPL vmlinux 0xbf0b48b2 uart_get_rs485_mode +EXPORT_SYMBOL_GPL vmlinux 0xbf0f402b crypto_mod_put +EXPORT_SYMBOL_GPL vmlinux 0xbf221bb7 devm_of_phy_get_by_index +EXPORT_SYMBOL_GPL vmlinux 0xbf247753 ti_sci_get_handle +EXPORT_SYMBOL_GPL vmlinux 0xbf34bdee vring_create_virtqueue +EXPORT_SYMBOL_GPL vmlinux 0xbf5cb3f8 sysfs_create_link_nowarn +EXPORT_SYMBOL_GPL vmlinux 0xbf5d0a7a iommu_sva_bind_device +EXPORT_SYMBOL_GPL vmlinux 0xbf5e5251 regulator_get_exclusive +EXPORT_SYMBOL_GPL vmlinux 0xbf6a3984 nvdimm_badblocks_populate +EXPORT_SYMBOL_GPL vmlinux 0xbf6a5aa1 fsverity_verify_page +EXPORT_SYMBOL_GPL vmlinux 0xbf6abbe7 housekeeping_enabled +EXPORT_SYMBOL_GPL vmlinux 0xbf700b8b iommu_dev_enable_feature +EXPORT_SYMBOL_GPL vmlinux 0xbf874bc7 uart_console_device +EXPORT_SYMBOL_GPL vmlinux 0xbfa0cec2 regmap_get_device +EXPORT_SYMBOL_GPL vmlinux 0xbfb63d05 pm_generic_freeze +EXPORT_SYMBOL_GPL vmlinux 0xbfb92dee bsg_job_done +EXPORT_SYMBOL_GPL vmlinux 0xbfbc5434 pciserial_resume_ports +EXPORT_SYMBOL_GPL vmlinux 0xbfc804d1 dax_region_put +EXPORT_SYMBOL_GPL vmlinux 0xbfe5616d tick_broadcast_oneshot_control +EXPORT_SYMBOL_GPL vmlinux 0xbfe7290b ip6_sk_redirect +EXPORT_SYMBOL_GPL vmlinux 0xbfea1d9c security_inode_setattr +EXPORT_SYMBOL_GPL vmlinux 0xbfed2cd9 __wait_rcu_gp +EXPORT_SYMBOL_GPL vmlinux 0xbfee0ead sdio_release_irq +EXPORT_SYMBOL_GPL vmlinux 0xbff4f9a8 wm8350_reg_write +EXPORT_SYMBOL_GPL vmlinux 0xbffde8ec compat_alloc_user_space +EXPORT_SYMBOL_GPL vmlinux 0xc01c95a3 bpf_trace_run7 +EXPORT_SYMBOL_GPL vmlinux 0xc01e6077 blkcg_activate_policy +EXPORT_SYMBOL_GPL vmlinux 0xc03b3b5c gpiochip_irq_domain_activate +EXPORT_SYMBOL_GPL vmlinux 0xc0401fc6 virtqueue_poll +EXPORT_SYMBOL_GPL vmlinux 0xc04eca99 devm_hwrng_unregister +EXPORT_SYMBOL_GPL vmlinux 0xc0539487 blkg_conf_finish +EXPORT_SYMBOL_GPL vmlinux 0xc06b7dd3 pci_user_read_config_word +EXPORT_SYMBOL_GPL vmlinux 0xc06c1b2e mctrl_gpio_free +EXPORT_SYMBOL_GPL vmlinux 0xc07142ea pm_wakeup_ws_event +EXPORT_SYMBOL_GPL vmlinux 0xc07c0a93 spi_delay_exec +EXPORT_SYMBOL_GPL vmlinux 0xc096f651 validate_xmit_xfrm +EXPORT_SYMBOL_GPL vmlinux 0xc09ae3dc virtio_config_changed +EXPORT_SYMBOL_GPL vmlinux 0xc09d3073 sata_set_spd +EXPORT_SYMBOL_GPL vmlinux 0xc09d8543 debugfs_create_u32 +EXPORT_SYMBOL_GPL vmlinux 0xc0a3d155 k3_udma_glue_rx_get_flow_id_base +EXPORT_SYMBOL_GPL vmlinux 0xc0a96e14 rcu_gp_is_expedited +EXPORT_SYMBOL_GPL vmlinux 0xc0dcb59e edac_layer_name +EXPORT_SYMBOL_GPL vmlinux 0xc0f0458a ip_tunnel_unneed_metadata +EXPORT_SYMBOL_GPL vmlinux 0xc0f590c1 usb_phy_get_charger_current +EXPORT_SYMBOL_GPL vmlinux 0xc1086e0c sysrq_toggle_support +EXPORT_SYMBOL_GPL vmlinux 0xc10efcbd bpf_verifier_log_write +EXPORT_SYMBOL_GPL vmlinux 0xc10fddb8 name_to_dev_t +EXPORT_SYMBOL_GPL vmlinux 0xc11870bd firmware_request_cache +EXPORT_SYMBOL_GPL vmlinux 0xc11d74a1 dma_get_any_slave_channel +EXPORT_SYMBOL_GPL vmlinux 0xc11d88b8 sfp_bus_add_upstream +EXPORT_SYMBOL_GPL vmlinux 0xc11f6dfb device_bind_driver +EXPORT_SYMBOL_GPL vmlinux 0xc1246074 usb_unpoison_urb +EXPORT_SYMBOL_GPL vmlinux 0xc12c2d30 pci_create_root_bus +EXPORT_SYMBOL_GPL vmlinux 0xc12eb31d devlink_resource_occ_get_register +EXPORT_SYMBOL_GPL vmlinux 0xc131d943 __devm_irq_alloc_descs +EXPORT_SYMBOL_GPL vmlinux 0xc133a964 extcon_dev_register +EXPORT_SYMBOL_GPL vmlinux 0xc14b60a3 pm_clk_destroy +EXPORT_SYMBOL_GPL vmlinux 0xc14ba2e4 xdp_attachment_flags_ok +EXPORT_SYMBOL_GPL vmlinux 0xc17515d7 usb_hcds_loaded +EXPORT_SYMBOL_GPL vmlinux 0xc17e9946 usb_show_dynids +EXPORT_SYMBOL_GPL vmlinux 0xc18594e3 dma_buf_vunmap +EXPORT_SYMBOL_GPL vmlinux 0xc1a75eda led_classdev_notify_brightness_hw_changed +EXPORT_SYMBOL_GPL vmlinux 0xc1b4b5bf usb_remove_hcd +EXPORT_SYMBOL_GPL vmlinux 0xc1cb0079 of_get_phy_mode +EXPORT_SYMBOL_GPL vmlinux 0xc1cb2fe2 clk_hw_unregister_mux +EXPORT_SYMBOL_GPL vmlinux 0xc1cc12b5 security_path_link +EXPORT_SYMBOL_GPL vmlinux 0xc1d122b2 kvm_vcpu_destroy +EXPORT_SYMBOL_GPL vmlinux 0xc1dce028 k3_udma_glue_reset_tx_chn +EXPORT_SYMBOL_GPL vmlinux 0xc1ecc1a4 meson_clk_dualdiv_ops +EXPORT_SYMBOL_GPL vmlinux 0xc1ef6c42 xenbus_frontend_closed +EXPORT_SYMBOL_GPL vmlinux 0xc1f2dbe1 usb_asmedia_modifyflowcontrol +EXPORT_SYMBOL_GPL vmlinux 0xc21601bd devm_thermal_add_hwmon_sysfs +EXPORT_SYMBOL_GPL vmlinux 0xc22a3091 vm_unmap_aliases +EXPORT_SYMBOL_GPL vmlinux 0xc22ed7f4 key_type_asymmetric +EXPORT_SYMBOL_GPL vmlinux 0xc22fa6bc i2c_new_dummy_device +EXPORT_SYMBOL_GPL vmlinux 0xc2319467 amba_device_add +EXPORT_SYMBOL_GPL vmlinux 0xc2341d4c nvdimm_provider_data +EXPORT_SYMBOL_GPL vmlinux 0xc247d293 blk_mq_unquiesce_queue +EXPORT_SYMBOL_GPL vmlinux 0xc2609ac1 sata_scr_write_flush +EXPORT_SYMBOL_GPL vmlinux 0xc26155a8 inet_csk_route_req +EXPORT_SYMBOL_GPL vmlinux 0xc2654a1e blkcg_print_blkgs +EXPORT_SYMBOL_GPL vmlinux 0xc2692173 wakeup_sources_read_lock +EXPORT_SYMBOL_GPL vmlinux 0xc26abf76 inverse_translate +EXPORT_SYMBOL_GPL vmlinux 0xc280fb46 kdb_register +EXPORT_SYMBOL_GPL vmlinux 0xc28917d7 phy_package_join +EXPORT_SYMBOL_GPL vmlinux 0xc289e46d cpufreq_generic_frequency_table_verify +EXPORT_SYMBOL_GPL vmlinux 0xc2a3e570 errata +EXPORT_SYMBOL_GPL vmlinux 0xc2a814db tcp_memory_pressure +EXPORT_SYMBOL_GPL vmlinux 0xc2b4866f gpiochip_add_pingroup_range +EXPORT_SYMBOL_GPL vmlinux 0xc2b6abde split_page +EXPORT_SYMBOL_GPL vmlinux 0xc2c1c427 perf_event_cgrp_subsys_on_dfl_key +EXPORT_SYMBOL_GPL vmlinux 0xc2c3790c smpboot_unregister_percpu_thread +EXPORT_SYMBOL_GPL vmlinux 0xc2cab60f ata_host_start +EXPORT_SYMBOL_GPL vmlinux 0xc2cf469c pci_epc_stop +EXPORT_SYMBOL_GPL vmlinux 0xc2d9b4eb inet_hash +EXPORT_SYMBOL_GPL vmlinux 0xc2da6587 sdio_readl +EXPORT_SYMBOL_GPL vmlinux 0xc2de27ca hest_disable +EXPORT_SYMBOL_GPL vmlinux 0xc2fe01fe xdp_rxq_info_unused +EXPORT_SYMBOL_GPL vmlinux 0xc2fe173b ndo_dflt_bridge_getlink +EXPORT_SYMBOL_GPL vmlinux 0xc317edd2 of_get_dma_window +EXPORT_SYMBOL_GPL vmlinux 0xc319dd20 pinctrl_dev_get_drvdata +EXPORT_SYMBOL_GPL vmlinux 0xc31edf22 regulator_bulk_unregister_supply_alias +EXPORT_SYMBOL_GPL vmlinux 0xc31f61b4 shmem_zero_setup +EXPORT_SYMBOL_GPL vmlinux 0xc32696f0 usb_hcd_pci_probe +EXPORT_SYMBOL_GPL vmlinux 0xc3382c5d sdio_claim_irq +EXPORT_SYMBOL_GPL vmlinux 0xc341ae6d zs_map_object +EXPORT_SYMBOL_GPL vmlinux 0xc3432887 relay_buf_full +EXPORT_SYMBOL_GPL vmlinux 0xc346720d pm_clk_init +EXPORT_SYMBOL_GPL vmlinux 0xc3559455 ata_sff_pause +EXPORT_SYMBOL_GPL vmlinux 0xc3560a61 wakeup_source_register +EXPORT_SYMBOL_GPL vmlinux 0xc3636c74 of_map_rid +EXPORT_SYMBOL_GPL vmlinux 0xc36e5e0d find_symbol +EXPORT_SYMBOL_GPL vmlinux 0xc3805cd1 fs_ftype_to_dtype +EXPORT_SYMBOL_GPL vmlinux 0xc385133a vcpu_put +EXPORT_SYMBOL_GPL vmlinux 0xc385cb58 perf_num_counters +EXPORT_SYMBOL_GPL vmlinux 0xc3a15e97 irq_gc_mask_clr_bit +EXPORT_SYMBOL_GPL vmlinux 0xc3aff859 wm8350_block_read +EXPORT_SYMBOL_GPL vmlinux 0xc3c4c6cc hash_algo_name +EXPORT_SYMBOL_GPL vmlinux 0xc3c94674 devm_reset_control_array_get +EXPORT_SYMBOL_GPL vmlinux 0xc3d497ca dw_pcie_ep_init_notify +EXPORT_SYMBOL_GPL vmlinux 0xc3db4422 nd_region_dev +EXPORT_SYMBOL_GPL vmlinux 0xc3de65ff ring_buffer_bytes_cpu +EXPORT_SYMBOL_GPL vmlinux 0xc3dea881 rio_route_get_entry +EXPORT_SYMBOL_GPL vmlinux 0xc3e8f2d0 regulator_get_init_drvdata +EXPORT_SYMBOL_GPL vmlinux 0xc3ea5305 iommu_default_passthrough +EXPORT_SYMBOL_GPL vmlinux 0xc3ea8f3a synchronize_srcu +EXPORT_SYMBOL_GPL vmlinux 0xc3eb1fdb gpiod_get_raw_array_value_cansleep +EXPORT_SYMBOL_GPL vmlinux 0xc3f97bba fuse_conn_init +EXPORT_SYMBOL_GPL vmlinux 0xc3ffb212 __raw_v6_lookup +EXPORT_SYMBOL_GPL vmlinux 0xc403bfd2 bpf_trace_run9 +EXPORT_SYMBOL_GPL vmlinux 0xc40db564 regcache_cache_only +EXPORT_SYMBOL_GPL vmlinux 0xc40f4e07 __tracepoint_neigh_update_done +EXPORT_SYMBOL_GPL vmlinux 0xc428068d sata_deb_timing_long +EXPORT_SYMBOL_GPL vmlinux 0xc428652e gpiod_set_value +EXPORT_SYMBOL_GPL vmlinux 0xc4359ea7 ata_acpi_gtm_xfermask +EXPORT_SYMBOL_GPL vmlinux 0xc436abe3 scsi_dh_activate +EXPORT_SYMBOL_GPL vmlinux 0xc43df06e __root_device_register +EXPORT_SYMBOL_GPL vmlinux 0xc43e92b9 trace_seq_bprintf +EXPORT_SYMBOL_GPL vmlinux 0xc4515360 dw_pcie_wait_for_link +EXPORT_SYMBOL_GPL vmlinux 0xc454fc7b twl_get_type +EXPORT_SYMBOL_GPL vmlinux 0xc46324f6 dynevent_create +EXPORT_SYMBOL_GPL vmlinux 0xc471c67a twl4030_audio_disable_resource +EXPORT_SYMBOL_GPL vmlinux 0xc4741ea7 pci_enable_rom +EXPORT_SYMBOL_GPL vmlinux 0xc488d05f crypto_unregister_scomp +EXPORT_SYMBOL_GPL vmlinux 0xc48b7ccf ata_mode_string +EXPORT_SYMBOL_GPL vmlinux 0xc48dd73e acpi_bus_trim +EXPORT_SYMBOL_GPL vmlinux 0xc49c5b85 apply_to_page_range +EXPORT_SYMBOL_GPL vmlinux 0xc4a31146 rdma_cgrp_subsys_on_dfl_key +EXPORT_SYMBOL_GPL vmlinux 0xc4a72936 trusted_tpm_send +EXPORT_SYMBOL_GPL vmlinux 0xc4a8183b list_lru_count_one +EXPORT_SYMBOL_GPL vmlinux 0xc4ac8eef __tracepoint_rpm_idle +EXPORT_SYMBOL_GPL vmlinux 0xc4d6fe01 pinmux_generic_remove_function +EXPORT_SYMBOL_GPL vmlinux 0xc4dfa65e rio_attach_device +EXPORT_SYMBOL_GPL vmlinux 0xc4eae733 perf_trace_buf_alloc +EXPORT_SYMBOL_GPL vmlinux 0xc4f0da12 ktime_get_with_offset +EXPORT_SYMBOL_GPL vmlinux 0xc5090533 switchdev_port_attr_set +EXPORT_SYMBOL_GPL vmlinux 0xc5156bf3 fanout_mutex +EXPORT_SYMBOL_GPL vmlinux 0xc51818e9 devm_mbox_controller_register +EXPORT_SYMBOL_GPL vmlinux 0xc51c6cc3 hwmon_device_register_with_info +EXPORT_SYMBOL_GPL vmlinux 0xc51f66d1 iptunnel_handle_offloads +EXPORT_SYMBOL_GPL vmlinux 0xc52f0388 acpi_dev_resource_memory +EXPORT_SYMBOL_GPL vmlinux 0xc5551698 crypto_register_aeads +EXPORT_SYMBOL_GPL vmlinux 0xc55d6fee devlink_params_publish +EXPORT_SYMBOL_GPL vmlinux 0xc55ff962 phy_basic_t1_features_array +EXPORT_SYMBOL_GPL vmlinux 0xc5604800 clk_set_rate_exclusive +EXPORT_SYMBOL_GPL vmlinux 0xc564ec25 ti_sci_inta_msi_domain_alloc_irqs +EXPORT_SYMBOL_GPL vmlinux 0xc569d8ce __clk_get_name +EXPORT_SYMBOL_GPL vmlinux 0xc575c737 debug_locks_off +EXPORT_SYMBOL_GPL vmlinux 0xc5777fca linear_range_get_selector_low_array +EXPORT_SYMBOL_GPL vmlinux 0xc57831d9 tps80031_ext_power_req_config +EXPORT_SYMBOL_GPL vmlinux 0xc58a3ee6 icc_node_destroy +EXPORT_SYMBOL_GPL vmlinux 0xc594d840 acpi_dev_resource_interrupt +EXPORT_SYMBOL_GPL vmlinux 0xc5996c8c pkcs7_get_content_data +EXPORT_SYMBOL_GPL vmlinux 0xc5a5c678 uart_parse_earlycon +EXPORT_SYMBOL_GPL vmlinux 0xc5a6ed4c ata_sas_tport_delete +EXPORT_SYMBOL_GPL vmlinux 0xc5ad185e iommu_report_device_fault +EXPORT_SYMBOL_GPL vmlinux 0xc5b9f766 acpi_dev_get_property +EXPORT_SYMBOL_GPL vmlinux 0xc5cbceb5 cs47l24_spi_regmap +EXPORT_SYMBOL_GPL vmlinux 0xc5d789df alarm_expires_remaining +EXPORT_SYMBOL_GPL vmlinux 0xc5d93016 badblocks_clear +EXPORT_SYMBOL_GPL vmlinux 0xc5decef6 da903x_set_bits +EXPORT_SYMBOL_GPL vmlinux 0xc617701b __rio_local_write_config_16 +EXPORT_SYMBOL_GPL vmlinux 0xc617f82c unregister_oom_notifier +EXPORT_SYMBOL_GPL vmlinux 0xc6228513 bd_unlink_disk_holder +EXPORT_SYMBOL_GPL vmlinux 0xc6540799 irq_domain_reset_irq_data +EXPORT_SYMBOL_GPL vmlinux 0xc65437fd devlink_unregister +EXPORT_SYMBOL_GPL vmlinux 0xc654d3f4 lwtunnel_valid_encap_type +EXPORT_SYMBOL_GPL vmlinux 0xc6572a90 xenbus_read_unsigned +EXPORT_SYMBOL_GPL vmlinux 0xc658f8a4 perf_aux_output_end +EXPORT_SYMBOL_GPL vmlinux 0xc65c2b97 nvdimm_has_flush +EXPORT_SYMBOL_GPL vmlinux 0xc65e5199 driver_find +EXPORT_SYMBOL_GPL vmlinux 0xc66019cc xen_resume_notifier_unregister +EXPORT_SYMBOL_GPL vmlinux 0xc66b77b1 iommu_group_set_iommudata +EXPORT_SYMBOL_GPL vmlinux 0xc6779093 ring_buffer_record_enable +EXPORT_SYMBOL_GPL vmlinux 0xc68fcc49 ata_sas_port_init +EXPORT_SYMBOL_GPL vmlinux 0xc697b0f7 nvmem_device_read +EXPORT_SYMBOL_GPL vmlinux 0xc69b7ee5 zs_destroy_pool +EXPORT_SYMBOL_GPL vmlinux 0xc6a4a872 __clk_is_enabled +EXPORT_SYMBOL_GPL vmlinux 0xc6ad07f2 component_master_del +EXPORT_SYMBOL_GPL vmlinux 0xc6b81264 nvdimm_security_setup_events +EXPORT_SYMBOL_GPL vmlinux 0xc6be404d devm_mbox_controller_unregister +EXPORT_SYMBOL_GPL vmlinux 0xc6d44cf9 virtqueue_get_avail_addr +EXPORT_SYMBOL_GPL vmlinux 0xc6def34b gnttab_empty_grant_references +EXPORT_SYMBOL_GPL vmlinux 0xc6e1fd57 vfs_submount +EXPORT_SYMBOL_GPL vmlinux 0xc6ff0211 serial8250_rx_chars +EXPORT_SYMBOL_GPL vmlinux 0xc7052516 devm_hwspin_lock_request_specific +EXPORT_SYMBOL_GPL vmlinux 0xc7061ef3 iova_cache_put +EXPORT_SYMBOL_GPL vmlinux 0xc7124d65 skb_gso_validate_network_len +EXPORT_SYMBOL_GPL vmlinux 0xc71e64a9 snmp_get_cpu_field +EXPORT_SYMBOL_GPL vmlinux 0xc74ec6e4 pci_pri_supported +EXPORT_SYMBOL_GPL vmlinux 0xc756882c __rtc_register_device +EXPORT_SYMBOL_GPL vmlinux 0xc75f3847 debugfs_create_x8 +EXPORT_SYMBOL_GPL vmlinux 0xc76ea802 gpiod_set_raw_value +EXPORT_SYMBOL_GPL vmlinux 0xc7856e74 __wake_up_locked_sync_key +EXPORT_SYMBOL_GPL vmlinux 0xc787ff99 ata_scsi_slave_destroy +EXPORT_SYMBOL_GPL vmlinux 0xc792fa55 gpiochip_generic_request +EXPORT_SYMBOL_GPL vmlinux 0xc79413b2 register_kprobes +EXPORT_SYMBOL_GPL vmlinux 0xc7a1840e llist_add_batch +EXPORT_SYMBOL_GPL vmlinux 0xc7a29d66 iommu_domain_window_enable +EXPORT_SYMBOL_GPL vmlinux 0xc7a90141 watchdog_register_device +EXPORT_SYMBOL_GPL vmlinux 0xc7ae7757 crypto_shash_update +EXPORT_SYMBOL_GPL vmlinux 0xc7b23c92 ata_host_alloc_pinfo +EXPORT_SYMBOL_GPL vmlinux 0xc7b9f77c amba_apb_device_add +EXPORT_SYMBOL_GPL vmlinux 0xc7c23ff0 xenbus_exists +EXPORT_SYMBOL_GPL vmlinux 0xc7c26966 hvc_alloc +EXPORT_SYMBOL_GPL vmlinux 0xc7d193a6 phy_led_trigger_change_speed +EXPORT_SYMBOL_GPL vmlinux 0xc7ead693 ahci_platform_ops +EXPORT_SYMBOL_GPL vmlinux 0xc7ebd997 dev_pm_domain_attach +EXPORT_SYMBOL_GPL vmlinux 0xc7f5ee7d fb_deferred_io_open +EXPORT_SYMBOL_GPL vmlinux 0xc7fa4aa9 kobj_ns_drop +EXPORT_SYMBOL_GPL vmlinux 0xc812056c pci_epc_linkup +EXPORT_SYMBOL_GPL vmlinux 0xc8130b28 dequeue_signal +EXPORT_SYMBOL_GPL vmlinux 0xc813aeac platform_device_register_full +EXPORT_SYMBOL_GPL vmlinux 0xc81474fd dev_pm_opp_get_opp_count +EXPORT_SYMBOL_GPL vmlinux 0xc81730f6 rtnl_link_unregister +EXPORT_SYMBOL_GPL vmlinux 0xc82288e2 __scsi_init_queue +EXPORT_SYMBOL_GPL vmlinux 0xc823f724 crypto_register_skciphers +EXPORT_SYMBOL_GPL vmlinux 0xc82468b9 badblocks_init +EXPORT_SYMBOL_GPL vmlinux 0xc82c721f klist_remove +EXPORT_SYMBOL_GPL vmlinux 0xc82cf759 acpi_cppc_processor_probe +EXPORT_SYMBOL_GPL vmlinux 0xc839c1ce trace_seq_to_user +EXPORT_SYMBOL_GPL vmlinux 0xc84c4e16 __inet_inherit_port +EXPORT_SYMBOL_GPL vmlinux 0xc8594d3d reset_control_acquire +EXPORT_SYMBOL_GPL vmlinux 0xc86ba642 devm_hwmon_device_unregister +EXPORT_SYMBOL_GPL vmlinux 0xc86e5225 cpufreq_driver_resolve_freq +EXPORT_SYMBOL_GPL vmlinux 0xc871d7c9 thermal_zone_unbind_cooling_device +EXPORT_SYMBOL_GPL vmlinux 0xc87bcde0 devlink_alloc +EXPORT_SYMBOL_GPL vmlinux 0xc87cc293 ata_port_freeze +EXPORT_SYMBOL_GPL vmlinux 0xc87dd725 k3_udma_glue_pop_rx_chn +EXPORT_SYMBOL_GPL vmlinux 0xc87fb025 xas_get_mark +EXPORT_SYMBOL_GPL vmlinux 0xc89a428b of_i2c_get_board_info +EXPORT_SYMBOL_GPL vmlinux 0xc8b789ab usb_alloc_coherent +EXPORT_SYMBOL_GPL vmlinux 0xc8c25208 gpiochip_line_is_open_drain +EXPORT_SYMBOL_GPL vmlinux 0xc8ddd5b5 kstrdup_quotable +EXPORT_SYMBOL_GPL vmlinux 0xc8deb5f7 clk_hw_get_parent_index +EXPORT_SYMBOL_GPL vmlinux 0xc8e45bea sdio_disable_func +EXPORT_SYMBOL_GPL vmlinux 0xc8f27f18 devres_close_group +EXPORT_SYMBOL_GPL vmlinux 0xc8fed729 fib_nh_common_init +EXPORT_SYMBOL_GPL vmlinux 0xc90fefa7 gpiochip_lock_as_irq +EXPORT_SYMBOL_GPL vmlinux 0xc91277a1 kgdb_schedule_breakpoint +EXPORT_SYMBOL_GPL vmlinux 0xc924f8d4 edac_device_add_device +EXPORT_SYMBOL_GPL vmlinux 0xc9345c0f digsig_verify +EXPORT_SYMBOL_GPL vmlinux 0xc93751ff tty_release_struct +EXPORT_SYMBOL_GPL vmlinux 0xc938e66a key_type_trusted +EXPORT_SYMBOL_GPL vmlinux 0xc9391753 ip6_datagram_release_cb +EXPORT_SYMBOL_GPL vmlinux 0xc93ee1e7 usb_phy_roothub_init +EXPORT_SYMBOL_GPL vmlinux 0xc9561772 fb_destroy_modelist +EXPORT_SYMBOL_GPL vmlinux 0xc959d733 iommu_aux_attach_device +EXPORT_SYMBOL_GPL vmlinux 0xc96063c6 irq_setup_alt_chip +EXPORT_SYMBOL_GPL vmlinux 0xc9641b48 visitor32 +EXPORT_SYMBOL_GPL vmlinux 0xc97a00c9 alarm_try_to_cancel +EXPORT_SYMBOL_GPL vmlinux 0xc97d6918 pcc_mbox_free_channel +EXPORT_SYMBOL_GPL vmlinux 0xc9819706 fb_deferred_io_cleanup +EXPORT_SYMBOL_GPL vmlinux 0xc9827693 __bpf_call_base +EXPORT_SYMBOL_GPL vmlinux 0xc985a1b6 class_dev_iter_exit +EXPORT_SYMBOL_GPL vmlinux 0xc9a22d6e scsi_internal_device_block_nowait +EXPORT_SYMBOL_GPL vmlinux 0xc9a442a3 cpufreq_generic_init +EXPORT_SYMBOL_GPL vmlinux 0xc9b2e6eb dev_pm_opp_set_prop_name +EXPORT_SYMBOL_GPL vmlinux 0xc9bbaea8 clk_mux_determine_rate_flags +EXPORT_SYMBOL_GPL vmlinux 0xc9c53e58 gfn_to_pfn +EXPORT_SYMBOL_GPL vmlinux 0xc9c9cff4 mmu_notifier_register +EXPORT_SYMBOL_GPL vmlinux 0xc9ca8152 dprc_get_obj_count +EXPORT_SYMBOL_GPL vmlinux 0xc9cdb0c7 ahash_register_instance +EXPORT_SYMBOL_GPL vmlinux 0xc9d3f377 platform_get_irq_byname +EXPORT_SYMBOL_GPL vmlinux 0xc9e5b669 skb_zerocopy +EXPORT_SYMBOL_GPL vmlinux 0xc9ec4e21 free_percpu +EXPORT_SYMBOL_GPL vmlinux 0xc9fa5457 fscrypt_ioctl_get_nonce +EXPORT_SYMBOL_GPL vmlinux 0xc9fb00f7 pl320_ipc_transmit +EXPORT_SYMBOL_GPL vmlinux 0xc9fc789b fwnode_remove_software_node +EXPORT_SYMBOL_GPL vmlinux 0xc9fd634a usb_role_switch_put +EXPORT_SYMBOL_GPL vmlinux 0xca345174 find_module +EXPORT_SYMBOL_GPL vmlinux 0xca496b92 power_supply_set_property +EXPORT_SYMBOL_GPL vmlinux 0xca76b31c tps6586x_write +EXPORT_SYMBOL_GPL vmlinux 0xca7d8764 kthread_freezable_should_stop +EXPORT_SYMBOL_GPL vmlinux 0xca82b54a fsnotify_destroy_mark +EXPORT_SYMBOL_GPL vmlinux 0xca859484 rio_request_inb_dbell +EXPORT_SYMBOL_GPL vmlinux 0xca984b7c usb_autopm_put_interface_no_suspend +EXPORT_SYMBOL_GPL vmlinux 0xca9a1d5e ring_buffer_free +EXPORT_SYMBOL_GPL vmlinux 0xca9a8173 cpuidle_unregister +EXPORT_SYMBOL_GPL vmlinux 0xcaa96830 of_get_display_timings +EXPORT_SYMBOL_GPL vmlinux 0xcaacb697 tpm2_get_cc_attrs_tbl +EXPORT_SYMBOL_GPL vmlinux 0xcabb45e9 crypto_unregister_akcipher +EXPORT_SYMBOL_GPL vmlinux 0xcabc250c call_switchdev_blocking_notifiers +EXPORT_SYMBOL_GPL vmlinux 0xcabd199d gpiochip_find +EXPORT_SYMBOL_GPL vmlinux 0xcabe04de cpuidle_resume_and_unlock +EXPORT_SYMBOL_GPL vmlinux 0xcac70aaa crypto_alloc_rng +EXPORT_SYMBOL_GPL vmlinux 0xcacd88a0 __tracepoint_br_fdb_update +EXPORT_SYMBOL_GPL vmlinux 0xcad8d8d1 dev_pm_opp_get_suspend_opp_freq +EXPORT_SYMBOL_GPL vmlinux 0xcae7ce5d fsl_mc_get_version +EXPORT_SYMBOL_GPL vmlinux 0xcaf1d958 evtchn_get +EXPORT_SYMBOL_GPL vmlinux 0xcaf7ba8d usb_hcd_start_port_resume +EXPORT_SYMBOL_GPL vmlinux 0xcaf9c4f6 devlink_params_unregister +EXPORT_SYMBOL_GPL vmlinux 0xcafa214c devm_device_add_groups +EXPORT_SYMBOL_GPL vmlinux 0xcb076351 tty_init_termios +EXPORT_SYMBOL_GPL vmlinux 0xcb158823 of_modalias_node +EXPORT_SYMBOL_GPL vmlinux 0xcb15eee9 sdhci_pci_get_data +EXPORT_SYMBOL_GPL vmlinux 0xcb257261 mmput +EXPORT_SYMBOL_GPL vmlinux 0xcb2bfe2b nvmem_register_notifier +EXPORT_SYMBOL_GPL vmlinux 0xcb3f591f mtk_pctrl_show_one_pin +EXPORT_SYMBOL_GPL vmlinux 0xcb5a258e rtm_getroute_parse_ip_proto +EXPORT_SYMBOL_GPL vmlinux 0xcb5b236d usb_of_get_companion_dev +EXPORT_SYMBOL_GPL vmlinux 0xcb5d4420 dm_internal_suspend_noflush +EXPORT_SYMBOL_GPL vmlinux 0xcb6166e2 bpf_offload_dev_create +EXPORT_SYMBOL_GPL vmlinux 0xcb663840 netlink_remove_tap +EXPORT_SYMBOL_GPL vmlinux 0xcb6ee274 iommu_map_atomic +EXPORT_SYMBOL_GPL vmlinux 0xcb70ed06 sched_trace_cfs_rq_path +EXPORT_SYMBOL_GPL vmlinux 0xcb877bcc fsl_mc_free_irqs +EXPORT_SYMBOL_GPL vmlinux 0xcb8d82ae kthread_queue_work +EXPORT_SYMBOL_GPL vmlinux 0xcb9031bf pci_generic_config_read +EXPORT_SYMBOL_GPL vmlinux 0xcbc41de0 devlink_port_unregister +EXPORT_SYMBOL_GPL vmlinux 0xcbe455fb clk_register +EXPORT_SYMBOL_GPL vmlinux 0xcbe4fa43 security_file_permission +EXPORT_SYMBOL_GPL vmlinux 0xcbe56bc2 zs_get_total_pages +EXPORT_SYMBOL_GPL vmlinux 0xcc0fd0a7 k3_ringacc_ring_push_head +EXPORT_SYMBOL_GPL vmlinux 0xcc1eac62 wm8350_read_auxadc +EXPORT_SYMBOL_GPL vmlinux 0xcc20c5d4 crypto_alg_mod_lookup +EXPORT_SYMBOL_GPL vmlinux 0xcc2dbfd8 irq_domain_check_msi_remap +EXPORT_SYMBOL_GPL vmlinux 0xcc381312 device_wakeup_enable +EXPORT_SYMBOL_GPL vmlinux 0xcc39c03e nvmem_unregister +EXPORT_SYMBOL_GPL vmlinux 0xcc51f83a xen_xenbus_fops +EXPORT_SYMBOL_GPL vmlinux 0xcc52a4da spi_mem_driver_unregister +EXPORT_SYMBOL_GPL vmlinux 0xcc55f7da of_phy_put +EXPORT_SYMBOL_GPL vmlinux 0xcc579d31 iommu_group_get +EXPORT_SYMBOL_GPL vmlinux 0xcc639c82 sdio_unregister_driver +EXPORT_SYMBOL_GPL vmlinux 0xcc72f0d0 acpiphp_unregister_attention +EXPORT_SYMBOL_GPL vmlinux 0xcc7d00f0 pci_hp_add_bridge +EXPORT_SYMBOL_GPL vmlinux 0xcc8b497b relay_flush +EXPORT_SYMBOL_GPL vmlinux 0xcc9268fc hwpoison_filter_enable +EXPORT_SYMBOL_GPL vmlinux 0xcc935375 walk_iomem_res_desc +EXPORT_SYMBOL_GPL vmlinux 0xcca0d178 pm_runtime_irq_safe +EXPORT_SYMBOL_GPL vmlinux 0xccaa772d rio_mport_send_doorbell +EXPORT_SYMBOL_GPL vmlinux 0xccb544a8 usb_free_coherent +EXPORT_SYMBOL_GPL vmlinux 0xccbb22a5 xhci_dbg_trace +EXPORT_SYMBOL_GPL vmlinux 0xccbcc779 dev_fill_metadata_dst +EXPORT_SYMBOL_GPL vmlinux 0xccc26674 wbc_detach_inode +EXPORT_SYMBOL_GPL vmlinux 0xcccfb2fa sata_deb_timing_hotplug +EXPORT_SYMBOL_GPL vmlinux 0xccd86806 ata_id_string +EXPORT_SYMBOL_GPL vmlinux 0xcce0952a anon_inode_getfd +EXPORT_SYMBOL_GPL vmlinux 0xcce582e1 bus_remove_file +EXPORT_SYMBOL_GPL vmlinux 0xccec51e4 handle_bad_irq +EXPORT_SYMBOL_GPL vmlinux 0xccf52bc9 sfp_upstream_start +EXPORT_SYMBOL_GPL vmlinux 0xccf6c787 blkg_conf_prep +EXPORT_SYMBOL_GPL vmlinux 0xcd03e62b __dma_request_channel +EXPORT_SYMBOL_GPL vmlinux 0xcd05ba0f fuse_free_conn +EXPORT_SYMBOL_GPL vmlinux 0xcd107097 of_dma_request_slave_channel +EXPORT_SYMBOL_GPL vmlinux 0xcd162734 iommu_page_response +EXPORT_SYMBOL_GPL vmlinux 0xcd22c092 devm_thermal_zone_of_sensor_register +EXPORT_SYMBOL_GPL vmlinux 0xcd234595 ping_get_port +EXPORT_SYMBOL_GPL vmlinux 0xcd24e146 hash_digest_size +EXPORT_SYMBOL_GPL vmlinux 0xcd37e8ee power_supply_register_no_ws +EXPORT_SYMBOL_GPL vmlinux 0xcd3e5c7c acpi_release_memory +EXPORT_SYMBOL_GPL vmlinux 0xcd4be7fd dma_buf_begin_cpu_access +EXPORT_SYMBOL_GPL vmlinux 0xcd6175b5 ata_scsi_slave_config +EXPORT_SYMBOL_GPL vmlinux 0xcd6f2dc9 nf_log_buf_add +EXPORT_SYMBOL_GPL vmlinux 0xcd71a79f lp8788_read_multi_bytes +EXPORT_SYMBOL_GPL vmlinux 0xcd759b82 k3_ringacc_ring_reset +EXPORT_SYMBOL_GPL vmlinux 0xcd76ebd7 clk_gate_is_enabled +EXPORT_SYMBOL_GPL vmlinux 0xcd913360 pci_host_common_probe +EXPORT_SYMBOL_GPL vmlinux 0xcd91b127 system_highpri_wq +EXPORT_SYMBOL_GPL vmlinux 0xcd96fb29 mtk_pinconf_adv_drive_set +EXPORT_SYMBOL_GPL vmlinux 0xcd974f00 rcu_all_qs +EXPORT_SYMBOL_GPL vmlinux 0xcd9cbcbf generic_fh_to_dentry +EXPORT_SYMBOL_GPL vmlinux 0xcd9cd2ff wakeme_after_rcu +EXPORT_SYMBOL_GPL vmlinux 0xcdb6adcc ras_userspace_consumers +EXPORT_SYMBOL_GPL vmlinux 0xcdbfbcf0 virtqueue_add_outbuf +EXPORT_SYMBOL_GPL vmlinux 0xcdc571cc debugfs_file_put +EXPORT_SYMBOL_GPL vmlinux 0xcdc86b55 sched_clock +EXPORT_SYMBOL_GPL vmlinux 0xcdca3691 nr_irqs +EXPORT_SYMBOL_GPL vmlinux 0xcde26600 cppc_get_transition_latency +EXPORT_SYMBOL_GPL vmlinux 0xcdf29fa2 __hwspin_unlock +EXPORT_SYMBOL_GPL vmlinux 0xcdf3bfee gpiod_get_array_value +EXPORT_SYMBOL_GPL vmlinux 0xcdf4719c extcon_set_property_capability +EXPORT_SYMBOL_GPL vmlinux 0xcdfe2b49 decrypt_blob +EXPORT_SYMBOL_GPL vmlinux 0xce012e71 nf_queue_entry_get_refs +EXPORT_SYMBOL_GPL vmlinux 0xce055c1f lwtunnel_fill_encap +EXPORT_SYMBOL_GPL vmlinux 0xce09e7e2 ata_pci_shutdown_one +EXPORT_SYMBOL_GPL vmlinux 0xce0a4020 xenbus_directory +EXPORT_SYMBOL_GPL vmlinux 0xce0c96d2 ata_bmdma_start +EXPORT_SYMBOL_GPL vmlinux 0xce177dd8 l3mdev_master_upper_ifindex_by_index_rcu +EXPORT_SYMBOL_GPL vmlinux 0xce1c1f20 access_process_vm +EXPORT_SYMBOL_GPL vmlinux 0xce25e45a ping_queue_rcv_skb +EXPORT_SYMBOL_GPL vmlinux 0xce284be6 ata_pci_bmdma_init +EXPORT_SYMBOL_GPL vmlinux 0xce316d7e zynqmp_pm_set_sd_tapdelay +EXPORT_SYMBOL_GPL vmlinux 0xce3aa028 tty_put_char +EXPORT_SYMBOL_GPL vmlinux 0xce3f4439 devm_gpiod_put_array +EXPORT_SYMBOL_GPL vmlinux 0xce52efb1 pci_epf_unbind +EXPORT_SYMBOL_GPL vmlinux 0xce57fc68 mtk_pinconf_adv_pull_get +EXPORT_SYMBOL_GPL vmlinux 0xce61646c skcipher_walk_async +EXPORT_SYMBOL_GPL vmlinux 0xce650fe3 regulator_get_current_limit_regmap +EXPORT_SYMBOL_GPL vmlinux 0xce6624e5 led_trigger_set +EXPORT_SYMBOL_GPL vmlinux 0xce6db656 rcu_is_watching +EXPORT_SYMBOL_GPL vmlinux 0xce735db2 soc_device_register +EXPORT_SYMBOL_GPL vmlinux 0xce85c790 nvmem_device_find +EXPORT_SYMBOL_GPL vmlinux 0xce86c226 sock_inuse_get +EXPORT_SYMBOL_GPL vmlinux 0xce94b373 regulator_is_equal +EXPORT_SYMBOL_GPL vmlinux 0xcea28225 subsys_dev_iter_exit +EXPORT_SYMBOL_GPL vmlinux 0xceac8674 zynqmp_pm_read_pggs +EXPORT_SYMBOL_GPL vmlinux 0xceb0f085 acpi_subsys_freeze +EXPORT_SYMBOL_GPL vmlinux 0xceb1f126 mpi_read_raw_data +EXPORT_SYMBOL_GPL vmlinux 0xcec1fb7e devm_fwnode_gpiod_get_index +EXPORT_SYMBOL_GPL vmlinux 0xced13e80 regulator_put +EXPORT_SYMBOL_GPL vmlinux 0xced48970 regmap_add_irq_chip +EXPORT_SYMBOL_GPL vmlinux 0xcee1641c kgdb_unregister_nmi_console +EXPORT_SYMBOL_GPL vmlinux 0xcee5c8d5 gov_attr_set_init +EXPORT_SYMBOL_GPL vmlinux 0xcee88e7a of_overlay_fdt_apply +EXPORT_SYMBOL_GPL vmlinux 0xceed8c16 __set_phys_to_machine +EXPORT_SYMBOL_GPL vmlinux 0xceee14bb dw_pcie_read_dbi +EXPORT_SYMBOL_GPL vmlinux 0xceeeb285 dw_pcie_ep_init_complete +EXPORT_SYMBOL_GPL vmlinux 0xcf0264bf rtnl_af_unregister +EXPORT_SYMBOL_GPL vmlinux 0xcf15cb53 pcie_port_find_device +EXPORT_SYMBOL_GPL vmlinux 0xcf1d9de5 irq_domain_get_irq_data +EXPORT_SYMBOL_GPL vmlinux 0xcf27fad6 sk_clone_lock +EXPORT_SYMBOL_GPL vmlinux 0xcf41e73d ehci_handshake +EXPORT_SYMBOL_GPL vmlinux 0xcf512c72 ehci_resume +EXPORT_SYMBOL_GPL vmlinux 0xcf54ea93 async_unregister_domain +EXPORT_SYMBOL_GPL vmlinux 0xcf6eb9ff mtk_pinconf_drive_set_raw +EXPORT_SYMBOL_GPL vmlinux 0xcf853cb7 led_trigger_write +EXPORT_SYMBOL_GPL vmlinux 0xcf853e59 nf_queue +EXPORT_SYMBOL_GPL vmlinux 0xcf8fac45 sbitmap_show +EXPORT_SYMBOL_GPL vmlinux 0xcf9325d1 pci_bus_resource_n +EXPORT_SYMBOL_GPL vmlinux 0xcf967b64 sysfs_remove_file_self +EXPORT_SYMBOL_GPL vmlinux 0xcf9ffeea gnttab_page_cache_get +EXPORT_SYMBOL_GPL vmlinux 0xcfa395eb md_allow_write +EXPORT_SYMBOL_GPL vmlinux 0xcfaea563 fwnode_property_read_u16_array +EXPORT_SYMBOL_GPL vmlinux 0xcfb17a08 trace_array_destroy +EXPORT_SYMBOL_GPL vmlinux 0xcfbaa72e of_usb_get_dr_mode_by_phy +EXPORT_SYMBOL_GPL vmlinux 0xcfc15f4b rht_bucket_nested_insert +EXPORT_SYMBOL_GPL vmlinux 0xcfc37766 mtk_is_virt_gpio +EXPORT_SYMBOL_GPL vmlinux 0xcfc5108a devlink_fmsg_u8_pair_put +EXPORT_SYMBOL_GPL vmlinux 0xcfc7b4e4 rcu_barrier_tasks_trace +EXPORT_SYMBOL_GPL vmlinux 0xcfc93e62 task_user_regset_view +EXPORT_SYMBOL_GPL vmlinux 0xcfcfc3ae of_pci_range_parser_one +EXPORT_SYMBOL_GPL vmlinux 0xcfd30d71 acpi_os_map_memory +EXPORT_SYMBOL_GPL vmlinux 0xcfffb964 dev_pm_set_dedicated_wake_irq +EXPORT_SYMBOL_GPL vmlinux 0xd0025cf0 arizona_request_irq +EXPORT_SYMBOL_GPL vmlinux 0xd0026b9c devm_power_supply_register_no_ws +EXPORT_SYMBOL_GPL vmlinux 0xd0058322 dev_pm_disable_wake_irq +EXPORT_SYMBOL_GPL vmlinux 0xd0073b5e dev_pm_get_subsys_data +EXPORT_SYMBOL_GPL vmlinux 0xd00c67ba crypto_stats_ahash_final +EXPORT_SYMBOL_GPL vmlinux 0xd016f781 irq_create_strict_mappings +EXPORT_SYMBOL_GPL vmlinux 0xd018f7e2 pci_assign_unassigned_bridge_resources +EXPORT_SYMBOL_GPL vmlinux 0xd026d518 HYPERVISOR_vcpu_op +EXPORT_SYMBOL_GPL vmlinux 0xd02aeb50 ping_seq_stop +EXPORT_SYMBOL_GPL vmlinux 0xd02c4b57 ethnl_cable_test_pulse +EXPORT_SYMBOL_GPL vmlinux 0xd02f1281 rio_mport_get_feature +EXPORT_SYMBOL_GPL vmlinux 0xd03eaf4c schedule_hrtimeout_range +EXPORT_SYMBOL_GPL vmlinux 0xd04307f0 fork_usermode_blob +EXPORT_SYMBOL_GPL vmlinux 0xd0458ccb xenbus_strstate +EXPORT_SYMBOL_GPL vmlinux 0xd04ed77e wm8350_gpio_config +EXPORT_SYMBOL_GPL vmlinux 0xd063b3c6 xfrm_audit_state_replay +EXPORT_SYMBOL_GPL vmlinux 0xd06524ba raw_notifier_chain_unregister +EXPORT_SYMBOL_GPL vmlinux 0xd067d3c5 system_freezable_power_efficient_wq +EXPORT_SYMBOL_GPL vmlinux 0xd0821ddd ip6_datagram_connect_v6_only +EXPORT_SYMBOL_GPL vmlinux 0xd09911a6 acpi_dev_get_irq_type +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 0xd0d40c85 devm_extcon_dev_free +EXPORT_SYMBOL_GPL vmlinux 0xd0d5f2d5 crypto_unregister_scomps +EXPORT_SYMBOL_GPL vmlinux 0xd0db0f12 run_dax +EXPORT_SYMBOL_GPL vmlinux 0xd0e9ad51 i2c_get_device_id +EXPORT_SYMBOL_GPL vmlinux 0xd0f9c2cd nvdimm_bus_check_dimm_count +EXPORT_SYMBOL_GPL vmlinux 0xd0ffdf61 regcache_sync +EXPORT_SYMBOL_GPL vmlinux 0xd1020ed9 blkg_lookup_slowpath +EXPORT_SYMBOL_GPL vmlinux 0xd117373d get_task_mm +EXPORT_SYMBOL_GPL vmlinux 0xd11d019c netlink_strict_get_check +EXPORT_SYMBOL_GPL vmlinux 0xd12d7564 devm_of_phy_provider_unregister +EXPORT_SYMBOL_GPL vmlinux 0xd1420f83 fat_dir_empty +EXPORT_SYMBOL_GPL vmlinux 0xd1456ccf stmpe_set_altfunc +EXPORT_SYMBOL_GPL vmlinux 0xd159586c net_prio_cgrp_subsys_enabled_key +EXPORT_SYMBOL_GPL vmlinux 0xd15a96fe irq_find_mapping +EXPORT_SYMBOL_GPL vmlinux 0xd16724d9 nvmem_cell_get +EXPORT_SYMBOL_GPL vmlinux 0xd1721ac7 devm_clk_hw_register +EXPORT_SYMBOL_GPL vmlinux 0xd184227c fs_kobj +EXPORT_SYMBOL_GPL vmlinux 0xd188bf0b do_splice_to +EXPORT_SYMBOL_GPL vmlinux 0xd19a543d pci_epc_unmap_addr +EXPORT_SYMBOL_GPL vmlinux 0xd19ed88c regmap_multi_reg_write +EXPORT_SYMBOL_GPL vmlinux 0xd1a59d54 xhci_init_driver +EXPORT_SYMBOL_GPL vmlinux 0xd1a706c4 iommu_device_link +EXPORT_SYMBOL_GPL vmlinux 0xd1a88aa3 fscrypt_show_test_dummy_encryption +EXPORT_SYMBOL_GPL vmlinux 0xd1aceceb clk_divider_ops +EXPORT_SYMBOL_GPL vmlinux 0xd1c7d114 debugfs_real_fops +EXPORT_SYMBOL_GPL vmlinux 0xd1cbc23c add_timer_on +EXPORT_SYMBOL_GPL vmlinux 0xd1ce578d rio_add_device +EXPORT_SYMBOL_GPL vmlinux 0xd1e7ca0f uprobe_register_refctr +EXPORT_SYMBOL_GPL vmlinux 0xd1f2eee2 nf_logger_find_get +EXPORT_SYMBOL_GPL vmlinux 0xd1f4e459 usb_add_hcd +EXPORT_SYMBOL_GPL vmlinux 0xd1fa6a94 regcache_cache_bypass +EXPORT_SYMBOL_GPL vmlinux 0xd1fdb234 bus_for_each_dev +EXPORT_SYMBOL_GPL vmlinux 0xd206cb55 debugfs_create_dir +EXPORT_SYMBOL_GPL vmlinux 0xd20bad9e fwnode_count_parents +EXPORT_SYMBOL_GPL vmlinux 0xd20bf6ba dcookie_unregister +EXPORT_SYMBOL_GPL vmlinux 0xd213e32a __mnt_is_readonly +EXPORT_SYMBOL_GPL vmlinux 0xd217b2ca pci_enable_pcie_error_reporting +EXPORT_SYMBOL_GPL vmlinux 0xd217e9e6 trace_set_clr_event +EXPORT_SYMBOL_GPL vmlinux 0xd21b61bd async_schedule_node_domain +EXPORT_SYMBOL_GPL vmlinux 0xd221f9e6 synth_event_trace_start +EXPORT_SYMBOL_GPL vmlinux 0xd222acf8 pktgen_xfrm_outer_mode_output +EXPORT_SYMBOL_GPL vmlinux 0xd2435e0c tcp_reno_ssthresh +EXPORT_SYMBOL_GPL vmlinux 0xd24b7103 fsl_mc_portal_free +EXPORT_SYMBOL_GPL vmlinux 0xd24e9e8c klist_init +EXPORT_SYMBOL_GPL vmlinux 0xd2553245 usb_match_id +EXPORT_SYMBOL_GPL vmlinux 0xd260af0d ring_buffer_write +EXPORT_SYMBOL_GPL vmlinux 0xd26c5e56 of_clk_add_hw_provider +EXPORT_SYMBOL_GPL vmlinux 0xd273b1b1 __round_jiffies_up_relative +EXPORT_SYMBOL_GPL vmlinux 0xd27ac54b open_related_ns +EXPORT_SYMBOL_GPL vmlinux 0xd27b79ea devm_fwnode_pwm_get +EXPORT_SYMBOL_GPL vmlinux 0xd27f215d gnttab_alloc_grant_references +EXPORT_SYMBOL_GPL vmlinux 0xd28bc282 tcp_slow_start +EXPORT_SYMBOL_GPL vmlinux 0xd2922fe0 bsg_job_get +EXPORT_SYMBOL_GPL vmlinux 0xd29a306b scsi_nl_sock +EXPORT_SYMBOL_GPL vmlinux 0xd29ab1c2 sata_lpm_ignore_phy_events +EXPORT_SYMBOL_GPL vmlinux 0xd2a6febc xenbus_dev_groups +EXPORT_SYMBOL_GPL vmlinux 0xd2aa6002 fixed_phy_register +EXPORT_SYMBOL_GPL vmlinux 0xd2b10a05 ata_timing_find_mode +EXPORT_SYMBOL_GPL vmlinux 0xd2c8ae77 tracepoint_probe_unregister +EXPORT_SYMBOL_GPL vmlinux 0xd2d60820 ata_scsi_port_error_handler +EXPORT_SYMBOL_GPL vmlinux 0xd2dd4812 phy_basic_features +EXPORT_SYMBOL_GPL vmlinux 0xd2e07b0b da9052_disable_irq +EXPORT_SYMBOL_GPL vmlinux 0xd301ac41 invalidate_inode_pages2 +EXPORT_SYMBOL_GPL vmlinux 0xd30ab2d9 unregister_pernet_subsys +EXPORT_SYMBOL_GPL vmlinux 0xd30b6589 iommu_dev_disable_feature +EXPORT_SYMBOL_GPL vmlinux 0xd3174ea4 phy_speed_down +EXPORT_SYMBOL_GPL vmlinux 0xd31a2ac5 ring_buffer_oldest_event_ts +EXPORT_SYMBOL_GPL vmlinux 0xd32694be sbitmap_prepare_to_wait +EXPORT_SYMBOL_GPL vmlinux 0xd335e97a ip_route_output_flow +EXPORT_SYMBOL_GPL vmlinux 0xd33ada8b cci_probed +EXPORT_SYMBOL_GPL vmlinux 0xd34b2325 edac_mc_alloc +EXPORT_SYMBOL_GPL vmlinux 0xd36760ef __usb_get_extra_descriptor +EXPORT_SYMBOL_GPL vmlinux 0xd367f428 trace_event_buffer_reserve +EXPORT_SYMBOL_GPL vmlinux 0xd3752c27 atomic_notifier_call_chain +EXPORT_SYMBOL_GPL vmlinux 0xd379e22a phy_speed_up +EXPORT_SYMBOL_GPL vmlinux 0xd39e9848 put_itimerspec64 +EXPORT_SYMBOL_GPL vmlinux 0xd3ab86d0 tcp_twsk_destructor +EXPORT_SYMBOL_GPL vmlinux 0xd3b0fb9a thp_get_unmapped_area +EXPORT_SYMBOL_GPL vmlinux 0xd3bfa753 usb_bus_idr_lock +EXPORT_SYMBOL_GPL vmlinux 0xd3c02806 ahci_platform_enable_phys +EXPORT_SYMBOL_GPL vmlinux 0xd3cdeb4a report_iommu_fault +EXPORT_SYMBOL_GPL vmlinux 0xd3f30426 crypto_register_alg +EXPORT_SYMBOL_GPL vmlinux 0xd3f534a7 inet_csk_get_port +EXPORT_SYMBOL_GPL vmlinux 0xd3f8f3f4 page_poisoning_enabled +EXPORT_SYMBOL_GPL vmlinux 0xd4034828 system_freezable_wq +EXPORT_SYMBOL_GPL vmlinux 0xd40de7f4 kernfs_find_and_get_ns +EXPORT_SYMBOL_GPL vmlinux 0xd419549f ata_ehi_clear_desc +EXPORT_SYMBOL_GPL vmlinux 0xd41a451e pci_rescan_bus +EXPORT_SYMBOL_GPL vmlinux 0xd41d7d85 sdio_writeb +EXPORT_SYMBOL_GPL vmlinux 0xd423892f arizona_set_irq_wake +EXPORT_SYMBOL_GPL vmlinux 0xd4265dbd __irq_set_handler +EXPORT_SYMBOL_GPL vmlinux 0xd426dbc4 erst_get_record_count +EXPORT_SYMBOL_GPL vmlinux 0xd44276d0 __pm_runtime_disable +EXPORT_SYMBOL_GPL vmlinux 0xd44371c1 sfp_add_phy +EXPORT_SYMBOL_GPL vmlinux 0xd446f88b pci_epc_raise_irq +EXPORT_SYMBOL_GPL vmlinux 0xd44a5eac kgdb_register_nmi_console +EXPORT_SYMBOL_GPL vmlinux 0xd46af5ef cppc_get_perf_ctrs +EXPORT_SYMBOL_GPL vmlinux 0xd48b5743 tty_set_termios +EXPORT_SYMBOL_GPL vmlinux 0xd48c28a7 __hwspin_lock_timeout +EXPORT_SYMBOL_GPL vmlinux 0xd4938ddb pm_schedule_suspend +EXPORT_SYMBOL_GPL vmlinux 0xd4966b32 clk_register_fractional_divider +EXPORT_SYMBOL_GPL vmlinux 0xd4b095d6 dpcon_open +EXPORT_SYMBOL_GPL vmlinux 0xd4b6157e devlink_health_reporter_recovery_done +EXPORT_SYMBOL_GPL vmlinux 0xd4b7c9e6 elv_rqhash_add +EXPORT_SYMBOL_GPL vmlinux 0xd4c14632 system_unbound_wq +EXPORT_SYMBOL_GPL vmlinux 0xd4c987f5 blk_mq_make_request +EXPORT_SYMBOL_GPL vmlinux 0xd4e6d7e0 linear_range_get_value +EXPORT_SYMBOL_GPL vmlinux 0xd4ef8d15 io_cgrp_subsys +EXPORT_SYMBOL_GPL vmlinux 0xd4f12048 rio_request_dma +EXPORT_SYMBOL_GPL vmlinux 0xd4fa47e5 inet6_csk_xmit +EXPORT_SYMBOL_GPL vmlinux 0xd50694ef led_classdev_suspend +EXPORT_SYMBOL_GPL vmlinux 0xd50730c1 kernfs_get +EXPORT_SYMBOL_GPL vmlinux 0xd507d30a virtqueue_notify +EXPORT_SYMBOL_GPL vmlinux 0xd51755c2 ahci_qc_issue +EXPORT_SYMBOL_GPL vmlinux 0xd5210685 cros_ec_check_features +EXPORT_SYMBOL_GPL vmlinux 0xd527a446 wm8350_device_init +EXPORT_SYMBOL_GPL vmlinux 0xd5301b2c linear_range_get_max_value +EXPORT_SYMBOL_GPL vmlinux 0xd53c67b3 unregister_net_sysctl_table +EXPORT_SYMBOL_GPL vmlinux 0xd5474690 usb_role_switch_set_role +EXPORT_SYMBOL_GPL vmlinux 0xd54cafc7 efivar_entry_size +EXPORT_SYMBOL_GPL vmlinux 0xd54d9d6e ata_sas_port_alloc +EXPORT_SYMBOL_GPL vmlinux 0xd55ad93b iommu_group_get_iommudata +EXPORT_SYMBOL_GPL vmlinux 0xd5772bd6 hvc_instantiate +EXPORT_SYMBOL_GPL vmlinux 0xd57fbd31 hwrng_unregister +EXPORT_SYMBOL_GPL vmlinux 0xd5807af3 k3_ringacc_ring_pop +EXPORT_SYMBOL_GPL vmlinux 0xd58263e4 virtqueue_kick_prepare +EXPORT_SYMBOL_GPL vmlinux 0xd5835918 save_stack_trace_regs +EXPORT_SYMBOL_GPL vmlinux 0xd5863c68 debugfs_file_get +EXPORT_SYMBOL_GPL vmlinux 0xd59a1587 linkmode_resolve_pause +EXPORT_SYMBOL_GPL vmlinux 0xd5ad357f __tracepoint_mc_event +EXPORT_SYMBOL_GPL vmlinux 0xd5b57ab3 __tracepoint_rpm_resume +EXPORT_SYMBOL_GPL vmlinux 0xd5c1c1dd driver_unregister +EXPORT_SYMBOL_GPL vmlinux 0xd5c9f1f3 fsl_mc_bus_dprtc_type +EXPORT_SYMBOL_GPL vmlinux 0xd5d0cb44 dw_pcie_host_init +EXPORT_SYMBOL_GPL vmlinux 0xd5fe4abd kvm_vcpu_gfn_to_pfn_atomic +EXPORT_SYMBOL_GPL vmlinux 0xd60eb544 inet6_hash +EXPORT_SYMBOL_GPL vmlinux 0xd6133e76 rio_mport_read_config_32 +EXPORT_SYMBOL_GPL vmlinux 0xd6175525 clk_regmap_mux_ops +EXPORT_SYMBOL_GPL vmlinux 0xd6337c0f anon_transport_class_unregister +EXPORT_SYMBOL_GPL vmlinux 0xd64ed259 __memcat_p +EXPORT_SYMBOL_GPL vmlinux 0xd6623b52 virtqueue_get_vring_size +EXPORT_SYMBOL_GPL vmlinux 0xd667f91b __bdev_dax_supported +EXPORT_SYMBOL_GPL vmlinux 0xd67364f7 eventfd_ctx_fdget +EXPORT_SYMBOL_GPL vmlinux 0xd67b4109 ata_sas_scsi_ioctl +EXPORT_SYMBOL_GPL vmlinux 0xd6952dc8 inet_ehash_nolisten +EXPORT_SYMBOL_GPL vmlinux 0xd69d465d usb_role_switch_register +EXPORT_SYMBOL_GPL vmlinux 0xd6b10050 regmap_field_free +EXPORT_SYMBOL_GPL vmlinux 0xd6b3450d do_truncate +EXPORT_SYMBOL_GPL vmlinux 0xd6c4f769 pinctrl_force_sleep +EXPORT_SYMBOL_GPL vmlinux 0xd6c8a043 ping_getfrag +EXPORT_SYMBOL_GPL vmlinux 0xd6db97e0 nvdimm_pmem_region_create +EXPORT_SYMBOL_GPL vmlinux 0xd6e834ac ata_port_wait_eh +EXPORT_SYMBOL_GPL vmlinux 0xd6f0f20d scsi_flush_work +EXPORT_SYMBOL_GPL vmlinux 0xd7094c68 serial8250_rx_dma_flush +EXPORT_SYMBOL_GPL vmlinux 0xd71f755d proc_mkdir_data +EXPORT_SYMBOL_GPL vmlinux 0xd722d67d __pm_relax +EXPORT_SYMBOL_GPL vmlinux 0xd729b6c8 blkcg_root_css +EXPORT_SYMBOL_GPL vmlinux 0xd72feba2 xenbus_read_driver_state +EXPORT_SYMBOL_GPL vmlinux 0xd7334379 relay_open +EXPORT_SYMBOL_GPL vmlinux 0xd7399d2a efivar_entry_iter_end +EXPORT_SYMBOL_GPL vmlinux 0xd7408f3f __rio_local_write_config_8 +EXPORT_SYMBOL_GPL vmlinux 0xd7444aef device_property_read_u64_array +EXPORT_SYMBOL_GPL vmlinux 0xd7452af9 device_register +EXPORT_SYMBOL_GPL vmlinux 0xd74d9f73 ahci_platform_init_host +EXPORT_SYMBOL_GPL vmlinux 0xd75b20aa rsa_parse_priv_key +EXPORT_SYMBOL_GPL vmlinux 0xd768e985 regulator_has_full_constraints +EXPORT_SYMBOL_GPL vmlinux 0xd774957d mpi_write_to_sgl +EXPORT_SYMBOL_GPL vmlinux 0xd77f8574 icc_node_add +EXPORT_SYMBOL_GPL vmlinux 0xd7948bec hisi_uncore_pmu_set_event_period +EXPORT_SYMBOL_GPL vmlinux 0xd7acc0cc pci_enable_ats +EXPORT_SYMBOL_GPL vmlinux 0xd7b6d983 mpc8xxx_spi_probe +EXPORT_SYMBOL_GPL vmlinux 0xd7c39fff free_iova +EXPORT_SYMBOL_GPL vmlinux 0xd7cea889 edac_mod_work +EXPORT_SYMBOL_GPL vmlinux 0xd7dc3651 thermal_of_cooling_device_register +EXPORT_SYMBOL_GPL vmlinux 0xd7ee0f57 devlink_flash_update_begin_notify +EXPORT_SYMBOL_GPL vmlinux 0xd7f06c32 pci_dev_run_wake +EXPORT_SYMBOL_GPL vmlinux 0xd8093588 pm_genpd_remove +EXPORT_SYMBOL_GPL vmlinux 0xd80e1cd7 crypto_spawn_tfm2 +EXPORT_SYMBOL_GPL vmlinux 0xd81bbca5 tps6586x_update +EXPORT_SYMBOL_GPL vmlinux 0xd8206482 virtio_device_freeze +EXPORT_SYMBOL_GPL vmlinux 0xd8237495 dev_pm_opp_find_level_exact +EXPORT_SYMBOL_GPL vmlinux 0xd838e0c0 devlink_traps_register +EXPORT_SYMBOL_GPL vmlinux 0xd840c866 of_genpd_add_provider_onecell +EXPORT_SYMBOL_GPL vmlinux 0xd8457ad9 pm_runtime_allow +EXPORT_SYMBOL_GPL vmlinux 0xd84d35bd dax_read_lock +EXPORT_SYMBOL_GPL vmlinux 0xd86186a2 ata_sff_wait_ready +EXPORT_SYMBOL_GPL vmlinux 0xd86cb096 serdev_device_remove +EXPORT_SYMBOL_GPL vmlinux 0xd876f7d3 dev_pm_opp_of_add_table +EXPORT_SYMBOL_GPL vmlinux 0xd878cad9 crypto_register_shashes +EXPORT_SYMBOL_GPL vmlinux 0xd879c619 crypto_alloc_aead +EXPORT_SYMBOL_GPL vmlinux 0xd87f30d0 tpm1_getcap +EXPORT_SYMBOL_GPL vmlinux 0xd87fc0a0 usb_amd_prefetch_quirk +EXPORT_SYMBOL_GPL vmlinux 0xd89200d3 kvm_gfn_to_hva_cache_init +EXPORT_SYMBOL_GPL vmlinux 0xd8a00501 kvm_put_kvm +EXPORT_SYMBOL_GPL vmlinux 0xd8d24416 hisi_clk_register_mux +EXPORT_SYMBOL_GPL vmlinux 0xd8d68ab1 dmi_memdev_type +EXPORT_SYMBOL_GPL vmlinux 0xd8e65966 regmap_fields_read +EXPORT_SYMBOL_GPL vmlinux 0xd8ec42ad iommu_device_unlink +EXPORT_SYMBOL_GPL vmlinux 0xd8ecc860 crypto_unregister_acomp +EXPORT_SYMBOL_GPL vmlinux 0xd8f6773c ping_rcv +EXPORT_SYMBOL_GPL vmlinux 0xd8f7fed9 debugfs_create_file_unsafe +EXPORT_SYMBOL_GPL vmlinux 0xd8fbb14d net_cls_cgrp_subsys_on_dfl_key +EXPORT_SYMBOL_GPL vmlinux 0xd8ffe41b of_icc_xlate_onecell +EXPORT_SYMBOL_GPL vmlinux 0xd90328cf sdio_writel +EXPORT_SYMBOL_GPL vmlinux 0xd9086502 zynqmp_pm_reset_assert +EXPORT_SYMBOL_GPL vmlinux 0xd90a93a7 k3_udma_glue_rx_get_irq +EXPORT_SYMBOL_GPL vmlinux 0xd90de084 ahci_start_engine +EXPORT_SYMBOL_GPL vmlinux 0xd91a4876 usb_find_interface +EXPORT_SYMBOL_GPL vmlinux 0xd920216c crypto_ahash_setkey +EXPORT_SYMBOL_GPL vmlinux 0xd92f0791 leds_list_lock +EXPORT_SYMBOL_GPL vmlinux 0xd93a5cb1 efivar_variable_is_removable +EXPORT_SYMBOL_GPL vmlinux 0xd94a714d devm_usb_get_phy +EXPORT_SYMBOL_GPL vmlinux 0xd95c73fa mtk_hw_get_value +EXPORT_SYMBOL_GPL vmlinux 0xd96968e7 i2c_parse_fw_timings +EXPORT_SYMBOL_GPL vmlinux 0xd96b7187 regulator_get_voltage +EXPORT_SYMBOL_GPL vmlinux 0xd96babb4 interval_tree_iter_next +EXPORT_SYMBOL_GPL vmlinux 0xd96bc107 usb_urb_ep_type_check +EXPORT_SYMBOL_GPL vmlinux 0xd98e9d97 pci_enable_pasid +EXPORT_SYMBOL_GPL vmlinux 0xd9a06620 ip6_dst_lookup_tunnel +EXPORT_SYMBOL_GPL vmlinux 0xd9bd2a03 cpuidle_disable_device +EXPORT_SYMBOL_GPL vmlinux 0xd9c0b4c6 of_property_read_string_helper +EXPORT_SYMBOL_GPL vmlinux 0xd9d5d879 sbitmap_queue_resize +EXPORT_SYMBOL_GPL vmlinux 0xd9e24457 ring_buffer_peek +EXPORT_SYMBOL_GPL vmlinux 0xd9ef48e4 of_reserved_mem_device_init_by_idx +EXPORT_SYMBOL_GPL vmlinux 0xd9f85cf3 alloc_dax +EXPORT_SYMBOL_GPL vmlinux 0xd9faa7a5 zynqmp_pm_set_pll_frac_mode +EXPORT_SYMBOL_GPL vmlinux 0xd9ff2172 ezx_pcap_write +EXPORT_SYMBOL_GPL vmlinux 0xda023083 i2c_adapter_type +EXPORT_SYMBOL_GPL vmlinux 0xda15a15d alarm_forward +EXPORT_SYMBOL_GPL vmlinux 0xda1d25a1 ata_bmdma_status +EXPORT_SYMBOL_GPL vmlinux 0xda320d31 sfp_module_start +EXPORT_SYMBOL_GPL vmlinux 0xda3cc5f4 of_gen_pool_get +EXPORT_SYMBOL_GPL vmlinux 0xda4aa47e usb_unanchor_urb +EXPORT_SYMBOL_GPL vmlinux 0xda5b3c2b dma_request_chan_by_mask +EXPORT_SYMBOL_GPL vmlinux 0xda5d2c32 kvm_vcpu_gfn_to_page +EXPORT_SYMBOL_GPL vmlinux 0xda62e813 dev_attr_link_power_management_policy +EXPORT_SYMBOL_GPL vmlinux 0xda71bcbc iomap_set_page_dirty +EXPORT_SYMBOL_GPL vmlinux 0xda7912d4 freq_qos_add_request +EXPORT_SYMBOL_GPL vmlinux 0xda7a166f rtc_class_open +EXPORT_SYMBOL_GPL vmlinux 0xda850a6b devres_release_group +EXPORT_SYMBOL_GPL vmlinux 0xda89eb48 dma_can_mmap +EXPORT_SYMBOL_GPL vmlinux 0xda8e1302 software_node_find_by_name +EXPORT_SYMBOL_GPL vmlinux 0xdaa06dc1 acpi_lpat_raw_to_temp +EXPORT_SYMBOL_GPL vmlinux 0xdaa713ee dev_coredumpsg +EXPORT_SYMBOL_GPL vmlinux 0xdab5a1eb interval_tree_insert +EXPORT_SYMBOL_GPL vmlinux 0xdab70330 handle_fasteoi_mask_irq +EXPORT_SYMBOL_GPL vmlinux 0xdacae4bd usb_add_phy_dev +EXPORT_SYMBOL_GPL vmlinux 0xdace974e crypto_register_template +EXPORT_SYMBOL_GPL vmlinux 0xdaf4dfb3 fb_mode_option +EXPORT_SYMBOL_GPL vmlinux 0xdaf5c16e __cookie_v4_check +EXPORT_SYMBOL_GPL vmlinux 0xdaf849f6 blk_clear_pm_only +EXPORT_SYMBOL_GPL vmlinux 0xdafcdc3a ktime_get_snapshot +EXPORT_SYMBOL_GPL vmlinux 0xdafe55ed usb_hcd_unlink_urb_from_ep +EXPORT_SYMBOL_GPL vmlinux 0xdb1cba15 hwspin_lock_unregister +EXPORT_SYMBOL_GPL vmlinux 0xdb21a27f devlink_dpipe_table_resource_set +EXPORT_SYMBOL_GPL vmlinux 0xdb25da3e irq_work_queue +EXPORT_SYMBOL_GPL vmlinux 0xdb28c0c3 fat_time_unix2fat +EXPORT_SYMBOL_GPL vmlinux 0xdb33f713 fsstack_copy_inode_size +EXPORT_SYMBOL_GPL vmlinux 0xdb3a89d7 wm5110_i2c_regmap +EXPORT_SYMBOL_GPL vmlinux 0xdb3d9235 usb_match_one_id +EXPORT_SYMBOL_GPL vmlinux 0xdb59abba pinmux_generic_get_function_name +EXPORT_SYMBOL_GPL vmlinux 0xdb5a934e clkdev_create +EXPORT_SYMBOL_GPL vmlinux 0xdb62ef07 to_nvdimm +EXPORT_SYMBOL_GPL vmlinux 0xdb63a944 acpi_lpat_get_conversion_table +EXPORT_SYMBOL_GPL vmlinux 0xdb735885 alarm_cancel +EXPORT_SYMBOL_GPL vmlinux 0xdb736edd ip6_datagram_send_ctl +EXPORT_SYMBOL_GPL vmlinux 0xdb8a1b3f usermodehelper_read_trylock +EXPORT_SYMBOL_GPL vmlinux 0xdbaa155c device_add_groups +EXPORT_SYMBOL_GPL vmlinux 0xdbb94fda posix_acl_access_xattr_handler +EXPORT_SYMBOL_GPL vmlinux 0xdbc831fe ata_bmdma_port_start +EXPORT_SYMBOL_GPL vmlinux 0xdbd0d7e3 pci_intx +EXPORT_SYMBOL_GPL vmlinux 0xdbf13a0f usb_get_dr_mode +EXPORT_SYMBOL_GPL vmlinux 0xdbf29726 __tracepoint_neigh_timer_handler +EXPORT_SYMBOL_GPL vmlinux 0xdbf331ad pci_probe_reset_slot +EXPORT_SYMBOL_GPL vmlinux 0xdbf7cb70 mpi_get_nbits +EXPORT_SYMBOL_GPL vmlinux 0xdc00a938 crypto_register_skcipher +EXPORT_SYMBOL_GPL vmlinux 0xdc0d8161 noop_direct_IO +EXPORT_SYMBOL_GPL vmlinux 0xdc139c13 k3_udma_glue_tx_get_hdesc_size +EXPORT_SYMBOL_GPL vmlinux 0xdc14a211 xen_hvm_evtchn_do_upcall +EXPORT_SYMBOL_GPL vmlinux 0xdc21e866 hrtimer_forward +EXPORT_SYMBOL_GPL vmlinux 0xdc2a1489 scsi_autopm_put_device +EXPORT_SYMBOL_GPL vmlinux 0xdc2e793d tty_get_pgrp +EXPORT_SYMBOL_GPL vmlinux 0xdc35a451 thermal_zone_get_zone_by_name +EXPORT_SYMBOL_GPL vmlinux 0xdc3c4ebc pci_epf_alloc_space +EXPORT_SYMBOL_GPL vmlinux 0xdc45a5db edac_stop_work +EXPORT_SYMBOL_GPL vmlinux 0xdc514037 blk_queue_rq_timeout +EXPORT_SYMBOL_GPL vmlinux 0xdc5678c7 l3mdev_fib_table_by_index +EXPORT_SYMBOL_GPL vmlinux 0xdc6596fa irq_set_parent +EXPORT_SYMBOL_GPL vmlinux 0xdc6699cb acpi_dev_free_resource_list +EXPORT_SYMBOL_GPL vmlinux 0xdc7df67f apei_exec_ctx_init +EXPORT_SYMBOL_GPL vmlinux 0xdc825d6c usb_amd_quirk_pll_disable +EXPORT_SYMBOL_GPL vmlinux 0xdc97af2e syscore_suspend +EXPORT_SYMBOL_GPL vmlinux 0xdc9fa232 raw_notifier_chain_register +EXPORT_SYMBOL_GPL vmlinux 0xdcaeb934 bus_unregister +EXPORT_SYMBOL_GPL vmlinux 0xdcb33c0c pci_epc_map_addr +EXPORT_SYMBOL_GPL vmlinux 0xdcb34f82 thermal_cooling_device_unregister +EXPORT_SYMBOL_GPL vmlinux 0xdcc2be13 of_thermal_get_trip_points +EXPORT_SYMBOL_GPL vmlinux 0xdccd03e5 ftrace_set_notrace +EXPORT_SYMBOL_GPL vmlinux 0xdcd18d2f queue_iova +EXPORT_SYMBOL_GPL vmlinux 0xdcd4395e pci_cfg_access_unlock +EXPORT_SYMBOL_GPL vmlinux 0xdcd7ac56 set_cpus_allowed_ptr +EXPORT_SYMBOL_GPL vmlinux 0xdcd8c53b xenbus_match +EXPORT_SYMBOL_GPL vmlinux 0xdcd959f2 pinmux_generic_add_function +EXPORT_SYMBOL_GPL vmlinux 0xdce01b46 xenbus_dev_is_online +EXPORT_SYMBOL_GPL vmlinux 0xdce16e49 thermal_zone_device_register +EXPORT_SYMBOL_GPL vmlinux 0xdce23a83 sbitmap_queue_wake_up +EXPORT_SYMBOL_GPL vmlinux 0xdd060504 kernel_read_file_from_fd +EXPORT_SYMBOL_GPL vmlinux 0xdd0762df set_worker_desc +EXPORT_SYMBOL_GPL vmlinux 0xdd1fca4d irq_chip_eoi_parent +EXPORT_SYMBOL_GPL vmlinux 0xdd21f23f usb_init_urb +EXPORT_SYMBOL_GPL vmlinux 0xdd391eff profile_event_unregister +EXPORT_SYMBOL_GPL vmlinux 0xdd626ee3 fuse_len_args +EXPORT_SYMBOL_GPL vmlinux 0xdd658790 usb_poison_urb +EXPORT_SYMBOL_GPL vmlinux 0xdd7f0765 __tracepoint_powernv_throttle +EXPORT_SYMBOL_GPL vmlinux 0xdd7f64f0 cpu_logical_map +EXPORT_SYMBOL_GPL vmlinux 0xdd890b69 dax_finish_sync_fault +EXPORT_SYMBOL_GPL vmlinux 0xdd90b0bf raw_abort +EXPORT_SYMBOL_GPL vmlinux 0xdd913a69 usb_submit_urb +EXPORT_SYMBOL_GPL vmlinux 0xdd9ad49a clk_regmap_mux_ro_ops +EXPORT_SYMBOL_GPL vmlinux 0xddb696c0 nvm_get_chunk_meta +EXPORT_SYMBOL_GPL vmlinux 0xddb708e4 mc_send_command +EXPORT_SYMBOL_GPL vmlinux 0xddb97257 xenbus_dev_suspend +EXPORT_SYMBOL_GPL vmlinux 0xddbeeecc pci_lock_rescan_remove +EXPORT_SYMBOL_GPL vmlinux 0xddc29d30 rio_set_port_lockout +EXPORT_SYMBOL_GPL vmlinux 0xddd23fa7 ata_pci_device_do_resume +EXPORT_SYMBOL_GPL vmlinux 0xddd67936 wm5110_patch +EXPORT_SYMBOL_GPL vmlinux 0xddeb222c input_ff_erase +EXPORT_SYMBOL_GPL vmlinux 0xde0116e3 dax_iomap_rw +EXPORT_SYMBOL_GPL vmlinux 0xde077809 dpcon_close +EXPORT_SYMBOL_GPL vmlinux 0xde09a94d xas_find +EXPORT_SYMBOL_GPL vmlinux 0xde124ea3 wm8350_reg_lock +EXPORT_SYMBOL_GPL vmlinux 0xde2d3af0 acpi_dev_resource_ext_address_space +EXPORT_SYMBOL_GPL vmlinux 0xde3a15ad switchdev_port_obj_del +EXPORT_SYMBOL_GPL vmlinux 0xde3d1806 dm_hold +EXPORT_SYMBOL_GPL vmlinux 0xde55816d skb_zerocopy_iter_stream +EXPORT_SYMBOL_GPL vmlinux 0xde61511e usb_get_from_anchor +EXPORT_SYMBOL_GPL vmlinux 0xde6e8ca0 nd_blk_region_to_dimm +EXPORT_SYMBOL_GPL vmlinux 0xde6f1851 TSS_checkhmac1 +EXPORT_SYMBOL_GPL vmlinux 0xde750504 devm_free_pages +EXPORT_SYMBOL_GPL vmlinux 0xde7533f9 __clk_mux_determine_rate +EXPORT_SYMBOL_GPL vmlinux 0xde80bd86 udp_destruct_sock +EXPORT_SYMBOL_GPL vmlinux 0xde97d5b6 device_create +EXPORT_SYMBOL_GPL vmlinux 0xde9ab8c7 xenbus_rm +EXPORT_SYMBOL_GPL vmlinux 0xdea702e1 pm_generic_suspend +EXPORT_SYMBOL_GPL vmlinux 0xdea9919b kmsg_dump_unregister +EXPORT_SYMBOL_GPL vmlinux 0xdead5f77 tracing_cond_snapshot_data +EXPORT_SYMBOL_GPL vmlinux 0xdec188ef __platform_driver_probe +EXPORT_SYMBOL_GPL vmlinux 0xdedf2b23 inet_csk_listen_start +EXPORT_SYMBOL_GPL vmlinux 0xdee53a3b fat_detach +EXPORT_SYMBOL_GPL vmlinux 0xdeffa0a7 edac_raw_mc_handle_error +EXPORT_SYMBOL_GPL vmlinux 0xdf0ab8d7 i2c_dw_configure_master +EXPORT_SYMBOL_GPL vmlinux 0xdf0ca3f4 cpu_latency_qos_request_active +EXPORT_SYMBOL_GPL vmlinux 0xdf0f75c6 eventfd_signal +EXPORT_SYMBOL_GPL vmlinux 0xdf136bf4 serdev_device_set_baudrate +EXPORT_SYMBOL_GPL vmlinux 0xdf223247 __tracepoint_sched_overutilized_tp +EXPORT_SYMBOL_GPL vmlinux 0xdf259bcf regulator_map_voltage_iterate +EXPORT_SYMBOL_GPL vmlinux 0xdf2738bb cpu_cgrp_subsys_enabled_key +EXPORT_SYMBOL_GPL vmlinux 0xdf390f2d devm_serdev_device_open +EXPORT_SYMBOL_GPL vmlinux 0xdf46a5c9 init_iova_domain +EXPORT_SYMBOL_GPL vmlinux 0xdf4aaaaa path_noexec +EXPORT_SYMBOL_GPL vmlinux 0xdf5afc82 regulator_list_voltage_table +EXPORT_SYMBOL_GPL vmlinux 0xdf60a336 blkg_prfill_rwstat +EXPORT_SYMBOL_GPL vmlinux 0xdf7ee8bd led_classdev_register_ext +EXPORT_SYMBOL_GPL vmlinux 0xdf9208c0 alloc_workqueue +EXPORT_SYMBOL_GPL vmlinux 0xdfab4744 to_software_node +EXPORT_SYMBOL_GPL vmlinux 0xdfad1ec6 dm_path_uevent +EXPORT_SYMBOL_GPL vmlinux 0xdfada8aa device_link_remove +EXPORT_SYMBOL_GPL vmlinux 0xdfb8a103 lwtunnel_encap_del_ops +EXPORT_SYMBOL_GPL vmlinux 0xdfcb6c90 mctrl_gpio_set +EXPORT_SYMBOL_GPL vmlinux 0xdfd551cc mtk_eint_set_debounce +EXPORT_SYMBOL_GPL vmlinux 0xdfeff236 crypto_req_done +EXPORT_SYMBOL_GPL vmlinux 0xe0153f70 ahci_init_controller +EXPORT_SYMBOL_GPL vmlinux 0xe037666e unregister_ftrace_function +EXPORT_SYMBOL_GPL vmlinux 0xe03f1dee kthread_queue_delayed_work +EXPORT_SYMBOL_GPL vmlinux 0xe0435664 public_key_subtype +EXPORT_SYMBOL_GPL vmlinux 0xe055941d shash_ahash_finup +EXPORT_SYMBOL_GPL vmlinux 0xe05e0df2 dpbp_reset +EXPORT_SYMBOL_GPL vmlinux 0xe05e2f85 nexthop_free_rcu +EXPORT_SYMBOL_GPL vmlinux 0xe0679f60 crypto_register_acomp +EXPORT_SYMBOL_GPL vmlinux 0xe071d05d zs_pool_stats +EXPORT_SYMBOL_GPL vmlinux 0xe07d9a4d class_for_each_device +EXPORT_SYMBOL_GPL vmlinux 0xe094d327 iomap_zero_range +EXPORT_SYMBOL_GPL vmlinux 0xe09d630b debugfs_create_ulong +EXPORT_SYMBOL_GPL vmlinux 0xe0b00e88 blkg_rwstat_recursive_sum +EXPORT_SYMBOL_GPL vmlinux 0xe0b1c103 clk_set_max_rate +EXPORT_SYMBOL_GPL vmlinux 0xe0b2a7a6 of_clk_hw_onecell_get +EXPORT_SYMBOL_GPL vmlinux 0xe0c7e9c6 register_ftrace_function +EXPORT_SYMBOL_GPL vmlinux 0xe0d9e230 usb_hcd_amd_remote_wakeup_quirk +EXPORT_SYMBOL_GPL vmlinux 0xe0d9f42a platform_device_add_resources +EXPORT_SYMBOL_GPL vmlinux 0xe0dd2695 pci_status_get_and_clear_errors +EXPORT_SYMBOL_GPL vmlinux 0xe0e3147c HYPERVISOR_sched_op +EXPORT_SYMBOL_GPL vmlinux 0xe0ea04c5 pci_epc_remove_epf +EXPORT_SYMBOL_GPL vmlinux 0xe0f43f13 ping_common_sendmsg +EXPORT_SYMBOL_GPL vmlinux 0xe10cd6ad erst_get_record_id_begin +EXPORT_SYMBOL_GPL vmlinux 0xe11295fe cpufreq_generic_attr +EXPORT_SYMBOL_GPL vmlinux 0xe13bce73 platform_device_unregister +EXPORT_SYMBOL_GPL vmlinux 0xe1451a7d xhci_ext_cap_init +EXPORT_SYMBOL_GPL vmlinux 0xe1551879 pci_stop_and_remove_bus_device_locked +EXPORT_SYMBOL_GPL vmlinux 0xe15c22a1 devm_pinctrl_get +EXPORT_SYMBOL_GPL vmlinux 0xe1624af3 metadata_dst_alloc_percpu +EXPORT_SYMBOL_GPL vmlinux 0xe1775ee7 dm_get_reserved_bio_based_ios +EXPORT_SYMBOL_GPL vmlinux 0xe17cce3c tty_ldisc_ref_wait +EXPORT_SYMBOL_GPL vmlinux 0xe191bc51 usb_enable_lpm +EXPORT_SYMBOL_GPL vmlinux 0xe19288bd __fscrypt_prepare_link +EXPORT_SYMBOL_GPL vmlinux 0xe1990072 kvm_vcpu_unmap +EXPORT_SYMBOL_GPL vmlinux 0xe199fb9a usb_create_shared_hcd +EXPORT_SYMBOL_GPL vmlinux 0xe1a8d7c9 net_rwsem +EXPORT_SYMBOL_GPL vmlinux 0xe1af1ec9 platform_find_device_by_driver +EXPORT_SYMBOL_GPL vmlinux 0xe1b61def max8997_bulk_write +EXPORT_SYMBOL_GPL vmlinux 0xe1bd6c99 rio_init_mports +EXPORT_SYMBOL_GPL vmlinux 0xe1c0a146 pci_reset_bus +EXPORT_SYMBOL_GPL vmlinux 0xe1c11d3c rockchip_pcie_init_port +EXPORT_SYMBOL_GPL vmlinux 0xe1c63523 blk_ksm_get_slot_idx +EXPORT_SYMBOL_GPL vmlinux 0xe1d2712e irq_chip_release_resources_parent +EXPORT_SYMBOL_GPL vmlinux 0xe1e0002d net_ns_get_ownership +EXPORT_SYMBOL_GPL vmlinux 0xe1e04ab2 crypto_register_scomp +EXPORT_SYMBOL_GPL vmlinux 0xe1e4df72 sock_zerocopy_callback +EXPORT_SYMBOL_GPL vmlinux 0xe1e685a4 pwmchip_add +EXPORT_SYMBOL_GPL vmlinux 0xe1e9d877 of_mpc8xxx_spi_probe +EXPORT_SYMBOL_GPL vmlinux 0xe1fe0c01 of_pwm_get +EXPORT_SYMBOL_GPL vmlinux 0xe205263c tcpv6_prot +EXPORT_SYMBOL_GPL vmlinux 0xe209563b iomap_writepage +EXPORT_SYMBOL_GPL vmlinux 0xe217ffeb pinctrl_generic_get_group +EXPORT_SYMBOL_GPL vmlinux 0xe21c28f8 pci_reset_function +EXPORT_SYMBOL_GPL vmlinux 0xe21e70bc rhashtable_walk_stop +EXPORT_SYMBOL_GPL vmlinux 0xe2255cfe pinmux_generic_get_function_count +EXPORT_SYMBOL_GPL vmlinux 0xe233762a input_event_from_user +EXPORT_SYMBOL_GPL vmlinux 0xe2392a66 rio_register_driver +EXPORT_SYMBOL_GPL vmlinux 0xe239c89f kthread_unuse_mm +EXPORT_SYMBOL_GPL vmlinux 0xe24032c1 of_clk_src_simple_get +EXPORT_SYMBOL_GPL vmlinux 0xe24a57fc clk_hw_get_flags +EXPORT_SYMBOL_GPL vmlinux 0xe254a8e2 device_initialize +EXPORT_SYMBOL_GPL vmlinux 0xe2582a12 btree_init +EXPORT_SYMBOL_GPL vmlinux 0xe25cc6fe thermal_zone_get_temp +EXPORT_SYMBOL_GPL vmlinux 0xe29ad433 device_connection_find +EXPORT_SYMBOL_GPL vmlinux 0xe2b3207a unregister_switchdev_notifier +EXPORT_SYMBOL_GPL vmlinux 0xe2bd63bc devlink_port_type_eth_set +EXPORT_SYMBOL_GPL vmlinux 0xe2ce2b4d evm_set_key +EXPORT_SYMBOL_GPL vmlinux 0xe2ee1738 ahci_fill_cmd_slot +EXPORT_SYMBOL_GPL vmlinux 0xe2f1de90 udp_init_sock +EXPORT_SYMBOL_GPL vmlinux 0xe2fc3a28 scsi_unregister_device_handler +EXPORT_SYMBOL_GPL vmlinux 0xe2fe9bf8 rio_unregister_scan +EXPORT_SYMBOL_GPL vmlinux 0xe3043ff9 request_any_context_irq +EXPORT_SYMBOL_GPL vmlinux 0xe316d297 ata_pci_bmdma_init_one +EXPORT_SYMBOL_GPL vmlinux 0xe31ca0bc pinconf_generic_dt_node_to_map +EXPORT_SYMBOL_GPL vmlinux 0xe31e67c0 __fat_fs_error +EXPORT_SYMBOL_GPL vmlinux 0xe32d29f6 fsnotify_find_mark +EXPORT_SYMBOL_GPL vmlinux 0xe33284fb serdev_device_write +EXPORT_SYMBOL_GPL vmlinux 0xe338c5ac inet_hashinfo2_init_mod +EXPORT_SYMBOL_GPL vmlinux 0xe34c3bf2 bpf_trace_run11 +EXPORT_SYMBOL_GPL vmlinux 0xe36246b8 pci_msi_create_irq_domain +EXPORT_SYMBOL_GPL vmlinux 0xe370ea4f mbox_chan_received_data +EXPORT_SYMBOL_GPL vmlinux 0xe38965cf rio_request_inb_pwrite +EXPORT_SYMBOL_GPL vmlinux 0xe3948ff4 acpi_walk_dep_device_list +EXPORT_SYMBOL_GPL vmlinux 0xe397caf5 seq_buf_printf +EXPORT_SYMBOL_GPL vmlinux 0xe39d0794 usb_phy_roothub_exit +EXPORT_SYMBOL_GPL vmlinux 0xe3a4c344 sdio_f0_readb +EXPORT_SYMBOL_GPL vmlinux 0xe3ab4c86 blk_mq_freeze_queue_wait +EXPORT_SYMBOL_GPL vmlinux 0xe3b09712 kprobe_event_delete +EXPORT_SYMBOL_GPL vmlinux 0xe3b21630 list_lru_walk_one +EXPORT_SYMBOL_GPL vmlinux 0xe3bd2a63 devfreq_cooling_unregister +EXPORT_SYMBOL_GPL vmlinux 0xe3cd5fae klist_iter_init +EXPORT_SYMBOL_GPL vmlinux 0xe3d286d6 netdev_set_default_ethtool_ops +EXPORT_SYMBOL_GPL vmlinux 0xe3e3902b sysfs_notify +EXPORT_SYMBOL_GPL vmlinux 0xe3ebf9bd arch_set_freq_scale +EXPORT_SYMBOL_GPL vmlinux 0xe3f738ea invalidate_inode_pages2_range +EXPORT_SYMBOL_GPL vmlinux 0xe3f8d05b device_property_read_string +EXPORT_SYMBOL_GPL vmlinux 0xe405bca7 ata_do_set_mode +EXPORT_SYMBOL_GPL vmlinux 0xe409cc3b mdiobus_modify +EXPORT_SYMBOL_GPL vmlinux 0xe40bb23e devlink_health_reporter_priv +EXPORT_SYMBOL_GPL vmlinux 0xe418cbc8 xdp_return_frame +EXPORT_SYMBOL_GPL vmlinux 0xe41afacf tracing_snapshot_cond +EXPORT_SYMBOL_GPL vmlinux 0xe42181f1 __mmdrop +EXPORT_SYMBOL_GPL vmlinux 0xe4248980 cper_estatus_print +EXPORT_SYMBOL_GPL vmlinux 0xe4291d90 ping_init_sock +EXPORT_SYMBOL_GPL vmlinux 0xe4309905 syscore_resume +EXPORT_SYMBOL_GPL vmlinux 0xe450329f debugfs_create_file_size +EXPORT_SYMBOL_GPL vmlinux 0xe45bceec pci_check_and_mask_intx +EXPORT_SYMBOL_GPL vmlinux 0xe45f58ba serial8250_rpm_put_tx +EXPORT_SYMBOL_GPL vmlinux 0xe46a21e1 clk_hw_set_parent +EXPORT_SYMBOL_GPL vmlinux 0xe481e2ec devlink_param_driverinit_value_set +EXPORT_SYMBOL_GPL vmlinux 0xe4874aef __tracepoint_add_device_to_group +EXPORT_SYMBOL_GPL vmlinux 0xe48fafcd gnttab_pages_clear_private +EXPORT_SYMBOL_GPL vmlinux 0xe491f9db kvm_read_guest_offset_cached +EXPORT_SYMBOL_GPL vmlinux 0xe495926a alarm_restart +EXPORT_SYMBOL_GPL vmlinux 0xe4971ade tracing_alloc_snapshot +EXPORT_SYMBOL_GPL vmlinux 0xe49b8323 ata_link_next +EXPORT_SYMBOL_GPL vmlinux 0xe4a3fcc6 device_find_child_by_name +EXPORT_SYMBOL_GPL vmlinux 0xe4a68df6 vring_new_virtqueue +EXPORT_SYMBOL_GPL vmlinux 0xe4b064f9 pcie_link_speed +EXPORT_SYMBOL_GPL vmlinux 0xe4b818c3 phy_speed_to_str +EXPORT_SYMBOL_GPL vmlinux 0xe4c07c45 tty_perform_flush +EXPORT_SYMBOL_GPL vmlinux 0xe4c2c66c rtc_ktime_to_tm +EXPORT_SYMBOL_GPL vmlinux 0xe4c55d89 ipv6_stub +EXPORT_SYMBOL_GPL vmlinux 0xe4d372b8 device_remove_properties +EXPORT_SYMBOL_GPL vmlinux 0xe4db2b4d tc3589x_reg_write +EXPORT_SYMBOL_GPL vmlinux 0xe4db3678 crypto_type_has_alg +EXPORT_SYMBOL_GPL vmlinux 0xe4e48b12 swphy_validate_state +EXPORT_SYMBOL_GPL vmlinux 0xe4ebbe2e nfnl_ct_hook +EXPORT_SYMBOL_GPL vmlinux 0xe51028d1 sysfs_group_change_owner +EXPORT_SYMBOL_GPL vmlinux 0xe5200189 usb_hub_clear_tt_buffer +EXPORT_SYMBOL_GPL vmlinux 0xe5270481 skb_to_sgvec_nomark +EXPORT_SYMBOL_GPL vmlinux 0xe52a1a42 tpm_chip_stop +EXPORT_SYMBOL_GPL vmlinux 0xe52a4ac9 sock_zerocopy_put +EXPORT_SYMBOL_GPL vmlinux 0xe54c6d58 put_iova_domain +EXPORT_SYMBOL_GPL vmlinux 0xe5516728 k3_udma_glue_tx_get_irq +EXPORT_SYMBOL_GPL vmlinux 0xe5538557 ftrace_ops_set_global_filter +EXPORT_SYMBOL_GPL vmlinux 0xe5595eaa tc3589x_block_write +EXPORT_SYMBOL_GPL vmlinux 0xe55bd978 pci_generic_ecam_ops +EXPORT_SYMBOL_GPL vmlinux 0xe56b7fe5 srcu_init_notifier_head +EXPORT_SYMBOL_GPL vmlinux 0xe57c9c6f gfn_to_page_many_atomic +EXPORT_SYMBOL_GPL vmlinux 0xe5850bfc blk_ksm_reprogram_all_keys +EXPORT_SYMBOL_GPL vmlinux 0xe5883bd9 class_compat_unregister +EXPORT_SYMBOL_GPL vmlinux 0xe58a38b1 handle_fasteoi_nmi +EXPORT_SYMBOL_GPL vmlinux 0xe59bd196 irq_gc_mask_set_bit +EXPORT_SYMBOL_GPL vmlinux 0xe5a925d3 zynqmp_pm_init_finalize +EXPORT_SYMBOL_GPL vmlinux 0xe5adcb88 iommu_dev_has_feature +EXPORT_SYMBOL_GPL vmlinux 0xe5b3dc27 dma_buf_fd +EXPORT_SYMBOL_GPL vmlinux 0xe5c02b64 freq_qos_remove_request +EXPORT_SYMBOL_GPL vmlinux 0xe5cb1943 hisi_clk_register_divider +EXPORT_SYMBOL_GPL vmlinux 0xe5db3785 platform_add_devices +EXPORT_SYMBOL_GPL vmlinux 0xe5e0cde3 mmu_notifier_range_update_to_read_only +EXPORT_SYMBOL_GPL vmlinux 0xe5e5579a netdev_walk_all_lower_dev_rcu +EXPORT_SYMBOL_GPL vmlinux 0xe5f9aab8 usb_interrupt_msg +EXPORT_SYMBOL_GPL vmlinux 0xe60632a9 edac_queue_work +EXPORT_SYMBOL_GPL vmlinux 0xe609d1c6 __reset_control_get +EXPORT_SYMBOL_GPL vmlinux 0xe60a5e8d pids_cgrp_subsys_enabled_key +EXPORT_SYMBOL_GPL vmlinux 0xe626242e vfs_write +EXPORT_SYMBOL_GPL vmlinux 0xe628bb9f phy_fibre_port_array +EXPORT_SYMBOL_GPL vmlinux 0xe6329fe0 devm_kfree +EXPORT_SYMBOL_GPL vmlinux 0xe641d96c usb_root_hub_lost_power +EXPORT_SYMBOL_GPL vmlinux 0xe643ddad mtk_mmsys_ddp_disconnect +EXPORT_SYMBOL_GPL vmlinux 0xe644b428 nd_tbl +EXPORT_SYMBOL_GPL vmlinux 0xe64b8b4a clk_bulk_get_optional +EXPORT_SYMBOL_GPL vmlinux 0xe6546850 gpiochip_line_is_persistent +EXPORT_SYMBOL_GPL vmlinux 0xe654f9e1 param_ops_bool_enable_only +EXPORT_SYMBOL_GPL vmlinux 0xe65b925f blk_queue_flag_test_and_set +EXPORT_SYMBOL_GPL vmlinux 0xe66583d8 gpiod_cansleep +EXPORT_SYMBOL_GPL vmlinux 0xe6717079 debugfs_remove +EXPORT_SYMBOL_GPL vmlinux 0xe685edb2 serdev_device_set_tiocm +EXPORT_SYMBOL_GPL vmlinux 0xe6940644 request_firmware_direct +EXPORT_SYMBOL_GPL vmlinux 0xe69db428 tcp_leave_memory_pressure +EXPORT_SYMBOL_GPL vmlinux 0xe6b0d5a6 regulator_get_voltage_sel_pickable_regmap +EXPORT_SYMBOL_GPL vmlinux 0xe6b5160c dax_iomap_fault +EXPORT_SYMBOL_GPL vmlinux 0xe6b903b6 rio_del_device +EXPORT_SYMBOL_GPL vmlinux 0xe6cfac65 srcu_barrier +EXPORT_SYMBOL_GPL vmlinux 0xe6d3d94c dev_pm_opp_get_of_node +EXPORT_SYMBOL_GPL vmlinux 0xe6e40502 rcu_get_gp_seq +EXPORT_SYMBOL_GPL vmlinux 0xe6e4d808 devm_clk_hw_unregister +EXPORT_SYMBOL_GPL vmlinux 0xe6e988c5 k3_ringacc_get_tisci_dev_id +EXPORT_SYMBOL_GPL vmlinux 0xe6ec3328 dev_attr_em_message +EXPORT_SYMBOL_GPL vmlinux 0xe6f4efd8 ahci_platform_suspend +EXPORT_SYMBOL_GPL vmlinux 0xe6f52443 klist_add_head +EXPORT_SYMBOL_GPL vmlinux 0xe6f5e6f5 xas_clear_mark +EXPORT_SYMBOL_GPL vmlinux 0xe6f83837 acpi_bus_attach_private_data +EXPORT_SYMBOL_GPL vmlinux 0xe71317fe devfreq_cooling_register +EXPORT_SYMBOL_GPL vmlinux 0xe719e83f efivar_entry_set_get_size +EXPORT_SYMBOL_GPL vmlinux 0xe71fd345 ata_host_suspend +EXPORT_SYMBOL_GPL vmlinux 0xe741800f kobject_get_path +EXPORT_SYMBOL_GPL vmlinux 0xe753b68d devlink_fmsg_arr_pair_nest_end +EXPORT_SYMBOL_GPL vmlinux 0xe75781f0 dma_resv_test_signaled_rcu +EXPORT_SYMBOL_GPL vmlinux 0xe76473ce pm_clk_add +EXPORT_SYMBOL_GPL vmlinux 0xe769232e sprint_symbol_no_offset +EXPORT_SYMBOL_GPL vmlinux 0xe7758ef5 root_device_unregister +EXPORT_SYMBOL_GPL vmlinux 0xe77c0f4e wm8997_irq +EXPORT_SYMBOL_GPL vmlinux 0xe783e261 sysfs_emit +EXPORT_SYMBOL_GPL vmlinux 0xe7936243 zynqmp_pm_clock_getstate +EXPORT_SYMBOL_GPL vmlinux 0xe7ac9f03 spi_sync_locked +EXPORT_SYMBOL_GPL vmlinux 0xe7ae793f acpi_unbind_one +EXPORT_SYMBOL_GPL vmlinux 0xe7bf1d60 dw_pcie_msi_init +EXPORT_SYMBOL_GPL vmlinux 0xe7d58bd2 gnttab_page_cache_put +EXPORT_SYMBOL_GPL vmlinux 0xe7d6d2d4 filter_match_preds +EXPORT_SYMBOL_GPL vmlinux 0xe7e4124d led_trigger_unregister +EXPORT_SYMBOL_GPL vmlinux 0xe7e93b6f transport_add_device +EXPORT_SYMBOL_GPL vmlinux 0xe7eee3d5 __cookie_v4_init_sequence +EXPORT_SYMBOL_GPL vmlinux 0xe7f96394 tpm_tis_core_init +EXPORT_SYMBOL_GPL vmlinux 0xe7fe438d md_kick_rdev_from_array +EXPORT_SYMBOL_GPL vmlinux 0xe7ffe877 pcpu_base_addr +EXPORT_SYMBOL_GPL vmlinux 0xe802eda6 genpd_dev_pm_attach_by_id +EXPORT_SYMBOL_GPL vmlinux 0xe809cffb ring_buffer_time_stamp +EXPORT_SYMBOL_GPL vmlinux 0xe818b32b ata_bmdma_interrupt +EXPORT_SYMBOL_GPL vmlinux 0xe81ddad6 tracing_generic_entry_update +EXPORT_SYMBOL_GPL vmlinux 0xe827658c unix_inq_len +EXPORT_SYMBOL_GPL vmlinux 0xe8377964 shake_page +EXPORT_SYMBOL_GPL vmlinux 0xe84f6e5c pciserial_remove_ports +EXPORT_SYMBOL_GPL vmlinux 0xe8531b1e ata_scsi_change_queue_depth +EXPORT_SYMBOL_GPL vmlinux 0xe858976a mpc8xxx_spi_tx_buf_u32 +EXPORT_SYMBOL_GPL vmlinux 0xe85a9fd3 cpu_cluster_pm_exit +EXPORT_SYMBOL_GPL vmlinux 0xe862c4b7 dpm_suspend_start +EXPORT_SYMBOL_GPL vmlinux 0xe868477f acpi_data_fwnode_ops +EXPORT_SYMBOL_GPL vmlinux 0xe8824e44 dev_pm_opp_attach_genpd +EXPORT_SYMBOL_GPL vmlinux 0xe88e2eff dev_pm_qos_add_ancestor_request +EXPORT_SYMBOL_GPL vmlinux 0xe8a289a7 iomap_writepages +EXPORT_SYMBOL_GPL vmlinux 0xe8a465fc ata_sff_busy_sleep +EXPORT_SYMBOL_GPL vmlinux 0xe8b40f33 __tracepoint_remove_device_from_group +EXPORT_SYMBOL_GPL vmlinux 0xe8bfa1ec gnttab_dma_free_pages +EXPORT_SYMBOL_GPL vmlinux 0xe8c5c21c ata_scsi_queuecmd +EXPORT_SYMBOL_GPL vmlinux 0xe8d7133c xfrm_state_mtu +EXPORT_SYMBOL_GPL vmlinux 0xe8ecc658 fsverity_ioctl_measure +EXPORT_SYMBOL_GPL vmlinux 0xe90f1e0a lwtunnel_encap_add_ops +EXPORT_SYMBOL_GPL vmlinux 0xe90ffe5b crypto_inst_setname +EXPORT_SYMBOL_GPL vmlinux 0xe91442d0 regulator_get +EXPORT_SYMBOL_GPL vmlinux 0xe91b3cc4 led_compose_name +EXPORT_SYMBOL_GPL vmlinux 0xe9276152 ahci_platform_disable_resources +EXPORT_SYMBOL_GPL vmlinux 0xe93080d0 _proc_mkdir +EXPORT_SYMBOL_GPL vmlinux 0xe93e49c3 devres_free +EXPORT_SYMBOL_GPL vmlinux 0xe946de31 fsl_mc_portal_allocate +EXPORT_SYMBOL_GPL vmlinux 0xe94a701a edac_pci_handle_npe +EXPORT_SYMBOL_GPL vmlinux 0xe951806e pinctrl_register_and_init +EXPORT_SYMBOL_GPL vmlinux 0xe956a75c pl320_ipc_unregister_notifier +EXPORT_SYMBOL_GPL vmlinux 0xe9599b89 regmap_get_max_register +EXPORT_SYMBOL_GPL vmlinux 0xe959fb8b dev_pm_qos_hide_flags +EXPORT_SYMBOL_GPL vmlinux 0xe982630f led_trigger_set_default +EXPORT_SYMBOL_GPL vmlinux 0xe99185c9 of_clk_get_parent_count +EXPORT_SYMBOL_GPL vmlinux 0xe99415a1 ip_route_output_tunnel +EXPORT_SYMBOL_GPL vmlinux 0xe9ad9951 devm_nvmem_device_get +EXPORT_SYMBOL_GPL vmlinux 0xe9bd9edc __raw_v4_lookup +EXPORT_SYMBOL_GPL vmlinux 0xe9c5b605 __percpu_init_rwsem +EXPORT_SYMBOL_GPL vmlinux 0xe9d1b7cf irq_to_pcap +EXPORT_SYMBOL_GPL vmlinux 0xe9d63a0d k3_udma_glue_enable_tx_chn +EXPORT_SYMBOL_GPL vmlinux 0xe9e18eb7 verify_pkcs7_signature +EXPORT_SYMBOL_GPL vmlinux 0xe9f17ec2 irq_domain_push_irq +EXPORT_SYMBOL_GPL vmlinux 0xe9f25519 pci_epf_unregister_driver +EXPORT_SYMBOL_GPL vmlinux 0xea124bd1 gcd +EXPORT_SYMBOL_GPL vmlinux 0xea1a2bff blk_req_needs_zone_write_lock +EXPORT_SYMBOL_GPL vmlinux 0xea38036f ring_buffer_entries +EXPORT_SYMBOL_GPL vmlinux 0xea3a97b0 ip6_route_lookup +EXPORT_SYMBOL_GPL vmlinux 0xea4bef01 scsi_queue_work +EXPORT_SYMBOL_GPL vmlinux 0xea50dad3 ahci_ignore_sss +EXPORT_SYMBOL_GPL vmlinux 0xea5749f5 cn_add_callback +EXPORT_SYMBOL_GPL vmlinux 0xea7b4744 kvm_clear_guest_page +EXPORT_SYMBOL_GPL vmlinux 0xea8360f8 fsl_mc_portal_reset +EXPORT_SYMBOL_GPL vmlinux 0xea90e7f6 sched_setscheduler_nocheck +EXPORT_SYMBOL_GPL vmlinux 0xea9249a8 gpiod_get_array_optional +EXPORT_SYMBOL_GPL vmlinux 0xeaac52fa cpuidle_get_cpu_driver +EXPORT_SYMBOL_GPL vmlinux 0xeaad96f9 sbitmap_queue_clear +EXPORT_SYMBOL_GPL vmlinux 0xeacb16e6 dev_pm_qos_update_request +EXPORT_SYMBOL_GPL vmlinux 0xeacb30d2 tty_port_unregister_device +EXPORT_SYMBOL_GPL vmlinux 0xead54924 mctrl_gpio_to_gpiod +EXPORT_SYMBOL_GPL vmlinux 0xead5784e dev_attr_em_message_type +EXPORT_SYMBOL_GPL vmlinux 0xead68fa8 pm_runtime_get_if_active +EXPORT_SYMBOL_GPL vmlinux 0xeae0f496 clean_acked_data_flush +EXPORT_SYMBOL_GPL vmlinux 0xeaf7fe0f sbitmap_resize +EXPORT_SYMBOL_GPL vmlinux 0xeafe07b8 clk_bulk_prepare +EXPORT_SYMBOL_GPL vmlinux 0xeb12fcd1 spi_res_alloc +EXPORT_SYMBOL_GPL vmlinux 0xeb1366d5 watchdog_notify_pretimeout +EXPORT_SYMBOL_GPL vmlinux 0xeb15b2e2 fib6_check_nexthop +EXPORT_SYMBOL_GPL vmlinux 0xeb21b0fe iommu_sva_unbind_gpasid +EXPORT_SYMBOL_GPL vmlinux 0xeb3c8d73 wm5110_irq +EXPORT_SYMBOL_GPL vmlinux 0xeb3f8466 unregister_kprobe +EXPORT_SYMBOL_GPL vmlinux 0xeb4221e4 trace_clock +EXPORT_SYMBOL_GPL vmlinux 0xeb6aaf36 kernel_read_file_from_path_initns +EXPORT_SYMBOL_GPL vmlinux 0xeb7273d7 nvmem_cell_read_u32 +EXPORT_SYMBOL_GPL vmlinux 0xeb80ae01 xdp_rxq_info_is_reg +EXPORT_SYMBOL_GPL vmlinux 0xeb84baac usb_get_maximum_speed +EXPORT_SYMBOL_GPL vmlinux 0xeb9ac602 usb_get_phy +EXPORT_SYMBOL_GPL vmlinux 0xebaa36e8 unregister_hw_breakpoint +EXPORT_SYMBOL_GPL vmlinux 0xebb4a97b crypto_register_akcipher +EXPORT_SYMBOL_GPL vmlinux 0xebbdfae2 blk_mq_sched_try_merge +EXPORT_SYMBOL_GPL vmlinux 0xebbe048a iomap_bmap +EXPORT_SYMBOL_GPL vmlinux 0xebc171fc regulator_register +EXPORT_SYMBOL_GPL vmlinux 0xebc3ebf7 fsl_mc_bus_dpio_type +EXPORT_SYMBOL_GPL vmlinux 0xebc9a09f lock_system_sleep +EXPORT_SYMBOL_GPL vmlinux 0xebd3876f ata_eh_freeze_port +EXPORT_SYMBOL_GPL vmlinux 0xebd4cc11 mctrl_gpio_enable_ms +EXPORT_SYMBOL_GPL vmlinux 0xebde1c14 sg_scsi_ioctl +EXPORT_SYMBOL_GPL vmlinux 0xebdf0854 do_splice_from +EXPORT_SYMBOL_GPL vmlinux 0xec0c0fdd xenbus_watch_pathfmt +EXPORT_SYMBOL_GPL vmlinux 0xec1cba2d rcu_read_unlock_trace_special +EXPORT_SYMBOL_GPL vmlinux 0xec24302b skcipher_walk_complete +EXPORT_SYMBOL_GPL vmlinux 0xec500907 __vring_new_virtqueue +EXPORT_SYMBOL_GPL vmlinux 0xec5668f6 dax_zero_page_range +EXPORT_SYMBOL_GPL vmlinux 0xec5ad73b trace_seq_bitmask +EXPORT_SYMBOL_GPL vmlinux 0xec660cd3 __tracepoint_fib6_table_lookup +EXPORT_SYMBOL_GPL vmlinux 0xec68ba70 clk_bulk_enable +EXPORT_SYMBOL_GPL vmlinux 0xec774acb cpufreq_frequency_table_verify +EXPORT_SYMBOL_GPL vmlinux 0xec7c61bb __blkg_prfill_rwstat +EXPORT_SYMBOL_GPL vmlinux 0xec7f755f ata_std_postreset +EXPORT_SYMBOL_GPL vmlinux 0xec9095aa synth_event_create +EXPORT_SYMBOL_GPL vmlinux 0xec94d1da pci_generic_config_write32 +EXPORT_SYMBOL_GPL vmlinux 0xec98b2c1 of_property_read_variable_u32_array +EXPORT_SYMBOL_GPL vmlinux 0xecb0056f __mdiobus_modify_changed +EXPORT_SYMBOL_GPL vmlinux 0xecb4f4bc regulator_set_mode +EXPORT_SYMBOL_GPL vmlinux 0xecba68e3 gnttab_batch_map +EXPORT_SYMBOL_GPL vmlinux 0xecd647e3 usb_set_interface +EXPORT_SYMBOL_GPL vmlinux 0xecd8f23d xenbus_read +EXPORT_SYMBOL_GPL vmlinux 0xece2d08f kvm_map_gfn +EXPORT_SYMBOL_GPL vmlinux 0xed010b9b modify_user_hw_breakpoint +EXPORT_SYMBOL_GPL vmlinux 0xed1bcb5d alarm_init +EXPORT_SYMBOL_GPL vmlinux 0xed331a03 register_virtio_driver +EXPORT_SYMBOL_GPL vmlinux 0xed401960 ip6_datagram_recv_ctl +EXPORT_SYMBOL_GPL vmlinux 0xed433134 scsi_eh_ready_devs +EXPORT_SYMBOL_GPL vmlinux 0xed7b8fd9 mtk_pinconf_bias_get_combo +EXPORT_SYMBOL_GPL vmlinux 0xed7c4301 devm_regulator_get_optional +EXPORT_SYMBOL_GPL vmlinux 0xed7c7b91 raw_v6_hashinfo +EXPORT_SYMBOL_GPL vmlinux 0xed820873 icc_link_destroy +EXPORT_SYMBOL_GPL vmlinux 0xeda44e59 fwnode_get_named_gpiod +EXPORT_SYMBOL_GPL vmlinux 0xeda6e324 acpi_subsys_suspend +EXPORT_SYMBOL_GPL vmlinux 0xedd092d5 power_supply_notifier +EXPORT_SYMBOL_GPL vmlinux 0xedd14761 ethnl_cable_test_amplitude +EXPORT_SYMBOL_GPL vmlinux 0xede3eb42 dev_pm_opp_of_get_sharing_cpus +EXPORT_SYMBOL_GPL vmlinux 0xede9a09a btree_lookup +EXPORT_SYMBOL_GPL vmlinux 0xee1050ba phy_modify_mmd_changed +EXPORT_SYMBOL_GPL vmlinux 0xee197e23 alloc_empty_file +EXPORT_SYMBOL_GPL vmlinux 0xee2711cc pinctrl_utils_add_map_mux +EXPORT_SYMBOL_GPL vmlinux 0xee38ef57 register_switchdev_blocking_notifier +EXPORT_SYMBOL_GPL vmlinux 0xee40262b extcon_register_notifier_all +EXPORT_SYMBOL_GPL vmlinux 0xee45baeb transport_configure_device +EXPORT_SYMBOL_GPL vmlinux 0xee47d4a8 devlink_net +EXPORT_SYMBOL_GPL vmlinux 0xee4e476d rio_mport_chk_dev_access +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 0xee6e4dae dma_async_device_channel_unregister +EXPORT_SYMBOL_GPL vmlinux 0xee842763 mtk_pinconf_adv_pull_set +EXPORT_SYMBOL_GPL vmlinux 0xee8aaeb1 tc3589x_reg_read +EXPORT_SYMBOL_GPL vmlinux 0xee960e1a usb_driver_set_configuration +EXPORT_SYMBOL_GPL vmlinux 0xeea7ab2c elv_unregister +EXPORT_SYMBOL_GPL vmlinux 0xeeaa1528 extcon_set_property_sync +EXPORT_SYMBOL_GPL vmlinux 0xeeb34662 fl6_merge_options +EXPORT_SYMBOL_GPL vmlinux 0xeebac8df led_trigger_event +EXPORT_SYMBOL_GPL vmlinux 0xeebe5c27 platform_irq_count +EXPORT_SYMBOL_GPL vmlinux 0xeed6dace regmap_raw_read +EXPORT_SYMBOL_GPL vmlinux 0xeedd987e phy_10gbit_features_array +EXPORT_SYMBOL_GPL vmlinux 0xeedfcec3 task_work_run +EXPORT_SYMBOL_GPL vmlinux 0xeee58f25 skb_partial_csum_set +EXPORT_SYMBOL_GPL vmlinux 0xeefd88ea tc3589x_set_bits +EXPORT_SYMBOL_GPL vmlinux 0xef050240 irq_domain_add_legacy +EXPORT_SYMBOL_GPL vmlinux 0xef1dde67 hypervisor_kobj +EXPORT_SYMBOL_GPL vmlinux 0xef1f6e23 apei_resources_request +EXPORT_SYMBOL_GPL vmlinux 0xef2321ad acpi_dev_gpio_irq_get +EXPORT_SYMBOL_GPL vmlinux 0xef29fcdd clk_bulk_put +EXPORT_SYMBOL_GPL vmlinux 0xef2f2a3c pci_bus_max_busnr +EXPORT_SYMBOL_GPL vmlinux 0xef375ca6 kvm_vcpu_mark_page_dirty +EXPORT_SYMBOL_GPL vmlinux 0xef382673 usb_hcd_map_urb_for_dma +EXPORT_SYMBOL_GPL vmlinux 0xef4471f3 tpm_pcr_extend +EXPORT_SYMBOL_GPL vmlinux 0xef464c28 getboottime64 +EXPORT_SYMBOL_GPL vmlinux 0xef6a2744 dev_fwnode +EXPORT_SYMBOL_GPL vmlinux 0xef6c3f70 round_jiffies_up_relative +EXPORT_SYMBOL_GPL vmlinux 0xef6fea55 dw_pcie_setup_rc +EXPORT_SYMBOL_GPL vmlinux 0xef70eb7e ring_buffer_iter_advance +EXPORT_SYMBOL_GPL vmlinux 0xef73da23 sched_setattr +EXPORT_SYMBOL_GPL vmlinux 0xef815b99 tty_kclose +EXPORT_SYMBOL_GPL vmlinux 0xef86780e of_usb_update_otg_caps +EXPORT_SYMBOL_GPL vmlinux 0xef92ef33 btree_last +EXPORT_SYMBOL_GPL vmlinux 0xef9a6340 usb_autopm_get_interface +EXPORT_SYMBOL_GPL vmlinux 0xefa2c27d register_tracepoint_module_notifier +EXPORT_SYMBOL_GPL vmlinux 0xefa3f75a led_trigger_register +EXPORT_SYMBOL_GPL vmlinux 0xefa654fb i2c_match_id +EXPORT_SYMBOL_GPL vmlinux 0xefa79959 devm_regulator_get_exclusive +EXPORT_SYMBOL_GPL vmlinux 0xefadcc01 __sock_recv_wifi_status +EXPORT_SYMBOL_GPL vmlinux 0xefb6acea sock_prot_inuse_add +EXPORT_SYMBOL_GPL vmlinux 0xefdc17e0 perf_event_addr_filters_sync +EXPORT_SYMBOL_GPL vmlinux 0xefeafcf1 edac_has_mcs +EXPORT_SYMBOL_GPL vmlinux 0xefed44e1 of_regulator_match +EXPORT_SYMBOL_GPL vmlinux 0xeff2c3db regulator_map_voltage_ascend +EXPORT_SYMBOL_GPL vmlinux 0xeff72486 uhci_reset_hc +EXPORT_SYMBOL_GPL vmlinux 0xeffccb82 regmap_get_val_bytes +EXPORT_SYMBOL_GPL vmlinux 0xf0013db2 platform_bus_type +EXPORT_SYMBOL_GPL vmlinux 0xf0263bc5 sched_setscheduler +EXPORT_SYMBOL_GPL vmlinux 0xf03c85df spi_mem_supports_op +EXPORT_SYMBOL_GPL vmlinux 0xf0427b7e pm_generic_poweroff_late +EXPORT_SYMBOL_GPL vmlinux 0xf04429b4 acpi_bus_get_status_handle +EXPORT_SYMBOL_GPL vmlinux 0xf0539240 clk_hw_rate_is_protected +EXPORT_SYMBOL_GPL vmlinux 0xf0579ed6 device_del +EXPORT_SYMBOL_GPL vmlinux 0xf0696401 acpi_pci_detect_ejectable +EXPORT_SYMBOL_GPL vmlinux 0xf06f1a9b of_irq_to_resource_table +EXPORT_SYMBOL_GPL vmlinux 0xf07ae023 fuse_fill_super_common +EXPORT_SYMBOL_GPL vmlinux 0xf08050c4 rhashtable_walk_start_check +EXPORT_SYMBOL_GPL vmlinux 0xf08f8fb6 iommu_group_for_each_dev +EXPORT_SYMBOL_GPL vmlinux 0xf0910075 sfp_bus_del_upstream +EXPORT_SYMBOL_GPL vmlinux 0xf0a35e4b scsi_target_block +EXPORT_SYMBOL_GPL vmlinux 0xf0ab1cad rq_flush_dcache_pages +EXPORT_SYMBOL_GPL vmlinux 0xf0b23cf3 xhci_mtk_sch_exit +EXPORT_SYMBOL_GPL vmlinux 0xf0b8ce6b devlink_resources_unregister +EXPORT_SYMBOL_GPL vmlinux 0xf0d07ea5 serial8250_get_port +EXPORT_SYMBOL_GPL vmlinux 0xf0d478c7 list_lru_add +EXPORT_SYMBOL_GPL vmlinux 0xf0dc81aa ata_sff_tf_load +EXPORT_SYMBOL_GPL vmlinux 0xf0f1939e of_dma_controller_register +EXPORT_SYMBOL_GPL vmlinux 0xf0f2ccb4 pm_generic_resume +EXPORT_SYMBOL_GPL vmlinux 0xf0f96c1f apply_to_existing_page_range +EXPORT_SYMBOL_GPL vmlinux 0xf12cf4f4 fat_getattr +EXPORT_SYMBOL_GPL vmlinux 0xf12f68b0 kthread_use_mm +EXPORT_SYMBOL_GPL vmlinux 0xf1361941 pci_vpd_find_tag +EXPORT_SYMBOL_GPL vmlinux 0xf1462b2f gpio_to_desc +EXPORT_SYMBOL_GPL vmlinux 0xf14bef48 ohci_resume +EXPORT_SYMBOL_GPL vmlinux 0xf1575847 __mmu_notifier_register +EXPORT_SYMBOL_GPL vmlinux 0xf170503a of_property_count_elems_of_size +EXPORT_SYMBOL_GPL vmlinux 0xf184d189 kernel_power_off +EXPORT_SYMBOL_GPL vmlinux 0xf19817da tpm2_probe +EXPORT_SYMBOL_GPL vmlinux 0xf1a9cba7 add_page_wait_queue +EXPORT_SYMBOL_GPL vmlinux 0xf1b31314 delayacct_on +EXPORT_SYMBOL_GPL vmlinux 0xf1ca4aad to_nvdimm_bus_dev +EXPORT_SYMBOL_GPL vmlinux 0xf1cacb5b irq_of_parse_and_map +EXPORT_SYMBOL_GPL vmlinux 0xf1d0cd8b __inode_attach_wb +EXPORT_SYMBOL_GPL vmlinux 0xf20670bf devlink_trap_groups_register +EXPORT_SYMBOL_GPL vmlinux 0xf2168fa9 rockchip_pcie_get_phys +EXPORT_SYMBOL_GPL vmlinux 0xf21e1f9b disable_percpu_irq +EXPORT_SYMBOL_GPL vmlinux 0xf2252e4d pinctrl_get_group_pins +EXPORT_SYMBOL_GPL vmlinux 0xf22949f5 wbc_account_cgroup_owner +EXPORT_SYMBOL_GPL vmlinux 0xf26111e3 pci_epc_set_bar +EXPORT_SYMBOL_GPL vmlinux 0xf264ffa0 __iptunnel_pull_header +EXPORT_SYMBOL_GPL vmlinux 0xf26d7013 hwspin_lock_request_specific +EXPORT_SYMBOL_GPL vmlinux 0xf278f9ef bsg_setup_queue +EXPORT_SYMBOL_GPL vmlinux 0xf279a885 dm_bio_get_target_bio_nr +EXPORT_SYMBOL_GPL vmlinux 0xf27d0a7b gnttab_grant_foreign_access_ref +EXPORT_SYMBOL_GPL vmlinux 0xf28859e3 stmpe_set_bits +EXPORT_SYMBOL_GPL vmlinux 0xf28aed9e pci_epf_destroy +EXPORT_SYMBOL_GPL vmlinux 0xf28e7e68 of_clk_get_parent_name +EXPORT_SYMBOL_GPL vmlinux 0xf2967796 ring_buffer_record_on +EXPORT_SYMBOL_GPL vmlinux 0xf2b33cb7 memory_cgrp_subsys_on_dfl_key +EXPORT_SYMBOL_GPL vmlinux 0xf2d5e0b8 pci_ignore_hotplug +EXPORT_SYMBOL_GPL vmlinux 0xf2dd8511 class_interface_register +EXPORT_SYMBOL_GPL vmlinux 0xf2e40f14 fsnotify_add_mark +EXPORT_SYMBOL_GPL vmlinux 0xf2e92136 acpi_dma_configure +EXPORT_SYMBOL_GPL vmlinux 0xf2f6c6a2 mctrl_gpio_init +EXPORT_SYMBOL_GPL vmlinux 0xf2fb4fd3 shmem_file_setup +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 0xf31b3fd1 workqueue_set_max_active +EXPORT_SYMBOL_GPL vmlinux 0xf32686a5 thermal_zone_of_sensor_unregister +EXPORT_SYMBOL_GPL vmlinux 0xf32bdc5d unregister_xenstore_notifier +EXPORT_SYMBOL_GPL vmlinux 0xf32c901e subsys_interface_register +EXPORT_SYMBOL_GPL vmlinux 0xf331236f btree_geo32 +EXPORT_SYMBOL_GPL vmlinux 0xf352023f memory_cgrp_subsys_enabled_key +EXPORT_SYMBOL_GPL vmlinux 0xf3808cb1 get_state_synchronize_rcu +EXPORT_SYMBOL_GPL vmlinux 0xf3a8bdd6 add_swap_extent +EXPORT_SYMBOL_GPL vmlinux 0xf3b451ca kdb_poll_funcs +EXPORT_SYMBOL_GPL vmlinux 0xf3b95d79 btree_remove +EXPORT_SYMBOL_GPL vmlinux 0xf3b9d363 __blk_req_zone_write_lock +EXPORT_SYMBOL_GPL vmlinux 0xf3bcbafb proc_create_net_single +EXPORT_SYMBOL_GPL vmlinux 0xf3cba3b1 key_set_timeout +EXPORT_SYMBOL_GPL vmlinux 0xf3e4bc94 ata_ncq_sdev_attrs +EXPORT_SYMBOL_GPL vmlinux 0xf3ee7bbc regmap_check_range_table +EXPORT_SYMBOL_GPL vmlinux 0xf3f8b4e7 regmap_attach_dev +EXPORT_SYMBOL_GPL vmlinux 0xf3f9a082 bio_associate_blkg_from_css +EXPORT_SYMBOL_GPL vmlinux 0xf4032e5c crypto_stats_decompress +EXPORT_SYMBOL_GPL vmlinux 0xf409de88 virtio_add_status +EXPORT_SYMBOL_GPL vmlinux 0xf414d7f1 sysfs_remove_group +EXPORT_SYMBOL_GPL vmlinux 0xf4204826 device_store_ulong +EXPORT_SYMBOL_GPL vmlinux 0xf424cf03 dm_accept_partial_bio +EXPORT_SYMBOL_GPL vmlinux 0xf43873f1 nf_checksum +EXPORT_SYMBOL_GPL vmlinux 0xf4395bec nd_blk_region_set_provider_data +EXPORT_SYMBOL_GPL vmlinux 0xf4464b03 da903x_write +EXPORT_SYMBOL_GPL vmlinux 0xf44e01d4 device_set_of_node_from_dev +EXPORT_SYMBOL_GPL vmlinux 0xf4689d50 linkmode_set_pause +EXPORT_SYMBOL_GPL vmlinux 0xf47315d2 xenbus_unregister_driver +EXPORT_SYMBOL_GPL vmlinux 0xf481be52 spi_mem_dirmap_write +EXPORT_SYMBOL_GPL vmlinux 0xf486aa46 uprobe_unregister +EXPORT_SYMBOL_GPL vmlinux 0xf4af35c2 rcu_gp_is_normal +EXPORT_SYMBOL_GPL vmlinux 0xf4b731eb of_dma_is_coherent +EXPORT_SYMBOL_GPL vmlinux 0xf4c6672b ehci_init_driver +EXPORT_SYMBOL_GPL vmlinux 0xf4d4d5ad spi_set_cs_timing +EXPORT_SYMBOL_GPL vmlinux 0xf4da71b3 public_key_verify_signature +EXPORT_SYMBOL_GPL vmlinux 0xf4de5fd9 usb_put_phy +EXPORT_SYMBOL_GPL vmlinux 0xf4e284e0 devm_kstrdup_const +EXPORT_SYMBOL_GPL vmlinux 0xf4ea0914 usb_mon_register +EXPORT_SYMBOL_GPL vmlinux 0xf4ee7cd4 edac_mc_free +EXPORT_SYMBOL_GPL vmlinux 0xf5062573 sk_attach_filter +EXPORT_SYMBOL_GPL vmlinux 0xf50e911e copy_reserved_iova +EXPORT_SYMBOL_GPL vmlinux 0xf51fe82e dma_need_sync +EXPORT_SYMBOL_GPL vmlinux 0xf546d049 exportfs_encode_fh +EXPORT_SYMBOL_GPL vmlinux 0xf54bd49b lcm +EXPORT_SYMBOL_GPL vmlinux 0xf553318d cpuidle_pause_and_lock +EXPORT_SYMBOL_GPL vmlinux 0xf55909ca devm_led_trigger_register +EXPORT_SYMBOL_GPL vmlinux 0xf56d0aba thermal_cooling_device_register +EXPORT_SYMBOL_GPL vmlinux 0xf57464d8 badblocks_set +EXPORT_SYMBOL_GPL vmlinux 0xf5815e71 ohci_hub_status_data +EXPORT_SYMBOL_GPL vmlinux 0xf587271b sysfs_chmod_file +EXPORT_SYMBOL_GPL vmlinux 0xf58ee305 balloon_page_list_enqueue +EXPORT_SYMBOL_GPL vmlinux 0xf5a3ba99 linear_range_values_in_range +EXPORT_SYMBOL_GPL vmlinux 0xf5a691cd invalidate_bh_lrus +EXPORT_SYMBOL_GPL vmlinux 0xf5a831e5 genphy_c45_restart_aneg +EXPORT_SYMBOL_GPL vmlinux 0xf5aff16d ahci_platform_enable_regulators +EXPORT_SYMBOL_GPL vmlinux 0xf5ceb357 attribute_container_unregister +EXPORT_SYMBOL_GPL vmlinux 0xf5d7eb5a register_ftrace_export +EXPORT_SYMBOL_GPL vmlinux 0xf5e4e790 fsverity_verify_bio +EXPORT_SYMBOL_GPL vmlinux 0xf5f370e0 async_schedule_node +EXPORT_SYMBOL_GPL vmlinux 0xf61669a2 gpiod_toggle_active_low +EXPORT_SYMBOL_GPL vmlinux 0xf61cdbce tty_mode_ioctl +EXPORT_SYMBOL_GPL vmlinux 0xf637d400 devlink_param_driverinit_value_get +EXPORT_SYMBOL_GPL vmlinux 0xf64d40c6 of_irq_to_resource +EXPORT_SYMBOL_GPL vmlinux 0xf64d435f phy_destroy +EXPORT_SYMBOL_GPL vmlinux 0xf64e6fab gpiod_get_from_of_node +EXPORT_SYMBOL_GPL vmlinux 0xf65461f8 lwtunnel_valid_encap_type_attr +EXPORT_SYMBOL_GPL vmlinux 0xf663ee2f pcap_adc_sync +EXPORT_SYMBOL_GPL vmlinux 0xf6710e27 pm_clk_suspend +EXPORT_SYMBOL_GPL vmlinux 0xf6770712 gpiod_put_array +EXPORT_SYMBOL_GPL vmlinux 0xf68c4780 skb_clone_tx_timestamp +EXPORT_SYMBOL_GPL vmlinux 0xf69d35fe virtio_check_driver_offered_feature +EXPORT_SYMBOL_GPL vmlinux 0xf6a28554 region_intersects +EXPORT_SYMBOL_GPL vmlinux 0xf6a33040 cdrom_read_tocentry +EXPORT_SYMBOL_GPL vmlinux 0xf6c71a25 cper_severity_str +EXPORT_SYMBOL_GPL vmlinux 0xf6c8dc62 cpu_hotplug_enable +EXPORT_SYMBOL_GPL vmlinux 0xf6c9228c sbitmap_queue_wake_all +EXPORT_SYMBOL_GPL vmlinux 0xf6db1884 clk_regmap_gate_ro_ops +EXPORT_SYMBOL_GPL vmlinux 0xf6e772c3 irq_bypass_unregister_producer +EXPORT_SYMBOL_GPL vmlinux 0xf6e874f5 ata_timing_merge +EXPORT_SYMBOL_GPL vmlinux 0xf6f16c56 rcu_barrier_tasks +EXPORT_SYMBOL_GPL vmlinux 0xf71dff8d pwm_set_chip_data +EXPORT_SYMBOL_GPL vmlinux 0xf730fb4a qcom_smem_state_update_bits +EXPORT_SYMBOL_GPL vmlinux 0xf731f06f dprc_set_obj_irq +EXPORT_SYMBOL_GPL vmlinux 0xf733b301 devm_pwm_put +EXPORT_SYMBOL_GPL vmlinux 0xf738c4c7 dw_pcie_find_ext_capability +EXPORT_SYMBOL_GPL vmlinux 0xf7436184 register_virtio_device +EXPORT_SYMBOL_GPL vmlinux 0xf7455c16 input_event_to_user +EXPORT_SYMBOL_GPL vmlinux 0xf749debc md5_zero_message_hash +EXPORT_SYMBOL_GPL vmlinux 0xf74bb274 mod_delayed_work_on +EXPORT_SYMBOL_GPL vmlinux 0xf74e7c93 jump_label_rate_limit +EXPORT_SYMBOL_GPL vmlinux 0xf754d7a6 dev_pm_qos_update_user_latency_tolerance +EXPORT_SYMBOL_GPL vmlinux 0xf7601103 devm_memunmap_pages +EXPORT_SYMBOL_GPL vmlinux 0xf7866b4f bind_evtchn_to_irqhandler_lateeoi +EXPORT_SYMBOL_GPL vmlinux 0xf7868fc9 __mmc_send_status +EXPORT_SYMBOL_GPL vmlinux 0xf79b7f6d kthread_cancel_work_sync +EXPORT_SYMBOL_GPL vmlinux 0xf7a2687e user_free_preparse +EXPORT_SYMBOL_GPL vmlinux 0xf7b320cb icc_enable +EXPORT_SYMBOL_GPL vmlinux 0xf7bc95b0 devlink_fmsg_pair_nest_start +EXPORT_SYMBOL_GPL vmlinux 0xf7c3f273 xen_resume_notifier_register +EXPORT_SYMBOL_GPL vmlinux 0xf7c8921b mddev_congested +EXPORT_SYMBOL_GPL vmlinux 0xf7cd403b dpbp_open +EXPORT_SYMBOL_GPL vmlinux 0xf7d37caf devm_rtc_allocate_device +EXPORT_SYMBOL_GPL vmlinux 0xf7d961d8 clk_hw_unregister_composite +EXPORT_SYMBOL_GPL vmlinux 0xf7f65020 xenbus_alloc_evtchn +EXPORT_SYMBOL_GPL vmlinux 0xf7f94d46 pm_generic_runtime_resume +EXPORT_SYMBOL_GPL vmlinux 0xf80da0ff wm831x_reg_write +EXPORT_SYMBOL_GPL vmlinux 0xf8143413 cpufreq_cpu_get_raw +EXPORT_SYMBOL_GPL vmlinux 0xf82f3657 work_on_cpu +EXPORT_SYMBOL_GPL vmlinux 0xf834c26d housekeeping_test_cpu +EXPORT_SYMBOL_GPL vmlinux 0xf83ba450 crypto_grab_ahash +EXPORT_SYMBOL_GPL vmlinux 0xf8432553 cpufreq_disable_fast_switch +EXPORT_SYMBOL_GPL vmlinux 0xf84ed30c phy_gbit_all_ports_features +EXPORT_SYMBOL_GPL vmlinux 0xf8661684 pinctrl_add_gpio_range +EXPORT_SYMBOL_GPL vmlinux 0xf872dffa bind_interdomain_evtchn_to_irq_lateeoi +EXPORT_SYMBOL_GPL vmlinux 0xf880cf6b sk_psock_destroy +EXPORT_SYMBOL_GPL vmlinux 0xf8acbb5c platform_get_irq +EXPORT_SYMBOL_GPL vmlinux 0xf8b5e83c kvm_read_guest_cached +EXPORT_SYMBOL_GPL vmlinux 0xf8bd2fde bio_iov_iter_get_pages +EXPORT_SYMBOL_GPL vmlinux 0xf8c2c774 tpm_get_timeouts +EXPORT_SYMBOL_GPL vmlinux 0xf8c49dd6 irq_find_matching_fwspec +EXPORT_SYMBOL_GPL vmlinux 0xf8d4ff7b nf_ct_hook +EXPORT_SYMBOL_GPL vmlinux 0xf8de9c7a zap_vma_ptes +EXPORT_SYMBOL_GPL vmlinux 0xf8e20436 led_sysfs_disable +EXPORT_SYMBOL_GPL vmlinux 0xf8e73296 mtk_eint_do_init +EXPORT_SYMBOL_GPL vmlinux 0xf8f3a0fb ata_ratelimit +EXPORT_SYMBOL_GPL vmlinux 0xf900c77d zynqmp_pm_clock_disable +EXPORT_SYMBOL_GPL vmlinux 0xf90fbf9e usb_hcd_unmap_urb_for_dma +EXPORT_SYMBOL_GPL vmlinux 0xf910a0d6 meson_clk_pll_ops +EXPORT_SYMBOL_GPL vmlinux 0xf91915ba ata_sff_dev_select +EXPORT_SYMBOL_GPL vmlinux 0xf91ab2ed __tracepoint_arm_event +EXPORT_SYMBOL_GPL vmlinux 0xf932015f __raw_notifier_call_chain +EXPORT_SYMBOL_GPL vmlinux 0xf95322f4 kthread_parkme +EXPORT_SYMBOL_GPL vmlinux 0xf955e9c5 bprintf +EXPORT_SYMBOL_GPL vmlinux 0xf967422b HYPERVISOR_xen_version +EXPORT_SYMBOL_GPL vmlinux 0xf96fe3b7 devlink_trap_groups_unregister +EXPORT_SYMBOL_GPL vmlinux 0xf97b61c4 soc_device_match +EXPORT_SYMBOL_GPL vmlinux 0xf98d0526 mtk_smi_larb_put +EXPORT_SYMBOL_GPL vmlinux 0xf991d1a5 md_bitmap_copy_from_slot +EXPORT_SYMBOL_GPL vmlinux 0xf999ac97 of_get_required_opp_performance_state +EXPORT_SYMBOL_GPL vmlinux 0xf99a06d7 clk_hw_unregister_fixed_factor +EXPORT_SYMBOL_GPL vmlinux 0xf9a054b5 __round_jiffies +EXPORT_SYMBOL_GPL vmlinux 0xf9a074ca usb_altnum_to_altsetting +EXPORT_SYMBOL_GPL vmlinux 0xf9badc81 palmas_ext_control_req_config +EXPORT_SYMBOL_GPL vmlinux 0xf9d1d6e2 fscrypt_get_symlink +EXPORT_SYMBOL_GPL vmlinux 0xfa01729c disk_map_sector_rcu +EXPORT_SYMBOL_GPL vmlinux 0xfa0a8896 acpi_dev_resource_io +EXPORT_SYMBOL_GPL vmlinux 0xfa1eb910 unregister_syscore_ops +EXPORT_SYMBOL_GPL vmlinux 0xfa1fc43f pinctrl_utils_reserve_map +EXPORT_SYMBOL_GPL vmlinux 0xfa2da4b5 blk_steal_bios +EXPORT_SYMBOL_GPL vmlinux 0xfa341c68 rdev_get_drvdata +EXPORT_SYMBOL_GPL vmlinux 0xfa349688 aer_recover_queue +EXPORT_SYMBOL_GPL vmlinux 0xfa39380d spi_alloc_device +EXPORT_SYMBOL_GPL vmlinux 0xfa47894d pci_generic_config_read32 +EXPORT_SYMBOL_GPL vmlinux 0xfa4e719b i2c_dw_adjust_bus_speed +EXPORT_SYMBOL_GPL vmlinux 0xfa666974 queue_work_node +EXPORT_SYMBOL_GPL vmlinux 0xfa67f93d crypto_hash_walk_done +EXPORT_SYMBOL_GPL vmlinux 0xfa690589 netdev_cmd_to_name +EXPORT_SYMBOL_GPL vmlinux 0xfa6e6e8d ethnl_cable_test_step +EXPORT_SYMBOL_GPL vmlinux 0xfa92d245 __regmap_init_spi +EXPORT_SYMBOL_GPL vmlinux 0xfab30dc0 mdio_bus_exit +EXPORT_SYMBOL_GPL vmlinux 0xfab53ed9 pinctrl_gpio_can_use_line +EXPORT_SYMBOL_GPL vmlinux 0xfab93f19 serial8250_modem_status +EXPORT_SYMBOL_GPL vmlinux 0xfad2676f fib_info_nh_uses_dev +EXPORT_SYMBOL_GPL vmlinux 0xfad3dde3 serial8250_rpm_put +EXPORT_SYMBOL_GPL vmlinux 0xfad9c827 kill_dax +EXPORT_SYMBOL_GPL vmlinux 0xfae1a798 icc_node_del +EXPORT_SYMBOL_GPL vmlinux 0xfaeb8620 mbox_client_txdone +EXPORT_SYMBOL_GPL vmlinux 0xfaf55630 debugfs_create_x32 +EXPORT_SYMBOL_GPL vmlinux 0xfaf9bcda fwnode_find_reference +EXPORT_SYMBOL_GPL vmlinux 0xfafcd016 k3_udma_glue_request_rx_chn +EXPORT_SYMBOL_GPL vmlinux 0xfb04359e badblocks_check +EXPORT_SYMBOL_GPL vmlinux 0xfb098242 dma_buf_vmap +EXPORT_SYMBOL_GPL vmlinux 0xfb11c070 dev_pm_opp_find_freq_exact +EXPORT_SYMBOL_GPL vmlinux 0xfb1ce614 wakeup_source_create +EXPORT_SYMBOL_GPL vmlinux 0xfb1e5e8b tpmm_chip_alloc +EXPORT_SYMBOL_GPL vmlinux 0xfb1f7acb fuse_do_open +EXPORT_SYMBOL_GPL vmlinux 0xfb301741 vring_del_virtqueue +EXPORT_SYMBOL_GPL vmlinux 0xfb32a43a bpf_prog_add +EXPORT_SYMBOL_GPL vmlinux 0xfb32b30f ring_buffer_read_prepare_sync +EXPORT_SYMBOL_GPL vmlinux 0xfb38458e unix_peer_get +EXPORT_SYMBOL_GPL vmlinux 0xfb3a6fbb iomap_releasepage +EXPORT_SYMBOL_GPL vmlinux 0xfb3c6fd4 key_type_encrypted +EXPORT_SYMBOL_GPL vmlinux 0xfb3dfe8a page_reporting_unregister +EXPORT_SYMBOL_GPL vmlinux 0xfb4a0bf7 crypto_unregister_rngs +EXPORT_SYMBOL_GPL vmlinux 0xfb58963a power_supply_get_by_phandle +EXPORT_SYMBOL_GPL vmlinux 0xfb61173c nvmem_cell_read_u64 +EXPORT_SYMBOL_GPL vmlinux 0xfb6373d1 hisi_uncore_pmu_offline_cpu +EXPORT_SYMBOL_GPL vmlinux 0xfb6694d3 fscrypt_drop_inode +EXPORT_SYMBOL_GPL vmlinux 0xfb6eedf9 power_group_name +EXPORT_SYMBOL_GPL vmlinux 0xfb6fa74c noop_backing_dev_info +EXPORT_SYMBOL_GPL vmlinux 0xfb728614 phy_power_on +EXPORT_SYMBOL_GPL vmlinux 0xfb7311af blk_mq_unfreeze_queue +EXPORT_SYMBOL_GPL vmlinux 0xfb8fe4da regulator_set_voltage_sel_regmap +EXPORT_SYMBOL_GPL vmlinux 0xfbbd41ca no_action +EXPORT_SYMBOL_GPL vmlinux 0xfbbd60d7 irq_domain_translate_twocell +EXPORT_SYMBOL_GPL vmlinux 0xfbbf955a __devm_regmap_init_spi +EXPORT_SYMBOL_GPL vmlinux 0xfbdfc558 hrtimer_start_range_ns +EXPORT_SYMBOL_GPL vmlinux 0xfbec0255 dev_pm_opp_put_supported_hw +EXPORT_SYMBOL_GPL vmlinux 0xfbffd601 net_prio_cgrp_subsys_on_dfl_key +EXPORT_SYMBOL_GPL vmlinux 0xfc03d97a page_is_ram +EXPORT_SYMBOL_GPL vmlinux 0xfc056c31 ata_sff_postreset +EXPORT_SYMBOL_GPL vmlinux 0xfc0797e4 free_iova_fast +EXPORT_SYMBOL_GPL vmlinux 0xfc14bb2e dm_get_dev_t +EXPORT_SYMBOL_GPL vmlinux 0xfc19bc45 crypto_dh_encode_key +EXPORT_SYMBOL_GPL vmlinux 0xfc201b66 sprint_oid +EXPORT_SYMBOL_GPL vmlinux 0xfc2062c8 crypto_unregister_ahash +EXPORT_SYMBOL_GPL vmlinux 0xfc254d15 gnttab_free_auto_xlat_frames +EXPORT_SYMBOL_GPL vmlinux 0xfc2598cd acpi_get_psd_map +EXPORT_SYMBOL_GPL vmlinux 0xfc28bb6b ata_pci_bmdma_clear_simplex +EXPORT_SYMBOL_GPL vmlinux 0xfc3b4246 acpi_bus_update_power +EXPORT_SYMBOL_GPL vmlinux 0xfc3d61c6 xfrm_audit_state_add +EXPORT_SYMBOL_GPL vmlinux 0xfc3dd3a6 sysfs_create_groups +EXPORT_SYMBOL_GPL vmlinux 0xfc4cd481 of_irq_get +EXPORT_SYMBOL_GPL vmlinux 0xfc6d2c72 pid_vnr +EXPORT_SYMBOL_GPL vmlinux 0xfc6e46d5 nvdimm_bus_register +EXPORT_SYMBOL_GPL vmlinux 0xfc746b3c gnttab_page_cache_shrink +EXPORT_SYMBOL_GPL vmlinux 0xfc87908f pcie_flr +EXPORT_SYMBOL_GPL vmlinux 0xfc9477b5 zynqmp_pm_set_pll_frac_data +EXPORT_SYMBOL_GPL vmlinux 0xfca6bb2b devlink_trap_policers_unregister +EXPORT_SYMBOL_GPL vmlinux 0xfcaa1642 wm8997_patch +EXPORT_SYMBOL_GPL vmlinux 0xfcbe382c cpufreq_cpu_put +EXPORT_SYMBOL_GPL vmlinux 0xfcc1edd3 memory_block_size_bytes +EXPORT_SYMBOL_GPL vmlinux 0xfcc259a8 store_sampling_rate +EXPORT_SYMBOL_GPL vmlinux 0xfce15652 xenbus_dev_probe +EXPORT_SYMBOL_GPL vmlinux 0xfce44cc3 housekeeping_affine +EXPORT_SYMBOL_GPL vmlinux 0xfce641c2 hisi_clk_alloc +EXPORT_SYMBOL_GPL vmlinux 0xfcf09076 phy_driver_is_genphy_10g +EXPORT_SYMBOL_GPL vmlinux 0xfcf991e0 pci_host_common_remove +EXPORT_SYMBOL_GPL vmlinux 0xfcff414c sk_msg_trim +EXPORT_SYMBOL_GPL vmlinux 0xfd0c1e4f init_srcu_struct +EXPORT_SYMBOL_GPL vmlinux 0xfd0e2a2d gnttab_free_pages +EXPORT_SYMBOL_GPL vmlinux 0xfd195774 k3_udma_glue_disable_tx_chn +EXPORT_SYMBOL_GPL vmlinux 0xfd3ab06e spi_mem_dirmap_create +EXPORT_SYMBOL_GPL vmlinux 0xfd4bed9e spi_finalize_current_transfer +EXPORT_SYMBOL_GPL vmlinux 0xfd526703 irq_domain_remove +EXPORT_SYMBOL_GPL vmlinux 0xfd6461e0 task_cgroup_path +EXPORT_SYMBOL_GPL vmlinux 0xfd7243c7 erst_disable +EXPORT_SYMBOL_GPL vmlinux 0xfd938736 device_match_name +EXPORT_SYMBOL_GPL vmlinux 0xfd9b39d9 pci_epc_set_msix +EXPORT_SYMBOL_GPL vmlinux 0xfda1ca85 rio_mport_read_config_8 +EXPORT_SYMBOL_GPL vmlinux 0xfdaee167 simple_attr_open +EXPORT_SYMBOL_GPL vmlinux 0xfdbd7a17 crypto_get_attr_type +EXPORT_SYMBOL_GPL vmlinux 0xfdc229bf tpm2_get_tpm_pt +EXPORT_SYMBOL_GPL vmlinux 0xfdc90d6a crypto_stats_kpp_generate_public_key +EXPORT_SYMBOL_GPL vmlinux 0xfde692f8 sysfs_create_link +EXPORT_SYMBOL_GPL vmlinux 0xfdea6854 cpufreq_driver_fast_switch +EXPORT_SYMBOL_GPL vmlinux 0xfdf637af dm_table_device_name +EXPORT_SYMBOL_GPL vmlinux 0xfdf8634d sysfs_update_groups +EXPORT_SYMBOL_GPL vmlinux 0xfdfa29c4 mbox_request_channel +EXPORT_SYMBOL_GPL vmlinux 0xfe012f55 fib_rules_register +EXPORT_SYMBOL_GPL vmlinux 0xfe07ea06 wm831x_bulk_read +EXPORT_SYMBOL_GPL vmlinux 0xfe0cf59b crypto_destroy_tfm +EXPORT_SYMBOL_GPL vmlinux 0xfe0e7cd3 apei_exec_post_unmap_gars +EXPORT_SYMBOL_GPL vmlinux 0xfe1703e9 usb_acpi_power_manageable +EXPORT_SYMBOL_GPL vmlinux 0xfe31c6a4 __tracepoint_block_bio_complete +EXPORT_SYMBOL_GPL vmlinux 0xfe3372b7 usb_hcd_check_unlink_urb +EXPORT_SYMBOL_GPL vmlinux 0xfe3b2c45 inode_dax +EXPORT_SYMBOL_GPL vmlinux 0xfe455922 cpufreq_dbs_governor_stop +EXPORT_SYMBOL_GPL vmlinux 0xfe476039 ktime_get_resolution_ns +EXPORT_SYMBOL_GPL vmlinux 0xfe542db8 phy_pm_runtime_allow +EXPORT_SYMBOL_GPL vmlinux 0xfe58e94b pci_user_write_config_byte +EXPORT_SYMBOL_GPL vmlinux 0xfe69325f percpu_ref_resurrect +EXPORT_SYMBOL_GPL vmlinux 0xfe792927 irq_domain_translate_onecell +EXPORT_SYMBOL_GPL vmlinux 0xfe86e0f5 blk_ksm_register +EXPORT_SYMBOL_GPL vmlinux 0xfe8cdb84 ring_buffer_alloc_read_page +EXPORT_SYMBOL_GPL vmlinux 0xfe990052 gpio_free +EXPORT_SYMBOL_GPL vmlinux 0xfea08dbd device_wakeup_disable +EXPORT_SYMBOL_GPL vmlinux 0xfeaad2a5 devm_spi_mem_dirmap_destroy +EXPORT_SYMBOL_GPL vmlinux 0xfebedc53 synth_event_trace_array +EXPORT_SYMBOL_GPL vmlinux 0xfec3bf84 icst_clk_setup +EXPORT_SYMBOL_GPL vmlinux 0xfecc3128 hvc_remove +EXPORT_SYMBOL_GPL vmlinux 0xfed11ed1 usb_mon_deregister +EXPORT_SYMBOL_GPL vmlinux 0xfee0b5cb __fib_lookup +EXPORT_SYMBOL_GPL vmlinux 0xfeeecd05 apei_read +EXPORT_SYMBOL_GPL vmlinux 0xfef74f2f platform_unregister_drivers +EXPORT_SYMBOL_GPL vmlinux 0xfefad380 devlink_resource_occ_get_unregister +EXPORT_SYMBOL_GPL vmlinux 0xff01a2b8 battery_hook_register +EXPORT_SYMBOL_GPL vmlinux 0xff05fa13 vring_interrupt +EXPORT_SYMBOL_GPL vmlinux 0xff19790d kvm_debugfs_dir +EXPORT_SYMBOL_GPL vmlinux 0xff291ecf clk_unregister_divider +EXPORT_SYMBOL_GPL vmlinux 0xff42c374 usb_role_switch_get_role +EXPORT_SYMBOL_GPL vmlinux 0xff501d2f kvm_unmap_gfn +EXPORT_SYMBOL_GPL vmlinux 0xff50808e vfs_readf +EXPORT_SYMBOL_GPL vmlinux 0xff52ca3d devm_gpiod_get_array +EXPORT_SYMBOL_GPL vmlinux 0xff5a8cfe cn_del_callback +EXPORT_SYMBOL_GPL vmlinux 0xff6d4746 sock_diag_register_inet_compat +EXPORT_SYMBOL_GPL vmlinux 0xff7b3cab tcp_twsk_unique +EXPORT_SYMBOL_GPL vmlinux 0xff81487d gpiod_remove_lookup_table +EXPORT_SYMBOL_GPL vmlinux 0xff9e23d1 hugetlb_cgrp_subsys_on_dfl_key +EXPORT_SYMBOL_GPL vmlinux 0xffaae521 fsl_mc_object_free +EXPORT_SYMBOL_GPL vmlinux 0xffae8e8b nsecs_to_jiffies +EXPORT_SYMBOL_GPL vmlinux 0xffaf0e24 mbox_send_message +EXPORT_SYMBOL_GPL vmlinux 0xffb1742d preempt_notifier_register +EXPORT_SYMBOL_GPL vmlinux 0xffb6447f device_create_with_groups +EXPORT_SYMBOL_GPL vmlinux 0xffd1123f save_stack_trace +EXPORT_SYMBOL_GPL vmlinux 0xffd593b3 regulator_list_voltage +EXPORT_SYMBOL_GPL vmlinux 0xffec78ff dma_request_slave_channel +EXPORT_SYMBOL_GPL vmlinux 0xffeef6d4 xenbus_read_otherend_details +EXPORT_SYMBOL_GPL vmlinux 0xfff331bc fsl_mc_device_group +EXPORT_SYMBOL_GPL vmlinux 0xfff4f128 ata_dev_disable +FIRMWARE_LOADER_PRIVATE EXPORT_SYMBOL_GPL 0xd3ae7756 fw_fallback_config vmlinux +LTC2497 EXPORT_SYMBOL 0x01b28f83 ltc2497core_remove drivers/iio/adc/ltc2497-core +LTC2497 EXPORT_SYMBOL 0x7dc06f7a ltc2497core_probe drivers/iio/adc/ltc2497-core +MCB EXPORT_SYMBOL_GPL 0x01c9cb49 mcb_get_irq drivers/mcb/mcb +MCB EXPORT_SYMBOL_GPL 0x04bff52d mcb_bus_add_devices drivers/mcb/mcb +MCB EXPORT_SYMBOL_GPL 0x5e57e8b5 mcb_bus_put drivers/mcb/mcb +MCB EXPORT_SYMBOL_GPL 0x636585e0 mcb_unregister_driver drivers/mcb/mcb +MCB EXPORT_SYMBOL_GPL 0x81749229 mcb_get_resource drivers/mcb/mcb +MCB EXPORT_SYMBOL_GPL 0x995baf8b mcb_alloc_bus drivers/mcb/mcb +MCB EXPORT_SYMBOL_GPL 0x9b6ae621 mcb_bus_get drivers/mcb/mcb +MCB EXPORT_SYMBOL_GPL 0xa45ca6b0 mcb_device_register drivers/mcb/mcb +MCB EXPORT_SYMBOL_GPL 0xa9788ea4 chameleon_parse_cells drivers/mcb/mcb +MCB EXPORT_SYMBOL_GPL 0xc660d5f2 __mcb_register_driver drivers/mcb/mcb +MCB EXPORT_SYMBOL_GPL 0xd9b972ae mcb_request_mem drivers/mcb/mcb +MCB EXPORT_SYMBOL_GPL 0xeb2c8905 mcb_release_mem drivers/mcb/mcb +MCB EXPORT_SYMBOL_GPL 0xf18b79c9 mcb_alloc_dev drivers/mcb/mcb +MCB EXPORT_SYMBOL_GPL 0xf9c651b0 mcb_free_dev drivers/mcb/mcb +MCB EXPORT_SYMBOL_GPL 0xfae551fc mcb_release_bus drivers/mcb/mcb +USB_STORAGE EXPORT_SYMBOL_GPL 0x0d199069 usb_stor_bulk_srb drivers/usb/storage/usb-storage +USB_STORAGE EXPORT_SYMBOL_GPL 0x106db1d5 usb_stor_CB_reset drivers/usb/storage/usb-storage +USB_STORAGE EXPORT_SYMBOL_GPL 0x13c85b0a usb_stor_probe2 drivers/usb/storage/usb-storage +USB_STORAGE EXPORT_SYMBOL_GPL 0x19325896 usb_stor_bulk_transfer_sg drivers/usb/storage/usb-storage +USB_STORAGE EXPORT_SYMBOL_GPL 0x19f0b682 usb_stor_CB_transport 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 0x33a0cc3d usb_stor_disconnect drivers/usb/storage/usb-storage +USB_STORAGE EXPORT_SYMBOL_GPL 0x3595b6ec usb_stor_reset_resume drivers/usb/storage/usb-storage +USB_STORAGE EXPORT_SYMBOL_GPL 0x428b1647 usb_stor_Bulk_reset drivers/usb/storage/usb-storage +USB_STORAGE EXPORT_SYMBOL_GPL 0x52444fd1 usb_stor_Bulk_transport drivers/usb/storage/usb-storage +USB_STORAGE EXPORT_SYMBOL_GPL 0x5db9167a usb_stor_transparent_scsi_command drivers/usb/storage/usb-storage +USB_STORAGE EXPORT_SYMBOL_GPL 0x7d31c021 usb_stor_clear_halt drivers/usb/storage/usb-storage +USB_STORAGE EXPORT_SYMBOL_GPL 0x83074d21 fill_inquiry_response drivers/usb/storage/usb-storage +USB_STORAGE EXPORT_SYMBOL_GPL 0x83fd40e3 usb_stor_pre_reset drivers/usb/storage/usb-storage +USB_STORAGE EXPORT_SYMBOL_GPL 0x88d88bec usb_stor_ctrl_transfer drivers/usb/storage/usb-storage +USB_STORAGE EXPORT_SYMBOL_GPL 0x944f7df5 usb_stor_set_xfer_buf drivers/usb/storage/usb-storage +USB_STORAGE EXPORT_SYMBOL_GPL 0x955698c3 usb_stor_access_xfer_buf drivers/usb/storage/usb-storage +USB_STORAGE EXPORT_SYMBOL_GPL 0x9cd34dd1 usb_stor_bulk_transfer_buf drivers/usb/storage/usb-storage +USB_STORAGE EXPORT_SYMBOL_GPL 0xa4b973e5 usb_stor_adjust_quirks drivers/usb/storage/usb-storage +USB_STORAGE EXPORT_SYMBOL_GPL 0xa80e0356 usb_stor_host_template_init drivers/usb/storage/usb-storage +USB_STORAGE EXPORT_SYMBOL_GPL 0xd317646b usb_stor_resume drivers/usb/storage/usb-storage +USB_STORAGE EXPORT_SYMBOL_GPL 0xdcdf00a3 usb_stor_post_reset drivers/usb/storage/usb-storage +USB_STORAGE EXPORT_SYMBOL_GPL 0xe1914963 usb_stor_suspend drivers/usb/storage/usb-storage +USB_STORAGE EXPORT_SYMBOL_GPL 0xe3034a50 usb_stor_probe1 drivers/usb/storage/usb-storage +USB_STORAGE EXPORT_SYMBOL_GPL 0xef16b65d usb_stor_control_msg drivers/usb/storage/usb-storage --- linux-azure-5.8-5.8.0.orig/debian.master/abi/5.8.0-50.56/arm64/generic-64k +++ linux-azure-5.8-5.8.0/debian.master/abi/5.8.0-50.56/arm64/generic-64k @@ -0,0 +1,24569 @@ +EXPORT_SYMBOL arch/arm64/crypto/aes-ce-cipher 0x68f275ad ce_aes_expandkey +EXPORT_SYMBOL arch/arm64/crypto/aes-ce-cipher 0x8ff421c6 ce_aes_setkey +EXPORT_SYMBOL arch/arm64/crypto/aes-neon-blk 0x52d67a4e neon_aes_cbc_encrypt +EXPORT_SYMBOL arch/arm64/crypto/aes-neon-blk 0xd5f41819 neon_aes_ecb_encrypt +EXPORT_SYMBOL arch/arm64/crypto/aes-neon-blk 0xea11590c neon_aes_xts_encrypt +EXPORT_SYMBOL arch/arm64/crypto/aes-neon-blk 0xefc32a9b neon_aes_xts_decrypt +EXPORT_SYMBOL arch/arm64/crypto/chacha-neon 0x220b49ab chacha_crypt_arch +EXPORT_SYMBOL arch/arm64/crypto/chacha-neon 0xdc94f829 chacha_init_arch +EXPORT_SYMBOL arch/arm64/crypto/chacha-neon 0xdd8ec6bd hchacha_block_arch +EXPORT_SYMBOL arch/arm64/crypto/poly1305-neon 0x6ddf27bc poly1305_update_arch +EXPORT_SYMBOL arch/arm64/crypto/poly1305-neon 0x737051cc poly1305_init_arch +EXPORT_SYMBOL arch/arm64/crypto/poly1305-neon 0xf39f5240 poly1305_final_arch +EXPORT_SYMBOL arch/arm64/crypto/sha256-arm64 0xb455924d sha256_block_data_order +EXPORT_SYMBOL arch/arm64/crypto/sha512-arm64 0x6402c8df sha512_block_data_order +EXPORT_SYMBOL arch/arm64/lib/xor-neon 0xd4671463 xor_block_inner_neon +EXPORT_SYMBOL crypto/ecc 0x16e410ff vli_from_be64 +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 0x9263b417 ecc_point_mult_shamir +EXPORT_SYMBOL crypto/ecc 0x92668805 vli_cmp +EXPORT_SYMBOL crypto/ecc 0x9f6efabd vli_sub +EXPORT_SYMBOL crypto/ecc 0xa76b31a2 crypto_ecdh_shared_secret +EXPORT_SYMBOL crypto/ecc 0xd6315f31 ecc_gen_privkey +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 0x25cb57f5 crypto_nhpoly1305_setkey +EXPORT_SYMBOL crypto/nhpoly1305 0x579a8d45 crypto_nhpoly1305_update_helper +EXPORT_SYMBOL crypto/nhpoly1305 0x5b3f12b6 crypto_nhpoly1305_init +EXPORT_SYMBOL crypto/nhpoly1305 0x697b10c4 crypto_nhpoly1305_final +EXPORT_SYMBOL crypto/nhpoly1305 0x820a564c crypto_nhpoly1305_update +EXPORT_SYMBOL crypto/nhpoly1305 0xac21e01d crypto_nhpoly1305_final_helper +EXPORT_SYMBOL crypto/sha3_generic 0x2181a872 crypto_sha3_init +EXPORT_SYMBOL crypto/sha3_generic 0x2ffbf709 crypto_sha3_update +EXPORT_SYMBOL crypto/sha3_generic 0x8030c38c crypto_sha3_final +EXPORT_SYMBOL crypto/sm3_generic 0x15bd5d51 crypto_sm3_finup +EXPORT_SYMBOL crypto/sm3_generic 0x1b3d9bd0 crypto_sm3_update +EXPORT_SYMBOL crypto/xor 0x5b6c00e6 xor_blocks +EXPORT_SYMBOL drivers/acpi/nfit/nfit 0xceec93be to_nfit_uuid +EXPORT_SYMBOL drivers/atm/suni 0x09ec344f suni_init +EXPORT_SYMBOL drivers/bcma/bcma 0x4d46df86 bcma_core_irq +EXPORT_SYMBOL drivers/bcma/bcma 0x7e335edd bcma_core_dma_translation +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/bluetooth/btbcm 0xabfae324 btbcm_patchram +EXPORT_SYMBOL drivers/bluetooth/btrsi 0x50959546 rsi_bt_ops +EXPORT_SYMBOL drivers/bus/mhi/core/mhi 0xe1ccf91b mhi_sync_power_up +EXPORT_SYMBOL drivers/char/ipmi/ipmi_msghandler 0x02603c4f ipmi_add_smi +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 0x230094ac ipmi_smi_watchdog_pretimeout +EXPORT_SYMBOL drivers/char/ipmi/ipmi_msghandler 0x232208b3 ipmi_smi_watcher_register +EXPORT_SYMBOL drivers/char/ipmi/ipmi_msghandler 0x31cab048 ipmi_smi_msg_received +EXPORT_SYMBOL drivers/char/ipmi/ipmi_msghandler 0x40f2b10c ipmi_alloc_smi_msg +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 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 0x7d029ec4 ipmi_get_smi_info +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 0xa29bb87e ipmi_smi_watcher_unregister +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 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/tpm/st33zp24/tpm_st33zp24 0x1aea0793 st33zp24_probe +EXPORT_SYMBOL drivers/char/tpm/st33zp24/tpm_st33zp24 0x1d602592 st33zp24_remove +EXPORT_SYMBOL drivers/char/tpm/st33zp24/tpm_st33zp24 0x30a86fab st33zp24_pm_resume +EXPORT_SYMBOL drivers/char/tpm/st33zp24/tpm_st33zp24 0x92503498 st33zp24_pm_suspend +EXPORT_SYMBOL drivers/char/xillybus/xillybus_core 0x25978d50 xillybus_isr +EXPORT_SYMBOL drivers/char/xillybus/xillybus_core 0x74fe1fbe xillybus_endpoint_discovery +EXPORT_SYMBOL drivers/char/xillybus/xillybus_core 0xd68d084d xillybus_endpoint_remove +EXPORT_SYMBOL drivers/char/xillybus/xillybus_core 0xfe2e30b9 xillybus_init_endpoint +EXPORT_SYMBOL drivers/crypto/atmel-i2c 0x58c21dc2 atmel_i2c_probe +EXPORT_SYMBOL drivers/crypto/atmel-i2c 0x80a11b1d atmel_i2c_init_read_cmd +EXPORT_SYMBOL drivers/crypto/atmel-i2c 0xc71ed50c atmel_i2c_init_genkey_cmd +EXPORT_SYMBOL drivers/crypto/atmel-i2c 0xd1481123 atmel_i2c_enqueue +EXPORT_SYMBOL drivers/crypto/atmel-i2c 0xdb51b9d2 atmel_i2c_send_receive +EXPORT_SYMBOL drivers/crypto/atmel-i2c 0xf283e995 atmel_i2c_init_random_cmd +EXPORT_SYMBOL drivers/crypto/atmel-i2c 0xfaab573f atmel_i2c_init_ecdh_cmd +EXPORT_SYMBOL drivers/crypto/caam/caam 0x12ef2860 caam_drv_ctx_init +EXPORT_SYMBOL drivers/crypto/caam/caam 0x17572340 caam_congested +EXPORT_SYMBOL drivers/crypto/caam/caam 0x37734e06 caam_dpaa2 +EXPORT_SYMBOL drivers/crypto/caam/caam 0x44ae4bc4 qi_cache_free +EXPORT_SYMBOL drivers/crypto/caam/caam 0x539a3a03 caam_drv_ctx_update +EXPORT_SYMBOL drivers/crypto/caam/caam 0x89d515fa caam_qi_enqueue +EXPORT_SYMBOL drivers/crypto/caam/caam 0xc0eaa792 qi_cache_alloc +EXPORT_SYMBOL drivers/crypto/caam/caam 0xea6229a3 caam_drv_ctx_rel +EXPORT_SYMBOL drivers/crypto/caam/caam_jr 0x39cdac76 caam_jr_alloc +EXPORT_SYMBOL drivers/crypto/caam/caam_jr 0x6be5aa5d split_key_done +EXPORT_SYMBOL drivers/crypto/caam/caam_jr 0x7322b674 caam_jr_free +EXPORT_SYMBOL drivers/crypto/caam/caam_jr 0x838b5e45 gen_split_key +EXPORT_SYMBOL drivers/crypto/caam/caam_jr 0xae5741c7 caam_jr_enqueue +EXPORT_SYMBOL drivers/crypto/caam/caamalg_desc 0x2e152bb7 cnstr_shdsc_xts_skcipher_encap +EXPORT_SYMBOL drivers/crypto/caam/caamalg_desc 0x3b54a9ad cnstr_shdsc_aead_decap +EXPORT_SYMBOL drivers/crypto/caam/caamalg_desc 0x76a68e3e cnstr_shdsc_chachapoly +EXPORT_SYMBOL drivers/crypto/caam/caamalg_desc 0x7b0c587f cnstr_shdsc_rfc4543_decap +EXPORT_SYMBOL drivers/crypto/caam/caamalg_desc 0x7b7bcab8 cnstr_shdsc_rfc4543_encap +EXPORT_SYMBOL drivers/crypto/caam/caamalg_desc 0x86bcdec7 cnstr_shdsc_xts_skcipher_decap +EXPORT_SYMBOL drivers/crypto/caam/caamalg_desc 0x88430d4c cnstr_shdsc_aead_null_encap +EXPORT_SYMBOL drivers/crypto/caam/caamalg_desc 0x91ac0969 cnstr_shdsc_aead_encap +EXPORT_SYMBOL drivers/crypto/caam/caamalg_desc 0xa3115081 cnstr_shdsc_skcipher_decap +EXPORT_SYMBOL drivers/crypto/caam/caamalg_desc 0xa340e264 cnstr_shdsc_aead_givencap +EXPORT_SYMBOL drivers/crypto/caam/caamalg_desc 0xa99d7fa6 cnstr_shdsc_aead_null_decap +EXPORT_SYMBOL drivers/crypto/caam/caamalg_desc 0xebcdd349 cnstr_shdsc_skcipher_encap +EXPORT_SYMBOL drivers/crypto/caam/caamalg_desc 0xf92c5da5 cnstr_shdsc_gcm_decap +EXPORT_SYMBOL drivers/crypto/caam/caamalg_desc 0xf95bcf62 cnstr_shdsc_gcm_encap +EXPORT_SYMBOL drivers/crypto/caam/caamalg_desc 0xfd807e48 cnstr_shdsc_rfc4106_decap +EXPORT_SYMBOL drivers/crypto/caam/caamalg_desc 0xfdf7ec8f cnstr_shdsc_rfc4106_encap +EXPORT_SYMBOL drivers/crypto/caam/caamhash_desc 0x30a1e372 cnstr_shdsc_sk_hash +EXPORT_SYMBOL drivers/crypto/caam/caamhash_desc 0xb5571dbf cnstr_shdsc_ahash +EXPORT_SYMBOL drivers/crypto/caam/dpaa2_caam 0x5c84a880 dpaa2_caam_enqueue +EXPORT_SYMBOL drivers/crypto/caam/error 0x50488030 caam_strstatus +EXPORT_SYMBOL drivers/crypto/caam/error 0x53d0fc97 caam_ptr_sz +EXPORT_SYMBOL drivers/crypto/caam/error 0xa51f16c7 caam_little_end +EXPORT_SYMBOL drivers/crypto/caam/error 0xbd67c092 caam_imx +EXPORT_SYMBOL drivers/crypto/caam/error 0xd25da602 caam_dump_sg +EXPORT_SYMBOL drivers/dma/xilinx/xilinx_dma 0x3d0fc3ad xilinx_vdma_channel_set_config +EXPORT_SYMBOL drivers/firewire/firewire-core 0x03b93194 fw_core_remove_address_handler +EXPORT_SYMBOL drivers/firewire/firewire-core 0x04671f45 fw_iso_buffer_init +EXPORT_SYMBOL drivers/firewire/firewire-core 0x0bc6094c fw_core_remove_descriptor +EXPORT_SYMBOL drivers/firewire/firewire-core 0x0e5ea91e fw_fill_response +EXPORT_SYMBOL drivers/firewire/firewire-core 0x131d483d fw_card_initialize +EXPORT_SYMBOL drivers/firewire/firewire-core 0x2885fec5 fw_get_request_speed +EXPORT_SYMBOL drivers/firewire/firewire-core 0x374f889b fw_iso_buffer_destroy +EXPORT_SYMBOL drivers/firewire/firewire-core 0x37c164dd fw_core_remove_card +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 0x4d0901a7 fw_iso_context_destroy +EXPORT_SYMBOL drivers/firewire/firewire-core 0x653f2936 fw_core_handle_bus_reset +EXPORT_SYMBOL drivers/firewire/firewire-core 0x6dc50487 fw_csr_string +EXPORT_SYMBOL drivers/firewire/firewire-core 0x750d565c fw_run_transaction +EXPORT_SYMBOL drivers/firewire/firewire-core 0x7dc0dd5e fw_iso_resource_manage +EXPORT_SYMBOL drivers/firewire/firewire-core 0x86468d44 fw_rcode_string +EXPORT_SYMBOL drivers/firewire/firewire-core 0x8a1c7771 fw_iso_context_queue +EXPORT_SYMBOL drivers/firewire/firewire-core 0xa02c4068 fw_cancel_transaction +EXPORT_SYMBOL drivers/firewire/firewire-core 0xabffc2ad fw_iso_context_create +EXPORT_SYMBOL drivers/firewire/firewire-core 0xaedf84ce fw_high_memory_region +EXPORT_SYMBOL drivers/firewire/firewire-core 0xc4b733c4 fw_bus_type +EXPORT_SYMBOL drivers/firewire/firewire-core 0xc7419aba fw_iso_context_queue_flush +EXPORT_SYMBOL drivers/firewire/firewire-core 0xca9f47e9 fw_core_add_address_handler +EXPORT_SYMBOL drivers/firewire/firewire-core 0xcb917f38 fw_iso_context_flush_completions +EXPORT_SYMBOL drivers/firewire/firewire-core 0xd7e8afc8 fw_iso_context_start +EXPORT_SYMBOL drivers/firewire/firewire-core 0xd8d0ac32 fw_iso_context_stop +EXPORT_SYMBOL drivers/firewire/firewire-core 0xdd65bf5e fw_send_request +EXPORT_SYMBOL drivers/firewire/firewire-core 0xdf686154 fw_send_response +EXPORT_SYMBOL drivers/firewire/firewire-core 0xe3fde125 fw_csr_iterator_next +EXPORT_SYMBOL drivers/firewire/firewire-core 0xe65e7444 fw_schedule_bus_reset +EXPORT_SYMBOL drivers/firewire/firewire-core 0xe80e5087 fw_csr_iterator_init +EXPORT_SYMBOL drivers/firewire/firewire-core 0xe96154da fw_core_handle_response +EXPORT_SYMBOL drivers/firewire/firewire-core 0xf1130be6 fw_card_add +EXPORT_SYMBOL drivers/firewire/firewire-core 0xf5a247e3 fw_device_enable_phys_dma +EXPORT_SYMBOL drivers/firewire/firewire-core 0xfa93f18b fw_core_handle_request +EXPORT_SYMBOL drivers/firmware/broadcom/tee_bnxt_fw 0x57b73b33 tee_bnxt_fw_load +EXPORT_SYMBOL drivers/firmware/broadcom/tee_bnxt_fw 0xdfaff93c tee_bnxt_copy_coredump +EXPORT_SYMBOL drivers/firmware/imx/imx-dsp 0x44487c75 imx_dsp_ring_doorbell +EXPORT_SYMBOL drivers/gpu/drm/drm 0x007024a3 drm_plane_cleanup +EXPORT_SYMBOL drivers/gpu/drm/drm 0x018c1f31 drm_gem_shmem_create_with_handle +EXPORT_SYMBOL drivers/gpu/drm/drm 0x02bae80d drm_connector_set_vrr_capable_property +EXPORT_SYMBOL drivers/gpu/drm/drm 0x034f0c54 drm_property_create_bool +EXPORT_SYMBOL drivers/gpu/drm/drm 0x03c63897 __drm_get_edid_firmware_path +EXPORT_SYMBOL drivers/gpu/drm/drm 0x045fdb39 drm_crtc_cleanup +EXPORT_SYMBOL drivers/gpu/drm/drm 0x057cf08f drm_modeset_lock_single_interruptible +EXPORT_SYMBOL drivers/gpu/drm/drm 0x05956ceb drm_client_modeset_commit +EXPORT_SYMBOL drivers/gpu/drm/drm 0x066a2d3b drm_of_find_possible_crtcs +EXPORT_SYMBOL drivers/gpu/drm/drm 0x070b28aa drm_ht_remove_item +EXPORT_SYMBOL drivers/gpu/drm/drm 0x0712e21d drm_edid_get_monitor_name +EXPORT_SYMBOL drivers/gpu/drm/drm 0x071821f2 drm_object_property_set_value +EXPORT_SYMBOL drivers/gpu/drm/drm 0x07556706 drmm_add_final_kfree +EXPORT_SYMBOL drivers/gpu/drm/drm 0x07711809 drm_mode_create +EXPORT_SYMBOL drivers/gpu/drm/drm 0x07855072 drm_panel_enable +EXPORT_SYMBOL drivers/gpu/drm/drm 0x079f686a drm_framebuffer_plane_width +EXPORT_SYMBOL drivers/gpu/drm/drm 0x07f88521 drm_edid_is_valid +EXPORT_SYMBOL drivers/gpu/drm/drm 0x07fb449a drm_vma_offset_manager_destroy +EXPORT_SYMBOL drivers/gpu/drm/drm 0x0907420b drm_crtc_vblank_count +EXPORT_SYMBOL drivers/gpu/drm/drm 0x097f5f0d drm_gem_prime_export +EXPORT_SYMBOL drivers/gpu/drm/drm 0x0a72f765 drm_clflush_virt_range +EXPORT_SYMBOL drivers/gpu/drm/drm 0x0adc2485 drm_prime_sg_to_page_addr_arrays +EXPORT_SYMBOL drivers/gpu/drm/drm 0x0c18884b drm_vblank_init +EXPORT_SYMBOL drivers/gpu/drm/drm 0x0d2b9552 drm_gem_shmem_print_info +EXPORT_SYMBOL drivers/gpu/drm/drm 0x0d77eb6a drm_i2c_encoder_mode_fixup +EXPORT_SYMBOL drivers/gpu/drm/drm 0x0dee1c9a drm_match_cea_mode +EXPORT_SYMBOL drivers/gpu/drm/drm 0x0ef9b966 drm_mode_config_cleanup +EXPORT_SYMBOL drivers/gpu/drm/drm 0x0fd60df2 drm_get_connector_status_name +EXPORT_SYMBOL drivers/gpu/drm/drm 0x107742a9 drm_get_subpixel_order_name +EXPORT_SYMBOL drivers/gpu/drm/drm 0x109a2ee7 drm_atomic_get_plane_state +EXPORT_SYMBOL drivers/gpu/drm/drm 0x10a9273b drm_mode_object_put +EXPORT_SYMBOL drivers/gpu/drm/drm 0x10afa65e drm_dev_get +EXPORT_SYMBOL drivers/gpu/drm/drm 0x10c62b61 __drm_printfn_debug +EXPORT_SYMBOL drivers/gpu/drm/drm 0x111cfd78 drm_modeset_lock_init +EXPORT_SYMBOL drivers/gpu/drm/drm 0x113b4e64 drm_sysfs_connector_status_event +EXPORT_SYMBOL drivers/gpu/drm/drm 0x11b9567a drm_vma_node_is_allowed +EXPORT_SYMBOL drivers/gpu/drm/drm 0x12068525 drm_connector_list_iter_end +EXPORT_SYMBOL drivers/gpu/drm/drm 0x127a8c6b drm_flip_work_queue +EXPORT_SYMBOL drivers/gpu/drm/drm 0x13e14103 drm_mode_equal_no_clocks_no_stereo +EXPORT_SYMBOL drivers/gpu/drm/drm 0x14c3157f drm_connector_attach_content_protection_property +EXPORT_SYMBOL drivers/gpu/drm/drm 0x154876e4 drm_bridge_chain_mode_fixup +EXPORT_SYMBOL drivers/gpu/drm/drm 0x15d8aa41 __drm_printfn_seq_file +EXPORT_SYMBOL drivers/gpu/drm/drm 0x16a69780 drm_syncobj_add_point +EXPORT_SYMBOL drivers/gpu/drm/drm 0x16ac2597 drm_printf +EXPORT_SYMBOL drivers/gpu/drm/drm 0x16b372b0 drm_atomic_bridge_chain_post_disable +EXPORT_SYMBOL drivers/gpu/drm/drm 0x17f2ce0e drm_crtc_vblank_helper_get_vblank_timestamp +EXPORT_SYMBOL drivers/gpu/drm/drm 0x1821b7bd drm_plane_init +EXPORT_SYMBOL drivers/gpu/drm/drm 0x1842cc2b drm_mode_create_tv_margin_properties +EXPORT_SYMBOL drivers/gpu/drm/drm 0x19d45611 drm_atomic_add_affected_planes +EXPORT_SYMBOL drivers/gpu/drm/drm 0x1a26792d drm_property_replace_global_blob +EXPORT_SYMBOL drivers/gpu/drm/drm 0x1a404898 drm_i2c_encoder_commit +EXPORT_SYMBOL drivers/gpu/drm/drm 0x1a411479 drm_syncobj_free +EXPORT_SYMBOL drivers/gpu/drm/drm 0x1a712850 drm_gem_dmabuf_export +EXPORT_SYMBOL drivers/gpu/drm/drm 0x1a7efcf6 drm_syncobj_get_fd +EXPORT_SYMBOL drivers/gpu/drm/drm 0x1bee51fb drm_gem_mmap_obj +EXPORT_SYMBOL drivers/gpu/drm/drm 0x1c463ab9 drm_legacy_ioremap_wc +EXPORT_SYMBOL drivers/gpu/drm/drm 0x1cf4b2b7 drm_gem_create_mmap_offset +EXPORT_SYMBOL drivers/gpu/drm/drm 0x1d39dab3 drm_vblank_restore +EXPORT_SYMBOL drivers/gpu/drm/drm 0x1e2accbc drm_writeback_connector_init +EXPORT_SYMBOL drivers/gpu/drm/drm 0x1e4e171c drm_plane_force_disable +EXPORT_SYMBOL drivers/gpu/drm/drm 0x1e777d79 drm_dev_dbg +EXPORT_SYMBOL drivers/gpu/drm/drm 0x1f7f278f drm_property_blob_get +EXPORT_SYMBOL drivers/gpu/drm/drm 0x1fdb5338 drm_property_create_enum +EXPORT_SYMBOL drivers/gpu/drm/drm 0x20afce52 drm_gem_object_put_unlocked +EXPORT_SYMBOL drivers/gpu/drm/drm 0x2183c08c drm_mm_scan_add_block +EXPORT_SYMBOL drivers/gpu/drm/drm 0x21d541eb drm_flip_work_queue_task +EXPORT_SYMBOL drivers/gpu/drm/drm 0x21dc19d5 drm_mode_create_from_cmdline_mode +EXPORT_SYMBOL drivers/gpu/drm/drm 0x21ee7119 drm_warn_on_modeset_not_all_locked +EXPORT_SYMBOL drivers/gpu/drm/drm 0x2232262b drm_gem_shmem_get_pages +EXPORT_SYMBOL drivers/gpu/drm/drm 0x22a4a19c drm_gem_put_pages +EXPORT_SYMBOL drivers/gpu/drm/drm 0x23c691d3 drm_gem_shmem_pin +EXPORT_SYMBOL drivers/gpu/drm/drm 0x23ef2bbc drm_atomic_get_bridge_state +EXPORT_SYMBOL drivers/gpu/drm/drm 0x24f55092 drm_crtc_vblank_restore +EXPORT_SYMBOL drivers/gpu/drm/drm 0x2532689b drm_mode_is_420 +EXPORT_SYMBOL drivers/gpu/drm/drm 0x257d2b0a drm_modeset_unlock_all +EXPORT_SYMBOL drivers/gpu/drm/drm 0x25d790f3 drm_plane_from_index +EXPORT_SYMBOL drivers/gpu/drm/drm 0x25daad93 __drm_mm_interval_first +EXPORT_SYMBOL drivers/gpu/drm/drm 0x265ff828 drmm_mode_config_init +EXPORT_SYMBOL drivers/gpu/drm/drm 0x26dfb27d drm_mode_validate_ycbcr420 +EXPORT_SYMBOL drivers/gpu/drm/drm 0x2754dad8 drm_mm_reserve_node +EXPORT_SYMBOL drivers/gpu/drm/drm 0x28d082e0 drm_bridge_remove +EXPORT_SYMBOL drivers/gpu/drm/drm 0x298bd6f3 drm_ioctl_permit +EXPORT_SYMBOL drivers/gpu/drm/drm 0x29f078d1 drm_mode_legacy_fb_format +EXPORT_SYMBOL drivers/gpu/drm/drm 0x2a962499 drm_mm_scan_init_with_range +EXPORT_SYMBOL drivers/gpu/drm/drm 0x2ae0bfea drm_vma_offset_lookup_locked +EXPORT_SYMBOL drivers/gpu/drm/drm 0x2b9fd6dc drm_send_event_locked +EXPORT_SYMBOL drivers/gpu/drm/drm 0x2bdfd205 drm_get_edid +EXPORT_SYMBOL drivers/gpu/drm/drm 0x2c082c68 drm_open +EXPORT_SYMBOL drivers/gpu/drm/drm 0x2c3921f3 drm_connector_set_path_property +EXPORT_SYMBOL drivers/gpu/drm/drm 0x2d4b78e9 drm_connector_register +EXPORT_SYMBOL drivers/gpu/drm/drm 0x2d50570f drm_rect_calc_hscale +EXPORT_SYMBOL drivers/gpu/drm/drm 0x3038d9e9 drm_connector_list_iter_begin +EXPORT_SYMBOL drivers/gpu/drm/drm 0x3054aa03 drm_add_edid_modes +EXPORT_SYMBOL drivers/gpu/drm/drm 0x3107e7d4 __drmm_add_action_or_reset +EXPORT_SYMBOL drivers/gpu/drm/drm 0x318c7461 drm_gem_objects_lookup +EXPORT_SYMBOL drivers/gpu/drm/drm 0x31b8a5e3 __drm_set_edid_firmware_path +EXPORT_SYMBOL drivers/gpu/drm/drm 0x31c55045 drm_property_create_bitmask +EXPORT_SYMBOL drivers/gpu/drm/drm 0x327840a0 drm_atomic_normalize_zpos +EXPORT_SYMBOL drivers/gpu/drm/drm 0x330d9efc drm_encoder_cleanup +EXPORT_SYMBOL drivers/gpu/drm/drm 0x3370e88c drm_bridge_attach +EXPORT_SYMBOL drivers/gpu/drm/drm 0x33817e1f drm_mode_create_tile_group +EXPORT_SYMBOL drivers/gpu/drm/drm 0x34df054f drm_gem_prime_import_dev +EXPORT_SYMBOL drivers/gpu/drm/drm 0x3503d682 drm_mode_vrefresh +EXPORT_SYMBOL drivers/gpu/drm/drm 0x35afae24 __drm_puts_seq_file +EXPORT_SYMBOL drivers/gpu/drm/drm 0x36c36308 drm_property_create +EXPORT_SYMBOL drivers/gpu/drm/drm 0x36d0bf27 drm_dev_unregister +EXPORT_SYMBOL drivers/gpu/drm/drm 0x36d7051a drm_dev_alloc +EXPORT_SYMBOL drivers/gpu/drm/drm 0x36e62ed2 drm_client_framebuffer_create +EXPORT_SYMBOL drivers/gpu/drm/drm 0x37106b9f drm_connector_attach_tv_margin_properties +EXPORT_SYMBOL drivers/gpu/drm/drm 0x371edcbb drm_panel_get_modes +EXPORT_SYMBOL drivers/gpu/drm/drm 0x378d294c drm_mode_is_420_also +EXPORT_SYMBOL drivers/gpu/drm/drm 0x394f81a8 drm_property_blob_put +EXPORT_SYMBOL drivers/gpu/drm/drm 0x39850107 drm_mode_create_content_type_property +EXPORT_SYMBOL drivers/gpu/drm/drm 0x3a994142 drm_atomic_bridge_chain_disable +EXPORT_SYMBOL drivers/gpu/drm/drm 0x3ad48f37 drm_connector_has_possible_encoder +EXPORT_SYMBOL drivers/gpu/drm/drm 0x3aec1bec drm_vma_node_allow +EXPORT_SYMBOL drivers/gpu/drm/drm 0x3b8c8e00 drm_debugfs_create_files +EXPORT_SYMBOL drivers/gpu/drm/drm 0x3ba17eab drm_ht_insert_item +EXPORT_SYMBOL drivers/gpu/drm/drm 0x3c22a4d8 drm_vma_offset_manager_init +EXPORT_SYMBOL drivers/gpu/drm/drm 0x3cf532c9 drm_crtc_vblank_helper_get_vblank_timestamp_internal +EXPORT_SYMBOL drivers/gpu/drm/drm 0x3d146249 drm_gem_object_lookup +EXPORT_SYMBOL drivers/gpu/drm/drm 0x3e036d3e drm_gem_cma_print_info +EXPORT_SYMBOL drivers/gpu/drm/drm 0x3e50b109 drm_gem_fence_array_add +EXPORT_SYMBOL drivers/gpu/drm/drm 0x3e5d8b9a drm_event_cancel_free +EXPORT_SYMBOL drivers/gpu/drm/drm 0x3e6d513f drm_mode_put_tile_group +EXPORT_SYMBOL drivers/gpu/drm/drm 0x402bee9c of_drm_find_bridge +EXPORT_SYMBOL drivers/gpu/drm/drm 0x407d45ab drm_connector_attach_content_type_property +EXPORT_SYMBOL drivers/gpu/drm/drm 0x41f58849 drm_hdmi_vendor_infoframe_from_display_mode +EXPORT_SYMBOL drivers/gpu/drm/drm 0x42ad61f2 drm_property_destroy +EXPORT_SYMBOL drivers/gpu/drm/drm 0x43635ecd drm_gtf_mode_complex +EXPORT_SYMBOL drivers/gpu/drm/drm 0x43ceafb3 drm_atomic_bridge_chain_pre_enable +EXPORT_SYMBOL drivers/gpu/drm/drm 0x4530710f drm_gem_map_detach +EXPORT_SYMBOL drivers/gpu/drm/drm 0x454563b3 drm_gem_object_put +EXPORT_SYMBOL drivers/gpu/drm/drm 0x46ef11c2 drm_legacy_ioremapfree +EXPORT_SYMBOL drivers/gpu/drm/drm 0x474156b5 drm_mode_equal +EXPORT_SYMBOL drivers/gpu/drm/drm 0x47f985aa drm_edid_duplicate +EXPORT_SYMBOL drivers/gpu/drm/drm 0x489c889a drm_release_noglobal +EXPORT_SYMBOL drivers/gpu/drm/drm 0x48b62bee drm_wait_one_vblank +EXPORT_SYMBOL drivers/gpu/drm/drm 0x48ba39ab drm_object_property_get_value +EXPORT_SYMBOL drivers/gpu/drm/drm 0x497f1fa4 drm_prime_pages_to_sg +EXPORT_SYMBOL drivers/gpu/drm/drm 0x4b48294c drm_atomic_get_old_connector_for_encoder +EXPORT_SYMBOL drivers/gpu/drm/drm 0x4b7ebf95 drm_mm_remove_node +EXPORT_SYMBOL drivers/gpu/drm/drm 0x4ba7cb9e drm_atomic_state_alloc +EXPORT_SYMBOL drivers/gpu/drm/drm 0x4c302c56 drm_gem_prime_mmap +EXPORT_SYMBOL drivers/gpu/drm/drm 0x4c500e16 drm_display_info_set_bus_formats +EXPORT_SYMBOL drivers/gpu/drm/drm 0x4c60ce10 drm_atomic_get_new_connector_for_encoder +EXPORT_SYMBOL drivers/gpu/drm/drm 0x4d23c46a drm_atomic_get_connector_state +EXPORT_SYMBOL drivers/gpu/drm/drm 0x4e095f11 drm_get_format_name +EXPORT_SYMBOL drivers/gpu/drm/drm 0x4ea850d2 drm_poll +EXPORT_SYMBOL drivers/gpu/drm/drm 0x4f18a150 __drm_debug +EXPORT_SYMBOL drivers/gpu/drm/drm 0x4f973390 drm_gem_dma_resv_wait +EXPORT_SYMBOL drivers/gpu/drm/drm 0x4fab9aff drm_i2c_encoder_prepare +EXPORT_SYMBOL drivers/gpu/drm/drm 0x4fbf1838 drm_plane_create_zpos_immutable_property +EXPORT_SYMBOL drivers/gpu/drm/drm 0x50070c9d drm_connector_attach_edid_property +EXPORT_SYMBOL drivers/gpu/drm/drm 0x50674de7 drm_timeout_abs_to_jiffies +EXPORT_SYMBOL drivers/gpu/drm/drm 0x51c5db74 drm_dev_register +EXPORT_SYMBOL drivers/gpu/drm/drm 0x523a8802 drm_connector_set_link_status_property +EXPORT_SYMBOL drivers/gpu/drm/drm 0x52ed9334 drm_writeback_prepare_job +EXPORT_SYMBOL drivers/gpu/drm/drm 0x5349bdfd drm_syncobj_find_fence +EXPORT_SYMBOL drivers/gpu/drm/drm 0x5432f8cd drm_atomic_set_fence_for_plane +EXPORT_SYMBOL drivers/gpu/drm/drm 0x5542443b drm_flip_work_init +EXPORT_SYMBOL drivers/gpu/drm/drm 0x55f58eee drm_framebuffer_remove +EXPORT_SYMBOL drivers/gpu/drm/drm 0x5657c3ac drm_connector_set_panel_orientation_with_quirk +EXPORT_SYMBOL drivers/gpu/drm/drm 0x56c6e828 drm_mode_get_hv_timing +EXPORT_SYMBOL drivers/gpu/drm/drm 0x5718386c drm_gem_object_init +EXPORT_SYMBOL drivers/gpu/drm/drm 0x5739d6d9 drm_bridge_chain_enable +EXPORT_SYMBOL drivers/gpu/drm/drm 0x57698a50 drm_mm_takedown +EXPORT_SYMBOL drivers/gpu/drm/drm 0x57b6efe3 drm_ioctl_flags +EXPORT_SYMBOL drivers/gpu/drm/drm 0x5808d4ec drm_gem_shmem_purge +EXPORT_SYMBOL drivers/gpu/drm/drm 0x58c57873 drm_mode_get_tile_group +EXPORT_SYMBOL drivers/gpu/drm/drm 0x59056243 drm_mm_replace_node +EXPORT_SYMBOL drivers/gpu/drm/drm 0x5929c03e drm_gem_shmem_unpin +EXPORT_SYMBOL drivers/gpu/drm/drm 0x598d8b21 __drm_atomic_helper_disable_plane +EXPORT_SYMBOL drivers/gpu/drm/drm 0x5af3c48c drm_gem_cma_prime_import_sg_table_vmap +EXPORT_SYMBOL drivers/gpu/drm/drm 0x5b8084f8 drm_object_attach_property +EXPORT_SYMBOL drivers/gpu/drm/drm 0x5b971565 drm_atomic_get_new_bridge_state +EXPORT_SYMBOL drivers/gpu/drm/drm 0x5b9e03f6 drm_debugfs_remove_files +EXPORT_SYMBOL drivers/gpu/drm/drm 0x5c118f0a drm_connector_unregister +EXPORT_SYMBOL drivers/gpu/drm/drm 0x5c1a9dc4 drm_mode_destroy +EXPORT_SYMBOL drivers/gpu/drm/drm 0x5c737b02 drm_noop +EXPORT_SYMBOL drivers/gpu/drm/drm 0x5cbd37e8 __devm_drm_dev_alloc +EXPORT_SYMBOL drivers/gpu/drm/drm 0x5cf4629f drm_get_edid_switcheroo +EXPORT_SYMBOL drivers/gpu/drm/drm 0x5d3ef1c5 drm_framebuffer_lookup +EXPORT_SYMBOL drivers/gpu/drm/drm 0x5ded9823 drm_modeset_lock_all +EXPORT_SYMBOL drivers/gpu/drm/drm 0x5e1b8100 drm_connector_attach_vrr_capable_property +EXPORT_SYMBOL drivers/gpu/drm/drm 0x5f096225 drm_vma_offset_remove +EXPORT_SYMBOL drivers/gpu/drm/drm 0x5f3839a1 drm_modeset_lock +EXPORT_SYMBOL drivers/gpu/drm/drm 0x5f5b57be drm_syncobj_create +EXPORT_SYMBOL drivers/gpu/drm/drm 0x5f7985a5 drm_mm_scan_remove_block +EXPORT_SYMBOL drivers/gpu/drm/drm 0x60ab819d drm_atomic_set_mode_for_crtc +EXPORT_SYMBOL drivers/gpu/drm/drm 0x637cac19 drm_mode_set_crtcinfo +EXPORT_SYMBOL drivers/gpu/drm/drm 0x63a2b7e0 drm_prime_gem_destroy +EXPORT_SYMBOL drivers/gpu/drm/drm 0x6410e53e drm_gem_shmem_vunmap +EXPORT_SYMBOL drivers/gpu/drm/drm 0x6465e925 drm_connector_attach_encoder +EXPORT_SYMBOL drivers/gpu/drm/drm 0x64f3bee0 drm_gem_unmap_dma_buf +EXPORT_SYMBOL drivers/gpu/drm/drm 0x650d97ef drm_writeback_get_out_fence +EXPORT_SYMBOL drivers/gpu/drm/drm 0x66551bc7 drm_detect_monitor_audio +EXPORT_SYMBOL drivers/gpu/drm/drm 0x6688b4c8 drm_mode_create_dp_colorspace_property +EXPORT_SYMBOL drivers/gpu/drm/drm 0x66c74400 drm_i2c_encoder_detect +EXPORT_SYMBOL drivers/gpu/drm/drm 0x66fd8324 drm_gem_unlock_reservations +EXPORT_SYMBOL drivers/gpu/drm/drm 0x67491078 drm_panel_add +EXPORT_SYMBOL drivers/gpu/drm/drm 0x6782abea drm_bridge_chain_mode_valid +EXPORT_SYMBOL drivers/gpu/drm/drm 0x68d114ab drm_client_buffer_vunmap +EXPORT_SYMBOL drivers/gpu/drm/drm 0x695e1cf5 drm_client_rotation +EXPORT_SYMBOL drivers/gpu/drm/drm 0x69cd5bcf drm_mode_duplicate +EXPORT_SYMBOL drivers/gpu/drm/drm 0x6a5c5b7e drm_atomic_set_mode_prop_for_crtc +EXPORT_SYMBOL drivers/gpu/drm/drm 0x6a6c24e1 drm_atomic_bridge_chain_enable +EXPORT_SYMBOL drivers/gpu/drm/drm 0x6aa068fe drm_writeback_cleanup_job +EXPORT_SYMBOL drivers/gpu/drm/drm 0x6ab13451 drm_framebuffer_cleanup +EXPORT_SYMBOL drivers/gpu/drm/drm 0x6b1a8886 drm_bridge_chain_pre_enable +EXPORT_SYMBOL drivers/gpu/drm/drm 0x6d19f102 drm_encoder_init +EXPORT_SYMBOL drivers/gpu/drm/drm 0x6d83b3e8 drm_gem_dmabuf_vmap +EXPORT_SYMBOL drivers/gpu/drm/drm 0x6db8f63c drm_gem_handle_delete +EXPORT_SYMBOL drivers/gpu/drm/drm 0x6de02528 drm_crtc_init_with_planes +EXPORT_SYMBOL drivers/gpu/drm/drm 0x6e30ba8e drm_rect_rotate_inv +EXPORT_SYMBOL drivers/gpu/drm/drm 0x70100ef5 drm_connector_set_panel_orientation +EXPORT_SYMBOL drivers/gpu/drm/drm 0x707591dd drm_modeset_lock_all_ctx +EXPORT_SYMBOL drivers/gpu/drm/drm 0x71dd1aa9 drm_is_current_master +EXPORT_SYMBOL drivers/gpu/drm/drm 0x71ff29b8 drm_connector_attach_scaling_mode_property +EXPORT_SYMBOL drivers/gpu/drm/drm 0x726b6a39 drm_property_create_blob +EXPORT_SYMBOL drivers/gpu/drm/drm 0x7303944d drm_client_modeset_dpms +EXPORT_SYMBOL drivers/gpu/drm/drm 0x738a61b7 drm_crtc_accurate_vblank_count +EXPORT_SYMBOL drivers/gpu/drm/drm 0x745b2e9a drm_atomic_set_fb_for_plane +EXPORT_SYMBOL drivers/gpu/drm/drm 0x74b14b4c drm_vma_offset_add +EXPORT_SYMBOL drivers/gpu/drm/drm 0x74eb438f drm_atomic_get_crtc_state +EXPORT_SYMBOL drivers/gpu/drm/drm 0x79f89521 drm_writeback_queue_job +EXPORT_SYMBOL drivers/gpu/drm/drm 0x7a61a26d drm_atomic_private_obj_init +EXPORT_SYMBOL drivers/gpu/drm/drm 0x7b25c99d drm_mode_object_get +EXPORT_SYMBOL drivers/gpu/drm/drm 0x7b5f2272 drm_client_register +EXPORT_SYMBOL drivers/gpu/drm/drm 0x7b88da6a drm_panel_attach +EXPORT_SYMBOL drivers/gpu/drm/drm 0x7b892dc6 drm_atomic_commit +EXPORT_SYMBOL drivers/gpu/drm/drm 0x7c5cae4a drm_cvt_mode +EXPORT_SYMBOL drivers/gpu/drm/drm 0x7d682972 drm_release +EXPORT_SYMBOL drivers/gpu/drm/drm 0x7dbc7e5c drm_crtc_vblank_waitqueue +EXPORT_SYMBOL drivers/gpu/drm/drm 0x7e1611b3 drm_connector_init +EXPORT_SYMBOL drivers/gpu/drm/drm 0x7e8f85bc drm_hdmi_avi_infoframe_from_display_mode +EXPORT_SYMBOL drivers/gpu/drm/drm 0x7edc546f drm_mm_print +EXPORT_SYMBOL drivers/gpu/drm/drm 0x7f336f52 drm_plane_create_alpha_property +EXPORT_SYMBOL drivers/gpu/drm/drm 0x7f3b4328 drm_mode_plane_set_obj_prop +EXPORT_SYMBOL drivers/gpu/drm/drm 0x7f4753b1 drm_i2c_encoder_mode_set +EXPORT_SYMBOL drivers/gpu/drm/drm 0x804b9035 drm_property_replace_blob +EXPORT_SYMBOL drivers/gpu/drm/drm 0x8108949d drm_mode_equal_no_clocks +EXPORT_SYMBOL drivers/gpu/drm/drm 0x811b7518 drm_atomic_set_crtc_for_connector +EXPORT_SYMBOL drivers/gpu/drm/drm 0x811f8118 drm_panel_unprepare +EXPORT_SYMBOL drivers/gpu/drm/drm 0x81307314 drm_mode_create_dvi_i_properties +EXPORT_SYMBOL drivers/gpu/drm/drm 0x81317ecd drm_atomic_get_old_bridge_state +EXPORT_SYMBOL drivers/gpu/drm/drm 0x81908e3b drm_property_create_range +EXPORT_SYMBOL drivers/gpu/drm/drm 0x81992424 drm_edid_header_is_valid +EXPORT_SYMBOL drivers/gpu/drm/drm 0x819973d3 drm_dev_put +EXPORT_SYMBOL drivers/gpu/drm/drm 0x81b502f2 drm_crtc_vblank_on +EXPORT_SYMBOL drivers/gpu/drm/drm 0x842dd90c drm_flip_work_commit +EXPORT_SYMBOL drivers/gpu/drm/drm 0x853ddb6d devm_drm_dev_init +EXPORT_SYMBOL drivers/gpu/drm/drm 0x8563a554 drm_ht_remove +EXPORT_SYMBOL drivers/gpu/drm/drm 0x85990230 drm_panel_remove +EXPORT_SYMBOL drivers/gpu/drm/drm 0x871ab41a drm_rect_intersect +EXPORT_SYMBOL drivers/gpu/drm/drm 0x8851a00f drm_event_reserve_init_locked +EXPORT_SYMBOL drivers/gpu/drm/drm 0x8994cf82 drm_atomic_state_default_clear +EXPORT_SYMBOL drivers/gpu/drm/drm 0x8a0f01c2 drm_client_dev_hotplug +EXPORT_SYMBOL drivers/gpu/drm/drm 0x8a62319c drm_property_create_signed_range +EXPORT_SYMBOL drivers/gpu/drm/drm 0x8b55b86d drm_syncobj_find +EXPORT_SYMBOL drivers/gpu/drm/drm 0x8b9c8fd1 drm_atomic_state_clear +EXPORT_SYMBOL drivers/gpu/drm/drm 0x8c4fd37c drm_mode_set_name +EXPORT_SYMBOL drivers/gpu/drm/drm 0x8c809145 drm_mode_crtc_set_gamma_size +EXPORT_SYMBOL drivers/gpu/drm/drm 0x8e3b60c0 drm_legacy_ioremap +EXPORT_SYMBOL drivers/gpu/drm/drm 0x8e7415b0 drm_mode_create_suggested_offset_properties +EXPORT_SYMBOL drivers/gpu/drm/drm 0x8e840401 drm_panel_prepare +EXPORT_SYMBOL drivers/gpu/drm/drm 0x8f3f81e3 drm_crtc_vblank_count_and_time +EXPORT_SYMBOL drivers/gpu/drm/drm 0x8f562723 drm_gem_dumb_destroy +EXPORT_SYMBOL drivers/gpu/drm/drm 0x8f6fca90 drm_clflush_pages +EXPORT_SYMBOL drivers/gpu/drm/drm 0x8ff5aba0 drm_gem_free_mmap_offset +EXPORT_SYMBOL drivers/gpu/drm/drm 0x9020feac drm_connector_init_with_ddc +EXPORT_SYMBOL drivers/gpu/drm/drm 0x9076a0f3 drm_bridge_add +EXPORT_SYMBOL drivers/gpu/drm/drm 0x90d5e38f drm_hdmi_avi_infoframe_quant_range +EXPORT_SYMBOL drivers/gpu/drm/drm 0x91996464 drm_crtc_enable_color_mgmt +EXPORT_SYMBOL drivers/gpu/drm/drm 0x91fec1cc drm_rect_calc_vscale +EXPORT_SYMBOL drivers/gpu/drm/drm 0x9213f5c3 drm_edid_to_speaker_allocation +EXPORT_SYMBOL drivers/gpu/drm/drm 0x925f5d05 drm_client_framebuffer_delete +EXPORT_SYMBOL drivers/gpu/drm/drm 0x92714851 drm_cma_gem_create_object_default_funcs +EXPORT_SYMBOL drivers/gpu/drm/drm 0x9275482f drm_gem_prime_import +EXPORT_SYMBOL drivers/gpu/drm/drm 0x9296a9be drm_writeback_signal_completion +EXPORT_SYMBOL drivers/gpu/drm/drm 0x92aef470 drm_crtc_vblank_get +EXPORT_SYMBOL drivers/gpu/drm/drm 0x92b8f154 drm_irq_uninstall +EXPORT_SYMBOL drivers/gpu/drm/drm 0x93700433 drm_hdmi_avi_infoframe_content_type +EXPORT_SYMBOL drivers/gpu/drm/drm 0x94c041f7 __drmm_add_action +EXPORT_SYMBOL drivers/gpu/drm/drm 0x95dbc76d drm_ht_create +EXPORT_SYMBOL drivers/gpu/drm/drm 0x982698bd drm_mode_match +EXPORT_SYMBOL drivers/gpu/drm/drm 0x9828a837 drm_handle_vblank +EXPORT_SYMBOL drivers/gpu/drm/drm 0x98a3d9ba drm_framebuffer_init +EXPORT_SYMBOL drivers/gpu/drm/drm 0x99f71cc9 drm_connector_list_update +EXPORT_SYMBOL drivers/gpu/drm/drm 0x99fd20aa drm_rect_clip_scaled +EXPORT_SYMBOL drivers/gpu/drm/drm 0x9a3253c5 drm_connector_update_edid_property +EXPORT_SYMBOL drivers/gpu/drm/drm 0x9b6d6533 drm_mode_prune_invalid +EXPORT_SYMBOL drivers/gpu/drm/drm 0x9b8a53f5 drm_ht_just_insert_please +EXPORT_SYMBOL drivers/gpu/drm/drm 0x9dc90a92 of_drm_find_panel +EXPORT_SYMBOL drivers/gpu/drm/drm 0xa0713087 drm_ht_find_item +EXPORT_SYMBOL drivers/gpu/drm/drm 0xa0836acd drm_of_component_probe +EXPORT_SYMBOL drivers/gpu/drm/drm 0xa2034d51 drm_atomic_bridge_chain_check +EXPORT_SYMBOL drivers/gpu/drm/drm 0xa21d8164 drm_connector_cleanup +EXPORT_SYMBOL drivers/gpu/drm/drm 0xa2ebc807 drm_mode_find_dmt +EXPORT_SYMBOL drivers/gpu/drm/drm 0xa302964b drm_set_preferred_mode +EXPORT_SYMBOL drivers/gpu/drm/drm 0xa321bc82 drm_mode_set_config_internal +EXPORT_SYMBOL drivers/gpu/drm/drm 0xa3bc2b5d drm_crtc_vblank_off +EXPORT_SYMBOL drivers/gpu/drm/drm 0xa4a16d0d drm_hdcp_update_content_protection +EXPORT_SYMBOL drivers/gpu/drm/drm 0xa545051d drm_master_put +EXPORT_SYMBOL drivers/gpu/drm/drm 0xa5b90971 drm_property_lookup_blob +EXPORT_SYMBOL drivers/gpu/drm/drm 0xa66dc0ea drm_add_modes_noedid +EXPORT_SYMBOL drivers/gpu/drm/drm 0xa71a4412 drm_i2c_encoder_restore +EXPORT_SYMBOL drivers/gpu/drm/drm 0xa8072405 drm_syncobj_get_handle +EXPORT_SYMBOL drivers/gpu/drm/drm 0xa8ad5d01 drm_detect_hdmi_monitor +EXPORT_SYMBOL drivers/gpu/drm/drm 0xa9a1e9a5 drm_master_get +EXPORT_SYMBOL drivers/gpu/drm/drm 0xa9b27b4d drm_i2c_encoder_destroy +EXPORT_SYMBOL drivers/gpu/drm/drm 0xaa9f8e98 drm_gem_get_pages +EXPORT_SYMBOL drivers/gpu/drm/drm 0xaac39ff3 __drm_printfn_info +EXPORT_SYMBOL drivers/gpu/drm/drm 0xad4e902b drm_color_ctm_s31_32_to_qm_n +EXPORT_SYMBOL drivers/gpu/drm/drm 0xae277372 __drm_crtc_commit_free +EXPORT_SYMBOL drivers/gpu/drm/drm 0xafa00d69 drm_modeset_backoff +EXPORT_SYMBOL drivers/gpu/drm/drm 0xb053adda drm_rect_rotate +EXPORT_SYMBOL drivers/gpu/drm/drm 0xb0b05ff5 drm_clflush_sg +EXPORT_SYMBOL drivers/gpu/drm/drm 0xb11ac7a7 __drm_err +EXPORT_SYMBOL drivers/gpu/drm/drm 0xb4032484 drm_mm_insert_node_in_range +EXPORT_SYMBOL drivers/gpu/drm/drm 0xb4db5e8e drm_gem_shmem_madvise +EXPORT_SYMBOL drivers/gpu/drm/drm 0xb4f5517c drm_send_event +EXPORT_SYMBOL drivers/gpu/drm/drm 0xb6127243 drm_need_swiotlb +EXPORT_SYMBOL drivers/gpu/drm/drm 0xb61f9176 drm_gtf_mode +EXPORT_SYMBOL drivers/gpu/drm/drm 0xb624ad6e drm_modeset_acquire_init +EXPORT_SYMBOL drivers/gpu/drm/drm 0xb7c83b8c drm_gem_dmabuf_mmap +EXPORT_SYMBOL drivers/gpu/drm/drm 0xb852059b drm_plane_create_blend_mode_property +EXPORT_SYMBOL drivers/gpu/drm/drm 0xb853833f drm_mode_validate_size +EXPORT_SYMBOL drivers/gpu/drm/drm 0xb8621bd4 drm_irq_install +EXPORT_SYMBOL drivers/gpu/drm/drm 0xb8aec340 drm_dev_init +EXPORT_SYMBOL drivers/gpu/drm/drm 0xb8bdb3f5 drm_puts +EXPORT_SYMBOL drivers/gpu/drm/drm 0xb8c22b2a drm_gem_create_mmap_offset_size +EXPORT_SYMBOL drivers/gpu/drm/drm 0xb8cd1e3e drm_hdmi_avi_infoframe_bars +EXPORT_SYMBOL drivers/gpu/drm/drm 0xb93e3d57 drm_event_reserve_init +EXPORT_SYMBOL drivers/gpu/drm/drm 0xb9a6b4d1 drm_mode_object_find +EXPORT_SYMBOL drivers/gpu/drm/drm 0xb9cad492 __drm_atomic_state_free +EXPORT_SYMBOL drivers/gpu/drm/drm 0xb9f56e22 drm_format_info_block_width +EXPORT_SYMBOL drivers/gpu/drm/drm 0xbacfd5c6 drm_atomic_check_only +EXPORT_SYMBOL drivers/gpu/drm/drm 0xbaed00c4 drm_dev_set_unique +EXPORT_SYMBOL drivers/gpu/drm/drm 0xbb0135bc drm_i2c_encoder_init +EXPORT_SYMBOL drivers/gpu/drm/drm 0xbb33ee7b drm_default_rgb_quant_range +EXPORT_SYMBOL drivers/gpu/drm/drm 0xbb400132 drm_crtc_from_index +EXPORT_SYMBOL drivers/gpu/drm/drm 0xbb8a0e4d drm_sysfs_hotplug_event +EXPORT_SYMBOL drivers/gpu/drm/drm 0xbbe89ba7 drm_connector_list_iter_next +EXPORT_SYMBOL drivers/gpu/drm/drm 0xbcada5b8 drm_client_modeset_probe +EXPORT_SYMBOL drivers/gpu/drm/drm 0xbcce1929 drm_gem_object_release +EXPORT_SYMBOL drivers/gpu/drm/drm 0xbd31ee1b drm_gem_vm_close +EXPORT_SYMBOL drivers/gpu/drm/drm 0xbe096bfb drm_gem_handle_create +EXPORT_SYMBOL drivers/gpu/drm/drm 0xbe0f2408 drm_driver_legacy_fb_format +EXPORT_SYMBOL drivers/gpu/drm/drm 0xc1575753 drm_gem_private_object_init +EXPORT_SYMBOL drivers/gpu/drm/drm 0xc19ffffc drm_atomic_get_old_private_obj_state +EXPORT_SYMBOL drivers/gpu/drm/drm 0xc1a030ec drm_invalid_op +EXPORT_SYMBOL drivers/gpu/drm/drm 0xc1ccafda drm_crtc_send_vblank_event +EXPORT_SYMBOL drivers/gpu/drm/drm 0xc2c36138 drm_mode_is_420_only +EXPORT_SYMBOL drivers/gpu/drm/drm 0xc324efb9 drm_edid_to_sad +EXPORT_SYMBOL drivers/gpu/drm/drm 0xc332249e drm_property_add_enum +EXPORT_SYMBOL drivers/gpu/drm/drm 0xc3a8df10 drm_gem_prime_handle_to_fd +EXPORT_SYMBOL drivers/gpu/drm/drm 0xc3bc8582 drm_panel_detach +EXPORT_SYMBOL drivers/gpu/drm/drm 0xc4e7007b drmm_kfree +EXPORT_SYMBOL drivers/gpu/drm/drm 0xc57def97 drm_gem_dmabuf_release +EXPORT_SYMBOL drivers/gpu/drm/drm 0xc5992401 __drm_puts_coredump +EXPORT_SYMBOL drivers/gpu/drm/drm 0xc5cb975f drm_mode_parse_command_line_for_connector +EXPORT_SYMBOL drivers/gpu/drm/drm 0xc6323239 drm_flip_work_cleanup +EXPORT_SYMBOL drivers/gpu/drm/drm 0xc64960dd drm_gem_mmap +EXPORT_SYMBOL drivers/gpu/drm/drm 0xc6b718a0 drm_atomic_get_new_private_obj_state +EXPORT_SYMBOL drivers/gpu/drm/drm 0xc6e433cc drm_universal_plane_init +EXPORT_SYMBOL drivers/gpu/drm/drm 0xc729aadf drm_compat_ioctl +EXPORT_SYMBOL drivers/gpu/drm/drm 0xc7f0f027 drm_format_info_min_pitch +EXPORT_SYMBOL drivers/gpu/drm/drm 0xc8683502 drmm_kmalloc +EXPORT_SYMBOL drivers/gpu/drm/drm 0xc89b11b4 drm_i2c_encoder_dpms +EXPORT_SYMBOL drivers/gpu/drm/drm 0xc8f6c2df drm_atomic_state_init +EXPORT_SYMBOL drivers/gpu/drm/drm 0xc90d4656 drm_gem_lock_reservations +EXPORT_SYMBOL drivers/gpu/drm/drm 0xcb2340b8 drm_rect_debug_print +EXPORT_SYMBOL drivers/gpu/drm/drm 0xcb4a2b03 drm_atomic_get_private_obj_state +EXPORT_SYMBOL drivers/gpu/drm/drm 0xcd95a008 drm_mode_validate_driver +EXPORT_SYMBOL drivers/gpu/drm/drm 0xcdd86e2f drm_add_override_edid_modes +EXPORT_SYMBOL drivers/gpu/drm/drm 0xce3d8ebc drm_connector_set_tile_property +EXPORT_SYMBOL drivers/gpu/drm/drm 0xcf11a549 drm_flip_work_allocate_task +EXPORT_SYMBOL drivers/gpu/drm/drm 0xcfa9c587 drm_atomic_private_obj_fini +EXPORT_SYMBOL drivers/gpu/drm/drm 0xd0f2ff58 drm_dev_enter +EXPORT_SYMBOL drivers/gpu/drm/drm 0xd13f9985 drm_edid_block_valid +EXPORT_SYMBOL drivers/gpu/drm/drm 0xd15186b7 drm_bridge_chain_post_disable +EXPORT_SYMBOL drivers/gpu/drm/drm 0xd31d9278 drm_calc_timestamping_constants +EXPORT_SYMBOL drivers/gpu/drm/drm 0xd3c867d5 drm_modeset_drop_locks +EXPORT_SYMBOL drivers/gpu/drm/drm 0xd47d8f8e drm_syncobj_replace_fence +EXPORT_SYMBOL drivers/gpu/drm/drm 0xd530b839 drm_gem_dmabuf_vunmap +EXPORT_SYMBOL drivers/gpu/drm/drm 0xd605220e drm_gem_prime_fd_to_handle +EXPORT_SYMBOL drivers/gpu/drm/drm 0xd61fddf0 drm_any_plane_has_format +EXPORT_SYMBOL drivers/gpu/drm/drm 0xd62d348a drm_master_internal_release +EXPORT_SYMBOL drivers/gpu/drm/drm 0xd6624ff2 drm_i2c_encoder_save +EXPORT_SYMBOL drivers/gpu/drm/drm 0xd680a377 drm_gem_object_free +EXPORT_SYMBOL drivers/gpu/drm/drm 0xd6dd8db8 drm_client_init +EXPORT_SYMBOL drivers/gpu/drm/drm 0xd73c870c drm_mode_config_reset +EXPORT_SYMBOL drivers/gpu/drm/drm 0xd76ae552 drm_hdmi_infoframe_set_hdr_metadata +EXPORT_SYMBOL drivers/gpu/drm/drm 0xd780ea98 drm_atomic_add_encoder_bridges +EXPORT_SYMBOL drivers/gpu/drm/drm 0xd8466b89 drm_atomic_state_default_release +EXPORT_SYMBOL drivers/gpu/drm/drm 0xd87e2a10 drm_crtc_vblank_put +EXPORT_SYMBOL drivers/gpu/drm/drm 0xd88f555f drm_ioctl_kernel +EXPORT_SYMBOL drivers/gpu/drm/drm 0xd94e2a90 drm_put_dev +EXPORT_SYMBOL drivers/gpu/drm/drm 0xd96b425a __drm_printfn_coredump +EXPORT_SYMBOL drivers/gpu/drm/drm 0xdaa7a28f drm_client_modeset_commit_locked +EXPORT_SYMBOL drivers/gpu/drm/drm 0xdb3ebb73 drm_crtc_wait_one_vblank +EXPORT_SYMBOL drivers/gpu/drm/drm 0xdb527e47 drm_panel_init +EXPORT_SYMBOL drivers/gpu/drm/drm 0xdc12dafb drm_connector_attach_max_bpc_property +EXPORT_SYMBOL drivers/gpu/drm/drm 0xdcfa9c23 __drm_atomic_helper_set_config +EXPORT_SYMBOL drivers/gpu/drm/drm 0xde6baf42 drm_gem_fence_array_add_implicit +EXPORT_SYMBOL drivers/gpu/drm/drm 0xdf1d5231 drm_modeset_acquire_fini +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 0xe066e616 drm_crtc_check_viewport +EXPORT_SYMBOL drivers/gpu/drm/drm 0xe0db46e6 drm_probe_ddc +EXPORT_SYMBOL drivers/gpu/drm/drm 0xe116d3a4 drm_vma_node_revoke +EXPORT_SYMBOL drivers/gpu/drm/drm 0xe152f121 drm_framebuffer_unregister_private +EXPORT_SYMBOL drivers/gpu/drm/drm 0xe264c0d6 drm_dev_unplug +EXPORT_SYMBOL drivers/gpu/drm/drm 0xe3ad11bf drm_panel_of_backlight +EXPORT_SYMBOL drivers/gpu/drm/drm 0xe42e3e03 drm_gem_shmem_put_pages +EXPORT_SYMBOL drivers/gpu/drm/drm 0xe49aaecb drm_gem_vm_open +EXPORT_SYMBOL drivers/gpu/drm/drm 0xe4a029a6 drm_crtc_vblank_reset +EXPORT_SYMBOL drivers/gpu/drm/drm 0xe50ff184 drm_client_buffer_vmap +EXPORT_SYMBOL drivers/gpu/drm/drm 0xe57aab20 drm_dev_printk +EXPORT_SYMBOL drivers/gpu/drm/drm 0xe587843a drm_property_create_object +EXPORT_SYMBOL drivers/gpu/drm/drm 0xe77c1f3c drm_atomic_nonblocking_commit +EXPORT_SYMBOL drivers/gpu/drm/drm 0xe817eb01 __drm_printfn_err +EXPORT_SYMBOL drivers/gpu/drm/drm 0xe8a034df drm_dev_exit +EXPORT_SYMBOL drivers/gpu/drm/drm 0xe8eeff13 drm_gem_shmem_vmap +EXPORT_SYMBOL drivers/gpu/drm/drm 0xe9856d3e drm_crtc_arm_vblank_event +EXPORT_SYMBOL drivers/gpu/drm/drm 0xeb0d58b3 drm_bridge_chain_disable +EXPORT_SYMBOL drivers/gpu/drm/drm 0xebeab697 drm_print_regset32 +EXPORT_SYMBOL drivers/gpu/drm/drm 0xec002493 drm_gem_shmem_purge_locked +EXPORT_SYMBOL drivers/gpu/drm/drm 0xec12af74 __drm_dbg +EXPORT_SYMBOL drivers/gpu/drm/drm 0xec611d3d drm_plane_create_rotation_property +EXPORT_SYMBOL drivers/gpu/drm/drm 0xed0c804b drm_gem_map_dma_buf +EXPORT_SYMBOL drivers/gpu/drm/drm 0xedef9f11 drm_bridge_chain_mode_set +EXPORT_SYMBOL drivers/gpu/drm/drm 0xee487543 drm_atomic_set_crtc_for_plane +EXPORT_SYMBOL drivers/gpu/drm/drm 0xee99c667 drm_dev_has_vblank +EXPORT_SYMBOL drivers/gpu/drm/drm 0xeef14d8c drm_format_info_block_height +EXPORT_SYMBOL drivers/gpu/drm/drm 0xef5a4099 drm_modeset_unlock +EXPORT_SYMBOL drivers/gpu/drm/drm 0xf0517d7a drm_mm_init +EXPORT_SYMBOL drivers/gpu/drm/drm 0xf08122dc drm_plane_create_color_properties +EXPORT_SYMBOL drivers/gpu/drm/drm 0xf1421d13 drm_mode_sort +EXPORT_SYMBOL drivers/gpu/drm/drm 0xf148eea4 drm_master_internal_acquire +EXPORT_SYMBOL drivers/gpu/drm/drm 0xf1983848 drm_gem_map_attach +EXPORT_SYMBOL drivers/gpu/drm/drm 0xf1ffdeea drm_crtc_set_max_vblank_count +EXPORT_SYMBOL drivers/gpu/drm/drm 0xf2203523 drm_client_release +EXPORT_SYMBOL drivers/gpu/drm/drm 0xf32042b4 drm_panel_disable +EXPORT_SYMBOL drivers/gpu/drm/drm 0xf364d794 drm_ioctl +EXPORT_SYMBOL drivers/gpu/drm/drm 0xf406e46a drm_get_connector_type_name +EXPORT_SYMBOL drivers/gpu/drm/drm 0xf41d1193 drm_hdmi_avi_infoframe_colorspace +EXPORT_SYMBOL drivers/gpu/drm/drm 0xf45b5279 drm_mode_create_scaling_mode_property +EXPORT_SYMBOL drivers/gpu/drm/drm 0xf5b1635e drm_state_dump +EXPORT_SYMBOL drivers/gpu/drm/drm 0xf826786c drm_format_info +EXPORT_SYMBOL drivers/gpu/drm/drm 0xf86f80f2 drm_mode_create_aspect_ratio_property +EXPORT_SYMBOL drivers/gpu/drm/drm 0xf8857927 drm_av_sync_delay +EXPORT_SYMBOL drivers/gpu/drm/drm 0xf889941a drm_crtc_handle_vblank +EXPORT_SYMBOL drivers/gpu/drm/drm 0xf9764fd8 drm_color_lut_check +EXPORT_SYMBOL drivers/gpu/drm/drm 0xfa2bd070 drm_framebuffer_plane_height +EXPORT_SYMBOL drivers/gpu/drm/drm 0xfc39877c drm_get_format_info +EXPORT_SYMBOL drivers/gpu/drm/drm 0xfc5537dc drm_mode_create_hdmi_colorspace_property +EXPORT_SYMBOL drivers/gpu/drm/drm 0xfd4a3ef6 drm_atomic_add_affected_connectors +EXPORT_SYMBOL drivers/gpu/drm/drm 0xfd7da63d drm_mode_create_tv_properties +EXPORT_SYMBOL drivers/gpu/drm/drm 0xfdbae525 drm_of_crtc_port_mask +EXPORT_SYMBOL drivers/gpu/drm/drm 0xfe420527 drm_plane_create_zpos_property +EXPORT_SYMBOL drivers/gpu/drm/drm 0xfeaa7281 drm_read +EXPORT_SYMBOL drivers/gpu/drm/drm 0xfed795af drm_mode_debug_printmodeline +EXPORT_SYMBOL drivers/gpu/drm/drm 0xff3b4569 drm_mode_probed_add +EXPORT_SYMBOL drivers/gpu/drm/drm 0xff8de91d drm_print_bits +EXPORT_SYMBOL drivers/gpu/drm/drm 0xff90a292 drm_mode_copy +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x0091c634 drm_self_refresh_helper_cleanup +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x01a01a8a drm_fb_swab16 +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x028f03ed drm_fb_xrgb8888_to_rgb565_dstclip +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x03abd4d5 drm_simple_display_pipe_init +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x05cb5347 drm_fb_helper_fini +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x06c49551 drm_dp_dsc_sink_line_buf_depth +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x079e856f drm_fb_helper_sys_imageblit +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x096d7e3b __drm_atomic_helper_bridge_reset +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x0bf93a50 drm_dp_dual_mode_max_tmds_clock +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x0c5f4255 drm_panel_bridge_connector +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x0dcef1a2 drm_dp_aux_init +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x0e0cfa92 drm_dp_dpcd_write +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x0e560b02 drm_fb_helper_cfb_copyarea +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x1304c4ad drm_scdc_write +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x143f68e7 drm_dp_get_phy_test_pattern +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x1595f7d1 drm_gem_fb_destroy +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x16195fff drm_atomic_helper_update_plane +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x19e37177 drm_dp_mst_add_affected_dsc_crtcs +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x19f859da drm_dp_mst_topology_mgr_destroy +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x1af8f650 drm_primary_helper_destroy +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x1ca15fe4 drm_atomic_helper_duplicate_state +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x21a12ef8 drm_atomic_helper_check_planes +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x21a3811c drm_fb_helper_prepare +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x24247f74 drm_atomic_helper_legacy_gamma_set +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x24dc9dc3 __drm_atomic_helper_crtc_state_reset +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x250da8c8 drm_atomic_helper_page_flip_target +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x26148346 drm_atomic_helper_async_check +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x265a6b85 drm_fb_helper_ioctl +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x26815dbc drm_dp_link_rate_to_bw_code +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x271e2b06 drm_atomic_helper_shutdown +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x2933fed1 drm_atomic_helper_check_modeset +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x2a8b0c66 drm_dp_mst_connector_late_register +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x2abf1de1 drm_atomic_helper_crtc_reset +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x2b101e75 drm_atomic_helper_commit_duplicated_state +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x2b1226ed drm_atomic_helper_disable_all +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x2fffea8f drm_dp_vsc_sdp_log +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x30296666 drm_atomic_helper_commit_planes +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x31eb9224 drm_kms_helper_hotplug_event +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x34816ad8 drm_atomic_helper_check_plane_damage +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x34fe8618 drm_gem_fb_create_handle +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x35c1369d drm_primary_helper_funcs +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x36671dd7 drm_atomic_helper_check_plane_state +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x36ec622d drm_dp_mst_put_port_malloc +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x37092fe4 __drm_atomic_helper_connector_duplicate_state +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x38226759 drm_atomic_helper_damage_merged +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x38400790 drm_kms_helper_poll_init +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x388f10a2 drm_fb_helper_unregister_fbi +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x393ef013 drm_dp_dual_mode_set_tmds_output +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x3a5b9bd1 drm_atomic_helper_bridge_reset +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x3a6804cf drm_atomic_helper_bridge_destroy_state +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x3a8063f3 drm_dp_dsc_sink_supported_input_bpcs +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x3bb303e5 drm_atomic_helper_wait_for_dependencies +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x3c2eeeed drm_atomic_helper_connector_destroy_state +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x3f208e93 __drm_atomic_helper_connector_state_reset +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x40531a7c drm_dp_dual_mode_write +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x4226029f drm_simple_display_pipe_attach_bridge +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x430f3073 drm_atomic_helper_wait_for_flip_done +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x441df31a drm_self_refresh_helper_update_avg_times +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x443dd171 drm_fb_helper_sys_copyarea +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x4619fe94 drm_helper_hpd_irq_event +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x48594a34 drm_dp_mst_deallocate_vcpi +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x487c7057 drm_helper_force_disable_all +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x48b62a57 drm_dp_link_train_channel_eq_delay +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x4930bd25 drm_helper_resume_force_mode +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x49d0aaab drm_atomic_helper_commit_modeset_enables +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x4a944cd4 drm_dp_mst_topology_mgr_resume +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x4b5e452b drm_panel_bridge_add +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x4b9d1162 drm_helper_encoder_in_use +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x4ce1882a drm_lspcon_set_mode +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x4d444586 __drm_atomic_helper_plane_destroy_state +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x506a8eb5 drm_dp_mst_topology_mgr_set_mst +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x5239bab2 drm_dp_cec_set_edid +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x5381c3aa drm_dp_send_power_updown_phy +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x5407ae9e drm_dp_get_dual_mode_type_name +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x54e362d0 drm_atomic_helper_commit_tail_rpm +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x55e1dac6 drm_dp_cec_unregister_connector +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x571dbe34 devm_drm_panel_bridge_add_typed +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x578d5341 drm_atomic_helper_cleanup_planes +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x582f248e drm_dp_get_adjust_request_pre_emphasis +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x58d8fcaa drm_dsc_pps_payload_pack +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x59dc4ec8 drm_fb_memcpy +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x5a4734d1 drm_kms_helper_is_poll_worker +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x5da1ca0b drm_fb_helper_debug_enter +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x5dc9a3f1 drm_dp_downstream_debug +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x5f2589c9 drm_helper_crtc_in_use +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x623a43c4 drm_scdc_read +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x631fa2db drm_dp_mst_dump_topology +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x648d953b drm_dsc_dp_pps_header_init +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x6615069e drm_dp_dsc_sink_max_slice_count +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x6683ef38 drm_fb_helper_sys_read +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x6b5c2b06 drm_atomic_helper_damage_iter_next +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x6cd35f0e drm_atomic_helper_page_flip +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x6d476048 drm_dp_stop_crc +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x6e0af43b drm_lspcon_get_mode +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x6e9253d8 __drm_atomic_helper_crtc_duplicate_state +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x70141de7 drm_dp_find_vcpi_slots +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x73011db0 drm_dp_bw_code_to_link_rate +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x7312d693 drm_fb_helper_cfb_imageblit +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x76dd00bd drm_dp_dual_mode_detect +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x76e86174 drm_fb_memcpy_dstclip +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x789c5c2b drm_self_refresh_helper_alter_state +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x7a5d3886 drm_dp_mst_hpd_irq +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x7aed4d41 drm_mode_config_helper_suspend +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x80328667 drm_fb_helper_setcmap +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x81ed2b8e drm_atomic_helper_disable_plane +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x828391dc drm_atomic_helper_plane_duplicate_state +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x830ae774 drm_fb_helper_fill_info +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x83349a8f drm_dp_cec_register_connector +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x853196f4 drm_helper_move_panel_connectors_to_head +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x88b3b18b drm_fb_helper_output_poll_changed +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x894b1f57 drm_dp_get_adjust_request_post_cursor +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x899e4f6f drm_fb_helper_sys_write +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x8a39cb4e drm_atomic_helper_setup_commit +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x8ad0fcd7 drm_fb_helper_deferred_io +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x8b71c3cc drm_atomic_helper_prepare_planes +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x8c584d80 __drm_atomic_helper_connector_destroy_state +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x8ca2d9e4 drm_dp_calc_pbn_mode +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x8d701329 drm_dp_clock_recovery_ok +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x8d969c4c drm_dp_dual_mode_get_tmds_output +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x8ef358b5 drm_scdc_set_scrambling +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x8f6940e6 drm_atomic_helper_connector_tv_reset +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x8f8b8342 drm_scdc_get_scrambling_status +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x8fa7791a drm_atomic_helper_bridge_duplicate_state +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x920668f8 drm_dp_mst_atomic_check +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x92340566 drm_fb_xrgb8888_to_rgb565 +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x92c5ee41 __drm_atomic_helper_connector_reset +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x92cb6940 drm_atomic_helper_resume +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x92d6455a drm_fb_xrgb8888_to_gray8 +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x944f27f6 drm_dp_read_desc +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x94de577f drm_atomic_helper_set_config +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x95fd667d __drm_atomic_helper_plane_reset +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x96fd62a2 drm_dp_downstream_id +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x972c96a9 drm_atomic_get_mst_topology_state +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x98c1a0af drm_dp_check_act_status +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x9d472ec2 drm_dp_update_payload_part2 +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x9d9c6f3b drm_simple_encoder_init +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x9f336fc2 drm_atomic_helper_commit_tail +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xa0507e98 drm_dp_dual_mode_read +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xa1f65b24 drm_fb_helper_lastclose +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xa1fefe6a drm_dp_psr_setup_time +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xa2f5c65b drm_dp_get_edid_quirks +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xa300b5da drm_dp_atomic_release_vcpi_slots +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xa30c5f21 drm_dp_mst_get_vcpi_slots +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xa3c21fdf drm_atomic_helper_commit_cleanup_done +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xa6ff9496 drm_dp_link_train_clock_recovery_delay +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xa82d4b7e drm_plane_enable_fb_damage_clips +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xa941deab drm_atomic_helper_check +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xa9f3b76d drm_dp_start_crc +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xaa09ac97 drm_fb_helper_set_par +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xab0e7cd4 drm_fb_helper_modinit +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xabbf80a7 drm_dp_get_vc_payload_bw +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xae7b72bc __drm_atomic_helper_bridge_duplicate_state +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xaeaf860b drm_panel_bridge_remove +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xaf41ec5f drm_atomic_helper_disable_planes_on_crtc +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xafde9407 drm_atomic_helper_swap_state +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xb15bb288 drm_atomic_helper_update_legacy_modeset_state +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xb18a6062 drm_dp_mst_get_edid +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xb326e736 drm_dp_dpcd_read +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xb34bf0dc drm_dp_aux_register +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xb4196446 drm_atomic_helper_connector_reset +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xb53bb9ff drm_mode_config_helper_resume +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xb60ac7b5 drm_fb_helper_sys_fillrect +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xb647d98b drm_atomic_helper_crtc_destroy_state +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xb70e6b7a drm_dp_mst_topology_state_funcs +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xb7cbfa02 drm_atomic_helper_wait_for_fences +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xb8d0fa1c drm_dp_send_real_edid_checksum +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xb902239e drm_dp_mst_dsc_aux_for_port +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xbabe5cb6 drm_dp_mst_topology_mgr_init +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xbb042b64 drm_dp_aux_unregister +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xbcd5ac29 drm_dp_mst_atomic_enable_dsc +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xbcdf13d2 drm_dp_remote_aux_init +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xbf437406 drm_fb_helper_pan_display +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xbfcbff58 drm_dp_mst_get_port_malloc +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xc2028f7e drm_kms_helper_poll_fini +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xc216e4db drm_fb_helper_initial_config +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xc3b2f233 drm_crtc_helper_set_config +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xc49bfdc3 drm_fb_helper_restore_fbdev_mode_unlocked +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xc4bd6f82 drm_fb_helper_init +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xc53297af drm_atomic_helper_dirtyfb +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xc5671bdb __drm_atomic_helper_crtc_reset +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xc5c99a79 drm_dp_get_adjust_request_voltage +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xc735b047 __drm_atomic_helper_plane_state_reset +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xc8a60852 drm_fbdev_generic_setup +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xc90e360c drm_atomic_helper_fake_vblank +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xcb02cbfb drm_fb_helper_set_suspend_unlocked +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xcb5ee43a devm_drm_panel_bridge_add +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xcb62ecf5 drm_kms_helper_poll_disable +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xcba4ef11 drm_fb_helper_set_suspend +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xcebda602 __drm_atomic_helper_private_obj_duplicate_state +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xcf09926a drm_helper_probe_single_connector_modes +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xcf8e0d42 drm_fb_helper_check_var +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xd002e1b6 drm_atomic_helper_bridge_propagate_bus_fmt +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xd1a2898d drm_dp_cec_irq +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xd2951fe9 drm_helper_disable_unused_functions +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xd392b65e drm_panel_bridge_add_typed +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xd4ccd132 drm_atomic_helper_commit_hw_done +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xd5ee5e8b drm_fb_xrgb8888_to_rgb888_dstclip +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xd7624fc8 drm_dp_dpcd_read_link_status +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xd896ddac drm_atomic_helper_commit +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xd8d58582 drm_self_refresh_helper_init +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xdb885351 drm_dp_mst_detect_port +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xdc1e3a4d drm_dp_mst_reset_vcpi_slots +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xdc3f6894 drm_dp_mst_topology_mgr_suspend +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xde222d85 drm_atomic_helper_async_commit +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xde76e343 drm_atomic_helper_commit_modeset_disables +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xe02abfbb drm_dp_downstream_max_bpc +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xe20a69a0 drm_atomic_helper_plane_reset +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xe420e158 drm_fb_helper_hotplug_event +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xe5d7c692 drm_crtc_init +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xe5ee85f3 drm_atomic_helper_crtc_duplicate_state +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xe60ada74 drm_dp_atomic_find_vcpi_slots +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xe6a87f12 drm_dp_mst_connector_early_unregister +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xe7bc631a drm_atomic_helper_wait_for_vblanks +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xe926fc22 __drm_atomic_helper_plane_duplicate_state +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xe9aacd38 drm_helper_connector_dpms +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xed6e1f51 drm_fb_helper_debug_leave +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xedcf81ce drm_dp_channel_eq_ok +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xedd158aa drm_dp_cec_unset_edid +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xeddb2749 drm_helper_mode_fill_fb_struct +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xee82f315 drm_dp_update_payload_part1 +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xefa23195 drm_dp_set_phy_test_pattern +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xf1512533 __drm_atomic_helper_crtc_destroy_state +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xf1cc1182 drm_atomic_helper_damage_iter_init +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xf2329e89 drm_dp_downstream_max_clock +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xf3c67e7c drm_atomic_helper_plane_destroy_state +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xf40e7dd2 drm_gem_fb_simple_display_pipe_prepare_fb +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xf53b159f drm_atomic_helper_suspend +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xf6d24dc4 drm_atomic_helper_commit_planes_on_crtc +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xf7e6907b drm_kms_helper_poll_enable +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xf81b7eae drm_scdc_set_high_tmds_clock_ratio +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xf86e5e23 drm_dp_mst_allocate_vcpi +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xfa49abda drm_helper_probe_detect +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xfaedebc6 drm_fb_helper_alloc_fbi +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xfc022fb4 drm_atomic_helper_connector_duplicate_state +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xfc3006a0 drm_fb_helper_blank +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xfc611dc6 drm_fb_helper_cfb_fillrect +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xfe12bcb9 drm_dsc_compute_rc_parameters +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xffe8d64a drm_crtc_helper_set_mode +EXPORT_SYMBOL drivers/gpu/drm/drm_mipi_dbi 0x01c76938 mipi_dbi_dev_init +EXPORT_SYMBOL drivers/gpu/drm/drm_mipi_dbi 0x16cebb85 mipi_dbi_command_stackbuf +EXPORT_SYMBOL drivers/gpu/drm/drm_mipi_dbi 0x291fd169 mipi_dbi_spi_transfer +EXPORT_SYMBOL drivers/gpu/drm/drm_mipi_dbi 0x756a5394 mipi_dbi_spi_cmd_max_speed +EXPORT_SYMBOL drivers/gpu/drm/drm_mipi_dbi 0x87d41522 mipi_dbi_debugfs_init +EXPORT_SYMBOL drivers/gpu/drm/drm_mipi_dbi 0x884c2fa0 mipi_dbi_poweron_conditional_reset +EXPORT_SYMBOL drivers/gpu/drm/drm_mipi_dbi 0x8cf38618 mipi_dbi_dev_init_with_formats +EXPORT_SYMBOL drivers/gpu/drm/drm_mipi_dbi 0x8d0ba578 mipi_dbi_spi_init +EXPORT_SYMBOL drivers/gpu/drm/drm_mipi_dbi 0x8e0a4a9f mipi_dbi_buf_copy +EXPORT_SYMBOL drivers/gpu/drm/drm_mipi_dbi 0xa190fa3c mipi_dbi_display_is_on +EXPORT_SYMBOL drivers/gpu/drm/drm_mipi_dbi 0xb046ed67 mipi_dbi_pipe_update +EXPORT_SYMBOL drivers/gpu/drm/drm_mipi_dbi 0xbd17b7b9 mipi_dbi_hw_reset +EXPORT_SYMBOL drivers/gpu/drm/drm_mipi_dbi 0xbeeefd30 mipi_dbi_command_buf +EXPORT_SYMBOL drivers/gpu/drm/drm_mipi_dbi 0xcc2da859 mipi_dbi_enable_flush +EXPORT_SYMBOL drivers/gpu/drm/drm_mipi_dbi 0xdc1fecdf mipi_dbi_poweron_reset +EXPORT_SYMBOL drivers/gpu/drm/drm_mipi_dbi 0xe58428fb mipi_dbi_command_read +EXPORT_SYMBOL drivers/gpu/drm/drm_mipi_dbi 0xff690b35 mipi_dbi_pipe_disable +EXPORT_SYMBOL drivers/gpu/drm/drm_ttm_helper 0x5757859b drm_gem_ttm_mmap +EXPORT_SYMBOL drivers/gpu/drm/drm_ttm_helper 0xf42cca1f drm_gem_ttm_print_info +EXPORT_SYMBOL drivers/gpu/drm/drm_vram_helper 0x02337d2a drm_gem_vram_offset +EXPORT_SYMBOL drivers/gpu/drm/drm_vram_helper 0x048feaee drm_gem_vram_kmap +EXPORT_SYMBOL drivers/gpu/drm/drm_vram_helper 0x04ca208b drm_vram_mm_debugfs_init +EXPORT_SYMBOL drivers/gpu/drm/drm_vram_helper 0x0723bf3a drm_gem_vram_mmap_offset +EXPORT_SYMBOL drivers/gpu/drm/drm_vram_helper 0x2040b78e drm_vram_helper_mode_valid +EXPORT_SYMBOL drivers/gpu/drm/drm_vram_helper 0x27969f97 drm_gem_vram_vunmap +EXPORT_SYMBOL drivers/gpu/drm/drm_vram_helper 0x2ef2f627 drm_gem_vram_pin +EXPORT_SYMBOL drivers/gpu/drm/drm_vram_helper 0x34884421 drm_gem_vram_driver_dumb_create +EXPORT_SYMBOL drivers/gpu/drm/drm_vram_helper 0x37a8dc3c drm_gem_vram_plane_helper_cleanup_fb +EXPORT_SYMBOL drivers/gpu/drm/drm_vram_helper 0x4988b1d2 drm_gem_vram_kunmap +EXPORT_SYMBOL drivers/gpu/drm/drm_vram_helper 0x75613e0a drm_gem_vram_create +EXPORT_SYMBOL drivers/gpu/drm/drm_vram_helper 0x83230138 drm_gem_vram_simple_display_pipe_cleanup_fb +EXPORT_SYMBOL drivers/gpu/drm/drm_vram_helper 0x88218c31 drm_gem_vram_unpin +EXPORT_SYMBOL drivers/gpu/drm/drm_vram_helper 0xac36874f drm_gem_vram_vmap +EXPORT_SYMBOL drivers/gpu/drm/drm_vram_helper 0xb4161dd2 drm_gem_vram_driver_dumb_mmap_offset +EXPORT_SYMBOL drivers/gpu/drm/drm_vram_helper 0xc56badc3 drm_gem_vram_fill_create_dumb +EXPORT_SYMBOL drivers/gpu/drm/drm_vram_helper 0xc88aea22 drm_gem_vram_simple_display_pipe_prepare_fb +EXPORT_SYMBOL drivers/gpu/drm/drm_vram_helper 0xd7d43af9 drm_vram_helper_release_mm +EXPORT_SYMBOL drivers/gpu/drm/drm_vram_helper 0xef5330f4 drm_gem_vram_plane_helper_prepare_fb +EXPORT_SYMBOL drivers/gpu/drm/drm_vram_helper 0xf44a2f52 drm_gem_vram_put +EXPORT_SYMBOL drivers/gpu/drm/drm_vram_helper 0xf7109302 drm_vram_helper_alloc_mm +EXPORT_SYMBOL drivers/gpu/drm/rockchip/rockchipdrm 0x8ea862aa rockchip_drm_wait_vact_end +EXPORT_SYMBOL drivers/gpu/drm/scheduler/gpu-sched 0x0cede91e drm_sched_fault +EXPORT_SYMBOL drivers/gpu/drm/scheduler/gpu-sched 0x158bb575 drm_sched_stop +EXPORT_SYMBOL drivers/gpu/drm/scheduler/gpu-sched 0x198bbfb0 drm_sched_entity_destroy +EXPORT_SYMBOL drivers/gpu/drm/scheduler/gpu-sched 0x31ec7ed5 drm_sched_entity_modify_sched +EXPORT_SYMBOL drivers/gpu/drm/scheduler/gpu-sched 0x34a995ee drm_sched_dependency_optimized +EXPORT_SYMBOL drivers/gpu/drm/scheduler/gpu-sched 0x38a32154 drm_sched_fini +EXPORT_SYMBOL drivers/gpu/drm/scheduler/gpu-sched 0x41e8276b drm_sched_job_init +EXPORT_SYMBOL drivers/gpu/drm/scheduler/gpu-sched 0x469724d4 drm_sched_resubmit_jobs +EXPORT_SYMBOL drivers/gpu/drm/scheduler/gpu-sched 0x4c2ab118 drm_sched_init +EXPORT_SYMBOL drivers/gpu/drm/scheduler/gpu-sched 0x6ec10c5a drm_sched_resume_timeout +EXPORT_SYMBOL drivers/gpu/drm/scheduler/gpu-sched 0x71d810fb drm_sched_entity_fini +EXPORT_SYMBOL drivers/gpu/drm/scheduler/gpu-sched 0x79935e95 drm_sched_entity_init +EXPORT_SYMBOL drivers/gpu/drm/scheduler/gpu-sched 0x89870fdc drm_sched_entity_set_priority +EXPORT_SYMBOL drivers/gpu/drm/scheduler/gpu-sched 0xa0657d4f drm_sched_suspend_timeout +EXPORT_SYMBOL drivers/gpu/drm/scheduler/gpu-sched 0xa46e8f49 drm_sched_start +EXPORT_SYMBOL drivers/gpu/drm/scheduler/gpu-sched 0xa8df827e drm_sched_entity_flush +EXPORT_SYMBOL drivers/gpu/drm/scheduler/gpu-sched 0xb32cfd33 drm_sched_increase_karma +EXPORT_SYMBOL drivers/gpu/drm/scheduler/gpu-sched 0xb733b797 to_drm_sched_fence +EXPORT_SYMBOL drivers/gpu/drm/scheduler/gpu-sched 0xc5b28b15 drm_sched_job_cleanup +EXPORT_SYMBOL drivers/gpu/drm/scheduler/gpu-sched 0xd1dfc225 drm_sched_entity_push_job +EXPORT_SYMBOL drivers/gpu/drm/scheduler/gpu-sched 0xf25e9473 drm_sched_pick_best +EXPORT_SYMBOL drivers/gpu/drm/sun4i/sun4i-frontend 0x0a3d59ca sun4i_frontend_update_buffer +EXPORT_SYMBOL drivers/gpu/drm/sun4i/sun4i-frontend 0x3f422087 sun4i_frontend_update_formats +EXPORT_SYMBOL drivers/gpu/drm/sun4i/sun4i-frontend 0x96413fdb sunxi_bt601_yuv2rgb_coef +EXPORT_SYMBOL drivers/gpu/drm/sun4i/sun4i-frontend 0xa631b179 sun4i_frontend_format_is_supported +EXPORT_SYMBOL drivers/gpu/drm/sun4i/sun4i-frontend 0xcdfb90fd sun4i_frontend_update_coord +EXPORT_SYMBOL drivers/gpu/drm/sun4i/sun4i-frontend 0xe13164ef sun4i_frontend_of_table +EXPORT_SYMBOL drivers/gpu/drm/sun4i/sun4i-frontend 0xebb14b49 sun4i_frontend_init +EXPORT_SYMBOL drivers/gpu/drm/sun4i/sun4i-frontend 0xf91c840c sun4i_frontend_exit +EXPORT_SYMBOL drivers/gpu/drm/sun4i/sun4i-frontend 0xfdfcbbcb sun4i_frontend_enable +EXPORT_SYMBOL drivers/gpu/drm/sun4i/sun4i-tcon 0x10edc5f2 sun4i_tcon_enable_vblank +EXPORT_SYMBOL drivers/gpu/drm/sun4i/sun4i-tcon 0x69e98da6 sun4i_dclk_free +EXPORT_SYMBOL drivers/gpu/drm/sun4i/sun4i-tcon 0x6c10c7a7 sun4i_tcon_of_table +EXPORT_SYMBOL drivers/gpu/drm/sun4i/sun4i-tcon 0x74c7d0f1 sun4i_rgb_init +EXPORT_SYMBOL drivers/gpu/drm/sun4i/sun4i-tcon 0x8badfa5e sun4i_dclk_create +EXPORT_SYMBOL drivers/gpu/drm/sun4i/sun4i-tcon 0xbe24331f sun4i_tcon_mode_set +EXPORT_SYMBOL drivers/gpu/drm/sun4i/sun4i-tcon 0xfaad9818 sun4i_lvds_init +EXPORT_SYMBOL drivers/gpu/drm/sun4i/sun8i_tcon_top 0x1aeff3b6 sun8i_tcon_top_de_config +EXPORT_SYMBOL drivers/gpu/drm/sun4i/sun8i_tcon_top 0x350e5dcd sun8i_tcon_top_of_table +EXPORT_SYMBOL drivers/gpu/drm/sun4i/sun8i_tcon_top 0xabfab582 sun8i_tcon_top_set_hdmi_src +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x037d4248 ttm_bo_vm_fault_reserved +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x03a1e940 ttm_bo_init_mm +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x07247d69 ttm_mem_glob +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x0edf39ab ttm_bo_glob +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x1657a03b ttm_bo_mmap_obj +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x177a4fad ttm_pool_populate +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x17eb2e8c ttm_check_under_lowerlimit +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x1acad598 ttm_sg_tt_init +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x1cb2ab06 ttm_eu_reserve_buffers +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x1daf6ab5 ttm_bo_bulk_move_lru_tail +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x1db9c05e ttm_tt_bind +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x1fc5a9a3 ttm_bo_move_accel_cleanup +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x23485ed8 ttm_bo_mmap +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x25271fe6 ttm_tt_init +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x29bc47a5 ttm_bo_eviction_valuable +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x2a6d6d6a ttm_bo_unlock_delayed_workqueue +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x3ed77d0a ttm_bo_kunmap +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x3ff43a22 ttm_eu_fence_buffer_objects +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x44671ae8 ttm_bo_validate +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x468c9d3a ttm_populate_and_map_pages +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x4aeac9f2 ttm_dma_tt_fini +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x4d83126e ttm_bo_swapout +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x4e461e2c ttm_bo_lock_delayed_workqueue +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x540f8262 ttm_bo_move_ttm +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x5cbbe8d6 ttm_tt_set_placement_caching +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x6052860c ttm_round_pot +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x6125aeab ttm_eu_backoff_reservation +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x67a35269 ttm_bo_device_release +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x6854ae97 ttm_bo_acc_size +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x6a89746f ttm_bo_mem_compat +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x79e71aab ttm_bo_vm_close +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x81b453b5 ttm_io_prot +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x83096012 ttm_bo_pipeline_move +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x8686f368 ttm_dma_tt_init +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x8b6b043d ttm_bo_init_reserved +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x8df6e99a ttm_bo_move_memcpy +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x9ca2b67f ttm_bo_kmap +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x9cda9ab2 ttm_bo_vm_access +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x9d3541ab ttm_tt_fini +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xa466981f ttm_bo_create +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xa98d9ada ttm_bo_vm_reserve +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xaa074d1f ttm_bo_vm_open +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xb0e1bc92 ttm_bo_swapout_all +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xb6bab78d ttm_bo_manager_func +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xbd4a1d58 ttm_bo_mem_space +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xbeb092fb ttm_bo_dma_acc_size +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xc96d05f7 ttm_bo_unmap_virtual +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xcfade370 ttm_bo_device_init +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xcfbb483f ttm_bo_init +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xd9355145 ttm_get_kernel_zone_memory_size +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xdb326689 ttm_bo_evict_mm +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xdb78b684 ttm_bo_move_to_lru_tail +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xe3cb20a1 ttm_bo_vm_fault +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xe760bba2 ttm_unmap_and_unpopulate_pages +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xe97893fe ttm_bo_clean_mm +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xec65c69e ttm_mem_global_free +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xef27ee25 ttm_bo_put +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xf3649951 ttm_page_alloc_debugfs +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xf5ea5a22 ttm_mem_global_alloc +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xf626155a ttm_bo_wait +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xf842e726 ttm_pool_unpopulate +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xfb766426 ttm_bo_mem_put +EXPORT_SYMBOL drivers/hid/hid 0xc6409a2a hid_bus_type +EXPORT_SYMBOL drivers/hwmon/hwmon-vid 0x2f9e7f8e vid_which_vrm +EXPORT_SYMBOL drivers/hwmon/hwmon-vid 0x446615bd vid_from_reg +EXPORT_SYMBOL drivers/hwmon/sch56xx-common 0x01568393 sch56xx_read_virtual_reg +EXPORT_SYMBOL drivers/hwmon/sch56xx-common 0x088d731e sch56xx_watchdog_register +EXPORT_SYMBOL drivers/hwmon/sch56xx-common 0x34257f35 sch56xx_watchdog_unregister +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 0x09b6019e i2c_bit_algo +EXPORT_SYMBOL drivers/i2c/algos/i2c-algo-bit 0x7f87f3a0 i2c_bit_add_bus +EXPORT_SYMBOL drivers/i2c/algos/i2c-algo-bit 0xe8879143 i2c_bit_add_numbered_bus +EXPORT_SYMBOL drivers/i2c/algos/i2c-algo-pca 0x8a4f529c i2c_pca_add_bus +EXPORT_SYMBOL drivers/i2c/algos/i2c-algo-pca 0xfcc81cd1 i2c_pca_add_numbered_bus +EXPORT_SYMBOL drivers/i2c/busses/i2c-amd756 0xc8baa360 amd756_smbus +EXPORT_SYMBOL drivers/iio/accel/bma400_core 0x5dbe2c5a bma400_remove +EXPORT_SYMBOL drivers/iio/accel/bma400_core 0x5f1cbae4 bma400_probe +EXPORT_SYMBOL drivers/iio/accel/bma400_core 0xdcbef4ca bma400_regmap_config +EXPORT_SYMBOL drivers/iio/accel/kxsd9 0x2590477b kxsd9_dev_pm_ops +EXPORT_SYMBOL drivers/iio/accel/kxsd9 0x53ce3ddf kxsd9_common_remove +EXPORT_SYMBOL drivers/iio/accel/kxsd9 0xb7b67c9d kxsd9_common_probe +EXPORT_SYMBOL drivers/iio/accel/mma9551_core 0x0d487c7f mma9551_gpio_config +EXPORT_SYMBOL drivers/iio/accel/mma9551_core 0x24f59538 mma9551_read_config_word +EXPORT_SYMBOL drivers/iio/accel/mma9551_core 0x2b81a9fc mma9551_read_status_word +EXPORT_SYMBOL drivers/iio/accel/mma9551_core 0x38b4e7d2 mma9551_read_config_words +EXPORT_SYMBOL drivers/iio/accel/mma9551_core 0x391d9e01 mma9551_read_status_words +EXPORT_SYMBOL drivers/iio/accel/mma9551_core 0x41ef446c mma9551_read_accel_scale +EXPORT_SYMBOL drivers/iio/accel/mma9551_core 0x4cb0e32f mma9551_update_config_bits +EXPORT_SYMBOL drivers/iio/accel/mma9551_core 0x4e43d197 mma9551_set_device_state +EXPORT_SYMBOL drivers/iio/accel/mma9551_core 0x686ccffe mma9551_set_power_state +EXPORT_SYMBOL drivers/iio/accel/mma9551_core 0x8cbac302 mma9551_app_reset +EXPORT_SYMBOL drivers/iio/accel/mma9551_core 0x92cc8a3f mma9551_read_config_byte +EXPORT_SYMBOL drivers/iio/accel/mma9551_core 0xa36e2e96 mma9551_write_config_byte +EXPORT_SYMBOL drivers/iio/accel/mma9551_core 0xab97d30e mma9551_read_version +EXPORT_SYMBOL drivers/iio/accel/mma9551_core 0xbcd7fe96 mma9551_sleep +EXPORT_SYMBOL drivers/iio/accel/mma9551_core 0xc624f01d mma9551_read_accel_chan +EXPORT_SYMBOL drivers/iio/accel/mma9551_core 0xc6c9cd75 mma9551_write_config_words +EXPORT_SYMBOL drivers/iio/accel/mma9551_core 0xe6097a76 mma9551_read_status_byte +EXPORT_SYMBOL drivers/iio/accel/mma9551_core 0xe67dc703 mma9551_write_config_word +EXPORT_SYMBOL drivers/iio/accel/st_accel 0x6458d979 st_accel_common_probe +EXPORT_SYMBOL drivers/iio/accel/st_accel 0x8d90a3f4 st_accel_common_remove +EXPORT_SYMBOL drivers/iio/accel/st_accel 0xa24faa2f st_accel_get_settings +EXPORT_SYMBOL drivers/iio/adc/qcom-vadc-common 0x70e6eca1 qcom_vadc_decimation_from_dt +EXPORT_SYMBOL drivers/iio/adc/qcom-vadc-common 0xcae36995 qcom_vadc_scale +EXPORT_SYMBOL drivers/iio/adc/qcom-vadc-common 0xf253ae31 qcom_adc5_hw_scale +EXPORT_SYMBOL drivers/iio/buffer/industrialio-buffer-dmaengine 0xf4069e74 iio_dmaengine_buffer_alloc +EXPORT_SYMBOL drivers/iio/buffer/industrialio-triggered-buffer 0x57ac1bae iio_triggered_buffer_cleanup +EXPORT_SYMBOL drivers/iio/buffer/industrialio-triggered-buffer 0xe494f018 iio_triggered_buffer_setup +EXPORT_SYMBOL drivers/iio/buffer/kfifo_buf 0x59eee91b iio_kfifo_allocate +EXPORT_SYMBOL drivers/iio/buffer/kfifo_buf 0x6e3c8def iio_kfifo_free +EXPORT_SYMBOL drivers/iio/buffer/kfifo_buf 0xa16b4d1a devm_iio_kfifo_allocate +EXPORT_SYMBOL drivers/iio/chemical/bme680_core 0xf5137e3d bme680_regmap_config +EXPORT_SYMBOL drivers/iio/common/hid-sensors/hid-sensor-iio-common 0x2fa01a9f hid_sensor_write_raw_hyst_value +EXPORT_SYMBOL drivers/iio/common/hid-sensors/hid-sensor-iio-common 0x3b012167 hid_sensor_convert_timestamp +EXPORT_SYMBOL drivers/iio/common/hid-sensors/hid-sensor-iio-common 0x4fc3d8ab hid_sensor_read_samp_freq_value +EXPORT_SYMBOL drivers/iio/common/hid-sensors/hid-sensor-iio-common 0x719bd252 hid_sensor_read_raw_hyst_value +EXPORT_SYMBOL drivers/iio/common/hid-sensors/hid-sensor-iio-common 0x7f7621ec hid_sensor_format_scale +EXPORT_SYMBOL drivers/iio/common/hid-sensors/hid-sensor-iio-common 0x8500f179 hid_sensor_write_samp_freq_value +EXPORT_SYMBOL drivers/iio/common/hid-sensors/hid-sensor-iio-common 0xb8d29271 hid_sensor_set_report_latency +EXPORT_SYMBOL drivers/iio/common/hid-sensors/hid-sensor-iio-common 0xbd4282bd hid_sensor_get_report_latency +EXPORT_SYMBOL drivers/iio/common/hid-sensors/hid-sensor-iio-common 0xc1d0cef0 hid_sensor_parse_common_attributes +EXPORT_SYMBOL drivers/iio/common/hid-sensors/hid-sensor-iio-common 0xcbf49da5 hid_sensor_read_poll_value +EXPORT_SYMBOL drivers/iio/common/hid-sensors/hid-sensor-iio-common 0xf372f776 hid_sensor_batch_mode_supported +EXPORT_SYMBOL drivers/iio/common/hid-sensors/hid-sensor-trigger 0x87371b23 hid_sensor_remove_trigger +EXPORT_SYMBOL drivers/iio/common/hid-sensors/hid-sensor-trigger 0x8b9cccae hid_sensor_power_state +EXPORT_SYMBOL drivers/iio/common/hid-sensors/hid-sensor-trigger 0xa2dd52a1 hid_sensor_pm_ops +EXPORT_SYMBOL drivers/iio/common/hid-sensors/hid-sensor-trigger 0xcbcc76b6 hid_sensor_setup_trigger +EXPORT_SYMBOL drivers/iio/common/ms_sensors/ms_sensors_i2c 0x03d37454 ms_sensors_read_serial +EXPORT_SYMBOL drivers/iio/common/ms_sensors/ms_sensors_i2c 0x045688dd ms_sensors_read_prom_word +EXPORT_SYMBOL drivers/iio/common/ms_sensors/ms_sensors_i2c 0x2d2f5cd5 ms_sensors_reset +EXPORT_SYMBOL drivers/iio/common/ms_sensors/ms_sensors_i2c 0x42b6a050 ms_sensors_convert_and_read +EXPORT_SYMBOL drivers/iio/common/ms_sensors/ms_sensors_i2c 0x4c0c2729 ms_sensors_ht_read_humidity +EXPORT_SYMBOL drivers/iio/common/ms_sensors/ms_sensors_i2c 0x722c7bf8 ms_sensors_ht_read_temperature +EXPORT_SYMBOL drivers/iio/common/ms_sensors/ms_sensors_i2c 0x752599a1 ms_sensors_show_heater +EXPORT_SYMBOL drivers/iio/common/ms_sensors/ms_sensors_i2c 0x8f9d8a0f ms_sensors_tp_read_prom +EXPORT_SYMBOL drivers/iio/common/ms_sensors/ms_sensors_i2c 0xbf963d6f ms_sensors_read_temp_and_pressure +EXPORT_SYMBOL drivers/iio/common/ms_sensors/ms_sensors_i2c 0xce1fa076 ms_sensors_write_heater +EXPORT_SYMBOL drivers/iio/common/ms_sensors/ms_sensors_i2c 0xe520674c ms_sensors_write_resolution +EXPORT_SYMBOL drivers/iio/common/ms_sensors/ms_sensors_i2c 0xecafdfd0 ms_sensors_show_battery_low +EXPORT_SYMBOL drivers/iio/common/ssp_sensors/sensorhub 0x3dc63294 ssp_change_delay +EXPORT_SYMBOL drivers/iio/common/ssp_sensors/sensorhub 0x5b7da184 ssp_disable_sensor +EXPORT_SYMBOL drivers/iio/common/ssp_sensors/sensorhub 0x6eebd91d ssp_register_consumer +EXPORT_SYMBOL drivers/iio/common/ssp_sensors/sensorhub 0xb6b1b682 ssp_get_sensor_delay +EXPORT_SYMBOL drivers/iio/common/ssp_sensors/sensorhub 0xe16f037b ssp_enable_sensor +EXPORT_SYMBOL drivers/iio/common/ssp_sensors/ssp_iio 0x11621d6c ssp_common_buffer_postdisable +EXPORT_SYMBOL drivers/iio/common/ssp_sensors/ssp_iio 0x5edadddd ssp_common_buffer_postenable +EXPORT_SYMBOL drivers/iio/common/ssp_sensors/ssp_iio 0x8eb68ef1 ssp_common_process_data +EXPORT_SYMBOL drivers/iio/common/st_sensors/st_sensors 0x074d7047 st_sensors_trigger_handler +EXPORT_SYMBOL drivers/iio/common/st_sensors/st_sensors 0x16e0881d st_sensors_dev_name_probe +EXPORT_SYMBOL drivers/iio/common/st_sensors/st_sensors 0x20414ca6 st_sensors_power_enable +EXPORT_SYMBOL drivers/iio/common/st_sensors/st_sensors 0x3443a993 st_sensors_deallocate_trigger +EXPORT_SYMBOL drivers/iio/common/st_sensors/st_sensors 0x37787f31 st_sensors_sysfs_sampling_frequency_avail +EXPORT_SYMBOL drivers/iio/common/st_sensors/st_sensors 0x4a3afe0f st_sensors_sysfs_scale_avail +EXPORT_SYMBOL drivers/iio/common/st_sensors/st_sensors 0x56be7d5f st_sensors_get_settings_index +EXPORT_SYMBOL drivers/iio/common/st_sensors/st_sensors 0x653e2830 st_sensors_set_axis_enable +EXPORT_SYMBOL drivers/iio/common/st_sensors/st_sensors 0x665610c7 st_sensors_init_sensor +EXPORT_SYMBOL drivers/iio/common/st_sensors/st_sensors 0x87dd8434 st_sensors_allocate_trigger +EXPORT_SYMBOL drivers/iio/common/st_sensors/st_sensors 0xacdec3d3 st_sensors_set_dataready_irq +EXPORT_SYMBOL drivers/iio/common/st_sensors/st_sensors 0xbb350f56 st_sensors_verify_id +EXPORT_SYMBOL drivers/iio/common/st_sensors/st_sensors 0xcdc43a3e st_sensors_set_odr +EXPORT_SYMBOL drivers/iio/common/st_sensors/st_sensors 0xcec1ab0b st_sensors_set_enable +EXPORT_SYMBOL drivers/iio/common/st_sensors/st_sensors 0xdf756605 st_sensors_validate_device +EXPORT_SYMBOL drivers/iio/common/st_sensors/st_sensors 0xe2f4c9d5 st_sensors_set_fullscale_by_gain +EXPORT_SYMBOL drivers/iio/common/st_sensors/st_sensors 0xec5168a8 st_sensors_read_info_raw +EXPORT_SYMBOL drivers/iio/common/st_sensors/st_sensors 0xee2c34b2 st_sensors_power_disable +EXPORT_SYMBOL drivers/iio/common/st_sensors/st_sensors 0xf3718397 st_sensors_debugfs_reg_access +EXPORT_SYMBOL drivers/iio/common/st_sensors/st_sensors_i2c 0xcdbace60 st_sensors_i2c_configure +EXPORT_SYMBOL drivers/iio/common/st_sensors/st_sensors_spi 0xaba701f4 st_sensors_spi_configure +EXPORT_SYMBOL drivers/iio/gyro/mpu3050 0x4f95eec6 mpu3050_common_remove +EXPORT_SYMBOL drivers/iio/gyro/mpu3050 0xac39af0b mpu3050_dev_pm_ops +EXPORT_SYMBOL drivers/iio/gyro/mpu3050 0xe398f6c8 mpu3050_common_probe +EXPORT_SYMBOL drivers/iio/gyro/st_gyro 0x9959183a st_gyro_common_remove +EXPORT_SYMBOL drivers/iio/gyro/st_gyro 0xda37bc25 st_gyro_common_probe +EXPORT_SYMBOL drivers/iio/gyro/st_gyro 0xed0edf8d st_gyro_get_settings +EXPORT_SYMBOL drivers/iio/humidity/hts221 0x0f97a156 hts221_pm_ops +EXPORT_SYMBOL drivers/iio/humidity/hts221 0xaa37c624 hts221_probe +EXPORT_SYMBOL drivers/iio/imu/adis_lib 0x4956f8c5 adis_enable_irq +EXPORT_SYMBOL drivers/iio/imu/adis_lib 0x58480cfc adis_debugfs_reg_access +EXPORT_SYMBOL drivers/iio/imu/bmi160/bmi160_core 0x404900bf bmi160_regmap_config +EXPORT_SYMBOL drivers/iio/imu/bmi160/bmi160_core 0xca19cfae bmi160_enable_irq +EXPORT_SYMBOL drivers/iio/imu/fxos8700_core 0x81ff2400 fxos8700_regmap_config +EXPORT_SYMBOL drivers/iio/imu/st_lsm6dsx/st_lsm6dsx 0x40bd911e st_lsm6dsx_probe +EXPORT_SYMBOL drivers/iio/imu/st_lsm6dsx/st_lsm6dsx 0x4d5a2761 st_lsm6dsx_pm_ops +EXPORT_SYMBOL drivers/iio/industrialio 0x00700714 iio_triggered_buffer_predisable +EXPORT_SYMBOL drivers/iio/industrialio 0x07a9bad7 iio_push_event +EXPORT_SYMBOL drivers/iio/industrialio 0x07c7549a iio_triggered_buffer_postenable +EXPORT_SYMBOL drivers/iio/industrialio 0x0aa020c6 iio_read_mount_matrix +EXPORT_SYMBOL drivers/iio/industrialio 0x0df184fd iio_trigger_free +EXPORT_SYMBOL drivers/iio/industrialio 0x1090a4b7 iio_get_time_ns +EXPORT_SYMBOL drivers/iio/industrialio 0x16c1fbee iio_device_alloc +EXPORT_SYMBOL drivers/iio/industrialio 0x182a0ca1 __iio_trigger_register +EXPORT_SYMBOL drivers/iio/industrialio 0x212b3f45 iio_get_time_res +EXPORT_SYMBOL drivers/iio/industrialio 0x22738faa iio_trigger_poll +EXPORT_SYMBOL drivers/iio/industrialio 0x23ee5140 iio_trigger_using_own +EXPORT_SYMBOL drivers/iio/industrialio 0x2d6bcdcb iio_trigger_generic_data_rdy_poll +EXPORT_SYMBOL drivers/iio/industrialio 0x41dbc80e iio_bus_type +EXPORT_SYMBOL drivers/iio/industrialio 0x4bb4470f iio_device_set_clock +EXPORT_SYMBOL drivers/iio/industrialio 0x62aa8aa2 iio_trigger_notify_done +EXPORT_SYMBOL drivers/iio/industrialio 0x665b2d7e iio_buffer_init +EXPORT_SYMBOL drivers/iio/industrialio 0x73003a3a __iio_device_register +EXPORT_SYMBOL drivers/iio/industrialio 0x77fac527 iio_device_free +EXPORT_SYMBOL drivers/iio/industrialio 0x908e1ba3 iio_trigger_alloc +EXPORT_SYMBOL drivers/iio/industrialio 0x965a4461 iio_trigger_set_immutable +EXPORT_SYMBOL drivers/iio/industrialio 0x9bad9232 iio_trigger_poll_chained +EXPORT_SYMBOL drivers/iio/industrialio 0xb7265438 iio_device_unregister +EXPORT_SYMBOL drivers/iio/industrialio 0xd69b93f5 iio_trigger_validate_own_device +EXPORT_SYMBOL drivers/iio/industrialio 0xdf76bbeb iio_pollfunc_store_time +EXPORT_SYMBOL drivers/iio/industrialio 0xe1c19ef8 iio_read_const_attr +EXPORT_SYMBOL drivers/iio/industrialio 0xfdf8ddda iio_trigger_unregister +EXPORT_SYMBOL drivers/iio/industrialio-configfs 0xcd1cb3ca iio_configfs_subsys +EXPORT_SYMBOL drivers/iio/industrialio-sw-device 0x124b1fc8 iio_sw_device_destroy +EXPORT_SYMBOL drivers/iio/industrialio-sw-device 0x55bea01e iio_register_sw_device_type +EXPORT_SYMBOL drivers/iio/industrialio-sw-device 0x7f3bed3d iio_sw_device_create +EXPORT_SYMBOL drivers/iio/industrialio-sw-device 0x9c439f25 iio_unregister_sw_device_type +EXPORT_SYMBOL drivers/iio/industrialio-sw-trigger 0x4a0ad44a iio_sw_trigger_destroy +EXPORT_SYMBOL drivers/iio/industrialio-sw-trigger 0x9ef4bca3 iio_unregister_sw_trigger_type +EXPORT_SYMBOL drivers/iio/industrialio-sw-trigger 0xb1c71280 iio_sw_trigger_create +EXPORT_SYMBOL drivers/iio/industrialio-sw-trigger 0xee271500 iio_register_sw_trigger_type +EXPORT_SYMBOL drivers/iio/industrialio-triggered-event 0x62ed42ca iio_triggered_event_cleanup +EXPORT_SYMBOL drivers/iio/industrialio-triggered-event 0xb22e8993 iio_triggered_event_setup +EXPORT_SYMBOL drivers/iio/light/st_uvis25_core 0x1f8dacf1 st_uvis25_pm_ops +EXPORT_SYMBOL drivers/iio/light/st_uvis25_core 0xf9f7aa3b st_uvis25_probe +EXPORT_SYMBOL drivers/iio/magnetometer/bmc150_magn 0x01644a20 bmc150_magn_pm_ops +EXPORT_SYMBOL drivers/iio/magnetometer/bmc150_magn 0x342b9c3f bmc150_magn_regmap_config +EXPORT_SYMBOL drivers/iio/magnetometer/bmc150_magn 0x91ef21aa bmc150_magn_probe +EXPORT_SYMBOL drivers/iio/magnetometer/bmc150_magn 0xc2f949c4 bmc150_magn_remove +EXPORT_SYMBOL drivers/iio/magnetometer/hmc5843_core 0x7e871372 hmc5843_common_suspend +EXPORT_SYMBOL drivers/iio/magnetometer/hmc5843_core 0xa0159382 hmc5843_common_probe +EXPORT_SYMBOL drivers/iio/magnetometer/hmc5843_core 0xb2fa805b hmc5843_common_remove +EXPORT_SYMBOL drivers/iio/magnetometer/hmc5843_core 0xd93dbcf5 hmc5843_common_resume +EXPORT_SYMBOL drivers/iio/magnetometer/st_magn 0x7cfa142c st_magn_get_settings +EXPORT_SYMBOL drivers/iio/magnetometer/st_magn 0xcfdb4e89 st_magn_common_remove +EXPORT_SYMBOL drivers/iio/magnetometer/st_magn 0xeba52c10 st_magn_common_probe +EXPORT_SYMBOL drivers/iio/pressure/bmp280 0x11cfb6d7 bmp180_regmap_config +EXPORT_SYMBOL drivers/iio/pressure/bmp280 0x17ddd78f bmp280_dev_pm_ops +EXPORT_SYMBOL drivers/iio/pressure/bmp280 0x452f9c78 bmp280_common_probe +EXPORT_SYMBOL drivers/iio/pressure/bmp280 0xfb496bb5 bmp280_regmap_config +EXPORT_SYMBOL drivers/iio/pressure/ms5611_core 0x7ef3e72e ms5611_remove +EXPORT_SYMBOL drivers/iio/pressure/ms5611_core 0xe251ea15 ms5611_probe +EXPORT_SYMBOL drivers/iio/pressure/st_pressure 0xa42b8061 st_press_get_settings +EXPORT_SYMBOL drivers/iio/pressure/st_pressure 0xb3637033 st_press_common_remove +EXPORT_SYMBOL drivers/iio/pressure/st_pressure 0xf9fcc59e st_press_common_probe +EXPORT_SYMBOL drivers/infiniband/core/ib_cm 0x03424533 ib_cm_listen +EXPORT_SYMBOL drivers/infiniband/core/ib_cm 0x08db05fd ib_send_cm_sidr_rep +EXPORT_SYMBOL drivers/infiniband/core/ib_cm 0x3c8e821e ib_destroy_cm_id +EXPORT_SYMBOL drivers/infiniband/core/ib_cm 0x3dbd280a ib_send_cm_rep +EXPORT_SYMBOL drivers/infiniband/core/ib_cm 0x41cd3e05 ib_send_cm_rej +EXPORT_SYMBOL drivers/infiniband/core/ib_cm 0x69824a14 ibcm_reject_msg +EXPORT_SYMBOL drivers/infiniband/core/ib_cm 0x751d320b ib_send_cm_rtu +EXPORT_SYMBOL drivers/infiniband/core/ib_cm 0x7cf175bf ib_cm_insert_listen +EXPORT_SYMBOL drivers/infiniband/core/ib_cm 0x9b192e2f ib_cm_init_qp_attr +EXPORT_SYMBOL drivers/infiniband/core/ib_cm 0xaf8a680e ib_send_cm_req +EXPORT_SYMBOL drivers/infiniband/core/ib_cm 0xbd39bd2c ib_send_cm_mra +EXPORT_SYMBOL drivers/infiniband/core/ib_cm 0xc389888a ib_create_cm_id +EXPORT_SYMBOL drivers/infiniband/core/ib_cm 0xd7ecf9c4 ib_send_cm_drep +EXPORT_SYMBOL drivers/infiniband/core/ib_cm 0xef79c009 ib_send_cm_sidr_req +EXPORT_SYMBOL drivers/infiniband/core/ib_cm 0xefa24963 cm_class +EXPORT_SYMBOL drivers/infiniband/core/ib_cm 0xf4a86cdc ib_send_cm_dreq +EXPORT_SYMBOL drivers/infiniband/core/ib_cm 0xfab9d356 ib_cm_notify +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x00e135f5 ib_cq_pool_get +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x012c76fa roce_gid_type_mask_support +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x01870a1f ib_get_net_dev_by_params +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x05ff5fc8 rdma_put_gid_attr +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x0662d66a ib_register_event_handler +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x0801d7f4 ib_modify_qp_with_udata +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x097ce882 ib_register_mad_agent +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x0bffeb10 ib_device_get_by_name +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x0c86f5cb ib_sa_register_client +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x0d5738c1 rdma_translate_ip +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x0dd9f4ba rdma_get_gid_attr +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x0ea5cc56 rdma_restrack_del +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x10daf762 ib_create_qp_security +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x134fbcab ib_modify_port +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x184621a4 ib_get_rdma_header_version +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x191b5698 rdma_rw_ctx_signature_init +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x1b037462 __rdma_block_iter_start +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x1d736b31 rdma_rw_ctx_destroy +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x213d7235 rdma_rw_mr_factor +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x22f3cf93 ib_pack +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x23b6d092 rdma_port_get_link_layer +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x2412be1f ib_create_send_mad +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x2a1e6c45 ib_get_eth_speed +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x2a91bb33 ib_cache_gid_type_str +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x2aa23be1 ib_free_recv_mad +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x2ac3666c ib_find_exact_cached_pkey +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x2df1cbfa rdma_restrack_set_task +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x305e5701 rdma_addr_size_kss +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x30ed1266 rdma_link_unregister +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x329d5be3 ib_unregister_event_handler +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x32af1761 ib_unregister_mad_agent +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x32c5b6bb ib_device_get_by_netdev +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x35d4d464 rdma_init_netdev +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x36cebe80 rdma_rw_ctx_post +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x39250346 rdma_query_ah +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x3b962ceb ib_resize_cq +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x3beac6c8 rdma_nl_put_driver_u32 +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x3d6fd66e ib_get_vf_config +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x3d74cb4d ib_set_vf_link_state +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x3e13307c rdma_read_gid_l2_fields +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x3fa57a5b rdma_dev_access_netns +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x3fc2387c ib_ud_header_unpack +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x3fe4687b rdma_nl_put_driver_u64 +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x41f83c46 ib_map_mr_sg +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x42114202 ib_create_ah_from_wc +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 0x44926c19 ib_rdmacg_try_charge +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x45955483 ibnl_put_attr +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x45fb8985 rdma_nl_chk_listeners +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x46aa1487 rdma_nl_register +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x49e86a0e ib_get_gids_from_rdma_hdr +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x4ad06850 ib_modify_srq +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x4b97130b rdma_user_mmap_entry_insert +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x4c610773 ib_mr_pool_get +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x4c6a7b88 ib_alloc_mr_integrity +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x4d334cfb ib_cancel_mad +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x4de3b602 rdma_replace_ah_attr +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x4e155af0 ib_response_mad +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x4e5c7bc2 ib_advise_mr +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x4e90435c ib_sa_free_multicast +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x50734f08 ib_query_qp +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x50c95d41 ib_open_qp +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x50ebb722 ib_dealloc_xrcd +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x52c47569 ib_sa_service_rec_query +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x53cbbda6 ibdev_printk +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x5458e8d5 rdma_find_gid +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x54cdec1b ib_set_device_ops +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x562dfb8c rdma_copy_src_l2_addr +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x568aa793 ib_map_mr_sg_pi +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x56db8ad8 ib_register_device +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x5a0d2b97 rdma_nl_multicast +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x5a2bf9f4 ib_get_device_fw_str +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x5c50c0f5 rdma_nl_stat_hwcounter_entry +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x5c700355 rdma_resolve_ip +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x5cc0bbc8 ibdev_notice +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x5d35884f rdma_read_gid_attr_ndev_rcu +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x5e4ee397 rdma_create_ah +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x5faf623d ib_drain_rq +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x60a24b69 ib_get_cached_lmc +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x613b1e2e ib_is_mad_class_rmpp +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x6140220c rdma_read_gid_hw_context +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x61ace295 rdma_nl_unicast_wait +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x61d24c52 ib_rate_to_mbps +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x624de0e9 ib_create_srq_user +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x62787433 ib_get_cached_subnet_prefix +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x62ca45a5 ib_alloc_mr_user +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x645914a4 ib_unregister_client +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x645f3cd5 ib_create_qp +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x65782f91 ib_unregister_device_queued +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x66cd15d8 ib_destroy_rwq_ind_table +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x685340b7 ib_unregister_device +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x6959f2dc rdma_addr_cancel +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x6a76f209 rdma_destroy_ah_attr +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x6ab6be47 ib_set_vf_guid +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x6b958320 ib_ud_ip4_csum +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x6bcc01ee ibdev_alert +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x6d02f5d4 ib_create_wq +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x6dd68d4f ib_dealloc_device +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x6df74c4b rdma_roce_rescan_device +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x6e25e173 ib_modify_mad +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x6f3614b6 rdma_is_zero_gid +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x70301f05 ib_post_send_mad +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x7249e8ae ib_dealloc_pd_user +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x72f8da2f ib_close_qp +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x7306feba rdma_user_mmap_entry_get_pgoff +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x738026e9 rdma_create_user_ah +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x75a729a0 rdma_nl_unregister +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x787ccc4c ib_get_mad_data_offset +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x7944b3c6 rdma_link_register +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x7b56b034 ib_unregister_driver +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x7c875f18 rdma_user_mmap_entry_insert_range +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x7caa59ef ib_detach_mcast +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x7cb8f49e ib_modify_device +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x7cbeea16 __ib_create_cq +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x7e93d8a3 rdma_query_gid +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x8438e99b ib_get_rmpp_segment +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x86cef180 rdma_addr_size +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x8765b915 ib_find_gid +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x87daf58f ib_mr_pool_init +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x8a41329d ib_device_set_netdev +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x8e7528da __rdma_block_iter_next +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x90e807c7 ib_cache_gid_parse_type_str +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x921d3943 _ib_alloc_device +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x9268ba9b rdma_find_gid_by_port +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x9378acfa rdma_user_mmap_entry_remove +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x9454a83d ib_sa_path_rec_get +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x94843463 rdma_restrack_get +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x966125a5 rdma_hold_gid_attr +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x9854a958 ib_query_pkey +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x988cffda rdma_restrack_put +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x993551bd ibdev_warn +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x9d53fa1a ib_drain_sq +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x9da81117 __ib_alloc_xrcd +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x9dc63365 ib_get_vf_stats +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x9dfc8eb3 ibnl_put_msg +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xa1b3f469 ib_free_cq +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xa3f05c85 ib_device_put +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xa4003a64 ib_get_cached_port_state +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xa432baf6 ib_unpack +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xa5ee32fe ib_destroy_cq_user +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xa6c9c03e ib_find_cached_pkey +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xa7891250 __ib_alloc_cq +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xa8c73a42 ib_init_ah_attr_from_path +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xa9f4cfd5 ib_sg_to_pages +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xaa53a700 rdma_nl_put_driver_string +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xabdf1858 ib_init_ah_from_mcmember +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xabf95b40 ib_query_srq +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xac2f7025 ib_query_port +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xacf76742 rdma_rw_ctx_wrs +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xad93e621 ib_sa_get_mcmember_rec +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xae956dce ib_rate_to_mult +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xaf6cfc26 ibdev_info +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xaf92c733 ib_free_send_mad +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xaff9573a ib_modify_wq +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xb254b795 __ib_alloc_pd +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xb36e4148 ib_sa_pack_path +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xb4675ee3 rdma_restrack_count +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xb4bd5412 rdma_restrack_kadd +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xb5d73e53 ib_set_client_data +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xb7684d66 ibdev_emerg +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xb7852a05 ib_ud_header_init +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xb7b812e5 rdma_user_mmap_io +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xb889518e ib_init_ah_attr_from_wc +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xbf82f6ed ib_create_rwq_ind_table +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xc1cfb606 ib_port_register_module_stat +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xc2f22788 rdma_nl_put_driver_u64_hex +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xc49a1112 ib_register_client +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xc4dbce51 rdma_rw_ctx_init +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xc5920619 ib_unregister_device_and_put +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xc6baf655 ib_destroy_wq +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xc6d5fa52 ib_get_cached_pkey +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xc7f04b69 rdma_restrack_uadd +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xc8f4a245 rdma_modify_ah +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xcb92a685 ib_sa_sendonly_fullmem_support +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xcbac8f83 ib_mr_pool_destroy +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xceabb7a7 ib_get_vf_guid +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xcf3e03eb ibdev_crit +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xd00140c7 rdma_nl_unicast +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xd147a28c rdma_alloc_netdev +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xd1e2d3dd ib_check_mr_status +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xd3eaf5eb ib_cq_pool_put +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xd483f68e ib_mad_kernel_rmpp_agent +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xd4f55107 ib_attach_mcast +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xd6636ca6 rdma_addr_size_in6 +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xd6e65d77 ib_modify_qp_is_ok +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xd9ee03d8 rdma_user_mmap_entry_put +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xda0d50ec ib_sa_cancel_query +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xddda5204 ib_rdmacg_uncharge +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xe2bd914c ib_port_unregister_module_stat +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xe36d9b84 ib_destroy_srq_user +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xe46a862d ib_destroy_qp_user +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xe5840ec6 ib_wc_status_msg +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xe5a78c1e ib_sa_unpack_path +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xe64ec365 rdma_nl_put_driver_u32_hex +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xe6b08988 rdma_rw_ctx_destroy_signature +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xe7b52e5f mult_to_ib_rate +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xe8bc4ca9 ib_drain_qp +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xe91e9037 rdma_restrack_get_byid +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xe9e799fc ib_ud_header_pack +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xeb64e590 rdma_move_ah_attr +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xebf25c6a ib_find_pkey +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xec1e0d76 ib_sa_guid_info_rec_query +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xec383b50 ib_dispatch_event +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xed2f36fb rdma_copy_ah_attr +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xef839cf3 rdma_umap_priv_init +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xefce2f62 ib_mr_pool_put +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xf0d3cb11 rdma_user_mmap_entry_get +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xf1da3a1c rdma_move_grh_sgid_attr +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xf3536ed8 ib_dereg_mr_user +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xf38b7e81 rdma_destroy_ah_user +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xf4f4e8b9 ib_sa_join_multicast +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 0xf81ac3cc ib_process_cq_direct +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xf871eedd rdma_set_cq_moderation +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xfad206fd ib_modify_qp +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xfb8c60ac __ib_alloc_cq_any +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xfe4b5475 ib_reg_user_mr +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xff5f64d1 ibdev_err +EXPORT_SYMBOL drivers/infiniband/core/ib_uverbs 0x005844ca uverbs_finalize_uobj_create +EXPORT_SYMBOL drivers/infiniband/core/ib_uverbs 0x0b5e914c ib_umem_odp_release +EXPORT_SYMBOL drivers/infiniband/core/ib_uverbs 0x1b54bd5d ib_copy_path_rec_from_user +EXPORT_SYMBOL drivers/infiniband/core/ib_uverbs 0x1dd90f26 uverbs_uobject_put +EXPORT_SYMBOL drivers/infiniband/core/ib_uverbs 0x1e09efa9 ib_umem_odp_alloc_child +EXPORT_SYMBOL drivers/infiniband/core/ib_uverbs 0x2d5ea816 uverbs_copy_to +EXPORT_SYMBOL drivers/infiniband/core/ib_uverbs 0x2f4d84fb uverbs_destroy_def_handler +EXPORT_SYMBOL drivers/infiniband/core/ib_uverbs 0x345d2f35 ib_umem_odp_unmap_dma_pages +EXPORT_SYMBOL drivers/infiniband/core/ib_uverbs 0x3c3ba796 flow_resources_add +EXPORT_SYMBOL drivers/infiniband/core/ib_uverbs 0x3fd8e3de ib_copy_qp_attr_to_user +EXPORT_SYMBOL drivers/infiniband/core/ib_uverbs 0x48d9d98f ib_copy_ah_attr_to_user +EXPORT_SYMBOL drivers/infiniband/core/ib_uverbs 0x53211740 ib_umem_odp_map_dma_pages +EXPORT_SYMBOL drivers/infiniband/core/ib_uverbs 0x59c093e3 flow_resources_alloc +EXPORT_SYMBOL drivers/infiniband/core/ib_uverbs 0x63057f4b ib_copy_path_rec_to_user +EXPORT_SYMBOL drivers/infiniband/core/ib_uverbs 0x68caaccd ib_umem_release +EXPORT_SYMBOL drivers/infiniband/core/ib_uverbs 0x6be5271c ib_uverbs_flow_resources_free +EXPORT_SYMBOL drivers/infiniband/core/ib_uverbs 0x7016d286 uverbs_get_flags64 +EXPORT_SYMBOL drivers/infiniband/core/ib_uverbs 0x75a3d3f0 ib_umem_odp_get +EXPORT_SYMBOL drivers/infiniband/core/ib_uverbs 0x79abe361 ib_umem_copy_from +EXPORT_SYMBOL drivers/infiniband/core/ib_uverbs 0x8213b97e ib_umem_find_best_pgsz +EXPORT_SYMBOL drivers/infiniband/core/ib_uverbs 0x865f1c93 _uverbs_get_const +EXPORT_SYMBOL drivers/infiniband/core/ib_uverbs 0x9a01d3d2 ib_uverbs_get_ucontext_file +EXPORT_SYMBOL drivers/infiniband/core/ib_uverbs 0x9ff0eb8d ib_umem_odp_alloc_implicit +EXPORT_SYMBOL drivers/infiniband/core/ib_uverbs 0xbc228227 ib_umem_get +EXPORT_SYMBOL drivers/infiniband/core/ib_uverbs 0xc1bc8c13 uverbs_fd_class +EXPORT_SYMBOL drivers/infiniband/core/ib_uverbs 0xc3e574a8 uverbs_uobject_fd_release +EXPORT_SYMBOL drivers/infiniband/core/ib_uverbs 0xcff9d0f0 ib_umem_page_count +EXPORT_SYMBOL drivers/infiniband/core/ib_uverbs 0xdaedf525 uverbs_get_flags32 +EXPORT_SYMBOL drivers/infiniband/core/ib_uverbs 0xf348073d _uverbs_alloc +EXPORT_SYMBOL drivers/infiniband/core/ib_uverbs 0xf3e836dc uverbs_idr_class +EXPORT_SYMBOL drivers/infiniband/core/iw_cm 0x1ec62646 iw_cm_reject +EXPORT_SYMBOL drivers/infiniband/core/iw_cm 0x21fafd34 iw_cm_listen +EXPORT_SYMBOL drivers/infiniband/core/iw_cm 0x36bba074 iw_cm_accept +EXPORT_SYMBOL drivers/infiniband/core/iw_cm 0x5402cb97 iw_create_cm_id +EXPORT_SYMBOL drivers/infiniband/core/iw_cm 0x784ef84b iw_cm_disconnect +EXPORT_SYMBOL drivers/infiniband/core/iw_cm 0x8438fb8b iw_cm_connect +EXPORT_SYMBOL drivers/infiniband/core/iw_cm 0xba9b7a21 iw_destroy_cm_id +EXPORT_SYMBOL drivers/infiniband/core/iw_cm 0xf3ba62fa iw_cm_init_qp_attr +EXPORT_SYMBOL drivers/infiniband/core/iw_cm 0xf3df871f iwcm_reject_msg +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0x0ad912b8 rdma_set_service_type +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0x23b63af3 __rdma_create_id +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0x25dfe157 __rdma_accept_ece +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0x2e456a7d rdma_set_reuseaddr +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0x3c906f33 rdma_reject_msg +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0x40ee430b rdma_set_ack_timeout +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0x4e908bb5 rdma_res_to_id +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0x50a4ccfb rdma_iw_cm_id +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0x59ff9a3c rdma_destroy_qp +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0x5c5521a7 __rdma_accept +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0x63d68f4f rdma_listen +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0x7085b612 rdma_leave_multicast +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0x75d893b7 rdma_resolve_route +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0x7cd84b7a rdma_create_qp +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0x7d983128 rdma_disconnect +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0x81240114 rdma_get_service_id +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0x82aad8c9 rdma_connect_ece +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0x907df803 rdma_event_msg +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0xa4dc96ba rdma_destroy_id +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0xa5ab7c4c rdma_notify +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0xa8bdf222 rdma_set_ib_path +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0xaefb5cdf rdma_resolve_addr +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0xb81f0623 rdma_consumer_reject_data +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0xc1028839 rdma_bind_addr +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0xcb231ce9 rdma_connect +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0xcc5978ea rdma_join_multicast +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0xdc08131c rdma_reject +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0xe7772628 rdma_read_gids +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0xec260d12 rdma_set_afonly +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0xfa0ac46c rdma_init_qp_attr +EXPORT_SYMBOL drivers/infiniband/ulp/rtrs/rtrs-client 0x052f1d0f rtrs_clt_open +EXPORT_SYMBOL drivers/infiniband/ulp/rtrs/rtrs-client 0x1f7fd2b4 rtrs_clt_query +EXPORT_SYMBOL drivers/infiniband/ulp/rtrs/rtrs-client 0x212a4e36 rtrs_clt_put_permit +EXPORT_SYMBOL drivers/infiniband/ulp/rtrs/rtrs-client 0x501f598d rtrs_permit_to_pdu +EXPORT_SYMBOL drivers/infiniband/ulp/rtrs/rtrs-client 0x6c3253cd rtrs_clt_request +EXPORT_SYMBOL drivers/infiniband/ulp/rtrs/rtrs-client 0x96a0c693 rtrs_clt_get_permit +EXPORT_SYMBOL drivers/infiniband/ulp/rtrs/rtrs-client 0xf27e5642 rtrs_clt_close +EXPORT_SYMBOL drivers/infiniband/ulp/rtrs/rtrs-core 0x5b01e41d sockaddr_to_str +EXPORT_SYMBOL drivers/infiniband/ulp/rtrs/rtrs-core 0x788372f6 rtrs_rdma_dev_pd_deinit +EXPORT_SYMBOL drivers/infiniband/ulp/rtrs/rtrs-core 0x887302f3 rtrs_addr_to_sockaddr +EXPORT_SYMBOL drivers/infiniband/ulp/rtrs/rtrs-core 0xb83aa38d rtrs_ib_dev_put +EXPORT_SYMBOL drivers/infiniband/ulp/rtrs/rtrs-core 0xdfdaadbf rtrs_rdma_dev_pd_init +EXPORT_SYMBOL drivers/infiniband/ulp/rtrs/rtrs-core 0xe659ac0b rtrs_ib_dev_find_or_add +EXPORT_SYMBOL drivers/infiniband/ulp/rtrs/rtrs-server 0x1e692803 rtrs_srv_resp_rdma +EXPORT_SYMBOL drivers/infiniband/ulp/rtrs/rtrs-server 0x8007effe rtrs_srv_get_queue_depth +EXPORT_SYMBOL drivers/infiniband/ulp/rtrs/rtrs-server 0x86e890f6 rtrs_srv_get_sess_name +EXPORT_SYMBOL drivers/infiniband/ulp/rtrs/rtrs-server 0xa2b03ab2 rtrs_srv_set_sess_priv +EXPORT_SYMBOL drivers/infiniband/ulp/rtrs/rtrs-server 0xbb018650 rtrs_srv_open +EXPORT_SYMBOL drivers/infiniband/ulp/rtrs/rtrs-server 0xc97e5374 rtrs_srv_close +EXPORT_SYMBOL drivers/input/gameport/gameport 0x1148f95f gameport_unregister_port +EXPORT_SYMBOL drivers/input/gameport/gameport 0x187c8d94 gameport_close +EXPORT_SYMBOL drivers/input/gameport/gameport 0x5ea6fdc1 gameport_set_phys +EXPORT_SYMBOL drivers/input/gameport/gameport 0x67f4c5ce gameport_open +EXPORT_SYMBOL drivers/input/gameport/gameport 0x80830003 gameport_unregister_driver +EXPORT_SYMBOL drivers/input/gameport/gameport 0xa5963f03 __gameport_register_driver +EXPORT_SYMBOL drivers/input/gameport/gameport 0xb2337de3 __gameport_register_port +EXPORT_SYMBOL drivers/input/gameport/gameport 0xb96ede26 gameport_stop_polling +EXPORT_SYMBOL drivers/input/gameport/gameport 0xfd265ce5 gameport_start_polling +EXPORT_SYMBOL drivers/input/input-polldev 0x46e1c27f input_register_polled_device +EXPORT_SYMBOL drivers/input/input-polldev 0x938ae098 input_allocate_polled_device +EXPORT_SYMBOL drivers/input/input-polldev 0xad45be3c input_unregister_polled_device +EXPORT_SYMBOL drivers/input/input-polldev 0xc43f0a03 devm_input_allocate_polled_device +EXPORT_SYMBOL drivers/input/input-polldev 0xdbe3066f input_free_polled_device +EXPORT_SYMBOL drivers/input/joystick/iforce/iforce 0x5025c468 iforce_send_packet +EXPORT_SYMBOL drivers/input/joystick/iforce/iforce 0x57cdc58f iforce_init_device +EXPORT_SYMBOL drivers/input/joystick/iforce/iforce 0xeaef1c8d iforce_process_packet +EXPORT_SYMBOL drivers/input/matrix-keymap 0xeb273648 matrix_keypad_build_keymap +EXPORT_SYMBOL drivers/input/misc/ad714x 0x16ae0f93 ad714x_probe +EXPORT_SYMBOL drivers/input/misc/ad714x 0x199fcb76 ad714x_enable +EXPORT_SYMBOL drivers/input/misc/ad714x 0x95a0c7ab ad714x_disable +EXPORT_SYMBOL drivers/input/misc/cma3000_d0x 0x2d1f3534 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 0xf7bd4d39 rmi_unregister_transport_device +EXPORT_SYMBOL drivers/input/sparse-keymap 0x149aae15 sparse_keymap_entry_from_keycode +EXPORT_SYMBOL drivers/input/sparse-keymap 0x6a366064 sparse_keymap_report_entry +EXPORT_SYMBOL drivers/input/sparse-keymap 0x7b29940d sparse_keymap_setup +EXPORT_SYMBOL drivers/input/sparse-keymap 0xac158790 sparse_keymap_report_event +EXPORT_SYMBOL drivers/input/sparse-keymap 0xff314bcd sparse_keymap_entry_from_scancode +EXPORT_SYMBOL drivers/input/touchscreen/ad7879 0x821dabc7 ad7879_probe +EXPORT_SYMBOL drivers/input/touchscreen/ad7879 0x95e6a38d ad7879_pm_ops +EXPORT_SYMBOL drivers/isdn/capi/kernelcapi 0x1cd15984 attach_capi_ctr +EXPORT_SYMBOL drivers/isdn/capi/kernelcapi 0x2127335d capi_ctr_handle_message +EXPORT_SYMBOL drivers/isdn/capi/kernelcapi 0x2341a8f8 capi_ctr_ready +EXPORT_SYMBOL drivers/isdn/capi/kernelcapi 0x97ec965f detach_capi_ctr +EXPORT_SYMBOL drivers/isdn/capi/kernelcapi 0xb516a7ef capi_ctr_down +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 0x17c08ae5 mISDNipac_irq +EXPORT_SYMBOL drivers/isdn/hardware/mISDN/mISDNipac 0x77616eeb mISDNipac_init +EXPORT_SYMBOL drivers/isdn/hardware/mISDN/mISDNipac 0xb8b38e7a mISDNisac_irq +EXPORT_SYMBOL drivers/isdn/hardware/mISDN/mISDNipac 0xc25a6b7b mISDNisac_init +EXPORT_SYMBOL drivers/isdn/hardware/mISDN/mISDNisar 0x145e9f2e mISDNisar_init +EXPORT_SYMBOL drivers/isdn/hardware/mISDN/mISDNisar 0x8c9f848f mISDNisar_irq +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0x03a68066 mISDN_FsmRestartTimer +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0x1447f662 mISDN_freebchannel +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0x15abf9a3 mISDN_ctrl_bchannel +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0x17ca9311 mISDN_unregister_Bprotocol +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 0x2e873c9d get_next_bframe +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0x2fa6242a queue_ch_frame +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 0x3cc3c7e8 recv_Dchannel +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0x410eb925 bchannel_get_rxbuf +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 0x6047df40 mISDN_FsmInitTimer +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0x656ecb69 recv_Bchannel +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0x6df1a130 get_next_dframe +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0x6e5c1fa3 mISDN_initbchannel +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0x73cd346d create_l1 +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0x89f331ca mISDN_register_Bprotocol +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0x8ffb81bc bchannel_senddata +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0x96b1e193 mISDN_initdchannel +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0x9a2439c9 mISDN_clear_bchannel +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0x9c928457 mISDN_FsmNew +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0xa2bad452 mISDNDevName4ch +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0xb0cb8446 dchannel_senddata +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0xb1bffa0d mISDN_unregister_device +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0xb3d649eb recv_Echannel +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0xc3401729 mISDN_register_clock +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0xc4214776 recv_Dchannel_skb +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0xc4e5e98d mISDN_freedchannel +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0xc6e0a71f mISDN_register_device +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0xcc11271b recv_Bchannel_skb +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 0xe8f617eb mISDN_unregister_clock +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 0x0b7af884 ti_lmu_common_get_brt_res +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/leds/leds-ti-lmu-common 0xdcdd800a ti_lmu_common_get_ramp_params +EXPORT_SYMBOL drivers/mailbox/omap-mailbox 0xbaad1d1f omap_mbox_disable_irq +EXPORT_SYMBOL drivers/mailbox/omap-mailbox 0xd23c1331 omap_mbox_enable_irq +EXPORT_SYMBOL drivers/mailbox/omap-mailbox 0xeb200945 omap_mbox_request_channel +EXPORT_SYMBOL drivers/md/dm-log 0x0d41ddc3 dm_dirty_log_destroy +EXPORT_SYMBOL drivers/md/dm-log 0x112c7bee dm_dirty_log_type_register +EXPORT_SYMBOL drivers/md/dm-log 0xc6b71c4a dm_dirty_log_type_unregister +EXPORT_SYMBOL drivers/md/dm-log 0xfce4963d dm_dirty_log_create +EXPORT_SYMBOL drivers/md/dm-snapshot 0x01d4c8cc dm_exception_store_destroy +EXPORT_SYMBOL drivers/md/dm-snapshot 0x08029098 dm_exception_store_type_register +EXPORT_SYMBOL drivers/md/dm-snapshot 0x579759c8 dm_snap_origin +EXPORT_SYMBOL drivers/md/dm-snapshot 0x6ec5af02 dm_exception_store_type_unregister +EXPORT_SYMBOL drivers/md/dm-snapshot 0x7d2f6c6f dm_exception_store_create +EXPORT_SYMBOL drivers/md/dm-snapshot 0xef5776a2 dm_snap_cow +EXPORT_SYMBOL drivers/md/raid456 0x4588250f r5c_journal_mode_set +EXPORT_SYMBOL drivers/md/raid456 0x860065f1 raid5_set_cache_size +EXPORT_SYMBOL drivers/media/common/b2c2/b2c2-flexcop 0x1759724a flexcop_device_kmalloc +EXPORT_SYMBOL drivers/media/common/b2c2/b2c2-flexcop 0x22af7535 flexcop_pass_dmx_data +EXPORT_SYMBOL drivers/media/common/b2c2/b2c2-flexcop 0x3ae86b3e flexcop_eeprom_check_mac_addr +EXPORT_SYMBOL drivers/media/common/b2c2/b2c2-flexcop 0x4fc20426 flexcop_pid_feed_control +EXPORT_SYMBOL drivers/media/common/b2c2/b2c2-flexcop 0x53891b55 flexcop_device_kfree +EXPORT_SYMBOL drivers/media/common/b2c2/b2c2-flexcop 0x6a9cb9eb flexcop_device_initialize +EXPORT_SYMBOL drivers/media/common/b2c2/b2c2-flexcop 0x6be474a2 flexcop_i2c_request +EXPORT_SYMBOL drivers/media/common/b2c2/b2c2-flexcop 0x6cf0ddba flexcop_dump_reg +EXPORT_SYMBOL drivers/media/common/b2c2/b2c2-flexcop 0x7b0fd751 flexcop_sram_ctrl +EXPORT_SYMBOL drivers/media/common/b2c2/b2c2-flexcop 0xc4dce7ad flexcop_sram_set_dest +EXPORT_SYMBOL drivers/media/common/b2c2/b2c2-flexcop 0xd0824b61 flexcop_wan_set_speed +EXPORT_SYMBOL drivers/media/common/b2c2/b2c2-flexcop 0xdf48c39a flexcop_device_exit +EXPORT_SYMBOL drivers/media/common/b2c2/b2c2-flexcop 0xff55252b flexcop_pass_dmx_packets +EXPORT_SYMBOL drivers/media/common/cx2341x 0x55aa7c5f cx2341x_mpeg_ctrls +EXPORT_SYMBOL drivers/media/common/cx2341x 0x5c220801 cx2341x_handler_set_50hz +EXPORT_SYMBOL drivers/media/common/cx2341x 0x754f49d3 cx2341x_handler_set_busy +EXPORT_SYMBOL drivers/media/common/cx2341x 0x8d3a49fd cx2341x_ctrl_get_menu +EXPORT_SYMBOL drivers/media/common/cx2341x 0xa7d9eaf9 cx2341x_handler_setup +EXPORT_SYMBOL drivers/media/common/cx2341x 0xb9c8f3f1 cx2341x_update +EXPORT_SYMBOL drivers/media/common/cx2341x 0xc889377e cx2341x_log_status +EXPORT_SYMBOL drivers/media/common/cx2341x 0xdaff62f9 cx2341x_fill_defaults +EXPORT_SYMBOL drivers/media/common/cx2341x 0xe197a5dd cx2341x_ext_ctrls +EXPORT_SYMBOL drivers/media/common/cx2341x 0xeb854f47 cx2341x_ctrl_query +EXPORT_SYMBOL drivers/media/common/cx2341x 0xf2dfe25b cx2341x_handler_init +EXPORT_SYMBOL drivers/media/common/cypress_firmware 0xbd46fc42 cypress_load_firmware +EXPORT_SYMBOL drivers/media/common/tveeprom 0x0dbf0296 tveeprom_hauppauge_analog +EXPORT_SYMBOL drivers/media/common/tveeprom 0x662d0dc3 tveeprom_read +EXPORT_SYMBOL drivers/media/common/videobuf2/videobuf2-common 0x5a62f4f5 vb2_verify_memory_type +EXPORT_SYMBOL drivers/media/common/videobuf2/videobuf2-common 0x5b46d3d1 vb2_buffer_in_use +EXPORT_SYMBOL drivers/media/common/videobuf2/videobuf2-dvb 0x4a1fff9f vb2_dvb_unregister_bus +EXPORT_SYMBOL drivers/media/common/videobuf2/videobuf2-dvb 0x4e05b6a4 vb2_dvb_get_frontend +EXPORT_SYMBOL drivers/media/common/videobuf2/videobuf2-dvb 0x5c711459 vb2_dvb_dealloc_frontends +EXPORT_SYMBOL drivers/media/common/videobuf2/videobuf2-dvb 0xa223dc73 vb2_dvb_register_bus +EXPORT_SYMBOL drivers/media/common/videobuf2/videobuf2-dvb 0xa8bdfd5a vb2_dvb_find_frontend +EXPORT_SYMBOL drivers/media/common/videobuf2/videobuf2-dvb 0xb4a627f6 vb2_dvb_alloc_frontend +EXPORT_SYMBOL drivers/media/common/videobuf2/videobuf2-memops 0xa21fa765 vb2_create_framevec +EXPORT_SYMBOL drivers/media/common/videobuf2/videobuf2-memops 0xccd197c7 vb2_destroy_framevec +EXPORT_SYMBOL drivers/media/common/videobuf2/videobuf2-v4l2 0xb43c9785 vb2_querybuf +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x08733236 intlog10 +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x1d5929c4 dvb_remove_device +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x1e1603f1 dvb_generic_ioctl +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x1e40f5a6 dvb_ca_en50221_camready_irq +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x1ef340ed dvb_frontend_resume +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x2f5cdf80 dvb_ringbuffer_write +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x3b93d71a dvb_frontend_sleep_until +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x3feecaf6 dvb_dmx_swfilter_raw +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x4f88b07c dvb_unregister_frontend +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x544f5819 dvb_frontend_reinitialise +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 0x6238cdef dvb_register_device +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x66147815 dvb_dmxdev_release +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x67480317 dvb_dmx_init +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x72dec182 dvb_ca_en50221_camchange_irq +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x7751ad77 dvb_dmx_swfilter_204 +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x7b0d51ce dvb_dmx_release +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x7e652af0 dvb_free_device +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x80985cc4 dvb_dmx_swfilter +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x867d1e53 dvb_frontend_detach +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x872ed2bf dvb_dmxdev_init +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x8bf71894 dvb_generic_release +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x91a6794b dvb_ringbuffer_read_user +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x9a007362 dvb_frontend_suspend +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x9c3184be dvb_unregister_adapter +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0xaa943ecb dvb_ca_en50221_release +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0xb18d3ec4 dvb_net_release +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0xb3352dd2 dvb_ringbuffer_empty +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0xb35f4c38 dvb_net_init +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0xb3ca2812 dvb_ca_en50221_init +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0xbb0168bb dvb_ca_en50221_frda_irq +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0xc3f679f9 dvb_ringbuffer_write_user +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0xc8c36aae dvb_register_adapter +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0xd628cbdd dvb_register_frontend +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0xdcf60586 dvb_dmx_swfilter_packets +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0xe138ce6b dvb_ringbuffer_avail +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0xe685d7fd dvb_unregister_device +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0xebbc2d9b dvb_ringbuffer_init +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0xf083ea9f dvb_generic_open +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-frontends/ascot2e 0xe8af6c99 ascot2e_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/atbm8830 0x645b5756 atbm8830_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/au8522_common 0x06f99092 au8522_init +EXPORT_SYMBOL drivers/media/dvb-frontends/au8522_common 0x2378fa38 au8522_release_state +EXPORT_SYMBOL drivers/media/dvb-frontends/au8522_common 0x72777daf au8522_readreg +EXPORT_SYMBOL drivers/media/dvb-frontends/au8522_common 0x892057ea au8522_writereg +EXPORT_SYMBOL drivers/media/dvb-frontends/au8522_common 0x9d4fe0b5 au8522_sleep +EXPORT_SYMBOL drivers/media/dvb-frontends/au8522_common 0x9f683eed au8522_get_state +EXPORT_SYMBOL drivers/media/dvb-frontends/au8522_common 0xa156d9da au8522_analog_i2c_gate_ctrl +EXPORT_SYMBOL drivers/media/dvb-frontends/au8522_common 0xab885dce au8522_i2c_gate_ctrl +EXPORT_SYMBOL drivers/media/dvb-frontends/au8522_common 0xe099b30a au8522_led_ctrl +EXPORT_SYMBOL drivers/media/dvb-frontends/au8522_dig 0x5db4c025 au8522_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/bcm3510 0x63bd36d6 bcm3510_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/cx22700 0x32c7a633 cx22700_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/cx22702 0x53ce5750 cx22702_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/cx24110 0xaefe9067 cx24110_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/cx24113 0x4e8a9751 cx24113_agc_callback +EXPORT_SYMBOL drivers/media/dvb-frontends/cx24113 0xdccc45c2 cx24113_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/cx24116 0x1ab43d71 cx24116_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/cx24120 0xd66a3b8a cx24120_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/cx24123 0x1975c894 cx24123_get_tuner_i2c_adapter +EXPORT_SYMBOL drivers/media/dvb-frontends/cx24123 0x730717f2 cx24123_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/cxd2820r 0x330a6c1d cxd2820r_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/cxd2841er 0x20247f72 cxd2841er_attach_s +EXPORT_SYMBOL drivers/media/dvb-frontends/cxd2841er 0xb2a987d0 cxd2841er_attach_t_c +EXPORT_SYMBOL drivers/media/dvb-frontends/cxd2880/cxd2880 0xf2c748e2 cxd2880_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/dib0070 0x32a2c2c6 dib0070_ctrl_agc_filter +EXPORT_SYMBOL drivers/media/dvb-frontends/dib0070 0x5a927783 dib0070_get_rf_output +EXPORT_SYMBOL drivers/media/dvb-frontends/dib0070 0xa5ccaf42 dib0070_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/dib0070 0xb2e52c35 dib0070_set_rf_output +EXPORT_SYMBOL drivers/media/dvb-frontends/dib0070 0xfc9bdeb8 dib0070_wbd_offset +EXPORT_SYMBOL drivers/media/dvb-frontends/dib0090 0x0391c4dd dib0090_get_tune_state +EXPORT_SYMBOL drivers/media/dvb-frontends/dib0090 0x0404ba82 dib0090_gain_control +EXPORT_SYMBOL drivers/media/dvb-frontends/dib0090 0x1f30ad0e dib0090_dcc_freq +EXPORT_SYMBOL drivers/media/dvb-frontends/dib0090 0x2497e28a dib0090_fw_register +EXPORT_SYMBOL drivers/media/dvb-frontends/dib0090 0x46367c70 dib0090_update_tuning_table_7090 +EXPORT_SYMBOL drivers/media/dvb-frontends/dib0090 0x494d598f dib0090_get_wbd_offset +EXPORT_SYMBOL drivers/media/dvb-frontends/dib0090 0x777df173 dib0090_register +EXPORT_SYMBOL drivers/media/dvb-frontends/dib0090 0x7f0e357e dib0090_pwm_gain_reset +EXPORT_SYMBOL drivers/media/dvb-frontends/dib0090 0x7ffee013 dib0090_update_rframp_7090 +EXPORT_SYMBOL drivers/media/dvb-frontends/dib0090 0x8685347e dib0090_set_vga +EXPORT_SYMBOL drivers/media/dvb-frontends/dib0090 0x94d4168b dib0090_get_wbd_target +EXPORT_SYMBOL drivers/media/dvb-frontends/dib0090 0x9f21180a dib0090_set_dc_servo +EXPORT_SYMBOL drivers/media/dvb-frontends/dib0090 0xb784bd60 dib0090_get_current_gain +EXPORT_SYMBOL drivers/media/dvb-frontends/dib0090 0xd4573270 dib0090_set_tune_state +EXPORT_SYMBOL drivers/media/dvb-frontends/dib0090 0xff5ba502 dib0090_set_switch +EXPORT_SYMBOL drivers/media/dvb-frontends/dib3000mb 0x7141489d dib3000mb_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/dib3000mc 0x09b9d5fa dib3000mc_i2c_enumeration +EXPORT_SYMBOL drivers/media/dvb-frontends/dib3000mc 0x1ebf657f dib3000mc_pid_control +EXPORT_SYMBOL drivers/media/dvb-frontends/dib3000mc 0x5a2d81ec dib3000mc_set_config +EXPORT_SYMBOL drivers/media/dvb-frontends/dib3000mc 0x5d91b0a7 dib3000mc_pid_parse +EXPORT_SYMBOL drivers/media/dvb-frontends/dib3000mc 0x9b18e396 dib3000mc_get_tuner_i2c_master +EXPORT_SYMBOL drivers/media/dvb-frontends/dib3000mc 0x9d6c0bc4 dib3000mc_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/dib7000m 0x034aed90 dib7000m_get_i2c_master +EXPORT_SYMBOL drivers/media/dvb-frontends/dib7000m 0x70ef9252 dib7000m_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/dib7000m 0xd0639f59 dib7000m_pid_filter_ctrl +EXPORT_SYMBOL drivers/media/dvb-frontends/dib7000m 0xfbc7a20d dib7000m_pid_filter +EXPORT_SYMBOL drivers/media/dvb-frontends/dib7000p 0x3e9fc45b dib7000p_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/dib8000 0x7d0797c7 dib8000_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/dib9000 0x0756c93f dib9000_i2c_enumeration +EXPORT_SYMBOL drivers/media/dvb-frontends/dib9000 0x35ca5819 dib9000_fw_set_component_bus_speed +EXPORT_SYMBOL drivers/media/dvb-frontends/dib9000 0x439bf080 dib9000_fw_pid_filter +EXPORT_SYMBOL drivers/media/dvb-frontends/dib9000 0x49daef31 dib9000_get_tuner_interface +EXPORT_SYMBOL drivers/media/dvb-frontends/dib9000 0x4aad1327 dib9000_set_gpio +EXPORT_SYMBOL drivers/media/dvb-frontends/dib9000 0x7cb7a764 dib9000_get_i2c_master +EXPORT_SYMBOL drivers/media/dvb-frontends/dib9000 0x7e84ca54 dib9000_firmware_post_pll_init +EXPORT_SYMBOL drivers/media/dvb-frontends/dib9000 0x85678ade dib9000_get_slave_frontend +EXPORT_SYMBOL drivers/media/dvb-frontends/dib9000 0x9a3ee639 dib9000_fw_pid_filter_ctrl +EXPORT_SYMBOL drivers/media/dvb-frontends/dib9000 0xc191cf82 dib9000_get_component_bus_interface +EXPORT_SYMBOL drivers/media/dvb-frontends/dib9000 0xcb3f65c8 dib9000_set_slave_frontend +EXPORT_SYMBOL drivers/media/dvb-frontends/dib9000 0xd6d3db64 dib9000_set_i2c_adapter +EXPORT_SYMBOL drivers/media/dvb-frontends/dib9000 0xf0a437c9 dib9000_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/dibx000_common 0x45c8cefd dibx000_reset_i2c_master +EXPORT_SYMBOL drivers/media/dvb-frontends/dibx000_common 0xa3498bba dibx000_exit_i2c_master +EXPORT_SYMBOL drivers/media/dvb-frontends/dibx000_common 0xab5ffa4a dibx000_i2c_set_speed +EXPORT_SYMBOL drivers/media/dvb-frontends/dibx000_common 0xc53c150c dibx000_get_i2c_adapter +EXPORT_SYMBOL drivers/media/dvb-frontends/dibx000_common 0xf4958821 dibx000_init_i2c_master +EXPORT_SYMBOL drivers/media/dvb-frontends/drx39xyj/drx39xyj 0x5bae7dbe drx39xxj_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/drxd 0x6e4a34f2 drxd_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/drxk 0xb3328582 drxk_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/ds3000 0x81bed722 ds3000_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/dvb-pll 0xaa4d8f11 dvb_pll_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/dvb_dummy_fe 0x4d242282 dvb_dummy_fe_qpsk_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/dvb_dummy_fe 0xc39b37d8 dvb_dummy_fe_qam_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/dvb_dummy_fe 0xe6ea06ea dvb_dummy_fe_ofdm_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/ec100 0xde10c6ad ec100_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/helene 0x47a32795 helene_attach_s +EXPORT_SYMBOL drivers/media/dvb-frontends/helene 0x4eb52b67 helene_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/horus3a 0x4fbf6e55 horus3a_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/isl6405 0x4364542a isl6405_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/isl6421 0x4218db64 isl6421_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/isl6423 0x24b30b20 isl6423_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/itd1000 0x4de630b5 itd1000_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/ix2505v 0xd7669708 ix2505v_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/l64781 0x214a3bfc l64781_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/lg2160 0x461cbb11 lg2160_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/lgdt3305 0x546e5bb4 lgdt3305_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/lgdt3306a 0xa464fda8 lgdt3306a_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/lgdt330x 0x7b2bc36c lgdt330x_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/lgs8gl5 0x424309c8 lgs8gl5_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/lgs8gxx 0x7b4ca69c lgs8gxx_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/lnbh25 0xaff6d6bc lnbh25_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/lnbh29 0x78a5a368 lnbh29_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/lnbp21 0x2266310e lnbp21_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/lnbp21 0x65229003 lnbh24_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/lnbp22 0x21295a1a lnbp22_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/m88ds3103 0x70bc3c96 m88ds3103_get_agc_pwm +EXPORT_SYMBOL drivers/media/dvb-frontends/m88ds3103 0xad19ce7f m88ds3103_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/m88rs2000 0xeec9e3f1 m88rs2000_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/mb86a16 0x4958c815 mb86a16_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/mb86a20s 0x582f42f4 mb86a20s_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/mt312 0xb4bbd878 mt312_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/mt352 0x6d9ea5ae mt352_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/nxt200x 0x7cf7e010 nxt200x_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/nxt6000 0xa09c259a nxt6000_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/or51132 0xc312af32 or51132_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/or51211 0x1509574e or51211_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/s5h1409 0xbf2039c8 s5h1409_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/s5h1411 0x14b04b97 s5h1411_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/s5h1420 0x565a72c4 s5h1420_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/s5h1420 0xc00ba413 s5h1420_get_tuner_i2c_adapter +EXPORT_SYMBOL drivers/media/dvb-frontends/s5h1432 0xbce1110e s5h1432_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/s921 0x479c8c4b s921_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/si21xx 0x8b95e84b si21xx_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/sp8870 0x873c3be5 sp8870_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/sp887x 0x2ee40278 sp887x_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/stb0899 0x799b8abb stb0899_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/stb6000 0xf41b18c1 stb6000_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/stb6100 0x8db65ed8 stb6100_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/stv0288 0xcda91bfd stv0288_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/stv0297 0xf13e1f96 stv0297_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/stv0299 0x15191cd1 stv0299_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/stv0367 0x14039c51 stv0367ddb_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/stv0367 0x2a64b780 stv0367cab_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/stv0367 0xf2e44613 stv0367ter_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/stv0900 0xd5c9a59d stv0900_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/stv090x 0x6ced4f01 stv090x_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/stv6110 0xf4729d0d stv6110_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/stv6110x 0xa400b89d stv6110x_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/tda10021 0x4afb8690 tda10021_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/tda10023 0xc4bb57a1 tda10023_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/tda10048 0x5d0a5fde tda10048_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/tda1004x 0x20e6443e tda10045_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/tda1004x 0xeae260ea tda10046_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/tda10086 0x485bc6bd tda10086_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/tda665x 0xe2527fcb tda665x_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/tda8083 0x9c364a3e tda8083_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/tda8261 0x3fa1e3a8 tda8261_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/tda826x 0x08ce7b03 tda826x_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/ts2020 0x00e05f58 ts2020_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/tua6100 0xc8dac900 tua6100_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/ves1820 0x270d415e ves1820_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/ves1x93 0x1334de6d ves1x93_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/zd1301_demod 0x7cea0770 zd1301_demod_get_dvb_frontend +EXPORT_SYMBOL drivers/media/dvb-frontends/zd1301_demod 0xaa668b4a zd1301_demod_get_i2c_adapter +EXPORT_SYMBOL drivers/media/dvb-frontends/zl10036 0x549deecb zl10036_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/zl10039 0x6b53dad0 zl10039_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/zl10353 0xa8d12393 zl10353_attach +EXPORT_SYMBOL drivers/media/pci/b2c2/b2c2-flexcop-pci 0x176d5dda flexcop_dma_config +EXPORT_SYMBOL drivers/media/pci/b2c2/b2c2-flexcop-pci 0x19582e92 flexcop_dma_control_size_irq +EXPORT_SYMBOL drivers/media/pci/b2c2/b2c2-flexcop-pci 0x314e101d flexcop_dma_control_timer_irq +EXPORT_SYMBOL drivers/media/pci/b2c2/b2c2-flexcop-pci 0x51216e9e flexcop_dma_allocate +EXPORT_SYMBOL drivers/media/pci/b2c2/b2c2-flexcop-pci 0x651b4867 flexcop_dma_free +EXPORT_SYMBOL drivers/media/pci/b2c2/b2c2-flexcop-pci 0x935c800b flexcop_dma_config_timer +EXPORT_SYMBOL drivers/media/pci/b2c2/b2c2-flexcop-pci 0xad90c643 flexcop_dma_xfer_control +EXPORT_SYMBOL drivers/media/pci/bt8xx/bt878 0x45de6471 bt878_stop +EXPORT_SYMBOL drivers/media/pci/bt8xx/bt878 0x6a8fb8bb bt878_device_control +EXPORT_SYMBOL drivers/media/pci/bt8xx/bt878 0x8b607e0a bt878 +EXPORT_SYMBOL drivers/media/pci/bt8xx/bt878 0xd5d0bdef bt878_num +EXPORT_SYMBOL drivers/media/pci/bt8xx/bt878 0xd9ee77c2 bt878_start +EXPORT_SYMBOL drivers/media/pci/bt8xx/bttv 0x11dc4b6d bttv_gpio_enable +EXPORT_SYMBOL drivers/media/pci/bt8xx/bttv 0x468e66b9 bttv_get_pcidev +EXPORT_SYMBOL drivers/media/pci/bt8xx/bttv 0x5a6d141f bttv_sub_unregister +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/bttv 0xd91f965d bttv_sub_register +EXPORT_SYMBOL drivers/media/pci/bt8xx/dst 0x1b0f4f71 rdc_reset_state +EXPORT_SYMBOL drivers/media/pci/bt8xx/dst 0x43a983fd dst_check_sum +EXPORT_SYMBOL drivers/media/pci/bt8xx/dst 0x6280ce73 dst_wait_dst_ready +EXPORT_SYMBOL drivers/media/pci/bt8xx/dst 0x7c7ff1d7 dst_comm_init +EXPORT_SYMBOL drivers/media/pci/bt8xx/dst 0x81ea54a2 dst_error_recovery +EXPORT_SYMBOL drivers/media/pci/bt8xx/dst 0x925c2302 dst_pio_disable +EXPORT_SYMBOL drivers/media/pci/bt8xx/dst 0x96bb2a1a dst_error_bailout +EXPORT_SYMBOL drivers/media/pci/bt8xx/dst 0xabb8134f dst_attach +EXPORT_SYMBOL drivers/media/pci/bt8xx/dst 0xb8a636dc write_dst +EXPORT_SYMBOL drivers/media/pci/bt8xx/dst 0xf2b78399 read_dst +EXPORT_SYMBOL drivers/media/pci/bt8xx/dst_ca 0xefcccc3c dst_ca_attach +EXPORT_SYMBOL drivers/media/pci/cx18/cx18 0x195a44b2 cx18_stop_v4l2_encode_stream +EXPORT_SYMBOL drivers/media/pci/cx18/cx18 0x2cdea06d cx18_reset_ir_gpio +EXPORT_SYMBOL drivers/media/pci/cx18/cx18 0x3204e86d cx18_claim_stream +EXPORT_SYMBOL drivers/media/pci/cx18/cx18 0x947a5e79 cx18_ext_init +EXPORT_SYMBOL drivers/media/pci/cx18/cx18 0xaefafc88 cx18_start_v4l2_encode_stream +EXPORT_SYMBOL drivers/media/pci/cx18/cx18 0xf08058da cx18_release_stream +EXPORT_SYMBOL drivers/media/pci/cx23885/altera-ci 0x55e9d0ec altera_ci_init +EXPORT_SYMBOL drivers/media/pci/cx23885/altera-ci 0x6ff7510d altera_ci_tuner_reset +EXPORT_SYMBOL drivers/media/pci/cx23885/altera-ci 0xdb3faf38 altera_ci_release +EXPORT_SYMBOL drivers/media/pci/cx23885/altera-ci 0xe66b9812 altera_ci_irq +EXPORT_SYMBOL drivers/media/pci/cx25821/cx25821 0x00baa09c cx25821_sram_channel_dump_audio +EXPORT_SYMBOL drivers/media/pci/cx25821/cx25821 0x44b517f5 cx25821_print_irqbits +EXPORT_SYMBOL drivers/media/pci/cx25821/cx25821 0x48e2cf50 cx25821_sram_channel_setup_audio +EXPORT_SYMBOL drivers/media/pci/cx25821/cx25821 0x5d41f122 cx25821_dev_get +EXPORT_SYMBOL drivers/media/pci/cx25821/cx25821 0xbb973229 cx25821_risc_databuffer_audio +EXPORT_SYMBOL drivers/media/pci/cx25821/cx25821 0xd09db747 cx25821_set_gpiopin_direction +EXPORT_SYMBOL drivers/media/pci/cx25821/cx25821 0xe1da7d60 cx25821_riscmem_alloc +EXPORT_SYMBOL drivers/media/pci/cx25821/cx25821 0xe9050411 cx25821_sram_channels +EXPORT_SYMBOL drivers/media/pci/cx25821/cx25821 0xfc959da6 cx25821_dev_unregister +EXPORT_SYMBOL drivers/media/pci/cx88/cx88-vp3054-i2c 0x1f931133 vp3054_i2c_probe +EXPORT_SYMBOL drivers/media/pci/cx88/cx88-vp3054-i2c 0x4229bca3 vp3054_i2c_remove +EXPORT_SYMBOL drivers/media/pci/cx88/cx8800 0x40c1d062 cx88_video_mux +EXPORT_SYMBOL drivers/media/pci/cx88/cx8800 0x6cff48d2 cx88_querycap +EXPORT_SYMBOL drivers/media/pci/cx88/cx8800 0x9587e3d1 cx88_enum_input +EXPORT_SYMBOL drivers/media/pci/cx88/cx8800 0xd9dd2c3e cx88_set_freq +EXPORT_SYMBOL drivers/media/pci/cx88/cx8802 0x1472c3d8 cx8802_get_driver +EXPORT_SYMBOL drivers/media/pci/cx88/cx8802 0x3110041d cx8802_buf_queue +EXPORT_SYMBOL drivers/media/pci/cx88/cx8802 0x429fca63 cx8802_register_driver +EXPORT_SYMBOL drivers/media/pci/cx88/cx8802 0x57518a1c cx8802_start_dma +EXPORT_SYMBOL drivers/media/pci/cx88/cx8802 0x770f6162 cx8802_cancel_buffers +EXPORT_SYMBOL drivers/media/pci/cx88/cx8802 0xa89b1763 cx8802_buf_prepare +EXPORT_SYMBOL drivers/media/pci/cx88/cx8802 0xb22d56c5 cx8802_unregister_driver +EXPORT_SYMBOL drivers/media/pci/cx88/cx88xx 0x023d367f cx88_reset +EXPORT_SYMBOL drivers/media/pci/cx88/cx88xx 0x06d0d51a cx88_ir_start +EXPORT_SYMBOL drivers/media/pci/cx88/cx88xx 0x1c463e1c cx88_vdev_init +EXPORT_SYMBOL drivers/media/pci/cx88/cx88xx 0x1c608ba0 cx88_set_tvaudio +EXPORT_SYMBOL drivers/media/pci/cx88/cx88xx 0x24df0984 cx88_shutdown +EXPORT_SYMBOL drivers/media/pci/cx88/cx88xx 0x354ed6b9 cx88_get_stereo +EXPORT_SYMBOL drivers/media/pci/cx88/cx88xx 0x3a0d2c2d cx88_sram_channel_setup +EXPORT_SYMBOL drivers/media/pci/cx88/cx88xx 0x441d4e77 cx88_set_scale +EXPORT_SYMBOL drivers/media/pci/cx88/cx88xx 0x4dc42e99 cx88_core_put +EXPORT_SYMBOL drivers/media/pci/cx88/cx88xx 0x50319039 cx88_dsp_detect_stereo_sap +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 0x63a83b40 cx88_set_stereo +EXPORT_SYMBOL drivers/media/pci/cx88/cx88xx 0x6bb87d8f cx88_ir_stop +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 0x92987857 cx88_sram_channel_dump +EXPORT_SYMBOL drivers/media/pci/cx88/cx88xx 0xa7babb76 cx88_set_tvnorm +EXPORT_SYMBOL drivers/media/pci/cx88/cx88xx 0xabf2124d cx88_risc_databuffer +EXPORT_SYMBOL drivers/media/pci/cx88/cx88xx 0xaf0fe671 cx88_newstation +EXPORT_SYMBOL drivers/media/pci/cx88/cx88xx 0xb48d5e59 cx88_core_irq +EXPORT_SYMBOL drivers/media/pci/cx88/cx88xx 0xb739d03e cx88_wakeup +EXPORT_SYMBOL drivers/media/pci/cx88/cx88xx 0xbb4e6ffa cx88_core_get +EXPORT_SYMBOL drivers/media/pci/cx88/cx88xx 0xf0ccae3b cx88_risc_buffer +EXPORT_SYMBOL drivers/media/pci/ddbridge/ddbridge-dummy-fe 0xd234a779 ddbridge_dummy_fe_qam_attach +EXPORT_SYMBOL drivers/media/pci/ivtv/ivtv 0x052963ce ivtv_vapi +EXPORT_SYMBOL drivers/media/pci/ivtv/ivtv 0x14f67530 ivtv_debug +EXPORT_SYMBOL drivers/media/pci/ivtv/ivtv 0x16ee236c ivtv_api +EXPORT_SYMBOL drivers/media/pci/ivtv/ivtv 0x3361adc7 ivtv_start_v4l2_encode_stream +EXPORT_SYMBOL drivers/media/pci/ivtv/ivtv 0x344a7f8a ivtv_udma_prepare +EXPORT_SYMBOL drivers/media/pci/ivtv/ivtv 0x4e2c214b ivtv_reset_ir_gpio +EXPORT_SYMBOL drivers/media/pci/ivtv/ivtv 0x539cf0d7 ivtv_set_irq_mask +EXPORT_SYMBOL drivers/media/pci/ivtv/ivtv 0x7417376a ivtv_ext_init +EXPORT_SYMBOL drivers/media/pci/ivtv/ivtv 0x89a3cfb1 ivtv_clear_irq_mask +EXPORT_SYMBOL drivers/media/pci/ivtv/ivtv 0x91b591a1 ivtv_udma_setup +EXPORT_SYMBOL drivers/media/pci/ivtv/ivtv 0x9677c6d2 ivtv_udma_alloc +EXPORT_SYMBOL drivers/media/pci/ivtv/ivtv 0xb0464dda ivtv_stop_v4l2_encode_stream +EXPORT_SYMBOL drivers/media/pci/ivtv/ivtv 0xb820ef39 ivtv_release_stream +EXPORT_SYMBOL drivers/media/pci/ivtv/ivtv 0xb9cb8d4a ivtv_udma_unmap +EXPORT_SYMBOL drivers/media/pci/ivtv/ivtv 0xbbdc25a4 ivtv_claim_stream +EXPORT_SYMBOL drivers/media/pci/ivtv/ivtv 0xbccde102 ivtv_firmware_check +EXPORT_SYMBOL drivers/media/pci/ivtv/ivtv 0xd6e29929 ivtv_init_on_first_open +EXPORT_SYMBOL drivers/media/pci/ivtv/ivtv 0xfb602b37 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 0x175e4275 saa7134_dmasound_init +EXPORT_SYMBOL drivers/media/pci/saa7134/saa7134 0x3b2779b4 saa7134_pgtable_alloc +EXPORT_SYMBOL drivers/media/pci/saa7134/saa7134 0x558c7941 saa7134_pgtable_free +EXPORT_SYMBOL drivers/media/pci/saa7134/saa7134 0x581824fa saa7134_devlist_lock +EXPORT_SYMBOL drivers/media/pci/saa7134/saa7134 0x5c0c640a saa7134_ts_unregister +EXPORT_SYMBOL drivers/media/pci/saa7134/saa7134 0x5c6103c2 saa7134_pgtable_build +EXPORT_SYMBOL drivers/media/pci/saa7134/saa7134 0x730c4be3 saa7134_boards +EXPORT_SYMBOL drivers/media/pci/saa7134/saa7134 0x7e1e24ea saa7134_set_gpio +EXPORT_SYMBOL drivers/media/pci/saa7134/saa7134 0x93eed7b6 saa7134_set_dmabits +EXPORT_SYMBOL drivers/media/pci/saa7134/saa7134 0x9e3755bb saa7134_dmasound_exit +EXPORT_SYMBOL drivers/media/pci/saa7134/saa7134 0xa68b8abb saa7134_ts_register +EXPORT_SYMBOL drivers/media/pci/saa7134/saa7134 0xba5fe8f5 saa7134_tvaudio_setmute +EXPORT_SYMBOL drivers/media/pci/saa7134/saa7134 0xccbfa564 saa_dsp_writel +EXPORT_SYMBOL drivers/media/pci/ttpci/ttpci-eeprom 0x693e74ba ttpci_eeprom_decode_mac +EXPORT_SYMBOL drivers/media/pci/ttpci/ttpci-eeprom 0x8bc66a94 ttpci_eeprom_parse_mac +EXPORT_SYMBOL drivers/media/radio/tea575x 0x232e789e snd_tea575x_g_tuner +EXPORT_SYMBOL drivers/media/radio/tea575x 0x67b51497 snd_tea575x_s_hw_freq_seek +EXPORT_SYMBOL drivers/media/radio/tea575x 0x6c506524 snd_tea575x_init +EXPORT_SYMBOL drivers/media/radio/tea575x 0x71ce159a snd_tea575x_enum_freq_bands +EXPORT_SYMBOL drivers/media/radio/tea575x 0x9679e5d8 snd_tea575x_set_freq +EXPORT_SYMBOL drivers/media/radio/tea575x 0xba63316d snd_tea575x_exit +EXPORT_SYMBOL drivers/media/radio/tea575x 0xd774a1e6 snd_tea575x_hw_init +EXPORT_SYMBOL drivers/media/rc/rc-core 0x2ad91f6e ir_raw_gen_pl +EXPORT_SYMBOL drivers/media/rc/rc-core 0x3131b773 ir_raw_encode_scancode +EXPORT_SYMBOL drivers/media/rc/rc-core 0x4725eda1 ir_raw_encode_carrier +EXPORT_SYMBOL drivers/media/rc/rc-core 0x7cf52901 ir_raw_gen_manchester +EXPORT_SYMBOL drivers/media/rc/rc-core 0x9e12e343 ir_raw_gen_pd +EXPORT_SYMBOL drivers/media/rc/rc-core 0xc82af522 ir_raw_handler_unregister +EXPORT_SYMBOL drivers/media/rc/rc-core 0xe665dea1 ir_raw_handler_register +EXPORT_SYMBOL drivers/media/tuners/fc0011 0x57f17309 fc0011_attach +EXPORT_SYMBOL drivers/media/tuners/fc0012 0xeda8f99b fc0012_attach +EXPORT_SYMBOL drivers/media/tuners/fc0013 0x32eebb50 fc0013_rc_cal_reset +EXPORT_SYMBOL drivers/media/tuners/fc0013 0xad1562cb fc0013_attach +EXPORT_SYMBOL drivers/media/tuners/fc0013 0xc443a0c2 fc0013_rc_cal_add +EXPORT_SYMBOL drivers/media/tuners/max2165 0x7a54f2e0 max2165_attach +EXPORT_SYMBOL drivers/media/tuners/mc44s803 0x2a7cfc2c mc44s803_attach +EXPORT_SYMBOL drivers/media/tuners/mt2060 0x32f77d21 mt2060_attach +EXPORT_SYMBOL drivers/media/tuners/mt2131 0x7ff99a15 mt2131_attach +EXPORT_SYMBOL drivers/media/tuners/mt2266 0xc37e1660 mt2266_attach +EXPORT_SYMBOL drivers/media/tuners/mxl5005s 0x05e041d9 mxl5005s_attach +EXPORT_SYMBOL drivers/media/tuners/qt1010 0x89233549 qt1010_attach +EXPORT_SYMBOL drivers/media/tuners/tda18218 0xfbae891b tda18218_attach +EXPORT_SYMBOL drivers/media/tuners/tuner-types 0x4c48939e tuners +EXPORT_SYMBOL drivers/media/tuners/tuner-types 0xc2821775 tuner_count +EXPORT_SYMBOL drivers/media/tuners/tuner-xc2028 0x17ef872f xc2028_attach +EXPORT_SYMBOL drivers/media/tuners/xc4000 0x9831bd85 xc4000_attach +EXPORT_SYMBOL drivers/media/tuners/xc5000 0xffe5de1f xc5000_attach +EXPORT_SYMBOL drivers/media/usb/cx231xx/cx231xx 0x36ba7c8a cx231xx_register_extension +EXPORT_SYMBOL drivers/media/usb/cx231xx/cx231xx 0xa5b6efe5 cx231xx_unregister_extension +EXPORT_SYMBOL drivers/media/usb/dvb-usb-v2/dvb_usb_v2 0x0bf48379 dvb_usbv2_reset_resume +EXPORT_SYMBOL drivers/media/usb/dvb-usb-v2/dvb_usb_v2 0x2276f49f dvb_usbv2_resume +EXPORT_SYMBOL drivers/media/usb/dvb-usb-v2/dvb_usb_v2 0x3b46db52 dvb_usbv2_generic_rw_locked +EXPORT_SYMBOL drivers/media/usb/dvb-usb-v2/dvb_usb_v2 0x406bdea9 dvb_usbv2_generic_write_locked +EXPORT_SYMBOL drivers/media/usb/dvb-usb-v2/dvb_usb_v2 0x59fe2cdf dvb_usbv2_suspend +EXPORT_SYMBOL drivers/media/usb/dvb-usb-v2/dvb_usb_v2 0x69009ca1 dvb_usbv2_generic_rw +EXPORT_SYMBOL drivers/media/usb/dvb-usb-v2/dvb_usb_v2 0xa64df5a5 dvb_usbv2_generic_write +EXPORT_SYMBOL drivers/media/usb/dvb-usb-v2/dvb_usb_v2 0xa9f5f12f dvb_usbv2_probe +EXPORT_SYMBOL drivers/media/usb/dvb-usb-v2/dvb_usb_v2 0xd9ff7447 dvb_usbv2_disconnect +EXPORT_SYMBOL drivers/media/usb/dvb-usb/dvb-usb 0x17713f6e dvb_usb_generic_rw +EXPORT_SYMBOL drivers/media/usb/dvb-usb/dvb-usb 0x2a998cef dvb_usb_device_init +EXPORT_SYMBOL drivers/media/usb/dvb-usb/dvb-usb 0x4b8c56d4 dvb_usb_nec_rc_key_to_event +EXPORT_SYMBOL drivers/media/usb/dvb-usb/dvb-usb 0x67af52c7 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 0x8fc7a6e1 dvb_usb_generic_write +EXPORT_SYMBOL drivers/media/usb/dvb-usb/dvb-usb 0xb7daf1b2 dvb_usb_device_exit +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 0xd4e288db rc_map_af9005_table_size +EXPORT_SYMBOL drivers/media/usb/dvb-usb/dvb-usb-af9005-remote 0xe8e5092e af9005_rc_decode +EXPORT_SYMBOL drivers/media/usb/dvb-usb/dvb-usb-dibusb-common 0x09554084 dibusb_streaming_ctrl +EXPORT_SYMBOL drivers/media/usb/dvb-usb/dvb-usb-dibusb-common 0x3cfcd29a dibusb_pid_filter +EXPORT_SYMBOL drivers/media/usb/dvb-usb/dvb-usb-dibusb-common 0x73e55d8e dibusb_i2c_algo +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 0xadc68c6c dibusb2_0_streaming_ctrl +EXPORT_SYMBOL drivers/media/usb/dvb-usb/dvb-usb-dibusb-common 0xdd104ec3 dibusb_pid_filter_ctrl +EXPORT_SYMBOL drivers/media/usb/dvb-usb/dvb-usb-dibusb-common 0xdda14f35 dibusb2_0_power_ctrl +EXPORT_SYMBOL drivers/media/usb/dvb-usb/dvb-usb-dibusb-common 0xf50e20d9 dibusb_rc_query +EXPORT_SYMBOL drivers/media/usb/dvb-usb/dvb-usb-dibusb-common 0xf9a7da74 dibusb_read_eeprom_byte +EXPORT_SYMBOL drivers/media/usb/dvb-usb/dvb-usb-dibusb-common 0xf9f085f0 dibusb_power_ctrl +EXPORT_SYMBOL drivers/media/usb/dvb-usb/dvb-usb-dibusb-mc-common 0xcd002a20 dibusb_dib3000mc_frontend_attach +EXPORT_SYMBOL drivers/media/usb/dvb-usb/dvb-usb-dibusb-mc-common 0xf1f62a99 dibusb_dib3000mc_tuner_attach +EXPORT_SYMBOL drivers/media/usb/em28xx/em28xx 0x034eef50 em28xx_register_extension +EXPORT_SYMBOL drivers/media/usb/em28xx/em28xx 0x8f2c8848 em28xx_unregister_extension +EXPORT_SYMBOL drivers/media/usb/go7007/go7007 0x175a1aa4 go7007_snd_init +EXPORT_SYMBOL drivers/media/usb/go7007/go7007 0x77c35d1e go7007_boot_encoder +EXPORT_SYMBOL drivers/media/usb/go7007/go7007 0xd0a91bb1 go7007_alloc +EXPORT_SYMBOL drivers/media/usb/go7007/go7007 0xdb919c19 go7007_read_addr +EXPORT_SYMBOL drivers/media/usb/go7007/go7007 0xddb96568 go7007_read_interrupt +EXPORT_SYMBOL drivers/media/usb/go7007/go7007 0xe1ac6d5e go7007_parse_video_stream +EXPORT_SYMBOL drivers/media/usb/go7007/go7007 0xf145b99a go7007_snd_remove +EXPORT_SYMBOL drivers/media/usb/go7007/go7007 0xfdbf212a go7007_register_encoder +EXPORT_SYMBOL drivers/media/usb/go7007/go7007 0xfecd006d go7007_update_board +EXPORT_SYMBOL drivers/media/usb/gspca/gspca_main 0x05b0902f gspca_frame_add +EXPORT_SYMBOL drivers/media/usb/gspca/gspca_main 0x10cdb880 gspca_suspend +EXPORT_SYMBOL drivers/media/usb/gspca/gspca_main 0x23b1e1dd gspca_disconnect +EXPORT_SYMBOL drivers/media/usb/gspca/gspca_main 0x3b247563 gspca_expo_autogain +EXPORT_SYMBOL drivers/media/usb/gspca/gspca_main 0x429c8a92 gspca_coarse_grained_expo_autogain +EXPORT_SYMBOL drivers/media/usb/gspca/gspca_main 0x5114a193 gspca_dev_probe2 +EXPORT_SYMBOL drivers/media/usb/gspca/gspca_main 0x9670af2c gspca_debug +EXPORT_SYMBOL drivers/media/usb/gspca/gspca_main 0xe0f3f85d gspca_resume +EXPORT_SYMBOL drivers/media/usb/gspca/gspca_main 0xe2951331 gspca_dev_probe +EXPORT_SYMBOL drivers/media/usb/tm6000/tm6000 0x22942c3c tm6000_init_digital_mode +EXPORT_SYMBOL drivers/media/usb/tm6000/tm6000 0x742b29a0 tm6000_unregister_extension +EXPORT_SYMBOL drivers/media/usb/tm6000/tm6000 0x8917dc32 tm6000_register_extension +EXPORT_SYMBOL drivers/media/usb/ttusb-dec/ttusbdecfe 0x8a4411d9 ttusbdecfe_dvbs_attach +EXPORT_SYMBOL drivers/media/usb/ttusb-dec/ttusbdecfe 0xa1831013 ttusbdecfe_dvbt_attach +EXPORT_SYMBOL drivers/media/v4l2-core/v4l2-mem2mem 0x3dce6188 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 0x77a6456b v4l2_m2m_job_finish +EXPORT_SYMBOL drivers/media/v4l2-core/v4l2-mem2mem 0x9636ce70 v4l2_m2m_mmap +EXPORT_SYMBOL drivers/media/v4l2-core/v4l2-mem2mem 0xa486c744 v4l2_m2m_get_vq +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x00238727 v4l2_ctrl_subdev_subscribe_event +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x04b2581f video_ioctl2 +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x0614dd5a v4l2_video_std_frame_period +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x064aaa00 v4l2_clk_get_rate +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x082737e8 v4l2_ctrl_merge +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x109ae6bb v4l2_ctrl_g_ctrl_int64 +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x123959a1 v4l2_type_names +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x1324d626 v4l2_clk_unregister_fixed +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x16244fe5 v4l2_prio_check +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x1994bbe5 v4l2_ctrl_auto_cluster +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x1dd8fbd9 v4l2_ctrl_sub_ev_ops +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x21f9277c v4l2_ctrl_subscribe_event +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x2342f1ae v4l2_prio_open +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x241c7d27 v4l2_ctrl_new_std +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x28b12cc9 v4l2_format_info +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x2970d64c __video_register_device +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x2cdbed1b v4l2_ctrl_subdev_log_status +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x2fe96454 v4l2_ctrl_g_ctrl +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x2fffa084 v4l2_clk_enable +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x315de2cf v4l2_ctrl_get_menu +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x324d4281 v4l2_ctrl_find +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x32d43420 v4l2_ctrl_get_name +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x33f5eaf7 v4l2_ctrl_request_complete +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x3807ecc7 v4l2_async_notifier_register +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x386d7c98 v4l2_ctrl_notify +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x3adbd595 v4l2_field_names +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x3b919c41 v4l2_g_ext_ctrls +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x3bdd0f94 v4l2_prio_change +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x3d3d741f v4l2_ctrl_new_int_menu +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x3f91855f v4l2_subdev_init +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x41141fcf v4l2_ctrl_cluster +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x42ac2f45 v4l2_clk_register +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x4c3a29cf video_device_alloc +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x4d7ac191 v4l2_query_ext_ctrl +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x52475496 v4l2_subdev_call_wrappers +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x527cb5db video_devdata +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x533c687a v4l2_async_register_subdev +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x5c88318e v4l2_ctrl_new_std_compound +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x6215e60c __v4l2_ctrl_s_ctrl_int64 +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x63d4aa9d v4l2_ctrl_radio_filter +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x646e3d83 v4l2_async_unregister_subdev +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x661bdae8 v4l2_async_notifier_init +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x66523871 __v4l2_ctrl_s_ctrl +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x66572227 __v4l2_ctrl_modify_range +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x6ae6022d v4l2_ctrl_handler_free +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x6ae802f0 v4l2_ctrl_activate +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x6cf7b056 v4l2_s_ctrl +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x7135aa7d v4l2_queryctrl +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x7164aa66 video_device_release +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x72b83ea2 __v4l2_ctrl_grab +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x72e203cc video_device_release_empty +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x771bbab8 v4l2_try_ext_ctrls +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x7aea9cf8 v4l2_clk_disable +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x7de03d82 v4l2_ctrl_add_handler +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x7fd0603b v4l2_ctrl_handler_init_class +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x8106095a v4l2_prio_max +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x8280534c v4l2_ctrl_fill +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x87d77396 __v4l2_ctrl_s_ctrl_string +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x8902e8dd __v4l2_clk_register_fixed +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x89e3897d v4l2_ctrl_query_fill +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x8a35fdbb v4l2_clk_unregister +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x9137742f v4l2_g_ctrl +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x92e9b022 v4l2_ctrl_new_fwnode_properties +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x9484c591 v4l2_ctrl_new_std_menu_items +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xaef37f04 v4l2_ctrl_handler_setup +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xb77b0159 v4l2_prio_init +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xb9560790 v4l2_async_notifier_unregister +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xba9b79a2 v4l2_clk_set_rate +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xbc5671dc v4l_printk_ioctl +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xbe265db7 v4l2_ctrl_poll +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xc172160b v4l2_ctrl_request_setup +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xc1b81d09 v4l2_clk_get +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xc32dbe67 v4l2_clk_put +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xcda04a5b v4l2_prio_close +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xd054709a v4l2_ctrl_new_std_menu +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xd16d9c01 v4l2_ctrl_get_int_menu +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xd4606bdf __v4l2_ctrl_s_ctrl_compound +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xdd965dcb v4l2_ctrl_new_custom +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xe2b92059 v4l2_video_std_construct +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xeb1e536b v4l2_async_subdev_notifier_register +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xef864461 v4l2_ctrl_log_status +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xf093cf19 v4l2_s_ext_ctrls +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 0xf6230d8a video_unregister_device +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xfbd37bd9 v4l2_querymenu +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xff3f5145 v4l2_ctrl_handler_log_status +EXPORT_SYMBOL drivers/memstick/core/memstick 0x2b8e5905 memstick_register_driver +EXPORT_SYMBOL drivers/memstick/core/memstick 0x49c63bbd memstick_free_host +EXPORT_SYMBOL drivers/memstick/core/memstick 0x4a4e5778 memstick_init_req_sg +EXPORT_SYMBOL drivers/memstick/core/memstick 0x4c89261f memstick_unregister_driver +EXPORT_SYMBOL drivers/memstick/core/memstick 0x68339703 memstick_remove_host +EXPORT_SYMBOL drivers/memstick/core/memstick 0x8c0a2fe3 memstick_new_req +EXPORT_SYMBOL drivers/memstick/core/memstick 0x8d747352 memstick_set_rw_addr +EXPORT_SYMBOL drivers/memstick/core/memstick 0x963c9a36 memstick_add_host +EXPORT_SYMBOL drivers/memstick/core/memstick 0xac77a9ca memstick_alloc_host +EXPORT_SYMBOL drivers/memstick/core/memstick 0xae50437c memstick_init_req +EXPORT_SYMBOL drivers/memstick/core/memstick 0xaf5fe13a memstick_suspend_host +EXPORT_SYMBOL drivers/memstick/core/memstick 0xbc82a38f memstick_next_req +EXPORT_SYMBOL drivers/memstick/core/memstick 0xdfb9dcfa memstick_resume_host +EXPORT_SYMBOL drivers/memstick/core/memstick 0xf1e293be memstick_detect_change +EXPORT_SYMBOL drivers/memstick/host/r592 0x52f1b23b memstick_debug_get_tpc_name +EXPORT_SYMBOL drivers/message/fusion/mptbase 0x029405ef mpt_register +EXPORT_SYMBOL drivers/message/fusion/mptbase 0x04f85e88 mpt_print_ioc_summary +EXPORT_SYMBOL drivers/message/fusion/mptbase 0x05d9ce2a mpt_raid_phys_disk_get_num_paths +EXPORT_SYMBOL drivers/message/fusion/mptbase 0x091b3dc6 mpt_suspend +EXPORT_SYMBOL drivers/message/fusion/mptbase 0x24e67259 mpt_set_taskmgmt_in_progress_flag +EXPORT_SYMBOL drivers/message/fusion/mptbase 0x2f2d035e mpt_findImVolumes +EXPORT_SYMBOL drivers/message/fusion/mptbase 0x3b803ed1 mpt_reset_register +EXPORT_SYMBOL drivers/message/fusion/mptbase 0x3edbba84 mpt_resume +EXPORT_SYMBOL drivers/message/fusion/mptbase 0x502108d0 mpt_fwfault_debug +EXPORT_SYMBOL drivers/message/fusion/mptbase 0x50a683c4 mpt_send_handshake_request +EXPORT_SYMBOL drivers/message/fusion/mptbase 0x610b257e mpt_reset_deregister +EXPORT_SYMBOL drivers/message/fusion/mptbase 0x6891fa33 mpt_clear_taskmgmt_in_progress_flag +EXPORT_SYMBOL drivers/message/fusion/mptbase 0x68f6bc0f mpt_Soft_Hard_ResetHandler +EXPORT_SYMBOL drivers/message/fusion/mptbase 0x6f955086 mpt_GetIocState +EXPORT_SYMBOL drivers/message/fusion/mptbase 0x712e0691 mpt_put_msg_frame +EXPORT_SYMBOL drivers/message/fusion/mptbase 0x74a0134a mpt_device_driver_deregister +EXPORT_SYMBOL drivers/message/fusion/mptbase 0x75dd127d mpt_raid_phys_disk_pg1 +EXPORT_SYMBOL drivers/message/fusion/mptbase 0x7db01e5c mpt_verify_adapter +EXPORT_SYMBOL drivers/message/fusion/mptbase 0x8a7bcf6c mpt_attach +EXPORT_SYMBOL drivers/message/fusion/mptbase 0x94471426 mpt_device_driver_register +EXPORT_SYMBOL drivers/message/fusion/mptbase 0x95b5d5a6 mptbase_sas_persist_operation +EXPORT_SYMBOL drivers/message/fusion/mptbase 0x981efe92 mpt_deregister +EXPORT_SYMBOL drivers/message/fusion/mptbase 0x99ee819f mpt_raid_phys_disk_pg0 +EXPORT_SYMBOL drivers/message/fusion/mptbase 0xab902d5c mpt_detach +EXPORT_SYMBOL drivers/message/fusion/mptbase 0xb50f5af9 mpt_free_msg_frame +EXPORT_SYMBOL drivers/message/fusion/mptbase 0xc2b60216 mpt_put_msg_frame_hi_pri +EXPORT_SYMBOL drivers/message/fusion/mptbase 0xd01fd7e7 mpt_get_msg_frame +EXPORT_SYMBOL drivers/message/fusion/mptbase 0xd044f0b8 mpt_HardResetHandler +EXPORT_SYMBOL drivers/message/fusion/mptbase 0xd631ae64 mpt_config +EXPORT_SYMBOL drivers/message/fusion/mptbase 0xdd1340d1 mpt_alloc_fw_memory +EXPORT_SYMBOL drivers/message/fusion/mptbase 0xdd805159 ioc_list +EXPORT_SYMBOL drivers/message/fusion/mptbase 0xe5c98014 mpt_event_register +EXPORT_SYMBOL drivers/message/fusion/mptbase 0xe6c1e126 mpt_event_deregister +EXPORT_SYMBOL drivers/message/fusion/mptbase 0xe8cb62a0 mpt_halt_firmware +EXPORT_SYMBOL drivers/message/fusion/mptbase 0xf84e1ab9 mpt_free_fw_memory +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0x1d30b826 mptscsih_get_scsi_lookup +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0x287a2aa2 mptscsih_host_attrs +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0x37ae9510 mptscsih_show_info +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0x3e859ea0 mptscsih_remove +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0x3eade740 mptscsih_dev_reset +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0x40e31902 mptscsih_slave_destroy +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0x41360cb0 mptscsih_raid_id_to_num +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0x42fcc206 mptscsih_change_queue_depth +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0x49e654cb mptscsih_shutdown +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0x4cd9ea22 mptscsih_bus_reset +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0x50143d58 mptscsih_ioc_reset +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0x520dceec mptscsih_io_done +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0x53a8a429 mptscsih_slave_configure +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0x58d95bbb mptscsih_bios_param +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0x5b0a1459 mptscsih_abort +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0x625eebcd mptscsih_info +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0x65bf0f59 mptscsih_suspend +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0x66c5fa59 mptscsih_event_process +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0x790067ad mptscsih_flush_running_cmds +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0x93329c82 mptscsih_scandv_complete +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0xac63f8ee mptscsih_is_phys_disk +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0xb65f9b9d mptscsih_taskmgmt_complete +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0xde0bdd59 mptscsih_IssueTaskMgmt +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0xe2ba946e mptscsih_qcmd +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0xe6b31130 mptscsih_host_reset +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0xf541f457 mptscsih_taskmgmt_response_code +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0xff77979f mptscsih_resume +EXPORT_SYMBOL drivers/mfd/axp20x 0x8c121803 axp20x_match_device +EXPORT_SYMBOL drivers/mfd/axp20x 0x9f3d4b3c axp20x_device_remove +EXPORT_SYMBOL drivers/mfd/axp20x 0xbba6ec0b axp20x_device_probe +EXPORT_SYMBOL drivers/mfd/dln2 0x2c2d4ba4 dln2_transfer +EXPORT_SYMBOL drivers/mfd/dln2 0xba8f2c9a dln2_unregister_event_cb +EXPORT_SYMBOL drivers/mfd/dln2 0xe56bfdc2 dln2_register_event_cb +EXPORT_SYMBOL drivers/mfd/htc-pasic3 0xc62da070 pasic3_read_register +EXPORT_SYMBOL drivers/mfd/htc-pasic3 0xfdf44854 pasic3_write_register +EXPORT_SYMBOL drivers/mfd/mc13xxx-core 0x0eae97bf mc13xxx_get_flags +EXPORT_SYMBOL drivers/mfd/mc13xxx-core 0x63bfe833 mc13xxx_reg_write +EXPORT_SYMBOL drivers/mfd/mc13xxx-core 0x73b2f37e mc13xxx_reg_read +EXPORT_SYMBOL drivers/mfd/mc13xxx-core 0x73ccc8f9 mc13xxx_unlock +EXPORT_SYMBOL drivers/mfd/mc13xxx-core 0x7f44eca7 mc13xxx_irq_mask +EXPORT_SYMBOL drivers/mfd/mc13xxx-core 0x7fee4d48 mc13xxx_irq_free +EXPORT_SYMBOL drivers/mfd/mc13xxx-core 0x93e458c5 mc13xxx_reg_rmw +EXPORT_SYMBOL drivers/mfd/mc13xxx-core 0xa6a3f735 mc13xxx_lock +EXPORT_SYMBOL drivers/mfd/mc13xxx-core 0xaafc5724 mc13xxx_irq_status +EXPORT_SYMBOL drivers/mfd/mc13xxx-core 0xb865b73c mc13xxx_irq_request +EXPORT_SYMBOL drivers/mfd/mc13xxx-core 0xd264f6b2 mc13xxx_irq_unmask +EXPORT_SYMBOL drivers/mfd/qcom_rpm 0xd520f912 qcom_rpm_write +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 0x15163846 wm8994_irq_init +EXPORT_SYMBOL drivers/mfd/wm8994 0x24a1625b wm8994_irq_exit +EXPORT_SYMBOL drivers/mfd/wm8994 0x48488a1f wm8958_regmap_config +EXPORT_SYMBOL drivers/mfd/wm8994 0x7a723186 wm8994_regmap_config +EXPORT_SYMBOL drivers/mfd/wm8994 0x92495334 wm8994_base_regmap_config +EXPORT_SYMBOL drivers/mfd/wm8994 0xd72a8832 wm1811_regmap_config +EXPORT_SYMBOL drivers/misc/ad525x_dpot 0x0288a04b ad_dpot_remove +EXPORT_SYMBOL drivers/misc/ad525x_dpot 0x543756de ad_dpot_probe +EXPORT_SYMBOL drivers/misc/altera-stapl/altera-stapl 0x5bafa76e altera_init +EXPORT_SYMBOL drivers/misc/c2port/core 0x6bb349fb c2port_device_register +EXPORT_SYMBOL drivers/misc/c2port/core 0x8a2d5cfa c2port_device_unregister +EXPORT_SYMBOL drivers/misc/tifm_core 0x0ffb277f tifm_queue_work +EXPORT_SYMBOL drivers/misc/tifm_core 0x297dda4b tifm_unmap_sg +EXPORT_SYMBOL drivers/misc/tifm_core 0x41d1ebe9 tifm_remove_adapter +EXPORT_SYMBOL drivers/misc/tifm_core 0x5cc317f1 tifm_alloc_device +EXPORT_SYMBOL drivers/misc/tifm_core 0x64f91cc0 tifm_free_adapter +EXPORT_SYMBOL drivers/misc/tifm_core 0x687abd49 tifm_alloc_adapter +EXPORT_SYMBOL drivers/misc/tifm_core 0x6a37e063 tifm_eject +EXPORT_SYMBOL drivers/misc/tifm_core 0x6bbc7de0 tifm_map_sg +EXPORT_SYMBOL drivers/misc/tifm_core 0xc3ef8ef4 tifm_free_device +EXPORT_SYMBOL drivers/misc/tifm_core 0xcf961070 tifm_unregister_driver +EXPORT_SYMBOL drivers/misc/tifm_core 0xda7dfb06 tifm_add_adapter +EXPORT_SYMBOL drivers/misc/tifm_core 0xea2f10f7 tifm_register_driver +EXPORT_SYMBOL drivers/misc/tifm_core 0xea38c47f tifm_has_ms_pif +EXPORT_SYMBOL drivers/mmc/host/cqhci 0x3c9f9437 cqhci_init +EXPORT_SYMBOL drivers/mmc/host/cqhci 0x4821620c cqhci_deactivate +EXPORT_SYMBOL drivers/mmc/host/cqhci 0xd21b7f65 cqhci_pltfm_init +EXPORT_SYMBOL drivers/mmc/host/cqhci 0xeb98b9bf cqhci_irq +EXPORT_SYMBOL drivers/mmc/host/cqhci 0xfef58257 cqhci_resume +EXPORT_SYMBOL drivers/mmc/host/dw_mmc 0x19fc57d1 dw_mci_runtime_resume +EXPORT_SYMBOL drivers/mmc/host/dw_mmc 0x7eba32c9 dw_mci_probe +EXPORT_SYMBOL drivers/mmc/host/dw_mmc 0x912e9cf8 dw_mci_runtime_suspend +EXPORT_SYMBOL drivers/mmc/host/dw_mmc 0xa08ffb8a dw_mci_remove +EXPORT_SYMBOL drivers/mmc/host/of_mmc_spi 0x6b1d7f8a mmc_spi_put_pdata +EXPORT_SYMBOL drivers/mmc/host/of_mmc_spi 0xdf649663 mmc_spi_get_pdata +EXPORT_SYMBOL drivers/mtd/chips/cfi_util 0x1efd24da cfi_varsize_frob +EXPORT_SYMBOL drivers/mtd/chips/cfi_util 0x3a3bee3c cfi_fixup +EXPORT_SYMBOL drivers/mtd/chips/cfi_util 0x712ad471 cfi_read_pri +EXPORT_SYMBOL drivers/mtd/chips/cfi_util 0x76ea3155 cfi_build_cmd +EXPORT_SYMBOL drivers/mtd/chips/cfi_util 0x811733ff cfi_merge_status +EXPORT_SYMBOL drivers/mtd/chips/cfi_util 0x9efb0d9f cfi_build_cmd_addr +EXPORT_SYMBOL drivers/mtd/chips/cfi_util 0xef6c7378 cfi_send_gen_cmd +EXPORT_SYMBOL drivers/mtd/chips/cfi_util 0xff9fa623 cfi_udelay +EXPORT_SYMBOL drivers/mtd/chips/chipreg 0x2eea5bb9 unregister_mtd_chip_driver +EXPORT_SYMBOL drivers/mtd/chips/chipreg 0x2f9ae113 map_destroy +EXPORT_SYMBOL drivers/mtd/chips/chipreg 0x474c4f89 do_map_probe +EXPORT_SYMBOL drivers/mtd/chips/chipreg 0xea37f6e8 register_mtd_chip_driver +EXPORT_SYMBOL drivers/mtd/chips/gen_probe 0x29daf1df mtd_do_chip_probe +EXPORT_SYMBOL drivers/mtd/lpddr/lpddr_cmds 0xb982739c lpddr_cmdset +EXPORT_SYMBOL drivers/mtd/maps/map_funcs 0xc946c3cb simple_map_init +EXPORT_SYMBOL drivers/mtd/mtd 0x6b444f39 mtd_concat_destroy +EXPORT_SYMBOL drivers/mtd/mtd 0x93dd490e mtd_concat_create +EXPORT_SYMBOL drivers/mtd/nand/onenand/onenand 0xac2c6c42 onenand_addr +EXPORT_SYMBOL drivers/mtd/nand/onenand/onenand 0xba525f87 flexonenand_region +EXPORT_SYMBOL drivers/mtd/nand/raw/denali 0x2cd7ad05 denali_remove +EXPORT_SYMBOL drivers/mtd/nand/raw/denali 0x30db096f denali_calc_ecc_bytes +EXPORT_SYMBOL drivers/mtd/nand/raw/denali 0x61236d83 denali_init +EXPORT_SYMBOL drivers/mtd/nand/raw/mtk_ecc 0x102603bc mtk_ecc_get_parity_bits +EXPORT_SYMBOL drivers/mtd/nand/raw/mtk_ecc 0x5437e775 mtk_ecc_disable +EXPORT_SYMBOL drivers/mtd/nand/raw/mtk_ecc 0x5de55d81 mtk_ecc_get_stats +EXPORT_SYMBOL drivers/mtd/nand/raw/mtk_ecc 0x6df58afb mtk_ecc_release +EXPORT_SYMBOL drivers/mtd/nand/raw/mtk_ecc 0x76e53683 mtk_ecc_wait_done +EXPORT_SYMBOL drivers/mtd/nand/raw/mtk_ecc 0x8dcc87d2 mtk_ecc_enable +EXPORT_SYMBOL drivers/mtd/nand/raw/mtk_ecc 0xce0e8fb7 of_mtk_ecc_get +EXPORT_SYMBOL drivers/mtd/nand/raw/mtk_ecc 0xda64ef4a mtk_ecc_adjust_strength +EXPORT_SYMBOL drivers/mtd/nand/raw/mtk_ecc 0xec8b9207 mtk_ecc_encode +EXPORT_SYMBOL drivers/mtd/nand/raw/nand 0x0b6a7599 nand_bch_init +EXPORT_SYMBOL drivers/mtd/nand/raw/nand 0x24f85cb6 nand_bch_calculate_ecc +EXPORT_SYMBOL drivers/mtd/nand/raw/nand 0x2863be2d nand_scan_with_ids +EXPORT_SYMBOL drivers/mtd/nand/raw/nand 0x2cc45c91 nand_write_page_raw +EXPORT_SYMBOL drivers/mtd/nand/raw/nand 0x2f6ad9dd nand_read_page_raw +EXPORT_SYMBOL drivers/mtd/nand/raw/nand 0x389eb985 nand_create_bbt +EXPORT_SYMBOL drivers/mtd/nand/raw/nand 0x494aa2f4 nand_write_oob_std +EXPORT_SYMBOL drivers/mtd/nand/raw/nand 0x56fb323d nand_monolithic_read_page_raw +EXPORT_SYMBOL drivers/mtd/nand/raw/nand 0x70097aa0 nand_bch_free +EXPORT_SYMBOL drivers/mtd/nand/raw/nand 0x8ecbb3b8 nand_check_erased_ecc_chunk +EXPORT_SYMBOL drivers/mtd/nand/raw/nand 0x9ff1edde nand_bch_correct_data +EXPORT_SYMBOL drivers/mtd/nand/raw/nand 0xa9b6f071 nand_monolithic_write_page_raw +EXPORT_SYMBOL drivers/mtd/nand/raw/nand 0xca50e724 nand_read_oob_std +EXPORT_SYMBOL drivers/mtd/nand/raw/nand 0xfd9a9ce3 nand_get_set_features_notsupp +EXPORT_SYMBOL drivers/mtd/nand/raw/nand_ecc 0x793cf888 nand_correct_data +EXPORT_SYMBOL drivers/mtd/nand/raw/nand_ecc 0xa43d1c72 __nand_correct_data +EXPORT_SYMBOL drivers/mtd/nand/raw/nand_ecc 0xb636dd73 __nand_calculate_ecc +EXPORT_SYMBOL drivers/mtd/nand/raw/nand_ecc 0xd4bc34f5 nand_calculate_ecc +EXPORT_SYMBOL drivers/net/arcnet/arcnet 0x1d1b9b63 arcnet_timeout +EXPORT_SYMBOL drivers/net/arcnet/arcnet 0x1d5a1778 arc_bcast_proto +EXPORT_SYMBOL drivers/net/arcnet/arcnet 0x377bc94e arc_proto_default +EXPORT_SYMBOL drivers/net/arcnet/arcnet 0x49e961aa arcnet_open +EXPORT_SYMBOL drivers/net/arcnet/arcnet 0x5051de44 arcnet_close +EXPORT_SYMBOL drivers/net/arcnet/arcnet 0x6534792a arcnet_debug +EXPORT_SYMBOL drivers/net/arcnet/arcnet 0x919af689 arcnet_send_packet +EXPORT_SYMBOL drivers/net/arcnet/arcnet 0xa3dcb79f arc_raw_proto +EXPORT_SYMBOL drivers/net/arcnet/arcnet 0xb263b934 arcnet_unregister_proto +EXPORT_SYMBOL drivers/net/arcnet/arcnet 0xb98e8bb1 arc_proto_map +EXPORT_SYMBOL drivers/net/arcnet/arcnet 0xde2624f1 alloc_arcdev +EXPORT_SYMBOL drivers/net/arcnet/arcnet 0xecb730b0 arcnet_interrupt +EXPORT_SYMBOL drivers/net/arcnet/com20020 0x361c34c7 com20020_check +EXPORT_SYMBOL drivers/net/arcnet/com20020 0x65c9ab96 com20020_found +EXPORT_SYMBOL drivers/net/arcnet/com20020 0xda73ab1d com20020_netdev_ops +EXPORT_SYMBOL drivers/net/dsa/b53/b53_common 0x0a97c5d7 b53_get_tag_protocol +EXPORT_SYMBOL drivers/net/dsa/b53/b53_common 0x10b3e437 b53_br_leave +EXPORT_SYMBOL drivers/net/dsa/b53/b53_common 0x13e46d2f b53_switch_alloc +EXPORT_SYMBOL drivers/net/dsa/b53/b53_common 0x15c2a00b b53_get_ethtool_stats +EXPORT_SYMBOL drivers/net/dsa/b53/b53_common 0x1b9ae6b1 b53_get_ethtool_phy_stats +EXPORT_SYMBOL drivers/net/dsa/b53/b53_common 0x227bb767 b53_mirror_add +EXPORT_SYMBOL drivers/net/dsa/b53/b53_common 0x24507ec1 b53_phylink_mac_link_down +EXPORT_SYMBOL drivers/net/dsa/b53/b53_common 0x27574b3f b53_eee_enable_set +EXPORT_SYMBOL drivers/net/dsa/b53/b53_common 0x356dbf4a b53_imp_vlan_setup +EXPORT_SYMBOL drivers/net/dsa/b53/b53_common 0x3612511e b53_fdb_del +EXPORT_SYMBOL drivers/net/dsa/b53/b53_common 0x395d4913 b53_configure_vlan +EXPORT_SYMBOL drivers/net/dsa/b53/b53_common 0x3d8a4523 b53_vlan_filtering +EXPORT_SYMBOL drivers/net/dsa/b53/b53_common 0x3dedcddb b53_mdb_prepare +EXPORT_SYMBOL drivers/net/dsa/b53/b53_common 0x4754ac35 b53_set_mac_eee +EXPORT_SYMBOL drivers/net/dsa/b53/b53_common 0x4a86aeb0 b53_fdb_dump +EXPORT_SYMBOL drivers/net/dsa/b53/b53_common 0x56903890 b53_phylink_validate +EXPORT_SYMBOL drivers/net/dsa/b53/b53_common 0x5af678ea b53_enable_port +EXPORT_SYMBOL drivers/net/dsa/b53/b53_common 0x5f706d58 b53_vlan_add +EXPORT_SYMBOL drivers/net/dsa/b53/b53_common 0x69637ca5 b53_phylink_mac_link_state +EXPORT_SYMBOL drivers/net/dsa/b53/b53_common 0x6e585b63 b53_switch_register +EXPORT_SYMBOL drivers/net/dsa/b53/b53_common 0x6fac5beb b53_mirror_del +EXPORT_SYMBOL drivers/net/dsa/b53/b53_common 0x72a62ec2 b53_get_mac_eee +EXPORT_SYMBOL drivers/net/dsa/b53/b53_common 0x75a1c99e b53_phylink_mac_an_restart +EXPORT_SYMBOL drivers/net/dsa/b53/b53_common 0x8cdde690 b53_br_fast_age +EXPORT_SYMBOL drivers/net/dsa/b53/b53_common 0x903cba79 b53_eee_init +EXPORT_SYMBOL drivers/net/dsa/b53/b53_common 0xa33c95c8 b53_br_egress_floods +EXPORT_SYMBOL drivers/net/dsa/b53/b53_common 0xa6160a78 b53_fdb_add +EXPORT_SYMBOL drivers/net/dsa/b53/b53_common 0xcaf755fd b53_get_sset_count +EXPORT_SYMBOL drivers/net/dsa/b53/b53_common 0xccbefe37 b53_mdb_del +EXPORT_SYMBOL drivers/net/dsa/b53/b53_common 0xcd0bfe56 b53_br_join +EXPORT_SYMBOL drivers/net/dsa/b53/b53_common 0xd020ec5f b53_vlan_del +EXPORT_SYMBOL drivers/net/dsa/b53/b53_common 0xdbf58247 b53_brcm_hdr_setup +EXPORT_SYMBOL drivers/net/dsa/b53/b53_common 0xdbffd28e b53_vlan_prepare +EXPORT_SYMBOL drivers/net/dsa/b53/b53_common 0xdc534c0f b53_get_strings +EXPORT_SYMBOL drivers/net/dsa/b53/b53_common 0xde3e9944 b53_phylink_mac_link_up +EXPORT_SYMBOL drivers/net/dsa/b53/b53_common 0xebfeb7b0 b53_port_event +EXPORT_SYMBOL drivers/net/dsa/b53/b53_common 0xedc35928 b53_phylink_mac_config +EXPORT_SYMBOL drivers/net/dsa/b53/b53_common 0xef8e2eab b53_mdb_add +EXPORT_SYMBOL drivers/net/dsa/b53/b53_common 0xf1f1fe16 b53_disable_port +EXPORT_SYMBOL drivers/net/dsa/b53/b53_common 0xf3252927 b53_switch_detect +EXPORT_SYMBOL drivers/net/dsa/b53/b53_common 0xf7a1fe64 b53_br_set_stp_state +EXPORT_SYMBOL drivers/net/dsa/b53/b53_serdes 0x33de82f8 b53_serdes_link_state +EXPORT_SYMBOL drivers/net/dsa/b53/b53_serdes 0x51a16462 b53_serdes_init +EXPORT_SYMBOL drivers/net/dsa/b53/b53_serdes 0x5669dd61 b53_serdes_config +EXPORT_SYMBOL drivers/net/dsa/b53/b53_serdes 0xa254ad70 b53_serdes_an_restart +EXPORT_SYMBOL drivers/net/dsa/b53/b53_serdes 0xc6ece488 b53_serdes_phylink_validate +EXPORT_SYMBOL drivers/net/dsa/b53/b53_serdes 0xf6766f0c b53_serdes_link_set +EXPORT_SYMBOL drivers/net/dsa/lan9303-core 0x018723fd lan9303_remove +EXPORT_SYMBOL drivers/net/dsa/lan9303-core 0x25d8cd26 lan9303_probe +EXPORT_SYMBOL drivers/net/dsa/lan9303-core 0xada83f40 lan9303_register_set +EXPORT_SYMBOL drivers/net/dsa/microchip/ksz8795 0x62b4925f ksz8795_switch_register +EXPORT_SYMBOL drivers/net/dsa/microchip/ksz9477 0xf9ff4f72 ksz9477_switch_register +EXPORT_SYMBOL drivers/net/dsa/microchip/ksz_common 0x441c3bd3 ksz_switch_register +EXPORT_SYMBOL drivers/net/dsa/microchip/ksz_common 0x479b4492 ksz_switch_alloc +EXPORT_SYMBOL drivers/net/dsa/microchip/ksz_common 0x8238645e ksz_switch_remove +EXPORT_SYMBOL drivers/net/dsa/vitesse-vsc73xx-core 0x99d242fe vsc73xx_is_addr_valid +EXPORT_SYMBOL drivers/net/dsa/vitesse-vsc73xx-core 0xd98d2a79 vsc73xx_remove +EXPORT_SYMBOL drivers/net/dsa/vitesse-vsc73xx-core 0xfd4662d5 vsc73xx_probe +EXPORT_SYMBOL drivers/net/ethernet/8390/8390 0x119721ac ei_interrupt +EXPORT_SYMBOL drivers/net/ethernet/8390/8390 0x141b1a62 ei_tx_timeout +EXPORT_SYMBOL drivers/net/ethernet/8390/8390 0x1510ae80 ei_poll +EXPORT_SYMBOL drivers/net/ethernet/8390/8390 0x2a3ce8f3 ei_start_xmit +EXPORT_SYMBOL drivers/net/ethernet/8390/8390 0x9495cbad ei_get_stats +EXPORT_SYMBOL drivers/net/ethernet/8390/8390 0xa1695599 ei_set_multicast_list +EXPORT_SYMBOL drivers/net/ethernet/8390/8390 0xc1695950 ei_close +EXPORT_SYMBOL drivers/net/ethernet/8390/8390 0xc2d34877 NS8390_init +EXPORT_SYMBOL drivers/net/ethernet/8390/8390 0xe909390d ei_netdev_ops +EXPORT_SYMBOL drivers/net/ethernet/8390/8390 0xf53ce37c __alloc_ei_netdev +EXPORT_SYMBOL drivers/net/ethernet/8390/8390 0xff0f4b50 ei_open +EXPORT_SYMBOL drivers/net/ethernet/broadcom/cnic 0x636af174 cnic_unregister_driver +EXPORT_SYMBOL drivers/net/ethernet/broadcom/cnic 0x7b351bac cnic_register_driver +EXPORT_SYMBOL drivers/net/ethernet/cavium/common/cavium_ptp 0x625c33f8 cavium_ptp_put +EXPORT_SYMBOL drivers/net/ethernet/cavium/common/cavium_ptp 0xbd421c18 cavium_ptp_get +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 0x0a2fc8f9 cxgb3_free_atid +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb3/cxgb3 0x0c0848b5 dev2t3cdev +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb3/cxgb3 0x1d1127fc cxgb3_queue_tid_release +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb3/cxgb3 0x29ce1146 cxgb3_alloc_atid +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb3/cxgb3 0x2c8e1637 cxgb3_unregister_client +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb3/cxgb3 0x4e53bcc5 t3_l2e_free +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb3/cxgb3 0x51693668 cxgb3_ofld_send +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb3/cxgb3 0x5d99050f cxgb3_insert_tid +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb3/cxgb3 0xab3877a4 cxgb3_register_client +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb3/cxgb3 0xd77e1783 cxgb3_free_stid +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb3/cxgb3 0xd7813ac3 cxgb3_remove_tid +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb3/cxgb3 0xdedba3a7 cxgb3_alloc_stid +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb3/cxgb3 0xebd2c19b t3_register_cpl_handler +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb3/cxgb3 0xf44de01d t3_l2t_send_event +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb3/cxgb3 0xf9bbfe12 t3_l2t_get +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb3/cxgb3 0xfdb7ed36 t3_l2t_send_slow +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0x0abf31fa cxgb4_create_server +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0x0ad49486 cxgb4_port_viid +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0x0e43bdbc cxgb4_sync_txq_pidx +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0x10bceff1 cxgb4_clip_get +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0x10fb9826 cxgb4_free_stid +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0x1537681d cxgb4_clip_release +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0x18702b32 cxgb4_write_sgl +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0x1a1733a3 cxgb4_remove_server_filter +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0x1c1fa892 cxgb4_map_skb +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0x1ec86c7d cxgb4_read_tpte +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0x2629c65b cxgb4_flush_eq_cache +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0x2b7c8d13 cxgb4_update_root_dev_clip +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0x2d39369f cxgb4_crypto_send +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0x3009eb34 cxgb4_dbfifo_count +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0x30678c5a cxgb4_port_idx +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0x3208887a cxgb4_free_atid +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0x46b0214e cxgb4_check_l2t_valid +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0x476b4551 cxgb4_bar2_sge_qregs +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0x49eec5c4 cxgb4_inline_tx_skb +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0x4c34ccb0 cxgb4_pktgl_to_skb +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0x4f00062a cxgb4_remove_tid +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0x50ee5c07 cxgb4_best_aligned_mtu +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0x5970be28 cxgb4_select_ntuple +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0x5abde304 cxgb4_reclaim_completed_tx +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0x5c7dfa70 cxgb4_ring_tx_db +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0x676a11a9 cxgb4_unregister_uld +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0x6770b5ab cxgb4_port_chan +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0x6e422070 cxgb4_create_server6 +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0x72a89b8e cxgb4_iscsi_init +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0x77ee02cb t4_cleanup_clip_tbl +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0x8ccf23c7 cxgb4_read_sge_timestamp +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0x8e685dc5 cxgb4_alloc_atid +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0x8fafe00d cxgb4_get_srq_entry +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0x917e83e0 cxgb4_ofld_send +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0x93476cb6 cxgb4_l2t_get +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0x9d40ab5f cxgb4_port_e2cchan +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0xa8db193f cxgb4_smt_release +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0xa96a9004 cxgb4_alloc_sftid +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0xaf31534f cxgb4_l2t_send +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0xcac42f02 cxgb4_immdata_send +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0xd083e72a cxgb4_register_uld +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0xd69a0294 cxgb4_best_mtu +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0xe3ca64f6 cxgb4_remove_server +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0xe6063677 cxgb4_alloc_stid +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0xed583035 cxgb4_smt_alloc_switching +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0xf004ad0d cxgb4_get_tcp_stats +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0xf222f097 cxgb4_l2t_release +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0xf2a07551 cxgb4_create_server_filter +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0xfc7b3ce2 cxgb4_l2t_alloc_switching +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 0x2b4ec4ba cxgbi_ppm_init +EXPORT_SYMBOL drivers/net/ethernet/chelsio/libcxgb/libcxgb 0x406a3706 cxgbi_ppm_ppod_release +EXPORT_SYMBOL drivers/net/ethernet/chelsio/libcxgb/libcxgb 0x514b20b5 cxgbi_ppm_ppods_reserve +EXPORT_SYMBOL drivers/net/ethernet/chelsio/libcxgb/libcxgb 0x669dc188 cxgb_find_route6 +EXPORT_SYMBOL drivers/net/ethernet/chelsio/libcxgb/libcxgb 0x99b4252e cxgbi_ppm_release +EXPORT_SYMBOL drivers/net/ethernet/chelsio/libcxgb/libcxgb 0xe15607bd cxgb_find_route +EXPORT_SYMBOL drivers/net/ethernet/chelsio/libcxgb/libcxgb 0xf12040fa cxgbi_ppm_make_ppod_hdr +EXPORT_SYMBOL drivers/net/ethernet/cisco/enic/enic 0x2f93e4e0 vnic_dev_register +EXPORT_SYMBOL drivers/net/ethernet/cisco/enic/enic 0x67582576 vnic_dev_get_res_count +EXPORT_SYMBOL drivers/net/ethernet/cisco/enic/enic 0x6e9cd756 enic_api_devcmd_proxy_by_index +EXPORT_SYMBOL drivers/net/ethernet/cisco/enic/enic 0x8cd1d27b vnic_dev_unregister +EXPORT_SYMBOL drivers/net/ethernet/cisco/enic/enic 0xdbceba73 vnic_dev_get_res +EXPORT_SYMBOL drivers/net/ethernet/cisco/enic/enic 0xfaf2157a vnic_dev_get_pdev +EXPORT_SYMBOL drivers/net/ethernet/emulex/benet/be2net 0x473375dc be_roce_unregister_driver +EXPORT_SYMBOL drivers/net/ethernet/emulex/benet/be2net 0x4e2e10d2 be_roce_mcc_cmd +EXPORT_SYMBOL drivers/net/ethernet/emulex/benet/be2net 0xeee25217 be_roce_register_driver +EXPORT_SYMBOL drivers/net/ethernet/freescale/dpaa2/fsl-dpaa2-eth 0x4412391e dpaa2_phc_index +EXPORT_SYMBOL drivers/net/ethernet/freescale/enetc/fsl-enetc-ptp 0x5431a304 enetc_phc_index +EXPORT_SYMBOL drivers/net/ethernet/hisilicon/hns/hnae 0x072b0047 hnae_ae_unregister +EXPORT_SYMBOL drivers/net/ethernet/hisilicon/hns/hnae 0x80ffa519 hnae_get_handle +EXPORT_SYMBOL drivers/net/ethernet/hisilicon/hns/hnae 0x8b2a3d5a hnae_reinit_handle +EXPORT_SYMBOL drivers/net/ethernet/hisilicon/hns/hnae 0xb1266858 hnae_register_notifier +EXPORT_SYMBOL drivers/net/ethernet/hisilicon/hns/hnae 0xbe208f89 hnae_ae_register +EXPORT_SYMBOL drivers/net/ethernet/hisilicon/hns/hnae 0xcb6a9e48 hnae_put_handle +EXPORT_SYMBOL drivers/net/ethernet/hisilicon/hns/hnae 0xdf24adef hnae_unregister_notifier +EXPORT_SYMBOL drivers/net/ethernet/hisilicon/hns/hns_dsaf 0xf85a5215 hns_dsaf_roce_reset +EXPORT_SYMBOL drivers/net/ethernet/hisilicon/hns3/hnae3 0x08b66803 hnae3_unregister_client +EXPORT_SYMBOL drivers/net/ethernet/hisilicon/hns3/hnae3 0x12ffa161 hnae3_register_client +EXPORT_SYMBOL drivers/net/ethernet/hisilicon/hns3/hnae3 0x2cd8fb05 hnae3_register_ae_algo +EXPORT_SYMBOL drivers/net/ethernet/hisilicon/hns3/hnae3 0x752ea585 hnae3_unregister_ae_algo +EXPORT_SYMBOL drivers/net/ethernet/hisilicon/hns3/hnae3 0xe6a75840 hnae3_set_client_init_flag +EXPORT_SYMBOL drivers/net/ethernet/hisilicon/hns3/hnae3 0xe8f464d4 hnae3_unregister_ae_dev +EXPORT_SYMBOL drivers/net/ethernet/hisilicon/hns3/hnae3 0xf2bdadb6 hnae3_register_ae_dev +EXPORT_SYMBOL drivers/net/ethernet/intel/i40e/i40e 0x0d9f5d54 i40e_register_client +EXPORT_SYMBOL drivers/net/ethernet/intel/i40e/i40e 0xaa147152 i40e_unregister_client +EXPORT_SYMBOL drivers/net/ethernet/intel/iavf/iavf 0x3c6ddd97 iavf_register_client +EXPORT_SYMBOL drivers/net/ethernet/intel/iavf/iavf 0x8d540fa4 iavf_unregister_client +EXPORT_SYMBOL drivers/net/ethernet/marvell/octeontx2/af/octeontx2_mbox 0x0fdc2bbf otx2_mbox_wait_for_rsp +EXPORT_SYMBOL drivers/net/ethernet/marvell/octeontx2/af/octeontx2_mbox 0x2499fadc otx2_reply_invalid_msg +EXPORT_SYMBOL drivers/net/ethernet/marvell/octeontx2/af/octeontx2_mbox 0x73e69a91 otx2_mbox_reset +EXPORT_SYMBOL drivers/net/ethernet/marvell/octeontx2/af/octeontx2_mbox 0x7662745a otx2_mbox_msg_send +EXPORT_SYMBOL drivers/net/ethernet/marvell/octeontx2/af/octeontx2_mbox 0x8f772a3f otx2_mbox_id2name +EXPORT_SYMBOL drivers/net/ethernet/marvell/octeontx2/af/octeontx2_mbox 0x9b31ac0f otx2_mbox_init +EXPORT_SYMBOL drivers/net/ethernet/marvell/octeontx2/af/octeontx2_mbox 0xb4aad48e otx2_mbox_check_rsp_msgs +EXPORT_SYMBOL drivers/net/ethernet/marvell/octeontx2/af/octeontx2_mbox 0xbf9ea653 otx2_mbox_get_rsp +EXPORT_SYMBOL drivers/net/ethernet/marvell/octeontx2/af/octeontx2_mbox 0xd6fbe5e9 otx2_mbox_destroy +EXPORT_SYMBOL drivers/net/ethernet/marvell/octeontx2/af/octeontx2_mbox 0xdb4194c1 __otx2_mbox_reset +EXPORT_SYMBOL drivers/net/ethernet/marvell/octeontx2/af/octeontx2_mbox 0xee8eac42 otx2_mbox_nonempty +EXPORT_SYMBOL drivers/net/ethernet/marvell/octeontx2/af/octeontx2_mbox 0xf1f28e01 otx2_mbox_busy_poll_for_rsp +EXPORT_SYMBOL drivers/net/ethernet/marvell/octeontx2/af/octeontx2_mbox 0xfbdbea06 otx2_mbox_alloc_msg_rsp +EXPORT_SYMBOL drivers/net/ethernet/marvell/octeontx2/nic/octeontx2_nicpf 0x125250da otx2_attach_npa_nix +EXPORT_SYMBOL drivers/net/ethernet/marvell/octeontx2/nic/octeontx2_nicpf 0x1c1ceeaf otx2_set_mac_address +EXPORT_SYMBOL drivers/net/ethernet/marvell/octeontx2/nic/octeontx2_nicpf 0x4eac2ef9 mbox_handler_npa_lf_alloc +EXPORT_SYMBOL drivers/net/ethernet/marvell/octeontx2/nic/octeontx2_nicpf 0x5ef3e014 otx2_sq_append_skb +EXPORT_SYMBOL drivers/net/ethernet/marvell/octeontx2/nic/octeontx2_nicpf 0x72c9806c otx2_stop +EXPORT_SYMBOL drivers/net/ethernet/marvell/octeontx2/nic/octeontx2_nicpf 0x806575ee otx2_get_stats64 +EXPORT_SYMBOL drivers/net/ethernet/marvell/octeontx2/nic/octeontx2_nicpf 0x83405567 otx2_get_mac_from_af +EXPORT_SYMBOL drivers/net/ethernet/marvell/octeontx2/nic/octeontx2_nicpf 0x8eabbebd otx2_tx_timeout +EXPORT_SYMBOL drivers/net/ethernet/marvell/octeontx2/nic/octeontx2_nicpf 0x9fe92da4 otx2_open +EXPORT_SYMBOL drivers/net/ethernet/marvell/octeontx2/nic/octeontx2_nicpf 0xa194b97d mbox_handler_msix_offset +EXPORT_SYMBOL drivers/net/ethernet/marvell/octeontx2/nic/octeontx2_nicpf 0xb183fe34 mbox_handler_nix_txsch_alloc +EXPORT_SYMBOL drivers/net/ethernet/marvell/octeontx2/nic/octeontx2_nicpf 0xbbe3a5d8 otx2_set_real_num_queues +EXPORT_SYMBOL drivers/net/ethernet/marvell/octeontx2/nic/octeontx2_nicpf 0xc9fbb6d2 otx2vf_set_ethtool_ops +EXPORT_SYMBOL drivers/net/ethernet/marvell/octeontx2/nic/octeontx2_nicpf 0xcfd650ad mbox_handler_nix_lf_alloc +EXPORT_SYMBOL drivers/net/ethernet/marvell/octeontx2/nic/octeontx2_nicpf 0xf31fe186 otx2_mbox_up_handler_cgx_link_event +EXPORT_SYMBOL drivers/net/ethernet/marvell/octeontx2/nic/octeontx2_nicpf 0xf3709fa0 mbox_handler_nix_bp_enable +EXPORT_SYMBOL drivers/net/ethernet/marvell/octeontx2/nic/octeontx2_nicpf 0xfd0a013b otx2_detach_resources +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x003f7f0e mlx4_max_tc +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x02351bf7 mlx4_release_eq +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x08402cf4 mlx4_SET_PORT_VXLAN +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x11b7b476 mlx4_SET_PORT_fcs_check +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x143c0de2 mlx4_gen_slaves_port_mgt_ev +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x19adefa0 mlx4_SET_PORT_PRIO2TC +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x2669afb7 mlx4_tunnel_steer_add +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x27a9f61c mlx4_is_eq_shared +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x2888492c get_phv_bit +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x30f8d41e mlx4_get_roce_gid_from_slave +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x494fc65c mlx4_get_cpu_rmap +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x4e979a18 mlx4_SET_VPORT_QOS_set +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x53680de9 mlx4_get_slave_node_guid +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x569b6b39 mlx4_get_eqs_per_port +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x5b43db6d mlx4_SET_PORT_user_mac +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x5be75b06 mlx4_SET_PORT_SCHEDULER +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x5e561dee mlx4_ALLOCATE_VPP_get +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x65fe811c mlx4_query_diag_counters +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x77d96143 mlx4_get_slave_port_state +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x781371a9 mlx4_SET_PORT_general +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 0x80c6d78a mlx4_SET_MCAST_FLTR +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x8e30a4f5 mlx4_gen_pkey_eqe +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x8f94f1ec mlx4_get_is_vlan_offload_disabled +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xa0b4bf07 set_phv_bit +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xa5a1f5d2 mlx4_test_async +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xaee15a6a mlx4_gen_guid_change_eqe +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xb3144fa8 mlx4_is_eq_vector_valid +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xb71f6e4d mlx4_get_slave_from_roce_gid +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xba0358bb mlx4_SET_PORT_user_mtu +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xc2d4c5e2 mlx4_is_slave_active +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xc49430fd mlx4_SET_PORT_BEACON +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xc5df2cea mlx4_put_slave_node_guid +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xc8ad47df mlx4_get_module_info +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xcee55e4a mlx4_get_parav_qkey +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xd41196bb mlx4_eq_get_irq +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xda416872 mlx4_get_slave_pkey_gid_tbl_len +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xdae980e0 mlx4_SET_PORT_qpn_calc +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xded6b6bd mlx4_ALLOCATE_VPP_set +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xe8293a07 mlx4_assign_eq +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xeaaa8bdc set_and_calc_slave_port_state +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xebcee532 mlx4_SET_VPORT_QOS_get +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xede6a938 mlx4_test_interrupt +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xf17a36be mlx4_gen_port_state_change_eqe +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xf7f060ee mlx4_sync_pkey_table +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x01e5c49f mlx5_cmd_free_uar +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x01f81234 mlx5_alloc_bfreg +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x06a74e4e mlx5_fpga_mem_read +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x06c2e1e0 mlx5_core_roce_gid_set +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x08722f9a mlx5_rl_is_in_range +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x0a596545 mlx5_eswitch_vport_rep +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x0ba7ed46 mlx5_eq_enable +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x0ce112fb mlx5_core_modify_rq +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x0cf6a89c mlx5_core_create_tis +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x113d98a3 mlx5_modify_header_alloc +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x114f029d mlx5_fpga_sbu_conn_destroy +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x11db90dc mlx5_cmd_create_vport_lag +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x120f41b9 mlx5_add_flow_rules +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x170dccbf mlx5_core_create_rq +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x1935d9cd mlx5_core_attach_mcg +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x193ae952 mlx5_core_modify_tis +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x20270573 mlx5_qp_debugfs_cleanup +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x212e4473 mlx5_eswitch_register_vport_reps +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x23b9b412 mlx5_qp_debugfs_init +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x243898d0 mlx5_rl_remove_rate +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x25d78dc1 mlx5_eswitch_get_proto_dev +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x266a10f6 mlx5_unregister_interface +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x27ac3131 mlx5_cmd_alloc_uar +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x27fa4d63 __tracepoint_mlx5_fs_del_fg +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x287336de mlx5_core_create_psv +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x2b4cbc46 mlx5_core_destroy_mkey +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x300d8a8e mlx5_nic_vport_disable_roce +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x32705594 __tracepoint_mlx5_fs_del_rule +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x332e7d8c mlx5_packet_reformat_dealloc +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x34bdeef0 mlx5_get_flow_namespace +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x35eac97d mlx5_eswitch_vport_match_metadata_enabled +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x3760e034 mlx5_core_create_mkey +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x37651b47 __tracepoint_mlx5_fs_set_fte +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x381861eb mlx5_core_alloc_transport_domain +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x39153448 mlx5_debug_qp_remove +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x39c2cdc3 mlx5_lag_is_sriov +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x3a5f053f mlx5_core_destroy_tis +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x3c02cb78 mlx5_eswitch_reg_c1_loopback_enabled +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x3e960390 __tracepoint_mlx5_fw +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x3fb9179e mlx5_create_auto_grouped_flow_table +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x400f9b35 mlx5_rl_remove_rate_raw +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x42bca503 mlx5_rdma_rn_get_params +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x43b6ba45 mlx5_lag_is_active +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x43dd3895 mlx5_notifier_register +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x46150cf1 __tracepoint_mlx5_fs_del_ft +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x4d64450a mlx5_eq_create_generic +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x50e98572 mlx5_cmd_cleanup +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x543dc4d8 mlx5_comp_vectors_count +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x5c622a2c mlx5_eswitch_add_send_to_vport_rule +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x5df00255 mlx5_packet_reformat_alloc +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x5f898f7c mlx5_core_destroy_tir +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 0x62e90740 mlx5_fc_create +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x66820015 mlx5_eq_update_ci +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x68a155c6 mlx5_cmd_set_state +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x69514fec mlx5_get_uars_page +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x6c887bfd mlx5_get_fdb_sub_ns +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x6d03c2c1 mlx5_cmd_exec_cb +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x6d9f68ba mlx5_eq_notifier_register +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x6de7e8a1 mlx5_cmd_exec_polling +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x6f3c67ec mlx5_core_destroy_rq +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x71cca09c mlx5_core_destroy_rqt +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x71d91d3b mlx5_fc_destroy +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x72c7f1e7 mlx5_core_query_rq +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x7564eb58 mlx5_core_create_cq +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x7e7eda44 mlx5_cmd_init +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x839e3b7b mlx5_core_query_mkey +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x848eb98f mlx5_core_destroy_psv +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x85a57473 mlx5_rl_add_rate_raw +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x8612480c mlx5_cmd_init_async_ctx +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x87a25e22 __tracepoint_mlx5_fs_add_rule +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x89061ff4 mlx5_eswitch_get_encap_mode +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x8eeefaa0 __tracepoint_mlx5_fs_add_fg +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x9230e0af mlx5_core_dealloc_pd +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x93fc8237 mlx5_core_create_tir +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x96eb2c99 mlx5_fc_id +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x9884865a mlx5_del_flow_rules +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x98ab7cc6 mlx5_destroy_flow_table +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x9a1bc8fa mlx5_free_bfreg +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xa3f3a23c mlx5_register_interface +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xa6f53647 mlx5_modify_header_dealloc +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xa7070acd mlx5_fpga_get_sbu_caps +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xa9a3db7f mlx5_cmd_destroy_vport_lag +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xae9ea383 __tracepoint_mlx5_fs_del_fte +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xaf1877ed mlx5_rl_add_rate +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xaf853a21 mlx5_cmd_cleanup_async_ctx +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xaff8cf10 mlx5_lag_get_slave_port +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xb07a8d9d mlx5_buf_alloc +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xb1c5ce34 mlx5_lag_is_roce +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xb3918d75 mlx5_eq_disable +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xb898299f mlx5_core_dealloc_transport_domain +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xb92f1cbd mlx5_core_modify_sq +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xbe6276bd mlx5_core_alloc_pd +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xbf5afadd mlx5_comp_irq_get_affinity_mask +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xc3a1e1cc mlx5_query_port_ib_proto_oper +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xc5f9ac52 mlx5_lag_get_roce_netdev +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xc709ffa1 mlx5_core_query_sq +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xc74fccfe mlx5_eq_get_eqe +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xc7604dbb mlx5_core_modify_cq_moderation +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xc875e0ea mlx5_eq_notifier_unregister +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xc8e379fc mlx5_eswitch_unregister_vport_reps +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xc8ee77c7 mlx5_vector2eqn +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xcaa00509 mlx5_fc_query +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xd320c706 mlx5_lag_query_cong_counters +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xd8aab8b6 mlx5_eswitch_uplink_get_proto_dev +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xd99cc4ab mlx5_put_uars_page +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xdb6d5621 mlx5_debug_qp_add +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xdeab0db6 mlx5_fs_remove_rx_underlay_qpn +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xe00ec25d mlx5_core_destroy_cq +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xe04b9658 mlx5_eswitch_get_vport_metadata_for_match +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xe18a5ea3 mlx5_core_create_rqt +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xe1d0d58d mlx5_fs_add_rx_underlay_qpn +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xe44b8acc mlx5_fpga_sbu_conn_create +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xe66c1a68 mlx5_fpga_sbu_conn_sendmsg +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xe795415a mlx5_debugfs_root +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xedeaf552 mlx5_core_query_vendor_id +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xee164ce8 mlx5_eq_destroy_generic +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xee989d4d mlx5_core_modify_cq +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xef01bb32 __tracepoint_mlx5_fs_add_ft +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xf120e368 mlx5_create_lag_demux_flow_table +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xf25ee398 mlx5_cmd_exec +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xf6dd70bf mlx5_notifier_unregister +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xf7f5081b mlx5_core_query_cq +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xf80c7470 mlx5_core_detach_mcg +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xf9ceebc7 mlx5_fpga_mem_write +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxfw/mlxfw 0xd63f6a99 mlxfw_firmware_flash +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0x00995d08 mlxsw_core_port_eth_set +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0x00a70ff5 mlxsw_core_trap_state_set +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0x02998acf mlxsw_afa_block_append_counter +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 0x04d20215 mlxsw_core_rx_listener_unregister +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0x0600d6a2 mlxsw_core_trap_unregister +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0x07abcc0c mlxsw_afa_block_append_trap +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0x0ca34ccf mlxsw_core_max_ports +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0x0e2b5842 mlxsw_afa_block_append_vlan_modify +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0x0e81c09c mlxsw_afk_destroy +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0x15801382 mlxsw_afk_key_info_put +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0x19fa5852 mlxsw_core_flush_owq +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0x1a115d7a mlxsw_core_port_devlink_port_get +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0x1cb8f858 mlxsw_reg_trans_query +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 0x25b8ba43 mlxsw_afa_create +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0x2c68ced3 mlxsw_core_read_frc_h +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0x2decde87 mlxsw_core_fw_flash_start +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0x2f2c4887 mlxsw_afa_block_append_qos_switch_prio +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0x35ba2254 mlxsw_afk_values_add_u32 +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0x3f123442 mlxsw_core_kvd_sizes_get +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0x41055a45 mlxsw_core_event_listener_unregister +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0x43a9b87e mlxsw_afa_block_terminate +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0x464743a7 mlxsw_core_skb_transmit +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 0x47fd6eee mlxsw_core_fw_flash_end +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0x484489a4 mlxsw_cmd_exec +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0x4a6ed376 mlxsw_core_port_fini +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0x5cf3dd79 mlxsw_core_bus_device_unregister +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0x5ff17b5c mlxsw_afa_block_destroy +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0x615ef5fc mlxsw_afa_block_append_qos_dscp +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 0x65e16da4 mlxsw_afk_key_info_get +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0x66615214 mlxsw_env_get_module_eeprom +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0x692ac04e mlxsw_afk_create +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0x71e1d813 mlxsw_core_port_clear +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0x73cf1d7a mlxsw_core_res_get +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0x749556a2 mlxsw_afk_key_info_subset +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0x76a65e3b mlxsw_core_port_init +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0x77768221 mlxsw_core_module_max_width +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0x77d83398 mlxsw_core_read_frc_l +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 0x858c30d0 mlxsw_afa_block_create +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0x8854d198 mlxsw_reg_write +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0x8ba5fa7e mlxsw_core_lag_mapping_set +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0x902c3533 mlxsw_core_schedule_dw +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0x9133b826 mlxsw_core_trap_register +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0x963cfb6a mlxsw_core_resources_query +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 0x9e41f494 mlxsw_afk_encode +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0xa3d0d2b6 mlxsw_afa_block_append_fwd +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0xa7765e88 mlxsw_reg_query +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0xa7ccb62a mlxsw_afa_block_append_qos_dsfield +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0xb0717797 mlxsw_afa_block_append_fid_set +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0xb2f24677 mlxsw_core_res_valid +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0xb5e762fa mlxsw_afk_values_add_buf +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 0xb9d6d798 mlxsw_core_rx_listener_register +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0xba05b3b0 mlxsw_core_emad_string_tlv_enable +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0xbc222a8d mlxsw_afk_clear +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0xbd3a28a9 mlxsw_core_bus_device_register +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0xbe82d6cc mlxsw_env_get_module_info +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0xbfb7df3c mlxsw_core_driver_priv +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0xbfd01f33 mlxsw_core_port_ib_set +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0xc9a421e2 mlxsw_core_driver_unregister +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0xc9c2e4cc mlxsw_core_lag_mapping_clear +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0xcaeaebb3 mlxsw_afa_block_append_mirror +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 0xcd9a40a4 mlxsw_afa_block_append_drop +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0xd1a82f0b mlxsw_core_lag_mapping_get +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0xd252e62d mlxsw_core_skb_transmit_busy +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 0xd9f711ae mlxsw_afa_block_append_mcrouter +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0xdab0369e mlxsw_core_driver_register +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 0xdeb1dc2e mlxsw_afa_block_first_kvdl_index +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0xdeff4950 mlxsw_core_event_listener_register +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0xe16986dd mlxsw_afa_block_activity_get +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0xea0a1c3b mlxsw_core_ptp_transmitted +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0xeae4a5b6 mlxsw_core_skb_receive +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0xecab212a mlxsw_afa_cookie_lookup +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0xf2ca3bae mlxsw_core_res_query_enabled +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0xf4909bea mlxsw_core_port_type_get +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0xf7fbba9f mlxsw_afa_block_append_qos_ecn +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0xff007c25 mlxsw_core_cpu_port_fini +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_i2c 0xabe60672 mlxsw_i2c_driver_register +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_i2c 0xbc44f126 mlxsw_i2c_driver_unregister +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_pci 0x25b64e26 mlxsw_pci_driver_unregister +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_pci 0x53866fc7 mlxsw_pci_driver_register +EXPORT_SYMBOL drivers/net/ethernet/mscc/mscc_ocelot_common 0x07d26cf3 ocelot_deinit +EXPORT_SYMBOL drivers/net/ethernet/mscc/mscc_ocelot_common 0x09932151 ocelot_fdb_del +EXPORT_SYMBOL drivers/net/ethernet/mscc/mscc_ocelot_common 0x0b150222 ocelot_netdevice_nb +EXPORT_SYMBOL drivers/net/ethernet/mscc/mscc_ocelot_common 0x0c7457b6 __ocelot_read_ix +EXPORT_SYMBOL drivers/net/ethernet/mscc/mscc_ocelot_common 0x15575764 ocelot_fdb_add +EXPORT_SYMBOL drivers/net/ethernet/mscc/mscc_ocelot_common 0x1741a2a4 ocelot_regfields_init +EXPORT_SYMBOL drivers/net/ethernet/mscc/mscc_ocelot_common 0x1c69d1ee ocelot_regmap_init +EXPORT_SYMBOL drivers/net/ethernet/mscc/mscc_ocelot_common 0x21894014 ocelot_init_port +EXPORT_SYMBOL drivers/net/ethernet/mscc/mscc_ocelot_common 0x33d26da0 ocelot_port_policer_del +EXPORT_SYMBOL drivers/net/ethernet/mscc/mscc_ocelot_common 0x3e98f29c ocelot_init +EXPORT_SYMBOL drivers/net/ethernet/mscc/mscc_ocelot_common 0x41c3c995 ocelot_port_readl +EXPORT_SYMBOL drivers/net/ethernet/mscc/mscc_ocelot_common 0x43c3dbde ocelot_adjust_link +EXPORT_SYMBOL drivers/net/ethernet/mscc/mscc_ocelot_common 0x45025b31 ocelot_port_enable +EXPORT_SYMBOL drivers/net/ethernet/mscc/mscc_ocelot_common 0x57338afc ocelot_ptp_gettime64 +EXPORT_SYMBOL drivers/net/ethernet/mscc/mscc_ocelot_common 0x5ebb6ae2 ocelot_ptp_verify +EXPORT_SYMBOL drivers/net/ethernet/mscc/mscc_ocelot_common 0x5fd84469 ocelot_get_ts_info +EXPORT_SYMBOL drivers/net/ethernet/mscc/mscc_ocelot_common 0x60e88116 ocelot_get_txtstamp +EXPORT_SYMBOL drivers/net/ethernet/mscc/mscc_ocelot_common 0x73ebfd5f ocelot_bridge_stp_state_set +EXPORT_SYMBOL drivers/net/ethernet/mscc/mscc_ocelot_common 0x7e2f0d91 ocelot_get_sset_count +EXPORT_SYMBOL drivers/net/ethernet/mscc/mscc_ocelot_common 0x82e4351c ocelot_get_ethtool_stats +EXPORT_SYMBOL drivers/net/ethernet/mscc/mscc_ocelot_common 0x8757a8e4 ocelot_ptp_enable +EXPORT_SYMBOL drivers/net/ethernet/mscc/mscc_ocelot_common 0x890aa9ec ocelot_fdb_dump +EXPORT_SYMBOL drivers/net/ethernet/mscc/mscc_ocelot_common 0x89f8e2e6 ocelot_ptp_settime64 +EXPORT_SYMBOL drivers/net/ethernet/mscc/mscc_ocelot_common 0x8a56c815 ocelot_vlan_add +EXPORT_SYMBOL drivers/net/ethernet/mscc/mscc_ocelot_common 0x95f2dce5 ocelot_port_writel +EXPORT_SYMBOL drivers/net/ethernet/mscc/mscc_ocelot_common 0x982bde3f ocelot_port_disable +EXPORT_SYMBOL drivers/net/ethernet/mscc/mscc_ocelot_common 0x98dd9115 ocelot_ptp_adjfine +EXPORT_SYMBOL drivers/net/ethernet/mscc/mscc_ocelot_common 0x9969a242 ocelot_set_ageing_time +EXPORT_SYMBOL drivers/net/ethernet/mscc/mscc_ocelot_common 0x9c705f42 ocelot_probe_port +EXPORT_SYMBOL drivers/net/ethernet/mscc/mscc_ocelot_common 0xa206df9e ocelot_init_timestamp +EXPORT_SYMBOL drivers/net/ethernet/mscc/mscc_ocelot_common 0xa57f01ba ocelot_get_max_mtu +EXPORT_SYMBOL drivers/net/ethernet/mscc/mscc_ocelot_common 0xa7df6a8d ocelot_hwstamp_get +EXPORT_SYMBOL drivers/net/ethernet/mscc/mscc_ocelot_common 0xb2815454 ocelot_ptp_adjtime +EXPORT_SYMBOL drivers/net/ethernet/mscc/mscc_ocelot_common 0xb6247b78 ocelot_port_policer_add +EXPORT_SYMBOL drivers/net/ethernet/mscc/mscc_ocelot_common 0xbb073142 ocelot_configure_cpu +EXPORT_SYMBOL drivers/net/ethernet/mscc/mscc_ocelot_common 0xc39f788a ocelot_vlan_del +EXPORT_SYMBOL drivers/net/ethernet/mscc/mscc_ocelot_common 0xc8589520 ocelot_port_add_txtstamp_skb +EXPORT_SYMBOL drivers/net/ethernet/mscc/mscc_ocelot_common 0xcc1ba99e __ocelot_rmw_ix +EXPORT_SYMBOL drivers/net/ethernet/mscc/mscc_ocelot_common 0xcca3d264 ocelot_port_bridge_leave +EXPORT_SYMBOL drivers/net/ethernet/mscc/mscc_ocelot_common 0xccd7d738 ocelot_port_set_maxlen +EXPORT_SYMBOL drivers/net/ethernet/mscc/mscc_ocelot_common 0xcffac895 ocelot_hwstamp_set +EXPORT_SYMBOL drivers/net/ethernet/mscc/mscc_ocelot_common 0xd0348add ocelot_switchdev_nb +EXPORT_SYMBOL drivers/net/ethernet/mscc/mscc_ocelot_common 0xd0e5dfbf __ocelot_write_ix +EXPORT_SYMBOL drivers/net/ethernet/mscc/mscc_ocelot_common 0xd56505fe ocelot_deinit_timestamp +EXPORT_SYMBOL drivers/net/ethernet/mscc/mscc_ocelot_common 0xdc1259f0 ocelot_get_strings +EXPORT_SYMBOL drivers/net/ethernet/mscc/mscc_ocelot_common 0xe54a91e8 ocelot_switchdev_blocking_nb +EXPORT_SYMBOL drivers/net/ethernet/mscc/mscc_ocelot_common 0xeaf202d5 ocelot_port_bridge_join +EXPORT_SYMBOL drivers/net/ethernet/mscc/mscc_ocelot_common 0xf6973317 ocelot_chip_init +EXPORT_SYMBOL drivers/net/ethernet/mscc/mscc_ocelot_common 0xf81afa31 ocelot_port_vlan_filtering +EXPORT_SYMBOL drivers/net/ethernet/qlogic/qed/qed 0x1309d550 qed_get_iscsi_ops +EXPORT_SYMBOL drivers/net/ethernet/qlogic/qed/qed 0x36dea385 qed_get_fcoe_ops +EXPORT_SYMBOL drivers/net/ethernet/qlogic/qed/qed 0x4403526d qed_get_eth_ops +EXPORT_SYMBOL drivers/net/ethernet/qlogic/qed/qed 0x4f264472 qed_put_iscsi_ops +EXPORT_SYMBOL drivers/net/ethernet/qlogic/qed/qed 0x6fa80511 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/qede/qede 0x91b2e71b qede_rdma_unregister_driver +EXPORT_SYMBOL drivers/net/ethernet/qlogic/qede/qede 0xc6b35609 qede_rdma_register_driver +EXPORT_SYMBOL drivers/net/hamradio/hdlcdrv 0x15ea93fb hdlcdrv_register +EXPORT_SYMBOL drivers/net/hamradio/hdlcdrv 0xb7c28dfe hdlcdrv_arbitrate +EXPORT_SYMBOL drivers/net/hamradio/hdlcdrv 0xb9e1230b hdlcdrv_unregister +EXPORT_SYMBOL drivers/net/hamradio/hdlcdrv 0xdef0f57d hdlcdrv_transmitter +EXPORT_SYMBOL drivers/net/hamradio/hdlcdrv 0xf6a0e5c5 hdlcdrv_receiver +EXPORT_SYMBOL drivers/net/mdio 0x3e17f466 mdio_set_flag +EXPORT_SYMBOL drivers/net/mdio 0x60443957 mdio45_probe +EXPORT_SYMBOL drivers/net/mdio 0x63e0fee5 mdio45_links_ok +EXPORT_SYMBOL drivers/net/mdio 0x652fb0b6 mdio45_ethtool_ksettings_get_npage +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/phy/bcm-phy-lib 0xb60391f6 bcm54xx_auxctl_write +EXPORT_SYMBOL drivers/net/phy/mdio-bitbang 0x3db050d4 alloc_mdio_bitbang +EXPORT_SYMBOL drivers/net/phy/mdio-bitbang 0xf028429f free_mdio_bitbang +EXPORT_SYMBOL drivers/net/phy/mdio-cavium 0x0057ef0c cavium_mdiobus_write +EXPORT_SYMBOL drivers/net/phy/mdio-cavium 0x55b954dc cavium_mdiobus_read +EXPORT_SYMBOL drivers/net/phy/mdio-octeon 0x8a1d5c26 octeon_mdiobus_force_mod_depencency +EXPORT_SYMBOL drivers/net/phy/mdio-xgene 0x183414de xgene_mdio_wr_mac +EXPORT_SYMBOL drivers/net/phy/mdio-xgene 0x8a3cb768 xgene_enet_phy_register +EXPORT_SYMBOL drivers/net/phy/mdio-xgene 0x98137580 xgene_mdio_rgmii_read +EXPORT_SYMBOL drivers/net/phy/mdio-xgene 0xbb23ea1f xgene_mdio_rd_mac +EXPORT_SYMBOL drivers/net/phy/mdio-xgene 0xe9913f67 xgene_mdio_rgmii_write +EXPORT_SYMBOL drivers/net/ppp/pppox 0x1fd90170 pppox_compat_ioctl +EXPORT_SYMBOL drivers/net/ppp/pppox 0x7805f398 register_pppox_proto +EXPORT_SYMBOL drivers/net/ppp/pppox 0x7807fc4d pppox_ioctl +EXPORT_SYMBOL drivers/net/ppp/pppox 0x8530ad61 pppox_unbind_sock +EXPORT_SYMBOL drivers/net/ppp/pppox 0xe0ff7a18 unregister_pppox_proto +EXPORT_SYMBOL drivers/net/sungem_phy 0x3cb02fe9 sungem_phy_probe +EXPORT_SYMBOL drivers/net/team/team 0x0fd11f8f team_options_register +EXPORT_SYMBOL drivers/net/team/team 0x30e37c20 team_modeop_port_enter +EXPORT_SYMBOL drivers/net/team/team 0x4160b7fe team_modeop_port_change_dev_addr +EXPORT_SYMBOL drivers/net/team/team 0x53608457 team_options_change_check +EXPORT_SYMBOL drivers/net/team/team 0x7f0cd149 team_mode_unregister +EXPORT_SYMBOL drivers/net/team/team 0xbcfb3307 team_option_inst_set_change +EXPORT_SYMBOL drivers/net/team/team 0xcc53cc4b team_options_unregister +EXPORT_SYMBOL drivers/net/team/team 0xe63a6b97 team_mode_register +EXPORT_SYMBOL drivers/net/usb/usbnet 0x47b975e3 usbnet_manage_power +EXPORT_SYMBOL drivers/net/usb/usbnet 0x5fd9e6a0 usbnet_link_change +EXPORT_SYMBOL drivers/net/usb/usbnet 0xf4679a9c usbnet_device_suggests_idle +EXPORT_SYMBOL drivers/net/wan/hdlc 0x114b58ec hdlc_start_xmit +EXPORT_SYMBOL drivers/net/wan/hdlc 0x1e3125e2 register_hdlc_protocol +EXPORT_SYMBOL drivers/net/wan/hdlc 0x237da795 unregister_hdlc_protocol +EXPORT_SYMBOL drivers/net/wan/hdlc 0x59eb511f hdlc_close +EXPORT_SYMBOL drivers/net/wan/hdlc 0x66b1a05b attach_hdlc_protocol +EXPORT_SYMBOL drivers/net/wan/hdlc 0xc3115b65 hdlc_ioctl +EXPORT_SYMBOL drivers/net/wan/hdlc 0xcc25fc5f alloc_hdlcdev +EXPORT_SYMBOL drivers/net/wan/hdlc 0xdaec3912 detach_hdlc_protocol +EXPORT_SYMBOL drivers/net/wan/hdlc 0xe1c01f5b hdlc_open +EXPORT_SYMBOL drivers/net/wan/hdlc 0xf5da7b00 unregister_hdlc_device +EXPORT_SYMBOL drivers/net/wimax/i2400m/i2400m 0x639f495e i2400m_unknown_barker +EXPORT_SYMBOL drivers/net/wireless/ath/ath 0x078b3cf3 dfs_pattern_detector_init +EXPORT_SYMBOL drivers/net/wireless/ath/ath 0x108b188f ath_is_49ghz_allowed +EXPORT_SYMBOL drivers/net/wireless/ath/ath 0x418be499 ath_key_config +EXPORT_SYMBOL drivers/net/wireless/ath/ath 0x4571aea8 ath_is_world_regd +EXPORT_SYMBOL drivers/net/wireless/ath/ath 0x5ff54316 ath_rxbuf_alloc +EXPORT_SYMBOL drivers/net/wireless/ath/ath 0x65d1a5c7 ath_is_mybeacon +EXPORT_SYMBOL drivers/net/wireless/ath/ath 0x68461d09 ath_hw_keyreset +EXPORT_SYMBOL drivers/net/wireless/ath/ath 0x75cbe3c2 ath_hw_setbssidmask +EXPORT_SYMBOL drivers/net/wireless/ath/ath 0x83b22122 ath_hw_cycle_counters_update +EXPORT_SYMBOL drivers/net/wireless/ath/ath 0x9434a154 ath_reg_notifier_apply +EXPORT_SYMBOL drivers/net/wireless/ath/ath 0xa116d25d ath_key_delete +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 0xc85640fe ath_regd_init +EXPORT_SYMBOL drivers/net/wireless/ath/ath 0xd4d1298e ath_printk +EXPORT_SYMBOL drivers/net/wireless/ath/ath 0xef4aea3a ath_hw_get_listen_time +EXPORT_SYMBOL drivers/net/wireless/ath/ath 0xf08b651e ath_regd_get_band_ctl +EXPORT_SYMBOL drivers/net/wireless/ath/ath10k/ath10k_core 0x015e5db2 ath10k_debug_mask +EXPORT_SYMBOL drivers/net/wireless/ath/ath10k/ath10k_core 0x03bab39c ath10k_coredump_get_mem_layout +EXPORT_SYMBOL drivers/net/wireless/ath/ath10k/ath10k_core 0x0bfd97c9 ath10k_ce_completed_send_next +EXPORT_SYMBOL drivers/net/wireless/ath/ath10k/ath10k_core 0x188fd6c4 ath10k_ce_alloc_pipe +EXPORT_SYMBOL drivers/net/wireless/ath/ath10k/ath10k_core 0x1a6af20b ath10k_ce_cancel_send_next +EXPORT_SYMBOL drivers/net/wireless/ath/ath10k/ath10k_core 0x2b6ec31c ath10k_htt_hif_tx_complete +EXPORT_SYMBOL drivers/net/wireless/ath/ath10k/ath10k_core 0x2de7ef51 ath10k_ce_send +EXPORT_SYMBOL drivers/net/wireless/ath/ath10k/ath10k_core 0x3843641c ath10k_ce_init_pipe +EXPORT_SYMBOL drivers/net/wireless/ath/ath10k/ath10k_core 0x3c93163e ath10k_ce_revoke_recv_next +EXPORT_SYMBOL drivers/net/wireless/ath/ath10k/ath10k_core 0x474fa2f0 __ath10k_ce_rx_num_free_bufs +EXPORT_SYMBOL drivers/net/wireless/ath/ath10k/ath10k_core 0x47a08230 ath10k_ce_rx_post_buf +EXPORT_SYMBOL drivers/net/wireless/ath/ath10k/ath10k_core 0x4fad2fa4 ath10k_mac_tx_push_pending +EXPORT_SYMBOL drivers/net/wireless/ath/ath10k/ath10k_core 0x50dd77c4 __tracepoint_ath10k_log_dbg +EXPORT_SYMBOL drivers/net/wireless/ath/ath10k/ath10k_core 0x51fc9de8 ath10k_core_fetch_board_file +EXPORT_SYMBOL drivers/net/wireless/ath/ath10k/ath10k_core 0x55b17539 ath10k_ce_dump_registers +EXPORT_SYMBOL drivers/net/wireless/ath/ath10k/ath10k_core 0x5dc46594 ath10k_ce_completed_recv_next_nolock +EXPORT_SYMBOL drivers/net/wireless/ath/ath10k/ath10k_core 0x5f6ebd89 ath10k_err +EXPORT_SYMBOL drivers/net/wireless/ath/ath10k/ath10k_core 0x64f84d0c ath10k_ce_per_engine_service +EXPORT_SYMBOL drivers/net/wireless/ath/ath10k/ath10k_core 0x697fa121 ath10k_core_stop +EXPORT_SYMBOL drivers/net/wireless/ath/ath10k/ath10k_core 0x69ad22af ath10k_core_create +EXPORT_SYMBOL drivers/net/wireless/ath/ath10k/ath10k_core 0x6d4320ad ath10k_ce_rx_update_write_idx +EXPORT_SYMBOL drivers/net/wireless/ath/ath10k/ath10k_core 0x74739c54 ath10k_core_unregister +EXPORT_SYMBOL drivers/net/wireless/ath/ath10k/ath10k_core 0x7ce050c5 ath10k_ce_completed_recv_next +EXPORT_SYMBOL drivers/net/wireless/ath/ath10k/ath10k_core 0x7e5d33d1 ath10k_htc_process_trailer +EXPORT_SYMBOL drivers/net/wireless/ath/ath10k/ath10k_core 0x7ed255c0 ath10k_htc_rx_completion_handler +EXPORT_SYMBOL drivers/net/wireless/ath/ath10k/ath10k_core 0x91aadf9c ath10k_core_free_board_files +EXPORT_SYMBOL drivers/net/wireless/ath/ath10k/ath10k_core 0x92793b61 ath10k_ce_enable_interrupts +EXPORT_SYMBOL drivers/net/wireless/ath/ath10k/ath10k_core 0x9d0f49fd ath10k_core_register +EXPORT_SYMBOL drivers/net/wireless/ath/ath10k/ath10k_core 0x9e9f8343 ath10k_htt_t2h_msg_handler +EXPORT_SYMBOL drivers/net/wireless/ath/ath10k/ath10k_core 0xa099fab7 ath10k_info +EXPORT_SYMBOL drivers/net/wireless/ath/ath10k/ath10k_core 0xa95eeed9 ath10k_htc_tx_completion_handler +EXPORT_SYMBOL drivers/net/wireless/ath/ath10k/ath10k_core 0xabcb815a ath10k_ce_free_rri +EXPORT_SYMBOL drivers/net/wireless/ath/ath10k/ath10k_core 0xadaa18a0 ath10k_htt_rx_hl_indication +EXPORT_SYMBOL drivers/net/wireless/ath/ath10k/ath10k_core 0xade766d2 ath10k_htt_txrx_compl_task +EXPORT_SYMBOL drivers/net/wireless/ath/ath10k/ath10k_core 0xb1613d1d ath10k_ce_disable_interrupts +EXPORT_SYMBOL drivers/net/wireless/ath/ath10k/ath10k_core 0xbfc121ec ath10k_ce_per_engine_service_any +EXPORT_SYMBOL drivers/net/wireless/ath/ath10k/ath10k_core 0xc7584d14 ath10k_htt_rx_pktlog_completion_handler +EXPORT_SYMBOL drivers/net/wireless/ath/ath10k/ath10k_core 0xcaa430c9 ath10k_ce_free_pipe +EXPORT_SYMBOL drivers/net/wireless/ath/ath10k/ath10k_core 0xcaf0b15e ath10k_ce_completed_send_next_nolock +EXPORT_SYMBOL drivers/net/wireless/ath/ath10k/ath10k_core 0xce421f30 ath10k_coredump_new +EXPORT_SYMBOL drivers/net/wireless/ath/ath10k/ath10k_core 0xe15cb5c5 ath10k_core_start +EXPORT_SYMBOL drivers/net/wireless/ath/ath10k/ath10k_core 0xe35563d6 ath10k_ce_num_free_src_entries +EXPORT_SYMBOL drivers/net/wireless/ath/ath10k/ath10k_core 0xe4876204 ath10k_ce_send_nolock +EXPORT_SYMBOL drivers/net/wireless/ath/ath10k/ath10k_core 0xe77e0083 ath10k_ce_deinit_pipe +EXPORT_SYMBOL drivers/net/wireless/ath/ath10k/ath10k_core 0xed6e118c ath10k_print_driver_info +EXPORT_SYMBOL drivers/net/wireless/ath/ath10k/ath10k_core 0xf1f895df ath10k_warn +EXPORT_SYMBOL drivers/net/wireless/ath/ath10k/ath10k_core 0xf96922e7 ath10k_ce_alloc_rri +EXPORT_SYMBOL drivers/net/wireless/ath/ath10k/ath10k_core 0xfb5cfa97 __ath10k_ce_send_revert +EXPORT_SYMBOL drivers/net/wireless/ath/ath10k/ath10k_core 0xfdd205d8 ath10k_htc_notify_tx_completion +EXPORT_SYMBOL drivers/net/wireless/ath/ath10k/ath10k_core 0xfde2493e ath10k_core_destroy +EXPORT_SYMBOL drivers/net/wireless/ath/ath11k/ath11k 0x38987ebd ath11k_core_get_hw_mac_id +EXPORT_SYMBOL drivers/net/wireless/ath/ath11k/ath11k 0xb92dae8e ath11k_dp_service_srng +EXPORT_SYMBOL drivers/net/wireless/ath/ath6kl/ath6kl_core 0x021de9a5 ath6kl_cfg80211_resume +EXPORT_SYMBOL drivers/net/wireless/ath/ath6kl/ath6kl_core 0x0d7fe2e0 ath6kl_cfg80211_suspend +EXPORT_SYMBOL drivers/net/wireless/ath/ath6kl/ath6kl_core 0x0f843397 ath6kl_core_destroy +EXPORT_SYMBOL drivers/net/wireless/ath/ath6kl/ath6kl_core 0x12031bb7 ath6kl_core_create +EXPORT_SYMBOL drivers/net/wireless/ath/ath6kl/ath6kl_core 0x1354043d ath6kl_warn +EXPORT_SYMBOL drivers/net/wireless/ath/ath6kl/ath6kl_core 0x15fb9ccf ath6kl_core_cleanup +EXPORT_SYMBOL drivers/net/wireless/ath/ath6kl/ath6kl_core 0x1f39847d ath6kl_core_rx_complete +EXPORT_SYMBOL drivers/net/wireless/ath/ath6kl/ath6kl_core 0x2b7daa13 ath6kl_core_init +EXPORT_SYMBOL drivers/net/wireless/ath/ath6kl/ath6kl_core 0x3502feef ath6kl_info +EXPORT_SYMBOL drivers/net/wireless/ath/ath6kl/ath6kl_core 0x3eade520 ath6kl_stop_txrx +EXPORT_SYMBOL drivers/net/wireless/ath/ath6kl/ath6kl_core 0x4d127272 ath6kl_core_tx_complete +EXPORT_SYMBOL drivers/net/wireless/ath/ath6kl/ath6kl_core 0x769b80e2 ath6kl_hif_intr_bh_handler +EXPORT_SYMBOL drivers/net/wireless/ath/ath6kl/ath6kl_core 0x7b88a7c6 ath6kl_read_tgt_stats +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/ath9k/ath9k_common 0x003d0262 ath9k_cmn_process_rate +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_common 0x013ecdaa ath9k_cmn_spectral_init_debug +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_common 0x0d4ad5af ath9k_cmn_get_hw_crypto_keytype +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_common 0x374adc10 ath9k_cmn_init_channels_rates +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_common 0x3ffe7bf9 ath9k_cmn_spectral_scan_config +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_common 0x5272ea41 ath_cmn_process_fft +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_common 0x57e15dd0 ath9k_cmn_beacon_config_ap +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_common 0x5d9ef899 ath9k_cmn_process_rssi +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_common 0x5df5eaf2 ath9k_cmn_debug_phy_err +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_common 0x7299cb5c ath9k_cmn_spectral_deinit_debug +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_common 0x89300e10 ath9k_cmn_rx_accept +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_common 0x8bf5d547 ath9k_cmn_rx_skb_postprocess +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_common 0x96acb3f2 ath9k_cmn_reload_chainmask +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_common 0x987704b3 ath9k_cmn_spectral_scan_trigger +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_common 0x9e7857e2 ath9k_cmn_debug_modal_eeprom +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_common 0x9f60acdf ath9k_cmn_get_channel +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_common 0xab678f98 ath9k_cmn_debug_recv +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_common 0xb76fccc7 ath9k_cmn_debug_stat_rx +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_common 0xb99205aa ath9k_cmn_init_crypto +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_common 0xcc42a908 ath9k_cmn_beacon_config_sta +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_common 0xd1ea692e ath9k_cmn_beacon_config_adhoc +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_common 0xd2981357 ath9k_cmn_count_streams +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_common 0xe8478bb7 ath9k_cmn_debug_base_eeprom +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_common 0xef6ae52f ath9k_cmn_update_txpow +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_common 0xf2acaa49 ath9k_cmn_setup_ht_cap +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x01c862dd ath9k_hw_reset +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x02383f94 ath9k_hw_beaconq_setup +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x032c6686 ar9003_mci_get_next_gpm_offset +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x053b5311 ath9k_hw_btcoex_set_weight +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x067bc0c0 ath9k_hw_btcoex_init_2wire +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x09d8d2cf ar9003_paprd_setup_gain_table +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x0c70f090 ath9k_hw_disable_interrupts +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x0d8083bc ath9k_hw_reset_tsf +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x0f77dafc ath9k_hw_get_tsf_offset +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x109bf747 ath9k_hw_stopdmarecv +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x125f84a4 ath9k_hw_disable_mib_counters +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x154d77c5 ath9k_hw_gpio_free +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x19ee456a ar9003_paprd_init_table +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x20e45e1c ath9k_hw_gpio_request_in +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x2118e20f ath9k_hw_get_txq_props +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x22944ce1 ath9k_hw_check_alive +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x2a6ada9d ath9k_hw_phy_disable +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x2d676949 ath9k_hw_getrxfilter +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x3219f136 ath9k_hw_startpcureceive +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x32ac80dc ath9k_hw_wow_wakeup +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x35106dbe ath9k_hw_wait +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x351b9550 ath9k_hw_updatetxtriglevel +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x360e2c1a ath9k_hw_btcoex_set_concur_txprio +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x3761adfe ath9k_hw_puttxbuf +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x3f0b345a ar9003_hw_bb_watchdog_dbg_info +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x3fdac0a5 ar9003_mci_setup +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x405b1d39 ath9k_hw_btcoex_enable +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x443213e7 ath9k_hw_btcoex_bt_stomp +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x448f93d2 ath9k_hw_setrxfilter +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x47dc481c ath9k_hw_gpio_request_out +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x4dd72662 ath9k_hw_set_sta_beacon_timers +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x500db563 ar9003_get_pll_sqsum_dvc +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x58d4f96c ath9k_hw_intrpend +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x598a9678 ath9k_hw_kill_interrupts +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x5dfba016 ath9k_hw_setantenna +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x5e3e31e8 ar9003_hw_disable_phy_restart +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x5e8e82f3 ath9k_hw_check_nav +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x629d6581 ath9k_hw_reset_calvalid +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x65e7b806 ath9k_hw_setuprxdesc +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x675eae9b ath9k_hw_btcoex_init_scheme +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x683ca988 ath9k_hw_beaconinit +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x68e8bf6c ath9k_hw_init_global_settings +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x6a3abffc ath9k_hw_btcoex_disable +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x715c343a ath9k_hw_set_tsfadjust +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x716a550c ath9k_hw_setmcastfilter +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x71d771c8 ar9003_mci_cleanup +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x75a5a9d6 ath9k_hw_setopmode +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x77d4accc ath9k_hw_addrxbuf_edma +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x79a097fa ath9k_hw_stop_dma_queue +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x7df72ec7 ath9k_hw_putrxbuf +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x8142c19f ath9k_hw_computetxtime +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x81c2a733 ath9k_hw_setup_statusring +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x81fb3907 ath9k_hw_abort_tx_dma +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x858f39cc ath9k_hw_releasetxqueue +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x87c673bb ar9003_paprd_create_curve +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x8b8b6a35 ar9003_paprd_enable +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x90b1d8cc ath9k_hw_wow_apply_pattern +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x91f947ba ath9k_hw_set_interrupts +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x9a2e8b79 ath9k_hw_write_associd +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x9acd61c4 ar9003_mci_send_message +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x9c036791 ath9k_hw_rxprocdesc +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x9d467bc9 ar9003_paprd_populate_single_table +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x9dc7bb43 ath9k_hw_gettsf64 +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x9e824b32 ar9003_mci_set_bt_version +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xa0d7c391 ath9k_hw_getchan_noise +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xa23a5416 ath9k_hw_set_tx_filter +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xa25e811b ar9003_mci_state +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xa69649f1 ath9k_hw_resume_interrupts +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xa73dae12 ath9k_hw_wow_enable +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xa8072a29 ath9k_hw_gettxbuf +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xa85b2fd0 ath9k_hw_set_gpio +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xaec4802a ath9k_hw_setpower +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xb2fded56 ath9k_hw_gen_timer_stop +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xb315c15c ar9003_hw_bb_watchdog_check +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xb58dac15 ath9k_hw_set_txq_props +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xb7317b09 ar9003_is_paprd_enabled +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xb873acb2 ath9k_hw_disable +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xba0758cb ath9k_hw_resettxqueue +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xbb6b0242 ath9k_hw_gen_timer_start +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xc01a6534 ath9k_hw_settsf64 +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xc2fa2516 ath9k_hw_setrxabort +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xc7d45939 ath9k_hw_gpio_get +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xca489c9b ath9k_hw_process_rxdesc_edma +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xcae461ae ar9003_mci_send_wlan_channels +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xcf353fd0 ath9k_hw_name +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xcfe212fb ath9k_hw_btcoex_init_3wire +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xd5175115 ar9003_paprd_is_done +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xd6fd8d60 ath9k_hw_deinit +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xd6ff3a84 ath9k_hw_bstuck_nfcal +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xd75fb6e2 ath9k_hw_getnf +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xd7acf0da ath9k_hw_txstart +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xdc8bcb65 ath_gen_timer_free +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xe0998a23 ar9003_mci_get_interrupt +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xe3923d8e ath_gen_timer_isr +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xe45b8004 ath9k_hw_init +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xe59a3bfb ath9k_hw_ani_monitor +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xe7b639e3 ath9k_hw_enable_interrupts +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xeb084fcf ath9k_hw_gettsf32 +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xeee6d405 ath9k_hw_numtxpending +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xef72cb50 ath9k_hw_loadnf +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xf080ad78 ath9k_hw_btcoex_deinit +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xf16893c6 ath9k_hw_init_btcoex_hw +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xf2905195 ath9k_hw_set_txpowerlimit +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xf4b318b8 ath_gen_timer_alloc +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xf624196c ath9k_hw_set_rx_bufsize +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xf8a3e6ce ath9k_hw_abortpcurecv +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xfd985b22 ath9k_hw_setuptxqueue +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xfddfaaad ath9k_hw_btcoex_init_mci +EXPORT_SYMBOL drivers/net/wireless/atmel/atmel 0x83c8003c atmel_open +EXPORT_SYMBOL drivers/net/wireless/atmel/atmel 0xc3e74213 stop_atmel_card +EXPORT_SYMBOL drivers/net/wireless/atmel/atmel 0xd24191b0 init_atmel_card +EXPORT_SYMBOL drivers/net/wireless/broadcom/brcm80211/brcmutil/brcmutil 0x1906648e brcmu_boardrev_str +EXPORT_SYMBOL drivers/net/wireless/broadcom/brcm80211/brcmutil/brcmutil 0x1bb8661c brcmu_pktq_penq +EXPORT_SYMBOL drivers/net/wireless/broadcom/brcm80211/brcmutil/brcmutil 0x218079aa brcmu_pktq_flush +EXPORT_SYMBOL drivers/net/wireless/broadcom/brcm80211/brcmutil/brcmutil 0x36b4b5e0 brcmu_pkt_buf_get_skb +EXPORT_SYMBOL drivers/net/wireless/broadcom/brcm80211/brcmutil/brcmutil 0x3a6e771b brcmu_pktq_mdeq +EXPORT_SYMBOL drivers/net/wireless/broadcom/brcm80211/brcmutil/brcmutil 0x46f92b4e brcmu_pktq_init +EXPORT_SYMBOL drivers/net/wireless/broadcom/brcm80211/brcmutil/brcmutil 0x4c3edf77 brcmu_pktq_pdeq_tail +EXPORT_SYMBOL drivers/net/wireless/broadcom/brcm80211/brcmutil/brcmutil 0x67dae87b brcmu_pktq_mlen +EXPORT_SYMBOL drivers/net/wireless/broadcom/brcm80211/brcmutil/brcmutil 0x857e4984 brcmu_pktq_pdeq +EXPORT_SYMBOL drivers/net/wireless/broadcom/brcm80211/brcmutil/brcmutil 0x9c8f0b9d 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 0xb19f7441 brcmu_pktq_pflush +EXPORT_SYMBOL drivers/net/wireless/broadcom/brcm80211/brcmutil/brcmutil 0xcf71c0eb brcmu_pktq_peek_tail +EXPORT_SYMBOL drivers/net/wireless/broadcom/brcm80211/brcmutil/brcmutil 0xd6217d91 brcmu_d11_attach +EXPORT_SYMBOL drivers/net/wireless/broadcom/brcm80211/brcmutil/brcmutil 0xe4fb20aa brcmu_pktq_penq_head +EXPORT_SYMBOL drivers/net/wireless/broadcom/brcm80211/brcmutil/brcmutil 0xe751c9cc brcmu_pktq_pdeq_match +EXPORT_SYMBOL drivers/net/wireless/intel/ipw2x00/libipw 0x084c0aa1 libipw_wx_set_encode +EXPORT_SYMBOL drivers/net/wireless/intel/ipw2x00/libipw 0x0e14a406 libipw_wx_get_scan +EXPORT_SYMBOL drivers/net/wireless/intel/ipw2x00/libipw 0x17203583 libipw_rx +EXPORT_SYMBOL drivers/net/wireless/intel/ipw2x00/libipw 0x1de79f8f libipw_freq_to_channel +EXPORT_SYMBOL drivers/net/wireless/intel/ipw2x00/libipw 0x2424c98d libipw_wx_set_encodeext +EXPORT_SYMBOL drivers/net/wireless/intel/ipw2x00/libipw 0x2930c26b libipw_xmit +EXPORT_SYMBOL drivers/net/wireless/intel/ipw2x00/libipw 0x33f91dc7 free_libipw +EXPORT_SYMBOL drivers/net/wireless/intel/ipw2x00/libipw 0x36d61926 libipw_txb_free +EXPORT_SYMBOL drivers/net/wireless/intel/ipw2x00/libipw 0x525943b1 libipw_channel_to_freq +EXPORT_SYMBOL drivers/net/wireless/intel/ipw2x00/libipw 0x568d3c17 libipw_get_geo +EXPORT_SYMBOL drivers/net/wireless/intel/ipw2x00/libipw 0x69a0b9b9 libipw_set_geo +EXPORT_SYMBOL drivers/net/wireless/intel/ipw2x00/libipw 0x8100cebd libipw_get_channel +EXPORT_SYMBOL drivers/net/wireless/intel/ipw2x00/libipw 0x85285ac7 alloc_libipw +EXPORT_SYMBOL drivers/net/wireless/intel/ipw2x00/libipw 0x99934102 libipw_wx_get_encode +EXPORT_SYMBOL drivers/net/wireless/intel/ipw2x00/libipw 0xa88dcdd6 libipw_channel_to_index +EXPORT_SYMBOL drivers/net/wireless/intel/ipw2x00/libipw 0xb12b2710 libipw_rx_mgt +EXPORT_SYMBOL drivers/net/wireless/intel/ipw2x00/libipw 0xb3fb1bcc libipw_get_channel_flags +EXPORT_SYMBOL drivers/net/wireless/intel/ipw2x00/libipw 0xb50aa871 libipw_is_valid_channel +EXPORT_SYMBOL drivers/net/wireless/intel/ipw2x00/libipw 0xe3bfac01 libipw_networks_age +EXPORT_SYMBOL drivers/net/wireless/intel/ipw2x00/libipw 0xfafb73ae libipw_wx_get_encodeext +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x02a17d2f il_poll_bit +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x08d9152e il_cmd_queue_unmap +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x0d5946a5 il_send_bt_config +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x147b4a2b il_init_channel_map +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x16a0c9fa il_rx_queue_update_write_ptr +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x17bb8426 il_mac_change_interface +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x18edd603 il_leds_exit +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x1d242f76 il_irq_handle_error +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x1ef14047 il_read_targ_mem +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x1f7f9045 il_send_lq_cmd +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x24efd0a3 il_connection_init_rx_config +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x2829c065 il_eeprom_query_addr +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x2bf7eea6 il_queue_space +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x2ca9b26d il_restore_stations +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x2eb0f5cf il_mac_remove_interface +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x346d40bc il_get_active_dwell_time +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x374e3c9a il_free_channel_map +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x379bf5a8 il_send_stats_request +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x38bc4dad il_setup_watchdog +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x39c6bc2b il_fill_probe_req +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x3ddb2f1f il_get_passive_dwell_time +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x3f390e15 il_set_flags_for_band +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x3fbdc5c1 il_mac_add_interface +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x416bd26a il_debug_level +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x439d9284 il_get_single_channel_number +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x4857b86b _il_poll_bit +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x4927c184 il_alloc_txq_mem +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x4992b93d il_tx_queue_unmap +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x4afa2dd2 il_tx_queue_free +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x4e200900 il_dbgfs_register +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x5256e40b il_set_rxon_channel +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x52af5186 il_check_rxon_cmd +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x54e5a97f il_apm_init +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x5637a4bb il_txq_update_write_ptr +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x666bada5 il_is_ht40_tx_allowed +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x71cef59c il_dbgfs_unregister +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x74464dbd il_hdl_pm_debug_stats +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x7904e6a6 il_set_rxon_ht +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x796f29c9 il_mac_sta_remove +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x7bd1c082 il_mac_config +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x7ced87c4 il_send_cmd_pdu_async +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x8080ad14 il_init_geos +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x841d75df il_tx_queue_init +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x86434565 il_mac_conf_tx +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x88d4f9e2 il_hdl_spectrum_measurement +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x8cccef4c il_get_channel_info +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x8d47f3ee il_send_add_sta +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x8dac47d1 il_force_reset +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x9025b3cb il_mac_reset_tsf +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x9139b4c7 il_leds_init +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x91f6a820 il_tx_cmd_complete +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x93c6a061 il_cancel_scan_deferred_work +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x94ea9ee9 il_pm_ops +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x960477f5 il_rd_prph +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x97976e2d il_clear_bit +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x9b9f28ba il_hdl_csa +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x9cc714af il_bg_watchdog +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0xa4410527 il_send_cmd +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0xa5daa6f5 il_rx_queue_space +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0xae0e2b25 il_set_bit +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0xb1b871b4 il_tx_queue_reset +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0xb3ef8c75 il_init_scan_params +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0xb65510a3 il_get_cmd_string +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0xb7077110 il_eeprom_init +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0xb7bd33ff il_isr +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0xb9a01fbf il_update_stats +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0xbcfb3b60 il_hdl_error +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0xbd4b34f6 il_send_cmd_pdu +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0xbe1b3135 il_wr_prph +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0xbe7457d2 il_write_targ_mem +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0xbef58b2a _il_apm_stop +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0xc1e2e42f il_set_decrypted_flag +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0xc2ed0526 il_set_rate +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0xc56351a9 il_free_txq_mem +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0xc5b0d64c il_add_station_common +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0xc620d1c3 il_hdl_pm_sleep +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0xc8de4681 il_set_tx_power +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0xcbce6b0c il_scan_cancel +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0xcbd2808e il_power_update_mode +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0xceecf87c il_add_beacon_time +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0xcf0c2fd7 il_usecs_to_beacons +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0xd4e04b90 il_mac_bss_info_changed +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0xd5174068 il_clear_ucode_stations +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0xd7a3b95a il_eeprom_query16 +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0xd9fa70ff il_setup_rx_scan_handlers +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0xdb8a9a6f il_power_initialize +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0xdd2ad211 il_send_rxon_timing +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0xdd9bf6bb il_setup_scan_deferred_work +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0xde18ae24 il_get_free_ucode_key_idx +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0xe01ae285 il_scan_cancel_timeout +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0xe0c586db il_rx_queue_alloc +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0xe5223835 il_mac_flush +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0xe7f4d530 il_chswitch_done +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0xea68ccb2 il_full_rxon_required +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0xea933321 il_get_lowest_plcp +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0xef495a9f il_tx_cmd_protection +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0xf39cacef il_set_rxon_hwcrypto +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0xf70a693b il_bcast_addr +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0xfaa64af9 il_free_geos +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0xfabee8e6 il_mac_hw_scan +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0xfc05b264 il_send_cmd_sync +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0xfc6c1570 il_apm_stop +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0xfe12dad8 il_eeprom_free +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0xff10a1d5 il_cmd_queue_free +EXPORT_SYMBOL drivers/net/wireless/intel/iwlwifi/iwlwifi 0x1ee9c199 __tracepoint_iwlwifi_dev_ucode_event +EXPORT_SYMBOL drivers/net/wireless/intel/iwlwifi/iwlwifi 0x20a6a247 __tracepoint_iwlwifi_dev_ucode_cont_event +EXPORT_SYMBOL drivers/net/wireless/intel/iwlwifi/iwlwifi 0xb72ade7d __tracepoint_iwlwifi_dev_ucode_wrap_event +EXPORT_SYMBOL drivers/net/wireless/intersil/hostap/hostap 0x0e184ce4 hostap_free_data +EXPORT_SYMBOL drivers/net/wireless/intersil/hostap/hostap 0x13abdd5a hostap_dump_tx_header +EXPORT_SYMBOL drivers/net/wireless/intersil/hostap/hostap 0x1bb92902 hostap_set_string +EXPORT_SYMBOL drivers/net/wireless/intersil/hostap/hostap 0x3675911c hostap_remove_proc +EXPORT_SYMBOL drivers/net/wireless/intersil/hostap/hostap 0x43e2e258 hostap_master_start_xmit +EXPORT_SYMBOL drivers/net/wireless/intersil/hostap/hostap 0x461a8216 hostap_80211_ops +EXPORT_SYMBOL drivers/net/wireless/intersil/hostap/hostap 0x46fa091f hostap_info_init +EXPORT_SYMBOL drivers/net/wireless/intersil/hostap/hostap 0x4b8ec9ce hostap_info_process +EXPORT_SYMBOL drivers/net/wireless/intersil/hostap/hostap 0x51c1daf6 hostap_handle_sta_tx_exc +EXPORT_SYMBOL drivers/net/wireless/intersil/hostap/hostap 0x5c4fd736 hostap_get_porttype +EXPORT_SYMBOL drivers/net/wireless/intersil/hostap/hostap 0x75934c58 hostap_set_multicast_list_queue +EXPORT_SYMBOL drivers/net/wireless/intersil/hostap/hostap 0x7994fea8 hostap_init_data +EXPORT_SYMBOL drivers/net/wireless/intersil/hostap/hostap 0x7b02c46e hostap_set_auth_algs +EXPORT_SYMBOL drivers/net/wireless/intersil/hostap/hostap 0x7c64b49d hostap_init_ap_proc +EXPORT_SYMBOL drivers/net/wireless/intersil/hostap/hostap 0x7e4c1680 hostap_set_hostapd +EXPORT_SYMBOL drivers/net/wireless/intersil/hostap/hostap 0x7fb75891 hostap_dump_rx_header +EXPORT_SYMBOL drivers/net/wireless/intersil/hostap/hostap 0x851df65b hostap_set_hostapd_sta +EXPORT_SYMBOL drivers/net/wireless/intersil/hostap/hostap 0x9054e0c4 hostap_init_proc +EXPORT_SYMBOL drivers/net/wireless/intersil/hostap/hostap 0x97e1302f prism2_update_comms_qual +EXPORT_SYMBOL drivers/net/wireless/intersil/hostap/hostap 0x9b0bea15 hostap_set_word +EXPORT_SYMBOL drivers/net/wireless/intersil/hostap/hostap 0x9fe18fb9 hostap_check_sta_fw_version +EXPORT_SYMBOL drivers/net/wireless/intersil/hostap/hostap 0xa0ca5f56 hostap_add_interface +EXPORT_SYMBOL drivers/net/wireless/intersil/hostap/hostap 0xa76ac2b9 hostap_set_encryption +EXPORT_SYMBOL drivers/net/wireless/intersil/hostap/hostap 0xaf1754ed hostap_set_antsel +EXPORT_SYMBOL drivers/net/wireless/intersil/hostap/hostap 0xb4b77c8b hostap_80211_get_hdrlen +EXPORT_SYMBOL drivers/net/wireless/intersil/hostap/hostap 0xc36f895b hostap_set_roaming +EXPORT_SYMBOL drivers/net/wireless/intersil/hostap/hostap 0xc98a1d03 hostap_remove_interface +EXPORT_SYMBOL drivers/net/wireless/intersil/hostap/hostap 0xea2fcdb3 hostap_setup_dev +EXPORT_SYMBOL drivers/net/wireless/intersil/hostap/hostap 0xf200a410 hostap_80211_rx +EXPORT_SYMBOL drivers/net/wireless/intersil/orinoco/orinoco 0x0b35e7a9 orinoco_change_mtu +EXPORT_SYMBOL drivers/net/wireless/intersil/orinoco/orinoco 0x1d317014 orinoco_down +EXPORT_SYMBOL drivers/net/wireless/intersil/orinoco/orinoco 0x20b542b4 hermes_struct_init +EXPORT_SYMBOL drivers/net/wireless/intersil/orinoco/orinoco 0x2102648d orinoco_if_del +EXPORT_SYMBOL drivers/net/wireless/intersil/orinoco/orinoco 0x3fdce148 orinoco_stop +EXPORT_SYMBOL drivers/net/wireless/intersil/orinoco/orinoco 0x42447221 orinoco_if_add +EXPORT_SYMBOL drivers/net/wireless/intersil/orinoco/orinoco 0x4ffd498e orinoco_init +EXPORT_SYMBOL drivers/net/wireless/intersil/orinoco/orinoco 0x5cc27f9d __orinoco_ev_rx +EXPORT_SYMBOL drivers/net/wireless/intersil/orinoco/orinoco 0x6ecd1385 __orinoco_ev_info +EXPORT_SYMBOL drivers/net/wireless/intersil/orinoco/orinoco 0x76b376f6 free_orinocodev +EXPORT_SYMBOL drivers/net/wireless/intersil/orinoco/orinoco 0x7ef5f73f orinoco_set_multicast_list +EXPORT_SYMBOL drivers/net/wireless/intersil/orinoco/orinoco 0x99e7099c orinoco_process_xmit_skb +EXPORT_SYMBOL drivers/net/wireless/intersil/orinoco/orinoco 0xa27a1a2f orinoco_tx_timeout +EXPORT_SYMBOL drivers/net/wireless/intersil/orinoco/orinoco 0xb26681d8 orinoco_up +EXPORT_SYMBOL drivers/net/wireless/intersil/orinoco/orinoco 0xc8cbf0dd orinoco_open +EXPORT_SYMBOL drivers/net/wireless/intersil/orinoco/orinoco 0xf0341025 alloc_orinocodev +EXPORT_SYMBOL drivers/net/wireless/intersil/orinoco/orinoco 0xffe27bca orinoco_interrupt +EXPORT_SYMBOL drivers/net/wireless/mediatek/mt76/mt76 0xfe2ff85d mt76_wcid_key_setup +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/btcoexist/btcoexist 0x94a124b0 rtl_btc_get_ops_pointer +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtl8192c/rtl8192c-common 0x04b48ad5 _rtl92c_phy_fw_rf_serial_write +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtl8192c/rtl8192c-common 0x07e28cc0 rtl92c_phy_set_io +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtl8192c/rtl8192c-common 0x0daf7343 _rtl92c_phy_set_rf_sleep +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtl8192c/rtl8192c-common 0x137684d5 rtl92c_phy_query_bb_reg +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtl8192c/rtl8192c-common 0x13805ee6 rtl92c_phy_lc_calibrate +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 0x25c5abf4 rtl92c_phy_set_bb_reg +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtl8192c/rtl8192c-common 0x2af4cf94 rtl92c_dm_check_txpower_tracking +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtl8192c/rtl8192c-common 0x2b005985 rtl92c_dm_init +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtl8192c/rtl8192c-common 0x2d15b23a rtl92c_phy_rf_config +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtl8192c/rtl8192c-common 0x3660ea3c _rtl92c_phy_dbm_to_txpwr_idx +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtl8192c/rtl8192c-common 0x37583047 _rtl92c_phy_fw_rf_serial_read +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtl8192c/rtl8192c-common 0x40dd732f rtl8192_phy_check_is_legal_rfpath +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtl8192c/rtl8192c-common 0x4aff85db rtl92c_phy_iq_calibrate +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtl8192c/rtl8192c-common 0x530016d9 _rtl92c_phy_rf_serial_read +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtl8192c/rtl8192c-common 0x56caa4ac rtl92c_set_fw_joinbss_report_cmd +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtl8192c/rtl8192c-common 0x5af68e9b rtl92c_phy_set_io_cmd +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtl8192c/rtl8192c-common 0x5c618ee4 rtl92c_set_fw_rsvdpagepkt +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtl8192c/rtl8192c-common 0x5e827ba6 rtl92c_phy_sw_chnl_callback +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtl8192c/rtl8192c-common 0x5ea9b1ed rtl92c_download_fw +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtl8192c/rtl8192c-common 0x6097751b rtl92c_dm_rf_saving +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtl8192c/rtl8192c-common 0x60fd6e6b rtl92c_dm_watchdog +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtl8192c/rtl8192c-common 0x66ee6583 rtl92c_phy_set_txpower_level +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtl8192c/rtl8192c-common 0x69255f8f rtl92c_phy_ap_calibrate +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtl8192c/rtl8192c-common 0x69f2c762 rtl92c_phy_update_txpower_dbm +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtl8192c/rtl8192c-common 0x6e0c52dc rtl92c_fill_h2c_cmd +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtl8192c/rtl8192c-common 0x90b2af72 _rtl92c_phy_rf_serial_write +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtl8192c/rtl8192c-common 0x95988273 rtl92c_dm_bt_coexist +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtl8192c/rtl8192c-common 0x96162758 rtl92c_dm_init_rate_adaptive_mask +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtl8192c/rtl8192c-common 0x98d0e542 rtl92c_phy_sw_chnl +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtl8192c/rtl8192c-common 0xab94aba9 _rtl92c_phy_txpwr_idx_to_dbm +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtl8192c/rtl8192c-common 0xb9624069 _rtl92c_phy_bb8192c_config_parafile +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtl8192c/rtl8192c-common 0xc43a91af rtl92c_dm_init_edca_turbo +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtl8192c/rtl8192c-common 0xc5e141fa rtl92c_phy_set_bw_mode +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtl8192c/rtl8192c-common 0xc632dd5e _rtl92c_phy_init_bb_rf_register_definition +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtl8192c/rtl8192c-common 0xcfa6ae94 rtl92c_bt_rssi_state_change +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtl8192c/rtl8192c-common 0xd413f81b rtl92c_firmware_selfreset +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtl8192c/rtl8192c-common 0xd921b083 _rtl92c_store_pwrindex_diffrate_offset +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtl8192c/rtl8192c-common 0xe1cedcd4 rtl92c_set_fw_pwrmode_cmd +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtl8192c/rtl8192c-common 0xe9ea22af rtl92c_dm_write_dig +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtl8192c/rtl8192c-common 0xebb44f87 rtl92c_phy_set_rfpath_switch +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtl8192c/rtl8192c-common 0xf7c6c14e rtl92ce_phy_set_rf_on +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtl_pci 0x10d687fd rtl_pci_disconnect +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtl_pci 0x5a1b0bb9 rtl_pci_suspend +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtl_pci 0xb9da785c rtl_pci_probe +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtl_pci 0xecf5043c rtl_pci_resume +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtl_usb 0x2ead7176 rtl_usb_resume +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtl_usb 0x6a2c7c04 rtl_usb_suspend +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtl_usb 0x9fee73a7 rtl_usb_disconnect +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtl_usb 0xeef4eb84 rtl_usb_probe +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtlwifi 0x026b8558 efuse_one_byte_read +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtlwifi 0x046bc57a rtl_signal_scale_mapping +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtlwifi 0x0b038e24 channel5g_80m +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtlwifi 0x0f711f4c rtl_cam_add_one_entry +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtlwifi 0x1b945315 rtl_addr_delay +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtlwifi 0x255dd74b rtl_init_rfkill +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtlwifi 0x2c557564 rtl_get_tcb_desc +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtlwifi 0x30a956d7 rtl_query_rxpwrpercentage +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtlwifi 0x434fa4b3 efuse_shadow_read +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtlwifi 0x47363738 rtl_cam_mark_invalid +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtlwifi 0x4b479f62 rtl_cam_delete_one_entry +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtlwifi 0x511d215f rtl_mrate_idx_to_arfr_id +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtlwifi 0x54824f58 channel5g +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtlwifi 0x637e6535 rtl_phy_scan_operation_backup +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtlwifi 0x79eb499a rtl_send_smps_action +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtlwifi 0x7bb378b6 rtl_cam_empty_entry +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtlwifi 0x7d5ad09d rtl_process_phyinfo +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtlwifi 0x802afa9c rtl_efuse_shadow_map_update +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtlwifi 0x8ea60059 rtl_fw_cb +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtlwifi 0x960c21f6 rtl_cmd_send_packet +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtlwifi 0x964918f8 rtl_dm_diginit +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtlwifi 0x97c4c83c rtl_collect_scan_list +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtlwifi 0x99121757 rtl_rx_ampdu_apply +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtlwifi 0xad4220b4 efuse_power_switch +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtlwifi 0xb0470b0a rtlwifi_rate_mapping +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtlwifi 0xb156984d rtl_ps_disable_nic +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtlwifi 0xb479b591 rtl_bb_delay +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtlwifi 0xbc150d6d rtl_hal_pwrseqcmdparsing +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtlwifi 0xc00a5c70 rtl_ps_enable_nic +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtlwifi 0xd4625af2 efuse_read_1byte +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtlwifi 0xd9f20020 rtl_cam_del_entry +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtlwifi 0xdeef89f4 rtl_rfreg_delay +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtlwifi 0xe42bbd15 rtl_c2hcmd_enqueue +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtlwifi 0xea984018 rtl_cam_reset_all_entry +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 0xf4c699ab rtl_cam_get_free_entry +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw88/rtw88_8723d 0x73d1feaa rtw8723d_hw_spec +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw88/rtw88_8822b 0x98318418 rtw8822b_hw_spec +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw88/rtw88_8822c 0x77f3ef26 rtw8822c_hw_spec +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw88/rtw88_core 0x04f3617c rtw_phy_load_tables +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw88/rtw88_core 0x0609c990 rtw_power_mode_change +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw88/rtw88_core 0x18ac4f0d rtw_bf_set_gid_table +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw88/rtw88_core 0x25ac0629 rtw_bf_enable_bfee_mu +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw88/rtw88_core 0x33b3f3c0 rtw_debug_mask +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw88/rtw88_core 0x34d7307a rtw_phy_write_rf_reg_sipi +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw88/rtw88_core 0x38d6e558 rtw_phy_read_rf +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw88/rtw88_core 0x3fe5fdf0 rtw_phy_init +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw88/rtw88_core 0x42f15fb6 rtw_unregister_hw +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw88/rtw88_core 0x432511fe rtw_phy_pwrtrack_avg +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 0x44f91b46 rtw_coex_read_indirect_reg +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw88/rtw88_core 0x4640c44f rtw_ops +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw88/rtw88_core 0x4ee2e437 rtw_coex_write_indirect_reg +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw88/rtw88_core 0x50bd8721 rtw_phy_cfg_agc +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw88/rtw88_core 0x50ce6f10 rtw_tx_report_enqueue +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw88/rtw88_core 0x519c8ba9 rtw_rate_size +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw88/rtw88_core 0x53ebb887 rtw_bf_enable_bfee_su +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw88/rtw88_core 0x58210e60 rtw_rate_section +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw88/rtw88_core 0x5934fc8d rtw_set_channel_mac +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw88/rtw88_core 0x64868fe9 rtw_chip_info_setup +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw88/rtw88_core 0x6c8dd81c rtw_register_hw +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw88/rtw88_core 0x6e1d444a rtw_phy_cfg_bb +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw88/rtw88_core 0x75c857a1 rtw_phy_pwrtrack_thermal_changed +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw88/rtw88_core 0x77c48a8b rtw_fw_do_iqk +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw88/rtw88_core 0x7a4a6bba rtw_phy_read_rf_sipi +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw88/rtw88_core 0x91a72cc6 rtw_fw_c2h_cmd_rx_irqsafe +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw88/rtw88_core 0x921ae8f3 rtw_read8_physical_efuse +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw88/rtw88_core 0x991a5dea rtw_tx_write_data_rsvd_page_get +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw88/rtw88_core 0xa392e496 rtw_tx_fill_tx_desc +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw88/rtw88_core 0xa6fbca14 rtw_phy_config_swing_table +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw88/rtw88_core 0xa7943005 rtw_restore_reg +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw88/rtw88_core 0xab77d1a5 rtw_parse_tbl_bb_pg +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw88/rtw88_core 0xb26cb902 rtw_rx_fill_rx_status +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw88/rtw88_core 0xb5833f9b rtw_bf_cfg_csi_rate +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw88/rtw88_core 0xb981840a rtw_coex_write_scbd +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw88/rtw88_core 0xca1215bb rtw_bf_remove_bfee_mu +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw88/rtw88_core 0xcb6f5f58 rtw_tx_write_data_h2c_get +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw88/rtw88_core 0xd5d84d34 rtw_core_init +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw88/rtw88_core 0xd778b10b rtw_bf_phy_init +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw88/rtw88_core 0xd799cd5c check_hw_ready +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw88/rtw88_core 0xe1805980 rtw_phy_write_rf_reg_mix +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw88/rtw88_core 0xe27626e2 rtw_phy_cfg_mac +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw88/rtw88_core 0xea81f63b rtw_parse_tbl_txpwr_lmt +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw88/rtw88_core 0xee36a31f rtw_phy_set_tx_power_level +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw88/rtw88_core 0xeee30afe rtw_rx_stats +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw88/rtw88_core 0xeef8c683 rtw_phy_cfg_rf +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw88/rtw88_core 0xf140d821 rtw_phy_pwrtrack_need_iqk +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw88/rtw88_core 0xf174b180 rtw_parse_tbl_phy_cond +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw88/rtw88_core 0xf30bc125 rtw_bf_remove_bfee_su +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw88/rtw88_core 0xf34249ad rtw_fw_lps_deep_mode +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw88/rtw88_core 0xf367e731 rtw_core_deinit +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw88/rtw88_core 0xf5d453bb rtw_phy_pwrtrack_get_pwridx +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw88/rtw88_core 0xfacc2d5f rtw_phy_get_tx_power_index +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw88/rtw88_core 0xfad3a987 rtw_phy_pwrtrack_get_delta +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw88/rtw88_core 0xffc2306c __rtw_dbg +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw88/rtw88_pci 0x3124a51a rtw_pci_probe +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw88/rtw88_pci 0x4929d69f rtw_pci_shutdown +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw88/rtw88_pci 0xe5cfb9fc rtw_pm_ops +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw88/rtw88_pci 0xec12f760 rtw_pci_remove +EXPORT_SYMBOL drivers/net/wireless/rsi/rsi_91x 0x65b55782 rsi_config_wowlan +EXPORT_SYMBOL drivers/net/wireless/ti/wlcore/wlcore 0x69afb6f5 wlcore_calc_packet_alignment +EXPORT_SYMBOL drivers/net/wireless/ti/wlcore/wlcore 0x8c1952c0 wlcore_tx_complete +EXPORT_SYMBOL drivers/net/wireless/ti/wlcore/wlcore 0x9d1967b6 wl12xx_is_dummy_packet +EXPORT_SYMBOL drivers/net/wireless/ti/wlcore/wlcore 0xf5021717 wl1271_free_tx_id +EXPORT_SYMBOL drivers/nfc/fdp/fdp 0x0f0d691d fdp_nci_recv_frame +EXPORT_SYMBOL drivers/nfc/fdp/fdp 0xe347b3f2 fdp_nci_remove +EXPORT_SYMBOL drivers/nfc/fdp/fdp 0xef3d29af fdp_nci_probe +EXPORT_SYMBOL drivers/nfc/microread/microread 0x01bd150d microread_probe +EXPORT_SYMBOL drivers/nfc/microread/microread 0x48b2446b microread_remove +EXPORT_SYMBOL drivers/nfc/nxp-nci/nxp-nci 0x6c71874a nxp_nci_fw_recv_frame +EXPORT_SYMBOL drivers/nfc/nxp-nci/nxp-nci 0xd5629582 nxp_nci_probe +EXPORT_SYMBOL drivers/nfc/nxp-nci/nxp-nci 0xd5b445d2 nxp_nci_remove +EXPORT_SYMBOL drivers/nfc/pn533/pn533 0x1e84f8fe pn533_recv_frame +EXPORT_SYMBOL drivers/nfc/pn544/pn544 0x2d2061a7 pn544_hci_remove +EXPORT_SYMBOL drivers/nfc/pn544/pn544 0xbd3f01de pn544_hci_probe +EXPORT_SYMBOL drivers/nfc/s3fwrn5/s3fwrn5 0x28f13877 s3fwrn5_recv_frame +EXPORT_SYMBOL drivers/nfc/s3fwrn5/s3fwrn5 0xb4424f83 s3fwrn5_remove +EXPORT_SYMBOL drivers/nfc/s3fwrn5/s3fwrn5 0xe13cdd9f s3fwrn5_probe +EXPORT_SYMBOL drivers/nfc/st-nci/st-nci 0x0e2f9b95 st_nci_se_init +EXPORT_SYMBOL drivers/nfc/st-nci/st-nci 0x26a0b54e ndlc_remove +EXPORT_SYMBOL drivers/nfc/st-nci/st-nci 0x3d95df27 st_nci_se_io +EXPORT_SYMBOL drivers/nfc/st-nci/st-nci 0x4333e9cb ndlc_recv +EXPORT_SYMBOL drivers/nfc/st-nci/st-nci 0x6799de18 st_nci_vendor_cmds_init +EXPORT_SYMBOL drivers/nfc/st-nci/st-nci 0x89ad5221 st_nci_se_deinit +EXPORT_SYMBOL drivers/nfc/st-nci/st-nci 0xa02264dd ndlc_close +EXPORT_SYMBOL drivers/nfc/st-nci/st-nci 0xa804960f ndlc_send +EXPORT_SYMBOL drivers/nfc/st-nci/st-nci 0xc7ae9844 ndlc_open +EXPORT_SYMBOL drivers/nfc/st-nci/st-nci 0xd33c7f5a ndlc_probe +EXPORT_SYMBOL drivers/nfc/st21nfca/st21nfca_hci 0x095fbd85 st21nfca_se_deinit +EXPORT_SYMBOL drivers/nfc/st21nfca/st21nfca_hci 0x1bbfa665 st21nfca_apdu_reader_event_received +EXPORT_SYMBOL drivers/nfc/st21nfca/st21nfca_hci 0x253b19e0 st21nfca_hci_discover_se +EXPORT_SYMBOL drivers/nfc/st21nfca/st21nfca_hci 0x335754d6 st21nfca_hci_enable_se +EXPORT_SYMBOL drivers/nfc/st21nfca/st21nfca_hci 0x3f78d470 st21nfca_hci_disable_se +EXPORT_SYMBOL drivers/nfc/st21nfca/st21nfca_hci 0x42e728c8 st21nfca_vendor_cmds_init +EXPORT_SYMBOL drivers/nfc/st21nfca/st21nfca_hci 0x444793c8 st21nfca_se_init +EXPORT_SYMBOL drivers/nfc/st21nfca/st21nfca_hci 0x4a96ed8b st21nfca_dep_deinit +EXPORT_SYMBOL drivers/nfc/st21nfca/st21nfca_hci 0x4d1b323c st21nfca_hci_remove +EXPORT_SYMBOL drivers/nfc/st21nfca/st21nfca_hci 0x79c1aa30 st21nfca_connectivity_event_received +EXPORT_SYMBOL drivers/nfc/st21nfca/st21nfca_hci 0x7a5c6916 st21nfca_im_send_atr_req +EXPORT_SYMBOL drivers/nfc/st21nfca/st21nfca_hci 0x7b9c99ae st21nfca_hci_se_io +EXPORT_SYMBOL drivers/nfc/st21nfca/st21nfca_hci 0x87b74db9 st21nfca_im_send_dep_req +EXPORT_SYMBOL drivers/nfc/st21nfca/st21nfca_hci 0x8cb071bf st21nfca_tm_send_dep_res +EXPORT_SYMBOL drivers/nfc/st21nfca/st21nfca_hci 0x9e62f630 st21nfca_hci_probe +EXPORT_SYMBOL drivers/nfc/st21nfca/st21nfca_hci 0xa5e0d736 st21nfca_dep_event_received +EXPORT_SYMBOL drivers/nfc/st21nfca/st21nfca_hci 0xf7c18328 st21nfca_dep_init +EXPORT_SYMBOL drivers/nfc/st21nfca/st21nfca_hci 0xfcad7c7d st21nfca_hci_loopback_event_received +EXPORT_SYMBOL drivers/ntb/ntb 0x0616f77d ntb_msi_peer_trigger +EXPORT_SYMBOL drivers/ntb/ntb 0x1bb7e1ab ntb_db_event +EXPORT_SYMBOL drivers/ntb/ntb 0x1bced4bf ntb_register_device +EXPORT_SYMBOL drivers/ntb/ntb 0x4db8dd32 ntb_link_event +EXPORT_SYMBOL drivers/ntb/ntb 0x63843663 ntb_clear_ctx +EXPORT_SYMBOL drivers/ntb/ntb 0x6458224e ntbm_msi_request_threaded_irq +EXPORT_SYMBOL drivers/ntb/ntb 0x6e7ad543 ntb_set_ctx +EXPORT_SYMBOL drivers/ntb/ntb 0x70fe9855 ntb_default_peer_port_number +EXPORT_SYMBOL drivers/ntb/ntb 0x7196d770 ntb_msi_setup_mws +EXPORT_SYMBOL drivers/ntb/ntb 0x71a4820d __ntb_register_client +EXPORT_SYMBOL drivers/ntb/ntb 0x7546f896 ntb_msi_init +EXPORT_SYMBOL drivers/ntb/ntb 0x7e2cb038 ntb_default_peer_port_idx +EXPORT_SYMBOL drivers/ntb/ntb 0x7ead24bc ntb_unregister_device +EXPORT_SYMBOL drivers/ntb/ntb 0x9019c841 ntbm_msi_free_irq +EXPORT_SYMBOL drivers/ntb/ntb 0x9ea98828 ntb_default_peer_port_count +EXPORT_SYMBOL drivers/ntb/ntb 0xa438e6f5 ntb_msi_clear_mws +EXPORT_SYMBOL drivers/ntb/ntb 0xb76d58e5 ntb_default_port_number +EXPORT_SYMBOL drivers/ntb/ntb 0xd685720a ntb_msi_peer_addr +EXPORT_SYMBOL drivers/ntb/ntb 0xd81da9ac ntb_msg_event +EXPORT_SYMBOL drivers/ntb/ntb 0xe438d56c ntb_unregister_client +EXPORT_SYMBOL drivers/nvdimm/nd_btt 0x19f664fc nvdimm_namespace_attach_btt +EXPORT_SYMBOL drivers/nvdimm/nd_btt 0xf7bbd522 nvdimm_namespace_detach_btt +EXPORT_SYMBOL drivers/parport/parport 0x064adac7 __parport_register_driver +EXPORT_SYMBOL drivers/parport/parport 0x07ba2283 parport_find_base +EXPORT_SYMBOL drivers/parport/parport 0x16fc4dde parport_claim_or_block +EXPORT_SYMBOL drivers/parport/parport 0x1a8db117 parport_set_timeout +EXPORT_SYMBOL drivers/parport/parport 0x21426170 parport_ieee1284_epp_read_data +EXPORT_SYMBOL drivers/parport/parport 0x23ebcfb1 parport_register_dev_model +EXPORT_SYMBOL drivers/parport/parport 0x2d3b9b22 parport_del_port +EXPORT_SYMBOL drivers/parport/parport 0x3cb9e35e parport_put_port +EXPORT_SYMBOL drivers/parport/parport 0x44fd4018 parport_ieee1284_ecp_read_data +EXPORT_SYMBOL drivers/parport/parport 0x47e8d02b parport_ieee1284_read_nibble +EXPORT_SYMBOL drivers/parport/parport 0x4d2a941b parport_ieee1284_interrupt +EXPORT_SYMBOL drivers/parport/parport 0x55fc1e71 parport_ieee1284_epp_write_data +EXPORT_SYMBOL drivers/parport/parport 0x5ca42aaa parport_ieee1284_epp_write_addr +EXPORT_SYMBOL drivers/parport/parport 0x5e3a3912 parport_irq_handler +EXPORT_SYMBOL drivers/parport/parport 0x614873d0 parport_release +EXPORT_SYMBOL drivers/parport/parport 0x6a4ad302 parport_remove_port +EXPORT_SYMBOL drivers/parport/parport 0x7c8c3513 parport_get_port +EXPORT_SYMBOL drivers/parport/parport 0x893a7084 parport_ieee1284_read_byte +EXPORT_SYMBOL drivers/parport/parport 0x9a5968e1 parport_find_number +EXPORT_SYMBOL drivers/parport/parport 0x9a5aa56b parport_wait_peripheral +EXPORT_SYMBOL drivers/parport/parport 0x9edfaeb0 parport_announce_port +EXPORT_SYMBOL drivers/parport/parport 0xa20ba6c2 parport_ieee1284_epp_read_addr +EXPORT_SYMBOL drivers/parport/parport 0xa7af4ca9 parport_read +EXPORT_SYMBOL drivers/parport/parport 0xb3620274 parport_wait_event +EXPORT_SYMBOL drivers/parport/parport 0xb662664f parport_ieee1284_ecp_write_addr +EXPORT_SYMBOL drivers/parport/parport 0xbf3a5294 parport_ieee1284_ecp_write_data +EXPORT_SYMBOL drivers/parport/parport 0xd412a091 parport_unregister_driver +EXPORT_SYMBOL drivers/parport/parport 0xdd2c797e parport_negotiate +EXPORT_SYMBOL drivers/parport/parport 0xdfb9c493 parport_write +EXPORT_SYMBOL drivers/parport/parport 0xe5cb4753 parport_unregister_device +EXPORT_SYMBOL drivers/parport/parport 0xe6c0c738 parport_claim +EXPORT_SYMBOL drivers/parport/parport 0xef612619 parport_register_port +EXPORT_SYMBOL drivers/parport/parport 0xf7af3a50 parport_ieee1284_write_compat +EXPORT_SYMBOL drivers/pci/controller/pcie-iproc 0x5ff81ce2 iproc_pcie_setup +EXPORT_SYMBOL drivers/pci/controller/pcie-iproc 0xaa02a6e3 iproc_pcie_remove +EXPORT_SYMBOL drivers/pcmcia/pcmcia_core 0x010f3c0a pcmcia_socket_class +EXPORT_SYMBOL drivers/pcmcia/pcmcia_core 0x07f807c5 pcmcia_parse_uevents +EXPORT_SYMBOL drivers/pcmcia/pcmcia_core 0x212db8d2 pcmcia_socket_list +EXPORT_SYMBOL drivers/pcmcia/pcmcia_core 0x38a8a3af pcmcia_register_socket +EXPORT_SYMBOL drivers/pcmcia/pcmcia_core 0x59ef16ac pcmcia_get_socket_by_nr +EXPORT_SYMBOL drivers/pcmcia/pcmcia_core 0x6ab4b2d2 pcmcia_put_socket +EXPORT_SYMBOL drivers/pcmcia/pcmcia_core 0x918eff27 pcmcia_unregister_socket +EXPORT_SYMBOL drivers/pcmcia/pcmcia_core 0x9286886b pcmcia_parse_events +EXPORT_SYMBOL drivers/pcmcia/pcmcia_core 0x9f56dcb2 pcmcia_get_socket +EXPORT_SYMBOL drivers/pcmcia/pcmcia_core 0xa5cf85ea pcmcia_reset_card +EXPORT_SYMBOL drivers/pcmcia/pcmcia_core 0xcf97f3bd dead_socket +EXPORT_SYMBOL drivers/pcmcia/pcmcia_core 0xf5691c73 pccard_register_pcmcia +EXPORT_SYMBOL drivers/pcmcia/pcmcia_core 0xf942709b pcmcia_socket_list_rwsem +EXPORT_SYMBOL drivers/pcmcia/pcmcia_rsrc 0xafa9d5f4 pccard_static_ops +EXPORT_SYMBOL drivers/platform/chrome/cros_ec 0x5679d57b cros_ec_handle_event +EXPORT_SYMBOL drivers/platform/chrome/cros_ec 0xaa738460 cros_ec_unregister +EXPORT_SYMBOL drivers/platform/chrome/cros_ec 0xd8ea89c0 cros_ec_register +EXPORT_SYMBOL drivers/platform/chrome/cros_ec 0xdbe49bb7 cros_ec_suspend +EXPORT_SYMBOL drivers/platform/chrome/cros_ec 0xe87e0eb5 cros_ec_resume +EXPORT_SYMBOL drivers/regulator/rohm-regulator 0x98eb8742 rohm_regulator_set_dvs_levels +EXPORT_SYMBOL drivers/rpmsg/qcom_smd 0x3330a1c8 qcom_smd_unregister_edge +EXPORT_SYMBOL drivers/rpmsg/qcom_smd 0x3a38199d qcom_smd_register_edge +EXPORT_SYMBOL drivers/rpmsg/rpmsg_core 0x047a2b54 rpmsg_create_ept +EXPORT_SYMBOL drivers/rpmsg/rpmsg_core 0x1eddb1cf rpmsg_poll +EXPORT_SYMBOL drivers/rpmsg/rpmsg_core 0x2ec75903 rpmsg_send +EXPORT_SYMBOL drivers/rpmsg/rpmsg_core 0x47f56917 __register_rpmsg_driver +EXPORT_SYMBOL drivers/rpmsg/rpmsg_core 0x5959a478 rpmsg_trysend_offchannel +EXPORT_SYMBOL drivers/rpmsg/rpmsg_core 0x79cec56b rpmsg_destroy_ept +EXPORT_SYMBOL drivers/rpmsg/rpmsg_core 0x89e10d48 unregister_rpmsg_driver +EXPORT_SYMBOL drivers/rpmsg/rpmsg_core 0x962667ff rpmsg_unregister_device +EXPORT_SYMBOL drivers/rpmsg/rpmsg_core 0x9a9f9859 rpmsg_trysendto +EXPORT_SYMBOL drivers/rpmsg/rpmsg_core 0xb1b42a7f rpmsg_find_device +EXPORT_SYMBOL drivers/rpmsg/rpmsg_core 0xb2014264 rpmsg_send_offchannel +EXPORT_SYMBOL drivers/rpmsg/rpmsg_core 0xb3d457ef rpmsg_sendto +EXPORT_SYMBOL drivers/rpmsg/rpmsg_core 0xd13c6bcc rpmsg_trysend +EXPORT_SYMBOL drivers/rpmsg/rpmsg_core 0xfa291a67 rpmsg_register_device +EXPORT_SYMBOL drivers/rtc/rtc-ds1685 0x35fbc4f3 ds1685_rtc_poweroff +EXPORT_SYMBOL drivers/scsi/esp_scsi 0x13f94ce9 scsi_esp_cmd +EXPORT_SYMBOL drivers/scsi/esp_scsi 0x4a29ab38 scsi_esp_intr +EXPORT_SYMBOL drivers/scsi/esp_scsi 0x87d0dacd scsi_esp_unregister +EXPORT_SYMBOL drivers/scsi/esp_scsi 0xca8c0534 scsi_esp_register +EXPORT_SYMBOL drivers/scsi/esp_scsi 0xe568ed68 scsi_esp_template +EXPORT_SYMBOL drivers/scsi/fcoe/libfcoe 0x091aa5ff fcoe_ctlr_recv +EXPORT_SYMBOL drivers/scsi/fcoe/libfcoe 0x1012cb8c fcoe_ctlr_link_down +EXPORT_SYMBOL drivers/scsi/fcoe/libfcoe 0x14114544 fcoe_ctlr_els_send +EXPORT_SYMBOL drivers/scsi/fcoe/libfcoe 0x2fe78ec7 fcoe_transport_attach +EXPORT_SYMBOL drivers/scsi/fcoe/libfcoe 0x73419939 fcoe_transport_detach +EXPORT_SYMBOL drivers/scsi/fcoe/libfcoe 0x7b4200bd fcoe_ctlr_link_up +EXPORT_SYMBOL drivers/scsi/fcoe/libfcoe 0x9e933543 fcoe_ctlr_set_fip_mode +EXPORT_SYMBOL drivers/scsi/fcoe/libfcoe 0xa634b2d6 fcoe_ctlr_destroy +EXPORT_SYMBOL drivers/scsi/fcoe/libfcoe 0xcbf225cc fcoe_fcf_get_selected +EXPORT_SYMBOL drivers/scsi/fcoe/libfcoe 0xf33d2d92 fcoe_ctlr_recv_flogi +EXPORT_SYMBOL drivers/scsi/fcoe/libfcoe 0xf39d4c05 fcoe_ctlr_init +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x0aa4def2 fc_rport_login +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x0b96fb13 fc_fc4_deregister_provider +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x0c3cbccb fc_lport_bsg_request +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x1262ba2b fc_linkup +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x1eb8343b fc_lport_iterate +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x22b90986 fc_exch_mgr_del +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x231d16b0 fc_lport_recv +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x2d177891 fc_linkdown +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x3c9e5032 fc_lport_set_local_id +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x3f4c8d0c fc_exch_mgr_list_clone +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x46af4aac fc_seq_set_resp +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x47bf906f fc_elsct_send +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x4c640486 fc_rport_recv_req +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x4c817074 fc_exch_mgr_free +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x520b33de fc_get_host_stats +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x533ec6da fc_elsct_init +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x654ac076 fc_exch_recv +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x69219e2a fc_frame_crc_check +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x6d4c28b9 fc_rport_terminate_io +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x6fb7e9f7 fc_lport_config +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x71d81ac1 _fc_frame_alloc +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x7975d06d fc_get_host_speed +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x7c4080fc fc_seq_assign +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x7f3407a7 fc_seq_start_next +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x811811e0 fc_exch_done +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x85e01831 fc_frame_alloc_fill +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x899a2699 fc_fabric_logoff +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x8a36b2e2 fc_rport_logoff +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x8ad13ee3 fc_rport_create +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x8af072f0 fc_seq_send +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x8f245978 fc_disc_init +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x9026c2fd fc_exch_mgr_add +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x9abbd434 fc_exch_update_stats +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x9c979607 fc_exch_init +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x9d50ed7e fc_rport_destroy +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x9e4128c3 fc_set_rport_loss_tmo +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0xa1bcd198 fc_cpu_mask +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0xa326f8b5 fc_vport_id_lookup +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0xa38df985 fc_lport_logo_resp +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0xa3bcccab fc_fill_reply_hdr +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0xa59f53dd fc_get_host_port_state +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0xae32e830 fc_fcp_init +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0xb08be8f2 fc_exch_mgr_alloc +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0xb0a28871 fc_fc4_register_provider +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0xb0ddd5a1 fc_rport_flush_queue +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0xb377b9c7 fc_lport_reset +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0xb615fa38 fc_set_mfs +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0xbb3f7714 fc_disc_config +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0xc4df39ba fc_queuecommand +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0xc8267860 fc_fabric_login +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0xcc233c7b fc_eh_device_reset +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0xd1e2b432 fc_fill_hdr +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0xdfbcb1c5 libfc_vport_create +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0xe1470c7f fc_lport_destroy +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0xe20cbb14 fc_exch_seq_send +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0xe4823749 fc_rport_lookup +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0xe5cf06b5 fc_lport_notifier_head +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0xe79b7b53 fc_exch_mgr_reset +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0xe8121962 fc_eh_host_reset +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0xe8b7dfe2 fc_lport_flogi_resp +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0xee38dc12 fc_eh_abort +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0xf27b20d4 fc_slave_alloc +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0xf2f270b3 fc_vport_setlink +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0xfa4667d1 fc_seq_release +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0xfd62bc7d fc_fcp_destroy +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0xff9f92c6 fc_lport_init +EXPORT_SYMBOL drivers/scsi/libsas/libsas 0x4a8e3d34 try_test_sas_gpio_gp_bit +EXPORT_SYMBOL drivers/scsi/libsas/libsas 0x7bf54f6d sas_prep_resume_ha +EXPORT_SYMBOL drivers/scsi/libsas/libsas 0x7d102df3 sas_resume_ha +EXPORT_SYMBOL drivers/scsi/libsas/libsas 0xdb20382d sas_suspend_ha +EXPORT_SYMBOL drivers/scsi/megaraid/megaraid_mm 0x87d5b154 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 0x0db0c41a qlt_rdy_to_xfer +EXPORT_SYMBOL drivers/scsi/qla2xxx/qla2xxx 0x3c187d91 qlt_xmit_tm_rsp +EXPORT_SYMBOL drivers/scsi/qla2xxx/qla2xxx 0x7155b5a6 qlt_xmit_response +EXPORT_SYMBOL drivers/scsi/qla2xxx/qla2xxx 0x71ed370c qlt_stop_phase1 +EXPORT_SYMBOL drivers/scsi/qla2xxx/qla2xxx 0x80dccda2 qlt_enable_vha +EXPORT_SYMBOL drivers/scsi/qla2xxx/qla2xxx 0x84b70905 qlt_abort_cmd +EXPORT_SYMBOL drivers/scsi/qla2xxx/qla2xxx 0x8d5ea140 qlt_free_cmd +EXPORT_SYMBOL drivers/scsi/qla2xxx/qla2xxx 0x9ef2c03c qlt_stop_phase2 +EXPORT_SYMBOL drivers/scsi/qla2xxx/qla2xxx 0xd7deeee9 qlt_lport_deregister +EXPORT_SYMBOL drivers/scsi/qla2xxx/qla2xxx 0xde7a3783 qlt_free_mcmd +EXPORT_SYMBOL drivers/scsi/qla2xxx/qla2xxx 0xe31d75b4 qlt_lport_register +EXPORT_SYMBOL drivers/scsi/qla2xxx/qla2xxx 0xfccc6824 qlt_unreg_sess +EXPORT_SYMBOL drivers/scsi/raid_class 0x0764e158 raid_component_add +EXPORT_SYMBOL drivers/scsi/raid_class 0xe8c6ab22 raid_class_release +EXPORT_SYMBOL drivers/scsi/raid_class 0xeaebf890 raid_class_attach +EXPORT_SYMBOL drivers/scsi/scsi_transport_fc 0x30274c06 fc_release_transport +EXPORT_SYMBOL drivers/scsi/scsi_transport_fc 0x375f8bbd fc_get_event_number +EXPORT_SYMBOL drivers/scsi/scsi_transport_fc 0x3c2dfbc8 fc_host_post_event +EXPORT_SYMBOL drivers/scsi/scsi_transport_fc 0x7464e089 fc_vport_terminate +EXPORT_SYMBOL drivers/scsi/scsi_transport_fc 0x840aa29f fc_remove_host +EXPORT_SYMBOL drivers/scsi/scsi_transport_fc 0x87c8a82f fc_attach_transport +EXPORT_SYMBOL drivers/scsi/scsi_transport_fc 0x9e6cd46c scsi_is_fc_rport +EXPORT_SYMBOL drivers/scsi/scsi_transport_fc 0xa774cddd fc_remote_port_delete +EXPORT_SYMBOL drivers/scsi/scsi_transport_fc 0xaced5751 fc_vport_create +EXPORT_SYMBOL drivers/scsi/scsi_transport_fc 0xb05a981d fc_eh_timed_out +EXPORT_SYMBOL drivers/scsi/scsi_transport_fc 0xd0433ece fc_remote_port_rolechg +EXPORT_SYMBOL drivers/scsi/scsi_transport_fc 0xd7713c9d fc_host_fpin_rcv +EXPORT_SYMBOL drivers/scsi/scsi_transport_fc 0xe1d48ef0 fc_block_rport +EXPORT_SYMBOL drivers/scsi/scsi_transport_fc 0xe3ec47e8 fc_host_post_fc_event +EXPORT_SYMBOL drivers/scsi/scsi_transport_fc 0xeaf86bbe fc_block_scsi_eh +EXPORT_SYMBOL drivers/scsi/scsi_transport_fc 0xf599f020 fc_remote_port_add +EXPORT_SYMBOL drivers/scsi/scsi_transport_fc 0xfb743956 fc_host_post_vendor_event +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0x1eceebc1 sas_port_alloc_num +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0x2963a471 sas_port_add +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0x2f22dafb sas_get_address +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0x30eb14d1 sas_phy_free +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0x311df57b sas_remove_children +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0x34a9cb92 sas_port_mark_backlink +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0x37c2194b sas_read_port_mode_page +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0x444b535f sas_rphy_add +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0x5a4c58b8 sas_expander_alloc +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0x9e3f089c sas_attach_transport +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0xabf28123 sas_rphy_delete +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0xb6f1816c sas_phy_alloc +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0xb6f9597d sas_port_add_phy +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0xbd5b57ab scsi_is_sas_rphy +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0xbd86cedd sas_port_free +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0xc098a59f sas_release_transport +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0xc5add048 scsi_is_sas_port +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0xc78c51e4 sas_rphy_unlink +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0xcb938864 sas_rphy_free +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0xcc2930d1 sas_port_delete_phy +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0xd146b311 sas_rphy_remove +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0xd1724cc2 sas_phy_delete +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0xd4a9c924 sas_end_device_alloc +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0xda258f76 sas_port_get_phy +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0xe8ab60f2 sas_remove_host +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0xee143243 scsi_is_sas_phy +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0xf34c1f57 sas_port_delete +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0xf9f969d0 sas_port_alloc +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0xfeec297e sas_phy_add +EXPORT_SYMBOL drivers/scsi/scsi_transport_spi 0x3686ea09 spi_print_msg +EXPORT_SYMBOL drivers/scsi/scsi_transport_spi 0x89d587e2 spi_schedule_dv_device +EXPORT_SYMBOL drivers/scsi/scsi_transport_spi 0x9d430866 spi_display_xfer_agreement +EXPORT_SYMBOL drivers/scsi/scsi_transport_spi 0xa3d04443 spi_attach_transport +EXPORT_SYMBOL drivers/scsi/scsi_transport_spi 0xbce16704 spi_release_transport +EXPORT_SYMBOL drivers/scsi/scsi_transport_spi 0xe2029e97 spi_dv_device +EXPORT_SYMBOL drivers/scsi/scsi_transport_srp 0x405b6e05 srp_parse_tmo +EXPORT_SYMBOL drivers/scsi/scsi_transport_srp 0x569a1fd3 srp_start_tl_fail_timers +EXPORT_SYMBOL drivers/scsi/scsi_transport_srp 0x6862f2c2 srp_reconnect_rport +EXPORT_SYMBOL drivers/scsi/scsi_transport_srp 0x6b1824f2 srp_timed_out +EXPORT_SYMBOL drivers/scsi/scsi_transport_srp 0x94d31f0e srp_rport_get +EXPORT_SYMBOL drivers/scsi/scsi_transport_srp 0xea54ba9e srp_rport_put +EXPORT_SYMBOL drivers/scsi/ufs/tc-dwc-g210 0x0a86d3ae tc_dwc_g210_config_40_bit +EXPORT_SYMBOL drivers/scsi/ufs/tc-dwc-g210 0x23fd00eb tc_dwc_g210_config_20_bit +EXPORT_SYMBOL drivers/scsi/ufs/ufshcd-core 0x03347bfc ufshcd_system_resume +EXPORT_SYMBOL drivers/scsi/ufs/ufshcd-core 0x07a5b5df ufshcd_get_local_unipro_ver +EXPORT_SYMBOL drivers/scsi/ufs/ufshcd-core 0x50238bad ufshcd_runtime_suspend +EXPORT_SYMBOL drivers/scsi/ufs/ufshcd-core 0x834a415a ufshcd_shutdown +EXPORT_SYMBOL drivers/scsi/ufs/ufshcd-core 0x907c8e61 ufshcd_map_desc_id_to_length +EXPORT_SYMBOL drivers/scsi/ufs/ufshcd-core 0xb7498802 ufshcd_system_suspend +EXPORT_SYMBOL drivers/scsi/ufs/ufshcd-core 0xd11ad3f2 ufshcd_runtime_resume +EXPORT_SYMBOL drivers/scsi/ufs/ufshcd-core 0xe94f6fdb ufshcd_runtime_idle +EXPORT_SYMBOL drivers/scsi/ufs/ufshcd-core 0xedc61992 ufshcd_alloc_host +EXPORT_SYMBOL drivers/scsi/ufs/ufshcd-dwc 0x8cdec804 ufshcd_dwc_link_startup_notify +EXPORT_SYMBOL drivers/scsi/ufs/ufshcd-dwc 0xaf72d22a ufshcd_dwc_dme_set_attrs +EXPORT_SYMBOL drivers/soc/fsl/dpio/fsl-mc-dpio 0x030f2d6c dpaa2_io_service_enqueue_fq +EXPORT_SYMBOL drivers/soc/fsl/dpio/fsl-mc-dpio 0x3d01f417 dpaa2_io_service_pull_fq +EXPORT_SYMBOL drivers/soc/fsl/dpio/fsl-mc-dpio 0xc4ccef03 dpaa2_io_get_cpu +EXPORT_SYMBOL drivers/soc/fsl/dpio/fsl-mc-dpio 0xdb008703 dpaa2_io_service_enqueue_multiple_fq +EXPORT_SYMBOL drivers/soc/fsl/dpio/fsl-mc-dpio 0xe0f67b93 dpaa2_io_service_enqueue_multiple_desc_fq +EXPORT_SYMBOL drivers/soc/mediatek/mtk-cmdq-helper 0x0348ce8f cmdq_pkt_destroy +EXPORT_SYMBOL drivers/soc/mediatek/mtk-cmdq-helper 0x0a86537c cmdq_pkt_poll_mask +EXPORT_SYMBOL drivers/soc/mediatek/mtk-cmdq-helper 0x23d0b9f2 cmdq_pkt_clear_event +EXPORT_SYMBOL drivers/soc/mediatek/mtk-cmdq-helper 0x2e0c3fc2 cmdq_pkt_create +EXPORT_SYMBOL drivers/soc/mediatek/mtk-cmdq-helper 0x50396152 cmdq_pkt_write_mask +EXPORT_SYMBOL drivers/soc/mediatek/mtk-cmdq-helper 0x73307b74 cmdq_mbox_destroy +EXPORT_SYMBOL drivers/soc/mediatek/mtk-cmdq-helper 0x801e6484 cmdq_dev_get_client_reg +EXPORT_SYMBOL drivers/soc/mediatek/mtk-cmdq-helper 0x85e281f0 cmdq_pkt_poll +EXPORT_SYMBOL drivers/soc/mediatek/mtk-cmdq-helper 0xa066b5c3 cmdq_pkt_write +EXPORT_SYMBOL drivers/soc/mediatek/mtk-cmdq-helper 0xa47e7659 cmdq_mbox_create +EXPORT_SYMBOL drivers/soc/mediatek/mtk-cmdq-helper 0xa846e75e cmdq_pkt_wfe +EXPORT_SYMBOL drivers/soc/mediatek/mtk-cmdq-helper 0xa9dc86da cmdq_pkt_flush_async +EXPORT_SYMBOL drivers/soc/mediatek/mtk-cmdq-helper 0xede9ce4c cmdq_pkt_flush +EXPORT_SYMBOL drivers/soc/qcom/ocmem 0x0838fb82 of_get_ocmem +EXPORT_SYMBOL drivers/soc/qcom/ocmem 0xc53d76b1 ocmem_allocate +EXPORT_SYMBOL drivers/soc/qcom/ocmem 0xf9b05967 ocmem_free +EXPORT_SYMBOL drivers/soc/qcom/pdr_interface 0x1c76ea4d pdr_restart_pd +EXPORT_SYMBOL drivers/soc/qcom/pdr_interface 0x432975e6 pdr_add_lookup +EXPORT_SYMBOL drivers/soc/qcom/pdr_interface 0x47b2ed49 pdr_handle_alloc +EXPORT_SYMBOL drivers/soc/qcom/pdr_interface 0xf618ca5b pdr_handle_release +EXPORT_SYMBOL drivers/soc/qcom/qcom-geni-se 0x21005974 geni_se_tx_dma_unprep +EXPORT_SYMBOL drivers/soc/qcom/qcom-geni-se 0x28e7a53f geni_se_clk_freq_match +EXPORT_SYMBOL drivers/soc/qcom/qcom-geni-se 0x31149942 geni_se_init +EXPORT_SYMBOL drivers/soc/qcom/qcom-geni-se 0x3208631c geni_se_rx_dma_unprep +EXPORT_SYMBOL drivers/soc/qcom/qcom-geni-se 0x4834ca37 geni_se_resources_on +EXPORT_SYMBOL drivers/soc/qcom/qcom-geni-se 0x4a778329 geni_se_resources_off +EXPORT_SYMBOL drivers/soc/qcom/qcom-geni-se 0x56324a5a geni_se_get_qup_hw_version +EXPORT_SYMBOL drivers/soc/qcom/qcom-geni-se 0x5eb97a04 geni_se_select_mode +EXPORT_SYMBOL drivers/soc/qcom/qcom-geni-se 0x640fe7c0 geni_se_clk_tbl_get +EXPORT_SYMBOL drivers/soc/qcom/qcom-geni-se 0x6bcbfc33 geni_se_config_packing +EXPORT_SYMBOL drivers/soc/qcom/qcom-geni-se 0xa100c113 geni_se_tx_dma_prep +EXPORT_SYMBOL drivers/soc/qcom/qcom-geni-se 0xe41b9348 geni_se_rx_dma_prep +EXPORT_SYMBOL drivers/soc/qcom/qmi_helpers 0x0a54758d qmi_send_response +EXPORT_SYMBOL drivers/soc/qcom/qmi_helpers 0x0ef12cc9 qmi_encode_message +EXPORT_SYMBOL drivers/soc/qcom/qmi_helpers 0x13750285 qmi_handle_init +EXPORT_SYMBOL drivers/soc/qcom/qmi_helpers 0x21ce5888 qmi_response_type_v01_ei +EXPORT_SYMBOL drivers/soc/qcom/qmi_helpers 0x3199fa64 qmi_add_server +EXPORT_SYMBOL drivers/soc/qcom/qmi_helpers 0x4ab20bcf qmi_txn_cancel +EXPORT_SYMBOL drivers/soc/qcom/qmi_helpers 0x4b2d09d7 qmi_add_lookup +EXPORT_SYMBOL drivers/soc/qcom/qmi_helpers 0x5ac78617 qmi_send_indication +EXPORT_SYMBOL drivers/soc/qcom/qmi_helpers 0x68772745 qmi_decode_message +EXPORT_SYMBOL drivers/soc/qcom/qmi_helpers 0xb1296658 qmi_txn_init +EXPORT_SYMBOL drivers/soc/qcom/qmi_helpers 0xc557066e qmi_send_request +EXPORT_SYMBOL drivers/soc/qcom/qmi_helpers 0xcc98b83c qmi_handle_release +EXPORT_SYMBOL drivers/soc/qcom/qmi_helpers 0xf4bd83e5 qmi_txn_wait +EXPORT_SYMBOL drivers/soc/qcom/smd-rpm 0x3abef80b qcom_rpm_smd_write +EXPORT_SYMBOL drivers/soc/qcom/smem 0x34b57571 qcom_smem_alloc +EXPORT_SYMBOL drivers/soc/qcom/smem 0x5a710273 qcom_smem_get_free_space +EXPORT_SYMBOL drivers/soc/qcom/smem 0x9979b76e qcom_smem_virt_to_phys +EXPORT_SYMBOL drivers/soc/qcom/smem 0xeeffa750 qcom_smem_get +EXPORT_SYMBOL drivers/soc/qcom/wcnss_ctrl 0x899096e1 qcom_wcnss_open_channel +EXPORT_SYMBOL drivers/soundwire/soundwire-bus 0x060801fa sdw_bus_exit_clk_stop +EXPORT_SYMBOL drivers/soundwire/soundwire-bus 0x0c53584d sdw_clear_slave_status +EXPORT_SYMBOL drivers/soundwire/soundwire-bus 0x16568455 sdw_master_read_prop +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 0x230ece4a sdw_handle_slave_status +EXPORT_SYMBOL drivers/soundwire/soundwire-bus 0x275b0267 sdw_stream_remove_slave +EXPORT_SYMBOL drivers/soundwire/soundwire-bus 0x2fc96466 sdw_bus_prep_clk_stop +EXPORT_SYMBOL drivers/soundwire/soundwire-bus 0x4555b702 sdw_bus_master_add +EXPORT_SYMBOL drivers/soundwire/soundwire-bus 0x4cde88bf sdw_disable_stream +EXPORT_SYMBOL drivers/soundwire/soundwire-bus 0x5fff5629 sdw_read +EXPORT_SYMBOL drivers/soundwire/soundwire-bus 0x60e31fbb sdw_find_col_index +EXPORT_SYMBOL drivers/soundwire/soundwire-bus 0x71891d59 sdw_deprepare_stream +EXPORT_SYMBOL drivers/soundwire/soundwire-bus 0x809e381e sdw_slave_read_prop +EXPORT_SYMBOL drivers/soundwire/soundwire-bus 0x8ebc4eae sdw_stream_add_master +EXPORT_SYMBOL drivers/soundwire/soundwire-bus 0x989e271b sdw_stream_add_slave +EXPORT_SYMBOL drivers/soundwire/soundwire-bus 0x9bdb1e60 sdw_bus_clk_stop +EXPORT_SYMBOL drivers/soundwire/soundwire-bus 0x9e122d79 sdw_alloc_stream +EXPORT_SYMBOL drivers/soundwire/soundwire-bus 0xb51a96a0 sdw_stream_remove_master +EXPORT_SYMBOL drivers/soundwire/soundwire-bus 0xbbec2c2e sdw_enable_stream +EXPORT_SYMBOL drivers/soundwire/soundwire-bus 0xda5bce09 sdw_release_stream +EXPORT_SYMBOL drivers/soundwire/soundwire-bus 0xe753b38c sdw_write +EXPORT_SYMBOL drivers/soundwire/soundwire-bus 0xebbc6705 sdw_nwrite +EXPORT_SYMBOL drivers/soundwire/soundwire-bus 0xf2dad93f sdw_nread +EXPORT_SYMBOL drivers/soundwire/soundwire-bus 0xf72d444b sdw_bus_master_delete +EXPORT_SYMBOL drivers/soundwire/soundwire-cadence 0x3035bc0a cdns_xfer_msg +EXPORT_SYMBOL drivers/soundwire/soundwire-cadence 0x34712074 sdw_cdns_irq +EXPORT_SYMBOL drivers/soundwire/soundwire-cadence 0x420392a7 sdw_cdns_is_clock_stop +EXPORT_SYMBOL drivers/soundwire/soundwire-cadence 0x47958190 sdw_cdns_init +EXPORT_SYMBOL drivers/soundwire/soundwire-cadence 0x4b7f6a6d sdw_cdns_clock_stop +EXPORT_SYMBOL drivers/soundwire/soundwire-cadence 0x50e22626 sdw_cdns_enable_interrupt +EXPORT_SYMBOL drivers/soundwire/soundwire-cadence 0x63a1b2c0 sdw_cdns_pdi_init +EXPORT_SYMBOL drivers/soundwire/soundwire-cadence 0x8d3a908a cdns_reset_page_addr +EXPORT_SYMBOL drivers/soundwire/soundwire-cadence 0x9321fca6 cdns_bus_conf +EXPORT_SYMBOL drivers/soundwire/soundwire-cadence 0x9680e0e6 cdns_set_sdw_stream +EXPORT_SYMBOL drivers/soundwire/soundwire-cadence 0xa76a6fcb sdw_cdns_thread +EXPORT_SYMBOL drivers/soundwire/soundwire-cadence 0xa7d6ffcb cdns_xfer_msg_defer +EXPORT_SYMBOL drivers/soundwire/soundwire-cadence 0xa82ae729 sdw_cdns_clock_restart +EXPORT_SYMBOL drivers/soundwire/soundwire-cadence 0xd2485450 sdw_cdns_config_stream +EXPORT_SYMBOL drivers/soundwire/soundwire-cadence 0xd7983a6a sdw_cdns_exit_reset +EXPORT_SYMBOL drivers/soundwire/soundwire-cadence 0xe272f896 sdw_cdns_alloc_pdi +EXPORT_SYMBOL drivers/soundwire/soundwire-cadence 0xe3d33f0d sdw_cdns_probe +EXPORT_SYMBOL drivers/soundwire/soundwire-intel 0x3f4a2354 sdw_intel_exit +EXPORT_SYMBOL drivers/ssb/ssb 0x01f2bdc5 ssb_clockspeed +EXPORT_SYMBOL drivers/ssb/ssb 0x1bd85fad ssb_pmu_set_ldo_paref +EXPORT_SYMBOL drivers/ssb/ssb 0x1bf966b2 ssb_dma_translation +EXPORT_SYMBOL drivers/ssb/ssb 0x21be4926 ssb_driver_unregister +EXPORT_SYMBOL drivers/ssb/ssb 0x269ece83 ssb_bus_suspend +EXPORT_SYMBOL drivers/ssb/ssb 0x33327d7a ssb_pcicore_dev_irqvecs_enable +EXPORT_SYMBOL drivers/ssb/ssb 0x3389bb0d ssb_bus_resume +EXPORT_SYMBOL drivers/ssb/ssb 0x63d8c46a ssb_chipco_gpio_control +EXPORT_SYMBOL drivers/ssb/ssb 0x83414c3b ssb_set_devtypedata +EXPORT_SYMBOL drivers/ssb/ssb 0x8586b365 ssb_device_disable +EXPORT_SYMBOL drivers/ssb/ssb 0x8f35f3af ssb_pcihost_register +EXPORT_SYMBOL drivers/ssb/ssb 0x90f9605b ssb_pmu_set_ldo_voltage +EXPORT_SYMBOL drivers/ssb/ssb 0x975e389e ssb_bus_may_powerdown +EXPORT_SYMBOL drivers/ssb/ssb 0xa35aec8f ssb_device_enable +EXPORT_SYMBOL drivers/ssb/ssb 0xcb17f1cb ssb_admatch_base +EXPORT_SYMBOL drivers/ssb/ssb 0xdcdc606c ssb_bus_unregister +EXPORT_SYMBOL drivers/ssb/ssb 0xde1fb347 __ssb_driver_register +EXPORT_SYMBOL drivers/ssb/ssb 0xdfc7c6ef ssb_admatch_size +EXPORT_SYMBOL drivers/ssb/ssb 0xe2d58ddb ssb_bus_powerup +EXPORT_SYMBOL drivers/ssb/ssb 0xeaaf4f91 ssb_device_is_enabled +EXPORT_SYMBOL drivers/ssb/ssb 0xee84cac6 ssb_bus_sdiobus_register +EXPORT_SYMBOL drivers/ssb/ssb 0xf8d38da2 ssb_commit_settings +EXPORT_SYMBOL drivers/staging/fbtft/fbtft 0x0b2b309a fbtft_write_vmem16_bus16 +EXPORT_SYMBOL drivers/staging/fbtft/fbtft 0x1168cce4 fbtft_register_backlight +EXPORT_SYMBOL drivers/staging/fbtft/fbtft 0x154c107d fbtft_write_vmem16_bus8 +EXPORT_SYMBOL drivers/staging/fbtft/fbtft 0x21bbc916 fbtft_init_display +EXPORT_SYMBOL drivers/staging/fbtft/fbtft 0x2617c77e fbtft_remove_common +EXPORT_SYMBOL drivers/staging/fbtft/fbtft 0x2c1c2a0c fbtft_unregister_framebuffer +EXPORT_SYMBOL drivers/staging/fbtft/fbtft 0x419f6a76 fbtft_write_gpio16_wr +EXPORT_SYMBOL drivers/staging/fbtft/fbtft 0x53155dea fbtft_read_spi +EXPORT_SYMBOL drivers/staging/fbtft/fbtft 0x588172cc fbtft_unregister_backlight +EXPORT_SYMBOL drivers/staging/fbtft/fbtft 0x58cfc4c1 fbtft_write_reg8_bus9 +EXPORT_SYMBOL drivers/staging/fbtft/fbtft 0x59036615 fbtft_write_reg16_bus8 +EXPORT_SYMBOL drivers/staging/fbtft/fbtft 0x5a718f65 fbtft_probe_common +EXPORT_SYMBOL drivers/staging/fbtft/fbtft 0x609032d1 fbtft_write_vmem8_bus8 +EXPORT_SYMBOL drivers/staging/fbtft/fbtft 0x7dd5c3d4 fbtft_write_vmem16_bus9 +EXPORT_SYMBOL drivers/staging/fbtft/fbtft 0x7e77c757 fbtft_write_reg8_bus8 +EXPORT_SYMBOL drivers/staging/fbtft/fbtft 0x8be876aa fbtft_write_spi_emulate_9 +EXPORT_SYMBOL drivers/staging/fbtft/fbtft 0x9c52cec9 fbtft_register_framebuffer +EXPORT_SYMBOL drivers/staging/fbtft/fbtft 0xa5e38b17 fbtft_dbg_hex +EXPORT_SYMBOL drivers/staging/fbtft/fbtft 0xc9687ff1 fbtft_write_reg16_bus16 +EXPORT_SYMBOL drivers/staging/fbtft/fbtft 0xcc916a7c fbtft_write_buf_dc +EXPORT_SYMBOL drivers/staging/fbtft/fbtft 0xd6795742 fbtft_write_gpio8_wr +EXPORT_SYMBOL drivers/staging/fbtft/fbtft 0xe393bf84 fbtft_framebuffer_alloc +EXPORT_SYMBOL drivers/staging/fbtft/fbtft 0xe7c5fb70 fbtft_framebuffer_release +EXPORT_SYMBOL drivers/staging/fbtft/fbtft 0xf913aff8 fbtft_write_gpio16_wr_latched +EXPORT_SYMBOL drivers/staging/fbtft/fbtft 0xfc1eb20e fbtft_write_spi +EXPORT_SYMBOL drivers/staging/gasket/gasket 0x01fbde8d gasket_pci_remove_device +EXPORT_SYMBOL drivers/staging/gasket/gasket 0x065f9c9d gasket_page_table_max_size +EXPORT_SYMBOL drivers/staging/gasket/gasket 0x0b3fb2c2 gasket_sysfs_put_attr +EXPORT_SYMBOL drivers/staging/gasket/gasket 0x18095b55 gasket_mm_unmap_region +EXPORT_SYMBOL drivers/staging/gasket/gasket 0x339c2b95 gasket_page_table_map +EXPORT_SYMBOL drivers/staging/gasket/gasket 0x36f27d69 gasket_sysfs_get_attr +EXPORT_SYMBOL drivers/staging/gasket/gasket 0x372973e0 gasket_page_table_are_addrs_bad +EXPORT_SYMBOL drivers/staging/gasket/gasket 0x38c3d415 gasket_page_table_num_active_pages +EXPORT_SYMBOL drivers/staging/gasket/gasket 0x4109757c gasket_page_table_partition +EXPORT_SYMBOL drivers/staging/gasket/gasket 0x41776221 gasket_sysfs_register_store +EXPORT_SYMBOL drivers/staging/gasket/gasket 0x4292ff96 gasket_page_table_is_dev_addr_bad +EXPORT_SYMBOL drivers/staging/gasket/gasket 0x520c8383 gasket_wait_with_reschedule +EXPORT_SYMBOL drivers/staging/gasket/gasket 0x569c3817 gasket_enable_device +EXPORT_SYMBOL drivers/staging/gasket/gasket 0x63185ba7 gasket_sysfs_create_entries +EXPORT_SYMBOL drivers/staging/gasket/gasket 0x72ded0ec gasket_reset_nolock +EXPORT_SYMBOL drivers/staging/gasket/gasket 0x77311f6a gasket_page_table_unmap_all +EXPORT_SYMBOL drivers/staging/gasket/gasket 0x8c92da47 gasket_page_table_num_simple_entries +EXPORT_SYMBOL drivers/staging/gasket/gasket 0x8eba5d04 gasket_get_ioctl_permissions_cb +EXPORT_SYMBOL drivers/staging/gasket/gasket 0x96ee8b04 gasket_sysfs_get_device_data +EXPORT_SYMBOL drivers/staging/gasket/gasket 0xbaa2668a gasket_num_name_lookup +EXPORT_SYMBOL drivers/staging/gasket/gasket 0xbaf2f8cd gasket_page_table_unmap +EXPORT_SYMBOL drivers/staging/gasket/gasket 0xbdd30227 gasket_register_device +EXPORT_SYMBOL drivers/staging/gasket/gasket 0xc225208c gasket_page_table_num_entries +EXPORT_SYMBOL drivers/staging/gasket/gasket 0xc28723d0 gasket_sysfs_put_device_data +EXPORT_SYMBOL drivers/staging/gasket/gasket 0xc9b68f55 gasket_pci_add_device +EXPORT_SYMBOL drivers/staging/gasket/gasket 0xcf820da1 gasket_reset +EXPORT_SYMBOL drivers/staging/gasket/gasket 0xd899940d gasket_disable_device +EXPORT_SYMBOL drivers/staging/gasket/gasket 0xec15f3da gasket_unregister_device +EXPORT_SYMBOL drivers/staging/iio/addac/adt7316 0xb7e1e6e1 adt7316_probe +EXPORT_SYMBOL drivers/staging/iio/meter/ade7854 0xa843fef1 ade7854_probe +EXPORT_SYMBOL drivers/staging/media/allegro-dvt/allegro 0x2c79d0f2 msg_type_name +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x0544b601 notify_wx_assoc_event +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x06c81fb9 rtllib_wx_get_scan +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x0c0460d7 rtllib_wx_get_power +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x0ffdf707 rtllib_softmac_start_protocol +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x10cacc9e rtllib_wx_set_scan +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x15ce78f4 rtllib_MgntDisconnect +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x18993205 rtllib_stop_scan +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x1a039f6f rtllib_wx_set_encode +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x1a268469 dot11d_channel_map +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x22166084 rt_global_debug_component +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x27d4e0a9 rtllib_DisableIntelPromiscuousMode +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x2a18d424 rtllib_wx_set_encode_ext +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x32c18fbd rtllib_wx_set_essid +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x43852755 rtllib_xmit +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x4ba15427 rtllib_start_scan_syncro +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x4e11fb6e rtllib_wx_get_name +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x55d484d5 HT_update_self_and_peer_setting +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x58402d57 dot11d_init +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x589f27e4 rtllib_reset_queue +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x61698245 rtllib_EnableIntelPromiscuousMode +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x6ab482f1 rtllib_wx_get_freq +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x6bc77ad7 free_rtllib +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x6f0f9cb2 rtllib_wx_set_rawtx +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x7cb651d6 rtllib_wx_set_freq +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x7d80dc43 rtllib_wx_set_mlme +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x81bbe695 rtllib_wx_set_rate +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x86f8c9e5 alloc_rtllib +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x945cd48c rtllib_act_scanning +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x97b935b2 rtllib_wx_get_rate +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x97dd3805 rtllib_wx_get_essid +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0xa15e0294 rtllib_wx_set_gen_ie +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0xa5fe551e rtllib_wx_set_rts +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0xa6b10603 rtllib_wx_set_wap +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0xa918d76f rtllib_wx_set_power +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0xa947d1f4 rtllib_get_beacon +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0xa9e5cdb0 rtllib_legal_channel +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0xb59321a9 rtllib_rx +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0xc0454d4a rtllib_wx_set_auth +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0xc8ad64dc rtllib_wx_get_wap +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0xcbe237c1 rtllib_wx_get_rts +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0xd662df9d rtllib_start_send_beacons +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0xd93650af rtllib_ps_tx_ack +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0xd9b20783 rtllib_softmac_stop_protocol +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0xdd5aa228 rtllib_stop_send_beacons +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0xdf1cb866 rtllib_wx_get_encode +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0xdf78f620 rtllib_wlan_frequencies +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0xe2168617 rtllib_wx_set_mode +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0xe878b2cd rtllib_stop_scan_syncro +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0xedbfa52b RemovePeerTS +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0xf33a0fdc rtllib_sta_ps_send_null_frame +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0xf4145530 rtllib_wx_get_mode +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x09cc04a8 ieee80211_wx_get_essid_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x0c25e308 ieee80211_wx_set_power_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x1d66a0ff ieee80211_is_shortslot_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x30a3e8d4 ieee80211_wx_set_encode_ext_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x34778b62 dot11d_get_max_tx_pwr_in_dbm +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x3e1660aa ieee80211_softmac_xmit_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x40e3fde7 ieee80211_wpa_supplicant_ioctl_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x458ddf31 ieee80211_wx_get_encode_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x4607c3c1 ieee80211_wake_queue_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x46d9e1b5 ieee80211_stop_scan_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x4747f783 ieee80211_wx_set_rts_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x4b6b050e ieee80211_rx_mgt_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x4e72cc58 ieee80211_wx_get_wap_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x4f3d7c69 notify_wx_assoc_event_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x5367b66e ieee80211_wx_set_rate_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x58299957 rtl8192u_dot11d_init +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x5d9b9064 dot11d_reset +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x6e4eb0e1 ieee80211_wx_set_auth_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x7167aeb8 ieee80211_wx_get_mode_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x77460a60 ieee80211_wx_set_scan_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x793c64b5 ieee80211_start_send_beacons_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x79761d7d ieee80211_wx_set_essid_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x7c07ad20 ieee80211_get_beacon_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x7c9ffadd ieee80211_wx_get_power_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x7e9587b3 ieee80211_wx_get_freq_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x807ad106 ieee80211_rx_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x838aec6b ieee80211_wx_get_rate_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x875a7ce0 ieee80211_wx_set_mlme_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x8ca23af0 ieee80211_wx_get_name_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x96e4b5ab ieee80211_wx_set_gen_ie_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x9705b190 ieee80211_txb_free_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x9817cd77 to_legal_channel +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x9d17997a ieee80211_softmac_stop_protocol_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0xa0cb8c99 ieee80211_stop_send_beacons_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0xa18af4bd ieee80211_wx_set_mode_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0xa7ab5065 ieee80211_wx_get_scan_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0xac4ba9d3 ieee80211_start_scan_syncro_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0xae78ddb6 ieee80211_wx_set_freq_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0xb20d60e2 HTUpdateSelfAndPeerSetting +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0xb3444373 ieee80211_wx_set_encode_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0xb8d6e890 ieee80211_disassociate_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0xbb0ca2bb ieee80211_reset_queue_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0xbb5102d8 ieee80211_wx_get_encode_ext_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0xbc2cfd95 SendDisassociation_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0xc33e3ebd ieee80211_wx_set_wap_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0xc370a43e ieee80211_wlan_frequencies_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0xca0b0566 ieee80211_wx_get_rts_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0xdb2beb3e dot11d_scan_complete +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0xe4902353 ieee80211_softmac_start_protocol_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0xe519498b ieee80211_wx_set_rawtx_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0xecc5fb1b ieee80211_is_54g_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0xf39fd992 ieee80211_stop_queue_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0xf5111906 ieee80211_softmac_scan_syncro_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0xf944dbe0 dot11d_update_country_ie +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0xfa974387 is_legal_channel +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0xfcd22819 ieee80211_ps_tx_ack_rsl +EXPORT_SYMBOL drivers/staging/vc04_services/vchiq 0x2b777418 vchi_get_peer_version +EXPORT_SYMBOL drivers/staging/vc04_services/vchiq 0x2f3516ab vchiq_connect +EXPORT_SYMBOL drivers/staging/vc04_services/vchiq 0x36331e4f vchi_held_msg_release +EXPORT_SYMBOL drivers/staging/vc04_services/vchiq 0x47f110c2 vchi_service_release +EXPORT_SYMBOL drivers/staging/vc04_services/vchiq 0x5211f7cb vchi_initialise +EXPORT_SYMBOL drivers/staging/vc04_services/vchiq 0x57e16fff vchi_disconnect +EXPORT_SYMBOL drivers/staging/vc04_services/vchiq 0x582ed8ca vchiq_bulk_receive +EXPORT_SYMBOL drivers/staging/vc04_services/vchiq 0x6682543a vchi_msg_dequeue +EXPORT_SYMBOL drivers/staging/vc04_services/vchiq 0x69df51ac vchi_bulk_queue_receive +EXPORT_SYMBOL drivers/staging/vc04_services/vchiq 0x713b5716 vchiq_shutdown +EXPORT_SYMBOL drivers/staging/vc04_services/vchiq 0x84112d9c vchi_connect +EXPORT_SYMBOL drivers/staging/vc04_services/vchiq 0x915629ae vchi_bulk_queue_transmit +EXPORT_SYMBOL drivers/staging/vc04_services/vchiq 0x92b2feb4 vchiq_bulk_transmit +EXPORT_SYMBOL drivers/staging/vc04_services/vchiq 0xa22e9df3 vchiq_add_connected_callback +EXPORT_SYMBOL drivers/staging/vc04_services/vchiq 0xaa03351f vchi_service_open +EXPORT_SYMBOL drivers/staging/vc04_services/vchiq 0xaba69e05 vchiq_add_service +EXPORT_SYMBOL drivers/staging/vc04_services/vchiq 0xbd9445f3 vchi_msg_remove +EXPORT_SYMBOL drivers/staging/vc04_services/vchiq 0xbf670d66 vchi_msg_peek +EXPORT_SYMBOL drivers/staging/vc04_services/vchiq 0xc1fdb31f vchiq_open_service +EXPORT_SYMBOL drivers/staging/vc04_services/vchiq 0xc4b0bf30 vchi_service_close +EXPORT_SYMBOL drivers/staging/vc04_services/vchiq 0xc5c429da vchiq_initialise +EXPORT_SYMBOL drivers/staging/vc04_services/vchiq 0xcc07cfe3 vchi_queue_kernel_message +EXPORT_SYMBOL drivers/staging/vc04_services/vchiq 0xf2e8c52e vchi_service_use +EXPORT_SYMBOL drivers/staging/vc04_services/vchiq 0xf63a36d7 vchi_msg_hold +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x028378e2 iscsit_handle_logout_cmd +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x0cef54c9 iscsit_handle_snack +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x162edfd9 iscsit_sequence_cmd +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x19411a3c iscsit_free_cmd +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x1a143607 iscsi_target_check_login_request +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x2291b9ee iscsit_logout_post_handler +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x22a80f84 iscsit_increment_maxcmdsn +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x253cb569 iscsit_stop_dataout_timer +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x2785049c iscsit_response_queue +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x2cd69f96 iscsit_allocate_cmd +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x3e7025ca iscsit_get_datain_values +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x43801198 iscsit_register_transport +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x471e901a iscsit_build_task_mgt_rsp +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x4d22b292 iscsit_add_reject +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x4d54e907 iscsit_handle_task_mgt_cmd +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x5093cec3 iscsit_build_datain_pdu +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x55fc1384 iscsi_change_param_sprintf +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x57172017 iscsit_build_nopin_rsp +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x5be311e9 iscsit_process_text_cmd +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x5c66a52e iscsit_process_scsi_cmd +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x62a494a6 iscsit_release_cmd +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x6338fbeb iscsit_find_cmd_from_itt +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x6c72b390 iscsit_find_cmd_from_itt_or_dump +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x7ebabd60 iscsit_immediate_queue +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x877af941 iscsit_setup_nop_out +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x8d3b4b92 iscsit_reject_cmd +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x92b252df iscsit_queue_rsp +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0xa25cb2a5 iscsit_setup_scsi_cmd +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0xa2e9e83d iscsit_cause_connection_reinstatement +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0xad546246 __iscsit_check_dataout_hdr +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0xb03c2388 iscsit_aborted_task +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0xb2d4f158 iscsit_build_reject +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0xb9add287 iscsit_tmr_post_handler +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0xbbcd5ad4 iscsit_setup_text_cmd +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0xbe1cb577 iscsit_build_text_rsp +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0xbed10884 iscsit_check_dataout_hdr +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0xc627724f iscsit_build_rsp_pdu +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0xc64e2f3f iscsit_build_r2ts_for_cmd +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0xc90efa06 iscsit_check_dataout_payload +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0xc96fe9fc iscsit_set_unsolicited_dataout +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0xca65688a iscsit_build_logout_rsp +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0xd4fc9be2 iscsit_process_nop_out +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0xd82d5e1c iscsit_unregister_transport +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0xf34332f0 iscsi_find_param_from_key +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0xf754abff iscsit_add_cmd_to_immediate_queue +EXPORT_SYMBOL drivers/target/target_core_mod 0x0871ffd6 transport_set_vpd_ident +EXPORT_SYMBOL drivers/target/target_core_mod 0x0a88ecf8 transport_deregister_session_configfs +EXPORT_SYMBOL drivers/target/target_core_mod 0x0f61adb4 target_submit_tmr +EXPORT_SYMBOL drivers/target/target_core_mod 0x142072c0 transport_set_vpd_assoc +EXPORT_SYMBOL drivers/target/target_core_mod 0x1b0c4093 core_allocate_nexus_loss_ua +EXPORT_SYMBOL drivers/target/target_core_mod 0x1eb5459a target_tpg_has_node_acl +EXPORT_SYMBOL drivers/target/target_core_mod 0x2515424a transport_send_check_condition_and_sense +EXPORT_SYMBOL drivers/target/target_core_mod 0x2a9f2e1b transport_copy_sense_to_cmd +EXPORT_SYMBOL drivers/target/target_core_mod 0x3123f254 transport_lookup_tmr_lun +EXPORT_SYMBOL drivers/target/target_core_mod 0x32866977 transport_backend_register +EXPORT_SYMBOL drivers/target/target_core_mod 0x39849755 target_show_dynamic_sessions +EXPORT_SYMBOL drivers/target/target_core_mod 0x3a20a9d7 transport_set_vpd_ident_type +EXPORT_SYMBOL drivers/target/target_core_mod 0x3c266ba7 core_alua_check_nonop_delay +EXPORT_SYMBOL drivers/target/target_core_mod 0x3d42168a target_undepend_item +EXPORT_SYMBOL drivers/target/target_core_mod 0x41d764cd target_submit_cmd_map_sgls +EXPORT_SYMBOL drivers/target/target_core_mod 0x46e7d300 target_put_nacl +EXPORT_SYMBOL drivers/target/target_core_mod 0x4dbea431 core_tpg_check_initiator_node_acl +EXPORT_SYMBOL drivers/target/target_core_mod 0x4e5f119d transport_generic_new_cmd +EXPORT_SYMBOL drivers/target/target_core_mod 0x4e70a704 passthrough_pr_attrib_attrs +EXPORT_SYMBOL drivers/target/target_core_mod 0x5a6e794f spc_emulate_evpd_83 +EXPORT_SYMBOL drivers/target/target_core_mod 0x5e84918f transport_kmap_data_sg +EXPORT_SYMBOL drivers/target/target_core_mod 0x61a0a11a transport_alloc_session_tags +EXPORT_SYMBOL drivers/target/target_core_mod 0x638bffb7 target_free_sgl +EXPORT_SYMBOL drivers/target/target_core_mod 0x67f02038 __transport_register_session +EXPORT_SYMBOL drivers/target/target_core_mod 0x68b6cf89 target_depend_item +EXPORT_SYMBOL drivers/target/target_core_mod 0x6bece276 transport_generic_request_failure +EXPORT_SYMBOL drivers/target/target_core_mod 0x6d8daeca target_send_busy +EXPORT_SYMBOL drivers/target/target_core_mod 0x7083111a core_tpg_set_initiator_node_queue_depth +EXPORT_SYMBOL drivers/target/target_core_mod 0x73420c5e transport_kunmap_data_sg +EXPORT_SYMBOL drivers/target/target_core_mod 0x7a1d0d3c target_alloc_sgl +EXPORT_SYMBOL drivers/target/target_core_mod 0x7a70be6a target_show_cmd +EXPORT_SYMBOL drivers/target/target_core_mod 0x7c399de4 target_lun_is_rdonly +EXPORT_SYMBOL drivers/target/target_core_mod 0x7d00eeed sbc_parse_cdb +EXPORT_SYMBOL drivers/target/target_core_mod 0x7f64fff9 transport_free_session +EXPORT_SYMBOL drivers/target/target_core_mod 0x80e49651 spc_parse_cdb +EXPORT_SYMBOL drivers/target/target_core_mod 0x8307094f spc_emulate_report_luns +EXPORT_SYMBOL drivers/target/target_core_mod 0x8399a847 core_tpg_set_initiator_node_tag +EXPORT_SYMBOL drivers/target/target_core_mod 0x848e9d7b target_register_template +EXPORT_SYMBOL drivers/target/target_core_mod 0x8742cd15 target_complete_cmd_with_length +EXPORT_SYMBOL drivers/target/target_core_mod 0x8a19936a transport_alloc_session +EXPORT_SYMBOL drivers/target/target_core_mod 0x8a251a3f target_configure_unmap_from_queue +EXPORT_SYMBOL drivers/target/target_core_mod 0x9017706d sbc_get_device_type +EXPORT_SYMBOL drivers/target/target_core_mod 0x91c5b8ec target_unregister_template +EXPORT_SYMBOL drivers/target/target_core_mod 0x93515f31 transport_generic_handle_tmr +EXPORT_SYMBOL drivers/target/target_core_mod 0x97db170c passthrough_parse_cdb +EXPORT_SYMBOL drivers/target/target_core_mod 0x9adc03fb target_wait_for_sess_cmds +EXPORT_SYMBOL drivers/target/target_core_mod 0x9aec16d1 target_cmd_init_cdb +EXPORT_SYMBOL drivers/target/target_core_mod 0x9c077401 transport_init_session +EXPORT_SYMBOL drivers/target/target_core_mod 0x9e117362 target_setup_session +EXPORT_SYMBOL drivers/target/target_core_mod 0xa31c1e58 transport_init_se_cmd +EXPORT_SYMBOL drivers/target/target_core_mod 0xa4c87480 target_complete_cmd +EXPORT_SYMBOL drivers/target/target_core_mod 0xa5974a2b target_get_sess_cmd +EXPORT_SYMBOL drivers/target/target_core_mod 0xa827ebb3 target_execute_cmd +EXPORT_SYMBOL drivers/target/target_core_mod 0xa90da206 transport_wait_for_tasks +EXPORT_SYMBOL drivers/target/target_core_mod 0xab88c630 sbc_dif_copy_prot +EXPORT_SYMBOL drivers/target/target_core_mod 0xabd91921 transport_lookup_cmd_lun +EXPORT_SYMBOL drivers/target/target_core_mod 0xaecc1f78 target_backend_unregister +EXPORT_SYMBOL drivers/target/target_core_mod 0xaf3c2356 sbc_dif_verify +EXPORT_SYMBOL drivers/target/target_core_mod 0xafd36b59 target_submit_cmd +EXPORT_SYMBOL drivers/target/target_core_mod 0xb08ae6d4 core_tmr_alloc_req +EXPORT_SYMBOL drivers/target/target_core_mod 0xb376764e passthrough_attrib_attrs +EXPORT_SYMBOL drivers/target/target_core_mod 0xb6e2bea2 target_sess_cmd_list_set_waiting +EXPORT_SYMBOL drivers/target/target_core_mod 0xc3904010 spc_emulate_inquiry_std +EXPORT_SYMBOL drivers/target/target_core_mod 0xc3d9b20e sbc_attrib_attrs +EXPORT_SYMBOL drivers/target/target_core_mod 0xc90ae8a8 transport_generic_free_cmd +EXPORT_SYMBOL drivers/target/target_core_mod 0xcc18d76c target_to_linux_sector +EXPORT_SYMBOL drivers/target/target_core_mod 0xcde1db29 target_remove_session +EXPORT_SYMBOL drivers/target/target_core_mod 0xd4100fde transport_deregister_session +EXPORT_SYMBOL drivers/target/target_core_mod 0xd7aa79a1 target_nacl_find_deve +EXPORT_SYMBOL drivers/target/target_core_mod 0xd94cc36d core_tpg_get_initiator_node_acl +EXPORT_SYMBOL drivers/target/target_core_mod 0xde5a5887 sbc_get_write_same_sectors +EXPORT_SYMBOL drivers/target/target_core_mod 0xebb66537 target_cmd_parse_cdb +EXPORT_SYMBOL drivers/target/target_core_mod 0xf05b05fc core_tpg_register +EXPORT_SYMBOL drivers/target/target_core_mod 0xf376c074 target_put_sess_cmd +EXPORT_SYMBOL drivers/target/target_core_mod 0xf3c2dfe0 transport_set_vpd_proto_id +EXPORT_SYMBOL drivers/target/target_core_mod 0xf4853b15 transport_handle_cdb_direct +EXPORT_SYMBOL drivers/target/target_core_mod 0xf4e94647 transport_register_session +EXPORT_SYMBOL drivers/target/target_core_mod 0xfb8bbe07 core_tpg_deregister +EXPORT_SYMBOL drivers/usb/class/cdc-wdm 0xa9122de9 usb_cdc_wdm_register +EXPORT_SYMBOL drivers/usb/gadget/libcomposite 0x485822cc usb_os_desc_prepare_interf_dir +EXPORT_SYMBOL drivers/usb/host/sl811-hcd 0x27204718 sl811h_driver +EXPORT_SYMBOL drivers/usb/serial/usb_wwan 0x104e4322 usb_wwan_tiocmset +EXPORT_SYMBOL drivers/usb/serial/usb_wwan 0x136226df usb_wwan_chars_in_buffer +EXPORT_SYMBOL drivers/usb/serial/usb_wwan 0x163716fd usb_wwan_port_remove +EXPORT_SYMBOL drivers/usb/serial/usb_wwan 0x33a70c59 usb_wwan_suspend +EXPORT_SYMBOL drivers/usb/serial/usb_wwan 0x4bf8ccee usb_wwan_get_serial_info +EXPORT_SYMBOL drivers/usb/serial/usb_wwan 0x661df58b usb_wwan_set_serial_info +EXPORT_SYMBOL drivers/usb/serial/usb_wwan 0x681f41ec usb_wwan_open +EXPORT_SYMBOL drivers/usb/serial/usb_wwan 0x6f20c6bc usb_wwan_write_room +EXPORT_SYMBOL drivers/usb/serial/usb_wwan 0x8593a01a usb_wwan_dtr_rts +EXPORT_SYMBOL drivers/usb/serial/usb_wwan 0x89a68f70 usb_wwan_write +EXPORT_SYMBOL drivers/usb/serial/usb_wwan 0x8b29798a usb_wwan_tiocmget +EXPORT_SYMBOL drivers/usb/serial/usb_wwan 0xb171a0c5 usb_wwan_close +EXPORT_SYMBOL drivers/usb/serial/usb_wwan 0xf8bf332f usb_wwan_resume +EXPORT_SYMBOL drivers/usb/serial/usbserial 0x481ae83b usb_serial_suspend +EXPORT_SYMBOL drivers/usb/serial/usbserial 0xfc46ee3e usb_serial_resume +EXPORT_SYMBOL drivers/vfio/mdev/mdev 0x06d4e01e mdev_set_drvdata +EXPORT_SYMBOL drivers/vfio/mdev/mdev 0x569ed51a mdev_register_device +EXPORT_SYMBOL drivers/vfio/mdev/mdev 0x663d4de8 mdev_register_driver +EXPORT_SYMBOL drivers/vfio/mdev/mdev 0x8e913b6c mdev_get_drvdata +EXPORT_SYMBOL drivers/vfio/mdev/mdev 0x9010220a mdev_from_dev +EXPORT_SYMBOL drivers/vfio/mdev/mdev 0xa9afadcf mdev_uuid +EXPORT_SYMBOL drivers/vfio/mdev/mdev 0xa9c6c2f0 mdev_dev +EXPORT_SYMBOL drivers/vfio/mdev/mdev 0xb6bf21bf mdev_unregister_device +EXPORT_SYMBOL drivers/vfio/mdev/mdev 0xbdda3e55 mdev_set_iommu_device +EXPORT_SYMBOL drivers/vfio/mdev/mdev 0xbe5fb84d mdev_parent_dev +EXPORT_SYMBOL drivers/vfio/mdev/mdev 0xc6b413f4 mdev_get_iommu_device +EXPORT_SYMBOL drivers/vfio/mdev/mdev 0xe885267c mdev_unregister_driver +EXPORT_SYMBOL drivers/vfio/vfio 0x148da734 vfio_pin_pages +EXPORT_SYMBOL drivers/vfio/vfio 0x19567d06 vfio_info_cap_shift +EXPORT_SYMBOL drivers/vfio/vfio 0x1aa9fba0 vfio_dma_rw +EXPORT_SYMBOL drivers/vfio/vfio 0x1c9947b9 vfio_unregister_notifier +EXPORT_SYMBOL drivers/vfio/vfio 0x292521cc vfio_register_notifier +EXPORT_SYMBOL drivers/vfio/vfio 0x48a81d7e vfio_group_pin_pages +EXPORT_SYMBOL drivers/vfio/vfio 0x6c28be5a vfio_info_add_capability +EXPORT_SYMBOL drivers/vfio/vfio 0x7834defd vfio_group_unpin_pages +EXPORT_SYMBOL drivers/vfio/vfio 0xadc044b7 vfio_set_irqs_validate_and_prepare +EXPORT_SYMBOL drivers/vfio/vfio 0xe591a862 vfio_unpin_pages +EXPORT_SYMBOL drivers/vhost/vhost 0xd0f4ee27 vhost_chr_poll +EXPORT_SYMBOL drivers/vhost/vhost 0xf2ae3446 vhost_chr_write_iter +EXPORT_SYMBOL drivers/vhost/vringh 0x3b304ebb vringh_iov_push_user +EXPORT_SYMBOL drivers/vhost/vringh 0x3ecc1eea vringh_getdesc_kern +EXPORT_SYMBOL drivers/vhost/vringh 0x4311cd91 vringh_iov_pull_user +EXPORT_SYMBOL drivers/vhost/vringh 0x44d6f41b vringh_notify_enable_kern +EXPORT_SYMBOL drivers/vhost/vringh 0x4b6a6e23 vringh_iov_pull_iotlb +EXPORT_SYMBOL drivers/vhost/vringh 0x4d0529ee vringh_complete_multi_user +EXPORT_SYMBOL drivers/vhost/vringh 0x56f694fc vringh_abandon_kern +EXPORT_SYMBOL drivers/vhost/vringh 0x58bc86ac vringh_complete_user +EXPORT_SYMBOL drivers/vhost/vringh 0x5aa88061 vringh_init_user +EXPORT_SYMBOL drivers/vhost/vringh 0x5e47ee29 vringh_notify_enable_user +EXPORT_SYMBOL drivers/vhost/vringh 0x6d95262b vringh_getdesc_user +EXPORT_SYMBOL drivers/vhost/vringh 0x80ad788a vringh_notify_disable_user +EXPORT_SYMBOL drivers/vhost/vringh 0x85665842 vringh_notify_enable_iotlb +EXPORT_SYMBOL drivers/vhost/vringh 0x8701069c vringh_abandon_iotlb +EXPORT_SYMBOL drivers/vhost/vringh 0x8bfb5a2b vringh_complete_iotlb +EXPORT_SYMBOL drivers/vhost/vringh 0x8d40c6f4 vringh_getdesc_iotlb +EXPORT_SYMBOL drivers/vhost/vringh 0x8e78a074 vringh_need_notify_user +EXPORT_SYMBOL drivers/vhost/vringh 0x91b5a92c vringh_abandon_user +EXPORT_SYMBOL drivers/vhost/vringh 0x97fa07e9 vringh_iov_push_kern +EXPORT_SYMBOL drivers/vhost/vringh 0xac2d6746 vringh_init_kern +EXPORT_SYMBOL drivers/vhost/vringh 0xaf01a583 vringh_set_iotlb +EXPORT_SYMBOL drivers/vhost/vringh 0xbf4f4fbd vringh_need_notify_iotlb +EXPORT_SYMBOL drivers/vhost/vringh 0xd3a14d7d vringh_complete_kern +EXPORT_SYMBOL drivers/vhost/vringh 0xde804bb9 vringh_iov_pull_kern +EXPORT_SYMBOL drivers/vhost/vringh 0xe544457e vringh_notify_disable_iotlb +EXPORT_SYMBOL drivers/vhost/vringh 0xee1c7df3 vringh_init_iotlb +EXPORT_SYMBOL drivers/vhost/vringh 0xf1bbb2ad vringh_need_notify_kern +EXPORT_SYMBOL drivers/vhost/vringh 0xf6784994 vringh_iov_push_iotlb +EXPORT_SYMBOL drivers/vhost/vringh 0xff6e6a53 vringh_notify_disable_kern +EXPORT_SYMBOL drivers/video/backlight/lcd 0x591fe844 devm_lcd_device_unregister +EXPORT_SYMBOL drivers/video/backlight/lcd 0x6b4b0b7c lcd_device_register +EXPORT_SYMBOL drivers/video/backlight/lcd 0x9a89116c lcd_device_unregister +EXPORT_SYMBOL drivers/video/backlight/lcd 0xaa38d5a5 devm_lcd_device_register +EXPORT_SYMBOL drivers/video/fbdev/core/svgalib 0x0cd84627 svga_get_tilemax +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 0x4677beaf svga_tilecopy +EXPORT_SYMBOL drivers/video/fbdev/core/svgalib 0x4ab38ef2 svga_set_default_crt_regs +EXPORT_SYMBOL drivers/video/fbdev/core/svgalib 0x507ed138 svga_settile +EXPORT_SYMBOL drivers/video/fbdev/core/svgalib 0x7b9dc767 svga_tileblit +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 0xa0eb8979 svga_get_caps +EXPORT_SYMBOL drivers/video/fbdev/core/svgalib 0xb0ab2b2e svga_check_timings +EXPORT_SYMBOL drivers/video/fbdev/core/svgalib 0xc784d983 svga_tilefill +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 0xe2a71d40 svga_tilecursor +EXPORT_SYMBOL drivers/video/fbdev/core/syscopyarea 0x581e9ce2 sys_copyarea +EXPORT_SYMBOL drivers/video/fbdev/core/sysfillrect 0x51668ea4 sys_fillrect +EXPORT_SYMBOL drivers/video/fbdev/core/sysimgblt 0x1367e7ad sys_imageblit +EXPORT_SYMBOL drivers/video/fbdev/cyber2000fb 0x0cc3ede5 cyber2000fb_detach +EXPORT_SYMBOL drivers/video/fbdev/cyber2000fb 0x4dee99cf cyber2000fb_attach +EXPORT_SYMBOL drivers/video/fbdev/cyber2000fb 0x534b6f18 cyber2000fb_disable_extregs +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 0xe270dddc mac_find_mode +EXPORT_SYMBOL drivers/video/fbdev/matrox/g450_pll 0x7696a61d matroxfb_g450_setpll_cond +EXPORT_SYMBOL drivers/video/fbdev/matrox/g450_pll 0x9636ee56 matroxfb_g450_setclk +EXPORT_SYMBOL drivers/video/fbdev/matrox/g450_pll 0xc1112382 g450_mnp2f +EXPORT_SYMBOL drivers/video/fbdev/matrox/matroxfb_DAC1064 0x0e46a94a matrox_mystique +EXPORT_SYMBOL drivers/video/fbdev/matrox/matroxfb_DAC1064 0x97fbb6a9 DAC1064_global_init +EXPORT_SYMBOL drivers/video/fbdev/matrox/matroxfb_DAC1064 0xc1445708 matrox_G100 +EXPORT_SYMBOL drivers/video/fbdev/matrox/matroxfb_DAC1064 0xf857bf3b DAC1064_global_restore +EXPORT_SYMBOL drivers/video/fbdev/matrox/matroxfb_Ti3026 0xf6409cc4 matrox_millennium +EXPORT_SYMBOL drivers/video/fbdev/matrox/matroxfb_accel 0x9fec8f07 matrox_cfbX_init +EXPORT_SYMBOL drivers/video/fbdev/matrox/matroxfb_base 0x004625de matroxfb_wait_for_sync +EXPORT_SYMBOL drivers/video/fbdev/matrox/matroxfb_base 0x8532f32b matroxfb_unregister_driver +EXPORT_SYMBOL drivers/video/fbdev/matrox/matroxfb_base 0x9f0f5faf matroxfb_enable_irq +EXPORT_SYMBOL drivers/video/fbdev/matrox/matroxfb_base 0xd5dc6a8a matroxfb_register_driver +EXPORT_SYMBOL drivers/video/fbdev/matrox/matroxfb_g450 0x957c6384 matroxfb_g450_connect +EXPORT_SYMBOL drivers/video/fbdev/matrox/matroxfb_g450 0xf9ed8b3f matroxfb_g450_shutdown +EXPORT_SYMBOL drivers/video/fbdev/matrox/matroxfb_misc 0x0764ab0b matroxfb_DAC_out +EXPORT_SYMBOL drivers/video/fbdev/matrox/matroxfb_misc 0x233cf71b matroxfb_read_pins +EXPORT_SYMBOL drivers/video/fbdev/matrox/matroxfb_misc 0x25cf8049 matroxfb_PLL_calcclock +EXPORT_SYMBOL drivers/video/fbdev/matrox/matroxfb_misc 0x4a60db1b matroxfb_vgaHWinit +EXPORT_SYMBOL drivers/video/fbdev/matrox/matroxfb_misc 0x676957d2 matroxfb_vgaHWrestore +EXPORT_SYMBOL drivers/video/fbdev/matrox/matroxfb_misc 0xa2e2a660 matroxfb_DAC_in +EXPORT_SYMBOL drivers/video/fbdev/matrox/matroxfb_misc 0xcdc90c64 matroxfb_var2my +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/w1/slaves/w1_ds2780 0x9a2d26d0 w1_ds2780_io +EXPORT_SYMBOL drivers/w1/slaves/w1_ds2780 0xf22dd6e3 w1_ds2780_eeprom_cmd +EXPORT_SYMBOL drivers/w1/slaves/w1_ds2781 0x200a3df7 w1_ds2781_io +EXPORT_SYMBOL drivers/w1/slaves/w1_ds2781 0xdd71fa9b w1_ds2781_eeprom_cmd +EXPORT_SYMBOL drivers/w1/wire 0x528474f1 w1_add_master_device +EXPORT_SYMBOL drivers/w1/wire 0x61677f4d w1_remove_master_device +EXPORT_SYMBOL drivers/w1/wire 0x65ed6564 w1_register_family +EXPORT_SYMBOL drivers/w1/wire 0xd1d00da2 w1_unregister_family +EXPORT_SYMBOL drivers/watchdog/bd70528_wdt 0x74d95f32 bd70528_wdt_set +EXPORT_SYMBOL drivers/watchdog/bd70528_wdt 0x96c12d10 bd70528_wdt_unlock +EXPORT_SYMBOL drivers/watchdog/bd70528_wdt 0xc6439d59 bd70528_wdt_lock +EXPORT_SYMBOL fs/fscache/fscache 0x09effc69 fscache_mark_page_cached +EXPORT_SYMBOL fs/fscache/fscache 0x1054c036 fscache_obtained_object +EXPORT_SYMBOL fs/fscache/fscache 0x11609e7b fscache_fsdef_index +EXPORT_SYMBOL fs/fscache/fscache 0x13f457d5 __fscache_wait_on_page_write +EXPORT_SYMBOL fs/fscache/fscache 0x162beac0 __fscache_update_cookie +EXPORT_SYMBOL fs/fscache/fscache 0x1a7eaa7c fscache_object_retrying_stale +EXPORT_SYMBOL fs/fscache/fscache 0x1e03288d __fscache_enable_cookie +EXPORT_SYMBOL fs/fscache/fscache 0x1e93e7ab __fscache_disable_cookie +EXPORT_SYMBOL fs/fscache/fscache 0x23b080f9 __fscache_write_page +EXPORT_SYMBOL fs/fscache/fscache 0x29ec443f __fscache_alloc_page +EXPORT_SYMBOL fs/fscache/fscache 0x2e5f81b7 __fscache_check_consistency +EXPORT_SYMBOL fs/fscache/fscache 0x2e8107d5 __fscache_relinquish_cookie +EXPORT_SYMBOL fs/fscache/fscache 0x389e43fa fscache_operation_init +EXPORT_SYMBOL fs/fscache/fscache 0x40f17064 __fscache_unregister_netfs +EXPORT_SYMBOL fs/fscache/fscache 0x4526ef21 fscache_withdraw_cache +EXPORT_SYMBOL fs/fscache/fscache 0x504ecd49 __fscache_read_or_alloc_pages +EXPORT_SYMBOL fs/fscache/fscache 0x51fe2148 fscache_op_complete +EXPORT_SYMBOL fs/fscache/fscache 0x5407dd88 fscache_object_lookup_negative +EXPORT_SYMBOL fs/fscache/fscache 0x5e0cb538 __fscache_maybe_release_page +EXPORT_SYMBOL fs/fscache/fscache 0x64e0e9da __fscache_acquire_cookie +EXPORT_SYMBOL fs/fscache/fscache 0x6acefa42 fscache_cache_cleared_wq +EXPORT_SYMBOL fs/fscache/fscache 0x7029d476 __fscache_attr_changed +EXPORT_SYMBOL fs/fscache/fscache 0x73b88404 __fscache_register_netfs +EXPORT_SYMBOL fs/fscache/fscache 0x74530ecd fscache_op_debug_id +EXPORT_SYMBOL fs/fscache/fscache 0x759a2e34 fscache_init_cache +EXPORT_SYMBOL fs/fscache/fscache 0x7b1135b6 fscache_object_destroy +EXPORT_SYMBOL fs/fscache/fscache 0x7c903628 fscache_object_mark_killed +EXPORT_SYMBOL fs/fscache/fscache 0x7e5cc9fa fscache_mark_pages_cached +EXPORT_SYMBOL fs/fscache/fscache 0x81c419be __fscache_readpages_cancel +EXPORT_SYMBOL fs/fscache/fscache 0x97010e2a fscache_check_aux +EXPORT_SYMBOL fs/fscache/fscache 0xa5ca2905 fscache_object_init +EXPORT_SYMBOL fs/fscache/fscache 0xb3094b0a fscache_enqueue_operation +EXPORT_SYMBOL fs/fscache/fscache 0xb6f97aa5 fscache_put_operation +EXPORT_SYMBOL fs/fscache/fscache 0xc106b338 __fscache_uncache_page +EXPORT_SYMBOL fs/fscache/fscache 0xc29ef6cd fscache_add_cache +EXPORT_SYMBOL fs/fscache/fscache 0xd3f0268c __fscache_wait_on_invalidate +EXPORT_SYMBOL fs/fscache/fscache 0xebd5466a fscache_io_error +EXPORT_SYMBOL fs/fscache/fscache 0xf18c9009 __fscache_uncache_all_inode_pages +EXPORT_SYMBOL fs/fscache/fscache 0xf1c29fdc __fscache_read_or_alloc_page +EXPORT_SYMBOL fs/fscache/fscache 0xf81eb9e0 __fscache_check_page_write +EXPORT_SYMBOL fs/fscache/fscache 0xfe341111 __fscache_invalidate +EXPORT_SYMBOL fs/ocfs2/cluster/ocfs2_nodemanager 0xbfd7d7a2 o2hb_global_heartbeat_active +EXPORT_SYMBOL fs/quota/quota_tree 0x01c320e2 qtree_release_dquot +EXPORT_SYMBOL fs/quota/quota_tree 0x42a2aef0 qtree_get_next_id +EXPORT_SYMBOL fs/quota/quota_tree 0x99637dd2 qtree_read_dquot +EXPORT_SYMBOL fs/quota/quota_tree 0xa540a7ad qtree_delete_dquot +EXPORT_SYMBOL fs/quota/quota_tree 0xd4455320 qtree_write_dquot +EXPORT_SYMBOL fs/quota/quota_tree 0xde768286 qtree_entry_unused +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 0xaa8106bc crc8_populate_msb +EXPORT_SYMBOL lib/crc8 0xc3cd034d crc8_populate_lsb +EXPORT_SYMBOL lib/crc8 0xe2aae5cc crc8 +EXPORT_SYMBOL lib/crypto/libarc4 0x2bb32ad1 arc4_setkey +EXPORT_SYMBOL lib/crypto/libarc4 0xcd47fcc4 arc4_crypt +EXPORT_SYMBOL lib/crypto/libblake2s 0x7bcc24fd blake2s256_hmac +EXPORT_SYMBOL lib/crypto/libblake2s 0xa3cefaa0 blake2s_update +EXPORT_SYMBOL lib/crypto/libblake2s 0xadae6df8 blake2s_final +EXPORT_SYMBOL lib/crypto/libblake2s-generic 0x755f4ba3 blake2s_compress_generic +EXPORT_SYMBOL lib/crypto/libchacha 0xcec122d7 chacha_crypt_generic +EXPORT_SYMBOL lib/crypto/libchacha20poly1305 0x147c3f2e chacha20poly1305_encrypt +EXPORT_SYMBOL lib/crypto/libchacha20poly1305 0x1c679fe2 chacha20poly1305_decrypt +EXPORT_SYMBOL lib/crypto/libchacha20poly1305 0x37b34b92 chacha20poly1305_encrypt_sg_inplace +EXPORT_SYMBOL lib/crypto/libchacha20poly1305 0x5b19e187 chacha20poly1305_decrypt_sg_inplace +EXPORT_SYMBOL lib/crypto/libchacha20poly1305 0xbaf4d923 xchacha20poly1305_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 0x4dba97c6 poly1305_core_setkey +EXPORT_SYMBOL lib/crypto/libpoly1305 0xbcb90cb3 poly1305_core_emit +EXPORT_SYMBOL lib/libcrc32c 0x89a0cd52 crc32c_impl +EXPORT_SYMBOL lib/libcrc32c 0xb15b4109 crc32c +EXPORT_SYMBOL lib/lru_cache 0x0641307b lc_destroy +EXPORT_SYMBOL lib/lru_cache 0x098d2ed9 lc_try_get +EXPORT_SYMBOL lib/lru_cache 0x2d47ac83 lc_committed +EXPORT_SYMBOL lib/lru_cache 0x2f3dcecb lc_index_of +EXPORT_SYMBOL lib/lru_cache 0x4522d82a lc_reset +EXPORT_SYMBOL lib/lru_cache 0x4cf5f5a8 lc_is_used +EXPORT_SYMBOL lib/lru_cache 0x5752f31b lc_del +EXPORT_SYMBOL lib/lru_cache 0x7257beee lc_element_by_index +EXPORT_SYMBOL lib/lru_cache 0x9134feb7 lc_get +EXPORT_SYMBOL lib/lru_cache 0x96a2d9e4 lc_seq_dump_details +EXPORT_SYMBOL lib/lru_cache 0xb672aa97 lc_create +EXPORT_SYMBOL lib/lru_cache 0xbfbe53d5 lc_get_cumulative +EXPORT_SYMBOL lib/lru_cache 0xc3a98c1d lc_try_lock +EXPORT_SYMBOL lib/lru_cache 0xcc979a91 lc_set +EXPORT_SYMBOL lib/lru_cache 0xefec290a lc_find +EXPORT_SYMBOL lib/lru_cache 0xf250d433 lc_seq_printf_stats +EXPORT_SYMBOL lib/lru_cache 0xfd525ec7 lc_put +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 0x2b4846a1 raid6_empty_zero_page +EXPORT_SYMBOL lib/raid6/raid6_pq 0x59a2712d raid6_gfinv +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 0x64133cb3 lowpan_unregister_netdevice +EXPORT_SYMBOL net/6lowpan/6lowpan 0x79281aed lowpan_nhc_del +EXPORT_SYMBOL net/6lowpan/6lowpan 0x8fb23b36 lowpan_register_netdev +EXPORT_SYMBOL net/6lowpan/6lowpan 0xc8d8cdde lowpan_nhc_add +EXPORT_SYMBOL net/6lowpan/6lowpan 0xedd9bf2b lowpan_register_netdevice +EXPORT_SYMBOL net/6lowpan/6lowpan 0xfb05fae0 lowpan_unregister_netdev +EXPORT_SYMBOL net/802/p8022 0x3175706b register_8022_client +EXPORT_SYMBOL net/802/p8022 0x5a1eb1c1 unregister_8022_client +EXPORT_SYMBOL net/802/psnap 0x4234b2bc unregister_snap_client +EXPORT_SYMBOL net/802/psnap 0x64393c6b register_snap_client +EXPORT_SYMBOL net/9p/9pnet 0x03d650f5 p9_client_mknod_dotl +EXPORT_SYMBOL net/9p/9pnet 0x0e86fdd6 p9_client_fcreate +EXPORT_SYMBOL net/9p/9pnet 0x1001b630 p9_release_pages +EXPORT_SYMBOL net/9p/9pnet 0x114e82fb p9_client_symlink +EXPORT_SYMBOL net/9p/9pnet 0x1427d9f1 p9_client_attach +EXPORT_SYMBOL net/9p/9pnet 0x1430723c p9_req_put +EXPORT_SYMBOL net/9p/9pnet 0x20bd6526 p9_client_remove +EXPORT_SYMBOL net/9p/9pnet 0x2742ae16 p9_client_lock_dotl +EXPORT_SYMBOL net/9p/9pnet 0x2fe86346 p9_client_fsync +EXPORT_SYMBOL net/9p/9pnet 0x308b2ed9 p9_client_disconnect +EXPORT_SYMBOL net/9p/9pnet 0x39153115 p9_client_wstat +EXPORT_SYMBOL net/9p/9pnet 0x3d73a797 p9_errstr2errno +EXPORT_SYMBOL net/9p/9pnet 0x41ce9823 p9stat_read +EXPORT_SYMBOL net/9p/9pnet 0x41faf6ec p9_client_walk +EXPORT_SYMBOL net/9p/9pnet 0x422b4eee p9_client_read +EXPORT_SYMBOL net/9p/9pnet 0x4e1b8d5f p9_client_setattr +EXPORT_SYMBOL net/9p/9pnet 0x5f8c7940 p9_client_cb +EXPORT_SYMBOL net/9p/9pnet 0x64dc5a0c v9fs_get_trans_by_name +EXPORT_SYMBOL net/9p/9pnet 0x6c224bd8 p9_client_begin_disconnect +EXPORT_SYMBOL net/9p/9pnet 0x6f441070 v9fs_get_default_trans +EXPORT_SYMBOL net/9p/9pnet 0x70bca124 p9_client_create_dotl +EXPORT_SYMBOL net/9p/9pnet 0x814755b1 p9_client_getlock_dotl +EXPORT_SYMBOL net/9p/9pnet 0x8440bba3 p9_client_destroy +EXPORT_SYMBOL net/9p/9pnet 0x854c65e0 p9_client_link +EXPORT_SYMBOL net/9p/9pnet 0x87352e99 p9_client_create +EXPORT_SYMBOL net/9p/9pnet 0x87442ef1 p9_client_renameat +EXPORT_SYMBOL net/9p/9pnet 0x89f1e40e p9_client_read_once +EXPORT_SYMBOL net/9p/9pnet 0x8cfa05df p9_client_unlinkat +EXPORT_SYMBOL net/9p/9pnet 0x95bd8f96 p9dirent_read +EXPORT_SYMBOL net/9p/9pnet 0x984c5e73 p9_fcall_fini +EXPORT_SYMBOL net/9p/9pnet 0xa506f8e8 p9_client_mkdir_dotl +EXPORT_SYMBOL net/9p/9pnet 0xa8d593fc p9_client_open +EXPORT_SYMBOL net/9p/9pnet 0xb05bf875 p9_client_readlink +EXPORT_SYMBOL net/9p/9pnet 0xb79f25fd p9_parse_header +EXPORT_SYMBOL net/9p/9pnet 0xbe595ba7 v9fs_register_trans +EXPORT_SYMBOL net/9p/9pnet 0xc1999f0c p9_client_getattr_dotl +EXPORT_SYMBOL net/9p/9pnet 0xc397a613 p9_is_proto_dotl +EXPORT_SYMBOL net/9p/9pnet 0xc42082ba p9_client_readdir +EXPORT_SYMBOL net/9p/9pnet 0xc43fd923 p9_client_clunk +EXPORT_SYMBOL net/9p/9pnet 0xc4ad73eb p9_is_proto_dotu +EXPORT_SYMBOL net/9p/9pnet 0xcc6bb4fc p9_show_client_options +EXPORT_SYMBOL net/9p/9pnet 0xd384c683 p9stat_free +EXPORT_SYMBOL net/9p/9pnet 0xd61c8955 v9fs_unregister_trans +EXPORT_SYMBOL net/9p/9pnet 0xdf62f1b4 p9_client_rename +EXPORT_SYMBOL net/9p/9pnet 0xe58a3360 p9_error_init +EXPORT_SYMBOL net/9p/9pnet 0xe803c4ab p9_client_statfs +EXPORT_SYMBOL net/9p/9pnet 0xea137a8f p9_client_stat +EXPORT_SYMBOL net/9p/9pnet 0xf1acb777 p9_client_write +EXPORT_SYMBOL net/9p/9pnet 0xf8c0240d p9_tag_lookup +EXPORT_SYMBOL net/appletalk/appletalk 0x2a54a1ed atalk_find_dev_addr +EXPORT_SYMBOL net/appletalk/appletalk 0x6cf01535 atrtr_get_dev +EXPORT_SYMBOL net/appletalk/appletalk 0x9d73a6c5 aarp_send_ddp +EXPORT_SYMBOL net/appletalk/appletalk 0xd5b05e04 alloc_ltalkdev +EXPORT_SYMBOL net/atm/atm 0x248fc79f vcc_insert_socket +EXPORT_SYMBOL net/atm/atm 0x2cc2d52d vcc_hash +EXPORT_SYMBOL net/atm/atm 0x3506ad5a register_atm_ioctl +EXPORT_SYMBOL net/atm/atm 0x36e3b0eb deregister_atm_ioctl +EXPORT_SYMBOL net/atm/atm 0x4092d028 vcc_process_recv_queue +EXPORT_SYMBOL net/atm/atm 0x4443d399 atm_proc_root +EXPORT_SYMBOL net/atm/atm 0x44c6e633 vcc_sklist_lock +EXPORT_SYMBOL net/atm/atm 0x44d4fc4a atm_dev_signal_change +EXPORT_SYMBOL net/atm/atm 0x5691e6e7 atm_charge +EXPORT_SYMBOL net/atm/atm 0x7e696a1a atm_dev_register +EXPORT_SYMBOL net/atm/atm 0x86c7981f atm_alloc_charge +EXPORT_SYMBOL net/atm/atm 0x93789222 atm_dev_deregister +EXPORT_SYMBOL net/atm/atm 0x9feaf287 sonet_subtract_stats +EXPORT_SYMBOL net/atm/atm 0xaa024146 sonet_copy_stats +EXPORT_SYMBOL net/atm/atm 0xac28cfa8 atm_init_aal5 +EXPORT_SYMBOL net/atm/atm 0xacd19845 atm_dev_lookup +EXPORT_SYMBOL net/atm/atm 0xb3d442a3 atm_dev_release_vccs +EXPORT_SYMBOL net/atm/atm 0xe395b3aa vcc_release_async +EXPORT_SYMBOL net/atm/atm 0xf49bc67a atm_pcr_goal +EXPORT_SYMBOL net/ax25/ax25 0x14cecd59 ax25_display_timer +EXPORT_SYMBOL net/ax25/ax25 0x16531a08 ax25_listen_release +EXPORT_SYMBOL net/ax25/ax25 0x1e8a1a14 ax25_send_frame +EXPORT_SYMBOL net/ax25/ax25 0x242852b9 ax25_uid_policy +EXPORT_SYMBOL net/ax25/ax25 0x2914f2ab ax25_ip_xmit +EXPORT_SYMBOL net/ax25/ax25 0x3fedd56d ax25_find_cb +EXPORT_SYMBOL net/ax25/ax25 0x4502c65a asc2ax +EXPORT_SYMBOL net/ax25/ax25 0x4ab48bda ax25_linkfail_release +EXPORT_SYMBOL net/ax25/ax25 0x53dea1ff ax2asc +EXPORT_SYMBOL net/ax25/ax25 0x5b701261 ax25_listen_register +EXPORT_SYMBOL net/ax25/ax25 0x8ede9e26 ax25_protocol_release +EXPORT_SYMBOL net/ax25/ax25 0xba40640d ax25_header_ops +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/ax25/ax25 0xf19d81d7 ax25_linkfail_register +EXPORT_SYMBOL net/bluetooth/bluetooth 0x0113460a bt_sock_poll +EXPORT_SYMBOL net/bluetooth/bluetooth 0x0718b8b7 bt_info +EXPORT_SYMBOL net/bluetooth/bluetooth 0x0c65a730 hci_free_dev +EXPORT_SYMBOL net/bluetooth/bluetooth 0x0f721f51 bt_sock_recvmsg +EXPORT_SYMBOL net/bluetooth/bluetooth 0x1aee62fb hci_set_hw_info +EXPORT_SYMBOL net/bluetooth/bluetooth 0x1b015365 hci_mgmt_chan_register +EXPORT_SYMBOL net/bluetooth/bluetooth 0x214e4265 bt_warn +EXPORT_SYMBOL net/bluetooth/bluetooth 0x29c023ca bt_sock_stream_recvmsg +EXPORT_SYMBOL net/bluetooth/bluetooth 0x2d723a54 hci_conn_security +EXPORT_SYMBOL net/bluetooth/bluetooth 0x341d9e07 hci_reset_dev +EXPORT_SYMBOL net/bluetooth/bluetooth 0x3a1d4183 __hci_cmd_sync_ev +EXPORT_SYMBOL net/bluetooth/bluetooth 0x3c9b11a2 __hci_cmd_send +EXPORT_SYMBOL net/bluetooth/bluetooth 0x4f07e8f5 bt_accept_unlink +EXPORT_SYMBOL net/bluetooth/bluetooth 0x563da68c bt_sock_register +EXPORT_SYMBOL net/bluetooth/bluetooth 0x592bfba0 hci_cmd_sync +EXPORT_SYMBOL net/bluetooth/bluetooth 0x5fe8a177 hci_suspend_dev +EXPORT_SYMBOL net/bluetooth/bluetooth 0x6978a952 bt_procfs_cleanup +EXPORT_SYMBOL net/bluetooth/bluetooth 0x6f64b054 bt_sock_wait_ready +EXPORT_SYMBOL net/bluetooth/bluetooth 0x7131efcd bt_sock_reclassify_lock +EXPORT_SYMBOL net/bluetooth/bluetooth 0x758b38f3 l2cap_conn_put +EXPORT_SYMBOL net/bluetooth/bluetooth 0x79d40f1e l2cap_register_user +EXPORT_SYMBOL net/bluetooth/bluetooth 0x7aad008b bt_to_errno +EXPORT_SYMBOL net/bluetooth/bluetooth 0x7b5ce5c3 baswap +EXPORT_SYMBOL net/bluetooth/bluetooth 0x7b8c32f1 bt_err +EXPORT_SYMBOL net/bluetooth/bluetooth 0x7e492cee bt_accept_dequeue +EXPORT_SYMBOL net/bluetooth/bluetooth 0x836cc39b hci_get_route +EXPORT_SYMBOL net/bluetooth/bluetooth 0x871fb621 __hci_cmd_sync +EXPORT_SYMBOL net/bluetooth/bluetooth 0x884448dd hci_recv_frame +EXPORT_SYMBOL net/bluetooth/bluetooth 0x8b9fca8f hci_unregister_cb +EXPORT_SYMBOL net/bluetooth/bluetooth 0x8e7a1806 hci_unregister_dev +EXPORT_SYMBOL net/bluetooth/bluetooth 0x8e8b5dd2 bt_sock_link +EXPORT_SYMBOL net/bluetooth/bluetooth 0x8f8ae00f hci_conn_check_secure +EXPORT_SYMBOL net/bluetooth/bluetooth 0x8fea24bd bt_sock_unregister +EXPORT_SYMBOL net/bluetooth/bluetooth 0x90ec149f l2cap_is_socket +EXPORT_SYMBOL net/bluetooth/bluetooth 0x9509adb7 hci_alloc_dev +EXPORT_SYMBOL net/bluetooth/bluetooth 0xa58fc16b hci_register_cb +EXPORT_SYMBOL net/bluetooth/bluetooth 0xad9f63c6 bt_sock_wait_state +EXPORT_SYMBOL net/bluetooth/bluetooth 0xc2082e6b hci_recv_diag +EXPORT_SYMBOL net/bluetooth/bluetooth 0xcaf8e614 l2cap_unregister_user +EXPORT_SYMBOL net/bluetooth/bluetooth 0xcdbd419e hci_conn_switch_role +EXPORT_SYMBOL net/bluetooth/bluetooth 0xd5e6c9c5 bt_sock_unlink +EXPORT_SYMBOL net/bluetooth/bluetooth 0xd7613212 bt_err_ratelimited +EXPORT_SYMBOL net/bluetooth/bluetooth 0xd98eb199 l2cap_conn_get +EXPORT_SYMBOL net/bluetooth/bluetooth 0xddacccf6 bt_warn_ratelimited +EXPORT_SYMBOL net/bluetooth/bluetooth 0xded44c78 hci_set_fw_info +EXPORT_SYMBOL net/bluetooth/bluetooth 0xe2eacffe l2cap_chan_close +EXPORT_SYMBOL net/bluetooth/bluetooth 0xe583f107 bt_accept_enqueue +EXPORT_SYMBOL net/bluetooth/bluetooth 0xec2af41d hci_mgmt_chan_unregister +EXPORT_SYMBOL net/bluetooth/bluetooth 0xef319a19 hci_resume_dev +EXPORT_SYMBOL net/bluetooth/bluetooth 0xef67f1f4 bt_procfs_init +EXPORT_SYMBOL net/bluetooth/bluetooth 0xf43fd826 hci_register_dev +EXPORT_SYMBOL net/bluetooth/bluetooth 0xf8ea36dd bt_sock_ioctl +EXPORT_SYMBOL net/bridge/netfilter/ebtables 0x9173687c ebt_do_table +EXPORT_SYMBOL net/bridge/netfilter/ebtables 0xd31e8b91 ebt_unregister_table +EXPORT_SYMBOL net/bridge/netfilter/ebtables 0xf6133c23 ebt_register_table +EXPORT_SYMBOL net/caif/caif 0x1446b60a caif_client_register_refcnt +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 0x4561ab0c caif_connect_client +EXPORT_SYMBOL net/caif/caif 0x4a237e57 cfpkt_tonative +EXPORT_SYMBOL net/caif/caif 0x5b5611bf caif_disconnect_client +EXPORT_SYMBOL net/caif/caif 0x6b167450 cfcnfg_add_phy_layer +EXPORT_SYMBOL net/caif/caif 0x839ddb7b cfcnfg_set_phy_state +EXPORT_SYMBOL net/caif/caif 0x8e6411a2 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 0xeed19981 get_cfcnfg +EXPORT_SYMBOL net/can/can 0x1023fae8 can_proto_unregister +EXPORT_SYMBOL net/can/can 0x23168b79 can_rx_unregister +EXPORT_SYMBOL net/can/can 0x3dd7119f can_proto_register +EXPORT_SYMBOL net/can/can 0x8b3b1430 can_sock_destruct +EXPORT_SYMBOL net/can/can 0xba5f6688 can_send +EXPORT_SYMBOL net/can/can 0xfe6e936f can_rx_register +EXPORT_SYMBOL net/ceph/libceph 0x05c82798 ceph_client_gid +EXPORT_SYMBOL net/ceph/libceph 0x06283fdc ceph_msg_data_add_pagelist +EXPORT_SYMBOL net/ceph/libceph 0x073f3f26 ceph_con_open +EXPORT_SYMBOL net/ceph/libceph 0x097e0432 ceph_con_init +EXPORT_SYMBOL net/ceph/libceph 0x0b736a10 ceph_wait_for_latest_osdmap +EXPORT_SYMBOL net/ceph/libceph 0x10f89529 ceph_monc_get_version +EXPORT_SYMBOL net/ceph/libceph 0x165b1948 ceph_pagelist_free_reserve +EXPORT_SYMBOL net/ceph/libceph 0x190cbdb2 osd_req_op_extent_osd_data_bio +EXPORT_SYMBOL net/ceph/libceph 0x2087719e ceph_oid_copy +EXPORT_SYMBOL net/ceph/libceph 0x2101cbc9 ceph_oid_destroy +EXPORT_SYMBOL net/ceph/libceph 0x2494626d ceph_object_locator_to_pg +EXPORT_SYMBOL net/ceph/libceph 0x25bafe59 ceph_osdc_update_epoch_barrier +EXPORT_SYMBOL net/ceph/libceph 0x2a983d26 ceph_pagelist_release +EXPORT_SYMBOL net/ceph/libceph 0x2dda077c ceph_monc_stop +EXPORT_SYMBOL net/ceph/libceph 0x2e929093 ceph_monc_renew_subs +EXPORT_SYMBOL net/ceph/libceph 0x3501e330 ceph_osdc_watch +EXPORT_SYMBOL net/ceph/libceph 0x36897044 ceph_osdc_wait_request +EXPORT_SYMBOL net/ceph/libceph 0x38172836 ceph_auth_update_authorizer +EXPORT_SYMBOL net/ceph/libceph 0x38f2d94e ceph_file_to_extents +EXPORT_SYMBOL net/ceph/libceph 0x3ba10804 ceph_client_addr +EXPORT_SYMBOL net/ceph/libceph 0x3c8d7111 ceph_get_num_objects +EXPORT_SYMBOL net/ceph/libceph 0x3ca41f3c ceph_compare_options +EXPORT_SYMBOL net/ceph/libceph 0x417a9131 ceph_oloc_destroy +EXPORT_SYMBOL net/ceph/libceph 0x41a81f60 ceph_con_send +EXPORT_SYMBOL net/ceph/libceph 0x46555f2e ceph_pg_poolid_by_name +EXPORT_SYMBOL net/ceph/libceph 0x466b85b8 libceph_compatible +EXPORT_SYMBOL net/ceph/libceph 0x469d941a ceph_auth_verify_authorizer_reply +EXPORT_SYMBOL net/ceph/libceph 0x4818dcbe ceph_cls_lock_info +EXPORT_SYMBOL net/ceph/libceph 0x4adc0ff3 ceph_messenger_init +EXPORT_SYMBOL net/ceph/libceph 0x4c225376 osd_req_op_extent_osd_data_pages +EXPORT_SYMBOL net/ceph/libceph 0x4f69a7c2 osd_req_op_extent_osd_data_bvecs +EXPORT_SYMBOL net/ceph/libceph 0x50db66c6 ceph_monc_want_map +EXPORT_SYMBOL net/ceph/libceph 0x54d4b4f6 osd_req_op_init +EXPORT_SYMBOL net/ceph/libceph 0x54f7b7d9 ceph_copy_from_page_vector +EXPORT_SYMBOL net/ceph/libceph 0x57baf885 ceph_str_hash +EXPORT_SYMBOL net/ceph/libceph 0x58fdd266 osd_req_op_cls_request_data_pages +EXPORT_SYMBOL net/ceph/libceph 0x5aeeee62 ceph_oid_aprintf +EXPORT_SYMBOL net/ceph/libceph 0x5e0ec6a3 ceph_pg_pool_name_by_id +EXPORT_SYMBOL net/ceph/libceph 0x5e95d596 ceph_messenger_fini +EXPORT_SYMBOL net/ceph/libceph 0x623084f1 ceph_osdc_put_request +EXPORT_SYMBOL net/ceph/libceph 0x63758856 ceph_str_hash_name +EXPORT_SYMBOL net/ceph/libceph 0x65815bdb ceph_create_client +EXPORT_SYMBOL net/ceph/libceph 0x6a7a38a0 ceph_pr_addr +EXPORT_SYMBOL net/ceph/libceph 0x6c44cc62 ceph_osdc_get_request +EXPORT_SYMBOL net/ceph/libceph 0x6d8eacc2 ceph_parse_param +EXPORT_SYMBOL net/ceph/libceph 0x6e59f1cb ceph_msg_put +EXPORT_SYMBOL net/ceph/libceph 0x6e886c6e ceph_osdc_unwatch +EXPORT_SYMBOL net/ceph/libceph 0x70ada54b ceph_osdc_alloc_messages +EXPORT_SYMBOL net/ceph/libceph 0x7358e4c4 ceph_alloc_options +EXPORT_SYMBOL net/ceph/libceph 0x771c0a8f ceph_monc_get_version_async +EXPORT_SYMBOL net/ceph/libceph 0x78ffad35 ceph_msg_get +EXPORT_SYMBOL net/ceph/libceph 0x7b078075 ceph_osdc_sync +EXPORT_SYMBOL net/ceph/libceph 0x7b67ff98 ceph_monc_open_session +EXPORT_SYMBOL net/ceph/libceph 0x8264d3e7 ceph_con_close +EXPORT_SYMBOL net/ceph/libceph 0x86fca7e4 ceph_put_snap_context +EXPORT_SYMBOL net/ceph/libceph 0x888189ce __ceph_open_session +EXPORT_SYMBOL net/ceph/libceph 0x8d0f2239 ceph_reset_client_addr +EXPORT_SYMBOL net/ceph/libceph 0x8e9464f2 osd_req_op_extent_osd_data_pagelist +EXPORT_SYMBOL net/ceph/libceph 0x909ef78e osd_req_op_xattr_init +EXPORT_SYMBOL net/ceph/libceph 0x9143133a ceph_release_page_vector +EXPORT_SYMBOL net/ceph/libceph 0x933fec3d osd_req_op_extent_dup_last +EXPORT_SYMBOL net/ceph/libceph 0x93633779 ceph_msg_data_add_bvecs +EXPORT_SYMBOL net/ceph/libceph 0x936633cc ceph_print_client_options +EXPORT_SYMBOL net/ceph/libceph 0x94fa6581 ceph_osdc_notify +EXPORT_SYMBOL net/ceph/libceph 0x97f3ff3e ceph_msg_dump +EXPORT_SYMBOL net/ceph/libceph 0x9b1cb11b osd_req_op_cls_request_data_bvecs +EXPORT_SYMBOL net/ceph/libceph 0x9b2f3478 ceph_pg_pool_flags +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 0x9fbba67f ceph_buffer_new +EXPORT_SYMBOL net/ceph/libceph 0x9fefa3cb ceph_calc_file_object_mapping +EXPORT_SYMBOL net/ceph/libceph 0xa09971e6 ceph_copy_to_page_vector +EXPORT_SYMBOL net/ceph/libceph 0xa0a01cb6 ceph_monc_do_statfs +EXPORT_SYMBOL net/ceph/libceph 0xa20bcb76 ceph_msg_new2 +EXPORT_SYMBOL net/ceph/libceph 0xa2cdfe4d ceph_osdc_abort_requests +EXPORT_SYMBOL net/ceph/libceph 0xa366f217 ceph_monc_wait_osdmap +EXPORT_SYMBOL net/ceph/libceph 0xa4f87999 osd_req_op_extent_osd_data +EXPORT_SYMBOL net/ceph/libceph 0xa698f998 ceph_free_lockers +EXPORT_SYMBOL net/ceph/libceph 0xa77ccedf ceph_osdc_notify_ack +EXPORT_SYMBOL net/ceph/libceph 0xa8efc3c6 ceph_osdc_clear_abort_err +EXPORT_SYMBOL net/ceph/libceph 0xad703657 ceph_auth_destroy_authorizer +EXPORT_SYMBOL net/ceph/libceph 0xafb8a407 ceph_msgr_flush +EXPORT_SYMBOL net/ceph/libceph 0xb155a07a ceph_cls_lock +EXPORT_SYMBOL net/ceph/libceph 0xb286f18b ceph_auth_is_authenticated +EXPORT_SYMBOL net/ceph/libceph 0xb4b66412 osd_req_op_extent_osd_data_bvec_pos +EXPORT_SYMBOL net/ceph/libceph 0xb4f4d6bd osd_req_op_alloc_hint_init +EXPORT_SYMBOL net/ceph/libceph 0xb54676fa ceph_msg_type_name +EXPORT_SYMBOL net/ceph/libceph 0xb6bf656f ceph_auth_invalidate_authorizer +EXPORT_SYMBOL net/ceph/libceph 0xb72c162e ceph_buffer_release +EXPORT_SYMBOL net/ceph/libceph 0xb7643fdf ceph_msg_new +EXPORT_SYMBOL net/ceph/libceph 0xb889da3c ceph_copy_user_to_page_vector +EXPORT_SYMBOL net/ceph/libceph 0xb8990cdd ceph_auth_add_authorizer_challenge +EXPORT_SYMBOL net/ceph/libceph 0xb8a3e7fb ceph_msg_data_add_pages +EXPORT_SYMBOL net/ceph/libceph 0xb9e046f0 ceph_cls_set_cookie +EXPORT_SYMBOL net/ceph/libceph 0xbd2f79ae ceph_oloc_copy +EXPORT_SYMBOL net/ceph/libceph 0xbd8c1313 ceph_destroy_options +EXPORT_SYMBOL net/ceph/libceph 0xbe3879aa ceph_get_snap_context +EXPORT_SYMBOL net/ceph/libceph 0xc0b64bbd ceph_msg_data_add_bio +EXPORT_SYMBOL net/ceph/libceph 0xc2d75626 ceph_osdc_cancel_request +EXPORT_SYMBOL net/ceph/libceph 0xc330188c ceph_osdc_start_request +EXPORT_SYMBOL net/ceph/libceph 0xc366bfa1 ceph_pagelist_truncate +EXPORT_SYMBOL net/ceph/libceph 0xc4de86b2 ceph_put_page_vector +EXPORT_SYMBOL net/ceph/libceph 0xc95d2fab ceph_destroy_client +EXPORT_SYMBOL net/ceph/libceph 0xc996d267 osd_req_op_extent_update +EXPORT_SYMBOL net/ceph/libceph 0xca80437b ceph_extent_to_file +EXPORT_SYMBOL net/ceph/libceph 0xccc6d2c4 ceph_osdc_call +EXPORT_SYMBOL net/ceph/libceph 0xd07a823b ceph_monc_got_map +EXPORT_SYMBOL net/ceph/libceph 0xd1eecb75 ceph_open_session +EXPORT_SYMBOL net/ceph/libceph 0xd3009e41 ceph_cls_unlock +EXPORT_SYMBOL net/ceph/libceph 0xd368e265 osd_req_op_raw_data_in_pages +EXPORT_SYMBOL net/ceph/libceph 0xd42f14b8 ceph_osdc_list_watchers +EXPORT_SYMBOL net/ceph/libceph 0xd4eb7735 ceph_decode_entity_addr +EXPORT_SYMBOL net/ceph/libceph 0xd7417f33 ceph_parse_mon_ips +EXPORT_SYMBOL net/ceph/libceph 0xdc935bdb 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 0xe08a2d30 ceph_check_fsid +EXPORT_SYMBOL net/ceph/libceph 0xe0fc8293 ceph_zero_page_vector_range +EXPORT_SYMBOL net/ceph/libceph 0xe1843867 ceph_osdc_flush_notifies +EXPORT_SYMBOL net/ceph/libceph 0xe3a76c1c osd_req_op_cls_request_data_pagelist +EXPORT_SYMBOL net/ceph/libceph 0xe46d5e23 ceph_con_keepalive +EXPORT_SYMBOL net/ceph/libceph 0xe76e7226 ceph_pagelist_alloc +EXPORT_SYMBOL net/ceph/libceph 0xe7ff701f ceph_monc_init +EXPORT_SYMBOL net/ceph/libceph 0xea3ae4a0 ceph_osdc_new_request +EXPORT_SYMBOL net/ceph/libceph 0xeaa9e3be ceph_osdc_copy_from +EXPORT_SYMBOL net/ceph/libceph 0xed408fdd ceph_cls_assert_locked +EXPORT_SYMBOL net/ceph/libceph 0xee120c03 ceph_release_string +EXPORT_SYMBOL net/ceph/libceph 0xeef6cfa3 ceph_iterate_extents +EXPORT_SYMBOL net/ceph/libceph 0xef65f2f5 ceph_pg_to_acting_primary +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 0xf1d8777c ceph_monc_blacklist_add +EXPORT_SYMBOL net/ceph/libceph 0xf32fca37 ceph_osdc_alloc_request +EXPORT_SYMBOL net/ceph/libceph 0xf88469e6 ceph_auth_create_authorizer +EXPORT_SYMBOL net/ceph/libceph 0xf9382620 ceph_osdc_maybe_request_map +EXPORT_SYMBOL net/ceph/libceph 0xfa9b6df5 ceph_monc_validate_auth +EXPORT_SYMBOL net/ceph/libceph 0xfc436037 osd_req_op_cls_response_data_pages +EXPORT_SYMBOL net/ceph/libceph 0xfce7e21d osd_req_op_extent_init +EXPORT_SYMBOL net/ceph/libceph 0xffae2707 ceph_alloc_page_vector +EXPORT_SYMBOL net/ceph/libceph 0xffbb3bfb ceph_cls_break_lock +EXPORT_SYMBOL net/dccp/dccp_ipv4 0x4340e5b5 dccp_syn_ack_timeout +EXPORT_SYMBOL net/dccp/dccp_ipv4 0x97266d0a dccp_req_err +EXPORT_SYMBOL net/dsa/dsa_core 0x170c24eb dsa_port_vid_del +EXPORT_SYMBOL net/dsa/dsa_core 0x45890a5c dsa_port_vid_add +EXPORT_SYMBOL net/ieee802154/ieee802154 0x458b7f0c wpan_phy_new +EXPORT_SYMBOL net/ieee802154/ieee802154 0x73fc6ede wpan_phy_register +EXPORT_SYMBOL net/ieee802154/ieee802154 0x974ca3f6 wpan_phy_for_each +EXPORT_SYMBOL net/ieee802154/ieee802154 0xa53bc1ae wpan_phy_free +EXPORT_SYMBOL net/ieee802154/ieee802154 0xd7d363d7 wpan_phy_unregister +EXPORT_SYMBOL net/ieee802154/ieee802154 0xfb06e665 wpan_phy_find +EXPORT_SYMBOL net/ipv4/fou 0x1757d1a4 fou_encap_hlen +EXPORT_SYMBOL net/ipv4/fou 0xa41663d6 __gue_build_header +EXPORT_SYMBOL net/ipv4/fou 0xb08dabb9 __fou_build_header +EXPORT_SYMBOL net/ipv4/fou 0xf13914b3 gue_encap_hlen +EXPORT_SYMBOL net/ipv4/gre 0x26eb8251 gre_parse_header +EXPORT_SYMBOL net/ipv4/ip_tunnel 0x056cbf6b ip_tunnel_get_iflink +EXPORT_SYMBOL net/ipv4/ip_tunnel 0x3052aa96 ip_tunnel_encap_del_ops +EXPORT_SYMBOL net/ipv4/ip_tunnel 0x8eb9da43 ip_tunnel_get_link_net +EXPORT_SYMBOL net/ipv4/ip_tunnel 0xa964ac24 ip_tunnel_encap_add_ops +EXPORT_SYMBOL net/ipv4/netfilter/arp_tables 0x6f5ac603 arpt_unregister_table +EXPORT_SYMBOL net/ipv4/netfilter/arp_tables 0x8629cca1 arpt_register_table +EXPORT_SYMBOL net/ipv4/netfilter/arp_tables 0xf9840eca arpt_do_table +EXPORT_SYMBOL net/ipv4/netfilter/ip_tables 0x56294825 ipt_unregister_table +EXPORT_SYMBOL net/ipv4/netfilter/ip_tables 0x5b334426 ipt_unregister_table_pre_exit +EXPORT_SYMBOL net/ipv4/netfilter/ip_tables 0x625b6e02 ipt_unregister_table_exit +EXPORT_SYMBOL net/ipv4/netfilter/ip_tables 0xb0916ad3 ipt_register_table +EXPORT_SYMBOL net/ipv4/netfilter/ip_tables 0xebec6208 ipt_do_table +EXPORT_SYMBOL net/ipv4/tunnel4 0x5f3c092a xfrm4_tunnel_register +EXPORT_SYMBOL net/ipv4/tunnel4 0x816827e0 xfrm4_tunnel_deregister +EXPORT_SYMBOL net/ipv4/udp_tunnel 0x473b964e udp_sock_create4 +EXPORT_SYMBOL net/ipv6/ip6_tunnel 0x0a5b6331 ip6_tnl_parse_tlv_enc_lim +EXPORT_SYMBOL net/ipv6/ip6_tunnel 0x119ff369 ip6_tnl_get_cap +EXPORT_SYMBOL net/ipv6/ip6_tunnel 0x173dd426 ip6_tnl_encap_add_ops +EXPORT_SYMBOL net/ipv6/ip6_tunnel 0x2017d34f ip6_tnl_rcv +EXPORT_SYMBOL net/ipv6/ip6_tunnel 0x291489da ip6_tnl_encap_del_ops +EXPORT_SYMBOL net/ipv6/ip6_tunnel 0x9e0a3c04 ip6_tnl_get_iflink +EXPORT_SYMBOL net/ipv6/ip6_tunnel 0xd05d9f73 ip6_tnl_xmit +EXPORT_SYMBOL net/ipv6/ip6_tunnel 0xf30617d6 ip6_tnl_change_mtu +EXPORT_SYMBOL net/ipv6/ip6_tunnel 0xf3f65631 ip6_tnl_get_link_net +EXPORT_SYMBOL net/ipv6/netfilter/ip6_tables 0x366ec9a0 ip6t_unregister_table_pre_exit +EXPORT_SYMBOL net/ipv6/netfilter/ip6_tables 0x8d5c3b1a ip6t_register_table +EXPORT_SYMBOL net/ipv6/netfilter/ip6_tables 0x94a359c1 ip6t_unregister_table_exit +EXPORT_SYMBOL net/ipv6/netfilter/ip6_tables 0xb4ffea33 ip6t_unregister_table +EXPORT_SYMBOL net/ipv6/netfilter/ip6_tables 0xf0280669 ip6t_do_table +EXPORT_SYMBOL net/ipv6/tunnel6 0x17e63e6b xfrm6_tunnel_register +EXPORT_SYMBOL net/ipv6/tunnel6 0x49b527e0 xfrm6_tunnel_deregister +EXPORT_SYMBOL net/ipv6/xfrm6_tunnel 0x621c4a48 xfrm6_tunnel_alloc_spi +EXPORT_SYMBOL net/ipv6/xfrm6_tunnel 0x7f8e8b91 xfrm6_tunnel_spi_lookup +EXPORT_SYMBOL net/l2tp/l2tp_core 0x869f476e l2tp_tunnel_free +EXPORT_SYMBOL net/l2tp/l2tp_core 0xa81b63b6 l2tp_recv_common +EXPORT_SYMBOL net/l2tp/l2tp_ip 0x9e405746 l2tp_ioctl +EXPORT_SYMBOL net/lapb/lapb 0x3401b677 lapb_unregister +EXPORT_SYMBOL net/lapb/lapb 0x426ff26b lapb_connect_request +EXPORT_SYMBOL net/lapb/lapb 0x4e8e0710 lapb_data_received +EXPORT_SYMBOL net/lapb/lapb 0x9a1c55b8 lapb_data_request +EXPORT_SYMBOL net/lapb/lapb 0xafce3447 lapb_disconnect_request +EXPORT_SYMBOL net/lapb/lapb 0xb7155fd6 lapb_getparms +EXPORT_SYMBOL net/lapb/lapb 0xc3c7a73a lapb_register +EXPORT_SYMBOL net/lapb/lapb 0xdf566531 lapb_setparms +EXPORT_SYMBOL net/llc/llc 0x197751b1 llc_mac_hdr_init +EXPORT_SYMBOL net/llc/llc 0x38b92846 llc_remove_pack +EXPORT_SYMBOL net/llc/llc 0x52d7b2fd llc_sap_list +EXPORT_SYMBOL net/llc/llc 0x5d4256b3 llc_sap_close +EXPORT_SYMBOL net/llc/llc 0x758e7e9d llc_set_station_handler +EXPORT_SYMBOL net/llc/llc 0x759f1602 llc_add_pack +EXPORT_SYMBOL net/llc/llc 0x7b736878 llc_sap_open +EXPORT_SYMBOL net/llc/llc 0xaee5f6b3 llc_sap_find +EXPORT_SYMBOL net/llc/llc 0xe6446370 llc_build_and_send_ui_pkt +EXPORT_SYMBOL net/mac80211/mac80211 0x04ac52b5 ieee80211_rate_control_unregister +EXPORT_SYMBOL net/mac80211/mac80211 0x063f5308 ieee80211_get_tkip_p1k_iv +EXPORT_SYMBOL net/mac80211/mac80211 0x07a98435 ieee80211_csa_update_counter +EXPORT_SYMBOL net/mac80211/mac80211 0x0b4e27fa ieee80211_beacon_loss +EXPORT_SYMBOL net/mac80211/mac80211 0x0ca6379c ieee80211_disable_rssi_reports +EXPORT_SYMBOL net/mac80211/mac80211 0x0e64d717 ieee80211_rx_irqsafe +EXPORT_SYMBOL net/mac80211/mac80211 0x0fe37fc4 ieee80211_rts_duration +EXPORT_SYMBOL net/mac80211/mac80211 0x110860df ieee80211_beacon_get_tim +EXPORT_SYMBOL net/mac80211/mac80211 0x1349a4f6 ieee80211_sta_uapsd_trigger +EXPORT_SYMBOL net/mac80211/mac80211 0x1750c2fd ieee80211_restart_hw +EXPORT_SYMBOL net/mac80211/mac80211 0x17e166dd ieee80211_manage_rx_ba_offl +EXPORT_SYMBOL net/mac80211/mac80211 0x183dcd3b ieee80211_get_key_rx_seq +EXPORT_SYMBOL net/mac80211/mac80211 0x189af85d ieee80211_tx_rate_update +EXPORT_SYMBOL net/mac80211/mac80211 0x19f37f0d ieee80211_update_p2p_noa +EXPORT_SYMBOL net/mac80211/mac80211 0x1a66fc17 ieee80211_get_tkip_rx_p1k +EXPORT_SYMBOL net/mac80211/mac80211 0x1c8f5e0b ieee80211_alloc_hw_nm +EXPORT_SYMBOL net/mac80211/mac80211 0x1f8b262d __ieee80211_get_rx_led_name +EXPORT_SYMBOL net/mac80211/mac80211 0x1ffaa01a ieee80211_sched_scan_results +EXPORT_SYMBOL net/mac80211/mac80211 0x250de4d1 ieee80211_rx_napi +EXPORT_SYMBOL net/mac80211/mac80211 0x273fdcdf ieee80211_iter_keys_rcu +EXPORT_SYMBOL net/mac80211/mac80211 0x297b2cce rate_control_set_rates +EXPORT_SYMBOL net/mac80211/mac80211 0x29f60286 ieee80211_cqm_rssi_notify +EXPORT_SYMBOL net/mac80211/mac80211 0x31bf012d ieee80211_radar_detected +EXPORT_SYMBOL net/mac80211/mac80211 0x3438dbbd ieee80211_sta_ps_transition +EXPORT_SYMBOL net/mac80211/mac80211 0x3bd47257 ieee80211_ap_probereq_get +EXPORT_SYMBOL net/mac80211/mac80211 0x3c659a9d ieee80211_rts_get +EXPORT_SYMBOL net/mac80211/mac80211 0x3e42ea46 ieee80211_connection_loss +EXPORT_SYMBOL net/mac80211/mac80211 0x3ef60487 ieee80211_stop_tx_ba_session +EXPORT_SYMBOL net/mac80211/mac80211 0x439f3525 __ieee80211_get_radio_led_name +EXPORT_SYMBOL net/mac80211/mac80211 0x49906881 ieee80211_beacon_get_template +EXPORT_SYMBOL net/mac80211/mac80211 0x4a4ea526 ieee80211_rx_ba_timer_expired +EXPORT_SYMBOL net/mac80211/mac80211 0x4cf52c5c ieee80211_start_tx_ba_session +EXPORT_SYMBOL net/mac80211/mac80211 0x4d0d6bec ieee80211_cqm_beacon_loss_notify +EXPORT_SYMBOL net/mac80211/mac80211 0x4e1329a6 ieee80211_chswitch_done +EXPORT_SYMBOL net/mac80211/mac80211 0x4f363cf4 ieee80211_sta_block_awake +EXPORT_SYMBOL net/mac80211/mac80211 0x58524d9d __ieee80211_get_assoc_led_name +EXPORT_SYMBOL net/mac80211/mac80211 0x5df39428 ieee80211_get_tkip_p2k +EXPORT_SYMBOL net/mac80211/mac80211 0x69268816 ieee80211_txq_get_depth +EXPORT_SYMBOL net/mac80211/mac80211 0x69775c9b ieee80211_iter_keys +EXPORT_SYMBOL net/mac80211/mac80211 0x6993ddb6 ieee80211_tx_status_irqsafe +EXPORT_SYMBOL net/mac80211/mac80211 0x6c6e6436 ieee80211_tdls_oper_request +EXPORT_SYMBOL net/mac80211/mac80211 0x7037b0f4 ieee80211_nullfunc_get +EXPORT_SYMBOL net/mac80211/mac80211 0x716c6781 ieee80211_probereq_get +EXPORT_SYMBOL net/mac80211/mac80211 0x71b81b11 ieee80211_enable_rssi_reports +EXPORT_SYMBOL net/mac80211/mac80211 0x77230c1c ieee80211_stop_rx_ba_session +EXPORT_SYMBOL net/mac80211/mac80211 0x77a4ba03 ieee80211_sta_register_airtime +EXPORT_SYMBOL net/mac80211/mac80211 0x7a6f1c86 ieee80211_free_hw +EXPORT_SYMBOL net/mac80211/mac80211 0x7b365ab6 ieee80211_pspoll_get +EXPORT_SYMBOL net/mac80211/mac80211 0x822b2e8d ieee80211_rate_control_register +EXPORT_SYMBOL net/mac80211/mac80211 0x850c0288 ieee80211_report_low_ack +EXPORT_SYMBOL net/mac80211/mac80211 0x86771f66 ieee80211_sta_pspoll +EXPORT_SYMBOL net/mac80211/mac80211 0x8678620f ieee80211_reserve_tid +EXPORT_SYMBOL net/mac80211/mac80211 0x86ccef51 ieee80211_mark_rx_ba_filtered_frames +EXPORT_SYMBOL net/mac80211/mac80211 0x87ff2ddd ieee80211_get_buffered_bc +EXPORT_SYMBOL net/mac80211/mac80211 0x8dd3f12e ieee80211_unregister_hw +EXPORT_SYMBOL net/mac80211/mac80211 0x918f0ded ieee80211_csa_is_complete +EXPORT_SYMBOL net/mac80211/mac80211 0x922fbb67 ieee80211_tx_status +EXPORT_SYMBOL net/mac80211/mac80211 0x95e9c583 ieee80211_csa_set_counter +EXPORT_SYMBOL net/mac80211/mac80211 0x982dfc98 ieee80211_proberesp_get +EXPORT_SYMBOL net/mac80211/mac80211 0x991a0ca0 ieee80211_parse_p2p_noa +EXPORT_SYMBOL net/mac80211/mac80211 0x9943443f ieee80211_start_tx_ba_cb_irqsafe +EXPORT_SYMBOL net/mac80211/mac80211 0x996a526d ieee80211_tx_status_8023 +EXPORT_SYMBOL net/mac80211/mac80211 0x9c7001ae ieee80211_unreserve_tid +EXPORT_SYMBOL net/mac80211/mac80211 0x9e7da885 ieee80211_scan_completed +EXPORT_SYMBOL net/mac80211/mac80211 0xa2dfff1e __ieee80211_create_tpt_led_trigger +EXPORT_SYMBOL net/mac80211/mac80211 0xa3f033f0 ieee80211_find_sta +EXPORT_SYMBOL net/mac80211/mac80211 0xa851266a ieee80211_queue_work +EXPORT_SYMBOL net/mac80211/mac80211 0xaa508ce9 ieee80211_stop_tx_ba_cb_irqsafe +EXPORT_SYMBOL net/mac80211/mac80211 0xb01ea6e2 ieee80211_txq_airtime_check +EXPORT_SYMBOL net/mac80211/mac80211 0xb078901d __ieee80211_get_tx_led_name +EXPORT_SYMBOL net/mac80211/mac80211 0xb28d5bf7 ieee80211_txq_schedule_start +EXPORT_SYMBOL net/mac80211/mac80211 0xb3071e24 wiphy_to_ieee80211_hw +EXPORT_SYMBOL net/mac80211/mac80211 0xbe119628 ieee80211_stop_queue +EXPORT_SYMBOL net/mac80211/mac80211 0xc119012e ieee80211_sta_set_buffered +EXPORT_SYMBOL net/mac80211/mac80211 0xc4b39bbe ieee80211_csa_finish +EXPORT_SYMBOL net/mac80211/mac80211 0xc600590d ieee80211_report_wowlan_wakeup +EXPORT_SYMBOL net/mac80211/mac80211 0xc80ab9f7 ieee80211_ctstoself_duration +EXPORT_SYMBOL net/mac80211/mac80211 0xc9c2f585 ieee80211_free_txskb +EXPORT_SYMBOL net/mac80211/mac80211 0xcd318b6e ieee80211_tx_prepare_skb +EXPORT_SYMBOL net/mac80211/mac80211 0xd0beb14c ieee80211_stop_queues +EXPORT_SYMBOL net/mac80211/mac80211 0xd1208ae6 ieee80211_set_hw_80211_encap +EXPORT_SYMBOL net/mac80211/mac80211 0xd1a81be5 ieee80211_nan_func_terminated +EXPORT_SYMBOL net/mac80211/mac80211 0xd31ef647 ieee80211_txq_may_transmit +EXPORT_SYMBOL net/mac80211/mac80211 0xd4d8e83f ieee80211_tx_status_ext +EXPORT_SYMBOL net/mac80211/mac80211 0xd7e13eee ieee80211_send_eosp_nullfunc +EXPORT_SYMBOL net/mac80211/mac80211 0xd9618310 ieee80211_wake_queue +EXPORT_SYMBOL net/mac80211/mac80211 0xdb95483b ieee80211_wake_queues +EXPORT_SYMBOL net/mac80211/mac80211 0xdf482b30 ieee80211_sched_scan_stopped +EXPORT_SYMBOL net/mac80211/mac80211 0xdfbfb57c ieee80211_generic_frame_duration +EXPORT_SYMBOL net/mac80211/mac80211 0xe37f4dac ieee80211_tx_dequeue +EXPORT_SYMBOL net/mac80211/mac80211 0xe47da939 ieee80211_queue_delayed_work +EXPORT_SYMBOL net/mac80211/mac80211 0xe504b8c9 ieee80211_next_txq +EXPORT_SYMBOL net/mac80211/mac80211 0xe57f2158 ieee80211_queue_stopped +EXPORT_SYMBOL net/mac80211/mac80211 0xec953b60 ieee80211_send_bar +EXPORT_SYMBOL net/mac80211/mac80211 0xf6721d6a ieee80211_register_hw +EXPORT_SYMBOL net/mac80211/mac80211 0xfbba2e3c ieee80211_get_tx_rates +EXPORT_SYMBOL net/mac80211/mac80211 0xfd6a3c91 __ieee80211_schedule_txq +EXPORT_SYMBOL net/mac80211/mac80211 0xfe0f5289 ieee80211_sta_eosp +EXPORT_SYMBOL net/mac80211/mac80211 0xfe4cca45 ieee80211_ctstoself_get +EXPORT_SYMBOL net/mac80211/mac80211 0xfe5d1f88 ieee80211_nan_func_match +EXPORT_SYMBOL net/mac802154/mac802154 0x297917d8 ieee802154_free_hw +EXPORT_SYMBOL net/mac802154/mac802154 0x38d122d8 ieee802154_unregister_hw +EXPORT_SYMBOL net/mac802154/mac802154 0x5443b99c ieee802154_register_hw +EXPORT_SYMBOL net/mac802154/mac802154 0x592755e2 ieee802154_alloc_hw +EXPORT_SYMBOL net/mac802154/mac802154 0x65764300 ieee802154_wake_queue +EXPORT_SYMBOL net/mac802154/mac802154 0x8bb95d88 ieee802154_stop_queue +EXPORT_SYMBOL net/mac802154/mac802154 0xce4b6905 ieee802154_xmit_complete +EXPORT_SYMBOL net/mac802154/mac802154 0xe9ff6c2b ieee802154_rx_irqsafe +EXPORT_SYMBOL net/netfilter/ipvs/ip_vs 0x1010ce5e ip_vs_new_conn_out +EXPORT_SYMBOL net/netfilter/ipvs/ip_vs 0x1743084f ip_vs_proto_data_get +EXPORT_SYMBOL net/netfilter/ipvs/ip_vs 0x1fa5cef7 register_ip_vs_scheduler +EXPORT_SYMBOL net/netfilter/ipvs/ip_vs 0x232c4b92 ip_vs_conn_out_get +EXPORT_SYMBOL net/netfilter/ipvs/ip_vs 0x3c655482 ip_vs_conn_in_get +EXPORT_SYMBOL net/netfilter/ipvs/ip_vs 0x5b65465f ip_vs_scheduler_err +EXPORT_SYMBOL net/netfilter/ipvs/ip_vs 0x5bcbcd00 ip_vs_conn_put +EXPORT_SYMBOL net/netfilter/ipvs/ip_vs 0x69959e53 register_ip_vs_app_inc +EXPORT_SYMBOL net/netfilter/ipvs/ip_vs 0x7b48719a unregister_ip_vs_scheduler +EXPORT_SYMBOL net/netfilter/ipvs/ip_vs 0x7fd751ed ip_vs_nfct_expect_related +EXPORT_SYMBOL net/netfilter/ipvs/ip_vs 0x8b32caa5 ip_vs_tcp_conn_listen +EXPORT_SYMBOL net/netfilter/ipvs/ip_vs 0x972a39cc ip_vs_proto_get +EXPORT_SYMBOL net/netfilter/ipvs/ip_vs 0xca0160fd register_ip_vs_app +EXPORT_SYMBOL net/netfilter/ipvs/ip_vs 0xd831a1a2 ip_vs_proto_name +EXPORT_SYMBOL net/netfilter/ipvs/ip_vs 0xe11ea212 ip_vs_conn_new +EXPORT_SYMBOL net/netfilter/ipvs/ip_vs 0xf81ecd22 unregister_ip_vs_app +EXPORT_SYMBOL net/netfilter/nf_conntrack 0x5afccbbc nf_ct_ext_add +EXPORT_SYMBOL net/netfilter/nf_conntrack_pptp 0xf2a36612 pptp_msg_name +EXPORT_SYMBOL net/netfilter/nf_nat 0x2ed14f69 nf_nat_setup_info +EXPORT_SYMBOL net/netfilter/nf_nat 0x44561a01 nf_nat_follow_master +EXPORT_SYMBOL net/netfilter/nf_nat 0x70821ce6 __nf_nat_mangle_tcp_packet +EXPORT_SYMBOL net/netfilter/nf_nat 0x7c0c25a3 nf_xfrm_me_harder +EXPORT_SYMBOL net/netfilter/nf_nat 0xe558cfdb nf_nat_mangle_udp_packet +EXPORT_SYMBOL net/netfilter/nft_fib 0xe8203072 nft_fib_policy +EXPORT_SYMBOL net/netfilter/x_tables 0x0448090e xt_unregister_target +EXPORT_SYMBOL net/netfilter/x_tables 0x0d7f5fcd xt_alloc_entry_offsets +EXPORT_SYMBOL net/netfilter/x_tables 0x230c72bb xt_unregister_targets +EXPORT_SYMBOL net/netfilter/x_tables 0x3bf9d084 xt_check_table_hooks +EXPORT_SYMBOL net/netfilter/x_tables 0x477f9766 xt_unregister_match +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 0x6668c333 xt_unregister_matches +EXPORT_SYMBOL net/netfilter/x_tables 0x681f4d4a xt_register_targets +EXPORT_SYMBOL net/netfilter/x_tables 0x71837516 xt_register_matches +EXPORT_SYMBOL net/netfilter/x_tables 0x8d668d57 xt_table_get_private_protected +EXPORT_SYMBOL net/netfilter/x_tables 0x977fd4bf xt_alloc_table_info +EXPORT_SYMBOL net/netfilter/x_tables 0xa25fc115 xt_compat_check_entry_offsets +EXPORT_SYMBOL net/netfilter/x_tables 0xacd1b420 xt_register_target +EXPORT_SYMBOL net/netfilter/x_tables 0xcb3e91cc xt_counters_alloc +EXPORT_SYMBOL net/netfilter/x_tables 0xd22ef94b xt_find_match +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 0xf11f4cfe xt_register_match +EXPORT_SYMBOL net/netfilter/x_tables 0xfef779fa xt_find_jump_offset +EXPORT_SYMBOL net/nfc/hci/hci 0x02200731 nfc_hci_reset_pipes_per_host +EXPORT_SYMBOL net/nfc/hci/hci 0x0933724f nfc_hci_reset_pipes +EXPORT_SYMBOL net/nfc/hci/hci 0x1e7d7f92 nfc_hci_free_device +EXPORT_SYMBOL net/nfc/hci/hci 0x1f42d782 nfc_hci_unregister_device +EXPORT_SYMBOL net/nfc/hci/hci 0x2993f31c nfc_hci_driver_failure +EXPORT_SYMBOL net/nfc/hci/hci 0x29f709e3 nfc_hci_get_clientdata +EXPORT_SYMBOL net/nfc/hci/hci 0x32417d64 nfc_hci_allocate_device +EXPORT_SYMBOL net/nfc/hci/hci 0x48bb48c1 nfc_hci_set_param +EXPORT_SYMBOL net/nfc/hci/hci 0x492b06d5 nfc_llc_start +EXPORT_SYMBOL net/nfc/hci/hci 0x524e8ddd nfc_hci_recv_frame +EXPORT_SYMBOL net/nfc/hci/hci 0x5952d916 nfc_hci_get_param +EXPORT_SYMBOL net/nfc/hci/hci 0x74fe3670 nfc_hci_result_to_errno +EXPORT_SYMBOL net/nfc/hci/hci 0xa68a5c7a nfc_hci_send_event +EXPORT_SYMBOL net/nfc/hci/hci 0xafe07a46 nfc_llc_stop +EXPORT_SYMBOL net/nfc/hci/hci 0xbc26368c nfc_hci_disconnect_gate +EXPORT_SYMBOL net/nfc/hci/hci 0xbcc904c1 nfc_hci_set_clientdata +EXPORT_SYMBOL net/nfc/hci/hci 0xc2f355a2 nfc_hci_disconnect_all_gates +EXPORT_SYMBOL net/nfc/hci/hci 0xdd231c55 nfc_hci_sak_to_protocol +EXPORT_SYMBOL net/nfc/hci/hci 0xdf2b0908 nfc_hci_send_cmd_async +EXPORT_SYMBOL net/nfc/hci/hci 0xe66cf4f7 nfc_hci_register_device +EXPORT_SYMBOL net/nfc/hci/hci 0xe857c1ab nfc_hci_target_discovered +EXPORT_SYMBOL net/nfc/hci/hci 0xea560216 nfc_hci_connect_gate +EXPORT_SYMBOL net/nfc/hci/hci 0xf9fe060f nfc_hci_send_cmd +EXPORT_SYMBOL net/nfc/nci/nci 0x06225556 nci_send_data +EXPORT_SYMBOL net/nfc/nci/nci 0x085e90de nci_hci_send_event +EXPORT_SYMBOL net/nfc/nci/nci 0x1b3140fe nci_conn_max_data_pkt_payload_size +EXPORT_SYMBOL net/nfc/nci/nci 0x30a1f602 nci_core_conn_close +EXPORT_SYMBOL net/nfc/nci/nci 0x31110b82 nci_free_device +EXPORT_SYMBOL net/nfc/nci/nci 0x3b166a40 nci_set_config +EXPORT_SYMBOL net/nfc/nci/nci 0x430d4823 nci_hci_clear_all_pipes +EXPORT_SYMBOL net/nfc/nci/nci 0x4f714c57 nci_hci_send_cmd +EXPORT_SYMBOL net/nfc/nci/nci 0x5c0501ee nci_get_conn_info_by_dest_type_params +EXPORT_SYMBOL net/nfc/nci/nci 0x5cc78241 nci_nfcee_mode_set +EXPORT_SYMBOL net/nfc/nci/nci 0x5dcbd530 nci_core_conn_create +EXPORT_SYMBOL net/nfc/nci/nci 0x6a705454 nci_hci_set_param +EXPORT_SYMBOL net/nfc/nci/nci 0x703736a9 nci_hci_connect_gate +EXPORT_SYMBOL net/nfc/nci/nci 0x84bc4d59 nci_req_complete +EXPORT_SYMBOL net/nfc/nci/nci 0x8a87533e nci_core_init +EXPORT_SYMBOL net/nfc/nci/nci 0x93b92e8d nci_send_frame +EXPORT_SYMBOL net/nfc/nci/nci 0x94f371ef nci_nfcc_loopback +EXPORT_SYMBOL net/nfc/nci/nci 0x9d49a588 nci_register_device +EXPORT_SYMBOL net/nfc/nci/nci 0xa3ac2340 nci_prop_cmd +EXPORT_SYMBOL net/nfc/nci/nci 0xb609e146 nci_recv_frame +EXPORT_SYMBOL net/nfc/nci/nci 0xba490602 nci_to_errno +EXPORT_SYMBOL net/nfc/nci/nci 0xc0a864c7 nci_hci_open_pipe +EXPORT_SYMBOL net/nfc/nci/nci 0xcda76c6d nci_hci_get_param +EXPORT_SYMBOL net/nfc/nci/nci 0xd271cb31 nci_hci_dev_session_init +EXPORT_SYMBOL net/nfc/nci/nci 0xd8a4873a nci_core_reset +EXPORT_SYMBOL net/nfc/nci/nci 0xdd6bba8e nci_allocate_device +EXPORT_SYMBOL net/nfc/nci/nci 0xdf908205 nci_nfcee_discover +EXPORT_SYMBOL net/nfc/nci/nci 0xdfa8a3b9 nci_send_cmd +EXPORT_SYMBOL net/nfc/nci/nci 0xe4c0a80d nci_unregister_device +EXPORT_SYMBOL net/nfc/nci/nci 0xf4cab072 nci_core_cmd +EXPORT_SYMBOL net/nfc/nfc 0x163609c7 nfc_allocate_device +EXPORT_SYMBOL net/nfc/nfc 0x194c4e78 nfc_find_se +EXPORT_SYMBOL net/nfc/nfc 0x1c79235a nfc_fw_download_done +EXPORT_SYMBOL net/nfc/nfc 0x255dadd6 nfc_targets_found +EXPORT_SYMBOL net/nfc/nfc 0x293050af nfc_add_se +EXPORT_SYMBOL net/nfc/nfc 0x2cd4dcd8 nfc_driver_failure +EXPORT_SYMBOL net/nfc/nfc 0x33f5238d nfc_dep_link_is_up +EXPORT_SYMBOL net/nfc/nfc 0x4ecbce32 nfc_alloc_recv_skb +EXPORT_SYMBOL net/nfc/nfc 0x56c48018 nfc_tm_deactivated +EXPORT_SYMBOL net/nfc/nfc 0x5a4be57f nfc_tm_activated +EXPORT_SYMBOL net/nfc/nfc 0x631633d4 nfc_unregister_device +EXPORT_SYMBOL net/nfc/nfc 0x64466fe6 nfc_class +EXPORT_SYMBOL net/nfc/nfc 0x647606b1 nfc_se_connectivity +EXPORT_SYMBOL net/nfc/nfc 0x73ac136a nfc_remove_se +EXPORT_SYMBOL net/nfc/nfc 0x85f09450 nfc_vendor_cmd_reply +EXPORT_SYMBOL net/nfc/nfc 0x8bee3347 nfc_send_to_raw_sock +EXPORT_SYMBOL net/nfc/nfc 0xa3a7e0ab nfc_proto_register +EXPORT_SYMBOL net/nfc/nfc 0xaf039ecb nfc_set_remote_general_bytes +EXPORT_SYMBOL net/nfc/nfc 0xcbd5275a __nfc_alloc_vendor_cmd_reply_skb +EXPORT_SYMBOL net/nfc/nfc 0xcdfe6bd6 nfc_se_transaction +EXPORT_SYMBOL net/nfc/nfc 0xd8111dc3 nfc_register_device +EXPORT_SYMBOL net/nfc/nfc 0xd87a638f nfc_get_local_general_bytes +EXPORT_SYMBOL net/nfc/nfc 0xda2a0540 nfc_proto_unregister +EXPORT_SYMBOL net/nfc/nfc 0xe2b0e590 nfc_target_lost +EXPORT_SYMBOL net/nfc/nfc 0xebc2a308 nfc_tm_data_received +EXPORT_SYMBOL net/nfc/nfc_digital 0x18a159f2 nfc_digital_register_device +EXPORT_SYMBOL net/nfc/nfc_digital 0xde89167c nfc_digital_free_device +EXPORT_SYMBOL net/nfc/nfc_digital 0xeeda97d8 nfc_digital_unregister_device +EXPORT_SYMBOL net/nfc/nfc_digital 0xfe7073a1 nfc_digital_allocate_device +EXPORT_SYMBOL net/phonet/phonet 0x0bca2685 pn_skb_send +EXPORT_SYMBOL net/phonet/phonet 0x509cad05 phonet_proto_unregister +EXPORT_SYMBOL net/phonet/phonet 0x566dea41 phonet_proto_register +EXPORT_SYMBOL net/phonet/phonet 0x6c96987d pn_sock_get_port +EXPORT_SYMBOL net/phonet/phonet 0x9edeb679 phonet_header_ops +EXPORT_SYMBOL net/phonet/phonet 0xe1d73561 pn_sock_hash +EXPORT_SYMBOL net/phonet/phonet 0xe3786608 pn_sock_unhash +EXPORT_SYMBOL net/phonet/phonet 0xf39d0fda phonet_stream_ops +EXPORT_SYMBOL net/rxrpc/rxrpc 0x00d7c662 key_type_rxrpc +EXPORT_SYMBOL net/rxrpc/rxrpc 0x0c6c98f7 rxrpc_kernel_end_call +EXPORT_SYMBOL net/rxrpc/rxrpc 0x2a7468ec rxrpc_get_null_key +EXPORT_SYMBOL net/rxrpc/rxrpc 0x31bf3ca3 rxrpc_debug_id +EXPORT_SYMBOL net/rxrpc/rxrpc 0x3d224414 rxrpc_kernel_get_srtt +EXPORT_SYMBOL net/rxrpc/rxrpc 0x3e149fbb rxrpc_kernel_get_epoch +EXPORT_SYMBOL net/rxrpc/rxrpc 0x4c91ff8b rxrpc_kernel_get_reply_time +EXPORT_SYMBOL net/rxrpc/rxrpc 0x614da1a2 rxrpc_kernel_send_data +EXPORT_SYMBOL net/rxrpc/rxrpc 0x77d22447 rxrpc_kernel_new_call_notification +EXPORT_SYMBOL net/rxrpc/rxrpc 0x7e3b1e59 rxrpc_kernel_get_peer +EXPORT_SYMBOL net/rxrpc/rxrpc 0x8586473d rxrpc_kernel_set_max_life +EXPORT_SYMBOL net/rxrpc/rxrpc 0x9cc30ad9 rxrpc_kernel_begin_call +EXPORT_SYMBOL net/rxrpc/rxrpc 0xa33dc713 rxrpc_kernel_set_tx_length +EXPORT_SYMBOL net/rxrpc/rxrpc 0xb47f2f89 rxrpc_kernel_recv_data +EXPORT_SYMBOL net/rxrpc/rxrpc 0xca53230f rxrpc_kernel_charge_accept +EXPORT_SYMBOL net/rxrpc/rxrpc 0xcb457cb7 rxrpc_get_server_data_key +EXPORT_SYMBOL net/rxrpc/rxrpc 0xd2927f35 rxrpc_sock_set_min_security_level +EXPORT_SYMBOL net/rxrpc/rxrpc 0xd4cf85c6 rxrpc_kernel_check_life +EXPORT_SYMBOL net/rxrpc/rxrpc 0xdc06bc86 rxrpc_kernel_abort_call +EXPORT_SYMBOL net/sctp/sctp 0x076dc871 sctp_do_peeloff +EXPORT_SYMBOL net/sunrpc/auth_gss/auth_rpcgss 0x81aae8ca gss_mech_put +EXPORT_SYMBOL net/sunrpc/auth_gss/auth_rpcgss 0xb36dda55 gss_mech_get +EXPORT_SYMBOL net/sunrpc/auth_gss/auth_rpcgss 0xd72d885d gss_pseudoflavor_to_service +EXPORT_SYMBOL net/sunrpc/sunrpc 0x0c4ff944 svc_pool_stats_open +EXPORT_SYMBOL net/sunrpc/sunrpc 0x0f8f022f xdr_restrict_buflen +EXPORT_SYMBOL net/sunrpc/sunrpc 0xc939eb71 xdr_truncate_encode +EXPORT_SYMBOL net/tipc/tipc 0x41042944 tipc_dump_done +EXPORT_SYMBOL net/tipc/tipc 0xdb354131 tipc_dump_start +EXPORT_SYMBOL net/tipc/tipc 0xe3bfee00 tipc_sk_fill_sock_diag +EXPORT_SYMBOL net/tipc/tipc 0xf6b6c045 tipc_nl_sk_walk +EXPORT_SYMBOL net/tls/tls 0x4e3365be tls_get_record +EXPORT_SYMBOL net/wimax/wimax 0x0620b41e wimax_reset +EXPORT_SYMBOL net/wimax/wimax 0x8f3e3260 wimax_rfkill +EXPORT_SYMBOL net/wireless/cfg80211 0x03dfb62b cfg80211_rx_unexpected_4addr_frame +EXPORT_SYMBOL net/wireless/cfg80211 0x0cea8c76 cfg80211_inform_bss_frame_data +EXPORT_SYMBOL net/wireless/cfg80211 0x117aca91 cfg80211_merge_profile +EXPORT_SYMBOL net/wireless/cfg80211 0x15a37cf3 cfg80211_calculate_bitrate +EXPORT_SYMBOL net/wireless/cfg80211 0x15fa1589 ieee80211_data_to_8023_exthdr +EXPORT_SYMBOL net/wireless/cfg80211 0x1643801d cfg80211_remain_on_channel_expired +EXPORT_SYMBOL net/wireless/cfg80211 0x1879fcbd bridge_tunnel_header +EXPORT_SYMBOL net/wireless/cfg80211 0x18b53545 cfg80211_chandef_create +EXPORT_SYMBOL net/wireless/cfg80211 0x1a0bc2e9 cfg80211_sched_scan_results +EXPORT_SYMBOL net/wireless/cfg80211 0x1b3507ac regulatory_set_wiphy_regd_sync_rtnl +EXPORT_SYMBOL net/wireless/cfg80211 0x1baa4ad0 cfg80211_assoc_timeout +EXPORT_SYMBOL net/wireless/cfg80211 0x1ce2497f reg_query_regdb_wmm +EXPORT_SYMBOL net/wireless/cfg80211 0x1ed33d9e cfg80211_michael_mic_failure +EXPORT_SYMBOL net/wireless/cfg80211 0x1f6d8b48 freq_reg_info +EXPORT_SYMBOL net/wireless/cfg80211 0x25c4e47a cfg80211_pmksa_candidate_notify +EXPORT_SYMBOL net/wireless/cfg80211 0x264ed4c3 cfg80211_sched_scan_stopped +EXPORT_SYMBOL net/wireless/cfg80211 0x2737c48b cfg80211_ch_switch_notify +EXPORT_SYMBOL net/wireless/cfg80211 0x274b64c2 cfg80211_stop_iface +EXPORT_SYMBOL net/wireless/cfg80211 0x275269b3 ieee80211_ie_split_ric +EXPORT_SYMBOL net/wireless/cfg80211 0x27f88997 cfg80211_ready_on_channel +EXPORT_SYMBOL net/wireless/cfg80211 0x28446f90 ieee80211_get_response_rate +EXPORT_SYMBOL net/wireless/cfg80211 0x2a32f7e3 cfg80211_iter_combinations +EXPORT_SYMBOL net/wireless/cfg80211 0x2b6c7776 cfg80211_cqm_txe_notify +EXPORT_SYMBOL net/wireless/cfg80211 0x2e0a9ed8 cfg80211_unregister_wdev +EXPORT_SYMBOL net/wireless/cfg80211 0x3168d272 wiphy_apply_custom_regulatory +EXPORT_SYMBOL net/wireless/cfg80211 0x361f6948 cfg80211_auth_timeout +EXPORT_SYMBOL net/wireless/cfg80211 0x38345290 regulatory_pre_cac_allowed +EXPORT_SYMBOL net/wireless/cfg80211 0x3a311540 cfg80211_update_owe_info_event +EXPORT_SYMBOL net/wireless/cfg80211 0x3b9a55d6 cfg80211_sta_opmode_change_notify +EXPORT_SYMBOL net/wireless/cfg80211 0x3bd8aaa1 ieee80211_operating_class_to_band +EXPORT_SYMBOL net/wireless/cfg80211 0x3c674798 cfg80211_nan_match +EXPORT_SYMBOL net/wireless/cfg80211 0x3fcba9cf cfg80211_ibss_joined +EXPORT_SYMBOL net/wireless/cfg80211 0x41be6073 wiphy_register +EXPORT_SYMBOL net/wireless/cfg80211 0x43f5efcf cfg80211_sinfo_alloc_tid_stats +EXPORT_SYMBOL net/wireless/cfg80211 0x4615d498 ieee80211_get_channel_khz +EXPORT_SYMBOL net/wireless/cfg80211 0x46312808 ieee80211_radiotap_iterator_next +EXPORT_SYMBOL net/wireless/cfg80211 0x47c10e9d regulatory_set_wiphy_regd +EXPORT_SYMBOL net/wireless/cfg80211 0x49fb9aa9 cfg80211_gtk_rekey_notify +EXPORT_SYMBOL net/wireless/cfg80211 0x4b2e30d0 cfg80211_probe_status +EXPORT_SYMBOL net/wireless/cfg80211 0x4c8ee705 cfg80211_external_auth_request +EXPORT_SYMBOL net/wireless/cfg80211 0x4e5a29e3 cfg80211_roamed +EXPORT_SYMBOL net/wireless/cfg80211 0x50524c31 cfg80211_bss_iter +EXPORT_SYMBOL net/wireless/cfg80211 0x51cac0c8 cfg80211_reg_can_beacon +EXPORT_SYMBOL net/wireless/cfg80211 0x5590b21e wiphy_unregister +EXPORT_SYMBOL net/wireless/cfg80211 0x56b924d7 wiphy_rfkill_start_polling +EXPORT_SYMBOL net/wireless/cfg80211 0x5c0daea0 cfg80211_sched_scan_stopped_rtnl +EXPORT_SYMBOL net/wireless/cfg80211 0x5c0e940a cfg80211_rx_control_port +EXPORT_SYMBOL net/wireless/cfg80211 0x5f7602ea cfg80211_get_bss +EXPORT_SYMBOL net/wireless/cfg80211 0x60351747 cfg80211_tx_mlme_mgmt +EXPORT_SYMBOL net/wireless/cfg80211 0x61ba1832 __cfg80211_alloc_event_skb +EXPORT_SYMBOL net/wireless/cfg80211 0x63a891d1 cfg80211_iftype_allowed +EXPORT_SYMBOL net/wireless/cfg80211 0x65333f82 cfg80211_radar_event +EXPORT_SYMBOL net/wireless/cfg80211 0x67d86dcd ieee80211_chandef_to_operating_class +EXPORT_SYMBOL net/wireless/cfg80211 0x68600c40 ieee80211_mandatory_rates +EXPORT_SYMBOL net/wireless/cfg80211 0x69b18f43 rfc1042_header +EXPORT_SYMBOL net/wireless/cfg80211 0x6ae898bf cfg80211_chandef_usable +EXPORT_SYMBOL net/wireless/cfg80211 0x6bedf402 ieee80211_freq_khz_to_channel +EXPORT_SYMBOL net/wireless/cfg80211 0x6da0bf79 cfg80211_cqm_pktloss_notify +EXPORT_SYMBOL net/wireless/cfg80211 0x757db28f cfg80211_connect_done +EXPORT_SYMBOL net/wireless/cfg80211 0x77def7e6 wiphy_free +EXPORT_SYMBOL net/wireless/cfg80211 0x795a4feb cfg80211_rx_mgmt_khz +EXPORT_SYMBOL net/wireless/cfg80211 0x79b82a71 cfg80211_find_vendor_elem +EXPORT_SYMBOL net/wireless/cfg80211 0x79c3743c cfg80211_check_station_change +EXPORT_SYMBOL net/wireless/cfg80211 0x7bb04f09 wiphy_read_of_freq_limits +EXPORT_SYMBOL net/wireless/cfg80211 0x7c3ac925 ieee80211_get_vht_max_nss +EXPORT_SYMBOL net/wireless/cfg80211 0x7ef39823 ieee80211_hdrlen +EXPORT_SYMBOL net/wireless/cfg80211 0x7f579882 cfg80211_disconnected +EXPORT_SYMBOL net/wireless/cfg80211 0x7fb9cf94 cfg80211_ft_event +EXPORT_SYMBOL net/wireless/cfg80211 0x81a471d6 cfg80211_chandef_valid +EXPORT_SYMBOL net/wireless/cfg80211 0x876a4930 cfg80211_cqm_beacon_loss_notify +EXPORT_SYMBOL net/wireless/cfg80211 0x8a11297b wiphy_rfkill_stop_polling +EXPORT_SYMBOL net/wireless/cfg80211 0x8bd55c5e __cfg80211_alloc_reply_skb +EXPORT_SYMBOL net/wireless/cfg80211 0x8c467a6f cfg80211_rx_spurious_frame +EXPORT_SYMBOL net/wireless/cfg80211 0x8fa02936 cfg80211_free_nan_func +EXPORT_SYMBOL net/wireless/cfg80211 0x917be814 cfg80211_ref_bss +EXPORT_SYMBOL net/wireless/cfg80211 0x93b5c94b cfg80211_new_sta +EXPORT_SYMBOL net/wireless/cfg80211 0x98adace4 cfg80211_chandef_dfs_required +EXPORT_SYMBOL net/wireless/cfg80211 0x998fceef cfg80211_get_drvinfo +EXPORT_SYMBOL net/wireless/cfg80211 0x9a05b4eb cfg80211_nan_func_terminated +EXPORT_SYMBOL net/wireless/cfg80211 0x9a9fcdbf cfg80211_scan_done +EXPORT_SYMBOL net/wireless/cfg80211 0x9d002431 cfg80211_port_authorized +EXPORT_SYMBOL net/wireless/cfg80211 0x9d6cba30 cfg80211_find_elem_match +EXPORT_SYMBOL net/wireless/cfg80211 0x9fd18bdb cfg80211_put_bss +EXPORT_SYMBOL net/wireless/cfg80211 0xa0d5f6a4 cfg80211_ch_switch_started_notify +EXPORT_SYMBOL net/wireless/cfg80211 0xa194c5ce cfg80211_report_wowlan_wakeup +EXPORT_SYMBOL net/wireless/cfg80211 0xa62dad8e __cfg80211_send_event_skb +EXPORT_SYMBOL net/wireless/cfg80211 0xa79d6878 cfg80211_inform_bss_data +EXPORT_SYMBOL net/wireless/cfg80211 0xac97a207 ieee80211_radiotap_iterator_init +EXPORT_SYMBOL net/wireless/cfg80211 0xafe8b001 ieee80211_channel_to_freq_khz +EXPORT_SYMBOL net/wireless/cfg80211 0xb52cb246 cfg80211_control_port_tx_status +EXPORT_SYMBOL net/wireless/cfg80211 0xb656157c regulatory_hint +EXPORT_SYMBOL net/wireless/cfg80211 0xb891a829 cfg80211_get_station +EXPORT_SYMBOL net/wireless/cfg80211 0xb98cfba2 cfg80211_del_sta_sinfo +EXPORT_SYMBOL net/wireless/cfg80211 0xbf65415c cfg80211_unlink_bss +EXPORT_SYMBOL net/wireless/cfg80211 0xc2a04961 cfg80211_cqm_rssi_notify +EXPORT_SYMBOL net/wireless/cfg80211 0xc46a9a0b cfg80211_notify_new_peer_candidate +EXPORT_SYMBOL net/wireless/cfg80211 0xcaacfac3 cfg80211_send_layer2_update +EXPORT_SYMBOL net/wireless/cfg80211 0xcc1a7c48 cfg80211_is_element_inherited +EXPORT_SYMBOL net/wireless/cfg80211 0xcc914810 ieee80211_get_num_supported_channels +EXPORT_SYMBOL net/wireless/cfg80211 0xccfbdc84 cfg80211_report_obss_beacon_khz +EXPORT_SYMBOL net/wireless/cfg80211 0xcdc29db1 wiphy_rfkill_set_hw_state +EXPORT_SYMBOL net/wireless/cfg80211 0xcf455365 cfg80211_abandon_assoc +EXPORT_SYMBOL net/wireless/cfg80211 0xd1714df0 cfg80211_mgmt_tx_status +EXPORT_SYMBOL net/wireless/cfg80211 0xd1d7fcf7 cfg80211_rx_unprot_mlme_mgmt +EXPORT_SYMBOL net/wireless/cfg80211 0xd56d55f3 ieee80211_get_mesh_hdrlen +EXPORT_SYMBOL net/wireless/cfg80211 0xd66a6ee6 cfg80211_cac_event +EXPORT_SYMBOL net/wireless/cfg80211 0xd6af5fa5 cfg80211_crit_proto_stopped +EXPORT_SYMBOL net/wireless/cfg80211 0xd6d865a4 ieee80211_get_hdrlen_from_skb +EXPORT_SYMBOL net/wireless/cfg80211 0xd6e2aa59 ieee80211_amsdu_to_8023s +EXPORT_SYMBOL net/wireless/cfg80211 0xd853cfdd cfg80211_rx_assoc_resp +EXPORT_SYMBOL net/wireless/cfg80211 0xd8a81f81 wiphy_new_nm +EXPORT_SYMBOL net/wireless/cfg80211 0xdba126c1 reg_initiator_name +EXPORT_SYMBOL net/wireless/cfg80211 0xe0e51063 cfg80211_tdls_oper_request +EXPORT_SYMBOL net/wireless/cfg80211 0xe88221ab cfg80211_conn_failed +EXPORT_SYMBOL net/wireless/cfg80211 0xe9df6b53 cfg80211_reg_can_beacon_relax +EXPORT_SYMBOL net/wireless/cfg80211 0xea3ef34f cfg80211_rx_mlme_mgmt +EXPORT_SYMBOL net/wireless/cfg80211 0xebc3d469 cfg80211_classify8021d +EXPORT_SYMBOL net/wireless/cfg80211 0xf5596d89 cfg80211_get_p2p_attr +EXPORT_SYMBOL net/wireless/cfg80211 0xfae8514f cfg80211_chandef_compatible +EXPORT_SYMBOL net/wireless/cfg80211 0xfc320325 cfg80211_check_combinations +EXPORT_SYMBOL net/wireless/cfg80211 0xfdc16654 cfg80211_tx_mgmt_expired +EXPORT_SYMBOL net/wireless/cfg80211 0xff0c113a ieee80211_bss_get_elem +EXPORT_SYMBOL net/wireless/lib80211 0x108870e5 lib80211_unregister_crypto_ops +EXPORT_SYMBOL net/wireless/lib80211 0x53409bfe lib80211_crypt_info_free +EXPORT_SYMBOL net/wireless/lib80211 0x6e4d2279 lib80211_crypt_info_init +EXPORT_SYMBOL net/wireless/lib80211 0x76506c45 lib80211_crypt_delayed_deinit +EXPORT_SYMBOL net/wireless/lib80211 0x8598f7fb lib80211_register_crypto_ops +EXPORT_SYMBOL net/wireless/lib80211 0xdd1e3328 lib80211_get_crypto_ops +EXPORT_SYMBOL sound/ac97_bus 0x76759a9e ac97_bus_type +EXPORT_SYMBOL sound/core/oss/snd-mixer-oss 0x119e0199 snd_mixer_oss_ioctl_card +EXPORT_SYMBOL sound/core/seq/snd-seq 0x1a724fcc snd_seq_kernel_client_ctl +EXPORT_SYMBOL sound/core/seq/snd-seq 0x3061c52d snd_use_lock_sync_helper +EXPORT_SYMBOL sound/core/seq/snd-seq 0x3fb4d161 snd_seq_kernel_client_dispatch +EXPORT_SYMBOL sound/core/seq/snd-seq 0x6bb71038 snd_seq_delete_kernel_client +EXPORT_SYMBOL sound/core/seq/snd-seq 0x6e687b92 snd_seq_kernel_client_enqueue +EXPORT_SYMBOL sound/core/seq/snd-seq 0x73c82cc7 snd_seq_event_port_attach +EXPORT_SYMBOL sound/core/seq/snd-seq 0x7ac2f329 snd_seq_expand_var_event +EXPORT_SYMBOL sound/core/seq/snd-seq 0x7b8699eb snd_seq_event_port_detach +EXPORT_SYMBOL sound/core/seq/snd-seq 0x82886421 snd_seq_create_kernel_client +EXPORT_SYMBOL sound/core/seq/snd-seq 0xb8e448a0 snd_seq_set_queue_tempo +EXPORT_SYMBOL sound/core/seq/snd-seq 0xbe10865a snd_seq_kernel_client_write_poll +EXPORT_SYMBOL sound/core/seq/snd-seq 0xe934da1d snd_seq_dump_var_event +EXPORT_SYMBOL sound/core/seq/snd-seq-midi-emul 0x6ea09972 snd_midi_channel_alloc_set +EXPORT_SYMBOL sound/core/seq/snd-seq-midi-emul 0x833a3e07 snd_midi_channel_set_clear +EXPORT_SYMBOL sound/core/seq/snd-seq-midi-emul 0xb9948d2c snd_midi_channel_free_set +EXPORT_SYMBOL sound/core/seq/snd-seq-midi-emul 0xf912f0c8 snd_midi_process_event +EXPORT_SYMBOL sound/core/seq/snd-seq-midi-event 0x734e4fba snd_midi_event_encode_byte +EXPORT_SYMBOL sound/core/seq/snd-seq-midi-event 0x7a3e0db5 snd_midi_event_no_status +EXPORT_SYMBOL sound/core/seq/snd-seq-midi-event 0x8150b379 snd_midi_event_reset_encode +EXPORT_SYMBOL sound/core/seq/snd-seq-midi-event 0xb8620ad8 snd_midi_event_reset_decode +EXPORT_SYMBOL sound/core/seq/snd-seq-midi-event 0xdd70dbf6 snd_midi_event_decode +EXPORT_SYMBOL sound/core/seq/snd-seq-midi-event 0xdd935c83 snd_midi_event_free +EXPORT_SYMBOL sound/core/seq/snd-seq-midi-event 0xe9e6c50c snd_midi_event_new +EXPORT_SYMBOL sound/core/seq/snd-seq-virmidi 0xf84b2a66 snd_virmidi_new +EXPORT_SYMBOL sound/core/snd 0x0282c5bd snd_ctl_new1 +EXPORT_SYMBOL sound/core/snd 0x055f3614 snd_jack_set_parent +EXPORT_SYMBOL sound/core/snd 0x08546591 snd_info_register +EXPORT_SYMBOL sound/core/snd 0x0bec1bbd snd_power_wait +EXPORT_SYMBOL sound/core/snd 0x0d54b84c snd_register_oss_device +EXPORT_SYMBOL sound/core/snd 0x0d87ffa7 snd_info_create_card_entry +EXPORT_SYMBOL sound/core/snd 0x195d5d99 snd_seq_root +EXPORT_SYMBOL sound/core/snd 0x198788b4 snd_lookup_oss_minor_data +EXPORT_SYMBOL sound/core/snd 0x1b1fc125 snd_ctl_find_numid +EXPORT_SYMBOL sound/core/snd 0x1ec1194b snd_ctl_add +EXPORT_SYMBOL sound/core/snd 0x1f4c364a snd_card_free_when_closed +EXPORT_SYMBOL sound/core/snd 0x235d8e87 snd_device_free +EXPORT_SYMBOL sound/core/snd 0x24571e8c snd_ctl_register_ioctl +EXPORT_SYMBOL sound/core/snd 0x24a94b26 snd_info_get_line +EXPORT_SYMBOL sound/core/snd 0x25d89cc1 snd_device_new +EXPORT_SYMBOL sound/core/snd 0x2c77f457 snd_mixer_oss_notify_callback +EXPORT_SYMBOL sound/core/snd 0x2ce314ad snd_component_add +EXPORT_SYMBOL sound/core/snd 0x342a2354 copy_to_user_fromio +EXPORT_SYMBOL sound/core/snd 0x3524d6ca snd_device_register +EXPORT_SYMBOL sound/core/snd 0x385be01a snd_ctl_boolean_stereo_info +EXPORT_SYMBOL sound/core/snd 0x3971b4df snd_ecards_limit +EXPORT_SYMBOL sound/core/snd 0x3b48bbaa snd_info_create_module_entry +EXPORT_SYMBOL sound/core/snd 0x496d0097 snd_ctl_replace +EXPORT_SYMBOL sound/core/snd 0x49c5e3c6 _snd_ctl_add_slave +EXPORT_SYMBOL sound/core/snd 0x4a3ea5c0 snd_request_card +EXPORT_SYMBOL sound/core/snd 0x4a5d1102 snd_jack_set_key +EXPORT_SYMBOL sound/core/snd 0x4e5d9ec1 snd_ctl_find_id +EXPORT_SYMBOL sound/core/snd 0x52e93f70 snd_pci_quirk_lookup +EXPORT_SYMBOL sound/core/snd 0x540e830f snd_card_file_remove +EXPORT_SYMBOL sound/core/snd 0x545daefe snd_card_file_add +EXPORT_SYMBOL sound/core/snd 0x5fd6b2d9 snd_jack_add_new_kctl +EXPORT_SYMBOL sound/core/snd 0x610c2bee snd_ctl_unregister_ioctl_compat +EXPORT_SYMBOL sound/core/snd 0x61eacf19 snd_ctl_rename_id +EXPORT_SYMBOL sound/core/snd 0x6c891a8b snd_card_disconnect +EXPORT_SYMBOL sound/core/snd 0x6fbbc7c1 snd_ctl_unregister_ioctl +EXPORT_SYMBOL sound/core/snd 0x73076315 snd_pci_quirk_lookup_id +EXPORT_SYMBOL sound/core/snd 0x7365c628 snd_unregister_device +EXPORT_SYMBOL sound/core/snd 0x7b8fc0f8 snd_ctl_free_one +EXPORT_SYMBOL sound/core/snd 0x8c058a12 snd_ctl_make_virtual_master +EXPORT_SYMBOL sound/core/snd 0x8df3789f snd_oss_info_register +EXPORT_SYMBOL sound/core/snd 0x8f595b11 snd_major +EXPORT_SYMBOL sound/core/snd 0x98cec2e5 snd_card_set_id +EXPORT_SYMBOL sound/core/snd 0x98e14e6a snd_ctl_boolean_mono_info +EXPORT_SYMBOL sound/core/snd 0x9a735e2e snd_card_register +EXPORT_SYMBOL sound/core/snd 0x9e6d79f8 snd_info_get_str +EXPORT_SYMBOL sound/core/snd 0xa0e91ff3 snd_ctl_remove +EXPORT_SYMBOL sound/core/snd 0xab2614bc snd_jack_new +EXPORT_SYMBOL sound/core/snd 0xb2e5ae4a snd_lookup_minor_data +EXPORT_SYMBOL sound/core/snd 0xc4b46a32 snd_jack_report +EXPORT_SYMBOL sound/core/snd 0xc5a6d10b release_and_free_resource +EXPORT_SYMBOL sound/core/snd 0xc828d009 snd_info_free_entry +EXPORT_SYMBOL sound/core/snd 0xc97cc022 snd_ctl_notify +EXPORT_SYMBOL sound/core/snd 0xcc6a729f snd_ctl_enum_info +EXPORT_SYMBOL sound/core/snd 0xd0d08752 snd_ctl_register_ioctl_compat +EXPORT_SYMBOL sound/core/snd 0xd4d53331 snd_unregister_oss_device +EXPORT_SYMBOL sound/core/snd 0xe974c0b5 snd_card_free +EXPORT_SYMBOL sound/core/snd 0xeab1ec48 snd_card_new +EXPORT_SYMBOL sound/core/snd 0xeb3cdada snd_register_device +EXPORT_SYMBOL sound/core/snd 0xf49ee4c8 snd_ctl_remove_id +EXPORT_SYMBOL sound/core/snd 0xfffd89db copy_from_user_toio +EXPORT_SYMBOL sound/core/snd-compress 0x5eba4820 snd_compr_malloc_pages +EXPORT_SYMBOL sound/core/snd-compress 0xe1f438de snd_compr_free_pages +EXPORT_SYMBOL sound/core/snd-hwdep 0x32e92e95 snd_hwdep_new +EXPORT_SYMBOL sound/core/snd-pcm 0x0283dfe3 _snd_pcm_hw_params_any +EXPORT_SYMBOL sound/core/snd-pcm 0x03cf995f snd_pcm_kernel_ioctl +EXPORT_SYMBOL sound/core/snd-pcm 0x04cda566 snd_interval_refine +EXPORT_SYMBOL sound/core/snd-pcm 0x11eba48e snd_pcm_create_iec958_consumer_hw_params +EXPORT_SYMBOL sound/core/snd-pcm 0x1d027e4b snd_pcm_format_signed +EXPORT_SYMBOL sound/core/snd-pcm 0x22226727 snd_pcm_set_managed_buffer_all +EXPORT_SYMBOL sound/core/snd-pcm 0x244aecf0 snd_dma_alloc_pages_fallback +EXPORT_SYMBOL sound/core/snd-pcm 0x28b16bd3 snd_pcm_hw_constraint_ranges +EXPORT_SYMBOL sound/core/snd-pcm 0x296948c9 snd_pcm_new_internal +EXPORT_SYMBOL sound/core/snd-pcm 0x29a2732b snd_pcm_hw_rule_noresample +EXPORT_SYMBOL sound/core/snd-pcm 0x29c2f547 snd_pcm_lib_preallocate_pages +EXPORT_SYMBOL sound/core/snd-pcm 0x2b46d139 snd_pcm_hw_param_last +EXPORT_SYMBOL sound/core/snd-pcm 0x3147197d snd_pcm_lib_preallocate_free_for_all +EXPORT_SYMBOL sound/core/snd-pcm 0x33f7f14d snd_pcm_lib_preallocate_pages_for_all +EXPORT_SYMBOL sound/core/snd-pcm 0x3796bdcc snd_pcm_format_little_endian +EXPORT_SYMBOL sound/core/snd-pcm 0x38d4d10a snd_pcm_hw_constraint_mask64 +EXPORT_SYMBOL sound/core/snd-pcm 0x39bf9301 _snd_pcm_hw_param_setempty +EXPORT_SYMBOL sound/core/snd-pcm 0x3ab5ce8c snd_dma_free_pages +EXPORT_SYMBOL sound/core/snd-pcm 0x4941a44e snd_pcm_set_sync +EXPORT_SYMBOL sound/core/snd-pcm 0x4a930b89 snd_pcm_open_substream +EXPORT_SYMBOL sound/core/snd-pcm 0x4b02ffe0 snd_pcm_set_ops +EXPORT_SYMBOL sound/core/snd-pcm 0x4e33de52 snd_pcm_lib_free_vmalloc_buffer +EXPORT_SYMBOL sound/core/snd-pcm 0x4f816e9b snd_pcm_format_big_endian +EXPORT_SYMBOL sound/core/snd-pcm 0x503bd137 snd_interval_ranges +EXPORT_SYMBOL sound/core/snd-pcm 0x52e3e4a5 snd_pcm_hw_param_value +EXPORT_SYMBOL sound/core/snd-pcm 0x548fd940 snd_pcm_period_elapsed +EXPORT_SYMBOL sound/core/snd-pcm 0x5a0a0ca1 snd_pcm_hw_constraint_minmax +EXPORT_SYMBOL sound/core/snd-pcm 0x5a22956e snd_pcm_hw_constraint_msbits +EXPORT_SYMBOL sound/core/snd-pcm 0x5e7f4920 snd_pcm_format_set_silence +EXPORT_SYMBOL sound/core/snd-pcm 0x616d496a snd_pcm_new +EXPORT_SYMBOL sound/core/snd-pcm 0x650f8603 snd_pcm_format_silence_64 +EXPORT_SYMBOL sound/core/snd-pcm 0x68a24153 snd_pcm_format_physical_width +EXPORT_SYMBOL sound/core/snd-pcm 0x69255f54 snd_pcm_hw_limit_rates +EXPORT_SYMBOL sound/core/snd-pcm 0x6a9bf276 snd_pcm_lib_get_vmalloc_page +EXPORT_SYMBOL sound/core/snd-pcm 0x6ba82abb snd_pcm_lib_ioctl +EXPORT_SYMBOL sound/core/snd-pcm 0x6ef8fcd8 snd_pcm_format_linear +EXPORT_SYMBOL sound/core/snd-pcm 0x6fdddc81 snd_pcm_hw_constraint_list +EXPORT_SYMBOL sound/core/snd-pcm 0x728435ff snd_pcm_hw_constraint_ratnums +EXPORT_SYMBOL sound/core/snd-pcm 0x81d2c6b8 snd_pcm_hw_constraint_integer +EXPORT_SYMBOL sound/core/snd-pcm 0x834dc955 snd_pcm_format_size +EXPORT_SYMBOL sound/core/snd-pcm 0x84d82da4 snd_pcm_hw_rule_add +EXPORT_SYMBOL sound/core/snd-pcm 0x88b168bd snd_pcm_hw_constraint_ratdens +EXPORT_SYMBOL sound/core/snd-pcm 0x8e44889e __snd_pcm_lib_xfer +EXPORT_SYMBOL sound/core/snd-pcm 0x91bc5284 snd_pcm_set_managed_buffer +EXPORT_SYMBOL sound/core/snd-pcm 0x94098ff8 snd_interval_list +EXPORT_SYMBOL sound/core/snd-pcm 0x9aa8b734 snd_pcm_mmap_data +EXPORT_SYMBOL sound/core/snd-pcm 0x9fcac520 snd_pcm_suspend_all +EXPORT_SYMBOL sound/core/snd-pcm 0xa2464dbb snd_pcm_release_substream +EXPORT_SYMBOL sound/core/snd-pcm 0xa61aa028 snd_pcm_format_unsigned +EXPORT_SYMBOL sound/core/snd-pcm 0xa91af9b6 snd_pcm_lib_malloc_pages +EXPORT_SYMBOL sound/core/snd-pcm 0xac437f7b snd_interval_ratnum +EXPORT_SYMBOL sound/core/snd-pcm 0xac818fe2 snd_dma_alloc_pages +EXPORT_SYMBOL sound/core/snd-pcm 0xb9638db4 snd_pcm_rate_to_rate_bit +EXPORT_SYMBOL sound/core/snd-pcm 0xc1f5ba60 snd_pcm_hw_constraint_pow2 +EXPORT_SYMBOL sound/core/snd-pcm 0xc6f991da snd_pcm_create_iec958_consumer +EXPORT_SYMBOL sound/core/snd-pcm 0xd1056666 snd_pcm_hw_refine +EXPORT_SYMBOL sound/core/snd-pcm 0xd2002e3a _snd_pcm_lib_alloc_vmalloc_buffer +EXPORT_SYMBOL sound/core/snd-pcm 0xd4493d21 snd_pcm_hw_constraint_step +EXPORT_SYMBOL sound/core/snd-pcm 0xe56a9336 snd_pcm_format_width +EXPORT_SYMBOL sound/core/snd-pcm 0xe62133bb snd_pcm_stop +EXPORT_SYMBOL sound/core/snd-pcm 0xe93f5c74 snd_pcm_new_stream +EXPORT_SYMBOL sound/core/snd-pcm 0xebf3c229 snd_pcm_lib_free_pages +EXPORT_SYMBOL sound/core/snd-pcm 0xec46da08 snd_pcm_hw_param_first +EXPORT_SYMBOL sound/core/snd-pcm 0xff6104d0 snd_pcm_rate_bit_to_rate +EXPORT_SYMBOL sound/core/snd-rawmidi 0x00c7623b snd_rawmidi_transmit_peek +EXPORT_SYMBOL sound/core/snd-rawmidi 0x0c6d3363 snd_rawmidi_transmit +EXPORT_SYMBOL sound/core/snd-rawmidi 0x2190c598 snd_rawmidi_proceed +EXPORT_SYMBOL sound/core/snd-rawmidi 0x25977329 snd_rawmidi_kernel_release +EXPORT_SYMBOL sound/core/snd-rawmidi 0x28ed09ce __snd_rawmidi_transmit_ack +EXPORT_SYMBOL sound/core/snd-rawmidi 0x3294978f snd_rawmidi_kernel_write +EXPORT_SYMBOL sound/core/snd-rawmidi 0x32ecac01 snd_rawmidi_set_ops +EXPORT_SYMBOL sound/core/snd-rawmidi 0x48262acc __snd_rawmidi_transmit_peek +EXPORT_SYMBOL sound/core/snd-rawmidi 0x54c2d8e7 snd_rawmidi_kernel_open +EXPORT_SYMBOL sound/core/snd-rawmidi 0x74083aa9 snd_rawmidi_new +EXPORT_SYMBOL sound/core/snd-rawmidi 0x75b02d46 snd_rawmidi_transmit_empty +EXPORT_SYMBOL sound/core/snd-rawmidi 0x9b9b00bd snd_rawmidi_drop_output +EXPORT_SYMBOL sound/core/snd-rawmidi 0xaad99917 snd_rawmidi_drain_input +EXPORT_SYMBOL sound/core/snd-rawmidi 0xae8fcbef snd_rawmidi_transmit_ack +EXPORT_SYMBOL sound/core/snd-rawmidi 0xb3df9d71 snd_rawmidi_receive +EXPORT_SYMBOL sound/core/snd-rawmidi 0xb71acee8 snd_rawmidi_info_select +EXPORT_SYMBOL sound/core/snd-rawmidi 0xc038b591 snd_rawmidi_output_params +EXPORT_SYMBOL sound/core/snd-rawmidi 0xef3c5abc snd_rawmidi_drain_output +EXPORT_SYMBOL sound/core/snd-rawmidi 0xf01a1b2f snd_rawmidi_input_params +EXPORT_SYMBOL sound/core/snd-rawmidi 0xf7856d7f snd_rawmidi_kernel_read +EXPORT_SYMBOL sound/core/snd-seq-device 0x091def1c snd_seq_autoload_exit +EXPORT_SYMBOL sound/core/snd-seq-device 0x370a0736 snd_seq_autoload_init +EXPORT_SYMBOL sound/core/snd-seq-device 0x6339b6d0 snd_seq_device_load_drivers +EXPORT_SYMBOL sound/core/snd-seq-device 0x7f0e0819 snd_seq_device_new +EXPORT_SYMBOL sound/core/snd-timer 0x03987a40 snd_timer_open +EXPORT_SYMBOL sound/core/snd-timer 0x10e7855b snd_timer_new +EXPORT_SYMBOL sound/core/snd-timer 0x1721f1b2 snd_timer_close +EXPORT_SYMBOL sound/core/snd-timer 0x1cdc0f7c snd_timer_instance_new +EXPORT_SYMBOL sound/core/snd-timer 0x31c6685b snd_timer_global_free +EXPORT_SYMBOL sound/core/snd-timer 0x3b0db752 snd_timer_instance_free +EXPORT_SYMBOL sound/core/snd-timer 0x3c954ef1 snd_timer_global_new +EXPORT_SYMBOL sound/core/snd-timer 0x41aef599 snd_timer_resolution +EXPORT_SYMBOL sound/core/snd-timer 0x5ac14675 snd_timer_stop +EXPORT_SYMBOL sound/core/snd-timer 0x5afa5d75 snd_timer_global_register +EXPORT_SYMBOL sound/core/snd-timer 0x62a7fd5d snd_timer_interrupt +EXPORT_SYMBOL sound/core/snd-timer 0xcc0df4e6 snd_timer_start +EXPORT_SYMBOL sound/core/snd-timer 0xcd238e22 snd_timer_notify +EXPORT_SYMBOL sound/core/snd-timer 0xd2a6ef51 snd_timer_pause +EXPORT_SYMBOL sound/core/snd-timer 0xf469cfa6 snd_timer_continue +EXPORT_SYMBOL sound/drivers/mpu401/snd-mpu401-uart 0x6d629c59 snd_mpu401_uart_interrupt_tx +EXPORT_SYMBOL sound/drivers/mpu401/snd-mpu401-uart 0xc0fec227 snd_mpu401_uart_interrupt +EXPORT_SYMBOL sound/drivers/mpu401/snd-mpu401-uart 0xf13c7920 snd_mpu401_uart_new +EXPORT_SYMBOL sound/drivers/opl3/snd-opl3-lib 0x05060a19 snd_opl3_regmap +EXPORT_SYMBOL sound/drivers/opl3/snd-opl3-lib 0x115d8b6b snd_opl3_timer_new +EXPORT_SYMBOL sound/drivers/opl3/snd-opl3-lib 0x42c4810e snd_opl3_interrupt +EXPORT_SYMBOL sound/drivers/opl3/snd-opl3-lib 0x57b3102b snd_opl3_hwdep_new +EXPORT_SYMBOL sound/drivers/opl3/snd-opl3-lib 0x6410ff46 snd_opl3_new +EXPORT_SYMBOL sound/drivers/opl3/snd-opl3-lib 0x95073922 snd_opl3_create +EXPORT_SYMBOL sound/drivers/opl3/snd-opl3-lib 0xb799cf9b snd_opl3_find_patch +EXPORT_SYMBOL sound/drivers/opl3/snd-opl3-lib 0xba66ae9e snd_opl3_reset +EXPORT_SYMBOL sound/drivers/opl3/snd-opl3-lib 0xf0d51782 snd_opl3_init +EXPORT_SYMBOL sound/drivers/opl3/snd-opl3-lib 0xf25c26a3 snd_opl3_load_patch +EXPORT_SYMBOL sound/drivers/vx/snd-vx-lib 0x06202a29 snd_vx_load_boot_image +EXPORT_SYMBOL sound/drivers/vx/snd-vx-lib 0x21d01720 snd_vx_setup_firmware +EXPORT_SYMBOL sound/drivers/vx/snd-vx-lib 0x226138b0 snd_vx_threaded_irq_handler +EXPORT_SYMBOL sound/drivers/vx/snd-vx-lib 0x3e5f4230 snd_vx_dsp_load +EXPORT_SYMBOL sound/drivers/vx/snd-vx-lib 0x63111a51 snd_vx_resume +EXPORT_SYMBOL sound/drivers/vx/snd-vx-lib 0x76231b0c snd_vx_free_firmware +EXPORT_SYMBOL sound/drivers/vx/snd-vx-lib 0x7878f1bf snd_vx_suspend +EXPORT_SYMBOL sound/drivers/vx/snd-vx-lib 0x87777766 snd_vx_create +EXPORT_SYMBOL sound/drivers/vx/snd-vx-lib 0xcfc7fead snd_vx_check_reg_bit +EXPORT_SYMBOL sound/drivers/vx/snd-vx-lib 0xd3af368f snd_vx_dsp_boot +EXPORT_SYMBOL sound/drivers/vx/snd-vx-lib 0xf1f04d23 snd_vx_irq_handler +EXPORT_SYMBOL sound/firewire/snd-firewire-lib 0x13f8775c iso_packets_buffer_destroy +EXPORT_SYMBOL sound/firewire/snd-firewire-lib 0x20254e45 amdtp_syt_intervals +EXPORT_SYMBOL sound/firewire/snd-firewire-lib 0x24570772 snd_fw_transaction +EXPORT_SYMBOL sound/firewire/snd-firewire-lib 0x2d7d4074 fw_iso_resources_init +EXPORT_SYMBOL sound/firewire/snd-firewire-lib 0x35e0e7a1 amdtp_stream_init +EXPORT_SYMBOL sound/firewire/snd-firewire-lib 0x37085eb6 avc_general_get_sig_fmt +EXPORT_SYMBOL sound/firewire/snd-firewire-lib 0x3d5444b7 fw_iso_resources_update +EXPORT_SYMBOL sound/firewire/snd-firewire-lib 0x4aab38f5 amdtp_stream_destroy +EXPORT_SYMBOL sound/firewire/snd-firewire-lib 0x4ea6696e cmp_connection_reserve +EXPORT_SYMBOL sound/firewire/snd-firewire-lib 0x53ca18e8 amdtp_rate_table +EXPORT_SYMBOL sound/firewire/snd-firewire-lib 0x54907ba6 cmp_connection_establish +EXPORT_SYMBOL sound/firewire/snd-firewire-lib 0x5c1814e3 cmp_connection_init +EXPORT_SYMBOL sound/firewire/snd-firewire-lib 0x5ede4696 amdtp_stream_pcm_abort +EXPORT_SYMBOL sound/firewire/snd-firewire-lib 0x5ee9b39d fcp_avc_transaction +EXPORT_SYMBOL sound/firewire/snd-firewire-lib 0x63bd2889 cmp_connection_check_used +EXPORT_SYMBOL sound/firewire/snd-firewire-lib 0x778598fc amdtp_stream_add_pcm_hw_constraints +EXPORT_SYMBOL sound/firewire/snd-firewire-lib 0x7fd76718 amdtp_stream_pcm_prepare +EXPORT_SYMBOL sound/firewire/snd-firewire-lib 0x8ccc1ed2 avc_general_set_sig_fmt +EXPORT_SYMBOL sound/firewire/snd-firewire-lib 0x8d288532 amdtp_stream_get_max_payload +EXPORT_SYMBOL sound/firewire/snd-firewire-lib 0x9b9a084a amdtp_stream_update +EXPORT_SYMBOL sound/firewire/snd-firewire-lib 0xa6ff949a fw_iso_resources_destroy +EXPORT_SYMBOL sound/firewire/snd-firewire-lib 0xa8e8f8c8 snd_fw_schedule_registration +EXPORT_SYMBOL sound/firewire/snd-firewire-lib 0xb008a603 avc_general_get_plug_info +EXPORT_SYMBOL sound/firewire/snd-firewire-lib 0xb477c15b cmp_connection_release +EXPORT_SYMBOL sound/firewire/snd-firewire-lib 0xbdfe1779 cmp_connection_update +EXPORT_SYMBOL sound/firewire/snd-firewire-lib 0xca728f9f fw_iso_resources_free +EXPORT_SYMBOL sound/firewire/snd-firewire-lib 0xcfba9677 cmp_connection_break +EXPORT_SYMBOL sound/firewire/snd-firewire-lib 0xd7d6e40c iso_packets_buffer_init +EXPORT_SYMBOL sound/firewire/snd-firewire-lib 0xd9e4a45f cmp_connection_destroy +EXPORT_SYMBOL sound/firewire/snd-firewire-lib 0xda23d5ec fcp_bus_reset +EXPORT_SYMBOL sound/firewire/snd-firewire-lib 0xe20e34a1 fw_iso_resources_allocate +EXPORT_SYMBOL sound/firewire/snd-firewire-lib 0xf3658ed2 amdtp_stream_set_parameters +EXPORT_SYMBOL sound/i2c/other/snd-ak4113 0xa57d59a7 snd_ak4113_resume +EXPORT_SYMBOL sound/i2c/other/snd-ak4113 0xa9acf96c snd_ak4113_suspend +EXPORT_SYMBOL sound/i2c/other/snd-ak4114 0x14ccbdb9 snd_ak4114_suspend +EXPORT_SYMBOL sound/i2c/other/snd-ak4114 0x153541f0 snd_ak4114_reinit +EXPORT_SYMBOL sound/i2c/other/snd-ak4114 0x1a085eb7 snd_ak4114_create +EXPORT_SYMBOL sound/i2c/other/snd-ak4114 0x2546bc23 snd_ak4114_external_rate +EXPORT_SYMBOL sound/i2c/other/snd-ak4114 0x4bb452f2 snd_ak4114_resume +EXPORT_SYMBOL sound/i2c/other/snd-ak4114 0x78b7f642 snd_ak4114_reg_write +EXPORT_SYMBOL sound/i2c/other/snd-ak4114 0x86d53121 snd_ak4114_check_rate_and_errors +EXPORT_SYMBOL sound/i2c/other/snd-ak4114 0xcd619e7b snd_ak4114_build +EXPORT_SYMBOL sound/i2c/other/snd-ak4xxx-adda 0x0020fdf6 snd_akm4xxx_reset +EXPORT_SYMBOL sound/i2c/other/snd-ak4xxx-adda 0x91eef3a2 snd_akm4xxx_build_controls +EXPORT_SYMBOL sound/i2c/other/snd-ak4xxx-adda 0xe3d7ce68 snd_akm4xxx_init +EXPORT_SYMBOL sound/i2c/other/snd-ak4xxx-adda 0xfa9580fb snd_akm4xxx_write +EXPORT_SYMBOL sound/i2c/other/snd-pt2258 0x449da55f snd_pt2258_reset +EXPORT_SYMBOL sound/i2c/other/snd-pt2258 0xe37cbae2 snd_pt2258_build_controls +EXPORT_SYMBOL sound/i2c/snd-cs8427 0x05436710 snd_cs8427_init +EXPORT_SYMBOL sound/i2c/snd-cs8427 0x29b47bac snd_cs8427_create +EXPORT_SYMBOL sound/i2c/snd-cs8427 0x7c31d9ae snd_cs8427_iec958_pcm +EXPORT_SYMBOL sound/i2c/snd-cs8427 0x8a2a3e38 snd_cs8427_iec958_build +EXPORT_SYMBOL sound/i2c/snd-cs8427 0xe0a471fe snd_cs8427_reg_write +EXPORT_SYMBOL sound/i2c/snd-cs8427 0xe4600ae0 snd_cs8427_iec958_active +EXPORT_SYMBOL sound/i2c/snd-i2c 0x0d13931d snd_i2c_device_create +EXPORT_SYMBOL sound/i2c/snd-i2c 0x18a508a1 snd_i2c_readbytes +EXPORT_SYMBOL sound/i2c/snd-i2c 0x49e52653 snd_i2c_sendbytes +EXPORT_SYMBOL sound/i2c/snd-i2c 0x4fca4e48 snd_i2c_probeaddr +EXPORT_SYMBOL sound/i2c/snd-i2c 0x67182330 snd_i2c_device_free +EXPORT_SYMBOL sound/i2c/snd-i2c 0x91bfef1c snd_i2c_bus_create +EXPORT_SYMBOL sound/pci/ac97/snd-ac97-codec 0x0516caea snd_ac97_get_short_name +EXPORT_SYMBOL sound/pci/ac97/snd-ac97-codec 0x118efb83 snd_ac97_update_power +EXPORT_SYMBOL sound/pci/ac97/snd-ac97-codec 0x31b7ab4f snd_ac97_update_bits +EXPORT_SYMBOL sound/pci/ac97/snd-ac97-codec 0x3c52af58 snd_ac97_pcm_assign +EXPORT_SYMBOL sound/pci/ac97/snd-ac97-codec 0x588e16f5 snd_ac97_mixer +EXPORT_SYMBOL sound/pci/ac97/snd-ac97-codec 0x624c1f77 snd_ac97_bus +EXPORT_SYMBOL sound/pci/ac97/snd-ac97-codec 0x7337d299 snd_ac97_pcm_close +EXPORT_SYMBOL sound/pci/ac97/snd-ac97-codec 0x8b0628d7 snd_ac97_read +EXPORT_SYMBOL sound/pci/ac97/snd-ac97-codec 0xab39f3c3 snd_ac97_update +EXPORT_SYMBOL sound/pci/ac97/snd-ac97-codec 0xbaea307f snd_ac97_write +EXPORT_SYMBOL sound/pci/ac97/snd-ac97-codec 0xbbd94852 snd_ac97_write_cache +EXPORT_SYMBOL sound/pci/ac97/snd-ac97-codec 0xbc7430db snd_ac97_set_rate +EXPORT_SYMBOL sound/pci/ac97/snd-ac97-codec 0xc7212cc3 snd_ac97_tune_hardware +EXPORT_SYMBOL sound/pci/ac97/snd-ac97-codec 0xcb4f172c snd_ac97_pcm_open +EXPORT_SYMBOL sound/pci/ac97/snd-ac97-codec 0xdd36c2bb snd_ac97_resume +EXPORT_SYMBOL sound/pci/ac97/snd-ac97-codec 0xe5d3405b snd_ac97_suspend +EXPORT_SYMBOL sound/pci/ac97/snd-ac97-codec 0xe995fa8a snd_ac97_pcm_double_rate_rules +EXPORT_SYMBOL sound/pci/emu10k1/snd-emu10k1 0x03c9fe79 snd_emu10k1_ptr_write +EXPORT_SYMBOL sound/pci/emu10k1/snd-emu10k1 0x29dd2398 snd_emu10k1_ptr_read +EXPORT_SYMBOL sound/pci/emu10k1/snd-emu10k1 0x3b33d2df snd_emu10k1_voice_free +EXPORT_SYMBOL sound/pci/emu10k1/snd-emu10k1 0x580d4a6d snd_emu10k1_memblk_map +EXPORT_SYMBOL sound/pci/emu10k1/snd-emu10k1 0x91d8fcfd snd_emu10k1_voice_alloc +EXPORT_SYMBOL sound/pci/emu10k1/snd-emu10k1 0xc098fe62 snd_emu10k1_synth_copy_from_user +EXPORT_SYMBOL sound/pci/emu10k1/snd-emu10k1 0xc665dce3 snd_emu10k1_synth_bzero +EXPORT_SYMBOL sound/pci/emu10k1/snd-emu10k1 0xd9c1bc25 snd_emu10k1_synth_alloc +EXPORT_SYMBOL sound/pci/emu10k1/snd-emu10k1 0xe1e80db8 snd_emu10k1_synth_free +EXPORT_SYMBOL sound/pci/ice1712/snd-ice17xx-ak4xxx 0x61271feb snd_ice1712_akm4xxx_build_controls +EXPORT_SYMBOL sound/pci/ice1712/snd-ice17xx-ak4xxx 0xa1b2ed3c snd_ice1712_akm4xxx_init +EXPORT_SYMBOL sound/pci/ice1712/snd-ice17xx-ak4xxx 0xcb0b601c snd_ice1712_akm4xxx_free +EXPORT_SYMBOL sound/pci/oxygen/snd-oxygen-lib 0x08f3de7d oxygen_write_spi +EXPORT_SYMBOL sound/pci/oxygen/snd-oxygen-lib 0x0b1ad63c oxygen_update_dac_routing +EXPORT_SYMBOL sound/pci/oxygen/snd-oxygen-lib 0x1e62c75d oxygen_write_uart +EXPORT_SYMBOL sound/pci/oxygen/snd-oxygen-lib 0x2489e7b5 oxygen_write32_masked +EXPORT_SYMBOL sound/pci/oxygen/snd-oxygen-lib 0x28405bd0 oxygen_read16 +EXPORT_SYMBOL sound/pci/oxygen/snd-oxygen-lib 0x3340a7c7 oxygen_write8 +EXPORT_SYMBOL sound/pci/oxygen/snd-oxygen-lib 0x35ede692 oxygen_read8 +EXPORT_SYMBOL sound/pci/oxygen/snd-oxygen-lib 0x41314710 oxygen_reset_uart +EXPORT_SYMBOL sound/pci/oxygen/snd-oxygen-lib 0x49b3941b oxygen_write_ac97_masked +EXPORT_SYMBOL sound/pci/oxygen/snd-oxygen-lib 0x69a3881a oxygen_write16 +EXPORT_SYMBOL sound/pci/oxygen/snd-oxygen-lib 0x6d15fe86 oxygen_write_ac97 +EXPORT_SYMBOL sound/pci/oxygen/snd-oxygen-lib 0x83ef515a oxygen_read32 +EXPORT_SYMBOL sound/pci/oxygen/snd-oxygen-lib 0xa8f2e962 oxygen_write_i2c +EXPORT_SYMBOL sound/pci/oxygen/snd-oxygen-lib 0xabc513a4 oxygen_pci_pm +EXPORT_SYMBOL sound/pci/oxygen/snd-oxygen-lib 0xb0b0da5d oxygen_pci_remove +EXPORT_SYMBOL sound/pci/oxygen/snd-oxygen-lib 0xb8c44e86 oxygen_read_ac97 +EXPORT_SYMBOL sound/pci/oxygen/snd-oxygen-lib 0xc2ded0f0 oxygen_write8_masked +EXPORT_SYMBOL sound/pci/oxygen/snd-oxygen-lib 0xcc1e4d58 oxygen_pci_shutdown +EXPORT_SYMBOL sound/pci/oxygen/snd-oxygen-lib 0xce91e480 oxygen_write32 +EXPORT_SYMBOL sound/pci/oxygen/snd-oxygen-lib 0xce985162 oxygen_write16_masked +EXPORT_SYMBOL sound/pci/oxygen/snd-oxygen-lib 0xdb2811f2 oxygen_pci_probe +EXPORT_SYMBOL sound/pci/trident/snd-trident 0x6ade437c snd_trident_start_voice +EXPORT_SYMBOL sound/pci/trident/snd-trident 0xb4adfccd snd_trident_stop_voice +EXPORT_SYMBOL sound/pci/trident/snd-trident 0xbbca7e4a snd_trident_write_voice_regs +EXPORT_SYMBOL sound/pci/trident/snd-trident 0xc44d5b06 snd_trident_free_voice +EXPORT_SYMBOL sound/pci/trident/snd-trident 0xe4edff0b snd_trident_alloc_voice +EXPORT_SYMBOL sound/soc/amd/acp_audio_dma 0xea74f232 bt_uart_enable +EXPORT_SYMBOL sound/soc/codecs/snd-soc-pcm3060 0x9c146833 pcm3060_regmap +EXPORT_SYMBOL sound/soc/codecs/snd-soc-pcm3060 0xa6430e04 pcm3060_probe +EXPORT_SYMBOL sound/soc/codecs/snd-soc-rt715 0xed2acb24 hda_to_sdw +EXPORT_SYMBOL sound/soc/codecs/snd-soc-tlv320aic23 0x03c11991 tlv320aic23_probe +EXPORT_SYMBOL sound/soc/codecs/snd-soc-tlv320aic23 0x37993dbe tlv320aic23_regmap +EXPORT_SYMBOL sound/soc/codecs/snd-soc-tlv320aic32x4 0x65cce105 aic32x4_probe +EXPORT_SYMBOL sound/soc/codecs/snd-soc-tlv320aic32x4 0xb793f82b aic32x4_remove +EXPORT_SYMBOL sound/soc/codecs/snd-soc-tlv320aic32x4 0xe4638ae8 aic32x4_regmap_config +EXPORT_SYMBOL sound/soc/qcom/snd-soc-qcom-common 0x81b8da06 qcom_snd_parse_of +EXPORT_SYMBOL sound/soc/snd-soc-core 0x52c3cfdb snd_soc_alloc_ac97_component +EXPORT_SYMBOL sound/soc/sof/imx/snd-sof-imx8 0x4cac319d sof_imx8x_ops +EXPORT_SYMBOL sound/soc/sof/imx/snd-sof-imx8 0x87b40f52 sof_imx8_ops +EXPORT_SYMBOL sound/soc/sof/imx/snd-sof-imx8m 0xbadfc4f4 sof_imx8m_ops +EXPORT_SYMBOL sound/soc/sof/snd-sof 0x061162ed snd_sof_dsp_only_d0i3_compatible_stream_active +EXPORT_SYMBOL sound/soc/sof/snd-sof 0x07f0c73e snd_sof_ipc_free +EXPORT_SYMBOL sound/soc/sof/snd-sof 0x1c62ea9c snd_sof_device_probe +EXPORT_SYMBOL sound/soc/sof/snd-sof 0x1d22a5ea sof_ipc_tx_message_no_pm +EXPORT_SYMBOL sound/soc/sof/snd-sof 0x2339d4a3 sof_io_write64 +EXPORT_SYMBOL sound/soc/sof/snd-sof 0x23c65c91 sof_io_read +EXPORT_SYMBOL sound/soc/sof/snd-sof 0x2711ff2d snd_sof_load_firmware_raw +EXPORT_SYMBOL sound/soc/sof/snd-sof 0x296345d5 sof_io_read64 +EXPORT_SYMBOL sound/soc/sof/snd-sof 0x2a238a4f sof_block_write +EXPORT_SYMBOL sound/soc/sof/snd-sof 0x2aa099a4 snd_sof_load_topology +EXPORT_SYMBOL sound/soc/sof/snd-sof 0x32d9e169 snd_sof_resume +EXPORT_SYMBOL sound/soc/sof/snd-sof 0x456dee42 snd_sof_run_firmware +EXPORT_SYMBOL sound/soc/sof/snd-sof 0x4ce43948 snd_sof_handle_fw_exception +EXPORT_SYMBOL sound/soc/sof/snd-sof 0x594e2867 snd_sof_pcm_period_elapsed +EXPORT_SYMBOL sound/soc/sof/snd-sof 0x5e6c4308 snd_sof_load_firmware_memcpy +EXPORT_SYMBOL sound/soc/sof/snd-sof 0x627fec55 snd_sof_prepare +EXPORT_SYMBOL sound/soc/sof/snd-sof 0x6683cb50 snd_sof_ipc_init +EXPORT_SYMBOL sound/soc/sof/snd-sof 0x67dddc1e snd_sof_init_trace +EXPORT_SYMBOL sound/soc/sof/snd-sof 0x6d67ee93 sof_machine_check +EXPORT_SYMBOL sound/soc/sof/snd-sof 0x6e544cc7 sof_mailbox_read +EXPORT_SYMBOL sound/soc/sof/snd-sof 0x73f03ca3 snd_sof_dsp_panic +EXPORT_SYMBOL sound/soc/sof/snd-sof 0x7725dc37 sof_block_read +EXPORT_SYMBOL sound/soc/sof/snd-sof 0x795ee2c1 snd_sof_dsp_update_bits64_unlocked +EXPORT_SYMBOL sound/soc/sof/snd-sof 0x8abea885 snd_sof_parse_module_memcpy +EXPORT_SYMBOL sound/soc/sof/snd-sof 0x9836148b sof_machine_register +EXPORT_SYMBOL sound/soc/sof/snd-sof 0x9be2a6b4 snd_sof_get_status +EXPORT_SYMBOL sound/soc/sof/snd-sof 0x9f126fea snd_sof_dsp_update_bits_forced +EXPORT_SYMBOL sound/soc/sof/snd-sof 0xa144a5de sof_mailbox_write +EXPORT_SYMBOL sound/soc/sof/snd-sof 0xa1fb0a75 snd_sof_release_trace +EXPORT_SYMBOL sound/soc/sof/snd-sof 0xa38cce7c snd_sof_trace_notify_for_error +EXPORT_SYMBOL sound/soc/sof/snd-sof 0xab0fcd47 snd_sof_dsp_update_bits64 +EXPORT_SYMBOL sound/soc/sof/snd-sof 0xad20fdd8 snd_sof_create_page_table +EXPORT_SYMBOL sound/soc/sof/snd-sof 0xad531da3 sof_fw_ready +EXPORT_SYMBOL sound/soc/sof/snd-sof 0xb1a1c1aa sof_machine_unregister +EXPORT_SYMBOL sound/soc/sof/snd-sof 0xb5d02496 snd_sof_device_remove +EXPORT_SYMBOL sound/soc/sof/snd-sof 0xb8732854 snd_sof_runtime_idle +EXPORT_SYMBOL sound/soc/sof/snd-sof 0xbf441fe8 snd_sof_load_firmware +EXPORT_SYMBOL sound/soc/sof/snd-sof 0xc66824c0 sof_io_write +EXPORT_SYMBOL sound/soc/sof/snd-sof 0xc6a30604 snd_sof_free_trace +EXPORT_SYMBOL sound/soc/sof/snd-sof 0xc6b53798 snd_sof_dsp_update_bits +EXPORT_SYMBOL sound/soc/sof/snd-sof 0xca066e82 snd_sof_runtime_resume +EXPORT_SYMBOL sound/soc/sof/snd-sof 0xcd174792 snd_sof_dsp_mailbox_init +EXPORT_SYMBOL sound/soc/sof/snd-sof 0xcedce89c snd_sof_ipc_reply +EXPORT_SYMBOL sound/soc/sof/snd-sof 0xcfdc5f98 sof_ipc_tx_message +EXPORT_SYMBOL sound/soc/sof/snd-sof 0xd0eb416f snd_sof_fw_unload +EXPORT_SYMBOL sound/soc/sof/snd-sof 0xd6e9e6c0 snd_sof_suspend +EXPORT_SYMBOL sound/soc/sof/snd-sof 0xd6f83644 snd_sof_pci_update_bits +EXPORT_SYMBOL sound/soc/sof/snd-sof 0xdbd3a57c snd_sof_ipc_set_get_comp_data +EXPORT_SYMBOL sound/soc/sof/snd-sof 0xe1c902bf snd_sof_runtime_suspend +EXPORT_SYMBOL sound/soc/sof/snd-sof 0xe32102bd snd_sof_fw_parse_ext_data +EXPORT_SYMBOL sound/soc/sof/snd-sof 0xe5bdd0e7 snd_sof_ipc_valid +EXPORT_SYMBOL sound/soc/sof/snd-sof 0xeff60ed4 snd_sof_dsp_update_bits_unlocked +EXPORT_SYMBOL sound/soc/sof/snd-sof 0xf0bacbff snd_sof_complete +EXPORT_SYMBOL sound/soc/sof/snd-sof 0xf55d13a0 snd_sof_ipc_stream_posn +EXPORT_SYMBOL sound/soc/sof/snd-sof 0xf7943e9f snd_sof_ipc_msgs_rx +EXPORT_SYMBOL sound/soundcore 0x0d7916ad register_sound_special +EXPORT_SYMBOL sound/soundcore 0x327e019d register_sound_special_device +EXPORT_SYMBOL sound/soundcore 0x64cf82b9 register_sound_dsp +EXPORT_SYMBOL sound/soundcore 0x7afc9d8a unregister_sound_mixer +EXPORT_SYMBOL sound/soundcore 0x895159e4 register_sound_mixer +EXPORT_SYMBOL sound/soundcore 0x99c95fa5 unregister_sound_special +EXPORT_SYMBOL sound/soundcore 0xcc3c10f9 sound_class +EXPORT_SYMBOL sound/soundcore 0xcd083b10 unregister_sound_dsp +EXPORT_SYMBOL sound/synth/emux/snd-emux-synth 0x03559191 snd_emux_lock_voice +EXPORT_SYMBOL sound/synth/emux/snd-emux-synth 0x655cb202 snd_sf_linear_to_log +EXPORT_SYMBOL sound/synth/emux/snd-emux-synth 0x6acb7cd6 snd_emux_register +EXPORT_SYMBOL sound/synth/emux/snd-emux-synth 0x6b79b05d snd_emux_free +EXPORT_SYMBOL sound/synth/emux/snd-emux-synth 0x99a6e77d snd_emux_unlock_voice +EXPORT_SYMBOL sound/synth/emux/snd-emux-synth 0xac3d9a8a snd_emux_new +EXPORT_SYMBOL sound/synth/emux/snd-emux-synth 0xcb779039 snd_emux_terminate_all +EXPORT_SYMBOL sound/synth/snd-util-mem 0x293ac667 snd_util_mem_free +EXPORT_SYMBOL sound/synth/snd-util-mem 0x34ac95ae snd_util_memhdr_new +EXPORT_SYMBOL sound/synth/snd-util-mem 0x48f920c4 __snd_util_mem_alloc +EXPORT_SYMBOL sound/synth/snd-util-mem 0x7d95566f snd_util_mem_avail +EXPORT_SYMBOL sound/synth/snd-util-mem 0x85659341 snd_util_mem_alloc +EXPORT_SYMBOL sound/synth/snd-util-mem 0x97bb24f2 __snd_util_memblk_new +EXPORT_SYMBOL sound/synth/snd-util-mem 0x9db98086 __snd_util_mem_free +EXPORT_SYMBOL sound/synth/snd-util-mem 0xe2935f8c snd_util_memhdr_free +EXPORT_SYMBOL sound/usb/snd-usbmidi-lib 0x0ac9a092 __snd_usbmidi_create +EXPORT_SYMBOL sound/usb/snd-usbmidi-lib 0x16756dc0 snd_usbmidi_input_start +EXPORT_SYMBOL sound/usb/snd-usbmidi-lib 0x63343b1d snd_usbmidi_input_stop +EXPORT_SYMBOL sound/usb/snd-usbmidi-lib 0xb2af19e1 snd_usbmidi_resume +EXPORT_SYMBOL sound/usb/snd-usbmidi-lib 0xbed43a41 snd_usbmidi_suspend +EXPORT_SYMBOL sound/usb/snd-usbmidi-lib 0xd9d2bb03 snd_usbmidi_disconnect +EXPORT_SYMBOL vmlinux 0x000bf5f0 inet_csk_prepare_forced_close +EXPORT_SYMBOL vmlinux 0x001d84ab page_frag_alloc +EXPORT_SYMBOL vmlinux 0x0026c4e3 simple_unlink +EXPORT_SYMBOL vmlinux 0x002711a3 sock_set_reuseport +EXPORT_SYMBOL vmlinux 0x0049d7fb unregister_nls +EXPORT_SYMBOL vmlinux 0x0051c840 ipv6_chk_addr_and_flags +EXPORT_SYMBOL vmlinux 0x00748133 from_kuid_munged +EXPORT_SYMBOL vmlinux 0x0083bcfe dev_driver_string +EXPORT_SYMBOL vmlinux 0x0088d6a8 crypto_sha1_finup +EXPORT_SYMBOL vmlinux 0x00928200 trace_print_hex_dump_seq +EXPORT_SYMBOL vmlinux 0x0097576f rtc_add_groups +EXPORT_SYMBOL vmlinux 0x0098dfe9 security_binder_set_context_mgr +EXPORT_SYMBOL vmlinux 0x00a216e5 xfrm_find_acq +EXPORT_SYMBOL vmlinux 0x00a53320 rproc_get_by_phandle +EXPORT_SYMBOL vmlinux 0x00add6a4 proc_mkdir +EXPORT_SYMBOL vmlinux 0x00b4e615 posix_acl_equiv_mode +EXPORT_SYMBOL vmlinux 0x00d7e722 vme_lm_count +EXPORT_SYMBOL vmlinux 0x00f5ca13 peernet2id +EXPORT_SYMBOL vmlinux 0x00fc4ebc nd_dev_to_uuid +EXPORT_SYMBOL vmlinux 0x01000e51 schedule +EXPORT_SYMBOL vmlinux 0x0107218c tty_hung_up_p +EXPORT_SYMBOL vmlinux 0x01238305 padata_alloc_possible +EXPORT_SYMBOL vmlinux 0x0129c4f8 par_io_data_set +EXPORT_SYMBOL vmlinux 0x012c8c9c fs_context_for_reconfigure +EXPORT_SYMBOL vmlinux 0x012de2ea xudma_rchanrt_read +EXPORT_SYMBOL vmlinux 0x01324852 flow_rule_match_meta +EXPORT_SYMBOL vmlinux 0x013dae95 iw_handler_get_thrspy +EXPORT_SYMBOL vmlinux 0x013db260 pcie_capability_clear_and_set_dword +EXPORT_SYMBOL vmlinux 0x013f26ae dma_fence_get_stub +EXPORT_SYMBOL vmlinux 0x0147812c kblockd_mod_delayed_work_on +EXPORT_SYMBOL vmlinux 0x01505d85 imx_scu_call_rpc +EXPORT_SYMBOL vmlinux 0x01553371 vm_brk_flags +EXPORT_SYMBOL vmlinux 0x015810c0 security_sb_remount +EXPORT_SYMBOL vmlinux 0x015af7f4 system_state +EXPORT_SYMBOL vmlinux 0x016da741 devm_gen_pool_create +EXPORT_SYMBOL vmlinux 0x01757935 rdmacg_register_device +EXPORT_SYMBOL vmlinux 0x01790e94 csum_partial_copy +EXPORT_SYMBOL vmlinux 0x0179ae8f netpoll_poll_dev +EXPORT_SYMBOL vmlinux 0x017de3d5 nr_cpu_ids +EXPORT_SYMBOL vmlinux 0x0180170a __skb_vlan_pop +EXPORT_SYMBOL vmlinux 0x018574a1 mb_cache_entry_delete +EXPORT_SYMBOL vmlinux 0x0188cd88 vme_alloc_consistent +EXPORT_SYMBOL vmlinux 0x0194b91b devfreq_update_status +EXPORT_SYMBOL vmlinux 0x019623a0 vmf_insert_mixed +EXPORT_SYMBOL vmlinux 0x01b6865c xa_get_mark +EXPORT_SYMBOL vmlinux 0x01bf55fc paddr_vmcoreinfo_note +EXPORT_SYMBOL vmlinux 0x01c9b37b simple_dentry_operations +EXPORT_SYMBOL vmlinux 0x01de1136 uart_get_divisor +EXPORT_SYMBOL vmlinux 0x01eeacab tcf_idr_create_from_flags +EXPORT_SYMBOL vmlinux 0x01f8164f blk_integrity_merge_bio +EXPORT_SYMBOL vmlinux 0x01fb86ce neigh_xmit +EXPORT_SYMBOL vmlinux 0x0207fe6a sock_gettstamp +EXPORT_SYMBOL vmlinux 0x020b88fb of_io_request_and_map +EXPORT_SYMBOL vmlinux 0x020dbf27 bitmap_alloc +EXPORT_SYMBOL vmlinux 0x02124474 ip_send_check +EXPORT_SYMBOL vmlinux 0x02229f56 blkdev_get_by_path +EXPORT_SYMBOL vmlinux 0x02293ac3 dma_fence_chain_ops +EXPORT_SYMBOL vmlinux 0x0233b877 unregister_quota_format +EXPORT_SYMBOL vmlinux 0x02403229 nvdimm_namespace_disk_name +EXPORT_SYMBOL vmlinux 0x024f5ade kernel_sock_ip_overhead +EXPORT_SYMBOL vmlinux 0x025483b1 set_current_groups +EXPORT_SYMBOL vmlinux 0x0274dc2b netif_get_num_default_rss_queues +EXPORT_SYMBOL vmlinux 0x02896499 dma_async_device_unregister +EXPORT_SYMBOL vmlinux 0x028b766b acpi_dev_get_first_match_dev +EXPORT_SYMBOL vmlinux 0x0296695f refcount_warn_saturate +EXPORT_SYMBOL vmlinux 0x0298aedd mdiobus_read +EXPORT_SYMBOL vmlinux 0x02a18c74 nf_conntrack_destroy +EXPORT_SYMBOL vmlinux 0x02a3b6d1 sk_send_sigurg +EXPORT_SYMBOL vmlinux 0x02b4b46c dquot_transfer +EXPORT_SYMBOL vmlinux 0x02b8ab42 sg_copy_to_buffer +EXPORT_SYMBOL vmlinux 0x02c065f8 ucc_set_qe_mux_mii_mng +EXPORT_SYMBOL vmlinux 0x02d25e0c pci_request_regions +EXPORT_SYMBOL vmlinux 0x02d35af8 scsi_vpd_lun_id +EXPORT_SYMBOL vmlinux 0x02dcfa72 dst_release +EXPORT_SYMBOL vmlinux 0x02e6a3a0 ppp_unregister_channel +EXPORT_SYMBOL vmlinux 0x02ea111e scsi_driverbyte_string +EXPORT_SYMBOL vmlinux 0x02f9f036 tcf_block_put +EXPORT_SYMBOL vmlinux 0x02fe7d49 iov_iter_npages +EXPORT_SYMBOL vmlinux 0x030167d4 xfrm6_rcv_encap +EXPORT_SYMBOL vmlinux 0x0315b37d uart_unregister_driver +EXPORT_SYMBOL vmlinux 0x03177852 _dev_info +EXPORT_SYMBOL vmlinux 0x0334795d icst307_s2div +EXPORT_SYMBOL vmlinux 0x0334da4e scsi_command_size_tbl +EXPORT_SYMBOL vmlinux 0x033b2902 skb_set_owner_w +EXPORT_SYMBOL vmlinux 0x034b90b4 mmc_of_parse +EXPORT_SYMBOL vmlinux 0x0354e36b __splice_from_pipe +EXPORT_SYMBOL vmlinux 0x0366307a console_suspend_enabled +EXPORT_SYMBOL vmlinux 0x037943bb kmem_cache_free +EXPORT_SYMBOL vmlinux 0x037a0cba kfree +EXPORT_SYMBOL vmlinux 0x037d163e vm_map_ram +EXPORT_SYMBOL vmlinux 0x03815f35 ledtrig_disk_activity +EXPORT_SYMBOL vmlinux 0x0386336a page_pool_update_nid +EXPORT_SYMBOL vmlinux 0x0397edd5 fb_edid_to_monspecs +EXPORT_SYMBOL vmlinux 0x03c87223 deactivate_super +EXPORT_SYMBOL vmlinux 0x03fd2571 vm_unmap_ram +EXPORT_SYMBOL vmlinux 0x03feea40 cpumask_next +EXPORT_SYMBOL vmlinux 0x0428cd94 nf_unregister_sockopt +EXPORT_SYMBOL vmlinux 0x042f6bd7 pnp_possible_config +EXPORT_SYMBOL vmlinux 0x043958e8 phy_read_mmd +EXPORT_SYMBOL vmlinux 0x04482cdb __refrigerator +EXPORT_SYMBOL vmlinux 0x045c77e0 mipi_dsi_dcs_set_tear_off +EXPORT_SYMBOL vmlinux 0x04673adb qman_ip_rev +EXPORT_SYMBOL vmlinux 0x04678202 __neigh_create +EXPORT_SYMBOL vmlinux 0x046e2d79 migrate_page +EXPORT_SYMBOL vmlinux 0x0470bc5f ip_sock_set_freebind +EXPORT_SYMBOL vmlinux 0x047ec778 zpool_unregister_driver +EXPORT_SYMBOL vmlinux 0x0484c6c4 acpi_enter_sleep_state_prep +EXPORT_SYMBOL vmlinux 0x04863e28 hdmi_audio_infoframe_pack_only +EXPORT_SYMBOL vmlinux 0x0490b80b phy_mac_interrupt +EXPORT_SYMBOL vmlinux 0x04c959d2 xfrm_register_type +EXPORT_SYMBOL vmlinux 0x04db5cfe dquot_claim_space_nodirty +EXPORT_SYMBOL vmlinux 0x04e67982 iterate_fd +EXPORT_SYMBOL vmlinux 0x04ea56f9 _kstrtol +EXPORT_SYMBOL vmlinux 0x04ea5d10 ksize +EXPORT_SYMBOL vmlinux 0x04ecf64b kfree_skb_list +EXPORT_SYMBOL vmlinux 0x04f87234 gro_find_receive_by_type +EXPORT_SYMBOL vmlinux 0x05032b11 dma_alloc_attrs +EXPORT_SYMBOL vmlinux 0x0507fe48 ethtool_notify +EXPORT_SYMBOL vmlinux 0x050877b9 dmi_first_match +EXPORT_SYMBOL vmlinux 0x0512dc82 pcie_capability_clear_and_set_word +EXPORT_SYMBOL vmlinux 0x051d58e8 dma_fence_wait_any_timeout +EXPORT_SYMBOL vmlinux 0x05235687 phy_ethtool_set_eee +EXPORT_SYMBOL vmlinux 0x05240ee7 percpu_counter_batch +EXPORT_SYMBOL vmlinux 0x05288281 kmem_cache_destroy +EXPORT_SYMBOL vmlinux 0x0534e391 seg6_hmac_validate_skb +EXPORT_SYMBOL vmlinux 0x05367b85 udp_sendmsg +EXPORT_SYMBOL vmlinux 0x054496b4 schedule_timeout_interruptible +EXPORT_SYMBOL vmlinux 0x054ae357 fs_param_is_bool +EXPORT_SYMBOL vmlinux 0x0558db12 mr_table_dump +EXPORT_SYMBOL vmlinux 0x055e77e8 jiffies_64 +EXPORT_SYMBOL vmlinux 0x05664fe8 acpi_notifier_call_chain +EXPORT_SYMBOL vmlinux 0x05693be9 flow_rule_match_enc_ipv4_addrs +EXPORT_SYMBOL vmlinux 0x058ac189 icmpv6_ndo_send +EXPORT_SYMBOL vmlinux 0x059860f5 scsi_ioctl +EXPORT_SYMBOL vmlinux 0x05a104d3 keyring_search +EXPORT_SYMBOL vmlinux 0x05ac9f68 iommu_dma_get_resv_regions +EXPORT_SYMBOL vmlinux 0x05b584a5 pci_select_bars +EXPORT_SYMBOL vmlinux 0x05ba04bb scsi_is_host_device +EXPORT_SYMBOL vmlinux 0x05f82e3f dev_uc_flush +EXPORT_SYMBOL vmlinux 0x05fddd39 drop_super_exclusive +EXPORT_SYMBOL vmlinux 0x060ba97c gen_pool_free_owner +EXPORT_SYMBOL vmlinux 0x061358aa seq_pad +EXPORT_SYMBOL vmlinux 0x061651be strcat +EXPORT_SYMBOL vmlinux 0x0620e367 register_shrinker +EXPORT_SYMBOL vmlinux 0x06292c12 pci_bus_write_config_dword +EXPORT_SYMBOL vmlinux 0x0634100a bitmap_parselist_user +EXPORT_SYMBOL vmlinux 0x0647ec77 dma_direct_sync_single_for_cpu +EXPORT_SYMBOL vmlinux 0x065246b8 frame_vector_create +EXPORT_SYMBOL vmlinux 0x0684222e devm_ioport_unmap +EXPORT_SYMBOL vmlinux 0x069d16cc audit_log_start +EXPORT_SYMBOL vmlinux 0x06bd88b5 ucs2_strnlen +EXPORT_SYMBOL vmlinux 0x06c8f2de slhc_compress +EXPORT_SYMBOL vmlinux 0x06c95d63 jbd2__journal_restart +EXPORT_SYMBOL vmlinux 0x06d77957 iov_iter_bvec +EXPORT_SYMBOL vmlinux 0x06d7d1a8 blkdev_get +EXPORT_SYMBOL vmlinux 0x06e2a4da netpoll_send_skb +EXPORT_SYMBOL vmlinux 0x06f08e78 igrab +EXPORT_SYMBOL vmlinux 0x06f66827 of_find_property +EXPORT_SYMBOL vmlinux 0x07123ed2 disk_start_io_acct +EXPORT_SYMBOL vmlinux 0x072f901c vme_master_rmw +EXPORT_SYMBOL vmlinux 0x073e3328 param_set_short +EXPORT_SYMBOL vmlinux 0x0745a981 xa_erase +EXPORT_SYMBOL vmlinux 0x077c4fc5 fs_param_is_enum +EXPORT_SYMBOL vmlinux 0x0781ec97 logic_insl +EXPORT_SYMBOL vmlinux 0x07a0564d simple_rmdir +EXPORT_SYMBOL vmlinux 0x07a56f0c of_node_name_eq +EXPORT_SYMBOL vmlinux 0x07a890c8 fb_alloc_cmap +EXPORT_SYMBOL vmlinux 0x07cc4a5d printk_timed_ratelimit +EXPORT_SYMBOL vmlinux 0x07ceeac9 panic_notifier_list +EXPORT_SYMBOL vmlinux 0x07e4cee3 call_fib_notifiers +EXPORT_SYMBOL vmlinux 0x07e61fd6 security_unix_stream_connect +EXPORT_SYMBOL vmlinux 0x07f57478 pci_unmap_iospace +EXPORT_SYMBOL vmlinux 0x0805f2c8 ecryptfs_get_auth_tok_key +EXPORT_SYMBOL vmlinux 0x08162c74 free_bucket_spinlocks +EXPORT_SYMBOL vmlinux 0x08249512 iwe_stream_add_point +EXPORT_SYMBOL vmlinux 0x08288653 pci_disable_msix +EXPORT_SYMBOL vmlinux 0x082ae429 __sk_mem_reclaim +EXPORT_SYMBOL vmlinux 0x082c3213 pci_root_buses +EXPORT_SYMBOL vmlinux 0x08356f32 fman_sp_set_buf_pools_in_asc_order_of_buf_sizes +EXPORT_SYMBOL vmlinux 0x083eb21c rfkill_unregister +EXPORT_SYMBOL vmlinux 0x085bec4c generic_pipe_buf_release +EXPORT_SYMBOL vmlinux 0x085c5318 posix_test_lock +EXPORT_SYMBOL vmlinux 0x086f0194 bio_alloc_bioset +EXPORT_SYMBOL vmlinux 0x087124e9 __skb_flow_dissect +EXPORT_SYMBOL vmlinux 0x08779d49 rtnl_notify +EXPORT_SYMBOL vmlinux 0x0882a449 security_xfrm_policy_alloc +EXPORT_SYMBOL vmlinux 0x08844e84 blk_execute_rq +EXPORT_SYMBOL vmlinux 0x08b62d11 mipi_dsi_dcs_set_tear_on +EXPORT_SYMBOL vmlinux 0x08cbc218 devm_rproc_add +EXPORT_SYMBOL vmlinux 0x08e39398 cmd_db_read_addr +EXPORT_SYMBOL vmlinux 0x090b29ad blk_queue_io_opt +EXPORT_SYMBOL vmlinux 0x092e26bf acpi_remove_address_space_handler +EXPORT_SYMBOL vmlinux 0x093712e5 acpi_purge_cached_objects +EXPORT_SYMBOL vmlinux 0x09413acb sockfd_lookup +EXPORT_SYMBOL vmlinux 0x0964e311 inet_confirm_addr +EXPORT_SYMBOL vmlinux 0x09682235 down_timeout +EXPORT_SYMBOL vmlinux 0x09769037 dmt_modes +EXPORT_SYMBOL vmlinux 0x097af021 neigh_proc_dointvec_jiffies +EXPORT_SYMBOL vmlinux 0x097e6428 sync_filesystem +EXPORT_SYMBOL vmlinux 0x098b71c6 fb_dealloc_cmap +EXPORT_SYMBOL vmlinux 0x09935860 iw_handler_set_thrspy +EXPORT_SYMBOL vmlinux 0x099597c0 pci_find_capability +EXPORT_SYMBOL vmlinux 0x0996c06b tcp_sock_set_keepidle +EXPORT_SYMBOL vmlinux 0x099dad30 filemap_fdatawrite +EXPORT_SYMBOL vmlinux 0x09a1c828 __xfrm_state_delete +EXPORT_SYMBOL vmlinux 0x09a74001 dm_io +EXPORT_SYMBOL vmlinux 0x09c8eb55 font_vga_8x16 +EXPORT_SYMBOL vmlinux 0x09d44df9 in_lock_functions +EXPORT_SYMBOL vmlinux 0x09d7af2e soft_cursor +EXPORT_SYMBOL vmlinux 0x09da0ba4 xa_set_mark +EXPORT_SYMBOL vmlinux 0x09f32699 _copy_from_iter_full_nocache +EXPORT_SYMBOL vmlinux 0x09f9b261 xudma_rchan_put +EXPORT_SYMBOL vmlinux 0x0a0ebc08 __xa_cmpxchg +EXPORT_SYMBOL vmlinux 0x0a165671 dev_addr_add +EXPORT_SYMBOL vmlinux 0x0a1dbc76 tcp_rx_skb_cache_key +EXPORT_SYMBOL vmlinux 0x0a292872 reservation_seqcount_class +EXPORT_SYMBOL vmlinux 0x0a34e06c inet_twsk_deschedule_put +EXPORT_SYMBOL vmlinux 0x0a4da22e pci_enable_atomic_ops_to_root +EXPORT_SYMBOL vmlinux 0x0a5093ae sg_miter_skip +EXPORT_SYMBOL vmlinux 0x0a5e9fb4 ip6_err_gen_icmpv6_unreach +EXPORT_SYMBOL vmlinux 0x0a68da08 xfrm_dev_state_flush +EXPORT_SYMBOL vmlinux 0x0a6eaef4 blk_alloc_queue +EXPORT_SYMBOL vmlinux 0x0a721302 padata_stop +EXPORT_SYMBOL vmlinux 0x0a770832 register_memory_notifier +EXPORT_SYMBOL vmlinux 0x0a87535a md_handle_request +EXPORT_SYMBOL vmlinux 0x0a882022 kernel_param_lock +EXPORT_SYMBOL vmlinux 0x0aa309cf synchronize_hardirq +EXPORT_SYMBOL vmlinux 0x0aaccc92 pci_remap_iospace +EXPORT_SYMBOL vmlinux 0x0ac7fe0a input_set_max_poll_interval +EXPORT_SYMBOL vmlinux 0x0acf7679 dma_issue_pending_all +EXPORT_SYMBOL vmlinux 0x0ae55cc5 __ethtool_get_link_ksettings +EXPORT_SYMBOL vmlinux 0x0aeccebb neigh_direct_output +EXPORT_SYMBOL vmlinux 0x0af20eae down_read_interruptible +EXPORT_SYMBOL vmlinux 0x0b1beb31 vmalloc_32_user +EXPORT_SYMBOL vmlinux 0x0b26b8c8 acpi_run_osc +EXPORT_SYMBOL vmlinux 0x0b290ada dma_fence_chain_walk +EXPORT_SYMBOL vmlinux 0x0b2cb334 psched_ratecfg_precompute +EXPORT_SYMBOL vmlinux 0x0b30f0be set_security_override_from_ctx +EXPORT_SYMBOL vmlinux 0x0b32dfda __cgroup_bpf_run_filter_sock_ops +EXPORT_SYMBOL vmlinux 0x0b43dadf free_inode_nonrcu +EXPORT_SYMBOL vmlinux 0x0b57fb80 pci_scan_root_bus_bridge +EXPORT_SYMBOL vmlinux 0x0b58aaa4 get_tree_nodev +EXPORT_SYMBOL vmlinux 0x0b5e7162 configfs_remove_default_groups +EXPORT_SYMBOL vmlinux 0x0b61501b flush_signals +EXPORT_SYMBOL vmlinux 0x0b61f01c crypto_sha1_update +EXPORT_SYMBOL vmlinux 0x0b6e04f2 vlan_dev_vlan_id +EXPORT_SYMBOL vmlinux 0x0b742fd7 simple_strtol +EXPORT_SYMBOL vmlinux 0x0b811430 scsi_unblock_requests +EXPORT_SYMBOL vmlinux 0x0ba4a3aa __cleancache_invalidate_page +EXPORT_SYMBOL vmlinux 0x0bba71ca csum_and_copy_from_iter +EXPORT_SYMBOL vmlinux 0x0bc45e90 dev_get_by_index +EXPORT_SYMBOL vmlinux 0x0bc477a2 irq_set_irq_type +EXPORT_SYMBOL vmlinux 0x0bd707a5 i2c_smbus_write_word_data +EXPORT_SYMBOL vmlinux 0x0bdd5998 tty_port_put +EXPORT_SYMBOL vmlinux 0x0bee6167 clk_get +EXPORT_SYMBOL vmlinux 0x0bf1dc2d __skb_gso_segment +EXPORT_SYMBOL vmlinux 0x0c0f79af ZSTD_getDictID_fromFrame +EXPORT_SYMBOL vmlinux 0x0c20a37e alloc_xenballooned_pages +EXPORT_SYMBOL vmlinux 0x0c25ec48 secure_tcpv6_seq +EXPORT_SYMBOL vmlinux 0x0c28e29b md_error +EXPORT_SYMBOL vmlinux 0x0c291a15 seq_write +EXPORT_SYMBOL vmlinux 0x0c490005 rproc_coredump_add_custom_segment +EXPORT_SYMBOL vmlinux 0x0c5b15c3 mmc_gpiod_request_cd +EXPORT_SYMBOL vmlinux 0x0c66fbb3 nd_namespace_blk_validate +EXPORT_SYMBOL vmlinux 0x0c6bdc3f vme_master_read +EXPORT_SYMBOL vmlinux 0x0c6ef46f flow_rule_match_control +EXPORT_SYMBOL vmlinux 0x0c75ec33 scsi_cmd_ioctl +EXPORT_SYMBOL vmlinux 0x0c7c32b9 __generic_file_fsync +EXPORT_SYMBOL vmlinux 0x0c9ce971 fs_param_is_fd +EXPORT_SYMBOL vmlinux 0x0c9d2c9c cdev_device_del +EXPORT_SYMBOL vmlinux 0x0ca9c586 tty_unlock +EXPORT_SYMBOL vmlinux 0x0cab12c1 sk_net_capable +EXPORT_SYMBOL vmlinux 0x0caf48a9 dst_discard_out +EXPORT_SYMBOL vmlinux 0x0cb264a1 security_lock_kernel_down +EXPORT_SYMBOL vmlinux 0x0cc4b4b6 crc_ccitt_false +EXPORT_SYMBOL vmlinux 0x0cd5835b ipv6_flowlabel_exclusive +EXPORT_SYMBOL vmlinux 0x0ce19729 mb_cache_entry_touch +EXPORT_SYMBOL vmlinux 0x0ce8b059 I_BDEV +EXPORT_SYMBOL vmlinux 0x0d007d41 jbd2_journal_forget +EXPORT_SYMBOL vmlinux 0x0d07f543 get_anon_bdev +EXPORT_SYMBOL vmlinux 0x0d21e7e7 d_add +EXPORT_SYMBOL vmlinux 0x0d2affa5 gnet_stats_copy_basic +EXPORT_SYMBOL vmlinux 0x0d2ca20f ucc_fast_get_qe_cr_subblock +EXPORT_SYMBOL vmlinux 0x0d3b6951 blk_mq_delay_kick_requeue_list +EXPORT_SYMBOL vmlinux 0x0d3f5c1a fman_get_max_frm +EXPORT_SYMBOL vmlinux 0x0d512cf7 find_vma +EXPORT_SYMBOL vmlinux 0x0d516c76 try_to_free_buffers +EXPORT_SYMBOL vmlinux 0x0d542439 __ipv6_addr_type +EXPORT_SYMBOL vmlinux 0x0d5659ae phy_disconnect +EXPORT_SYMBOL vmlinux 0x0d56f310 sk_dst_check +EXPORT_SYMBOL vmlinux 0x0d5b7a97 sock_init_data +EXPORT_SYMBOL vmlinux 0x0d61eeee __bitmap_subset +EXPORT_SYMBOL vmlinux 0x0d6261cd __cgroup_bpf_run_filter_sock_addr +EXPORT_SYMBOL vmlinux 0x0d6adb95 copy_string_kernel +EXPORT_SYMBOL vmlinux 0x0d6fe1e2 blk_mq_delay_run_hw_queues +EXPORT_SYMBOL vmlinux 0x0d75ecc7 mipi_dsi_dcs_exit_sleep_mode +EXPORT_SYMBOL vmlinux 0x0d8cb68b xp_raw_get_dma +EXPORT_SYMBOL vmlinux 0x0db05828 unregister_netdevice_notifier_net +EXPORT_SYMBOL vmlinux 0x0dc8da78 genphy_resume +EXPORT_SYMBOL vmlinux 0x0dca5737 input_set_poll_interval +EXPORT_SYMBOL vmlinux 0x0dd6f451 tcp_md5_do_add +EXPORT_SYMBOL vmlinux 0x0df90c73 blk_queue_bounce_limit +EXPORT_SYMBOL vmlinux 0x0e0b59c8 __skb_checksum_complete_head +EXPORT_SYMBOL vmlinux 0x0e17678a siphash_4u64 +EXPORT_SYMBOL vmlinux 0x0e27a2dd ZSTD_initCCtx +EXPORT_SYMBOL vmlinux 0x0e52266e ip_route_input_noref +EXPORT_SYMBOL vmlinux 0x0e569220 scsicam_bios_param +EXPORT_SYMBOL vmlinux 0x0e572194 tcp_mtup_init +EXPORT_SYMBOL vmlinux 0x0e67e8f1 of_pci_range_to_resource +EXPORT_SYMBOL vmlinux 0x0e74ad2d utf8ncursor +EXPORT_SYMBOL vmlinux 0x0e76a8d1 netdev_crit +EXPORT_SYMBOL vmlinux 0x0e9c735e kernel_getpeername +EXPORT_SYMBOL vmlinux 0x0e9d3dd9 tcf_action_check_ctrlact +EXPORT_SYMBOL vmlinux 0x0eab6809 pcim_iounmap +EXPORT_SYMBOL vmlinux 0x0ec5babe vme_dma_free +EXPORT_SYMBOL vmlinux 0x0ed09ba9 nd_pfn_probe +EXPORT_SYMBOL vmlinux 0x0f012f6d __dev_set_mtu +EXPORT_SYMBOL vmlinux 0x0f09cc34 schedule_timeout_killable +EXPORT_SYMBOL vmlinux 0x0f1396c4 __qdisc_calculate_pkt_len +EXPORT_SYMBOL vmlinux 0x0f25bb39 nf_register_net_hook +EXPORT_SYMBOL vmlinux 0x0f37ca89 lockref_put_not_zero +EXPORT_SYMBOL vmlinux 0x0f41863d mmc_cqe_recovery +EXPORT_SYMBOL vmlinux 0x0f5d444e mpage_writepage +EXPORT_SYMBOL vmlinux 0x0f86f560 kthread_delayed_work_timer_fn +EXPORT_SYMBOL vmlinux 0x0f8fa408 skb_flow_dissect_ct +EXPORT_SYMBOL vmlinux 0x0f902ab5 dev_set_group +EXPORT_SYMBOL vmlinux 0x0f97cbb3 rawv6_mh_filter_register +EXPORT_SYMBOL vmlinux 0x0fa05e2f mmc_free_host +EXPORT_SYMBOL vmlinux 0x0fa61353 inet_sk_set_state +EXPORT_SYMBOL vmlinux 0x0fab1ab0 hdmi_spd_infoframe_pack +EXPORT_SYMBOL vmlinux 0x0fae87ba security_sk_classify_flow +EXPORT_SYMBOL vmlinux 0x0faef0ed __tasklet_schedule +EXPORT_SYMBOL vmlinux 0x0fb2f8a4 mktime64 +EXPORT_SYMBOL vmlinux 0x0fbf7ad3 inet_proto_csum_replace_by_diff +EXPORT_SYMBOL vmlinux 0x0fc2a058 set_nlink +EXPORT_SYMBOL vmlinux 0x0fd902db mb_cache_entry_create +EXPORT_SYMBOL vmlinux 0x0fde8f14 kern_unmount +EXPORT_SYMBOL vmlinux 0x0fefc43a sock_diag_put_filterinfo +EXPORT_SYMBOL vmlinux 0x0fff5afc time64_to_tm +EXPORT_SYMBOL vmlinux 0x100ecc69 tty_set_operations +EXPORT_SYMBOL vmlinux 0x100fbe69 vm_zone_stat +EXPORT_SYMBOL vmlinux 0x10108258 mr_mfc_find_any_parent +EXPORT_SYMBOL vmlinux 0x1025009a cpm_muram_alloc_fixed +EXPORT_SYMBOL vmlinux 0x102936ec qe_clock_source +EXPORT_SYMBOL vmlinux 0x102e20cb md_bitmap_start_sync +EXPORT_SYMBOL vmlinux 0x1035c7c2 __release_region +EXPORT_SYMBOL vmlinux 0x104c5bda import_iovec +EXPORT_SYMBOL vmlinux 0x104f8f7a __close_fd_get_file +EXPORT_SYMBOL vmlinux 0x10567e63 fixed_size_llseek +EXPORT_SYMBOL vmlinux 0x1057a279 bsearch +EXPORT_SYMBOL vmlinux 0x1068004b gf128mul_bbe +EXPORT_SYMBOL vmlinux 0x10709d25 abx500_remove_ops +EXPORT_SYMBOL vmlinux 0x10725ebd locks_init_lock +EXPORT_SYMBOL vmlinux 0x1074ea9f tcp_connect +EXPORT_SYMBOL vmlinux 0x107e5878 zlib_inflateEnd +EXPORT_SYMBOL vmlinux 0x10876dad inet_ioctl +EXPORT_SYMBOL vmlinux 0x1089c48d nvdimm_bus_unlock +EXPORT_SYMBOL vmlinux 0x1091ecc3 dev_uc_sync +EXPORT_SYMBOL vmlinux 0x10bab88b blk_dump_rq_flags +EXPORT_SYMBOL vmlinux 0x10c3f57e __gnet_stats_copy_queue +EXPORT_SYMBOL vmlinux 0x10d10623 tcp_fastopen_defer_connect +EXPORT_SYMBOL vmlinux 0x10d9f885 scsi_sense_desc_find +EXPORT_SYMBOL vmlinux 0x10ebf912 mipi_dsi_host_register +EXPORT_SYMBOL vmlinux 0x10ec7c4c sk_stream_error +EXPORT_SYMBOL vmlinux 0x10f0e308 jbd2_journal_begin_ordered_truncate +EXPORT_SYMBOL vmlinux 0x11089ac7 _ctype +EXPORT_SYMBOL vmlinux 0x110a71c0 disk_stack_limits +EXPORT_SYMBOL vmlinux 0x1135f3af param_ops_short +EXPORT_SYMBOL vmlinux 0x1149c887 dump_emit +EXPORT_SYMBOL vmlinux 0x1163f0a7 blk_max_low_pfn +EXPORT_SYMBOL vmlinux 0x117093be qdisc_class_hash_init +EXPORT_SYMBOL vmlinux 0x118f17fa tc_setup_cb_add +EXPORT_SYMBOL vmlinux 0x119d5546 generic_iommu_put_resv_regions +EXPORT_SYMBOL vmlinux 0x11aabcc6 vfs_symlink +EXPORT_SYMBOL vmlinux 0x11ae0733 __getblk_gfp +EXPORT_SYMBOL vmlinux 0x11b5d75d call_usermodehelper_setup +EXPORT_SYMBOL vmlinux 0x11b87c41 clk_add_alias +EXPORT_SYMBOL vmlinux 0x11c5f4f3 iommu_get_dma_cookie +EXPORT_SYMBOL vmlinux 0x11ca0946 skb_checksum_help +EXPORT_SYMBOL vmlinux 0x11e0ec41 dm_read_arg +EXPORT_SYMBOL vmlinux 0x11e30762 chacha_block_generic +EXPORT_SYMBOL vmlinux 0x11ec049b blk_queue_update_dma_alignment +EXPORT_SYMBOL vmlinux 0x11ec5cf5 bdput +EXPORT_SYMBOL vmlinux 0x11f47d8c utf8_strncmp +EXPORT_SYMBOL vmlinux 0x11f7ed4c hex_to_bin +EXPORT_SYMBOL vmlinux 0x11ffdfee ucc_slow_stop_tx +EXPORT_SYMBOL vmlinux 0x120b336a __rb_insert_augmented +EXPORT_SYMBOL vmlinux 0x121a7199 truncate_inode_pages +EXPORT_SYMBOL vmlinux 0x122c20df elv_rb_add +EXPORT_SYMBOL vmlinux 0x123e92c5 try_lookup_one_len +EXPORT_SYMBOL vmlinux 0x124ba311 udp6_seq_ops +EXPORT_SYMBOL vmlinux 0x1275b584 of_platform_device_create +EXPORT_SYMBOL vmlinux 0x1278221d ZSTD_compressBegin_usingCDict +EXPORT_SYMBOL vmlinux 0x127d63f0 inet_recvmsg +EXPORT_SYMBOL vmlinux 0x1287230c i2c_clients_command +EXPORT_SYMBOL vmlinux 0x12a38747 usleep_range +EXPORT_SYMBOL vmlinux 0x12cabc89 siphash_2u64 +EXPORT_SYMBOL vmlinux 0x12d444b8 skb_copy_and_hash_datagram_iter +EXPORT_SYMBOL vmlinux 0x12eb658e flow_block_cb_free +EXPORT_SYMBOL vmlinux 0x12f292f0 __sync_dirty_buffer +EXPORT_SYMBOL vmlinux 0x12f6f69c fb_videomode_to_var +EXPORT_SYMBOL vmlinux 0x12fdb980 pci_write_config_byte +EXPORT_SYMBOL vmlinux 0x130a6f86 scsi_eh_prep_cmnd +EXPORT_SYMBOL vmlinux 0x130afd75 acpi_get_sleep_type_data +EXPORT_SYMBOL vmlinux 0x13110126 request_resource +EXPORT_SYMBOL vmlinux 0x1311c9be xp_can_alloc +EXPORT_SYMBOL vmlinux 0x131a6146 xa_clear_mark +EXPORT_SYMBOL vmlinux 0x131d5079 of_n_size_cells +EXPORT_SYMBOL vmlinux 0x13243d4b wl1251_get_platform_data +EXPORT_SYMBOL vmlinux 0x134cdd34 inet_frag_rbtree_purge +EXPORT_SYMBOL vmlinux 0x136fcd6a ipv6_skip_exthdr +EXPORT_SYMBOL vmlinux 0x137f3c6a __cpuhp_remove_state_cpuslocked +EXPORT_SYMBOL vmlinux 0x137ff89b security_binder_transaction +EXPORT_SYMBOL vmlinux 0x139433e8 qdisc_create_dflt +EXPORT_SYMBOL vmlinux 0x139f2189 __kfifo_alloc +EXPORT_SYMBOL vmlinux 0x13a1ea2f rproc_da_to_va +EXPORT_SYMBOL vmlinux 0x13c16987 migrate_page_states +EXPORT_SYMBOL vmlinux 0x13d0adf7 __kfifo_out +EXPORT_SYMBOL vmlinux 0x13d492b1 eth_header_parse_protocol +EXPORT_SYMBOL vmlinux 0x13dfaf01 generic_remap_file_range_prep +EXPORT_SYMBOL vmlinux 0x13e25101 jbd2_journal_dirty_metadata +EXPORT_SYMBOL vmlinux 0x13f93f4e sock_sendmsg +EXPORT_SYMBOL vmlinux 0x1400d45b jbd2_journal_stop +EXPORT_SYMBOL vmlinux 0x141271bf acpi_dev_found +EXPORT_SYMBOL vmlinux 0x142e94b6 jbd2_journal_load +EXPORT_SYMBOL vmlinux 0x143e0b11 pci_enable_msix_range +EXPORT_SYMBOL vmlinux 0x14605535 dma_fence_context_alloc +EXPORT_SYMBOL vmlinux 0x146289b7 crc16_table +EXPORT_SYMBOL vmlinux 0x14653059 elv_rb_latter_request +EXPORT_SYMBOL vmlinux 0x1467b143 disk_end_io_acct +EXPORT_SYMBOL vmlinux 0x146ce26a simple_transaction_set +EXPORT_SYMBOL vmlinux 0x1476916e tcf_em_register +EXPORT_SYMBOL vmlinux 0x148be68f unload_nls +EXPORT_SYMBOL vmlinux 0x14b89635 arm64_const_caps_ready +EXPORT_SYMBOL vmlinux 0x14c67e3e tcp_tx_delay_enabled +EXPORT_SYMBOL vmlinux 0x14dded3b km_state_expired +EXPORT_SYMBOL vmlinux 0x14f45fcc bman_free_pool +EXPORT_SYMBOL vmlinux 0x14f5feb4 bio_integrity_add_page +EXPORT_SYMBOL vmlinux 0x14fb2365 cmdline_parts_set +EXPORT_SYMBOL vmlinux 0x15007601 submit_bh +EXPORT_SYMBOL vmlinux 0x150e5f9c pagevec_lookup_range +EXPORT_SYMBOL vmlinux 0x15173b8e nf_log_set +EXPORT_SYMBOL vmlinux 0x151e3ccb udp6_csum_init +EXPORT_SYMBOL vmlinux 0x151f4898 schedule_timeout_uninterruptible +EXPORT_SYMBOL vmlinux 0x1526b301 unix_tot_inflight +EXPORT_SYMBOL vmlinux 0x1529ddc0 mipi_dsi_picture_parameter_set +EXPORT_SYMBOL vmlinux 0x153390ed scm_detach_fds +EXPORT_SYMBOL vmlinux 0x15353b45 of_get_compatible_child +EXPORT_SYMBOL vmlinux 0x154c6338 dm_kcopyd_client_destroy +EXPORT_SYMBOL vmlinux 0x1552abec request_firmware_nowait +EXPORT_SYMBOL vmlinux 0x155d5c34 of_find_i2c_device_by_node +EXPORT_SYMBOL vmlinux 0x158533c5 pcie_capability_write_word +EXPORT_SYMBOL vmlinux 0x15910b88 netdev_bonding_info_change +EXPORT_SYMBOL vmlinux 0x15a3aa29 unregister_tcf_proto_ops +EXPORT_SYMBOL vmlinux 0x15ba50a6 jiffies +EXPORT_SYMBOL vmlinux 0x15bafe29 unregister_md_cluster_operations +EXPORT_SYMBOL vmlinux 0x15bed7a5 LZ4_decompress_safe_partial +EXPORT_SYMBOL vmlinux 0x15c2e926 super_setup_bdi_name +EXPORT_SYMBOL vmlinux 0x15c69cb5 scsi_print_sense +EXPORT_SYMBOL vmlinux 0x15c85de3 mempool_init +EXPORT_SYMBOL vmlinux 0x15d9df94 cdrom_mode_sense +EXPORT_SYMBOL vmlinux 0x15e97f5f __alloc_skb +EXPORT_SYMBOL vmlinux 0x15ea4898 qman_oos_fq +EXPORT_SYMBOL vmlinux 0x1624b622 skb_copy_and_csum_dev +EXPORT_SYMBOL vmlinux 0x162893fd hashlen_string +EXPORT_SYMBOL vmlinux 0x162daea7 fwnode_get_mac_address +EXPORT_SYMBOL vmlinux 0x16316a10 ZSTD_getFrameContentSize +EXPORT_SYMBOL vmlinux 0x16324089 scsi_set_medium_removal +EXPORT_SYMBOL vmlinux 0x1658fd4e pci_fixup_cardbus +EXPORT_SYMBOL vmlinux 0x165ad395 trace_print_symbols_seq +EXPORT_SYMBOL vmlinux 0x165ef20b devm_register_reboot_notifier +EXPORT_SYMBOL vmlinux 0x1670202d inode_dio_wait +EXPORT_SYMBOL vmlinux 0x167c5967 print_hex_dump +EXPORT_SYMBOL vmlinux 0x16891346 vfs_fsync_range +EXPORT_SYMBOL vmlinux 0x169938c1 __sysfs_match_string +EXPORT_SYMBOL vmlinux 0x16a92c3e _dev_emerg +EXPORT_SYMBOL vmlinux 0x16afcb45 call_usermodehelper_exec +EXPORT_SYMBOL vmlinux 0x16ca080e of_xudma_dev_get +EXPORT_SYMBOL vmlinux 0x16cd6b2b csum_and_copy_from_iter_full +EXPORT_SYMBOL vmlinux 0x16cdc340 acpi_get_table +EXPORT_SYMBOL vmlinux 0x16d498a0 i2c_del_adapter +EXPORT_SYMBOL vmlinux 0x16dee44d dma_fence_init +EXPORT_SYMBOL vmlinux 0x16e297c3 bit_wait +EXPORT_SYMBOL vmlinux 0x16e7e2cb cpu_all_bits +EXPORT_SYMBOL vmlinux 0x170ddf79 acpi_install_notify_handler +EXPORT_SYMBOL vmlinux 0x171d195b tcp_sendmsg +EXPORT_SYMBOL vmlinux 0x17223d23 md_check_recovery +EXPORT_SYMBOL vmlinux 0x1727dc44 posix_acl_to_xattr +EXPORT_SYMBOL vmlinux 0x17281dc6 __dynamic_dev_dbg +EXPORT_SYMBOL vmlinux 0x1739cbe5 security_socket_socketpair +EXPORT_SYMBOL vmlinux 0x174a20d5 sock_no_accept +EXPORT_SYMBOL vmlinux 0x1765ea1f __xa_alloc_cyclic +EXPORT_SYMBOL vmlinux 0x177fe461 put_fs_context +EXPORT_SYMBOL vmlinux 0x17825d3f xudma_rchan_get +EXPORT_SYMBOL vmlinux 0x17893cda jbd2_journal_clear_features +EXPORT_SYMBOL vmlinux 0x178c4894 qe_upload_firmware +EXPORT_SYMBOL vmlinux 0x17c13238 generic_read_dir +EXPORT_SYMBOL vmlinux 0x17cec979 input_event +EXPORT_SYMBOL vmlinux 0x17db113f acpi_bus_get_status +EXPORT_SYMBOL vmlinux 0x17e0658a __filemap_set_wb_err +EXPORT_SYMBOL vmlinux 0x17ef75f8 netdev_master_upper_dev_get_rcu +EXPORT_SYMBOL vmlinux 0x17f4eb23 of_dev_get +EXPORT_SYMBOL vmlinux 0x18191937 d_alloc_anon +EXPORT_SYMBOL vmlinux 0x18345b8e __bitmap_replace +EXPORT_SYMBOL vmlinux 0x184083f2 rfkill_alloc +EXPORT_SYMBOL vmlinux 0x18535d54 __dev_remove_pack +EXPORT_SYMBOL vmlinux 0x186280c6 qdisc_tree_reduce_backlog +EXPORT_SYMBOL vmlinux 0x18741d11 config_item_put +EXPORT_SYMBOL vmlinux 0x187884a8 cpm_muram_free +EXPORT_SYMBOL vmlinux 0x18888d00 downgrade_write +EXPORT_SYMBOL vmlinux 0x188ea314 jiffies_to_timespec64 +EXPORT_SYMBOL vmlinux 0x18967194 scsi_dma_map +EXPORT_SYMBOL vmlinux 0x18a4989e mipi_dsi_shutdown_peripheral +EXPORT_SYMBOL vmlinux 0x18b42362 netlbl_calipso_ops_register +EXPORT_SYMBOL vmlinux 0x18b48e28 __memset_io +EXPORT_SYMBOL vmlinux 0x18c78a84 rproc_add_subdev +EXPORT_SYMBOL vmlinux 0x18d21950 blk_queue_update_dma_pad +EXPORT_SYMBOL vmlinux 0x18da3799 pci_alloc_irq_vectors_affinity +EXPORT_SYMBOL vmlinux 0x18e4cdb0 __hw_addr_ref_sync_dev +EXPORT_SYMBOL vmlinux 0x18e60984 __do_once_start +EXPORT_SYMBOL vmlinux 0x18efd028 hdmi_drm_infoframe_unpack_only +EXPORT_SYMBOL vmlinux 0x18fc1496 __inet_hash +EXPORT_SYMBOL vmlinux 0x19189661 simple_fill_super +EXPORT_SYMBOL vmlinux 0x191aef0a md_finish_reshape +EXPORT_SYMBOL vmlinux 0x194bcee1 iov_iter_gap_alignment +EXPORT_SYMBOL vmlinux 0x1953aada scsi_eh_finish_cmd +EXPORT_SYMBOL vmlinux 0x1953c958 mempool_create +EXPORT_SYMBOL vmlinux 0x19668055 neigh_table_init +EXPORT_SYMBOL vmlinux 0x1984b890 secpath_set +EXPORT_SYMBOL vmlinux 0x1984d421 out_of_line_wait_on_bit +EXPORT_SYMBOL vmlinux 0x198620d7 security_add_mnt_opt +EXPORT_SYMBOL vmlinux 0x199ed0cd net_disable_timestamp +EXPORT_SYMBOL vmlinux 0x19a3c617 netlink_broadcast +EXPORT_SYMBOL vmlinux 0x19b168d9 flow_block_cb_incref +EXPORT_SYMBOL vmlinux 0x19bd383b security_secmark_refcount_dec +EXPORT_SYMBOL vmlinux 0x19e13b67 block_write_full_page +EXPORT_SYMBOL vmlinux 0x19e23799 generic_key_instantiate +EXPORT_SYMBOL vmlinux 0x1a07cfac vfs_path_lookup +EXPORT_SYMBOL vmlinux 0x1a107de2 ZSTD_compressCCtx +EXPORT_SYMBOL vmlinux 0x1a1bac9c ZSTD_decompressDCtx +EXPORT_SYMBOL vmlinux 0x1a210fbd invalidate_inode_buffers +EXPORT_SYMBOL vmlinux 0x1a2b8f15 map_kernel_range_noflush +EXPORT_SYMBOL vmlinux 0x1a3f8694 pci_release_resource +EXPORT_SYMBOL vmlinux 0x1a4375d3 __dev_get_by_name +EXPORT_SYMBOL vmlinux 0x1a45cb6c acpi_disabled +EXPORT_SYMBOL vmlinux 0x1a6036d5 sk_mc_loop +EXPORT_SYMBOL vmlinux 0x1a64b63d ppp_unregister_compressor +EXPORT_SYMBOL vmlinux 0x1a738416 locks_delete_block +EXPORT_SYMBOL vmlinux 0x1a81f699 ipv6_dev_get_saddr +EXPORT_SYMBOL vmlinux 0x1a9a433c prandom_u32_state +EXPORT_SYMBOL vmlinux 0x1aa6c90a amba_device_unregister +EXPORT_SYMBOL vmlinux 0x1ab37928 pcie_capability_write_dword +EXPORT_SYMBOL vmlinux 0x1ab74fc2 remap_pfn_range +EXPORT_SYMBOL vmlinux 0x1abdfb5f vme_slot_num +EXPORT_SYMBOL vmlinux 0x1abf91e8 edac_mc_find +EXPORT_SYMBOL vmlinux 0x1ac5d3cb strcspn +EXPORT_SYMBOL vmlinux 0x1adacb14 rps_may_expire_flow +EXPORT_SYMBOL vmlinux 0x1af33adc blkdev_compat_ptr_ioctl +EXPORT_SYMBOL vmlinux 0x1b015d25 bitmap_parselist +EXPORT_SYMBOL vmlinux 0x1b241e21 ethtool_op_get_link +EXPORT_SYMBOL vmlinux 0x1b5196fc xudma_tchan_put +EXPORT_SYMBOL vmlinux 0x1b597b7a swake_up_all +EXPORT_SYMBOL vmlinux 0x1b6314fd in_aton +EXPORT_SYMBOL vmlinux 0x1b700d37 put_vaddr_frames +EXPORT_SYMBOL vmlinux 0x1b7306cd dma_direct_sync_sg_for_cpu +EXPORT_SYMBOL vmlinux 0x1b777357 rdmacg_unregister_device +EXPORT_SYMBOL vmlinux 0x1b78bfc8 dcache_dir_lseek +EXPORT_SYMBOL vmlinux 0x1b7aa770 tso_build_hdr +EXPORT_SYMBOL vmlinux 0x1b7b9856 dma_pool_create +EXPORT_SYMBOL vmlinux 0x1b8241e7 __ip_mc_dec_group +EXPORT_SYMBOL vmlinux 0x1b86299c bio_clone_fast +EXPORT_SYMBOL vmlinux 0x1b894c60 ll_rw_block +EXPORT_SYMBOL vmlinux 0x1b9a2430 da903x_query_status +EXPORT_SYMBOL vmlinux 0x1ba59527 __kmalloc_node +EXPORT_SYMBOL vmlinux 0x1baa602f lock_two_nondirectories +EXPORT_SYMBOL vmlinux 0x1bb51249 tcp_have_smc +EXPORT_SYMBOL vmlinux 0x1bb86b9a xen_start_info +EXPORT_SYMBOL vmlinux 0x1bd59dbe vme_free_consistent +EXPORT_SYMBOL vmlinux 0x1c0f3915 param_ops_ullong +EXPORT_SYMBOL vmlinux 0x1c2dfa28 pci_ep_cfs_remove_epf_group +EXPORT_SYMBOL vmlinux 0x1c3310f7 input_set_abs_params +EXPORT_SYMBOL vmlinux 0x1c338147 vm_numa_stat +EXPORT_SYMBOL vmlinux 0x1c3a401b in6_dev_finish_destroy +EXPORT_SYMBOL vmlinux 0x1c3f2c3a serial8250_do_set_termios +EXPORT_SYMBOL vmlinux 0x1c58427f acpi_remove_notify_handler +EXPORT_SYMBOL vmlinux 0x1c5e3878 icst525_idx2s +EXPORT_SYMBOL vmlinux 0x1c83b4a9 revalidate_disk +EXPORT_SYMBOL vmlinux 0x1c85f26a pm860x_reg_write +EXPORT_SYMBOL vmlinux 0x1cb2c6d8 kvasprintf +EXPORT_SYMBOL vmlinux 0x1cb6f349 bio_endio +EXPORT_SYMBOL vmlinux 0x1cc72efb genphy_read_status_fixed +EXPORT_SYMBOL vmlinux 0x1cd8438b pxm_to_node +EXPORT_SYMBOL vmlinux 0x1cdd39ba logic_outsl +EXPORT_SYMBOL vmlinux 0x1ce7fd21 i2c_del_driver +EXPORT_SYMBOL vmlinux 0x1ced8005 skb_udp_tunnel_segment +EXPORT_SYMBOL vmlinux 0x1cf5efa6 xudma_rflow_get_id +EXPORT_SYMBOL vmlinux 0x1cfffe05 debugfs_create_automount +EXPORT_SYMBOL vmlinux 0x1d028889 nf_ip6_checksum +EXPORT_SYMBOL vmlinux 0x1d072d2c migrate_vma_finalize +EXPORT_SYMBOL vmlinux 0x1d07e365 memdup_user_nul +EXPORT_SYMBOL vmlinux 0x1d1abdf0 acpi_get_physical_device_location +EXPORT_SYMBOL vmlinux 0x1d24c881 ___ratelimit +EXPORT_SYMBOL vmlinux 0x1d2d6d15 wait_iff_congested +EXPORT_SYMBOL vmlinux 0x1d3504bf flow_rule_match_enc_ip +EXPORT_SYMBOL vmlinux 0x1d37f61c xp_dma_map +EXPORT_SYMBOL vmlinux 0x1d3e4b73 cdc_parse_cdc_header +EXPORT_SYMBOL vmlinux 0x1d40b6f3 idr_for_each +EXPORT_SYMBOL vmlinux 0x1d5f9555 frame_vector_destroy +EXPORT_SYMBOL vmlinux 0x1d66b4e5 ucc_fast_dump_regs +EXPORT_SYMBOL vmlinux 0x1d91c5da kthread_create_worker +EXPORT_SYMBOL vmlinux 0x1da0e769 mr_dump +EXPORT_SYMBOL vmlinux 0x1da4e2d2 sock_kfree_s +EXPORT_SYMBOL vmlinux 0x1da86d0b __napi_alloc_skb +EXPORT_SYMBOL vmlinux 0x1dc58434 vfs_get_fsid +EXPORT_SYMBOL vmlinux 0x1dc6c93b lookup_user_key +EXPORT_SYMBOL vmlinux 0x1dd20f4d remove_watch_from_object +EXPORT_SYMBOL vmlinux 0x1dd571e6 fb_copy_cmap +EXPORT_SYMBOL vmlinux 0x1ddd643c flow_hash_from_keys +EXPORT_SYMBOL vmlinux 0x1de4ccb2 get_sg_io_hdr +EXPORT_SYMBOL vmlinux 0x1de67f9b qcom_scm_io_writel +EXPORT_SYMBOL vmlinux 0x1df63e88 ZSTD_compressBegin +EXPORT_SYMBOL vmlinux 0x1e0373fc imx_scu_irq_group_enable +EXPORT_SYMBOL vmlinux 0x1e0a0c24 mod_timer_pending +EXPORT_SYMBOL vmlinux 0x1e0cd7fe acpi_detach_data +EXPORT_SYMBOL vmlinux 0x1e13f2d8 unregister_shrinker +EXPORT_SYMBOL vmlinux 0x1e1e140e ns_to_timespec64 +EXPORT_SYMBOL vmlinux 0x1e62643b skb_flow_dissector_init +EXPORT_SYMBOL vmlinux 0x1e63826c pagecache_isize_extended +EXPORT_SYMBOL vmlinux 0x1e65b33b max8925_reg_write +EXPORT_SYMBOL vmlinux 0x1e6d26a8 strstr +EXPORT_SYMBOL vmlinux 0x1e78e30b send_sig_info +EXPORT_SYMBOL vmlinux 0x1e7cf36c sock_register +EXPORT_SYMBOL vmlinux 0x1e7fa1da tty_port_alloc_xmit_buf +EXPORT_SYMBOL vmlinux 0x1e84a2f9 param_ops_long +EXPORT_SYMBOL vmlinux 0x1e9d7b89 devm_release_resource +EXPORT_SYMBOL vmlinux 0x1e9edfb7 seq_hlist_start_head_rcu +EXPORT_SYMBOL vmlinux 0x1ea631cb netif_carrier_on +EXPORT_SYMBOL vmlinux 0x1eafd99e put_cmsg_scm_timestamping64 +EXPORT_SYMBOL vmlinux 0x1eb116b1 kernel_bind +EXPORT_SYMBOL vmlinux 0x1eb430d6 phy_support_sym_pause +EXPORT_SYMBOL vmlinux 0x1eb82e84 dev_load +EXPORT_SYMBOL vmlinux 0x1ec52ca6 inode_init_always +EXPORT_SYMBOL vmlinux 0x1ec7e9ba devm_backlight_device_unregister +EXPORT_SYMBOL vmlinux 0x1ecbbc6d blk_rq_count_integrity_sg +EXPORT_SYMBOL vmlinux 0x1ecd3243 abx500_register_ops +EXPORT_SYMBOL vmlinux 0x1edb69d6 ktime_get_raw_ts64 +EXPORT_SYMBOL vmlinux 0x1efec272 mark_buffer_dirty +EXPORT_SYMBOL vmlinux 0x1f03912b ZSTD_flushStream +EXPORT_SYMBOL vmlinux 0x1f055eea phy_ethtool_set_wol +EXPORT_SYMBOL vmlinux 0x1f0ea388 __pagevec_release +EXPORT_SYMBOL vmlinux 0x1f13b3bf xsk_clear_tx_need_wakeup +EXPORT_SYMBOL vmlinux 0x1f2576cc amba_driver_register +EXPORT_SYMBOL vmlinux 0x1f49bcba vm_mmap +EXPORT_SYMBOL vmlinux 0x1f4c4ff7 vlan_vid_add +EXPORT_SYMBOL vmlinux 0x1f557414 gen_pool_has_addr +EXPORT_SYMBOL vmlinux 0x1f5d6f5a skb_flow_dissect_meta +EXPORT_SYMBOL vmlinux 0x1f60d88b drop_nlink +EXPORT_SYMBOL vmlinux 0x1f65160f filemap_fdatawait_keep_errors +EXPORT_SYMBOL vmlinux 0x1f7507d6 generic_file_llseek +EXPORT_SYMBOL vmlinux 0x1f7820dd phy_write_mmd +EXPORT_SYMBOL vmlinux 0x1f8571c0 fddi_type_trans +EXPORT_SYMBOL vmlinux 0x1f8a6eb2 nf_hook_slow +EXPORT_SYMBOL vmlinux 0x1fbd16da ip_tos2prio +EXPORT_SYMBOL vmlinux 0x1fd07fff kdb_grepping_flag +EXPORT_SYMBOL vmlinux 0x1fd4dce6 security_inode_invalidate_secctx +EXPORT_SYMBOL vmlinux 0x1fe01528 security_binder_transfer_file +EXPORT_SYMBOL vmlinux 0x1fe3806d jbd2_journal_wipe +EXPORT_SYMBOL vmlinux 0x1fe912f1 netdev_alloc_frag +EXPORT_SYMBOL vmlinux 0x1fed42a8 phy_start_aneg +EXPORT_SYMBOL vmlinux 0x20000329 simple_strtoul +EXPORT_SYMBOL vmlinux 0x200b2041 in6addr_any +EXPORT_SYMBOL vmlinux 0x201cddda lookup_one_len +EXPORT_SYMBOL vmlinux 0x2031861b ndisc_mc_map +EXPORT_SYMBOL vmlinux 0x20463df4 wait_for_completion_killable +EXPORT_SYMBOL vmlinux 0x204af5b5 netlbl_audit_start +EXPORT_SYMBOL vmlinux 0x204c19f5 tcp_alloc_md5sig_pool +EXPORT_SYMBOL vmlinux 0x204c5067 scsi_dev_info_add_list +EXPORT_SYMBOL vmlinux 0x2052ed06 tcp_conn_request +EXPORT_SYMBOL vmlinux 0x2072ee9b request_threaded_irq +EXPORT_SYMBOL vmlinux 0x20775b77 clkdev_hw_alloc +EXPORT_SYMBOL vmlinux 0x207a01cc vfs_setpos +EXPORT_SYMBOL vmlinux 0x20a1b519 acpi_resource_to_address64 +EXPORT_SYMBOL vmlinux 0x20a789ac irq_set_chip_data +EXPORT_SYMBOL vmlinux 0x20cbb30a __percpu_counter_init +EXPORT_SYMBOL vmlinux 0x20d65e40 fb_find_nearest_mode +EXPORT_SYMBOL vmlinux 0x20dd75a8 backlight_device_set_brightness +EXPORT_SYMBOL vmlinux 0x20eadeb6 ip_compute_csum +EXPORT_SYMBOL vmlinux 0x20ff533d pps_event +EXPORT_SYMBOL vmlinux 0x20fff6ec ZSTD_DStreamInSize +EXPORT_SYMBOL vmlinux 0x21059cd7 audit_log_task_context +EXPORT_SYMBOL vmlinux 0x21065d02 compat_tcp_setsockopt +EXPORT_SYMBOL vmlinux 0x21100781 pci_bus_write_config_byte +EXPORT_SYMBOL vmlinux 0x2135bd01 insert_inode_locked +EXPORT_SYMBOL vmlinux 0x213a738d memregion_alloc +EXPORT_SYMBOL vmlinux 0x213e4965 ps2_is_keyboard_id +EXPORT_SYMBOL vmlinux 0x2141bd38 of_get_address +EXPORT_SYMBOL vmlinux 0x215a8ec8 slhc_init +EXPORT_SYMBOL vmlinux 0x218e600b pci_add_resource_offset +EXPORT_SYMBOL vmlinux 0x21a4638f from_kuid +EXPORT_SYMBOL vmlinux 0x21ae356d mdio_find_bus +EXPORT_SYMBOL vmlinux 0x21bdb523 errseq_check_and_advance +EXPORT_SYMBOL vmlinux 0x21be37e1 hdmi_avi_infoframe_check +EXPORT_SYMBOL vmlinux 0x21e13cb3 inet_peer_xrlim_allow +EXPORT_SYMBOL vmlinux 0x21ef374c try_wait_for_completion +EXPORT_SYMBOL vmlinux 0x220e55d0 mem_section +EXPORT_SYMBOL vmlinux 0x222e7ce2 sysfs_streq +EXPORT_SYMBOL vmlinux 0x22344821 seg6_push_hmac +EXPORT_SYMBOL vmlinux 0x2234ca51 acpi_match_platform_list +EXPORT_SYMBOL vmlinux 0x224ce651 xudma_free_gp_rflow_range +EXPORT_SYMBOL vmlinux 0x2250b4a2 of_find_backlight_by_node +EXPORT_SYMBOL vmlinux 0x225567a6 bio_list_copy_data +EXPORT_SYMBOL vmlinux 0x2276db98 kstrtoint +EXPORT_SYMBOL vmlinux 0x2286a418 __inode_sub_bytes +EXPORT_SYMBOL vmlinux 0x2289a069 km_report +EXPORT_SYMBOL vmlinux 0x22921571 del_random_ready_callback +EXPORT_SYMBOL vmlinux 0x22964b50 prepare_to_swait_exclusive +EXPORT_SYMBOL vmlinux 0x22a27f23 mmc_start_request +EXPORT_SYMBOL vmlinux 0x22b325d5 kd_mksound +EXPORT_SYMBOL vmlinux 0x22c8ba15 vme_unregister_driver +EXPORT_SYMBOL vmlinux 0x22cbbf9f of_get_i2c_adapter_by_node +EXPORT_SYMBOL vmlinux 0x22ccede2 phy_device_free +EXPORT_SYMBOL vmlinux 0x22d7093f inet_unregister_protosw +EXPORT_SYMBOL vmlinux 0x22e0d7b6 user_path_at_empty +EXPORT_SYMBOL vmlinux 0x22f37a4a fbcon_update_vcs +EXPORT_SYMBOL vmlinux 0x23295f55 dec_zone_page_state +EXPORT_SYMBOL vmlinux 0x233886fe pci_scan_slot +EXPORT_SYMBOL vmlinux 0x236a0a40 nd_integrity_init +EXPORT_SYMBOL vmlinux 0x23844d89 dm_kcopyd_zero +EXPORT_SYMBOL vmlinux 0x238550d4 mdiobus_free +EXPORT_SYMBOL vmlinux 0x23897ba1 generic_delete_inode +EXPORT_SYMBOL vmlinux 0x238b099f mipi_dsi_packet_format_is_short +EXPORT_SYMBOL vmlinux 0x238b7ffa genphy_read_mmd_unsupported +EXPORT_SYMBOL vmlinux 0x23a48e7b of_match_device +EXPORT_SYMBOL vmlinux 0x23b9d6e2 mangle_path +EXPORT_SYMBOL vmlinux 0x23c9891c kstrtoint_from_user +EXPORT_SYMBOL vmlinux 0x23cabbb1 register_sysctl_paths +EXPORT_SYMBOL vmlinux 0x23daa989 mipi_dsi_create_packet +EXPORT_SYMBOL vmlinux 0x23ee13fd mb_cache_entry_find_first +EXPORT_SYMBOL vmlinux 0x23fd3028 vmalloc_node +EXPORT_SYMBOL vmlinux 0x240f3346 phy_connect +EXPORT_SYMBOL vmlinux 0x241bb5a9 rtnl_unicast +EXPORT_SYMBOL vmlinux 0x24212d86 __frontswap_invalidate_page +EXPORT_SYMBOL vmlinux 0x242c08c5 pci_request_selected_regions +EXPORT_SYMBOL vmlinux 0x243e0a3b inet_release +EXPORT_SYMBOL vmlinux 0x24428be5 strncpy_from_user +EXPORT_SYMBOL vmlinux 0x2459bbcc console_set_on_cmdline +EXPORT_SYMBOL vmlinux 0x2473f47e dm_table_get_size +EXPORT_SYMBOL vmlinux 0x24817c53 pneigh_lookup +EXPORT_SYMBOL vmlinux 0x2484adc3 __kfifo_to_user_r +EXPORT_SYMBOL vmlinux 0x248d5100 blk_rq_map_user_iov +EXPORT_SYMBOL vmlinux 0x24987298 sock_no_sendpage +EXPORT_SYMBOL vmlinux 0x249ffc43 pci_dev_driver +EXPORT_SYMBOL vmlinux 0x24af6470 inet_csk_reqsk_queue_drop_and_put +EXPORT_SYMBOL vmlinux 0x24ca765b generic_writepages +EXPORT_SYMBOL vmlinux 0x24d273d1 add_timer +EXPORT_SYMBOL vmlinux 0x24d9dbee genphy_check_and_restart_aneg +EXPORT_SYMBOL vmlinux 0x24e30013 __neigh_event_send +EXPORT_SYMBOL vmlinux 0x24f259f0 __scsi_device_lookup_by_target +EXPORT_SYMBOL vmlinux 0x24fd26f1 pps_unregister_source +EXPORT_SYMBOL vmlinux 0x24fe54cd dev_getbyhwaddr_rcu +EXPORT_SYMBOL vmlinux 0x24fe7344 csum_and_copy_to_iter +EXPORT_SYMBOL vmlinux 0x250ac46c ip_setsockopt +EXPORT_SYMBOL vmlinux 0x2518a4d8 __cleancache_get_page +EXPORT_SYMBOL vmlinux 0x2524ba17 ZSTD_getCParams +EXPORT_SYMBOL vmlinux 0x25277497 rfkill_register +EXPORT_SYMBOL vmlinux 0x253fe4a6 eth_validate_addr +EXPORT_SYMBOL vmlinux 0x254e59d5 __serio_register_port +EXPORT_SYMBOL vmlinux 0x2552fa92 tty_port_carrier_raised +EXPORT_SYMBOL vmlinux 0x2570a138 reservation_seqcount_string +EXPORT_SYMBOL vmlinux 0x257c9fed pci_disable_link_state_locked +EXPORT_SYMBOL vmlinux 0x25820c64 fs_overflowuid +EXPORT_SYMBOL vmlinux 0x2587a61d blk_rq_append_bio +EXPORT_SYMBOL vmlinux 0x258d2f76 net_dim_get_tx_moderation +EXPORT_SYMBOL vmlinux 0x2591a1ca __napi_schedule +EXPORT_SYMBOL vmlinux 0x2593092f qdisc_watchdog_init +EXPORT_SYMBOL vmlinux 0x2595da74 key_task_permission +EXPORT_SYMBOL vmlinux 0x25966e8f kthread_associate_blkcg +EXPORT_SYMBOL vmlinux 0x25974000 wait_for_completion +EXPORT_SYMBOL vmlinux 0x259c2fc7 devfreq_recommended_opp +EXPORT_SYMBOL vmlinux 0x25a65511 on_each_cpu_mask +EXPORT_SYMBOL vmlinux 0x25a977e4 sdev_prefix_printk +EXPORT_SYMBOL vmlinux 0x25b80795 nf_reinject +EXPORT_SYMBOL vmlinux 0x25c0c2a4 devm_nvmem_cell_put +EXPORT_SYMBOL vmlinux 0x25c37efb vfs_statfs +EXPORT_SYMBOL vmlinux 0x25c7a05a vlan_uses_dev +EXPORT_SYMBOL vmlinux 0x25cd44a5 import_single_range +EXPORT_SYMBOL vmlinux 0x25d28035 skb_queue_head +EXPORT_SYMBOL vmlinux 0x25dd3fa0 serio_bus +EXPORT_SYMBOL vmlinux 0x25e58a09 hdmi_avi_infoframe_init +EXPORT_SYMBOL vmlinux 0x25e9d4bd resource_list_free +EXPORT_SYMBOL vmlinux 0x25f46505 __tty_alloc_driver +EXPORT_SYMBOL vmlinux 0x260a095a __sg_alloc_table +EXPORT_SYMBOL vmlinux 0x260d4e87 tcp_read_sock +EXPORT_SYMBOL vmlinux 0x260e292c twl6040_reg_write +EXPORT_SYMBOL vmlinux 0x260ed2f8 end_buffer_read_sync +EXPORT_SYMBOL vmlinux 0x260f87fb acpi_processor_notify_smm +EXPORT_SYMBOL vmlinux 0x2616d61d ab3100_event_register +EXPORT_SYMBOL vmlinux 0x2624889b __dev_get_by_flags +EXPORT_SYMBOL vmlinux 0x262ca6b1 nonseekable_open +EXPORT_SYMBOL vmlinux 0x263beb75 ecryptfs_get_versions +EXPORT_SYMBOL vmlinux 0x263c3152 bcmp +EXPORT_SYMBOL vmlinux 0x263f0d1f qman_portal_set_iperiod +EXPORT_SYMBOL vmlinux 0x2643de1f filp_open +EXPORT_SYMBOL vmlinux 0x265a9f05 md_bitmap_update_sb +EXPORT_SYMBOL vmlinux 0x266497ad input_mt_drop_unused +EXPORT_SYMBOL vmlinux 0x266d9336 vfs_readlink +EXPORT_SYMBOL vmlinux 0x2676f060 mmc_release_host +EXPORT_SYMBOL vmlinux 0x2682648f fc_mount +EXPORT_SYMBOL vmlinux 0x2688ec10 bitmap_zalloc +EXPORT_SYMBOL vmlinux 0x268ad47e put_devmap_managed_page +EXPORT_SYMBOL vmlinux 0x26a89ffb get_tree_keyed +EXPORT_SYMBOL vmlinux 0x26ab150c ipv6_setsockopt +EXPORT_SYMBOL vmlinux 0x26b9d403 devm_ioremap_wc +EXPORT_SYMBOL vmlinux 0x26cc73c3 complete_and_exit +EXPORT_SYMBOL vmlinux 0x26cfa2de single_release +EXPORT_SYMBOL vmlinux 0x26da7237 build_skb_around +EXPORT_SYMBOL vmlinux 0x26de1439 inet_frag_destroy +EXPORT_SYMBOL vmlinux 0x26e298e0 unregister_memory_notifier +EXPORT_SYMBOL vmlinux 0x26e56f9b sunxi_sram_claim +EXPORT_SYMBOL vmlinux 0x26e85251 pci_dev_get +EXPORT_SYMBOL vmlinux 0x26eba7d9 pagecache_get_page +EXPORT_SYMBOL vmlinux 0x270ee64a dm_table_get_md +EXPORT_SYMBOL vmlinux 0x271cba95 acpi_bus_private_data_handler +EXPORT_SYMBOL vmlinux 0x2724f6c3 of_translate_dma_address +EXPORT_SYMBOL vmlinux 0x272a8933 udp_memory_allocated +EXPORT_SYMBOL vmlinux 0x272df0dd pci_find_next_bus +EXPORT_SYMBOL vmlinux 0x2733eaf7 scsi_dev_info_list_add_keyed +EXPORT_SYMBOL vmlinux 0x27479d14 param_free_charp +EXPORT_SYMBOL vmlinux 0x275dfee4 ucc_slow_free +EXPORT_SYMBOL vmlinux 0x275f3d49 hdmi_vendor_infoframe_check +EXPORT_SYMBOL vmlinux 0x27639220 blk_verify_command +EXPORT_SYMBOL vmlinux 0x27756bc8 scsi_sanitize_inquiry_string +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 0x278d12a3 dquot_resume +EXPORT_SYMBOL vmlinux 0x279be432 ZSTD_copyCCtx +EXPORT_SYMBOL vmlinux 0x27bbf221 disable_irq_nosync +EXPORT_SYMBOL vmlinux 0x27bcaf8b iov_iter_init +EXPORT_SYMBOL vmlinux 0x27bd5a47 trace_print_array_seq +EXPORT_SYMBOL vmlinux 0x27c3c728 qman_release_fqid +EXPORT_SYMBOL vmlinux 0x27cdca93 pci_add_resource +EXPORT_SYMBOL vmlinux 0x27da7640 nvm_register_tgt_type +EXPORT_SYMBOL vmlinux 0x27f0e29a simple_lookup +EXPORT_SYMBOL vmlinux 0x27f92998 register_quota_format +EXPORT_SYMBOL vmlinux 0x280447c3 eth_commit_mac_addr_change +EXPORT_SYMBOL vmlinux 0x28045210 kernel_listen +EXPORT_SYMBOL vmlinux 0x281823c5 __kfifo_out_peek +EXPORT_SYMBOL vmlinux 0x281aad91 proc_set_user +EXPORT_SYMBOL vmlinux 0x282291f5 blk_pre_runtime_resume +EXPORT_SYMBOL vmlinux 0x2833f577 ZSTD_compressBegin_advanced +EXPORT_SYMBOL vmlinux 0x2875a315 utf32_to_utf8 +EXPORT_SYMBOL vmlinux 0x2879ea4b pcie_relaxed_ordering_enabled +EXPORT_SYMBOL vmlinux 0x28aee663 input_set_timestamp +EXPORT_SYMBOL vmlinux 0x28c7d6d9 rtnl_configure_link +EXPORT_SYMBOL vmlinux 0x28c7edef pci_stop_and_remove_bus_device +EXPORT_SYMBOL vmlinux 0x28cb2f9c mem_cgroup_from_task +EXPORT_SYMBOL vmlinux 0x28e6c989 d_instantiate +EXPORT_SYMBOL vmlinux 0x28f05e1b param_set_ullong +EXPORT_SYMBOL vmlinux 0x290f2bf1 mmc_retune_unpause +EXPORT_SYMBOL vmlinux 0x2914ea2d ZSTD_compressBlock +EXPORT_SYMBOL vmlinux 0x291f3614 skb_checksum_setup +EXPORT_SYMBOL vmlinux 0x2935c3dd seq_path +EXPORT_SYMBOL vmlinux 0x2944e695 mmc_retune_timer_stop +EXPORT_SYMBOL vmlinux 0x2948e8a8 pcie_print_link_status +EXPORT_SYMBOL vmlinux 0x294b9ea1 on_each_cpu +EXPORT_SYMBOL vmlinux 0x295cfd2e netdev_reset_tc +EXPORT_SYMBOL vmlinux 0x296747dd _dev_warn +EXPORT_SYMBOL vmlinux 0x2969bf6a kmem_cache_alloc_node_trace +EXPORT_SYMBOL vmlinux 0x296cb509 __xa_insert +EXPORT_SYMBOL vmlinux 0x29795bad configfs_depend_item_unlocked +EXPORT_SYMBOL vmlinux 0x29811440 inet_frag_pull_head +EXPORT_SYMBOL vmlinux 0x29c5fbf9 skb_free_datagram +EXPORT_SYMBOL vmlinux 0x29cf44f2 seq_putc +EXPORT_SYMBOL vmlinux 0x29e1e204 hdmi_audio_infoframe_pack +EXPORT_SYMBOL vmlinux 0x29f49eec tcf_idrinfo_destroy +EXPORT_SYMBOL vmlinux 0x2a0b9782 mmc_remove_host +EXPORT_SYMBOL vmlinux 0x2a1706fa put_disk +EXPORT_SYMBOL vmlinux 0x2a303d4d check_signature +EXPORT_SYMBOL vmlinux 0x2a36b1bd single_open_size +EXPORT_SYMBOL vmlinux 0x2a4d62c3 flow_rule_alloc +EXPORT_SYMBOL vmlinux 0x2a60c2d7 node_states +EXPORT_SYMBOL vmlinux 0x2a67b2bf skb_ensure_writable +EXPORT_SYMBOL vmlinux 0x2a7bb432 __alloc_pages_nodemask +EXPORT_SYMBOL vmlinux 0x2a85101d mdio_driver_unregister +EXPORT_SYMBOL vmlinux 0x2a852dea fman_register_intr +EXPORT_SYMBOL vmlinux 0x2a9a3905 vme_master_get +EXPORT_SYMBOL vmlinux 0x2aa0843e mempool_resize +EXPORT_SYMBOL vmlinux 0x2aa6884d finalize_exec +EXPORT_SYMBOL vmlinux 0x2aa97f42 page_cache_prev_miss +EXPORT_SYMBOL vmlinux 0x2aabaf9d xudma_tchan_get +EXPORT_SYMBOL vmlinux 0x2ab2ee91 brcmstb_get_product_id +EXPORT_SYMBOL vmlinux 0x2ab7989d mutex_lock +EXPORT_SYMBOL vmlinux 0x2ab99bf8 scsi_register_interface +EXPORT_SYMBOL vmlinux 0x2adafbca config_item_get +EXPORT_SYMBOL vmlinux 0x2afbec34 mdiobus_unregister +EXPORT_SYMBOL vmlinux 0x2b035893 iterate_supers_type +EXPORT_SYMBOL vmlinux 0x2b1abce3 fman_has_errata_a050385 +EXPORT_SYMBOL vmlinux 0x2b298192 of_get_parent +EXPORT_SYMBOL vmlinux 0x2b2c1bc6 flow_rule_match_ipv4_addrs +EXPORT_SYMBOL vmlinux 0x2b5393fc cdev_set_parent +EXPORT_SYMBOL vmlinux 0x2b555a79 inet_frags_init +EXPORT_SYMBOL vmlinux 0x2b56f9d9 pci_bus_add_devices +EXPORT_SYMBOL vmlinux 0x2b58439d bioset_init_from_src +EXPORT_SYMBOL vmlinux 0x2b593aa8 gen_pool_alloc_algo_owner +EXPORT_SYMBOL vmlinux 0x2b6588da __vfs_removexattr +EXPORT_SYMBOL vmlinux 0x2b68bd2f del_timer +EXPORT_SYMBOL vmlinux 0x2b87de85 km_policy_expired +EXPORT_SYMBOL vmlinux 0x2b9da7a4 genl_lock +EXPORT_SYMBOL vmlinux 0x2baa58c9 udplite_prot +EXPORT_SYMBOL vmlinux 0x2bb6099e dq_data_lock +EXPORT_SYMBOL vmlinux 0x2bb61434 dev_mc_add_global +EXPORT_SYMBOL vmlinux 0x2bb8ef84 alloc_skb_with_frags +EXPORT_SYMBOL vmlinux 0x2bc2fa31 blk_queue_max_segment_size +EXPORT_SYMBOL vmlinux 0x2bd0046b padata_set_cpumask +EXPORT_SYMBOL vmlinux 0x2bd60ab9 acpi_reset +EXPORT_SYMBOL vmlinux 0x2befed0d ptp_find_pin +EXPORT_SYMBOL vmlinux 0x2bfbab10 __memmove +EXPORT_SYMBOL vmlinux 0x2c1137f5 tcf_chain_put_by_act +EXPORT_SYMBOL vmlinux 0x2c1e8399 is_acpi_device_node +EXPORT_SYMBOL vmlinux 0x2c1ecd4d key_payload_reserve +EXPORT_SYMBOL vmlinux 0x2c256e1f input_scancode_to_scalar +EXPORT_SYMBOL vmlinux 0x2c267f1a netdev_notice +EXPORT_SYMBOL vmlinux 0x2c333838 timestamp_truncate +EXPORT_SYMBOL vmlinux 0x2c3c15ca pcim_iomap +EXPORT_SYMBOL vmlinux 0x2c501086 xp_dma_sync_for_device_slow +EXPORT_SYMBOL vmlinux 0x2c51d330 dma_direct_unmap_page +EXPORT_SYMBOL vmlinux 0x2c541e7b radix_tree_next_chunk +EXPORT_SYMBOL vmlinux 0x2c763356 iov_iter_single_seg_count +EXPORT_SYMBOL vmlinux 0x2c8a1ce9 module_put +EXPORT_SYMBOL vmlinux 0x2c91e17c vm_get_page_prot +EXPORT_SYMBOL vmlinux 0x2c92eb1d devm_devfreq_register_opp_notifier +EXPORT_SYMBOL vmlinux 0x2ccd059a dim_on_top +EXPORT_SYMBOL vmlinux 0x2cdf87a1 proc_dointvec_minmax +EXPORT_SYMBOL vmlinux 0x2ce78ca3 i2c_verify_adapter +EXPORT_SYMBOL vmlinux 0x2cec7a36 __set_page_dirty_buffers +EXPORT_SYMBOL vmlinux 0x2ceef750 handle_edge_irq +EXPORT_SYMBOL vmlinux 0x2cf14b15 ucc_fast_disable +EXPORT_SYMBOL vmlinux 0x2cf73cb7 kstrtoll_from_user +EXPORT_SYMBOL vmlinux 0x2d140a58 genl_unlock +EXPORT_SYMBOL vmlinux 0x2d192c70 sg_zero_buffer +EXPORT_SYMBOL vmlinux 0x2d2043d7 nd_dax_probe +EXPORT_SYMBOL vmlinux 0x2d2fb2e2 get_mem_cgroup_from_mm +EXPORT_SYMBOL vmlinux 0x2d2ffcd5 vme_unregister_bridge +EXPORT_SYMBOL vmlinux 0x2d30596c from_kqid_munged +EXPORT_SYMBOL vmlinux 0x2d306645 jbd2_log_wait_commit +EXPORT_SYMBOL vmlinux 0x2d3385d3 system_wq +EXPORT_SYMBOL vmlinux 0x2d39b0a7 kstrdup +EXPORT_SYMBOL vmlinux 0x2d3a7767 dcb_ieee_getapp_prio_dscp_mask_map +EXPORT_SYMBOL vmlinux 0x2d4c773a hdmi_spd_infoframe_init +EXPORT_SYMBOL vmlinux 0x2d60d86c truncate_pagecache +EXPORT_SYMBOL vmlinux 0x2d72d440 ndo_dflt_fdb_add +EXPORT_SYMBOL vmlinux 0x2d84e1e9 pm860x_bulk_write +EXPORT_SYMBOL vmlinux 0x2d8a50f1 blkdev_fsync +EXPORT_SYMBOL vmlinux 0x2d912bca dmi_get_bios_year +EXPORT_SYMBOL vmlinux 0x2d933b89 simple_recursive_removal +EXPORT_SYMBOL vmlinux 0x2d994605 security_inode_copy_up_xattr +EXPORT_SYMBOL vmlinux 0x2db19f03 of_mdiobus_child_is_phy +EXPORT_SYMBOL vmlinux 0x2db306a5 i2c_smbus_read_word_data +EXPORT_SYMBOL vmlinux 0x2db3bc61 check_zeroed_user +EXPORT_SYMBOL vmlinux 0x2db3d320 mutex_lock_interruptible +EXPORT_SYMBOL vmlinux 0x2db6f078 tcp_splice_read +EXPORT_SYMBOL vmlinux 0x2dbcb187 __netif_schedule +EXPORT_SYMBOL vmlinux 0x2dc7ec49 get_user_pages_unlocked +EXPORT_SYMBOL vmlinux 0x2dce2f1c __irq_regs +EXPORT_SYMBOL vmlinux 0x2de4bea4 devm_free_irq +EXPORT_SYMBOL vmlinux 0x2dfe0c35 unregister_nexthop_notifier +EXPORT_SYMBOL vmlinux 0x2e0b1deb dma_fence_get_status +EXPORT_SYMBOL vmlinux 0x2e1ca751 clk_put +EXPORT_SYMBOL vmlinux 0x2e20be0e setattr_prepare +EXPORT_SYMBOL vmlinux 0x2e2b40d2 strncat +EXPORT_SYMBOL vmlinux 0x2e2c4ddc logic_inw +EXPORT_SYMBOL vmlinux 0x2e3bcce2 wait_for_completion_interruptible +EXPORT_SYMBOL vmlinux 0x2e439142 drm_get_panel_orientation_quirk +EXPORT_SYMBOL vmlinux 0x2e530c00 netlink_broadcast_filtered +EXPORT_SYMBOL vmlinux 0x2e5b27da xudma_alloc_gp_rflow_range +EXPORT_SYMBOL vmlinux 0x2e5f3893 bio_reset +EXPORT_SYMBOL vmlinux 0x2e5fe036 __skb_ext_put +EXPORT_SYMBOL vmlinux 0x2e654c48 tty_kref_put +EXPORT_SYMBOL vmlinux 0x2e697791 input_free_device +EXPORT_SYMBOL vmlinux 0x2e9d54c8 start_tty +EXPORT_SYMBOL vmlinux 0x2eb75907 inet_reqsk_alloc +EXPORT_SYMBOL vmlinux 0x2eb81ccb mipi_dsi_generic_write +EXPORT_SYMBOL vmlinux 0x2eb97a62 framebuffer_alloc +EXPORT_SYMBOL vmlinux 0x2eb98ee0 ip_ct_attach +EXPORT_SYMBOL vmlinux 0x2ec3453b qman_schedule_fq +EXPORT_SYMBOL vmlinux 0x2ec6bba0 errseq_set +EXPORT_SYMBOL vmlinux 0x2ec70698 elv_rb_former_request +EXPORT_SYMBOL vmlinux 0x2ed49731 may_umount +EXPORT_SYMBOL vmlinux 0x2edbeaf7 hex2bin +EXPORT_SYMBOL vmlinux 0x2ee4c2b1 hdmi_avi_infoframe_pack_only +EXPORT_SYMBOL vmlinux 0x2eee78cb mdio_device_create +EXPORT_SYMBOL vmlinux 0x2eef4229 lookup_positive_unlocked +EXPORT_SYMBOL vmlinux 0x2f03691f pagevec_lookup_range_tag +EXPORT_SYMBOL vmlinux 0x2f03fc4b security_secmark_refcount_inc +EXPORT_SYMBOL vmlinux 0x2f096f24 kernel_sendmsg +EXPORT_SYMBOL vmlinux 0x2f0c97f6 mii_ethtool_set_link_ksettings +EXPORT_SYMBOL vmlinux 0x2f0e6247 param_get_string +EXPORT_SYMBOL vmlinux 0x2f23d63f textsearch_register +EXPORT_SYMBOL vmlinux 0x2f2e91b2 security_ib_alloc_security +EXPORT_SYMBOL vmlinux 0x2f333aab imx_scu_get_handle +EXPORT_SYMBOL vmlinux 0x2f384db3 acpi_is_video_device +EXPORT_SYMBOL vmlinux 0x2f3d28a0 ipv6_chk_prefix +EXPORT_SYMBOL vmlinux 0x2f42c720 xfrm_lookup_with_ifid +EXPORT_SYMBOL vmlinux 0x2f45126c security_binder_transfer_binder +EXPORT_SYMBOL vmlinux 0x2f538d4c config_item_get_unless_zero +EXPORT_SYMBOL vmlinux 0x2f66b0e8 unregister_netdevice_notifier_dev_net +EXPORT_SYMBOL vmlinux 0x2f6bff27 fsync_bdev +EXPORT_SYMBOL vmlinux 0x2f6ef8a2 inet_sk_rx_dst_set +EXPORT_SYMBOL vmlinux 0x2f70a810 tcp_md5_hash_key +EXPORT_SYMBOL vmlinux 0x2f7754a8 dma_pool_free +EXPORT_SYMBOL vmlinux 0x2f7d811a mount_single +EXPORT_SYMBOL vmlinux 0x2f8a0f55 bio_put +EXPORT_SYMBOL vmlinux 0x2f9f1b2a kthread_stop +EXPORT_SYMBOL vmlinux 0x2fae0067 md_cluster_ops +EXPORT_SYMBOL vmlinux 0x2fb0e71d xattr_full_name +EXPORT_SYMBOL vmlinux 0x2fb6de5d add_device_randomness +EXPORT_SYMBOL vmlinux 0x2fc5e58a inet_csk_delete_keepalive_timer +EXPORT_SYMBOL vmlinux 0x2fe252cc unregister_inet6addr_notifier +EXPORT_SYMBOL vmlinux 0x2fe5b535 qcom_scm_assign_mem +EXPORT_SYMBOL vmlinux 0x2ffe3896 genlmsg_multicast_allns +EXPORT_SYMBOL vmlinux 0x300104a9 __skb_checksum +EXPORT_SYMBOL vmlinux 0x30014cf9 d_tmpfile +EXPORT_SYMBOL vmlinux 0x3014c04a mii_nway_restart +EXPORT_SYMBOL vmlinux 0x30232546 empty_aops +EXPORT_SYMBOL vmlinux 0x3037a7a6 blk_integrity_register +EXPORT_SYMBOL vmlinux 0x303ca5a6 __put_cred +EXPORT_SYMBOL vmlinux 0x3063cf65 i2c_verify_client +EXPORT_SYMBOL vmlinux 0x3088c936 udp_push_pending_frames +EXPORT_SYMBOL vmlinux 0x308afb1f param_set_long +EXPORT_SYMBOL vmlinux 0x3096be16 names_cachep +EXPORT_SYMBOL vmlinux 0x309c0728 dev_remove_pack +EXPORT_SYMBOL vmlinux 0x30a80826 __kfifo_from_user +EXPORT_SYMBOL vmlinux 0x30acfde9 hsiphash_2u32 +EXPORT_SYMBOL vmlinux 0x30af45a1 ZSTD_initCStream +EXPORT_SYMBOL vmlinux 0x30bd5ee0 qman_destroy_fq +EXPORT_SYMBOL vmlinux 0x30c583ad unregister_mii_tstamp_controller +EXPORT_SYMBOL vmlinux 0x30c6701c bdevname +EXPORT_SYMBOL vmlinux 0x30c943a9 tcp_sock_set_quickack +EXPORT_SYMBOL vmlinux 0x30d63807 pci_set_master +EXPORT_SYMBOL vmlinux 0x30d79b59 param_get_short +EXPORT_SYMBOL vmlinux 0x30df70eb inet_put_port +EXPORT_SYMBOL vmlinux 0x30e74134 tty_termios_copy_hw +EXPORT_SYMBOL vmlinux 0x3100cff9 lockref_get_or_lock +EXPORT_SYMBOL vmlinux 0x3102d70b frontswap_curr_pages +EXPORT_SYMBOL vmlinux 0x31078810 udp_poll +EXPORT_SYMBOL vmlinux 0x3126a9e8 siphash_1u64 +EXPORT_SYMBOL vmlinux 0x3127450e __module_put_and_exit +EXPORT_SYMBOL vmlinux 0x312a6e1e set_device_ro +EXPORT_SYMBOL vmlinux 0x3145216f pci_dev_present +EXPORT_SYMBOL vmlinux 0x316a920b tcp_v4_send_check +EXPORT_SYMBOL vmlinux 0x317a9646 put_tty_driver +EXPORT_SYMBOL vmlinux 0x318d6fec mutex_is_locked +EXPORT_SYMBOL vmlinux 0x319d493d proc_dostring +EXPORT_SYMBOL vmlinux 0x31a4767f qcom_scm_hdcp_available +EXPORT_SYMBOL vmlinux 0x31dabbc7 tso_start +EXPORT_SYMBOL vmlinux 0x3202dd2e pnp_is_active +EXPORT_SYMBOL vmlinux 0x3202f9f6 fb_get_mode +EXPORT_SYMBOL vmlinux 0x321a2b81 compat_nf_getsockopt +EXPORT_SYMBOL vmlinux 0x3229b460 qdisc_offload_dump_helper +EXPORT_SYMBOL vmlinux 0x3234512a __frontswap_load +EXPORT_SYMBOL vmlinux 0x32394d4b qe_issue_cmd +EXPORT_SYMBOL vmlinux 0x32621456 redraw_screen +EXPORT_SYMBOL vmlinux 0x32739061 km_new_mapping +EXPORT_SYMBOL vmlinux 0x327c84bf vme_lm_attach +EXPORT_SYMBOL vmlinux 0x3283e6b0 prandom_seed_full_state +EXPORT_SYMBOL vmlinux 0x3284155b netdev_has_upper_dev_all_rcu +EXPORT_SYMBOL vmlinux 0x328c2dba d_set_d_op +EXPORT_SYMBOL vmlinux 0x328eec45 cdrom_get_media_event +EXPORT_SYMBOL vmlinux 0x32b8f072 mmc_register_driver +EXPORT_SYMBOL vmlinux 0x32ce3777 radix_tree_preload +EXPORT_SYMBOL vmlinux 0x32d0f155 sock_no_socketpair +EXPORT_SYMBOL vmlinux 0x32e16f0e nd_region_to_nstype +EXPORT_SYMBOL vmlinux 0x32e6f1a0 acpi_video_backlight_string +EXPORT_SYMBOL vmlinux 0x32eebd2b dev_alloc_name +EXPORT_SYMBOL vmlinux 0x32fa3558 pci_wait_for_pending_transaction +EXPORT_SYMBOL vmlinux 0x33037fd8 logic_outl +EXPORT_SYMBOL vmlinux 0x3303b4b1 bdget_disk +EXPORT_SYMBOL vmlinux 0x330a28dc blk_mq_init_allocated_queue +EXPORT_SYMBOL vmlinux 0x332251ad kthread_bind +EXPORT_SYMBOL vmlinux 0x33285768 inet_del_offload +EXPORT_SYMBOL vmlinux 0x33292bb3 phy_attached_info_irq +EXPORT_SYMBOL vmlinux 0x33736a1d __genradix_ptr_alloc +EXPORT_SYMBOL vmlinux 0x33942ead inode_permission +EXPORT_SYMBOL vmlinux 0x33b43d75 get_phy_device +EXPORT_SYMBOL vmlinux 0x33eed5da skb_copy_expand +EXPORT_SYMBOL vmlinux 0x33f0768c cpufreq_quick_get_max +EXPORT_SYMBOL vmlinux 0x33fb67a4 scsi_device_resume +EXPORT_SYMBOL vmlinux 0x33fc6a9b tcp_poll +EXPORT_SYMBOL vmlinux 0x33fcf44a __kfifo_out_r +EXPORT_SYMBOL vmlinux 0x3427eb1d dev_addr_flush +EXPORT_SYMBOL vmlinux 0x344c0506 tag_pages_for_writeback +EXPORT_SYMBOL vmlinux 0x344ca9d4 qman_init_fq +EXPORT_SYMBOL vmlinux 0x3466de6f __put_page +EXPORT_SYMBOL vmlinux 0x349031fe of_root +EXPORT_SYMBOL vmlinux 0x3499c7d6 seq_dentry +EXPORT_SYMBOL vmlinux 0x349ac524 __tracepoint_dma_fence_emit +EXPORT_SYMBOL vmlinux 0x349cba85 strchr +EXPORT_SYMBOL vmlinux 0x34a1f7e3 acpi_processor_get_psd +EXPORT_SYMBOL vmlinux 0x34a364e0 unregister_netdev +EXPORT_SYMBOL vmlinux 0x34a5fdca inet_csk_clear_xmit_timers +EXPORT_SYMBOL vmlinux 0x34c21002 nvmem_get_mac_address +EXPORT_SYMBOL vmlinux 0x34c4c5c7 cred_fscmp +EXPORT_SYMBOL vmlinux 0x34cff80a dev_add_offload +EXPORT_SYMBOL vmlinux 0x34e8661f block_truncate_page +EXPORT_SYMBOL vmlinux 0x34f3484e security_tun_dev_attach_queue +EXPORT_SYMBOL vmlinux 0x3503249d seg6_hmac_info_del +EXPORT_SYMBOL vmlinux 0x350cf846 sk_free +EXPORT_SYMBOL vmlinux 0x350ea558 dma_fence_default_wait +EXPORT_SYMBOL vmlinux 0x3517383e register_reboot_notifier +EXPORT_SYMBOL vmlinux 0x3530832b inet6_add_protocol +EXPORT_SYMBOL vmlinux 0x35319e45 devfreq_update_interval +EXPORT_SYMBOL vmlinux 0x3535fe6a netdev_has_upper_dev +EXPORT_SYMBOL vmlinux 0x3539f11b match_strlcpy +EXPORT_SYMBOL vmlinux 0x356461c8 rtc_time64_to_tm +EXPORT_SYMBOL vmlinux 0x35667b38 tcf_idr_create +EXPORT_SYMBOL vmlinux 0x3570b705 tcf_action_set_ctrlact +EXPORT_SYMBOL vmlinux 0x3571c388 twl6040_get_vibralr_status +EXPORT_SYMBOL vmlinux 0x3583ae62 alloc_fcdev +EXPORT_SYMBOL vmlinux 0x358937b5 blkdev_issue_discard +EXPORT_SYMBOL vmlinux 0x359ec42f _raw_read_trylock +EXPORT_SYMBOL vmlinux 0x35a4c061 neigh_ifdown +EXPORT_SYMBOL vmlinux 0x35a88f28 zlib_inflateInit2 +EXPORT_SYMBOL vmlinux 0x35b2cf6d mount_bdev +EXPORT_SYMBOL vmlinux 0x35c82986 devm_extcon_register_notifier_all +EXPORT_SYMBOL vmlinux 0x35dc15ba blk_queue_max_write_same_sectors +EXPORT_SYMBOL vmlinux 0x35e31f31 textsearch_prepare +EXPORT_SYMBOL vmlinux 0x35e6c8fb from_kgid +EXPORT_SYMBOL vmlinux 0x35fd8dd8 __genphy_config_aneg +EXPORT_SYMBOL vmlinux 0x35fe8f31 input_mt_report_slot_state +EXPORT_SYMBOL vmlinux 0x35ff7c6d xfrm_if_register_cb +EXPORT_SYMBOL vmlinux 0x360b1afe probe_irq_mask +EXPORT_SYMBOL vmlinux 0x36508e0e scsi_device_set_state +EXPORT_SYMBOL vmlinux 0x36556c04 ipv6_mc_check_icmpv6 +EXPORT_SYMBOL vmlinux 0x365acda7 set_normalized_timespec64 +EXPORT_SYMBOL vmlinux 0x365e7911 kstrdup_const +EXPORT_SYMBOL vmlinux 0x366b3d61 pci_prepare_to_sleep +EXPORT_SYMBOL vmlinux 0x36729ff7 inet6_del_protocol +EXPORT_SYMBOL vmlinux 0x3674b799 xfrm_input_resume +EXPORT_SYMBOL vmlinux 0x3682897d pci_bus_size_bridges +EXPORT_SYMBOL vmlinux 0x36836590 ipmi_platform_add +EXPORT_SYMBOL vmlinux 0x36975846 fwnode_graph_parse_endpoint +EXPORT_SYMBOL vmlinux 0x36a1fff2 mmc_can_gpio_cd +EXPORT_SYMBOL vmlinux 0x36a69729 max8998_write_reg +EXPORT_SYMBOL vmlinux 0x36d35fa9 scsi_get_device_flags_keyed +EXPORT_SYMBOL vmlinux 0x36efcb85 ppp_channel_index +EXPORT_SYMBOL vmlinux 0x36fdd9ba netdev_upper_dev_link +EXPORT_SYMBOL vmlinux 0x37110088 remove_wait_queue +EXPORT_SYMBOL vmlinux 0x371e7f3a ZSTD_initCDict +EXPORT_SYMBOL vmlinux 0x37307347 eth_header_cache +EXPORT_SYMBOL vmlinux 0x37317905 ip_frag_next +EXPORT_SYMBOL vmlinux 0x37320d6b would_dump +EXPORT_SYMBOL vmlinux 0x3737d9a9 ZSTD_DStreamWorkspaceBound +EXPORT_SYMBOL vmlinux 0x37386050 mr_mfc_find_any +EXPORT_SYMBOL vmlinux 0x3744cf36 vmalloc_to_pfn +EXPORT_SYMBOL vmlinux 0x374fafab netdev_pick_tx +EXPORT_SYMBOL vmlinux 0x3754d47c mdiobus_read_nested +EXPORT_SYMBOL vmlinux 0x3755f990 gf128mul_init_64k_bbe +EXPORT_SYMBOL vmlinux 0x37746fde ZSTD_initDStream +EXPORT_SYMBOL vmlinux 0x37751bf3 tcf_block_get +EXPORT_SYMBOL vmlinux 0x37763ff9 dev_mc_del +EXPORT_SYMBOL vmlinux 0x377d8004 acpi_error +EXPORT_SYMBOL vmlinux 0x3796c021 default_llseek +EXPORT_SYMBOL vmlinux 0x37a48e15 pneigh_enqueue +EXPORT_SYMBOL vmlinux 0x37af3190 dm_table_run_md_queue_async +EXPORT_SYMBOL vmlinux 0x37ba84af posix_lock_file +EXPORT_SYMBOL vmlinux 0x37befc70 jiffies_to_msecs +EXPORT_SYMBOL vmlinux 0x37c6a35d rt6_lookup +EXPORT_SYMBOL vmlinux 0x37c9fc65 pci_bus_type +EXPORT_SYMBOL vmlinux 0x37d20a3d rproc_del +EXPORT_SYMBOL vmlinux 0x37db8f19 dmi_get_date +EXPORT_SYMBOL vmlinux 0x37e05a47 phy_modify_paged_changed +EXPORT_SYMBOL vmlinux 0x37f04944 param_ops_uint +EXPORT_SYMBOL vmlinux 0x37fef94a imx_scu_enable_general_irq_channel +EXPORT_SYMBOL vmlinux 0x3800b124 fscrypt_fname_alloc_buffer +EXPORT_SYMBOL vmlinux 0x381a798a setup_max_cpus +EXPORT_SYMBOL vmlinux 0x3838dec4 sb_min_blocksize +EXPORT_SYMBOL vmlinux 0x385d2262 do_clone_file_range +EXPORT_SYMBOL vmlinux 0x386ea33c clocksource_change_rating +EXPORT_SYMBOL vmlinux 0x3872e8ea jbd2_journal_unlock_updates +EXPORT_SYMBOL vmlinux 0x38869d88 kstat +EXPORT_SYMBOL vmlinux 0x388aa3c9 neigh_proc_dointvec_ms_jiffies +EXPORT_SYMBOL vmlinux 0x3891ffc8 ecryptfs_fill_auth_tok +EXPORT_SYMBOL vmlinux 0x389617b0 LZ4_decompress_fast_continue +EXPORT_SYMBOL vmlinux 0x38994d01 jbd2_log_start_commit +EXPORT_SYMBOL vmlinux 0x38a71b7e pci_free_resource_list +EXPORT_SYMBOL vmlinux 0x38a9f7c5 in6addr_loopback +EXPORT_SYMBOL vmlinux 0x38e46431 mempool_exit +EXPORT_SYMBOL vmlinux 0x38ec7958 nf_setsockopt +EXPORT_SYMBOL vmlinux 0x38fd05ef generic_file_splice_read +EXPORT_SYMBOL vmlinux 0x39085cbc of_graph_parse_endpoint +EXPORT_SYMBOL vmlinux 0x3928efe9 __per_cpu_offset +EXPORT_SYMBOL vmlinux 0x392b1fea wait_for_completion_io +EXPORT_SYMBOL vmlinux 0x393800a1 of_device_is_available +EXPORT_SYMBOL vmlinux 0x3939f8f0 rfkill_pause_polling +EXPORT_SYMBOL vmlinux 0x39461d6a in_egroup_p +EXPORT_SYMBOL vmlinux 0x3946dfcc starget_for_each_device +EXPORT_SYMBOL vmlinux 0x394a1e11 phy_sfp_attach +EXPORT_SYMBOL vmlinux 0x3955fcf6 __kfifo_in_r +EXPORT_SYMBOL vmlinux 0x395d9fdf devm_request_threaded_irq +EXPORT_SYMBOL vmlinux 0x398bc972 __test_set_page_writeback +EXPORT_SYMBOL vmlinux 0x398d8581 del_gendisk +EXPORT_SYMBOL vmlinux 0x39920df8 request_key_with_auxdata +EXPORT_SYMBOL vmlinux 0x39991865 icmp_global_allow +EXPORT_SYMBOL vmlinux 0x399ad043 __kfifo_dma_out_finish_r +EXPORT_SYMBOL vmlinux 0x399f2624 neigh_resolve_output +EXPORT_SYMBOL vmlinux 0x39b52d19 __bitmap_and +EXPORT_SYMBOL vmlinux 0x39b8d49c cpu_rmap_update +EXPORT_SYMBOL vmlinux 0x39c0cac8 scsi_compat_ioctl +EXPORT_SYMBOL vmlinux 0x39c3d722 jbd2_journal_start +EXPORT_SYMBOL vmlinux 0x39ca8218 seg6_hmac_info_lookup +EXPORT_SYMBOL vmlinux 0x39cdf9b8 of_find_node_with_property +EXPORT_SYMBOL vmlinux 0x39d1409d rtnl_link_get_net +EXPORT_SYMBOL vmlinux 0x39d40713 neigh_seq_start +EXPORT_SYMBOL vmlinux 0x39d9fbd3 devm_request_any_context_irq +EXPORT_SYMBOL vmlinux 0x39edbbf7 blk_mq_tagset_wait_completed_request +EXPORT_SYMBOL vmlinux 0x39f51361 netdev_notify_peers +EXPORT_SYMBOL vmlinux 0x39f9769f irq_stat +EXPORT_SYMBOL vmlinux 0x3a072956 genlmsg_put +EXPORT_SYMBOL vmlinux 0x3a13f54a sgl_alloc +EXPORT_SYMBOL vmlinux 0x3a2756d2 key_revoke +EXPORT_SYMBOL vmlinux 0x3a2f6702 sg_alloc_table +EXPORT_SYMBOL vmlinux 0x3a34bb37 param_set_byte +EXPORT_SYMBOL vmlinux 0x3a388a66 xfrm6_find_1stfragopt +EXPORT_SYMBOL vmlinux 0x3a4980b7 vfs_ioc_setflags_prepare +EXPORT_SYMBOL vmlinux 0x3a4ac327 ptp_cancel_worker_sync +EXPORT_SYMBOL vmlinux 0x3a4b4e47 sock_i_ino +EXPORT_SYMBOL vmlinux 0x3a4f9d28 rng_is_initialized +EXPORT_SYMBOL vmlinux 0x3a6c92c7 eth_get_headlen +EXPORT_SYMBOL vmlinux 0x3a87cdee drop_super +EXPORT_SYMBOL vmlinux 0x3a8af407 inode_init_once +EXPORT_SYMBOL vmlinux 0x3aa52cbd __insert_inode_hash +EXPORT_SYMBOL vmlinux 0x3ab7b1cc scsi_set_sense_field_pointer +EXPORT_SYMBOL vmlinux 0x3abb628d blk_integrity_compare +EXPORT_SYMBOL vmlinux 0x3acb5b71 skb_dequeue_tail +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 0x3aff3200 acpi_evaluate_object_typed +EXPORT_SYMBOL vmlinux 0x3b02bea1 generic_parse_monolithic +EXPORT_SYMBOL vmlinux 0x3b20fb95 dma_fence_remove_callback +EXPORT_SYMBOL vmlinux 0x3b2616b2 flow_block_cb_alloc +EXPORT_SYMBOL vmlinux 0x3b2cabf5 bh_uptodate_or_lock +EXPORT_SYMBOL vmlinux 0x3b2d134e pci_bus_write_config_word +EXPORT_SYMBOL vmlinux 0x3b321462 LZ4_setStreamDecode +EXPORT_SYMBOL vmlinux 0x3b416855 uart_get_baud_rate +EXPORT_SYMBOL vmlinux 0x3b644591 __bitmap_shift_left +EXPORT_SYMBOL vmlinux 0x3b70740b nf_register_net_hooks +EXPORT_SYMBOL vmlinux 0x3b9144c9 acpi_get_current_resources +EXPORT_SYMBOL vmlinux 0x3b92ff3a blk_queue_alignment_offset +EXPORT_SYMBOL vmlinux 0x3ba42465 dma_set_coherent_mask +EXPORT_SYMBOL vmlinux 0x3bc6ebca phy_register_fixup +EXPORT_SYMBOL vmlinux 0x3bce8b9c fbcon_set_tileops +EXPORT_SYMBOL vmlinux 0x3be7643e security_xfrm_policy_free +EXPORT_SYMBOL vmlinux 0x3bfca0fd param_get_invbool +EXPORT_SYMBOL vmlinux 0x3c101591 phy_resume +EXPORT_SYMBOL vmlinux 0x3c185c61 page_put_link +EXPORT_SYMBOL vmlinux 0x3c1edec4 pci_enable_device_mem +EXPORT_SYMBOL vmlinux 0x3c29e8df mipi_dsi_attach +EXPORT_SYMBOL vmlinux 0x3c3215c4 qe_immr +EXPORT_SYMBOL vmlinux 0x3c3fce39 __local_bh_enable_ip +EXPORT_SYMBOL vmlinux 0x3c3ff9fd sprintf +EXPORT_SYMBOL vmlinux 0x3c41746b tty_port_hangup +EXPORT_SYMBOL vmlinux 0x3c48a619 simple_transaction_release +EXPORT_SYMBOL vmlinux 0x3c5ec7a8 get_vm_area +EXPORT_SYMBOL vmlinux 0x3c80c06c kstrtoull +EXPORT_SYMBOL vmlinux 0x3c81852a kiocb_set_cancel_fn +EXPORT_SYMBOL vmlinux 0x3cb833b8 inode_insert5 +EXPORT_SYMBOL vmlinux 0x3cc97f50 ilookup5 +EXPORT_SYMBOL vmlinux 0x3cd9ed83 logic_insw +EXPORT_SYMBOL vmlinux 0x3ce229dd write_inode_now +EXPORT_SYMBOL vmlinux 0x3ce4ca6f disable_irq +EXPORT_SYMBOL vmlinux 0x3cfae15f prepare_kernel_cred +EXPORT_SYMBOL vmlinux 0x3d02cd70 dma_fence_signal_locked +EXPORT_SYMBOL vmlinux 0x3d06b424 mmc_can_gpio_ro +EXPORT_SYMBOL vmlinux 0x3d210724 gen_pool_dma_zalloc_align +EXPORT_SYMBOL vmlinux 0x3d38e71f netif_napi_del +EXPORT_SYMBOL vmlinux 0x3d5364c6 dev_uc_sync_multiple +EXPORT_SYMBOL vmlinux 0x3d56e7b3 utf8_unload +EXPORT_SYMBOL vmlinux 0x3d5bb3fd refcount_dec_and_lock_irqsave +EXPORT_SYMBOL vmlinux 0x3d63b09f __scsi_print_sense +EXPORT_SYMBOL vmlinux 0x3d786b05 rpmh_write_batch +EXPORT_SYMBOL vmlinux 0x3d9c8334 mmc_is_req_done +EXPORT_SYMBOL vmlinux 0x3d9ee9f0 clear_page +EXPORT_SYMBOL vmlinux 0x3da954eb tcp_recvmsg +EXPORT_SYMBOL vmlinux 0x3dabf271 memcg_sockets_enabled_key +EXPORT_SYMBOL vmlinux 0x3dad9978 cancel_delayed_work +EXPORT_SYMBOL vmlinux 0x3dafc384 touchscreen_report_pos +EXPORT_SYMBOL vmlinux 0x3db7fdfc proc_create_seq_private +EXPORT_SYMBOL vmlinux 0x3dc5fb49 rtnl_create_link +EXPORT_SYMBOL vmlinux 0x3dc619d3 swake_up_locked +EXPORT_SYMBOL vmlinux 0x3dc675ac pnpacpi_protocol +EXPORT_SYMBOL vmlinux 0x3dcb88a0 irq_set_handler_data +EXPORT_SYMBOL vmlinux 0x3dcbee66 vme_master_mmap +EXPORT_SYMBOL vmlinux 0x3dd3f054 xudma_rchan_get_id +EXPORT_SYMBOL vmlinux 0x3dd9b230 proc_dointvec_userhz_jiffies +EXPORT_SYMBOL vmlinux 0x3ddc754a generic_block_fiemap +EXPORT_SYMBOL vmlinux 0x3de12763 update_devfreq +EXPORT_SYMBOL vmlinux 0x3de160eb blk_queue_dma_alignment +EXPORT_SYMBOL vmlinux 0x3dee360e vfs_getattr_nosec +EXPORT_SYMBOL vmlinux 0x3dfb86b9 resource_list_create_entry +EXPORT_SYMBOL vmlinux 0x3dfc897c seq_hlist_start_head +EXPORT_SYMBOL vmlinux 0x3e0679d9 kobject_init +EXPORT_SYMBOL vmlinux 0x3e0b3476 iget_failed +EXPORT_SYMBOL vmlinux 0x3e1aec64 jbd2_journal_restart +EXPORT_SYMBOL vmlinux 0x3e2b0ba6 groups_alloc +EXPORT_SYMBOL vmlinux 0x3e53c32c security_unix_may_send +EXPORT_SYMBOL vmlinux 0x3e575e66 napi_schedule_prep +EXPORT_SYMBOL vmlinux 0x3e72d9d6 thaw_bdev +EXPORT_SYMBOL vmlinux 0x3e785954 rproc_elf_get_boot_addr +EXPORT_SYMBOL vmlinux 0x3e87be08 nobh_truncate_page +EXPORT_SYMBOL vmlinux 0x3e892033 rproc_coredump_add_segment +EXPORT_SYMBOL vmlinux 0x3e909dd8 vc_cons +EXPORT_SYMBOL vmlinux 0x3e9110fa __hw_addr_unsync +EXPORT_SYMBOL vmlinux 0x3e916620 serio_interrupt +EXPORT_SYMBOL vmlinux 0x3e9686d3 amba_release_regions +EXPORT_SYMBOL vmlinux 0x3eb2bae1 mod_zone_page_state +EXPORT_SYMBOL vmlinux 0x3eba5553 jbd2_journal_abort +EXPORT_SYMBOL vmlinux 0x3ec6b981 of_graph_get_remote_endpoint +EXPORT_SYMBOL vmlinux 0x3ee0d301 tcp_v4_connect +EXPORT_SYMBOL vmlinux 0x3eeb2322 __wake_up +EXPORT_SYMBOL vmlinux 0x3efe1703 phy_unregister_fixup_for_id +EXPORT_SYMBOL vmlinux 0x3f0ea1cd i2c_smbus_write_block_data +EXPORT_SYMBOL vmlinux 0x3f0eabd2 xxh64_update +EXPORT_SYMBOL vmlinux 0x3f2ae03b pm_vt_switch_required +EXPORT_SYMBOL vmlinux 0x3f4547a7 put_unused_fd +EXPORT_SYMBOL vmlinux 0x3f4bd846 gen_pool_first_fit_order_align +EXPORT_SYMBOL vmlinux 0x3f4f34e1 skb_clone_sk +EXPORT_SYMBOL vmlinux 0x3f545cad cpumask_any_and_distribute +EXPORT_SYMBOL vmlinux 0x3f61952f bd_set_size +EXPORT_SYMBOL vmlinux 0x3f64c2a9 request_key_rcu +EXPORT_SYMBOL vmlinux 0x3f89071b security_ib_pkey_access +EXPORT_SYMBOL vmlinux 0x3f8f040e page_readlink +EXPORT_SYMBOL vmlinux 0x3f9bf7e2 kernel_getsockname +EXPORT_SYMBOL vmlinux 0x3f9dcdfe inet6_bind +EXPORT_SYMBOL vmlinux 0x3fa4aa02 eth_mac_addr +EXPORT_SYMBOL vmlinux 0x3fa527b8 clk_hw_register_clkdev +EXPORT_SYMBOL vmlinux 0x3fb53598 vm_insert_pages +EXPORT_SYMBOL vmlinux 0x3fbf3c89 vme_slave_set +EXPORT_SYMBOL vmlinux 0x3fcd8dc4 mipi_dsi_driver_register_full +EXPORT_SYMBOL vmlinux 0x3fd78f3b register_chrdev_region +EXPORT_SYMBOL vmlinux 0x3fe2ccbe memweight +EXPORT_SYMBOL vmlinux 0x3fee55bc phy_attach +EXPORT_SYMBOL vmlinux 0x3ff3a8b5 con_set_default_unimap +EXPORT_SYMBOL vmlinux 0x3ff5fec7 key_put +EXPORT_SYMBOL vmlinux 0x40042cb3 pm8606_osc_disable +EXPORT_SYMBOL vmlinux 0x401c621d alloc_netdev_mqs +EXPORT_SYMBOL vmlinux 0x401d948c __sock_create +EXPORT_SYMBOL vmlinux 0x4022da14 ip6_frag_init +EXPORT_SYMBOL vmlinux 0x40344508 __bforget +EXPORT_SYMBOL vmlinux 0x4038bfd6 _copy_from_iter_nocache +EXPORT_SYMBOL vmlinux 0x4065571a tty_port_close_end +EXPORT_SYMBOL vmlinux 0x4077f1dd dma_resv_reserve_shared +EXPORT_SYMBOL vmlinux 0x4089efe0 pcim_enable_device +EXPORT_SYMBOL vmlinux 0x40973662 sysctl_udp_mem +EXPORT_SYMBOL vmlinux 0x409873e3 tty_termios_baud_rate +EXPORT_SYMBOL vmlinux 0x409bcb62 mutex_unlock +EXPORT_SYMBOL vmlinux 0x40a9b349 vzalloc +EXPORT_SYMBOL vmlinux 0x40b33d07 i2c_add_adapter +EXPORT_SYMBOL vmlinux 0x40bdb4cd elv_bio_merge_ok +EXPORT_SYMBOL vmlinux 0x40c7247c si_meminfo +EXPORT_SYMBOL vmlinux 0x40d04664 console_trylock +EXPORT_SYMBOL vmlinux 0x40d32da6 dev_close +EXPORT_SYMBOL vmlinux 0x40d59096 unregister_restart_handler +EXPORT_SYMBOL vmlinux 0x40d84a37 ZSTD_getFrameParams +EXPORT_SYMBOL vmlinux 0x40e457b4 sock_create_lite +EXPORT_SYMBOL vmlinux 0x4108aecb iov_iter_get_pages_alloc +EXPORT_SYMBOL vmlinux 0x410f0ca0 __destroy_inode +EXPORT_SYMBOL vmlinux 0x41126c04 __breadahead_gfp +EXPORT_SYMBOL vmlinux 0x4113f5a9 security_d_instantiate +EXPORT_SYMBOL vmlinux 0x41171df4 netdev_change_features +EXPORT_SYMBOL vmlinux 0x411bcca5 mark_info_dirty +EXPORT_SYMBOL vmlinux 0x412bb268 inode_io_list_del +EXPORT_SYMBOL vmlinux 0x412eacf1 ptp_clock_event +EXPORT_SYMBOL vmlinux 0x41450459 param_get_long +EXPORT_SYMBOL vmlinux 0x4145992d padata_start +EXPORT_SYMBOL vmlinux 0x41482d8b strndup_user +EXPORT_SYMBOL vmlinux 0x4168def6 pin_user_pages_unlocked +EXPORT_SYMBOL vmlinux 0x41723f82 inet_bind +EXPORT_SYMBOL vmlinux 0x417c778c scsi_scan_target +EXPORT_SYMBOL vmlinux 0x4188d439 neigh_rand_reach_time +EXPORT_SYMBOL vmlinux 0x4198ca95 __do_once_done +EXPORT_SYMBOL vmlinux 0x419b8c8c tcp_seq_next +EXPORT_SYMBOL vmlinux 0x41c1bdef generic_file_write_iter +EXPORT_SYMBOL vmlinux 0x41cefcfb __nd_driver_register +EXPORT_SYMBOL vmlinux 0x41d6c71f ipv6_dev_mc_dec +EXPORT_SYMBOL vmlinux 0x41e7af67 pci_enable_msi +EXPORT_SYMBOL vmlinux 0x41e98a89 devm_pci_remap_iospace +EXPORT_SYMBOL vmlinux 0x41efdeaf radix_tree_lookup_slot +EXPORT_SYMBOL vmlinux 0x42160169 flush_workqueue +EXPORT_SYMBOL vmlinux 0x421fa9f5 kernel_sock_shutdown +EXPORT_SYMBOL vmlinux 0x4223e799 input_mt_get_slot_by_key +EXPORT_SYMBOL vmlinux 0x4230a8d7 sg_nents_for_len +EXPORT_SYMBOL vmlinux 0x42401028 kern_unmount_array +EXPORT_SYMBOL vmlinux 0x4248ae3c single_task_running +EXPORT_SYMBOL vmlinux 0x424942c9 security_inet_conn_request +EXPORT_SYMBOL vmlinux 0x424d3620 zlib_inflateIncomp +EXPORT_SYMBOL vmlinux 0x42578e80 acpi_get_type +EXPORT_SYMBOL vmlinux 0x426ba226 tcp_enter_cwr +EXPORT_SYMBOL vmlinux 0x42755ba0 current_time +EXPORT_SYMBOL vmlinux 0x427cf487 pci_scan_bus +EXPORT_SYMBOL vmlinux 0x427e714a dev_change_flags +EXPORT_SYMBOL vmlinux 0x428ba3d8 inet_proto_csum_replace16 +EXPORT_SYMBOL vmlinux 0x429b1fcc mark_buffer_async_write +EXPORT_SYMBOL vmlinux 0x42bed8d4 unix_gc_lock +EXPORT_SYMBOL vmlinux 0x42bf3c80 serio_reconnect +EXPORT_SYMBOL vmlinux 0x42d5084b __skb_wait_for_more_packets +EXPORT_SYMBOL vmlinux 0x42ed2c29 delete_from_page_cache +EXPORT_SYMBOL vmlinux 0x42f1b900 fb_pad_unaligned_buffer +EXPORT_SYMBOL vmlinux 0x4302d0eb free_pages +EXPORT_SYMBOL vmlinux 0x430ecc96 ZSTD_initCStream_usingCDict +EXPORT_SYMBOL vmlinux 0x4322f653 fb_validate_mode +EXPORT_SYMBOL vmlinux 0x4336fcca ucs2_as_utf8 +EXPORT_SYMBOL vmlinux 0x433c1b14 inet_dgram_ops +EXPORT_SYMBOL vmlinux 0x433cabfb acpi_decode_pld_buffer +EXPORT_SYMBOL vmlinux 0x4341bf4a pipe_unlock +EXPORT_SYMBOL vmlinux 0x4351577a fb_parse_edid +EXPORT_SYMBOL vmlinux 0x43538122 napi_gro_flush +EXPORT_SYMBOL vmlinux 0x437a0d6d __sock_tx_timestamp +EXPORT_SYMBOL vmlinux 0x437eaf0d neigh_destroy +EXPORT_SYMBOL vmlinux 0x4382af64 param_ops_bool +EXPORT_SYMBOL vmlinux 0x438610bd security_tun_dev_alloc_security +EXPORT_SYMBOL vmlinux 0x4386ba4a pci_find_parent_resource +EXPORT_SYMBOL vmlinux 0x43a22059 from_kprojid_munged +EXPORT_SYMBOL vmlinux 0x43afb35a fget +EXPORT_SYMBOL vmlinux 0x43d60bea get_disk_and_module +EXPORT_SYMBOL vmlinux 0x43e23126 netlink_unicast +EXPORT_SYMBOL vmlinux 0x43f412a1 tty_port_raise_dtr_rts +EXPORT_SYMBOL vmlinux 0x4403bbd0 imx_sc_misc_set_control +EXPORT_SYMBOL vmlinux 0x44352266 __dquot_free_space +EXPORT_SYMBOL vmlinux 0x4435cc6d inetdev_by_index +EXPORT_SYMBOL vmlinux 0x44469a76 crc_ccitt_false_table +EXPORT_SYMBOL vmlinux 0x444d7cb9 of_get_cpu_node +EXPORT_SYMBOL vmlinux 0x445cd2df md_bitmap_free +EXPORT_SYMBOL vmlinux 0x44608c19 unregister_mii_timestamper +EXPORT_SYMBOL vmlinux 0x4462d35e cpufreq_get_hw_max_freq +EXPORT_SYMBOL vmlinux 0x446a2588 __scsi_iterate_devices +EXPORT_SYMBOL vmlinux 0x447f71f4 udp_lib_rehash +EXPORT_SYMBOL vmlinux 0x44805139 __fs_parse +EXPORT_SYMBOL vmlinux 0x448df24a add_to_page_cache_locked +EXPORT_SYMBOL vmlinux 0x4490ab95 tty_unregister_driver +EXPORT_SYMBOL vmlinux 0x44964022 lru_cache_add +EXPORT_SYMBOL vmlinux 0x449ad0a7 memcmp +EXPORT_SYMBOL vmlinux 0x44a6e90a irq_cpu_rmap_add +EXPORT_SYMBOL vmlinux 0x44a7e4b7 seq_escape_mem_ascii +EXPORT_SYMBOL vmlinux 0x44a809e5 unpin_user_pages +EXPORT_SYMBOL vmlinux 0x44ae6434 of_get_cpu_state_node +EXPORT_SYMBOL vmlinux 0x44b7f7a6 pnp_register_card_driver +EXPORT_SYMBOL vmlinux 0x44ba4b39 xp_raw_get_data +EXPORT_SYMBOL vmlinux 0x44e4857b simple_statfs +EXPORT_SYMBOL vmlinux 0x44e9a829 match_token +EXPORT_SYMBOL vmlinux 0x44edf576 udp_flush_pending_frames +EXPORT_SYMBOL vmlinux 0x44f0ee68 ip6tun_encaps +EXPORT_SYMBOL vmlinux 0x44f377d6 bio_copy_data_iter +EXPORT_SYMBOL vmlinux 0x44f732a1 inode_init_owner +EXPORT_SYMBOL vmlinux 0x44fa6fe6 nf_unregister_net_hook +EXPORT_SYMBOL vmlinux 0x45006cee default_red +EXPORT_SYMBOL vmlinux 0x45081703 ec_get_handle +EXPORT_SYMBOL vmlinux 0x4508e3de __sk_queue_drop_skb +EXPORT_SYMBOL vmlinux 0x450d3a9a cfb_copyarea +EXPORT_SYMBOL vmlinux 0x450d9a35 cmd_db_read_slave_id +EXPORT_SYMBOL vmlinux 0x4514e711 file_modified +EXPORT_SYMBOL vmlinux 0x452413a1 qman_alloc_pool_range +EXPORT_SYMBOL vmlinux 0x452ba683 ipv6_ext_hdr +EXPORT_SYMBOL vmlinux 0x453a53bc amba_request_regions +EXPORT_SYMBOL vmlinux 0x453c8403 pci_msi_enabled +EXPORT_SYMBOL vmlinux 0x45535485 xxh32_update +EXPORT_SYMBOL vmlinux 0x4555d176 xfrm_policy_byid +EXPORT_SYMBOL vmlinux 0x456db936 __dev_getfirstbyhwtype +EXPORT_SYMBOL vmlinux 0x4578f528 __kfifo_to_user +EXPORT_SYMBOL vmlinux 0x458c0dfa dma_sync_wait +EXPORT_SYMBOL vmlinux 0x45919906 vme_bus_num +EXPORT_SYMBOL vmlinux 0x45929e5b ata_scsi_cmd_error_handler +EXPORT_SYMBOL vmlinux 0x45bdd953 mntput +EXPORT_SYMBOL vmlinux 0x45c384f0 phy_detach +EXPORT_SYMBOL vmlinux 0x45d77767 locks_remove_posix +EXPORT_SYMBOL vmlinux 0x45dc6af7 page_cache_next_miss +EXPORT_SYMBOL vmlinux 0x45e27dc3 __set_page_dirty_nobuffers +EXPORT_SYMBOL vmlinux 0x45e535a5 arp_create +EXPORT_SYMBOL vmlinux 0x45e69e01 prepare_to_wait_exclusive +EXPORT_SYMBOL vmlinux 0x45fa864e proc_create_single_data +EXPORT_SYMBOL vmlinux 0x4602f163 tcp_filter +EXPORT_SYMBOL vmlinux 0x46045dd7 kstrtou8 +EXPORT_SYMBOL vmlinux 0x460fb61c phy_do_ioctl +EXPORT_SYMBOL vmlinux 0x461ac773 kstrtol_from_user +EXPORT_SYMBOL vmlinux 0x461d16ca sg_nents +EXPORT_SYMBOL vmlinux 0x46282d19 pci_enable_ptm +EXPORT_SYMBOL vmlinux 0x463219fb tcp_hashinfo +EXPORT_SYMBOL vmlinux 0x463fadf4 param_ops_ulong +EXPORT_SYMBOL vmlinux 0x46442e6d fb_set_var +EXPORT_SYMBOL vmlinux 0x4658cfcf __dquot_transfer +EXPORT_SYMBOL vmlinux 0x4659b92d of_graph_get_endpoint_count +EXPORT_SYMBOL vmlinux 0x465e24ff ucs2_utf8size +EXPORT_SYMBOL vmlinux 0x466c14a7 __delay +EXPORT_SYMBOL vmlinux 0x466cd834 pci_irq_get_affinity +EXPORT_SYMBOL vmlinux 0x466feea4 __post_watch_notification +EXPORT_SYMBOL vmlinux 0x467d6747 skb_get_hash_perturb +EXPORT_SYMBOL vmlinux 0x467df16d netdev_rss_key_fill +EXPORT_SYMBOL vmlinux 0x4687f408 ps2_sliced_command +EXPORT_SYMBOL vmlinux 0x4698fe8a bman_release +EXPORT_SYMBOL vmlinux 0x469a6ec7 tcp_parse_md5sig_option +EXPORT_SYMBOL vmlinux 0x469d9dd7 __invalidate_device +EXPORT_SYMBOL vmlinux 0x46a39718 processors +EXPORT_SYMBOL vmlinux 0x46a4afdf filemap_flush +EXPORT_SYMBOL vmlinux 0x46a78ce4 d_find_any_alias +EXPORT_SYMBOL vmlinux 0x46aa6b9c dquot_commit_info +EXPORT_SYMBOL vmlinux 0x46bc052f pcix_get_mmrbc +EXPORT_SYMBOL vmlinux 0x46c2c1ce page_pool_put_page +EXPORT_SYMBOL vmlinux 0x46c47fb6 __node_distance +EXPORT_SYMBOL vmlinux 0x46d76580 is_bad_inode +EXPORT_SYMBOL vmlinux 0x46dd67a7 phy_ethtool_get_wol +EXPORT_SYMBOL vmlinux 0x46f2d456 netpoll_poll_enable +EXPORT_SYMBOL vmlinux 0x46f62ffb sock_no_linger +EXPORT_SYMBOL vmlinux 0x46ff7d12 qcom_scm_iommu_secure_ptbl_size +EXPORT_SYMBOL vmlinux 0x4701735e keyring_alloc +EXPORT_SYMBOL vmlinux 0x470612dc fman_port_get_qman_channel_id +EXPORT_SYMBOL vmlinux 0x4715a909 acpi_load_table +EXPORT_SYMBOL vmlinux 0x471a89d4 __put_user_ns +EXPORT_SYMBOL vmlinux 0x471abace ata_std_end_eh +EXPORT_SYMBOL vmlinux 0x4726b0fe pci_iomap +EXPORT_SYMBOL vmlinux 0x472f26a5 insert_inode_locked4 +EXPORT_SYMBOL vmlinux 0x473ad753 xfrm_state_insert +EXPORT_SYMBOL vmlinux 0x473af8f8 dev_set_promiscuity +EXPORT_SYMBOL vmlinux 0x47469736 file_write_and_wait_range +EXPORT_SYMBOL vmlinux 0x475d7427 fman_get_rx_extra_headroom +EXPORT_SYMBOL vmlinux 0x47677360 jbd2_journal_init_dev +EXPORT_SYMBOL vmlinux 0x4769eb33 dev_mc_flush +EXPORT_SYMBOL vmlinux 0x47709e42 free_anon_bdev +EXPORT_SYMBOL vmlinux 0x47714c2c pipe_lock +EXPORT_SYMBOL vmlinux 0x47723108 flow_indr_block_cb_alloc +EXPORT_SYMBOL vmlinux 0x4780c4d3 get_mem_cgroup_from_page +EXPORT_SYMBOL vmlinux 0x479137ca imx_scu_irq_unregister_notifier +EXPORT_SYMBOL vmlinux 0x47939e0d __tasklet_hi_schedule +EXPORT_SYMBOL vmlinux 0x47942d06 ipv6_chk_custom_prefix +EXPORT_SYMBOL vmlinux 0x47960bc4 proc_do_large_bitmap +EXPORT_SYMBOL vmlinux 0x479c3c86 find_next_zero_bit +EXPORT_SYMBOL vmlinux 0x479cf4a5 scsi_command_normalize_sense +EXPORT_SYMBOL vmlinux 0x47a0cdcb mb_cache_entry_find_next +EXPORT_SYMBOL vmlinux 0x47b1b5c9 netlink_set_err +EXPORT_SYMBOL vmlinux 0x47c65bfc unregister_inet6addr_validator_notifier +EXPORT_SYMBOL vmlinux 0x47d7b76c dcb_ieee_setapp +EXPORT_SYMBOL vmlinux 0x480b0416 clkdev_alloc +EXPORT_SYMBOL vmlinux 0x48193639 acpi_lid_open +EXPORT_SYMBOL vmlinux 0x4829a47e memcpy +EXPORT_SYMBOL vmlinux 0x4829cf6b fscrypt_enqueue_decrypt_work +EXPORT_SYMBOL vmlinux 0x4837bb10 logic_outsb +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 0x486e9253 tty_port_open +EXPORT_SYMBOL vmlinux 0x486f69a9 xfrm_register_km +EXPORT_SYMBOL vmlinux 0x488eac4f bioset_init +EXPORT_SYMBOL vmlinux 0x48956386 set_page_dirty_lock +EXPORT_SYMBOL vmlinux 0x489eda10 memset32 +EXPORT_SYMBOL vmlinux 0x489f6e0b rdma_dim +EXPORT_SYMBOL vmlinux 0x48a91171 string_get_size +EXPORT_SYMBOL vmlinux 0x48ac8389 genphy_read_status +EXPORT_SYMBOL vmlinux 0x48b25c0a iw_handler_get_spy +EXPORT_SYMBOL vmlinux 0x48b436cf mini_qdisc_pair_init +EXPORT_SYMBOL vmlinux 0x48b99a13 vme_lm_free +EXPORT_SYMBOL vmlinux 0x48c093fb _atomic_dec_and_lock_irqsave +EXPORT_SYMBOL vmlinux 0x48c0d834 block_read_full_page +EXPORT_SYMBOL vmlinux 0x48c42d2b __nla_put +EXPORT_SYMBOL vmlinux 0x48d4ac59 unpin_user_pages_dirty_lock +EXPORT_SYMBOL vmlinux 0x48ef50c6 md_reload_sb +EXPORT_SYMBOL vmlinux 0x48f185ab udp_skb_destructor +EXPORT_SYMBOL vmlinux 0x48fafa94 mdio_bus_type +EXPORT_SYMBOL vmlinux 0x4900f87a compat_sock_common_setsockopt +EXPORT_SYMBOL vmlinux 0x49045426 icmp_err_convert +EXPORT_SYMBOL vmlinux 0x49089cfd xp_dma_sync_for_cpu_slow +EXPORT_SYMBOL vmlinux 0x49117473 of_graph_get_port_by_id +EXPORT_SYMBOL vmlinux 0x4921300f phy_init_eee +EXPORT_SYMBOL vmlinux 0x49239610 tcf_exts_dump_stats +EXPORT_SYMBOL vmlinux 0x495d43df uart_remove_one_port +EXPORT_SYMBOL vmlinux 0x4970dcb9 blk_mq_tag_to_rq +EXPORT_SYMBOL vmlinux 0x4976967a seq_escape +EXPORT_SYMBOL vmlinux 0x4981d620 tcp_v4_conn_request +EXPORT_SYMBOL vmlinux 0x498cd333 config_item_init_type_name +EXPORT_SYMBOL vmlinux 0x498e9128 ZSTD_findDecompressedSize +EXPORT_SYMBOL vmlinux 0x4992ca09 input_get_timestamp +EXPORT_SYMBOL vmlinux 0x499f0ecf nd_sb_checksum +EXPORT_SYMBOL vmlinux 0x49b163b8 acpi_bus_scan +EXPORT_SYMBOL vmlinux 0x49ccb724 ipv6_getsockopt +EXPORT_SYMBOL vmlinux 0x49e3a47f inet6_register_icmp_sender +EXPORT_SYMBOL vmlinux 0x49e478c9 phy_device_remove +EXPORT_SYMBOL vmlinux 0x49e7797c tcp_prot +EXPORT_SYMBOL vmlinux 0x49ed86a0 ZSTD_endStream +EXPORT_SYMBOL vmlinux 0x49fc319c sock_no_mmap +EXPORT_SYMBOL vmlinux 0x4a2e710a tcp_ioctl +EXPORT_SYMBOL vmlinux 0x4a3ad70e wait_for_completion_timeout +EXPORT_SYMBOL vmlinux 0x4a5a9756 tcp_sock_set_user_timeout +EXPORT_SYMBOL vmlinux 0x4a6626e1 netdev_name_node_alt_create +EXPORT_SYMBOL vmlinux 0x4a6cb758 brioctl_set +EXPORT_SYMBOL vmlinux 0x4a6e4ba8 set_disk_ro +EXPORT_SYMBOL vmlinux 0x4a81cf56 mdio_driver_register +EXPORT_SYMBOL vmlinux 0x4a920473 ethtool_op_get_ts_info +EXPORT_SYMBOL vmlinux 0x4a96a8eb xxh32_digest +EXPORT_SYMBOL vmlinux 0x4aaf4146 simple_transaction_read +EXPORT_SYMBOL vmlinux 0x4ab208ba acpi_walk_resource_buffer +EXPORT_SYMBOL vmlinux 0x4adc252e write_cache_pages +EXPORT_SYMBOL vmlinux 0x4ae04cb9 ip_frag_init +EXPORT_SYMBOL vmlinux 0x4aea463f crc32_le_shift +EXPORT_SYMBOL vmlinux 0x4afb2238 add_wait_queue +EXPORT_SYMBOL vmlinux 0x4afd21cb request_key_tag +EXPORT_SYMBOL vmlinux 0x4b02d7ee xsk_umem_consume_tx_done +EXPORT_SYMBOL vmlinux 0x4b215402 xfrm_state_delete_tunnel +EXPORT_SYMBOL vmlinux 0x4b2be9a6 can_nice +EXPORT_SYMBOL vmlinux 0x4b2e9bdd bdev_dax_pgoff +EXPORT_SYMBOL vmlinux 0x4b38f41b blk_mq_run_hw_queue +EXPORT_SYMBOL vmlinux 0x4b3a0bca dquot_writeback_dquots +EXPORT_SYMBOL vmlinux 0x4b3cbd70 jbd2_journal_set_triggers +EXPORT_SYMBOL vmlinux 0x4b3f3622 phy_free_interrupt +EXPORT_SYMBOL vmlinux 0x4b5fd49e dm_kcopyd_do_callback +EXPORT_SYMBOL vmlinux 0x4b6df007 acpi_evaluate_reg +EXPORT_SYMBOL vmlinux 0x4b6f77be pci_choose_state +EXPORT_SYMBOL vmlinux 0x4b95456a md_write_end +EXPORT_SYMBOL vmlinux 0x4bb368d9 mfd_cell_enable +EXPORT_SYMBOL vmlinux 0x4bb8c24c devm_devfreq_remove_device +EXPORT_SYMBOL vmlinux 0x4bb9f3bb blk_register_region +EXPORT_SYMBOL vmlinux 0x4bbd866a __sg_alloc_table_from_pages +EXPORT_SYMBOL vmlinux 0x4bcc2662 mempool_init_node +EXPORT_SYMBOL vmlinux 0x4bd03916 ndo_dflt_fdb_dump +EXPORT_SYMBOL vmlinux 0x4bdbc583 of_graph_get_next_endpoint +EXPORT_SYMBOL vmlinux 0x4bde3ef5 mmc_wait_for_cmd +EXPORT_SYMBOL vmlinux 0x4bef1c67 empty_name +EXPORT_SYMBOL vmlinux 0x4bf3ce6f qman_release_cgrid +EXPORT_SYMBOL vmlinux 0x4bf5b633 xfrm_stateonly_find +EXPORT_SYMBOL vmlinux 0x4bf8cfe5 register_md_personality +EXPORT_SYMBOL vmlinux 0x4bfcdb41 phy_advertise_supported +EXPORT_SYMBOL vmlinux 0x4bfe21fa of_phy_register_fixed_link +EXPORT_SYMBOL vmlinux 0x4c07a7e0 acpi_processor_unregister_performance +EXPORT_SYMBOL vmlinux 0x4c0d8cfe xfrm_state_lookup +EXPORT_SYMBOL vmlinux 0x4c123348 pci_restore_state +EXPORT_SYMBOL vmlinux 0x4c237a45 inc_nlink +EXPORT_SYMBOL vmlinux 0x4c38d4e0 utf8_strncasecmp_folded +EXPORT_SYMBOL vmlinux 0x4c3abc54 proc_symlink +EXPORT_SYMBOL vmlinux 0x4c416eb9 LZ4_decompress_fast +EXPORT_SYMBOL vmlinux 0x4c433d17 scsi_is_sdev_device +EXPORT_SYMBOL vmlinux 0x4c49169e i2c_smbus_read_byte_data +EXPORT_SYMBOL vmlinux 0x4c54d284 noop_llseek +EXPORT_SYMBOL vmlinux 0x4c70753f fman_port_bind +EXPORT_SYMBOL vmlinux 0x4c7528dc cfb_fillrect +EXPORT_SYMBOL vmlinux 0x4c7684af pm860x_reg_read +EXPORT_SYMBOL vmlinux 0x4c7877b1 dcb_ieee_getapp_default_prio_mask +EXPORT_SYMBOL vmlinux 0x4c929d71 eth_prepare_mac_addr_change +EXPORT_SYMBOL vmlinux 0x4c99d4ab jbd2_transaction_committed +EXPORT_SYMBOL vmlinux 0x4cba441d iwe_stream_add_event +EXPORT_SYMBOL vmlinux 0x4ccc14e0 __f_setown +EXPORT_SYMBOL vmlinux 0x4cd0d3d5 mpage_readahead +EXPORT_SYMBOL vmlinux 0x4d0040a0 cpumask_next_and +EXPORT_SYMBOL vmlinux 0x4d097cad blk_mq_start_hw_queues +EXPORT_SYMBOL vmlinux 0x4d0d163d copy_page +EXPORT_SYMBOL vmlinux 0x4d1720ec tcp_add_backlog +EXPORT_SYMBOL vmlinux 0x4d2323c2 sock_edemux +EXPORT_SYMBOL vmlinux 0x4d2c7133 acpi_info +EXPORT_SYMBOL vmlinux 0x4d32fc0f skb_dequeue +EXPORT_SYMBOL vmlinux 0x4d40a15b i2c_transfer +EXPORT_SYMBOL vmlinux 0x4d576c7e sk_reset_timer +EXPORT_SYMBOL vmlinux 0x4d5b8abe tcp_ld_RTO_revert +EXPORT_SYMBOL vmlinux 0x4d65cbd5 csum_ipv6_magic +EXPORT_SYMBOL vmlinux 0x4d69549b sock_i_uid +EXPORT_SYMBOL vmlinux 0x4d924f20 memremap +EXPORT_SYMBOL vmlinux 0x4d94770c scsi_test_unit_ready +EXPORT_SYMBOL vmlinux 0x4d9b652b rb_erase +EXPORT_SYMBOL vmlinux 0x4dca08ee sync_file_get_fence +EXPORT_SYMBOL vmlinux 0x4dcfdc26 pci_fixup_device +EXPORT_SYMBOL vmlinux 0x4ddff337 mdiobus_register_device +EXPORT_SYMBOL vmlinux 0x4de86a0a inet_protos +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 0x4e03e530 napi_disable +EXPORT_SYMBOL vmlinux 0x4e09e718 dev_uc_del +EXPORT_SYMBOL vmlinux 0x4e0c89fe gro_cells_init +EXPORT_SYMBOL vmlinux 0x4e20bcf8 radix_tree_tag_set +EXPORT_SYMBOL vmlinux 0x4e232175 ppp_register_net_channel +EXPORT_SYMBOL vmlinux 0x4e2e74c1 qcom_scm_io_readl +EXPORT_SYMBOL vmlinux 0x4e3567f7 match_int +EXPORT_SYMBOL vmlinux 0x4e4f0f16 dma_fence_chain_find_seqno +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 0x4e6f9eb7 fs_param_is_blockdev +EXPORT_SYMBOL vmlinux 0x4e9c5b86 netpoll_print_options +EXPORT_SYMBOL vmlinux 0x4ea25709 dql_reset +EXPORT_SYMBOL vmlinux 0x4ea6c4a3 skb_push +EXPORT_SYMBOL vmlinux 0x4eada8f7 security_secid_to_secctx +EXPORT_SYMBOL vmlinux 0x4ebbbc53 blk_stack_limits +EXPORT_SYMBOL vmlinux 0x4ebc4dd6 generic_write_end +EXPORT_SYMBOL vmlinux 0x4ebc9c67 xfrm_policy_delete +EXPORT_SYMBOL vmlinux 0x4ebcda42 free_xenballooned_pages +EXPORT_SYMBOL vmlinux 0x4ec2dd98 key_move +EXPORT_SYMBOL vmlinux 0x4ec33811 mmc_can_secure_erase_trim +EXPORT_SYMBOL vmlinux 0x4ec54e78 bitmap_to_arr32 +EXPORT_SYMBOL vmlinux 0x4ec7df46 bio_add_page +EXPORT_SYMBOL vmlinux 0x4ecdb9cd xfrm_dst_ifdown +EXPORT_SYMBOL vmlinux 0x4ef5aa06 jbd2_journal_ack_err +EXPORT_SYMBOL vmlinux 0x4ef96045 nla_put +EXPORT_SYMBOL vmlinux 0x4efec81f bio_free_pages +EXPORT_SYMBOL vmlinux 0x4f0f874a xsk_set_rx_need_wakeup +EXPORT_SYMBOL vmlinux 0x4f11b59d devm_get_clk_from_child +EXPORT_SYMBOL vmlinux 0x4f1cd128 security_tun_dev_create +EXPORT_SYMBOL vmlinux 0x4f2250ba rtc_tm_to_time64 +EXPORT_SYMBOL vmlinux 0x4f2a98ff nvm_dev_dma_alloc +EXPORT_SYMBOL vmlinux 0x4f4ba1d2 phy_drivers_register +EXPORT_SYMBOL vmlinux 0x4f4d78c5 LZ4_compress_default +EXPORT_SYMBOL vmlinux 0x4f55166f acpi_set_current_resources +EXPORT_SYMBOL vmlinux 0x4f564385 seg6_hmac_info_add +EXPORT_SYMBOL vmlinux 0x4f5a27b4 lookup_bdev +EXPORT_SYMBOL vmlinux 0x4f5e4762 dquot_initialize +EXPORT_SYMBOL vmlinux 0x4f657feb tty_port_close_start +EXPORT_SYMBOL vmlinux 0x4f854ade fb_get_buffer_offset +EXPORT_SYMBOL vmlinux 0x4f921cb4 nd_btt_probe +EXPORT_SYMBOL vmlinux 0x4f923731 ip4_datagram_connect +EXPORT_SYMBOL vmlinux 0x4fb23573 tty_register_driver +EXPORT_SYMBOL vmlinux 0x4fb7b9d8 make_kprojid +EXPORT_SYMBOL vmlinux 0x4fbe8c5b fscrypt_decrypt_bio +EXPORT_SYMBOL vmlinux 0x4fe487dd is_nvdimm_bus_locked +EXPORT_SYMBOL vmlinux 0x50097088 security_tun_dev_free_security +EXPORT_SYMBOL vmlinux 0x5009c71d glob_match +EXPORT_SYMBOL vmlinux 0x5027bde2 acpi_acquire_mutex +EXPORT_SYMBOL vmlinux 0x50318fc7 km_policy_notify +EXPORT_SYMBOL vmlinux 0x503c395e jbd2_journal_init_jbd_inode +EXPORT_SYMBOL vmlinux 0x504f73c4 ip6mr_rule_default +EXPORT_SYMBOL vmlinux 0x5055b611 sk_wait_data +EXPORT_SYMBOL vmlinux 0x505f664b vfs_ioctl +EXPORT_SYMBOL vmlinux 0x50624917 sha1_init +EXPORT_SYMBOL vmlinux 0x506dff1a __genradix_free +EXPORT_SYMBOL vmlinux 0x50770b3e dcache_dir_open +EXPORT_SYMBOL vmlinux 0x5077b933 of_find_matching_node_and_match +EXPORT_SYMBOL vmlinux 0x50890d91 seq_puts +EXPORT_SYMBOL vmlinux 0x5097d34b lease_modify +EXPORT_SYMBOL vmlinux 0x509b64ea acpi_has_method +EXPORT_SYMBOL vmlinux 0x50a4698c fb_videomode_to_modelist +EXPORT_SYMBOL vmlinux 0x50ac428c of_graph_get_endpoint_by_regs +EXPORT_SYMBOL vmlinux 0x50b5f8a5 generic_file_direct_write +EXPORT_SYMBOL vmlinux 0x50b73ce2 rfkill_find_type +EXPORT_SYMBOL vmlinux 0x50ba12d0 xfrm_trans_queue_net +EXPORT_SYMBOL vmlinux 0x50be748d security_ib_free_security +EXPORT_SYMBOL vmlinux 0x50c114f3 netdev_state_change +EXPORT_SYMBOL vmlinux 0x50cfb0b9 pagevec_lookup_range_nr_tag +EXPORT_SYMBOL vmlinux 0x50d6ed3f __vfs_getxattr +EXPORT_SYMBOL vmlinux 0x50dbdd3d submit_bio +EXPORT_SYMBOL vmlinux 0x50ec6d53 ps2_command +EXPORT_SYMBOL vmlinux 0x50f5d11c ptp_clock_unregister +EXPORT_SYMBOL vmlinux 0x50f85302 __arm_smccc_hvc +EXPORT_SYMBOL vmlinux 0x50f91491 __genradix_ptr +EXPORT_SYMBOL vmlinux 0x5102a30b do_wait_intr_irq +EXPORT_SYMBOL vmlinux 0x510db7ae unregister_filesystem +EXPORT_SYMBOL vmlinux 0x512d868a __mark_inode_dirty +EXPORT_SYMBOL vmlinux 0x515083bf acpi_release_mutex +EXPORT_SYMBOL vmlinux 0x515c7397 fs_context_for_mount +EXPORT_SYMBOL vmlinux 0x515f520b qman_portal_get_iperiod +EXPORT_SYMBOL vmlinux 0x51641162 opal_unlock_from_suspend +EXPORT_SYMBOL vmlinux 0x51718055 ppp_register_channel +EXPORT_SYMBOL vmlinux 0x5172bccd fscrypt_get_encryption_info +EXPORT_SYMBOL vmlinux 0x5193b25f devm_kvasprintf +EXPORT_SYMBOL vmlinux 0x519c8b9d alloc_file_pseudo +EXPORT_SYMBOL vmlinux 0x51b40718 trace_seq_hex_dump +EXPORT_SYMBOL vmlinux 0x51c17e31 keyring_clear +EXPORT_SYMBOL vmlinux 0x51d12d4e acpi_pci_disabled +EXPORT_SYMBOL vmlinux 0x51e77c97 pfn_valid +EXPORT_SYMBOL vmlinux 0x51feb83d genphy_c37_config_aneg +EXPORT_SYMBOL vmlinux 0x5203d176 cmd_db_ready +EXPORT_SYMBOL vmlinux 0x520e9c5d pci_set_power_state +EXPORT_SYMBOL vmlinux 0x5227fdbf write_one_page +EXPORT_SYMBOL vmlinux 0x52483372 of_node_name_prefix +EXPORT_SYMBOL vmlinux 0x52651022 udp_seq_start +EXPORT_SYMBOL vmlinux 0x526eef2c hdmi_vendor_infoframe_pack +EXPORT_SYMBOL vmlinux 0x526efdc9 dma_cache_sync +EXPORT_SYMBOL vmlinux 0x52983a4f vme_master_write +EXPORT_SYMBOL vmlinux 0x52a6427d nvm_unregister +EXPORT_SYMBOL vmlinux 0x52c0f1dd serial8250_register_8250_port +EXPORT_SYMBOL vmlinux 0x52d7158f cont_write_begin +EXPORT_SYMBOL vmlinux 0x52d717da xz_dec_init +EXPORT_SYMBOL vmlinux 0x52ebfdbe skb_vlan_push +EXPORT_SYMBOL vmlinux 0x52ecbc75 crc_ccitt +EXPORT_SYMBOL vmlinux 0x52f2850a imx_sc_pm_cpu_start +EXPORT_SYMBOL vmlinux 0x52fe7bc9 scsi_print_result +EXPORT_SYMBOL vmlinux 0x53055617 rtnetlink_put_metrics +EXPORT_SYMBOL vmlinux 0x530b1e98 pm_suspend +EXPORT_SYMBOL vmlinux 0x530e6bc1 misc_deregister +EXPORT_SYMBOL vmlinux 0x53126ecc __percpu_counter_sum +EXPORT_SYMBOL vmlinux 0x533206b5 sort_r +EXPORT_SYMBOL vmlinux 0x53456756 cdrom_dummy_generic_packet +EXPORT_SYMBOL vmlinux 0x534ab6a4 loop_register_transfer +EXPORT_SYMBOL vmlinux 0x5367bce7 set_anon_super_fc +EXPORT_SYMBOL vmlinux 0x536a16b8 follow_pfn +EXPORT_SYMBOL vmlinux 0x536d8f06 pmem_should_map_pages +EXPORT_SYMBOL vmlinux 0x539e4f37 km_state_notify +EXPORT_SYMBOL vmlinux 0x53a3f15e md_bitmap_unplug +EXPORT_SYMBOL vmlinux 0x53b954a2 up_read +EXPORT_SYMBOL vmlinux 0x53c252d9 invalidate_mapping_pages +EXPORT_SYMBOL vmlinux 0x53fa36d1 ZSTD_decompressBlock +EXPORT_SYMBOL vmlinux 0x5402da9f xudma_navss_psil_pair +EXPORT_SYMBOL vmlinux 0x5411e687 bdev_read_only +EXPORT_SYMBOL vmlinux 0x54234d96 param_set_uint +EXPORT_SYMBOL vmlinux 0x54245b39 kstrtoull_from_user +EXPORT_SYMBOL vmlinux 0x542627e1 pci_write_vpd +EXPORT_SYMBOL vmlinux 0x54398555 dst_cow_metrics_generic +EXPORT_SYMBOL vmlinux 0x543dfd04 tcf_classify_ingress +EXPORT_SYMBOL vmlinux 0x543ef284 seq_hlist_start +EXPORT_SYMBOL vmlinux 0x544bb16a iov_iter_for_each_range +EXPORT_SYMBOL vmlinux 0x5469ff81 efi +EXPORT_SYMBOL vmlinux 0x547a05df __nla_put_64bit +EXPORT_SYMBOL vmlinux 0x548bb8b9 user_path_create +EXPORT_SYMBOL vmlinux 0x548f2c10 inet_proto_csum_replace4 +EXPORT_SYMBOL vmlinux 0x54a188c9 dma_resv_add_excl_fence +EXPORT_SYMBOL vmlinux 0x54a1c82b tcf_idr_search +EXPORT_SYMBOL vmlinux 0x54a9db5f _kstrtoul +EXPORT_SYMBOL vmlinux 0x54b446de udp_seq_next +EXPORT_SYMBOL vmlinux 0x54e6fcdd net_enable_timestamp +EXPORT_SYMBOL vmlinux 0x54ea6dfe xen_start_flags +EXPORT_SYMBOL vmlinux 0x54f57b6b sock_rfree +EXPORT_SYMBOL vmlinux 0x54f9bd47 d_path +EXPORT_SYMBOL vmlinux 0x5502a649 xfrm6_rcv_tnl +EXPORT_SYMBOL vmlinux 0x5506b8f7 netlbl_bitmap_setbit +EXPORT_SYMBOL vmlinux 0x5508f28d bman_acquire +EXPORT_SYMBOL vmlinux 0x55113466 mmc_put_card +EXPORT_SYMBOL vmlinux 0x551bd071 __rb_erase_color +EXPORT_SYMBOL vmlinux 0x552db3aa qman_query_cgr_congested +EXPORT_SYMBOL vmlinux 0x554ae3a4 irq_poll_sched +EXPORT_SYMBOL vmlinux 0x55686530 __arch_clear_user +EXPORT_SYMBOL vmlinux 0x556b5d62 __kfifo_dma_in_prepare_r +EXPORT_SYMBOL vmlinux 0x55772e46 locks_lock_inode_wait +EXPORT_SYMBOL vmlinux 0x557ed982 cros_ec_prepare_tx +EXPORT_SYMBOL vmlinux 0x5584f962 config_group_init_type_name +EXPORT_SYMBOL vmlinux 0x5589549a vga_remove_vgacon +EXPORT_SYMBOL vmlinux 0x558a2799 commit_creds +EXPORT_SYMBOL vmlinux 0x558b281d aes_expandkey +EXPORT_SYMBOL vmlinux 0x55926343 proc_set_size +EXPORT_SYMBOL vmlinux 0x55998c0d blk_sync_queue +EXPORT_SYMBOL vmlinux 0x55de9c8e generic_file_llseek_size +EXPORT_SYMBOL vmlinux 0x55e31703 ethtool_convert_link_mode_to_legacy_u32 +EXPORT_SYMBOL vmlinux 0x5614f48a qman_dqrr_get_ithresh +EXPORT_SYMBOL vmlinux 0x56228148 open_with_fake_path +EXPORT_SYMBOL vmlinux 0x56293f2b sk_stream_wait_connect +EXPORT_SYMBOL vmlinux 0x56333292 __xfrm_policy_check +EXPORT_SYMBOL vmlinux 0x56359ba6 super_setup_bdi +EXPORT_SYMBOL vmlinux 0x5635a60a vmalloc_user +EXPORT_SYMBOL vmlinux 0x563ce13b shrink_dcache_parent +EXPORT_SYMBOL vmlinux 0x56466e42 ZSTD_CStreamInSize +EXPORT_SYMBOL vmlinux 0x5646dd82 netdev_lower_get_first_private_rcu +EXPORT_SYMBOL vmlinux 0x56470118 __warn_printk +EXPORT_SYMBOL vmlinux 0x5649de96 file_fdatawait_range +EXPORT_SYMBOL vmlinux 0x564f7608 acpi_reconfig_notifier_register +EXPORT_SYMBOL vmlinux 0x565b3c09 blk_mq_run_hw_queues +EXPORT_SYMBOL vmlinux 0x566aabe7 blk_mq_kick_requeue_list +EXPORT_SYMBOL vmlinux 0x5677ce0e dev_get_phys_port_name +EXPORT_SYMBOL vmlinux 0x56802ae8 rps_cpu_mask +EXPORT_SYMBOL vmlinux 0x5681119d md_register_thread +EXPORT_SYMBOL vmlinux 0x5687f211 fiemap_prep +EXPORT_SYMBOL vmlinux 0x56988483 path_put +EXPORT_SYMBOL vmlinux 0x569abcca acpi_walk_resources +EXPORT_SYMBOL vmlinux 0x56a51cdd of_graph_get_remote_port_parent +EXPORT_SYMBOL vmlinux 0x56c61f8b iunique +EXPORT_SYMBOL vmlinux 0x56c63870 configfs_unregister_default_group +EXPORT_SYMBOL vmlinux 0x56c8799d scsi_kunmap_atomic_sg +EXPORT_SYMBOL vmlinux 0x56efc3dc watchdog_register_governor +EXPORT_SYMBOL vmlinux 0x56f2236a devfreq_remove_device +EXPORT_SYMBOL vmlinux 0x56f8c371 __tracepoint_kfree +EXPORT_SYMBOL vmlinux 0x57095303 devm_mfd_add_devices +EXPORT_SYMBOL vmlinux 0x574c2e74 bitmap_release_region +EXPORT_SYMBOL vmlinux 0x575429bd jbd2_journal_errno +EXPORT_SYMBOL vmlinux 0x57575f08 dmaengine_put +EXPORT_SYMBOL vmlinux 0x57674fd7 __sw_hweight16 +EXPORT_SYMBOL vmlinux 0x578a1876 tun_xdp_to_ptr +EXPORT_SYMBOL vmlinux 0x578a408b ZSTD_initDCtx +EXPORT_SYMBOL vmlinux 0x578e9c5d tcp_rtx_synack +EXPORT_SYMBOL vmlinux 0x57900416 gen_pool_fixed_alloc +EXPORT_SYMBOL vmlinux 0x5792f848 strlcpy +EXPORT_SYMBOL vmlinux 0x57bc19d2 down_write +EXPORT_SYMBOL vmlinux 0x57c18423 mini_qdisc_pair_block_init +EXPORT_SYMBOL vmlinux 0x57da595f xfrm_input +EXPORT_SYMBOL vmlinux 0x57e1751f of_phy_connect +EXPORT_SYMBOL vmlinux 0x57f38cdc qe_get_firmware_info +EXPORT_SYMBOL vmlinux 0x5800b1de lock_sock_nested +EXPORT_SYMBOL vmlinux 0x58039331 abx500_get_register_interruptible +EXPORT_SYMBOL vmlinux 0x5818fe3c posix_acl_from_mode +EXPORT_SYMBOL vmlinux 0x581f98da zlib_inflate +EXPORT_SYMBOL vmlinux 0x5825a837 unregister_binfmt +EXPORT_SYMBOL vmlinux 0x582606eb xudma_rflow_put +EXPORT_SYMBOL vmlinux 0x582b6275 xfrm_if_unregister_cb +EXPORT_SYMBOL vmlinux 0x5838f6c9 rtc_valid_tm +EXPORT_SYMBOL vmlinux 0x5842ddb4 blk_mq_stop_hw_queues +EXPORT_SYMBOL vmlinux 0x585018e2 pci_scan_bridge +EXPORT_SYMBOL vmlinux 0x58604e4d alloc_iova_mem +EXPORT_SYMBOL vmlinux 0x586b42f6 input_grab_device +EXPORT_SYMBOL vmlinux 0x586ead47 remove_proc_entry +EXPORT_SYMBOL vmlinux 0x587b892e qe_get_num_of_risc +EXPORT_SYMBOL vmlinux 0x587f22d7 devmap_managed_key +EXPORT_SYMBOL vmlinux 0x5888dc9c flow_block_cb_lookup +EXPORT_SYMBOL vmlinux 0x588d601e sdev_disable_disk_events +EXPORT_SYMBOL vmlinux 0x58acf24b mdiobus_register_board_info +EXPORT_SYMBOL vmlinux 0x58adb05c get_vaddr_frames +EXPORT_SYMBOL vmlinux 0x58b4645c dev_close_many +EXPORT_SYMBOL vmlinux 0x58b62dc6 param_set_int +EXPORT_SYMBOL vmlinux 0x58b73bc7 match_wildcard +EXPORT_SYMBOL vmlinux 0x58e3306d bit_wait_io +EXPORT_SYMBOL vmlinux 0x58e3ca01 end_buffer_async_write +EXPORT_SYMBOL vmlinux 0x58efa001 ip_defrag +EXPORT_SYMBOL vmlinux 0x58f07724 wait_on_page_bit_killable +EXPORT_SYMBOL vmlinux 0x58f5aec5 key_validate +EXPORT_SYMBOL vmlinux 0x58f71c32 nd_btt_version +EXPORT_SYMBOL vmlinux 0x58fe59ad inode_needs_sync +EXPORT_SYMBOL vmlinux 0x5907b9b5 nla_append +EXPORT_SYMBOL vmlinux 0x59094d3e iommu_put_dma_cookie +EXPORT_SYMBOL vmlinux 0x59116f31 mmc_calc_max_discard +EXPORT_SYMBOL vmlinux 0x59119f1a configfs_register_default_group +EXPORT_SYMBOL vmlinux 0x5923a24c md_flush_request +EXPORT_SYMBOL vmlinux 0x594f9c5a fs_bio_set +EXPORT_SYMBOL vmlinux 0x59588850 vsscanf +EXPORT_SYMBOL vmlinux 0x595995aa dma_resv_init +EXPORT_SYMBOL vmlinux 0x5969cf48 free_buffer_head +EXPORT_SYMBOL vmlinux 0x59706e83 jbd2_trans_will_send_data_barrier +EXPORT_SYMBOL vmlinux 0x5990d705 flow_indr_dev_unregister +EXPORT_SYMBOL vmlinux 0x599762db hmm_range_fault +EXPORT_SYMBOL vmlinux 0x599b4888 qe_setbrg +EXPORT_SYMBOL vmlinux 0x599fb41c kvmalloc_node +EXPORT_SYMBOL vmlinux 0x59a2f0ee packing +EXPORT_SYMBOL vmlinux 0x59ad37ca security_tun_dev_attach +EXPORT_SYMBOL vmlinux 0x59b4ac3e tcp_memory_allocated +EXPORT_SYMBOL vmlinux 0x59cf5b06 netdev_set_num_tc +EXPORT_SYMBOL vmlinux 0x59d0f756 clkdev_drop +EXPORT_SYMBOL vmlinux 0x59d1906d __skb_gro_checksum_complete +EXPORT_SYMBOL vmlinux 0x59e07353 phy_suspend +EXPORT_SYMBOL vmlinux 0x59e0f881 netdev_lower_state_changed +EXPORT_SYMBOL vmlinux 0x59ee54e3 of_find_node_by_type +EXPORT_SYMBOL vmlinux 0x5a0b73d0 zlib_deflateInit2 +EXPORT_SYMBOL vmlinux 0x5a14315e kmem_cache_shrink +EXPORT_SYMBOL vmlinux 0x5a284245 unix_detach_fds +EXPORT_SYMBOL vmlinux 0x5a32c675 mipi_dsi_device_unregister +EXPORT_SYMBOL vmlinux 0x5a403647 kmem_cache_alloc_trace +EXPORT_SYMBOL vmlinux 0x5a44f8cb __crypto_memneq +EXPORT_SYMBOL vmlinux 0x5a4d313e gf128mul_4k_lle +EXPORT_SYMBOL vmlinux 0x5a50e818 jbd2_journal_destroy +EXPORT_SYMBOL vmlinux 0x5a5605cf inet_frag_reasm_finish +EXPORT_SYMBOL vmlinux 0x5a60b950 qm_channel_pool1 +EXPORT_SYMBOL vmlinux 0x5a7b366c __page_frag_cache_drain +EXPORT_SYMBOL vmlinux 0x5a7b97aa serio_close +EXPORT_SYMBOL vmlinux 0x5a816313 forget_cached_acl +EXPORT_SYMBOL vmlinux 0x5a8ae15a ZSTD_initDDict +EXPORT_SYMBOL vmlinux 0x5a921311 strncmp +EXPORT_SYMBOL vmlinux 0x5a938de5 backlight_device_register +EXPORT_SYMBOL vmlinux 0x5a956b5b empty_zero_page +EXPORT_SYMBOL vmlinux 0x5a9f1d63 memmove +EXPORT_SYMBOL vmlinux 0x5aad5304 of_get_next_parent +EXPORT_SYMBOL vmlinux 0x5ab5b9db dev_change_carrier +EXPORT_SYMBOL vmlinux 0x5abeec62 get_tz_trend +EXPORT_SYMBOL vmlinux 0x5acc798c of_phy_is_fixed_link +EXPORT_SYMBOL vmlinux 0x5ace3376 mii_ethtool_get_link_ksettings +EXPORT_SYMBOL vmlinux 0x5ad0fbb7 sock_no_listen +EXPORT_SYMBOL vmlinux 0x5ae71f59 __frontswap_store +EXPORT_SYMBOL vmlinux 0x5aed0599 page_symlink +EXPORT_SYMBOL vmlinux 0x5aed7737 sk_stream_wait_memory +EXPORT_SYMBOL vmlinux 0x5af2dc10 cpu_hwcaps +EXPORT_SYMBOL vmlinux 0x5afceaa2 dcb_ieee_delapp +EXPORT_SYMBOL vmlinux 0x5b02a13c con_copy_unimap +EXPORT_SYMBOL vmlinux 0x5b2f27fb do_wait_intr +EXPORT_SYMBOL vmlinux 0x5b36d5dd utf8agemax +EXPORT_SYMBOL vmlinux 0x5b39a0ac udp_disconnect +EXPORT_SYMBOL vmlinux 0x5b3e282f xa_store +EXPORT_SYMBOL vmlinux 0x5b3ee71e sock_no_getname +EXPORT_SYMBOL vmlinux 0x5b54903b qcom_scm_pas_mem_setup +EXPORT_SYMBOL vmlinux 0x5b56860c vm_munmap +EXPORT_SYMBOL vmlinux 0x5b66b08b xfrm4_rcv_encap +EXPORT_SYMBOL vmlinux 0x5b674def mmc_set_blocklen +EXPORT_SYMBOL vmlinux 0x5b6ca5eb genphy_update_link +EXPORT_SYMBOL vmlinux 0x5bc92e85 LZ4_compress_destSize +EXPORT_SYMBOL vmlinux 0x5bd4ff88 flow_action_cookie_create +EXPORT_SYMBOL vmlinux 0x5be27f49 bdi_alloc +EXPORT_SYMBOL vmlinux 0x5be63c5b crc32c_csum_stub +EXPORT_SYMBOL vmlinux 0x5bed3f8b param_set_ulong +EXPORT_SYMBOL vmlinux 0x5bf1cf96 adjust_managed_page_count +EXPORT_SYMBOL vmlinux 0x5bffe9e6 vfs_link +EXPORT_SYMBOL vmlinux 0x5c00d810 ZSTD_CDictWorkspaceBound +EXPORT_SYMBOL vmlinux 0x5c1882a5 devfreq_monitor_stop +EXPORT_SYMBOL vmlinux 0x5c26a53b wait_for_completion_io_timeout +EXPORT_SYMBOL vmlinux 0x5c3037af prepare_to_swait_event +EXPORT_SYMBOL vmlinux 0x5c41d7b4 set_create_files_as +EXPORT_SYMBOL vmlinux 0x5c4265f6 blk_unregister_region +EXPORT_SYMBOL vmlinux 0x5c4b7a02 module_refcount +EXPORT_SYMBOL vmlinux 0x5c4f1ab4 unlock_two_nondirectories +EXPORT_SYMBOL vmlinux 0x5c55b659 blk_set_queue_depth +EXPORT_SYMBOL vmlinux 0x5c55fe61 phy_start_cable_test_tdr +EXPORT_SYMBOL vmlinux 0x5c80ad44 __cleancache_init_fs +EXPORT_SYMBOL vmlinux 0x5c922781 dma_mmap_attrs +EXPORT_SYMBOL vmlinux 0x5ca988ad phy_remove_link_mode +EXPORT_SYMBOL vmlinux 0x5cbf86cc generic_shutdown_super +EXPORT_SYMBOL vmlinux 0x5cc4a4e5 dev_queue_xmit +EXPORT_SYMBOL vmlinux 0x5cce3d5d filemap_fdatawait_range_keep_errors +EXPORT_SYMBOL vmlinux 0x5ce67df6 netif_set_real_num_tx_queues +EXPORT_SYMBOL vmlinux 0x5cf2d1d3 __dev_kfree_skb_irq +EXPORT_SYMBOL vmlinux 0x5cf53ce2 input_free_minor +EXPORT_SYMBOL vmlinux 0x5cfb26a0 acpi_enter_sleep_state +EXPORT_SYMBOL vmlinux 0x5cfb591f d_obtain_root +EXPORT_SYMBOL vmlinux 0x5d0d5804 new_inode +EXPORT_SYMBOL vmlinux 0x5d112304 __memcpy_fromio +EXPORT_SYMBOL vmlinux 0x5d1373b4 writeback_inodes_sb +EXPORT_SYMBOL vmlinux 0x5d1dad40 cdrom_media_changed +EXPORT_SYMBOL vmlinux 0x5d3583cc xdp_get_umem_from_qid +EXPORT_SYMBOL vmlinux 0x5d49aabc init_wait_var_entry +EXPORT_SYMBOL vmlinux 0x5d5d4dea pci_release_regions +EXPORT_SYMBOL vmlinux 0x5d78a8f6 vm_node_stat +EXPORT_SYMBOL vmlinux 0x5d830297 get_random_bytes_arch +EXPORT_SYMBOL vmlinux 0x5d8d7c35 skb_copy_and_csum_datagram_msg +EXPORT_SYMBOL vmlinux 0x5da1f9bd mipi_dsi_dcs_get_display_brightness +EXPORT_SYMBOL vmlinux 0x5dac4cd6 qman_dqrr_set_ithresh +EXPORT_SYMBOL vmlinux 0x5dbc158a nlmsg_notify +EXPORT_SYMBOL vmlinux 0x5dc16c39 pci_request_selected_regions_exclusive +EXPORT_SYMBOL vmlinux 0x5dc6e22c pnp_request_card_device +EXPORT_SYMBOL vmlinux 0x5dcc964b __skb_warn_lro_forwarding +EXPORT_SYMBOL vmlinux 0x5df0632e mr_fill_mroute +EXPORT_SYMBOL vmlinux 0x5dffb495 ZSTD_decompress_usingDDict +EXPORT_SYMBOL vmlinux 0x5e04175b tcf_get_next_proto +EXPORT_SYMBOL vmlinux 0x5e0ccb9f sha1_transform +EXPORT_SYMBOL vmlinux 0x5e140407 io_uring_get_socket +EXPORT_SYMBOL vmlinux 0x5e3240a0 __cpu_online_mask +EXPORT_SYMBOL vmlinux 0x5e332b52 __var_waitqueue +EXPORT_SYMBOL vmlinux 0x5e36f6ea tcf_exts_validate +EXPORT_SYMBOL vmlinux 0x5e373fb4 gf128mul_64k_bbe +EXPORT_SYMBOL vmlinux 0x5e485d26 kthread_create_worker_on_cpu +EXPORT_SYMBOL vmlinux 0x5e5b76f8 __tracepoint_kmalloc_node +EXPORT_SYMBOL vmlinux 0x5e855e56 gen_pool_first_fit_align +EXPORT_SYMBOL vmlinux 0x5e91534a dev_get_phys_port_id +EXPORT_SYMBOL vmlinux 0x5e95b1cd current_umask +EXPORT_SYMBOL vmlinux 0x5ea1a95b check_disk_change +EXPORT_SYMBOL vmlinux 0x5eb24829 dm_shift_arg +EXPORT_SYMBOL vmlinux 0x5ec4aee6 put_sg_io_hdr +EXPORT_SYMBOL vmlinux 0x5ecaeb3f has_capability +EXPORT_SYMBOL vmlinux 0x5ed040b0 pm_set_vt_switch +EXPORT_SYMBOL vmlinux 0x5ed291c3 ip_tunnel_header_ops +EXPORT_SYMBOL vmlinux 0x5ed2969e string_escape_mem_ascii +EXPORT_SYMBOL vmlinux 0x5ed90adc int_to_scsilun +EXPORT_SYMBOL vmlinux 0x5ed9d759 input_mt_report_pointer_emulation +EXPORT_SYMBOL vmlinux 0x5ee16721 flow_get_u32_src +EXPORT_SYMBOL vmlinux 0x5eef6866 netif_napi_add +EXPORT_SYMBOL vmlinux 0x5ef12359 tcp_syn_ack_timeout +EXPORT_SYMBOL vmlinux 0x5ef6a672 gen_pool_for_each_chunk +EXPORT_SYMBOL vmlinux 0x5efde8e6 proc_doulongvec_ms_jiffies_minmax +EXPORT_SYMBOL vmlinux 0x5f098b2a in6addr_interfacelocal_allrouters +EXPORT_SYMBOL vmlinux 0x5f33b0c5 dst_destroy +EXPORT_SYMBOL vmlinux 0x5f5649c2 seq_read +EXPORT_SYMBOL vmlinux 0x5f64fd85 pci_dev_put +EXPORT_SYMBOL vmlinux 0x5f6b889c rproc_va_to_pa +EXPORT_SYMBOL vmlinux 0x5f880392 hdmi_infoframe_log +EXPORT_SYMBOL vmlinux 0x5f93525c acpi_extract_package +EXPORT_SYMBOL vmlinux 0x5fb91bc9 mmput_async +EXPORT_SYMBOL vmlinux 0x5fc0c8b3 make_kgid +EXPORT_SYMBOL vmlinux 0x5fc72f0e alloc_pages_exact +EXPORT_SYMBOL vmlinux 0x5fd818b1 pci_request_regions_exclusive +EXPORT_SYMBOL vmlinux 0x5fed4264 truncate_inode_pages_range +EXPORT_SYMBOL vmlinux 0x5ff223eb phy_start +EXPORT_SYMBOL vmlinux 0x5ff9eb0e lockref_mark_dead +EXPORT_SYMBOL vmlinux 0x60025c9e rproc_free +EXPORT_SYMBOL vmlinux 0x6004858d LZ4_compress_fast +EXPORT_SYMBOL vmlinux 0x6005c351 zpool_has_pool +EXPORT_SYMBOL vmlinux 0x600683d3 do_unblank_screen +EXPORT_SYMBOL vmlinux 0x600683df vme_dma_list_add +EXPORT_SYMBOL vmlinux 0x601496f4 revert_creds +EXPORT_SYMBOL vmlinux 0x6018c9ea __nla_reserve +EXPORT_SYMBOL vmlinux 0x601f665f dm_io_client_create +EXPORT_SYMBOL vmlinux 0x60351b98 __nla_validate +EXPORT_SYMBOL vmlinux 0x60352082 register_inet6addr_notifier +EXPORT_SYMBOL vmlinux 0x605255a7 ipmr_rule_default +EXPORT_SYMBOL vmlinux 0x60557bba __phy_read_mmd +EXPORT_SYMBOL vmlinux 0x605790dc fiemap_fill_next_extent +EXPORT_SYMBOL vmlinux 0x605b9b40 tty_register_ldisc +EXPORT_SYMBOL vmlinux 0x60715942 clear_page_dirty_for_io +EXPORT_SYMBOL vmlinux 0x6073bd43 skb_vlan_pop +EXPORT_SYMBOL vmlinux 0x607aa30a kmem_cache_create_usercopy +EXPORT_SYMBOL vmlinux 0x607bbe43 vme_irq_request +EXPORT_SYMBOL vmlinux 0x607eff55 padata_do_parallel +EXPORT_SYMBOL vmlinux 0x60861355 of_find_device_by_node +EXPORT_SYMBOL vmlinux 0x608741b5 __init_swait_queue_head +EXPORT_SYMBOL vmlinux 0x608864d5 __ip_select_ident +EXPORT_SYMBOL vmlinux 0x608c0183 inet_select_addr +EXPORT_SYMBOL vmlinux 0x608ed45b kill_pid +EXPORT_SYMBOL vmlinux 0x60905ab7 kmem_cache_alloc +EXPORT_SYMBOL vmlinux 0x6091b333 unregister_chrdev_region +EXPORT_SYMBOL vmlinux 0x609b2853 hdmi_infoframe_pack +EXPORT_SYMBOL vmlinux 0x609bcd98 in6_pton +EXPORT_SYMBOL vmlinux 0x609f1c7e synchronize_net +EXPORT_SYMBOL vmlinux 0x60aaeb4b qman_p_irqsource_add +EXPORT_SYMBOL vmlinux 0x60b3071f neigh_proc_dointvec +EXPORT_SYMBOL vmlinux 0x60d3f8f4 vlan_ioctl_set +EXPORT_SYMBOL vmlinux 0x60d8ab30 vme_lm_get +EXPORT_SYMBOL vmlinux 0x60d9adad __dec_zone_page_state +EXPORT_SYMBOL vmlinux 0x60dc4d32 block_write_end +EXPORT_SYMBOL vmlinux 0x60e5d937 dev_addr_del +EXPORT_SYMBOL vmlinux 0x60eda113 textsearch_destroy +EXPORT_SYMBOL vmlinux 0x60fe976a dmam_pool_create +EXPORT_SYMBOL vmlinux 0x61121286 generic_file_mmap +EXPORT_SYMBOL vmlinux 0x6116eba7 pcim_iomap_regions +EXPORT_SYMBOL vmlinux 0x612583aa md_bitmap_end_sync +EXPORT_SYMBOL vmlinux 0x6128b5fc __printk_ratelimit +EXPORT_SYMBOL vmlinux 0x613797ea dput +EXPORT_SYMBOL vmlinux 0x613903b4 blk_mq_start_hw_queue +EXPORT_SYMBOL vmlinux 0x613c213f skb_trim +EXPORT_SYMBOL vmlinux 0x61555273 skb_flow_get_icmp_tci +EXPORT_SYMBOL vmlinux 0x61577694 ZSTD_compressEnd +EXPORT_SYMBOL vmlinux 0x615911d7 __bitmap_set +EXPORT_SYMBOL vmlinux 0x6162491b account_page_redirty +EXPORT_SYMBOL vmlinux 0x6169ecd1 ptp_clock_index +EXPORT_SYMBOL vmlinux 0x616be7f9 __vfs_setxattr +EXPORT_SYMBOL vmlinux 0x617c452b queued_read_lock_slowpath +EXPORT_SYMBOL vmlinux 0x6184996d md_done_sync +EXPORT_SYMBOL vmlinux 0x6185b747 radix_tree_gang_lookup_tag +EXPORT_SYMBOL vmlinux 0x618911fc numa_node +EXPORT_SYMBOL vmlinux 0x619cb7dd simple_read_from_buffer +EXPORT_SYMBOL vmlinux 0x619eff97 migrate_vma_pages +EXPORT_SYMBOL vmlinux 0x61a1dd27 vfs_get_link +EXPORT_SYMBOL vmlinux 0x61b7b126 simple_strtoull +EXPORT_SYMBOL vmlinux 0x61d26bea flow_indr_dev_setup_offload +EXPORT_SYMBOL vmlinux 0x61d7d1cd dev_graft_qdisc +EXPORT_SYMBOL vmlinux 0x61e272c9 sha256_final +EXPORT_SYMBOL vmlinux 0x61ea189b fb_pad_aligned_buffer +EXPORT_SYMBOL vmlinux 0x61ebc95d iget5_locked +EXPORT_SYMBOL vmlinux 0x61ed0c09 mipi_dsi_set_maximum_return_packet_size +EXPORT_SYMBOL vmlinux 0x6214aef2 cpufreq_unregister_notifier +EXPORT_SYMBOL vmlinux 0x62259f6d ip_do_fragment +EXPORT_SYMBOL vmlinux 0x6228c21f smp_call_function_single +EXPORT_SYMBOL vmlinux 0x624aa681 trace_print_hex_seq +EXPORT_SYMBOL vmlinux 0x624cc709 xsk_umem_uses_need_wakeup +EXPORT_SYMBOL vmlinux 0x624cde91 __inet6_lookup_established +EXPORT_SYMBOL vmlinux 0x624f3cca phy_read_paged +EXPORT_SYMBOL vmlinux 0x62737e1d sock_unregister +EXPORT_SYMBOL vmlinux 0x627d3a19 unpin_user_page +EXPORT_SYMBOL vmlinux 0x62849ac7 dev_valid_name +EXPORT_SYMBOL vmlinux 0x62890955 __tracepoint_spi_transfer_stop +EXPORT_SYMBOL vmlinux 0x62bf3656 tty_port_destroy +EXPORT_SYMBOL vmlinux 0x62bf6edf utf8agemin +EXPORT_SYMBOL vmlinux 0x62c58763 register_mii_timestamper +EXPORT_SYMBOL vmlinux 0x62c903a4 blk_post_runtime_resume +EXPORT_SYMBOL vmlinux 0x62cac127 vm_event_states +EXPORT_SYMBOL vmlinux 0x62d62bf7 sb_set_blocksize +EXPORT_SYMBOL vmlinux 0x62d96443 qman_dma_portal +EXPORT_SYMBOL vmlinux 0x62e4e725 pci_bus_claim_resources +EXPORT_SYMBOL vmlinux 0x62fc519a netdev_lower_get_next_private +EXPORT_SYMBOL vmlinux 0x63027f77 skb_ext_add +EXPORT_SYMBOL vmlinux 0x63088b8d pci_scan_root_bus +EXPORT_SYMBOL vmlinux 0x630bfb58 blk_mq_delay_run_hw_queue +EXPORT_SYMBOL vmlinux 0x63187451 pcie_aspm_support_enabled +EXPORT_SYMBOL vmlinux 0x63194b23 pm8606_osc_enable +EXPORT_SYMBOL vmlinux 0x631cc660 security_skb_classify_flow +EXPORT_SYMBOL vmlinux 0x631d06aa cpu_rmap_put +EXPORT_SYMBOL vmlinux 0x632b6143 of_get_child_by_name +EXPORT_SYMBOL vmlinux 0x632ddb15 phy_support_asym_pause +EXPORT_SYMBOL vmlinux 0x632de9b9 dmaengine_get_unmap_data +EXPORT_SYMBOL vmlinux 0x6336877a netlink_ns_capable +EXPORT_SYMBOL vmlinux 0x633e0424 dev_change_proto_down_generic +EXPORT_SYMBOL vmlinux 0x6344f791 neigh_changeaddr +EXPORT_SYMBOL vmlinux 0x635ff76d LZ4_saveDict +EXPORT_SYMBOL vmlinux 0x6364be05 nd_pfn_validate +EXPORT_SYMBOL vmlinux 0x63689102 netdev_warn +EXPORT_SYMBOL vmlinux 0x636b0279 phy_start_cable_test +EXPORT_SYMBOL vmlinux 0x637f8bb7 register_cdrom +EXPORT_SYMBOL vmlinux 0x63a58370 flow_action_cookie_destroy +EXPORT_SYMBOL vmlinux 0x63a7c28c bitmap_find_free_region +EXPORT_SYMBOL vmlinux 0x63ab8627 mmc_gpio_set_cd_isr +EXPORT_SYMBOL vmlinux 0x63c4d61f __bitmap_weight +EXPORT_SYMBOL vmlinux 0x63c6c9b5 notify_change +EXPORT_SYMBOL vmlinux 0x63c8129d nmi_panic +EXPORT_SYMBOL vmlinux 0x63d60f6c blk_put_queue +EXPORT_SYMBOL vmlinux 0x63d6dbd9 __tracepoint_kmem_cache_alloc_node +EXPORT_SYMBOL vmlinux 0x63eb9355 panic_blink +EXPORT_SYMBOL vmlinux 0x64040082 netdev_master_upper_dev_get +EXPORT_SYMBOL vmlinux 0x6405dcd3 slhc_toss +EXPORT_SYMBOL vmlinux 0x64127b67 bitmap_find_next_zero_area_off +EXPORT_SYMBOL vmlinux 0x641bf242 vme_init_bridge +EXPORT_SYMBOL vmlinux 0x6427b860 genphy_setup_forced +EXPORT_SYMBOL vmlinux 0x6429ebc1 devfreq_add_governor +EXPORT_SYMBOL vmlinux 0x642eb5c6 xen_poll_irq_timeout +EXPORT_SYMBOL vmlinux 0x643031aa of_count_phandle_with_args +EXPORT_SYMBOL vmlinux 0x643d9ba1 groups_free +EXPORT_SYMBOL vmlinux 0x644137f6 bd_finish_claiming +EXPORT_SYMBOL vmlinux 0x64440551 from_kprojid +EXPORT_SYMBOL vmlinux 0x644be12c qman_affine_cpus +EXPORT_SYMBOL vmlinux 0x644bfeaf neigh_sysctl_register +EXPORT_SYMBOL vmlinux 0x64590b5b freezing_slow_path +EXPORT_SYMBOL vmlinux 0x646cf1c9 __dst_destroy_metrics_generic +EXPORT_SYMBOL vmlinux 0x6481ffe0 hsiphash_1u32 +EXPORT_SYMBOL vmlinux 0x648dc57c ipv6_find_hdr +EXPORT_SYMBOL vmlinux 0x648eb59d gc_inflight_list +EXPORT_SYMBOL vmlinux 0x64999478 congestion_wait +EXPORT_SYMBOL vmlinux 0x649cd184 mmc_gpiod_request_cd_irq +EXPORT_SYMBOL vmlinux 0x64a9c928 default_blu +EXPORT_SYMBOL vmlinux 0x64b2df37 scsi_host_get +EXPORT_SYMBOL vmlinux 0x64b4fa4c netpoll_send_udp +EXPORT_SYMBOL vmlinux 0x64bbc288 string_unescape +EXPORT_SYMBOL vmlinux 0x64bed80b passthru_features_check +EXPORT_SYMBOL vmlinux 0x64c07c6e kernel_sendmsg_locked +EXPORT_SYMBOL vmlinux 0x64cf055f mdio_device_register +EXPORT_SYMBOL vmlinux 0x64d677f6 rpmh_write +EXPORT_SYMBOL vmlinux 0x6513a3fa fb_get_color_depth +EXPORT_SYMBOL vmlinux 0x651a4139 test_taint +EXPORT_SYMBOL vmlinux 0x652032cb mac_pton +EXPORT_SYMBOL vmlinux 0x652ce9aa nla_memcmp +EXPORT_SYMBOL vmlinux 0x6532dbd1 ip_generic_getfrag +EXPORT_SYMBOL vmlinux 0x65408378 zlib_inflate_blob +EXPORT_SYMBOL vmlinux 0x654449c3 memset16 +EXPORT_SYMBOL vmlinux 0x65597a13 inet_sk_rebuild_header +EXPORT_SYMBOL vmlinux 0x656c1a0e string_escape_mem +EXPORT_SYMBOL vmlinux 0x656e4a6e snprintf +EXPORT_SYMBOL vmlinux 0x65766bc1 sock_kmalloc +EXPORT_SYMBOL vmlinux 0x657d85dc skb_checksum_trimmed +EXPORT_SYMBOL vmlinux 0x658ce1a8 xxh64_reset +EXPORT_SYMBOL vmlinux 0x659ded26 xfrm_flush_gc +EXPORT_SYMBOL vmlinux 0x65a0ce03 no_llseek +EXPORT_SYMBOL vmlinux 0x65cb5383 rproc_elf_load_segments +EXPORT_SYMBOL vmlinux 0x65cf8831 ZSTD_decompress_usingDict +EXPORT_SYMBOL vmlinux 0x65d1bab2 acpi_bios_warning +EXPORT_SYMBOL vmlinux 0x65d2bbf6 inet_sendmsg +EXPORT_SYMBOL vmlinux 0x65d9e877 cpufreq_register_notifier +EXPORT_SYMBOL vmlinux 0x65dccf13 xz_dec_end +EXPORT_SYMBOL vmlinux 0x65e0d6d7 memory_read_from_buffer +EXPORT_SYMBOL vmlinux 0x65edff21 inet_addr_type +EXPORT_SYMBOL vmlinux 0x65f26a71 to_nd_dax +EXPORT_SYMBOL vmlinux 0x6612533e sk_stop_timer +EXPORT_SYMBOL vmlinux 0x6624ef2b call_netdevice_notifiers +EXPORT_SYMBOL vmlinux 0x6626afca down +EXPORT_SYMBOL vmlinux 0x663a156b phy_request_interrupt +EXPORT_SYMBOL vmlinux 0x663d1614 of_phy_get_and_connect +EXPORT_SYMBOL vmlinux 0x664212ac dcache_readdir +EXPORT_SYMBOL vmlinux 0x66432b8f __tcf_em_tree_match +EXPORT_SYMBOL vmlinux 0x664b1e29 qman_delete_cgr +EXPORT_SYMBOL vmlinux 0x6657bc29 scsi_device_put +EXPORT_SYMBOL vmlinux 0x665af7f1 devm_devfreq_unregister_notifier +EXPORT_SYMBOL vmlinux 0x66628bf3 ip_tunnel_metadata_cnt +EXPORT_SYMBOL vmlinux 0x666863dc par_io_config_pin +EXPORT_SYMBOL vmlinux 0x6673f96d xxh32_reset +EXPORT_SYMBOL vmlinux 0x668b19a1 down_read +EXPORT_SYMBOL vmlinux 0x6694ed7d iget_locked +EXPORT_SYMBOL vmlinux 0x669b91ce vfs_dedupe_file_range +EXPORT_SYMBOL vmlinux 0x66a119a2 mr_mfc_seq_next +EXPORT_SYMBOL vmlinux 0x66af1fd1 lockref_put_or_lock +EXPORT_SYMBOL vmlinux 0x66b4cc41 kmemdup +EXPORT_SYMBOL vmlinux 0x66cab6aa napi_get_frags +EXPORT_SYMBOL vmlinux 0x66d29e23 nla_put_64bit +EXPORT_SYMBOL vmlinux 0x66d2ebec nla_reserve_64bit +EXPORT_SYMBOL vmlinux 0x66e0552f kernel_recvmsg +EXPORT_SYMBOL vmlinux 0x66e38568 pci_release_selected_regions +EXPORT_SYMBOL vmlinux 0x66ebc02f dma_supported +EXPORT_SYMBOL vmlinux 0x66ed3974 jbd2_journal_clear_err +EXPORT_SYMBOL vmlinux 0x66eed2a3 nvm_submit_io_sync +EXPORT_SYMBOL vmlinux 0x66f19833 mfd_add_devices +EXPORT_SYMBOL vmlinux 0x66f3add3 __phy_resume +EXPORT_SYMBOL vmlinux 0x66fe4599 mfd_cell_disable +EXPORT_SYMBOL vmlinux 0x670d673d of_cpu_node_to_id +EXPORT_SYMBOL vmlinux 0x67412d2f ucc_slow_enable +EXPORT_SYMBOL vmlinux 0x6749d53f hdmi_vendor_infoframe_init +EXPORT_SYMBOL vmlinux 0x6759f32d dm_kobject_release +EXPORT_SYMBOL vmlinux 0x6770a7b6 try_to_release_page +EXPORT_SYMBOL vmlinux 0x67735bb8 blk_queue_chunk_sectors +EXPORT_SYMBOL vmlinux 0x678b96ec dma_pool_alloc +EXPORT_SYMBOL vmlinux 0x678fdd88 task_work_add +EXPORT_SYMBOL vmlinux 0x67961712 simple_pin_fs +EXPORT_SYMBOL vmlinux 0x67a6353b register_netdev +EXPORT_SYMBOL vmlinux 0x67b27ec1 tty_std_termios +EXPORT_SYMBOL vmlinux 0x67b78eb3 seq_hlist_next_rcu +EXPORT_SYMBOL vmlinux 0x67c13ea0 acpi_read +EXPORT_SYMBOL vmlinux 0x67dc7c8c vmalloc_to_page +EXPORT_SYMBOL vmlinux 0x67dfdfb3 qdisc_put_unlocked +EXPORT_SYMBOL vmlinux 0x67ea4262 vfs_copy_file_range +EXPORT_SYMBOL vmlinux 0x67fc5f12 dev_change_proto_down +EXPORT_SYMBOL vmlinux 0x681497ec i2c_smbus_xfer +EXPORT_SYMBOL vmlinux 0x682c151a pcie_capability_read_dword +EXPORT_SYMBOL vmlinux 0x683a9560 __gnet_stats_copy_basic +EXPORT_SYMBOL vmlinux 0x683fbd06 input_get_keycode +EXPORT_SYMBOL vmlinux 0x6849fd45 vfs_llseek +EXPORT_SYMBOL vmlinux 0x685e31ca groups_sort +EXPORT_SYMBOL vmlinux 0x6860d390 jbd2_journal_free_reserved +EXPORT_SYMBOL vmlinux 0x6862b3fd d_find_alias +EXPORT_SYMBOL vmlinux 0x68798e1b xfrm_find_acq_byseq +EXPORT_SYMBOL vmlinux 0x687b6a16 kdbgetsymval +EXPORT_SYMBOL vmlinux 0x6880c529 mr_vif_seq_next +EXPORT_SYMBOL vmlinux 0x68a90b51 get_default_font +EXPORT_SYMBOL vmlinux 0x68a9ea97 sock_no_setsockopt +EXPORT_SYMBOL vmlinux 0x68b4976c nvdimm_namespace_locked +EXPORT_SYMBOL vmlinux 0x68b61ec6 softnet_data +EXPORT_SYMBOL vmlinux 0x68bf3720 may_umount_tree +EXPORT_SYMBOL vmlinux 0x68c1aaff skb_append +EXPORT_SYMBOL vmlinux 0x68c27587 ata_dev_printk +EXPORT_SYMBOL vmlinux 0x68d20104 dquot_load_quota_inode +EXPORT_SYMBOL vmlinux 0x68fb581a icst307_idx2s +EXPORT_SYMBOL vmlinux 0x68fe0cc4 set_binfmt +EXPORT_SYMBOL vmlinux 0x69000ca4 jbd2_journal_inode_ranged_write +EXPORT_SYMBOL vmlinux 0x69049cd2 radix_tree_replace_slot +EXPORT_SYMBOL vmlinux 0x69493b1a kstrtos16 +EXPORT_SYMBOL vmlinux 0x69585523 __ksize +EXPORT_SYMBOL vmlinux 0x69668826 netdev_increment_features +EXPORT_SYMBOL vmlinux 0x6971447a rtc_month_days +EXPORT_SYMBOL vmlinux 0x698b22ef wireless_send_event +EXPORT_SYMBOL vmlinux 0x69a7f038 scsi_print_sense_hdr +EXPORT_SYMBOL vmlinux 0x69ad2f20 kstrtouint +EXPORT_SYMBOL vmlinux 0x69b2047c fifo_set_limit +EXPORT_SYMBOL vmlinux 0x69d4598a twl6040_clear_bits +EXPORT_SYMBOL vmlinux 0x69d5b440 __xfrm_dst_lookup +EXPORT_SYMBOL vmlinux 0x69dd3b5b crc32_le +EXPORT_SYMBOL vmlinux 0x69de8757 vme_check_window +EXPORT_SYMBOL vmlinux 0x69e93e43 vfs_mkdir +EXPORT_SYMBOL vmlinux 0x6a03751f sgl_free_order +EXPORT_SYMBOL vmlinux 0x6a037cf1 mempool_kfree +EXPORT_SYMBOL vmlinux 0x6a1afe5e dump_skip +EXPORT_SYMBOL vmlinux 0x6a30c5e3 security_inode_setsecctx +EXPORT_SYMBOL vmlinux 0x6a3766b2 qman_delete_cgr_safe +EXPORT_SYMBOL vmlinux 0x6a434da9 vfs_ioc_fssetxattr_check +EXPORT_SYMBOL vmlinux 0x6a4489a3 fscrypt_ioctl_get_policy +EXPORT_SYMBOL vmlinux 0x6a449c4f register_sysctl_table +EXPORT_SYMBOL vmlinux 0x6a52defe pnp_release_card_device +EXPORT_SYMBOL vmlinux 0x6a5cb5ee __get_free_pages +EXPORT_SYMBOL vmlinux 0x6a5ecb18 unregister_module_notifier +EXPORT_SYMBOL vmlinux 0x6a5fa363 sigprocmask +EXPORT_SYMBOL vmlinux 0x6a6d01dc scsi_remove_target +EXPORT_SYMBOL vmlinux 0x6a8b9ff3 devm_extcon_register_notifier +EXPORT_SYMBOL vmlinux 0x6a9b1d29 __blkdev_issue_zeroout +EXPORT_SYMBOL vmlinux 0x6a9e7bbf inet6_csk_route_req +EXPORT_SYMBOL vmlinux 0x6aa11aa6 sgl_free_n_order +EXPORT_SYMBOL vmlinux 0x6aa3e64d netlink_capable +EXPORT_SYMBOL vmlinux 0x6aaecc45 dquot_reclaim_space_nodirty +EXPORT_SYMBOL vmlinux 0x6ab0dfb4 tcp_md5_do_del +EXPORT_SYMBOL vmlinux 0x6ab3e748 sync_inode_metadata +EXPORT_SYMBOL vmlinux 0x6ab487c4 blk_limits_io_opt +EXPORT_SYMBOL vmlinux 0x6add5c9a dmi_find_device +EXPORT_SYMBOL vmlinux 0x6ae1fae6 param_ops_string +EXPORT_SYMBOL vmlinux 0x6aed9280 tcf_action_exec +EXPORT_SYMBOL vmlinux 0x6aeefac4 zlib_deflateReset +EXPORT_SYMBOL vmlinux 0x6b081799 pm860x_set_bits +EXPORT_SYMBOL vmlinux 0x6b16807b follow_up +EXPORT_SYMBOL vmlinux 0x6b270fc8 input_open_device +EXPORT_SYMBOL vmlinux 0x6b27729b radix_tree_gang_lookup +EXPORT_SYMBOL vmlinux 0x6b2941b2 __arch_copy_to_user +EXPORT_SYMBOL vmlinux 0x6b2dc060 dump_stack +EXPORT_SYMBOL vmlinux 0x6b3b6971 __inode_add_bytes +EXPORT_SYMBOL vmlinux 0x6b4024b4 cpumask_any_but +EXPORT_SYMBOL vmlinux 0x6b4b2933 __ioremap +EXPORT_SYMBOL vmlinux 0x6b55acd0 rtnl_lock_killable +EXPORT_SYMBOL vmlinux 0x6b640864 nla_strlcpy +EXPORT_SYMBOL vmlinux 0x6b770026 skb_copy +EXPORT_SYMBOL vmlinux 0x6b853d06 ns_to_kernel_old_timeval +EXPORT_SYMBOL vmlinux 0x6b882a91 ptp_schedule_worker +EXPORT_SYMBOL vmlinux 0x6b8bf149 netif_receive_skb_list +EXPORT_SYMBOL vmlinux 0x6b965223 update_region +EXPORT_SYMBOL vmlinux 0x6b9ca21a dquot_get_next_dqblk +EXPORT_SYMBOL vmlinux 0x6ba6bd74 netdev_info +EXPORT_SYMBOL vmlinux 0x6bac9170 tcp_child_process +EXPORT_SYMBOL vmlinux 0x6bc0ebf1 sg_miter_next +EXPORT_SYMBOL vmlinux 0x6bc3fbc0 __unregister_chrdev +EXPORT_SYMBOL vmlinux 0x6bca3305 xfrm_policy_alloc +EXPORT_SYMBOL vmlinux 0x6bdebb5c tcp_get_md5sig_pool +EXPORT_SYMBOL vmlinux 0x6be1c1f8 acpi_install_method +EXPORT_SYMBOL vmlinux 0x6bef3732 ps2_end_command +EXPORT_SYMBOL vmlinux 0x6c0e6709 __ClearPageMovable +EXPORT_SYMBOL vmlinux 0x6c224cda gen_pool_destroy +EXPORT_SYMBOL vmlinux 0x6c250e8d blk_mq_tagset_busy_iter +EXPORT_SYMBOL vmlinux 0x6c257ac0 tty_termios_hw_change +EXPORT_SYMBOL vmlinux 0x6c32657e generic_file_fsync +EXPORT_SYMBOL vmlinux 0x6c561e2f of_find_all_nodes +EXPORT_SYMBOL vmlinux 0x6c5dae23 scsi_kmap_atomic_sg +EXPORT_SYMBOL vmlinux 0x6c61ce70 num_registered_fb +EXPORT_SYMBOL vmlinux 0x6c790229 blk_queue_max_hw_sectors +EXPORT_SYMBOL vmlinux 0x6c9b6922 dev_disable_lro +EXPORT_SYMBOL vmlinux 0x6cb46525 netlbl_catmap_walk +EXPORT_SYMBOL vmlinux 0x6ccc2513 inet_dev_addr_type +EXPORT_SYMBOL vmlinux 0x6cd0d022 init_pseudo +EXPORT_SYMBOL vmlinux 0x6cd6a61e devfreq_register_opp_notifier +EXPORT_SYMBOL vmlinux 0x6cdfbf08 xfrm_user_policy +EXPORT_SYMBOL vmlinux 0x6cf0d67d qe_get_num_of_snums +EXPORT_SYMBOL vmlinux 0x6cf62166 __tracepoint_kmem_cache_alloc +EXPORT_SYMBOL vmlinux 0x6d0aa052 blk_mq_end_request +EXPORT_SYMBOL vmlinux 0x6d278bfc tcp_setsockopt +EXPORT_SYMBOL vmlinux 0x6d294e43 clock_t_to_jiffies +EXPORT_SYMBOL vmlinux 0x6d2d00dd netlink_rcv_skb +EXPORT_SYMBOL vmlinux 0x6d340f64 tty_termios_input_baud_rate +EXPORT_SYMBOL vmlinux 0x6d57ad45 __mdiobus_register +EXPORT_SYMBOL vmlinux 0x6d5f5b91 radix_tree_tagged +EXPORT_SYMBOL vmlinux 0x6d73c95f logic_outw +EXPORT_SYMBOL vmlinux 0x6d7abe02 first_ec +EXPORT_SYMBOL vmlinux 0x6d7c7dcc bitmap_cut +EXPORT_SYMBOL vmlinux 0x6d83c793 generic_perform_write +EXPORT_SYMBOL vmlinux 0x6d8eafa0 phy_register_fixup_for_uid +EXPORT_SYMBOL vmlinux 0x6da7fb6d jbd2_journal_flush +EXPORT_SYMBOL vmlinux 0x6dc35b25 radix_tree_iter_delete +EXPORT_SYMBOL vmlinux 0x6dcf857f uuid_null +EXPORT_SYMBOL vmlinux 0x6dd17e7b acpi_get_table_header +EXPORT_SYMBOL vmlinux 0x6dda6357 nd_btt_arena_is_valid +EXPORT_SYMBOL vmlinux 0x6de0fc1b datagram_poll +EXPORT_SYMBOL vmlinux 0x6de1a938 cdrom_mode_select +EXPORT_SYMBOL vmlinux 0x6df1aaf1 kernel_sigaction +EXPORT_SYMBOL vmlinux 0x6dfe6236 ip6_dst_hoplimit +EXPORT_SYMBOL vmlinux 0x6e019034 __tracepoint_module_get +EXPORT_SYMBOL vmlinux 0x6e05f9c8 vfs_dedupe_file_range_one +EXPORT_SYMBOL vmlinux 0x6e1f0336 page_mapping +EXPORT_SYMBOL vmlinux 0x6e286604 hdmi_drm_infoframe_pack +EXPORT_SYMBOL vmlinux 0x6e3828b2 console_stop +EXPORT_SYMBOL vmlinux 0x6e4f4323 inet_offloads +EXPORT_SYMBOL vmlinux 0x6e5b8651 xz_dec_run +EXPORT_SYMBOL vmlinux 0x6e67c80a vfs_rename +EXPORT_SYMBOL vmlinux 0x6e6a31fc pcix_get_max_mmrbc +EXPORT_SYMBOL vmlinux 0x6e719ec9 compat_sock_common_getsockopt +EXPORT_SYMBOL vmlinux 0x6e720ff2 rtnl_unlock +EXPORT_SYMBOL vmlinux 0x6e7579e7 __devm_request_region +EXPORT_SYMBOL vmlinux 0x6e7e9b1d inet_del_protocol +EXPORT_SYMBOL vmlinux 0x6e8d79e3 kmem_cache_alloc_bulk +EXPORT_SYMBOL vmlinux 0x6e9dd606 __symbol_put +EXPORT_SYMBOL vmlinux 0x6ea9363b force_sig +EXPORT_SYMBOL vmlinux 0x6eb7d744 tcp_enter_quickack_mode +EXPORT_SYMBOL vmlinux 0x6ec0fa3e call_fib_notifier +EXPORT_SYMBOL vmlinux 0x6ec4be28 zerocopy_sg_from_iter +EXPORT_SYMBOL vmlinux 0x6ed8a5fc hdmi_drm_infoframe_check +EXPORT_SYMBOL vmlinux 0x6edb368e proc_create +EXPORT_SYMBOL vmlinux 0x6f060bdd pci_try_set_mwi +EXPORT_SYMBOL vmlinux 0x6f177d55 simple_dir_inode_operations +EXPORT_SYMBOL vmlinux 0x6f38e8aa of_get_pci_address +EXPORT_SYMBOL vmlinux 0x6f3dc2f2 proc_create_data +EXPORT_SYMBOL vmlinux 0x6f41a428 acpi_get_vendor_resource +EXPORT_SYMBOL vmlinux 0x6f4529e6 napi_complete_done +EXPORT_SYMBOL vmlinux 0x6f4b1eda jbd2_journal_check_available_features +EXPORT_SYMBOL vmlinux 0x6f7fee33 scsi_device_quiesce +EXPORT_SYMBOL vmlinux 0x6f8195b1 inet6_protos +EXPORT_SYMBOL vmlinux 0x6f89dae1 abx500_startup_irq_enabled +EXPORT_SYMBOL vmlinux 0x6f8ec4c2 vfs_get_super +EXPORT_SYMBOL vmlinux 0x6f8f674a bpf_dispatcher_xdp_func +EXPORT_SYMBOL vmlinux 0x6f915a45 dqstats +EXPORT_SYMBOL vmlinux 0x6f959224 devm_of_find_backlight +EXPORT_SYMBOL vmlinux 0x6f961958 fbcon_set_rotate +EXPORT_SYMBOL vmlinux 0x6fa9da6c con_is_visible +EXPORT_SYMBOL vmlinux 0x6fb49676 queue_rcu_work +EXPORT_SYMBOL vmlinux 0x6fbc6a00 radix_tree_insert +EXPORT_SYMBOL vmlinux 0x6fbe4575 inet_add_protocol +EXPORT_SYMBOL vmlinux 0x6fcb87a1 touch_softlockup_watchdog +EXPORT_SYMBOL vmlinux 0x6fd10148 ip6_find_1stfragopt +EXPORT_SYMBOL vmlinux 0x6fd8fcad __scm_destroy +EXPORT_SYMBOL vmlinux 0x6fd9c35a __clzdi2 +EXPORT_SYMBOL vmlinux 0x6fdc341d param_ops_ushort +EXPORT_SYMBOL vmlinux 0x6fecf5f2 submit_bio_wait +EXPORT_SYMBOL vmlinux 0x6ff28c20 copy_page_to_iter +EXPORT_SYMBOL vmlinux 0x6ff6b29d tty_driver_flush_buffer +EXPORT_SYMBOL vmlinux 0x6ffd9db4 padata_do_serial +EXPORT_SYMBOL vmlinux 0x70002fe8 siphash_1u32 +EXPORT_SYMBOL vmlinux 0x701b96e2 iov_iter_pipe +EXPORT_SYMBOL vmlinux 0x7023bea8 unregister_acpi_notifier +EXPORT_SYMBOL vmlinux 0x702946da ucs2_strlen +EXPORT_SYMBOL vmlinux 0x703d3888 xfrm_policy_hash_rebuild +EXPORT_SYMBOL vmlinux 0x7071a4f2 cmdline_parts_free +EXPORT_SYMBOL vmlinux 0x7075a8ef scsi_add_host_with_dma +EXPORT_SYMBOL vmlinux 0x70a87c83 input_register_device +EXPORT_SYMBOL vmlinux 0x70ad75fb radix_tree_lookup +EXPORT_SYMBOL vmlinux 0x70b99855 dcb_ieee_getapp_dscp_prio_mask_map +EXPORT_SYMBOL vmlinux 0x70c72552 skb_queue_tail +EXPORT_SYMBOL vmlinux 0x70d1a18e qman_release_pool +EXPORT_SYMBOL vmlinux 0x70e348aa netif_schedule_queue +EXPORT_SYMBOL vmlinux 0x70fc634b scsi_partsize +EXPORT_SYMBOL vmlinux 0x7105cdb2 simple_symlink_inode_operations +EXPORT_SYMBOL vmlinux 0x7120c995 fs_context_for_submount +EXPORT_SYMBOL vmlinux 0x71226629 dqput +EXPORT_SYMBOL vmlinux 0x7127eda9 ip_getsockopt +EXPORT_SYMBOL vmlinux 0x7129e5f8 hex_asc +EXPORT_SYMBOL vmlinux 0x713ad8cb key_instantiate_and_link +EXPORT_SYMBOL vmlinux 0x7141b88a logic_insb +EXPORT_SYMBOL vmlinux 0x71421ea8 devm_devfreq_add_device +EXPORT_SYMBOL vmlinux 0x71451b37 __sock_queue_rcv_skb +EXPORT_SYMBOL vmlinux 0x7171121c overflowgid +EXPORT_SYMBOL vmlinux 0x71760247 netdev_set_tc_queue +EXPORT_SYMBOL vmlinux 0x717b931c of_clk_get +EXPORT_SYMBOL vmlinux 0x717dc6c4 dev_add_pack +EXPORT_SYMBOL vmlinux 0x71a50dbc register_blkdev +EXPORT_SYMBOL vmlinux 0x71a672ef dmam_pool_destroy +EXPORT_SYMBOL vmlinux 0x71c16058 md_wakeup_thread +EXPORT_SYMBOL vmlinux 0x71ca3a39 free_cgroup_ns +EXPORT_SYMBOL vmlinux 0x71f85b23 module_layout +EXPORT_SYMBOL vmlinux 0x71fd426b vm_map_pages +EXPORT_SYMBOL vmlinux 0x721073aa nobh_writepage +EXPORT_SYMBOL vmlinux 0x72125db8 input_mt_report_finger_count +EXPORT_SYMBOL vmlinux 0x722e1271 grab_cache_page_write_begin +EXPORT_SYMBOL vmlinux 0x72301f54 dev_queue_xmit_accel +EXPORT_SYMBOL vmlinux 0x724ddac7 utf8version_is_supported +EXPORT_SYMBOL vmlinux 0x72586c84 tcp_check_req +EXPORT_SYMBOL vmlinux 0x725f4c14 vfs_create +EXPORT_SYMBOL vmlinux 0x726bc3c7 wait_for_completion_killable_timeout +EXPORT_SYMBOL vmlinux 0x7286aa47 security_task_getsecid +EXPORT_SYMBOL vmlinux 0x7288e225 xfrm_init_state +EXPORT_SYMBOL vmlinux 0x72a4f65d devfreq_resume_device +EXPORT_SYMBOL vmlinux 0x72b9d287 default_grn +EXPORT_SYMBOL vmlinux 0x72d29a16 __get_hash_from_flowi6 +EXPORT_SYMBOL vmlinux 0x72ea7b2d scsi_device_type +EXPORT_SYMBOL vmlinux 0x72ef769b irq_to_desc +EXPORT_SYMBOL vmlinux 0x72f4e447 ilookup5_nowait +EXPORT_SYMBOL vmlinux 0x7315a4e9 twl6030_mmc_card_detect_config +EXPORT_SYMBOL vmlinux 0x731b47cf ppp_output_wakeup +EXPORT_SYMBOL vmlinux 0x731c4a9c dma_fence_signal +EXPORT_SYMBOL vmlinux 0x731dba7a xen_domain_type +EXPORT_SYMBOL vmlinux 0x731fac95 of_device_get_match_data +EXPORT_SYMBOL vmlinux 0x732f2d90 serio_open +EXPORT_SYMBOL vmlinux 0x73342fb5 sg_miter_start +EXPORT_SYMBOL vmlinux 0x7338365c __lock_page +EXPORT_SYMBOL vmlinux 0x733ac84b pci_alloc_host_bridge +EXPORT_SYMBOL vmlinux 0x735e6a81 acpi_evaluate_integer +EXPORT_SYMBOL vmlinux 0x7380dffa argv_split +EXPORT_SYMBOL vmlinux 0x739495f8 vme_dma_list_free +EXPORT_SYMBOL vmlinux 0x73a62754 scsi_block_when_processing_errors +EXPORT_SYMBOL vmlinux 0x73abb180 alloc_contig_range +EXPORT_SYMBOL vmlinux 0x73ade8b0 d_invalidate +EXPORT_SYMBOL vmlinux 0x73b5cd94 pagecache_write_begin +EXPORT_SYMBOL vmlinux 0x73cf8fcc __napi_schedule_irqoff +EXPORT_SYMBOL vmlinux 0x73df961c inet_gso_segment +EXPORT_SYMBOL vmlinux 0x73e7b0e2 tcp_v4_md5_hash_skb +EXPORT_SYMBOL vmlinux 0x73f122e1 gro_find_complete_by_type +EXPORT_SYMBOL vmlinux 0x7410aba2 strreplace +EXPORT_SYMBOL vmlinux 0x7412ed5b kvfree_sensitive +EXPORT_SYMBOL vmlinux 0x741e8c70 do_splice_direct +EXPORT_SYMBOL vmlinux 0x74226fe7 backlight_device_get_by_name +EXPORT_SYMBOL vmlinux 0x742578a5 wait_for_random_bytes +EXPORT_SYMBOL vmlinux 0x7431fddd generic_listxattr +EXPORT_SYMBOL vmlinux 0x743f4126 keygen_port_hashing_init +EXPORT_SYMBOL vmlinux 0x744e18c1 vfs_create_mount +EXPORT_SYMBOL vmlinux 0x7453d3e8 security_release_secctx +EXPORT_SYMBOL vmlinux 0x746480a9 __blkdev_issue_discard +EXPORT_SYMBOL vmlinux 0x74725e69 ZSTD_compressContinue +EXPORT_SYMBOL vmlinux 0x74754435 acpi_bus_generate_netlink_event +EXPORT_SYMBOL vmlinux 0x748227e0 udp_prot +EXPORT_SYMBOL vmlinux 0x749849d8 LZ4_loadDict +EXPORT_SYMBOL vmlinux 0x74a2985b netif_receive_skb +EXPORT_SYMBOL vmlinux 0x74bf9acb cfb_imageblit +EXPORT_SYMBOL vmlinux 0x74c0bbd2 make_kuid +EXPORT_SYMBOL vmlinux 0x74c134b9 __sw_hweight32 +EXPORT_SYMBOL vmlinux 0x74cba956 xfrm6_input_addr +EXPORT_SYMBOL vmlinux 0x74ce594a skb_flow_dissect_tunnel_info +EXPORT_SYMBOL vmlinux 0x74cf52ef mipi_dsi_turn_on_peripheral +EXPORT_SYMBOL vmlinux 0x74e5ff1a udpv6_encap_enable +EXPORT_SYMBOL vmlinux 0x74eca869 of_phy_deregister_fixed_link +EXPORT_SYMBOL vmlinux 0x750297e7 pci_bus_find_capability +EXPORT_SYMBOL vmlinux 0x750acd26 dm_unregister_target +EXPORT_SYMBOL vmlinux 0x75150997 compat_ip_setsockopt +EXPORT_SYMBOL vmlinux 0x75240de0 dquot_get_dqblk +EXPORT_SYMBOL vmlinux 0x752ab42d sock_set_keepalive +EXPORT_SYMBOL vmlinux 0x75319f97 register_filesystem +EXPORT_SYMBOL vmlinux 0x7531bc8e blk_rq_unmap_user +EXPORT_SYMBOL vmlinux 0x7533632f skb_abort_seq_read +EXPORT_SYMBOL vmlinux 0x753478ef release_sock +EXPORT_SYMBOL vmlinux 0x755d3ba9 fscrypt_free_bounce_page +EXPORT_SYMBOL vmlinux 0x756b2783 ip_cmsg_recv_offset +EXPORT_SYMBOL vmlinux 0x7572ba7e flow_rule_match_ct +EXPORT_SYMBOL vmlinux 0x757f088f cpm_muram_offset +EXPORT_SYMBOL vmlinux 0x7582308c __block_write_begin +EXPORT_SYMBOL vmlinux 0x75825941 generic_setlease +EXPORT_SYMBOL vmlinux 0x75871f5e acpi_get_next_object +EXPORT_SYMBOL vmlinux 0x7588008c nf_log_packet +EXPORT_SYMBOL vmlinux 0x759b4943 security_sb_clone_mnt_opts +EXPORT_SYMBOL vmlinux 0x75a0520c tcp_v4_destroy_sock +EXPORT_SYMBOL vmlinux 0x75ae185b acpi_pm_device_sleep_state +EXPORT_SYMBOL vmlinux 0x75bda77a seq_hlist_next +EXPORT_SYMBOL vmlinux 0x75c80fe5 netdev_has_any_upper_dev +EXPORT_SYMBOL vmlinux 0x75d0deb9 nsecs_to_jiffies64 +EXPORT_SYMBOL vmlinux 0x75d499dd vmcore_add_device_dump +EXPORT_SYMBOL vmlinux 0x75d787ec tcf_exts_destroy +EXPORT_SYMBOL vmlinux 0x75dab518 dev_pm_opp_register_notifier +EXPORT_SYMBOL vmlinux 0x75eb16b7 dev_vprintk_emit +EXPORT_SYMBOL vmlinux 0x760a0f4f yield +EXPORT_SYMBOL vmlinux 0x7622260b netdev_boot_setup_check +EXPORT_SYMBOL vmlinux 0x7622fe47 sync_inodes_sb +EXPORT_SYMBOL vmlinux 0x7624249e dim_park_tired +EXPORT_SYMBOL vmlinux 0x7647726c handle_sysrq +EXPORT_SYMBOL vmlinux 0x764f42d9 fscrypt_ioctl_set_policy +EXPORT_SYMBOL vmlinux 0x765ff474 crc_t10dif_generic +EXPORT_SYMBOL vmlinux 0x76631801 free_netdev +EXPORT_SYMBOL vmlinux 0x766a0927 mempool_alloc_pages +EXPORT_SYMBOL vmlinux 0x769768ab mmc_cqe_post_req +EXPORT_SYMBOL vmlinux 0x769addf0 dump_truncate +EXPORT_SYMBOL vmlinux 0x769f6e64 errseq_check +EXPORT_SYMBOL vmlinux 0x769fa66d __sock_cmsg_send +EXPORT_SYMBOL vmlinux 0x76d3cd60 laptop_mode +EXPORT_SYMBOL vmlinux 0x76d451c4 add_taint +EXPORT_SYMBOL vmlinux 0x770e277c neigh_parms_alloc +EXPORT_SYMBOL vmlinux 0x77263114 __devm_release_region +EXPORT_SYMBOL vmlinux 0x772c2a60 vlan_for_each +EXPORT_SYMBOL vmlinux 0x7732159c free_irq_cpu_rmap +EXPORT_SYMBOL vmlinux 0x77358855 iomem_resource +EXPORT_SYMBOL vmlinux 0x773a624e sock_kzfree_s +EXPORT_SYMBOL vmlinux 0x773fa409 __kfifo_dma_in_finish_r +EXPORT_SYMBOL vmlinux 0x77456e0a acpi_root_dir +EXPORT_SYMBOL vmlinux 0x7757b0a4 pcie_get_mps +EXPORT_SYMBOL vmlinux 0x7773d6a5 __ip_mc_inc_group +EXPORT_SYMBOL vmlinux 0x7773e2c4 get_acl +EXPORT_SYMBOL vmlinux 0x7782af42 inet_frag_reasm_prepare +EXPORT_SYMBOL vmlinux 0x7791193f icst525_s2div +EXPORT_SYMBOL vmlinux 0x779a18af kstrtoll +EXPORT_SYMBOL vmlinux 0x77a0c26c vme_irq_free +EXPORT_SYMBOL vmlinux 0x77a9ae85 __sb_start_write +EXPORT_SYMBOL vmlinux 0x77ab56e8 dup_iter +EXPORT_SYMBOL vmlinux 0x77bc13a0 strim +EXPORT_SYMBOL vmlinux 0x77d1e0bb __module_get +EXPORT_SYMBOL vmlinux 0x77daab4a pnp_disable_dev +EXPORT_SYMBOL vmlinux 0x77e8a32d n_tty_ioctl_helper +EXPORT_SYMBOL vmlinux 0x77e95def dev_mc_unsync +EXPORT_SYMBOL vmlinux 0x77e9eb37 aes_encrypt +EXPORT_SYMBOL vmlinux 0x780492cd dst_dev_put +EXPORT_SYMBOL vmlinux 0x7807f0f8 schedule_timeout_idle +EXPORT_SYMBOL vmlinux 0x780a8f34 iov_iter_alignment +EXPORT_SYMBOL vmlinux 0x782c1823 phy_attached_print +EXPORT_SYMBOL vmlinux 0x7833c892 __skb_checksum_complete +EXPORT_SYMBOL vmlinux 0x7841262f bh_submit_read +EXPORT_SYMBOL vmlinux 0x7846af3e __kfifo_len_r +EXPORT_SYMBOL vmlinux 0x7846d0fe xfrm_state_walk_done +EXPORT_SYMBOL vmlinux 0x78477ba3 pci_free_irq +EXPORT_SYMBOL vmlinux 0x7880c781 dm_kcopyd_prepare_callback +EXPORT_SYMBOL vmlinux 0x789affb1 frontswap_tmem_exclusive_gets +EXPORT_SYMBOL vmlinux 0x78a16f48 aes_decrypt +EXPORT_SYMBOL vmlinux 0x78a7e76c blk_queue_max_discard_sectors +EXPORT_SYMBOL vmlinux 0x78a9161c xfrm_alloc_spi +EXPORT_SYMBOL vmlinux 0x78b06308 phy_device_create +EXPORT_SYMBOL vmlinux 0x78b4d673 pcie_get_readrq +EXPORT_SYMBOL vmlinux 0x78c72176 inode_owner_or_capable +EXPORT_SYMBOL vmlinux 0x78df6bd7 no_pci_devices +EXPORT_SYMBOL vmlinux 0x7916cb22 par_io_of_config +EXPORT_SYMBOL vmlinux 0x79282a0f rproc_add_carveout +EXPORT_SYMBOL vmlinux 0x792b463e tcp_mmap +EXPORT_SYMBOL vmlinux 0x79354eff tcp_initialize_rcv_mss +EXPORT_SYMBOL vmlinux 0x793f3a81 skb_headers_offset_update +EXPORT_SYMBOL vmlinux 0x79441135 of_get_property +EXPORT_SYMBOL vmlinux 0x7951549b i2c_smbus_read_i2c_block_data_or_emulated +EXPORT_SYMBOL vmlinux 0x7972959a of_n_addr_cells +EXPORT_SYMBOL vmlinux 0x79739c3c utf8nagemin +EXPORT_SYMBOL vmlinux 0x7984eefc key_update +EXPORT_SYMBOL vmlinux 0x7985ada9 alloc_pages_current +EXPORT_SYMBOL vmlinux 0x799071d8 sock_alloc +EXPORT_SYMBOL vmlinux 0x799ba105 sk_stream_kill_queues +EXPORT_SYMBOL vmlinux 0x799fb703 mpage_readpage +EXPORT_SYMBOL vmlinux 0x79a14b5b seq_hex_dump +EXPORT_SYMBOL vmlinux 0x79a33f85 vme_get_size +EXPORT_SYMBOL vmlinux 0x79aa04a2 get_random_bytes +EXPORT_SYMBOL vmlinux 0x79b78d61 xfrm_state_unregister_afinfo +EXPORT_SYMBOL vmlinux 0x79c729e4 filemap_check_errors +EXPORT_SYMBOL vmlinux 0x79c92d5e set_groups +EXPORT_SYMBOL vmlinux 0x7a040f1d __starget_for_each_device +EXPORT_SYMBOL vmlinux 0x7a0422ba dquot_quota_off +EXPORT_SYMBOL vmlinux 0x7a064228 dm_kcopyd_copy +EXPORT_SYMBOL vmlinux 0x7a09a064 seg6_hmac_compute +EXPORT_SYMBOL vmlinux 0x7a1bcd59 gf128mul_x8_ble +EXPORT_SYMBOL vmlinux 0x7a1d85f4 fbcon_set_bitops +EXPORT_SYMBOL vmlinux 0x7a260c97 netdev_features_change +EXPORT_SYMBOL vmlinux 0x7a2af7b4 cpu_number +EXPORT_SYMBOL vmlinux 0x7a3c19ca vmap +EXPORT_SYMBOL vmlinux 0x7a3d1e00 thaw_super +EXPORT_SYMBOL vmlinux 0x7a4497db kzfree +EXPORT_SYMBOL vmlinux 0x7a467d59 __blockdev_direct_IO +EXPORT_SYMBOL vmlinux 0x7a4979fc nd_device_register +EXPORT_SYMBOL vmlinux 0x7a518ebe f_setown +EXPORT_SYMBOL vmlinux 0x7a54d959 jbd2_journal_inode_ranged_wait +EXPORT_SYMBOL vmlinux 0x7a59a757 __blk_rq_map_sg +EXPORT_SYMBOL vmlinux 0x7a660dee ps2_drain +EXPORT_SYMBOL vmlinux 0x7a669900 tcp_time_wait +EXPORT_SYMBOL vmlinux 0x7a79b26a scsi_free_host_dev +EXPORT_SYMBOL vmlinux 0x7a830bb4 pid_task +EXPORT_SYMBOL vmlinux 0x7a89edd6 i2c_register_driver +EXPORT_SYMBOL vmlinux 0x7a94d8d0 blk_queue_split +EXPORT_SYMBOL vmlinux 0x7a95e5ae do_settimeofday64 +EXPORT_SYMBOL vmlinux 0x7a968137 ucc_slow_restart_tx +EXPORT_SYMBOL vmlinux 0x7a96c274 ethtool_rx_flow_rule_create +EXPORT_SYMBOL vmlinux 0x7a9b37e8 blk_start_plug +EXPORT_SYMBOL vmlinux 0x7aa0fbbc filemap_map_pages +EXPORT_SYMBOL vmlinux 0x7aa1756e kvfree +EXPORT_SYMBOL vmlinux 0x7ab88a45 system_freezing_cnt +EXPORT_SYMBOL vmlinux 0x7acc37c5 i2c_smbus_read_block_data +EXPORT_SYMBOL vmlinux 0x7accf289 dquot_load_quota_sb +EXPORT_SYMBOL vmlinux 0x7ad050b9 qid_lt +EXPORT_SYMBOL vmlinux 0x7ad954d0 pci_reenable_device +EXPORT_SYMBOL vmlinux 0x7adc0fbf rb_replace_node_rcu +EXPORT_SYMBOL vmlinux 0x7ae5d317 qe_get_snum +EXPORT_SYMBOL vmlinux 0x7afa0731 flow_rule_match_mpls +EXPORT_SYMBOL vmlinux 0x7b0192da kstrtou16 +EXPORT_SYMBOL vmlinux 0x7b11f711 unmap_mapping_range +EXPORT_SYMBOL vmlinux 0x7b358728 __register_chrdev +EXPORT_SYMBOL vmlinux 0x7b3e824b ndo_dflt_fdb_del +EXPORT_SYMBOL vmlinux 0x7b4da33c _copy_from_iter +EXPORT_SYMBOL vmlinux 0x7b4da6ff __init_rwsem +EXPORT_SYMBOL vmlinux 0x7b5b8f31 sha256_update +EXPORT_SYMBOL vmlinux 0x7b5c7ffd xp_dma_unmap +EXPORT_SYMBOL vmlinux 0x7b64ee0d ata_port_printk +EXPORT_SYMBOL vmlinux 0x7b82b9a1 idr_replace +EXPORT_SYMBOL vmlinux 0x7bb29c8e input_mt_sync_frame +EXPORT_SYMBOL vmlinux 0x7bb50b88 acpi_write +EXPORT_SYMBOL vmlinux 0x7bb8a7ce posix_acl_from_xattr +EXPORT_SYMBOL vmlinux 0x7bbccd05 nr_node_ids +EXPORT_SYMBOL vmlinux 0x7beb4e7d napi_gro_frags +EXPORT_SYMBOL vmlinux 0x7bed23d7 ns_capable +EXPORT_SYMBOL vmlinux 0x7c0856eb wireless_spy_update +EXPORT_SYMBOL vmlinux 0x7c173634 __bitmap_complement +EXPORT_SYMBOL vmlinux 0x7c19d32f wake_up_process +EXPORT_SYMBOL vmlinux 0x7c2d57d8 ps2_sendbyte +EXPORT_SYMBOL vmlinux 0x7c30bc72 __break_lease +EXPORT_SYMBOL vmlinux 0x7c46233a cpufreq_quick_get +EXPORT_SYMBOL vmlinux 0x7c6feb7d genphy_restart_aneg +EXPORT_SYMBOL vmlinux 0x7c766125 bio_uninit +EXPORT_SYMBOL vmlinux 0x7c85fe79 i2c_smbus_write_byte +EXPORT_SYMBOL vmlinux 0x7c874859 devm_of_clk_del_provider +EXPORT_SYMBOL vmlinux 0x7c8a3396 mark_buffer_dirty_inode +EXPORT_SYMBOL vmlinux 0x7c8c1545 pcie_capability_read_word +EXPORT_SYMBOL vmlinux 0x7c9ca58f __sg_page_iter_next +EXPORT_SYMBOL vmlinux 0x7cb1aea1 devlink_dpipe_header_ethernet +EXPORT_SYMBOL vmlinux 0x7cd90123 file_remove_privs +EXPORT_SYMBOL vmlinux 0x7ce18c9f from_kqid +EXPORT_SYMBOL vmlinux 0x7ce2a5df neigh_lookup_nodev +EXPORT_SYMBOL vmlinux 0x7cf35220 vme_master_free +EXPORT_SYMBOL vmlinux 0x7cfe368d net_dim_get_def_tx_moderation +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 0x7d1689ad tcp_gro_complete +EXPORT_SYMBOL vmlinux 0x7d21fc76 tcf_exts_num_actions +EXPORT_SYMBOL vmlinux 0x7d34fd5c pci_unregister_driver +EXPORT_SYMBOL vmlinux 0x7d37c538 sock_setsockopt +EXPORT_SYMBOL vmlinux 0x7d4b176a netlbl_catmap_setbit +EXPORT_SYMBOL vmlinux 0x7d514521 ip_mc_join_group +EXPORT_SYMBOL vmlinux 0x7d549c8d mark_buffer_write_io_error +EXPORT_SYMBOL vmlinux 0x7d5e1008 __crc32c_le_shift +EXPORT_SYMBOL vmlinux 0x7d6440f5 page_symlink_inode_operations +EXPORT_SYMBOL vmlinux 0x7d677064 tcp_v4_syn_recv_sock +EXPORT_SYMBOL vmlinux 0x7d6b08f8 inet6_del_offload +EXPORT_SYMBOL vmlinux 0x7d7584de __frontswap_test +EXPORT_SYMBOL vmlinux 0x7d7a2c3d of_get_next_cpu_node +EXPORT_SYMBOL vmlinux 0x7d932d64 __tcp_md5_do_lookup +EXPORT_SYMBOL vmlinux 0x7da3e9fc register_mii_tstamp_controller +EXPORT_SYMBOL vmlinux 0x7daece67 quota_send_warning +EXPORT_SYMBOL vmlinux 0x7dbced80 fscrypt_zeroout_range +EXPORT_SYMBOL vmlinux 0x7dd1886a finish_swait +EXPORT_SYMBOL vmlinux 0x7de3785d of_find_net_device_by_node +EXPORT_SYMBOL vmlinux 0x7deff2d2 redirty_page_for_writepage +EXPORT_SYMBOL vmlinux 0x7deff673 dm_consume_args +EXPORT_SYMBOL vmlinux 0x7df8ad6c flow_rule_match_enc_ipv6_addrs +EXPORT_SYMBOL vmlinux 0x7e0826e2 atomic_dec_and_mutex_lock +EXPORT_SYMBOL vmlinux 0x7e18e39b devfreq_remove_governor +EXPORT_SYMBOL vmlinux 0x7e3191f6 try_to_del_timer_sync +EXPORT_SYMBOL vmlinux 0x7e3bd4dc of_iomap +EXPORT_SYMBOL vmlinux 0x7e408334 page_pool_alloc_pages +EXPORT_SYMBOL vmlinux 0x7e41dc07 mipi_dsi_dcs_set_pixel_format +EXPORT_SYMBOL vmlinux 0x7e44d7f8 cros_ec_get_next_event +EXPORT_SYMBOL vmlinux 0x7e6379b4 dma_virt_ops +EXPORT_SYMBOL vmlinux 0x7e9fda93 dquot_free_inode +EXPORT_SYMBOL vmlinux 0x7ea7fd68 is_acpi_data_node +EXPORT_SYMBOL vmlinux 0x7eac75f3 __xfrm_route_forward +EXPORT_SYMBOL vmlinux 0x7eb83baa ip_sock_set_pktinfo +EXPORT_SYMBOL vmlinux 0x7ebf3891 ppp_dev_name +EXPORT_SYMBOL vmlinux 0x7ec744ed _dev_err +EXPORT_SYMBOL vmlinux 0x7ec78bdd rename_lock +EXPORT_SYMBOL vmlinux 0x7ef33e27 pci_bus_assign_resources +EXPORT_SYMBOL vmlinux 0x7ef69806 ethtool_rx_flow_rule_destroy +EXPORT_SYMBOL vmlinux 0x7f02188f __msecs_to_jiffies +EXPORT_SYMBOL vmlinux 0x7f03b6a9 crc_ccitt_table +EXPORT_SYMBOL vmlinux 0x7f1878e0 input_match_device_id +EXPORT_SYMBOL vmlinux 0x7f1cb21f block_invalidatepage +EXPORT_SYMBOL vmlinux 0x7f24de73 jiffies_to_usecs +EXPORT_SYMBOL vmlinux 0x7f25667c input_unregister_handle +EXPORT_SYMBOL vmlinux 0x7f30d69c iov_iter_get_pages +EXPORT_SYMBOL vmlinux 0x7f38cc2e udp6_set_csum +EXPORT_SYMBOL vmlinux 0x7f52071a net_dim +EXPORT_SYMBOL vmlinux 0x7f5b4fe4 sg_free_table +EXPORT_SYMBOL vmlinux 0x7f666138 xfrm_state_check_expire +EXPORT_SYMBOL vmlinux 0x7f7f7bb4 irq_poll_disable +EXPORT_SYMBOL vmlinux 0x7f994f22 ipv6_sock_mc_drop +EXPORT_SYMBOL vmlinux 0x7f9f91b2 d_lookup +EXPORT_SYMBOL vmlinux 0x7fcede5b vga_put +EXPORT_SYMBOL vmlinux 0x7fe105d7 bman_ip_rev +EXPORT_SYMBOL vmlinux 0x7fe32873 rb_replace_node +EXPORT_SYMBOL vmlinux 0x8007f140 genphy_suspend +EXPORT_SYMBOL vmlinux 0x800e213d pci_bus_read_config_word +EXPORT_SYMBOL vmlinux 0x80121a11 vlan_filter_push_vids +EXPORT_SYMBOL vmlinux 0x80196dd5 mipi_dsi_compression_mode +EXPORT_SYMBOL vmlinux 0x802287b2 wait_for_key_construction +EXPORT_SYMBOL vmlinux 0x802f02ec posix_acl_update_mode +EXPORT_SYMBOL vmlinux 0x8030bc07 seq_file_path +EXPORT_SYMBOL vmlinux 0x803ddbb6 __posix_acl_create +EXPORT_SYMBOL vmlinux 0x80412934 block_commit_write +EXPORT_SYMBOL vmlinux 0x80713339 register_framebuffer +EXPORT_SYMBOL vmlinux 0x8071f01d mmc_gpiod_request_ro +EXPORT_SYMBOL vmlinux 0x807e7386 compat_ptr_ioctl +EXPORT_SYMBOL vmlinux 0x8084361a fib_default_rule_add +EXPORT_SYMBOL vmlinux 0x8089fbba dma_fence_array_create +EXPORT_SYMBOL vmlinux 0x808c89ea devfreq_add_device +EXPORT_SYMBOL vmlinux 0x809712ff hdmi_avi_infoframe_pack +EXPORT_SYMBOL vmlinux 0x80a717a8 __percpu_counter_compare +EXPORT_SYMBOL vmlinux 0x80ca5026 _bin2bcd +EXPORT_SYMBOL vmlinux 0x80d68d3e fb_register_client +EXPORT_SYMBOL vmlinux 0x80d961af i2c_transfer_buffer_flags +EXPORT_SYMBOL vmlinux 0x80df3478 max8998_update_reg +EXPORT_SYMBOL vmlinux 0x80e1c449 rtnl_set_sk_err +EXPORT_SYMBOL vmlinux 0x80f8ca12 netdev_upper_dev_unlink +EXPORT_SYMBOL vmlinux 0x810147e6 __dynamic_ibdev_dbg +EXPORT_SYMBOL vmlinux 0x8104217c scsi_alloc_sgtables +EXPORT_SYMBOL vmlinux 0x8112b3d2 scsi_build_sense_buffer +EXPORT_SYMBOL vmlinux 0x81188c30 match_string +EXPORT_SYMBOL vmlinux 0x81533963 sysfs_format_mac +EXPORT_SYMBOL vmlinux 0x815b5dd4 match_octal +EXPORT_SYMBOL vmlinux 0x815eb5ec d_make_root +EXPORT_SYMBOL vmlinux 0x8169adcb phy_set_max_speed +EXPORT_SYMBOL vmlinux 0x817ec4a6 scsi_host_alloc +EXPORT_SYMBOL vmlinux 0x818416e1 scsi_set_sense_information +EXPORT_SYMBOL vmlinux 0x818edf97 cpm_muram_alloc +EXPORT_SYMBOL vmlinux 0x818eec3c set_bh_page +EXPORT_SYMBOL vmlinux 0x8193f464 user_revoke +EXPORT_SYMBOL vmlinux 0x81b395b3 down_interruptible +EXPORT_SYMBOL vmlinux 0x81b8330a mark_page_accessed +EXPORT_SYMBOL vmlinux 0x81bcc434 fasync_helper +EXPORT_SYMBOL vmlinux 0x81db6ebb xz_dec_reset +EXPORT_SYMBOL vmlinux 0x81e6b37f dmi_get_system_info +EXPORT_SYMBOL vmlinux 0x8200a7dd t10_pi_type1_ip +EXPORT_SYMBOL vmlinux 0x82072614 tasklet_kill +EXPORT_SYMBOL vmlinux 0x8222f7df set_anon_super +EXPORT_SYMBOL vmlinux 0x8234c19b pskb_extract +EXPORT_SYMBOL vmlinux 0x82381249 phys_mem_access_prot +EXPORT_SYMBOL vmlinux 0x823d3505 cmxgcr_lock +EXPORT_SYMBOL vmlinux 0x824600f8 devm_register_netdev +EXPORT_SYMBOL vmlinux 0x82574b49 inet_sock_destruct +EXPORT_SYMBOL vmlinux 0x825906bc iov_iter_kvec +EXPORT_SYMBOL vmlinux 0x8263a6d9 proc_douintvec +EXPORT_SYMBOL vmlinux 0x8277a8ab dquot_get_state +EXPORT_SYMBOL vmlinux 0x827db3aa vfs_iocb_iter_read +EXPORT_SYMBOL vmlinux 0x828062b1 __frontswap_init +EXPORT_SYMBOL vmlinux 0x828759fe kmalloc_caches +EXPORT_SYMBOL vmlinux 0x82884a6a phy_print_status +EXPORT_SYMBOL vmlinux 0x828c5e27 mii_check_media +EXPORT_SYMBOL vmlinux 0x8298c942 secure_tcpv6_ts_off +EXPORT_SYMBOL vmlinux 0x82a71dd7 tcp_set_rcvlowat +EXPORT_SYMBOL vmlinux 0x82af4d68 tc_cleanup_flow_action +EXPORT_SYMBOL vmlinux 0x82c0dea3 fscrypt_setup_filename +EXPORT_SYMBOL vmlinux 0x82c87ad5 nr_online_nodes +EXPORT_SYMBOL vmlinux 0x82d0f411 pnp_unregister_driver +EXPORT_SYMBOL vmlinux 0x82ea0afd arp_tbl +EXPORT_SYMBOL vmlinux 0x82ff724a xfrm4_protocol_deregister +EXPORT_SYMBOL vmlinux 0x83007b17 dmam_alloc_attrs +EXPORT_SYMBOL vmlinux 0x830bc4d9 kfree_skb +EXPORT_SYMBOL vmlinux 0x83145978 tty_port_close +EXPORT_SYMBOL vmlinux 0x8339f27e xfrm4_rcv +EXPORT_SYMBOL vmlinux 0x83424dea dev_get_by_napi_id +EXPORT_SYMBOL vmlinux 0x83581089 gf128mul_init_4k_lle +EXPORT_SYMBOL vmlinux 0x835b8754 key_invalidate +EXPORT_SYMBOL vmlinux 0x83630f73 blackhole_netdev +EXPORT_SYMBOL vmlinux 0x8372525f mnt_set_expiry +EXPORT_SYMBOL vmlinux 0x837b7b09 __dynamic_pr_debug +EXPORT_SYMBOL vmlinux 0x8383ac47 neigh_table_clear +EXPORT_SYMBOL vmlinux 0x8386736b tcp_sync_mss +EXPORT_SYMBOL vmlinux 0x838d2bc8 siphash_3u32 +EXPORT_SYMBOL vmlinux 0x838e674f pskb_expand_head +EXPORT_SYMBOL vmlinux 0x83901506 qdisc_hash_del +EXPORT_SYMBOL vmlinux 0x83b2fa70 wait_on_page_bit +EXPORT_SYMBOL vmlinux 0x83c52fba xfrm4_protocol_init +EXPORT_SYMBOL vmlinux 0x83f01670 cros_ec_query_all +EXPORT_SYMBOL vmlinux 0x83fb46ac generic_pipe_buf_get +EXPORT_SYMBOL vmlinux 0x840342c6 sgl_free +EXPORT_SYMBOL vmlinux 0x8424d388 pci_resize_resource +EXPORT_SYMBOL vmlinux 0x84309baf gnet_stats_copy_app +EXPORT_SYMBOL vmlinux 0x844b12dd clear_inode +EXPORT_SYMBOL vmlinux 0x84552492 tty_lock +EXPORT_SYMBOL vmlinux 0x8456e561 proto_register +EXPORT_SYMBOL vmlinux 0x845a3a1c cpu_hwcap_keys +EXPORT_SYMBOL vmlinux 0x845d3209 phy_connect_direct +EXPORT_SYMBOL vmlinux 0x846f88a8 blk_mq_free_tag_set +EXPORT_SYMBOL vmlinux 0x84758405 pps_lookup_dev +EXPORT_SYMBOL vmlinux 0x84771fa9 jbd2_journal_invalidatepage +EXPORT_SYMBOL vmlinux 0x84948419 netdev_adjacent_change_commit +EXPORT_SYMBOL vmlinux 0x84b85975 kernel_sendpage +EXPORT_SYMBOL vmlinux 0x84b92b7d __tcf_idr_release +EXPORT_SYMBOL vmlinux 0x84c1c552 proc_dointvec_ms_jiffies +EXPORT_SYMBOL vmlinux 0x84c1d239 mdiobus_is_registered_device +EXPORT_SYMBOL vmlinux 0x84cd4a60 genphy_config_eee_advert +EXPORT_SYMBOL vmlinux 0x84d4866f linkwatch_fire_event +EXPORT_SYMBOL vmlinux 0x84d60f31 abx500_mask_and_set_register_interruptible +EXPORT_SYMBOL vmlinux 0x84edd8da genphy_c37_read_status +EXPORT_SYMBOL vmlinux 0x851b9121 xudma_dev_get_psil_base +EXPORT_SYMBOL vmlinux 0x8522ee07 tcp_close +EXPORT_SYMBOL vmlinux 0x85237e70 fscrypt_put_encryption_info +EXPORT_SYMBOL vmlinux 0x8524fc89 ip6_fraglist_init +EXPORT_SYMBOL vmlinux 0x853c45b9 rt_dst_clone +EXPORT_SYMBOL vmlinux 0x85473607 vfs_fsync +EXPORT_SYMBOL vmlinux 0x85532eb1 __tracepoint_dma_fence_enable_signal +EXPORT_SYMBOL vmlinux 0x85670f1d rtnl_is_locked +EXPORT_SYMBOL vmlinux 0x8579f8d0 inet_csk_init_xmit_timers +EXPORT_SYMBOL vmlinux 0x8583ae75 devm_iounmap +EXPORT_SYMBOL vmlinux 0x85879d50 inode_newsize_ok +EXPORT_SYMBOL vmlinux 0x858b3fe3 free_iova_mem +EXPORT_SYMBOL vmlinux 0x8591d7d5 ledtrig_mtd_activity +EXPORT_SYMBOL vmlinux 0x85ad58d4 bio_init +EXPORT_SYMBOL vmlinux 0x85b4cf2f utf8nlen +EXPORT_SYMBOL vmlinux 0x85b5e625 rfkill_set_states +EXPORT_SYMBOL vmlinux 0x85bd1608 __request_region +EXPORT_SYMBOL vmlinux 0x85bf146d remove_conflicting_pci_framebuffers +EXPORT_SYMBOL vmlinux 0x85d50730 config_group_init +EXPORT_SYMBOL vmlinux 0x85df9b6c strsep +EXPORT_SYMBOL vmlinux 0x85efc7e0 zero_pfn +EXPORT_SYMBOL vmlinux 0x85eff2f7 crypto_sha256_update +EXPORT_SYMBOL vmlinux 0x85fbc931 slhc_uncompress +EXPORT_SYMBOL vmlinux 0x85ff4dd1 fib_notifier_ops_unregister +EXPORT_SYMBOL vmlinux 0x861d6251 tty_port_lower_dtr_rts +EXPORT_SYMBOL vmlinux 0x86325c15 genl_notify +EXPORT_SYMBOL vmlinux 0x863a276a color_table +EXPORT_SYMBOL vmlinux 0x864a17cc mdiobus_scan +EXPORT_SYMBOL vmlinux 0x864b7f3f __netlink_kernel_create +EXPORT_SYMBOL vmlinux 0x865029ac __hw_addr_sync +EXPORT_SYMBOL vmlinux 0x86503d40 bdgrab +EXPORT_SYMBOL vmlinux 0x867858b5 backlight_force_update +EXPORT_SYMBOL vmlinux 0x867a6098 jbd2_journal_get_undo_access +EXPORT_SYMBOL vmlinux 0x868acba5 get_options +EXPORT_SYMBOL vmlinux 0x868e526a msm_pinctrl_remove +EXPORT_SYMBOL vmlinux 0x868edb90 dev_printk_emit +EXPORT_SYMBOL vmlinux 0x86b76181 forget_all_cached_acls +EXPORT_SYMBOL vmlinux 0x86d059ef generic_make_request +EXPORT_SYMBOL vmlinux 0x86d52ba5 lookup_constant +EXPORT_SYMBOL vmlinux 0x86de5a1e tcp_disconnect +EXPORT_SYMBOL vmlinux 0x86e42cb5 __ip_options_compile +EXPORT_SYMBOL vmlinux 0x86ed74f2 __xfrm_decode_session +EXPORT_SYMBOL vmlinux 0x86f4d9fa scsi_scan_host +EXPORT_SYMBOL vmlinux 0x86f8f07b rc5t583_ext_power_req_config +EXPORT_SYMBOL vmlinux 0x86fb9b05 bitmap_parse_user +EXPORT_SYMBOL vmlinux 0x87031688 __block_write_full_page +EXPORT_SYMBOL vmlinux 0x8703db8a fbcon_rotate_ccw +EXPORT_SYMBOL vmlinux 0x872e232e __ip4_datagram_connect +EXPORT_SYMBOL vmlinux 0x872f21b2 netdev_next_lower_dev_rcu +EXPORT_SYMBOL vmlinux 0x874201c1 simple_transaction_get +EXPORT_SYMBOL vmlinux 0x875379f9 jbd2_journal_lock_updates +EXPORT_SYMBOL vmlinux 0x8761c87b rps_needed +EXPORT_SYMBOL vmlinux 0x877845d0 __inet_stream_connect +EXPORT_SYMBOL vmlinux 0x877d5961 pnp_start_dev +EXPORT_SYMBOL vmlinux 0x877f04a9 always_delete_dentry +EXPORT_SYMBOL vmlinux 0x878469bd ZSTD_decompressStream +EXPORT_SYMBOL vmlinux 0x8785aabc security_path_unlink +EXPORT_SYMBOL vmlinux 0x8789a21c _copy_to_iter +EXPORT_SYMBOL vmlinux 0x8794cac0 param_set_copystring +EXPORT_SYMBOL vmlinux 0x8798eb80 acpi_get_hp_hw_control_from_firmware +EXPORT_SYMBOL vmlinux 0x87b7b0a9 xfrm_state_register_afinfo +EXPORT_SYMBOL vmlinux 0x87b8798d sg_next +EXPORT_SYMBOL vmlinux 0x87bcf57f pci_clear_mwi +EXPORT_SYMBOL vmlinux 0x87bf4112 get_thermal_instance +EXPORT_SYMBOL vmlinux 0x87c28f52 of_find_node_opts_by_path +EXPORT_SYMBOL vmlinux 0x87d01b88 prepare_creds +EXPORT_SYMBOL vmlinux 0x87dc2426 dev_get_port_parent_id +EXPORT_SYMBOL vmlinux 0x880b1e04 scsi_vpd_tpg_id +EXPORT_SYMBOL vmlinux 0x88106f44 __check_sticky +EXPORT_SYMBOL vmlinux 0x8811277d of_mdiobus_phy_device_register +EXPORT_SYMBOL vmlinux 0x881bad5e phy_mipi_dphy_config_validate +EXPORT_SYMBOL vmlinux 0x881c4413 gen_pool_first_fit +EXPORT_SYMBOL vmlinux 0x881f8a47 blkdev_issue_zeroout +EXPORT_SYMBOL vmlinux 0x881f93e7 rio_query_mport +EXPORT_SYMBOL vmlinux 0x8820752e phy_register_fixup_for_id +EXPORT_SYMBOL vmlinux 0x88224504 dev_open +EXPORT_SYMBOL vmlinux 0x883de579 netdev_unbind_sb_channel +EXPORT_SYMBOL vmlinux 0x88547375 netif_tx_wake_queue +EXPORT_SYMBOL vmlinux 0x887157eb fget_raw +EXPORT_SYMBOL vmlinux 0x88724129 inet_stream_ops +EXPORT_SYMBOL vmlinux 0x88822d38 unregister_blocking_lsm_notifier +EXPORT_SYMBOL vmlinux 0x8888f1fe xxh32 +EXPORT_SYMBOL vmlinux 0x888a405c scsi_verify_blk_ioctl +EXPORT_SYMBOL vmlinux 0x88946aa5 netlink_net_capable +EXPORT_SYMBOL vmlinux 0x8898c242 param_ops_invbool +EXPORT_SYMBOL vmlinux 0x88abb78b ZSTD_insertBlock +EXPORT_SYMBOL vmlinux 0x88b94124 mmc_retune_release +EXPORT_SYMBOL vmlinux 0x88c11fc8 input_unregister_handler +EXPORT_SYMBOL vmlinux 0x88c22489 ilookup +EXPORT_SYMBOL vmlinux 0x88db9f48 __check_object_size +EXPORT_SYMBOL vmlinux 0x88e1d0f0 page_frag_free +EXPORT_SYMBOL vmlinux 0x89019cf5 inet_get_local_port_range +EXPORT_SYMBOL vmlinux 0x89090bd7 bdi_register +EXPORT_SYMBOL vmlinux 0x8921daa0 tty_vhangup +EXPORT_SYMBOL vmlinux 0x892970cc set_user_nice +EXPORT_SYMBOL vmlinux 0x89434b4b radix_tree_tag_clear +EXPORT_SYMBOL vmlinux 0x8946ea72 fpsimd_context_busy +EXPORT_SYMBOL vmlinux 0x89502bcd dquot_quotactl_sysfile_ops +EXPORT_SYMBOL vmlinux 0x89681342 dquot_operations +EXPORT_SYMBOL vmlinux 0x896a9c4a dma_fence_chain_init +EXPORT_SYMBOL vmlinux 0x896f980f xfrm_parse_spi +EXPORT_SYMBOL vmlinux 0x897c6137 fs_param_is_blob +EXPORT_SYMBOL vmlinux 0x898ae9a3 vif_device_init +EXPORT_SYMBOL vmlinux 0x89d7a0ef of_node_put +EXPORT_SYMBOL vmlinux 0x89f6a706 pci_scan_single_device +EXPORT_SYMBOL vmlinux 0x8a04d22f nf_ip_checksum +EXPORT_SYMBOL vmlinux 0x8a1a2e29 dev_uc_add +EXPORT_SYMBOL vmlinux 0x8a365c68 ip_sock_set_mtu_discover +EXPORT_SYMBOL vmlinux 0x8a47043d LZ4_decompress_safe_continue +EXPORT_SYMBOL vmlinux 0x8a490c90 rfkill_set_sw_state +EXPORT_SYMBOL vmlinux 0x8a54034c param_get_bool +EXPORT_SYMBOL vmlinux 0x8a6af65c kstrtoul_from_user +EXPORT_SYMBOL vmlinux 0x8a74ba30 unregister_netdevice_queue +EXPORT_SYMBOL vmlinux 0x8a7d1c31 high_memory +EXPORT_SYMBOL vmlinux 0x8a7ea338 find_inode_by_ino_rcu +EXPORT_SYMBOL vmlinux 0x8a80ddba mipi_dsi_detach +EXPORT_SYMBOL vmlinux 0x8a948f27 __nla_parse +EXPORT_SYMBOL vmlinux 0x8a982a6d amba_driver_unregister +EXPORT_SYMBOL vmlinux 0x8a99a016 mempool_free_slab +EXPORT_SYMBOL vmlinux 0x8a9c9df0 dma_resv_copy_fences +EXPORT_SYMBOL vmlinux 0x8aae3498 buffer_migrate_page +EXPORT_SYMBOL vmlinux 0x8ab7ff11 tcp_select_initial_window +EXPORT_SYMBOL vmlinux 0x8ac136ae imx_sc_misc_get_control +EXPORT_SYMBOL vmlinux 0x8ac3334b net_dim_get_def_rx_moderation +EXPORT_SYMBOL vmlinux 0x8ac743de sg_copy_buffer +EXPORT_SYMBOL vmlinux 0x8ad5b8a2 pci_bus_alloc_resource +EXPORT_SYMBOL vmlinux 0x8ad70492 __scsi_execute +EXPORT_SYMBOL vmlinux 0x8b0088d1 LZ4_decompress_safe_usingDict +EXPORT_SYMBOL vmlinux 0x8b0b2a0e scsi_dma_unmap +EXPORT_SYMBOL vmlinux 0x8b11553e inet_frag_kill +EXPORT_SYMBOL vmlinux 0x8b205c5b scsi_device_lookup_by_target +EXPORT_SYMBOL vmlinux 0x8b2ffd83 __cpu_present_mask +EXPORT_SYMBOL vmlinux 0x8b347f20 neigh_lookup +EXPORT_SYMBOL vmlinux 0x8b43221b pcie_port_service_unregister +EXPORT_SYMBOL vmlinux 0x8b525da5 of_mdiobus_register +EXPORT_SYMBOL vmlinux 0x8b618d08 overflowuid +EXPORT_SYMBOL vmlinux 0x8b62fde7 xfrm6_rcv_spi +EXPORT_SYMBOL vmlinux 0x8b6f2aac kill_pgrp +EXPORT_SYMBOL vmlinux 0x8b8059bd in_group_p +EXPORT_SYMBOL vmlinux 0x8b86d4c5 skb_csum_hwoffload_help +EXPORT_SYMBOL vmlinux 0x8b8b8af1 ww_mutex_unlock +EXPORT_SYMBOL vmlinux 0x8b910be2 errseq_sample +EXPORT_SYMBOL vmlinux 0x8b989cf9 acpi_bus_can_wakeup +EXPORT_SYMBOL vmlinux 0x8b9ea582 ZSTD_copyDCtx +EXPORT_SYMBOL vmlinux 0x8ba7489d tcp_sock_set_syncnt +EXPORT_SYMBOL vmlinux 0x8baad913 fs_param_is_path +EXPORT_SYMBOL vmlinux 0x8bae3572 xfrm_lookup +EXPORT_SYMBOL vmlinux 0x8bd83557 tcp_sock_set_cork +EXPORT_SYMBOL vmlinux 0x8bdc7fbf flow_rule_match_enc_opts +EXPORT_SYMBOL vmlinux 0x8be189ab ucc_slow_disable +EXPORT_SYMBOL vmlinux 0x8be9432d register_netdevice +EXPORT_SYMBOL vmlinux 0x8c010f92 pnp_device_attach +EXPORT_SYMBOL vmlinux 0x8c1b7b1a xudma_dev_get_tisci_rm +EXPORT_SYMBOL vmlinux 0x8c26d495 prepare_to_wait_event +EXPORT_SYMBOL vmlinux 0x8c4f2c99 __xfrm_state_destroy +EXPORT_SYMBOL vmlinux 0x8c521584 i2c_smbus_write_byte_data +EXPORT_SYMBOL vmlinux 0x8c55976b register_fib_notifier +EXPORT_SYMBOL vmlinux 0x8c672cd5 dquot_drop +EXPORT_SYMBOL vmlinux 0x8c6bf651 flow_block_cb_is_busy +EXPORT_SYMBOL vmlinux 0x8c790ed0 pci_read_config_word +EXPORT_SYMBOL vmlinux 0x8c846469 eth_header +EXPORT_SYMBOL vmlinux 0x8c8f1bcd ping_prot +EXPORT_SYMBOL vmlinux 0x8c9e338f acpi_bios_error +EXPORT_SYMBOL vmlinux 0x8cb544df __tracepoint_kmalloc +EXPORT_SYMBOL vmlinux 0x8cbcd0be xfrm_state_add +EXPORT_SYMBOL vmlinux 0x8cbeab64 tc_setup_cb_destroy +EXPORT_SYMBOL vmlinux 0x8cc09701 security_sctp_bind_connect +EXPORT_SYMBOL vmlinux 0x8cc53d20 __par_io_config_pin +EXPORT_SYMBOL vmlinux 0x8cda8029 xen_clear_irq_pending +EXPORT_SYMBOL vmlinux 0x8ce6370a vlan_vid_del +EXPORT_SYMBOL vmlinux 0x8cff8da1 param_set_invbool +EXPORT_SYMBOL vmlinux 0x8d09750a of_find_i2c_adapter_by_node +EXPORT_SYMBOL vmlinux 0x8d0c1273 blk_queue_max_write_zeroes_sectors +EXPORT_SYMBOL vmlinux 0x8d291574 simple_empty +EXPORT_SYMBOL vmlinux 0x8d4943dc dev_get_by_name_rcu +EXPORT_SYMBOL vmlinux 0x8d55bb8a qid_eq +EXPORT_SYMBOL vmlinux 0x8d73278e hex_asc_upper +EXPORT_SYMBOL vmlinux 0x8d73a806 register_qdisc +EXPORT_SYMBOL vmlinux 0x8d76488d cpufreq_generic_suspend +EXPORT_SYMBOL vmlinux 0x8d779b26 tcf_action_dump_1 +EXPORT_SYMBOL vmlinux 0x8d7df42d inet_rcv_saddr_equal +EXPORT_SYMBOL vmlinux 0x8d9ca0e6 dma_fence_enable_sw_signaling +EXPORT_SYMBOL vmlinux 0x8da4adc4 pci_remove_bus +EXPORT_SYMBOL vmlinux 0x8db05ed6 vmf_insert_pfn_prot +EXPORT_SYMBOL vmlinux 0x8ddd8aad schedule_timeout +EXPORT_SYMBOL vmlinux 0x8df4afd9 qe_put_snum +EXPORT_SYMBOL vmlinux 0x8df92f66 memchr_inv +EXPORT_SYMBOL vmlinux 0x8df9dd10 guid_null +EXPORT_SYMBOL vmlinux 0x8e12ef4a dev_activate +EXPORT_SYMBOL vmlinux 0x8e17b3ae idr_destroy +EXPORT_SYMBOL vmlinux 0x8e21c9a1 dma_fence_add_callback +EXPORT_SYMBOL vmlinux 0x8e2ea164 ipv4_specific +EXPORT_SYMBOL vmlinux 0x8e344b75 netdev_bind_sb_channel_queue +EXPORT_SYMBOL vmlinux 0x8e3af70d __neigh_for_each_release +EXPORT_SYMBOL vmlinux 0x8e3c8889 scsi_target_quiesce +EXPORT_SYMBOL vmlinux 0x8e3f5ded configfs_register_subsystem +EXPORT_SYMBOL vmlinux 0x8e4c60a3 cpm_muram_dma +EXPORT_SYMBOL vmlinux 0x8e60037a inet_csk_reqsk_queue_add +EXPORT_SYMBOL vmlinux 0x8e7b6e98 blk_queue_physical_block_size +EXPORT_SYMBOL vmlinux 0x8e93bd24 security_secctx_to_secid +EXPORT_SYMBOL vmlinux 0x8ea2a7c2 set_blocksize +EXPORT_SYMBOL vmlinux 0x8eb27c85 input_mt_destroy_slots +EXPORT_SYMBOL vmlinux 0x8eb47c46 pci_request_irq +EXPORT_SYMBOL vmlinux 0x8ec2ca9b phy_do_ioctl_running +EXPORT_SYMBOL vmlinux 0x8eda484d netdev_upper_get_next_dev_rcu +EXPORT_SYMBOL vmlinux 0x8ef1a41b flow_block_cb_decref +EXPORT_SYMBOL vmlinux 0x8ef9c0e8 load_nls +EXPORT_SYMBOL vmlinux 0x8efcf8db rt_dst_alloc +EXPORT_SYMBOL vmlinux 0x8f01afd6 twl6030_interrupt_mask +EXPORT_SYMBOL vmlinux 0x8f05b087 block_write_begin +EXPORT_SYMBOL vmlinux 0x8f07277e tcp_make_synack +EXPORT_SYMBOL vmlinux 0x8f18a3d0 component_match_add_typed +EXPORT_SYMBOL vmlinux 0x8f1bac63 filemap_range_has_page +EXPORT_SYMBOL vmlinux 0x8f238408 __bread_gfp +EXPORT_SYMBOL vmlinux 0x8f3f701e cpufreq_get_policy +EXPORT_SYMBOL vmlinux 0x8f61fe45 tcf_get_next_chain +EXPORT_SYMBOL vmlinux 0x8f7bd685 crypto_sha512_update +EXPORT_SYMBOL vmlinux 0x8f8095dd remap_vmalloc_range +EXPORT_SYMBOL vmlinux 0x8f84d18d d_instantiate_anon +EXPORT_SYMBOL vmlinux 0x8f8bae15 scsi_mode_sense +EXPORT_SYMBOL vmlinux 0x8f97873c find_get_pages_contig +EXPORT_SYMBOL vmlinux 0x8f996a30 ethtool_convert_legacy_u32_to_link_mode +EXPORT_SYMBOL vmlinux 0x8fa25c24 xa_find +EXPORT_SYMBOL vmlinux 0x8fa6489f scsi_host_lookup +EXPORT_SYMBOL vmlinux 0x8fb97e6a phy_stop +EXPORT_SYMBOL vmlinux 0x8fc9ea11 fman_port_cfg_buf_prefix_content +EXPORT_SYMBOL vmlinux 0x8fd180e7 kernel_neon_begin +EXPORT_SYMBOL vmlinux 0x8fda6a7f __next_node_in +EXPORT_SYMBOL vmlinux 0x8fe0ddc7 jbd2_journal_start_reserved +EXPORT_SYMBOL vmlinux 0x8ff89ed0 seg6_hmac_exit +EXPORT_SYMBOL vmlinux 0x8ffbdba9 blk_limits_io_min +EXPORT_SYMBOL vmlinux 0x901f0386 truncate_inode_pages_final +EXPORT_SYMBOL vmlinux 0x90277fdc mipi_dsi_dcs_nop +EXPORT_SYMBOL vmlinux 0x902d8722 vme_slave_get +EXPORT_SYMBOL vmlinux 0x902f5199 cpumask_next_wrap +EXPORT_SYMBOL vmlinux 0x9034a696 mempool_destroy +EXPORT_SYMBOL vmlinux 0x903e0c47 fscrypt_decrypt_block_inplace +EXPORT_SYMBOL vmlinux 0x9054ee54 ethtool_intersect_link_masks +EXPORT_SYMBOL vmlinux 0x905695ab sg_copy_from_buffer +EXPORT_SYMBOL vmlinux 0x90576ec4 vmemdup_user +EXPORT_SYMBOL vmlinux 0x9079725d cdrom_ioctl +EXPORT_SYMBOL vmlinux 0x907aba6e blk_mq_requeue_request +EXPORT_SYMBOL vmlinux 0x907ba52c posix_acl_valid +EXPORT_SYMBOL vmlinux 0x908109fd nf_log_unbind_pf +EXPORT_SYMBOL vmlinux 0x908644a8 __netdev_alloc_skb +EXPORT_SYMBOL vmlinux 0x908d6099 rproc_report_crash +EXPORT_SYMBOL vmlinux 0x9092f7c3 blk_mq_unique_tag +EXPORT_SYMBOL vmlinux 0x90a35f1f arp_send +EXPORT_SYMBOL vmlinux 0x90be0091 dquot_initialize_needed +EXPORT_SYMBOL vmlinux 0x90be0b04 skb_unlink +EXPORT_SYMBOL vmlinux 0x90e90182 finish_open +EXPORT_SYMBOL vmlinux 0x90ebe283 mntget +EXPORT_SYMBOL vmlinux 0x90fd0751 xfrm_init_replay +EXPORT_SYMBOL vmlinux 0x90fe74de rproc_boot +EXPORT_SYMBOL vmlinux 0x910143aa fman_get_pause_cfg +EXPORT_SYMBOL vmlinux 0x9111c2b2 register_gifconf +EXPORT_SYMBOL vmlinux 0x911d1c2c vm_map_pages_zero +EXPORT_SYMBOL vmlinux 0x9120bc33 _copy_from_iter_full +EXPORT_SYMBOL vmlinux 0x912a9ac4 __hw_addr_ref_unsync_dev +EXPORT_SYMBOL vmlinux 0x912cc4b0 of_graph_get_port_parent +EXPORT_SYMBOL vmlinux 0x91320ed2 generic_mii_ioctl +EXPORT_SYMBOL vmlinux 0x9134fbe7 __blk_mq_end_request +EXPORT_SYMBOL vmlinux 0x913df108 pci_get_class +EXPORT_SYMBOL vmlinux 0x914cef4f blk_queue_virt_boundary +EXPORT_SYMBOL vmlinux 0x914dac6b sk_common_release +EXPORT_SYMBOL vmlinux 0x9166fada strncpy +EXPORT_SYMBOL vmlinux 0x9168d220 jbd2_journal_get_write_access +EXPORT_SYMBOL vmlinux 0x916a04a5 devfreq_suspend_device +EXPORT_SYMBOL vmlinux 0x916fd04c netdev_set_sb_channel +EXPORT_SYMBOL vmlinux 0x919c58f3 __clzsi2 +EXPORT_SYMBOL vmlinux 0x919dab01 vfs_dup_fs_context +EXPORT_SYMBOL vmlinux 0x919ecd0a request_firmware +EXPORT_SYMBOL vmlinux 0x91a12578 cookie_timestamp_decode +EXPORT_SYMBOL vmlinux 0x91a7b1da qdisc_class_hash_remove +EXPORT_SYMBOL vmlinux 0x91acfa9b mmc_of_parse_voltage +EXPORT_SYMBOL vmlinux 0x91c0980e icst_hz +EXPORT_SYMBOL vmlinux 0x91cdd580 truncate_pagecache_range +EXPORT_SYMBOL vmlinux 0x91d9d946 pci_free_irq_vectors +EXPORT_SYMBOL vmlinux 0x91e31d8c __sk_backlog_rcv +EXPORT_SYMBOL vmlinux 0x91e6cc59 page_get_link +EXPORT_SYMBOL vmlinux 0x91f44510 idr_alloc_cyclic +EXPORT_SYMBOL vmlinux 0x9205e3ad udp_ioctl +EXPORT_SYMBOL vmlinux 0x9214265c devm_clk_get +EXPORT_SYMBOL vmlinux 0x92289d54 __skb_try_recv_datagram +EXPORT_SYMBOL vmlinux 0x922f45a6 __bitmap_clear +EXPORT_SYMBOL vmlinux 0x923b1276 dmaengine_get +EXPORT_SYMBOL vmlinux 0x92540fbf finish_wait +EXPORT_SYMBOL vmlinux 0x9258c776 hdmi_vendor_infoframe_pack_only +EXPORT_SYMBOL vmlinux 0x926c7fb6 cdev_del +EXPORT_SYMBOL vmlinux 0x9270da75 __inc_zone_page_state +EXPORT_SYMBOL vmlinux 0x9276b9b9 dma_resv_fini +EXPORT_SYMBOL vmlinux 0x927a4d4a phy_set_sym_pause +EXPORT_SYMBOL vmlinux 0x92880b66 __netlink_ns_capable +EXPORT_SYMBOL vmlinux 0x92905d0a simple_write_end +EXPORT_SYMBOL vmlinux 0x9291cd3b memdup_user +EXPORT_SYMBOL vmlinux 0x929ba583 flow_rule_match_enc_control +EXPORT_SYMBOL vmlinux 0x92a23eb6 twl6040_power +EXPORT_SYMBOL vmlinux 0x92abab64 devfreq_monitor_start +EXPORT_SYMBOL vmlinux 0x92ac8e57 devfreq_unregister_opp_notifier +EXPORT_SYMBOL vmlinux 0x92b94c53 scsi_report_device_reset +EXPORT_SYMBOL vmlinux 0x92b99a33 acpi_put_table +EXPORT_SYMBOL vmlinux 0x92b9b180 slash_name +EXPORT_SYMBOL vmlinux 0x92ba5c16 get_task_cred +EXPORT_SYMBOL vmlinux 0x92ebf89a d_drop +EXPORT_SYMBOL vmlinux 0x92ec510d jiffies64_to_msecs +EXPORT_SYMBOL vmlinux 0x92fa5abb vme_lm_detach +EXPORT_SYMBOL vmlinux 0x93022ba6 __scsi_format_command +EXPORT_SYMBOL vmlinux 0x9305bf68 find_next_and_bit +EXPORT_SYMBOL vmlinux 0x9305f8e6 cpufreq_get +EXPORT_SYMBOL vmlinux 0x93221f4e ip_options_rcv_srr +EXPORT_SYMBOL vmlinux 0x932a3180 clk_bulk_get_all +EXPORT_SYMBOL vmlinux 0x93377320 sget +EXPORT_SYMBOL vmlinux 0x9337a2fd __hw_addr_unsync_dev +EXPORT_SYMBOL vmlinux 0x933d1488 jbd2_journal_blocks_per_page +EXPORT_SYMBOL vmlinux 0x9354f985 phy_modify_paged +EXPORT_SYMBOL vmlinux 0x936e6a9d sched_autogroup_create_attach +EXPORT_SYMBOL vmlinux 0x937733e3 qid_valid +EXPORT_SYMBOL vmlinux 0x937e953d devm_clk_hw_register_clkdev +EXPORT_SYMBOL vmlinux 0x93976126 genl_register_family +EXPORT_SYMBOL vmlinux 0x93a6130e ip_mc_leave_group +EXPORT_SYMBOL vmlinux 0x93a6e0b2 io_schedule +EXPORT_SYMBOL vmlinux 0x93b1c63a touch_buffer +EXPORT_SYMBOL vmlinux 0x93b3fc74 register_dcbevent_notifier +EXPORT_SYMBOL vmlinux 0x93b639c1 kmem_cache_alloc_node +EXPORT_SYMBOL vmlinux 0x93c1992f nla_put_nohdr +EXPORT_SYMBOL vmlinux 0x93d6dd8c complete_all +EXPORT_SYMBOL vmlinux 0x93dbc7dd vfs_unlink +EXPORT_SYMBOL vmlinux 0x93dfae88 mmc_cqe_start_req +EXPORT_SYMBOL vmlinux 0x93f12ea9 irq_set_chip +EXPORT_SYMBOL vmlinux 0x94049c93 textsearch_unregister +EXPORT_SYMBOL vmlinux 0x940556f6 genphy_read_abilities +EXPORT_SYMBOL vmlinux 0x9423a31b scsi_register_driver +EXPORT_SYMBOL vmlinux 0x9428f816 dim_turn +EXPORT_SYMBOL vmlinux 0x9441507c pci_enable_wake +EXPORT_SYMBOL vmlinux 0x944375db _totalram_pages +EXPORT_SYMBOL vmlinux 0x944515a2 pci_write_config_word +EXPORT_SYMBOL vmlinux 0x944a564d is_console_locked +EXPORT_SYMBOL vmlinux 0x945808be inet6_ioctl +EXPORT_SYMBOL vmlinux 0x945ba508 tty_port_tty_get +EXPORT_SYMBOL vmlinux 0x946f0019 flow_rule_match_enc_keyid +EXPORT_SYMBOL vmlinux 0x9485a2d0 is_nd_dax +EXPORT_SYMBOL vmlinux 0x9490c488 of_match_node +EXPORT_SYMBOL vmlinux 0x94961283 vunmap +EXPORT_SYMBOL vmlinux 0x94bb7ec3 gen_pool_dma_zalloc_algo +EXPORT_SYMBOL vmlinux 0x94bf03ca utf8_to_utf32 +EXPORT_SYMBOL vmlinux 0x94c12255 fman_unregister_intr +EXPORT_SYMBOL vmlinux 0x94c8a730 __sk_mem_reduce_allocated +EXPORT_SYMBOL vmlinux 0x94e481cf ZSTD_adjustCParams +EXPORT_SYMBOL vmlinux 0x94f58f64 abx500_set_register_interruptible +EXPORT_SYMBOL vmlinux 0x94f9dc46 mipi_dsi_dcs_get_power_mode +EXPORT_SYMBOL vmlinux 0x94fc8d93 smp_call_function_many +EXPORT_SYMBOL vmlinux 0x953023da dcache_dir_close +EXPORT_SYMBOL vmlinux 0x9545af6d tasklet_init +EXPORT_SYMBOL vmlinux 0x954cef6f init_on_alloc +EXPORT_SYMBOL vmlinux 0x954f099c idr_preload +EXPORT_SYMBOL vmlinux 0x9563bcb6 __kfree_skb +EXPORT_SYMBOL vmlinux 0x9565c452 md_bitmap_close_sync +EXPORT_SYMBOL vmlinux 0x956c90f1 vfs_statx_fd +EXPORT_SYMBOL vmlinux 0x95722936 ucc_fast_transmit_on_demand +EXPORT_SYMBOL vmlinux 0x9578a13b iproc_msi_init +EXPORT_SYMBOL vmlinux 0x95a67b07 udp_table +EXPORT_SYMBOL vmlinux 0x95f649ff xfrm_state_free +EXPORT_SYMBOL vmlinux 0x95fcd441 __nla_put_nohdr +EXPORT_SYMBOL vmlinux 0x960354e6 unix_get_socket +EXPORT_SYMBOL vmlinux 0x9607ae57 dma_direct_unmap_sg +EXPORT_SYMBOL vmlinux 0x961cf9b4 i2c_smbus_write_i2c_block_data +EXPORT_SYMBOL vmlinux 0x96267b5e vme_irq_generate +EXPORT_SYMBOL vmlinux 0x9632e7be show_init_ipc_ns +EXPORT_SYMBOL vmlinux 0x964ae0e3 kill_fasync +EXPORT_SYMBOL vmlinux 0x96504303 param_ops_charp +EXPORT_SYMBOL vmlinux 0x96848186 scnprintf +EXPORT_SYMBOL vmlinux 0x9688de8b memstart_addr +EXPORT_SYMBOL vmlinux 0x969b6f7d fman_port_get_device +EXPORT_SYMBOL vmlinux 0x96b29254 strncasecmp +EXPORT_SYMBOL vmlinux 0x96c17136 fb_var_to_videomode +EXPORT_SYMBOL vmlinux 0x96cd2b04 scsi_sense_key_string +EXPORT_SYMBOL vmlinux 0x96dee1fe rproc_elf_load_rsc_table +EXPORT_SYMBOL vmlinux 0x96e11fe8 km_query +EXPORT_SYMBOL vmlinux 0x96e5d30f gen_pool_set_algo +EXPORT_SYMBOL vmlinux 0x96ebd115 find_get_pages_range_tag +EXPORT_SYMBOL vmlinux 0x96f61572 jbd2_journal_force_commit +EXPORT_SYMBOL vmlinux 0x96f6636a fib_notifier_ops_register +EXPORT_SYMBOL vmlinux 0x96f88689 tty_unthrottle +EXPORT_SYMBOL vmlinux 0x96fab350 dim_park_on_top +EXPORT_SYMBOL vmlinux 0x96fd451a mipi_dsi_dcs_soft_reset +EXPORT_SYMBOL vmlinux 0x9703e90c pci_ep_cfs_add_epc_group +EXPORT_SYMBOL vmlinux 0x9713a0bb misc_register +EXPORT_SYMBOL vmlinux 0x97394fa7 dcb_ieee_getapp_mask +EXPORT_SYMBOL vmlinux 0x973fa82e register_acpi_notifier +EXPORT_SYMBOL vmlinux 0x9746eb89 ZSTD_decompressBegin_usingDict +EXPORT_SYMBOL vmlinux 0x975ac9f8 dqget +EXPORT_SYMBOL vmlinux 0x977f511b __mutex_init +EXPORT_SYMBOL vmlinux 0x978e68cf vfs_iter_write +EXPORT_SYMBOL vmlinux 0x979030fa of_phy_find_device +EXPORT_SYMBOL vmlinux 0x97934ecf del_timer_sync +EXPORT_SYMBOL vmlinux 0x97999817 rfkill_set_hw_state +EXPORT_SYMBOL vmlinux 0x97a57333 crc_t10dif_update +EXPORT_SYMBOL vmlinux 0x97adb487 utf8s_to_utf16s +EXPORT_SYMBOL vmlinux 0x97bcd4f8 pcie_bandwidth_available +EXPORT_SYMBOL vmlinux 0x97bdfa60 scsi_dev_info_remove_list +EXPORT_SYMBOL vmlinux 0x97c1dee9 scsi_is_target_device +EXPORT_SYMBOL vmlinux 0x97ca47f3 vme_bus_error_handler +EXPORT_SYMBOL vmlinux 0x97d15e4a memory_cgrp_subsys +EXPORT_SYMBOL vmlinux 0x97ea888a nvm_alloc_dev +EXPORT_SYMBOL vmlinux 0x981b62f9 mdiobus_write +EXPORT_SYMBOL vmlinux 0x981e8504 nf_unregister_queue_handler +EXPORT_SYMBOL vmlinux 0x9829fc11 __kfifo_out_peek_r +EXPORT_SYMBOL vmlinux 0x982a5a06 qdisc_class_hash_grow +EXPORT_SYMBOL vmlinux 0x983437ae security_dentry_init_security +EXPORT_SYMBOL vmlinux 0x9840fe8a kern_path_create +EXPORT_SYMBOL vmlinux 0x987ef8ac netdev_update_features +EXPORT_SYMBOL vmlinux 0x98856bf7 fd_install +EXPORT_SYMBOL vmlinux 0x98874c5c pci_find_bus +EXPORT_SYMBOL vmlinux 0x98a1819a sock_create +EXPORT_SYMBOL vmlinux 0x98aa3638 phy_ethtool_get_link_ksettings +EXPORT_SYMBOL vmlinux 0x98aa9c17 ww_mutex_lock_interruptible +EXPORT_SYMBOL vmlinux 0x98b2ba2d fb_show_logo +EXPORT_SYMBOL vmlinux 0x98c039dc dma_fence_wait_timeout +EXPORT_SYMBOL vmlinux 0x98c18156 sock_set_priority +EXPORT_SYMBOL vmlinux 0x98c8351d __free_pages +EXPORT_SYMBOL vmlinux 0x98c89ade security_xfrm_state_alloc +EXPORT_SYMBOL vmlinux 0x98cf60b3 strlen +EXPORT_SYMBOL vmlinux 0x98d1d056 padata_free +EXPORT_SYMBOL vmlinux 0x98d6d57b md_bitmap_endwrite +EXPORT_SYMBOL vmlinux 0x98e508ef ignore_console_lock_warning +EXPORT_SYMBOL vmlinux 0x98ef90e2 __register_nls +EXPORT_SYMBOL vmlinux 0x98f580bb qman_start_using_portal +EXPORT_SYMBOL vmlinux 0x98f7bd93 ioc_lookup_icq +EXPORT_SYMBOL vmlinux 0x9905d6a5 get_cached_acl_rcu +EXPORT_SYMBOL vmlinux 0x99094fb2 qcom_scm_is_available +EXPORT_SYMBOL vmlinux 0x992f88b4 d_alloc_parallel +EXPORT_SYMBOL vmlinux 0x992f93f9 sync_inode +EXPORT_SYMBOL vmlinux 0x9939eba0 backlight_unregister_notifier +EXPORT_SYMBOL vmlinux 0x99517682 udp_encap_enable +EXPORT_SYMBOL vmlinux 0x9975dc22 acpi_get_handle +EXPORT_SYMBOL vmlinux 0x9976f05b unlock_page +EXPORT_SYMBOL vmlinux 0x9979750b __mod_node_page_state +EXPORT_SYMBOL vmlinux 0x99856735 sunxi_sram_release +EXPORT_SYMBOL vmlinux 0x999e8297 vfree +EXPORT_SYMBOL vmlinux 0x99ab1a96 pci_save_state +EXPORT_SYMBOL vmlinux 0x99af6efb is_nd_btt +EXPORT_SYMBOL vmlinux 0x99c3cd01 skb_store_bits +EXPORT_SYMBOL vmlinux 0x99d472b1 net_dim_get_rx_moderation +EXPORT_SYMBOL vmlinux 0x99da7925 ip_mc_check_igmp +EXPORT_SYMBOL vmlinux 0x99daa9bf try_offline_node +EXPORT_SYMBOL vmlinux 0x99ea6147 of_find_compatible_node +EXPORT_SYMBOL vmlinux 0x99eea922 flow_rule_match_vlan +EXPORT_SYMBOL vmlinux 0x99fc2108 single_open +EXPORT_SYMBOL vmlinux 0x99fe9920 kobject_get_unless_zero +EXPORT_SYMBOL vmlinux 0x9a0c3a18 vme_unregister_error_handler +EXPORT_SYMBOL vmlinux 0x9a19ec50 make_flow_keys_digest +EXPORT_SYMBOL vmlinux 0x9a1dfd65 strpbrk +EXPORT_SYMBOL vmlinux 0x9a1e9022 vme_new_dma_list +EXPORT_SYMBOL vmlinux 0x9a22391e radix_tree_gang_lookup_tag_slot +EXPORT_SYMBOL vmlinux 0x9a336385 blk_post_runtime_suspend +EXPORT_SYMBOL vmlinux 0x9a338a13 security_sctp_sk_clone +EXPORT_SYMBOL vmlinux 0x9a3bc8c5 cdrom_number_of_slots +EXPORT_SYMBOL vmlinux 0x9a583306 netlbl_bitmap_walk +EXPORT_SYMBOL vmlinux 0x9a61e859 skb_orphan_partial +EXPORT_SYMBOL vmlinux 0x9a6b32fd serio_unregister_driver +EXPORT_SYMBOL vmlinux 0x9a73b032 ZSTD_initDStream_usingDDict +EXPORT_SYMBOL vmlinux 0x9a8ec3b3 dev_uc_add_excl +EXPORT_SYMBOL vmlinux 0x9a95c0f7 xfrm_lookup_route +EXPORT_SYMBOL vmlinux 0x9aa6b190 pci_disable_link_state +EXPORT_SYMBOL vmlinux 0x9aa8452c d_instantiate_new +EXPORT_SYMBOL vmlinux 0x9aaeefce sysctl_nf_log_all_netns +EXPORT_SYMBOL vmlinux 0x9ab5de8a msi_desc_to_pci_dev +EXPORT_SYMBOL vmlinux 0x9ace6ea0 mdio_device_reset +EXPORT_SYMBOL vmlinux 0x9add126d netdev_class_remove_file_ns +EXPORT_SYMBOL vmlinux 0x9b03985c __breadahead +EXPORT_SYMBOL vmlinux 0x9b0c109c get_bitmap_from_slot +EXPORT_SYMBOL vmlinux 0x9b10eb5e bd_start_claiming +EXPORT_SYMBOL vmlinux 0x9b128a66 qcom_scm_set_remote_state +EXPORT_SYMBOL vmlinux 0x9b12b881 xfrm_unregister_km +EXPORT_SYMBOL vmlinux 0x9b2560b9 gf128mul_init_4k_bbe +EXPORT_SYMBOL vmlinux 0x9b2d2865 copy_page_from_iter +EXPORT_SYMBOL vmlinux 0x9b33e0d7 unregister_dcbevent_notifier +EXPORT_SYMBOL vmlinux 0x9b3cbe68 pcie_set_mps +EXPORT_SYMBOL vmlinux 0x9b420478 utf8_strncasecmp +EXPORT_SYMBOL vmlinux 0x9b496b21 posix_acl_alloc +EXPORT_SYMBOL vmlinux 0x9b5a6e2c sk_alloc +EXPORT_SYMBOL vmlinux 0x9b5d12bd proc_remove +EXPORT_SYMBOL vmlinux 0x9b6ac475 param_set_bint +EXPORT_SYMBOL vmlinux 0x9b70bc84 dst_alloc +EXPORT_SYMBOL vmlinux 0x9b72478f acpi_unload_parent_table +EXPORT_SYMBOL vmlinux 0x9b77fe4f tty_throttle +EXPORT_SYMBOL vmlinux 0x9b7d0901 tcp_create_openreq_child +EXPORT_SYMBOL vmlinux 0x9b83a044 inet_frags_fini +EXPORT_SYMBOL vmlinux 0x9b83b9a1 sock_no_connect +EXPORT_SYMBOL vmlinux 0x9b880e7d inet6_unregister_icmp_sender +EXPORT_SYMBOL vmlinux 0x9b91d6e7 cdrom_check_events +EXPORT_SYMBOL vmlinux 0x9b93b095 nvdimm_revalidate_disk +EXPORT_SYMBOL vmlinux 0x9bb8bf5c tcp_rcv_state_process +EXPORT_SYMBOL vmlinux 0x9bcb2cb3 ip_sock_set_tos +EXPORT_SYMBOL vmlinux 0x9bce82e0 d_delete +EXPORT_SYMBOL vmlinux 0x9bd3b09e jbd2_journal_check_used_features +EXPORT_SYMBOL vmlinux 0x9bf65fe2 reuseport_detach_sock +EXPORT_SYMBOL vmlinux 0x9c122bcf mempool_create_node +EXPORT_SYMBOL vmlinux 0x9c1e5bf5 queued_spin_lock_slowpath +EXPORT_SYMBOL vmlinux 0x9c39ccf4 tcf_block_put_ext +EXPORT_SYMBOL vmlinux 0x9c75f4bf get_user_pages +EXPORT_SYMBOL vmlinux 0x9c778bd7 get_user_pages_remote +EXPORT_SYMBOL vmlinux 0x9c942adc vprintk_emit +EXPORT_SYMBOL vmlinux 0x9cab34a6 rfkill_set_led_trigger_name +EXPORT_SYMBOL vmlinux 0x9ccf7171 vme_dma_pci_attribute +EXPORT_SYMBOL vmlinux 0x9cd91791 register_sysctl +EXPORT_SYMBOL vmlinux 0x9cdfb3f7 sysctl_fb_tunnels_only_for_init_net +EXPORT_SYMBOL vmlinux 0x9ce4a38a put_watch_queue +EXPORT_SYMBOL vmlinux 0x9ce578d7 skb_coalesce_rx_frag +EXPORT_SYMBOL vmlinux 0x9d05ea2f sock_bind_add +EXPORT_SYMBOL vmlinux 0x9d0d6206 unregister_netdevice_notifier +EXPORT_SYMBOL vmlinux 0x9d0f47fa pcim_iomap_table +EXPORT_SYMBOL vmlinux 0x9d1a5e3a __memcpy +EXPORT_SYMBOL vmlinux 0x9d2e7707 unregister_sysrq_key +EXPORT_SYMBOL vmlinux 0x9d4121ca blk_queue_segment_boundary +EXPORT_SYMBOL vmlinux 0x9d4a73bd register_nexthop_notifier +EXPORT_SYMBOL vmlinux 0x9d5a683c mini_qdisc_pair_swap +EXPORT_SYMBOL vmlinux 0x9d61e994 ucs2_strncmp +EXPORT_SYMBOL vmlinux 0x9d89fb72 elv_rb_find +EXPORT_SYMBOL vmlinux 0x9d92f3ad __wait_on_bit_lock +EXPORT_SYMBOL vmlinux 0x9d97ab2c audit_log_object_context +EXPORT_SYMBOL vmlinux 0x9d9dec09 of_phy_attach +EXPORT_SYMBOL vmlinux 0x9da1e74f inet_addr_type_table +EXPORT_SYMBOL vmlinux 0x9dad6dc9 freeze_super +EXPORT_SYMBOL vmlinux 0x9db69c0e kfree_skb_partial +EXPORT_SYMBOL vmlinux 0x9db70eca phy_queue_state_machine +EXPORT_SYMBOL vmlinux 0x9db8eaa3 mmc_detect_card_removed +EXPORT_SYMBOL vmlinux 0x9dbd7808 sock_release +EXPORT_SYMBOL vmlinux 0x9dbdda7e tcf_em_unregister +EXPORT_SYMBOL vmlinux 0x9dc9a291 fs_param_is_u32 +EXPORT_SYMBOL vmlinux 0x9dd00d10 find_inode_rcu +EXPORT_SYMBOL vmlinux 0x9ddf096d mr_mfc_seq_idx +EXPORT_SYMBOL vmlinux 0x9df21d0e qman_affine_channel +EXPORT_SYMBOL vmlinux 0x9df7010b inet_shutdown +EXPORT_SYMBOL vmlinux 0x9e024cae devm_of_iomap +EXPORT_SYMBOL vmlinux 0x9e0c711d vzalloc_node +EXPORT_SYMBOL vmlinux 0x9e0fa5ae hsiphash_3u32 +EXPORT_SYMBOL vmlinux 0x9e13f6f6 gf128mul_lle +EXPORT_SYMBOL vmlinux 0x9e186981 netdev_name_node_alt_destroy +EXPORT_SYMBOL vmlinux 0x9e237945 tcf_block_get_ext +EXPORT_SYMBOL vmlinux 0x9e23a5bd blk_rq_init +EXPORT_SYMBOL vmlinux 0x9e2737f0 acpi_install_interface_handler +EXPORT_SYMBOL vmlinux 0x9e312f01 dev_set_alias +EXPORT_SYMBOL vmlinux 0x9e4faeef dm_io_client_destroy +EXPORT_SYMBOL vmlinux 0x9e59f064 xp_free +EXPORT_SYMBOL vmlinux 0x9e5e750d node_to_cpumask_map +EXPORT_SYMBOL vmlinux 0x9e61bb05 set_freezable +EXPORT_SYMBOL vmlinux 0x9e7d6bd0 __udelay +EXPORT_SYMBOL vmlinux 0x9e82381c buffer_check_dirty_writeback +EXPORT_SYMBOL vmlinux 0x9e96f268 get_super +EXPORT_SYMBOL vmlinux 0x9e9eab95 devcgroup_check_permission +EXPORT_SYMBOL vmlinux 0x9e9fdd9d memunmap +EXPORT_SYMBOL vmlinux 0x9ea53d7f vsnprintf +EXPORT_SYMBOL vmlinux 0x9eacf8a5 kstrndup +EXPORT_SYMBOL vmlinux 0x9ebebfa8 md_integrity_add_rdev +EXPORT_SYMBOL vmlinux 0x9ec0e639 twl6030_interrupt_unmask +EXPORT_SYMBOL vmlinux 0x9ec6ca96 ktime_get_real_ts64 +EXPORT_SYMBOL vmlinux 0x9ed7c847 brcmstb_get_family_id +EXPORT_SYMBOL vmlinux 0x9ed978de vme_lm_set +EXPORT_SYMBOL vmlinux 0x9edf0848 inet_stream_connect +EXPORT_SYMBOL vmlinux 0x9ef50dd1 put_disk_and_module +EXPORT_SYMBOL vmlinux 0x9eff166e rproc_elf_find_loaded_rsc_table +EXPORT_SYMBOL vmlinux 0x9f08a552 begin_new_exec +EXPORT_SYMBOL vmlinux 0x9f0e7693 flow_block_cb_priv +EXPORT_SYMBOL vmlinux 0x9f0f0482 nd_region_acquire_lane +EXPORT_SYMBOL vmlinux 0x9f0f61c3 security_sock_rcv_skb +EXPORT_SYMBOL vmlinux 0x9f133ca8 vfs_iter_read +EXPORT_SYMBOL vmlinux 0x9f1bbe00 default_qdisc_ops +EXPORT_SYMBOL vmlinux 0x9f23fb8d ip_options_compile +EXPORT_SYMBOL vmlinux 0x9f296424 mpage_writepages +EXPORT_SYMBOL vmlinux 0x9f46ced8 __sw_hweight64 +EXPORT_SYMBOL vmlinux 0x9f49dcc4 __stack_chk_fail +EXPORT_SYMBOL vmlinux 0x9f4ce2d3 __mmc_claim_host +EXPORT_SYMBOL vmlinux 0x9f4f2aa3 acpi_gbl_FADT +EXPORT_SYMBOL vmlinux 0x9f50b770 keyring_restrict +EXPORT_SYMBOL vmlinux 0x9f549461 phy_ethtool_set_link_ksettings +EXPORT_SYMBOL vmlinux 0x9f54ead7 gro_cells_destroy +EXPORT_SYMBOL vmlinux 0x9f65c857 ZSTD_checkCParams +EXPORT_SYMBOL vmlinux 0x9f7d7dbb logic_outsw +EXPORT_SYMBOL vmlinux 0x9f984513 strrchr +EXPORT_SYMBOL vmlinux 0x9fa7184a cancel_delayed_work_sync +EXPORT_SYMBOL vmlinux 0x9fac4cff __ip_queue_xmit +EXPORT_SYMBOL vmlinux 0x9fb1d0ed uuid_is_valid +EXPORT_SYMBOL vmlinux 0x9fbfe02a nvm_submit_io +EXPORT_SYMBOL vmlinux 0x9fcc473c rdmacg_uncharge +EXPORT_SYMBOL vmlinux 0x9fd85231 flow_rule_match_ip +EXPORT_SYMBOL vmlinux 0x9fdecc31 unregister_netdevice_many +EXPORT_SYMBOL vmlinux 0x9fdfc3ea get_tree_single_reconf +EXPORT_SYMBOL vmlinux 0x9fe4135e register_key_type +EXPORT_SYMBOL vmlinux 0x9fe960fd generic_pipe_buf_try_steal +EXPORT_SYMBOL vmlinux 0x9feed7ce timer_reduce +EXPORT_SYMBOL vmlinux 0x9ffa3a75 netdev_max_backlog +EXPORT_SYMBOL vmlinux 0xa006546a sock_pfree +EXPORT_SYMBOL vmlinux 0xa00aca2a dql_completed +EXPORT_SYMBOL vmlinux 0xa012f047 dev_get_iflink +EXPORT_SYMBOL vmlinux 0xa02aa74a __cond_resched_lock +EXPORT_SYMBOL vmlinux 0xa02d5e39 i2c_smbus_read_byte +EXPORT_SYMBOL vmlinux 0xa03f3962 scsi_add_device +EXPORT_SYMBOL vmlinux 0xa0436e98 in6addr_linklocal_allnodes +EXPORT_SYMBOL vmlinux 0xa0569ccc skb_realloc_headroom +EXPORT_SYMBOL vmlinux 0xa057df8f twl_set_regcache_bypass +EXPORT_SYMBOL vmlinux 0xa065ee2e i2c_get_adapter +EXPORT_SYMBOL vmlinux 0xa070b3b5 vmf_insert_mixed_prot +EXPORT_SYMBOL vmlinux 0xa07a37f0 memchr +EXPORT_SYMBOL vmlinux 0xa07ec414 irq_domain_set_info +EXPORT_SYMBOL vmlinux 0xa084749a __bitmap_or +EXPORT_SYMBOL vmlinux 0xa08593e0 inet_csk_reqsk_queue_drop +EXPORT_SYMBOL vmlinux 0xa095e02e generic_check_addressable +EXPORT_SYMBOL vmlinux 0xa09df0d9 dev_uc_unsync +EXPORT_SYMBOL vmlinux 0xa09f68b0 xfrm_unregister_type_offload +EXPORT_SYMBOL vmlinux 0xa0a2b7f4 of_get_next_available_child +EXPORT_SYMBOL vmlinux 0xa0a9eba8 nvm_unregister_tgt_type +EXPORT_SYMBOL vmlinux 0xa0ae1e73 siphash_3u64 +EXPORT_SYMBOL vmlinux 0xa0b04675 vmalloc_32 +EXPORT_SYMBOL vmlinux 0xa0c3849d get_super_exclusive_thawed +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 0xa0fbac79 wake_up_bit +EXPORT_SYMBOL vmlinux 0xa108eb4d sysctl_optmem_max +EXPORT_SYMBOL vmlinux 0xa11b829f tcp_md5_hash_skb_data +EXPORT_SYMBOL vmlinux 0xa11e1124 ata_print_version +EXPORT_SYMBOL vmlinux 0xa11fba8b __brelse +EXPORT_SYMBOL vmlinux 0xa120d33c tty_unregister_ldisc +EXPORT_SYMBOL vmlinux 0xa125f265 fuse_dequeue_forget +EXPORT_SYMBOL vmlinux 0xa134b9fd rawv6_mh_filter_unregister +EXPORT_SYMBOL vmlinux 0xa13e780a gen_replace_estimator +EXPORT_SYMBOL vmlinux 0xa14c7f7c d_prune_aliases +EXPORT_SYMBOL vmlinux 0xa155c071 ZSTD_compressBegin_usingDict +EXPORT_SYMBOL vmlinux 0xa185fdb8 vme_bus_type +EXPORT_SYMBOL vmlinux 0xa1868aa9 security_inode_init_security +EXPORT_SYMBOL vmlinux 0xa1873f75 kset_register +EXPORT_SYMBOL vmlinux 0xa193eb40 __close_fd +EXPORT_SYMBOL vmlinux 0xa1b279f2 blk_mq_complete_request +EXPORT_SYMBOL vmlinux 0xa1ba81cd mmc_request_done +EXPORT_SYMBOL vmlinux 0xa1befedd bdget +EXPORT_SYMBOL vmlinux 0xa1c21a60 send_sig_mceerr +EXPORT_SYMBOL vmlinux 0xa1c76e0a _cond_resched +EXPORT_SYMBOL vmlinux 0xa1eb42f1 vme_slave_request +EXPORT_SYMBOL vmlinux 0xa1f61432 set_security_override +EXPORT_SYMBOL vmlinux 0xa1f9ad38 devm_devfreq_register_notifier +EXPORT_SYMBOL vmlinux 0xa2035ac6 qcom_scm_set_warm_boot_addr +EXPORT_SYMBOL vmlinux 0xa2054ece bio_integrity_prep +EXPORT_SYMBOL vmlinux 0xa2060911 inet_current_timestamp +EXPORT_SYMBOL vmlinux 0xa2326c49 acpi_remove_table_handler +EXPORT_SYMBOL vmlinux 0xa24316b9 blk_mq_rq_cpu +EXPORT_SYMBOL vmlinux 0xa24f23d8 __request_module +EXPORT_SYMBOL vmlinux 0xa25b90ab utf8byte +EXPORT_SYMBOL vmlinux 0xa263892b fscrypt_fname_free_buffer +EXPORT_SYMBOL vmlinux 0xa27a931f scsi_remove_device +EXPORT_SYMBOL vmlinux 0xa28cfcc0 gen_estimator_active +EXPORT_SYMBOL vmlinux 0xa2a6b546 filemap_fdatawrite_range +EXPORT_SYMBOL vmlinux 0xa2a95749 mmc_hw_reset +EXPORT_SYMBOL vmlinux 0xa2b0ced0 device_add_disk +EXPORT_SYMBOL vmlinux 0xa2b7031e d_hash_and_lookup +EXPORT_SYMBOL vmlinux 0xa2bc8082 sock_enable_timestamps +EXPORT_SYMBOL vmlinux 0xa2d65a73 pci_iomap_range +EXPORT_SYMBOL vmlinux 0xa2d9b5ff __dev_direct_xmit +EXPORT_SYMBOL vmlinux 0xa2f83f77 kobject_get +EXPORT_SYMBOL vmlinux 0xa3151cb5 mmc_detect_change +EXPORT_SYMBOL vmlinux 0xa31c13bd devm_clk_get_optional +EXPORT_SYMBOL vmlinux 0xa3299e4b md_bitmap_cond_end_sync +EXPORT_SYMBOL vmlinux 0xa3386361 tc_setup_cb_call +EXPORT_SYMBOL vmlinux 0xa339e6e5 on_each_cpu_cond_mask +EXPORT_SYMBOL vmlinux 0xa34b62e7 scmd_printk +EXPORT_SYMBOL vmlinux 0xa356e04c dma_find_channel +EXPORT_SYMBOL vmlinux 0xa364bdc2 blk_mq_start_stopped_hw_queues +EXPORT_SYMBOL vmlinux 0xa36700d7 mmc_card_is_blockaddr +EXPORT_SYMBOL vmlinux 0xa3739c18 blk_integrity_unregister +EXPORT_SYMBOL vmlinux 0xa3a47987 init_special_inode +EXPORT_SYMBOL vmlinux 0xa3ad6273 cros_ec_cmd_xfer_status +EXPORT_SYMBOL vmlinux 0xa3f4e039 __bio_clone_fast +EXPORT_SYMBOL vmlinux 0xa3fea172 sha224_final +EXPORT_SYMBOL vmlinux 0xa3ffdde4 tty_do_resize +EXPORT_SYMBOL vmlinux 0xa4064c30 ipv6_sock_mc_join +EXPORT_SYMBOL vmlinux 0xa40ff01b acpi_dbg_layer +EXPORT_SYMBOL vmlinux 0xa42a0518 tty_port_block_til_ready +EXPORT_SYMBOL vmlinux 0xa42fbc76 xfrm4_protocol_register +EXPORT_SYMBOL vmlinux 0xa4338c71 generic_fillattr +EXPORT_SYMBOL vmlinux 0xa433ac88 free_task +EXPORT_SYMBOL vmlinux 0xa44da013 rproc_mem_entry_init +EXPORT_SYMBOL vmlinux 0xa44fa98e flow_block_cb_setup_simple +EXPORT_SYMBOL vmlinux 0xa4711e69 current_in_userns +EXPORT_SYMBOL vmlinux 0xa47e5987 security_path_rename +EXPORT_SYMBOL vmlinux 0xa47ec74d rproc_add +EXPORT_SYMBOL vmlinux 0xa4832d89 sock_no_sendmsg +EXPORT_SYMBOL vmlinux 0xa4a6ab0c vmf_insert_mixed_mkwrite +EXPORT_SYMBOL vmlinux 0xa4c0be66 seq_release_private +EXPORT_SYMBOL vmlinux 0xa4c48a01 sk_stream_wait_close +EXPORT_SYMBOL vmlinux 0xa4c8127c ZSTD_maxCLevel +EXPORT_SYMBOL vmlinux 0xa4cf4008 tcp_get_cookie_sock +EXPORT_SYMBOL vmlinux 0xa4eefd7c param_set_bool +EXPORT_SYMBOL vmlinux 0xa4f27174 netdev_emerg +EXPORT_SYMBOL vmlinux 0xa4fca045 qcom_scm_ocmem_lock +EXPORT_SYMBOL vmlinux 0xa5056338 __hsiphash_aligned +EXPORT_SYMBOL vmlinux 0xa51d3c7e gnet_stats_start_copy_compat +EXPORT_SYMBOL vmlinux 0xa528eba5 __cancel_dirty_page +EXPORT_SYMBOL vmlinux 0xa52bd5fe pmem_sector_size +EXPORT_SYMBOL vmlinux 0xa52bedf6 xenbus_dev_request_and_reply +EXPORT_SYMBOL vmlinux 0xa52cb81e inode_nohighmem +EXPORT_SYMBOL vmlinux 0xa53b3ec7 simple_nosetlease +EXPORT_SYMBOL vmlinux 0xa54e4366 cleancache_register_ops +EXPORT_SYMBOL vmlinux 0xa5526619 rb_insert_color +EXPORT_SYMBOL vmlinux 0xa566d954 d_move +EXPORT_SYMBOL vmlinux 0xa56bada8 param_get_ulong +EXPORT_SYMBOL vmlinux 0xa587ddd8 mmc_cqe_request_done +EXPORT_SYMBOL vmlinux 0xa5976e4f dev_base_lock +EXPORT_SYMBOL vmlinux 0xa5ac3e33 ZSTD_DCtxWorkspaceBound +EXPORT_SYMBOL vmlinux 0xa5d8e64c compat_ipv6_setsockopt +EXPORT_SYMBOL vmlinux 0xa5f55179 cdrom_release +EXPORT_SYMBOL vmlinux 0xa5f6b45a twl6040_reg_read +EXPORT_SYMBOL vmlinux 0xa5f7cf37 __cpu_possible_mask +EXPORT_SYMBOL vmlinux 0xa6001148 fman_get_bmi_max_fifo_size +EXPORT_SYMBOL vmlinux 0xa604072b mmc_unregister_driver +EXPORT_SYMBOL vmlinux 0xa60661be make_bad_inode +EXPORT_SYMBOL vmlinux 0xa61ced89 qdisc_put_rtab +EXPORT_SYMBOL vmlinux 0xa625788e put_ipc_ns +EXPORT_SYMBOL vmlinux 0xa6257a2f complete +EXPORT_SYMBOL vmlinux 0xa628d011 dev_getfirstbyhwtype +EXPORT_SYMBOL vmlinux 0xa6666b8c skb_copy_datagram_iter +EXPORT_SYMBOL vmlinux 0xa66bdda7 tcp_req_err +EXPORT_SYMBOL vmlinux 0xa681fe88 generate_random_uuid +EXPORT_SYMBOL vmlinux 0xa6841fb6 tun_ptr_to_xdp +EXPORT_SYMBOL vmlinux 0xa694d542 cros_ec_cmd_xfer +EXPORT_SYMBOL vmlinux 0xa6a282ee md_unregister_thread +EXPORT_SYMBOL vmlinux 0xa6c18583 locks_copy_conflock +EXPORT_SYMBOL vmlinux 0xa6c4a019 hash_and_copy_to_iter +EXPORT_SYMBOL vmlinux 0xa6c5148f inet6_register_protosw +EXPORT_SYMBOL vmlinux 0xa6e1393f acpi_bus_get_device +EXPORT_SYMBOL vmlinux 0xa6e14947 t10_pi_type1_crc +EXPORT_SYMBOL vmlinux 0xa6f8ccb8 of_find_mipi_dsi_device_by_node +EXPORT_SYMBOL vmlinux 0xa7061141 to_nd_pfn +EXPORT_SYMBOL vmlinux 0xa70bc169 devm_rproc_alloc +EXPORT_SYMBOL vmlinux 0xa70bc96d qcom_scm_restore_sec_cfg_available +EXPORT_SYMBOL vmlinux 0xa718de27 sg_miter_stop +EXPORT_SYMBOL vmlinux 0xa71acc92 fman_port_config +EXPORT_SYMBOL vmlinux 0xa7336764 vlan_dev_real_dev +EXPORT_SYMBOL vmlinux 0xa74c9877 refcount_dec_and_rtnl_lock +EXPORT_SYMBOL vmlinux 0xa753ba81 thermal_zone_device_critical +EXPORT_SYMBOL vmlinux 0xa75900cc filemap_write_and_wait_range +EXPORT_SYMBOL vmlinux 0xa7729a6a iterate_dir +EXPORT_SYMBOL vmlinux 0xa77bfd29 register_inet6addr_validator_notifier +EXPORT_SYMBOL vmlinux 0xa7830e0d xp_alloc +EXPORT_SYMBOL vmlinux 0xa7872eff xfrm_spd_getinfo +EXPORT_SYMBOL vmlinux 0xa78e9ac5 vfs_get_tree +EXPORT_SYMBOL vmlinux 0xa7a34969 __dynamic_netdev_dbg +EXPORT_SYMBOL vmlinux 0xa7d5f92e ida_destroy +EXPORT_SYMBOL vmlinux 0xa7e38f12 flow_keys_basic_dissector +EXPORT_SYMBOL vmlinux 0xa7eedcc4 call_usermodehelper +EXPORT_SYMBOL vmlinux 0xa80b9834 fb_find_mode +EXPORT_SYMBOL vmlinux 0xa813c83d mmc_gpio_set_cd_wake +EXPORT_SYMBOL vmlinux 0xa8181adf proc_dointvec +EXPORT_SYMBOL vmlinux 0xa829d962 netlink_ack +EXPORT_SYMBOL vmlinux 0xa8306b78 scaled_ppm_to_ppb +EXPORT_SYMBOL vmlinux 0xa83558a9 udp_set_csum +EXPORT_SYMBOL vmlinux 0xa838cb93 zpool_register_driver +EXPORT_SYMBOL vmlinux 0xa841ce5e pcibus_to_node +EXPORT_SYMBOL vmlinux 0xa843805a get_unused_fd_flags +EXPORT_SYMBOL vmlinux 0xa847c075 alloc_fddidev +EXPORT_SYMBOL vmlinux 0xa84ce9e0 crypto_aes_inv_sbox +EXPORT_SYMBOL vmlinux 0xa84ff28f pci_bus_read_config_dword +EXPORT_SYMBOL vmlinux 0xa853396b xa_extract +EXPORT_SYMBOL vmlinux 0xa854c07f devm_request_resource +EXPORT_SYMBOL vmlinux 0xa8596139 nosteal_pipe_buf_ops +EXPORT_SYMBOL vmlinux 0xa85a3e6d xa_load +EXPORT_SYMBOL vmlinux 0xa85f9565 block_is_partially_uptodate +EXPORT_SYMBOL vmlinux 0xa863cb7a capable_wrt_inode_uidgid +EXPORT_SYMBOL vmlinux 0xa8666150 from_kgid_munged +EXPORT_SYMBOL vmlinux 0xa8694ecd kblockd_schedule_work +EXPORT_SYMBOL vmlinux 0xa86e8fcf dquot_quota_on_mount +EXPORT_SYMBOL vmlinux 0xa8822b1a phy_drivers_unregister +EXPORT_SYMBOL vmlinux 0xa886af97 textsearch_find_continuous +EXPORT_SYMBOL vmlinux 0xa8896735 arp_xmit +EXPORT_SYMBOL vmlinux 0xa897e3e7 mempool_free +EXPORT_SYMBOL vmlinux 0xa89bb8d3 tty_driver_kref_put +EXPORT_SYMBOL vmlinux 0xa8a736f7 poll_freewait +EXPORT_SYMBOL vmlinux 0xa8a8110c kernel_neon_end +EXPORT_SYMBOL vmlinux 0xa8caa845 clk_bulk_put_all +EXPORT_SYMBOL vmlinux 0xa8da7256 noop_fsync +EXPORT_SYMBOL vmlinux 0xa8e6933a qdf2400_e44_present +EXPORT_SYMBOL vmlinux 0xa8f6c843 ip_frag_ecn_table +EXPORT_SYMBOL vmlinux 0xa90ca0de flush_rcu_work +EXPORT_SYMBOL vmlinux 0xa916b694 strnlen +EXPORT_SYMBOL vmlinux 0xa9223ef1 kthread_create_on_node +EXPORT_SYMBOL vmlinux 0xa934bc4b flow_get_u32_dst +EXPORT_SYMBOL vmlinux 0xa934dc74 inet_frag_queue_insert +EXPORT_SYMBOL vmlinux 0xa93a9872 mii_check_gmii_support +EXPORT_SYMBOL vmlinux 0xa9605daa acpi_device_hid +EXPORT_SYMBOL vmlinux 0xa965ca81 reciprocal_value +EXPORT_SYMBOL vmlinux 0xa96e1584 devm_extcon_unregister_notifier_all +EXPORT_SYMBOL vmlinux 0xa97463c9 __siphash_aligned +EXPORT_SYMBOL vmlinux 0xa988a75e devm_ioport_map +EXPORT_SYMBOL vmlinux 0xa98fd0aa init_task +EXPORT_SYMBOL vmlinux 0xa99b39c2 prandom_bytes +EXPORT_SYMBOL vmlinux 0xa99b3c09 sock_no_bind +EXPORT_SYMBOL vmlinux 0xa9b5127a sk_filter_trim_cap +EXPORT_SYMBOL vmlinux 0xa9bda01a blk_queue_max_segments +EXPORT_SYMBOL vmlinux 0xa9e9ecac netif_receive_skb_core +EXPORT_SYMBOL vmlinux 0xaa00fdc0 ec_transaction +EXPORT_SYMBOL vmlinux 0xaa112bf6 fsl_ifc_ctrl_dev +EXPORT_SYMBOL vmlinux 0xaa162a60 skb_dump +EXPORT_SYMBOL vmlinux 0xaa1d4dbd mdio_device_free +EXPORT_SYMBOL vmlinux 0xaa1f701c device_get_mac_address +EXPORT_SYMBOL vmlinux 0xaa2929d6 mii_link_ok +EXPORT_SYMBOL vmlinux 0xaa297d7f ab3100_event_unregister +EXPORT_SYMBOL vmlinux 0xaa341905 acpi_bios_exception +EXPORT_SYMBOL vmlinux 0xaa6f23ad rfkill_get_led_trigger_name +EXPORT_SYMBOL vmlinux 0xaa892454 pci_pme_active +EXPORT_SYMBOL vmlinux 0xaaa4b9bc hchacha_block_generic +EXPORT_SYMBOL vmlinux 0xaac7aaa2 security_sctp_assoc_request +EXPORT_SYMBOL vmlinux 0xaad0ae78 __bitmap_shift_right +EXPORT_SYMBOL vmlinux 0xaad473d5 input_reset_device +EXPORT_SYMBOL vmlinux 0xaad6d92f rfkill_init_sw_state +EXPORT_SYMBOL vmlinux 0xaad89e9d pci_read_config_byte +EXPORT_SYMBOL vmlinux 0xaad8c7d6 default_wake_function +EXPORT_SYMBOL vmlinux 0xaae8ab0e acpi_bus_power_manageable +EXPORT_SYMBOL vmlinux 0xaafdc258 strcasecmp +EXPORT_SYMBOL vmlinux 0xab21a80f of_node_get +EXPORT_SYMBOL vmlinux 0xab22cdf1 splice_direct_to_actor +EXPORT_SYMBOL vmlinux 0xab22f3c4 generic_fadvise +EXPORT_SYMBOL vmlinux 0xab3697e4 irq_poll_init +EXPORT_SYMBOL vmlinux 0xab3b75ea vme_dma_pattern_attribute +EXPORT_SYMBOL vmlinux 0xab5a6117 fman_set_mac_active_pause +EXPORT_SYMBOL vmlinux 0xab600421 probe_irq_off +EXPORT_SYMBOL vmlinux 0xab63baa5 unregister_inetaddr_validator_notifier +EXPORT_SYMBOL vmlinux 0xab641d40 dquot_acquire +EXPORT_SYMBOL vmlinux 0xab67a0ac dql_init +EXPORT_SYMBOL vmlinux 0xab735372 ipmi_dmi_get_slave_addr +EXPORT_SYMBOL vmlinux 0xab781570 fb_get_options +EXPORT_SYMBOL vmlinux 0xab8d3625 get_tree_bdev +EXPORT_SYMBOL vmlinux 0xaba81805 xps_rxqs_needed +EXPORT_SYMBOL vmlinux 0xaba9cac5 xfrm_policy_destroy +EXPORT_SYMBOL vmlinux 0xabaf10f7 tcf_classify +EXPORT_SYMBOL vmlinux 0xabc43277 twl6040_get_pll +EXPORT_SYMBOL vmlinux 0xabc81dfa d_exact_alias +EXPORT_SYMBOL vmlinux 0xabcde1da skb_copy_datagram_from_iter +EXPORT_SYMBOL vmlinux 0xabde6005 blk_queue_logical_block_size +EXPORT_SYMBOL vmlinux 0xabe78040 reuseport_select_sock +EXPORT_SYMBOL vmlinux 0xabf32f29 utf16s_to_utf8s +EXPORT_SYMBOL vmlinux 0xabfd2f1a pnp_register_driver +EXPORT_SYMBOL vmlinux 0xac108487 fb_pan_display +EXPORT_SYMBOL vmlinux 0xac1a55be unregister_reboot_notifier +EXPORT_SYMBOL vmlinux 0xac2ab104 mii_check_link +EXPORT_SYMBOL vmlinux 0xac3201b0 udp_flow_hashrnd +EXPORT_SYMBOL vmlinux 0xac3f6616 find_lock_entry +EXPORT_SYMBOL vmlinux 0xac475243 refresh_frequency_limits +EXPORT_SYMBOL vmlinux 0xac4cee36 netif_stacked_transfer_operstate +EXPORT_SYMBOL vmlinux 0xac4d2120 blk_cleanup_queue +EXPORT_SYMBOL vmlinux 0xac537ac2 percpu_counter_destroy +EXPORT_SYMBOL vmlinux 0xac5fa433 gnet_stats_start_copy +EXPORT_SYMBOL vmlinux 0xac5fcec0 in4_pton +EXPORT_SYMBOL vmlinux 0xac679f47 phy_aneg_done +EXPORT_SYMBOL vmlinux 0xac8597d5 mb_cache_entry_get +EXPORT_SYMBOL vmlinux 0xac86a288 bioset_exit +EXPORT_SYMBOL vmlinux 0xac94e86b vsprintf +EXPORT_SYMBOL vmlinux 0xaca69d5e vm_insert_page +EXPORT_SYMBOL vmlinux 0xacaa4c72 dma_fence_match_context +EXPORT_SYMBOL vmlinux 0xacab29b7 seq_hlist_start_percpu +EXPORT_SYMBOL vmlinux 0xacb6e34d rproc_put +EXPORT_SYMBOL vmlinux 0xacc1ff0d qman_volatile_dequeue +EXPORT_SYMBOL vmlinux 0xacd3e7b4 pci_pme_capable +EXPORT_SYMBOL vmlinux 0xacd81eb3 jbd2_inode_cache +EXPORT_SYMBOL vmlinux 0xace92744 compat_ip_getsockopt +EXPORT_SYMBOL vmlinux 0xacf4c4e0 dquot_set_dqinfo +EXPORT_SYMBOL vmlinux 0xacf4d843 match_strdup +EXPORT_SYMBOL vmlinux 0xacf649bf audit_log_task_info +EXPORT_SYMBOL vmlinux 0xacf9f07c fifo_create_dflt +EXPORT_SYMBOL vmlinux 0xacfea9bf configfs_unregister_group +EXPORT_SYMBOL vmlinux 0xad0413d4 match_hex +EXPORT_SYMBOL vmlinux 0xad3ea04c qman_p_irqsource_remove +EXPORT_SYMBOL vmlinux 0xad589adc ptp_find_pin_unlocked +EXPORT_SYMBOL vmlinux 0xad59c787 follow_pte_pmd +EXPORT_SYMBOL vmlinux 0xad682b8f xudma_rchanrt_write +EXPORT_SYMBOL vmlinux 0xad6ba40e radix_tree_tag_get +EXPORT_SYMBOL vmlinux 0xad728b4a devm_pci_remap_cfg_resource +EXPORT_SYMBOL vmlinux 0xad73041f autoremove_wake_function +EXPORT_SYMBOL vmlinux 0xad84bef8 dm_table_event +EXPORT_SYMBOL vmlinux 0xad9901ae bit_waitqueue +EXPORT_SYMBOL vmlinux 0xad995dac netdev_stats_to_stats64 +EXPORT_SYMBOL vmlinux 0xada31e57 gen_pool_dma_alloc_align +EXPORT_SYMBOL vmlinux 0xadafd7ba tty_check_change +EXPORT_SYMBOL vmlinux 0xadb95014 param_get_ullong +EXPORT_SYMBOL vmlinux 0xadbeed61 mipi_dsi_packet_format_is_long +EXPORT_SYMBOL vmlinux 0xadcba50b ZSTD_findFrameCompressedSize +EXPORT_SYMBOL vmlinux 0xadcdf4d8 twl6040_get_sysclk +EXPORT_SYMBOL vmlinux 0xadd139d4 rfs_needed +EXPORT_SYMBOL vmlinux 0xadd9f454 skb_split +EXPORT_SYMBOL vmlinux 0xade72c09 seq_put_decimal_ull +EXPORT_SYMBOL vmlinux 0xadf84f20 crypto_sha512_finup +EXPORT_SYMBOL vmlinux 0xadfb41e1 __sk_dst_check +EXPORT_SYMBOL vmlinux 0xadfdfcef __bitmap_andnot +EXPORT_SYMBOL vmlinux 0xae04012c __vmalloc +EXPORT_SYMBOL vmlinux 0xae1cd7a1 eth_type_trans +EXPORT_SYMBOL vmlinux 0xae305b9a __inc_node_page_state +EXPORT_SYMBOL vmlinux 0xae316c11 icmpv6_err_convert +EXPORT_SYMBOL vmlinux 0xae33c403 xudma_navss_psil_unpair +EXPORT_SYMBOL vmlinux 0xae458b93 sock_no_sendmsg_locked +EXPORT_SYMBOL vmlinux 0xae45e9ec dquot_release +EXPORT_SYMBOL vmlinux 0xae4ae305 genl_unregister_family +EXPORT_SYMBOL vmlinux 0xae56a455 tcf_block_netif_keep_dst +EXPORT_SYMBOL vmlinux 0xae575c36 mdiobus_setup_mdiodev_from_board_info +EXPORT_SYMBOL vmlinux 0xae58b11b flow_indr_dev_register +EXPORT_SYMBOL vmlinux 0xae5a04bb acpi_evaluate_dsm +EXPORT_SYMBOL vmlinux 0xae6c17ac open_exec +EXPORT_SYMBOL vmlinux 0xae708a41 of_device_alloc +EXPORT_SYMBOL vmlinux 0xae742bb5 qman_enqueue +EXPORT_SYMBOL vmlinux 0xae7e3a35 mutex_trylock_recursive +EXPORT_SYMBOL vmlinux 0xae806b41 d_add_ci +EXPORT_SYMBOL vmlinux 0xaea09603 scsi_cmd_blk_ioctl +EXPORT_SYMBOL vmlinux 0xaea7e007 amba_find_device +EXPORT_SYMBOL vmlinux 0xaeac049a generate_random_guid +EXPORT_SYMBOL vmlinux 0xaeb60f0a blk_rq_map_kern +EXPORT_SYMBOL vmlinux 0xaebd12f0 acpi_get_name +EXPORT_SYMBOL vmlinux 0xaec60722 abort_creds +EXPORT_SYMBOL vmlinux 0xaed8c3b8 tc_setup_flow_action +EXPORT_SYMBOL vmlinux 0xaf1f61f7 twl6040_set_bits +EXPORT_SYMBOL vmlinux 0xaf2ae4f6 pci_request_region +EXPORT_SYMBOL vmlinux 0xaf2b9a4b __pskb_copy_fclone +EXPORT_SYMBOL vmlinux 0xaf335330 sock_common_getsockopt +EXPORT_SYMBOL vmlinux 0xaf336af2 rproc_coredump_set_elf_info +EXPORT_SYMBOL vmlinux 0xaf3dd7dc scsi_logging_level +EXPORT_SYMBOL vmlinux 0xaf507de1 __arch_copy_from_user +EXPORT_SYMBOL vmlinux 0xaf561f7a input_set_capability +EXPORT_SYMBOL vmlinux 0xaf56600a arm64_use_ng_mappings +EXPORT_SYMBOL vmlinux 0xaf5fed37 node_data +EXPORT_SYMBOL vmlinux 0xaf8dac5b add_random_ready_callback +EXPORT_SYMBOL vmlinux 0xaf98a010 blk_mq_queue_stopped +EXPORT_SYMBOL vmlinux 0xafb91e5c devm_extcon_unregister_notifier +EXPORT_SYMBOL vmlinux 0xafc45184 acpi_dev_hid_uid_match +EXPORT_SYMBOL vmlinux 0xafcb11cf qdisc_watchdog_init_clockid +EXPORT_SYMBOL vmlinux 0xaff48379 page_pool_create +EXPORT_SYMBOL vmlinux 0xaff6e998 tty_insert_flip_string_fixed_flag +EXPORT_SYMBOL vmlinux 0xb01bebf9 xfrm_get_acqseq +EXPORT_SYMBOL vmlinux 0xb030f987 input_inject_event +EXPORT_SYMBOL vmlinux 0xb03b3d52 of_mdio_find_bus +EXPORT_SYMBOL vmlinux 0xb05fc310 sysctl_rmem_max +EXPORT_SYMBOL vmlinux 0xb061a98a mutex_lock_killable +EXPORT_SYMBOL vmlinux 0xb0678185 dma_set_mask +EXPORT_SYMBOL vmlinux 0xb07f0a41 rproc_get_by_child +EXPORT_SYMBOL vmlinux 0xb0916891 mipi_dsi_dcs_set_page_address +EXPORT_SYMBOL vmlinux 0xb099cd5e rpmh_invalidate +EXPORT_SYMBOL vmlinux 0xb0a0da0c rational_best_approximation +EXPORT_SYMBOL vmlinux 0xb0a6cd14 tty_chars_in_buffer +EXPORT_SYMBOL vmlinux 0xb0a9ab01 zap_page_range +EXPORT_SYMBOL vmlinux 0xb0aed408 ZSTD_compressStream +EXPORT_SYMBOL vmlinux 0xb0c582dc netdev_err +EXPORT_SYMBOL vmlinux 0xb0c5e247 lockref_put_return +EXPORT_SYMBOL vmlinux 0xb0c84bf9 backlight_device_get_by_type +EXPORT_SYMBOL vmlinux 0xb0e10781 get_option +EXPORT_SYMBOL vmlinux 0xb0edefa0 nf_log_unset +EXPORT_SYMBOL vmlinux 0xb0f33ba3 path_nosuid +EXPORT_SYMBOL vmlinux 0xb0f389ee utf8_normalize +EXPORT_SYMBOL vmlinux 0xb10e7df4 __kfifo_dma_in_prepare +EXPORT_SYMBOL vmlinux 0xb121390a probe_irq_on +EXPORT_SYMBOL vmlinux 0xb1241744 inet6_add_offload +EXPORT_SYMBOL vmlinux 0xb12cbacb fb_unregister_client +EXPORT_SYMBOL vmlinux 0xb14ab1ef hdmi_audio_infoframe_init +EXPORT_SYMBOL vmlinux 0xb14fc46a find_next_clump8 +EXPORT_SYMBOL vmlinux 0xb1536a7c gnet_stats_copy_rate_est +EXPORT_SYMBOL vmlinux 0xb1552c35 tso_build_data +EXPORT_SYMBOL vmlinux 0xb15b64e6 shrink_dcache_sb +EXPORT_SYMBOL vmlinux 0xb16900ad cmdline_parts_parse +EXPORT_SYMBOL vmlinux 0xb18b67bf ip6_dst_alloc +EXPORT_SYMBOL vmlinux 0xb1a5ab8c on_each_cpu_cond +EXPORT_SYMBOL vmlinux 0xb1baddc6 pci_bus_read_dev_vendor_id +EXPORT_SYMBOL vmlinux 0xb1c3a01a oops_in_progress +EXPORT_SYMBOL vmlinux 0xb1d3c75d filemap_fdatawait_range +EXPORT_SYMBOL vmlinux 0xb1db9a69 fsl_ifc_find +EXPORT_SYMBOL vmlinux 0xb1dda185 fb_set_cmap +EXPORT_SYMBOL vmlinux 0xb1ddf995 jiffies_64_to_clock_t +EXPORT_SYMBOL vmlinux 0xb1e12d81 krealloc +EXPORT_SYMBOL vmlinux 0xb1ed48b9 uart_update_timeout +EXPORT_SYMBOL vmlinux 0xb20e3832 devm_ioremap +EXPORT_SYMBOL vmlinux 0xb222f30b security_path_mkdir +EXPORT_SYMBOL vmlinux 0xb22b3d6c simple_rename +EXPORT_SYMBOL vmlinux 0xb22cac2a simple_link +EXPORT_SYMBOL vmlinux 0xb22e16d5 radix_tree_maybe_preload +EXPORT_SYMBOL vmlinux 0xb23af198 bfifo_qdisc_ops +EXPORT_SYMBOL vmlinux 0xb2586fae serio_unregister_child_port +EXPORT_SYMBOL vmlinux 0xb272549a neigh_parms_release +EXPORT_SYMBOL vmlinux 0xb2798552 iov_iter_advance +EXPORT_SYMBOL vmlinux 0xb280ceef uart_add_one_port +EXPORT_SYMBOL vmlinux 0xb2935f8b get_task_exe_file +EXPORT_SYMBOL vmlinux 0xb29bea4d file_open_root +EXPORT_SYMBOL vmlinux 0xb2bcb088 acpi_current_gpe_count +EXPORT_SYMBOL vmlinux 0xb2c29eba pcie_set_readrq +EXPORT_SYMBOL vmlinux 0xb2c717ed pci_back_from_sleep +EXPORT_SYMBOL vmlinux 0xb2d0f5d4 seq_lseek +EXPORT_SYMBOL vmlinux 0xb2d3acda mr_vif_seq_idx +EXPORT_SYMBOL vmlinux 0xb2db667d sync_blockdev +EXPORT_SYMBOL vmlinux 0xb2ead97c kimage_vaddr +EXPORT_SYMBOL vmlinux 0xb2eeee67 alloc_buffer_head +EXPORT_SYMBOL vmlinux 0xb2f35c6a xxh64 +EXPORT_SYMBOL vmlinux 0xb2fcb56d queue_delayed_work_on +EXPORT_SYMBOL vmlinux 0xb2ffb3f4 sock_no_sendpage_locked +EXPORT_SYMBOL vmlinux 0xb306e0f0 inet_getname +EXPORT_SYMBOL vmlinux 0xb308c97d wait_woken +EXPORT_SYMBOL vmlinux 0xb30b9822 vme_master_set +EXPORT_SYMBOL vmlinux 0xb320cc0e sg_init_one +EXPORT_SYMBOL vmlinux 0xb32728bb qcom_scm_iommu_secure_ptbl_init +EXPORT_SYMBOL vmlinux 0xb328549d __nla_reserve_nohdr +EXPORT_SYMBOL vmlinux 0xb347a46e seg6_hmac_net_init +EXPORT_SYMBOL vmlinux 0xb34bbfc6 neigh_for_each +EXPORT_SYMBOL vmlinux 0xb357499e dm_get_device +EXPORT_SYMBOL vmlinux 0xb36742ea vga_tryget +EXPORT_SYMBOL vmlinux 0xb3687850 out_of_line_wait_on_bit_lock +EXPORT_SYMBOL vmlinux 0xb384801f cad_pid +EXPORT_SYMBOL vmlinux 0xb3904e35 nd_device_notify +EXPORT_SYMBOL vmlinux 0xb3915543 bio_add_pc_page +EXPORT_SYMBOL vmlinux 0xb39c7fd3 vme_dma_request +EXPORT_SYMBOL vmlinux 0xb39eb569 blk_get_queue +EXPORT_SYMBOL vmlinux 0xb3b1dbb4 kthread_destroy_worker +EXPORT_SYMBOL vmlinux 0xb3b237a1 pcie_get_speed_cap +EXPORT_SYMBOL vmlinux 0xb3bd68cc security_secmark_relabel_packet +EXPORT_SYMBOL vmlinux 0xb3c7172b pci_get_subsys +EXPORT_SYMBOL vmlinux 0xb3c82258 follow_down_one +EXPORT_SYMBOL vmlinux 0xb3c849d0 scsi_host_put +EXPORT_SYMBOL vmlinux 0xb3cf21f0 uart_match_port +EXPORT_SYMBOL vmlinux 0xb3d2c76d scsi_hostbyte_string +EXPORT_SYMBOL vmlinux 0xb3eb7ca4 lookup_one_len_unlocked +EXPORT_SYMBOL vmlinux 0xb3f1a9ca dev_mc_sync +EXPORT_SYMBOL vmlinux 0xb3f548ad kmemdup_nul +EXPORT_SYMBOL vmlinux 0xb3f7646e kthread_should_stop +EXPORT_SYMBOL vmlinux 0xb4037076 __skb_recv_udp +EXPORT_SYMBOL vmlinux 0xb4043948 acpi_execute_simple_method +EXPORT_SYMBOL vmlinux 0xb417f082 kstrtos8_from_user +EXPORT_SYMBOL vmlinux 0xb423dba1 console_blanked +EXPORT_SYMBOL vmlinux 0xb4577003 acpi_dev_present +EXPORT_SYMBOL vmlinux 0xb45b7fb1 pci_wake_from_d3 +EXPORT_SYMBOL vmlinux 0xb464a1f7 vme_register_driver +EXPORT_SYMBOL vmlinux 0xb46c00a5 clear_nlink +EXPORT_SYMBOL vmlinux 0xb48d4d22 security_sb_eat_lsm_opts +EXPORT_SYMBOL vmlinux 0xb4985beb ZSTD_resetCStream +EXPORT_SYMBOL vmlinux 0xb4ace814 qdisc_put +EXPORT_SYMBOL vmlinux 0xb4dc7a65 of_device_is_compatible +EXPORT_SYMBOL vmlinux 0xb4f13d2a abort +EXPORT_SYMBOL vmlinux 0xb5180408 nf_log_register +EXPORT_SYMBOL vmlinux 0xb518f390 mipi_dsi_dcs_set_display_on +EXPORT_SYMBOL vmlinux 0xb52115be unregister_key_type +EXPORT_SYMBOL vmlinux 0xb529ded0 netpoll_parse_options +EXPORT_SYMBOL vmlinux 0xb52a0000 __lock_buffer +EXPORT_SYMBOL vmlinux 0xb52a33bb vme_register_bridge +EXPORT_SYMBOL vmlinux 0xb52df3f5 __sk_mem_schedule +EXPORT_SYMBOL vmlinux 0xb535b4c8 jbd2_complete_transaction +EXPORT_SYMBOL vmlinux 0xb53f2810 tcp_sockets_allocated +EXPORT_SYMBOL vmlinux 0xb54625d7 bio_copy_data +EXPORT_SYMBOL vmlinux 0xb54a81ff skb_prepare_seq_read +EXPORT_SYMBOL vmlinux 0xb54ffe2e posix_acl_chmod +EXPORT_SYMBOL vmlinux 0xb5539e53 xp_set_rxq_info +EXPORT_SYMBOL vmlinux 0xb5613edb config_group_find_item +EXPORT_SYMBOL vmlinux 0xb5626474 pci_irq_vector +EXPORT_SYMBOL vmlinux 0xb56ee862 kill_block_super +EXPORT_SYMBOL vmlinux 0xb570066c xfrm6_protocol_deregister +EXPORT_SYMBOL vmlinux 0xb5715cf0 __tty_insert_flip_char +EXPORT_SYMBOL vmlinux 0xb57343c2 frontswap_shrink +EXPORT_SYMBOL vmlinux 0xb5750394 flow_rule_match_enc_ports +EXPORT_SYMBOL vmlinux 0xb57f1e27 fman_port_disable +EXPORT_SYMBOL vmlinux 0xb5846c92 tso_count_descs +EXPORT_SYMBOL vmlinux 0xb587b7fc blk_set_runtime_active +EXPORT_SYMBOL vmlinux 0xb58aeaab kernel_cpustat +EXPORT_SYMBOL vmlinux 0xb58f99e8 mmc_retune_pause +EXPORT_SYMBOL vmlinux 0xb5a459dc unregister_blkdev +EXPORT_SYMBOL vmlinux 0xb5a9d9b9 rtnl_kfree_skbs +EXPORT_SYMBOL vmlinux 0xb5aa7165 dma_pool_destroy +EXPORT_SYMBOL vmlinux 0xb5ac05a5 nf_register_queue_handler +EXPORT_SYMBOL vmlinux 0xb5b6881c d_genocide +EXPORT_SYMBOL vmlinux 0xb5bc691b file_ns_capable +EXPORT_SYMBOL vmlinux 0xb5bf236e netif_rx_ni +EXPORT_SYMBOL vmlinux 0xb5c2adca __page_cache_alloc +EXPORT_SYMBOL vmlinux 0xb5c74e88 netdev_alert +EXPORT_SYMBOL vmlinux 0xb5d6bbde ipv6_push_frag_opts +EXPORT_SYMBOL vmlinux 0xb5e2a9dd dev_pm_opp_unregister_notifier +EXPORT_SYMBOL vmlinux 0xb5e388a4 neigh_connected_output +EXPORT_SYMBOL vmlinux 0xb5e73116 flush_delayed_work +EXPORT_SYMBOL vmlinux 0xb61f2c5a neigh_app_ns +EXPORT_SYMBOL vmlinux 0xb620e602 dquot_disable +EXPORT_SYMBOL vmlinux 0xb63188ab security_sock_graft +EXPORT_SYMBOL vmlinux 0xb633f115 irq_poll_enable +EXPORT_SYMBOL vmlinux 0xb63c6178 blk_pre_runtime_suspend +EXPORT_SYMBOL vmlinux 0xb6428a1f blkdev_get_by_dev +EXPORT_SYMBOL vmlinux 0xb6480b57 netdev_lower_get_next_private_rcu +EXPORT_SYMBOL vmlinux 0xb654ef65 acpi_os_read_port +EXPORT_SYMBOL vmlinux 0xb66c7c4b d_rehash +EXPORT_SYMBOL vmlinux 0xb676cd0b qman_create_fq +EXPORT_SYMBOL vmlinux 0xb678366f int_sqrt +EXPORT_SYMBOL vmlinux 0xb67baae2 nla_reserve +EXPORT_SYMBOL vmlinux 0xb67c9280 utf8cursor +EXPORT_SYMBOL vmlinux 0xb67caf65 ucc_fast_enable +EXPORT_SYMBOL vmlinux 0xb67fec0e uuid_parse +EXPORT_SYMBOL vmlinux 0xb6936578 phy_init_hw +EXPORT_SYMBOL vmlinux 0xb6936ffe _bcd2bin +EXPORT_SYMBOL vmlinux 0xb69dca55 pci_claim_resource +EXPORT_SYMBOL vmlinux 0xb6a68816 find_last_bit +EXPORT_SYMBOL vmlinux 0xb6acaa13 phy_sfp_detach +EXPORT_SYMBOL vmlinux 0xb6d01aca __mdiobus_write +EXPORT_SYMBOL vmlinux 0xb70fb302 phy_ethtool_nway_reset +EXPORT_SYMBOL vmlinux 0xb728cc81 set_posix_acl +EXPORT_SYMBOL vmlinux 0xb72f1a6c file_update_time +EXPORT_SYMBOL vmlinux 0xb7350849 __dec_node_page_state +EXPORT_SYMBOL vmlinux 0xb737b185 gen_pool_best_fit +EXPORT_SYMBOL vmlinux 0xb7610d6d netlink_kernel_release +EXPORT_SYMBOL vmlinux 0xb7688155 ucc_slow_init +EXPORT_SYMBOL vmlinux 0xb772c0d6 genphy_loopback +EXPORT_SYMBOL vmlinux 0xb7788cbd security_old_inode_init_security +EXPORT_SYMBOL vmlinux 0xb779a2be jbd2_journal_get_create_access +EXPORT_SYMBOL vmlinux 0xb77b99e9 unregister_fib_notifier +EXPORT_SYMBOL vmlinux 0xb788fb30 gic_pmr_sync +EXPORT_SYMBOL vmlinux 0xb78debe3 LZ4_decompress_fast_usingDict +EXPORT_SYMBOL vmlinux 0xb79aaf65 pci_set_mwi +EXPORT_SYMBOL vmlinux 0xb7ab8296 nd_device_unregister +EXPORT_SYMBOL vmlinux 0xb7c0f443 sort +EXPORT_SYMBOL vmlinux 0xb7c6db70 sysctl_max_skb_frags +EXPORT_SYMBOL vmlinux 0xb7cd085d request_firmware_into_buf +EXPORT_SYMBOL vmlinux 0xb7ce742e phy_write_paged +EXPORT_SYMBOL vmlinux 0xb7e26f12 abx500_get_register_page_interruptible +EXPORT_SYMBOL vmlinux 0xb7e886bd mipi_dsi_generic_read +EXPORT_SYMBOL vmlinux 0xb7fd6441 sock_set_reuseaddr +EXPORT_SYMBOL vmlinux 0xb8256285 flow_rule_match_basic +EXPORT_SYMBOL vmlinux 0xb83129db ZSTD_decompressContinue +EXPORT_SYMBOL vmlinux 0xb8396845 setup_new_exec +EXPORT_SYMBOL vmlinux 0xb842716c qcom_scm_ocmem_lock_available +EXPORT_SYMBOL vmlinux 0xb85422d4 bio_integrity_trim +EXPORT_SYMBOL vmlinux 0xb856f637 dump_page +EXPORT_SYMBOL vmlinux 0xb85b70c9 load_nls_default +EXPORT_SYMBOL vmlinux 0xb8605d9c qman_p_static_dequeue_add +EXPORT_SYMBOL vmlinux 0xb868ac5c register_sysrq_key +EXPORT_SYMBOL vmlinux 0xb8791ca2 netif_device_detach +EXPORT_SYMBOL vmlinux 0xb89b6e6b guid_parse +EXPORT_SYMBOL vmlinux 0xb89e43f2 qman_query_fq_np +EXPORT_SYMBOL vmlinux 0xb8a2fd4d fs_param_is_s32 +EXPORT_SYMBOL vmlinux 0xb8b043f2 kfree_link +EXPORT_SYMBOL vmlinux 0xb8b9f817 kmalloc_order_trace +EXPORT_SYMBOL vmlinux 0xb8c12a90 phy_set_asym_pause +EXPORT_SYMBOL vmlinux 0xb8c9ab1a __mdiobus_read +EXPORT_SYMBOL vmlinux 0xb8dd5659 nvdimm_bus_lock +EXPORT_SYMBOL vmlinux 0xb8fa40c7 qdisc_watchdog_cancel +EXPORT_SYMBOL vmlinux 0xb9056bb6 remove_conflicting_framebuffers +EXPORT_SYMBOL vmlinux 0xb907513f unpoison_memory +EXPORT_SYMBOL vmlinux 0xb90809a3 netif_set_xps_queue +EXPORT_SYMBOL vmlinux 0xb911bb58 minmax_running_max +EXPORT_SYMBOL vmlinux 0xb913806b __i2c_smbus_xfer +EXPORT_SYMBOL vmlinux 0xb91a55d0 xfrm6_protocol_register +EXPORT_SYMBOL vmlinux 0xb936b207 tty_name +EXPORT_SYMBOL vmlinux 0xb93dd473 tcp_timewait_state_process +EXPORT_SYMBOL vmlinux 0xb94339c4 qdisc_put_stab +EXPORT_SYMBOL vmlinux 0xb94b4154 bio_advance +EXPORT_SYMBOL vmlinux 0xb97220ff bitmap_parse +EXPORT_SYMBOL vmlinux 0xb975417b kernel_connect +EXPORT_SYMBOL vmlinux 0xb98d8ae6 ppp_input_error +EXPORT_SYMBOL vmlinux 0xb9adb810 elv_rb_del +EXPORT_SYMBOL vmlinux 0xb9af1d0d __xa_clear_mark +EXPORT_SYMBOL vmlinux 0xb9af752c tcp_sendpage +EXPORT_SYMBOL vmlinux 0xb9b4c183 mdiobus_alloc_size +EXPORT_SYMBOL vmlinux 0xb9cb2011 __wait_on_buffer +EXPORT_SYMBOL vmlinux 0xb9e7252a try_module_get +EXPORT_SYMBOL vmlinux 0xb9e8e2cc in6addr_sitelocal_allrouters +EXPORT_SYMBOL vmlinux 0xb9ed2c38 of_find_node_by_phandle +EXPORT_SYMBOL vmlinux 0xb9ede803 iommu_get_msi_cookie +EXPORT_SYMBOL vmlinux 0xb9fc381a qcom_scm_hdcp_req +EXPORT_SYMBOL vmlinux 0xb9fd289c udp_seq_stop +EXPORT_SYMBOL vmlinux 0xba1008c8 __crc32c_le +EXPORT_SYMBOL vmlinux 0xba100f7b inet_csk_reset_keepalive_timer +EXPORT_SYMBOL vmlinux 0xba15d722 pci_read_vpd +EXPORT_SYMBOL vmlinux 0xba2fcd79 nf_getsockopt +EXPORT_SYMBOL vmlinux 0xba441d21 kset_unregister +EXPORT_SYMBOL vmlinux 0xba497f13 loops_per_jiffy +EXPORT_SYMBOL vmlinux 0xba49f3f5 generic_ro_fops +EXPORT_SYMBOL vmlinux 0xba5ca4f9 clocksource_unregister +EXPORT_SYMBOL vmlinux 0xba627871 tty_port_tty_set +EXPORT_SYMBOL vmlinux 0xba6d3f7d dcb_getapp +EXPORT_SYMBOL vmlinux 0xba707a78 qe_get_brg_clk +EXPORT_SYMBOL vmlinux 0xbaa8fac3 mmc_sw_reset +EXPORT_SYMBOL vmlinux 0xbaae8a7e pin_user_pages_locked +EXPORT_SYMBOL vmlinux 0xbab2c86c pci_write_config_dword +EXPORT_SYMBOL vmlinux 0xbace9154 to_ndd +EXPORT_SYMBOL vmlinux 0xbadcaade blk_set_default_limits +EXPORT_SYMBOL vmlinux 0xbae10c02 ps2_cmd_aborted +EXPORT_SYMBOL vmlinux 0xbaffff96 ZSTD_CStreamWorkspaceBound +EXPORT_SYMBOL vmlinux 0xbb0540aa zlib_inflateReset +EXPORT_SYMBOL vmlinux 0xbb0fcf21 sock_bindtoindex +EXPORT_SYMBOL vmlinux 0xbb143235 __page_symlink +EXPORT_SYMBOL vmlinux 0xbb21260e convert_ifc_address +EXPORT_SYMBOL vmlinux 0xbb24f607 init_cdrom_command +EXPORT_SYMBOL vmlinux 0xbb262315 xfrm6_rcv +EXPORT_SYMBOL vmlinux 0xbb35675b __bitmap_intersects +EXPORT_SYMBOL vmlinux 0xbb4f4766 simple_write_to_buffer +EXPORT_SYMBOL vmlinux 0xbb687724 bman_new_pool +EXPORT_SYMBOL vmlinux 0xbb6d5ebe dev_set_mac_address +EXPORT_SYMBOL vmlinux 0xbb7fb181 tcp_sock_set_keepintvl +EXPORT_SYMBOL vmlinux 0xbb814894 rproc_remove_subdev +EXPORT_SYMBOL vmlinux 0xbb83a703 sock_set_rcvbuf +EXPORT_SYMBOL vmlinux 0xbb92d152 xsk_clear_rx_need_wakeup +EXPORT_SYMBOL vmlinux 0xbba46dc1 pci_enable_device_io +EXPORT_SYMBOL vmlinux 0xbbe46b86 devm_input_allocate_device +EXPORT_SYMBOL vmlinux 0xbbe80fdb kmalloc_order +EXPORT_SYMBOL vmlinux 0xbbeefef9 max8998_bulk_write +EXPORT_SYMBOL vmlinux 0xbc0792d3 abx500_get_chip_id +EXPORT_SYMBOL vmlinux 0xbc07cad8 blk_rq_map_integrity_sg +EXPORT_SYMBOL vmlinux 0xbc2031de acpi_processor_get_bios_limit +EXPORT_SYMBOL vmlinux 0xbc2174d8 _dev_notice +EXPORT_SYMBOL vmlinux 0xbc25f7cc free_contig_range +EXPORT_SYMBOL vmlinux 0xbc2fbfd0 scsi_print_command +EXPORT_SYMBOL vmlinux 0xbc300040 ps2_handle_ack +EXPORT_SYMBOL vmlinux 0xbc317273 pci_bus_set_ops +EXPORT_SYMBOL vmlinux 0xbc3f541d __skb_flow_get_ports +EXPORT_SYMBOL vmlinux 0xbc50ab47 tty_schedule_flip +EXPORT_SYMBOL vmlinux 0xbc7c8afe phy_device_register +EXPORT_SYMBOL vmlinux 0xbc7e3ec9 inet_gro_complete +EXPORT_SYMBOL vmlinux 0xbc85c264 pci_ep_cfs_remove_epc_group +EXPORT_SYMBOL vmlinux 0xbcab6ee6 sscanf +EXPORT_SYMBOL vmlinux 0xbcabf285 generic_write_checks +EXPORT_SYMBOL vmlinux 0xbcb72eb3 tty_port_free_xmit_buf +EXPORT_SYMBOL vmlinux 0xbcbdf60f kstrtos8 +EXPORT_SYMBOL vmlinux 0xbcc308bb strnlen_user +EXPORT_SYMBOL vmlinux 0xbce54296 bdi_set_max_ratio +EXPORT_SYMBOL vmlinux 0xbcf8a486 vc_resize +EXPORT_SYMBOL vmlinux 0xbd170b15 twl6030_mmc_card_detect +EXPORT_SYMBOL vmlinux 0xbd462b55 __kfifo_init +EXPORT_SYMBOL vmlinux 0xbd59d983 fman_set_port_params +EXPORT_SYMBOL vmlinux 0xbd621dcb xfrm_trans_queue +EXPORT_SYMBOL vmlinux 0xbd6841d4 crc16 +EXPORT_SYMBOL vmlinux 0xbd71d7b4 dev_get_by_index_rcu +EXPORT_SYMBOL vmlinux 0xbd78d62e ns_capable_setid +EXPORT_SYMBOL vmlinux 0xbd8aa7a3 __scsi_device_lookup +EXPORT_SYMBOL vmlinux 0xbd8f2c69 tty_devnum +EXPORT_SYMBOL vmlinux 0xbda0b235 xfrm_state_lookup_byaddr +EXPORT_SYMBOL vmlinux 0xbdaacb5d mipi_dsi_dcs_set_column_address +EXPORT_SYMBOL vmlinux 0xbdaaf724 scsi_rescan_device +EXPORT_SYMBOL vmlinux 0xbdaf1ca7 nvm_register +EXPORT_SYMBOL vmlinux 0xbdb392bf tcp_mss_to_mtu +EXPORT_SYMBOL vmlinux 0xbdbb8e86 pci_free_host_bridge +EXPORT_SYMBOL vmlinux 0xbdbe42ec pci_disable_device +EXPORT_SYMBOL vmlinux 0xbdda54fc finish_no_open +EXPORT_SYMBOL vmlinux 0xbddb5f4e tcp_v4_do_rcv +EXPORT_SYMBOL vmlinux 0xbde6bdb0 flush_dcache_page +EXPORT_SYMBOL vmlinux 0xbde94ce3 msm_pinctrl_dev_pm_ops +EXPORT_SYMBOL vmlinux 0xbdf0fc9b configfs_unregister_subsystem +EXPORT_SYMBOL vmlinux 0xbe1a2f78 seq_release +EXPORT_SYMBOL vmlinux 0xbe2dd44f inode_add_bytes +EXPORT_SYMBOL vmlinux 0xbe471744 vga_set_legacy_decoding +EXPORT_SYMBOL vmlinux 0xbe49252c acpi_os_write_port +EXPORT_SYMBOL vmlinux 0xbe4eb6ed secure_dccpv6_sequence_number +EXPORT_SYMBOL vmlinux 0xbe5720df tcf_idr_check_alloc +EXPORT_SYMBOL vmlinux 0xbe5a24e9 xxh32_copy_state +EXPORT_SYMBOL vmlinux 0xbe6624be __pskb_pull_tail +EXPORT_SYMBOL vmlinux 0xbe6a866f __wait_on_bit +EXPORT_SYMBOL vmlinux 0xbe6f6cfb no_seek_end_llseek +EXPORT_SYMBOL vmlinux 0xbe7e05a8 acpi_tb_install_and_load_table +EXPORT_SYMBOL vmlinux 0xbeaac130 pnp_get_resource +EXPORT_SYMBOL vmlinux 0xbec532bd put_cmsg_scm_timestamping +EXPORT_SYMBOL vmlinux 0xbeda173e serial8250_set_isa_configurator +EXPORT_SYMBOL vmlinux 0xbeea16b0 dst_release_immediate +EXPORT_SYMBOL vmlinux 0xbef43296 console_conditional_schedule +EXPORT_SYMBOL vmlinux 0xbefa3483 sock_recvmsg +EXPORT_SYMBOL vmlinux 0xbefa51a3 gen_pool_add_owner +EXPORT_SYMBOL vmlinux 0xbf01755d nf_ct_get_tuple_skb +EXPORT_SYMBOL vmlinux 0xbf0b4002 xfrm_register_type_offload +EXPORT_SYMBOL vmlinux 0xbf0e263a of_device_unregister +EXPORT_SYMBOL vmlinux 0xbf168fb3 xfrm_policy_register_afinfo +EXPORT_SYMBOL vmlinux 0xbf22769b inet_register_protosw +EXPORT_SYMBOL vmlinux 0xbf337638 get_fs_type +EXPORT_SYMBOL vmlinux 0xbf42855e vme_register_error_handler +EXPORT_SYMBOL vmlinux 0xbf49e54e netdev_rx_csum_fault +EXPORT_SYMBOL vmlinux 0xbf59c419 posix_acl_init +EXPORT_SYMBOL vmlinux 0xbf6e397a __seq_open_private +EXPORT_SYMBOL vmlinux 0xbf84e2e4 md_check_no_bitmap +EXPORT_SYMBOL vmlinux 0xbf8d8ac5 devm_memunmap +EXPORT_SYMBOL vmlinux 0xbf9bcc8d __cap_empty_set +EXPORT_SYMBOL vmlinux 0xbfa5c097 get_super_thawed +EXPORT_SYMBOL vmlinux 0xbfc6c949 d_alloc_name +EXPORT_SYMBOL vmlinux 0xbfcbc0d2 stmp_reset_block +EXPORT_SYMBOL vmlinux 0xbfd0f25f inode_set_bytes +EXPORT_SYMBOL vmlinux 0xbfd20a7b ipv6_mc_check_mld +EXPORT_SYMBOL vmlinux 0xbfee3ad5 loop_unregister_transfer +EXPORT_SYMBOL vmlinux 0xbfef6ad0 inet_dgram_connect +EXPORT_SYMBOL vmlinux 0xbff754ee skb_queue_purge +EXPORT_SYMBOL vmlinux 0xbffb774a skb_copy_and_csum_bits +EXPORT_SYMBOL vmlinux 0xc00fb90c of_device_is_big_endian +EXPORT_SYMBOL vmlinux 0xc0123ad2 fb_prepare_logo +EXPORT_SYMBOL vmlinux 0xc019fcf5 max8998_bulk_read +EXPORT_SYMBOL vmlinux 0xc01d06aa fman_set_mac_max_frame +EXPORT_SYMBOL vmlinux 0xc025016c flow_keys_dissector +EXPORT_SYMBOL vmlinux 0xc030d927 jbd2_journal_update_sb_errno +EXPORT_SYMBOL vmlinux 0xc05f0377 md_integrity_register +EXPORT_SYMBOL vmlinux 0xc0645b58 netdev_txq_to_tc +EXPORT_SYMBOL vmlinux 0xc06cf7b2 input_flush_device +EXPORT_SYMBOL vmlinux 0xc0732d30 __cpuhp_setup_state_cpuslocked +EXPORT_SYMBOL vmlinux 0xc0763484 rfkill_blocked +EXPORT_SYMBOL vmlinux 0xc07a5b75 con_is_bound +EXPORT_SYMBOL vmlinux 0xc07b0863 fb_destroy_modedb +EXPORT_SYMBOL vmlinux 0xc0870eb7 seg6_hmac_net_exit +EXPORT_SYMBOL vmlinux 0xc0887d95 dquot_quota_on +EXPORT_SYMBOL vmlinux 0xc096e23d hdmi_drm_infoframe_init +EXPORT_SYMBOL vmlinux 0xc0a3d105 find_next_bit +EXPORT_SYMBOL vmlinux 0xc0adfcd9 mr_table_alloc +EXPORT_SYMBOL vmlinux 0xc0b2664d devlink_dpipe_header_ipv4 +EXPORT_SYMBOL vmlinux 0xc0b7efda pcibios_resource_to_bus +EXPORT_SYMBOL vmlinux 0xc0bca0f1 ZSTD_nextSrcSizeToDecompress +EXPORT_SYMBOL vmlinux 0xc0be1ed8 ns_capable_noaudit +EXPORT_SYMBOL vmlinux 0xc0c6cc40 phy_validate_pause +EXPORT_SYMBOL vmlinux 0xc0cabfe9 audit_log +EXPORT_SYMBOL vmlinux 0xc0caf06f read_cache_page_gfp +EXPORT_SYMBOL vmlinux 0xc0cbc530 logfc +EXPORT_SYMBOL vmlinux 0xc0cbdfa8 nvdimm_namespace_common_probe +EXPORT_SYMBOL vmlinux 0xc0d58db8 reuseport_attach_prog +EXPORT_SYMBOL vmlinux 0xc0d5feee vfs_statx +EXPORT_SYMBOL vmlinux 0xc0ff12fb nla_strdup +EXPORT_SYMBOL vmlinux 0xc105573e sync_dirty_buffer +EXPORT_SYMBOL vmlinux 0xc1179daa kstrtou8_from_user +EXPORT_SYMBOL vmlinux 0xc1336dc8 fqdir_exit +EXPORT_SYMBOL vmlinux 0xc13ae79c dmam_free_coherent +EXPORT_SYMBOL vmlinux 0xc14dc168 acpi_get_data +EXPORT_SYMBOL vmlinux 0xc1514a3b free_irq +EXPORT_SYMBOL vmlinux 0xc15621c7 tcp_shutdown +EXPORT_SYMBOL vmlinux 0xc156c981 refcount_dec_and_mutex_lock +EXPORT_SYMBOL vmlinux 0xc1579516 fman_port_enable +EXPORT_SYMBOL vmlinux 0xc16410b9 ZSTD_getDictID_fromDDict +EXPORT_SYMBOL vmlinux 0xc164a51c keygen_init +EXPORT_SYMBOL vmlinux 0xc164e3f6 config_item_set_name +EXPORT_SYMBOL vmlinux 0xc16be39d iter_div_u64_rem +EXPORT_SYMBOL vmlinux 0xc17e6006 ip_fraglist_init +EXPORT_SYMBOL vmlinux 0xc17e6080 mr_mfc_find_parent +EXPORT_SYMBOL vmlinux 0xc188e6b9 blk_queue_io_min +EXPORT_SYMBOL vmlinux 0xc18ec449 done_path_create +EXPORT_SYMBOL vmlinux 0xc19170a0 ppp_register_compressor +EXPORT_SYMBOL vmlinux 0xc1965c49 mr_rtm_dumproute +EXPORT_SYMBOL vmlinux 0xc196f4ba page_zero_new_buffers +EXPORT_SYMBOL vmlinux 0xc1afe89a padata_alloc_shell +EXPORT_SYMBOL vmlinux 0xc1b645ce rproc_elf_sanity_check +EXPORT_SYMBOL vmlinux 0xc1b66381 genphy_aneg_done +EXPORT_SYMBOL vmlinux 0xc1d8cfaf __fdget +EXPORT_SYMBOL vmlinux 0xc1e5cfb6 inet_frag_find +EXPORT_SYMBOL vmlinux 0xc1ef30a8 devm_clk_release_clkdev +EXPORT_SYMBOL vmlinux 0xc1f56ddb ata_link_printk +EXPORT_SYMBOL vmlinux 0xc2050974 fman_port_get_tstamp +EXPORT_SYMBOL vmlinux 0xc20e60da scsi_report_opcode +EXPORT_SYMBOL vmlinux 0xc2310cdc logic_inl +EXPORT_SYMBOL vmlinux 0xc23543e6 devm_memremap +EXPORT_SYMBOL vmlinux 0xc23dac0f remap_vmalloc_range_partial +EXPORT_SYMBOL vmlinux 0xc25605c4 __cgroup_bpf_run_filter_skb +EXPORT_SYMBOL vmlinux 0xc25d4319 qdisc_watchdog_schedule_range_ns +EXPORT_SYMBOL vmlinux 0xc267960e utf8_validate +EXPORT_SYMBOL vmlinux 0xc27d3ece ip_fraglist_prepare +EXPORT_SYMBOL vmlinux 0xc27e5f12 max8925_set_bits +EXPORT_SYMBOL vmlinux 0xc2870b90 napi_consume_skb +EXPORT_SYMBOL vmlinux 0xc28c55c3 __phy_write_mmd +EXPORT_SYMBOL vmlinux 0xc29bf967 strspn +EXPORT_SYMBOL vmlinux 0xc2a17ebe seqno_fence_ops +EXPORT_SYMBOL vmlinux 0xc2b3ac52 dcbnl_cee_notify +EXPORT_SYMBOL vmlinux 0xc2c9ba28 iov_iter_fault_in_readable +EXPORT_SYMBOL vmlinux 0xc2e587d1 reset_devices +EXPORT_SYMBOL vmlinux 0xc2f52274 __lshrti3 +EXPORT_SYMBOL vmlinux 0xc310b981 strnstr +EXPORT_SYMBOL vmlinux 0xc31db0ce is_vmalloc_addr +EXPORT_SYMBOL vmlinux 0xc32c71af register_inetaddr_validator_notifier +EXPORT_SYMBOL vmlinux 0xc33d34a0 register_md_cluster_operations +EXPORT_SYMBOL vmlinux 0xc34e805c unix_attach_fds +EXPORT_SYMBOL vmlinux 0xc3648404 blk_get_request +EXPORT_SYMBOL vmlinux 0xc36a3bd4 __acpi_handle_debug +EXPORT_SYMBOL vmlinux 0xc36fffe2 udp_sk_rx_dst_set +EXPORT_SYMBOL vmlinux 0xc3762aec mempool_alloc +EXPORT_SYMBOL vmlinux 0xc37f9c6e cpufreq_update_policy +EXPORT_SYMBOL vmlinux 0xc387220f netif_tx_stop_all_queues +EXPORT_SYMBOL vmlinux 0xc38c83b8 mod_timer +EXPORT_SYMBOL vmlinux 0xc3942966 override_creds +EXPORT_SYMBOL vmlinux 0xc3a21612 tc_setup_cb_reoffload +EXPORT_SYMBOL vmlinux 0xc3a51650 pcim_set_mwi +EXPORT_SYMBOL vmlinux 0xc3b02599 __generic_file_write_iter +EXPORT_SYMBOL vmlinux 0xc3b0a8c6 migrate_page_copy +EXPORT_SYMBOL vmlinux 0xc3c8c464 mmc_erase_group_aligned +EXPORT_SYMBOL vmlinux 0xc3d178a5 security_inode_listsecurity +EXPORT_SYMBOL vmlinux 0xc3d67176 discard_new_inode +EXPORT_SYMBOL vmlinux 0xc3f0d8b2 pci_map_rom +EXPORT_SYMBOL vmlinux 0xc3f10735 tcp_init_sock +EXPORT_SYMBOL vmlinux 0xc3f29f9b skb_find_text +EXPORT_SYMBOL vmlinux 0xc3f4f9ca nf_unregister_net_hooks +EXPORT_SYMBOL vmlinux 0xc3ff38c2 down_read_trylock +EXPORT_SYMBOL vmlinux 0xc41af740 netif_set_real_num_rx_queues +EXPORT_SYMBOL vmlinux 0xc41bc980 iwe_stream_add_value +EXPORT_SYMBOL vmlinux 0xc41e6019 flow_rule_match_ports +EXPORT_SYMBOL vmlinux 0xc4212ab9 qdisc_class_hash_insert +EXPORT_SYMBOL vmlinux 0xc42dcb99 acpi_evaluate_ost +EXPORT_SYMBOL vmlinux 0xc43617d9 mmc_alloc_host +EXPORT_SYMBOL vmlinux 0xc4708199 cpm_muram_addr +EXPORT_SYMBOL vmlinux 0xc4777aa9 __ctzsi2 +EXPORT_SYMBOL vmlinux 0xc4904586 inet_accept +EXPORT_SYMBOL vmlinux 0xc49b1a3e simple_open +EXPORT_SYMBOL vmlinux 0xc4a48b3d simple_release_fs +EXPORT_SYMBOL vmlinux 0xc4b13905 of_graph_get_remote_node +EXPORT_SYMBOL vmlinux 0xc4b21d2f qman_get_affine_portal +EXPORT_SYMBOL vmlinux 0xc4b39ca4 fman_bind +EXPORT_SYMBOL vmlinux 0xc4c0e7de acpi_match_device_ids +EXPORT_SYMBOL vmlinux 0xc4cb43ae unregister_qdisc +EXPORT_SYMBOL vmlinux 0xc4d0eeeb tty_port_init +EXPORT_SYMBOL vmlinux 0xc4d66386 consume_skb +EXPORT_SYMBOL vmlinux 0xc4e38b9e address_space_init_once +EXPORT_SYMBOL vmlinux 0xc51e16b6 fbcon_rotate_ud +EXPORT_SYMBOL vmlinux 0xc528a49a queued_write_lock_slowpath +EXPORT_SYMBOL vmlinux 0xc5336bda xfrm_policy_walk +EXPORT_SYMBOL vmlinux 0xc544f0bf pci_alloc_dev +EXPORT_SYMBOL vmlinux 0xc55990cf iproc_msi_exit +EXPORT_SYMBOL vmlinux 0xc569ec42 tcp_sock_set_keepcnt +EXPORT_SYMBOL vmlinux 0xc56a41e6 vabits_actual +EXPORT_SYMBOL vmlinux 0xc57b9da3 dquot_alloc_inode +EXPORT_SYMBOL vmlinux 0xc57c48a3 idr_get_next +EXPORT_SYMBOL vmlinux 0xc5850110 printk +EXPORT_SYMBOL vmlinux 0xc58b7a8e generic_cont_expand_simple +EXPORT_SYMBOL vmlinux 0xc599a772 security_xfrm_state_delete +EXPORT_SYMBOL vmlinux 0xc5aae47e filemap_page_mkwrite +EXPORT_SYMBOL vmlinux 0xc5b34bb5 phy_driver_register +EXPORT_SYMBOL vmlinux 0xc5b6f236 queue_work_on +EXPORT_SYMBOL vmlinux 0xc5d50957 dquot_commit +EXPORT_SYMBOL vmlinux 0xc5dac02b dentry_path_raw +EXPORT_SYMBOL vmlinux 0xc5e5573a frame_vector_to_pages +EXPORT_SYMBOL vmlinux 0xc5e74216 release_resource +EXPORT_SYMBOL vmlinux 0xc5f7e801 sg_last +EXPORT_SYMBOL vmlinux 0xc5fbf564 bio_split +EXPORT_SYMBOL vmlinux 0xc6040118 uart_write_wakeup +EXPORT_SYMBOL vmlinux 0xc6055c9e kvasprintf_const +EXPORT_SYMBOL vmlinux 0xc60d0620 __num_online_cpus +EXPORT_SYMBOL vmlinux 0xc6103ef5 generic_copy_file_range +EXPORT_SYMBOL vmlinux 0xc6175b50 tcf_generic_walker +EXPORT_SYMBOL vmlinux 0xc61b3031 jbd2_journal_init_inode +EXPORT_SYMBOL vmlinux 0xc631580a console_unlock +EXPORT_SYMBOL vmlinux 0xc633d82d phy_unregister_fixup +EXPORT_SYMBOL vmlinux 0xc6475efa inode_get_bytes +EXPORT_SYMBOL vmlinux 0xc64c6917 phy_ethtool_get_eee +EXPORT_SYMBOL vmlinux 0xc657e3ff remove_arg_zero +EXPORT_SYMBOL vmlinux 0xc65e4e97 secure_dccp_sequence_number +EXPORT_SYMBOL vmlinux 0xc666a132 crc_t10dif +EXPORT_SYMBOL vmlinux 0xc66a8304 cpu_rmap_add +EXPORT_SYMBOL vmlinux 0xc66d919f dm_table_get_mode +EXPORT_SYMBOL vmlinux 0xc67b5927 _dev_crit +EXPORT_SYMBOL vmlinux 0xc69fce52 qcom_scm_qsmmu500_wait_safe_toggle +EXPORT_SYMBOL vmlinux 0xc6cb465a __kfifo_max_r +EXPORT_SYMBOL vmlinux 0xc6cbbc89 capable +EXPORT_SYMBOL vmlinux 0xc6d09aa9 release_firmware +EXPORT_SYMBOL vmlinux 0xc6db4a09 PDE_DATA +EXPORT_SYMBOL vmlinux 0xc6f11a14 proto_unregister +EXPORT_SYMBOL vmlinux 0xc6f1de92 blk_rq_map_user +EXPORT_SYMBOL vmlinux 0xc6f46339 init_timer_key +EXPORT_SYMBOL vmlinux 0xc7040bf5 ucc_tdm_init +EXPORT_SYMBOL vmlinux 0xc708f1fe ec_write +EXPORT_SYMBOL vmlinux 0xc70ad6fb inet6_unregister_protosw +EXPORT_SYMBOL vmlinux 0xc71295c1 clk_bulk_get +EXPORT_SYMBOL vmlinux 0xc7208c3a serial8250_resume_port +EXPORT_SYMBOL vmlinux 0xc7286daa simple_getattr +EXPORT_SYMBOL vmlinux 0xc7302fbf udp_gro_receive +EXPORT_SYMBOL vmlinux 0xc74ae5c7 init_net +EXPORT_SYMBOL vmlinux 0xc75005ec configfs_depend_item +EXPORT_SYMBOL vmlinux 0xc77440aa msm_pinctrl_probe +EXPORT_SYMBOL vmlinux 0xc775048b mmc_wait_for_req +EXPORT_SYMBOL vmlinux 0xc781bd9f rfkill_resume_polling +EXPORT_SYMBOL vmlinux 0xc782fc7a dquot_mark_dquot_dirty +EXPORT_SYMBOL vmlinux 0xc7856a3d inet6addr_notifier_call_chain +EXPORT_SYMBOL vmlinux 0xc785a7ab __fib6_flush_trees +EXPORT_SYMBOL vmlinux 0xc78c6f80 mmc_can_erase +EXPORT_SYMBOL vmlinux 0xc78d200f devm_devfreq_unregister_opp_notifier +EXPORT_SYMBOL vmlinux 0xc79bcd36 dm_vcalloc +EXPORT_SYMBOL vmlinux 0xc7a4fbed rtnl_lock +EXPORT_SYMBOL vmlinux 0xc7c04742 clean_bdev_aliases +EXPORT_SYMBOL vmlinux 0xc7c0c53a filemap_fault +EXPORT_SYMBOL vmlinux 0xc7c1107a LZ4_decompress_safe +EXPORT_SYMBOL vmlinux 0xc7d05161 udp_lib_get_port +EXPORT_SYMBOL vmlinux 0xc7d094b5 dm_read_arg_group +EXPORT_SYMBOL vmlinux 0xc80ab559 swake_up_one +EXPORT_SYMBOL vmlinux 0xc811dcb5 sock_common_recvmsg +EXPORT_SYMBOL vmlinux 0xc81e91a8 napi_busy_loop +EXPORT_SYMBOL vmlinux 0xc8385d5c mmc_erase +EXPORT_SYMBOL vmlinux 0xc838c3f5 __ashrti3 +EXPORT_SYMBOL vmlinux 0xc840e2d3 skb_try_coalesce +EXPORT_SYMBOL vmlinux 0xc84a0a7e seq_hlist_start_rcu +EXPORT_SYMBOL vmlinux 0xc856f03d add_to_pipe +EXPORT_SYMBOL vmlinux 0xc858a614 nla_reserve_nohdr +EXPORT_SYMBOL vmlinux 0xc872fd85 in6addr_interfacelocal_allnodes +EXPORT_SYMBOL vmlinux 0xc87f4d11 security_sk_clone +EXPORT_SYMBOL vmlinux 0xc8827b75 sysctl_vals +EXPORT_SYMBOL vmlinux 0xc88a5b1c bprm_change_interp +EXPORT_SYMBOL vmlinux 0xc890c008 zlib_deflateEnd +EXPORT_SYMBOL vmlinux 0xc890ccf7 scsi_eh_restore_cmnd +EXPORT_SYMBOL vmlinux 0xc895c7c2 inet_csk_destroy_sock +EXPORT_SYMBOL vmlinux 0xc89846c4 xudma_tchanrt_read +EXPORT_SYMBOL vmlinux 0xc89c74f6 zero_fill_bio_iter +EXPORT_SYMBOL vmlinux 0xc8a91f5b cpumask_local_spread +EXPORT_SYMBOL vmlinux 0xc8e7622c inetpeer_invalidate_tree +EXPORT_SYMBOL vmlinux 0xc90afb0c cros_ec_get_host_event +EXPORT_SYMBOL vmlinux 0xc920c76b mipi_dsi_dcs_read +EXPORT_SYMBOL vmlinux 0xc9269684 __skb_ext_del +EXPORT_SYMBOL vmlinux 0xc93533f9 pci_ep_cfs_add_epf_group +EXPORT_SYMBOL vmlinux 0xc9383398 reuseport_detach_prog +EXPORT_SYMBOL vmlinux 0xc93e8461 acpi_get_event_resources +EXPORT_SYMBOL vmlinux 0xc9634df9 in6addr_linklocal_allrouters +EXPORT_SYMBOL vmlinux 0xc96d17c8 fb_set_suspend +EXPORT_SYMBOL vmlinux 0xc972449f mempool_alloc_slab +EXPORT_SYMBOL vmlinux 0xc97c87f4 is_nd_pfn +EXPORT_SYMBOL vmlinux 0xc9822234 clk_register_clkdev +EXPORT_SYMBOL vmlinux 0xc983b294 tty_wait_until_sent +EXPORT_SYMBOL vmlinux 0xc98536ac mount_subtree +EXPORT_SYMBOL vmlinux 0xc98924a6 sock_from_file +EXPORT_SYMBOL vmlinux 0xc991463b xfrm_policy_flush +EXPORT_SYMBOL vmlinux 0xc9957204 __arch_copy_in_user +EXPORT_SYMBOL vmlinux 0xc99e2a55 twl_rev +EXPORT_SYMBOL vmlinux 0xc9d7db9d devfreq_register_notifier +EXPORT_SYMBOL vmlinux 0xc9df055a xfrm_policy_walk_init +EXPORT_SYMBOL vmlinux 0xc9ed2d31 ps2_begin_command +EXPORT_SYMBOL vmlinux 0xc9f38ec9 flow_rule_match_ipv6_addrs +EXPORT_SYMBOL vmlinux 0xc9f61571 iw_handler_set_spy +EXPORT_SYMBOL vmlinux 0xca0976ec kobject_add +EXPORT_SYMBOL vmlinux 0xca0b4265 __cleancache_invalidate_fs +EXPORT_SYMBOL vmlinux 0xca15413f ZSTD_resetDStream +EXPORT_SYMBOL vmlinux 0xca1ea2c7 blk_set_stacking_limits +EXPORT_SYMBOL vmlinux 0xca21ebd3 bitmap_free +EXPORT_SYMBOL vmlinux 0xca3f5a69 sk_page_frag_refill +EXPORT_SYMBOL vmlinux 0xca42c739 vfs_parse_fs_param +EXPORT_SYMBOL vmlinux 0xca431c05 wake_bit_function +EXPORT_SYMBOL vmlinux 0xca500935 of_get_mac_address +EXPORT_SYMBOL vmlinux 0xca54379f devm_nvmem_unregister +EXPORT_SYMBOL vmlinux 0xca62afaf xudma_rflow_is_gp +EXPORT_SYMBOL vmlinux 0xca9360b5 rb_next +EXPORT_SYMBOL vmlinux 0xca9beaa4 __xa_store +EXPORT_SYMBOL vmlinux 0xcaa159cf dma_free_attrs +EXPORT_SYMBOL vmlinux 0xcaa933fc tcp_peek_len +EXPORT_SYMBOL vmlinux 0xcaabb68c devfreq_monitor_resume +EXPORT_SYMBOL vmlinux 0xcaac3274 registered_fb +EXPORT_SYMBOL vmlinux 0xcac2ec1c pin_user_pages +EXPORT_SYMBOL vmlinux 0xcad1aca8 acpi_exception +EXPORT_SYMBOL vmlinux 0xcaf2c603 scsi_sd_pm_domain +EXPORT_SYMBOL vmlinux 0xcb0288ea ledtrig_cpu +EXPORT_SYMBOL vmlinux 0xcb13eae8 input_enable_softrepeat +EXPORT_SYMBOL vmlinux 0xcb28f63c mmc_wait_for_req_done +EXPORT_SYMBOL vmlinux 0xcb3ae215 call_blocking_lsm_notifier +EXPORT_SYMBOL vmlinux 0xcb4d0b8d inode_set_flags +EXPORT_SYMBOL vmlinux 0xcb5987ef iov_iter_copy_from_user_atomic +EXPORT_SYMBOL vmlinux 0xcb733bf2 acpi_bus_set_power +EXPORT_SYMBOL vmlinux 0xcb9087a9 skb_copy_header +EXPORT_SYMBOL vmlinux 0xcb967c06 icmp_ndo_send +EXPORT_SYMBOL vmlinux 0xcb9e1a22 acpi_os_map_generic_address +EXPORT_SYMBOL vmlinux 0xcba4abe3 list_sort +EXPORT_SYMBOL vmlinux 0xcbc88a23 ZSTD_isFrame +EXPORT_SYMBOL vmlinux 0xcbcb34bb genphy_soft_reset +EXPORT_SYMBOL vmlinux 0xcbd4898c fortify_panic +EXPORT_SYMBOL vmlinux 0xcbefdd68 security_socket_getpeersec_dgram +EXPORT_SYMBOL vmlinux 0xcbfb33e4 init_opal_dev +EXPORT_SYMBOL vmlinux 0xcc073f89 dma_direct_map_resource +EXPORT_SYMBOL vmlinux 0xcc182984 unregister_framebuffer +EXPORT_SYMBOL vmlinux 0xcc1b882a idr_get_next_ul +EXPORT_SYMBOL vmlinux 0xcc248d26 serial8250_suspend_port +EXPORT_SYMBOL vmlinux 0xcc328a5c reservation_ww_class +EXPORT_SYMBOL vmlinux 0xcc410b98 jbd2_journal_force_commit_nested +EXPORT_SYMBOL vmlinux 0xcc445ceb __sg_page_iter_dma_next +EXPORT_SYMBOL vmlinux 0xcc4573f4 netdev_master_upper_dev_link +EXPORT_SYMBOL vmlinux 0xcc48093b input_close_device +EXPORT_SYMBOL vmlinux 0xcc5005fe msleep_interruptible +EXPORT_SYMBOL vmlinux 0xcc50b45a dev_get_by_name +EXPORT_SYMBOL vmlinux 0xcc5d22d9 can_do_mlock +EXPORT_SYMBOL vmlinux 0xcc5d9423 blkdev_issue_flush +EXPORT_SYMBOL vmlinux 0xcc6780a5 mipi_dsi_dcs_set_display_off +EXPORT_SYMBOL vmlinux 0xcc797f9b md_wait_for_blocked_rdev +EXPORT_SYMBOL vmlinux 0xcc8111c7 cdrom_open +EXPORT_SYMBOL vmlinux 0xcc9377d8 netdev_lower_get_next +EXPORT_SYMBOL vmlinux 0xcca5839d xen_vcpu_id +EXPORT_SYMBOL vmlinux 0xccaf85d5 phy_get_eee_err +EXPORT_SYMBOL vmlinux 0xccb1e4e3 pci_add_new_bus +EXPORT_SYMBOL vmlinux 0xccb3df05 seq_vprintf +EXPORT_SYMBOL vmlinux 0xccc21f5e input_get_new_minor +EXPORT_SYMBOL vmlinux 0xccc4a15f i2c_smbus_read_i2c_block_data +EXPORT_SYMBOL vmlinux 0xccc758d8 nla_policy_len +EXPORT_SYMBOL vmlinux 0xccd0c7cd fb_blank +EXPORT_SYMBOL vmlinux 0xccd4c999 __sg_page_iter_start +EXPORT_SYMBOL vmlinux 0xccd6d3ac file_check_and_advance_wb_err +EXPORT_SYMBOL vmlinux 0xcce7cf86 locks_free_lock +EXPORT_SYMBOL vmlinux 0xccef37e4 ZSTD_DStreamOutSize +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 0xcd02ad3f qdisc_hash_add +EXPORT_SYMBOL vmlinux 0xcd256667 tcp_md5_needed +EXPORT_SYMBOL vmlinux 0xcd279169 nla_find +EXPORT_SYMBOL vmlinux 0xcd27a147 lock_page_memcg +EXPORT_SYMBOL vmlinux 0xcd2a61ad dev_mc_del_global +EXPORT_SYMBOL vmlinux 0xcd33007a seq_printf +EXPORT_SYMBOL vmlinux 0xcd52acda take_dentry_name_snapshot +EXPORT_SYMBOL vmlinux 0xcd58c7fc fs_param_is_u64 +EXPORT_SYMBOL vmlinux 0xcd627994 vfs_rmdir +EXPORT_SYMBOL vmlinux 0xcd6b5d85 inet_gro_receive +EXPORT_SYMBOL vmlinux 0xcd8a5178 dev_mc_add_excl +EXPORT_SYMBOL vmlinux 0xcd8ce890 acpi_format_exception +EXPORT_SYMBOL vmlinux 0xcd9ddbc1 __cleancache_invalidate_inode +EXPORT_SYMBOL vmlinux 0xcda285c3 xfrm_sad_getinfo +EXPORT_SYMBOL vmlinux 0xcdae0a7b ethtool_virtdev_set_link_ksettings +EXPORT_SYMBOL vmlinux 0xcdc39c9e security_ismaclabel +EXPORT_SYMBOL vmlinux 0xcddb0953 devm_clk_put +EXPORT_SYMBOL vmlinux 0xcddc99a1 pci_match_id +EXPORT_SYMBOL vmlinux 0xcddd021f dev_printk +EXPORT_SYMBOL vmlinux 0xcde77bcc free_opal_dev +EXPORT_SYMBOL vmlinux 0xce036f24 sg_split +EXPORT_SYMBOL vmlinux 0xce043fd6 set_page_dirty +EXPORT_SYMBOL vmlinux 0xce04915a __d_lookup_done +EXPORT_SYMBOL vmlinux 0xce2840e7 irq_set_irq_wake +EXPORT_SYMBOL vmlinux 0xce3864eb ZSTD_compress_usingDict +EXPORT_SYMBOL vmlinux 0xce4cdb8e fb_find_best_mode +EXPORT_SYMBOL vmlinux 0xce4e47b6 __kfifo_skip_r +EXPORT_SYMBOL vmlinux 0xce50e5de ZSTD_compress_usingCDict +EXPORT_SYMBOL vmlinux 0xce5ac24f zlib_inflate_workspacesize +EXPORT_SYMBOL vmlinux 0xce6477b2 acpi_pci_osc_control_set +EXPORT_SYMBOL vmlinux 0xce655ee3 serio_rescan +EXPORT_SYMBOL vmlinux 0xce731b34 ucc_slow_get_qe_cr_subblock +EXPORT_SYMBOL vmlinux 0xce73e9b8 xfrm_input_register_afinfo +EXPORT_SYMBOL vmlinux 0xce76c257 acpi_get_irq_routing_table +EXPORT_SYMBOL vmlinux 0xce7bfe70 vm_brk +EXPORT_SYMBOL vmlinux 0xce807a25 up_write +EXPORT_SYMBOL vmlinux 0xce9c48ac sync_file_create +EXPORT_SYMBOL vmlinux 0xceaae33e jbd2_journal_set_features +EXPORT_SYMBOL vmlinux 0xceab0311 strchrnul +EXPORT_SYMBOL vmlinux 0xceb3e5b8 fscrypt_encrypt_pagecache_blocks +EXPORT_SYMBOL vmlinux 0xced0f4d4 gen_pool_create +EXPORT_SYMBOL vmlinux 0xced5610d security_inode_notifysecctx +EXPORT_SYMBOL vmlinux 0xcee5ab3b blkdev_issue_write_same +EXPORT_SYMBOL vmlinux 0xceec8abd __mb_cache_entry_free +EXPORT_SYMBOL vmlinux 0xceedf957 devm_pci_alloc_host_bridge +EXPORT_SYMBOL vmlinux 0xcefa9a06 touch_atime +EXPORT_SYMBOL vmlinux 0xcefcd99a serial8250_unregister_port +EXPORT_SYMBOL vmlinux 0xcf000c7e hdmi_infoframe_check +EXPORT_SYMBOL vmlinux 0xcf05e89a sg_alloc_table_from_pages +EXPORT_SYMBOL vmlinux 0xcf0d7985 sock_efree +EXPORT_SYMBOL vmlinux 0xcf19f24e simple_write_begin +EXPORT_SYMBOL vmlinux 0xcf1c6ca3 cmdline_parts_find +EXPORT_SYMBOL vmlinux 0xcf2a6966 up +EXPORT_SYMBOL vmlinux 0xcf3f3a8b d_set_fallthru +EXPORT_SYMBOL vmlinux 0xcf4522f4 unregister_md_personality +EXPORT_SYMBOL vmlinux 0xcf4fdd4d _atomic_dec_and_lock +EXPORT_SYMBOL vmlinux 0xcf83d83a __tracepoint_spi_transfer_start +EXPORT_SYMBOL vmlinux 0xcf898eaf iov_iter_zero +EXPORT_SYMBOL vmlinux 0xcf9b558d touchscreen_set_mt_pos +EXPORT_SYMBOL vmlinux 0xcf9f5bbe dns_query +EXPORT_SYMBOL vmlinux 0xcfeab31a of_device_register +EXPORT_SYMBOL vmlinux 0xcfeb98a8 acpi_processor_register_performance +EXPORT_SYMBOL vmlinux 0xcffff5b1 xfrm_policy_bysel_ctx +EXPORT_SYMBOL vmlinux 0xd024e9bb of_find_mipi_dsi_host_by_node +EXPORT_SYMBOL vmlinux 0xd035ad28 balance_dirty_pages_ratelimited +EXPORT_SYMBOL vmlinux 0xd03c47c5 input_mt_init_slots +EXPORT_SYMBOL vmlinux 0xd042475c qdisc_get_rtab +EXPORT_SYMBOL vmlinux 0xd0436307 follow_down +EXPORT_SYMBOL vmlinux 0xd04c1a64 sysctl_devconf_inherit_init_net +EXPORT_SYMBOL vmlinux 0xd0654aba woken_wake_function +EXPORT_SYMBOL vmlinux 0xd08a681a pm860x_page_reg_write +EXPORT_SYMBOL vmlinux 0xd08ce7cf kmem_cache_size +EXPORT_SYMBOL vmlinux 0xd0a4879d bio_integrity_alloc +EXPORT_SYMBOL vmlinux 0xd0a73907 clkdev_add +EXPORT_SYMBOL vmlinux 0xd0a91bab skip_spaces +EXPORT_SYMBOL vmlinux 0xd0b44fd9 unregister_cdrom +EXPORT_SYMBOL vmlinux 0xd0b74705 acpi_install_interface +EXPORT_SYMBOL vmlinux 0xd0bd487b hdmi_drm_infoframe_pack_only +EXPORT_SYMBOL vmlinux 0xd0d7fb20 pnp_device_detach +EXPORT_SYMBOL vmlinux 0xd0e89ec6 netpoll_cleanup +EXPORT_SYMBOL vmlinux 0xd0f87c26 i2c_put_adapter +EXPORT_SYMBOL vmlinux 0xd0fe8d51 sg_pcopy_from_buffer +EXPORT_SYMBOL vmlinux 0xd0fedccc sock_recv_errqueue +EXPORT_SYMBOL vmlinux 0xd1275194 __vlan_find_dev_deep_rcu +EXPORT_SYMBOL vmlinux 0xd135cf61 cros_ec_check_result +EXPORT_SYMBOL vmlinux 0xd1363cc1 ucs2_strsize +EXPORT_SYMBOL vmlinux 0xd13e8862 __zerocopy_sg_from_iter +EXPORT_SYMBOL vmlinux 0xd142849a dm_register_target +EXPORT_SYMBOL vmlinux 0xd156237c end_buffer_write_sync +EXPORT_SYMBOL vmlinux 0xd16494d7 do_SAK +EXPORT_SYMBOL vmlinux 0xd166cd7f ip_route_me_harder +EXPORT_SYMBOL vmlinux 0xd17f4c72 tcf_unregister_action +EXPORT_SYMBOL vmlinux 0xd180288d inc_zone_page_state +EXPORT_SYMBOL vmlinux 0xd1816f32 frontswap_writethrough +EXPORT_SYMBOL vmlinux 0xd194ddf9 acpi_gpe_count +EXPORT_SYMBOL vmlinux 0xd1d0d4e6 vlan_dev_vlan_proto +EXPORT_SYMBOL vmlinux 0xd1d57de5 input_handler_for_each_handle +EXPORT_SYMBOL vmlinux 0xd1d87e92 scsi_mlreturn_string +EXPORT_SYMBOL vmlinux 0xd1f2d2d2 qdisc_offload_graft_helper +EXPORT_SYMBOL vmlinux 0xd1f3dbf5 flow_rule_match_eth_addrs +EXPORT_SYMBOL vmlinux 0xd1f87b4c touchscreen_parse_properties +EXPORT_SYMBOL vmlinux 0xd1ff220a lock_rename +EXPORT_SYMBOL vmlinux 0xd2051916 qcom_scm_cpu_power_down +EXPORT_SYMBOL vmlinux 0xd21a0dff simple_setattr +EXPORT_SYMBOL vmlinux 0xd2237016 radix_tree_delete_item +EXPORT_SYMBOL vmlinux 0xd22870c3 unlock_buffer +EXPORT_SYMBOL vmlinux 0xd2500d4e of_parse_phandle_with_fixed_args +EXPORT_SYMBOL vmlinux 0xd250d0b7 pci_lost_interrupt +EXPORT_SYMBOL vmlinux 0xd254f110 set_wb_congested +EXPORT_SYMBOL vmlinux 0xd2586190 dev_pick_tx_cpu_id +EXPORT_SYMBOL vmlinux 0xd25bc5d4 csum_tcpudp_nofold +EXPORT_SYMBOL vmlinux 0xd25d0007 fwnode_irq_get +EXPORT_SYMBOL vmlinux 0xd25d4f74 console_blank_hook +EXPORT_SYMBOL vmlinux 0xd262dfcb vscnprintf +EXPORT_SYMBOL vmlinux 0xd27593c2 nf_ct_attach +EXPORT_SYMBOL vmlinux 0xd27b25dd blk_check_plugged +EXPORT_SYMBOL vmlinux 0xd28b8f05 dev_deactivate +EXPORT_SYMBOL vmlinux 0xd29accb5 fscrypt_has_permitted_context +EXPORT_SYMBOL vmlinux 0xd2b08961 end_page_writeback +EXPORT_SYMBOL vmlinux 0xd2bf17c9 xfrm_replay_seqhi +EXPORT_SYMBOL vmlinux 0xd2c10aba pnp_stop_dev +EXPORT_SYMBOL vmlinux 0xd2c99738 __kmalloc_track_caller +EXPORT_SYMBOL vmlinux 0xd2da1048 register_netdevice_notifier +EXPORT_SYMBOL vmlinux 0xd2dad53e nvm_end_io +EXPORT_SYMBOL vmlinux 0xd2e2a9d0 hdmi_spd_infoframe_pack_only +EXPORT_SYMBOL vmlinux 0xd2ea49b8 acpi_leave_sleep_state_prep +EXPORT_SYMBOL vmlinux 0xd2f18796 tcf_action_update_stats +EXPORT_SYMBOL vmlinux 0xd2f529d7 dev_mc_init +EXPORT_SYMBOL vmlinux 0xd2f7330a __scsi_add_device +EXPORT_SYMBOL vmlinux 0xd3019ce2 sdev_enable_disk_events +EXPORT_SYMBOL vmlinux 0xd306c313 vlan_filter_drop_vids +EXPORT_SYMBOL vmlinux 0xd31ccb06 of_machine_is_compatible +EXPORT_SYMBOL vmlinux 0xd31ee9c6 compat_ipv6_getsockopt +EXPORT_SYMBOL vmlinux 0xd34aec9b vme_irq_handler +EXPORT_SYMBOL vmlinux 0xd351ad6f jbd2__journal_start +EXPORT_SYMBOL vmlinux 0xd3543063 memcg_kmem_enabled_key +EXPORT_SYMBOL vmlinux 0xd3559ef4 __memset +EXPORT_SYMBOL vmlinux 0xd35a6d31 mempool_kmalloc +EXPORT_SYMBOL vmlinux 0xd36dc10c get_random_u32 +EXPORT_SYMBOL vmlinux 0xd36e3d59 prandom_bytes_state +EXPORT_SYMBOL vmlinux 0xd3a42f29 dquot_quota_sync +EXPORT_SYMBOL vmlinux 0xd3a60019 mipi_dsi_driver_unregister +EXPORT_SYMBOL vmlinux 0xd3b7f5a7 dma_get_sgtable_attrs +EXPORT_SYMBOL vmlinux 0xd3bdea65 pfifo_qdisc_ops +EXPORT_SYMBOL vmlinux 0xd3c980f4 set_cached_acl +EXPORT_SYMBOL vmlinux 0xd3d4d233 register_tcf_proto_ops +EXPORT_SYMBOL vmlinux 0xd3d796d7 tcf_register_action +EXPORT_SYMBOL vmlinux 0xd3d95339 __skb_pad +EXPORT_SYMBOL vmlinux 0xd3e32b90 mdio_device_remove +EXPORT_SYMBOL vmlinux 0xd3e3fb4f pci_assign_resource +EXPORT_SYMBOL vmlinux 0xd3eaf1ed devlink_dpipe_entry_clear +EXPORT_SYMBOL vmlinux 0xd3fa8919 find_inode_nowait +EXPORT_SYMBOL vmlinux 0xd3fba534 qcom_scm_set_cold_boot_addr +EXPORT_SYMBOL vmlinux 0xd406d266 fb_mode_is_equal +EXPORT_SYMBOL vmlinux 0xd4201dac register_console +EXPORT_SYMBOL vmlinux 0xd4339de8 qcom_scm_pas_init_image +EXPORT_SYMBOL vmlinux 0xd43cc1aa try_to_writeback_inodes_sb +EXPORT_SYMBOL vmlinux 0xd44417c5 blk_mq_init_queue +EXPORT_SYMBOL vmlinux 0xd44cfc5d md_bitmap_startwrite +EXPORT_SYMBOL vmlinux 0xd45cc6ca bin2hex +EXPORT_SYMBOL vmlinux 0xd45ec0a5 input_register_handle +EXPORT_SYMBOL vmlinux 0xd45ed2b6 pnp_unregister_card_driver +EXPORT_SYMBOL vmlinux 0xd46e9707 dev_lstats_read +EXPORT_SYMBOL vmlinux 0xd470e842 path_is_under +EXPORT_SYMBOL vmlinux 0xd4755a82 __cgroup_bpf_run_filter_sk +EXPORT_SYMBOL vmlinux 0xd4835ef8 dmi_check_system +EXPORT_SYMBOL vmlinux 0xd48e2b4b __i2c_transfer +EXPORT_SYMBOL vmlinux 0xd49cf534 ip6_route_me_harder +EXPORT_SYMBOL vmlinux 0xd49fdd50 d_alloc +EXPORT_SYMBOL vmlinux 0xd4a69d20 qm_channel_caam +EXPORT_SYMBOL vmlinux 0xd4bb4a82 inet6addr_validator_notifier_call_chain +EXPORT_SYMBOL vmlinux 0xd4c2294f tcf_exts_change +EXPORT_SYMBOL vmlinux 0xd4d1983c udplite_table +EXPORT_SYMBOL vmlinux 0xd4d63a49 dquot_destroy +EXPORT_SYMBOL vmlinux 0xd4e159f0 tcf_exts_dump +EXPORT_SYMBOL vmlinux 0xd4fa5a87 __kfifo_dma_out_prepare +EXPORT_SYMBOL vmlinux 0xd5076380 phy_ethtool_ksettings_set +EXPORT_SYMBOL vmlinux 0xd5162f8c fscrypt_decrypt_pagecache_blocks +EXPORT_SYMBOL vmlinux 0xd5263820 mb_cache_destroy +EXPORT_SYMBOL vmlinux 0xd52c3fcd tcp_getsockopt +EXPORT_SYMBOL vmlinux 0xd5346bfc acpi_get_possible_resources +EXPORT_SYMBOL vmlinux 0xd535512f mmc_flush_cache +EXPORT_SYMBOL vmlinux 0xd535e7b2 sock_cmsg_send +EXPORT_SYMBOL vmlinux 0xd5460b78 poll_initwait +EXPORT_SYMBOL vmlinux 0xd548e85f tcp_parse_options +EXPORT_SYMBOL vmlinux 0xd556ef12 device_add_disk_no_queue_reg +EXPORT_SYMBOL vmlinux 0xd55b6baa ppp_unit_number +EXPORT_SYMBOL vmlinux 0xd56b3bd7 phy_loopback +EXPORT_SYMBOL vmlinux 0xd5a2daff inet_csk_complete_hashdance +EXPORT_SYMBOL vmlinux 0xd5a86493 mipi_dsi_dcs_get_pixel_format +EXPORT_SYMBOL vmlinux 0xd5abdc40 rpmh_write_async +EXPORT_SYMBOL vmlinux 0xd5b3d0d5 xxh64_copy_state +EXPORT_SYMBOL vmlinux 0xd5d536d3 skb_seq_read +EXPORT_SYMBOL vmlinux 0xd5d7ec74 nvm_dev_dma_free +EXPORT_SYMBOL vmlinux 0xd5d84312 netif_device_attach +EXPORT_SYMBOL vmlinux 0xd5e48e7c generic_file_readonly_mmap +EXPORT_SYMBOL vmlinux 0xd5e8b260 pci_read_config_dword +EXPORT_SYMBOL vmlinux 0xd5fd90f1 prepare_to_wait +EXPORT_SYMBOL vmlinux 0xd60736ec gf128mul_free_64k +EXPORT_SYMBOL vmlinux 0xd624da9b skb_clone +EXPORT_SYMBOL vmlinux 0xd62b1e45 trace_print_flags_seq +EXPORT_SYMBOL vmlinux 0xd62ecd49 rps_sock_flow_table +EXPORT_SYMBOL vmlinux 0xd63fd8d1 utf8nagemax +EXPORT_SYMBOL vmlinux 0xd643239a acpi_leave_sleep_state +EXPORT_SYMBOL vmlinux 0xd668d8e4 input_allocate_device +EXPORT_SYMBOL vmlinux 0xd67cade8 jbd2_journal_try_to_free_buffers +EXPORT_SYMBOL vmlinux 0xd67efe0d dquot_alloc +EXPORT_SYMBOL vmlinux 0xd688716b dm_kcopyd_client_create +EXPORT_SYMBOL vmlinux 0xd68c5a1f adjust_resource +EXPORT_SYMBOL vmlinux 0xd690517b pfifo_fast_ops +EXPORT_SYMBOL vmlinux 0xd691bca6 kern_path +EXPORT_SYMBOL vmlinux 0xd691c6a9 unregister_sysctl_table +EXPORT_SYMBOL vmlinux 0xd69abb52 ihold +EXPORT_SYMBOL vmlinux 0xd6a91f54 twl_i2c_read +EXPORT_SYMBOL vmlinux 0xd6afcb44 __quota_error +EXPORT_SYMBOL vmlinux 0xd6b65a09 stop_tty +EXPORT_SYMBOL vmlinux 0xd6eaaea1 full_name_hash +EXPORT_SYMBOL vmlinux 0xd6eba06e dentry_open +EXPORT_SYMBOL vmlinux 0xd6ee688f vmalloc +EXPORT_SYMBOL vmlinux 0xd6fa8979 sock_alloc_send_skb +EXPORT_SYMBOL vmlinux 0xd6fde043 is_module_sig_enforced +EXPORT_SYMBOL vmlinux 0xd6fe8886 blk_integrity_merge_rq +EXPORT_SYMBOL vmlinux 0xd70d35a1 gf128mul_4k_bbe +EXPORT_SYMBOL vmlinux 0xd70f62b6 acpi_os_execute +EXPORT_SYMBOL vmlinux 0xd710abac vlan_vids_add_by_dev +EXPORT_SYMBOL vmlinux 0xd714a137 neigh_seq_stop +EXPORT_SYMBOL vmlinux 0xd71c1eae rproc_shutdown +EXPORT_SYMBOL vmlinux 0xd7322dc2 __pci_register_driver +EXPORT_SYMBOL vmlinux 0xd73309c1 iov_iter_revert +EXPORT_SYMBOL vmlinux 0xd738ca1b phy_unregister_fixup_for_uid +EXPORT_SYMBOL vmlinux 0xd764a7cc __sb_end_write +EXPORT_SYMBOL vmlinux 0xd79191da xfrm_state_walk +EXPORT_SYMBOL vmlinux 0xd799b732 truncate_setsize +EXPORT_SYMBOL vmlinux 0xd7a7b169 fman_reset_mac +EXPORT_SYMBOL vmlinux 0xd7a9f571 skb_mac_gso_segment +EXPORT_SYMBOL vmlinux 0xd7c72e0e sock_alloc_send_pskb +EXPORT_SYMBOL vmlinux 0xd7c81200 read_cache_pages +EXPORT_SYMBOL vmlinux 0xd7cb9342 get_watch_queue +EXPORT_SYMBOL vmlinux 0xd7d280ad irq_poll_complete +EXPORT_SYMBOL vmlinux 0xd7e320f6 security_path_mknod +EXPORT_SYMBOL vmlinux 0xd7e56a4e simple_strtoll +EXPORT_SYMBOL vmlinux 0xd7f6ec4a inet6_release +EXPORT_SYMBOL vmlinux 0xd7feadd7 __hw_addr_sync_dev +EXPORT_SYMBOL vmlinux 0xd7ff1b8a __ashlti3 +EXPORT_SYMBOL vmlinux 0xd8031d23 tcp_seq_start +EXPORT_SYMBOL vmlinux 0xd8131274 qman_alloc_cgrid_range +EXPORT_SYMBOL vmlinux 0xd828f063 xudma_tchanrt_write +EXPORT_SYMBOL vmlinux 0xd8400b02 dma_async_device_register +EXPORT_SYMBOL vmlinux 0xd8595001 skb_tx_error +EXPORT_SYMBOL vmlinux 0xd8602b6a tun_is_xdp_frame +EXPORT_SYMBOL vmlinux 0xd868eb7e console_start +EXPORT_SYMBOL vmlinux 0xd88abf0e unregister_console +EXPORT_SYMBOL vmlinux 0xd8918f9a param_get_byte +EXPORT_SYMBOL vmlinux 0xd899672d __neigh_set_probe_once +EXPORT_SYMBOL vmlinux 0xd89da37f movable_zone +EXPORT_SYMBOL vmlinux 0xd8a994eb scsi_extd_sense_format +EXPORT_SYMBOL vmlinux 0xd8b485cd input_unregister_device +EXPORT_SYMBOL vmlinux 0xd8df08ac acpi_handle_printk +EXPORT_SYMBOL vmlinux 0xd8e33bb3 qman_get_qm_portal_config +EXPORT_SYMBOL vmlinux 0xd8f10003 md_bitmap_sync_with_cluster +EXPORT_SYMBOL vmlinux 0xd8f544b3 mipi_dsi_dcs_set_display_brightness +EXPORT_SYMBOL vmlinux 0xd90cb249 ZSTD_getBlockSizeMax +EXPORT_SYMBOL vmlinux 0xd92deb6b acpi_evaluate_object +EXPORT_SYMBOL vmlinux 0xd9491c14 xa_destroy +EXPORT_SYMBOL vmlinux 0xd94e9898 napi_gro_receive +EXPORT_SYMBOL vmlinux 0xd97bba34 qdisc_warn_nonwc +EXPORT_SYMBOL vmlinux 0xd97dc3da ip6_frag_next +EXPORT_SYMBOL vmlinux 0xd985dc99 mempool_free_pages +EXPORT_SYMBOL vmlinux 0xd98fa792 blkdev_put +EXPORT_SYMBOL vmlinux 0xd99a6b3a ww_mutex_lock +EXPORT_SYMBOL vmlinux 0xd9a5ea54 __init_waitqueue_head +EXPORT_SYMBOL vmlinux 0xd9b85ef6 lockref_get +EXPORT_SYMBOL vmlinux 0xd9c6f5c2 netpoll_poll_disable +EXPORT_SYMBOL vmlinux 0xd9d20d98 acpi_bus_register_driver +EXPORT_SYMBOL vmlinux 0xd9d8cb14 param_get_uint +EXPORT_SYMBOL vmlinux 0xd9d8fd16 register_restart_handler +EXPORT_SYMBOL vmlinux 0xd9d952d1 crypto_aes_sbox +EXPORT_SYMBOL vmlinux 0xd9e8aee7 refcount_dec_and_lock +EXPORT_SYMBOL vmlinux 0xd9e9e5b2 dev_get_stats +EXPORT_SYMBOL vmlinux 0xda10443c xudma_tchan_get_id +EXPORT_SYMBOL vmlinux 0xda15e886 netdev_adjacent_change_abort +EXPORT_SYMBOL vmlinux 0xda1913f0 neigh_seq_next +EXPORT_SYMBOL vmlinux 0xda3d10a8 security_tun_dev_open +EXPORT_SYMBOL vmlinux 0xda4b0cc1 sock_create_kern +EXPORT_SYMBOL vmlinux 0xda5057e2 inet_csk_accept +EXPORT_SYMBOL vmlinux 0xda6a0b78 vlan_vids_del_by_dev +EXPORT_SYMBOL vmlinux 0xda72a7ec ZSTD_nextInputType +EXPORT_SYMBOL vmlinux 0xda7ede99 add_watch_to_object +EXPORT_SYMBOL vmlinux 0xda81551a of_find_node_by_name +EXPORT_SYMBOL vmlinux 0xda872864 security_locked_down +EXPORT_SYMBOL vmlinux 0xda89ea3b ip_idents_reserve +EXPORT_SYMBOL vmlinux 0xda9fc7ae kstrtobool_from_user +EXPORT_SYMBOL vmlinux 0xdaba6b83 skb_page_frag_refill +EXPORT_SYMBOL vmlinux 0xdabf3bca __ip_dev_find +EXPORT_SYMBOL vmlinux 0xdac2fe4b send_sig +EXPORT_SYMBOL vmlinux 0xdac4913a bitmap_allocate_region +EXPORT_SYMBOL vmlinux 0xdadebab4 inet6_offloads +EXPORT_SYMBOL vmlinux 0xdb1b3a03 __dquot_alloc_space +EXPORT_SYMBOL vmlinux 0xdb2daee5 mdiobus_write_nested +EXPORT_SYMBOL vmlinux 0xdb31e2b8 pci_unmap_rom +EXPORT_SYMBOL vmlinux 0xdb55c076 radix_tree_iter_resume +EXPORT_SYMBOL vmlinux 0xdb678e6e simple_get_link +EXPORT_SYMBOL vmlinux 0xdb68bbad rfkill_destroy +EXPORT_SYMBOL vmlinux 0xdb6d9c36 dev_pre_changeaddr_notify +EXPORT_SYMBOL vmlinux 0xdb760f52 __kfifo_free +EXPORT_SYMBOL vmlinux 0xdb90c2c3 gnet_stats_copy_queue +EXPORT_SYMBOL vmlinux 0xdba28cbb dget_parent +EXPORT_SYMBOL vmlinux 0xdbbc09e0 scsi_block_requests +EXPORT_SYMBOL vmlinux 0xdbcf041a acpi_install_address_space_handler +EXPORT_SYMBOL vmlinux 0xdbdf6c92 ioport_resource +EXPORT_SYMBOL vmlinux 0xdbe55593 pm860x_page_bulk_read +EXPORT_SYMBOL vmlinux 0xdbf3e554 xfrm_input_unregister_afinfo +EXPORT_SYMBOL vmlinux 0xdbf5aa5f kernel_write +EXPORT_SYMBOL vmlinux 0xdc14eda7 pci_pci_problems +EXPORT_SYMBOL vmlinux 0xdc21989f input_get_poll_interval +EXPORT_SYMBOL vmlinux 0xdc34158f fman_port_init +EXPORT_SYMBOL vmlinux 0xdc3bc4ee pci_get_domain_bus_and_slot +EXPORT_SYMBOL vmlinux 0xdc3fcbc9 __sw_hweight8 +EXPORT_SYMBOL vmlinux 0xdc45e304 dma_async_tx_descriptor_init +EXPORT_SYMBOL vmlinux 0xdc49c198 reciprocal_value_adv +EXPORT_SYMBOL vmlinux 0xdc512134 backlight_register_notifier +EXPORT_SYMBOL vmlinux 0xdc61abe1 kernel_accept +EXPORT_SYMBOL vmlinux 0xdca1fefe __cleancache_init_shared_fs +EXPORT_SYMBOL vmlinux 0xdca7bef1 acpi_bus_unregister_driver +EXPORT_SYMBOL vmlinux 0xdca8c3d4 logic_outb +EXPORT_SYMBOL vmlinux 0xdcaaf5ac mmc_can_discard +EXPORT_SYMBOL vmlinux 0xdcafa717 of_platform_bus_probe +EXPORT_SYMBOL vmlinux 0xdcb764ad memset +EXPORT_SYMBOL vmlinux 0xdccff7fe iptun_encaps +EXPORT_SYMBOL vmlinux 0xdcdf832b __skb_get_hash +EXPORT_SYMBOL vmlinux 0xdcfb179d __register_binfmt +EXPORT_SYMBOL vmlinux 0xdd06add5 mmc_gpio_get_ro +EXPORT_SYMBOL vmlinux 0xdd0790b0 tty_hangup +EXPORT_SYMBOL vmlinux 0xdd0abd2a md_reap_sync_thread +EXPORT_SYMBOL vmlinux 0xdd18a993 acpi_check_dsm +EXPORT_SYMBOL vmlinux 0xdd2c169b mb_cache_create +EXPORT_SYMBOL vmlinux 0xdd2cacff block_page_mkwrite +EXPORT_SYMBOL vmlinux 0xdd3e9b5d dmaenginem_async_device_register +EXPORT_SYMBOL vmlinux 0xdd4daa5d phy_reset_after_clk_enable +EXPORT_SYMBOL vmlinux 0xdd64e639 strscpy +EXPORT_SYMBOL vmlinux 0xdd6b94dd setattr_copy +EXPORT_SYMBOL vmlinux 0xdd742d72 __sg_free_table +EXPORT_SYMBOL vmlinux 0xdd7e3192 qcom_scm_pas_auth_and_reset +EXPORT_SYMBOL vmlinux 0xdd8166a1 dma_fence_free +EXPORT_SYMBOL vmlinux 0xdd8184f4 icmpv6_send +EXPORT_SYMBOL vmlinux 0xdd849d51 scsi_get_sense_info_fld +EXPORT_SYMBOL vmlinux 0xdd9fa12d skb_kill_datagram +EXPORT_SYMBOL vmlinux 0xddad7952 acpi_dbg_level +EXPORT_SYMBOL vmlinux 0xddcb8651 compat_import_iovec +EXPORT_SYMBOL vmlinux 0xddf6ad7a completion_done +EXPORT_SYMBOL vmlinux 0xde0a7465 iter_file_splice_write +EXPORT_SYMBOL vmlinux 0xde101608 sock_no_getsockopt +EXPORT_SYMBOL vmlinux 0xde16fb2f get_user_pages_locked +EXPORT_SYMBOL vmlinux 0xde2153d4 netdev_get_xmit_slave +EXPORT_SYMBOL vmlinux 0xde23cd32 seq_open +EXPORT_SYMBOL vmlinux 0xde293f9e add_wait_queue_exclusive +EXPORT_SYMBOL vmlinux 0xde29604f vmf_insert_pfn +EXPORT_SYMBOL vmlinux 0xde47ec18 configfs_register_group +EXPORT_SYMBOL vmlinux 0xde4d4ace dim_calc_stats +EXPORT_SYMBOL vmlinux 0xde5f5f35 framebuffer_release +EXPORT_SYMBOL vmlinux 0xde7324fe dump_align +EXPORT_SYMBOL vmlinux 0xde73cf2a pci_find_resource +EXPORT_SYMBOL vmlinux 0xde7ae724 __nlmsg_put +EXPORT_SYMBOL vmlinux 0xde8b836d pci_get_slot +EXPORT_SYMBOL vmlinux 0xde8d4a6b pci_setup_cardbus +EXPORT_SYMBOL vmlinux 0xde908fd7 pcim_iomap_regions_request_all +EXPORT_SYMBOL vmlinux 0xde92ab61 device_match_acpi_dev +EXPORT_SYMBOL vmlinux 0xdeb62eca udp_seq_ops +EXPORT_SYMBOL vmlinux 0xded39a6b gen_kill_estimator +EXPORT_SYMBOL vmlinux 0xded48033 xfrm_policy_unregister_afinfo +EXPORT_SYMBOL vmlinux 0xded6a415 acpi_get_object_info +EXPORT_SYMBOL vmlinux 0xdee365b0 _raw_write_trylock +EXPORT_SYMBOL vmlinux 0xdee3c7ae security_inode_getsecctx +EXPORT_SYMBOL vmlinux 0xdef7c893 fb_match_mode +EXPORT_SYMBOL vmlinux 0xdefafee2 serial8250_do_pm +EXPORT_SYMBOL vmlinux 0xdf0cd3ce filp_close +EXPORT_SYMBOL vmlinux 0xdf1ca8cd mmc_add_host +EXPORT_SYMBOL vmlinux 0xdf1e2db2 dma_direct_map_page +EXPORT_SYMBOL vmlinux 0xdf2c2742 rb_last +EXPORT_SYMBOL vmlinux 0xdf327b5f security_cred_getsecid +EXPORT_SYMBOL vmlinux 0xdf36914b xa_find_after +EXPORT_SYMBOL vmlinux 0xdf38e5f7 register_netdevice_notifier_net +EXPORT_SYMBOL vmlinux 0xdf4637c2 proc_mkdir_mode +EXPORT_SYMBOL vmlinux 0xdf48c217 phy_sfp_probe +EXPORT_SYMBOL vmlinux 0xdf54a8f7 netlink_unregister_notifier +EXPORT_SYMBOL vmlinux 0xdf62dde8 ether_setup +EXPORT_SYMBOL vmlinux 0xdf6b082f proc_dointvec_jiffies +EXPORT_SYMBOL vmlinux 0xdf77ff55 scsi_change_queue_depth +EXPORT_SYMBOL vmlinux 0xdf7cda6c key_link +EXPORT_SYMBOL vmlinux 0xdf8c695a __ndelay +EXPORT_SYMBOL vmlinux 0xdf929370 fs_overflowgid +EXPORT_SYMBOL vmlinux 0xdf93b9d8 timespec64_to_jiffies +EXPORT_SYMBOL vmlinux 0xdfac117b lease_get_mtime +EXPORT_SYMBOL vmlinux 0xdfacc647 kobject_del +EXPORT_SYMBOL vmlinux 0xdfae5460 skb_checksum +EXPORT_SYMBOL vmlinux 0xdfafda7b d_splice_alias +EXPORT_SYMBOL vmlinux 0xdfb14029 down_read_killable +EXPORT_SYMBOL vmlinux 0xdfb4375d of_parse_phandle +EXPORT_SYMBOL vmlinux 0xdfb8cac9 amba_device_register +EXPORT_SYMBOL vmlinux 0xdfc33812 d_mark_dontcache +EXPORT_SYMBOL vmlinux 0xdfcc992c current_work +EXPORT_SYMBOL vmlinux 0xdfcd620f sget_fc +EXPORT_SYMBOL vmlinux 0xdfdfa9e7 utf8nfdi +EXPORT_SYMBOL vmlinux 0xdfe24ae7 inet_addr_type_dev_table +EXPORT_SYMBOL vmlinux 0xdfef8b8f dev_get_flags +EXPORT_SYMBOL vmlinux 0xdff905e5 vme_slave_free +EXPORT_SYMBOL vmlinux 0xdffb744b frame_vector_to_pfns +EXPORT_SYMBOL vmlinux 0xdffc80fc vesa_modes +EXPORT_SYMBOL vmlinux 0xe0081d0f udp_pre_connect +EXPORT_SYMBOL vmlinux 0xe013c243 padata_free_shell +EXPORT_SYMBOL vmlinux 0xe02c9c92 __xa_erase +EXPORT_SYMBOL vmlinux 0xe02eb3be netdev_refcnt_read +EXPORT_SYMBOL vmlinux 0xe03a689d dma_fence_array_ops +EXPORT_SYMBOL vmlinux 0xe03bec92 in_dev_finish_destroy +EXPORT_SYMBOL vmlinux 0xe044dc86 bio_chain +EXPORT_SYMBOL vmlinux 0xe046ef72 clear_wb_congested +EXPORT_SYMBOL vmlinux 0xe062476e sock_no_recvmsg +EXPORT_SYMBOL vmlinux 0xe075db56 __sk_receive_skb +EXPORT_SYMBOL vmlinux 0xe07e5f44 acpi_reconfig_notifier_unregister +EXPORT_SYMBOL vmlinux 0xe082e88d acpi_check_address_range +EXPORT_SYMBOL vmlinux 0xe085dbee fb_class +EXPORT_SYMBOL vmlinux 0xe0875eb1 kstrtobool +EXPORT_SYMBOL vmlinux 0xe0955f76 utf8_casefold +EXPORT_SYMBOL vmlinux 0xe095f4a2 __udp_disconnect +EXPORT_SYMBOL vmlinux 0xe0b13336 argv_free +EXPORT_SYMBOL vmlinux 0xe0bef318 icst_hz_to_vco +EXPORT_SYMBOL vmlinux 0xe0c4883d sock_queue_rcv_skb +EXPORT_SYMBOL vmlinux 0xe0d6df30 blk_put_request +EXPORT_SYMBOL vmlinux 0xe0e6990b crypto_sha256_finup +EXPORT_SYMBOL vmlinux 0xe10878ef jbd2_journal_start_commit +EXPORT_SYMBOL vmlinux 0xe113bbbc csum_partial +EXPORT_SYMBOL vmlinux 0xe1152825 dev_addr_init +EXPORT_SYMBOL vmlinux 0xe11ca997 ZSTD_getDictID_fromDict +EXPORT_SYMBOL vmlinux 0xe123f3d9 dma_fence_release +EXPORT_SYMBOL vmlinux 0xe12bda79 vme_dma_free_attribute +EXPORT_SYMBOL vmlinux 0xe138fb8c percpu_counter_add_batch +EXPORT_SYMBOL vmlinux 0xe13cd8a7 dmi_name_in_vendors +EXPORT_SYMBOL vmlinux 0xe13d5d07 kstrtou16_from_user +EXPORT_SYMBOL vmlinux 0xe1436aed trace_raw_output_prep +EXPORT_SYMBOL vmlinux 0xe1563afb input_alloc_absinfo +EXPORT_SYMBOL vmlinux 0xe16d73cd locks_mandatory_area +EXPORT_SYMBOL vmlinux 0xe1a3a9c1 __scm_send +EXPORT_SYMBOL vmlinux 0xe1a41cae tcp_v4_md5_lookup +EXPORT_SYMBOL vmlinux 0xe1a4f16a secure_ipv6_port_ephemeral +EXPORT_SYMBOL vmlinux 0xe1be5a7e pm860x_bulk_read +EXPORT_SYMBOL vmlinux 0xe1cd7c25 nf_hook_slow_list +EXPORT_SYMBOL vmlinux 0xe1ceb34f rproc_alloc +EXPORT_SYMBOL vmlinux 0xe1dcf64a audit_log_format +EXPORT_SYMBOL vmlinux 0xe1e0d4a5 fs_param_is_string +EXPORT_SYMBOL vmlinux 0xe1e7e40c rtnl_nla_parse_ifla +EXPORT_SYMBOL vmlinux 0xe1e9f11d eth_platform_get_mac_address +EXPORT_SYMBOL vmlinux 0xe1f64200 pci_msix_vec_count +EXPORT_SYMBOL vmlinux 0xe1fe1579 generic_splice_sendpage +EXPORT_SYMBOL vmlinux 0xe21ed099 phy_driver_unregister +EXPORT_SYMBOL vmlinux 0xe21f18ac __genradix_iter_peek +EXPORT_SYMBOL vmlinux 0xe23d6668 qdisc_reset +EXPORT_SYMBOL vmlinux 0xe245007c fman_get_mem_region +EXPORT_SYMBOL vmlinux 0xe24a3508 __dev_kfree_skb_any +EXPORT_SYMBOL vmlinux 0xe273d75d alloc_cpu_rmap +EXPORT_SYMBOL vmlinux 0xe27d19a4 uart_register_driver +EXPORT_SYMBOL vmlinux 0xe285f30f tcp_sock_set_nodelay +EXPORT_SYMBOL vmlinux 0xe287951a frontswap_register_ops +EXPORT_SYMBOL vmlinux 0xe28d8da7 vfs_mknod +EXPORT_SYMBOL vmlinux 0xe2946baf nf_register_sockopt +EXPORT_SYMBOL vmlinux 0xe29a1729 mount_nodev +EXPORT_SYMBOL vmlinux 0xe2a9ca17 tcf_idr_cleanup +EXPORT_SYMBOL vmlinux 0xe2bab14a mdiobus_unregister_device +EXPORT_SYMBOL vmlinux 0xe2d5255a strcmp +EXPORT_SYMBOL vmlinux 0xe2e0c7c6 __flush_icache_range +EXPORT_SYMBOL vmlinux 0xe2ffeef3 scsi_req_init +EXPORT_SYMBOL vmlinux 0xe304f3fa read_cache_page +EXPORT_SYMBOL vmlinux 0xe32ab4d8 xxh64_digest +EXPORT_SYMBOL vmlinux 0xe331f2dd pps_register_source +EXPORT_SYMBOL vmlinux 0xe339c8e1 fb_firmware_edid +EXPORT_SYMBOL vmlinux 0xe33b92a6 ptp_clock_register +EXPORT_SYMBOL vmlinux 0xe34ed0c1 PageMovable +EXPORT_SYMBOL vmlinux 0xe34ff368 skb_put +EXPORT_SYMBOL vmlinux 0xe357de2d dquot_scan_active +EXPORT_SYMBOL vmlinux 0xe3a0f77b vga_client_register +EXPORT_SYMBOL vmlinux 0xe3a7025d kill_litter_super +EXPORT_SYMBOL vmlinux 0xe3ace69d sk_capable +EXPORT_SYMBOL vmlinux 0xe3c754f9 key_reject_and_link +EXPORT_SYMBOL vmlinux 0xe3d4d8da no_seek_end_llseek_size +EXPORT_SYMBOL vmlinux 0xe3e90197 dev_set_mtu +EXPORT_SYMBOL vmlinux 0xe3ec2f2b alloc_chrdev_region +EXPORT_SYMBOL vmlinux 0xe3ee1497 nvdimm_namespace_capacity +EXPORT_SYMBOL vmlinux 0xe3f271b3 max8925_bulk_write +EXPORT_SYMBOL vmlinux 0xe3fdb901 pci_clear_master +EXPORT_SYMBOL vmlinux 0xe3ff2c41 get_random_u64 +EXPORT_SYMBOL vmlinux 0xe40976c0 pnp_range_reserved +EXPORT_SYMBOL vmlinux 0xe40b5a3e tty_flip_buffer_push +EXPORT_SYMBOL vmlinux 0xe40c37ea down_write_trylock +EXPORT_SYMBOL vmlinux 0xe41476d9 ZSTD_getParams +EXPORT_SYMBOL vmlinux 0xe4329092 __ctzdi2 +EXPORT_SYMBOL vmlinux 0xe434a286 netif_skb_features +EXPORT_SYMBOL vmlinux 0xe441e95a refcount_dec_not_one +EXPORT_SYMBOL vmlinux 0xe45a1026 cdev_alloc +EXPORT_SYMBOL vmlinux 0xe47a5c6d mmc_command_done +EXPORT_SYMBOL vmlinux 0xe4837fa7 freeze_bdev +EXPORT_SYMBOL vmlinux 0xe4880a33 dev_set_allmulti +EXPORT_SYMBOL vmlinux 0xe49860af compat_tcp_getsockopt +EXPORT_SYMBOL vmlinux 0xe498d710 xsk_umem_consume_tx +EXPORT_SYMBOL vmlinux 0xe4b331b1 dev_mc_sync_multiple +EXPORT_SYMBOL vmlinux 0xe4b35579 param_ops_int +EXPORT_SYMBOL vmlinux 0xe4bbc1dd kimage_voffset +EXPORT_SYMBOL vmlinux 0xe4d1fb63 kmem_cache_create +EXPORT_SYMBOL vmlinux 0xe4d42e9e dquot_set_dqblk +EXPORT_SYMBOL vmlinux 0xe50a0538 devfreq_unregister_notifier +EXPORT_SYMBOL vmlinux 0xe5112f6d inet_rtx_syn_ack +EXPORT_SYMBOL vmlinux 0xe5122941 ps2_init +EXPORT_SYMBOL vmlinux 0xe5142430 generic_file_read_iter +EXPORT_SYMBOL vmlinux 0xe523ad75 synchronize_irq +EXPORT_SYMBOL vmlinux 0xe526dce4 path_get +EXPORT_SYMBOL vmlinux 0xe528d274 dev_remove_offload +EXPORT_SYMBOL vmlinux 0xe53002d6 param_ops_bint +EXPORT_SYMBOL vmlinux 0xe5530b99 devm_alloc_etherdev_mqs +EXPORT_SYMBOL vmlinux 0xe57ecffb nd_region_release_lane +EXPORT_SYMBOL vmlinux 0xe57feefb qcom_scm_ocmem_unlock +EXPORT_SYMBOL vmlinux 0xe58090ca security_ib_endport_manage_subnet +EXPORT_SYMBOL vmlinux 0xe583ba5f mii_ethtool_gset +EXPORT_SYMBOL vmlinux 0xe5867808 dlci_ioctl_set +EXPORT_SYMBOL vmlinux 0xe590dea3 sk_busy_loop_end +EXPORT_SYMBOL vmlinux 0xe5a0bc0b neigh_sysctl_unregister +EXPORT_SYMBOL vmlinux 0xe5a59cc8 register_netdevice_notifier_dev_net +EXPORT_SYMBOL vmlinux 0xe5bc9a53 slhc_free +EXPORT_SYMBOL vmlinux 0xe5c60bd2 percpu_counter_set +EXPORT_SYMBOL vmlinux 0xe5c78a99 do_blank_screen +EXPORT_SYMBOL vmlinux 0xe5e13b78 cdev_init +EXPORT_SYMBOL vmlinux 0xe5e50372 phy_get_pause +EXPORT_SYMBOL vmlinux 0xe5f68f58 genphy_write_mmd_unsupported +EXPORT_SYMBOL vmlinux 0xe6011d1f tty_insert_flip_string_flags +EXPORT_SYMBOL vmlinux 0xe613a798 inet_addr_is_any +EXPORT_SYMBOL vmlinux 0xe6317339 phy_find_first +EXPORT_SYMBOL vmlinux 0xe634f488 neigh_carrier_down +EXPORT_SYMBOL vmlinux 0xe64280de md_write_inc +EXPORT_SYMBOL vmlinux 0xe691ac7f ZSTD_decompressBegin +EXPORT_SYMBOL vmlinux 0xe6aa562c nobh_write_begin +EXPORT_SYMBOL vmlinux 0xe6b8cf95 scm_fp_dup +EXPORT_SYMBOL vmlinux 0xe6ebb6fe gnet_stats_finish_copy +EXPORT_SYMBOL vmlinux 0xe6ed8b69 __SetPageMovable +EXPORT_SYMBOL vmlinux 0xe71d6cc1 skb_recv_datagram +EXPORT_SYMBOL vmlinux 0xe7257ab8 xa_store_range +EXPORT_SYMBOL vmlinux 0xe7324b9a utf8nfdicf +EXPORT_SYMBOL vmlinux 0xe733b6ec kernel_read +EXPORT_SYMBOL vmlinux 0xe73ff6d0 get_ipc_ns_exported +EXPORT_SYMBOL vmlinux 0xe7600274 dm_mq_kick_requeue_list +EXPORT_SYMBOL vmlinux 0xe7698027 ioremap_cache +EXPORT_SYMBOL vmlinux 0xe76a5273 sock_wake_async +EXPORT_SYMBOL vmlinux 0xe78505c5 fman_get_qman_channel_id +EXPORT_SYMBOL vmlinux 0xe7866d98 tc_setup_cb_replace +EXPORT_SYMBOL vmlinux 0xe7894401 blk_mq_start_request +EXPORT_SYMBOL vmlinux 0xe78c329e abx500_event_registers_startup_state_get +EXPORT_SYMBOL vmlinux 0xe78ecc38 input_register_handler +EXPORT_SYMBOL vmlinux 0xe797866d flow_rule_match_icmp +EXPORT_SYMBOL vmlinux 0xe7a02573 ida_alloc_range +EXPORT_SYMBOL vmlinux 0xe7b0353b __cpu_active_mask +EXPORT_SYMBOL vmlinux 0xe7b5c59a nobh_write_end +EXPORT_SYMBOL vmlinux 0xe7bf2c29 xfrm_state_alloc +EXPORT_SYMBOL vmlinux 0xe7d3c4c1 __tracepoint_kmem_cache_free +EXPORT_SYMBOL vmlinux 0xe7d4daac seq_list_next +EXPORT_SYMBOL vmlinux 0xe7dce874 xfrm_state_delete +EXPORT_SYMBOL vmlinux 0xe7df64d0 mipi_dsi_dcs_write_buffer +EXPORT_SYMBOL vmlinux 0xe7ea0c4c is_subdir +EXPORT_SYMBOL vmlinux 0xe81c41c3 tcf_chain_get_by_act +EXPORT_SYMBOL vmlinux 0xe82927da pci_get_device +EXPORT_SYMBOL vmlinux 0xe82b83f1 xfrm_policy_insert +EXPORT_SYMBOL vmlinux 0xe83755a7 dev_loopback_xmit +EXPORT_SYMBOL vmlinux 0xe8480cea dcbnl_ieee_notify +EXPORT_SYMBOL vmlinux 0xe84f583b vfs_parse_fs_string +EXPORT_SYMBOL vmlinux 0xe85f2123 acpi_tb_unload_table +EXPORT_SYMBOL vmlinux 0xe8615857 ipv6_chk_addr +EXPORT_SYMBOL vmlinux 0xe8799e7c page_mapped +EXPORT_SYMBOL vmlinux 0xe894e872 configfs_undepend_item +EXPORT_SYMBOL vmlinux 0xe89b3c91 lock_sock_fast +EXPORT_SYMBOL vmlinux 0xe8a373a8 fscrypt_free_inode +EXPORT_SYMBOL vmlinux 0xe8b88c4e inet_pton_with_scope +EXPORT_SYMBOL vmlinux 0xe8c43c6c sock_dequeue_err_skb +EXPORT_SYMBOL vmlinux 0xe8cd9a65 dma_direct_sync_single_for_device +EXPORT_SYMBOL vmlinux 0xe8e208a7 complete_request_key +EXPORT_SYMBOL vmlinux 0xe8f24c9d __dev_get_by_index +EXPORT_SYMBOL vmlinux 0xe8fbf4fa __alloc_bucket_spinlocks +EXPORT_SYMBOL vmlinux 0xe90253f0 xudma_rflow_get +EXPORT_SYMBOL vmlinux 0xe906cf6c tty_write_room +EXPORT_SYMBOL vmlinux 0xe9083768 fscrypt_encrypt_block_inplace +EXPORT_SYMBOL vmlinux 0xe90da5bc pci_msi_vec_count +EXPORT_SYMBOL vmlinux 0xe9103373 xfrm_state_lookup_byspi +EXPORT_SYMBOL vmlinux 0xe910f00c fman_get_revision +EXPORT_SYMBOL vmlinux 0xe914e41e strcpy +EXPORT_SYMBOL vmlinux 0xe9233ac8 invalidate_bdev +EXPORT_SYMBOL vmlinux 0xe953b21f get_next_ino +EXPORT_SYMBOL vmlinux 0xe990ff75 should_remove_suid +EXPORT_SYMBOL vmlinux 0xe9ae289e kill_anon_super +EXPORT_SYMBOL vmlinux 0xe9af7397 __xa_set_mark +EXPORT_SYMBOL vmlinux 0xe9b4c1fc thermal_cdev_update +EXPORT_SYMBOL vmlinux 0xe9b66588 phy_mii_ioctl +EXPORT_SYMBOL vmlinux 0xe9c72717 bioset_integrity_create +EXPORT_SYMBOL vmlinux 0xe9c7f5b3 __task_pid_nr_ns +EXPORT_SYMBOL vmlinux 0xe9e5629e md_set_array_sectors +EXPORT_SYMBOL vmlinux 0xe9e882bc blk_queue_stack_limits +EXPORT_SYMBOL vmlinux 0xe9e8faeb efi_tpm_final_log_size +EXPORT_SYMBOL vmlinux 0xe9ed307f generic_permission +EXPORT_SYMBOL vmlinux 0xe9f7149c zlib_deflate_workspacesize +EXPORT_SYMBOL vmlinux 0xea1d6fbc netif_carrier_off +EXPORT_SYMBOL vmlinux 0xea231bdc down_write_killable +EXPORT_SYMBOL vmlinux 0xea3c8e4e scsilun_to_int +EXPORT_SYMBOL vmlinux 0xea3ee08c bmap +EXPORT_SYMBOL vmlinux 0xea4092aa jbd2_journal_revoke +EXPORT_SYMBOL vmlinux 0xea6f9a36 zlib_deflate_dfltcc_enabled +EXPORT_SYMBOL vmlinux 0xea778fab sg_pcopy_to_buffer +EXPORT_SYMBOL vmlinux 0xea7934e7 dm_put_table_device +EXPORT_SYMBOL vmlinux 0xea80dfe1 security_req_classify_flow +EXPORT_SYMBOL vmlinux 0xea8367f6 vga_get +EXPORT_SYMBOL vmlinux 0xea8ef1bd reuseport_alloc +EXPORT_SYMBOL vmlinux 0xeaa1a690 devm_ioremap_resource +EXPORT_SYMBOL vmlinux 0xeaa61d58 bdev_stack_limits +EXPORT_SYMBOL vmlinux 0xeab6f4c4 acpi_check_resource_conflict +EXPORT_SYMBOL vmlinux 0xead8c400 bman_get_bpid +EXPORT_SYMBOL vmlinux 0xeadba755 vfs_clone_file_range +EXPORT_SYMBOL vmlinux 0xeae3dfd6 __const_udelay +EXPORT_SYMBOL vmlinux 0xeaf9e986 netdev_lower_dev_get_private +EXPORT_SYMBOL vmlinux 0xeafc141f __posix_acl_chmod +EXPORT_SYMBOL vmlinux 0xeafe79fe simple_dir_operations +EXPORT_SYMBOL vmlinux 0xeb1602e7 security_sb_set_mnt_opts +EXPORT_SYMBOL vmlinux 0xeb233a45 __kmalloc +EXPORT_SYMBOL vmlinux 0xeb2391c9 gen_new_estimator +EXPORT_SYMBOL vmlinux 0xeb24f843 locks_copy_lock +EXPORT_SYMBOL vmlinux 0xeb29e84c t10_pi_type3_crc +EXPORT_SYMBOL vmlinux 0xeb37101c audit_log_end +EXPORT_SYMBOL vmlinux 0xeb44339a free_pages_exact +EXPORT_SYMBOL vmlinux 0xeb571d13 phy_attached_info +EXPORT_SYMBOL vmlinux 0xeb5fd0af noop_qdisc +EXPORT_SYMBOL vmlinux 0xeb671c64 seq_put_decimal_ll +EXPORT_SYMBOL vmlinux 0xeb7f6046 acpi_get_devices +EXPORT_SYMBOL vmlinux 0xeb8de499 tcp_seq_stop +EXPORT_SYMBOL vmlinux 0xeb8ee5a7 xsk_set_tx_need_wakeup +EXPORT_SYMBOL vmlinux 0xeb9b122b vfs_tmpfile +EXPORT_SYMBOL vmlinux 0xeb9e913d sgl_alloc_order +EXPORT_SYMBOL vmlinux 0xeba33052 param_array_ops +EXPORT_SYMBOL vmlinux 0xebb2e815 scsi_get_host_dev +EXPORT_SYMBOL vmlinux 0xebb93c5b kernel_param_unlock +EXPORT_SYMBOL vmlinux 0xebbd7819 ip6_xmit +EXPORT_SYMBOL vmlinux 0xebc53ad0 mipi_dsi_device_register_full +EXPORT_SYMBOL vmlinux 0xebdfed8b iov_iter_discard +EXPORT_SYMBOL vmlinux 0xebf33fff netdev_adjacent_change_prepare +EXPORT_SYMBOL vmlinux 0xec074031 setup_arg_pages +EXPORT_SYMBOL vmlinux 0xec237e4f xps_needed +EXPORT_SYMBOL vmlinux 0xec2b8a42 acpi_walk_namespace +EXPORT_SYMBOL vmlinux 0xec2cc45e inc_node_page_state +EXPORT_SYMBOL vmlinux 0xec2e1c8f proc_doulongvec_minmax +EXPORT_SYMBOL vmlinux 0xec372681 seq_read_iter +EXPORT_SYMBOL vmlinux 0xec41716a qman_alloc_fqid_range +EXPORT_SYMBOL vmlinux 0xec4bf62d fscrypt_fname_disk_to_usr +EXPORT_SYMBOL vmlinux 0xec4d9e3a clk_get_sys +EXPORT_SYMBOL vmlinux 0xec602bd2 phy_ethtool_ksettings_get +EXPORT_SYMBOL vmlinux 0xec73d8d2 serio_unregister_port +EXPORT_SYMBOL vmlinux 0xec7410d8 tty_unregister_device +EXPORT_SYMBOL vmlinux 0xec8374f2 param_set_charp +EXPORT_SYMBOL vmlinux 0xec84c166 vm_iomap_memory +EXPORT_SYMBOL vmlinux 0xec9bca00 kobject_set_name +EXPORT_SYMBOL vmlinux 0xecb36527 get_cached_acl +EXPORT_SYMBOL vmlinux 0xecc6a4cc ppp_input +EXPORT_SYMBOL vmlinux 0xeccc87b3 scsi_report_bus_reset +EXPORT_SYMBOL vmlinux 0xecdaf01d remove_proc_subtree +EXPORT_SYMBOL vmlinux 0xece784c2 rb_first +EXPORT_SYMBOL vmlinux 0xecef2ae3 scsi_target_resume +EXPORT_SYMBOL vmlinux 0xecf348ce path_has_submounts +EXPORT_SYMBOL vmlinux 0xecf829a6 skb_vlan_untag +EXPORT_SYMBOL vmlinux 0xecfd68ef acpi_get_node +EXPORT_SYMBOL vmlinux 0xed00c4fb acpi_os_printf +EXPORT_SYMBOL vmlinux 0xed043eff of_dev_put +EXPORT_SYMBOL vmlinux 0xed162d5f pci_disable_msi +EXPORT_SYMBOL vmlinux 0xed1d2fcb tty_register_device +EXPORT_SYMBOL vmlinux 0xed55f929 acpi_os_unmap_generic_address +EXPORT_SYMBOL vmlinux 0xed581433 ipv6_select_ident +EXPORT_SYMBOL vmlinux 0xed5fd715 generic_file_open +EXPORT_SYMBOL vmlinux 0xed6b6e02 netpoll_setup +EXPORT_SYMBOL vmlinux 0xed6e8cf0 writeback_inodes_sb_nr +EXPORT_SYMBOL vmlinux 0xed7d855f __d_drop +EXPORT_SYMBOL vmlinux 0xed84b2ae fput +EXPORT_SYMBOL vmlinux 0xed86986e pcim_pin_device +EXPORT_SYMBOL vmlinux 0xed8a2d95 memset64 +EXPORT_SYMBOL vmlinux 0xed8f07b5 reuseport_add_sock +EXPORT_SYMBOL vmlinux 0xeda6d618 blk_mq_alloc_tag_set +EXPORT_SYMBOL vmlinux 0xedbaee5e nla_strcmp +EXPORT_SYMBOL vmlinux 0xedc03953 iounmap +EXPORT_SYMBOL vmlinux 0xedc82295 mipi_dsi_host_unregister +EXPORT_SYMBOL vmlinux 0xedceb745 scsi_device_lookup +EXPORT_SYMBOL vmlinux 0xedeb5db8 inet_sendpage +EXPORT_SYMBOL vmlinux 0xedfdc22b blk_queue_flag_clear +EXPORT_SYMBOL vmlinux 0xee0865ff tcp_v4_mtu_reduced +EXPORT_SYMBOL vmlinux 0xee2d0fc7 _local_bh_enable +EXPORT_SYMBOL vmlinux 0xee4c5c5b compat_nf_setsockopt +EXPORT_SYMBOL vmlinux 0xee58e970 fb_add_videomode +EXPORT_SYMBOL vmlinux 0xee5e9f82 _dev_alert +EXPORT_SYMBOL vmlinux 0xee735109 scsi_track_queue_full +EXPORT_SYMBOL vmlinux 0xee75e827 unlock_new_inode +EXPORT_SYMBOL vmlinux 0xee7d7deb gen_pool_dma_zalloc +EXPORT_SYMBOL vmlinux 0xee7eb9e1 pnp_platform_devices +EXPORT_SYMBOL vmlinux 0xee8d74d6 jiffies64_to_nsecs +EXPORT_SYMBOL vmlinux 0xee91879b rb_first_postorder +EXPORT_SYMBOL vmlinux 0xee9b1b09 param_get_charp +EXPORT_SYMBOL vmlinux 0xeea91c51 dma_direct_sync_sg_for_device +EXPORT_SYMBOL vmlinux 0xeeacd4f3 kmem_cache_free_bulk +EXPORT_SYMBOL vmlinux 0xeead38cb backlight_device_unregister +EXPORT_SYMBOL vmlinux 0xeeb772b5 tcf_em_tree_dump +EXPORT_SYMBOL vmlinux 0xeec26e96 ip_check_defrag +EXPORT_SYMBOL vmlinux 0xeecf15e1 of_find_backlight +EXPORT_SYMBOL vmlinux 0xeeda014a security_inode_copy_up +EXPORT_SYMBOL vmlinux 0xef007d77 ps2_handle_response +EXPORT_SYMBOL vmlinux 0xef0f735f security_inet_conn_established +EXPORT_SYMBOL vmlinux 0xef1f8dcd skb_copy_bits +EXPORT_SYMBOL vmlinux 0xef37d91d mroute6_is_socket +EXPORT_SYMBOL vmlinux 0xef447ffa of_parse_phandle_with_args +EXPORT_SYMBOL vmlinux 0xef5c2b2e pcim_iounmap_regions +EXPORT_SYMBOL vmlinux 0xef7ee0b7 ip6_fraglist_prepare +EXPORT_SYMBOL vmlinux 0xef854378 tcp_openreq_init_rwin +EXPORT_SYMBOL vmlinux 0xef8a2bdc __sk_mem_raise_allocated +EXPORT_SYMBOL vmlinux 0xef8ac53d qcom_scm_restore_sec_cfg +EXPORT_SYMBOL vmlinux 0xef8e0978 vfs_getattr +EXPORT_SYMBOL vmlinux 0xef97c8df xfrm_unregister_type +EXPORT_SYMBOL vmlinux 0xef9d78da pskb_trim_rcsum_slow +EXPORT_SYMBOL vmlinux 0xefa6dc46 netdev_port_same_parent_id +EXPORT_SYMBOL vmlinux 0xefac4b4a mipi_dsi_dcs_enter_sleep_mode +EXPORT_SYMBOL vmlinux 0xefaf2e4f tcf_queue_work +EXPORT_SYMBOL vmlinux 0xefb61bfb cdrom_get_last_written +EXPORT_SYMBOL vmlinux 0xefc19b11 of_graph_get_remote_port +EXPORT_SYMBOL vmlinux 0xefcea2e7 acpi_warning +EXPORT_SYMBOL vmlinux 0xefd30512 __cpuhp_setup_state +EXPORT_SYMBOL vmlinux 0xefd63552 proc_create_mount_point +EXPORT_SYMBOL vmlinux 0xefe4f679 ZSTD_CCtxWorkspaceBound +EXPORT_SYMBOL vmlinux 0xefee932c acpi_get_data_full +EXPORT_SYMBOL vmlinux 0xeff608e0 kstrtos16_from_user +EXPORT_SYMBOL vmlinux 0xf0009fee put_pages_list +EXPORT_SYMBOL vmlinux 0xf008a885 seg6_hmac_init +EXPORT_SYMBOL vmlinux 0xf0126829 dma_dummy_ops +EXPORT_SYMBOL vmlinux 0xf025c4b1 gro_cells_receive +EXPORT_SYMBOL vmlinux 0xf02aa937 wait_for_completion_interruptible_timeout +EXPORT_SYMBOL vmlinux 0xf03703b1 param_set_ushort +EXPORT_SYMBOL vmlinux 0xf049c8e3 __remove_inode_hash +EXPORT_SYMBOL vmlinux 0xf05ba494 input_release_device +EXPORT_SYMBOL vmlinux 0xf05e1be3 mdiobus_get_phy +EXPORT_SYMBOL vmlinux 0xf08c67de napi_alloc_frag +EXPORT_SYMBOL vmlinux 0xf09b5d9a get_zeroed_page +EXPORT_SYMBOL vmlinux 0xf0b2419f cmd_db_read_aux_data +EXPORT_SYMBOL vmlinux 0xf0b553e9 blk_mq_stop_hw_queue +EXPORT_SYMBOL vmlinux 0xf0bfcab8 tcf_exts_terse_dump +EXPORT_SYMBOL vmlinux 0xf0ecd1c3 __mod_zone_page_state +EXPORT_SYMBOL vmlinux 0xf0ed4317 devm_pci_remap_cfgspace +EXPORT_SYMBOL vmlinux 0xf0f1e75a dcb_setapp +EXPORT_SYMBOL vmlinux 0xf102033e slhc_remember +EXPORT_SYMBOL vmlinux 0xf103c7bd flow_rule_match_cvlan +EXPORT_SYMBOL vmlinux 0xf114205f vfs_mkobj +EXPORT_SYMBOL vmlinux 0xf127b706 netdev_printk +EXPORT_SYMBOL vmlinux 0xf159b2e9 md_update_sb +EXPORT_SYMBOL vmlinux 0xf164db19 of_translate_address +EXPORT_SYMBOL vmlinux 0xf18300ad logic_inb +EXPORT_SYMBOL vmlinux 0xf195c682 fb_invert_cmaps +EXPORT_SYMBOL vmlinux 0xf1969a8e __usecs_to_jiffies +EXPORT_SYMBOL vmlinux 0xf19ff71d blk_queue_flag_set +EXPORT_SYMBOL vmlinux 0xf1a30eaa create_empty_buffers +EXPORT_SYMBOL vmlinux 0xf1a33788 sock_wfree +EXPORT_SYMBOL vmlinux 0xf1a849fe dev_uc_init +EXPORT_SYMBOL vmlinux 0xf1a85755 sock_queue_err_skb +EXPORT_SYMBOL vmlinux 0xf1b72fcf inet_listen +EXPORT_SYMBOL vmlinux 0xf1c5d868 build_skb +EXPORT_SYMBOL vmlinux 0xf1d00628 __cpuhp_remove_state +EXPORT_SYMBOL vmlinux 0xf1db1704 nla_memcpy +EXPORT_SYMBOL vmlinux 0xf1e046cc panic +EXPORT_SYMBOL vmlinux 0xf1e98c74 avenrun +EXPORT_SYMBOL vmlinux 0xf1edd020 mii_ethtool_sset +EXPORT_SYMBOL vmlinux 0xf21017d9 mutex_trylock +EXPORT_SYMBOL vmlinux 0xf2215f74 blk_finish_plug +EXPORT_SYMBOL vmlinux 0xf22a8d83 profile_pc +EXPORT_SYMBOL vmlinux 0xf23fcb99 __kfifo_in +EXPORT_SYMBOL vmlinux 0xf2593be0 pci_enable_device +EXPORT_SYMBOL vmlinux 0xf2669a2c imx_scu_irq_register_notifier +EXPORT_SYMBOL vmlinux 0xf26a14b8 rproc_vq_interrupt +EXPORT_SYMBOL vmlinux 0xf26df2e9 page_pool_release_page +EXPORT_SYMBOL vmlinux 0xf2705d8b ucc_fast_init +EXPORT_SYMBOL vmlinux 0xf27eb1b0 phy_attach_direct +EXPORT_SYMBOL vmlinux 0xf28404cf devlink_dpipe_header_ipv6 +EXPORT_SYMBOL vmlinux 0xf29403e5 acpi_install_table_handler +EXPORT_SYMBOL vmlinux 0xf294d130 of_parse_phandle_with_args_map +EXPORT_SYMBOL vmlinux 0xf29f8515 __kfifo_dma_out_prepare_r +EXPORT_SYMBOL vmlinux 0xf2a54bf9 netdev_class_create_file_ns +EXPORT_SYMBOL vmlinux 0xf2c43f3f zlib_deflate +EXPORT_SYMBOL vmlinux 0xf2e5bd87 security_free_mnt_opts +EXPORT_SYMBOL vmlinux 0xf2f0035d cdev_add +EXPORT_SYMBOL vmlinux 0xf2f53617 memregion_free +EXPORT_SYMBOL vmlinux 0xf2f70c25 qman_fq_fqid +EXPORT_SYMBOL vmlinux 0xf3107926 sha224_update +EXPORT_SYMBOL vmlinux 0xf31ac18c get_tree_single +EXPORT_SYMBOL vmlinux 0xf31fccd1 release_pages +EXPORT_SYMBOL vmlinux 0xf33f3970 xfrm_policy_walk_done +EXPORT_SYMBOL vmlinux 0xf346231f seq_list_start_head +EXPORT_SYMBOL vmlinux 0xf353a698 register_module_notifier +EXPORT_SYMBOL vmlinux 0xf365f6c8 dev_mc_add +EXPORT_SYMBOL vmlinux 0xf37257e4 devm_backlight_device_register +EXPORT_SYMBOL vmlinux 0xf3791091 udp_lib_setsockopt +EXPORT_SYMBOL vmlinux 0xf389fe60 __hw_addr_init +EXPORT_SYMBOL vmlinux 0xf3916987 global_cursor_default +EXPORT_SYMBOL vmlinux 0xf3918522 qman_retire_fq +EXPORT_SYMBOL vmlinux 0xf3a57892 release_dentry_name_snapshot +EXPORT_SYMBOL vmlinux 0xf3b30a06 utf8version_latest +EXPORT_SYMBOL vmlinux 0xf3d43527 bdi_put +EXPORT_SYMBOL vmlinux 0xf3d45e4b dev_trans_start +EXPORT_SYMBOL vmlinux 0xf3e0e1df allocate_resource +EXPORT_SYMBOL vmlinux 0xf3e6402e __bitmap_equal +EXPORT_SYMBOL vmlinux 0xf3ed48de sk_ns_capable +EXPORT_SYMBOL vmlinux 0xf3f97845 stream_open +EXPORT_SYMBOL vmlinux 0xf40e7a73 __xa_alloc +EXPORT_SYMBOL vmlinux 0xf425eaeb __nla_reserve_64bit +EXPORT_SYMBOL vmlinux 0xf43d2caa acpi_remove_interface +EXPORT_SYMBOL vmlinux 0xf44a904a net_ns_barrier +EXPORT_SYMBOL vmlinux 0xf46cc03e of_clk_get_by_name +EXPORT_SYMBOL vmlinux 0xf474c21c bitmap_print_to_pagebuf +EXPORT_SYMBOL vmlinux 0xf474fdcb kfree_const +EXPORT_SYMBOL vmlinux 0xf479625a bd_abort_claiming +EXPORT_SYMBOL vmlinux 0xf47f3ac1 eth_gro_receive +EXPORT_SYMBOL vmlinux 0xf4813e7b blk_mq_alloc_request +EXPORT_SYMBOL vmlinux 0xf4965f63 bio_integrity_clone +EXPORT_SYMBOL vmlinux 0xf4a258fc acpi_device_set_power +EXPORT_SYMBOL vmlinux 0xf4a4e09b dma_direct_map_sg +EXPORT_SYMBOL vmlinux 0xf4b2b86e cgroup_bpf_enabled_key +EXPORT_SYMBOL vmlinux 0xf4b736c7 mmc_gpio_get_cd +EXPORT_SYMBOL vmlinux 0xf4b754fd acpi_resources_are_enforced +EXPORT_SYMBOL vmlinux 0xf4bd1c9e blk_pm_runtime_init +EXPORT_SYMBOL vmlinux 0xf4bdbeb9 __frontswap_invalidate_area +EXPORT_SYMBOL vmlinux 0xf4db35bc stpcpy +EXPORT_SYMBOL vmlinux 0xf4df2487 xfrm_state_update +EXPORT_SYMBOL vmlinux 0xf4e2cfee skb_pull +EXPORT_SYMBOL vmlinux 0xf4f14de6 rtnl_trylock +EXPORT_SYMBOL vmlinux 0xf507eea6 neigh_update +EXPORT_SYMBOL vmlinux 0xf5089c56 ucc_of_parse_tdm +EXPORT_SYMBOL vmlinux 0xf51d5b34 sock_no_shutdown +EXPORT_SYMBOL vmlinux 0xf529978d dec_node_page_state +EXPORT_SYMBOL vmlinux 0xf539edb1 __alloc_disk_node +EXPORT_SYMBOL vmlinux 0xf53cbc6d put_cmsg +EXPORT_SYMBOL vmlinux 0xf53d4c26 qdisc_class_hash_destroy +EXPORT_SYMBOL vmlinux 0xf5843d8b dev_pick_tx_zero +EXPORT_SYMBOL vmlinux 0xf591753d nf_hooks_needed +EXPORT_SYMBOL vmlinux 0xf5a20ed2 __genradix_prealloc +EXPORT_SYMBOL vmlinux 0xf5b720ba tcf_em_tree_validate +EXPORT_SYMBOL vmlinux 0xf5c40882 file_path +EXPORT_SYMBOL vmlinux 0xf5c50f8a generic_block_bmap +EXPORT_SYMBOL vmlinux 0xf5cc2b97 __ps2_command +EXPORT_SYMBOL vmlinux 0xf5de807e uart_resume_port +EXPORT_SYMBOL vmlinux 0xf5e5a87b hdmi_infoframe_pack_only +EXPORT_SYMBOL vmlinux 0xf5e72eb2 seq_open_private +EXPORT_SYMBOL vmlinux 0xf5e7ea40 ktime_get_coarse_ts64 +EXPORT_SYMBOL vmlinux 0xf5e92744 md_write_start +EXPORT_SYMBOL vmlinux 0xf5f68ac4 mipi_dsi_dcs_write +EXPORT_SYMBOL vmlinux 0xf61cbd38 udp_lib_getsockopt +EXPORT_SYMBOL vmlinux 0xf624e380 eth_gro_complete +EXPORT_SYMBOL vmlinux 0xf62c39fe ucc_slow_graceful_stop_tx +EXPORT_SYMBOL vmlinux 0xf634b4a8 mod_node_page_state +EXPORT_SYMBOL vmlinux 0xf643d104 hsiphash_4u32 +EXPORT_SYMBOL vmlinux 0xf665f74f sock_load_diag_module +EXPORT_SYMBOL vmlinux 0xf681acfc hdmi_infoframe_unpack +EXPORT_SYMBOL vmlinux 0xf68285c0 register_inetaddr_notifier +EXPORT_SYMBOL vmlinux 0xf696da95 tcp_release_cb +EXPORT_SYMBOL vmlinux 0xf699e940 generic_update_time +EXPORT_SYMBOL vmlinux 0xf6ca9f09 max8925_bulk_read +EXPORT_SYMBOL vmlinux 0xf6cf0dd0 tcp_rcv_established +EXPORT_SYMBOL vmlinux 0xf6d1b1c3 nf_log_trace +EXPORT_SYMBOL vmlinux 0xf6e3b8f9 dquot_file_open +EXPORT_SYMBOL vmlinux 0xf6ebc03b net_ratelimit +EXPORT_SYMBOL vmlinux 0xf6f9d58d init_on_free +EXPORT_SYMBOL vmlinux 0xf6fc7a69 tcf_em_tree_destroy +EXPORT_SYMBOL vmlinux 0xf6fc8791 __bitmap_xor +EXPORT_SYMBOL vmlinux 0xf718a12a input_setup_polling +EXPORT_SYMBOL vmlinux 0xf71cc065 pm_vt_switch_unregister +EXPORT_SYMBOL vmlinux 0xf7209bc9 __netlink_dump_start +EXPORT_SYMBOL vmlinux 0xf721ddb1 kernel_sendpage_locked +EXPORT_SYMBOL vmlinux 0xf738d1be register_blocking_lsm_notifier +EXPORT_SYMBOL vmlinux 0xf73d1124 pci_bus_read_config_byte +EXPORT_SYMBOL vmlinux 0xf74150ff param_ops_byte +EXPORT_SYMBOL vmlinux 0xf742e212 udp_gro_complete +EXPORT_SYMBOL vmlinux 0xf74b2247 dm_put_device +EXPORT_SYMBOL vmlinux 0xf754eed2 pcibios_bus_to_resource +EXPORT_SYMBOL vmlinux 0xf7584a9c find_font +EXPORT_SYMBOL vmlinux 0xf765acf3 migrate_page_move_mapping +EXPORT_SYMBOL vmlinux 0xf76843b5 qcom_scm_pas_supported +EXPORT_SYMBOL vmlinux 0xf77337a1 hdmi_audio_infoframe_check +EXPORT_SYMBOL vmlinux 0xf77555cd __memcpy_toio +EXPORT_SYMBOL vmlinux 0xf7859d45 ip_sock_set_recverr +EXPORT_SYMBOL vmlinux 0xf7901926 inode_sub_bytes +EXPORT_SYMBOL vmlinux 0xf7ac9c3c __skb_recv_datagram +EXPORT_SYMBOL vmlinux 0xf7af85fd xsk_umem_complete_tx +EXPORT_SYMBOL vmlinux 0xf7d5eb85 get_mm_exe_file +EXPORT_SYMBOL vmlinux 0xf7da6e6f acpi_unload_table +EXPORT_SYMBOL vmlinux 0xf7ea6311 qman_p_poll_dqrr +EXPORT_SYMBOL vmlinux 0xf7ee5924 d_obtain_alias +EXPORT_SYMBOL vmlinux 0xf7f05c17 fman_port_use_kg_hash +EXPORT_SYMBOL vmlinux 0xf7f10781 kthread_blkcg +EXPORT_SYMBOL vmlinux 0xf7f11bc2 tcp_simple_retransmit +EXPORT_SYMBOL vmlinux 0xf7f2f0fc nf_log_bind_pf +EXPORT_SYMBOL vmlinux 0xf7fa4996 vme_lm_request +EXPORT_SYMBOL vmlinux 0xf7fe44c9 twl6040_set_pll +EXPORT_SYMBOL vmlinux 0xf8057469 bio_devname +EXPORT_SYMBOL vmlinux 0xf811e69d scsi_eh_flush_done_q +EXPORT_SYMBOL vmlinux 0xf812cff6 memscan +EXPORT_SYMBOL vmlinux 0xf8171c3d unlock_rename +EXPORT_SYMBOL vmlinux 0xf82417a9 of_get_next_child +EXPORT_SYMBOL vmlinux 0xf82abc1d isa_dma_bridge_buggy +EXPORT_SYMBOL vmlinux 0xf82ec573 rb_prev +EXPORT_SYMBOL vmlinux 0xf838dbb9 migrate_vma_setup +EXPORT_SYMBOL vmlinux 0xf83a8f6f vme_dma_list_exec +EXPORT_SYMBOL vmlinux 0xf83ac6ee gnet_stats_copy_basic_hw +EXPORT_SYMBOL vmlinux 0xf84bd6ee bpf_stats_enabled_key +EXPORT_SYMBOL vmlinux 0xf858e0d4 xfrm_state_flush +EXPORT_SYMBOL vmlinux 0xf85d148e eth_header_cache_update +EXPORT_SYMBOL vmlinux 0xf88474eb vfs_iocb_iter_write +EXPORT_SYMBOL vmlinux 0xf888ca21 sg_init_table +EXPORT_SYMBOL vmlinux 0xf88bfd26 nf_log_unregister +EXPORT_SYMBOL vmlinux 0xf88fff56 kobject_put +EXPORT_SYMBOL vmlinux 0xf8931c4b simple_readpage +EXPORT_SYMBOL vmlinux 0xf8947a4c mfd_remove_devices +EXPORT_SYMBOL vmlinux 0xf89557e9 sock_no_ioctl +EXPORT_SYMBOL vmlinux 0xf8967ae1 rtc_add_group +EXPORT_SYMBOL vmlinux 0xf8bf8e22 ZSTD_DDictWorkspaceBound +EXPORT_SYMBOL vmlinux 0xf8c0f4bd t10_pi_type3_ip +EXPORT_SYMBOL vmlinux 0xf8d07858 bitmap_from_arr32 +EXPORT_SYMBOL vmlinux 0xf8e51620 mnt_drop_write_file +EXPORT_SYMBOL vmlinux 0xf8e8cdb9 component_match_add_release +EXPORT_SYMBOL vmlinux 0xf8f61ebc wake_up_var +EXPORT_SYMBOL vmlinux 0xf915179e refcount_dec_if_one +EXPORT_SYMBOL vmlinux 0xf91b89ab fman_sp_build_buffer_struct +EXPORT_SYMBOL vmlinux 0xf93aae46 __arm_smccc_smc +EXPORT_SYMBOL vmlinux 0xf93fd09c fb_find_mode_cvt +EXPORT_SYMBOL vmlinux 0xf941caca unlock_page_memcg +EXPORT_SYMBOL vmlinux 0xf946c491 pcix_set_mmrbc +EXPORT_SYMBOL vmlinux 0xf9490fa8 neigh_event_ns +EXPORT_SYMBOL vmlinux 0xf9520850 sock_common_setsockopt +EXPORT_SYMBOL vmlinux 0xf95c619b acpi_processor_preregister_performance +EXPORT_SYMBOL vmlinux 0xf970fb8a input_set_min_poll_interval +EXPORT_SYMBOL vmlinux 0xf971cea8 utf8len +EXPORT_SYMBOL vmlinux 0xf9722676 twl_i2c_write +EXPORT_SYMBOL vmlinux 0xf97c70d3 udp_lib_unhash +EXPORT_SYMBOL vmlinux 0xf980e5c6 watchdog_unregister_governor +EXPORT_SYMBOL vmlinux 0xf99c13ec page_pool_destroy +EXPORT_SYMBOL vmlinux 0xf9a482f9 msleep +EXPORT_SYMBOL vmlinux 0xf9be3198 param_get_int +EXPORT_SYMBOL vmlinux 0xf9c0b663 strlcat +EXPORT_SYMBOL vmlinux 0xf9d6a95f sock_alloc_file +EXPORT_SYMBOL vmlinux 0xf9eced44 LZ4_compress_fast_continue +EXPORT_SYMBOL vmlinux 0xfa061ed8 fqdir_init +EXPORT_SYMBOL vmlinux 0xfa08f4b8 __tracepoint_dma_fence_signaled +EXPORT_SYMBOL vmlinux 0xfa1c8056 ___pskb_trim +EXPORT_SYMBOL vmlinux 0xfa22ab8d pci_release_region +EXPORT_SYMBOL vmlinux 0xfa297415 acpi_map_pxm_to_node +EXPORT_SYMBOL vmlinux 0xfa34b1b3 bpf_prog_get_type_path +EXPORT_SYMBOL vmlinux 0xfa3629d9 netif_rx +EXPORT_SYMBOL vmlinux 0xfa45cac6 scsi_bios_ptable +EXPORT_SYMBOL vmlinux 0xfa46b140 skb_add_rx_frag +EXPORT_SYMBOL vmlinux 0xfa599bb2 netlink_register_notifier +EXPORT_SYMBOL vmlinux 0xfa706b41 genphy_read_lpa +EXPORT_SYMBOL vmlinux 0xfa873ad0 prandom_seed +EXPORT_SYMBOL vmlinux 0xfa89777a param_get_ushort +EXPORT_SYMBOL vmlinux 0xfa8eaca4 devfreq_monitor_suspend +EXPORT_SYMBOL vmlinux 0xfac8865f sysctl_wmem_max +EXPORT_SYMBOL vmlinux 0xfad51fec rdmacg_try_charge +EXPORT_SYMBOL vmlinux 0xfaf37199 pin_user_pages_remote +EXPORT_SYMBOL vmlinux 0xfb0f424d __serio_register_driver +EXPORT_SYMBOL vmlinux 0xfb332781 input_mt_assign_slots +EXPORT_SYMBOL vmlinux 0xfb382046 dma_resv_add_shared_fence +EXPORT_SYMBOL vmlinux 0xfb384d37 kasprintf +EXPORT_SYMBOL vmlinux 0xfb3e2bad __icmp_send +EXPORT_SYMBOL vmlinux 0xfb3ef3dd __cleancache_put_page +EXPORT_SYMBOL vmlinux 0xfb481954 vprintk +EXPORT_SYMBOL vmlinux 0xfb6968d0 alloc_pages_vma +EXPORT_SYMBOL vmlinux 0xfb6af58d recalc_sigpending +EXPORT_SYMBOL vmlinux 0xfb746cc9 down_killable +EXPORT_SYMBOL vmlinux 0xfba7ddd2 match_u64 +EXPORT_SYMBOL vmlinux 0xfbaaf01e console_lock +EXPORT_SYMBOL vmlinux 0xfbad3cf0 scsi_normalize_sense +EXPORT_SYMBOL vmlinux 0xfbb8a761 strscpy_pad +EXPORT_SYMBOL vmlinux 0xfbbc10b0 pagecache_write_end +EXPORT_SYMBOL vmlinux 0xfbc4f89e io_schedule_timeout +EXPORT_SYMBOL vmlinux 0xfbcb2b09 blk_mq_init_sq_queue +EXPORT_SYMBOL vmlinux 0xfbd06f25 eth_header_parse +EXPORT_SYMBOL vmlinux 0xfbdff281 mmc_set_data_timeout +EXPORT_SYMBOL vmlinux 0xfbe4b175 qman_create_cgr +EXPORT_SYMBOL vmlinux 0xfbe8ee28 acpi_get_table_by_index +EXPORT_SYMBOL vmlinux 0xfbfe0e86 ucc_fast_free +EXPORT_SYMBOL vmlinux 0xfc0045dd iput +EXPORT_SYMBOL vmlinux 0xfc336d2e __wake_up_bit +EXPORT_SYMBOL vmlinux 0xfc399557 utf8_load +EXPORT_SYMBOL vmlinux 0xfc3de09d flow_rule_match_tcp +EXPORT_SYMBOL vmlinux 0xfc4152fc ec_read +EXPORT_SYMBOL vmlinux 0xfc52abc7 qcom_scm_pas_shutdown +EXPORT_SYMBOL vmlinux 0xfc5c46e2 acpi_buffer_to_resource +EXPORT_SYMBOL vmlinux 0xfc61d4be __xfrm_init_state +EXPORT_SYMBOL vmlinux 0xfc7432ac scsi_remove_host +EXPORT_SYMBOL vmlinux 0xfc7e2596 down_trylock +EXPORT_SYMBOL vmlinux 0xfc800943 __skb_free_datagram_locked +EXPORT_SYMBOL vmlinux 0xfc82b9f6 inet6_getname +EXPORT_SYMBOL vmlinux 0xfc881b89 fman_port_get_hash_result_offset +EXPORT_SYMBOL vmlinux 0xfc9867aa ip_tunnel_parse_protocol +EXPORT_SYMBOL vmlinux 0xfca49db0 pci_set_vpd_size +EXPORT_SYMBOL vmlinux 0xfcb926cd kstrtouint_from_user +EXPORT_SYMBOL vmlinux 0xfcc697f3 pnp_activate_dev +EXPORT_SYMBOL vmlinux 0xfcc9c2bb generic_error_remove_page +EXPORT_SYMBOL vmlinux 0xfcd1819a hdmi_spd_infoframe_check +EXPORT_SYMBOL vmlinux 0xfcd7682a sync_mapping_buffers +EXPORT_SYMBOL vmlinux 0xfcdf844f alloc_etherdev_mqs +EXPORT_SYMBOL vmlinux 0xfcec0987 enable_irq +EXPORT_SYMBOL vmlinux 0xfced2b65 fbcon_rotate_cw +EXPORT_SYMBOL vmlinux 0xfcf1d066 vme_master_request +EXPORT_SYMBOL vmlinux 0xfd1427f5 dst_init +EXPORT_SYMBOL vmlinux 0xfd259d0a key_alloc +EXPORT_SYMBOL vmlinux 0xfd2660cb key_unlink +EXPORT_SYMBOL vmlinux 0xfd2dd02d ip_mc_inc_group +EXPORT_SYMBOL vmlinux 0xfd3e3130 fs_lookup_param +EXPORT_SYMBOL vmlinux 0xfd4c4905 mmc_can_trim +EXPORT_SYMBOL vmlinux 0xfd5f6e17 scsi_device_get +EXPORT_SYMBOL vmlinux 0xfd7933d7 vfs_fadvise +EXPORT_SYMBOL vmlinux 0xfd92b46a dquot_get_next_id +EXPORT_SYMBOL vmlinux 0xfd9c804c unix_destruct_scm +EXPORT_SYMBOL vmlinux 0xfda2b04b sched_autogroup_detach +EXPORT_SYMBOL vmlinux 0xfda9581f prandom_u32 +EXPORT_SYMBOL vmlinux 0xfdb51116 max8925_reg_read +EXPORT_SYMBOL vmlinux 0xfdcb4ed3 acpi_os_get_line +EXPORT_SYMBOL vmlinux 0xfdcc8a0e fb_find_best_display +EXPORT_SYMBOL vmlinux 0xfdd7794b give_up_console +EXPORT_SYMBOL vmlinux 0xfdd7c7c1 sock_wmalloc +EXPORT_SYMBOL vmlinux 0xfdf70093 ZSTD_CStreamOutSize +EXPORT_SYMBOL vmlinux 0xfdfa367e fscrypt_inherit_context +EXPORT_SYMBOL vmlinux 0xfe015e79 ipv6_dev_mc_inc +EXPORT_SYMBOL vmlinux 0xfe029963 unregister_inetaddr_notifier +EXPORT_SYMBOL vmlinux 0xfe08984e __find_get_block +EXPORT_SYMBOL vmlinux 0xfe1d2e94 key_create_or_update +EXPORT_SYMBOL vmlinux 0xfe252d61 pcie_port_service_register +EXPORT_SYMBOL vmlinux 0xfe2e9bd0 write_dirty_buffer +EXPORT_SYMBOL vmlinux 0xfe33b923 jbd2_journal_extend +EXPORT_SYMBOL vmlinux 0xfe4095a7 get_unmapped_area +EXPORT_SYMBOL vmlinux 0xfe487975 init_wait_entry +EXPORT_SYMBOL vmlinux 0xfe574ca5 deactivate_locked_super +EXPORT_SYMBOL vmlinux 0xfe5d4bb2 sys_tz +EXPORT_SYMBOL vmlinux 0xfe6daf17 mipi_dsi_dcs_set_tear_scanline +EXPORT_SYMBOL vmlinux 0xfe916dc6 hex_dump_to_buffer +EXPORT_SYMBOL vmlinux 0xfe968eb8 cookie_ecn_ok +EXPORT_SYMBOL vmlinux 0xfe9ebbbb acpi_osi_is_win8 +EXPORT_SYMBOL vmlinux 0xfe9ef859 security_dentry_create_files_as +EXPORT_SYMBOL vmlinux 0xfeb41a0f key_type_keyring +EXPORT_SYMBOL vmlinux 0xfeb5d0aa verify_spi_info +EXPORT_SYMBOL vmlinux 0xfeca29f5 pcie_get_width_cap +EXPORT_SYMBOL vmlinux 0xfed5c543 scsi_host_busy +EXPORT_SYMBOL vmlinux 0xfedcdb60 seq_hlist_next_percpu +EXPORT_SYMBOL vmlinux 0xfeebc7c4 __kfifo_from_user_r +EXPORT_SYMBOL vmlinux 0xfefcb98e vme_dma_vme_attribute +EXPORT_SYMBOL vmlinux 0xff1e9dd8 seq_list_start +EXPORT_SYMBOL vmlinux 0xff221464 to_nd_btt +EXPORT_SYMBOL vmlinux 0xff3bc402 uart_suspend_port +EXPORT_SYMBOL vmlinux 0xff4643f0 max8998_read_reg +EXPORT_SYMBOL vmlinux 0xff5b56e3 mmc_get_card +EXPORT_SYMBOL vmlinux 0xff6748d4 inet_add_offload +EXPORT_SYMBOL vmlinux 0xff6878cf fb_default_cmap +EXPORT_SYMBOL vmlinux 0xff6e8265 sock_set_sndtimeo +EXPORT_SYMBOL vmlinux 0xff876054 elevator_alloc +EXPORT_SYMBOL vmlinux 0xff87cd18 lockref_get_not_dead +EXPORT_SYMBOL vmlinux 0xff999fc0 jbd2_journal_release_jbd_inode +EXPORT_SYMBOL vmlinux 0xff9c4b56 ZSTD_compressBound +EXPORT_SYMBOL vmlinux 0xffb7c514 ida_free +EXPORT_SYMBOL vmlinux 0xffbbdf58 rproc_of_resm_mem_entry_init +EXPORT_SYMBOL vmlinux 0xffc4a366 cdev_device_add +EXPORT_SYMBOL vmlinux 0xffcdc4d1 path_is_mountpoint +EXPORT_SYMBOL vmlinux 0xffcfdf59 mmc_run_bkops +EXPORT_SYMBOL vmlinux 0xffecd42a input_set_keycode +EXPORT_SYMBOL vmlinux 0xffeedf6a delayed_work_timer_fn +EXPORT_SYMBOL vmlinux 0xffff8df2 alloc_anon_inode +EXPORT_SYMBOL_GPL crypto/af_alg 0x07dc5991 af_alg_count_tsgl +EXPORT_SYMBOL_GPL crypto/af_alg 0x0f79785b af_alg_make_sg +EXPORT_SYMBOL_GPL crypto/af_alg 0x1245c143 af_alg_wmem_wakeup +EXPORT_SYMBOL_GPL crypto/af_alg 0x142f93e5 af_alg_free_resources +EXPORT_SYMBOL_GPL crypto/af_alg 0x386ecf61 af_alg_release +EXPORT_SYMBOL_GPL crypto/af_alg 0x49f271ea af_alg_sendpage +EXPORT_SYMBOL_GPL crypto/af_alg 0x5efd1cd8 af_alg_alloc_areq +EXPORT_SYMBOL_GPL crypto/af_alg 0x651965fc af_alg_wait_for_data +EXPORT_SYMBOL_GPL crypto/af_alg 0x7027193c af_alg_pull_tsgl +EXPORT_SYMBOL_GPL crypto/af_alg 0x7a144247 af_alg_get_rsgl +EXPORT_SYMBOL_GPL crypto/af_alg 0x7e54c52e af_alg_sendmsg +EXPORT_SYMBOL_GPL crypto/af_alg 0x8ee25b93 af_alg_register_type +EXPORT_SYMBOL_GPL crypto/af_alg 0xa4063da8 af_alg_poll +EXPORT_SYMBOL_GPL crypto/af_alg 0xb95c1264 af_alg_free_sg +EXPORT_SYMBOL_GPL crypto/af_alg 0xd485e9af af_alg_async_cb +EXPORT_SYMBOL_GPL crypto/af_alg 0xfa74105f af_alg_accept +EXPORT_SYMBOL_GPL crypto/af_alg 0xfae4ee99 af_alg_release_parent +EXPORT_SYMBOL_GPL crypto/af_alg 0xfeece0ed af_alg_unregister_type +EXPORT_SYMBOL_GPL crypto/asymmetric_keys/asym_tpm 0x1369816c asym_tpm_subtype +EXPORT_SYMBOL_GPL crypto/asymmetric_keys/asym_tpm 0x7430f97c tpm_key_create +EXPORT_SYMBOL_GPL crypto/async_tx/async_memcpy 0x281d4f92 async_memcpy +EXPORT_SYMBOL_GPL crypto/async_tx/async_pq 0x11662d31 async_gen_syndrome +EXPORT_SYMBOL_GPL crypto/async_tx/async_pq 0x719b7423 async_syndrome_val +EXPORT_SYMBOL_GPL crypto/async_tx/async_raid6_recov 0x85e2d279 async_raid6_2data_recov +EXPORT_SYMBOL_GPL crypto/async_tx/async_raid6_recov 0xba2156de async_raid6_datap_recov +EXPORT_SYMBOL_GPL crypto/async_tx/async_tx 0x077acd4d async_trigger_callback +EXPORT_SYMBOL_GPL crypto/async_tx/async_tx 0x13a2a82d async_tx_quiesce +EXPORT_SYMBOL_GPL crypto/async_tx/async_tx 0x2254dd6f async_tx_submit +EXPORT_SYMBOL_GPL crypto/async_tx/async_tx 0xe1bee6bc __async_tx_find_channel +EXPORT_SYMBOL_GPL crypto/async_tx/async_xor 0x385dde3a async_xor_val +EXPORT_SYMBOL_GPL crypto/async_tx/async_xor 0xbb274285 async_xor +EXPORT_SYMBOL_GPL crypto/authenc 0x2479193e crypto_authenc_extractkeys +EXPORT_SYMBOL_GPL crypto/blowfish_common 0xdc8dee13 blowfish_setkey +EXPORT_SYMBOL_GPL crypto/cast5_generic 0x188d9d26 __cast5_decrypt +EXPORT_SYMBOL_GPL crypto/cast5_generic 0x235b348e 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 0x50bed3e6 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 0x0bdc3306 cryptd_alloc_skcipher +EXPORT_SYMBOL_GPL crypto/cryptd 0x1e38faf5 cryptd_ahash_child +EXPORT_SYMBOL_GPL crypto/cryptd 0x23173481 cryptd_skcipher_queued +EXPORT_SYMBOL_GPL crypto/cryptd 0x26463d20 cryptd_free_skcipher +EXPORT_SYMBOL_GPL crypto/cryptd 0x440bfa01 cryptd_shash_desc +EXPORT_SYMBOL_GPL crypto/cryptd 0x4be551a8 cryptd_skcipher_child +EXPORT_SYMBOL_GPL crypto/cryptd 0x5275f3f3 cryptd_alloc_aead +EXPORT_SYMBOL_GPL crypto/cryptd 0x557931a6 cryptd_alloc_ahash +EXPORT_SYMBOL_GPL crypto/cryptd 0x70569bc4 cryptd_aead_child +EXPORT_SYMBOL_GPL crypto/cryptd 0x74ea5ee6 cryptd_free_aead +EXPORT_SYMBOL_GPL crypto/cryptd 0x87d4bd03 cryptd_ahash_queued +EXPORT_SYMBOL_GPL crypto/cryptd 0x8cbcc4ee cryptd_aead_queued +EXPORT_SYMBOL_GPL crypto/cryptd 0x9ec63ac2 cryptd_free_ahash +EXPORT_SYMBOL_GPL crypto/crypto_engine 0x1a03ec4e crypto_engine_alloc_init_and_set +EXPORT_SYMBOL_GPL crypto/crypto_engine 0x1c05dacd crypto_finalize_aead_request +EXPORT_SYMBOL_GPL crypto/crypto_engine 0x2f05986f crypto_finalize_hash_request +EXPORT_SYMBOL_GPL crypto/crypto_engine 0x6c6d2638 crypto_transfer_aead_request_to_engine +EXPORT_SYMBOL_GPL crypto/crypto_engine 0x8ee95429 crypto_transfer_akcipher_request_to_engine +EXPORT_SYMBOL_GPL crypto/crypto_engine 0x941d3275 crypto_transfer_skcipher_request_to_engine +EXPORT_SYMBOL_GPL crypto/crypto_engine 0xa2633698 crypto_transfer_hash_request_to_engine +EXPORT_SYMBOL_GPL crypto/crypto_engine 0xb7650f5c crypto_engine_start +EXPORT_SYMBOL_GPL crypto/crypto_engine 0xcb432313 crypto_engine_alloc_init +EXPORT_SYMBOL_GPL crypto/crypto_engine 0xcc257906 crypto_finalize_skcipher_request +EXPORT_SYMBOL_GPL crypto/crypto_engine 0xe4563f17 crypto_engine_stop +EXPORT_SYMBOL_GPL crypto/crypto_engine 0xef7c6461 crypto_engine_exit +EXPORT_SYMBOL_GPL crypto/crypto_engine 0xfc924419 crypto_finalize_akcipher_request +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 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 0xc1d905ad simd_register_aeads_compat +EXPORT_SYMBOL_GPL crypto/crypto_simd 0xdaeaa398 simd_unregister_skciphers +EXPORT_SYMBOL_GPL crypto/crypto_simd 0xdd31686a simd_unregister_aeads +EXPORT_SYMBOL_GPL crypto/crypto_simd 0xefe73979 simd_skcipher_free +EXPORT_SYMBOL_GPL crypto/crypto_simd 0xf662f396 simd_register_skciphers_compat +EXPORT_SYMBOL_GPL crypto/ecdh_generic 0x515ba532 crypto_ecdh_decode_key +EXPORT_SYMBOL_GPL crypto/ecdh_generic 0x7a395d76 crypto_ecdh_encode_key +EXPORT_SYMBOL_GPL crypto/ecdh_generic 0xd5a29505 crypto_ecdh_key_len +EXPORT_SYMBOL_GPL crypto/serpent_generic 0x3959a1db serpent_setkey +EXPORT_SYMBOL_GPL crypto/serpent_generic 0x4eb4c55e __serpent_encrypt +EXPORT_SYMBOL_GPL crypto/serpent_generic 0xbcc074f3 __serpent_decrypt +EXPORT_SYMBOL_GPL crypto/serpent_generic 0xd4c9681a __serpent_setkey +EXPORT_SYMBOL_GPL crypto/sm3_generic 0x0bddca87 sm3_zero_message_hash +EXPORT_SYMBOL_GPL crypto/sm4_generic 0x09a89410 crypto_sm4_expand_key +EXPORT_SYMBOL_GPL crypto/sm4_generic 0x1b2e4ed8 crypto_sm4_decrypt +EXPORT_SYMBOL_GPL crypto/sm4_generic 0x85490bd9 crypto_sm4_set_key +EXPORT_SYMBOL_GPL crypto/sm4_generic 0x8b46cf4c crypto_sm4_encrypt +EXPORT_SYMBOL_GPL crypto/twofish_common 0x720547b4 twofish_setkey +EXPORT_SYMBOL_GPL crypto/twofish_common 0xe22b7787 __twofish_setkey +EXPORT_SYMBOL_GPL drivers/acpi/nfit/nfit 0x14387a39 acpi_nfit_ctl +EXPORT_SYMBOL_GPL drivers/acpi/nfit/nfit 0x2d9f6437 acpi_nfit_init +EXPORT_SYMBOL_GPL drivers/acpi/nfit/nfit 0x31ca0f2b acpi_nfit_desc_init +EXPORT_SYMBOL_GPL drivers/acpi/nfit/nfit 0x4205a4da __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 0x72263364 __acpi_nfit_notify +EXPORT_SYMBOL_GPL drivers/ata/pata_platform 0xe9362042 __pata_platform_probe +EXPORT_SYMBOL_GPL drivers/ata/pata_sis 0xbfe598ed sis_info133_for_sata +EXPORT_SYMBOL_GPL drivers/auxdisplay/charlcd 0x727ea304 charlcd_poke +EXPORT_SYMBOL_GPL drivers/auxdisplay/charlcd 0x9192a401 charlcd_register +EXPORT_SYMBOL_GPL drivers/auxdisplay/charlcd 0xa2a58bbe charlcd_alloc +EXPORT_SYMBOL_GPL drivers/auxdisplay/charlcd 0xac53a91b charlcd_unregister +EXPORT_SYMBOL_GPL drivers/auxdisplay/charlcd 0xd0cc2e18 charlcd_free +EXPORT_SYMBOL_GPL drivers/base/regmap/regmap-i3c 0xed8d0ac8 __devm_regmap_init_i3c +EXPORT_SYMBOL_GPL drivers/base/regmap/regmap-sccb 0x1c2e7779 __devm_regmap_init_sccb +EXPORT_SYMBOL_GPL drivers/base/regmap/regmap-sccb 0x22ffcf46 __regmap_init_sccb +EXPORT_SYMBOL_GPL drivers/base/regmap/regmap-sdw 0x4282e77e __regmap_init_sdw +EXPORT_SYMBOL_GPL drivers/base/regmap/regmap-sdw 0x8129c183 __devm_regmap_init_sdw +EXPORT_SYMBOL_GPL drivers/base/regmap/regmap-slimbus 0x33057df4 __devm_regmap_init_slimbus +EXPORT_SYMBOL_GPL drivers/base/regmap/regmap-slimbus 0x436c8a78 __regmap_init_slimbus +EXPORT_SYMBOL_GPL drivers/base/regmap/regmap-spmi 0x6f2df6a2 __devm_regmap_init_spmi_ext +EXPORT_SYMBOL_GPL drivers/base/regmap/regmap-spmi 0x782b3d3c __regmap_init_spmi_ext +EXPORT_SYMBOL_GPL drivers/base/regmap/regmap-spmi 0xe87eff2a __devm_regmap_init_spmi_base +EXPORT_SYMBOL_GPL drivers/base/regmap/regmap-spmi 0xffde47a2 __regmap_init_spmi_base +EXPORT_SYMBOL_GPL drivers/base/regmap/regmap-w1 0x6f916d66 __regmap_init_w1 +EXPORT_SYMBOL_GPL drivers/base/regmap/regmap-w1 0x852efcf1 __devm_regmap_init_w1 +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0x16dc9fd8 bcma_driver_unregister +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0x1f8de2b6 bcma_chipco_gpio_control +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0x24d36e41 bcma_find_core_unit +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0x34600a40 bcma_core_pci_power_save +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0x3bb7657b bcma_chipco_pll_maskset +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0x534fba3d bcma_core_pll_ctl +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0x5765286d bcma_core_is_enabled +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0x5b343be1 bcma_chipco_gpio_out +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0x5dcb95e6 bcma_host_pci_up +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0x6d5444b5 __bcma_driver_register +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0x7dc2598b bcma_host_pci_down +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0x832f7545 bcma_host_pci_irq_ctl +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0x88e07f92 bcma_pmu_get_bus_clock +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0x8fe01af5 bcma_core_set_clockmode +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0x97076699 bcma_core_enable +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0xa872903f bcma_chipco_gpio_outen +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0xbd74d097 bcma_core_disable +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0xc066d931 bcma_chipco_chipctl_maskset +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0xca0d4c15 bcma_chipco_pll_write +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0xdd76ce4f bcma_pmu_spuravoid_pllupdate +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0xec12a9a9 bcma_chipco_regctl_maskset +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0xec652161 bcma_chipco_get_alp_clock +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0xee55998e bcma_chipco_b_mii_write +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0xf1dae6f7 bcma_chipco_pll_read +EXPORT_SYMBOL_GPL drivers/bluetooth/btbcm 0x4b373214 btbcm_setup_patchram +EXPORT_SYMBOL_GPL drivers/bluetooth/btbcm 0x530fb9ea btbcm_finalize +EXPORT_SYMBOL_GPL drivers/bluetooth/btbcm 0x5a4d21f5 btbcm_initialize +EXPORT_SYMBOL_GPL drivers/bluetooth/btbcm 0x7394058d btbcm_read_pcm_int_params +EXPORT_SYMBOL_GPL drivers/bluetooth/btbcm 0xca37d466 btbcm_set_bdaddr +EXPORT_SYMBOL_GPL drivers/bluetooth/btbcm 0xcded4051 btbcm_check_bdaddr +EXPORT_SYMBOL_GPL drivers/bluetooth/btbcm 0xcfeb81f8 btbcm_write_pcm_int_params +EXPORT_SYMBOL_GPL drivers/bluetooth/btbcm 0xee11b146 btbcm_setup_apple +EXPORT_SYMBOL_GPL drivers/bluetooth/btintel 0x0616c505 btintel_set_event_mask +EXPORT_SYMBOL_GPL drivers/bluetooth/btintel 0x0b8026f3 btintel_exit_mfg +EXPORT_SYMBOL_GPL drivers/bluetooth/btintel 0x11aefc14 btintel_send_intel_reset +EXPORT_SYMBOL_GPL drivers/bluetooth/btintel 0x147170d9 btintel_read_boot_params +EXPORT_SYMBOL_GPL drivers/bluetooth/btintel 0x31195341 btintel_version_info +EXPORT_SYMBOL_GPL drivers/bluetooth/btintel 0x31387e9a btintel_check_bdaddr +EXPORT_SYMBOL_GPL drivers/bluetooth/btintel 0x34612fb3 btintel_download_firmware +EXPORT_SYMBOL_GPL drivers/bluetooth/btintel 0x3b158ffa btintel_regmap_init +EXPORT_SYMBOL_GPL drivers/bluetooth/btintel 0x42cc5a1d btintel_secure_send +EXPORT_SYMBOL_GPL drivers/bluetooth/btintel 0x6433a5b9 btintel_read_version +EXPORT_SYMBOL_GPL drivers/bluetooth/btintel 0x722b7ca3 btintel_set_diag_mfg +EXPORT_SYMBOL_GPL drivers/bluetooth/btintel 0x8c622511 btintel_load_ddc_config +EXPORT_SYMBOL_GPL drivers/bluetooth/btintel 0xab44b29c btintel_set_event_mask_mfg +EXPORT_SYMBOL_GPL drivers/bluetooth/btintel 0xd12186e7 btintel_enter_mfg +EXPORT_SYMBOL_GPL drivers/bluetooth/btintel 0xd3edb5f5 btintel_reset_to_bootloader +EXPORT_SYMBOL_GPL drivers/bluetooth/btintel 0xe308b9b2 btintel_set_diag +EXPORT_SYMBOL_GPL drivers/bluetooth/btintel 0xf6e98b9a btintel_hw_error +EXPORT_SYMBOL_GPL drivers/bluetooth/btintel 0xf99dbaa0 btintel_set_bdaddr +EXPORT_SYMBOL_GPL drivers/bluetooth/btmrvl 0x069dc67a btmrvl_add_card +EXPORT_SYMBOL_GPL drivers/bluetooth/btmrvl 0x06a8ab66 btmrvl_enable_ps +EXPORT_SYMBOL_GPL drivers/bluetooth/btmrvl 0x18abd7d7 btmrvl_pscan_window_reporting +EXPORT_SYMBOL_GPL drivers/bluetooth/btmrvl 0x3098ca7d btmrvl_process_event +EXPORT_SYMBOL_GPL drivers/bluetooth/btmrvl 0x3f69562a btmrvl_enable_hs +EXPORT_SYMBOL_GPL drivers/bluetooth/btmrvl 0x66cf9bc4 btmrvl_send_module_cfg_cmd +EXPORT_SYMBOL_GPL drivers/bluetooth/btmrvl 0x7755ca20 btmrvl_register_hdev +EXPORT_SYMBOL_GPL drivers/bluetooth/btmrvl 0x98ffd167 btmrvl_check_evtpkt +EXPORT_SYMBOL_GPL drivers/bluetooth/btmrvl 0xc244298b btmrvl_remove_card +EXPORT_SYMBOL_GPL drivers/bluetooth/btmrvl 0xc8f8f398 btmrvl_interrupt +EXPORT_SYMBOL_GPL drivers/bluetooth/btmrvl 0xcada235f btmrvl_send_hscfg_cmd +EXPORT_SYMBOL_GPL drivers/bluetooth/btqca 0x3dfc67bd qca_uart_setup +EXPORT_SYMBOL_GPL drivers/bluetooth/btqca 0x4fbfed5b qca_set_bdaddr_rome +EXPORT_SYMBOL_GPL drivers/bluetooth/btqca 0x7cda3664 qca_send_pre_shutdown_cmd +EXPORT_SYMBOL_GPL drivers/bluetooth/btqca 0xdafa4fca qca_set_bdaddr +EXPORT_SYMBOL_GPL drivers/bluetooth/btqca 0xe7e3b47d qca_read_soc_version +EXPORT_SYMBOL_GPL drivers/bluetooth/btrtl 0x70ff34d3 btrtl_get_uart_settings +EXPORT_SYMBOL_GPL drivers/bluetooth/btrtl 0x76fa0921 btrtl_shutdown_realtek +EXPORT_SYMBOL_GPL drivers/bluetooth/btrtl 0xaf78f260 btrtl_free +EXPORT_SYMBOL_GPL drivers/bluetooth/btrtl 0xb1c78d50 btrtl_initialize +EXPORT_SYMBOL_GPL drivers/bluetooth/btrtl 0xb2bff6d9 btrtl_setup_realtek +EXPORT_SYMBOL_GPL drivers/bluetooth/btrtl 0xcf1ea255 btrtl_download_firmware +EXPORT_SYMBOL_GPL drivers/bluetooth/hci_uart 0x148fddfc h4_recv_buf +EXPORT_SYMBOL_GPL drivers/bluetooth/hci_uart 0x362ff322 hci_uart_tx_wakeup +EXPORT_SYMBOL_GPL drivers/bluetooth/hci_uart 0xbf6ec99a hci_uart_unregister_device +EXPORT_SYMBOL_GPL drivers/bluetooth/hci_uart 0xd211eaf4 hci_uart_register_device +EXPORT_SYMBOL_GPL drivers/bus/mhi/core/mhi 0x1a0b0249 mhi_driver_unregister +EXPORT_SYMBOL_GPL drivers/bus/mhi/core/mhi 0x2efc53d0 mhi_device_get +EXPORT_SYMBOL_GPL drivers/bus/mhi/core/mhi 0x391db2c0 mhi_unregister_controller +EXPORT_SYMBOL_GPL drivers/bus/mhi/core/mhi 0x4f26f622 mhi_queue_buf +EXPORT_SYMBOL_GPL drivers/bus/mhi/core/mhi 0x5048de71 __mhi_driver_register +EXPORT_SYMBOL_GPL drivers/bus/mhi/core/mhi 0x533799c3 mhi_device_get_sync +EXPORT_SYMBOL_GPL drivers/bus/mhi/core/mhi 0x71068f5a mhi_power_down +EXPORT_SYMBOL_GPL drivers/bus/mhi/core/mhi 0x7484f87a mhi_prepare_for_transfer +EXPORT_SYMBOL_GPL drivers/bus/mhi/core/mhi 0x755b0513 mhi_device_put +EXPORT_SYMBOL_GPL drivers/bus/mhi/core/mhi 0x8102c87f mhi_download_rddm_img +EXPORT_SYMBOL_GPL drivers/bus/mhi/core/mhi 0x95f9db2a mhi_register_controller +EXPORT_SYMBOL_GPL drivers/bus/mhi/core/mhi 0x9c84bb3a mhi_force_rddm_mode +EXPORT_SYMBOL_GPL drivers/bus/mhi/core/mhi 0x9c93ac8f mhi_pm_resume +EXPORT_SYMBOL_GPL drivers/bus/mhi/core/mhi 0xa70e351b mhi_prepare_for_power_up +EXPORT_SYMBOL_GPL drivers/bus/mhi/core/mhi 0xb946b8b7 mhi_unprepare_after_power_down +EXPORT_SYMBOL_GPL drivers/bus/mhi/core/mhi 0xbaabf8d9 mhi_poll +EXPORT_SYMBOL_GPL drivers/bus/mhi/core/mhi 0xbf3aeeb6 mhi_unprepare_from_transfer +EXPORT_SYMBOL_GPL drivers/bus/mhi/core/mhi 0xbfdb3d33 mhi_queue_skb +EXPORT_SYMBOL_GPL drivers/bus/mhi/core/mhi 0xc60096fa mhi_pm_suspend +EXPORT_SYMBOL_GPL drivers/bus/mhi/core/mhi 0xcd839ec4 mhi_queue_dma +EXPORT_SYMBOL_GPL drivers/bus/mhi/core/mhi 0xe38e743e mhi_async_power_up +EXPORT_SYMBOL_GPL drivers/bus/mhi/core/mhi 0xe959166f mhi_notify +EXPORT_SYMBOL_GPL drivers/bus/moxtet 0x1d606d79 moxtet_device_write +EXPORT_SYMBOL_GPL drivers/bus/moxtet 0x8186c523 moxtet_device_read +EXPORT_SYMBOL_GPL drivers/bus/moxtet 0x9564aa7a moxtet_device_written +EXPORT_SYMBOL_GPL drivers/bus/moxtet 0x9a42aa72 __moxtet_register_driver +EXPORT_SYMBOL_GPL drivers/bus/sunxi-rsb 0x201a258d __devm_regmap_init_sunxi_rsb +EXPORT_SYMBOL_GPL drivers/bus/sunxi-rsb 0xd1730d3d sunxi_rsb_driver_register +EXPORT_SYMBOL_GPL drivers/clk/meson/clk-phase 0x259c6a72 meson_clk_phase_ops +EXPORT_SYMBOL_GPL drivers/clk/meson/clk-phase 0x875b274f meson_clk_triphase_ops +EXPORT_SYMBOL_GPL drivers/clk/meson/sclk-div 0xce28c471 meson_sclk_div_ops +EXPORT_SYMBOL_GPL drivers/clk/qcom/clk-qcom 0x0000139e clk_alpha_pll_ops +EXPORT_SYMBOL_GPL drivers/clk/qcom/clk-qcom 0x08f0cc30 clk_is_enabled_regmap +EXPORT_SYMBOL_GPL drivers/clk/qcom/clk-qcom 0x09020683 devm_clk_register_regmap +EXPORT_SYMBOL_GPL drivers/clk/qcom/clk-qcom 0x0d10c3c4 clk_enable_regmap +EXPORT_SYMBOL_GPL drivers/clk/qcom/clk-qcom 0x0d678ab9 qcom_reset_ops +EXPORT_SYMBOL_GPL drivers/clk/qcom/clk-qcom 0x0e5f8a53 clk_pll_sr2_ops +EXPORT_SYMBOL_GPL drivers/clk/qcom/clk-qcom 0x0e98da3d clk_pll_vote_ops +EXPORT_SYMBOL_GPL drivers/clk/qcom/clk-qcom 0x17d44071 clk_alpha_pll_hwfsm_ops +EXPORT_SYMBOL_GPL drivers/clk/qcom/clk-qcom 0x1987883d clk_alpha_pll_fixed_lucid_ops +EXPORT_SYMBOL_GPL drivers/clk/qcom/clk-qcom 0x272f3204 clk_alpha_pll_fixed_ops +EXPORT_SYMBOL_GPL drivers/clk/qcom/clk-qcom 0x2a9c7452 clk_rcg_lcc_ops +EXPORT_SYMBOL_GPL drivers/clk/qcom/clk-qcom 0x2b0d957d clk_pixel_ops +EXPORT_SYMBOL_GPL drivers/clk/qcom/clk-qcom 0x2b2b5c7b qcom_cc_probe_by_index +EXPORT_SYMBOL_GPL drivers/clk/qcom/clk-qcom 0x2cae96b3 clk_regmap_div_ops +EXPORT_SYMBOL_GPL drivers/clk/qcom/clk-qcom 0x30bbf987 clk_rcg2_shared_ops +EXPORT_SYMBOL_GPL drivers/clk/qcom/clk-qcom 0x310b6341 clk_regmap_mux_closest_ops +EXPORT_SYMBOL_GPL drivers/clk/qcom/clk-qcom 0x3747af55 clk_rcg_bypass2_ops +EXPORT_SYMBOL_GPL drivers/clk/qcom/clk-qcom 0x395868a1 qcom_find_freq_floor +EXPORT_SYMBOL_GPL drivers/clk/qcom/clk-qcom 0x3dfc2dc5 clk_branch_simple_ops +EXPORT_SYMBOL_GPL drivers/clk/qcom/clk-qcom 0x405d394a clk_alpha_pll_postdiv_ops +EXPORT_SYMBOL_GPL drivers/clk/qcom/clk-qcom 0x418e9cfd clk_pll_ops +EXPORT_SYMBOL_GPL drivers/clk/qcom/clk-qcom 0x4b0ed6da clk_ops_hfpll +EXPORT_SYMBOL_GPL drivers/clk/qcom/clk-qcom 0x5111f2ad clk_rcg2_ops +EXPORT_SYMBOL_GPL drivers/clk/qcom/clk-qcom 0x520df3b7 clk_rcg_esc_ops +EXPORT_SYMBOL_GPL drivers/clk/qcom/clk-qcom 0x57172323 clk_byte_ops +EXPORT_SYMBOL_GPL drivers/clk/qcom/clk-qcom 0x5a6ae327 clk_alpha_pll_configure +EXPORT_SYMBOL_GPL drivers/clk/qcom/clk-qcom 0x5e6abb22 mux_div_set_src_div +EXPORT_SYMBOL_GPL drivers/clk/qcom/clk-qcom 0x615dbb77 clk_branch2_ops +EXPORT_SYMBOL_GPL drivers/clk/qcom/clk-qcom 0x631939a9 clk_branch2_aon_ops +EXPORT_SYMBOL_GPL drivers/clk/qcom/clk-qcom 0x63ee9aa4 clk_alpha_pll_fixed_fabia_ops +EXPORT_SYMBOL_GPL drivers/clk/qcom/clk-qcom 0x6596a109 qcom_cc_register_sleep_clk +EXPORT_SYMBOL_GPL drivers/clk/qcom/clk-qcom 0x66922845 clk_branch_ops +EXPORT_SYMBOL_GPL drivers/clk/qcom/clk-qcom 0x68199825 clk_disable_regmap +EXPORT_SYMBOL_GPL drivers/clk/qcom/clk-qcom 0x6af41b8b qcom_pll_set_fsm_mode +EXPORT_SYMBOL_GPL drivers/clk/qcom/clk-qcom 0x6b58fd54 qcom_cc_map +EXPORT_SYMBOL_GPL drivers/clk/qcom/clk-qcom 0x7019378d clk_pll_configure_sr_hpm_lp +EXPORT_SYMBOL_GPL drivers/clk/qcom/clk-qcom 0x766e9f87 clk_regmap_div_ro_ops +EXPORT_SYMBOL_GPL drivers/clk/qcom/clk-qcom 0x787e8234 qcom_find_freq +EXPORT_SYMBOL_GPL drivers/clk/qcom/clk-qcom 0x78b81ea0 clk_rcg2_floor_ops +EXPORT_SYMBOL_GPL drivers/clk/qcom/clk-qcom 0x7a7d500f clk_fabia_pll_configure +EXPORT_SYMBOL_GPL drivers/clk/qcom/clk-qcom 0x7e66fd9e clk_regmap_mux_div_ops +EXPORT_SYMBOL_GPL drivers/clk/qcom/clk-qcom 0x8b1042e6 qcom_cc_probe +EXPORT_SYMBOL_GPL drivers/clk/qcom/clk-qcom 0x8b55eac4 clk_dyn_rcg_ops +EXPORT_SYMBOL_GPL drivers/clk/qcom/clk-qcom 0x91c41c9f clk_edp_pixel_ops +EXPORT_SYMBOL_GPL drivers/clk/qcom/clk-qcom 0x97488818 clk_rcg_pixel_ops +EXPORT_SYMBOL_GPL drivers/clk/qcom/clk-qcom 0x9c8854a1 clk_alpha_pll_lucid_ops +EXPORT_SYMBOL_GPL drivers/clk/qcom/clk-qcom 0x9d909edd clk_gfx3d_ops +EXPORT_SYMBOL_GPL drivers/clk/qcom/clk-qcom 0x9e33f365 clk_trion_pll_postdiv_ops +EXPORT_SYMBOL_GPL drivers/clk/qcom/clk-qcom 0x9f241baa clk_rcg_ops +EXPORT_SYMBOL_GPL drivers/clk/qcom/clk-qcom 0xa30a653c qcom_cc_really_probe +EXPORT_SYMBOL_GPL drivers/clk/qcom/clk-qcom 0xa6f08f9a clk_trion_fixed_pll_ops +EXPORT_SYMBOL_GPL drivers/clk/qcom/clk-qcom 0xaa403ee8 clk_alpha_pll_huayra_ops +EXPORT_SYMBOL_GPL drivers/clk/qcom/clk-qcom 0xadc2751b clk_alpha_pll_postdiv_fabia_ops +EXPORT_SYMBOL_GPL drivers/clk/qcom/clk-qcom 0xb09ba7ac qcom_find_src_index +EXPORT_SYMBOL_GPL drivers/clk/qcom/clk-qcom 0xba961aa7 clk_dp_ops +EXPORT_SYMBOL_GPL drivers/clk/qcom/clk-qcom 0xc150d434 clk_alpha_pll_postdiv_ro_ops +EXPORT_SYMBOL_GPL drivers/clk/qcom/clk-qcom 0xc5bdfa11 clk_byte2_ops +EXPORT_SYMBOL_GPL drivers/clk/qcom/clk-qcom 0xce340fb8 clk_alpha_pll_regs +EXPORT_SYMBOL_GPL drivers/clk/qcom/clk-qcom 0xcf422970 clk_rcg_bypass_ops +EXPORT_SYMBOL_GPL drivers/clk/qcom/clk-qcom 0xd7ab6782 clk_alpha_pll_postdiv_lucid_ops +EXPORT_SYMBOL_GPL drivers/clk/qcom/clk-qcom 0xdc014e02 qcom_cc_register_rcg_dfs +EXPORT_SYMBOL_GPL drivers/clk/qcom/clk-qcom 0xdffcf609 qcom_cc_register_board_clk +EXPORT_SYMBOL_GPL drivers/clk/qcom/clk-qcom 0xe6e14638 clk_alpha_pll_fabia_ops +EXPORT_SYMBOL_GPL drivers/clk/qcom/clk-qcom 0xe816a036 clk_pll_configure_sr +EXPORT_SYMBOL_GPL drivers/clk/qcom/clk-qcom 0xec88bfe0 clk_lucid_pll_configure +EXPORT_SYMBOL_GPL drivers/clk/sprd/clk-sprd 0x096aa17b sprd_div_helper_recalc_rate +EXPORT_SYMBOL_GPL drivers/clk/sprd/clk-sprd 0x0a3ec278 sprd_gate_ops +EXPORT_SYMBOL_GPL drivers/clk/sprd/clk-sprd 0x14212841 sprd_div_ops +EXPORT_SYMBOL_GPL drivers/clk/sprd/clk-sprd 0x1ca519ca sprd_pll_ops +EXPORT_SYMBOL_GPL drivers/clk/sprd/clk-sprd 0x37e40b55 sprd_clk_regmap_init +EXPORT_SYMBOL_GPL drivers/clk/sprd/clk-sprd 0x4cad4f51 sprd_div_helper_round_rate +EXPORT_SYMBOL_GPL drivers/clk/sprd/clk-sprd 0x4f93d75f sprd_mux_helper_get_parent +EXPORT_SYMBOL_GPL drivers/clk/sprd/clk-sprd 0x597905e4 sprd_sc_gate_ops +EXPORT_SYMBOL_GPL drivers/clk/sprd/clk-sprd 0x6b8639b9 sprd_div_helper_set_rate +EXPORT_SYMBOL_GPL drivers/clk/sprd/clk-sprd 0x911aa4a0 sprd_mux_ops +EXPORT_SYMBOL_GPL drivers/clk/sprd/clk-sprd 0x9925914a sprd_mux_helper_set_parent +EXPORT_SYMBOL_GPL drivers/clk/sprd/clk-sprd 0xaf833f64 sprd_pll_sc_gate_ops +EXPORT_SYMBOL_GPL drivers/clk/sprd/clk-sprd 0xddecd266 sprd_clk_probe +EXPORT_SYMBOL_GPL drivers/clk/sprd/clk-sprd 0xe305cb73 sprd_comp_ops +EXPORT_SYMBOL_GPL drivers/counter/counter 0x01aab51b counter_count_direction_str +EXPORT_SYMBOL_GPL drivers/counter/counter 0x28935163 counter_unregister +EXPORT_SYMBOL_GPL drivers/counter/counter 0x2b9eee17 counter_signal_enum_available_read +EXPORT_SYMBOL_GPL drivers/counter/counter 0x2d801de0 counter_device_enum_read +EXPORT_SYMBOL_GPL drivers/counter/counter 0x41f34d63 counter_device_enum_write +EXPORT_SYMBOL_GPL drivers/counter/counter 0x48e99ed5 counter_signal_enum_write +EXPORT_SYMBOL_GPL drivers/counter/counter 0x4a874253 devm_counter_unregister +EXPORT_SYMBOL_GPL drivers/counter/counter 0x529f425c counter_register +EXPORT_SYMBOL_GPL drivers/counter/counter 0x570aa1a6 counter_count_enum_read +EXPORT_SYMBOL_GPL drivers/counter/counter 0x5d2a8e52 counter_device_enum_available_read +EXPORT_SYMBOL_GPL drivers/counter/counter 0x6028e7bc counter_signal_enum_read +EXPORT_SYMBOL_GPL drivers/counter/counter 0x67d4b1e9 counter_count_enum_available_read +EXPORT_SYMBOL_GPL drivers/counter/counter 0x71fe037d devm_counter_register +EXPORT_SYMBOL_GPL drivers/counter/counter 0xb3efce61 counter_count_enum_write +EXPORT_SYMBOL_GPL drivers/counter/counter 0xee526d0f counter_count_mode_str +EXPORT_SYMBOL_GPL drivers/crypto/ccp/ccp 0x04773b60 ccp_present +EXPORT_SYMBOL_GPL drivers/crypto/ccp/ccp 0x3a1a3979 ccp_version +EXPORT_SYMBOL_GPL drivers/crypto/ccp/ccp 0x5965d306 ccp_enqueue_cmd +EXPORT_SYMBOL_GPL drivers/crypto/hisilicon/hisi_qm 0x0d9b5f7a hisi_qm_create_qp +EXPORT_SYMBOL_GPL drivers/crypto/hisilicon/hisi_qm 0x13f28fd5 hisi_qm_dev_err_init +EXPORT_SYMBOL_GPL drivers/crypto/hisilicon/hisi_qm 0x1c915460 hisi_acc_sg_buf_unmap +EXPORT_SYMBOL_GPL drivers/crypto/hisilicon/hisi_qm 0x2638857e hisi_qm_start +EXPORT_SYMBOL_GPL drivers/crypto/hisilicon/hisi_qm 0x2c402b6c hisi_qp_send +EXPORT_SYMBOL_GPL drivers/crypto/hisilicon/hisi_qm 0x2da9a20b hisi_qm_dev_slot_reset +EXPORT_SYMBOL_GPL drivers/crypto/hisilicon/hisi_qm 0x2f1f5099 hisi_qm_reset_prepare +EXPORT_SYMBOL_GPL drivers/crypto/hisilicon/hisi_qm 0x2fe56611 hisi_acc_create_sgl_pool +EXPORT_SYMBOL_GPL drivers/crypto/hisilicon/hisi_qm 0x38baf112 hisi_qm_start_qp +EXPORT_SYMBOL_GPL drivers/crypto/hisilicon/hisi_qm 0x3f7f6ee5 hisi_qm_sriov_disable +EXPORT_SYMBOL_GPL drivers/crypto/hisilicon/hisi_qm 0x4db27037 hisi_qm_dev_err_detected +EXPORT_SYMBOL_GPL drivers/crypto/hisilicon/hisi_qm 0x568f60cc hisi_qm_alloc_qps_node +EXPORT_SYMBOL_GPL drivers/crypto/hisilicon/hisi_qm 0x5aec7866 hisi_qm_stop +EXPORT_SYMBOL_GPL drivers/crypto/hisilicon/hisi_qm 0x623824ce hisi_qm_free_qps +EXPORT_SYMBOL_GPL drivers/crypto/hisilicon/hisi_qm 0x66d34cff hisi_qm_debug_init +EXPORT_SYMBOL_GPL drivers/crypto/hisilicon/hisi_qm 0x71c33000 hisi_qm_debug_regs_clear +EXPORT_SYMBOL_GPL drivers/crypto/hisilicon/hisi_qm 0x7e359ae4 hisi_qm_stop_qp +EXPORT_SYMBOL_GPL drivers/crypto/hisilicon/hisi_qm 0x841a9ab4 hisi_qm_sriov_enable +EXPORT_SYMBOL_GPL drivers/crypto/hisilicon/hisi_qm 0x8ec14c0a hisi_qm_reset_done +EXPORT_SYMBOL_GPL drivers/crypto/hisilicon/hisi_qm 0x9495bf21 hisi_qm_get_vft +EXPORT_SYMBOL_GPL drivers/crypto/hisilicon/hisi_qm 0x9cafae30 hisi_acc_free_sgl_pool +EXPORT_SYMBOL_GPL drivers/crypto/hisilicon/hisi_qm 0x9cd5001a hisi_qm_release_qp +EXPORT_SYMBOL_GPL drivers/crypto/hisilicon/hisi_qm 0x9f04f78a hisi_acc_sg_buf_map_to_hw_sgl +EXPORT_SYMBOL_GPL drivers/crypto/hisilicon/hisi_qm 0x9fa885a8 hisi_qm_dev_err_uninit +EXPORT_SYMBOL_GPL drivers/crypto/hisilicon/hisi_qm 0xacf017e0 hisi_qm_init +EXPORT_SYMBOL_GPL drivers/crypto/hisilicon/hisi_qm 0xb108fe3f hisi_qm_sriov_configure +EXPORT_SYMBOL_GPL drivers/crypto/hisilicon/hisi_qm 0xc64cb7ca hisi_qm_uninit +EXPORT_SYMBOL_GPL drivers/crypto/hisilicon/hisi_qm 0xde835891 hisi_qm_get_free_qp_num +EXPORT_SYMBOL_GPL drivers/crypto/marvell/octeontx/octeontx-cpt 0x32e43048 otx_cpt_uc_supports_eng_type +EXPORT_SYMBOL_GPL drivers/crypto/marvell/octeontx/octeontx-cpt 0x8452e314 otx_cpt_eng_grp_has_eng_type +EXPORT_SYMBOL_GPL drivers/dax/device_dax 0x80d0b7b7 dev_dax_probe +EXPORT_SYMBOL_GPL drivers/dax/pmem/dax_pmem_core 0x077c4414 __dax_pmem_probe +EXPORT_SYMBOL_GPL drivers/dma/dw-edma/dw-edma 0xd539ea50 dw_edma_probe +EXPORT_SYMBOL_GPL drivers/dma/dw-edma/dw-edma 0xf131dbe9 dw_edma_remove +EXPORT_SYMBOL_GPL drivers/dma/dw/dw_dmac_core 0x045444ba dw_dma_probe +EXPORT_SYMBOL_GPL drivers/dma/dw/dw_dmac_core 0x16314f68 idma32_dma_remove +EXPORT_SYMBOL_GPL drivers/dma/dw/dw_dmac_core 0x2b03d5c1 idma32_dma_probe +EXPORT_SYMBOL_GPL drivers/dma/dw/dw_dmac_core 0x81e28d69 dw_dma_filter +EXPORT_SYMBOL_GPL drivers/dma/dw/dw_dmac_core 0x84ba52c7 do_dw_dma_disable +EXPORT_SYMBOL_GPL drivers/dma/dw/dw_dmac_core 0xd1c9b04d dw_dma_remove +EXPORT_SYMBOL_GPL drivers/dma/dw/dw_dmac_core 0xfab81d9c do_dw_dma_enable +EXPORT_SYMBOL_GPL drivers/dma/fsl-dpaa2-qdma/dpdmai 0x05fe78bf dpdmai_get_rx_queue +EXPORT_SYMBOL_GPL drivers/dma/fsl-dpaa2-qdma/dpdmai 0x0cf99c2e dpdmai_destroy +EXPORT_SYMBOL_GPL drivers/dma/fsl-dpaa2-qdma/dpdmai 0x2012e188 dpdmai_open +EXPORT_SYMBOL_GPL drivers/dma/fsl-dpaa2-qdma/dpdmai 0x37ed1e8c dpdmai_close +EXPORT_SYMBOL_GPL drivers/dma/fsl-dpaa2-qdma/dpdmai 0x3b38cb26 dpdmai_get_tx_queue +EXPORT_SYMBOL_GPL drivers/dma/fsl-dpaa2-qdma/dpdmai 0x5e0edaef dpdmai_set_rx_queue +EXPORT_SYMBOL_GPL drivers/dma/fsl-dpaa2-qdma/dpdmai 0x71f91caa dpdmai_get_attributes +EXPORT_SYMBOL_GPL drivers/dma/fsl-dpaa2-qdma/dpdmai 0x8afde869 dpdmai_disable +EXPORT_SYMBOL_GPL drivers/dma/fsl-dpaa2-qdma/dpdmai 0x9b4047c7 dpdmai_reset +EXPORT_SYMBOL_GPL drivers/dma/fsl-dpaa2-qdma/dpdmai 0xd6d5485b dpdmai_enable +EXPORT_SYMBOL_GPL drivers/dma/fsl-edma-common 0x22c3ee40 fsl_edma_xfer_desc +EXPORT_SYMBOL_GPL drivers/dma/fsl-edma-common 0x26edb613 fsl_edma_tx_status +EXPORT_SYMBOL_GPL drivers/dma/fsl-edma-common 0x338a63f8 fsl_edma_setup_regs +EXPORT_SYMBOL_GPL drivers/dma/fsl-edma-common 0x4635f2af fsl_edma_issue_pending +EXPORT_SYMBOL_GPL drivers/dma/fsl-edma-common 0x66ea3dbb fsl_edma_prep_dma_cyclic +EXPORT_SYMBOL_GPL drivers/dma/fsl-edma-common 0x74b93fc2 fsl_edma_free_desc +EXPORT_SYMBOL_GPL drivers/dma/fsl-edma-common 0x7da5fb4a fsl_edma_pause +EXPORT_SYMBOL_GPL drivers/dma/fsl-edma-common 0x8f2195d8 fsl_edma_prep_slave_sg +EXPORT_SYMBOL_GPL drivers/dma/fsl-edma-common 0x90c17d68 fsl_edma_cleanup_vchan +EXPORT_SYMBOL_GPL drivers/dma/fsl-edma-common 0x9228d01e fsl_edma_disable_request +EXPORT_SYMBOL_GPL drivers/dma/fsl-edma-common 0xa23941d3 fsl_edma_free_chan_resources +EXPORT_SYMBOL_GPL drivers/dma/fsl-edma-common 0xac850d06 fsl_edma_resume +EXPORT_SYMBOL_GPL drivers/dma/fsl-edma-common 0xc2033015 fsl_edma_alloc_chan_resources +EXPORT_SYMBOL_GPL drivers/dma/fsl-edma-common 0xcc248d73 fsl_edma_slave_config +EXPORT_SYMBOL_GPL drivers/dma/fsl-edma-common 0xec5eadad fsl_edma_terminate_all +EXPORT_SYMBOL_GPL drivers/dma/fsl-edma-common 0xedad2a1c fsl_edma_chan_mux +EXPORT_SYMBOL_GPL drivers/dma/qcom/hdma_mgmt 0x4fe16661 hidma_mgmt_init_sys +EXPORT_SYMBOL_GPL drivers/dma/qcom/hdma_mgmt 0x778d2e6a hidma_mgmt_setup +EXPORT_SYMBOL_GPL drivers/firewire/firewire-core 0xe86fb5c7 fw_card_release +EXPORT_SYMBOL_GPL drivers/firmware/arm_scpi 0x7e3e0f55 get_scpi_ops +EXPORT_SYMBOL_GPL drivers/firmware/stratix10-svc 0x0e7b7015 stratix10_svc_done +EXPORT_SYMBOL_GPL drivers/firmware/stratix10-svc 0x41d5ad1c stratix10_svc_allocate_memory +EXPORT_SYMBOL_GPL drivers/firmware/stratix10-svc 0x50f5368a stratix10_svc_free_channel +EXPORT_SYMBOL_GPL drivers/firmware/stratix10-svc 0x595b630e stratix10_svc_free_memory +EXPORT_SYMBOL_GPL drivers/firmware/stratix10-svc 0x82043a8b stratix10_svc_request_channel_byname +EXPORT_SYMBOL_GPL drivers/firmware/stratix10-svc 0xd3df684d stratix10_svc_send +EXPORT_SYMBOL_GPL drivers/fpga/altera-pr-ip-core 0xa7c17de5 alt_pr_register +EXPORT_SYMBOL_GPL drivers/fpga/altera-pr-ip-core 0xe6bd6f15 alt_pr_unregister +EXPORT_SYMBOL_GPL drivers/fpga/dfl 0x0abb0f7a dfl_fpga_dev_ops_unregister +EXPORT_SYMBOL_GPL drivers/fpga/dfl 0x2285824f dfl_fpga_feature_devs_remove +EXPORT_SYMBOL_GPL drivers/fpga/dfl 0x397c297f dfl_fpga_dev_ops_register +EXPORT_SYMBOL_GPL drivers/fpga/dfl 0x45cc8437 dfl_fpga_feature_devs_enumerate +EXPORT_SYMBOL_GPL drivers/fpga/dfl 0x51e66590 dfl_fpga_enum_info_alloc +EXPORT_SYMBOL_GPL drivers/fpga/dfl 0x69b33771 __dfl_fpga_cdev_find_port +EXPORT_SYMBOL_GPL drivers/fpga/dfl 0x71e8640a dfl_fpga_cdev_config_ports_pf +EXPORT_SYMBOL_GPL drivers/fpga/dfl 0x74d93be8 dfl_fpga_cdev_assign_port +EXPORT_SYMBOL_GPL drivers/fpga/dfl 0x98453ab8 dfl_fpga_dev_feature_uinit +EXPORT_SYMBOL_GPL drivers/fpga/dfl 0xa088cf37 dfl_fpga_cdev_release_port +EXPORT_SYMBOL_GPL drivers/fpga/dfl 0xa2caede3 dfl_fpga_check_port_id +EXPORT_SYMBOL_GPL drivers/fpga/dfl 0xcd08a660 dfl_fpga_port_ops_put +EXPORT_SYMBOL_GPL drivers/fpga/dfl 0xd247d76e dfl_fpga_enum_info_free +EXPORT_SYMBOL_GPL drivers/fpga/dfl 0xd59a4a11 dfl_fpga_dev_feature_init +EXPORT_SYMBOL_GPL drivers/fpga/dfl 0xd9ae62c4 dfl_fpga_enum_info_add_dfl +EXPORT_SYMBOL_GPL drivers/fpga/dfl 0xe1eb8bf3 dfl_fpga_cdev_config_ports_vf +EXPORT_SYMBOL_GPL drivers/fpga/dfl 0xe37cd2b9 dfl_fpga_port_ops_get +EXPORT_SYMBOL_GPL drivers/fpga/dfl 0xe57d26ce dfl_fpga_port_ops_add +EXPORT_SYMBOL_GPL drivers/fpga/dfl 0xea0696ad dfl_fpga_port_ops_del +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 0x1fc787ea fpga_bridge_free +EXPORT_SYMBOL_GPL drivers/fpga/fpga-bridge 0x2c8167cf fpga_bridges_disable +EXPORT_SYMBOL_GPL drivers/fpga/fpga-bridge 0x3689ceab of_fpga_bridge_get +EXPORT_SYMBOL_GPL drivers/fpga/fpga-bridge 0x4b6ede99 fpga_bridge_enable +EXPORT_SYMBOL_GPL drivers/fpga/fpga-bridge 0x513c3585 fpga_bridge_create +EXPORT_SYMBOL_GPL drivers/fpga/fpga-bridge 0x7123dd3f fpga_bridge_disable +EXPORT_SYMBOL_GPL drivers/fpga/fpga-bridge 0x862c7794 of_fpga_bridge_get_to_list +EXPORT_SYMBOL_GPL drivers/fpga/fpga-bridge 0x9bdf73ba fpga_bridge_put +EXPORT_SYMBOL_GPL drivers/fpga/fpga-bridge 0xb8e86a9d devm_fpga_bridge_create +EXPORT_SYMBOL_GPL drivers/fpga/fpga-bridge 0xc3e7eff7 fpga_bridge_get_to_list +EXPORT_SYMBOL_GPL drivers/fpga/fpga-bridge 0xc4bf73b6 fpga_bridge_register +EXPORT_SYMBOL_GPL drivers/fpga/fpga-bridge 0xcd17cb3e fpga_bridge_unregister +EXPORT_SYMBOL_GPL drivers/fpga/fpga-bridge 0xdbbbea09 fpga_bridge_get +EXPORT_SYMBOL_GPL drivers/fpga/fpga-mgr 0x0308628a fpga_mgr_unregister +EXPORT_SYMBOL_GPL drivers/fpga/fpga-mgr 0x2c35b1ce fpga_image_info_alloc +EXPORT_SYMBOL_GPL drivers/fpga/fpga-mgr 0x45e57f83 of_fpga_mgr_get +EXPORT_SYMBOL_GPL drivers/fpga/fpga-mgr 0x5ae95dca fpga_mgr_register +EXPORT_SYMBOL_GPL drivers/fpga/fpga-mgr 0x84d325f4 fpga_image_info_free +EXPORT_SYMBOL_GPL drivers/fpga/fpga-mgr 0x85dfbb94 fpga_mgr_put +EXPORT_SYMBOL_GPL drivers/fpga/fpga-mgr 0x8d183bce fpga_mgr_unlock +EXPORT_SYMBOL_GPL drivers/fpga/fpga-mgr 0x90d7bb22 fpga_mgr_load +EXPORT_SYMBOL_GPL drivers/fpga/fpga-mgr 0xbc9485f9 fpga_mgr_get +EXPORT_SYMBOL_GPL drivers/fpga/fpga-mgr 0xcee0add1 fpga_mgr_create +EXPORT_SYMBOL_GPL drivers/fpga/fpga-mgr 0xdc1f2760 fpga_mgr_free +EXPORT_SYMBOL_GPL drivers/fpga/fpga-mgr 0xe70e3909 fpga_mgr_lock +EXPORT_SYMBOL_GPL drivers/fpga/fpga-mgr 0xfef0d5da devm_fpga_mgr_create +EXPORT_SYMBOL_GPL drivers/fpga/fpga-region 0x645b7996 fpga_region_create +EXPORT_SYMBOL_GPL drivers/fpga/fpga-region 0x6e3e556c fpga_region_program_fpga +EXPORT_SYMBOL_GPL drivers/fpga/fpga-region 0x7b5b75fa fpga_region_unregister +EXPORT_SYMBOL_GPL drivers/fpga/fpga-region 0xb7d0ee37 fpga_region_class_find +EXPORT_SYMBOL_GPL drivers/fpga/fpga-region 0xb986d3fc devm_fpga_region_create +EXPORT_SYMBOL_GPL drivers/fpga/fpga-region 0xe0fda1a3 fpga_region_register +EXPORT_SYMBOL_GPL drivers/fpga/fpga-region 0xf1db4d19 fpga_region_free +EXPORT_SYMBOL_GPL drivers/fsi/fsi-core 0x2a0784cb fsi_get_new_minor +EXPORT_SYMBOL_GPL drivers/fsi/fsi-core 0x3a93847e fsi_slave_claim_range +EXPORT_SYMBOL_GPL drivers/fsi/fsi-core 0x3d365274 fsi_master_register +EXPORT_SYMBOL_GPL drivers/fsi/fsi-core 0x4ca5e3b5 fsi_driver_register +EXPORT_SYMBOL_GPL drivers/fsi/fsi-core 0x54532e8a fsi_driver_unregister +EXPORT_SYMBOL_GPL drivers/fsi/fsi-core 0x5a57d574 fsi_free_minor +EXPORT_SYMBOL_GPL drivers/fsi/fsi-core 0x5ef8d3ae fsi_master_unregister +EXPORT_SYMBOL_GPL drivers/fsi/fsi-core 0x78060f23 fsi_slave_read +EXPORT_SYMBOL_GPL drivers/fsi/fsi-core 0x7fe4e7fa fsi_bus_type +EXPORT_SYMBOL_GPL drivers/fsi/fsi-core 0x824b4830 fsi_device_write +EXPORT_SYMBOL_GPL drivers/fsi/fsi-core 0x9faa47bf fsi_device_read +EXPORT_SYMBOL_GPL drivers/fsi/fsi-core 0xc002ec51 fsi_cdev_type +EXPORT_SYMBOL_GPL drivers/fsi/fsi-core 0xce22aee2 fsi_slave_release_range +EXPORT_SYMBOL_GPL drivers/fsi/fsi-core 0xd942f235 fsi_slave_write +EXPORT_SYMBOL_GPL drivers/fsi/fsi-core 0xe10e6dd8 fsi_master_rescan +EXPORT_SYMBOL_GPL drivers/fsi/fsi-occ 0x0ca577f9 fsi_occ_submit +EXPORT_SYMBOL_GPL drivers/fsi/fsi-sbefifo 0x3115bb54 sbefifo_parse_status +EXPORT_SYMBOL_GPL drivers/fsi/fsi-sbefifo 0x356d303a sbefifo_submit +EXPORT_SYMBOL_GPL drivers/gnss/gnss 0x57c4a6a7 gnss_deregister_device +EXPORT_SYMBOL_GPL drivers/gnss/gnss 0x5ee66e61 gnss_put_device +EXPORT_SYMBOL_GPL drivers/gnss/gnss 0x89eede43 gnss_allocate_device +EXPORT_SYMBOL_GPL drivers/gnss/gnss 0xab178a11 gnss_insert_raw +EXPORT_SYMBOL_GPL drivers/gnss/gnss 0xf59bc092 gnss_register_device +EXPORT_SYMBOL_GPL drivers/gnss/gnss-serial 0x04d4e28a gnss_serial_free +EXPORT_SYMBOL_GPL drivers/gnss/gnss-serial 0x2405c545 gnss_serial_register +EXPORT_SYMBOL_GPL drivers/gnss/gnss-serial 0x28f5cced gnss_serial_pm_ops +EXPORT_SYMBOL_GPL drivers/gnss/gnss-serial 0x322507d8 gnss_serial_deregister +EXPORT_SYMBOL_GPL drivers/gnss/gnss-serial 0x6558b733 gnss_serial_allocate +EXPORT_SYMBOL_GPL drivers/gpio/gpio-max730x 0x655b0773 __max730x_probe +EXPORT_SYMBOL_GPL drivers/gpio/gpio-max730x 0xcdbbc844 __max730x_remove +EXPORT_SYMBOL_GPL drivers/gpu/drm/bridge/analogix/analogix_dp 0x0d110780 analogix_dp_stop_crc +EXPORT_SYMBOL_GPL drivers/gpu/drm/bridge/analogix/analogix_dp 0x0e3f8658 analogix_dp_remove +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 0x60f35d0f analogix_dp_probe +EXPORT_SYMBOL_GPL drivers/gpu/drm/bridge/analogix/analogix_dp 0x676d6c44 analogix_dp_unbind +EXPORT_SYMBOL_GPL drivers/gpu/drm/bridge/analogix/analogix_dp 0x8c729e03 analogix_dp_start_crc +EXPORT_SYMBOL_GPL drivers/gpu/drm/bridge/analogix/analogix_dp 0xaf959f56 analogix_dp_bind +EXPORT_SYMBOL_GPL drivers/gpu/drm/bridge/analogix/analogix_dp 0xbf43797f analogix_dp_resume +EXPORT_SYMBOL_GPL drivers/gpu/drm/bridge/analogix/analogix_dp 0xc384fde5 analogix_dp_suspend +EXPORT_SYMBOL_GPL drivers/gpu/drm/bridge/synopsys/dw-hdmi 0x09340e05 dw_hdmi_set_channel_count +EXPORT_SYMBOL_GPL drivers/gpu/drm/bridge/synopsys/dw-hdmi 0x094f6fc5 dw_hdmi_phy_i2c_set_addr +EXPORT_SYMBOL_GPL drivers/gpu/drm/bridge/synopsys/dw-hdmi 0x0af99949 dw_hdmi_bind +EXPORT_SYMBOL_GPL drivers/gpu/drm/bridge/synopsys/dw-hdmi 0x11f6315d dw_hdmi_set_plugged_cb +EXPORT_SYMBOL_GPL drivers/gpu/drm/bridge/synopsys/dw-hdmi 0x1461e227 dw_hdmi_set_channel_status +EXPORT_SYMBOL_GPL drivers/gpu/drm/bridge/synopsys/dw-hdmi 0x157e02b6 dw_hdmi_phy_reset +EXPORT_SYMBOL_GPL drivers/gpu/drm/bridge/synopsys/dw-hdmi 0x2d1c0e80 dw_hdmi_setup_rx_sense +EXPORT_SYMBOL_GPL drivers/gpu/drm/bridge/synopsys/dw-hdmi 0x2fac9436 dw_hdmi_set_channel_allocation +EXPORT_SYMBOL_GPL drivers/gpu/drm/bridge/synopsys/dw-hdmi 0x316212a8 dw_hdmi_unbind +EXPORT_SYMBOL_GPL drivers/gpu/drm/bridge/synopsys/dw-hdmi 0x42926f4a dw_hdmi_resume +EXPORT_SYMBOL_GPL drivers/gpu/drm/bridge/synopsys/dw-hdmi 0x4a9b174f dw_hdmi_remove +EXPORT_SYMBOL_GPL drivers/gpu/drm/bridge/synopsys/dw-hdmi 0x5c719495 dw_hdmi_probe +EXPORT_SYMBOL_GPL drivers/gpu/drm/bridge/synopsys/dw-hdmi 0x6712b5a7 dw_hdmi_phy_gen2_txpwron +EXPORT_SYMBOL_GPL drivers/gpu/drm/bridge/synopsys/dw-hdmi 0x7d8a3aee dw_hdmi_phy_i2c_write +EXPORT_SYMBOL_GPL drivers/gpu/drm/bridge/synopsys/dw-hdmi 0x822671f9 dw_hdmi_set_high_tmds_clock_ratio +EXPORT_SYMBOL_GPL drivers/gpu/drm/bridge/synopsys/dw-hdmi 0x8dcd6f43 dw_hdmi_set_sample_rate +EXPORT_SYMBOL_GPL drivers/gpu/drm/bridge/synopsys/dw-hdmi 0x9b44a60b dw_hdmi_phy_gen2_pddq +EXPORT_SYMBOL_GPL drivers/gpu/drm/bridge/synopsys/dw-hdmi 0xce27012a dw_hdmi_audio_disable +EXPORT_SYMBOL_GPL drivers/gpu/drm/bridge/synopsys/dw-hdmi 0xd6968220 dw_hdmi_phy_setup_hpd +EXPORT_SYMBOL_GPL drivers/gpu/drm/bridge/synopsys/dw-hdmi 0xd8fe547b dw_hdmi_audio_enable +EXPORT_SYMBOL_GPL drivers/gpu/drm/bridge/synopsys/dw-hdmi 0xdafa1790 dw_hdmi_phy_read_hpd +EXPORT_SYMBOL_GPL drivers/gpu/drm/bridge/synopsys/dw-hdmi 0xf5922009 dw_hdmi_phy_update_hpd +EXPORT_SYMBOL_GPL drivers/gpu/drm/bridge/synopsys/dw-mipi-dsi 0x0d667204 dw_mipi_dsi_unbind +EXPORT_SYMBOL_GPL drivers/gpu/drm/bridge/synopsys/dw-mipi-dsi 0x41361ae4 dw_mipi_dsi_set_slave +EXPORT_SYMBOL_GPL drivers/gpu/drm/bridge/synopsys/dw-mipi-dsi 0x42ac3b2e dw_mipi_dsi_remove +EXPORT_SYMBOL_GPL drivers/gpu/drm/bridge/synopsys/dw-mipi-dsi 0xaffd1f01 dw_mipi_dsi_bind +EXPORT_SYMBOL_GPL drivers/gpu/drm/bridge/synopsys/dw-mipi-dsi 0xee99b508 dw_mipi_dsi_probe +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm 0x03e8c35c drm_gem_cma_create +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm 0x1bfa3f4c drm_gem_cma_mmap +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm 0x1d6ec267 drm_display_mode_to_videomode +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm 0x246717c9 drm_bridge_get_edid +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm 0x3052744a drm_get_unmapped_area +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm 0x30ac4af2 drm_gem_cma_prime_vmap +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm 0x3314b593 drm_gem_cma_vm_ops +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm 0x3b4b2934 drm_crtc_add_crc_entry +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm 0x41b97896 drm_gem_cma_dumb_create_internal +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm 0x436c7518 drm_gem_shmem_free_object +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm 0x440fd692 drm_of_component_match_add +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm 0x455eae66 drm_gem_shmem_get_sg_table +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm 0x59d90888 drm_bridge_hpd_disable +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm 0x5cff5483 drm_gem_cma_prime_import_sg_table +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm 0x5dfe5ac0 drm_bridge_detect +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm 0x6898ff95 drm_gem_cma_prime_mmap +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm 0x68b7858d drm_display_mode_from_videomode +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm 0x69b63f10 drm_class_device_unregister +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm 0x6c87962c drm_gem_cma_prime_vunmap +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm 0x7135c588 drm_of_lvds_get_dual_link_pixel_order +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm 0x73ce30a2 drm_bridge_get_modes +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm 0x7b8be07b drm_bridge_hpd_enable +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm 0x81f9617b drm_class_device_register +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm 0x824166f8 drm_gem_shmem_dumb_create +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm 0x832eab74 drm_hdcp_check_ksvs_revoked +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm 0x84408044 drmm_kstrdup +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm 0x87c3e201 drm_of_find_panel_or_bridge +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm 0x8de7d8a6 drm_gem_cma_prime_get_sg_table +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm 0x9924a15c drm_bridge_hpd_notify +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm 0xa3dc8128 drm_of_encoder_active_endpoint +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm 0xad885165 drm_bus_flags_from_videomode +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm 0xb1a75843 drm_do_get_edid +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm 0xc541b6e0 drm_gem_shmem_mmap +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm 0xcf646726 drm_gem_shmem_prime_import_sg_table +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm 0xcfa755f1 drm_gem_cma_dumb_create +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm 0xda35eb97 drm_gem_shmem_create +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm 0xdf04ceb1 drm_gem_cma_free_object +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm 0xe3c8ac71 of_get_drm_display_mode +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm 0xf68717c4 drm_gem_dumb_map_offset +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm 0xfb5f49d9 drm_gem_shmem_get_pages_sgt +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm_kms_helper 0x0a7a3b35 drm_fb_cma_get_gem_obj +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm_kms_helper 0x2eff9e2f drm_gem_fb_create +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm_kms_helper 0x3e0fd483 drm_gem_fb_afbc_init +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm_kms_helper 0x448e1fc6 drm_fb_cma_get_gem_addr +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm_kms_helper 0x4dae18dd drm_gem_fb_create_with_dirty +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm_kms_helper 0x4f15625d drm_gem_fb_create_with_funcs +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm_kms_helper 0x7d9dd98e drm_gem_fb_init_with_funcs +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm_kms_helper 0x9ae3bc40 drm_gem_fb_get_obj +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm_kms_helper 0xacca2d3e drm_bridge_connector_disable_hpd +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm_kms_helper 0xee441e0d drm_bridge_connector_init +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm_kms_helper 0xfa8e3432 drm_gem_fb_prepare_fb +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm_kms_helper 0xffc7eb12 drm_bridge_connector_enable_hpd +EXPORT_SYMBOL_GPL drivers/gpu/drm/meson/meson-drm 0x203b7a85 meson_vclk_vic_supported_freq +EXPORT_SYMBOL_GPL drivers/gpu/drm/meson/meson-drm 0x2c73cfcf meson_venc_hdmi_venc_repeat +EXPORT_SYMBOL_GPL drivers/gpu/drm/meson/meson-drm 0x8f2b677e meson_vclk_setup +EXPORT_SYMBOL_GPL drivers/gpu/drm/meson/meson-drm 0xab5bee2f meson_venc_hdmi_supported_vic +EXPORT_SYMBOL_GPL drivers/gpu/drm/meson/meson-drm 0xc8b08708 meson_venc_hdmi_mode_set +EXPORT_SYMBOL_GPL drivers/gpu/drm/meson/meson-drm 0xc8cd3dd2 meson_vclk_dmt_supported_freq +EXPORT_SYMBOL_GPL drivers/gpu/drm/meson/meson-drm 0xfd34888c meson_venc_hdmi_supported_mode +EXPORT_SYMBOL_GPL drivers/gpu/drm/pl111/pl111_drm 0xb4679e21 pl111_versatile_init +EXPORT_SYMBOL_GPL drivers/gpu/drm/rcar-du/rcar_cmm 0x7a48d6b2 rcar_cmm_setup +EXPORT_SYMBOL_GPL drivers/gpu/drm/rcar-du/rcar_cmm 0x8ea8ea4f rcar_cmm_disable +EXPORT_SYMBOL_GPL drivers/gpu/drm/rcar-du/rcar_cmm 0xa6539444 rcar_cmm_enable +EXPORT_SYMBOL_GPL drivers/gpu/drm/rcar-du/rcar_cmm 0xb6f1f73e rcar_cmm_init +EXPORT_SYMBOL_GPL drivers/gpu/drm/rcar-du/rcar_lvds 0x06634354 rcar_lvds_clk_enable +EXPORT_SYMBOL_GPL drivers/gpu/drm/rcar-du/rcar_lvds 0x2683af20 rcar_lvds_clk_disable +EXPORT_SYMBOL_GPL drivers/gpu/drm/rcar-du/rcar_lvds 0x713d6536 rcar_lvds_dual_link +EXPORT_SYMBOL_GPL drivers/gpu/drm/rockchip/rockchipdrm 0x20ccb707 vop_component_ops +EXPORT_SYMBOL_GPL drivers/gpu/drm/rockchip/rockchipdrm 0xd79b9793 rockchip_rgb_init +EXPORT_SYMBOL_GPL drivers/gpu/drm/rockchip/rockchipdrm 0xfead7585 rockchip_rgb_fini +EXPORT_SYMBOL_GPL drivers/gpu/drm/ttm/ttm 0x486b4897 ttm_dma_page_alloc_debugfs +EXPORT_SYMBOL_GPL drivers/gpu/drm/ttm/ttm 0x6726334f ttm_dma_populate +EXPORT_SYMBOL_GPL drivers/gpu/drm/ttm/ttm 0xdc26ae11 ttm_dma_unpopulate +EXPORT_SYMBOL_GPL drivers/greybus/greybus 0x00639cd8 __tracepoint_gb_hd_in +EXPORT_SYMBOL_GPL drivers/greybus/greybus 0x04091867 gb_connection_create_offloaded +EXPORT_SYMBOL_GPL drivers/greybus/greybus 0x0442541b __tracepoint_gb_message_submit +EXPORT_SYMBOL_GPL drivers/greybus/greybus 0x0682d0d8 gb_operation_cancel +EXPORT_SYMBOL_GPL drivers/greybus/greybus 0x0ec59281 gb_interface_request_mode_switch +EXPORT_SYMBOL_GPL drivers/greybus/greybus 0x10387269 greybus_data_rcvd +EXPORT_SYMBOL_GPL drivers/greybus/greybus 0x15d1942f greybus_disabled +EXPORT_SYMBOL_GPL drivers/greybus/greybus 0x17b1f1e3 gb_hd_cport_release_reserved +EXPORT_SYMBOL_GPL drivers/greybus/greybus 0x1a5e218a gb_operation_request_send_sync_timeout +EXPORT_SYMBOL_GPL drivers/greybus/greybus 0x1e0e0719 gb_connection_disable +EXPORT_SYMBOL_GPL drivers/greybus/greybus 0x1f2805e3 gb_operation_sync_timeout +EXPORT_SYMBOL_GPL drivers/greybus/greybus 0x2b29857f greybus_register_driver +EXPORT_SYMBOL_GPL drivers/greybus/greybus 0x2f2edfd4 gb_hd_del +EXPORT_SYMBOL_GPL drivers/greybus/greybus 0x358cc534 gb_connection_enable_tx +EXPORT_SYMBOL_GPL drivers/greybus/greybus 0x36e30b85 gb_operation_put +EXPORT_SYMBOL_GPL drivers/greybus/greybus 0x3d52d107 __tracepoint_gb_hd_add +EXPORT_SYMBOL_GPL drivers/greybus/greybus 0x3ef75a08 __tracepoint_gb_hd_release +EXPORT_SYMBOL_GPL drivers/greybus/greybus 0x4059b4fc gb_connection_disable_rx +EXPORT_SYMBOL_GPL drivers/greybus/greybus 0x5657b8f0 gb_connection_disable_forced +EXPORT_SYMBOL_GPL drivers/greybus/greybus 0x5a1e53b7 gb_connection_create +EXPORT_SYMBOL_GPL drivers/greybus/greybus 0x5dda34af gb_hd_shutdown +EXPORT_SYMBOL_GPL drivers/greybus/greybus 0x6414180c greybus_message_sent +EXPORT_SYMBOL_GPL drivers/greybus/greybus 0x6867cfda gb_hd_add +EXPORT_SYMBOL_GPL drivers/greybus/greybus 0x7de41fc2 gb_debugfs_get +EXPORT_SYMBOL_GPL drivers/greybus/greybus 0x7eb2b9bd gb_connection_latency_tag_enable +EXPORT_SYMBOL_GPL drivers/greybus/greybus 0x8256f332 gb_operation_request_send +EXPORT_SYMBOL_GPL drivers/greybus/greybus 0x82bd405f greybus_deregister_driver +EXPORT_SYMBOL_GPL drivers/greybus/greybus 0x86ec2d10 gb_hd_put +EXPORT_SYMBOL_GPL drivers/greybus/greybus 0x87e5d4f5 gb_hd_output +EXPORT_SYMBOL_GPL drivers/greybus/greybus 0x8e248a7d gb_operation_get_payload_size_max +EXPORT_SYMBOL_GPL drivers/greybus/greybus 0x8e900eab gb_operation_result +EXPORT_SYMBOL_GPL drivers/greybus/greybus 0x931a1209 gb_operation_unidirectional_timeout +EXPORT_SYMBOL_GPL drivers/greybus/greybus 0x976ee2d9 gb_svc_intf_set_power_mode +EXPORT_SYMBOL_GPL drivers/greybus/greybus 0x9ca6201c gb_operation_get +EXPORT_SYMBOL_GPL drivers/greybus/greybus 0x9eed37c6 gb_hd_create +EXPORT_SYMBOL_GPL drivers/greybus/greybus 0xa006bbed gb_connection_create_flags +EXPORT_SYMBOL_GPL drivers/greybus/greybus 0xa1c66e8f gb_hd_cport_reserve +EXPORT_SYMBOL_GPL drivers/greybus/greybus 0xb73f2996 gb_connection_enable +EXPORT_SYMBOL_GPL drivers/greybus/greybus 0xc2a28320 gb_operation_response_alloc +EXPORT_SYMBOL_GPL drivers/greybus/greybus 0xc397c10a __tracepoint_gb_hd_del +EXPORT_SYMBOL_GPL drivers/greybus/greybus 0xcb8c92cd __tracepoint_gb_hd_create +EXPORT_SYMBOL_GPL drivers/greybus/greybus 0xd94148e2 gb_connection_latency_tag_disable +EXPORT_SYMBOL_GPL drivers/greybus/greybus 0xecc51330 gb_connection_destroy +EXPORT_SYMBOL_GPL drivers/greybus/greybus 0xf7df929e gb_operation_create_flags +EXPORT_SYMBOL_GPL drivers/hid/hid 0x00ddb9ce hid_dump_field +EXPORT_SYMBOL_GPL drivers/hid/hid 0x029c8eb0 hid_debug_event +EXPORT_SYMBOL_GPL drivers/hid/hid 0x031d4e6b hidraw_connect +EXPORT_SYMBOL_GPL drivers/hid/hid 0x05495392 hid_debug +EXPORT_SYMBOL_GPL drivers/hid/hid 0x0940f596 hid_dump_input +EXPORT_SYMBOL_GPL drivers/hid/hid 0x0dc0a02a hid_report_raw_event +EXPORT_SYMBOL_GPL drivers/hid/hid 0x0dceeeb2 hid_output_report +EXPORT_SYMBOL_GPL drivers/hid/hid 0x170c39b5 hid_set_field +EXPORT_SYMBOL_GPL drivers/hid/hid 0x19d52f1f hid_quirks_exit +EXPORT_SYMBOL_GPL drivers/hid/hid 0x21050cde hid_alloc_report_buf +EXPORT_SYMBOL_GPL drivers/hid/hid 0x218096f4 hid_setup_resolution_multiplier +EXPORT_SYMBOL_GPL drivers/hid/hid 0x21e5bfb3 hid_destroy_device +EXPORT_SYMBOL_GPL drivers/hid/hid 0x308d5f7b hidinput_count_leds +EXPORT_SYMBOL_GPL drivers/hid/hid 0x33058550 hidinput_get_led_field +EXPORT_SYMBOL_GPL drivers/hid/hid 0x3b88017b hidinput_report_event +EXPORT_SYMBOL_GPL drivers/hid/hid 0x3d110288 hid_add_device +EXPORT_SYMBOL_GPL drivers/hid/hid 0x41b0701a hidraw_disconnect +EXPORT_SYMBOL_GPL drivers/hid/hid 0x47745543 hidinput_calc_abs_res +EXPORT_SYMBOL_GPL drivers/hid/hid 0x4e191977 hid_parse_report +EXPORT_SYMBOL_GPL drivers/hid/hid 0x4e982dbb __hid_register_driver +EXPORT_SYMBOL_GPL drivers/hid/hid 0x55a61cf8 hid_check_keys_pressed +EXPORT_SYMBOL_GPL drivers/hid/hid 0x5c238f9c hid_hw_start +EXPORT_SYMBOL_GPL drivers/hid/hid 0x635256cf hid_lookup_quirk +EXPORT_SYMBOL_GPL drivers/hid/hid 0x674d9dfc hid_dump_report +EXPORT_SYMBOL_GPL drivers/hid/hid 0x698dc46e hid_match_device +EXPORT_SYMBOL_GPL drivers/hid/hid 0x7671732e hidinput_connect +EXPORT_SYMBOL_GPL drivers/hid/hid 0x8287e75d hid_connect +EXPORT_SYMBOL_GPL drivers/hid/hid 0x8b13a8b8 hid_snto32 +EXPORT_SYMBOL_GPL drivers/hid/hid 0x8c8714fc hidinput_find_field +EXPORT_SYMBOL_GPL drivers/hid/hid 0x8ed49ac6 hid_disconnect +EXPORT_SYMBOL_GPL drivers/hid/hid 0x9c6b8fcb hidinput_disconnect +EXPORT_SYMBOL_GPL drivers/hid/hid 0xa971035f hid_input_report +EXPORT_SYMBOL_GPL drivers/hid/hid 0xaefd55b0 hid_ignore +EXPORT_SYMBOL_GPL drivers/hid/hid 0xafacc47a hid_allocate_device +EXPORT_SYMBOL_GPL drivers/hid/hid 0xb802d5be hid_hw_stop +EXPORT_SYMBOL_GPL drivers/hid/hid 0xb91fc7e4 hid_dump_device +EXPORT_SYMBOL_GPL drivers/hid/hid 0xbabe5fe5 hid_field_extract +EXPORT_SYMBOL_GPL drivers/hid/hid 0xbb8491c4 hid_unregister_driver +EXPORT_SYMBOL_GPL drivers/hid/hid 0xd2115d7a hid_validate_values +EXPORT_SYMBOL_GPL drivers/hid/hid 0xd667da72 hid_compare_device_paths +EXPORT_SYMBOL_GPL drivers/hid/hid 0xe0e762ab hidraw_report_event +EXPORT_SYMBOL_GPL drivers/hid/hid 0xec011d8a hid_hw_close +EXPORT_SYMBOL_GPL drivers/hid/hid 0xec06ff5c hid_open_report +EXPORT_SYMBOL_GPL drivers/hid/hid 0xf60aed70 hid_hw_open +EXPORT_SYMBOL_GPL drivers/hid/hid 0xf7a49241 hid_register_report +EXPORT_SYMBOL_GPL drivers/hid/hid 0xfa355613 hid_quirks_init +EXPORT_SYMBOL_GPL drivers/hid/hid 0xfb1c0715 hid_resolv_usage +EXPORT_SYMBOL_GPL drivers/hid/hid 0xfb4979c7 __hid_request +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 0x482361e6 roccat_connect +EXPORT_SYMBOL_GPL drivers/hid/hid-roccat-common 0x752d5863 roccat_common2_send +EXPORT_SYMBOL_GPL drivers/hid/hid-roccat-common 0x9765631b roccat_common2_sysfs_write +EXPORT_SYMBOL_GPL drivers/hid/hid-roccat-common 0xc10a70d9 roccat_common2_send_with_status +EXPORT_SYMBOL_GPL drivers/hid/hid-roccat-common 0xc9b4ef3e roccat_common2_device_init_struct +EXPORT_SYMBOL_GPL drivers/hid/hid-roccat-common 0xd9080a52 roccat_common2_receive +EXPORT_SYMBOL_GPL drivers/hid/hid-roccat-common 0xf758cec1 roccat_common2_sysfs_read +EXPORT_SYMBOL_GPL drivers/hid/hid-sensor-hub 0x043a2d8b sensor_hub_input_get_attribute_info +EXPORT_SYMBOL_GPL drivers/hid/hid-sensor-hub 0x142d86f5 sensor_hub_device_open +EXPORT_SYMBOL_GPL drivers/hid/hid-sensor-hub 0x369cb90d sensor_hub_register_callback +EXPORT_SYMBOL_GPL drivers/hid/hid-sensor-hub 0x41c7e53c sensor_hub_set_feature +EXPORT_SYMBOL_GPL drivers/hid/hid-sensor-hub 0x75090623 sensor_hub_get_feature +EXPORT_SYMBOL_GPL drivers/hid/hid-sensor-hub 0x82eda480 hid_sensor_get_usage_index +EXPORT_SYMBOL_GPL drivers/hid/hid-sensor-hub 0x86f427ff sensor_hub_remove_callback +EXPORT_SYMBOL_GPL drivers/hid/hid-sensor-hub 0x93669ff6 sensor_hub_device_close +EXPORT_SYMBOL_GPL drivers/hid/hid-sensor-hub 0x9789a238 sensor_hub_input_attr_get_raw_value +EXPORT_SYMBOL_GPL drivers/hid/i2c-hid/i2c-hid 0x57706f9a i2c_hid_ll_driver +EXPORT_SYMBOL_GPL drivers/hid/uhid 0x8f7e7497 uhid_hid_driver +EXPORT_SYMBOL_GPL drivers/hid/usbhid/usbhid 0x89f788e2 hiddev_hid_event +EXPORT_SYMBOL_GPL drivers/hid/usbhid/usbhid 0xc006e62e usb_hid_driver +EXPORT_SYMBOL_GPL drivers/hsi/hsi 0x0b102a18 hsi_unregister_port_event +EXPORT_SYMBOL_GPL drivers/hsi/hsi 0x0b82e0e6 hsi_register_client_driver +EXPORT_SYMBOL_GPL drivers/hsi/hsi 0x16c85636 hsi_free_msg +EXPORT_SYMBOL_GPL drivers/hsi/hsi 0x1ab0c9e3 hsi_alloc_msg +EXPORT_SYMBOL_GPL drivers/hsi/hsi 0x29818aaa hsi_port_unregister_clients +EXPORT_SYMBOL_GPL drivers/hsi/hsi 0x2a35b923 hsi_async +EXPORT_SYMBOL_GPL drivers/hsi/hsi 0x30733863 hsi_alloc_controller +EXPORT_SYMBOL_GPL drivers/hsi/hsi 0x5210a5bf hsi_board_list +EXPORT_SYMBOL_GPL drivers/hsi/hsi 0x590c1418 hsi_put_controller +EXPORT_SYMBOL_GPL drivers/hsi/hsi 0x601e15b5 hsi_register_port_event +EXPORT_SYMBOL_GPL drivers/hsi/hsi 0x66e44d96 hsi_event +EXPORT_SYMBOL_GPL drivers/hsi/hsi 0x75b936cc hsi_remove_client +EXPORT_SYMBOL_GPL drivers/hsi/hsi 0x980790fe hsi_unregister_controller +EXPORT_SYMBOL_GPL drivers/hsi/hsi 0xa4f83c06 hsi_new_client +EXPORT_SYMBOL_GPL drivers/hsi/hsi 0xa7634a3c hsi_add_clients_from_dt +EXPORT_SYMBOL_GPL drivers/hsi/hsi 0xbdd50d47 hsi_release_port +EXPORT_SYMBOL_GPL drivers/hsi/hsi 0xbeb7ce48 hsi_get_channel_id_by_name +EXPORT_SYMBOL_GPL drivers/hsi/hsi 0xc317d1ab hsi_register_controller +EXPORT_SYMBOL_GPL drivers/hsi/hsi 0xc49e49f1 hsi_claim_port +EXPORT_SYMBOL_GPL drivers/hwmon/adt7x10 0x3fc8fec8 adt7x10_probe +EXPORT_SYMBOL_GPL drivers/hwmon/adt7x10 0x4f8d063a adt7x10_dev_pm_ops +EXPORT_SYMBOL_GPL drivers/hwmon/adt7x10 0xae57a993 adt7x10_remove +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/ltc2947-core 0xe5821ffc ltc2947_pm_ops +EXPORT_SYMBOL_GPL drivers/hwmon/pmbus/pmbus_core 0x11fa9bb8 pmbus_read_byte_data +EXPORT_SYMBOL_GPL drivers/hwmon/pmbus/pmbus_core 0x32bd7754 pmbus_check_byte_register +EXPORT_SYMBOL_GPL drivers/hwmon/pmbus/pmbus_core 0x4aeb6cce pmbus_clear_faults +EXPORT_SYMBOL_GPL drivers/hwmon/pmbus/pmbus_core 0x5231b6f2 pmbus_get_fan_rate_cached +EXPORT_SYMBOL_GPL drivers/hwmon/pmbus/pmbus_core 0x55a39a21 pmbus_write_byte +EXPORT_SYMBOL_GPL drivers/hwmon/pmbus/pmbus_core 0x671cb1bd pmbus_regulator_ops +EXPORT_SYMBOL_GPL drivers/hwmon/pmbus/pmbus_core 0x681eb7c0 pmbus_update_byte_data +EXPORT_SYMBOL_GPL drivers/hwmon/pmbus/pmbus_core 0x895e9c62 pmbus_read_word_data +EXPORT_SYMBOL_GPL drivers/hwmon/pmbus/pmbus_core 0x8fda9034 pmbus_get_debugfs_dir +EXPORT_SYMBOL_GPL drivers/hwmon/pmbus/pmbus_core 0x901f8a24 pmbus_check_word_register +EXPORT_SYMBOL_GPL drivers/hwmon/pmbus/pmbus_core 0x9400ddbf pmbus_set_page +EXPORT_SYMBOL_GPL drivers/hwmon/pmbus/pmbus_core 0xb240c390 pmbus_do_remove +EXPORT_SYMBOL_GPL drivers/hwmon/pmbus/pmbus_core 0xb54f5d21 pmbus_update_fan +EXPORT_SYMBOL_GPL drivers/hwmon/pmbus/pmbus_core 0xb704b2e3 pmbus_do_probe +EXPORT_SYMBOL_GPL drivers/hwmon/pmbus/pmbus_core 0xd45f1456 pmbus_clear_cache +EXPORT_SYMBOL_GPL drivers/hwmon/pmbus/pmbus_core 0xd9748c00 pmbus_write_word_data +EXPORT_SYMBOL_GPL drivers/hwmon/pmbus/pmbus_core 0xea009cec pmbus_write_byte_data +EXPORT_SYMBOL_GPL drivers/hwmon/pmbus/pmbus_core 0xf3643150 pmbus_get_fan_rate_device +EXPORT_SYMBOL_GPL drivers/hwmon/pmbus/pmbus_core 0xfa1abcb5 pmbus_get_driver_info +EXPORT_SYMBOL_GPL drivers/hwtracing/intel_th/intel_th 0x122aa5ee intel_th_free +EXPORT_SYMBOL_GPL drivers/hwtracing/intel_th/intel_th 0x5cb840d4 intel_th_trace_switch +EXPORT_SYMBOL_GPL drivers/hwtracing/intel_th/intel_th 0x6f3022d1 intel_th_driver_unregister +EXPORT_SYMBOL_GPL drivers/hwtracing/intel_th/intel_th 0x85064164 intel_th_trace_disable +EXPORT_SYMBOL_GPL drivers/hwtracing/intel_th/intel_th 0xaa1ce67a intel_th_set_output +EXPORT_SYMBOL_GPL drivers/hwtracing/intel_th/intel_th 0xcd81c2cb intel_th_output_enable +EXPORT_SYMBOL_GPL drivers/hwtracing/intel_th/intel_th 0xf04cef2b intel_th_alloc +EXPORT_SYMBOL_GPL drivers/hwtracing/intel_th/intel_th 0xf8deaa31 intel_th_trace_enable +EXPORT_SYMBOL_GPL drivers/hwtracing/intel_th/intel_th 0xfe7b1633 intel_th_driver_register +EXPORT_SYMBOL_GPL drivers/hwtracing/intel_th/intel_th_msu 0x5975332d intel_th_msu_buffer_unregister +EXPORT_SYMBOL_GPL drivers/hwtracing/intel_th/intel_th_msu 0x93c8c423 intel_th_msc_window_unlock +EXPORT_SYMBOL_GPL drivers/hwtracing/intel_th/intel_th_msu 0x949db055 intel_th_msu_buffer_register +EXPORT_SYMBOL_GPL drivers/hwtracing/stm/stm_core 0x13596e68 stm_source_unregister_device +EXPORT_SYMBOL_GPL drivers/hwtracing/stm/stm_core 0x1697d5f2 stm_source_write +EXPORT_SYMBOL_GPL drivers/hwtracing/stm/stm_core 0x3dab0973 stm_data_write +EXPORT_SYMBOL_GPL drivers/hwtracing/stm/stm_core 0x4b662e05 stm_unregister_protocol +EXPORT_SYMBOL_GPL drivers/hwtracing/stm/stm_core 0x71818af3 to_pdrv_policy_node +EXPORT_SYMBOL_GPL drivers/hwtracing/stm/stm_core 0xb9ffacb9 stm_unregister_device +EXPORT_SYMBOL_GPL drivers/hwtracing/stm/stm_core 0xc8b3f89c stm_register_protocol +EXPORT_SYMBOL_GPL drivers/hwtracing/stm/stm_core 0xd54d44f5 stm_register_device +EXPORT_SYMBOL_GPL drivers/hwtracing/stm/stm_core 0xf86ea90e stm_source_register_device +EXPORT_SYMBOL_GPL drivers/i2c/i2c-mux 0x67a69559 i2c_root_adapter +EXPORT_SYMBOL_GPL drivers/i2c/i2c-mux 0x7442dc12 i2c_mux_del_adapters +EXPORT_SYMBOL_GPL drivers/i2c/i2c-mux 0x8482dcf0 i2c_mux_add_adapter +EXPORT_SYMBOL_GPL drivers/i2c/i2c-mux 0x890b819d i2c_mux_alloc +EXPORT_SYMBOL_GPL drivers/i2c/i2c-smbus 0xd376b9b7 i2c_register_spd +EXPORT_SYMBOL_GPL drivers/i2c/i2c-smbus 0xffce8214 i2c_handle_smbus_alert +EXPORT_SYMBOL_GPL drivers/i3c/i3c 0x0a3482bf i3c_master_queue_ibi +EXPORT_SYMBOL_GPL drivers/i3c/i3c 0x0df71232 i3c_master_defslvs_locked +EXPORT_SYMBOL_GPL drivers/i3c/i3c 0x2f4a4dd3 i3cdev_to_dev +EXPORT_SYMBOL_GPL drivers/i3c/i3c 0x2f4af468 i3c_generic_ibi_get_free_slot +EXPORT_SYMBOL_GPL drivers/i3c/i3c 0x45425cd1 dev_to_i3cdev +EXPORT_SYMBOL_GPL drivers/i3c/i3c 0x4b107a5b i3c_device_enable_ibi +EXPORT_SYMBOL_GPL drivers/i3c/i3c 0x550df05c i3c_master_unregister +EXPORT_SYMBOL_GPL drivers/i3c/i3c 0x5ea349a6 i3c_master_entdaa_locked +EXPORT_SYMBOL_GPL drivers/i3c/i3c 0x62c986b0 i3c_master_do_daa +EXPORT_SYMBOL_GPL drivers/i3c/i3c 0x6795019d i3c_master_get_free_addr +EXPORT_SYMBOL_GPL drivers/i3c/i3c 0x6eec9d30 i3c_driver_unregister +EXPORT_SYMBOL_GPL drivers/i3c/i3c 0x711692ca i3c_master_register +EXPORT_SYMBOL_GPL drivers/i3c/i3c 0x76fe3e05 i3c_generic_ibi_free_pool +EXPORT_SYMBOL_GPL drivers/i3c/i3c 0x80fcd749 i3c_generic_ibi_recycle_slot +EXPORT_SYMBOL_GPL drivers/i3c/i3c 0x857617ad i3c_device_match_id +EXPORT_SYMBOL_GPL drivers/i3c/i3c 0x9d1a3a39 i3c_device_free_ibi +EXPORT_SYMBOL_GPL drivers/i3c/i3c 0xa1a13daf i3c_device_disable_ibi +EXPORT_SYMBOL_GPL drivers/i3c/i3c 0xa5f5d1b3 i3c_master_enec_locked +EXPORT_SYMBOL_GPL drivers/i3c/i3c 0xb07992ec i3c_master_add_i3c_dev_locked +EXPORT_SYMBOL_GPL drivers/i3c/i3c 0xb933cf18 i3c_master_disec_locked +EXPORT_SYMBOL_GPL drivers/i3c/i3c 0xbbb2ede2 i3c_device_get_info +EXPORT_SYMBOL_GPL drivers/i3c/i3c 0xca1fa76c i3c_device_do_priv_xfers +EXPORT_SYMBOL_GPL drivers/i3c/i3c 0xcacf9e0b i3c_device_request_ibi +EXPORT_SYMBOL_GPL drivers/i3c/i3c 0xd75a706e i3c_master_set_info +EXPORT_SYMBOL_GPL drivers/i3c/i3c 0xd8a3bbf7 i3c_generic_ibi_alloc_pool +EXPORT_SYMBOL_GPL drivers/i3c/i3c 0xf65aa9a6 i3c_driver_register_with_owner +EXPORT_SYMBOL_GPL drivers/iio/accel/adxl372 0x43889079 adxl372_probe +EXPORT_SYMBOL_GPL drivers/iio/accel/adxl372 0xaaf0e0d3 adxl372_readable_noinc_reg +EXPORT_SYMBOL_GPL drivers/iio/accel/bmc150-accel-core 0x48bbf16d bmc150_accel_core_remove +EXPORT_SYMBOL_GPL drivers/iio/accel/bmc150-accel-core 0x4bc36a56 bmc150_regmap_conf +EXPORT_SYMBOL_GPL drivers/iio/accel/bmc150-accel-core 0x8c4fecb5 bmc150_accel_core_probe +EXPORT_SYMBOL_GPL drivers/iio/accel/bmc150-accel-core 0xae61bc12 bmc150_accel_pm_ops +EXPORT_SYMBOL_GPL drivers/iio/accel/mma7455_core 0x06ac2e22 mma7455_core_remove +EXPORT_SYMBOL_GPL drivers/iio/accel/mma7455_core 0xd778594e mma7455_core_regmap +EXPORT_SYMBOL_GPL drivers/iio/accel/mma7455_core 0xf5aaad4d mma7455_core_probe +EXPORT_SYMBOL_GPL drivers/iio/adc/ad7091r-base 0xa93eeef2 ad7091r_regmap_config +EXPORT_SYMBOL_GPL drivers/iio/adc/ad7091r-base 0xe54231a1 ad7091r_probe +EXPORT_SYMBOL_GPL drivers/iio/adc/ad7606 0x9ca63b05 ad7606_probe +EXPORT_SYMBOL_GPL drivers/iio/adc/ad7606 0xf6eeba35 ad7606_pm_ops +EXPORT_SYMBOL_GPL drivers/iio/adc/ad_sigma_delta 0x08f05812 ad_sd_reset +EXPORT_SYMBOL_GPL drivers/iio/adc/ad_sigma_delta 0x0f6afd68 ad_sd_setup_buffer_and_trigger +EXPORT_SYMBOL_GPL drivers/iio/adc/ad_sigma_delta 0x2ea6cf23 ad_sd_cleanup_buffer_and_trigger +EXPORT_SYMBOL_GPL drivers/iio/adc/ad_sigma_delta 0x6593918c ad_sd_calibrate +EXPORT_SYMBOL_GPL drivers/iio/adc/ad_sigma_delta 0x6b4b926b ad_sd_set_comm +EXPORT_SYMBOL_GPL drivers/iio/adc/ad_sigma_delta 0x7519c6ef ad_sd_write_reg +EXPORT_SYMBOL_GPL drivers/iio/adc/ad_sigma_delta 0x8721cf2d ad_sigma_delta_single_conversion +EXPORT_SYMBOL_GPL drivers/iio/adc/ad_sigma_delta 0x9e06073e ad_sd_calibrate_all +EXPORT_SYMBOL_GPL drivers/iio/adc/ad_sigma_delta 0xd21580b2 ad_sd_read_reg +EXPORT_SYMBOL_GPL drivers/iio/adc/ad_sigma_delta 0xd9604f82 ad_sd_validate_trigger +EXPORT_SYMBOL_GPL drivers/iio/adc/ad_sigma_delta 0xf61effd3 ad_sd_init +EXPORT_SYMBOL_GPL drivers/iio/adc/adi-axi-adc 0x212ea50a devm_adi_axi_adc_conv_register +EXPORT_SYMBOL_GPL drivers/iio/adc/adi-axi-adc 0x91afb565 adi_axi_adc_conv_priv +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 0x6c32f251 iio_channel_cb_get_iio_dev +EXPORT_SYMBOL_GPL drivers/iio/buffer/industrialio-buffer-cb 0x7a711aef iio_channel_start_all_cb +EXPORT_SYMBOL_GPL drivers/iio/buffer/industrialio-buffer-cb 0x94da80fc iio_channel_get_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 0xe3a33eca iio_channel_cb_get_channels +EXPORT_SYMBOL_GPL drivers/iio/buffer/industrialio-buffer-dma 0x15da1d53 iio_dma_buffer_enable +EXPORT_SYMBOL_GPL drivers/iio/buffer/industrialio-buffer-dma 0x24fe414d iio_dma_buffer_block_done +EXPORT_SYMBOL_GPL drivers/iio/buffer/industrialio-buffer-dma 0x4f9605df iio_dma_buffer_exit +EXPORT_SYMBOL_GPL drivers/iio/buffer/industrialio-buffer-dma 0x55a4b315 iio_dma_buffer_set_bytes_per_datum +EXPORT_SYMBOL_GPL drivers/iio/buffer/industrialio-buffer-dma 0x67d562ba iio_dma_buffer_request_update +EXPORT_SYMBOL_GPL drivers/iio/buffer/industrialio-buffer-dma 0x7404a319 iio_dma_buffer_data_available +EXPORT_SYMBOL_GPL drivers/iio/buffer/industrialio-buffer-dma 0x82903100 iio_dma_buffer_read +EXPORT_SYMBOL_GPL drivers/iio/buffer/industrialio-buffer-dma 0x94234eb9 iio_dma_buffer_block_list_abort +EXPORT_SYMBOL_GPL drivers/iio/buffer/industrialio-buffer-dma 0x9c5d28f3 iio_dma_buffer_set_length +EXPORT_SYMBOL_GPL drivers/iio/buffer/industrialio-buffer-dma 0xaa1245f2 iio_dma_buffer_init +EXPORT_SYMBOL_GPL drivers/iio/buffer/industrialio-buffer-dma 0xe49e485c iio_dma_buffer_disable +EXPORT_SYMBOL_GPL drivers/iio/buffer/industrialio-buffer-dma 0xfc2adb92 iio_dma_buffer_release +EXPORT_SYMBOL_GPL drivers/iio/buffer/industrialio-buffer-dmaengine 0x18fbe904 devm_iio_dmaengine_buffer_alloc +EXPORT_SYMBOL_GPL drivers/iio/buffer/industrialio-buffer-dmaengine 0x27367f2f iio_dmaengine_buffer_free +EXPORT_SYMBOL_GPL drivers/iio/buffer/industrialio-hw-consumer 0x3391543d iio_hw_consumer_disable +EXPORT_SYMBOL_GPL drivers/iio/buffer/industrialio-hw-consumer 0x50ea9f48 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 0xcd8cec75 devm_iio_hw_consumer_alloc +EXPORT_SYMBOL_GPL drivers/iio/buffer/industrialio-triggered-buffer 0x68bf23b7 devm_iio_triggered_buffer_setup +EXPORT_SYMBOL_GPL drivers/iio/chemical/bme680_core 0x95ae0139 bme680_core_probe +EXPORT_SYMBOL_GPL drivers/iio/common/cros_ec_sensors/cros_ec_sensors_core 0x4570c9a7 cros_ec_sensors_read_lpc +EXPORT_SYMBOL_GPL drivers/iio/common/cros_ec_sensors/cros_ec_sensors_core 0x57b2af3e cros_ec_sensors_ext_info +EXPORT_SYMBOL_GPL drivers/iio/common/cros_ec_sensors/cros_ec_sensors_core 0x621649fc cros_ec_sensor_fifo_attributes +EXPORT_SYMBOL_GPL drivers/iio/common/cros_ec_sensors/cros_ec_sensors_core 0x7ac6ffab cros_ec_sensors_core_read_avail +EXPORT_SYMBOL_GPL drivers/iio/common/cros_ec_sensors/cros_ec_sensors_core 0x843a8827 cros_ec_sensors_core_read +EXPORT_SYMBOL_GPL drivers/iio/common/cros_ec_sensors/cros_ec_sensors_core 0x8dbb3dfd cros_ec_sensors_push_data +EXPORT_SYMBOL_GPL drivers/iio/common/cros_ec_sensors/cros_ec_sensors_core 0x98a6758e 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 0xca9db81d cros_ec_sensors_read_cmd +EXPORT_SYMBOL_GPL drivers/iio/common/cros_ec_sensors/cros_ec_sensors_core 0xe0dedac6 cros_ec_motion_send_host_cmd +EXPORT_SYMBOL_GPL drivers/iio/common/cros_ec_sensors/cros_ec_sensors_core 0xedc5b5b7 cros_ec_sensors_core_write +EXPORT_SYMBOL_GPL drivers/iio/dac/ad5592r-base 0x1f2650fc ad5592r_remove +EXPORT_SYMBOL_GPL drivers/iio/dac/ad5592r-base 0x21f1c16d ad5592r_probe +EXPORT_SYMBOL_GPL drivers/iio/dac/ad5686 0x6e5b9d5c ad5686_remove +EXPORT_SYMBOL_GPL drivers/iio/dac/ad5686 0x76bef4b1 ad5686_probe +EXPORT_SYMBOL_GPL drivers/iio/gyro/bmg160_core 0x395d67c4 bmg160_core_remove +EXPORT_SYMBOL_GPL drivers/iio/gyro/bmg160_core 0x9182574c bmg160_pm_ops +EXPORT_SYMBOL_GPL drivers/iio/gyro/bmg160_core 0xb4c5062e bmg160_core_probe +EXPORT_SYMBOL_GPL drivers/iio/gyro/fxas21002c_core 0x14f39aad fxas21002c_pm_ops +EXPORT_SYMBOL_GPL drivers/iio/gyro/fxas21002c_core 0x4ad9d87f fxas21002c_core_probe +EXPORT_SYMBOL_GPL drivers/iio/gyro/fxas21002c_core 0xb82cfe7e fxas21002c_core_remove +EXPORT_SYMBOL_GPL drivers/iio/imu/adis_lib 0x33dbbe9b adis_probe_trigger +EXPORT_SYMBOL_GPL drivers/iio/imu/adis_lib 0x3af01292 adis_remove_trigger +EXPORT_SYMBOL_GPL drivers/iio/imu/adis_lib 0x41d6dd51 __adis_check_status +EXPORT_SYMBOL_GPL drivers/iio/imu/adis_lib 0x48d43123 __adis_write_reg +EXPORT_SYMBOL_GPL drivers/iio/imu/adis_lib 0x65bded09 adis_init +EXPORT_SYMBOL_GPL drivers/iio/imu/adis_lib 0x65edb65e adis_cleanup_buffer_and_trigger +EXPORT_SYMBOL_GPL drivers/iio/imu/adis_lib 0x806b4e98 __adis_read_reg +EXPORT_SYMBOL_GPL drivers/iio/imu/adis_lib 0x9559e5a3 __adis_reset +EXPORT_SYMBOL_GPL drivers/iio/imu/adis_lib 0x9c5f11ea adis_single_conversion +EXPORT_SYMBOL_GPL drivers/iio/imu/adis_lib 0xaaa7353b __adis_initial_startup +EXPORT_SYMBOL_GPL drivers/iio/imu/adis_lib 0xb0a0d876 devm_adis_setup_buffer_and_trigger +EXPORT_SYMBOL_GPL drivers/iio/imu/adis_lib 0xc8fcd135 devm_adis_probe_trigger +EXPORT_SYMBOL_GPL drivers/iio/imu/adis_lib 0xcac1fcef adis_setup_buffer_and_trigger +EXPORT_SYMBOL_GPL drivers/iio/imu/adis_lib 0xdd763e69 adis_update_scan_mode +EXPORT_SYMBOL_GPL drivers/iio/imu/adis_lib 0xdfca4ed5 __adis_update_bits_base +EXPORT_SYMBOL_GPL drivers/iio/imu/bmi160/bmi160_core 0xfefea4da bmi160_core_probe +EXPORT_SYMBOL_GPL drivers/iio/imu/fxos8700_core 0x11062ffa fxos8700_core_probe +EXPORT_SYMBOL_GPL drivers/iio/imu/inv_mpu6050/inv-mpu6050 0x5ce3af32 inv_mpu_pmops +EXPORT_SYMBOL_GPL drivers/iio/imu/inv_mpu6050/inv-mpu6050 0xdce097d4 inv_mpu_core_probe +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x0572b447 iio_read_channel_ext_info +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x079cadad iio_get_channel_ext_info_count +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x098c05c8 iio_device_attach_buffer +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x0f724c9f iio_dealloc_pollfunc +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x15fbbf4a __devm_iio_trigger_register +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x1c801a1d iio_channel_release +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x1fbe1b09 iio_read_channel_raw +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x26f6b499 iio_str_to_fixpoint +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x2af71888 iio_convert_raw_to_processed +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x2d4cd575 devm_iio_device_alloc +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x324ba545 iio_buffer_get +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x3712ae93 iio_read_channel_offset +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x390b1970 iio_write_channel_ext_info +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x3e482898 iio_buffer_set_attrs +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x3eb8eb38 iio_update_buffers +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x3f0a0e6a iio_enum_available_read +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x40d9ce8a iio_channel_release_all +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x4604527f iio_enum_write +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x475fdda1 iio_device_release_direct_mode +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x4dce7dd4 iio_format_value +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x50162669 iio_map_array_unregister +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x5bd3c47d iio_read_avail_channel_attribute +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x6913ca41 iio_channel_get_all +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x6cd28575 devm_iio_channel_get_all +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x723778b0 iio_buffer_put +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x79694322 __devm_iio_device_register +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x871d27d4 iio_map_array_register +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x8a570347 iio_read_max_channel_raw +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x8d50171e iio_write_channel_raw +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x8f600ec7 iio_write_channel_attribute +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x92215d42 iio_read_channel_scale +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x9c425722 iio_validate_scan_mask_onehot +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0xa3ac1149 iio_channel_get +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0xa4c15027 iio_enum_read +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0xa7854c84 iio_read_avail_channel_raw +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0xac5f87d3 iio_get_channel_type +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0xb3f26c95 devm_iio_channel_get +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0xc5bf033b iio_device_claim_direct_mode +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0xccd063b6 iio_read_channel_processed +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0xcd4c5215 iio_show_mount_matrix +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0xd1c40076 iio_alloc_pollfunc +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0xd3cf23af iio_push_to_buffers +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0xd6a5d69e iio_read_channel_average_raw +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0xd7439366 devm_iio_trigger_alloc +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0xfada73b2 iio_read_channel_attribute +EXPORT_SYMBOL_GPL drivers/iio/magnetometer/rm3100-core 0x0a1424e0 rm3100_volatile_table +EXPORT_SYMBOL_GPL drivers/iio/magnetometer/rm3100-core 0xaa911f08 rm3100_readable_table +EXPORT_SYMBOL_GPL drivers/iio/magnetometer/rm3100-core 0xcc7209be rm3100_writable_table +EXPORT_SYMBOL_GPL drivers/iio/magnetometer/rm3100-core 0xfc055861 rm3100_common_probe +EXPORT_SYMBOL_GPL drivers/iio/pressure/mpl115 0x91f1cb88 mpl115_probe +EXPORT_SYMBOL_GPL drivers/iio/pressure/zpa2326 0x672da47d zpa2326_isreg_readable +EXPORT_SYMBOL_GPL drivers/iio/pressure/zpa2326 0x7a3b1996 zpa2326_probe +EXPORT_SYMBOL_GPL drivers/iio/pressure/zpa2326 0x7ed34285 zpa2326_isreg_precious +EXPORT_SYMBOL_GPL drivers/iio/pressure/zpa2326 0xc567299e zpa2326_pm_ops +EXPORT_SYMBOL_GPL drivers/iio/pressure/zpa2326 0xc93684dd zpa2326_remove +EXPORT_SYMBOL_GPL drivers/iio/pressure/zpa2326 0xd07c2ced zpa2326_isreg_writeable +EXPORT_SYMBOL_GPL drivers/infiniband/core/ib_core 0xdbd019c4 ib_wq +EXPORT_SYMBOL_GPL drivers/infiniband/ulp/rtrs/rtrs-core 0x2cf28855 rtrs_iu_post_send +EXPORT_SYMBOL_GPL drivers/infiniband/ulp/rtrs/rtrs-core 0x2e1ae561 rtrs_iu_post_rdma_write_imm +EXPORT_SYMBOL_GPL drivers/infiniband/ulp/rtrs/rtrs-core 0x4715eef2 rtrs_cq_qp_destroy +EXPORT_SYMBOL_GPL drivers/infiniband/ulp/rtrs/rtrs-core 0x5587d1a7 rtrs_init_hb +EXPORT_SYMBOL_GPL drivers/infiniband/ulp/rtrs/rtrs-core 0x6456f8d3 rtrs_cq_qp_create +EXPORT_SYMBOL_GPL drivers/infiniband/ulp/rtrs/rtrs-core 0x6c072871 rtrs_post_recv_empty +EXPORT_SYMBOL_GPL drivers/infiniband/ulp/rtrs/rtrs-core 0x6d034e7b rtrs_start_hb +EXPORT_SYMBOL_GPL drivers/infiniband/ulp/rtrs/rtrs-core 0x93ed7793 rtrs_send_hb_ack +EXPORT_SYMBOL_GPL drivers/infiniband/ulp/rtrs/rtrs-core 0xa09eb84f rtrs_iu_post_recv +EXPORT_SYMBOL_GPL drivers/infiniband/ulp/rtrs/rtrs-core 0xdb3ab460 rtrs_post_rdma_write_imm_empty +EXPORT_SYMBOL_GPL drivers/infiniband/ulp/rtrs/rtrs-core 0xe6ca30cb rtrs_stop_hb +EXPORT_SYMBOL_GPL drivers/infiniband/ulp/rtrs/rtrs-core 0xecabed7d rtrs_iu_alloc +EXPORT_SYMBOL_GPL drivers/infiniband/ulp/rtrs/rtrs-core 0xf879bebf rtrs_iu_free +EXPORT_SYMBOL_GPL drivers/input/ff-memless 0x5f52fc2e input_ff_create_memless +EXPORT_SYMBOL_GPL drivers/input/matrix-keymap 0x7f48521b matrix_keypad_parse_properties +EXPORT_SYMBOL_GPL drivers/input/misc/adxl34x 0x35b61d24 adxl34x_probe +EXPORT_SYMBOL_GPL drivers/input/misc/adxl34x 0x49a4fcbd adxl34x_remove +EXPORT_SYMBOL_GPL drivers/input/misc/adxl34x 0x66535a18 adxl34x_suspend +EXPORT_SYMBOL_GPL drivers/input/misc/adxl34x 0xe4586827 adxl34x_resume +EXPORT_SYMBOL_GPL drivers/input/rmi4/rmi_core 0x08421113 rmi_register_transport_device +EXPORT_SYMBOL_GPL drivers/input/rmi4/rmi_core 0x0aac3285 rmi_2d_sensor_configure_input +EXPORT_SYMBOL_GPL drivers/input/rmi4/rmi_core 0x0e50756a rmi_driver_suspend +EXPORT_SYMBOL_GPL drivers/input/rmi4/rmi_core 0x28958682 rmi_set_attn_data +EXPORT_SYMBOL_GPL drivers/input/rmi4/rmi_core 0x3a5f17f1 rmi_of_property_read_u32 +EXPORT_SYMBOL_GPL drivers/input/rmi4/rmi_core 0x437d4484 rmi_unregister_function_handler +EXPORT_SYMBOL_GPL drivers/input/rmi4/rmi_core 0x4b85363a rmi_2d_sensor_abs_report +EXPORT_SYMBOL_GPL drivers/input/rmi4/rmi_core 0x4ea120c3 __rmi_register_function_handler +EXPORT_SYMBOL_GPL drivers/input/rmi4/rmi_core 0xcc494240 rmi_2d_sensor_of_probe +EXPORT_SYMBOL_GPL drivers/input/rmi4/rmi_core 0xd1ada63a rmi_dbg +EXPORT_SYMBOL_GPL drivers/input/rmi4/rmi_core 0xeb0cdf6d rmi_driver_resume +EXPORT_SYMBOL_GPL drivers/input/rmi4/rmi_core 0xedc55e00 rmi_2d_sensor_rel_report +EXPORT_SYMBOL_GPL drivers/input/rmi4/rmi_core 0xf06a5522 rmi_2d_sensor_abs_process +EXPORT_SYMBOL_GPL drivers/input/touchscreen/cyttsp4_core 0x5cda0019 cyttsp4_remove +EXPORT_SYMBOL_GPL drivers/input/touchscreen/cyttsp4_core 0xb97e1164 cyttsp4_pm_ops +EXPORT_SYMBOL_GPL drivers/input/touchscreen/cyttsp4_core 0xcfa8effa cyttsp4_probe +EXPORT_SYMBOL_GPL drivers/input/touchscreen/cyttsp_core 0x1464331a cyttsp_probe +EXPORT_SYMBOL_GPL drivers/input/touchscreen/cyttsp_core 0xf96c5d2a cyttsp_pm_ops +EXPORT_SYMBOL_GPL drivers/input/touchscreen/cyttsp_i2c_common 0x1f42ac5f cyttsp_i2c_read_block_data +EXPORT_SYMBOL_GPL drivers/input/touchscreen/cyttsp_i2c_common 0x573dc347 cyttsp_i2c_write_block_data +EXPORT_SYMBOL_GPL drivers/input/touchscreen/tsc200x-core 0x21f32a6e tsc200x_remove +EXPORT_SYMBOL_GPL drivers/input/touchscreen/tsc200x-core 0x7829b4dd tsc200x_pm_ops +EXPORT_SYMBOL_GPL drivers/input/touchscreen/tsc200x-core 0xb0afd438 tsc200x_probe +EXPORT_SYMBOL_GPL drivers/input/touchscreen/tsc200x-core 0xfaca0901 tsc200x_regmap_config +EXPORT_SYMBOL_GPL drivers/input/touchscreen/wm97xx-ts 0x42026325 wm97xx_register_mach_ops +EXPORT_SYMBOL_GPL drivers/input/touchscreen/wm97xx-ts 0x7fcfcf2b wm9713_codec +EXPORT_SYMBOL_GPL drivers/input/touchscreen/wm97xx-ts 0x88a2369c wm97xx_read_aux_adc +EXPORT_SYMBOL_GPL drivers/input/touchscreen/wm97xx-ts 0x936e5cf9 wm97xx_set_gpio +EXPORT_SYMBOL_GPL drivers/input/touchscreen/wm97xx-ts 0xa4bac804 wm97xx_config_gpio +EXPORT_SYMBOL_GPL drivers/input/touchscreen/wm97xx-ts 0xaedbd2ef wm9705_codec +EXPORT_SYMBOL_GPL drivers/input/touchscreen/wm97xx-ts 0xb365cfb5 wm9712_codec +EXPORT_SYMBOL_GPL drivers/input/touchscreen/wm97xx-ts 0xbb4ad660 wm97xx_set_suspend_mode +EXPORT_SYMBOL_GPL drivers/input/touchscreen/wm97xx-ts 0xc9bfef99 wm97xx_reg_read +EXPORT_SYMBOL_GPL drivers/input/touchscreen/wm97xx-ts 0xced6a426 wm97xx_unregister_mach_ops +EXPORT_SYMBOL_GPL drivers/input/touchscreen/wm97xx-ts 0xe122feeb wm97xx_reg_write +EXPORT_SYMBOL_GPL drivers/input/touchscreen/wm97xx-ts 0xf824a010 wm97xx_get_gpio +EXPORT_SYMBOL_GPL drivers/interconnect/imx/imx-interconnect 0x96a3f20a imx_icc_unregister +EXPORT_SYMBOL_GPL drivers/interconnect/imx/imx-interconnect 0xe29c0dbd imx_icc_register +EXPORT_SYMBOL_GPL drivers/interconnect/qcom/icc-bcm-voter 0x0b39b783 qcom_icc_bcm_voter_commit +EXPORT_SYMBOL_GPL drivers/interconnect/qcom/icc-bcm-voter 0x2914cec7 qcom_icc_bcm_voter_add +EXPORT_SYMBOL_GPL drivers/interconnect/qcom/icc-bcm-voter 0xee1a20d1 of_bcm_voter_get +EXPORT_SYMBOL_GPL drivers/interconnect/qcom/icc-rpmh 0x14558653 qcom_icc_aggregate +EXPORT_SYMBOL_GPL drivers/interconnect/qcom/icc-rpmh 0x2542f6bb qcom_icc_set +EXPORT_SYMBOL_GPL drivers/interconnect/qcom/icc-rpmh 0xe2f15d73 qcom_icc_bcm_init +EXPORT_SYMBOL_GPL drivers/interconnect/qcom/icc-rpmh 0xefd35052 qcom_icc_pre_aggregate +EXPORT_SYMBOL_GPL drivers/interconnect/qcom/icc-smd-rpm 0x81e513ad qcom_icc_rpm_smd_available +EXPORT_SYMBOL_GPL drivers/interconnect/qcom/icc-smd-rpm 0xe8dbdc6c qcom_icc_rpm_smd_send +EXPORT_SYMBOL_GPL drivers/ipack/ipack 0x0b969da3 ipack_driver_register +EXPORT_SYMBOL_GPL drivers/ipack/ipack 0x3281a6bf ipack_bus_unregister +EXPORT_SYMBOL_GPL drivers/ipack/ipack 0x4f36b3b4 ipack_put_device +EXPORT_SYMBOL_GPL drivers/ipack/ipack 0x5c93c25a ipack_device_add +EXPORT_SYMBOL_GPL drivers/ipack/ipack 0x7d15c4f5 ipack_device_del +EXPORT_SYMBOL_GPL drivers/ipack/ipack 0x881f3f0b ipack_get_device +EXPORT_SYMBOL_GPL drivers/ipack/ipack 0xaa09110b ipack_driver_unregister +EXPORT_SYMBOL_GPL drivers/ipack/ipack 0xb1bc416d ipack_bus_register +EXPORT_SYMBOL_GPL drivers/ipack/ipack 0xf81a1adc ipack_device_init +EXPORT_SYMBOL_GPL drivers/leds/led-class-flash 0x047d5367 devm_led_classdev_flash_register_ext +EXPORT_SYMBOL_GPL drivers/leds/led-class-flash 0x04ebf894 led_update_flash_brightness +EXPORT_SYMBOL_GPL drivers/leds/led-class-flash 0x22a840af led_set_flash_brightness +EXPORT_SYMBOL_GPL drivers/leds/led-class-flash 0x2de6fad5 led_set_flash_timeout +EXPORT_SYMBOL_GPL drivers/leds/led-class-flash 0x5f7d7d58 led_classdev_flash_register_ext +EXPORT_SYMBOL_GPL drivers/leds/led-class-flash 0x75600223 led_get_flash_fault +EXPORT_SYMBOL_GPL drivers/leds/led-class-flash 0xbcd1b205 devm_led_classdev_flash_unregister +EXPORT_SYMBOL_GPL drivers/leds/led-class-flash 0xedd9234a led_classdev_flash_unregister +EXPORT_SYMBOL_GPL drivers/leds/leds-lp55xx-common 0x11c9e451 lp55xx_of_populate_pdata +EXPORT_SYMBOL_GPL drivers/leds/leds-lp55xx-common 0x148fd16b lp55xx_update_bits +EXPORT_SYMBOL_GPL drivers/leds/leds-lp55xx-common 0x1cb6bb11 lp55xx_is_extclk_used +EXPORT_SYMBOL_GPL drivers/leds/leds-lp55xx-common 0x82dc78c2 lp55xx_deinit_device +EXPORT_SYMBOL_GPL drivers/leds/leds-lp55xx-common 0xba6f97f8 lp55xx_write +EXPORT_SYMBOL_GPL drivers/leds/leds-lp55xx-common 0xbd9573ea lp55xx_unregister_sysfs +EXPORT_SYMBOL_GPL drivers/leds/leds-lp55xx-common 0xc1d35ff3 lp55xx_register_leds +EXPORT_SYMBOL_GPL drivers/leds/leds-lp55xx-common 0xcb3455a0 lp55xx_unregister_leds +EXPORT_SYMBOL_GPL drivers/leds/leds-lp55xx-common 0xcd407d46 lp55xx_read +EXPORT_SYMBOL_GPL drivers/leds/leds-lp55xx-common 0xe19a9d0d lp55xx_init_device +EXPORT_SYMBOL_GPL drivers/leds/leds-lp55xx-common 0xfb8502f5 lp55xx_register_sysfs +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 0x15b97715 __tracepoint_bcache_write +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0x19b88bec __tracepoint_bcache_writeback +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0x2307b422 __tracepoint_bcache_journal_full +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0x2b46c4b6 __tracepoint_bcache_btree_node_alloc_fail +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0x2b793afb __tracepoint_bcache_read +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0x2fbf8560 __tracepoint_bcache_btree_read +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0x33554606 __tracepoint_bcache_journal_entry_full +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0x414c7765 __tracepoint_bcache_btree_node_alloc +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0x5f6a4a3e __tracepoint_bcache_btree_node_free +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0x65fb81f0 __tracepoint_bcache_btree_node_compact +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0x6b1045c7 __tracepoint_bcache_btree_set_root +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0x7260fb66 __tracepoint_bcache_btree_write +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0x748968f6 __tracepoint_bcache_btree_insert_key +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0x7574c715 __tracepoint_bcache_gc_end +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0x7c8a33fe __tracepoint_bcache_read_retry +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0x96bf5dba __tracepoint_bcache_writeback_collision +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0xa353964f __tracepoint_bcache_request_end +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0xa4682eff __tracepoint_bcache_gc_start +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0xab4c5652 __tracepoint_bcache_btree_node_split +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0xb22f8879 __tracepoint_bcache_bypass_sequential +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0xbf53dc9d __tracepoint_bcache_btree_gc_coalesce +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0xc00185bc __tracepoint_bcache_gc_copy_collision +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0xc13b483f __tracepoint_bcache_invalidate +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0xc36e201d __tracepoint_bcache_gc_copy +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0xc8feefc9 __tracepoint_bcache_alloc_fail +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0xd8da0f0e __tracepoint_bcache_cache_insert +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0xd9f20dee __tracepoint_bcache_journal_replay_key +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0xe9c4d700 __tracepoint_bcache_bypass_congested +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0xee603d81 __tracepoint_bcache_journal_write +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0xf5d8bf62 __tracepoint_bcache_btree_cache_cannibalize +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0xf8502c64 __tracepoint_bcache_request_start +EXPORT_SYMBOL_GPL drivers/md/dm-bio-prison 0x0f06e8ab dm_cell_put_v2 +EXPORT_SYMBOL_GPL drivers/md/dm-bio-prison 0x17dd39d6 dm_deferred_set_create +EXPORT_SYMBOL_GPL drivers/md/dm-bio-prison 0x1b216f6e dm_get_cell +EXPORT_SYMBOL_GPL drivers/md/dm-bio-prison 0x21a45e5e dm_bio_prison_alloc_cell_v2 +EXPORT_SYMBOL_GPL drivers/md/dm-bio-prison 0x2eb01e04 dm_deferred_set_destroy +EXPORT_SYMBOL_GPL drivers/md/dm-bio-prison 0x3275f656 dm_cell_get_v2 +EXPORT_SYMBOL_GPL drivers/md/dm-bio-prison 0x4c7b9829 dm_cell_visit_release +EXPORT_SYMBOL_GPL drivers/md/dm-bio-prison 0x58854a62 dm_cell_error +EXPORT_SYMBOL_GPL drivers/md/dm-bio-prison 0x6791a44e dm_deferred_entry_dec +EXPORT_SYMBOL_GPL drivers/md/dm-bio-prison 0x6886aa18 dm_cell_release_no_holder +EXPORT_SYMBOL_GPL drivers/md/dm-bio-prison 0x6dcef44f dm_cell_promote_or_release +EXPORT_SYMBOL_GPL drivers/md/dm-bio-prison 0x753e20b2 dm_bio_prison_create +EXPORT_SYMBOL_GPL drivers/md/dm-bio-prison 0x79b0a642 dm_cell_lock_promote_v2 +EXPORT_SYMBOL_GPL drivers/md/dm-bio-prison 0x87d6ee2f dm_cell_lock_v2 +EXPORT_SYMBOL_GPL drivers/md/dm-bio-prison 0x8fe4f586 dm_bio_detain +EXPORT_SYMBOL_GPL drivers/md/dm-bio-prison 0x91b19923 dm_bio_prison_free_cell +EXPORT_SYMBOL_GPL drivers/md/dm-bio-prison 0x99c289e3 dm_bio_prison_alloc_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 0xc180f3db dm_bio_prison_free_cell_v2 +EXPORT_SYMBOL_GPL drivers/md/dm-bio-prison 0xca2e3a88 dm_deferred_entry_inc +EXPORT_SYMBOL_GPL drivers/md/dm-bio-prison 0xd99e003d dm_bio_prison_create_v2 +EXPORT_SYMBOL_GPL drivers/md/dm-bio-prison 0xd9df6719 dm_cell_release +EXPORT_SYMBOL_GPL drivers/md/dm-bio-prison 0xdb27872e dm_cell_quiesce_v2 +EXPORT_SYMBOL_GPL drivers/md/dm-bio-prison 0xfb795213 dm_cell_unlock_v2 +EXPORT_SYMBOL_GPL drivers/md/dm-bufio 0x0ad0dc4f dm_bufio_mark_buffer_dirty +EXPORT_SYMBOL_GPL drivers/md/dm-bufio 0x111ab12a dm_bufio_mark_partial_buffer_dirty +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 0x6aebce95 dm_bufio_issue_discard +EXPORT_SYMBOL_GPL drivers/md/dm-bufio 0x6d3f57bd dm_bufio_get_client +EXPORT_SYMBOL_GPL drivers/md/dm-bufio 0x72f07bf4 dm_bufio_set_minimum_buffers +EXPORT_SYMBOL_GPL drivers/md/dm-bufio 0x74dcd98c dm_bufio_get_aux_data +EXPORT_SYMBOL_GPL drivers/md/dm-bufio 0x7c381a76 dm_bufio_get_block_size +EXPORT_SYMBOL_GPL drivers/md/dm-bufio 0x867e87eb dm_bufio_get_dm_io_client +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 0xb2438d54 dm_bufio_release_move +EXPORT_SYMBOL_GPL drivers/md/dm-bufio 0xc0d7df85 dm_bufio_new +EXPORT_SYMBOL_GPL drivers/md/dm-bufio 0xc90df7e5 dm_bufio_prefetch +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 0xdafc9fff dm_bufio_client_create +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 0x074bd77a dm_cache_policy_register +EXPORT_SYMBOL_GPL drivers/md/dm-cache 0x0efbca4c btracker_promotion_already_present +EXPORT_SYMBOL_GPL drivers/md/dm-cache 0x1e04a4dd dm_cache_policy_unregister +EXPORT_SYMBOL_GPL drivers/md/dm-cache 0x5adc2807 btracker_destroy +EXPORT_SYMBOL_GPL drivers/md/dm-cache 0x5de611a9 btracker_nr_writebacks_queued +EXPORT_SYMBOL_GPL drivers/md/dm-cache 0x7890d535 dm_cache_policy_get_name +EXPORT_SYMBOL_GPL drivers/md/dm-cache 0x87bee547 btracker_queue +EXPORT_SYMBOL_GPL drivers/md/dm-cache 0x890723f7 dm_cache_policy_get_version +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 0xadbefda4 dm_cache_policy_destroy +EXPORT_SYMBOL_GPL drivers/md/dm-cache 0xbf1a2968 btracker_create +EXPORT_SYMBOL_GPL drivers/md/dm-cache 0xccfe6409 btracker_nr_demotions_queued +EXPORT_SYMBOL_GPL drivers/md/dm-cache 0xcf8c2590 dm_cache_policy_get_hint_size +EXPORT_SYMBOL_GPL drivers/md/dm-cache 0xe1bdae47 dm_cache_policy_create +EXPORT_SYMBOL_GPL drivers/md/dm-multipath 0x70d65f40 dm_register_path_selector +EXPORT_SYMBOL_GPL drivers/md/dm-multipath 0x992c521f dm_unregister_path_selector +EXPORT_SYMBOL_GPL drivers/md/dm-region-hash 0x01d2f9ac dm_rh_recovery_start +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 0x57e16c3e dm_rh_get_state +EXPORT_SYMBOL_GPL drivers/md/dm-region-hash 0x5f4a6e61 dm_rh_dec +EXPORT_SYMBOL_GPL drivers/md/dm-region-hash 0x5f5b9092 dm_rh_dirty_log +EXPORT_SYMBOL_GPL drivers/md/dm-region-hash 0x7774620f dm_rh_stop_recovery +EXPORT_SYMBOL_GPL drivers/md/dm-region-hash 0x785b365c dm_region_hash_create +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 0x96185ec1 dm_rh_mark_nosync +EXPORT_SYMBOL_GPL drivers/md/dm-region-hash 0x96470210 dm_rh_bio_to_region +EXPORT_SYMBOL_GPL drivers/md/dm-region-hash 0x9fe768f6 dm_rh_delay +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 0xd815aea6 dm_rh_inc_pending +EXPORT_SYMBOL_GPL drivers/md/dm-region-hash 0xd8aa4284 dm_rh_region_context +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 0x09cc81fa dm_btree_cursor_skip +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x0a7e77f3 dm_btree_cursor_end +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x0b25f6bc dm_array_resize +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x0b36102c dm_array_empty +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x0be67537 dm_btree_walk +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x0e198232 dm_btree_insert +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x10e6ccea dm_bitset_clear_bit +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x16af9071 dm_array_set_value +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x1e3f728d dm_block_data +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x23ebd5fb dm_bitset_set_bit +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x2417c5c4 dm_btree_empty +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x24621ca3 dm_sm_disk_open +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x2adee13f dm_btree_cursor_next +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 0x34d45c77 dm_btree_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 0x36a34e58 dm_array_cursor_get_value +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x36b84cda dm_array_del +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x3a797d19 dm_btree_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 0x432b8178 dm_array_cursor_begin +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x4557b425 dm_bitset_test_bit +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x48d1c7dc dm_btree_find_lowest_key +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x48e323be dm_bm_unlock +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x49081644 dm_btree_remove +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x4a4cb558 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 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 0x5cf0d0bb dm_tm_create_with_sm +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x63b0c22d dm_bitset_flush +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x688d422d dm_bm_block_size +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x6af8a872 dm_array_info_init +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x6bb4bf8f dm_array_cursor_next +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x6e1e3821 dm_array_walk +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x6f2fe3c4 dm_btree_remove_leaves +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 0x7485935a dm_btree_lookup +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x7551b46e dm_tm_open_with_sm +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x764567c8 dm_btree_find_highest_key +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 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 0x885b0024 dm_array_new +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x89783bda dm_array_cursor_end +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 0x95a52abd dm_bm_is_read_only +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x97263968 dm_bitset_resize +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x98db2687 dm_bitset_cursor_end +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 0x9e98460e dm_bitset_empty +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0xa2ea5542 dm_bitset_del +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0xa344fe73 dm_block_manager_create +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0xa3cc1157 dm_btree_cursor_begin +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0xa51fbedc dm_bitset_new +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0xaab0ef04 dm_bitset_cursor_skip +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0xb6949944 dm_array_get_value +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0xbb461fb7 dm_bitset_cursor_begin +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0xbbb5df05 dm_array_cursor_skip +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0xc248bde2 dm_disk_bitset_init +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0xcedfc878 dm_bitset_cursor_get_value +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0xd163cade dm_tm_commit +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0xd51c29f1 dm_sm_disk_create +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0xd6711a58 dm_bitset_cursor_next +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0xe781f874 dm_tm_dec +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0xf398644f dm_btree_lookup_next +EXPORT_SYMBOL_GPL drivers/media/cec/core/cec 0x07bde23c cec_pin_allocate_adapter +EXPORT_SYMBOL_GPL drivers/media/cec/core/cec 0x08f667b9 cec_fill_conn_info_from_drm +EXPORT_SYMBOL_GPL drivers/media/cec/core/cec 0x0c7ff636 cec_delete_adapter +EXPORT_SYMBOL_GPL drivers/media/cec/core/cec 0x1c1eacbc cec_transmit_attempt_done_ts +EXPORT_SYMBOL_GPL drivers/media/cec/core/cec 0x1ce684c8 cec_register_adapter +EXPORT_SYMBOL_GPL drivers/media/cec/core/cec 0x25f82e05 cec_received_msg_ts +EXPORT_SYMBOL_GPL drivers/media/cec/core/cec 0x2ccb830f cec_s_log_addrs +EXPORT_SYMBOL_GPL drivers/media/cec/core/cec 0x4076db9f cec_queue_pin_cec_event +EXPORT_SYMBOL_GPL drivers/media/cec/core/cec 0x47363b0e cec_notifier_conn_register +EXPORT_SYMBOL_GPL drivers/media/cec/core/cec 0x4eac75d2 cec_unregister_adapter +EXPORT_SYMBOL_GPL drivers/media/cec/core/cec 0x5b2f6ccf cec_pin_changed +EXPORT_SYMBOL_GPL drivers/media/cec/core/cec 0x6799503c cec_queue_pin_hpd_event +EXPORT_SYMBOL_GPL drivers/media/cec/core/cec 0x6ae3f7b4 cec_transmit_msg +EXPORT_SYMBOL_GPL drivers/media/cec/core/cec 0x76411a15 cec_s_conn_info +EXPORT_SYMBOL_GPL drivers/media/cec/core/cec 0x781d380d cec_allocate_adapter +EXPORT_SYMBOL_GPL drivers/media/cec/core/cec 0x807afd16 cec_queue_pin_5v_event +EXPORT_SYMBOL_GPL drivers/media/cec/core/cec 0x85969960 cec_notifier_parse_hdmi_phandle +EXPORT_SYMBOL_GPL drivers/media/cec/core/cec 0x8b4fc036 cec_transmit_done_ts +EXPORT_SYMBOL_GPL drivers/media/cec/core/cec 0xa01fbb6b cec_notifier_set_phys_addr +EXPORT_SYMBOL_GPL drivers/media/cec/core/cec 0xa252ea4c cec_s_phys_addr +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 0xdd24df6d cec_notifier_cec_adap_unregister +EXPORT_SYMBOL_GPL drivers/media/cec/core/cec 0xdf04a9a6 cec_s_phys_addr_from_edid +EXPORT_SYMBOL_GPL drivers/media/cec/core/cec 0xe09db503 cec_notifier_cec_adap_register +EXPORT_SYMBOL_GPL drivers/media/cec/core/cec 0xf8c99364 cec_notifier_set_phys_addr_from_edid +EXPORT_SYMBOL_GPL drivers/media/common/b2c2/b2c2-flexcop 0x66c0289a b2c2_flexcop_debug +EXPORT_SYMBOL_GPL drivers/media/common/saa7146/saa7146 0x033da42c saa7146_wait_for_debi_done +EXPORT_SYMBOL_GPL drivers/media/common/saa7146/saa7146 0x3ed23074 saa7146_pgtable_alloc +EXPORT_SYMBOL_GPL drivers/media/common/saa7146/saa7146 0x40371b8d saa7146_vmalloc_build_pgtable +EXPORT_SYMBOL_GPL drivers/media/common/saa7146/saa7146 0x41ee08ce saa7146_pgtable_free +EXPORT_SYMBOL_GPL drivers/media/common/saa7146/saa7146 0x4e75c227 saa7146_register_extension +EXPORT_SYMBOL_GPL drivers/media/common/saa7146/saa7146 0x7e469644 saa7146_setgpio +EXPORT_SYMBOL_GPL drivers/media/common/saa7146/saa7146 0x9ad6b7dc saa7146_vfree_destroy_pgtable +EXPORT_SYMBOL_GPL drivers/media/common/saa7146/saa7146 0xadac67d0 saa7146_i2c_adapter_prepare +EXPORT_SYMBOL_GPL drivers/media/common/saa7146/saa7146 0xbbadf582 saa7146_pgtable_build_single +EXPORT_SYMBOL_GPL drivers/media/common/saa7146/saa7146 0xd59b12a2 saa7146_unregister_extension +EXPORT_SYMBOL_GPL drivers/media/common/saa7146/saa7146 0xe3cd9b5c saa7146_debug +EXPORT_SYMBOL_GPL drivers/media/common/saa7146/saa7146_vv 0x2a2402f1 saa7146_vv_release +EXPORT_SYMBOL_GPL drivers/media/common/saa7146/saa7146_vv 0x2af24b79 saa7146_unregister_device +EXPORT_SYMBOL_GPL drivers/media/common/saa7146/saa7146_vv 0x50f50352 saa7146_vv_init +EXPORT_SYMBOL_GPL drivers/media/common/saa7146/saa7146_vv 0x8292c05f saa7146_register_device +EXPORT_SYMBOL_GPL drivers/media/common/saa7146/saa7146_vv 0xa1dd3bbf saa7146_start_preview +EXPORT_SYMBOL_GPL drivers/media/common/saa7146/saa7146_vv 0xb98436dd saa7146_set_hps_source_and_sync +EXPORT_SYMBOL_GPL drivers/media/common/saa7146/saa7146_vv 0xebad91dd saa7146_stop_preview +EXPORT_SYMBOL_GPL drivers/media/common/siano/smsmdtv 0x17995dd3 smscore_register_hotplug +EXPORT_SYMBOL_GPL drivers/media/common/siano/smsmdtv 0x1965b7fd smscore_onresponse +EXPORT_SYMBOL_GPL drivers/media/common/siano/smsmdtv 0x19890f61 sms_board_led_feedback +EXPORT_SYMBOL_GPL drivers/media/common/siano/smsmdtv 0x21e36bf2 smscore_registry_getmode +EXPORT_SYMBOL_GPL drivers/media/common/siano/smsmdtv 0x320ecf95 smscore_putbuffer +EXPORT_SYMBOL_GPL drivers/media/common/siano/smsmdtv 0x34bf0e61 smscore_translate_msg +EXPORT_SYMBOL_GPL drivers/media/common/siano/smsmdtv 0x354e8266 sms_board_power +EXPORT_SYMBOL_GPL drivers/media/common/siano/smsmdtv 0x37d91069 smsendian_handle_tx_message +EXPORT_SYMBOL_GPL drivers/media/common/siano/smsmdtv 0x3c938e52 smscore_set_board_id +EXPORT_SYMBOL_GPL drivers/media/common/siano/smsmdtv 0x41a66d8c smscore_register_client +EXPORT_SYMBOL_GPL drivers/media/common/siano/smsmdtv 0x45284ae9 smsendian_handle_rx_message +EXPORT_SYMBOL_GPL drivers/media/common/siano/smsmdtv 0x557ebaa4 smscore_unregister_hotplug +EXPORT_SYMBOL_GPL drivers/media/common/siano/smsmdtv 0x74ee9098 sms_board_load_modules +EXPORT_SYMBOL_GPL drivers/media/common/siano/smsmdtv 0x7b1afbfd smscore_get_board_id +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 0xbbdb5c42 smscore_unregister_client +EXPORT_SYMBOL_GPL drivers/media/common/siano/smsmdtv 0xc188c993 sms_board_setup +EXPORT_SYMBOL_GPL drivers/media/common/siano/smsmdtv 0xc5bfd81e smscore_getbuffer +EXPORT_SYMBOL_GPL drivers/media/common/siano/smsmdtv 0xc6159694 smscore_register_device +EXPORT_SYMBOL_GPL drivers/media/common/siano/smsmdtv 0xd6d24c9e smscore_unregister_device +EXPORT_SYMBOL_GPL drivers/media/common/siano/smsmdtv 0xd79760ae smscore_start_device +EXPORT_SYMBOL_GPL drivers/media/common/siano/smsmdtv 0xd8e6e1d1 sms_board_event +EXPORT_SYMBOL_GPL drivers/media/common/siano/smsmdtv 0xe12c7e43 smscore_get_device_mode +EXPORT_SYMBOL_GPL drivers/media/common/siano/smsmdtv 0xe5907b97 sms_board_lna_control +EXPORT_SYMBOL_GPL drivers/media/common/v4l2-tpg/v4l2-tpg 0x03005a48 tpg_alloc +EXPORT_SYMBOL_GPL drivers/media/common/v4l2-tpg/v4l2-tpg 0x040dc7cd tpg_aspect_strings +EXPORT_SYMBOL_GPL drivers/media/common/v4l2-tpg/v4l2-tpg 0x4d1d285c tpg_init +EXPORT_SYMBOL_GPL drivers/media/common/v4l2-tpg/v4l2-tpg 0x517e7ccd tpg_fill_plane_buffer +EXPORT_SYMBOL_GPL drivers/media/common/v4l2-tpg/v4l2-tpg 0x579c6308 tpg_gen_text +EXPORT_SYMBOL_GPL drivers/media/common/v4l2-tpg/v4l2-tpg 0x6026aaf0 tpg_log_status +EXPORT_SYMBOL_GPL drivers/media/common/v4l2-tpg/v4l2-tpg 0x6960e899 tpg_s_crop_compose +EXPORT_SYMBOL_GPL drivers/media/common/v4l2-tpg/v4l2-tpg 0x756516e7 tpg_s_fourcc +EXPORT_SYMBOL_GPL drivers/media/common/v4l2-tpg/v4l2-tpg 0x7a5d8c0b tpg_update_mv_step +EXPORT_SYMBOL_GPL drivers/media/common/v4l2-tpg/v4l2-tpg 0x86b4ddf7 tpg_reset_source +EXPORT_SYMBOL_GPL drivers/media/common/v4l2-tpg/v4l2-tpg 0x975a1e29 tpg_g_interleaved_plane +EXPORT_SYMBOL_GPL drivers/media/common/v4l2-tpg/v4l2-tpg 0xaa5503d9 tpg_set_font +EXPORT_SYMBOL_GPL drivers/media/common/v4l2-tpg/v4l2-tpg 0xc6110b6e tpg_free +EXPORT_SYMBOL_GPL drivers/media/common/v4l2-tpg/v4l2-tpg 0xc6808be7 tpg_calc_text_basep +EXPORT_SYMBOL_GPL drivers/media/common/v4l2-tpg/v4l2-tpg 0xce8159bb tpg_pattern_strings +EXPORT_SYMBOL_GPL drivers/media/common/v4l2-tpg/v4l2-tpg 0xf65c5e46 tpg_fillbuffer +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-common 0x09b41d34 vb2_core_create_bufs +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-common 0x0c31f642 vb2_core_streamoff +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-common 0x2c413418 vb2_core_poll +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-common 0x33814bc6 vb2_wait_for_all_buffers +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-common 0x3f623848 __tracepoint_vb2_qbuf +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-common 0x64ede452 vb2_core_queue_init +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-common 0x67722838 vb2_queue_error +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-common 0x6dd84a20 vb2_write +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-common 0x7a1e5411 vb2_plane_vaddr +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-common 0x7b6d3cac vb2_core_dqbuf +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-common 0x7db5fd5a vb2_discard_done +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-common 0x7de20364 vb2_plane_cookie +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-common 0x856bc0e8 vb2_core_streamon +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-common 0x8ddae992 __tracepoint_vb2_buf_done +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-common 0x90828029 __tracepoint_vb2_dqbuf +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-common 0x92635181 vb2_core_prepare_buf +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-common 0x951b9e1f vb2_core_reqbufs +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-common 0x9a8a3b3a vb2_mmap +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-common 0xa571f1e3 vb2_read +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-common 0xa78fd822 vb2_thread_stop +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-common 0xa851a410 vb2_core_queue_release +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-common 0xb0c1b0c5 vb2_buffer_done +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-common 0xb2fa7b5a vb2_thread_start +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-common 0xb548be7c vb2_core_querybuf +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-common 0xc043536e vb2_request_buffer_cnt +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-common 0xc6b8acc7 vb2_core_qbuf +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-common 0xc72af8e9 vb2_core_expbuf +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-common 0xc88264fe __tracepoint_vb2_buf_queue +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-common 0xfca67542 vb2_request_object_is_buffer +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-dma-contig 0x3d815f65 vb2_dma_contig_set_max_seg_size +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-dma-contig 0xb2425723 vb2_dma_contig_memops +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-dma-sg 0xf0c34478 vb2_dma_sg_memops +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-memops 0x3b56ec29 vb2_common_vm_ops +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-v4l2 0x022ec7c3 vb2_request_validate +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-v4l2 0x07f84323 vb2_streamoff +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-v4l2 0x0ac4cff2 vb2_fop_release +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-v4l2 0x169da2a9 _vb2_fop_release +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-v4l2 0x1975dbed vb2_ioctl_streamon +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-v4l2 0x1e57ea48 vb2_request_queue +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-v4l2 0x1e5c3344 vb2_reqbufs +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-v4l2 0x28e607ed vb2_poll +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-v4l2 0x2abfec48 vb2_ioctl_create_bufs +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-v4l2 0x2eb90fe9 vb2_fop_read +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-v4l2 0x30b791f9 vb2_dqbuf +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-v4l2 0x48f8c02f vb2_find_timestamp +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-v4l2 0x54d8d3d3 vb2_ioctl_expbuf +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-v4l2 0x54ed30ca vb2_streamon +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-v4l2 0x55dde50f vb2_ioctl_qbuf +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-v4l2 0x62161170 vb2_prepare_buf +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-v4l2 0x6f80b83b vb2_fop_poll +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-v4l2 0x745755e2 vb2_ops_wait_prepare +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-v4l2 0x74db5b3d vb2_ioctl_querybuf +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-v4l2 0x75412e59 vb2_fop_mmap +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-v4l2 0x77dd73fd vb2_create_bufs +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-v4l2 0x82bcf482 vb2_ioctl_dqbuf +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-v4l2 0x88d39e1a vb2_ops_wait_finish +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-v4l2 0x8996edb2 vb2_queue_init +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-v4l2 0x9020a9fe vb2_queue_release +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-v4l2 0x9091dd7c vb2_qbuf +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-v4l2 0xa01d7a41 vb2_ioctl_streamoff +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-v4l2 0xbd1c04da vb2_ioctl_prepare_buf +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-v4l2 0xc4df7547 vb2_ioctl_reqbufs +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-v4l2 0xd794e7f9 vb2_expbuf +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-v4l2 0xfab05fee vb2_fop_write +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-vmalloc 0x27f34077 vb2_vmalloc_memops +EXPORT_SYMBOL_GPL drivers/media/dvb-core/dvb-core 0x458f379e dvb_module_release +EXPORT_SYMBOL_GPL drivers/media/dvb-core/dvb-core 0x89908d57 dvb_create_media_graph +EXPORT_SYMBOL_GPL drivers/media/dvb-core/dvb-core 0xbc353541 dvb_module_probe +EXPORT_SYMBOL_GPL drivers/media/dvb-frontends/as102_fe 0xa8670ca2 as102_attach +EXPORT_SYMBOL_GPL drivers/media/dvb-frontends/cx24117 0xc130dce6 cx24117_attach +EXPORT_SYMBOL_GPL drivers/media/dvb-frontends/gp8psk-fe 0xcbf3bb5a gp8psk_fe_attach +EXPORT_SYMBOL_GPL drivers/media/dvb-frontends/mxl5xx 0xfe460bb4 mxl5xx_attach +EXPORT_SYMBOL_GPL drivers/media/dvb-frontends/stv0910 0x30caeb14 stv0910_attach +EXPORT_SYMBOL_GPL drivers/media/dvb-frontends/stv6111 0x379f5f7c stv6111_attach +EXPORT_SYMBOL_GPL drivers/media/dvb-frontends/tda18271c2dd 0xb22ec4f6 tda18271c2dd_attach +EXPORT_SYMBOL_GPL drivers/media/i2c/aptina-pll 0x0a979bd6 aptina_pll_calculate +EXPORT_SYMBOL_GPL drivers/media/i2c/smiapp-pll 0x1b8ee50f smiapp_pll_calculate +EXPORT_SYMBOL_GPL drivers/media/mc/mc 0x03d6a658 media_request_object_init +EXPORT_SYMBOL_GPL drivers/media/mc/mc 0x0e7cb7a3 __media_remove_intf_link +EXPORT_SYMBOL_GPL drivers/media/mc/mc 0x0ef02ae5 media_request_put +EXPORT_SYMBOL_GPL drivers/media/mc/mc 0x126f6b1a media_graph_walk_start +EXPORT_SYMBOL_GPL drivers/media/mc/mc 0x13623688 __media_pipeline_stop +EXPORT_SYMBOL_GPL drivers/media/mc/mc 0x1578c2a1 media_graph_walk_cleanup +EXPORT_SYMBOL_GPL drivers/media/mc/mc 0x181470b5 __media_remove_intf_links +EXPORT_SYMBOL_GPL drivers/media/mc/mc 0x1b1330d4 media_pipeline_stop +EXPORT_SYMBOL_GPL drivers/media/mc/mc 0x2b3ef1fb media_remove_intf_links +EXPORT_SYMBOL_GPL drivers/media/mc/mc 0x2d6c6f17 media_device_usb_allocate +EXPORT_SYMBOL_GPL drivers/media/mc/mc 0x405c335d media_entity_setup_link +EXPORT_SYMBOL_GPL drivers/media/mc/mc 0x41253ebe media_entity_remove_links +EXPORT_SYMBOL_GPL drivers/media/mc/mc 0x47375fdb __media_device_register +EXPORT_SYMBOL_GPL drivers/media/mc/mc 0x4b1c5566 media_device_unregister +EXPORT_SYMBOL_GPL drivers/media/mc/mc 0x556328d5 media_graph_walk_init +EXPORT_SYMBOL_GPL drivers/media/mc/mc 0x57a4ebad media_entity_get_fwnode_pad +EXPORT_SYMBOL_GPL drivers/media/mc/mc 0x6376fae0 media_request_object_complete +EXPORT_SYMBOL_GPL drivers/media/mc/mc 0x6745c5e6 media_device_register_entity +EXPORT_SYMBOL_GPL drivers/media/mc/mc 0x68b995d3 __media_entity_remove_links +EXPORT_SYMBOL_GPL drivers/media/mc/mc 0x6ca9db7a media_remove_intf_link +EXPORT_SYMBOL_GPL drivers/media/mc/mc 0x732612f3 media_device_init +EXPORT_SYMBOL_GPL drivers/media/mc/mc 0x74447ef1 media_devnode_remove +EXPORT_SYMBOL_GPL drivers/media/mc/mc 0x7efbc616 media_get_pad_index +EXPORT_SYMBOL_GPL drivers/media/mc/mc 0x8c6e1fc7 media_device_unregister_entity_notify +EXPORT_SYMBOL_GPL drivers/media/mc/mc 0x939e6987 media_request_object_unbind +EXPORT_SYMBOL_GPL drivers/media/mc/mc 0x9a2b7ed2 media_create_intf_link +EXPORT_SYMBOL_GPL drivers/media/mc/mc 0x9ab568bc media_device_cleanup +EXPORT_SYMBOL_GPL drivers/media/mc/mc 0xa382b436 media_device_delete +EXPORT_SYMBOL_GPL drivers/media/mc/mc 0xaafccf62 media_create_pad_links +EXPORT_SYMBOL_GPL drivers/media/mc/mc 0xb19a372d media_request_get_by_fd +EXPORT_SYMBOL_GPL drivers/media/mc/mc 0xb853a52c media_request_object_put +EXPORT_SYMBOL_GPL drivers/media/mc/mc 0xbd00e227 media_entity_remote_pad +EXPORT_SYMBOL_GPL drivers/media/mc/mc 0xc17b042c media_device_pci_init +EXPORT_SYMBOL_GPL drivers/media/mc/mc 0xc408036c media_create_pad_link +EXPORT_SYMBOL_GPL drivers/media/mc/mc 0xc5c01cb2 media_request_object_bind +EXPORT_SYMBOL_GPL drivers/media/mc/mc 0xcae6eb1c media_devnode_create +EXPORT_SYMBOL_GPL drivers/media/mc/mc 0xce60ff44 media_device_unregister_entity +EXPORT_SYMBOL_GPL drivers/media/mc/mc 0xd7dae462 __media_pipeline_start +EXPORT_SYMBOL_GPL drivers/media/mc/mc 0xd90bfde8 media_entity_pads_init +EXPORT_SYMBOL_GPL drivers/media/mc/mc 0xda2c9494 __media_entity_setup_link +EXPORT_SYMBOL_GPL drivers/media/mc/mc 0xdb6ef8a3 media_entity_find_link +EXPORT_SYMBOL_GPL drivers/media/mc/mc 0xdbda6304 media_graph_walk_next +EXPORT_SYMBOL_GPL drivers/media/mc/mc 0xdc581289 __media_entity_enum_init +EXPORT_SYMBOL_GPL drivers/media/mc/mc 0xe5ceecd6 media_entity_enum_cleanup +EXPORT_SYMBOL_GPL drivers/media/mc/mc 0xe65ebe27 media_pipeline_start +EXPORT_SYMBOL_GPL drivers/media/mc/mc 0xe87a49a7 __media_device_usb_init +EXPORT_SYMBOL_GPL drivers/media/mc/mc 0xea2e1628 media_request_object_find +EXPORT_SYMBOL_GPL drivers/media/mc/mc 0xed4529bf media_device_register_entity_notify +EXPORT_SYMBOL_GPL drivers/media/pci/cx88/cx88xx 0xe99cf748 cx88_setup_xc3028 +EXPORT_SYMBOL_GPL drivers/media/pci/mantis/mantis_core 0x0964ffb2 mantis_i2c_init +EXPORT_SYMBOL_GPL drivers/media/pci/mantis/mantis_core 0x0daf3c05 mantis_pci_init +EXPORT_SYMBOL_GPL drivers/media/pci/mantis/mantis_core 0x0e7f77a1 mantis_i2c_exit +EXPORT_SYMBOL_GPL drivers/media/pci/mantis/mantis_core 0x11da3217 mantis_input_exit +EXPORT_SYMBOL_GPL drivers/media/pci/mantis/mantis_core 0x153f55bb mantis_pci_exit +EXPORT_SYMBOL_GPL drivers/media/pci/mantis/mantis_core 0x15661046 mantis_uart_exit +EXPORT_SYMBOL_GPL drivers/media/pci/mantis/mantis_core 0x1960171c mantis_dvb_init +EXPORT_SYMBOL_GPL drivers/media/pci/mantis/mantis_core 0x1bd44a19 mantis_ca_exit +EXPORT_SYMBOL_GPL drivers/media/pci/mantis/mantis_core 0x1e7b9f0f mantis_dvb_exit +EXPORT_SYMBOL_GPL drivers/media/pci/mantis/mantis_core 0x4676bf56 mantis_get_mac +EXPORT_SYMBOL_GPL drivers/media/pci/mantis/mantis_core 0x50fd52c5 mantis_frontend_power +EXPORT_SYMBOL_GPL drivers/media/pci/mantis/mantis_core 0x55797a29 mantis_input_init +EXPORT_SYMBOL_GPL drivers/media/pci/mantis/mantis_core 0x637cb3f9 mantis_dma_init +EXPORT_SYMBOL_GPL drivers/media/pci/mantis/mantis_core 0x64673bea mantis_dma_exit +EXPORT_SYMBOL_GPL drivers/media/pci/mantis/mantis_core 0x72dc4426 mantis_stream_control +EXPORT_SYMBOL_GPL drivers/media/pci/mantis/mantis_core 0xb0492c42 mantis_gpio_set_bits +EXPORT_SYMBOL_GPL drivers/media/pci/mantis/mantis_core 0xba05cce1 mantis_uart_init +EXPORT_SYMBOL_GPL drivers/media/pci/mantis/mantis_core 0xcb2521fd mantis_ca_init +EXPORT_SYMBOL_GPL drivers/media/pci/mantis/mantis_core 0xfd2418f0 mantis_frontend_soft_reset +EXPORT_SYMBOL_GPL drivers/media/pci/saa7134/saa7134 0x0e5434d3 saa7134_ts_buffer_prepare +EXPORT_SYMBOL_GPL drivers/media/pci/saa7134/saa7134 0x1283f8fe saa7134_ts_qops +EXPORT_SYMBOL_GPL drivers/media/pci/saa7134/saa7134 0x1f88a397 saa7134_ts_start_streaming +EXPORT_SYMBOL_GPL drivers/media/pci/saa7134/saa7134 0x26399e17 saa7134_vb2_buffer_queue +EXPORT_SYMBOL_GPL drivers/media/pci/saa7134/saa7134 0x5b825460 saa7134_stop_streaming +EXPORT_SYMBOL_GPL drivers/media/pci/saa7134/saa7134 0x78dc6b1e saa7134_s_frequency +EXPORT_SYMBOL_GPL drivers/media/pci/saa7134/saa7134 0x84dbb9da saa7134_g_frequency +EXPORT_SYMBOL_GPL drivers/media/pci/saa7134/saa7134 0x999520d5 saa7134_s_tuner +EXPORT_SYMBOL_GPL drivers/media/pci/saa7134/saa7134 0xa39a0b8c saa7134_s_input +EXPORT_SYMBOL_GPL drivers/media/pci/saa7134/saa7134 0xc2be7ead saa7134_g_tuner +EXPORT_SYMBOL_GPL drivers/media/pci/saa7134/saa7134 0xc63e7f88 saa7134_querystd +EXPORT_SYMBOL_GPL drivers/media/pci/saa7134/saa7134 0xc9b03ed9 saa7134_ts_stop_streaming +EXPORT_SYMBOL_GPL drivers/media/pci/saa7134/saa7134 0xdbf333bb saa7134_ts_queue_setup +EXPORT_SYMBOL_GPL drivers/media/pci/saa7134/saa7134 0xe65119a3 saa7134_enum_input +EXPORT_SYMBOL_GPL drivers/media/pci/saa7134/saa7134 0xec84f6b6 saa7134_g_std +EXPORT_SYMBOL_GPL drivers/media/pci/saa7134/saa7134 0xece1c2cb saa7134_querycap +EXPORT_SYMBOL_GPL drivers/media/pci/saa7134/saa7134 0xf049469e saa7134_ts_buffer_init +EXPORT_SYMBOL_GPL drivers/media/pci/saa7134/saa7134 0xf7fc1066 saa7134_s_std +EXPORT_SYMBOL_GPL drivers/media/pci/saa7134/saa7134 0xfb51340b saa7134_g_input +EXPORT_SYMBOL_GPL drivers/media/pci/ttpci/budget-core 0x03477d20 ttpci_budget_deinit +EXPORT_SYMBOL_GPL drivers/media/pci/ttpci/budget-core 0x7948c222 budget_debug +EXPORT_SYMBOL_GPL drivers/media/pci/ttpci/budget-core 0x7d032abf ttpci_budget_debiread +EXPORT_SYMBOL_GPL drivers/media/pci/ttpci/budget-core 0x81c1e8ab ttpci_budget_irq10_handler +EXPORT_SYMBOL_GPL drivers/media/pci/ttpci/budget-core 0x9c2e38f4 ttpci_budget_init +EXPORT_SYMBOL_GPL drivers/media/pci/ttpci/budget-core 0xbeb4b5fe ttpci_budget_set_video_port +EXPORT_SYMBOL_GPL drivers/media/pci/ttpci/budget-core 0xc46b58ac ttpci_budget_init_hooks +EXPORT_SYMBOL_GPL drivers/media/pci/ttpci/budget-core 0xd5d5d9ba ttpci_budget_debiwrite +EXPORT_SYMBOL_GPL drivers/media/platform/marvell-ccic/mcam-core 0x295ee559 mccic_suspend +EXPORT_SYMBOL_GPL drivers/media/platform/marvell-ccic/mcam-core 0x648a2f18 mccic_register +EXPORT_SYMBOL_GPL drivers/media/platform/marvell-ccic/mcam-core 0xa359685a mccic_resume +EXPORT_SYMBOL_GPL drivers/media/platform/marvell-ccic/mcam-core 0xbd5609b4 mccic_shutdown +EXPORT_SYMBOL_GPL drivers/media/platform/marvell-ccic/mcam-core 0xd2e064a8 mccic_irq +EXPORT_SYMBOL_GPL drivers/media/platform/mtk-vpu/mtk-vpu 0x2615c313 vpu_get_vdec_hw_capa +EXPORT_SYMBOL_GPL drivers/media/platform/mtk-vpu/mtk-vpu 0x327f98bf vpu_load_firmware +EXPORT_SYMBOL_GPL drivers/media/platform/mtk-vpu/mtk-vpu 0x64c52a67 vpu_mapping_dm_addr +EXPORT_SYMBOL_GPL drivers/media/platform/mtk-vpu/mtk-vpu 0x70432317 vpu_get_venc_hw_capa +EXPORT_SYMBOL_GPL drivers/media/platform/mtk-vpu/mtk-vpu 0x7c2e8aca vpu_ipi_register +EXPORT_SYMBOL_GPL drivers/media/platform/mtk-vpu/mtk-vpu 0x9c0430ea vpu_get_plat_device +EXPORT_SYMBOL_GPL drivers/media/platform/mtk-vpu/mtk-vpu 0xf4f67a00 vpu_ipi_send +EXPORT_SYMBOL_GPL drivers/media/platform/mtk-vpu/mtk-vpu 0xfbf11a00 vpu_wdt_reg_handler +EXPORT_SYMBOL_GPL drivers/media/platform/qcom/venus/venus-core 0x15e0242f hfi_session_create +EXPORT_SYMBOL_GPL drivers/media/platform/qcom/venus/venus-core 0x17f05329 venus_helper_process_initial_out_bufs +EXPORT_SYMBOL_GPL drivers/media/platform/qcom/venus/venus-core 0x1adf5a0f venus_helper_vb2_start_streaming +EXPORT_SYMBOL_GPL drivers/media/platform/qcom/venus/venus-core 0x1cfb495a venus_helper_vb2_stop_streaming +EXPORT_SYMBOL_GPL drivers/media/platform/qcom/venus/venus-core 0x1ec2ed36 venus_helper_free_dpb_bufs +EXPORT_SYMBOL_GPL drivers/media/platform/qcom/venus/venus-core 0x204b631a venus_helper_intbufs_free +EXPORT_SYMBOL_GPL drivers/media/platform/qcom/venus/venus-core 0x24cab0cd hfi_session_init +EXPORT_SYMBOL_GPL drivers/media/platform/qcom/venus/venus-core 0x24d941b0 venus_helper_init_instance +EXPORT_SYMBOL_GPL drivers/media/platform/qcom/venus/venus-core 0x27b12c5f venus_helper_m2m_device_run +EXPORT_SYMBOL_GPL drivers/media/platform/qcom/venus/venus-core 0x2d693ecb venus_helper_m2m_job_abort +EXPORT_SYMBOL_GPL drivers/media/platform/qcom/venus/venus-core 0x2e9939a1 hfi_session_continue +EXPORT_SYMBOL_GPL drivers/media/platform/qcom/venus/venus-core 0x31347a83 venus_helper_alloc_dpb_bufs +EXPORT_SYMBOL_GPL drivers/media/platform/qcom/venus/venus-core 0x3b383872 venus_helper_find_buf +EXPORT_SYMBOL_GPL drivers/media/platform/qcom/venus/venus-core 0x49e72657 venus_helper_set_input_resolution +EXPORT_SYMBOL_GPL drivers/media/platform/qcom/venus/venus-core 0x4f3ed2dd venus_helper_intbufs_realloc +EXPORT_SYMBOL_GPL drivers/media/platform/qcom/venus/venus-core 0x56c7c3ce hfi_session_process_buf +EXPORT_SYMBOL_GPL drivers/media/platform/qcom/venus/venus-core 0x5bb2118b venus_helper_release_buf_ref +EXPORT_SYMBOL_GPL drivers/media/platform/qcom/venus/venus-core 0x5fc3c98a venus_helper_set_dyn_bufmode +EXPORT_SYMBOL_GPL drivers/media/platform/qcom/venus/venus-core 0x63a5a075 venus_helper_get_ts_metadata +EXPORT_SYMBOL_GPL drivers/media/platform/qcom/venus/venus-core 0x6c578129 hfi_session_flush +EXPORT_SYMBOL_GPL drivers/media/platform/qcom/venus/venus-core 0x717f3ef7 venus_helper_vb2_buf_prepare +EXPORT_SYMBOL_GPL drivers/media/platform/qcom/venus/venus-core 0x71a3cd5b venus_helper_set_color_format +EXPORT_SYMBOL_GPL drivers/media/platform/qcom/venus/venus-core 0x755ff117 hfi_session_start +EXPORT_SYMBOL_GPL drivers/media/platform/qcom/venus/venus-core 0x80574597 hfi_session_destroy +EXPORT_SYMBOL_GPL drivers/media/platform/qcom/venus/venus-core 0x87ea189b venus_helper_check_codec +EXPORT_SYMBOL_GPL drivers/media/platform/qcom/venus/venus-core 0x8ad11ee3 venus_helper_intbufs_alloc +EXPORT_SYMBOL_GPL drivers/media/platform/qcom/venus/venus-core 0x9057be12 hfi_session_stop +EXPORT_SYMBOL_GPL drivers/media/platform/qcom/venus/venus-core 0x9bac8bd4 venus_helper_init_codec_freq_data +EXPORT_SYMBOL_GPL drivers/media/platform/qcom/venus/venus-core 0xa9f08fd2 venus_helper_set_work_mode +EXPORT_SYMBOL_GPL drivers/media/platform/qcom/venus/venus-core 0xab8b83f6 venus_helper_set_output_resolution +EXPORT_SYMBOL_GPL drivers/media/platform/qcom/venus/venus-core 0xb399f3d7 venus_helper_queue_dpb_bufs +EXPORT_SYMBOL_GPL drivers/media/platform/qcom/venus/venus-core 0xb5da1da9 venus_helper_get_framesz_raw +EXPORT_SYMBOL_GPL drivers/media/platform/qcom/venus/venus-core 0xb7749cd7 venus_helper_unregister_bufs +EXPORT_SYMBOL_GPL drivers/media/platform/qcom/venus/venus-core 0xbada61a4 venus_helper_get_bufreq +EXPORT_SYMBOL_GPL drivers/media/platform/qcom/venus/venus-core 0xbb66bbe2 venus_helper_set_raw_format +EXPORT_SYMBOL_GPL drivers/media/platform/qcom/venus/venus-core 0xbc700522 venus_helper_set_bufsize +EXPORT_SYMBOL_GPL drivers/media/platform/qcom/venus/venus-core 0xbe0228ac venus_helper_set_num_bufs +EXPORT_SYMBOL_GPL drivers/media/platform/qcom/venus/venus-core 0xbf51e638 hfi_session_deinit +EXPORT_SYMBOL_GPL drivers/media/platform/qcom/venus/venus-core 0xc050f8f3 venus_helper_vb2_buf_queue +EXPORT_SYMBOL_GPL drivers/media/platform/qcom/venus/venus-core 0xc11adefa hfi_session_abort +EXPORT_SYMBOL_GPL drivers/media/platform/qcom/venus/venus-core 0xc2ed7681 hfi_session_get_property +EXPORT_SYMBOL_GPL drivers/media/platform/qcom/venus/venus-core 0xca6ff4a6 venus_helper_acquire_buf_ref +EXPORT_SYMBOL_GPL drivers/media/platform/qcom/venus/venus-core 0xd21da2e4 venus_helper_get_framesz +EXPORT_SYMBOL_GPL drivers/media/platform/qcom/venus/venus-core 0xdacfd1eb venus_helper_set_multistream +EXPORT_SYMBOL_GPL drivers/media/platform/qcom/venus/venus-core 0xe1246173 venus_helper_buffers_done +EXPORT_SYMBOL_GPL drivers/media/platform/qcom/venus/venus-core 0xe27d800d venus_helper_get_out_fmts +EXPORT_SYMBOL_GPL drivers/media/platform/qcom/venus/venus-core 0xe4e2b051 venus_helper_vb2_buf_init +EXPORT_SYMBOL_GPL drivers/media/platform/qcom/venus/venus-core 0xeebe520c hfi_session_unload_res +EXPORT_SYMBOL_GPL drivers/media/platform/qcom/venus/venus-core 0xf4d8ef4f venus_helper_process_initial_cap_bufs +EXPORT_SYMBOL_GPL drivers/media/platform/qcom/venus/venus-core 0xf9657b62 venus_helper_get_opb_size +EXPORT_SYMBOL_GPL drivers/media/platform/qcom/venus/venus-core 0xfa458573 hfi_session_set_property +EXPORT_SYMBOL_GPL drivers/media/platform/rcar-fcp 0x31028812 rcar_fcp_get_device +EXPORT_SYMBOL_GPL drivers/media/platform/rcar-fcp 0x3d858696 rcar_fcp_put +EXPORT_SYMBOL_GPL drivers/media/platform/rcar-fcp 0x4ad5d888 rcar_fcp_enable +EXPORT_SYMBOL_GPL drivers/media/platform/rcar-fcp 0x5fe6f6e8 rcar_fcp_disable +EXPORT_SYMBOL_GPL drivers/media/platform/rcar-fcp 0x9877c29f rcar_fcp_get +EXPORT_SYMBOL_GPL drivers/media/platform/vsp1/vsp1 0x1d660ae7 vsp1_du_setup_lif +EXPORT_SYMBOL_GPL drivers/media/platform/vsp1/vsp1 0x20fb3d31 vsp1_du_atomic_begin +EXPORT_SYMBOL_GPL drivers/media/platform/vsp1/vsp1 0xa0a2a8be vsp1_du_unmap_sg +EXPORT_SYMBOL_GPL drivers/media/platform/vsp1/vsp1 0xa91ecaa1 vsp1_du_atomic_update +EXPORT_SYMBOL_GPL drivers/media/platform/vsp1/vsp1 0xb0cab767 vsp1_du_init +EXPORT_SYMBOL_GPL drivers/media/platform/vsp1/vsp1 0xc88d3ba6 vsp1_du_map_sg +EXPORT_SYMBOL_GPL drivers/media/platform/vsp1/vsp1 0xf04588cd vsp1_du_atomic_flush +EXPORT_SYMBOL_GPL drivers/media/platform/xilinx/xilinx-video 0x0d677ac5 xvip_clr_or_set +EXPORT_SYMBOL_GPL drivers/media/platform/xilinx/xilinx-video 0x3859b6d8 xvip_clr_and_set +EXPORT_SYMBOL_GPL drivers/media/platform/xilinx/xilinx-video 0x3c7eb685 xvip_set_format_size +EXPORT_SYMBOL_GPL drivers/media/platform/xilinx/xilinx-video 0x9aa94dcb xvip_init_resources +EXPORT_SYMBOL_GPL drivers/media/platform/xilinx/xilinx-video 0x9fcb90f3 xvip_enum_mbus_code +EXPORT_SYMBOL_GPL drivers/media/platform/xilinx/xilinx-video 0xb67940fb xvip_get_format_by_fourcc +EXPORT_SYMBOL_GPL drivers/media/platform/xilinx/xilinx-video 0xbeea9fec xvip_enum_frame_size +EXPORT_SYMBOL_GPL drivers/media/platform/xilinx/xilinx-video 0xe08e6063 xvip_get_format_by_code +EXPORT_SYMBOL_GPL drivers/media/platform/xilinx/xilinx-video 0xee902218 xvip_of_get_format +EXPORT_SYMBOL_GPL drivers/media/platform/xilinx/xilinx-video 0xf6f2a01c xvip_cleanup_resources +EXPORT_SYMBOL_GPL drivers/media/platform/xilinx/xilinx-vtc 0x3c16a6b1 xvtc_generator_stop +EXPORT_SYMBOL_GPL drivers/media/platform/xilinx/xilinx-vtc 0x47d7900b xvtc_generator_start +EXPORT_SYMBOL_GPL drivers/media/platform/xilinx/xilinx-vtc 0xa8a0f912 xvtc_put +EXPORT_SYMBOL_GPL drivers/media/platform/xilinx/xilinx-vtc 0xdfeaad69 xvtc_of_get +EXPORT_SYMBOL_GPL drivers/media/radio/shark2 0x05904ccb radio_tea5777_exit +EXPORT_SYMBOL_GPL drivers/media/radio/shark2 0x6bedf4ed radio_tea5777_init +EXPORT_SYMBOL_GPL drivers/media/radio/si470x/radio-si470x-common 0x3318f7fe si470x_ctrl_ops +EXPORT_SYMBOL_GPL drivers/media/radio/si470x/radio-si470x-common 0x3a6bdc84 si470x_set_freq +EXPORT_SYMBOL_GPL drivers/media/radio/si470x/radio-si470x-common 0x3d7cf096 si470x_start +EXPORT_SYMBOL_GPL drivers/media/radio/si470x/radio-si470x-common 0x70a83875 si470x_viddev_template +EXPORT_SYMBOL_GPL drivers/media/radio/si470x/radio-si470x-common 0xb5957686 si470x_stop +EXPORT_SYMBOL_GPL drivers/media/rc/rc-core 0x087ba771 rc_map_get +EXPORT_SYMBOL_GPL drivers/media/rc/rc-core 0x09f6ad0d ir_raw_event_set_idle +EXPORT_SYMBOL_GPL drivers/media/rc/rc-core 0x1ac62c77 rc_map_unregister +EXPORT_SYMBOL_GPL drivers/media/rc/rc-core 0x1fa4124b ir_raw_event_store_edge +EXPORT_SYMBOL_GPL drivers/media/rc/rc-core 0x2b02ec19 rc_free_device +EXPORT_SYMBOL_GPL drivers/media/rc/rc-core 0x2b4f73e6 devm_rc_register_device +EXPORT_SYMBOL_GPL drivers/media/rc/rc-core 0x2f9045ba rc_allocate_device +EXPORT_SYMBOL_GPL drivers/media/rc/rc-core 0x2fcc44af ir_raw_event_handle +EXPORT_SYMBOL_GPL drivers/media/rc/rc-core 0x3026abde rc_unregister_device +EXPORT_SYMBOL_GPL drivers/media/rc/rc-core 0x3efd61ac ir_lirc_scancode_event +EXPORT_SYMBOL_GPL drivers/media/rc/rc-core 0x53d20cb8 rc_repeat +EXPORT_SYMBOL_GPL drivers/media/rc/rc-core 0x70603fd3 rc_keyup +EXPORT_SYMBOL_GPL drivers/media/rc/rc-core 0x7bc8ac67 rc_map_register +EXPORT_SYMBOL_GPL drivers/media/rc/rc-core 0x87d22a0e ir_raw_event_store_with_filter +EXPORT_SYMBOL_GPL drivers/media/rc/rc-core 0xa661e941 rc_keydown +EXPORT_SYMBOL_GPL drivers/media/rc/rc-core 0xb370bb81 ir_raw_event_store +EXPORT_SYMBOL_GPL drivers/media/rc/rc-core 0xc57a96de ir_raw_event_store_with_timeout +EXPORT_SYMBOL_GPL drivers/media/rc/rc-core 0xcd344b79 rc_register_device +EXPORT_SYMBOL_GPL drivers/media/rc/rc-core 0xd9b3d6ee devm_rc_allocate_device +EXPORT_SYMBOL_GPL drivers/media/rc/rc-core 0xf0281cc3 rc_g_keycode_from_table +EXPORT_SYMBOL_GPL drivers/media/rc/rc-core 0xf38e15da rc_keydown_notimeout +EXPORT_SYMBOL_GPL drivers/media/tuners/mt2063 0xef8d5504 mt2063_attach +EXPORT_SYMBOL_GPL drivers/media/tuners/mt20xx 0x6df43076 microtune_attach +EXPORT_SYMBOL_GPL drivers/media/tuners/mxl5007t 0xe76499b0 mxl5007t_attach +EXPORT_SYMBOL_GPL drivers/media/tuners/r820t 0xe7bece2f r820t_attach +EXPORT_SYMBOL_GPL drivers/media/tuners/tda18271 0x28ee3302 tda18271_attach +EXPORT_SYMBOL_GPL drivers/media/tuners/tda827x 0xfbaa463b tda827x_attach +EXPORT_SYMBOL_GPL drivers/media/tuners/tda8290 0x11446385 tda829x_probe +EXPORT_SYMBOL_GPL drivers/media/tuners/tda8290 0xc2883ea9 tda829x_attach +EXPORT_SYMBOL_GPL drivers/media/tuners/tda9887 0x12baa36c tda9887_attach +EXPORT_SYMBOL_GPL drivers/media/tuners/tea5761 0x36105f53 tea5761_autodetection +EXPORT_SYMBOL_GPL drivers/media/tuners/tea5761 0xa3b9d410 tea5761_attach +EXPORT_SYMBOL_GPL drivers/media/tuners/tea5767 0x5b2901a4 tea5767_autodetection +EXPORT_SYMBOL_GPL drivers/media/tuners/tea5767 0xaa7880d6 tea5767_attach +EXPORT_SYMBOL_GPL drivers/media/tuners/tuner-simple 0x1f886802 simple_tuner_attach +EXPORT_SYMBOL_GPL drivers/media/usb/cx231xx/cx231xx 0x017ea7c7 cx231xx_tuner_callback +EXPORT_SYMBOL_GPL drivers/media/usb/cx231xx/cx231xx 0x0a06e2c2 cx231xx_enable_i2c_port_3 +EXPORT_SYMBOL_GPL drivers/media/usb/cx231xx/cx231xx 0x1cef0604 cx231xx_send_usb_command +EXPORT_SYMBOL_GPL drivers/media/usb/cx231xx/cx231xx 0x207b8404 cx231xx_send_gpio_cmd +EXPORT_SYMBOL_GPL drivers/media/usb/cx231xx/cx231xx 0x20c81c5c cx231xx_dev_uninit +EXPORT_SYMBOL_GPL drivers/media/usb/cx231xx/cx231xx 0x38835ce0 cx231xx_uninit_bulk +EXPORT_SYMBOL_GPL drivers/media/usb/cx231xx/cx231xx 0x3e7c5ed9 cx231xx_uninit_isoc +EXPORT_SYMBOL_GPL drivers/media/usb/cx231xx/cx231xx 0x438769fd cx231xx_set_alt_setting +EXPORT_SYMBOL_GPL drivers/media/usb/cx231xx/cx231xx 0x46a77bf3 cx231xx_dev_init +EXPORT_SYMBOL_GPL drivers/media/usb/cx231xx/cx231xx 0x4dc3a9f5 cx231xx_init_isoc +EXPORT_SYMBOL_GPL drivers/media/usb/cx231xx/cx231xx 0x59ded1d6 cx231xx_enable656 +EXPORT_SYMBOL_GPL drivers/media/usb/cx231xx/cx231xx 0x5f82b5f7 cx231xx_unmute_audio +EXPORT_SYMBOL_GPL drivers/media/usb/cx231xx/cx231xx 0x661a940f cx231xx_demod_reset +EXPORT_SYMBOL_GPL drivers/media/usb/cx231xx/cx231xx 0x685222eb cx231xx_capture_start +EXPORT_SYMBOL_GPL drivers/media/usb/cx231xx/cx231xx 0x6bbbac9a cx231xx_init_vbi_isoc +EXPORT_SYMBOL_GPL drivers/media/usb/cx231xx/cx231xx 0x953bd98f is_fw_load +EXPORT_SYMBOL_GPL drivers/media/usb/cx231xx/cx231xx 0xa3919748 cx231xx_disable656 +EXPORT_SYMBOL_GPL drivers/media/usb/cx231xx/cx231xx 0xc55052ea cx231xx_uninit_vbi_isoc +EXPORT_SYMBOL_GPL drivers/media/usb/cx231xx/cx231xx 0xd1f90647 cx231xx_set_mode +EXPORT_SYMBOL_GPL drivers/media/usb/cx231xx/cx231xx 0xea7d2bc3 cx231xx_get_i2c_adap +EXPORT_SYMBOL_GPL drivers/media/usb/cx231xx/cx231xx 0xf61c31b7 cx231xx_init_bulk +EXPORT_SYMBOL_GPL drivers/media/usb/dvb-usb-v2/mxl111sf-demod 0xe8a3e86c mxl111sf_demod_attach +EXPORT_SYMBOL_GPL drivers/media/usb/dvb-usb-v2/mxl111sf-tuner 0x9a01c3af mxl111sf_tuner_attach +EXPORT_SYMBOL_GPL drivers/media/usb/em28xx/em28xx 0x13eaa84b em28xx_read_reg +EXPORT_SYMBOL_GPL drivers/media/usb/em28xx/em28xx 0x1e319e25 em28xx_gpio_set +EXPORT_SYMBOL_GPL drivers/media/usb/em28xx/em28xx 0x2d501aef em28xx_write_reg_bits +EXPORT_SYMBOL_GPL drivers/media/usb/em28xx/em28xx 0x2e66920b em28xx_init_camera +EXPORT_SYMBOL_GPL drivers/media/usb/em28xx/em28xx 0x3f319a3a em28xx_setup_xc3028 +EXPORT_SYMBOL_GPL drivers/media/usb/em28xx/em28xx 0x4c7788a9 em28xx_init_usb_xfer +EXPORT_SYMBOL_GPL drivers/media/usb/em28xx/em28xx 0x63d9c7a1 em28xx_read_ac97 +EXPORT_SYMBOL_GPL drivers/media/usb/em28xx/em28xx 0x664173d7 em28xx_write_ac97 +EXPORT_SYMBOL_GPL drivers/media/usb/em28xx/em28xx 0x6e50ea84 em28xx_set_mode +EXPORT_SYMBOL_GPL drivers/media/usb/em28xx/em28xx 0x721f7cc7 em28xx_free_device +EXPORT_SYMBOL_GPL drivers/media/usb/em28xx/em28xx 0x790d8c5c em28xx_toggle_reg_bits +EXPORT_SYMBOL_GPL drivers/media/usb/em28xx/em28xx 0x7fc8652c em28xx_tuner_callback +EXPORT_SYMBOL_GPL drivers/media/usb/em28xx/em28xx 0x8dace46d em28xx_write_reg +EXPORT_SYMBOL_GPL drivers/media/usb/em28xx/em28xx 0x8dfb0821 em28xx_audio_analog_set +EXPORT_SYMBOL_GPL drivers/media/usb/em28xx/em28xx 0x921d7c65 em28xx_boards +EXPORT_SYMBOL_GPL drivers/media/usb/em28xx/em28xx 0xa9f0745a em28xx_find_led +EXPORT_SYMBOL_GPL drivers/media/usb/em28xx/em28xx 0xbb3778b9 em28xx_write_regs +EXPORT_SYMBOL_GPL drivers/media/usb/em28xx/em28xx 0xd214ea33 em28xx_uninit_usb_xfer +EXPORT_SYMBOL_GPL drivers/media/usb/em28xx/em28xx 0xd4fe5891 em28xx_alloc_urbs +EXPORT_SYMBOL_GPL drivers/media/usb/em28xx/em28xx 0xf162adf0 em28xx_audio_setup +EXPORT_SYMBOL_GPL drivers/media/usb/em28xx/em28xx 0xf3a754d5 em28xx_stop_urbs +EXPORT_SYMBOL_GPL drivers/media/usb/tm6000/tm6000 0x2309a6d6 tm6000_xc5000_callback +EXPORT_SYMBOL_GPL drivers/media/usb/tm6000/tm6000 0x717b731e tm6000_set_reg_mask +EXPORT_SYMBOL_GPL drivers/media/usb/tm6000/tm6000 0x89b611dd tm6000_debug +EXPORT_SYMBOL_GPL drivers/media/usb/tm6000/tm6000 0x8be70607 tm6000_set_reg +EXPORT_SYMBOL_GPL drivers/media/usb/tm6000/tm6000 0xb984c699 tm6000_get_reg +EXPORT_SYMBOL_GPL drivers/media/usb/tm6000/tm6000 0xc0cdaa22 tm6000_set_audio_bitrate +EXPORT_SYMBOL_GPL drivers/media/usb/tm6000/tm6000 0xdff8e89d tm6000_tuner_callback +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 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 0xef15cc44 v4l2_hdmi_rx_colorimetry +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 0x3d44c3d9 v4l2_flash_release +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-flash-led-class 0x6c7416be v4l2_flash_indicator_init +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-flash-led-class 0xf336288d v4l2_flash_init +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-fwnode 0x03e89500 v4l2_fwnode_parse_link +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-fwnode 0x0863e4d0 v4l2_async_notifier_parse_fwnode_sensor_common +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-fwnode 0x22ba291a v4l2_fwnode_connector_add_link +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-fwnode 0x4223ee4e v4l2_fwnode_connector_parse +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-fwnode 0x42d76c43 v4l2_async_notifier_parse_fwnode_endpoints +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-fwnode 0x52cae6c4 v4l2_fwnode_endpoint_parse +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-fwnode 0x56b8ce8a v4l2_fwnode_put_link +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-fwnode 0x612ddce5 v4l2_fwnode_connector_free +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-fwnode 0xc0695114 v4l2_fwnode_endpoint_free +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-fwnode 0xd48f3f79 v4l2_fwnode_device_parse +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-fwnode 0xdfaa447e v4l2_async_register_subdev_sensor_common +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-fwnode 0xe59eddd1 v4l2_fwnode_endpoint_alloc_parse +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-fwnode 0xefbe16e2 v4l2_async_notifier_parse_fwnode_endpoints_by_port +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-h264 0x8468300b v4l2_h264_init_reflist_builder +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-h264 0xa003c02f v4l2_h264_build_b_ref_lists +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-h264 0xae38bf6d v4l2_h264_build_p_ref_list +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-jpeg 0x30b5ebc6 v4l2_jpeg_parse_scan_header +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-jpeg 0xcbfdf5cb v4l2_jpeg_parse_frame_header +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-jpeg 0xe8956e3f v4l2_jpeg_parse_huffman_tables +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-jpeg 0xf8ffd565 v4l2_jpeg_parse_quantization_tables +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-jpeg 0xfe634d65 v4l2_jpeg_parse_header +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0x0d4ff3b9 v4l2_m2m_next_buf +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0x15566804 v4l2_m2m_ioctl_create_bufs +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0x22fa7ff3 v4l2_m2m_update_start_streaming_state +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0x271c77d5 v4l2_m2m_buf_remove_by_idx +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0x2e865c20 v4l2_m2m_ctx_init +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0x2f54f975 v4l2_m2m_streamoff +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0x31aba9e3 v4l2_m2m_ioctl_reqbufs +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0x322cd951 v4l2_m2m_expbuf +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0x326ca534 v4l2_m2m_querybuf +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0x34df3ca7 v4l2_m2m_ioctl_querybuf +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0x35b3b472 v4l2_m2m_ioctl_stateless_decoder_cmd +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0x3866ae54 v4l2_m2m_ioctl_try_decoder_cmd +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0x3dfe2ead v4l2_m2m_update_stop_streaming_state +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0x57ad6b4b v4l2_m2m_try_schedule +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0x5f53d9fe v4l2_m2m_buf_remove +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0x604900c5 v4l2_m2m_ioctl_prepare_buf +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0x609e3ecb v4l2_m2m_buf_remove_by_buf +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0x63dbc0ad v4l2_m2m_ioctl_qbuf +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0x6b26c23a v4l2_m2m_buf_copy_metadata +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0x6b31328d v4l2_m2m_last_buffer_done +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0x730f2eae v4l2_m2m_init +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0x7603aa5a v4l2_m2m_fop_poll +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0x79f64f2f v4l2_m2m_create_bufs +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0x7b64f8d0 v4l2_m2m_ioctl_streamoff +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0x825214b0 v4l2_m2m_streamon +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0x8596c0fe v4l2_m2m_ioctl_expbuf +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0x85d76ab5 v4l2_m2m_decoder_cmd +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0x8980586f v4l2_m2m_fop_mmap +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0x9077c6f3 v4l2_m2m_encoder_cmd +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0xa178bafa v4l2_m2m_last_buf +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0xa32e5a44 v4l2_m2m_reqbufs +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0xa75aa6a4 v4l2_m2m_register_media_controller +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0xa7840b5b v4l2_m2m_request_queue +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0xa82c7328 v4l2_m2m_ioctl_stateless_try_decoder_cmd +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0xa991a381 v4l2_m2m_dqbuf +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0xb63c4ebc v4l2_m2m_qbuf +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0xba523063 v4l2_m2m_ioctl_dqbuf +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0xc18dccf3 v4l2_m2m_ioctl_try_encoder_cmd +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0xc6fca5ad v4l2_m2m_release +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0xdb3e9cc7 v4l2_m2m_ioctl_streamon +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0xe0e8aedc v4l2_m2m_buf_queue +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0xe376a439 v4l2_m2m_ioctl_encoder_cmd +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0xe3fa8c0e v4l2_m2m_prepare_buf +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0xf0532326 v4l2_m2m_ctx_release +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0xf13ff84d v4l2_m2m_unregister_media_controller +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0xf1821fff v4l2_m2m_ioctl_decoder_cmd +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0xf2670a3c v4l2_m2m_poll +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0x1779f396 videobuf_alloc_vb +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0x1fc5fd0d videobuf_poll_stream +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0x284018c4 videobuf_queue_is_busy +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0x419594ee videobuf_next_field +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0x4db400e4 videobuf_mmap_setup +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0x4e7dac6a videobuf_read_start +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0x5980a244 videobuf_qbuf +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0x7092744a videobuf_streamon +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0x76be2903 videobuf_stop +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0x80f02607 videobuf_mmap_mapper +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0x8bc1b361 videobuf_read_stream +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0x9e589e04 videobuf_dqbuf +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0xa0a70a98 videobuf_queue_to_vaddr +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0xa24bc254 __videobuf_mmap_setup +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0xb82245e3 videobuf_mmap_free +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0xc0aac29f videobuf_read_stop +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0xca86ab91 videobuf_streamoff +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0xca9b6da4 videobuf_querybuf +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0xcb4f1a61 videobuf_reqbufs +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0xdce77892 videobuf_waiton +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0xe040b44e videobuf_queue_core_init +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0xe81ec1da videobuf_iolock +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0xeaa43957 videobuf_queue_cancel +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0xee469b98 videobuf_read_one +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-dma-sg 0x0b762831 videobuf_queue_sg_init +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-dma-sg 0x517de8d7 videobuf_dma_unmap +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-dma-sg 0x553a86d0 videobuf_sg_alloc +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-dma-sg 0xafdcc72d videobuf_dma_free +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-dma-sg 0xd1aa48e1 videobuf_to_dma +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-vmalloc 0x437a66ef videobuf_vmalloc_free +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-vmalloc 0x49c69ed4 videobuf_queue_vmalloc_init +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-vmalloc 0xc790df8e videobuf_to_vmalloc +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x06a34cc8 v4l2_fh_open +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x1054b68d v4l2_async_notifier_add_i2c_subdev +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x191b3934 v4l2_mc_create_media_graph +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x1a471a95 v4l2_subdev_link_validate +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x1b9aa718 v4l2_event_queue_fh +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x1db804a7 v4l2_async_notifier_cleanup +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x21e16084 v4l2_fh_add +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x2458fcab v4l2_create_fwnode_links +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x25cdd91e v4l_disable_media_source +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x26cf4cdf v4l2_async_notifier_add_devname_subdev +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x28f05c8b __v4l2_ctrl_handler_setup +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x2a53ca39 __tracepoint_vb2_v4l2_qbuf +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x2da28baf v4l2_fh_init +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x2e3bda14 v4l_enable_media_source +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x31c12e6d v4l2_subdev_notify_event +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x32431a1e __tracepoint_vb2_v4l2_buf_queue +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x378ec9e1 v4l2_event_subscribe +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x3a87109f v4l2_g_parm_cap +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x3b459211 v4l2_device_unregister +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x43996a8c __tracepoint_vb2_v4l2_buf_done +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x4a8e5450 v4l2_subdev_link_validate_default +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x50d65b11 v4l2_subdev_free_pad_config +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x5a84fb95 v4l2_event_dequeue +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x5baba051 v4l2_src_change_event_subscribe +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x5d183a5b v4l2_fh_exit +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x5def2ac6 v4l2_i2c_subdev_set_name +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x651de665 v4l_vb2q_enable_media_source +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x68be12ab v4l2_event_subdev_unsubscribe +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x6e9acc41 v4l2_fill_pixfmt_mp +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x78830ba9 v4l2_async_notifier_add_fwnode_subdev +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x7a401c23 v4l2_subdev_get_fwnode_pad_1_to_1 +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x7c1033fe v4l2_ctrl_request_hdl_find +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x7c3c8268 v4l2_spi_new_subdev +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x816a6086 v4l2_device_unregister_subdev +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x85cc8fef v4l2_pipeline_link_notify +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x8af6e5ae v4l2_device_disconnect +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x996ced98 v4l2_device_put +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x9ddbc322 v4l2_i2c_new_subdev_board +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x9fbe3c08 v4l2_fh_del +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x9fef35ac v4l2_apply_frmsize_constraints +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0xa2b4d8e5 v4l2_pipeline_pm_get +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0xa2c545cf v4l2_event_pending +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0xa5a83132 v4l2_i2c_subdev_addr +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0xa9017274 v4l2_event_queue +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0xafc005ea v4l2_s_parm_cap +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0xb795f071 __tracepoint_vb2_v4l2_dqbuf +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0xb874887b __v4l2_device_register_subdev_nodes +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0xbd115c1f v4l2_compat_ioctl32 +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0xc02ff80b v4l2_event_unsubscribe_all +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0xcbe6a717 v4l2_spi_subdev_init +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0xcc501597 v4l2_fill_pixfmt +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0xcd693413 v4l2_subdev_alloc_pad_config +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0xd5f18b4d v4l2_device_register +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0xdb84dfc4 v4l2_pipeline_pm_put +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0xe05c38b9 v4l2_fh_is_singular +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0xe208bf6d v4l2_device_register_subdev +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0xe2822320 __v4l2_find_nearest_size +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0xe3e77695 v4l2_fh_release +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0xead769ef v4l2_event_unsubscribe +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0xedb5c606 v4l2_i2c_new_subdev +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0xef1d3f79 v4l2_async_notifier_add_subdev +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0xefeec7c0 v4l2_src_change_event_subdev_subscribe +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0xf2a353ac v4l2_i2c_tuner_addrs +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0xf5ef842e v4l_bound_align_image +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0xf729b064 v4l2_ctrl_request_hdl_ctrl_find +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0xf912f40f v4l2_create_fwnode_links_to_pad +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0xfc2be3e4 v4l2_async_notifier_add_fwnode_remote_subdev +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0xfd34fd1c v4l2_i2c_subdev_init +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0xff958b5e v4l2_device_set_name +EXPORT_SYMBOL_GPL drivers/mfd/88pm80x 0x60bcfb39 pm80x_regmap_config +EXPORT_SYMBOL_GPL drivers/mfd/88pm80x 0x7c837bc2 pm80x_init +EXPORT_SYMBOL_GPL drivers/mfd/88pm80x 0xd99fd720 pm80x_deinit +EXPORT_SYMBOL_GPL drivers/mfd/88pm80x 0xdf70fbcc pm80x_pm_ops +EXPORT_SYMBOL_GPL drivers/mfd/da9150-core 0x22416fdd da9150_reg_read +EXPORT_SYMBOL_GPL drivers/mfd/da9150-core 0x3659e410 da9150_write_qif +EXPORT_SYMBOL_GPL drivers/mfd/da9150-core 0x620822d3 da9150_bulk_write +EXPORT_SYMBOL_GPL drivers/mfd/da9150-core 0x8e5b624d da9150_set_bits +EXPORT_SYMBOL_GPL drivers/mfd/da9150-core 0xa32ace3b da9150_reg_write +EXPORT_SYMBOL_GPL drivers/mfd/da9150-core 0xd98292ec da9150_read_qif +EXPORT_SYMBOL_GPL drivers/mfd/da9150-core 0xfa7ed0f5 da9150_bulk_read +EXPORT_SYMBOL_GPL drivers/mfd/gateworks-gsc 0xa142a524 gsc_read +EXPORT_SYMBOL_GPL drivers/mfd/gateworks-gsc 0xb7abd1c4 gsc_write +EXPORT_SYMBOL_GPL drivers/mfd/iqs62x 0x22a28670 iqs62x_events +EXPORT_SYMBOL_GPL drivers/mfd/kempld-core 0x0cfc3913 kempld_release_mutex +EXPORT_SYMBOL_GPL drivers/mfd/kempld-core 0x2e7b1da0 kempld_read8 +EXPORT_SYMBOL_GPL drivers/mfd/kempld-core 0x33b63ef1 kempld_write16 +EXPORT_SYMBOL_GPL drivers/mfd/kempld-core 0x538eba7c kempld_read16 +EXPORT_SYMBOL_GPL drivers/mfd/kempld-core 0x74ba238f kempld_read32 +EXPORT_SYMBOL_GPL drivers/mfd/kempld-core 0x7c90e5c4 kempld_write8 +EXPORT_SYMBOL_GPL drivers/mfd/kempld-core 0xf3224fe7 kempld_write32 +EXPORT_SYMBOL_GPL drivers/mfd/kempld-core 0xfee903cb kempld_get_mutex +EXPORT_SYMBOL_GPL drivers/mfd/lm3533-core 0x57eb1253 lm3533_update +EXPORT_SYMBOL_GPL drivers/mfd/lm3533-core 0x8e1e0239 lm3533_read +EXPORT_SYMBOL_GPL drivers/mfd/lm3533-core 0x9116574c lm3533_write +EXPORT_SYMBOL_GPL drivers/mfd/lm3533-ctrlbank 0x0a1270a7 lm3533_ctrlbank_get_pwm +EXPORT_SYMBOL_GPL drivers/mfd/lm3533-ctrlbank 0x0d08f2d7 lm3533_ctrlbank_set_brightness +EXPORT_SYMBOL_GPL drivers/mfd/lm3533-ctrlbank 0x5bae88c9 lm3533_ctrlbank_get_brightness +EXPORT_SYMBOL_GPL drivers/mfd/lm3533-ctrlbank 0x621064a4 lm3533_ctrlbank_set_max_current +EXPORT_SYMBOL_GPL drivers/mfd/lm3533-ctrlbank 0x6fa5dac8 lm3533_ctrlbank_disable +EXPORT_SYMBOL_GPL drivers/mfd/lm3533-ctrlbank 0x837e71fd lm3533_ctrlbank_set_pwm +EXPORT_SYMBOL_GPL drivers/mfd/lm3533-ctrlbank 0xbd74458a lm3533_ctrlbank_enable +EXPORT_SYMBOL_GPL drivers/mfd/lp3943 0x04507a41 lp3943_write_byte +EXPORT_SYMBOL_GPL drivers/mfd/lp3943 0x9d2e8b92 lp3943_update_bits +EXPORT_SYMBOL_GPL drivers/mfd/lp3943 0xaef8969d lp3943_read_byte +EXPORT_SYMBOL_GPL drivers/mfd/madera 0x0314f254 cs47l15_16bit_i2c_regmap +EXPORT_SYMBOL_GPL drivers/mfd/madera 0x03192e14 cs47l15_32bit_i2c_regmap +EXPORT_SYMBOL_GPL drivers/mfd/madera 0x0e367227 cs47l15_patch +EXPORT_SYMBOL_GPL drivers/mfd/madera 0x0f379262 madera_of_match +EXPORT_SYMBOL_GPL drivers/mfd/madera 0x2a30724b cs47l85_patch +EXPORT_SYMBOL_GPL drivers/mfd/madera 0x2cda015b cs47l90_patch +EXPORT_SYMBOL_GPL drivers/mfd/madera 0x4021ef58 cs47l15_32bit_spi_regmap +EXPORT_SYMBOL_GPL drivers/mfd/madera 0x402c3318 cs47l15_16bit_spi_regmap +EXPORT_SYMBOL_GPL drivers/mfd/madera 0x4327a824 cs47l35_patch +EXPORT_SYMBOL_GPL drivers/mfd/madera 0x8ae24594 cs47l35_16bit_spi_regmap +EXPORT_SYMBOL_GPL drivers/mfd/madera 0x8aef99d4 cs47l35_32bit_spi_regmap +EXPORT_SYMBOL_GPL drivers/mfd/madera 0x8f615a3b cs47l92_patch +EXPORT_SYMBOL_GPL drivers/mfd/madera 0x979d8d4f madera_dev_exit +EXPORT_SYMBOL_GPL drivers/mfd/madera 0x97c4b2a1 cs47l92_32bit_spi_regmap +EXPORT_SYMBOL_GPL drivers/mfd/madera 0x97c96ee1 cs47l92_16bit_spi_regmap +EXPORT_SYMBOL_GPL drivers/mfd/madera 0xa045a95c cs47l90_16bit_i2c_regmap +EXPORT_SYMBOL_GPL drivers/mfd/madera 0xa048751c cs47l90_32bit_i2c_regmap +EXPORT_SYMBOL_GPL drivers/mfd/madera 0xb890deec cs47l85_16bit_spi_regmap +EXPORT_SYMBOL_GPL drivers/mfd/madera 0xb89d02ac cs47l85_32bit_spi_regmap +EXPORT_SYMBOL_GPL drivers/mfd/madera 0xc9d75898 cs47l35_32bit_i2c_regmap +EXPORT_SYMBOL_GPL drivers/mfd/madera 0xc9da84d8 cs47l35_16bit_i2c_regmap +EXPORT_SYMBOL_GPL drivers/mfd/madera 0xd4f1afad cs47l92_16bit_i2c_regmap +EXPORT_SYMBOL_GPL drivers/mfd/madera 0xd4fc73ed cs47l92_32bit_i2c_regmap +EXPORT_SYMBOL_GPL drivers/mfd/madera 0xe370b450 cs47l90_32bit_spi_regmap +EXPORT_SYMBOL_GPL drivers/mfd/madera 0xe37d6810 cs47l90_16bit_spi_regmap +EXPORT_SYMBOL_GPL drivers/mfd/madera 0xebe384cb madera_name_from_type +EXPORT_SYMBOL_GPL drivers/mfd/madera 0xf63eef0d madera_dev_init +EXPORT_SYMBOL_GPL drivers/mfd/madera 0xf8d63b51 madera_pm_ops +EXPORT_SYMBOL_GPL drivers/mfd/madera 0xfba5c3e0 cs47l85_32bit_i2c_regmap +EXPORT_SYMBOL_GPL drivers/mfd/madera 0xfba81fa0 cs47l85_16bit_i2c_regmap +EXPORT_SYMBOL_GPL drivers/mfd/mc13xxx-core 0x20f2dcdb mc13xxx_adc_do_conversion +EXPORT_SYMBOL_GPL drivers/mfd/mc13xxx-core 0x4d8be526 mc13xxx_common_init +EXPORT_SYMBOL_GPL drivers/mfd/mc13xxx-core 0xa615ffba mc13xxx_variant_mc34708 +EXPORT_SYMBOL_GPL drivers/mfd/mc13xxx-core 0xb41a0ad2 mc13xxx_variant_mc13783 +EXPORT_SYMBOL_GPL drivers/mfd/mc13xxx-core 0xb89d64dd mc13xxx_common_exit +EXPORT_SYMBOL_GPL drivers/mfd/mc13xxx-core 0xf4a041f2 mc13xxx_variant_mc13892 +EXPORT_SYMBOL_GPL drivers/mfd/motorola-cpcap 0xa226dbe8 cpcap_sense_virq +EXPORT_SYMBOL_GPL drivers/mfd/pcf50633 0x09c194e1 pcf50633_register_irq +EXPORT_SYMBOL_GPL drivers/mfd/pcf50633 0x1341b036 pcf50633_irq_mask +EXPORT_SYMBOL_GPL drivers/mfd/pcf50633 0x1454834e pcf50633_reg_set_bit_mask +EXPORT_SYMBOL_GPL drivers/mfd/pcf50633 0x25c35840 pcf50633_free_irq +EXPORT_SYMBOL_GPL drivers/mfd/pcf50633 0x33539d60 pcf50633_irq_unmask +EXPORT_SYMBOL_GPL drivers/mfd/pcf50633 0x3574cdd1 pcf50633_write_block +EXPORT_SYMBOL_GPL drivers/mfd/pcf50633 0x4feb7bb0 pcf50633_reg_read +EXPORT_SYMBOL_GPL drivers/mfd/pcf50633 0x6f2e3ee9 pcf50633_irq_mask_get +EXPORT_SYMBOL_GPL drivers/mfd/pcf50633 0x9f9689d3 pcf50633_reg_clear_bits +EXPORT_SYMBOL_GPL drivers/mfd/pcf50633 0xb201169f pcf50633_reg_write +EXPORT_SYMBOL_GPL drivers/mfd/pcf50633 0xf767b026 pcf50633_read_block +EXPORT_SYMBOL_GPL drivers/mfd/pcf50633-adc 0x6eeb8c42 pcf50633_adc_sync_read +EXPORT_SYMBOL_GPL drivers/mfd/pcf50633-adc 0x90b86bad pcf50633_adc_async_read +EXPORT_SYMBOL_GPL drivers/mfd/pcf50633-gpio 0x464d9e5e pcf50633_gpio_set +EXPORT_SYMBOL_GPL drivers/mfd/pcf50633-gpio 0x74414f5b pcf50633_gpio_power_supply_set +EXPORT_SYMBOL_GPL drivers/mfd/pcf50633-gpio 0x8cdaeebb pcf50633_gpio_invert_set +EXPORT_SYMBOL_GPL drivers/mfd/pcf50633-gpio 0xd6e58f64 pcf50633_gpio_get +EXPORT_SYMBOL_GPL drivers/mfd/pcf50633-gpio 0xf4f75d7f pcf50633_gpio_invert_get +EXPORT_SYMBOL_GPL drivers/mfd/rave-sp 0x43e53ef9 rave_sp_exec +EXPORT_SYMBOL_GPL drivers/mfd/rave-sp 0xb7ec0837 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 0x149b9b99 si476x_core_set_power_state +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0x1854f253 si476x_core_cmd_agc_status +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0x18a029bf si476x_core_cmd_fm_seek_start +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0x25ee035f si476x_core_is_powered_up +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0x2a1e77be si476x_core_cmd_fm_rds_status +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0x2c3fbfe3 si476x_core_i2c_xfer +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0x2de5a58f si476x_core_start +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0x378a68e0 si476x_core_cmd_intb_pin_cfg +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0x380a1b81 si476x_core_cmd_fm_rds_blockcount +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0x54ac126a si476x_core_cmd_zif_pin_cfg +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0x556555f3 si476x_core_has_am +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0x5a821054 si476x_core_cmd_dig_audio_pin_cfg +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0x5d22fc5b si476x_core_cmd_am_tune_freq +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0x5e08b3d7 si476x_core_cmd_fm_tune_freq +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0x5eb27b40 si476x_core_cmd_fm_acf_status +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0x60c6308b si476x_core_cmd_func_info +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0x7cb70cfa si476x_core_cmd_fm_rsq_status +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0x7d3f1e85 devm_regmap_init_si476x +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0x7d9f5725 si476x_core_cmd_get_property +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0x8710e59f si476x_core_cmd_set_property +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0x8cac5425 si476x_core_cmd_power_down +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0x95f58763 si476x_core_has_diversity +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0x9a2ea065 si476x_core_cmd_am_rsq_status +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0xa5dae29f si476x_core_is_in_am_receiver_mode +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0xa671e581 si476x_core_cmd_am_acf_status +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0xb5730382 si476x_core_cmd_ic_link_gpo_ctl_pin_cfg +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0xbcec09f3 si476x_core_cmd_ana_audio_pin_cfg +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0xbe17bfc8 si476x_core_cmd_power_up +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0xcc34a63e si476x_core_cmd_fm_phase_diversity +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0xda9ff491 si476x_core_cmd_fm_phase_div_status +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0xe4a6fa17 si476x_core_stop +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0xed52ca74 si476x_core_is_a_primary_tuner +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0xef982860 si476x_core_cmd_am_seek_start +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0xf36fa65d si476x_core_is_a_secondary_tuner +EXPORT_SYMBOL_GPL drivers/mfd/sm501 0x2d40653e sm501_unit_power +EXPORT_SYMBOL_GPL drivers/mfd/sm501 0x66419e1b sm501_set_clock +EXPORT_SYMBOL_GPL drivers/mfd/sm501 0xd5a0a9fb sm501_find_clock +EXPORT_SYMBOL_GPL drivers/mfd/sm501 0xf87d1358 sm501_modify_reg +EXPORT_SYMBOL_GPL drivers/mfd/sm501 0xf96bdfba sm501_misc_control +EXPORT_SYMBOL_GPL drivers/mfd/sprd-sc27xx-spi 0x07aa7791 sprd_pmic_detect_charger_type +EXPORT_SYMBOL_GPL drivers/mfd/stmfx 0x94a8d2c2 stmfx_function_enable +EXPORT_SYMBOL_GPL drivers/mfd/stmfx 0xc4276413 stmfx_function_disable +EXPORT_SYMBOL_GPL drivers/mfd/ti_am335x_tscadc 0x27dab7c6 am335x_tsc_se_set_once +EXPORT_SYMBOL_GPL drivers/mfd/ti_am335x_tscadc 0x711f43c6 am335x_tsc_se_adc_done +EXPORT_SYMBOL_GPL drivers/mfd/ti_am335x_tscadc 0xae22e167 am335x_tsc_se_set_cache +EXPORT_SYMBOL_GPL drivers/mfd/ti_am335x_tscadc 0xeccff589 am335x_tsc_se_clr +EXPORT_SYMBOL_GPL drivers/mfd/tps65217 0x20e4f645 tps65217_set_bits +EXPORT_SYMBOL_GPL drivers/mfd/tps65217 0x5bad45fc tps65217_reg_write +EXPORT_SYMBOL_GPL drivers/mfd/tps65217 0xede37caa tps65217_clear_bits +EXPORT_SYMBOL_GPL drivers/mfd/tps65217 0xf292ed22 tps65217_reg_read +EXPORT_SYMBOL_GPL drivers/mfd/tps65218 0xb33e2dab tps65218_clear_bits +EXPORT_SYMBOL_GPL drivers/mfd/tps65218 0xba0021de tps65218_reg_write +EXPORT_SYMBOL_GPL drivers/mfd/tps65218 0xe970520c tps65218_set_bits +EXPORT_SYMBOL_GPL drivers/mfd/ucb1400_core 0x937962a5 ucb1400_adc_read +EXPORT_SYMBOL_GPL drivers/misc/cardreader/alcor_pci 0x2245584d alcor_write16 +EXPORT_SYMBOL_GPL drivers/misc/cardreader/alcor_pci 0x4a3c41ae alcor_write8 +EXPORT_SYMBOL_GPL drivers/misc/cardreader/alcor_pci 0x4e78dd21 alcor_read32be +EXPORT_SYMBOL_GPL drivers/misc/cardreader/alcor_pci 0xa3892f8e alcor_write32be +EXPORT_SYMBOL_GPL drivers/misc/cardreader/alcor_pci 0xb4363865 alcor_write32 +EXPORT_SYMBOL_GPL drivers/misc/cardreader/alcor_pci 0xc6af9740 alcor_read8 +EXPORT_SYMBOL_GPL drivers/misc/cardreader/alcor_pci 0xde8f223f alcor_read32 +EXPORT_SYMBOL_GPL drivers/misc/cardreader/rtsx_pci 0x0abd7168 rtsx_pci_card_power_on +EXPORT_SYMBOL_GPL drivers/misc/cardreader/rtsx_pci 0x198a104a rtsx_pci_send_cmd_no_wait +EXPORT_SYMBOL_GPL drivers/misc/cardreader/rtsx_pci 0x1cc606d6 rtsx_pci_read_register +EXPORT_SYMBOL_GPL drivers/misc/cardreader/rtsx_pci 0x20d06c3e rtsx_pci_card_exist +EXPORT_SYMBOL_GPL drivers/misc/cardreader/rtsx_pci 0x44a6e15e rtsx_pci_dma_transfer +EXPORT_SYMBOL_GPL drivers/misc/cardreader/rtsx_pci 0x4df0dfcf rtsx_pci_add_cmd +EXPORT_SYMBOL_GPL drivers/misc/cardreader/rtsx_pci 0x863c0180 rtsx_pci_card_exclusive_check +EXPORT_SYMBOL_GPL drivers/misc/cardreader/rtsx_pci 0x8d880744 rtsx_pci_card_pull_ctl_disable +EXPORT_SYMBOL_GPL drivers/misc/cardreader/rtsx_pci 0x99c5ff72 rtsx_pci_write_phy_register +EXPORT_SYMBOL_GPL drivers/misc/cardreader/rtsx_pci 0x9c5a9c9f rtsx_pci_transfer_data +EXPORT_SYMBOL_GPL drivers/misc/cardreader/rtsx_pci 0x9cbcd599 rtsx_pci_card_pull_ctl_enable +EXPORT_SYMBOL_GPL drivers/misc/cardreader/rtsx_pci 0xb251edf3 rtsx_pci_dma_map_sg +EXPORT_SYMBOL_GPL drivers/misc/cardreader/rtsx_pci 0xb53269a0 rtsx_pci_read_ppbuf +EXPORT_SYMBOL_GPL drivers/misc/cardreader/rtsx_pci 0xb9cfb2e0 rtsx_pci_card_power_off +EXPORT_SYMBOL_GPL drivers/misc/cardreader/rtsx_pci 0xbf6e0fe4 rtsx_pci_dma_unmap_sg +EXPORT_SYMBOL_GPL drivers/misc/cardreader/rtsx_pci 0xc9a790b2 rtsx_pci_switch_output_voltage +EXPORT_SYMBOL_GPL drivers/misc/cardreader/rtsx_pci 0xca5a0563 rtsx_pci_read_phy_register +EXPORT_SYMBOL_GPL drivers/misc/cardreader/rtsx_pci 0xcc99022f rtsx_pci_send_cmd +EXPORT_SYMBOL_GPL drivers/misc/cardreader/rtsx_pci 0xce408c97 rtsx_pci_complete_unfinished_transfer +EXPORT_SYMBOL_GPL drivers/misc/cardreader/rtsx_pci 0xd64f24ef rtsx_pci_switch_clock +EXPORT_SYMBOL_GPL drivers/misc/cardreader/rtsx_pci 0xdd2a446c rtsx_pci_write_register +EXPORT_SYMBOL_GPL drivers/misc/cardreader/rtsx_pci 0xe1575a23 rtsx_pci_stop_cmd +EXPORT_SYMBOL_GPL drivers/misc/cardreader/rtsx_pci 0xe7b97deb rtsx_pci_start_run +EXPORT_SYMBOL_GPL drivers/misc/cardreader/rtsx_pci 0xf7321327 rtsx_pci_write_ppbuf +EXPORT_SYMBOL_GPL drivers/misc/cardreader/rtsx_usb 0x194150d8 rtsx_usb_add_cmd +EXPORT_SYMBOL_GPL drivers/misc/cardreader/rtsx_usb 0x27f8b12d rtsx_usb_get_rsp +EXPORT_SYMBOL_GPL drivers/misc/cardreader/rtsx_usb 0x57eec2ba rtsx_usb_read_ppbuf +EXPORT_SYMBOL_GPL drivers/misc/cardreader/rtsx_usb 0x64ce351f rtsx_usb_read_register +EXPORT_SYMBOL_GPL drivers/misc/cardreader/rtsx_usb 0x7028ff1c rtsx_usb_card_exclusive_check +EXPORT_SYMBOL_GPL drivers/misc/cardreader/rtsx_usb 0x744a6403 rtsx_usb_ep0_write_register +EXPORT_SYMBOL_GPL drivers/misc/cardreader/rtsx_usb 0x8439df1d rtsx_usb_write_register +EXPORT_SYMBOL_GPL drivers/misc/cardreader/rtsx_usb 0x92f55fd4 rtsx_usb_transfer_data +EXPORT_SYMBOL_GPL drivers/misc/cardreader/rtsx_usb 0x9daef0c1 rtsx_usb_ep0_read_register +EXPORT_SYMBOL_GPL drivers/misc/cardreader/rtsx_usb 0xa9e32cf1 rtsx_usb_get_card_status +EXPORT_SYMBOL_GPL drivers/misc/cardreader/rtsx_usb 0xd8c71ea9 rtsx_usb_write_ppbuf +EXPORT_SYMBOL_GPL drivers/misc/cardreader/rtsx_usb 0xf5c9ab3f rtsx_usb_switch_clock +EXPORT_SYMBOL_GPL drivers/misc/cardreader/rtsx_usb 0xfb51f524 rtsx_usb_send_cmd +EXPORT_SYMBOL_GPL drivers/misc/cb710/cb710 0x4452fa5b cb710_set_irq_handler +EXPORT_SYMBOL_GPL drivers/misc/cb710/cb710 0xa8a453f9 cb710_sg_dwiter_read_next_block +EXPORT_SYMBOL_GPL drivers/misc/cb710/cb710 0xcd22763b cb710_pci_update_config_reg +EXPORT_SYMBOL_GPL drivers/misc/cb710/cb710 0xe23164fe cb710_sg_dwiter_write_next_block +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 0x0cfd2754 enclosure_register +EXPORT_SYMBOL_GPL drivers/misc/enclosure 0x1048e320 enclosure_component_alloc +EXPORT_SYMBOL_GPL drivers/misc/enclosure 0x21fc947e enclosure_add_device +EXPORT_SYMBOL_GPL drivers/misc/enclosure 0x221a66d2 enclosure_find +EXPORT_SYMBOL_GPL drivers/misc/enclosure 0x43e47be0 enclosure_unregister +EXPORT_SYMBOL_GPL drivers/misc/enclosure 0x53208fee enclosure_for_each_device +EXPORT_SYMBOL_GPL drivers/misc/enclosure 0x60629933 enclosure_component_register +EXPORT_SYMBOL_GPL drivers/misc/enclosure 0xd281083d enclosure_remove_device +EXPORT_SYMBOL_GPL drivers/misc/lis3lv02d/lis3lv02d 0x06515370 lis3lv02d_poweron +EXPORT_SYMBOL_GPL drivers/misc/lis3lv02d/lis3lv02d 0x35d44a39 lis3lv02d_joystick_enable +EXPORT_SYMBOL_GPL drivers/misc/lis3lv02d/lis3lv02d 0x50ca0e47 lis3lv02d_poweroff +EXPORT_SYMBOL_GPL drivers/misc/lis3lv02d/lis3lv02d 0x5accd338 lis3lv02d_remove_fs +EXPORT_SYMBOL_GPL drivers/misc/lis3lv02d/lis3lv02d 0x6d53284b lis3lv02d_init_device +EXPORT_SYMBOL_GPL drivers/misc/lis3lv02d/lis3lv02d 0x8c8860a8 lis3lv02d_init_dt +EXPORT_SYMBOL_GPL drivers/misc/lis3lv02d/lis3lv02d 0xced5f5c6 lis3lv02d_joystick_disable +EXPORT_SYMBOL_GPL drivers/misc/lis3lv02d/lis3lv02d 0xf8deecc2 lis3_dev +EXPORT_SYMBOL_GPL drivers/misc/ti-st/st_drv 0x0b52993f st_unregister +EXPORT_SYMBOL_GPL drivers/misc/ti-st/st_drv 0x518a2137 st_register +EXPORT_SYMBOL_GPL drivers/misc/uacce/uacce 0x3733ca47 uacce_alloc +EXPORT_SYMBOL_GPL drivers/misc/uacce/uacce 0x4dfee597 uacce_register +EXPORT_SYMBOL_GPL drivers/misc/uacce/uacce 0xe39e9b39 uacce_remove +EXPORT_SYMBOL_GPL drivers/mmc/host/dw_mmc-pltfm 0x51ad6e8e dw_mci_pltfm_remove +EXPORT_SYMBOL_GPL drivers/mmc/host/dw_mmc-pltfm 0x7d5ddc2f dw_mci_pltfm_register +EXPORT_SYMBOL_GPL drivers/mmc/host/dw_mmc-pltfm 0xe9822cb2 dw_mci_pltfm_pmops +EXPORT_SYMBOL_GPL drivers/mmc/host/mmc_hsq 0x0260bccb mmc_hsq_init +EXPORT_SYMBOL_GPL drivers/mmc/host/mmc_hsq 0xcb6d7c3f mmc_hsq_finalize_request +EXPORT_SYMBOL_GPL drivers/mmc/host/mmc_hsq 0xe9db3127 mmc_hsq_resume +EXPORT_SYMBOL_GPL drivers/mmc/host/mmc_hsq 0xfc611f5b mmc_hsq_suspend +EXPORT_SYMBOL_GPL drivers/mmc/host/renesas_sdhi_core 0x90024897 renesas_sdhi_remove +EXPORT_SYMBOL_GPL drivers/mmc/host/renesas_sdhi_core 0xf5e1314c renesas_sdhi_probe +EXPORT_SYMBOL_GPL drivers/mmc/host/sdhci 0x051218d4 sdhci_execute_tuning +EXPORT_SYMBOL_GPL drivers/mmc/host/sdhci 0x0d5edd06 sdhci_start_signal_voltage_switch +EXPORT_SYMBOL_GPL drivers/mmc/host/sdhci 0x17035ea5 sdhci_start_tuning +EXPORT_SYMBOL_GPL drivers/mmc/host/sdhci 0x17a15574 sdhci_enable_v4_mode +EXPORT_SYMBOL_GPL drivers/mmc/host/sdhci 0x180957ff sdhci_abort_tuning +EXPORT_SYMBOL_GPL drivers/mmc/host/sdhci 0x1d49e6c5 sdhci_setup_host +EXPORT_SYMBOL_GPL drivers/mmc/host/sdhci 0x3242ae1c sdhci_suspend_host +EXPORT_SYMBOL_GPL drivers/mmc/host/sdhci 0x35b830a7 sdhci_set_data_timeout_irq +EXPORT_SYMBOL_GPL drivers/mmc/host/sdhci 0x36c5febb sdhci_enable_sdio_irq +EXPORT_SYMBOL_GPL drivers/mmc/host/sdhci 0x3f09ec3f sdhci_set_power +EXPORT_SYMBOL_GPL drivers/mmc/host/sdhci 0x3f464c11 sdhci_cqe_enable +EXPORT_SYMBOL_GPL drivers/mmc/host/sdhci 0x50d67c91 sdhci_adma_write_desc +EXPORT_SYMBOL_GPL drivers/mmc/host/sdhci 0x5445a28b sdhci_reset +EXPORT_SYMBOL_GPL drivers/mmc/host/sdhci 0x57a31573 sdhci_remove_host +EXPORT_SYMBOL_GPL drivers/mmc/host/sdhci 0x59ce1b63 __sdhci_set_timeout +EXPORT_SYMBOL_GPL drivers/mmc/host/sdhci 0x6c85ff4f sdhci_set_uhs_signaling +EXPORT_SYMBOL_GPL drivers/mmc/host/sdhci 0x6c8cc7a2 sdhci_end_tuning +EXPORT_SYMBOL_GPL drivers/mmc/host/sdhci 0x6d996915 sdhci_alloc_host +EXPORT_SYMBOL_GPL drivers/mmc/host/sdhci 0x7dceb1ae __sdhci_add_host +EXPORT_SYMBOL_GPL drivers/mmc/host/sdhci 0x84ac7577 sdhci_calc_clk +EXPORT_SYMBOL_GPL drivers/mmc/host/sdhci 0x8771ad60 sdhci_dumpregs +EXPORT_SYMBOL_GPL drivers/mmc/host/sdhci 0x8ec06f4c sdhci_switch_external_dma +EXPORT_SYMBOL_GPL drivers/mmc/host/sdhci 0x9365b12d __sdhci_read_caps +EXPORT_SYMBOL_GPL drivers/mmc/host/sdhci 0x9a202076 sdhci_runtime_suspend_host +EXPORT_SYMBOL_GPL drivers/mmc/host/sdhci 0x9a5e7b46 sdhci_request_atomic +EXPORT_SYMBOL_GPL drivers/mmc/host/sdhci 0xa52606e4 sdhci_enable_clk +EXPORT_SYMBOL_GPL drivers/mmc/host/sdhci 0xa6c62afe sdhci_set_clock +EXPORT_SYMBOL_GPL drivers/mmc/host/sdhci 0xb19d561d sdhci_reset_tuning +EXPORT_SYMBOL_GPL drivers/mmc/host/sdhci 0xb3190ae4 sdhci_cqe_disable +EXPORT_SYMBOL_GPL drivers/mmc/host/sdhci 0xbe67db07 sdhci_set_ios +EXPORT_SYMBOL_GPL drivers/mmc/host/sdhci 0xc3154c75 sdhci_cleanup_host +EXPORT_SYMBOL_GPL drivers/mmc/host/sdhci 0xcb74ee06 sdhci_cqe_irq +EXPORT_SYMBOL_GPL drivers/mmc/host/sdhci 0xe1970a4f sdhci_free_host +EXPORT_SYMBOL_GPL drivers/mmc/host/sdhci 0xe20e0e90 sdhci_add_host +EXPORT_SYMBOL_GPL drivers/mmc/host/sdhci 0xe567aa03 sdhci_runtime_resume_host +EXPORT_SYMBOL_GPL drivers/mmc/host/sdhci 0xedf3e5e3 sdhci_resume_host +EXPORT_SYMBOL_GPL drivers/mmc/host/sdhci 0xef9ef222 sdhci_request +EXPORT_SYMBOL_GPL drivers/mmc/host/sdhci 0xeff72e78 sdhci_send_tuning +EXPORT_SYMBOL_GPL drivers/mmc/host/sdhci 0xf943b601 sdhci_set_power_noreg +EXPORT_SYMBOL_GPL drivers/mmc/host/sdhci 0xf9b15692 sdhci_set_bus_width +EXPORT_SYMBOL_GPL drivers/mmc/host/sdhci 0xfbff3aac sdhci_set_power_and_bus_voltage +EXPORT_SYMBOL_GPL drivers/mmc/host/sdhci-pltfm 0x101f9495 sdhci_pltfm_free +EXPORT_SYMBOL_GPL drivers/mmc/host/sdhci-pltfm 0x2de23898 sdhci_pltfm_pmops +EXPORT_SYMBOL_GPL drivers/mmc/host/sdhci-pltfm 0x3e7681bc sdhci_pltfm_resume +EXPORT_SYMBOL_GPL drivers/mmc/host/sdhci-pltfm 0x9ab40184 sdhci_pltfm_init +EXPORT_SYMBOL_GPL drivers/mmc/host/sdhci-pltfm 0x9bedb875 sdhci_pltfm_clk_get_max_clock +EXPORT_SYMBOL_GPL drivers/mmc/host/sdhci-pltfm 0xb357a838 sdhci_get_property +EXPORT_SYMBOL_GPL drivers/mmc/host/sdhci-pltfm 0xcebf9427 sdhci_pltfm_register +EXPORT_SYMBOL_GPL drivers/mmc/host/sdhci-pltfm 0xd225bc3d sdhci_pltfm_suspend +EXPORT_SYMBOL_GPL drivers/mmc/host/sdhci-pltfm 0xec1225bf sdhci_pltfm_unregister +EXPORT_SYMBOL_GPL drivers/mmc/host/tmio_mmc_core 0x17f37b27 tmio_mmc_disable_mmc_irqs +EXPORT_SYMBOL_GPL drivers/mmc/host/tmio_mmc_core 0x1df07a15 tmio_mmc_host_free +EXPORT_SYMBOL_GPL drivers/mmc/host/tmio_mmc_core 0x2794df66 tmio_mmc_host_remove +EXPORT_SYMBOL_GPL drivers/mmc/host/tmio_mmc_core 0x378f2335 tmio_mmc_irq +EXPORT_SYMBOL_GPL drivers/mmc/host/tmio_mmc_core 0x4d9b052b tmio_mmc_enable_mmc_irqs +EXPORT_SYMBOL_GPL drivers/mmc/host/tmio_mmc_core 0x6f290c23 tmio_mmc_host_alloc +EXPORT_SYMBOL_GPL drivers/mmc/host/tmio_mmc_core 0x7ebfd044 tmio_mmc_host_probe +EXPORT_SYMBOL_GPL drivers/mmc/host/tmio_mmc_core 0x8bc6fb1c tmio_mmc_do_data_irq +EXPORT_SYMBOL_GPL drivers/mmc/host/tmio_mmc_core 0xba3b660c tmio_mmc_host_runtime_suspend +EXPORT_SYMBOL_GPL drivers/mmc/host/tmio_mmc_core 0xc3d5d441 tmio_mmc_host_runtime_resume +EXPORT_SYMBOL_GPL drivers/most/most_core 0x05a64927 most_get_mbo +EXPORT_SYMBOL_GPL drivers/most/most_core 0x17e9cacf most_put_mbo +EXPORT_SYMBOL_GPL drivers/most/most_core 0x1f0db7ff most_stop_channel +EXPORT_SYMBOL_GPL drivers/most/most_core 0x223a05ad most_stop_enqueue +EXPORT_SYMBOL_GPL drivers/most/most_core 0x30482128 most_register_interface +EXPORT_SYMBOL_GPL drivers/most/most_core 0x7cd3c0ee most_start_channel +EXPORT_SYMBOL_GPL drivers/most/most_core 0x8bbc5407 most_register_component +EXPORT_SYMBOL_GPL drivers/most/most_core 0x9aefe0ed most_deregister_component +EXPORT_SYMBOL_GPL drivers/most/most_core 0xaa9d4296 channel_has_mbo +EXPORT_SYMBOL_GPL drivers/most/most_core 0xc6b1fa7a most_submit_mbo +EXPORT_SYMBOL_GPL drivers/most/most_core 0xcd6d524a most_deregister_configfs_subsys +EXPORT_SYMBOL_GPL drivers/most/most_core 0xdd67fa5e most_resume_enqueue +EXPORT_SYMBOL_GPL drivers/most/most_core 0xe24dd63b most_deregister_interface +EXPORT_SYMBOL_GPL drivers/most/most_core 0xf4d417f3 most_register_configfs_subsys +EXPORT_SYMBOL_GPL drivers/mtd/chips/cfi_cmdset_0001 0x7dbb7855 cfi_cmdset_0200 +EXPORT_SYMBOL_GPL drivers/mtd/chips/cfi_cmdset_0001 0x80a55dc3 cfi_cmdset_0003 +EXPORT_SYMBOL_GPL drivers/mtd/chips/cfi_cmdset_0001 0xbf8c782b cfi_cmdset_0001 +EXPORT_SYMBOL_GPL drivers/mtd/chips/cfi_cmdset_0002 0x6cc800b1 cfi_cmdset_0701 +EXPORT_SYMBOL_GPL drivers/mtd/chips/cfi_cmdset_0002 0x9f31cf37 cfi_cmdset_0002 +EXPORT_SYMBOL_GPL drivers/mtd/chips/cfi_cmdset_0002 0xe16384e7 cfi_cmdset_0006 +EXPORT_SYMBOL_GPL drivers/mtd/chips/cfi_cmdset_0020 0x0ef6a9b0 cfi_cmdset_0020 +EXPORT_SYMBOL_GPL drivers/mtd/chips/cfi_util 0x0358611a cfi_qry_mode_off +EXPORT_SYMBOL_GPL drivers/mtd/chips/cfi_util 0x33710905 cfi_qry_present +EXPORT_SYMBOL_GPL drivers/mtd/chips/cfi_util 0xd03ad421 cfi_qry_mode_on +EXPORT_SYMBOL_GPL drivers/mtd/hyperbus/hyperbus-core 0x01a1d3a0 hyperbus_register_device +EXPORT_SYMBOL_GPL drivers/mtd/hyperbus/hyperbus-core 0x23076a1c hyperbus_unregister_device +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0x014acbbf put_mtd_device +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0x01f1cb4f deregister_mtd_parser +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0x07e6297a mtd_get_user_prot_info +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0x0a2ce995 mtd_ooblayout_ecc +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0x12adbf72 mtd_device_parse_register +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0x222bb227 mtd_unlock +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0x34003c6b mtd_ooblayout_set_databytes +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0x3b5d2a7a get_mtd_device_nm +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0x4468da36 mtd_ooblayout_get_databytes +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0x57dd5d17 mtd_ooblayout_find_eccregion +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0x59c6c37c mtd_unpoint +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0x5a4117e2 mtd_write_oob +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0x605dd54a mtd_point +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0x63bac3cd mtd_write_user_prot_reg +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0x649bf679 mtd_ooblayout_count_freebytes +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0x757b7866 mtd_write +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0x7710115b register_mtd_user +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0x773471e9 mtd_kmalloc_up_to +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0x7cf3f289 __get_mtd_device +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0x8065dbb7 __mtd_next_device +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0x8be6fdb2 mtd_read_user_prot_reg +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0x8e0df829 mtd_is_locked +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0x90eb5056 mtd_pairing_info_to_wunit +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0x9152be8d get_mtd_device +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0x938b62f4 mtd_device_unregister +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0x97f5968f get_tree_mtd +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0x9fa9150d mtd_ooblayout_count_eccbytes +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0xa2346d6c mtd_read +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0xaac29adf mtd_ooblayout_free +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0xb79d5d73 mtd_writev +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0xb8abd587 mtd_ooblayout_set_eccbytes +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0xbcf12f8d mtd_add_partition +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0xbfa5ef19 mtd_block_isreserved +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0xbfe0859b mtd_pairing_groups +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0xbfe5164f unregister_mtd_user +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0xc0451c1c mtd_del_partition +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0xc25e0525 kill_mtd_super +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0xc265a0ba mtd_block_isbad +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0xc4549489 mtd_panic_write +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0xc565ed53 mtd_erase +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0xc940af05 mtd_get_unmapped_area +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0xc97540c5 mtd_read_oob +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0xca249b63 mtd_lock_user_prot_reg +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0xd67261dd __register_mtd_parser +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0xdbccceb4 mtd_lock +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0xe62c1ea0 mtd_table_mutex +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0xe8d2a963 __put_mtd_device +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0xea3b87d9 mtd_block_markbad +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0xf0fade47 mtd_get_fact_prot_info +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0xf1b7335b mtd_get_device_size +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0xf51e064a mtd_wunit_to_pairing_info +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0xf5469d26 mtd_read_fact_prot_reg +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0xfae62db2 mtd_ooblayout_get_eccbytes +EXPORT_SYMBOL_GPL drivers/mtd/mtd_blkdevs 0x0e747bed register_mtd_blktrans +EXPORT_SYMBOL_GPL drivers/mtd/mtd_blkdevs 0x3b8d5389 del_mtd_blktrans_dev +EXPORT_SYMBOL_GPL drivers/mtd/mtd_blkdevs 0x44dadf8c add_mtd_blktrans_dev +EXPORT_SYMBOL_GPL drivers/mtd/mtd_blkdevs 0xb0b1443a deregister_mtd_blktrans +EXPORT_SYMBOL_GPL drivers/mtd/mtd_blkdevs 0xe704c18a mtd_blktrans_cease_background +EXPORT_SYMBOL_GPL drivers/mtd/nand/nandcore 0x1812171d nanddev_cleanup +EXPORT_SYMBOL_GPL drivers/mtd/nand/nandcore 0x296b8c30 nanddev_mtd_erase +EXPORT_SYMBOL_GPL drivers/mtd/nand/nandcore 0x2b7aea05 nanddev_bbt_init +EXPORT_SYMBOL_GPL drivers/mtd/nand/nandcore 0x2ff28ee3 nanddev_mtd_max_bad_blocks +EXPORT_SYMBOL_GPL drivers/mtd/nand/nandcore 0x76e9abeb nanddev_bbt_set_block_status +EXPORT_SYMBOL_GPL drivers/mtd/nand/nandcore 0x8237d93c nanddev_init +EXPORT_SYMBOL_GPL drivers/mtd/nand/nandcore 0x831f1b19 nanddev_bbt_get_block_status +EXPORT_SYMBOL_GPL drivers/mtd/nand/nandcore 0x8ef54c01 nanddev_markbad +EXPORT_SYMBOL_GPL drivers/mtd/nand/nandcore 0xb1b98348 nanddev_isbad +EXPORT_SYMBOL_GPL drivers/mtd/nand/nandcore 0xe9d767ee nanddev_erase +EXPORT_SYMBOL_GPL drivers/mtd/nand/nandcore 0xedefc0b7 nanddev_bbt_update +EXPORT_SYMBOL_GPL drivers/mtd/nand/nandcore 0xeef4c35d nanddev_isreserved +EXPORT_SYMBOL_GPL drivers/mtd/nand/nandcore 0xf79e9109 nanddev_bbt_cleanup +EXPORT_SYMBOL_GPL drivers/mtd/nand/onenand/onenand 0x17a3631c onenand_scan +EXPORT_SYMBOL_GPL drivers/mtd/nand/onenand/onenand 0x7dda9b7c onenand_release +EXPORT_SYMBOL_GPL drivers/mtd/nand/raw/brcmnand/brcmnand 0x08911db4 brcmnand_pm_ops +EXPORT_SYMBOL_GPL drivers/mtd/nand/raw/brcmnand/brcmnand 0x2baed81c brcmnand_remove +EXPORT_SYMBOL_GPL drivers/mtd/nand/raw/brcmnand/brcmnand 0x6455ae9d brcmnand_probe +EXPORT_SYMBOL_GPL drivers/mtd/nand/raw/denali 0x91c8ba14 denali_chip_init +EXPORT_SYMBOL_GPL drivers/mtd/nand/raw/nand 0x00c901ec nand_read_data_op +EXPORT_SYMBOL_GPL drivers/mtd/nand/raw/nand 0x086908c1 nand_reset_op +EXPORT_SYMBOL_GPL drivers/mtd/nand/raw/nand 0x11091291 nand_extract_bits +EXPORT_SYMBOL_GPL drivers/mtd/nand/raw/nand 0x132cc263 nand_change_read_column_op +EXPORT_SYMBOL_GPL drivers/mtd/nand/raw/nand 0x1bd30627 nand_wait_ready +EXPORT_SYMBOL_GPL drivers/mtd/nand/raw/nand 0x2d368c4c nand_subop_get_addr_start_off +EXPORT_SYMBOL_GPL drivers/mtd/nand/raw/nand 0x3138a8d2 nand_erase_op +EXPORT_SYMBOL_GPL drivers/mtd/nand/raw/nand 0x33cd1ed6 nand_deselect_target +EXPORT_SYMBOL_GPL drivers/mtd/nand/raw/nand 0x397c141e nand_ooblayout_lp_ops +EXPORT_SYMBOL_GPL drivers/mtd/nand/raw/nand 0x3de69d26 nand_write_data_op +EXPORT_SYMBOL_GPL drivers/mtd/nand/raw/nand 0x41b9881d nand_ecc_choose_conf +EXPORT_SYMBOL_GPL drivers/mtd/nand/raw/nand 0x5632e63d nand_subop_get_num_addr_cyc +EXPORT_SYMBOL_GPL drivers/mtd/nand/raw/nand 0x5665e2f6 nand_cleanup +EXPORT_SYMBOL_GPL drivers/mtd/nand/raw/nand 0x607d696b nand_read_oob_op +EXPORT_SYMBOL_GPL drivers/mtd/nand/raw/nand 0x66012837 nand_select_target +EXPORT_SYMBOL_GPL drivers/mtd/nand/raw/nand 0x6ad44cbf nand_prog_page_op +EXPORT_SYMBOL_GPL drivers/mtd/nand/raw/nand 0x7f167f3f nand_gpio_waitrdy +EXPORT_SYMBOL_GPL drivers/mtd/nand/raw/nand 0xa8eaf839 nand_ooblayout_sp_ops +EXPORT_SYMBOL_GPL drivers/mtd/nand/raw/nand 0xab6cfe8f nand_read_page_op +EXPORT_SYMBOL_GPL drivers/mtd/nand/raw/nand 0xbd6d7e6c nand_decode_ext_id +EXPORT_SYMBOL_GPL drivers/mtd/nand/raw/nand 0xc2e2b8dd nand_prog_page_end_op +EXPORT_SYMBOL_GPL drivers/mtd/nand/raw/nand 0xc397cf44 nand_soft_waitrdy +EXPORT_SYMBOL_GPL drivers/mtd/nand/raw/nand 0xcfb0331a nand_reset +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/nand 0xd71eb649 nand_prog_page_begin_op +EXPORT_SYMBOL_GPL drivers/mtd/nand/raw/nand 0xdc41d21b nand_readid_op +EXPORT_SYMBOL_GPL drivers/mtd/nand/raw/nand 0xebeecd13 nand_change_write_column_op +EXPORT_SYMBOL_GPL drivers/mtd/nand/raw/nand 0xf1066922 nand_op_parser_exec_op +EXPORT_SYMBOL_GPL drivers/mtd/nand/raw/nand 0xf470d84a nand_status_op +EXPORT_SYMBOL_GPL drivers/mtd/nand/raw/sm_common 0x3677aeb1 sm_register_device +EXPORT_SYMBOL_GPL drivers/mtd/spi-nor/spi-nor 0x66cb30df spi_nor_scan +EXPORT_SYMBOL_GPL drivers/mtd/spi-nor/spi-nor 0x842ca6b2 spi_nor_restore +EXPORT_SYMBOL_GPL drivers/mtd/ubi/ubi 0x0242716c ubi_open_volume_path +EXPORT_SYMBOL_GPL drivers/mtd/ubi/ubi 0x06a603bd ubi_leb_unmap +EXPORT_SYMBOL_GPL drivers/mtd/ubi/ubi 0x101f20ba ubi_leb_read +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 0x64938d9a ubi_close_volume +EXPORT_SYMBOL_GPL drivers/mtd/ubi/ubi 0x66011ab6 ubi_get_device_info +EXPORT_SYMBOL_GPL drivers/mtd/ubi/ubi 0x85a8ee76 ubi_unregister_volume_notifier +EXPORT_SYMBOL_GPL drivers/mtd/ubi/ubi 0x93fc9599 ubi_leb_map +EXPORT_SYMBOL_GPL drivers/mtd/ubi/ubi 0x962bc020 ubi_do_get_device_info +EXPORT_SYMBOL_GPL drivers/mtd/ubi/ubi 0x9d8d9907 ubi_get_volume_info +EXPORT_SYMBOL_GPL drivers/mtd/ubi/ubi 0xab3f2971 ubi_is_mapped +EXPORT_SYMBOL_GPL drivers/mtd/ubi/ubi 0xbcbd1a89 ubi_open_volume +EXPORT_SYMBOL_GPL drivers/mtd/ubi/ubi 0xc82edb47 ubi_leb_erase +EXPORT_SYMBOL_GPL drivers/mtd/ubi/ubi 0xe34551c3 ubi_leb_change +EXPORT_SYMBOL_GPL drivers/mtd/ubi/ubi 0xe5a9d353 ubi_leb_write +EXPORT_SYMBOL_GPL drivers/mtd/ubi/ubi 0xf5ee9ba8 ubi_register_volume_notifier +EXPORT_SYMBOL_GPL drivers/mtd/ubi/ubi 0xf6bac72d ubi_leb_read_sg +EXPORT_SYMBOL_GPL drivers/mtd/ubi/ubi 0xfdea2417 ubi_open_volume_nm +EXPORT_SYMBOL_GPL drivers/mux/mux-core 0x0467faeb mux_chip_register +EXPORT_SYMBOL_GPL drivers/mux/mux-core 0x0c091f18 mux_control_try_select +EXPORT_SYMBOL_GPL drivers/mux/mux-core 0x27c172e8 mux_chip_free +EXPORT_SYMBOL_GPL drivers/mux/mux-core 0x4130ef0b mux_control_states +EXPORT_SYMBOL_GPL drivers/mux/mux-core 0x6cf67548 mux_chip_alloc +EXPORT_SYMBOL_GPL drivers/mux/mux-core 0x868ff4d1 devm_mux_chip_alloc +EXPORT_SYMBOL_GPL drivers/mux/mux-core 0x9d32ef21 mux_control_put +EXPORT_SYMBOL_GPL drivers/mux/mux-core 0xa12d1b4b mux_chip_unregister +EXPORT_SYMBOL_GPL drivers/mux/mux-core 0xa7897576 mux_control_deselect +EXPORT_SYMBOL_GPL drivers/mux/mux-core 0xb8918696 devm_mux_chip_register +EXPORT_SYMBOL_GPL drivers/mux/mux-core 0xba03f3aa devm_mux_control_get +EXPORT_SYMBOL_GPL drivers/mux/mux-core 0xbbe4ece3 mux_control_get +EXPORT_SYMBOL_GPL drivers/mux/mux-core 0xf017341c mux_control_select +EXPORT_SYMBOL_GPL drivers/net/arcnet/arcnet 0xb5abd071 devm_arcnet_led_init +EXPORT_SYMBOL_GPL drivers/net/arcnet/arcnet 0xe39f7774 arcnet_led_event +EXPORT_SYMBOL_GPL drivers/net/bareudp 0x760acff3 bareudp_dev_create +EXPORT_SYMBOL_GPL drivers/net/can/c_can/c_can 0x3a778868 c_can_power_up +EXPORT_SYMBOL_GPL drivers/net/can/c_can/c_can 0x4e37f92e free_c_can_dev +EXPORT_SYMBOL_GPL drivers/net/can/c_can/c_can 0x602d38f7 c_can_power_down +EXPORT_SYMBOL_GPL drivers/net/can/c_can/c_can 0xb2324f05 alloc_c_can_dev +EXPORT_SYMBOL_GPL drivers/net/can/c_can/c_can 0xdabe855c unregister_c_can_dev +EXPORT_SYMBOL_GPL drivers/net/can/c_can/c_can 0xecdddf28 register_c_can_dev +EXPORT_SYMBOL_GPL drivers/net/can/can-dev 0x16081ffb can_dlc2len +EXPORT_SYMBOL_GPL drivers/net/can/can-dev 0x1d8bc002 of_can_transceiver +EXPORT_SYMBOL_GPL drivers/net/can/can-dev 0x2f6248d7 register_candev +EXPORT_SYMBOL_GPL drivers/net/can/can-dev 0x2fddf52a can_bus_off +EXPORT_SYMBOL_GPL drivers/net/can/can-dev 0x37fcf235 alloc_candev_mqs +EXPORT_SYMBOL_GPL drivers/net/can/can-dev 0x38f3d98d safe_candev_priv +EXPORT_SYMBOL_GPL drivers/net/can/can-dev 0x39a119c0 can_put_echo_skb +EXPORT_SYMBOL_GPL drivers/net/can/can-dev 0x3a180100 can_rx_offload_del +EXPORT_SYMBOL_GPL drivers/net/can/can-dev 0x524c44cf alloc_canfd_skb +EXPORT_SYMBOL_GPL drivers/net/can/can-dev 0x5c70d8b5 can_get_echo_skb +EXPORT_SYMBOL_GPL drivers/net/can/can-dev 0x6a86103b can_rx_offload_add_fifo +EXPORT_SYMBOL_GPL drivers/net/can/can-dev 0x6e3e7126 can_free_echo_skb +EXPORT_SYMBOL_GPL drivers/net/can/can-dev 0x7e009b37 can_rx_offload_add_timestamp +EXPORT_SYMBOL_GPL drivers/net/can/can-dev 0x800e8430 can_change_mtu +EXPORT_SYMBOL_GPL drivers/net/can/can-dev 0x8762619a can_len2dlc +EXPORT_SYMBOL_GPL drivers/net/can/can-dev 0x90848c7f can_change_state +EXPORT_SYMBOL_GPL drivers/net/can/can-dev 0x96a3a6ea alloc_can_skb +EXPORT_SYMBOL_GPL drivers/net/can/can-dev 0x9ee6f602 unregister_candev +EXPORT_SYMBOL_GPL drivers/net/can/can-dev 0xa54d251b can_rx_offload_get_echo_skb +EXPORT_SYMBOL_GPL drivers/net/can/can-dev 0xac8ca66b alloc_can_err_skb +EXPORT_SYMBOL_GPL drivers/net/can/can-dev 0xaeb01e73 can_rx_offload_queue_tail +EXPORT_SYMBOL_GPL drivers/net/can/can-dev 0xaebee50c can_rx_offload_enable +EXPORT_SYMBOL_GPL drivers/net/can/can-dev 0xb4132f17 can_rx_offload_irq_offload_fifo +EXPORT_SYMBOL_GPL drivers/net/can/can-dev 0xd12d917d free_candev +EXPORT_SYMBOL_GPL drivers/net/can/can-dev 0xd32e1c1b can_rx_offload_irq_offload_timestamp +EXPORT_SYMBOL_GPL drivers/net/can/can-dev 0xe69b9e92 close_candev +EXPORT_SYMBOL_GPL drivers/net/can/can-dev 0xe818fe09 can_rx_offload_queue_sorted +EXPORT_SYMBOL_GPL drivers/net/can/can-dev 0xfece78c2 open_candev +EXPORT_SYMBOL_GPL drivers/net/can/cc770/cc770 0x69436509 free_cc770dev +EXPORT_SYMBOL_GPL drivers/net/can/cc770/cc770 0x7687627b alloc_cc770dev +EXPORT_SYMBOL_GPL drivers/net/can/cc770/cc770 0x84049380 unregister_cc770dev +EXPORT_SYMBOL_GPL drivers/net/can/cc770/cc770 0xe414112a register_cc770dev +EXPORT_SYMBOL_GPL drivers/net/can/m_can/m_can 0x3123c5c6 m_can_class_allocate_dev +EXPORT_SYMBOL_GPL drivers/net/can/m_can/m_can 0x5ddd1e53 m_can_class_unregister +EXPORT_SYMBOL_GPL drivers/net/can/m_can/m_can 0x61fedb3d m_can_init_ram +EXPORT_SYMBOL_GPL drivers/net/can/m_can/m_can 0x76761f19 m_can_class_suspend +EXPORT_SYMBOL_GPL drivers/net/can/m_can/m_can 0xa9b254ae m_can_class_free_dev +EXPORT_SYMBOL_GPL drivers/net/can/m_can/m_can 0xb2ec3bac m_can_class_get_clocks +EXPORT_SYMBOL_GPL drivers/net/can/m_can/m_can 0xea80be57 m_can_class_register +EXPORT_SYMBOL_GPL drivers/net/can/m_can/m_can 0xf8ad1bd0 m_can_class_resume +EXPORT_SYMBOL_GPL drivers/net/can/sja1000/sja1000 0x3ad413f1 register_sja1000dev +EXPORT_SYMBOL_GPL drivers/net/can/sja1000/sja1000 0x49ebd0d2 sja1000_interrupt +EXPORT_SYMBOL_GPL drivers/net/can/sja1000/sja1000 0x5e792604 alloc_sja1000dev +EXPORT_SYMBOL_GPL drivers/net/can/sja1000/sja1000 0x6d8ac58e unregister_sja1000dev +EXPORT_SYMBOL_GPL drivers/net/can/sja1000/sja1000 0xd3155ce2 free_sja1000dev +EXPORT_SYMBOL_GPL drivers/net/dsa/lan9303-core 0x7cf5dd1c lan9303_indirect_phy_ops +EXPORT_SYMBOL_GPL drivers/net/dsa/microchip/ksz_common 0x00c3a47b ksz_port_vlan_prepare +EXPORT_SYMBOL_GPL drivers/net/dsa/microchip/ksz_common 0x00f2e435 ksz_port_bridge_leave +EXPORT_SYMBOL_GPL drivers/net/dsa/microchip/ksz_common 0x0413194f ksz_update_port_member +EXPORT_SYMBOL_GPL drivers/net/dsa/microchip/ksz_common 0x06476020 ksz_sset_count +EXPORT_SYMBOL_GPL drivers/net/dsa/microchip/ksz_common 0x17261f3f ksz_enable_port +EXPORT_SYMBOL_GPL drivers/net/dsa/microchip/ksz_common 0x1b3cf6c8 ksz_port_fast_age +EXPORT_SYMBOL_GPL drivers/net/dsa/microchip/ksz_common 0x4fe620b1 ksz_phy_read16 +EXPORT_SYMBOL_GPL drivers/net/dsa/microchip/ksz_common 0x62510393 ksz_port_mdb_del +EXPORT_SYMBOL_GPL drivers/net/dsa/microchip/ksz_common 0x6766c8dd ksz_get_ethtool_stats +EXPORT_SYMBOL_GPL drivers/net/dsa/microchip/ksz_common 0x813cc78e ksz_disable_port +EXPORT_SYMBOL_GPL drivers/net/dsa/microchip/ksz_common 0x8bcccb88 ksz_init_mib_timer +EXPORT_SYMBOL_GPL drivers/net/dsa/microchip/ksz_common 0x912505b3 ksz_port_bridge_join +EXPORT_SYMBOL_GPL drivers/net/dsa/microchip/ksz_common 0x9b438511 ksz_phy_write16 +EXPORT_SYMBOL_GPL drivers/net/dsa/microchip/ksz_common 0xadf2ff37 ksz_port_mdb_add +EXPORT_SYMBOL_GPL drivers/net/dsa/microchip/ksz_common 0xb2d4aace ksz_port_mdb_prepare +EXPORT_SYMBOL_GPL drivers/net/dsa/microchip/ksz_common 0xd6db6a98 ksz_port_fdb_dump +EXPORT_SYMBOL_GPL drivers/net/dsa/microchip/ksz_common 0xf522c05a ksz_adjust_link +EXPORT_SYMBOL_GPL drivers/net/dsa/realtek-smi 0x1e4ae462 rtl8366_vlan_prepare +EXPORT_SYMBOL_GPL drivers/net/dsa/realtek-smi 0x35f52e6e realtek_smi_write_reg_noack +EXPORT_SYMBOL_GPL drivers/net/dsa/realtek-smi 0x403b1c26 rtl8366rb_variant +EXPORT_SYMBOL_GPL drivers/net/dsa/realtek-smi 0x436a2b4a rtl8366_mc_is_used +EXPORT_SYMBOL_GPL drivers/net/dsa/realtek-smi 0x58331f1d rtl8366_vlan_filtering +EXPORT_SYMBOL_GPL drivers/net/dsa/realtek-smi 0x5c9b9dd2 rtl8366_enable_vlan +EXPORT_SYMBOL_GPL drivers/net/dsa/realtek-smi 0x65926200 rtl8366_vlan_add +EXPORT_SYMBOL_GPL drivers/net/dsa/realtek-smi 0x90a93c02 rtl8366_set_vlan +EXPORT_SYMBOL_GPL drivers/net/dsa/realtek-smi 0x918b4518 rtl8366_init_vlan +EXPORT_SYMBOL_GPL drivers/net/dsa/realtek-smi 0x9a5bf192 rtl8366_get_sset_count +EXPORT_SYMBOL_GPL drivers/net/dsa/realtek-smi 0xb285269b rtl8366_reset_vlan +EXPORT_SYMBOL_GPL drivers/net/dsa/realtek-smi 0xb4e6a60d rtl8366_vlan_del +EXPORT_SYMBOL_GPL drivers/net/dsa/realtek-smi 0xc8850ea2 rtl8366_enable_vlan4k +EXPORT_SYMBOL_GPL drivers/net/dsa/realtek-smi 0xcd2efb38 rtl8366_set_pvid +EXPORT_SYMBOL_GPL drivers/net/dsa/realtek-smi 0xdb777133 rtl8366_get_strings +EXPORT_SYMBOL_GPL drivers/net/dsa/realtek-smi 0xff6b0242 rtl8366_get_ethtool_stats +EXPORT_SYMBOL_GPL drivers/net/ethernet/arc/arc_emac 0x24167a00 arc_emac_probe +EXPORT_SYMBOL_GPL drivers/net/ethernet/arc/arc_emac 0xb9b6e447 arc_emac_remove +EXPORT_SYMBOL_GPL drivers/net/ethernet/freescale/enetc/fsl-enetc-mdio 0xae496f0d enetc_mdio_read +EXPORT_SYMBOL_GPL drivers/net/ethernet/freescale/enetc/fsl-enetc-mdio 0xca2dd7b4 enetc_hw_alloc +EXPORT_SYMBOL_GPL drivers/net/ethernet/freescale/enetc/fsl-enetc-mdio 0xd9d61d6f enetc_mdio_lock +EXPORT_SYMBOL_GPL drivers/net/ethernet/freescale/enetc/fsl-enetc-mdio 0xfa4e0416 enetc_mdio_write +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x02d09861 mlx4_vf_set_enable_smi_admin +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x04c10875 mlx4_wol_read +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x0518a56c mlx4_mtt_init +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x06657671 mlx4_mr_hw_put_mpt +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x069549d9 mlx4_get_counter_stats +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x07a31f09 mlx4_free_cmd_mailbox +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x07b3011b mlx4_mtt_addr +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x0f21c13c mlx4_cq_alloc +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x123549a2 __mlx4_register_mac +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x1280e055 mlx4_mtt_cleanup +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x135b7564 mlx4_qp_modify +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x172b3c05 mlx4_get_active_ports +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x1b0aa284 mlx4_replace_zero_macs +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x1eda8631 mlx4_get_protocol_dev +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x20d27e8d mlx4_mr_hw_write_mpt +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x21a20d40 mlx4_CLOSE_PORT +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x236ce52d mlx4_buf_write_mtt +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x28267bb6 mlx4_mr_rereg_mem_write +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x293dcede mlx4_qp_release_range +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x29dbc646 mlx4_write_mtt +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x2b7a6f48 mlx4_register_vlan +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x2f148282 mlx4_set_vf_vlan +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x33f33966 mlx4_multicast_detach +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x34609ed1 mlx4_qp_reserve_range +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x37b8440d mlx4_srq_query +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x3b72b66a mlx4_set_vf_link_state +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x3b731a0c mlx4_ACCESS_PTYS_REG +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x3cb25eac mlx4_buf_free +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x3e68aa54 mlx4_flow_detach +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x40ef99ef mlx4_config_dev_retrieval +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x414303f6 mlx4_unicast_attach +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x41758965 mlx4_qp_query +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x42089e6b mlx4_srq_alloc +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x422d7abc __mlx4_cmd +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x426a6171 mlx4_get_base_qpn +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x42790834 mlx4_mr_rereg_mem_cleanup +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x45ee100d mlx4_multicast_promisc_add +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x4627f1f1 mlx4_get_vf_stats +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x46cbb861 mlx4_counter_alloc +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x495e8f28 mlx4_config_roce_v2_port +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x4ae4e316 mlx4_hw_rule_sz +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x4ba17f04 mlx4_get_devlink_port +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x4cc1a88b mlx4_db_free +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x5c189881 mlx4_free_hwq_res +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x5f93e1af mlx4_mr_hw_get_mpt +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x6407c64a mlx4_slave_convert_port +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x65f724ba mlx4_db_alloc +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x68215b38 mlx4_buf_alloc +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x6c787344 __mlx4_unregister_mac +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x6e840703 mlx4_get_base_gid_ix +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x6f3e2f42 mlx4_get_admin_guid +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x702808b3 mlx4_bf_free +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x70c7773a mlx4_srq_free +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x748b145b mlx4_phys_to_slaves_pport +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x7927bee1 mlx4_port_map_set +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x7aacaa76 mlx4_read_clock +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x7e3ed741 mlx4_get_default_counter_index +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x7ffbeac5 mlx4_set_vf_mac +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x813f199d mlx4_set_admin_guid +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x83471def mlx4_get_slave_default_vlan +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x840e59c3 mlx4_unicast_promisc_add +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x845510a4 mlx4_FLOW_STEERING_IB_UC_QP_RANGE +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x8518a961 mlx4_srq_arm +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x8623913b mlx4_flow_steer_promisc_add +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x8736adf2 mlx4_unregister_mac +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x88e3c748 mlx4_mr_hw_change_access +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x88f6a20e mlx4_mw_free +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x8d757f7f mlx4_vf_get_enable_smi_admin +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x8e04f698 mlx4_qp_to_ready +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x8f9f6c3e mlx4_mw_enable +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x8fd1ab5f mlx4_xrcd_alloc +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x8fe87df7 mlx4_unicast_promisc_remove +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x90581899 mlx4_unregister_vlan +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x93c64058 mlx4_mr_alloc +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x93c67576 mlx4_map_sw_to_hw_steering_id +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x9568d048 mlx4_multicast_promisc_remove +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x9643caaf mlx4_get_vf_config +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x9707624b mlx4_uar_free +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x97747a54 mlx4_vf_smi_enabled +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xa2fb156e mlx4_srq_lookup +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xa64f5412 mlx4_unbond +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xa6d6cfaf mlx4_phys_to_slave_port +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xa8e5b97c mlx4_update_qp +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xa95ad706 mlx4_map_sw_to_hw_steering_mode +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xab99d9fa mlx4_cq_modify +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xac3ccf8c mlx4_xrcd_free +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xacff1704 mlx4_alloc_cmd_mailbox +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xad44af54 mlx4_find_cached_mac +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xad473cba mlx4_pd_alloc +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xad5dc1d2 __mlx4_replace_mac +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xb285f550 mlx4_INIT_PORT +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xb4d5e00a mlx4_mr_free +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xb5fdca80 mlx4_counter_free +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xb6037463 mlx4_phys_to_slaves_pport_actv +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xbebc88af mlx4_flow_attach +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xc2abe5b3 mlx4_qp_free +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xc3b1c232 mlx4_bf_alloc +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xc456cbe2 mlx4_SYNC_TPT +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xc524d8d2 mlx4_unregister_interface +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xc627e8fe mlx4_cq_free +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xc99de8eb mlx4_multicast_attach +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xca2f844b mlx4_pd_free +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xcc0b169f mlx4_qp_remove +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xcde49bc7 mlx4_alloc_hwq_res +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xd05300f2 mlx4_find_cached_vlan +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xd144d3f8 mlx4_unicast_detach +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xd33a8ed9 mlx4_flow_steer_promisc_remove +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xd683164e mlx4_cq_resize +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xd6af3919 mlx4_set_vf_spoofchk +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xd7473a39 mlx4_config_vxlan_port +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xd86055b8 mlx4_bond +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xdb29c7a1 mlx4_uar_alloc +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xe019b142 mlx4_get_internal_clock_params +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xe0d6e5a8 mlx4_mr_hw_change_pd +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xe8065e2f mlx4_register_interface +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xee357d0a mlx4_mw_alloc +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xf1aab69f mlx4_mr_enable +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xf3de1ec5 mlx4_wol_write +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xf3e751a8 mlx4_qp_alloc +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xf812d61e mlx4_set_vf_rate +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xfcc73713 mlx4_register_mac +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x022a6beb mlx5_query_port_ets_rate_limit +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x04fbaa99 mlx5_query_hca_vport_system_image_guid +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 0x0a70f3cd mlx5_core_query_ib_ppcnt +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x0e3bd952 mlx5_set_port_mtu +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x100d2c7a mlx5_query_hca_vport_context +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x13de7e14 mlx5_query_port_wol +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x13e0b288 mlx5_nic_vport_query_local_lb +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x14ea8846 mlx5_modify_nic_vport_promisc +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x1a262529 mlx5_set_port_pfc +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x1aa4fe64 mlx5_query_port_admin_status +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x1fed8a68 mlx5_core_reserved_gids_count +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x26e4074c mlx5_set_port_tc_group +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x2f929859 mlx5_modify_port_ets_rate_limit +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x319a40cd mlx5_dm_sw_icm_dealloc +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x344ec918 mlx5_frag_buf_free +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x3469498a mlx5_query_hca_vport_node_guid +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x35bbed4f mlx5_set_port_caps +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x38643a3e mlx5_set_port_prio_tc +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x39456d20 mlx5_eswitch_get_total_vports +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x39b7cc79 mlx5_set_port_admin_status +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x3a765428 mlx5_nic_vport_unaffiliate_multiport +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x452d6263 mlx5_query_nic_vport_mtu +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x487caf50 mlx5_query_mac_address +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x4a96d52c mlx5_core_query_sq_state +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x4b5df067 mlx5_accel_esp_destroy_xfrm +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x4dadc7a8 mlx5_core_modify_hca_vport_context +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x4fe758c8 mlx5_query_port_oper_mtu +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x51be49f6 mlx5_nic_vport_enable_roce +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x59a2225d mlx5_query_port_tc_group +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x5d7e94f2 mlx5_query_nic_system_image_guid +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x5eb9dce2 mlx5_accel_ipsec_device_caps +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x6147d449 mlx5_accel_esp_modify_xfrm +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x62636770 mlx5_query_nic_vport_promisc +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x64e7fec0 mlx5_dm_sw_icm_alloc +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x6b96c5bb mlx5_query_nic_vport_min_inline +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x749743d3 mlx5_query_port_max_mtu +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x77e4d11d mlx5_core_query_vport_counter +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x7af92115 mlx5_set_port_pause +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x7e61d922 mlx5_query_nic_vport_qkey_viol_cntr +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x816c6ae5 mlx5_query_nic_vport_system_image_guid +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x82ebbfe7 mlx5_query_port_prio_tc +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x8db58e17 mlx5_query_port_tc_bw_alloc +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x906b24ca mlx5_nic_vport_update_local_lb +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x910cb99a mlx5_db_free +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x93246eb1 mlx5_query_hca_vport_pkey +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x94e8dd37 mlx5_modify_nic_vport_mtu +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xa1714867 mlx5_query_port_vl_hw_cap +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xa27e06ab mlx5_query_min_inline +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xa75f49d6 mlx5_fill_page_array +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xaa97dfdb mlx5_nic_vport_affiliate_multiport +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xabf0ee7c mlx5_query_hca_vport_gid +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xad335278 mlx5_query_port_pause +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xb28ce539 mlx5_accel_esp_create_xfrm +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xbe38f216 mlx5_modify_nic_vport_mac_address +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xc009d97c mlx5_query_port_pfc +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xc23a13ae mlx5_eswitch_mode +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xc64b9472 mlx5_query_port_link_width_oper +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xd255f90f mlx5_frag_buf_alloc_node +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xd8af01da mlx5_modify_nic_vport_mac_list +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xdfb58907 mlx5_query_port_ptys +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xe0013cfc mlx5_toggle_port_link +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xe10a21af mlx5_set_port_wol +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xe56618d6 mlx5_query_nic_vport_mac_list +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xe62b43a8 mlx5_query_module_eeprom +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xeb12227e mlx5_db_alloc +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xeb7b6808 mlx5_buf_free +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xf0c4e796 mlx5_query_nic_vport_node_guid +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xf19c85c7 mlx5_modify_nic_vport_vlans +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xf2da4427 mlx5_set_port_tc_bw_alloc +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xf5119dba mlx5_core_access_reg +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xfd007573 mlx5_query_nic_vport_mac_address +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xff5ce8dc mlx5_db_alloc_node +EXPORT_SYMBOL_GPL drivers/net/ethernet/microchip/encx24j600-regmap 0x822c55c0 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_common 0x1909738e ocelot_cls_flower_replace +EXPORT_SYMBOL_GPL drivers/net/ethernet/mscc/mscc_ocelot_common 0x61c3a540 ocelot_cls_flower_stats +EXPORT_SYMBOL_GPL drivers/net/ethernet/mscc/mscc_ocelot_common 0xcdbc4e0f ocelot_cls_flower_destroy +EXPORT_SYMBOL_GPL drivers/net/ethernet/qualcomm/qca_7k_common 0x0b28a9ad qcafrm_create_footer +EXPORT_SYMBOL_GPL drivers/net/ethernet/qualcomm/qca_7k_common 0x2b6ddf3f qcafrm_fsm_decode +EXPORT_SYMBOL_GPL drivers/net/ethernet/qualcomm/qca_7k_common 0x41da0375 qcafrm_create_header +EXPORT_SYMBOL_GPL drivers/net/ethernet/stmicro/stmmac/stmmac 0x11b12f93 stmmac_resume +EXPORT_SYMBOL_GPL drivers/net/ethernet/stmicro/stmmac/stmmac 0x2eb41008 stmmac_suspend +EXPORT_SYMBOL_GPL drivers/net/ethernet/stmicro/stmmac/stmmac 0x92d778bb stmmac_get_mac_addr +EXPORT_SYMBOL_GPL drivers/net/ethernet/stmicro/stmmac/stmmac 0x94a118fb stmmac_dvr_remove +EXPORT_SYMBOL_GPL drivers/net/ethernet/stmicro/stmmac/stmmac 0x9bb6fc68 stmmac_dvr_probe +EXPORT_SYMBOL_GPL drivers/net/ethernet/stmicro/stmmac/stmmac 0xd1cc24db stmmac_set_mac_addr +EXPORT_SYMBOL_GPL drivers/net/ethernet/stmicro/stmmac/stmmac-platform 0x004e9822 stmmac_pltfr_remove +EXPORT_SYMBOL_GPL drivers/net/ethernet/stmicro/stmmac/stmmac-platform 0x2331edff stmmac_get_platform_resources +EXPORT_SYMBOL_GPL drivers/net/ethernet/stmicro/stmmac/stmmac-platform 0x42014632 stmmac_remove_config_dt +EXPORT_SYMBOL_GPL drivers/net/ethernet/stmicro/stmmac/stmmac-platform 0x7804f4ed stmmac_pltfr_pm_ops +EXPORT_SYMBOL_GPL drivers/net/ethernet/stmicro/stmmac/stmmac-platform 0xa65f5c89 stmmac_probe_config_dt +EXPORT_SYMBOL_GPL drivers/net/ethernet/ti/am65-cpts 0x405b51c2 am65_cpts_ns_gettime +EXPORT_SYMBOL_GPL drivers/net/ethernet/ti/am65-cpts 0x480ae1bf am65_cpts_prep_tx_timestamp +EXPORT_SYMBOL_GPL drivers/net/ethernet/ti/am65-cpts 0x79294940 am65_cpts_create +EXPORT_SYMBOL_GPL drivers/net/ethernet/ti/am65-cpts 0x91fd3558 am65_cpts_rx_enable +EXPORT_SYMBOL_GPL drivers/net/ethernet/ti/am65-cpts 0x94519edc am65_cpts_tx_timestamp +EXPORT_SYMBOL_GPL drivers/net/ethernet/ti/am65-cpts 0xb60b988a am65_cpts_estf_disable +EXPORT_SYMBOL_GPL drivers/net/ethernet/ti/am65-cpts 0xbfc83e4d am65_cpts_estf_enable +EXPORT_SYMBOL_GPL drivers/net/ethernet/ti/am65-cpts 0xfca9b9d9 am65_cpts_phc_index +EXPORT_SYMBOL_GPL drivers/net/ethernet/wiznet/w5100 0x3ab4b536 w5100_probe +EXPORT_SYMBOL_GPL drivers/net/ethernet/wiznet/w5100 0x58f49908 w5100_ops_priv +EXPORT_SYMBOL_GPL drivers/net/ethernet/wiznet/w5100 0x6472165c w5100_pm_ops +EXPORT_SYMBOL_GPL drivers/net/ethernet/wiznet/w5100 0xee6e8bd2 w5100_remove +EXPORT_SYMBOL_GPL drivers/net/geneve 0x67b47bb2 geneve_dev_create_fb +EXPORT_SYMBOL_GPL drivers/net/ipvlan/ipvlan 0x0e7ef9b8 ipvlan_count_rx +EXPORT_SYMBOL_GPL drivers/net/ipvlan/ipvlan 0x2125ba34 ipvlan_link_setup +EXPORT_SYMBOL_GPL drivers/net/ipvlan/ipvlan 0x71e0d54f ipvlan_link_register +EXPORT_SYMBOL_GPL drivers/net/ipvlan/ipvlan 0x7c49ca23 ipvlan_link_delete +EXPORT_SYMBOL_GPL drivers/net/ipvlan/ipvlan 0xffc14ac7 ipvlan_link_new +EXPORT_SYMBOL_GPL drivers/net/macsec 0xd86fb7fd macsec_pn_wrapped +EXPORT_SYMBOL_GPL drivers/net/macvlan 0x03655620 macvlan_dellink +EXPORT_SYMBOL_GPL drivers/net/macvlan 0x531feaed macvlan_common_newlink +EXPORT_SYMBOL_GPL drivers/net/macvlan 0x978b94c5 macvlan_link_register +EXPORT_SYMBOL_GPL drivers/net/macvlan 0xbdb53735 macvlan_common_setup +EXPORT_SYMBOL_GPL drivers/net/net_failover 0x150fd5fa net_failover_destroy +EXPORT_SYMBOL_GPL drivers/net/net_failover 0xed3be08e net_failover_create +EXPORT_SYMBOL_GPL drivers/net/phy/bcm-phy-lib 0x061b0b73 bcm_phy_modify_exp +EXPORT_SYMBOL_GPL drivers/net/phy/bcm-phy-lib 0x1150a6b4 bcm_phy_get_strings +EXPORT_SYMBOL_GPL drivers/net/phy/bcm-phy-lib 0x1b79eec5 __bcm_phy_read_rdb +EXPORT_SYMBOL_GPL drivers/net/phy/bcm-phy-lib 0x1c8e5857 __bcm_phy_modify_rdb +EXPORT_SYMBOL_GPL drivers/net/phy/bcm-phy-lib 0x1dc0857b bcm_phy_downshift_get +EXPORT_SYMBOL_GPL drivers/net/phy/bcm-phy-lib 0x1e1692bf bcm_phy_read_rdb +EXPORT_SYMBOL_GPL drivers/net/phy/bcm-phy-lib 0x2f09abcd bcm_phy_modify_rdb +EXPORT_SYMBOL_GPL drivers/net/phy/bcm-phy-lib 0x359cf8e9 __bcm_phy_modify_exp +EXPORT_SYMBOL_GPL drivers/net/phy/bcm-phy-lib 0x3a277843 bcm_phy_cable_test_get_status +EXPORT_SYMBOL_GPL drivers/net/phy/bcm-phy-lib 0x3aaf6a23 bcm_phy_get_stats +EXPORT_SYMBOL_GPL drivers/net/phy/bcm-phy-lib 0x52b59fcd __bcm_phy_read_exp +EXPORT_SYMBOL_GPL drivers/net/phy/bcm-phy-lib 0x5723ff1b bcm_phy_write_shadow +EXPORT_SYMBOL_GPL drivers/net/phy/bcm-phy-lib 0x57dae3b7 bcm_phy_read_exp +EXPORT_SYMBOL_GPL drivers/net/phy/bcm-phy-lib 0x6be6af05 bcm_phy_get_sset_count +EXPORT_SYMBOL_GPL drivers/net/phy/bcm-phy-lib 0x74e27ed3 bcm_phy_enable_jumbo +EXPORT_SYMBOL_GPL drivers/net/phy/bcm-phy-lib 0x81baa8ee bcm_phy_config_intr +EXPORT_SYMBOL_GPL drivers/net/phy/bcm-phy-lib 0x874626c9 bcm_phy_write_exp +EXPORT_SYMBOL_GPL drivers/net/phy/bcm-phy-lib 0x9f0274b8 __bcm_phy_write_exp +EXPORT_SYMBOL_GPL drivers/net/phy/bcm-phy-lib 0xae734cbc bcm_phy_cable_test_get_status_rdb +EXPORT_SYMBOL_GPL drivers/net/phy/bcm-phy-lib 0xb628da28 bcm_phy_ack_intr +EXPORT_SYMBOL_GPL drivers/net/phy/bcm-phy-lib 0xc729444d bcm_phy_r_rc_cal_reset +EXPORT_SYMBOL_GPL drivers/net/phy/bcm-phy-lib 0xc9727b9d bcm_phy_set_eee +EXPORT_SYMBOL_GPL drivers/net/phy/bcm-phy-lib 0xcaa9dc93 bcm_phy_cable_test_start +EXPORT_SYMBOL_GPL drivers/net/phy/bcm-phy-lib 0xcb404cdb bcm_phy_write_misc +EXPORT_SYMBOL_GPL drivers/net/phy/bcm-phy-lib 0xd15de025 bcm_phy_read_misc +EXPORT_SYMBOL_GPL drivers/net/phy/bcm-phy-lib 0xe9837426 bcm_phy_downshift_set +EXPORT_SYMBOL_GPL drivers/net/phy/bcm-phy-lib 0xeba37f1b bcm_phy_enable_apd +EXPORT_SYMBOL_GPL drivers/net/phy/bcm-phy-lib 0xec778a2a bcm_phy_write_rdb +EXPORT_SYMBOL_GPL drivers/net/phy/bcm-phy-lib 0xf433d85b __bcm_phy_write_rdb +EXPORT_SYMBOL_GPL drivers/net/phy/bcm-phy-lib 0xf7c10fe8 bcm54xx_auxctl_read +EXPORT_SYMBOL_GPL drivers/net/phy/bcm-phy-lib 0xfb1219b7 bcm_phy_28nm_a0b0_afe_config_init +EXPORT_SYMBOL_GPL drivers/net/phy/bcm-phy-lib 0xfb52607c bcm_phy_read_shadow +EXPORT_SYMBOL_GPL drivers/net/phy/bcm-phy-lib 0xfbb9b13e bcm_phy_cable_test_start_rdb +EXPORT_SYMBOL_GPL drivers/net/phy/mdio-i2c 0x2b8cb816 mdio_i2c_alloc +EXPORT_SYMBOL_GPL drivers/net/phy/mdio-xpcs 0x5384535b mdio_xpcs_get_ops +EXPORT_SYMBOL_GPL drivers/net/phy/phylink 0x08213956 phylink_ethtool_get_wol +EXPORT_SYMBOL_GPL drivers/net/phy/phylink 0x1162b00e phylink_ethtool_ksettings_get +EXPORT_SYMBOL_GPL drivers/net/phy/phylink 0x12135396 phylink_mac_change +EXPORT_SYMBOL_GPL drivers/net/phy/phylink 0x15c4e3e2 phylink_ethtool_set_pauseparam +EXPORT_SYMBOL_GPL drivers/net/phy/phylink 0x2c8e28ee phylink_ethtool_get_eee +EXPORT_SYMBOL_GPL drivers/net/phy/phylink 0x42207dfd phylink_mii_c45_pcs_get_state +EXPORT_SYMBOL_GPL drivers/net/phy/phylink 0x57727285 phylink_ethtool_set_eee +EXPORT_SYMBOL_GPL drivers/net/phy/phylink 0x5fb6b35f phylink_helper_basex_speed +EXPORT_SYMBOL_GPL drivers/net/phy/phylink 0x62104126 phylink_ethtool_set_wol +EXPORT_SYMBOL_GPL drivers/net/phy/phylink 0x6eaebe60 phylink_mii_c22_pcs_set_advertisement +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 0x84a5a22d phylink_add_pcs +EXPORT_SYMBOL_GPL drivers/net/phy/phylink 0x86ff345f phylink_ethtool_ksettings_set +EXPORT_SYMBOL_GPL drivers/net/phy/phylink 0x911fcd6c phylink_start +EXPORT_SYMBOL_GPL drivers/net/phy/phylink 0x91e2ca8a phylink_create +EXPORT_SYMBOL_GPL drivers/net/phy/phylink 0x983276da phylink_disconnect_phy +EXPORT_SYMBOL_GPL drivers/net/phy/phylink 0xacb3b762 phylink_mii_c22_pcs_an_restart +EXPORT_SYMBOL_GPL drivers/net/phy/phylink 0xc1d15a4c phylink_set_port_modes +EXPORT_SYMBOL_GPL drivers/net/phy/phylink 0xd142df65 phylink_connect_phy +EXPORT_SYMBOL_GPL drivers/net/phy/phylink 0xdcb0a2c0 phylink_stop +EXPORT_SYMBOL_GPL drivers/net/phy/phylink 0xde66f4a7 phylink_mii_ioctl +EXPORT_SYMBOL_GPL drivers/net/phy/phylink 0xe34b144b phylink_of_phy_connect +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 0xf8d37631 phylink_mii_c22_pcs_get_state +EXPORT_SYMBOL_GPL drivers/net/phy/phylink 0xf8fe5642 phylink_ethtool_get_pauseparam +EXPORT_SYMBOL_GPL drivers/net/tap 0x101ccbc3 tap_queue_resize +EXPORT_SYMBOL_GPL drivers/net/tap 0x19a84c1b tap_get_minor +EXPORT_SYMBOL_GPL drivers/net/tap 0x4e1e430a tap_free_minor +EXPORT_SYMBOL_GPL drivers/net/tap 0x55864d6d tap_del_queues +EXPORT_SYMBOL_GPL drivers/net/tap 0x5ea73ad9 tap_create_cdev +EXPORT_SYMBOL_GPL drivers/net/tap 0x9ded59d4 tap_get_socket +EXPORT_SYMBOL_GPL drivers/net/tap 0xab874bc2 tap_handle_frame +EXPORT_SYMBOL_GPL drivers/net/tap 0xb775a9ce tap_get_ptr_ring +EXPORT_SYMBOL_GPL drivers/net/tap 0xcd8173f6 tap_destroy_cdev +EXPORT_SYMBOL_GPL drivers/net/usb/cdc_ether 0x289280c8 usbnet_cdc_unbind +EXPORT_SYMBOL_GPL drivers/net/usb/cdc_ether 0x4f7b3596 usbnet_cdc_status +EXPORT_SYMBOL_GPL drivers/net/usb/cdc_ether 0x68ee2395 usbnet_generic_cdc_bind +EXPORT_SYMBOL_GPL drivers/net/usb/cdc_ether 0x6c8ada54 usbnet_ether_cdc_bind +EXPORT_SYMBOL_GPL drivers/net/usb/cdc_ether 0x84e85b35 usbnet_cdc_bind +EXPORT_SYMBOL_GPL drivers/net/usb/cdc_ncm 0x0544b698 cdc_ncm_rx_verify_nth32 +EXPORT_SYMBOL_GPL drivers/net/usb/cdc_ncm 0x20889c14 cdc_ncm_fill_tx_frame +EXPORT_SYMBOL_GPL drivers/net/usb/cdc_ncm 0x39b89b93 cdc_ncm_change_mtu +EXPORT_SYMBOL_GPL drivers/net/usb/cdc_ncm 0x535b4963 cdc_ncm_tx_fixup +EXPORT_SYMBOL_GPL drivers/net/usb/cdc_ncm 0x80a5978a cdc_ncm_rx_verify_ndp16 +EXPORT_SYMBOL_GPL drivers/net/usb/cdc_ncm 0x84d8e33a cdc_ncm_select_altsetting +EXPORT_SYMBOL_GPL drivers/net/usb/cdc_ncm 0x87020bd4 cdc_ncm_rx_verify_ndp32 +EXPORT_SYMBOL_GPL drivers/net/usb/cdc_ncm 0xa2eeb587 cdc_ncm_bind_common +EXPORT_SYMBOL_GPL drivers/net/usb/cdc_ncm 0xb12e2829 cdc_ncm_rx_fixup +EXPORT_SYMBOL_GPL drivers/net/usb/cdc_ncm 0xd646bb31 cdc_ncm_unbind +EXPORT_SYMBOL_GPL drivers/net/usb/cdc_ncm 0xda9b1a54 cdc_ncm_rx_verify_nth16 +EXPORT_SYMBOL_GPL drivers/net/usb/rndis_host 0x1130ef67 rndis_tx_fixup +EXPORT_SYMBOL_GPL drivers/net/usb/rndis_host 0x1ca5ed83 generic_rndis_bind +EXPORT_SYMBOL_GPL drivers/net/usb/rndis_host 0x35138959 rndis_unbind +EXPORT_SYMBOL_GPL drivers/net/usb/rndis_host 0xaf1da5fe rndis_status +EXPORT_SYMBOL_GPL drivers/net/usb/rndis_host 0xc0ced4bc rndis_command +EXPORT_SYMBOL_GPL drivers/net/usb/rndis_host 0xcf03197d rndis_rx_fixup +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0x0d0e8da5 usbnet_write_cmd_async +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0x131f4373 usbnet_disconnect +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0x21e5344d usbnet_get_ethernet_addr +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0x2796a7bd usbnet_start_xmit +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0x372b311f usbnet_skb_return +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0x38c28db1 usbnet_tx_timeout +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0x3df13cbe usbnet_read_cmd +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0x3f7867a4 usbnet_probe +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0x48cd01e5 usbnet_unlink_rx_urbs +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0x48d1e56b usbnet_get_endpoints +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0x4aa8fdea usbnet_get_link +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0x4b332b38 usbnet_suspend +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0x52261308 usbnet_get_link_ksettings +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0x7819798e usbnet_get_stats64 +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0x7904fc67 usbnet_status_start +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0x79ae5f3c usbnet_nway_reset +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0x7cb36608 usbnet_get_msglevel +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0x8314cbc5 usbnet_status_stop +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0x88cf74dd usbnet_defer_kevent +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0x947a4f01 usbnet_set_link_ksettings +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0xa08b2e9c usbnet_resume +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0xa5260c62 usbnet_update_max_qlen +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0xae978e57 usbnet_stop +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0xc4678d0e usbnet_read_cmd_nopm +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0xc645c66e usbnet_write_cmd +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0xcbd2dda3 usbnet_write_cmd_nopm +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0xd50c2eca usbnet_pause_rx +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0xdd3ca9fb usbnet_open +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0xea3899cd usbnet_get_drvinfo +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0xed97017f usbnet_purge_paused_rxq +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0xf8cf4e77 usbnet_change_mtu +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0xf9c3eb14 usbnet_set_msglevel +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0xfa5660a8 usbnet_resume_rx +EXPORT_SYMBOL_GPL drivers/net/vxlan 0x30786155 vxlan_fdb_find_uc +EXPORT_SYMBOL_GPL drivers/net/vxlan 0x631deeb8 vxlan_dev_create +EXPORT_SYMBOL_GPL drivers/net/vxlan 0xbf8993f2 vxlan_fdb_replay +EXPORT_SYMBOL_GPL drivers/net/vxlan 0xe0ab39a8 vxlan_fdb_clear_offload +EXPORT_SYMBOL_GPL drivers/net/wimax/i2400m/i2400m 0x1c7ce195 i2400m_is_boot_barker +EXPORT_SYMBOL_GPL drivers/net/wimax/i2400m/i2400m 0x1ed0f1f5 i2400m_pre_reset +EXPORT_SYMBOL_GPL drivers/net/wimax/i2400m/i2400m 0x27a94e00 i2400m_release +EXPORT_SYMBOL_GPL drivers/net/wimax/i2400m/i2400m 0x33b39a7f i2400m_error_recovery +EXPORT_SYMBOL_GPL drivers/net/wimax/i2400m/i2400m 0x58e4e9f5 i2400m_cmd_enter_powersave +EXPORT_SYMBOL_GPL drivers/net/wimax/i2400m/i2400m 0x75a9d54f i2400m_tx_msg_get +EXPORT_SYMBOL_GPL drivers/net/wimax/i2400m/i2400m 0x8dd66f18 i2400m_dev_reset_handle +EXPORT_SYMBOL_GPL drivers/net/wimax/i2400m/i2400m 0x98984b86 i2400m_init +EXPORT_SYMBOL_GPL drivers/net/wimax/i2400m/i2400m 0xa4f6c38d i2400m_netdev_setup +EXPORT_SYMBOL_GPL drivers/net/wimax/i2400m/i2400m 0xa6a4ae73 i2400m_setup +EXPORT_SYMBOL_GPL drivers/net/wimax/i2400m/i2400m 0xb00b793c i2400m_bm_cmd_prepare +EXPORT_SYMBOL_GPL drivers/net/wimax/i2400m/i2400m 0xcb200744 i2400m_rx +EXPORT_SYMBOL_GPL drivers/net/wimax/i2400m/i2400m 0xdffbf0b4 i2400m_reset +EXPORT_SYMBOL_GPL drivers/net/wimax/i2400m/i2400m 0xe3e9b344 i2400m_dev_bootstrap +EXPORT_SYMBOL_GPL drivers/net/wimax/i2400m/i2400m 0xe651c0b1 i2400m_tx_msg_sent +EXPORT_SYMBOL_GPL drivers/net/wimax/i2400m/i2400m 0xe93bc148 i2400m_post_reset +EXPORT_SYMBOL_GPL drivers/net/wimax/i2400m/i2400m 0xf96b1338 i2400m_tx +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/ipw2x00/libipw 0x661cfea2 libipw_rx_any +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x03de97ff il_dealloc_bcast_stations +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x7a72cb51 _il_grab_nic_access +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x9b0a69e8 il_remove_station +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlegacy/iwlegacy 0xa0007d8e il_mac_tx_last_beacon +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlegacy/iwlegacy 0xf019f20c il_prep_station +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0x0b855f79 iwl_fw_lookup_notif_ver +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0x0c135d0a iwl_fw_start_dbg_conf +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0x0de2512b iwl_phy_db_init +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0x0e972dc5 iwl_fw_dbg_stop_restart_recording +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0x1332e4de iwl_abort_notification_waits +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0x18555b00 iwl_get_shared_mem_conf +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0x192e1fc6 iwl_dbg_tlv_time_point +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0x1dfe7429 iwl_write_prph +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0x22453c63 iwl_wait_notification +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0x23026fbf iwl_dbg_tlv_del_timers +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0x269bc38d iwl_write_direct32 +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0x2710c362 iwl_dump_desc_assert +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0x28acbdc3 iwl_clear_bits_prph +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0x2e31a6aa iwl_fw_runtime_init +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0x302f3e11 iwl_fw_dbg_collect_desc +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0x30720417 __iwl_err +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0x30b7ffcd iwl_fw_dbg_collect +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0x32224577 iwl_parse_nvm_mcc_info +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0x32c31fad iwl_validate_sar_geo_profile +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0x33b80a57 iwl_sar_geo_init +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0x348580d4 iwl_sar_select_profile +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0x35033c81 iwl_phy_db_free +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0x35af186c __iwl_info +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0x387b7672 iwl_fw_error_print_fseq_regs +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0x38eee769 iwl_read_direct32 +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0x3c5f6629 iwl_poll_direct_bit +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0x3e5cee98 iwl_write32 +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0x46acc95e iwl_fw_dbg_read_d3_debug_data +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0x475e84f1 iwl_read32 +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0x4a8e74d7 iwl_read_external_nvm +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0x4e339f10 iwl_set_bits_mask_prph +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0x4ebcaf2c iwl_fw_dbg_collect_trig +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0x4f0c9f18 iwl_get_nvm +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0x5802114f iwl_acpi_get_pwr_limit +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0x58e8a381 iwl_acpi_get_mcc +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0x5988395c iwl_notification_wait_init +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0x5c52e109 iwl_opmode_deregister +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0x5f7cfa66 iwl_read_eeprom +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0x646df436 iwl_force_nmi +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0x651a3de3 iwl_sar_geo_support +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0x65562ee0 iwl_write8 +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0x6d687f86 iwl_fw_dbg_stop_sync +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0x72b9ac66 iwl_acpi_get_wifi_pkg +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0x776221bf iwl_send_phy_db_data +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0x7822aa86 iwl_parse_nvm_data +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0x7a8bf896 __iwl_dbg +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0x822bf76d iwl_set_bits_prph +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0x8458c486 iwl_opmode_register +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0x875bf097 iwl_sar_get_wgds_table +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0x87d92f0c iwl_free_fw_paging +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0x934207df iwl_sar_get_wrds_table +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0x9c928d2f __iwl_crit +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0x9e75b751 iwl_set_soc_latency +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0xa5354c29 iwl_get_cmd_string +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0xa9f05394 iwlwifi_mod_params +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0xaab0be4c iwl_write_prph_no_grab +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0xb035d29a iwl_fw_dbg_error_collect +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0xbc8dad9d iwl_cmd_groups_verify_sorted +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0xc3cc26b1 iwl_sar_set_profile +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0xc6256d7e iwl_write_prph64_no_grab +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0xcae2ad1b iwl_fw_runtime_resume +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0xcd83fe8e iwl_fw_runtime_suspend +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0xcd914e00 iwl_fw_lookup_cmd_ver +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0xce0c6460 iwl_phy_db_set_section +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0xceb06465 iwl_acpi_get_tas +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0xcec18e34 iwl_write64 +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0xd07d854e iwl_acpi_get_eckv +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0xd606a321 iwl_write_direct64 +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0xd6866cf4 iwl_acpi_get_object +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0xdb3a7128 iwl_trans_send_cmd +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0xdf2ff3a9 iwl_parse_eeprom_data +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0xe0eb5838 iwl_init_notification_wait +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0xe2753e69 iwl_sar_get_ewrd_table +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0xe75b7e77 iwl_notification_wait +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0xe95372c6 iwl_init_paging +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0xea105320 iwl_read_prph +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0xea1b26fc iwl_nvm_fixups +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0xef274096 iwl_poll_bit +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0xf7b16cbb iwl_finish_nic_init +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0xf88964e4 iwl_remove_notification +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0xfa0373cb iwl_acpi_get_dsm_u8 +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0xfa7e6963 iwl_read_prph_no_grab +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0xfd7bf910 __iwl_warn +EXPORT_SYMBOL_GPL drivers/net/wireless/intersil/p54/p54common 0x1a3b2fa4 p54_parse_eeprom +EXPORT_SYMBOL_GPL drivers/net/wireless/intersil/p54/p54common 0x1bb948ae p54_rx +EXPORT_SYMBOL_GPL drivers/net/wireless/intersil/p54/p54common 0x4058120c p54_register_common +EXPORT_SYMBOL_GPL drivers/net/wireless/intersil/p54/p54common 0x4f8ad39c p54_unregister_common +EXPORT_SYMBOL_GPL drivers/net/wireless/intersil/p54/p54common 0x53a27d32 p54_free_skb +EXPORT_SYMBOL_GPL drivers/net/wireless/intersil/p54/p54common 0x9cc22c04 p54_free_common +EXPORT_SYMBOL_GPL drivers/net/wireless/intersil/p54/p54common 0xab0296a0 p54_parse_firmware +EXPORT_SYMBOL_GPL drivers/net/wireless/intersil/p54/p54common 0xb129cb8f p54_read_eeprom +EXPORT_SYMBOL_GPL drivers/net/wireless/intersil/p54/p54common 0xc80c6c77 p54_init_common +EXPORT_SYMBOL_GPL drivers/net/wireless/marvell/libertas/libertas 0x034a1de3 lbs_get_firmware +EXPORT_SYMBOL_GPL drivers/net/wireless/marvell/libertas/libertas 0x1ce0f6af lbs_suspend +EXPORT_SYMBOL_GPL drivers/net/wireless/marvell/libertas/libertas 0x25377a7c lbs_stop_card +EXPORT_SYMBOL_GPL drivers/net/wireless/marvell/libertas/libertas 0x25b5354c lbs_remove_card +EXPORT_SYMBOL_GPL drivers/net/wireless/marvell/libertas/libertas 0x4286f496 lbs_host_to_card_done +EXPORT_SYMBOL_GPL drivers/net/wireless/marvell/libertas/libertas 0x42cb5fc4 lbs_process_rxed_packet +EXPORT_SYMBOL_GPL drivers/net/wireless/marvell/libertas/libertas 0x4fbc89f6 lbs_resume +EXPORT_SYMBOL_GPL drivers/net/wireless/marvell/libertas/libertas 0x5fdf38b8 lbs_disablemesh +EXPORT_SYMBOL_GPL drivers/net/wireless/marvell/libertas/libertas 0x65e9fc2e lbs_get_firmware_async +EXPORT_SYMBOL_GPL drivers/net/wireless/marvell/libertas/libertas 0x94bc9be1 lbs_add_card +EXPORT_SYMBOL_GPL drivers/net/wireless/marvell/libertas/libertas 0x9b5d363e lbs_send_tx_feedback +EXPORT_SYMBOL_GPL drivers/net/wireless/marvell/libertas/libertas 0x9d219792 __lbs_cmd +EXPORT_SYMBOL_GPL drivers/net/wireless/marvell/libertas/libertas 0xab7e66bd lbs_notify_command_response +EXPORT_SYMBOL_GPL drivers/net/wireless/marvell/libertas/libertas 0xac61b751 lbs_queue_event +EXPORT_SYMBOL_GPL drivers/net/wireless/marvell/libertas/libertas 0xd52fe823 lbs_host_sleep_cfg +EXPORT_SYMBOL_GPL drivers/net/wireless/marvell/libertas/libertas 0xda6777af lbs_start_card +EXPORT_SYMBOL_GPL drivers/net/wireless/marvell/libertas/libertas 0xf3d1820e lbs_cmd_copyback +EXPORT_SYMBOL_GPL drivers/net/wireless/marvell/libertas/libertas 0xf64277de lbs_debug +EXPORT_SYMBOL_GPL drivers/net/wireless/marvell/libertas_tf/libertas_tf 0x2145eab9 __lbtf_cmd +EXPORT_SYMBOL_GPL drivers/net/wireless/marvell/libertas_tf/libertas_tf 0x36b09c55 lbtf_cmd_copyback +EXPORT_SYMBOL_GPL drivers/net/wireless/marvell/libertas_tf/libertas_tf 0x46390c0b lbtf_send_tx_feedback +EXPORT_SYMBOL_GPL drivers/net/wireless/marvell/libertas_tf/libertas_tf 0x608505e4 lbtf_add_card +EXPORT_SYMBOL_GPL drivers/net/wireless/marvell/libertas_tf/libertas_tf 0xb091c1db lbtf_rx +EXPORT_SYMBOL_GPL drivers/net/wireless/marvell/libertas_tf/libertas_tf 0xb90cc78d 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 0xf19a3ddb lbtf_remove_card +EXPORT_SYMBOL_GPL drivers/net/wireless/marvell/libertas_tf/libertas_tf 0xf2e54917 lbtf_cmd_response_rx +EXPORT_SYMBOL_GPL drivers/net/wireless/marvell/mwifiex/mwifiex 0x2cf61a79 mwifiex_enable_hs +EXPORT_SYMBOL_GPL drivers/net/wireless/marvell/mwifiex/mwifiex 0x40e8086c mwifiex_drv_info_dump +EXPORT_SYMBOL_GPL drivers/net/wireless/marvell/mwifiex/mwifiex 0x430b4676 mwifiex_process_sleep_confirm_resp +EXPORT_SYMBOL_GPL drivers/net/wireless/marvell/mwifiex/mwifiex 0x4505d432 mwifiex_add_card +EXPORT_SYMBOL_GPL drivers/net/wireless/marvell/mwifiex/mwifiex 0x5bc101d7 mwifiex_handle_rx_packet +EXPORT_SYMBOL_GPL drivers/net/wireless/marvell/mwifiex/mwifiex 0x777ca4c3 mwifiex_add_virtual_intf +EXPORT_SYMBOL_GPL drivers/net/wireless/marvell/mwifiex/mwifiex 0x7a29a3fa mwifiex_prepare_fw_dump_info +EXPORT_SYMBOL_GPL drivers/net/wireless/marvell/mwifiex/mwifiex 0x7d5a75ef mwifiex_shutdown_sw +EXPORT_SYMBOL_GPL drivers/net/wireless/marvell/mwifiex/mwifiex 0x83192ed5 mwifiex_remove_card +EXPORT_SYMBOL_GPL drivers/net/wireless/marvell/mwifiex/mwifiex 0x83b36c71 mwifiex_del_virtual_intf +EXPORT_SYMBOL_GPL drivers/net/wireless/marvell/mwifiex/mwifiex 0x86129f5a mwifiex_init_shutdown_fw +EXPORT_SYMBOL_GPL drivers/net/wireless/marvell/mwifiex/mwifiex 0x8fe0ed6c mwifiex_upload_device_dump +EXPORT_SYMBOL_GPL drivers/net/wireless/marvell/mwifiex/mwifiex 0x960c50a0 _mwifiex_dbg +EXPORT_SYMBOL_GPL drivers/net/wireless/marvell/mwifiex/mwifiex 0x9e61f76b mwifiex_deauthenticate_all +EXPORT_SYMBOL_GPL drivers/net/wireless/marvell/mwifiex/mwifiex 0xa18f7095 mwifiex_queue_main_work +EXPORT_SYMBOL_GPL drivers/net/wireless/marvell/mwifiex/mwifiex 0xad475a5a mwifiex_write_data_complete +EXPORT_SYMBOL_GPL drivers/net/wireless/marvell/mwifiex/mwifiex 0xbdea0713 mwifiex_process_hs_config +EXPORT_SYMBOL_GPL drivers/net/wireless/marvell/mwifiex/mwifiex 0xc05600fb mwifiex_fw_dump_event +EXPORT_SYMBOL_GPL drivers/net/wireless/marvell/mwifiex/mwifiex 0xc9ef1893 mwifiex_reinit_sw +EXPORT_SYMBOL_GPL drivers/net/wireless/marvell/mwifiex/mwifiex 0xcecb35bf mwifiex_multi_chan_resync +EXPORT_SYMBOL_GPL drivers/net/wireless/marvell/mwifiex/mwifiex 0xd4dad9f3 mwifiex_alloc_dma_align_buf +EXPORT_SYMBOL_GPL drivers/net/wireless/marvell/mwifiex/mwifiex 0xd66ac26f mwifiex_disable_auto_ds +EXPORT_SYMBOL_GPL drivers/net/wireless/marvell/mwifiex/mwifiex 0xd95fb853 mwifiex_cancel_hs +EXPORT_SYMBOL_GPL drivers/net/wireless/marvell/mwifiex/mwifiex 0xe9b1b37e mwifiex_dnld_fw +EXPORT_SYMBOL_GPL drivers/net/wireless/marvell/mwifiex/mwifiex 0xeca32b77 mwifiex_main_process +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0x01f7d7e0 mt76_set_irq_mask +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0x056a90d6 mt76_insert_ccmp_hdr +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0x0d1ea83d mt76_set_channel +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0x1026ce88 mt76_wake_tx_queue +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0x109f0add mt76_unregister_phy +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0x1362434a mt76_seq_puts_array +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0x143e28c2 mt76_txq_remove +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0x14b70194 mt76_rx_poll_complete +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0x15f6099f __mt76_poll_msec +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0x1b1278af mt76_mcu_rx_event +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0x2df48f7f mt76_tx_status_skb_add +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0x2e867b21 mt76_sta_state +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0x36a73cd5 mt76_tx_complete_skb +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0x37e8502a mt76_csa_finish +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0x3c75d123 mt76_sta_pre_rcu_remove +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0x3ff5c6a6 mt76_register_device +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0x44e45c07 mt76_rx +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0x4862e553 mt76_get_txpower +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0x48c538a8 mt76_sw_scan_complete +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0x522eeb98 mt76_txq_init +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0x57559cf7 mt76_dma_cleanup +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0x584a3407 mt76_stop_tx_queues +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0x599be83d mt76_csa_check +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0x5c767054 mt76_txq_schedule_all +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0x61e6b2cf mt76_alloc_device +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0x6b4b2fa3 __mt76_poll +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0x6efd8dfc mt76_register_debugfs +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0x6fe32156 mt76_update_survey +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0x75633288 mt76_pci_disable_aspm +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0x7ba01f5a mt76_tx_status_check +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0x87a5a527 mt76_dma_attach +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0x89245f38 mt76_mcu_get_response +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0x8e65927a mt76_get_antenna +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0x933eba51 mt76_free_device +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0x9498bb12 mt76_mcu_msg_alloc +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0x9b99ebd9 mt76_put_txwi +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0xa0a77849 mt76_queues_read +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0xa27a5592 mt76_tx_status_skb_get +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0xa62c3b8c mt76_tx +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0xa6c6ba88 mt76_txq_schedule +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0xa7a01a23 mt76_tx_status_unlock +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0xaf905228 __mt76_sta_remove +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0xb5d163d0 mt76_tx_status_lock +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0xb7b762d2 mt76_rx_aggr_start +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0xb90c37e9 mt76_sw_scan +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0xbad0fd61 mt76_eeprom_init +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0xc00fb67c mt76_register_phy +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0xc5fc58a3 __tracepoint_dev_irq +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0xc6634315 mt76_ac_to_hwq +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0xc71e148d mt76_set_tim +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0xc7439ae2 mt76_eeprom_override +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0xd10d43af mt76_mmio_init +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0xd4aa918b mt76_get_rate +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0xd863e17f mt76_rx_aggr_stop +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0xdbaf1db5 __tracepoint_mac_txdone +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0xe175d2dc mt76_set_stream_caps +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0xe40b66ef mt76_wcid_alloc +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0xf07229f8 mt76_alloc_phy +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0xf536cec0 mt76_tx_status_skb_done +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0xf73915ae mt76_get_survey +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0xf792244c mt76_get_min_avg_rssi +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0xfccf1206 mt76_release_buffered_frames +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0xfe318fb2 mt76_has_tx_pending +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0xff8ab41d mt76_unregister_device +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76-usb 0x0a8164dd mt76u_alloc_queues +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76-usb 0x23f8df3f mt76u_single_wr +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76-usb 0x305fd9a5 mt76u_init +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76-usb 0x416456a0 mt76u_skb_dma_info +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76-usb 0x85661e8a mt76u_alloc_mcu_queue +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76-usb 0x8cf4cd5f mt76u_resume_rx +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76-usb 0x9d8ceab9 mt76u_stop_rx +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76-usb 0xdd85cfac mt76u_stop_tx +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76-usb 0xdfd0b841 mt76u_deinit +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76-usb 0xeea8e155 mt76u_queues_deinit +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76-usb 0xfeb26407 mt76u_vendor_request +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt7615/mt7615-common 0x0212d16f mt7615_firmware_own +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt7615/mt7615-common 0x057c4d49 mt7615_rates +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt7615/mt7615-common 0x109ebe4e mt7615_mac_sta_remove +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt7615/mt7615-common 0x198df40d mt7615_mcu_fill_msg +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt7615/mt7615-common 0x22790b6e mt7615_wait_for_mcu_init +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt7615/mt7615-common 0x2a622d9a mt7615_init_txpower +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt7615/mt7615-common 0x2ab0d74b mt7615_mcu_msg_send +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt7615/mt7615-common 0x2d8dee82 mt7615_mcu_exit +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt7615/mt7615-common 0x33b7b33f mt7615_update_channel +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt7615/mt7615-common 0x39607245 mt7615_mac_wtbl_update_cipher +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt7615/mt7615-common 0x465087a7 __mt7663_load_firmware +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt7615/mt7615-common 0x5de9b31d mt7615_phy_init +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt7615/mt7615-common 0x5faa8b71 mt7615_init_device +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt7615/mt7615-common 0x72081abc mt7615_dma_reset +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt7615/mt7615-common 0x7489ba10 mt7615_mcu_set_eeprom +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt7615/mt7615-common 0x7e91724a mt7615_unregister_ext_phy +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt7615/mt7615-common 0x8522a332 mt7615_mac_write_txwi +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt7615/mt7615-common 0x966b5454 mt7615_mcu_init +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt7615/mt7615-common 0xa4740ea5 mt7615_mcu_set_hif_suspend +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt7615/mt7615-common 0xa586e364 mt7615_mac_sta_add +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt7615/mt7615-common 0xac63a13a mt7615_eeprom_init +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt7615/mt7615-common 0xad812eed mt7615_mac_init +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt7615/mt7615-common 0xb1da5840 mt7615_driver_own +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt7615/mt7615-common 0xb49e667a mt7615_ops +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt7615/mt7615-common 0xbb16ef0b mt7615_sta_ps +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt7615/mt7615-common 0xc0e69c27 mt7615_mcu_restart +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt7615/mt7615-common 0xc155481c mt7615_mac_sta_poll +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt7615/mt7615-common 0xc5007584 mt7615_mcu_del_wtbl_all +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt7615/mt7615-common 0xc7c9d318 mt7615_mac_wtbl_update_pk +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt7615/mt7615-common 0xd84ed939 mt7615_mac_set_rates +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt7615/mt7615-common 0xe3d9bbbb mt7615_mcu_wait_response +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt7615/mt7615-common 0xe494ccb6 mt7615_check_offload_capability +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt7615/mt7615-common 0xe587f1bf mt7615_mac_wtbl_update_key +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt7615/mt7615-common 0xe80d151a mt7615_register_ext_phy +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt7615/mt7615-common 0xf25fd7b3 mt7615_init_debugfs +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt7615/mt7615-common 0xf5371011 mt7615_queue_rx_skb +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt7615/mt7615-common 0xfeb18546 mt7615_txp_skb_unmap +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x0/mt76x0-common 0x1eb828ca mt76x0_config +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x0/mt76x0-common 0x37dbfcfe mt76x0_register_device +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x0/mt76x0-common 0x50aec901 mt76x0_chip_onoff +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x0/mt76x0-common 0x7ee947b7 mt76x0_mac_stop +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x0/mt76x0-common 0x9bbed328 mt76x0_phy_calibrate +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x0/mt76x0-common 0xf66bf048 mt76x0_init_hardware +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0x00ac8e71 mt76x02_sw_scan_complete +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0x00b87699 mt76x02_conf_tx +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0x0462ce68 mt76x02_add_rate_power_offset +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0x0908a895 mt76x02_dma_cleanup +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0x0d4023ec mt76x02_get_max_rate_power +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0x155ce5d2 mt76x02_phy_set_txpower +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0x195fed07 mt76x02_enqueue_buffered_bc +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0x1ce357f9 mt76x02_get_lna_gain +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0x1db4b1a4 mt76x02_set_tx_ackto +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0x2114fed6 mt76x02_config_mac_addr_list +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0x21aa428d mt76x02_mac_write_txwi +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0x240609fa mt76x02_edcca_init +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0x2867591e mt76x02_set_coverage_class +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0x29bacf1f mt76x02_init_agc_gain +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0x29d1f30c mt76x02_mcu_set_radio_state +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0x2b4fa7cf mt76x02_reconfig_complete +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0x2cba910a mt76x02_queue_rx_skb +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0x307d79eb mt76x02_phy_set_bw +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0x32ea36b4 mt76x02_dma_init +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0x34a63635 mt76x02_phy_adjust_vga_gain +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0x35d2834d mt76x02_limit_rate_power +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0x3b9c249b mt76x02_eeprom_copy +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0x40203545 mt76x02_init_debugfs +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0x4aefc719 mt76x02_phy_set_rxpath +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0x501e3599 mt76x02e_init_beacon_config +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0x5bd84fd5 mt76x02_rates +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0x5eb6dcbd mt76x02_configure_filter +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0x604cde78 mt76x02_set_ethtool_fwver +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0x60e8ff49 mt76x02_set_rts_threshold +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0x64edbf62 mt76x02_mac_reset_counters +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0x658c316d mt76x02_mac_setaddr +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0x69441684 mt76x02_ext_pa_enabled +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0x6c1b9708 mt76x02_sta_remove +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0x6e203bad mt76x02_eeprom_parse_hw_cap +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0x728296ff mt76x02_mcu_function_select +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0x7574d69b mt76x02_update_beacon_iter +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0x79d8316a mt76x02_tx_set_txpwr_auto +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0x7b9b5287 mt76x02_tx_complete_skb +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0x7eb3f98f mt76x02_remove_interface +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0x7f1a67a1 mt76x02_set_key +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0x8648fe75 mt76x02_tx_status_data +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0x890d326a mt76x02_get_rx_gain +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0x896e536a mt76x02_resync_beacon_timer +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0x89cdf623 mt76x02_tx_prepare_skb +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0x8c903499 mt76x02_sta_rate_tbl_update +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0x8e876dff mt76x02_remove_hdr_pad +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0x91d5b9ee mt76x02_irq_handler +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0x9bf79878 mt76x02_mcu_cleanup +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0x9f09336d mt76x02_mcu_calibrate +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0x9f4b70c3 mt76x02_init_beacon_config +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0xa8026581 mt76x02_init_device +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0xad9bf727 mt76x02_phy_dfs_adjust_agc +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0xb4426ddc mt76x02_get_efuse_data +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0xbd26932b mt76x02_dfs_init_params +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0xbdc829af mt76x02_rx_poll_complete +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0xc016ed78 mt76x02_phy_set_txdac +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0xc05bce67 mt76x02_bss_info_changed +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0xc0c832ea mt76x02_mac_wcid_setup +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0xc5a26efe mt76x02_sta_ps +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0xc60cccef mt76x02_ampdu_action +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0xcad2ea2f mt76x02_sta_add +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0xcf9bdd92 mt76x02_mac_shared_key_setup +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0xd27f4502 mt76x02_phy_set_band +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0xd67eda3c mt76x02_mcu_msg_send +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0xd80351af mt76x02_update_channel +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0xdc69e3d6 mt76x02_add_interface +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0xe32dc586 mt76x02_tx +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0xe8e049d9 mt76x02_mac_cc_reset +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0xee51a3a4 mt76x02_mac_start +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0xfce53e28 mt76x02_mac_set_beacon +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0xfe8e844a mt76x02_dma_disable +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-usb 0x0c814b2a mt76x02u_tx_complete_skb +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-usb 0x0e54d40a mt76x02u_mcu_fw_send_data +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-usb 0x41d7470d mt76x02u_mcu_fw_reset +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-usb 0x67db7be2 mt76x02u_init_beacon_config +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-usb 0x7be2a479 mt76x02u_init_mcu +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-usb 0x8ea3849e mt76x02u_mac_start +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-usb 0x9eb5e00b mt76x02u_exit_beacon_config +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-usb 0xe5ac2124 mt76x02u_tx_prepare_skb +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x2/mt76x2-common 0x1f648059 mt76x2_mcu_init_gain +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x2/mt76x2-common 0x378ea922 mt76x2_mcu_load_cr +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x2/mt76x2-common 0x42824af8 mt76x2_phy_set_txpower +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x2/mt76x2-common 0x4c820de4 mt76x2_read_rx_gain +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x2/mt76x2-common 0x582dde9a mt76x2_eeprom_init +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x2/mt76x2-common 0x5c7ffabe mt76x2_phy_update_channel_gain +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x2/mt76x2-common 0x62655de5 mt76x2_apply_gain_adj +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x2/mt76x2-common 0x8015902d mt76x2_mac_stop +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x2/mt76x2-common 0x8a1abf9d mt76x2_get_power_info +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x2/mt76x2-common 0xa0742821 mt76x2_phy_set_txpower_regs +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x2/mt76x2-common 0xa6471bcc mt76x2_mcu_set_channel +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x2/mt76x2-common 0xb6624b5d mt76_write_mac_initvals +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x2/mt76x2-common 0xb91b6311 mt76x2_get_temp_comp +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x2/mt76x2-common 0xbf65343f mt76x2_phy_tssi_compensate +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x2/mt76x2-common 0xd11add0f mt76x2_mcu_tssi_comp +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x2/mt76x2-common 0xebd16c4f mt76x2_init_txpower +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x2/mt76x2-common 0xf69f4ebe mt76x2_reset_wlan +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x2/mt76x2-common 0xf79e4604 mt76x2_get_rate_power +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x2/mt76x2-common 0xfbb12c3d mt76x2_configure_tx_delay +EXPORT_SYMBOL_GPL drivers/net/wireless/quantenna/qtnfmac/qtnfmac 0x19f28fd7 qtnf_update_tx_stats +EXPORT_SYMBOL_GPL drivers/net/wireless/quantenna/qtnfmac/qtnfmac 0x31fab83c qtnf_chipid_to_string +EXPORT_SYMBOL_GPL drivers/net/wireless/quantenna/qtnfmac/qtnfmac 0x8a0e1d23 qtnf_wake_all_queues +EXPORT_SYMBOL_GPL drivers/net/wireless/quantenna/qtnfmac/qtnfmac 0x8ce11479 qtnf_trans_handle_rx_ctl_packet +EXPORT_SYMBOL_GPL drivers/net/wireless/quantenna/qtnfmac/qtnfmac 0xad42fae6 qtnf_update_rx_stats +EXPORT_SYMBOL_GPL drivers/net/wireless/quantenna/qtnfmac/qtnfmac 0xd8c79a1c qtnf_core_detach +EXPORT_SYMBOL_GPL drivers/net/wireless/quantenna/qtnfmac/qtnfmac 0xe1d6aa95 qtnf_core_attach +EXPORT_SYMBOL_GPL drivers/net/wireless/quantenna/qtnfmac/qtnfmac 0xe7d76a97 qtnf_get_debugfs_dir +EXPORT_SYMBOL_GPL drivers/net/wireless/quantenna/qtnfmac/qtnfmac 0xf73ae9b0 qtnf_classify_skb +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2800lib 0x0322f989 rt2800_clear_beacon +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2800lib 0x03c47986 rt2800_ampdu_action +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2800lib 0x06423f6c rt2800_enable_radio +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2800lib 0x0657890e rt2800_write_beacon +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2800lib 0x0cab9a1e rt2800_disable_wpdma +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2800lib 0x108e670b rt2800_config_intf +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2800lib 0x134654df rt2800_write_tx_data +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2800lib 0x226518f8 rt2800_efuse_detect +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2800lib 0x278ab04f rt2800_sta_remove +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2800lib 0x28e7f062 rt2800_wait_csr_ready +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2800lib 0x2eb790c8 rt2800_gain_calibration +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2800lib 0x400aff0f rt2800_read_eeprom_efuse +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2800lib 0x4c736c93 rt2800_config +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2800lib 0x4d4edfba rt2800_link_stats +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2800lib 0x4d6b143c rt2800_config_shared_key +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2800lib 0x501d95de rt2800_config_erp +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2800lib 0x517a3d89 rt2800_config_pairwise_key +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2800lib 0x5219d5af rt2800_get_key_seq +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2800lib 0x5b59ffb0 rt2800_pre_reset_hw +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2800lib 0x66280237 rt2800_set_rts_threshold +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2800lib 0x75c3ea98 rt2800_txdone +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2800lib 0x80145f3e rt2800_vco_calibration +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2800lib 0x8a47064a rt2800_disable_radio +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2800lib 0x8c24dc0f rt2800_watchdog +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2800lib 0x8d72538e rt2800_txstatus_timeout +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2800lib 0x8dc82db7 rt2800_rfkill_poll +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2800lib 0x95fcfc7c rt2800_txstatus_pending +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2800lib 0x9bd6919a rt2800_conf_tx +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2800lib 0x9c4294e3 rt2800_probe_hw +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2800lib 0xa02820f8 rt2800_get_survey +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2800lib 0xb05e6eb5 rt2800_sta_add +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2800lib 0xc52a783a rt2800_mcu_request +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2800lib 0xc9241399 rt2800_wait_wpdma_ready +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2800lib 0xd0e5362f rt2800_txdone_nostatus +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2800lib 0xd3c1556e rt2800_get_txwi_rxwi_size +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2800lib 0xd461f2f7 rt2800_config_filter +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2800lib 0xda0ac839 rt2800_txdone_entry +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2800lib 0xe91f82da rt2800_link_tuner +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2800lib 0xeec36691 rt2800_check_firmware +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2800lib 0xf070c92c rt2800_process_rxwi +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2800lib 0xfb3b8061 rt2800_load_firmware +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2800lib 0xfdc3fb72 rt2800_config_ant +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2800lib 0xfe3b59c8 rt2800_reset_tuner +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2800lib 0xfe7280ab rt2800_get_tsf +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2800mmio 0x01cf89bd rt2800mmio_kick_queue +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2800mmio 0x0fad1430 rt2800mmio_pretbtt_tasklet +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2800mmio 0x16118cec rt2800mmio_enable_radio +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2800mmio 0x23f35526 rt2800mmio_queue_init +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2800mmio 0x2505789d rt2800mmio_tbtt_tasklet +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2800mmio 0x3a3c2cc5 rt2800mmio_flush_queue +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2800mmio 0x5fa4db64 rt2800mmio_interrupt +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2800mmio 0x75ee0cc8 rt2800mmio_fill_rxdone +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2800mmio 0x78fd66f7 rt2800mmio_init_registers +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2800mmio 0x8508380f rt2800mmio_get_txwi +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2800mmio 0x86fc1259 rt2800mmio_probe_hw +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2800mmio 0x91f738c5 rt2800mmio_clear_entry +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2800mmio 0x92c0bcd1 rt2800mmio_rxdone_tasklet +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2800mmio 0x9828b3fb rt2800mmio_get_dma_done +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2800mmio 0x9b4ebbf8 rt2800mmio_stop_queue +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2800mmio 0x9b909fcf rt2800mmio_toggle_irq +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2800mmio 0xb038b0f2 rt2800mmio_start_queue +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2800mmio 0xb93f531f rt2800mmio_write_tx_desc +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2800mmio 0xc6a1455e rt2800mmio_autowake_tasklet +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2800mmio 0xe28f94c7 rt2800mmio_txstatus_tasklet +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2800mmio 0xf185d69c rt2800mmio_init_queues +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2800mmio 0xfad9279c rt2800mmio_get_entry_state +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00lib 0x01d37dc2 rt2x00mac_set_key +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00lib 0x0cbaefbd rt2x00mac_set_antenna +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00lib 0x0f410c96 rt2x00lib_pretbtt +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00lib 0x1354d49b rt2x00mac_reconfig_complete +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00lib 0x167ad209 rt2x00lib_suspend +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00lib 0x1f886db0 rt2x00mac_tx_frames_pending +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00lib 0x23e239aa rt2x00mac_get_antenna +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00lib 0x35a047f1 rt2x00mac_sw_scan_complete +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00lib 0x48cfc124 rt2x00lib_get_bssidx +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00lib 0x49914494 rt2x00lib_txdone +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00lib 0x49c00577 rt2x00queue_flush_queues +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00lib 0x4a43b164 rt2x00queue_for_each_entry +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00lib 0x4bbf300f rt2x00mac_remove_interface +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00lib 0x4c986173 rt2x00queue_stop_queue +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00lib 0x4ef156f6 rt2x00mac_get_ringparam +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00lib 0x4f98a73c rt2x00lib_dmastart +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00lib 0x56e1a5b3 rt2x00mac_get_stats +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00lib 0x5c3d7ca5 rt2x00mac_start +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00lib 0x64d9a4fe rt2x00lib_beacondone +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00lib 0x65e85639 rt2x00mac_bss_info_changed +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00lib 0x7f8e1644 rt2x00lib_set_mac_address +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00lib 0x86862cb9 rt2x00mac_add_interface +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00lib 0x8e568eae rt2x00lib_txdone_noinfo +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00lib 0x9051c38c rt2x00lib_resume +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00lib 0x90705b45 rt2x00mac_rfkill_poll +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00lib 0x92d5e24f rt2x00lib_probe_dev +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00lib 0x93639fc6 rt2x00mac_sw_scan_start +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00lib 0x97aac0f3 rt2x00lib_remove_dev +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00lib 0x98ac3ffa rt2x00lib_rxdone +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00lib 0x9e6d2ea3 rt2x00queue_map_txskb +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00lib 0xa06daeab rt2x00mac_set_tim +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00lib 0xb03cfa9d rt2x00queue_get_entry +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00lib 0xb4fea85e rt2x00mac_configure_filter +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00lib 0xbe7939c1 rt2x00lib_txdone_nomatch +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00lib 0xc06a7f8a rt2x00queue_stop_queues +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00lib 0xc46cb539 rt2x00queue_flush_queue +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00lib 0xc5d6bc4b rt2x00mac_flush +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00lib 0xc6e890f2 rt2x00queue_pause_queue +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00lib 0xca853c80 rt2x00queue_start_queue +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00lib 0xcaf55777 rt2x00mac_config +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00lib 0xd18b7c51 rt2x00lib_dmadone +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00lib 0xd7b519f1 rt2x00mac_stop +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00lib 0xe458c171 rt2x00queue_start_queues +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00lib 0xe5d6b528 rt2x00mac_conf_tx +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00lib 0xf1bdd1b6 rt2x00queue_unmap_skb +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00lib 0xf2dfe877 rt2x00queue_unpause_queue +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00lib 0xfd942546 rt2x00mac_tx +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00mmio 0x010cad35 rt2x00mmio_initialize +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00mmio 0x069a6f56 rt2x00mmio_rxdone +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00mmio 0x0ffd9851 rt2x00mmio_uninitialize +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00mmio 0x6a1b5aa8 rt2x00mmio_regbusy_read +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00mmio 0xb28664b0 rt2x00mmio_flush_queue +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00pci 0x0c46b077 rt2x00pci_resume +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00pci 0x478a7698 rt2x00pci_suspend +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00pci 0x852055c6 rt2x00pci_probe +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00pci 0xf1fe74cf rt2x00pci_remove +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00usb 0x171ca244 rt2x00usb_register_read_async +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00usb 0x4c1efda1 rt2x00usb_vendor_req_buff_lock +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00usb 0x4e5002cc rt2x00usb_initialize +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00usb 0x607c1472 rt2x00usb_resume +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00usb 0x64c42383 rt2x00usb_flush_queue +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00usb 0x67f015e5 rt2x00usb_probe +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00usb 0x696d86ed rt2x00usb_kick_queue +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00usb 0x8473cda9 rt2x00usb_vendor_request +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00usb 0x8720278b rt2x00usb_disconnect +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00usb 0x9f120441 rt2x00usb_watchdog +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00usb 0xa33ef17e rt2x00usb_uninitialize +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00usb 0xb1b893f9 rt2x00usb_suspend +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00usb 0xbbf310a2 rt2x00usb_clear_entry +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00usb 0xcf6da9a4 rt2x00usb_disable_radio +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00usb 0xe4d90014 rt2x00usb_vendor_request_buff +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00usb 0xf79fa926 rt2x00usb_regbusy_read +EXPORT_SYMBOL_GPL drivers/net/wireless/realtek/rtlwifi/rtl8192c/rtl8192c-common 0x50a19b27 dm_savepowerindex +EXPORT_SYMBOL_GPL drivers/net/wireless/realtek/rtlwifi/rtl8192c/rtl8192c-common 0x8768e9fa dm_writepowerindex +EXPORT_SYMBOL_GPL drivers/net/wireless/realtek/rtlwifi/rtl8192c/rtl8192c-common 0xc506e7be rtl92c_set_p2p_ps_offload_cmd +EXPORT_SYMBOL_GPL drivers/net/wireless/realtek/rtlwifi/rtl8192c/rtl8192c-common 0xfb38de83 dm_restorepowerindex +EXPORT_SYMBOL_GPL drivers/net/wireless/realtek/rtlwifi/rtl8723com/rtl8723-common 0x1f1031af rtl8723_download_fw +EXPORT_SYMBOL_GPL drivers/net/wireless/realtek/rtlwifi/rtl8723com/rtl8723-common 0x1f8ff4ed rtl8723_write_fw +EXPORT_SYMBOL_GPL drivers/net/wireless/realtek/rtlwifi/rtl8723com/rtl8723-common 0x3ed4e796 rtl8723_phy_reload_adda_registers +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 0x4112d48c rtl8723_phy_rf_serial_read +EXPORT_SYMBOL_GPL drivers/net/wireless/realtek/rtlwifi/rtl8723com/rtl8723-common 0x595b6c65 rtl8723_phy_rf_serial_write +EXPORT_SYMBOL_GPL drivers/net/wireless/realtek/rtlwifi/rtl8723com/rtl8723-common 0x6a7bf44d rtl8723_cmd_send_packet +EXPORT_SYMBOL_GPL drivers/net/wireless/realtek/rtlwifi/rtl8723com/rtl8723-common 0x833e5d1d rtl8723_phy_path_a_standby +EXPORT_SYMBOL_GPL drivers/net/wireless/realtek/rtlwifi/rtl8723com/rtl8723-common 0x83b2ec0b rtl8723_phy_query_bb_reg +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 0x8e3bab7a rtl8723_dm_init_edca_turbo +EXPORT_SYMBOL_GPL drivers/net/wireless/realtek/rtlwifi/rtl8723com/rtl8723-common 0x90717997 rtl8723_save_adda_registers +EXPORT_SYMBOL_GPL drivers/net/wireless/realtek/rtlwifi/rtl8723com/rtl8723-common 0x909f9294 rtl8723_phy_txpwr_idx_to_dbm +EXPORT_SYMBOL_GPL drivers/net/wireless/realtek/rtlwifi/rtl8723com/rtl8723-common 0x977a67eb rtl8723_phy_set_bb_reg +EXPORT_SYMBOL_GPL drivers/net/wireless/realtek/rtlwifi/rtl8723com/rtl8723-common 0x9c600a96 rtl8723ae_firmware_selfreset +EXPORT_SYMBOL_GPL drivers/net/wireless/realtek/rtlwifi/rtl8723com/rtl8723-common 0xa9623a4a rtl8723_fw_free_to_go +EXPORT_SYMBOL_GPL drivers/net/wireless/realtek/rtlwifi/rtl8723com/rtl8723-common 0xaea85d9c rtl8723_enable_fw_download +EXPORT_SYMBOL_GPL drivers/net/wireless/realtek/rtlwifi/rtl8723com/rtl8723-common 0xb5d754f0 rtl8723_phy_mac_setting_calibration +EXPORT_SYMBOL_GPL drivers/net/wireless/realtek/rtlwifi/rtl8723com/rtl8723-common 0xba276fc6 rtl8723_phy_path_adda_on +EXPORT_SYMBOL_GPL drivers/net/wireless/realtek/rtlwifi/rtl8723com/rtl8723-common 0xbd2912f1 rtl8723_dm_init_dynamic_bb_powersaving +EXPORT_SYMBOL_GPL drivers/net/wireless/realtek/rtlwifi/rtl8723com/rtl8723-common 0xbde8e842 rtl8723_phy_reload_mac_registers +EXPORT_SYMBOL_GPL drivers/net/wireless/realtek/rtlwifi/rtl8723com/rtl8723-common 0xd1f9aa3f rtl8723_phy_init_bb_rf_reg_def +EXPORT_SYMBOL_GPL drivers/net/wireless/realtek/rtlwifi/rtl8723com/rtl8723-common 0xe85500c5 rtl8723_phy_pi_mode_switch +EXPORT_SYMBOL_GPL drivers/net/wireless/realtek/rtlwifi/rtl8723com/rtl8723-common 0xec0ff961 rtl8723_phy_path_a_fill_iqk_matrix +EXPORT_SYMBOL_GPL drivers/net/wireless/realtek/rtlwifi/rtl8723com/rtl8723-common 0xf035975b rtl8723be_firmware_selfreset +EXPORT_SYMBOL_GPL drivers/net/wireless/realtek/rtlwifi/rtl8723com/rtl8723-common 0xf32f00b9 rtl8723_dm_init_dynamic_txpower +EXPORT_SYMBOL_GPL drivers/net/wireless/realtek/rtlwifi/rtl8723com/rtl8723-common 0xf75529ec rtl8723_phy_save_mac_registers +EXPORT_SYMBOL_GPL drivers/net/wireless/realtek/rtlwifi/rtlwifi 0x1fe45b1a rtl_recognize_peer +EXPORT_SYMBOL_GPL drivers/net/wireless/realtek/rtlwifi/rtlwifi 0x22d79270 rtl_is_special_data +EXPORT_SYMBOL_GPL drivers/net/wireless/realtek/rtlwifi/rtlwifi 0x23027d22 rtl_beacon_statistic +EXPORT_SYMBOL_GPL drivers/net/wireless/realtek/rtlwifi/rtlwifi 0x26a78cb3 rtl_lps_enter +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 0x345a5eaa rtl_get_hal_edca_param +EXPORT_SYMBOL_GPL drivers/net/wireless/realtek/rtlwifi/rtlwifi 0x428c91d9 rtl_deinit_rfkill +EXPORT_SYMBOL_GPL drivers/net/wireless/realtek/rtlwifi/rtlwifi 0x46309b55 rtl_fw_page_write +EXPORT_SYMBOL_GPL drivers/net/wireless/realtek/rtlwifi/rtlwifi 0x4e94cd48 rtl_global_var +EXPORT_SYMBOL_GPL drivers/net/wireless/realtek/rtlwifi/rtlwifi 0x53e4600f rtl_ops +EXPORT_SYMBOL_GPL drivers/net/wireless/realtek/rtlwifi/rtlwifi 0x5568d0c9 rtl_lps_leave +EXPORT_SYMBOL_GPL drivers/net/wireless/realtek/rtlwifi/rtlwifi 0x5c77a232 rtl_tx_report_handler +EXPORT_SYMBOL_GPL drivers/net/wireless/realtek/rtlwifi/rtlwifi 0x70fc0d30 rtl_init_rx_config +EXPORT_SYMBOL_GPL drivers/net/wireless/realtek/rtlwifi/rtlwifi 0x73411c27 rtl_tx_mgmt_proc +EXPORT_SYMBOL_GPL drivers/net/wireless/realtek/rtlwifi/rtlwifi 0x7db39cb4 rtl_get_hwinfo +EXPORT_SYMBOL_GPL drivers/net/wireless/realtek/rtlwifi/rtlwifi 0x97e05663 rtl_tid_to_ac +EXPORT_SYMBOL_GPL drivers/net/wireless/realtek/rtlwifi/rtlwifi 0x9cbd7ac1 rtl_efuse_ops_init +EXPORT_SYMBOL_GPL drivers/net/wireless/realtek/rtlwifi/rtlwifi 0xad005f89 rtl_fw_block_write +EXPORT_SYMBOL_GPL drivers/net/wireless/realtek/rtlwifi/rtlwifi 0xb7c0726e rtl_init_core +EXPORT_SYMBOL_GPL drivers/net/wireless/realtek/rtlwifi/rtlwifi 0xb94edf21 rtl_swlps_beacon +EXPORT_SYMBOL_GPL drivers/net/wireless/realtek/rtlwifi/rtlwifi 0xba2741d5 rtl_p2p_info +EXPORT_SYMBOL_GPL drivers/net/wireless/realtek/rtlwifi/rtlwifi 0xbb0c74b4 rtl_tx_ackqueue +EXPORT_SYMBOL_GPL drivers/net/wireless/realtek/rtlwifi/rtlwifi 0xbddef448 rtl_deinit_deferred_work +EXPORT_SYMBOL_GPL drivers/net/wireless/realtek/rtlwifi/rtlwifi 0xc32d2b4b rtl_action_proc +EXPORT_SYMBOL_GPL drivers/net/wireless/realtek/rtlwifi/rtlwifi 0xcb90439d rtl_set_tx_report +EXPORT_SYMBOL_GPL drivers/net/wireless/realtek/rtlwifi/rtlwifi 0xd3bad9b8 rtl_deinit_core +EXPORT_SYMBOL_GPL drivers/net/wireless/realtek/rtlwifi/rtlwifi 0xf332b7a0 read_efuse_byte +EXPORT_SYMBOL_GPL drivers/net/wireless/realtek/rtlwifi/rtlwifi 0xf6374d34 rtl_ips_nic_on +EXPORT_SYMBOL_GPL drivers/net/wireless/rsi/rsi_91x 0x0c20fb62 rsi_91x_init +EXPORT_SYMBOL_GPL drivers/net/wireless/rsi/rsi_91x 0x0f5c3ce9 rsi_zone_enabled +EXPORT_SYMBOL_GPL drivers/net/wireless/rsi/rsi_91x 0x2ddf6b66 rsi_hal_device_init +EXPORT_SYMBOL_GPL drivers/net/wireless/rsi/rsi_91x 0x3c47175c rsi_mac80211_detach +EXPORT_SYMBOL_GPL drivers/net/wireless/rsi/rsi_91x 0x62de016b rsi_91x_deinit +EXPORT_SYMBOL_GPL drivers/net/wireless/rsi/rsi_91x 0xba3cce22 rsi_read_pkt +EXPORT_SYMBOL_GPL drivers/net/wireless/rsi/rsi_91x 0xcd173710 rsi_dbg +EXPORT_SYMBOL_GPL drivers/net/wireless/st/cw1200/cw1200_core 0x23f52c4a cw1200_can_suspend +EXPORT_SYMBOL_GPL drivers/net/wireless/st/cw1200/cw1200_core 0x49ecc5c6 cw1200_core_release +EXPORT_SYMBOL_GPL drivers/net/wireless/st/cw1200/cw1200_core 0x5ccc2dd5 cw1200_core_probe +EXPORT_SYMBOL_GPL drivers/net/wireless/st/cw1200/cw1200_core 0xaa154db2 cw1200_irq_handler +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wl1251/wl1251 0x2de68125 wl1251_init_ieee80211 +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wl1251/wl1251 0x7806c449 wl1251_free_hw +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wl1251/wl1251 0xedf03c83 wl1251_alloc_hw +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x03b799f9 wlcore_set_partition +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x06d3b27e wl12xx_debug_level +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x142d13ee wlcore_event_dummy_packet +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x183cab99 wl1271_debugfs_update_stats +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x190a28f3 wl1271_acx_init_mem_config +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x1f8dbcde wlcore_disable_interrupts +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x20351125 wlcore_get_native_channel_type +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x24de5629 wlcore_remove +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x282318b2 wl1271_acx_set_ht_capabilities +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x285f12a9 wlcore_enable_interrupts +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x2b166ad5 wlcore_event_fw_logger +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x2b1ff5fc wlcore_disable_interrupts_nosync +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x2fd25890 wl1271_cmd_send +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x44fd0c80 wlcore_translate_addr +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x4aad5dec wl1271_acx_pm_config +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x57f89977 wlcore_event_sched_scan_completed +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x61cb1481 wl1271_acx_sleep_auth +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x6a1142d5 wlcore_event_beacon_loss +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x6b22bd11 wlcore_boot_run_firmware +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x6ca474d8 wl12xx_acx_mem_cfg +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x739aabcb wlcore_event_max_tx_failure +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x7aac6a74 wlcore_alloc_hw +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x7ba70d21 wl1271_tx_flush +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x7fcae213 wlcore_synchronize_interrupts +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x8196378a wl1271_cmd_data_path +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x85498cd1 wl1271_format_buffer +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x86582454 wlcore_boot_upload_firmware +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x8ab05af4 wlcore_set_scan_chan_params +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x9506969f wlcore_cmd_wait_for_event_or_timeout +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0xa1482dc4 wlcore_scan_sched_scan_ssid_list +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0xa157b83f wl12xx_cmd_build_probe_req +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0xa5b29539 wl1271_cmd_configure +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0xa8d7ce46 wlcore_scan_sched_scan_results +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0xca6cfd7b wlcore_probe +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0xcb9932ee wlcore_event_channel_switch +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0xcd427ffe wlcore_cmd_generic_cfg +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0xcf820a4a wlcore_event_inactive_sta +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0xd089d400 wlcore_event_soft_gemini_sense +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0xd46157ff wlcore_event_roc_complete +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0xd915b3ee wl1271_cmd_test +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0xdaf80662 wl1271_tx_min_rate_get +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0xe6fb75c6 wlcore_boot_upload_nvs +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0xe749f52e wlcore_event_rssi_trigger +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0xf47de12c wlcore_set_key +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0xfd8f05ac wlcore_event_ba_rx_constraint +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0xff599682 wlcore_free_hw +EXPORT_SYMBOL_GPL drivers/nfc/nfcmrvl/nfcmrvl 0x4130a935 nfcmrvl_parse_dt +EXPORT_SYMBOL_GPL drivers/nfc/nfcmrvl/nfcmrvl 0x46b3008f nfcmrvl_nci_register_dev +EXPORT_SYMBOL_GPL drivers/nfc/nfcmrvl/nfcmrvl 0x81d4aac2 nfcmrvl_nci_recv_frame +EXPORT_SYMBOL_GPL drivers/nfc/nfcmrvl/nfcmrvl 0xc3b0c9e8 nfcmrvl_nci_unregister_dev +EXPORT_SYMBOL_GPL drivers/nfc/pn533/pn533 0x0715971f pn533_finalize_setup +EXPORT_SYMBOL_GPL drivers/nfc/pn533/pn533 0x221bf8a8 pn53x_register_nfc +EXPORT_SYMBOL_GPL drivers/nfc/pn533/pn533 0x71351938 pn53x_common_init +EXPORT_SYMBOL_GPL drivers/nfc/pn533/pn533 0x81d51a12 pn532_i2c_nfc_alloc +EXPORT_SYMBOL_GPL drivers/nfc/pn533/pn533 0xcc5b61a1 pn533_rx_frame_is_cmd_response +EXPORT_SYMBOL_GPL drivers/nfc/pn533/pn533 0xcf1ae71f pn53x_unregister_nfc +EXPORT_SYMBOL_GPL drivers/nfc/pn533/pn533 0xdecfd339 pn533_rx_frame_is_ack +EXPORT_SYMBOL_GPL drivers/nfc/pn533/pn533 0xe009b176 pn53x_common_clean +EXPORT_SYMBOL_GPL drivers/nfc/st-nci/st-nci 0x133f1b3f st_nci_discover_se +EXPORT_SYMBOL_GPL drivers/nfc/st-nci/st-nci 0x52de6781 st_nci_hci_cmd_received +EXPORT_SYMBOL_GPL drivers/nfc/st-nci/st-nci 0x5eecbe4f st_nci_probe +EXPORT_SYMBOL_GPL drivers/nfc/st-nci/st-nci 0x75879e91 st_nci_hci_event_received +EXPORT_SYMBOL_GPL drivers/nfc/st-nci/st-nci 0x79073282 st_nci_enable_se +EXPORT_SYMBOL_GPL drivers/nfc/st-nci/st-nci 0x7e8f2786 st_nci_disable_se +EXPORT_SYMBOL_GPL drivers/nfc/st-nci/st-nci 0x8e202dac st_nci_hci_load_session +EXPORT_SYMBOL_GPL drivers/nfc/st-nci/st-nci 0xa13d21ac st_nci_remove +EXPORT_SYMBOL_GPL drivers/nfc/st95hf/st95hf 0x872ec07f st95hf_spi_recv_response +EXPORT_SYMBOL_GPL drivers/nfc/st95hf/st95hf 0xb1505f7b st95hf_spi_recv_echo_res +EXPORT_SYMBOL_GPL drivers/nfc/st95hf/st95hf 0xe8b4ec53 st95hf_spi_send +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 0x682cec80 ntb_transport_register_client +EXPORT_SYMBOL_GPL drivers/ntb/ntb_transport 0x703f3da4 ntb_transport_unregister_client +EXPORT_SYMBOL_GPL drivers/ntb/ntb_transport 0x82e6c13d ntb_transport_qp_num +EXPORT_SYMBOL_GPL drivers/ntb/ntb_transport 0x8858fbba ntb_transport_create_queue +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 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/nvdimm/nd_virtio 0x16ee7a9e async_pmem_flush +EXPORT_SYMBOL_GPL drivers/nvdimm/nd_virtio 0xd4481423 virtio_pmem_host_ack +EXPORT_SYMBOL_GPL drivers/nvme/host/nvme-core 0x001eac64 nvme_start_freeze +EXPORT_SYMBOL_GPL drivers/nvme/host/nvme-core 0x05905ad4 nvme_kill_queues +EXPORT_SYMBOL_GPL drivers/nvme/host/nvme-core 0x07befbad nvme_wait_freeze_timeout +EXPORT_SYMBOL_GPL drivers/nvme/host/nvme-core 0x0f0889e3 nvme_complete_async_event +EXPORT_SYMBOL_GPL drivers/nvme/host/nvme-core 0x0f5562eb nvme_stop_queues +EXPORT_SYMBOL_GPL drivers/nvme/host/nvme-core 0x13e7b3f7 nvme_get_features +EXPORT_SYMBOL_GPL drivers/nvme/host/nvme-core 0x1edec1c8 nvme_try_sched_reset +EXPORT_SYMBOL_GPL drivers/nvme/host/nvme-core 0x3171f4cd nvme_shutdown_ctrl +EXPORT_SYMBOL_GPL drivers/nvme/host/nvme-core 0x3783f8bf nvme_start_ctrl +EXPORT_SYMBOL_GPL drivers/nvme/host/nvme-core 0x3b484645 nvme_alloc_request +EXPORT_SYMBOL_GPL drivers/nvme/host/nvme-core 0x41cd27ea nvme_submit_sync_cmd +EXPORT_SYMBOL_GPL drivers/nvme/host/nvme-core 0x43199c32 nvme_unfreeze +EXPORT_SYMBOL_GPL drivers/nvme/host/nvme-core 0x466311be nvme_change_ctrl_state +EXPORT_SYMBOL_GPL drivers/nvme/host/nvme-core 0x49224181 nvme_reset_wq +EXPORT_SYMBOL_GPL drivers/nvme/host/nvme-core 0x4a0bcd58 nvme_cleanup_cmd +EXPORT_SYMBOL_GPL drivers/nvme/host/nvme-core 0x54085d0d __tracepoint_nvme_sq +EXPORT_SYMBOL_GPL drivers/nvme/host/nvme-core 0x549229c2 nvme_stop_keep_alive +EXPORT_SYMBOL_GPL drivers/nvme/host/nvme-core 0x5de60f0d nvme_wait_reset +EXPORT_SYMBOL_GPL drivers/nvme/host/nvme-core 0x61e0677b nvme_stop_ctrl +EXPORT_SYMBOL_GPL drivers/nvme/host/nvme-core 0x62286913 nvme_init_ctrl +EXPORT_SYMBOL_GPL drivers/nvme/host/nvme-core 0x64b62862 nvme_wq +EXPORT_SYMBOL_GPL drivers/nvme/host/nvme-core 0x6eb3a4a8 nvme_disable_ctrl +EXPORT_SYMBOL_GPL drivers/nvme/host/nvme-core 0x704e0ec0 nvme_cancel_request +EXPORT_SYMBOL_GPL drivers/nvme/host/nvme-core 0x813cf212 nvme_io_timeout +EXPORT_SYMBOL_GPL drivers/nvme/host/nvme-core 0x825762c7 nvme_init_identify +EXPORT_SYMBOL_GPL drivers/nvme/host/nvme-core 0x866db54c nvme_reset_ctrl +EXPORT_SYMBOL_GPL drivers/nvme/host/nvme-core 0x8a9c70ed nvme_sec_submit +EXPORT_SYMBOL_GPL drivers/nvme/host/nvme-core 0xa5f216e3 __nvme_submit_sync_cmd +EXPORT_SYMBOL_GPL drivers/nvme/host/nvme-core 0xb3599332 nvme_reset_ctrl_sync +EXPORT_SYMBOL_GPL drivers/nvme/host/nvme-core 0xc073a817 nvme_start_queues +EXPORT_SYMBOL_GPL drivers/nvme/host/nvme-core 0xc2ef85a6 nvme_setup_cmd +EXPORT_SYMBOL_GPL drivers/nvme/host/nvme-core 0xcd1f5596 nvme_sync_io_queues +EXPORT_SYMBOL_GPL drivers/nvme/host/nvme-core 0xd09d5520 nvme_set_queue_count +EXPORT_SYMBOL_GPL drivers/nvme/host/nvme-core 0xd3211822 nvme_complete_rq +EXPORT_SYMBOL_GPL drivers/nvme/host/nvme-core 0xd45434ee admin_timeout +EXPORT_SYMBOL_GPL drivers/nvme/host/nvme-core 0xd58bbbcb nvme_delete_wq +EXPORT_SYMBOL_GPL drivers/nvme/host/nvme-core 0xda5322bd nvme_sync_queues +EXPORT_SYMBOL_GPL drivers/nvme/host/nvme-core 0xdbcc72f4 nvme_enable_ctrl +EXPORT_SYMBOL_GPL drivers/nvme/host/nvme-core 0xde8f19ad nvme_uninit_ctrl +EXPORT_SYMBOL_GPL drivers/nvme/host/nvme-core 0xe5dc363a nvme_wait_freeze +EXPORT_SYMBOL_GPL drivers/nvme/host/nvme-core 0xe8461934 nvme_remove_namespaces +EXPORT_SYMBOL_GPL drivers/nvme/host/nvme-core 0xec52d5ff nvme_delete_ctrl +EXPORT_SYMBOL_GPL drivers/nvme/host/nvme-core 0xeff13464 nvme_set_features +EXPORT_SYMBOL_GPL drivers/nvme/host/nvme-fabrics 0x13ce87fb nvmf_ip_options_match +EXPORT_SYMBOL_GPL drivers/nvme/host/nvme-fabrics 0x24979da9 nvmf_get_address +EXPORT_SYMBOL_GPL drivers/nvme/host/nvme-fabrics 0x32ed50e0 nvmf_unregister_transport +EXPORT_SYMBOL_GPL drivers/nvme/host/nvme-fabrics 0x45d954a4 nvmf_reg_write32 +EXPORT_SYMBOL_GPL drivers/nvme/host/nvme-fabrics 0x487357cd __nvmf_check_ready +EXPORT_SYMBOL_GPL drivers/nvme/host/nvme-fabrics 0x65a173c3 nvmf_reg_read32 +EXPORT_SYMBOL_GPL drivers/nvme/host/nvme-fabrics 0x79df4564 nvmf_free_options +EXPORT_SYMBOL_GPL drivers/nvme/host/nvme-fabrics 0x9eb8e0b4 nvmf_connect_admin_queue +EXPORT_SYMBOL_GPL drivers/nvme/host/nvme-fabrics 0xa88a3729 nvmf_register_transport +EXPORT_SYMBOL_GPL drivers/nvme/host/nvme-fabrics 0xcddbd234 nvmf_reg_read64 +EXPORT_SYMBOL_GPL drivers/nvme/host/nvme-fabrics 0xd1951521 nvmf_fail_nonready_command +EXPORT_SYMBOL_GPL drivers/nvme/host/nvme-fabrics 0xe97286ef nvmf_connect_io_queue +EXPORT_SYMBOL_GPL drivers/nvme/host/nvme-fabrics 0xf003b6f4 nvmf_should_reconnect +EXPORT_SYMBOL_GPL drivers/nvme/host/nvme-fc 0x0d12e564 nvme_fc_register_remoteport +EXPORT_SYMBOL_GPL drivers/nvme/host/nvme-fc 0x23119f80 nvme_fc_register_localport +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 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 0xfca9dc99 nvme_fc_unregister_remoteport +EXPORT_SYMBOL_GPL drivers/nvme/target/nvmet 0x0794a232 nvmet_ctrl_fatal_error +EXPORT_SYMBOL_GPL drivers/nvme/target/nvmet 0x17ed1b77 nvmet_req_alloc_sgls +EXPORT_SYMBOL_GPL drivers/nvme/target/nvmet 0x4d134b0b nvmet_check_transfer_len +EXPORT_SYMBOL_GPL drivers/nvme/target/nvmet 0x59baac6d nvmet_unregister_transport +EXPORT_SYMBOL_GPL drivers/nvme/target/nvmet 0x78554a75 nvmet_sq_init +EXPORT_SYMBOL_GPL drivers/nvme/target/nvmet 0x8f6148b1 nvmet_register_transport +EXPORT_SYMBOL_GPL drivers/nvme/target/nvmet 0xa211484e nvmet_req_free_sgls +EXPORT_SYMBOL_GPL drivers/nvme/target/nvmet 0xac4d09b7 nvmet_req_init +EXPORT_SYMBOL_GPL drivers/nvme/target/nvmet 0xba5e195b nvmet_req_uninit +EXPORT_SYMBOL_GPL drivers/nvme/target/nvmet 0xf5077f29 nvmet_sq_destroy +EXPORT_SYMBOL_GPL drivers/nvme/target/nvmet 0xf725434a nvmet_req_complete +EXPORT_SYMBOL_GPL drivers/nvme/target/nvmet-fc 0x0b98123d nvmet_fc_rcv_ls_req +EXPORT_SYMBOL_GPL drivers/nvme/target/nvmet-fc 0x1048b92a nvmet_fc_rcv_fcp_req +EXPORT_SYMBOL_GPL drivers/nvme/target/nvmet-fc 0x4a013682 nvmet_fc_invalidate_host +EXPORT_SYMBOL_GPL drivers/nvme/target/nvmet-fc 0x4c2f9d99 nvmet_fc_register_targetport +EXPORT_SYMBOL_GPL drivers/nvme/target/nvmet-fc 0x7fa5302a nvmet_fc_rcv_fcp_abort +EXPORT_SYMBOL_GPL drivers/nvme/target/nvmet-fc 0x9ef76d99 nvmet_fc_unregister_targetport +EXPORT_SYMBOL_GPL drivers/pci/controller/pcie-iproc 0x0226e88d iproc_pcie_shutdown +EXPORT_SYMBOL_GPL drivers/pci/switch/switchtec 0xbce5e5d7 switchtec_class +EXPORT_SYMBOL_GPL drivers/phy/allwinner/phy-sun4i-usb 0x1b0db8e8 sun4i_usb_phy_set_squelch_detect +EXPORT_SYMBOL_GPL drivers/phy/qualcomm/phy-qcom-ufs 0x1cfec83f get_ufs_qcom_phy +EXPORT_SYMBOL_GPL drivers/phy/qualcomm/phy-qcom-ufs 0x326cd58f ufs_qcom_phy_set_tx_lane_enable +EXPORT_SYMBOL_GPL drivers/phy/qualcomm/phy-qcom-ufs 0x3ec66656 ufs_qcom_phy_calibrate +EXPORT_SYMBOL_GPL drivers/phy/qualcomm/phy-qcom-ufs 0x92407330 ufs_qcom_phy_generic_probe +EXPORT_SYMBOL_GPL drivers/phy/qualcomm/phy-qcom-ufs 0x9a7b1651 ufs_qcom_phy_init_clks +EXPORT_SYMBOL_GPL drivers/phy/qualcomm/phy-qcom-ufs 0xc51f8f8f ufs_qcom_phy_power_off +EXPORT_SYMBOL_GPL drivers/phy/qualcomm/phy-qcom-ufs 0xcc42c547 ufs_qcom_phy_init_vregulators +EXPORT_SYMBOL_GPL drivers/phy/qualcomm/phy-qcom-ufs 0xd2672f5e ufs_qcom_phy_power_on +EXPORT_SYMBOL_GPL drivers/phy/qualcomm/phy-qcom-ufs 0xdf80b6e5 ufs_qcom_phy_save_controller_version +EXPORT_SYMBOL_GPL drivers/phy/ti/phy-omap-usb2 0x00d48f33 omap_usb2_set_comparator +EXPORT_SYMBOL_GPL drivers/pinctrl/pinctrl-mcp23s08 0x61c93695 mcp23s08_probe_one +EXPORT_SYMBOL_GPL drivers/pinctrl/pinctrl-mcp23s08 0xda5cc78f mcp23x08_regmap +EXPORT_SYMBOL_GPL drivers/pinctrl/pinctrl-mcp23s08 0xea276360 mcp23x17_regmap +EXPORT_SYMBOL_GPL drivers/platform/chrome/cros-ec-sensorhub 0x578cd6a6 cros_ec_sensorhub_unregister_push_data +EXPORT_SYMBOL_GPL drivers/platform/chrome/cros-ec-sensorhub 0xae29eab0 cros_ec_sensorhub_register_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/power/reset/reboot-mode 0x094fad2e devm_reboot_mode_unregister +EXPORT_SYMBOL_GPL drivers/power/reset/reboot-mode 0x36d57281 devm_reboot_mode_register +EXPORT_SYMBOL_GPL drivers/power/reset/reboot-mode 0x593b0316 reboot_mode_register +EXPORT_SYMBOL_GPL drivers/power/reset/reboot-mode 0xc34bc723 reboot_mode_unregister +EXPORT_SYMBOL_GPL drivers/power/supply/bq27xxx_battery 0x6501e5f0 bq27xxx_battery_teardown +EXPORT_SYMBOL_GPL drivers/power/supply/bq27xxx_battery 0x928b06dd bq27xxx_battery_update +EXPORT_SYMBOL_GPL drivers/power/supply/bq27xxx_battery 0xe8c7ff32 bq27xxx_battery_setup +EXPORT_SYMBOL_GPL drivers/power/supply/pcf50633-charger 0x29658c93 pcf50633_mbc_get_usb_online_status +EXPORT_SYMBOL_GPL drivers/power/supply/pcf50633-charger 0x80779765 pcf50633_mbc_get_status +EXPORT_SYMBOL_GPL drivers/power/supply/pcf50633-charger 0xcabd5030 pcf50633_mbc_usb_curlim_set +EXPORT_SYMBOL_GPL drivers/ptp/ptp-qoriq 0x24867d40 ptp_qoriq_enable +EXPORT_SYMBOL_GPL drivers/ptp/ptp-qoriq 0x24b7688f ptp_qoriq_init +EXPORT_SYMBOL_GPL drivers/ptp/ptp-qoriq 0x2e4ec2f4 ptp_qoriq_gettime +EXPORT_SYMBOL_GPL drivers/ptp/ptp-qoriq 0x2eae82b0 ptp_qoriq_isr +EXPORT_SYMBOL_GPL drivers/ptp/ptp-qoriq 0x6a733ca8 ptp_qoriq_free +EXPORT_SYMBOL_GPL drivers/ptp/ptp-qoriq 0x8a4cd9b4 extts_clean_up +EXPORT_SYMBOL_GPL drivers/ptp/ptp-qoriq 0xa3900106 ptp_qoriq_settime +EXPORT_SYMBOL_GPL drivers/ptp/ptp-qoriq 0xa8b2c8f7 ptp_qoriq_adjfine +EXPORT_SYMBOL_GPL drivers/ptp/ptp-qoriq 0xb19b1269 ptp_qoriq_adjtime +EXPORT_SYMBOL_GPL drivers/regulator/mc13xxx-regulator-core 0x6714f456 mc13xxx_parse_regulators_dt +EXPORT_SYMBOL_GPL drivers/regulator/mc13xxx-regulator-core 0x74f1133f mc13xxx_fixed_regulator_set_voltage +EXPORT_SYMBOL_GPL drivers/regulator/mc13xxx-regulator-core 0x85b95d4d mc13xxx_regulator_ops +EXPORT_SYMBOL_GPL drivers/regulator/mc13xxx-regulator-core 0xb8d58c52 mc13xxx_fixed_regulator_ops +EXPORT_SYMBOL_GPL drivers/regulator/mc13xxx-regulator-core 0xf2108087 mc13xxx_get_num_regulators_dt +EXPORT_SYMBOL_GPL drivers/regulator/wm8350-regulator 0x1b111dc8 wm8350_ldo_set_slot +EXPORT_SYMBOL_GPL drivers/regulator/wm8350-regulator 0x2b287224 wm8350_register_regulator +EXPORT_SYMBOL_GPL drivers/regulator/wm8350-regulator 0x3c5f783d wm8350_dcdc25_set_mode +EXPORT_SYMBOL_GPL drivers/regulator/wm8350-regulator 0x3c678c84 wm8350_isink_set_flash +EXPORT_SYMBOL_GPL drivers/regulator/wm8350-regulator 0x654b18af wm8350_register_led +EXPORT_SYMBOL_GPL drivers/regulator/wm8350-regulator 0xcee9f781 wm8350_dcdc_set_slot +EXPORT_SYMBOL_GPL drivers/regulator/wm8400-regulator 0x93836f15 wm8400_register_regulator +EXPORT_SYMBOL_GPL drivers/remoteproc/mtk_scp 0x097d3a80 scp_get_rproc +EXPORT_SYMBOL_GPL drivers/remoteproc/mtk_scp 0x3886600b scp_put +EXPORT_SYMBOL_GPL drivers/remoteproc/mtk_scp 0x44eb91ae scp_get_vdec_hw_capa +EXPORT_SYMBOL_GPL drivers/remoteproc/mtk_scp 0x967b2ae3 scp_get_device +EXPORT_SYMBOL_GPL drivers/remoteproc/mtk_scp 0xafe9fda6 scp_mapping_dm_addr +EXPORT_SYMBOL_GPL drivers/remoteproc/mtk_scp 0xd443d584 scp_get +EXPORT_SYMBOL_GPL drivers/remoteproc/mtk_scp 0xe0177f90 scp_get_venc_hw_capa +EXPORT_SYMBOL_GPL drivers/remoteproc/mtk_scp_ipi 0x09313652 scp_memcpy_aligned +EXPORT_SYMBOL_GPL drivers/remoteproc/mtk_scp_ipi 0x0c08c8cb scp_ipi_register +EXPORT_SYMBOL_GPL drivers/remoteproc/mtk_scp_ipi 0x1d2e30cf scp_ipi_send +EXPORT_SYMBOL_GPL drivers/remoteproc/mtk_scp_ipi 0x48050f80 scp_ipi_unlock +EXPORT_SYMBOL_GPL drivers/remoteproc/mtk_scp_ipi 0xc146a14b scp_ipi_unregister +EXPORT_SYMBOL_GPL drivers/remoteproc/mtk_scp_ipi 0xf68b692d scp_ipi_lock +EXPORT_SYMBOL_GPL drivers/remoteproc/qcom_common 0x303cec4a qcom_register_dump_segments +EXPORT_SYMBOL_GPL drivers/remoteproc/qcom_common 0x31bfd40e qcom_unregister_ssr_notifier +EXPORT_SYMBOL_GPL drivers/remoteproc/qcom_common 0x65079082 qcom_add_glink_subdev +EXPORT_SYMBOL_GPL drivers/remoteproc/qcom_common 0x6da84761 qcom_remove_ssr_subdev +EXPORT_SYMBOL_GPL drivers/remoteproc/qcom_common 0x86a84622 qcom_register_ssr_notifier +EXPORT_SYMBOL_GPL drivers/remoteproc/qcom_common 0x86bc2c9d qcom_remove_smd_subdev +EXPORT_SYMBOL_GPL drivers/remoteproc/qcom_common 0xee21d8b6 qcom_add_smd_subdev +EXPORT_SYMBOL_GPL drivers/remoteproc/qcom_common 0xf0f52fd3 qcom_remove_glink_subdev +EXPORT_SYMBOL_GPL drivers/remoteproc/qcom_common 0xf8f6bce9 qcom_add_ssr_subdev +EXPORT_SYMBOL_GPL drivers/remoteproc/qcom_q6v5 0x06f729e2 qcom_q6v5_unprepare +EXPORT_SYMBOL_GPL drivers/remoteproc/qcom_q6v5 0x14736c0b qcom_q6v5_prepare +EXPORT_SYMBOL_GPL drivers/remoteproc/qcom_q6v5 0x39c01b44 qcom_q6v5_init +EXPORT_SYMBOL_GPL drivers/remoteproc/qcom_q6v5 0xb5da0be6 qcom_q6v5_panic +EXPORT_SYMBOL_GPL drivers/remoteproc/qcom_q6v5 0xce2a3ec4 qcom_q6v5_wait_for_start +EXPORT_SYMBOL_GPL drivers/remoteproc/qcom_q6v5 0xdcdc8724 qcom_q6v5_request_stop +EXPORT_SYMBOL_GPL drivers/remoteproc/qcom_q6v5_ipa_notify 0xb96db200 qcom_add_ipa_notify_subdev +EXPORT_SYMBOL_GPL drivers/remoteproc/qcom_q6v5_ipa_notify 0xe191eef2 qcom_remove_ipa_notify_subdev +EXPORT_SYMBOL_GPL drivers/remoteproc/qcom_q6v5_mss 0x27f69b48 qcom_deregister_ipa_notify +EXPORT_SYMBOL_GPL drivers/remoteproc/qcom_q6v5_mss 0xeaad0e19 qcom_register_ipa_notify +EXPORT_SYMBOL_GPL drivers/remoteproc/qcom_sysmon 0xa881c6fc qcom_remove_sysmon_subdev +EXPORT_SYMBOL_GPL drivers/remoteproc/qcom_sysmon 0xc50d9ccf qcom_add_sysmon_subdev +EXPORT_SYMBOL_GPL drivers/rpmsg/mtk_rpmsg 0x126e0c50 mtk_rpmsg_create_rproc_subdev +EXPORT_SYMBOL_GPL drivers/rpmsg/mtk_rpmsg 0x86903274 mtk_rpmsg_destroy_rproc_subdev +EXPORT_SYMBOL_GPL drivers/rpmsg/qcom_glink 0x149236da qcom_glink_native_remove +EXPORT_SYMBOL_GPL drivers/rpmsg/qcom_glink 0xd4259372 qcom_glink_native_probe +EXPORT_SYMBOL_GPL drivers/rpmsg/qcom_glink 0xf14f5684 qcom_glink_ssr_notify +EXPORT_SYMBOL_GPL drivers/rpmsg/qcom_glink 0xfd2d5a1d qcom_glink_native_unregister +EXPORT_SYMBOL_GPL drivers/rpmsg/qcom_glink_smem 0x72dd75d9 qcom_glink_smem_unregister +EXPORT_SYMBOL_GPL drivers/rpmsg/qcom_glink_smem 0xe792b118 qcom_glink_smem_register +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x02b321bc cxgbi_ep_connect +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x062d0183 cxgbi_sock_fail_act_open +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x10f8650f cxgbi_set_conn_param +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x12215f60 cxgbi_sock_rcv_close_conn_rpl +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x211a9c80 cxgbi_hbas_add +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x2aeb182a cxgbi_ddp_ppm_setup +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x2d0005cc cxgbi_cleanup_task +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x304b260f cxgbi_sock_rcv_abort_rpl +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x31aa918d cxgbi_sock_established +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x33e463ab cxgbi_device_register +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x3a36378e cxgbi_sock_rcv_wr_ack +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x3ea1b1df cxgbi_get_conn_stats +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x44b29db5 cxgbi_device_unregister +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x4b9182ac cxgbi_hbas_remove +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x515ce591 cxgbi_conn_alloc_pdu +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x5a5264f0 cxgbi_create_conn +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x61757687 cxgbi_ep_poll +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x62de55cc cxgbi_get_host_param +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x654f2653 cxgbi_sock_skb_entail +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x68774f4b cxgbi_sock_select_mss +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x6ad4437a cxgbi_set_host_param +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x6d348525 cxgbi_sock_free_cpl_skbs +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x6d4de5c1 cxgbi_sock_closed +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x6fbb885c cxgbi_ep_disconnect +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x75069990 cxgbi_conn_init_pdu +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x7d4b669a cxgbi_conn_tx_open +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x7fdb6004 cxgbi_device_unregister_all +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x8591fc68 cxgbi_device_find_by_netdev +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x88bf43f8 cxgbi_device_find_by_netdev_rcu +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x88e05605 cxgbi_bind_conn +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x8ad0e9ae cxgbi_device_find_by_lldev +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x944ac4cf cxgbi_sock_act_open_req_arp_failure +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x95de83cf cxgbi_iscsi_init +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x9a9c0ea0 cxgbi_device_portmap_cleanup +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0xa1bb2a5e cxgbi_sock_purge_wr_queue +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0xa84dfd78 cxgbi_sock_rcv_peer_close +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0xaed12514 cxgbi_conn_pdu_ready +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0xc011af75 cxgbi_ddp_set_one_ppod +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0xcae4e61c cxgbi_parse_pdu_itt +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0xd9028794 cxgbi_get_ep_param +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0xef346615 cxgbi_attr_is_visible +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0xeff263c4 cxgbi_iscsi_cleanup +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0xf3c13fe3 cxgbi_sock_check_wr_invariants +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0xf6a97418 cxgbi_device_portmap_create +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0xf6b655a4 cxgbi_destroy_session +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0xf7e26e61 cxgbi_create_session +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0xfcda2756 cxgbi_conn_xmit_pdu +EXPORT_SYMBOL_GPL drivers/scsi/fcoe/libfcoe 0x0b20b926 fcoe_get_lesb +EXPORT_SYMBOL_GPL drivers/scsi/fcoe/libfcoe 0x18efb87c fcoe_ctlr_get_lesb +EXPORT_SYMBOL_GPL drivers/scsi/fcoe/libfcoe 0x1906acf0 fcoe_fc_crc +EXPORT_SYMBOL_GPL drivers/scsi/fcoe/libfcoe 0x4d14374f fcoe_fcf_device_delete +EXPORT_SYMBOL_GPL drivers/scsi/fcoe/libfcoe 0x521d376c fcoe_get_wwn +EXPORT_SYMBOL_GPL drivers/scsi/fcoe/libfcoe 0x69373892 fcoe_fcf_device_add +EXPORT_SYMBOL_GPL drivers/scsi/fcoe/libfcoe 0x79bc5559 fcoe_clean_pending_queue +EXPORT_SYMBOL_GPL drivers/scsi/fcoe/libfcoe 0x7c27e6d1 fcoe_validate_vport_create +EXPORT_SYMBOL_GPL drivers/scsi/fcoe/libfcoe 0x8d0fd294 fcoe_ctlr_device_add +EXPORT_SYMBOL_GPL drivers/scsi/fcoe/libfcoe 0xad7458b5 fcoe_check_wait_queue +EXPORT_SYMBOL_GPL drivers/scsi/fcoe/libfcoe 0xae978da3 fcoe_get_paged_crc_eof +EXPORT_SYMBOL_GPL drivers/scsi/fcoe/libfcoe 0xbac58840 fcoe_queue_timer +EXPORT_SYMBOL_GPL drivers/scsi/fcoe/libfcoe 0xd39749cc __fcoe_get_lesb +EXPORT_SYMBOL_GPL drivers/scsi/fcoe/libfcoe 0xdd944534 fcoe_wwn_from_mac +EXPORT_SYMBOL_GPL drivers/scsi/fcoe/libfcoe 0xedcb1f52 fcoe_link_speed_update +EXPORT_SYMBOL_GPL drivers/scsi/fcoe/libfcoe 0xf1636d55 fcoe_ctlr_device_delete +EXPORT_SYMBOL_GPL drivers/scsi/fcoe/libfcoe 0xf167cb7a fcoe_wwn_to_str +EXPORT_SYMBOL_GPL drivers/scsi/fcoe/libfcoe 0xf4e41c3b fcoe_libfc_config +EXPORT_SYMBOL_GPL drivers/scsi/fcoe/libfcoe 0xf78a4e8e fcoe_start_io +EXPORT_SYMBOL_GPL drivers/scsi/fdomain 0xa898ae0a fdomain_destroy +EXPORT_SYMBOL_GPL drivers/scsi/fdomain 0xb6304df1 fdomain_create +EXPORT_SYMBOL_GPL drivers/scsi/hisi_sas/hisi_sas_main 0x242b99ef hisi_sas_debugfs_work_handler +EXPORT_SYMBOL_GPL drivers/scsi/hisi_sas/hisi_sas_main 0x2696e4f2 hisi_sas_debugfs_exit +EXPORT_SYMBOL_GPL drivers/scsi/hisi_sas/hisi_sas_main 0x43f4bf4b hisi_sas_scan_finished +EXPORT_SYMBOL_GPL drivers/scsi/hisi_sas/hisi_sas_main 0x4c4a419a hisi_sas_phy_oob_ready +EXPORT_SYMBOL_GPL drivers/scsi/hisi_sas/hisi_sas_main 0x4f57ef6c hisi_sas_controller_reset_done +EXPORT_SYMBOL_GPL drivers/scsi/hisi_sas/hisi_sas_main 0x4fc22123 hisi_sas_stt +EXPORT_SYMBOL_GPL drivers/scsi/hisi_sas/hisi_sas_main 0x5722e7e5 hisi_sas_init_mem +EXPORT_SYMBOL_GPL drivers/scsi/hisi_sas/hisi_sas_main 0x58085625 hisi_sas_sync_irqs +EXPORT_SYMBOL_GPL drivers/scsi/hisi_sas/hisi_sas_main 0x6f98dedd hisi_sas_phy_down +EXPORT_SYMBOL_GPL drivers/scsi/hisi_sas/hisi_sas_main 0x73bba015 hisi_sas_slave_configure +EXPORT_SYMBOL_GPL drivers/scsi/hisi_sas/hisi_sas_main 0x7a1232a1 hisi_sas_phy_enable +EXPORT_SYMBOL_GPL drivers/scsi/hisi_sas/hisi_sas_main 0x86804d2f hisi_sas_slot_task_free +EXPORT_SYMBOL_GPL drivers/scsi/hisi_sas/hisi_sas_main 0x888da4d9 hisi_sas_release_tasks +EXPORT_SYMBOL_GPL drivers/scsi/hisi_sas/hisi_sas_main 0x89499254 hisi_sas_probe +EXPORT_SYMBOL_GPL drivers/scsi/hisi_sas/hisi_sas_main 0x9861d07e hisi_sas_sata_done +EXPORT_SYMBOL_GPL drivers/scsi/hisi_sas/hisi_sas_main 0x9b807c91 hisi_sas_get_prog_phy_linkrate_mask +EXPORT_SYMBOL_GPL drivers/scsi/hisi_sas/hisi_sas_main 0xa957bedc hisi_sas_host_reset +EXPORT_SYMBOL_GPL drivers/scsi/hisi_sas/hisi_sas_main 0xb03aa9c5 hisi_sas_rst_work_handler +EXPORT_SYMBOL_GPL drivers/scsi/hisi_sas/hisi_sas_main 0xbcd7f8d6 hisi_sas_stop_phys +EXPORT_SYMBOL_GPL drivers/scsi/hisi_sas/hisi_sas_main 0xc36c7095 hisi_sas_debugfs_init +EXPORT_SYMBOL_GPL drivers/scsi/hisi_sas/hisi_sas_main 0xc3a41131 hisi_sas_debugfs_dump_count +EXPORT_SYMBOL_GPL drivers/scsi/hisi_sas/hisi_sas_main 0xc7c72664 hisi_sas_alloc +EXPORT_SYMBOL_GPL drivers/scsi/hisi_sas/hisi_sas_main 0xc7dda9ed hisi_sas_get_fw_info +EXPORT_SYMBOL_GPL drivers/scsi/hisi_sas/hisi_sas_main 0xca6d9833 to_hisi_sas_port +EXPORT_SYMBOL_GPL drivers/scsi/hisi_sas/hisi_sas_main 0xd789920c hisi_sas_free +EXPORT_SYMBOL_GPL drivers/scsi/hisi_sas/hisi_sas_main 0xd7e86e06 hisi_sas_scan_start +EXPORT_SYMBOL_GPL drivers/scsi/hisi_sas/hisi_sas_main 0xe2c73f2d hisi_sas_remove +EXPORT_SYMBOL_GPL drivers/scsi/hisi_sas/hisi_sas_main 0xe330cb74 hisi_sas_sync_rst_work_handler +EXPORT_SYMBOL_GPL drivers/scsi/hisi_sas/hisi_sas_main 0xe987d9aa hisi_sas_debugfs_enable +EXPORT_SYMBOL_GPL drivers/scsi/hisi_sas/hisi_sas_main 0xebfae55c hisi_sas_get_ata_protocol +EXPORT_SYMBOL_GPL drivers/scsi/hisi_sas/hisi_sas_main 0xef3412e2 hisi_sas_controller_reset_prepare +EXPORT_SYMBOL_GPL drivers/scsi/hisi_sas/hisi_sas_main 0xf9e44e2f hisi_sas_notify_phy_event +EXPORT_SYMBOL_GPL drivers/scsi/iscsi_boot_sysfs 0x0494d840 iscsi_boot_create_acpitbl +EXPORT_SYMBOL_GPL drivers/scsi/iscsi_boot_sysfs 0x2318d0e9 iscsi_boot_destroy_kset +EXPORT_SYMBOL_GPL drivers/scsi/iscsi_boot_sysfs 0x7bc22244 iscsi_boot_create_kset +EXPORT_SYMBOL_GPL drivers/scsi/iscsi_boot_sysfs 0x7bd4cf05 iscsi_boot_create_ethernet +EXPORT_SYMBOL_GPL drivers/scsi/iscsi_boot_sysfs 0xc4732131 iscsi_boot_create_host_kset +EXPORT_SYMBOL_GPL drivers/scsi/iscsi_boot_sysfs 0xc5eac448 iscsi_boot_create_initiator +EXPORT_SYMBOL_GPL drivers/scsi/iscsi_boot_sysfs 0xd81a3ec8 iscsi_boot_create_target +EXPORT_SYMBOL_GPL drivers/scsi/libfc/libfc 0x48561353 fc_seq_els_rsp_send +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x017ea891 iscsi_conn_stop +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x034dfe15 iscsi_verify_itt +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x0e01e995 iscsi_host_set_param +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x11f324d1 iscsi_set_param +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x12b2ad06 iscsi_switch_str_param +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x171eea20 iscsi_session_get_param +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x27a50de3 iscsi_host_remove +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x2a1efb9d iscsi_update_cmdsn +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x3160580c iscsi_eh_session_reset +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x355a6759 iscsi_requeue_task +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x39c887f7 iscsi_session_failure +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x3bef2f73 iscsi_pool_init +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x448f069e iscsi_prep_data_out_pdu +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x469a9b9e iscsi_session_teardown +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x46fe56f2 iscsi_conn_bind +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x4f92b919 iscsi_target_alloc +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x5568ac51 iscsi_complete_pdu +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x67d4a834 iscsi_host_free +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x6a958285 iscsi_eh_recover_target +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x6b4b78f6 iscsi_queuecommand +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x6daf271d iscsi_session_setup +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x71fc316a iscsi_eh_cmd_timed_out +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x7f26d53e iscsi_host_add +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x8d303b1b iscsi_pool_free +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x8e7eb346 iscsi_itt_to_task +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x8f38ed22 iscsi_conn_failure +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x90b16783 iscsi_conn_setup +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x916a9bc6 iscsi_conn_get_param +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x939d7c7b iscsi_put_task +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x93e6c66b iscsi_suspend_tx +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x96194168 iscsi_complete_scsi_task +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0xa4dd72d0 iscsi_eh_device_reset +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0xaa3961c6 __iscsi_get_task +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0xaf73046b iscsi_conn_teardown +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0xb34f1fd3 iscsi_itt_to_ctask +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0xbe4c9f74 iscsi_session_recovery_timedout +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0xc19fc2ad iscsi_conn_queue_work +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0xc8254ce9 iscsi_conn_start +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0xd07fbe3e iscsi_host_get_param +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0xeab9cbd5 iscsi_conn_get_addr_param +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0xeedd9aca iscsi_host_alloc +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0xefc24e65 iscsi_suspend_queue +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0xf007cd59 iscsi_eh_abort +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0xf2a01a70 iscsi_conn_send_pdu +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0xf4a92c2a __iscsi_complete_pdu +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0xf737c67e __iscsi_put_task +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi_tcp 0x2002309b iscsi_tcp_r2tpool_free +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi_tcp 0x25b6bfea iscsi_tcp_dgst_header +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi_tcp 0x3998e9da iscsi_tcp_recv_skb +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi_tcp 0x3affd7e9 iscsi_tcp_conn_teardown +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi_tcp 0x4725e0ad iscsi_segment_init_linear +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi_tcp 0x4a3e8316 iscsi_tcp_r2tpool_alloc +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi_tcp 0x52f956a6 iscsi_tcp_set_max_r2t +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi_tcp 0x6ed0c3e4 iscsi_tcp_segment_done +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi_tcp 0x9b19ffb7 iscsi_tcp_conn_setup +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi_tcp 0xaa7956d6 iscsi_segment_seek_sg +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi_tcp 0xbe7487a0 iscsi_tcp_segment_unmap +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi_tcp 0xc4698e09 iscsi_tcp_recv_segment_is_hdr +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi_tcp 0xca24c423 iscsi_tcp_cleanup_task +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi_tcp 0xd15fef86 iscsi_tcp_conn_get_stats +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi_tcp 0xdbc0bebe iscsi_tcp_task_init +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi_tcp 0xea25aaf0 iscsi_tcp_hdr_recv_prep +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi_tcp 0xf9afe3f6 iscsi_tcp_task_xmit +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0x19c2fefa sas_free_task +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0x1d8f35c7 sas_slave_configure +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0x24a48c9b sas_bios_param +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0x44a2f503 dev_attr_phy_event_threshold +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0x5a15bd1a sas_target_alloc +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0x5d32478f sas_phy_reset +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0x5e36872e sas_eh_target_reset_handler +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0x707ccff6 sas_target_destroy +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0x88d13642 sas_unregister_ha +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0x8cd1558f sas_get_local_phy +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0x8f1a5aed sas_register_ha +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0x9f735850 sas_drain_work +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0xaaf60e02 sas_queuecommand +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0xb0b001b6 sas_change_queue_depth +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0xb18a614b sas_ioctl +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0xb4e17f9a sas_eh_abort_handler +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0xba3981d4 sas_alloc_slow_task +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0xbaab673e sas_request_addr +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0xbc52eb81 sas_domain_attach_transport +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0xbf4fc9d7 sas_eh_device_reset_handler +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0xc72acc21 sas_alloc_task +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0xe9cf06b0 sas_ssp_task_response +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0xefc4c119 sas_ata_schedule_reset +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0xf7c489aa sas_task_abort +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x07bd61e1 iscsi_destroy_conn +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x0946f32c iscsi_lookup_endpoint +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x0ae1efb6 iscsi_add_session +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x0eff326c iscsi_destroy_endpoint +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x21a63792 iscsi_unblock_session +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x2a085ee2 iscsi_create_conn +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x2a524710 iscsi_session_event +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x3133dc5c __tracepoint_iscsi_dbg_session +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x47867762 __tracepoint_iscsi_dbg_tcp +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x4d572d0e iscsi_post_host_event +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x56525c08 iscsi_dbg_trace +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x65b172ce iscsi_scan_finished +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x699fe53e iscsi_get_discovery_parent_name +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x7bb789c1 iscsi_is_session_online +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x7c305482 iscsi_alloc_session +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x841ef5a4 iscsi_remove_session +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x84a005f1 iscsi_get_router_state_name +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x895e0262 iscsi_create_endpoint +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x905521a6 iscsi_block_scsi_eh +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x9162a56c iscsi_free_session +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x99b295bf iscsi_ping_comp_event +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0xa1159468 iscsi_block_session +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0xa5a68f66 iscsi_create_iface +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0xa7aea525 iscsi_get_port_state_name +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0xa9b89069 iscsi_create_flashnode_conn +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0xaac3519d __tracepoint_iscsi_dbg_conn +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0xaea92c90 __tracepoint_iscsi_dbg_eh +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0xbc071179 iscsi_get_ipaddress_state_name +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0xbd3ebc50 iscsi_destroy_flashnode_sess +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0xbe8f8375 iscsi_unregister_transport +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0xc40ec4b5 iscsi_recv_pdu +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0xca980465 iscsi_conn_error_event +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0xd0950215 iscsi_find_flashnode_sess +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0xd4697d5b __tracepoint_iscsi_dbg_sw_tcp +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0xd565a43c iscsi_get_port_speed_name +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0xd6c0dd27 iscsi_host_for_each_session +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0xd84b57bf iscsi_is_session_dev +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0xd869a40f iscsi_offload_mesg +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0xddcbb35f iscsi_flashnode_bus_match +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0xdf8e0f07 iscsi_create_flashnode_sess +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0xe007c0e8 iscsi_find_flashnode_conn +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0xe440250d iscsi_register_transport +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0xef6f3a43 iscsi_destroy_all_flashnode +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0xf364ed88 iscsi_session_chkready +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0xf86b8756 iscsi_create_session +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0xfa5d9cc7 iscsi_destroy_iface +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0xfe2a5d1b iscsi_conn_login_event +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_sas 0x22aa136e sas_is_tlr_enabled +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_sas 0x436fe7cd sas_enable_tlr +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_sas 0x7cead195 sas_tlr_supported +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_sas 0xf6935ce3 sas_disable_tlr +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_spi 0x0ef06974 spi_populate_ppr_msg +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_spi 0x97e23094 spi_populate_tag_msg +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_spi 0xa0c71dac spi_populate_sync_msg +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_spi 0xcffa2aff spi_populate_width_msg +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_srp 0x02ac337f srp_release_transport +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_srp 0x1902178a srp_tmo_valid +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_srp 0x31bf1975 srp_rport_add +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_srp 0x75096b7c srp_rport_del +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_srp 0x989bde35 srp_stop_rport_timers +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_srp 0xa765922d srp_remove_host +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_srp 0xb984e3fe srp_attach_transport +EXPORT_SYMBOL_GPL drivers/scsi/ufs/ufshcd-core 0x0057ad70 ufshcd_hba_enable +EXPORT_SYMBOL_GPL drivers/scsi/ufs/ufshcd-core 0x10a74172 ufshcd_uic_hibern8_exit +EXPORT_SYMBOL_GPL drivers/scsi/ufs/ufshcd-core 0x1d90fb08 ufshcd_release +EXPORT_SYMBOL_GPL drivers/scsi/ufs/ufshcd-core 0x2efcb4f7 ufshcd_config_pwr_mode +EXPORT_SYMBOL_GPL drivers/scsi/ufs/ufshcd-core 0x4c960945 ufshcd_link_recovery +EXPORT_SYMBOL_GPL drivers/scsi/ufs/ufshcd-core 0x5d588c32 ufshcd_update_reg_hist +EXPORT_SYMBOL_GPL drivers/scsi/ufs/ufshcd-core 0x71f57d00 ufshcd_make_hba_operational +EXPORT_SYMBOL_GPL drivers/scsi/ufs/ufshcd-core 0x723b1abf ufshcd_delay_us +EXPORT_SYMBOL_GPL drivers/scsi/ufs/ufshcd-core 0x7351692a ufshcd_dump_regs +EXPORT_SYMBOL_GPL drivers/scsi/ufs/ufshcd-core 0x99cd1caf ufshcd_auto_hibern8_update +EXPORT_SYMBOL_GPL drivers/scsi/ufs/ufshcd-core 0xa1c39c5d ufshcd_dealloc_host +EXPORT_SYMBOL_GPL drivers/scsi/ufs/ufshcd-core 0xb3462347 ufshcd_fixup_dev_quirks +EXPORT_SYMBOL_GPL drivers/scsi/ufs/ufshcd-core 0xcb9c9877 ufshcd_hold +EXPORT_SYMBOL_GPL drivers/scsi/ufs/ufshcd-core 0xd91e15da ufshcd_remove +EXPORT_SYMBOL_GPL drivers/scsi/ufs/ufshcd-core 0xdf437fe1 ufshcd_init +EXPORT_SYMBOL_GPL drivers/scsi/ufs/ufshcd-core 0xf115a361 ufshcd_dme_set_attr +EXPORT_SYMBOL_GPL drivers/scsi/ufs/ufshcd-core 0xf296388a ufshcd_dme_get_attr +EXPORT_SYMBOL_GPL drivers/scsi/ufs/ufshcd-pltfrm 0x17ccd38f ufshcd_pltfrm_resume +EXPORT_SYMBOL_GPL drivers/scsi/ufs/ufshcd-pltfrm 0x234631ca ufshcd_pltfrm_init +EXPORT_SYMBOL_GPL drivers/scsi/ufs/ufshcd-pltfrm 0x5e10862e ufshcd_pltfrm_runtime_idle +EXPORT_SYMBOL_GPL drivers/scsi/ufs/ufshcd-pltfrm 0x7160db2b ufshcd_pltfrm_runtime_suspend +EXPORT_SYMBOL_GPL drivers/scsi/ufs/ufshcd-pltfrm 0x8186477b ufshcd_pltfrm_shutdown +EXPORT_SYMBOL_GPL drivers/scsi/ufs/ufshcd-pltfrm 0xde32214b ufshcd_pltfrm_runtime_resume +EXPORT_SYMBOL_GPL drivers/scsi/ufs/ufshcd-pltfrm 0xeda02370 ufshcd_pltfrm_suspend +EXPORT_SYMBOL_GPL drivers/scsi/ufs/ufshcd-pltfrm 0xff85cd6b ufshcd_get_pwr_dev_param +EXPORT_SYMBOL_GPL drivers/siox/siox-core 0x03d302c5 siox_device_connected +EXPORT_SYMBOL_GPL drivers/siox/siox-core 0x39e52aaf siox_device_synced +EXPORT_SYMBOL_GPL drivers/siox/siox-core 0x457dbf58 siox_master_register +EXPORT_SYMBOL_GPL drivers/siox/siox-core 0x49527e27 siox_master_unregister +EXPORT_SYMBOL_GPL drivers/siox/siox-core 0x8fc85e96 __siox_driver_register +EXPORT_SYMBOL_GPL drivers/siox/siox-core 0xfe1e8e8e siox_master_alloc +EXPORT_SYMBOL_GPL drivers/slimbus/slimbus 0x054246ff slim_report_absent +EXPORT_SYMBOL_GPL drivers/slimbus/slimbus 0x10ecbde5 slim_get_device +EXPORT_SYMBOL_GPL drivers/slimbus/slimbus 0x135e60de slim_get_logical_addr +EXPORT_SYMBOL_GPL drivers/slimbus/slimbus 0x17e1f88d slim_read +EXPORT_SYMBOL_GPL drivers/slimbus/slimbus 0x1c9eb931 slim_xfer_msg +EXPORT_SYMBOL_GPL drivers/slimbus/slimbus 0x1e9ad323 slimbus_bus +EXPORT_SYMBOL_GPL drivers/slimbus/slimbus 0x22f6f985 slim_device_report_present +EXPORT_SYMBOL_GPL drivers/slimbus/slimbus 0x49a22c21 slim_do_transfer +EXPORT_SYMBOL_GPL drivers/slimbus/slimbus 0x4c0115de slim_write +EXPORT_SYMBOL_GPL drivers/slimbus/slimbus 0x4d0defba slim_stream_unprepare +EXPORT_SYMBOL_GPL drivers/slimbus/slimbus 0x537c21a9 slim_writeb +EXPORT_SYMBOL_GPL drivers/slimbus/slimbus 0x5397862e slim_free_txn_tid +EXPORT_SYMBOL_GPL drivers/slimbus/slimbus 0x599aa2fd slim_ctrl_clk_pause +EXPORT_SYMBOL_GPL drivers/slimbus/slimbus 0x652befe0 __slim_driver_register +EXPORT_SYMBOL_GPL drivers/slimbus/slimbus 0x6dc5112c slim_unregister_controller +EXPORT_SYMBOL_GPL drivers/slimbus/slimbus 0x72450401 of_slim_get_device +EXPORT_SYMBOL_GPL drivers/slimbus/slimbus 0x76127e97 slim_readb +EXPORT_SYMBOL_GPL drivers/slimbus/slimbus 0x7b4164ab slim_stream_prepare +EXPORT_SYMBOL_GPL drivers/slimbus/slimbus 0x87279226 slim_stream_disable +EXPORT_SYMBOL_GPL drivers/slimbus/slimbus 0x880ad330 slim_driver_unregister +EXPORT_SYMBOL_GPL drivers/slimbus/slimbus 0x91711290 slim_stream_free +EXPORT_SYMBOL_GPL drivers/slimbus/slimbus 0x9aa49fb4 slim_msg_response +EXPORT_SYMBOL_GPL drivers/slimbus/slimbus 0xc0d38d4e slim_stream_allocate +EXPORT_SYMBOL_GPL drivers/slimbus/slimbus 0xc33513bf slim_register_controller +EXPORT_SYMBOL_GPL drivers/slimbus/slimbus 0xc9b5c396 slim_stream_enable +EXPORT_SYMBOL_GPL drivers/slimbus/slimbus 0xef0e8df5 slim_alloc_txn_tid +EXPORT_SYMBOL_GPL drivers/soc/amlogic/meson-canvas 0x494128eb meson_canvas_alloc +EXPORT_SYMBOL_GPL drivers/soc/amlogic/meson-canvas 0x673c5a86 meson_canvas_config +EXPORT_SYMBOL_GPL drivers/soc/amlogic/meson-canvas 0x8b855933 meson_canvas_get +EXPORT_SYMBOL_GPL drivers/soc/amlogic/meson-canvas 0xfbd79150 meson_canvas_free +EXPORT_SYMBOL_GPL drivers/soc/fsl/dpio/fsl-mc-dpio 0x0261cd01 dpaa2_io_store_next +EXPORT_SYMBOL_GPL drivers/soc/fsl/dpio/fsl-mc-dpio 0x15f2698b dpaa2_io_service_register +EXPORT_SYMBOL_GPL drivers/soc/fsl/dpio/fsl-mc-dpio 0x1b7c4023 dpaa2_io_service_rearm +EXPORT_SYMBOL_GPL drivers/soc/fsl/dpio/fsl-mc-dpio 0x2ea89927 dpaa2_io_service_pull_channel +EXPORT_SYMBOL_GPL drivers/soc/fsl/dpio/fsl-mc-dpio 0x2f10852c dpaa2_io_service_select +EXPORT_SYMBOL_GPL drivers/soc/fsl/dpio/fsl-mc-dpio 0x3f8992eb dpaa2_io_service_release +EXPORT_SYMBOL_GPL drivers/soc/fsl/dpio/fsl-mc-dpio 0x4994345c dpaa2_io_store_destroy +EXPORT_SYMBOL_GPL drivers/soc/fsl/dpio/fsl-mc-dpio 0x4d081b19 dpaa2_io_store_create +EXPORT_SYMBOL_GPL drivers/soc/fsl/dpio/fsl-mc-dpio 0x6560c60d dpaa2_io_service_acquire +EXPORT_SYMBOL_GPL drivers/soc/fsl/dpio/fsl-mc-dpio 0x79cf65a1 dpaa2_io_service_enqueue_qd +EXPORT_SYMBOL_GPL drivers/soc/fsl/dpio/fsl-mc-dpio 0x8edafa55 dpaa2_io_query_bp_count +EXPORT_SYMBOL_GPL drivers/soc/fsl/dpio/fsl-mc-dpio 0xb9e81961 dpaa2_io_query_fq_count +EXPORT_SYMBOL_GPL drivers/soc/fsl/dpio/fsl-mc-dpio 0xdee45ca1 dpaa2_io_service_deregister +EXPORT_SYMBOL_GPL drivers/soc/qcom/apr 0x30d2b052 aprbus +EXPORT_SYMBOL_GPL drivers/soc/qcom/apr 0x412c8d08 apr_driver_unregister +EXPORT_SYMBOL_GPL drivers/soc/qcom/apr 0x83b6bba7 apr_send_pkt +EXPORT_SYMBOL_GPL drivers/soc/qcom/apr 0xd6671c35 __apr_driver_register +EXPORT_SYMBOL_GPL drivers/soc/qcom/llcc-qcom 0x03c9a66d llcc_get_slice_size +EXPORT_SYMBOL_GPL drivers/soc/qcom/llcc-qcom 0x0679b34d llcc_slice_getd +EXPORT_SYMBOL_GPL drivers/soc/qcom/llcc-qcom 0x7e773088 llcc_get_slice_id +EXPORT_SYMBOL_GPL drivers/soc/qcom/llcc-qcom 0xad3516c4 llcc_slice_activate +EXPORT_SYMBOL_GPL drivers/soc/qcom/llcc-qcom 0xb534ec76 llcc_slice_deactivate +EXPORT_SYMBOL_GPL drivers/soc/qcom/llcc-qcom 0xb68b1300 llcc_slice_putd +EXPORT_SYMBOL_GPL drivers/soc/qcom/mdt_loader 0x5db77c83 qcom_mdt_load_no_init +EXPORT_SYMBOL_GPL drivers/soc/qcom/mdt_loader 0xa1c6a5b9 qcom_mdt_read_metadata +EXPORT_SYMBOL_GPL drivers/soc/qcom/mdt_loader 0xd86c2234 qcom_mdt_load +EXPORT_SYMBOL_GPL drivers/soc/qcom/mdt_loader 0xe8a3861c qcom_mdt_get_size +EXPORT_SYMBOL_GPL drivers/soundwire/soundwire-bus 0x4247a986 sdw_bus_type +EXPORT_SYMBOL_GPL drivers/soundwire/soundwire-bus 0x7b91aafe __sdw_register_driver +EXPORT_SYMBOL_GPL drivers/soundwire/soundwire-bus 0xa6a8fce7 sdw_unregister_driver +EXPORT_SYMBOL_GPL drivers/soundwire/soundwire-cadence 0xb65d7b58 sdw_cdns_debugfs_init +EXPORT_SYMBOL_GPL drivers/spi/spi-bcm-qspi 0x06b4755f bcm_qspi_probe +EXPORT_SYMBOL_GPL drivers/spi/spi-bcm-qspi 0x581f885d bcm_qspi_pm_ops +EXPORT_SYMBOL_GPL drivers/spi/spi-bcm-qspi 0x6ebc817d bcm_qspi_remove +EXPORT_SYMBOL_GPL drivers/spi/spi-bitbang 0x1730fd69 spi_bitbang_setup_transfer +EXPORT_SYMBOL_GPL drivers/spi/spi-bitbang 0xafe4ff59 spi_bitbang_start +EXPORT_SYMBOL_GPL drivers/spi/spi-bitbang 0xd8ab036a spi_bitbang_cleanup +EXPORT_SYMBOL_GPL drivers/spi/spi-bitbang 0xdbdf87ed spi_bitbang_init +EXPORT_SYMBOL_GPL drivers/spi/spi-bitbang 0xe8d06c21 spi_bitbang_stop +EXPORT_SYMBOL_GPL drivers/spi/spi-bitbang 0xf899c32f spi_bitbang_setup +EXPORT_SYMBOL_GPL drivers/spi/spi-dw 0x18e9a7f4 dw_spi_dma_setup_generic +EXPORT_SYMBOL_GPL drivers/spi/spi-dw 0x26fa3ebc dw_spi_remove_host +EXPORT_SYMBOL_GPL drivers/spi/spi-dw 0x2893fda5 dw_spi_update_cr0_v1_01a +EXPORT_SYMBOL_GPL drivers/spi/spi-dw 0x2eccde44 dw_spi_suspend_host +EXPORT_SYMBOL_GPL drivers/spi/spi-dw 0x83046da5 dw_spi_update_cr0 +EXPORT_SYMBOL_GPL drivers/spi/spi-dw 0xb059d7c4 dw_spi_dma_setup_mfld +EXPORT_SYMBOL_GPL drivers/spi/spi-dw 0xb6d1d5d7 dw_spi_set_cs +EXPORT_SYMBOL_GPL drivers/spi/spi-dw 0xe22e5607 dw_spi_add_host +EXPORT_SYMBOL_GPL drivers/spi/spi-dw 0xfb605f05 dw_spi_resume_host +EXPORT_SYMBOL_GPL drivers/spi/spi-loopback-test 0x0b59f73b spi_test_execute_msg +EXPORT_SYMBOL_GPL drivers/spi/spi-loopback-test 0x81230472 spi_test_run_tests +EXPORT_SYMBOL_GPL drivers/spi/spi-loopback-test 0xb391d111 spi_test_run_test +EXPORT_SYMBOL_GPL drivers/spmi/spmi 0x19fd1be7 spmi_ext_register_write +EXPORT_SYMBOL_GPL drivers/spmi/spmi 0x1b2149ec spmi_controller_remove +EXPORT_SYMBOL_GPL drivers/spmi/spmi 0x246136ff spmi_command_reset +EXPORT_SYMBOL_GPL drivers/spmi/spmi 0x3560fc82 spmi_controller_alloc +EXPORT_SYMBOL_GPL drivers/spmi/spmi 0x4cbad2a6 spmi_register_read +EXPORT_SYMBOL_GPL drivers/spmi/spmi 0x55fd56e1 __spmi_driver_register +EXPORT_SYMBOL_GPL drivers/spmi/spmi 0x5f3ed7c7 spmi_command_sleep +EXPORT_SYMBOL_GPL drivers/spmi/spmi 0x6af600aa spmi_controller_add +EXPORT_SYMBOL_GPL drivers/spmi/spmi 0x6ccf4db6 spmi_command_shutdown +EXPORT_SYMBOL_GPL drivers/spmi/spmi 0x706187c9 spmi_register_write +EXPORT_SYMBOL_GPL drivers/spmi/spmi 0x77d5bb4e spmi_command_wakeup +EXPORT_SYMBOL_GPL drivers/spmi/spmi 0x7e8ffaf9 spmi_ext_register_readl +EXPORT_SYMBOL_GPL drivers/spmi/spmi 0x869ffb3a spmi_register_zero_write +EXPORT_SYMBOL_GPL drivers/spmi/spmi 0xa32a027c spmi_device_remove +EXPORT_SYMBOL_GPL drivers/spmi/spmi 0xc75bb9a4 spmi_ext_register_read +EXPORT_SYMBOL_GPL drivers/spmi/spmi 0xce8b854b spmi_device_add +EXPORT_SYMBOL_GPL drivers/spmi/spmi 0xe4beb524 spmi_device_alloc +EXPORT_SYMBOL_GPL drivers/spmi/spmi 0xf8b2d42e spmi_ext_register_writel +EXPORT_SYMBOL_GPL drivers/ssb/ssb 0x90112b67 ssb_pmu_spuravoid_pllupdate +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x07f5a231 comedi_request_region +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x0b88bbe6 comedi_nsamples_left +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x0cd330f4 range_unknown +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x0d0fa4c9 comedi_alloc_spriv +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x118f88cb comedi_driver_register +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x162bd203 comedi_driver_unregister +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x21102f87 range_0_32mA +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x26091706 __comedi_request_region +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x27485383 comedi_legacy_detach +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x2f0ad9d3 range_bipolar5 +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x348b4fb9 comedi_buf_read_free +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x3d4787bd comedi_alloc_subdevices +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x4236eaaf range_4_20mA +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x4fe634f3 range_bipolar2_5 +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x50500f6a comedi_bytes_per_scan_cmd +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x528a4a25 comedi_alloc_devpriv +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x566d6885 comedi_handle_events +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x5bd7dea5 comedi_buf_write_free +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x621d1e03 comedi_set_hw_dev +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x64024738 comedi_buf_read_n_available +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x717f570a comedi_dio_insn_config +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x7679426c comedi_dev_put +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x7a38f9ee comedi_alloc_subdev_readback +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x8113872c range_unipolar10 +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x8504d3fe comedi_check_chanlist +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x86a13fc1 comedi_buf_read_alloc +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x92cf3f1f comedi_buf_write_alloc +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x95d7cb8c comedi_dev_get_from_minor +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x982f64ae comedi_auto_config +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x9bd9a5ce comedi_buf_write_samples +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x9e02498b comedi_load_firmware +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0xa2f81102 comedi_event +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0xaaaeceac comedi_buf_read_samples +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0xb679cebc range_0_20mA +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0xbb52fc7f range_bipolar10 +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0xbdbe75c6 range_unipolar2_5 +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0xbe63c38e comedi_set_spriv_auto_free +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0xdb2044b2 range_unipolar5 +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0xdb8f669c comedi_nscans_left +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0xdfb85a4d comedi_dio_update_state +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0xe89291e3 comedi_bytes_per_scan +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0xecf4767f comedi_timeout +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0xf0480461 comedi_auto_unconfig +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0xf71f8caa comedi_readback_insn_read +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0xf79f033f comedi_is_subdevice_running +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0xffcd0f45 comedi_inc_scan_progress +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi_pci 0x17bf25c0 comedi_pci_disable +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi_pci 0x1bc99b9f comedi_pci_driver_register +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi_pci 0x63a9cef3 comedi_pci_driver_unregister +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi_pci 0x8c72b393 comedi_pci_enable +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi_pci 0x94830d5f comedi_pci_auto_unconfig +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi_pci 0x9b6be024 comedi_pci_auto_config +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi_pci 0xa6fccee4 comedi_pci_detach +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi_pci 0xf450efb0 comedi_to_pci_dev +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi_usb 0x26e18ad3 comedi_usb_driver_register +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi_usb 0x3aef96b7 comedi_to_usb_interface +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi_usb 0x8b15be10 comedi_usb_auto_unconfig +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi_usb 0x93550721 comedi_to_usb_dev +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi_usb 0x945576d6 comedi_usb_auto_config +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi_usb 0x9574e47f comedi_usb_driver_unregister +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/addi_watchdog 0x79f4a6cf addi_watchdog_reset +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/addi_watchdog 0x8f3c55c3 addi_watchdog_init +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/amplc_dio200_common 0x55d067a7 amplc_dio200_common_attach +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/amplc_dio200_common 0x9b0ced8c amplc_dio200_set_enhance +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/amplc_pc236_common 0x154ce608 amplc_pc236_common_attach +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/comedi_8254 0x176e03b1 comedi_8254_load +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/comedi_8254 0x1b7d6f0a comedi_8254_read +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/comedi_8254 0x1ffd3e2d comedi_8254_cascade_ns_to_timer +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/comedi_8254 0x34913e69 comedi_8254_init +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/comedi_8254 0x3590c68f comedi_8254_set_busy +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/comedi_8254 0x56a3c6c8 comedi_8254_write +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/comedi_8254 0x6a65967c comedi_8254_update_divisors +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/comedi_8254 0x6f72c020 comedi_8254_subdevice_init +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/comedi_8254 0x88a2858b comedi_8254_ns_to_timer +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/comedi_8254 0x94c01724 comedi_8254_mm_init +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/comedi_8254 0xa54efe85 comedi_8254_status +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/comedi_8254 0xcceb2d03 comedi_8254_set_mode +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/comedi_8254 0xdb2f9dab comedi_8254_pacer_enable +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/comedi_8255 0x0af1c9b4 subdev_8255_mm_init +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/comedi_8255 0x0af9dce9 subdev_8255_regbase +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/comedi_8255 0x5495ec1f subdev_8255_init +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/das08 0xfd9a8207 das08_common_attach +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/mite 0x07328d14 mite_bytes_in_transit +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/mite 0x0cdd0802 mite_prep_dma +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/mite 0x1b95184f mite_buf_change +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/mite 0x28ce174f mite_request_channel_in_range +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/mite 0x390a4fc4 mite_alloc_ring +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/mite 0x666d5967 mite_detach +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/mite 0x7d1f603b mite_request_channel +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/mite 0x8ae4cba6 mite_dma_disarm +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/mite 0xaebfc4ad mite_ack_linkc +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/mite 0xb18835e2 mite_attach +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/mite 0xb28c8873 mite_release_channel +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/mite 0xbad29b68 mite_init_ring_descriptors +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/mite 0xcdedc3bb mite_done +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/mite 0xd671b89c mite_dma_arm +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/mite 0xd84072ad mite_sync_dma +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/mite 0xec4ee60a mite_free_ring +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/ni_labpc_common 0x1ad7cd87 labpc_common_detach +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/ni_labpc_common 0xdfbe283f labpc_common_attach +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/ni_routing 0x076bc308 ni_find_route_source +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/ni_routing 0x0921123e ni_lookup_route_register +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/ni_routing 0x1facf7f8 ni_is_cmd_dest +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/ni_routing 0x64443d67 ni_get_valid_routes +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/ni_routing 0x6c18c54e ni_count_valid_routes +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/ni_routing 0x85e75c94 ni_assign_device_routes +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/ni_routing 0x863a306d ni_sort_device_routes +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/ni_routing 0x8ab47ba4 ni_route_set_has_source +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/ni_routing 0x8f0f0901 ni_find_route_set +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/ni_routing 0xb3e302a3 ni_route_to_register +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/ni_tio 0x0815c2d4 ni_tio_set_gate_src_raw +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/ni_tio 0x2a456ffe ni_tio_get_routing +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/ni_tio 0x4b910b02 ni_tio_get_soft_copy +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/ni_tio 0x5ad79900 ni_tio_read +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/ni_tio 0x5d433dd6 ni_tio_set_gate_src +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/ni_tio 0x6b54e5cc ni_tio_set_bits +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/ni_tio 0x7dfe64c2 ni_tio_init_counter +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/ni_tio 0x9a7f162f ni_tio_write +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/ni_tio 0xa3c28c10 ni_tio_insn_config +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/ni_tio 0xa70c5cad ni_gpct_device_construct +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/ni_tio 0xa835db45 ni_tio_insn_write +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/ni_tio 0xac21f63f ni_tio_arm +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/ni_tio 0xbf500ea4 ni_tio_insn_read +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/ni_tio 0xc34a4c2e ni_gpct_device_destroy +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/ni_tio 0xd4506b8b ni_tio_unset_routing +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/ni_tio 0xfafb88fe ni_tio_set_routing +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/ni_tiocmd 0x196a01b4 ni_tio_cmdtest +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/ni_tiocmd 0x2f7c3a52 ni_tio_handle_interrupt +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/ni_tiocmd 0x322b1500 ni_tio_set_mite_channel +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/ni_tiocmd 0x42713975 ni_tio_cancel +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/ni_tiocmd 0x4567c16c ni_tio_cmd +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/ni_tiocmd 0xfb1790c1 ni_tio_acknowledge +EXPORT_SYMBOL_GPL drivers/staging/comedi/kcomedilib/kcomedilib 0x10e0cdcb comedi_dio_get_config +EXPORT_SYMBOL_GPL drivers/staging/comedi/kcomedilib/kcomedilib 0x1157ac25 comedi_find_subdevice_by_type +EXPORT_SYMBOL_GPL drivers/staging/comedi/kcomedilib/kcomedilib 0x1e397fdb comedi_dio_bitfield2 +EXPORT_SYMBOL_GPL drivers/staging/comedi/kcomedilib/kcomedilib 0x1f5289f9 comedi_close +EXPORT_SYMBOL_GPL drivers/staging/comedi/kcomedilib/kcomedilib 0x2bbc5c21 comedi_get_n_channels +EXPORT_SYMBOL_GPL drivers/staging/comedi/kcomedilib/kcomedilib 0x84b80422 comedi_dio_config +EXPORT_SYMBOL_GPL drivers/staging/comedi/kcomedilib/kcomedilib 0xd6243fc1 comedi_open +EXPORT_SYMBOL_GPL drivers/staging/fieldbus/anybuss/anybuss_core 0x101e7b5f anybuss_client_driver_unregister +EXPORT_SYMBOL_GPL drivers/staging/fieldbus/anybuss/anybuss_core 0x183ee6f4 anybuss_write_input +EXPORT_SYMBOL_GPL drivers/staging/fieldbus/anybuss/anybuss_core 0x58a40d13 anybuss_read_output +EXPORT_SYMBOL_GPL drivers/staging/fieldbus/anybuss/anybuss_core 0x74562225 anybuss_send_msg +EXPORT_SYMBOL_GPL drivers/staging/fieldbus/anybuss/anybuss_core 0x79a769c3 devm_anybuss_host_common_probe +EXPORT_SYMBOL_GPL drivers/staging/fieldbus/anybuss/anybuss_core 0x7febe8c6 anybuss_finish_init +EXPORT_SYMBOL_GPL drivers/staging/fieldbus/anybuss/anybuss_core 0xab0233c3 anybuss_client_driver_register +EXPORT_SYMBOL_GPL drivers/staging/fieldbus/anybuss/anybuss_core 0xac9af6a4 anybuss_send_ext +EXPORT_SYMBOL_GPL drivers/staging/fieldbus/anybuss/anybuss_core 0xae8629a4 anybuss_host_common_probe +EXPORT_SYMBOL_GPL drivers/staging/fieldbus/anybuss/anybuss_core 0xbb647c21 anybuss_recv_msg +EXPORT_SYMBOL_GPL drivers/staging/fieldbus/anybuss/anybuss_core 0xf212972e anybuss_set_power +EXPORT_SYMBOL_GPL drivers/staging/fieldbus/anybuss/anybuss_core 0xfce879ad anybuss_host_common_remove +EXPORT_SYMBOL_GPL drivers/staging/fieldbus/anybuss/anybuss_core 0xfdfba493 anybuss_read_fbctrl +EXPORT_SYMBOL_GPL drivers/staging/fieldbus/anybuss/anybuss_core 0xfe543695 anybuss_start_init +EXPORT_SYMBOL_GPL drivers/staging/fieldbus/fieldbus_dev 0x48c8f8d8 fieldbus_dev_register +EXPORT_SYMBOL_GPL drivers/staging/fieldbus/fieldbus_dev 0x79bf65bb fieldbus_dev_area_updated +EXPORT_SYMBOL_GPL drivers/staging/fieldbus/fieldbus_dev 0x8f26c370 fieldbus_dev_online_changed +EXPORT_SYMBOL_GPL drivers/staging/fieldbus/fieldbus_dev 0xe54fe06f fieldbus_dev_unregister +EXPORT_SYMBOL_GPL drivers/staging/greybus/gb-audio-apbridgea 0x0f0ea473 gb_audio_apbridgea_stop_tx +EXPORT_SYMBOL_GPL drivers/staging/greybus/gb-audio-apbridgea 0x1b873919 gb_audio_apbridgea_stop_rx +EXPORT_SYMBOL_GPL drivers/staging/greybus/gb-audio-apbridgea 0x30724668 gb_audio_apbridgea_set_tx_data_size +EXPORT_SYMBOL_GPL drivers/staging/greybus/gb-audio-apbridgea 0x35c7a336 gb_audio_apbridgea_set_rx_data_size +EXPORT_SYMBOL_GPL drivers/staging/greybus/gb-audio-apbridgea 0x49ced0fe gb_audio_apbridgea_shutdown_tx +EXPORT_SYMBOL_GPL drivers/staging/greybus/gb-audio-apbridgea 0x5d474d94 gb_audio_apbridgea_shutdown_rx +EXPORT_SYMBOL_GPL drivers/staging/greybus/gb-audio-apbridgea 0x60d51414 gb_audio_apbridgea_unregister_cport +EXPORT_SYMBOL_GPL drivers/staging/greybus/gb-audio-apbridgea 0x6d4d28a7 gb_audio_apbridgea_set_config +EXPORT_SYMBOL_GPL drivers/staging/greybus/gb-audio-apbridgea 0x7f77accf gb_audio_apbridgea_start_rx +EXPORT_SYMBOL_GPL drivers/staging/greybus/gb-audio-apbridgea 0x8120f77b gb_audio_apbridgea_prepare_tx +EXPORT_SYMBOL_GPL drivers/staging/greybus/gb-audio-apbridgea 0x95a96a11 gb_audio_apbridgea_prepare_rx +EXPORT_SYMBOL_GPL drivers/staging/greybus/gb-audio-apbridgea 0xbaf15243 gb_audio_apbridgea_start_tx +EXPORT_SYMBOL_GPL drivers/staging/greybus/gb-audio-apbridgea 0xc8ed1759 gb_audio_apbridgea_register_cport +EXPORT_SYMBOL_GPL drivers/staging/greybus/gb-audio-gb 0x0bc69603 gb_audio_gb_get_pcm +EXPORT_SYMBOL_GPL drivers/staging/greybus/gb-audio-gb 0x19404182 gb_audio_gb_activate_tx +EXPORT_SYMBOL_GPL drivers/staging/greybus/gb-audio-gb 0x3b3f2a4e gb_audio_gb_set_tx_data_size +EXPORT_SYMBOL_GPL drivers/staging/greybus/gb-audio-gb 0x3d9f70e1 gb_audio_gb_disable_widget +EXPORT_SYMBOL_GPL drivers/staging/greybus/gb-audio-gb 0x5a926005 gb_audio_gb_enable_widget +EXPORT_SYMBOL_GPL drivers/staging/greybus/gb-audio-gb 0x74b75f03 gb_audio_gb_deactivate_tx +EXPORT_SYMBOL_GPL drivers/staging/greybus/gb-audio-gb 0x7d9fb1bf gb_audio_gb_get_topology +EXPORT_SYMBOL_GPL drivers/staging/greybus/gb-audio-gb 0xa3bedc83 gb_audio_gb_set_pcm +EXPORT_SYMBOL_GPL drivers/staging/greybus/gb-audio-gb 0xbdc8a5db gb_audio_gb_deactivate_rx +EXPORT_SYMBOL_GPL drivers/staging/greybus/gb-audio-gb 0xd03fbb5a gb_audio_gb_activate_rx +EXPORT_SYMBOL_GPL drivers/staging/greybus/gb-audio-gb 0xd5d57e77 gb_audio_gb_set_rx_data_size +EXPORT_SYMBOL_GPL drivers/staging/greybus/gb-audio-gb 0xdad310b2 gb_audio_gb_get_control +EXPORT_SYMBOL_GPL drivers/staging/greybus/gb-audio-gb 0xf8650f13 gb_audio_gb_set_control +EXPORT_SYMBOL_GPL drivers/staging/greybus/gb-audio-manager 0x19e9e6b1 gb_audio_manager_remove_all +EXPORT_SYMBOL_GPL drivers/staging/greybus/gb-audio-manager 0x32e6391e gb_audio_manager_remove +EXPORT_SYMBOL_GPL drivers/staging/greybus/gb-audio-manager 0x5a108b0f gb_audio_manager_add +EXPORT_SYMBOL_GPL drivers/staging/greybus/gb-audio-manager 0x79eef2f8 gb_audio_manager_dump_all +EXPORT_SYMBOL_GPL drivers/staging/greybus/gb-audio-manager 0xa95cfb4f gb_audio_manager_put_module +EXPORT_SYMBOL_GPL drivers/staging/greybus/gb-audio-manager 0xaeac8ca2 gb_audio_manager_dump_module +EXPORT_SYMBOL_GPL drivers/staging/greybus/gb-audio-manager 0xd3253735 gb_audio_manager_get_module +EXPORT_SYMBOL_GPL drivers/staging/greybus/gb-gbphy 0x80359147 gb_gbphy_register_driver +EXPORT_SYMBOL_GPL drivers/staging/greybus/gb-gbphy 0xce2e4de8 gb_gbphy_deregister_driver +EXPORT_SYMBOL_GPL drivers/staging/greybus/gb-spilib 0x54b77330 gb_spilib_master_exit +EXPORT_SYMBOL_GPL drivers/staging/greybus/gb-spilib 0x8d3d0fde gb_spilib_master_init +EXPORT_SYMBOL_GPL drivers/staging/iio/addac/adt7316 0xf47f2e34 adt7316_pm_ops +EXPORT_SYMBOL_GPL drivers/staging/media/allegro-dvt/allegro 0x09d3f6ec nal_h264_write_filler +EXPORT_SYMBOL_GPL drivers/staging/media/allegro-dvt/allegro 0x3b825582 nal_h264_read_pps +EXPORT_SYMBOL_GPL drivers/staging/media/allegro-dvt/allegro 0x8383145f nal_h264_write_pps +EXPORT_SYMBOL_GPL drivers/staging/media/allegro-dvt/allegro 0xa2487f58 nal_h264_read_filler +EXPORT_SYMBOL_GPL drivers/staging/media/allegro-dvt/allegro 0xd3e0489a nal_h264_read_sps +EXPORT_SYMBOL_GPL drivers/staging/media/allegro-dvt/allegro 0xf30c8c83 nal_h264_write_sps +EXPORT_SYMBOL_GPL drivers/staging/media/meson/vdec/meson-vdec 0x00ba5411 amvdec_add_ts +EXPORT_SYMBOL_GPL drivers/staging/media/meson/vdec/meson-vdec 0x115655e9 amvdec_am21c_body_size +EXPORT_SYMBOL_GPL drivers/staging/media/meson/vdec/meson-vdec 0x149368d5 codec_hevc_free_mmu_headers +EXPORT_SYMBOL_GPL drivers/staging/media/meson/vdec/meson-vdec 0x1acd1fba amvdec_write_parser +EXPORT_SYMBOL_GPL drivers/staging/media/meson/vdec/meson-vdec 0x1cb1e6d9 amvdec_am21c_size +EXPORT_SYMBOL_GPL drivers/staging/media/meson/vdec/meson-vdec 0x3162ddd7 amvdec_get_output_size +EXPORT_SYMBOL_GPL drivers/staging/media/meson/vdec/meson-vdec 0x3cc4c265 amvdec_dst_buf_done_idx +EXPORT_SYMBOL_GPL drivers/staging/media/meson/vdec/meson-vdec 0x569a12cd amvdec_src_change +EXPORT_SYMBOL_GPL drivers/staging/media/meson/vdec/meson-vdec 0x5ff35ee8 amvdec_am21c_head_size +EXPORT_SYMBOL_GPL drivers/staging/media/meson/vdec/meson-vdec 0x60df57ec amvdec_set_par_from_dar +EXPORT_SYMBOL_GPL drivers/staging/media/meson/vdec/meson-vdec 0x72d3340a codec_hevc_fill_mmu_map +EXPORT_SYMBOL_GPL drivers/staging/media/meson/vdec/meson-vdec 0x7a6f790e codec_hevc_free_fbc_buffers +EXPORT_SYMBOL_GPL drivers/staging/media/meson/vdec/meson-vdec 0x8a4c17c4 amvdec_set_canvases +EXPORT_SYMBOL_GPL drivers/staging/media/meson/vdec/meson-vdec 0x90973435 amvdec_clear_dos_bits +EXPORT_SYMBOL_GPL drivers/staging/media/meson/vdec/meson-vdec 0x99ca4ebe amvdec_read_parser +EXPORT_SYMBOL_GPL drivers/staging/media/meson/vdec/meson-vdec 0x99cca699 amvdec_write_dos +EXPORT_SYMBOL_GPL drivers/staging/media/meson/vdec/meson-vdec 0xae7795b7 amvdec_dst_buf_done +EXPORT_SYMBOL_GPL drivers/staging/media/meson/vdec/meson-vdec 0xb23e8ed1 codec_hevc_setup_buffers +EXPORT_SYMBOL_GPL drivers/staging/media/meson/vdec/meson-vdec 0xb3a59487 amvdec_abort +EXPORT_SYMBOL_GPL drivers/staging/media/meson/vdec/meson-vdec 0xcd4c781b amvdec_remove_ts +EXPORT_SYMBOL_GPL drivers/staging/media/meson/vdec/meson-vdec 0xd03e6091 codec_hevc_setup_decode_head +EXPORT_SYMBOL_GPL drivers/staging/media/meson/vdec/meson-vdec 0xecd94ca1 amvdec_dst_buf_done_offset +EXPORT_SYMBOL_GPL drivers/staging/media/meson/vdec/meson-vdec 0xf4c8302e amvdec_read_dos +EXPORT_SYMBOL_GPL drivers/staging/media/meson/vdec/meson-vdec 0xf5bf2916 amvdec_write_dos_bits +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0x14ab6dbb synth_add +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0x1da20daf spk_do_catch_up_unicode +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0x1e39eb14 synth_putws +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0x24d590ee spk_serial_io_ops +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0x28dca40a spk_var_show +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0x29d2d0db spk_synth_is_alive_restart +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0x3e8e69c2 synth_remove +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0x41a160e5 synth_buffer_empty +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0x4449e1dd synth_buffer_clear +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0x466f5eb7 synth_putwc +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0x5aeb3d68 spk_ttyio_synth_immediate +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0x60cca89d spk_ttyio_ops +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0x76d40046 synth_buffer_skip_nonlatin1 +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0x788428f1 spk_ttyio_synth_probe +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0x7daebbd2 synth_current +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0x81be6124 spk_serial_synth_probe +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0x84dad068 synth_buffer_getc +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0x8c82dfca synth_request_region +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0x8e50055a spk_stop_serial_interrupt +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0x8fe0db01 synth_putwc_s +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0xa833e1df spk_do_catch_up +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0xaadb0612 synth_buffer_peek +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0xae7d6424 spk_ttyio_release +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0xb734cb9d speakup_event +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0xbbd15a51 speakup_start_ttys +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0xc319c604 synth_putws_s +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0xc4366731 spk_serial_synth_immediate +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0xc4a9ad8e spk_var_store +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0xd47212e8 spk_synth_is_alive_nop +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0xd8fd86cf synth_release_region +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0xd93829dd speakup_info +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0xe194d0ef synth_printf +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0xe5aa27ac spk_synth_get_index +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0xe7cd4558 spk_serial_release +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0xf6941fa3 spk_synth_flush +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0xfd189eef spk_get_var +EXPORT_SYMBOL_GPL drivers/staging/wilc1000/wilc1000 0x52912d0c host_sleep_notify +EXPORT_SYMBOL_GPL drivers/staging/wilc1000/wilc1000 0x5be5ee1e chip_allow_sleep +EXPORT_SYMBOL_GPL drivers/staging/wilc1000/wilc1000 0x6585f608 host_wakeup_notify +EXPORT_SYMBOL_GPL drivers/staging/wilc1000/wilc1000 0x806545e8 wilc_handle_isr +EXPORT_SYMBOL_GPL drivers/staging/wilc1000/wilc1000 0x810d84c4 wilc_netdev_cleanup +EXPORT_SYMBOL_GPL drivers/staging/wilc1000/wilc1000 0xe2ed3d3d wilc_cfg80211_init +EXPORT_SYMBOL_GPL drivers/staging/wilc1000/wilc1000 0xe3f15842 chip_wakeup +EXPORT_SYMBOL_GPL drivers/tee/tee 0x145da236 tee_client_open_context +EXPORT_SYMBOL_GPL drivers/tee/tee 0x27173b57 tee_client_close_context +EXPORT_SYMBOL_GPL drivers/tee/tee 0x35d18e6f tee_client_open_session +EXPORT_SYMBOL_GPL drivers/tee/tee 0x3da2aa1c tee_device_register +EXPORT_SYMBOL_GPL drivers/tee/tee 0x41d48098 tee_shm_va2pa +EXPORT_SYMBOL_GPL drivers/tee/tee 0x51456986 tee_shm_pa2va +EXPORT_SYMBOL_GPL drivers/tee/tee 0x684a19a1 tee_device_unregister +EXPORT_SYMBOL_GPL drivers/tee/tee 0x6f8e7721 tee_shm_pool_alloc +EXPORT_SYMBOL_GPL drivers/tee/tee 0x75d17149 tee_shm_get_va +EXPORT_SYMBOL_GPL drivers/tee/tee 0x76bc5303 tee_shm_alloc +EXPORT_SYMBOL_GPL drivers/tee/tee 0x80b09fdb tee_shm_free +EXPORT_SYMBOL_GPL drivers/tee/tee 0x85fd9922 tee_session_calc_client_uuid +EXPORT_SYMBOL_GPL drivers/tee/tee 0x88cf4ec8 tee_bus_type +EXPORT_SYMBOL_GPL drivers/tee/tee 0x89c43926 tee_get_drvdata +EXPORT_SYMBOL_GPL drivers/tee/tee 0xa462c433 tee_device_alloc +EXPORT_SYMBOL_GPL drivers/tee/tee 0xa9aa74e5 tee_shm_pool_free +EXPORT_SYMBOL_GPL drivers/tee/tee 0xaa390119 tee_shm_get_pa +EXPORT_SYMBOL_GPL drivers/tee/tee 0xb3e67962 tee_client_invoke_func +EXPORT_SYMBOL_GPL drivers/tee/tee 0xb617c9d7 tee_shm_pool_mgr_alloc_res_mem +EXPORT_SYMBOL_GPL drivers/tee/tee 0xbdc5feaa tee_shm_pool_alloc_res_mem +EXPORT_SYMBOL_GPL drivers/tee/tee 0xc2305990 tee_shm_put +EXPORT_SYMBOL_GPL drivers/tee/tee 0xcd2f6ac1 tee_client_get_version +EXPORT_SYMBOL_GPL drivers/tee/tee 0xddd0976e tee_shm_get_from_id +EXPORT_SYMBOL_GPL drivers/tee/tee 0xede61943 tee_shm_register +EXPORT_SYMBOL_GPL drivers/tee/tee 0xf8eae984 tee_client_close_session +EXPORT_SYMBOL_GPL drivers/thunderbolt/thunderbolt 0x01d23ee1 tb_property_create_dir +EXPORT_SYMBOL_GPL drivers/thunderbolt/thunderbolt 0x03b1aa07 tb_ring_alloc_tx +EXPORT_SYMBOL_GPL drivers/thunderbolt/thunderbolt 0x0c143752 __tb_ring_enqueue +EXPORT_SYMBOL_GPL drivers/thunderbolt/thunderbolt 0x0c44b34a tb_xdomain_request +EXPORT_SYMBOL_GPL drivers/thunderbolt/thunderbolt 0x27168db2 tb_ring_poll +EXPORT_SYMBOL_GPL drivers/thunderbolt/thunderbolt 0x330defef tb_ring_alloc_rx +EXPORT_SYMBOL_GPL drivers/thunderbolt/thunderbolt 0x343de759 tb_register_service_driver +EXPORT_SYMBOL_GPL drivers/thunderbolt/thunderbolt 0x37407cee tb_service_type +EXPORT_SYMBOL_GPL drivers/thunderbolt/thunderbolt 0x393b4f2f tb_property_free_dir +EXPORT_SYMBOL_GPL drivers/thunderbolt/thunderbolt 0x4c797629 tb_xdomain_response +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 0x5571a2b4 tb_ring_start +EXPORT_SYMBOL_GPL drivers/thunderbolt/thunderbolt 0x5aea90fd tb_xdomain_enable_paths +EXPORT_SYMBOL_GPL drivers/thunderbolt/thunderbolt 0x603249ed tb_unregister_property_dir +EXPORT_SYMBOL_GPL drivers/thunderbolt/thunderbolt 0x6173895f tb_xdomain_disable_paths +EXPORT_SYMBOL_GPL drivers/thunderbolt/thunderbolt 0x658e3d97 tb_property_add_immediate +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 0x7f8433ba tb_ring_poll_complete +EXPORT_SYMBOL_GPL drivers/thunderbolt/thunderbolt 0x8b62f95e tb_property_add_dir +EXPORT_SYMBOL_GPL drivers/thunderbolt/thunderbolt 0x9f99e6ff tb_xdomain_find_by_uuid +EXPORT_SYMBOL_GPL drivers/thunderbolt/thunderbolt 0xa3d2b403 tb_property_add_data +EXPORT_SYMBOL_GPL drivers/thunderbolt/thunderbolt 0xac84d157 tb_ring_stop +EXPORT_SYMBOL_GPL drivers/thunderbolt/thunderbolt 0xb19a77c0 tb_ring_free +EXPORT_SYMBOL_GPL drivers/thunderbolt/thunderbolt 0xb7c7cdce tb_property_add_text +EXPORT_SYMBOL_GPL drivers/thunderbolt/thunderbolt 0xcdbe3358 tb_xdomain_find_by_route +EXPORT_SYMBOL_GPL drivers/thunderbolt/thunderbolt 0xd91f96db tb_xdomain_type +EXPORT_SYMBOL_GPL drivers/thunderbolt/thunderbolt 0xeb0f2828 tb_unregister_service_driver +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/tty/n_tracesink 0x8a422e5e n_tracesink_datadrain +EXPORT_SYMBOL_GPL drivers/uio/uio 0x1b13d453 uio_event_notify +EXPORT_SYMBOL_GPL drivers/uio/uio 0x6703848c __uio_register_device +EXPORT_SYMBOL_GPL drivers/uio/uio 0xd2706202 __devm_uio_register_device +EXPORT_SYMBOL_GPL drivers/uio/uio 0xdb2ad25e uio_unregister_device +EXPORT_SYMBOL_GPL drivers/usb/atm/usbatm 0x5f382f4f usbatm_usb_disconnect +EXPORT_SYMBOL_GPL drivers/usb/atm/usbatm 0x9d8ebe19 usbatm_usb_probe +EXPORT_SYMBOL_GPL drivers/usb/chipidea/ci_hdrc 0x3ebd28d9 ci_hdrc_remove_device +EXPORT_SYMBOL_GPL drivers/usb/chipidea/ci_hdrc 0x520cf28e ci_hdrc_add_device +EXPORT_SYMBOL_GPL drivers/usb/chipidea/ci_hdrc 0xdac1f339 hw_phymode_configure +EXPORT_SYMBOL_GPL drivers/usb/chipidea/usbmisc_imx 0x23935c94 imx_usbmisc_init +EXPORT_SYMBOL_GPL drivers/usb/chipidea/usbmisc_imx 0x7049f52b imx_usbmisc_set_wakeup +EXPORT_SYMBOL_GPL drivers/usb/chipidea/usbmisc_imx 0x719d09ab imx_usbmisc_charger_detection +EXPORT_SYMBOL_GPL drivers/usb/chipidea/usbmisc_imx 0xa384d94c imx_usbmisc_hsic_set_connect +EXPORT_SYMBOL_GPL drivers/usb/chipidea/usbmisc_imx 0xe8fe5096 imx_usbmisc_init_post +EXPORT_SYMBOL_GPL drivers/usb/chipidea/usbmisc_imx 0xff313a02 imx_usbmisc_hsic_set_clk +EXPORT_SYMBOL_GPL drivers/usb/common/ulpi 0x3684d8b9 __ulpi_register_driver +EXPORT_SYMBOL_GPL drivers/usb/common/ulpi 0x48959f17 ulpi_unregister_driver +EXPORT_SYMBOL_GPL drivers/usb/common/ulpi 0xa5f86fea ulpi_read +EXPORT_SYMBOL_GPL drivers/usb/common/ulpi 0xbd388a58 ulpi_unregister_interface +EXPORT_SYMBOL_GPL drivers/usb/common/ulpi 0xdd813ab9 ulpi_write +EXPORT_SYMBOL_GPL drivers/usb/common/ulpi 0xefb5f368 ulpi_register_interface +EXPORT_SYMBOL_GPL drivers/usb/gadget/function/u_audio 0x6eeb98b2 u_audio_stop_capture +EXPORT_SYMBOL_GPL drivers/usb/gadget/function/u_audio 0xa125ec28 u_audio_stop_playback +EXPORT_SYMBOL_GPL drivers/usb/gadget/function/u_audio 0xb3005e66 g_audio_setup +EXPORT_SYMBOL_GPL drivers/usb/gadget/function/u_audio 0xbdbe4207 g_audio_cleanup +EXPORT_SYMBOL_GPL drivers/usb/gadget/function/u_audio 0xf3d52740 u_audio_start_playback +EXPORT_SYMBOL_GPL drivers/usb/gadget/function/u_audio 0xf6c2c601 u_audio_start_capture +EXPORT_SYMBOL_GPL drivers/usb/gadget/function/u_ether 0x00809910 gether_disconnect +EXPORT_SYMBOL_GPL drivers/usb/gadget/function/u_ether 0x1a5eea1b gether_get_host_addr_cdc +EXPORT_SYMBOL_GPL drivers/usb/gadget/function/u_ether 0x427611d9 gether_connect +EXPORT_SYMBOL_GPL drivers/usb/gadget/function/u_ether 0x4542ab66 gether_get_host_addr +EXPORT_SYMBOL_GPL drivers/usb/gadget/function/u_ether 0x557599e1 gether_get_dev_addr +EXPORT_SYMBOL_GPL drivers/usb/gadget/function/u_ether 0x62665308 gether_setup_name_default +EXPORT_SYMBOL_GPL drivers/usb/gadget/function/u_ether 0x62794622 gether_setup_name +EXPORT_SYMBOL_GPL drivers/usb/gadget/function/u_ether 0x7257708c gether_register_netdev +EXPORT_SYMBOL_GPL drivers/usb/gadget/function/u_ether 0x833b33a1 gether_get_host_addr_u8 +EXPORT_SYMBOL_GPL drivers/usb/gadget/function/u_ether 0x84548e54 gether_set_dev_addr +EXPORT_SYMBOL_GPL drivers/usb/gadget/function/u_ether 0x8878cfa6 gether_cleanup +EXPORT_SYMBOL_GPL drivers/usb/gadget/function/u_ether 0x984df6bc gether_set_qmult +EXPORT_SYMBOL_GPL drivers/usb/gadget/function/u_ether 0x98565813 gether_get_ifname +EXPORT_SYMBOL_GPL drivers/usb/gadget/function/u_ether 0xa1b47c77 gether_set_gadget +EXPORT_SYMBOL_GPL drivers/usb/gadget/function/u_ether 0xe9040a4d gether_get_qmult +EXPORT_SYMBOL_GPL drivers/usb/gadget/function/u_ether 0xfccc84b9 gether_set_host_addr +EXPORT_SYMBOL_GPL drivers/usb/gadget/function/u_serial 0x1c68a141 gserial_connect +EXPORT_SYMBOL_GPL drivers/usb/gadget/function/u_serial 0x33bfdca2 gserial_alloc_line +EXPORT_SYMBOL_GPL drivers/usb/gadget/function/u_serial 0x4a3df9d0 gs_alloc_req +EXPORT_SYMBOL_GPL drivers/usb/gadget/function/u_serial 0x60db48f5 gserial_get_console +EXPORT_SYMBOL_GPL drivers/usb/gadget/function/u_serial 0x60ea48a0 gs_free_req +EXPORT_SYMBOL_GPL drivers/usb/gadget/function/u_serial 0x6b22a43f gserial_disconnect +EXPORT_SYMBOL_GPL drivers/usb/gadget/function/u_serial 0xb6652875 gserial_free_line +EXPORT_SYMBOL_GPL drivers/usb/gadget/function/u_serial 0xc0a01527 gserial_set_console +EXPORT_SYMBOL_GPL drivers/usb/gadget/function/u_serial 0xcfdd409e gserial_resume +EXPORT_SYMBOL_GPL drivers/usb/gadget/function/u_serial 0xe89dc424 gserial_alloc_line_no_console +EXPORT_SYMBOL_GPL drivers/usb/gadget/function/u_serial 0xfff47eb3 gserial_suspend +EXPORT_SYMBOL_GPL drivers/usb/gadget/function/usb_f_fs 0x1433cb51 ffs_single_dev +EXPORT_SYMBOL_GPL drivers/usb/gadget/function/usb_f_fs 0x57f469c5 ffs_lock +EXPORT_SYMBOL_GPL drivers/usb/gadget/function/usb_f_fs 0x5ce91623 ffs_name_dev +EXPORT_SYMBOL_GPL drivers/usb/gadget/function/usb_f_mass_storage 0x0695e128 fsg_show_file +EXPORT_SYMBOL_GPL drivers/usb/gadget/function/usb_f_mass_storage 0x08f40e9b fsg_common_remove_lun +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 0x15271005 fsg_lun_open +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 0x1ccb58f7 fsg_common_set_num_buffers +EXPORT_SYMBOL_GPL drivers/usb/gadget/function/usb_f_mass_storage 0x2571b089 fsg_store_inquiry_string +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 0x3347fedd fsg_store_nofua +EXPORT_SYMBOL_GPL drivers/usb/gadget/function/usb_f_mass_storage 0x37549d72 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 0x423845e4 fsg_ss_bulk_in_comp_desc +EXPORT_SYMBOL_GPL drivers/usb/gadget/function/usb_f_mass_storage 0x42a97bd3 fsg_show_cdrom +EXPORT_SYMBOL_GPL drivers/usb/gadget/function/usb_f_mass_storage 0x4686a3b1 fsg_store_file +EXPORT_SYMBOL_GPL drivers/usb/gadget/function/usb_f_mass_storage 0x55a0ff86 fsg_lun_close +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 0x66fb1136 fsg_store_removable +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 0x857b6dc2 fsg_hs_function +EXPORT_SYMBOL_GPL drivers/usb/gadget/function/usb_f_mass_storage 0x88bd7eed fsg_show_ro +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 0x99098551 fsg_store_cdrom +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 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 0xa7c87f16 fsg_common_set_cdev +EXPORT_SYMBOL_GPL drivers/usb/gadget/function/usb_f_mass_storage 0xaa8d0c6f 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 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 0xc31cfe6b fsg_lun_fsync_sub +EXPORT_SYMBOL_GPL drivers/usb/gadget/function/usb_f_mass_storage 0xd0256fb7 fsg_show_inquiry_string +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 0xd1bf0f41 fsg_show_removable +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_rndis 0x0ad9c339 rndis_register +EXPORT_SYMBOL_GPL drivers/usb/gadget/function/usb_f_rndis 0x278ef0c1 rndis_add_hdr +EXPORT_SYMBOL_GPL drivers/usb/gadget/function/usb_f_rndis 0x2da52239 rndis_rm_hdr +EXPORT_SYMBOL_GPL drivers/usb/gadget/function/usb_f_rndis 0x30f50431 rndis_signal_connect +EXPORT_SYMBOL_GPL drivers/usb/gadget/function/usb_f_rndis 0x3271996a rndis_set_host_mac +EXPORT_SYMBOL_GPL drivers/usb/gadget/function/usb_f_rndis 0x4b5d6085 rndis_set_param_medium +EXPORT_SYMBOL_GPL drivers/usb/gadget/function/usb_f_rndis 0x5274ac53 rndis_set_param_dev +EXPORT_SYMBOL_GPL drivers/usb/gadget/function/usb_f_rndis 0x5ef45014 rndis_deregister +EXPORT_SYMBOL_GPL drivers/usb/gadget/function/usb_f_rndis 0x6621a5d1 rndis_get_next_response +EXPORT_SYMBOL_GPL drivers/usb/gadget/function/usb_f_rndis 0x695983eb rndis_uninit +EXPORT_SYMBOL_GPL drivers/usb/gadget/function/usb_f_rndis 0xc2e5e8c7 rndis_signal_disconnect +EXPORT_SYMBOL_GPL drivers/usb/gadget/function/usb_f_rndis 0xcce2fe7b rndis_set_param_vendor +EXPORT_SYMBOL_GPL drivers/usb/gadget/function/usb_f_rndis 0xcddb3ef8 rndis_borrow_net +EXPORT_SYMBOL_GPL drivers/usb/gadget/function/usb_f_rndis 0xdd5de2b5 rndis_msg_parser +EXPORT_SYMBOL_GPL drivers/usb/gadget/function/usb_f_rndis 0xf63d32ba rndis_free_response +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0x01408c4d usb_add_config_only +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0x0c589aba usb_validate_langid +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0x0cb7e477 usb_ep_autoconfig_release +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0x1ca8bb7f usb_get_function +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0x255f9a61 usb_gstrings_attach +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0x2a58ceaf usb_function_unregister +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0x2e09263f usb_copy_descriptors +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0x3a99759e usb_string_id +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0x3c836334 unregister_gadget_item +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0x3d04c49f usb_interface_id +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0x3e07668e usb_ep_autoconfig +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0x3fe5d7ff usb_function_activate +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0x4269b4ce usb_composite_setup_continue +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0x4beb505d usb_gadget_get_string +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0x52ae4ea2 usb_composite_probe +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0x58b07bb1 usb_add_function +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0x5c6d4218 usb_put_function +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0x683317f1 usb_ep_autoconfig_reset +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0x76f3ee32 usb_composite_unregister +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0x83b52d29 usb_function_register +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0x8b5ddf35 usb_otg_descriptor_init +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0x8bd2eee7 usb_otg_descriptor_alloc +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0x90884605 usb_function_deactivate +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0x939a5df5 usb_composite_overwrite_options +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0x98a8212f usb_assign_descriptors +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0x9dec6d3a config_ep_by_speed_and_alt +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0xa95ea60d usb_string_ids_n +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0xb73411a1 usb_free_all_descriptors +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0xb775db55 alloc_ep_req +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0xca286a6c config_ep_by_speed +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0xd2ea2134 usb_descriptor_fillbuf +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0xdc39a3a0 usb_string_ids_tab +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0xe119f6ca usb_get_function_instance +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0xf474a207 usb_gadget_config_buf +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0xfbb7db85 usb_remove_function +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0xfc5c3d2a usb_ep_autoconfig_ss +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0xfcca7cdb usb_put_function_instance +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0xff731313 usb_add_config +EXPORT_SYMBOL_GPL drivers/usb/gadget/udc/snps_udc_core 0x37143b6d udc_mask_unused_interrupts +EXPORT_SYMBOL_GPL drivers/usb/gadget/udc/snps_udc_core 0x50bd0a4e udc_probe +EXPORT_SYMBOL_GPL drivers/usb/gadget/udc/snps_udc_core 0x5d01d078 udc_irq +EXPORT_SYMBOL_GPL drivers/usb/gadget/udc/snps_udc_core 0x6cce2247 udc_enable_dev_setup_interrupts +EXPORT_SYMBOL_GPL drivers/usb/gadget/udc/snps_udc_core 0x7a00f59d udc_remove +EXPORT_SYMBOL_GPL drivers/usb/gadget/udc/snps_udc_core 0x8d6cd1de empty_req_queue +EXPORT_SYMBOL_GPL drivers/usb/gadget/udc/snps_udc_core 0x90d4f40d udc_basic_init +EXPORT_SYMBOL_GPL drivers/usb/gadget/udc/snps_udc_core 0xa27fd1a7 free_dma_pools +EXPORT_SYMBOL_GPL drivers/usb/gadget/udc/snps_udc_core 0xc1ba02b7 gadget_release +EXPORT_SYMBOL_GPL drivers/usb/gadget/udc/snps_udc_core 0xd024af17 init_dma_pools +EXPORT_SYMBOL_GPL drivers/usb/gadget/udc/udc-core 0x0099f997 usb_gadget_vbus_disconnect +EXPORT_SYMBOL_GPL drivers/usb/gadget/udc/udc-core 0x01b12bfb usb_ep_free_request +EXPORT_SYMBOL_GPL drivers/usb/gadget/udc/udc-core 0x0a8c3b4b usb_ep_set_halt +EXPORT_SYMBOL_GPL drivers/usb/gadget/udc/udc-core 0x0acfe2e7 usb_ep_set_wedge +EXPORT_SYMBOL_GPL drivers/usb/gadget/udc/udc-core 0x0b65a00f usb_add_gadget_udc_release +EXPORT_SYMBOL_GPL drivers/usb/gadget/udc/udc-core 0x0d90d784 usb_ep_fifo_flush +EXPORT_SYMBOL_GPL drivers/usb/gadget/udc/udc-core 0x11f7d891 usb_gadget_ep_match_desc +EXPORT_SYMBOL_GPL drivers/usb/gadget/udc/udc-core 0x1e31d99e usb_gadget_wakeup +EXPORT_SYMBOL_GPL drivers/usb/gadget/udc/udc-core 0x27be10ea usb_gadget_udc_reset +EXPORT_SYMBOL_GPL drivers/usb/gadget/udc/udc-core 0x2b332682 usb_gadget_frame_number +EXPORT_SYMBOL_GPL drivers/usb/gadget/udc/udc-core 0x44098aaa usb_gadget_vbus_connect +EXPORT_SYMBOL_GPL drivers/usb/gadget/udc/udc-core 0x49d9f030 usb_ep_fifo_status +EXPORT_SYMBOL_GPL drivers/usb/gadget/udc/udc-core 0x4c659b0d usb_add_gadget_udc +EXPORT_SYMBOL_GPL drivers/usb/gadget/udc/udc-core 0x506ab3a9 usb_ep_queue +EXPORT_SYMBOL_GPL drivers/usb/gadget/udc/udc-core 0x50b88f41 usb_get_gadget_udc_name +EXPORT_SYMBOL_GPL drivers/usb/gadget/udc/udc-core 0x5b428486 usb_gadget_set_selfpowered +EXPORT_SYMBOL_GPL drivers/usb/gadget/udc/udc-core 0x5fc294ef usb_ep_clear_halt +EXPORT_SYMBOL_GPL drivers/usb/gadget/udc/udc-core 0x671974ea usb_gadget_clear_selfpowered +EXPORT_SYMBOL_GPL drivers/usb/gadget/udc/udc-core 0x673e9fd9 usb_gadget_disconnect +EXPORT_SYMBOL_GPL drivers/usb/gadget/udc/udc-core 0x721c5d53 usb_gadget_unregister_driver +EXPORT_SYMBOL_GPL drivers/usb/gadget/udc/udc-core 0x7a41b9f2 usb_ep_set_maxpacket_limit +EXPORT_SYMBOL_GPL drivers/usb/gadget/udc/udc-core 0x7adf0943 usb_gadget_vbus_draw +EXPORT_SYMBOL_GPL drivers/usb/gadget/udc/udc-core 0x7be89624 usb_gadget_giveback_request +EXPORT_SYMBOL_GPL drivers/usb/gadget/udc/udc-core 0x860734bd gadget_find_ep_by_name +EXPORT_SYMBOL_GPL drivers/usb/gadget/udc/udc-core 0x882077d5 usb_ep_dequeue +EXPORT_SYMBOL_GPL drivers/usb/gadget/udc/udc-core 0x95d2aa61 usb_gadget_deactivate +EXPORT_SYMBOL_GPL drivers/usb/gadget/udc/udc-core 0x9eb52803 usb_ep_disable +EXPORT_SYMBOL_GPL drivers/usb/gadget/udc/udc-core 0xa9e74462 usb_ep_alloc_request +EXPORT_SYMBOL_GPL drivers/usb/gadget/udc/udc-core 0xaf201fa6 usb_ep_enable +EXPORT_SYMBOL_GPL drivers/usb/gadget/udc/udc-core 0xaf8e4bc1 usb_gadget_map_request_by_dev +EXPORT_SYMBOL_GPL drivers/usb/gadget/udc/udc-core 0xb7c75919 usb_gadget_probe_driver +EXPORT_SYMBOL_GPL drivers/usb/gadget/udc/udc-core 0xbeb94460 usb_gadget_activate +EXPORT_SYMBOL_GPL drivers/usb/gadget/udc/udc-core 0xd39e7cc2 usb_udc_vbus_handler +EXPORT_SYMBOL_GPL drivers/usb/gadget/udc/udc-core 0xdb0690dc usb_del_gadget_udc +EXPORT_SYMBOL_GPL drivers/usb/gadget/udc/udc-core 0xe90ee82b usb_gadget_set_state +EXPORT_SYMBOL_GPL drivers/usb/gadget/udc/udc-core 0xf3b67392 usb_gadget_map_request +EXPORT_SYMBOL_GPL drivers/usb/gadget/udc/udc-core 0xf5847805 usb_gadget_connect +EXPORT_SYMBOL_GPL drivers/usb/gadget/udc/udc-core 0xfea0a40a usb_gadget_unmap_request +EXPORT_SYMBOL_GPL drivers/usb/gadget/udc/udc-core 0xff069ab3 usb_gadget_unmap_request_by_dev +EXPORT_SYMBOL_GPL drivers/usb/host/xhci-pci-renesas 0x62013668 renesas_xhci_check_request_fw +EXPORT_SYMBOL_GPL drivers/usb/host/xhci-pci-renesas 0xccba8f26 renesas_xhci_pci_exit +EXPORT_SYMBOL_GPL drivers/usb/misc/ezusb 0x9c06aedc ezusb_fx1_set_reset +EXPORT_SYMBOL_GPL drivers/usb/misc/ezusb 0xe5bfc2a7 ezusb_fx1_ihex_firmware_download +EXPORT_SYMBOL_GPL drivers/usb/misc/ftdi-elan 0x2307fa78 usb_ftdi_elan_edset_single +EXPORT_SYMBOL_GPL drivers/usb/misc/ftdi-elan 0x24c10364 usb_ftdi_elan_read_pcimem +EXPORT_SYMBOL_GPL drivers/usb/misc/ftdi-elan 0x29934698 usb_ftdi_elan_edset_flush +EXPORT_SYMBOL_GPL drivers/usb/misc/ftdi-elan 0x30885336 usb_ftdi_elan_edset_input +EXPORT_SYMBOL_GPL drivers/usb/misc/ftdi-elan 0x48f96563 usb_ftdi_elan_edset_empty +EXPORT_SYMBOL_GPL drivers/usb/misc/ftdi-elan 0x6e2121bb usb_ftdi_elan_write_pcimem +EXPORT_SYMBOL_GPL drivers/usb/misc/ftdi-elan 0x87dc314c usb_ftdi_elan_edset_setup +EXPORT_SYMBOL_GPL drivers/usb/misc/ftdi-elan 0xcbc63fff ftdi_elan_gone_away +EXPORT_SYMBOL_GPL drivers/usb/misc/ftdi-elan 0xd082c170 usb_ftdi_elan_edset_output +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 0x10293761 musb_set_host +EXPORT_SYMBOL_GPL drivers/usb/musb/musb_hdrc 0x225fcf59 musb_set_peripheral +EXPORT_SYMBOL_GPL drivers/usb/musb/musb_hdrc 0x22dee288 musb_get_mode +EXPORT_SYMBOL_GPL drivers/usb/musb/musb_hdrc 0x2734197f musb_readb +EXPORT_SYMBOL_GPL drivers/usb/musb/musb_hdrc 0x591c341c musb_interrupt +EXPORT_SYMBOL_GPL drivers/usb/musb/musb_hdrc 0x669594ad musb_clearw +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 0x9b6a186d musb_root_disconnect +EXPORT_SYMBOL_GPL drivers/usb/musb/musb_hdrc 0xade3e56c musb_writew +EXPORT_SYMBOL_GPL drivers/usb/musb/musb_hdrc 0xb4c88abd musb_queue_resume_work +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 0x1f2ebf24 usb_gen_phy_init +EXPORT_SYMBOL_GPL drivers/usb/phy/phy-generic 0x2e213710 usb_phy_generic_register +EXPORT_SYMBOL_GPL drivers/usb/phy/phy-generic 0x8ac83527 usb_phy_gen_create_phy +EXPORT_SYMBOL_GPL drivers/usb/phy/phy-generic 0xcd0a937d usb_gen_phy_shutdown +EXPORT_SYMBOL_GPL drivers/usb/phy/phy-generic 0xd2929bb7 usb_phy_generic_unregister +EXPORT_SYMBOL_GPL drivers/usb/phy/phy-isp1301 0x034e8b53 isp1301_get_client +EXPORT_SYMBOL_GPL drivers/usb/serial/usb_wwan 0x4767a33a usb_wwan_port_probe +EXPORT_SYMBOL_GPL drivers/usb/serial/usbserial 0x00ded674 usb_serial_handle_sysrq_char +EXPORT_SYMBOL_GPL drivers/usb/serial/usbserial 0x099852f1 usb_serial_generic_process_read_urb +EXPORT_SYMBOL_GPL drivers/usb/serial/usbserial 0x09afbd48 usb_serial_generic_read_bulk_callback +EXPORT_SYMBOL_GPL drivers/usb/serial/usbserial 0x0c627a03 usb_serial_deregister_drivers +EXPORT_SYMBOL_GPL drivers/usb/serial/usbserial 0x14fb1262 usb_serial_port_softint +EXPORT_SYMBOL_GPL drivers/usb/serial/usbserial 0x159025df usb_serial_generic_submit_read_urbs +EXPORT_SYMBOL_GPL drivers/usb/serial/usbserial 0x1b81fd6f usb_serial_generic_open +EXPORT_SYMBOL_GPL drivers/usb/serial/usbserial 0x2389c2e0 usb_serial_generic_tiocmiwait +EXPORT_SYMBOL_GPL drivers/usb/serial/usbserial 0x46ad2a3e usb_serial_generic_write_bulk_callback +EXPORT_SYMBOL_GPL drivers/usb/serial/usbserial 0x47c08261 usb_serial_generic_resume +EXPORT_SYMBOL_GPL drivers/usb/serial/usbserial 0x48156651 usb_serial_handle_dcd_change +EXPORT_SYMBOL_GPL drivers/usb/serial/usbserial 0x481acef9 usb_serial_generic_throttle +EXPORT_SYMBOL_GPL drivers/usb/serial/usbserial 0x49bf9797 usb_serial_generic_wait_until_sent +EXPORT_SYMBOL_GPL drivers/usb/serial/usbserial 0x8b72e98d usb_serial_generic_unthrottle +EXPORT_SYMBOL_GPL drivers/usb/serial/usbserial 0x97a42400 usb_serial_handle_break +EXPORT_SYMBOL_GPL drivers/usb/serial/usbserial 0x99dd2513 usb_serial_generic_get_icount +EXPORT_SYMBOL_GPL drivers/usb/serial/usbserial 0xa1bbfb09 usb_serial_generic_close +EXPORT_SYMBOL_GPL drivers/usb/serial/usbserial 0xb6ce99d8 usb_serial_generic_chars_in_buffer +EXPORT_SYMBOL_GPL drivers/usb/serial/usbserial 0xd8ed7c84 usb_serial_generic_write_start +EXPORT_SYMBOL_GPL drivers/usb/serial/usbserial 0xe9c7e5a9 usb_serial_register_drivers +EXPORT_SYMBOL_GPL drivers/usb/serial/usbserial 0xfbaa2ab5 usb_serial_generic_write +EXPORT_SYMBOL_GPL drivers/usb/typec/altmodes/typec_displayport 0x0b8e00cf dp_altmode_remove +EXPORT_SYMBOL_GPL drivers/usb/typec/altmodes/typec_displayport 0x3d9370cf dp_altmode_probe +EXPORT_SYMBOL_GPL drivers/usb/typec/tcpm/tcpci 0x6f497a3c tcpci_irq +EXPORT_SYMBOL_GPL drivers/usb/typec/tcpm/tcpci 0xc529e32e tcpci_unregister_port +EXPORT_SYMBOL_GPL drivers/usb/typec/tcpm/tcpci 0xde0fdd78 tcpci_register_port +EXPORT_SYMBOL_GPL drivers/usb/typec/tcpm/tcpm 0x2fac6461 tcpm_register_port +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 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 0xea220941 tcpm_tcpc_reset +EXPORT_SYMBOL_GPL drivers/usb/typec/typec 0x01748e75 typec_switch_put +EXPORT_SYMBOL_GPL drivers/usb/typec/typec 0x03608f2a typec_cable_set_identity +EXPORT_SYMBOL_GPL drivers/usb/typec/typec 0x045bed21 typec_switch_get_drvdata +EXPORT_SYMBOL_GPL drivers/usb/typec/typec 0x09eeebbe fwnode_typec_switch_get +EXPORT_SYMBOL_GPL drivers/usb/typec/typec 0x11098ae8 typec_match_altmode +EXPORT_SYMBOL_GPL drivers/usb/typec/typec 0x1b90ac2b typec_unregister_plug +EXPORT_SYMBOL_GPL drivers/usb/typec/typec 0x2a6ab845 typec_altmode_get_partner +EXPORT_SYMBOL_GPL drivers/usb/typec/typec 0x2ad2ba58 typec_mux_get_drvdata +EXPORT_SYMBOL_GPL drivers/usb/typec/typec 0x2c4b45c2 typec_cable_is_active +EXPORT_SYMBOL_GPL drivers/usb/typec/typec 0x2d1e301d typec_find_power_role +EXPORT_SYMBOL_GPL drivers/usb/typec/typec 0x3379f744 typec_switch_unregister +EXPORT_SYMBOL_GPL drivers/usb/typec/typec 0x33a486ce typec_altmode_unregister_driver +EXPORT_SYMBOL_GPL drivers/usb/typec/typec 0x33fd62de typec_set_pwr_opmode +EXPORT_SYMBOL_GPL drivers/usb/typec/typec 0x36852716 typec_set_orientation +EXPORT_SYMBOL_GPL drivers/usb/typec/typec 0x3ec2b639 typec_mux_set +EXPORT_SYMBOL_GPL drivers/usb/typec/typec 0x3fea3d95 typec_switch_set_drvdata +EXPORT_SYMBOL_GPL drivers/usb/typec/typec 0x426285ea typec_unregister_cable +EXPORT_SYMBOL_GPL drivers/usb/typec/typec 0x493159cc typec_partner_set_identity +EXPORT_SYMBOL_GPL drivers/usb/typec/typec 0x4aaf4de5 typec_cable_put +EXPORT_SYMBOL_GPL drivers/usb/typec/typec 0x4c839aa4 typec_mux_register +EXPORT_SYMBOL_GPL drivers/usb/typec/typec 0x52f717c1 typec_unregister_altmode +EXPORT_SYMBOL_GPL drivers/usb/typec/typec 0x54c93810 typec_set_mode +EXPORT_SYMBOL_GPL drivers/usb/typec/typec 0x5869adb2 typec_get_orientation +EXPORT_SYMBOL_GPL drivers/usb/typec/typec 0x5ac3a632 typec_set_vconn_role +EXPORT_SYMBOL_GPL drivers/usb/typec/typec 0x5f2c6469 typec_set_data_role +EXPORT_SYMBOL_GPL drivers/usb/typec/typec 0x5ffbd4ff typec_altmode_vdm +EXPORT_SYMBOL_GPL drivers/usb/typec/typec 0x614740d9 typec_register_partner +EXPORT_SYMBOL_GPL drivers/usb/typec/typec 0x62976d9e typec_register_port +EXPORT_SYMBOL_GPL drivers/usb/typec/typec 0x67e55dc7 typec_altmode_put_plug +EXPORT_SYMBOL_GPL drivers/usb/typec/typec 0x6eda4260 typec_altmode_update_active +EXPORT_SYMBOL_GPL drivers/usb/typec/typec 0x734a9c4d typec_get_drvdata +EXPORT_SYMBOL_GPL drivers/usb/typec/typec 0x7e2998e7 typec_set_pwr_role +EXPORT_SYMBOL_GPL drivers/usb/typec/typec 0x835ab094 typec_plug_register_altmode +EXPORT_SYMBOL_GPL drivers/usb/typec/typec 0x86633ad9 typec_altmode_attention +EXPORT_SYMBOL_GPL drivers/usb/typec/typec 0x86c97a95 typec_altmode_get_plug +EXPORT_SYMBOL_GPL drivers/usb/typec/typec 0x9049491e typec_find_port_data_role +EXPORT_SYMBOL_GPL drivers/usb/typec/typec 0x9cad8da6 typec_unregister_partner +EXPORT_SYMBOL_GPL drivers/usb/typec/typec 0xa254de98 typec_find_orientation +EXPORT_SYMBOL_GPL drivers/usb/typec/typec 0xafa807ea fwnode_typec_mux_get +EXPORT_SYMBOL_GPL drivers/usb/typec/typec 0xafdf52c2 typec_partner_register_altmode +EXPORT_SYMBOL_GPL drivers/usb/typec/typec 0xbc4b9e3e typec_mux_unregister +EXPORT_SYMBOL_GPL drivers/usb/typec/typec 0xc3878a78 typec_mux_set_drvdata +EXPORT_SYMBOL_GPL drivers/usb/typec/typec 0xcdeaf67f typec_altmode_notify +EXPORT_SYMBOL_GPL drivers/usb/typec/typec 0xd19c1174 typec_port_register_altmode +EXPORT_SYMBOL_GPL drivers/usb/typec/typec 0xda0a9c4c typec_unregister_port +EXPORT_SYMBOL_GPL drivers/usb/typec/typec 0xde83e38a typec_cable_get +EXPORT_SYMBOL_GPL drivers/usb/typec/typec 0xe2c3b700 typec_register_cable +EXPORT_SYMBOL_GPL drivers/usb/typec/typec 0xe2d688b9 __typec_altmode_register_driver +EXPORT_SYMBOL_GPL drivers/usb/typec/typec 0xe9321257 typec_switch_set +EXPORT_SYMBOL_GPL drivers/usb/typec/typec 0xeafc1eb8 typec_find_port_power_role +EXPORT_SYMBOL_GPL drivers/usb/typec/typec 0xee19f4b1 typec_register_plug +EXPORT_SYMBOL_GPL drivers/usb/typec/typec 0xeedcfa85 typec_switch_register +EXPORT_SYMBOL_GPL drivers/usb/typec/typec 0xf4942c62 typec_altmode_enter +EXPORT_SYMBOL_GPL drivers/usb/typec/typec 0xf78d15cc typec_mux_put +EXPORT_SYMBOL_GPL drivers/usb/typec/typec 0xf8fbb5eb typec_altmode_exit +EXPORT_SYMBOL_GPL drivers/usb/typec/typec 0xfa07a76d typec_altmode2port +EXPORT_SYMBOL_GPL drivers/usb/typec/ucsi/typec_ucsi 0x01cdff93 ucsi_unregister +EXPORT_SYMBOL_GPL drivers/usb/typec/ucsi/typec_ucsi 0x219b15ef ucsi_get_drvdata +EXPORT_SYMBOL_GPL drivers/usb/typec/ucsi/typec_ucsi 0x8ece9262 ucsi_resume +EXPORT_SYMBOL_GPL drivers/usb/typec/ucsi/typec_ucsi 0x96a301ef ucsi_destroy +EXPORT_SYMBOL_GPL drivers/usb/typec/ucsi/typec_ucsi 0xba641a29 ucsi_create +EXPORT_SYMBOL_GPL drivers/usb/typec/ucsi/typec_ucsi 0xd1a100d1 ucsi_connector_change +EXPORT_SYMBOL_GPL drivers/usb/typec/ucsi/typec_ucsi 0xd2c4cdba ucsi_send_command +EXPORT_SYMBOL_GPL drivers/usb/typec/ucsi/typec_ucsi 0xf080d4d6 ucsi_register +EXPORT_SYMBOL_GPL drivers/usb/typec/ucsi/typec_ucsi 0xf92c5c26 ucsi_set_drvdata +EXPORT_SYMBOL_GPL drivers/usb/typec/ucsi/typec_ucsi 0xf94fe9d5 ucsi_init +EXPORT_SYMBOL_GPL drivers/usb/usbip/usbip-core 0x0ffa12f6 usbip_event_happened +EXPORT_SYMBOL_GPL drivers/usb/usbip/usbip-core 0x18131285 usbip_in_eh +EXPORT_SYMBOL_GPL drivers/usb/usbip/usbip-core 0x437263b7 usbip_recv_xbuff +EXPORT_SYMBOL_GPL drivers/usb/usbip/usbip-core 0x5cf95af0 usbip_event_add +EXPORT_SYMBOL_GPL drivers/usb/usbip/usbip-core 0x5f5b7caa dev_attr_usbip_debug +EXPORT_SYMBOL_GPL drivers/usb/usbip/usbip-core 0x5f64bedd usbip_alloc_iso_desc_pdu +EXPORT_SYMBOL_GPL drivers/usb/usbip/usbip-core 0x63e4df68 usbip_pack_pdu +EXPORT_SYMBOL_GPL drivers/usb/usbip/usbip-core 0x6592deaa usbip_stop_eh +EXPORT_SYMBOL_GPL drivers/usb/usbip/usbip-core 0x78b72f44 usbip_debug_flag +EXPORT_SYMBOL_GPL drivers/usb/usbip/usbip-core 0xb9437663 usbip_pad_iso +EXPORT_SYMBOL_GPL drivers/usb/usbip/usbip-core 0xbfd23f4f usbip_dump_urb +EXPORT_SYMBOL_GPL drivers/usb/usbip/usbip-core 0xc70e993d usbip_recv_iso +EXPORT_SYMBOL_GPL drivers/usb/usbip/usbip-core 0xd007dba2 usbip_recv +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 0xe3a1b7a8 usbip_start_eh +EXPORT_SYMBOL_GPL drivers/vdpa/vdpa 0x47653693 __vdpa_register_driver +EXPORT_SYMBOL_GPL drivers/vdpa/vdpa 0x62ff1f28 __vdpa_alloc_device +EXPORT_SYMBOL_GPL drivers/vdpa/vdpa 0x83819268 vdpa_register_device +EXPORT_SYMBOL_GPL drivers/vdpa/vdpa 0xcc1896d7 vdpa_unregister_driver +EXPORT_SYMBOL_GPL drivers/vdpa/vdpa 0xf695e819 vdpa_unregister_device +EXPORT_SYMBOL_GPL drivers/vfio/mdev/mdev 0x4825872d mdev_bus_type +EXPORT_SYMBOL_GPL drivers/vfio/platform/vfio-platform-base 0x0880b551 vfio_platform_unregister_reset +EXPORT_SYMBOL_GPL drivers/vfio/platform/vfio-platform-base 0x5a82cd3c vfio_platform_probe_common +EXPORT_SYMBOL_GPL drivers/vfio/platform/vfio-platform-base 0xe195833e vfio_platform_remove_common +EXPORT_SYMBOL_GPL drivers/vfio/platform/vfio-platform-base 0xfc0cfa63 __vfio_platform_register_reset +EXPORT_SYMBOL_GPL drivers/vfio/vfio 0x024ad421 vfio_del_group_dev +EXPORT_SYMBOL_GPL drivers/vfio/vfio 0x1d534be5 vfio_register_iommu_driver +EXPORT_SYMBOL_GPL drivers/vfio/vfio 0x1f4b93ce vfio_iommu_group_put +EXPORT_SYMBOL_GPL drivers/vfio/vfio 0x26a307f0 vfio_iommu_group_get +EXPORT_SYMBOL_GPL drivers/vfio/vfio 0x3567743b vfio_external_user_iommu_id +EXPORT_SYMBOL_GPL drivers/vfio/vfio 0x5b35c4f9 vfio_group_set_kvm +EXPORT_SYMBOL_GPL drivers/vfio/vfio 0x60a634c4 vfio_info_cap_add +EXPORT_SYMBOL_GPL drivers/vfio/vfio 0x717c03be vfio_device_get_from_dev +EXPORT_SYMBOL_GPL drivers/vfio/vfio 0x88212b39 vfio_unregister_iommu_driver +EXPORT_SYMBOL_GPL drivers/vfio/vfio 0x95258207 vfio_device_data +EXPORT_SYMBOL_GPL drivers/vfio/vfio 0x969c73d9 vfio_device_put +EXPORT_SYMBOL_GPL drivers/vfio/vfio 0xb4ff1350 vfio_group_get_external_user_from_dev +EXPORT_SYMBOL_GPL drivers/vfio/vfio 0xc1d989c5 vfio_external_check_extension +EXPORT_SYMBOL_GPL drivers/vfio/vfio 0xc4913442 vfio_group_put_external_user +EXPORT_SYMBOL_GPL drivers/vfio/vfio 0xc5df386a vfio_group_get_external_user +EXPORT_SYMBOL_GPL drivers/vfio/vfio 0xf05dd1f6 vfio_external_group_match_file +EXPORT_SYMBOL_GPL drivers/vfio/vfio 0xfa55029b vfio_add_group_dev +EXPORT_SYMBOL_GPL drivers/vfio/vfio_virqfd 0x34f54fcc vfio_virqfd_enable +EXPORT_SYMBOL_GPL drivers/vfio/vfio_virqfd 0x503da6b7 vfio_virqfd_disable +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x00758e99 vhost_dev_ioctl +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x15f9ce02 vhost_poll_stop +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x19cd6477 vhost_log_write +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x1aa037fd vhost_poll_flush +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x1f094c62 vhost_add_used_and_signal_n +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x260bc66f vhost_dev_has_owner +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x2b5c344b vhost_dev_init +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x339f505f vhost_work_flush +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x3a10910f vhost_new_msg +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x3dc87532 vhost_add_used_and_signal +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x4427a5fa vhost_add_used_n +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x4508234e vhost_poll_start +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x5023e205 vhost_has_work +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x5a3e398d vhost_dev_check_owner +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x5a4d577e vhost_vq_avail_empty +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x5cb40072 vhost_signal +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x5cf5a42e vhost_enable_notify +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x667267f8 vhost_vq_init_access +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x68bf7cd1 vhost_dev_set_owner +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x6914aa99 vhost_vring_ioctl +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x6aa300c8 vhost_vq_is_setup +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x711fccd3 vhost_dev_reset_owner +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x8112a204 vhost_poll_queue +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x8e01cbb2 vhost_disable_notify +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x8fa44393 vhost_add_used +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x95085c8f vhost_work_queue +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x965d6634 vhost_get_vq_desc +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x96b6beb1 vhost_log_access_ok +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x9e04494d vhost_exceeds_weight +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0xa3deaea0 vhost_dev_cleanup +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0xa7fbf46e vhost_dequeue_msg +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0xa909cfc5 vhost_work_init +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0xab136d7d vhost_enqueue_msg +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0xbb16e918 vhost_poll_init +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0xc67548f7 vhost_chr_read_iter +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0xca844cdc vhost_vq_access_ok +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0xce2611e1 vhost_init_device_iotlb +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0xce708bc6 vq_meta_prefetch +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0xcf4451c2 vhost_dev_stop +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0xe4d8891e vhost_discard_vq_desc +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 0x514d0e6a vhost_iotlb_itree_first +EXPORT_SYMBOL_GPL drivers/vhost/vhost_iotlb 0x5f4e5249 vhost_iotlb_reset +EXPORT_SYMBOL_GPL drivers/vhost/vhost_iotlb 0x6bec0e66 vhost_iotlb_del_range +EXPORT_SYMBOL_GPL drivers/vhost/vhost_iotlb 0x7579334f vhost_iotlb_itree_next +EXPORT_SYMBOL_GPL drivers/vhost/vhost_iotlb 0xa24517eb vhost_iotlb_free +EXPORT_SYMBOL_GPL drivers/vhost/vhost_iotlb 0xad111707 vhost_iotlb_map_free +EXPORT_SYMBOL_GPL drivers/vhost/vhost_iotlb 0xc577832d vhost_iotlb_alloc +EXPORT_SYMBOL_GPL drivers/video/backlight/ili9320 0x0453dc4b ili9320_suspend +EXPORT_SYMBOL_GPL drivers/video/backlight/ili9320 0x148a05e4 ili9320_remove +EXPORT_SYMBOL_GPL drivers/video/backlight/ili9320 0x391971ad ili9320_write_regs +EXPORT_SYMBOL_GPL drivers/video/backlight/ili9320 0x6dee22e4 ili9320_write +EXPORT_SYMBOL_GPL drivers/video/backlight/ili9320 0x9dadd1cd ili9320_shutdown +EXPORT_SYMBOL_GPL drivers/video/backlight/ili9320 0xeadc5cf5 ili9320_probe_spi +EXPORT_SYMBOL_GPL drivers/video/backlight/ili9320 0xff3db7d2 ili9320_resume +EXPORT_SYMBOL_GPL drivers/video/fbdev/core/fb_ddc 0x35a26052 fb_ddc_read +EXPORT_SYMBOL_GPL drivers/video/fbdev/core/fb_sys_fops 0x093bef1e fb_sys_read +EXPORT_SYMBOL_GPL drivers/video/fbdev/core/fb_sys_fops 0x31a8cab8 fb_sys_write +EXPORT_SYMBOL_GPL drivers/video/fbdev/sis/sisfb 0x399202f9 sis_malloc_new +EXPORT_SYMBOL_GPL drivers/video/fbdev/sis/sisfb 0x98c3b63a sis_free_new +EXPORT_SYMBOL_GPL drivers/w1/wire 0x44695321 w1_triplet +EXPORT_SYMBOL_GPL drivers/w1/wire 0x5f86ea68 w1_reset_bus +EXPORT_SYMBOL_GPL drivers/w1/wire 0x624c4932 w1_read_8 +EXPORT_SYMBOL_GPL drivers/w1/wire 0x63757e92 w1_calc_crc8 +EXPORT_SYMBOL_GPL drivers/w1/wire 0x642d429d w1_write_block +EXPORT_SYMBOL_GPL drivers/w1/wire 0x89a8dd33 w1_reset_select_slave +EXPORT_SYMBOL_GPL drivers/w1/wire 0x8da610ad w1_reset_resume_command +EXPORT_SYMBOL_GPL drivers/w1/wire 0xaa483325 w1_touch_bit +EXPORT_SYMBOL_GPL drivers/w1/wire 0xbdf51522 w1_read_block +EXPORT_SYMBOL_GPL drivers/w1/wire 0xf761d74f w1_write_8 +EXPORT_SYMBOL_GPL drivers/w1/wire 0xfc799a19 w1_touch_block +EXPORT_SYMBOL_GPL drivers/w1/wire 0xfe5839f7 w1_next_pullup +EXPORT_SYMBOL_GPL drivers/xen/xen-front-pgdir-shbuf 0x04a80b50 xen_front_pgdir_shbuf_unmap +EXPORT_SYMBOL_GPL drivers/xen/xen-front-pgdir-shbuf 0x082fb104 xen_front_pgdir_shbuf_get_dir_start +EXPORT_SYMBOL_GPL drivers/xen/xen-front-pgdir-shbuf 0x2c485d59 xen_front_pgdir_shbuf_free +EXPORT_SYMBOL_GPL drivers/xen/xen-front-pgdir-shbuf 0xaf5c2e2f xen_front_pgdir_shbuf_map +EXPORT_SYMBOL_GPL drivers/xen/xen-front-pgdir-shbuf 0xcd17ede0 xen_front_pgdir_shbuf_alloc +EXPORT_SYMBOL_GPL drivers/xen/xen-privcmd 0x0aa0d239 xen_privcmd_fops +EXPORT_SYMBOL_GPL drivers/xen/xen-privcmd 0x313fdd29 xen_privcmdbuf_fops +EXPORT_SYMBOL_GPL fs/dlm/dlm 0x33806996 dlm_posix_lock +EXPORT_SYMBOL_GPL fs/dlm/dlm 0x35bb97ed dlm_posix_unlock +EXPORT_SYMBOL_GPL fs/dlm/dlm 0x4b62826c dlm_unlock +EXPORT_SYMBOL_GPL fs/dlm/dlm 0x647d6170 dlm_lock +EXPORT_SYMBOL_GPL fs/dlm/dlm 0xacf1e8eb dlm_posix_get +EXPORT_SYMBOL_GPL fs/dlm/dlm 0xcd224e1d dlm_new_lockspace +EXPORT_SYMBOL_GPL fs/dlm/dlm 0xcf9f3328 dlm_release_lockspace +EXPORT_SYMBOL_GPL fs/fscache/fscache 0x092cf98e fscache_object_sleep_till_congested +EXPORT_SYMBOL_GPL fs/lockd/lockd 0x56a04628 nlmsvc_ops +EXPORT_SYMBOL_GPL fs/lockd/lockd 0x77e35ccc nlmsvc_unlock_all_by_ip +EXPORT_SYMBOL_GPL fs/lockd/lockd 0x851c5f57 lockd_down +EXPORT_SYMBOL_GPL fs/lockd/lockd 0x8e3b9781 lockd_up +EXPORT_SYMBOL_GPL fs/lockd/lockd 0xa26aa9e2 nlmsvc_unlock_all_by_sb +EXPORT_SYMBOL_GPL fs/lockd/lockd 0xcf25b7c5 nlmclnt_proc +EXPORT_SYMBOL_GPL fs/lockd/lockd 0xd2b09225 nlmclnt_init +EXPORT_SYMBOL_GPL fs/lockd/lockd 0xfa6cc581 nlmclnt_done +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x002def7e nfs_retry_commit +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x00c96f73 nfs_fs_type +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x0261d30f nfs_mkdir +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x0294c6a2 nfs_callback_nr_threads +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x0338c6c4 nfs_probe_fsinfo +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x036594ac nfs_create_server +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x04e25f41 nfs_put_lock_context +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x0605c6d7 nfs_file_mmap +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x0746bc64 nfs_pageio_reset_write_mds +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x0b079db6 nfs_filemap_write_and_wait_range +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x0d3e73f9 nfs_refresh_inode +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x0e4426d6 nfs_server_remove_lists +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x0f4bba65 nfs_show_path +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x10962bc2 nfs_auth_info_match +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x1164be6b nfs_setsecurity +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x120e8437 nfs_flock +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x12b4cbe8 nfs_async_iocounter_wait +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x15dfd7d0 nfs_client_init_status +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x16dabeb3 nfs_init_server_rpcclient +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x173681b0 nfs_free_client +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x17ba3b7f nfs_commit_free +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x1f4b8cd6 nfs_wait_on_request +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x22d795a8 _nfs_display_fhandle_hash +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x2576d355 nfs_atomic_open +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x26884ff7 nfs_alloc_fhandle +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x26ab1a53 nfs_access_add_cache +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x298ef61b nfs_wait_client_init_complete +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x2a5892c1 nfs_force_lookup_revalidate +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x2c359491 nfs_writeback_update_inode +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x2c989cac nfs_client_init_is_complete +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x2f6c328f nfs_revalidate_inode +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x3299b723 nfs_pgio_header_alloc +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x346604b5 nfs_statfs +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x3765910f nfs_rename +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x3776f031 nfs_sb_active +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x39832249 nfs_init_client +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x39e05ac3 nfs_idmap_cache_timeout +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x3a66c993 nfs_commit_inode +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x3f2690f2 nfs_check_flags +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x3f297f58 nfs_clone_server +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x40739385 nfs_wait_bit_killable +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x40cfb44b nfs_alloc_inode +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x41c240ac nfs_get_lock_context +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x42f2c81f nfs4_client_id_uniquifier +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x449c1b75 nfs_close_context +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x4aa62f3b nfs_generic_pg_test +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x4cb9e001 recover_lost_locks +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x4d614361 nfs_file_write +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x4e34a165 nfs_sb_deactive +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x5068c5a1 nfs_pageio_init_write +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x51892d61 nfs_callback_set_tcpport +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x51c1ac0c nfs_permission +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x547bb972 nfs_try_get_tree +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x584b8482 nfs_inc_attr_generation_counter +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x5aba1a72 nfs_request_add_commit_list +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x5adb8ef2 nfs_post_op_update_inode_force_wcc +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x5cd077d9 nfs_add_or_obtain +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x61959ce8 nfs_commitdata_alloc +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x622abeaa nfs_setattr +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x633512f6 nfs_pageio_reset_read_mds +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x6524a795 nfs_may_open +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x680896ca nfs_kill_super +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x68e512b2 get_nfs_open_context +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x6943c3ff nfs_create_rpc_client +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x69b3977f nfs_init_cinfo +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x69d16f73 nfs_submount +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x6b49c72f nfs_commitdata_release +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x6c69a2c3 nfs_sync_inode +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x7248de64 nfs_invalidate_atime +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x7577a02b alloc_nfs_open_context +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x75fcfc77 nfs_lookup +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x7855ef3e nfs_client_for_each_server +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x786ecffb nfs_put_client +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x78c75541 nfs_initiate_commit +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x79d77af2 nfs_mknod +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x79f9850b nfs_request_add_commit_list_locked +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x7c9722ba nfs_dreq_bytes_left +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x7e84f96a nfs_do_submount +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x8092ac5a nfs_show_options +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x82d11336 nfs_lock +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x832e8f0b nfs_alloc_fattr +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x842c3243 nfs_fscache_open_file +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x85f01f98 nfs_free_server +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x863f8de8 nfs_setattr_update_inode +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x8baee932 nfs_set_verifier +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x8f992053 nfs_initiate_pgio +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x9027c8e7 nfs_fhget +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x90a5530f nfsiod_workqueue +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x91d1fe52 max_session_slots +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x94751ca6 nfs_file_read +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x96130341 nfs_post_op_update_inode +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x9628b086 nfs_pgio_current_mirror +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x97d8e40d put_nfs_open_context +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x98b0ece8 nfs_init_timeout_values +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x99080c23 nfs_drop_inode +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x9bd0e476 nfs_request_remove_commit_list +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x9e0393dd nfs_open +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xa05ca625 nfs_fattr_init +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xa52c1ecf nfs_dentry_operations +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xa630e1a2 nfs_pageio_init_read +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xa7d8abb5 nfs_reconfigure +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xa8abcded __tracepoint_nfs_xdr_status +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xa8e9e1ae send_implementation_id +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xaa9fde04 nfs_access_set_mask +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xaafd4acc max_session_cb_slots +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xab9f2764 nfs_unlink +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xadc8ab97 nfs_link +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xaec63a0b nfs4_label_alloc +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xaee2dab0 nfs_write_inode +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xaf54afdf nfs_generic_pgio +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xb1940b5c unregister_nfs_version +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xb392dd43 nfs_free_inode +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xb3dae084 nfs_file_operations +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xb509610b nfs_file_fsync +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xb5f5c91f __tracepoint_nfs_fsync_exit +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xb6329f80 nfs_file_llseek +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xb784e2d5 nfs_alloc_client +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xb99dedc0 nfs_scan_commit_list +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xb9a0b10b nfs_create +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xbc4f87db nfs4_dentry_operations +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xbc6b2c88 __tracepoint_nfs_fsync_enter +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xbf5e2e91 nfs_clear_verifier_delegated +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xc222e38d nfs_server_insert_lists +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xc31f55de nfs_wb_all +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xc3a2be67 nfs_net_id +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xc4e89bd9 nfs_file_release +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xc7f5004a nfs_pgio_header_free +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xc8a36710 nfs4_fs_type +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xca7a4883 nfs_pgheader_init +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xcd66fb21 nfs_path +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xd974bea7 nfs_rmdir +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xd9f949cf nfs_mark_client_ready +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xda301f90 nfs_clear_inode +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xdae9b5d7 nfs4_disable_idmapping +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xdf4fe3a9 nfs_get_client +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xdf7b62c9 nfs_show_devname +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xdff83aa7 nfs_pageio_resend +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xe033e32f nfs_sops +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xe0aaecd9 register_nfs_version +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xe46923c4 nfs_umount_begin +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xe61b39a4 nfs_release_request +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xe723190a nfs_access_zap_cache +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xeca2b36c nfs_inode_attach_open_context +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xedb454f1 nfs_symlink +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xede207fb nfs_server_copy_userdata +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xeded4714 nfs_alloc_server +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xf047e7a7 nfs_zap_acl_cache +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xf1b47f41 nfs_show_stats +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xf238bca9 nfs_init_commit +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xf8554bb3 nfs_file_set_open_context +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xf881f243 nfs_getattr +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xfc619abd _nfs_display_fhandle +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xfdc767e3 nfs_instantiate +EXPORT_SYMBOL_GPL fs/nfs/nfsv3 0x60812a78 nfs3_set_ds_client +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x054bef45 layoutstats_timer +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x06545172 pnfs_register_layoutdriver +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x085dc48d nfs4_schedule_migration_recovery +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x08836e0a pnfs_generic_recover_commit_reqs +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x0aa634e8 nfs4_set_rw_stateid +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x0ade27ae __tracepoint_ff_layout_read_error +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x0da4e180 pnfs_generic_pg_test +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x0f88975a pnfs_generic_write_commit_done +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x14647976 pnfs_ld_write_done +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x163831c3 __tracepoint_nfs4_pnfs_write +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x16590202 pnfs_generic_scan_commit_lists +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x189d2461 nfs4_delete_deviceid +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x1cdde079 __tracepoint_nfs4_pnfs_read +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x1d9b79fe nfs42_ssc_open +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x208f5c30 __tracepoint_pnfs_mds_fallback_read_pagelist +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x23e20189 pnfs_generic_pg_check_range +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x2413ed56 pnfs_generic_search_commit_reqs +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x2d4b9eb9 nfs4_test_session_trunk +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x2ec77321 nfs4_sequence_done +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x3083e940 nfs4_set_ds_client +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x39ac52fe __tracepoint_ff_layout_commit_error +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x39cea761 pnfs_generic_commit_pagelist +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x3bf7c79c nfs42_proc_layouterror +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x3c7d84cc __tracepoint_pnfs_mds_fallback_write_pagelist +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x3d900678 nfs42_ssc_close +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x3de0ad01 pnfs_update_layout +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x40bc3c6d __tracepoint_ff_layout_write_error +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x4879da87 nfs4_schedule_stateid_recovery +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x491472e5 pnfs_generic_pg_init_read +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x4f19231a pnfs_generic_pg_check_layout +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x544feace pnfs_generic_pg_init_write +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x59244c39 pnfs_generic_pg_cleanup +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x5962fae5 pnfs_ld_read_done +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x5ece7300 pnfs_generic_layout_insert_lseg +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x6085edbd nfs_map_string_to_numeric +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x60e4fade nfs4_init_deviceid_node +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x647e3d63 pnfs_layout_mark_request_commit +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x685bdb0c pnfs_read_resend_pnfs +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x69d3558d pnfs_generic_rw_release +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x6d7885ec nfs4_pnfs_ds_add +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x74934455 pnfs_unregister_layoutdriver +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x7700141c pnfs_destroy_layout +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x78ecf37b __tracepoint_pnfs_mds_fallback_pg_init_write +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x7b4a819c nfs4_schedule_lease_moved_recovery +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x7bd1fb82 nfs4_pnfs_ds_connect +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x7c691d39 pnfs_write_done_resend_to_mds +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x7d4c35fa pnfs_set_layoutcommit +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x871cff7c nfs_remove_bad_delegation +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x8cc7d882 pnfs_generic_pg_writepages +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x9829497b pnfs_generic_ds_cinfo_destroy +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x98c39ccf nfs4_mark_deviceid_unavailable +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x9b8299ad nfs4_test_deviceid_unavailable +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x9e5de3b3 nfs4_put_deviceid_node +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xa319bfee __tracepoint_pnfs_mds_fallback_pg_init_read +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xa9503740 pnfs_layoutcommit_inode +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xad0b3532 nfs4_find_or_create_ds_client +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xb4abe283 pnfs_report_layoutstat +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xb83bfb80 nfs4_schedule_session_recovery +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xb93cfae1 pnfs_error_mark_layout_for_return +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xba5ee2c1 pnfs_generic_ds_cinfo_release_lseg +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xbd0f94bc nfs4_proc_getdeviceinfo +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xbd243f18 pnfs_generic_clear_request_commit +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xbf96df78 nfs4_pnfs_ds_put +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xca7b04b5 pnfs_generic_pg_readpages +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xd3387263 pnfs_generic_prepare_to_resend_writes +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xd488535f nfs4_find_get_deviceid +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xd6ed7dda __tracepoint_pnfs_mds_fallback_write_done +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xd8a1657c pnfs_generic_sync +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xdc29230a __tracepoint_pnfs_mds_fallback_pg_get_mirror_count +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xdde214ca nfs4_init_ds_session +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xdf05942f __tracepoint_nfs4_pnfs_commit_ds +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xe766fd55 nfs4_mark_deviceid_available +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xe8afd53e pnfs_set_lo_fail +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xe8d69a81 nfs4_schedule_lease_recovery +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xe98a4808 pnfs_nfs_generic_sync +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xed15fb41 nfs4_print_deviceid +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xee960d9f __tracepoint_pnfs_mds_fallback_read_done +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xefc07f66 pnfs_put_lseg +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xf43249a3 pnfs_add_commit_array +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xf5fb87a0 pnfs_read_done_resend_to_mds +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xf62ea3a7 pnfs_alloc_commit_array +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xf7801360 nfs41_maxgetdevinfo_overhead +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xf88eb2a2 nfs4_decode_mp_ds_addr +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xf999267e pnfs_generic_commit_release +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xfbf539f8 pnfs_free_commit_array +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xfcaa79bc nfs41_sequence_done +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xfdeafbab nfs4_setup_sequence +EXPORT_SYMBOL_GPL fs/nfs_common/grace 0x19530797 opens_in_grace +EXPORT_SYMBOL_GPL fs/nfs_common/grace 0x1fe1e1ad locks_end_grace +EXPORT_SYMBOL_GPL fs/nfs_common/grace 0x97d9ab87 locks_in_grace +EXPORT_SYMBOL_GPL fs/nfs_common/grace 0xb4352803 locks_start_grace +EXPORT_SYMBOL_GPL fs/nfs_common/nfs_acl 0x85f242b2 nfsacl_encode +EXPORT_SYMBOL_GPL fs/nfs_common/nfs_acl 0xf63c2b58 nfsacl_decode +EXPORT_SYMBOL_GPL fs/nfsd/nfsd 0x5b388f0f inter_copy_offload_enable +EXPORT_SYMBOL_GPL fs/ocfs2/cluster/ocfs2_nodemanager 0x0d3f3757 o2hb_unregister_callback +EXPORT_SYMBOL_GPL fs/ocfs2/cluster/ocfs2_nodemanager 0x1b89c6ee o2hb_fill_node_map +EXPORT_SYMBOL_GPL fs/ocfs2/cluster/ocfs2_nodemanager 0x2deff376 o2nm_get_node_by_num +EXPORT_SYMBOL_GPL fs/ocfs2/cluster/ocfs2_nodemanager 0x4900035b o2hb_stop_all_regions +EXPORT_SYMBOL_GPL fs/ocfs2/cluster/ocfs2_nodemanager 0x539bda10 o2hb_setup_callback +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 0x81a17396 mlog_and_bits +EXPORT_SYMBOL_GPL fs/ocfs2/cluster/ocfs2_nodemanager 0x86773bdb o2hb_register_callback +EXPORT_SYMBOL_GPL fs/ocfs2/cluster/ocfs2_nodemanager 0xa87bc9e7 o2nm_configured_node_map +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 0xce7bbd42 o2nm_node_put +EXPORT_SYMBOL_GPL fs/ocfs2/cluster/ocfs2_nodemanager 0xd79a387e o2nm_get_node_by_ip +EXPORT_SYMBOL_GPL fs/ocfs2/cluster/ocfs2_nodemanager 0xd859ac8c o2net_fill_node_map +EXPORT_SYMBOL_GPL fs/ocfs2/cluster/ocfs2_nodemanager 0xdd90be1a o2nm_node_get +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 0x2850a372 dlmunlock +EXPORT_SYMBOL_GPL fs/ocfs2/dlm/ocfs2_dlm 0x28707933 dlmlock +EXPORT_SYMBOL_GPL fs/ocfs2/dlm/ocfs2_dlm 0x794b6710 dlm_print_one_lock +EXPORT_SYMBOL_GPL fs/ocfs2/dlm/ocfs2_dlm 0x7a1211f8 dlm_setup_eviction_cb +EXPORT_SYMBOL_GPL fs/ocfs2/dlm/ocfs2_dlm 0x8273911e dlm_register_domain +EXPORT_SYMBOL_GPL fs/ocfs2/dlm/ocfs2_dlm 0x8992603b dlm_register_eviction_cb +EXPORT_SYMBOL_GPL fs/ocfs2/dlm/ocfs2_dlm 0xa85f1960 dlm_unregister_domain +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 0x24ba511e ocfs2_kset +EXPORT_SYMBOL_GPL fs/ocfs2/ocfs2_stackglue 0x4d3af7fa ocfs2_cluster_hangup +EXPORT_SYMBOL_GPL fs/ocfs2/ocfs2_stackglue 0x5a88cd4b ocfs2_plock +EXPORT_SYMBOL_GPL fs/ocfs2/ocfs2_stackglue 0x76f40744 ocfs2_dlm_lvb +EXPORT_SYMBOL_GPL fs/ocfs2/ocfs2_stackglue 0x9507547f ocfs2_cluster_disconnect +EXPORT_SYMBOL_GPL fs/ocfs2/ocfs2_stackglue 0x95a0465b ocfs2_stack_glue_register +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 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 0xe720eb60 ocfs2_stack_glue_unregister +EXPORT_SYMBOL_GPL fs/pstore/pstore_blk 0x43cc3d4b pstore_blk_get_config +EXPORT_SYMBOL_GPL fs/pstore/pstore_blk 0x941c79d7 unregister_pstore_blk +EXPORT_SYMBOL_GPL fs/pstore/pstore_blk 0x96d760c6 register_pstore_device +EXPORT_SYMBOL_GPL fs/pstore/pstore_blk 0xb32bf368 register_pstore_blk +EXPORT_SYMBOL_GPL fs/pstore/pstore_blk 0xc3d2aed6 unregister_pstore_device +EXPORT_SYMBOL_GPL fs/pstore/pstore_zone 0x165c9673 unregister_pstore_zone +EXPORT_SYMBOL_GPL fs/pstore/pstore_zone 0x86e4e9e4 register_pstore_zone +EXPORT_SYMBOL_GPL kernel/torture 0x1b2fca48 torture_must_stop_irq +EXPORT_SYMBOL_GPL kernel/torture 0x1be7d8be torture_onoff_failures +EXPORT_SYMBOL_GPL kernel/torture 0x3b137dd9 _torture_stop_kthread +EXPORT_SYMBOL_GPL kernel/torture 0x3e9619f5 torture_onoff_stats +EXPORT_SYMBOL_GPL kernel/torture 0x3ff9be11 torture_online +EXPORT_SYMBOL_GPL kernel/torture 0x447d9c95 torture_offline +EXPORT_SYMBOL_GPL kernel/torture 0x4c7529bd torture_shutdown_absorb +EXPORT_SYMBOL_GPL kernel/torture 0x52665f8b torture_random +EXPORT_SYMBOL_GPL kernel/torture 0x5a12a7da torture_stutter_init +EXPORT_SYMBOL_GPL kernel/torture 0x679d9e50 torture_must_stop +EXPORT_SYMBOL_GPL kernel/torture 0x688e6a64 torture_cleanup_end +EXPORT_SYMBOL_GPL kernel/torture 0x6c3ff11a torture_init_begin +EXPORT_SYMBOL_GPL kernel/torture 0x8b0e1d2f torture_shuffle_init +EXPORT_SYMBOL_GPL kernel/torture 0xb0f13c68 _torture_create_kthread +EXPORT_SYMBOL_GPL kernel/torture 0xc67a49d4 torture_cleanup_begin +EXPORT_SYMBOL_GPL kernel/torture 0xc94a93e3 torture_onoff_init +EXPORT_SYMBOL_GPL kernel/torture 0xdbc5277a torture_shutdown_init +EXPORT_SYMBOL_GPL kernel/torture 0xe21c9c32 torture_shuffle_task_register +EXPORT_SYMBOL_GPL kernel/torture 0xe2430307 stutter_wait +EXPORT_SYMBOL_GPL kernel/torture 0xe6989fd3 torture_init_end +EXPORT_SYMBOL_GPL kernel/torture 0xf6d34fb5 torture_kthread_stopping +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/crc64 0xeaf3cb23 crc64_be +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 0x39e8fa4b poly1305_update_generic +EXPORT_SYMBOL_GPL lib/crypto/libpoly1305 0x4370baea poly1305_init_generic +EXPORT_SYMBOL_GPL lib/crypto/libpoly1305 0x4a833012 poly1305_final_generic +EXPORT_SYMBOL_GPL lib/notifier-error-inject 0x002943c0 notifier_err_inject_init +EXPORT_SYMBOL_GPL lib/notifier-error-inject 0x6f495013 notifier_err_inject_dir +EXPORT_SYMBOL_GPL lib/raid6/raid6_pq 0x1803a6ed raid6_2data_recov +EXPORT_SYMBOL_GPL lib/raid6/raid6_pq 0x2b30f429 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 0x15227174 lowpan_header_compress +EXPORT_SYMBOL_GPL net/6lowpan/6lowpan 0x87f7310a lowpan_header_decompress +EXPORT_SYMBOL_GPL net/802/garp 0x0578bd79 garp_unregister_application +EXPORT_SYMBOL_GPL net/802/garp 0x0e1e1895 garp_uninit_applicant +EXPORT_SYMBOL_GPL net/802/garp 0x39c84998 garp_init_applicant +EXPORT_SYMBOL_GPL net/802/garp 0x9fe55b1b garp_request_join +EXPORT_SYMBOL_GPL net/802/garp 0xdfa3d595 garp_register_application +EXPORT_SYMBOL_GPL net/802/garp 0xe2cc09ba garp_request_leave +EXPORT_SYMBOL_GPL net/802/mrp 0x0a17de19 mrp_uninit_applicant +EXPORT_SYMBOL_GPL net/802/mrp 0x3926193e mrp_init_applicant +EXPORT_SYMBOL_GPL net/802/mrp 0x6cebe7f7 mrp_request_leave +EXPORT_SYMBOL_GPL net/802/mrp 0x8df8df79 mrp_unregister_application +EXPORT_SYMBOL_GPL net/802/mrp 0x8e1d5b77 mrp_request_join +EXPORT_SYMBOL_GPL net/802/mrp 0xda40d8af mrp_register_application +EXPORT_SYMBOL_GPL net/802/stp 0x370a3dff stp_proto_register +EXPORT_SYMBOL_GPL net/802/stp 0xb0f86ba4 stp_proto_unregister +EXPORT_SYMBOL_GPL net/9p/9pnet 0x2a1a353f p9_client_xattrcreate +EXPORT_SYMBOL_GPL net/9p/9pnet 0xf43271c9 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 0x0a0feb5f 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/bluetooth/bluetooth 0x05fad0e5 l2cap_chan_del +EXPORT_SYMBOL_GPL net/bluetooth/bluetooth 0x11e110cb bt_debugfs +EXPORT_SYMBOL_GPL net/bluetooth/bluetooth 0x3bccbad9 l2cap_chan_list +EXPORT_SYMBOL_GPL net/bluetooth/bluetooth 0x6874f114 l2cap_chan_set_defaults +EXPORT_SYMBOL_GPL net/bluetooth/bluetooth 0x6aeadcaa l2cap_chan_connect +EXPORT_SYMBOL_GPL net/bluetooth/bluetooth 0x86ec41a8 l2cap_chan_send +EXPORT_SYMBOL_GPL net/bluetooth/bluetooth 0xa019560e l2cap_chan_put +EXPORT_SYMBOL_GPL net/bluetooth/bluetooth 0xec9f8316 l2cap_chan_create +EXPORT_SYMBOL_GPL net/bluetooth/bluetooth 0xeebd30cf l2cap_add_psm +EXPORT_SYMBOL_GPL net/bluetooth/hidp/hidp 0x1d818491 hidp_hid_driver +EXPORT_SYMBOL_GPL net/bridge/bridge 0x0787f6f6 br_forward +EXPORT_SYMBOL_GPL net/bridge/bridge 0x0d43af4d br_vlan_get_proto +EXPORT_SYMBOL_GPL net/bridge/bridge 0x228f414a br_vlan_get_info +EXPORT_SYMBOL_GPL net/bridge/bridge 0x31f3846a br_multicast_enabled +EXPORT_SYMBOL_GPL net/bridge/bridge 0x36081263 br_handle_frame_finish +EXPORT_SYMBOL_GPL net/bridge/bridge 0x4139dbc5 br_multicast_router +EXPORT_SYMBOL_GPL net/bridge/bridge 0x4988b4b6 nf_br_ops +EXPORT_SYMBOL_GPL net/bridge/bridge 0x54112ba2 br_fdb_find_port +EXPORT_SYMBOL_GPL net/bridge/bridge 0x5d11757c br_vlan_enabled +EXPORT_SYMBOL_GPL net/bridge/bridge 0x5e6afacd br_port_flag_is_set +EXPORT_SYMBOL_GPL net/bridge/bridge 0x6ba7bc9c br_multicast_has_querier_adjacent +EXPORT_SYMBOL_GPL net/bridge/bridge 0x6dbbe75d br_dev_queue_push_xmit +EXPORT_SYMBOL_GPL net/bridge/bridge 0x7ce0fc32 br_vlan_get_pvid +EXPORT_SYMBOL_GPL net/bridge/bridge 0x9f588e07 br_multicast_has_querier_anywhere +EXPORT_SYMBOL_GPL net/bridge/bridge 0xca3566fe br_fdb_clear_offload +EXPORT_SYMBOL_GPL net/bridge/bridge 0xd6fb8ae5 br_vlan_get_pvid_rcu +EXPORT_SYMBOL_GPL net/bridge/bridge 0xe4bc9e90 br_multicast_list_adjacent +EXPORT_SYMBOL_GPL net/bridge/bridge 0xfb930cd5 br_forward_finish +EXPORT_SYMBOL_GPL net/core/failover 0x16f3621d failover_slave_unregister +EXPORT_SYMBOL_GPL net/core/failover 0xaa7e1b20 failover_unregister +EXPORT_SYMBOL_GPL net/core/failover 0xb716d544 failover_register +EXPORT_SYMBOL_GPL net/dccp/dccp 0x182ec2bf dccp_ackvec_parsed_add +EXPORT_SYMBOL_GPL net/dccp/dccp 0x20fe8558 dccp_recvmsg +EXPORT_SYMBOL_GPL net/dccp/dccp 0x2b5c89df dccp_shutdown +EXPORT_SYMBOL_GPL net/dccp/dccp 0x2bbb46ab dccp_setsockopt +EXPORT_SYMBOL_GPL net/dccp/dccp 0x2d89dd59 dccp_connect +EXPORT_SYMBOL_GPL net/dccp/dccp 0x3b1c2ff9 dccp_create_openreq_child +EXPORT_SYMBOL_GPL net/dccp/dccp 0x3c9df06d dccp_make_response +EXPORT_SYMBOL_GPL net/dccp/dccp 0x483dd8ba dccp_ctl_make_reset +EXPORT_SYMBOL_GPL net/dccp/dccp 0x4cdd391d dccp_feat_list_purge +EXPORT_SYMBOL_GPL net/dccp/dccp 0x4e32d534 dccp_getsockopt +EXPORT_SYMBOL_GPL net/dccp/dccp 0x4f0fc754 dccp_sendmsg +EXPORT_SYMBOL_GPL net/dccp/dccp 0x56ad332a dccp_disconnect +EXPORT_SYMBOL_GPL net/dccp/dccp 0x59814a84 dccp_statistics +EXPORT_SYMBOL_GPL net/dccp/dccp 0x5ecbbfb0 dccp_send_ack +EXPORT_SYMBOL_GPL net/dccp/dccp 0x641e83c4 dccp_sync_mss +EXPORT_SYMBOL_GPL net/dccp/dccp 0x64307657 dccp_parse_options +EXPORT_SYMBOL_GPL net/dccp/dccp 0x6ea84696 dccp_child_process +EXPORT_SYMBOL_GPL net/dccp/dccp 0x722630de dccp_hashinfo +EXPORT_SYMBOL_GPL net/dccp/dccp 0x7b38e236 dccp_ioctl +EXPORT_SYMBOL_GPL net/dccp/dccp 0x80993155 dccp_timestamp +EXPORT_SYMBOL_GPL net/dccp/dccp 0x86be7924 dccp_packet_name +EXPORT_SYMBOL_GPL net/dccp/dccp 0x8ca26076 dccp_destroy_sock +EXPORT_SYMBOL_GPL net/dccp/dccp 0x8e955479 dccp_close +EXPORT_SYMBOL_GPL net/dccp/dccp 0x9598d24d dccp_ackvec_parsed_cleanup +EXPORT_SYMBOL_GPL net/dccp/dccp 0x9a97b6c3 dccp_feat_nn_get +EXPORT_SYMBOL_GPL net/dccp/dccp 0x9b5f39fc dccp_poll +EXPORT_SYMBOL_GPL net/dccp/dccp 0x9d8cd6a8 dccp_rcv_state_process +EXPORT_SYMBOL_GPL net/dccp/dccp 0xa2624a42 dccp_death_row +EXPORT_SYMBOL_GPL net/dccp/dccp 0xb120d081 compat_dccp_getsockopt +EXPORT_SYMBOL_GPL net/dccp/dccp 0xbc1eddd5 inet_dccp_listen +EXPORT_SYMBOL_GPL net/dccp/dccp 0xc3b6a26c dccp_orphan_count +EXPORT_SYMBOL_GPL net/dccp/dccp 0xc84b1d2d dccp_reqsk_send_ack +EXPORT_SYMBOL_GPL net/dccp/dccp 0xca2b5e4b dccp_set_state +EXPORT_SYMBOL_GPL net/dccp/dccp 0xcaa239b1 dccp_insert_option +EXPORT_SYMBOL_GPL net/dccp/dccp 0xcd1e750c compat_dccp_setsockopt +EXPORT_SYMBOL_GPL net/dccp/dccp 0xd5d4dcf8 dccp_init_sock +EXPORT_SYMBOL_GPL net/dccp/dccp 0xdb977d64 dccp_done +EXPORT_SYMBOL_GPL net/dccp/dccp 0xe55e708e dccp_feat_signal_nn_change +EXPORT_SYMBOL_GPL net/dccp/dccp 0xf29f07a1 dccp_check_req +EXPORT_SYMBOL_GPL net/dccp/dccp 0xf427d38e dccp_rcv_established +EXPORT_SYMBOL_GPL net/dccp/dccp 0xf891d24c dccp_reqsk_init +EXPORT_SYMBOL_GPL net/dccp/dccp 0xf9398a35 dccp_send_sync +EXPORT_SYMBOL_GPL net/dccp/dccp_ipv4 0x374aeaa8 dccp_invalid_packet +EXPORT_SYMBOL_GPL net/dccp/dccp_ipv4 0x5e8ec09d dccp_v4_request_recv_sock +EXPORT_SYMBOL_GPL net/dccp/dccp_ipv4 0x618a131d dccp_v4_conn_request +EXPORT_SYMBOL_GPL net/dccp/dccp_ipv4 0x8b9e2b78 dccp_v4_do_rcv +EXPORT_SYMBOL_GPL net/dccp/dccp_ipv4 0xe2b6b037 dccp_v4_connect +EXPORT_SYMBOL_GPL net/dccp/dccp_ipv4 0xe657abc7 dccp_v4_send_check +EXPORT_SYMBOL_GPL net/dsa/dsa_core 0x051f6902 dsa_port_get_phy_strings +EXPORT_SYMBOL_GPL net/dsa/dsa_core 0x10004e98 dsa_unregister_switch +EXPORT_SYMBOL_GPL net/dsa/dsa_core 0x28749cba dsa_devlink_resource_register +EXPORT_SYMBOL_GPL net/dsa/dsa_core 0x3453d109 dsa_register_switch +EXPORT_SYMBOL_GPL net/dsa/dsa_core 0x421fce97 dsa_port_get_phy_sset_count +EXPORT_SYMBOL_GPL net/dsa/dsa_core 0x451dff43 dsa_tag_drivers_register +EXPORT_SYMBOL_GPL net/dsa/dsa_core 0x45661e6f dsa_devlink_params_unregister +EXPORT_SYMBOL_GPL net/dsa/dsa_core 0x518e3038 dsa_switch_suspend +EXPORT_SYMBOL_GPL net/dsa/dsa_core 0x55031fae dsa_enqueue_skb +EXPORT_SYMBOL_GPL net/dsa/dsa_core 0x5c5bb8ee unregister_dsa_notifier +EXPORT_SYMBOL_GPL net/dsa/dsa_core 0x603b1f93 dsa_devlink_param_get +EXPORT_SYMBOL_GPL net/dsa/dsa_core 0x63ae745d dsa_switch_resume +EXPORT_SYMBOL_GPL net/dsa/dsa_core 0x82a9cfe2 dsa_tag_drivers_unregister +EXPORT_SYMBOL_GPL net/dsa/dsa_core 0x831c06ff dsa_switch_find +EXPORT_SYMBOL_GPL net/dsa/dsa_core 0x86599bcd dsa_port_from_netdev +EXPORT_SYMBOL_GPL net/dsa/dsa_core 0x8eccf333 dsa_dev_to_net_device +EXPORT_SYMBOL_GPL net/dsa/dsa_core 0xb1b2f50e dsa_devlink_resource_occ_get_register +EXPORT_SYMBOL_GPL net/dsa/dsa_core 0xc28900ad call_dsa_notifiers +EXPORT_SYMBOL_GPL net/dsa/dsa_core 0xd977c66c dsa_devlink_params_register +EXPORT_SYMBOL_GPL net/dsa/dsa_core 0xe04ba82c dsa_devlink_resource_occ_get_unregister +EXPORT_SYMBOL_GPL net/dsa/dsa_core 0xe3d2f020 dsa_port_phylink_mac_change +EXPORT_SYMBOL_GPL net/dsa/dsa_core 0xeeb237c6 dsa_devlink_resources_unregister +EXPORT_SYMBOL_GPL net/dsa/dsa_core 0xf12fde0f dsa_port_get_ethtool_phy_stats +EXPORT_SYMBOL_GPL net/dsa/dsa_core 0xf86039e0 register_dsa_notifier +EXPORT_SYMBOL_GPL net/dsa/dsa_core 0xfd154bf4 dsa_devlink_param_set +EXPORT_SYMBOL_GPL net/dsa/tag_8021q 0x0499efb3 dsa_8021q_crosschip_bridge_leave +EXPORT_SYMBOL_GPL net/dsa/tag_8021q 0x0a68b7d7 dsa_8021q_crosschip_bridge_join +EXPORT_SYMBOL_GPL net/dsa/tag_8021q 0x3bf05c14 dsa_8021q_tx_vid +EXPORT_SYMBOL_GPL net/dsa/tag_8021q 0x415e894e dsa_8021q_rx_subvlan +EXPORT_SYMBOL_GPL net/dsa/tag_8021q 0x417d1fed dsa_8021q_rx_switch_id +EXPORT_SYMBOL_GPL net/dsa/tag_8021q 0x5802acaf dsa_8021q_xmit +EXPORT_SYMBOL_GPL net/dsa/tag_8021q 0x78b051a0 dsa_8021q_rx_vid +EXPORT_SYMBOL_GPL net/dsa/tag_8021q 0x94dc3652 dsa_8021q_rx_vid_subvlan +EXPORT_SYMBOL_GPL net/dsa/tag_8021q 0x9e59271d dsa_8021q_rx_source_port +EXPORT_SYMBOL_GPL net/dsa/tag_8021q 0xa7a1d375 dsa_port_setup_8021q_tagging +EXPORT_SYMBOL_GPL net/dsa/tag_8021q 0xf13e1803 vid_is_dsa_8021q +EXPORT_SYMBOL_GPL net/ieee802154/ieee802154 0x064e1059 ieee802154_hdr_peek +EXPORT_SYMBOL_GPL net/ieee802154/ieee802154 0x795407cd ieee802154_hdr_peek_addrs +EXPORT_SYMBOL_GPL net/ieee802154/ieee802154 0x87e2553b ieee802154_max_payload +EXPORT_SYMBOL_GPL net/ieee802154/ieee802154 0x9d8ee31c ieee802154_hdr_pull +EXPORT_SYMBOL_GPL net/ieee802154/ieee802154 0xfce4afab ieee802154_hdr_push +EXPORT_SYMBOL_GPL net/ife/ife 0x223aaf68 ife_decode +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 0xe7888e98 ife_tlv_meta_encode +EXPORT_SYMBOL_GPL net/ife/ife 0xf6b4914e ife_encode +EXPORT_SYMBOL_GPL net/ipv4/esp4 0x48e468db esp_output_head +EXPORT_SYMBOL_GPL net/ipv4/esp4 0x677b01ad esp_output_tail +EXPORT_SYMBOL_GPL net/ipv4/esp4 0xe5914fa2 esp_input_done2 +EXPORT_SYMBOL_GPL net/ipv4/gre 0x0f522c3b gre_add_protocol +EXPORT_SYMBOL_GPL net/ipv4/gre 0xae1fa0d3 gre_del_protocol +EXPORT_SYMBOL_GPL net/ipv4/inet_diag 0x03f8bb82 inet_diag_msg_common_fill +EXPORT_SYMBOL_GPL net/ipv4/inet_diag 0x1059920e inet_diag_unregister +EXPORT_SYMBOL_GPL net/ipv4/inet_diag 0x1f5d34a4 inet_diag_dump_one_icsk +EXPORT_SYMBOL_GPL net/ipv4/inet_diag 0x290def32 inet_diag_dump_icsk +EXPORT_SYMBOL_GPL net/ipv4/inet_diag 0x47d330fe inet_diag_register +EXPORT_SYMBOL_GPL net/ipv4/inet_diag 0x8c4e6fbe inet_diag_msg_attrs_fill +EXPORT_SYMBOL_GPL net/ipv4/inet_diag 0xc92e3f07 inet_diag_bc_sk +EXPORT_SYMBOL_GPL net/ipv4/inet_diag 0xd1bd4e96 inet_diag_find_one_icsk +EXPORT_SYMBOL_GPL net/ipv4/inet_diag 0xe26d0646 inet_sk_diag_fill +EXPORT_SYMBOL_GPL net/ipv4/ip_gre 0xea2a520b gretap_fb_dev_create +EXPORT_SYMBOL_GPL net/ipv4/ip_tunnel 0x019ef17e ip_tunnel_ioctl +EXPORT_SYMBOL_GPL net/ipv4/ip_tunnel 0x2d46817b ip_tunnel_delete_nets +EXPORT_SYMBOL_GPL net/ipv4/ip_tunnel 0x346ebd20 __ip_tunnel_change_mtu +EXPORT_SYMBOL_GPL net/ipv4/ip_tunnel 0x35b79ed0 ip_md_tunnel_xmit +EXPORT_SYMBOL_GPL net/ipv4/ip_tunnel 0x3f7beef8 ip_tunnel_newlink +EXPORT_SYMBOL_GPL net/ipv4/ip_tunnel 0x45aba674 ip_tunnel_init_net +EXPORT_SYMBOL_GPL net/ipv4/ip_tunnel 0x5bbac90d ip_tunnel_change_mtu +EXPORT_SYMBOL_GPL net/ipv4/ip_tunnel 0x76cde825 ip_tunnel_encap_setup +EXPORT_SYMBOL_GPL net/ipv4/ip_tunnel 0x850b03a2 ip_tunnel_ctl +EXPORT_SYMBOL_GPL net/ipv4/ip_tunnel 0x89e3b949 ip_tunnel_init +EXPORT_SYMBOL_GPL net/ipv4/ip_tunnel 0x8d2736a3 ip_tunnel_lookup +EXPORT_SYMBOL_GPL net/ipv4/ip_tunnel 0xa595c2a6 ip_tunnel_xmit +EXPORT_SYMBOL_GPL net/ipv4/ip_tunnel 0xd10036d1 ip_tunnel_dellink +EXPORT_SYMBOL_GPL net/ipv4/ip_tunnel 0xe2cdfc21 ip_tunnel_changelink +EXPORT_SYMBOL_GPL net/ipv4/ip_tunnel 0xf3bbdda5 ip_tunnel_setup +EXPORT_SYMBOL_GPL net/ipv4/ip_tunnel 0xf79aeefc ip_tunnel_uninit +EXPORT_SYMBOL_GPL net/ipv4/ip_tunnel 0xfd980e78 ip_tunnel_rcv +EXPORT_SYMBOL_GPL net/ipv4/netfilter/arp_tables 0x3c0dcdc7 arpt_alloc_initial_table +EXPORT_SYMBOL_GPL net/ipv4/netfilter/ip_tables 0x47155d22 ipt_alloc_initial_table +EXPORT_SYMBOL_GPL net/ipv4/netfilter/nf_defrag_ipv4 0x87a9b681 nf_defrag_ipv4_enable +EXPORT_SYMBOL_GPL net/ipv4/netfilter/nf_dup_ipv4 0x4fc81b3d nf_dup_ipv4 +EXPORT_SYMBOL_GPL net/ipv4/netfilter/nf_reject_ipv4 0x97ffbf9b nf_send_unreach +EXPORT_SYMBOL_GPL net/ipv4/netfilter/nf_reject_ipv4 0x9d6c7dbd nf_reject_ip_tcphdr_put +EXPORT_SYMBOL_GPL net/ipv4/netfilter/nf_reject_ipv4 0xc83ca399 nf_send_reset +EXPORT_SYMBOL_GPL net/ipv4/netfilter/nf_reject_ipv4 0xca0d9dfb nf_reject_iphdr_put +EXPORT_SYMBOL_GPL net/ipv4/netfilter/nf_reject_ipv4 0xff95e18d nf_reject_ip_tcphdr_get +EXPORT_SYMBOL_GPL net/ipv4/netfilter/nf_socket_ipv4 0x8e9c74ce nf_sk_lookup_slow_v4 +EXPORT_SYMBOL_GPL net/ipv4/netfilter/nf_tproxy_ipv4 0x1ae68524 nf_tproxy_get_sock_v4 +EXPORT_SYMBOL_GPL net/ipv4/netfilter/nf_tproxy_ipv4 0x4e4342e7 nf_tproxy_handle_time_wait4 +EXPORT_SYMBOL_GPL net/ipv4/netfilter/nf_tproxy_ipv4 0x714d787b nf_tproxy_laddr4 +EXPORT_SYMBOL_GPL net/ipv4/netfilter/nft_fib_ipv4 0x76bdb3e3 nft_fib4_eval +EXPORT_SYMBOL_GPL net/ipv4/netfilter/nft_fib_ipv4 0x78b8492b nft_fib4_eval_type +EXPORT_SYMBOL_GPL net/ipv4/tcp_vegas 0x862e4fe5 tcp_vegas_init +EXPORT_SYMBOL_GPL net/ipv4/tcp_vegas 0xa7aa6cca tcp_vegas_get_info +EXPORT_SYMBOL_GPL net/ipv4/tcp_vegas 0xb9b64f4d tcp_vegas_cwnd_event +EXPORT_SYMBOL_GPL net/ipv4/tcp_vegas 0xca9d10e9 tcp_vegas_pkts_acked +EXPORT_SYMBOL_GPL net/ipv4/tcp_vegas 0xe4288d10 tcp_vegas_state +EXPORT_SYMBOL_GPL net/ipv4/udp_tunnel 0x1496406d udp_tunnel_drop_rx_port +EXPORT_SYMBOL_GPL net/ipv4/udp_tunnel 0x3989e3cd udp_tunnel_push_rx_port +EXPORT_SYMBOL_GPL net/ipv4/udp_tunnel 0x90702fcd setup_udp_tunnel_sock +EXPORT_SYMBOL_GPL net/ipv4/udp_tunnel 0x96f510f3 udp_tun_rx_dst +EXPORT_SYMBOL_GPL net/ipv4/udp_tunnel 0xb13f8f07 udp_tunnel_notify_del_rx_port +EXPORT_SYMBOL_GPL net/ipv4/udp_tunnel 0xb6662bce udp_tunnel_notify_add_rx_port +EXPORT_SYMBOL_GPL net/ipv4/udp_tunnel 0xc8ae7316 udp_tunnel_sock_release +EXPORT_SYMBOL_GPL net/ipv4/udp_tunnel 0xea4cb044 udp_tunnel_xmit_skb +EXPORT_SYMBOL_GPL net/ipv6/esp6 0x47cb967d esp6_output_tail +EXPORT_SYMBOL_GPL net/ipv6/esp6 0xd05f6a25 esp6_output_head +EXPORT_SYMBOL_GPL net/ipv6/esp6 0xdc3c50d9 esp6_input_done2 +EXPORT_SYMBOL_GPL net/ipv6/ip6_tunnel 0x2008de26 ip6_tnl_rcv_ctl +EXPORT_SYMBOL_GPL net/ipv6/ip6_tunnel 0x4dff62e8 ip6_tnl_xmit_ctl +EXPORT_SYMBOL_GPL net/ipv6/ip6_tunnel 0xd4ae94c3 ip6_tnl_encap_setup +EXPORT_SYMBOL_GPL net/ipv6/ip6_udp_tunnel 0x21bbe918 udp_sock_create6 +EXPORT_SYMBOL_GPL net/ipv6/ip6_udp_tunnel 0xece9225a udp_tunnel6_xmit_skb +EXPORT_SYMBOL_GPL net/ipv6/netfilter/ip6_tables 0x1e6f91ab ip6t_alloc_initial_table +EXPORT_SYMBOL_GPL net/ipv6/netfilter/nf_defrag_ipv6 0x0d0bafe7 nf_ct_frag6_gather +EXPORT_SYMBOL_GPL net/ipv6/netfilter/nf_defrag_ipv6 0xf9a567a5 nf_defrag_ipv6_enable +EXPORT_SYMBOL_GPL net/ipv6/netfilter/nf_dup_ipv6 0x3c2fc025 nf_dup_ipv6 +EXPORT_SYMBOL_GPL net/ipv6/netfilter/nf_reject_ipv6 0x275db0c6 nf_send_unreach6 +EXPORT_SYMBOL_GPL net/ipv6/netfilter/nf_reject_ipv6 0x37ddb48a nf_reject_ip6hdr_put +EXPORT_SYMBOL_GPL net/ipv6/netfilter/nf_reject_ipv6 0x3a766332 nf_reject_ip6_tcphdr_get +EXPORT_SYMBOL_GPL net/ipv6/netfilter/nf_reject_ipv6 0x87e6adee nf_reject_ip6_tcphdr_put +EXPORT_SYMBOL_GPL net/ipv6/netfilter/nf_reject_ipv6 0xbc280405 nf_send_reset6 +EXPORT_SYMBOL_GPL net/ipv6/netfilter/nf_socket_ipv6 0x09fbd5a7 nf_sk_lookup_slow_v6 +EXPORT_SYMBOL_GPL net/ipv6/netfilter/nf_tproxy_ipv6 0x4da2fe99 nf_tproxy_handle_time_wait6 +EXPORT_SYMBOL_GPL net/ipv6/netfilter/nf_tproxy_ipv6 0x9f6bcb01 nf_tproxy_get_sock_v6 +EXPORT_SYMBOL_GPL net/ipv6/netfilter/nf_tproxy_ipv6 0xb9cdf3d7 nf_tproxy_laddr6 +EXPORT_SYMBOL_GPL net/ipv6/netfilter/nft_fib_ipv6 0x155c79f0 nft_fib6_eval +EXPORT_SYMBOL_GPL net/ipv6/netfilter/nft_fib_ipv6 0x15905013 nft_fib6_eval_type +EXPORT_SYMBOL_GPL net/l2tp/l2tp_core 0x001d34fe l2tp_tunnel_get_session +EXPORT_SYMBOL_GPL net/l2tp/l2tp_core 0x00e6126b l2tp_session_get_nth +EXPORT_SYMBOL_GPL net/l2tp/l2tp_core 0x06c66085 l2tp_tunnel_delete +EXPORT_SYMBOL_GPL net/l2tp/l2tp_core 0x14173cc1 __l2tp_session_unhash +EXPORT_SYMBOL_GPL net/l2tp/l2tp_core 0x2539f3f0 l2tp_session_free +EXPORT_SYMBOL_GPL net/l2tp/l2tp_core 0x43ce6489 l2tp_session_set_header_len +EXPORT_SYMBOL_GPL net/l2tp/l2tp_core 0x4af1e4e7 l2tp_session_get_by_ifname +EXPORT_SYMBOL_GPL net/l2tp/l2tp_core 0x4b7bcac2 l2tp_xmit_skb +EXPORT_SYMBOL_GPL net/l2tp/l2tp_core 0x64e1cc67 l2tp_session_register +EXPORT_SYMBOL_GPL net/l2tp/l2tp_core 0x73cd5efe l2tp_tunnel_register +EXPORT_SYMBOL_GPL net/l2tp/l2tp_core 0x76be3394 l2tp_tunnel_create +EXPORT_SYMBOL_GPL net/l2tp/l2tp_core 0x7700c466 l2tp_session_delete +EXPORT_SYMBOL_GPL net/l2tp/l2tp_core 0x8423b04a l2tp_session_get +EXPORT_SYMBOL_GPL net/l2tp/l2tp_core 0x93b1bcdc l2tp_udp_encap_recv +EXPORT_SYMBOL_GPL net/l2tp/l2tp_core 0xdac559dd l2tp_tunnel_get_nth +EXPORT_SYMBOL_GPL net/l2tp/l2tp_core 0xdfa95aed l2tp_tunnel_get +EXPORT_SYMBOL_GPL net/l2tp/l2tp_core 0xe0a5bf0d l2tp_session_create +EXPORT_SYMBOL_GPL net/l2tp/l2tp_netlink 0x337f2432 l2tp_nl_unregister_ops +EXPORT_SYMBOL_GPL net/l2tp/l2tp_netlink 0x6f188bde l2tp_nl_register_ops +EXPORT_SYMBOL_GPL net/mac80211/mac80211 0x0b6c266a ieee80211_vif_to_wdev +EXPORT_SYMBOL_GPL net/mac80211/mac80211 0x1306fe65 ieee80211_request_smps +EXPORT_SYMBOL_GPL net/mac80211/mac80211 0x14905d54 ieee80211_ave_rssi +EXPORT_SYMBOL_GPL net/mac80211/mac80211 0x1f1d28b3 ieee80211_iterate_active_interfaces_atomic +EXPORT_SYMBOL_GPL net/mac80211/mac80211 0x3eb4ab13 ieee80211_gtk_rekey_notify +EXPORT_SYMBOL_GPL net/mac80211/mac80211 0x4b6775c0 ieee80211_resume_disconnect +EXPORT_SYMBOL_GPL net/mac80211/mac80211 0x5250cf98 ieee80211_tkip_add_iv +EXPORT_SYMBOL_GPL net/mac80211/mac80211 0x5747eff8 ieee80211_find_sta_by_ifaddr +EXPORT_SYMBOL_GPL net/mac80211/mac80211 0x5964601e ieee80211_iterate_interfaces +EXPORT_SYMBOL_GPL net/mac80211/mac80211 0x6343b106 ieee80211_iter_chan_contexts_atomic +EXPORT_SYMBOL_GPL net/mac80211/mac80211 0x6aefbd75 ieee80211_remain_on_channel_expired +EXPORT_SYMBOL_GPL net/mac80211/mac80211 0x78031025 ieee80211_update_mu_groups +EXPORT_SYMBOL_GPL net/mac80211/mac80211 0x8d6b21e0 ieee80211_iterate_active_interfaces_rtnl +EXPORT_SYMBOL_GPL net/mac80211/mac80211 0x916c8f24 wdev_to_ieee80211_vif +EXPORT_SYMBOL_GPL net/mac80211/mac80211 0x9cd23f45 ieee80211_calc_tx_airtime +EXPORT_SYMBOL_GPL net/mac80211/mac80211 0xa1247034 ieee80211_remove_key +EXPORT_SYMBOL_GPL net/mac80211/mac80211 0xb4c96ca0 ieee80211_iterate_stations_atomic +EXPORT_SYMBOL_GPL net/mac80211/mac80211 0xd0207c51 ieee80211_calc_rx_airtime +EXPORT_SYMBOL_GPL net/mac80211/mac80211 0xd8e09da4 ieee80211_set_key_rx_seq +EXPORT_SYMBOL_GPL net/mac80211/mac80211 0xe363372e ieee80211_ready_on_channel +EXPORT_SYMBOL_GPL net/mac80211/mac80211 0xf9aac0b2 ieee80211_gtk_rekey_add +EXPORT_SYMBOL_GPL net/mpls/mpls_router 0x2a897197 nla_put_labels +EXPORT_SYMBOL_GPL net/mpls/mpls_router 0x418dba4a mpls_output_possible +EXPORT_SYMBOL_GPL net/mpls/mpls_router 0x78a0fbe8 mpls_stats_inc_outucastpkts +EXPORT_SYMBOL_GPL net/mpls/mpls_router 0xe2cc5061 mpls_pkt_too_big +EXPORT_SYMBOL_GPL net/mpls/mpls_router 0xe413b0a4 nla_get_labels +EXPORT_SYMBOL_GPL net/mpls/mpls_router 0xe7862fed mpls_dev_mtu +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0x0ffe27ed ip_set_put_extensions +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0x1136dad9 ip_set_get_byname +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0x1a7bd1e2 ip_set_get_ip4_port +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0x1f0ac6dc ip_set_type_unregister +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0x22d966c6 ip_set_range_to_cidr +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0x35edc75a ip_set_put_byindex +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0x397f6231 ip_set_free +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0x3dd70342 ip_set_type_register +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0x3e46698b ip_set_nfnl_get_byindex +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0x4c576754 ip_set_name_byindex +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0x587b8f82 ip_set_put_flags +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0x59ed951d ip_set_nfnl_put +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0x652ab6f6 ip_set_add +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0x73e04615 ip_set_del +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0x790a5c7a ip_set_get_ip6_port +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0x7924b6de ip_set_hostmask_map +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0x7b85f242 ip_set_init_comment +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0x81fff2d1 ip_set_netmask_map +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0x84db4efb ip_set_extensions +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0x935c768a 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 0xb78fc928 ip_set_match_extensions +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0xcd6defb3 ip_set_elem_len +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0xdf6d0b41 ip_set_get_extensions +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0xf3b4d4ae ip_set_alloc +EXPORT_SYMBOL_GPL net/netfilter/ipvs/ip_vs 0x0ed7bc97 ip_vs_conn_out_get_proto +EXPORT_SYMBOL_GPL net/netfilter/ipvs/ip_vs 0x22f1f3f9 ip_vs_conn_in_get_proto +EXPORT_SYMBOL_GPL net/netfilter/ipvs/ip_vs 0x5817142e unregister_ip_vs_pe +EXPORT_SYMBOL_GPL net/netfilter/ipvs/ip_vs 0xb9102d60 register_ip_vs_pe +EXPORT_SYMBOL_GPL net/netfilter/nf_conncount 0x3ff55ad3 nf_conncount_cache_free +EXPORT_SYMBOL_GPL net/netfilter/nf_conncount 0x8c4cb9c3 nf_conncount_list_init +EXPORT_SYMBOL_GPL net/netfilter/nf_conncount 0xb25423b9 nf_conncount_add +EXPORT_SYMBOL_GPL net/netfilter/nf_conncount 0xcc43645e nf_conncount_gc_list +EXPORT_SYMBOL_GPL net/netfilter/nf_conncount 0xe092e938 nf_conncount_init +EXPORT_SYMBOL_GPL net/netfilter/nf_conncount 0xea18c2e8 nf_conncount_destroy +EXPORT_SYMBOL_GPL net/netfilter/nf_conncount 0xf928cea4 nf_conncount_count +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x00e8d564 nf_ct_seqadj_set +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x044981c1 nf_ct_gre_keymap_add +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x04de2aa9 nf_nat_helper_register +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x0537d03c nf_ct_bridge_register +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x05b94e9a nf_ct_seq_offset +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x0bc00f80 nf_nat_helper_try_module_get +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x0dc305eb nf_ct_tcp_seqadj_set +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x0e868abc nf_nat_helper_put +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x0f24ee0a nf_conntrack_tuple_taken +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x11cf168e nf_ct_get_id +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x16853fd0 nf_conntrack_helper_register +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x18e4cd25 nf_l4proto_log_invalid +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x1a336aac nf_conntrack_helpers_unregister +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x1b406f7f nf_ct_netns_get +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x1ec7dda1 nf_conntrack_helper_put +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x1ecfefad nf_conntrack_free +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x21a04ff0 nf_ct_expect_iterate_net +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x26762b2e nf_ct_helper_log +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x26f3441b nf_ct_unlink_expect_report +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x27876370 nf_ct_helper_expectfn_unregister +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x27cd0751 nf_ct_expect_alloc +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x289bc85d nf_ct_seq_adjust +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 0x29cdfd5d nf_ct_helper_expectfn_register +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x3163ccb5 nf_conntrack_in +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x337d1798 nf_ct_gre_keymap_destroy +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x37053fd6 nf_ct_extend_register +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x3ac36f95 __nf_conntrack_helper_find +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x3e0915c3 nf_connlabels_get +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x479ff15c nf_ct_l4proto_log_invalid +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x50ae1ca8 nf_conntrack_alloc +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x58bb9c40 nf_ct_helper_init +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x590c1ccc nf_ct_timeout_put_hook +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x626207c0 nf_ct_remove_expect +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x6268551d nf_ct_helper_ext_add +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x62f75a7a __nf_conntrack_confirm +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x654d9439 nf_ct_unconfirmed_destroy +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x66c6d01c nf_ct_expect_find_get +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x6898323c nf_ct_seqadj_init +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x693c3961 nf_ct_helper_hash +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x69f6e57d nf_ct_l4proto_find +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x6b1c0fcd nf_ct_acct_add +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x75ab9a28 nf_ct_destroy_timeout +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x75d0bef1 nf_ct_delete +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x79740ffc nf_ct_expect_register_notifier +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x7c203438 __nf_ct_expect_find +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x7da80b2e nf_ct_port_nla_policy +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x7f290a2e nf_ct_helper_expectfn_find_by_name +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x831b026b nf_conntrack_helper_try_module_get +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x862920b1 nf_ct_tmpl_free +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x8e19c9ea nf_connlabels_put +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x8ffe7e89 nf_conntrack_htable_size +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x9651f665 nf_ct_kill_acct +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x9a878fa7 nf_ct_remove_expectations +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x9adb7399 nf_conntrack_expect_lock +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x9cded2da nf_ct_deliver_cached_events +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x9e368373 nf_conntrack_helper_unregister +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xa03e20b1 nf_ct_bridge_unregister +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xa20d9f5c nf_conntrack_register_notifier +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xaa158c0c nf_ct_iterate_cleanup_net +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xaad94d7d nf_conntrack_eventmask_report +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xaf0847f0 nf_conntrack_locks +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xaf30690e nf_ct_get_tuplepr +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xafbd6cf5 nf_ct_port_nlattr_to_tuple +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xb5095bc1 nf_ct_port_tuple_to_nlattr +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xb79e8c77 nf_ct_unexpect_related +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xb7a52674 nf_confirm +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xb9ccd6c3 nf_conntrack_hash_check_insert +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xbc392020 nf_ct_tmpl_alloc +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xbcdfc97a __nf_ct_try_assign_helper +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xc18ac88d nf_ct_expect_hsize +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xc2f8e95b nf_ct_netns_put +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xc34d4e5d nf_ct_expect_put +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xc40f284c nf_ct_helper_hsize +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xd505c3e0 nf_ct_port_nlattr_tuple_size +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xd6d23ce7 nf_conntrack_unregister_notifier +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xdba7326b nf_conntrack_lock +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xde4ea06f nf_nat_helper_unregister +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xe1902dea nf_ct_expect_related_report +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xe351b299 nf_ct_set_timeout +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xe894b517 nf_conntrack_helpers_register +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xec8beba6 nf_ct_expect_hash +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xed318dba nf_ct_extend_unregister +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xf02eef05 nf_ct_expect_unregister_notifier +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xf1fc1910 nf_conntrack_find_get +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xf38bcdf3 nf_conntrack_max +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xf635f636 nf_ct_timeout_find_get_hook +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xf64f328a nf_ct_expect_iterate_destroy +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xf70a411b nf_ct_untimeout +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xf815e78c nf_connlabels_replace +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xfae88dec nf_ct_iterate_destroy +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xfb2ae696 nf_ct_helper_expectfn_find_by_symbol +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xfce31e40 __nf_ct_refresh_acct +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xfe4b0b08 nf_conntrack_alter_reply +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xfe6f1649 nf_ct_expect_init +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xfe731af8 nf_ct_invert_tuple +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_amanda 0x022a1e02 nf_nat_amanda_hook +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_broadcast 0x77944491 nf_conntrack_broadcast_help +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_ftp 0x6adefec7 nf_nat_ftp_hook +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_h323 0x02bdfb23 nat_h245_hook +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_h323 0x0fb056e4 nat_rtp_rtcp_hook +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_h323 0x1c002db5 set_h225_addr_hook +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_h323 0x1ee1820b set_ras_addr_hook +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_h323 0x3b31a18b get_h225_addr +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_h323 0x8de075a3 set_h245_addr_hook +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_h323 0x962df80b nat_t120_hook +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_h323 0xba81db08 nat_callforwarding_hook +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_h323 0xc1987f70 set_sig_addr_hook +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_h323 0xed558265 nat_q931_hook +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_irc 0x6cf2ab6b nf_nat_irc_hook +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_pptp 0x13607fdb nf_nat_pptp_hook_outbound +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_pptp 0x7bc46da1 nf_nat_pptp_hook_expectfn +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_pptp 0x7d45e12f nf_nat_pptp_hook_inbound +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_pptp 0x807e70a4 nf_nat_pptp_hook_exp_gre +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_sip 0x252f1b8b ct_sip_get_sdp_header +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_sip 0x3108a781 ct_sip_get_header +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_sip 0x617af461 ct_sip_parse_address_param +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_sip 0x6d1bc10c nf_nat_sip_hooks +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_sip 0x6e796436 ct_sip_parse_request +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_sip 0xe4b4e425 ct_sip_parse_header_uri +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_sip 0xf40c87ba ct_sip_parse_numerical_param +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_snmp 0x076c51f5 nf_nat_snmp_hook +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_tftp 0xedfebe92 nf_nat_tftp_hook +EXPORT_SYMBOL_GPL net/netfilter/nf_dup_netdev 0xbeb348d8 nf_fwd_netdev_egress +EXPORT_SYMBOL_GPL net/netfilter/nf_dup_netdev 0xef46d83f nft_fwd_dup_netdev_offload +EXPORT_SYMBOL_GPL net/netfilter/nf_dup_netdev 0xf6321a62 nf_dup_netdev_egress +EXPORT_SYMBOL_GPL net/netfilter/nf_flow_table 0x0a26d124 nf_flow_rule_route_ipv4 +EXPORT_SYMBOL_GPL net/netfilter/nf_flow_table 0x0e443a8f flow_offload_route_init +EXPORT_SYMBOL_GPL net/netfilter/nf_flow_table 0x1966275e nf_flow_offload_ipv6_hook +EXPORT_SYMBOL_GPL net/netfilter/nf_flow_table 0x233082bd nf_flow_table_free +EXPORT_SYMBOL_GPL net/netfilter/nf_flow_table 0x45d707ac flow_offload_teardown +EXPORT_SYMBOL_GPL net/netfilter/nf_flow_table 0x68730496 nf_flow_dnat_port +EXPORT_SYMBOL_GPL net/netfilter/nf_flow_table 0x6cdb9b65 flow_offload_refresh +EXPORT_SYMBOL_GPL net/netfilter/nf_flow_table 0x83487118 nf_flow_snat_port +EXPORT_SYMBOL_GPL net/netfilter/nf_flow_table 0x9e7a96ec nf_flow_table_init +EXPORT_SYMBOL_GPL net/netfilter/nf_flow_table 0xc91a5ef0 nf_flow_table_offload_setup +EXPORT_SYMBOL_GPL net/netfilter/nf_flow_table 0xcdf376d5 flow_offload_lookup +EXPORT_SYMBOL_GPL net/netfilter/nf_flow_table 0xdf8ef527 nf_flow_offload_ip_hook +EXPORT_SYMBOL_GPL net/netfilter/nf_flow_table 0xe0c0644f flow_offload_add +EXPORT_SYMBOL_GPL net/netfilter/nf_flow_table 0xe79c99f2 nf_flow_table_cleanup +EXPORT_SYMBOL_GPL net/netfilter/nf_flow_table 0xf038bc93 nf_flow_rule_route_ipv6 +EXPORT_SYMBOL_GPL net/netfilter/nf_flow_table 0xf972e780 flow_offload_alloc +EXPORT_SYMBOL_GPL net/netfilter/nf_flow_table 0xfcb752ab flow_offload_free +EXPORT_SYMBOL_GPL net/netfilter/nf_log_common 0x08772128 nf_log_dump_packet_common +EXPORT_SYMBOL_GPL net/netfilter/nf_log_common 0x1126f8c0 nf_log_dump_vlan +EXPORT_SYMBOL_GPL net/netfilter/nf_log_common 0x18472051 nf_log_dump_udp_header +EXPORT_SYMBOL_GPL net/netfilter/nf_log_common 0x6aca0e6b nf_log_dump_tcp_header +EXPORT_SYMBOL_GPL net/netfilter/nf_log_common 0x96aed2b0 nf_log_dump_sk_uid_gid +EXPORT_SYMBOL_GPL net/netfilter/nf_log_common 0xb539a0ec nf_log_l2packet +EXPORT_SYMBOL_GPL net/netfilter/nf_nat 0x0b56724e nf_nat_ipv6_register_fn +EXPORT_SYMBOL_GPL net/netfilter/nf_nat 0x0dc284d6 nf_nat_icmp_reply_translation +EXPORT_SYMBOL_GPL net/netfilter/nf_nat 0x208497b7 nf_nat_redirect_ipv4 +EXPORT_SYMBOL_GPL net/netfilter/nf_nat 0x3bc17c49 nf_nat_masquerade_inet_register_notifiers +EXPORT_SYMBOL_GPL net/netfilter/nf_nat 0x496dee52 nf_nat_redirect_ipv6 +EXPORT_SYMBOL_GPL net/netfilter/nf_nat 0x61112599 nf_nat_ipv6_unregister_fn +EXPORT_SYMBOL_GPL net/netfilter/nf_nat 0x72aa37fd nf_nat_inet_register_fn +EXPORT_SYMBOL_GPL net/netfilter/nf_nat 0x7aa919a9 nf_nat_icmpv6_reply_translation +EXPORT_SYMBOL_GPL net/netfilter/nf_nat 0x7e1d6209 nf_ct_nat_ext_add +EXPORT_SYMBOL_GPL net/netfilter/nf_nat 0x843844e1 nf_nat_packet +EXPORT_SYMBOL_GPL net/netfilter/nf_nat 0x93023a9e nf_nat_ipv4_unregister_fn +EXPORT_SYMBOL_GPL net/netfilter/nf_nat 0xa59aa80a nf_nat_ipv4_register_fn +EXPORT_SYMBOL_GPL net/netfilter/nf_nat 0xa84f1401 nf_nat_inet_unregister_fn +EXPORT_SYMBOL_GPL net/netfilter/nf_nat 0xb87abce1 nf_nat_inet_fn +EXPORT_SYMBOL_GPL net/netfilter/nf_nat 0xb93c5dc2 nf_nat_masquerade_ipv4 +EXPORT_SYMBOL_GPL net/netfilter/nf_nat 0xc2274e80 nf_nat_alloc_null_binding +EXPORT_SYMBOL_GPL net/netfilter/nf_nat 0xd9c25654 nf_nat_masquerade_inet_unregister_notifiers +EXPORT_SYMBOL_GPL net/netfilter/nf_nat 0xdfc3fed3 nf_nat_masquerade_ipv6 +EXPORT_SYMBOL_GPL net/netfilter/nf_synproxy_core 0x0580dcdf synproxy_parse_options +EXPORT_SYMBOL_GPL net/netfilter/nf_synproxy_core 0x1f099794 synproxy_init_timestamp_cookie +EXPORT_SYMBOL_GPL net/netfilter/nf_synproxy_core 0x2f4bc3f1 ipv4_synproxy_hook +EXPORT_SYMBOL_GPL net/netfilter/nf_synproxy_core 0x435e0eb2 synproxy_send_client_synack +EXPORT_SYMBOL_GPL net/netfilter/nf_synproxy_core 0x841363ae nf_synproxy_ipv6_init +EXPORT_SYMBOL_GPL net/netfilter/nf_synproxy_core 0xa391325e synproxy_send_client_synack_ipv6 +EXPORT_SYMBOL_GPL net/netfilter/nf_synproxy_core 0xaecf62a1 nf_synproxy_ipv6_fini +EXPORT_SYMBOL_GPL net/netfilter/nf_synproxy_core 0xbdb57e3b synproxy_recv_client_ack_ipv6 +EXPORT_SYMBOL_GPL net/netfilter/nf_synproxy_core 0xca9fc082 synproxy_net_id +EXPORT_SYMBOL_GPL net/netfilter/nf_synproxy_core 0xcde4020d ipv6_synproxy_hook +EXPORT_SYMBOL_GPL net/netfilter/nf_synproxy_core 0xd2dd1d89 nf_synproxy_ipv4_fini +EXPORT_SYMBOL_GPL net/netfilter/nf_synproxy_core 0xe69a9883 synproxy_recv_client_ack +EXPORT_SYMBOL_GPL net/netfilter/nf_synproxy_core 0xf8011c86 nf_synproxy_ipv4_init +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0x00e1dcac nft_data_init +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0x04c26b4c nft_chain_validate_hooks +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0x1889667b nft_unregister_flowtable_type +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0x19cc1e79 nft_meta_set_destroy +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0x1e6b75a3 nft_parse_register +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0x22f4f8e9 nft_obj_lookup +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0x27ff5aa4 nft_meta_get_init +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0x299f9245 nft_meta_set_dump +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0x3251d762 nf_tables_trans_destroy_flush_work +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0x41b71e65 nft_trace_enabled +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0x50017b5c nft_validate_register_store +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0x502eed3d nft_meta_policy +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0x5d15c59f nft_meta_get_eval +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0x641f3f8f nft_unregister_obj +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0x70487cf4 nft_meta_set_eval +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0x7692821f nft_data_release +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0x77957870 nf_tables_destroy_set +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0x77ee3935 nf_tables_deactivate_set +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0x85430a76 nft_validate_register_load +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0x884b5eca nf_tables_bind_set +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0x8a766dae nft_meta_set_init +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0x8ceadce6 nft_data_dump +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0x8ec9d5a2 nf_tables_deactivate_flowtable +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0x90b68f90 nft_set_elem_destroy +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0x9155e5be nft_unregister_chain_type +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0x94ffb9d3 nft_meta_set_validate +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0x98b4334b nft_register_expr +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0xa2737183 nft_meta_get_dump +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0xa840d9c0 nft_unregister_expr +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0xb085d28b nft_flowtable_lookup +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0xbbd809aa nft_obj_notify +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0xbe811175 nft_chain_validate_dependency +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0xbefcfabf nft_register_obj +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0xbf3f0342 nft_register_chain_type +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0xc51395cf nft_dump_register +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0xd4d5bae3 nft_chain_validate +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0xde57b5f5 nft_parse_u32_check +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0xe2893526 nft_register_flowtable_type +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0xe9f997bd nft_do_chain +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0xea8b0d80 __nft_release_basechain +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0xf0f30d5e nft_set_lookup_global +EXPORT_SYMBOL_GPL net/netfilter/nfnetlink 0x304a971f nfnetlink_set_err +EXPORT_SYMBOL_GPL net/netfilter/nfnetlink 0x3f494251 nfnetlink_send +EXPORT_SYMBOL_GPL net/netfilter/nfnetlink 0x5ce3b588 nfnl_lock +EXPORT_SYMBOL_GPL net/netfilter/nfnetlink 0xa61cc3c4 nfnetlink_unicast +EXPORT_SYMBOL_GPL net/netfilter/nfnetlink 0xb247da6e nfnetlink_subsys_register +EXPORT_SYMBOL_GPL net/netfilter/nfnetlink 0xc5543587 nfnetlink_has_listeners +EXPORT_SYMBOL_GPL net/netfilter/nfnetlink 0xdb065657 nfnl_unlock +EXPORT_SYMBOL_GPL net/netfilter/nfnetlink 0xe6f6b9b8 nfnetlink_subsys_unregister +EXPORT_SYMBOL_GPL net/netfilter/nfnetlink_acct 0x03aea689 nfnl_acct_find_get +EXPORT_SYMBOL_GPL net/netfilter/nfnetlink_acct 0x07f2cdd7 nfnl_acct_overquota +EXPORT_SYMBOL_GPL net/netfilter/nfnetlink_acct 0xa9c5280d nfnl_acct_update +EXPORT_SYMBOL_GPL net/netfilter/nfnetlink_acct 0xbecf5d14 nfnl_acct_put +EXPORT_SYMBOL_GPL net/netfilter/nfnetlink_osf 0x35eff5e0 nf_osf_fingers +EXPORT_SYMBOL_GPL net/netfilter/nfnetlink_osf 0x9f60c6a0 nf_osf_match +EXPORT_SYMBOL_GPL net/netfilter/nfnetlink_osf 0xfcd2d5cb nf_osf_find +EXPORT_SYMBOL_GPL net/netfilter/nft_fib 0x2a9cc0e6 nft_fib_init +EXPORT_SYMBOL_GPL net/netfilter/nft_fib 0x7eb89eba nft_fib_dump +EXPORT_SYMBOL_GPL net/netfilter/nft_fib 0xb5bc50a3 nft_fib_store_result +EXPORT_SYMBOL_GPL net/netfilter/nft_fib 0xd35cb39d nft_fib_validate +EXPORT_SYMBOL_GPL net/netfilter/nft_reject 0x105b07e2 nft_reject_policy +EXPORT_SYMBOL_GPL net/netfilter/nft_reject 0x1de558c1 nft_reject_icmpv6_code +EXPORT_SYMBOL_GPL net/netfilter/nft_reject 0x6738fcb0 nft_reject_dump +EXPORT_SYMBOL_GPL net/netfilter/nft_reject 0x7218f883 nft_reject_init +EXPORT_SYMBOL_GPL net/netfilter/nft_reject 0xc4daa85c nft_reject_validate +EXPORT_SYMBOL_GPL net/netfilter/nft_reject 0xe2c84666 nft_reject_icmp_code +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0x04e27719 xt_compat_flush_offsets +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0x05243516 xt_request_find_match +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0x09bdcaa5 xt_compat_target_offset +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0x0be61561 xt_target_to_user +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0x0f4bef0a xt_find_table_lock +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0x14d71eaa xt_compat_match_from_user +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0x24c8e482 xt_copy_counters_from_user +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0x2ae7a336 xt_match_to_user +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0x511d6a69 xt_compat_match_to_user +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0x536564bf xt_replace_table +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0x67e629d0 xt_proto_fini +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 0x8767dccb xt_hook_ops_alloc +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0x88a79328 xt_check_match +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0x8ab53fa3 xt_register_table +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0x9c995c69 xt_percpu_counter_alloc +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0xa7c94f1d xt_compat_lock +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0xab1327a1 xt_compat_match_offset +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0xbfacb837 xt_percpu_counter_free +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0xc4c10e0a xt_compat_target_from_user +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0xc7fae024 xt_compat_calc_jump +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0xcba994a2 xt_unregister_table +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0xd1e246a2 xt_compat_unlock +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0xd1ed81f8 xt_proto_init +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0xd3fcc511 xt_tee_enabled +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0xd6090918 xt_compat_target_to_user +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0xdab4859e xt_check_target +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0xddf68fc6 xt_find_revision +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0xeec56d31 xt_request_find_table_lock +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0xfae67234 xt_table_unlock +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0xfc8d584e xt_request_find_target +EXPORT_SYMBOL_GPL net/netfilter/xt_RATEEST 0x287b7317 xt_rateest_lookup +EXPORT_SYMBOL_GPL net/netfilter/xt_RATEEST 0xf931b231 xt_rateest_put +EXPORT_SYMBOL_GPL net/nfc/nci/nci_spi 0x63c5ac30 nci_spi_allocate_spi +EXPORT_SYMBOL_GPL net/nfc/nci/nci_spi 0x91321b7b nci_spi_send +EXPORT_SYMBOL_GPL net/nfc/nci/nci_spi 0xd1104140 nci_spi_read +EXPORT_SYMBOL_GPL net/nfc/nci/nci_uart 0x498be3a8 nci_uart_unregister +EXPORT_SYMBOL_GPL net/nfc/nci/nci_uart 0x7109463e nci_uart_register +EXPORT_SYMBOL_GPL net/nfc/nci/nci_uart 0x9b5ce3e2 nci_uart_set_config +EXPORT_SYMBOL_GPL net/nsh/nsh 0x60126aca nsh_pop +EXPORT_SYMBOL_GPL net/nsh/nsh 0xcaa5b5eb nsh_push +EXPORT_SYMBOL_GPL net/openvswitch/openvswitch 0x01d4788e ovs_netdev_link +EXPORT_SYMBOL_GPL net/openvswitch/openvswitch 0x09753682 ovs_vport_free +EXPORT_SYMBOL_GPL net/openvswitch/openvswitch 0x27d8e4ec ovs_netdev_tunnel_destroy +EXPORT_SYMBOL_GPL net/openvswitch/openvswitch 0xbc16928b __ovs_vport_ops_register +EXPORT_SYMBOL_GPL net/openvswitch/openvswitch 0xc2b85043 ovs_vport_ops_unregister +EXPORT_SYMBOL_GPL net/openvswitch/openvswitch 0xe0af1934 ovs_vport_alloc +EXPORT_SYMBOL_GPL net/psample/psample 0x00b4f1e7 psample_group_put +EXPORT_SYMBOL_GPL net/psample/psample 0x5d5f6983 psample_sample_packet +EXPORT_SYMBOL_GPL net/psample/psample 0xdd7bd250 psample_group_take +EXPORT_SYMBOL_GPL net/psample/psample 0xe764ddcc psample_group_get +EXPORT_SYMBOL_GPL net/qrtr/ns 0x636a2832 qrtr_ns_init +EXPORT_SYMBOL_GPL net/qrtr/ns 0x8d25501f qrtr_ns_remove +EXPORT_SYMBOL_GPL net/qrtr/qrtr 0x38095895 qrtr_endpoint_register +EXPORT_SYMBOL_GPL net/qrtr/qrtr 0x878bc31a qrtr_endpoint_post +EXPORT_SYMBOL_GPL net/qrtr/qrtr 0xb5b33b78 qrtr_endpoint_unregister +EXPORT_SYMBOL_GPL net/rds/rds 0x00a467af rds_wq +EXPORT_SYMBOL_GPL net/rds/rds 0x143a6fd9 rds_inc_path_init +EXPORT_SYMBOL_GPL net/rds/rds 0x252424f0 rds_trans_register +EXPORT_SYMBOL_GPL net/rds/rds 0x25a410b6 rds_for_each_conn_info +EXPORT_SYMBOL_GPL net/rds/rds 0x25c77d5c rds_atomic_send_complete +EXPORT_SYMBOL_GPL net/rds/rds 0x2b0d543c rds_message_add_extension +EXPORT_SYMBOL_GPL net/rds/rds 0x36087aa4 rds_stats +EXPORT_SYMBOL_GPL net/rds/rds 0x39af45ea rds_send_ping +EXPORT_SYMBOL_GPL net/rds/rds 0x3ce4fdd8 rds_info_register_func +EXPORT_SYMBOL_GPL net/rds/rds 0x3dc97338 rds_conn_connect_if_down +EXPORT_SYMBOL_GPL net/rds/rds 0x43a5fd5e rds_conn_path_connect_if_down +EXPORT_SYMBOL_GPL net/rds/rds 0x45a4781e rds_addr_cmp +EXPORT_SYMBOL_GPL net/rds/rds 0x4a8a3af1 rds_connect_path_complete +EXPORT_SYMBOL_GPL net/rds/rds 0x4d924ec4 rds_message_put +EXPORT_SYMBOL_GPL net/rds/rds 0x4e56a8f0 rds_rdma_send_complete +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 0x5f700850 rds_send_path_reset +EXPORT_SYMBOL_GPL net/rds/rds 0x60b4d1b0 rds_inc_put +EXPORT_SYMBOL_GPL net/rds/rds 0x66ffa49d rds_recv_incoming +EXPORT_SYMBOL_GPL net/rds/rds 0x69e2f583 rds_cong_map_updated +EXPORT_SYMBOL_GPL net/rds/rds 0x6a923b3b rds_conn_path_drop +EXPORT_SYMBOL_GPL net/rds/rds 0x7b399e66 rds_page_remainder_alloc +EXPORT_SYMBOL_GPL net/rds/rds 0x7fb978ef rds_message_addref +EXPORT_SYMBOL_GPL net/rds/rds 0x85e4e520 rds_stats_info_copy +EXPORT_SYMBOL_GPL net/rds/rds 0x8de46e7e rds_conn_create +EXPORT_SYMBOL_GPL net/rds/rds 0x9bb759f5 rds_trans_unregister +EXPORT_SYMBOL_GPL net/rds/rds 0xa22f2d68 rds_info_deregister_func +EXPORT_SYMBOL_GPL net/rds/rds 0xb2325159 rds_conn_create_outgoing +EXPORT_SYMBOL_GPL net/rds/rds 0xb23fbc6c rds_conn_destroy +EXPORT_SYMBOL_GPL net/rds/rds 0xb42ceacf rds_send_path_drop_acked +EXPORT_SYMBOL_GPL net/rds/rds 0xbfa8304a rds_message_unmapped +EXPORT_SYMBOL_GPL net/rds/rds 0xc2dab779 rds_info_copy +EXPORT_SYMBOL_GPL net/rds/rds 0xd657a75a rds_send_xmit +EXPORT_SYMBOL_GPL net/rds/rds 0xea1fedde rds_conn_drop +EXPORT_SYMBOL_GPL net/rds/rds 0xf102e6aa rds_connect_complete +EXPORT_SYMBOL_GPL net/rds/rds 0xf639c20a rds_inc_init +EXPORT_SYMBOL_GPL net/rds/rds 0xfde8d3cc rds_send_drop_acked +EXPORT_SYMBOL_GPL net/sched/sch_pie 0x15467d7a pie_drop_early +EXPORT_SYMBOL_GPL net/sched/sch_pie 0x6ce9b467 pie_calculate_probability +EXPORT_SYMBOL_GPL net/sched/sch_pie 0x76411255 pie_process_dequeue +EXPORT_SYMBOL_GPL net/sched/sch_taprio 0x5fc3c6ed taprio_offload_free +EXPORT_SYMBOL_GPL net/sched/sch_taprio 0xa7f08102 taprio_offload_get +EXPORT_SYMBOL_GPL net/sctp/sctp 0x436645a3 sctp_for_each_endpoint +EXPORT_SYMBOL_GPL net/sctp/sctp 0x4917b285 sctp_get_sctp_info +EXPORT_SYMBOL_GPL net/sctp/sctp 0x6e4ffd56 sctp_for_each_transport +EXPORT_SYMBOL_GPL net/sctp/sctp 0xa693226b sctp_transport_lookup_process +EXPORT_SYMBOL_GPL net/smc/smc 0x2bdbcc9a smcd_free_dev +EXPORT_SYMBOL_GPL net/smc/smc 0x2df5f803 smcd_handle_event +EXPORT_SYMBOL_GPL net/smc/smc 0x3602feff smc_proto +EXPORT_SYMBOL_GPL net/smc/smc 0x73a9521d smc_unhash_sk +EXPORT_SYMBOL_GPL net/smc/smc 0x8cc923b1 smcd_unregister_dev +EXPORT_SYMBOL_GPL net/smc/smc 0x99638a2e smcd_register_dev +EXPORT_SYMBOL_GPL net/smc/smc 0x9bd7442d smcd_handle_irq +EXPORT_SYMBOL_GPL net/smc/smc 0xa80574e5 smcd_alloc_dev +EXPORT_SYMBOL_GPL net/smc/smc 0xb44f293b smc_hash_sk +EXPORT_SYMBOL_GPL net/smc/smc 0xd8c097e1 smc_proto6 +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 0x65d05cf6 svcauth_gss_flavor +EXPORT_SYMBOL_GPL net/sunrpc/auth_gss/auth_rpcgss 0xbda0f249 gss_mech_register +EXPORT_SYMBOL_GPL net/sunrpc/auth_gss/auth_rpcgss 0xd7673035 g_verify_token_header +EXPORT_SYMBOL_GPL net/sunrpc/auth_gss/auth_rpcgss 0xe9244d68 gss_mech_unregister +EXPORT_SYMBOL_GPL net/sunrpc/auth_gss/auth_rpcgss 0xf20ffab3 svcauth_gss_register_pseudoflavor +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x00df0dde rpc_task_release_transport +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x00fb65ea sunrpc_cache_update +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x0215ae03 rpc_call_null +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x02417057 xprt_reserve_xprt +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x048587d4 rpc_get_sb_net +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x05a38859 xdr_write_pages +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 0x07722fec sunrpc_cache_pipe_upcall +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x088e79f6 rpcauth_wrap_req_encode +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x098e0adb rpc_call_start +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x0a4b1296 svc_find_xprt +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x0c3e26b2 svc_reserve +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x0c3f6502 svc_set_num_threads +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x0c604e4f svc_rpcb_setup +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x0c680a4b svc_xprt_copy_addrs +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x0dd53eb9 svc_create +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x0df396b7 xdr_decode_word +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x0e592860 rpc_max_payload +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x13fc04ba svc_print_addr +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x14c70fdc rpc_alloc_iostats +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x14d543a7 xdr_stream_decode_opaque_dup +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x18aee2ff rpc_call_async +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x1990dffc rpc_sleep_on +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x1a3ae5f8 rpc_proc_register +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x1ada35f4 rpcauth_stringify_acceptor +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x1b9d0fcc svc_authenticate +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x1bb509b0 svcauth_unix_purge +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x1c14fec0 svc_xprt_init +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x1c5f2fab xdr_enter_page +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x1db54444 rpc_clnt_swap_deactivate +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x1e119a79 rpcauth_get_pseudoflavor +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x1f10deeb rpc_init_pipe_dir_head +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x1f2a9970 rpc_ntop +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x1f9a331e svc_create_pooled +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x20836349 rpc_restart_call_prepare +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x22d09225 bc_svc_process +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x22d54d47 cache_check +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x23012a2a xdr_process_buf +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x23251a8b rpc_peeraddr +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x238f5f7a cache_destroy_net +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x26d8fcba svc_age_temp_xprts_now +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x2919b156 xdr_decode_string_inplace +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x2babc180 svc_rqst_free +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x2bef0345 svc_generic_rpcbind_set +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x2c19b3dd rpc_call_sync +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x2d290f45 rpc_uaddr2sockaddr +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x2df8dbaa xdr_buf_trim +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x2e834f55 cache_seq_start_rcu +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x2fca439c rpc_count_iostats_metrics +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x300b2826 svc_xprt_do_enqueue +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x309bde06 csum_partial_copy_to_xdr +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x310821b9 xdr_inline_pages +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x3137c193 rpc_create +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x31a89d59 rpc_debug +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x34d184de rpc_wake_up_status +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x36c8075c __rpc_wait_for_completion_task +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x36d3e9f1 svc_exit_thread +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x387e1639 rpc_pipefs_notifier_register +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x3a35cd65 xprt_reserve_xprt_cong +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x3b9f17cf rpc_malloc +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x3d511423 rpcauth_lookupcred +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x3d88e0b6 rpc_add_pipe_dir_object +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x3ecbe91b xdr_stream_decode_string +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x3ecd23c7 rpc_exit +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x3f3fb0b3 xprt_wake_pending_tasks +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x3f6b986a sunrpc_init_cache_detail +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x3f9a2b0b rpcauth_get_gssinfo +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x4119d9a9 xprt_force_disconnect +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x411b6d9b svc_sock_update_bufs +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x4154960c rpc_set_connect_timeout +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x4430a9d0 rpc_unlink +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x443b1d57 svc_prepare_thread +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x44cd0f17 xdr_set_scratch_buffer +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x453efa54 svc_pool_map +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x476a7417 xdr_encode_array2 +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x481d49d2 xprt_reconnect_backoff +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x4a1382e3 xprt_release_xprt +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x4a50199c xdr_stream_decode_opaque +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x4afedab1 xprtiod_workqueue +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x4c46a623 sunrpc_destroy_cache_detail +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x4d6139df xdr_commit_encode +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 0x4f8c6e5d rpc_num_bc_slots +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x4fad7e3c svc_fill_write_vector +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x5044f92e rpc_queue_upcall +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x50ab95d6 svc_seq_show +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x519756a1 svc_max_payload +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x52d139d2 xprt_adjust_cwnd +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x53445f68 nlm_debug +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x538a894a xprt_unregister_transport +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x55025c89 svc_drop +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x5895930f rpc_clnt_test_and_add_xprt +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x58d41530 xdr_init_decode +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x59990e92 xprt_free +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x5a45ba31 svc_auth_unregister +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x5c21ca92 rpc_pipe_generic_upcall +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x5c6d820a sunrpc_cache_unhash +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x5ca3e1d6 rpc_clone_client_set_auth +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x5dcd64df svc_rqst_alloc +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x5e3678db svc_xprt_enqueue +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x5fa6265f rpc_put_sb_net +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x602ea85d svc_wake_up +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x609aa5cd rpc_mkpipe_dentry +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x60e43d77 sunrpc_cache_lookup_rcu +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x616c6683 rpcauth_init_credcache +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x6206bcc1 cache_unregister_net +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x64c9f420 xprt_disconnect_done +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x66bae00f rpc_count_iostats +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x66ed2439 rpc_destroy_wait_queue +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x67817c88 rpcauth_lookup_credcache +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x68b80516 auth_domain_find +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x696312e8 rpc_sleep_on_timeout +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x69ffeb80 rpc_clnt_xprt_switch_has_addr +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x6e3d8d55 rpc_free +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x6eea6d0c rpc_mkpipe_data +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x6f2d94bb rpc_release_client +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x6fe290b3 xprt_free_slot +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x702247c0 rpc_task_timeout +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x70f96011 rpcauth_register +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 0x754739a1 xdr_decode_array2 +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x76eded14 rpc_clnt_swap_activate +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x785045e8 rpc_wake_up_queued_task +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x785f4d0e rpc_wake_up_first +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x7abbdf7a sunrpc_cache_register_pipefs +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x7de53067 rpc_init_rtt +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x7e1019d1 svc_shutdown_net +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x7ea8c18b xprt_wait_for_buffer_space +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x7f1a7ce2 xprt_alloc +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x7f73c398 unix_domain_find +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x828d69eb svc_xprt_names +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x832f15af xprt_release_rqst_cong +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x836e2a59 svc_xprt_put +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x83d20099 rpcauth_destroy_credcache +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x8656588e cache_register_net +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x86f429a4 svcauth_unix_set_client +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x878dd9d5 xdr_inline_decode +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x880a7a16 rpc_destroy_pipe_data +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x892f08fd xdr_stream_decode_string_dup +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x8a225121 xdr_buf_from_iov +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x8c1ddcf5 rpcauth_unwrap_resp_decode +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x8c6d1aa8 xprt_put +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x8dd4221c write_bytes_to_xdr_buf +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x8e7e89ce xprt_complete_rqst +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x8e7f23a4 xdr_terminate_string +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x8e9fb8f9 rpc_put_task +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x8eafe5f5 xdr_encode_word +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x8f0d4d4e rpc_peeraddr2str +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x8f278dc5 xprt_update_rtt +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x90184f4b xdr_init_encode +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x9216bd25 rpc_sleep_on_priority +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x928f1e68 rpc_clnt_add_xprt +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x9391e1f4 xdr_read_pages +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x95d84bb5 rpc_find_or_alloc_pipe_dir_object +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x96591a2a rpc_clnt_setup_test_and_add_xprt +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x9670b5a1 rpc_free_iostats +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x974cf61c rpc_max_bc_payload +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x99387f0d auth_domain_put +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x997a32b5 rpc_net_ns +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x99aee353 rpc_init_priority_wait_queue +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x9b62e129 rpc_wake_up_next +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x9c361081 rpc_bind_new_program +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x9d199992 xprt_reconnect_delay +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xa047727b svc_return_autherr +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xa13acdb8 svc_pool_map_put +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xa34d4582 sunrpc_cache_pipe_upcall_timeout +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xa416896d xprt_unpin_rqst +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xa485824e xprt_release_xprt_cong +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xa491eef6 rpc_proc_unregister +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xa516e98f xprt_lookup_rqst +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xa545ecd3 xprt_alloc_slot +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xa582729f rpcauth_init_cred +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xa5c6ef6a svc_proc_unregister +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xa669b5e0 rpc_pton +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xa6eaa8c0 svc_encode_read_payload +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xa7650b6e sunrpc_cache_unregister_pipefs +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xa8d13b40 svc_unreg_xprt_class +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xa991221e svc_recv +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xab0ae495 rpc_sleep_on_priority_timeout +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xab783262 svc_close_xprt +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xab82122f svc_bind +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xaf5bf6ef nfs_debug +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xaf62469c rpc_put_task_async +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xb0386753 xprt_destroy_backchannel +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xb19277e3 svc_auth_register +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xb312d0c4 svc_pool_map_get +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xb3266324 rpcauth_create +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xb51a3724 rpc_pipefs_notifier_unregister +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xb5d8c752 rpc_delay +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xba20a24a rpc_restart_call +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xbac2817b xdr_init_decode_pages +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xbd8b0896 rpc_clnt_xprt_switch_add_xprt +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xbe0cefc9 read_bytes_from_xdr_buf +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xbe1dc9ec svc_generic_init_request +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xbe9dac30 rpc_prepare_reply_pages +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xbeaf960d rpc_clnt_xprt_switch_put +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xbeb398b7 rpc_d_lookup_sb +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xbf9d1b96 nfsd_debug +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xc09e99cc rpc_clnt_iterate_for_each_xprt +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xc12435e3 rpc_calc_rto +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xc19a4c85 rpc_setbufsize +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xc38aba21 svc_set_num_threads_sync +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xc46bae50 svc_proc_register +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xc4ba7960 xprt_wait_for_reply_request_rtt +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xc6331a07 rpcb_getport_async +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xc66c27aa _copy_from_pages +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xc68a46f9 gssd_running +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xc69f90c9 rpc_shutdown_client +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xc844f677 xprt_pin_rqst +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xc8e96dea qword_addhex +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xcc69477c svc_destroy +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xce678a59 xdr_decode_netobj +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xceac975d rpc_force_rebind +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xcee467f3 xprt_load_transport +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xcf263207 rpcauth_unregister +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xcfda3c13 xprt_setup_backchannel +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xd0317f02 svc_rpcb_cleanup +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xd13ac5e9 xdr_reserve_space +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xd3b4c4ef cache_seq_next_rcu +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xd3d0f459 xprt_register_transport +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xd4d04f9a cache_seq_stop_rcu +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xd61fe619 svc_fill_symlink_pathname +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xd6319bac rpc_run_task +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xd74fd9f5 svc_process +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xdaf86c28 svc_create_xprt +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xdd194251 cache_purge +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xde9bc8d0 svc_rpcbind_set_version +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xdfc7cd53 svc_addsock +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xe14238cd svc_alien_sock +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xe1e3c71d auth_domain_lookup +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xe2c45b6f rpc_clnt_show_stats +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xe5919cb1 xdr_encode_opaque +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xe5f08fb5 rpc_switch_client_transport +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xe68b5893 rpc_init_pipe_dir_object +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xe8ef2ffd xdr_stream_pos +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xe97f4ce5 qword_get +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xedcf6be4 qword_add +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xedfb5c0c xdr_shift_buf +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xee9638dc xprt_request_get_cong +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xeeacab69 rpc_update_rtt +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xf0b7775d rpc_init_wait_queue +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xf13697cd xprt_write_space +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xf3d18463 rpc_localaddr +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xf711a645 xprt_get +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xf7b7bf13 svc_reg_xprt_class +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xf9385914 xdr_buf_subsegment +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xfaa70bc0 rpc_machine_cred +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xfb23bda7 rpc_remove_pipe_dir_object +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xfbd079f1 cache_create_net +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xfd1204af rpc_killall_tasks +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xfd6ca046 xprt_wait_for_reply_request_def +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xfdb2d0b4 rpc_clone_client +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xfe15c39f put_rpccred +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xfe74f2ff svc_set_client +EXPORT_SYMBOL_GPL net/tls/tls 0x2aa77944 tls_offload_tx_resync_request +EXPORT_SYMBOL_GPL net/tls/tls 0x39f14483 tls_encrypt_skb +EXPORT_SYMBOL_GPL net/tls/tls 0x3e168753 tls_device_sk_destruct +EXPORT_SYMBOL_GPL net/tls/tls 0x88501096 tls_validate_xmit_skb +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 0x09ce6e81 virtio_transport_free_pkt +EXPORT_SYMBOL_GPL net/vmw_vsock/vmw_vsock_virtio_transport_common 0x0b0f723f virtio_transport_notify_poll_in +EXPORT_SYMBOL_GPL net/vmw_vsock/vmw_vsock_virtio_transport_common 0x0e7aec9a virtio_transport_stream_is_active +EXPORT_SYMBOL_GPL net/vmw_vsock/vmw_vsock_virtio_transport_common 0x15d2fa18 virtio_transport_stream_has_data +EXPORT_SYMBOL_GPL net/vmw_vsock/vmw_vsock_virtio_transport_common 0x15ead853 virtio_transport_stream_rcvhiwat +EXPORT_SYMBOL_GPL net/vmw_vsock/vmw_vsock_virtio_transport_common 0x272becc5 virtio_transport_dgram_dequeue +EXPORT_SYMBOL_GPL net/vmw_vsock/vmw_vsock_virtio_transport_common 0x2d6cb260 virtio_transport_notify_send_pre_block +EXPORT_SYMBOL_GPL net/vmw_vsock/vmw_vsock_virtio_transport_common 0x451a6776 virtio_transport_shutdown +EXPORT_SYMBOL_GPL net/vmw_vsock/vmw_vsock_virtio_transport_common 0x453dd509 virtio_transport_notify_send_init +EXPORT_SYMBOL_GPL net/vmw_vsock/vmw_vsock_virtio_transport_common 0x4ed52ffe virtio_transport_notify_poll_out +EXPORT_SYMBOL_GPL net/vmw_vsock/vmw_vsock_virtio_transport_common 0x5c599b94 virtio_transport_notify_recv_post_dequeue +EXPORT_SYMBOL_GPL net/vmw_vsock/vmw_vsock_virtio_transport_common 0x5c6ada0a virtio_transport_put_credit +EXPORT_SYMBOL_GPL net/vmw_vsock/vmw_vsock_virtio_transport_common 0x69d48dec virtio_transport_dgram_bind +EXPORT_SYMBOL_GPL net/vmw_vsock/vmw_vsock_virtio_transport_common 0x6acce75e virtio_transport_notify_send_pre_enqueue +EXPORT_SYMBOL_GPL net/vmw_vsock/vmw_vsock_virtio_transport_common 0x6d2440c4 virtio_transport_deliver_tap_pkt +EXPORT_SYMBOL_GPL net/vmw_vsock/vmw_vsock_virtio_transport_common 0x72cb435f virtio_transport_notify_send_post_enqueue +EXPORT_SYMBOL_GPL net/vmw_vsock/vmw_vsock_virtio_transport_common 0x849fde52 virtio_transport_get_credit +EXPORT_SYMBOL_GPL net/vmw_vsock/vmw_vsock_virtio_transport_common 0x946c578b virtio_transport_inc_tx_pkt +EXPORT_SYMBOL_GPL net/vmw_vsock/vmw_vsock_virtio_transport_common 0xa574ad6f virtio_transport_release +EXPORT_SYMBOL_GPL net/vmw_vsock/vmw_vsock_virtio_transport_common 0xae8bc600 virtio_transport_notify_recv_init +EXPORT_SYMBOL_GPL net/vmw_vsock/vmw_vsock_virtio_transport_common 0xaf324f83 virtio_transport_do_socket_init +EXPORT_SYMBOL_GPL net/vmw_vsock/vmw_vsock_virtio_transport_common 0xb5fb1a25 virtio_transport_stream_enqueue +EXPORT_SYMBOL_GPL net/vmw_vsock/vmw_vsock_virtio_transport_common 0xb8f62f73 virtio_transport_stream_has_space +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 0xcf1cbfd7 virtio_transport_stream_dequeue +EXPORT_SYMBOL_GPL net/vmw_vsock/vmw_vsock_virtio_transport_common 0xd072af72 virtio_transport_dgram_enqueue +EXPORT_SYMBOL_GPL net/vmw_vsock/vmw_vsock_virtio_transport_common 0xd22573d6 virtio_transport_connect +EXPORT_SYMBOL_GPL net/vmw_vsock/vmw_vsock_virtio_transport_common 0xd4e8d645 virtio_transport_destruct +EXPORT_SYMBOL_GPL net/vmw_vsock/vmw_vsock_virtio_transport_common 0xe0abe0f1 virtio_transport_recv_pkt +EXPORT_SYMBOL_GPL net/vmw_vsock/vmw_vsock_virtio_transport_common 0xf73afe36 virtio_transport_notify_buffer_size +EXPORT_SYMBOL_GPL net/vmw_vsock/vmw_vsock_virtio_transport_common 0xf7d58382 virtio_transport_notify_recv_pre_block +EXPORT_SYMBOL_GPL net/vmw_vsock/vmw_vsock_virtio_transport_common 0xfc3ac57b virtio_transport_notify_recv_pre_dequeue +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0x0296eb26 vsock_stream_has_data +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0x02b25f93 vsock_remove_bound +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0x1e112009 vsock_remove_connected +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0x2663cb64 vsock_addr_equals_addr +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0x284e07d8 vsock_bind_table +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0x2c08b530 vsock_enqueue_accept +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0x379e398f vsock_find_connected_socket +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0x4ca462df vsock_for_each_connected_socket +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0x57178fca vsock_add_tap +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0x59d943c8 vsock_addr_cast +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0x64ae468f vsock_core_register +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0x6b1c63a0 vsock_find_bound_socket +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0x73879664 vsock_addr_init +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0x751ff010 vsock_addr_unbind +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0x794d3b65 vsock_core_get_transport +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0x90aa8549 vsock_find_cid +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0x9bb6fd09 vsock_connected_table +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0xbd0f699d vsock_addr_bound +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0xc2c7e667 vsock_remove_pending +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0xc3ee7795 vsock_remove_sock +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0xc6f443b3 vsock_add_pending +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0xc92f7f50 vsock_table_lock +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0xcc55eae7 vsock_stream_has_space +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0xcfc6867f vsock_remove_tap +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0xd95ac116 vsock_addr_validate +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0xd9d9a75c vsock_assign_transport +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0xdec35fa2 vsock_create_connected +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0xefbcb389 vsock_insert_connected +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0xf45836c6 vsock_core_unregister +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0xfe0b02e1 vsock_deliver_tap +EXPORT_SYMBOL_GPL net/wimax/wimax 0x003aa5d5 wimax_state_change +EXPORT_SYMBOL_GPL net/wimax/wimax 0x1db951fb wimax_report_rfkill_sw +EXPORT_SYMBOL_GPL net/wimax/wimax 0x64c834fe wimax_msg_send +EXPORT_SYMBOL_GPL net/wimax/wimax 0x6c70a9c9 wimax_state_get +EXPORT_SYMBOL_GPL net/wimax/wimax 0x6d17a15c wimax_msg_len +EXPORT_SYMBOL_GPL net/wimax/wimax 0x87c6fec3 wimax_dev_add +EXPORT_SYMBOL_GPL net/wimax/wimax 0xaf3d48ae wimax_dev_init +EXPORT_SYMBOL_GPL net/wimax/wimax 0xc18a5386 wimax_report_rfkill_hw +EXPORT_SYMBOL_GPL net/wimax/wimax 0xc43abfb3 wimax_msg_data +EXPORT_SYMBOL_GPL net/wimax/wimax 0xcb3e3b2a wimax_dev_rm +EXPORT_SYMBOL_GPL net/wimax/wimax 0xd5ce5355 wimax_msg +EXPORT_SYMBOL_GPL net/wimax/wimax 0xd5d0c929 wimax_msg_data_len +EXPORT_SYMBOL_GPL net/wimax/wimax 0xd720712d wimax_msg_alloc +EXPORT_SYMBOL_GPL net/wireless/cfg80211 0x02032377 cfg80211_wext_giwmode +EXPORT_SYMBOL_GPL net/wireless/cfg80211 0x1cc1e8ef cfg80211_wext_siwfrag +EXPORT_SYMBOL_GPL net/wireless/cfg80211 0x1ea6d5c6 cfg80211_vendor_cmd_get_sender +EXPORT_SYMBOL_GPL net/wireless/cfg80211 0x2aeb240e cfg80211_pmsr_complete +EXPORT_SYMBOL_GPL net/wireless/cfg80211 0x33d50a4f cfg80211_vendor_cmd_reply +EXPORT_SYMBOL_GPL net/wireless/cfg80211 0x40117b7c cfg80211_shutdown_all_interfaces +EXPORT_SYMBOL_GPL net/wireless/cfg80211 0x4a106ab0 cfg80211_wext_giwrange +EXPORT_SYMBOL_GPL net/wireless/cfg80211 0x78aeca54 cfg80211_wext_giwfrag +EXPORT_SYMBOL_GPL net/wireless/cfg80211 0x7f058b3e cfg80211_pmsr_report +EXPORT_SYMBOL_GPL net/wireless/cfg80211 0x8845ff91 cfg80211_wext_giwscan +EXPORT_SYMBOL_GPL net/wireless/cfg80211 0xbf7c0bda cfg80211_wext_siwmode +EXPORT_SYMBOL_GPL net/wireless/cfg80211 0xd1c98496 cfg80211_wext_siwscan +EXPORT_SYMBOL_GPL net/wireless/cfg80211 0xd83d770d cfg80211_wext_giwrts +EXPORT_SYMBOL_GPL net/wireless/cfg80211 0xdcb70c14 cfg80211_wext_siwrts +EXPORT_SYMBOL_GPL net/wireless/cfg80211 0xdd61b88c cfg80211_wext_giwretry +EXPORT_SYMBOL_GPL net/wireless/cfg80211 0xe3d556e8 cfg80211_wext_giwname +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 0x5293e483 ipcomp_init_state +EXPORT_SYMBOL_GPL net/xfrm/xfrm_ipcomp 0xa70bbe03 ipcomp_destroy +EXPORT_SYMBOL_GPL net/xfrm/xfrm_ipcomp 0xde3814c8 ipcomp_input +EXPORT_SYMBOL_GPL net/xfrm/xfrm_ipcomp 0xe5ddc3fc ipcomp_output +EXPORT_SYMBOL_GPL sound/ac97_bus 0x56947898 snd_ac97_reset +EXPORT_SYMBOL_GPL sound/core/seq/snd-seq 0xadb51cff snd_seq_client_ioctl_unlock +EXPORT_SYMBOL_GPL sound/core/seq/snd-seq 0xe50413d7 snd_seq_client_ioctl_lock +EXPORT_SYMBOL_GPL sound/core/snd 0x04c7f73b snd_ctl_sync_vmaster +EXPORT_SYMBOL_GPL sound/core/snd 0x1028e679 snd_ctl_apply_vmaster_slaves +EXPORT_SYMBOL_GPL sound/core/snd 0x1755393d snd_card_disconnect_sync +EXPORT_SYMBOL_GPL sound/core/snd 0x5803d42b snd_card_ref +EXPORT_SYMBOL_GPL sound/core/snd 0x66d9529f snd_device_initialize +EXPORT_SYMBOL_GPL sound/core/snd 0x754e2bc0 snd_card_add_dev_attr +EXPORT_SYMBOL_GPL sound/core/snd 0xadf76d38 snd_ctl_get_preferred_subdevice +EXPORT_SYMBOL_GPL sound/core/snd 0xbaf31122 snd_device_disconnect +EXPORT_SYMBOL_GPL sound/core/snd 0xca26d093 snd_ctl_add_vmaster_hook +EXPORT_SYMBOL_GPL sound/core/snd 0xcf817f2c snd_ctl_activate_id +EXPORT_SYMBOL_GPL sound/core/snd 0xe184a9f2 snd_card_rw_proc_new +EXPORT_SYMBOL_GPL sound/core/snd 0xe973e5df snd_device_get_state +EXPORT_SYMBOL_GPL sound/core/snd-compress 0x190135f4 snd_compress_deregister +EXPORT_SYMBOL_GPL sound/core/snd-compress 0x35ee1f80 snd_compr_stop_error +EXPORT_SYMBOL_GPL sound/core/snd-compress 0x7c780809 snd_compress_new +EXPORT_SYMBOL_GPL sound/core/snd-compress 0x7eb85aab snd_compress_register +EXPORT_SYMBOL_GPL sound/core/snd-pcm 0x04e1b99f snd_pcm_std_chmaps +EXPORT_SYMBOL_GPL sound/core/snd-pcm 0x08a2a88a snd_pcm_stream_unlock +EXPORT_SYMBOL_GPL sound/core/snd-pcm 0x09e913c1 snd_pcm_alt_chmaps +EXPORT_SYMBOL_GPL sound/core/snd-pcm 0x335d345e snd_pcm_hw_constraint_eld +EXPORT_SYMBOL_GPL sound/core/snd-pcm 0x3c879203 snd_pcm_stream_unlock_irq +EXPORT_SYMBOL_GPL sound/core/snd-pcm 0x45e4b122 _snd_pcm_stream_lock_irqsave +EXPORT_SYMBOL_GPL sound/core/snd-pcm 0x59ba6d72 snd_pcm_stream_lock +EXPORT_SYMBOL_GPL sound/core/snd-pcm 0x764601db snd_pcm_stream_lock_irq +EXPORT_SYMBOL_GPL sound/core/snd-pcm 0x79820ff8 snd_pcm_add_chmap_ctls +EXPORT_SYMBOL_GPL sound/core/snd-pcm 0x8d864069 snd_pcm_rate_range_to_bits +EXPORT_SYMBOL_GPL sound/core/snd-pcm 0xa286a234 snd_pcm_format_name +EXPORT_SYMBOL_GPL sound/core/snd-pcm 0xab8bc1a2 snd_pcm_rate_mask_intersect +EXPORT_SYMBOL_GPL sound/core/snd-pcm 0xb6fa8c2d snd_pcm_lib_default_mmap +EXPORT_SYMBOL_GPL sound/core/snd-pcm 0xdf117c3f snd_pcm_stream_unlock_irqrestore +EXPORT_SYMBOL_GPL sound/core/snd-pcm 0xefeb4f57 snd_pcm_stop_xrun +EXPORT_SYMBOL_GPL sound/core/snd-pcm-dmaengine 0x1aafa36d snd_dmaengine_pcm_request_channel +EXPORT_SYMBOL_GPL sound/core/snd-pcm-dmaengine 0x29fd2e4a snd_dmaengine_pcm_open_request_chan +EXPORT_SYMBOL_GPL sound/core/snd-pcm-dmaengine 0x2bda14b6 snd_dmaengine_pcm_refine_runtime_hwparams +EXPORT_SYMBOL_GPL sound/core/snd-pcm-dmaengine 0x308c741b snd_dmaengine_pcm_pointer_no_residue +EXPORT_SYMBOL_GPL sound/core/snd-pcm-dmaengine 0x7e11a722 snd_hwparams_to_dma_slave_config +EXPORT_SYMBOL_GPL sound/core/snd-pcm-dmaengine 0x8be69120 snd_dmaengine_pcm_close +EXPORT_SYMBOL_GPL sound/core/snd-pcm-dmaengine 0xa03eed1b snd_dmaengine_pcm_get_chan +EXPORT_SYMBOL_GPL sound/core/snd-pcm-dmaengine 0xa7b7eb4e snd_dmaengine_pcm_open +EXPORT_SYMBOL_GPL sound/core/snd-pcm-dmaengine 0xa991d684 snd_dmaengine_pcm_set_config_from_dai_data +EXPORT_SYMBOL_GPL sound/core/snd-pcm-dmaengine 0xb95d3936 snd_dmaengine_pcm_pointer +EXPORT_SYMBOL_GPL sound/core/snd-pcm-dmaengine 0xdf9a85e3 snd_dmaengine_pcm_close_release_chan +EXPORT_SYMBOL_GPL sound/core/snd-pcm-dmaengine 0xf6d31780 snd_dmaengine_pcm_trigger +EXPORT_SYMBOL_GPL sound/core/snd-seq-device 0x2ee677a2 snd_seq_driver_unregister +EXPORT_SYMBOL_GPL sound/core/snd-seq-device 0x39462bd3 __snd_seq_driver_register +EXPORT_SYMBOL_GPL sound/firewire/snd-firewire-lib 0x1e857754 amdtp_domain_stop +EXPORT_SYMBOL_GPL sound/firewire/snd-firewire-lib 0x35a04cb7 amdtp_domain_destroy +EXPORT_SYMBOL_GPL sound/firewire/snd-firewire-lib 0x3860115e amdtp_am824_midi_trigger +EXPORT_SYMBOL_GPL sound/firewire/snd-firewire-lib 0x4342ca4e amdtp_am824_set_parameters +EXPORT_SYMBOL_GPL sound/firewire/snd-firewire-lib 0x46f6d062 amdtp_domain_stream_pcm_pointer +EXPORT_SYMBOL_GPL sound/firewire/snd-firewire-lib 0x55fda23f amdtp_am824_init +EXPORT_SYMBOL_GPL sound/firewire/snd-firewire-lib 0x58096122 amdtp_am824_add_pcm_hw_constraints +EXPORT_SYMBOL_GPL sound/firewire/snd-firewire-lib 0x64add2d0 amdtp_am824_set_midi_position +EXPORT_SYMBOL_GPL sound/firewire/snd-firewire-lib 0x7576761b amdtp_domain_stream_pcm_ack +EXPORT_SYMBOL_GPL sound/firewire/snd-firewire-lib 0xa1b51aeb amdtp_domain_add_stream +EXPORT_SYMBOL_GPL sound/firewire/snd-firewire-lib 0xa6533c10 amdtp_domain_start +EXPORT_SYMBOL_GPL sound/firewire/snd-firewire-lib 0xdafe9d01 amdtp_am824_set_pcm_position +EXPORT_SYMBOL_GPL sound/firewire/snd-firewire-lib 0xf918fda9 amdtp_domain_init +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0x08f791fe snd_hdac_power_up +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0x0b18f46f snd_hdac_bus_send_cmd +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0x0d41c6e8 snd_hdac_power_down_pm +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0x0fd6010a snd_hdac_sync_audio_rate +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0x13d5b8b7 snd_hdac_power_up_pm +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0x141db75a snd_hdac_bus_init_cmd_io +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0x152eed5e snd_hdac_codec_read +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0x1dfb53bb snd_hdac_bus_reset_link +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0x1e6aa051 snd_hdac_query_supported_pcm +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0x1ea7ee01 snd_hdac_read +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0x206a9895 snd_hdac_bus_init +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0x218fabae snd_hdac_override_parm +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0x22186eff snd_hdac_stream_sync_trigger +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0x2934629e snd_hdac_register_chmap_ops +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0x2953b344 snd_hdac_sync_power_state +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0x2bd71e66 snd_hdac_check_power_state +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0x2c699d92 snd_hdac_get_stream_stripe_ctl +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0x2e6eebb8 snd_hdac_stream_reset +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0x3520e641 snd_hdac_stream_clear +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0x3bd544c2 snd_hdac_get_active_channels +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0x3cb0ed33 snd_hdac_stream_assign +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0x3f222b25 snd_hdac_setup_channel_mapping +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0x3f41199e snd_hdac_bus_stop_cmd_io +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0x49197076 snd_hdac_bus_handle_stream_irq +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0x4c7ec4b6 snd_hdac_get_ch_alloc_from_ca +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0x4d324287 snd_hdac_regmap_read_raw +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0x527caa9b snd_hdac_get_connections +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0x536cf47e snd_hdac_regmap_add_vendor_verb +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0x53db9e7b snd_hdac_stream_init +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0x5afdee24 snd_hdac_regmap_exit +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0x5b4b96aa snd_hdac_codec_modalias +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0x5c07cb49 snd_hdac_calc_stream_format +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0x6356f198 snd_hdac_stream_cleanup +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0x639f8aed snd_hdac_bus_exit_link_reset +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0x646e7f97 snd_hdac_add_chmap_ctls +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0x67bfe791 snd_hdac_spk_to_chmap +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0x67d8c2ab snd_hdac_bus_enter_link_reset +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0x6b7e25a0 snd_hdac_codec_write +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0x6bcf3732 snd_hdac_device_init +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0x6f6441ad snd_hdac_regmap_write_raw +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0x7317eb76 snd_hdac_bus_get_response +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0x743e8551 snd_hdac_read_parm_uncached +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0x76fabc93 snd_hdac_power_down +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0x77c754a8 snd_hdac_chmap_to_spk_mask +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0x7f1a2aab snd_hdac_stream_timecounter_init +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0x859d954e snd_hdac_regmap_update_raw +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0x86c5a487 snd_hdac_regmap_update_raw_once +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0x88c9da1a snd_hdac_acomp_init +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0x8951a7ab snd_hdac_bus_init_chip +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0x89ed302f snd_hdac_set_codec_wakeup +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0x8a3daf65 snd_hdac_channel_allocation +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0x912a1d7b snd_hdac_dsp_cleanup +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0x989800a1 hdac_get_device_id +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0x9a8e1877 snd_array_free +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0x9dbba4eb snd_hdac_device_set_chip_name +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0x9e4c2a62 snd_hdac_dsp_prepare +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0xa1e8935c snd_hdac_stream_setup_periods +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0xa393dace snd_hdac_bus_exit +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0xa4a55546 snd_hdac_stream_setup +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0xa8b8744b snd_hdac_bus_exec_verb_unlocked +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0xb01b4c6c snd_hdac_is_supported_format +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0xb80ce729 snd_hdac_refresh_widgets +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0xbb13d282 snd_hdac_regmap_init +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0xbe7dd7dc snd_array_new +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0xbe7e36c9 snd_hdac_acomp_get_eld +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0xbf8dba8e snd_hdac_get_sub_nodes +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0xc5e87e32 snd_hdac_acomp_register_notifier +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0xc84947d1 snd_hdac_bus_stop_chip +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0xca56b3a0 snd_hda_bus_type +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0xcab7e2b0 snd_hdac_stream_stop +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0xcc803b07 snd_hdac_stream_start +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0xce24a834 snd_hdac_bus_update_rirb +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0xcfaad83e snd_hdac_bus_free_stream_pages +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0xcfaeee2c snd_hdac_device_unregister +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0xcfb61c32 snd_hdac_stream_release +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0xd045b7ad snd_hdac_stream_set_params +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0xd4c76176 _snd_hdac_read_parm +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0xd7d9d56d snd_hdac_bus_parse_capabilities +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0xdb4b3340 snd_hdac_device_exit +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0xe4e07754 snd_hdac_print_channel_allocation +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0xe52dceb9 snd_hdac_bus_alloc_stream_pages +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0xe5322327 snd_hdac_acomp_exit +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0xed7be431 snd_hdac_device_register +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0xf1b949f7 snd_hdac_display_power +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0xf2488b60 snd_hdac_stream_sync +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0xf3f6f968 snd_hdac_dsp_trigger +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0xf73dbbcf snd_hdac_get_stream +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0xf84d6435 snd_hdac_regmap_sync +EXPORT_SYMBOL_GPL sound/hda/snd-intel-dspcfg 0x2b73f1b7 intel_nhlt_init +EXPORT_SYMBOL_GPL sound/hda/snd-intel-dspcfg 0x3383501f intel_nhlt_get_dmic_geo +EXPORT_SYMBOL_GPL sound/hda/snd-intel-dspcfg 0x43e49cf5 snd_intel_dsp_driver_probe +EXPORT_SYMBOL_GPL sound/hda/snd-intel-dspcfg 0x4e859456 intel_nhlt_free +EXPORT_SYMBOL_GPL sound/i2c/other/snd-ak4113 0x25a02a84 snd_ak4113_build +EXPORT_SYMBOL_GPL sound/i2c/other/snd-ak4113 0x36e9c2ab snd_ak4113_create +EXPORT_SYMBOL_GPL sound/i2c/other/snd-ak4113 0x6487565c snd_ak4113_external_rate +EXPORT_SYMBOL_GPL sound/i2c/other/snd-ak4113 0xadb87be7 snd_ak4113_check_rate_and_errors +EXPORT_SYMBOL_GPL sound/i2c/other/snd-ak4113 0xb6edc98d snd_ak4113_reg_write +EXPORT_SYMBOL_GPL sound/i2c/other/snd-ak4113 0xf2d82f30 snd_ak4113_reinit +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x02273e07 azx_stop_all_streams +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x0461c32c snd_hda_override_conn_list +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x0676f5ac snd_hda_get_input_pin_attr +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x07e297f5 snd_hda_jack_detect_enable +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x0e2b6ab8 query_amp_caps +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x1361e607 snd_hda_codec_pcm_new +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x1661c95b __hda_codec_driver_register +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x18c54c9f snd_hda_jack_add_kctl_mst +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x1915a80f snd_hda_mixer_amp_switch_put +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x193e4b2a snd_hda_pick_fixup +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x195a221a snd_hda_mixer_amp_volume_info +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x1d86958c snd_hda_get_bool_hint +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x22c6390e snd_hda_set_power_save +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x25384849 snd_hda_correct_pin_ctl +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x261b51c9 snd_hda_add_imux_item +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x27e565ed snd_hda_codec_amp_update +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x2b62e520 snd_hda_codec_set_power_to_all +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x2db8e254 snd_hda_apply_fixup +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x2e4ef9b9 snd_hda_input_mux_put +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x32f01013 snd_hda_codec_setup_stream +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x344364be __snd_hda_add_vmaster +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x38ce402b azx_interrupt +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x39a74802 snd_hda_spdif_out_of_nid +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x3b8e34bc snd_hda_get_conn_index +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x3e1ab7bc azx_bus_init +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x40dce680 snd_hda_codec_cleanup +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x423d37cb azx_stop_chip +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x437fca9b snd_hda_multi_out_dig_prepare +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x448a0145 azx_probe_codecs +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x464ddce7 snd_hda_jack_tbl_get_mst +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x475ef10b snd_hda_spdif_ctls_assign +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x4b5ad152 snd_hda_multi_out_analog_prepare +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x503f66d5 snd_hda_codec_load_dsp_cleanup +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x505a4b78 snd_hda_mixer_amp_tlv +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x51817016 azx_init_streams +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x51be5781 snd_hda_check_amp_list_power +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x55aef84b snd_hda_get_num_devices +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x560d9c53 snd_hda_spdif_ctls_unassign +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x56504c69 snd_hda_multi_out_dig_open +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x565878a7 snd_hda_add_vmaster_hook +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x5be3cbb8 snd_hda_override_amp_caps +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x5cea2cb5 snd_hda_attach_beep_device +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x612350ad snd_hda_codec_update_widgets +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x6220d29f snd_hda_add_verbs +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x6669373c _snd_hda_set_pin_ctl +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x667eb684 snd_hda_jack_report_sync +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x6957a9ae snd_hda_get_conn_list +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x6bb3d72b snd_hda_jack_unsol_event +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x6be3f3a6 snd_hda_check_amp_caps +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x6ce4996f azx_free_streams +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x6da79dc8 azx_codec_configure +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x6dacbfae snd_hda_jack_poll_all +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x6e62980a snd_hda_codec_set_pin_target +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x6fb59f85 snd_hda_mixer_amp_switch_info +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x6ffa1590 snd_hda_mixer_amp_volume_put +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x7198aad8 snd_hda_jack_tbl_get_from_tag +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x723ccbb4 snd_hda_codec_set_name +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x73b24fca snd_hda_jack_add_kctls +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x742b987d snd_hda_get_pin_label +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x78a2223a azx_get_position +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x7e183051 snd_hda_codec_amp_init +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x7f3f7b1d snd_hda_apply_verbs +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x83e0eee2 snd_hda_jack_pin_sense +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x848e410b snd_hda_multi_out_analog_cleanup +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x85f7689d hda_get_autocfg_input_label +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x86422096 snd_hda_jack_detect_enable_callback_mst +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x8a309a2f snd_hda_get_connections +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x8c1b8f16 snd_hda_apply_pincfgs +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x8d35bf3c azx_get_pos_posbuf +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x90559304 snd_hda_ctl_add +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x91e423ba snd_hda_codec_amp_init_stereo +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x9406a12b snd_hda_codec_get_pin_target +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x9805d86a snd_hda_codec_load_dsp_prepare +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x9a2f9abc snd_hda_mixer_amp_switch_get +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x9ee2d278 snd_hda_codec_parse_pcms +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x9f986350 snd_hda_codec_build_controls +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xa17fddc9 snd_hda_multi_out_analog_open +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xa32a7d43 snd_hda_lock_devices +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xa74289fa azx_get_pos_lpib +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xaa51f5b1 snd_hda_create_dig_out_ctls +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xac3fd4cb snd_hda_unlock_devices +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xac925155 snd_hda_mixer_amp_switch_put_beep +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xacad6cfc snd_hda_parse_pin_defcfg +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xad3eb80c snd_hda_jack_detect_state_mst +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xaed43b7d snd_hda_jack_set_dirty_all +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xb23d406d is_jack_detectable +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xb3da982e snd_hda_jack_set_gating_jack +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xb6c3cb4e snd_hda_mixer_amp_switch_get_beep +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xb802febd snd_hda_set_vmaster_tlv +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xbae9c0d1 snd_hda_get_hint +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xbf904b88 azx_init_chip +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xc2723bad snd_hda_pick_pin_fixup +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xc48110a2 snd_hda_add_nid +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xc4caa6de snd_hda_get_default_vref +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xc56162ea snd_hda_codec_new +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xc609ebb7 snd_hda_multi_out_dig_close +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xc81e33b8 snd_hda_detach_beep_device +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xc8876501 __snd_hda_codec_cleanup_stream +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xc92d6133 snd_hda_enum_helper_info +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xcb0860b0 snd_hda_multi_out_dig_cleanup +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xcbd59b2d snd_hda_codec_pcm_put +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xcc83b9c5 snd_hda_input_mux_info +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xd1b0e706 snd_hda_get_dev_select +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xd85d4d4e snd_hda_set_dev_select +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xd9d28088 snd_hda_sync_vmaster_hook +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xe000886f snd_hda_find_mixer_ctl +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xe0ec69bf snd_hda_codec_set_pincfg +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xe118de5d snd_pcm_2_1_chmaps +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xe4f324a9 snd_hda_sequence_write +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xe53e411a hda_codec_driver_unregister +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xe6a605a8 snd_hda_shutup_pins +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xe70dfa70 snd_hda_create_spdif_in_ctls +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xe84b7ca2 snd_hda_codec_get_pincfg +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xea171dd9 snd_hda_codec_prepare +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xeab3a3ad snd_hda_codec_configure +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xeae58860 snd_hda_codec_device_new +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xec015eb6 snd_hda_create_spdif_share_sw +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xecad31ff snd_hda_load_patch +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xecc02723 snd_hda_mixer_amp_volume_get +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xed0895fb snd_hda_codec_load_dsp_trigger +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xeda3a721 snd_print_pcm_bits +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xf11de277 snd_hda_codec_eapd_power_filter +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xf5483253 snd_hda_codec_amp_stereo +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xf9d7aba5 snd_hda_enable_beep_device +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xff940c2b snd_hda_add_new_ctls +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xffecc3da snd_hda_get_int_hint +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec-generic 0x08a1b790 snd_hda_gen_update_outputs +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec-generic 0x122388a7 snd_hda_gen_reboot_notify +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec-generic 0x20c116a0 snd_hda_gen_path_power_filter +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec-generic 0x2196d2b5 snd_hda_gen_fix_pin_power +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec-generic 0x34f3c727 snd_hda_gen_parse_auto_config +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec-generic 0x356d2f62 snd_hda_gen_add_mute_led_cdev +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec-generic 0x3704a668 snd_hda_add_new_path +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec-generic 0x37912cc8 snd_hda_gen_line_automute +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec-generic 0x40013a17 snd_hda_gen_init +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec-generic 0x453d9365 snd_hda_get_path_from_idx +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec-generic 0x50123a58 snd_hda_gen_check_power_status +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec-generic 0x541e40fe snd_hda_gen_mic_autoswitch +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec-generic 0x584165f8 snd_hda_gen_add_micmute_led_cdev +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec-generic 0x5aa9f721 snd_hda_gen_free +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec-generic 0x631f67fc snd_hda_gen_stream_pm +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec-generic 0x6aa8d8d7 snd_hda_gen_hp_automute +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec-generic 0x76dc6871 hda_main_out_badness +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec-generic 0x871a6e44 hda_extra_out_badness +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec-generic 0x88e78db8 snd_hda_gen_spec_init +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec-generic 0xd6f4eed9 snd_hda_get_path_idx +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec-generic 0xe496d9f0 snd_hda_activate_path +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec-generic 0xebfff4e2 snd_hda_gen_build_pcms +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec-generic 0xf70b1499 snd_hda_gen_add_kctl +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec-generic 0xff1f6442 snd_hda_gen_build_controls +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-adau-utils 0xae620be9 adau_calc_pll_cfg +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-adau1761 0x3cf00d20 adau1761_probe +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-adau1761 0xc558c33a adau1761_regmap_config +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-adau17x1 0x358cd705 adau17x1_add_routes +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-adau17x1 0x36e15f88 adau17x1_volatile_register +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-adau17x1 0x525601ce adau17x1_set_micbias_voltage +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-adau17x1 0x5b68d982 adau17x1_resume +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-adau17x1 0x6648d500 adau17x1_dai_ops +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-adau17x1 0x7b5f2454 adau17x1_remove +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-adau17x1 0xb371040b adau17x1_readable_register +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-adau17x1 0xb508b4f5 adau17x1_add_widgets +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-adau17x1 0xb5daa42e adau17x1_probe +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-adau17x1 0xd74401f5 adau17x1_precious_register +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-adau7118 0x4818b1d0 adau7118_probe +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-cs4271 0x7d05786f cs4271_dt_ids +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-cs4271 0xb299617c cs4271_probe +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-cs4271 0xd71f5aa4 cs4271_regmap_config +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-cs42l51 0x007e741c cs42l51_probe +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-cs42l51 0x34eb303c cs42l51_regmap +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-cs42l51 0x375ad98c cs42l51_of_match +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-cs42l51 0x5ab7e0f0 cs42l51_remove +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-cs42l51 0x88dab529 cs42l51_resume +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-cs42l51 0xd654624a cs42l51_suspend +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-cs42xx8 0x0245c4f2 cs42xx8_of_match +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-cs42xx8 0x3907e9d4 cs42xx8_regmap_config +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-cs42xx8 0x7cac7292 cs42888_data +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-cs42xx8 0xc8f32f1e cs42xx8_pm +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-cs42xx8 0xcd3794c9 cs42448_data +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-cs42xx8 0xdb50ee1d cs42xx8_probe +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-da7219 0x7393e279 da7219_aad_init +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-da7219 0x8b925531 da7219_aad_jack_det +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-da7219 0xa999ce71 da7219_aad_exit +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-es8328 0x905836da es8328_probe +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-es8328 0xcba0dbd5 es8328_regmap_config +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-hdmi-codec 0xdf2a3981 hdmi_codec_set_jack_detect +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-max98090 0x3876252d max98090_mic_detect +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-nau8824 0x752d9f01 nau8824_enable_jack_detect +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-pcm1789-codec 0xb280a874 pcm1789_common_exit +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-pcm1789-codec 0xd3645c3a pcm1789_regmap_config +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-pcm1789-codec 0xf7698ede pcm1789_common_init +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-pcm179x-codec 0x97b629b4 pcm179x_common_init +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-pcm179x-codec 0xd4d4f012 pcm179x_regmap_config +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-pcm186x 0x98f86a93 pcm186x_probe +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-pcm186x 0xafa6b6f6 pcm186x_regmap +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-pcm3168a 0x058622fd pcm3168a_regmap +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-pcm3168a 0x4d94893f pcm3168a_probe +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-pcm3168a 0x93dcb4e0 pcm3168a_remove +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-pcm3168a 0xf8e0a79f pcm3168a_pm_ops +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-pcm512x 0x48d25a3f pcm512x_pm_ops +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-pcm512x 0x79e8501c pcm512x_probe +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-pcm512x 0x83561147 pcm512x_remove +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-pcm512x 0xde061376 pcm512x_regmap +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-rl6231 0x5dc92cdf rl6231_pll_calc +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-rl6231 0x70617a04 rl6231_get_clk_info +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-rl6231 0x8d7fa148 rl6231_get_pre_div +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-rl6231 0xdba4502f rl6231_calc_dmic_clk +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-rt5514-spi 0x61ff58e3 rt5514_spi_burst_read +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-rt5514-spi 0xff87892f rt5514_spi_burst_write +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-rt5645 0x0eceb816 rt5645_set_jack_detect +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-rt5645 0xfb15cf9c rt5645_sel_asrc_clk_src +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-rt5663 0x88d9b4e2 rt5663_sel_asrc_clk_src +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-rt5682 0x07d89d88 rt5682_reset +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-rt5682 0x11d3a32a rt5682_volatile_register +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-rt5682 0x28730696 rt5682_supply_names +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-rt5682 0x353571f9 rt5682_headset_detect +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-rt5682 0x4e178b4b rt5682_sel_asrc_clk_src +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-rt5682 0x59d3d967 rt5682_jack_detect_handler +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-rt5682 0x6afcc75a rt5682_readable_register +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-rt5682 0x70deaf35 rt5682_soc_component_dev +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-rt5682 0x76d57943 rt5682_aif2_dai_ops +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-rt5682 0x9de2c240 rt5682_aif1_dai_ops +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-rt5682 0xace8bdbd rt5682_apply_patch_list +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-rt5682 0xb897de56 rt5682_reg +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-rt5682 0xc37f017e rt5682_calibrate +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-rt5682 0xf2d28ab7 rt5682_parse_dt +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-sigmadsp 0x76f9bd55 sigmadsp_reset +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-sigmadsp 0xa77d6ad1 sigmadsp_setup +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-sigmadsp 0xbd8a2346 sigmadsp_restrict_params +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-sigmadsp 0xbead8684 sigmadsp_attach +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-sigmadsp 0xdebf24f3 devm_sigmadsp_init +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-sigmadsp-i2c 0x6c7fd6c3 devm_sigmadsp_init_i2c +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-sigmadsp-regmap 0x1b35f22e devm_sigmadsp_init_regmap +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-ssm2602 0x5137b7fd ssm2602_regmap_config +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-ssm2602 0xcdaa6f77 ssm2602_probe +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-tlv320aic32x4 0x36c236c2 aic32x4_register_clocks +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-ts3a227e 0x42d27aac ts3a227e_enable_jack_detect +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-wm8804 0x13771867 wm8804_regmap_config +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-wm8804 0x8e65be5b wm8804_pm +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-wm8804 0xa6d9a668 wm8804_probe +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-wm8804 0xb915b1c3 wm8804_remove +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-wm8903 0x71f18a2f wm8903_mic_detect +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-wm8962 0x7969bf94 wm8962_mic_detect +EXPORT_SYMBOL_GPL sound/soc/fsl/imx-pcm-dma 0xee6b547b imx_pcm_dma_init +EXPORT_SYMBOL_GPL sound/soc/fsl/snd-soc-fsl-asrc 0x1047f494 fsl_asrc_component +EXPORT_SYMBOL_GPL sound/soc/fsl/snd-soc-fsl-easrc 0xff2675b8 fsl_easrc_get_dma_channel +EXPORT_SYMBOL_GPL sound/soc/fsl/snd-soc-imx-audmux 0x30693bb7 imx_audmux_v1_configure_port +EXPORT_SYMBOL_GPL sound/soc/fsl/snd-soc-imx-audmux 0x58631dab imx_audmux_v2_configure_port +EXPORT_SYMBOL_GPL sound/soc/generic/snd-soc-simple-card-utils 0x16a81a7f asoc_simple_canonicalize_cpu +EXPORT_SYMBOL_GPL sound/soc/generic/snd-soc-simple-card-utils 0x3a0682c7 asoc_simple_parse_convert +EXPORT_SYMBOL_GPL sound/soc/generic/snd-soc-simple-card-utils 0x3cc6af3f asoc_simple_parse_routing +EXPORT_SYMBOL_GPL sound/soc/generic/snd-soc-simple-card-utils 0x4d59110e asoc_simple_parse_pin_switches +EXPORT_SYMBOL_GPL sound/soc/generic/snd-soc-simple-card-utils 0x617eb91d asoc_simple_parse_widgets +EXPORT_SYMBOL_GPL sound/soc/generic/snd-soc-simple-card-utils 0x63857cce asoc_simple_hw_params +EXPORT_SYMBOL_GPL sound/soc/generic/snd-soc-simple-card-utils 0x696d7120 asoc_simple_init_jack +EXPORT_SYMBOL_GPL sound/soc/generic/snd-soc-simple-card-utils 0x6eea239a asoc_simple_parse_daifmt +EXPORT_SYMBOL_GPL sound/soc/generic/snd-soc-simple-card-utils 0x73368dc2 asoc_simple_clean_reference +EXPORT_SYMBOL_GPL sound/soc/generic/snd-soc-simple-card-utils 0x757a26e1 asoc_simple_parse_card_name +EXPORT_SYMBOL_GPL sound/soc/generic/snd-soc-simple-card-utils 0x8108e742 asoc_simple_be_hw_params_fixup +EXPORT_SYMBOL_GPL sound/soc/generic/snd-soc-simple-card-utils 0x949f9309 asoc_simple_set_dailink_name +EXPORT_SYMBOL_GPL sound/soc/generic/snd-soc-simple-card-utils 0xb594273e asoc_simple_startup +EXPORT_SYMBOL_GPL sound/soc/generic/snd-soc-simple-card-utils 0xc2c5ca27 asoc_simple_dai_init +EXPORT_SYMBOL_GPL sound/soc/generic/snd-soc-simple-card-utils 0xced141b3 asoc_simple_canonicalize_platform +EXPORT_SYMBOL_GPL sound/soc/generic/snd-soc-simple-card-utils 0xd04e4c37 asoc_simple_shutdown +EXPORT_SYMBOL_GPL sound/soc/generic/snd-soc-simple-card-utils 0xd68659e0 asoc_simple_parse_clk +EXPORT_SYMBOL_GPL sound/soc/generic/snd-soc-simple-card-utils 0xe6bfb29b asoc_simple_init_priv +EXPORT_SYMBOL_GPL sound/soc/generic/snd-soc-simple-card-utils 0xf3bafb75 asoc_simple_convert_fixup +EXPORT_SYMBOL_GPL sound/soc/mediatek/common/snd-soc-mtk-common 0x04ea41ee mtk_memif_set_addr +EXPORT_SYMBOL_GPL sound/soc/mediatek/common/snd-soc-mtk-common 0x08da80cb mtk_afe_fe_hw_free +EXPORT_SYMBOL_GPL sound/soc/mediatek/common/snd-soc-mtk-common 0x1c4d26e5 mtk_afe_fe_prepare +EXPORT_SYMBOL_GPL sound/soc/mediatek/common/snd-soc-mtk-common 0x225ac6a5 mtk_dynamic_irq_acquire +EXPORT_SYMBOL_GPL sound/soc/mediatek/common/snd-soc-mtk-common 0x2672cc29 mtk_memif_set_pbuf_size +EXPORT_SYMBOL_GPL sound/soc/mediatek/common/snd-soc-mtk-common 0x39a4d0b9 mtk_afe_suspend +EXPORT_SYMBOL_GPL sound/soc/mediatek/common/snd-soc-mtk-common 0x4ee05d28 mtk_afe_combine_sub_dai +EXPORT_SYMBOL_GPL sound/soc/mediatek/common/snd-soc-mtk-common 0x4f0cb968 mtk_afe_fe_startup +EXPORT_SYMBOL_GPL sound/soc/mediatek/common/snd-soc-mtk-common 0x5147f7a4 mtk_afe_pcm_pointer +EXPORT_SYMBOL_GPL sound/soc/mediatek/common/snd-soc-mtk-common 0x5d7f39e2 mtk_memif_set_enable +EXPORT_SYMBOL_GPL sound/soc/mediatek/common/snd-soc-mtk-common 0x82593815 mtk_afe_add_sub_dai_control +EXPORT_SYMBOL_GPL sound/soc/mediatek/common/snd-soc-mtk-common 0x9696cb01 mtk_afe_fe_ops +EXPORT_SYMBOL_GPL sound/soc/mediatek/common/snd-soc-mtk-common 0x99291cb2 mtk_afe_fe_trigger +EXPORT_SYMBOL_GPL sound/soc/mediatek/common/snd-soc-mtk-common 0x998a35a8 mtk_afe_pcm_platform +EXPORT_SYMBOL_GPL sound/soc/mediatek/common/snd-soc-mtk-common 0xabecba45 mtk_memif_set_rate_substream +EXPORT_SYMBOL_GPL sound/soc/mediatek/common/snd-soc-mtk-common 0xae1264c1 mtk_memif_set_format +EXPORT_SYMBOL_GPL sound/soc/mediatek/common/snd-soc-mtk-common 0xb0868925 mtk_memif_set_rate +EXPORT_SYMBOL_GPL sound/soc/mediatek/common/snd-soc-mtk-common 0xb62df87b mtk_afe_fe_hw_params +EXPORT_SYMBOL_GPL sound/soc/mediatek/common/snd-soc-mtk-common 0xc47f0040 mtk_afe_pcm_new +EXPORT_SYMBOL_GPL sound/soc/mediatek/common/snd-soc-mtk-common 0xc828ffa7 mtk_dynamic_irq_release +EXPORT_SYMBOL_GPL sound/soc/mediatek/common/snd-soc-mtk-common 0xce50801c mtk_afe_fe_shutdown +EXPORT_SYMBOL_GPL sound/soc/mediatek/common/snd-soc-mtk-common 0xd97c3c43 mtk_memif_set_channel +EXPORT_SYMBOL_GPL sound/soc/mediatek/common/snd-soc-mtk-common 0xdd87ef45 mtk_afe_resume +EXPORT_SYMBOL_GPL sound/soc/mediatek/common/snd-soc-mtk-common 0xe58be787 mtk_memif_set_disable +EXPORT_SYMBOL_GPL sound/soc/meson/snd-soc-meson-axg-fifo 0x2a64f44d axg_fifo_pcm_new +EXPORT_SYMBOL_GPL sound/soc/meson/snd-soc-meson-axg-fifo 0x33bc66e6 axg_fifo_pcm_open +EXPORT_SYMBOL_GPL sound/soc/meson/snd-soc-meson-axg-fifo 0x49befc23 axg_fifo_probe +EXPORT_SYMBOL_GPL sound/soc/meson/snd-soc-meson-axg-fifo 0x53d6aee3 axg_fifo_pcm_pointer +EXPORT_SYMBOL_GPL sound/soc/meson/snd-soc-meson-axg-fifo 0x540fac73 axg_fifo_pcm_close +EXPORT_SYMBOL_GPL sound/soc/meson/snd-soc-meson-axg-fifo 0x93c99fc0 axg_fifo_pcm_trigger +EXPORT_SYMBOL_GPL sound/soc/meson/snd-soc-meson-axg-fifo 0xac352611 axg_fifo_pcm_hw_free +EXPORT_SYMBOL_GPL sound/soc/meson/snd-soc-meson-axg-fifo 0xdd6cae3d g12a_fifo_pcm_hw_params +EXPORT_SYMBOL_GPL sound/soc/meson/snd-soc-meson-axg-fifo 0xf38fa500 axg_fifo_pcm_hw_params +EXPORT_SYMBOL_GPL sound/soc/meson/snd-soc-meson-axg-tdm-formatter 0x216268ee axg_tdm_stream_alloc +EXPORT_SYMBOL_GPL sound/soc/meson/snd-soc-meson-axg-tdm-formatter 0x7640ce3e axg_tdm_formatter_probe +EXPORT_SYMBOL_GPL sound/soc/meson/snd-soc-meson-axg-tdm-formatter 0x8e89f2ef axg_tdm_formatter_event +EXPORT_SYMBOL_GPL sound/soc/meson/snd-soc-meson-axg-tdm-formatter 0x9258a990 axg_tdm_stream_stop +EXPORT_SYMBOL_GPL sound/soc/meson/snd-soc-meson-axg-tdm-formatter 0xb0e9b620 axg_tdm_formatter_set_channel_masks +EXPORT_SYMBOL_GPL sound/soc/meson/snd-soc-meson-axg-tdm-formatter 0xd6361dff axg_tdm_stream_start +EXPORT_SYMBOL_GPL sound/soc/meson/snd-soc-meson-axg-tdm-formatter 0xf2948bf2 axg_tdm_stream_free +EXPORT_SYMBOL_GPL sound/soc/meson/snd-soc-meson-axg-tdm-interface 0x6169ed05 axg_tdm_set_tdm_slots +EXPORT_SYMBOL_GPL sound/soc/meson/snd-soc-meson-card-utils 0x4dc2f89a meson_card_parse_daifmt +EXPORT_SYMBOL_GPL sound/soc/meson/snd-soc-meson-card-utils 0x54861b62 meson_card_i2s_set_sysclk +EXPORT_SYMBOL_GPL sound/soc/meson/snd-soc-meson-card-utils 0x58d97604 meson_card_set_be_link +EXPORT_SYMBOL_GPL sound/soc/meson/snd-soc-meson-card-utils 0x7449bba2 meson_card_set_fe_link +EXPORT_SYMBOL_GPL sound/soc/meson/snd-soc-meson-card-utils 0x81e85f1d meson_card_remove +EXPORT_SYMBOL_GPL sound/soc/meson/snd-soc-meson-card-utils 0xa8b58793 meson_card_reallocate_links +EXPORT_SYMBOL_GPL sound/soc/meson/snd-soc-meson-card-utils 0xc6cbb9f5 meson_card_probe +EXPORT_SYMBOL_GPL sound/soc/meson/snd-soc-meson-card-utils 0xe6a836b1 meson_card_parse_dai +EXPORT_SYMBOL_GPL sound/soc/meson/snd-soc-meson-codec-glue 0x3f044798 meson_codec_glue_output_startup +EXPORT_SYMBOL_GPL sound/soc/meson/snd-soc-meson-codec-glue 0x84f0e788 meson_codec_glue_input_set_fmt +EXPORT_SYMBOL_GPL sound/soc/meson/snd-soc-meson-codec-glue 0x91db8f69 meson_codec_glue_input_dai_remove +EXPORT_SYMBOL_GPL sound/soc/meson/snd-soc-meson-codec-glue 0xdb39fb83 meson_codec_glue_input_dai_probe +EXPORT_SYMBOL_GPL sound/soc/meson/snd-soc-meson-codec-glue 0xe06fd207 meson_codec_glue_input_get_data +EXPORT_SYMBOL_GPL sound/soc/meson/snd-soc-meson-codec-glue 0xfdfe166f meson_codec_glue_input_hw_params +EXPORT_SYMBOL_GPL sound/soc/qcom/qdsp6/q6adm 0x28421460 q6adm_get_copp_id +EXPORT_SYMBOL_GPL sound/soc/qcom/qdsp6/q6adm 0x6e5f5ff5 q6adm_matrix_map +EXPORT_SYMBOL_GPL sound/soc/qcom/qdsp6/q6adm 0xcc0bcd11 q6adm_close +EXPORT_SYMBOL_GPL sound/soc/qcom/qdsp6/q6adm 0xed2bb6b3 q6adm_open +EXPORT_SYMBOL_GPL sound/soc/qcom/qdsp6/q6afe 0x328187fe q6afe_port_get_from_id +EXPORT_SYMBOL_GPL sound/soc/qcom/qdsp6/q6afe 0x369b6eeb q6afe_port_put +EXPORT_SYMBOL_GPL sound/soc/qcom/qdsp6/q6afe 0x3997e13a q6afe_is_rx_port +EXPORT_SYMBOL_GPL sound/soc/qcom/qdsp6/q6afe 0x3b16d6e7 q6afe_port_stop +EXPORT_SYMBOL_GPL sound/soc/qcom/qdsp6/q6afe 0x498d993b q6afe_get_port_id +EXPORT_SYMBOL_GPL sound/soc/qcom/qdsp6/q6afe 0x5332304f q6afe_slim_port_prepare +EXPORT_SYMBOL_GPL sound/soc/qcom/qdsp6/q6afe 0x7df60063 q6afe_port_set_sysclk +EXPORT_SYMBOL_GPL sound/soc/qcom/qdsp6/q6afe 0xae809786 q6afe_hdmi_port_prepare +EXPORT_SYMBOL_GPL sound/soc/qcom/qdsp6/q6afe 0xd4523c59 q6afe_i2s_port_prepare +EXPORT_SYMBOL_GPL sound/soc/qcom/qdsp6/q6afe 0xe45246a8 q6afe_port_start +EXPORT_SYMBOL_GPL sound/soc/qcom/qdsp6/q6afe 0xfaf22370 q6afe_tdm_port_prepare +EXPORT_SYMBOL_GPL sound/soc/qcom/qdsp6/q6asm 0x01d71b3d q6asm_stream_media_format_block_wma_v9 +EXPORT_SYMBOL_GPL sound/soc/qcom/qdsp6/q6asm 0x151ae9d4 q6asm_cmd +EXPORT_SYMBOL_GPL sound/soc/qcom/qdsp6/q6asm 0x40299233 q6asm_run +EXPORT_SYMBOL_GPL sound/soc/qcom/qdsp6/q6asm 0x5382edf1 q6asm_open_read +EXPORT_SYMBOL_GPL sound/soc/qcom/qdsp6/q6asm 0x689e402d q6asm_stream_media_format_block_alac +EXPORT_SYMBOL_GPL sound/soc/qcom/qdsp6/q6asm 0x68db31e2 q6asm_unmap_memory_regions +EXPORT_SYMBOL_GPL sound/soc/qcom/qdsp6/q6asm 0x6d3b4aa4 q6asm_audio_client_alloc +EXPORT_SYMBOL_GPL sound/soc/qcom/qdsp6/q6asm 0x6eb89e95 q6asm_media_format_block_multi_ch_pcm +EXPORT_SYMBOL_GPL sound/soc/qcom/qdsp6/q6asm 0x720ce413 q6asm_stream_media_format_block_flac +EXPORT_SYMBOL_GPL sound/soc/qcom/qdsp6/q6asm 0x7353d9dd q6asm_cmd_nowait +EXPORT_SYMBOL_GPL sound/soc/qcom/qdsp6/q6asm 0x857330c9 q6asm_write_async +EXPORT_SYMBOL_GPL sound/soc/qcom/qdsp6/q6asm 0xa06e9828 q6asm_stream_media_format_block_ape +EXPORT_SYMBOL_GPL sound/soc/qcom/qdsp6/q6asm 0xc5a116a4 q6asm_get_session_id +EXPORT_SYMBOL_GPL sound/soc/qcom/qdsp6/q6asm 0xcc4952e4 q6asm_audio_client_free +EXPORT_SYMBOL_GPL sound/soc/qcom/qdsp6/q6asm 0xd599e50f q6asm_enc_cfg_blk_pcm_format_support +EXPORT_SYMBOL_GPL sound/soc/qcom/qdsp6/q6asm 0xdbedfcd9 q6asm_run_nowait +EXPORT_SYMBOL_GPL sound/soc/qcom/qdsp6/q6asm 0xe060c0a1 q6asm_read +EXPORT_SYMBOL_GPL sound/soc/qcom/qdsp6/q6asm 0xe1531577 q6asm_open_write +EXPORT_SYMBOL_GPL sound/soc/qcom/qdsp6/q6asm 0xea75a5dd q6asm_map_memory_regions +EXPORT_SYMBOL_GPL sound/soc/qcom/qdsp6/q6asm 0xf40aaabe q6asm_stream_media_format_block_wma_v10 +EXPORT_SYMBOL_GPL sound/soc/qcom/qdsp6/q6core 0x7e52e977 q6core_is_adsp_ready +EXPORT_SYMBOL_GPL sound/soc/qcom/qdsp6/q6core 0x9b02ea0d q6core_get_svc_api_info +EXPORT_SYMBOL_GPL sound/soc/qcom/qdsp6/q6dsp-common 0x17142e58 q6dsp_map_channels +EXPORT_SYMBOL_GPL sound/soc/qcom/qdsp6/q6routing 0x5b75f756 q6routing_stream_open +EXPORT_SYMBOL_GPL sound/soc/qcom/qdsp6/q6routing 0xa7a64259 q6routing_stream_close +EXPORT_SYMBOL_GPL sound/soc/qcom/snd-soc-lpass-cpu 0x028888ee asoc_qcom_lpass_cpu_platform_probe +EXPORT_SYMBOL_GPL sound/soc/qcom/snd-soc-lpass-cpu 0x0b49d5c0 asoc_qcom_lpass_cpu_platform_remove +EXPORT_SYMBOL_GPL sound/soc/qcom/snd-soc-lpass-cpu 0x0f557b88 asoc_qcom_lpass_cpu_dai_ops +EXPORT_SYMBOL_GPL sound/soc/qcom/snd-soc-lpass-cpu 0x3394cd1e asoc_qcom_lpass_cpu_dai_probe +EXPORT_SYMBOL_GPL sound/soc/qcom/snd-soc-lpass-platform 0x14eb6ebd asoc_qcom_lpass_platform_register +EXPORT_SYMBOL_GPL sound/soc/rockchip/snd-soc-rockchip-pcm 0x0afa552b rockchip_pcm_platform_register +EXPORT_SYMBOL_GPL sound/soc/snd-soc-acpi 0x6c5d2bcd snd_soc_acpi_find_package_from_hid +EXPORT_SYMBOL_GPL sound/soc/snd-soc-acpi 0x8795d901 snd_soc_acpi_find_machine +EXPORT_SYMBOL_GPL sound/soc/snd-soc-acpi 0xa2585abc snd_soc_acpi_codec_list +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x008ce249 snd_soc_dapm_info_pin_switch +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x00b8d17a snd_soc_pm_ops +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x01573296 devm_snd_soc_register_card +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x017e31fa snd_soc_component_exit_regmap +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x01f30a5b snd_soc_lookup_component +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x01ff5119 snd_soc_bytes_tlv_callback +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x02587199 snd_soc_dapm_get_enum_double +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x03040ebc snd_soc_get_strobe +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x039b2524 devm_snd_soc_register_component +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x04e3464b snd_soc_new_compress +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x064144f0 snd_soc_component_enable_pin_unlocked +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x07da5044 snd_soc_register_component +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x0960b034 snd_soc_component_disable_pin_unlocked +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x0b64da3c snd_soc_dapm_add_routes +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x0d928a95 snd_soc_component_read32 +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x0dbd940f snd_soc_dpcm_get_substream +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x0e166092 snd_soc_set_ac97_ops +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x0eab22e7 snd_soc_add_component_controls +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x0fcf42b5 snd_soc_dpcm_can_be_params +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x12ef5533 snd_soc_dapm_disable_pin +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x16d533e8 snd_soc_dapm_new_widgets +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x17cdaf5b snd_soc_component_update_bits +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x189f5457 snd_soc_dai_set_sysclk +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x1a3195c5 snd_soc_dpcm_fe_can_update +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x1b8d099f dapm_kcontrol_get_value +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x1e28031b snd_soc_dai_set_fmt +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x1fc752d3 snd_soc_dai_compr_get_params +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x21c53be4 snd_soc_component_force_enable_pin +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x21eac496 snd_soc_component_disable_pin +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x21ec5159 snd_soc_dapm_put_enum_double +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x22bfc2b7 snd_soc_dapm_new_controls +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x22f306fc snd_soc_dapm_put_pin_switch +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x2384ea76 snd_soc_free_ac97_component +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x23b53df0 snd_dmaengine_pcm_prepare_slave_config +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x24ff2c38 snd_soc_get_dai_name +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x2541a979 snd_soc_calc_frame_size +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x25af229a snd_soc_remove_pcm_runtime +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x25de7db6 snd_soc_of_put_dai_link_codecs +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x26465121 snd_soc_dai_compr_set_params +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x26c7471d snd_soc_info_enum_double +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x2785eba3 snd_soc_dapm_free +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x2e879b30 snd_soc_card_remove_dai_link +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x2ea67313 snd_soc_dai_compr_pointer +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x3661abf8 snd_soc_jack_report +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x3989a7c7 snd_soc_unregister_component +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x3aef1c75 snd_soc_info_xr_sx +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x3b4e1606 snd_soc_set_dmi_name +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x3d8f9f7e snd_soc_dai_compr_set_metadata +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x3e6d87e7 snd_soc_add_pcm_runtime +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x3f554cc0 snd_soc_component_write +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x3fd5768c snd_soc_dai_set_tristate +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x41383fb7 snd_soc_of_parse_audio_simple_widgets +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x427e43c8 snd_soc_find_dai +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x4490b94f snd_soc_of_parse_node_prefix +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x45697503 snd_soc_of_parse_daifmt +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x46b2deff snd_soc_get_xr_sx +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x46e74f61 snd_soc_card_add_dai_link +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x46fb4920 snd_soc_unregister_component_by_driver +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x4767b39e snd_soc_dai_set_pll +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x4a96e632 snd_soc_dapm_enable_pin_unlocked +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x4c3ce5be null_dailink_component +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x4ccc049b snd_soc_add_dai_controls +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x4e582ae2 snd_soc_tplg_component_load +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x4fb4790b snd_soc_dapm_get_pin_switch +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x521b1299 snd_soc_dai_active +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x52a473b3 snd_soc_jack_add_zones +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x53889820 snd_soc_get_pcm_runtime +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x57304ade snd_soc_dpcm_runtime_update +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x5a215333 snd_soc_limit_volume +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x5ac40731 snd_soc_dapm_update_dai +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x5b4280fb snd_soc_unregister_dai +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x5d5f013f snd_soc_bytes_get +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x63c2e436 snd_soc_runtime_set_dai_fmt +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x6433c547 snd_soc_of_get_slot_mask +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x65837d26 snd_soc_suspend +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x65a7497f snd_soc_dpcm_be_can_update +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x66e7c4f2 snd_soc_component_read +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x6721bc7e snd_soc_dai_compr_startup +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x6824d3f0 snd_soc_tplg_widget_bind_event +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x69954bb4 snd_soc_link_compr_set_params +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x6a2afaf6 snd_soc_put_xr_sx +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x6a995ebd snd_soc_dai_action +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x6bc3ad65 snd_soc_dai_set_bclk_ratio +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x6dee8da7 snd_soc_lookup_component_nolocked +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x705fba35 snd_soc_dapm_mixer_update_power +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x731f02de snd_soc_rtdcom_lookup +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x737597a2 snd_soc_set_ac97_ops_of_reset +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x73d39c43 snd_soc_dapm_new_control +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x7421ccce snd_soc_dai_compr_trigger +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x74b53aa8 snd_soc_new_ac97_component +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x74fbe566 snd_soc_of_parse_audio_routing +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x75479358 snd_soc_info_volsw_range +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x75fb9c9c snd_soc_dapm_force_enable_pin_unlocked +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x767943af snd_soc_dapm_init +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x76883b9a snd_soc_tplg_widget_remove_all +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x76bb9c86 snd_soc_add_card_controls +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x7738471c dpcm_be_dai_trigger +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x7af42e3c snd_soc_put_strobe +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x7be8e2ba snd_soc_dapm_kcontrol_widget +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x7c5e4322 snd_soc_dapm_force_enable_pin +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x7c841e0b snd_soc_unregister_card +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x7e1de256 snd_soc_dai_set_tdm_slot +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x7e606130 snd_soc_calc_bclk +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x7f9a275d snd_soc_tplg_widget_remove +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x80dd93ca snd_soc_bytes_put +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x81b11d9b dapm_clock_event +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x843c03b1 snd_soc_dapm_enable_pin +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x84e3364c snd_soc_dai_set_channel_map +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x8697cf23 snd_soc_dapm_get_volsw +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x8766902e snd_soc_register_card +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x8a450c9f snd_soc_jack_add_gpios +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x8d6d7038 snd_soc_dai_get_channel_map +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x9056ecbe snd_soc_jack_notifier_unregister +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x90e91d74 snd_soc_dapm_kcontrol_dapm +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x91565b6e snd_soc_get_volsw_sx +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x91b53a75 devm_snd_soc_register_dai +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x91bb9a1d snd_soc_put_volsw_sx +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x92d87dcb snd_soc_dapm_force_bias_level +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x932748c4 dapm_mark_endpoints_dirty +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x93d84ad4 soc_ac97_ops +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x93e2d33a snd_soc_cnew +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x95377e1f snd_soc_dapm_sync_unlocked +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x9608d85f snd_soc_component_nc_pin_unlocked +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x972c4c94 snd_soc_get_dai_id +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x9b2b91fc snd_soc_bytes_info +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x9c826c38 snd_soc_link_compr_shutdown +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x9d789b52 snd_soc_component_set_sysclk +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x9e02c182 snd_soc_component_update_bits_async +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x9fa549b4 snd_soc_jack_add_pins +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xa141dace snd_soc_dapm_get_pin_status +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xa1a60001 snd_soc_jack_add_gpiods +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xa39723c1 dapm_regulator_event +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xa3be92cf snd_soc_of_parse_card_name +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xa56bbc15 snd_soc_of_get_dai_link_codecs +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xa57a620c snd_soc_dapm_mux_update_power +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xa83f93ee snd_soc_dai_compr_shutdown +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xaa1edc01 snd_soc_put_volsw_range +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xacfbe9ca snd_soc_put_enum_double +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xb0e165d7 snd_soc_dapm_weak_routes +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xb14ae158 snd_soc_find_dai_with_mutex +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xb4ca4307 snd_soc_bytes_info_ext +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xb4f6122c snd_soc_tplg_component_remove +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xb68f328c snd_soc_runtime_calc_hw +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xb7af171f snd_soc_component_nc_pin +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xb813191a snd_soc_dapm_stream_stop +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xb950284c snd_soc_of_get_dai_name +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xbad1815a snd_soc_dai_digital_mute +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xbe447725 snd_soc_dapm_sync +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xbef0f096 snd_soc_component_set_jack +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xc068d83c snd_soc_dapm_disable_pin_unlocked +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xc39104cb snd_soc_dai_compr_get_metadata +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xc3b7bb80 snd_soc_close_delayed_work +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xc437ec91 snd_soc_runtime_action +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xc8269f94 snd_soc_params_to_frame_size +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xc88b14f4 snd_soc_component_force_enable_pin_unlocked +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xc915e377 snd_soc_card_jack_new +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xc94d2fea snd_soc_component_get_pin_status +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xca056a95 snd_soc_component_enable_pin +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xcb20fefd snd_soc_dapm_del_routes +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xcc4024bc snd_soc_component_test_bits +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xcd2638ec snd_soc_dapm_nc_pin_unlocked +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xd15004ff snd_soc_link_compr_startup +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xd233df7c snd_soc_get_volsw +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xd2503bc1 snd_soc_of_parse_tdm_slot +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xd33e9001 snd_soc_jack_notifier_register +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xd51b6b3b snd_soc_resume +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xdc09bf4c snd_soc_dpcm_can_be_free_stop +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xdf6e9c62 snd_soc_dapm_put_volsw +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xdfabe47c dapm_pinctrl_event +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xdfd51bfc snd_soc_info_volsw +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xe0622f71 snd_dmaengine_pcm_unregister +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xe2ab4a78 snd_soc_dapm_ignore_suspend +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xe2f39c54 snd_soc_card_get_kcontrol +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xe5b6f079 snd_dmaengine_pcm_register +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xe65141eb snd_soc_component_init_regmap +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xe98a4678 snd_soc_dai_link_set_capabilities +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xe9ea9ad9 snd_soc_debugfs_root +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xeaf5010b snd_soc_dai_compr_ack +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xeb4275ca snd_soc_jack_free_gpios +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xeb711ae7 snd_soc_params_to_bclk +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xeb7acee1 snd_soc_component_async_complete +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xec4a5b8d snd_soc_info_volsw_sx +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xec60ab3a snd_soc_set_runtime_hwparams +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xec6e8d6e snd_soc_add_component +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xed45aedb snd_soc_poweroff +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xf0f372c2 snd_soc_get_volsw_range +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xf3b2f42a snd_soc_jack_get_type +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xf6164709 snd_soc_get_enum_double +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xf75906e4 devm_snd_dmaengine_pcm_register +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xf8d5eb74 snd_soc_component_set_pll +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xfdb69d09 snd_soc_dai_set_clkdiv +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xfeabfb75 snd_soc_put_volsw +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xfeef0529 snd_soc_dapm_nc_pin +EXPORT_SYMBOL_GPL sound/soc/sof/snd-sof 0x163c5ebe snd_sof_debugfs_io_item +EXPORT_SYMBOL_GPL sound/soc/sof/snd-sof 0x45f6d421 snd_sof_dbg_init +EXPORT_SYMBOL_GPL sound/soc/sof/snd-sof 0x59391571 snd_sof_debugfs_buf_item +EXPORT_SYMBOL_GPL sound/soc/sof/snd-sof 0x895b06f2 snd_sof_free_debug +EXPORT_SYMBOL_GPL sound/soc/sprd/sprd-mcdt 0x2c64d423 sprd_mcdt_request_chan +EXPORT_SYMBOL_GPL sound/soc/sprd/sprd-mcdt 0x5061832c sprd_mcdt_chan_int_disable +EXPORT_SYMBOL_GPL sound/soc/sprd/sprd-mcdt 0x609193c3 sprd_mcdt_chan_write +EXPORT_SYMBOL_GPL sound/soc/sprd/sprd-mcdt 0x68b4b311 sprd_mcdt_chan_dma_enable +EXPORT_SYMBOL_GPL sound/soc/sprd/sprd-mcdt 0x6c283cec sprd_mcdt_chan_int_enable +EXPORT_SYMBOL_GPL sound/soc/sprd/sprd-mcdt 0xa5fdddd3 sprd_mcdt_chan_read +EXPORT_SYMBOL_GPL sound/soc/sprd/sprd-mcdt 0xb67dbf49 sprd_mcdt_chan_dma_disable +EXPORT_SYMBOL_GPL sound/soc/sprd/sprd-mcdt 0xdf547b54 sprd_mcdt_free_chan +EXPORT_SYMBOL_GPL sound/soc/sunxi/sun8i-adda-pr-regmap 0x37a3a5c2 sun8i_adda_pr_regmap_init +EXPORT_SYMBOL_GPL sound/soc/ti/snd-soc-ti-edma 0x6c590f7a edma_pcm_platform_register +EXPORT_SYMBOL_GPL sound/soc/ti/snd-soc-ti-sdma 0x6b68ab7e sdma_pcm_platform_register +EXPORT_SYMBOL_GPL sound/soc/ti/snd-soc-ti-udma 0x515f9309 udma_pcm_platform_register +EXPORT_SYMBOL_GPL sound/usb/line6/snd-usb-line6 0x161098b1 line6_pcm_acquire +EXPORT_SYMBOL_GPL sound/usb/line6/snd-usb-line6 0x1d5ba804 line6_alloc_sysex_buffer +EXPORT_SYMBOL_GPL sound/usb/line6/snd-usb-line6 0x1d5c2288 line6_read_data +EXPORT_SYMBOL_GPL sound/usb/line6/snd-usb-line6 0x202a1b1b line6_midi_id +EXPORT_SYMBOL_GPL sound/usb/line6/snd-usb-line6 0x2f16ded2 line6_disconnect +EXPORT_SYMBOL_GPL sound/usb/line6/snd-usb-line6 0x32bb5af6 line6_read_serial_number +EXPORT_SYMBOL_GPL sound/usb/line6/snd-usb-line6 0x3ba0e8db line6_init_pcm +EXPORT_SYMBOL_GPL sound/usb/line6/snd-usb-line6 0x5364a050 line6_write_data +EXPORT_SYMBOL_GPL sound/usb/line6/snd-usb-line6 0x6742685e line6_resume +EXPORT_SYMBOL_GPL sound/usb/line6/snd-usb-line6 0x7efeae24 line6_suspend +EXPORT_SYMBOL_GPL sound/usb/line6/snd-usb-line6 0x8024fbc1 line6_pcm_release +EXPORT_SYMBOL_GPL sound/usb/line6/snd-usb-line6 0x90da5b55 line6_send_sysex_message +EXPORT_SYMBOL_GPL sound/usb/line6/snd-usb-line6 0x917eebe2 line6_version_request_async +EXPORT_SYMBOL_GPL sound/usb/line6/snd-usb-line6 0xc96ea957 line6_init_midi +EXPORT_SYMBOL_GPL sound/usb/line6/snd-usb-line6 0xe6003a4a line6_probe +EXPORT_SYMBOL_GPL sound/usb/line6/snd-usb-line6 0xf08a43c3 line6_send_raw_message_async +EXPORT_SYMBOL_GPL vmlinux 0x00045329 of_clk_get_parent_name +EXPORT_SYMBOL_GPL vmlinux 0x00102d32 devm_free_percpu +EXPORT_SYMBOL_GPL vmlinux 0x0032049d cs47l24_patch +EXPORT_SYMBOL_GPL vmlinux 0x003855f6 extcon_unregister_notifier_all +EXPORT_SYMBOL_GPL vmlinux 0x00513f58 get_timespec64 +EXPORT_SYMBOL_GPL vmlinux 0x0055b614 ata_link_abort +EXPORT_SYMBOL_GPL vmlinux 0x00565f18 pernet_ops_rwsem +EXPORT_SYMBOL_GPL vmlinux 0x00640999 dax_layout_busy_page +EXPORT_SYMBOL_GPL vmlinux 0x0077a9f9 find_pid_ns +EXPORT_SYMBOL_GPL vmlinux 0x008126ca crypto_register_shashes +EXPORT_SYMBOL_GPL vmlinux 0x008d0aba input_ff_upload +EXPORT_SYMBOL_GPL vmlinux 0x00b5a54f iomap_is_partially_uptodate +EXPORT_SYMBOL_GPL vmlinux 0x00c3337f qcom_smem_state_get +EXPORT_SYMBOL_GPL vmlinux 0x00c7b08c efivar_entry_remove +EXPORT_SYMBOL_GPL vmlinux 0x00e3ecbe acpi_device_get_match_data +EXPORT_SYMBOL_GPL vmlinux 0x00e63841 crypto_grab_aead +EXPORT_SYMBOL_GPL vmlinux 0x00e80265 dpcon_enable +EXPORT_SYMBOL_GPL vmlinux 0x01110edf thermal_cooling_device_unregister +EXPORT_SYMBOL_GPL vmlinux 0x012e730e apei_exec_noop +EXPORT_SYMBOL_GPL vmlinux 0x013531c8 spi_statistics_add_transfer_stats +EXPORT_SYMBOL_GPL vmlinux 0x015fd5f0 __tracepoint_pelt_irq_tp +EXPORT_SYMBOL_GPL vmlinux 0x0167d405 dummy_con +EXPORT_SYMBOL_GPL vmlinux 0x017f8242 cgroup_path_ns +EXPORT_SYMBOL_GPL vmlinux 0x018191e7 security_file_ioctl +EXPORT_SYMBOL_GPL vmlinux 0x0183f196 wm8997_aod +EXPORT_SYMBOL_GPL vmlinux 0x01866a57 ezx_pcap_set_bits +EXPORT_SYMBOL_GPL vmlinux 0x0190aa08 ahci_dev_classify +EXPORT_SYMBOL_GPL vmlinux 0x01a0cb78 property_entries_free +EXPORT_SYMBOL_GPL vmlinux 0x01c6cb0c cpu_cluster_pm_enter +EXPORT_SYMBOL_GPL vmlinux 0x01ceec04 blk_mq_sched_mark_restart_hctx +EXPORT_SYMBOL_GPL vmlinux 0x01e1a8de kgdb_breakpoint +EXPORT_SYMBOL_GPL vmlinux 0x01f127f7 of_get_fb_videomode +EXPORT_SYMBOL_GPL vmlinux 0x01fa79bc ip6_sk_update_pmtu +EXPORT_SYMBOL_GPL vmlinux 0x021504c7 to_nd_desc +EXPORT_SYMBOL_GPL vmlinux 0x022264e4 netdev_walk_all_upper_dev_rcu +EXPORT_SYMBOL_GPL vmlinux 0x022fc1b0 meson_clk_dualdiv_ro_ops +EXPORT_SYMBOL_GPL vmlinux 0x0233c79e serial8250_do_shutdown +EXPORT_SYMBOL_GPL vmlinux 0x02394899 play_idle_precise +EXPORT_SYMBOL_GPL vmlinux 0x0240fa95 blk_queue_can_use_dma_map_merging +EXPORT_SYMBOL_GPL vmlinux 0x024d13dd request_free_mem_region +EXPORT_SYMBOL_GPL vmlinux 0x024eed41 tty_ldisc_ref_wait +EXPORT_SYMBOL_GPL vmlinux 0x0258c8b6 __page_mapcount +EXPORT_SYMBOL_GPL vmlinux 0x025948cb ahci_fill_cmd_slot +EXPORT_SYMBOL_GPL vmlinux 0x027a2410 pci_set_host_bridge_release +EXPORT_SYMBOL_GPL vmlinux 0x027cad27 metadata_dst_alloc_percpu +EXPORT_SYMBOL_GPL vmlinux 0x0280a294 pwm_put +EXPORT_SYMBOL_GPL vmlinux 0x028da852 i2c_new_client_device +EXPORT_SYMBOL_GPL vmlinux 0x029dd9d5 gnttab_batch_copy +EXPORT_SYMBOL_GPL vmlinux 0x02c2c6bb scsi_schedule_eh +EXPORT_SYMBOL_GPL vmlinux 0x02c6fab7 rio_inb_pwrite_handler +EXPORT_SYMBOL_GPL vmlinux 0x02e06a8a tpm2_get_tpm_pt +EXPORT_SYMBOL_GPL vmlinux 0x02e8080f irq_chip_enable_parent +EXPORT_SYMBOL_GPL vmlinux 0x02eeedb9 fwnode_find_reference +EXPORT_SYMBOL_GPL vmlinux 0x0312b3b0 reset_controller_add_lookup +EXPORT_SYMBOL_GPL vmlinux 0x03187add bpf_prog_free +EXPORT_SYMBOL_GPL vmlinux 0x0321cdbf of_alias_get_highest_id +EXPORT_SYMBOL_GPL vmlinux 0x03225aa4 __devm_regmap_init_i2c +EXPORT_SYMBOL_GPL vmlinux 0x032c3f8b fsverity_file_open +EXPORT_SYMBOL_GPL vmlinux 0x03344e53 ptp_classify_raw +EXPORT_SYMBOL_GPL vmlinux 0x0336dfd6 fat_attach +EXPORT_SYMBOL_GPL vmlinux 0x03372453 force_irqthreads +EXPORT_SYMBOL_GPL vmlinux 0x033832c7 usb_amd_hang_symptom_quirk +EXPORT_SYMBOL_GPL vmlinux 0x0343bdf1 __i2c_board_list +EXPORT_SYMBOL_GPL vmlinux 0x034a7f4f qcom_smem_state_register +EXPORT_SYMBOL_GPL vmlinux 0x03512c2c splice_to_pipe +EXPORT_SYMBOL_GPL vmlinux 0x036b345b device_find_child +EXPORT_SYMBOL_GPL vmlinux 0x036de383 perf_event_cgrp_subsys_enabled_key +EXPORT_SYMBOL_GPL vmlinux 0x03819a9f usb_phy_set_charger_state +EXPORT_SYMBOL_GPL vmlinux 0x03952887 ktime_add_safe +EXPORT_SYMBOL_GPL vmlinux 0x03a85917 ncsi_vlan_rx_add_vid +EXPORT_SYMBOL_GPL vmlinux 0x03ac0208 wm8350_reg_unlock +EXPORT_SYMBOL_GPL vmlinux 0x03ae66ea input_ff_flush +EXPORT_SYMBOL_GPL vmlinux 0x03c12dfe cancel_work_sync +EXPORT_SYMBOL_GPL vmlinux 0x03c6f202 usb_get_status +EXPORT_SYMBOL_GPL vmlinux 0x03ce7234 sched_smt_present +EXPORT_SYMBOL_GPL vmlinux 0x03df1a01 pstore_unregister +EXPORT_SYMBOL_GPL vmlinux 0x03e37ff7 regulator_get_voltage_sel_pickable_regmap +EXPORT_SYMBOL_GPL vmlinux 0x03e84e79 task_user_regset_view +EXPORT_SYMBOL_GPL vmlinux 0x03f4b6bb mmc_pwrseq_register +EXPORT_SYMBOL_GPL vmlinux 0x03f84404 usb_of_get_device_node +EXPORT_SYMBOL_GPL vmlinux 0x0402cbbf preempt_notifier_inc +EXPORT_SYMBOL_GPL vmlinux 0x040428fe efivars_kobject +EXPORT_SYMBOL_GPL vmlinux 0x0414e525 pm_clk_add_notifier +EXPORT_SYMBOL_GPL vmlinux 0x0419e175 vbin_printf +EXPORT_SYMBOL_GPL vmlinux 0x044e779a __devm_regmap_init_spi +EXPORT_SYMBOL_GPL vmlinux 0x0465a073 regmap_reg_in_ranges +EXPORT_SYMBOL_GPL vmlinux 0x046f359e of_overlay_notifier_register +EXPORT_SYMBOL_GPL vmlinux 0x0477769a kobject_init_and_add +EXPORT_SYMBOL_GPL vmlinux 0x048901c0 genphy_c45_an_disable_aneg +EXPORT_SYMBOL_GPL vmlinux 0x048b5f8d twl4030_audio_get_mclk +EXPORT_SYMBOL_GPL vmlinux 0x04a07c71 gpiod_get_direction +EXPORT_SYMBOL_GPL vmlinux 0x04a9126b page_cache_readahead_unbounded +EXPORT_SYMBOL_GPL vmlinux 0x04b2ed65 put_pid_ns +EXPORT_SYMBOL_GPL vmlinux 0x04bee96e blkcg_policy_register +EXPORT_SYMBOL_GPL vmlinux 0x04bf0092 io_cgrp_subsys_enabled_key +EXPORT_SYMBOL_GPL vmlinux 0x04c4f603 mpi_get_buffer +EXPORT_SYMBOL_GPL vmlinux 0x04c912f4 irq_find_mapping +EXPORT_SYMBOL_GPL vmlinux 0x04c9385a iomap_page_mkwrite +EXPORT_SYMBOL_GPL vmlinux 0x04dd59fa tty_release_struct +EXPORT_SYMBOL_GPL vmlinux 0x04df8fbc lzo1x_decompress_safe +EXPORT_SYMBOL_GPL vmlinux 0x050781a1 tpm_get_timeouts +EXPORT_SYMBOL_GPL vmlinux 0x050fc93f kthread_mod_delayed_work +EXPORT_SYMBOL_GPL vmlinux 0x05114b60 regulator_is_supported_voltage +EXPORT_SYMBOL_GPL vmlinux 0x052c9aed ktime_get_real_fast_ns +EXPORT_SYMBOL_GPL vmlinux 0x052d9456 ata_platform_remove_one +EXPORT_SYMBOL_GPL vmlinux 0x053512af blkdev_read_iter +EXPORT_SYMBOL_GPL vmlinux 0x054cbaf6 driver_find_device +EXPORT_SYMBOL_GPL vmlinux 0x054e550b kernel_halt +EXPORT_SYMBOL_GPL vmlinux 0x05610897 of_changeset_destroy +EXPORT_SYMBOL_GPL vmlinux 0x057ce998 irq_chip_set_affinity_parent +EXPORT_SYMBOL_GPL vmlinux 0x057f9813 lwtunnel_xmit +EXPORT_SYMBOL_GPL vmlinux 0x057faa88 usb_sg_cancel +EXPORT_SYMBOL_GPL vmlinux 0x058b582a vt_get_leds +EXPORT_SYMBOL_GPL vmlinux 0x058c671d vfs_setxattr +EXPORT_SYMBOL_GPL vmlinux 0x058f9366 apei_exec_collect_resources +EXPORT_SYMBOL_GPL vmlinux 0x059eca52 pci_ats_supported +EXPORT_SYMBOL_GPL vmlinux 0x05a5856b __tracepoint_neigh_cleanup_and_release +EXPORT_SYMBOL_GPL vmlinux 0x05aa228f fib_alias_hw_flags_set +EXPORT_SYMBOL_GPL vmlinux 0x05abc397 ncsi_stop_dev +EXPORT_SYMBOL_GPL vmlinux 0x05b6c72b rio_register_scan +EXPORT_SYMBOL_GPL vmlinux 0x060375eb account_locked_vm +EXPORT_SYMBOL_GPL vmlinux 0x06209f49 phy_lookup_setting +EXPORT_SYMBOL_GPL vmlinux 0x0622ac04 kvm_vcpu_gfn_to_hva +EXPORT_SYMBOL_GPL vmlinux 0x06255a3f user_destroy +EXPORT_SYMBOL_GPL vmlinux 0x0626da5f od_unregister_powersave_bias_handler +EXPORT_SYMBOL_GPL vmlinux 0x062daae9 tcp_sendmsg_locked +EXPORT_SYMBOL_GPL vmlinux 0x062f0211 kvm_vcpu_block +EXPORT_SYMBOL_GPL vmlinux 0x064db9a5 mark_mounts_for_expiry +EXPORT_SYMBOL_GPL vmlinux 0x0662e8b8 pinmux_generic_get_function_groups +EXPORT_SYMBOL_GPL vmlinux 0x069b5ce8 scsi_autopm_get_device +EXPORT_SYMBOL_GPL vmlinux 0x06aa15a6 iomap_fiemap +EXPORT_SYMBOL_GPL vmlinux 0x06ace640 cpufreq_freq_attr_scaling_available_freqs +EXPORT_SYMBOL_GPL vmlinux 0x06adbc97 xhci_mtk_add_ep_quirk +EXPORT_SYMBOL_GPL vmlinux 0x06b1f644 dma_get_slave_channel +EXPORT_SYMBOL_GPL vmlinux 0x06bcd734 usb_match_one_id +EXPORT_SYMBOL_GPL vmlinux 0x06c18533 i2c_dw_configure_master +EXPORT_SYMBOL_GPL vmlinux 0x06cca30b ring_buffer_record_off +EXPORT_SYMBOL_GPL vmlinux 0x06d33167 gpiod_get_index +EXPORT_SYMBOL_GPL vmlinux 0x06d83d88 tty_perform_flush +EXPORT_SYMBOL_GPL vmlinux 0x06e12354 clk_regmap_divider_ro_ops +EXPORT_SYMBOL_GPL vmlinux 0x06e178a9 pwm_set_chip_data +EXPORT_SYMBOL_GPL vmlinux 0x06e4433e sunxi_ccu_set_mmc_timing_mode +EXPORT_SYMBOL_GPL vmlinux 0x06ef98a9 gpiod_to_chip +EXPORT_SYMBOL_GPL vmlinux 0x0700b49f ti_sci_inta_msi_get_virq +EXPORT_SYMBOL_GPL vmlinux 0x0700f4b7 efivar_entry_set_get_size +EXPORT_SYMBOL_GPL vmlinux 0x071edeb6 power_supply_set_battery_charged +EXPORT_SYMBOL_GPL vmlinux 0x07242d92 put_dax +EXPORT_SYMBOL_GPL vmlinux 0x074059a4 crypto_register_acomp +EXPORT_SYMBOL_GPL vmlinux 0x0746d626 pci_epc_set_msix +EXPORT_SYMBOL_GPL vmlinux 0x07498d0d pciserial_init_ports +EXPORT_SYMBOL_GPL vmlinux 0x074f98db synth_event_add_field +EXPORT_SYMBOL_GPL vmlinux 0x074fba2b devm_device_add_groups +EXPORT_SYMBOL_GPL vmlinux 0x076356e7 sfp_may_have_phy +EXPORT_SYMBOL_GPL vmlinux 0x07646cee ata_tf_to_fis +EXPORT_SYMBOL_GPL vmlinux 0x076987a6 blkg_rwstat_recursive_sum +EXPORT_SYMBOL_GPL vmlinux 0x076b8572 of_clk_hw_register +EXPORT_SYMBOL_GPL vmlinux 0x07788d9f perf_event_period +EXPORT_SYMBOL_GPL vmlinux 0x078b4b60 page_cache_sync_readahead +EXPORT_SYMBOL_GPL vmlinux 0x0790263a gfn_to_hva +EXPORT_SYMBOL_GPL vmlinux 0x0793b8e2 dm_bio_from_per_bio_data +EXPORT_SYMBOL_GPL vmlinux 0x0795e92b find_mci_by_dev +EXPORT_SYMBOL_GPL vmlinux 0x0799beeb __clk_hw_register_gate +EXPORT_SYMBOL_GPL vmlinux 0x07ac2417 thermal_zone_device_update +EXPORT_SYMBOL_GPL vmlinux 0x07b21f85 kdb_get_kbd_char +EXPORT_SYMBOL_GPL vmlinux 0x07b52e38 rtnl_unregister +EXPORT_SYMBOL_GPL vmlinux 0x07be6905 net_inc_egress_queue +EXPORT_SYMBOL_GPL vmlinux 0x07bf29cd get_cached_msi_msg +EXPORT_SYMBOL_GPL vmlinux 0x07bf2b7b cgroup_rstat_updated +EXPORT_SYMBOL_GPL vmlinux 0x07c23703 hrtimer_try_to_cancel +EXPORT_SYMBOL_GPL vmlinux 0x07dbb72d inet6_csk_update_pmtu +EXPORT_SYMBOL_GPL vmlinux 0x07f19c83 pinctrl_force_default +EXPORT_SYMBOL_GPL vmlinux 0x07f2e33d iommu_attach_group +EXPORT_SYMBOL_GPL vmlinux 0x07fa055e scmi_protocol_unregister +EXPORT_SYMBOL_GPL vmlinux 0x07fb4e6f srcutorture_get_gp_data +EXPORT_SYMBOL_GPL vmlinux 0x07fc89bc ip4_datagram_release_cb +EXPORT_SYMBOL_GPL vmlinux 0x0800ee24 nvdimm_flush +EXPORT_SYMBOL_GPL vmlinux 0x0803d15b perf_event_disable +EXPORT_SYMBOL_GPL vmlinux 0x080dc06a edac_mc_find_csrow_by_page +EXPORT_SYMBOL_GPL vmlinux 0x08135613 dax_write_cache +EXPORT_SYMBOL_GPL vmlinux 0x0816538c sysfs_merge_group +EXPORT_SYMBOL_GPL vmlinux 0x08169304 irq_domain_get_irq_data +EXPORT_SYMBOL_GPL vmlinux 0x0816f443 md_stop_writes +EXPORT_SYMBOL_GPL vmlinux 0x08189086 phy_speed_down +EXPORT_SYMBOL_GPL vmlinux 0x08415783 ethnl_cable_test_result +EXPORT_SYMBOL_GPL vmlinux 0x08418d08 dt_init_idle_driver +EXPORT_SYMBOL_GPL vmlinux 0x08427e63 ima_file_hash +EXPORT_SYMBOL_GPL vmlinux 0x0843875c phy_speed_up +EXPORT_SYMBOL_GPL vmlinux 0x0843ba7f wm831x_reg_lock +EXPORT_SYMBOL_GPL vmlinux 0x08557a4c mtk_pinconf_bias_set_rev1 +EXPORT_SYMBOL_GPL vmlinux 0x08597308 mtk_pinconf_drive_get +EXPORT_SYMBOL_GPL vmlinux 0x0859ccfc strp_process +EXPORT_SYMBOL_GPL vmlinux 0x085bffd1 trace_seq_bitmask +EXPORT_SYMBOL_GPL vmlinux 0x087f5dc5 wm831x_of_match +EXPORT_SYMBOL_GPL vmlinux 0x088983ce iommu_sva_bind_gpasid +EXPORT_SYMBOL_GPL vmlinux 0x08a51cf3 get_net_ns_by_pid +EXPORT_SYMBOL_GPL vmlinux 0x08aed913 wakeup_sources_walk_next +EXPORT_SYMBOL_GPL vmlinux 0x08b25308 blk_insert_cloned_request +EXPORT_SYMBOL_GPL vmlinux 0x08c1a683 led_trigger_unregister +EXPORT_SYMBOL_GPL vmlinux 0x08c80f2f nvdimm_to_bus +EXPORT_SYMBOL_GPL vmlinux 0x08cf1c1a ipv4_update_pmtu +EXPORT_SYMBOL_GPL vmlinux 0x08d3bf02 trace_vprintk +EXPORT_SYMBOL_GPL vmlinux 0x08e772cd extcon_set_property +EXPORT_SYMBOL_GPL vmlinux 0x08e98aa1 to_nvdimm +EXPORT_SYMBOL_GPL vmlinux 0x08efb908 devfreq_event_get_event +EXPORT_SYMBOL_GPL vmlinux 0x0900e018 stmpe811_adc_common_init +EXPORT_SYMBOL_GPL vmlinux 0x0903bc0d relay_open +EXPORT_SYMBOL_GPL vmlinux 0x0907d14d blocking_notifier_chain_register +EXPORT_SYMBOL_GPL vmlinux 0x090d9ccc __fscrypt_prepare_rename +EXPORT_SYMBOL_GPL vmlinux 0x091eb9b4 round_jiffies +EXPORT_SYMBOL_GPL vmlinux 0x091ff86f ata_sff_dma_pause +EXPORT_SYMBOL_GPL vmlinux 0x092bd770 __sock_recv_wifi_status +EXPORT_SYMBOL_GPL vmlinux 0x092c4001 fixed_phy_unregister +EXPORT_SYMBOL_GPL vmlinux 0x09337cd0 __wake_up_locked_key +EXPORT_SYMBOL_GPL vmlinux 0x09339963 kill_device +EXPORT_SYMBOL_GPL vmlinux 0x0933e388 crypto_cipher_decrypt_one +EXPORT_SYMBOL_GPL vmlinux 0x093786cf synth_event_add_field_str +EXPORT_SYMBOL_GPL vmlinux 0x093df6c3 gpiod_count +EXPORT_SYMBOL_GPL vmlinux 0x0958a121 platform_bus_type +EXPORT_SYMBOL_GPL vmlinux 0x0959d867 alloc_page_buffers +EXPORT_SYMBOL_GPL vmlinux 0x096b2418 __tracepoint_tcp_send_reset +EXPORT_SYMBOL_GPL vmlinux 0x097b7c9f usb_autopm_get_interface_no_resume +EXPORT_SYMBOL_GPL vmlinux 0x0997f7e5 bpf_trace_run8 +EXPORT_SYMBOL_GPL vmlinux 0x09b53e14 interval_tree_remove +EXPORT_SYMBOL_GPL vmlinux 0x09b64d5a strp_unpause +EXPORT_SYMBOL_GPL vmlinux 0x09ca0923 ip6_route_output_flags +EXPORT_SYMBOL_GPL vmlinux 0x09ceec31 __rt_mutex_init +EXPORT_SYMBOL_GPL vmlinux 0x09d63265 list_lru_count_node +EXPORT_SYMBOL_GPL vmlinux 0x09e2c33e fixed_phy_register +EXPORT_SYMBOL_GPL vmlinux 0x09f4c799 tpm_try_get_ops +EXPORT_SYMBOL_GPL vmlinux 0x0a0c9d45 inet_peer_base_init +EXPORT_SYMBOL_GPL vmlinux 0x0a3a7236 usb_hcd_map_urb_for_dma +EXPORT_SYMBOL_GPL vmlinux 0x0a51e8b9 encrypt_blob +EXPORT_SYMBOL_GPL vmlinux 0x0a5753c4 pci_disable_ats +EXPORT_SYMBOL_GPL vmlinux 0x0a65fd3b __kthread_should_park +EXPORT_SYMBOL_GPL vmlinux 0x0a6c4041 cn_netlink_send +EXPORT_SYMBOL_GPL vmlinux 0x0a6ce1cc sfp_select_interface +EXPORT_SYMBOL_GPL vmlinux 0x0a76876c __dax_driver_register +EXPORT_SYMBOL_GPL vmlinux 0x0a8d4d61 pci_slots_kset +EXPORT_SYMBOL_GPL vmlinux 0x0a953d92 dev_pm_qos_add_request +EXPORT_SYMBOL_GPL vmlinux 0x0a95f0e2 mbox_client_peek_data +EXPORT_SYMBOL_GPL vmlinux 0x0aa17d71 tty_buffer_request_room +EXPORT_SYMBOL_GPL vmlinux 0x0aa20022 __devm_pci_epc_create +EXPORT_SYMBOL_GPL vmlinux 0x0ab5f373 transport_class_unregister +EXPORT_SYMBOL_GPL vmlinux 0x0abc6be6 k3_ringacc_ring_is_full +EXPORT_SYMBOL_GPL vmlinux 0x0abe0213 devm_regmap_field_free +EXPORT_SYMBOL_GPL vmlinux 0x0acd6506 phy_save_page +EXPORT_SYMBOL_GPL vmlinux 0x0ae21ad8 is_transparent_hugepage +EXPORT_SYMBOL_GPL vmlinux 0x0ae29164 add_page_wait_queue +EXPORT_SYMBOL_GPL vmlinux 0x0af40724 iommu_alloc_resv_region +EXPORT_SYMBOL_GPL vmlinux 0x0b07abe2 unshare_fs_struct +EXPORT_SYMBOL_GPL vmlinux 0x0b1bb9f9 synchronize_rcu_tasks +EXPORT_SYMBOL_GPL vmlinux 0x0b252700 synth_event_trace_start +EXPORT_SYMBOL_GPL vmlinux 0x0b2db2d5 remove_resource +EXPORT_SYMBOL_GPL vmlinux 0x0b3a3ed7 zynqmp_pm_fpga_get_status +EXPORT_SYMBOL_GPL vmlinux 0x0b3b0b0e usb_enable_ltm +EXPORT_SYMBOL_GPL vmlinux 0x0b51e321 virtqueue_add_inbuf_ctx +EXPORT_SYMBOL_GPL vmlinux 0x0b52e502 apei_resources_add +EXPORT_SYMBOL_GPL vmlinux 0x0b690f04 k3_udma_glue_tx_get_txcq_id +EXPORT_SYMBOL_GPL vmlinux 0x0b6f2c0c irq_create_direct_mapping +EXPORT_SYMBOL_GPL vmlinux 0x0b810a27 battery_hook_register +EXPORT_SYMBOL_GPL vmlinux 0x0b86a51d get_net_ns +EXPORT_SYMBOL_GPL vmlinux 0x0b8bf355 do_splice_from +EXPORT_SYMBOL_GPL vmlinux 0x0b8e4538 dax_attribute_group +EXPORT_SYMBOL_GPL vmlinux 0x0ba39ee1 mddev_init +EXPORT_SYMBOL_GPL vmlinux 0x0ba6d554 devres_remove +EXPORT_SYMBOL_GPL vmlinux 0x0baa9c76 irq_chip_set_wake_parent +EXPORT_SYMBOL_GPL vmlinux 0x0bb028d4 hisi_clk_register_fixed_factor +EXPORT_SYMBOL_GPL vmlinux 0x0bbe3e1c rio_release_inb_mbox +EXPORT_SYMBOL_GPL vmlinux 0x0bc542f9 usb_hcd_end_port_resume +EXPORT_SYMBOL_GPL vmlinux 0x0bd10335 i2c_detect_slave_mode +EXPORT_SYMBOL_GPL vmlinux 0x0bd233d7 iommu_dev_enable_feature +EXPORT_SYMBOL_GPL vmlinux 0x0be310f9 skb_mpls_pop +EXPORT_SYMBOL_GPL vmlinux 0x0bf54ae6 devlink_alloc +EXPORT_SYMBOL_GPL vmlinux 0x0c0899f6 serial8250_release_dma +EXPORT_SYMBOL_GPL vmlinux 0x0c15b701 serial8250_read_char +EXPORT_SYMBOL_GPL vmlinux 0x0c208108 blk_queue_required_elevator_features +EXPORT_SYMBOL_GPL vmlinux 0x0c26899c rio_register_mport +EXPORT_SYMBOL_GPL vmlinux 0x0c2c5802 work_busy +EXPORT_SYMBOL_GPL vmlinux 0x0c32ff8a edac_pci_alloc_index +EXPORT_SYMBOL_GPL vmlinux 0x0c3b2241 altr_sysmgr_regmap_lookup_by_phandle +EXPORT_SYMBOL_GPL vmlinux 0x0c3e6241 k3_udma_glue_disable_rx_chn +EXPORT_SYMBOL_GPL vmlinux 0x0c4939db devm_kmalloc +EXPORT_SYMBOL_GPL vmlinux 0x0c560fa3 devm_watchdog_register_device +EXPORT_SYMBOL_GPL vmlinux 0x0c76d2ed iomap_file_unshare +EXPORT_SYMBOL_GPL vmlinux 0x0c824c96 divider_recalc_rate +EXPORT_SYMBOL_GPL vmlinux 0x0c8e0475 devm_usb_put_phy +EXPORT_SYMBOL_GPL vmlinux 0x0c9026c3 thp_get_unmapped_area +EXPORT_SYMBOL_GPL vmlinux 0x0caf6339 key_type_user +EXPORT_SYMBOL_GPL vmlinux 0x0cb3d0bb inet_unhash +EXPORT_SYMBOL_GPL vmlinux 0x0cb579c0 __free_iova +EXPORT_SYMBOL_GPL vmlinux 0x0cb9beeb devm_platform_get_and_ioremap_resource +EXPORT_SYMBOL_GPL vmlinux 0x0cbe3ee2 software_node_unregister +EXPORT_SYMBOL_GPL vmlinux 0x0cc2580e ahci_ops +EXPORT_SYMBOL_GPL vmlinux 0x0cc3b29e acpi_dev_filter_resource_type +EXPORT_SYMBOL_GPL vmlinux 0x0cd96abc perf_event_pause +EXPORT_SYMBOL_GPL vmlinux 0x0ce3dd73 bman_is_probed +EXPORT_SYMBOL_GPL vmlinux 0x0cee6ef5 tps6586x_read +EXPORT_SYMBOL_GPL vmlinux 0x0cf329c5 ata_sff_qc_fill_rtf +EXPORT_SYMBOL_GPL vmlinux 0x0cf7eca0 rio_alloc_net +EXPORT_SYMBOL_GPL vmlinux 0x0d116ad0 __sbitmap_queue_get +EXPORT_SYMBOL_GPL vmlinux 0x0d1b5da0 serdev_device_get_tiocm +EXPORT_SYMBOL_GPL vmlinux 0x0d23737d ahci_start_engine +EXPORT_SYMBOL_GPL vmlinux 0x0d40d8be ti_sci_get_num_resources +EXPORT_SYMBOL_GPL vmlinux 0x0d40fc38 regmap_attach_dev +EXPORT_SYMBOL_GPL vmlinux 0x0d447862 fuse_conn_init +EXPORT_SYMBOL_GPL vmlinux 0x0d45209c xdp_attachment_query +EXPORT_SYMBOL_GPL vmlinux 0x0d459213 work_on_cpu_safe +EXPORT_SYMBOL_GPL vmlinux 0x0d4961de nf_log_buf_open +EXPORT_SYMBOL_GPL vmlinux 0x0d5dab7a attribute_container_find_class_device +EXPORT_SYMBOL_GPL vmlinux 0x0d771a2b debugfs_attr_read +EXPORT_SYMBOL_GPL vmlinux 0x0d792b4e dw_pcie_upconfig_setup +EXPORT_SYMBOL_GPL vmlinux 0x0d7cbc21 devm_devfreq_event_add_edev +EXPORT_SYMBOL_GPL vmlinux 0x0d7f9f04 pci_ioremap_bar +EXPORT_SYMBOL_GPL vmlinux 0x0d98f6b0 of_devfreq_cooling_register +EXPORT_SYMBOL_GPL vmlinux 0x0d9cba2b of_property_match_string +EXPORT_SYMBOL_GPL vmlinux 0x0d9dec4b tpm1_getcap +EXPORT_SYMBOL_GPL vmlinux 0x0da59a48 devm_regulator_unregister +EXPORT_SYMBOL_GPL vmlinux 0x0db051b6 regmap_field_update_bits_base +EXPORT_SYMBOL_GPL vmlinux 0x0db3a955 request_firmware_direct +EXPORT_SYMBOL_GPL vmlinux 0x0dbde0d6 debugfs_create_file_size +EXPORT_SYMBOL_GPL vmlinux 0x0dbed0fb i2c_get_device_id +EXPORT_SYMBOL_GPL vmlinux 0x0dc373ab wm5110_aod +EXPORT_SYMBOL_GPL vmlinux 0x0dd3766a regulator_unregister +EXPORT_SYMBOL_GPL vmlinux 0x0ddb1cd7 llist_reverse_order +EXPORT_SYMBOL_GPL vmlinux 0x0ded4b85 usb_deregister +EXPORT_SYMBOL_GPL vmlinux 0x0dedc7f1 crypto_stats_akcipher_sign +EXPORT_SYMBOL_GPL vmlinux 0x0df52a96 iommu_map_sg_atomic +EXPORT_SYMBOL_GPL vmlinux 0x0df54b88 usb_create_shared_hcd +EXPORT_SYMBOL_GPL vmlinux 0x0df9ab93 irq_chip_ack_parent +EXPORT_SYMBOL_GPL vmlinux 0x0e007edf xen_evtchn_nr_channels +EXPORT_SYMBOL_GPL vmlinux 0x0e13cb4d apei_resources_release +EXPORT_SYMBOL_GPL vmlinux 0x0e14899f devm_led_trigger_register +EXPORT_SYMBOL_GPL vmlinux 0x0e3cee2a xdp_do_redirect +EXPORT_SYMBOL_GPL vmlinux 0x0e5ca760 fsl_mc_populate_irq_pool +EXPORT_SYMBOL_GPL vmlinux 0x0e5dc415 sata_pmp_error_handler +EXPORT_SYMBOL_GPL vmlinux 0x0e6b79af static_key_disable_cpuslocked +EXPORT_SYMBOL_GPL vmlinux 0x0e6c8861 exportfs_decode_fh +EXPORT_SYMBOL_GPL vmlinux 0x0e8031fb espintcp_queue_out +EXPORT_SYMBOL_GPL vmlinux 0x0e8f4da3 ata_sff_prereset +EXPORT_SYMBOL_GPL vmlinux 0x0e943b5b xhci_shutdown +EXPORT_SYMBOL_GPL vmlinux 0x0e949aa9 percpu_up_write +EXPORT_SYMBOL_GPL vmlinux 0x0ea5cbce xen_irq_lateeoi +EXPORT_SYMBOL_GPL vmlinux 0x0eb0bbf9 kmsg_dump_get_buffer +EXPORT_SYMBOL_GPL vmlinux 0x0ebd4cda serial8250_do_set_divisor +EXPORT_SYMBOL_GPL vmlinux 0x0ec70a56 mpc8xxx_spi_probe +EXPORT_SYMBOL_GPL vmlinux 0x0ed68b57 dev_pm_opp_get_max_clock_latency +EXPORT_SYMBOL_GPL vmlinux 0x0ed8c917 devm_ti_sci_get_handle +EXPORT_SYMBOL_GPL vmlinux 0x0ee6319a regmap_write_async +EXPORT_SYMBOL_GPL vmlinux 0x0eee19cb call_switchdev_blocking_notifiers +EXPORT_SYMBOL_GPL vmlinux 0x0ef8ed30 pci_find_next_capability +EXPORT_SYMBOL_GPL vmlinux 0x0f079d43 driver_attach +EXPORT_SYMBOL_GPL vmlinux 0x0f0a94f8 crypto_stats_akcipher_encrypt +EXPORT_SYMBOL_GPL vmlinux 0x0f0cfcab pci_disable_pcie_error_reporting +EXPORT_SYMBOL_GPL vmlinux 0x0f180070 ring_buffer_free_read_page +EXPORT_SYMBOL_GPL vmlinux 0x0f26fa7f pinctrl_parse_index_with_args +EXPORT_SYMBOL_GPL vmlinux 0x0f39445d extcon_get_property +EXPORT_SYMBOL_GPL vmlinux 0x0f491368 devlink_sb_register +EXPORT_SYMBOL_GPL vmlinux 0x0f4acfd0 phy_create +EXPORT_SYMBOL_GPL vmlinux 0x0f576ec7 kthread_queue_work +EXPORT_SYMBOL_GPL vmlinux 0x0f7ca236 dmi_memdev_name +EXPORT_SYMBOL_GPL vmlinux 0x0fa33903 dev_get_regmap +EXPORT_SYMBOL_GPL vmlinux 0x0fb52fd6 pm_runtime_enable +EXPORT_SYMBOL_GPL vmlinux 0x0fbb7344 memremap_compat_align +EXPORT_SYMBOL_GPL vmlinux 0x0fc4a751 blk_rq_unprep_clone +EXPORT_SYMBOL_GPL vmlinux 0x0fc5f9f9 lwtunnel_encap_add_ops +EXPORT_SYMBOL_GPL vmlinux 0x0fc89039 amba_apb_device_add_res +EXPORT_SYMBOL_GPL vmlinux 0x0fcb3440 crypto_aead_encrypt +EXPORT_SYMBOL_GPL vmlinux 0x0fd668d8 power_supply_unregister +EXPORT_SYMBOL_GPL vmlinux 0x0fd7fa0d led_trigger_set +EXPORT_SYMBOL_GPL vmlinux 0x0fdb906a alloc_io_pgtable_ops +EXPORT_SYMBOL_GPL vmlinux 0x0fe7617c __tracepoint_suspend_resume +EXPORT_SYMBOL_GPL vmlinux 0x1001969e mmput +EXPORT_SYMBOL_GPL vmlinux 0x1001fd28 sk_msg_alloc +EXPORT_SYMBOL_GPL vmlinux 0x10101036 __platform_create_bundle +EXPORT_SYMBOL_GPL vmlinux 0x1012b8d2 platform_device_del +EXPORT_SYMBOL_GPL vmlinux 0x10138352 tracing_on +EXPORT_SYMBOL_GPL vmlinux 0x102f43a1 get_pid_task +EXPORT_SYMBOL_GPL vmlinux 0x103be139 blk_stat_enable_accounting +EXPORT_SYMBOL_GPL vmlinux 0x1044c84d dev_pm_domain_attach_by_id +EXPORT_SYMBOL_GPL vmlinux 0x105540b3 paste_selection +EXPORT_SYMBOL_GPL vmlinux 0x1062aa27 power_supply_batinfo_ocv2cap +EXPORT_SYMBOL_GPL vmlinux 0x1068c337 fuse_direct_io +EXPORT_SYMBOL_GPL vmlinux 0x10695790 tty_buffer_set_limit +EXPORT_SYMBOL_GPL vmlinux 0x107a004a ref_module +EXPORT_SYMBOL_GPL vmlinux 0x107ac0bf __netpoll_free +EXPORT_SYMBOL_GPL vmlinux 0x107ec603 acpi_match_device +EXPORT_SYMBOL_GPL vmlinux 0x10853d8d wm831x_auxadc_read +EXPORT_SYMBOL_GPL vmlinux 0x108a0acd bstr_printf +EXPORT_SYMBOL_GPL vmlinux 0x1091197d ahci_init_controller +EXPORT_SYMBOL_GPL vmlinux 0x10c2e75a kmsg_dump_register +EXPORT_SYMBOL_GPL vmlinux 0x10c767a8 devres_find +EXPORT_SYMBOL_GPL vmlinux 0x10cd7563 virtio_config_changed +EXPORT_SYMBOL_GPL vmlinux 0x10d64648 unregister_virtio_device +EXPORT_SYMBOL_GPL vmlinux 0x10db05f9 sbitmap_bitmap_show +EXPORT_SYMBOL_GPL vmlinux 0x10e9a284 dev_coredumpm +EXPORT_SYMBOL_GPL vmlinux 0x10ecc52c usb_amd_quirk_pll_enable +EXPORT_SYMBOL_GPL vmlinux 0x10ece578 clk_hw_get_name +EXPORT_SYMBOL_GPL vmlinux 0x110106c1 cper_severity_to_aer +EXPORT_SYMBOL_GPL vmlinux 0x110319f4 nf_checksum +EXPORT_SYMBOL_GPL vmlinux 0x11072336 gpiochip_relres_irq +EXPORT_SYMBOL_GPL vmlinux 0x110c46c4 gpiochip_get_data +EXPORT_SYMBOL_GPL vmlinux 0x11221110 ima_file_check +EXPORT_SYMBOL_GPL vmlinux 0x112811d2 set_capacity_revalidate_and_notify +EXPORT_SYMBOL_GPL vmlinux 0x113ad0b9 sdio_readw +EXPORT_SYMBOL_GPL vmlinux 0x11406096 dm_post_suspending +EXPORT_SYMBOL_GPL vmlinux 0x114ad467 gpiod_get_index_optional +EXPORT_SYMBOL_GPL vmlinux 0x1167b8f6 __strp_unpause +EXPORT_SYMBOL_GPL vmlinux 0x1172d487 rhashtable_insert_slow +EXPORT_SYMBOL_GPL vmlinux 0x1185c249 arch_apei_report_mem_error +EXPORT_SYMBOL_GPL vmlinux 0x11967927 ip6_local_out +EXPORT_SYMBOL_GPL vmlinux 0x11a2e0ac crypto_dh_key_len +EXPORT_SYMBOL_GPL vmlinux 0x11b365c1 dev_pm_opp_enable +EXPORT_SYMBOL_GPL vmlinux 0x11b5c6c6 of_irq_parse_one +EXPORT_SYMBOL_GPL vmlinux 0x11bca51f devm_memunmap_pages +EXPORT_SYMBOL_GPL vmlinux 0x11c23240 crypto_attr_u32 +EXPORT_SYMBOL_GPL vmlinux 0x11c4cf90 sdio_retune_crc_disable +EXPORT_SYMBOL_GPL vmlinux 0x11d7c996 usb_find_interface +EXPORT_SYMBOL_GPL vmlinux 0x11d97f74 sdio_unregister_driver +EXPORT_SYMBOL_GPL vmlinux 0x11df0e75 devlink_fmsg_binary_pair_nest_start +EXPORT_SYMBOL_GPL vmlinux 0x11e06ee9 badrange_init +EXPORT_SYMBOL_GPL vmlinux 0x11ed2e63 pstore_register +EXPORT_SYMBOL_GPL vmlinux 0x11f79806 __mmu_notifier_register +EXPORT_SYMBOL_GPL vmlinux 0x1215a2b6 dev_pm_opp_of_get_opp_desc_node +EXPORT_SYMBOL_GPL vmlinux 0x1215b507 icc_get +EXPORT_SYMBOL_GPL vmlinux 0x121d958a unregister_die_notifier +EXPORT_SYMBOL_GPL vmlinux 0x1221a02f iommu_dev_disable_feature +EXPORT_SYMBOL_GPL vmlinux 0x122d8275 power_supply_set_input_current_limit_from_supplier +EXPORT_SYMBOL_GPL vmlinux 0x122ee203 dev_pm_put_subsys_data +EXPORT_SYMBOL_GPL vmlinux 0x1234e483 get_cpu_iowait_time_us +EXPORT_SYMBOL_GPL vmlinux 0x1234ffa1 cper_estatus_check_header +EXPORT_SYMBOL_GPL vmlinux 0x1259b431 phy_exit +EXPORT_SYMBOL_GPL vmlinux 0x12603add tracing_snapshot_cond_disable +EXPORT_SYMBOL_GPL vmlinux 0x1261478f tcp_done +EXPORT_SYMBOL_GPL vmlinux 0x1268f357 resume_device_irqs +EXPORT_SYMBOL_GPL vmlinux 0x127dfde3 pwm_get +EXPORT_SYMBOL_GPL vmlinux 0x128c2ae8 tty_port_link_device +EXPORT_SYMBOL_GPL vmlinux 0x12903fe9 regulator_set_voltage +EXPORT_SYMBOL_GPL vmlinux 0x129334ae sfp_parse_support +EXPORT_SYMBOL_GPL vmlinux 0x12ab31f1 idr_alloc_u32 +EXPORT_SYMBOL_GPL vmlinux 0x12cac3ae __mnt_is_readonly +EXPORT_SYMBOL_GPL vmlinux 0x12cd0b53 led_classdev_unregister +EXPORT_SYMBOL_GPL vmlinux 0x12dbc8f6 percpu_ref_switch_to_atomic_sync +EXPORT_SYMBOL_GPL vmlinux 0x12e99a3a mtk_eint_find_irq +EXPORT_SYMBOL_GPL vmlinux 0x12f1b436 crypto_lookup_template +EXPORT_SYMBOL_GPL vmlinux 0x12f8577c __pm_runtime_idle +EXPORT_SYMBOL_GPL vmlinux 0x12fee4d4 ata_sas_port_suspend +EXPORT_SYMBOL_GPL vmlinux 0x12ff104d linear_hugepage_index +EXPORT_SYMBOL_GPL vmlinux 0x130cf3f2 phy_create_lookup +EXPORT_SYMBOL_GPL vmlinux 0x131a5ed7 regmap_del_irq_chip +EXPORT_SYMBOL_GPL vmlinux 0x131db64a system_long_wq +EXPORT_SYMBOL_GPL vmlinux 0x1332cc0c unregister_wide_hw_breakpoint +EXPORT_SYMBOL_GPL vmlinux 0x133969d7 __trace_printk +EXPORT_SYMBOL_GPL vmlinux 0x13400514 dev_pm_qos_update_request +EXPORT_SYMBOL_GPL vmlinux 0x1343c43f device_store_bool +EXPORT_SYMBOL_GPL vmlinux 0x136209db power_supply_reg_notifier +EXPORT_SYMBOL_GPL vmlinux 0x138aff76 gnttab_init +EXPORT_SYMBOL_GPL vmlinux 0x138e0957 dax_write_cache_enabled +EXPORT_SYMBOL_GPL vmlinux 0x13920b8a cgroup_attach_task_all +EXPORT_SYMBOL_GPL vmlinux 0x1395ab9c devm_nvdimm_memremap +EXPORT_SYMBOL_GPL vmlinux 0x13a6d46a dev_pm_opp_put_opp_table +EXPORT_SYMBOL_GPL vmlinux 0x13be9f55 fuse_conn_get +EXPORT_SYMBOL_GPL vmlinux 0x13c19ee7 alarm_forward_now +EXPORT_SYMBOL_GPL vmlinux 0x13ce87e8 asn1_ber_decoder +EXPORT_SYMBOL_GPL vmlinux 0x13eae78d iptunnel_metadata_reply +EXPORT_SYMBOL_GPL vmlinux 0x13ed8784 sdev_evt_alloc +EXPORT_SYMBOL_GPL vmlinux 0x13f7a14d ip6_sk_redirect +EXPORT_SYMBOL_GPL vmlinux 0x1403ad09 cpufreq_add_update_util_hook +EXPORT_SYMBOL_GPL vmlinux 0x14047a6a dma_buf_dynamic_attach +EXPORT_SYMBOL_GPL vmlinux 0x1418238a __tracepoint_cpu_frequency +EXPORT_SYMBOL_GPL vmlinux 0x141eecd8 fuse_free_conn +EXPORT_SYMBOL_GPL vmlinux 0x141f38bf ktime_get_raw_fast_ns +EXPORT_SYMBOL_GPL vmlinux 0x142c921d pci_epc_raise_irq +EXPORT_SYMBOL_GPL vmlinux 0x143b8179 nvdimm_in_overwrite +EXPORT_SYMBOL_GPL vmlinux 0x1442c75d devm_regulator_unregister_supply_alias +EXPORT_SYMBOL_GPL vmlinux 0x144591f9 hisi_reset_init +EXPORT_SYMBOL_GPL vmlinux 0x144f24be dst_cache_get_ip4 +EXPORT_SYMBOL_GPL vmlinux 0x145261a0 vc_scrolldelta_helper +EXPORT_SYMBOL_GPL vmlinux 0x1456762b k3_ringacc_ring_get_free +EXPORT_SYMBOL_GPL vmlinux 0x1485a307 free_io_pgtable_ops +EXPORT_SYMBOL_GPL vmlinux 0x14c29d69 efivars_unregister +EXPORT_SYMBOL_GPL vmlinux 0x14d01690 clk_mux_index_to_val +EXPORT_SYMBOL_GPL vmlinux 0x14d382d9 pinctrl_lookup_state +EXPORT_SYMBOL_GPL vmlinux 0x14d5ff70 phy_reset +EXPORT_SYMBOL_GPL vmlinux 0x14ec4fdb evtchn_put +EXPORT_SYMBOL_GPL vmlinux 0x14f22c75 trace_event_ignore_this_pid +EXPORT_SYMBOL_GPL vmlinux 0x14f3bae5 scsi_flush_work +EXPORT_SYMBOL_GPL vmlinux 0x150212db thermal_zone_unbind_cooling_device +EXPORT_SYMBOL_GPL vmlinux 0x150599a7 serial8250_rx_chars +EXPORT_SYMBOL_GPL vmlinux 0x150d94ed fuse_do_ioctl +EXPORT_SYMBOL_GPL vmlinux 0x153908aa inet6_sk_rebuild_header +EXPORT_SYMBOL_GPL vmlinux 0x153b60a6 klist_del +EXPORT_SYMBOL_GPL vmlinux 0x15510a89 devlink_fmsg_binary_put +EXPORT_SYMBOL_GPL vmlinux 0x15698242 sdio_retune_crc_enable +EXPORT_SYMBOL_GPL vmlinux 0x156cdac8 __tracepoint_kfree_skb +EXPORT_SYMBOL_GPL vmlinux 0x15701201 pinctrl_select_default_state +EXPORT_SYMBOL_GPL vmlinux 0x15885585 irq_domain_translate_twocell +EXPORT_SYMBOL_GPL vmlinux 0x159f5beb rt_mutex_destroy +EXPORT_SYMBOL_GPL vmlinux 0x15e6d72d gpiod_set_array_value +EXPORT_SYMBOL_GPL vmlinux 0x15ea2648 hwpoison_filter_flags_mask +EXPORT_SYMBOL_GPL vmlinux 0x15ec3648 ip6_append_data +EXPORT_SYMBOL_GPL vmlinux 0x15efb59d balloon_page_dequeue +EXPORT_SYMBOL_GPL vmlinux 0x1602658b fat_get_dotdot_entry +EXPORT_SYMBOL_GPL vmlinux 0x1606e325 synth_event_trace_array +EXPORT_SYMBOL_GPL vmlinux 0x161ac7a2 genphy_c45_read_mdix +EXPORT_SYMBOL_GPL vmlinux 0x1627a093 blk_trace_remove +EXPORT_SYMBOL_GPL vmlinux 0x163675ab gpiod_get +EXPORT_SYMBOL_GPL vmlinux 0x164dde13 fsl_mc_allocate_irqs +EXPORT_SYMBOL_GPL vmlinux 0x16516798 osc_pc_lpi_support_confirmed +EXPORT_SYMBOL_GPL vmlinux 0x165e88e1 sdio_release_host +EXPORT_SYMBOL_GPL vmlinux 0x166d6443 __tracepoint_pelt_rt_tp +EXPORT_SYMBOL_GPL vmlinux 0x16735905 component_unbind_all +EXPORT_SYMBOL_GPL vmlinux 0x167d7113 acpi_bus_register_early_device +EXPORT_SYMBOL_GPL vmlinux 0x16864746 cpuidle_register +EXPORT_SYMBOL_GPL vmlinux 0x1690b503 usb_role_switch_get_drvdata +EXPORT_SYMBOL_GPL vmlinux 0x1694914c pinctrl_put +EXPORT_SYMBOL_GPL vmlinux 0x1697fda3 serdev_device_set_baudrate +EXPORT_SYMBOL_GPL vmlinux 0x16a608c5 hisi_clk_init +EXPORT_SYMBOL_GPL vmlinux 0x16ae1ec4 debugfs_write_file_bool +EXPORT_SYMBOL_GPL vmlinux 0x16b07cc3 devlink_dpipe_table_resource_set +EXPORT_SYMBOL_GPL vmlinux 0x16b2a272 tracepoint_srcu +EXPORT_SYMBOL_GPL vmlinux 0x16c769d4 scsi_get_vpd_page +EXPORT_SYMBOL_GPL vmlinux 0x16da1f88 devlink_fmsg_u32_put +EXPORT_SYMBOL_GPL vmlinux 0x16da40ff securityfs_create_file +EXPORT_SYMBOL_GPL vmlinux 0x16e76f26 nd_region_provider_data +EXPORT_SYMBOL_GPL vmlinux 0x16f15139 bind_evtchn_to_irq +EXPORT_SYMBOL_GPL vmlinux 0x16f2640d devm_phy_create +EXPORT_SYMBOL_GPL vmlinux 0x16f2835b devm_mdiobus_alloc_size +EXPORT_SYMBOL_GPL vmlinux 0x16f32840 fib6_get_table +EXPORT_SYMBOL_GPL vmlinux 0x16ffc8bc devm_kasprintf +EXPORT_SYMBOL_GPL vmlinux 0x17011e31 ahci_check_ready +EXPORT_SYMBOL_GPL vmlinux 0x1701e2e5 spi_busnum_to_master +EXPORT_SYMBOL_GPL vmlinux 0x17031800 cpufreq_dbs_governor_exit +EXPORT_SYMBOL_GPL vmlinux 0x170b3f4a ahci_start_fis_rx +EXPORT_SYMBOL_GPL vmlinux 0x170cc36c put_timespec64 +EXPORT_SYMBOL_GPL vmlinux 0x17139920 cpufreq_freq_transition_end +EXPORT_SYMBOL_GPL vmlinux 0x171edb6a sdio_register_driver +EXPORT_SYMBOL_GPL vmlinux 0x1720cbdf ata_sas_async_probe +EXPORT_SYMBOL_GPL vmlinux 0x1725c43f of_dma_xlate_by_chan_id +EXPORT_SYMBOL_GPL vmlinux 0x172a962b iterate_mounts +EXPORT_SYMBOL_GPL vmlinux 0x172d9098 rtc_read_alarm +EXPORT_SYMBOL_GPL vmlinux 0x17440277 xfrm_audit_state_icvfail +EXPORT_SYMBOL_GPL vmlinux 0x17486717 tcp_is_ulp_esp +EXPORT_SYMBOL_GPL vmlinux 0x17497918 gfn_to_page_many_atomic +EXPORT_SYMBOL_GPL vmlinux 0x174ea197 sprd_pinctrl_shutdown +EXPORT_SYMBOL_GPL vmlinux 0x17591ecd zynqmp_pm_write_ggs +EXPORT_SYMBOL_GPL vmlinux 0x175df85c regulator_list_voltage_pickable_linear_range +EXPORT_SYMBOL_GPL vmlinux 0x176031a7 devlink_fmsg_string_put +EXPORT_SYMBOL_GPL vmlinux 0x17614bf3 apei_resources_sub +EXPORT_SYMBOL_GPL vmlinux 0x177c338d twl_get_version +EXPORT_SYMBOL_GPL vmlinux 0x177f3c3a pci_epc_destroy +EXPORT_SYMBOL_GPL vmlinux 0x17882d8a pci_sriov_get_totalvfs +EXPORT_SYMBOL_GPL vmlinux 0x178ae307 devm_gpio_request_one +EXPORT_SYMBOL_GPL vmlinux 0x178e562c __regmap_init_mmio_clk +EXPORT_SYMBOL_GPL vmlinux 0x1793e776 nvmem_cell_read_u16 +EXPORT_SYMBOL_GPL vmlinux 0x17970345 gpiod_unexport +EXPORT_SYMBOL_GPL vmlinux 0x17a3993f __tracepoint_block_split +EXPORT_SYMBOL_GPL vmlinux 0x17a6389d cgroup_get_from_path +EXPORT_SYMBOL_GPL vmlinux 0x17b19269 dst_cache_get_ip6 +EXPORT_SYMBOL_GPL vmlinux 0x17de70f4 pci_walk_bus +EXPORT_SYMBOL_GPL vmlinux 0x17e01f11 erst_clear +EXPORT_SYMBOL_GPL vmlinux 0x17e519ef seg6_do_srh_encap +EXPORT_SYMBOL_GPL vmlinux 0x17f9b9bb sk_clear_memalloc +EXPORT_SYMBOL_GPL vmlinux 0x17fddce2 fat_add_entries +EXPORT_SYMBOL_GPL vmlinux 0x17fe02bf dm_get_queue_limits +EXPORT_SYMBOL_GPL vmlinux 0x17fe36cb regmap_field_read +EXPORT_SYMBOL_GPL vmlinux 0x18008c59 ring_buffer_resize +EXPORT_SYMBOL_GPL vmlinux 0x18158d10 ata_pci_bmdma_clear_simplex +EXPORT_SYMBOL_GPL vmlinux 0x1829d124 dma_buf_unpin +EXPORT_SYMBOL_GPL vmlinux 0x182f6537 housekeeping_affine +EXPORT_SYMBOL_GPL vmlinux 0x18540f0d udp_cmsg_send +EXPORT_SYMBOL_GPL vmlinux 0x18615d35 efivar_supports_writes +EXPORT_SYMBOL_GPL vmlinux 0x186d8fd8 relay_flush +EXPORT_SYMBOL_GPL vmlinux 0x18728552 sprint_OID +EXPORT_SYMBOL_GPL vmlinux 0x188aad66 i2c_slave_unregister +EXPORT_SYMBOL_GPL vmlinux 0x188d7abd security_path_rmdir +EXPORT_SYMBOL_GPL vmlinux 0x18ad4832 efivar_entry_find +EXPORT_SYMBOL_GPL vmlinux 0x18c0940b ata_scsi_slave_destroy +EXPORT_SYMBOL_GPL vmlinux 0x18cb21f5 crypto_unregister_rngs +EXPORT_SYMBOL_GPL vmlinux 0x18ceb713 arizona_clk32k_enable +EXPORT_SYMBOL_GPL vmlinux 0x18e4f8aa swphy_read_reg +EXPORT_SYMBOL_GPL vmlinux 0x18e9dc69 debugfs_create_ulong +EXPORT_SYMBOL_GPL vmlinux 0x18eccaae tcp_set_keepalive +EXPORT_SYMBOL_GPL vmlinux 0x18f10f38 k3_udma_glue_enable_rx_chn +EXPORT_SYMBOL_GPL vmlinux 0x18fa2cd8 xfrm_audit_state_replay_overflow +EXPORT_SYMBOL_GPL vmlinux 0x18fb2caf cpus_read_unlock +EXPORT_SYMBOL_GPL vmlinux 0x19032d6d trace_handle_return +EXPORT_SYMBOL_GPL vmlinux 0x1904a8cd dma_buf_attach +EXPORT_SYMBOL_GPL vmlinux 0x192422be gpiod_set_array_value_cansleep +EXPORT_SYMBOL_GPL vmlinux 0x192b6892 verify_signature +EXPORT_SYMBOL_GPL vmlinux 0x192be89a pci_user_write_config_byte +EXPORT_SYMBOL_GPL vmlinux 0x1946a42d fscrypt_ioctl_get_nonce +EXPORT_SYMBOL_GPL vmlinux 0x1951fea6 ethnl_cable_test_amplitude +EXPORT_SYMBOL_GPL vmlinux 0x195ee4b4 usb_kill_urb +EXPORT_SYMBOL_GPL vmlinux 0x19636983 nf_hook_entries_delete_raw +EXPORT_SYMBOL_GPL vmlinux 0x1983fad2 get_current_tty +EXPORT_SYMBOL_GPL vmlinux 0x199e6640 pkcs7_validate_trust +EXPORT_SYMBOL_GPL vmlinux 0x19a304ba usb_disabled +EXPORT_SYMBOL_GPL vmlinux 0x19aa3b07 tps65912_device_init +EXPORT_SYMBOL_GPL vmlinux 0x19aeb339 devm_gpio_free +EXPORT_SYMBOL_GPL vmlinux 0x19b15a6a xenbus_free_evtchn +EXPORT_SYMBOL_GPL vmlinux 0x19c20269 soc_device_unregister +EXPORT_SYMBOL_GPL vmlinux 0x19cd1f70 __pci_epf_register_driver +EXPORT_SYMBOL_GPL vmlinux 0x19d30733 clockevents_register_device +EXPORT_SYMBOL_GPL vmlinux 0x19dcd4fc fl6_merge_options +EXPORT_SYMBOL_GPL vmlinux 0x19e81304 btree_alloc +EXPORT_SYMBOL_GPL vmlinux 0x19ebdecf power_supply_get_by_name +EXPORT_SYMBOL_GPL vmlinux 0x19edd064 blkg_rwstat_exit +EXPORT_SYMBOL_GPL vmlinux 0x19f462ab kfree_call_rcu +EXPORT_SYMBOL_GPL vmlinux 0x1a04f93c dax_copy_to_iter +EXPORT_SYMBOL_GPL vmlinux 0x1a10c32b crypto_ft_tab +EXPORT_SYMBOL_GPL vmlinux 0x1a146ec3 usb_ep_type_string +EXPORT_SYMBOL_GPL vmlinux 0x1a180136 get_governor_parent_kobj +EXPORT_SYMBOL_GPL vmlinux 0x1a21d0cf __phy_modify_mmd_changed +EXPORT_SYMBOL_GPL vmlinux 0x1a248b31 da903x_update +EXPORT_SYMBOL_GPL vmlinux 0x1a3701ed spi_take_timestamp_post +EXPORT_SYMBOL_GPL vmlinux 0x1a4161ab ip_fib_metrics_init +EXPORT_SYMBOL_GPL vmlinux 0x1a43751b regulator_list_voltage_table +EXPORT_SYMBOL_GPL vmlinux 0x1a5a3731 regulator_get_current_limit +EXPORT_SYMBOL_GPL vmlinux 0x1a5b3d80 spi_async_locked +EXPORT_SYMBOL_GPL vmlinux 0x1a5c5ac4 modify_user_hw_breakpoint +EXPORT_SYMBOL_GPL vmlinux 0x1a631142 adp5520_read +EXPORT_SYMBOL_GPL vmlinux 0x1a6bf28f fsnotify_get_cookie +EXPORT_SYMBOL_GPL vmlinux 0x1a742a10 debugfs_create_x16 +EXPORT_SYMBOL_GPL vmlinux 0x1a77903a of_alias_get_alias_list +EXPORT_SYMBOL_GPL vmlinux 0x1a8228d5 pci_epf_destroy +EXPORT_SYMBOL_GPL vmlinux 0x1a866c33 usb_disable_xhci_ports +EXPORT_SYMBOL_GPL vmlinux 0x1ab135ee ahci_do_hardreset +EXPORT_SYMBOL_GPL vmlinux 0x1ab53dce devm_hwmon_device_register_with_info +EXPORT_SYMBOL_GPL vmlinux 0x1ac458a1 public_key_signature_free +EXPORT_SYMBOL_GPL vmlinux 0x1acd18c8 cpuset_cgrp_subsys_on_dfl_key +EXPORT_SYMBOL_GPL vmlinux 0x1ace5adc clk_register_hisi_phase +EXPORT_SYMBOL_GPL vmlinux 0x1ad8b714 sdio_claim_host +EXPORT_SYMBOL_GPL vmlinux 0x1ade585d __crypto_alloc_tfm +EXPORT_SYMBOL_GPL vmlinux 0x1af267f8 int_pow +EXPORT_SYMBOL_GPL vmlinux 0x1afbbcc3 bpf_trace_run2 +EXPORT_SYMBOL_GPL vmlinux 0x1b1471f3 alarm_start +EXPORT_SYMBOL_GPL vmlinux 0x1b1c23f0 of_property_read_variable_u8_array +EXPORT_SYMBOL_GPL vmlinux 0x1b261333 apply_to_page_range +EXPORT_SYMBOL_GPL vmlinux 0x1b2c71e5 pci_host_probe +EXPORT_SYMBOL_GPL vmlinux 0x1b35065c gpiochip_line_is_open_source +EXPORT_SYMBOL_GPL vmlinux 0x1b38b181 device_connection_remove +EXPORT_SYMBOL_GPL vmlinux 0x1b3cb0c9 __srcu_notifier_call_chain +EXPORT_SYMBOL_GPL vmlinux 0x1b4051ad trace_event_buffer_lock_reserve +EXPORT_SYMBOL_GPL vmlinux 0x1b454a86 phy_restore_page +EXPORT_SYMBOL_GPL vmlinux 0x1b5059ce ata_id_xfermask +EXPORT_SYMBOL_GPL vmlinux 0x1b6131b9 alloc_iova_fast +EXPORT_SYMBOL_GPL vmlinux 0x1b78e29c dpcon_reset +EXPORT_SYMBOL_GPL vmlinux 0x1b8822d8 pinctrl_gpio_direction_output +EXPORT_SYMBOL_GPL vmlinux 0x1b92e41d inet_putpeer +EXPORT_SYMBOL_GPL vmlinux 0x1ba588ed scsi_dh_attached_handler_name +EXPORT_SYMBOL_GPL vmlinux 0x1bb199ea relay_subbufs_consumed +EXPORT_SYMBOL_GPL vmlinux 0x1bbbcf24 pci_epc_get_msi +EXPORT_SYMBOL_GPL vmlinux 0x1bc5eebe pinctrl_gpio_direction_input +EXPORT_SYMBOL_GPL vmlinux 0x1bc8f1ba pci_ignore_hotplug +EXPORT_SYMBOL_GPL vmlinux 0x1bdc601c devfreq_event_get_edev_count +EXPORT_SYMBOL_GPL vmlinux 0x1bdf7a21 sprd_pinctrl_remove +EXPORT_SYMBOL_GPL vmlinux 0x1becde8a gpiod_get_raw_value_cansleep +EXPORT_SYMBOL_GPL vmlinux 0x1bee4974 sg_alloc_table_chained +EXPORT_SYMBOL_GPL vmlinux 0x1bf39d5a rio_add_net +EXPORT_SYMBOL_GPL vmlinux 0x1c0af502 pci_add_dynid +EXPORT_SYMBOL_GPL vmlinux 0x1c183fb6 pci_remove_root_bus +EXPORT_SYMBOL_GPL vmlinux 0x1c1f36b0 usb_unpoison_urb +EXPORT_SYMBOL_GPL vmlinux 0x1c224004 devm_gpiod_get_array_optional +EXPORT_SYMBOL_GPL vmlinux 0x1c413cb6 mtk_pinconf_bias_get +EXPORT_SYMBOL_GPL vmlinux 0x1c44b902 __blocking_notifier_call_chain +EXPORT_SYMBOL_GPL vmlinux 0x1c499945 elv_rqhash_del +EXPORT_SYMBOL_GPL vmlinux 0x1c4f3b68 clk_fixed_factor_ops +EXPORT_SYMBOL_GPL vmlinux 0x1c54846a gpiochip_is_requested +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 0x1c77d4c5 component_add +EXPORT_SYMBOL_GPL vmlinux 0x1c80366a gpiod_set_config +EXPORT_SYMBOL_GPL vmlinux 0x1c80d27d btree_geo128 +EXPORT_SYMBOL_GPL vmlinux 0x1c87a811 __round_jiffies_up +EXPORT_SYMBOL_GPL vmlinux 0x1c89fb22 zynqmp_pm_clock_setparent +EXPORT_SYMBOL_GPL vmlinux 0x1ca4a930 smp_call_function_any +EXPORT_SYMBOL_GPL vmlinux 0x1ca4db14 dm_accept_partial_bio +EXPORT_SYMBOL_GPL vmlinux 0x1cacd79b amba_device_alloc +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 0x1cc36ec0 mmc_regulator_set_vqmmc +EXPORT_SYMBOL_GPL vmlinux 0x1cce82ca lwtunnel_output +EXPORT_SYMBOL_GPL vmlinux 0x1ccfc7aa rio_release_inb_pwrite +EXPORT_SYMBOL_GPL vmlinux 0x1cd1f436 clk_regmap_divider_ops +EXPORT_SYMBOL_GPL vmlinux 0x1cd4154a dev_pm_opp_find_freq_ceil +EXPORT_SYMBOL_GPL vmlinux 0x1cdd07f8 pwm_request +EXPORT_SYMBOL_GPL vmlinux 0x1cf43e8c governor_sysfs_ops +EXPORT_SYMBOL_GPL vmlinux 0x1cf7c6de dma_async_device_channel_unregister +EXPORT_SYMBOL_GPL vmlinux 0x1cf902b2 pci_epf_match_device +EXPORT_SYMBOL_GPL vmlinux 0x1cfd34bf sysfs_remove_bin_file +EXPORT_SYMBOL_GPL vmlinux 0x1cff547e __xenbus_register_frontend +EXPORT_SYMBOL_GPL vmlinux 0x1d162d94 pwm_free +EXPORT_SYMBOL_GPL vmlinux 0x1d222ced irq_get_irqchip_state +EXPORT_SYMBOL_GPL vmlinux 0x1d289f43 devm_gpiod_get_index +EXPORT_SYMBOL_GPL vmlinux 0x1d374448 fsl_mc_bus_dpbp_type +EXPORT_SYMBOL_GPL vmlinux 0x1d511d86 crypto_stats_akcipher_decrypt +EXPORT_SYMBOL_GPL vmlinux 0x1d555f9b usb_disable_ltm +EXPORT_SYMBOL_GPL vmlinux 0x1d77b0f8 unix_socket_table +EXPORT_SYMBOL_GPL vmlinux 0x1d845fed vfs_listxattr +EXPORT_SYMBOL_GPL vmlinux 0x1d88a595 tcp_ca_get_key_by_name +EXPORT_SYMBOL_GPL vmlinux 0x1d8d4a26 platform_add_devices +EXPORT_SYMBOL_GPL vmlinux 0x1d94a218 dmi_memdev_handle +EXPORT_SYMBOL_GPL vmlinux 0x1d9fcc50 pci_enable_ats +EXPORT_SYMBOL_GPL vmlinux 0x1dae6328 regulator_get_voltage_rdev +EXPORT_SYMBOL_GPL vmlinux 0x1dc71634 vfs_write +EXPORT_SYMBOL_GPL vmlinux 0x1dc9081c da9052_enable_irq +EXPORT_SYMBOL_GPL vmlinux 0x1dd69f04 dev_pm_qos_hide_flags +EXPORT_SYMBOL_GPL vmlinux 0x1deadc2d fb_deferred_io_cleanup +EXPORT_SYMBOL_GPL vmlinux 0x1e0670c6 reset_control_release +EXPORT_SYMBOL_GPL vmlinux 0x1e356d0e phy_power_off +EXPORT_SYMBOL_GPL vmlinux 0x1e3b41ba __rtnl_link_register +EXPORT_SYMBOL_GPL vmlinux 0x1e3e9067 of_clk_get_from_provider +EXPORT_SYMBOL_GPL vmlinux 0x1e408231 blk_mq_freeze_queue_wait +EXPORT_SYMBOL_GPL vmlinux 0x1e4b374f rdev_get_id +EXPORT_SYMBOL_GPL vmlinux 0x1e51dabb __tracepoint_detach_device_from_domain +EXPORT_SYMBOL_GPL vmlinux 0x1e5be608 devlink_params_unpublish +EXPORT_SYMBOL_GPL vmlinux 0x1e7034b8 gpiod_set_raw_array_value_cansleep +EXPORT_SYMBOL_GPL vmlinux 0x1e7bbcb3 kernel_restart +EXPORT_SYMBOL_GPL vmlinux 0x1e7c49e0 gnttab_dma_free_pages +EXPORT_SYMBOL_GPL vmlinux 0x1e83fee6 HYPERVISOR_physdev_op +EXPORT_SYMBOL_GPL vmlinux 0x1e8a7e72 debugfs_create_dir +EXPORT_SYMBOL_GPL vmlinux 0x1e8fac8e wireless_nlevent_flush +EXPORT_SYMBOL_GPL vmlinux 0x1e9bc719 freq_qos_update_request +EXPORT_SYMBOL_GPL vmlinux 0x1ea417f5 driver_register +EXPORT_SYMBOL_GPL vmlinux 0x1ea997cd __srcu_read_lock +EXPORT_SYMBOL_GPL vmlinux 0x1eaec09e sbitmap_get +EXPORT_SYMBOL_GPL vmlinux 0x1eaed315 cgroup_get_from_fd +EXPORT_SYMBOL_GPL vmlinux 0x1eb9516e round_jiffies_relative +EXPORT_SYMBOL_GPL vmlinux 0x1ebf6c2a pci_power_names +EXPORT_SYMBOL_GPL vmlinux 0x1ec311e0 ata_port_freeze +EXPORT_SYMBOL_GPL vmlinux 0x1ecaaa36 pm_generic_restore +EXPORT_SYMBOL_GPL vmlinux 0x1ed2afb9 yield_to +EXPORT_SYMBOL_GPL vmlinux 0x1ed4e026 of_clk_src_simple_get +EXPORT_SYMBOL_GPL vmlinux 0x1edab433 rio_mport_chk_dev_access +EXPORT_SYMBOL_GPL vmlinux 0x1ee7d3cd hrtimer_init +EXPORT_SYMBOL_GPL vmlinux 0x1ee87538 serdev_device_open +EXPORT_SYMBOL_GPL vmlinux 0x1ee96563 blk_rq_prep_clone +EXPORT_SYMBOL_GPL vmlinux 0x1ef130e8 devm_gpiod_get +EXPORT_SYMBOL_GPL vmlinux 0x1efb0340 devm_power_supply_get_by_phandle +EXPORT_SYMBOL_GPL vmlinux 0x1f0cb5bf pm_power_off_prepare +EXPORT_SYMBOL_GPL vmlinux 0x1f193601 usb_ifnum_to_if +EXPORT_SYMBOL_GPL vmlinux 0x1f1cc011 zynqmp_pm_get_chipid +EXPORT_SYMBOL_GPL vmlinux 0x1f26eb14 da9052_adc_read_temp +EXPORT_SYMBOL_GPL vmlinux 0x1f2b9ee4 regmap_reinit_cache +EXPORT_SYMBOL_GPL vmlinux 0x1f2fcd06 gpiod_get_raw_array_value_cansleep +EXPORT_SYMBOL_GPL vmlinux 0x1f36734a kvm_release_page_clean +EXPORT_SYMBOL_GPL vmlinux 0x1f449588 mctrl_gpio_disable_ms +EXPORT_SYMBOL_GPL vmlinux 0x1f563160 bpf_offload_dev_priv +EXPORT_SYMBOL_GPL vmlinux 0x1f665fd6 mpc8xxx_spi_rx_buf_u8 +EXPORT_SYMBOL_GPL vmlinux 0x1f67cd47 crypto_register_ahashes +EXPORT_SYMBOL_GPL vmlinux 0x1f7f2dc4 bpf_prog_inc_not_zero +EXPORT_SYMBOL_GPL vmlinux 0x1f835f67 gpiod_get_value_cansleep +EXPORT_SYMBOL_GPL vmlinux 0x1f8544b8 panic_timeout +EXPORT_SYMBOL_GPL vmlinux 0x1f9a2b53 zynqmp_pm_clock_enable +EXPORT_SYMBOL_GPL vmlinux 0x1f9f963e uprobe_register_refctr +EXPORT_SYMBOL_GPL vmlinux 0x1fa1d95c sha256_zero_message_hash +EXPORT_SYMBOL_GPL vmlinux 0x1faa7f92 add_to_page_cache_lru +EXPORT_SYMBOL_GPL vmlinux 0x1fae048c rio_del_device +EXPORT_SYMBOL_GPL vmlinux 0x1fb70eb9 gnttab_end_foreign_transfer_ref +EXPORT_SYMBOL_GPL vmlinux 0x1fbaf10b spi_split_transfers_maxsize +EXPORT_SYMBOL_GPL vmlinux 0x1fc25ec4 blk_mq_freeze_queue +EXPORT_SYMBOL_GPL vmlinux 0x1fcf18c4 gov_attr_set_get +EXPORT_SYMBOL_GPL vmlinux 0x1fd20918 fuse_do_open +EXPORT_SYMBOL_GPL vmlinux 0x1fe41ebb ata_pci_remove_one +EXPORT_SYMBOL_GPL vmlinux 0x1fe6e504 gpiod_add_hogs +EXPORT_SYMBOL_GPL vmlinux 0x1fe79af8 sock_diag_destroy +EXPORT_SYMBOL_GPL vmlinux 0x1feb8268 get_task_mm +EXPORT_SYMBOL_GPL vmlinux 0x1fed6dad i2c_adapter_type +EXPORT_SYMBOL_GPL vmlinux 0x1fee7136 trace_seq_putc +EXPORT_SYMBOL_GPL vmlinux 0x1ff6f58b ahci_platform_disable_resources +EXPORT_SYMBOL_GPL vmlinux 0x200d617c pci_reset_bus +EXPORT_SYMBOL_GPL vmlinux 0x20290cf9 of_i2c_setup_smbus_alert +EXPORT_SYMBOL_GPL vmlinux 0x202d4ed6 nvmem_cell_write +EXPORT_SYMBOL_GPL vmlinux 0x2041a1e6 nvdimm_volatile_region_create +EXPORT_SYMBOL_GPL vmlinux 0x2041cb3a of_pci_get_max_link_speed +EXPORT_SYMBOL_GPL vmlinux 0x2049c4c8 regmap_irq_get_domain +EXPORT_SYMBOL_GPL vmlinux 0x204a2f26 ata_qc_get_active +EXPORT_SYMBOL_GPL vmlinux 0x204f2c5c gnttab_free_grant_reference +EXPORT_SYMBOL_GPL vmlinux 0x20500165 cpufreq_freq_attr_scaling_boost_freqs +EXPORT_SYMBOL_GPL vmlinux 0x206dd578 acpi_debugfs_dir +EXPORT_SYMBOL_GPL vmlinux 0x2077035b uart_handle_cts_change +EXPORT_SYMBOL_GPL vmlinux 0x207e4f2c acpi_irq_create_hierarchy +EXPORT_SYMBOL_GPL vmlinux 0x20835a9f __xdp_release_frame +EXPORT_SYMBOL_GPL vmlinux 0x2086ec74 devm_gpiod_get_from_of_node +EXPORT_SYMBOL_GPL vmlinux 0x208bfafb unregister_trace_event +EXPORT_SYMBOL_GPL vmlinux 0x2093f4dd clk_register_divider_table +EXPORT_SYMBOL_GPL vmlinux 0x20978fb9 idr_find +EXPORT_SYMBOL_GPL vmlinux 0x209cc645 dax_iomap_rw +EXPORT_SYMBOL_GPL vmlinux 0x209ecdb9 gpiod_set_value +EXPORT_SYMBOL_GPL vmlinux 0x20a61322 scsi_queue_work +EXPORT_SYMBOL_GPL vmlinux 0x20b1b407 ohci_init_driver +EXPORT_SYMBOL_GPL vmlinux 0x20c82ee6 fwnode_graph_get_remote_port_parent +EXPORT_SYMBOL_GPL vmlinux 0x20eee1fe usb_lock_device_for_reset +EXPORT_SYMBOL_GPL vmlinux 0x20f9ab1c mtk_pinconf_bias_disable_set_rev1 +EXPORT_SYMBOL_GPL vmlinux 0x20fc2dd6 phy_optional_get +EXPORT_SYMBOL_GPL vmlinux 0x2119d1c1 usb_hcd_platform_shutdown +EXPORT_SYMBOL_GPL vmlinux 0x2126d3f6 of_property_read_u64 +EXPORT_SYMBOL_GPL vmlinux 0x2133eb9e pci_epf_unbind +EXPORT_SYMBOL_GPL vmlinux 0x216de4e1 rcu_get_gp_kthreads_prio +EXPORT_SYMBOL_GPL vmlinux 0x2176e42a hwpoison_filter_memcg +EXPORT_SYMBOL_GPL vmlinux 0x217f1327 xfrm_audit_policy_delete +EXPORT_SYMBOL_GPL vmlinux 0x218a6c7f __pm_relax +EXPORT_SYMBOL_GPL vmlinux 0x21a563da clk_get_accuracy +EXPORT_SYMBOL_GPL vmlinux 0x21a9d793 __gfn_to_pfn_memslot +EXPORT_SYMBOL_GPL vmlinux 0x21ac8b77 iommu_group_get_by_id +EXPORT_SYMBOL_GPL vmlinux 0x21b9f28b edac_pci_free_ctl_info +EXPORT_SYMBOL_GPL vmlinux 0x21c0c206 device_show_bool +EXPORT_SYMBOL_GPL vmlinux 0x21c34c8f gnttab_end_foreign_transfer +EXPORT_SYMBOL_GPL vmlinux 0x21cd536a crypto_put_default_null_skcipher +EXPORT_SYMBOL_GPL vmlinux 0x21da7394 debugfs_remove +EXPORT_SYMBOL_GPL vmlinux 0x2211a4c0 blk_op_str +EXPORT_SYMBOL_GPL vmlinux 0x221eab6d scatterwalk_copychunks +EXPORT_SYMBOL_GPL vmlinux 0x2220b1b7 rtnl_af_register +EXPORT_SYMBOL_GPL vmlinux 0x2228b824 spi_slave_abort +EXPORT_SYMBOL_GPL vmlinux 0x223d33d5 acpi_pci_find_root +EXPORT_SYMBOL_GPL vmlinux 0x2246b4dd __tracepoint_block_bio_remap +EXPORT_SYMBOL_GPL vmlinux 0x224f51bf nvmem_device_cell_read +EXPORT_SYMBOL_GPL vmlinux 0x22678c62 wb_writeout_inc +EXPORT_SYMBOL_GPL vmlinux 0x228b0d05 regcache_mark_dirty +EXPORT_SYMBOL_GPL vmlinux 0x2291ebf1 __pm_runtime_set_status +EXPORT_SYMBOL_GPL vmlinux 0x229402ae sk_msg_free +EXPORT_SYMBOL_GPL vmlinux 0x229bb513 acpi_dma_controller_free +EXPORT_SYMBOL_GPL vmlinux 0x229e8602 syscon_regmap_lookup_by_phandle_args +EXPORT_SYMBOL_GPL vmlinux 0x22b03d5b devm_kmemdup +EXPORT_SYMBOL_GPL vmlinux 0x22bcddb3 devm_clk_register +EXPORT_SYMBOL_GPL vmlinux 0x22cfc72e irq_set_default_host +EXPORT_SYMBOL_GPL vmlinux 0x22d9409b iomap_sort_ioends +EXPORT_SYMBOL_GPL vmlinux 0x22d95533 regulator_count_voltages +EXPORT_SYMBOL_GPL vmlinux 0x22ec5205 cpu_latency_qos_remove_request +EXPORT_SYMBOL_GPL vmlinux 0x22fca1f4 xhci_ext_cap_init +EXPORT_SYMBOL_GPL vmlinux 0x22fce829 gpiochip_line_is_open_drain +EXPORT_SYMBOL_GPL vmlinux 0x22fd08ba cpuacct_cgrp_subsys_on_dfl_key +EXPORT_SYMBOL_GPL vmlinux 0x2305f0b9 pinconf_generic_dt_subnode_to_map +EXPORT_SYMBOL_GPL vmlinux 0x2318bd5f bpf_map_inc_not_zero +EXPORT_SYMBOL_GPL vmlinux 0x2326717e gfn_to_pfn_memslot +EXPORT_SYMBOL_GPL vmlinux 0x232a46dd ip6_datagram_connect +EXPORT_SYMBOL_GPL vmlinux 0x233862bc unregister_pernet_device +EXPORT_SYMBOL_GPL vmlinux 0x233a2051 sync_page_io +EXPORT_SYMBOL_GPL vmlinux 0x233be5c1 fsl_mc_resource_allocate +EXPORT_SYMBOL_GPL vmlinux 0x234027ab fsverity_prepare_setattr +EXPORT_SYMBOL_GPL vmlinux 0x23412816 rtc_tm_to_ktime +EXPORT_SYMBOL_GPL vmlinux 0x23484a0a rio_unmap_inb_region +EXPORT_SYMBOL_GPL vmlinux 0x234cf416 devlink_fmsg_string_pair_put +EXPORT_SYMBOL_GPL vmlinux 0x23517e3e debugfs_create_atomic_t +EXPORT_SYMBOL_GPL vmlinux 0x235581f1 pci_msi_create_irq_domain +EXPORT_SYMBOL_GPL vmlinux 0x236773a0 phy_set_mode_ext +EXPORT_SYMBOL_GPL vmlinux 0x23728794 to_nvdimm_bus +EXPORT_SYMBOL_GPL vmlinux 0x237b5319 gpiochip_request_own_desc +EXPORT_SYMBOL_GPL vmlinux 0x2380cec9 device_connection_add +EXPORT_SYMBOL_GPL vmlinux 0x23864ce7 cpuset_mem_spread_node +EXPORT_SYMBOL_GPL vmlinux 0x2396c7f0 clk_set_parent +EXPORT_SYMBOL_GPL vmlinux 0x23a63150 bpf_prog_get_type_dev +EXPORT_SYMBOL_GPL vmlinux 0x23b025d3 ata_pci_device_resume +EXPORT_SYMBOL_GPL vmlinux 0x23bbdc66 acpi_device_fwnode_ops +EXPORT_SYMBOL_GPL vmlinux 0x23ce84cf hwspin_lock_get_id +EXPORT_SYMBOL_GPL vmlinux 0x23d31f8a evm_inode_init_security +EXPORT_SYMBOL_GPL vmlinux 0x23f731e1 spi_mem_supports_op +EXPORT_SYMBOL_GPL vmlinux 0x23f7ef34 gpiod_get_array_optional +EXPORT_SYMBOL_GPL vmlinux 0x23fe528d __vfs_setxattr_locked +EXPORT_SYMBOL_GPL vmlinux 0x2403c7bd of_dma_controller_register +EXPORT_SYMBOL_GPL vmlinux 0x24085efe vchan_find_desc +EXPORT_SYMBOL_GPL vmlinux 0x241f8e94 zynqmp_pm_set_requirement +EXPORT_SYMBOL_GPL vmlinux 0x243f0b4b crypto_check_attr_type +EXPORT_SYMBOL_GPL vmlinux 0x24565fb3 pinctrl_remove_gpio_range +EXPORT_SYMBOL_GPL vmlinux 0x24596a95 __fsnotify_inode_delete +EXPORT_SYMBOL_GPL vmlinux 0x245f5b8d __efivar_entry_iter +EXPORT_SYMBOL_GPL vmlinux 0x24603efc crypto_register_alg +EXPORT_SYMBOL_GPL vmlinux 0x2462acb2 mctrl_gpio_init_noauto +EXPORT_SYMBOL_GPL vmlinux 0x2464da17 gen_pool_size +EXPORT_SYMBOL_GPL vmlinux 0x2478e550 tpm_tis_resume +EXPORT_SYMBOL_GPL vmlinux 0x247ef831 kdb_unregister +EXPORT_SYMBOL_GPL vmlinux 0x24a86d9b led_blink_set +EXPORT_SYMBOL_GPL vmlinux 0x24ad11db wakeup_sources_read_unlock +EXPORT_SYMBOL_GPL vmlinux 0x24b9a793 fib_table_lookup +EXPORT_SYMBOL_GPL vmlinux 0x24da0093 rcu_inkernel_boot_has_ended +EXPORT_SYMBOL_GPL vmlinux 0x24eb7e32 leds_list +EXPORT_SYMBOL_GPL vmlinux 0x24f00a26 tps6586x_reads +EXPORT_SYMBOL_GPL vmlinux 0x24f1cafb tcp_enter_memory_pressure +EXPORT_SYMBOL_GPL vmlinux 0x24f2843b iommu_domain_window_enable +EXPORT_SYMBOL_GPL vmlinux 0x24f304a7 lwtunnel_build_state +EXPORT_SYMBOL_GPL vmlinux 0x24f39c39 reset_control_reset +EXPORT_SYMBOL_GPL vmlinux 0x24f63dcf ata_xfer_mask2mode +EXPORT_SYMBOL_GPL vmlinux 0x2515364a of_device_request_module +EXPORT_SYMBOL_GPL vmlinux 0x25202b74 lwtunnel_fill_encap +EXPORT_SYMBOL_GPL vmlinux 0x25219767 dpbp_close +EXPORT_SYMBOL_GPL vmlinux 0x25301bc6 arch_wb_cache_pmem +EXPORT_SYMBOL_GPL vmlinux 0x25379e73 clk_set_min_rate +EXPORT_SYMBOL_GPL vmlinux 0x253d9a41 __efivar_entry_delete +EXPORT_SYMBOL_GPL vmlinux 0x254afb32 cdrom_read_tocentry +EXPORT_SYMBOL_GPL vmlinux 0x255ece09 ata_pci_bmdma_init_one +EXPORT_SYMBOL_GPL vmlinux 0x25697a3f wm8350_device_init +EXPORT_SYMBOL_GPL vmlinux 0x256a784c disable_kprobe +EXPORT_SYMBOL_GPL vmlinux 0x2574da11 zynqmp_pm_write_pggs +EXPORT_SYMBOL_GPL vmlinux 0x2592fc6c console_printk +EXPORT_SYMBOL_GPL vmlinux 0x25937470 irq_domain_push_irq +EXPORT_SYMBOL_GPL vmlinux 0x259661a5 __bio_try_merge_page +EXPORT_SYMBOL_GPL vmlinux 0x25975e84 usb_get_intf +EXPORT_SYMBOL_GPL vmlinux 0x2597ed3e security_path_link +EXPORT_SYMBOL_GPL vmlinux 0x25a010cf crypto_register_rng +EXPORT_SYMBOL_GPL vmlinux 0x25adda2a k3_udma_glue_push_rx_chn +EXPORT_SYMBOL_GPL vmlinux 0x25b0ab25 acpi_register_gsi +EXPORT_SYMBOL_GPL vmlinux 0x25ba1b3a clk_hw_unregister_fixed_rate +EXPORT_SYMBOL_GPL vmlinux 0x25bd7b2b cpu_device_create +EXPORT_SYMBOL_GPL vmlinux 0x25ca67bc alloc_skb_for_msg +EXPORT_SYMBOL_GPL vmlinux 0x25d38ab7 page_cache_async_readahead +EXPORT_SYMBOL_GPL vmlinux 0x25dfbfef check_move_unevictable_pages +EXPORT_SYMBOL_GPL vmlinux 0x25ec019e xenbus_dev_probe +EXPORT_SYMBOL_GPL vmlinux 0x25ef1ee9 dev_pm_set_wake_irq +EXPORT_SYMBOL_GPL vmlinux 0x25f02cd5 __blk_mq_debugfs_rq_show +EXPORT_SYMBOL_GPL vmlinux 0x25f0bdce clock_cooling_unregister +EXPORT_SYMBOL_GPL vmlinux 0x26036e23 of_irq_find_parent +EXPORT_SYMBOL_GPL vmlinux 0x2609ea56 dev_pm_opp_add +EXPORT_SYMBOL_GPL vmlinux 0x26107b24 usb_anchor_urb +EXPORT_SYMBOL_GPL vmlinux 0x26212980 xhci_mtk_sch_init +EXPORT_SYMBOL_GPL vmlinux 0x262550b9 device_del +EXPORT_SYMBOL_GPL vmlinux 0x26302138 da9052_disable_irq_nosync +EXPORT_SYMBOL_GPL vmlinux 0x26398083 __regmap_init_spi +EXPORT_SYMBOL_GPL vmlinux 0x263f039e xas_nomem +EXPORT_SYMBOL_GPL vmlinux 0x264a1c28 devfreq_event_set_event +EXPORT_SYMBOL_GPL vmlinux 0x2650458f gnttab_page_cache_put +EXPORT_SYMBOL_GPL vmlinux 0x26517878 spi_res_release +EXPORT_SYMBOL_GPL vmlinux 0x26520970 vm_memory_committed +EXPORT_SYMBOL_GPL vmlinux 0x26548e9e kvm_release_page_dirty +EXPORT_SYMBOL_GPL vmlinux 0x265bbef9 kexec_crash_loaded +EXPORT_SYMBOL_GPL vmlinux 0x26688e91 pcie_has_flr +EXPORT_SYMBOL_GPL vmlinux 0x2669ddea wm5102_i2c_regmap +EXPORT_SYMBOL_GPL vmlinux 0x266ca9ca devm_led_classdev_register_ext +EXPORT_SYMBOL_GPL vmlinux 0x2672505f pci_aer_clear_nonfatal_status +EXPORT_SYMBOL_GPL vmlinux 0x267df662 smp_call_on_cpu +EXPORT_SYMBOL_GPL vmlinux 0x267fdef5 preempt_notifier_unregister +EXPORT_SYMBOL_GPL vmlinux 0x269652bd inet_csk_reqsk_queue_hash_add +EXPORT_SYMBOL_GPL vmlinux 0x26a01c4c tty_port_register_device_serdev +EXPORT_SYMBOL_GPL vmlinux 0x26a0c88e bgmac_enet_suspend +EXPORT_SYMBOL_GPL vmlinux 0x26aa8226 inet_csk_listen_start +EXPORT_SYMBOL_GPL vmlinux 0x26ab4755 put_old_itimerspec32 +EXPORT_SYMBOL_GPL vmlinux 0x26afd0e5 regmap_fields_read +EXPORT_SYMBOL_GPL vmlinux 0x26c622ee percpu_ref_switch_to_percpu +EXPORT_SYMBOL_GPL vmlinux 0x26c7569e sock_diag_put_meminfo +EXPORT_SYMBOL_GPL vmlinux 0x26c90ea4 scsi_eh_get_sense +EXPORT_SYMBOL_GPL vmlinux 0x26ed2186 register_vmap_purge_notifier +EXPORT_SYMBOL_GPL vmlinux 0x27046576 kvm_exit +EXPORT_SYMBOL_GPL vmlinux 0x2706749e crypto_alloc_tfm +EXPORT_SYMBOL_GPL vmlinux 0x270ad399 inet6_csk_xmit +EXPORT_SYMBOL_GPL vmlinux 0x27191575 usb_reset_configuration +EXPORT_SYMBOL_GPL vmlinux 0x27220bbe regulator_get_bypass_regmap +EXPORT_SYMBOL_GPL vmlinux 0x272e9d77 hisi_reset_exit +EXPORT_SYMBOL_GPL vmlinux 0x273cc6cc devlink_reload_enable +EXPORT_SYMBOL_GPL vmlinux 0x274cf5e1 __clk_get_flags +EXPORT_SYMBOL_GPL vmlinux 0x274dd1a3 sg_free_table_chained +EXPORT_SYMBOL_GPL vmlinux 0x276690d7 ethnl_cable_test_step +EXPORT_SYMBOL_GPL vmlinux 0x27715e4a enable_kprobe +EXPORT_SYMBOL_GPL vmlinux 0x27732367 of_hwspin_lock_get_id_byname +EXPORT_SYMBOL_GPL vmlinux 0x2773c485 __wake_up_locked +EXPORT_SYMBOL_GPL vmlinux 0x277fc368 ksm_madvise +EXPORT_SYMBOL_GPL vmlinux 0x2780da8c __clk_determine_rate +EXPORT_SYMBOL_GPL vmlinux 0x278a4490 extcon_set_state_sync +EXPORT_SYMBOL_GPL vmlinux 0x27904241 fsnotify_find_mark +EXPORT_SYMBOL_GPL vmlinux 0x27a3ed1f bus_find_device +EXPORT_SYMBOL_GPL vmlinux 0x27b6c0ae xenbus_dev_suspend +EXPORT_SYMBOL_GPL vmlinux 0x27bc8d8a adp5520_write +EXPORT_SYMBOL_GPL vmlinux 0x27bcc163 blk_mq_sched_try_insert_merge +EXPORT_SYMBOL_GPL vmlinux 0x27c0cae8 dev_pm_qos_hide_latency_tolerance +EXPORT_SYMBOL_GPL vmlinux 0x27f01c9f device_match_of_node +EXPORT_SYMBOL_GPL vmlinux 0x27f03f1c acpi_dma_controller_register +EXPORT_SYMBOL_GPL vmlinux 0x27f4f029 ftrace_set_global_filter +EXPORT_SYMBOL_GPL vmlinux 0x27f69da3 pm_runtime_set_memalloc_noio +EXPORT_SYMBOL_GPL vmlinux 0x27fa66e1 nr_free_buffer_pages +EXPORT_SYMBOL_GPL vmlinux 0x27ff7421 irq_domain_xlate_onecell +EXPORT_SYMBOL_GPL vmlinux 0x2804c980 tpmm_chip_alloc +EXPORT_SYMBOL_GPL vmlinux 0x2815cb26 ata_ehi_push_desc +EXPORT_SYMBOL_GPL vmlinux 0x2817f7fd cppc_get_desired_perf +EXPORT_SYMBOL_GPL vmlinux 0x28184c23 regulator_set_active_discharge_regmap +EXPORT_SYMBOL_GPL vmlinux 0x281b2dc4 kthread_func +EXPORT_SYMBOL_GPL vmlinux 0x282cdabc usb_led_activity +EXPORT_SYMBOL_GPL vmlinux 0x28402a25 gpiochip_reqres_irq +EXPORT_SYMBOL_GPL vmlinux 0x284fe794 percpu_ref_exit +EXPORT_SYMBOL_GPL vmlinux 0x286133d7 __bdev_dax_supported +EXPORT_SYMBOL_GPL vmlinux 0x2864abc9 klist_node_attached +EXPORT_SYMBOL_GPL vmlinux 0x286b7e8a arizona_free_irq +EXPORT_SYMBOL_GPL vmlinux 0x286cc647 async_synchronize_cookie_domain +EXPORT_SYMBOL_GPL vmlinux 0x2873558d ata_port_desc +EXPORT_SYMBOL_GPL vmlinux 0x2882d40e usb_role_switch_unregister +EXPORT_SYMBOL_GPL vmlinux 0x289b2712 power_supply_put_battery_info +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 0x28b030d2 of_overlay_notifier_unregister +EXPORT_SYMBOL_GPL vmlinux 0x28b97529 kvm_vcpu_destroy +EXPORT_SYMBOL_GPL vmlinux 0x28bc4dcc ata_sas_queuecmd +EXPORT_SYMBOL_GPL vmlinux 0x28c77c70 sprd_pinctrl_core_probe +EXPORT_SYMBOL_GPL vmlinux 0x28e2f102 edac_mc_add_mc_with_groups +EXPORT_SYMBOL_GPL vmlinux 0x28f26684 irq_set_affinity_hint +EXPORT_SYMBOL_GPL vmlinux 0x28f431e1 __tcp_bpf_recvmsg +EXPORT_SYMBOL_GPL vmlinux 0x29186256 blkcg_deactivate_policy +EXPORT_SYMBOL_GPL vmlinux 0x291f88b0 dma_resv_test_signaled_rcu +EXPORT_SYMBOL_GPL vmlinux 0x29252e74 __tracepoint_block_unplug +EXPORT_SYMBOL_GPL vmlinux 0x295b982a hisi_clk_register_fixed_rate +EXPORT_SYMBOL_GPL vmlinux 0x2965103e user_update +EXPORT_SYMBOL_GPL vmlinux 0x2967ef7c cgrp_dfl_root +EXPORT_SYMBOL_GPL vmlinux 0x29751d42 bpf_trace_run11 +EXPORT_SYMBOL_GPL vmlinux 0x29882094 mtk_pinconf_drive_get_rev1 +EXPORT_SYMBOL_GPL vmlinux 0x2988b20a hwspin_lock_free +EXPORT_SYMBOL_GPL vmlinux 0x29984a82 handle_level_irq +EXPORT_SYMBOL_GPL vmlinux 0x299dbf20 irq_domain_xlate_twocell +EXPORT_SYMBOL_GPL vmlinux 0x29b149e4 unregister_hw_breakpoint +EXPORT_SYMBOL_GPL vmlinux 0x29b1f92d balloon_aops +EXPORT_SYMBOL_GPL vmlinux 0x29bc1dd3 led_set_brightness_nosleep +EXPORT_SYMBOL_GPL vmlinux 0x29d4d07f irq_domain_free_irqs_parent +EXPORT_SYMBOL_GPL vmlinux 0x29d54a05 blkcg_activate_policy +EXPORT_SYMBOL_GPL vmlinux 0x29d76547 k3_udma_glue_tdown_rx_chn +EXPORT_SYMBOL_GPL vmlinux 0x29d933fb irq_domain_add_simple +EXPORT_SYMBOL_GPL vmlinux 0x29dfdca5 scsi_dh_attach +EXPORT_SYMBOL_GPL vmlinux 0x29e422c1 ncsi_register_dev +EXPORT_SYMBOL_GPL vmlinux 0x29eba37f current_is_async +EXPORT_SYMBOL_GPL vmlinux 0x2a0a40fa mdio_bus_init +EXPORT_SYMBOL_GPL vmlinux 0x2a0e9c4b kill_pid_usb_asyncio +EXPORT_SYMBOL_GPL vmlinux 0x2a3fda47 kvm_vcpu_gfn_to_memslot +EXPORT_SYMBOL_GPL vmlinux 0x2a45b8b0 dev_attr_link_power_management_policy +EXPORT_SYMBOL_GPL vmlinux 0x2a62cb3a ring_buffer_overrun_cpu +EXPORT_SYMBOL_GPL vmlinux 0x2a66d54d power_supply_put +EXPORT_SYMBOL_GPL vmlinux 0x2a678a13 __suspend_report_result +EXPORT_SYMBOL_GPL vmlinux 0x2a7e1ded gfn_to_pfn_memslot_atomic +EXPORT_SYMBOL_GPL vmlinux 0x2a8b7df8 devlink_trap_groups_unregister +EXPORT_SYMBOL_GPL vmlinux 0x2aadad1a efi_capsule_update +EXPORT_SYMBOL_GPL vmlinux 0x2abe6b6b pm_clk_create +EXPORT_SYMBOL_GPL vmlinux 0x2ac1ee87 devm_hwspin_lock_unregister +EXPORT_SYMBOL_GPL vmlinux 0x2ad28141 nf_queue_entry_free +EXPORT_SYMBOL_GPL vmlinux 0x2ae1689e zynqmp_pm_clock_getdivider +EXPORT_SYMBOL_GPL vmlinux 0x2ae90dfe of_phy_get +EXPORT_SYMBOL_GPL vmlinux 0x2af4857c ahci_qc_issue +EXPORT_SYMBOL_GPL vmlinux 0x2b0765ca xen_store_interface +EXPORT_SYMBOL_GPL vmlinux 0x2b0fe000 gnttab_cancel_free_callback +EXPORT_SYMBOL_GPL vmlinux 0x2b1c73b9 bpf_prog_sub +EXPORT_SYMBOL_GPL vmlinux 0x2b1d47d3 of_fwnode_ops +EXPORT_SYMBOL_GPL vmlinux 0x2b1e63b8 regulator_get_drvdata +EXPORT_SYMBOL_GPL vmlinux 0x2b260a74 __tracepoint_cpu_idle +EXPORT_SYMBOL_GPL vmlinux 0x2b4509dd devlink_health_reporter_state_update +EXPORT_SYMBOL_GPL vmlinux 0x2b4a9835 fuse_fill_super_common +EXPORT_SYMBOL_GPL vmlinux 0x2b5485a2 crypto_register_kpp +EXPORT_SYMBOL_GPL vmlinux 0x2b577841 mnt_want_write +EXPORT_SYMBOL_GPL vmlinux 0x2b6150fb power_supply_temp2resist_simple +EXPORT_SYMBOL_GPL vmlinux 0x2b660972 pci_enable_pasid +EXPORT_SYMBOL_GPL vmlinux 0x2b6d960d synth_event_cmd_init +EXPORT_SYMBOL_GPL vmlinux 0x2b73fbaa devlink_sb_unregister +EXPORT_SYMBOL_GPL vmlinux 0x2b8e8106 fuse_dev_alloc +EXPORT_SYMBOL_GPL vmlinux 0x2b952517 clk_has_parent +EXPORT_SYMBOL_GPL vmlinux 0x2b960b66 qman_is_probed +EXPORT_SYMBOL_GPL vmlinux 0x2b9997fb atomic_notifier_chain_register +EXPORT_SYMBOL_GPL vmlinux 0x2ba3fff5 fsl_mc_bus_type +EXPORT_SYMBOL_GPL vmlinux 0x2bad55a1 devm_pinctrl_register_and_init +EXPORT_SYMBOL_GPL vmlinux 0x2bc7eae5 set_selection_kernel +EXPORT_SYMBOL_GPL vmlinux 0x2c02dc47 dm_path_uevent +EXPORT_SYMBOL_GPL vmlinux 0x2c062377 __netpoll_setup +EXPORT_SYMBOL_GPL vmlinux 0x2c10be9b nf_route +EXPORT_SYMBOL_GPL vmlinux 0x2c12a30b devlink_traps_register +EXPORT_SYMBOL_GPL vmlinux 0x2c1bdb01 ata_std_postreset +EXPORT_SYMBOL_GPL vmlinux 0x2c208607 power_supply_is_system_supplied +EXPORT_SYMBOL_GPL vmlinux 0x2c3054f9 net_inc_ingress_queue +EXPORT_SYMBOL_GPL vmlinux 0x2c477c25 ata_sas_port_start +EXPORT_SYMBOL_GPL vmlinux 0x2c48e9fe devm_nvmem_cell_get +EXPORT_SYMBOL_GPL vmlinux 0x2c568c8a strp_init +EXPORT_SYMBOL_GPL vmlinux 0x2c635527 arch_invalidate_pmem +EXPORT_SYMBOL_GPL vmlinux 0x2c66ac85 devlink_info_serial_number_put +EXPORT_SYMBOL_GPL vmlinux 0x2c756a2d tpm_chip_start +EXPORT_SYMBOL_GPL vmlinux 0x2c775c9d cdrom_multisession +EXPORT_SYMBOL_GPL vmlinux 0x2c7db649 irq_dispose_mapping +EXPORT_SYMBOL_GPL vmlinux 0x2c7ffed3 clk_hw_unregister +EXPORT_SYMBOL_GPL vmlinux 0x2c8dd6b8 edac_mem_types +EXPORT_SYMBOL_GPL vmlinux 0x2c91c058 __generic_fsdax_supported +EXPORT_SYMBOL_GPL vmlinux 0x2c93378a i2c_of_match_device +EXPORT_SYMBOL_GPL vmlinux 0x2c97f8a2 of_reconfig_notifier_register +EXPORT_SYMBOL_GPL vmlinux 0x2caf792c vcpu_load +EXPORT_SYMBOL_GPL vmlinux 0x2cb7c29a icc_put +EXPORT_SYMBOL_GPL vmlinux 0x2cbd9d4b dev_nit_active +EXPORT_SYMBOL_GPL vmlinux 0x2cbeea4f skb_clone_tx_timestamp +EXPORT_SYMBOL_GPL vmlinux 0x2cc475cd dev_pm_get_subsys_data +EXPORT_SYMBOL_GPL vmlinux 0x2cc495c5 rpi_firmware_property_list +EXPORT_SYMBOL_GPL vmlinux 0x2cc5196e power_supply_class +EXPORT_SYMBOL_GPL vmlinux 0x2cc56285 fscrypt_show_test_dummy_encryption +EXPORT_SYMBOL_GPL vmlinux 0x2cd48ab9 debugfs_file_get +EXPORT_SYMBOL_GPL vmlinux 0x2cea32ee unregister_oldmem_pfn_is_ram +EXPORT_SYMBOL_GPL vmlinux 0x2cf08c66 vcpu_put +EXPORT_SYMBOL_GPL vmlinux 0x2cf4d384 crypto_unregister_template +EXPORT_SYMBOL_GPL vmlinux 0x2d0b0722 nf_ipv6_ops +EXPORT_SYMBOL_GPL vmlinux 0x2d1a4bd4 sysfs_unmerge_group +EXPORT_SYMBOL_GPL vmlinux 0x2d1b02d2 usermodehelper_read_lock_wait +EXPORT_SYMBOL_GPL vmlinux 0x2d1f196a crypto_get_default_null_skcipher +EXPORT_SYMBOL_GPL vmlinux 0x2d290a3f mtk_eint_do_resume +EXPORT_SYMBOL_GPL vmlinux 0x2d2dd36f kobj_ns_grab_current +EXPORT_SYMBOL_GPL vmlinux 0x2d369229 platform_device_add_properties +EXPORT_SYMBOL_GPL vmlinux 0x2d3baeb6 usb_add_phy +EXPORT_SYMBOL_GPL vmlinux 0x2d41e6f5 __trace_puts +EXPORT_SYMBOL_GPL vmlinux 0x2d481241 phy_pm_runtime_get +EXPORT_SYMBOL_GPL vmlinux 0x2d6394d0 rio_release_inb_dbell +EXPORT_SYMBOL_GPL vmlinux 0x2d6aa0f0 arch_apei_enable_cmcff +EXPORT_SYMBOL_GPL vmlinux 0x2d6d476f serdev_device_set_flow_control +EXPORT_SYMBOL_GPL vmlinux 0x2d80243a devfreq_event_disable_edev +EXPORT_SYMBOL_GPL vmlinux 0x2d9925df of_pwm_xlate_with_flags +EXPORT_SYMBOL_GPL vmlinux 0x2da1723f bpf_prog_add +EXPORT_SYMBOL_GPL vmlinux 0x2daa2177 x509_free_certificate +EXPORT_SYMBOL_GPL vmlinux 0x2db67d4a owl_sps_set_pg +EXPORT_SYMBOL_GPL vmlinux 0x2db9e722 fscrypt_drop_inode +EXPORT_SYMBOL_GPL vmlinux 0x2dc5a26d crypto_remove_spawns +EXPORT_SYMBOL_GPL vmlinux 0x2dda1c99 tcp_get_info +EXPORT_SYMBOL_GPL vmlinux 0x2dde277a hisi_uncore_pmu_counter_valid +EXPORT_SYMBOL_GPL vmlinux 0x2de11b8a xdp_attachment_flags_ok +EXPORT_SYMBOL_GPL vmlinux 0x2df1c83c usb_hcd_setup_local_mem +EXPORT_SYMBOL_GPL vmlinux 0x2df69500 pcie_flr +EXPORT_SYMBOL_GPL vmlinux 0x2e028ae6 rcutorture_get_gp_data +EXPORT_SYMBOL_GPL vmlinux 0x2e08226d badrange_add +EXPORT_SYMBOL_GPL vmlinux 0x2e0b84d7 mbox_request_channel_byname +EXPORT_SYMBOL_GPL vmlinux 0x2e1b75ae blk_mq_unquiesce_queue +EXPORT_SYMBOL_GPL vmlinux 0x2e2360b1 ftrace_set_global_notrace +EXPORT_SYMBOL_GPL vmlinux 0x2e389b81 bsg_remove_queue +EXPORT_SYMBOL_GPL vmlinux 0x2e649f24 xenbus_map_ring_valloc +EXPORT_SYMBOL_GPL vmlinux 0x2e667e82 skb_segment_list +EXPORT_SYMBOL_GPL vmlinux 0x2e678211 xas_find_conflict +EXPORT_SYMBOL_GPL vmlinux 0x2e6b998a unregister_virtio_driver +EXPORT_SYMBOL_GPL vmlinux 0x2e6e8dd3 inode_sb_list_add +EXPORT_SYMBOL_GPL vmlinux 0x2e94eda0 sdio_f0_writeb +EXPORT_SYMBOL_GPL vmlinux 0x2e989727 driver_for_each_device +EXPORT_SYMBOL_GPL vmlinux 0x2e9bd1f1 fuse_dev_release +EXPORT_SYMBOL_GPL vmlinux 0x2ea00a6b mmc_pwrseq_unregister +EXPORT_SYMBOL_GPL vmlinux 0x2eaa6dc8 netdev_set_default_ethtool_ops +EXPORT_SYMBOL_GPL vmlinux 0x2eb71223 timer_unstable_counter_workaround +EXPORT_SYMBOL_GPL vmlinux 0x2ebb19fd execute_in_process_context +EXPORT_SYMBOL_GPL vmlinux 0x2ebe3135 cpu_is_hotpluggable +EXPORT_SYMBOL_GPL vmlinux 0x2ec9e2b5 dw_pcie_link_set_n_fts +EXPORT_SYMBOL_GPL vmlinux 0x2ecdb183 usb_create_hcd +EXPORT_SYMBOL_GPL vmlinux 0x2ee506f3 kvm_gfn_to_hva_cache_init +EXPORT_SYMBOL_GPL vmlinux 0x2ee5275f kvm_set_memory_region +EXPORT_SYMBOL_GPL vmlinux 0x2ee7c52b btree_visitor +EXPORT_SYMBOL_GPL vmlinux 0x2efcf70e nvdimm_pmem_region_create +EXPORT_SYMBOL_GPL vmlinux 0x2f012556 __put_net +EXPORT_SYMBOL_GPL vmlinux 0x2f0d9053 usb_otg_state_string +EXPORT_SYMBOL_GPL vmlinux 0x2f1a26f6 rpi_firmware_init_vl805 +EXPORT_SYMBOL_GPL vmlinux 0x2f1ec502 __devm_of_phy_provider_register +EXPORT_SYMBOL_GPL vmlinux 0x2f1f1022 clk_divider_ro_ops +EXPORT_SYMBOL_GPL vmlinux 0x2f206b7d regmap_raw_read +EXPORT_SYMBOL_GPL vmlinux 0x2f212dc2 watchdog_init_timeout +EXPORT_SYMBOL_GPL vmlinux 0x2f26f7ec arizona_clk32k_disable +EXPORT_SYMBOL_GPL vmlinux 0x2f2bc979 skcipher_walk_aead_decrypt +EXPORT_SYMBOL_GPL vmlinux 0x2f2c95c4 flush_work +EXPORT_SYMBOL_GPL vmlinux 0x2f4113a2 dcookie_register +EXPORT_SYMBOL_GPL vmlinux 0x2f4300d7 devm_regmap_add_irq_chip_np +EXPORT_SYMBOL_GPL vmlinux 0x2f4880df static_key_slow_dec +EXPORT_SYMBOL_GPL vmlinux 0x2f5b3b0d srcu_notifier_call_chain +EXPORT_SYMBOL_GPL vmlinux 0x2f64415f unregister_acpi_hed_notifier +EXPORT_SYMBOL_GPL vmlinux 0x2f6b2394 crypto_alloc_acomp +EXPORT_SYMBOL_GPL vmlinux 0x2f754fac blk_rq_err_bytes +EXPORT_SYMBOL_GPL vmlinux 0x2f81f3f7 dax_driver_unregister +EXPORT_SYMBOL_GPL vmlinux 0x2f846bc7 led_update_brightness +EXPORT_SYMBOL_GPL vmlinux 0x2f903ce6 tun_get_tx_ring +EXPORT_SYMBOL_GPL vmlinux 0x2fb72e9b sbitmap_init_node +EXPORT_SYMBOL_GPL vmlinux 0x2fb7789f generic_fh_to_dentry +EXPORT_SYMBOL_GPL vmlinux 0x2fd79ea5 fixup_user_fault +EXPORT_SYMBOL_GPL vmlinux 0x2fe1675b blk_mq_free_request +EXPORT_SYMBOL_GPL vmlinux 0x2fe9ad07 sdio_set_block_size +EXPORT_SYMBOL_GPL vmlinux 0x2fef543f spi_alloc_device +EXPORT_SYMBOL_GPL vmlinux 0x2ffe98b8 meson_vid_pll_div_ro_ops +EXPORT_SYMBOL_GPL vmlinux 0x3010a4ec tpm_default_chip +EXPORT_SYMBOL_GPL vmlinux 0x3010beab shmem_file_setup +EXPORT_SYMBOL_GPL vmlinux 0x301d1223 acpi_subsys_complete +EXPORT_SYMBOL_GPL vmlinux 0x3020e264 gpiod_get_value +EXPORT_SYMBOL_GPL vmlinux 0x302b7d27 crypto_shash_update +EXPORT_SYMBOL_GPL vmlinux 0x30351294 k3_udma_glue_rx_flow_get_fdq_id +EXPORT_SYMBOL_GPL vmlinux 0x30490141 virtqueue_get_used_addr +EXPORT_SYMBOL_GPL vmlinux 0x304a4b88 device_for_each_child +EXPORT_SYMBOL_GPL vmlinux 0x30605604 pci_hp_remove_module_link +EXPORT_SYMBOL_GPL vmlinux 0x3061cfce ring_buffer_entries_cpu +EXPORT_SYMBOL_GPL vmlinux 0x306f5576 pkcs7_verify +EXPORT_SYMBOL_GPL vmlinux 0x307f0fae dm_device_name +EXPORT_SYMBOL_GPL vmlinux 0x307f8015 of_genpd_add_device +EXPORT_SYMBOL_GPL vmlinux 0x308e862f fwnode_property_present +EXPORT_SYMBOL_GPL vmlinux 0x3090cb05 bind_interdomain_evtchn_to_irqhandler_lateeoi +EXPORT_SYMBOL_GPL vmlinux 0x30929d57 regulator_set_current_limit_regmap +EXPORT_SYMBOL_GPL vmlinux 0x3098e62f skb_consume_udp +EXPORT_SYMBOL_GPL vmlinux 0x30ae50de tps6586x_irq_get_virq +EXPORT_SYMBOL_GPL vmlinux 0x30b6afe1 blk_req_zone_write_trylock +EXPORT_SYMBOL_GPL vmlinux 0x30bd8cbf kernel_read_file_from_path +EXPORT_SYMBOL_GPL vmlinux 0x30e1ec25 apei_map_generic_address +EXPORT_SYMBOL_GPL vmlinux 0x310bec64 kvm_is_visible_gfn +EXPORT_SYMBOL_GPL vmlinux 0x31266931 con_debug_leave +EXPORT_SYMBOL_GPL vmlinux 0x3127fb27 spi_register_controller +EXPORT_SYMBOL_GPL vmlinux 0x312f68cf of_reconfig_get_state_change +EXPORT_SYMBOL_GPL vmlinux 0x314442dc crypto_skcipher_encrypt +EXPORT_SYMBOL_GPL vmlinux 0x315c8b31 gpiochip_lock_as_irq +EXPORT_SYMBOL_GPL vmlinux 0x3164b842 devlink_is_reload_failed +EXPORT_SYMBOL_GPL vmlinux 0x31760ca8 xfrm_audit_state_add +EXPORT_SYMBOL_GPL vmlinux 0x31785f08 __tracepoint_br_fdb_add +EXPORT_SYMBOL_GPL vmlinux 0x31839ad3 software_node_register_nodes +EXPORT_SYMBOL_GPL vmlinux 0x3192d768 cpufreq_remove_update_util_hook +EXPORT_SYMBOL_GPL vmlinux 0x319ec846 regcache_sync_region +EXPORT_SYMBOL_GPL vmlinux 0x31a95e8b ring_buffer_record_enable_cpu +EXPORT_SYMBOL_GPL vmlinux 0x31bf5d3a fib_new_table +EXPORT_SYMBOL_GPL vmlinux 0x31c7970f pciserial_suspend_ports +EXPORT_SYMBOL_GPL vmlinux 0x31d4525b extcon_get_property_capability +EXPORT_SYMBOL_GPL vmlinux 0x31dca4d8 gnttab_claim_grant_reference +EXPORT_SYMBOL_GPL vmlinux 0x31df01eb acpi_dev_add_driver_gpios +EXPORT_SYMBOL_GPL vmlinux 0x31e19a1c ahci_error_handler +EXPORT_SYMBOL_GPL vmlinux 0x31e30380 wbt_enable_default +EXPORT_SYMBOL_GPL vmlinux 0x31e9e8d5 zynqmp_pm_set_suspend_mode +EXPORT_SYMBOL_GPL vmlinux 0x3209270d of_get_regulator_init_data +EXPORT_SYMBOL_GPL vmlinux 0x32234bed regulator_lock +EXPORT_SYMBOL_GPL vmlinux 0x3224b2a9 mpi_read_raw_from_sgl +EXPORT_SYMBOL_GPL vmlinux 0x3229f4a3 thermal_zone_bind_cooling_device +EXPORT_SYMBOL_GPL vmlinux 0x3237b0b9 blkdev_zone_mgmt +EXPORT_SYMBOL_GPL vmlinux 0x323d73e7 crypto_drop_spawn +EXPORT_SYMBOL_GPL vmlinux 0x32457f37 vfs_read +EXPORT_SYMBOL_GPL vmlinux 0x325ddfa6 cpufreq_policy_transition_delay_us +EXPORT_SYMBOL_GPL vmlinux 0x326b704b psil_set_new_ep_config +EXPORT_SYMBOL_GPL vmlinux 0x326cefe5 hwpoison_filter_dev_minor +EXPORT_SYMBOL_GPL vmlinux 0x326d7b49 rio_add_mport_pw_handler +EXPORT_SYMBOL_GPL vmlinux 0x32741066 dma_buf_move_notify +EXPORT_SYMBOL_GPL vmlinux 0x32758f2b rio_unregister_mport +EXPORT_SYMBOL_GPL vmlinux 0x327a2687 bind_evtchn_to_irq_lateeoi +EXPORT_SYMBOL_GPL vmlinux 0x327f69e2 devm_nvmem_device_put +EXPORT_SYMBOL_GPL vmlinux 0x3283b480 set_cpus_allowed_ptr +EXPORT_SYMBOL_GPL vmlinux 0x3288277e usb_phy_roothub_alloc +EXPORT_SYMBOL_GPL vmlinux 0x328f3157 ahci_do_softreset +EXPORT_SYMBOL_GPL vmlinux 0x32957d5c genphy_c45_pma_setup_forced +EXPORT_SYMBOL_GPL vmlinux 0x3299e986 ata_pci_device_do_resume +EXPORT_SYMBOL_GPL vmlinux 0x32ab06cc irq_percpu_is_enabled +EXPORT_SYMBOL_GPL vmlinux 0x32ac1e24 fuse_dev_operations +EXPORT_SYMBOL_GPL vmlinux 0x32b16c16 inet6_compat_ioctl +EXPORT_SYMBOL_GPL vmlinux 0x32b3dce0 tracing_snapshot_cond +EXPORT_SYMBOL_GPL vmlinux 0x32ba8486 vfs_writef +EXPORT_SYMBOL_GPL vmlinux 0x32bc0fcf preempt_notifier_dec +EXPORT_SYMBOL_GPL vmlinux 0x32c2bb04 list_lru_walk_node +EXPORT_SYMBOL_GPL vmlinux 0x32c3cb4e class_compat_register +EXPORT_SYMBOL_GPL vmlinux 0x32c6c604 __tracepoint_attach_device_to_domain +EXPORT_SYMBOL_GPL vmlinux 0x32c82818 sata_scr_read +EXPORT_SYMBOL_GPL vmlinux 0x32ca3342 i2c_dw_prepare_clk +EXPORT_SYMBOL_GPL vmlinux 0x32cccffc devm_spi_register_controller +EXPORT_SYMBOL_GPL vmlinux 0x32d6a0cb dm_suspended +EXPORT_SYMBOL_GPL vmlinux 0x32ed0c06 i2c_acpi_find_bus_speed +EXPORT_SYMBOL_GPL vmlinux 0x32ff53b3 serial8250_do_startup +EXPORT_SYMBOL_GPL vmlinux 0x330010b6 cpuset_cgrp_subsys_enabled_key +EXPORT_SYMBOL_GPL vmlinux 0x33001e37 tty_register_device_attr +EXPORT_SYMBOL_GPL vmlinux 0x3305841a dw_pcie_link_set_max_speed +EXPORT_SYMBOL_GPL vmlinux 0x330be5db phy_pm_runtime_forbid +EXPORT_SYMBOL_GPL vmlinux 0x3319f852 device_property_read_u16_array +EXPORT_SYMBOL_GPL vmlinux 0x332b7cbc free_fib_info +EXPORT_SYMBOL_GPL vmlinux 0x332ce9c0 fwnode_graph_get_remote_node +EXPORT_SYMBOL_GPL vmlinux 0x332f7e6e pci_iomap_wc_range +EXPORT_SYMBOL_GPL vmlinux 0x3340dcb1 fscrypt_ioctl_get_key_status +EXPORT_SYMBOL_GPL vmlinux 0x3340fd26 devlink_dpipe_entry_ctx_append +EXPORT_SYMBOL_GPL vmlinux 0x33464e49 xfrm_dev_offload_ok +EXPORT_SYMBOL_GPL vmlinux 0x335c570f enable_percpu_irq +EXPORT_SYMBOL_GPL vmlinux 0x33642120 dev_pm_opp_get_max_volt_latency +EXPORT_SYMBOL_GPL vmlinux 0x33c55e87 fib4_rule_default +EXPORT_SYMBOL_GPL vmlinux 0x340f39d0 dax_region_put +EXPORT_SYMBOL_GPL vmlinux 0x341b4ea0 fb_deferred_io_fsync +EXPORT_SYMBOL_GPL vmlinux 0x3421ca7c __tracepoint_neigh_event_send_dead +EXPORT_SYMBOL_GPL vmlinux 0x3427c5ed sk_set_memalloc +EXPORT_SYMBOL_GPL vmlinux 0x3427ff2b pci_load_saved_state +EXPORT_SYMBOL_GPL vmlinux 0x34331f04 acpi_os_unmap_memory +EXPORT_SYMBOL_GPL vmlinux 0x34407691 crypto_has_ahash +EXPORT_SYMBOL_GPL vmlinux 0x3446e5d8 task_cgroup_path +EXPORT_SYMBOL_GPL vmlinux 0x345328b2 mnt_clone_write +EXPORT_SYMBOL_GPL vmlinux 0x34537ff5 vfs_setlease +EXPORT_SYMBOL_GPL vmlinux 0x345d9a2e genphy_c45_read_lpa +EXPORT_SYMBOL_GPL vmlinux 0x3468b6eb gov_attr_set_put +EXPORT_SYMBOL_GPL vmlinux 0x346a7da4 bus_unregister_notifier +EXPORT_SYMBOL_GPL vmlinux 0x34a53aa9 tcp_leave_memory_pressure +EXPORT_SYMBOL_GPL vmlinux 0x34bab869 look_up_OID +EXPORT_SYMBOL_GPL vmlinux 0x34c31850 of_clk_src_onecell_get +EXPORT_SYMBOL_GPL vmlinux 0x34d768ac virtqueue_poll +EXPORT_SYMBOL_GPL vmlinux 0x34dae237 synth_event_trace +EXPORT_SYMBOL_GPL vmlinux 0x34dbafd8 attribute_container_register +EXPORT_SYMBOL_GPL vmlinux 0x34dc8b1a srcu_torture_stats_print +EXPORT_SYMBOL_GPL vmlinux 0x34eab46d bind_evtchn_to_irqhandler +EXPORT_SYMBOL_GPL vmlinux 0x34eda21d register_wide_hw_breakpoint +EXPORT_SYMBOL_GPL vmlinux 0x34fb084d devm_gpiod_put +EXPORT_SYMBOL_GPL vmlinux 0x350710da tty_port_register_device_attr +EXPORT_SYMBOL_GPL vmlinux 0x350f5942 thermal_add_hwmon_sysfs +EXPORT_SYMBOL_GPL vmlinux 0x351fdea9 rio_request_inb_mbox +EXPORT_SYMBOL_GPL vmlinux 0x352987cd gfn_to_pfn +EXPORT_SYMBOL_GPL vmlinux 0x352b3813 maxim_charger_calc_reg_current +EXPORT_SYMBOL_GPL vmlinux 0x352ec68b bpf_offload_dev_destroy +EXPORT_SYMBOL_GPL vmlinux 0x3530b085 __blk_req_zone_write_lock +EXPORT_SYMBOL_GPL vmlinux 0x3539697b regulator_map_voltage_linear_range +EXPORT_SYMBOL_GPL vmlinux 0x354ff16a dw_pcie_read_dbi +EXPORT_SYMBOL_GPL vmlinux 0x355bc89a klist_next +EXPORT_SYMBOL_GPL vmlinux 0x3560c735 dma_buf_end_cpu_access +EXPORT_SYMBOL_GPL vmlinux 0x3561a5c2 of_property_read_string +EXPORT_SYMBOL_GPL vmlinux 0x35726b2e of_reserved_mem_lookup +EXPORT_SYMBOL_GPL vmlinux 0x358823cd skb_complete_wifi_ack +EXPORT_SYMBOL_GPL vmlinux 0x358bbc37 sysfs_create_group +EXPORT_SYMBOL_GPL vmlinux 0x358ff60f twl_get_hfclk_rate +EXPORT_SYMBOL_GPL vmlinux 0x359c20d1 device_get_child_node_count +EXPORT_SYMBOL_GPL vmlinux 0x35a4d46a crypto_ahash_finup +EXPORT_SYMBOL_GPL vmlinux 0x35a4f59d zynqmp_pm_clock_setdivider +EXPORT_SYMBOL_GPL vmlinux 0x35a521b4 find_symbol +EXPORT_SYMBOL_GPL vmlinux 0x35a80e74 pci_disable_pasid +EXPORT_SYMBOL_GPL vmlinux 0x35b2cf38 rt_mutex_lock_interruptible +EXPORT_SYMBOL_GPL vmlinux 0x35ba6e8a regulator_register +EXPORT_SYMBOL_GPL vmlinux 0x35cda8ea pci_hp_add +EXPORT_SYMBOL_GPL vmlinux 0x35d3dc46 crypto_alg_sem +EXPORT_SYMBOL_GPL vmlinux 0x35f0d7a6 spi_controller_resume +EXPORT_SYMBOL_GPL vmlinux 0x35f5e018 rio_mport_get_feature +EXPORT_SYMBOL_GPL vmlinux 0x36075bb5 iommu_group_register_notifier +EXPORT_SYMBOL_GPL vmlinux 0x36242943 switchdev_deferred_process +EXPORT_SYMBOL_GPL vmlinux 0x3629fa6e hisi_uncore_pmu_stop +EXPORT_SYMBOL_GPL vmlinux 0x364be299 bus_get_device_klist +EXPORT_SYMBOL_GPL vmlinux 0x36763961 cpuidle_get_driver +EXPORT_SYMBOL_GPL vmlinux 0x36912b4c ip6_dst_lookup_flow +EXPORT_SYMBOL_GPL vmlinux 0x3694f657 dev_pm_opp_disable +EXPORT_SYMBOL_GPL vmlinux 0x369a4604 fb_deferred_io_open +EXPORT_SYMBOL_GPL vmlinux 0x369e908c regulator_get_voltage_sel_regmap +EXPORT_SYMBOL_GPL vmlinux 0x369f2ed8 fib_rules_unregister +EXPORT_SYMBOL_GPL vmlinux 0x369fcd70 tracing_snapshot +EXPORT_SYMBOL_GPL vmlinux 0x36a68545 of_get_named_gpio_flags +EXPORT_SYMBOL_GPL vmlinux 0x36a86ffa d_exchange +EXPORT_SYMBOL_GPL vmlinux 0x36c717dd kobject_rename +EXPORT_SYMBOL_GPL vmlinux 0x36c94b29 devlink_traps_unregister +EXPORT_SYMBOL_GPL vmlinux 0x36cb77df vfs_cancel_lock +EXPORT_SYMBOL_GPL vmlinux 0x36cd9726 i2c_add_numbered_adapter +EXPORT_SYMBOL_GPL vmlinux 0x36ddd5e4 fork_usermode_blob +EXPORT_SYMBOL_GPL vmlinux 0x36df66cc blk_mq_debugfs_rq_show +EXPORT_SYMBOL_GPL vmlinux 0x36e62cfd gpiod_cansleep +EXPORT_SYMBOL_GPL vmlinux 0x36e6e431 fib_nh_common_init +EXPORT_SYMBOL_GPL vmlinux 0x36eff6f9 clk_hw_register_fixed_factor +EXPORT_SYMBOL_GPL vmlinux 0x36f0fd6f phy_restart_aneg +EXPORT_SYMBOL_GPL vmlinux 0x37169f79 cpu_latency_qos_update_request +EXPORT_SYMBOL_GPL vmlinux 0x371937a6 xen_unmap_domain_gfn_range +EXPORT_SYMBOL_GPL vmlinux 0x37255175 __pm_stay_awake +EXPORT_SYMBOL_GPL vmlinux 0x372cfd6e gnttab_end_foreign_access +EXPORT_SYMBOL_GPL vmlinux 0x374c53e1 ata_get_cmd_descript +EXPORT_SYMBOL_GPL vmlinux 0x3750d770 erst_read +EXPORT_SYMBOL_GPL vmlinux 0x37621292 ata_dummy_port_ops +EXPORT_SYMBOL_GPL vmlinux 0x376b1d50 inet6_lookup_listener +EXPORT_SYMBOL_GPL vmlinux 0x37723d2c pci_store_saved_state +EXPORT_SYMBOL_GPL vmlinux 0x377bbcbc pm_suspend_target_state +EXPORT_SYMBOL_GPL vmlinux 0x378adfb7 zynqmp_pm_sd_dll_reset +EXPORT_SYMBOL_GPL vmlinux 0x37914025 xenbus_write +EXPORT_SYMBOL_GPL vmlinux 0x3795cfbf ata_acpi_stm +EXPORT_SYMBOL_GPL vmlinux 0x37a2b534 dev_pm_enable_wake_irq +EXPORT_SYMBOL_GPL vmlinux 0x37a39e3e platform_device_alloc +EXPORT_SYMBOL_GPL vmlinux 0x37ad3672 pci_enable_rom +EXPORT_SYMBOL_GPL vmlinux 0x37b15c5c do_tcp_sendpages +EXPORT_SYMBOL_GPL vmlinux 0x37b4e798 of_detach_node +EXPORT_SYMBOL_GPL vmlinux 0x37b737af blk_mq_quiesce_queue +EXPORT_SYMBOL_GPL vmlinux 0x37baf330 fsl_mc_bus_dprc_type +EXPORT_SYMBOL_GPL vmlinux 0x37bc3020 rhltable_init +EXPORT_SYMBOL_GPL vmlinux 0x37bd4e47 sdio_readb +EXPORT_SYMBOL_GPL vmlinux 0x37d63f87 pinctrl_unregister +EXPORT_SYMBOL_GPL vmlinux 0x37d6b445 init_dummy_netdev +EXPORT_SYMBOL_GPL vmlinux 0x37deb4fd skcipher_register_instance +EXPORT_SYMBOL_GPL vmlinux 0x37e37a99 pci_bus_resource_n +EXPORT_SYMBOL_GPL vmlinux 0x37ea659f add_memory +EXPORT_SYMBOL_GPL vmlinux 0x3801776b __ioread32_copy +EXPORT_SYMBOL_GPL vmlinux 0x383011a1 i2c_dw_validate_speed +EXPORT_SYMBOL_GPL vmlinux 0x38374815 clear_selection +EXPORT_SYMBOL_GPL vmlinux 0x38386c8a of_usb_get_phy_mode +EXPORT_SYMBOL_GPL vmlinux 0x38395f8d regulator_bulk_disable +EXPORT_SYMBOL_GPL vmlinux 0x3844b813 do_splice_to +EXPORT_SYMBOL_GPL vmlinux 0x38489b93 perf_get_aux +EXPORT_SYMBOL_GPL vmlinux 0x3866e217 nvmem_device_write +EXPORT_SYMBOL_GPL vmlinux 0x387db2ef __netpoll_cleanup +EXPORT_SYMBOL_GPL vmlinux 0x3882d542 devm_acpi_dma_controller_free +EXPORT_SYMBOL_GPL vmlinux 0x38849acd tty_kopen +EXPORT_SYMBOL_GPL vmlinux 0x389b64a2 static_key_count +EXPORT_SYMBOL_GPL vmlinux 0x38aa1397 gpiod_add_lookup_table +EXPORT_SYMBOL_GPL vmlinux 0x38aeab82 anon_inode_getfd +EXPORT_SYMBOL_GPL vmlinux 0x38c3ff30 freq_qos_add_notifier +EXPORT_SYMBOL_GPL vmlinux 0x38d825d6 trace_event_buffer_commit +EXPORT_SYMBOL_GPL vmlinux 0x38e5bc5a clk_set_rate_range +EXPORT_SYMBOL_GPL vmlinux 0x38f3b71e pci_user_read_config_dword +EXPORT_SYMBOL_GPL vmlinux 0x38f505ad devlink_region_snapshot_id_get +EXPORT_SYMBOL_GPL vmlinux 0x38fbd2ce ata_bmdma_port_ops +EXPORT_SYMBOL_GPL vmlinux 0x3901c72d sk_msg_trim +EXPORT_SYMBOL_GPL vmlinux 0x3906b077 virtio_device_freeze +EXPORT_SYMBOL_GPL vmlinux 0x390d1ce6 __set_page_dirty +EXPORT_SYMBOL_GPL vmlinux 0x39322fd6 pm_generic_poweroff +EXPORT_SYMBOL_GPL vmlinux 0x396d107b __trace_note_message +EXPORT_SYMBOL_GPL vmlinux 0x3973ef0e regulator_get_current_limit_regmap +EXPORT_SYMBOL_GPL vmlinux 0x39a1323c spi_set_cs_timing +EXPORT_SYMBOL_GPL vmlinux 0x39a7affc driver_deferred_probe_timeout +EXPORT_SYMBOL_GPL vmlinux 0x39b32c5c ata_noop_qc_prep +EXPORT_SYMBOL_GPL vmlinux 0x39b5a449 clk_hw_register_fractional_divider +EXPORT_SYMBOL_GPL vmlinux 0x39bc818d kvm_io_bus_get_dev +EXPORT_SYMBOL_GPL vmlinux 0x39ded098 rdma_cgrp_subsys_enabled_key +EXPORT_SYMBOL_GPL vmlinux 0x39e61495 nf_logger_request_module +EXPORT_SYMBOL_GPL vmlinux 0x39eb0904 inode_congested +EXPORT_SYMBOL_GPL vmlinux 0x39fd83db halt_poll_ns_shrink +EXPORT_SYMBOL_GPL vmlinux 0x3a0f0ba3 ip_route_output_flow +EXPORT_SYMBOL_GPL vmlinux 0x3a120a4d cpufreq_register_governor +EXPORT_SYMBOL_GPL vmlinux 0x3a2e1b39 dm_report_zones_cb +EXPORT_SYMBOL_GPL vmlinux 0x3a340c6b clk_register_fixed_rate +EXPORT_SYMBOL_GPL vmlinux 0x3a464911 pci_user_write_config_dword +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 0x3a567acf get_task_pid +EXPORT_SYMBOL_GPL vmlinux 0x3a5a96e7 validate_xmit_xfrm +EXPORT_SYMBOL_GPL vmlinux 0x3a687fb7 amba_ahb_device_add +EXPORT_SYMBOL_GPL vmlinux 0x3a68efe4 device_property_read_string_array +EXPORT_SYMBOL_GPL vmlinux 0x3a6b7d65 posix_clock_unregister +EXPORT_SYMBOL_GPL vmlinux 0x3a7568fc fscrypt_fname_siphash +EXPORT_SYMBOL_GPL vmlinux 0x3a7ecc8c blk_queue_max_discard_segments +EXPORT_SYMBOL_GPL vmlinux 0x3a84bbe6 __devm_alloc_percpu +EXPORT_SYMBOL_GPL vmlinux 0x3a9afafc ethnl_cable_test_finished +EXPORT_SYMBOL_GPL vmlinux 0x3a9be019 asymmetric_key_id_partial +EXPORT_SYMBOL_GPL vmlinux 0x3a9e4e6b usb_put_intf +EXPORT_SYMBOL_GPL vmlinux 0x3aad54c3 __rtnl_link_unregister +EXPORT_SYMBOL_GPL vmlinux 0x3acdf325 twl4030_audio_enable_resource +EXPORT_SYMBOL_GPL vmlinux 0x3acfcbd5 da9052_free_irq +EXPORT_SYMBOL_GPL vmlinux 0x3ade1f84 udp4_lib_lookup +EXPORT_SYMBOL_GPL vmlinux 0x3ae55b43 usb_interrupt_msg +EXPORT_SYMBOL_GPL vmlinux 0x3aed5594 mtk_pinconf_drive_set_rev1 +EXPORT_SYMBOL_GPL vmlinux 0x3b02ffb9 cpufreq_table_index_unsorted +EXPORT_SYMBOL_GPL vmlinux 0x3b072a04 wm8350_reg_read +EXPORT_SYMBOL_GPL vmlinux 0x3b135ea5 dprc_get_obj_region +EXPORT_SYMBOL_GPL vmlinux 0x3b19dd1a tpm_put_ops +EXPORT_SYMBOL_GPL vmlinux 0x3b1d5658 irq_gc_ack_set_bit +EXPORT_SYMBOL_GPL vmlinux 0x3b26d2a1 pcie_port_find_device +EXPORT_SYMBOL_GPL vmlinux 0x3b287c51 bgmac_enet_probe +EXPORT_SYMBOL_GPL vmlinux 0x3b3493ab usb_set_device_state +EXPORT_SYMBOL_GPL vmlinux 0x3b372f44 blk_ksm_destroy +EXPORT_SYMBOL_GPL vmlinux 0x3b499be2 mtk_pinconf_adv_drive_get +EXPORT_SYMBOL_GPL vmlinux 0x3b4c240a display_timings_release +EXPORT_SYMBOL_GPL vmlinux 0x3b78bf02 sunxi_ccu_get_mmc_timing_mode +EXPORT_SYMBOL_GPL vmlinux 0x3b7fab1a cpufreq_cpu_get_raw +EXPORT_SYMBOL_GPL vmlinux 0x3b8979ea gnttab_grant_foreign_transfer_ref +EXPORT_SYMBOL_GPL vmlinux 0x3b9ee735 sched_show_task +EXPORT_SYMBOL_GPL vmlinux 0x3ba01b47 get_compat_sigset +EXPORT_SYMBOL_GPL vmlinux 0x3ba13df3 disk_part_iter_exit +EXPORT_SYMBOL_GPL vmlinux 0x3ba9ee95 debugfs_create_x64 +EXPORT_SYMBOL_GPL vmlinux 0x3bb3786b acpi_is_pnp_device +EXPORT_SYMBOL_GPL vmlinux 0x3bc570f1 of_pci_dma_range_parser_init +EXPORT_SYMBOL_GPL vmlinux 0x3bc7c6a1 dev_pm_opp_of_find_icc_paths +EXPORT_SYMBOL_GPL vmlinux 0x3bcb875c uart_try_toggle_sysrq +EXPORT_SYMBOL_GPL vmlinux 0x3bdb5d28 alg_test +EXPORT_SYMBOL_GPL vmlinux 0x3bdbcb5a blk_mq_alloc_request_hctx +EXPORT_SYMBOL_GPL vmlinux 0x3bec64dc proc_create_net_data +EXPORT_SYMBOL_GPL vmlinux 0x3beeec8e dev_queue_xmit_nit +EXPORT_SYMBOL_GPL vmlinux 0x3bf17755 mpi_read_buffer +EXPORT_SYMBOL_GPL vmlinux 0x3bf45000 spi_setup +EXPORT_SYMBOL_GPL vmlinux 0x3c0399d5 ata_host_alloc +EXPORT_SYMBOL_GPL vmlinux 0x3c164276 pinctrl_generic_get_group_count +EXPORT_SYMBOL_GPL vmlinux 0x3c1c3725 rcu_fwd_progress_check +EXPORT_SYMBOL_GPL vmlinux 0x3c212744 sbitmap_del_wait_queue +EXPORT_SYMBOL_GPL vmlinux 0x3c25a5ba rtc_initialize_alarm +EXPORT_SYMBOL_GPL vmlinux 0x3c2b68f7 of_changeset_apply +EXPORT_SYMBOL_GPL vmlinux 0x3c310ee8 crypto_unregister_rng +EXPORT_SYMBOL_GPL vmlinux 0x3c477489 devm_hwmon_device_unregister +EXPORT_SYMBOL_GPL vmlinux 0x3c4919e8 sock_prot_inuse_add +EXPORT_SYMBOL_GPL vmlinux 0x3c681dc4 ring_buffer_record_disable +EXPORT_SYMBOL_GPL vmlinux 0x3c79ac4d of_reset_control_array_get +EXPORT_SYMBOL_GPL vmlinux 0x3c824b29 vfs_truncate +EXPORT_SYMBOL_GPL vmlinux 0x3c9d571b of_changeset_action +EXPORT_SYMBOL_GPL vmlinux 0x3cb4cdd6 rcuwait_wake_up +EXPORT_SYMBOL_GPL vmlinux 0x3cc4eaaf devm_pci_epc_destroy +EXPORT_SYMBOL_GPL vmlinux 0x3ccd8b46 zynqmp_pm_clock_getparent +EXPORT_SYMBOL_GPL vmlinux 0x3cd06035 add_input_randomness +EXPORT_SYMBOL_GPL vmlinux 0x3ce15efa dev_pm_qos_expose_latency_limit +EXPORT_SYMBOL_GPL vmlinux 0x3ce77caf register_kprobe +EXPORT_SYMBOL_GPL vmlinux 0x3ce8ca40 register_net_sysctl +EXPORT_SYMBOL_GPL vmlinux 0x3cee6285 spi_take_timestamp_pre +EXPORT_SYMBOL_GPL vmlinux 0x3d04d8e4 dev_pm_opp_get_sharing_cpus +EXPORT_SYMBOL_GPL vmlinux 0x3d18dfb0 acpi_pm_set_device_wakeup +EXPORT_SYMBOL_GPL vmlinux 0x3d25e35a spi_mem_driver_unregister +EXPORT_SYMBOL_GPL vmlinux 0x3d388324 dpm_resume_end +EXPORT_SYMBOL_GPL vmlinux 0x3d44b135 dma_buf_vunmap +EXPORT_SYMBOL_GPL vmlinux 0x3d510a7b rcu_jiffies_till_stall_check +EXPORT_SYMBOL_GPL vmlinux 0x3d71f5ce __inet_inherit_port +EXPORT_SYMBOL_GPL vmlinux 0x3d7a82aa devm_clk_bulk_get_all +EXPORT_SYMBOL_GPL vmlinux 0x3d8baf3b zs_huge_class_size +EXPORT_SYMBOL_GPL vmlinux 0x3da2532a register_virtio_device +EXPORT_SYMBOL_GPL vmlinux 0x3da37171 pinctrl_utils_add_map_configs +EXPORT_SYMBOL_GPL vmlinux 0x3da67e3b input_ff_event +EXPORT_SYMBOL_GPL vmlinux 0x3daeff82 regulator_bulk_set_supply_names +EXPORT_SYMBOL_GPL vmlinux 0x3dc526a9 arizona_of_match +EXPORT_SYMBOL_GPL vmlinux 0x3dd8f774 sysfs_remove_file_self +EXPORT_SYMBOL_GPL vmlinux 0x3ddfec86 crypto_alloc_shash +EXPORT_SYMBOL_GPL vmlinux 0x3de9cae1 crypto_remove_final +EXPORT_SYMBOL_GPL vmlinux 0x3deb6e84 __fscrypt_prepare_link +EXPORT_SYMBOL_GPL vmlinux 0x3dedda86 regulator_bulk_register_supply_alias +EXPORT_SYMBOL_GPL vmlinux 0x3df70c99 trace_clock_global +EXPORT_SYMBOL_GPL vmlinux 0x3dfb0d5a edac_device_handle_ue_count +EXPORT_SYMBOL_GPL vmlinux 0x3e07f679 rio_free_net +EXPORT_SYMBOL_GPL vmlinux 0x3e0ce375 scsi_dh_set_params +EXPORT_SYMBOL_GPL vmlinux 0x3e1c90d7 pci_check_and_mask_intx +EXPORT_SYMBOL_GPL vmlinux 0x3e2254e5 wm8400_reset_codec_reg_cache +EXPORT_SYMBOL_GPL vmlinux 0x3e2ab2e0 devfreq_get_devfreq_by_phandle +EXPORT_SYMBOL_GPL vmlinux 0x3e433dff ping_seq_stop +EXPORT_SYMBOL_GPL vmlinux 0x3e4e0938 dma_request_slave_channel +EXPORT_SYMBOL_GPL vmlinux 0x3e54165d register_kretprobe +EXPORT_SYMBOL_GPL vmlinux 0x3e557f2c ti_sci_get_by_phandle +EXPORT_SYMBOL_GPL vmlinux 0x3e605145 ti_sci_release_resource +EXPORT_SYMBOL_GPL vmlinux 0x3e6eb12f add_swap_extent +EXPORT_SYMBOL_GPL vmlinux 0x3e7080cb mpi_read_from_buffer +EXPORT_SYMBOL_GPL vmlinux 0x3e7b3f8e hisi_cpumask_sysfs_show +EXPORT_SYMBOL_GPL vmlinux 0x3e957bf7 __phy_modify +EXPORT_SYMBOL_GPL vmlinux 0x3ea5196d apei_osc_setup +EXPORT_SYMBOL_GPL vmlinux 0x3ea56313 gnttab_alloc_pages +EXPORT_SYMBOL_GPL vmlinux 0x3ec4fc27 hisi_uncore_pmu_online_cpu +EXPORT_SYMBOL_GPL vmlinux 0x3ed2cc24 of_css +EXPORT_SYMBOL_GPL vmlinux 0x3ed49275 sfp_bus_find_fwnode +EXPORT_SYMBOL_GPL vmlinux 0x3edf61cd bpf_offload_dev_netdev_unregister +EXPORT_SYMBOL_GPL vmlinux 0x3eeaea7e platform_device_add +EXPORT_SYMBOL_GPL vmlinux 0x3ef051c8 crypto_inc +EXPORT_SYMBOL_GPL vmlinux 0x3efd1889 dax_direct_access +EXPORT_SYMBOL_GPL vmlinux 0x3eff800c crypto_hash_alg_has_setkey +EXPORT_SYMBOL_GPL vmlinux 0x3f03fe7c crypto_register_instance +EXPORT_SYMBOL_GPL vmlinux 0x3f1d8213 sysfs_remove_mount_point +EXPORT_SYMBOL_GPL vmlinux 0x3f2196f8 acpi_dev_resource_address_space +EXPORT_SYMBOL_GPL vmlinux 0x3f2626f3 page_endio +EXPORT_SYMBOL_GPL vmlinux 0x3f340c42 PageHuge +EXPORT_SYMBOL_GPL vmlinux 0x3f4632cd phy_10gbit_features +EXPORT_SYMBOL_GPL vmlinux 0x3f6c7cb9 crypto_stats_rng_seed +EXPORT_SYMBOL_GPL vmlinux 0x3f841e44 xfrm_dev_state_add +EXPORT_SYMBOL_GPL vmlinux 0x3f84bcd7 dax_alive +EXPORT_SYMBOL_GPL vmlinux 0x3f8ab72e devlink_fmsg_bool_put +EXPORT_SYMBOL_GPL vmlinux 0x3f9918fe __list_lru_init +EXPORT_SYMBOL_GPL vmlinux 0x3f9f1a7d balloon_page_list_enqueue +EXPORT_SYMBOL_GPL vmlinux 0x3fb7f5d1 rio_release_outb_dbell +EXPORT_SYMBOL_GPL vmlinux 0x3fdb9b33 irq_set_chained_handler_and_data +EXPORT_SYMBOL_GPL vmlinux 0x3fe35aea irq_bypass_unregister_consumer +EXPORT_SYMBOL_GPL vmlinux 0x3fe62346 devm_phy_destroy +EXPORT_SYMBOL_GPL vmlinux 0x3fe6c346 devlink_fmsg_binary_pair_put +EXPORT_SYMBOL_GPL vmlinux 0x3fea029c hisi_clk_register_gate +EXPORT_SYMBOL_GPL vmlinux 0x3febfc6b tty_port_install +EXPORT_SYMBOL_GPL vmlinux 0x3ff0c203 cm_notify_event +EXPORT_SYMBOL_GPL vmlinux 0x3ff13332 regmap_field_free +EXPORT_SYMBOL_GPL vmlinux 0x3ffdacf3 timerqueue_iterate_next +EXPORT_SYMBOL_GPL vmlinux 0x4003025e devm_of_pwm_get +EXPORT_SYMBOL_GPL vmlinux 0x400a024b acpi_scan_lock_release +EXPORT_SYMBOL_GPL vmlinux 0x400defec rq_flush_dcache_pages +EXPORT_SYMBOL_GPL vmlinux 0x40117e1b regulator_allow_bypass +EXPORT_SYMBOL_GPL vmlinux 0x4018ec3c rio_local_set_device_id +EXPORT_SYMBOL_GPL vmlinux 0x40267068 usb_anchor_resume_wakeups +EXPORT_SYMBOL_GPL vmlinux 0x40296a99 device_create +EXPORT_SYMBOL_GPL vmlinux 0x4029cd35 led_classdev_resume +EXPORT_SYMBOL_GPL vmlinux 0x403f9529 gpio_request_one +EXPORT_SYMBOL_GPL vmlinux 0x4047aca9 tty_ldisc_ref +EXPORT_SYMBOL_GPL vmlinux 0x405bbf1f ata_sff_port_ops +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 0x40963eb4 __irq_domain_alloc_fwnode +EXPORT_SYMBOL_GPL vmlinux 0x4099be77 mbox_controller_unregister +EXPORT_SYMBOL_GPL vmlinux 0x4099f919 tun_ptr_free +EXPORT_SYMBOL_GPL vmlinux 0x40a6d342 rio_dev_get +EXPORT_SYMBOL_GPL vmlinux 0x40a79b8f xen_xlate_unmap_gfn_range +EXPORT_SYMBOL_GPL vmlinux 0x40b43bd0 sbitmap_add_wait_queue +EXPORT_SYMBOL_GPL vmlinux 0x40b8e775 mnt_want_write_file +EXPORT_SYMBOL_GPL vmlinux 0x40c1a1a3 uprobe_unregister +EXPORT_SYMBOL_GPL vmlinux 0x40e11c86 usb_role_switch_get +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 0x40fbf312 mmu_notifier_unregister +EXPORT_SYMBOL_GPL vmlinux 0x40fde344 bpf_prog_put +EXPORT_SYMBOL_GPL vmlinux 0x4100a662 clk_get_scaled_duty_cycle +EXPORT_SYMBOL_GPL vmlinux 0x410b4c55 shmem_file_setup_with_mnt +EXPORT_SYMBOL_GPL vmlinux 0x4110cb0b of_msi_configure +EXPORT_SYMBOL_GPL vmlinux 0x411b1d59 ata_sff_softreset +EXPORT_SYMBOL_GPL vmlinux 0x41237f71 cpu_have_feature +EXPORT_SYMBOL_GPL vmlinux 0x412bc681 ring_buffer_empty_cpu +EXPORT_SYMBOL_GPL vmlinux 0x413a31d1 mtk_pinconf_drive_get_raw +EXPORT_SYMBOL_GPL vmlinux 0x4143fb1c bd_unlink_disk_holder +EXPORT_SYMBOL_GPL vmlinux 0x41446612 is_nvdimm_sync +EXPORT_SYMBOL_GPL vmlinux 0x4147ffa3 crypto_grab_shash +EXPORT_SYMBOL_GPL vmlinux 0x414b088b meson_clk_mpll_ro_ops +EXPORT_SYMBOL_GPL vmlinux 0x414d119a videomode_from_timings +EXPORT_SYMBOL_GPL vmlinux 0x4158b617 iommu_aux_attach_device +EXPORT_SYMBOL_GPL vmlinux 0x41645e74 ahci_sdev_attrs +EXPORT_SYMBOL_GPL vmlinux 0x417017f5 kvm_vcpu_write_guest_page +EXPORT_SYMBOL_GPL vmlinux 0x41814cb8 dirty_writeback_interval +EXPORT_SYMBOL_GPL vmlinux 0x418873cc irq_bypass_register_producer +EXPORT_SYMBOL_GPL vmlinux 0x419b47a3 dma_get_slave_caps +EXPORT_SYMBOL_GPL vmlinux 0x419e7efd sfp_module_stop +EXPORT_SYMBOL_GPL vmlinux 0x41a43e55 class_interface_register +EXPORT_SYMBOL_GPL vmlinux 0x41a7de36 devm_of_icc_get +EXPORT_SYMBOL_GPL vmlinux 0x41aa6a81 __clocksource_register_scale +EXPORT_SYMBOL_GPL vmlinux 0x41b200f9 percpu_ref_init +EXPORT_SYMBOL_GPL vmlinux 0x41b8f2a9 devm_regmap_del_irq_chip +EXPORT_SYMBOL_GPL vmlinux 0x41c324b9 usb_hcd_poll_rh_status +EXPORT_SYMBOL_GPL vmlinux 0x41cbaa4d crypto_larval_alloc +EXPORT_SYMBOL_GPL vmlinux 0x41ccbc60 trace_array_set_clr_event +EXPORT_SYMBOL_GPL vmlinux 0x41d3418c dm_internal_resume +EXPORT_SYMBOL_GPL vmlinux 0x41e15929 usb_store_new_id +EXPORT_SYMBOL_GPL vmlinux 0x41ea7805 device_store_ulong +EXPORT_SYMBOL_GPL vmlinux 0x41ed3cec eventfd_ctx_remove_wait_queue +EXPORT_SYMBOL_GPL vmlinux 0x41eda85f subsys_dev_iter_init +EXPORT_SYMBOL_GPL vmlinux 0x41ef6d67 usb_disable_autosuspend +EXPORT_SYMBOL_GPL vmlinux 0x41fc25fb crypto_larval_kill +EXPORT_SYMBOL_GPL vmlinux 0x41fcd10c gpiod_set_raw_array_value +EXPORT_SYMBOL_GPL vmlinux 0x42041512 i2c_get_dma_safe_msg_buf +EXPORT_SYMBOL_GPL vmlinux 0x420bbbe6 __pci_epc_create +EXPORT_SYMBOL_GPL vmlinux 0x420f3d01 nvmem_unregister_notifier +EXPORT_SYMBOL_GPL vmlinux 0x42214614 __ftrace_vbprintk +EXPORT_SYMBOL_GPL vmlinux 0x42230915 sbitmap_any_bit_set +EXPORT_SYMBOL_GPL vmlinux 0x42324b3c devm_init_badblocks +EXPORT_SYMBOL_GPL vmlinux 0x423ee2e2 ehci_resume +EXPORT_SYMBOL_GPL vmlinux 0x4242f588 blkdev_nr_zones +EXPORT_SYMBOL_GPL vmlinux 0x42635d55 pm_suspend_global_flags +EXPORT_SYMBOL_GPL vmlinux 0x42641053 __hwspin_trylock +EXPORT_SYMBOL_GPL vmlinux 0x42708e59 da903x_write +EXPORT_SYMBOL_GPL vmlinux 0x427a3a3e clk_mux_val_to_index +EXPORT_SYMBOL_GPL vmlinux 0x42825ce2 rcu_scheduler_active +EXPORT_SYMBOL_GPL vmlinux 0x428b5401 powercap_unregister_zone +EXPORT_SYMBOL_GPL vmlinux 0x429ebc34 ata_sff_qc_issue +EXPORT_SYMBOL_GPL vmlinux 0x42af47ca icc_link_destroy +EXPORT_SYMBOL_GPL vmlinux 0x42b9ffd7 cpuidle_unregister_driver +EXPORT_SYMBOL_GPL vmlinux 0x42bdc873 wbc_detach_inode +EXPORT_SYMBOL_GPL vmlinux 0x42c2bb5b dm_internal_suspend_noflush +EXPORT_SYMBOL_GPL vmlinux 0x42e526de regulator_unregister_notifier +EXPORT_SYMBOL_GPL vmlinux 0x42e9d0da ring_buffer_unlock_commit +EXPORT_SYMBOL_GPL vmlinux 0x42f728aa mctrl_gpio_get_outputs +EXPORT_SYMBOL_GPL vmlinux 0x42fba1c7 __sbitmap_queue_get_shallow +EXPORT_SYMBOL_GPL vmlinux 0x4311c95a ndo_dflt_bridge_getlink +EXPORT_SYMBOL_GPL vmlinux 0x4324f207 pci_set_pcie_reset_state +EXPORT_SYMBOL_GPL vmlinux 0x43346c06 hisi_clk_register_phase +EXPORT_SYMBOL_GPL vmlinux 0x433ae21c user_preparse +EXPORT_SYMBOL_GPL vmlinux 0x4349bba8 skb_morph +EXPORT_SYMBOL_GPL vmlinux 0x43542f33 irq_domain_free_fwnode +EXPORT_SYMBOL_GPL vmlinux 0x4354a830 mmu_notifier_get_locked +EXPORT_SYMBOL_GPL vmlinux 0x436083b4 crypto_stats_skcipher_encrypt +EXPORT_SYMBOL_GPL vmlinux 0x43609005 dma_release_channel +EXPORT_SYMBOL_GPL vmlinux 0x43663c72 dw_pcie_msi_init +EXPORT_SYMBOL_GPL vmlinux 0x437eb1df ipv6_mod_enabled +EXPORT_SYMBOL_GPL vmlinux 0x438808ef xhci_mtk_drop_ep_quirk +EXPORT_SYMBOL_GPL vmlinux 0x438bc672 cpufreq_driver_target +EXPORT_SYMBOL_GPL vmlinux 0x438d8df2 iova_cache_get +EXPORT_SYMBOL_GPL vmlinux 0x43a35664 pin_user_pages_fast_only +EXPORT_SYMBOL_GPL vmlinux 0x43aa319e lease_register_notifier +EXPORT_SYMBOL_GPL vmlinux 0x43bdecfb dw_pcie_ep_init_notify +EXPORT_SYMBOL_GPL vmlinux 0x43be0639 of_genpd_add_subdomain +EXPORT_SYMBOL_GPL vmlinux 0x43c2a786 __cpu_clear_user_page +EXPORT_SYMBOL_GPL vmlinux 0x43de4f24 smp_call_function_single_async +EXPORT_SYMBOL_GPL vmlinux 0x43eecb38 device_find_child_by_name +EXPORT_SYMBOL_GPL vmlinux 0x43f56e82 ata_xfer_mode2shift +EXPORT_SYMBOL_GPL vmlinux 0x43f81957 clk_round_rate +EXPORT_SYMBOL_GPL vmlinux 0x43fac6d1 dbs_update +EXPORT_SYMBOL_GPL vmlinux 0x44126e1d tty_port_register_device +EXPORT_SYMBOL_GPL vmlinux 0x4413d73e tc3589x_reg_read +EXPORT_SYMBOL_GPL vmlinux 0x442d89c5 phy_10gbit_fec_features +EXPORT_SYMBOL_GPL vmlinux 0x442df9b1 devres_alloc_node +EXPORT_SYMBOL_GPL vmlinux 0x44399a0d pci_status_get_and_clear_errors +EXPORT_SYMBOL_GPL vmlinux 0x4444b462 sata_port_ops +EXPORT_SYMBOL_GPL vmlinux 0x444f1735 cpu_pm_register_notifier +EXPORT_SYMBOL_GPL vmlinux 0x445a09c0 nvmem_device_cell_write +EXPORT_SYMBOL_GPL vmlinux 0x445de821 metadata_dst_alloc +EXPORT_SYMBOL_GPL vmlinux 0x44770296 gpiochip_generic_free +EXPORT_SYMBOL_GPL vmlinux 0x44811e98 inet6_csk_addr2sockaddr +EXPORT_SYMBOL_GPL vmlinux 0x4484a5a4 wait_for_device_probe +EXPORT_SYMBOL_GPL vmlinux 0x44a0a732 icc_disable +EXPORT_SYMBOL_GPL vmlinux 0x44a23aab fib_nl_newrule +EXPORT_SYMBOL_GPL vmlinux 0x44a793ab HYPERVISOR_grant_table_op +EXPORT_SYMBOL_GPL vmlinux 0x44aa1b3a skb_to_sgvec_nomark +EXPORT_SYMBOL_GPL vmlinux 0x44bae227 bit_wait_timeout +EXPORT_SYMBOL_GPL vmlinux 0x44cf8cf0 blk_zone_cond_str +EXPORT_SYMBOL_GPL vmlinux 0x44d1f330 ata_scsi_dma_need_drain +EXPORT_SYMBOL_GPL vmlinux 0x44e1e9aa balloon_stats +EXPORT_SYMBOL_GPL vmlinux 0x44ee1cb6 clk_register_fixed_factor +EXPORT_SYMBOL_GPL vmlinux 0x44f6046e skb_mpls_update_lse +EXPORT_SYMBOL_GPL vmlinux 0x44f6cf4e free_vm_area +EXPORT_SYMBOL_GPL vmlinux 0x44fa9131 of_get_display_timing +EXPORT_SYMBOL_GPL vmlinux 0x44fee405 badblocks_store +EXPORT_SYMBOL_GPL vmlinux 0x45023a55 devlink_param_value_changed +EXPORT_SYMBOL_GPL vmlinux 0x4507f4a8 cpuhp_tasks_frozen +EXPORT_SYMBOL_GPL vmlinux 0x451ada43 pwm_request_from_chip +EXPORT_SYMBOL_GPL vmlinux 0x4525ba8f dev_pm_qos_add_ancestor_request +EXPORT_SYMBOL_GPL vmlinux 0x4531624f usb_decode_ctrl +EXPORT_SYMBOL_GPL vmlinux 0x4531ab62 copy_from_kernel_nofault +EXPORT_SYMBOL_GPL vmlinux 0x45426a3c ata_link_online +EXPORT_SYMBOL_GPL vmlinux 0x454e629a fsl_mc_resource_free +EXPORT_SYMBOL_GPL vmlinux 0x4554ced1 usb_phy_set_charger_current +EXPORT_SYMBOL_GPL vmlinux 0x45558f56 clk_unregister_fixed_factor +EXPORT_SYMBOL_GPL vmlinux 0x45592a03 shmem_read_mapping_page_gfp +EXPORT_SYMBOL_GPL vmlinux 0x4561f990 qcom_smem_state_unregister +EXPORT_SYMBOL_GPL vmlinux 0x4564f0ea da903x_clr_bits +EXPORT_SYMBOL_GPL vmlinux 0x456b1ab4 device_initialize +EXPORT_SYMBOL_GPL vmlinux 0x457060a5 __udp_enqueue_schedule_skb +EXPORT_SYMBOL_GPL vmlinux 0x4573b878 gen10g_config_aneg +EXPORT_SYMBOL_GPL vmlinux 0x457594fa crypto_alg_list +EXPORT_SYMBOL_GPL vmlinux 0x4578cd8f blk_mq_force_complete_rq +EXPORT_SYMBOL_GPL vmlinux 0x457963d0 phy_validate +EXPORT_SYMBOL_GPL vmlinux 0x45902319 device_add +EXPORT_SYMBOL_GPL vmlinux 0x459a7763 pinctrl_get +EXPORT_SYMBOL_GPL vmlinux 0x45ca9a40 nd_blk_memremap_flags +EXPORT_SYMBOL_GPL vmlinux 0x45cd7636 __fat_fs_error +EXPORT_SYMBOL_GPL vmlinux 0x45d3ef73 gpiochip_add_pingroup_range +EXPORT_SYMBOL_GPL vmlinux 0x45d63318 put_device +EXPORT_SYMBOL_GPL vmlinux 0x45d825ca irq_chip_get_parent_state +EXPORT_SYMBOL_GPL vmlinux 0x45d9bf79 acpi_subsys_suspend_noirq +EXPORT_SYMBOL_GPL vmlinux 0x45f1d67f dev_set_name +EXPORT_SYMBOL_GPL vmlinux 0x46013233 net_dec_ingress_queue +EXPORT_SYMBOL_GPL vmlinux 0x4603d43a kobject_uevent +EXPORT_SYMBOL_GPL vmlinux 0x46066e5b perf_pmu_name +EXPORT_SYMBOL_GPL vmlinux 0x46222792 inet6_lookup +EXPORT_SYMBOL_GPL vmlinux 0x463be680 dev_pm_qos_expose_flags +EXPORT_SYMBOL_GPL vmlinux 0x463cc3a3 nd_blk_region_provider_data +EXPORT_SYMBOL_GPL vmlinux 0x464bd297 skcipher_walk_done +EXPORT_SYMBOL_GPL vmlinux 0x464be499 securityfs_create_symlink +EXPORT_SYMBOL_GPL vmlinux 0x466093fb init_iova_flush_queue +EXPORT_SYMBOL_GPL vmlinux 0x4667a170 devm_hwspin_lock_request +EXPORT_SYMBOL_GPL vmlinux 0x4688d7ec pvclock_gtod_unregister_notifier +EXPORT_SYMBOL_GPL vmlinux 0x46afc0b4 software_node_fwnode +EXPORT_SYMBOL_GPL vmlinux 0x46c5be22 clk_multiplier_ops +EXPORT_SYMBOL_GPL vmlinux 0x46c9ef9c k3_udma_glue_rx_flow_init +EXPORT_SYMBOL_GPL vmlinux 0x46c9f39e virtqueue_get_avail_addr +EXPORT_SYMBOL_GPL vmlinux 0x46cb5f57 watchdog_set_restart_priority +EXPORT_SYMBOL_GPL vmlinux 0x46e62e40 phy_pm_runtime_put_sync +EXPORT_SYMBOL_GPL vmlinux 0x46f1522f trace_get_event_file +EXPORT_SYMBOL_GPL vmlinux 0x46f42be0 devlink_fmsg_u8_put +EXPORT_SYMBOL_GPL vmlinux 0x46f4badd udp4_hwcsum +EXPORT_SYMBOL_GPL vmlinux 0x47186f9f serdev_device_set_tiocm +EXPORT_SYMBOL_GPL vmlinux 0x47187ba6 ata_dev_disable +EXPORT_SYMBOL_GPL vmlinux 0x47229b5c gpio_request +EXPORT_SYMBOL_GPL vmlinux 0x47311f93 device_store_int +EXPORT_SYMBOL_GPL vmlinux 0x4731f7d5 stmpe_block_write +EXPORT_SYMBOL_GPL vmlinux 0x47372fe6 handle_fasteoi_irq +EXPORT_SYMBOL_GPL vmlinux 0x476167c8 remove_memory +EXPORT_SYMBOL_GPL vmlinux 0x4761f17c register_netevent_notifier +EXPORT_SYMBOL_GPL vmlinux 0x476e2a0f platform_msi_domain_alloc_irqs +EXPORT_SYMBOL_GPL vmlinux 0x476e654b crypto_stats_decompress +EXPORT_SYMBOL_GPL vmlinux 0x4785dfbb hvc_poll +EXPORT_SYMBOL_GPL vmlinux 0x47884890 system_power_efficient_wq +EXPORT_SYMBOL_GPL vmlinux 0x4793e827 vfs_submount +EXPORT_SYMBOL_GPL vmlinux 0x479f7d4b clk_bulk_disable +EXPORT_SYMBOL_GPL vmlinux 0x47a89953 __tracepoint_pelt_cfs_tp +EXPORT_SYMBOL_GPL vmlinux 0x47aad3b9 have_governor_per_policy +EXPORT_SYMBOL_GPL vmlinux 0x47ab14cc proc_mkdir_data +EXPORT_SYMBOL_GPL vmlinux 0x47acbb82 ata_sff_thaw +EXPORT_SYMBOL_GPL vmlinux 0x47bf1a97 clk_hw_rate_is_protected +EXPORT_SYMBOL_GPL vmlinux 0x47c6e182 kvm_vcpu_wake_up +EXPORT_SYMBOL_GPL vmlinux 0x47d0eea2 acpi_lpat_temp_to_raw +EXPORT_SYMBOL_GPL vmlinux 0x47de0dc7 clk_unregister_mux +EXPORT_SYMBOL_GPL vmlinux 0x47f01a94 devm_pinctrl_unregister +EXPORT_SYMBOL_GPL vmlinux 0x47f4bf9b bio_disassociate_blkg +EXPORT_SYMBOL_GPL vmlinux 0x4815aa79 dev_pm_opp_cpumask_remove_table +EXPORT_SYMBOL_GPL vmlinux 0x4819c856 __fib_lookup +EXPORT_SYMBOL_GPL vmlinux 0x48289e29 clk_hw_round_rate +EXPORT_SYMBOL_GPL vmlinux 0x4828e77b acpi_scan_lock_acquire +EXPORT_SYMBOL_GPL vmlinux 0x482e5de3 acpi_device_update_power +EXPORT_SYMBOL_GPL vmlinux 0x483a69d4 cpufreq_cooling_unregister +EXPORT_SYMBOL_GPL vmlinux 0x48420bc7 device_match_name +EXPORT_SYMBOL_GPL vmlinux 0x4843a748 qman_portals_probed +EXPORT_SYMBOL_GPL vmlinux 0x485cd7f6 kvm_rebooting +EXPORT_SYMBOL_GPL vmlinux 0x48620b19 ping_get_port +EXPORT_SYMBOL_GPL vmlinux 0x487e4ba4 rio_lock_device +EXPORT_SYMBOL_GPL vmlinux 0x4881292d md_new_event +EXPORT_SYMBOL_GPL vmlinux 0x48823762 led_trigger_remove +EXPORT_SYMBOL_GPL vmlinux 0x48a3cde2 fscrypt_ioctl_remove_key_all_users +EXPORT_SYMBOL_GPL vmlinux 0x48a3d20b mctrl_gpio_get +EXPORT_SYMBOL_GPL vmlinux 0x48a5acb3 skcipher_alloc_instance_simple +EXPORT_SYMBOL_GPL vmlinux 0x48c2cdaa vfs_getxattr_alloc +EXPORT_SYMBOL_GPL vmlinux 0x48ced2ed devm_extcon_dev_register +EXPORT_SYMBOL_GPL vmlinux 0x48db13c4 meson_clk_mpll_ops +EXPORT_SYMBOL_GPL vmlinux 0x48f49400 apei_hest_parse +EXPORT_SYMBOL_GPL vmlinux 0x49076900 dma_buf_map_attachment +EXPORT_SYMBOL_GPL vmlinux 0x49142fca nf_nat_hook +EXPORT_SYMBOL_GPL vmlinux 0x491933c9 sdio_enable_func +EXPORT_SYMBOL_GPL vmlinux 0x49242bc7 freezer_cgrp_subsys_on_dfl_key +EXPORT_SYMBOL_GPL vmlinux 0x4939ebcd numa_map_to_online_node +EXPORT_SYMBOL_GPL vmlinux 0x49470023 __pneigh_lookup +EXPORT_SYMBOL_GPL vmlinux 0x49487936 invalidate_inode_pages2 +EXPORT_SYMBOL_GPL vmlinux 0x494ff0fa crypto_aes_set_key +EXPORT_SYMBOL_GPL vmlinux 0x496e81a9 init_uts_ns +EXPORT_SYMBOL_GPL vmlinux 0x49728bbf __audit_inode_child +EXPORT_SYMBOL_GPL vmlinux 0x4977a36b arizona_dev_exit +EXPORT_SYMBOL_GPL vmlinux 0x4982629f ping_queue_rcv_skb +EXPORT_SYMBOL_GPL vmlinux 0x4982bcf0 pinctrl_enable +EXPORT_SYMBOL_GPL vmlinux 0x49895d4e metadata_dst_free +EXPORT_SYMBOL_GPL vmlinux 0x499043d3 crypto_init_queue +EXPORT_SYMBOL_GPL vmlinux 0x49a0928d pm_runtime_forbid +EXPORT_SYMBOL_GPL vmlinux 0x49a83446 blk_queue_flag_test_and_set +EXPORT_SYMBOL_GPL vmlinux 0x49b3f1d8 cpufreq_dbs_governor_limits +EXPORT_SYMBOL_GPL vmlinux 0x49d15a3a icc_node_create +EXPORT_SYMBOL_GPL vmlinux 0x49d3d49c subsys_find_device_by_id +EXPORT_SYMBOL_GPL vmlinux 0x49db2b23 blkg_conf_finish +EXPORT_SYMBOL_GPL vmlinux 0x49db5c64 __tracepoint_neigh_event_send_done +EXPORT_SYMBOL_GPL vmlinux 0x49e0fd21 __cpu_copy_user_page +EXPORT_SYMBOL_GPL vmlinux 0x49e96999 cond_synchronize_rcu +EXPORT_SYMBOL_GPL vmlinux 0x49f8e08b strp_stop +EXPORT_SYMBOL_GPL vmlinux 0x4a17ed66 sysrq_mask +EXPORT_SYMBOL_GPL vmlinux 0x4a289239 bio_trim +EXPORT_SYMBOL_GPL vmlinux 0x4a2c621c class_destroy +EXPORT_SYMBOL_GPL vmlinux 0x4a2e1dae gfn_to_hva_memslot +EXPORT_SYMBOL_GPL vmlinux 0x4a36fb0b i2c_new_dummy_device +EXPORT_SYMBOL_GPL vmlinux 0x4a420d09 acpi_bus_detach_private_data +EXPORT_SYMBOL_GPL vmlinux 0x4a4897bb dev_pm_opp_free_cpufreq_table +EXPORT_SYMBOL_GPL vmlinux 0x4a518472 of_irq_parse_and_map_pci +EXPORT_SYMBOL_GPL vmlinux 0x4a732976 lp8788_read_byte +EXPORT_SYMBOL_GPL vmlinux 0x4a777939 ata_sff_postreset +EXPORT_SYMBOL_GPL vmlinux 0x4a8660f1 pm_generic_thaw +EXPORT_SYMBOL_GPL vmlinux 0x4aa42064 divider_round_rate_parent +EXPORT_SYMBOL_GPL vmlinux 0x4aa58bea inet_getpeer +EXPORT_SYMBOL_GPL vmlinux 0x4ab0e5f0 ata_sas_port_init +EXPORT_SYMBOL_GPL vmlinux 0x4abcfabd ahci_host_activate +EXPORT_SYMBOL_GPL vmlinux 0x4aec2004 bpf_prog_inc +EXPORT_SYMBOL_GPL vmlinux 0x4aed5718 __dev_forward_skb +EXPORT_SYMBOL_GPL vmlinux 0x4af3693d iomap_writepage +EXPORT_SYMBOL_GPL vmlinux 0x4b05186a pci_msi_mask_irq +EXPORT_SYMBOL_GPL vmlinux 0x4b0fb94f irq_alloc_generic_chip +EXPORT_SYMBOL_GPL vmlinux 0x4b335f77 cpufreq_disable_fast_switch +EXPORT_SYMBOL_GPL vmlinux 0x4b33ffab dma_need_sync +EXPORT_SYMBOL_GPL vmlinux 0x4b3e5557 pwmchip_add_with_polarity +EXPORT_SYMBOL_GPL vmlinux 0x4b3f8bb7 devm_pinctrl_put +EXPORT_SYMBOL_GPL vmlinux 0x4b51f74c ata_xfer_mode2mask +EXPORT_SYMBOL_GPL vmlinux 0x4b762c7e kvm_write_guest_cached +EXPORT_SYMBOL_GPL vmlinux 0x4b904167 devm_get_free_pages +EXPORT_SYMBOL_GPL vmlinux 0x4b931968 xen_features +EXPORT_SYMBOL_GPL vmlinux 0x4ba8a46f irq_generic_chip_ops +EXPORT_SYMBOL_GPL vmlinux 0x4bc18742 iommu_device_unregister +EXPORT_SYMBOL_GPL vmlinux 0x4bc44ef1 bpf_prog_create +EXPORT_SYMBOL_GPL vmlinux 0x4bc8727f xen_balloon_init +EXPORT_SYMBOL_GPL vmlinux 0x4be104bf sk_psock_init +EXPORT_SYMBOL_GPL vmlinux 0x4bf03e70 xenbus_dev_groups +EXPORT_SYMBOL_GPL vmlinux 0x4c070a62 icc_nodes_remove +EXPORT_SYMBOL_GPL vmlinux 0x4c14f3b2 __of_reset_control_get +EXPORT_SYMBOL_GPL vmlinux 0x4c2c0ea7 evtchn_make_refcounted +EXPORT_SYMBOL_GPL vmlinux 0x4c402239 kgdb_register_io_module +EXPORT_SYMBOL_GPL vmlinux 0x4c66fc48 ata_scsi_slave_config +EXPORT_SYMBOL_GPL vmlinux 0x4c67f3d7 rtnl_delete_link +EXPORT_SYMBOL_GPL vmlinux 0x4c6da251 gpiochip_generic_config +EXPORT_SYMBOL_GPL vmlinux 0x4c7678bb aead_register_instance +EXPORT_SYMBOL_GPL vmlinux 0x4c788f5f clockevent_delta2ns +EXPORT_SYMBOL_GPL vmlinux 0x4c7a7848 crypto_stats_aead_encrypt +EXPORT_SYMBOL_GPL vmlinux 0x4c7bc1c5 regulator_register_supply_alias +EXPORT_SYMBOL_GPL vmlinux 0x4c8339e4 inet_hash_connect +EXPORT_SYMBOL_GPL vmlinux 0x4c932552 mmu_notifier_range_update_to_read_only +EXPORT_SYMBOL_GPL vmlinux 0x4c9bc71d ping_init_sock +EXPORT_SYMBOL_GPL vmlinux 0x4ca5ae4b xfrm_state_mtu +EXPORT_SYMBOL_GPL vmlinux 0x4caded34 pwmchip_remove +EXPORT_SYMBOL_GPL vmlinux 0x4cbd7c6f i2c_handle_smbus_host_notify +EXPORT_SYMBOL_GPL vmlinux 0x4cc8ca47 devm_thermal_of_cooling_device_register +EXPORT_SYMBOL_GPL vmlinux 0x4cd3ff81 device_get_dma_attr +EXPORT_SYMBOL_GPL vmlinux 0x4ce66fd3 hwmon_device_register_with_groups +EXPORT_SYMBOL_GPL vmlinux 0x4cebdc5e con_debug_enter +EXPORT_SYMBOL_GPL vmlinux 0x4cf537d6 i2c_acpi_new_device +EXPORT_SYMBOL_GPL vmlinux 0x4cfff655 irq_domain_xlate_onetwocell +EXPORT_SYMBOL_GPL vmlinux 0x4d0015e2 cpu_hotplug_disable +EXPORT_SYMBOL_GPL vmlinux 0x4d012310 devlink_port_attrs_pci_vf_set +EXPORT_SYMBOL_GPL vmlinux 0x4d0a7b13 da903x_writes +EXPORT_SYMBOL_GPL vmlinux 0x4d17f4e9 transport_class_register +EXPORT_SYMBOL_GPL vmlinux 0x4d1cfdcd securityfs_create_dir +EXPORT_SYMBOL_GPL vmlinux 0x4d202b8c __xas_prev +EXPORT_SYMBOL_GPL vmlinux 0x4d26c126 serdev_device_wait_until_sent +EXPORT_SYMBOL_GPL vmlinux 0x4d2d729b virtio_device_restore +EXPORT_SYMBOL_GPL vmlinux 0x4d314bd7 sk_msg_free_nocharge +EXPORT_SYMBOL_GPL vmlinux 0x4d4d7b79 blk_mq_map_queues +EXPORT_SYMBOL_GPL vmlinux 0x4d6d0bbc iommu_group_ref_get +EXPORT_SYMBOL_GPL vmlinux 0x4d6e683c css_next_descendant_pre +EXPORT_SYMBOL_GPL vmlinux 0x4d762de6 vfs_removexattr +EXPORT_SYMBOL_GPL vmlinux 0x4d83c710 k3_udma_glue_tdown_tx_chn +EXPORT_SYMBOL_GPL vmlinux 0x4d8a96ab xas_set_mark +EXPORT_SYMBOL_GPL vmlinux 0x4d9260f9 kvm_read_guest +EXPORT_SYMBOL_GPL vmlinux 0x4d95d6d1 memcpy_flushcache +EXPORT_SYMBOL_GPL vmlinux 0x4da1f4a7 list_lru_del +EXPORT_SYMBOL_GPL vmlinux 0x4da65b42 of_mm_gpiochip_add_data +EXPORT_SYMBOL_GPL vmlinux 0x4dad073e regulator_map_voltage_iterate +EXPORT_SYMBOL_GPL vmlinux 0x4dae16e4 i2c_put_dma_safe_msg_buf +EXPORT_SYMBOL_GPL vmlinux 0x4dafbd48 devlink_dpipe_entry_ctx_close +EXPORT_SYMBOL_GPL vmlinux 0x4db141d0 crypto_rng_reset +EXPORT_SYMBOL_GPL vmlinux 0x4db77f4d hwspin_lock_request +EXPORT_SYMBOL_GPL vmlinux 0x4dbdb767 ti_sci_get_free_resource +EXPORT_SYMBOL_GPL vmlinux 0x4dc73fb4 of_reserved_mem_device_init_by_idx +EXPORT_SYMBOL_GPL vmlinux 0x4dd9d14d cn_netlink_send_mult +EXPORT_SYMBOL_GPL vmlinux 0x4ddf1718 dax_inode +EXPORT_SYMBOL_GPL vmlinux 0x4de17ab3 usb_state_string +EXPORT_SYMBOL_GPL vmlinux 0x4df46692 virtqueue_disable_cb +EXPORT_SYMBOL_GPL vmlinux 0x4e0e1435 crypto_unregister_shashes +EXPORT_SYMBOL_GPL vmlinux 0x4e17c613 ata_sff_queue_delayed_work +EXPORT_SYMBOL_GPL vmlinux 0x4e303ad8 tpm_chip_stop +EXPORT_SYMBOL_GPL vmlinux 0x4e3fd1b4 kvm_release_pfn_clean +EXPORT_SYMBOL_GPL vmlinux 0x4e4c37e2 freq_qos_remove_notifier +EXPORT_SYMBOL_GPL vmlinux 0x4e55084c genphy_c45_read_pma +EXPORT_SYMBOL_GPL vmlinux 0x4e600542 ahci_platform_ops +EXPORT_SYMBOL_GPL vmlinux 0x4e60c14e nd_cmd_in_size +EXPORT_SYMBOL_GPL vmlinux 0x4e6e2e03 mmc_cmdq_disable +EXPORT_SYMBOL_GPL vmlinux 0x4ea0498d pm_generic_thaw_early +EXPORT_SYMBOL_GPL vmlinux 0x4eac5fc1 cpu_mitigations_auto_nosmt +EXPORT_SYMBOL_GPL vmlinux 0x4eb94503 led_trigger_register_simple +EXPORT_SYMBOL_GPL vmlinux 0x4ece3615 blocking_notifier_chain_unregister +EXPORT_SYMBOL_GPL vmlinux 0x4ed66ef8 device_remove_properties +EXPORT_SYMBOL_GPL vmlinux 0x4ed7d5ef kvm_vcpu_kick +EXPORT_SYMBOL_GPL vmlinux 0x4ef5bcf4 perf_swevent_get_recursion_context +EXPORT_SYMBOL_GPL vmlinux 0x4f066211 sk_psock_tls_strp_read +EXPORT_SYMBOL_GPL vmlinux 0x4f0692b9 ata_host_detach +EXPORT_SYMBOL_GPL vmlinux 0x4f0c8ebc ata_pci_sff_activate_host +EXPORT_SYMBOL_GPL vmlinux 0x4f209b6e tc3589x_set_bits +EXPORT_SYMBOL_GPL vmlinux 0x4f20f899 pinconf_generic_parse_dt_config +EXPORT_SYMBOL_GPL vmlinux 0x4f2593f0 btree_update +EXPORT_SYMBOL_GPL vmlinux 0x4f3c3c76 wm8350_reg_lock +EXPORT_SYMBOL_GPL vmlinux 0x4f46fc2a regulator_list_hardware_vsel +EXPORT_SYMBOL_GPL vmlinux 0x4f48a11a mpc8xxx_spi_tx_buf_u8 +EXPORT_SYMBOL_GPL vmlinux 0x4f4c1612 bpf_offload_dev_match +EXPORT_SYMBOL_GPL vmlinux 0x4f56c7f6 pci_disable_pri +EXPORT_SYMBOL_GPL vmlinux 0x4f6a07fe show_rcu_gp_kthreads +EXPORT_SYMBOL_GPL vmlinux 0x4f6d69d7 fuse_file_poll +EXPORT_SYMBOL_GPL vmlinux 0x4f717a4c usb_remove_phy +EXPORT_SYMBOL_GPL vmlinux 0x4f72a987 uart_parse_options +EXPORT_SYMBOL_GPL vmlinux 0x4f8dadee clk_register +EXPORT_SYMBOL_GPL vmlinux 0x4f98d766 cpu_pm_unregister_notifier +EXPORT_SYMBOL_GPL vmlinux 0x4fa55f62 devfreq_event_get_edev_by_phandle +EXPORT_SYMBOL_GPL vmlinux 0x4fb72dc5 ehci_adjust_port_wakeup_flags +EXPORT_SYMBOL_GPL vmlinux 0x4fba34af blkcg_print_blkgs +EXPORT_SYMBOL_GPL vmlinux 0x4fc02643 rhashtable_walk_exit +EXPORT_SYMBOL_GPL vmlinux 0x4fc8206e sock_zerocopy_put_abort +EXPORT_SYMBOL_GPL vmlinux 0x4fcf9c2d pci_epc_mem_exit +EXPORT_SYMBOL_GPL vmlinux 0x4fd486c9 efivar_entry_add +EXPORT_SYMBOL_GPL vmlinux 0x4fdc945d sata_deb_timing_normal +EXPORT_SYMBOL_GPL vmlinux 0x4fe1eddf unregister_netevent_notifier +EXPORT_SYMBOL_GPL vmlinux 0x4fe26d72 pm_generic_freeze_late +EXPORT_SYMBOL_GPL vmlinux 0x4ffaf6ec sysfs_file_change_owner +EXPORT_SYMBOL_GPL vmlinux 0x500c768c apei_exec_read_register +EXPORT_SYMBOL_GPL vmlinux 0x5026585c xen_irq_from_gsi +EXPORT_SYMBOL_GPL vmlinux 0x503f7e9c dma_max_mapping_size +EXPORT_SYMBOL_GPL vmlinux 0x506b24e3 cpufreq_cpu_get +EXPORT_SYMBOL_GPL vmlinux 0x507ebc7d fl6_update_dst +EXPORT_SYMBOL_GPL vmlinux 0x50821def skcipher_walk_complete +EXPORT_SYMBOL_GPL vmlinux 0x50913ed3 device_dma_supported +EXPORT_SYMBOL_GPL vmlinux 0x5091b823 ring_buffer_read_start +EXPORT_SYMBOL_GPL vmlinux 0x5096c07e gpiod_set_consumer_name +EXPORT_SYMBOL_GPL vmlinux 0x50a63f93 __tracepoint_devlink_hwmsg +EXPORT_SYMBOL_GPL vmlinux 0x50c2ae54 rpi_firmware_property +EXPORT_SYMBOL_GPL vmlinux 0x50d27a67 gfn_to_pfn_prot +EXPORT_SYMBOL_GPL vmlinux 0x50e7193a __i2c_first_dynamic_bus_num +EXPORT_SYMBOL_GPL vmlinux 0x50fad434 round_jiffies_up +EXPORT_SYMBOL_GPL vmlinux 0x5105ed65 da903x_read +EXPORT_SYMBOL_GPL vmlinux 0x511b3e89 blk_queue_set_zoned +EXPORT_SYMBOL_GPL vmlinux 0x5121b1bc xfrm_audit_state_replay +EXPORT_SYMBOL_GPL vmlinux 0x512467fd ata_pci_device_do_suspend +EXPORT_SYMBOL_GPL vmlinux 0x512bbaa9 fs_dax_get_by_bdev +EXPORT_SYMBOL_GPL vmlinux 0x51390c96 rcu_barrier_tasks_rude +EXPORT_SYMBOL_GPL vmlinux 0x513b0aca crypto_stats_skcipher_decrypt +EXPORT_SYMBOL_GPL vmlinux 0x513e00be ata_std_prereset +EXPORT_SYMBOL_GPL vmlinux 0x514d5cf9 debugfs_create_file_unsafe +EXPORT_SYMBOL_GPL vmlinux 0x515a331a strp_done +EXPORT_SYMBOL_GPL vmlinux 0x5169344d k3_udma_glue_pop_tx_chn +EXPORT_SYMBOL_GPL vmlinux 0x5187ac4b xen_store_evtchn +EXPORT_SYMBOL_GPL vmlinux 0x518d915f iommu_domain_set_attr +EXPORT_SYMBOL_GPL vmlinux 0x519979a1 sysfs_add_file_to_group +EXPORT_SYMBOL_GPL vmlinux 0x519f0970 bpf_offload_dev_create +EXPORT_SYMBOL_GPL vmlinux 0x519fa588 ack_all_badblocks +EXPORT_SYMBOL_GPL vmlinux 0x51a348cc usb_role_switch_set_drvdata +EXPORT_SYMBOL_GPL vmlinux 0x51ca8e4d gnttab_unmap_refs_async +EXPORT_SYMBOL_GPL vmlinux 0x51d22026 mmc_regulator_get_supply +EXPORT_SYMBOL_GPL vmlinux 0x51ef8e10 posix_acl_access_xattr_handler +EXPORT_SYMBOL_GPL vmlinux 0x51f250e2 regmap_multi_reg_write +EXPORT_SYMBOL_GPL vmlinux 0x51fc9a6d xenmem_reservation_decrease +EXPORT_SYMBOL_GPL vmlinux 0x5202a923 i2c_probe_func_quick_read +EXPORT_SYMBOL_GPL vmlinux 0x52036e4e cpufreq_cooling_register +EXPORT_SYMBOL_GPL vmlinux 0x520fac8c regulator_disable +EXPORT_SYMBOL_GPL vmlinux 0x52121118 __tracepoint_non_standard_event +EXPORT_SYMBOL_GPL vmlinux 0x522394e9 of_dma_request_slave_channel +EXPORT_SYMBOL_GPL vmlinux 0x52252316 clk_unregister_fixed_rate +EXPORT_SYMBOL_GPL vmlinux 0x523872d9 __serdev_device_driver_register +EXPORT_SYMBOL_GPL vmlinux 0x52431348 xenbus_transaction_start +EXPORT_SYMBOL_GPL vmlinux 0x52560e4a extcon_find_edev_by_node +EXPORT_SYMBOL_GPL vmlinux 0x5256e5e7 led_trigger_register +EXPORT_SYMBOL_GPL vmlinux 0x52814cb3 usb_bulk_msg +EXPORT_SYMBOL_GPL vmlinux 0x52920c94 fsl_mc_bus_dpcon_type +EXPORT_SYMBOL_GPL vmlinux 0x52a81934 xenbus_dev_error +EXPORT_SYMBOL_GPL vmlinux 0x52b1e3c7 pci_flags +EXPORT_SYMBOL_GPL vmlinux 0x52c35e83 call_rcu_tasks_trace +EXPORT_SYMBOL_GPL vmlinux 0x52cd9807 fwnode_create_software_node +EXPORT_SYMBOL_GPL vmlinux 0x52d54fce devlink_info_version_stored_put +EXPORT_SYMBOL_GPL vmlinux 0x52d70fce crypto_stats_akcipher_verify +EXPORT_SYMBOL_GPL vmlinux 0x52e52e60 scsi_device_from_queue +EXPORT_SYMBOL_GPL vmlinux 0x52e90328 phy_led_trigger_change_speed +EXPORT_SYMBOL_GPL vmlinux 0x530c180b class_dev_iter_next +EXPORT_SYMBOL_GPL vmlinux 0x530da43f phy_start_machine +EXPORT_SYMBOL_GPL vmlinux 0x530f0ff9 xenbus_watch_path +EXPORT_SYMBOL_GPL vmlinux 0x531fb2e4 devm_of_platform_depopulate +EXPORT_SYMBOL_GPL vmlinux 0x53216c8c task_cputime_adjusted +EXPORT_SYMBOL_GPL vmlinux 0x532b90b5 kprobe_event_cmd_init +EXPORT_SYMBOL_GPL vmlinux 0x533520b2 of_icc_get +EXPORT_SYMBOL_GPL vmlinux 0x5351ac2d vfs_getxattr +EXPORT_SYMBOL_GPL vmlinux 0x5358864e devlink_fmsg_binary_pair_nest_end +EXPORT_SYMBOL_GPL vmlinux 0x5358e014 wm831x_reg_unlock +EXPORT_SYMBOL_GPL vmlinux 0x535b65c0 hisi_uncore_pmu_add +EXPORT_SYMBOL_GPL vmlinux 0x535d60b7 clear_foreign_p2m_mapping +EXPORT_SYMBOL_GPL vmlinux 0x536822e3 sfp_module_insert +EXPORT_SYMBOL_GPL vmlinux 0x536e79a5 tracing_cond_snapshot_data +EXPORT_SYMBOL_GPL vmlinux 0x53716ca7 i2c_unregister_device +EXPORT_SYMBOL_GPL vmlinux 0x537968c2 smpboot_register_percpu_thread +EXPORT_SYMBOL_GPL vmlinux 0x537f1dd7 shash_ahash_finup +EXPORT_SYMBOL_GPL vmlinux 0x538b92a2 extcon_register_notifier +EXPORT_SYMBOL_GPL vmlinux 0x538d073d phy_duplex_to_str +EXPORT_SYMBOL_GPL vmlinux 0x5391f2c7 gnttab_end_foreign_access_ref +EXPORT_SYMBOL_GPL vmlinux 0x53abadfa kthread_flush_work +EXPORT_SYMBOL_GPL vmlinux 0x53c089f5 property_entries_dup +EXPORT_SYMBOL_GPL vmlinux 0x53e06c0c power_supply_find_ocv2cap_table +EXPORT_SYMBOL_GPL vmlinux 0x53e0b54b devm_gpiochip_add_data_with_key +EXPORT_SYMBOL_GPL vmlinux 0x53e331a5 devm_led_classdev_unregister +EXPORT_SYMBOL_GPL vmlinux 0x53e565df devm_clk_hw_unregister +EXPORT_SYMBOL_GPL vmlinux 0x53e67bc9 pin_get_name +EXPORT_SYMBOL_GPL vmlinux 0x541bd60a irq_work_run +EXPORT_SYMBOL_GPL vmlinux 0x54215db5 visitor64 +EXPORT_SYMBOL_GPL vmlinux 0x542fd2b0 clk_hw_is_enabled +EXPORT_SYMBOL_GPL vmlinux 0x543c571b __sock_recv_ts_and_drops +EXPORT_SYMBOL_GPL vmlinux 0x543e49e4 xenbus_probe_devices +EXPORT_SYMBOL_GPL vmlinux 0x5440d4cc crypto_unregister_templates +EXPORT_SYMBOL_GPL vmlinux 0x5441cbd5 pwm_capture +EXPORT_SYMBOL_GPL vmlinux 0x5445bb5a tcp_unregister_congestion_control +EXPORT_SYMBOL_GPL vmlinux 0x544d043e cpufreq_dbs_governor_start +EXPORT_SYMBOL_GPL vmlinux 0x545025e5 nvmem_add_cell_table +EXPORT_SYMBOL_GPL vmlinux 0x54531a32 fib_add_nexthop +EXPORT_SYMBOL_GPL vmlinux 0x546902ae spi_replace_transfers +EXPORT_SYMBOL_GPL vmlinux 0x5474060b pinconf_generic_dt_free_map +EXPORT_SYMBOL_GPL vmlinux 0x5474b467 serial8250_init_port +EXPORT_SYMBOL_GPL vmlinux 0x548cddc2 gpiod_toggle_active_low +EXPORT_SYMBOL_GPL vmlinux 0x549525ef handle_nested_irq +EXPORT_SYMBOL_GPL vmlinux 0x54955855 alarm_start_relative +EXPORT_SYMBOL_GPL vmlinux 0x54a25da2 qcom_smem_state_put +EXPORT_SYMBOL_GPL vmlinux 0x54b20dfa md_run +EXPORT_SYMBOL_GPL vmlinux 0x54b9b90b pci_disable_sriov +EXPORT_SYMBOL_GPL vmlinux 0x54ce53ca usb_amd_pt_check_port +EXPORT_SYMBOL_GPL vmlinux 0x54e1e555 rio_route_clr_table +EXPORT_SYMBOL_GPL vmlinux 0x54f7b8a3 virtqueue_detach_unused_buf +EXPORT_SYMBOL_GPL vmlinux 0x55182bba device_init_wakeup +EXPORT_SYMBOL_GPL vmlinux 0x551f0d8e fsverity_verify_page +EXPORT_SYMBOL_GPL vmlinux 0x552571ad perf_event_enable +EXPORT_SYMBOL_GPL vmlinux 0x5529facd usb_register_device_driver +EXPORT_SYMBOL_GPL vmlinux 0x55339365 flush_delayed_fput +EXPORT_SYMBOL_GPL vmlinux 0x553b49a4 cpufreq_get_driver_data +EXPORT_SYMBOL_GPL vmlinux 0x553efa42 device_property_read_u32_array +EXPORT_SYMBOL_GPL vmlinux 0x55417264 unregister_vt_notifier +EXPORT_SYMBOL_GPL vmlinux 0x555f9eca rhashtable_walk_enter +EXPORT_SYMBOL_GPL vmlinux 0x55605a63 fsnotify_parent +EXPORT_SYMBOL_GPL vmlinux 0x556d2606 clk_register_mux_table +EXPORT_SYMBOL_GPL vmlinux 0x556e4390 clk_get_rate +EXPORT_SYMBOL_GPL vmlinux 0x55784228 regmap_irq_get_virq +EXPORT_SYMBOL_GPL vmlinux 0x55948b11 ti_sci_put_handle +EXPORT_SYMBOL_GPL vmlinux 0x55a8a560 clk_fixed_rate_ops +EXPORT_SYMBOL_GPL vmlinux 0x55be4988 pci_epf_bind +EXPORT_SYMBOL_GPL vmlinux 0x55c34955 pinctrl_pm_select_sleep_state +EXPORT_SYMBOL_GPL vmlinux 0x55c76a23 ksys_sync_helper +EXPORT_SYMBOL_GPL vmlinux 0x55c9880c zynqmp_pm_release_node +EXPORT_SYMBOL_GPL vmlinux 0x55ca9e6e tps80031_ext_power_req_config +EXPORT_SYMBOL_GPL vmlinux 0x55dd7c35 vchan_tx_submit +EXPORT_SYMBOL_GPL vmlinux 0x55eb4d33 __dma_request_channel +EXPORT_SYMBOL_GPL vmlinux 0x55eecff4 bit_wait_io_timeout +EXPORT_SYMBOL_GPL vmlinux 0x560319fb wakeup_source_unregister +EXPORT_SYMBOL_GPL vmlinux 0x56054c05 crypto_it_tab +EXPORT_SYMBOL_GPL vmlinux 0x560efe5b debugfs_file_put +EXPORT_SYMBOL_GPL vmlinux 0x561428c3 kvm_read_guest_cached +EXPORT_SYMBOL_GPL vmlinux 0x56144f8b dev_pm_qos_flags +EXPORT_SYMBOL_GPL vmlinux 0x56173654 pcap_set_ts_bits +EXPORT_SYMBOL_GPL vmlinux 0x56251a19 hisi_uncore_pmu_enable +EXPORT_SYMBOL_GPL vmlinux 0x56256e8a orderly_poweroff +EXPORT_SYMBOL_GPL vmlinux 0x562b80b1 pm_generic_resume_noirq +EXPORT_SYMBOL_GPL vmlinux 0x56310925 regulator_mode_to_status +EXPORT_SYMBOL_GPL vmlinux 0x56335352 policy_has_boost_freq +EXPORT_SYMBOL_GPL vmlinux 0x5641485b tty_termios_encode_baud_rate +EXPORT_SYMBOL_GPL vmlinux 0x5662e2a7 fwnode_handle_put +EXPORT_SYMBOL_GPL vmlinux 0x566cb329 rio_dev_put +EXPORT_SYMBOL_GPL vmlinux 0x5674292e tty_set_ldisc +EXPORT_SYMBOL_GPL vmlinux 0x5674b3cb rhashtable_free_and_destroy +EXPORT_SYMBOL_GPL vmlinux 0x567edfe4 xen_xlate_remap_gfn_array +EXPORT_SYMBOL_GPL vmlinux 0x5684c536 regmap_parse_val +EXPORT_SYMBOL_GPL vmlinux 0x5686f7cb uart_set_options +EXPORT_SYMBOL_GPL vmlinux 0x568cd97c usb_of_has_combined_node +EXPORT_SYMBOL_GPL vmlinux 0x5692a54c virtqueue_get_buf_ctx +EXPORT_SYMBOL_GPL vmlinux 0x56930aa0 class_for_each_device +EXPORT_SYMBOL_GPL vmlinux 0x56a8c5d3 scsi_bus_type +EXPORT_SYMBOL_GPL vmlinux 0x56b7c943 regmap_update_bits_base +EXPORT_SYMBOL_GPL vmlinux 0x56e5ec45 input_ff_destroy +EXPORT_SYMBOL_GPL vmlinux 0x56e9103b cpu_pm_enter +EXPORT_SYMBOL_GPL vmlinux 0x56ebc1ab __fscrypt_encrypt_symlink +EXPORT_SYMBOL_GPL vmlinux 0x571762fb kvm_get_kvm +EXPORT_SYMBOL_GPL vmlinux 0x571dcbea pm_genpd_remove +EXPORT_SYMBOL_GPL vmlinux 0x571f5f1b extcon_unregister_notifier +EXPORT_SYMBOL_GPL vmlinux 0x572a6759 io_cgrp_subsys +EXPORT_SYMBOL_GPL vmlinux 0x572ccbdc kset_find_obj +EXPORT_SYMBOL_GPL vmlinux 0x573b5453 ipv6_fixup_options +EXPORT_SYMBOL_GPL vmlinux 0x573b8a56 dev_pm_opp_set_supported_hw +EXPORT_SYMBOL_GPL vmlinux 0x574609c5 apei_exec_write_register_value +EXPORT_SYMBOL_GPL vmlinux 0x57489f85 ip6_datagram_release_cb +EXPORT_SYMBOL_GPL vmlinux 0x574a0f8f pm_runtime_set_autosuspend_delay +EXPORT_SYMBOL_GPL vmlinux 0x57592337 event_triggers_call +EXPORT_SYMBOL_GPL vmlinux 0x575f5726 ip_route_output_key_hash +EXPORT_SYMBOL_GPL vmlinux 0x57719632 gnttab_grant_foreign_access +EXPORT_SYMBOL_GPL vmlinux 0x57732438 inet_twsk_purge +EXPORT_SYMBOL_GPL vmlinux 0x577b0e53 power_supply_am_i_supplied +EXPORT_SYMBOL_GPL vmlinux 0x578eb371 platform_get_resource_byname +EXPORT_SYMBOL_GPL vmlinux 0x578eeb4d hugetlb_cgrp_subsys_enabled_key +EXPORT_SYMBOL_GPL vmlinux 0x5790e7a0 pci_unlock_rescan_remove +EXPORT_SYMBOL_GPL vmlinux 0x579e0bf5 rtnl_unregister_all +EXPORT_SYMBOL_GPL vmlinux 0x57a447ee debugfs_create_devm_seqfile +EXPORT_SYMBOL_GPL vmlinux 0x57ad3fce regmap_get_val_bytes +EXPORT_SYMBOL_GPL vmlinux 0x57aeff27 regmap_mmio_attach_clk +EXPORT_SYMBOL_GPL vmlinux 0x57bbf7c2 subsys_virtual_register +EXPORT_SYMBOL_GPL vmlinux 0x57c39727 kdb_register_flags +EXPORT_SYMBOL_GPL vmlinux 0x57c65837 debugfs_create_u32 +EXPORT_SYMBOL_GPL vmlinux 0x57c92974 ata_acpi_cbl_80wire +EXPORT_SYMBOL_GPL vmlinux 0x57d586a0 ata_slave_link_init +EXPORT_SYMBOL_GPL vmlinux 0x57e69f96 get_device_system_crosststamp +EXPORT_SYMBOL_GPL vmlinux 0x57ec5ab6 iomap_set_page_dirty +EXPORT_SYMBOL_GPL vmlinux 0x57ef7829 extcon_get_extcon_dev +EXPORT_SYMBOL_GPL vmlinux 0x57f302af devres_release +EXPORT_SYMBOL_GPL vmlinux 0x57f70547 secure_ipv4_port_ephemeral +EXPORT_SYMBOL_GPL vmlinux 0x57ff6bd2 em_cpu_get +EXPORT_SYMBOL_GPL vmlinux 0x58008504 __rio_local_read_config_8 +EXPORT_SYMBOL_GPL vmlinux 0x58276f93 cper_next_record_id +EXPORT_SYMBOL_GPL vmlinux 0x582b8ed8 da9052_adc_manual_read +EXPORT_SYMBOL_GPL vmlinux 0x5831e062 cpus_read_trylock +EXPORT_SYMBOL_GPL vmlinux 0x58326356 dm_get_table_device +EXPORT_SYMBOL_GPL vmlinux 0x584194e0 xhci_suspend +EXPORT_SYMBOL_GPL vmlinux 0x584f938f wm5110_revd_irq +EXPORT_SYMBOL_GPL vmlinux 0x5850154b fuse_conn_put +EXPORT_SYMBOL_GPL vmlinux 0x5879a27d sfp_get_module_info +EXPORT_SYMBOL_GPL vmlinux 0x5882b817 iomap_ioend_try_merge +EXPORT_SYMBOL_GPL vmlinux 0x58955e40 handle_fasteoi_ack_irq +EXPORT_SYMBOL_GPL vmlinux 0x58a6d39f extcon_dev_unregister +EXPORT_SYMBOL_GPL vmlinux 0x58adba06 devlink_dpipe_headers_register +EXPORT_SYMBOL_GPL vmlinux 0x58cc52a6 devres_destroy +EXPORT_SYMBOL_GPL vmlinux 0x58d05977 ahci_save_initial_config +EXPORT_SYMBOL_GPL vmlinux 0x58def6ca sfp_module_remove +EXPORT_SYMBOL_GPL vmlinux 0x58e073a2 uart_console_device +EXPORT_SYMBOL_GPL vmlinux 0x58e14f15 HYPERVISOR_event_channel_op +EXPORT_SYMBOL_GPL vmlinux 0x58fce0db hisi_uncore_pmu_event_update +EXPORT_SYMBOL_GPL vmlinux 0x5918d5b9 ethnl_cable_test_free +EXPORT_SYMBOL_GPL vmlinux 0x5925f981 devm_device_add_group +EXPORT_SYMBOL_GPL vmlinux 0x59302a89 usb_register_dev +EXPORT_SYMBOL_GPL vmlinux 0x5936c28b kvm_io_bus_write +EXPORT_SYMBOL_GPL vmlinux 0x593ba6f9 ti_sci_inta_msi_create_irq_domain +EXPORT_SYMBOL_GPL vmlinux 0x5946aca9 crypto_dequeue_request +EXPORT_SYMBOL_GPL vmlinux 0x5967061f of_genpd_parse_idle_states +EXPORT_SYMBOL_GPL vmlinux 0x5986d190 kdb_printf +EXPORT_SYMBOL_GPL vmlinux 0x59881f24 pinctrl_generic_get_group_name +EXPORT_SYMBOL_GPL vmlinux 0x599a23f0 devlink_dpipe_action_put +EXPORT_SYMBOL_GPL vmlinux 0x599fdc21 nvm_get_chunk_meta +EXPORT_SYMBOL_GPL vmlinux 0x59b23970 restore_online_page_callback +EXPORT_SYMBOL_GPL vmlinux 0x59b2adbf input_ff_effect_from_user +EXPORT_SYMBOL_GPL vmlinux 0x59bfabed xenbus_switch_state +EXPORT_SYMBOL_GPL vmlinux 0x59d2a1b4 mm_unaccount_pinned_pages +EXPORT_SYMBOL_GPL vmlinux 0x59d8dcd0 fuse_request_end +EXPORT_SYMBOL_GPL vmlinux 0x59e4fc58 pm_wakeup_dev_event +EXPORT_SYMBOL_GPL vmlinux 0x59e640c0 halt_poll_ns +EXPORT_SYMBOL_GPL vmlinux 0x59ed45c3 regmap_noinc_write +EXPORT_SYMBOL_GPL vmlinux 0x59ef12cf __ip6_datagram_connect +EXPORT_SYMBOL_GPL vmlinux 0x59fb3201 i2c_new_smbus_alert_device +EXPORT_SYMBOL_GPL vmlinux 0x59fe70a8 ftrace_set_filter_ip +EXPORT_SYMBOL_GPL vmlinux 0x5a0322a4 pm_stay_awake +EXPORT_SYMBOL_GPL vmlinux 0x5a0368b0 vchan_tx_desc_free +EXPORT_SYMBOL_GPL vmlinux 0x5a08bf23 nf_hook_entries_insert_raw +EXPORT_SYMBOL_GPL vmlinux 0x5a121a9b pci_epc_add_epf +EXPORT_SYMBOL_GPL vmlinux 0x5a1377c0 register_acpi_bus_type +EXPORT_SYMBOL_GPL vmlinux 0x5a1d134a rcu_momentary_dyntick_idle +EXPORT_SYMBOL_GPL vmlinux 0x5a354be7 ata_wait_register +EXPORT_SYMBOL_GPL vmlinux 0x5a3e6aa8 serial8250_em485_start_tx +EXPORT_SYMBOL_GPL vmlinux 0x5a49dbc9 timerqueue_del +EXPORT_SYMBOL_GPL vmlinux 0x5a6cdb52 nf_ct_zone_dflt +EXPORT_SYMBOL_GPL vmlinux 0x5a7184d6 devm_power_supply_register +EXPORT_SYMBOL_GPL vmlinux 0x5a729cef of_get_videomode +EXPORT_SYMBOL_GPL vmlinux 0x5a7bfe41 crypto_probing_notify +EXPORT_SYMBOL_GPL vmlinux 0x5a82d8a5 rio_mport_get_physefb +EXPORT_SYMBOL_GPL vmlinux 0x5a9487a7 crypto_unregister_instance +EXPORT_SYMBOL_GPL vmlinux 0x5aa7f71b unix_outq_len +EXPORT_SYMBOL_GPL vmlinux 0x5aa86b50 led_trigger_blink +EXPORT_SYMBOL_GPL vmlinux 0x5aad5df4 of_i2c_get_board_info +EXPORT_SYMBOL_GPL vmlinux 0x5ab09745 edac_get_owner +EXPORT_SYMBOL_GPL vmlinux 0x5abaf3d3 irq_chip_disable_parent +EXPORT_SYMBOL_GPL vmlinux 0x5ac15d50 devm_extcon_dev_allocate +EXPORT_SYMBOL_GPL vmlinux 0x5ac3c4c4 __account_locked_vm +EXPORT_SYMBOL_GPL vmlinux 0x5ac8d27f iomap_readahead +EXPORT_SYMBOL_GPL vmlinux 0x5acd6ee2 iommu_sva_unbind_gpasid +EXPORT_SYMBOL_GPL vmlinux 0x5ad1f62e ip_local_out +EXPORT_SYMBOL_GPL vmlinux 0x5ad7e1b1 cpuidle_register_driver +EXPORT_SYMBOL_GPL vmlinux 0x5af4fd04 is_dock_device +EXPORT_SYMBOL_GPL vmlinux 0x5afc7e37 bind_interdomain_evtchn_to_irqhandler +EXPORT_SYMBOL_GPL vmlinux 0x5b0076b4 platform_bus +EXPORT_SYMBOL_GPL vmlinux 0x5b0a39ac ip6_route_input_lookup +EXPORT_SYMBOL_GPL vmlinux 0x5b1a6764 virtqueue_is_broken +EXPORT_SYMBOL_GPL vmlinux 0x5b1e630c sock_diag_register_inet_compat +EXPORT_SYMBOL_GPL vmlinux 0x5b21ceff ring_buffer_iter_peek +EXPORT_SYMBOL_GPL vmlinux 0x5b2fa3ca ata_msleep +EXPORT_SYMBOL_GPL vmlinux 0x5b6b0329 swiotlb_max_segment +EXPORT_SYMBOL_GPL vmlinux 0x5b6bd7eb gpiod_get_array +EXPORT_SYMBOL_GPL vmlinux 0x5b6f5a35 ata_std_bios_param +EXPORT_SYMBOL_GPL vmlinux 0x5b7c9c1e serdev_device_set_parity +EXPORT_SYMBOL_GPL vmlinux 0x5b937b48 stmpe_enable +EXPORT_SYMBOL_GPL vmlinux 0x5b9d2b5e hrtimer_init_sleeper +EXPORT_SYMBOL_GPL vmlinux 0x5b9ff612 pm_generic_restore_early +EXPORT_SYMBOL_GPL vmlinux 0x5ba07d95 of_property_read_u32_index +EXPORT_SYMBOL_GPL vmlinux 0x5bb07791 sb800_prefetch +EXPORT_SYMBOL_GPL vmlinux 0x5bbdfa26 scatterwalk_ffwd +EXPORT_SYMBOL_GPL vmlinux 0x5bbe63aa ping_getfrag +EXPORT_SYMBOL_GPL vmlinux 0x5bcbd6be gnttab_page_cache_get +EXPORT_SYMBOL_GPL vmlinux 0x5bd0748f crypto_del_default_rng +EXPORT_SYMBOL_GPL vmlinux 0x5bd5814a class_dev_iter_init +EXPORT_SYMBOL_GPL vmlinux 0x5bdae35b usb_phy_roothub_set_mode +EXPORT_SYMBOL_GPL vmlinux 0x5bdbac4e rcu_unexpedite_gp +EXPORT_SYMBOL_GPL vmlinux 0x5bfc773b pm_generic_suspend_late +EXPORT_SYMBOL_GPL vmlinux 0x5c00ca29 sysfs_add_link_to_group +EXPORT_SYMBOL_GPL vmlinux 0x5c0f77ce HYPERVISOR_platform_op_raw +EXPORT_SYMBOL_GPL vmlinux 0x5c12b184 gpiochip_line_is_irq +EXPORT_SYMBOL_GPL vmlinux 0x5c2bcd37 bpf_warn_invalid_xdp_action +EXPORT_SYMBOL_GPL vmlinux 0x5c31fbac ncsi_unregister_dev +EXPORT_SYMBOL_GPL vmlinux 0x5c40bee3 __pm_runtime_resume +EXPORT_SYMBOL_GPL vmlinux 0x5c5a1b16 tick_broadcast_control +EXPORT_SYMBOL_GPL vmlinux 0x5c66e90c efivar_run_worker +EXPORT_SYMBOL_GPL vmlinux 0x5c93107d of_nvmem_cell_get +EXPORT_SYMBOL_GPL vmlinux 0x5cab9945 unregister_xenbus_watch +EXPORT_SYMBOL_GPL vmlinux 0x5cad8fc3 power_supply_ocv2cap_simple +EXPORT_SYMBOL_GPL vmlinux 0x5cb2ca98 __class_register +EXPORT_SYMBOL_GPL vmlinux 0x5ce28fda led_sysfs_enable +EXPORT_SYMBOL_GPL vmlinux 0x5ce8d76f shmem_truncate_range +EXPORT_SYMBOL_GPL vmlinux 0x5cf8bde2 of_thermal_is_trip_valid +EXPORT_SYMBOL_GPL vmlinux 0x5cf9c940 devm_of_phy_get +EXPORT_SYMBOL_GPL vmlinux 0x5cfdbb99 addrconf_add_linklocal +EXPORT_SYMBOL_GPL vmlinux 0x5d0087a7 meson_clk_pcie_pll_ops +EXPORT_SYMBOL_GPL vmlinux 0x5d00f44e ohci_restart +EXPORT_SYMBOL_GPL vmlinux 0x5d17148b apei_write +EXPORT_SYMBOL_GPL vmlinux 0x5d4f93c5 fsl_mc_cleanup_irq_pool +EXPORT_SYMBOL_GPL vmlinux 0x5d619868 wm8350_set_bits +EXPORT_SYMBOL_GPL vmlinux 0x5d64871b virtio_finalize_features +EXPORT_SYMBOL_GPL vmlinux 0x5d6722bb nd_blk_region_to_dimm +EXPORT_SYMBOL_GPL vmlinux 0x5d6a3aae perf_event_sysfs_show +EXPORT_SYMBOL_GPL vmlinux 0x5d76332c usb_of_get_interface_node +EXPORT_SYMBOL_GPL vmlinux 0x5d7b4dac gpiod_set_raw_value_cansleep +EXPORT_SYMBOL_GPL vmlinux 0x5d846fe9 tun_get_socket +EXPORT_SYMBOL_GPL vmlinux 0x5d8476d3 bpf_sk_storage_diag_alloc +EXPORT_SYMBOL_GPL vmlinux 0x5d8ecd4c ping_seq_next +EXPORT_SYMBOL_GPL vmlinux 0x5da67adc zs_compact +EXPORT_SYMBOL_GPL vmlinux 0x5dacce9d mpc8xxx_spi_tx_buf_u16 +EXPORT_SYMBOL_GPL vmlinux 0x5db66c75 pci_epc_unmap_addr +EXPORT_SYMBOL_GPL vmlinux 0x5dbb5c61 fuse_dev_alloc_install +EXPORT_SYMBOL_GPL vmlinux 0x5dcd2903 of_fdt_unflatten_tree +EXPORT_SYMBOL_GPL vmlinux 0x5ddc9805 to_nd_blk_region +EXPORT_SYMBOL_GPL vmlinux 0x5de412cd k3_ringacc_ring_push +EXPORT_SYMBOL_GPL vmlinux 0x5de7447d __atomic_notifier_call_chain +EXPORT_SYMBOL_GPL vmlinux 0x5df3222e bd_link_disk_holder +EXPORT_SYMBOL_GPL vmlinux 0x5dfbb358 __hvc_resize +EXPORT_SYMBOL_GPL vmlinux 0x5e14b5fb bpf_map_inc_with_uref +EXPORT_SYMBOL_GPL vmlinux 0x5e173309 cpu_cgrp_subsys_on_dfl_key +EXPORT_SYMBOL_GPL vmlinux 0x5e21f136 crypto_stats_aead_decrypt +EXPORT_SYMBOL_GPL vmlinux 0x5e30ac54 dev_pm_domain_detach +EXPORT_SYMBOL_GPL vmlinux 0x5e39c6f8 ehci_hub_control +EXPORT_SYMBOL_GPL vmlinux 0x5e4a0c33 kvm_vcpu_gfn_to_pfn_atomic +EXPORT_SYMBOL_GPL vmlinux 0x5e515be6 ktime_get_ts64 +EXPORT_SYMBOL_GPL vmlinux 0x5e51cd74 swiotlb_nr_tbl +EXPORT_SYMBOL_GPL vmlinux 0x5e60af2f dev_pm_opp_register_set_opp_helper +EXPORT_SYMBOL_GPL vmlinux 0x5e67684f fib_rule_matchall +EXPORT_SYMBOL_GPL vmlinux 0x5e6d586f nl_table +EXPORT_SYMBOL_GPL vmlinux 0x5e6f941c iommu_aux_detach_device +EXPORT_SYMBOL_GPL vmlinux 0x5e70dfcb __pci_hp_initialize +EXPORT_SYMBOL_GPL vmlinux 0x5e76bb57 k3_ringacc_ring_get_size +EXPORT_SYMBOL_GPL vmlinux 0x5e798ffb divider_get_val +EXPORT_SYMBOL_GPL vmlinux 0x5e85415b ring_buffer_consume +EXPORT_SYMBOL_GPL vmlinux 0x5e8bb9f1 blk_mq_sched_request_inserted +EXPORT_SYMBOL_GPL vmlinux 0x5e8eb80c mmc_cmdq_enable +EXPORT_SYMBOL_GPL vmlinux 0x5e9f534c ahci_platform_get_resources +EXPORT_SYMBOL_GPL vmlinux 0x5ea5399b fscrypt_get_symlink +EXPORT_SYMBOL_GPL vmlinux 0x5ea80d3d lwtunnel_get_encap_size +EXPORT_SYMBOL_GPL vmlinux 0x5eb94bed devlink_region_create +EXPORT_SYMBOL_GPL vmlinux 0x5ec62549 ata_dev_classify +EXPORT_SYMBOL_GPL vmlinux 0x5eced7f3 bus_register +EXPORT_SYMBOL_GPL vmlinux 0x5ed946be skb_defer_rx_timestamp +EXPORT_SYMBOL_GPL vmlinux 0x5ee90e4a mtk_pinconf_drive_set +EXPORT_SYMBOL_GPL vmlinux 0x5ef548cf mtk_eint_do_suspend +EXPORT_SYMBOL_GPL vmlinux 0x5efc1a43 srcu_batches_completed +EXPORT_SYMBOL_GPL vmlinux 0x5f01eaed blk_abort_request +EXPORT_SYMBOL_GPL vmlinux 0x5f0a07d3 pci_epc_mem_init +EXPORT_SYMBOL_GPL vmlinux 0x5f1e3fc6 rio_mport_read_config_8 +EXPORT_SYMBOL_GPL vmlinux 0x5f23e3fa insert_resource +EXPORT_SYMBOL_GPL vmlinux 0x5f2de2c0 mbox_controller_register +EXPORT_SYMBOL_GPL vmlinux 0x5f3a7a3b stmpe_reg_read +EXPORT_SYMBOL_GPL vmlinux 0x5f408273 gpiod_set_transitory +EXPORT_SYMBOL_GPL vmlinux 0x5f497628 gnttab_pages_set_private +EXPORT_SYMBOL_GPL vmlinux 0x5f4b1edd devm_reset_controller_register +EXPORT_SYMBOL_GPL vmlinux 0x5f5bfaaf nvmem_device_get +EXPORT_SYMBOL_GPL vmlinux 0x5f62116e pci_dev_run_wake +EXPORT_SYMBOL_GPL vmlinux 0x5f665d10 iommu_map +EXPORT_SYMBOL_GPL vmlinux 0x5f6ba998 device_rename +EXPORT_SYMBOL_GPL vmlinux 0x5f6c3440 __of_phy_provider_register +EXPORT_SYMBOL_GPL vmlinux 0x5f6f1e9e dax_get_private +EXPORT_SYMBOL_GPL vmlinux 0x5f72a984 dpcon_disable +EXPORT_SYMBOL_GPL vmlinux 0x5f7a9f85 pin_user_pages_fast +EXPORT_SYMBOL_GPL vmlinux 0x5f911fd7 skb_tstamp_tx +EXPORT_SYMBOL_GPL vmlinux 0x5fafc1db acpi_get_psd_map +EXPORT_SYMBOL_GPL vmlinux 0x5fb8848b halt_poll_ns_grow_start +EXPORT_SYMBOL_GPL vmlinux 0x5fc1f243 regmap_get_raw_write_max +EXPORT_SYMBOL_GPL vmlinux 0x5fc515eb edac_mc_del_mc +EXPORT_SYMBOL_GPL vmlinux 0x5fcaa7c2 ata_sas_port_destroy +EXPORT_SYMBOL_GPL vmlinux 0x5fcc0019 fib6_new_table +EXPORT_SYMBOL_GPL vmlinux 0x5fd42971 subsys_interface_unregister +EXPORT_SYMBOL_GPL vmlinux 0x5ffc0a16 phy_10gbit_full_features +EXPORT_SYMBOL_GPL vmlinux 0x6002d289 i2c_slave_register +EXPORT_SYMBOL_GPL vmlinux 0x6003de36 of_devfreq_cooling_register_power +EXPORT_SYMBOL_GPL vmlinux 0x60069ee1 inet_ehash_locks_alloc +EXPORT_SYMBOL_GPL vmlinux 0x600728d3 ata_qc_complete +EXPORT_SYMBOL_GPL vmlinux 0x60091316 clk_notifier_register +EXPORT_SYMBOL_GPL vmlinux 0x600a4eb4 extcon_sync +EXPORT_SYMBOL_GPL vmlinux 0x601ba3eb __tracepoint_io_page_fault +EXPORT_SYMBOL_GPL vmlinux 0x60299165 ip6_pol_route +EXPORT_SYMBOL_GPL vmlinux 0x6030b82b mmc_regulator_set_ocr +EXPORT_SYMBOL_GPL vmlinux 0x603d0d51 acpi_os_map_iomem +EXPORT_SYMBOL_GPL vmlinux 0x60442822 phys_to_mach +EXPORT_SYMBOL_GPL vmlinux 0x604722fd devices_cgrp_subsys_enabled_key +EXPORT_SYMBOL_GPL vmlinux 0x6058da06 sock_diag_unregister_inet_compat +EXPORT_SYMBOL_GPL vmlinux 0x605d5bfa cache_line_size +EXPORT_SYMBOL_GPL vmlinux 0x6061abc9 __vfs_setxattr_noperm +EXPORT_SYMBOL_GPL vmlinux 0x606e306e hwmon_device_register_with_info +EXPORT_SYMBOL_GPL vmlinux 0x606f2897 sk_msg_zerocopy_from_iter +EXPORT_SYMBOL_GPL vmlinux 0x60744894 devm_acpi_dev_add_driver_gpios +EXPORT_SYMBOL_GPL vmlinux 0x607b0984 net_ns_get_ownership +EXPORT_SYMBOL_GPL vmlinux 0x607c4683 devlink_info_version_fixed_put +EXPORT_SYMBOL_GPL vmlinux 0x607e9409 __blkdev_driver_ioctl +EXPORT_SYMBOL_GPL vmlinux 0x60806523 i2c_acpi_get_i2c_resource +EXPORT_SYMBOL_GPL vmlinux 0x608679d1 __platform_driver_probe +EXPORT_SYMBOL_GPL vmlinux 0x608acc32 devm_hwrng_register +EXPORT_SYMBOL_GPL vmlinux 0x608bafce security_inode_mkdir +EXPORT_SYMBOL_GPL vmlinux 0x6091797f synchronize_rcu +EXPORT_SYMBOL_GPL vmlinux 0x60a13e90 rcu_barrier +EXPORT_SYMBOL_GPL vmlinux 0x60a32ea9 pm_power_off +EXPORT_SYMBOL_GPL vmlinux 0x60a456de ata_sff_wait_ready +EXPORT_SYMBOL_GPL vmlinux 0x60b2967c devm_gpio_request +EXPORT_SYMBOL_GPL vmlinux 0x60c0ba43 mddev_unlock +EXPORT_SYMBOL_GPL vmlinux 0x60c744de usb_init_urb +EXPORT_SYMBOL_GPL vmlinux 0x60d490bc kthread_flush_worker +EXPORT_SYMBOL_GPL vmlinux 0x60ebc96f ring_buffer_read_prepare +EXPORT_SYMBOL_GPL vmlinux 0x60f99e1b cppc_set_perf +EXPORT_SYMBOL_GPL vmlinux 0x60fdc91d dw_pcie_ep_init +EXPORT_SYMBOL_GPL vmlinux 0x61012129 iommu_sva_bind_device +EXPORT_SYMBOL_GPL vmlinux 0x61129f4f ata_bmdma_stop +EXPORT_SYMBOL_GPL vmlinux 0x6118a49d ata_std_error_handler +EXPORT_SYMBOL_GPL vmlinux 0x611cfa85 klist_add_tail +EXPORT_SYMBOL_GPL vmlinux 0x6122e5e5 led_set_brightness +EXPORT_SYMBOL_GPL vmlinux 0x6129fb93 sfp_remove_phy +EXPORT_SYMBOL_GPL vmlinux 0x612bfd89 errno_to_blk_status +EXPORT_SYMBOL_GPL vmlinux 0x612f514c of_property_read_variable_u64_array +EXPORT_SYMBOL_GPL vmlinux 0x61310671 crypto_enqueue_request +EXPORT_SYMBOL_GPL vmlinux 0x614adcb7 of_overlay_remove_all +EXPORT_SYMBOL_GPL vmlinux 0x615fe3b7 devlink_net_set +EXPORT_SYMBOL_GPL vmlinux 0x616b30c7 kmsg_dump_rewind +EXPORT_SYMBOL_GPL vmlinux 0x617b026c hwrng_register +EXPORT_SYMBOL_GPL vmlinux 0x6181e79f timerqueue_add +EXPORT_SYMBOL_GPL vmlinux 0x6198dfea __ring_buffer_alloc +EXPORT_SYMBOL_GPL vmlinux 0x6199ad5d crypto_has_skcipher +EXPORT_SYMBOL_GPL vmlinux 0x61ae1d2d xas_pause +EXPORT_SYMBOL_GPL vmlinux 0x61b55764 alloc_vm_area +EXPORT_SYMBOL_GPL vmlinux 0x61b88ce6 disk_part_iter_next +EXPORT_SYMBOL_GPL vmlinux 0x61bbbc3a ahci_platform_disable_phys +EXPORT_SYMBOL_GPL vmlinux 0x61c35cab dev_attr_em_message_type +EXPORT_SYMBOL_GPL vmlinux 0x61c83b37 power_supply_get_property +EXPORT_SYMBOL_GPL vmlinux 0x61cc120c tpm_chip_unregister +EXPORT_SYMBOL_GPL vmlinux 0x61d874a8 pm_wakeup_ws_event +EXPORT_SYMBOL_GPL vmlinux 0x61e17a9b ata_bmdma_dumb_qc_prep +EXPORT_SYMBOL_GPL vmlinux 0x61e231aa ata_scsi_queuecmd +EXPORT_SYMBOL_GPL vmlinux 0x61f67c92 phy_gbit_features_array +EXPORT_SYMBOL_GPL vmlinux 0x620243de devm_usb_get_phy_by_node +EXPORT_SYMBOL_GPL vmlinux 0x62126f46 devm_clk_bulk_get_optional +EXPORT_SYMBOL_GPL vmlinux 0x62178158 of_pm_clk_add_clks +EXPORT_SYMBOL_GPL vmlinux 0x622c7922 register_oom_notifier +EXPORT_SYMBOL_GPL vmlinux 0x62377a7b blk_io_schedule +EXPORT_SYMBOL_GPL vmlinux 0x6238c8e2 housekeeping_cpumask +EXPORT_SYMBOL_GPL vmlinux 0x6239b9cc perf_pmu_register +EXPORT_SYMBOL_GPL vmlinux 0x623a1368 irq_remove_generic_chip +EXPORT_SYMBOL_GPL vmlinux 0x623f0ffe devres_get +EXPORT_SYMBOL_GPL vmlinux 0x6241d083 mpc8xxx_spi_rx_buf_u16 +EXPORT_SYMBOL_GPL vmlinux 0x6246a629 synchronize_rcu_tasks_trace +EXPORT_SYMBOL_GPL vmlinux 0x6257dda7 clk_rate_exclusive_get +EXPORT_SYMBOL_GPL vmlinux 0x6259d291 clk_restore_context +EXPORT_SYMBOL_GPL vmlinux 0x625a1c15 kernfs_path_from_node +EXPORT_SYMBOL_GPL vmlinux 0x62664204 sched_trace_cfs_rq_path +EXPORT_SYMBOL_GPL vmlinux 0x626ba286 sock_gen_put +EXPORT_SYMBOL_GPL vmlinux 0x627360c3 public_key_subtype +EXPORT_SYMBOL_GPL vmlinux 0x6285c4e0 regulator_disable_regmap +EXPORT_SYMBOL_GPL vmlinux 0x6292a69b da903x_register_notifier +EXPORT_SYMBOL_GPL vmlinux 0x6293a781 ahci_platform_suspend_host +EXPORT_SYMBOL_GPL vmlinux 0x62b679e9 tpm1_do_selftest +EXPORT_SYMBOL_GPL vmlinux 0x62bb09bf clocks_calc_mult_shift +EXPORT_SYMBOL_GPL vmlinux 0x62c60b55 device_property_match_string +EXPORT_SYMBOL_GPL vmlinux 0x62c7dc13 pci_find_next_ht_capability +EXPORT_SYMBOL_GPL vmlinux 0x62c976dc pinctrl_register +EXPORT_SYMBOL_GPL vmlinux 0x62d94822 of_mm_gpiochip_remove +EXPORT_SYMBOL_GPL vmlinux 0x62eef0d6 tty_standard_install +EXPORT_SYMBOL_GPL vmlinux 0x63150e06 clk_get_parent +EXPORT_SYMBOL_GPL vmlinux 0x6318757f mdio_mux_uninit +EXPORT_SYMBOL_GPL vmlinux 0x63197685 s2idle_wake +EXPORT_SYMBOL_GPL vmlinux 0x63237e58 virtqueue_notify +EXPORT_SYMBOL_GPL vmlinux 0x632adce9 debugfs_create_bool +EXPORT_SYMBOL_GPL vmlinux 0x63337a0c noop_backing_dev_info +EXPORT_SYMBOL_GPL vmlinux 0x6333ad04 pm_genpd_syscore_poweron +EXPORT_SYMBOL_GPL vmlinux 0x63358028 powercap_register_control_type +EXPORT_SYMBOL_GPL vmlinux 0x633904a7 device_node_to_regmap +EXPORT_SYMBOL_GPL vmlinux 0x634118d7 power_supply_property_is_writeable +EXPORT_SYMBOL_GPL vmlinux 0x634624a1 fsstack_copy_attr_all +EXPORT_SYMBOL_GPL vmlinux 0x634bfbdb tty_encode_baud_rate +EXPORT_SYMBOL_GPL vmlinux 0x6385f455 wm831x_set_bits +EXPORT_SYMBOL_GPL vmlinux 0x638aff11 proc_douintvec_minmax +EXPORT_SYMBOL_GPL vmlinux 0x638c5c62 input_class +EXPORT_SYMBOL_GPL vmlinux 0x639c5b0a usb_ep0_reinit +EXPORT_SYMBOL_GPL vmlinux 0x639c61a6 acpi_get_pci_dev +EXPORT_SYMBOL_GPL vmlinux 0x639e3e86 regulator_bulk_force_disable +EXPORT_SYMBOL_GPL vmlinux 0x63bb292b devm_usb_get_phy_by_phandle +EXPORT_SYMBOL_GPL vmlinux 0x63bfaa4d devm_device_remove_groups +EXPORT_SYMBOL_GPL vmlinux 0x63c08029 clk_bulk_unprepare +EXPORT_SYMBOL_GPL vmlinux 0x63d45ffd tty_kclose +EXPORT_SYMBOL_GPL vmlinux 0x63da24e6 fsl_mc_driver_unregister +EXPORT_SYMBOL_GPL vmlinux 0x63ea80b3 cper_mem_err_type_str +EXPORT_SYMBOL_GPL vmlinux 0x63f0d038 locks_alloc_lock +EXPORT_SYMBOL_GPL vmlinux 0x640ab48f for_each_kernel_tracepoint +EXPORT_SYMBOL_GPL vmlinux 0x6426210d regulator_list_voltage_linear_range +EXPORT_SYMBOL_GPL vmlinux 0x643b06b0 zynqmp_pm_clock_setrate +EXPORT_SYMBOL_GPL vmlinux 0x64502e85 blk_ksm_init +EXPORT_SYMBOL_GPL vmlinux 0x64529db3 pci_create_slot +EXPORT_SYMBOL_GPL vmlinux 0x645801c0 irq_create_fwspec_mapping +EXPORT_SYMBOL_GPL vmlinux 0x647537f3 pl320_ipc_register_notifier +EXPORT_SYMBOL_GPL vmlinux 0x647c7d2e usb_driver_release_interface +EXPORT_SYMBOL_GPL vmlinux 0x6485cd35 trace_print_bitmask_seq +EXPORT_SYMBOL_GPL vmlinux 0x6489e0d1 fsnotify_add_mark +EXPORT_SYMBOL_GPL vmlinux 0x6489faa2 ata_sas_port_alloc +EXPORT_SYMBOL_GPL vmlinux 0x648c3d4e alloc_dax_region +EXPORT_SYMBOL_GPL vmlinux 0x64925270 __dax_synchronous +EXPORT_SYMBOL_GPL vmlinux 0x649b463d regmap_get_val_endian +EXPORT_SYMBOL_GPL vmlinux 0x649e4229 tcp_reno_undo_cwnd +EXPORT_SYMBOL_GPL vmlinux 0x64c3af60 sysfs_rename_link_ns +EXPORT_SYMBOL_GPL vmlinux 0x64c3c4c1 nvdimm_bus_unregister +EXPORT_SYMBOL_GPL vmlinux 0x64c41442 powercap_unregister_control_type +EXPORT_SYMBOL_GPL vmlinux 0x64c848a0 sdio_writesb +EXPORT_SYMBOL_GPL vmlinux 0x64d19d2a dpm_for_each_dev +EXPORT_SYMBOL_GPL vmlinux 0x64d3cc4e xas_load +EXPORT_SYMBOL_GPL vmlinux 0x64d5c560 query_asymmetric_key +EXPORT_SYMBOL_GPL vmlinux 0x64e27c4f synth_event_delete +EXPORT_SYMBOL_GPL vmlinux 0x64f36620 dax_flush +EXPORT_SYMBOL_GPL vmlinux 0x64f4a50b __fl6_sock_lookup +EXPORT_SYMBOL_GPL vmlinux 0x64faf25c vprintk_default +EXPORT_SYMBOL_GPL vmlinux 0x6502d9c2 xenbus_scanf +EXPORT_SYMBOL_GPL vmlinux 0x650475e3 device_wakeup_enable +EXPORT_SYMBOL_GPL vmlinux 0x65106f50 sock_diag_register +EXPORT_SYMBOL_GPL vmlinux 0x651869c4 bus_get_kset +EXPORT_SYMBOL_GPL vmlinux 0x6519a670 k3_udma_glue_request_tx_chn +EXPORT_SYMBOL_GPL vmlinux 0x6520ff14 tracing_snapshot_cond_enable +EXPORT_SYMBOL_GPL vmlinux 0x653805e0 device_get_named_child_node +EXPORT_SYMBOL_GPL vmlinux 0x65511ca6 wm5102_spi_regmap +EXPORT_SYMBOL_GPL vmlinux 0x655ae48c bpf_map_put +EXPORT_SYMBOL_GPL vmlinux 0x655e4879 __irq_alloc_descs +EXPORT_SYMBOL_GPL vmlinux 0x6567eae5 of_genpd_add_provider_onecell +EXPORT_SYMBOL_GPL vmlinux 0x65698361 serial8250_rpm_put_tx +EXPORT_SYMBOL_GPL vmlinux 0x65859b7e fwnode_get_name +EXPORT_SYMBOL_GPL vmlinux 0x658820e5 ata_std_qc_defer +EXPORT_SYMBOL_GPL vmlinux 0x659e044a devlink_params_unregister +EXPORT_SYMBOL_GPL vmlinux 0x659e63f8 tracepoint_probe_register +EXPORT_SYMBOL_GPL vmlinux 0x65b42ae6 usb_enable_intel_xhci_ports +EXPORT_SYMBOL_GPL vmlinux 0x65b8c5fb __put_task_struct +EXPORT_SYMBOL_GPL vmlinux 0x65ccb6f0 call_netevent_notifiers +EXPORT_SYMBOL_GPL vmlinux 0x65dfdf46 regulator_is_equal +EXPORT_SYMBOL_GPL vmlinux 0x65e01af9 __sync_icache_dcache +EXPORT_SYMBOL_GPL vmlinux 0x65e08dd0 regulator_is_enabled_regmap +EXPORT_SYMBOL_GPL vmlinux 0x65e918eb wbc_account_cgroup_owner +EXPORT_SYMBOL_GPL vmlinux 0x65e999aa eventfd_ctx_fileget +EXPORT_SYMBOL_GPL vmlinux 0x65f9221a tpm_transmit_cmd +EXPORT_SYMBOL_GPL vmlinux 0x65fd7c74 percpu_free_rwsem +EXPORT_SYMBOL_GPL vmlinux 0x6609574a netlink_has_listeners +EXPORT_SYMBOL_GPL vmlinux 0x661601de sprint_symbol +EXPORT_SYMBOL_GPL vmlinux 0x6628939c crypto_shash_setkey +EXPORT_SYMBOL_GPL vmlinux 0x6636c3c9 irq_set_vcpu_affinity +EXPORT_SYMBOL_GPL vmlinux 0x663bb448 devlink_fmsg_obj_nest_end +EXPORT_SYMBOL_GPL vmlinux 0x664eb54a k3_ringacc_ring_reset_dma +EXPORT_SYMBOL_GPL vmlinux 0x6656ee49 page_reporting_register +EXPORT_SYMBOL_GPL vmlinux 0x665e92a0 clk_set_duty_cycle +EXPORT_SYMBOL_GPL vmlinux 0x665f6e63 cpci_hp_unregister_controller +EXPORT_SYMBOL_GPL vmlinux 0x6664f261 fib_rules_seq_read +EXPORT_SYMBOL_GPL vmlinux 0x666710b4 of_pci_find_child_device +EXPORT_SYMBOL_GPL vmlinux 0x666b755a __tracepoint_xdp_exception +EXPORT_SYMBOL_GPL vmlinux 0x66784278 kvm_irq_has_notifier +EXPORT_SYMBOL_GPL vmlinux 0x668402aa crypto_put_default_rng +EXPORT_SYMBOL_GPL vmlinux 0x6685bcb8 gpiochip_line_is_persistent +EXPORT_SYMBOL_GPL vmlinux 0x6694ca29 devm_request_pci_bus_resources +EXPORT_SYMBOL_GPL vmlinux 0x6697dc40 crypto_register_shash +EXPORT_SYMBOL_GPL vmlinux 0x66a6037f dw_pcie_ep_init_complete +EXPORT_SYMBOL_GPL vmlinux 0x66a6c061 tracepoint_probe_register_prio +EXPORT_SYMBOL_GPL vmlinux 0x66b97421 sfp_link_up +EXPORT_SYMBOL_GPL vmlinux 0x66d87d38 symbol_put_addr +EXPORT_SYMBOL_GPL vmlinux 0x66dae379 devm_otg_ulpi_create +EXPORT_SYMBOL_GPL vmlinux 0x66eb3d74 led_trigger_read +EXPORT_SYMBOL_GPL vmlinux 0x66f473b8 tcp_cong_avoid_ai +EXPORT_SYMBOL_GPL vmlinux 0x670da364 dev_pm_opp_put_regulators +EXPORT_SYMBOL_GPL vmlinux 0x670e6ba4 blk_mq_pci_map_queues +EXPORT_SYMBOL_GPL vmlinux 0x67131e16 akcipher_register_instance +EXPORT_SYMBOL_GPL vmlinux 0x672121fc spi_controller_dma_unmap_mem_op_data +EXPORT_SYMBOL_GPL vmlinux 0x6735d56e tcp_ca_get_name_by_key +EXPORT_SYMBOL_GPL vmlinux 0x6739a503 balloon_set_new_target +EXPORT_SYMBOL_GPL vmlinux 0x674a1a87 usb_alloc_coherent +EXPORT_SYMBOL_GPL vmlinux 0x675908a8 gpiochip_irq_map +EXPORT_SYMBOL_GPL vmlinux 0x676c688f k3_ringacc_ring_free +EXPORT_SYMBOL_GPL vmlinux 0x67718b65 pm_runtime_barrier +EXPORT_SYMBOL_GPL vmlinux 0x6778981a otg_ulpi_create +EXPORT_SYMBOL_GPL vmlinux 0x67824883 dev_pm_opp_remove_table +EXPORT_SYMBOL_GPL vmlinux 0x6792e25a __tracepoint_unmap +EXPORT_SYMBOL_GPL vmlinux 0x6794e721 lwtstate_free +EXPORT_SYMBOL_GPL vmlinux 0x67955ce6 profile_hits +EXPORT_SYMBOL_GPL vmlinux 0x67a18841 pm_runtime_force_resume +EXPORT_SYMBOL_GPL vmlinux 0x67ba7eb2 pci_epc_map_addr +EXPORT_SYMBOL_GPL vmlinux 0x67bebc35 serial8250_do_get_mctrl +EXPORT_SYMBOL_GPL vmlinux 0x67d16af4 serial8250_modem_status +EXPORT_SYMBOL_GPL vmlinux 0x67d53a42 fsnotify_destroy_mark +EXPORT_SYMBOL_GPL vmlinux 0x67da9f7c sha512_zero_message_hash +EXPORT_SYMBOL_GPL vmlinux 0x67eb87e3 phy_driver_is_genphy_10g +EXPORT_SYMBOL_GPL vmlinux 0x680ce423 usb_hcd_unmap_urb_setup_for_dma +EXPORT_SYMBOL_GPL vmlinux 0x6811916d platform_find_device_by_driver +EXPORT_SYMBOL_GPL vmlinux 0x68248154 power_supply_changed +EXPORT_SYMBOL_GPL vmlinux 0x682ff057 ring_buffer_commit_overrun_cpu +EXPORT_SYMBOL_GPL vmlinux 0x6831576f ip6_input +EXPORT_SYMBOL_GPL vmlinux 0x684ca117 zynqmp_pm_get_pll_frac_mode +EXPORT_SYMBOL_GPL vmlinux 0x6867d687 mmu_notifier_put +EXPORT_SYMBOL_GPL vmlinux 0x6869c8eb unregister_kprobes +EXPORT_SYMBOL_GPL vmlinux 0x687356db security_kernel_post_read_file +EXPORT_SYMBOL_GPL vmlinux 0x68792adc iommu_unmap +EXPORT_SYMBOL_GPL vmlinux 0x68814b73 fsl_mc_bus_dpsw_type +EXPORT_SYMBOL_GPL vmlinux 0x6892e3c3 kvm_set_pfn_accessed +EXPORT_SYMBOL_GPL vmlinux 0x68952493 rcu_note_context_switch +EXPORT_SYMBOL_GPL vmlinux 0x689563cc __ndisc_fill_addr_option +EXPORT_SYMBOL_GPL vmlinux 0x689844c2 phy_put +EXPORT_SYMBOL_GPL vmlinux 0x689b554f phy_led_triggers_unregister +EXPORT_SYMBOL_GPL vmlinux 0x68a00ec2 xfrm_dev_resume +EXPORT_SYMBOL_GPL vmlinux 0x68ad3d26 mtk_pinconf_bias_disable_get_rev1 +EXPORT_SYMBOL_GPL vmlinux 0x68b163a9 dev_fill_metadata_dst +EXPORT_SYMBOL_GPL vmlinux 0x68bf70ed ata_pci_bmdma_prepare_host +EXPORT_SYMBOL_GPL vmlinux 0x68ca5226 irq_get_domain_generic_chip +EXPORT_SYMBOL_GPL vmlinux 0x68dba123 __clk_hw_register_fixed_rate +EXPORT_SYMBOL_GPL vmlinux 0x68e86673 exportfs_encode_inode_fh +EXPORT_SYMBOL_GPL vmlinux 0x690f585e phy_basic_ports_array +EXPORT_SYMBOL_GPL vmlinux 0x69126e1c kvm_unmap_gfn +EXPORT_SYMBOL_GPL vmlinux 0x691c33dd tty_init_termios +EXPORT_SYMBOL_GPL vmlinux 0x692140ff pci_pasid_features +EXPORT_SYMBOL_GPL vmlinux 0x692514dc rt_mutex_timed_lock +EXPORT_SYMBOL_GPL vmlinux 0x692c5a7f irq_get_irq_data +EXPORT_SYMBOL_GPL vmlinux 0x692fc4a3 kernel_read_file +EXPORT_SYMBOL_GPL vmlinux 0x694ce030 firmware_kobj +EXPORT_SYMBOL_GPL vmlinux 0x69505134 phy_init +EXPORT_SYMBOL_GPL vmlinux 0x6958ae23 dax_get_by_host +EXPORT_SYMBOL_GPL vmlinux 0x696340a5 __i2c_board_lock +EXPORT_SYMBOL_GPL vmlinux 0x696f2b63 of_changeset_init +EXPORT_SYMBOL_GPL vmlinux 0x697c5d0d tracing_snapshot_alloc +EXPORT_SYMBOL_GPL vmlinux 0x698748e7 pcie_port_bus_type +EXPORT_SYMBOL_GPL vmlinux 0x69a36482 ata_bmdma_qc_issue +EXPORT_SYMBOL_GPL vmlinux 0x69a6a80d lwtunnel_cmp_encap +EXPORT_SYMBOL_GPL vmlinux 0x69b18bdd pm_runtime_suspended_time +EXPORT_SYMBOL_GPL vmlinux 0x69b4bcf4 sk_set_peek_off +EXPORT_SYMBOL_GPL vmlinux 0x69b7ae7f kvm_map_gfn +EXPORT_SYMBOL_GPL vmlinux 0x69c37d1e rio_route_get_entry +EXPORT_SYMBOL_GPL vmlinux 0x69cd8e46 fwnode_property_read_u16_array +EXPORT_SYMBOL_GPL vmlinux 0x69d30da6 edac_pci_handle_pe +EXPORT_SYMBOL_GPL vmlinux 0x69e683de uuid_gen +EXPORT_SYMBOL_GPL vmlinux 0x69ede011 peernet2id_alloc +EXPORT_SYMBOL_GPL vmlinux 0x69ee2220 linear_range_get_selector_high +EXPORT_SYMBOL_GPL vmlinux 0x6a05b65b fb_videomode_from_videomode +EXPORT_SYMBOL_GPL vmlinux 0x6a0b3302 icc_std_aggregate +EXPORT_SYMBOL_GPL vmlinux 0x6a0f31a7 rio_bus_type +EXPORT_SYMBOL_GPL vmlinux 0x6a1733eb iommu_group_unregister_notifier +EXPORT_SYMBOL_GPL vmlinux 0x6a207030 ata_scsi_change_queue_depth +EXPORT_SYMBOL_GPL vmlinux 0x6a2a2bf8 scsi_autopm_put_device +EXPORT_SYMBOL_GPL vmlinux 0x6a386842 update_time +EXPORT_SYMBOL_GPL vmlinux 0x6a421062 memory_failure_queue +EXPORT_SYMBOL_GPL vmlinux 0x6a460dc5 schedule_hrtimeout +EXPORT_SYMBOL_GPL vmlinux 0x6a4c2adc k3_udma_glue_push_tx_chn +EXPORT_SYMBOL_GPL vmlinux 0x6a4f623b mmu_notifier_synchronize +EXPORT_SYMBOL_GPL vmlinux 0x6a532b98 acpi_dev_suspend +EXPORT_SYMBOL_GPL vmlinux 0x6a5e2bde __cookie_v6_init_sequence +EXPORT_SYMBOL_GPL vmlinux 0x6a6bf3ed dev_pm_opp_set_regulators +EXPORT_SYMBOL_GPL vmlinux 0x6a771b3b __platform_register_drivers +EXPORT_SYMBOL_GPL vmlinux 0x6a8441be cpci_hp_start +EXPORT_SYMBOL_GPL vmlinux 0x6a9c229f iommu_device_sysfs_remove +EXPORT_SYMBOL_GPL vmlinux 0x6aa2a877 xenbus_printf +EXPORT_SYMBOL_GPL vmlinux 0x6aa3ad50 kernfs_get +EXPORT_SYMBOL_GPL vmlinux 0x6aab45ab tps6586x_update +EXPORT_SYMBOL_GPL vmlinux 0x6aad9152 xen_set_callback_via +EXPORT_SYMBOL_GPL vmlinux 0x6aaf0f63 da9052_regmap_config +EXPORT_SYMBOL_GPL vmlinux 0x6ac0580f sched_trace_rq_avg_rt +EXPORT_SYMBOL_GPL vmlinux 0x6b00700c sched_trace_cfs_rq_cpu +EXPORT_SYMBOL_GPL vmlinux 0x6b0a4075 usb_hcd_pci_probe +EXPORT_SYMBOL_GPL vmlinux 0x6b0dc565 xen_set_irq_priority +EXPORT_SYMBOL_GPL vmlinux 0x6b0f927c sk_msg_free_partial +EXPORT_SYMBOL_GPL vmlinux 0x6b22926b irq_work_sync +EXPORT_SYMBOL_GPL vmlinux 0x6b2b69f7 static_key_enable +EXPORT_SYMBOL_GPL vmlinux 0x6b2c47ab tcp_register_ulp +EXPORT_SYMBOL_GPL vmlinux 0x6b3ae022 acpi_os_unmap_iomem +EXPORT_SYMBOL_GPL vmlinux 0x6b3f4084 phy_led_triggers_register +EXPORT_SYMBOL_GPL vmlinux 0x6b4045ee zynqmp_pm_get_api_version +EXPORT_SYMBOL_GPL vmlinux 0x6b413c9b sfp_link_down +EXPORT_SYMBOL_GPL vmlinux 0x6b6db10e usb_free_coherent +EXPORT_SYMBOL_GPL vmlinux 0x6b713be6 serdev_controller_alloc +EXPORT_SYMBOL_GPL vmlinux 0x6b76051e raw_seq_next +EXPORT_SYMBOL_GPL vmlinux 0x6b77d553 sdio_retune_release +EXPORT_SYMBOL_GPL vmlinux 0x6b81c38b power_supply_unreg_notifier +EXPORT_SYMBOL_GPL vmlinux 0x6b834121 bman_portals_probed +EXPORT_SYMBOL_GPL vmlinux 0x6b845321 crypto_hash_walk_done +EXPORT_SYMBOL_GPL vmlinux 0x6b857fd7 devfreq_event_reset_event +EXPORT_SYMBOL_GPL vmlinux 0x6b8c5591 device_pm_wait_for_dev +EXPORT_SYMBOL_GPL vmlinux 0x6b9d7d36 edac_pci_create_generic_ctl +EXPORT_SYMBOL_GPL vmlinux 0x6ba36c6a hwpoison_filter_flags_value +EXPORT_SYMBOL_GPL vmlinux 0x6ba521f7 em_register_perf_domain +EXPORT_SYMBOL_GPL vmlinux 0x6bbf849c thermal_remove_hwmon_sysfs +EXPORT_SYMBOL_GPL vmlinux 0x6bd1aa56 stack_trace_save +EXPORT_SYMBOL_GPL vmlinux 0x6bdea4aa crypto_find_alg +EXPORT_SYMBOL_GPL vmlinux 0x6bdef35c acpi_ec_mark_gpe_for_wake +EXPORT_SYMBOL_GPL vmlinux 0x6bffde0f usb_get_dev +EXPORT_SYMBOL_GPL vmlinux 0x6c211226 usb_urb_ep_type_check +EXPORT_SYMBOL_GPL vmlinux 0x6c2eef2c set_secondary_fwnode +EXPORT_SYMBOL_GPL vmlinux 0x6c389761 acpi_bus_get_private_data +EXPORT_SYMBOL_GPL vmlinux 0x6c3b612b acpi_ec_add_query_handler +EXPORT_SYMBOL_GPL vmlinux 0x6c3f70e0 guid_gen +EXPORT_SYMBOL_GPL vmlinux 0x6c405e8a amba_ahb_device_add_res +EXPORT_SYMBOL_GPL vmlinux 0x6c46c9d9 xfrm_audit_state_delete +EXPORT_SYMBOL_GPL vmlinux 0x6c4b6684 reset_control_assert +EXPORT_SYMBOL_GPL vmlinux 0x6c511a9d devm_serdev_device_open +EXPORT_SYMBOL_GPL vmlinux 0x6c568010 scsi_dh_activate +EXPORT_SYMBOL_GPL vmlinux 0x6c5a5e53 dax_supported +EXPORT_SYMBOL_GPL vmlinux 0x6c655913 register_acpi_hed_notifier +EXPORT_SYMBOL_GPL vmlinux 0x6c77d0df dev_pm_opp_of_register_em +EXPORT_SYMBOL_GPL vmlinux 0x6c789b2b ata_std_sched_eh +EXPORT_SYMBOL_GPL vmlinux 0x6c8227e9 list_lru_count_one +EXPORT_SYMBOL_GPL vmlinux 0x6ca4bf88 async_synchronize_full_domain +EXPORT_SYMBOL_GPL vmlinux 0x6cacc78f regcache_drop_region +EXPORT_SYMBOL_GPL vmlinux 0x6cb0ce87 irq_get_percpu_devid_partition +EXPORT_SYMBOL_GPL vmlinux 0x6cc28b6e bio_alloc_mddev +EXPORT_SYMBOL_GPL vmlinux 0x6cccb73b of_property_read_u64_index +EXPORT_SYMBOL_GPL vmlinux 0x6cd1475d blk_mq_bio_list_merge +EXPORT_SYMBOL_GPL vmlinux 0x6cd6772c rtnl_put_cacheinfo +EXPORT_SYMBOL_GPL vmlinux 0x6ce10eb0 trace_clock_jiffies +EXPORT_SYMBOL_GPL vmlinux 0x6ce2ac33 regulator_is_enabled +EXPORT_SYMBOL_GPL vmlinux 0x6ceb9208 balloon_page_enqueue +EXPORT_SYMBOL_GPL vmlinux 0x6cef3a14 usb_driver_set_configuration +EXPORT_SYMBOL_GPL vmlinux 0x6cf0ee82 of_thermal_get_ntrips +EXPORT_SYMBOL_GPL vmlinux 0x6cfbb55c add_disk_randomness +EXPORT_SYMBOL_GPL vmlinux 0x6d0ae550 pinctrl_gpio_request +EXPORT_SYMBOL_GPL vmlinux 0x6d161467 sdio_writew +EXPORT_SYMBOL_GPL vmlinux 0x6d164837 pinctrl_generic_get_group_pins +EXPORT_SYMBOL_GPL vmlinux 0x6d189dc2 vmf_insert_pfn_pmd_prot +EXPORT_SYMBOL_GPL vmlinux 0x6d20ee5e led_put +EXPORT_SYMBOL_GPL vmlinux 0x6d2fc5a6 net_namespace_list +EXPORT_SYMBOL_GPL vmlinux 0x6d3ddb31 pci_hp_deregister +EXPORT_SYMBOL_GPL vmlinux 0x6d54a986 clk_hw_set_parent +EXPORT_SYMBOL_GPL vmlinux 0x6d634dde led_trigger_write +EXPORT_SYMBOL_GPL vmlinux 0x6d654077 devm_pwm_put +EXPORT_SYMBOL_GPL vmlinux 0x6d6ca34d generic_online_page +EXPORT_SYMBOL_GPL vmlinux 0x6d6fec1f ktime_mono_to_any +EXPORT_SYMBOL_GPL vmlinux 0x6d7e951e rcu_exp_batches_completed +EXPORT_SYMBOL_GPL vmlinux 0x6d94da8a clk_hw_get_parent_index +EXPORT_SYMBOL_GPL vmlinux 0x6d9ee2a0 __request_percpu_irq +EXPORT_SYMBOL_GPL vmlinux 0x6dbaafd3 put_old_timespec32 +EXPORT_SYMBOL_GPL vmlinux 0x6dc1da5f md_allow_write +EXPORT_SYMBOL_GPL vmlinux 0x6dcec563 ping_common_sendmsg +EXPORT_SYMBOL_GPL vmlinux 0x6dd56bac tpm_send +EXPORT_SYMBOL_GPL vmlinux 0x6de0ce06 of_phy_simple_xlate +EXPORT_SYMBOL_GPL vmlinux 0x6dea65c8 pci_destroy_slot +EXPORT_SYMBOL_GPL vmlinux 0x6df84afa usb_debug_root +EXPORT_SYMBOL_GPL vmlinux 0x6e0b522e wakeup_source_destroy +EXPORT_SYMBOL_GPL vmlinux 0x6e0c8cef skb_gso_validate_mac_len +EXPORT_SYMBOL_GPL vmlinux 0x6e10e0f6 nvdimm_setup_pfn +EXPORT_SYMBOL_GPL vmlinux 0x6e18e7ad extcon_get_edev_by_phandle +EXPORT_SYMBOL_GPL vmlinux 0x6e26bbe6 pci_epc_get_msix +EXPORT_SYMBOL_GPL vmlinux 0x6e2c62dd k3_ringacc_ring_cfg +EXPORT_SYMBOL_GPL vmlinux 0x6e3a0138 ahci_platform_shutdown +EXPORT_SYMBOL_GPL vmlinux 0x6e3ff83a edac_device_alloc_index +EXPORT_SYMBOL_GPL vmlinux 0x6e42da20 l3mdev_fib_table_rcu +EXPORT_SYMBOL_GPL vmlinux 0x6e4aa78d k3_udma_glue_rx_flow_enable +EXPORT_SYMBOL_GPL vmlinux 0x6e4bc056 spi_res_free +EXPORT_SYMBOL_GPL vmlinux 0x6e4ef853 blk_clear_pm_only +EXPORT_SYMBOL_GPL vmlinux 0x6e55204c dm_bio_get_target_bio_nr +EXPORT_SYMBOL_GPL vmlinux 0x6e5f0510 perf_event_addr_filters_sync +EXPORT_SYMBOL_GPL vmlinux 0x6e702f95 security_path_symlink +EXPORT_SYMBOL_GPL vmlinux 0x6e7943ec iommu_group_id +EXPORT_SYMBOL_GPL vmlinux 0x6e84a8d0 __netif_set_xps_queue +EXPORT_SYMBOL_GPL vmlinux 0x6e89a560 regmap_irq_chip_get_base +EXPORT_SYMBOL_GPL vmlinux 0x6e8c5fdc __inet_lookup_established +EXPORT_SYMBOL_GPL vmlinux 0x6e8f4af2 stmpe_block_read +EXPORT_SYMBOL_GPL vmlinux 0x6e932e46 dw_pcie_find_capability +EXPORT_SYMBOL_GPL vmlinux 0x6e9e27e1 report_iommu_fault +EXPORT_SYMBOL_GPL vmlinux 0x6ea0ff55 devm_hwspin_lock_free +EXPORT_SYMBOL_GPL vmlinux 0x6eb6fe17 compat_only_sysfs_link_entry_to_kobj +EXPORT_SYMBOL_GPL vmlinux 0x6ebe366f ktime_get_mono_fast_ns +EXPORT_SYMBOL_GPL vmlinux 0x6ec9434a xdp_rxq_info_unused +EXPORT_SYMBOL_GPL vmlinux 0x6ed6b2ce spi_mem_dirmap_write +EXPORT_SYMBOL_GPL vmlinux 0x6ee0863e mm_kobj +EXPORT_SYMBOL_GPL vmlinux 0x6ee8c94b sfp_get_module_eeprom +EXPORT_SYMBOL_GPL vmlinux 0x6ef6b54f ktime_get_boot_fast_ns +EXPORT_SYMBOL_GPL vmlinux 0x6f06cbbc noop_invalidatepage +EXPORT_SYMBOL_GPL vmlinux 0x6f0e1178 fsnotify_init_mark +EXPORT_SYMBOL_GPL vmlinux 0x6f12560a get_old_timespec32 +EXPORT_SYMBOL_GPL vmlinux 0x6f1700e4 switchdev_port_obj_del +EXPORT_SYMBOL_GPL vmlinux 0x6f510cc4 pcie_aspm_enabled +EXPORT_SYMBOL_GPL vmlinux 0x6f638666 devres_open_group +EXPORT_SYMBOL_GPL vmlinux 0x6f9e763b timecounter_read +EXPORT_SYMBOL_GPL vmlinux 0x6fab1147 iommu_unregister_device_fault_handler +EXPORT_SYMBOL_GPL vmlinux 0x6fc92778 set_foreign_p2m_mapping +EXPORT_SYMBOL_GPL vmlinux 0x6fccc5d5 devm_regulator_unregister_notifier +EXPORT_SYMBOL_GPL vmlinux 0x6fcef6ab ring_buffer_reset +EXPORT_SYMBOL_GPL vmlinux 0x6fd1ad23 iommu_group_for_each_dev +EXPORT_SYMBOL_GPL vmlinux 0x6fd3e095 iommu_register_device_fault_handler +EXPORT_SYMBOL_GPL vmlinux 0x6fd85949 crypto_ahash_final +EXPORT_SYMBOL_GPL vmlinux 0x6ff607b6 crypto_get_default_rng +EXPORT_SYMBOL_GPL vmlinux 0x7006586e iommu_get_group_resv_regions +EXPORT_SYMBOL_GPL vmlinux 0x700f06a6 debugfs_create_size_t +EXPORT_SYMBOL_GPL vmlinux 0x702fec76 pci_generic_ecam_ops +EXPORT_SYMBOL_GPL vmlinux 0x703cc82b ohci_hub_status_data +EXPORT_SYMBOL_GPL vmlinux 0x704d8595 anon_inode_getfile +EXPORT_SYMBOL_GPL vmlinux 0x7056c93e driver_create_file +EXPORT_SYMBOL_GPL vmlinux 0x706009a5 of_dma_configure +EXPORT_SYMBOL_GPL vmlinux 0x70610dd4 call_srcu +EXPORT_SYMBOL_GPL vmlinux 0x7068b833 pm_runtime_autosuspend_expiration +EXPORT_SYMBOL_GPL vmlinux 0x7073c04f phy_10_100_features_array +EXPORT_SYMBOL_GPL vmlinux 0x70869f07 mbox_free_channel +EXPORT_SYMBOL_GPL vmlinux 0x70880ee7 regulator_get_optional +EXPORT_SYMBOL_GPL vmlinux 0x70a1080c aead_exit_geniv +EXPORT_SYMBOL_GPL vmlinux 0x70b7c07a gnttab_grant_foreign_transfer +EXPORT_SYMBOL_GPL vmlinux 0x70b9ca3d gnttab_map_refs +EXPORT_SYMBOL_GPL vmlinux 0x70c18b1f sbitmap_queue_show +EXPORT_SYMBOL_GPL vmlinux 0x70c2c7ea pids_cgrp_subsys_on_dfl_key +EXPORT_SYMBOL_GPL vmlinux 0x70c52dc5 nf_skb_duplicated +EXPORT_SYMBOL_GPL vmlinux 0x70cf032f usb_hcd_irq +EXPORT_SYMBOL_GPL vmlinux 0x70d42dfa wm831x_regmap_config +EXPORT_SYMBOL_GPL vmlinux 0x70fa5dc5 thermal_zone_of_get_sensor_id +EXPORT_SYMBOL_GPL vmlinux 0x710a1860 xfrm_audit_state_notfound +EXPORT_SYMBOL_GPL vmlinux 0x710a5684 badblocks_show +EXPORT_SYMBOL_GPL vmlinux 0x710c73b6 crypto_unregister_notifier +EXPORT_SYMBOL_GPL vmlinux 0x712780e5 nvdimm_security_setup_events +EXPORT_SYMBOL_GPL vmlinux 0x712a7b55 pci_epc_remove_epf +EXPORT_SYMBOL_GPL vmlinux 0x71316503 kmsg_dump_get_line +EXPORT_SYMBOL_GPL vmlinux 0x71402cee icc_provider_add +EXPORT_SYMBOL_GPL vmlinux 0x7143f146 __devm_reset_control_get +EXPORT_SYMBOL_GPL vmlinux 0x71482b63 bpf_trace_run4 +EXPORT_SYMBOL_GPL vmlinux 0x71559845 lp8788_read_multi_bytes +EXPORT_SYMBOL_GPL vmlinux 0x71562740 blk_poll +EXPORT_SYMBOL_GPL vmlinux 0x716265c7 debugfs_initialized +EXPORT_SYMBOL_GPL vmlinux 0x71650819 add_bootloader_randomness +EXPORT_SYMBOL_GPL vmlinux 0x717b6ed6 regulator_get_error_flags +EXPORT_SYMBOL_GPL vmlinux 0x7181db30 atomic_notifier_chain_unregister +EXPORT_SYMBOL_GPL vmlinux 0x718c8cad wm831x_reg_read +EXPORT_SYMBOL_GPL vmlinux 0x719bfee1 acpi_kobj +EXPORT_SYMBOL_GPL vmlinux 0x719e17ff clk_notifier_unregister +EXPORT_SYMBOL_GPL vmlinux 0x71a309d6 inet_csk_route_req +EXPORT_SYMBOL_GPL vmlinux 0x71bfb150 pci_create_root_bus +EXPORT_SYMBOL_GPL vmlinux 0x71c1aa49 crypto_unregister_acomps +EXPORT_SYMBOL_GPL vmlinux 0x71c99e9f __fscrypt_prepare_lookup +EXPORT_SYMBOL_GPL vmlinux 0x71cd848c pinctrl_pm_select_idle_state +EXPORT_SYMBOL_GPL vmlinux 0x71e7c043 serdev_device_add +EXPORT_SYMBOL_GPL vmlinux 0x71ed2181 cpufreq_frequency_table_get_index +EXPORT_SYMBOL_GPL vmlinux 0x71f479a4 of_clk_set_defaults +EXPORT_SYMBOL_GPL vmlinux 0x71f6670b __cookie_v6_check +EXPORT_SYMBOL_GPL vmlinux 0x71ffa99d wm831x_auxadc_read_uv +EXPORT_SYMBOL_GPL vmlinux 0x721848da tcp_slow_start +EXPORT_SYMBOL_GPL vmlinux 0x721f2d1d perf_event_read_value +EXPORT_SYMBOL_GPL vmlinux 0x7229a390 spi_sync_locked +EXPORT_SYMBOL_GPL vmlinux 0x7241398a rdev_set_badblocks +EXPORT_SYMBOL_GPL vmlinux 0x725aedda regmap_get_raw_read_max +EXPORT_SYMBOL_GPL vmlinux 0x725f0fb6 raw_seq_stop +EXPORT_SYMBOL_GPL vmlinux 0x72755a5d xdp_rxq_info_unreg +EXPORT_SYMBOL_GPL vmlinux 0x7278d328 all_vm_events +EXPORT_SYMBOL_GPL vmlinux 0x72af5511 vring_new_virtqueue +EXPORT_SYMBOL_GPL vmlinux 0x72c1aeeb __tracepoint_map +EXPORT_SYMBOL_GPL vmlinux 0x72cc2aae arizona_dev_init +EXPORT_SYMBOL_GPL vmlinux 0x72d267dc nvmem_del_cell_lookups +EXPORT_SYMBOL_GPL vmlinux 0x72d815a8 xfrm_audit_policy_add +EXPORT_SYMBOL_GPL vmlinux 0x72d8a6a3 blk_mq_quiesce_queue_nowait +EXPORT_SYMBOL_GPL vmlinux 0x72dad3d2 unregister_kretprobes +EXPORT_SYMBOL_GPL vmlinux 0x72f442a8 memremap_pages +EXPORT_SYMBOL_GPL vmlinux 0x72f4f29f spi_mem_get_name +EXPORT_SYMBOL_GPL vmlinux 0x73039918 rio_get_device +EXPORT_SYMBOL_GPL vmlinux 0x7313b4ac spi_delay_to_ns +EXPORT_SYMBOL_GPL vmlinux 0x7313b8ae usb_autopm_get_interface_async +EXPORT_SYMBOL_GPL vmlinux 0x73174f1d find_extend_vma +EXPORT_SYMBOL_GPL vmlinux 0x731dc7d8 regmap_raw_write_async +EXPORT_SYMBOL_GPL vmlinux 0x73242dcd cpu_set_feature +EXPORT_SYMBOL_GPL vmlinux 0x732852fe xenbus_transaction_end +EXPORT_SYMBOL_GPL vmlinux 0x7349b67b wm8350_block_read +EXPORT_SYMBOL_GPL vmlinux 0x73518e7b dst_cache_set_ip4 +EXPORT_SYMBOL_GPL vmlinux 0x7358e137 sata_scr_write_flush +EXPORT_SYMBOL_GPL vmlinux 0x736a206f trace_seq_path +EXPORT_SYMBOL_GPL vmlinux 0x737ad239 wm8350_reg_write +EXPORT_SYMBOL_GPL vmlinux 0x737f5163 subsys_system_register +EXPORT_SYMBOL_GPL vmlinux 0x7381bcdd of_usb_host_tpl_support +EXPORT_SYMBOL_GPL vmlinux 0x73a48b4a ata_sff_std_ports +EXPORT_SYMBOL_GPL vmlinux 0x73b27aed crypto_stats_kpp_generate_public_key +EXPORT_SYMBOL_GPL vmlinux 0x73c2554f __iowrite64_copy +EXPORT_SYMBOL_GPL vmlinux 0x73cc8631 oiap +EXPORT_SYMBOL_GPL vmlinux 0x73e3c167 rt_mutex_trylock +EXPORT_SYMBOL_GPL vmlinux 0x73f9dc50 rio_map_outb_region +EXPORT_SYMBOL_GPL vmlinux 0x740bba24 regmap_get_device +EXPORT_SYMBOL_GPL vmlinux 0x741a58bc key_type_encrypted +EXPORT_SYMBOL_GPL vmlinux 0x741be060 of_hwspin_lock_get_id +EXPORT_SYMBOL_GPL vmlinux 0x742d4429 elv_unregister +EXPORT_SYMBOL_GPL vmlinux 0x74378302 bpf_map_inc +EXPORT_SYMBOL_GPL vmlinux 0x743a165e ata_pack_xfermask +EXPORT_SYMBOL_GPL vmlinux 0x743b99d8 xenmem_reservation_increase +EXPORT_SYMBOL_GPL vmlinux 0x743ba17b devm_phy_get +EXPORT_SYMBOL_GPL vmlinux 0x74457e56 apei_resources_fini +EXPORT_SYMBOL_GPL vmlinux 0x74512acc skcipher_walk_async +EXPORT_SYMBOL_GPL vmlinux 0x74565b0b usb_choose_configuration +EXPORT_SYMBOL_GPL vmlinux 0x746a8de2 inet_csk_update_pmtu +EXPORT_SYMBOL_GPL vmlinux 0x74861953 security_file_permission +EXPORT_SYMBOL_GPL vmlinux 0x74a3104a iommu_domain_free +EXPORT_SYMBOL_GPL vmlinux 0x74a3ca52 wm8998_i2c_regmap +EXPORT_SYMBOL_GPL vmlinux 0x74b5ea68 lcm_not_zero +EXPORT_SYMBOL_GPL vmlinux 0x74baf17a tracing_is_on +EXPORT_SYMBOL_GPL vmlinux 0x74c7bffa stack_trace_snprint +EXPORT_SYMBOL_GPL vmlinux 0x74d906aa fuse_abort_conn +EXPORT_SYMBOL_GPL vmlinux 0x74df342e kthread_use_mm +EXPORT_SYMBOL_GPL vmlinux 0x74e73871 housekeeping_overridden +EXPORT_SYMBOL_GPL vmlinux 0x74e7c917 ipv6_dup_options +EXPORT_SYMBOL_GPL vmlinux 0x75133f6e visitor128 +EXPORT_SYMBOL_GPL vmlinux 0x7515dabe cpufreq_unregister_governor +EXPORT_SYMBOL_GPL vmlinux 0x751edaf3 hisi_uncore_pmu_start +EXPORT_SYMBOL_GPL vmlinux 0x7522f3ba irq_modify_status +EXPORT_SYMBOL_GPL vmlinux 0x7530bbe3 ata_bmdma32_port_ops +EXPORT_SYMBOL_GPL vmlinux 0x753f510c blk_mq_rdma_map_queues +EXPORT_SYMBOL_GPL vmlinux 0x75408a45 wbt_disable_default +EXPORT_SYMBOL_GPL vmlinux 0x7545e063 bpf_trace_run7 +EXPORT_SYMBOL_GPL vmlinux 0x7570576f cpufreq_register_driver +EXPORT_SYMBOL_GPL vmlinux 0x758a43fe k3_ringacc_get_ring_irq_num +EXPORT_SYMBOL_GPL vmlinux 0x758c1f07 watchdog_unregister_device +EXPORT_SYMBOL_GPL vmlinux 0x759139cb of_pci_check_probe_only +EXPORT_SYMBOL_GPL vmlinux 0x759bfe36 btree_destroy +EXPORT_SYMBOL_GPL vmlinux 0x75a4dbfe inet_csk_addr2sockaddr +EXPORT_SYMBOL_GPL vmlinux 0x75ad7bc3 component_del +EXPORT_SYMBOL_GPL vmlinux 0x75b4c135 __ip6_local_out +EXPORT_SYMBOL_GPL vmlinux 0x75cbfb09 add_interrupt_randomness +EXPORT_SYMBOL_GPL vmlinux 0x75cf146c xhci_gen_setup +EXPORT_SYMBOL_GPL vmlinux 0x75d25e7e __tracepoint_napi_poll +EXPORT_SYMBOL_GPL vmlinux 0x75d97a01 of_prop_next_string +EXPORT_SYMBOL_GPL vmlinux 0x75dd4ebe of_overlay_remove +EXPORT_SYMBOL_GPL vmlinux 0x75ddcd07 usb_phy_roothub_suspend +EXPORT_SYMBOL_GPL vmlinux 0x75e9c735 pci_ats_disabled +EXPORT_SYMBOL_GPL vmlinux 0x75f0bb0e iommu_fwspec_free +EXPORT_SYMBOL_GPL vmlinux 0x75f0e875 xas_store +EXPORT_SYMBOL_GPL vmlinux 0x75f5f635 rio_route_add_entry +EXPORT_SYMBOL_GPL vmlinux 0x75fb9062 arch_timer_read_counter +EXPORT_SYMBOL_GPL vmlinux 0x7610c46a mtk_build_eint +EXPORT_SYMBOL_GPL vmlinux 0x762785af syscon_node_to_regmap +EXPORT_SYMBOL_GPL vmlinux 0x7627add7 led_trigger_unregister_simple +EXPORT_SYMBOL_GPL vmlinux 0x7640c2d5 pci_assign_unassigned_bridge_resources +EXPORT_SYMBOL_GPL vmlinux 0x7647425f component_add_typed +EXPORT_SYMBOL_GPL vmlinux 0x7665a95b idr_remove +EXPORT_SYMBOL_GPL vmlinux 0x7665ee72 crypto_dh_decode_key +EXPORT_SYMBOL_GPL vmlinux 0x7666b504 sched_trace_rq_cpu +EXPORT_SYMBOL_GPL vmlinux 0x766e1777 dma_run_dependencies +EXPORT_SYMBOL_GPL vmlinux 0x7681946c unregister_pm_notifier +EXPORT_SYMBOL_GPL vmlinux 0x76983e4f dev_pm_opp_set_rate +EXPORT_SYMBOL_GPL vmlinux 0x76a4aedd fat_detach +EXPORT_SYMBOL_GPL vmlinux 0x76b589f8 i2c_client_type +EXPORT_SYMBOL_GPL vmlinux 0x76b9d413 icc_link_create +EXPORT_SYMBOL_GPL vmlinux 0x76c6de03 blk_queue_write_cache +EXPORT_SYMBOL_GPL vmlinux 0x76cec241 pinctrl_generic_add_group +EXPORT_SYMBOL_GPL vmlinux 0x76d9b876 clk_set_rate +EXPORT_SYMBOL_GPL vmlinux 0x76e85b92 gnttab_request_free_callback +EXPORT_SYMBOL_GPL vmlinux 0x76eeeb0f sha384_zero_message_hash +EXPORT_SYMBOL_GPL vmlinux 0x77120180 sysfs_break_active_protection +EXPORT_SYMBOL_GPL vmlinux 0x7712771a unbind_from_irqhandler +EXPORT_SYMBOL_GPL vmlinux 0x7716b0d2 fib_nl_delrule +EXPORT_SYMBOL_GPL vmlinux 0x7717e2b3 ipv6_proxy_select_ident +EXPORT_SYMBOL_GPL vmlinux 0x771b6f31 usb_clear_halt +EXPORT_SYMBOL_GPL vmlinux 0x771e5c41 mmu_notifier_register +EXPORT_SYMBOL_GPL vmlinux 0x771ed0b4 dmi_kobj +EXPORT_SYMBOL_GPL vmlinux 0x77222306 ring_buffer_read_page +EXPORT_SYMBOL_GPL vmlinux 0x772688ad sched_trace_cfs_rq_avg +EXPORT_SYMBOL_GPL vmlinux 0x7728a82e dev_pm_opp_remove_all_dynamic +EXPORT_SYMBOL_GPL vmlinux 0x7729cbdd task_handoff_register +EXPORT_SYMBOL_GPL vmlinux 0x772f8835 dev_forward_skb +EXPORT_SYMBOL_GPL vmlinux 0x774124e4 device_remove_file +EXPORT_SYMBOL_GPL vmlinux 0x774b188b udp_init_sock +EXPORT_SYMBOL_GPL vmlinux 0x775486dd ping_seq_start +EXPORT_SYMBOL_GPL vmlinux 0x7757b51a clk_unregister +EXPORT_SYMBOL_GPL vmlinux 0x777dfd7c crypto_grab_akcipher +EXPORT_SYMBOL_GPL vmlinux 0x77849a6f clk_mux_ro_ops +EXPORT_SYMBOL_GPL vmlinux 0x77908240 inet_csk_listen_stop +EXPORT_SYMBOL_GPL vmlinux 0x7791e066 dw_pcie_read +EXPORT_SYMBOL_GPL vmlinux 0x77ae495d usb_speed_string +EXPORT_SYMBOL_GPL vmlinux 0x77cce3e4 crypto_skcipher_setkey +EXPORT_SYMBOL_GPL vmlinux 0x77d482f9 virtqueue_enable_cb_prepare +EXPORT_SYMBOL_GPL vmlinux 0x77e75be3 sfp_bus_put +EXPORT_SYMBOL_GPL vmlinux 0x77eb2fe7 __hrtimer_get_remaining +EXPORT_SYMBOL_GPL vmlinux 0x77ecf68d memalloc_socks_key +EXPORT_SYMBOL_GPL vmlinux 0x77edf2d5 fixed_phy_register_with_gpiod +EXPORT_SYMBOL_GPL vmlinux 0x7804d997 ipv4_sk_redirect +EXPORT_SYMBOL_GPL vmlinux 0x780a62e8 bus_set_iommu +EXPORT_SYMBOL_GPL vmlinux 0x7813aee3 dev_pm_opp_put_clkname +EXPORT_SYMBOL_GPL vmlinux 0x784b1c76 usb_autopm_put_interface_async +EXPORT_SYMBOL_GPL vmlinux 0x785a93b4 si_mem_available +EXPORT_SYMBOL_GPL vmlinux 0x786bd172 usb_alloc_dev +EXPORT_SYMBOL_GPL vmlinux 0x7871b493 led_stop_software_blink +EXPORT_SYMBOL_GPL vmlinux 0x787c882b lzo1x_1_compress +EXPORT_SYMBOL_GPL vmlinux 0x788ad962 blk_update_request +EXPORT_SYMBOL_GPL vmlinux 0x788bfbad ring_buffer_empty +EXPORT_SYMBOL_GPL vmlinux 0x7893f217 md_do_sync +EXPORT_SYMBOL_GPL vmlinux 0x789c73d9 rcu_cpu_stall_suppress_at_boot +EXPORT_SYMBOL_GPL vmlinux 0x78d6e7ad mddev_suspend +EXPORT_SYMBOL_GPL vmlinux 0x78ddb76b dmi_match +EXPORT_SYMBOL_GPL vmlinux 0x78ea22ff dmaengine_unmap_put +EXPORT_SYMBOL_GPL vmlinux 0x78f29871 ata_ncq_sdev_attrs +EXPORT_SYMBOL_GPL vmlinux 0x790be0b9 usb_bus_idr +EXPORT_SYMBOL_GPL vmlinux 0x7917183c sdev_evt_send_simple +EXPORT_SYMBOL_GPL vmlinux 0x7918d817 memory_failure +EXPORT_SYMBOL_GPL vmlinux 0x7919ea62 sdio_set_host_pm_flags +EXPORT_SYMBOL_GPL vmlinux 0x79327b05 crypto_register_scomps +EXPORT_SYMBOL_GPL vmlinux 0x7934ea08 param_set_bool_enable_only +EXPORT_SYMBOL_GPL vmlinux 0x793af3af xenbus_read_otherend_details +EXPORT_SYMBOL_GPL vmlinux 0x7944e0fc tracing_off +EXPORT_SYMBOL_GPL vmlinux 0x79470a2c TSS_authhmac +EXPORT_SYMBOL_GPL vmlinux 0x794a0461 rockchip_pcie_disable_clocks +EXPORT_SYMBOL_GPL vmlinux 0x794b7271 orderly_reboot +EXPORT_SYMBOL_GPL vmlinux 0x79535513 gnttab_dma_alloc_pages +EXPORT_SYMBOL_GPL vmlinux 0x795f9599 crypto_shash_tfm_digest +EXPORT_SYMBOL_GPL vmlinux 0x7960c089 ahci_platform_disable_clks +EXPORT_SYMBOL_GPL vmlinux 0x79616aa8 sysfs_remove_file_from_group +EXPORT_SYMBOL_GPL vmlinux 0x796b467a kthread_queue_delayed_work +EXPORT_SYMBOL_GPL vmlinux 0x796cfbcf regulator_bulk_unregister_supply_alias +EXPORT_SYMBOL_GPL vmlinux 0x798b7682 klist_prev +EXPORT_SYMBOL_GPL vmlinux 0x799aebb1 sbitmap_get_shallow +EXPORT_SYMBOL_GPL vmlinux 0x79a4e933 rt_mutex_lock +EXPORT_SYMBOL_GPL vmlinux 0x79bc842c usb_anchor_suspend_wakeups +EXPORT_SYMBOL_GPL vmlinux 0x79cf4cd3 tcp_sendpage_locked +EXPORT_SYMBOL_GPL vmlinux 0x79defbe1 kthread_should_park +EXPORT_SYMBOL_GPL vmlinux 0x79ed5817 clockevents_config_and_register +EXPORT_SYMBOL_GPL vmlinux 0x79f697e4 lzorle1x_1_compress +EXPORT_SYMBOL_GPL vmlinux 0x7a04054f usb_unlocked_enable_lpm +EXPORT_SYMBOL_GPL vmlinux 0x7a092408 virtio_check_driver_offered_feature +EXPORT_SYMBOL_GPL vmlinux 0x7a33dbca synchronize_srcu_expedited +EXPORT_SYMBOL_GPL vmlinux 0x7a3cca99 sysfs_groups_change_owner +EXPORT_SYMBOL_GPL vmlinux 0x7a418da6 badblocks_exit +EXPORT_SYMBOL_GPL vmlinux 0x7a4d380b ata_sff_queue_pio_task +EXPORT_SYMBOL_GPL vmlinux 0x7a508e7a scsi_internal_device_unblock_nowait +EXPORT_SYMBOL_GPL vmlinux 0x7a672569 xen_xlate_map_ballooned_pages +EXPORT_SYMBOL_GPL vmlinux 0x7a68f1b4 acpi_dev_gpio_irq_get +EXPORT_SYMBOL_GPL vmlinux 0x7a71af77 add_memory_driver_managed +EXPORT_SYMBOL_GPL vmlinux 0x7a73e605 wm831x_isinkv_values +EXPORT_SYMBOL_GPL vmlinux 0x7a79eac0 rio_enable_rx_tx_port +EXPORT_SYMBOL_GPL vmlinux 0x7a81541b async_synchronize_cookie +EXPORT_SYMBOL_GPL vmlinux 0x7a98f4b4 copy_from_user_nofault +EXPORT_SYMBOL_GPL vmlinux 0x7a9e4c23 software_node_register_node_group +EXPORT_SYMBOL_GPL vmlinux 0x7abfca43 rhashtable_init +EXPORT_SYMBOL_GPL vmlinux 0x7ac10ad8 icst_clk_register +EXPORT_SYMBOL_GPL vmlinux 0x7ac3a48c register_virtio_driver +EXPORT_SYMBOL_GPL vmlinux 0x7ac722bd phy_all_ports_features_array +EXPORT_SYMBOL_GPL vmlinux 0x7acbb74e of_genpd_del_provider +EXPORT_SYMBOL_GPL vmlinux 0x7accafb7 bsg_unregister_queue +EXPORT_SYMBOL_GPL vmlinux 0x7ad1ded1 pinctrl_register_mappings +EXPORT_SYMBOL_GPL vmlinux 0x7ad2c64c k3_udma_glue_release_rx_chn +EXPORT_SYMBOL_GPL vmlinux 0x7aeccdf2 reset_controller_register +EXPORT_SYMBOL_GPL vmlinux 0x7af1bbbd device_get_phy_mode +EXPORT_SYMBOL_GPL vmlinux 0x7afcb7db __kprobe_event_add_fields +EXPORT_SYMBOL_GPL vmlinux 0x7afe324e halt_poll_ns_grow +EXPORT_SYMBOL_GPL vmlinux 0x7b066ab8 pl08x_filter_id +EXPORT_SYMBOL_GPL vmlinux 0x7b11bddb dev_pm_opp_of_add_table_indexed +EXPORT_SYMBOL_GPL vmlinux 0x7b178afe unlock_system_sleep +EXPORT_SYMBOL_GPL vmlinux 0x7b1d668c udp_destruct_sock +EXPORT_SYMBOL_GPL vmlinux 0x7b2163bd HYPERVISOR_tmem_op +EXPORT_SYMBOL_GPL vmlinux 0x7b219b58 rio_request_dma +EXPORT_SYMBOL_GPL vmlinux 0x7b2e7360 clean_acked_data_enable +EXPORT_SYMBOL_GPL vmlinux 0x7b4bea48 bgmac_enet_resume +EXPORT_SYMBOL_GPL vmlinux 0x7b4c9ba9 sbitmap_queue_min_shallow_depth +EXPORT_SYMBOL_GPL vmlinux 0x7b520c8e strp_data_ready +EXPORT_SYMBOL_GPL vmlinux 0x7b5452b8 acpi_unregister_gsi +EXPORT_SYMBOL_GPL vmlinux 0x7b5a4926 sha1_zero_message_hash +EXPORT_SYMBOL_GPL vmlinux 0x7b5b7e97 pci_ioremap_wc_bar +EXPORT_SYMBOL_GPL vmlinux 0x7b6f9536 acpi_register_wakeup_handler +EXPORT_SYMBOL_GPL vmlinux 0x7b7a44fd led_trigger_blink_oneshot +EXPORT_SYMBOL_GPL vmlinux 0x7b7d684c blk_mq_start_stopped_hw_queue +EXPORT_SYMBOL_GPL vmlinux 0x7b856860 cpuidle_unregister_device +EXPORT_SYMBOL_GPL vmlinux 0x7b85bb15 rockchip_pcie_get_phys +EXPORT_SYMBOL_GPL vmlinux 0x7b87838f phy_package_join +EXPORT_SYMBOL_GPL vmlinux 0x7b88df94 srcu_notifier_chain_unregister +EXPORT_SYMBOL_GPL vmlinux 0x7b90d1a9 bind_virq_to_irqhandler +EXPORT_SYMBOL_GPL vmlinux 0x7b9793a2 get_cpu_idle_time_us +EXPORT_SYMBOL_GPL vmlinux 0x7b97afe2 iommu_capable +EXPORT_SYMBOL_GPL vmlinux 0x7b98102a pci_hp_destroy +EXPORT_SYMBOL_GPL vmlinux 0x7bad03c3 xfrm_state_afinfo_get_rcu +EXPORT_SYMBOL_GPL vmlinux 0x7bc44984 wm831x_device_shutdown +EXPORT_SYMBOL_GPL vmlinux 0x7bd2c2c2 handle_untracked_irq +EXPORT_SYMBOL_GPL vmlinux 0x7bd715dd device_create_file +EXPORT_SYMBOL_GPL vmlinux 0x7bdca341 edac_pci_alloc_ctl_info +EXPORT_SYMBOL_GPL vmlinux 0x7be2e70d platform_device_unregister +EXPORT_SYMBOL_GPL vmlinux 0x7beeefb1 ata_cable_sata +EXPORT_SYMBOL_GPL vmlinux 0x7c0dabbf amba_bustype +EXPORT_SYMBOL_GPL vmlinux 0x7c19331f ata_bmdma_port_intr +EXPORT_SYMBOL_GPL vmlinux 0x7c1af478 split_page +EXPORT_SYMBOL_GPL vmlinux 0x7c1fc625 crypto_register_acomps +EXPORT_SYMBOL_GPL vmlinux 0x7c2642eb da9052_request_irq +EXPORT_SYMBOL_GPL vmlinux 0x7c48f433 __get_task_comm +EXPORT_SYMBOL_GPL vmlinux 0x7c57421b x509_cert_parse +EXPORT_SYMBOL_GPL vmlinux 0x7c5f0438 device_remove_bin_file +EXPORT_SYMBOL_GPL vmlinux 0x7c626556 list_lru_destroy +EXPORT_SYMBOL_GPL vmlinux 0x7c681aba efivar_work +EXPORT_SYMBOL_GPL vmlinux 0x7c7f5094 pci_speed_string +EXPORT_SYMBOL_GPL vmlinux 0x7c8fba62 of_icc_xlate_onecell +EXPORT_SYMBOL_GPL vmlinux 0x7c94c99a kvm_release_pfn_dirty +EXPORT_SYMBOL_GPL vmlinux 0x7c983a5d dmi_walk +EXPORT_SYMBOL_GPL vmlinux 0x7c9879c1 phy_calibrate +EXPORT_SYMBOL_GPL vmlinux 0x7c9986af udp_abort +EXPORT_SYMBOL_GPL vmlinux 0x7c9a7371 clk_prepare +EXPORT_SYMBOL_GPL vmlinux 0x7cb803de btree_grim_visitor +EXPORT_SYMBOL_GPL vmlinux 0x7cb8fb1b register_pernet_subsys +EXPORT_SYMBOL_GPL vmlinux 0x7cc101d7 regulator_set_current_limit +EXPORT_SYMBOL_GPL vmlinux 0x7cd6f042 cpufreq_get_current_driver +EXPORT_SYMBOL_GPL vmlinux 0x7cd7b121 regulator_map_voltage_linear +EXPORT_SYMBOL_GPL vmlinux 0x7cddbfe7 cs47l24_irq +EXPORT_SYMBOL_GPL vmlinux 0x7ce00437 dev_pm_opp_init_cpufreq_table +EXPORT_SYMBOL_GPL vmlinux 0x7ce4ae1d of_pci_address_to_resource +EXPORT_SYMBOL_GPL vmlinux 0x7ceaf0d5 generic_handle_irq +EXPORT_SYMBOL_GPL vmlinux 0x7d00c65b nd_synchronize +EXPORT_SYMBOL_GPL vmlinux 0x7d0cebe7 do_unregister_con_driver +EXPORT_SYMBOL_GPL vmlinux 0x7d154b6a usb_role_switch_find_by_fwnode +EXPORT_SYMBOL_GPL vmlinux 0x7d1bb1d4 tnum_strn +EXPORT_SYMBOL_GPL vmlinux 0x7d22c491 scsi_check_sense +EXPORT_SYMBOL_GPL vmlinux 0x7d2ca554 pci_epc_get_first_free_bar +EXPORT_SYMBOL_GPL vmlinux 0x7d32893f zynqmp_pm_request_node +EXPORT_SYMBOL_GPL vmlinux 0x7d348067 napi_hash_del +EXPORT_SYMBOL_GPL vmlinux 0x7d38dc75 gpiod_export +EXPORT_SYMBOL_GPL vmlinux 0x7d42cd0d devm_add_action +EXPORT_SYMBOL_GPL vmlinux 0x7d4e7cc9 pci_epc_multi_mem_init +EXPORT_SYMBOL_GPL vmlinux 0x7d50c117 fat_remove_entries +EXPORT_SYMBOL_GPL vmlinux 0x7d523348 pci_cfg_access_unlock +EXPORT_SYMBOL_GPL vmlinux 0x7d52dcff get_device +EXPORT_SYMBOL_GPL vmlinux 0x7d558968 trace_seq_puts +EXPORT_SYMBOL_GPL vmlinux 0x7d59dd46 pm_wq +EXPORT_SYMBOL_GPL vmlinux 0x7d5fe9bc devlink_params_publish +EXPORT_SYMBOL_GPL vmlinux 0x7d65e1b6 devm_regulator_get_optional +EXPORT_SYMBOL_GPL vmlinux 0x7d7a68e2 spi_add_device +EXPORT_SYMBOL_GPL vmlinux 0x7d89f672 alarmtimer_get_rtcdev +EXPORT_SYMBOL_GPL vmlinux 0x7da98b71 ata_ehi_clear_desc +EXPORT_SYMBOL_GPL vmlinux 0x7dafcba9 perf_event_refresh +EXPORT_SYMBOL_GPL vmlinux 0x7dbd7ede usb_hcd_link_urb_to_ep +EXPORT_SYMBOL_GPL vmlinux 0x7dbd8233 regulator_get_mode +EXPORT_SYMBOL_GPL vmlinux 0x7dc30c1d clk_mux_determine_rate_flags +EXPORT_SYMBOL_GPL vmlinux 0x7dda30af unregister_tracepoint_module_notifier +EXPORT_SYMBOL_GPL vmlinux 0x7ddb2718 __tracepoint_block_rq_remap +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 0x7df282c6 pci_epc_clear_bar +EXPORT_SYMBOL_GPL vmlinux 0x7df2c584 init_user_ns +EXPORT_SYMBOL_GPL vmlinux 0x7df3b669 raw_seq_start +EXPORT_SYMBOL_GPL vmlinux 0x7df402ed inet_twsk_alloc +EXPORT_SYMBOL_GPL vmlinux 0x7e1ce869 kgdb_unregister_io_module +EXPORT_SYMBOL_GPL vmlinux 0x7e2063e5 hisi_uncore_pmu_set_event_period +EXPORT_SYMBOL_GPL vmlinux 0x7e2544dc ata_host_resume +EXPORT_SYMBOL_GPL vmlinux 0x7e3e60fa irq_set_chip_and_handler_name +EXPORT_SYMBOL_GPL vmlinux 0x7e435d15 rio_mport_write_config_32 +EXPORT_SYMBOL_GPL vmlinux 0x7e5873db fwnode_graph_get_remote_endpoint +EXPORT_SYMBOL_GPL vmlinux 0x7e5db80b pstore_name_to_type +EXPORT_SYMBOL_GPL vmlinux 0x7e64181d usb_calc_bus_time +EXPORT_SYMBOL_GPL vmlinux 0x7e707239 devm_clk_bulk_get +EXPORT_SYMBOL_GPL vmlinux 0x7e798001 fwnode_get_named_gpiod +EXPORT_SYMBOL_GPL vmlinux 0x7e7a2362 xenbus_dev_remove +EXPORT_SYMBOL_GPL vmlinux 0x7e7db6e2 pinctrl_find_and_add_gpio_range +EXPORT_SYMBOL_GPL vmlinux 0x7e7e3f58 ring_buffer_reset_cpu +EXPORT_SYMBOL_GPL vmlinux 0x7e83cba8 fwnode_connection_find_match +EXPORT_SYMBOL_GPL vmlinux 0x7e8d8619 usb_anchor_empty +EXPORT_SYMBOL_GPL vmlinux 0x7e8e143c dev_pm_opp_set_sharing_cpus +EXPORT_SYMBOL_GPL vmlinux 0x7ea75c24 __wake_up_locked_key_bookmark +EXPORT_SYMBOL_GPL vmlinux 0x7eb4f12d irq_domain_simple_ops +EXPORT_SYMBOL_GPL vmlinux 0x7eb808d0 add_cpu +EXPORT_SYMBOL_GPL vmlinux 0x7ec814de inet_hashinfo_init +EXPORT_SYMBOL_GPL vmlinux 0x7ed3b649 pci_generic_config_write +EXPORT_SYMBOL_GPL vmlinux 0x7edf1441 __mmdrop +EXPORT_SYMBOL_GPL vmlinux 0x7eea6b8b pcap_adc_async +EXPORT_SYMBOL_GPL vmlinux 0x7ef53da1 fuse_dev_install +EXPORT_SYMBOL_GPL vmlinux 0x7ef6b0b7 tps6586x_get_version +EXPORT_SYMBOL_GPL vmlinux 0x7ef86e0d devm_gpiod_get_index_optional +EXPORT_SYMBOL_GPL vmlinux 0x7efde1f4 devlink_trap_policers_register +EXPORT_SYMBOL_GPL vmlinux 0x7f1790bb fib_nexthop_info +EXPORT_SYMBOL_GPL vmlinux 0x7f189972 edac_device_handle_ce_count +EXPORT_SYMBOL_GPL vmlinux 0x7f268849 od_register_powersave_bias_handler +EXPORT_SYMBOL_GPL vmlinux 0x7f3193c7 trace_array_get_by_name +EXPORT_SYMBOL_GPL vmlinux 0x7f335a52 pci_device_is_present +EXPORT_SYMBOL_GPL vmlinux 0x7f3ebb41 inet6_hash +EXPORT_SYMBOL_GPL vmlinux 0x7f53cce3 dev_pm_opp_remove +EXPORT_SYMBOL_GPL vmlinux 0x7f59dcf3 ohci_resume +EXPORT_SYMBOL_GPL vmlinux 0x7f63adbb tty_buffer_space_avail +EXPORT_SYMBOL_GPL vmlinux 0x7f7cbc64 ip_tunnel_need_metadata +EXPORT_SYMBOL_GPL vmlinux 0x7f83a555 of_mpc8xxx_spi_probe +EXPORT_SYMBOL_GPL vmlinux 0x7f96d4b0 pci_hp_del +EXPORT_SYMBOL_GPL vmlinux 0x7f9b5419 nf_checksum_partial +EXPORT_SYMBOL_GPL vmlinux 0x7fa796b2 pinctrl_pm_select_default_state +EXPORT_SYMBOL_GPL vmlinux 0x7fa96509 erst_get_record_id_next +EXPORT_SYMBOL_GPL vmlinux 0x7fb0aea9 inet_ctl_sock_create +EXPORT_SYMBOL_GPL vmlinux 0x7fb9329f vfs_fallocate +EXPORT_SYMBOL_GPL vmlinux 0x7fc92339 pwm_apply_state +EXPORT_SYMBOL_GPL vmlinux 0x7fe11c27 device_remove_file_self +EXPORT_SYMBOL_GPL vmlinux 0x7fe898c1 ata_cable_unknown +EXPORT_SYMBOL_GPL vmlinux 0x80039b5f vfs_kern_mount +EXPORT_SYMBOL_GPL vmlinux 0x80135182 k3_ringacc_ring_pop_tail +EXPORT_SYMBOL_GPL vmlinux 0x802e9d7d device_unregister +EXPORT_SYMBOL_GPL vmlinux 0x8030ee17 devm_irq_setup_generic_chip +EXPORT_SYMBOL_GPL vmlinux 0x805667cf devlink_fmsg_u64_put +EXPORT_SYMBOL_GPL vmlinux 0x805afea0 tty_prepare_flip_string +EXPORT_SYMBOL_GPL vmlinux 0x807766ea usb_scuttle_anchored_urbs +EXPORT_SYMBOL_GPL vmlinux 0x807fdcc4 call_rcu_tasks_rude +EXPORT_SYMBOL_GPL vmlinux 0x808ec1a3 crypto_alg_tested +EXPORT_SYMBOL_GPL vmlinux 0x80909ea3 perf_event_release_kernel +EXPORT_SYMBOL_GPL vmlinux 0x809b135a iptunnel_handle_offloads +EXPORT_SYMBOL_GPL vmlinux 0x80b109d4 __tracepoint_pelt_se_tp +EXPORT_SYMBOL_GPL vmlinux 0x80c11314 gnttab_query_foreign_access +EXPORT_SYMBOL_GPL vmlinux 0x80c68137 nf_log_buf_close +EXPORT_SYMBOL_GPL vmlinux 0x80ca9318 tty_buffer_lock_exclusive +EXPORT_SYMBOL_GPL vmlinux 0x80ce42f2 edac_pci_release_generic_ctl +EXPORT_SYMBOL_GPL vmlinux 0x80d5e57a mpi_free +EXPORT_SYMBOL_GPL vmlinux 0x80ff2130 kstrdup_quotable_file +EXPORT_SYMBOL_GPL vmlinux 0x80ff6cdd usb_wakeup_notification +EXPORT_SYMBOL_GPL vmlinux 0x811075a9 inet_send_prepare +EXPORT_SYMBOL_GPL vmlinux 0x811dc334 usb_unregister_notify +EXPORT_SYMBOL_GPL vmlinux 0x81382eb3 gnttab_free_pages +EXPORT_SYMBOL_GPL vmlinux 0x813b8d26 regmap_raw_write +EXPORT_SYMBOL_GPL vmlinux 0x813ea878 devm_regmap_init_vexpress_config +EXPORT_SYMBOL_GPL vmlinux 0x815588a6 clk_enable +EXPORT_SYMBOL_GPL vmlinux 0x815fda83 sed_ioctl +EXPORT_SYMBOL_GPL vmlinux 0x81622794 bsg_setup_queue +EXPORT_SYMBOL_GPL vmlinux 0x816a41ca cpufreq_update_limits +EXPORT_SYMBOL_GPL vmlinux 0x81897703 rio_unmap_outb_region +EXPORT_SYMBOL_GPL vmlinux 0x818f785c ata_host_alloc_pinfo +EXPORT_SYMBOL_GPL vmlinux 0x8194bc69 edac_device_add_device +EXPORT_SYMBOL_GPL vmlinux 0x819d72cb klist_iter_exit +EXPORT_SYMBOL_GPL vmlinux 0x81aa78d8 zynqmp_pm_aes_engine +EXPORT_SYMBOL_GPL vmlinux 0x81aafb88 kthread_cancel_delayed_work_sync +EXPORT_SYMBOL_GPL vmlinux 0x81b03377 efivar_entry_set_safe +EXPORT_SYMBOL_GPL vmlinux 0x81c4eec5 mtk_pinconf_bias_disable_get +EXPORT_SYMBOL_GPL vmlinux 0x81ccc3ed vring_create_virtqueue +EXPORT_SYMBOL_GPL vmlinux 0x81cf5282 trace_seq_bprintf +EXPORT_SYMBOL_GPL vmlinux 0x81d7c5b7 percpu_ref_kill_and_confirm +EXPORT_SYMBOL_GPL vmlinux 0x81de4986 tty_ldisc_receive_buf +EXPORT_SYMBOL_GPL vmlinux 0x81defc60 shash_register_instance +EXPORT_SYMBOL_GPL vmlinux 0x81f07791 rio_release_outb_mbox +EXPORT_SYMBOL_GPL vmlinux 0x81fb17d9 bus_rescan_devices +EXPORT_SYMBOL_GPL vmlinux 0x81ff5449 sched_setscheduler +EXPORT_SYMBOL_GPL vmlinux 0x82092899 badrange_forget +EXPORT_SYMBOL_GPL vmlinux 0x820aee3d rtnl_af_unregister +EXPORT_SYMBOL_GPL vmlinux 0x8220a38e k3_ringacc_get_ring_id +EXPORT_SYMBOL_GPL vmlinux 0x82226c53 pinctrl_unregister_mappings +EXPORT_SYMBOL_GPL vmlinux 0x8231bf66 __scsi_init_queue +EXPORT_SYMBOL_GPL vmlinux 0x823eae06 blocking_notifier_call_chain +EXPORT_SYMBOL_GPL vmlinux 0x8241e1fa blk_mq_sched_try_merge +EXPORT_SYMBOL_GPL vmlinux 0x824adeba usb_wakeup_enabled_descendants +EXPORT_SYMBOL_GPL vmlinux 0x8276fbf9 rdev_clear_badblocks +EXPORT_SYMBOL_GPL vmlinux 0x827a9426 platform_get_irq +EXPORT_SYMBOL_GPL vmlinux 0x827e61f8 acpi_has_watchdog +EXPORT_SYMBOL_GPL vmlinux 0x82873c0f rio_request_inb_pwrite +EXPORT_SYMBOL_GPL vmlinux 0x828b04e4 reset_control_get_count +EXPORT_SYMBOL_GPL vmlinux 0x82956d47 pci_load_and_free_saved_state +EXPORT_SYMBOL_GPL vmlinux 0x829f7520 ata_sff_busy_sleep +EXPORT_SYMBOL_GPL vmlinux 0x82a35744 fwnode_usb_role_switch_get +EXPORT_SYMBOL_GPL vmlinux 0x82d79b51 sysctl_vfs_cache_pressure +EXPORT_SYMBOL_GPL vmlinux 0x82e724ac virtqueue_add_inbuf +EXPORT_SYMBOL_GPL vmlinux 0x82fb3829 sched_setscheduler_nocheck +EXPORT_SYMBOL_GPL vmlinux 0x83211389 kvm_vcpu_write_guest +EXPORT_SYMBOL_GPL vmlinux 0x832fdf69 ata_dev_set_feature +EXPORT_SYMBOL_GPL vmlinux 0x8339df73 klist_add_behind +EXPORT_SYMBOL_GPL vmlinux 0x8348e4f0 __tracepoint_wbc_writepage +EXPORT_SYMBOL_GPL vmlinux 0x8349a895 nvmem_device_put +EXPORT_SYMBOL_GPL vmlinux 0x8353dfff acpi_os_get_iomem +EXPORT_SYMBOL_GPL vmlinux 0x83543689 icc_get_name +EXPORT_SYMBOL_GPL vmlinux 0x835cddb1 phy_get +EXPORT_SYMBOL_GPL vmlinux 0x835db819 pcc_mbox_free_channel +EXPORT_SYMBOL_GPL vmlinux 0x83682b25 regmap_bulk_write +EXPORT_SYMBOL_GPL vmlinux 0x836c5ed4 iomap_invalidatepage +EXPORT_SYMBOL_GPL vmlinux 0x836d7dbd devlink_port_unregister +EXPORT_SYMBOL_GPL vmlinux 0x837a20ce fsl_mc_bus_dpseci_type +EXPORT_SYMBOL_GPL vmlinux 0x837a252b nd_region_dev +EXPORT_SYMBOL_GPL vmlinux 0x8391adde syscon_regmap_lookup_by_phandle +EXPORT_SYMBOL_GPL vmlinux 0x83a9b3b3 ata_host_start +EXPORT_SYMBOL_GPL vmlinux 0x83acddfc irq_chip_set_parent_state +EXPORT_SYMBOL_GPL vmlinux 0x83c521f0 blk_revalidate_disk_zones +EXPORT_SYMBOL_GPL vmlinux 0x83e221bb dw_pcie_wait_for_link +EXPORT_SYMBOL_GPL vmlinux 0x83e958c1 crypto_unregister_acomp +EXPORT_SYMBOL_GPL vmlinux 0x83ea58ef regulator_put +EXPORT_SYMBOL_GPL vmlinux 0x83fe85eb dprc_close +EXPORT_SYMBOL_GPL vmlinux 0x84106f36 devlink_trap_ctx_priv +EXPORT_SYMBOL_GPL vmlinux 0x841791e3 fscrypt_ioctl_add_key +EXPORT_SYMBOL_GPL vmlinux 0x8418201f phy_pm_runtime_put +EXPORT_SYMBOL_GPL vmlinux 0x841ad305 acpi_dev_get_resources +EXPORT_SYMBOL_GPL vmlinux 0x84231765 pci_host_common_remove +EXPORT_SYMBOL_GPL vmlinux 0x84239ea0 dev_pm_opp_find_freq_floor +EXPORT_SYMBOL_GPL vmlinux 0x84241fc9 pm_runtime_force_suspend +EXPORT_SYMBOL_GPL vmlinux 0x8424885c dev_pm_opp_get_level +EXPORT_SYMBOL_GPL vmlinux 0x84264ced fs_umode_to_ftype +EXPORT_SYMBOL_GPL vmlinux 0x842f046d usb_poison_anchored_urbs +EXPORT_SYMBOL_GPL vmlinux 0x843557b2 sysfs_chmod_file +EXPORT_SYMBOL_GPL vmlinux 0x843d70ef acpi_is_root_bridge +EXPORT_SYMBOL_GPL vmlinux 0x843e0285 tty_buffer_unlock_exclusive +EXPORT_SYMBOL_GPL vmlinux 0x844a6bc7 alloc_empty_file +EXPORT_SYMBOL_GPL vmlinux 0x84502a47 blk_status_to_errno +EXPORT_SYMBOL_GPL vmlinux 0x845dbf3b scatterwalk_map_and_copy +EXPORT_SYMBOL_GPL vmlinux 0x8462cb62 atapi_cmd_type +EXPORT_SYMBOL_GPL vmlinux 0x846bda00 pinctrl_dev_get_name +EXPORT_SYMBOL_GPL vmlinux 0x846eaf8a devlink_flash_update_end_notify +EXPORT_SYMBOL_GPL vmlinux 0x847f1eae srcu_notifier_chain_register +EXPORT_SYMBOL_GPL vmlinux 0x84805523 ipv6_recv_error +EXPORT_SYMBOL_GPL vmlinux 0x8490266b mddev_congested +EXPORT_SYMBOL_GPL vmlinux 0x849d8cac rio_pw_enable +EXPORT_SYMBOL_GPL vmlinux 0x84a2cb29 scsi_host_unblock +EXPORT_SYMBOL_GPL vmlinux 0x84a4b09e sysfs_unbreak_active_protection +EXPORT_SYMBOL_GPL vmlinux 0x84a8d0eb of_changeset_revert +EXPORT_SYMBOL_GPL vmlinux 0x84ad0fff scsi_host_block +EXPORT_SYMBOL_GPL vmlinux 0x84bfbf8f clk_hw_get_parent +EXPORT_SYMBOL_GPL vmlinux 0x84c9605a kill_dev_dax +EXPORT_SYMBOL_GPL vmlinux 0x84d30ebe crypto_alloc_rng +EXPORT_SYMBOL_GPL vmlinux 0x84d56ae9 devm_fwnode_pwm_get +EXPORT_SYMBOL_GPL vmlinux 0x84d8f6ce perf_aux_output_flag +EXPORT_SYMBOL_GPL vmlinux 0x84ef27f5 synth_event_add_fields +EXPORT_SYMBOL_GPL vmlinux 0x8504728f __page_file_index +EXPORT_SYMBOL_GPL vmlinux 0x8506baa8 clk_unregister_gate +EXPORT_SYMBOL_GPL vmlinux 0x85095274 devm_of_platform_populate +EXPORT_SYMBOL_GPL vmlinux 0x850bb6db devlink_health_reporter_destroy +EXPORT_SYMBOL_GPL vmlinux 0x8518f73e tpm2_flush_context +EXPORT_SYMBOL_GPL vmlinux 0x851e6003 usb_phy_roothub_calibrate +EXPORT_SYMBOL_GPL vmlinux 0x854ff0ff pci_msi_unmask_irq +EXPORT_SYMBOL_GPL vmlinux 0x85540ebc nvmem_cell_put +EXPORT_SYMBOL_GPL vmlinux 0x85569695 sata_link_debounce +EXPORT_SYMBOL_GPL vmlinux 0x855831bc bus_sort_breadthfirst +EXPORT_SYMBOL_GPL vmlinux 0x85656578 devm_ioremap_uc +EXPORT_SYMBOL_GPL vmlinux 0x856a9812 ata_sff_irq_on +EXPORT_SYMBOL_GPL vmlinux 0x8576904f lwtunnel_state_alloc +EXPORT_SYMBOL_GPL vmlinux 0x857f9e14 of_platform_device_destroy +EXPORT_SYMBOL_GPL vmlinux 0x8589b2ee devm_irq_alloc_generic_chip +EXPORT_SYMBOL_GPL vmlinux 0x8590b744 to_nvdimm_bus_dev +EXPORT_SYMBOL_GPL vmlinux 0x85935a61 acpi_dev_irq_flags +EXPORT_SYMBOL_GPL vmlinux 0x859c338e kvm_vcpu_read_guest_page +EXPORT_SYMBOL_GPL vmlinux 0x85a49dc7 pci_vpd_find_info_keyword +EXPORT_SYMBOL_GPL vmlinux 0x85a4a431 get_dev_pagemap +EXPORT_SYMBOL_GPL vmlinux 0x85b1c626 __tracepoint_rpm_suspend +EXPORT_SYMBOL_GPL vmlinux 0x85b38978 percpu_ref_reinit +EXPORT_SYMBOL_GPL vmlinux 0x85c29a6b pm_generic_restore_noirq +EXPORT_SYMBOL_GPL vmlinux 0x85c54b61 efivar_validate +EXPORT_SYMBOL_GPL vmlinux 0x85d22f86 ata_eh_analyze_ncq_error +EXPORT_SYMBOL_GPL vmlinux 0x85d26fd6 sock_diag_save_cookie +EXPORT_SYMBOL_GPL vmlinux 0x85d6d920 acpi_subsys_poweroff +EXPORT_SYMBOL_GPL vmlinux 0x85e5d047 cpuidle_register_device +EXPORT_SYMBOL_GPL vmlinux 0x85e737fa scsi_nl_sock +EXPORT_SYMBOL_GPL vmlinux 0x8614174c da903x_reads +EXPORT_SYMBOL_GPL vmlinux 0x8621e393 ahci_reset_controller +EXPORT_SYMBOL_GPL vmlinux 0x862258db timecounter_init +EXPORT_SYMBOL_GPL vmlinux 0x86248ec5 __audit_log_nfcfg +EXPORT_SYMBOL_GPL vmlinux 0x862bb17b linear_range_values_in_range_array +EXPORT_SYMBOL_GPL vmlinux 0x86310990 iommu_dev_has_feature +EXPORT_SYMBOL_GPL vmlinux 0x8639ae6a kvm_put_kvm +EXPORT_SYMBOL_GPL vmlinux 0x8643a06f __clk_hw_register_divider +EXPORT_SYMBOL_GPL vmlinux 0x86497c6c devm_regulator_register_supply_alias +EXPORT_SYMBOL_GPL vmlinux 0x86585a33 devlink_fmsg_obj_nest_start +EXPORT_SYMBOL_GPL vmlinux 0x86610465 fwnode_handle_get +EXPORT_SYMBOL_GPL vmlinux 0x86612154 serial8250_rpm_get +EXPORT_SYMBOL_GPL vmlinux 0x86623fd7 notify_remote_via_irq +EXPORT_SYMBOL_GPL vmlinux 0x866ac978 of_pwm_get +EXPORT_SYMBOL_GPL vmlinux 0x866ca6a3 gnttab_page_cache_init +EXPORT_SYMBOL_GPL vmlinux 0x86700220 acpi_get_cpuid +EXPORT_SYMBOL_GPL vmlinux 0x8671d749 devlink_resource_size_get +EXPORT_SYMBOL_GPL vmlinux 0x8677245d unregister_switchdev_blocking_notifier +EXPORT_SYMBOL_GPL vmlinux 0x868784cb __symbol_get +EXPORT_SYMBOL_GPL vmlinux 0x868de39d tty_port_register_device_attr_serdev +EXPORT_SYMBOL_GPL vmlinux 0x8690b2d3 irq_create_of_mapping +EXPORT_SYMBOL_GPL vmlinux 0x869d7d93 tps6586x_set_bits +EXPORT_SYMBOL_GPL vmlinux 0x869dcadf mpc8xxx_spi_rx_buf_u32 +EXPORT_SYMBOL_GPL vmlinux 0x86adda43 kvm_vcpu_map +EXPORT_SYMBOL_GPL vmlinux 0x86ae72e8 bgpio_init +EXPORT_SYMBOL_GPL vmlinux 0x86b13d2a usb_unpoison_anchored_urbs +EXPORT_SYMBOL_GPL vmlinux 0x86b32665 __mnt_drop_write +EXPORT_SYMBOL_GPL vmlinux 0x86c02173 tpm_is_tpm2 +EXPORT_SYMBOL_GPL vmlinux 0x86c43a8c cper_estatus_check +EXPORT_SYMBOL_GPL vmlinux 0x86c961b3 __set_dax_synchronous +EXPORT_SYMBOL_GPL vmlinux 0x86cc0448 page_mkclean +EXPORT_SYMBOL_GPL vmlinux 0x86e8174c edac_get_sysfs_subsys +EXPORT_SYMBOL_GPL vmlinux 0x86f24b66 ata_sff_data_xfer +EXPORT_SYMBOL_GPL vmlinux 0x86f6b99d synchronize_rcu_expedited +EXPORT_SYMBOL_GPL vmlinux 0x86f85114 net_dec_egress_queue +EXPORT_SYMBOL_GPL vmlinux 0x86fa2018 clockevents_unbind_device +EXPORT_SYMBOL_GPL vmlinux 0x87011491 dev_pm_qos_update_user_latency_tolerance +EXPORT_SYMBOL_GPL vmlinux 0x870e16b7 xen_test_irq_shared +EXPORT_SYMBOL_GPL vmlinux 0x870f42bd aead_init_geniv +EXPORT_SYMBOL_GPL vmlinux 0x871a51bf pm_clk_remove_clk +EXPORT_SYMBOL_GPL vmlinux 0x872261b0 gpiochip_find +EXPORT_SYMBOL_GPL vmlinux 0x8722b5a6 virtqueue_enable_cb +EXPORT_SYMBOL_GPL vmlinux 0x872b427a blk_mq_flush_busy_ctxs +EXPORT_SYMBOL_GPL vmlinux 0x874228f0 devlink_trap_groups_register +EXPORT_SYMBOL_GPL vmlinux 0x87424d24 devm_gpiod_get_optional +EXPORT_SYMBOL_GPL vmlinux 0x875582b7 nvmem_del_cell_table +EXPORT_SYMBOL_GPL vmlinux 0x877b9681 blk_execute_rq_nowait +EXPORT_SYMBOL_GPL vmlinux 0x878db1ba __kthread_init_worker +EXPORT_SYMBOL_GPL vmlinux 0x8793eab5 sysfs_remove_file_ns +EXPORT_SYMBOL_GPL vmlinux 0x87c424d7 led_trigger_set_default +EXPORT_SYMBOL_GPL vmlinux 0x87ce6bf6 pci_d3cold_disable +EXPORT_SYMBOL_GPL vmlinux 0x87e34cc5 devm_remove_action +EXPORT_SYMBOL_GPL vmlinux 0x88066be2 __tracepoint_rpm_return_int +EXPORT_SYMBOL_GPL vmlinux 0x88068dbe ata_link_next +EXPORT_SYMBOL_GPL vmlinux 0x8807fe8d dev_pm_opp_unregister_set_opp_helper +EXPORT_SYMBOL_GPL vmlinux 0x88105ae0 regmap_fields_update_bits_base +EXPORT_SYMBOL_GPL vmlinux 0x88249ddd __spi_alloc_controller +EXPORT_SYMBOL_GPL vmlinux 0x88439499 usb_disable_lpm +EXPORT_SYMBOL_GPL vmlinux 0x885528a6 ring_buffer_discard_commit +EXPORT_SYMBOL_GPL vmlinux 0x886606b0 net_ns_type_operations +EXPORT_SYMBOL_GPL vmlinux 0x887550b8 ata_acpi_gtm +EXPORT_SYMBOL_GPL vmlinux 0x8876ecc8 pm_generic_resume_early +EXPORT_SYMBOL_GPL vmlinux 0x888c5be5 irq_bypass_register_consumer +EXPORT_SYMBOL_GPL vmlinux 0x888e6b4a fat_sync_inode +EXPORT_SYMBOL_GPL vmlinux 0x8890ac5b genpd_dev_pm_attach_by_id +EXPORT_SYMBOL_GPL vmlinux 0x889e46d0 phy_pm_runtime_get_sync +EXPORT_SYMBOL_GPL vmlinux 0x88a43e1a bpf_trace_run5 +EXPORT_SYMBOL_GPL vmlinux 0x88ab6fe3 kgdb_active +EXPORT_SYMBOL_GPL vmlinux 0x88b4ae92 ring_buffer_normalize_time_stamp +EXPORT_SYMBOL_GPL vmlinux 0x88bd54f4 security_inode_permission +EXPORT_SYMBOL_GPL vmlinux 0x88cd7a9a k3_ringacc_ring_get_occ +EXPORT_SYMBOL_GPL vmlinux 0x88ceb105 key_set_timeout +EXPORT_SYMBOL_GPL vmlinux 0x88d736b1 blk_mq_freeze_queue_wait_timeout +EXPORT_SYMBOL_GPL vmlinux 0x88f1a3a8 __pm_runtime_use_autosuspend +EXPORT_SYMBOL_GPL vmlinux 0x88f58bdf security_kernel_load_data +EXPORT_SYMBOL_GPL vmlinux 0x88f64f70 usb_driver_claim_interface +EXPORT_SYMBOL_GPL vmlinux 0x88fb3a01 pm_genpd_init +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 0x891f925a cpci_hp_register_controller +EXPORT_SYMBOL_GPL vmlinux 0x89239e9f kset_create_and_add +EXPORT_SYMBOL_GPL vmlinux 0x8924eb1e rcu_force_quiescent_state +EXPORT_SYMBOL_GPL vmlinux 0x8929668d gnttab_unmap_refs_sync +EXPORT_SYMBOL_GPL vmlinux 0x893a70b0 gpio_to_desc +EXPORT_SYMBOL_GPL vmlinux 0x893abbdd devlink_fmsg_u32_pair_put +EXPORT_SYMBOL_GPL vmlinux 0x89485687 iommu_group_put +EXPORT_SYMBOL_GPL vmlinux 0x894b7a38 hwpoison_filter +EXPORT_SYMBOL_GPL vmlinux 0x8958f83b acpi_subsys_suspend_late +EXPORT_SYMBOL_GPL vmlinux 0x89696218 reserve_iova +EXPORT_SYMBOL_GPL vmlinux 0x8979cd99 crypto_alg_mod_lookup +EXPORT_SYMBOL_GPL vmlinux 0x898c8954 spi_controller_suspend +EXPORT_SYMBOL_GPL vmlinux 0x89989b5f led_set_brightness_nopm +EXPORT_SYMBOL_GPL vmlinux 0x899c7b6b dev_pm_opp_set_clkname +EXPORT_SYMBOL_GPL vmlinux 0x89a4476d HYPERVISOR_multicall +EXPORT_SYMBOL_GPL vmlinux 0x89a79b30 mmc_sanitize +EXPORT_SYMBOL_GPL vmlinux 0x89ae7aa0 rsa_parse_pub_key +EXPORT_SYMBOL_GPL vmlinux 0x89ba31fc thermal_zone_device_register +EXPORT_SYMBOL_GPL vmlinux 0x89bbafc6 usb_register_notify +EXPORT_SYMBOL_GPL vmlinux 0x89bd2921 gpiochip_populate_parent_fwspec_twocell +EXPORT_SYMBOL_GPL vmlinux 0x89c169fe ipv6_find_tlv +EXPORT_SYMBOL_GPL vmlinux 0x89d1e9a1 of_led_get +EXPORT_SYMBOL_GPL vmlinux 0x89e340cf acpi_bus_get_ejd +EXPORT_SYMBOL_GPL vmlinux 0x89eeeeda kvm_write_guest_page +EXPORT_SYMBOL_GPL vmlinux 0x89f4966b __vfs_removexattr_noperm +EXPORT_SYMBOL_GPL vmlinux 0x8a106de3 devm_of_led_get +EXPORT_SYMBOL_GPL vmlinux 0x8a1ac064 task_active_pid_ns +EXPORT_SYMBOL_GPL vmlinux 0x8a240bff __xas_next +EXPORT_SYMBOL_GPL vmlinux 0x8a30091b iommu_device_sysfs_add +EXPORT_SYMBOL_GPL vmlinux 0x8a30ac9c __devm_regmap_init_mmio_clk +EXPORT_SYMBOL_GPL vmlinux 0x8a3f84ba linear_range_get_selector_low +EXPORT_SYMBOL_GPL vmlinux 0x8a45a555 acpi_unregister_wakeup_handler +EXPORT_SYMBOL_GPL vmlinux 0x8a554a36 mpc8xxx_spi_strmode +EXPORT_SYMBOL_GPL vmlinux 0x8a62b81b sfp_upstream_stop +EXPORT_SYMBOL_GPL vmlinux 0x8aa5ba55 ata_sff_tf_load +EXPORT_SYMBOL_GPL vmlinux 0x8abacc47 get_max_files +EXPORT_SYMBOL_GPL vmlinux 0x8ac5f938 dev_pm_opp_get_opp_table +EXPORT_SYMBOL_GPL vmlinux 0x8ad1060e nd_tbl +EXPORT_SYMBOL_GPL vmlinux 0x8ad83252 regulator_set_voltage_time +EXPORT_SYMBOL_GPL vmlinux 0x8adbd247 inet_twsk_put +EXPORT_SYMBOL_GPL vmlinux 0x8add9349 pci_iomap_wc +EXPORT_SYMBOL_GPL vmlinux 0x8ae84759 scmi_driver_register +EXPORT_SYMBOL_GPL vmlinux 0x8af24d28 extcon_get_edev_name +EXPORT_SYMBOL_GPL vmlinux 0x8af33b5d debugfs_print_regs32 +EXPORT_SYMBOL_GPL vmlinux 0x8b098084 regmap_write +EXPORT_SYMBOL_GPL vmlinux 0x8b149c36 clk_is_match +EXPORT_SYMBOL_GPL vmlinux 0x8b18cd0f firmware_request_platform +EXPORT_SYMBOL_GPL vmlinux 0x8b795068 percpu_down_write +EXPORT_SYMBOL_GPL vmlinux 0x8b7abcaa phy_remove_lookup +EXPORT_SYMBOL_GPL vmlinux 0x8b7bdd60 edac_mc_handle_error +EXPORT_SYMBOL_GPL vmlinux 0x8b84172e irq_chip_unmask_parent +EXPORT_SYMBOL_GPL vmlinux 0x8b98d4ff rio_mport_write_config_8 +EXPORT_SYMBOL_GPL vmlinux 0x8b9abdba pci_epc_mem_free_addr +EXPORT_SYMBOL_GPL vmlinux 0x8ba4cfe2 ata_pci_shutdown_one +EXPORT_SYMBOL_GPL vmlinux 0x8ba5afe9 HYPERVISOR_memory_op +EXPORT_SYMBOL_GPL vmlinux 0x8ba6b6aa of_genpd_remove_last +EXPORT_SYMBOL_GPL vmlinux 0x8ba77b99 pinctrl_find_gpio_range_from_pin_nolock +EXPORT_SYMBOL_GPL vmlinux 0x8bb5684b of_phy_provider_unregister +EXPORT_SYMBOL_GPL vmlinux 0x8bd7bca4 i2c_dw_adjust_bus_speed +EXPORT_SYMBOL_GPL vmlinux 0x8bd961cc fib_nh_common_release +EXPORT_SYMBOL_GPL vmlinux 0x8bdc7f78 serial8250_em485_destroy +EXPORT_SYMBOL_GPL vmlinux 0x8bf5f379 k3_udma_glue_release_tx_chn +EXPORT_SYMBOL_GPL vmlinux 0x8c0215f2 pm_system_wakeup +EXPORT_SYMBOL_GPL vmlinux 0x8c03d20c destroy_workqueue +EXPORT_SYMBOL_GPL vmlinux 0x8c16ea75 kvm_vcpu_on_spin +EXPORT_SYMBOL_GPL vmlinux 0x8c1e848b devm_extcon_dev_unregister +EXPORT_SYMBOL_GPL vmlinux 0x8c202b24 class_interface_unregister +EXPORT_SYMBOL_GPL vmlinux 0x8c2cbb24 mtk_pinconf_bias_set +EXPORT_SYMBOL_GPL vmlinux 0x8c3b60ce to_of_pinfo +EXPORT_SYMBOL_GPL vmlinux 0x8c42b635 bus_create_file +EXPORT_SYMBOL_GPL vmlinux 0x8c479745 __cpuhp_state_remove_instance +EXPORT_SYMBOL_GPL vmlinux 0x8c484409 gnttab_release_grant_reference +EXPORT_SYMBOL_GPL vmlinux 0x8c7295c2 __nvdimm_create +EXPORT_SYMBOL_GPL vmlinux 0x8c743fb6 reset_control_status +EXPORT_SYMBOL_GPL vmlinux 0x8c7aa936 fsverity_verify_bio +EXPORT_SYMBOL_GPL vmlinux 0x8c89e3b8 usb_phy_roothub_power_off +EXPORT_SYMBOL_GPL vmlinux 0x8c985c6b spi_bus_unlock +EXPORT_SYMBOL_GPL vmlinux 0x8ca0c373 fscrypt_ioctl_get_policy_ex +EXPORT_SYMBOL_GPL vmlinux 0x8ca30018 usb_add_hcd +EXPORT_SYMBOL_GPL vmlinux 0x8cb5a38e k3_udma_glue_rx_flow_disable +EXPORT_SYMBOL_GPL vmlinux 0x8cb5a716 fat_search_long +EXPORT_SYMBOL_GPL vmlinux 0x8cd7e8f6 clk_fractional_divider_ops +EXPORT_SYMBOL_GPL vmlinux 0x8ceb2d6a usb_hub_claim_port +EXPORT_SYMBOL_GPL vmlinux 0x8cffaf48 rio_dma_prep_slave_sg +EXPORT_SYMBOL_GPL vmlinux 0x8d139a50 pm_generic_runtime_suspend +EXPORT_SYMBOL_GPL vmlinux 0x8d22bb58 iommu_group_alloc +EXPORT_SYMBOL_GPL vmlinux 0x8d231cef ata_scsi_port_error_handler +EXPORT_SYMBOL_GPL vmlinux 0x8d3330b6 cpuacct_cgrp_subsys_enabled_key +EXPORT_SYMBOL_GPL vmlinux 0x8d413d4e devfreq_event_is_enabled +EXPORT_SYMBOL_GPL vmlinux 0x8d5b7172 proc_create_net_single_write +EXPORT_SYMBOL_GPL vmlinux 0x8d5bd445 ata_dummy_port_info +EXPORT_SYMBOL_GPL vmlinux 0x8d5fd735 phy_gbit_features +EXPORT_SYMBOL_GPL vmlinux 0x8d61d56c crypto_register_algs +EXPORT_SYMBOL_GPL vmlinux 0x8d7884d9 bpf_trace_run1 +EXPORT_SYMBOL_GPL vmlinux 0x8d7e3373 hwpoison_filter_dev_major +EXPORT_SYMBOL_GPL vmlinux 0x8d83c139 divider_ro_round_rate_parent +EXPORT_SYMBOL_GPL vmlinux 0x8d86ca14 kernfs_put +EXPORT_SYMBOL_GPL vmlinux 0x8d8b4994 unregister_asymmetric_key_parser +EXPORT_SYMBOL_GPL vmlinux 0x8d988b0c rtnl_register_module +EXPORT_SYMBOL_GPL vmlinux 0x8dae0098 acpiphp_register_attention +EXPORT_SYMBOL_GPL vmlinux 0x8dbf7aaa privcmd_call +EXPORT_SYMBOL_GPL vmlinux 0x8dcce3b9 file_ra_state_init +EXPORT_SYMBOL_GPL vmlinux 0x8dd5d06c md_stop +EXPORT_SYMBOL_GPL vmlinux 0x8dd788ee get_net_ns_by_fd +EXPORT_SYMBOL_GPL vmlinux 0x8ddde2c3 devm_regmap_add_irq_chip +EXPORT_SYMBOL_GPL vmlinux 0x8df7f6a3 ip_build_and_send_pkt +EXPORT_SYMBOL_GPL vmlinux 0x8dfe9e65 ata_host_put +EXPORT_SYMBOL_GPL vmlinux 0x8e09fade acpi_device_fix_up_power +EXPORT_SYMBOL_GPL vmlinux 0x8e1621cf fscrypt_match_name +EXPORT_SYMBOL_GPL vmlinux 0x8e16419b trace_clock_local +EXPORT_SYMBOL_GPL vmlinux 0x8e1d3306 ata_cable_ignore +EXPORT_SYMBOL_GPL vmlinux 0x8e23d58f offline_and_remove_memory +EXPORT_SYMBOL_GPL vmlinux 0x8e2ab114 acpi_subsys_suspend +EXPORT_SYMBOL_GPL vmlinux 0x8e4a001a usb_hcd_pci_pm_ops +EXPORT_SYMBOL_GPL vmlinux 0x8e4b63a6 hisi_clk_register_gate_sep +EXPORT_SYMBOL_GPL vmlinux 0x8e4eb451 bpf_sk_storage_diag_free +EXPORT_SYMBOL_GPL vmlinux 0x8e5b6fa4 ip6_dst_lookup +EXPORT_SYMBOL_GPL vmlinux 0x8e68d279 tps65912_regmap_config +EXPORT_SYMBOL_GPL vmlinux 0x8e6fa8b5 apei_exec_pre_map_gars +EXPORT_SYMBOL_GPL vmlinux 0x8e7f0a9c acpi_get_phys_id +EXPORT_SYMBOL_GPL vmlinux 0x8e92a0e0 sysfs_remove_link_from_group +EXPORT_SYMBOL_GPL vmlinux 0x8e92f7c4 static_key_slow_inc +EXPORT_SYMBOL_GPL vmlinux 0x8eae8dfd usb_find_common_endpoints +EXPORT_SYMBOL_GPL vmlinux 0x8ed1affc __usb_create_hcd +EXPORT_SYMBOL_GPL vmlinux 0x8ed5b44c kvm_write_guest_offset_cached +EXPORT_SYMBOL_GPL vmlinux 0x8edb44aa synth_event_trace_end +EXPORT_SYMBOL_GPL vmlinux 0x8eebeaba dm_internal_resume_fast +EXPORT_SYMBOL_GPL vmlinux 0x8eebee8a crypto_grab_ahash +EXPORT_SYMBOL_GPL vmlinux 0x8eee3399 dax_read_unlock +EXPORT_SYMBOL_GPL vmlinux 0x8f0748af rcu_expedite_gp +EXPORT_SYMBOL_GPL vmlinux 0x8f0e4e36 pktgen_xfrm_outer_mode_output +EXPORT_SYMBOL_GPL vmlinux 0x8f24f431 max8997_read_reg +EXPORT_SYMBOL_GPL vmlinux 0x8f2f7a2c dmaengine_desc_set_metadata_len +EXPORT_SYMBOL_GPL vmlinux 0x8f30b9b0 pci_user_write_config_word +EXPORT_SYMBOL_GPL vmlinux 0x8f33c92f dev_pm_opp_of_cpumask_add_table +EXPORT_SYMBOL_GPL vmlinux 0x8f3969e1 zynqmp_pm_clock_getrate +EXPORT_SYMBOL_GPL vmlinux 0x8f568ef4 eventfd_fget +EXPORT_SYMBOL_GPL vmlinux 0x8f5c3013 ping_bind +EXPORT_SYMBOL_GPL vmlinux 0x8f6683ba dummy_irq_chip +EXPORT_SYMBOL_GPL vmlinux 0x8f6cee77 __round_jiffies_relative +EXPORT_SYMBOL_GPL vmlinux 0x8f71e041 unix_peer_get +EXPORT_SYMBOL_GPL vmlinux 0x8f786bee fs_umode_to_dtype +EXPORT_SYMBOL_GPL vmlinux 0x8f7bd0a6 btree_init_mempool +EXPORT_SYMBOL_GPL vmlinux 0x8f801d8d rhashtable_destroy +EXPORT_SYMBOL_GPL vmlinux 0x8f8b9a19 platform_driver_unregister +EXPORT_SYMBOL_GPL vmlinux 0x8f95583d iomap_bmap +EXPORT_SYMBOL_GPL vmlinux 0x8f95c610 sfp_bus_add_upstream +EXPORT_SYMBOL_GPL vmlinux 0x8f98ed05 vfs_readf +EXPORT_SYMBOL_GPL vmlinux 0x8f9e1eb6 crypto_unregister_aeads +EXPORT_SYMBOL_GPL vmlinux 0x8fa6052c sysfs_remove_groups +EXPORT_SYMBOL_GPL vmlinux 0x8fab5e5c fwnode_property_read_u32_array +EXPORT_SYMBOL_GPL vmlinux 0x8fb44f44 simple_attr_release +EXPORT_SYMBOL_GPL vmlinux 0x8fb91ad9 serdev_device_close +EXPORT_SYMBOL_GPL vmlinux 0x8fba7dd1 crypto_shash_digest +EXPORT_SYMBOL_GPL vmlinux 0x8fc12788 software_node_unregister_node_group +EXPORT_SYMBOL_GPL vmlinux 0x8fc585bd regmap_test_bits +EXPORT_SYMBOL_GPL vmlinux 0x8fd100a6 generic_fh_to_parent +EXPORT_SYMBOL_GPL vmlinux 0x8fd3d8f0 ata_do_dev_read_id +EXPORT_SYMBOL_GPL vmlinux 0x9007d972 rhashtable_walk_peek +EXPORT_SYMBOL_GPL vmlinux 0x900cdb13 __bio_crypt_clone +EXPORT_SYMBOL_GPL vmlinux 0x9016d198 blk_register_queue +EXPORT_SYMBOL_GPL vmlinux 0x9025df0f genpd_dev_pm_attach +EXPORT_SYMBOL_GPL vmlinux 0x903b627c list_lru_isolate_move +EXPORT_SYMBOL_GPL vmlinux 0x904984b5 devlink_dpipe_table_counter_enabled +EXPORT_SYMBOL_GPL vmlinux 0x9061e79d usb_mon_register +EXPORT_SYMBOL_GPL vmlinux 0x90688bcd devlink_info_driver_name_put +EXPORT_SYMBOL_GPL vmlinux 0x9075d98a screen_glyph_unicode +EXPORT_SYMBOL_GPL vmlinux 0x9081b5db btree_insert +EXPORT_SYMBOL_GPL vmlinux 0x90889c54 crypto_mod_get +EXPORT_SYMBOL_GPL vmlinux 0x909c9369 uart_get_rs485_mode +EXPORT_SYMBOL_GPL vmlinux 0x909e2e53 pci_common_swizzle +EXPORT_SYMBOL_GPL vmlinux 0x909fcf12 fwnode_get_next_child_node +EXPORT_SYMBOL_GPL vmlinux 0x90a62e39 gnttab_unmap_refs +EXPORT_SYMBOL_GPL vmlinux 0x90a80174 device_property_read_u64_array +EXPORT_SYMBOL_GPL vmlinux 0x90ad66b1 software_node_unregister_nodes +EXPORT_SYMBOL_GPL vmlinux 0x90b763f1 HYPERVISOR_console_io +EXPORT_SYMBOL_GPL vmlinux 0x90bee473 ata_pci_sff_init_host +EXPORT_SYMBOL_GPL vmlinux 0x90c8498c apei_exec_write_register +EXPORT_SYMBOL_GPL vmlinux 0x90c90a49 usb_acpi_power_manageable +EXPORT_SYMBOL_GPL vmlinux 0x90ce8348 sysfs_update_group +EXPORT_SYMBOL_GPL vmlinux 0x90d18e1a of_pci_parse_bus_range +EXPORT_SYMBOL_GPL vmlinux 0x90d76bd2 crypto_register_skciphers +EXPORT_SYMBOL_GPL vmlinux 0x90d84a19 kvm_vcpu_gfn_to_page +EXPORT_SYMBOL_GPL vmlinux 0x90e659f0 dma_async_device_channel_register +EXPORT_SYMBOL_GPL vmlinux 0x90e8018d platform_msi_domain_free_irqs +EXPORT_SYMBOL_GPL vmlinux 0x90f41d09 inet6_destroy_sock +EXPORT_SYMBOL_GPL vmlinux 0x90f60664 dma_resv_get_fences_rcu +EXPORT_SYMBOL_GPL vmlinux 0x90fd25f4 pm_generic_thaw_noirq +EXPORT_SYMBOL_GPL vmlinux 0x90fd99ba regulator_unregister_supply_alias +EXPORT_SYMBOL_GPL vmlinux 0x9100e444 mtk_pinconf_bias_disable_set +EXPORT_SYMBOL_GPL vmlinux 0x910b386f genphy_c45_pma_read_abilities +EXPORT_SYMBOL_GPL vmlinux 0x910ffbc4 xenbus_dev_resume +EXPORT_SYMBOL_GPL vmlinux 0x911bd64c mtk_mmsys_ddp_connect +EXPORT_SYMBOL_GPL vmlinux 0x9127ff07 pci_disable_rom +EXPORT_SYMBOL_GPL vmlinux 0x91471ea9 iommu_get_domain_for_dev +EXPORT_SYMBOL_GPL vmlinux 0x9156ebfc __cpufreq_driver_target +EXPORT_SYMBOL_GPL vmlinux 0x915bb424 sdev_evt_send +EXPORT_SYMBOL_GPL vmlinux 0x91872636 crypto_unregister_akcipher +EXPORT_SYMBOL_GPL vmlinux 0x919425fd pv_ops +EXPORT_SYMBOL_GPL vmlinux 0x9194e18f xenbus_mkdir +EXPORT_SYMBOL_GPL vmlinux 0x91a55068 public_key_free +EXPORT_SYMBOL_GPL vmlinux 0x91ab9f36 pm_clk_runtime_suspend +EXPORT_SYMBOL_GPL vmlinux 0x91aeb3ed raw_hash_sk +EXPORT_SYMBOL_GPL vmlinux 0x91bf220d mbox_chan_txdone +EXPORT_SYMBOL_GPL vmlinux 0x91c5fc6b edac_device_del_device +EXPORT_SYMBOL_GPL vmlinux 0x91c6e5b0 pcap_to_irq +EXPORT_SYMBOL_GPL vmlinux 0x91c8b5b5 mutex_lock_io +EXPORT_SYMBOL_GPL vmlinux 0x91ce3457 bpf_sk_storage_diag_put +EXPORT_SYMBOL_GPL vmlinux 0x91d31973 rio_set_port_lockout +EXPORT_SYMBOL_GPL vmlinux 0x91d97fd9 balloon_page_list_dequeue +EXPORT_SYMBOL_GPL vmlinux 0x91e30809 HYPERVISOR_vm_assist +EXPORT_SYMBOL_GPL vmlinux 0x91f5a88e fsverity_cleanup_inode +EXPORT_SYMBOL_GPL vmlinux 0x9200c0a4 spi_res_add +EXPORT_SYMBOL_GPL vmlinux 0x92062f10 ata_sff_drain_fifo +EXPORT_SYMBOL_GPL vmlinux 0x920cc389 visitorl +EXPORT_SYMBOL_GPL vmlinux 0x92175954 proc_create_net_data_write +EXPORT_SYMBOL_GPL vmlinux 0x921aa79e amba_device_put +EXPORT_SYMBOL_GPL vmlinux 0x92295424 clk_register_gate +EXPORT_SYMBOL_GPL vmlinux 0x922db238 bgmac_enet_remove +EXPORT_SYMBOL_GPL vmlinux 0x92373a82 __acpi_node_get_property_reference +EXPORT_SYMBOL_GPL vmlinux 0x923d9dba pkcs7_parse_message +EXPORT_SYMBOL_GPL vmlinux 0x9241b358 __static_key_slow_dec_deferred +EXPORT_SYMBOL_GPL vmlinux 0x924c46f8 zs_unmap_object +EXPORT_SYMBOL_GPL vmlinux 0x924ddb35 pm_generic_suspend_noirq +EXPORT_SYMBOL_GPL vmlinux 0x92584e22 device_property_present +EXPORT_SYMBOL_GPL vmlinux 0x92596883 dax_finish_sync_fault +EXPORT_SYMBOL_GPL vmlinux 0x925e8d02 gpiochip_unlock_as_irq +EXPORT_SYMBOL_GPL vmlinux 0x926c1554 bus_for_each_drv +EXPORT_SYMBOL_GPL vmlinux 0x927487ea zynqmp_pm_read_ggs +EXPORT_SYMBOL_GPL vmlinux 0x9282a2d5 regmap_mmio_detach_clk +EXPORT_SYMBOL_GPL vmlinux 0x929bc539 sock_prot_inuse_get +EXPORT_SYMBOL_GPL vmlinux 0x92a22b8b ti_sci_inta_msi_domain_free_irqs +EXPORT_SYMBOL_GPL vmlinux 0x92a7e13a wait_for_stable_page +EXPORT_SYMBOL_GPL vmlinux 0x92c369f5 irq_create_mapping_affinity +EXPORT_SYMBOL_GPL vmlinux 0x92caf2ac clock_cooling_get_level +EXPORT_SYMBOL_GPL vmlinux 0x92d31cfb fixed_phy_add +EXPORT_SYMBOL_GPL vmlinux 0x92d527fd irq_chip_mask_parent +EXPORT_SYMBOL_GPL vmlinux 0x92d8e56f __tracepoint_xhci_dbg_quirks +EXPORT_SYMBOL_GPL vmlinux 0x92db8f68 do_trace_rcu_torture_read +EXPORT_SYMBOL_GPL vmlinux 0x92e7da08 led_trigger_event +EXPORT_SYMBOL_GPL vmlinux 0x92e8e9ab fsverity_enqueue_verify_work +EXPORT_SYMBOL_GPL vmlinux 0x92ef5aaf usb_autopm_put_interface_no_suspend +EXPORT_SYMBOL_GPL vmlinux 0x930ab533 k3_ringacc_request_ring +EXPORT_SYMBOL_GPL vmlinux 0x93170790 blk_fill_rwbs +EXPORT_SYMBOL_GPL vmlinux 0x93255b2b ring_buffer_lock_reserve +EXPORT_SYMBOL_GPL vmlinux 0x932c8d7a linear_range_get_value_array +EXPORT_SYMBOL_GPL vmlinux 0x93314fde sk_msg_return +EXPORT_SYMBOL_GPL vmlinux 0x933f75e0 usb_unlink_anchored_urbs +EXPORT_SYMBOL_GPL vmlinux 0x934c5cc2 class_remove_file_ns +EXPORT_SYMBOL_GPL vmlinux 0x93530779 pci_ecam_map_bus +EXPORT_SYMBOL_GPL vmlinux 0x935d662f crypto_destroy_tfm +EXPORT_SYMBOL_GPL vmlinux 0x936daf5c inet_twsk_hashdance +EXPORT_SYMBOL_GPL vmlinux 0x936dcb93 crypto_comp_compress +EXPORT_SYMBOL_GPL vmlinux 0x93725986 __tracepoint_pelt_dl_tp +EXPORT_SYMBOL_GPL vmlinux 0x9384cd49 ata_tf_from_fis +EXPORT_SYMBOL_GPL vmlinux 0x938cbbab kvm_vcpu_read_guest_atomic +EXPORT_SYMBOL_GPL vmlinux 0x93922111 get_compat_bpf_fprog +EXPORT_SYMBOL_GPL vmlinux 0x93b31a83 dm_set_target_max_io_len +EXPORT_SYMBOL_GPL vmlinux 0x93b818b8 devfreq_event_remove_edev +EXPORT_SYMBOL_GPL vmlinux 0x93bcbb34 device_get_match_data +EXPORT_SYMBOL_GPL vmlinux 0x93c17148 scsi_ioctl_block_when_processing_errors +EXPORT_SYMBOL_GPL vmlinux 0x93d1d424 gnttab_free_grant_references +EXPORT_SYMBOL_GPL vmlinux 0x93da690f usb_get_descriptor +EXPORT_SYMBOL_GPL vmlinux 0x93e44f39 pci_epf_unregister_driver +EXPORT_SYMBOL_GPL vmlinux 0x93edef07 devlink_health_report +EXPORT_SYMBOL_GPL vmlinux 0x940cf2b2 irq_chip_request_resources_parent +EXPORT_SYMBOL_GPL vmlinux 0x941824f9 reset_controller_unregister +EXPORT_SYMBOL_GPL vmlinux 0x941f2aaa eventfd_ctx_put +EXPORT_SYMBOL_GPL vmlinux 0x9425bb34 nvmem_dev_name +EXPORT_SYMBOL_GPL vmlinux 0x942f9a2b get_user_pages_fast_only +EXPORT_SYMBOL_GPL vmlinux 0x94301829 sock_zerocopy_alloc +EXPORT_SYMBOL_GPL vmlinux 0x9430b198 trace_dump_stack +EXPORT_SYMBOL_GPL vmlinux 0x943fc708 xen_setup_shutdown_event +EXPORT_SYMBOL_GPL vmlinux 0x944375c5 bpf_event_output +EXPORT_SYMBOL_GPL vmlinux 0x9450d026 pm_generic_poweroff_noirq +EXPORT_SYMBOL_GPL vmlinux 0x945d993a clk_gate_ops +EXPORT_SYMBOL_GPL vmlinux 0x946dd559 sha224_zero_message_hash +EXPORT_SYMBOL_GPL vmlinux 0x9472a81f __class_create +EXPORT_SYMBOL_GPL vmlinux 0x947e56bd anon_transport_class_register +EXPORT_SYMBOL_GPL vmlinux 0x948303c4 nvdimm_badblocks_populate +EXPORT_SYMBOL_GPL vmlinux 0x9491f882 iommu_group_remove_device +EXPORT_SYMBOL_GPL vmlinux 0x949b5176 devlink_region_snapshot_create +EXPORT_SYMBOL_GPL vmlinux 0x949e88e2 crypto_default_rng +EXPORT_SYMBOL_GPL vmlinux 0x949f7342 __alloc_percpu +EXPORT_SYMBOL_GPL vmlinux 0x94a5bfdf gpiochip_disable_irq +EXPORT_SYMBOL_GPL vmlinux 0x94aeef9f adp5520_unregister_notifier +EXPORT_SYMBOL_GPL vmlinux 0x94b3399e wakeup_source_add +EXPORT_SYMBOL_GPL vmlinux 0x94b9eb62 dpbp_disable +EXPORT_SYMBOL_GPL vmlinux 0x94c70bf4 devlink_flash_update_status_notify +EXPORT_SYMBOL_GPL vmlinux 0x94e62d2e __set_phys_to_machine_multi +EXPORT_SYMBOL_GPL vmlinux 0x94ef4d05 cpci_hp_stop +EXPORT_SYMBOL_GPL vmlinux 0x94f0136c irq_set_affinity_notifier +EXPORT_SYMBOL_GPL vmlinux 0x94fc2a93 vring_transport_features +EXPORT_SYMBOL_GPL vmlinux 0x9504df26 irq_wake_thread +EXPORT_SYMBOL_GPL vmlinux 0x9508137f kernfs_find_and_get_ns +EXPORT_SYMBOL_GPL vmlinux 0x9509a3c9 rcu_read_unlock_trace_special +EXPORT_SYMBOL_GPL vmlinux 0x951a2773 crypto_has_alg +EXPORT_SYMBOL_GPL vmlinux 0x952664c5 do_exit +EXPORT_SYMBOL_GPL vmlinux 0x952cad8e l3mdev_link_scope_lookup +EXPORT_SYMBOL_GPL vmlinux 0x9534c6a4 nf_queue_nf_hook_drop +EXPORT_SYMBOL_GPL vmlinux 0x953b61fb tpm_chip_alloc +EXPORT_SYMBOL_GPL vmlinux 0x953e1b9e ktime_get_real_seconds +EXPORT_SYMBOL_GPL vmlinux 0x954f9969 crypto_register_templates +EXPORT_SYMBOL_GPL vmlinux 0x95554fdc cn_add_callback +EXPORT_SYMBOL_GPL vmlinux 0x955a76d9 crypto_alloc_base +EXPORT_SYMBOL_GPL vmlinux 0x955b0e2e kthread_worker_fn +EXPORT_SYMBOL_GPL vmlinux 0x956ac400 ring_buffer_dropped_events_cpu +EXPORT_SYMBOL_GPL vmlinux 0x956acae7 rtc_read_time +EXPORT_SYMBOL_GPL vmlinux 0x956cd805 netdev_walk_all_lower_dev +EXPORT_SYMBOL_GPL vmlinux 0x956db9e1 pci_generic_config_read +EXPORT_SYMBOL_GPL vmlinux 0x9573cc65 spi_mem_driver_register_with_owner +EXPORT_SYMBOL_GPL vmlinux 0x958df3ac zs_free +EXPORT_SYMBOL_GPL vmlinux 0x9596c22b cpuidle_unregister +EXPORT_SYMBOL_GPL vmlinux 0x959ec5f5 call_rcu_tasks +EXPORT_SYMBOL_GPL vmlinux 0x95b402e2 fwnode_count_parents +EXPORT_SYMBOL_GPL vmlinux 0x95ba198b ata_acpi_gtm_xfermask +EXPORT_SYMBOL_GPL vmlinux 0x95bc9078 btree_free +EXPORT_SYMBOL_GPL vmlinux 0x95c0cd7c dprc_open +EXPORT_SYMBOL_GPL vmlinux 0x95c7f8f7 tty_port_tty_hangup +EXPORT_SYMBOL_GPL vmlinux 0x95d2bb94 kvm_clear_guest +EXPORT_SYMBOL_GPL vmlinux 0x95e7440a ping_close +EXPORT_SYMBOL_GPL vmlinux 0x95ef1ccc dmi_memdev_size +EXPORT_SYMBOL_GPL vmlinux 0x95efa1db pkcs7_free_message +EXPORT_SYMBOL_GPL vmlinux 0x961286e0 ring_buffer_read_events_cpu +EXPORT_SYMBOL_GPL vmlinux 0x96175891 dev_pm_opp_of_remove_table +EXPORT_SYMBOL_GPL vmlinux 0x962c8ae1 usb_kill_anchored_urbs +EXPORT_SYMBOL_GPL vmlinux 0x9632e31b clk_hw_unregister_gate +EXPORT_SYMBOL_GPL vmlinux 0x9651d298 dev_pm_opp_is_turbo +EXPORT_SYMBOL_GPL vmlinux 0x96554810 register_keyboard_notifier +EXPORT_SYMBOL_GPL vmlinux 0x965730fd mmc_get_ext_csd +EXPORT_SYMBOL_GPL vmlinux 0x9665292c usb_sg_init +EXPORT_SYMBOL_GPL vmlinux 0x9669d399 rio_unregister_driver +EXPORT_SYMBOL_GPL vmlinux 0x96708f8f bpfilter_ops +EXPORT_SYMBOL_GPL vmlinux 0x96748b69 ata_host_suspend +EXPORT_SYMBOL_GPL vmlinux 0x9677b03c component_bind_all +EXPORT_SYMBOL_GPL vmlinux 0x967cc598 fat_build_inode +EXPORT_SYMBOL_GPL vmlinux 0x968f9a23 efivar_entry_iter_begin +EXPORT_SYMBOL_GPL vmlinux 0x96d445a7 clk_mux_ops +EXPORT_SYMBOL_GPL vmlinux 0x96e0f7d3 extcon_get_state +EXPORT_SYMBOL_GPL vmlinux 0x96f15f3d xhci_resume +EXPORT_SYMBOL_GPL vmlinux 0x96faf89d adp5520_register_notifier +EXPORT_SYMBOL_GPL vmlinux 0x97055c53 genphy_c45_check_and_restart_aneg +EXPORT_SYMBOL_GPL vmlinux 0x9714e0bb ktime_get_raw +EXPORT_SYMBOL_GPL vmlinux 0x971e887c irq_domain_set_hwirq_and_chip +EXPORT_SYMBOL_GPL vmlinux 0x97273218 devm_regulator_bulk_unregister_supply_alias +EXPORT_SYMBOL_GPL vmlinux 0x9732ca7f inode_dax +EXPORT_SYMBOL_GPL vmlinux 0x973d4e0d devm_namespace_disable +EXPORT_SYMBOL_GPL vmlinux 0x973fa2f0 pci_reset_function_locked +EXPORT_SYMBOL_GPL vmlinux 0x9746cd58 serial8250_get_port +EXPORT_SYMBOL_GPL vmlinux 0x9748ee7a usb_block_urb +EXPORT_SYMBOL_GPL vmlinux 0x975519c1 asymmetric_key_id_same +EXPORT_SYMBOL_GPL vmlinux 0x9756f716 da9055_regmap_config +EXPORT_SYMBOL_GPL vmlinux 0x97590184 kvm_get_running_vcpu +EXPORT_SYMBOL_GPL vmlinux 0x97623558 xas_create_range +EXPORT_SYMBOL_GPL vmlinux 0x97630ce1 tc3589x_block_read +EXPORT_SYMBOL_GPL vmlinux 0x97695dbf efivar_entry_set +EXPORT_SYMBOL_GPL vmlinux 0x977be5c7 klist_iter_init_node +EXPORT_SYMBOL_GPL vmlinux 0x97951501 sata_pmp_qc_defer_cmd_switch +EXPORT_SYMBOL_GPL vmlinux 0x979d5ab6 kobject_move +EXPORT_SYMBOL_GPL vmlinux 0x97a0461e device_get_next_child_node +EXPORT_SYMBOL_GPL vmlinux 0x97a6ca25 dev_pm_qos_remove_request +EXPORT_SYMBOL_GPL vmlinux 0x97ab7452 devm_memremap_pages +EXPORT_SYMBOL_GPL vmlinux 0x97abb826 clk_regmap_gate_ops +EXPORT_SYMBOL_GPL vmlinux 0x97b7311f __skb_get_hash_symmetric +EXPORT_SYMBOL_GPL vmlinux 0x97b87697 access_process_vm +EXPORT_SYMBOL_GPL vmlinux 0x97c93791 wm8350_read_auxadc +EXPORT_SYMBOL_GPL vmlinux 0x97de2b83 debug_locks_silent +EXPORT_SYMBOL_GPL vmlinux 0x97e50295 dev_pm_genpd_set_performance_state +EXPORT_SYMBOL_GPL vmlinux 0x97e69826 ahci_handle_port_intr +EXPORT_SYMBOL_GPL vmlinux 0x97e7f902 trace_vbprintk +EXPORT_SYMBOL_GPL vmlinux 0x97ec40ea crypto_spawn_tfm2 +EXPORT_SYMBOL_GPL vmlinux 0x9802489b wm5110_spi_regmap +EXPORT_SYMBOL_GPL vmlinux 0x980c7b23 sdio_retune_hold_now +EXPORT_SYMBOL_GPL vmlinux 0x9813bd06 __module_text_address +EXPORT_SYMBOL_GPL vmlinux 0x981d1c5f acpi_create_platform_device +EXPORT_SYMBOL_GPL vmlinux 0x98210924 devlink_region_snapshot_id_put +EXPORT_SYMBOL_GPL vmlinux 0x9822b0ed sata_pmp_port_ops +EXPORT_SYMBOL_GPL vmlinux 0x9833bc0c hvc_kick +EXPORT_SYMBOL_GPL vmlinux 0x98394c12 wakeup_source_remove +EXPORT_SYMBOL_GPL vmlinux 0x98420f95 pci_epc_set_msi +EXPORT_SYMBOL_GPL vmlinux 0x98503a63 mpi_alloc +EXPORT_SYMBOL_GPL vmlinux 0x985453e1 lease_unregister_notifier +EXPORT_SYMBOL_GPL vmlinux 0x9855923a clk_hw_is_prepared +EXPORT_SYMBOL_GPL vmlinux 0x98708ba0 power_supply_external_power_changed +EXPORT_SYMBOL_GPL vmlinux 0x987520e2 usb_find_common_endpoints_reverse +EXPORT_SYMBOL_GPL vmlinux 0x9879932b crypto_register_notifier +EXPORT_SYMBOL_GPL vmlinux 0x9880b35f do_take_over_console +EXPORT_SYMBOL_GPL vmlinux 0x989074ff kmsg_dump_reason_str +EXPORT_SYMBOL_GPL vmlinux 0x98ee62b2 ring_buffer_record_disable_cpu +EXPORT_SYMBOL_GPL vmlinux 0x98fa1e20 dm_get_reserved_rq_based_ios +EXPORT_SYMBOL_GPL vmlinux 0x98ff5535 pinctrl_count_index_with_args +EXPORT_SYMBOL_GPL vmlinux 0x990e6039 usb_hub_find_child +EXPORT_SYMBOL_GPL vmlinux 0x99165223 tcp_register_congestion_control +EXPORT_SYMBOL_GPL vmlinux 0x993ae56e device_connection_find_match +EXPORT_SYMBOL_GPL vmlinux 0x993e6a87 rio_release_dma +EXPORT_SYMBOL_GPL vmlinux 0x994ff394 dax_iomap_fault +EXPORT_SYMBOL_GPL vmlinux 0x995d1071 prof_on +EXPORT_SYMBOL_GPL vmlinux 0x996a47e7 md_bitmap_load +EXPORT_SYMBOL_GPL vmlinux 0x99750b35 of_alias_get_id +EXPORT_SYMBOL_GPL vmlinux 0x998d79d6 x509_decode_time +EXPORT_SYMBOL_GPL vmlinux 0x99968d1d ehci_setup +EXPORT_SYMBOL_GPL vmlinux 0x999a2730 attribute_container_classdev_to_container +EXPORT_SYMBOL_GPL vmlinux 0x99afa6b0 rockchip_pcie_deinit_phys +EXPORT_SYMBOL_GPL vmlinux 0x99d69165 pci_sriov_set_totalvfs +EXPORT_SYMBOL_GPL vmlinux 0x99f018c4 nvmem_cell_read +EXPORT_SYMBOL_GPL vmlinux 0x99f2d00a sysfs_emit_at +EXPORT_SYMBOL_GPL vmlinux 0x9a0a6ff7 ata_sff_data_xfer32 +EXPORT_SYMBOL_GPL vmlinux 0x9a11a0fc crypto_attr_alg_name +EXPORT_SYMBOL_GPL vmlinux 0x9a164792 sk_psock_msg_verdict +EXPORT_SYMBOL_GPL vmlinux 0x9a2b3325 irq_domain_reset_irq_data +EXPORT_SYMBOL_GPL vmlinux 0x9a5145ae hisi_uncore_pmu_event_init +EXPORT_SYMBOL_GPL vmlinux 0x9a55e1de of_get_pci_domain_nr +EXPORT_SYMBOL_GPL vmlinux 0x9a6e5d0e shash_ahash_update +EXPORT_SYMBOL_GPL vmlinux 0x9a841fcd pci_intx +EXPORT_SYMBOL_GPL vmlinux 0x9a9074a9 metadata_dst_free_percpu +EXPORT_SYMBOL_GPL vmlinux 0x9aa3425a blk_mq_virtio_map_queues +EXPORT_SYMBOL_GPL vmlinux 0x9ac11b74 suspend_set_ops +EXPORT_SYMBOL_GPL vmlinux 0x9ae4191f sbitmap_queue_init_node +EXPORT_SYMBOL_GPL vmlinux 0x9aeacb87 ring_buffer_iter_empty +EXPORT_SYMBOL_GPL vmlinux 0x9af1948e __kernel_write +EXPORT_SYMBOL_GPL vmlinux 0x9b18c56f ata_port_schedule_eh +EXPORT_SYMBOL_GPL vmlinux 0x9b1cc1bb devlink_dpipe_table_unregister +EXPORT_SYMBOL_GPL vmlinux 0x9b1ef0a9 crypto_register_aead +EXPORT_SYMBOL_GPL vmlinux 0x9b39a856 ata_pci_sff_prepare_host +EXPORT_SYMBOL_GPL vmlinux 0x9b4b60fe devfreq_event_add_edev +EXPORT_SYMBOL_GPL vmlinux 0x9b555c8c pm_suspend_default_s2idle +EXPORT_SYMBOL_GPL vmlinux 0x9b6203e5 acpiphp_unregister_attention +EXPORT_SYMBOL_GPL vmlinux 0x9b6ec967 ring_buffer_size +EXPORT_SYMBOL_GPL vmlinux 0x9b7340d0 pm_genpd_remove_subdomain +EXPORT_SYMBOL_GPL vmlinux 0x9b896724 devlink_param_value_str_fill +EXPORT_SYMBOL_GPL vmlinux 0x9b8de032 xdp_rxq_info_reg +EXPORT_SYMBOL_GPL vmlinux 0x9b9071cb get_old_itimerspec32 +EXPORT_SYMBOL_GPL vmlinux 0x9b92d16e pinctrl_gpio_set_config +EXPORT_SYMBOL_GPL vmlinux 0x9b993fcf gpiod_export_link +EXPORT_SYMBOL_GPL vmlinux 0x9b9cabc7 dev_pm_opp_find_freq_ceil_by_volt +EXPORT_SYMBOL_GPL vmlinux 0x9b9df28f dev_pm_domain_attach +EXPORT_SYMBOL_GPL vmlinux 0x9ba2bb2b gpio_request_array +EXPORT_SYMBOL_GPL vmlinux 0x9ba55b20 __inode_attach_wb +EXPORT_SYMBOL_GPL vmlinux 0x9ba5fcdf ata_link_offline +EXPORT_SYMBOL_GPL vmlinux 0x9bac3927 bsg_job_put +EXPORT_SYMBOL_GPL vmlinux 0x9bc77923 __tracepoint_neigh_update +EXPORT_SYMBOL_GPL vmlinux 0x9bd9605a scsi_target_unblock +EXPORT_SYMBOL_GPL vmlinux 0x9be64202 usb_remove_hcd +EXPORT_SYMBOL_GPL vmlinux 0x9bece81b mpi_cmp_ui +EXPORT_SYMBOL_GPL vmlinux 0x9bfc7968 devlink_port_param_driverinit_value_get +EXPORT_SYMBOL_GPL vmlinux 0x9c0d7777 kobject_create_and_add +EXPORT_SYMBOL_GPL vmlinux 0x9c1c2a04 of_irq_get_byname +EXPORT_SYMBOL_GPL vmlinux 0x9c2cb85b proc_create_net_single +EXPORT_SYMBOL_GPL vmlinux 0x9c3db98b relay_switch_subbuf +EXPORT_SYMBOL_GPL vmlinux 0x9c45f2d5 devm_regulator_bulk_register_supply_alias +EXPORT_SYMBOL_GPL vmlinux 0x9c482672 devm_thermal_zone_of_sensor_unregister +EXPORT_SYMBOL_GPL vmlinux 0x9c6febfc add_uevent_var +EXPORT_SYMBOL_GPL vmlinux 0x9c7054c4 ehci_handshake +EXPORT_SYMBOL_GPL vmlinux 0x9c76ff8d trace_array_destroy +EXPORT_SYMBOL_GPL vmlinux 0x9c7864f8 regulator_bulk_get +EXPORT_SYMBOL_GPL vmlinux 0x9c7af8b9 rdev_get_dev +EXPORT_SYMBOL_GPL vmlinux 0x9c803020 usb_phy_roothub_power_on +EXPORT_SYMBOL_GPL vmlinux 0x9c8d1730 xen_remap_vma_range +EXPORT_SYMBOL_GPL vmlinux 0x9c8e54a9 wbc_attach_and_unlock_inode +EXPORT_SYMBOL_GPL vmlinux 0x9c900c20 __devm_create_dev_dax +EXPORT_SYMBOL_GPL vmlinux 0x9c937b4b thermal_zone_get_slope +EXPORT_SYMBOL_GPL vmlinux 0x9ca320bc dma_buf_detach +EXPORT_SYMBOL_GPL vmlinux 0x9caab9ef acpi_gpio_get_irq_resource +EXPORT_SYMBOL_GPL vmlinux 0x9cb1b961 fat_alloc_new_dir +EXPORT_SYMBOL_GPL vmlinux 0x9cc4f70a register_pm_notifier +EXPORT_SYMBOL_GPL vmlinux 0x9cdc73d0 regulator_get_linear_step +EXPORT_SYMBOL_GPL vmlinux 0x9ce3024b power_supply_register +EXPORT_SYMBOL_GPL vmlinux 0x9cf37c44 __iowrite32_copy +EXPORT_SYMBOL_GPL vmlinux 0x9cf44173 sdio_align_size +EXPORT_SYMBOL_GPL vmlinux 0x9d077f68 ata_bmdma_qc_prep +EXPORT_SYMBOL_GPL vmlinux 0x9d09e8ae ring_buffer_event_data +EXPORT_SYMBOL_GPL vmlinux 0x9d0c1d56 lochnagar_update_config +EXPORT_SYMBOL_GPL vmlinux 0x9d117393 uhci_reset_hc +EXPORT_SYMBOL_GPL vmlinux 0x9d168757 mmu_interval_notifier_remove +EXPORT_SYMBOL_GPL vmlinux 0x9d2e6af6 devm_platform_ioremap_resource_byname +EXPORT_SYMBOL_GPL vmlinux 0x9d3847b0 of_reserved_mem_device_release +EXPORT_SYMBOL_GPL vmlinux 0x9d42acaf xenbus_dev_is_online +EXPORT_SYMBOL_GPL vmlinux 0x9d493a2a elv_rqhash_add +EXPORT_SYMBOL_GPL vmlinux 0x9d4ae2c9 powercap_register_zone +EXPORT_SYMBOL_GPL vmlinux 0x9d560838 ip_route_output_tunnel +EXPORT_SYMBOL_GPL vmlinux 0x9d56cb3a skb_segment +EXPORT_SYMBOL_GPL vmlinux 0x9d5893dc skb_gso_validate_network_len +EXPORT_SYMBOL_GPL vmlinux 0x9d593c1b pm_generic_freeze_noirq +EXPORT_SYMBOL_GPL vmlinux 0x9d5e387c regmap_register_patch +EXPORT_SYMBOL_GPL vmlinux 0x9d73f87a nd_blk_region_set_provider_data +EXPORT_SYMBOL_GPL vmlinux 0x9d81ce6d devm_i2c_new_dummy_device +EXPORT_SYMBOL_GPL vmlinux 0x9d83264f acomp_request_alloc +EXPORT_SYMBOL_GPL vmlinux 0x9d8dc793 sk_clone_lock +EXPORT_SYMBOL_GPL vmlinux 0x9d9422f7 of_nvmem_device_get +EXPORT_SYMBOL_GPL vmlinux 0x9da942c8 dev_pm_opp_detach_genpd +EXPORT_SYMBOL_GPL vmlinux 0x9db5476c devm_ti_sci_get_by_phandle +EXPORT_SYMBOL_GPL vmlinux 0x9db79967 meson_clk_pll_ro_ops +EXPORT_SYMBOL_GPL vmlinux 0x9dc676f3 mdiobus_modify +EXPORT_SYMBOL_GPL vmlinux 0x9dcb21db rtc_nvmem_register +EXPORT_SYMBOL_GPL vmlinux 0x9de91cda i2c_new_ancillary_device +EXPORT_SYMBOL_GPL vmlinux 0x9e005e6f cppc_get_perf_caps +EXPORT_SYMBOL_GPL vmlinux 0x9e05e48b vring_del_virtqueue +EXPORT_SYMBOL_GPL vmlinux 0x9e08d700 __tracepoint_xdp_bulk_tx +EXPORT_SYMBOL_GPL vmlinux 0x9e2dc00c usb_enable_lpm +EXPORT_SYMBOL_GPL vmlinux 0x9e2f842f acomp_request_free +EXPORT_SYMBOL_GPL vmlinux 0x9e35bb92 acpi_subsys_runtime_resume +EXPORT_SYMBOL_GPL vmlinux 0x9e472f5f snmp_fold_field +EXPORT_SYMBOL_GPL vmlinux 0x9e4ec7cb cpufreq_freq_transition_begin +EXPORT_SYMBOL_GPL vmlinux 0x9e59954b acpi_cppc_processor_probe +EXPORT_SYMBOL_GPL vmlinux 0x9e5a9b40 regulator_set_voltage_sel_regmap +EXPORT_SYMBOL_GPL vmlinux 0x9e5b85aa serdev_device_write_flush +EXPORT_SYMBOL_GPL vmlinux 0x9e90350b ata_sff_wait_after_reset +EXPORT_SYMBOL_GPL vmlinux 0x9e9421d6 sec_irq_init +EXPORT_SYMBOL_GPL vmlinux 0x9eba22a3 crypto_mod_put +EXPORT_SYMBOL_GPL vmlinux 0x9ebb89c7 fat_update_time +EXPORT_SYMBOL_GPL vmlinux 0x9ec4dce3 dev_pm_opp_get_max_transition_latency +EXPORT_SYMBOL_GPL vmlinux 0x9ec68d98 debugfs_create_u64 +EXPORT_SYMBOL_GPL vmlinux 0x9ecc9bb8 devm_regulator_bulk_get +EXPORT_SYMBOL_GPL vmlinux 0x9ed554b3 unregister_keyboard_notifier +EXPORT_SYMBOL_GPL vmlinux 0x9edb783a inet_ehash_nolisten +EXPORT_SYMBOL_GPL vmlinux 0x9ef873f7 iommu_sva_get_pasid +EXPORT_SYMBOL_GPL vmlinux 0x9efbb1f2 find_vpid +EXPORT_SYMBOL_GPL vmlinux 0x9f0197d1 thermal_zone_get_offset +EXPORT_SYMBOL_GPL vmlinux 0x9f0805f2 ncsi_start_dev +EXPORT_SYMBOL_GPL vmlinux 0x9f11b1db devm_rtc_device_register +EXPORT_SYMBOL_GPL vmlinux 0x9f195db7 device_link_remove +EXPORT_SYMBOL_GPL vmlinux 0x9f269768 acpi_unbind_one +EXPORT_SYMBOL_GPL vmlinux 0x9f32f336 pinctrl_add_gpio_ranges +EXPORT_SYMBOL_GPL vmlinux 0x9f36457e __tracepoint_fdb_delete +EXPORT_SYMBOL_GPL vmlinux 0x9f4c6713 __sock_recv_timestamp +EXPORT_SYMBOL_GPL vmlinux 0x9f517986 HYPERVISOR_hvm_op +EXPORT_SYMBOL_GPL vmlinux 0x9f5455fc crypto_unregister_shash +EXPORT_SYMBOL_GPL vmlinux 0x9f5fe70c ip6_update_pmtu +EXPORT_SYMBOL_GPL vmlinux 0x9f5ff38a acpi_dma_configure +EXPORT_SYMBOL_GPL vmlinux 0x9f6d78fc kvm_get_pfn +EXPORT_SYMBOL_GPL vmlinux 0x9f6e983e blk_steal_bios +EXPORT_SYMBOL_GPL vmlinux 0x9f75bcbd power_supply_powers +EXPORT_SYMBOL_GPL vmlinux 0x9f8d5973 i2c_acpi_find_adapter_by_handle +EXPORT_SYMBOL_GPL vmlinux 0x9f982cdf kobj_sysfs_ops +EXPORT_SYMBOL_GPL vmlinux 0x9fba7934 device_set_wakeup_capable +EXPORT_SYMBOL_GPL vmlinux 0x9fbfebab erst_write +EXPORT_SYMBOL_GPL vmlinux 0x9fce80db fb_notifier_call_chain +EXPORT_SYMBOL_GPL vmlinux 0x9fd2e423 __clk_mux_determine_rate +EXPORT_SYMBOL_GPL vmlinux 0x9fd74ee5 hwmon_device_unregister +EXPORT_SYMBOL_GPL vmlinux 0x9fe5c828 component_master_add_with_match +EXPORT_SYMBOL_GPL vmlinux 0x9fe899b7 get_cpu_idle_time +EXPORT_SYMBOL_GPL vmlinux 0x9fe939e1 mpi_powm +EXPORT_SYMBOL_GPL vmlinux 0xa014c601 fsnotify_put_mark +EXPORT_SYMBOL_GPL vmlinux 0xa0179533 bus_register_notifier +EXPORT_SYMBOL_GPL vmlinux 0xa01a8d9b nd_cmd_bus_desc +EXPORT_SYMBOL_GPL vmlinux 0xa0329844 mmu_interval_read_begin +EXPORT_SYMBOL_GPL vmlinux 0xa0450444 fsl_mc_object_allocate +EXPORT_SYMBOL_GPL vmlinux 0xa04f945a cpus_read_lock +EXPORT_SYMBOL_GPL vmlinux 0xa04fcdb8 ata_sas_tport_add +EXPORT_SYMBOL_GPL vmlinux 0xa05b4fea ip6_dst_lookup_tunnel +EXPORT_SYMBOL_GPL vmlinux 0xa065a77b devlink_dpipe_headers_unregister +EXPORT_SYMBOL_GPL vmlinux 0xa065cc19 spi_bus_lock +EXPORT_SYMBOL_GPL vmlinux 0xa06920d0 device_show_ulong +EXPORT_SYMBOL_GPL vmlinux 0xa06c216f disk_map_sector_rcu +EXPORT_SYMBOL_GPL vmlinux 0xa086558d iomap_dio_rw +EXPORT_SYMBOL_GPL vmlinux 0xa08e2be4 save_stack_trace_tsk +EXPORT_SYMBOL_GPL vmlinux 0xa0a0a837 synth_event_add_val +EXPORT_SYMBOL_GPL vmlinux 0xa0a4bd1b mtk_pinconf_bias_get_rev1 +EXPORT_SYMBOL_GPL vmlinux 0xa0c0a5ee __clocksource_update_freq_scale +EXPORT_SYMBOL_GPL vmlinux 0xa0c6befa hrtimer_cancel +EXPORT_SYMBOL_GPL vmlinux 0xa0d3456d nr_swap_pages +EXPORT_SYMBOL_GPL vmlinux 0xa0dc1312 skb_cow_data +EXPORT_SYMBOL_GPL vmlinux 0xa0f2bf9c fib_info_nh_uses_dev +EXPORT_SYMBOL_GPL vmlinux 0xa106f9df switchdev_handle_port_attr_set +EXPORT_SYMBOL_GPL vmlinux 0xa11216be xen_store_domain_type +EXPORT_SYMBOL_GPL vmlinux 0xa1189db4 iomap_readpage +EXPORT_SYMBOL_GPL vmlinux 0xa12008a3 __sync_filesystem +EXPORT_SYMBOL_GPL vmlinux 0xa128e296 of_pm_clk_add_clk +EXPORT_SYMBOL_GPL vmlinux 0xa156a1f2 erst_get_record_id_end +EXPORT_SYMBOL_GPL vmlinux 0xa15b4e98 fsnotify_put_group +EXPORT_SYMBOL_GPL vmlinux 0xa1691b63 xas_find_marked +EXPORT_SYMBOL_GPL vmlinux 0xa16ae682 tpm_tis_remove +EXPORT_SYMBOL_GPL vmlinux 0xa1782fac spi_finalize_current_transfer +EXPORT_SYMBOL_GPL vmlinux 0xa18467b2 spi_unregister_controller +EXPORT_SYMBOL_GPL vmlinux 0xa1874a23 __inet_lookup_listener +EXPORT_SYMBOL_GPL vmlinux 0xa1a02920 devlink_resources_unregister +EXPORT_SYMBOL_GPL vmlinux 0xa1c4231f kvm_set_pfn_dirty +EXPORT_SYMBOL_GPL vmlinux 0xa1c76bf1 devlink_resource_occ_get_register +EXPORT_SYMBOL_GPL vmlinux 0xa1c84e7c tpm_pcr_extend +EXPORT_SYMBOL_GPL vmlinux 0xa1d8004a videomode_from_timing +EXPORT_SYMBOL_GPL vmlinux 0xa1dac118 security_path_chmod +EXPORT_SYMBOL_GPL vmlinux 0xa1deece5 efivar_entry_delete +EXPORT_SYMBOL_GPL vmlinux 0xa1e125c2 list_lru_walk_one +EXPORT_SYMBOL_GPL vmlinux 0xa1e94069 dev_pm_clear_wake_irq +EXPORT_SYMBOL_GPL vmlinux 0xa1ed9c8b add_hwgenerator_randomness +EXPORT_SYMBOL_GPL vmlinux 0xa20d01ba __trace_bprintk +EXPORT_SYMBOL_GPL vmlinux 0xa2165500 bpf_trace_run12 +EXPORT_SYMBOL_GPL vmlinux 0xa226227f nf_ip_route +EXPORT_SYMBOL_GPL vmlinux 0xa22d9548 trace_seq_to_user +EXPORT_SYMBOL_GPL vmlinux 0xa2570687 ata_port_pbar_desc +EXPORT_SYMBOL_GPL vmlinux 0xa26229e1 __percpu_down_read +EXPORT_SYMBOL_GPL vmlinux 0xa2641a60 regulator_bulk_free +EXPORT_SYMBOL_GPL vmlinux 0xa2685ce5 devm_spi_mem_dirmap_destroy +EXPORT_SYMBOL_GPL vmlinux 0xa26d9b4f workqueue_congested +EXPORT_SYMBOL_GPL vmlinux 0xa2705437 ata_sff_check_status +EXPORT_SYMBOL_GPL vmlinux 0xa27c5836 fwnode_property_read_string_array +EXPORT_SYMBOL_GPL vmlinux 0xa2814455 of_dma_router_register +EXPORT_SYMBOL_GPL vmlinux 0xa28a1e74 lwtunnel_input +EXPORT_SYMBOL_GPL vmlinux 0xa2957931 ata_sas_port_resume +EXPORT_SYMBOL_GPL vmlinux 0xa2af54b3 irq_from_evtchn +EXPORT_SYMBOL_GPL vmlinux 0xa2c28c5e crypto_aead_setkey +EXPORT_SYMBOL_GPL vmlinux 0xa2cba0db tcp_ca_openreq_child +EXPORT_SYMBOL_GPL vmlinux 0xa2e1b3ef trace_printk_init_buffers +EXPORT_SYMBOL_GPL vmlinux 0xa2e79065 spi_mem_adjust_op_size +EXPORT_SYMBOL_GPL vmlinux 0xa2eaa39d mddev_init_writes_pending +EXPORT_SYMBOL_GPL vmlinux 0xa2f812f9 phy_10gbit_fec_features_array +EXPORT_SYMBOL_GPL vmlinux 0xa31d0fb2 netlink_remove_tap +EXPORT_SYMBOL_GPL vmlinux 0xa32edbf2 ahci_print_info +EXPORT_SYMBOL_GPL vmlinux 0xa32fc8c7 devm_clk_unregister +EXPORT_SYMBOL_GPL vmlinux 0xa33105ea cpufreq_dbs_governor_init +EXPORT_SYMBOL_GPL vmlinux 0xa345c50b bpf_trace_run9 +EXPORT_SYMBOL_GPL vmlinux 0xa34f9a87 sock_diag_check_cookie +EXPORT_SYMBOL_GPL vmlinux 0xa3522517 iommu_map_atomic +EXPORT_SYMBOL_GPL vmlinux 0xa3659b5f __tracepoint_devlink_hwerr +EXPORT_SYMBOL_GPL vmlinux 0xa36634c2 ip6_redirect +EXPORT_SYMBOL_GPL vmlinux 0xa36f50fb is_binary_blacklisted +EXPORT_SYMBOL_GPL vmlinux 0xa37ef32e usb_hcd_start_port_resume +EXPORT_SYMBOL_GPL vmlinux 0xa37fa1f2 acpi_device_modalias +EXPORT_SYMBOL_GPL vmlinux 0xa3808ba7 devprop_gpiochip_set_names +EXPORT_SYMBOL_GPL vmlinux 0xa38602cd drain_workqueue +EXPORT_SYMBOL_GPL vmlinux 0xa389a49a profile_event_register +EXPORT_SYMBOL_GPL vmlinux 0xa38a9f71 get_itimerspec64 +EXPORT_SYMBOL_GPL vmlinux 0xa38c1436 cpu_bit_bitmap +EXPORT_SYMBOL_GPL vmlinux 0xa3953db2 meson_clk_cpu_dyndiv_ops +EXPORT_SYMBOL_GPL vmlinux 0xa3a04602 btree_geo64 +EXPORT_SYMBOL_GPL vmlinux 0xa3a256f9 cros_ec_get_sensor_count +EXPORT_SYMBOL_GPL vmlinux 0xa3ae711b sdio_signal_irq +EXPORT_SYMBOL_GPL vmlinux 0xa3b4f725 device_set_of_node_from_dev +EXPORT_SYMBOL_GPL vmlinux 0xa3b958ce reset_hung_task_detector +EXPORT_SYMBOL_GPL vmlinux 0xa3d19ffc sdio_writeb_readb +EXPORT_SYMBOL_GPL vmlinux 0xa3d767af rt_mutex_unlock +EXPORT_SYMBOL_GPL vmlinux 0xa3dcb681 zynqmp_pm_fpga_load +EXPORT_SYMBOL_GPL vmlinux 0xa3e01ce5 do_unbind_con_driver +EXPORT_SYMBOL_GPL vmlinux 0xa3ece414 freezer_cgrp_subsys_enabled_key +EXPORT_SYMBOL_GPL vmlinux 0xa3ed3865 virtqueue_kick_prepare +EXPORT_SYMBOL_GPL vmlinux 0xa3f12f69 __crypto_xor +EXPORT_SYMBOL_GPL vmlinux 0xa3f25bfd regmap_noinc_read +EXPORT_SYMBOL_GPL vmlinux 0xa4031b7f sfp_parse_port +EXPORT_SYMBOL_GPL vmlinux 0xa40c8710 unregister_pernet_subsys +EXPORT_SYMBOL_GPL vmlinux 0xa40fa17f gpiod_set_debounce +EXPORT_SYMBOL_GPL vmlinux 0xa410a295 devlink_region_destroy +EXPORT_SYMBOL_GPL vmlinux 0xa41a23bc tpm_tis_core_init +EXPORT_SYMBOL_GPL vmlinux 0xa42590a5 led_trigger_rename_static +EXPORT_SYMBOL_GPL vmlinux 0xa4267ac7 xenbus_dev_changed +EXPORT_SYMBOL_GPL vmlinux 0xa42aa552 key_type_trusted +EXPORT_SYMBOL_GPL vmlinux 0xa437231d ahci_platform_init_host +EXPORT_SYMBOL_GPL vmlinux 0xa4393f41 usb_phy_roothub_resume +EXPORT_SYMBOL_GPL vmlinux 0xa4475f09 devlink_port_params_register +EXPORT_SYMBOL_GPL vmlinux 0xa44a1307 interval_tree_iter_first +EXPORT_SYMBOL_GPL vmlinux 0xa452f2a4 xen_pirq_from_irq +EXPORT_SYMBOL_GPL vmlinux 0xa45c7b90 stack_trace_print +EXPORT_SYMBOL_GPL vmlinux 0xa45d44fc zynqmp_pm_get_pll_frac_data +EXPORT_SYMBOL_GPL vmlinux 0xa46b8f9c hisi_event_sysfs_show +EXPORT_SYMBOL_GPL vmlinux 0xa471982d dm_table_set_type +EXPORT_SYMBOL_GPL vmlinux 0xa48196c8 kdb_poll_idx +EXPORT_SYMBOL_GPL vmlinux 0xa485ff04 iptunnel_xmit +EXPORT_SYMBOL_GPL vmlinux 0xa4ab7c1c ring_buffer_overruns +EXPORT_SYMBOL_GPL vmlinux 0xa4b07fe7 ring_buffer_change_overwrite +EXPORT_SYMBOL_GPL vmlinux 0xa4b4dfe5 xfrm_output +EXPORT_SYMBOL_GPL vmlinux 0xa4dfae60 crypto_ahash_digest +EXPORT_SYMBOL_GPL vmlinux 0xa4ec6c01 pinctrl_find_gpio_range_from_pin +EXPORT_SYMBOL_GPL vmlinux 0xa4ed0266 platform_get_irq_byname +EXPORT_SYMBOL_GPL vmlinux 0xa4f2a2ed acpi_irq_get +EXPORT_SYMBOL_GPL vmlinux 0xa4f55cd8 gpiochip_irqchip_add_domain +EXPORT_SYMBOL_GPL vmlinux 0xa50335f4 sbitmap_finish_wait +EXPORT_SYMBOL_GPL vmlinux 0xa50b7ff4 _proc_mkdir +EXPORT_SYMBOL_GPL vmlinux 0xa511800b each_symbol_section +EXPORT_SYMBOL_GPL vmlinux 0xa5163de7 arizona_pm_ops +EXPORT_SYMBOL_GPL vmlinux 0xa531471e clk_save_context +EXPORT_SYMBOL_GPL vmlinux 0xa537a684 iommu_detach_group +EXPORT_SYMBOL_GPL vmlinux 0xa55823cd dma_get_any_slave_channel +EXPORT_SYMBOL_GPL vmlinux 0xa55e9c82 dev_pm_qos_remove_notifier +EXPORT_SYMBOL_GPL vmlinux 0xa569dcb3 of_clk_get_parent_count +EXPORT_SYMBOL_GPL vmlinux 0xa5752a33 usb_register_driver +EXPORT_SYMBOL_GPL vmlinux 0xa598d4b2 crypto_alloc_aead +EXPORT_SYMBOL_GPL vmlinux 0xa59a6c84 scsi_mode_select +EXPORT_SYMBOL_GPL vmlinux 0xa5bda8a1 efi_capsule_supported +EXPORT_SYMBOL_GPL vmlinux 0xa5cf747b device_for_each_child_reverse +EXPORT_SYMBOL_GPL vmlinux 0xa5d7c388 pstore_type_to_name +EXPORT_SYMBOL_GPL vmlinux 0xa5e59ca4 fscrypt_set_test_dummy_encryption +EXPORT_SYMBOL_GPL vmlinux 0xa5efbf4c async_synchronize_full +EXPORT_SYMBOL_GPL vmlinux 0xa5f65a25 iomap_dio_iopoll +EXPORT_SYMBOL_GPL vmlinux 0xa6060983 scmi_driver_unregister +EXPORT_SYMBOL_GPL vmlinux 0xa619667c dprc_get_obj +EXPORT_SYMBOL_GPL vmlinux 0xa61cf35a devlink_health_reporter_create +EXPORT_SYMBOL_GPL vmlinux 0xa61eb5fd usb_put_dev +EXPORT_SYMBOL_GPL vmlinux 0xa62892c6 efivar_sysfs_list +EXPORT_SYMBOL_GPL vmlinux 0xa63e41d2 tty_wakeup +EXPORT_SYMBOL_GPL vmlinux 0xa645ca5b devres_for_each_res +EXPORT_SYMBOL_GPL vmlinux 0xa64f8055 tty_set_termios +EXPORT_SYMBOL_GPL vmlinux 0xa6532a59 regulator_get_exclusive +EXPORT_SYMBOL_GPL vmlinux 0xa65f2d35 pci_user_read_config_word +EXPORT_SYMBOL_GPL vmlinux 0xa6691385 l3mdev_master_upper_ifindex_by_index_rcu +EXPORT_SYMBOL_GPL vmlinux 0xa67c1be5 tty_save_termios +EXPORT_SYMBOL_GPL vmlinux 0xa67ca078 crypto_unregister_kpp +EXPORT_SYMBOL_GPL vmlinux 0xa6824f3f __tracepoint_br_fdb_external_learn_add +EXPORT_SYMBOL_GPL vmlinux 0xa688a07a mark_page_dirty +EXPORT_SYMBOL_GPL vmlinux 0xa69bcd0a find_module +EXPORT_SYMBOL_GPL vmlinux 0xa6b06f65 ata_sff_queue_work +EXPORT_SYMBOL_GPL vmlinux 0xa6b21ef2 dpm_suspend_end +EXPORT_SYMBOL_GPL vmlinux 0xa6b71e07 pm_genpd_syscore_poweroff +EXPORT_SYMBOL_GPL vmlinux 0xa6d80188 pci_reset_function +EXPORT_SYMBOL_GPL vmlinux 0xa6e1a69d kick_all_cpus_sync +EXPORT_SYMBOL_GPL vmlinux 0xa6e57c14 usb_enable_autosuspend +EXPORT_SYMBOL_GPL vmlinux 0xa6e8312a regmap_bulk_read +EXPORT_SYMBOL_GPL vmlinux 0xa709b201 devfreq_event_enable_edev +EXPORT_SYMBOL_GPL vmlinux 0xa709c835 fib6_info_destroy_rcu +EXPORT_SYMBOL_GPL vmlinux 0xa7113b10 dpcon_set_notification +EXPORT_SYMBOL_GPL vmlinux 0xa718f465 regmap_multi_reg_write_bypassed +EXPORT_SYMBOL_GPL vmlinux 0xa7198523 ulpi_viewport_access_ops +EXPORT_SYMBOL_GPL vmlinux 0xa71c6c77 transport_remove_device +EXPORT_SYMBOL_GPL vmlinux 0xa731f387 nl_table_lock +EXPORT_SYMBOL_GPL vmlinux 0xa7361107 device_show_int +EXPORT_SYMBOL_GPL vmlinux 0xa742e837 fscrypt_file_open +EXPORT_SYMBOL_GPL vmlinux 0xa74a6930 gov_update_cpu_data +EXPORT_SYMBOL_GPL vmlinux 0xa74f8edb devlink_resource_register +EXPORT_SYMBOL_GPL vmlinux 0xa750ecb2 zap_vma_ptes +EXPORT_SYMBOL_GPL vmlinux 0xa75dd2e8 iommu_dev_feature_enabled +EXPORT_SYMBOL_GPL vmlinux 0xa76106c4 of_pci_get_devfn +EXPORT_SYMBOL_GPL vmlinux 0xa77903af device_match_any +EXPORT_SYMBOL_GPL vmlinux 0xa77cf0ac tpm_pcr_read +EXPORT_SYMBOL_GPL vmlinux 0xa7856098 cpu_topology +EXPORT_SYMBOL_GPL vmlinux 0xa7870c7f loop_backing_file +EXPORT_SYMBOL_GPL vmlinux 0xa788700b copy_to_user_nofault +EXPORT_SYMBOL_GPL vmlinux 0xa7a5687e ata_scsi_unlock_native_capacity +EXPORT_SYMBOL_GPL vmlinux 0xa7bbf459 hisi_uncore_pmu_get_event_idx +EXPORT_SYMBOL_GPL vmlinux 0xa7c877b7 ahci_platform_enable_resources +EXPORT_SYMBOL_GPL vmlinux 0xa7d96c8f find_get_pid +EXPORT_SYMBOL_GPL vmlinux 0xa7e457d7 dpbp_get_attributes +EXPORT_SYMBOL_GPL vmlinux 0xa7ed0a3a dma_request_chan +EXPORT_SYMBOL_GPL vmlinux 0xa7f2f195 sched_trace_rd_span +EXPORT_SYMBOL_GPL vmlinux 0xa7fa1d1a gpiod_direction_output +EXPORT_SYMBOL_GPL vmlinux 0xa806d805 devm_spi_mem_dirmap_create +EXPORT_SYMBOL_GPL vmlinux 0xa80789f2 sysfs_create_mount_point +EXPORT_SYMBOL_GPL vmlinux 0xa812f30d path_noexec +EXPORT_SYMBOL_GPL vmlinux 0xa815c838 platform_device_put +EXPORT_SYMBOL_GPL vmlinux 0xa822fa69 gpiochip_set_nested_irqchip +EXPORT_SYMBOL_GPL vmlinux 0xa8232524 regulator_bulk_enable +EXPORT_SYMBOL_GPL vmlinux 0xa827cc11 tcpv6_prot +EXPORT_SYMBOL_GPL vmlinux 0xa82a9849 acpi_device_uevent_modalias +EXPORT_SYMBOL_GPL vmlinux 0xa82d9a1c __spi_register_driver +EXPORT_SYMBOL_GPL vmlinux 0xa833f478 gpiochip_irq_domain_activate +EXPORT_SYMBOL_GPL vmlinux 0xa83dc5d3 mtk_hw_set_value +EXPORT_SYMBOL_GPL vmlinux 0xa851973a raw_notifier_call_chain +EXPORT_SYMBOL_GPL vmlinux 0xa853c5c7 perf_event_update_userpage +EXPORT_SYMBOL_GPL vmlinux 0xa8671f45 power_supply_get_drvdata +EXPORT_SYMBOL_GPL vmlinux 0xa87bb202 spi_get_next_queued_message +EXPORT_SYMBOL_GPL vmlinux 0xa87f21fd relay_file_operations +EXPORT_SYMBOL_GPL vmlinux 0xa8a9d253 stmpe_disable +EXPORT_SYMBOL_GPL vmlinux 0xa8bc1596 led_colors +EXPORT_SYMBOL_GPL vmlinux 0xa8bf7e4d rio_request_outb_dbell +EXPORT_SYMBOL_GPL vmlinux 0xa8c3ebca regulator_list_voltage +EXPORT_SYMBOL_GPL vmlinux 0xa8c8c3e6 arizona_of_get_type +EXPORT_SYMBOL_GPL vmlinux 0xa8cd41d7 usb_hcd_unmap_urb_for_dma +EXPORT_SYMBOL_GPL vmlinux 0xa8e29187 pinconf_generic_dump_config +EXPORT_SYMBOL_GPL vmlinux 0xa8f9d557 sk_msg_clone +EXPORT_SYMBOL_GPL vmlinux 0xa9053ba1 ata_bmdma_setup +EXPORT_SYMBOL_GPL vmlinux 0xa90aac06 irq_setup_generic_chip +EXPORT_SYMBOL_GPL vmlinux 0xa91da2ab wait_on_page_writeback +EXPORT_SYMBOL_GPL vmlinux 0xa922415a pci_cfg_access_trylock +EXPORT_SYMBOL_GPL vmlinux 0xa92f161b fsl_mc_bus_dprtc_type +EXPORT_SYMBOL_GPL vmlinux 0xa9320d27 ktime_get_seconds +EXPORT_SYMBOL_GPL vmlinux 0xa93277bd xfrm_local_error +EXPORT_SYMBOL_GPL vmlinux 0xa936a20d of_phandle_iterator_init +EXPORT_SYMBOL_GPL vmlinux 0xa94986ac rio_mport_initialize +EXPORT_SYMBOL_GPL vmlinux 0xa965a1d3 devlink_port_type_ib_set +EXPORT_SYMBOL_GPL vmlinux 0xa979ec9b find_asymmetric_key +EXPORT_SYMBOL_GPL vmlinux 0xa9934dd2 ip6_route_output_flags_noref +EXPORT_SYMBOL_GPL vmlinux 0xa9974dbf fuse_sync_release +EXPORT_SYMBOL_GPL vmlinux 0xa99ef899 devlink_fmsg_bool_pair_put +EXPORT_SYMBOL_GPL vmlinux 0xa9a7912b dio_end_io +EXPORT_SYMBOL_GPL vmlinux 0xa9a9622e kvm_vcpu_unmap +EXPORT_SYMBOL_GPL vmlinux 0xa9b26754 acpi_bind_one +EXPORT_SYMBOL_GPL vmlinux 0xa9b4287a pm_runtime_no_callbacks +EXPORT_SYMBOL_GPL vmlinux 0xa9bb7142 platform_get_resource +EXPORT_SYMBOL_GPL vmlinux 0xa9bc8b74 module_mutex +EXPORT_SYMBOL_GPL vmlinux 0xa9d07d2c relay_late_setup_files +EXPORT_SYMBOL_GPL vmlinux 0xa9da652a crypto_shash_final +EXPORT_SYMBOL_GPL vmlinux 0xa9e18049 task_handoff_unregister +EXPORT_SYMBOL_GPL vmlinux 0xa9e1d216 fsl8250_handle_irq +EXPORT_SYMBOL_GPL vmlinux 0xa9ecaf38 l3mdev_master_ifindex_rcu +EXPORT_SYMBOL_GPL vmlinux 0xa9ef8548 posix_clock_register +EXPORT_SYMBOL_GPL vmlinux 0xa9f0beea devlink_free +EXPORT_SYMBOL_GPL vmlinux 0xa9f3418b is_software_node +EXPORT_SYMBOL_GPL vmlinux 0xaa04dd3c blk_mq_init_queue_data +EXPORT_SYMBOL_GPL vmlinux 0xaa106118 spi_finalize_current_message +EXPORT_SYMBOL_GPL vmlinux 0xaa13a4c0 sdio_readsb +EXPORT_SYMBOL_GPL vmlinux 0xaa1702c5 handle_simple_irq +EXPORT_SYMBOL_GPL vmlinux 0xaa1968d5 dpbp_enable +EXPORT_SYMBOL_GPL vmlinux 0xaa230f88 perf_unregister_guest_info_callbacks +EXPORT_SYMBOL_GPL vmlinux 0xaa45acfa ata_bmdma_irq_clear +EXPORT_SYMBOL_GPL vmlinux 0xaa6119be crypto_type_has_alg +EXPORT_SYMBOL_GPL vmlinux 0xaa644001 xenbus_register_driver_common +EXPORT_SYMBOL_GPL vmlinux 0xaa6a50f9 __static_key_deferred_flush +EXPORT_SYMBOL_GPL vmlinux 0xaa7a9cca xdp_convert_zc_to_xdp_frame +EXPORT_SYMBOL_GPL vmlinux 0xaa7fb8ec gpiochip_irq_unmap +EXPORT_SYMBOL_GPL vmlinux 0xaa82113f debugfs_create_blob +EXPORT_SYMBOL_GPL vmlinux 0xaa9981b2 devm_gpiod_unhinge +EXPORT_SYMBOL_GPL vmlinux 0xaa9bddd8 ftrace_set_filter +EXPORT_SYMBOL_GPL vmlinux 0xaaa6419b devm_request_free_mem_region +EXPORT_SYMBOL_GPL vmlinux 0xaaa918c9 ftrace_dump +EXPORT_SYMBOL_GPL vmlinux 0xaacab2ff da903x_unregister_notifier +EXPORT_SYMBOL_GPL vmlinux 0xaae42f35 gpiochip_populate_parent_fwspec_fourcell +EXPORT_SYMBOL_GPL vmlinux 0xaaf34ba0 irq_chip_set_type_parent +EXPORT_SYMBOL_GPL vmlinux 0xab00d0e4 tcp_orphan_count +EXPORT_SYMBOL_GPL vmlinux 0xab060841 zynqmp_pm_query_data +EXPORT_SYMBOL_GPL vmlinux 0xab0bc115 devlink_register +EXPORT_SYMBOL_GPL vmlinux 0xab174d69 regulator_set_voltage_rdev +EXPORT_SYMBOL_GPL vmlinux 0xab23f86d regmap_field_alloc +EXPORT_SYMBOL_GPL vmlinux 0xab3132ef usb_deregister_dev +EXPORT_SYMBOL_GPL vmlinux 0xab385011 xdp_return_frame +EXPORT_SYMBOL_GPL vmlinux 0xab4bcee4 call_switchdev_notifiers +EXPORT_SYMBOL_GPL vmlinux 0xab8a54f3 extcon_set_state +EXPORT_SYMBOL_GPL vmlinux 0xab8d5fc7 gpiod_is_active_low +EXPORT_SYMBOL_GPL vmlinux 0xab995e77 sata_set_spd +EXPORT_SYMBOL_GPL vmlinux 0xab9bd884 perf_register_guest_info_callbacks +EXPORT_SYMBOL_GPL vmlinux 0xab9d0073 pci_cfg_access_lock +EXPORT_SYMBOL_GPL vmlinux 0xab9d2b6f nvmem_register +EXPORT_SYMBOL_GPL vmlinux 0xaba5b6e4 ahash_register_instance +EXPORT_SYMBOL_GPL vmlinux 0xabbdbd35 zynqmp_pm_reset_get_status +EXPORT_SYMBOL_GPL vmlinux 0xabc640f3 list_lru_isolate +EXPORT_SYMBOL_GPL vmlinux 0xabc7a893 pci_epc_init_notify +EXPORT_SYMBOL_GPL vmlinux 0xabcf8fd6 create_signature +EXPORT_SYMBOL_GPL vmlinux 0xabd45848 stop_machine +EXPORT_SYMBOL_GPL vmlinux 0xabdc9c3c of_irq_parse_raw +EXPORT_SYMBOL_GPL vmlinux 0xabdd5e10 devm_release_action +EXPORT_SYMBOL_GPL vmlinux 0xabde27ad palmas_ext_control_req_config +EXPORT_SYMBOL_GPL vmlinux 0xabe87f79 pm_clk_add_clk +EXPORT_SYMBOL_GPL vmlinux 0xabf5a294 ata_bmdma_port_start +EXPORT_SYMBOL_GPL vmlinux 0xabf8bc72 devm_hwspin_lock_register +EXPORT_SYMBOL_GPL vmlinux 0xabfff2af __pm_runtime_suspend +EXPORT_SYMBOL_GPL vmlinux 0xac073564 pid_nr_ns +EXPORT_SYMBOL_GPL vmlinux 0xac0dc494 edac_device_free_ctl_info +EXPORT_SYMBOL_GPL vmlinux 0xac31e75d dpcon_get_attributes +EXPORT_SYMBOL_GPL vmlinux 0xac41e40a blkcg_root_css +EXPORT_SYMBOL_GPL vmlinux 0xac4dbc78 acpi_subsys_runtime_suspend +EXPORT_SYMBOL_GPL vmlinux 0xac51090c devm_devfreq_event_remove_edev +EXPORT_SYMBOL_GPL vmlinux 0xac5f16ba regulator_disable_deferred +EXPORT_SYMBOL_GPL vmlinux 0xac724933 regulator_unlock +EXPORT_SYMBOL_GPL vmlinux 0xac72da47 psil_get_ep_config +EXPORT_SYMBOL_GPL vmlinux 0xac8403da tty_port_tty_wakeup +EXPORT_SYMBOL_GPL vmlinux 0xaca03709 dma_buf_unmap_attachment +EXPORT_SYMBOL_GPL vmlinux 0xaca174b0 devres_add +EXPORT_SYMBOL_GPL vmlinux 0xacadd15b crypto_inst_setname +EXPORT_SYMBOL_GPL vmlinux 0xacb4d88c clk_rate_exclusive_put +EXPORT_SYMBOL_GPL vmlinux 0xacec2f90 acpi_dma_request_slave_chan_by_index +EXPORT_SYMBOL_GPL vmlinux 0xaceda0ab switchdev_handle_port_obj_del +EXPORT_SYMBOL_GPL vmlinux 0xad0f2b6c unix_table_lock +EXPORT_SYMBOL_GPL vmlinux 0xad104ae1 pci_num_vf +EXPORT_SYMBOL_GPL vmlinux 0xad1bed38 led_blink_set_oneshot +EXPORT_SYMBOL_GPL vmlinux 0xad2674d3 sata_scr_valid +EXPORT_SYMBOL_GPL vmlinux 0xad2bcca5 pci_rescan_bus +EXPORT_SYMBOL_GPL vmlinux 0xad353683 init_pid_ns +EXPORT_SYMBOL_GPL vmlinux 0xad3de898 regulator_map_voltage_pickable_linear_range +EXPORT_SYMBOL_GPL vmlinux 0xad4a11b4 scsi_target_block +EXPORT_SYMBOL_GPL vmlinux 0xad4e6259 remove_cpu +EXPORT_SYMBOL_GPL vmlinux 0xad5737fc efivar_init +EXPORT_SYMBOL_GPL vmlinux 0xad61a471 regulator_force_disable +EXPORT_SYMBOL_GPL vmlinux 0xad633406 usb_unlocked_disable_lpm +EXPORT_SYMBOL_GPL vmlinux 0xad645234 register_switchdev_notifier +EXPORT_SYMBOL_GPL vmlinux 0xad7db612 user_read +EXPORT_SYMBOL_GPL vmlinux 0xad7f043f efivar_entry_get +EXPORT_SYMBOL_GPL vmlinux 0xad7f5a5c ahci_platform_resume_host +EXPORT_SYMBOL_GPL vmlinux 0xad8850de transport_setup_device +EXPORT_SYMBOL_GPL vmlinux 0xada23faa trace_array_printk +EXPORT_SYMBOL_GPL vmlinux 0xada38766 dst_cache_destroy +EXPORT_SYMBOL_GPL vmlinux 0xada3b689 ip6_push_pending_frames +EXPORT_SYMBOL_GPL vmlinux 0xada6ee6d direct_make_request +EXPORT_SYMBOL_GPL vmlinux 0xada89060 kernel_kobj +EXPORT_SYMBOL_GPL vmlinux 0xadb3b03a iomap_truncate_page +EXPORT_SYMBOL_GPL vmlinux 0xadb75707 rtnl_link_unregister +EXPORT_SYMBOL_GPL vmlinux 0xadc3f86b inet_csk_clone_lock +EXPORT_SYMBOL_GPL vmlinux 0xaddc59d9 tps65912_device_exit +EXPORT_SYMBOL_GPL vmlinux 0xaddd6800 nf_ct_hook +EXPORT_SYMBOL_GPL vmlinux 0xade758d9 dma_get_required_mask +EXPORT_SYMBOL_GPL vmlinux 0xadedd765 iommu_set_fault_handler +EXPORT_SYMBOL_GPL vmlinux 0xadf6368a devlink_dpipe_entry_ctx_prepare +EXPORT_SYMBOL_GPL vmlinux 0xadf9699b pci_write_msi_msg +EXPORT_SYMBOL_GPL vmlinux 0xae0b973f __platform_driver_register +EXPORT_SYMBOL_GPL vmlinux 0xae1051b0 net_cls_cgrp_subsys_enabled_key +EXPORT_SYMBOL_GPL vmlinux 0xae1371ac mmc_switch +EXPORT_SYMBOL_GPL vmlinux 0xae17a733 __irq_alloc_domain_generic_chips +EXPORT_SYMBOL_GPL vmlinux 0xae287d68 virtqueue_add_outbuf +EXPORT_SYMBOL_GPL vmlinux 0xae2d4d20 __ftrace_vprintk +EXPORT_SYMBOL_GPL vmlinux 0xae358acd unregister_kretprobe +EXPORT_SYMBOL_GPL vmlinux 0xae39f80e dst_cache_init +EXPORT_SYMBOL_GPL vmlinux 0xae3f6934 thermal_zone_of_sensor_register +EXPORT_SYMBOL_GPL vmlinux 0xae4556bd device_move +EXPORT_SYMBOL_GPL vmlinux 0xae4720a2 extcon_dev_free +EXPORT_SYMBOL_GPL vmlinux 0xae554ff9 devm_regmap_field_alloc +EXPORT_SYMBOL_GPL vmlinux 0xae5b13db acpi_subsys_freeze +EXPORT_SYMBOL_GPL vmlinux 0xae66224d dev_pm_opp_of_cpumask_remove_table +EXPORT_SYMBOL_GPL vmlinux 0xae69b1c1 usermodehelper_read_unlock +EXPORT_SYMBOL_GPL vmlinux 0xae77dad4 crypto_aead_decrypt +EXPORT_SYMBOL_GPL vmlinux 0xae7c231d mpi_cmp +EXPORT_SYMBOL_GPL vmlinux 0xae7e4864 blk_req_needs_zone_write_lock +EXPORT_SYMBOL_GPL vmlinux 0xae834889 devm_nvmem_register +EXPORT_SYMBOL_GPL vmlinux 0xae976932 ata_pci_device_suspend +EXPORT_SYMBOL_GPL vmlinux 0xae98773a pinctrl_select_state +EXPORT_SYMBOL_GPL vmlinux 0xae9be773 nf_queue +EXPORT_SYMBOL_GPL vmlinux 0xaeb12315 find_iova +EXPORT_SYMBOL_GPL vmlinux 0xaeb143a8 relay_reset +EXPORT_SYMBOL_GPL vmlinux 0xaeb6f0be __cpuhp_state_add_instance +EXPORT_SYMBOL_GPL vmlinux 0xaebc4767 ata_sff_lost_interrupt +EXPORT_SYMBOL_GPL vmlinux 0xaed3549d of_regulator_match +EXPORT_SYMBOL_GPL vmlinux 0xaee3f1e1 gpiod_get_raw_value +EXPORT_SYMBOL_GPL vmlinux 0xaeeddd26 virtqueue_get_vring_size +EXPORT_SYMBOL_GPL vmlinux 0xaf001067 pingv6_prot +EXPORT_SYMBOL_GPL vmlinux 0xaf076aec nd_fletcher64 +EXPORT_SYMBOL_GPL vmlinux 0xaf0b6ba7 blkg_rwstat_init +EXPORT_SYMBOL_GPL vmlinux 0xaf1bc9c3 dmaengine_desc_attach_metadata +EXPORT_SYMBOL_GPL vmlinux 0xaf2dd615 bpf_prog_destroy +EXPORT_SYMBOL_GPL vmlinux 0xaf2f5016 rio_unlock_device +EXPORT_SYMBOL_GPL vmlinux 0xaf348da7 cpu_pm_exit +EXPORT_SYMBOL_GPL vmlinux 0xaf3b6aab dma_resv_wait_timeout_rcu +EXPORT_SYMBOL_GPL vmlinux 0xaf4014ff usb_amd_quirk_pll_check +EXPORT_SYMBOL_GPL vmlinux 0xaf50e9c2 __mdiobus_modify_changed +EXPORT_SYMBOL_GPL vmlinux 0xaf53a90c posix_acl_create +EXPORT_SYMBOL_GPL vmlinux 0xaf66226d blk_mq_sched_free_hctx_data +EXPORT_SYMBOL_GPL vmlinux 0xaf6ba1f1 pinmux_generic_get_function +EXPORT_SYMBOL_GPL vmlinux 0xaf793668 __alloc_percpu_gfp +EXPORT_SYMBOL_GPL vmlinux 0xaf79459c i2c_bus_type +EXPORT_SYMBOL_GPL vmlinux 0xaf9e93dd seg6_do_srh_inline +EXPORT_SYMBOL_GPL vmlinux 0xafa6f267 ata_host_register +EXPORT_SYMBOL_GPL vmlinux 0xafb07262 __pfn_to_mfn +EXPORT_SYMBOL_GPL vmlinux 0xafb70efb of_phandle_iterator_next +EXPORT_SYMBOL_GPL vmlinux 0xafddd545 ata_id_c_string +EXPORT_SYMBOL_GPL vmlinux 0xafe02367 fwnode_get_nth_parent +EXPORT_SYMBOL_GPL vmlinux 0xb0001232 xdp_attachment_setup +EXPORT_SYMBOL_GPL vmlinux 0xb007dfd4 vfs_lock_file +EXPORT_SYMBOL_GPL vmlinux 0xb01ad14c regmap_get_reg_stride +EXPORT_SYMBOL_GPL vmlinux 0xb02ac411 register_xenstore_notifier +EXPORT_SYMBOL_GPL vmlinux 0xb0658194 serdev_controller_remove +EXPORT_SYMBOL_GPL vmlinux 0xb06c7b15 devm_phy_optional_get +EXPORT_SYMBOL_GPL vmlinux 0xb06f7166 set_primary_fwnode +EXPORT_SYMBOL_GPL vmlinux 0xb0747ed2 rcu_cpu_stall_suppress +EXPORT_SYMBOL_GPL vmlinux 0xb077e70a clk_unprepare +EXPORT_SYMBOL_GPL vmlinux 0xb0806085 clone_private_mount +EXPORT_SYMBOL_GPL vmlinux 0xb0816231 device_set_wakeup_enable +EXPORT_SYMBOL_GPL vmlinux 0xb08499c5 pci_parse_request_of_pci_ranges +EXPORT_SYMBOL_GPL vmlinux 0xb0881969 ip6_sk_dst_lookup_flow +EXPORT_SYMBOL_GPL vmlinux 0xb08a22a3 cpufreq_show_cpus +EXPORT_SYMBOL_GPL vmlinux 0xb08f9ae0 usb_hcd_check_unlink_urb +EXPORT_SYMBOL_GPL vmlinux 0xb0a4e94e i2c_for_each_dev +EXPORT_SYMBOL_GPL vmlinux 0xb0ab3ee1 sk_msg_return_zero +EXPORT_SYMBOL_GPL vmlinux 0xb0b8562b thermal_zone_get_zone_by_name +EXPORT_SYMBOL_GPL vmlinux 0xb0b85f47 ring_buffer_iter_reset +EXPORT_SYMBOL_GPL vmlinux 0xb0bf1001 tpm_chip_register +EXPORT_SYMBOL_GPL vmlinux 0xb0d1656c gpio_free_array +EXPORT_SYMBOL_GPL vmlinux 0xb0d3e7fd usb_sg_wait +EXPORT_SYMBOL_GPL vmlinux 0xb0e27b00 crypto_unregister_aead +EXPORT_SYMBOL_GPL vmlinux 0xb0e8e671 xenbus_otherend_changed +EXPORT_SYMBOL_GPL vmlinux 0xb0edb9ef gpiochip_add_data_with_key +EXPORT_SYMBOL_GPL vmlinux 0xb10d964d devlink_fmsg_pair_nest_end +EXPORT_SYMBOL_GPL vmlinux 0xb111dcc8 scsi_unregister_device_handler +EXPORT_SYMBOL_GPL vmlinux 0xb115ab97 sdio_get_host_pm_caps +EXPORT_SYMBOL_GPL vmlinux 0xb11d9000 tty_dev_name_to_number +EXPORT_SYMBOL_GPL vmlinux 0xb1256bf9 sdio_memcpy_fromio +EXPORT_SYMBOL_GPL vmlinux 0xb132e784 pm_clk_remove +EXPORT_SYMBOL_GPL vmlinux 0xb1332cde hisi_uncore_pmu_read +EXPORT_SYMBOL_GPL vmlinux 0xb1425b32 dm_table_add_target_callbacks +EXPORT_SYMBOL_GPL vmlinux 0xb155542b sk_msg_memcopy_from_iter +EXPORT_SYMBOL_GPL vmlinux 0xb159a465 fb_deferred_io_init +EXPORT_SYMBOL_GPL vmlinux 0xb162e062 adp5520_clr_bits +EXPORT_SYMBOL_GPL vmlinux 0xb1647fc2 devlink_info_version_running_put +EXPORT_SYMBOL_GPL vmlinux 0xb166d4cf mtk_smi_larb_get +EXPORT_SYMBOL_GPL vmlinux 0xb16a4410 xenbus_match +EXPORT_SYMBOL_GPL vmlinux 0xb172ffac efivars_sysfs_init +EXPORT_SYMBOL_GPL vmlinux 0xb17a7876 iommu_map_sg +EXPORT_SYMBOL_GPL vmlinux 0xb18429eb suspend_device_irqs +EXPORT_SYMBOL_GPL vmlinux 0xb18b00eb icc_set_tag +EXPORT_SYMBOL_GPL vmlinux 0xb190ea23 hwspin_lock_register +EXPORT_SYMBOL_GPL vmlinux 0xb1a95873 scsi_internal_device_block_nowait +EXPORT_SYMBOL_GPL vmlinux 0xb1a962df phy_package_leave +EXPORT_SYMBOL_GPL vmlinux 0xb1b4e973 mtk_paris_pinctrl_probe +EXPORT_SYMBOL_GPL vmlinux 0xb1ba5d42 xfrm_output_resume +EXPORT_SYMBOL_GPL vmlinux 0xb1bc9abe skcipher_walk_atomise +EXPORT_SYMBOL_GPL vmlinux 0xb1bcf145 sk_free_unlock_clone +EXPORT_SYMBOL_GPL vmlinux 0xb1bed25d dpm_resume_start +EXPORT_SYMBOL_GPL vmlinux 0xb1c1d108 blk_trace_startstop +EXPORT_SYMBOL_GPL vmlinux 0xb1dabc1e unregister_ftrace_export +EXPORT_SYMBOL_GPL vmlinux 0xb1e25684 __trace_bputs +EXPORT_SYMBOL_GPL vmlinux 0xb1e46d79 rio_mport_read_config_32 +EXPORT_SYMBOL_GPL vmlinux 0xb1e8c07b dax_writeback_mapping_range +EXPORT_SYMBOL_GPL vmlinux 0xb1ea9017 __blkg_prfill_u64 +EXPORT_SYMBOL_GPL vmlinux 0xb1eb6ed3 hrtimer_sleeper_start_expires +EXPORT_SYMBOL_GPL vmlinux 0xb203805f acpi_dev_get_dma_resources +EXPORT_SYMBOL_GPL vmlinux 0xb203e0d8 trace_array_put +EXPORT_SYMBOL_GPL vmlinux 0xb2210d64 reset_control_deassert +EXPORT_SYMBOL_GPL vmlinux 0xb234c7bb ata_dev_pair +EXPORT_SYMBOL_GPL vmlinux 0xb2405efc secure_tcp_seq +EXPORT_SYMBOL_GPL vmlinux 0xb2457736 ipv4_sk_update_pmtu +EXPORT_SYMBOL_GPL vmlinux 0xb25a19de of_genpd_add_provider_simple +EXPORT_SYMBOL_GPL vmlinux 0xb26a1add elfcorehdr_addr +EXPORT_SYMBOL_GPL vmlinux 0xb26f7e49 cpufreq_driver_fast_switch +EXPORT_SYMBOL_GPL vmlinux 0xb28014db wm8997_i2c_regmap +EXPORT_SYMBOL_GPL vmlinux 0xb28a4495 trace_event_reg +EXPORT_SYMBOL_GPL vmlinux 0xb28b14e8 sata_sff_hardreset +EXPORT_SYMBOL_GPL vmlinux 0xb29533ee zs_malloc +EXPORT_SYMBOL_GPL vmlinux 0xb29bc3dd skb_pull_rcsum +EXPORT_SYMBOL_GPL vmlinux 0xb29e8d3c fwnode_get_next_parent +EXPORT_SYMBOL_GPL vmlinux 0xb2a1a64e subsys_dev_iter_next +EXPORT_SYMBOL_GPL vmlinux 0xb2a834e5 bgmac_adjust_link +EXPORT_SYMBOL_GPL vmlinux 0xb2b3ba66 fsnotify_get_group +EXPORT_SYMBOL_GPL vmlinux 0xb2b786b6 switchdev_port_attr_set +EXPORT_SYMBOL_GPL vmlinux 0xb2c1732e rcu_gp_set_torture_wait +EXPORT_SYMBOL_GPL vmlinux 0xb2cd405b addrconf_prefix_rcv_add_addr +EXPORT_SYMBOL_GPL vmlinux 0xb2cf442f pci_test_config_bits +EXPORT_SYMBOL_GPL vmlinux 0xb2d58ed2 __fscrypt_prepare_symlink +EXPORT_SYMBOL_GPL vmlinux 0xb2dc4f7f devres_remove_group +EXPORT_SYMBOL_GPL vmlinux 0xb2e764e8 suspend_valid_only_mem +EXPORT_SYMBOL_GPL vmlinux 0xb2f4ba20 dev_pm_domain_start +EXPORT_SYMBOL_GPL vmlinux 0xb3010098 pm_clk_resume +EXPORT_SYMBOL_GPL vmlinux 0xb302a8f4 iomap_seek_data +EXPORT_SYMBOL_GPL vmlinux 0xb307c909 devlink_fmsg_u64_pair_put +EXPORT_SYMBOL_GPL vmlinux 0xb3275065 ncsi_vlan_rx_kill_vid +EXPORT_SYMBOL_GPL vmlinux 0xb32e6514 iommu_aux_get_pasid +EXPORT_SYMBOL_GPL vmlinux 0xb3351c6c rhashtable_walk_next +EXPORT_SYMBOL_GPL vmlinux 0xb3399d34 pci_hp_create_module_link +EXPORT_SYMBOL_GPL vmlinux 0xb34bd5da devm_pinctrl_register +EXPORT_SYMBOL_GPL vmlinux 0xb3541db8 sysfs_create_files +EXPORT_SYMBOL_GPL vmlinux 0xb3549fc8 clock_cooling_register +EXPORT_SYMBOL_GPL vmlinux 0xb35b2c98 param_ops_bool_enable_only +EXPORT_SYMBOL_GPL vmlinux 0xb35b5624 handle_mm_fault +EXPORT_SYMBOL_GPL vmlinux 0xb3697565 cpuidle_enable_device +EXPORT_SYMBOL_GPL vmlinux 0xb3701649 crypto_shoot_alg +EXPORT_SYMBOL_GPL vmlinux 0xb376fab3 br_ip6_fragment +EXPORT_SYMBOL_GPL vmlinux 0xb3833f5b devm_phy_package_join +EXPORT_SYMBOL_GPL vmlinux 0xb3945344 netdev_rx_handler_unregister +EXPORT_SYMBOL_GPL vmlinux 0xb39a3683 pinctrl_generic_remove_group +EXPORT_SYMBOL_GPL vmlinux 0xb3aa33ee iommu_group_add_device +EXPORT_SYMBOL_GPL vmlinux 0xb3ab85fa __srcu_read_unlock +EXPORT_SYMBOL_GPL vmlinux 0xb3c426b0 platform_device_add_resources +EXPORT_SYMBOL_GPL vmlinux 0xb3c5ecd9 mm_account_pinned_pages +EXPORT_SYMBOL_GPL vmlinux 0xb3e574aa dst_cache_set_ip6 +EXPORT_SYMBOL_GPL vmlinux 0xb3edcb8d sata_link_resume +EXPORT_SYMBOL_GPL vmlinux 0xb3ffe429 device_reprobe +EXPORT_SYMBOL_GPL vmlinux 0xb407c1df percpu_ref_switch_to_atomic +EXPORT_SYMBOL_GPL vmlinux 0xb40cad5b bsg_scsi_register_queue +EXPORT_SYMBOL_GPL vmlinux 0xb41bc892 spi_get_device_id +EXPORT_SYMBOL_GPL vmlinux 0xb41c73af tty_port_default_client_ops +EXPORT_SYMBOL_GPL vmlinux 0xb429dc96 n_tty_inherit_ops +EXPORT_SYMBOL_GPL vmlinux 0xb42e7114 ata_sas_scsi_ioctl +EXPORT_SYMBOL_GPL vmlinux 0xb43c660b virtio_config_disable +EXPORT_SYMBOL_GPL vmlinux 0xb43e9462 kthread_unpark +EXPORT_SYMBOL_GPL vmlinux 0xb43f9365 ktime_get +EXPORT_SYMBOL_GPL vmlinux 0xb443b8a2 tcp_bpf_sendmsg_redir +EXPORT_SYMBOL_GPL vmlinux 0xb4474f88 debugfs_real_fops +EXPORT_SYMBOL_GPL vmlinux 0xb44890a0 relay_buf_full +EXPORT_SYMBOL_GPL vmlinux 0xb44c2dc7 ahci_set_em_messages +EXPORT_SYMBOL_GPL vmlinux 0xb44e18ea audit_enabled +EXPORT_SYMBOL_GPL vmlinux 0xb466e7e6 __clk_hw_register_mux +EXPORT_SYMBOL_GPL vmlinux 0xb46aa256 gnttab_pages_clear_private +EXPORT_SYMBOL_GPL vmlinux 0xb4728497 iommu_detach_device +EXPORT_SYMBOL_GPL vmlinux 0xb47d3034 __xenbus_register_backend +EXPORT_SYMBOL_GPL vmlinux 0xb48f0638 software_node_register +EXPORT_SYMBOL_GPL vmlinux 0xb49b8d21 __device_reset +EXPORT_SYMBOL_GPL vmlinux 0xb4aa231f md_bitmap_copy_from_slot +EXPORT_SYMBOL_GPL vmlinux 0xb4b97c90 pvclock_gtod_register_notifier +EXPORT_SYMBOL_GPL vmlinux 0xb4ccba3e sysfs_notify +EXPORT_SYMBOL_GPL vmlinux 0xb4d22ab1 blkdev_write_iter +EXPORT_SYMBOL_GPL vmlinux 0xb4dadd03 pm_clk_runtime_resume +EXPORT_SYMBOL_GPL vmlinux 0xb4dea6cb trace_seq_vprintf +EXPORT_SYMBOL_GPL vmlinux 0xb4dfa768 crypto_grab_skcipher +EXPORT_SYMBOL_GPL vmlinux 0xb4e5f5f4 __bio_add_page +EXPORT_SYMBOL_GPL vmlinux 0xb4ea7cf7 kgdb_connected +EXPORT_SYMBOL_GPL vmlinux 0xb4eda0da ring_buffer_event_length +EXPORT_SYMBOL_GPL vmlinux 0xb4edd3be usb_phy_set_event +EXPORT_SYMBOL_GPL vmlinux 0xb4f4f407 irq_domain_free_irqs_common +EXPORT_SYMBOL_GPL vmlinux 0xb4f6e419 scmi_protocol_register +EXPORT_SYMBOL_GPL vmlinux 0xb4fdf904 dev_pm_qos_hide_latency_limit +EXPORT_SYMBOL_GPL vmlinux 0xb4ff6bb6 hrtimer_active +EXPORT_SYMBOL_GPL vmlinux 0xb501b2df nd_cmd_dimm_desc +EXPORT_SYMBOL_GPL vmlinux 0xb5086e13 tcp_abort +EXPORT_SYMBOL_GPL vmlinux 0xb510c250 raw_v4_hashinfo +EXPORT_SYMBOL_GPL vmlinux 0xb51fbd64 edac_op_state +EXPORT_SYMBOL_GPL vmlinux 0xb520eb79 btree_merge +EXPORT_SYMBOL_GPL vmlinux 0xb522fb01 pci_epc_mem_alloc_addr +EXPORT_SYMBOL_GPL vmlinux 0xb52b5147 perf_pmu_unregister +EXPORT_SYMBOL_GPL vmlinux 0xb53225d7 generic_file_buffered_read +EXPORT_SYMBOL_GPL vmlinux 0xb5436356 of_cpufreq_cooling_register +EXPORT_SYMBOL_GPL vmlinux 0xb546485d of_property_read_variable_u16_array +EXPORT_SYMBOL_GPL vmlinux 0xb54b753a led_set_brightness_sync +EXPORT_SYMBOL_GPL vmlinux 0xb55a9e4f rio_mport_write_config_16 +EXPORT_SYMBOL_GPL vmlinux 0xb55d8346 blk_queue_max_zone_append_sectors +EXPORT_SYMBOL_GPL vmlinux 0xb55de460 HYPERVISOR_dm_op +EXPORT_SYMBOL_GPL vmlinux 0xb5679b2a vfs_test_lock +EXPORT_SYMBOL_GPL vmlinux 0xb5692325 mmc_app_cmd +EXPORT_SYMBOL_GPL vmlinux 0xb575dd20 irq_domain_remove +EXPORT_SYMBOL_GPL vmlinux 0xb579076a regmap_add_irq_chip_np +EXPORT_SYMBOL_GPL vmlinux 0xb57ab82c usb_control_msg +EXPORT_SYMBOL_GPL vmlinux 0xb5a83e35 gnttab_setup_auto_xlat_frames +EXPORT_SYMBOL_GPL vmlinux 0xb5a8c226 acpi_gsi_to_irq +EXPORT_SYMBOL_GPL vmlinux 0xb5b0d177 serial8250_clear_and_reinit_fifos +EXPORT_SYMBOL_GPL vmlinux 0xb5bcb916 debugfs_create_x8 +EXPORT_SYMBOL_GPL vmlinux 0xb5cd70e5 clkdev_hw_create +EXPORT_SYMBOL_GPL vmlinux 0xb5cdf8f8 pinctrl_utils_free_map +EXPORT_SYMBOL_GPL vmlinux 0xb5e0e492 nvdimm_has_cache +EXPORT_SYMBOL_GPL vmlinux 0xb5ed48c8 bind_interdomain_evtchn_to_irq +EXPORT_SYMBOL_GPL vmlinux 0xb5f97ba7 of_pinctrl_get +EXPORT_SYMBOL_GPL vmlinux 0xb5fe5608 cleanup_srcu_struct +EXPORT_SYMBOL_GPL vmlinux 0xb61023f0 pci_find_ht_capability +EXPORT_SYMBOL_GPL vmlinux 0xb6261484 register_die_notifier +EXPORT_SYMBOL_GPL vmlinux 0xb652cfb6 phy_configure +EXPORT_SYMBOL_GPL vmlinux 0xb6787346 sfp_unregister_socket +EXPORT_SYMBOL_GPL vmlinux 0xb681573e fuse_send_init +EXPORT_SYMBOL_GPL vmlinux 0xb683672d kick_process +EXPORT_SYMBOL_GPL vmlinux 0xb68d4be9 of_platform_default_populate +EXPORT_SYMBOL_GPL vmlinux 0xb6d23ee5 iomap_swapfile_activate +EXPORT_SYMBOL_GPL vmlinux 0xb6d477c2 devlink_trap_report +EXPORT_SYMBOL_GPL vmlinux 0xb6e6d3e9 inet_hash +EXPORT_SYMBOL_GPL vmlinux 0xb6e6d99d clk_disable +EXPORT_SYMBOL_GPL vmlinux 0xb6e9b006 fib_rules_lookup +EXPORT_SYMBOL_GPL vmlinux 0xb6fb455a ata_dev_next +EXPORT_SYMBOL_GPL vmlinux 0xb702838b alloc_iova +EXPORT_SYMBOL_GPL vmlinux 0xb7079a38 acpi_dma_request_slave_chan_by_name +EXPORT_SYMBOL_GPL vmlinux 0xb71de489 fwnode_graph_get_next_endpoint +EXPORT_SYMBOL_GPL vmlinux 0xb7278bf5 tty_ldisc_release +EXPORT_SYMBOL_GPL vmlinux 0xb73121ff aead_geniv_alloc +EXPORT_SYMBOL_GPL vmlinux 0xb7329c06 clk_set_phase +EXPORT_SYMBOL_GPL vmlinux 0xb73713d7 nvmem_add_cell_lookups +EXPORT_SYMBOL_GPL vmlinux 0xb7379610 ahci_platform_resume +EXPORT_SYMBOL_GPL vmlinux 0xb7513eae shash_ahash_digest +EXPORT_SYMBOL_GPL vmlinux 0xb7559b8e trace_define_field +EXPORT_SYMBOL_GPL vmlinux 0xb757086a of_prop_next_u32 +EXPORT_SYMBOL_GPL vmlinux 0xb75f8b41 l3mdev_update_flow +EXPORT_SYMBOL_GPL vmlinux 0xb7701830 get_cpu_device +EXPORT_SYMBOL_GPL vmlinux 0xb78ba013 usb_string +EXPORT_SYMBOL_GPL vmlinux 0xb7a2027a usb_get_current_frame_number +EXPORT_SYMBOL_GPL vmlinux 0xb7a387fc synchronize_rcu_tasks_rude +EXPORT_SYMBOL_GPL vmlinux 0xb7c69a63 unregister_vmap_purge_notifier +EXPORT_SYMBOL_GPL vmlinux 0xb7cfa25e cpu_subsys +EXPORT_SYMBOL_GPL vmlinux 0xb7d7beb0 __blkg_prfill_rwstat +EXPORT_SYMBOL_GPL vmlinux 0xb7df8c6c dev_pm_opp_get_voltage +EXPORT_SYMBOL_GPL vmlinux 0xb7f73ef8 xas_init_marks +EXPORT_SYMBOL_GPL vmlinux 0xb7f990e9 rht_bucket_nested +EXPORT_SYMBOL_GPL vmlinux 0xb8198a4d transport_destroy_device +EXPORT_SYMBOL_GPL vmlinux 0xb819bdb2 __rio_local_read_config_32 +EXPORT_SYMBOL_GPL vmlinux 0xb8212341 timecounter_cyc2time +EXPORT_SYMBOL_GPL vmlinux 0xb8221e46 fat_truncate_time +EXPORT_SYMBOL_GPL vmlinux 0xb823d683 devlink_port_param_value_changed +EXPORT_SYMBOL_GPL vmlinux 0xb8273d0b __wake_up_sync +EXPORT_SYMBOL_GPL vmlinux 0xb83efb2c debugfs_attr_write +EXPORT_SYMBOL_GPL vmlinux 0xb847585f is_hash_blacklisted +EXPORT_SYMBOL_GPL vmlinux 0xb854bd8e phy_basic_t1_features +EXPORT_SYMBOL_GPL vmlinux 0xb8613bc7 devm_regulator_register_notifier +EXPORT_SYMBOL_GPL vmlinux 0xb8617afa irq_chip_mask_ack_parent +EXPORT_SYMBOL_GPL vmlinux 0xb879be57 uart_insert_char +EXPORT_SYMBOL_GPL vmlinux 0xb87d373c of_console_check +EXPORT_SYMBOL_GPL vmlinux 0xb882048d virtio_add_status +EXPORT_SYMBOL_GPL vmlinux 0xb88dbfce irq_set_irqchip_state +EXPORT_SYMBOL_GPL vmlinux 0xb89027fb iommu_iova_to_phys +EXPORT_SYMBOL_GPL vmlinux 0xb8965ffa fib_rules_register +EXPORT_SYMBOL_GPL vmlinux 0xb89e69b1 jump_label_update_timeout +EXPORT_SYMBOL_GPL vmlinux 0xb89ef2d8 crypto_register_skcipher +EXPORT_SYMBOL_GPL vmlinux 0xb8b30ad4 power_supply_get_battery_info +EXPORT_SYMBOL_GPL vmlinux 0xb8b91804 devm_regulator_get +EXPORT_SYMBOL_GPL vmlinux 0xb8bdb75b trace_output_call +EXPORT_SYMBOL_GPL vmlinux 0xb8cd3a7f nf_logger_put +EXPORT_SYMBOL_GPL vmlinux 0xb8cfe521 ata_scsi_ioctl +EXPORT_SYMBOL_GPL vmlinux 0xb8d37251 blkdev_report_zones +EXPORT_SYMBOL_GPL vmlinux 0xb8de881a fsl_mc_bus_dpni_type +EXPORT_SYMBOL_GPL vmlinux 0xb8e57c3a sock_inuse_get +EXPORT_SYMBOL_GPL vmlinux 0xb8e731dd clk_hw_unregister_divider +EXPORT_SYMBOL_GPL vmlinux 0xb8ea0f01 of_clk_parent_fill +EXPORT_SYMBOL_GPL vmlinux 0xb8f11603 idr_alloc +EXPORT_SYMBOL_GPL vmlinux 0xb910bda8 iomap_file_buffered_write +EXPORT_SYMBOL_GPL vmlinux 0xb912560d static_key_disable +EXPORT_SYMBOL_GPL vmlinux 0xb917b6d7 return_address +EXPORT_SYMBOL_GPL vmlinux 0xb91e847b sdio_memcpy_toio +EXPORT_SYMBOL_GPL vmlinux 0xb921ad05 pinctrl_utils_add_config +EXPORT_SYMBOL_GPL vmlinux 0xb9322e04 devlink_resource_occ_get_unregister +EXPORT_SYMBOL_GPL vmlinux 0xb9530bd6 ping_unhash +EXPORT_SYMBOL_GPL vmlinux 0xb95559bc housekeeping_any_cpu +EXPORT_SYMBOL_GPL vmlinux 0xb95faf37 udp6_lib_lookup_skb +EXPORT_SYMBOL_GPL vmlinux 0xb9681621 xdp_do_flush +EXPORT_SYMBOL_GPL vmlinux 0xb96cf33d iommu_report_device_fault +EXPORT_SYMBOL_GPL vmlinux 0xb9808131 dma_buf_vmap +EXPORT_SYMBOL_GPL vmlinux 0xb9897e9d usb_hcd_pci_shutdown +EXPORT_SYMBOL_GPL vmlinux 0xb99a8b65 skb_zerocopy_iter_dgram +EXPORT_SYMBOL_GPL vmlinux 0xb99c3b23 ata_port_wait_eh +EXPORT_SYMBOL_GPL vmlinux 0xb99fb9a1 nvdimm_name +EXPORT_SYMBOL_GPL vmlinux 0xb9ae9206 vga_default_device +EXPORT_SYMBOL_GPL vmlinux 0xb9b5d726 dev_pm_qos_add_notifier +EXPORT_SYMBOL_GPL vmlinux 0xb9b9df41 usb_amd_dev_put +EXPORT_SYMBOL_GPL vmlinux 0xb9bbdb96 pci_max_pasids +EXPORT_SYMBOL_GPL vmlinux 0xb9c227b8 dax_copy_from_iter +EXPORT_SYMBOL_GPL vmlinux 0xb9c425de register_syscore_ops +EXPORT_SYMBOL_GPL vmlinux 0xb9c9d9fe crypto_alloc_kpp +EXPORT_SYMBOL_GPL vmlinux 0xb9ce1c8e root_device_unregister +EXPORT_SYMBOL_GPL vmlinux 0xb9d025c9 llist_del_first +EXPORT_SYMBOL_GPL vmlinux 0xb9e09b78 dev_attr_ncq_prio_enable +EXPORT_SYMBOL_GPL vmlinux 0xb9f87ff0 led_init_core +EXPORT_SYMBOL_GPL vmlinux 0xba031118 xen_dbgp_external_startup +EXPORT_SYMBOL_GPL vmlinux 0xba0ca1a7 pci_epc_linkup +EXPORT_SYMBOL_GPL vmlinux 0xba1577b4 of_dma_simple_xlate +EXPORT_SYMBOL_GPL vmlinux 0xba1a6626 mtk_pinconf_bias_set_combo +EXPORT_SYMBOL_GPL vmlinux 0xba220db7 __wake_up_sync_key +EXPORT_SYMBOL_GPL vmlinux 0xba2b7f64 cpufreq_generic_get +EXPORT_SYMBOL_GPL vmlinux 0xba2bd125 phy_gbit_fibre_features +EXPORT_SYMBOL_GPL vmlinux 0xba2f728e driver_remove_file +EXPORT_SYMBOL_GPL vmlinux 0xba32a6d4 devm_regulator_get_exclusive +EXPORT_SYMBOL_GPL vmlinux 0xba32add1 tcp_reno_cong_avoid +EXPORT_SYMBOL_GPL vmlinux 0xba3c2d49 kernfs_notify +EXPORT_SYMBOL_GPL vmlinux 0xba3e619c dw_pcie_find_ext_capability +EXPORT_SYMBOL_GPL vmlinux 0xba52e77e crypto_cipher_setkey +EXPORT_SYMBOL_GPL vmlinux 0xba60bf51 input_ff_create +EXPORT_SYMBOL_GPL vmlinux 0xba675160 fsl_mc_device_add +EXPORT_SYMBOL_GPL vmlinux 0xba71ff0f open_related_ns +EXPORT_SYMBOL_GPL vmlinux 0xba810b89 pci_ecam_create +EXPORT_SYMBOL_GPL vmlinux 0xba813261 ata_pci_sff_init_one +EXPORT_SYMBOL_GPL vmlinux 0xba8bcb78 dev_pm_opp_put_prop_name +EXPORT_SYMBOL_GPL vmlinux 0xba977415 devm_hwmon_device_register_with_groups +EXPORT_SYMBOL_GPL vmlinux 0xba984d9b acpi_ec_remove_query_handler +EXPORT_SYMBOL_GPL vmlinux 0xba9bbfd7 ata_bmdma_start +EXPORT_SYMBOL_GPL vmlinux 0xbaa584ba __ata_ehi_push_desc +EXPORT_SYMBOL_GPL vmlinux 0xbab9a9f0 maxim_charger_currents +EXPORT_SYMBOL_GPL vmlinux 0xbad0d42f gpiod_set_value_cansleep +EXPORT_SYMBOL_GPL vmlinux 0xbad41702 pinctrl_dev_get_devname +EXPORT_SYMBOL_GPL vmlinux 0xbaea135e perf_trace_run_bpf_submit +EXPORT_SYMBOL_GPL vmlinux 0xbaf6850c fsnotify_wait_marks_destroyed +EXPORT_SYMBOL_GPL vmlinux 0xbafea67d max8997_bulk_read +EXPORT_SYMBOL_GPL vmlinux 0xbb0ab47b debug_locks +EXPORT_SYMBOL_GPL vmlinux 0xbb0b25d2 register_xenbus_watch +EXPORT_SYMBOL_GPL vmlinux 0xbb351412 sata_link_hardreset +EXPORT_SYMBOL_GPL vmlinux 0xbb3dbabc ahci_kick_engine +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 0xbb755abf gen_pool_get +EXPORT_SYMBOL_GPL vmlinux 0xbb77bb4c mbox_flush +EXPORT_SYMBOL_GPL vmlinux 0xbb839fe1 devm_phy_put +EXPORT_SYMBOL_GPL vmlinux 0xbb85bdd1 pci_device_group +EXPORT_SYMBOL_GPL vmlinux 0xbb86df4a trace_put_event_file +EXPORT_SYMBOL_GPL vmlinux 0xbb8a1498 crypto_ahash_walk_first +EXPORT_SYMBOL_GPL vmlinux 0xbba898a6 ohci_suspend +EXPORT_SYMBOL_GPL vmlinux 0xbbbfe5a7 mmu_interval_notifier_insert +EXPORT_SYMBOL_GPL vmlinux 0xbbc3347f device_add_properties +EXPORT_SYMBOL_GPL vmlinux 0xbbccb80d devlink_param_driverinit_value_set +EXPORT_SYMBOL_GPL vmlinux 0xbbd509c1 dev_pm_opp_put +EXPORT_SYMBOL_GPL vmlinux 0xbbd6292a ahci_port_resume +EXPORT_SYMBOL_GPL vmlinux 0xbbe1e47d __devm_spi_alloc_controller +EXPORT_SYMBOL_GPL vmlinux 0xbc03e342 devm_namespace_enable +EXPORT_SYMBOL_GPL vmlinux 0xbc071b2b uart_handle_dcd_change +EXPORT_SYMBOL_GPL vmlinux 0xbc15fa90 rio_request_mport_dma +EXPORT_SYMBOL_GPL vmlinux 0xbc1cf11f __fsl_mc_driver_register +EXPORT_SYMBOL_GPL vmlinux 0xbc337bed pci_user_read_config_byte +EXPORT_SYMBOL_GPL vmlinux 0xbc345071 skb_mpls_dec_ttl +EXPORT_SYMBOL_GPL vmlinux 0xbc481864 dev_pm_domain_set +EXPORT_SYMBOL_GPL vmlinux 0xbc51d473 rtc_update_irq +EXPORT_SYMBOL_GPL vmlinux 0xbc654505 crypto_shash_finup +EXPORT_SYMBOL_GPL vmlinux 0xbc6bec66 free_percpu_irq +EXPORT_SYMBOL_GPL vmlinux 0xbc742a7e ata_bmdma_error_handler +EXPORT_SYMBOL_GPL vmlinux 0xbc78540f register_asymmetric_key_parser +EXPORT_SYMBOL_GPL vmlinux 0xbc7a62cc edac_device_alloc_ctl_info +EXPORT_SYMBOL_GPL vmlinux 0xbc7ec879 stmpe_reg_write +EXPORT_SYMBOL_GPL vmlinux 0xbc840c12 sk_setup_caps +EXPORT_SYMBOL_GPL vmlinux 0xbc8c207d cpufreq_cpu_put +EXPORT_SYMBOL_GPL vmlinux 0xbc9b8588 ehci_cf_port_reset_rwsem +EXPORT_SYMBOL_GPL vmlinux 0xbc9fe2e1 kvm_debugfs_dir +EXPORT_SYMBOL_GPL vmlinux 0xbca0cd1a serial8250_tx_chars +EXPORT_SYMBOL_GPL vmlinux 0xbcb3690b ping_hash +EXPORT_SYMBOL_GPL vmlinux 0xbcc15e75 ktime_get_coarse_with_offset +EXPORT_SYMBOL_GPL vmlinux 0xbcc5ac54 acpi_dma_simple_xlate +EXPORT_SYMBOL_GPL vmlinux 0xbccfd4d8 register_oldmem_pfn_is_ram +EXPORT_SYMBOL_GPL vmlinux 0xbcdb2747 reset_simple_ops +EXPORT_SYMBOL_GPL vmlinux 0xbcdd5b99 iommu_group_set_name +EXPORT_SYMBOL_GPL vmlinux 0xbcedbe43 __regmap_init_i2c +EXPORT_SYMBOL_GPL vmlinux 0xbcf09e74 virtqueue_add_sgs +EXPORT_SYMBOL_GPL vmlinux 0xbcf1f0e6 zs_create_pool +EXPORT_SYMBOL_GPL vmlinux 0xbcf55b82 kthread_unuse_mm +EXPORT_SYMBOL_GPL vmlinux 0xbd3fe1e3 disable_hardirq +EXPORT_SYMBOL_GPL vmlinux 0xbd45320f of_resolve_phandles +EXPORT_SYMBOL_GPL vmlinux 0xbd49ac12 hisi_uncore_pmu_disable +EXPORT_SYMBOL_GPL vmlinux 0xbd512176 usb_hcd_giveback_urb +EXPORT_SYMBOL_GPL vmlinux 0xbd56b69f dma_buf_pin +EXPORT_SYMBOL_GPL vmlinux 0xbd6d2829 wm8350_gpio_config +EXPORT_SYMBOL_GPL vmlinux 0xbd7b19b6 usb_asmedia_modifyflowcontrol +EXPORT_SYMBOL_GPL vmlinux 0xbd7b4f1f devm_kstrdup +EXPORT_SYMBOL_GPL vmlinux 0xbda7f6d1 noop_direct_IO +EXPORT_SYMBOL_GPL vmlinux 0xbdb9d7d6 serdev_device_remove +EXPORT_SYMBOL_GPL vmlinux 0xbdba8655 fat_getattr +EXPORT_SYMBOL_GPL vmlinux 0xbdda86ea spi_mem_dirmap_read +EXPORT_SYMBOL_GPL vmlinux 0xbddb9ea2 disk_has_partitions +EXPORT_SYMBOL_GPL vmlinux 0xbddd30e9 cpufreq_unregister_driver +EXPORT_SYMBOL_GPL vmlinux 0xbe155cf6 replace_page_cache_page +EXPORT_SYMBOL_GPL vmlinux 0xbe1ac8b6 pci_generic_config_write32 +EXPORT_SYMBOL_GPL vmlinux 0xbe259f8c led_get_default_pattern +EXPORT_SYMBOL_GPL vmlinux 0xbe3fa223 skcipher_walk_virt +EXPORT_SYMBOL_GPL vmlinux 0xbe412972 fwnode_device_is_available +EXPORT_SYMBOL_GPL vmlinux 0xbe5c888b crypto_chain +EXPORT_SYMBOL_GPL vmlinux 0xbe5e3414 k3_udma_glue_reset_rx_chn +EXPORT_SYMBOL_GPL vmlinux 0xbe687e88 wake_up_all_idle_cpus +EXPORT_SYMBOL_GPL vmlinux 0xbe836048 regulator_set_voltage_sel_pickable_regmap +EXPORT_SYMBOL_GPL vmlinux 0xbe96dfd8 of_reconfig_notifier_unregister +EXPORT_SYMBOL_GPL vmlinux 0xbe9a83d5 dw_pcie_write +EXPORT_SYMBOL_GPL vmlinux 0xbea30312 acpi_pci_check_ejectable +EXPORT_SYMBOL_GPL vmlinux 0xbea3f321 scsi_host_complete_all_commands +EXPORT_SYMBOL_GPL vmlinux 0xbea5ff1e static_key_initialized +EXPORT_SYMBOL_GPL vmlinux 0xbec66c3a __apei_exec_run +EXPORT_SYMBOL_GPL vmlinux 0xbecd2069 dev_pm_opp_get_freq +EXPORT_SYMBOL_GPL vmlinux 0xbf0238b1 spi_controller_dma_map_mem_op_data +EXPORT_SYMBOL_GPL vmlinux 0xbf041102 register_vt_notifier +EXPORT_SYMBOL_GPL vmlinux 0xbf1b491d debugfs_create_u16 +EXPORT_SYMBOL_GPL vmlinux 0xbf221bb7 devm_of_phy_get_by_index +EXPORT_SYMBOL_GPL vmlinux 0xbf247753 ti_sci_get_handle +EXPORT_SYMBOL_GPL vmlinux 0xbf3377e2 i2c_generic_scl_recovery +EXPORT_SYMBOL_GPL vmlinux 0xbf4a97f8 regmap_exit +EXPORT_SYMBOL_GPL vmlinux 0xbf679c2e gpiochip_irq_domain_deactivate +EXPORT_SYMBOL_GPL vmlinux 0xbf6abbe7 housekeeping_enabled +EXPORT_SYMBOL_GPL vmlinux 0xbf6d6d08 thermal_zone_device_unregister +EXPORT_SYMBOL_GPL vmlinux 0xbf70e5cd usb_for_each_dev +EXPORT_SYMBOL_GPL vmlinux 0xbf9a62f7 xfrm_audit_state_notfound_simple +EXPORT_SYMBOL_GPL vmlinux 0xbf9e2911 clk_hw_get_parent_by_index +EXPORT_SYMBOL_GPL vmlinux 0xbfb63d05 pm_generic_freeze +EXPORT_SYMBOL_GPL vmlinux 0xbfbba601 blk_mq_make_request +EXPORT_SYMBOL_GPL vmlinux 0xbfbc5434 pciserial_resume_ports +EXPORT_SYMBOL_GPL vmlinux 0xbfc28a0e alloc_dax +EXPORT_SYMBOL_GPL vmlinux 0xbfd6c25c ohci_setup +EXPORT_SYMBOL_GPL vmlinux 0xbfe5616d tick_broadcast_oneshot_control +EXPORT_SYMBOL_GPL vmlinux 0xbfed2cd9 __wait_rcu_gp +EXPORT_SYMBOL_GPL vmlinux 0xbfee0ead sdio_release_irq +EXPORT_SYMBOL_GPL vmlinux 0xbffde8ec compat_alloc_user_space +EXPORT_SYMBOL_GPL vmlinux 0xbfff074e class_dev_iter_exit +EXPORT_SYMBOL_GPL vmlinux 0xc02d5d9b iommu_attach_device +EXPORT_SYMBOL_GPL vmlinux 0xc04eca99 devm_hwrng_unregister +EXPORT_SYMBOL_GPL vmlinux 0xc05667ab dma_buf_mmap +EXPORT_SYMBOL_GPL vmlinux 0xc06c1b2e mctrl_gpio_free +EXPORT_SYMBOL_GPL vmlinux 0xc071b3c5 trace_seq_putmem +EXPORT_SYMBOL_GPL vmlinux 0xc0775b08 of_pci_range_parser_one +EXPORT_SYMBOL_GPL vmlinux 0xc07c0a93 spi_delay_exec +EXPORT_SYMBOL_GPL vmlinux 0xc08b5737 clk_gate_restore_context +EXPORT_SYMBOL_GPL vmlinux 0xc08f50b5 raw_unhash_sk +EXPORT_SYMBOL_GPL vmlinux 0xc0a3d155 k3_udma_glue_rx_get_flow_id_base +EXPORT_SYMBOL_GPL vmlinux 0xc0a902f7 devm_platform_ioremap_resource +EXPORT_SYMBOL_GPL vmlinux 0xc0a954e9 synth_event_add_next_val +EXPORT_SYMBOL_GPL vmlinux 0xc0a96e14 rcu_gp_is_expedited +EXPORT_SYMBOL_GPL vmlinux 0xc0ac0334 rtc_set_time +EXPORT_SYMBOL_GPL vmlinux 0xc0b5c03c iomap_releasepage +EXPORT_SYMBOL_GPL vmlinux 0xc0ba85ed ata_qc_complete_multiple +EXPORT_SYMBOL_GPL vmlinux 0xc0d908d0 pci_try_reset_function +EXPORT_SYMBOL_GPL vmlinux 0xc0dcb59e edac_layer_name +EXPORT_SYMBOL_GPL vmlinux 0xc0e1605f of_reserved_mem_device_init_by_name +EXPORT_SYMBOL_GPL vmlinux 0xc0e951c2 xdp_return_frame_rx_napi +EXPORT_SYMBOL_GPL vmlinux 0xc0f0458a ip_tunnel_unneed_metadata +EXPORT_SYMBOL_GPL vmlinux 0xc0f590c1 usb_phy_get_charger_current +EXPORT_SYMBOL_GPL vmlinux 0xc1058ee1 perf_pmu_migrate_context +EXPORT_SYMBOL_GPL vmlinux 0xc1086e0c sysrq_toggle_support +EXPORT_SYMBOL_GPL vmlinux 0xc10fddb8 name_to_dev_t +EXPORT_SYMBOL_GPL vmlinux 0xc11b8f30 tps6586x_writes +EXPORT_SYMBOL_GPL vmlinux 0xc131b663 __root_device_register +EXPORT_SYMBOL_GPL vmlinux 0xc131d943 __devm_irq_alloc_descs +EXPORT_SYMBOL_GPL vmlinux 0xc133a964 extcon_dev_register +EXPORT_SYMBOL_GPL vmlinux 0xc14b60a3 pm_clk_destroy +EXPORT_SYMBOL_GPL vmlinux 0xc16618a2 regulator_suspend_enable +EXPORT_SYMBOL_GPL vmlinux 0xc16a84e0 iommu_device_unlink +EXPORT_SYMBOL_GPL vmlinux 0xc17515d7 usb_hcds_loaded +EXPORT_SYMBOL_GPL vmlinux 0xc175ee57 dw_pcie_write_dbi +EXPORT_SYMBOL_GPL vmlinux 0xc17e9946 usb_show_dynids +EXPORT_SYMBOL_GPL vmlinux 0xc18cb5f9 usb_set_interface +EXPORT_SYMBOL_GPL vmlinux 0xc1a75eda led_classdev_notify_brightness_hw_changed +EXPORT_SYMBOL_GPL vmlinux 0xc1ade38e scsi_free_sgtables +EXPORT_SYMBOL_GPL vmlinux 0xc1bbfee9 register_user_hw_breakpoint +EXPORT_SYMBOL_GPL vmlinux 0xc1c0d5de kvm_read_guest_offset_cached +EXPORT_SYMBOL_GPL vmlinux 0xc1cb2fe2 clk_hw_unregister_mux +EXPORT_SYMBOL_GPL vmlinux 0xc1cc9b37 dw_pcie_host_deinit +EXPORT_SYMBOL_GPL vmlinux 0xc1dae019 pci_bus_add_device +EXPORT_SYMBOL_GPL vmlinux 0xc1dce028 k3_udma_glue_reset_tx_chn +EXPORT_SYMBOL_GPL vmlinux 0xc1dd2b9d irq_domain_pop_irq +EXPORT_SYMBOL_GPL vmlinux 0xc1def487 usb_submit_urb +EXPORT_SYMBOL_GPL vmlinux 0xc1e1e5be ehci_reset +EXPORT_SYMBOL_GPL vmlinux 0xc1ea87e6 i2c_new_scanned_device +EXPORT_SYMBOL_GPL vmlinux 0xc1ecc1a4 meson_clk_dualdiv_ops +EXPORT_SYMBOL_GPL vmlinux 0xc1f7abb8 fuse_simple_background +EXPORT_SYMBOL_GPL vmlinux 0xc21601bd devm_thermal_add_hwmon_sysfs +EXPORT_SYMBOL_GPL vmlinux 0xc228e5f7 bio_release_pages +EXPORT_SYMBOL_GPL vmlinux 0xc22a3091 vm_unmap_aliases +EXPORT_SYMBOL_GPL vmlinux 0xc22ed7f4 key_type_asymmetric +EXPORT_SYMBOL_GPL vmlinux 0xc2319467 amba_device_add +EXPORT_SYMBOL_GPL vmlinux 0xc24035b6 tcp_twsk_destructor +EXPORT_SYMBOL_GPL vmlinux 0xc2692173 wakeup_sources_read_lock +EXPORT_SYMBOL_GPL vmlinux 0xc280fb46 kdb_register +EXPORT_SYMBOL_GPL vmlinux 0xc289e46d cpufreq_generic_frequency_table_verify +EXPORT_SYMBOL_GPL vmlinux 0xc28ebd1d simple_attr_open +EXPORT_SYMBOL_GPL vmlinux 0xc2a39215 netdev_is_rx_handler_busy +EXPORT_SYMBOL_GPL vmlinux 0xc2a3e570 errata +EXPORT_SYMBOL_GPL vmlinux 0xc2a814db tcp_memory_pressure +EXPORT_SYMBOL_GPL vmlinux 0xc2b9cb1f setfl +EXPORT_SYMBOL_GPL vmlinux 0xc2c1c427 perf_event_cgrp_subsys_on_dfl_key +EXPORT_SYMBOL_GPL vmlinux 0xc2c3790c smpboot_unregister_percpu_thread +EXPORT_SYMBOL_GPL vmlinux 0xc2d2f9f7 switchdev_port_obj_add +EXPORT_SYMBOL_GPL vmlinux 0xc2d33a88 blk_mq_update_nr_hw_queues +EXPORT_SYMBOL_GPL vmlinux 0xc2da6587 sdio_readl +EXPORT_SYMBOL_GPL vmlinux 0xc2de27ca hest_disable +EXPORT_SYMBOL_GPL vmlinux 0xc2e503c4 apei_get_debugfs_dir +EXPORT_SYMBOL_GPL vmlinux 0xc2f09c19 devlink_reload_disable +EXPORT_SYMBOL_GPL vmlinux 0xc30c9f15 blkg_conf_prep +EXPORT_SYMBOL_GPL vmlinux 0xc3172817 ip6_flush_pending_frames +EXPORT_SYMBOL_GPL vmlinux 0xc319dd20 pinctrl_dev_get_drvdata +EXPORT_SYMBOL_GPL vmlinux 0xc324ebef get_kernel_pages +EXPORT_SYMBOL_GPL vmlinux 0xc328ed2d hisi_format_sysfs_show +EXPORT_SYMBOL_GPL vmlinux 0xc32d811a serdev_device_write +EXPORT_SYMBOL_GPL vmlinux 0xc3382c5d sdio_claim_irq +EXPORT_SYMBOL_GPL vmlinux 0xc341ae6d zs_map_object +EXPORT_SYMBOL_GPL vmlinux 0xc346720d pm_clk_init +EXPORT_SYMBOL_GPL vmlinux 0xc34a372a shake_page +EXPORT_SYMBOL_GPL vmlinux 0xc3612265 skb_scrub_packet +EXPORT_SYMBOL_GPL vmlinux 0xc3636c74 of_map_rid +EXPORT_SYMBOL_GPL vmlinux 0xc37754cc clk_hw_register +EXPORT_SYMBOL_GPL vmlinux 0xc3805cd1 fs_ftype_to_dtype +EXPORT_SYMBOL_GPL vmlinux 0xc380d18d acpi_initialize_hp_context +EXPORT_SYMBOL_GPL vmlinux 0xc385cb58 perf_num_counters +EXPORT_SYMBOL_GPL vmlinux 0xc3883cd1 phy_driver_is_genphy +EXPORT_SYMBOL_GPL vmlinux 0xc3990e00 regulator_sync_voltage +EXPORT_SYMBOL_GPL vmlinux 0xc3a15e97 irq_gc_mask_clr_bit +EXPORT_SYMBOL_GPL vmlinux 0xc3b1fff1 ata_cable_80wire +EXPORT_SYMBOL_GPL vmlinux 0xc3c47771 icc_node_del +EXPORT_SYMBOL_GPL vmlinux 0xc3c4c6cc hash_algo_name +EXPORT_SYMBOL_GPL vmlinux 0xc3c94674 devm_reset_control_array_get +EXPORT_SYMBOL_GPL vmlinux 0xc3de65ff ring_buffer_bytes_cpu +EXPORT_SYMBOL_GPL vmlinux 0xc3e00784 crypto_alloc_ahash +EXPORT_SYMBOL_GPL vmlinux 0xc3e1abb3 spi_sync +EXPORT_SYMBOL_GPL vmlinux 0xc3e1c994 i2c_match_id +EXPORT_SYMBOL_GPL vmlinux 0xc3e8f2d0 regulator_get_init_drvdata +EXPORT_SYMBOL_GPL vmlinux 0xc3ea5305 iommu_default_passthrough +EXPORT_SYMBOL_GPL vmlinux 0xc3ea8f3a synchronize_srcu +EXPORT_SYMBOL_GPL vmlinux 0xc3f9b49b irq_domain_alloc_irqs_parent +EXPORT_SYMBOL_GPL vmlinux 0xc3faf216 iommu_domain_alloc +EXPORT_SYMBOL_GPL vmlinux 0xc3fceba0 gpiod_get_array_value_cansleep +EXPORT_SYMBOL_GPL vmlinux 0xc40db564 regcache_cache_only +EXPORT_SYMBOL_GPL vmlinux 0xc40f4e07 __tracepoint_neigh_update_done +EXPORT_SYMBOL_GPL vmlinux 0xc428068d sata_deb_timing_long +EXPORT_SYMBOL_GPL vmlinux 0xc4397d0e security_kernel_read_file +EXPORT_SYMBOL_GPL vmlinux 0xc43b9654 kthread_data +EXPORT_SYMBOL_GPL vmlinux 0xc44645f0 __clk_get_hw +EXPORT_SYMBOL_GPL vmlinux 0xc44ec608 uprobe_register +EXPORT_SYMBOL_GPL vmlinux 0xc4521e89 dev_change_net_namespace +EXPORT_SYMBOL_GPL vmlinux 0xc454fc7b twl_get_type +EXPORT_SYMBOL_GPL vmlinux 0xc45707be tty_find_polling_driver +EXPORT_SYMBOL_GPL vmlinux 0xc46324f6 dynevent_create +EXPORT_SYMBOL_GPL vmlinux 0xc46a9d32 regulator_list_voltage_linear +EXPORT_SYMBOL_GPL vmlinux 0xc471aa10 serdev_device_write_room +EXPORT_SYMBOL_GPL vmlinux 0xc471c67a twl4030_audio_disable_resource +EXPORT_SYMBOL_GPL vmlinux 0xc472fe52 dma_buf_begin_cpu_access +EXPORT_SYMBOL_GPL vmlinux 0xc48b7ccf ata_mode_string +EXPORT_SYMBOL_GPL vmlinux 0xc49b2718 virtqueue_get_desc_addr +EXPORT_SYMBOL_GPL vmlinux 0xc4a31146 rdma_cgrp_subsys_on_dfl_key +EXPORT_SYMBOL_GPL vmlinux 0xc4a72936 trusted_tpm_send +EXPORT_SYMBOL_GPL vmlinux 0xc4aa106a regulator_set_load +EXPORT_SYMBOL_GPL vmlinux 0xc4ac8eef __tracepoint_rpm_idle +EXPORT_SYMBOL_GPL vmlinux 0xc4be6ccd tc3589x_block_write +EXPORT_SYMBOL_GPL vmlinux 0xc4c8dad1 pci_epf_alloc_space +EXPORT_SYMBOL_GPL vmlinux 0xc4d6fe01 pinmux_generic_remove_function +EXPORT_SYMBOL_GPL vmlinux 0xc4dc5437 of_clk_del_provider +EXPORT_SYMBOL_GPL vmlinux 0xc4e6edab serial8250_em485_stop_tx +EXPORT_SYMBOL_GPL vmlinux 0xc4e99624 of_clk_hw_simple_get +EXPORT_SYMBOL_GPL vmlinux 0xc4eae733 perf_trace_buf_alloc +EXPORT_SYMBOL_GPL vmlinux 0xc4f0da12 ktime_get_with_offset +EXPORT_SYMBOL_GPL vmlinux 0xc4fb902d pci_epf_create +EXPORT_SYMBOL_GPL vmlinux 0xc5156bf3 fanout_mutex +EXPORT_SYMBOL_GPL vmlinux 0xc51818e9 devm_mbox_controller_register +EXPORT_SYMBOL_GPL vmlinux 0xc528d78a rio_del_mport_pw_handler +EXPORT_SYMBOL_GPL vmlinux 0xc52f0388 acpi_dev_resource_memory +EXPORT_SYMBOL_GPL vmlinux 0xc5432031 lp8788_update_bits +EXPORT_SYMBOL_GPL vmlinux 0xc5472454 crypto_enqueue_request_head +EXPORT_SYMBOL_GPL vmlinux 0xc54861de acpi_driver_match_device +EXPORT_SYMBOL_GPL vmlinux 0xc55ff962 phy_basic_t1_features_array +EXPORT_SYMBOL_GPL vmlinux 0xc5604800 clk_set_rate_exclusive +EXPORT_SYMBOL_GPL vmlinux 0xc564ec25 ti_sci_inta_msi_domain_alloc_irqs +EXPORT_SYMBOL_GPL vmlinux 0xc569d8ce __clk_get_name +EXPORT_SYMBOL_GPL vmlinux 0xc56aa001 devlink_port_type_clear +EXPORT_SYMBOL_GPL vmlinux 0xc57303d2 devm_acpi_dma_controller_register +EXPORT_SYMBOL_GPL vmlinux 0xc575c737 debug_locks_off +EXPORT_SYMBOL_GPL vmlinux 0xc5777fca linear_range_get_selector_low_array +EXPORT_SYMBOL_GPL vmlinux 0xc58a3ee6 icc_node_destroy +EXPORT_SYMBOL_GPL vmlinux 0xc594d840 acpi_dev_resource_interrupt +EXPORT_SYMBOL_GPL vmlinux 0xc5996c8c pkcs7_get_content_data +EXPORT_SYMBOL_GPL vmlinux 0xc5a5c678 uart_parse_earlycon +EXPORT_SYMBOL_GPL vmlinux 0xc5ae509d kvm_init +EXPORT_SYMBOL_GPL vmlinux 0xc5ae6f06 crypto_register_scomp +EXPORT_SYMBOL_GPL vmlinux 0xc5c88dda phy_modify_mmd_changed +EXPORT_SYMBOL_GPL vmlinux 0xc5cbceb5 cs47l24_spi_regmap +EXPORT_SYMBOL_GPL vmlinux 0xc5d789df alarm_expires_remaining +EXPORT_SYMBOL_GPL vmlinux 0xc5d93016 badblocks_clear +EXPORT_SYMBOL_GPL vmlinux 0xc5e40494 device_match_devt +EXPORT_SYMBOL_GPL vmlinux 0xc5e9cebc fsverity_ioctl_enable +EXPORT_SYMBOL_GPL vmlinux 0xc60883a4 fwnode_property_read_u8_array +EXPORT_SYMBOL_GPL vmlinux 0xc617f82c unregister_oom_notifier +EXPORT_SYMBOL_GPL vmlinux 0xc621628d desc_to_gpio +EXPORT_SYMBOL_GPL vmlinux 0xc625d5f0 class_find_device +EXPORT_SYMBOL_GPL vmlinux 0xc628e019 udp6_lib_lookup +EXPORT_SYMBOL_GPL vmlinux 0xc640642c debugfs_rename +EXPORT_SYMBOL_GPL vmlinux 0xc64c5938 security_inode_setattr +EXPORT_SYMBOL_GPL vmlinux 0xc64d86c8 pcie_update_link_speed +EXPORT_SYMBOL_GPL vmlinux 0xc654d3f4 lwtunnel_valid_encap_type +EXPORT_SYMBOL_GPL vmlinux 0xc6572a90 xenbus_read_unsigned +EXPORT_SYMBOL_GPL vmlinux 0xc65e5199 driver_find +EXPORT_SYMBOL_GPL vmlinux 0xc66019cc xen_resume_notifier_unregister +EXPORT_SYMBOL_GPL vmlinux 0xc6694176 gpiod_put_array +EXPORT_SYMBOL_GPL vmlinux 0xc66b77b1 iommu_group_set_iommudata +EXPORT_SYMBOL_GPL vmlinux 0xc6779093 ring_buffer_record_enable +EXPORT_SYMBOL_GPL vmlinux 0xc682a746 tpm2_probe +EXPORT_SYMBOL_GPL vmlinux 0xc688b534 iommu_sva_unbind_device +EXPORT_SYMBOL_GPL vmlinux 0xc692f9f9 dev_coredumpsg +EXPORT_SYMBOL_GPL vmlinux 0xc697b0f7 nvmem_device_read +EXPORT_SYMBOL_GPL vmlinux 0xc69b7ee5 zs_destroy_pool +EXPORT_SYMBOL_GPL vmlinux 0xc6a4a872 __clk_is_enabled +EXPORT_SYMBOL_GPL vmlinux 0xc6ad07f2 component_master_del +EXPORT_SYMBOL_GPL vmlinux 0xc6bded7e register_trace_event +EXPORT_SYMBOL_GPL vmlinux 0xc6be404d devm_mbox_controller_unregister +EXPORT_SYMBOL_GPL vmlinux 0xc6c19f17 icc_enable +EXPORT_SYMBOL_GPL vmlinux 0xc6def34b gnttab_empty_grant_references +EXPORT_SYMBOL_GPL vmlinux 0xc6e42c6e tcp_reno_ssthresh +EXPORT_SYMBOL_GPL vmlinux 0xc6f192b1 usb_hub_clear_tt_buffer +EXPORT_SYMBOL_GPL vmlinux 0xc7052516 devm_hwspin_lock_request_specific +EXPORT_SYMBOL_GPL vmlinux 0xc7061ef3 iova_cache_put +EXPORT_SYMBOL_GPL vmlinux 0xc70d11d7 rockchip_pcie_cfg_configuration_accesses +EXPORT_SYMBOL_GPL vmlinux 0xc710a2f5 wakeup_source_register +EXPORT_SYMBOL_GPL vmlinux 0xc71e1ae0 regulator_enable +EXPORT_SYMBOL_GPL vmlinux 0xc71e64a9 snmp_get_cpu_field +EXPORT_SYMBOL_GPL vmlinux 0xc7313fcc __tcp_send_ack +EXPORT_SYMBOL_GPL vmlinux 0xc738b334 disk_part_iter_init +EXPORT_SYMBOL_GPL vmlinux 0xc74dfba9 uhci_check_and_reset_hc +EXPORT_SYMBOL_GPL vmlinux 0xc74fe0c2 is_skb_forwardable +EXPORT_SYMBOL_GPL vmlinux 0xc756882c __rtc_register_device +EXPORT_SYMBOL_GPL vmlinux 0xc75b4c38 ip6_datagram_connect_v6_only +EXPORT_SYMBOL_GPL vmlinux 0xc75f6569 __irq_domain_add +EXPORT_SYMBOL_GPL vmlinux 0xc7856e74 __wake_up_locked_sync_key +EXPORT_SYMBOL_GPL vmlinux 0xc7899d11 __raw_v4_lookup +EXPORT_SYMBOL_GPL vmlinux 0xc79413b2 register_kprobes +EXPORT_SYMBOL_GPL vmlinux 0xc7a1840e llist_add_batch +EXPORT_SYMBOL_GPL vmlinux 0xc7a5e597 pci_generic_config_read32 +EXPORT_SYMBOL_GPL vmlinux 0xc7a90141 watchdog_register_device +EXPORT_SYMBOL_GPL vmlinux 0xc7b4eacf thermal_of_cooling_device_register +EXPORT_SYMBOL_GPL vmlinux 0xc7b9f77c amba_apb_device_add +EXPORT_SYMBOL_GPL vmlinux 0xc7c23ff0 xenbus_exists +EXPORT_SYMBOL_GPL vmlinux 0xc7c26966 hvc_alloc +EXPORT_SYMBOL_GPL vmlinux 0xc7e187cf regmap_check_range_table +EXPORT_SYMBOL_GPL vmlinux 0xc7fa4aa9 kobj_ns_drop +EXPORT_SYMBOL_GPL vmlinux 0xc8044512 relay_close +EXPORT_SYMBOL_GPL vmlinux 0xc81474fd dev_pm_opp_get_opp_count +EXPORT_SYMBOL_GPL vmlinux 0xc817b060 xhci_run +EXPORT_SYMBOL_GPL vmlinux 0xc821a9a0 usb_poison_urb +EXPORT_SYMBOL_GPL vmlinux 0xc8222f83 of_pci_range_parser_init +EXPORT_SYMBOL_GPL vmlinux 0xc82468b9 badblocks_init +EXPORT_SYMBOL_GPL vmlinux 0xc8296483 vchan_init +EXPORT_SYMBOL_GPL vmlinux 0xc82c721f klist_remove +EXPORT_SYMBOL_GPL vmlinux 0xc8329d7e _copy_from_iter_flushcache +EXPORT_SYMBOL_GPL vmlinux 0xc8594d3d reset_control_acquire +EXPORT_SYMBOL_GPL vmlinux 0xc860d57b gpiod_get_raw_array_value +EXPORT_SYMBOL_GPL vmlinux 0xc872b3b8 gpiod_put +EXPORT_SYMBOL_GPL vmlinux 0xc87dd725 k3_udma_glue_pop_rx_chn +EXPORT_SYMBOL_GPL vmlinux 0xc87fb025 xas_get_mark +EXPORT_SYMBOL_GPL vmlinux 0xc881a20f skb_copy_ubufs +EXPORT_SYMBOL_GPL vmlinux 0xc8829f51 ata_host_init +EXPORT_SYMBOL_GPL vmlinux 0xc8cccfb2 rio_get_comptag +EXPORT_SYMBOL_GPL vmlinux 0xc8ddd5b5 kstrdup_quotable +EXPORT_SYMBOL_GPL vmlinux 0xc8e45bea sdio_disable_func +EXPORT_SYMBOL_GPL vmlinux 0xc8edd8ff md_rdev_init +EXPORT_SYMBOL_GPL vmlinux 0xc8f27f18 devres_close_group +EXPORT_SYMBOL_GPL vmlinux 0xc90e2ddd tpm_get_random +EXPORT_SYMBOL_GPL vmlinux 0xc91277a1 kgdb_schedule_breakpoint +EXPORT_SYMBOL_GPL vmlinux 0xc919ee4f platform_unregister_drivers +EXPORT_SYMBOL_GPL vmlinux 0xc923aee1 vma_kernel_pagesize +EXPORT_SYMBOL_GPL vmlinux 0xc9345c0f digsig_verify +EXPORT_SYMBOL_GPL vmlinux 0xc93ee1e7 usb_phy_roothub_init +EXPORT_SYMBOL_GPL vmlinux 0xc9561772 fb_destroy_modelist +EXPORT_SYMBOL_GPL vmlinux 0xc96063c6 irq_setup_alt_chip +EXPORT_SYMBOL_GPL vmlinux 0xc9641b48 visitor32 +EXPORT_SYMBOL_GPL vmlinux 0xc97a00c9 alarm_try_to_cancel +EXPORT_SYMBOL_GPL vmlinux 0xc97cdd50 blk_ksm_register +EXPORT_SYMBOL_GPL vmlinux 0xc97e72a2 spi_mem_exec_op +EXPORT_SYMBOL_GPL vmlinux 0xc9827693 __bpf_call_base +EXPORT_SYMBOL_GPL vmlinux 0xc98647c0 device_match_fwnode +EXPORT_SYMBOL_GPL vmlinux 0xc990a14d irq_domain_associate_many +EXPORT_SYMBOL_GPL vmlinux 0xc9b2e6eb dev_pm_opp_set_prop_name +EXPORT_SYMBOL_GPL vmlinux 0xc9b4b515 blk_ksm_reprogram_all_keys +EXPORT_SYMBOL_GPL vmlinux 0xc9b63de0 sata_scr_write +EXPORT_SYMBOL_GPL vmlinux 0xc9c87652 iomap_writepages +EXPORT_SYMBOL_GPL vmlinux 0xc9c98fcc bdev_disk_changed +EXPORT_SYMBOL_GPL vmlinux 0xc9ca8152 dprc_get_obj_count +EXPORT_SYMBOL_GPL vmlinux 0xc9d51601 noop_set_page_dirty +EXPORT_SYMBOL_GPL vmlinux 0xc9de9ea9 ahci_platform_suspend +EXPORT_SYMBOL_GPL vmlinux 0xc9e6ee6c fwnode_graph_get_endpoint_by_id +EXPORT_SYMBOL_GPL vmlinux 0xc9ec4e21 free_percpu +EXPORT_SYMBOL_GPL vmlinux 0xc9f69690 spi_new_device +EXPORT_SYMBOL_GPL vmlinux 0xc9fb00f7 pl320_ipc_transmit +EXPORT_SYMBOL_GPL vmlinux 0xc9fc789b fwnode_remove_software_node +EXPORT_SYMBOL_GPL vmlinux 0xc9fd634a usb_role_switch_put +EXPORT_SYMBOL_GPL vmlinux 0xca15d035 acpi_pm_wakeup_event +EXPORT_SYMBOL_GPL vmlinux 0xca368afe cpci_hp_unregister_bus +EXPORT_SYMBOL_GPL vmlinux 0xca496b92 power_supply_set_property +EXPORT_SYMBOL_GPL vmlinux 0xca4b8efd set_task_ioprio +EXPORT_SYMBOL_GPL vmlinux 0xca583b10 devm_mdiobus_free +EXPORT_SYMBOL_GPL vmlinux 0xca6da94d pci_sriov_configure_simple +EXPORT_SYMBOL_GPL vmlinux 0xca70def0 ata_sff_hsm_move +EXPORT_SYMBOL_GPL vmlinux 0xca7d8764 kthread_freezable_should_stop +EXPORT_SYMBOL_GPL vmlinux 0xca9a1d5e ring_buffer_free +EXPORT_SYMBOL_GPL vmlinux 0xca9bc299 rdev_get_regmap +EXPORT_SYMBOL_GPL vmlinux 0xca9d2f8d rio_mport_send_doorbell +EXPORT_SYMBOL_GPL vmlinux 0xcaa96830 of_get_display_timings +EXPORT_SYMBOL_GPL vmlinux 0xcab89cf7 sfp_register_socket +EXPORT_SYMBOL_GPL vmlinux 0xcabbd503 devlink_port_params_unregister +EXPORT_SYMBOL_GPL vmlinux 0xcabe04de cpuidle_resume_and_unlock +EXPORT_SYMBOL_GPL vmlinux 0xcac12903 serdev_controller_add +EXPORT_SYMBOL_GPL vmlinux 0xcac5ba80 da903x_set_bits +EXPORT_SYMBOL_GPL vmlinux 0xcacd45c4 pci_hp_add_bridge +EXPORT_SYMBOL_GPL vmlinux 0xcacd88a0 __tracepoint_br_fdb_update +EXPORT_SYMBOL_GPL vmlinux 0xcad8d8d1 dev_pm_opp_get_suspend_opp_freq +EXPORT_SYMBOL_GPL vmlinux 0xcae7ce5d fsl_mc_get_version +EXPORT_SYMBOL_GPL vmlinux 0xcaf1d958 evtchn_get +EXPORT_SYMBOL_GPL vmlinux 0xcaff0477 xen_xenbus_fops +EXPORT_SYMBOL_GPL vmlinux 0xcb032276 mnt_drop_write +EXPORT_SYMBOL_GPL vmlinux 0xcb045bf5 inet_csk_get_port +EXPORT_SYMBOL_GPL vmlinux 0xcb0d1da4 fwnode_get_named_child_node +EXPORT_SYMBOL_GPL vmlinux 0xcb158823 of_modalias_node +EXPORT_SYMBOL_GPL vmlinux 0xcb15eee9 sdhci_pci_get_data +EXPORT_SYMBOL_GPL vmlinux 0xcb2bfe2b nvmem_register_notifier +EXPORT_SYMBOL_GPL vmlinux 0xcb3eca08 crypto_unregister_skcipher +EXPORT_SYMBOL_GPL vmlinux 0xcb3f591f mtk_pctrl_show_one_pin +EXPORT_SYMBOL_GPL vmlinux 0xcb5a258e rtm_getroute_parse_ip_proto +EXPORT_SYMBOL_GPL vmlinux 0xcb5b236d usb_of_get_companion_dev +EXPORT_SYMBOL_GPL vmlinux 0xcb62eec3 genphy_c45_config_aneg +EXPORT_SYMBOL_GPL vmlinux 0xcb66d510 i2c_parse_fw_timings +EXPORT_SYMBOL_GPL vmlinux 0xcb86b19e ping_rcv +EXPORT_SYMBOL_GPL vmlinux 0xcb877bcc fsl_mc_free_irqs +EXPORT_SYMBOL_GPL vmlinux 0xcba9d263 acpi_bus_trim +EXPORT_SYMBOL_GPL vmlinux 0xcbc269f7 class_compat_create_link +EXPORT_SYMBOL_GPL vmlinux 0xcbccdc4c pci_epc_stop +EXPORT_SYMBOL_GPL vmlinux 0xcbd572f3 kvm_vcpu_gfn_to_pfn +EXPORT_SYMBOL_GPL vmlinux 0xcbe11d2d rio_request_inb_dbell +EXPORT_SYMBOL_GPL vmlinux 0xcbe56bc2 zs_get_total_pages +EXPORT_SYMBOL_GPL vmlinux 0xcbf28482 crypto_req_done +EXPORT_SYMBOL_GPL vmlinux 0xcbfff5e4 spi_res_alloc +EXPORT_SYMBOL_GPL vmlinux 0xcc0fd0a7 k3_ringacc_ring_push_head +EXPORT_SYMBOL_GPL vmlinux 0xcc19ff8d gpiod_direction_input +EXPORT_SYMBOL_GPL vmlinux 0xcc2dbfd8 irq_domain_check_msi_remap +EXPORT_SYMBOL_GPL vmlinux 0xcc39c03e nvmem_unregister +EXPORT_SYMBOL_GPL vmlinux 0xcc3c090c dm_get_md +EXPORT_SYMBOL_GPL vmlinux 0xcc3f84f7 serial8250_handle_irq +EXPORT_SYMBOL_GPL vmlinux 0xcc549056 bpf_trace_run3 +EXPORT_SYMBOL_GPL vmlinux 0xcc55f7da of_phy_put +EXPORT_SYMBOL_GPL vmlinux 0xcc5b0719 skb_zerocopy_headlen +EXPORT_SYMBOL_GPL vmlinux 0xcc690938 edac_mc_alloc +EXPORT_SYMBOL_GPL vmlinux 0xcc768af4 securityfs_remove +EXPORT_SYMBOL_GPL vmlinux 0xcc862e73 pci_find_ext_capability +EXPORT_SYMBOL_GPL vmlinux 0xcc9268fc hwpoison_filter_enable +EXPORT_SYMBOL_GPL vmlinux 0xcc935375 walk_iomem_res_desc +EXPORT_SYMBOL_GPL vmlinux 0xcc97f7bd __kvm_set_memory_region +EXPORT_SYMBOL_GPL vmlinux 0xcca0d178 pm_runtime_irq_safe +EXPORT_SYMBOL_GPL vmlinux 0xcca602d6 usb_autopm_get_interface +EXPORT_SYMBOL_GPL vmlinux 0xccb94a65 serial8250_em485_config +EXPORT_SYMBOL_GPL vmlinux 0xccb9fb53 crypto_cipher_encrypt_one +EXPORT_SYMBOL_GPL vmlinux 0xccbb22a5 xhci_dbg_trace +EXPORT_SYMBOL_GPL vmlinux 0xccc59f0b tpm2_get_cc_attrs_tbl +EXPORT_SYMBOL_GPL vmlinux 0xcccfb2fa sata_deb_timing_hotplug +EXPORT_SYMBOL_GPL vmlinux 0xccd86806 ata_id_string +EXPORT_SYMBOL_GPL vmlinux 0xcce582e1 bus_remove_file +EXPORT_SYMBOL_GPL vmlinux 0xccec51e4 handle_bad_irq +EXPORT_SYMBOL_GPL vmlinux 0xccf52bc9 sfp_upstream_start +EXPORT_SYMBOL_GPL vmlinux 0xccfb3c69 ata_sff_exec_command +EXPORT_SYMBOL_GPL vmlinux 0xcd049a8e kstrdup_quotable_cmdline +EXPORT_SYMBOL_GPL vmlinux 0xcd1c1a53 trace_seq_printf +EXPORT_SYMBOL_GPL vmlinux 0xcd22c092 devm_thermal_zone_of_sensor_register +EXPORT_SYMBOL_GPL vmlinux 0xcd243785 regulator_notifier_call_chain +EXPORT_SYMBOL_GPL vmlinux 0xcd24e146 hash_digest_size +EXPORT_SYMBOL_GPL vmlinux 0xcd2530c1 pcie_bus_configure_settings +EXPORT_SYMBOL_GPL vmlinux 0xcd37e8ee power_supply_register_no_ws +EXPORT_SYMBOL_GPL vmlinux 0xcd3c1e38 crypto_stats_init +EXPORT_SYMBOL_GPL vmlinux 0xcd3e5c7c acpi_release_memory +EXPORT_SYMBOL_GPL vmlinux 0xcd57b243 apply_to_existing_page_range +EXPORT_SYMBOL_GPL vmlinux 0xcd6f2dc9 nf_log_buf_add +EXPORT_SYMBOL_GPL vmlinux 0xcd719aac ethnl_cable_test_fault_length +EXPORT_SYMBOL_GPL vmlinux 0xcd759b82 k3_ringacc_ring_reset +EXPORT_SYMBOL_GPL vmlinux 0xcd76ebd7 clk_gate_is_enabled +EXPORT_SYMBOL_GPL vmlinux 0xcd850943 xenbus_watch_pathfmt +EXPORT_SYMBOL_GPL vmlinux 0xcd8ac3c0 iommu_present +EXPORT_SYMBOL_GPL vmlinux 0xcd91b127 system_highpri_wq +EXPORT_SYMBOL_GPL vmlinux 0xcd96fb29 mtk_pinconf_adv_drive_set +EXPORT_SYMBOL_GPL vmlinux 0xcd974f00 rcu_all_qs +EXPORT_SYMBOL_GPL vmlinux 0xcd9cd2ff wakeme_after_rcu +EXPORT_SYMBOL_GPL vmlinux 0xcda74a99 dm_disk +EXPORT_SYMBOL_GPL vmlinux 0xcdb6adcc ras_userspace_consumers +EXPORT_SYMBOL_GPL vmlinux 0xcdc86b55 sched_clock +EXPORT_SYMBOL_GPL vmlinux 0xcdca3691 nr_irqs +EXPORT_SYMBOL_GPL vmlinux 0xcdcfd804 firmware_request_cache +EXPORT_SYMBOL_GPL vmlinux 0xcde26600 cppc_get_transition_latency +EXPORT_SYMBOL_GPL vmlinux 0xcdf29fa2 __hwspin_unlock +EXPORT_SYMBOL_GPL vmlinux 0xcdf4719c extcon_set_property_capability +EXPORT_SYMBOL_GPL vmlinux 0xcdfe2b49 decrypt_blob +EXPORT_SYMBOL_GPL vmlinux 0xcdff35f8 debugfs_read_file_bool +EXPORT_SYMBOL_GPL vmlinux 0xce0918e0 __udp_gso_segment +EXPORT_SYMBOL_GPL vmlinux 0xce0a4020 xenbus_directory +EXPORT_SYMBOL_GPL vmlinux 0xce1ee201 evm_verifyxattr +EXPORT_SYMBOL_GPL vmlinux 0xce30be29 class_unregister +EXPORT_SYMBOL_GPL vmlinux 0xce316d7e zynqmp_pm_set_sd_tapdelay +EXPORT_SYMBOL_GPL vmlinux 0xce3171b8 tpm_pm_resume +EXPORT_SYMBOL_GPL vmlinux 0xce358454 usb_acpi_set_power_state +EXPORT_SYMBOL_GPL vmlinux 0xce3f4439 devm_gpiod_put_array +EXPORT_SYMBOL_GPL vmlinux 0xce55cf78 pwmchip_add +EXPORT_SYMBOL_GPL vmlinux 0xce57fc68 mtk_pinconf_adv_pull_get +EXPORT_SYMBOL_GPL vmlinux 0xce6db656 rcu_is_watching +EXPORT_SYMBOL_GPL vmlinux 0xce735db2 soc_device_register +EXPORT_SYMBOL_GPL vmlinux 0xce85c790 nvmem_device_find +EXPORT_SYMBOL_GPL vmlinux 0xce9194fc crypto_alloc_sync_skcipher +EXPORT_SYMBOL_GPL vmlinux 0xcea28225 subsys_dev_iter_exit +EXPORT_SYMBOL_GPL vmlinux 0xceac8674 zynqmp_pm_read_pggs +EXPORT_SYMBOL_GPL vmlinux 0xceb1f126 mpi_read_raw_data +EXPORT_SYMBOL_GPL vmlinux 0xceb1fa2f irq_domain_create_hierarchy +EXPORT_SYMBOL_GPL vmlinux 0xcec1fb7e devm_fwnode_gpiod_get_index +EXPORT_SYMBOL_GPL vmlinux 0xcecd1ef9 usb_root_hub_lost_power +EXPORT_SYMBOL_GPL vmlinux 0xced48970 regmap_add_irq_chip +EXPORT_SYMBOL_GPL vmlinux 0xcee1641c kgdb_unregister_nmi_console +EXPORT_SYMBOL_GPL vmlinux 0xcee5c8d5 gov_attr_set_init +EXPORT_SYMBOL_GPL vmlinux 0xcee88e7a of_overlay_fdt_apply +EXPORT_SYMBOL_GPL vmlinux 0xceed8c16 __set_phys_to_machine +EXPORT_SYMBOL_GPL vmlinux 0xceffcb6d pci_epc_start +EXPORT_SYMBOL_GPL vmlinux 0xcf05ec4b proc_get_parent_data +EXPORT_SYMBOL_GPL vmlinux 0xcf266307 usb_hcd_is_primary_hcd +EXPORT_SYMBOL_GPL vmlinux 0xcf29f0ef xenbus_dev_fatal +EXPORT_SYMBOL_GPL vmlinux 0xcf405bee sk_detach_filter +EXPORT_SYMBOL_GPL vmlinux 0xcf54ea93 async_unregister_domain +EXPORT_SYMBOL_GPL vmlinux 0xcf59ee14 genphy_c45_read_status +EXPORT_SYMBOL_GPL vmlinux 0xcf5ba4bf iommu_device_register +EXPORT_SYMBOL_GPL vmlinux 0xcf60978a devlink_flash_update_begin_notify +EXPORT_SYMBOL_GPL vmlinux 0xcf6eb9ff mtk_pinconf_drive_set_raw +EXPORT_SYMBOL_GPL vmlinux 0xcf721498 usb_hcd_unlink_urb_from_ep +EXPORT_SYMBOL_GPL vmlinux 0xcf764e9f crypto_unregister_algs +EXPORT_SYMBOL_GPL vmlinux 0xcf8fac45 sbitmap_show +EXPORT_SYMBOL_GPL vmlinux 0xcf95f863 ata_common_sdev_attrs +EXPORT_SYMBOL_GPL vmlinux 0xcfbaa72e of_usb_get_dr_mode_by_phy +EXPORT_SYMBOL_GPL vmlinux 0xcfbe59e3 br_fdb_test_addr_hook +EXPORT_SYMBOL_GPL vmlinux 0xcfc15f4b rht_bucket_nested_insert +EXPORT_SYMBOL_GPL vmlinux 0xcfc37766 mtk_is_virt_gpio +EXPORT_SYMBOL_GPL vmlinux 0xcfc5108a devlink_fmsg_u8_pair_put +EXPORT_SYMBOL_GPL vmlinux 0xcfc7b4e4 rcu_barrier_tasks_trace +EXPORT_SYMBOL_GPL vmlinux 0xcfcb7a45 simple_attr_write +EXPORT_SYMBOL_GPL vmlinux 0xcfd30d71 acpi_os_map_memory +EXPORT_SYMBOL_GPL vmlinux 0xcfe68e1e dm_put +EXPORT_SYMBOL_GPL vmlinux 0xcfffb964 dev_pm_set_dedicated_wake_irq +EXPORT_SYMBOL_GPL vmlinux 0xd0025cf0 arizona_request_irq +EXPORT_SYMBOL_GPL vmlinux 0xd0026b9c devm_power_supply_register_no_ws +EXPORT_SYMBOL_GPL vmlinux 0xd0058322 dev_pm_disable_wake_irq +EXPORT_SYMBOL_GPL vmlinux 0xd00ac79f fsl_mc_device_group +EXPORT_SYMBOL_GPL vmlinux 0xd00ef5a0 devlink_dpipe_match_put +EXPORT_SYMBOL_GPL vmlinux 0xd0137185 of_device_uevent_modalias +EXPORT_SYMBOL_GPL vmlinux 0xd0191eb0 bio_associate_blkg_from_css +EXPORT_SYMBOL_GPL vmlinux 0xd02212b2 genphy_c45_aneg_done +EXPORT_SYMBOL_GPL vmlinux 0xd026d518 HYPERVISOR_vcpu_op +EXPORT_SYMBOL_GPL vmlinux 0xd03eaf4c schedule_hrtimeout_range +EXPORT_SYMBOL_GPL vmlinux 0xd04291cc mmc_send_status +EXPORT_SYMBOL_GPL vmlinux 0xd0458ccb xenbus_strstate +EXPORT_SYMBOL_GPL vmlinux 0xd06524ba raw_notifier_chain_unregister +EXPORT_SYMBOL_GPL vmlinux 0xd06736a5 of_clk_hw_onecell_get +EXPORT_SYMBOL_GPL vmlinux 0xd067d3c5 system_freezable_power_efficient_wq +EXPORT_SYMBOL_GPL vmlinux 0xd08e2779 crypto_alg_extsize +EXPORT_SYMBOL_GPL vmlinux 0xd08f5a67 __devm_regmap_init +EXPORT_SYMBOL_GPL vmlinux 0xd091824b skb_partial_csum_set +EXPORT_SYMBOL_GPL vmlinux 0xd09911a6 acpi_dev_get_irq_type +EXPORT_SYMBOL_GPL vmlinux 0xd09a3296 phy_resolve_aneg_linkmode +EXPORT_SYMBOL_GPL vmlinux 0xd0aa4407 iomap_seek_hole +EXPORT_SYMBOL_GPL vmlinux 0xd0b78e08 acpi_cppc_processor_exit +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 0xd0d40c85 devm_extcon_dev_free +EXPORT_SYMBOL_GPL vmlinux 0xd0db0f12 run_dax +EXPORT_SYMBOL_GPL vmlinux 0xd0eede14 efivars_register +EXPORT_SYMBOL_GPL vmlinux 0xd0ffdf61 regcache_sync +EXPORT_SYMBOL_GPL vmlinux 0xd10a0dff crypto_spawn_tfm +EXPORT_SYMBOL_GPL vmlinux 0xd11d2fa7 rockchip_pcie_init_port +EXPORT_SYMBOL_GPL vmlinux 0xd12a21b0 regulator_set_suspend_voltage +EXPORT_SYMBOL_GPL vmlinux 0xd12d7564 devm_of_phy_provider_unregister +EXPORT_SYMBOL_GPL vmlinux 0xd13b32cf inet6_hash_connect +EXPORT_SYMBOL_GPL vmlinux 0xd1456ccf stmpe_set_altfunc +EXPORT_SYMBOL_GPL vmlinux 0xd159586c net_prio_cgrp_subsys_enabled_key +EXPORT_SYMBOL_GPL vmlinux 0xd16724d9 nvmem_cell_get +EXPORT_SYMBOL_GPL vmlinux 0xd169de86 rio_unregister_scan +EXPORT_SYMBOL_GPL vmlinux 0xd1702782 scsi_host_busy_iter +EXPORT_SYMBOL_GPL vmlinux 0xd171f7af skb_to_sgvec +EXPORT_SYMBOL_GPL vmlinux 0xd17e4810 mdio_mux_init +EXPORT_SYMBOL_GPL vmlinux 0xd1810594 nd_cmd_out_size +EXPORT_SYMBOL_GPL vmlinux 0xd1971a5e __pci_reset_function_locked +EXPORT_SYMBOL_GPL vmlinux 0xd19b1a7a dev_attr_unload_heads +EXPORT_SYMBOL_GPL vmlinux 0xd19b6441 kvm_read_guest_page +EXPORT_SYMBOL_GPL vmlinux 0xd1aceceb clk_divider_ops +EXPORT_SYMBOL_GPL vmlinux 0xd1b26716 pci_platform_power_transition +EXPORT_SYMBOL_GPL vmlinux 0xd1cbb439 fsl_mc_bus_dpio_type +EXPORT_SYMBOL_GPL vmlinux 0xd1cbc23c add_timer_on +EXPORT_SYMBOL_GPL vmlinux 0xd1cc73d5 serdev_device_write_wakeup +EXPORT_SYMBOL_GPL vmlinux 0xd1d6ca4c usb_hcd_amd_remote_wakeup_quirk +EXPORT_SYMBOL_GPL vmlinux 0xd1dad33e fat_flush_inodes +EXPORT_SYMBOL_GPL vmlinux 0xd1ddddcf spi_async +EXPORT_SYMBOL_GPL vmlinux 0xd1e1ef8c device_link_add +EXPORT_SYMBOL_GPL vmlinux 0xd1e54530 sock_zerocopy_realloc +EXPORT_SYMBOL_GPL vmlinux 0xd1f2eee2 nf_logger_find_get +EXPORT_SYMBOL_GPL vmlinux 0xd1fa6a94 regcache_cache_bypass +EXPORT_SYMBOL_GPL vmlinux 0xd1fdb234 bus_for_each_dev +EXPORT_SYMBOL_GPL vmlinux 0xd20016d0 md_kick_rdev_from_array +EXPORT_SYMBOL_GPL vmlinux 0xd20bf6ba dcookie_unregister +EXPORT_SYMBOL_GPL vmlinux 0xd20ccbbb phy_check_downshift +EXPORT_SYMBOL_GPL vmlinux 0xd217e9e6 trace_set_clr_event +EXPORT_SYMBOL_GPL vmlinux 0xd21b61bd async_schedule_node_domain +EXPORT_SYMBOL_GPL vmlinux 0xd2217346 device_destroy +EXPORT_SYMBOL_GPL vmlinux 0xd222ece5 __clk_mux_determine_rate_closest +EXPORT_SYMBOL_GPL vmlinux 0xd24132f7 fwnode_property_read_string +EXPORT_SYMBOL_GPL vmlinux 0xd245f38f pci_enable_sriov +EXPORT_SYMBOL_GPL vmlinux 0xd24b7103 fsl_mc_portal_free +EXPORT_SYMBOL_GPL vmlinux 0xd24e9e8c klist_init +EXPORT_SYMBOL_GPL vmlinux 0xd2507082 set_online_page_callback +EXPORT_SYMBOL_GPL vmlinux 0xd250bc57 gpiochip_remove +EXPORT_SYMBOL_GPL vmlinux 0xd2554341 serial8250_do_set_ldisc +EXPORT_SYMBOL_GPL vmlinux 0xd259f7f7 __blk_req_zone_write_unlock +EXPORT_SYMBOL_GPL vmlinux 0xd25db1d6 ata_sff_tf_read +EXPORT_SYMBOL_GPL vmlinux 0xd260af0d ring_buffer_write +EXPORT_SYMBOL_GPL vmlinux 0xd267884e dma_buf_put +EXPORT_SYMBOL_GPL vmlinux 0xd268cf8e xenbus_probe_node +EXPORT_SYMBOL_GPL vmlinux 0xd273b1b1 __round_jiffies_up_relative +EXPORT_SYMBOL_GPL vmlinux 0xd27f215d gnttab_alloc_grant_references +EXPORT_SYMBOL_GPL vmlinux 0xd28327f6 msi_desc_to_pci_sysdata +EXPORT_SYMBOL_GPL vmlinux 0xd2898817 regulator_set_voltage_time_sel +EXPORT_SYMBOL_GPL vmlinux 0xd2922dd1 netlink_strict_get_check +EXPORT_SYMBOL_GPL vmlinux 0xd29356c6 debugfs_create_symlink +EXPORT_SYMBOL_GPL vmlinux 0xd2952322 acpi_processor_get_performance_info +EXPORT_SYMBOL_GPL vmlinux 0xd2a34842 md_start +EXPORT_SYMBOL_GPL vmlinux 0xd2ad5586 fat_scan +EXPORT_SYMBOL_GPL vmlinux 0xd2b10a05 ata_timing_find_mode +EXPORT_SYMBOL_GPL vmlinux 0xd2c7080b debugfs_create_u32_array +EXPORT_SYMBOL_GPL vmlinux 0xd2c8ae77 tracepoint_probe_unregister +EXPORT_SYMBOL_GPL vmlinux 0xd2dd4812 phy_basic_features +EXPORT_SYMBOL_GPL vmlinux 0xd2e07b0b da9052_disable_irq +EXPORT_SYMBOL_GPL vmlinux 0xd2efe854 balloon_page_alloc +EXPORT_SYMBOL_GPL vmlinux 0xd2fd7e2d put_pid +EXPORT_SYMBOL_GPL vmlinux 0xd303584e debugfs_create_u8 +EXPORT_SYMBOL_GPL vmlinux 0xd3053bdc i2c_adapter_depth +EXPORT_SYMBOL_GPL vmlinux 0xd30f7502 kvm_put_kvm_no_destroy +EXPORT_SYMBOL_GPL vmlinux 0xd311dd17 regulator_set_mode +EXPORT_SYMBOL_GPL vmlinux 0xd31a2ac5 ring_buffer_oldest_event_ts +EXPORT_SYMBOL_GPL vmlinux 0xd31c241d blkdev_ioctl +EXPORT_SYMBOL_GPL vmlinux 0xd32694be sbitmap_prepare_to_wait +EXPORT_SYMBOL_GPL vmlinux 0xd32df973 crypto_register_aeads +EXPORT_SYMBOL_GPL vmlinux 0xd33ada8b cci_probed +EXPORT_SYMBOL_GPL vmlinux 0xd36760ef __usb_get_extra_descriptor +EXPORT_SYMBOL_GPL vmlinux 0xd367c79a dmaengine_desc_get_metadata_ptr +EXPORT_SYMBOL_GPL vmlinux 0xd3712090 pci_host_common_probe +EXPORT_SYMBOL_GPL vmlinux 0xd3752c27 atomic_notifier_call_chain +EXPORT_SYMBOL_GPL vmlinux 0xd386c935 regulator_get_voltage +EXPORT_SYMBOL_GPL vmlinux 0xd38769f9 regulator_suspend_disable +EXPORT_SYMBOL_GPL vmlinux 0xd38bf76c device_property_read_string +EXPORT_SYMBOL_GPL vmlinux 0xd39c754d pm_genpd_add_device +EXPORT_SYMBOL_GPL vmlinux 0xd39e9848 put_itimerspec64 +EXPORT_SYMBOL_GPL vmlinux 0xd3bfa753 usb_bus_idr_lock +EXPORT_SYMBOL_GPL vmlinux 0xd3ca0a2c tps6586x_write +EXPORT_SYMBOL_GPL vmlinux 0xd3d8555e devlink_port_attrs_pci_pf_set +EXPORT_SYMBOL_GPL vmlinux 0xd3df6827 ata_sff_freeze +EXPORT_SYMBOL_GPL vmlinux 0xd3e61ee8 ata_sas_port_stop +EXPORT_SYMBOL_GPL vmlinux 0xd3f8f3f4 page_poisoning_enabled +EXPORT_SYMBOL_GPL vmlinux 0xd40196f5 crypto_register_ahash +EXPORT_SYMBOL_GPL vmlinux 0xd4034828 system_freezable_wq +EXPORT_SYMBOL_GPL vmlinux 0xd41a6a78 tty_ldisc_deref +EXPORT_SYMBOL_GPL vmlinux 0xd41d7d85 sdio_writeb +EXPORT_SYMBOL_GPL vmlinux 0xd423892f arizona_set_irq_wake +EXPORT_SYMBOL_GPL vmlinux 0xd4265dbd __irq_set_handler +EXPORT_SYMBOL_GPL vmlinux 0xd426dbc4 erst_get_record_count +EXPORT_SYMBOL_GPL vmlinux 0xd43e893e dma_buf_get +EXPORT_SYMBOL_GPL vmlinux 0xd44276d0 __pm_runtime_disable +EXPORT_SYMBOL_GPL vmlinux 0xd44809be regulator_set_soft_start_regmap +EXPORT_SYMBOL_GPL vmlinux 0xd44a5eac kgdb_register_nmi_console +EXPORT_SYMBOL_GPL vmlinux 0xd454443a bsg_job_get +EXPORT_SYMBOL_GPL vmlinux 0xd46af5ef cppc_get_perf_ctrs +EXPORT_SYMBOL_GPL vmlinux 0xd48c28a7 __hwspin_lock_timeout +EXPORT_SYMBOL_GPL vmlinux 0xd48f1951 crypto_ahash_setkey +EXPORT_SYMBOL_GPL vmlinux 0xd4938ddb pm_schedule_suspend +EXPORT_SYMBOL_GPL vmlinux 0xd4966b32 clk_register_fractional_divider +EXPORT_SYMBOL_GPL vmlinux 0xd4986de0 regulator_set_bypass_regmap +EXPORT_SYMBOL_GPL vmlinux 0xd4a03969 blk_mq_queue_inflight +EXPORT_SYMBOL_GPL vmlinux 0xd4b095d6 dpcon_open +EXPORT_SYMBOL_GPL vmlinux 0xd4b6157e devlink_health_reporter_recovery_done +EXPORT_SYMBOL_GPL vmlinux 0xd4c14632 system_unbound_wq +EXPORT_SYMBOL_GPL vmlinux 0xd4cc0c2e shash_no_setkey +EXPORT_SYMBOL_GPL vmlinux 0xd4da376d kthread_park +EXPORT_SYMBOL_GPL vmlinux 0xd4df3726 pwm_get_chip_data +EXPORT_SYMBOL_GPL vmlinux 0xd4e50fe4 ata_wait_after_reset +EXPORT_SYMBOL_GPL vmlinux 0xd4e6d7e0 linear_range_get_value +EXPORT_SYMBOL_GPL vmlinux 0xd50694ef led_classdev_suspend +EXPORT_SYMBOL_GPL vmlinux 0xd51aff59 pci_epc_set_bar +EXPORT_SYMBOL_GPL vmlinux 0xd5210685 cros_ec_check_features +EXPORT_SYMBOL_GPL vmlinux 0xd525f1ac dw_pcie_ep_linkup +EXPORT_SYMBOL_GPL vmlinux 0xd52bbf4d crypto_unregister_alg +EXPORT_SYMBOL_GPL vmlinux 0xd5301b2c linear_range_get_max_value +EXPORT_SYMBOL_GPL vmlinux 0xd5315dc4 ata_eh_freeze_port +EXPORT_SYMBOL_GPL vmlinux 0xd53c67b3 unregister_net_sysctl_table +EXPORT_SYMBOL_GPL vmlinux 0xd5474690 usb_role_switch_set_role +EXPORT_SYMBOL_GPL vmlinux 0xd5571248 fb_bl_default_curve +EXPORT_SYMBOL_GPL vmlinux 0xd55ad93b iommu_group_get_iommudata +EXPORT_SYMBOL_GPL vmlinux 0xd5673637 crypto_unregister_scomp +EXPORT_SYMBOL_GPL vmlinux 0xd5742104 regulator_register_notifier +EXPORT_SYMBOL_GPL vmlinux 0xd5772bd6 hvc_instantiate +EXPORT_SYMBOL_GPL vmlinux 0xd57fbd31 hwrng_unregister +EXPORT_SYMBOL_GPL vmlinux 0xd5807af3 k3_ringacc_ring_pop +EXPORT_SYMBOL_GPL vmlinux 0xd5835918 save_stack_trace_regs +EXPORT_SYMBOL_GPL vmlinux 0xd5884d08 spi_unregister_device +EXPORT_SYMBOL_GPL vmlinux 0xd58fd0df fuse_dev_free +EXPORT_SYMBOL_GPL vmlinux 0xd5943ef7 kvm_vcpu_mark_page_dirty +EXPORT_SYMBOL_GPL vmlinux 0xd59a1587 linkmode_resolve_pause +EXPORT_SYMBOL_GPL vmlinux 0xd5ad01c6 pci_bridge_secondary_bus_reset +EXPORT_SYMBOL_GPL vmlinux 0xd5ad357f __tracepoint_mc_event +EXPORT_SYMBOL_GPL vmlinux 0xd5b57ab3 __tracepoint_rpm_resume +EXPORT_SYMBOL_GPL vmlinux 0xd5c1c1dd driver_unregister +EXPORT_SYMBOL_GPL vmlinux 0xd5c7f797 edac_pci_handle_npe +EXPORT_SYMBOL_GPL vmlinux 0xd5cb98d8 usb_find_alt_setting +EXPORT_SYMBOL_GPL vmlinux 0xd5dab5f9 d_walk +EXPORT_SYMBOL_GPL vmlinux 0xd6037f6b dm_start_time_ns_from_clone +EXPORT_SYMBOL_GPL vmlinux 0xd6175525 clk_regmap_mux_ops +EXPORT_SYMBOL_GPL vmlinux 0xd6337c0f anon_transport_class_unregister +EXPORT_SYMBOL_GPL vmlinux 0xd633d049 devm_of_clk_add_hw_provider +EXPORT_SYMBOL_GPL vmlinux 0xd63c8744 xenbus_unregister_driver +EXPORT_SYMBOL_GPL vmlinux 0xd64ed259 __memcat_p +EXPORT_SYMBOL_GPL vmlinux 0xd6516e3d nexthop_select_path +EXPORT_SYMBOL_GPL vmlinux 0xd65504e5 pci_scan_child_bus +EXPORT_SYMBOL_GPL vmlinux 0xd66be8f3 shash_free_singlespawn_instance +EXPORT_SYMBOL_GPL vmlinux 0xd67364f7 eventfd_ctx_fdget +EXPORT_SYMBOL_GPL vmlinux 0xd69409c3 bpf_prog_select_runtime +EXPORT_SYMBOL_GPL vmlinux 0xd69d23e5 acpi_dev_get_property +EXPORT_SYMBOL_GPL vmlinux 0xd69d465d usb_role_switch_register +EXPORT_SYMBOL_GPL vmlinux 0xd6ad50e8 evict_inodes +EXPORT_SYMBOL_GPL vmlinux 0xd6c4f769 pinctrl_force_sleep +EXPORT_SYMBOL_GPL vmlinux 0xd6d7947b tpm_calc_ordinal_duration +EXPORT_SYMBOL_GPL vmlinux 0xd6da6ad5 sg_scsi_ioctl +EXPORT_SYMBOL_GPL vmlinux 0xd6dc6d06 fat_time_unix2fat +EXPORT_SYMBOL_GPL vmlinux 0xd71bd0b7 kthread_cancel_work_sync +EXPORT_SYMBOL_GPL vmlinux 0xd71c8881 crypto_unregister_ahash +EXPORT_SYMBOL_GPL vmlinux 0xd72feba2 xenbus_read_driver_state +EXPORT_SYMBOL_GPL vmlinux 0xd736a8d4 mmc_abort_tuning +EXPORT_SYMBOL_GPL vmlinux 0xd7399d2a efivar_entry_iter_end +EXPORT_SYMBOL_GPL vmlinux 0xd73da0f8 bpf_prog_alloc +EXPORT_SYMBOL_GPL vmlinux 0xd7543422 kern_mount +EXPORT_SYMBOL_GPL vmlinux 0xd75b20aa rsa_parse_priv_key +EXPORT_SYMBOL_GPL vmlinux 0xd768e985 regulator_has_full_constraints +EXPORT_SYMBOL_GPL vmlinux 0xd76a00da skb_send_sock_locked +EXPORT_SYMBOL_GPL vmlinux 0xd774957d mpi_write_to_sgl +EXPORT_SYMBOL_GPL vmlinux 0xd7954d78 usb_autopm_put_interface +EXPORT_SYMBOL_GPL vmlinux 0xd79b5455 rtnl_get_net_ns_capable +EXPORT_SYMBOL_GPL vmlinux 0xd7b3722f skb_splice_bits +EXPORT_SYMBOL_GPL vmlinux 0xd7bc858d xenbus_frontend_closed +EXPORT_SYMBOL_GPL vmlinux 0xd7c3432a fwnode_property_match_string +EXPORT_SYMBOL_GPL vmlinux 0xd7c39fff free_iova +EXPORT_SYMBOL_GPL vmlinux 0xd7cea889 edac_mod_work +EXPORT_SYMBOL_GPL vmlinux 0xd7d5840c crypto_stats_compress +EXPORT_SYMBOL_GPL vmlinux 0xd7d64f03 rio_dma_prep_xfer +EXPORT_SYMBOL_GPL vmlinux 0xd7f246d9 crypto_stats_kpp_compute_shared_secret +EXPORT_SYMBOL_GPL vmlinux 0xd803993f phy_modify_mmd +EXPORT_SYMBOL_GPL vmlinux 0xd80e7442 ipv6_bpf_stub +EXPORT_SYMBOL_GPL vmlinux 0xd81e4fb1 fwnode_graph_get_remote_port +EXPORT_SYMBOL_GPL vmlinux 0xd8237495 dev_pm_opp_find_level_exact +EXPORT_SYMBOL_GPL vmlinux 0xd825fd8a tty_mode_ioctl +EXPORT_SYMBOL_GPL vmlinux 0xd830ac60 netlink_add_tap +EXPORT_SYMBOL_GPL vmlinux 0xd8457ad9 pm_runtime_allow +EXPORT_SYMBOL_GPL vmlinux 0xd84ac997 devlink_port_register +EXPORT_SYMBOL_GPL vmlinux 0xd84d35bd dax_read_lock +EXPORT_SYMBOL_GPL vmlinux 0xd8713691 bgmac_phy_connect_direct +EXPORT_SYMBOL_GPL vmlinux 0xd876f7d3 dev_pm_opp_of_add_table +EXPORT_SYMBOL_GPL vmlinux 0xd87c4c33 regulator_get +EXPORT_SYMBOL_GPL vmlinux 0xd87fc0a0 usb_amd_prefetch_quirk +EXPORT_SYMBOL_GPL vmlinux 0xd88b3012 ahci_pmp_retry_srst_ops +EXPORT_SYMBOL_GPL vmlinux 0xd893b9c7 nvdimm_blk_region_create +EXPORT_SYMBOL_GPL vmlinux 0xd8b706b4 cpufreq_generic_init +EXPORT_SYMBOL_GPL vmlinux 0xd8bb5e43 acpi_subsys_restore_early +EXPORT_SYMBOL_GPL vmlinux 0xd8d24416 hisi_clk_register_mux +EXPORT_SYMBOL_GPL vmlinux 0xd8d41686 class_compat_remove_link +EXPORT_SYMBOL_GPL vmlinux 0xd8d68ab1 dmi_memdev_type +EXPORT_SYMBOL_GPL vmlinux 0xd8faf76a virtio_max_dma_size +EXPORT_SYMBOL_GPL vmlinux 0xd8fbb14d net_cls_cgrp_subsys_on_dfl_key +EXPORT_SYMBOL_GPL vmlinux 0xd8fdc6e5 edac_mc_free +EXPORT_SYMBOL_GPL vmlinux 0xd8fe9e37 pci_restore_msi_state +EXPORT_SYMBOL_GPL vmlinux 0xd90328cf sdio_writel +EXPORT_SYMBOL_GPL vmlinux 0xd9086502 zynqmp_pm_reset_assert +EXPORT_SYMBOL_GPL vmlinux 0xd90a93a7 k3_udma_glue_rx_get_irq +EXPORT_SYMBOL_GPL vmlinux 0xd92f0791 leds_list_lock +EXPORT_SYMBOL_GPL vmlinux 0xd93163ec __vfs_removexattr_locked +EXPORT_SYMBOL_GPL vmlinux 0xd93a5cb1 efivar_variable_is_removable +EXPORT_SYMBOL_GPL vmlinux 0xd94a714d devm_usb_get_phy +EXPORT_SYMBOL_GPL vmlinux 0xd95c73fa mtk_hw_get_value +EXPORT_SYMBOL_GPL vmlinux 0xd9627df1 __udp4_lib_lookup +EXPORT_SYMBOL_GPL vmlinux 0xd96babb4 interval_tree_iter_next +EXPORT_SYMBOL_GPL vmlinux 0xd99d73d8 fixed_phy_change_carrier +EXPORT_SYMBOL_GPL vmlinux 0xd9bc1df1 max8997_bulk_write +EXPORT_SYMBOL_GPL vmlinux 0xd9bd2a03 cpuidle_disable_device +EXPORT_SYMBOL_GPL vmlinux 0xd9c0b4c6 of_property_read_string_helper +EXPORT_SYMBOL_GPL vmlinux 0xd9c4e25b gfn_to_page +EXPORT_SYMBOL_GPL vmlinux 0xd9d5d879 sbitmap_queue_resize +EXPORT_SYMBOL_GPL vmlinux 0xd9dfceec fib6_check_nexthop +EXPORT_SYMBOL_GPL vmlinux 0xd9e11041 fsl_mc_get_endpoint +EXPORT_SYMBOL_GPL vmlinux 0xd9e24457 ring_buffer_peek +EXPORT_SYMBOL_GPL vmlinux 0xd9e8ca4b genphy_c45_read_link +EXPORT_SYMBOL_GPL vmlinux 0xd9efbc41 crypto_register_template +EXPORT_SYMBOL_GPL vmlinux 0xd9f02bda sysfs_create_file_ns +EXPORT_SYMBOL_GPL vmlinux 0xd9f2c0c4 fat_dir_empty +EXPORT_SYMBOL_GPL vmlinux 0xd9faa7a5 zynqmp_pm_set_pll_frac_mode +EXPORT_SYMBOL_GPL vmlinux 0xd9ff2172 ezx_pcap_write +EXPORT_SYMBOL_GPL vmlinux 0xda10d386 pci_check_and_unmask_intx +EXPORT_SYMBOL_GPL vmlinux 0xda14872f __pci_hp_register +EXPORT_SYMBOL_GPL vmlinux 0xda15a15d alarm_forward +EXPORT_SYMBOL_GPL vmlinux 0xda1685ca __inet_twsk_schedule +EXPORT_SYMBOL_GPL vmlinux 0xda320d31 sfp_module_start +EXPORT_SYMBOL_GPL vmlinux 0xda34743a gpiochip_get_desc +EXPORT_SYMBOL_GPL vmlinux 0xda3cc5f4 of_gen_pool_get +EXPORT_SYMBOL_GPL vmlinux 0xda3d4b0d fixed_phy_set_link_update +EXPORT_SYMBOL_GPL vmlinux 0xda5ca23d tps6586x_clr_bits +EXPORT_SYMBOL_GPL vmlinux 0xda7912d4 freq_qos_add_request +EXPORT_SYMBOL_GPL vmlinux 0xda850a6b devres_release_group +EXPORT_SYMBOL_GPL vmlinux 0xda86096a dev_attr_em_message +EXPORT_SYMBOL_GPL vmlinux 0xda886c4e ata_pio_need_iordy +EXPORT_SYMBOL_GPL vmlinux 0xda8988ed devm_acpi_dev_remove_driver_gpios +EXPORT_SYMBOL_GPL vmlinux 0xda8e1302 software_node_find_by_name +EXPORT_SYMBOL_GPL vmlinux 0xda907db3 crypto_unregister_skciphers +EXPORT_SYMBOL_GPL vmlinux 0xdaa06dc1 acpi_lpat_raw_to_temp +EXPORT_SYMBOL_GPL vmlinux 0xdab5a1eb interval_tree_insert +EXPORT_SYMBOL_GPL vmlinux 0xdab70330 handle_fasteoi_mask_irq +EXPORT_SYMBOL_GPL vmlinux 0xdab755ac kvm_clear_guest_page +EXPORT_SYMBOL_GPL vmlinux 0xdac9af89 bsg_job_done +EXPORT_SYMBOL_GPL vmlinux 0xdacae4bd usb_add_phy_dev +EXPORT_SYMBOL_GPL vmlinux 0xdacc7b69 bio_iov_iter_get_pages +EXPORT_SYMBOL_GPL vmlinux 0xdada39f3 usb_get_from_anchor +EXPORT_SYMBOL_GPL vmlinux 0xdaf4dfb3 fb_mode_option +EXPORT_SYMBOL_GPL vmlinux 0xdaf5c16e __cookie_v4_check +EXPORT_SYMBOL_GPL vmlinux 0xdafad885 memunmap_pages +EXPORT_SYMBOL_GPL vmlinux 0xdafcdc3a ktime_get_snapshot +EXPORT_SYMBOL_GPL vmlinux 0xdb1cba15 hwspin_lock_unregister +EXPORT_SYMBOL_GPL vmlinux 0xdb1d70cb virtio_config_enable +EXPORT_SYMBOL_GPL vmlinux 0xdb1d9076 dst_cache_get +EXPORT_SYMBOL_GPL vmlinux 0xdb20d057 devlink_params_register +EXPORT_SYMBOL_GPL vmlinux 0xdb25da3e irq_work_queue +EXPORT_SYMBOL_GPL vmlinux 0xdb33f713 fsstack_copy_inode_size +EXPORT_SYMBOL_GPL vmlinux 0xdb3a89d7 wm5110_i2c_regmap +EXPORT_SYMBOL_GPL vmlinux 0xdb59abba pinmux_generic_get_function_name +EXPORT_SYMBOL_GPL vmlinux 0xdb5a934e clkdev_create +EXPORT_SYMBOL_GPL vmlinux 0xdb63a944 acpi_lpat_get_conversion_table +EXPORT_SYMBOL_GPL vmlinux 0xdb6a6419 fwnode_property_read_u64_array +EXPORT_SYMBOL_GPL vmlinux 0xdb735885 alarm_cancel +EXPORT_SYMBOL_GPL vmlinux 0xdb8a1b3f usermodehelper_read_trylock +EXPORT_SYMBOL_GPL vmlinux 0xdb95536b ipv4_redirect +EXPORT_SYMBOL_GPL vmlinux 0xdb971970 fat_setattr +EXPORT_SYMBOL_GPL vmlinux 0xdb9dbbc6 tcp_set_state +EXPORT_SYMBOL_GPL vmlinux 0xdba11456 ahci_platform_disable_regulators +EXPORT_SYMBOL_GPL vmlinux 0xdba9cc92 pci_get_dsn +EXPORT_SYMBOL_GPL vmlinux 0xdbc26b33 do_xdp_generic +EXPORT_SYMBOL_GPL vmlinux 0xdbdcfad1 virtqueue_enable_cb_delayed +EXPORT_SYMBOL_GPL vmlinux 0xdbea3262 serdev_device_alloc +EXPORT_SYMBOL_GPL vmlinux 0xdbf13a0f usb_get_dr_mode +EXPORT_SYMBOL_GPL vmlinux 0xdbf29726 __tracepoint_neigh_timer_handler +EXPORT_SYMBOL_GPL vmlinux 0xdbf7cb70 mpi_get_nbits +EXPORT_SYMBOL_GPL vmlinux 0xdc02b583 clk_hw_set_rate_range +EXPORT_SYMBOL_GPL vmlinux 0xdc0fe7a1 rio_get_asm +EXPORT_SYMBOL_GPL vmlinux 0xdc12b226 pm_genpd_add_subdomain +EXPORT_SYMBOL_GPL vmlinux 0xdc139c13 k3_udma_glue_tx_get_hdesc_size +EXPORT_SYMBOL_GPL vmlinux 0xdc14a211 xen_hvm_evtchn_do_upcall +EXPORT_SYMBOL_GPL vmlinux 0xdc21e866 hrtimer_forward +EXPORT_SYMBOL_GPL vmlinux 0xdc2e793d tty_get_pgrp +EXPORT_SYMBOL_GPL vmlinux 0xdc3d14da of_clk_add_hw_provider +EXPORT_SYMBOL_GPL vmlinux 0xdc45a5db edac_stop_work +EXPORT_SYMBOL_GPL vmlinux 0xdc538287 nexthop_find_by_id +EXPORT_SYMBOL_GPL vmlinux 0xdc6596fa irq_set_parent +EXPORT_SYMBOL_GPL vmlinux 0xdc6699cb acpi_dev_free_resource_list +EXPORT_SYMBOL_GPL vmlinux 0xdc71876d serial8250_request_dma +EXPORT_SYMBOL_GPL vmlinux 0xdc7df67f apei_exec_ctx_init +EXPORT_SYMBOL_GPL vmlinux 0xdc825d6c usb_amd_quirk_pll_disable +EXPORT_SYMBOL_GPL vmlinux 0xdc97af2e syscore_suspend +EXPORT_SYMBOL_GPL vmlinux 0xdc9df0bf xhci_init_driver +EXPORT_SYMBOL_GPL vmlinux 0xdc9fa232 raw_notifier_chain_register +EXPORT_SYMBOL_GPL vmlinux 0xdcaeb934 bus_unregister +EXPORT_SYMBOL_GPL vmlinux 0xdcb0326a irq_domain_associate +EXPORT_SYMBOL_GPL vmlinux 0xdcba0656 pci_ecam_free +EXPORT_SYMBOL_GPL vmlinux 0xdcc2be13 of_thermal_get_trip_points +EXPORT_SYMBOL_GPL vmlinux 0xdccd03e5 ftrace_set_notrace +EXPORT_SYMBOL_GPL vmlinux 0xdcd18d2f queue_iova +EXPORT_SYMBOL_GPL vmlinux 0xdcd959f2 pinmux_generic_add_function +EXPORT_SYMBOL_GPL vmlinux 0xdce23a83 sbitmap_queue_wake_up +EXPORT_SYMBOL_GPL vmlinux 0xdd060504 kernel_read_file_from_fd +EXPORT_SYMBOL_GPL vmlinux 0xdd066838 __fput_sync +EXPORT_SYMBOL_GPL vmlinux 0xdd0762df set_worker_desc +EXPORT_SYMBOL_GPL vmlinux 0xdd07e356 max8997_write_reg +EXPORT_SYMBOL_GPL vmlinux 0xdd1ad588 mmu_interval_notifier_insert_locked +EXPORT_SYMBOL_GPL vmlinux 0xdd1fca4d irq_chip_eoi_parent +EXPORT_SYMBOL_GPL vmlinux 0xdd2678e3 ata_port_abort +EXPORT_SYMBOL_GPL vmlinux 0xdd391eff profile_event_unregister +EXPORT_SYMBOL_GPL vmlinux 0xdd626ee3 fuse_len_args +EXPORT_SYMBOL_GPL vmlinux 0xdd63a4c2 of_device_modalias +EXPORT_SYMBOL_GPL vmlinux 0xdd7d77dd shmem_zero_setup +EXPORT_SYMBOL_GPL vmlinux 0xdd7f0765 __tracepoint_powernv_throttle +EXPORT_SYMBOL_GPL vmlinux 0xdd7f64f0 cpu_logical_map +EXPORT_SYMBOL_GPL vmlinux 0xdd877507 __phy_modify_mmd +EXPORT_SYMBOL_GPL vmlinux 0xdd90ec02 get_user_pages_fast +EXPORT_SYMBOL_GPL vmlinux 0xdd9ad49a clk_regmap_mux_ro_ops +EXPORT_SYMBOL_GPL vmlinux 0xdd9dde6f iommu_domain_get_attr +EXPORT_SYMBOL_GPL vmlinux 0xddb36f94 pci_pr3_present +EXPORT_SYMBOL_GPL vmlinux 0xddb708e4 mc_send_command +EXPORT_SYMBOL_GPL vmlinux 0xddbc4e1b phy_select_page +EXPORT_SYMBOL_GPL vmlinux 0xddbeeecc pci_lock_rescan_remove +EXPORT_SYMBOL_GPL vmlinux 0xddcdea05 crypto_register_akcipher +EXPORT_SYMBOL_GPL vmlinux 0xddd67936 wm5110_patch +EXPORT_SYMBOL_GPL vmlinux 0xddd8e2ac pci_enable_pcie_error_reporting +EXPORT_SYMBOL_GPL vmlinux 0xdde13440 rio_register_driver +EXPORT_SYMBOL_GPL vmlinux 0xddeb222c input_ff_erase +EXPORT_SYMBOL_GPL vmlinux 0xddf3eb77 strp_check_rcv +EXPORT_SYMBOL_GPL vmlinux 0xddfcf498 dev_coredumpv +EXPORT_SYMBOL_GPL vmlinux 0xde077809 dpcon_close +EXPORT_SYMBOL_GPL vmlinux 0xde09a94d xas_find +EXPORT_SYMBOL_GPL vmlinux 0xde156471 ata_bmdma_status +EXPORT_SYMBOL_GPL vmlinux 0xde1b037d device_release_driver +EXPORT_SYMBOL_GPL vmlinux 0xde2d3af0 acpi_dev_resource_ext_address_space +EXPORT_SYMBOL_GPL vmlinux 0xde6f1851 TSS_checkhmac1 +EXPORT_SYMBOL_GPL vmlinux 0xde750504 devm_free_pages +EXPORT_SYMBOL_GPL vmlinux 0xde9ab8c7 xenbus_rm +EXPORT_SYMBOL_GPL vmlinux 0xdea702e1 pm_generic_suspend +EXPORT_SYMBOL_GPL vmlinux 0xdea9919b kmsg_dump_unregister +EXPORT_SYMBOL_GPL vmlinux 0xdebec2d6 ip6_route_lookup +EXPORT_SYMBOL_GPL vmlinux 0xdee6ed3d xenbus_dev_cancel +EXPORT_SYMBOL_GPL vmlinux 0xdefe29f3 dm_internal_suspend_fast +EXPORT_SYMBOL_GPL vmlinux 0xdeffa0a7 edac_raw_mc_handle_error +EXPORT_SYMBOL_GPL vmlinux 0xdf04d7a0 clk_hw_get_num_parents +EXPORT_SYMBOL_GPL vmlinux 0xdf0ca3f4 cpu_latency_qos_request_active +EXPORT_SYMBOL_GPL vmlinux 0xdf0f75c6 eventfd_signal +EXPORT_SYMBOL_GPL vmlinux 0xdf223247 __tracepoint_sched_overutilized_tp +EXPORT_SYMBOL_GPL vmlinux 0xdf2738bb cpu_cgrp_subsys_enabled_key +EXPORT_SYMBOL_GPL vmlinux 0xdf27e90b iomap_zero_range +EXPORT_SYMBOL_GPL vmlinux 0xdf2f36c6 ata_sas_tport_delete +EXPORT_SYMBOL_GPL vmlinux 0xdf424b1e rio_mport_class +EXPORT_SYMBOL_GPL vmlinux 0xdf429f10 of_platform_populate +EXPORT_SYMBOL_GPL vmlinux 0xdf46a5c9 init_iova_domain +EXPORT_SYMBOL_GPL vmlinux 0xdf7ee8bd led_classdev_register_ext +EXPORT_SYMBOL_GPL vmlinux 0xdf905abe dev_fwnode +EXPORT_SYMBOL_GPL vmlinux 0xdf9208c0 alloc_workqueue +EXPORT_SYMBOL_GPL vmlinux 0xdf92f1c4 sata_std_hardreset +EXPORT_SYMBOL_GPL vmlinux 0xdfa2e2f9 usb_queue_reset_device +EXPORT_SYMBOL_GPL vmlinux 0xdfab4744 to_software_node +EXPORT_SYMBOL_GPL vmlinux 0xdfab90f2 device_attach +EXPORT_SYMBOL_GPL vmlinux 0xdfb60767 __ata_change_queue_depth +EXPORT_SYMBOL_GPL vmlinux 0xdfb62e52 blk_mq_unfreeze_queue +EXPORT_SYMBOL_GPL vmlinux 0xdfc807f1 blk_freeze_queue_start +EXPORT_SYMBOL_GPL vmlinux 0xdfcb6c90 mctrl_gpio_set +EXPORT_SYMBOL_GPL vmlinux 0xdfd551cc mtk_eint_set_debounce +EXPORT_SYMBOL_GPL vmlinux 0xdfe0a848 dw_pcie_host_init +EXPORT_SYMBOL_GPL vmlinux 0xe0074def gpiochip_remove_pin_ranges +EXPORT_SYMBOL_GPL vmlinux 0xe007a384 preempt_notifier_register +EXPORT_SYMBOL_GPL vmlinux 0xe0178044 regulator_set_drvdata +EXPORT_SYMBOL_GPL vmlinux 0xe02be1a7 dev_pm_qos_expose_latency_tolerance +EXPORT_SYMBOL_GPL vmlinux 0xe037666e unregister_ftrace_function +EXPORT_SYMBOL_GPL vmlinux 0xe03cd8eb devlink_unregister +EXPORT_SYMBOL_GPL vmlinux 0xe040167b edac_pci_add_device +EXPORT_SYMBOL_GPL vmlinux 0xe05e0df2 dpbp_reset +EXPORT_SYMBOL_GPL vmlinux 0xe05e2f85 nexthop_free_rcu +EXPORT_SYMBOL_GPL vmlinux 0xe0706378 sched_trace_rq_avg_irq +EXPORT_SYMBOL_GPL vmlinux 0xe071d05d zs_pool_stats +EXPORT_SYMBOL_GPL vmlinux 0xe0b1c103 clk_set_max_rate +EXPORT_SYMBOL_GPL vmlinux 0xe0c54b39 pid_vnr +EXPORT_SYMBOL_GPL vmlinux 0xe0c7e9c6 register_ftrace_function +EXPORT_SYMBOL_GPL vmlinux 0xe0e3147c HYPERVISOR_sched_op +EXPORT_SYMBOL_GPL vmlinux 0xe0f001a5 acpi_dev_remove_driver_gpios +EXPORT_SYMBOL_GPL vmlinux 0xe0f67f92 spi_mem_dirmap_destroy +EXPORT_SYMBOL_GPL vmlinux 0xe0fd7ebb bpf_verifier_log_write +EXPORT_SYMBOL_GPL vmlinux 0xe1002eb5 devlink_port_type_eth_set +EXPORT_SYMBOL_GPL vmlinux 0xe10857a7 blkcg_policy_unregister +EXPORT_SYMBOL_GPL vmlinux 0xe10cd6ad erst_get_record_id_begin +EXPORT_SYMBOL_GPL vmlinux 0xe11295fe cpufreq_generic_attr +EXPORT_SYMBOL_GPL vmlinux 0xe119e9ea __rio_local_read_config_16 +EXPORT_SYMBOL_GPL vmlinux 0xe141d8dd nvdimm_region_notify +EXPORT_SYMBOL_GPL vmlinux 0xe14ca317 devlink_net +EXPORT_SYMBOL_GPL vmlinux 0xe156af70 unregister_acpi_bus_type +EXPORT_SYMBOL_GPL vmlinux 0xe15c22a1 devm_pinctrl_get +EXPORT_SYMBOL_GPL vmlinux 0xe167d9f1 bio_clone_blkg_association +EXPORT_SYMBOL_GPL vmlinux 0xe1775ee7 dm_get_reserved_bio_based_ios +EXPORT_SYMBOL_GPL vmlinux 0xe17e6f37 iommu_domain_window_disable +EXPORT_SYMBOL_GPL vmlinux 0xe181f07b udp4_lib_lookup_skb +EXPORT_SYMBOL_GPL vmlinux 0xe18bcb77 dw8250_setup_port +EXPORT_SYMBOL_GPL vmlinux 0xe1902b5d acpi_dev_pm_attach +EXPORT_SYMBOL_GPL vmlinux 0xe194ec7a locks_release_private +EXPORT_SYMBOL_GPL vmlinux 0xe1978fa8 dma_buf_fd +EXPORT_SYMBOL_GPL vmlinux 0xe1a8d7c9 net_rwsem +EXPORT_SYMBOL_GPL vmlinux 0xe1bd6c99 rio_init_mports +EXPORT_SYMBOL_GPL vmlinux 0xe1c63523 blk_ksm_get_slot_idx +EXPORT_SYMBOL_GPL vmlinux 0xe1c73994 get_kernel_page +EXPORT_SYMBOL_GPL vmlinux 0xe1d2712e irq_chip_release_resources_parent +EXPORT_SYMBOL_GPL vmlinux 0xe1d9e8df md_rdev_clear +EXPORT_SYMBOL_GPL vmlinux 0xe1e2c309 inet_csk_compat_getsockopt +EXPORT_SYMBOL_GPL vmlinux 0xe1e4df72 sock_zerocopy_callback +EXPORT_SYMBOL_GPL vmlinux 0xe20cd8cf gpiochip_enable_irq +EXPORT_SYMBOL_GPL vmlinux 0xe215c53a devlink_port_param_driverinit_value_set +EXPORT_SYMBOL_GPL vmlinux 0xe217ffeb pinctrl_generic_get_group +EXPORT_SYMBOL_GPL vmlinux 0xe21e70bc rhashtable_walk_stop +EXPORT_SYMBOL_GPL vmlinux 0xe2255cfe pinmux_generic_get_function_count +EXPORT_SYMBOL_GPL vmlinux 0xe2284e73 blkg_lookup_slowpath +EXPORT_SYMBOL_GPL vmlinux 0xe2293b47 trace_event_buffer_reserve +EXPORT_SYMBOL_GPL vmlinux 0xe22d848a efivar_entry_size +EXPORT_SYMBOL_GPL vmlinux 0xe233762a input_event_from_user +EXPORT_SYMBOL_GPL vmlinux 0xe23b3431 pci_assign_unassigned_bus_resources +EXPORT_SYMBOL_GPL vmlinux 0xe24af2de unix_inq_len +EXPORT_SYMBOL_GPL vmlinux 0xe2582a12 btree_init +EXPORT_SYMBOL_GPL vmlinux 0xe25cc6fe thermal_zone_get_temp +EXPORT_SYMBOL_GPL vmlinux 0xe298bc6d sock_diag_unregister +EXPORT_SYMBOL_GPL vmlinux 0xe29ad433 device_connection_find +EXPORT_SYMBOL_GPL vmlinux 0xe29c9757 fat_free_clusters +EXPORT_SYMBOL_GPL vmlinux 0xe29d353c clk_hw_get_rate +EXPORT_SYMBOL_GPL vmlinux 0xe2a960db pwm_adjust_config +EXPORT_SYMBOL_GPL vmlinux 0xe2aa4a5e gpiochip_irqchip_irq_valid +EXPORT_SYMBOL_GPL vmlinux 0xe2b3207a unregister_switchdev_notifier +EXPORT_SYMBOL_GPL vmlinux 0xe2c786a7 fsnotify +EXPORT_SYMBOL_GPL vmlinux 0xe2ce2b4d evm_set_key +EXPORT_SYMBOL_GPL vmlinux 0xe2d7489b kvm_vcpu_read_guest +EXPORT_SYMBOL_GPL vmlinux 0xe2f2db03 efivar_entry_iter +EXPORT_SYMBOL_GPL vmlinux 0xe2fa7dc2 xen_set_affinity_evtchn +EXPORT_SYMBOL_GPL vmlinux 0xe3043ff9 request_any_context_irq +EXPORT_SYMBOL_GPL vmlinux 0xe3075a64 crypto_alloc_akcipher +EXPORT_SYMBOL_GPL vmlinux 0xe3196a1d of_get_phy_mode +EXPORT_SYMBOL_GPL vmlinux 0xe31ca0bc pinconf_generic_dt_node_to_map +EXPORT_SYMBOL_GPL vmlinux 0xe338c5ac inet_hashinfo2_init_mod +EXPORT_SYMBOL_GPL vmlinux 0xe370ea4f mbox_chan_received_data +EXPORT_SYMBOL_GPL vmlinux 0xe37174b8 ata_timing_compute +EXPORT_SYMBOL_GPL vmlinux 0xe38cba53 bio_associate_blkg +EXPORT_SYMBOL_GPL vmlinux 0xe38f5a9a debugfs_lookup +EXPORT_SYMBOL_GPL vmlinux 0xe393462c ohci_hub_control +EXPORT_SYMBOL_GPL vmlinux 0xe3948ff4 acpi_walk_dep_device_list +EXPORT_SYMBOL_GPL vmlinux 0xe397caf5 seq_buf_printf +EXPORT_SYMBOL_GPL vmlinux 0xe39d0794 usb_phy_roothub_exit +EXPORT_SYMBOL_GPL vmlinux 0xe3a4c344 sdio_f0_readb +EXPORT_SYMBOL_GPL vmlinux 0xe3aa975e security_inode_create +EXPORT_SYMBOL_GPL vmlinux 0xe3afac1d iommu_fwspec_add_ids +EXPORT_SYMBOL_GPL vmlinux 0xe3b09712 kprobe_event_delete +EXPORT_SYMBOL_GPL vmlinux 0xe3b9cf2a tcp_get_syncookie_mss +EXPORT_SYMBOL_GPL vmlinux 0xe3bd2a63 devfreq_cooling_unregister +EXPORT_SYMBOL_GPL vmlinux 0xe3cd5fae klist_iter_init +EXPORT_SYMBOL_GPL vmlinux 0xe3dcad19 debugfs_create_regset32 +EXPORT_SYMBOL_GPL vmlinux 0xe3ebf9bd arch_set_freq_scale +EXPORT_SYMBOL_GPL vmlinux 0xe3fce571 fuse_dev_fiq_ops +EXPORT_SYMBOL_GPL vmlinux 0xe40531d7 gpiod_to_irq +EXPORT_SYMBOL_GPL vmlinux 0xe40bb23e devlink_health_reporter_priv +EXPORT_SYMBOL_GPL vmlinux 0xe40c0510 tcp_rate_check_app_limited +EXPORT_SYMBOL_GPL vmlinux 0xe4248980 cper_estatus_print +EXPORT_SYMBOL_GPL vmlinux 0xe42ece72 devlink_trap_policers_unregister +EXPORT_SYMBOL_GPL vmlinux 0xe4309905 syscore_resume +EXPORT_SYMBOL_GPL vmlinux 0xe43f3e7b md_find_rdev_nr_rcu +EXPORT_SYMBOL_GPL vmlinux 0xe444cc57 nvdimm_clear_poison +EXPORT_SYMBOL_GPL vmlinux 0xe4493bc5 crypto_comp_decompress +EXPORT_SYMBOL_GPL vmlinux 0xe456014f nfnl_ct_hook +EXPORT_SYMBOL_GPL vmlinux 0xe461d98e fwnode_property_get_reference_args +EXPORT_SYMBOL_GPL vmlinux 0xe46dd0fd xdp_rxq_info_is_reg +EXPORT_SYMBOL_GPL vmlinux 0xe4770c16 dm_send_uevents +EXPORT_SYMBOL_GPL vmlinux 0xe477f727 crypto_stats_ahash_update +EXPORT_SYMBOL_GPL vmlinux 0xe47f50f3 devm_clk_hw_register +EXPORT_SYMBOL_GPL vmlinux 0xe4874aef __tracepoint_add_device_to_group +EXPORT_SYMBOL_GPL vmlinux 0xe48fd48c wm8350_clear_bits +EXPORT_SYMBOL_GPL vmlinux 0xe495926a alarm_restart +EXPORT_SYMBOL_GPL vmlinux 0xe4971ade tracing_alloc_snapshot +EXPORT_SYMBOL_GPL vmlinux 0xe4a38c32 elv_register +EXPORT_SYMBOL_GPL vmlinux 0xe4b064f9 pcie_link_speed +EXPORT_SYMBOL_GPL vmlinux 0xe4b50947 rio_attach_device +EXPORT_SYMBOL_GPL vmlinux 0xe4b818c3 phy_speed_to_str +EXPORT_SYMBOL_GPL vmlinux 0xe4c1b714 ip6_datagram_send_ctl +EXPORT_SYMBOL_GPL vmlinux 0xe4c2c66c rtc_ktime_to_tm +EXPORT_SYMBOL_GPL vmlinux 0xe4c76c90 pci_bus_max_busnr +EXPORT_SYMBOL_GPL vmlinux 0xe4c83fb0 acpi_gpiochip_free_interrupts +EXPORT_SYMBOL_GPL vmlinux 0xe4c99d07 gpiod_get_optional +EXPORT_SYMBOL_GPL vmlinux 0xe4e48b12 swphy_validate_state +EXPORT_SYMBOL_GPL vmlinux 0xe4fc2bf6 edac_pci_del_device +EXPORT_SYMBOL_GPL vmlinux 0xe502d43c usb_altnum_to_altsetting +EXPORT_SYMBOL_GPL vmlinux 0xe50edca2 blockdev_superblock +EXPORT_SYMBOL_GPL vmlinux 0xe51028d1 sysfs_group_change_owner +EXPORT_SYMBOL_GPL vmlinux 0xe52a4ac9 sock_zerocopy_put +EXPORT_SYMBOL_GPL vmlinux 0xe52f50e0 sfp_add_phy +EXPORT_SYMBOL_GPL vmlinux 0xe538790e rtc_update_irq_enable +EXPORT_SYMBOL_GPL vmlinux 0xe549e931 platform_irq_count +EXPORT_SYMBOL_GPL vmlinux 0xe54c6d58 put_iova_domain +EXPORT_SYMBOL_GPL vmlinux 0xe5516728 k3_udma_glue_tx_get_irq +EXPORT_SYMBOL_GPL vmlinux 0xe5538557 ftrace_ops_set_global_filter +EXPORT_SYMBOL_GPL vmlinux 0xe55e5776 nexthop_for_each_fib6_nh +EXPORT_SYMBOL_GPL vmlinux 0xe56b7fe5 srcu_init_notifier_head +EXPORT_SYMBOL_GPL vmlinux 0xe5846f49 of_k3_ringacc_get_by_phandle +EXPORT_SYMBOL_GPL vmlinux 0xe5867698 dw_pcie_setup_rc +EXPORT_SYMBOL_GPL vmlinux 0xe5883bd9 class_compat_unregister +EXPORT_SYMBOL_GPL vmlinux 0xe58a38b1 handle_fasteoi_nmi +EXPORT_SYMBOL_GPL vmlinux 0xe59bd196 irq_gc_mask_set_bit +EXPORT_SYMBOL_GPL vmlinux 0xe5a8bd9b usb_hc_died +EXPORT_SYMBOL_GPL vmlinux 0xe5a925d3 zynqmp_pm_init_finalize +EXPORT_SYMBOL_GPL vmlinux 0xe5c02b64 freq_qos_remove_request +EXPORT_SYMBOL_GPL vmlinux 0xe5cb1943 hisi_clk_register_divider +EXPORT_SYMBOL_GPL vmlinux 0xe5d3179c ata_sff_port_intr +EXPORT_SYMBOL_GPL vmlinux 0xe5f97bd8 __raw_v6_lookup +EXPORT_SYMBOL_GPL vmlinux 0xe60632a9 edac_queue_work +EXPORT_SYMBOL_GPL vmlinux 0xe609d1c6 __reset_control_get +EXPORT_SYMBOL_GPL vmlinux 0xe60a5e8d pids_cgrp_subsys_enabled_key +EXPORT_SYMBOL_GPL vmlinux 0xe60dc58d phy_modify +EXPORT_SYMBOL_GPL vmlinux 0xe61c6aef of_get_dma_window +EXPORT_SYMBOL_GPL vmlinux 0xe61cb892 dma_request_chan_by_mask +EXPORT_SYMBOL_GPL vmlinux 0xe628bb9f phy_fibre_port_array +EXPORT_SYMBOL_GPL vmlinux 0xe6316fb2 ata_sff_dev_select +EXPORT_SYMBOL_GPL vmlinux 0xe6329fe0 devm_kfree +EXPORT_SYMBOL_GPL vmlinux 0xe63c84b8 clk_hw_get_flags +EXPORT_SYMBOL_GPL vmlinux 0xe643ddad mtk_mmsys_ddp_disconnect +EXPORT_SYMBOL_GPL vmlinux 0xe64b8b4a clk_bulk_get_optional +EXPORT_SYMBOL_GPL vmlinux 0xe64f2c97 __rio_local_write_config_8 +EXPORT_SYMBOL_GPL vmlinux 0xe669106c fscrypt_ioctl_remove_key +EXPORT_SYMBOL_GPL vmlinux 0xe67c3574 sysfs_create_link_nowarn +EXPORT_SYMBOL_GPL vmlinux 0xe696157f rdev_get_drvdata +EXPORT_SYMBOL_GPL vmlinux 0xe6a218bc pci_epc_get +EXPORT_SYMBOL_GPL vmlinux 0xe6bb90df skcipher_walk_aead_encrypt +EXPORT_SYMBOL_GPL vmlinux 0xe6cfac65 srcu_barrier +EXPORT_SYMBOL_GPL vmlinux 0xe6d3d94c dev_pm_opp_get_of_node +EXPORT_SYMBOL_GPL vmlinux 0xe6e40502 rcu_get_gp_seq +EXPORT_SYMBOL_GPL vmlinux 0xe6e988c5 k3_ringacc_get_tisci_dev_id +EXPORT_SYMBOL_GPL vmlinux 0xe6ed02b9 kvm_write_guest +EXPORT_SYMBOL_GPL vmlinux 0xe6f52443 klist_add_head +EXPORT_SYMBOL_GPL vmlinux 0xe6f5e6f5 xas_clear_mark +EXPORT_SYMBOL_GPL vmlinux 0xe6f83837 acpi_bus_attach_private_data +EXPORT_SYMBOL_GPL vmlinux 0xe6fdca97 validate_xmit_skb_list +EXPORT_SYMBOL_GPL vmlinux 0xe705af65 pci_probe_reset_bus +EXPORT_SYMBOL_GPL vmlinux 0xe71317fe devfreq_cooling_register +EXPORT_SYMBOL_GPL vmlinux 0xe7312d78 ata_sas_sync_probe +EXPORT_SYMBOL_GPL vmlinux 0xe736cb1d usb_get_urb +EXPORT_SYMBOL_GPL vmlinux 0xe741800f kobject_get_path +EXPORT_SYMBOL_GPL vmlinux 0xe753b68d devlink_fmsg_arr_pair_nest_end +EXPORT_SYMBOL_GPL vmlinux 0xe75c3bc0 virtqueue_get_buf +EXPORT_SYMBOL_GPL vmlinux 0xe76473ce pm_clk_add +EXPORT_SYMBOL_GPL vmlinux 0xe769232e sprint_symbol_no_offset +EXPORT_SYMBOL_GPL vmlinux 0xe77c0f4e wm8997_irq +EXPORT_SYMBOL_GPL vmlinux 0xe7838da6 gpiochip_irqchip_add_key +EXPORT_SYMBOL_GPL vmlinux 0xe783e261 sysfs_emit +EXPORT_SYMBOL_GPL vmlinux 0xe7921fba pci_probe_reset_slot +EXPORT_SYMBOL_GPL vmlinux 0xe7936243 zynqmp_pm_clock_getstate +EXPORT_SYMBOL_GPL vmlinux 0xe794658d crypto_skcipher_decrypt +EXPORT_SYMBOL_GPL vmlinux 0xe7a15bdd key_type_logon +EXPORT_SYMBOL_GPL vmlinux 0xe7a296df device_create_bin_file +EXPORT_SYMBOL_GPL vmlinux 0xe7bb918f dm_per_bio_data +EXPORT_SYMBOL_GPL vmlinux 0xe7cea27d perf_tp_event +EXPORT_SYMBOL_GPL vmlinux 0xe7d6d2d4 filter_match_preds +EXPORT_SYMBOL_GPL vmlinux 0xe7d832ac irq_domain_add_legacy +EXPORT_SYMBOL_GPL vmlinux 0xe7d96de1 iommu_unmap_fast +EXPORT_SYMBOL_GPL vmlinux 0xe7d9972c posix_acl_default_xattr_handler +EXPORT_SYMBOL_GPL vmlinux 0xe7dbc8a1 acpi_set_modalias +EXPORT_SYMBOL_GPL vmlinux 0xe7e93b6f transport_add_device +EXPORT_SYMBOL_GPL vmlinux 0xe7eee3d5 __cookie_v4_init_sequence +EXPORT_SYMBOL_GPL vmlinux 0xe7f2a0db event_triggers_post_call +EXPORT_SYMBOL_GPL vmlinux 0xe7f80885 blk_queue_rq_timeout +EXPORT_SYMBOL_GPL vmlinux 0xe7fa9845 fwnode_graph_get_port_parent +EXPORT_SYMBOL_GPL vmlinux 0xe7ffe877 pcpu_base_addr +EXPORT_SYMBOL_GPL vmlinux 0xe809cffb ring_buffer_time_stamp +EXPORT_SYMBOL_GPL vmlinux 0xe81120c2 k3_udma_glue_request_rx_chn +EXPORT_SYMBOL_GPL vmlinux 0xe818b32b ata_bmdma_interrupt +EXPORT_SYMBOL_GPL vmlinux 0xe81ddad6 tracing_generic_entry_update +EXPORT_SYMBOL_GPL vmlinux 0xe8361b9a pci_epc_get_features +EXPORT_SYMBOL_GPL vmlinux 0xe840bec3 cpufreq_driver_resolve_freq +EXPORT_SYMBOL_GPL vmlinux 0xe84f6e5c pciserial_remove_ports +EXPORT_SYMBOL_GPL vmlinux 0xe8525c78 ahci_platform_enable_phys +EXPORT_SYMBOL_GPL vmlinux 0xe854f303 rockchip_pcie_enable_clocks +EXPORT_SYMBOL_GPL vmlinux 0xe85a9fd3 cpu_cluster_pm_exit +EXPORT_SYMBOL_GPL vmlinux 0xe862c4b7 dpm_suspend_start +EXPORT_SYMBOL_GPL vmlinux 0xe868c83e ahci_reset_em +EXPORT_SYMBOL_GPL vmlinux 0xe8824e44 dev_pm_opp_attach_genpd +EXPORT_SYMBOL_GPL vmlinux 0xe88c8967 uart_console_write +EXPORT_SYMBOL_GPL vmlinux 0xe899955b crypto_stats_ahash_final +EXPORT_SYMBOL_GPL vmlinux 0xe89ee342 dev_attr_sw_activity +EXPORT_SYMBOL_GPL vmlinux 0xe8b40f33 __tracepoint_remove_device_from_group +EXPORT_SYMBOL_GPL vmlinux 0xe8bb51e9 crypto_unregister_scomps +EXPORT_SYMBOL_GPL vmlinux 0xe8ecc658 fsverity_ioctl_measure +EXPORT_SYMBOL_GPL vmlinux 0xe8eccec4 of_dma_is_coherent +EXPORT_SYMBOL_GPL vmlinux 0xe8f57ef4 dm_hold +EXPORT_SYMBOL_GPL vmlinux 0xe8fcd158 pci_set_cacheline_size +EXPORT_SYMBOL_GPL vmlinux 0xe908f992 fat_fill_super +EXPORT_SYMBOL_GPL vmlinux 0xe917b318 ata_bmdma_port_start32 +EXPORT_SYMBOL_GPL vmlinux 0xe919741b to_nd_region +EXPORT_SYMBOL_GPL vmlinux 0xe91b3cc4 led_compose_name +EXPORT_SYMBOL_GPL vmlinux 0xe929f4c5 device_add_groups +EXPORT_SYMBOL_GPL vmlinux 0xe9377b4c skb_complete_tx_timestamp +EXPORT_SYMBOL_GPL vmlinux 0xe93e49c3 devres_free +EXPORT_SYMBOL_GPL vmlinux 0xe946de31 fsl_mc_portal_allocate +EXPORT_SYMBOL_GPL vmlinux 0xe948c77d rockchip_pcie_parse_dt +EXPORT_SYMBOL_GPL vmlinux 0xe951806e pinctrl_register_and_init +EXPORT_SYMBOL_GPL vmlinux 0xe956a75c pl320_ipc_unregister_notifier +EXPORT_SYMBOL_GPL vmlinux 0xe958ce7a tty_ldisc_flush +EXPORT_SYMBOL_GPL vmlinux 0xe97a167a crypto_stats_get +EXPORT_SYMBOL_GPL vmlinux 0xe99d8d1a device_change_owner +EXPORT_SYMBOL_GPL vmlinux 0xe9ad9951 devm_nvmem_device_get +EXPORT_SYMBOL_GPL vmlinux 0xe9ae5445 fs_kobj +EXPORT_SYMBOL_GPL vmlinux 0xe9bbdbd4 sysfs_remove_files +EXPORT_SYMBOL_GPL vmlinux 0xe9bed6cb regmap_get_max_register +EXPORT_SYMBOL_GPL vmlinux 0xe9c5b605 __percpu_init_rwsem +EXPORT_SYMBOL_GPL vmlinux 0xe9d1b7cf irq_to_pcap +EXPORT_SYMBOL_GPL vmlinux 0xe9d63a0d k3_udma_glue_enable_tx_chn +EXPORT_SYMBOL_GPL vmlinux 0xe9d6ddd9 fwnode_get_phy_mode +EXPORT_SYMBOL_GPL vmlinux 0xe9dd4050 usb_free_streams +EXPORT_SYMBOL_GPL vmlinux 0xe9dee62b trace_event_raw_init +EXPORT_SYMBOL_GPL vmlinux 0xe9e18eb7 verify_pkcs7_signature +EXPORT_SYMBOL_GPL vmlinux 0xe9f572e8 espintcp_push_skb +EXPORT_SYMBOL_GPL vmlinux 0xea0caf25 acpi_dev_resume +EXPORT_SYMBOL_GPL vmlinux 0xea104757 md_find_rdev_rcu +EXPORT_SYMBOL_GPL vmlinux 0xea124bd1 gcd +EXPORT_SYMBOL_GPL vmlinux 0xea1bee14 crypto_grab_spawn +EXPORT_SYMBOL_GPL vmlinux 0xea1df0f7 bgmac_alloc +EXPORT_SYMBOL_GPL vmlinux 0xea264829 class_create_file_ns +EXPORT_SYMBOL_GPL vmlinux 0xea2cdf4e serial8250_rpm_put +EXPORT_SYMBOL_GPL vmlinux 0xea38036f ring_buffer_entries +EXPORT_SYMBOL_GPL vmlinux 0xea50dad3 ahci_ignore_sss +EXPORT_SYMBOL_GPL vmlinux 0xea5f7e1e gpiochip_generic_request +EXPORT_SYMBOL_GPL vmlinux 0xea7a53b9 crypto_register_rngs +EXPORT_SYMBOL_GPL vmlinux 0xea7ff6e9 show_class_attr_string +EXPORT_SYMBOL_GPL vmlinux 0xea8360f8 fsl_mc_portal_reset +EXPORT_SYMBOL_GPL vmlinux 0xea959883 ethnl_cable_test_alloc +EXPORT_SYMBOL_GPL vmlinux 0xea989f56 icc_set_bw +EXPORT_SYMBOL_GPL vmlinux 0xea9ea414 nvdimm_bus_register +EXPORT_SYMBOL_GPL vmlinux 0xeaa57470 of_address_to_resource +EXPORT_SYMBOL_GPL vmlinux 0xeaac52fa cpuidle_get_cpu_driver +EXPORT_SYMBOL_GPL vmlinux 0xeaad96f9 sbitmap_queue_clear +EXPORT_SYMBOL_GPL vmlinux 0xeacb30d2 tty_port_unregister_device +EXPORT_SYMBOL_GPL vmlinux 0xead37d54 pskb_put +EXPORT_SYMBOL_GPL vmlinux 0xead54924 mctrl_gpio_to_gpiod +EXPORT_SYMBOL_GPL vmlinux 0xead68fa8 pm_runtime_get_if_active +EXPORT_SYMBOL_GPL vmlinux 0xeae0f496 clean_acked_data_flush +EXPORT_SYMBOL_GPL vmlinux 0xeaedd6a6 xen_dbgp_reset_prep +EXPORT_SYMBOL_GPL vmlinux 0xeaf5ad6d ata_do_set_mode +EXPORT_SYMBOL_GPL vmlinux 0xeaf793b0 sysfs_remove_link +EXPORT_SYMBOL_GPL vmlinux 0xeaf7fe0f sbitmap_resize +EXPORT_SYMBOL_GPL vmlinux 0xeafe07b8 clk_bulk_prepare +EXPORT_SYMBOL_GPL vmlinux 0xeb029633 iommu_group_get +EXPORT_SYMBOL_GPL vmlinux 0xeb1366d5 watchdog_notify_pretimeout +EXPORT_SYMBOL_GPL vmlinux 0xeb136d51 blk_add_driver_data +EXPORT_SYMBOL_GPL vmlinux 0xeb34f748 skb_mpls_push +EXPORT_SYMBOL_GPL vmlinux 0xeb3c8d73 wm5110_irq +EXPORT_SYMBOL_GPL vmlinux 0xeb3f8466 unregister_kprobe +EXPORT_SYMBOL_GPL vmlinux 0xeb4221e4 trace_clock +EXPORT_SYMBOL_GPL vmlinux 0xeb51a832 synth_event_gen_cmd_array_start +EXPORT_SYMBOL_GPL vmlinux 0xeb6aaf36 kernel_read_file_from_path_initns +EXPORT_SYMBOL_GPL vmlinux 0xeb7273d7 nvmem_cell_read_u32 +EXPORT_SYMBOL_GPL vmlinux 0xeb7ea45a __skb_tstamp_tx +EXPORT_SYMBOL_GPL vmlinux 0xeb81f6af devm_device_remove_group +EXPORT_SYMBOL_GPL vmlinux 0xeb84baac usb_get_maximum_speed +EXPORT_SYMBOL_GPL vmlinux 0xeb97f031 bpf_trace_run10 +EXPORT_SYMBOL_GPL vmlinux 0xeb9ac602 usb_get_phy +EXPORT_SYMBOL_GPL vmlinux 0xebc9a09f lock_system_sleep +EXPORT_SYMBOL_GPL vmlinux 0xebd4cc11 mctrl_gpio_enable_ms +EXPORT_SYMBOL_GPL vmlinux 0xec013ae4 irq_find_matching_fwspec +EXPORT_SYMBOL_GPL vmlinux 0xec1ec688 phy_modify_changed +EXPORT_SYMBOL_GPL vmlinux 0xec240594 tpm_pm_suspend +EXPORT_SYMBOL_GPL vmlinux 0xec2781fa of_platform_depopulate +EXPORT_SYMBOL_GPL vmlinux 0xec404c4f gpiod_set_raw_value +EXPORT_SYMBOL_GPL vmlinux 0xec4cea55 task_cls_state +EXPORT_SYMBOL_GPL vmlinux 0xec5668f6 dax_zero_page_range +EXPORT_SYMBOL_GPL vmlinux 0xec5d055b regmap_read +EXPORT_SYMBOL_GPL vmlinux 0xec660cd3 __tracepoint_fib6_table_lookup +EXPORT_SYMBOL_GPL vmlinux 0xec68ba70 clk_bulk_enable +EXPORT_SYMBOL_GPL vmlinux 0xec6ea532 do_truncate +EXPORT_SYMBOL_GPL vmlinux 0xec774acb cpufreq_frequency_table_verify +EXPORT_SYMBOL_GPL vmlinux 0xec98b2c1 of_property_read_variable_u32_array +EXPORT_SYMBOL_GPL vmlinux 0xeca006fd usb_alloc_urb +EXPORT_SYMBOL_GPL vmlinux 0xeca3d154 __iptunnel_pull_header +EXPORT_SYMBOL_GPL vmlinux 0xecb19844 of_clk_add_provider +EXPORT_SYMBOL_GPL vmlinux 0xecb30522 ata_bmdma_post_internal_cmd +EXPORT_SYMBOL_GPL vmlinux 0xecba68e3 gnttab_batch_map +EXPORT_SYMBOL_GPL vmlinux 0xecbabc51 devm_pwm_get +EXPORT_SYMBOL_GPL vmlinux 0xecc3df53 iommu_device_link +EXPORT_SYMBOL_GPL vmlinux 0xecd34361 irq_domain_translate_onecell +EXPORT_SYMBOL_GPL vmlinux 0xecd8f23d xenbus_read +EXPORT_SYMBOL_GPL vmlinux 0xece1a562 crypto_create_tfm +EXPORT_SYMBOL_GPL vmlinux 0xecfea2bd __synth_event_gen_cmd_start +EXPORT_SYMBOL_GPL vmlinux 0xed1bcb5d alarm_init +EXPORT_SYMBOL_GPL vmlinux 0xed4f6ec0 acpi_gpiochip_request_interrupts +EXPORT_SYMBOL_GPL vmlinux 0xed573050 wm8350_block_write +EXPORT_SYMBOL_GPL vmlinux 0xed5b0ce7 fib_rules_dump +EXPORT_SYMBOL_GPL vmlinux 0xed6245b9 generic_device_group +EXPORT_SYMBOL_GPL vmlinux 0xed7b8fd9 mtk_pinconf_bias_get_combo +EXPORT_SYMBOL_GPL vmlinux 0xed7c7b91 raw_v6_hashinfo +EXPORT_SYMBOL_GPL vmlinux 0xed7e39b5 iomap_finish_ioends +EXPORT_SYMBOL_GPL vmlinux 0xed92d0ec device_property_read_u8_array +EXPORT_SYMBOL_GPL vmlinux 0xed94b645 pci_d3cold_enable +EXPORT_SYMBOL_GPL vmlinux 0xeda33fcc adp5520_set_bits +EXPORT_SYMBOL_GPL vmlinux 0xeda4a3c5 bpf_offload_dev_netdev_register +EXPORT_SYMBOL_GPL vmlinux 0xedd092d5 power_supply_notifier +EXPORT_SYMBOL_GPL vmlinux 0xede3eb42 dev_pm_opp_of_get_sharing_cpus +EXPORT_SYMBOL_GPL vmlinux 0xede9a09a btree_lookup +EXPORT_SYMBOL_GPL vmlinux 0xedfca519 __module_address +EXPORT_SYMBOL_GPL vmlinux 0xee0da4f4 fsl_mc_bus_dpmac_type +EXPORT_SYMBOL_GPL vmlinux 0xee117163 pci_find_next_ext_capability +EXPORT_SYMBOL_GPL vmlinux 0xee2711cc pinctrl_utils_add_map_mux +EXPORT_SYMBOL_GPL vmlinux 0xee2dd3d9 regmap_async_complete +EXPORT_SYMBOL_GPL vmlinux 0xee3186a1 gpiochip_add_pin_range +EXPORT_SYMBOL_GPL vmlinux 0xee38ef57 register_switchdev_blocking_notifier +EXPORT_SYMBOL_GPL vmlinux 0xee40262b extcon_register_notifier_all +EXPORT_SYMBOL_GPL vmlinux 0xee45baeb transport_configure_device +EXPORT_SYMBOL_GPL vmlinux 0xee570482 crypto_stats_rng_generate +EXPORT_SYMBOL_GPL vmlinux 0xee5a32d7 scsi_eh_ready_devs +EXPORT_SYMBOL_GPL vmlinux 0xee60a4f0 iommu_fwspec_init +EXPORT_SYMBOL_GPL vmlinux 0xee60c432 hwmon_notify_event +EXPORT_SYMBOL_GPL vmlinux 0xee6a96d6 tcp_unregister_ulp +EXPORT_SYMBOL_GPL vmlinux 0xee6b4331 cpci_hp_register_bus +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 0xee72d9e4 ata_pci_bmdma_init +EXPORT_SYMBOL_GPL vmlinux 0xee842763 mtk_pinconf_adv_pull_set +EXPORT_SYMBOL_GPL vmlinux 0xeea1ca6d fwnode_gpiod_get_index +EXPORT_SYMBOL_GPL vmlinux 0xeeaa1528 extcon_set_property_sync +EXPORT_SYMBOL_GPL vmlinux 0xeead2c69 devlink_dpipe_table_register +EXPORT_SYMBOL_GPL vmlinux 0xeec2b362 pci_epc_write_header +EXPORT_SYMBOL_GPL vmlinux 0xeec4f215 sk_psock_drop +EXPORT_SYMBOL_GPL vmlinux 0xeec7d410 mpc8xxx_spi_tx_buf_u32 +EXPORT_SYMBOL_GPL vmlinux 0xeedd987e phy_10gbit_features_array +EXPORT_SYMBOL_GPL vmlinux 0xeedfcec3 task_work_run +EXPORT_SYMBOL_GPL vmlinux 0xeee256b4 lwtunnel_encap_del_ops +EXPORT_SYMBOL_GPL vmlinux 0xeef110b8 crypto_alloc_skcipher +EXPORT_SYMBOL_GPL vmlinux 0xeef39e1f perf_event_create_kernel_counter +EXPORT_SYMBOL_GPL vmlinux 0xeef71ca1 ipv6_stub +EXPORT_SYMBOL_GPL vmlinux 0xeefd617e nvdimm_kobj +EXPORT_SYMBOL_GPL vmlinux 0xeefef5f3 sata_lpm_ignore_phy_events +EXPORT_SYMBOL_GPL vmlinux 0xef083b76 sata_async_notification +EXPORT_SYMBOL_GPL vmlinux 0xef1dde67 hypervisor_kobj +EXPORT_SYMBOL_GPL vmlinux 0xef1f6e23 apei_resources_request +EXPORT_SYMBOL_GPL vmlinux 0xef29fcdd clk_bulk_put +EXPORT_SYMBOL_GPL vmlinux 0xef464c28 getboottime64 +EXPORT_SYMBOL_GPL vmlinux 0xef5dd51c regulator_desc_list_voltage_linear_range +EXPORT_SYMBOL_GPL vmlinux 0xef6c3f70 round_jiffies_up_relative +EXPORT_SYMBOL_GPL vmlinux 0xef70eb7e ring_buffer_iter_advance +EXPORT_SYMBOL_GPL vmlinux 0xef7681a7 debugfs_create_file +EXPORT_SYMBOL_GPL vmlinux 0xef86780e of_usb_update_otg_caps +EXPORT_SYMBOL_GPL vmlinux 0xef92ef33 btree_last +EXPORT_SYMBOL_GPL vmlinux 0xef98e426 fsl_mc_device_remove +EXPORT_SYMBOL_GPL vmlinux 0xefa2c27d register_tracepoint_module_notifier +EXPORT_SYMBOL_GPL vmlinux 0xefa2e24d skb_append_pagefrags +EXPORT_SYMBOL_GPL vmlinux 0xefa59e62 spi_bus_type +EXPORT_SYMBOL_GPL vmlinux 0xefaa811a tty_put_char +EXPORT_SYMBOL_GPL vmlinux 0xefb89fad screen_pos +EXPORT_SYMBOL_GPL vmlinux 0xefe05860 platform_get_irq_optional +EXPORT_SYMBOL_GPL vmlinux 0xefeafcf1 edac_has_mcs +EXPORT_SYMBOL_GPL vmlinux 0xeffeff0a serial8250_do_set_mctrl +EXPORT_SYMBOL_GPL vmlinux 0xf001852f sysfs_create_link +EXPORT_SYMBOL_GPL vmlinux 0xf006a291 usb_hcd_resume_root_hub +EXPORT_SYMBOL_GPL vmlinux 0xf01e085c __rio_local_write_config_16 +EXPORT_SYMBOL_GPL vmlinux 0xf0427b7e pm_generic_poweroff_late +EXPORT_SYMBOL_GPL vmlinux 0xf04429b4 acpi_bus_get_status_handle +EXPORT_SYMBOL_GPL vmlinux 0xf051d66a acpi_data_fwnode_ops +EXPORT_SYMBOL_GPL vmlinux 0xf0635848 battery_hook_unregister +EXPORT_SYMBOL_GPL vmlinux 0xf0696401 acpi_pci_detect_ejectable +EXPORT_SYMBOL_GPL vmlinux 0xf06e3c5c xdp_rxq_info_reg_mem_model +EXPORT_SYMBOL_GPL vmlinux 0xf06f1a9b of_irq_to_resource_table +EXPORT_SYMBOL_GPL vmlinux 0xf071d33d platform_device_register +EXPORT_SYMBOL_GPL vmlinux 0xf0748f46 __mmc_send_status +EXPORT_SYMBOL_GPL vmlinux 0xf075c472 pm_relax +EXPORT_SYMBOL_GPL vmlinux 0xf08050c4 rhashtable_walk_start_check +EXPORT_SYMBOL_GPL vmlinux 0xf0825738 pci_epf_free_space +EXPORT_SYMBOL_GPL vmlinux 0xf08920cb ahci_platform_enable_clks +EXPORT_SYMBOL_GPL vmlinux 0xf090bc01 of_dma_controller_free +EXPORT_SYMBOL_GPL vmlinux 0xf0910075 sfp_bus_del_upstream +EXPORT_SYMBOL_GPL vmlinux 0xf0942877 perf_aux_output_skip +EXPORT_SYMBOL_GPL vmlinux 0xf0a577e8 rio_request_outb_mbox +EXPORT_SYMBOL_GPL vmlinux 0xf0b23cf3 xhci_mtk_sch_exit +EXPORT_SYMBOL_GPL vmlinux 0xf0b9155b genphy_c45_an_config_aneg +EXPORT_SYMBOL_GPL vmlinux 0xf0c76140 register_kretprobes +EXPORT_SYMBOL_GPL vmlinux 0xf0d478c7 list_lru_add +EXPORT_SYMBOL_GPL vmlinux 0xf0da3972 pm_genpd_remove_device +EXPORT_SYMBOL_GPL vmlinux 0xf0dd1026 rtc_set_alarm +EXPORT_SYMBOL_GPL vmlinux 0xf0de7ba2 __netdev_watchdog_up +EXPORT_SYMBOL_GPL vmlinux 0xf0f2ccb4 pm_generic_resume +EXPORT_SYMBOL_GPL vmlinux 0xf116d218 regmap_async_complete_cb +EXPORT_SYMBOL_GPL vmlinux 0xf1318c32 get_hwpoison_page +EXPORT_SYMBOL_GPL vmlinux 0xf1361941 pci_vpd_find_tag +EXPORT_SYMBOL_GPL vmlinux 0xf168d655 security_path_truncate +EXPORT_SYMBOL_GPL vmlinux 0xf16e5d60 usb_get_hcd +EXPORT_SYMBOL_GPL vmlinux 0xf170503a of_property_count_elems_of_size +EXPORT_SYMBOL_GPL vmlinux 0xf184d189 kernel_power_off +EXPORT_SYMBOL_GPL vmlinux 0xf188194c pci_stop_root_bus +EXPORT_SYMBOL_GPL vmlinux 0xf1b31314 delayacct_on +EXPORT_SYMBOL_GPL vmlinux 0xf1b8282a blkg_prfill_rwstat +EXPORT_SYMBOL_GPL vmlinux 0xf1cacb5b irq_of_parse_and_map +EXPORT_SYMBOL_GPL vmlinux 0xf1cb9052 ip6_datagram_recv_ctl +EXPORT_SYMBOL_GPL vmlinux 0xf1cc153c dev_pm_domain_attach_by_name +EXPORT_SYMBOL_GPL vmlinux 0xf1cc58e5 bpf_redirect_info +EXPORT_SYMBOL_GPL vmlinux 0xf1d6433e mmc_send_tuning +EXPORT_SYMBOL_GPL vmlinux 0xf1d9b439 sched_trace_rq_avg_dl +EXPORT_SYMBOL_GPL vmlinux 0xf1e1498c devlink_param_driverinit_value_get +EXPORT_SYMBOL_GPL vmlinux 0xf2145080 ethnl_cable_test_pulse +EXPORT_SYMBOL_GPL vmlinux 0xf21e1f9b disable_percpu_irq +EXPORT_SYMBOL_GPL vmlinux 0xf2247a5d ata_host_activate +EXPORT_SYMBOL_GPL vmlinux 0xf224a1e9 usb_unanchor_urb +EXPORT_SYMBOL_GPL vmlinux 0xf2252e4d pinctrl_get_group_pins +EXPORT_SYMBOL_GPL vmlinux 0xf22dcfe3 mddev_resume +EXPORT_SYMBOL_GPL vmlinux 0xf240837a platform_get_irq_byname_optional +EXPORT_SYMBOL_GPL vmlinux 0xf25aff96 crypto_stats_kpp_set_secret +EXPORT_SYMBOL_GPL vmlinux 0xf26d7013 hwspin_lock_request_specific +EXPORT_SYMBOL_GPL vmlinux 0xf27803d8 cpufreq_enable_fast_switch +EXPORT_SYMBOL_GPL vmlinux 0xf278dfcf get_dcookie +EXPORT_SYMBOL_GPL vmlinux 0xf27d0a7b gnttab_grant_foreign_access_ref +EXPORT_SYMBOL_GPL vmlinux 0xf28601c1 security_path_chown +EXPORT_SYMBOL_GPL vmlinux 0xf28859e3 stmpe_set_bits +EXPORT_SYMBOL_GPL vmlinux 0xf28e805f kvm_vcpu_yield_to +EXPORT_SYMBOL_GPL vmlinux 0xf2967796 ring_buffer_record_on +EXPORT_SYMBOL_GPL vmlinux 0xf29c6644 usb_deregister_device_driver +EXPORT_SYMBOL_GPL vmlinux 0xf2a93b3a debugfs_create_x32 +EXPORT_SYMBOL_GPL vmlinux 0xf2b33cb7 memory_cgrp_subsys_on_dfl_key +EXPORT_SYMBOL_GPL vmlinux 0xf2bb676e nf_queue_entry_get_refs +EXPORT_SYMBOL_GPL vmlinux 0xf2f6c6a2 mctrl_gpio_init +EXPORT_SYMBOL_GPL vmlinux 0xf300ad8e device_create_with_groups +EXPORT_SYMBOL_GPL vmlinux 0xf3035f8a fuse_get_unique +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 0xf316b96c ata_sff_pause +EXPORT_SYMBOL_GPL vmlinux 0xf31766de gnttab_foreach_grant_in_range +EXPORT_SYMBOL_GPL vmlinux 0xf31896dc user_describe +EXPORT_SYMBOL_GPL vmlinux 0xf31b3fd1 workqueue_set_max_active +EXPORT_SYMBOL_GPL vmlinux 0xf3238fbd inet_csk_route_child_sock +EXPORT_SYMBOL_GPL vmlinux 0xf32686a5 thermal_zone_of_sensor_unregister +EXPORT_SYMBOL_GPL vmlinux 0xf327bc44 device_link_del +EXPORT_SYMBOL_GPL vmlinux 0xf32bdc5d unregister_xenstore_notifier +EXPORT_SYMBOL_GPL vmlinux 0xf32c901e subsys_interface_register +EXPORT_SYMBOL_GPL vmlinux 0xf331236f btree_geo32 +EXPORT_SYMBOL_GPL vmlinux 0xf342bcf1 sata_link_scr_lpm +EXPORT_SYMBOL_GPL vmlinux 0xf352023f memory_cgrp_subsys_enabled_key +EXPORT_SYMBOL_GPL vmlinux 0xf358ecff dma_buf_export +EXPORT_SYMBOL_GPL vmlinux 0xf370bba6 usb_set_configuration +EXPORT_SYMBOL_GPL vmlinux 0xf379aec7 ip_tunnel_get_stats64 +EXPORT_SYMBOL_GPL vmlinux 0xf3808cb1 get_state_synchronize_rcu +EXPORT_SYMBOL_GPL vmlinux 0xf3a566ba net_dm_hw_report +EXPORT_SYMBOL_GPL vmlinux 0xf3ae7a26 regmap_can_raw_write +EXPORT_SYMBOL_GPL vmlinux 0xf3b451ca kdb_poll_funcs +EXPORT_SYMBOL_GPL vmlinux 0xf3b95d79 btree_remove +EXPORT_SYMBOL_GPL vmlinux 0xf3bfa57e rtc_alarm_irq_enable +EXPORT_SYMBOL_GPL vmlinux 0xf3c9bf7f dma_get_merge_boundary +EXPORT_SYMBOL_GPL vmlinux 0xf3d8797e switchdev_handle_port_obj_add +EXPORT_SYMBOL_GPL vmlinux 0xf3dd80b4 rio_mport_read_config_16 +EXPORT_SYMBOL_GPL vmlinux 0xf3e648ef serdev_device_write_buf +EXPORT_SYMBOL_GPL vmlinux 0xf40451c9 virtio_break_device +EXPORT_SYMBOL_GPL vmlinux 0xf40840d1 ata_sff_dev_classify +EXPORT_SYMBOL_GPL vmlinux 0xf40f5611 sched_setattr +EXPORT_SYMBOL_GPL vmlinux 0xf414d7f1 sysfs_remove_group +EXPORT_SYMBOL_GPL vmlinux 0xf41bb3b6 usb_free_urb +EXPORT_SYMBOL_GPL vmlinux 0xf425c1d1 pcc_mbox_request_channel +EXPORT_SYMBOL_GPL vmlinux 0xf4559d02 usb_hub_release_port +EXPORT_SYMBOL_GPL vmlinux 0xf4689d50 linkmode_set_pause +EXPORT_SYMBOL_GPL vmlinux 0xf4765653 ahci_platform_enable_regulators +EXPORT_SYMBOL_GPL vmlinux 0xf47d8cf9 is_current_mnt_ns +EXPORT_SYMBOL_GPL vmlinux 0xf4871cc1 scsi_register_device_handler +EXPORT_SYMBOL_GPL vmlinux 0xf4af35c2 rcu_gp_is_normal +EXPORT_SYMBOL_GPL vmlinux 0xf4bc989b blk_set_pm_only +EXPORT_SYMBOL_GPL vmlinux 0xf4da71b3 public_key_verify_signature +EXPORT_SYMBOL_GPL vmlinux 0xf4de5fd9 usb_put_phy +EXPORT_SYMBOL_GPL vmlinux 0xf4e284e0 devm_kstrdup_const +EXPORT_SYMBOL_GPL vmlinux 0xf4f8e71d fib6_rule_default +EXPORT_SYMBOL_GPL vmlinux 0xf50e911e copy_reserved_iova +EXPORT_SYMBOL_GPL vmlinux 0xf5211021 usb_hcd_pci_remove +EXPORT_SYMBOL_GPL vmlinux 0xf52f5283 usb_unlink_urb +EXPORT_SYMBOL_GPL vmlinux 0xf540cb2b genphy_c45_restart_aneg +EXPORT_SYMBOL_GPL vmlinux 0xf546d049 exportfs_encode_fh +EXPORT_SYMBOL_GPL vmlinux 0xf54bd49b lcm +EXPORT_SYMBOL_GPL vmlinux 0xf550971c netdev_walk_all_lower_dev_rcu +EXPORT_SYMBOL_GPL vmlinux 0xf553318d cpuidle_pause_and_lock +EXPORT_SYMBOL_GPL vmlinux 0xf556ee8f skb_zerocopy +EXPORT_SYMBOL_GPL vmlinux 0xf559cfae rpi_firmware_get +EXPORT_SYMBOL_GPL vmlinux 0xf56ae1d2 bpf_trace_run6 +EXPORT_SYMBOL_GPL vmlinux 0xf57464d8 badblocks_set +EXPORT_SYMBOL_GPL vmlinux 0xf58a3fe2 perf_aux_output_begin +EXPORT_SYMBOL_GPL vmlinux 0xf5a3ba99 linear_range_values_in_range +EXPORT_SYMBOL_GPL vmlinux 0xf5a691cd invalidate_bh_lrus +EXPORT_SYMBOL_GPL vmlinux 0xf5a70356 blk_set_queue_dying +EXPORT_SYMBOL_GPL vmlinux 0xf5ad7d30 acpi_find_child_device +EXPORT_SYMBOL_GPL vmlinux 0xf5ceb357 attribute_container_unregister +EXPORT_SYMBOL_GPL vmlinux 0xf5cef1bc l3mdev_fib_table_by_index +EXPORT_SYMBOL_GPL vmlinux 0xf5d7eb5a register_ftrace_export +EXPORT_SYMBOL_GPL vmlinux 0xf5d9e914 of_find_spi_device_by_node +EXPORT_SYMBOL_GPL vmlinux 0xf5e1a77c trace_seq_putmem_hex +EXPORT_SYMBOL_GPL vmlinux 0xf5ee695c ipv6_opt_accepted +EXPORT_SYMBOL_GPL vmlinux 0xf5f2ee46 devlink_port_attrs_set +EXPORT_SYMBOL_GPL vmlinux 0xf5f370e0 async_schedule_node +EXPORT_SYMBOL_GPL vmlinux 0xf6047a78 invalidate_inode_pages2_range +EXPORT_SYMBOL_GPL vmlinux 0xf607660d device_wakeup_disable +EXPORT_SYMBOL_GPL vmlinux 0xf63cd010 acpi_subsys_prepare +EXPORT_SYMBOL_GPL vmlinux 0xf64d40c6 of_irq_to_resource +EXPORT_SYMBOL_GPL vmlinux 0xf64d435f phy_destroy +EXPORT_SYMBOL_GPL vmlinux 0xf64e6fab gpiod_get_from_of_node +EXPORT_SYMBOL_GPL vmlinux 0xf65461f8 lwtunnel_valid_encap_type_attr +EXPORT_SYMBOL_GPL vmlinux 0xf663ee2f pcap_adc_sync +EXPORT_SYMBOL_GPL vmlinux 0xf6646170 console_drivers +EXPORT_SYMBOL_GPL vmlinux 0xf6710e27 pm_clk_suspend +EXPORT_SYMBOL_GPL vmlinux 0xf67e244b hisi_uncore_pmu_del +EXPORT_SYMBOL_GPL vmlinux 0xf68a54b5 serial8250_rpm_get_tx +EXPORT_SYMBOL_GPL vmlinux 0xf696eb5e spi_mem_default_supports_op +EXPORT_SYMBOL_GPL vmlinux 0xf6a28554 region_intersects +EXPORT_SYMBOL_GPL vmlinux 0xf6bcfea4 thermal_notify_framework +EXPORT_SYMBOL_GPL vmlinux 0xf6c144cb fsnotify_alloc_group +EXPORT_SYMBOL_GPL vmlinux 0xf6c34c04 pci_vfs_assigned +EXPORT_SYMBOL_GPL vmlinux 0xf6c54a60 platform_device_register_full +EXPORT_SYMBOL_GPL vmlinux 0xf6c71a25 cper_severity_str +EXPORT_SYMBOL_GPL vmlinux 0xf6c77478 sk_attach_filter +EXPORT_SYMBOL_GPL vmlinux 0xf6c839b1 devm_regulator_register +EXPORT_SYMBOL_GPL vmlinux 0xf6c8dc62 cpu_hotplug_enable +EXPORT_SYMBOL_GPL vmlinux 0xf6c9228c sbitmap_queue_wake_all +EXPORT_SYMBOL_GPL vmlinux 0xf6cf540e usb_reset_endpoint +EXPORT_SYMBOL_GPL vmlinux 0xf6cfe889 devm_regulator_put +EXPORT_SYMBOL_GPL vmlinux 0xf6d3058d gfn_to_memslot +EXPORT_SYMBOL_GPL vmlinux 0xf6db1884 clk_regmap_gate_ro_ops +EXPORT_SYMBOL_GPL vmlinux 0xf6e44341 sysfs_create_bin_file +EXPORT_SYMBOL_GPL vmlinux 0xf6e772c3 irq_bypass_unregister_producer +EXPORT_SYMBOL_GPL vmlinux 0xf6e874f5 ata_timing_merge +EXPORT_SYMBOL_GPL vmlinux 0xf6f16c56 rcu_barrier_tasks +EXPORT_SYMBOL_GPL vmlinux 0xf70705cc ping_err +EXPORT_SYMBOL_GPL vmlinux 0xf7235acd crypto_hash_walk_first +EXPORT_SYMBOL_GPL vmlinux 0xf7265d28 dma_can_mmap +EXPORT_SYMBOL_GPL vmlinux 0xf7269ceb regulator_get_hardware_vsel_register +EXPORT_SYMBOL_GPL vmlinux 0xf730fb4a qcom_smem_state_update_bits +EXPORT_SYMBOL_GPL vmlinux 0xf731f06f dprc_set_obj_irq +EXPORT_SYMBOL_GPL vmlinux 0xf7455c16 input_event_to_user +EXPORT_SYMBOL_GPL vmlinux 0xf7490e66 regulator_enable_regmap +EXPORT_SYMBOL_GPL vmlinux 0xf749c10a __page_file_mapping +EXPORT_SYMBOL_GPL vmlinux 0xf749debc md5_zero_message_hash +EXPORT_SYMBOL_GPL vmlinux 0xf74bb274 mod_delayed_work_on +EXPORT_SYMBOL_GPL vmlinux 0xf74e7c93 jump_label_rate_limit +EXPORT_SYMBOL_GPL vmlinux 0xf7745368 usb_match_id +EXPORT_SYMBOL_GPL vmlinux 0xf7866b4f bind_evtchn_to_irqhandler_lateeoi +EXPORT_SYMBOL_GPL vmlinux 0xf78d42e4 nvdimm_bus_add_badrange +EXPORT_SYMBOL_GPL vmlinux 0xf7a2687e user_free_preparse +EXPORT_SYMBOL_GPL vmlinux 0xf7ab22b5 netdev_rx_handler_register +EXPORT_SYMBOL_GPL vmlinux 0xf7bc95b0 devlink_fmsg_pair_nest_start +EXPORT_SYMBOL_GPL vmlinux 0xf7c099a0 rio_map_inb_region +EXPORT_SYMBOL_GPL vmlinux 0xf7c39398 inverse_translate +EXPORT_SYMBOL_GPL vmlinux 0xf7c3f273 xen_resume_notifier_register +EXPORT_SYMBOL_GPL vmlinux 0xf7cd403b dpbp_open +EXPORT_SYMBOL_GPL vmlinux 0xf7d37caf devm_rtc_allocate_device +EXPORT_SYMBOL_GPL vmlinux 0xf7d66957 firmware_request_nowarn +EXPORT_SYMBOL_GPL vmlinux 0xf7d961d8 clk_hw_unregister_composite +EXPORT_SYMBOL_GPL vmlinux 0xf7dec6f6 icc_node_add +EXPORT_SYMBOL_GPL vmlinux 0xf7e60d65 iomap_migrate_page +EXPORT_SYMBOL_GPL vmlinux 0xf7ec0d09 nvdimm_cmd_mask +EXPORT_SYMBOL_GPL vmlinux 0xf7f94d46 pm_generic_runtime_resume +EXPORT_SYMBOL_GPL vmlinux 0xf80da0ff wm831x_reg_write +EXPORT_SYMBOL_GPL vmlinux 0xf816f983 ahci_shost_attrs +EXPORT_SYMBOL_GPL vmlinux 0xf81972ed of_genpd_remove_subdomain +EXPORT_SYMBOL_GPL vmlinux 0xf82f3657 work_on_cpu +EXPORT_SYMBOL_GPL vmlinux 0xf834c26d housekeeping_test_cpu +EXPORT_SYMBOL_GPL vmlinux 0xf84ed30c phy_gbit_all_ports_features +EXPORT_SYMBOL_GPL vmlinux 0xf85d5cfd raw_abort +EXPORT_SYMBOL_GPL vmlinux 0xf8661684 pinctrl_add_gpio_range +EXPORT_SYMBOL_GPL vmlinux 0xf8673e02 regulator_map_voltage_ascend +EXPORT_SYMBOL_GPL vmlinux 0xf87233ba icc_provider_del +EXPORT_SYMBOL_GPL vmlinux 0xf872dffa bind_interdomain_evtchn_to_irq_lateeoi +EXPORT_SYMBOL_GPL vmlinux 0xf874de2b crypto_unregister_ahashes +EXPORT_SYMBOL_GPL vmlinux 0xf880cf6b sk_psock_destroy +EXPORT_SYMBOL_GPL vmlinux 0xf883d6f3 pci_stop_and_remove_bus_device_locked +EXPORT_SYMBOL_GPL vmlinux 0xf8912525 serial8250_set_defaults +EXPORT_SYMBOL_GPL vmlinux 0xf8b14abc crypto_aead_setauthsize +EXPORT_SYMBOL_GPL vmlinux 0xf8b4d5c1 dma_wait_for_async_tx +EXPORT_SYMBOL_GPL vmlinux 0xf8c2820a ata_sff_error_handler +EXPORT_SYMBOL_GPL vmlinux 0xf8e20436 led_sysfs_disable +EXPORT_SYMBOL_GPL vmlinux 0xf8e66eae synth_event_create +EXPORT_SYMBOL_GPL vmlinux 0xf8e73296 mtk_eint_do_init +EXPORT_SYMBOL_GPL vmlinux 0xf8e8b1d3 __lock_page_killable +EXPORT_SYMBOL_GPL vmlinux 0xf8f3a0fb ata_ratelimit +EXPORT_SYMBOL_GPL vmlinux 0xf8fc94ba virtqueue_kick +EXPORT_SYMBOL_GPL vmlinux 0xf900c77d zynqmp_pm_clock_disable +EXPORT_SYMBOL_GPL vmlinux 0xf910a0d6 meson_clk_pll_ops +EXPORT_SYMBOL_GPL vmlinux 0xf915f4f0 xenbus_alloc_evtchn +EXPORT_SYMBOL_GPL vmlinux 0xf91ab2ed __tracepoint_arm_event +EXPORT_SYMBOL_GPL vmlinux 0xf9203366 inet_csk_compat_setsockopt +EXPORT_SYMBOL_GPL vmlinux 0xf92941af ip_valid_fib_dump_req +EXPORT_SYMBOL_GPL vmlinux 0xf932015f __raw_notifier_call_chain +EXPORT_SYMBOL_GPL vmlinux 0xf9364ee2 pingv6_ops +EXPORT_SYMBOL_GPL vmlinux 0xf9511139 pci_epc_put +EXPORT_SYMBOL_GPL vmlinux 0xf95322f4 kthread_parkme +EXPORT_SYMBOL_GPL vmlinux 0xf955e9c5 bprintf +EXPORT_SYMBOL_GPL vmlinux 0xf967422b HYPERVISOR_xen_version +EXPORT_SYMBOL_GPL vmlinux 0xf97b61c4 soc_device_match +EXPORT_SYMBOL_GPL vmlinux 0xf98d0526 mtk_smi_larb_put +EXPORT_SYMBOL_GPL vmlinux 0xf98db8cd ata_cable_40wire +EXPORT_SYMBOL_GPL vmlinux 0xf999ac97 of_get_required_opp_performance_state +EXPORT_SYMBOL_GPL vmlinux 0xf99a06d7 clk_hw_unregister_fixed_factor +EXPORT_SYMBOL_GPL vmlinux 0xf9a00dbe ahci_stop_engine +EXPORT_SYMBOL_GPL vmlinux 0xf9a054b5 __round_jiffies +EXPORT_SYMBOL_GPL vmlinux 0xf9b1f1f2 nvdimm_has_flush +EXPORT_SYMBOL_GPL vmlinux 0xf9b32e10 ehci_init_driver +EXPORT_SYMBOL_GPL vmlinux 0xf9c33287 nvm_set_chunk_meta +EXPORT_SYMBOL_GPL vmlinux 0xf9c5dae8 rtc_class_open +EXPORT_SYMBOL_GPL vmlinux 0xf9dd7370 iommu_cache_invalidate +EXPORT_SYMBOL_GPL vmlinux 0xf9e3d3ab device_bind_driver +EXPORT_SYMBOL_GPL vmlinux 0xf9ff85ac gpiochip_line_is_valid +EXPORT_SYMBOL_GPL vmlinux 0xfa01354b bdi_dev_name +EXPORT_SYMBOL_GPL vmlinux 0xfa013762 __efivar_entry_get +EXPORT_SYMBOL_GPL vmlinux 0xfa04a251 wakeup_source_create +EXPORT_SYMBOL_GPL vmlinux 0xfa0a089d ping_recvmsg +EXPORT_SYMBOL_GPL vmlinux 0xfa0a8896 acpi_dev_resource_io +EXPORT_SYMBOL_GPL vmlinux 0xfa1e25da fsl_mc_bus_dpmcp_type +EXPORT_SYMBOL_GPL vmlinux 0xfa1eb910 unregister_syscore_ops +EXPORT_SYMBOL_GPL vmlinux 0xfa1fc43f pinctrl_utils_reserve_map +EXPORT_SYMBOL_GPL vmlinux 0xfa349688 aer_recover_queue +EXPORT_SYMBOL_GPL vmlinux 0xfa666974 queue_work_node +EXPORT_SYMBOL_GPL vmlinux 0xfa690589 netdev_cmd_to_name +EXPORT_SYMBOL_GPL vmlinux 0xfa6ca109 rio_add_device +EXPORT_SYMBOL_GPL vmlinux 0xfa8e7b65 ata_sas_slave_configure +EXPORT_SYMBOL_GPL vmlinux 0xfaa1788f device_remove_groups +EXPORT_SYMBOL_GPL vmlinux 0xfaa25331 phy_resolve_aneg_pause +EXPORT_SYMBOL_GPL vmlinux 0xfaa8aa4a i2c_dw_probe_master +EXPORT_SYMBOL_GPL vmlinux 0xfab1bd8f ehci_suspend +EXPORT_SYMBOL_GPL vmlinux 0xfab30dc0 mdio_bus_exit +EXPORT_SYMBOL_GPL vmlinux 0xfab53ed9 pinctrl_gpio_can_use_line +EXPORT_SYMBOL_GPL vmlinux 0xfac52206 rio_local_get_device_id +EXPORT_SYMBOL_GPL vmlinux 0xfad9c827 kill_dax +EXPORT_SYMBOL_GPL vmlinux 0xfaeb8620 mbox_client_txdone +EXPORT_SYMBOL_GPL vmlinux 0xfb04359e badblocks_check +EXPORT_SYMBOL_GPL vmlinux 0xfb0b9735 nvdimm_bus_check_dimm_count +EXPORT_SYMBOL_GPL vmlinux 0xfb11c070 dev_pm_opp_find_freq_exact +EXPORT_SYMBOL_GPL vmlinux 0xfb2feca7 usb_reset_device +EXPORT_SYMBOL_GPL vmlinux 0xfb32b30f ring_buffer_read_prepare_sync +EXPORT_SYMBOL_GPL vmlinux 0xfb3dfe8a page_reporting_unregister +EXPORT_SYMBOL_GPL vmlinux 0xfb40083b spi_write_then_read +EXPORT_SYMBOL_GPL vmlinux 0xfb413428 regulator_set_pull_down_regmap +EXPORT_SYMBOL_GPL vmlinux 0xfb58963a power_supply_get_by_phandle +EXPORT_SYMBOL_GPL vmlinux 0xfb61173c nvmem_cell_read_u64 +EXPORT_SYMBOL_GPL vmlinux 0xfb614576 max8997_update_reg +EXPORT_SYMBOL_GPL vmlinux 0xfb6373d1 hisi_uncore_pmu_offline_cpu +EXPORT_SYMBOL_GPL vmlinux 0xfb6eedf9 power_group_name +EXPORT_SYMBOL_GPL vmlinux 0xfb728614 phy_power_on +EXPORT_SYMBOL_GPL vmlinux 0xfb858cab bpf_prog_create_from_user +EXPORT_SYMBOL_GPL vmlinux 0xfb8c1eb7 register_pernet_device +EXPORT_SYMBOL_GPL vmlinux 0xfb91d92e blk_lld_busy +EXPORT_SYMBOL_GPL vmlinux 0xfb94540a tc3589x_reg_write +EXPORT_SYMBOL_GPL vmlinux 0xfb9b4b47 blk_trace_setup +EXPORT_SYMBOL_GPL vmlinux 0xfba75e95 pci_pri_supported +EXPORT_SYMBOL_GPL vmlinux 0xfbafabeb fwnode_get_next_available_child_node +EXPORT_SYMBOL_GPL vmlinux 0xfbb06045 gpiod_direction_output_raw +EXPORT_SYMBOL_GPL vmlinux 0xfbbd41ca no_action +EXPORT_SYMBOL_GPL vmlinux 0xfbdac6ca serial8250_rx_dma_flush +EXPORT_SYMBOL_GPL vmlinux 0xfbdfc558 hrtimer_start_range_ns +EXPORT_SYMBOL_GPL vmlinux 0xfbea3435 blkcg_root +EXPORT_SYMBOL_GPL vmlinux 0xfbec0255 dev_pm_opp_put_supported_hw +EXPORT_SYMBOL_GPL vmlinux 0xfbffd601 net_prio_cgrp_subsys_on_dfl_key +EXPORT_SYMBOL_GPL vmlinux 0xfc03d97a page_is_ram +EXPORT_SYMBOL_GPL vmlinux 0xfc0797e4 free_iova_fast +EXPORT_SYMBOL_GPL vmlinux 0xfc0973dd perf_aux_output_end +EXPORT_SYMBOL_GPL vmlinux 0xfc14bb2e dm_get_dev_t +EXPORT_SYMBOL_GPL vmlinux 0xfc19bc45 crypto_dh_encode_key +EXPORT_SYMBOL_GPL vmlinux 0xfc201b66 sprint_oid +EXPORT_SYMBOL_GPL vmlinux 0xfc217311 dequeue_signal +EXPORT_SYMBOL_GPL vmlinux 0xfc254d15 gnttab_free_auto_xlat_frames +EXPORT_SYMBOL_GPL vmlinux 0xfc30817a nvdimm_provider_data +EXPORT_SYMBOL_GPL vmlinux 0xfc3b4246 acpi_bus_update_power +EXPORT_SYMBOL_GPL vmlinux 0xfc3dd3a6 sysfs_create_groups +EXPORT_SYMBOL_GPL vmlinux 0xfc4cd481 of_irq_get +EXPORT_SYMBOL_GPL vmlinux 0xfc55f25f xdp_rxq_info_unreg_mem_model +EXPORT_SYMBOL_GPL vmlinux 0xfc563556 i2c_recover_bus +EXPORT_SYMBOL_GPL vmlinux 0xfc6cf471 kobject_uevent_env +EXPORT_SYMBOL_GPL vmlinux 0xfc7177e9 clean_acked_data_disable +EXPORT_SYMBOL_GPL vmlinux 0xfc72ceaa sysfs_change_owner +EXPORT_SYMBOL_GPL vmlinux 0xfc746b3c gnttab_page_cache_shrink +EXPORT_SYMBOL_GPL vmlinux 0xfc7ae6cc dm_noflush_suspending +EXPORT_SYMBOL_GPL vmlinux 0xfc9477b5 zynqmp_pm_set_pll_frac_data +EXPORT_SYMBOL_GPL vmlinux 0xfcaa1642 wm8997_patch +EXPORT_SYMBOL_GPL vmlinux 0xfcad10c9 wakeup_sources_walk_start +EXPORT_SYMBOL_GPL vmlinux 0xfcb93030 of_icc_get_by_index +EXPORT_SYMBOL_GPL vmlinux 0xfcc1edd3 memory_block_size_bytes +EXPORT_SYMBOL_GPL vmlinux 0xfcc259a8 store_sampling_rate +EXPORT_SYMBOL_GPL vmlinux 0xfce641c2 hisi_clk_alloc +EXPORT_SYMBOL_GPL vmlinux 0xfd08f95e rtnl_link_register +EXPORT_SYMBOL_GPL vmlinux 0xfd0c1e4f init_srcu_struct +EXPORT_SYMBOL_GPL vmlinux 0xfd195774 k3_udma_glue_disable_tx_chn +EXPORT_SYMBOL_GPL vmlinux 0xfd20b94a usb_alloc_streams +EXPORT_SYMBOL_GPL vmlinux 0xfd21b53c gpiod_get_array_value +EXPORT_SYMBOL_GPL vmlinux 0xfd28676b skb_zerocopy_iter_stream +EXPORT_SYMBOL_GPL vmlinux 0xfd35125b md_bitmap_resize +EXPORT_SYMBOL_GPL vmlinux 0xfd4bc3c4 i2c_dw_acpi_configure +EXPORT_SYMBOL_GPL vmlinux 0xfd677aba usb_put_hcd +EXPORT_SYMBOL_GPL vmlinux 0xfd69807e tcp_twsk_unique +EXPORT_SYMBOL_GPL vmlinux 0xfd7243c7 erst_disable +EXPORT_SYMBOL_GPL vmlinux 0xfd8a05dc irq_create_strict_mappings +EXPORT_SYMBOL_GPL vmlinux 0xfdbd7a17 crypto_get_attr_type +EXPORT_SYMBOL_GPL vmlinux 0xfdc2eeb1 virtqueue_get_vring +EXPORT_SYMBOL_GPL vmlinux 0xfdc4a7cf screen_glyph +EXPORT_SYMBOL_GPL vmlinux 0xfdc4cf4e fwnode_get_parent +EXPORT_SYMBOL_GPL vmlinux 0xfdf637af dm_table_device_name +EXPORT_SYMBOL_GPL vmlinux 0xfdf8634d sysfs_update_groups +EXPORT_SYMBOL_GPL vmlinux 0xfdfa29c4 mbox_request_channel +EXPORT_SYMBOL_GPL vmlinux 0xfe07ea06 wm831x_bulk_read +EXPORT_SYMBOL_GPL vmlinux 0xfe0e7cd3 apei_exec_post_unmap_gars +EXPORT_SYMBOL_GPL vmlinux 0xfe1570d5 simple_attr_read +EXPORT_SYMBOL_GPL vmlinux 0xfe16d65b platform_device_add_data +EXPORT_SYMBOL_GPL vmlinux 0xfe1a4a2e __vring_new_virtqueue +EXPORT_SYMBOL_GPL vmlinux 0xfe1dd95e __nf_ip6_route +EXPORT_SYMBOL_GPL vmlinux 0xfe31c6a4 __tracepoint_block_bio_complete +EXPORT_SYMBOL_GPL vmlinux 0xfe455922 cpufreq_dbs_governor_stop +EXPORT_SYMBOL_GPL vmlinux 0xfe476039 ktime_get_resolution_ns +EXPORT_SYMBOL_GPL vmlinux 0xfe4dfb5e __udp6_lib_lookup +EXPORT_SYMBOL_GPL vmlinux 0xfe542db8 phy_pm_runtime_allow +EXPORT_SYMBOL_GPL vmlinux 0xfe69325f percpu_ref_resurrect +EXPORT_SYMBOL_GPL vmlinux 0xfe7dcd9b device_register +EXPORT_SYMBOL_GPL vmlinux 0xfe8cdb84 ring_buffer_alloc_read_page +EXPORT_SYMBOL_GPL vmlinux 0xfe990052 gpio_free +EXPORT_SYMBOL_GPL vmlinux 0xfec3bf84 icst_clk_setup +EXPORT_SYMBOL_GPL vmlinux 0xfecc3128 hvc_remove +EXPORT_SYMBOL_GPL vmlinux 0xfed11ed1 usb_mon_deregister +EXPORT_SYMBOL_GPL vmlinux 0xfee63f3b lp8788_write_byte +EXPORT_SYMBOL_GPL vmlinux 0xfee7fbf6 irqchip_fwnode_ops +EXPORT_SYMBOL_GPL vmlinux 0xfeeeaa58 spi_mem_dirmap_create +EXPORT_SYMBOL_GPL vmlinux 0xfeeecd05 apei_read +EXPORT_SYMBOL_GPL vmlinux 0xfeff64b6 hwmon_device_register +EXPORT_SYMBOL_GPL vmlinux 0xff05fa13 vring_interrupt +EXPORT_SYMBOL_GPL vmlinux 0xff0718bd vchan_dma_desc_free_list +EXPORT_SYMBOL_GPL vmlinux 0xff20c597 __regmap_init +EXPORT_SYMBOL_GPL vmlinux 0xff291ecf clk_unregister_divider +EXPORT_SYMBOL_GPL vmlinux 0xff2b5aa4 __rio_local_write_config_32 +EXPORT_SYMBOL_GPL vmlinux 0xff2e381f pm_genpd_opp_to_performance_state +EXPORT_SYMBOL_GPL vmlinux 0xff379b43 fuse_kill_sb_anon +EXPORT_SYMBOL_GPL vmlinux 0xff42c374 usb_role_switch_get_role +EXPORT_SYMBOL_GPL vmlinux 0xff52ca3d devm_gpiod_get_array +EXPORT_SYMBOL_GPL vmlinux 0xff584d52 xenbus_grant_ring +EXPORT_SYMBOL_GPL vmlinux 0xff5a8cfe cn_del_callback +EXPORT_SYMBOL_GPL vmlinux 0xff679eaa xenbus_unmap_ring_vfree +EXPORT_SYMBOL_GPL vmlinux 0xff81487d gpiod_remove_lookup_table +EXPORT_SYMBOL_GPL vmlinux 0xff847a9b thermal_cooling_device_register +EXPORT_SYMBOL_GPL vmlinux 0xff8aa252 rtc_class_close +EXPORT_SYMBOL_GPL vmlinux 0xff9e23d1 hugetlb_cgrp_subsys_on_dfl_key +EXPORT_SYMBOL_GPL vmlinux 0xffaae521 fsl_mc_object_free +EXPORT_SYMBOL_GPL vmlinux 0xffae8e8b nsecs_to_jiffies +EXPORT_SYMBOL_GPL vmlinux 0xffaf0e24 mbox_send_message +EXPORT_SYMBOL_GPL vmlinux 0xffbb036a iommu_page_response +EXPORT_SYMBOL_GPL vmlinux 0xffcd50da rio_mport_get_efb +EXPORT_SYMBOL_GPL vmlinux 0xffd1123f save_stack_trace +EXPORT_SYMBOL_GPL vmlinux 0xffd497c9 gpiochip_free_own_desc +FIRMWARE_LOADER_PRIVATE EXPORT_SYMBOL_GPL 0xd3ae7756 fw_fallback_config vmlinux +LTC2497 EXPORT_SYMBOL 0x01b28f83 ltc2497core_remove drivers/iio/adc/ltc2497-core +LTC2497 EXPORT_SYMBOL 0x7dc06f7a ltc2497core_probe drivers/iio/adc/ltc2497-core +MCB EXPORT_SYMBOL_GPL 0x01c9cb49 mcb_get_irq drivers/mcb/mcb +MCB EXPORT_SYMBOL_GPL 0x04bff52d mcb_bus_add_devices drivers/mcb/mcb +MCB EXPORT_SYMBOL_GPL 0x5e57e8b5 mcb_bus_put drivers/mcb/mcb +MCB EXPORT_SYMBOL_GPL 0x636585e0 mcb_unregister_driver drivers/mcb/mcb +MCB EXPORT_SYMBOL_GPL 0x81749229 mcb_get_resource drivers/mcb/mcb +MCB EXPORT_SYMBOL_GPL 0x995baf8b mcb_alloc_bus drivers/mcb/mcb +MCB EXPORT_SYMBOL_GPL 0x9b6ae621 mcb_bus_get drivers/mcb/mcb +MCB EXPORT_SYMBOL_GPL 0xa45ca6b0 mcb_device_register drivers/mcb/mcb +MCB EXPORT_SYMBOL_GPL 0xa9788ea4 chameleon_parse_cells drivers/mcb/mcb +MCB EXPORT_SYMBOL_GPL 0xc660d5f2 __mcb_register_driver drivers/mcb/mcb +MCB EXPORT_SYMBOL_GPL 0xd9b972ae mcb_request_mem drivers/mcb/mcb +MCB EXPORT_SYMBOL_GPL 0xeb2c8905 mcb_release_mem drivers/mcb/mcb +MCB EXPORT_SYMBOL_GPL 0xf18b79c9 mcb_alloc_dev drivers/mcb/mcb +MCB EXPORT_SYMBOL_GPL 0xf9c651b0 mcb_free_dev drivers/mcb/mcb +MCB EXPORT_SYMBOL_GPL 0xfae551fc mcb_release_bus drivers/mcb/mcb +USB_STORAGE EXPORT_SYMBOL_GPL 0x0742d36b usb_stor_adjust_quirks drivers/usb/storage/usb-storage +USB_STORAGE EXPORT_SYMBOL_GPL 0x14bf5a95 usb_stor_host_template_init 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 0x1cbf7175 usb_stor_set_xfer_buf drivers/usb/storage/usb-storage +USB_STORAGE EXPORT_SYMBOL_GPL 0x220b48e8 usb_stor_post_reset drivers/usb/storage/usb-storage +USB_STORAGE EXPORT_SYMBOL_GPL 0x3d3a3f39 usb_stor_resume drivers/usb/storage/usb-storage +USB_STORAGE EXPORT_SYMBOL_GPL 0x4cc862c4 usb_stor_disconnect drivers/usb/storage/usb-storage +USB_STORAGE EXPORT_SYMBOL_GPL 0x5189499c usb_stor_Bulk_reset drivers/usb/storage/usb-storage +USB_STORAGE EXPORT_SYMBOL_GPL 0x51c86a72 usb_stor_CB_transport drivers/usb/storage/usb-storage +USB_STORAGE EXPORT_SYMBOL_GPL 0x68f537ce usb_stor_control_msg drivers/usb/storage/usb-storage +USB_STORAGE EXPORT_SYMBOL_GPL 0x6c6b83fe usb_stor_suspend drivers/usb/storage/usb-storage +USB_STORAGE EXPORT_SYMBOL_GPL 0x7ae5d912 usb_stor_bulk_srb drivers/usb/storage/usb-storage +USB_STORAGE EXPORT_SYMBOL_GPL 0x98c7847b usb_stor_reset_resume drivers/usb/storage/usb-storage +USB_STORAGE EXPORT_SYMBOL_GPL 0xa981d47f fill_inquiry_response drivers/usb/storage/usb-storage +USB_STORAGE EXPORT_SYMBOL_GPL 0xae4ec02d usb_stor_clear_halt drivers/usb/storage/usb-storage +USB_STORAGE EXPORT_SYMBOL_GPL 0xaf0ad7ed usb_stor_CB_reset drivers/usb/storage/usb-storage +USB_STORAGE EXPORT_SYMBOL_GPL 0xb6da8f45 usb_stor_access_xfer_buf drivers/usb/storage/usb-storage +USB_STORAGE EXPORT_SYMBOL_GPL 0xc47e9b5e usb_stor_pre_reset drivers/usb/storage/usb-storage +USB_STORAGE EXPORT_SYMBOL_GPL 0xe3fb4203 usb_stor_bulk_transfer_sg drivers/usb/storage/usb-storage +USB_STORAGE EXPORT_SYMBOL_GPL 0xe5bd21d9 usb_stor_Bulk_transport drivers/usb/storage/usb-storage +USB_STORAGE EXPORT_SYMBOL_GPL 0xea28f6c0 usb_stor_probe1 drivers/usb/storage/usb-storage +USB_STORAGE EXPORT_SYMBOL_GPL 0xf59783e6 usb_stor_ctrl_transfer drivers/usb/storage/usb-storage +USB_STORAGE EXPORT_SYMBOL_GPL 0xf5d99679 usb_stor_transparent_scsi_command drivers/usb/storage/usb-storage +USB_STORAGE EXPORT_SYMBOL_GPL 0xf953b088 usb_stor_probe2 drivers/usb/storage/usb-storage +USB_STORAGE EXPORT_SYMBOL_GPL 0xfdf87063 usb_stor_bulk_transfer_buf drivers/usb/storage/usb-storage --- linux-azure-5.8-5.8.0.orig/debian.master/abi/5.8.0-50.56/arm64/generic-64k.compiler +++ linux-azure-5.8-5.8.0/debian.master/abi/5.8.0-50.56/arm64/generic-64k.compiler @@ -0,0 +1 @@ +GCC: (Ubuntu 10.2.0-13ubuntu1) 10.2.0 --- linux-azure-5.8-5.8.0.orig/debian.master/abi/5.8.0-50.56/arm64/generic-64k.modules +++ linux-azure-5.8-5.8.0/debian.master/abi/5.8.0-50.56/arm64/generic-64k.modules @@ -0,0 +1,6317 @@ +3c59x +3w-9xxx +3w-sas +3w-xxxx +6lowpan +6pack +8021q +8139cp +8139too +8250_aspeed_vuart +8250_exar +8250_men_mcb +8250_omap +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_rdma +9pnet_virtio +9pnet_xen +a100u2w +a3d +a53-pll +a8293 +aacraid +aat2870-regulator +aat2870_bl +ab3100 +ab3100-otp +abp060mg +ac97_bus +acard-ahci +acecad +acenic +acp_audio_dma +acpi-als +acpi_configfs +acpi_ipmi +acpi_power_meter +acpi_tad +acpiphp_ibm +act8865-regulator +act8945a +act8945a-regulator +act8945a_charger +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 +ad5064 +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 +ad5770r +ad5791 +ad5820 +ad5933 +ad7091r-base +ad7091r5 +ad7124 +ad714x +ad714x-i2c +ad714x-spi +ad7150 +ad7192 +ad7266 +ad7280a +ad7291 +ad7292 +ad7298 +ad7303 +ad7314 +ad7414 +ad7418 +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 +ad9389b +ad9467 +ad9523 +ad9832 +ad9834 +ad_sigma_delta +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 +ade7854 +ade7854-i2c +ade7854-spi +adf4350 +adf4371 +adf7242 +adfs +adi +adi-axi-adc +adiantum +adin +adis16080 +adis16130 +adis16136 +adis16201 +adis16203 +adis16209 +adis16240 +adis16260 +adis16400 +adis16460 +adis16475 +adis16480 +adis_lib +adjd_s311 +adl_pci6208 +adl_pci7x3x +adl_pci8164 +adl_pci9111 +adl_pci9118 +adm1021 +adm1025 +adm1026 +adm1029 +adm1031 +adm1177 +adm1275 +adm8211 +adm9240 +adp1653 +adp5061 +adp5520-keys +adp5520_bl +adp5588-keys +adp5589-keys +adp8860_bl +adp8870_bl +adq12b +ads7828 +ads7846 +ads7871 +adt7310 +adt7316 +adt7316-i2c +adt7316-spi +adt7410 +adt7411 +adt7462 +adt7470 +adt7475 +adt7x10 +adummy +adutux +adux1020 +adv7170 +adv7175 +adv7180 +adv7183 +adv7343 +adv7393 +adv748x +adv7511_drm +adv7604 +adv7842 +adv_pci1710 +adv_pci1720 +adv_pci1723 +adv_pci1724 +adv_pci1760 +adv_pci_dio +advansys +adxl34x +adxl34x-i2c +adxl34x-spi +adxl372 +adxl372_i2c +adxl372_spi +adxrs450 +aegis128 +aes-arm64 +aes-ce-blk +aes-ce-ccm +aes-ce-cipher +aes-neon-blk +aes-neon-bs +aes_ti +af9013 +af9033 +af_alg +af_key +af_packet_diag +afe4403 +afe4404 +affs +afs +ah4 +ah6 +ahci +ahci_brcm +ahci_ceva +ahci_mtk +ahci_mvebu +ahci_platform +ahci_qoriq +ahci_seattle +ahci_xgene +aic79xx +aic7xxx +aic94xx +aio_aio12_8 +aio_iiro_16 +aiptek +aircable +airspy +ak7375 +ak881x +ak8974 +ak8975 +al3010 +al3320a +alcor +alcor_pci +algif_aead +algif_hash +algif_rng +algif_skcipher +alim7101_wdt +allegro +altera-ci +altera-cvp +altera-freeze-bridge +altera-msgdma +altera-pr-ip-core +altera-pr-ip-core-plat +altera-ps-spi +altera-stapl +altera_jtaguart +altera_ps2 +altera_tse +altera_uart +alx +am2315 +am53c974 +am65-cpts +amba-pl010 +ambakmi +amc6821 +amd +amd-xgbe +amd5536udc_pci +amd8111e +amdgpu +amlogic-gxl-crypto +amlogic_thermal +amplc_dio200 +amplc_dio200_common +amplc_dio200_pci +amplc_pc236 +amplc_pc236_common +amplc_pc263 +amplc_pci224 +amplc_pci230 +amplc_pci236 +amplc_pci263 +ams-iaq-core +ams369fg06 +analog +analogix-anx6345 +analogix-anx78xx +analogix_dp +anatop-regulator +ansi_cprng +anubis +anybuss_core +ao-cec +ao-cec-g12a +aoe +apbps2 +apcs-msm8916 +apds9300 +apds9802als +apds990x +apds9960 +apex +apple-mfi-fastcharge +appledisplay +appletalk +appletouch +applicom +apr +aptina-pll +aqc111 +aquantia +ar1021_i2c +ar5523 +ar7part +ar9331 +arasan-nand-controller +arc-rawmode +arc-rimi +arc4 +arc_emac +arc_ps2 +arc_uart +arcmsr +arcnet +arcpgu +arcx-anybus +arcxcnn_bl +arizona-haptics +arizona-i2c +arizona-ldo1 +arizona-micsupp +arizona-spi +ark3116 +arkfb +arm_dsu_pmu +arm_mhu +arm_scpi +arm_smc_wdt +arm_smmuv3_pmu +arm_spe_pmu +armada-37xx-cpufreq +armada-37xx-rwtm-mailbox +armada-8k-cpufreq +armada_37xx_wdt +arp_tables +arpt_mangle +arptable_filter +as102_fe +as370-hwmon +as3711-regulator +as3711_bl +as3722-regulator +as3935 +as5011 +asc7621 +ascot2e +ashmem_linux +asix +aspeed-pwm-tacho +aspeed-video +ast +asym_tpm +async_memcpy +async_pq +async_raid6_recov +async_tx +async_xor +at24 +at25 +at76c50x-usb +at803x +at86rf230 +ata_generic +ata_piix +atbm8830 +ath +ath10k_core +ath10k_pci +ath10k_sdio +ath10k_snoc +ath10k_usb +ath11k +ath3k +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 +atm +atmel +atmel-ecc +atmel-flexcom +atmel-hlcdc +atmel-i2c +atmel-sha204a +atmel_captouch +atmel_mxt_ts +atmel_pci +atmtcp +atp870u +atusb +atxp1 +aty128fb +atyfb +au0828 +au8522_common +au8522_decoder +au8522_dig +aufs +auo-pixcir-ts +auth_rpcgss +authenc +authencesn +autofs4 +avmfritz +ax25 +ax88179_178a +ax88796b +axg-audio +axi-fan-control +axis-fifo +axp20x +axp20x-i2c +axp20x-pek +axp20x-regulator +axp20x-rsb +axp20x_ac_power +axp20x_adc +axp20x_battery +axp20x_usb_power +axp288_adc +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 +bam_dma +bareudp +batman-adv +baycom_par +baycom_ser_fdx +baycom_ser_hdx +bcache +bch +bcm-flexrm-mailbox +bcm-keypad +bcm-pdc-mailbox +bcm-phy-lib +bcm-sba-raid +bcm-sf2 +bcm203x +bcm2711_thermal +bcm2835 +bcm2835-rng +bcm2835-v4l2 +bcm2835_thermal +bcm2835_wdt +bcm3510 +bcm54140 +bcm590xx +bcm590xx-regulator +bcm5974 +bcm63138_nand +bcm6368_nand +bcm7038_wdt +bcm7xxx +bcm87xx +bcm_crypto_spu +bcm_iproc_adc +bcm_iproc_tsc +bcma +bcma-hcd +bcmsysport +bd6107 +bd70528-charger +bd70528-regulator +bd70528_wdt +bd71828-regulator +bd718x7-regulator +bd9571mwv +bd9571mwv-regulator +bd99954-charger +bdc +be2iscsi +be2net +befs +bel-pfe +belkin_sa +berlin2-adc +bfa +bfq +bfs +bfusb +bh1750 +bh1770glc +bh1780 +binder_linux +binfmt_misc +blake2b_generic +blake2s_generic +block2mtd +blocklayoutdriver +blowfish_common +blowfish_generic +bluefield_edac +bluetooth +bluetooth_6lowpan +bma150 +bma220_spi +bma400_core +bma400_i2c +bman-test +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 +bmi160_core +bmi160_i2c +bmi160_spi +bmp280 +bmp280-i2c +bmp280-spi +bna +bnep +bnx2 +bnx2fc +bnx2i +bnx2x +bnxt_en +bnxt_re +bochs-drm +bonding +bpa10x +bpfilter +bpqether +bq2415x_charger +bq24190_charger +bq24257_charger +bq24735-charger +bq25890_charger +bq27xxx_battery +bq27xxx_battery_hdq +bq27xxx_battery_i2c +br2684 +br_netfilter +brcmfmac +brcmnand +brcmsmac +brcmstb-avs-cpufreq +brcmstb_nand +brcmstb_thermal +brcmutil +brd +bridge +broadcom +bsd_comp +bt819 +bt856 +bt866 +bt878 +btbcm +btcoexist +btintel +btmrvl +btmrvl_sdio +btmtksdio +btmtkuart +btqca +btqcomsmd +btrfs +btrsi +btrtl +btsdio +bttv +btusb +bu21013_ts +bu21029_ts +budget +budget-av +budget-ci +budget-core +budget-patch +c67x00 +c6xdigio +c_can +c_can_pci +c_can_platform +ca8210 +caam +caam_jr +caamalg_desc +caamhash_desc +cachefiles +cadence-nand-controller +cadence-quadspi +cadence_wdt +cafe_ccic +cafe_nand +caif +caif_hsi +caif_serial +caif_socket +caif_usb +caif_virtio +camcc-sdm845 +camellia_generic +can +can-bcm +can-dev +can-gw +can-j1939 +can-raw +cap11xx +capmode +capsule-loader +carl9170 +carminefb +cassini +cast5_generic +cast6_generic +cast_common +catc +cavium-rng +cavium-rng-vf +cavium_ptp +cb710 +cb710-mmc +cb_pcidas +cb_pcidas64 +cb_pcidda +cb_pcimdas +cb_pcimdda +cc10001_adc +cc2520 +cc770 +cc770_isa +cc770_platform +ccm +ccp +ccp-crypto +ccree +ccs811 +cctrng +cdc-acm +cdc-phonet +cdc-wdm +cdc_eem +cdc_ether +cdc_mbim +cdc_ncm +cdc_subset +cdns-csi2rx +cdns-csi2tx +cdns-dphy +cdns-dsi +cdns-pltfrm +cdns3 +cdns3-imx +cdns3-pci-wrap +cdns3-ti +cec +ceph +cfb +cfg80211 +cfi_cmdset_0001 +cfi_cmdset_0002 +cfi_cmdset_0020 +cfi_probe +cfi_util +cfspi_slave +ch +ch341 +ch7006 +ch9200 +chacha-neon +chacha20poly1305 +chacha_generic +chaoskey +charlcd +chcr +chipone_icn8318 +chipone_icn8505 +chipreg +chnl_net +chromeos_tbmc +chrontel-ch7033 +ci_hdrc +ci_hdrc_imx +ci_hdrc_msm +ci_hdrc_pci +ci_hdrc_tegra +ci_hdrc_usb2 +cicada +cifs +cirrus +cirrusfb +clip +clk-bd718x7 +clk-cdce706 +clk-cdce925 +clk-cs2000-cp +clk-hi3519 +clk-hi655x +clk-lochnagar +clk-max77686 +clk-max9485 +clk-palmas +clk-phase +clk-plldig +clk-pwm +clk-qcom +clk-raspberrypi +clk-rk808 +clk-rpm +clk-rpmh +clk-s2mps11 +clk-scmi +clk-scpi +clk-si514 +clk-si5341 +clk-si5351 +clk-si544 +clk-si570 +clk-smd-rpm +clk-spmi-pmic-div +clk-sprd +clk-twl6040 +clk-versaclock5 +clk-wm831x +cls_basic +cls_bpf +cls_cgroup +cls_flow +cls_flower +cls_fw +cls_matchall +cls_route +cls_rsvp +cls_rsvp6 +cls_tcindex +cls_u32 +cm109 +cm32181 +cm3232 +cm3323 +cm3605 +cm36651 +cma3000_d0x +cma3000_d0x_i2c +cmac +cmdlinepart +cmtp +cnic +cobra +coda +coda-vpu +colibri-vf50-ts +com20020 +com20020-pci +com90io +com90xx +comedi +comedi_8254 +comedi_8255 +comedi_bond +comedi_parport +comedi_pci +comedi_test +comedi_usb +contec_pci_dio +cordic +core +cortina +counter +cp210x +cpcap-adc +cpcap-battery +cpcap-charger +cpcap-pwrbutton +cpcap-regulator +cpia2 +cppc_cpufreq +cptpf +cptvf +cqhci +cramfs +crc-itu-t +crc32_generic +crc4 +crc64 +crc7 +crc8 +crct10dif-ce +crg-hi3516cv300 +crg-hi3798cv200 +cros-ec-cec +cros-ec-sensorhub +cros_ec +cros_ec_accel_legacy +cros_ec_baro +cros_ec_chardev +cros_ec_debugfs +cros_ec_dev +cros_ec_i2c +cros_ec_keyb +cros_ec_lid_angle +cros_ec_light_prox +cros_ec_lightbar +cros_ec_rpmsg +cros_ec_sensors +cros_ec_sensors_core +cros_ec_spi +cros_ec_sysfs +cros_ec_typec +cros_ec_vbc +cros_kbd_led_backlight +cros_usbpd-charger +cros_usbpd_logger +cros_usbpd_notify +cryptd +crypto_engine +crypto_safexcel +crypto_simd +crypto_user +cryptoloop +cs3308 +cs5345 +cs53l32a +csiostor +curve25519-generic +cuse +cw1200_core +cw1200_wlan_sdio +cw1200_wlan_spi +cw2015_battery +cx18 +cx18-alsa +cx22700 +cx22702 +cx231xx +cx231xx-alsa +cx231xx-dvb +cx2341x +cx23885 +cx24110 +cx24113 +cx24116 +cx24117 +cx24120 +cx24123 +cx25821 +cx25821-alsa +cx25840 +cx82310_eth +cx88-alsa +cx88-blackbird +cx88-dvb +cx88-vp3054-i2c +cx8800 +cx8802 +cx88xx +cxacru +cxd2099 +cxd2820r +cxd2841er +cxd2880 +cxd2880-spi +cxgb +cxgb3 +cxgb3i +cxgb4 +cxgb4i +cxgb4vf +cxgbit +cy8ctma140 +cy8ctmg110_ts +cyapatp +cyber2000fb +cyberjack +cyclades +cypress_cy7c63 +cypress_firmware +cypress_m8 +cytherm +cyttsp4_core +cyttsp4_i2c +cyttsp4_spi +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-thermal +da9062_wdt +da9063-regulator +da9063_onkey +da9063_wdt +da9150-charger +da9150-core +da9150-fg +da9150-gpadc +da9210-regulator +da9211-regulator +dac02 +daqboard2000 +das08 +das08_isa +das08_pci +das16 +das16m1 +das1800 +das6402 +das800 +davicom +dax_hmem +dax_pmem +dax_pmem_compat +dax_pmem_core +db9 +dc395x +dccp +dccp_diag +dccp_ipv4 +dccp_ipv6 +ddbridge +ddbridge-dummy-fe +de2104x +decnet +defxx +denali +denali_dt +denali_pci +des_generic +designware_i2s +device_dax +dfl +dfl-afu +dfl-fme +dfl-fme-br +dfl-fme-mgr +dfl-fme-region +dfl-pci +dht11 +diag +dib0070 +dib0090 +dib3000mb +dib3000mc +dib7000m +dib7000p +dib8000 +dib9000 +dibx000_common +digi_acceleport +digicolor-usart +diskonchip +dispcc-sc7180 +dispcc-sdm845 +display-connector +dl2k +dlci +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-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 +dma-axi-dmac +dmard06 +dmard09 +dmard10 +dmc520_edac +dme1737 +dmfe +dmi-sysfs +dmm32at +dmx3191d +dn_rtmsg +dnet +dp83640 +dp83822 +dp83848 +dp83867 +dp83869 +dp83tc811 +dpaa2-console +dpaa2-ethsw +dpaa2-qdma +dpaa2_caam +dpdmai +dpot-dac +dps310 +drbd +drivetemp +drm +drm_kms_helper +drm_mipi_dbi +drm_ttm_helper +drm_vram_helper +drm_xen_front +drv260x +drv2665 +drv2667 +drx39xyj +drxd +drxk +ds1621 +ds1682 +ds1803 +ds1wm +ds2482 +ds2490 +ds2760_battery +ds2780_battery +ds2781_battery +ds2782_battery +ds3000 +ds4424 +ds620 +dsa_core +dsbr100 +dst +dst_ca +dt2801 +dt2811 +dt2814 +dt2815 +dt2817 +dt282x +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-axi-dmac-platform +dw-edma +dw-edma-pcie +dw-hdmi +dw-hdmi-ahb-audio +dw-hdmi-cec +dw-hdmi-i2s-audio +dw-i3c-master +dw-mipi-dsi +dw9714 +dw9807-vcm +dw_dmac +dw_dmac_core +dw_dmac_pci +dw_drm_dsi +dw_mmc +dw_mmc-bluefield +dw_mmc-exynos +dw_mmc-hi3798cv200 +dw_mmc-k3 +dw_mmc-pci +dw_mmc-pltfm +dw_mmc-rockchip +dw_wdt +dwc-xlgmac +dwc2_pci +dwc3 +dwc3-haps +dwc3-keystone +dwc3-meson-g12a +dwc3-of-simple +dwc3-pci +dwc3-qcom +dwmac-altr-socfpga +dwmac-dwc-qos-eth +dwmac-generic +dwmac-imx +dwmac-ipq806x +dwmac-mediatek +dwmac-meson +dwmac-meson8b +dwmac-qcom-ethqos +dwmac-rk +dwmac-sun8i +dyna_pci10xx +dynapro +e100 +e1000 +e1000e +e3x0-button +e4000 +earth-pt1 +earth-pt3 +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_sys +ecc +ecdh_generic +echainiv +echo +ecrdsa_generic +edt-ft5x06 +ee1004 +eeprom +eeprom_93cx6 +eeprom_93xx46 +eeti_ts +efa +efi-pstore +efi_test +efibc +efs +egalax_ts +egalax_ts_serial +ehci-brcm +ehci-fsl +ehci-mxc +ehci-platform +ehset +einj +ektf2127 +elan_i2c +elants_i2c +elo +em28xx +em28xx-alsa +em28xx-dvb +em28xx-rc +em28xx-v4l +em_canid +em_cmp +em_ipset +em_ipt +em_meta +em_nbyte +em_text +em_u32 +emac_rockchip +emc1403 +emc2103 +emc6w201 +emi26 +emi62 +empeg +ems_pci +ems_usb +emu10k1-gp +emxx_udc +ena +enc28j60 +enclosure +encx24j600 +encx24j600-regmap +ene_ir +eni +enic +envelope-detector +epic100 +eql +erofs +error +esas2r +esd_usb2 +esp4 +esp4_offload +esp6 +esp6_offload +esp_scsi +essiv +et1011c +et131x +et8ek8 +ethoc +etnaviv +evbug +exc3000 +exfat +extcon-adc-jack +extcon-arizona +extcon-fsa9480 +extcon-gpio +extcon-max14577 +extcon-max3355 +extcon-max77693 +extcon-max77843 +extcon-max8997 +extcon-palmas +extcon-ptn5150 +extcon-qcom-spmi-misc +extcon-rt8973a +extcon-sm5502 +extcon-usb-gpio +extcon-usbc-cros-ec +ezusb +f2fs +f71805f +f71882fg +f75375s +f81232 +f81534 +f81601 +failover +fakelb +fan53555 +farsync +fastrpc +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_sys_fops +fb_tinylcd +fb_tls8204 +fb_uc1611 +fb_uc1701 +fb_upd161704 +fb_watterott +fbtft +fc0011 +fc0012 +fc0013 +fc2580 +fcoe +fcrypt +fdomain +fdomain_pci +fdp +fdp_i2c +fealnx +ff-memless +fieldbus_dev +fintek-cir +firedtv +firewire-core +firewire-net +firewire-ohci +firewire-sbp2 +firewire-serial +fixed +fjes +fl512 +flexcan +fm10k +fm801-gp +fm_drv +forcedeth +fore_200e +fotg210-hcd +fotg210-udc +fou +fou6 +fpga-bridge +fpga-mgr +fpga-region +freevxfs +fscache +fsi-core +fsi-master-aspeed +fsi-master-gpio +fsi-master-hub +fsi-occ +fsi-sbefifo +fsi-scom +fsia6b +fsl-dpaa2-eth +fsl-dpaa2-ptp +fsl-edma +fsl-edma-common +fsl-enetc +fsl-enetc-mdio +fsl-enetc-ptp +fsl-enetc-vf +fsl-mc-dpio +fsl-mph-dr-of +fsl-qdma +fsl_dpa +fsl_ifc_nand +fsl_imx8_ddr_perf +fsl_linflexuart +fsl_lpuart +fsl_pq_mdio +fsl_ucc_hdlc +fsl_usb2_udc +ftdi-elan +ftdi_sio +ftl +ftm-quaddec +ftsteutates +fujitsu_ts +fusb302 +fxas21002c_core +fxas21002c_i2c +fxas21002c_spi +fxos8700_core +fxos8700_i2c +fxos8700_spi +g450_pll +g760a +g762 +g_acm_ms +g_audio +g_cdc +g_dbgp +g_ether +g_ffs +g_hid +g_mass_storage +g_midi +g_ncm +g_nokia +g_printer +g_serial +g_webcam +g_zero +gadgetfs +gamecon +gameport +garmin_gps +garp +gasket +gateworks-gsc +gb-audio-apbridgea +gb-audio-gb +gb-audio-manager +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 +gcc-apq8084 +gcc-ipq4019 +gcc-ipq6018 +gcc-ipq806x +gcc-ipq8074 +gcc-mdm9615 +gcc-msm8660 +gcc-msm8916 +gcc-msm8939 +gcc-msm8960 +gcc-msm8974 +gcc-msm8994 +gcc-msm8996 +gcc-msm8998 +gcc-qcs404 +gcc-sc7180 +gcc-sdm660 +gcc-sdm845 +gcc-sm8150 +gcc-sm8250 +gdmtty +gdmulte +gdth +gemini +gen_probe +generic +generic-adc-battery +generic_bl +genet +geneve +genwqe_card +gf2k +gfs2 +ghash-ce +gianfar_driver +gl518sm +gl520sm +gl620a +gluebi +gm12u320 +gnss +gnss-mtk +gnss-serial +gnss-sirf +gnss-ubx +go7007 +go7007-loader +go7007-usb +goku_udc +goodix +gp2ap002 +gp2ap020a00f +gp8psk-fe +gpio +gpio-74x164 +gpio-74xx-mmio +gpio-adnp +gpio-adp5520 +gpio-adp5588 +gpio-aggregator +gpio-altera +gpio-amd-fch +gpio-amdpt +gpio-arizona +gpio-bd70528 +gpio-bd71828 +gpio-bd9571mwv +gpio-beeper +gpio-brcmstb +gpio-cadence +gpio-charger +gpio-da9052 +gpio-da9055 +gpio-dln2 +gpio-dwapb +gpio-eic-sprd +gpio-exar +gpio-fan +gpio-grgpio +gpio-gw-pld +gpio-hlwd +gpio-ir-recv +gpio-ir-tx +gpio-janz-ttl +gpio-kempld +gpio-logicvc +gpio-lp3943 +gpio-lp873x +gpio-lp87565 +gpio-madera +gpio-max3191x +gpio-max7300 +gpio-max7301 +gpio-max730x +gpio-max732x +gpio-max77620 +gpio-max77650 +gpio-mb86s7x +gpio-mc33880 +gpio-menz127 +gpio-mlxbf +gpio-mlxbf2 +gpio-moxtet +gpio-pca953x +gpio-pcf857x +gpio-pci-idio-16 +gpio-pcie-idio-24 +gpio-pisosr +gpio-pmic-eic-sprd +gpio-raspberrypi-exp +gpio-rcar +gpio-rdc321x +gpio-regulator +gpio-sama5d2-piobu +gpio-siox +gpio-sprd +gpio-syscon +gpio-thunderx +gpio-tpic2810 +gpio-tps65086 +gpio-tps65218 +gpio-tps65912 +gpio-tqmx86 +gpio-twl4030 +gpio-twl6040 +gpio-ucb1400 +gpio-vibra +gpio-viperboard +gpio-wcd934x +gpio-wm831x +gpio-wm8350 +gpio-wm8994 +gpio-xgene-sb +gpio-xgs-iproc +gpio-xlp +gpio-xra1403 +gpio-zynq +gpio_backlight +gpio_decoder +gpio_keys +gpio_keys_polled +gpio_mouse +gpio_wdt +gpmi_nand +gpu-sched +gpucc-msm8998 +gpucc-sc7180 +gpucc-sdm845 +gr_udc +grace +grcan +gre +greybus +grip +grip_mp +gs1662 +gs_fpga +gs_usb +gsc-hwmon +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 +gtco +gtp +guillemot +gunze +gve +habanalabs +hackrf +hamachi +hampshire +hantro-vpu +hanwang +hbmc-am654 +hci +hci_nokia +hci_uart +hci_vhci +hclge +hclgevf +hd3ss3220 +hd44780 +hdc100x +hdlc +hdlc_cisco +hdlc_fr +hdlc_ppp +hdlc_raw +hdlc_raw_eth +hdlc_x25 +hdlcd +hdlcdrv +hdma +hdma_mgmt +hdpvr +he +helene +hexium_gemini +hexium_orion +hfcmulti +hfcpci +hfcsusb +hfpll +hfs +hfsplus +hi311x +hi3660-mailbox +hi556 +hi6210-i2s +hi6220-mailbox +hi6220_reset +hi6421-pmic-core +hi6421-regulator +hi6421v530-regulator +hi655x-pmic +hi655x-regulator +hi8435 +hibmc-drm +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-ezkey +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-icade +hid-ite +hid-jabra +hid-kensington +hid-keytouch +hid-kye +hid-lcpower +hid-led +hid-lenovo +hid-lg-g15 +hid-logitech +hid-logitech-dj +hid-logitech-hidpp +hid-macally +hid-magicmouse +hid-maltron +hid-mcp2221 +hid-mf +hid-microsoft +hid-monterey +hid-multitouch +hid-nti +hid-ntrig +hid-ortek +hid-penmount +hid-petalynx +hid-picolcd +hid-pl +hid-plantronics +hid-primax +hid-prodikeys +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-sensor-accel-3d +hid-sensor-als +hid-sensor-custom +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-sjoy +hid-sony +hid-speedlink +hid-steam +hid-steelseries +hid-sunplus +hid-tivo +hid-tmff +hid-topseed +hid-twinhan +hid-u2fzero +hid-uclogic +hid-udraw-ps3 +hid-viewsonic +hid-waltop +hid-wiimote +hid-xinmo +hid-zpff +hid-zydacron +hideep +hidp +hih6130 +hinic +hip04_eth +hisi-rng +hisi-sfc +hisi-trng-v2 +hisi504_nand +hisi_dma +hisi_femac +hisi_hpre +hisi_powerkey +hisi_qm +hisi_sas_main +hisi_sas_v1_hw +hisi_sas_v2_hw +hisi_sas_v3_hw +hisi_sec +hisi_sec2 +hisi_thermal +hisi_zip +hix5hd2_gmac +hmc425a +hmc5843_core +hmc5843_i2c +hmc5843_spi +hmc6352 +hms-profinet +hnae +hnae3 +hns-roce-hw-v1 +hns-roce-hw-v2 +hns3 +hns_dsaf +hns_enet_drv +hns_mdio +hopper +horus3a +hostap +hostap_pci +hostap_plx +hp03 +hp206c +hpfs +hpilo +hpsa +hptiop +hsi +hsi_char +hso +hsr +ht16k33 +htc-pasic3 +hts221 +hts221_i2c +hts221_spi +htu21 +huawei_cdc_ncm +hwmon-vid +hwpoison-inject +hx711 +hx8357 +hx8357d +hyperbus-core +i2400m +i2400m-usb +i2c-algo-bit +i2c-algo-pca +i2c-ali1535 +i2c-ali1563 +i2c-ali15x3 +i2c-amd756 +i2c-amd8111 +i2c-arb-gpio-challenge +i2c-bcm-iproc +i2c-bcm2835 +i2c-brcmstb +i2c-cbus-gpio +i2c-cros-ec-tunnel +i2c-demux-pinctrl +i2c-designware-pci +i2c-diolan-u2c +i2c-dln2 +i2c-fsi +i2c-gpio +i2c-hid +i2c-hix5hd2 +i2c-i801 +i2c-imx +i2c-imx-lpi2c +i2c-isch +i2c-kempld +i2c-matroxfb +i2c-meson +i2c-mt65xx +i2c-mux +i2c-mux-gpio +i2c-mux-gpmux +i2c-mux-ltc4306 +i2c-mux-mlxcpld +i2c-mux-pca9541 +i2c-mux-pca954x +i2c-mux-pinctrl +i2c-mux-reg +i2c-mv64xxx +i2c-nforce2 +i2c-nomadik +i2c-nvidia-gpu +i2c-ocores +i2c-owl +i2c-parport +i2c-pca-platform +i2c-piix4 +i2c-pxa +i2c-qcom-cci +i2c-qcom-geni +i2c-qup +i2c-rcar +i2c-riic +i2c-rk3x +i2c-robotfuzz-osif +i2c-scmi +i2c-sh_mobile +i2c-simtec +i2c-sis5595 +i2c-sis630 +i2c-sis96x +i2c-slave-eeprom +i2c-smbus +i2c-stub +i2c-synquacer +i2c-taos-evm +i2c-thunderx +i2c-tiny-usb +i2c-versatile +i2c-via +i2c-viapro +i2c-viperboard +i2c-xgene-slimpro +i2c-xiic +i2c-xlp9xx +i3c +i3c-master-cdns +i40e +i40iw +i5k_amb +i6300esb +i740fb +iavf +ib_cm +ib_core +ib_ipoib +ib_iser +ib_isert +ib_mthca +ib_srp +ib_srpt +ib_umad +ib_uverbs +ibm-cffps +ibmaem +ibmpex +icc-bcm-voter +icc-osm-l3 +icc-rpmh +icc-smd-rpm +ice +ice40-spi +icp +icp10100 +icp_multi +icplus +ics932s401 +idma64 +idmouse +idt77252 +idt_89hpesx +idt_gen2 +idt_gen3 +idtcps +ieee802154 +ieee802154_6lowpan +ieee802154_socket +ifb +ifcvf +ife +ifi_canfd +iforce +iforce-serio +iforce-usb +igb +igbvf +igc +igorplugusb +iguanair +ii_pci20kc +iio-mux +iio-rescale +iio-trig-hrtimer +iio-trig-interrupt +iio-trig-loop +iio-trig-sysfs +iio_dummy +iio_hwmon +ila +ili210x +ili9225 +ili922x +ili9320 +ili9341 +ili9486 +img-ascii-lcd +img-i2s-in +img-i2s-out +img-parallel-out +img-spdif-in +img-spdif-out +imon +imon_raw +ims-pcu +imx-bus +imx-cpufreq-dt +imx-dma +imx-dsp +imx-interconnect +imx-mailbox +imx-pcm-dma +imx-pxp +imx-sdma +imx214 +imx219 +imx258 +imx274 +imx290 +imx2_wdt +imx319 +imx355 +imx6q-cpufreq +imx6ul_tsc +imx7d_adc +imx7ulp_wdt +imx8m-ddrc +imx8mm-interconnect +imx8mm_thermal +imx8mn-interconnect +imx8mq-interconnect +imx_keypad +imx_rproc +imx_sc_key +imx_sc_thermal +imx_sc_wdt +imx_thermal +imxfb +ina209 +ina2xx +ina2xx-adc +ina3221 +industrialio +industrialio-buffer-cb +industrialio-buffer-dma +industrialio-buffer-dmaengine +industrialio-configfs +industrialio-hw-consumer +industrialio-sw-device +industrialio-sw-trigger +industrialio-triggered-buffer +industrialio-triggered-event +inet_diag +inexio +inftl +initio +input-leds +input-polldev +inspur-ipsps +int51x1 +intel-xway +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_vr_nor +interact +inv-mpu6050 +inv-mpu6050-i2c +inv-mpu6050-spi +io_edgeport +io_ti +ionic +iowarrior +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_wlc +ip_vs_wrr +ip_vti +ipa +ipack +ipaq +ipcomp +ipcomp6 +iphase +ipheth +ipip +ipmb_dev_int +ipmi_devintf +ipmi_msghandler +ipmi_poweroff +ipmi_si +ipmi_ssif +ipmi_watchdog +ipoctal +ipr +iproc-rng200 +iproc_nand +ips +ipt_CLUSTERIP +ipt_ECN +ipt_REJECT +ipt_SYNPROXY +ipt_ah +ipt_rpfilter +iptable_filter +iptable_mangle +iptable_nat +iptable_raw +iptable_security +ipvlan +ipvtap +ipw +ipw2100 +ipw2200 +iqs269a +iqs5xx +iqs620at-temp +iqs621-als +iqs624-pos +iqs62x +iqs62x-keys +ir-hix5hd2 +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-spi +ir-usb +ir-xmp-decoder +ir35221 +ir38064 +irps5401 +irq-madera +iscsi_boot_sysfs +iscsi_ibft +iscsi_target_mod +iscsi_tcp +isdnhdlc +isicom +isight_firmware +isl29003 +isl29018 +isl29020 +isl29028 +isl29125 +isl29501 +isl6271a-regulator +isl6405 +isl6421 +isl6423 +isl68137 +isl9305 +isofs +isp116x-hcd +isp1704_charger +isp1760 +it87 +it913x +itd1000 +ite-cir +itg3200 +iuu_phoenix +ivtv +ivtv-alsa +ivtvfb +iw_cm +iw_cxgb4 +iwl3945 +iwl4965 +iwldvm +iwlegacy +iwlmvm +iwlwifi +ix2505v +ixgb +ixgbe +ixgbevf +janz-cmodio +janz-ican3 +jc42 +jedec_probe +jffs2 +jfs +jmb38x_ms +jme +joydev +joydump +jr3_pci +jsa1212 +jsm +k3_bandgap +k3dma +kafs +kalmia +kaweth +kbtab +kcm +kcomedilib +ke_counter +kempld-core +kempld_wdt +kernelcapi +keyspan +keyspan_pda +keyspan_remote +keywrap +kfifo_buf +khazad +kheaders +kirin-drm +kl5kusb105 +kmem +kmx61 +kobil_sct +komeda +kpc2000 +kpc2000_i2c +kpc2000_spi +kpc_dma +kpss-xcc +ks0127 +ks7010 +ks8842 +ks8851 +ks8851_mll +ksz8795 +ksz8795_spi +ksz884x +ksz9477 +ksz9477_i2c +ksz9477_spi +ksz_common +kvaser_pci +kvaser_pciefd +kvaser_usb +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 +l4f00242t03 +l64781 +lan743x +lan78xx +lan9303-core +lan9303_i2c +lan9303_mdio +lanai +lantiq_gswip +lapb +lapbether +lattice-ecp3-config +layerscape_edac_mod +lcc-ipq806x +lcc-mdm9615 +lcc-msm8960 +lcd +ldusb +lec +led-class-flash +led_bl +leds-88pm860x +leds-aat1290 +leds-adp5520 +leds-an30259a +leds-as3645a +leds-aw2013 +leds-bcm6328 +leds-bcm6358 +leds-bd2802 +leds-blinkm +leds-cpcap +leds-cr0014114 +leds-da903x +leds-da9052 +leds-dac124s085 +leds-el15203000 +leds-gpio +leds-is31fl319x +leds-is31fl32xx +leds-ktd2692 +leds-lm3530 +leds-lm3532 +leds-lm3533 +leds-lm355x +leds-lm3601x +leds-lm36274 +leds-lm3642 +leds-lm3692x +leds-lm3697 +leds-lp3944 +leds-lp3952 +leds-lp5521 +leds-lp5523 +leds-lp5562 +leds-lp55xx-common +leds-lp8501 +leds-lp8788 +leds-lp8860 +leds-lt3593 +leds-max77650 +leds-max77693 +leds-max8997 +leds-mc13783 +leds-menf21bmc +leds-mlxreg +leds-mt6323 +leds-pca9532 +leds-pca955x +leds-pca963x +leds-pwm +leds-regulator +leds-sc27xx-bltc +leds-sgm3140 +leds-spi-byte +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-gpio +ledtrig-heartbeat +ledtrig-netdev +ledtrig-oneshot +ledtrig-pattern +ledtrig-timer +ledtrig-transient +ledtrig-usbport +lego_ev3_battery +legousbtower +lg-vl600 +lg2160 +lgdt3305 +lgdt3306a +lgdt330x +lgs8gl5 +lgs8gxx +lib80211 +lib80211_crypt_ccmp +lib80211_crypt_tkip +lib80211_crypt_wep +libarc4 +libblake2s +libblake2s-generic +libceph +libchacha +libchacha20poly1305 +libcomposite +libcrc32c +libcurve25519 +libcurve25519-generic +libcxgb +libcxgbi +libdes +libertas +libertas_sdio +libertas_spi +libertas_tf +libertas_tf_usb +libfc +libfcoe +libipw +libiscsi +libiscsi_tcp +libpoly1305 +libsas +lightning +lima +lineage-pem +linear +liquidio +liquidio_vf +lis3lv02d +lis3lv02d_i2c +lkkbd +ll_temac +llc +llc2 +llcc-qcom +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 +lochnagar-hwmon +lochnagar-regulator +lockd +lp +lp3943 +lp3971 +lp3972 +lp855x_bl +lp8727_charger +lp872x +lp873x +lp873x-regulator +lp8755 +lp87565 +lp87565-regulator +lp8788-buck +lp8788-charger +lp8788-ldo +lp8788_adc +lp8788_bl +lpasscc-sdm845 +lpc_ich +lpc_sch +lpddr_cmds +lpfc +lru_cache +lrw +lt3651-charger +ltc1660 +ltc2471 +ltc2485 +ltc2496 +ltc2497 +ltc2497-core +ltc2632 +ltc2941-battery-gauge +ltc2945 +ltc2947-core +ltc2947-i2c +ltc2947-spi +ltc2978 +ltc2983 +ltc2990 +ltc3589 +ltc3676 +ltc3815 +ltc4151 +ltc4215 +ltc4222 +ltc4245 +ltc4260 +ltc4261 +ltr501 +ltv350qv +lv0104cs +lv5207lp +lvds-codec +lvstest +lxt +lz4 +lz4hc +lz4hc_compress +m2m-deinterlace +m52790 +m5mols +m62332 +m88ds3103 +m88rs2000 +m88rs6000t +mISDN_core +mISDN_dsp +mISDNinfineon +mISDNipac +mISDNisar +m_can +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 +macb +macb_pci +machxo2-spi +macmodes +macsec +macvlan +macvtap +madera +madera-i2c +madera-spi +mag3110 +magellan +mailbox-altera +mailbox-test +mailbox-xgene-slimpro +mali-dp +mantis +mantis_core +map_absent +map_funcs +map_ram +map_rom +marvell +marvell-cesa +marvell10g +marvell_nand +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 +max11801_ts +max1241 +max1363 +max14577-regulator +max14577_charger +max14656_charger_detector +max1586 +max16064 +max16065 +max1619 +max16601 +max1668 +max17040_battery +max17042_battery +max1721x_battery +max197 +max20730 +max20751 +max2165 +max2175 +max30100 +max30102 +max3100 +max31722 +max31730 +max31785 +max31790 +max31856 +max3420_udc +max3421-hcd +max34440 +max44000 +max44009 +max517 +max5432 +max5481 +max5487 +max5821 +max63xx_wdt +max6621 +max6639 +max6642 +max6650 +max6697 +max6875 +max7359_keypad +max77620-regulator +max77620_thermal +max77620_wdt +max77650 +max77650-charger +max77650-onkey +max77650-regulator +max77686-regulator +max77693-haptic +max77693-regulator +max77693_charger +max77802-regulator +max77826-regulator +max8649 +max8660 +max8688 +max8903_charger +max8907 +max8907-regulator +max8925-regulator +max8925_bl +max8925_onkey +max8925_power +max8952 +max8973-regulator +max8997-regulator +max8997_charger +max8997_haptic +max8998 +max8998_charger +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 +mc44s803 +mcam-core +mcb +mcb-lpc +mcb-pci +mcba_usb +mceusb +mchp23k256 +mcp16502 +mcp251x +mcp3021 +mcp320x +mcp3422 +mcp3911 +mcp4018 +mcp41010 +mcp4131 +mcp4531 +mcp4725 +mcp4922 +mcr20a +mcs5000_ts +mcs7830 +mcs_touchkey +mct_u232 +md-cluster +md4 +mdc800 +mdev +mdio +mdio-bcm-unimac +mdio-bitbang +mdio-cavium +mdio-gpio +mdio-hisi-femac +mdio-i2c +mdio-ipq4019 +mdio-ipq8064 +mdio-mscc-miim +mdio-mux-gpio +mdio-mux-meson-g12a +mdio-mux-mmioreg +mdio-mux-multiplexer +mdio-mvusb +mdio-octeon +mdio-thunder +mdio-xgene +mdio-xpcs +mdt_loader +me4000 +me_daq +mediatek +mediatek-cpufreq +mediatek-drm +mediatek-drm-hdmi +megachips-stdpxxxx-ge-b850v3-fw +megaraid +megaraid_mbox +megaraid_mm +megaraid_sas +melfas_mip4 +memory-notifier-error-inject +memstick +men_z135_uart +men_z188_adc +mena21_wdt +menf21bmc +menf21bmc_hwmon +menf21bmc_wdt +menz69_wdt +meson-canvas +meson-drm +meson-gx-mmc +meson-gxl +meson-ir +meson-mx-sdio +meson-rng +meson-vdec +meson_dw_hdmi +meson_gxbb_wdt +meson_nand +meson_saradc +meson_wdt +metro-usb +metronomefb +mf6x4 +mgag200 +mhi +mi0283qt +michael_mic +micrel +microchip +microchip_t1 +microread +microread_i2c +microtek +minix +mip6 +mite +mk712 +mkiss +ml86v7667 +mlx4_core +mlx4_en +mlx4_ib +mlx5_core +mlx5_ib +mlx90614 +mlx90632 +mlx_wdt +mlxbf-bootctl +mlxbf-tmfifo +mlxfw +mlxreg-fan +mlxreg-hotplug +mlxreg-io +mlxsw_core +mlxsw_i2c +mlxsw_minimal +mlxsw_pci +mlxsw_spectrum +mlxsw_switchib +mlxsw_switchx2 +mma7455_core +mma7455_i2c +mma7455_spi +mma7660 +mma8450 +mma8452 +mma9551 +mma9551_core +mma9553 +mmc35240 +mmc_hsq +mmc_spi +mmcc-apq8084 +mmcc-msm8960 +mmcc-msm8974 +mmcc-msm8996 +mmcc-msm8998 +mms114 +mn88443x +mn88472 +mn88473 +mos7720 +mos7840 +most_cdev +most_core +most_dim2 +most_i2c +most_net +most_sound +most_usb +most_video +motorola-cpcap +moxa +moxtet +mp2629 +mp2629_adc +mp2629_charger +mp5416 +mp8859 +mp886x +mpc624 +mpl115 +mpl115_i2c +mpl115_spi +mpl3115 +mpls_gso +mpls_iptunnel +mpls_router +mpoa +mpq7920 +mpr121_touchkey +mpt3sas +mptbase +mptctl +mptfc +mptlan +mptsas +mptscsih +mptspi +mpu3050 +mrf24j40 +mrp +ms5611_core +ms5611_i2c +ms5611_spi +ms5637 +ms_block +ms_sensors_i2c +mscc +mscc_felix +mscc_ocelot_common +msdos +msi001 +msi2500 +msm +msp3400 +mspro_block +mss-sc7180 +mt2060 +mt2063 +mt20xx +mt2131 +mt2266 +mt312 +mt352 +mt6311-regulator +mt6323-regulator +mt6358-regulator +mt6360-core +mt6380-regulator +mt6397 +mt6397-regulator +mt6577_auxadc +mt6797-mt6351 +mt7530 +mt76 +mt76-usb +mt7601u +mt7603e +mt7615-common +mt7615e +mt7663u +mt76x0-common +mt76x02-lib +mt76x02-usb +mt76x0e +mt76x0u +mt76x2-common +mt76x2e +mt76x2u +mt7915e +mt8183-da7219-max98357 +mt8183-mt6358-ts3a227-max98357 +mt9m001 +mt9m032 +mt9m111 +mt9p031 +mt9t001 +mt9t112 +mt9v011 +mt9v032 +mt9v111 +mtd +mtd_blkdevs +mtd_dataflash +mtdblock +mtdblock_ro +mtdoops +mtdpstore +mtdram +mtdswap +mtip32xx +mtk-btcvsd +mtk-cir +mtk-cmdq-helper +mtk-cmdq-mailbox +mtk-cqdma +mtk-hsdma +mtk-pmic-keys +mtk-pmic-wrap +mtk-rng +mtk-sd +mtk-uart-apdma +mtk-vpu +mtk_ecc +mtk_nand +mtk_rpmsg +mtk_scp +mtk_scp_ipi +mtk_thermal +mtk_wdt +mtouch +mtu3 +multipath +multiq3 +musb_hdrc +mux-adg792a +mux-adgs1408 +mux-core +mux-gpio +mux-mmio +mv88e6060 +mv88e6xxx +mv_u3d_core +mv_udc +mvmdio +mvneta +mvpp2 +mvsas +mvumi +mwifiex +mwifiex_pcie +mwifiex_sdio +mwifiex_usb +mwl8k +mxb +mxc4005 +mxc6255 +mxc_nand +mxc_w1 +mxcmmc +mxic_nand +mxl111sf-demod +mxl111sf-tuner +mxl301rf +mxl5005s +mxl5007t +mxl5xx +mxser +mxsfb +mxuport +myrb +myri10ge +myrs +n5pf +n_gsm +n_hdlc +n_tracerouter +n_tracesink +nand +nand_ecc +nandcore +nandsim +national +natsemi +nau7802 +navman +nb8800 +nbd +nci +nci_spi +nci_uart +nct6683 +nct6775 +nct7802 +nct7904 +nd_blk +nd_btt +nd_pmem +nd_virtio +ne2k-pci +neofb +net1080 +net2272 +net2280 +net_failover +netconsole +netdevsim +netjet +netlink_diag +netrom +netsec +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_flow_table_ipv4 +nf_flow_table_ipv6 +nf_log_arp +nf_log_bridge +nf_log_common +nf_log_ipv4 +nf_log_ipv6 +nf_log_netdev +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_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_counter +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_objref +nft_osf +nft_queue +nft_quota +nft_redir +nft_reject +nft_reject_bridge +nft_reject_inet +nft_reject_ipv4 +nft_reject_ipv6 +nft_socket +nft_synproxy +nft_tproxy +nft_tunnel +nft_xfrm +nftl +ngene +nhc_dest +nhc_fragment +nhc_hop +nhc_ipv6 +nhc_mobility +nhc_routing +nhc_udp +nhpoly1305 +nhpoly1305-neon +ni_6527 +ni_65xx +ni_660x +ni_670x +ni_at_a2150 +ni_at_ao +ni_atmio +ni_atmio16d +ni_labpc +ni_labpc_common +ni_labpc_pci +ni_pcidio +ni_pcimio +ni_routing +ni_tio +ni_tiocmd +ni_usb6501 +nicpf +nicstar +nicvf +nilfs2 +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 +noa1305 +noon010pc30 +nosy +notifier-error-inject +nouveau +nozomi +npcm750-pwm-fan +nps_enet +ns +ns-thermal +ns558 +ns83820 +nsh +ntb +ntb_hw_idt +ntb_hw_switchtec +ntb_netdev +ntb_perf +ntb_pingpong +ntb_tool +ntb_transport +ntc_thermistor +ntfs +null_blk +nuvoton-cir +nvidiafb +nvme +nvme-core +nvme-fabrics +nvme-fc +nvme-loop +nvme-rdma +nvme-tcp +nvmem-bcm-ocotp +nvmem-imx-iim +nvmem-imx-ocotp +nvmem-imx-ocotp-scu +nvmem-rave-sp-eeprom +nvmem-reboot-mode +nvmem-rockchip-otp +nvmem-sc27xx-efuse +nvmem_meson_mx_efuse +nvmem_qcom-spmi-sdam +nvmem_qfprom +nvmem_rockchip_efuse +nvmem_snvs_lpgpr +nvmem_sprd_efuse +nvmem_sunxi_sid +nvmet +nvmet-fc +nvmet-rdma +nvmet-tcp +nwl-dsi +nxp-nci +nxp-nci_i2c +nxp-ptn3460 +nxp-tja11xx +nxt200x +nxt6000 +objagg +ocelot_vsc7514 +ocfb +ocfs2 +ocfs2_dlm +ocfs2_dlmfs +ocfs2_nodemanager +ocfs2_stack_o2cb +ocfs2_stack_user +ocfs2_stackglue +ocmem +ocrdma +octeontx-cpt +octeontx-cptvf +octeontx2_af +octeontx2_mbox +octeontx2_nicpf +octeontx2_nicvf +of-fpga-region +of_mmc_spi +of_pmem +of_xilinx_wdt +ofb +ofpart +ohci-platform +omap-mailbox +omap-rng +omap4-keypad +omap_hwspinlock +omfs +omninet +onenand +opencores-kbd +openvswitch +opt3001 +optee +optee-rng +opticon +option +or51132 +or51211 +orangefs +orinoco +orinoco_nortel +orinoco_plx +orinoco_tmd +orinoco_usb +oti6858 +otm3225a +ov13858 +ov2640 +ov2659 +ov2680 +ov2685 +ov2740 +ov5640 +ov5645 +ov5647 +ov5670 +ov5675 +ov5695 +ov6650 +ov7251 +ov7640 +ov7670 +ov772x +ov7740 +ov8856 +ov9640 +ov9650 +overlay +owl-dma +owl-mmc +oxu210hp-hcd +p54common +p54pci +p54spi +p54usb +p8022 +pa12203001 +palmas-pwrbutton +palmas-regulator +palmas_gpadc +pandora_bl +panel +panel-arm-versatile +panel-asus-z00t-tm5p5-n35596 +panel-boe-himax8279d +panel-boe-tv101wum-nl6 +panel-elida-kd35t133 +panel-feixin-k101-im2ba02 +panel-feiyang-fy07024di26a30d +panel-ilitek-ili9322 +panel-ilitek-ili9881c +panel-innolux-p079zca +panel-jdi-lt070me05000 +panel-kingdisplay-kd097d04 +panel-leadtek-ltk050h3146w +panel-leadtek-ltk500hd1829 +panel-lg-lb035q02 +panel-lg-lg4573 +panel-lvds +panel-nec-nl8048hl11 +panel-novatek-nt35510 +panel-novatek-nt39016 +panel-olimex-lcd-olinuxino +panel-orisetech-otm8009a +panel-osd-osd101t2587-53ts +panel-panasonic-vvx10f034n00 +panel-raspberrypi-touchscreen +panel-raydium-rm67191 +panel-raydium-rm68200 +panel-rocktech-jh057n00900 +panel-ronbo-rb070d30 +panel-samsung-ld9040 +panel-samsung-s6d16d0 +panel-samsung-s6e3ha2 +panel-samsung-s6e63j0x03 +panel-samsung-s6e63m0 +panel-samsung-s6e88a0-ams452ef01 +panel-samsung-s6e8aa0 +panel-seiko-43wvf1g +panel-sharp-lq101r1sx01 +panel-sharp-ls037v7dw01 +panel-sharp-ls043t1le01 +panel-simple +panel-sitronix-st7701 +panel-sitronix-st7789v +panel-sony-acx424akp +panel-sony-acx565akm +panel-tpo-td028ttec1 +panel-tpo-td043mtea1 +panel-tpo-tpg110 +panel-truly-nt35597 +panel-visionox-rm69299 +panel-xinpeng-xpp055c272 +panfrost +parade-ps8622 +parade-ps8640 +parkbd +parman +parport +parport_ax88796 +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_imx +pata_it8213 +pata_it821x +pata_jmicron +pata_legacy +pata_marvell +pata_mpiix +pata_netcell +pata_ninja32 +pata_ns87410 +pata_ns87415 +pata_of_platform +pata_oldpiix +pata_opti +pata_optidma +pata_pdc2027x +pata_pdc202xx_old +pata_piccolo +pata_platform +pata_radisys +pata_rdc +pata_rz1000 +pata_sch +pata_serverworks +pata_sil680 +pata_sis +pata_sl82c105 +pata_triflex +pata_via +pblk +pc300too +pc87360 +pc87427 +pcap-regulator +pcap_keys +pcap_ts +pcbc +pcf50633 +pcf50633-adc +pcf50633-backlight +pcf50633-charger +pcf50633-gpio +pcf50633-input +pcf50633-regulator +pcf8574_keypad +pcf8591 +pch_udc +pci +pci-pf-stub +pci-stub +pci200syn +pcie-brcmstb +pcie-iproc +pcie-iproc-platform +pcie-rockchip-host +pcips2 +pcl711 +pcl724 +pcl726 +pcl730 +pcl812 +pcl816 +pcl818 +pcm3724 +pcmad +pcmcia_core +pcmcia_rsrc +pcmda12 +pcmmio +pcmuio +pcnet32 +pcrypt +pcwd_pci +pcwd_usb +pda_power +pdc_adma +pdr_interface +peak_pci +peak_pciefd +peak_usb +pegasus +pegasus_notetaker +penmount +pfuze100-regulator +phantom +phonet +phram +phy-am654-serdes +phy-armada38x-comphy +phy-bcm-kona-usb2 +phy-bcm-ns-usb2 +phy-bcm-ns-usb3 +phy-bcm-ns2-usbdrd +phy-bcm-sr-pcie +phy-bcm-sr-usb +phy-berlin-sata +phy-berlin-usb +phy-brcm-usb-dvr +phy-cadence-salvo +phy-cadence-sierra +phy-cadence-torrent +phy-cpcap-usb +phy-exynos-usb2 +phy-fsl-imx8-mipi-dphy +phy-fsl-imx8mq-usb +phy-generic +phy-gmii-sel +phy-gpio-vbus-usb +phy-hi3660-usb3 +phy-hi6220-usb +phy-hisi-inno-usb2 +phy-histb-combphy +phy-isp1301 +phy-j721e-wiz +phy-mapphone-mdm6600 +phy-meson-g12a-usb2 +phy-meson-g12a-usb3-pcie +phy-meson-gxl-usb2 +phy-meson8b-usb2 +phy-mtk-tphy +phy-mtk-ufs +phy-mtk-xsphy +phy-mvebu-a3700-comphy +phy-mvebu-a3700-utmi +phy-mvebu-cp110-comphy +phy-ocelot-serdes +phy-omap-usb2 +phy-pxa-28nm-hsic +phy-pxa-28nm-usb2 +phy-qcom-apq8064-sata +phy-qcom-ipq4019-usb +phy-qcom-ipq806x-sata +phy-qcom-pcie2 +phy-qcom-qmp +phy-qcom-qusb2 +phy-qcom-snps-femto-v2 +phy-qcom-ufs +phy-qcom-ufs-qmp-14nm +phy-qcom-usb-hs +phy-qcom-usb-hs-28nm +phy-qcom-usb-hsic +phy-qcom-usb-ss +phy-rcar-gen2 +phy-rcar-gen3-pcie +phy-rcar-gen3-usb2 +phy-rcar-gen3-usb3 +phy-rockchip-dp +phy-rockchip-dphy-rx0 +phy-rockchip-emmc +phy-rockchip-inno-dsidphy +phy-rockchip-inno-hdmi +phy-rockchip-inno-usb2 +phy-rockchip-pcie +phy-rockchip-typec +phy-rockchip-usb +phy-sun4i-usb +phy-sun50i-usb3 +phy-sun6i-mipi-dphy +phy-tahvo +phy-tusb1210 +phylink +physmap +pi3usb30532 +pi433 +pinctrl-apq8064 +pinctrl-apq8084 +pinctrl-axp209 +pinctrl-da9062 +pinctrl-ipq4019 +pinctrl-ipq6018 +pinctrl-ipq8064 +pinctrl-ipq8074 +pinctrl-lochnagar +pinctrl-madera +pinctrl-max77620 +pinctrl-mcp23s08 +pinctrl-mcp23s08_i2c +pinctrl-mcp23s08_spi +pinctrl-mdm9615 +pinctrl-msm8660 +pinctrl-msm8916 +pinctrl-msm8960 +pinctrl-msm8976 +pinctrl-msm8994 +pinctrl-msm8996 +pinctrl-msm8998 +pinctrl-msm8x74 +pinctrl-qcs404 +pinctrl-qdf2xxx +pinctrl-rk805 +pinctrl-sc7180 +pinctrl-sdm660 +pinctrl-sdm845 +pinctrl-sm8150 +pinctrl-sm8250 +pinctrl-spmi-gpio +pinctrl-spmi-mpp +pinctrl-ssbi-gpio +pinctrl-ssbi-mpp +pinctrl-stmfx +ping +pistachio-internal-dac +pixcir_i2c_ts +pkcs7_test_key +pkcs8_key_parser +pktcdvd +pktgen +pl111_drm +pl172 +pl2303 +pl330 +plat-ram +plat_nand +platform_lcd +platform_mhu +plip +plusb +pluto2 +plx_dma +plx_pci +pm-notifier-error-inject +pm2fb +pm3fb +pm80xx +pm8916_wdt +pm8941-pwrkey +pm8xxx-vibrator +pmbus +pmbus_core +pmc551 +pmcraid +pms7003 +pn532_uart +pn533 +pn533_i2c +pn533_usb +pn544 +pn544_i2c +pn_pep +poly1305-neon +poly1305_generic +port100 +powermate +powr1220 +ppdev +ppp_async +ppp_deflate +ppp_mppe +ppp_synctty +pppoatm +pppoe +pppox +pps-gpio +pps-ldisc +pps_parport +pptp +pretimeout_panic +prism2_usb +ps2-gpio +ps2mult +psample +psmouse +psnap +pstore_blk +pstore_zone +psxpad-spi +ptp-qoriq +ptp_clockmatrix +ptp_dte +ptp_idt82p33 +ptp_ines +pulse8-cec +pulsedlight-lidar-lite-v2 +pv88060-regulator +pv88080-regulator +pv88090-regulator +pvcalls-front +pvpanic +pvrusb2 +pwc +pwm-atmel-hlcdc +pwm-bcm-iproc +pwm-bcm2835 +pwm-beeper +pwm-berlin +pwm-brcmstb +pwm-cros-ec +pwm-fan +pwm-fsl-ftm +pwm-hibvt +pwm-imx-tpm +pwm-imx1 +pwm-imx27 +pwm-iqs620a +pwm-ir-tx +pwm-lp3943 +pwm-mediatek +pwm-meson +pwm-mtk-disp +pwm-pca9685 +pwm-rcar +pwm-regulator +pwm-renesas-tpu +pwm-rockchip +pwm-sprd +pwm-sun4i +pwm-tiecap +pwm-tiehrpwm +pwm-twl +pwm-twl-led +pwm-vibra +pwm_bl +pwrseq_emmc +pwrseq_sd8787 +pwrseq_simple +pxa168_eth +pxa27x_udc +pxe1610 +pxrc +q6adm +q6afe +q6afe-dai +q6asm +q6asm-dai +q6core +q6dsp-common +q6routing +q6sstop-qcs404 +qca8k +qca_7k_common +qcaspi +qcauart +qcaux +qcom-apcs-ipc-mailbox +qcom-camss +qcom-coincell +qcom-cpr +qcom-cpufreq-hw +qcom-cpufreq-nvmem +qcom-emac +qcom-geni-se +qcom-pon +qcom-rng +qcom-rpmh-regulator +qcom-spmi-adc5 +qcom-spmi-iadc +qcom-spmi-pmic +qcom-spmi-temp-alarm +qcom-spmi-vadc +qcom-vadc-common +qcom-wdt +qcom-wled +qcom_aoss +qcom_common +qcom_edac +qcom_geni_serial +qcom_glink +qcom_glink_rpm +qcom_glink_smem +qcom_gsbi +qcom_hwspinlock +qcom_nandc +qcom_q6v5 +qcom_q6v5_adsp +qcom_q6v5_ipa_notify +qcom_q6v5_mss +qcom_q6v5_pas +qcom_q6v5_wcss +qcom_rpm +qcom_rpm-regulator +qcom_smbb +qcom_smd +qcom_smd-regulator +qcom_spmi-regulator +qcom_sysmon +qcom_tsens +qcrypto +qcserial +qed +qede +qedf +qedi +qedr +qemu_fw_cfg +qinfo_probe +qla1280 +qla2xxx +qla3xxx +qla4xxx +qlcnic +qlge +qm1d1b0004 +qm1d1c0042 +qmi_helpers +qmi_wwan +qnoc-msm8916 +qnoc-msm8974 +qnoc-qcs404 +qnoc-sc7180 +qnoc-sdm845 +qnx4 +qnx6 +qoriq-cpufreq +qoriq_thermal +qrtr +qrtr-mhi +qrtr-smd +qrtr-tun +qsemi +qt1010 +qt1050 +qt1070 +qt2160 +qtnfmac +qtnfmac_pcie +quatech2 +quota_tree +quota_v1 +quota_v2 +qxl +r592 +r6040 +r8152 +r8169 +r8188eu +r8192e_pci +r8192u_usb +r820t +r852 +r8712u +r8723bs +r8a66597-hcd +r8a66597-udc +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-si476x +radio-tea5764 +radio-usb-si4713 +radio-wl1273 +raid0 +raid1 +raid10 +raid456 +raid6_pq +raid_class +rainshadow-cec +ramoops +raspberrypi-cpufreq +raspberrypi-hwmon +raspberrypi-ts +ravb +rave-sp +rave-sp-backlight +rave-sp-pwrbutton +rave-sp-wdt +raw +raw_diag +raw_gadget +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-behold +rc-behold-columbus +rc-budget-ci-old +rc-cec +rc-cinergy +rc-cinergy-1400 +rc-core +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-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-kworld-315u +rc-kworld-pc150u +rc-kworld-plus-tv-analog +rc-leadtek-y04g0051 +rc-lme2510 +rc-loopback +rc-manli +rc-medion-x10 +rc-medion-x10-digitainer +rc-medion-x10-or2x +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-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-tango +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-dvd +rc-zx-irdec +rc5t583-regulator +rcar-csi2 +rcar-dmac +rcar-du-drm +rcar-fcp +rcar-vin +rcar_can +rcar_canfd +rcar_cmm +rcar_drif +rcar_dw_hdmi +rcar_fdp1 +rcar_gen3_thermal +rcar_jpu +rcar_lvds +rcar_thermal +rcuperf +rdc321x-southbridge +rdma_cm +rdma_rxe +rdma_ucm +rds +rds_rdma +rds_tcp +realtek +realtek-smi +reboot-mode +redboot +redrat3 +reed_solomon +regmap-i3c +regmap-sccb +regmap-sdw +regmap-slimbus +regmap-spmi +regmap-w1 +regulator-haptic +reiserfs +renesas_sdhi_core +renesas_sdhi_internal_dmac +renesas_sdhi_sys_dmac +renesas_usb3 +renesas_usbhs +renesas_wdt +repaper +reset-brcmstb +reset-hi3660 +reset-meson-audio-arb +reset-qcom-pdc +reset-scmi +reset-ti-sci +reset-ti-syscon +resistive-adc-touch +retu-mfd +retu-pwrbutton +retu_wdt +rfc1051 +rfc1201 +rfcomm +rfd77402 +rfd_ftl +rfkill-gpio +rio-scan +rio_cm +rio_mport_cdev +rionet +rivafb +rj54n1cb0c +rk3399_dmc +rk805-pwrkey +rk808 +rk808-regulator +rk_crypto +rm3100-core +rm3100-i2c +rm3100-spi +rmd128 +rmd160 +rmd256 +rmd320 +rmi_core +rmi_i2c +rmi_smbus +rmi_spi +rmnet +rmtfs_mem +rn5t618 +rn5t618-adc +rn5t618-regulator +rn5t618_wdt +rnbd-client +rnbd-server +rndis_host +rndis_wlan +rockchip +rockchip-dfi +rockchip-io-domain +rockchip-isp1 +rockchip-rga +rockchip-vdec +rockchip_saradc +rockchip_thermal +rockchipdrm +rocker +rocket +rohm-bd70528 +rohm-bd71828 +rohm-bd718x7 +rohm-regulator +rohm_bu21023 +romfs +rose +rotary_encoder +rp2 +rpcrdma +rpcsec_gss_krb5 +rpmpd +rpmsg_char +rpmsg_core +rpr0521 +rsi_91x +rsi_sdio +rsi_usb +rsxx +rt2400pci +rt2500pci +rt2500usb +rt2800lib +rt2800mmio +rt2800pci +rt2800usb +rt2x00lib +rt2x00mmio +rt2x00pci +rt2x00usb +rt5033 +rt5033-regulator +rt5033_battery +rt61pci +rt73usb +rt9455_charger +rtc-88pm80x +rtc-88pm860x +rtc-ab-b5ze-s3 +rtc-ab-eoz9 +rtc-ab3100 +rtc-abx80x +rtc-armada38x +rtc-as3722 +rtc-bd70528 +rtc-bq32k +rtc-bq4802 +rtc-brcmstb-waketimer +rtc-cadence +rtc-cpcap +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-fsl-ftm-alarm +rtc-ftrtc010 +rtc-hid-sensor-time +rtc-hym8563 +rtc-imx-sc +rtc-imxdi +rtc-isl12022 +rtc-isl12026 +rtc-isl1208 +rtc-lp8788 +rtc-m41t80 +rtc-m41t93 +rtc-m41t94 +rtc-m48t35 +rtc-m48t59 +rtc-m48t86 +rtc-max6900 +rtc-max6902 +rtc-max6916 +rtc-max77686 +rtc-max8907 +rtc-max8925 +rtc-max8997 +rtc-max8998 +rtc-mc13xxx +rtc-mcp795 +rtc-meson-vrtc +rtc-msm6242 +rtc-mt2712 +rtc-mt6397 +rtc-mt7622 +rtc-mxc +rtc-mxc_v2 +rtc-palmas +rtc-pcap +rtc-pcf2123 +rtc-pcf2127 +rtc-pcf50633 +rtc-pcf85063 +rtc-pcf8523 +rtc-pcf85363 +rtc-pcf8563 +rtc-pcf8583 +rtc-pl030 +rtc-pl031 +rtc-pm8xxx +rtc-r7301 +rtc-r9701 +rtc-rc5t583 +rtc-rc5t619 +rtc-rk808 +rtc-rp5c01 +rtc-rs5c348 +rtc-rs5c372 +rtc-rv3028 +rtc-rv3029c2 +rtc-rv8803 +rtc-rx4581 +rtc-rx6110 +rtc-rx8010 +rtc-rx8025 +rtc-rx8581 +rtc-s35390a +rtc-s5m +rtc-sc27xx +rtc-sd3078 +rtc-sh +rtc-snvs +rtc-stk17ta8 +rtc-tps6586x +rtc-tps65910 +rtc-tps80031 +rtc-twl +rtc-v3020 +rtc-wm831x +rtc-wm8350 +rtc-x1205 +rtc-zynqmp +rtd520 +rti800 +rti802 +rti_wdt +rtl2830 +rtl2832 +rtl2832_sdr +rtl8150 +rtl8187 +rtl8188ee +rtl818x_pci +rtl8192c-common +rtl8192ce +rtl8192cu +rtl8192de +rtl8192ee +rtl8192se +rtl8723-common +rtl8723ae +rtl8723be +rtl8821ae +rtl8xxxu +rtl_pci +rtl_usb +rtllib +rtllib_crypt_ccmp +rtllib_crypt_tkip +rtllib_crypt_wep +rtlwifi +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_8822b +rtw88_8822be +rtw88_8822c +rtw88_8822ce +rtw88_core +rtw88_pci +rx51_battery +rxrpc +rza_wdt +s1d13xxxfb +s2250 +s2255drv +s2io +s2mpa01 +s2mps11 +s3fb +s3fwrn5 +s3fwrn5_i2c +s526 +s5c73m3 +s5h1409 +s5h1411 +s5h1420 +s5h1432 +s5k4ecgx +s5k5baf +s5k6a3 +s5k6aa +s5m8767 +s626 +s6sy761 +s921 +saa6588 +saa6752hs +saa7110 +saa7115 +saa7127 +saa7134 +saa7134-alsa +saa7134-dvb +saa7134-empress +saa7134-go7007 +saa7146 +saa7146_vv +saa7164 +saa717x +saa7185 +saa7706h +safe_serial +sahara +salsa20_generic +sample-trace-array +samsung-keypad +samsung-sxgbe +sata_dwc_460ex +sata_inic162x +sata_mv +sata_nv +sata_promise +sata_qstor +sata_rcar +sata_sil +sata_sil24 +sata_sis +sata_svw +sata_sx4 +sata_uli +sata_via +sata_vsc +savagefb +sb1000 +sbp_target +sbs-battery +sbs-charger +sbs-manager +sbsa_gwdt +sc16is7xx +sc2731-regulator +sc2731_charger +sc27xx-poweroff +sc27xx-vibra +sc27xx_adc +sc27xx_fuel_gauge +sc92031 +sc9860-clk +sc9863a-clk +sca3000 +sch5627 +sch5636 +sch56xx-common +sch_atm +sch_cake +sch_cbq +sch_cbs +sch_choke +sch_codel +sch_drr +sch_dsmark +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_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 +sci-clk +sclk-div +scmi-cpufreq +scmi-hwmon +scmi_pm_domain +scpi-cpufreq +scpi-hwmon +scpi_pm_domain +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-brcmstb +sdhci-cadence +sdhci-esdhc-imx +sdhci-iproc +sdhci-milbeaut +sdhci-msm +sdhci-of-arasan +sdhci-of-aspeed +sdhci-of-at91 +sdhci-of-dwcmshc +sdhci-of-esdhc +sdhci-omap +sdhci-pci +sdhci-pltfm +sdhci-pxav3 +sdhci-sprd +sdhci-xenon-driver +sdhci_am654 +sdhci_f_sdh30 +sdio_uart +seed +sensorhub +serial_ir +serio_raw +sermouse +serpent_generic +serport +ses +sf-pdma +sfc +sfc-falcon +sfp +sgi_w1 +sgp30 +sh-sci +sh_eth +sh_mmcif +sh_mobile_lcdcfb +sha1-ce +sha2-ce +sha256-arm64 +sha3-ce +sha3_generic +sha512-arm64 +sha512-ce +shark2 +shiftfs +sht15 +sht21 +sht3x +shtc1 +si1133 +si1145 +si2157 +si2165 +si2168 +si21xx +si4713 +si476x-core +si7005 +si7020 +sidewinder +sierra +sierra_net +sifive +sii902x +sii9234 +sil-sii8620 +sil164 +silead +simple-bridge +siox-bus-gpio +siox-core +sir_ir +sirf-audio-codec +sis190 +sis5595 +sis900 +sis_i2c +sisfb +sisusbvga +sit +siw +sja1000 +sja1000_isa +sja1000_platform +sja1105 +skd +skfp +skge +sky2 +sky81452 +sky81452-backlight +sky81452-regulator +sl811-hcd +slcan +slg51000-regulator +slic_ds26522 +slicoss +slim-qcom-ctrl +slim-qcom-ngd-ctrl +slimbus +slip +slram +sm3-ce +sm3_generic +sm4-ce +sm4_generic +sm501 +sm501fb +sm712fb +sm750fb +sm_common +sm_ftl +smartpqi +smb347-charger +smc +smc_diag +smd-rpm +smem +smiapp +smiapp-pll +smipcie +smm665 +smp2p +smsc +smsc47b397 +smsc47m1 +smsc47m192 +smsc75xx +smsc911x +smsc9420 +smsc95xx +smscufx +smsdvb +smsm +smsmdtv +smssdio +smsusb +snd +snd-ac97-codec +snd-ad1889 +snd-ak4113 +snd-ak4114 +snd-ak4xxx-adda +snd-ali5451 +snd-aloop +snd-als300 +snd-atiixp +snd-atiixp-modem +snd-au8810 +snd-au8820 +snd-au8830 +snd-aw2 +snd-azt3328 +snd-bcd2000 +snd-bcm2835 +snd-bebob +snd-bt87x +snd-ca0106 +snd-cmipci +snd-compress +snd-cs4281 +snd-cs46xx +snd-cs8427 +snd-ctxfi +snd-darla20 +snd-darla24 +snd-dice +snd-dummy +snd-echo3g +snd-emu10k1 +snd-emu10k1-synth +snd-emu10k1x +snd-emux-synth +snd-ens1370 +snd-ens1371 +snd-es1938 +snd-es1968 +snd-fireface +snd-firewire-digi00x +snd-firewire-lib +snd-firewire-motu +snd-firewire-tascam +snd-fireworks +snd-fm801 +snd-gina20 +snd-gina24 +snd-hda-codec +snd-hda-codec-analog +snd-hda-codec-ca0110 +snd-hda-codec-ca0132 +snd-hda-codec-cirrus +snd-hda-codec-cmedia +snd-hda-codec-conexant +snd-hda-codec-generic +snd-hda-codec-hdmi +snd-hda-codec-idt +snd-hda-codec-realtek +snd-hda-codec-si3054 +snd-hda-codec-via +snd-hda-core +snd-hda-intel +snd-hdsp +snd-hdspm +snd-hrtimer +snd-hwdep +snd-i2c +snd-ice1712 +snd-ice1724 +snd-ice17xx-ak4xxx +snd-indigo +snd-indigodj +snd-indigodjx +snd-indigoio +snd-indigoiox +snd-intel-dspcfg +snd-intel8x0 +snd-intel8x0m +snd-isight +snd-korg1212 +snd-layla20 +snd-layla24 +snd-lola +snd-lx6464es +snd-maestro3 +snd-mia +snd-mixart +snd-mixer-oss +snd-mona +snd-mpu401 +snd-mpu401-uart +snd-mtpav +snd-mts64 +snd-nm256 +snd-opl3-lib +snd-opl3-synth +snd-oxfw +snd-oxygen +snd-oxygen-lib +snd-pcm +snd-pcm-dmaengine +snd-pcxhr +snd-portman2x4 +snd-pt2258 +snd-rawmidi +snd-riptide +snd-rme32 +snd-rme96 +snd-rme9652 +snd-seq +snd-seq-device +snd-seq-dummy +snd-seq-midi +snd-seq-midi-emul +snd-seq-midi-event +snd-seq-virmidi +snd-serial-u16550 +snd-soc-63xx +snd-soc-ac97 +snd-soc-acp-da7219mx98357-mach +snd-soc-acp-rt5645-mach +snd-soc-acpi +snd-soc-adau-utils +snd-soc-adau1701 +snd-soc-adau1761 +snd-soc-adau1761-i2c +snd-soc-adau1761-spi +snd-soc-adau17x1 +snd-soc-adau7002 +snd-soc-adau7118 +snd-soc-adau7118-hw +snd-soc-adau7118-i2c +snd-soc-ak4104 +snd-soc-ak4118 +snd-soc-ak4458 +snd-soc-ak4554 +snd-soc-ak4613 +snd-soc-ak4642 +snd-soc-ak5386 +snd-soc-ak5558 +snd-soc-alc5623 +snd-soc-apq8016-sbc +snd-soc-apq8096 +snd-soc-armada-370-db +snd-soc-audio-graph-card +snd-soc-bcm2835-i2s +snd-soc-bd28623 +snd-soc-bt-sco +snd-soc-core +snd-soc-cpcap +snd-soc-cros-ec-codec +snd-soc-cs35l32 +snd-soc-cs35l33 +snd-soc-cs35l34 +snd-soc-cs35l35 +snd-soc-cs35l36 +snd-soc-cs4265 +snd-soc-cs4270 +snd-soc-cs4271 +snd-soc-cs4271-i2c +snd-soc-cs4271-spi +snd-soc-cs42l42 +snd-soc-cs42l51 +snd-soc-cs42l51-i2c +snd-soc-cs42l52 +snd-soc-cs42l56 +snd-soc-cs42l73 +snd-soc-cs42xx8 +snd-soc-cs42xx8-i2c +snd-soc-cs43130 +snd-soc-cs4341 +snd-soc-cs4349 +snd-soc-cs53l30 +snd-soc-cx2072x +snd-soc-da7213 +snd-soc-da7219 +snd-soc-davinci-mcasp +snd-soc-dmic +snd-soc-es7134 +snd-soc-es7241 +snd-soc-es8316 +snd-soc-es8328 +snd-soc-es8328-i2c +snd-soc-es8328-spi +snd-soc-fsi +snd-soc-fsl-asoc-card +snd-soc-fsl-asrc +snd-soc-fsl-audmix +snd-soc-fsl-easrc +snd-soc-fsl-esai +snd-soc-fsl-micfil +snd-soc-fsl-mqs +snd-soc-fsl-sai +snd-soc-fsl-spdif +snd-soc-fsl-ssi +snd-soc-gtm601 +snd-soc-hdmi-codec +snd-soc-imx-audmix +snd-soc-imx-audmux +snd-soc-imx-es8328 +snd-soc-imx-sgtl5000 +snd-soc-imx-spdif +snd-soc-inno-rk3036 +snd-soc-kirkwood +snd-soc-lochnagar-sc +snd-soc-lpass-apq8016 +snd-soc-lpass-cpu +snd-soc-lpass-ipq806x +snd-soc-lpass-platform +snd-soc-max9759 +snd-soc-max98088 +snd-soc-max98090 +snd-soc-max98357a +snd-soc-max98373 +snd-soc-max98390 +snd-soc-max98504 +snd-soc-max9860 +snd-soc-max9867 +snd-soc-max98927 +snd-soc-meson-aiu +snd-soc-meson-axg-fifo +snd-soc-meson-axg-frddr +snd-soc-meson-axg-pdm +snd-soc-meson-axg-sound-card +snd-soc-meson-axg-spdifin +snd-soc-meson-axg-spdifout +snd-soc-meson-axg-tdm-formatter +snd-soc-meson-axg-tdm-interface +snd-soc-meson-axg-tdmin +snd-soc-meson-axg-tdmout +snd-soc-meson-axg-toddr +snd-soc-meson-card-utils +snd-soc-meson-codec-glue +snd-soc-meson-g12a-toacodec +snd-soc-meson-g12a-tohdmitx +snd-soc-meson-gx-sound-card +snd-soc-meson-t9015 +snd-soc-mikroe-proto +snd-soc-msm8916-analog +snd-soc-msm8916-digital +snd-soc-mt6351 +snd-soc-mt6358 +snd-soc-mt6660 +snd-soc-mt6797-afe +snd-soc-mt8183-afe +snd-soc-mtk-common +snd-soc-nau8540 +snd-soc-nau8810 +snd-soc-nau8822 +snd-soc-nau8824 +snd-soc-pcm1681 +snd-soc-pcm1789-codec +snd-soc-pcm1789-i2c +snd-soc-pcm179x-codec +snd-soc-pcm179x-i2c +snd-soc-pcm179x-spi +snd-soc-pcm186x +snd-soc-pcm186x-i2c +snd-soc-pcm186x-spi +snd-soc-pcm3060 +snd-soc-pcm3060-i2c +snd-soc-pcm3060-spi +snd-soc-pcm3168a +snd-soc-pcm3168a-i2c +snd-soc-pcm3168a-spi +snd-soc-pcm512x +snd-soc-pcm512x-i2c +snd-soc-pcm512x-spi +snd-soc-qcom-common +snd-soc-rcar +snd-soc-rk3288-hdmi-analog +snd-soc-rk3328 +snd-soc-rk3399-gru-sound +snd-soc-rl6231 +snd-soc-rockchip-i2s +snd-soc-rockchip-max98090 +snd-soc-rockchip-pcm +snd-soc-rockchip-pdm +snd-soc-rockchip-rt5645 +snd-soc-rockchip-spdif +snd-soc-rt1308-sdw +snd-soc-rt5514 +snd-soc-rt5514-spi +snd-soc-rt5616 +snd-soc-rt5631 +snd-soc-rt5645 +snd-soc-rt5663 +snd-soc-rt5682 +snd-soc-rt5682-sdw +snd-soc-rt700 +snd-soc-rt711 +snd-soc-rt715 +snd-soc-sdm845 +snd-soc-sgtl5000 +snd-soc-si476x +snd-soc-sigmadsp +snd-soc-sigmadsp-i2c +snd-soc-sigmadsp-regmap +snd-soc-simple-amplifier +snd-soc-simple-card +snd-soc-simple-card-utils +snd-soc-spdif-rx +snd-soc-spdif-tx +snd-soc-sprd-platform +snd-soc-ssm2305 +snd-soc-ssm2602 +snd-soc-ssm2602-i2c +snd-soc-ssm2602-spi +snd-soc-ssm4567 +snd-soc-sta32x +snd-soc-sta350 +snd-soc-sti-sas +snd-soc-storm +snd-soc-tas2552 +snd-soc-tas2562 +snd-soc-tas2770 +snd-soc-tas5086 +snd-soc-tas571x +snd-soc-tas5720 +snd-soc-tas6424 +snd-soc-tda7419 +snd-soc-tfa9879 +snd-soc-ti-edma +snd-soc-ti-sdma +snd-soc-ti-udma +snd-soc-tlv320adcx140 +snd-soc-tlv320aic23 +snd-soc-tlv320aic23-i2c +snd-soc-tlv320aic23-spi +snd-soc-tlv320aic31xx +snd-soc-tlv320aic32x4 +snd-soc-tlv320aic32x4-i2c +snd-soc-tlv320aic32x4-spi +snd-soc-tlv320aic3x +snd-soc-tpa6130a2 +snd-soc-ts3a227e +snd-soc-tscs42xx +snd-soc-tscs454 +snd-soc-uda1334 +snd-soc-wcd9335 +snd-soc-wcd934x +snd-soc-wm8510 +snd-soc-wm8523 +snd-soc-wm8524 +snd-soc-wm8580 +snd-soc-wm8711 +snd-soc-wm8728 +snd-soc-wm8731 +snd-soc-wm8737 +snd-soc-wm8741 +snd-soc-wm8750 +snd-soc-wm8753 +snd-soc-wm8770 +snd-soc-wm8776 +snd-soc-wm8782 +snd-soc-wm8804 +snd-soc-wm8804-i2c +snd-soc-wm8804-spi +snd-soc-wm8903 +snd-soc-wm8904 +snd-soc-wm8960 +snd-soc-wm8962 +snd-soc-wm8974 +snd-soc-wm8978 +snd-soc-wm8985 +snd-soc-wsa881x +snd-soc-xlnx-formatter-pcm +snd-soc-xlnx-i2s +snd-soc-xlnx-spdif +snd-soc-xtfpga-i2s +snd-soc-zl38060 +snd-soc-zx-aud96p22 +snd-sof +snd-sof-acpi +snd-sof-imx8 +snd-sof-imx8m +snd-sof-of +snd-sof-pci +snd-sonicvibes +snd-timer +snd-trident +snd-ua101 +snd-usb-6fire +snd-usb-audio +snd-usb-caiaq +snd-usb-hiface +snd-usb-line6 +snd-usb-pod +snd-usb-podhd +snd-usb-toneport +snd-usb-variax +snd-usbmidi-lib +snd-util-mem +snd-via82xx +snd-via82xx-modem +snd-virmidi +snd-virtuoso +snd-vx-lib +snd-vx222 +snd-ymfpci +snd_xen_front +snic +snps_udc_core +snps_udc_plat +snvs_pwrkey +soc_button_array +socinfo +softdog +softing +solo6x10 +solos-pci +sony-btf-mpx +soundcore +soundwire-bus +soundwire-cadence +soundwire-intel +soundwire-qcom +sp2 +sp805_wdt +sp8870 +sp887x +spaceball +spaceorb +sparse-keymap +spcp8x5 +speakup +speakup_acntsa +speakup_apollo +speakup_audptr +speakup_bns +speakup_decext +speakup_dectlk +speakup_dummy +speakup_ltlk +speakup_soft +speakup_spkout +speakup_txprt +speedfax +speedtch +spi-altera +spi-amd +spi-armada-3700 +spi-axi-spi-engine +spi-bcm-qspi +spi-bcm2835 +spi-bcm2835aux +spi-bitbang +spi-brcmstb-qspi +spi-butterfly +spi-cadence +spi-dln2 +spi-dw +spi-dw-mmio +spi-dw-pci +spi-fsi +spi-fsl-dspi +spi-fsl-lpspi +spi-fsl-qspi +spi-geni-qcom +spi-gpio +spi-hisi-sfc-v3xx +spi-imx +spi-iproc-qspi +spi-lm70llp +spi-loopback-test +spi-meson-spicc +spi-meson-spifc +spi-mt65xx +spi-mtk-nor +spi-mux +spi-mxic +spi-nor +spi-nxp-fspi +spi-oc-tiny +spi-orion +spi-pl022 +spi-pxa2xx-pci +spi-pxa2xx-platform +spi-qcom-qspi +spi-qup +spi-rockchip +spi-rspi +spi-sc18is602 +spi-sh-hspi +spi-sh-msiof +spi-sifive +spi-slave-mt27xx +spi-slave-system-control +spi-slave-time +spi-sprd +spi-sprd-adi +spi-sun6i +spi-synquacer +spi-thunderx +spi-tle62x0 +spi-xcomm +spi-xlp +spi-zynqmp-gqspi +spi_ks8995 +spidev +spinand +spl +spmi +spmi-pmic-arb +sprd-dma +sprd-mailbox +sprd-mcdt +sprd-sc27xx-spi +sprd_hwspinlock +sprd_serial +sprd_thermal +sprd_wdt +sps30 +sr-thermal +sr030pc30 +sr9700 +sr9800 +srf04 +srf08 +ssb +ssb-hcd +ssd1307fb +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_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 +stkwebcam +stm_console +stm_core +stm_ftrace +stm_heartbeat +stm_p_basic +stm_p_sys-t +stmfts +stmfx +stmmac +stmmac-pci +stmmac-platform +stmpe-adc +stmpe-keypad +stmpe-ts +stowaway +stp +stpmic1 +stpmic1_onkey +stpmic1_regulator +stpmic1_wdt +stratix10-rsu +stratix10-soc +stratix10-svc +streamzap +streebog_generic +stts751 +stv0288 +stv0297 +stv0299 +stv0367 +stv0900 +stv090x +stv0910 +stv6110 +stv6110x +stv6111 +sun4i-backend +sun4i-csi +sun4i-drm +sun4i-drm-hdmi +sun4i-frontend +sun4i-gpadc +sun4i-ss +sun4i-tcon +sun4i_tv +sun50i-codec-analog +sun50i-cpufreq-nvmem +sun6i-csi +sun6i-dma +sun6i_drc +sun6i_mipi_dsi +sun8i-adda-pr-regmap +sun8i-ce +sun8i-codec +sun8i-codec-analog +sun8i-di +sun8i-drm-hdmi +sun8i-mixer +sun8i-rotate +sun8i-ss +sun8i_tcon_top +sun8i_thermal +sundance +sungem +sungem_phy +sunhme +suni +sunkbd +sunrpc +sunxi +sunxi-cedrus +sunxi-cir +sunxi-mmc +sunxi-rsb +sunxi_wdt +sur40 +surface3_spi +svgalib +switchtec +sx8 +sx8654 +sx9310 +sx9500 +sy8106a-regulator +sy8824x +sym53c8xx +symbolserial +synaptics_i2c +synaptics_usb +synclink_gt +synclinkmp +synopsys_edac +syscon-reboot-mode +syscopyarea +sysfillrect +sysimgblt +sysv +t5403 +tag_8021q +tag_ar9331 +tag_brcm +tag_dsa +tag_edsa +tag_gswip +tag_ksz +tag_lan9303 +tag_mtk +tag_ocelot +tag_qca +tag_sja1105 +tag_trailer +tap +target_core_file +target_core_iblock +target_core_mod +target_core_pscsi +target_core_user +tc-dwc-g210 +tc-dwc-g210-pci +tc-dwc-g210-pltfrm +tc358743 +tc358764 +tc358767 +tc358768 +tc3589x-keypad +tc654 +tc74 +tc90522 +tca6416-keypad +tca8418_keypad +tcan4x5x +tcm_fc +tcm_loop +tcm_qla2xxx +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_rt1711h +tcpm +tcrypt +tcs3414 +tcs3472 +tda10021 +tda10023 +tda10048 +tda1004x +tda10071 +tda10086 +tda18212 +tda18218 +tda18250 +tda18271 +tda18271c2dd +tda1997x +tda665x +tda7432 +tda8083 +tda8261 +tda826x +tda827x +tda8290 +tda9840 +tda9887 +tda9950 +tda998x +tdfxfb +tdo24m +tea +tea575x +tea5761 +tea5767 +tea6415c +tea6420 +team +team_mode_activebackup +team_mode_broadcast +team_mode_loadbalance +team_mode_random +team_mode_roundrobin +tee +tee_bnxt_fw +tef6862 +tehuti +teranetics +test_blackhole_dev +test_bpf +test_power +tg3 +tgr192 +thc63lvd1024 +thermal-generic-adc +thermal_mmio +thmc50 +ths7303 +ths8200 +thunder_bgx +thunder_xcv +thunderbolt +thunderbolt-net +thunderx-mmc +thunderx2_pmu +thunderx_edac +thunderx_zip +ti-adc081c +ti-adc0832 +ti-adc084s021 +ti-adc108s102 +ti-adc12138 +ti-adc128s052 +ti-adc161s626 +ti-ads1015 +ti-ads124s08 +ti-ads7950 +ti-ads8344 +ti-ads8688 +ti-am65-cpsw-nuss +ti-cal +ti-dac082s085 +ti-dac5571 +ti-dac7311 +ti-dac7612 +ti-j721e-ufs +ti-lmu +ti-sn65dsi86 +ti-tfp410 +ti-tlc4541 +ti-tpd12s015 +ti_am335x_adc +ti_am335x_tsc +ti_am335x_tscadc +ti_sci_pm_domains +ti_usb_3410_5052 +tidss +tifm_7xx1 +tifm_core +tifm_ms +tifm_sd +timeriomem-rng +tipc +tlan +tls +tlv320aic23b +tm2-touchkey +tm6000 +tm6000-alsa +tm6000-dvb +tmdc +tmio_mmc_core +tmp006 +tmp007 +tmp102 +tmp103 +tmp108 +tmp401 +tmp421 +tmp513 +torture +toshsd +touchit213 +touchright +touchwin +tpci200 +tpl0102 +tpm_atmel +tpm_ftpm_tee +tpm_i2c_atmel +tpm_i2c_infineon +tpm_i2c_nuvoton +tpm_infineon +tpm_key_parser +tpm_st33zp24 +tpm_st33zp24_i2c +tpm_st33zp24_spi +tpm_tis_spi +tpm_vtpm_proxy +tps40422 +tps51632-regulator +tps53679 +tps6105x +tps6105x-regulator +tps62360-regulator +tps65010 +tps65023-regulator +tps6507x +tps6507x-regulator +tps6507x-ts +tps65086 +tps65086-regulator +tps65090-charger +tps65090-regulator +tps65132-regulator +tps65217 +tps65217-regulator +tps65217_bl +tps65217_charger +tps65218 +tps65218-pwrbutton +tps65218-regulator +tps6524x-regulator +tps6586x-regulator +tps65910-regulator +tps65912-regulator +tps6598x +tps80031-regulator +tqmx86 +trace-printk +trancevibrator +trf7970a +tridentfb +ts2020 +ts_bm +ts_fsm +ts_kmp +tsc2004 +tsc2005 +tsc2007 +tsc200x-core +tsc40 +tsi568 +tsi57x +tsi721_mport +tsl2550 +tsl2563 +tsl2583 +tsl2772 +tsl4531 +tsys01 +tsys02d +ttm +ttpci-eeprom +ttusb_dec +ttusbdecfe +ttusbir +ttynull +tua6100 +tua9001 +tulip +tuner +tuner-simple +tuner-types +tuner-xc2028 +tunnel4 +tunnel6 +turbografx +turingcc-qcs404 +turris-mox-rwtm +tvaudio +tveeprom +tvp514x +tvp5150 +tvp7002 +tw2804 +tw5864 +tw68 +tw686x +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_common +twofish_generic +typec +typec_displayport +typec_nvidia +typec_ucsi +typhoon +u132-hcd +uPD60620 +u_audio +u_ether +u_serial +uacce +uartlite +uas +ubi +ubifs +ubuntu-host +ucan +ucb1400_core +ucb1400_ts +ucc_uart +ucd9000 +ucd9200 +ucs1002_power +ucsi_acpi +ucsi_ccg +uda1342 +udc-core +udc-xilinx +udf +udl +udlfb +udp_diag +udp_tunnel +ueagle-atm +ufs +ufs-hisi +ufs-mediatek +ufs-qcom +ufshcd-core +ufshcd-dwc +ufshcd-pci +ufshcd-pltfrm +uhid +uio +uio_aec +uio_cif +uio_dmem_genirq +uio_mf624 +uio_netx +uio_pci_generic +uio_pdrv_genirq +uio_pruss +uio_sercos3 +uleds +uli526x +ulpi +umem +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-dmac +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_midi +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_uac1 +usb_f_uac1_legacy +usb_f_uac2 +usb_f_uvc +usb_wwan +usbatm +usbdux +usbduxfast +usbduxsigma +usbhid +usbip-core +usbip-host +usbip-vudc +usbkbd +usblcd +usblp +usbmisc_imx +usbmon +usbmouse +usbnet +usbserial +usbsevseg +usbtest +usbtmc +usbtouchscreen +usbtv +usbvision +usdhi6rol0 +userio +userspace-consumer +ushc +uss720 +uvcvideo +uvesafb +v4l2-dv-timings +v4l2-flash-led-class +v4l2-fwnode +v4l2-h264 +v4l2-jpeg +v4l2-mem2mem +v4l2-tpg +vc4 +vcan +vchiq +vcnl3020 +vcnl4000 +vcnl4035 +vctrl-regulator +vdpa +vdpa_sim +veml6030 +veml6070 +venus-core +venus-dec +venus-enc +ves1820 +ves1x93 +veth +vexpress-hwmon +vexpress-regulator +vf610_adc +vf610_dac +vfio +vfio-amba +vfio-pci +vfio-platform +vfio-platform-amdxgbe +vfio-platform-base +vfio-platform-calxedaxgmac +vfio_iommu_type1 +vfio_mdev +vfio_platform_bcmflexrm +vfio_virqfd +vgastate +vgem +vgg2432a4 +vhci-hcd +vhost +vhost_iotlb +vhost_net +vhost_scsi +vhost_vdpa +vhost_vsock +via-rhine +via-sdmmc +via-velocity +via686a +vicodec +video-i2c +video-mux +videobuf-core +videobuf-dma-sg +videobuf-vmalloc +videobuf2-common +videobuf2-dma-contig +videobuf2-dma-sg +videobuf2-dvb +videobuf2-memops +videobuf2-v4l2 +videobuf2-vmalloc +videocc-sc7180 +videocc-sdm845 +videodev +vim2m +vimc +viperboard +viperboard_adc +virt_wifi +virtio-gpu +virtio-rng +virtio_blk +virtio_crypto +virtio_input +virtio_net +virtio_pmem +virtio_rpmsg_bus +virtio_scsi +virtio_vdpa +virtiofs +virtual +visor +vitesse +vitesse-vsc73xx-core +vitesse-vsc73xx-platform +vitesse-vsc73xx-spi +vivid +vkms +vl53l0x-i2c +vl6180 +vmac +vme_fake +vme_tsi148 +vme_user +vme_vmivme7805 +vmk80xx +vmw_vsock_virtio_transport +vmw_vsock_virtio_transport_common +vp27smpx +vport-geneve +vport-gre +vport-vxlan +vpx3220 +vqmmc-ipq4019-regulator +vrf +vringh +vs6624 +vsock +vsock_diag +vsock_loopback +vsockmon +vsp1 +vsxxxaa +vt1211 +vt6655_stage +vt6656_stage +vt8231 +vt8623fb +vub300 +vx855 +vxcan +vxge +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 +w83773g +w83781d +w83791d +w83792d +w83793 +w83795 +w83l785ts +w83l786ng +wacom +wacom_i2c +wacom_serial4 +wacom_w8001 +walkera0701 +wanxl +warrior +wcd934x +wcn36xx +wcnss_ctrl +wd719x +wdat_wdt +wdt87xx_i2c +wdt_pci +wfx +whiteheat +wil6210 +wilc1000 +wilc1000-sdio +wilc1000-spi +wimax +winbond-840 +wire +wireguard +wishbone-serial +wl1251 +wl1251_sdio +wl1251_spi +wl1273-core +wl12xx +wl18xx +wlcore +wlcore_sdio +wlcore_spi +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 +wm97xx-ts +wp512 +x25 +x25_asy +x_tables +xbox_remote +xc4000 +xc5000 +xcbc +xdpe12284 +xen-blkback +xen-evtchn +xen-fbfront +xen-front-pgdir-shbuf +xen-gntalloc +xen-gntdev +xen-kbdfront +xen-netback +xen-privcmd +xen-scsiback +xen-scsifront +xen-tpmfront +xen_wdt +xenfs +xfrm4_tunnel +xfrm6_tunnel +xfrm_algo +xfrm_interface +xfrm_ipcomp +xfrm_user +xfs +xgene-dma +xgene-enet +xgene-enet-v2 +xgene-hwmon +xgene-rng +xgene_edac +xhci-histb +xhci-mtk +xhci-pci +xhci-pci-renesas +xhci-plat-hcd +xilinx-pr-decoupler +xilinx-spi +xilinx-tpg +xilinx-video +xilinx-vtc +xilinx-xadc +xilinx_can +xilinx_dma +xilinx_emac +xilinx_gmii2rgmii +xilinx_sdfec +xilinx_uartps +xilinxfb +xillybus_core +xillybus_of +xillybus_pcie +xircom_cb +xlnx_vcu +xor +xor-neon +xpad +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 +yealink +yellowfin +yenta_socket +yurex +z3fold +zaurus +zavl +zcommon +zd1201 +zd1211rw +zd1301 +zd1301_demod +zet6223 +zforce_ts +zfs +zhenhua +ziirave_wdt +zl10036 +zl10039 +zl10353 +zl6100 +zlua +znvpair +zonefs +zopt2201 +zpa2326 +zpa2326_i2c +zpa2326_spi +zr364xx +zram +zstd +zunicode +zx-tdm +zynqmp-aes-gcm +zynqmp-fpga +zynqmp_dma --- linux-azure-5.8-5.8.0.orig/debian.master/abi/5.8.0-50.56/arm64/generic-64k.retpoline +++ linux-azure-5.8-5.8.0/debian.master/abi/5.8.0-50.56/arm64/generic-64k.retpoline @@ -0,0 +1 @@ +# RETPOLINE NOT ENABLED --- linux-azure-5.8-5.8.0.orig/debian.master/abi/5.8.0-50.56/arm64/generic.compiler +++ linux-azure-5.8-5.8.0/debian.master/abi/5.8.0-50.56/arm64/generic.compiler @@ -0,0 +1 @@ +GCC: (Ubuntu 10.2.0-13ubuntu1) 10.2.0 --- linux-azure-5.8-5.8.0.orig/debian.master/abi/5.8.0-50.56/arm64/generic.modules +++ linux-azure-5.8-5.8.0/debian.master/abi/5.8.0-50.56/arm64/generic.modules @@ -0,0 +1,6320 @@ +3c59x +3w-9xxx +3w-sas +3w-xxxx +6lowpan +6pack +8021q +8139cp +8139too +8250_aspeed_vuart +8250_exar +8250_men_mcb +8250_omap +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_rdma +9pnet_virtio +9pnet_xen +a100u2w +a3d +a53-pll +a8293 +aacraid +aat2870-regulator +aat2870_bl +ab3100 +ab3100-otp +abp060mg +ac97_bus +acard-ahci +acecad +acenic +acp_audio_dma +acpi-als +acpi_configfs +acpi_ipmi +acpi_power_meter +acpi_tad +acpiphp_ibm +act8865-regulator +act8945a +act8945a-regulator +act8945a_charger +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 +ad5064 +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 +ad5770r +ad5791 +ad5820 +ad5933 +ad7091r-base +ad7091r5 +ad7124 +ad714x +ad714x-i2c +ad714x-spi +ad7150 +ad7192 +ad7266 +ad7280a +ad7291 +ad7292 +ad7298 +ad7303 +ad7314 +ad7414 +ad7418 +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 +ad9389b +ad9467 +ad9523 +ad9832 +ad9834 +ad_sigma_delta +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 +ade7854 +ade7854-i2c +ade7854-spi +adf4350 +adf4371 +adf7242 +adfs +adi +adi-axi-adc +adiantum +adin +adis16080 +adis16130 +adis16136 +adis16201 +adis16203 +adis16209 +adis16240 +adis16260 +adis16400 +adis16460 +adis16475 +adis16480 +adis_lib +adjd_s311 +adl_pci6208 +adl_pci7x3x +adl_pci8164 +adl_pci9111 +adl_pci9118 +adm1021 +adm1025 +adm1026 +adm1029 +adm1031 +adm1177 +adm1275 +adm8211 +adm9240 +adp1653 +adp5061 +adp5520-keys +adp5520_bl +adp5588-keys +adp5589-keys +adp8860_bl +adp8870_bl +adq12b +ads7828 +ads7846 +ads7871 +adt7310 +adt7316 +adt7316-i2c +adt7316-spi +adt7410 +adt7411 +adt7462 +adt7470 +adt7475 +adt7x10 +adummy +adutux +adux1020 +adv7170 +adv7175 +adv7180 +adv7183 +adv7343 +adv7393 +adv748x +adv7511_drm +adv7604 +adv7842 +adv_pci1710 +adv_pci1720 +adv_pci1723 +adv_pci1724 +adv_pci1760 +adv_pci_dio +advansys +adxl34x +adxl34x-i2c +adxl34x-spi +adxl372 +adxl372_i2c +adxl372_spi +adxrs450 +aegis128 +aes-arm64 +aes-ce-blk +aes-ce-ccm +aes-ce-cipher +aes-neon-blk +aes-neon-bs +aes_ti +af9013 +af9033 +af_alg +af_key +af_packet_diag +afe4403 +afe4404 +affs +afs +ah4 +ah6 +ahci +ahci_brcm +ahci_ceva +ahci_mtk +ahci_mvebu +ahci_platform +ahci_qoriq +ahci_seattle +ahci_xgene +aic79xx +aic7xxx +aic94xx +aio_aio12_8 +aio_iiro_16 +aiptek +aircable +airspy +ak7375 +ak881x +ak8974 +ak8975 +al3010 +al3320a +alcor +alcor_pci +algif_aead +algif_hash +algif_rng +algif_skcipher +alim7101_wdt +allegro +altera-ci +altera-cvp +altera-freeze-bridge +altera-msgdma +altera-pr-ip-core +altera-pr-ip-core-plat +altera-ps-spi +altera-stapl +altera_jtaguart +altera_ps2 +altera_tse +altera_uart +alx +am2315 +am53c974 +am65-cpts +amba-pl010 +ambakmi +amc6821 +amd +amd-xgbe +amd5536udc_pci +amd8111e +amdgpu +amlogic-gxl-crypto +amlogic_thermal +amplc_dio200 +amplc_dio200_common +amplc_dio200_pci +amplc_pc236 +amplc_pc236_common +amplc_pc263 +amplc_pci224 +amplc_pci230 +amplc_pci236 +amplc_pci263 +ams-iaq-core +ams369fg06 +analog +analogix-anx6345 +analogix-anx78xx +analogix_dp +anatop-regulator +ansi_cprng +anubis +anybuss_core +ao-cec +ao-cec-g12a +aoe +apbps2 +apcs-msm8916 +apds9300 +apds9802als +apds990x +apds9960 +apex +apple-mfi-fastcharge +appledisplay +appletalk +appletouch +applicom +apr +aptina-pll +aqc111 +aquantia +ar1021_i2c +ar5523 +ar7part +ar9331 +arasan-nand-controller +arc-rawmode +arc-rimi +arc4 +arc_emac +arc_ps2 +arc_uart +arcmsr +arcnet +arcpgu +arcx-anybus +arcxcnn_bl +arizona-haptics +arizona-i2c +arizona-ldo1 +arizona-micsupp +arizona-spi +ark3116 +arkfb +arm_dsu_pmu +arm_mhu +arm_scpi +arm_smc_wdt +arm_smmuv3_pmu +arm_spe_pmu +armada-37xx-cpufreq +armada-37xx-rwtm-mailbox +armada-8k-cpufreq +armada_37xx_wdt +arp_tables +arpt_mangle +arptable_filter +as102_fe +as370-hwmon +as3711-regulator +as3711_bl +as3722-regulator +as3935 +as5011 +asc7621 +ascot2e +ashmem_linux +asix +aspeed-pwm-tacho +aspeed-video +ast +asym_tpm +async_memcpy +async_pq +async_raid6_recov +async_tx +async_xor +at24 +at25 +at76c50x-usb +at803x +at86rf230 +ata_generic +ata_piix +atbm8830 +ath +ath10k_core +ath10k_pci +ath10k_sdio +ath10k_snoc +ath10k_usb +ath11k +ath3k +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 +atm +atmel +atmel-ecc +atmel-flexcom +atmel-hlcdc +atmel-i2c +atmel-sha204a +atmel_captouch +atmel_mxt_ts +atmel_pci +atmtcp +atp870u +atusb +atxp1 +aty128fb +atyfb +au0828 +au8522_common +au8522_decoder +au8522_dig +aufs +auo-pixcir-ts +auth_rpcgss +authenc +authencesn +autofs4 +avmfritz +ax25 +ax88179_178a +ax88796b +axg-audio +axi-fan-control +axis-fifo +axp20x +axp20x-i2c +axp20x-pek +axp20x-regulator +axp20x-rsb +axp20x_ac_power +axp20x_adc +axp20x_battery +axp20x_usb_power +axp288_adc +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 +bam_dma +bareudp +batman-adv +baycom_par +baycom_ser_fdx +baycom_ser_hdx +bcache +bch +bcm-flexrm-mailbox +bcm-keypad +bcm-pdc-mailbox +bcm-phy-lib +bcm-sba-raid +bcm-sf2 +bcm203x +bcm2711_thermal +bcm2835 +bcm2835-rng +bcm2835-v4l2 +bcm2835_thermal +bcm2835_wdt +bcm3510 +bcm54140 +bcm590xx +bcm590xx-regulator +bcm5974 +bcm63138_nand +bcm6368_nand +bcm7038_wdt +bcm7xxx +bcm87xx +bcm_crypto_spu +bcm_iproc_adc +bcm_iproc_tsc +bcma +bcma-hcd +bcmsysport +bd6107 +bd70528-charger +bd70528-regulator +bd70528_wdt +bd71828-regulator +bd718x7-regulator +bd9571mwv +bd9571mwv-regulator +bd99954-charger +bdc +be2iscsi +be2net +befs +bel-pfe +belkin_sa +berlin2-adc +bfa +bfq +bfs +bfusb +bh1750 +bh1770glc +bh1780 +binder_linux +binfmt_misc +blake2b_generic +blake2s_generic +block2mtd +blocklayoutdriver +blowfish_common +blowfish_generic +bluefield_edac +bluetooth +bluetooth_6lowpan +bma150 +bma220_spi +bma400_core +bma400_i2c +bman-test +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 +bmi160_core +bmi160_i2c +bmi160_spi +bmp280 +bmp280-i2c +bmp280-spi +bna +bnep +bnx2 +bnx2fc +bnx2i +bnx2x +bnxt_en +bnxt_re +bochs-drm +bonding +bpa10x +bpfilter +bpqether +bq2415x_charger +bq24190_charger +bq24257_charger +bq24735-charger +bq25890_charger +bq27xxx_battery +bq27xxx_battery_hdq +bq27xxx_battery_i2c +br2684 +br_netfilter +brcmfmac +brcmnand +brcmsmac +brcmstb-avs-cpufreq +brcmstb_nand +brcmstb_thermal +brcmutil +brd +bridge +broadcom +bsd_comp +bt819 +bt856 +bt866 +bt878 +btbcm +btcoexist +btintel +btmrvl +btmrvl_sdio +btmtksdio +btmtkuart +btqca +btqcomsmd +btrfs +btrsi +btrtl +btsdio +bttv +btusb +bu21013_ts +bu21029_ts +budget +budget-av +budget-ci +budget-core +budget-patch +c67x00 +c6xdigio +c_can +c_can_pci +c_can_platform +ca8210 +caam +caam_jr +caamalg_desc +caamhash_desc +cachefiles +cadence-nand-controller +cadence-quadspi +cadence_wdt +cafe_ccic +cafe_nand +caif +caif_hsi +caif_serial +caif_socket +caif_usb +caif_virtio +camcc-sdm845 +camellia_generic +can +can-bcm +can-dev +can-gw +can-j1939 +can-raw +cap11xx +capmode +capsule-loader +carl9170 +carminefb +cassini +cast5_generic +cast6_generic +cast_common +catc +cavium-rng +cavium-rng-vf +cavium_ptp +cb710 +cb710-mmc +cb_pcidas +cb_pcidas64 +cb_pcidda +cb_pcimdas +cb_pcimdda +cc10001_adc +cc2520 +cc770 +cc770_isa +cc770_platform +ccm +ccp +ccp-crypto +ccree +ccs811 +cctrng +cdc-acm +cdc-phonet +cdc-wdm +cdc_eem +cdc_ether +cdc_mbim +cdc_ncm +cdc_subset +cdns-csi2rx +cdns-csi2tx +cdns-dphy +cdns-dsi +cdns-pltfrm +cdns3 +cdns3-imx +cdns3-pci-wrap +cdns3-ti +cec +ceph +cfb +cfg80211 +cfi_cmdset_0001 +cfi_cmdset_0002 +cfi_cmdset_0020 +cfi_probe +cfi_util +cfspi_slave +ch +ch341 +ch7006 +ch9200 +chacha-neon +chacha20poly1305 +chacha_generic +chaoskey +charlcd +chcr +chipone_icn8318 +chipone_icn8505 +chipreg +chnl_net +chromeos_tbmc +chrontel-ch7033 +ci_hdrc +ci_hdrc_imx +ci_hdrc_msm +ci_hdrc_pci +ci_hdrc_tegra +ci_hdrc_usb2 +cicada +cifs +cirrus +cirrusfb +clip +clk-bd718x7 +clk-cdce706 +clk-cdce925 +clk-cs2000-cp +clk-hi3519 +clk-hi655x +clk-lochnagar +clk-max77686 +clk-max9485 +clk-palmas +clk-phase +clk-plldig +clk-pwm +clk-qcom +clk-raspberrypi +clk-rk808 +clk-rpm +clk-rpmh +clk-s2mps11 +clk-scmi +clk-scpi +clk-si514 +clk-si5341 +clk-si5351 +clk-si544 +clk-si570 +clk-smd-rpm +clk-spmi-pmic-div +clk-sprd +clk-twl6040 +clk-versaclock5 +clk-wm831x +cls_basic +cls_bpf +cls_cgroup +cls_flow +cls_flower +cls_fw +cls_matchall +cls_route +cls_rsvp +cls_rsvp6 +cls_tcindex +cls_u32 +cm109 +cm32181 +cm3232 +cm3323 +cm3605 +cm36651 +cma3000_d0x +cma3000_d0x_i2c +cmac +cmdlinepart +cmtp +cnic +cobra +coda +coda-vpu +colibri-vf50-ts +com20020 +com20020-pci +com90io +com90xx +comedi +comedi_8254 +comedi_8255 +comedi_bond +comedi_parport +comedi_pci +comedi_test +comedi_usb +contec_pci_dio +cordic +core +cortina +counter +cp210x +cpcap-adc +cpcap-battery +cpcap-charger +cpcap-pwrbutton +cpcap-regulator +cpia2 +cppc_cpufreq +cptpf +cptvf +cqhci +cramfs +crc-itu-t +crc32_generic +crc4 +crc64 +crc7 +crc8 +crct10dif-ce +crg-hi3516cv300 +crg-hi3798cv200 +cros-ec-cec +cros-ec-sensorhub +cros_ec +cros_ec_accel_legacy +cros_ec_baro +cros_ec_chardev +cros_ec_debugfs +cros_ec_dev +cros_ec_i2c +cros_ec_keyb +cros_ec_lid_angle +cros_ec_light_prox +cros_ec_lightbar +cros_ec_rpmsg +cros_ec_sensors +cros_ec_sensors_core +cros_ec_spi +cros_ec_sysfs +cros_ec_typec +cros_ec_vbc +cros_kbd_led_backlight +cros_usbpd-charger +cros_usbpd_logger +cros_usbpd_notify +cryptd +crypto_engine +crypto_safexcel +crypto_simd +crypto_user +cryptoloop +cs3308 +cs5345 +cs53l32a +csiostor +curve25519-generic +cuse +cw1200_core +cw1200_wlan_sdio +cw1200_wlan_spi +cw2015_battery +cx18 +cx18-alsa +cx22700 +cx22702 +cx231xx +cx231xx-alsa +cx231xx-dvb +cx2341x +cx23885 +cx24110 +cx24113 +cx24116 +cx24117 +cx24120 +cx24123 +cx25821 +cx25821-alsa +cx25840 +cx82310_eth +cx88-alsa +cx88-blackbird +cx88-dvb +cx88-vp3054-i2c +cx8800 +cx8802 +cx88xx +cxacru +cxd2099 +cxd2820r +cxd2841er +cxd2880 +cxd2880-spi +cxgb +cxgb3 +cxgb3i +cxgb4 +cxgb4i +cxgb4vf +cxgbit +cy8ctma140 +cy8ctmg110_ts +cyapatp +cyber2000fb +cyberjack +cyclades +cypress_cy7c63 +cypress_firmware +cypress_m8 +cytherm +cyttsp4_core +cyttsp4_i2c +cyttsp4_spi +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-thermal +da9062_wdt +da9063-regulator +da9063_onkey +da9063_wdt +da9150-charger +da9150-core +da9150-fg +da9150-gpadc +da9210-regulator +da9211-regulator +dac02 +daqboard2000 +das08 +das08_isa +das08_pci +das16 +das16m1 +das1800 +das6402 +das800 +davicom +dax_hmem +dax_pmem +dax_pmem_compat +dax_pmem_core +db9 +dc395x +dccp +dccp_diag +dccp_ipv4 +dccp_ipv6 +ddbridge +ddbridge-dummy-fe +de2104x +decnet +defxx +denali +denali_dt +denali_pci +des_generic +designware_i2s +device_dax +dfl +dfl-afu +dfl-fme +dfl-fme-br +dfl-fme-mgr +dfl-fme-region +dfl-pci +dht11 +diag +dib0070 +dib0090 +dib3000mb +dib3000mc +dib7000m +dib7000p +dib8000 +dib9000 +dibx000_common +digi_acceleport +digicolor-usart +diskonchip +dispcc-sc7180 +dispcc-sdm845 +display-connector +dl2k +dlci +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-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 +dma-axi-dmac +dmard06 +dmard09 +dmard10 +dmc520_edac +dme1737 +dmfe +dmi-sysfs +dmm32at +dmx3191d +dn_rtmsg +dnet +dp83640 +dp83822 +dp83848 +dp83867 +dp83869 +dp83tc811 +dpaa2-console +dpaa2-ethsw +dpaa2-qdma +dpaa2_caam +dpdmai +dpot-dac +dps310 +drbd +drivetemp +drm +drm_kms_helper +drm_mipi_dbi +drm_ttm_helper +drm_vram_helper +drm_xen_front +drv260x +drv2665 +drv2667 +drx39xyj +drxd +drxk +ds1621 +ds1682 +ds1803 +ds1wm +ds2482 +ds2490 +ds2760_battery +ds2780_battery +ds2781_battery +ds2782_battery +ds3000 +ds4424 +ds620 +dsa_core +dsbr100 +dst +dst_ca +dt2801 +dt2811 +dt2814 +dt2815 +dt2817 +dt282x +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-axi-dmac-platform +dw-edma +dw-edma-pcie +dw-hdmi +dw-hdmi-ahb-audio +dw-hdmi-cec +dw-hdmi-i2s-audio +dw-i3c-master +dw-mipi-dsi +dw9714 +dw9807-vcm +dw_dmac +dw_dmac_core +dw_dmac_pci +dw_drm_dsi +dw_mmc +dw_mmc-bluefield +dw_mmc-exynos +dw_mmc-hi3798cv200 +dw_mmc-k3 +dw_mmc-pci +dw_mmc-pltfm +dw_mmc-rockchip +dw_wdt +dwc-xlgmac +dwc2_pci +dwc3 +dwc3-haps +dwc3-keystone +dwc3-meson-g12a +dwc3-of-simple +dwc3-pci +dwc3-qcom +dwmac-altr-socfpga +dwmac-dwc-qos-eth +dwmac-generic +dwmac-imx +dwmac-ipq806x +dwmac-mediatek +dwmac-meson +dwmac-meson8b +dwmac-qcom-ethqos +dwmac-rk +dwmac-sun8i +dyna_pci10xx +dynapro +e100 +e1000 +e1000e +e3x0-button +e4000 +earth-pt1 +earth-pt3 +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_sys +ecc +ecdh_generic +echainiv +echo +ecrdsa_generic +edt-ft5x06 +ee1004 +eeprom +eeprom_93cx6 +eeprom_93xx46 +eeti_ts +efa +efi-pstore +efi_test +efibc +efs +egalax_ts +egalax_ts_serial +ehci-brcm +ehci-fsl +ehci-mxc +ehci-platform +ehset +einj +ektf2127 +elan_i2c +elants_i2c +elo +em28xx +em28xx-alsa +em28xx-dvb +em28xx-rc +em28xx-v4l +em_canid +em_cmp +em_ipset +em_ipt +em_meta +em_nbyte +em_text +em_u32 +emac_rockchip +emc1403 +emc2103 +emc6w201 +emi26 +emi62 +empeg +ems_pci +ems_usb +emu10k1-gp +emxx_udc +ena +enc28j60 +enclosure +encx24j600 +encx24j600-regmap +ene_ir +eni +enic +envelope-detector +epic100 +eql +erofs +error +esas2r +esd_usb2 +esp4 +esp4_offload +esp6 +esp6_offload +esp_scsi +essiv +et1011c +et131x +et8ek8 +ethoc +etnaviv +evbug +exc3000 +exfat +extcon-adc-jack +extcon-arizona +extcon-fsa9480 +extcon-gpio +extcon-max14577 +extcon-max3355 +extcon-max77693 +extcon-max77843 +extcon-max8997 +extcon-palmas +extcon-ptn5150 +extcon-qcom-spmi-misc +extcon-rt8973a +extcon-sm5502 +extcon-usb-gpio +extcon-usbc-cros-ec +ezusb +f2fs +f71805f +f71882fg +f75375s +f81232 +f81534 +f81601 +failover +fakelb +fan53555 +farsync +fastrpc +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_sys_fops +fb_tinylcd +fb_tls8204 +fb_uc1611 +fb_uc1701 +fb_upd161704 +fb_watterott +fbtft +fc0011 +fc0012 +fc0013 +fc2580 +fcoe +fcrypt +fdomain +fdomain_pci +fdp +fdp_i2c +fealnx +ff-memless +fieldbus_dev +fintek-cir +firedtv +firewire-core +firewire-net +firewire-ohci +firewire-sbp2 +firewire-serial +fixed +fjes +fl512 +flexcan +fm10k +fm801-gp +fm_drv +forcedeth +fore_200e +fotg210-hcd +fotg210-udc +fou +fou6 +fpga-bridge +fpga-mgr +fpga-region +freevxfs +fscache +fsi-core +fsi-master-aspeed +fsi-master-gpio +fsi-master-hub +fsi-occ +fsi-sbefifo +fsi-scom +fsia6b +fsl-dpaa2-eth +fsl-dpaa2-ptp +fsl-edma +fsl-edma-common +fsl-enetc +fsl-enetc-mdio +fsl-enetc-ptp +fsl-enetc-vf +fsl-mc-dpio +fsl-mph-dr-of +fsl-qdma +fsl_dpa +fsl_ifc_nand +fsl_imx8_ddr_perf +fsl_linflexuart +fsl_lpuart +fsl_pq_mdio +fsl_ucc_hdlc +fsl_usb2_udc +ftdi-elan +ftdi_sio +ftl +ftm-quaddec +ftsteutates +fujitsu_ts +fusb302 +fxas21002c_core +fxas21002c_i2c +fxas21002c_spi +fxos8700_core +fxos8700_i2c +fxos8700_spi +g450_pll +g760a +g762 +g_acm_ms +g_audio +g_cdc +g_dbgp +g_ether +g_ffs +g_hid +g_mass_storage +g_midi +g_ncm +g_nokia +g_printer +g_serial +g_webcam +g_zero +gadgetfs +gamecon +gameport +garmin_gps +garp +gasket +gateworks-gsc +gb-audio-apbridgea +gb-audio-gb +gb-audio-manager +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 +gcc-apq8084 +gcc-ipq4019 +gcc-ipq6018 +gcc-ipq806x +gcc-ipq8074 +gcc-mdm9615 +gcc-msm8660 +gcc-msm8916 +gcc-msm8939 +gcc-msm8960 +gcc-msm8974 +gcc-msm8994 +gcc-msm8996 +gcc-msm8998 +gcc-qcs404 +gcc-sc7180 +gcc-sdm660 +gcc-sdm845 +gcc-sm8150 +gcc-sm8250 +gdmtty +gdmulte +gdth +gemini +gen_probe +generic +generic-adc-battery +generic_bl +genet +geneve +genwqe_card +gf2k +gfs2 +ghash-ce +gianfar_driver +gl518sm +gl520sm +gl620a +gluebi +gm12u320 +gnss +gnss-mtk +gnss-serial +gnss-sirf +gnss-ubx +go7007 +go7007-loader +go7007-usb +goku_udc +goodix +gp2ap002 +gp2ap020a00f +gp8psk-fe +gpio +gpio-74x164 +gpio-74xx-mmio +gpio-adnp +gpio-adp5520 +gpio-adp5588 +gpio-aggregator +gpio-altera +gpio-amd-fch +gpio-amdpt +gpio-arizona +gpio-bd70528 +gpio-bd71828 +gpio-bd9571mwv +gpio-beeper +gpio-brcmstb +gpio-cadence +gpio-charger +gpio-da9052 +gpio-da9055 +gpio-dln2 +gpio-dwapb +gpio-eic-sprd +gpio-exar +gpio-fan +gpio-grgpio +gpio-gw-pld +gpio-hlwd +gpio-ir-recv +gpio-ir-tx +gpio-janz-ttl +gpio-kempld +gpio-logicvc +gpio-lp3943 +gpio-lp873x +gpio-lp87565 +gpio-madera +gpio-max3191x +gpio-max7300 +gpio-max7301 +gpio-max730x +gpio-max732x +gpio-max77620 +gpio-max77650 +gpio-mb86s7x +gpio-mc33880 +gpio-menz127 +gpio-mlxbf +gpio-mlxbf2 +gpio-moxtet +gpio-pca953x +gpio-pcf857x +gpio-pci-idio-16 +gpio-pcie-idio-24 +gpio-pisosr +gpio-pmic-eic-sprd +gpio-raspberrypi-exp +gpio-rcar +gpio-rdc321x +gpio-regulator +gpio-sama5d2-piobu +gpio-siox +gpio-sprd +gpio-syscon +gpio-thunderx +gpio-tpic2810 +gpio-tps65086 +gpio-tps65218 +gpio-tps65912 +gpio-tqmx86 +gpio-twl4030 +gpio-twl6040 +gpio-ucb1400 +gpio-vibra +gpio-viperboard +gpio-wcd934x +gpio-wm831x +gpio-wm8350 +gpio-wm8994 +gpio-xgene-sb +gpio-xgs-iproc +gpio-xlp +gpio-xra1403 +gpio-zynq +gpio_backlight +gpio_decoder +gpio_keys +gpio_keys_polled +gpio_mouse +gpio_wdt +gpmi_nand +gpu-sched +gpucc-msm8998 +gpucc-sc7180 +gpucc-sdm845 +gr_udc +grace +grcan +gre +greybus +grip +grip_mp +gs1662 +gs_fpga +gs_usb +gsc-hwmon +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 +gtco +gtp +guillemot +gunze +gve +habanalabs +hackrf +hamachi +hampshire +hantro-vpu +hanwang +hbmc-am654 +hci +hci_nokia +hci_uart +hci_vhci +hclge +hclgevf +hd3ss3220 +hd44780 +hdc100x +hdlc +hdlc_cisco +hdlc_fr +hdlc_ppp +hdlc_raw +hdlc_raw_eth +hdlc_x25 +hdlcd +hdlcdrv +hdma +hdma_mgmt +hdpvr +he +helene +hexium_gemini +hexium_orion +hfcmulti +hfcpci +hfcsusb +hfpll +hfs +hfsplus +hi311x +hi3660-mailbox +hi556 +hi6210-i2s +hi6220-mailbox +hi6220_reset +hi6421-pmic-core +hi6421-regulator +hi6421v530-regulator +hi655x-pmic +hi655x-regulator +hi8435 +hibmc-drm +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-ezkey +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-icade +hid-ite +hid-jabra +hid-kensington +hid-keytouch +hid-kye +hid-lcpower +hid-led +hid-lenovo +hid-lg-g15 +hid-logitech +hid-logitech-dj +hid-logitech-hidpp +hid-macally +hid-magicmouse +hid-maltron +hid-mcp2221 +hid-mf +hid-microsoft +hid-monterey +hid-multitouch +hid-nti +hid-ntrig +hid-ortek +hid-penmount +hid-petalynx +hid-picolcd +hid-pl +hid-plantronics +hid-primax +hid-prodikeys +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-sensor-accel-3d +hid-sensor-als +hid-sensor-custom +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-sjoy +hid-sony +hid-speedlink +hid-steam +hid-steelseries +hid-sunplus +hid-tivo +hid-tmff +hid-topseed +hid-twinhan +hid-u2fzero +hid-uclogic +hid-udraw-ps3 +hid-viewsonic +hid-waltop +hid-wiimote +hid-xinmo +hid-zpff +hid-zydacron +hideep +hidp +hih6130 +hinic +hip04_eth +hisi-rng +hisi-sfc +hisi-trng-v2 +hisi504_nand +hisi_dma +hisi_femac +hisi_hpre +hisi_powerkey +hisi_qm +hisi_sas_main +hisi_sas_v1_hw +hisi_sas_v2_hw +hisi_sas_v3_hw +hisi_sec +hisi_sec2 +hisi_thermal +hisi_zip +hix5hd2_gmac +hmc425a +hmc5843_core +hmc5843_i2c +hmc5843_spi +hmc6352 +hms-profinet +hnae +hnae3 +hns-roce-hw-v1 +hns-roce-hw-v2 +hns3 +hns_dsaf +hns_enet_drv +hns_mdio +hopper +horus3a +hostap +hostap_pci +hostap_plx +hp03 +hp206c +hpfs +hpilo +hpsa +hptiop +hsi +hsi_char +hso +hsr +ht16k33 +htc-pasic3 +hts221 +hts221_i2c +hts221_spi +htu21 +huawei_cdc_ncm +hwmon-vid +hwpoison-inject +hx711 +hx8357 +hx8357d +hyperbus-core +i2400m +i2400m-usb +i2c-algo-bit +i2c-algo-pca +i2c-ali1535 +i2c-ali1563 +i2c-ali15x3 +i2c-amd756 +i2c-amd8111 +i2c-arb-gpio-challenge +i2c-bcm-iproc +i2c-bcm2835 +i2c-brcmstb +i2c-cbus-gpio +i2c-cros-ec-tunnel +i2c-demux-pinctrl +i2c-designware-pci +i2c-diolan-u2c +i2c-dln2 +i2c-fsi +i2c-gpio +i2c-hid +i2c-hix5hd2 +i2c-i801 +i2c-imx +i2c-imx-lpi2c +i2c-isch +i2c-kempld +i2c-matroxfb +i2c-meson +i2c-mt65xx +i2c-mux +i2c-mux-gpio +i2c-mux-gpmux +i2c-mux-ltc4306 +i2c-mux-mlxcpld +i2c-mux-pca9541 +i2c-mux-pca954x +i2c-mux-pinctrl +i2c-mux-reg +i2c-mv64xxx +i2c-nforce2 +i2c-nomadik +i2c-nvidia-gpu +i2c-ocores +i2c-owl +i2c-parport +i2c-pca-platform +i2c-piix4 +i2c-pxa +i2c-qcom-cci +i2c-qcom-geni +i2c-qup +i2c-rcar +i2c-riic +i2c-rk3x +i2c-robotfuzz-osif +i2c-scmi +i2c-sh_mobile +i2c-simtec +i2c-sis5595 +i2c-sis630 +i2c-sis96x +i2c-slave-eeprom +i2c-smbus +i2c-stub +i2c-synquacer +i2c-taos-evm +i2c-thunderx +i2c-tiny-usb +i2c-versatile +i2c-via +i2c-viapro +i2c-viperboard +i2c-xgene-slimpro +i2c-xiic +i2c-xlp9xx +i3c +i3c-master-cdns +i40e +i40iw +i5k_amb +i6300esb +i740fb +iavf +ib_cm +ib_core +ib_ipoib +ib_iser +ib_isert +ib_mthca +ib_srp +ib_srpt +ib_umad +ib_uverbs +ibm-cffps +ibmaem +ibmpex +icc-bcm-voter +icc-osm-l3 +icc-rpmh +icc-smd-rpm +ice +ice40-spi +icp +icp10100 +icp_multi +icplus +ics932s401 +idma64 +idmouse +idt77252 +idt_89hpesx +idt_gen2 +idt_gen3 +idtcps +ieee802154 +ieee802154_6lowpan +ieee802154_socket +ifb +ifcvf +ife +ifi_canfd +iforce +iforce-serio +iforce-usb +igb +igbvf +igc +igorplugusb +iguanair +ii_pci20kc +iio-mux +iio-rescale +iio-trig-hrtimer +iio-trig-interrupt +iio-trig-loop +iio-trig-sysfs +iio_dummy +iio_hwmon +ila +ili210x +ili9225 +ili922x +ili9320 +ili9341 +ili9486 +img-ascii-lcd +img-i2s-in +img-i2s-out +img-parallel-out +img-spdif-in +img-spdif-out +imon +imon_raw +ims-pcu +imx-bus +imx-cpufreq-dt +imx-dma +imx-dsp +imx-interconnect +imx-mailbox +imx-pcm-dma +imx-pxp +imx-sdma +imx214 +imx219 +imx258 +imx274 +imx290 +imx2_wdt +imx319 +imx355 +imx6q-cpufreq +imx6ul_tsc +imx7d_adc +imx7ulp_wdt +imx8m-ddrc +imx8mm-interconnect +imx8mm_thermal +imx8mn-interconnect +imx8mq-interconnect +imx_keypad +imx_rproc +imx_sc_key +imx_sc_thermal +imx_sc_wdt +imx_thermal +imxfb +ina209 +ina2xx +ina2xx-adc +ina3221 +industrialio +industrialio-buffer-cb +industrialio-buffer-dma +industrialio-buffer-dmaengine +industrialio-configfs +industrialio-hw-consumer +industrialio-sw-device +industrialio-sw-trigger +industrialio-triggered-buffer +industrialio-triggered-event +inet_diag +inexio +inftl +initio +input-leds +input-polldev +inspur-ipsps +int51x1 +intel-xway +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_vr_nor +interact +inv-mpu6050 +inv-mpu6050-i2c +inv-mpu6050-spi +io_edgeport +io_ti +ionic +iowarrior +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_wlc +ip_vs_wrr +ip_vti +ipa +ipack +ipaq +ipcomp +ipcomp6 +iphase +ipheth +ipip +ipmb_dev_int +ipmi_devintf +ipmi_msghandler +ipmi_poweroff +ipmi_si +ipmi_ssif +ipmi_watchdog +ipoctal +ipr +iproc-rng200 +iproc_nand +ips +ipt_CLUSTERIP +ipt_ECN +ipt_REJECT +ipt_SYNPROXY +ipt_ah +ipt_rpfilter +iptable_filter +iptable_mangle +iptable_nat +iptable_raw +iptable_security +ipvlan +ipvtap +ipw +ipw2100 +ipw2200 +iqs269a +iqs5xx +iqs620at-temp +iqs621-als +iqs624-pos +iqs62x +iqs62x-keys +ir-hix5hd2 +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-spi +ir-usb +ir-xmp-decoder +ir35221 +ir38064 +irps5401 +irq-madera +iscsi_boot_sysfs +iscsi_ibft +iscsi_target_mod +iscsi_tcp +isdnhdlc +isicom +isight_firmware +isl29003 +isl29018 +isl29020 +isl29028 +isl29125 +isl29501 +isl6271a-regulator +isl6405 +isl6421 +isl6423 +isl68137 +isl9305 +isofs +isp116x-hcd +isp1704_charger +isp1760 +it87 +it913x +itd1000 +ite-cir +itg3200 +iuu_phoenix +ivtv +ivtv-alsa +ivtvfb +iw_cm +iw_cxgb4 +iwl3945 +iwl4965 +iwldvm +iwlegacy +iwlmvm +iwlwifi +ix2505v +ixgb +ixgbe +ixgbevf +janz-cmodio +janz-ican3 +jc42 +jedec_probe +jffs2 +jfs +jmb38x_ms +jme +joydev +joydump +jr3_pci +jsa1212 +jsm +k3_bandgap +k3dma +kafs +kalmia +kaweth +kbtab +kcm +kcomedilib +ke_counter +kempld-core +kempld_wdt +kernelcapi +keyspan +keyspan_pda +keyspan_remote +keywrap +kfifo_buf +khazad +kheaders +kirin-drm +kl5kusb105 +kmem +kmx61 +kobil_sct +komeda +kpc2000 +kpc2000_i2c +kpc2000_spi +kpc_dma +kpss-xcc +ks0127 +ks7010 +ks8842 +ks8851 +ks8851_mll +ksz8795 +ksz8795_spi +ksz884x +ksz9477 +ksz9477_i2c +ksz9477_spi +ksz_common +kvaser_pci +kvaser_pciefd +kvaser_usb +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 +l4f00242t03 +l64781 +lan743x +lan78xx +lan9303-core +lan9303_i2c +lan9303_mdio +lanai +lantiq_gswip +lapb +lapbether +lattice-ecp3-config +layerscape_edac_mod +lcc-ipq806x +lcc-mdm9615 +lcc-msm8960 +lcd +ldusb +lec +led-class-flash +led_bl +leds-88pm860x +leds-aat1290 +leds-adp5520 +leds-an30259a +leds-as3645a +leds-aw2013 +leds-bcm6328 +leds-bcm6358 +leds-bd2802 +leds-blinkm +leds-cpcap +leds-cr0014114 +leds-da903x +leds-da9052 +leds-dac124s085 +leds-el15203000 +leds-gpio +leds-is31fl319x +leds-is31fl32xx +leds-ktd2692 +leds-lm3530 +leds-lm3532 +leds-lm3533 +leds-lm355x +leds-lm3601x +leds-lm36274 +leds-lm3642 +leds-lm3692x +leds-lm3697 +leds-lp3944 +leds-lp3952 +leds-lp5521 +leds-lp5523 +leds-lp5562 +leds-lp55xx-common +leds-lp8501 +leds-lp8788 +leds-lp8860 +leds-lt3593 +leds-max77650 +leds-max77693 +leds-max8997 +leds-mc13783 +leds-menf21bmc +leds-mlxreg +leds-mt6323 +leds-pca9532 +leds-pca955x +leds-pca963x +leds-pwm +leds-regulator +leds-sc27xx-bltc +leds-sgm3140 +leds-spi-byte +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-gpio +ledtrig-heartbeat +ledtrig-netdev +ledtrig-oneshot +ledtrig-pattern +ledtrig-timer +ledtrig-transient +ledtrig-usbport +lego_ev3_battery +legousbtower +lg-vl600 +lg2160 +lgdt3305 +lgdt3306a +lgdt330x +lgs8gl5 +lgs8gxx +lib80211 +lib80211_crypt_ccmp +lib80211_crypt_tkip +lib80211_crypt_wep +libarc4 +libblake2s +libblake2s-generic +libceph +libchacha +libchacha20poly1305 +libcomposite +libcrc32c +libcurve25519 +libcurve25519-generic +libcxgb +libcxgbi +libdes +libertas +libertas_sdio +libertas_spi +libertas_tf +libertas_tf_usb +libfc +libfcoe +libipw +libiscsi +libiscsi_tcp +libpoly1305 +libsas +lightning +lima +lineage-pem +linear +liquidio +liquidio_vf +lis3lv02d +lis3lv02d_i2c +lkkbd +ll_temac +llc +llc2 +llcc-qcom +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 +lochnagar-hwmon +lochnagar-regulator +lockd +lp +lp3943 +lp3971 +lp3972 +lp855x_bl +lp8727_charger +lp872x +lp873x +lp873x-regulator +lp8755 +lp87565 +lp87565-regulator +lp8788-buck +lp8788-charger +lp8788-ldo +lp8788_adc +lp8788_bl +lpasscc-sdm845 +lpc_ich +lpc_sch +lpddr_cmds +lpfc +lru_cache +lrw +lt3651-charger +ltc1660 +ltc2471 +ltc2485 +ltc2496 +ltc2497 +ltc2497-core +ltc2632 +ltc2941-battery-gauge +ltc2945 +ltc2947-core +ltc2947-i2c +ltc2947-spi +ltc2978 +ltc2983 +ltc2990 +ltc3589 +ltc3676 +ltc3815 +ltc4151 +ltc4215 +ltc4222 +ltc4245 +ltc4260 +ltc4261 +ltr501 +ltv350qv +lv0104cs +lv5207lp +lvds-codec +lvstest +lxt +lz4 +lz4hc +lz4hc_compress +m2m-deinterlace +m52790 +m5mols +m62332 +m88ds3103 +m88rs2000 +m88rs6000t +mISDN_core +mISDN_dsp +mISDNinfineon +mISDNipac +mISDNisar +m_can +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 +macb +macb_pci +machxo2-spi +macmodes +macsec +macvlan +macvtap +madera +madera-i2c +madera-spi +mag3110 +magellan +mailbox-altera +mailbox-test +mailbox-xgene-slimpro +mali-dp +mantis +mantis_core +map_absent +map_funcs +map_ram +map_rom +marvell +marvell-cesa +marvell10g +marvell_nand +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 +max11801_ts +max1241 +max1363 +max14577-regulator +max14577_charger +max14656_charger_detector +max1586 +max16064 +max16065 +max1619 +max16601 +max1668 +max17040_battery +max17042_battery +max1721x_battery +max197 +max20730 +max20751 +max2165 +max2175 +max30100 +max30102 +max3100 +max31722 +max31730 +max31785 +max31790 +max31856 +max3420_udc +max3421-hcd +max34440 +max44000 +max44009 +max517 +max5432 +max5481 +max5487 +max5821 +max63xx_wdt +max6621 +max6639 +max6642 +max6650 +max6697 +max6875 +max7359_keypad +max77620-regulator +max77620_thermal +max77620_wdt +max77650 +max77650-charger +max77650-onkey +max77650-regulator +max77686-regulator +max77693-haptic +max77693-regulator +max77693_charger +max77802-regulator +max77826-regulator +max8649 +max8660 +max8688 +max8903_charger +max8907 +max8907-regulator +max8925-regulator +max8925_bl +max8925_onkey +max8925_power +max8952 +max8973-regulator +max8997-regulator +max8997_charger +max8997_haptic +max8998 +max8998_charger +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 +mc44s803 +mcam-core +mcb +mcb-lpc +mcb-pci +mcba_usb +mceusb +mchp23k256 +mcp16502 +mcp251x +mcp3021 +mcp320x +mcp3422 +mcp3911 +mcp4018 +mcp41010 +mcp4131 +mcp4531 +mcp4725 +mcp4922 +mcr20a +mcs5000_ts +mcs7830 +mcs_touchkey +mct_u232 +md-cluster +md4 +mdc800 +mdev +mdio +mdio-bcm-unimac +mdio-bitbang +mdio-cavium +mdio-gpio +mdio-hisi-femac +mdio-i2c +mdio-ipq4019 +mdio-ipq8064 +mdio-mscc-miim +mdio-mux-gpio +mdio-mux-meson-g12a +mdio-mux-mmioreg +mdio-mux-multiplexer +mdio-mvusb +mdio-octeon +mdio-thunder +mdio-xgene +mdio-xpcs +mdt_loader +me4000 +me_daq +mediatek +mediatek-cpufreq +mediatek-drm +mediatek-drm-hdmi +megachips-stdpxxxx-ge-b850v3-fw +megaraid +megaraid_mbox +megaraid_mm +megaraid_sas +melfas_mip4 +memory-notifier-error-inject +memstick +men_z135_uart +men_z188_adc +mena21_wdt +menf21bmc +menf21bmc_hwmon +menf21bmc_wdt +menz69_wdt +meson-canvas +meson-drm +meson-gx-mmc +meson-gxl +meson-ir +meson-mx-sdio +meson-rng +meson-vdec +meson_dw_hdmi +meson_gxbb_wdt +meson_nand +meson_saradc +meson_wdt +metro-usb +metronomefb +mf6x4 +mgag200 +mhi +mi0283qt +michael_mic +micrel +microchip +microchip_t1 +microread +microread_i2c +microtek +minix +mip6 +mite +mk712 +mkiss +ml86v7667 +mlx4_core +mlx4_en +mlx4_ib +mlx5_core +mlx5_ib +mlx90614 +mlx90632 +mlx_wdt +mlxbf-bootctl +mlxbf-tmfifo +mlxfw +mlxreg-fan +mlxreg-hotplug +mlxreg-io +mlxsw_core +mlxsw_i2c +mlxsw_minimal +mlxsw_pci +mlxsw_spectrum +mlxsw_switchib +mlxsw_switchx2 +mma7455_core +mma7455_i2c +mma7455_spi +mma7660 +mma8450 +mma8452 +mma9551 +mma9551_core +mma9553 +mmc35240 +mmc_hsq +mmc_spi +mmcc-apq8084 +mmcc-msm8960 +mmcc-msm8974 +mmcc-msm8996 +mmcc-msm8998 +mms114 +mn88443x +mn88472 +mn88473 +mos7720 +mos7840 +most_cdev +most_core +most_dim2 +most_i2c +most_net +most_sound +most_usb +most_video +motorola-cpcap +moxa +moxtet +mp2629 +mp2629_adc +mp2629_charger +mp5416 +mp8859 +mp886x +mpc624 +mpl115 +mpl115_i2c +mpl115_spi +mpl3115 +mpls_gso +mpls_iptunnel +mpls_router +mpoa +mpq7920 +mpr121_touchkey +mpt3sas +mptbase +mptctl +mptfc +mptlan +mptsas +mptscsih +mptspi +mpu3050 +mrf24j40 +mrp +ms5611_core +ms5611_i2c +ms5611_spi +ms5637 +ms_block +ms_sensors_i2c +mscc +mscc_felix +mscc_ocelot_common +msdos +msi001 +msi2500 +msm +msp3400 +mspro_block +mss-sc7180 +mt2060 +mt2063 +mt20xx +mt2131 +mt2266 +mt312 +mt352 +mt6311-regulator +mt6323-regulator +mt6358-regulator +mt6360-core +mt6380-regulator +mt6397 +mt6397-regulator +mt6577_auxadc +mt6797-mt6351 +mt7530 +mt76 +mt76-usb +mt7601u +mt7603e +mt7615-common +mt7615e +mt7663u +mt76x0-common +mt76x02-lib +mt76x02-usb +mt76x0e +mt76x0u +mt76x2-common +mt76x2e +mt76x2u +mt7915e +mt8183-da7219-max98357 +mt8183-mt6358-ts3a227-max98357 +mt9m001 +mt9m032 +mt9m111 +mt9p031 +mt9t001 +mt9t112 +mt9v011 +mt9v032 +mt9v111 +mtd +mtd_blkdevs +mtd_dataflash +mtdblock +mtdblock_ro +mtdoops +mtdpstore +mtdram +mtdswap +mtip32xx +mtk-btcvsd +mtk-cir +mtk-cmdq-helper +mtk-cmdq-mailbox +mtk-cqdma +mtk-hsdma +mtk-pmic-keys +mtk-pmic-wrap +mtk-rng +mtk-sd +mtk-uart-apdma +mtk-vpu +mtk_ecc +mtk_nand +mtk_rpmsg +mtk_scp +mtk_scp_ipi +mtk_thermal +mtk_wdt +mtouch +mtu3 +multipath +multiq3 +musb_hdrc +mux-adg792a +mux-adgs1408 +mux-core +mux-gpio +mux-mmio +mv88e6060 +mv88e6xxx +mv_u3d_core +mv_udc +mvmdio +mvneta +mvpp2 +mvsas +mvumi +mwifiex +mwifiex_pcie +mwifiex_sdio +mwifiex_usb +mwl8k +mxb +mxc4005 +mxc6255 +mxc_nand +mxc_w1 +mxcmmc +mxic_nand +mxl111sf-demod +mxl111sf-tuner +mxl301rf +mxl5005s +mxl5007t +mxl5xx +mxser +mxsfb +mxuport +myrb +myri10ge +myrs +n5pf +n_gsm +n_hdlc +n_tracerouter +n_tracesink +nand +nand_ecc +nandcore +nandsim +national +natsemi +nau7802 +navman +nb8800 +nbd +nci +nci_spi +nci_uart +nct6683 +nct6775 +nct7802 +nct7904 +nd_blk +nd_btt +nd_pmem +nd_virtio +ne2k-pci +neofb +net1080 +net2272 +net2280 +net_failover +netconsole +netdevsim +netjet +netlink_diag +netrom +netsec +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_flow_table_ipv4 +nf_flow_table_ipv6 +nf_log_arp +nf_log_bridge +nf_log_common +nf_log_ipv4 +nf_log_ipv6 +nf_log_netdev +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_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_counter +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_objref +nft_osf +nft_queue +nft_quota +nft_redir +nft_reject +nft_reject_bridge +nft_reject_inet +nft_reject_ipv4 +nft_reject_ipv6 +nft_socket +nft_synproxy +nft_tproxy +nft_tunnel +nft_xfrm +nftl +ngene +nhc_dest +nhc_fragment +nhc_hop +nhc_ipv6 +nhc_mobility +nhc_routing +nhc_udp +nhpoly1305 +nhpoly1305-neon +ni_6527 +ni_65xx +ni_660x +ni_670x +ni_at_a2150 +ni_at_ao +ni_atmio +ni_atmio16d +ni_labpc +ni_labpc_common +ni_labpc_pci +ni_pcidio +ni_pcimio +ni_routing +ni_tio +ni_tiocmd +ni_usb6501 +nicpf +nicstar +nicvf +nilfs2 +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 +noa1305 +noon010pc30 +nosy +notifier-error-inject +nouveau +nozomi +npcm750-pwm-fan +nps_enet +ns +ns-thermal +ns558 +ns83820 +nsh +ntb +ntb_hw_idt +ntb_hw_switchtec +ntb_netdev +ntb_perf +ntb_pingpong +ntb_tool +ntb_transport +ntc_thermistor +ntfs +null_blk +nuvoton-cir +nvidiafb +nvme +nvme-core +nvme-fabrics +nvme-fc +nvme-loop +nvme-rdma +nvme-tcp +nvmem-bcm-ocotp +nvmem-imx-iim +nvmem-imx-ocotp +nvmem-imx-ocotp-scu +nvmem-rave-sp-eeprom +nvmem-reboot-mode +nvmem-rockchip-otp +nvmem-sc27xx-efuse +nvmem_meson_efuse +nvmem_meson_mx_efuse +nvmem_qcom-spmi-sdam +nvmem_qfprom +nvmem_rockchip_efuse +nvmem_snvs_lpgpr +nvmem_sprd_efuse +nvmem_sunxi_sid +nvmet +nvmet-fc +nvmet-rdma +nvmet-tcp +nwl-dsi +nxp-nci +nxp-nci_i2c +nxp-ptn3460 +nxp-tja11xx +nxt200x +nxt6000 +objagg +ocelot_vsc7514 +ocfb +ocfs2 +ocfs2_dlm +ocfs2_dlmfs +ocfs2_nodemanager +ocfs2_stack_o2cb +ocfs2_stack_user +ocfs2_stackglue +ocmem +ocrdma +octeontx-cpt +octeontx-cptvf +octeontx2_af +octeontx2_mbox +octeontx2_nicpf +octeontx2_nicvf +of-fpga-region +of_mmc_spi +of_pmem +of_xilinx_wdt +ofb +ofpart +ohci-platform +omap-mailbox +omap-rng +omap4-keypad +omap_hwspinlock +omfs +omninet +onenand +opencores-kbd +openvswitch +opt3001 +optee +optee-rng +opticon +option +or51132 +or51211 +orangefs +orinoco +orinoco_nortel +orinoco_plx +orinoco_tmd +orinoco_usb +oti6858 +otm3225a +ov13858 +ov2640 +ov2659 +ov2680 +ov2685 +ov2740 +ov5640 +ov5645 +ov5647 +ov5670 +ov5675 +ov5695 +ov6650 +ov7251 +ov7640 +ov7670 +ov772x +ov7740 +ov8856 +ov9640 +ov9650 +overlay +owl-dma +owl-mmc +oxu210hp-hcd +p54common +p54pci +p54spi +p54usb +p8022 +pa12203001 +palmas-pwrbutton +palmas-regulator +palmas_gpadc +pandora_bl +panel +panel-arm-versatile +panel-asus-z00t-tm5p5-n35596 +panel-boe-himax8279d +panel-boe-tv101wum-nl6 +panel-elida-kd35t133 +panel-feixin-k101-im2ba02 +panel-feiyang-fy07024di26a30d +panel-ilitek-ili9322 +panel-ilitek-ili9881c +panel-innolux-p079zca +panel-jdi-lt070me05000 +panel-kingdisplay-kd097d04 +panel-leadtek-ltk050h3146w +panel-leadtek-ltk500hd1829 +panel-lg-lb035q02 +panel-lg-lg4573 +panel-lvds +panel-nec-nl8048hl11 +panel-novatek-nt35510 +panel-novatek-nt39016 +panel-olimex-lcd-olinuxino +panel-orisetech-otm8009a +panel-osd-osd101t2587-53ts +panel-panasonic-vvx10f034n00 +panel-raspberrypi-touchscreen +panel-raydium-rm67191 +panel-raydium-rm68200 +panel-rocktech-jh057n00900 +panel-ronbo-rb070d30 +panel-samsung-ld9040 +panel-samsung-s6d16d0 +panel-samsung-s6e3ha2 +panel-samsung-s6e63j0x03 +panel-samsung-s6e63m0 +panel-samsung-s6e88a0-ams452ef01 +panel-samsung-s6e8aa0 +panel-seiko-43wvf1g +panel-sharp-lq101r1sx01 +panel-sharp-ls037v7dw01 +panel-sharp-ls043t1le01 +panel-simple +panel-sitronix-st7701 +panel-sitronix-st7789v +panel-sony-acx424akp +panel-sony-acx565akm +panel-tpo-td028ttec1 +panel-tpo-td043mtea1 +panel-tpo-tpg110 +panel-truly-nt35597 +panel-visionox-rm69299 +panel-xinpeng-xpp055c272 +panfrost +parade-ps8622 +parade-ps8640 +parkbd +parman +parport +parport_ax88796 +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_imx +pata_it8213 +pata_it821x +pata_jmicron +pata_legacy +pata_marvell +pata_mpiix +pata_netcell +pata_ninja32 +pata_ns87410 +pata_ns87415 +pata_of_platform +pata_oldpiix +pata_opti +pata_optidma +pata_pdc2027x +pata_pdc202xx_old +pata_piccolo +pata_platform +pata_radisys +pata_rdc +pata_rz1000 +pata_sch +pata_serverworks +pata_sil680 +pata_sis +pata_sl82c105 +pata_triflex +pata_via +pblk +pc300too +pc87360 +pc87427 +pcap-regulator +pcap_keys +pcap_ts +pcbc +pcf50633 +pcf50633-adc +pcf50633-backlight +pcf50633-charger +pcf50633-gpio +pcf50633-input +pcf50633-regulator +pcf8574_keypad +pcf8591 +pch_udc +pci +pci-pf-stub +pci-stub +pci200syn +pcie-brcmstb +pcie-iproc +pcie-iproc-platform +pcie-rockchip-host +pcips2 +pcl711 +pcl724 +pcl726 +pcl730 +pcl812 +pcl816 +pcl818 +pcm3724 +pcmad +pcmcia_core +pcmcia_rsrc +pcmda12 +pcmmio +pcmuio +pcnet32 +pcrypt +pcwd_pci +pcwd_usb +pda_power +pdc_adma +pdr_interface +peak_pci +peak_pciefd +peak_usb +pegasus +pegasus_notetaker +penmount +pfuze100-regulator +phantom +phonet +phram +phy-am654-serdes +phy-armada38x-comphy +phy-bcm-kona-usb2 +phy-bcm-ns-usb2 +phy-bcm-ns-usb3 +phy-bcm-ns2-usbdrd +phy-bcm-sr-pcie +phy-bcm-sr-usb +phy-berlin-sata +phy-berlin-usb +phy-brcm-usb-dvr +phy-cadence-salvo +phy-cadence-sierra +phy-cadence-torrent +phy-cpcap-usb +phy-exynos-usb2 +phy-fsl-imx8-mipi-dphy +phy-fsl-imx8mq-usb +phy-generic +phy-gmii-sel +phy-gpio-vbus-usb +phy-hi3660-usb3 +phy-hi6220-usb +phy-hisi-inno-usb2 +phy-histb-combphy +phy-isp1301 +phy-j721e-wiz +phy-mapphone-mdm6600 +phy-meson-g12a-usb2 +phy-meson-g12a-usb3-pcie +phy-meson-gxl-usb2 +phy-meson8b-usb2 +phy-mtk-tphy +phy-mtk-ufs +phy-mtk-xsphy +phy-mvebu-a3700-comphy +phy-mvebu-a3700-utmi +phy-mvebu-cp110-comphy +phy-ocelot-serdes +phy-omap-usb2 +phy-pxa-28nm-hsic +phy-pxa-28nm-usb2 +phy-qcom-apq8064-sata +phy-qcom-ipq4019-usb +phy-qcom-ipq806x-sata +phy-qcom-pcie2 +phy-qcom-qmp +phy-qcom-qusb2 +phy-qcom-snps-femto-v2 +phy-qcom-ufs +phy-qcom-ufs-qmp-14nm +phy-qcom-usb-hs +phy-qcom-usb-hs-28nm +phy-qcom-usb-hsic +phy-qcom-usb-ss +phy-rcar-gen2 +phy-rcar-gen3-pcie +phy-rcar-gen3-usb2 +phy-rcar-gen3-usb3 +phy-rockchip-dp +phy-rockchip-dphy-rx0 +phy-rockchip-emmc +phy-rockchip-inno-dsidphy +phy-rockchip-inno-hdmi +phy-rockchip-inno-usb2 +phy-rockchip-pcie +phy-rockchip-typec +phy-rockchip-usb +phy-sun4i-usb +phy-sun50i-usb3 +phy-sun6i-mipi-dphy +phy-tahvo +phy-tusb1210 +phylink +physmap +pi3usb30532 +pi433 +pinctrl-apq8064 +pinctrl-apq8084 +pinctrl-axp209 +pinctrl-da9062 +pinctrl-ipq4019 +pinctrl-ipq6018 +pinctrl-ipq8064 +pinctrl-ipq8074 +pinctrl-lochnagar +pinctrl-madera +pinctrl-max77620 +pinctrl-mcp23s08 +pinctrl-mcp23s08_i2c +pinctrl-mcp23s08_spi +pinctrl-mdm9615 +pinctrl-msm8660 +pinctrl-msm8916 +pinctrl-msm8960 +pinctrl-msm8976 +pinctrl-msm8994 +pinctrl-msm8996 +pinctrl-msm8998 +pinctrl-msm8x74 +pinctrl-qcs404 +pinctrl-qdf2xxx +pinctrl-rk805 +pinctrl-sc7180 +pinctrl-sdm660 +pinctrl-sdm845 +pinctrl-sm8150 +pinctrl-sm8250 +pinctrl-spmi-gpio +pinctrl-spmi-mpp +pinctrl-ssbi-gpio +pinctrl-ssbi-mpp +pinctrl-stmfx +ping +pistachio-internal-dac +pixcir_i2c_ts +pkcs7_test_key +pkcs8_key_parser +pktcdvd +pktgen +pl111_drm +pl172 +pl2303 +pl330 +plat-ram +plat_nand +platform_lcd +platform_mhu +plip +plusb +pluto2 +plx_dma +plx_pci +pm-notifier-error-inject +pm2fb +pm3fb +pm80xx +pm8916_wdt +pm8941-pwrkey +pm8xxx-vibrator +pmbus +pmbus_core +pmc551 +pmcraid +pms7003 +pn532_uart +pn533 +pn533_i2c +pn533_usb +pn544 +pn544_i2c +pn_pep +poly1305-neon +poly1305_generic +port100 +powermate +powr1220 +ppdev +ppp_async +ppp_deflate +ppp_mppe +ppp_synctty +pppoatm +pppoe +pppox +pps-gpio +pps-ldisc +pps_parport +pptp +pretimeout_panic +prism2_usb +ps2-gpio +ps2mult +psample +psmouse +psnap +pstore_blk +pstore_zone +psxpad-spi +ptp-qoriq +ptp_clockmatrix +ptp_dte +ptp_idt82p33 +ptp_ines +pulse8-cec +pulsedlight-lidar-lite-v2 +pv88060-regulator +pv88080-regulator +pv88090-regulator +pvcalls-front +pvpanic +pvrusb2 +pwc +pwm-atmel-hlcdc +pwm-bcm-iproc +pwm-bcm2835 +pwm-beeper +pwm-berlin +pwm-brcmstb +pwm-cros-ec +pwm-fan +pwm-fsl-ftm +pwm-hibvt +pwm-imx-tpm +pwm-imx1 +pwm-imx27 +pwm-iqs620a +pwm-ir-tx +pwm-lp3943 +pwm-mediatek +pwm-meson +pwm-mtk-disp +pwm-pca9685 +pwm-rcar +pwm-regulator +pwm-renesas-tpu +pwm-rockchip +pwm-sprd +pwm-sun4i +pwm-tiecap +pwm-tiehrpwm +pwm-twl +pwm-twl-led +pwm-vibra +pwm_bl +pwrseq_emmc +pwrseq_sd8787 +pwrseq_simple +pxa168_eth +pxa27x_udc +pxe1610 +pxrc +q6adm +q6afe +q6afe-dai +q6asm +q6asm-dai +q6core +q6dsp-common +q6routing +q6sstop-qcs404 +qca8k +qca_7k_common +qcaspi +qcauart +qcaux +qcom-apcs-ipc-mailbox +qcom-camss +qcom-coincell +qcom-cpr +qcom-cpufreq-hw +qcom-cpufreq-nvmem +qcom-emac +qcom-geni-se +qcom-pon +qcom-rng +qcom-rpmh-regulator +qcom-spmi-adc5 +qcom-spmi-iadc +qcom-spmi-pmic +qcom-spmi-temp-alarm +qcom-spmi-vadc +qcom-vadc-common +qcom-wdt +qcom-wled +qcom_aoss +qcom_common +qcom_edac +qcom_geni_serial +qcom_glink +qcom_glink_rpm +qcom_glink_smem +qcom_gsbi +qcom_hwspinlock +qcom_nandc +qcom_q6v5 +qcom_q6v5_adsp +qcom_q6v5_ipa_notify +qcom_q6v5_mss +qcom_q6v5_pas +qcom_q6v5_wcss +qcom_rpm +qcom_rpm-regulator +qcom_smbb +qcom_smd +qcom_smd-regulator +qcom_spmi-regulator +qcom_sysmon +qcom_tsens +qcrypto +qcserial +qed +qede +qedf +qedi +qedr +qemu_fw_cfg +qinfo_probe +qla1280 +qla2xxx +qla3xxx +qla4xxx +qlcnic +qlge +qm1d1b0004 +qm1d1c0042 +qmi_helpers +qmi_wwan +qnoc-msm8916 +qnoc-msm8974 +qnoc-qcs404 +qnoc-sc7180 +qnoc-sdm845 +qnx4 +qnx6 +qoriq-cpufreq +qoriq_thermal +qrtr +qrtr-mhi +qrtr-smd +qrtr-tun +qsemi +qt1010 +qt1050 +qt1070 +qt2160 +qtnfmac +qtnfmac_pcie +quatech2 +quota_tree +quota_v1 +quota_v2 +qxl +r592 +r6040 +r8152 +r8169 +r8188eu +r8192e_pci +r8192u_usb +r820t +r852 +r8712u +r8723bs +r8a66597-hcd +r8a66597-udc +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-si476x +radio-tea5764 +radio-usb-si4713 +radio-wl1273 +raid0 +raid1 +raid10 +raid456 +raid6_pq +raid_class +rainshadow-cec +ramoops +raspberrypi-cpufreq +raspberrypi-hwmon +raspberrypi-ts +ravb +rave-sp +rave-sp-backlight +rave-sp-pwrbutton +rave-sp-wdt +raw +raw_diag +raw_gadget +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-behold +rc-behold-columbus +rc-budget-ci-old +rc-cec +rc-cinergy +rc-cinergy-1400 +rc-core +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-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-kworld-315u +rc-kworld-pc150u +rc-kworld-plus-tv-analog +rc-leadtek-y04g0051 +rc-lme2510 +rc-loopback +rc-manli +rc-medion-x10 +rc-medion-x10-digitainer +rc-medion-x10-or2x +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-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-tango +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-dvd +rc-zx-irdec +rc5t583-regulator +rcar-csi2 +rcar-dmac +rcar-du-drm +rcar-fcp +rcar-vin +rcar_can +rcar_canfd +rcar_cmm +rcar_drif +rcar_dw_hdmi +rcar_fdp1 +rcar_gen3_thermal +rcar_jpu +rcar_lvds +rcar_thermal +rcuperf +rdc321x-southbridge +rdma_cm +rdma_rxe +rdma_ucm +rds +rds_rdma +rds_tcp +realtek +realtek-smi +reboot-mode +redboot +redrat3 +reed_solomon +regmap-i3c +regmap-sccb +regmap-sdw +regmap-slimbus +regmap-spmi +regmap-w1 +regulator-haptic +reiserfs +renesas_sdhi_core +renesas_sdhi_internal_dmac +renesas_sdhi_sys_dmac +renesas_usb3 +renesas_usbhs +renesas_wdt +repaper +reset-brcmstb +reset-hi3660 +reset-meson-audio-arb +reset-qcom-pdc +reset-scmi +reset-ti-sci +reset-ti-syscon +resistive-adc-touch +retu-mfd +retu-pwrbutton +retu_wdt +rfc1051 +rfc1201 +rfcomm +rfd77402 +rfd_ftl +rfkill-gpio +rio-scan +rio_cm +rio_mport_cdev +rionet +rivafb +rj54n1cb0c +rk3399_dmc +rk805-pwrkey +rk808 +rk808-regulator +rk_crypto +rm3100-core +rm3100-i2c +rm3100-spi +rmd128 +rmd160 +rmd256 +rmd320 +rmi_core +rmi_i2c +rmi_smbus +rmi_spi +rmnet +rmtfs_mem +rn5t618 +rn5t618-adc +rn5t618-regulator +rn5t618_wdt +rnbd-client +rnbd-server +rndis_host +rndis_wlan +rockchip +rockchip-dfi +rockchip-io-domain +rockchip-isp1 +rockchip-rga +rockchip-vdec +rockchip_saradc +rockchip_thermal +rockchipdrm +rocker +rocket +rohm-bd70528 +rohm-bd71828 +rohm-bd718x7 +rohm-regulator +rohm_bu21023 +romfs +rose +rotary_encoder +rp2 +rpcrdma +rpcsec_gss_krb5 +rpmpd +rpmsg_char +rpmsg_core +rpr0521 +rsi_91x +rsi_sdio +rsi_usb +rsxx +rt2400pci +rt2500pci +rt2500usb +rt2800lib +rt2800mmio +rt2800pci +rt2800usb +rt2x00lib +rt2x00mmio +rt2x00pci +rt2x00usb +rt5033 +rt5033-regulator +rt5033_battery +rt61pci +rt73usb +rt9455_charger +rtc-88pm80x +rtc-88pm860x +rtc-ab-b5ze-s3 +rtc-ab-eoz9 +rtc-ab3100 +rtc-abx80x +rtc-armada38x +rtc-as3722 +rtc-bd70528 +rtc-bq32k +rtc-bq4802 +rtc-brcmstb-waketimer +rtc-cadence +rtc-cpcap +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-fsl-ftm-alarm +rtc-ftrtc010 +rtc-hid-sensor-time +rtc-hym8563 +rtc-imx-sc +rtc-imxdi +rtc-isl12022 +rtc-isl12026 +rtc-isl1208 +rtc-lp8788 +rtc-m41t80 +rtc-m41t93 +rtc-m41t94 +rtc-m48t35 +rtc-m48t59 +rtc-m48t86 +rtc-max6900 +rtc-max6902 +rtc-max6916 +rtc-max77686 +rtc-max8907 +rtc-max8925 +rtc-max8997 +rtc-max8998 +rtc-mc13xxx +rtc-mcp795 +rtc-meson-vrtc +rtc-msm6242 +rtc-mt2712 +rtc-mt6397 +rtc-mt7622 +rtc-mxc +rtc-mxc_v2 +rtc-palmas +rtc-pcap +rtc-pcf2123 +rtc-pcf2127 +rtc-pcf50633 +rtc-pcf85063 +rtc-pcf8523 +rtc-pcf85363 +rtc-pcf8563 +rtc-pcf8583 +rtc-pl030 +rtc-pl031 +rtc-pm8xxx +rtc-r7301 +rtc-r9701 +rtc-rc5t583 +rtc-rc5t619 +rtc-rk808 +rtc-rp5c01 +rtc-rs5c348 +rtc-rs5c372 +rtc-rv3028 +rtc-rv3029c2 +rtc-rv8803 +rtc-rx4581 +rtc-rx6110 +rtc-rx8010 +rtc-rx8025 +rtc-rx8581 +rtc-s35390a +rtc-s5m +rtc-sc27xx +rtc-sd3078 +rtc-sh +rtc-snvs +rtc-stk17ta8 +rtc-tps6586x +rtc-tps65910 +rtc-tps80031 +rtc-twl +rtc-v3020 +rtc-wm831x +rtc-wm8350 +rtc-x1205 +rtc-zynqmp +rtd520 +rti800 +rti802 +rti_wdt +rtl2830 +rtl2832 +rtl2832_sdr +rtl8150 +rtl8187 +rtl8188ee +rtl818x_pci +rtl8192c-common +rtl8192ce +rtl8192cu +rtl8192de +rtl8192ee +rtl8192se +rtl8723-common +rtl8723ae +rtl8723be +rtl8821ae +rtl8xxxu +rtl_pci +rtl_usb +rtllib +rtllib_crypt_ccmp +rtllib_crypt_tkip +rtllib_crypt_wep +rtlwifi +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_8822b +rtw88_8822be +rtw88_8822c +rtw88_8822ce +rtw88_core +rtw88_pci +rx51_battery +rxrpc +rza_wdt +s1d13xxxfb +s2250 +s2255drv +s2io +s2mpa01 +s2mps11 +s3fb +s3fwrn5 +s3fwrn5_i2c +s526 +s5c73m3 +s5h1409 +s5h1411 +s5h1420 +s5h1432 +s5k4ecgx +s5k5baf +s5k6a3 +s5k6aa +s5m8767 +s626 +s6sy761 +s921 +saa6588 +saa6752hs +saa7110 +saa7115 +saa7127 +saa7134 +saa7134-alsa +saa7134-dvb +saa7134-empress +saa7134-go7007 +saa7146 +saa7146_vv +saa7164 +saa717x +saa7185 +saa7706h +safe_serial +sahara +salsa20_generic +sample-trace-array +samsung-keypad +samsung-sxgbe +sata_dwc_460ex +sata_inic162x +sata_mv +sata_nv +sata_promise +sata_qstor +sata_rcar +sata_sil +sata_sil24 +sata_sis +sata_svw +sata_sx4 +sata_uli +sata_via +sata_vsc +savagefb +sb1000 +sbp_target +sbs-battery +sbs-charger +sbs-manager +sbsa_gwdt +sc16is7xx +sc2731-regulator +sc2731_charger +sc27xx-poweroff +sc27xx-vibra +sc27xx_adc +sc27xx_fuel_gauge +sc92031 +sc9860-clk +sc9863a-clk +sca3000 +sch5627 +sch5636 +sch56xx-common +sch_atm +sch_cake +sch_cbq +sch_cbs +sch_choke +sch_codel +sch_drr +sch_dsmark +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_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 +sci-clk +sclk-div +scmi-cpufreq +scmi-hwmon +scmi_pm_domain +scpi-cpufreq +scpi-hwmon +scpi_pm_domain +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-brcmstb +sdhci-cadence +sdhci-esdhc-imx +sdhci-iproc +sdhci-milbeaut +sdhci-msm +sdhci-of-arasan +sdhci-of-aspeed +sdhci-of-at91 +sdhci-of-dwcmshc +sdhci-of-esdhc +sdhci-omap +sdhci-pci +sdhci-pltfm +sdhci-pxav3 +sdhci-sprd +sdhci-xenon-driver +sdhci_am654 +sdhci_f_sdh30 +sdio_uart +seed +sensorhub +serial_ir +serio_raw +sermouse +serpent_generic +serport +ses +sf-pdma +sfc +sfc-falcon +sfp +sgi_w1 +sgp30 +sh-sci +sh_eth +sh_mmcif +sh_mobile_lcdcfb +sha1-ce +sha2-ce +sha256-arm64 +sha3-ce +sha3_generic +sha512-arm64 +sha512-ce +shark2 +shiftfs +sht15 +sht21 +sht3x +shtc1 +si1133 +si1145 +si2157 +si2165 +si2168 +si21xx +si4713 +si476x-core +si7005 +si7020 +sidewinder +sierra +sierra_net +sifive +sii902x +sii9234 +sil-sii8620 +sil164 +silead +simple-bridge +siox-bus-gpio +siox-core +sir_ir +sirf-audio-codec +sis190 +sis5595 +sis900 +sis_i2c +sisfb +sisusbvga +sit +siw +sja1000 +sja1000_isa +sja1000_platform +sja1105 +skd +skfp +skge +sky2 +sky81452 +sky81452-backlight +sky81452-regulator +sl811-hcd +slcan +slg51000-regulator +slic_ds26522 +slicoss +slim-qcom-ctrl +slim-qcom-ngd-ctrl +slimbus +slip +slram +sm3-ce +sm3_generic +sm4-ce +sm4_generic +sm501 +sm501fb +sm712fb +sm750fb +sm_common +sm_ftl +smartpqi +smb347-charger +smc +smc_diag +smd-rpm +smem +smiapp +smiapp-pll +smipcie +smm665 +smp2p +smsc +smsc47b397 +smsc47m1 +smsc47m192 +smsc75xx +smsc911x +smsc9420 +smsc95xx +smscufx +smsdvb +smsm +smsmdtv +smssdio +smsusb +snd +snd-ac97-codec +snd-ad1889 +snd-ak4113 +snd-ak4114 +snd-ak4xxx-adda +snd-ali5451 +snd-aloop +snd-als300 +snd-atiixp +snd-atiixp-modem +snd-au8810 +snd-au8820 +snd-au8830 +snd-aw2 +snd-azt3328 +snd-bcd2000 +snd-bcm2835 +snd-bebob +snd-bt87x +snd-ca0106 +snd-cmipci +snd-compress +snd-cs4281 +snd-cs46xx +snd-cs8427 +snd-ctxfi +snd-darla20 +snd-darla24 +snd-dice +snd-dummy +snd-echo3g +snd-emu10k1 +snd-emu10k1-synth +snd-emu10k1x +snd-emux-synth +snd-ens1370 +snd-ens1371 +snd-es1938 +snd-es1968 +snd-fireface +snd-firewire-digi00x +snd-firewire-lib +snd-firewire-motu +snd-firewire-tascam +snd-fireworks +snd-fm801 +snd-gina20 +snd-gina24 +snd-hda-codec +snd-hda-codec-analog +snd-hda-codec-ca0110 +snd-hda-codec-ca0132 +snd-hda-codec-cirrus +snd-hda-codec-cmedia +snd-hda-codec-conexant +snd-hda-codec-generic +snd-hda-codec-hdmi +snd-hda-codec-idt +snd-hda-codec-realtek +snd-hda-codec-si3054 +snd-hda-codec-via +snd-hda-core +snd-hda-intel +snd-hdsp +snd-hdspm +snd-hrtimer +snd-hwdep +snd-i2c +snd-ice1712 +snd-ice1724 +snd-ice17xx-ak4xxx +snd-indigo +snd-indigodj +snd-indigodjx +snd-indigoio +snd-indigoiox +snd-intel-dspcfg +snd-intel8x0 +snd-intel8x0m +snd-isight +snd-korg1212 +snd-layla20 +snd-layla24 +snd-lola +snd-lx6464es +snd-maestro3 +snd-mia +snd-mixart +snd-mixer-oss +snd-mona +snd-mpu401 +snd-mpu401-uart +snd-mtpav +snd-mts64 +snd-nm256 +snd-opl3-lib +snd-opl3-synth +snd-oxfw +snd-oxygen +snd-oxygen-lib +snd-pcm +snd-pcm-dmaengine +snd-pcxhr +snd-portman2x4 +snd-pt2258 +snd-rawmidi +snd-riptide +snd-rme32 +snd-rme96 +snd-rme9652 +snd-seq +snd-seq-device +snd-seq-dummy +snd-seq-midi +snd-seq-midi-emul +snd-seq-midi-event +snd-seq-virmidi +snd-serial-u16550 +snd-soc-63xx +snd-soc-ac97 +snd-soc-acp-da7219mx98357-mach +snd-soc-acp-rt5645-mach +snd-soc-acpi +snd-soc-adau-utils +snd-soc-adau1701 +snd-soc-adau1761 +snd-soc-adau1761-i2c +snd-soc-adau1761-spi +snd-soc-adau17x1 +snd-soc-adau7002 +snd-soc-adau7118 +snd-soc-adau7118-hw +snd-soc-adau7118-i2c +snd-soc-ak4104 +snd-soc-ak4118 +snd-soc-ak4458 +snd-soc-ak4554 +snd-soc-ak4613 +snd-soc-ak4642 +snd-soc-ak5386 +snd-soc-ak5558 +snd-soc-alc5623 +snd-soc-apq8016-sbc +snd-soc-apq8096 +snd-soc-armada-370-db +snd-soc-audio-graph-card +snd-soc-bcm2835-i2s +snd-soc-bd28623 +snd-soc-bt-sco +snd-soc-core +snd-soc-cpcap +snd-soc-cros-ec-codec +snd-soc-cs35l32 +snd-soc-cs35l33 +snd-soc-cs35l34 +snd-soc-cs35l35 +snd-soc-cs35l36 +snd-soc-cs4265 +snd-soc-cs4270 +snd-soc-cs4271 +snd-soc-cs4271-i2c +snd-soc-cs4271-spi +snd-soc-cs42l42 +snd-soc-cs42l51 +snd-soc-cs42l51-i2c +snd-soc-cs42l52 +snd-soc-cs42l56 +snd-soc-cs42l73 +snd-soc-cs42xx8 +snd-soc-cs42xx8-i2c +snd-soc-cs43130 +snd-soc-cs4341 +snd-soc-cs4349 +snd-soc-cs53l30 +snd-soc-cx2072x +snd-soc-da7213 +snd-soc-da7219 +snd-soc-davinci-mcasp +snd-soc-dmic +snd-soc-es7134 +snd-soc-es7241 +snd-soc-es8316 +snd-soc-es8328 +snd-soc-es8328-i2c +snd-soc-es8328-spi +snd-soc-fsi +snd-soc-fsl-asoc-card +snd-soc-fsl-asrc +snd-soc-fsl-audmix +snd-soc-fsl-easrc +snd-soc-fsl-esai +snd-soc-fsl-micfil +snd-soc-fsl-mqs +snd-soc-fsl-sai +snd-soc-fsl-spdif +snd-soc-fsl-ssi +snd-soc-gtm601 +snd-soc-hdmi-codec +snd-soc-imx-audmix +snd-soc-imx-audmux +snd-soc-imx-es8328 +snd-soc-imx-sgtl5000 +snd-soc-imx-spdif +snd-soc-inno-rk3036 +snd-soc-kirkwood +snd-soc-lochnagar-sc +snd-soc-lpass-apq8016 +snd-soc-lpass-cpu +snd-soc-lpass-ipq806x +snd-soc-lpass-platform +snd-soc-max9759 +snd-soc-max98088 +snd-soc-max98090 +snd-soc-max98357a +snd-soc-max98373 +snd-soc-max98390 +snd-soc-max98504 +snd-soc-max9860 +snd-soc-max9867 +snd-soc-max98927 +snd-soc-meson-aiu +snd-soc-meson-axg-fifo +snd-soc-meson-axg-frddr +snd-soc-meson-axg-pdm +snd-soc-meson-axg-sound-card +snd-soc-meson-axg-spdifin +snd-soc-meson-axg-spdifout +snd-soc-meson-axg-tdm-formatter +snd-soc-meson-axg-tdm-interface +snd-soc-meson-axg-tdmin +snd-soc-meson-axg-tdmout +snd-soc-meson-axg-toddr +snd-soc-meson-card-utils +snd-soc-meson-codec-glue +snd-soc-meson-g12a-toacodec +snd-soc-meson-g12a-tohdmitx +snd-soc-meson-gx-sound-card +snd-soc-meson-t9015 +snd-soc-mikroe-proto +snd-soc-msm8916-analog +snd-soc-msm8916-digital +snd-soc-mt6351 +snd-soc-mt6358 +snd-soc-mt6660 +snd-soc-mt6797-afe +snd-soc-mt8183-afe +snd-soc-mtk-common +snd-soc-nau8540 +snd-soc-nau8810 +snd-soc-nau8822 +snd-soc-nau8824 +snd-soc-pcm1681 +snd-soc-pcm1789-codec +snd-soc-pcm1789-i2c +snd-soc-pcm179x-codec +snd-soc-pcm179x-i2c +snd-soc-pcm179x-spi +snd-soc-pcm186x +snd-soc-pcm186x-i2c +snd-soc-pcm186x-spi +snd-soc-pcm3060 +snd-soc-pcm3060-i2c +snd-soc-pcm3060-spi +snd-soc-pcm3168a +snd-soc-pcm3168a-i2c +snd-soc-pcm3168a-spi +snd-soc-pcm512x +snd-soc-pcm512x-i2c +snd-soc-pcm512x-spi +snd-soc-qcom-common +snd-soc-rcar +snd-soc-rk3288-hdmi-analog +snd-soc-rk3328 +snd-soc-rk3399-gru-sound +snd-soc-rl6231 +snd-soc-rockchip-i2s +snd-soc-rockchip-max98090 +snd-soc-rockchip-pcm +snd-soc-rockchip-pdm +snd-soc-rockchip-rt5645 +snd-soc-rockchip-spdif +snd-soc-rt1308-sdw +snd-soc-rt5514 +snd-soc-rt5514-spi +snd-soc-rt5616 +snd-soc-rt5631 +snd-soc-rt5645 +snd-soc-rt5663 +snd-soc-rt5682 +snd-soc-rt5682-sdw +snd-soc-rt700 +snd-soc-rt711 +snd-soc-rt715 +snd-soc-sdm845 +snd-soc-sgtl5000 +snd-soc-si476x +snd-soc-sigmadsp +snd-soc-sigmadsp-i2c +snd-soc-sigmadsp-regmap +snd-soc-simple-amplifier +snd-soc-simple-card +snd-soc-simple-card-utils +snd-soc-spdif-rx +snd-soc-spdif-tx +snd-soc-sprd-platform +snd-soc-ssm2305 +snd-soc-ssm2602 +snd-soc-ssm2602-i2c +snd-soc-ssm2602-spi +snd-soc-ssm4567 +snd-soc-sta32x +snd-soc-sta350 +snd-soc-sti-sas +snd-soc-storm +snd-soc-tas2552 +snd-soc-tas2562 +snd-soc-tas2770 +snd-soc-tas5086 +snd-soc-tas571x +snd-soc-tas5720 +snd-soc-tas6424 +snd-soc-tda7419 +snd-soc-tfa9879 +snd-soc-ti-edma +snd-soc-ti-sdma +snd-soc-ti-udma +snd-soc-tlv320adcx140 +snd-soc-tlv320aic23 +snd-soc-tlv320aic23-i2c +snd-soc-tlv320aic23-spi +snd-soc-tlv320aic31xx +snd-soc-tlv320aic32x4 +snd-soc-tlv320aic32x4-i2c +snd-soc-tlv320aic32x4-spi +snd-soc-tlv320aic3x +snd-soc-tpa6130a2 +snd-soc-ts3a227e +snd-soc-tscs42xx +snd-soc-tscs454 +snd-soc-uda1334 +snd-soc-wcd9335 +snd-soc-wcd934x +snd-soc-wm8510 +snd-soc-wm8523 +snd-soc-wm8524 +snd-soc-wm8580 +snd-soc-wm8711 +snd-soc-wm8728 +snd-soc-wm8731 +snd-soc-wm8737 +snd-soc-wm8741 +snd-soc-wm8750 +snd-soc-wm8753 +snd-soc-wm8770 +snd-soc-wm8776 +snd-soc-wm8782 +snd-soc-wm8804 +snd-soc-wm8804-i2c +snd-soc-wm8804-spi +snd-soc-wm8903 +snd-soc-wm8904 +snd-soc-wm8960 +snd-soc-wm8962 +snd-soc-wm8974 +snd-soc-wm8978 +snd-soc-wm8985 +snd-soc-wsa881x +snd-soc-xlnx-formatter-pcm +snd-soc-xlnx-i2s +snd-soc-xlnx-spdif +snd-soc-xtfpga-i2s +snd-soc-zl38060 +snd-soc-zx-aud96p22 +snd-sof +snd-sof-acpi +snd-sof-imx8 +snd-sof-imx8m +snd-sof-of +snd-sof-pci +snd-sonicvibes +snd-timer +snd-trident +snd-ua101 +snd-usb-6fire +snd-usb-audio +snd-usb-caiaq +snd-usb-hiface +snd-usb-line6 +snd-usb-pod +snd-usb-podhd +snd-usb-toneport +snd-usb-variax +snd-usbmidi-lib +snd-util-mem +snd-via82xx +snd-via82xx-modem +snd-virmidi +snd-virtuoso +snd-vx-lib +snd-vx222 +snd-ymfpci +snd_xen_front +snic +snps_udc_core +snps_udc_plat +snvs_pwrkey +soc_button_array +socinfo +softdog +softing +solo6x10 +solos-pci +sony-btf-mpx +soundcore +soundwire-bus +soundwire-cadence +soundwire-intel +soundwire-qcom +sp2 +sp805_wdt +sp8870 +sp887x +spaceball +spaceorb +sparse-keymap +spcp8x5 +speakup +speakup_acntsa +speakup_apollo +speakup_audptr +speakup_bns +speakup_decext +speakup_dectlk +speakup_dummy +speakup_ltlk +speakup_soft +speakup_spkout +speakup_txprt +speedfax +speedtch +spi-altera +spi-amd +spi-armada-3700 +spi-axi-spi-engine +spi-bcm-qspi +spi-bcm2835 +spi-bcm2835aux +spi-bitbang +spi-brcmstb-qspi +spi-butterfly +spi-cadence +spi-dln2 +spi-dw +spi-dw-mmio +spi-dw-pci +spi-fsi +spi-fsl-dspi +spi-fsl-lpspi +spi-fsl-qspi +spi-geni-qcom +spi-gpio +spi-hisi-sfc-v3xx +spi-imx +spi-iproc-qspi +spi-lm70llp +spi-loopback-test +spi-meson-spicc +spi-meson-spifc +spi-mt65xx +spi-mtk-nor +spi-mux +spi-mxic +spi-nor +spi-nxp-fspi +spi-oc-tiny +spi-orion +spi-pl022 +spi-pxa2xx-pci +spi-pxa2xx-platform +spi-qcom-qspi +spi-qup +spi-rockchip +spi-rspi +spi-sc18is602 +spi-sh-hspi +spi-sh-msiof +spi-sifive +spi-slave-mt27xx +spi-slave-system-control +spi-slave-time +spi-sprd +spi-sprd-adi +spi-sun6i +spi-synquacer +spi-thunderx +spi-tle62x0 +spi-xcomm +spi-xlp +spi-zynqmp-gqspi +spi_ks8995 +spidev +spinand +spl +spmi +spmi-pmic-arb +sprd-dma +sprd-mailbox +sprd-mcdt +sprd-sc27xx-spi +sprd_hwspinlock +sprd_serial +sprd_thermal +sprd_wdt +sps30 +sr-thermal +sr030pc30 +sr9700 +sr9800 +srf04 +srf08 +ssb +ssb-hcd +ssd1307fb +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_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 +stkwebcam +stm_console +stm_core +stm_ftrace +stm_heartbeat +stm_p_basic +stm_p_sys-t +stmfts +stmfx +stmmac +stmmac-pci +stmmac-platform +stmpe-adc +stmpe-keypad +stmpe-ts +stowaway +stp +stpmic1 +stpmic1_onkey +stpmic1_regulator +stpmic1_wdt +stratix10-rsu +stratix10-soc +stratix10-svc +streamzap +streebog_generic +stts751 +stv0288 +stv0297 +stv0299 +stv0367 +stv0900 +stv090x +stv0910 +stv6110 +stv6110x +stv6111 +sun4i-backend +sun4i-csi +sun4i-drm +sun4i-drm-hdmi +sun4i-frontend +sun4i-gpadc +sun4i-ss +sun4i-tcon +sun4i_tv +sun50i-codec-analog +sun50i-cpufreq-nvmem +sun6i-csi +sun6i-dma +sun6i_drc +sun6i_mipi_dsi +sun8i-adda-pr-regmap +sun8i-ce +sun8i-codec +sun8i-codec-analog +sun8i-di +sun8i-drm-hdmi +sun8i-mixer +sun8i-rotate +sun8i-ss +sun8i_tcon_top +sun8i_thermal +sundance +sungem +sungem_phy +sunhme +suni +sunkbd +sunrpc +sunxi +sunxi-cedrus +sunxi-cir +sunxi-mmc +sunxi-rsb +sunxi_wdt +sur40 +surface3_spi +svgalib +switchtec +sx8 +sx8654 +sx9310 +sx9500 +sy8106a-regulator +sy8824x +sym53c8xx +symbolserial +synaptics_i2c +synaptics_usb +synclink_gt +synclinkmp +synopsys_edac +syscon-reboot-mode +syscopyarea +sysfillrect +sysimgblt +sysv +t5403 +tag_8021q +tag_ar9331 +tag_brcm +tag_dsa +tag_edsa +tag_gswip +tag_ksz +tag_lan9303 +tag_mtk +tag_ocelot +tag_qca +tag_sja1105 +tag_trailer +tap +target_core_file +target_core_iblock +target_core_mod +target_core_pscsi +target_core_user +tc-dwc-g210 +tc-dwc-g210-pci +tc-dwc-g210-pltfrm +tc358743 +tc358764 +tc358767 +tc358768 +tc3589x-keypad +tc654 +tc74 +tc90522 +tca6416-keypad +tca8418_keypad +tcan4x5x +tcm_fc +tcm_loop +tcm_qla2xxx +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_rt1711h +tcpm +tcrypt +tcs3414 +tcs3472 +tda10021 +tda10023 +tda10048 +tda1004x +tda10071 +tda10086 +tda18212 +tda18218 +tda18250 +tda18271 +tda18271c2dd +tda1997x +tda665x +tda7432 +tda8083 +tda8261 +tda826x +tda827x +tda8290 +tda9840 +tda9887 +tda9950 +tda998x +tdfxfb +tdo24m +tea +tea575x +tea5761 +tea5767 +tea6415c +tea6420 +team +team_mode_activebackup +team_mode_broadcast +team_mode_loadbalance +team_mode_random +team_mode_roundrobin +tee +tee_bnxt_fw +tef6862 +tehuti +teranetics +test_blackhole_dev +test_bpf +test_power +tg3 +tgr192 +thc63lvd1024 +thermal-generic-adc +thermal_mmio +thmc50 +ths7303 +ths8200 +thunder_bgx +thunder_xcv +thunderbolt +thunderbolt-net +thunderx-mmc +thunderx2_pmu +thunderx_edac +thunderx_zip +ti-adc081c +ti-adc0832 +ti-adc084s021 +ti-adc108s102 +ti-adc12138 +ti-adc128s052 +ti-adc161s626 +ti-ads1015 +ti-ads124s08 +ti-ads7950 +ti-ads8344 +ti-ads8688 +ti-am65-cpsw-nuss +ti-cal +ti-dac082s085 +ti-dac5571 +ti-dac7311 +ti-dac7612 +ti-j721e-ufs +ti-lmu +ti-sn65dsi86 +ti-tfp410 +ti-tlc4541 +ti-tpd12s015 +ti_am335x_adc +ti_am335x_tsc +ti_am335x_tscadc +ti_sci_pm_domains +ti_usb_3410_5052 +tidss +tifm_7xx1 +tifm_core +tifm_ms +tifm_sd +timeriomem-rng +tipc +tlan +tls +tlv320aic23b +tm2-touchkey +tm6000 +tm6000-alsa +tm6000-dvb +tmdc +tmio_mmc_core +tmp006 +tmp007 +tmp102 +tmp103 +tmp108 +tmp401 +tmp421 +tmp513 +torture +toshsd +touchit213 +touchright +touchwin +tpci200 +tpl0102 +tpm_atmel +tpm_ftpm_tee +tpm_i2c_atmel +tpm_i2c_infineon +tpm_i2c_nuvoton +tpm_infineon +tpm_key_parser +tpm_st33zp24 +tpm_st33zp24_i2c +tpm_st33zp24_spi +tpm_tis_spi +tpm_vtpm_proxy +tps40422 +tps51632-regulator +tps53679 +tps6105x +tps6105x-regulator +tps62360-regulator +tps65010 +tps65023-regulator +tps6507x +tps6507x-regulator +tps6507x-ts +tps65086 +tps65086-regulator +tps65090-charger +tps65090-regulator +tps65132-regulator +tps65217 +tps65217-regulator +tps65217_bl +tps65217_charger +tps65218 +tps65218-pwrbutton +tps65218-regulator +tps6524x-regulator +tps6586x-regulator +tps65910-regulator +tps65912-regulator +tps6598x +tps80031-regulator +tqmx86 +trace-printk +trancevibrator +trf7970a +tridentfb +ts2020 +ts_bm +ts_fsm +ts_kmp +tsc2004 +tsc2005 +tsc2007 +tsc200x-core +tsc40 +tsi568 +tsi57x +tsi721_mport +tsl2550 +tsl2563 +tsl2583 +tsl2772 +tsl4531 +tsys01 +tsys02d +ttm +ttpci-eeprom +ttusb_dec +ttusbdecfe +ttusbir +ttynull +tua6100 +tua9001 +tulip +tuner +tuner-simple +tuner-types +tuner-xc2028 +tunnel4 +tunnel6 +turbografx +turingcc-qcs404 +turris-mox-rwtm +tvaudio +tveeprom +tvp514x +tvp5150 +tvp7002 +tw2804 +tw5864 +tw68 +tw686x +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_common +twofish_generic +typec +typec_displayport +typec_nvidia +typec_ucsi +typhoon +u132-hcd +uPD60620 +u_audio +u_ether +u_serial +uacce +uartlite +uas +ubi +ubifs +ubuntu-host +ucan +ucb1400_core +ucb1400_ts +ucc_uart +ucd9000 +ucd9200 +ucs1002_power +ucsi_acpi +ucsi_ccg +uda1342 +udc-core +udc-xilinx +udf +udl +udlfb +udp_diag +udp_tunnel +ueagle-atm +ufs +ufs-hisi +ufs-mediatek +ufs-qcom +ufshcd-core +ufshcd-dwc +ufshcd-pci +ufshcd-pltfrm +uhid +uio +uio_aec +uio_cif +uio_dmem_genirq +uio_mf624 +uio_netx +uio_pci_generic +uio_pdrv_genirq +uio_pruss +uio_sercos3 +uleds +uli526x +ulpi +umem +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-dmac +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_midi +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_uac1 +usb_f_uac1_legacy +usb_f_uac2 +usb_f_uvc +usb_wwan +usbatm +usbdux +usbduxfast +usbduxsigma +usbhid +usbip-core +usbip-host +usbip-vudc +usbkbd +usblcd +usblp +usbmisc_imx +usbmon +usbmouse +usbnet +usbserial +usbsevseg +usbtest +usbtmc +usbtouchscreen +usbtv +usbvision +usdhi6rol0 +userio +userspace-consumer +ushc +uss720 +uvcvideo +uvesafb +v4l2-dv-timings +v4l2-flash-led-class +v4l2-fwnode +v4l2-h264 +v4l2-jpeg +v4l2-mem2mem +v4l2-tpg +vc4 +vcan +vchiq +vcnl3020 +vcnl4000 +vcnl4035 +vctrl-regulator +vdpa +vdpa_sim +veml6030 +veml6070 +venus-core +venus-dec +venus-enc +ves1820 +ves1x93 +veth +vexpress-hwmon +vexpress-regulator +vf610_adc +vf610_dac +vfio +vfio-amba +vfio-pci +vfio-platform +vfio-platform-amdxgbe +vfio-platform-base +vfio-platform-calxedaxgmac +vfio_iommu_type1 +vfio_mdev +vfio_platform_bcmflexrm +vfio_virqfd +vgastate +vgem +vgg2432a4 +vhci-hcd +vhost +vhost_iotlb +vhost_net +vhost_scsi +vhost_vdpa +vhost_vsock +via-rhine +via-sdmmc +via-velocity +via686a +vicodec +video-i2c +video-mux +videobuf-core +videobuf-dma-sg +videobuf-vmalloc +videobuf2-common +videobuf2-dma-contig +videobuf2-dma-sg +videobuf2-dvb +videobuf2-memops +videobuf2-v4l2 +videobuf2-vmalloc +videocc-sc7180 +videocc-sdm845 +videodev +vim2m +vimc +viperboard +viperboard_adc +virt_wifi +virtio-gpu +virtio-rng +virtio_blk +virtio_crypto +virtio_input +virtio_net +virtio_pmem +virtio_rpmsg_bus +virtio_scsi +virtio_vdpa +virtiofs +virtual +visor +vitesse +vitesse-vsc73xx-core +vitesse-vsc73xx-platform +vitesse-vsc73xx-spi +vivid +vkms +vl53l0x-i2c +vl6180 +vmac +vme_fake +vme_tsi148 +vme_user +vme_vmivme7805 +vmk80xx +vmw_pvrdma +vmw_vsock_virtio_transport +vmw_vsock_virtio_transport_common +vmxnet3 +vp27smpx +vport-geneve +vport-gre +vport-vxlan +vpx3220 +vqmmc-ipq4019-regulator +vrf +vringh +vs6624 +vsock +vsock_diag +vsock_loopback +vsockmon +vsp1 +vsxxxaa +vt1211 +vt6655_stage +vt6656_stage +vt8231 +vt8623fb +vub300 +vx855 +vxcan +vxge +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 +w83773g +w83781d +w83791d +w83792d +w83793 +w83795 +w83l785ts +w83l786ng +wacom +wacom_i2c +wacom_serial4 +wacom_w8001 +walkera0701 +wanxl +warrior +wcd934x +wcn36xx +wcnss_ctrl +wd719x +wdat_wdt +wdt87xx_i2c +wdt_pci +wfx +whiteheat +wil6210 +wilc1000 +wilc1000-sdio +wilc1000-spi +wimax +winbond-840 +wire +wireguard +wishbone-serial +wl1251 +wl1251_sdio +wl1251_spi +wl1273-core +wl12xx +wl18xx +wlcore +wlcore_sdio +wlcore_spi +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 +wm97xx-ts +wp512 +x25 +x25_asy +x_tables +xbox_remote +xc4000 +xc5000 +xcbc +xdpe12284 +xen-blkback +xen-evtchn +xen-fbfront +xen-front-pgdir-shbuf +xen-gntalloc +xen-gntdev +xen-kbdfront +xen-netback +xen-privcmd +xen-scsiback +xen-scsifront +xen-tpmfront +xen_wdt +xenfs +xfrm4_tunnel +xfrm6_tunnel +xfrm_algo +xfrm_interface +xfrm_ipcomp +xfrm_user +xfs +xgene-dma +xgene-enet +xgene-enet-v2 +xgene-hwmon +xgene-rng +xgene_edac +xhci-histb +xhci-mtk +xhci-pci +xhci-pci-renesas +xhci-plat-hcd +xilinx-pr-decoupler +xilinx-spi +xilinx-tpg +xilinx-video +xilinx-vtc +xilinx-xadc +xilinx_can +xilinx_dma +xilinx_emac +xilinx_gmii2rgmii +xilinx_sdfec +xilinx_uartps +xilinxfb +xillybus_core +xillybus_of +xillybus_pcie +xircom_cb +xlnx_vcu +xor +xor-neon +xpad +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 +yealink +yellowfin +yenta_socket +yurex +z3fold +zaurus +zavl +zcommon +zd1201 +zd1211rw +zd1301 +zd1301_demod +zet6223 +zforce_ts +zfs +zhenhua +ziirave_wdt +zl10036 +zl10039 +zl10353 +zl6100 +zlua +znvpair +zonefs +zopt2201 +zpa2326 +zpa2326_i2c +zpa2326_spi +zr364xx +zram +zstd +zunicode +zx-tdm +zynqmp-aes-gcm +zynqmp-fpga +zynqmp_dma --- linux-azure-5.8-5.8.0.orig/debian.master/abi/5.8.0-50.56/arm64/generic.retpoline +++ linux-azure-5.8-5.8.0/debian.master/abi/5.8.0-50.56/arm64/generic.retpoline @@ -0,0 +1 @@ +# RETPOLINE NOT ENABLED --- linux-azure-5.8-5.8.0.orig/debian.master/abi/5.8.0-50.56/armhf/generic +++ linux-azure-5.8-5.8.0/debian.master/abi/5.8.0-50.56/armhf/generic @@ -0,0 +1,23816 @@ +EXPORT_SYMBOL arch/arm/crypto/chacha-neon 0x220b49ab chacha_crypt_arch +EXPORT_SYMBOL arch/arm/crypto/chacha-neon 0xdc94f829 chacha_init_arch +EXPORT_SYMBOL arch/arm/crypto/chacha-neon 0xdd8ec6bd hchacha_block_arch +EXPORT_SYMBOL arch/arm/crypto/curve25519-neon 0x3c74a43e curve25519_base_arch +EXPORT_SYMBOL arch/arm/crypto/curve25519-neon 0xc832c670 curve25519_arch +EXPORT_SYMBOL arch/arm/crypto/poly1305-arm 0x6ddf27bc poly1305_update_arch +EXPORT_SYMBOL arch/arm/crypto/poly1305-arm 0x737051cc poly1305_init_arch +EXPORT_SYMBOL arch/arm/crypto/poly1305-arm 0xf39f5240 poly1305_final_arch +EXPORT_SYMBOL arch/arm/crypto/sha256-arm 0xc38f578d crypto_sha256_arm_finup +EXPORT_SYMBOL arch/arm/crypto/sha256-arm 0xcd50fbff crypto_sha256_arm_update +EXPORT_SYMBOL arch/arm/lib/xor-neon 0x0f051164 xor_block_neon_inner +EXPORT_SYMBOL crypto/ecc 0x16e410ff vli_from_be64 +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 0x9263b417 ecc_point_mult_shamir +EXPORT_SYMBOL crypto/ecc 0x92668805 vli_cmp +EXPORT_SYMBOL crypto/ecc 0x9f6efabd vli_sub +EXPORT_SYMBOL crypto/ecc 0xa76b31a2 crypto_ecdh_shared_secret +EXPORT_SYMBOL crypto/ecc 0xd6315f31 ecc_gen_privkey +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 0x430f2fe8 crypto_nhpoly1305_update +EXPORT_SYMBOL crypto/nhpoly1305 0x4533615f crypto_nhpoly1305_setkey +EXPORT_SYMBOL crypto/nhpoly1305 0x58489c23 crypto_nhpoly1305_init +EXPORT_SYMBOL crypto/nhpoly1305 0x7bae289b crypto_nhpoly1305_update_helper +EXPORT_SYMBOL crypto/nhpoly1305 0xf72b63c9 crypto_nhpoly1305_final +EXPORT_SYMBOL crypto/nhpoly1305 0xf83bc64e crypto_nhpoly1305_final_helper +EXPORT_SYMBOL crypto/sha3_generic 0x80d46487 crypto_sha3_update +EXPORT_SYMBOL crypto/sha3_generic 0xcf59f9a9 crypto_sha3_final +EXPORT_SYMBOL crypto/sha3_generic 0xd1639cb5 crypto_sha3_init +EXPORT_SYMBOL crypto/sm3_generic 0x5a681581 crypto_sm3_update +EXPORT_SYMBOL crypto/sm3_generic 0xa8803cb9 crypto_sm3_finup +EXPORT_SYMBOL crypto/xor 0x5b6c00e6 xor_blocks +EXPORT_SYMBOL drivers/atm/suni 0x779600e4 suni_init +EXPORT_SYMBOL drivers/bcma/bcma 0x26ff35bf bcma_core_dma_translation +EXPORT_SYMBOL drivers/bcma/bcma 0x6b412b80 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/block/paride/paride 0x0c14c6b3 pi_disconnect +EXPORT_SYMBOL drivers/block/paride/paride 0x0f986cf7 pi_init +EXPORT_SYMBOL drivers/block/paride/paride 0x1050113c pi_write_regr +EXPORT_SYMBOL drivers/block/paride/paride 0x1f056862 pi_connect +EXPORT_SYMBOL drivers/block/paride/paride 0x32a38c61 pi_do_claimed +EXPORT_SYMBOL drivers/block/paride/paride 0x4267110a pi_register_driver +EXPORT_SYMBOL drivers/block/paride/paride 0x44046c1d pi_write_block +EXPORT_SYMBOL drivers/block/paride/paride 0x5de3798e pi_release +EXPORT_SYMBOL drivers/block/paride/paride 0x652ef5ee paride_unregister +EXPORT_SYMBOL drivers/block/paride/paride 0x656909bd pi_read_block +EXPORT_SYMBOL drivers/block/paride/paride 0x7085898a paride_register +EXPORT_SYMBOL drivers/block/paride/paride 0x7885e00e pi_schedule_claimed +EXPORT_SYMBOL drivers/block/paride/paride 0xb21ba07d pi_unregister_driver +EXPORT_SYMBOL drivers/block/paride/paride 0xca553abc pi_read_regr +EXPORT_SYMBOL drivers/bluetooth/btbcm 0x0766fc94 btbcm_patchram +EXPORT_SYMBOL drivers/bluetooth/btrsi 0xdbc20b1a rsi_bt_ops +EXPORT_SYMBOL drivers/bus/mhi/core/mhi 0x630298a4 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 0x230094ac ipmi_smi_watchdog_pretimeout +EXPORT_SYMBOL drivers/char/ipmi/ipmi_msghandler 0x2d96e5f2 ipmi_get_smi_info +EXPORT_SYMBOL drivers/char/ipmi/ipmi_msghandler 0x31cab048 ipmi_smi_msg_received +EXPORT_SYMBOL drivers/char/ipmi/ipmi_msghandler 0x40f2b10c ipmi_alloc_smi_msg +EXPORT_SYMBOL drivers/char/ipmi/ipmi_msghandler 0x490cc089 ipmi_add_smi +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 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 0xaca90ebd ipmi_request_supply_msgs +EXPORT_SYMBOL drivers/char/ipmi/ipmi_msghandler 0xae71627d ipmi_create_user +EXPORT_SYMBOL drivers/char/ipmi/ipmi_msghandler 0xc61c6d9a ipmi_smi_watcher_unregister +EXPORT_SYMBOL drivers/char/ipmi/ipmi_msghandler 0xc7129440 ipmi_smi_watcher_register +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 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/ipmi/kcs_bmc 0x11dec937 kcs_bmc_handle_event +EXPORT_SYMBOL drivers/char/ipmi/kcs_bmc 0xad8271dc kcs_bmc_alloc +EXPORT_SYMBOL drivers/char/tpm/st33zp24/tpm_st33zp24 0x1ff0dd9e st33zp24_remove +EXPORT_SYMBOL drivers/char/tpm/st33zp24/tpm_st33zp24 0xb9f37b03 st33zp24_pm_suspend +EXPORT_SYMBOL drivers/char/tpm/st33zp24/tpm_st33zp24 0xd32fc859 st33zp24_pm_resume +EXPORT_SYMBOL drivers/char/tpm/st33zp24/tpm_st33zp24 0xd8bd0d97 st33zp24_probe +EXPORT_SYMBOL drivers/char/xillybus/xillybus_core 0x07c28ba8 xillybus_init_endpoint +EXPORT_SYMBOL drivers/char/xillybus/xillybus_core 0x0c0b65b8 xillybus_endpoint_remove +EXPORT_SYMBOL drivers/char/xillybus/xillybus_core 0x25978d50 xillybus_isr +EXPORT_SYMBOL drivers/char/xillybus/xillybus_core 0xa6960f63 xillybus_endpoint_discovery +EXPORT_SYMBOL drivers/crypto/atmel-i2c 0x08937066 atmel_i2c_send_receive +EXPORT_SYMBOL drivers/crypto/atmel-i2c 0x6c28f9b1 atmel_i2c_init_ecdh_cmd +EXPORT_SYMBOL drivers/crypto/atmel-i2c 0x73fa978f atmel_i2c_probe +EXPORT_SYMBOL drivers/crypto/atmel-i2c 0x78969979 atmel_i2c_enqueue +EXPORT_SYMBOL drivers/crypto/atmel-i2c 0x80a11b1d atmel_i2c_init_read_cmd +EXPORT_SYMBOL drivers/crypto/atmel-i2c 0xc71ed50c atmel_i2c_init_genkey_cmd +EXPORT_SYMBOL drivers/crypto/atmel-i2c 0xf283e995 atmel_i2c_init_random_cmd +EXPORT_SYMBOL drivers/crypto/caam/caam 0x37734e06 caam_dpaa2 +EXPORT_SYMBOL drivers/crypto/caam/caam_jr 0x1f516fd8 gen_split_key +EXPORT_SYMBOL drivers/crypto/caam/caam_jr 0x2e4c9480 caam_jr_enqueue +EXPORT_SYMBOL drivers/crypto/caam/caam_jr 0x530b0c31 caam_jr_alloc +EXPORT_SYMBOL drivers/crypto/caam/caam_jr 0xca733a77 split_key_done +EXPORT_SYMBOL drivers/crypto/caam/caam_jr 0xd06bf08d caam_jr_free +EXPORT_SYMBOL drivers/crypto/caam/caamalg_desc 0x06717761 cnstr_shdsc_aead_encap +EXPORT_SYMBOL drivers/crypto/caam/caamalg_desc 0x09c41809 cnstr_shdsc_gcm_encap +EXPORT_SYMBOL drivers/crypto/caam/caamalg_desc 0x4099709e cnstr_shdsc_aead_givencap +EXPORT_SYMBOL drivers/crypto/caam/caamalg_desc 0x46efe449 cnstr_shdsc_skcipher_decap +EXPORT_SYMBOL drivers/crypto/caam/caamalg_desc 0x4b74fe69 cnstr_shdsc_rfc4106_decap +EXPORT_SYMBOL drivers/crypto/caam/caamalg_desc 0x4ead8e70 cnstr_shdsc_aead_null_decap +EXPORT_SYMBOL drivers/crypto/caam/caamalg_desc 0x6de99a64 cnstr_shdsc_rfc4543_encap +EXPORT_SYMBOL drivers/crypto/caam/caamalg_desc 0x756131a7 cnstr_shdsc_aead_decap +EXPORT_SYMBOL drivers/crypto/caam/caamalg_desc 0x86089940 cnstr_shdsc_skcipher_encap +EXPORT_SYMBOL drivers/crypto/caam/caamalg_desc 0x893ab046 cnstr_shdsc_aead_null_encap +EXPORT_SYMBOL drivers/crypto/caam/caamalg_desc 0x8a8c929e cnstr_shdsc_xts_skcipher_encap +EXPORT_SYMBOL drivers/crypto/caam/caamalg_desc 0xa2ea5326 cnstr_shdsc_gcm_decap +EXPORT_SYMBOL drivers/crypto/caam/caamalg_desc 0xa970bc2f cnstr_shdsc_xts_skcipher_decap +EXPORT_SYMBOL drivers/crypto/caam/caamalg_desc 0xbef6ab16 cnstr_shdsc_chachapoly +EXPORT_SYMBOL drivers/crypto/caam/caamalg_desc 0xc6c7d14b cnstr_shdsc_rfc4543_decap +EXPORT_SYMBOL drivers/crypto/caam/caamalg_desc 0xe05ab546 cnstr_shdsc_rfc4106_encap +EXPORT_SYMBOL drivers/crypto/caam/caamhash_desc 0x686d05f8 cnstr_shdsc_ahash +EXPORT_SYMBOL drivers/crypto/caam/caamhash_desc 0x9dc00876 cnstr_shdsc_sk_hash +EXPORT_SYMBOL drivers/crypto/caam/error 0x2eed504a caam_ptr_sz +EXPORT_SYMBOL drivers/crypto/caam/error 0x8db6e8c5 caam_dump_sg +EXPORT_SYMBOL drivers/crypto/caam/error 0xa51f16c7 caam_little_end +EXPORT_SYMBOL drivers/crypto/caam/error 0xbd67c092 caam_imx +EXPORT_SYMBOL drivers/crypto/caam/error 0xc579b937 caam_strstatus +EXPORT_SYMBOL drivers/firewire/firewire-core 0x08404edd fw_core_add_address_handler +EXPORT_SYMBOL drivers/firewire/firewire-core 0x11b7e139 fw_fill_response +EXPORT_SYMBOL drivers/firewire/firewire-core 0x1ca86317 fw_iso_context_stop +EXPORT_SYMBOL drivers/firewire/firewire-core 0x2885fec5 fw_get_request_speed +EXPORT_SYMBOL drivers/firewire/firewire-core 0x2a34d9f7 fw_send_request +EXPORT_SYMBOL drivers/firewire/firewire-core 0x38ce9f77 fw_core_remove_address_handler +EXPORT_SYMBOL drivers/firewire/firewire-core 0x39d000ba fw_core_remove_card +EXPORT_SYMBOL drivers/firewire/firewire-core 0x3c56ef91 fw_workqueue +EXPORT_SYMBOL drivers/firewire/firewire-core 0x3df29777 fw_iso_buffer_destroy +EXPORT_SYMBOL drivers/firewire/firewire-core 0x4cf9b315 fw_iso_context_start +EXPORT_SYMBOL drivers/firewire/firewire-core 0x556601c3 fw_csr_string +EXPORT_SYMBOL drivers/firewire/firewire-core 0x59775ec1 fw_iso_context_flush_completions +EXPORT_SYMBOL drivers/firewire/firewire-core 0x67320412 fw_cancel_transaction +EXPORT_SYMBOL drivers/firewire/firewire-core 0x69f08f72 fw_core_remove_descriptor +EXPORT_SYMBOL drivers/firewire/firewire-core 0x75741b48 fw_card_initialize +EXPORT_SYMBOL drivers/firewire/firewire-core 0x86468d44 fw_rcode_string +EXPORT_SYMBOL drivers/firewire/firewire-core 0x8ec4e37e fw_core_add_descriptor +EXPORT_SYMBOL drivers/firewire/firewire-core 0x8f70036d fw_bus_type +EXPORT_SYMBOL drivers/firewire/firewire-core 0x974a2c4c fw_schedule_bus_reset +EXPORT_SYMBOL drivers/firewire/firewire-core 0x9fb6cf29 fw_iso_buffer_init +EXPORT_SYMBOL drivers/firewire/firewire-core 0xaed560cd fw_iso_context_create +EXPORT_SYMBOL drivers/firewire/firewire-core 0xaedf84ce fw_high_memory_region +EXPORT_SYMBOL drivers/firewire/firewire-core 0xc03ba1d2 fw_iso_context_queue_flush +EXPORT_SYMBOL drivers/firewire/firewire-core 0xce3576db fw_core_handle_bus_reset +EXPORT_SYMBOL drivers/firewire/firewire-core 0xd26bc0aa fw_card_add +EXPORT_SYMBOL drivers/firewire/firewire-core 0xd2baf338 fw_send_response +EXPORT_SYMBOL drivers/firewire/firewire-core 0xd83fbbee fw_iso_context_queue +EXPORT_SYMBOL drivers/firewire/firewire-core 0xd9f6640e fw_iso_context_destroy +EXPORT_SYMBOL drivers/firewire/firewire-core 0xda21debe fw_run_transaction +EXPORT_SYMBOL drivers/firewire/firewire-core 0xddb9fde0 fw_core_handle_response +EXPORT_SYMBOL drivers/firewire/firewire-core 0xe161bfb4 fw_iso_resource_manage +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 0xefa7a09c fw_device_enable_phys_dma +EXPORT_SYMBOL drivers/firewire/firewire-core 0xffa24ac4 fw_core_handle_request +EXPORT_SYMBOL drivers/firmware/imx/imx-dsp 0x72272dd8 imx_dsp_ring_doorbell +EXPORT_SYMBOL drivers/gpu/drm/drm 0x0027f528 drm_legacy_ioremap +EXPORT_SYMBOL drivers/gpu/drm/drm 0x00b53e3a drm_gem_handle_create +EXPORT_SYMBOL drivers/gpu/drm/drm 0x017937e9 drm_dev_has_vblank +EXPORT_SYMBOL drivers/gpu/drm/drm 0x01ac2d51 drm_atomic_bridge_chain_pre_enable +EXPORT_SYMBOL drivers/gpu/drm/drm 0x0213a3a8 drm_gem_shmem_print_info +EXPORT_SYMBOL drivers/gpu/drm/drm 0x0268c80d drm_legacy_ioremapfree +EXPORT_SYMBOL drivers/gpu/drm/drm 0x0304cb1e drm_connector_attach_edid_property +EXPORT_SYMBOL drivers/gpu/drm/drm 0x03111702 drm_modeset_lock_single_interruptible +EXPORT_SYMBOL drivers/gpu/drm/drm 0x03ad5b92 drm_connector_set_link_status_property +EXPORT_SYMBOL drivers/gpu/drm/drm 0x03bb144d drm_modeset_acquire_fini +EXPORT_SYMBOL drivers/gpu/drm/drm 0x03c46da3 drm_irq_install +EXPORT_SYMBOL drivers/gpu/drm/drm 0x03f3f5ec drm_panel_attach +EXPORT_SYMBOL drivers/gpu/drm/drm 0x053f3fe3 drm_gem_object_init +EXPORT_SYMBOL drivers/gpu/drm/drm 0x05e78a95 drm_panel_init +EXPORT_SYMBOL drivers/gpu/drm/drm 0x0679c224 drm_mode_validate_driver +EXPORT_SYMBOL drivers/gpu/drm/drm 0x06f6ecb7 of_drm_find_bridge +EXPORT_SYMBOL drivers/gpu/drm/drm 0x070b28aa drm_ht_remove_item +EXPORT_SYMBOL drivers/gpu/drm/drm 0x0712e21d drm_edid_get_monitor_name +EXPORT_SYMBOL drivers/gpu/drm/drm 0x0742308f drm_ioctl_permit +EXPORT_SYMBOL drivers/gpu/drm/drm 0x078b3c36 drm_client_buffer_vunmap +EXPORT_SYMBOL drivers/gpu/drm/drm 0x07f88521 drm_edid_is_valid +EXPORT_SYMBOL drivers/gpu/drm/drm 0x080b3234 drm_wait_one_vblank +EXPORT_SYMBOL drivers/gpu/drm/drm 0x08473bc9 drm_bridge_add +EXPORT_SYMBOL drivers/gpu/drm/drm 0x088c7ab5 drm_open +EXPORT_SYMBOL drivers/gpu/drm/drm 0x0963d66f drm_gem_map_attach +EXPORT_SYMBOL drivers/gpu/drm/drm 0x0a5df324 drm_plane_force_disable +EXPORT_SYMBOL drivers/gpu/drm/drm 0x0a72f765 drm_clflush_virt_range +EXPORT_SYMBOL drivers/gpu/drm/drm 0x0a7d08aa drm_bridge_chain_enable +EXPORT_SYMBOL drivers/gpu/drm/drm 0x0b92527c drm_gem_dmabuf_vunmap +EXPORT_SYMBOL drivers/gpu/drm/drm 0x0c6abb2d drm_syncobj_get_fd +EXPORT_SYMBOL drivers/gpu/drm/drm 0x0c6ee159 drm_connector_attach_encoder +EXPORT_SYMBOL drivers/gpu/drm/drm 0x0d5c8bba drm_legacy_ioremap_wc +EXPORT_SYMBOL drivers/gpu/drm/drm 0x0dee1c9a drm_match_cea_mode +EXPORT_SYMBOL drivers/gpu/drm/drm 0x0e6e56c5 drm_ioctl +EXPORT_SYMBOL drivers/gpu/drm/drm 0x0fd60df2 drm_get_connector_status_name +EXPORT_SYMBOL drivers/gpu/drm/drm 0x0fe76bf0 drm_mode_create +EXPORT_SYMBOL drivers/gpu/drm/drm 0x10474726 drm_connector_list_iter_begin +EXPORT_SYMBOL drivers/gpu/drm/drm 0x107742a9 drm_get_subpixel_order_name +EXPORT_SYMBOL drivers/gpu/drm/drm 0x10c62b61 __drm_printfn_debug +EXPORT_SYMBOL drivers/gpu/drm/drm 0x11f85df5 __drm_atomic_helper_set_config +EXPORT_SYMBOL drivers/gpu/drm/drm 0x1337342f drm_gem_vm_close +EXPORT_SYMBOL drivers/gpu/drm/drm 0x13e14103 drm_mode_equal_no_clocks_no_stereo +EXPORT_SYMBOL drivers/gpu/drm/drm 0x14685634 drm_mode_create_dvi_i_properties +EXPORT_SYMBOL drivers/gpu/drm/drm 0x14a3bd94 drm_framebuffer_plane_width +EXPORT_SYMBOL drivers/gpu/drm/drm 0x15d8aa41 __drm_printfn_seq_file +EXPORT_SYMBOL drivers/gpu/drm/drm 0x16ac2597 drm_printf +EXPORT_SYMBOL drivers/gpu/drm/drm 0x16ce8815 drm_gem_prime_import +EXPORT_SYMBOL drivers/gpu/drm/drm 0x18684ff0 drm_connector_set_vrr_capable_property +EXPORT_SYMBOL drivers/gpu/drm/drm 0x1882a911 drm_master_internal_acquire +EXPORT_SYMBOL drivers/gpu/drm/drm 0x18854ffb drm_connector_set_panel_orientation_with_quirk +EXPORT_SYMBOL drivers/gpu/drm/drm 0x18e3676c drm_add_modes_noedid +EXPORT_SYMBOL drivers/gpu/drm/drm 0x1950613b drm_crtc_vblank_on +EXPORT_SYMBOL drivers/gpu/drm/drm 0x19a3e7e6 drm_crtc_check_viewport +EXPORT_SYMBOL drivers/gpu/drm/drm 0x1a1a2e35 drm_gem_private_object_init +EXPORT_SYMBOL drivers/gpu/drm/drm 0x1a411479 drm_syncobj_free +EXPORT_SYMBOL drivers/gpu/drm/drm 0x1a913535 drm_framebuffer_plane_height +EXPORT_SYMBOL drivers/gpu/drm/drm 0x1bfdbac8 drm_gem_dumb_destroy +EXPORT_SYMBOL drivers/gpu/drm/drm 0x1d883513 drm_ioctl_kernel +EXPORT_SYMBOL drivers/gpu/drm/drm 0x1dce5be5 drm_modeset_lock +EXPORT_SYMBOL drivers/gpu/drm/drm 0x1df0fd01 drm_debugfs_remove_files +EXPORT_SYMBOL drivers/gpu/drm/drm 0x1e776b7b drm_modeset_unlock +EXPORT_SYMBOL drivers/gpu/drm/drm 0x1f5a3122 drm_gem_dmabuf_release +EXPORT_SYMBOL drivers/gpu/drm/drm 0x1f6f82bd drm_syncobj_find_fence +EXPORT_SYMBOL drivers/gpu/drm/drm 0x1feec1c7 drm_property_replace_global_blob +EXPORT_SYMBOL drivers/gpu/drm/drm 0x20434739 drm_gtf_mode +EXPORT_SYMBOL drivers/gpu/drm/drm 0x20a21c47 drm_prime_pages_to_sg +EXPORT_SYMBOL drivers/gpu/drm/drm 0x2129ccc8 drmm_kfree +EXPORT_SYMBOL drivers/gpu/drm/drm 0x2160844f drm_gem_cma_prime_import_sg_table_vmap +EXPORT_SYMBOL drivers/gpu/drm/drm 0x2183c08c drm_mm_scan_add_block +EXPORT_SYMBOL drivers/gpu/drm/drm 0x2260193d drm_client_init +EXPORT_SYMBOL drivers/gpu/drm/drm 0x22b64d9c drm_plane_create_zpos_immutable_property +EXPORT_SYMBOL drivers/gpu/drm/drm 0x23a03144 drm_read +EXPORT_SYMBOL drivers/gpu/drm/drm 0x24c569ac drm_i2c_encoder_mode_fixup +EXPORT_SYMBOL drivers/gpu/drm/drm 0x2532689b drm_mode_is_420 +EXPORT_SYMBOL drivers/gpu/drm/drm 0x25921284 drm_atomic_private_obj_fini +EXPORT_SYMBOL drivers/gpu/drm/drm 0x25daad93 __drm_mm_interval_first +EXPORT_SYMBOL drivers/gpu/drm/drm 0x26c7460c __drmm_add_action_or_reset +EXPORT_SYMBOL drivers/gpu/drm/drm 0x2754dad8 drm_mm_reserve_node +EXPORT_SYMBOL drivers/gpu/drm/drm 0x27dccdd8 drm_connector_has_possible_encoder +EXPORT_SYMBOL drivers/gpu/drm/drm 0x28af61d1 drm_gem_shmem_purge +EXPORT_SYMBOL drivers/gpu/drm/drm 0x29f078d1 drm_mode_legacy_fb_format +EXPORT_SYMBOL drivers/gpu/drm/drm 0x2a462911 drm_gem_map_detach +EXPORT_SYMBOL drivers/gpu/drm/drm 0x2a962499 drm_mm_scan_init_with_range +EXPORT_SYMBOL drivers/gpu/drm/drm 0x2be60400 drm_atomic_bridge_chain_post_disable +EXPORT_SYMBOL drivers/gpu/drm/drm 0x2ce429ed drm_event_reserve_init_locked +EXPORT_SYMBOL drivers/gpu/drm/drm 0x2d184ea2 drm_crtc_from_index +EXPORT_SYMBOL drivers/gpu/drm/drm 0x2d50570f drm_rect_calc_hscale +EXPORT_SYMBOL drivers/gpu/drm/drm 0x2db6d0d4 drm_connector_update_edid_property +EXPORT_SYMBOL drivers/gpu/drm/drm 0x2db714fa drm_gem_prime_export +EXPORT_SYMBOL drivers/gpu/drm/drm 0x2deebbce drm_atomic_get_connector_state +EXPORT_SYMBOL drivers/gpu/drm/drm 0x2e7ea31c drm_master_get +EXPORT_SYMBOL drivers/gpu/drm/drm 0x2fabe861 drm_crtc_vblank_restore +EXPORT_SYMBOL drivers/gpu/drm/drm 0x2ffdb2c5 drm_dev_unplug +EXPORT_SYMBOL drivers/gpu/drm/drm 0x301bb603 drm_panel_enable +EXPORT_SYMBOL drivers/gpu/drm/drm 0x30c765f9 drm_writeback_get_out_fence +EXPORT_SYMBOL drivers/gpu/drm/drm 0x30de7362 drm_gem_prime_handle_to_fd +EXPORT_SYMBOL drivers/gpu/drm/drm 0x31b8a5e3 __drm_set_edid_firmware_path +EXPORT_SYMBOL drivers/gpu/drm/drm 0x32b6748f drm_gem_shmem_vunmap +EXPORT_SYMBOL drivers/gpu/drm/drm 0x32fb729c drm_release_noglobal +EXPORT_SYMBOL drivers/gpu/drm/drm 0x334b5e31 drm_set_preferred_mode +EXPORT_SYMBOL drivers/gpu/drm/drm 0x3503d682 drm_mode_vrefresh +EXPORT_SYMBOL drivers/gpu/drm/drm 0x3515adb0 drm_crtc_vblank_put +EXPORT_SYMBOL drivers/gpu/drm/drm 0x35afae24 __drm_puts_seq_file +EXPORT_SYMBOL drivers/gpu/drm/drm 0x3699b9e6 drm_dev_register +EXPORT_SYMBOL drivers/gpu/drm/drm 0x37055d75 drm_crtc_vblank_helper_get_vblank_timestamp_internal +EXPORT_SYMBOL drivers/gpu/drm/drm 0x3781e5b2 drm_atomic_get_new_bridge_state +EXPORT_SYMBOL drivers/gpu/drm/drm 0x378d294c drm_mode_is_420_also +EXPORT_SYMBOL drivers/gpu/drm/drm 0x380b5fbb __drm_get_edid_firmware_path +EXPORT_SYMBOL drivers/gpu/drm/drm 0x3882989a drm_atomic_state_default_release +EXPORT_SYMBOL drivers/gpu/drm/drm 0x3905f00b drm_client_modeset_commit_locked +EXPORT_SYMBOL drivers/gpu/drm/drm 0x39093b79 drm_vma_offset_manager_init +EXPORT_SYMBOL drivers/gpu/drm/drm 0x39c986d0 drm_is_current_master +EXPORT_SYMBOL drivers/gpu/drm/drm 0x3ba17eab drm_ht_insert_item +EXPORT_SYMBOL drivers/gpu/drm/drm 0x3bcda50e drm_dev_unregister +EXPORT_SYMBOL drivers/gpu/drm/drm 0x3cfa373d drm_gem_put_pages +EXPORT_SYMBOL drivers/gpu/drm/drm 0x3d7e4236 drm_atomic_commit +EXPORT_SYMBOL drivers/gpu/drm/drm 0x3dbfb2f5 drm_crtc_arm_vblank_event +EXPORT_SYMBOL drivers/gpu/drm/drm 0x3eab7a3c drm_syncobj_replace_fence +EXPORT_SYMBOL drivers/gpu/drm/drm 0x3f6358f7 drm_property_replace_blob +EXPORT_SYMBOL drivers/gpu/drm/drm 0x3fcb41b5 drm_gem_fence_array_add_implicit +EXPORT_SYMBOL drivers/gpu/drm/drm 0x40d4585f drm_calc_timestamping_constants +EXPORT_SYMBOL drivers/gpu/drm/drm 0x4171df7c drm_gem_create_mmap_offset_size +EXPORT_SYMBOL drivers/gpu/drm/drm 0x4192eac8 drm_connector_list_iter_next +EXPORT_SYMBOL drivers/gpu/drm/drm 0x41bb0ced drm_mode_create_tv_properties +EXPORT_SYMBOL drivers/gpu/drm/drm 0x41c0e6c6 drm_atomic_set_fb_for_plane +EXPORT_SYMBOL drivers/gpu/drm/drm 0x41c6f040 drm_gem_get_pages +EXPORT_SYMBOL drivers/gpu/drm/drm 0x41cf642a drm_put_dev +EXPORT_SYMBOL drivers/gpu/drm/drm 0x41d593ce drm_atomic_get_old_connector_for_encoder +EXPORT_SYMBOL drivers/gpu/drm/drm 0x42798593 drm_panel_remove +EXPORT_SYMBOL drivers/gpu/drm/drm 0x43b7b270 drm_gem_unmap_dma_buf +EXPORT_SYMBOL drivers/gpu/drm/drm 0x45f5d158 drm_crtc_vblank_get +EXPORT_SYMBOL drivers/gpu/drm/drm 0x4610270d drm_atomic_set_mode_prop_for_crtc +EXPORT_SYMBOL drivers/gpu/drm/drm 0x46fd7492 drm_atomic_get_new_connector_for_encoder +EXPORT_SYMBOL drivers/gpu/drm/drm 0x474156b5 drm_mode_equal +EXPORT_SYMBOL drivers/gpu/drm/drm 0x47506d3c drm_connector_list_update +EXPORT_SYMBOL drivers/gpu/drm/drm 0x4794fd68 drm_property_create +EXPORT_SYMBOL drivers/gpu/drm/drm 0x47f985aa drm_edid_duplicate +EXPORT_SYMBOL drivers/gpu/drm/drm 0x482522b2 drm_mode_parse_command_line_for_connector +EXPORT_SYMBOL drivers/gpu/drm/drm 0x4834906a drm_flip_work_commit +EXPORT_SYMBOL drivers/gpu/drm/drm 0x485e25a7 drm_mode_config_cleanup +EXPORT_SYMBOL drivers/gpu/drm/drm 0x486395d0 drm_framebuffer_unregister_private +EXPORT_SYMBOL drivers/gpu/drm/drm 0x48d53bc7 drm_panel_disable +EXPORT_SYMBOL drivers/gpu/drm/drm 0x492be36b drm_state_dump +EXPORT_SYMBOL drivers/gpu/drm/drm 0x4ac880af drm_hdcp_update_content_protection +EXPORT_SYMBOL drivers/gpu/drm/drm 0x4b7ebf95 drm_mm_remove_node +EXPORT_SYMBOL drivers/gpu/drm/drm 0x4b99e280 drm_master_internal_release +EXPORT_SYMBOL drivers/gpu/drm/drm 0x4c10fb57 drm_plane_init +EXPORT_SYMBOL drivers/gpu/drm/drm 0x4c500e16 drm_display_info_set_bus_formats +EXPORT_SYMBOL drivers/gpu/drm/drm 0x4cae5dbf drm_bridge_chain_mode_fixup +EXPORT_SYMBOL drivers/gpu/drm/drm 0x4cbde267 drm_property_create_signed_range +EXPORT_SYMBOL drivers/gpu/drm/drm 0x4cf7d003 drm_modeset_unlock_all +EXPORT_SYMBOL drivers/gpu/drm/drm 0x4e05f5fb drm_syncobj_add_point +EXPORT_SYMBOL drivers/gpu/drm/drm 0x4e095f11 drm_get_format_name +EXPORT_SYMBOL drivers/gpu/drm/drm 0x4e134521 drm_panel_detach +EXPORT_SYMBOL drivers/gpu/drm/drm 0x4ebd12b5 drm_atomic_normalize_zpos +EXPORT_SYMBOL drivers/gpu/drm/drm 0x4f18a150 __drm_debug +EXPORT_SYMBOL drivers/gpu/drm/drm 0x4f9a85c2 drm_hdmi_vendor_infoframe_from_display_mode +EXPORT_SYMBOL drivers/gpu/drm/drm 0x50674de7 drm_timeout_abs_to_jiffies +EXPORT_SYMBOL drivers/gpu/drm/drm 0x50e2fbd0 drm_mode_get_tile_group +EXPORT_SYMBOL drivers/gpu/drm/drm 0x50fb5e54 drm_add_edid_modes +EXPORT_SYMBOL drivers/gpu/drm/drm 0x524019e9 drm_crtc_vblank_waitqueue +EXPORT_SYMBOL drivers/gpu/drm/drm 0x537e89a1 drm_connector_register +EXPORT_SYMBOL drivers/gpu/drm/drm 0x541043e2 drm_mode_put_tile_group +EXPORT_SYMBOL drivers/gpu/drm/drm 0x54336f36 drm_i2c_encoder_save +EXPORT_SYMBOL drivers/gpu/drm/drm 0x54541071 drm_vblank_init +EXPORT_SYMBOL drivers/gpu/drm/drm 0x54ab8eae drm_panel_unprepare +EXPORT_SYMBOL drivers/gpu/drm/drm 0x554eb7c8 drm_i2c_encoder_dpms +EXPORT_SYMBOL drivers/gpu/drm/drm 0x55a039d4 drm_atomic_set_fence_for_plane +EXPORT_SYMBOL drivers/gpu/drm/drm 0x55e78676 drm_sysfs_hotplug_event +EXPORT_SYMBOL drivers/gpu/drm/drm 0x56c6e828 drm_mode_get_hv_timing +EXPORT_SYMBOL drivers/gpu/drm/drm 0x57058fb0 drm_warn_on_modeset_not_all_locked +EXPORT_SYMBOL drivers/gpu/drm/drm 0x57698a50 drm_mm_takedown +EXPORT_SYMBOL drivers/gpu/drm/drm 0x57b6efe3 drm_ioctl_flags +EXPORT_SYMBOL drivers/gpu/drm/drm 0x57c9eb6d drm_mode_create_content_type_property +EXPORT_SYMBOL drivers/gpu/drm/drm 0x585d44a1 drm_connector_init +EXPORT_SYMBOL drivers/gpu/drm/drm 0x59056243 drm_mm_replace_node +EXPORT_SYMBOL drivers/gpu/drm/drm 0x59b5d967 drm_mode_create_scaling_mode_property +EXPORT_SYMBOL drivers/gpu/drm/drm 0x5a405b31 drm_syncobj_create +EXPORT_SYMBOL drivers/gpu/drm/drm 0x5a5eb120 drm_crtc_cleanup +EXPORT_SYMBOL drivers/gpu/drm/drm 0x5ab692d7 drm_mode_object_put +EXPORT_SYMBOL drivers/gpu/drm/drm 0x5d1be3cd drm_mode_create_tile_group +EXPORT_SYMBOL drivers/gpu/drm/drm 0x5d7446e8 drm_crtc_handle_vblank +EXPORT_SYMBOL drivers/gpu/drm/drm 0x5e7c6bdd drm_gem_prime_fd_to_handle +EXPORT_SYMBOL drivers/gpu/drm/drm 0x5f7985a5 drm_mm_scan_remove_block +EXPORT_SYMBOL drivers/gpu/drm/drm 0x604d1e75 drm_sysfs_connector_status_event +EXPORT_SYMBOL drivers/gpu/drm/drm 0x61457270 drm_crtc_vblank_helper_get_vblank_timestamp +EXPORT_SYMBOL drivers/gpu/drm/drm 0x6215b1bb drm_vma_offset_add +EXPORT_SYMBOL drivers/gpu/drm/drm 0x626901be drm_syncobj_get_handle +EXPORT_SYMBOL drivers/gpu/drm/drm 0x636d1426 drm_atomic_bridge_chain_enable +EXPORT_SYMBOL drivers/gpu/drm/drm 0x637cac19 drm_mode_set_crtcinfo +EXPORT_SYMBOL drivers/gpu/drm/drm 0x63a7b65d __drm_atomic_helper_disable_plane +EXPORT_SYMBOL drivers/gpu/drm/drm 0x653f6cab drm_connector_attach_content_protection_property +EXPORT_SYMBOL drivers/gpu/drm/drm 0x6581bfa1 drm_invalid_op +EXPORT_SYMBOL drivers/gpu/drm/drm 0x66551bc7 drm_detect_monitor_audio +EXPORT_SYMBOL drivers/gpu/drm/drm 0x66ab9a44 drm_gem_create_mmap_offset +EXPORT_SYMBOL drivers/gpu/drm/drm 0x676ad115 drm_hdmi_avi_infoframe_colorspace +EXPORT_SYMBOL drivers/gpu/drm/drm 0x68479e7a drm_atomic_get_private_obj_state +EXPORT_SYMBOL drivers/gpu/drm/drm 0x68866794 drm_writeback_signal_completion +EXPORT_SYMBOL drivers/gpu/drm/drm 0x68d9d5b2 drm_av_sync_delay +EXPORT_SYMBOL drivers/gpu/drm/drm 0x69ba84ef drm_plane_create_zpos_property +EXPORT_SYMBOL drivers/gpu/drm/drm 0x69e74b9e drm_panel_of_backlight +EXPORT_SYMBOL drivers/gpu/drm/drm 0x6b0b9550 drm_flip_work_init +EXPORT_SYMBOL drivers/gpu/drm/drm 0x6b918f72 drm_gem_objects_lookup +EXPORT_SYMBOL drivers/gpu/drm/drm 0x6e30ba8e drm_rect_rotate_inv +EXPORT_SYMBOL drivers/gpu/drm/drm 0x6e7a2628 drm_mode_create_from_cmdline_mode +EXPORT_SYMBOL drivers/gpu/drm/drm 0x6ebb22c7 drm_i2c_encoder_commit +EXPORT_SYMBOL drivers/gpu/drm/drm 0x6f8af2d8 drm_object_property_set_value +EXPORT_SYMBOL drivers/gpu/drm/drm 0x6f956bec drm_writeback_prepare_job +EXPORT_SYMBOL drivers/gpu/drm/drm 0x70a6129b drm_property_blob_put +EXPORT_SYMBOL drivers/gpu/drm/drm 0x71221d52 drm_vma_offset_manager_destroy +EXPORT_SYMBOL drivers/gpu/drm/drm 0x72d0dbf5 drm_mode_prune_invalid +EXPORT_SYMBOL drivers/gpu/drm/drm 0x735421ae drm_bridge_chain_disable +EXPORT_SYMBOL drivers/gpu/drm/drm 0x73d79bf2 drm_atomic_set_mode_for_crtc +EXPORT_SYMBOL drivers/gpu/drm/drm 0x73e15773 drm_vblank_restore +EXPORT_SYMBOL drivers/gpu/drm/drm 0x73f15ae3 drm_crtc_vblank_count +EXPORT_SYMBOL drivers/gpu/drm/drm 0x74577d89 drm_noop +EXPORT_SYMBOL drivers/gpu/drm/drm 0x7579d025 drm_gem_object_lookup +EXPORT_SYMBOL drivers/gpu/drm/drm 0x75f1f94b drm_dev_put +EXPORT_SYMBOL drivers/gpu/drm/drm 0x771aa5ef devm_drm_dev_init +EXPORT_SYMBOL drivers/gpu/drm/drm 0x77fa1089 drm_release +EXPORT_SYMBOL drivers/gpu/drm/drm 0x78c99984 drm_handle_vblank +EXPORT_SYMBOL drivers/gpu/drm/drm 0x79f36ce5 __drmm_add_action +EXPORT_SYMBOL drivers/gpu/drm/drm 0x7a37a413 drm_object_attach_property +EXPORT_SYMBOL drivers/gpu/drm/drm 0x7bf5d309 drm_connector_attach_vrr_capable_property +EXPORT_SYMBOL drivers/gpu/drm/drm 0x7bf9dc82 drm_bridge_attach +EXPORT_SYMBOL drivers/gpu/drm/drm 0x7c3389a3 drm_of_find_possible_crtcs +EXPORT_SYMBOL drivers/gpu/drm/drm 0x7c958868 drm_client_release +EXPORT_SYMBOL drivers/gpu/drm/drm 0x7d03ee5e drm_client_buffer_vmap +EXPORT_SYMBOL drivers/gpu/drm/drm 0x7e016d38 drm_flip_work_cleanup +EXPORT_SYMBOL drivers/gpu/drm/drm 0x7e4cede5 drm_clflush_pages +EXPORT_SYMBOL drivers/gpu/drm/drm 0x7ecbf655 drm_mode_create_dp_colorspace_property +EXPORT_SYMBOL drivers/gpu/drm/drm 0x7edc546f drm_mm_print +EXPORT_SYMBOL drivers/gpu/drm/drm 0x7f773e4f drm_client_rotation +EXPORT_SYMBOL drivers/gpu/drm/drm 0x7fd725b3 drm_hdmi_avi_infoframe_bars +EXPORT_SYMBOL drivers/gpu/drm/drm 0x80fe4f6d drm_gem_mmap +EXPORT_SYMBOL drivers/gpu/drm/drm 0x8108949d drm_mode_equal_no_clocks +EXPORT_SYMBOL drivers/gpu/drm/drm 0x81992424 drm_edid_header_is_valid +EXPORT_SYMBOL drivers/gpu/drm/drm 0x81ea177c drm_dev_set_unique +EXPORT_SYMBOL drivers/gpu/drm/drm 0x81f83be7 drm_poll +EXPORT_SYMBOL drivers/gpu/drm/drm 0x8345f9ee drm_irq_uninstall +EXPORT_SYMBOL drivers/gpu/drm/drm 0x835666d7 drm_driver_legacy_fb_format +EXPORT_SYMBOL drivers/gpu/drm/drm 0x836a74bd drm_encoder_cleanup +EXPORT_SYMBOL drivers/gpu/drm/drm 0x83d7b01e drmm_kmalloc +EXPORT_SYMBOL drivers/gpu/drm/drm 0x8437c56f drm_prime_sg_to_page_addr_arrays +EXPORT_SYMBOL drivers/gpu/drm/drm 0x84460339 drm_syncobj_find +EXPORT_SYMBOL drivers/gpu/drm/drm 0x848519c3 drm_gem_cma_print_info +EXPORT_SYMBOL drivers/gpu/drm/drm 0x8539fee8 drm_gem_shmem_purge_locked +EXPORT_SYMBOL drivers/gpu/drm/drm 0x8563a554 drm_ht_remove +EXPORT_SYMBOL drivers/gpu/drm/drm 0x85965f6b drm_bridge_chain_mode_set +EXPORT_SYMBOL drivers/gpu/drm/drm 0x85a6ec12 drm_probe_ddc +EXPORT_SYMBOL drivers/gpu/drm/drm 0x871ab41a drm_rect_intersect +EXPORT_SYMBOL drivers/gpu/drm/drm 0x8c4fd37c drm_mode_set_name +EXPORT_SYMBOL drivers/gpu/drm/drm 0x8cb40936 drm_client_framebuffer_create +EXPORT_SYMBOL drivers/gpu/drm/drm 0x8d4f7025 drm_connector_set_path_property +EXPORT_SYMBOL drivers/gpu/drm/drm 0x8e9d09ed drm_crtc_vblank_off +EXPORT_SYMBOL drivers/gpu/drm/drm 0x8ef6e905 drm_i2c_encoder_mode_set +EXPORT_SYMBOL drivers/gpu/drm/drm 0x8f72fcd5 drm_writeback_queue_job +EXPORT_SYMBOL drivers/gpu/drm/drm 0x91080b20 drm_property_lookup_blob +EXPORT_SYMBOL drivers/gpu/drm/drm 0x91785bc8 drm_mode_destroy +EXPORT_SYMBOL drivers/gpu/drm/drm 0x91fec1cc drm_rect_calc_vscale +EXPORT_SYMBOL drivers/gpu/drm/drm 0x9213f5c3 drm_edid_to_speaker_allocation +EXPORT_SYMBOL drivers/gpu/drm/drm 0x92bc6fd0 drm_vma_offset_remove +EXPORT_SYMBOL drivers/gpu/drm/drm 0x943617d7 drm_gem_prime_import_dev +EXPORT_SYMBOL drivers/gpu/drm/drm 0x94d4a5d3 drm_of_component_probe +EXPORT_SYMBOL drivers/gpu/drm/drm 0x954359ed of_drm_find_panel +EXPORT_SYMBOL drivers/gpu/drm/drm 0x95dbc76d drm_ht_create +EXPORT_SYMBOL drivers/gpu/drm/drm 0x96bc8950 drm_bridge_remove +EXPORT_SYMBOL drivers/gpu/drm/drm 0x96c53835 drm_hdmi_avi_infoframe_from_display_mode +EXPORT_SYMBOL drivers/gpu/drm/drm 0x96fdbaee drm_gem_dmabuf_export +EXPORT_SYMBOL drivers/gpu/drm/drm 0x982698bd drm_mode_match +EXPORT_SYMBOL drivers/gpu/drm/drm 0x985072bd drm_master_put +EXPORT_SYMBOL drivers/gpu/drm/drm 0x987da2c3 drm_event_cancel_free +EXPORT_SYMBOL drivers/gpu/drm/drm 0x990ecfbe drm_gem_map_dma_buf +EXPORT_SYMBOL drivers/gpu/drm/drm 0x995c860e drm_writeback_cleanup_job +EXPORT_SYMBOL drivers/gpu/drm/drm 0x995cefcf drm_atomic_nonblocking_commit +EXPORT_SYMBOL drivers/gpu/drm/drm 0x99bcb9e2 drm_framebuffer_init +EXPORT_SYMBOL drivers/gpu/drm/drm 0x99fd20aa drm_rect_clip_scaled +EXPORT_SYMBOL drivers/gpu/drm/drm 0x9a7d73a6 drm_crtc_vblank_reset +EXPORT_SYMBOL drivers/gpu/drm/drm 0x9b8a53f5 drm_ht_just_insert_please +EXPORT_SYMBOL drivers/gpu/drm/drm 0x9d03b9ea drm_mode_crtc_set_gamma_size +EXPORT_SYMBOL drivers/gpu/drm/drm 0x9e09c975 drm_debugfs_create_files +EXPORT_SYMBOL drivers/gpu/drm/drm 0x9e28c00a drm_mode_find_dmt +EXPORT_SYMBOL drivers/gpu/drm/drm 0x9e49263f drm_event_reserve_init +EXPORT_SYMBOL drivers/gpu/drm/drm 0xa01922b8 drm_hdmi_infoframe_set_hdr_metadata +EXPORT_SYMBOL drivers/gpu/drm/drm 0xa0713087 drm_ht_find_item +EXPORT_SYMBOL drivers/gpu/drm/drm 0xa0b54143 drm_plane_create_alpha_property +EXPORT_SYMBOL drivers/gpu/drm/drm 0xa0bdd92f drm_i2c_encoder_prepare +EXPORT_SYMBOL drivers/gpu/drm/drm 0xa23ee21e drm_atomic_state_clear +EXPORT_SYMBOL drivers/gpu/drm/drm 0xa37fca97 drm_modeset_lock_all +EXPORT_SYMBOL drivers/gpu/drm/drm 0xa3c6d70d drm_gem_shmem_put_pages +EXPORT_SYMBOL drivers/gpu/drm/drm 0xa3ccbe9c drm_gtf_mode_complex +EXPORT_SYMBOL drivers/gpu/drm/drm 0xa4ef97d8 drm_universal_plane_init +EXPORT_SYMBOL drivers/gpu/drm/drm 0xa5d0d7cc drm_gem_object_release +EXPORT_SYMBOL drivers/gpu/drm/drm 0xa6a2b415 drm_modeset_lock_all_ctx +EXPORT_SYMBOL drivers/gpu/drm/drm 0xa8ad5d01 drm_detect_hdmi_monitor +EXPORT_SYMBOL drivers/gpu/drm/drm 0xa96fb9bd drm_mode_object_get +EXPORT_SYMBOL drivers/gpu/drm/drm 0xaac39ff3 __drm_printfn_info +EXPORT_SYMBOL drivers/gpu/drm/drm 0xab03e6e6 drm_connector_set_tile_property +EXPORT_SYMBOL drivers/gpu/drm/drm 0xaba58901 drm_prime_gem_destroy +EXPORT_SYMBOL drivers/gpu/drm/drm 0xac534585 drm_modeset_acquire_init +EXPORT_SYMBOL drivers/gpu/drm/drm 0xacf8ec19 drm_mode_validate_ycbcr420 +EXPORT_SYMBOL drivers/gpu/drm/drm 0xad0f47e1 drm_crtc_accurate_vblank_count +EXPORT_SYMBOL drivers/gpu/drm/drm 0xad4e902b drm_color_ctm_s31_32_to_qm_n +EXPORT_SYMBOL drivers/gpu/drm/drm 0xae277372 __drm_crtc_commit_free +EXPORT_SYMBOL drivers/gpu/drm/drm 0xae33b6db drm_connector_attach_scaling_mode_property +EXPORT_SYMBOL drivers/gpu/drm/drm 0xaf72e762 drm_add_override_edid_modes +EXPORT_SYMBOL drivers/gpu/drm/drm 0xafa68e79 drm_connector_attach_content_type_property +EXPORT_SYMBOL drivers/gpu/drm/drm 0xb053adda drm_rect_rotate +EXPORT_SYMBOL drivers/gpu/drm/drm 0xb08993e9 drm_atomic_set_crtc_for_connector +EXPORT_SYMBOL drivers/gpu/drm/drm 0xb096f2bd drm_i2c_encoder_destroy +EXPORT_SYMBOL drivers/gpu/drm/drm 0xb09f4472 drm_gem_prime_mmap +EXPORT_SYMBOL drivers/gpu/drm/drm 0xb11123ea __devm_drm_dev_alloc +EXPORT_SYMBOL drivers/gpu/drm/drm 0xb11ac7a7 __drm_err +EXPORT_SYMBOL drivers/gpu/drm/drm 0xb131d1f0 drm_client_framebuffer_delete +EXPORT_SYMBOL drivers/gpu/drm/drm 0xb31f7de5 drm_framebuffer_remove +EXPORT_SYMBOL drivers/gpu/drm/drm 0xb369ae5d drm_dev_alloc +EXPORT_SYMBOL drivers/gpu/drm/drm 0xb3b501ac drm_dev_printk +EXPORT_SYMBOL drivers/gpu/drm/drm 0xb4032484 drm_mm_insert_node_in_range +EXPORT_SYMBOL drivers/gpu/drm/drm 0xb5519953 drm_property_create_blob +EXPORT_SYMBOL drivers/gpu/drm/drm 0xb5eec348 drm_plane_create_blend_mode_property +EXPORT_SYMBOL drivers/gpu/drm/drm 0xb6127243 drm_need_swiotlb +EXPORT_SYMBOL drivers/gpu/drm/drm 0xb6a07e98 drm_get_format_info +EXPORT_SYMBOL drivers/gpu/drm/drm 0xb73b7afd drm_client_dev_hotplug +EXPORT_SYMBOL drivers/gpu/drm/drm 0xb73f1a64 drmm_add_final_kfree +EXPORT_SYMBOL drivers/gpu/drm/drm 0xb7503fe7 drm_mode_create_tv_margin_properties +EXPORT_SYMBOL drivers/gpu/drm/drm 0xb7de1e37 drm_crtc_vblank_count_and_time +EXPORT_SYMBOL drivers/gpu/drm/drm 0xb853833f drm_mode_validate_size +EXPORT_SYMBOL drivers/gpu/drm/drm 0xb8bdb3f5 drm_puts +EXPORT_SYMBOL drivers/gpu/drm/drm 0xb8ff60d6 drm_plane_create_color_properties +EXPORT_SYMBOL drivers/gpu/drm/drm 0xb978938c drm_any_plane_has_format +EXPORT_SYMBOL drivers/gpu/drm/drm 0xb9cad492 __drm_atomic_state_free +EXPORT_SYMBOL drivers/gpu/drm/drm 0xb9f56e22 drm_format_info_block_width +EXPORT_SYMBOL drivers/gpu/drm/drm 0xbaa0ea99 drm_atomic_check_only +EXPORT_SYMBOL drivers/gpu/drm/drm 0xbb0616f1 drm_mode_plane_set_obj_prop +EXPORT_SYMBOL drivers/gpu/drm/drm 0xbb33ee7b drm_default_rgb_quant_range +EXPORT_SYMBOL drivers/gpu/drm/drm 0xbbb45bfe drm_gem_shmem_vmap +EXPORT_SYMBOL drivers/gpu/drm/drm 0xbc13d822 drm_vma_node_revoke +EXPORT_SYMBOL drivers/gpu/drm/drm 0xbc6be89d drm_atomic_add_affected_planes +EXPORT_SYMBOL drivers/gpu/drm/drm 0xbc8ac325 drm_crtc_enable_color_mgmt +EXPORT_SYMBOL drivers/gpu/drm/drm 0xbcdb96f1 drm_encoder_init +EXPORT_SYMBOL drivers/gpu/drm/drm 0xbd0b98cd drm_gem_handle_delete +EXPORT_SYMBOL drivers/gpu/drm/drm 0xbe84f19d drm_connector_cleanup +EXPORT_SYMBOL drivers/gpu/drm/drm 0xbf1e3088 drm_gem_shmem_madvise +EXPORT_SYMBOL drivers/gpu/drm/drm 0xc009653a drm_crtc_set_max_vblank_count +EXPORT_SYMBOL drivers/gpu/drm/drm 0xc08d90d4 drm_i2c_encoder_restore +EXPORT_SYMBOL drivers/gpu/drm/drm 0xc1d769af drm_modeset_backoff +EXPORT_SYMBOL drivers/gpu/drm/drm 0xc2c36138 drm_mode_is_420_only +EXPORT_SYMBOL drivers/gpu/drm/drm 0xc324efb9 drm_edid_to_sad +EXPORT_SYMBOL drivers/gpu/drm/drm 0xc34683e3 drm_mode_object_find +EXPORT_SYMBOL drivers/gpu/drm/drm 0xc34b1529 drm_gem_vm_open +EXPORT_SYMBOL drivers/gpu/drm/drm 0xc373d805 drm_atomic_state_init +EXPORT_SYMBOL drivers/gpu/drm/drm 0xc4aa48be drm_print_regset32 +EXPORT_SYMBOL drivers/gpu/drm/drm 0xc4dc99e5 drm_vma_node_is_allowed +EXPORT_SYMBOL drivers/gpu/drm/drm 0xc54776b4 drm_mode_duplicate +EXPORT_SYMBOL drivers/gpu/drm/drm 0xc5992401 __drm_puts_coredump +EXPORT_SYMBOL drivers/gpu/drm/drm 0xc5ce9af3 drm_clflush_sg +EXPORT_SYMBOL drivers/gpu/drm/drm 0xc6c6ee40 drm_gem_shmem_pin +EXPORT_SYMBOL drivers/gpu/drm/drm 0xc7dfd0be drm_connector_attach_max_bpc_property +EXPORT_SYMBOL drivers/gpu/drm/drm 0xc7f0f027 drm_format_info_min_pitch +EXPORT_SYMBOL drivers/gpu/drm/drm 0xc89ef525 drm_dev_dbg +EXPORT_SYMBOL drivers/gpu/drm/drm 0xc9569c23 drm_hdmi_avi_infoframe_quant_range +EXPORT_SYMBOL drivers/gpu/drm/drm 0xc9c40315 drm_plane_create_rotation_property +EXPORT_SYMBOL drivers/gpu/drm/drm 0xca3883ec drm_modeset_drop_locks +EXPORT_SYMBOL drivers/gpu/drm/drm 0xcb2340b8 drm_rect_debug_print +EXPORT_SYMBOL drivers/gpu/drm/drm 0xcb66b928 drm_mode_config_reset +EXPORT_SYMBOL drivers/gpu/drm/drm 0xcbe109e8 drm_writeback_connector_init +EXPORT_SYMBOL drivers/gpu/drm/drm 0xcc02e1a8 drmm_mode_config_init +EXPORT_SYMBOL drivers/gpu/drm/drm 0xcd1fe803 drm_gem_mmap_obj +EXPORT_SYMBOL drivers/gpu/drm/drm 0xcdda1e5a drm_hdmi_avi_infoframe_content_type +EXPORT_SYMBOL drivers/gpu/drm/drm 0xce633206 drm_atomic_add_encoder_bridges +EXPORT_SYMBOL drivers/gpu/drm/drm 0xcf11a549 drm_flip_work_allocate_task +EXPORT_SYMBOL drivers/gpu/drm/drm 0xd0de2b8f drm_atomic_get_plane_state +EXPORT_SYMBOL drivers/gpu/drm/drm 0xd13f9985 drm_edid_block_valid +EXPORT_SYMBOL drivers/gpu/drm/drm 0xd16ad2e8 drm_property_create_enum +EXPORT_SYMBOL drivers/gpu/drm/drm 0xd1fc5f14 drm_flip_work_queue +EXPORT_SYMBOL drivers/gpu/drm/drm 0xd28f0aaa drm_client_register +EXPORT_SYMBOL drivers/gpu/drm/drm 0xd2cd1a71 drm_plane_from_index +EXPORT_SYMBOL drivers/gpu/drm/drm 0xd4132cc6 drm_gem_fence_array_add +EXPORT_SYMBOL drivers/gpu/drm/drm 0xd4aee418 drm_get_edid +EXPORT_SYMBOL drivers/gpu/drm/drm 0xd52e55b6 drm_atomic_bridge_chain_disable +EXPORT_SYMBOL drivers/gpu/drm/drm 0xd59726b1 drm_client_modeset_probe +EXPORT_SYMBOL drivers/gpu/drm/drm 0xd59b934c drm_connector_init_with_ddc +EXPORT_SYMBOL drivers/gpu/drm/drm 0xd5a27129 drm_of_crtc_port_mask +EXPORT_SYMBOL drivers/gpu/drm/drm 0xd680a377 drm_gem_object_free +EXPORT_SYMBOL drivers/gpu/drm/drm 0xd6acda2f drm_mode_create_hdmi_colorspace_property +EXPORT_SYMBOL drivers/gpu/drm/drm 0xd82790ab drm_framebuffer_cleanup +EXPORT_SYMBOL drivers/gpu/drm/drm 0xd96b425a __drm_printfn_coredump +EXPORT_SYMBOL drivers/gpu/drm/drm 0xdaa58082 drm_object_property_get_value +EXPORT_SYMBOL drivers/gpu/drm/drm 0xdaa59a58 drm_mode_create_suggested_offset_properties +EXPORT_SYMBOL drivers/gpu/drm/drm 0xdb714d0f drm_mode_create_aspect_ratio_property +EXPORT_SYMBOL drivers/gpu/drm/drm 0xdc833fbb drm_flip_work_queue_task +EXPORT_SYMBOL drivers/gpu/drm/drm 0xdd32c1e6 drm_atomic_set_crtc_for_plane +EXPORT_SYMBOL drivers/gpu/drm/drm 0xdeedb23e drm_bridge_chain_post_disable +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 0xdfc3ad71 drm_cma_gem_create_object_default_funcs +EXPORT_SYMBOL drivers/gpu/drm/drm 0xe0d5d8ec drm_vma_node_allow +EXPORT_SYMBOL drivers/gpu/drm/drm 0xe15161c8 drm_client_modeset_dpms +EXPORT_SYMBOL drivers/gpu/drm/drm 0xe1940921 drm_gem_object_put +EXPORT_SYMBOL drivers/gpu/drm/drm 0xe1eb2215 drm_mode_set_config_internal +EXPORT_SYMBOL drivers/gpu/drm/drm 0xe245cf87 drm_panel_get_modes +EXPORT_SYMBOL drivers/gpu/drm/drm 0xe25f1314 drm_panel_prepare +EXPORT_SYMBOL drivers/gpu/drm/drm 0xe2894b8d drm_crtc_init_with_planes +EXPORT_SYMBOL drivers/gpu/drm/drm 0xe339b9ec drm_framebuffer_lookup +EXPORT_SYMBOL drivers/gpu/drm/drm 0xe347d8d1 drm_connector_set_panel_orientation +EXPORT_SYMBOL drivers/gpu/drm/drm 0xe37ec4d2 drm_dev_get +EXPORT_SYMBOL drivers/gpu/drm/drm 0xe3e13501 drm_property_blob_get +EXPORT_SYMBOL drivers/gpu/drm/drm 0xe4b36829 drm_crtc_send_vblank_event +EXPORT_SYMBOL drivers/gpu/drm/drm 0xe4de7e1a drm_bridge_chain_pre_enable +EXPORT_SYMBOL drivers/gpu/drm/drm 0xe4ebb46f drm_get_edid_switcheroo +EXPORT_SYMBOL drivers/gpu/drm/drm 0xe554e510 drm_property_create_bool +EXPORT_SYMBOL drivers/gpu/drm/drm 0xe59ea6dc drm_gem_shmem_unpin +EXPORT_SYMBOL drivers/gpu/drm/drm 0xe6bac8d3 drm_atomic_state_alloc +EXPORT_SYMBOL drivers/gpu/drm/drm 0xe817eb01 __drm_printfn_err +EXPORT_SYMBOL drivers/gpu/drm/drm 0xe8a034df drm_dev_exit +EXPORT_SYMBOL drivers/gpu/drm/drm 0xe8a66ad4 drm_vma_offset_lookup_locked +EXPORT_SYMBOL drivers/gpu/drm/drm 0xe95beb7d drm_property_destroy +EXPORT_SYMBOL drivers/gpu/drm/drm 0xe9644752 drm_atomic_get_new_private_obj_state +EXPORT_SYMBOL drivers/gpu/drm/drm 0xeb4883cb drm_gem_dmabuf_mmap +EXPORT_SYMBOL drivers/gpu/drm/drm 0xeb61d425 drm_connector_attach_tv_margin_properties +EXPORT_SYMBOL drivers/gpu/drm/drm 0xeb9e7d43 drm_connector_unregister +EXPORT_SYMBOL drivers/gpu/drm/drm 0xec12af74 __drm_dbg +EXPORT_SYMBOL drivers/gpu/drm/drm 0xec49790f drm_gem_dmabuf_vmap +EXPORT_SYMBOL drivers/gpu/drm/drm 0xec7d1f51 drm_gem_object_put_unlocked +EXPORT_SYMBOL drivers/gpu/drm/drm 0xec99a1e3 drm_gem_dma_resv_wait +EXPORT_SYMBOL drivers/gpu/drm/drm 0xec9cc93d drm_send_event +EXPORT_SYMBOL drivers/gpu/drm/drm 0xecd6e7bc drm_i2c_encoder_init +EXPORT_SYMBOL drivers/gpu/drm/drm 0xed278e1a drm_atomic_get_old_bridge_state +EXPORT_SYMBOL drivers/gpu/drm/drm 0xee4ca00e drm_atomic_get_old_private_obj_state +EXPORT_SYMBOL drivers/gpu/drm/drm 0xeef14d8c drm_format_info_block_height +EXPORT_SYMBOL drivers/gpu/drm/drm 0xef518df9 drm_atomic_bridge_chain_check +EXPORT_SYMBOL drivers/gpu/drm/drm 0xf0517d7a drm_mm_init +EXPORT_SYMBOL drivers/gpu/drm/drm 0xf0e41751 drm_cvt_mode +EXPORT_SYMBOL drivers/gpu/drm/drm 0xf1421d13 drm_mode_sort +EXPORT_SYMBOL drivers/gpu/drm/drm 0xf1b6d6eb drm_plane_cleanup +EXPORT_SYMBOL drivers/gpu/drm/drm 0xf2527e20 drm_atomic_private_obj_init +EXPORT_SYMBOL drivers/gpu/drm/drm 0xf28f300e drm_property_create_range +EXPORT_SYMBOL drivers/gpu/drm/drm 0xf37e89b3 drm_atomic_get_bridge_state +EXPORT_SYMBOL drivers/gpu/drm/drm 0xf3f02818 drm_bridge_chain_mode_valid +EXPORT_SYMBOL drivers/gpu/drm/drm 0xf406e46a drm_get_connector_type_name +EXPORT_SYMBOL drivers/gpu/drm/drm 0xf4d59a55 drm_property_create_bitmask +EXPORT_SYMBOL drivers/gpu/drm/drm 0xf4e49d5c drm_connector_list_iter_end +EXPORT_SYMBOL drivers/gpu/drm/drm 0xf5c32b0f drm_atomic_get_crtc_state +EXPORT_SYMBOL drivers/gpu/drm/drm 0xf826786c drm_format_info +EXPORT_SYMBOL drivers/gpu/drm/drm 0xf905cfab drm_i2c_encoder_detect +EXPORT_SYMBOL drivers/gpu/drm/drm 0xf9090e99 drm_gem_unlock_reservations +EXPORT_SYMBOL drivers/gpu/drm/drm 0xf91dc30c drm_atomic_state_default_clear +EXPORT_SYMBOL drivers/gpu/drm/drm 0xf97730bf drm_panel_add +EXPORT_SYMBOL drivers/gpu/drm/drm 0xf9bfd26e drm_gem_free_mmap_offset +EXPORT_SYMBOL drivers/gpu/drm/drm 0xfa60d341 drm_dev_init +EXPORT_SYMBOL drivers/gpu/drm/drm 0xfaa478c7 drm_property_create_object +EXPORT_SYMBOL drivers/gpu/drm/drm 0xfafbc425 drm_dev_enter +EXPORT_SYMBOL drivers/gpu/drm/drm 0xfbadaaa3 drm_property_add_enum +EXPORT_SYMBOL drivers/gpu/drm/drm 0xfbc1dfb6 drm_gem_lock_reservations +EXPORT_SYMBOL drivers/gpu/drm/drm 0xfbc5b995 drm_send_event_locked +EXPORT_SYMBOL drivers/gpu/drm/drm 0xfc06ebaf drm_color_lut_check +EXPORT_SYMBOL drivers/gpu/drm/drm 0xfc399c62 drm_mode_probed_add +EXPORT_SYMBOL drivers/gpu/drm/drm 0xfd53216b drm_gem_shmem_get_pages +EXPORT_SYMBOL drivers/gpu/drm/drm 0xfe21601f drm_modeset_lock_init +EXPORT_SYMBOL drivers/gpu/drm/drm 0xfea3f9c9 drm_atomic_add_affected_connectors +EXPORT_SYMBOL drivers/gpu/drm/drm 0xfed795af drm_mode_debug_printmodeline +EXPORT_SYMBOL drivers/gpu/drm/drm 0xff0bec1b drm_client_modeset_commit +EXPORT_SYMBOL drivers/gpu/drm/drm 0xff8de91d drm_print_bits +EXPORT_SYMBOL drivers/gpu/drm/drm 0xff90a292 drm_mode_copy +EXPORT_SYMBOL drivers/gpu/drm/drm 0xffa59280 drm_crtc_wait_one_vblank +EXPORT_SYMBOL drivers/gpu/drm/drm 0xfff1f1d7 drm_gem_shmem_create_with_handle +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x018f73e1 drm_atomic_helper_page_flip +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x01a01a8a drm_fb_swab16 +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x026d65b0 drm_plane_enable_fb_damage_clips +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x028f03ed drm_fb_xrgb8888_to_rgb565_dstclip +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x033e392d __drm_atomic_helper_private_obj_duplicate_state +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x04832139 drm_dp_mst_allocate_vcpi +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x0531d35d drm_kms_helper_poll_init +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x0539f453 drm_fb_helper_unregister_fbi +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x068ae36d drm_mode_config_helper_resume +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x06c49551 drm_dp_dsc_sink_line_buf_depth +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x0844aaf8 drm_atomic_helper_commit_tail_rpm +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x08eee1ea drm_kms_helper_hotplug_event +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x09197640 drm_scdc_read +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x0a89bbef drm_atomic_helper_connector_destroy_state +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x0bfb20fd drm_dp_atomic_find_vcpi_slots +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x11081675 drm_simple_display_pipe_init +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x139cd4cd drm_dp_mst_reset_vcpi_slots +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x14223a12 drm_dp_cec_unregister_connector +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x16bfce29 drm_simple_encoder_init +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x175c5c6e drm_atomic_helper_set_config +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x17d303e4 drm_crtc_helper_set_mode +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x1965a975 drm_dp_send_power_updown_phy +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x1a08e226 drm_dp_dual_mode_detect +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x1a1bde49 drm_gem_fb_destroy +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x1b94ad80 __drm_atomic_helper_connector_reset +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x1b9f917c drm_atomic_helper_commit_duplicated_state +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x1bfaa86e drm_helper_probe_detect +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x1c5d7162 drm_scdc_write +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x1cae246f drm_crtc_helper_set_config +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x1d994eaa drm_atomic_helper_bridge_destroy_state +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x1da59866 __drm_atomic_helper_plane_duplicate_state +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x1e122017 drm_kms_helper_poll_disable +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x2035f03b drm_atomic_helper_legacy_gamma_set +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x21c7eb47 drm_dp_dpcd_read +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x22807925 drm_dp_mst_put_port_malloc +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x22b61f92 drm_fb_helper_setcmap +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x22d83f5a drm_gem_fb_simple_display_pipe_prepare_fb +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x241920f0 drm_atomic_helper_setup_commit +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x2529875c drm_fb_helper_sys_write +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x26815dbc drm_dp_link_rate_to_bw_code +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x287ff69a drm_fb_helper_fill_info +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x28a510be __drm_atomic_helper_crtc_duplicate_state +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x29dbd64b __drm_atomic_helper_crtc_reset +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x2af2edf0 drm_atomic_helper_commit_modeset_disables +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x2c258c43 drm_atomic_helper_commit +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x2c25d0b3 drm_dp_dual_mode_write +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x2ca07898 drm_atomic_helper_check_plane_state +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x2cd77311 drm_dp_mst_topology_mgr_suspend +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x2d2fae87 drm_dp_mst_add_affected_dsc_crtcs +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x2e7c998f drm_fb_helper_output_poll_changed +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x2f68e028 drm_dp_aux_register +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x30129764 drm_atomic_helper_bridge_reset +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x30835d53 drm_self_refresh_helper_alter_state +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x30d03a4f drm_atomic_helper_commit_planes +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x31b644c9 __drm_atomic_helper_bridge_reset +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x33200b97 drm_dp_dual_mode_max_tmds_clock +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x3339a86d drm_helper_resume_force_mode +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x3357d9ae drm_gem_fb_create_handle +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x33f42e11 __drm_atomic_helper_crtc_destroy_state +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x34440bb2 drm_dp_mst_atomic_enable_dsc +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x372e5fb2 drm_helper_probe_single_connector_modes +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x37b2667d drm_dp_mst_connector_early_unregister +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x3834cbd8 drm_dp_mst_topology_mgr_resume +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x3a6b7696 drm_dp_vsc_sdp_log +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x3a8063f3 drm_dp_dsc_sink_supported_input_bpcs +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x3b925f05 drm_atomic_helper_commit_planes_on_crtc +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x3c19519c drm_atomic_helper_check +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x3f30de54 drm_fb_helper_set_suspend_unlocked +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x3f6f56c1 drm_fb_helper_sys_copyarea +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x3f81d6a0 drm_helper_connector_dpms +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x3fdb1acd drm_helper_force_disable_all +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x40a98892 drm_dp_mst_topology_mgr_set_mst +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x43040eee drm_atomic_helper_page_flip_target +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x477a9786 drm_atomic_helper_suspend +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x48780091 drm_scdc_set_scrambling +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x48b62a57 drm_dp_link_train_channel_eq_delay +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x48e77ed5 drm_atomic_helper_crtc_reset +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x49a30e14 drm_dp_dual_mode_set_tmds_output +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x4ae6b2f2 drm_fb_helper_set_par +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x4c835c27 drm_atomic_helper_wait_for_vblanks +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x4d8804cc drm_atomic_helper_resume +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x4e0ae895 drm_dp_cec_set_edid +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x4f32da01 drm_fb_helper_sys_fillrect +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x50bb1996 drm_dp_cec_unset_edid +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x510eeec5 drm_dp_start_crc +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x5277980b drm_helper_encoder_in_use +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x5407ae9e drm_dp_get_dual_mode_type_name +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x556ff374 drm_lspcon_set_mode +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x557d897c drm_atomic_helper_async_commit +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x563edf57 drm_atomic_helper_disable_planes_on_crtc +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x582f248e drm_dp_get_adjust_request_pre_emphasis +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x58d8fcaa drm_dsc_pps_payload_pack +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x59dc4ec8 drm_fb_memcpy +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x5a4734d1 drm_kms_helper_is_poll_worker +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x5ac54100 __drm_atomic_helper_crtc_state_reset +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x5d8b74ad drm_fb_helper_alloc_fbi +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x5e198cc8 drm_helper_mode_fill_fb_struct +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x5f0668e4 drm_atomic_helper_check_modeset +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x5f99e988 drm_atomic_helper_disable_plane +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x6055a103 drm_atomic_helper_update_legacy_modeset_state +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x648d953b drm_dsc_dp_pps_header_init +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x6615069e drm_dp_dsc_sink_max_slice_count +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x67c7f1b8 drm_dp_mst_connector_late_register +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x6b3dcc9e drm_atomic_helper_commit_hw_done +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x6b5c2b06 drm_atomic_helper_damage_iter_next +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x6b98c640 drm_dp_downstream_debug +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x6c595b1d drm_panel_bridge_add_typed +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x6c8244d1 drm_simple_display_pipe_attach_bridge +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x6c8cf3c7 drm_fb_helper_debug_enter +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x6d21ad9a drm_helper_disable_unused_functions +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x6d778987 __drm_atomic_helper_connector_duplicate_state +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x6d9ebf22 drm_dp_mst_detect_port +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x6e3debc7 drm_dp_aux_init +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x6fab0ed7 __drm_atomic_helper_connector_destroy_state +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x70ffe435 drm_fb_helper_initial_config +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x72356de3 drm_atomic_helper_crtc_destroy_state +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x725c4bdf __drm_atomic_helper_plane_state_reset +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x73011db0 drm_dp_bw_code_to_link_rate +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x7391e2cb drm_fb_helper_debug_leave +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x73ac448b devm_drm_panel_bridge_add +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x74d05837 drm_atomic_helper_check_plane_damage +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x75e87a27 drm_atomic_helper_duplicate_state +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x76e86174 drm_fb_memcpy_dstclip +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x7a58f087 drm_dp_mst_atomic_check +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x7a6901c3 drm_atomic_helper_fake_vblank +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x7d4e4980 drm_helper_crtc_in_use +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x7dc1a1ce drm_atomic_helper_plane_duplicate_state +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x7ddcaa03 drm_atomic_helper_check_planes +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x7e4f9fa7 drm_atomic_helper_swap_state +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x7f638657 drm_crtc_init +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x81f04ac7 drm_fb_helper_sys_imageblit +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x85ea20df drm_dp_atomic_release_vcpi_slots +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x867aa769 drm_fb_helper_hotplug_event +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x871ae23a drm_atomic_helper_dirtyfb +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x894b1f57 drm_dp_get_adjust_request_post_cursor +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x89ddbc9b drm_kms_helper_poll_enable +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x8a24980d drm_primary_helper_funcs +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x8c631e89 drm_fb_helper_fini +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x8ca2d9e4 drm_dp_calc_pbn_mode +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x8cb44d2e drm_dp_mst_dsc_aux_for_port +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x8d543b23 drm_dp_update_payload_part1 +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x8d701329 drm_dp_clock_recovery_ok +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x8e51b814 drm_kms_helper_poll_fini +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x903fad08 drm_atomic_helper_cleanup_planes +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x9169d76a drm_fb_helper_blank +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x92340566 drm_fb_xrgb8888_to_rgb565 +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x92d6455a drm_fb_xrgb8888_to_gray8 +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x93ee4cfb drm_atomic_helper_bridge_duplicate_state +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x9495bb38 drm_fb_helper_check_var +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x95273a91 drm_dp_cec_register_connector +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x9656e297 drm_dp_aux_unregister +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x96bcbe8a __drm_atomic_helper_bridge_duplicate_state +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x97ad573a drm_atomic_helper_wait_for_fences +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x982efcf5 drm_dp_mst_deallocate_vcpi +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x99614fb2 drm_dp_set_phy_test_pattern +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x9a0ec2b3 drm_atomic_helper_damage_merged +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x9aafe0ec drm_scdc_get_scrambling_status +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xa151784c drm_helper_hpd_irq_event +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xa1fefe6a drm_dp_psr_setup_time +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xa2f5c65b drm_dp_get_edid_quirks +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xa33c51dc drm_helper_move_panel_connectors_to_head +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xa6ff9496 drm_dp_link_train_clock_recovery_delay +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xa79c1d97 drm_self_refresh_helper_cleanup +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xa959d798 drm_fb_helper_restore_fbdev_mode_unlocked +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xa9725b0c __drm_atomic_helper_plane_reset +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xa9ab67c1 drm_self_refresh_helper_update_avg_times +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xab0e7cd4 drm_fb_helper_modinit +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xabbf80a7 drm_dp_get_vc_payload_bw +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xacc35bec __drm_atomic_helper_connector_state_reset +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xad133408 drm_atomic_helper_bridge_propagate_bus_fmt +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xae2e2fd6 devm_drm_panel_bridge_add_typed +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xae52f984 drm_dp_remote_aux_init +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xaf0c47a1 drm_atomic_helper_connector_tv_reset +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xb048c850 drm_atomic_helper_crtc_duplicate_state +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xb06040c9 drm_dp_mst_topology_state_funcs +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xb0855bd4 drm_lspcon_get_mode +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xb1186b8b drm_panel_bridge_connector +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xb166aec2 drm_atomic_helper_disable_all +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xb18814bd drm_atomic_helper_async_check +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xb3497f7f drm_atomic_helper_commit_cleanup_done +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xb47a4183 drm_fb_helper_cfb_copyarea +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xb6204dd1 drm_fb_helper_ioctl +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xb7c162a4 drm_dp_mst_hpd_irq +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xb8f36f2c drm_dp_get_phy_test_pattern +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xb9ab3f03 drm_dp_dpcd_read_link_status +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xbae22f8c drm_dp_find_vcpi_slots +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xbaf136f1 drm_atomic_helper_wait_for_dependencies +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xbd42683d drm_atomic_helper_wait_for_flip_done +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xbde86a93 drm_dp_update_payload_part2 +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xbf3deeb7 drm_atomic_helper_plane_reset +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xc0331329 drm_dp_mst_topology_mgr_destroy +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xc1bd6fc1 drm_dp_downstream_id +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xc30c404c drm_fb_helper_pan_display +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xc3577c11 drm_fbdev_generic_setup +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xc3ba8804 drm_atomic_get_mst_topology_state +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xc427cd43 drm_fb_helper_cfb_fillrect +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xc4519dc3 drm_dp_mst_dump_topology +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xc471c536 drm_atomic_helper_plane_destroy_state +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xc5496d19 drm_mode_config_helper_suspend +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xc5c99a79 drm_dp_get_adjust_request_voltage +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xc5e1713a drm_fb_helper_deferred_io +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xcee443a8 drm_fb_helper_sys_read +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xcfb7e1fb drm_dp_mst_get_vcpi_slots +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xd2c31856 drm_fb_helper_prepare +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xd3462b40 drm_fb_helper_init +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xd45f0a96 drm_dp_check_act_status +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xd5ee5e8b drm_fb_xrgb8888_to_rgb888_dstclip +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xd6b48b21 drm_atomic_helper_connector_duplicate_state +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xd759d666 drm_dp_cec_irq +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xd7761d76 drm_dp_mst_get_port_malloc +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xd7b4ea93 drm_self_refresh_helper_init +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xd80fb95c drm_dp_mst_get_edid +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xd8e6788a drm_atomic_helper_commit_tail +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xdd75dfcc drm_atomic_helper_shutdown +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xdf9dea7a drm_scdc_set_high_tmds_clock_ratio +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xe02abfbb drm_dp_downstream_max_bpc +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xe60fc08e drm_dp_dual_mode_get_tmds_output +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xe6a25b15 drm_atomic_helper_connector_reset +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xedcf81ce drm_dp_channel_eq_ok +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xef3cd725 drm_fb_helper_set_suspend +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xf04efb9d drm_panel_bridge_remove +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xf05cb33f drm_dp_dual_mode_read +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xf14b2068 __drm_atomic_helper_plane_destroy_state +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xf15f316f drm_primary_helper_destroy +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xf2329e89 drm_dp_downstream_max_clock +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xf40ed789 drm_atomic_helper_prepare_planes +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xf52354ef drm_panel_bridge_add +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xf539f93d drm_atomic_helper_update_plane +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xf81a3805 drm_dp_mst_topology_mgr_init +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xf8333949 drm_atomic_helper_damage_iter_init +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xfa09fc57 drm_dp_dpcd_write +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xfa1a243f drm_atomic_helper_commit_modeset_enables +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xfb711d03 drm_dp_read_desc +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xfc139f70 drm_dp_stop_crc +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xfdefd0e8 drm_fb_helper_lastclose +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xfe12bcb9 drm_dsc_compute_rc_parameters +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xff6549e8 drm_fb_helper_cfb_imageblit +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xffeb5605 drm_dp_send_real_edid_checksum +EXPORT_SYMBOL drivers/gpu/drm/drm_mipi_dbi 0x140f152d mipi_dbi_pipe_disable +EXPORT_SYMBOL drivers/gpu/drm/drm_mipi_dbi 0x17ada838 mipi_dbi_enable_flush +EXPORT_SYMBOL drivers/gpu/drm/drm_mipi_dbi 0x3345ae82 mipi_dbi_poweron_reset +EXPORT_SYMBOL drivers/gpu/drm/drm_mipi_dbi 0x46134cd6 mipi_dbi_dev_init +EXPORT_SYMBOL drivers/gpu/drm/drm_mipi_dbi 0x46b1fe96 mipi_dbi_dev_init_with_formats +EXPORT_SYMBOL drivers/gpu/drm/drm_mipi_dbi 0x5a7f8c1c mipi_dbi_command_buf +EXPORT_SYMBOL drivers/gpu/drm/drm_mipi_dbi 0x64b4509e mipi_dbi_spi_transfer +EXPORT_SYMBOL drivers/gpu/drm/drm_mipi_dbi 0x96715cdb mipi_dbi_buf_copy +EXPORT_SYMBOL drivers/gpu/drm/drm_mipi_dbi 0x9b109c0a mipi_dbi_command_read +EXPORT_SYMBOL drivers/gpu/drm/drm_mipi_dbi 0xb7b926bb mipi_dbi_display_is_on +EXPORT_SYMBOL drivers/gpu/drm/drm_mipi_dbi 0xc77c7210 mipi_dbi_spi_cmd_max_speed +EXPORT_SYMBOL drivers/gpu/drm/drm_mipi_dbi 0xccbd4a23 mipi_dbi_hw_reset +EXPORT_SYMBOL drivers/gpu/drm/drm_mipi_dbi 0xe6056b98 mipi_dbi_poweron_conditional_reset +EXPORT_SYMBOL drivers/gpu/drm/drm_mipi_dbi 0xecf8b4e3 mipi_dbi_command_stackbuf +EXPORT_SYMBOL drivers/gpu/drm/drm_mipi_dbi 0xf1fe11fd mipi_dbi_pipe_update +EXPORT_SYMBOL drivers/gpu/drm/drm_mipi_dbi 0xf49185c1 mipi_dbi_debugfs_init +EXPORT_SYMBOL drivers/gpu/drm/drm_mipi_dbi 0xfd3627b5 mipi_dbi_spi_init +EXPORT_SYMBOL drivers/gpu/drm/drm_ttm_helper 0x1da93f66 drm_gem_ttm_mmap +EXPORT_SYMBOL drivers/gpu/drm/drm_ttm_helper 0x5617620d drm_gem_ttm_print_info +EXPORT_SYMBOL drivers/gpu/drm/drm_vram_helper 0x11efd4a2 drm_vram_helper_release_mm +EXPORT_SYMBOL drivers/gpu/drm/drm_vram_helper 0x12193fa4 drm_gem_vram_pin +EXPORT_SYMBOL drivers/gpu/drm/drm_vram_helper 0x19b08b3b drm_gem_vram_put +EXPORT_SYMBOL drivers/gpu/drm/drm_vram_helper 0x2c78439a drm_gem_vram_kunmap +EXPORT_SYMBOL drivers/gpu/drm/drm_vram_helper 0x411c78c5 drm_gem_vram_driver_dumb_mmap_offset +EXPORT_SYMBOL drivers/gpu/drm/drm_vram_helper 0x425bc3ec drm_gem_vram_offset +EXPORT_SYMBOL drivers/gpu/drm/drm_vram_helper 0x4657542d drm_gem_vram_simple_display_pipe_prepare_fb +EXPORT_SYMBOL drivers/gpu/drm/drm_vram_helper 0x49bee11a drm_gem_vram_vmap +EXPORT_SYMBOL drivers/gpu/drm/drm_vram_helper 0x6197d377 drm_gem_vram_plane_helper_prepare_fb +EXPORT_SYMBOL drivers/gpu/drm/drm_vram_helper 0x87ea4e74 drm_gem_vram_simple_display_pipe_cleanup_fb +EXPORT_SYMBOL drivers/gpu/drm/drm_vram_helper 0x97b95f6d drm_vram_helper_mode_valid +EXPORT_SYMBOL drivers/gpu/drm/drm_vram_helper 0x9978a3ec drm_gem_vram_plane_helper_cleanup_fb +EXPORT_SYMBOL drivers/gpu/drm/drm_vram_helper 0x9dcfcd7b drm_gem_vram_kmap +EXPORT_SYMBOL drivers/gpu/drm/drm_vram_helper 0xb2632d4f drm_gem_vram_fill_create_dumb +EXPORT_SYMBOL drivers/gpu/drm/drm_vram_helper 0xb4320b51 drm_gem_vram_driver_dumb_create +EXPORT_SYMBOL drivers/gpu/drm/drm_vram_helper 0xbacf3aba drm_gem_vram_mmap_offset +EXPORT_SYMBOL drivers/gpu/drm/drm_vram_helper 0xd4ba2e8f drm_gem_vram_create +EXPORT_SYMBOL drivers/gpu/drm/drm_vram_helper 0xe0b65f0f drm_vram_mm_debugfs_init +EXPORT_SYMBOL drivers/gpu/drm/drm_vram_helper 0xe6471032 drm_vram_helper_alloc_mm +EXPORT_SYMBOL drivers/gpu/drm/drm_vram_helper 0xe9773389 drm_gem_vram_vunmap +EXPORT_SYMBOL drivers/gpu/drm/drm_vram_helper 0xfa09afac drm_gem_vram_unpin +EXPORT_SYMBOL drivers/gpu/drm/rockchip/rockchipdrm 0x7d1a7935 rockchip_drm_wait_vact_end +EXPORT_SYMBOL drivers/gpu/drm/scheduler/gpu-sched 0x0437c7f5 drm_sched_entity_init +EXPORT_SYMBOL drivers/gpu/drm/scheduler/gpu-sched 0x11a5926b drm_sched_job_cleanup +EXPORT_SYMBOL drivers/gpu/drm/scheduler/gpu-sched 0x189fec85 drm_sched_start +EXPORT_SYMBOL drivers/gpu/drm/scheduler/gpu-sched 0x350958cf drm_sched_entity_destroy +EXPORT_SYMBOL drivers/gpu/drm/scheduler/gpu-sched 0x523bdef1 drm_sched_increase_karma +EXPORT_SYMBOL drivers/gpu/drm/scheduler/gpu-sched 0x5252ff7d drm_sched_dependency_optimized +EXPORT_SYMBOL drivers/gpu/drm/scheduler/gpu-sched 0x58cefac6 drm_sched_resubmit_jobs +EXPORT_SYMBOL drivers/gpu/drm/scheduler/gpu-sched 0x667aac91 drm_sched_stop +EXPORT_SYMBOL drivers/gpu/drm/scheduler/gpu-sched 0x6895301e drm_sched_fini +EXPORT_SYMBOL drivers/gpu/drm/scheduler/gpu-sched 0x7ece294a drm_sched_entity_flush +EXPORT_SYMBOL drivers/gpu/drm/scheduler/gpu-sched 0x8ffe1a63 drm_sched_pick_best +EXPORT_SYMBOL drivers/gpu/drm/scheduler/gpu-sched 0x90a7cbe0 drm_sched_resume_timeout +EXPORT_SYMBOL drivers/gpu/drm/scheduler/gpu-sched 0x90b7c40a drm_sched_entity_modify_sched +EXPORT_SYMBOL drivers/gpu/drm/scheduler/gpu-sched 0xa839d1d8 drm_sched_fault +EXPORT_SYMBOL drivers/gpu/drm/scheduler/gpu-sched 0xbe5d31ec drm_sched_init +EXPORT_SYMBOL drivers/gpu/drm/scheduler/gpu-sched 0xc761eece drm_sched_job_init +EXPORT_SYMBOL drivers/gpu/drm/scheduler/gpu-sched 0xce33a956 drm_sched_entity_set_priority +EXPORT_SYMBOL drivers/gpu/drm/scheduler/gpu-sched 0xcec84af9 drm_sched_entity_push_job +EXPORT_SYMBOL drivers/gpu/drm/scheduler/gpu-sched 0xcfb7735f drm_sched_entity_fini +EXPORT_SYMBOL drivers/gpu/drm/scheduler/gpu-sched 0xdb7889f5 drm_sched_suspend_timeout +EXPORT_SYMBOL drivers/gpu/drm/scheduler/gpu-sched 0xf8016cdc to_drm_sched_fence +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x00b3408a ttm_bo_device_init +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x0138450f ttm_pool_unpopulate +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x01fd965c ttm_bo_unmap_virtual +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x04de8a46 ttm_bo_mem_space +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x05365393 ttm_tt_fini +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x0e64d27d ttm_bo_move_ttm +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x13111b37 ttm_bo_move_to_lru_tail +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x132b05be ttm_round_pot +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x185f761e ttm_bo_swapout +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x18d2602c ttm_bo_mem_compat +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x1cd6ca47 ttm_bo_kunmap +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x1efa96b9 ttm_bo_init_reserved +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x27b66ac0 ttm_tt_bind +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x2e02fc00 ttm_bo_mem_put +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x3438ffd5 ttm_page_alloc_debugfs +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x3bb6b7f6 ttm_bo_manager_func +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x3c99ba93 ttm_dma_tt_fini +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x405f18df ttm_eu_backoff_reservation +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x41267e6c ttm_bo_dma_acc_size +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x44cc56fd ttm_bo_vm_close +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x4e1bd177 ttm_bo_acc_size +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x4ee242d2 ttm_bo_eviction_valuable +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x52eb8238 ttm_mem_global_alloc +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x5775fac3 ttm_bo_glob +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x6087168f ttm_bo_mmap +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x64226d92 ttm_bo_vm_reserve +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x6af908bd ttm_bo_device_release +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x6edfcf28 ttm_get_kernel_zone_memory_size +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x75a3be0f ttm_bo_vm_fault_reserved +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x7c7dec85 ttm_bo_clean_mm +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x7f2ae58e ttm_unmap_and_unpopulate_pages +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x912f12ba ttm_bo_validate +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x94537c90 ttm_bo_init_mm +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x94e241ff ttm_tt_set_placement_caching +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x966214dd ttm_bo_wait +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x972ab4b0 ttm_eu_reserve_buffers +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x9b3730d6 ttm_bo_put +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x9c7a0daa ttm_dma_tt_init +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xa2596662 ttm_bo_vm_fault +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xa2d8487b ttm_bo_move_accel_cleanup +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xa623bab3 ttm_bo_kmap +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xaa48391a ttm_bo_create +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xac77a248 ttm_bo_swapout_all +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xb219e8a1 ttm_check_under_lowerlimit +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xbf5901cc ttm_bo_init +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xbf8dcf1f ttm_bo_vm_access +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xc1ceb1c9 ttm_bo_pipeline_move +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xcda4d8ec ttm_bo_mmap_obj +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xd4e10086 ttm_bo_vm_open +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xd70b8571 ttm_bo_lock_delayed_workqueue +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xdb6624ce ttm_bo_move_memcpy +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xdbc6c85d ttm_bo_evict_mm +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xe120e733 ttm_bo_bulk_move_lru_tail +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xe4ec4f76 ttm_tt_init +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xeb887f3f ttm_sg_tt_init +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xef4b9f16 ttm_populate_and_map_pages +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xef860179 ttm_eu_fence_buffer_objects +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xf116814b ttm_bo_unlock_delayed_workqueue +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xf2fdc92f ttm_mem_glob +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xf8aaab81 ttm_io_prot +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xff97b619 ttm_mem_global_free +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xfffddc2f ttm_pool_populate +EXPORT_SYMBOL drivers/gpu/host1x/host1x 0x046b5df6 host1x_channel_put +EXPORT_SYMBOL drivers/gpu/host1x/host1x 0x094571d3 host1x_syncpt_get +EXPORT_SYMBOL drivers/gpu/host1x/host1x 0x0bc0d09e host1x_syncpt_read_min +EXPORT_SYMBOL drivers/gpu/host1x/host1x 0x0d847b12 host1x_client_unregister +EXPORT_SYMBOL drivers/gpu/host1x/host1x 0x1a86c9d7 host1x_syncpt_incr +EXPORT_SYMBOL drivers/gpu/host1x/host1x 0x1f35781e host1x_job_pin +EXPORT_SYMBOL drivers/gpu/host1x/host1x 0x363d3fe6 host1x_syncpt_read_max +EXPORT_SYMBOL drivers/gpu/host1x/host1x 0x37a849da host1x_syncpt_free +EXPORT_SYMBOL drivers/gpu/host1x/host1x 0x387f5e18 tegra_mipi_request +EXPORT_SYMBOL drivers/gpu/host1x/host1x 0x40131a66 host1x_device_init +EXPORT_SYMBOL drivers/gpu/host1x/host1x 0x4109bde7 host1x_job_alloc +EXPORT_SYMBOL drivers/gpu/host1x/host1x 0x43799a4e tegra_mipi_calibrate +EXPORT_SYMBOL drivers/gpu/host1x/host1x 0x51de13ce host1x_syncpt_base_id +EXPORT_SYMBOL drivers/gpu/host1x/host1x 0x628ae224 host1x_job_put +EXPORT_SYMBOL drivers/gpu/host1x/host1x 0x68942467 host1x_job_get +EXPORT_SYMBOL drivers/gpu/host1x/host1x 0x6b287a74 host1x_job_unpin +EXPORT_SYMBOL drivers/gpu/host1x/host1x 0x7e0f49da host1x_driver_register_full +EXPORT_SYMBOL drivers/gpu/host1x/host1x 0x8f37c6d7 host1x_client_resume +EXPORT_SYMBOL drivers/gpu/host1x/host1x 0x9451a33e tegra_mipi_free +EXPORT_SYMBOL drivers/gpu/host1x/host1x 0x95e01bec host1x_driver_unregister +EXPORT_SYMBOL drivers/gpu/host1x/host1x 0xa733ff60 tegra_mipi_disable +EXPORT_SYMBOL drivers/gpu/host1x/host1x 0xa7d5bedf host1x_device_exit +EXPORT_SYMBOL drivers/gpu/host1x/host1x 0xb56ca6d3 host1x_channel_request +EXPORT_SYMBOL drivers/gpu/host1x/host1x 0xba2c5966 host1x_syncpt_request +EXPORT_SYMBOL drivers/gpu/host1x/host1x 0xbc0e3f17 host1x_syncpt_incr_max +EXPORT_SYMBOL drivers/gpu/host1x/host1x 0xca8b78dc host1x_syncpt_get_base +EXPORT_SYMBOL drivers/gpu/host1x/host1x 0xcafa37d5 host1x_job_add_gather +EXPORT_SYMBOL drivers/gpu/host1x/host1x 0xd204359e host1x_client_register +EXPORT_SYMBOL drivers/gpu/host1x/host1x 0xd8e72b3d host1x_syncpt_id +EXPORT_SYMBOL drivers/gpu/host1x/host1x 0xde76f436 host1x_syncpt_wait +EXPORT_SYMBOL drivers/gpu/host1x/host1x 0xe17a72dd host1x_get_dma_mask +EXPORT_SYMBOL drivers/gpu/host1x/host1x 0xed2fbbef host1x_job_submit +EXPORT_SYMBOL drivers/gpu/host1x/host1x 0xef1e9911 host1x_syncpt_read +EXPORT_SYMBOL drivers/gpu/host1x/host1x 0xf5deda55 host1x_channel_get +EXPORT_SYMBOL drivers/gpu/host1x/host1x 0xf6e81de5 host1x_client_suspend +EXPORT_SYMBOL drivers/gpu/host1x/host1x 0xf8a79b19 tegra_mipi_enable +EXPORT_SYMBOL drivers/hid/hid 0x7457ac1c hid_bus_type +EXPORT_SYMBOL drivers/hwmon/hwmon-vid 0x2f9e7f8e vid_which_vrm +EXPORT_SYMBOL drivers/hwmon/hwmon-vid 0x446615bd vid_from_reg +EXPORT_SYMBOL drivers/hwmon/sch56xx-common 0x01568393 sch56xx_read_virtual_reg +EXPORT_SYMBOL drivers/hwmon/sch56xx-common 0x34257f35 sch56xx_watchdog_unregister +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/hwmon/sch56xx-common 0xb52ef65c sch56xx_watchdog_register +EXPORT_SYMBOL drivers/i2c/algos/i2c-algo-bit 0x159c744e i2c_bit_add_numbered_bus +EXPORT_SYMBOL drivers/i2c/algos/i2c-algo-bit 0x327b4395 i2c_bit_add_bus +EXPORT_SYMBOL drivers/i2c/algos/i2c-algo-bit 0x8c841960 i2c_bit_algo +EXPORT_SYMBOL drivers/i2c/algos/i2c-algo-pca 0x115337f0 i2c_pca_add_numbered_bus +EXPORT_SYMBOL drivers/i2c/algos/i2c-algo-pca 0x4f3b766c i2c_pca_add_bus +EXPORT_SYMBOL drivers/i2c/busses/i2c-amd756 0xf8bb4585 amd756_smbus +EXPORT_SYMBOL drivers/iio/accel/bma400_core 0xb50c70da bma400_probe +EXPORT_SYMBOL drivers/iio/accel/bma400_core 0xdec6f594 bma400_regmap_config +EXPORT_SYMBOL drivers/iio/accel/bma400_core 0xec290dd3 bma400_remove +EXPORT_SYMBOL drivers/iio/accel/kxsd9 0x00f7dc22 kxsd9_dev_pm_ops +EXPORT_SYMBOL drivers/iio/accel/kxsd9 0x849044a5 kxsd9_common_probe +EXPORT_SYMBOL drivers/iio/accel/kxsd9 0xb0c93b40 kxsd9_common_remove +EXPORT_SYMBOL drivers/iio/accel/mma9551_core 0x339e30e3 mma9551_app_reset +EXPORT_SYMBOL drivers/iio/accel/mma9551_core 0x3485a9b5 mma9551_read_status_word +EXPORT_SYMBOL drivers/iio/accel/mma9551_core 0x3a805f19 mma9551_write_config_word +EXPORT_SYMBOL drivers/iio/accel/mma9551_core 0x3fd46e6d mma9551_gpio_config +EXPORT_SYMBOL drivers/iio/accel/mma9551_core 0x41ef446c mma9551_read_accel_scale +EXPORT_SYMBOL drivers/iio/accel/mma9551_core 0x51af7c4f mma9551_read_accel_chan +EXPORT_SYMBOL drivers/iio/accel/mma9551_core 0x557ff40b mma9551_read_status_words +EXPORT_SYMBOL drivers/iio/accel/mma9551_core 0x7c32b3e7 mma9551_read_config_byte +EXPORT_SYMBOL drivers/iio/accel/mma9551_core 0x80914762 mma9551_read_status_byte +EXPORT_SYMBOL drivers/iio/accel/mma9551_core 0x8b14c55f mma9551_set_power_state +EXPORT_SYMBOL drivers/iio/accel/mma9551_core 0x8b64ab1d mma9551_write_config_byte +EXPORT_SYMBOL drivers/iio/accel/mma9551_core 0xa9ab7dee mma9551_read_config_word +EXPORT_SYMBOL drivers/iio/accel/mma9551_core 0xab4fdf93 mma9551_update_config_bits +EXPORT_SYMBOL drivers/iio/accel/mma9551_core 0xbca8fc17 mma9551_set_device_state +EXPORT_SYMBOL drivers/iio/accel/mma9551_core 0xbcd7fe96 mma9551_sleep +EXPORT_SYMBOL drivers/iio/accel/mma9551_core 0xceb102e6 mma9551_write_config_words +EXPORT_SYMBOL drivers/iio/accel/mma9551_core 0xe6071f88 mma9551_read_version +EXPORT_SYMBOL drivers/iio/accel/mma9551_core 0xfa652608 mma9551_read_config_words +EXPORT_SYMBOL drivers/iio/accel/st_accel 0x18384de7 st_accel_common_remove +EXPORT_SYMBOL drivers/iio/accel/st_accel 0x89fecc67 st_accel_common_probe +EXPORT_SYMBOL drivers/iio/accel/st_accel 0xb21774e6 st_accel_get_settings +EXPORT_SYMBOL drivers/iio/adc/qcom-vadc-common 0x70e6eca1 qcom_vadc_decimation_from_dt +EXPORT_SYMBOL drivers/iio/adc/qcom-vadc-common 0xcae36995 qcom_vadc_scale +EXPORT_SYMBOL drivers/iio/adc/qcom-vadc-common 0xf253ae31 qcom_adc5_hw_scale +EXPORT_SYMBOL drivers/iio/buffer/industrialio-buffer-dmaengine 0xe238d31e iio_dmaengine_buffer_alloc +EXPORT_SYMBOL drivers/iio/buffer/industrialio-triggered-buffer 0x02c7ef55 iio_triggered_buffer_cleanup +EXPORT_SYMBOL drivers/iio/buffer/industrialio-triggered-buffer 0xe43475ab iio_triggered_buffer_setup +EXPORT_SYMBOL drivers/iio/buffer/kfifo_buf 0x1ae354f4 iio_kfifo_free +EXPORT_SYMBOL drivers/iio/buffer/kfifo_buf 0x854ab511 iio_kfifo_allocate +EXPORT_SYMBOL drivers/iio/buffer/kfifo_buf 0xfa55095c devm_iio_kfifo_allocate +EXPORT_SYMBOL drivers/iio/chemical/bme680_core 0xde19751a bme680_regmap_config +EXPORT_SYMBOL drivers/iio/common/hid-sensors/hid-sensor-iio-common 0x044bd2d3 hid_sensor_batch_mode_supported +EXPORT_SYMBOL drivers/iio/common/hid-sensors/hid-sensor-iio-common 0x2cfe3965 hid_sensor_read_samp_freq_value +EXPORT_SYMBOL drivers/iio/common/hid-sensors/hid-sensor-iio-common 0x2f905d7b hid_sensor_get_report_latency +EXPORT_SYMBOL drivers/iio/common/hid-sensors/hid-sensor-iio-common 0x4b1c1ce7 hid_sensor_convert_timestamp +EXPORT_SYMBOL drivers/iio/common/hid-sensors/hid-sensor-iio-common 0x58b76527 hid_sensor_parse_common_attributes +EXPORT_SYMBOL drivers/iio/common/hid-sensors/hid-sensor-iio-common 0x66e983ef hid_sensor_read_raw_hyst_value +EXPORT_SYMBOL drivers/iio/common/hid-sensors/hid-sensor-iio-common 0x74eeac2e hid_sensor_write_raw_hyst_value +EXPORT_SYMBOL drivers/iio/common/hid-sensors/hid-sensor-iio-common 0x7f7621ec hid_sensor_format_scale +EXPORT_SYMBOL drivers/iio/common/hid-sensors/hid-sensor-iio-common 0xa049093b hid_sensor_read_poll_value +EXPORT_SYMBOL drivers/iio/common/hid-sensors/hid-sensor-iio-common 0xd104acee hid_sensor_set_report_latency +EXPORT_SYMBOL drivers/iio/common/hid-sensors/hid-sensor-iio-common 0xf95e0a94 hid_sensor_write_samp_freq_value +EXPORT_SYMBOL drivers/iio/common/hid-sensors/hid-sensor-trigger 0x2941acff hid_sensor_remove_trigger +EXPORT_SYMBOL drivers/iio/common/hid-sensors/hid-sensor-trigger 0x48b04344 hid_sensor_pm_ops +EXPORT_SYMBOL drivers/iio/common/hid-sensors/hid-sensor-trigger 0x70b87376 hid_sensor_power_state +EXPORT_SYMBOL drivers/iio/common/hid-sensors/hid-sensor-trigger 0x78070db8 hid_sensor_setup_trigger +EXPORT_SYMBOL drivers/iio/common/ms_sensors/ms_sensors_i2c 0x045688dd ms_sensors_read_prom_word +EXPORT_SYMBOL drivers/iio/common/ms_sensors/ms_sensors_i2c 0x07b6e66b ms_sensors_write_heater +EXPORT_SYMBOL drivers/iio/common/ms_sensors/ms_sensors_i2c 0x2d2f5cd5 ms_sensors_reset +EXPORT_SYMBOL drivers/iio/common/ms_sensors/ms_sensors_i2c 0x34ebbde4 ms_sensors_read_serial +EXPORT_SYMBOL drivers/iio/common/ms_sensors/ms_sensors_i2c 0x40bb7f0a ms_sensors_ht_read_temperature +EXPORT_SYMBOL drivers/iio/common/ms_sensors/ms_sensors_i2c 0x42b6a050 ms_sensors_convert_and_read +EXPORT_SYMBOL drivers/iio/common/ms_sensors/ms_sensors_i2c 0x433d979b ms_sensors_write_resolution +EXPORT_SYMBOL drivers/iio/common/ms_sensors/ms_sensors_i2c 0x56e123c6 ms_sensors_show_battery_low +EXPORT_SYMBOL drivers/iio/common/ms_sensors/ms_sensors_i2c 0x628e7911 ms_sensors_ht_read_humidity +EXPORT_SYMBOL drivers/iio/common/ms_sensors/ms_sensors_i2c 0x6f202276 ms_sensors_show_heater +EXPORT_SYMBOL drivers/iio/common/ms_sensors/ms_sensors_i2c 0xdb6aee12 ms_sensors_read_temp_and_pressure +EXPORT_SYMBOL drivers/iio/common/ms_sensors/ms_sensors_i2c 0xdbf06b1a ms_sensors_tp_read_prom +EXPORT_SYMBOL drivers/iio/common/ssp_sensors/sensorhub 0x4596e7f5 ssp_enable_sensor +EXPORT_SYMBOL drivers/iio/common/ssp_sensors/sensorhub 0x5bb6fdd3 ssp_disable_sensor +EXPORT_SYMBOL drivers/iio/common/ssp_sensors/sensorhub 0x6a6d6f72 ssp_register_consumer +EXPORT_SYMBOL drivers/iio/common/ssp_sensors/sensorhub 0xd53e731e ssp_change_delay +EXPORT_SYMBOL drivers/iio/common/ssp_sensors/sensorhub 0xfc4e9492 ssp_get_sensor_delay +EXPORT_SYMBOL drivers/iio/common/ssp_sensors/ssp_iio 0x039a0018 ssp_common_buffer_postdisable +EXPORT_SYMBOL drivers/iio/common/ssp_sensors/ssp_iio 0xfb7c2f4d ssp_common_process_data +EXPORT_SYMBOL drivers/iio/common/ssp_sensors/ssp_iio 0xffae3aae ssp_common_buffer_postenable +EXPORT_SYMBOL drivers/iio/common/st_sensors/st_sensors 0x03bda39d st_sensors_set_fullscale_by_gain +EXPORT_SYMBOL drivers/iio/common/st_sensors/st_sensors 0x074d7047 st_sensors_trigger_handler +EXPORT_SYMBOL drivers/iio/common/st_sensors/st_sensors 0x0d825b56 st_sensors_sysfs_scale_avail +EXPORT_SYMBOL drivers/iio/common/st_sensors/st_sensors 0x2e8aff9c st_sensors_allocate_trigger +EXPORT_SYMBOL drivers/iio/common/st_sensors/st_sensors 0x40e5e809 st_sensors_set_enable +EXPORT_SYMBOL drivers/iio/common/st_sensors/st_sensors 0x4975d4d4 st_sensors_read_info_raw +EXPORT_SYMBOL drivers/iio/common/st_sensors/st_sensors 0x4f1f353c st_sensors_power_enable +EXPORT_SYMBOL drivers/iio/common/st_sensors/st_sensors 0x5431b086 st_sensors_set_odr +EXPORT_SYMBOL drivers/iio/common/st_sensors/st_sensors 0x7c6481cb st_sensors_set_axis_enable +EXPORT_SYMBOL drivers/iio/common/st_sensors/st_sensors 0x86bf978a st_sensors_dev_name_probe +EXPORT_SYMBOL drivers/iio/common/st_sensors/st_sensors 0x8b107425 st_sensors_power_disable +EXPORT_SYMBOL drivers/iio/common/st_sensors/st_sensors 0x8d21e029 st_sensors_init_sensor +EXPORT_SYMBOL drivers/iio/common/st_sensors/st_sensors 0xa9234fd0 st_sensors_verify_id +EXPORT_SYMBOL drivers/iio/common/st_sensors/st_sensors 0xb781375d st_sensors_debugfs_reg_access +EXPORT_SYMBOL drivers/iio/common/st_sensors/st_sensors 0xbc9e489c st_sensors_sysfs_sampling_frequency_avail +EXPORT_SYMBOL drivers/iio/common/st_sensors/st_sensors 0xbefcacc6 st_sensors_deallocate_trigger +EXPORT_SYMBOL drivers/iio/common/st_sensors/st_sensors 0xde8ab3f2 st_sensors_get_settings_index +EXPORT_SYMBOL drivers/iio/common/st_sensors/st_sensors 0xe05c807e st_sensors_set_dataready_irq +EXPORT_SYMBOL drivers/iio/common/st_sensors/st_sensors 0xe0cc0f40 st_sensors_validate_device +EXPORT_SYMBOL drivers/iio/common/st_sensors/st_sensors_i2c 0x23361f02 st_sensors_i2c_configure +EXPORT_SYMBOL drivers/iio/common/st_sensors/st_sensors_spi 0xc654b8e3 st_sensors_spi_configure +EXPORT_SYMBOL drivers/iio/gyro/mpu3050 0x5a550aa0 mpu3050_dev_pm_ops +EXPORT_SYMBOL drivers/iio/gyro/mpu3050 0x865a5d1d mpu3050_common_probe +EXPORT_SYMBOL drivers/iio/gyro/mpu3050 0xfb0c887c mpu3050_common_remove +EXPORT_SYMBOL drivers/iio/gyro/st_gyro 0x6faa4c17 st_gyro_get_settings +EXPORT_SYMBOL drivers/iio/gyro/st_gyro 0x90a95830 st_gyro_common_remove +EXPORT_SYMBOL drivers/iio/gyro/st_gyro 0x9287e93e st_gyro_common_probe +EXPORT_SYMBOL drivers/iio/humidity/hts221 0x520f90d8 hts221_probe +EXPORT_SYMBOL drivers/iio/humidity/hts221 0x7fab4aa5 hts221_pm_ops +EXPORT_SYMBOL drivers/iio/imu/adis_lib 0x0ac61d24 adis_debugfs_reg_access +EXPORT_SYMBOL drivers/iio/imu/adis_lib 0x660a779d adis_enable_irq +EXPORT_SYMBOL drivers/iio/imu/bmi160/bmi160_core 0x83228002 bmi160_regmap_config +EXPORT_SYMBOL drivers/iio/imu/bmi160/bmi160_core 0xca19cfae bmi160_enable_irq +EXPORT_SYMBOL drivers/iio/imu/fxos8700_core 0xcce864e7 fxos8700_regmap_config +EXPORT_SYMBOL drivers/iio/imu/st_lsm6dsx/st_lsm6dsx 0x5fc8a9aa st_lsm6dsx_pm_ops +EXPORT_SYMBOL drivers/iio/imu/st_lsm6dsx/st_lsm6dsx 0x82876fe5 st_lsm6dsx_probe +EXPORT_SYMBOL drivers/iio/industrialio 0x0b7be4a1 iio_read_const_attr +EXPORT_SYMBOL drivers/iio/industrialio 0x13bc3cf9 iio_trigger_poll_chained +EXPORT_SYMBOL drivers/iio/industrialio 0x1455c708 iio_trigger_validate_own_device +EXPORT_SYMBOL drivers/iio/industrialio 0x17b3a1a0 __iio_device_register +EXPORT_SYMBOL drivers/iio/industrialio 0x24093c29 iio_read_mount_matrix +EXPORT_SYMBOL drivers/iio/industrialio 0x295ca0a8 iio_bus_type +EXPORT_SYMBOL drivers/iio/industrialio 0x2d6bcdcb iio_trigger_generic_data_rdy_poll +EXPORT_SYMBOL drivers/iio/industrialio 0x2e3b2589 iio_buffer_init +EXPORT_SYMBOL drivers/iio/industrialio 0x3540dc5c iio_device_unregister +EXPORT_SYMBOL drivers/iio/industrialio 0x3aeedd0a iio_trigger_using_own +EXPORT_SYMBOL drivers/iio/industrialio 0x47f80ffc iio_trigger_poll +EXPORT_SYMBOL drivers/iio/industrialio 0x4971ea9a iio_trigger_unregister +EXPORT_SYMBOL drivers/iio/industrialio 0x4db9e760 iio_get_time_res +EXPORT_SYMBOL drivers/iio/industrialio 0x4dde8f9f iio_device_alloc +EXPORT_SYMBOL drivers/iio/industrialio 0x59c0c4c3 __iio_trigger_register +EXPORT_SYMBOL drivers/iio/industrialio 0x615ba3e1 iio_trigger_alloc +EXPORT_SYMBOL drivers/iio/industrialio 0x97969ed3 iio_triggered_buffer_postenable +EXPORT_SYMBOL drivers/iio/industrialio 0xa8ed1564 iio_trigger_free +EXPORT_SYMBOL drivers/iio/industrialio 0xb51e47dc iio_trigger_notify_done +EXPORT_SYMBOL drivers/iio/industrialio 0xb9b2c1e3 iio_push_event +EXPORT_SYMBOL drivers/iio/industrialio 0xc1dc6fe2 iio_device_set_clock +EXPORT_SYMBOL drivers/iio/industrialio 0xd6ef40a2 iio_device_free +EXPORT_SYMBOL drivers/iio/industrialio 0xdf76bbeb iio_pollfunc_store_time +EXPORT_SYMBOL drivers/iio/industrialio 0xe12a21ba iio_triggered_buffer_predisable +EXPORT_SYMBOL drivers/iio/industrialio 0xe555227f iio_trigger_set_immutable +EXPORT_SYMBOL drivers/iio/industrialio 0xef76e413 iio_get_time_ns +EXPORT_SYMBOL drivers/iio/industrialio-configfs 0x10b1e323 iio_configfs_subsys +EXPORT_SYMBOL drivers/iio/industrialio-sw-device 0x1cc52a09 iio_sw_device_destroy +EXPORT_SYMBOL drivers/iio/industrialio-sw-device 0x21649966 iio_unregister_sw_device_type +EXPORT_SYMBOL drivers/iio/industrialio-sw-device 0x88d68863 iio_register_sw_device_type +EXPORT_SYMBOL drivers/iio/industrialio-sw-device 0xe27aef31 iio_sw_device_create +EXPORT_SYMBOL drivers/iio/industrialio-sw-trigger 0x0429fc0c iio_unregister_sw_trigger_type +EXPORT_SYMBOL drivers/iio/industrialio-sw-trigger 0x7ac57e73 iio_sw_trigger_create +EXPORT_SYMBOL drivers/iio/industrialio-sw-trigger 0xd5dfbd93 iio_sw_trigger_destroy +EXPORT_SYMBOL drivers/iio/industrialio-sw-trigger 0xd66728bf iio_register_sw_trigger_type +EXPORT_SYMBOL drivers/iio/industrialio-triggered-event 0x52c600ca iio_triggered_event_cleanup +EXPORT_SYMBOL drivers/iio/industrialio-triggered-event 0x6ac4fdeb iio_triggered_event_setup +EXPORT_SYMBOL drivers/iio/light/st_uvis25_core 0x1dc8af2e st_uvis25_probe +EXPORT_SYMBOL drivers/iio/light/st_uvis25_core 0x3aea37a8 st_uvis25_pm_ops +EXPORT_SYMBOL drivers/iio/magnetometer/bmc150_magn 0x68d89436 bmc150_magn_probe +EXPORT_SYMBOL drivers/iio/magnetometer/bmc150_magn 0x81f0d389 bmc150_magn_remove +EXPORT_SYMBOL drivers/iio/magnetometer/bmc150_magn 0x957046ed bmc150_magn_regmap_config +EXPORT_SYMBOL drivers/iio/magnetometer/bmc150_magn 0xf708ef8b bmc150_magn_pm_ops +EXPORT_SYMBOL drivers/iio/magnetometer/hmc5843_core 0x09ba70f9 hmc5843_common_resume +EXPORT_SYMBOL drivers/iio/magnetometer/hmc5843_core 0x0c6cbaa4 hmc5843_common_remove +EXPORT_SYMBOL drivers/iio/magnetometer/hmc5843_core 0x684b11f3 hmc5843_common_probe +EXPORT_SYMBOL drivers/iio/magnetometer/hmc5843_core 0xec26e18b hmc5843_common_suspend +EXPORT_SYMBOL drivers/iio/magnetometer/st_magn 0x13abff22 st_magn_common_remove +EXPORT_SYMBOL drivers/iio/magnetometer/st_magn 0x43a53c29 st_magn_common_probe +EXPORT_SYMBOL drivers/iio/magnetometer/st_magn 0xfe5e87b6 st_magn_get_settings +EXPORT_SYMBOL drivers/iio/pressure/bmp280 0x054f5944 bmp280_dev_pm_ops +EXPORT_SYMBOL drivers/iio/pressure/bmp280 0x7784e361 bmp180_regmap_config +EXPORT_SYMBOL drivers/iio/pressure/bmp280 0x9d023e03 bmp280_regmap_config +EXPORT_SYMBOL drivers/iio/pressure/bmp280 0xd18b39a2 bmp280_common_probe +EXPORT_SYMBOL drivers/iio/pressure/ms5611_core 0xb8ab0664 ms5611_probe +EXPORT_SYMBOL drivers/iio/pressure/ms5611_core 0xff34adbc ms5611_remove +EXPORT_SYMBOL drivers/iio/pressure/st_pressure 0x2daf360d st_press_common_remove +EXPORT_SYMBOL drivers/iio/pressure/st_pressure 0xab2ddc4f st_press_common_probe +EXPORT_SYMBOL drivers/iio/pressure/st_pressure 0xb4735ea8 st_press_get_settings +EXPORT_SYMBOL drivers/infiniband/core/ib_cm 0x11aa2e07 ib_send_cm_drep +EXPORT_SYMBOL drivers/infiniband/core/ib_cm 0x11d0e90e ib_send_cm_req +EXPORT_SYMBOL drivers/infiniband/core/ib_cm 0x1b1e5cb6 ib_create_cm_id +EXPORT_SYMBOL drivers/infiniband/core/ib_cm 0x28070d71 ib_cm_listen +EXPORT_SYMBOL drivers/infiniband/core/ib_cm 0x31c1a1a2 ib_send_cm_sidr_rep +EXPORT_SYMBOL drivers/infiniband/core/ib_cm 0x38e07308 ib_send_cm_sidr_req +EXPORT_SYMBOL drivers/infiniband/core/ib_cm 0x61d33c94 ib_send_cm_mra +EXPORT_SYMBOL drivers/infiniband/core/ib_cm 0x63130799 ib_destroy_cm_id +EXPORT_SYMBOL drivers/infiniband/core/ib_cm 0x69824a14 ibcm_reject_msg +EXPORT_SYMBOL drivers/infiniband/core/ib_cm 0x7005d33f ib_send_cm_dreq +EXPORT_SYMBOL drivers/infiniband/core/ib_cm 0x756fb8e9 ib_send_cm_rtu +EXPORT_SYMBOL drivers/infiniband/core/ib_cm 0x84aae772 ib_cm_notify +EXPORT_SYMBOL drivers/infiniband/core/ib_cm 0xce59ef0a ib_cm_init_qp_attr +EXPORT_SYMBOL drivers/infiniband/core/ib_cm 0xdd8aa1a9 ib_send_cm_rej +EXPORT_SYMBOL drivers/infiniband/core/ib_cm 0xe6682fa6 cm_class +EXPORT_SYMBOL drivers/infiniband/core/ib_cm 0xf2425062 ib_send_cm_rep +EXPORT_SYMBOL drivers/infiniband/core/ib_cm 0xfa84e971 ib_cm_insert_listen +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x03ac0d95 ib_unregister_device_queued +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x03ff4ef3 rdma_replace_ah_attr +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x04b3887b ibdev_notice +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x068e2938 __ib_create_cq +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x0733474c ib_get_cached_pkey +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x09897886 rdma_addr_cancel +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x0ae26206 _ib_alloc_device +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x0cbb9fc8 ibnl_put_attr +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x0dcd8b89 ibdev_alert +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x0ed4fea7 rdma_restrack_kadd +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x1007c481 rdma_nl_put_driver_u32_hex +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x117e23ac rdma_restrack_set_task +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x1183123b rdma_dev_access_netns +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x12c38fcf ib_map_mr_sg +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x14078806 rdma_user_mmap_entry_get_pgoff +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x17363286 ib_dereg_mr_user +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x1798d3c0 ib_sa_guid_info_rec_query +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x184621a4 ib_get_rdma_header_version +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x18f2a92b ib_close_qp +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x190ed061 rdma_destroy_ah_user +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x197515a0 rdma_read_gid_hw_context +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x19b4971f ib_register_client +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x19d78b41 rdma_restrack_put +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x1afef5f0 rdma_modify_ah +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x1b05df12 ib_get_cached_lmc +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x1b0f8cd6 rdma_create_ah +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x1c160101 ib_unregister_client +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x1cac33d0 rdma_rw_mr_factor +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x1d7d709d ib_dealloc_device +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x1ff46951 rdma_nl_unicast +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x2933df0c rdma_nl_put_driver_string +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x29befbb4 ib_port_register_module_stat +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x2a91bb33 ib_cache_gid_type_str +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x2b2feeb9 ib_modify_qp_with_udata +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x2c67d8ea ib_alloc_mr_user +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x2d48f227 ib_find_pkey +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x2ea2a416 rdma_find_gid +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x2f592b2b ib_query_qp +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x305e5701 rdma_addr_size_kss +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x3127c52e ib_sa_service_rec_query +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x32634065 rdma_nl_register +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x33b9ad87 ib_sa_get_mcmember_rec +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x3604b36f ib_map_mr_sg_pi +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x385441b0 ib_attach_mcast +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x38847f4c rdma_nl_put_driver_u32 +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x39ec5440 rdma_user_mmap_entry_insert_range +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x3a06ed96 rdma_move_grh_sgid_attr +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x3a1ba304 ib_init_ah_attr_from_path +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x3a93c132 ib_get_vf_config +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x3ca12c5c rdma_user_mmap_entry_remove +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x3d0d8b09 ib_unregister_device +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x3dc6eb6b rdma_user_mmap_entry_get +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x3f07af98 ib_get_cached_subnet_prefix +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x3fbd121c ib_rdmacg_uncharge +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x3fc2387c ib_ud_header_unpack +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x40ad7bbb ib_unregister_device_and_put +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x40dae1e4 __ib_alloc_xrcd +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x414538f2 ib_create_qp +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x420a3bcb ib_device_set_netdev +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x42c7f7ac ib_mad_kernel_rmpp_agent +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x432f5362 ib_modify_wq +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x434c5d10 zgid +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x4384292a ib_free_recv_mad +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x4415f54f ib_init_ah_attr_from_wc +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x45fb8985 rdma_nl_chk_listeners +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x4719e579 ib_find_cached_pkey +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x495364b4 ib_detach_mcast +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x49e86a0e ib_get_gids_from_rdma_hdr +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x4afd4155 ib_cancel_mad +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x4ba14ca6 rdma_link_unregister +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x4bce0690 ibdev_emerg +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x4c404cb2 rdma_restrack_get_byid +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x4d520004 ib_mr_pool_get +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 0x4eab9312 rdma_nl_put_driver_u64 +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x4fb74788 rdma_rw_ctx_signature_init +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x502edacd __ib_alloc_cq +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x5124e5d4 rdma_nl_put_driver_u64_hex +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x5157ba4a ib_check_mr_status +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x520b2638 ib_pack +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x536664be ib_drain_rq +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x54032271 ib_post_send_mad +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x581f9405 rdma_nl_stat_hwcounter_entry +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x589c9275 ib_reg_user_mr +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x5bf30628 rdma_set_cq_moderation +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x5e341824 ib_dealloc_pd_user +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x5fbf8b3a ib_cq_pool_get +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x613b1e2e ib_is_mad_class_rmpp +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x618d391b ib_rdmacg_try_charge +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x61d24c52 ib_rate_to_mbps +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x64c15894 ib_dispatch_event +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x6581ca90 ib_sa_unregister_client +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x65dd2d69 ib_drain_qp +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x681f22b5 ibdev_printk +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x68759450 rdma_user_mmap_entry_put +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x6b5b78bf ib_get_device_fw_str +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x6b958320 ib_ud_ip4_csum +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x6d52c14d ib_init_ah_from_mcmember +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x6f30b0aa ib_modify_srq +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x6f3614b6 rdma_is_zero_gid +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x6f3870e0 ibdev_warn +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x745e41f5 ib_get_net_dev_by_params +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x75a729a0 rdma_nl_unregister +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x7619a3fa rdma_create_user_ah +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x764b37d8 rdma_get_gid_attr +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x76cca970 rdma_read_gid_attr_ndev_rcu +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x76d7c80e rdma_copy_ah_attr +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x77ee7c1f ib_sg_to_pages +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x784987e5 rdma_port_get_link_layer +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x787ccc4c ib_get_mad_data_offset +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x7a3fd20c ib_create_send_mad +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x7b56b034 ib_unregister_driver +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x7cc1795e ib_alloc_mr_integrity +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x7e31bffb rdma_nl_unicast_wait +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x8015ce40 rdma_user_mmap_entry_insert +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x8053e7da ib_resize_cq +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x82086b58 ib_unregister_mad_agent +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x83584e9b rdma_query_ah +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x85dd13d6 ib_query_srq +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x86cef180 rdma_addr_size +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x87f281ca rdma_rw_ctx_init +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x8801c56d ib_mr_pool_destroy +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x8ac44e94 ib_advise_mr +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x8d27e805 ib_find_exact_cached_pkey +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x8d2bb221 rdma_find_gid_by_port +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x8dbecf84 rdma_copy_src_l2_addr +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x8e6536ce ib_query_port +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x8f0e1553 ib_free_cq +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x90e807c7 ib_cache_gid_parse_type_str +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x91cb55d6 ib_open_qp +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x94a7318b rdma_resolve_ip +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x9514a1f2 rdma_read_gid_l2_fields +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x95269546 rdma_query_gid +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x9709a749 rdma_restrack_count +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x97188808 ib_device_get_by_netdev +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x982f0067 ib_destroy_cq_user +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x98fee5fe rdma_translate_ip +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x9911a890 rdma_rw_ctx_destroy_signature +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x9c25c3a1 rdma_restrack_uadd +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x9f73fec1 ib_destroy_srq_user +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x9fa70e7b rdma_hold_gid_attr +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xa088b935 rdma_restrack_get +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xa23a19cb rdma_destroy_ah_attr +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xa3327e57 ib_create_wq +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xa586e9e6 ib_set_vf_link_state +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xa5f2f974 ib_modify_mad +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xa75b4a3e ib_create_qp_security +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xa7c4c123 ib_sa_register_client +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xa7d2d2ff ib_query_pkey +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xa852bff9 ib_drain_sq +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xaabf2044 ib_get_eth_speed +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xaad661fd ib_create_srq_user +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xab7519da ib_device_get_by_name +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xabe42c68 rdma_umap_priv_init +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xae956dce ib_rate_to_mult +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xaf9179c0 __rdma_block_iter_next +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xafc513ab rdma_rw_ctx_post +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xb0dc910a rdma_put_gid_attr +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xb1a312e1 ib_unpack +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xb36e4148 ib_sa_pack_path +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xb759730c roce_gid_type_mask_support +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xb7852a05 ib_ud_header_init +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xbb4e4ca9 rdma_user_mmap_io +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xbb7a6da1 ib_register_device +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xbe455950 ib_modify_qp +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xbef14d94 ib_destroy_rwq_ind_table +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xbf64b7ff ib_modify_device +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xc0f57d85 ib_set_device_ops +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xc1a1d30c ib_device_put +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xc2837e07 ib_sa_sendonly_fullmem_support +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xc386f007 __rdma_block_iter_start +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xc6837fd4 rdma_init_netdev +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xc6971112 ib_get_vf_stats +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xc6bc220f rdma_rw_ctx_destroy +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xc7285579 ibdev_err +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xc9997be9 rdma_restrack_del +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xca81f870 ib_mr_pool_put +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xd064490e ibdev_crit +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xd0e8e15d ib_get_rmpp_segment +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xd182213c rdma_nl_multicast +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xd6636ca6 rdma_addr_size_in6 +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xd6e65d77 ib_modify_qp_is_ok +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xd8d4083e ib_unregister_event_handler +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xda0d50ec ib_sa_cancel_query +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xde774a14 __ib_alloc_cq_any +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xdea84c17 rdma_alloc_netdev +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xdef1b172 ib_destroy_wq +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xe0eb9fd1 __ib_alloc_pd +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xe11e939e rdma_move_ah_attr +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xe22006c2 ib_set_vf_guid +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xe384f8d2 ib_destroy_qp_user +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xe49fbf4c ib_dealloc_xrcd +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xe5840ec6 ib_wc_status_msg +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xe5a78c1e ib_sa_unpack_path +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xe5b84e6d ib_port_unregister_module_stat +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xe61a1554 ib_create_ah_from_wc +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xe6681422 ib_sa_path_rec_get +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xe7b52e5f mult_to_ib_rate +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xe7ed3da3 rdma_roce_rescan_device +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xe8350ade rdma_link_register +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xe887853c ibnl_put_msg +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xe9e799fc ib_ud_header_pack +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xea6858cd ib_register_event_handler +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xf04a21a9 ib_get_cached_port_state +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xf12cc528 ib_sa_join_multicast +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xf26bec45 ib_create_rwq_ind_table +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xf5ce846c ib_modify_port +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 0xf8fe8f86 ib_set_client_data +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xf97d7e35 ibdev_info +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xfab028f6 ib_mr_pool_init +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xfb0ba3f0 ib_get_vf_guid +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xfb5a01c1 ib_cq_pool_put +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xfb9c6dff ib_process_cq_direct +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xfbb76db9 rdma_rw_ctx_wrs +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xfc2949ae ib_find_gid +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xfcea0863 ib_free_send_mad +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xffb7ab3f ib_register_mad_agent +EXPORT_SYMBOL drivers/infiniband/core/ib_uverbs 0x10c7fb8b ib_umem_page_count +EXPORT_SYMBOL drivers/infiniband/core/ib_uverbs 0x114ff93b uverbs_copy_to +EXPORT_SYMBOL drivers/infiniband/core/ib_uverbs 0x11746d3e _uverbs_alloc +EXPORT_SYMBOL drivers/infiniband/core/ib_uverbs 0x1af13a3d ib_copy_ah_attr_to_user +EXPORT_SYMBOL drivers/infiniband/core/ib_uverbs 0x1b54bd5d ib_copy_path_rec_from_user +EXPORT_SYMBOL drivers/infiniband/core/ib_uverbs 0x24ae07cc ib_umem_odp_alloc_child +EXPORT_SYMBOL drivers/infiniband/core/ib_uverbs 0x3f581984 ib_umem_copy_from +EXPORT_SYMBOL drivers/infiniband/core/ib_uverbs 0x4a9b8617 ib_umem_odp_alloc_implicit +EXPORT_SYMBOL drivers/infiniband/core/ib_uverbs 0x552fb0c8 uverbs_uobject_fd_release +EXPORT_SYMBOL drivers/infiniband/core/ib_uverbs 0x56e0f19c flow_resources_alloc +EXPORT_SYMBOL drivers/infiniband/core/ib_uverbs 0x57d111df ib_umem_get +EXPORT_SYMBOL drivers/infiniband/core/ib_uverbs 0x5ce15e21 ib_umem_release +EXPORT_SYMBOL drivers/infiniband/core/ib_uverbs 0x63057f4b ib_copy_path_rec_to_user +EXPORT_SYMBOL drivers/infiniband/core/ib_uverbs 0x6b722cb4 uverbs_idr_class +EXPORT_SYMBOL drivers/infiniband/core/ib_uverbs 0x77232842 ib_copy_qp_attr_to_user +EXPORT_SYMBOL drivers/infiniband/core/ib_uverbs 0x7a866c63 uverbs_get_flags32 +EXPORT_SYMBOL drivers/infiniband/core/ib_uverbs 0x829651f2 ib_umem_odp_release +EXPORT_SYMBOL drivers/infiniband/core/ib_uverbs 0x87e9d1e6 uverbs_finalize_uobj_create +EXPORT_SYMBOL drivers/infiniband/core/ib_uverbs 0x89865851 uverbs_fd_class +EXPORT_SYMBOL drivers/infiniband/core/ib_uverbs 0x91a367df uverbs_get_flags64 +EXPORT_SYMBOL drivers/infiniband/core/ib_uverbs 0xb0682cfe ib_umem_odp_map_dma_pages +EXPORT_SYMBOL drivers/infiniband/core/ib_uverbs 0xb29a5609 flow_resources_add +EXPORT_SYMBOL drivers/infiniband/core/ib_uverbs 0xbb680439 ib_umem_find_best_pgsz +EXPORT_SYMBOL drivers/infiniband/core/ib_uverbs 0xc59961f3 ib_umem_odp_get +EXPORT_SYMBOL drivers/infiniband/core/ib_uverbs 0xcc41aaca ib_uverbs_get_ucontext_file +EXPORT_SYMBOL drivers/infiniband/core/ib_uverbs 0xd382aaee _uverbs_get_const +EXPORT_SYMBOL drivers/infiniband/core/ib_uverbs 0xd956893d uverbs_uobject_put +EXPORT_SYMBOL drivers/infiniband/core/ib_uverbs 0xfbe38d30 ib_uverbs_flow_resources_free +EXPORT_SYMBOL drivers/infiniband/core/ib_uverbs 0xfc28ed38 ib_umem_odp_unmap_dma_pages +EXPORT_SYMBOL drivers/infiniband/core/ib_uverbs 0xfce301d2 uverbs_destroy_def_handler +EXPORT_SYMBOL drivers/infiniband/core/iw_cm 0x0443af7f iw_cm_reject +EXPORT_SYMBOL drivers/infiniband/core/iw_cm 0x0d5acf01 iw_create_cm_id +EXPORT_SYMBOL drivers/infiniband/core/iw_cm 0x24a01aee iw_destroy_cm_id +EXPORT_SYMBOL drivers/infiniband/core/iw_cm 0x4e9ac13e iw_cm_listen +EXPORT_SYMBOL drivers/infiniband/core/iw_cm 0x5516d4a2 iw_cm_accept +EXPORT_SYMBOL drivers/infiniband/core/iw_cm 0x907b5d40 iw_cm_init_qp_attr +EXPORT_SYMBOL drivers/infiniband/core/iw_cm 0xa6a6995e iw_cm_connect +EXPORT_SYMBOL drivers/infiniband/core/iw_cm 0xf3df871f iwcm_reject_msg +EXPORT_SYMBOL drivers/infiniband/core/iw_cm 0xfac3f6df iw_cm_disconnect +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0x1d9398e9 rdma_set_service_type +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0x3db39a56 rdma_disconnect +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0x44ec5684 rdma_connect_ece +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0x5660665b rdma_reject +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0x5918f1c6 rdma_reject_msg +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0x5977b6f4 rdma_consumer_reject_data +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0x6722e26b rdma_set_afonly +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0x6cd1be61 rdma_connect +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0x6e2820e0 __rdma_accept_ece +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0x71fc634b __rdma_accept +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0x75451526 rdma_read_gids +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0x793af39f rdma_notify +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0x7d6224eb rdma_res_to_id +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0x8e10bc9c rdma_bind_addr +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0x907df803 rdma_event_msg +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0xaa0c88f3 rdma_destroy_qp +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0xb40a1ab7 rdma_set_ib_path +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0xb6a49cb6 __rdma_create_id +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0xbb990a40 rdma_iw_cm_id +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0xc3c18e1c rdma_get_service_id +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0xcbf599d9 rdma_leave_multicast +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0xcc60b1fe rdma_resolve_addr +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0xcdbbc044 rdma_listen +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0xe0a6c0bd rdma_create_qp +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0xe3651175 rdma_destroy_id +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0xe3bd962a rdma_join_multicast +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0xe4ce4738 rdma_set_ack_timeout +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0xe85ef83a rdma_set_reuseaddr +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0xf9b0477d rdma_resolve_route +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0xf9e2fe8d rdma_init_qp_attr +EXPORT_SYMBOL drivers/infiniband/ulp/rtrs/rtrs-client 0x16148425 rtrs_clt_query +EXPORT_SYMBOL drivers/infiniband/ulp/rtrs/rtrs-client 0x18b783bf rtrs_clt_open +EXPORT_SYMBOL drivers/infiniband/ulp/rtrs/rtrs-client 0x42f2cc05 rtrs_clt_get_permit +EXPORT_SYMBOL drivers/infiniband/ulp/rtrs/rtrs-client 0x501f598d rtrs_permit_to_pdu +EXPORT_SYMBOL drivers/infiniband/ulp/rtrs/rtrs-client 0x69b20da4 rtrs_clt_close +EXPORT_SYMBOL drivers/infiniband/ulp/rtrs/rtrs-client 0x8a5599cf rtrs_clt_put_permit +EXPORT_SYMBOL drivers/infiniband/ulp/rtrs/rtrs-client 0xe898263f rtrs_clt_request +EXPORT_SYMBOL drivers/infiniband/ulp/rtrs/rtrs-core 0x0013bdc2 rtrs_ib_dev_put +EXPORT_SYMBOL drivers/infiniband/ulp/rtrs/rtrs-core 0x2510363a sockaddr_to_str +EXPORT_SYMBOL drivers/infiniband/ulp/rtrs/rtrs-core 0x337865ef rtrs_rdma_dev_pd_init +EXPORT_SYMBOL drivers/infiniband/ulp/rtrs/rtrs-core 0x67029a33 rtrs_addr_to_sockaddr +EXPORT_SYMBOL drivers/infiniband/ulp/rtrs/rtrs-core 0x9f886359 rtrs_rdma_dev_pd_deinit +EXPORT_SYMBOL drivers/infiniband/ulp/rtrs/rtrs-core 0xf317b7da rtrs_ib_dev_find_or_add +EXPORT_SYMBOL drivers/infiniband/ulp/rtrs/rtrs-server 0x17109c6e rtrs_srv_close +EXPORT_SYMBOL drivers/infiniband/ulp/rtrs/rtrs-server 0x2ff6d51e rtrs_srv_resp_rdma +EXPORT_SYMBOL drivers/infiniband/ulp/rtrs/rtrs-server 0x31260849 rtrs_srv_get_sess_name +EXPORT_SYMBOL drivers/infiniband/ulp/rtrs/rtrs-server 0xc0cb7bfd rtrs_srv_set_sess_priv +EXPORT_SYMBOL drivers/infiniband/ulp/rtrs/rtrs-server 0xd8e2664a rtrs_srv_get_queue_depth +EXPORT_SYMBOL drivers/infiniband/ulp/rtrs/rtrs-server 0xe29a6d98 rtrs_srv_open +EXPORT_SYMBOL drivers/input/gameport/gameport 0x0dd5fa0a gameport_open +EXPORT_SYMBOL drivers/input/gameport/gameport 0x1099bb7c gameport_stop_polling +EXPORT_SYMBOL drivers/input/gameport/gameport 0x21357c58 gameport_unregister_driver +EXPORT_SYMBOL drivers/input/gameport/gameport 0x3521b79a __gameport_register_driver +EXPORT_SYMBOL drivers/input/gameport/gameport 0x522190e7 gameport_set_phys +EXPORT_SYMBOL drivers/input/gameport/gameport 0x561bca5b gameport_close +EXPORT_SYMBOL drivers/input/gameport/gameport 0x76bda831 __gameport_register_port +EXPORT_SYMBOL drivers/input/gameport/gameport 0xe97bf912 gameport_unregister_port +EXPORT_SYMBOL drivers/input/gameport/gameport 0xf79df69a gameport_start_polling +EXPORT_SYMBOL drivers/input/input-polldev 0x30a4671f input_register_polled_device +EXPORT_SYMBOL drivers/input/input-polldev 0x8c2a4249 devm_input_allocate_polled_device +EXPORT_SYMBOL drivers/input/input-polldev 0x91fedd33 input_unregister_polled_device +EXPORT_SYMBOL drivers/input/input-polldev 0xa8604256 input_free_polled_device +EXPORT_SYMBOL drivers/input/input-polldev 0xdd21e42b input_allocate_polled_device +EXPORT_SYMBOL drivers/input/joystick/iforce/iforce 0x2c843fe0 iforce_init_device +EXPORT_SYMBOL drivers/input/joystick/iforce/iforce 0x63958537 iforce_send_packet +EXPORT_SYMBOL drivers/input/joystick/iforce/iforce 0x8eda501c iforce_process_packet +EXPORT_SYMBOL drivers/input/matrix-keymap 0xfbb25bb7 matrix_keypad_build_keymap +EXPORT_SYMBOL drivers/input/misc/ad714x 0x22cf6ed8 ad714x_enable +EXPORT_SYMBOL drivers/input/misc/ad714x 0x5a376fed ad714x_disable +EXPORT_SYMBOL drivers/input/misc/ad714x 0x9df32f50 ad714x_probe +EXPORT_SYMBOL drivers/input/misc/cma3000_d0x 0x04f52f6a 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 0xf4865e80 rmi_unregister_transport_device +EXPORT_SYMBOL drivers/input/sparse-keymap 0x2a2a16ef sparse_keymap_setup +EXPORT_SYMBOL drivers/input/sparse-keymap 0x2d9e34e7 sparse_keymap_entry_from_scancode +EXPORT_SYMBOL drivers/input/sparse-keymap 0x760a845b sparse_keymap_report_entry +EXPORT_SYMBOL drivers/input/sparse-keymap 0xc43e9398 sparse_keymap_entry_from_keycode +EXPORT_SYMBOL drivers/input/sparse-keymap 0xf94a058a sparse_keymap_report_event +EXPORT_SYMBOL drivers/input/touchscreen/ad7879 0xaafc97c8 ad7879_pm_ops +EXPORT_SYMBOL drivers/input/touchscreen/ad7879 0xbb47992d ad7879_probe +EXPORT_SYMBOL drivers/iommu/iova 0x58604e4d alloc_iova_mem +EXPORT_SYMBOL drivers/iommu/iova 0x858b3fe3 free_iova_mem +EXPORT_SYMBOL drivers/isdn/capi/kernelcapi 0x23cdeb35 detach_capi_ctr +EXPORT_SYMBOL drivers/isdn/capi/kernelcapi 0x412a42f3 capi_ctr_handle_message +EXPORT_SYMBOL drivers/isdn/capi/kernelcapi 0x78c93a45 attach_capi_ctr +EXPORT_SYMBOL drivers/isdn/capi/kernelcapi 0xe4a04bb3 capi_ctr_ready +EXPORT_SYMBOL drivers/isdn/capi/kernelcapi 0xe7b78423 capi_ctr_down +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 0x17f768b8 mISDNisac_irq +EXPORT_SYMBOL drivers/isdn/hardware/mISDN/mISDNipac 0x1bbd1d98 mISDNisac_init +EXPORT_SYMBOL drivers/isdn/hardware/mISDN/mISDNipac 0x9a75473f mISDNipac_init +EXPORT_SYMBOL drivers/isdn/hardware/mISDN/mISDNipac 0xcabd7e87 mISDNipac_irq +EXPORT_SYMBOL drivers/isdn/hardware/mISDN/mISDNisar 0x19a07ffe mISDNisar_init +EXPORT_SYMBOL drivers/isdn/hardware/mISDN/mISDNisar 0xb4771fab mISDNisar_irq +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0x03a68066 mISDN_FsmRestartTimer +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0x1a8c595d recv_Dchannel +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0x208db782 get_next_bframe +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0x2106ad7d mISDN_register_Bprotocol +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 0x2767d22f get_next_dframe +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 0x31e71af6 bchannel_get_rxbuf +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0x335b3d74 recv_Dchannel_skb +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0x3667b4b6 mISDN_ctrl_bchannel +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0x3f972d72 mISDNDevName4ch +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0x50c2230c mISDN_FsmChangeState +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0x51569cac mISDN_register_device +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0x563341bc mISDN_initbchannel +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0x579f323d mISDN_initdchannel +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0x588886a6 l1_event +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0x6047df40 mISDN_FsmInitTimer +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0x63cc473b recv_Bchannel_skb +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0x81c3dffc recv_Bchannel +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0x8eecb143 recv_Echannel +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0x9c928457 mISDN_FsmNew +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0x9ef92185 dchannel_senddata +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0xb06bcb5e mISDN_freedchannel +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0xb4212ec0 mISDN_unregister_device +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0xb96c947a queue_ch_frame +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0xbeeb6342 create_l1 +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0xc3401729 mISDN_register_clock +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0xd285995f mISDN_clock_get +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0xd48b8eb7 bchannel_senddata +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0xd5145151 mISDN_FsmEvent +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0xd7d2aec6 mISDN_unregister_Bprotocol +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0xe821574e mISDN_clear_bchannel +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0xe8f617eb mISDN_unregister_clock +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0xfffcb419 mISDN_freebchannel +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 0x4d773002 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 0xa53b4b2b ti_lmu_common_get_brt_res +EXPORT_SYMBOL drivers/leds/leds-ti-lmu-common 0xced72aae ti_lmu_common_set_brightness +EXPORT_SYMBOL drivers/mailbox/omap-mailbox 0x34e5235c omap_mbox_request_channel +EXPORT_SYMBOL drivers/mailbox/omap-mailbox 0x3e0a9c79 omap_mbox_disable_irq +EXPORT_SYMBOL drivers/mailbox/omap-mailbox 0x75d2ead8 omap_mbox_enable_irq +EXPORT_SYMBOL drivers/md/dm-log 0x3923afe1 dm_dirty_log_type_unregister +EXPORT_SYMBOL drivers/md/dm-log 0x44638b7e dm_dirty_log_type_register +EXPORT_SYMBOL drivers/md/dm-log 0x4840b7f4 dm_dirty_log_destroy +EXPORT_SYMBOL drivers/md/dm-log 0x971ed64d dm_dirty_log_create +EXPORT_SYMBOL drivers/md/dm-snapshot 0x00a35dc4 dm_exception_store_type_register +EXPORT_SYMBOL drivers/md/dm-snapshot 0x25045885 dm_exception_store_type_unregister +EXPORT_SYMBOL drivers/md/dm-snapshot 0x566ac768 dm_exception_store_destroy +EXPORT_SYMBOL drivers/md/dm-snapshot 0x76f41719 dm_exception_store_create +EXPORT_SYMBOL drivers/md/dm-snapshot 0x9001b57b dm_snap_cow +EXPORT_SYMBOL drivers/md/dm-snapshot 0xb7102744 dm_snap_origin +EXPORT_SYMBOL drivers/md/raid456 0xbc4e652f raid5_set_cache_size +EXPORT_SYMBOL drivers/md/raid456 0xd07dd95d r5c_journal_mode_set +EXPORT_SYMBOL drivers/media/common/b2c2/b2c2-flexcop 0x3e6fa8de flexcop_sram_ctrl +EXPORT_SYMBOL drivers/media/common/b2c2/b2c2-flexcop 0x49adfb9a flexcop_i2c_request +EXPORT_SYMBOL drivers/media/common/b2c2/b2c2-flexcop 0x57d39f7d flexcop_device_kmalloc +EXPORT_SYMBOL drivers/media/common/b2c2/b2c2-flexcop 0x5cab1c64 flexcop_pass_dmx_data +EXPORT_SYMBOL drivers/media/common/b2c2/b2c2-flexcop 0x6eef379f flexcop_device_initialize +EXPORT_SYMBOL drivers/media/common/b2c2/b2c2-flexcop 0x7c2dd167 flexcop_sram_set_dest +EXPORT_SYMBOL drivers/media/common/b2c2/b2c2-flexcop 0x806a6173 flexcop_device_kfree +EXPORT_SYMBOL drivers/media/common/b2c2/b2c2-flexcop 0x91acc8f1 flexcop_device_exit +EXPORT_SYMBOL drivers/media/common/b2c2/b2c2-flexcop 0x9d27ec68 flexcop_dump_reg +EXPORT_SYMBOL drivers/media/common/b2c2/b2c2-flexcop 0xa9caeda2 flexcop_pass_dmx_packets +EXPORT_SYMBOL drivers/media/common/b2c2/b2c2-flexcop 0xc66d5afe flexcop_wan_set_speed +EXPORT_SYMBOL drivers/media/common/b2c2/b2c2-flexcop 0xe5904218 flexcop_eeprom_check_mac_addr +EXPORT_SYMBOL drivers/media/common/b2c2/b2c2-flexcop 0xf84b4d6b flexcop_pid_feed_control +EXPORT_SYMBOL drivers/media/common/cx2341x 0x55aa7c5f cx2341x_mpeg_ctrls +EXPORT_SYMBOL drivers/media/common/cx2341x 0x8d3a49fd cx2341x_ctrl_get_menu +EXPORT_SYMBOL drivers/media/common/cx2341x 0x958d46ad cx2341x_handler_setup +EXPORT_SYMBOL drivers/media/common/cx2341x 0xb54cd7f1 cx2341x_handler_init +EXPORT_SYMBOL drivers/media/common/cx2341x 0xb9c8f3f1 cx2341x_update +EXPORT_SYMBOL drivers/media/common/cx2341x 0xc889377e cx2341x_log_status +EXPORT_SYMBOL drivers/media/common/cx2341x 0xcc14d05c cx2341x_handler_set_50hz +EXPORT_SYMBOL drivers/media/common/cx2341x 0xdaff62f9 cx2341x_fill_defaults +EXPORT_SYMBOL drivers/media/common/cx2341x 0xe197a5dd cx2341x_ext_ctrls +EXPORT_SYMBOL drivers/media/common/cx2341x 0xeb854f47 cx2341x_ctrl_query +EXPORT_SYMBOL drivers/media/common/cx2341x 0xf0dd60ac cx2341x_handler_set_busy +EXPORT_SYMBOL drivers/media/common/cypress_firmware 0x368dd91a cypress_load_firmware +EXPORT_SYMBOL drivers/media/common/tveeprom 0x0dbf0296 tveeprom_hauppauge_analog +EXPORT_SYMBOL drivers/media/common/tveeprom 0xd875e011 tveeprom_read +EXPORT_SYMBOL drivers/media/common/videobuf2/videobuf2-common 0x14a1c5e4 vb2_buffer_in_use +EXPORT_SYMBOL drivers/media/common/videobuf2/videobuf2-common 0x36280c7f vb2_verify_memory_type +EXPORT_SYMBOL drivers/media/common/videobuf2/videobuf2-dvb 0x2c7452d9 vb2_dvb_find_frontend +EXPORT_SYMBOL drivers/media/common/videobuf2/videobuf2-dvb 0x32a53c9b vb2_dvb_dealloc_frontends +EXPORT_SYMBOL drivers/media/common/videobuf2/videobuf2-dvb 0x5e9951bd vb2_dvb_register_bus +EXPORT_SYMBOL drivers/media/common/videobuf2/videobuf2-dvb 0x6793dc08 vb2_dvb_unregister_bus +EXPORT_SYMBOL drivers/media/common/videobuf2/videobuf2-dvb 0x9f58b356 vb2_dvb_get_frontend +EXPORT_SYMBOL drivers/media/common/videobuf2/videobuf2-dvb 0xe246811b vb2_dvb_alloc_frontend +EXPORT_SYMBOL drivers/media/common/videobuf2/videobuf2-memops 0xa21fa765 vb2_create_framevec +EXPORT_SYMBOL drivers/media/common/videobuf2/videobuf2-memops 0xccd197c7 vb2_destroy_framevec +EXPORT_SYMBOL drivers/media/common/videobuf2/videobuf2-v4l2 0x13382c18 vb2_querybuf +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x006d6880 dvb_dmx_swfilter +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x043106a6 dvb_ca_en50221_frda_irq +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x08733236 intlog10 +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x0dec170c dvb_ca_en50221_init +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x10ee62cb dvb_free_device +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x1609d70c dvb_ringbuffer_flush +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x1e7a8283 dvb_ringbuffer_read +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x21381c3b dvb_dmx_swfilter_raw +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x214d5b4e dvb_ringbuffer_init +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x2bcc8617 dvb_ca_en50221_camchange_irq +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x2c12c287 dvb_ringbuffer_empty +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x34f1cd15 dvb_ca_en50221_camready_irq +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x39176a50 dvb_frontend_detach +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x3b332a2e dvb_frontend_suspend +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x3b93d71a dvb_frontend_sleep_until +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x3fd96ba7 dvb_ringbuffer_flush_spinlock_wakeup +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x42d15a1b dvb_ringbuffer_write_user +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x4be5c646 dvb_dmx_init +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x53abb853 dvb_ca_en50221_release +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x55af243c dvb_unregister_frontend +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x58d79a3e dvb_unregister_adapter +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x5a8299d2 dvb_register_frontend +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x5f2b1d95 intlog2 +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x702c9c99 dvb_remove_device +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x7b334d3c dvb_dmx_release +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x7c8fb8f9 dvb_net_release +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x8026ef3e dvb_ringbuffer_read_user +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x82143c17 dvb_ringbuffer_avail +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x95dbfa8c dvb_generic_ioctl +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x9d3c2ce3 dvb_frontend_reinitialise +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0xa769e0db dvb_unregister_device +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0xb6a938be dvb_register_adapter +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0xb9dca3ec dvb_generic_open +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0xc0b93899 dvb_ringbuffer_write +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0xc3f35647 dvb_register_device +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0xd799e7c9 dvb_dmxdev_init +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0xdafc31c5 dvb_dmx_swfilter_packets +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0xdc417d64 dvb_net_init +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0xedda2b2f dvb_dmx_swfilter_204 +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0xf7aa36f2 dvb_generic_release +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0xf9fbafa9 dvb_dmxdev_release +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0xfa80eb9d dvb_frontend_resume +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0xfe73d116 dvb_ringbuffer_free +EXPORT_SYMBOL drivers/media/dvb-frontends/ascot2e 0x7e6ac9b6 ascot2e_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/atbm8830 0xa627bf86 atbm8830_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/au8522_common 0x0484784b au8522_i2c_gate_ctrl +EXPORT_SYMBOL drivers/media/dvb-frontends/au8522_common 0x0d798f3d au8522_sleep +EXPORT_SYMBOL drivers/media/dvb-frontends/au8522_common 0x31a0601f au8522_writereg +EXPORT_SYMBOL drivers/media/dvb-frontends/au8522_common 0x7e74e687 au8522_release_state +EXPORT_SYMBOL drivers/media/dvb-frontends/au8522_common 0x912bd413 au8522_get_state +EXPORT_SYMBOL drivers/media/dvb-frontends/au8522_common 0x93ceaecf au8522_init +EXPORT_SYMBOL drivers/media/dvb-frontends/au8522_common 0xc326b3b3 au8522_analog_i2c_gate_ctrl +EXPORT_SYMBOL drivers/media/dvb-frontends/au8522_common 0xf6c764c4 au8522_readreg +EXPORT_SYMBOL drivers/media/dvb-frontends/au8522_common 0xfc627e51 au8522_led_ctrl +EXPORT_SYMBOL drivers/media/dvb-frontends/au8522_dig 0xec438964 au8522_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/bcm3510 0xf6d5077f bcm3510_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/cx22700 0x34ab0884 cx22700_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/cx22702 0x646b8ce7 cx22702_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/cx24110 0xa8923ed0 cx24110_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/cx24113 0x8a81c911 cx24113_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/cx24113 0xaf0612cd cx24113_agc_callback +EXPORT_SYMBOL drivers/media/dvb-frontends/cx24116 0x543d64d1 cx24116_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/cx24120 0x5ace7d21 cx24120_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/cx24123 0x0c559116 cx24123_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/cx24123 0xb4ff8480 cx24123_get_tuner_i2c_adapter +EXPORT_SYMBOL drivers/media/dvb-frontends/cxd2820r 0x24c12258 cxd2820r_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/cxd2841er 0x0cbc2832 cxd2841er_attach_s +EXPORT_SYMBOL drivers/media/dvb-frontends/cxd2841er 0xb7df201a cxd2841er_attach_t_c +EXPORT_SYMBOL drivers/media/dvb-frontends/cxd2880/cxd2880 0x892ca5b5 cxd2880_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/dib0070 0x248e7f42 dib0070_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/dib0070 0x25028f7d dib0070_wbd_offset +EXPORT_SYMBOL drivers/media/dvb-frontends/dib0070 0x5ab443a0 dib0070_get_rf_output +EXPORT_SYMBOL drivers/media/dvb-frontends/dib0070 0x957ac186 dib0070_ctrl_agc_filter +EXPORT_SYMBOL drivers/media/dvb-frontends/dib0070 0xe90a9b28 dib0070_set_rf_output +EXPORT_SYMBOL drivers/media/dvb-frontends/dib0090 0x0c395d43 dib0090_set_switch +EXPORT_SYMBOL drivers/media/dvb-frontends/dib0090 0x103b08b1 dib0090_get_current_gain +EXPORT_SYMBOL drivers/media/dvb-frontends/dib0090 0x35b636f7 dib0090_gain_control +EXPORT_SYMBOL drivers/media/dvb-frontends/dib0090 0x36afedb6 dib0090_get_wbd_offset +EXPORT_SYMBOL drivers/media/dvb-frontends/dib0090 0x479cc137 dib0090_set_dc_servo +EXPORT_SYMBOL drivers/media/dvb-frontends/dib0090 0x5e974456 dib0090_dcc_freq +EXPORT_SYMBOL drivers/media/dvb-frontends/dib0090 0x6290b81c dib0090_pwm_gain_reset +EXPORT_SYMBOL drivers/media/dvb-frontends/dib0090 0x76c4d198 dib0090_set_tune_state +EXPORT_SYMBOL drivers/media/dvb-frontends/dib0090 0x844ee1d8 dib0090_update_rframp_7090 +EXPORT_SYMBOL drivers/media/dvb-frontends/dib0090 0xa0e64ef4 dib0090_register +EXPORT_SYMBOL drivers/media/dvb-frontends/dib0090 0xb3530628 dib0090_update_tuning_table_7090 +EXPORT_SYMBOL drivers/media/dvb-frontends/dib0090 0xb3c0b78a dib0090_set_vga +EXPORT_SYMBOL drivers/media/dvb-frontends/dib0090 0xc46d17e3 dib0090_fw_register +EXPORT_SYMBOL drivers/media/dvb-frontends/dib0090 0xe437b1fd dib0090_get_wbd_target +EXPORT_SYMBOL drivers/media/dvb-frontends/dib0090 0xf6c7616e dib0090_get_tune_state +EXPORT_SYMBOL drivers/media/dvb-frontends/dib3000mb 0xc8b3ef02 dib3000mb_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/dib3000mc 0x0e0df6da dib3000mc_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/dib3000mc 0x2a4de18f dib3000mc_i2c_enumeration +EXPORT_SYMBOL drivers/media/dvb-frontends/dib3000mc 0x3444f8b7 dib3000mc_get_tuner_i2c_master +EXPORT_SYMBOL drivers/media/dvb-frontends/dib3000mc 0x4b9ad3d9 dib3000mc_set_config +EXPORT_SYMBOL drivers/media/dvb-frontends/dib3000mc 0x52df58ec dib3000mc_pid_parse +EXPORT_SYMBOL drivers/media/dvb-frontends/dib3000mc 0x67b98521 dib3000mc_pid_control +EXPORT_SYMBOL drivers/media/dvb-frontends/dib7000m 0x19972c06 dib7000m_pid_filter_ctrl +EXPORT_SYMBOL drivers/media/dvb-frontends/dib7000m 0x27d765b4 dib7000m_get_i2c_master +EXPORT_SYMBOL drivers/media/dvb-frontends/dib7000m 0xc752eee9 dib7000m_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/dib7000m 0xea41ba72 dib7000m_pid_filter +EXPORT_SYMBOL drivers/media/dvb-frontends/dib7000p 0x887fddf4 dib7000p_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/dib8000 0x64a87f54 dib8000_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/dib9000 0x13dd1aec dib9000_fw_pid_filter +EXPORT_SYMBOL drivers/media/dvb-frontends/dib9000 0x1ecf4573 dib9000_i2c_enumeration +EXPORT_SYMBOL drivers/media/dvb-frontends/dib9000 0x350ba5b1 dib9000_get_tuner_interface +EXPORT_SYMBOL drivers/media/dvb-frontends/dib9000 0x39fddcbd dib9000_get_slave_frontend +EXPORT_SYMBOL drivers/media/dvb-frontends/dib9000 0x559c2597 dib9000_get_i2c_master +EXPORT_SYMBOL drivers/media/dvb-frontends/dib9000 0x5eb931a4 dib9000_fw_pid_filter_ctrl +EXPORT_SYMBOL drivers/media/dvb-frontends/dib9000 0x74b73e3b dib9000_fw_set_component_bus_speed +EXPORT_SYMBOL drivers/media/dvb-frontends/dib9000 0x7dbb771e dib9000_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/dib9000 0x88627525 dib9000_set_slave_frontend +EXPORT_SYMBOL drivers/media/dvb-frontends/dib9000 0x9791a22b dib9000_get_component_bus_interface +EXPORT_SYMBOL drivers/media/dvb-frontends/dib9000 0x97a7fab0 dib9000_firmware_post_pll_init +EXPORT_SYMBOL drivers/media/dvb-frontends/dib9000 0xbbce753b dib9000_set_i2c_adapter +EXPORT_SYMBOL drivers/media/dvb-frontends/dib9000 0xf3f0088d dib9000_set_gpio +EXPORT_SYMBOL drivers/media/dvb-frontends/dibx000_common 0x38962267 dibx000_exit_i2c_master +EXPORT_SYMBOL drivers/media/dvb-frontends/dibx000_common 0x49241d0e dibx000_init_i2c_master +EXPORT_SYMBOL drivers/media/dvb-frontends/dibx000_common 0x722a1130 dibx000_get_i2c_adapter +EXPORT_SYMBOL drivers/media/dvb-frontends/dibx000_common 0xd3e34d86 dibx000_reset_i2c_master +EXPORT_SYMBOL drivers/media/dvb-frontends/dibx000_common 0xeb9a017d dibx000_i2c_set_speed +EXPORT_SYMBOL drivers/media/dvb-frontends/drx39xyj/drx39xyj 0xf8ddbf87 drx39xxj_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/drxd 0x9e85bf6f drxd_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/drxk 0x5ef497d6 drxk_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/ds3000 0xedd052ea ds3000_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/dvb-pll 0x3651b434 dvb_pll_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/dvb_dummy_fe 0x4f3c8ee0 dvb_dummy_fe_qpsk_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/dvb_dummy_fe 0xb6a45f1b dvb_dummy_fe_qam_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/dvb_dummy_fe 0xe4f2aa88 dvb_dummy_fe_ofdm_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/ec100 0xb146720c ec100_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/helene 0x50e8bddf helene_attach_s +EXPORT_SYMBOL drivers/media/dvb-frontends/helene 0xd334c93c helene_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/horus3a 0xd97acb7a horus3a_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/isl6405 0xfbe935b5 isl6405_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/isl6421 0x09801318 isl6421_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/isl6423 0x4147b2bb isl6423_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/itd1000 0x3006775e itd1000_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/ix2505v 0x14bd466f ix2505v_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/l64781 0x5a5aae97 l64781_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/lg2160 0x8ecb47b2 lg2160_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/lgdt3305 0x505dc566 lgdt3305_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/lgdt3306a 0xe6f472e5 lgdt3306a_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/lgdt330x 0x375bed48 lgdt330x_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/lgs8gl5 0x442fa77f lgs8gl5_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/lgs8gxx 0x3281044b lgs8gxx_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/lnbh25 0x331d9524 lnbh25_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/lnbh29 0x9ae092ac lnbh29_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/lnbp21 0x487ab6f1 lnbp21_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/lnbp21 0x55e60034 lnbh24_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/lnbp22 0xf3142f68 lnbp22_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/m88ds3103 0xbf30be14 m88ds3103_get_agc_pwm +EXPORT_SYMBOL drivers/media/dvb-frontends/m88ds3103 0xfa28d71f m88ds3103_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/m88rs2000 0x957dbef8 m88rs2000_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/mb86a16 0x3bbdf7e7 mb86a16_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/mb86a20s 0xa564923d mb86a20s_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/mt312 0x28509be0 mt312_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/mt352 0xb39d9a74 mt352_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/nxt200x 0x4a2a41d3 nxt200x_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/nxt6000 0x8fbb4950 nxt6000_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/or51132 0xf5cf0ef1 or51132_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/or51211 0x444b6801 or51211_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/s5h1409 0xf53b26ab s5h1409_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/s5h1411 0x080aa9a0 s5h1411_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/s5h1420 0x6d81e807 s5h1420_get_tuner_i2c_adapter +EXPORT_SYMBOL drivers/media/dvb-frontends/s5h1420 0x9a921dbc s5h1420_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/s5h1432 0xa05bf339 s5h1432_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/s921 0xe7805b04 s921_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/si21xx 0xbc3033fc si21xx_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/sp8870 0xf1c51d04 sp8870_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/sp887x 0x581d2499 sp887x_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/stb0899 0x31bdd01c stb0899_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/stb6000 0x01ef4894 stb6000_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/stb6100 0x70cfb693 stb6100_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/stv0288 0xc8dfbc37 stv0288_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/stv0297 0x2fd52a3c stv0297_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/stv0299 0x51a35abb stv0299_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/stv0367 0x58818872 stv0367cab_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/stv0367 0x66e6a3a3 stv0367ddb_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/stv0367 0x800179e1 stv0367ter_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/stv0900 0xee86d80b stv0900_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/stv090x 0xdc2b4a54 stv090x_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/stv6110 0xa4d9f2e0 stv6110_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/stv6110x 0x19908788 stv6110x_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/tda10021 0xf07e8216 tda10021_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/tda10023 0xbf0f0aa8 tda10023_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/tda10048 0x70645b00 tda10048_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/tda1004x 0x590e72b9 tda10045_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/tda1004x 0x930a566d tda10046_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/tda10086 0x8b8017da tda10086_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/tda665x 0x5e29adbc tda665x_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/tda8083 0x9a5ae489 tda8083_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/tda8261 0x98b9974f tda8261_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/tda826x 0xd6951d47 tda826x_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/ts2020 0xed264d0c ts2020_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/tua6100 0x3d2e9955 tua6100_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/ves1820 0xff3cbf70 ves1820_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/ves1x93 0xee7f0ea4 ves1x93_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/zd1301_demod 0x023104f2 zd1301_demod_get_i2c_adapter +EXPORT_SYMBOL drivers/media/dvb-frontends/zd1301_demod 0x9795d9c5 zd1301_demod_get_dvb_frontend +EXPORT_SYMBOL drivers/media/dvb-frontends/zl10036 0x828d97ef zl10036_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/zl10039 0x90c7d887 zl10039_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/zl10353 0x218a0b46 zl10353_attach +EXPORT_SYMBOL drivers/media/pci/b2c2/b2c2-flexcop-pci 0x1c41b3e7 flexcop_dma_free +EXPORT_SYMBOL drivers/media/pci/b2c2/b2c2-flexcop-pci 0x7a0f3b92 flexcop_dma_allocate +EXPORT_SYMBOL drivers/media/pci/b2c2/b2c2-flexcop-pci 0x84f8cc35 flexcop_dma_xfer_control +EXPORT_SYMBOL drivers/media/pci/b2c2/b2c2-flexcop-pci 0x90c04c1b flexcop_dma_control_timer_irq +EXPORT_SYMBOL drivers/media/pci/b2c2/b2c2-flexcop-pci 0xe8f0423e flexcop_dma_control_size_irq +EXPORT_SYMBOL drivers/media/pci/b2c2/b2c2-flexcop-pci 0xf448bdc2 flexcop_dma_config +EXPORT_SYMBOL drivers/media/pci/b2c2/b2c2-flexcop-pci 0xff5f2aed flexcop_dma_config_timer +EXPORT_SYMBOL drivers/media/pci/bt8xx/bt878 0x2d1340a7 bt878_start +EXPORT_SYMBOL drivers/media/pci/bt8xx/bt878 0x5cf7ed3b bt878_stop +EXPORT_SYMBOL drivers/media/pci/bt8xx/bt878 0xb8ea91df bt878 +EXPORT_SYMBOL drivers/media/pci/bt8xx/bt878 0xcc7867f1 bt878_device_control +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 0x15b71698 bttv_sub_unregister +EXPORT_SYMBOL drivers/media/pci/bt8xx/bttv 0x62af9e62 bttv_sub_register +EXPORT_SYMBOL drivers/media/pci/bt8xx/bttv 0x8ecf4acc bttv_write_gpio +EXPORT_SYMBOL drivers/media/pci/bt8xx/bttv 0x948454fb bttv_get_pcidev +EXPORT_SYMBOL drivers/media/pci/bt8xx/bttv 0xbcf2d2fb bttv_read_gpio +EXPORT_SYMBOL drivers/media/pci/bt8xx/dst 0x3197c8a5 dst_wait_dst_ready +EXPORT_SYMBOL drivers/media/pci/bt8xx/dst 0x3ac4b3fd rdc_reset_state +EXPORT_SYMBOL drivers/media/pci/bt8xx/dst 0x43a983fd dst_check_sum +EXPORT_SYMBOL drivers/media/pci/bt8xx/dst 0x504eb1ae dst_attach +EXPORT_SYMBOL drivers/media/pci/bt8xx/dst 0xa262b4ba dst_pio_disable +EXPORT_SYMBOL drivers/media/pci/bt8xx/dst 0xb53cb5b8 dst_error_bailout +EXPORT_SYMBOL drivers/media/pci/bt8xx/dst 0xb6e11f45 write_dst +EXPORT_SYMBOL drivers/media/pci/bt8xx/dst 0xc57be824 dst_error_recovery +EXPORT_SYMBOL drivers/media/pci/bt8xx/dst 0xcafb37b9 read_dst +EXPORT_SYMBOL drivers/media/pci/bt8xx/dst 0xdb315c69 dst_comm_init +EXPORT_SYMBOL drivers/media/pci/bt8xx/dst_ca 0xb3e3511b dst_ca_attach +EXPORT_SYMBOL drivers/media/pci/cx18/cx18 0x052e5836 cx18_start_v4l2_encode_stream +EXPORT_SYMBOL drivers/media/pci/cx18/cx18 0x2cdea06d cx18_reset_ir_gpio +EXPORT_SYMBOL drivers/media/pci/cx18/cx18 0x4cc7a16c cx18_claim_stream +EXPORT_SYMBOL drivers/media/pci/cx18/cx18 0xd3ae4a77 cx18_release_stream +EXPORT_SYMBOL drivers/media/pci/cx18/cx18 0xf6d7e17b cx18_ext_init +EXPORT_SYMBOL drivers/media/pci/cx18/cx18 0xf7717e99 cx18_stop_v4l2_encode_stream +EXPORT_SYMBOL drivers/media/pci/cx23885/altera-ci 0x59a5ad6d altera_ci_init +EXPORT_SYMBOL drivers/media/pci/cx23885/altera-ci 0x6ff7510d altera_ci_tuner_reset +EXPORT_SYMBOL drivers/media/pci/cx23885/altera-ci 0xdb3faf38 altera_ci_release +EXPORT_SYMBOL drivers/media/pci/cx23885/altera-ci 0xe66b9812 altera_ci_irq +EXPORT_SYMBOL drivers/media/pci/cx25821/cx25821 0x07187305 cx25821_riscmem_alloc +EXPORT_SYMBOL drivers/media/pci/cx25821/cx25821 0x09021047 cx25821_sram_channel_setup_audio +EXPORT_SYMBOL drivers/media/pci/cx25821/cx25821 0x0de7c8fc cx25821_dev_unregister +EXPORT_SYMBOL drivers/media/pci/cx25821/cx25821 0x32b5fe7b cx25821_risc_databuffer_audio +EXPORT_SYMBOL drivers/media/pci/cx25821/cx25821 0x3644320d cx25821_dev_get +EXPORT_SYMBOL drivers/media/pci/cx25821/cx25821 0x44b517f5 cx25821_print_irqbits +EXPORT_SYMBOL drivers/media/pci/cx25821/cx25821 0x46fe7086 cx25821_sram_channel_dump_audio +EXPORT_SYMBOL drivers/media/pci/cx25821/cx25821 0x9349aa08 cx25821_set_gpiopin_direction +EXPORT_SYMBOL drivers/media/pci/cx25821/cx25821 0xe9050411 cx25821_sram_channels +EXPORT_SYMBOL drivers/media/pci/cx88/cx88-vp3054-i2c 0x474736fb vp3054_i2c_probe +EXPORT_SYMBOL drivers/media/pci/cx88/cx88-vp3054-i2c 0x5c6fbb56 vp3054_i2c_remove +EXPORT_SYMBOL drivers/media/pci/cx88/cx8800 0x30b5a6d4 cx88_set_freq +EXPORT_SYMBOL drivers/media/pci/cx88/cx8800 0x3e799e51 cx88_enum_input +EXPORT_SYMBOL drivers/media/pci/cx88/cx8800 0x99efa0c0 cx88_querycap +EXPORT_SYMBOL drivers/media/pci/cx88/cx8800 0xf9aa915a cx88_video_mux +EXPORT_SYMBOL drivers/media/pci/cx88/cx8802 0x65c6229a cx8802_register_driver +EXPORT_SYMBOL drivers/media/pci/cx88/cx8802 0x661e5c77 cx8802_cancel_buffers +EXPORT_SYMBOL drivers/media/pci/cx88/cx8802 0x8fb11a8f cx8802_start_dma +EXPORT_SYMBOL drivers/media/pci/cx88/cx8802 0xb0f19dd2 cx8802_buf_queue +EXPORT_SYMBOL drivers/media/pci/cx88/cx8802 0xbbf36e4c cx8802_get_driver +EXPORT_SYMBOL drivers/media/pci/cx88/cx8802 0xccb78977 cx8802_buf_prepare +EXPORT_SYMBOL drivers/media/pci/cx88/cx8802 0xecad9634 cx8802_unregister_driver +EXPORT_SYMBOL drivers/media/pci/cx88/cx88xx 0x15d8a916 cx88_vdev_init +EXPORT_SYMBOL drivers/media/pci/cx88/cx88xx 0x2826c9f0 cx88_ir_stop +EXPORT_SYMBOL drivers/media/pci/cx88/cx88xx 0x2f2bd2a8 cx88_core_put +EXPORT_SYMBOL drivers/media/pci/cx88/cx88xx 0x31840035 cx88_get_stereo +EXPORT_SYMBOL drivers/media/pci/cx88/cx88xx 0x45e991a9 cx88_set_tvnorm +EXPORT_SYMBOL drivers/media/pci/cx88/cx88xx 0x534cbae7 cx88_sram_channel_setup +EXPORT_SYMBOL drivers/media/pci/cx88/cx88xx 0x57bf8149 cx88_ir_start +EXPORT_SYMBOL drivers/media/pci/cx88/cx88xx 0x58b93ed6 cx88_risc_buffer +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 0x6e095966 cx88_set_stereo +EXPORT_SYMBOL drivers/media/pci/cx88/cx88xx 0x7068fbc9 cx88_sram_channel_dump +EXPORT_SYMBOL drivers/media/pci/cx88/cx88xx 0x779fc5ec cx88_dsp_detect_stereo_sap +EXPORT_SYMBOL drivers/media/pci/cx88/cx88xx 0x7e0ed877 cx88_newstation +EXPORT_SYMBOL drivers/media/pci/cx88/cx88xx 0x806612fe cx88_risc_databuffer +EXPORT_SYMBOL drivers/media/pci/cx88/cx88xx 0x8c1725ff cx88_core_irq +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 0x95a6af09 cx88_set_scale +EXPORT_SYMBOL drivers/media/pci/cx88/cx88xx 0xa12fc3a2 cx88_set_tvaudio +EXPORT_SYMBOL drivers/media/pci/cx88/cx88xx 0xa4ae7a77 cx88_shutdown +EXPORT_SYMBOL drivers/media/pci/cx88/cx88xx 0xaf702f57 cx88_core_get +EXPORT_SYMBOL drivers/media/pci/cx88/cx88xx 0xcf158ce5 cx88_wakeup +EXPORT_SYMBOL drivers/media/pci/cx88/cx88xx 0xdab67bea cx88_reset +EXPORT_SYMBOL drivers/media/pci/ddbridge/ddbridge-dummy-fe 0xff6cc580 ddbridge_dummy_fe_qam_attach +EXPORT_SYMBOL drivers/media/pci/ivtv/ivtv 0x085ffe12 ivtv_vapi_result +EXPORT_SYMBOL drivers/media/pci/ivtv/ivtv 0x08c24474 ivtv_init_on_first_open +EXPORT_SYMBOL drivers/media/pci/ivtv/ivtv 0x12898f6e ivtv_start_v4l2_encode_stream +EXPORT_SYMBOL drivers/media/pci/ivtv/ivtv 0x14f67530 ivtv_debug +EXPORT_SYMBOL drivers/media/pci/ivtv/ivtv 0x20dee705 ivtv_api +EXPORT_SYMBOL drivers/media/pci/ivtv/ivtv 0x27797074 ivtv_udma_prepare +EXPORT_SYMBOL drivers/media/pci/ivtv/ivtv 0x3090ae07 ivtv_claim_stream +EXPORT_SYMBOL drivers/media/pci/ivtv/ivtv 0x63939717 ivtv_stop_v4l2_encode_stream +EXPORT_SYMBOL drivers/media/pci/ivtv/ivtv 0x66402aa0 ivtv_vapi +EXPORT_SYMBOL drivers/media/pci/ivtv/ivtv 0x689c834e ivtv_udma_unmap +EXPORT_SYMBOL drivers/media/pci/ivtv/ivtv 0x70d63dec ivtv_set_irq_mask +EXPORT_SYMBOL drivers/media/pci/ivtv/ivtv 0x87813dc4 ivtv_ext_init +EXPORT_SYMBOL drivers/media/pci/ivtv/ivtv 0x8909abf1 ivtv_firmware_check +EXPORT_SYMBOL drivers/media/pci/ivtv/ivtv 0x95c0464b ivtv_udma_alloc +EXPORT_SYMBOL drivers/media/pci/ivtv/ivtv 0x9d7aaa83 ivtv_udma_setup +EXPORT_SYMBOL drivers/media/pci/ivtv/ivtv 0xb6b4a23c ivtv_release_stream +EXPORT_SYMBOL drivers/media/pci/ivtv/ivtv 0xc4c2415f ivtv_reset_ir_gpio +EXPORT_SYMBOL drivers/media/pci/ivtv/ivtv 0xc9ad0015 ivtv_clear_irq_mask +EXPORT_SYMBOL drivers/media/pci/saa7134/saa7134 0x04e83446 saa7134_tuner_callback +EXPORT_SYMBOL drivers/media/pci/saa7134/saa7134 0x05a8ec3f saa7134_pgtable_build +EXPORT_SYMBOL drivers/media/pci/saa7134/saa7134 0x07660e86 saa7134_ts_register +EXPORT_SYMBOL drivers/media/pci/saa7134/saa7134 0x1211df5d saa7134_devlist +EXPORT_SYMBOL drivers/media/pci/saa7134/saa7134 0x18855f00 saa7134_pgtable_free +EXPORT_SYMBOL drivers/media/pci/saa7134/saa7134 0x296ff6e9 saa7134_set_dmabits +EXPORT_SYMBOL drivers/media/pci/saa7134/saa7134 0x41e2f1ce saa7134_ts_unregister +EXPORT_SYMBOL drivers/media/pci/saa7134/saa7134 0x4f728a01 saa7134_dmasound_exit +EXPORT_SYMBOL drivers/media/pci/saa7134/saa7134 0x730c4be3 saa7134_boards +EXPORT_SYMBOL drivers/media/pci/saa7134/saa7134 0x8011f72f saa7134_set_gpio +EXPORT_SYMBOL drivers/media/pci/saa7134/saa7134 0x99d696aa saa7134_dmasound_init +EXPORT_SYMBOL drivers/media/pci/saa7134/saa7134 0xb9287582 saa7134_tvaudio_setmute +EXPORT_SYMBOL drivers/media/pci/saa7134/saa7134 0xc6e9fe4c saa7134_devlist_lock +EXPORT_SYMBOL drivers/media/pci/saa7134/saa7134 0xd920274f saa7134_pgtable_alloc +EXPORT_SYMBOL drivers/media/pci/saa7134/saa7134 0xf588bdcf saa_dsp_writel +EXPORT_SYMBOL drivers/media/pci/ttpci/ttpci-eeprom 0x5c70fd6b ttpci_eeprom_parse_mac +EXPORT_SYMBOL drivers/media/pci/ttpci/ttpci-eeprom 0x693e74ba ttpci_eeprom_decode_mac +EXPORT_SYMBOL drivers/media/platform/coda/imx-vdoa 0x6671c6ea vdoa_context_configure +EXPORT_SYMBOL drivers/media/platform/coda/imx-vdoa 0x787fe8a8 vdoa_device_run +EXPORT_SYMBOL drivers/media/platform/coda/imx-vdoa 0x7fe3d6f9 vdoa_context_create +EXPORT_SYMBOL drivers/media/platform/coda/imx-vdoa 0xd96c63ec vdoa_wait_for_completion +EXPORT_SYMBOL drivers/media/platform/coda/imx-vdoa 0xfc58eef7 vdoa_context_destroy +EXPORT_SYMBOL drivers/media/platform/ti-vpe/ti-csc 0x232f208b csc_set_coeff +EXPORT_SYMBOL drivers/media/platform/ti-vpe/ti-csc 0x7ec20969 csc_dump_regs +EXPORT_SYMBOL drivers/media/platform/ti-vpe/ti-csc 0xc5d6d71c csc_set_coeff_bypass +EXPORT_SYMBOL drivers/media/platform/ti-vpe/ti-csc 0xd5ad9109 csc_create +EXPORT_SYMBOL drivers/media/platform/ti-vpe/ti-sc 0x37c3c8bb sc_set_hs_coeffs +EXPORT_SYMBOL drivers/media/platform/ti-vpe/ti-sc 0x7aeb42c8 sc_config_scaler +EXPORT_SYMBOL drivers/media/platform/ti-vpe/ti-sc 0x9217758d sc_create +EXPORT_SYMBOL drivers/media/platform/ti-vpe/ti-sc 0xe3b7dada sc_dump_regs +EXPORT_SYMBOL drivers/media/platform/ti-vpe/ti-sc 0xe4f365fe sc_set_vs_coeffs +EXPORT_SYMBOL drivers/media/platform/ti-vpe/ti-vpdma 0x157301bf vpdma_submit_descs +EXPORT_SYMBOL drivers/media/platform/ti-vpe/ti-vpdma 0x163e1a86 vpdma_free_desc_buf +EXPORT_SYMBOL drivers/media/platform/ti-vpe/ti-vpdma 0x16f0b6e4 vpdma_add_cfd_adb +EXPORT_SYMBOL drivers/media/platform/ti-vpe/ti-vpdma 0x1d8a5dbd vpdma_add_abort_channel_ctd +EXPORT_SYMBOL drivers/media/platform/ti-vpe/ti-vpdma 0x1e26321d vpdma_misc_fmts +EXPORT_SYMBOL drivers/media/platform/ti-vpe/ti-vpdma 0x2dd37ab2 vpdma_get_list_mask +EXPORT_SYMBOL drivers/media/platform/ti-vpe/ti-vpdma 0x39b22d06 vpdma_set_bg_color +EXPORT_SYMBOL drivers/media/platform/ti-vpe/ti-vpdma 0x3bb6047d vpdma_create_desc_list +EXPORT_SYMBOL drivers/media/platform/ti-vpe/ti-vpdma 0x49293b26 vpdma_yuv_fmts +EXPORT_SYMBOL drivers/media/platform/ti-vpe/ti-vpdma 0x50ec40af vpdma_rgb_fmts +EXPORT_SYMBOL drivers/media/platform/ti-vpe/ti-vpdma 0x5118bd7d vpdma_add_sync_on_channel_ctd +EXPORT_SYMBOL drivers/media/platform/ti-vpe/ti-vpdma 0x52c043fd vpdma_set_line_mode +EXPORT_SYMBOL drivers/media/platform/ti-vpe/ti-vpdma 0x60708dc6 vpdma_raw_fmts +EXPORT_SYMBOL drivers/media/platform/ti-vpe/ti-vpdma 0x65d23377 vpdma_add_in_dtd +EXPORT_SYMBOL drivers/media/platform/ti-vpe/ti-vpdma 0x664dd09f vpdma_alloc_desc_buf +EXPORT_SYMBOL drivers/media/platform/ti-vpe/ti-vpdma 0x6752273f vpdma_create +EXPORT_SYMBOL drivers/media/platform/ti-vpe/ti-vpdma 0x6b57707e vpdma_update_dma_addr +EXPORT_SYMBOL drivers/media/platform/ti-vpe/ti-vpdma 0x7502f028 vpdma_set_max_size +EXPORT_SYMBOL drivers/media/platform/ti-vpe/ti-vpdma 0x77fd8548 vpdma_list_busy +EXPORT_SYMBOL drivers/media/platform/ti-vpe/ti-vpdma 0x87c0415e vpdma_free_desc_list +EXPORT_SYMBOL drivers/media/platform/ti-vpe/ti-vpdma 0x8f3f99b8 vpdma_get_list_stat +EXPORT_SYMBOL drivers/media/platform/ti-vpe/ti-vpdma 0x97f311f0 vpdma_add_cfd_block +EXPORT_SYMBOL drivers/media/platform/ti-vpe/ti-vpdma 0x9cf58e74 vpdma_set_frame_start_event +EXPORT_SYMBOL drivers/media/platform/ti-vpe/ti-vpdma 0xaab3b384 vpdma_hwlist_alloc +EXPORT_SYMBOL drivers/media/platform/ti-vpe/ti-vpdma 0xb3183798 vpdma_hwlist_release +EXPORT_SYMBOL drivers/media/platform/ti-vpe/ti-vpdma 0xb68351b2 vpdma_map_desc_buf +EXPORT_SYMBOL drivers/media/platform/ti-vpe/ti-vpdma 0xbda246ba vpdma_list_cleanup +EXPORT_SYMBOL drivers/media/platform/ti-vpe/ti-vpdma 0xc6dcc93a vpdma_enable_list_complete_irq +EXPORT_SYMBOL drivers/media/platform/ti-vpe/ti-vpdma 0xcf7a6895 vpdma_hwlist_get_priv +EXPORT_SYMBOL drivers/media/platform/ti-vpe/ti-vpdma 0xdb48e266 vpdma_unmap_desc_buf +EXPORT_SYMBOL drivers/media/platform/ti-vpe/ti-vpdma 0xdd7f11d3 vpdma_add_out_dtd +EXPORT_SYMBOL drivers/media/platform/ti-vpe/ti-vpdma 0xe7b02140 vpdma_clear_list_stat +EXPORT_SYMBOL drivers/media/platform/ti-vpe/ti-vpdma 0xf1fad50a vpdma_dump_regs +EXPORT_SYMBOL drivers/media/platform/ti-vpe/ti-vpdma 0xf93ba9bf vpdma_reset_desc_list +EXPORT_SYMBOL drivers/media/platform/ti-vpe/ti-vpdma 0xfefbda83 vpdma_rawchan_add_out_dtd +EXPORT_SYMBOL drivers/media/radio/tea575x 0x12e91b35 snd_tea575x_set_freq +EXPORT_SYMBOL drivers/media/radio/tea575x 0x2f80f3b8 snd_tea575x_hw_init +EXPORT_SYMBOL drivers/media/radio/tea575x 0x623e2303 snd_tea575x_s_hw_freq_seek +EXPORT_SYMBOL drivers/media/radio/tea575x 0x8eafa6ab snd_tea575x_g_tuner +EXPORT_SYMBOL drivers/media/radio/tea575x 0x905f721e snd_tea575x_exit +EXPORT_SYMBOL drivers/media/radio/tea575x 0xba7d5540 snd_tea575x_init +EXPORT_SYMBOL drivers/media/radio/tea575x 0xd7ac32d2 snd_tea575x_enum_freq_bands +EXPORT_SYMBOL drivers/media/rc/rc-core 0x2ad91f6e ir_raw_gen_pl +EXPORT_SYMBOL drivers/media/rc/rc-core 0x3131b773 ir_raw_encode_scancode +EXPORT_SYMBOL drivers/media/rc/rc-core 0x4725eda1 ir_raw_encode_carrier +EXPORT_SYMBOL drivers/media/rc/rc-core 0x55e60620 ir_raw_handler_unregister +EXPORT_SYMBOL drivers/media/rc/rc-core 0x7cf52901 ir_raw_gen_manchester +EXPORT_SYMBOL drivers/media/rc/rc-core 0x9e12e343 ir_raw_gen_pd +EXPORT_SYMBOL drivers/media/rc/rc-core 0xf0fdcf66 ir_raw_handler_register +EXPORT_SYMBOL drivers/media/tuners/fc0011 0x5390d018 fc0011_attach +EXPORT_SYMBOL drivers/media/tuners/fc0012 0xd3b1cbed fc0012_attach +EXPORT_SYMBOL drivers/media/tuners/fc0013 0x5b61d9f2 fc0013_rc_cal_add +EXPORT_SYMBOL drivers/media/tuners/fc0013 0xec1343e5 fc0013_attach +EXPORT_SYMBOL drivers/media/tuners/fc0013 0xec4e0435 fc0013_rc_cal_reset +EXPORT_SYMBOL drivers/media/tuners/max2165 0x537d41fa max2165_attach +EXPORT_SYMBOL drivers/media/tuners/mc44s803 0xc839cde8 mc44s803_attach +EXPORT_SYMBOL drivers/media/tuners/mt2060 0x2d7bb3c3 mt2060_attach +EXPORT_SYMBOL drivers/media/tuners/mt2131 0x607554f7 mt2131_attach +EXPORT_SYMBOL drivers/media/tuners/mt2266 0xa2099e6e mt2266_attach +EXPORT_SYMBOL drivers/media/tuners/mxl5005s 0xe826538d mxl5005s_attach +EXPORT_SYMBOL drivers/media/tuners/qt1010 0xe854bd47 qt1010_attach +EXPORT_SYMBOL drivers/media/tuners/tda18218 0xab05e6f6 tda18218_attach +EXPORT_SYMBOL drivers/media/tuners/tuner-types 0x4c48939e tuners +EXPORT_SYMBOL drivers/media/tuners/tuner-types 0xc2821775 tuner_count +EXPORT_SYMBOL drivers/media/tuners/tuner-xc2028 0xd0c44757 xc2028_attach +EXPORT_SYMBOL drivers/media/tuners/xc4000 0x848b5fb2 xc4000_attach +EXPORT_SYMBOL drivers/media/tuners/xc5000 0x332db167 xc5000_attach +EXPORT_SYMBOL drivers/media/usb/cx231xx/cx231xx 0x508a1397 cx231xx_register_extension +EXPORT_SYMBOL drivers/media/usb/cx231xx/cx231xx 0xf1a031af cx231xx_unregister_extension +EXPORT_SYMBOL drivers/media/usb/dvb-usb-v2/dvb_usb_v2 0x09435d39 dvb_usbv2_generic_write +EXPORT_SYMBOL drivers/media/usb/dvb-usb-v2/dvb_usb_v2 0x31a9a27f dvb_usbv2_generic_rw +EXPORT_SYMBOL drivers/media/usb/dvb-usb-v2/dvb_usb_v2 0x5a2bcbe8 dvb_usbv2_suspend +EXPORT_SYMBOL drivers/media/usb/dvb-usb-v2/dvb_usb_v2 0x5dde4596 dvb_usbv2_probe +EXPORT_SYMBOL drivers/media/usb/dvb-usb-v2/dvb_usb_v2 0xb57da4a5 dvb_usbv2_generic_rw_locked +EXPORT_SYMBOL drivers/media/usb/dvb-usb-v2/dvb_usb_v2 0xba2f4a29 dvb_usbv2_resume +EXPORT_SYMBOL drivers/media/usb/dvb-usb-v2/dvb_usb_v2 0xe0a839b0 dvb_usbv2_generic_write_locked +EXPORT_SYMBOL drivers/media/usb/dvb-usb-v2/dvb_usb_v2 0xe5fe59ed dvb_usbv2_disconnect +EXPORT_SYMBOL drivers/media/usb/dvb-usb-v2/dvb_usb_v2 0xfbcd3d9c dvb_usbv2_reset_resume +EXPORT_SYMBOL drivers/media/usb/dvb-usb/dvb-usb 0x262ca6a0 dvb_usb_generic_write +EXPORT_SYMBOL drivers/media/usb/dvb-usb/dvb-usb 0x44ff9b1c dvb_usb_generic_rw +EXPORT_SYMBOL drivers/media/usb/dvb-usb/dvb-usb 0x65d933e3 dvb_usb_get_hexline +EXPORT_SYMBOL drivers/media/usb/dvb-usb/dvb-usb 0xc0644790 dvb_usb_device_init +EXPORT_SYMBOL drivers/media/usb/dvb-usb/dvb-usb 0xcbd5828f dvb_usb_device_exit +EXPORT_SYMBOL drivers/media/usb/dvb-usb/dvb-usb 0xd40b5c32 dvb_usb_nec_rc_key_to_event +EXPORT_SYMBOL drivers/media/usb/dvb-usb/dvb-usb 0xe17aa97d usb_cypress_load_firmware +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 0xc7acdeb1 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 0x252ca98a dibusb2_0_power_ctrl +EXPORT_SYMBOL drivers/media/usb/dvb-usb/dvb-usb-dibusb-common 0x26b5e8e5 dibusb_i2c_algo +EXPORT_SYMBOL drivers/media/usb/dvb-usb/dvb-usb-dibusb-common 0x3cc181b1 dibusb_power_ctrl +EXPORT_SYMBOL drivers/media/usb/dvb-usb/dvb-usb-dibusb-common 0x46b5bcef dibusb_streaming_ctrl +EXPORT_SYMBOL drivers/media/usb/dvb-usb/dvb-usb-dibusb-common 0x4fa563e2 dibusb_read_eeprom_byte +EXPORT_SYMBOL drivers/media/usb/dvb-usb/dvb-usb-dibusb-common 0x553eb312 dibusb_rc_query +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 0xa0788693 dibusb_pid_filter_ctrl +EXPORT_SYMBOL drivers/media/usb/dvb-usb/dvb-usb-dibusb-common 0xca8c5136 dibusb_pid_filter +EXPORT_SYMBOL drivers/media/usb/dvb-usb/dvb-usb-dibusb-common 0xcff85842 dibusb2_0_streaming_ctrl +EXPORT_SYMBOL drivers/media/usb/dvb-usb/dvb-usb-dibusb-mc-common 0x084e19a0 dibusb_dib3000mc_frontend_attach +EXPORT_SYMBOL drivers/media/usb/dvb-usb/dvb-usb-dibusb-mc-common 0x7eee7773 dibusb_dib3000mc_tuner_attach +EXPORT_SYMBOL drivers/media/usb/em28xx/em28xx 0x3227c396 em28xx_register_extension +EXPORT_SYMBOL drivers/media/usb/em28xx/em28xx 0xddad74ab em28xx_unregister_extension +EXPORT_SYMBOL drivers/media/usb/go7007/go7007 0x022d657f go7007_snd_remove +EXPORT_SYMBOL drivers/media/usb/go7007/go7007 0x175dbfe3 go7007_boot_encoder +EXPORT_SYMBOL drivers/media/usb/go7007/go7007 0x71abf8be go7007_update_board +EXPORT_SYMBOL drivers/media/usb/go7007/go7007 0x8eb2b2bb go7007_parse_video_stream +EXPORT_SYMBOL drivers/media/usb/go7007/go7007 0xb040fa8e go7007_register_encoder +EXPORT_SYMBOL drivers/media/usb/go7007/go7007 0xb41ca613 go7007_snd_init +EXPORT_SYMBOL drivers/media/usb/go7007/go7007 0xdd7c171a go7007_alloc +EXPORT_SYMBOL drivers/media/usb/go7007/go7007 0xddd1d1ac go7007_read_addr +EXPORT_SYMBOL drivers/media/usb/go7007/go7007 0xed52c0bf go7007_read_interrupt +EXPORT_SYMBOL drivers/media/usb/gspca/gspca_main 0x26d2638f gspca_resume +EXPORT_SYMBOL drivers/media/usb/gspca/gspca_main 0x2e90e065 gspca_disconnect +EXPORT_SYMBOL drivers/media/usb/gspca/gspca_main 0x36f648ab gspca_suspend +EXPORT_SYMBOL drivers/media/usb/gspca/gspca_main 0x37ae0518 gspca_coarse_grained_expo_autogain +EXPORT_SYMBOL drivers/media/usb/gspca/gspca_main 0x81c65356 gspca_frame_add +EXPORT_SYMBOL drivers/media/usb/gspca/gspca_main 0x9670af2c gspca_debug +EXPORT_SYMBOL drivers/media/usb/gspca/gspca_main 0xb7350203 gspca_dev_probe +EXPORT_SYMBOL drivers/media/usb/gspca/gspca_main 0xd15b4a80 gspca_dev_probe2 +EXPORT_SYMBOL drivers/media/usb/gspca/gspca_main 0xfea269d5 gspca_expo_autogain +EXPORT_SYMBOL drivers/media/usb/tm6000/tm6000 0xa60fd691 tm6000_init_digital_mode +EXPORT_SYMBOL drivers/media/usb/tm6000/tm6000 0xacc4894c tm6000_unregister_extension +EXPORT_SYMBOL drivers/media/usb/tm6000/tm6000 0xf93afccb tm6000_register_extension +EXPORT_SYMBOL drivers/media/usb/ttusb-dec/ttusbdecfe 0x01c6ae00 ttusbdecfe_dvbt_attach +EXPORT_SYMBOL drivers/media/usb/ttusb-dec/ttusbdecfe 0x2a01afca ttusbdecfe_dvbs_attach +EXPORT_SYMBOL drivers/media/v4l2-core/v4l2-mem2mem 0x06ef6a8f v4l2_m2m_get_vq +EXPORT_SYMBOL drivers/media/v4l2-core/v4l2-mem2mem 0x459e133f v4l2_m2m_get_curr_priv +EXPORT_SYMBOL drivers/media/v4l2-core/v4l2-mem2mem 0x51835f3c v4l2_m2m_mmap +EXPORT_SYMBOL drivers/media/v4l2-core/v4l2-mem2mem 0x62c3e6c6 v4l2_m2m_buf_done_and_job_finish +EXPORT_SYMBOL drivers/media/v4l2-core/v4l2-mem2mem 0xce4c38b6 v4l2_m2m_job_finish +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x02a37922 v4l2_ctrl_handler_init_class +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 0x0845865a video_devdata +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x0990858a v4l2_async_unregister_subdev +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x0b8f08b2 v4l2_ctrl_notify +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x0f846036 v4l2_ctrl_new_std_menu_items +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 0x18836d6d v4l2_ctrl_poll +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x213a0947 v4l2_ctrl_new_int_menu +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x2342f1ae v4l2_prio_open +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x28b12cc9 v4l2_format_info +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x29daf375 v4l2_ctrl_add_handler +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x30135616 __v4l2_clk_register_fixed +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 0x3825352b v4l2_ctrl_subdev_log_status +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x3adbd595 v4l2_field_names +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x3bdd0f94 v4l2_prio_change +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x3f9793d0 v4l2_async_subdev_notifier_register +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x4156b452 __v4l2_ctrl_s_ctrl_string +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x41fe856a v4l2_s_ctrl +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x42d432b1 v4l2_clk_disable +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x443cbba1 v4l2_ctrl_find +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x4ae9a1d7 v4l2_ctrl_handler_log_status +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x4be0dd80 v4l2_ctrl_activate +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x502b4aaf video_device_release_empty +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x5650a2c8 __v4l2_ctrl_s_ctrl_compound +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x6439ded6 v4l2_ctrl_radio_filter +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x654ec349 v4l2_async_notifier_init +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x6da5b22b v4l2_async_notifier_register +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x6da8c550 v4l2_clk_register +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x7b7228af v4l2_subdev_init +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x7d24b1d3 __v4l2_ctrl_grab +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x7e0fb4aa v4l2_ctrl_new_std +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x7ef88c98 v4l2_ctrl_subscribe_event +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x8106095a v4l2_prio_max +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x81c921d0 v4l2_ctrl_sub_ev_ops +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x824d74b5 v4l2_s_ext_ctrls +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x8280534c v4l2_ctrl_fill +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x89cb6ebc v4l2_clk_get_rate +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x89e3897d v4l2_ctrl_query_fill +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x8da85fee v4l2_try_ext_ctrls +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x90e8df8a v4l2_g_ctrl +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x924b9abf v4l2_query_ext_ctrl +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x95a6e4e6 v4l2_queryctrl +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x9b341dc6 v4l2_ctrl_log_status +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xa11bfb9f video_ioctl2 +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xa204cc97 v4l2_clk_put +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xa20933e0 video_device_alloc +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xa499366a v4l2_ctrl_request_setup +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xa608e863 v4l2_clk_unregister +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xa6d2ec1e v4l2_ctrl_handler_free +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xa7461acf v4l2_ctrl_subdev_subscribe_event +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xaee2e197 v4l2_clk_unregister_fixed +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xb07f1970 v4l2_clk_get +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xb415b6d6 v4l2_clk_set_rate +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xb50b47d7 __video_register_device +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xb6fcea3b v4l2_ctrl_handler_setup +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xb77b0159 v4l2_prio_init +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xb7864a3c v4l2_ctrl_auto_cluster +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xb7d4aee1 v4l2_ctrl_new_fwnode_properties +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xb9f20fc9 v4l2_clk_enable +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xba4adef1 v4l2_async_notifier_unregister +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xbc5671dc v4l_printk_ioctl +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xc2b49182 v4l2_ctrl_request_complete +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xc2f647fd v4l2_ctrl_g_ctrl_int64 +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xc38af9cf __v4l2_ctrl_s_ctrl_int64 +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xccd2eb0a v4l2_ctrl_new_custom +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 0xd2bb9741 video_device_release +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xd58b1d9b v4l2_ctrl_g_ctrl +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xd6ac6110 __v4l2_ctrl_s_ctrl +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xdbbc64d8 v4l2_async_register_subdev +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xdf32d3d7 v4l2_subdev_call_wrappers +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xe1bb43e5 v4l2_querymenu +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xe2b92059 v4l2_video_std_construct +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xe3b50711 v4l2_ctrl_new_std_menu +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xefe1222d v4l2_ctrl_new_std_compound +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xf2a0dae0 __v4l2_ctrl_modify_range +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 0xf8f325ed v4l2_g_ext_ctrls +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xfb27ea2d v4l2_ctrl_cluster +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xff5daed8 video_unregister_device +EXPORT_SYMBOL drivers/memstick/core/memstick 0x0d248968 memstick_alloc_host +EXPORT_SYMBOL drivers/memstick/core/memstick 0x0ddedf7e memstick_resume_host +EXPORT_SYMBOL drivers/memstick/core/memstick 0x183fe2eb memstick_suspend_host +EXPORT_SYMBOL drivers/memstick/core/memstick 0x21879aa7 memstick_detect_change +EXPORT_SYMBOL drivers/memstick/core/memstick 0x2660cac4 memstick_new_req +EXPORT_SYMBOL drivers/memstick/core/memstick 0x2bb82f81 memstick_set_rw_addr +EXPORT_SYMBOL drivers/memstick/core/memstick 0x3ab058a6 memstick_init_req +EXPORT_SYMBOL drivers/memstick/core/memstick 0x3edad53b memstick_unregister_driver +EXPORT_SYMBOL drivers/memstick/core/memstick 0x566c8812 memstick_remove_host +EXPORT_SYMBOL drivers/memstick/core/memstick 0x6c5bf3ea memstick_init_req_sg +EXPORT_SYMBOL drivers/memstick/core/memstick 0x75f77cfb memstick_register_driver +EXPORT_SYMBOL drivers/memstick/core/memstick 0x88067382 memstick_add_host +EXPORT_SYMBOL drivers/memstick/core/memstick 0xa7b3019f memstick_next_req +EXPORT_SYMBOL drivers/memstick/core/memstick 0xea987511 memstick_free_host +EXPORT_SYMBOL drivers/memstick/host/r592 0x52f1b23b memstick_debug_get_tpc_name +EXPORT_SYMBOL drivers/message/fusion/mptbase 0x040fc2e9 mpt_suspend +EXPORT_SYMBOL drivers/message/fusion/mptbase 0x053d17ad mpt_HardResetHandler +EXPORT_SYMBOL drivers/message/fusion/mptbase 0x0e328068 mpt_raid_phys_disk_get_num_paths +EXPORT_SYMBOL drivers/message/fusion/mptbase 0x1147508d mpt_event_register +EXPORT_SYMBOL drivers/message/fusion/mptbase 0x16387234 mpt_set_taskmgmt_in_progress_flag +EXPORT_SYMBOL drivers/message/fusion/mptbase 0x2e7c075a mptbase_sas_persist_operation +EXPORT_SYMBOL drivers/message/fusion/mptbase 0x35319a54 mpt_register +EXPORT_SYMBOL drivers/message/fusion/mptbase 0x3a6258ee mpt_config +EXPORT_SYMBOL drivers/message/fusion/mptbase 0x3d34e96b mpt_GetIocState +EXPORT_SYMBOL drivers/message/fusion/mptbase 0x47037af2 mpt_Soft_Hard_ResetHandler +EXPORT_SYMBOL drivers/message/fusion/mptbase 0x4862eb7f mpt_verify_adapter +EXPORT_SYMBOL drivers/message/fusion/mptbase 0x48d56bc8 mpt_reset_register +EXPORT_SYMBOL drivers/message/fusion/mptbase 0x4f22c2fa mpt_raid_phys_disk_pg0 +EXPORT_SYMBOL drivers/message/fusion/mptbase 0x4f363380 mpt_free_fw_memory +EXPORT_SYMBOL drivers/message/fusion/mptbase 0x502108d0 mpt_fwfault_debug +EXPORT_SYMBOL drivers/message/fusion/mptbase 0x5550d5d8 mpt_raid_phys_disk_pg1 +EXPORT_SYMBOL drivers/message/fusion/mptbase 0x59b9a302 mpt_free_msg_frame +EXPORT_SYMBOL drivers/message/fusion/mptbase 0x5d6741a3 mpt_resume +EXPORT_SYMBOL drivers/message/fusion/mptbase 0x610b257e mpt_reset_deregister +EXPORT_SYMBOL drivers/message/fusion/mptbase 0x66505d7d mpt_send_handshake_request +EXPORT_SYMBOL drivers/message/fusion/mptbase 0x713dd983 mpt_halt_firmware +EXPORT_SYMBOL drivers/message/fusion/mptbase 0x7313712b mpt_attach +EXPORT_SYMBOL drivers/message/fusion/mptbase 0x74a0134a mpt_device_driver_deregister +EXPORT_SYMBOL drivers/message/fusion/mptbase 0x8fabe534 mpt_detach +EXPORT_SYMBOL drivers/message/fusion/mptbase 0x981efe92 mpt_deregister +EXPORT_SYMBOL drivers/message/fusion/mptbase 0x9a568b12 mpt_print_ioc_summary +EXPORT_SYMBOL drivers/message/fusion/mptbase 0xad9ae5ad mpt_alloc_fw_memory +EXPORT_SYMBOL drivers/message/fusion/mptbase 0xca222ed3 mpt_get_msg_frame +EXPORT_SYMBOL drivers/message/fusion/mptbase 0xca8b37f8 mpt_device_driver_register +EXPORT_SYMBOL drivers/message/fusion/mptbase 0xcf64c09b mpt_put_msg_frame +EXPORT_SYMBOL drivers/message/fusion/mptbase 0xd6f838a9 mpt_put_msg_frame_hi_pri +EXPORT_SYMBOL drivers/message/fusion/mptbase 0xdd805159 ioc_list +EXPORT_SYMBOL drivers/message/fusion/mptbase 0xe475a96c mpt_clear_taskmgmt_in_progress_flag +EXPORT_SYMBOL drivers/message/fusion/mptbase 0xe6c1e126 mpt_event_deregister +EXPORT_SYMBOL drivers/message/fusion/mptbase 0xfc7ced39 mpt_findImVolumes +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0x0ddb96be mptscsih_event_process +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0x175c2fbb mptscsih_change_queue_depth +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0x1b03fdca mptscsih_slave_configure +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0x2382e543 mptscsih_dev_reset +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0x2770560a mptscsih_taskmgmt_complete +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0x27eb62f1 mptscsih_raid_id_to_num +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0x2adad4bd mptscsih_info +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0x3476dd35 mptscsih_IssueTaskMgmt +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0x3fefa327 mptscsih_bus_reset +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0x48ab7469 mptscsih_show_info +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0x4c3d1f0c mptscsih_host_reset +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0x4e304548 mptscsih_slave_destroy +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0x82960bd9 mptscsih_io_done +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0x8c7c92e2 mptscsih_bios_param +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0x8cdfe7f4 mptscsih_taskmgmt_response_code +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0x93f57152 mptscsih_get_scsi_lookup +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0x9aacee1f mptscsih_scandv_complete +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0xa106c0da mptscsih_qcmd +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0xa942e227 mptscsih_flush_running_cmds +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0xad1d5ec3 mptscsih_suspend +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0xc4d45a84 mptscsih_is_phys_disk +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0xc6df6d0e mptscsih_remove +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0xc9d6b6e1 mptscsih_shutdown +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0xde4011f8 mptscsih_resume +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0xef28dfa3 mptscsih_ioc_reset +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0xf019ca64 mptscsih_abort +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0xf3defd3b mptscsih_host_attrs +EXPORT_SYMBOL drivers/mfd/axp20x 0x123d001e axp20x_match_device +EXPORT_SYMBOL drivers/mfd/axp20x 0x1a4315c1 axp20x_device_probe +EXPORT_SYMBOL drivers/mfd/axp20x 0x426819cd axp20x_device_remove +EXPORT_SYMBOL drivers/mfd/dln2 0x21c51552 dln2_transfer +EXPORT_SYMBOL drivers/mfd/dln2 0x31af3dc3 dln2_unregister_event_cb +EXPORT_SYMBOL drivers/mfd/dln2 0x75c26244 dln2_register_event_cb +EXPORT_SYMBOL drivers/mfd/htc-pasic3 0x7664dd69 pasic3_read_register +EXPORT_SYMBOL drivers/mfd/htc-pasic3 0xde1e6d95 pasic3_write_register +EXPORT_SYMBOL drivers/mfd/mc13xxx-core 0x05742be6 mc13xxx_reg_read +EXPORT_SYMBOL drivers/mfd/mc13xxx-core 0x05f53a1a mc13xxx_reg_rmw +EXPORT_SYMBOL drivers/mfd/mc13xxx-core 0x54aa9fe3 mc13xxx_irq_request +EXPORT_SYMBOL drivers/mfd/mc13xxx-core 0x5a21ae4c mc13xxx_unlock +EXPORT_SYMBOL drivers/mfd/mc13xxx-core 0x73680d8f mc13xxx_reg_write +EXPORT_SYMBOL drivers/mfd/mc13xxx-core 0x7af25dfe mc13xxx_lock +EXPORT_SYMBOL drivers/mfd/mc13xxx-core 0xa1f92409 mc13xxx_irq_status +EXPORT_SYMBOL drivers/mfd/mc13xxx-core 0xa6fd325a mc13xxx_irq_free +EXPORT_SYMBOL drivers/mfd/mc13xxx-core 0xabef2716 mc13xxx_irq_mask +EXPORT_SYMBOL drivers/mfd/mc13xxx-core 0xb7791127 mc13xxx_irq_unmask +EXPORT_SYMBOL drivers/mfd/mc13xxx-core 0xee8703dd mc13xxx_get_flags +EXPORT_SYMBOL drivers/mfd/qcom_rpm 0x832aed94 qcom_rpm_write +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 0x07d637f5 wm8994_base_regmap_config +EXPORT_SYMBOL drivers/mfd/wm8994 0x46dd6526 wm8994_regmap_config +EXPORT_SYMBOL drivers/mfd/wm8994 0x49488977 wm8994_irq_init +EXPORT_SYMBOL drivers/mfd/wm8994 0x74e7debf wm8958_regmap_config +EXPORT_SYMBOL drivers/mfd/wm8994 0xdc6d9439 wm8994_irq_exit +EXPORT_SYMBOL drivers/mfd/wm8994 0xeb85dc92 wm1811_regmap_config +EXPORT_SYMBOL drivers/misc/ad525x_dpot 0xc9909171 ad_dpot_remove +EXPORT_SYMBOL drivers/misc/ad525x_dpot 0xf0782faa ad_dpot_probe +EXPORT_SYMBOL drivers/misc/altera-stapl/altera-stapl 0x2fb85933 altera_init +EXPORT_SYMBOL drivers/misc/c2port/core 0x07b314c5 c2port_device_unregister +EXPORT_SYMBOL drivers/misc/c2port/core 0x580e0914 c2port_device_register +EXPORT_SYMBOL drivers/misc/tifm_core 0x0c937743 tifm_alloc_adapter +EXPORT_SYMBOL drivers/misc/tifm_core 0x39f86aa1 tifm_queue_work +EXPORT_SYMBOL drivers/misc/tifm_core 0x41d3b6cb tifm_free_device +EXPORT_SYMBOL drivers/misc/tifm_core 0x43833532 tifm_unregister_driver +EXPORT_SYMBOL drivers/misc/tifm_core 0x4d70d8af tifm_alloc_device +EXPORT_SYMBOL drivers/misc/tifm_core 0x4d9c17da tifm_has_ms_pif +EXPORT_SYMBOL drivers/misc/tifm_core 0x5a51a639 tifm_map_sg +EXPORT_SYMBOL drivers/misc/tifm_core 0x70db38ce tifm_free_adapter +EXPORT_SYMBOL drivers/misc/tifm_core 0x838bc02f tifm_remove_adapter +EXPORT_SYMBOL drivers/misc/tifm_core 0x85a2463b tifm_eject +EXPORT_SYMBOL drivers/misc/tifm_core 0xa5ef71cf tifm_unmap_sg +EXPORT_SYMBOL drivers/misc/tifm_core 0xc3849441 tifm_register_driver +EXPORT_SYMBOL drivers/misc/tifm_core 0xf96a1c25 tifm_add_adapter +EXPORT_SYMBOL drivers/mmc/host/dw_mmc 0x113a3dfb dw_mci_remove +EXPORT_SYMBOL drivers/mmc/host/dw_mmc 0x4a9aac79 dw_mci_runtime_suspend +EXPORT_SYMBOL drivers/mmc/host/dw_mmc 0x942ae46e dw_mci_runtime_resume +EXPORT_SYMBOL drivers/mmc/host/dw_mmc 0xb947a9ac dw_mci_probe +EXPORT_SYMBOL drivers/mmc/host/of_mmc_spi 0x01ff5f50 mmc_spi_put_pdata +EXPORT_SYMBOL drivers/mmc/host/of_mmc_spi 0x3bf91c94 mmc_spi_get_pdata +EXPORT_SYMBOL drivers/mtd/chips/cfi_util 0x288b34b9 cfi_build_cmd_addr +EXPORT_SYMBOL drivers/mtd/chips/cfi_util 0x33e282bd cfi_varsize_frob +EXPORT_SYMBOL drivers/mtd/chips/cfi_util 0x5443fc72 cfi_fixup +EXPORT_SYMBOL drivers/mtd/chips/cfi_util 0x6f12b5ce cfi_send_gen_cmd +EXPORT_SYMBOL drivers/mtd/chips/cfi_util 0xbaa5ef47 cfi_merge_status +EXPORT_SYMBOL drivers/mtd/chips/cfi_util 0xd9825bf8 cfi_read_pri +EXPORT_SYMBOL drivers/mtd/chips/cfi_util 0xff9fa623 cfi_udelay +EXPORT_SYMBOL drivers/mtd/chips/cfi_util 0xffc0de67 cfi_build_cmd +EXPORT_SYMBOL drivers/mtd/chips/gen_probe 0x360a9201 mtd_do_chip_probe +EXPORT_SYMBOL drivers/mtd/lpddr/lpddr_cmds 0x2e4d67be lpddr_cmdset +EXPORT_SYMBOL drivers/mtd/nand/onenand/onenand 0x56ace192 flexonenand_region +EXPORT_SYMBOL drivers/mtd/nand/onenand/onenand 0xfb49f88a onenand_addr +EXPORT_SYMBOL drivers/mtd/nand/raw/denali 0x30db096f denali_calc_ecc_bytes +EXPORT_SYMBOL drivers/mtd/nand/raw/denali 0x8caf5809 denali_init +EXPORT_SYMBOL drivers/mtd/nand/raw/denali 0xa9f48758 denali_remove +EXPORT_SYMBOL drivers/mtd/nand/raw/mtk_ecc 0x102603bc mtk_ecc_get_parity_bits +EXPORT_SYMBOL drivers/mtd/nand/raw/mtk_ecc 0x1417f42c of_mtk_ecc_get +EXPORT_SYMBOL drivers/mtd/nand/raw/mtk_ecc 0x24351100 mtk_ecc_enable +EXPORT_SYMBOL drivers/mtd/nand/raw/mtk_ecc 0x5437e775 mtk_ecc_disable +EXPORT_SYMBOL drivers/mtd/nand/raw/mtk_ecc 0x5de55d81 mtk_ecc_get_stats +EXPORT_SYMBOL drivers/mtd/nand/raw/mtk_ecc 0x6df58afb mtk_ecc_release +EXPORT_SYMBOL drivers/mtd/nand/raw/mtk_ecc 0x76e53683 mtk_ecc_wait_done +EXPORT_SYMBOL drivers/mtd/nand/raw/mtk_ecc 0x7eb47fa9 mtk_ecc_encode +EXPORT_SYMBOL drivers/mtd/nand/raw/mtk_ecc 0xda64ef4a mtk_ecc_adjust_strength +EXPORT_SYMBOL drivers/net/arcnet/arcnet 0x1165dc0d arc_proto_default +EXPORT_SYMBOL drivers/net/arcnet/arcnet 0x22593684 arcnet_open +EXPORT_SYMBOL drivers/net/arcnet/arcnet 0x2c8ea7db arc_proto_map +EXPORT_SYMBOL drivers/net/arcnet/arcnet 0x35c6304f arcnet_close +EXPORT_SYMBOL drivers/net/arcnet/arcnet 0x483b442d arc_raw_proto +EXPORT_SYMBOL drivers/net/arcnet/arcnet 0x6534792a arcnet_debug +EXPORT_SYMBOL drivers/net/arcnet/arcnet 0x95f6e712 arcnet_timeout +EXPORT_SYMBOL drivers/net/arcnet/arcnet 0xaeffebbd alloc_arcdev +EXPORT_SYMBOL drivers/net/arcnet/arcnet 0xbb044b5d arcnet_unregister_proto +EXPORT_SYMBOL drivers/net/arcnet/arcnet 0xecb730b0 arcnet_interrupt +EXPORT_SYMBOL drivers/net/arcnet/arcnet 0xef1d9303 arc_bcast_proto +EXPORT_SYMBOL drivers/net/arcnet/arcnet 0xfe65bf93 arcnet_send_packet +EXPORT_SYMBOL drivers/net/arcnet/com20020 0x3d1e78c3 com20020_check +EXPORT_SYMBOL drivers/net/arcnet/com20020 0x4fe1a641 com20020_netdev_ops +EXPORT_SYMBOL drivers/net/arcnet/com20020 0x50966875 com20020_found +EXPORT_SYMBOL drivers/net/dsa/b53/b53_common 0x07401f23 b53_enable_port +EXPORT_SYMBOL drivers/net/dsa/b53/b53_common 0x08a82a91 b53_get_strings +EXPORT_SYMBOL drivers/net/dsa/b53/b53_common 0x0c37d1c3 b53_phylink_mac_link_down +EXPORT_SYMBOL drivers/net/dsa/b53/b53_common 0x0f7a8f85 b53_phylink_mac_link_up +EXPORT_SYMBOL drivers/net/dsa/b53/b53_common 0x14187355 b53_switch_register +EXPORT_SYMBOL drivers/net/dsa/b53/b53_common 0x15892311 b53_vlan_filtering +EXPORT_SYMBOL drivers/net/dsa/b53/b53_common 0x167f428e b53_port_event +EXPORT_SYMBOL drivers/net/dsa/b53/b53_common 0x185a9587 b53_br_egress_floods +EXPORT_SYMBOL drivers/net/dsa/b53/b53_common 0x18deafb6 b53_get_mac_eee +EXPORT_SYMBOL drivers/net/dsa/b53/b53_common 0x279b354f b53_set_mac_eee +EXPORT_SYMBOL drivers/net/dsa/b53/b53_common 0x32434079 b53_fdb_add +EXPORT_SYMBOL drivers/net/dsa/b53/b53_common 0x325ff3fe b53_eee_enable_set +EXPORT_SYMBOL drivers/net/dsa/b53/b53_common 0x33c9e5a9 b53_switch_alloc +EXPORT_SYMBOL drivers/net/dsa/b53/b53_common 0x36d3f3dd b53_configure_vlan +EXPORT_SYMBOL drivers/net/dsa/b53/b53_common 0x5626d9f9 b53_br_join +EXPORT_SYMBOL drivers/net/dsa/b53/b53_common 0x594ebbd6 b53_vlan_prepare +EXPORT_SYMBOL drivers/net/dsa/b53/b53_common 0x5ae82b9a b53_disable_port +EXPORT_SYMBOL drivers/net/dsa/b53/b53_common 0x5b708bb5 b53_brcm_hdr_setup +EXPORT_SYMBOL drivers/net/dsa/b53/b53_common 0x6ae6abec b53_fdb_dump +EXPORT_SYMBOL drivers/net/dsa/b53/b53_common 0x74b9a7b6 b53_get_ethtool_phy_stats +EXPORT_SYMBOL drivers/net/dsa/b53/b53_common 0x74d7a6fa b53_br_set_stp_state +EXPORT_SYMBOL drivers/net/dsa/b53/b53_common 0x79a3c189 b53_imp_vlan_setup +EXPORT_SYMBOL drivers/net/dsa/b53/b53_common 0x7ab6b194 b53_br_leave +EXPORT_SYMBOL drivers/net/dsa/b53/b53_common 0x7f78a97c b53_fdb_del +EXPORT_SYMBOL drivers/net/dsa/b53/b53_common 0x8184ef43 b53_phylink_mac_link_state +EXPORT_SYMBOL drivers/net/dsa/b53/b53_common 0x8361aa12 b53_mirror_add +EXPORT_SYMBOL drivers/net/dsa/b53/b53_common 0x939c3e05 b53_vlan_add +EXPORT_SYMBOL drivers/net/dsa/b53/b53_common 0x93dd1096 b53_phylink_mac_config +EXPORT_SYMBOL drivers/net/dsa/b53/b53_common 0x984b9aed b53_mdb_add +EXPORT_SYMBOL drivers/net/dsa/b53/b53_common 0xa8b14b32 b53_get_tag_protocol +EXPORT_SYMBOL drivers/net/dsa/b53/b53_common 0xb6c4a104 b53_br_fast_age +EXPORT_SYMBOL drivers/net/dsa/b53/b53_common 0xc16767e5 b53_eee_init +EXPORT_SYMBOL drivers/net/dsa/b53/b53_common 0xd789a9da b53_switch_detect +EXPORT_SYMBOL drivers/net/dsa/b53/b53_common 0xd8e8f9da b53_mdb_prepare +EXPORT_SYMBOL drivers/net/dsa/b53/b53_common 0xdb39ffeb b53_get_sset_count +EXPORT_SYMBOL drivers/net/dsa/b53/b53_common 0xe2944f8e b53_get_ethtool_stats +EXPORT_SYMBOL drivers/net/dsa/b53/b53_common 0xec1955ef b53_mirror_del +EXPORT_SYMBOL drivers/net/dsa/b53/b53_common 0xf020a4c7 b53_vlan_del +EXPORT_SYMBOL drivers/net/dsa/b53/b53_common 0xf59db05d b53_phylink_validate +EXPORT_SYMBOL drivers/net/dsa/b53/b53_common 0xfc0bb660 b53_mdb_del +EXPORT_SYMBOL drivers/net/dsa/b53/b53_common 0xfc602b2b b53_phylink_mac_an_restart +EXPORT_SYMBOL drivers/net/dsa/b53/b53_serdes 0x3618a832 b53_serdes_link_state +EXPORT_SYMBOL drivers/net/dsa/b53/b53_serdes 0x51dec574 b53_serdes_config +EXPORT_SYMBOL drivers/net/dsa/b53/b53_serdes 0x76d8c2ab b53_serdes_init +EXPORT_SYMBOL drivers/net/dsa/b53/b53_serdes 0xad4e83f7 b53_serdes_phylink_validate +EXPORT_SYMBOL drivers/net/dsa/b53/b53_serdes 0xdec8a5b3 b53_serdes_an_restart +EXPORT_SYMBOL drivers/net/dsa/b53/b53_serdes 0xefd75587 b53_serdes_link_set +EXPORT_SYMBOL drivers/net/dsa/lan9303-core 0x3e05efc1 lan9303_remove +EXPORT_SYMBOL drivers/net/dsa/lan9303-core 0xada83f40 lan9303_register_set +EXPORT_SYMBOL drivers/net/dsa/lan9303-core 0xdf665994 lan9303_probe +EXPORT_SYMBOL drivers/net/dsa/microchip/ksz8795 0x3e0400da ksz8795_switch_register +EXPORT_SYMBOL drivers/net/dsa/microchip/ksz9477 0xee253ded ksz9477_switch_register +EXPORT_SYMBOL drivers/net/dsa/microchip/ksz_common 0x14714eb8 ksz_switch_remove +EXPORT_SYMBOL drivers/net/dsa/microchip/ksz_common 0xab37004f ksz_switch_register +EXPORT_SYMBOL drivers/net/dsa/microchip/ksz_common 0xe8df2d29 ksz_switch_alloc +EXPORT_SYMBOL drivers/net/dsa/vitesse-vsc73xx-core 0x2375c76a vsc73xx_remove +EXPORT_SYMBOL drivers/net/dsa/vitesse-vsc73xx-core 0x30691c33 vsc73xx_probe +EXPORT_SYMBOL drivers/net/dsa/vitesse-vsc73xx-core 0x99d242fe vsc73xx_is_addr_valid +EXPORT_SYMBOL drivers/net/ethernet/8390/8390 0x119721ac ei_interrupt +EXPORT_SYMBOL drivers/net/ethernet/8390/8390 0x39d28c03 NS8390_init +EXPORT_SYMBOL drivers/net/ethernet/8390/8390 0x591dbaa6 ei_tx_timeout +EXPORT_SYMBOL drivers/net/ethernet/8390/8390 0x5f2c1404 ei_close +EXPORT_SYMBOL drivers/net/ethernet/8390/8390 0x6cdb36db __alloc_ei_netdev +EXPORT_SYMBOL drivers/net/ethernet/8390/8390 0x7fa86f06 ei_poll +EXPORT_SYMBOL drivers/net/ethernet/8390/8390 0x914017dd ei_set_multicast_list +EXPORT_SYMBOL drivers/net/ethernet/8390/8390 0x9527e95d ei_start_xmit +EXPORT_SYMBOL drivers/net/ethernet/8390/8390 0xa6f99d99 ei_open +EXPORT_SYMBOL drivers/net/ethernet/8390/8390 0xe522a3b6 ei_netdev_ops +EXPORT_SYMBOL drivers/net/ethernet/8390/8390 0xec2ea7ac ei_get_stats +EXPORT_SYMBOL drivers/net/ethernet/broadcom/cnic 0x636af174 cnic_unregister_driver +EXPORT_SYMBOL drivers/net/ethernet/broadcom/cnic 0xa18dac3f cnic_register_driver +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb3/cxgb3 0x17ca4b32 cxgb3_queue_tid_release +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb3/cxgb3 0x1a370bf2 cxgb3_insert_tid +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb3/cxgb3 0x1b81d061 cxgb3_unregister_client +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb3/cxgb3 0x32564f96 cxgb3_remove_tid +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb3/cxgb3 0x453dc211 cxgb3_alloc_atid +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb3/cxgb3 0x569394f3 t3_l2t_get +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb3/cxgb3 0x7b16acc2 cxgb3_free_atid +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb3/cxgb3 0x9aa496df cxgb3_ofld_send +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb3/cxgb3 0x9c825a1d cxgb3_free_stid +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb3/cxgb3 0xa5c4ef30 cxgb3_register_client +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb3/cxgb3 0xafcf8365 t3_l2t_send_slow +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb3/cxgb3 0xea10e03a cxgb3_alloc_stid +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb3/cxgb3 0xedfbc2ac t3_l2e_free +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb3/cxgb3 0xef4df33f t3_l2t_send_event +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb3/cxgb3 0xf94f5a82 dev2t3cdev +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb3/cxgb3 0xfd9f79e3 t3_register_cpl_handler +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0x05374980 cxgb4_flush_eq_cache +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0x0d51cd72 cxgb4_port_idx +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0x0f8e668f cxgb4_map_skb +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0x13e37ad8 cxgb4_remove_tid +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0x1fdf468b cxgb4_port_chan +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0x2ae7ebfc cxgb4_l2t_get +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0x2da5b5ae t4_cleanup_clip_tbl +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0x32b8cd4e cxgb4_get_tcp_stats +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0x3ff13965 cxgb4_read_sge_timestamp +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0x47b1f4d5 cxgb4_create_server_filter +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0x4d0f5158 cxgb4_register_uld +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0x4ec72a5a cxgb4_select_ntuple +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0x50ee5c07 cxgb4_best_aligned_mtu +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0x5e31587d cxgb4_ofld_send +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0x5fdc7c67 cxgb4_write_sgl +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0x6176202e cxgb4_check_l2t_valid +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0x61cda87a cxgb4_create_server +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0x676a11a9 cxgb4_unregister_uld +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0x68e1160d cxgb4_clip_get +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0x692a51ba cxgb4_port_e2cchan +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0x69e3beb1 cxgb4_clip_release +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0x6f707dad cxgb4_update_root_dev_clip +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0x74b1ae40 cxgb4_free_stid +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0x765494ac cxgb4_iscsi_init +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0x7dd7d5ee cxgb4_inline_tx_skb +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0x7fe90a25 cxgb4_pktgl_to_skb +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0x865c2f4c cxgb4_alloc_atid +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0x88ad09c6 cxgb4_get_srq_entry +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0x93d0e032 cxgb4_l2t_release +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0x975c9b5e cxgb4_reclaim_completed_tx +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0x97f62705 cxgb4_remove_server_filter +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0x9f464ba2 cxgb4_port_viid +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0xa692a8c1 cxgb4_immdata_send +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0xad77194b cxgb4_alloc_sftid +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0xb4bf6d68 cxgb4_dbfifo_count +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0xb5b6554b cxgb4_create_server6 +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0xd259e854 cxgb4_free_atid +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0xd3e78458 cxgb4_ring_tx_db +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0xd69a0294 cxgb4_best_mtu +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0xd7290f66 cxgb4_crypto_send +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0xdc324e47 cxgb4_alloc_stid +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0xded2869b cxgb4_smt_release +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0xdfba592a cxgb4_smt_alloc_switching +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0xeabeadda cxgb4_sync_txq_pidx +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0xf0093ce7 cxgb4_read_tpte +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0xf06be58d cxgb4_remove_server +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0xf4af8837 cxgb4_l2t_alloc_switching +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0xf9e3d1ce cxgb4_l2t_send +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0xfde44a44 cxgb4_bar2_sge_qregs +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 0x3737a3b9 cxgbi_ppm_ppod_release +EXPORT_SYMBOL drivers/net/ethernet/chelsio/libcxgb/libcxgb 0x47a6905f cxgb_find_route +EXPORT_SYMBOL drivers/net/ethernet/chelsio/libcxgb/libcxgb 0x7fce094a cxgbi_ppm_release +EXPORT_SYMBOL drivers/net/ethernet/chelsio/libcxgb/libcxgb 0xb2d0778b cxgb_find_route6 +EXPORT_SYMBOL drivers/net/ethernet/chelsio/libcxgb/libcxgb 0xd42b7ac3 cxgbi_ppm_ppods_reserve +EXPORT_SYMBOL drivers/net/ethernet/chelsio/libcxgb/libcxgb 0xea06cdce cxgbi_ppm_init +EXPORT_SYMBOL drivers/net/ethernet/chelsio/libcxgb/libcxgb 0xf218955a cxgbi_ppm_make_ppod_hdr +EXPORT_SYMBOL drivers/net/ethernet/cisco/enic/enic 0x0a38a7bc vnic_dev_unregister +EXPORT_SYMBOL drivers/net/ethernet/cisco/enic/enic 0x63f09eeb vnic_dev_register +EXPORT_SYMBOL drivers/net/ethernet/cisco/enic/enic 0xa368f56a vnic_dev_get_res +EXPORT_SYMBOL drivers/net/ethernet/cisco/enic/enic 0xa465b6ec enic_api_devcmd_proxy_by_index +EXPORT_SYMBOL drivers/net/ethernet/cisco/enic/enic 0xe410d279 vnic_dev_get_pdev +EXPORT_SYMBOL drivers/net/ethernet/cisco/enic/enic 0xe97e1103 vnic_dev_get_res_count +EXPORT_SYMBOL drivers/net/ethernet/emulex/benet/be2net 0x4e2e10d2 be_roce_mcc_cmd +EXPORT_SYMBOL drivers/net/ethernet/emulex/benet/be2net 0xa8d87a62 be_roce_register_driver +EXPORT_SYMBOL drivers/net/ethernet/emulex/benet/be2net 0xa916ef07 be_roce_unregister_driver +EXPORT_SYMBOL drivers/net/ethernet/freescale/enetc/fsl-enetc-ptp 0x5431a304 enetc_phc_index +EXPORT_SYMBOL drivers/net/ethernet/hisilicon/hns/hnae 0x1060a7c0 hnae_put_handle +EXPORT_SYMBOL drivers/net/ethernet/hisilicon/hns/hnae 0x25856ef8 hnae_get_handle +EXPORT_SYMBOL drivers/net/ethernet/hisilicon/hns/hnae 0x26f045ed hnae_ae_unregister +EXPORT_SYMBOL drivers/net/ethernet/hisilicon/hns/hnae 0xb1266858 hnae_register_notifier +EXPORT_SYMBOL drivers/net/ethernet/hisilicon/hns/hnae 0xdf24adef hnae_unregister_notifier +EXPORT_SYMBOL drivers/net/ethernet/hisilicon/hns/hnae 0xeab18f22 hnae_reinit_handle +EXPORT_SYMBOL drivers/net/ethernet/hisilicon/hns/hnae 0xfc0b729d hnae_ae_register +EXPORT_SYMBOL drivers/net/ethernet/hisilicon/hns/hns_dsaf 0x1bb33b9f hns_dsaf_roce_reset +EXPORT_SYMBOL drivers/net/ethernet/hisilicon/hns3/hnae3 0x62758ccd hnae3_unregister_ae_algo +EXPORT_SYMBOL drivers/net/ethernet/hisilicon/hns3/hnae3 0x8e7684d1 hnae3_register_client +EXPORT_SYMBOL drivers/net/ethernet/hisilicon/hns3/hnae3 0x95db0af4 hnae3_unregister_client +EXPORT_SYMBOL drivers/net/ethernet/hisilicon/hns3/hnae3 0xa5895cf2 hnae3_unregister_ae_dev +EXPORT_SYMBOL drivers/net/ethernet/hisilicon/hns3/hnae3 0xbe24d2d7 hnae3_register_ae_dev +EXPORT_SYMBOL drivers/net/ethernet/hisilicon/hns3/hnae3 0xceebb778 hnae3_set_client_init_flag +EXPORT_SYMBOL drivers/net/ethernet/hisilicon/hns3/hnae3 0xd4de2601 hnae3_register_ae_algo +EXPORT_SYMBOL drivers/net/ethernet/intel/i40e/i40e 0xa9c6019c i40e_unregister_client +EXPORT_SYMBOL drivers/net/ethernet/intel/i40e/i40e 0xd0ab7e9d i40e_register_client +EXPORT_SYMBOL drivers/net/ethernet/intel/iavf/iavf 0x026e517a iavf_register_client +EXPORT_SYMBOL drivers/net/ethernet/intel/iavf/iavf 0x3f784261 iavf_unregister_client +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x01a5fa26 mlx4_sync_pkey_table +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x066fdf19 mlx4_get_slave_port_state +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x0f4f1aa8 mlx4_SET_PORT_PRIO2TC +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x15177926 mlx4_assign_eq +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x17acaf9f mlx4_SET_PORT_user_mac +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x27e2d8b8 mlx4_get_eqs_per_port +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x27faa7e4 mlx4_get_cpu_rmap +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x2a3391fe mlx4_gen_guid_change_eqe +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x392c5e84 mlx4_query_diag_counters +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x47a9ffcb set_and_calc_slave_port_state +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x4909ab8a mlx4_put_slave_node_guid +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x4b6a1cf1 mlx4_test_interrupt +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x4eece165 mlx4_get_module_info +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x602dfa51 mlx4_ALLOCATE_VPP_set +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x66689b0d mlx4_release_eq +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x66d66440 mlx4_get_slave_pkey_gid_tbl_len +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x68bff1a5 mlx4_SET_PORT_BEACON +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x6fb56621 mlx4_SET_VPORT_QOS_set +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x7277f2eb mlx4_gen_pkey_eqe +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x75808d70 mlx4_SET_PORT_general +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 0x8a2e0baf mlx4_gen_slaves_port_mgt_ev +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x8c042e90 mlx4_get_slave_node_guid +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x8ff039ba mlx4_eq_get_irq +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x9411def8 mlx4_max_tc +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x9c183ff3 mlx4_SET_PORT_user_mtu +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x9f3cf8f4 set_phv_bit +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xa460e78b get_phv_bit +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xa9170b4c mlx4_gen_port_state_change_eqe +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xb90835cf mlx4_SET_PORT_VXLAN +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xc0ab042c mlx4_SET_PORT_qpn_calc +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xc59a020f mlx4_tunnel_steer_add +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xc67912dd mlx4_ALLOCATE_VPP_get +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xc6aceb04 mlx4_SET_PORT_SCHEDULER +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xcdf77ddb mlx4_get_parav_qkey +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xd2e618fe mlx4_SET_PORT_fcs_check +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xd86c6618 mlx4_is_eq_shared +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xe11f5227 mlx4_get_is_vlan_offload_disabled +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xe47fe6a8 mlx4_is_eq_vector_valid +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xf1ebc080 mlx4_get_slave_from_roce_gid +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xf51fe015 mlx4_is_slave_active +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xf57d794f mlx4_test_async +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xf9274a80 mlx4_SET_VPORT_QOS_get +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xfb305f13 mlx4_get_roce_gid_from_slave +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xfba0e0fa mlx4_SET_MCAST_FLTR +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x032cbd93 mlx5_core_destroy_cq +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x04af7c0e mlx5_qp_debugfs_cleanup +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x07ebc7c5 mlx5_notifier_unregister +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x0b2eb020 mlx5_core_detach_mcg +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x0c08d43f mlx5_eswitch_vport_match_metadata_enabled +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x0c2fc676 __tracepoint_mlx5_fs_del_fte +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x101509aa mlx5_buf_alloc +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x105f051d mlx5_debug_qp_remove +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x10c59fca mlx5_free_bfreg +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x1239a245 mlx5_rl_add_rate_raw +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x18e6c319 mlx5_put_uars_page +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x1971f657 mlx5_fpga_sbu_conn_sendmsg +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x1ba2b8a1 mlx5_eq_destroy_generic +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x1ed8f28a mlx5_core_query_rq +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x224ececa mlx5_get_uars_page +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x23daa4f6 mlx5_core_query_vendor_id +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x25f29987 mlx5_debugfs_root +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x284834ad mlx5_eq_get_eqe +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x2965a506 mlx5_eswitch_uplink_get_proto_dev +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x2a1711d3 mlx5_core_destroy_rqt +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x3020ef9d mlx5_eswitch_register_vport_reps +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x30bc218c mlx5_core_query_mkey +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x32f152e6 mlx5_eswitch_vport_rep +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x33752e8b mlx5_eq_enable +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x340ec5f7 mlx5_get_flow_namespace +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x35b7e2a1 mlx5_core_create_tis +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x38b9348b mlx5_query_port_ib_proto_oper +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x39153c11 __tracepoint_mlx5_fs_add_ft +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x39c0b6d7 mlx5_cmd_init_async_ctx +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x3b968cbc mlx5_comp_irq_get_affinity_mask +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x3c18cbe6 mlx5_core_modify_sq +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x3e75fa93 mlx5_eswitch_add_send_to_vport_rule +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x40b596b5 mlx5_core_modify_cq_moderation +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x433c80de mlx5_core_create_psv +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x4ad7e9d4 __tracepoint_mlx5_fs_add_rule +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x4bb5a21e mlx5_eswitch_get_encap_mode +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x4cf3fa1d mlx5_core_modify_cq +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x5294922b mlx5_core_query_sq +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x52ad3582 mlx5_eq_notifier_register +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x53542e45 mlx5_lag_is_roce +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x5640d122 mlx5_fs_remove_rx_underlay_qpn +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x57101520 mlx5_core_destroy_tis +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x58fa7d83 __tracepoint_mlx5_fs_add_fg +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x590b5e80 mlx5_fs_add_rx_underlay_qpn +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x59adf0bc mlx5_comp_vectors_count +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x5ad52b90 mlx5_core_create_mkey +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x5c25bfeb mlx5_destroy_flow_table +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x5d456480 mlx5_fc_query +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x5f7588ba mlx5_del_flow_rules +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x60bbebb1 mlx5_unregister_interface +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 0x62b14aeb mlx5_rl_add_rate +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x633c1aa4 mlx5_fpga_mem_read +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x64f98525 mlx5_core_roce_gid_set +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x6706bf9a mlx5_get_fdb_sub_ns +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x671b7c79 mlx5_vector2eqn +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x6a663e4b mlx5_eswitch_unregister_vport_reps +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x6b89aa16 mlx5_eswitch_reg_c1_loopback_enabled +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x6ccf4b16 mlx5_core_create_cq +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x6fa29977 mlx5_rl_remove_rate +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x7054ab47 mlx5_core_modify_rq +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x70cf796c mlx5_core_query_cq +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x718f0e38 mlx5_rl_remove_rate_raw +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x73193ce9 __tracepoint_mlx5_fw +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x74bcf0b9 mlx5_packet_reformat_alloc +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x775b1a9e mlx5_rl_is_in_range +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x78dac26b mlx5_notifier_register +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x7c0e99dd mlx5_debug_qp_add +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x7c2c6afe mlx5_register_interface +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x7cef7660 mlx5_cmd_init +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x7e0c6cdc mlx5_fpga_get_sbu_caps +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x7f3c658f mlx5_core_destroy_rq +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x809d4d26 mlx5_packet_reformat_dealloc +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x8570071a mlx5_alloc_bfreg +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x8b0a26e2 mlx5_eq_disable +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x8d5541ba mlx5_eswitch_get_vport_metadata_for_match +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x90018bd2 __tracepoint_mlx5_fs_del_ft +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x91b6b244 mlx5_lag_is_sriov +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x93990564 mlx5_core_create_rq +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x942a3dbf mlx5_core_create_tir +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x94cec180 mlx5_fc_create +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x95d47eb2 __tracepoint_mlx5_fs_set_fte +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x96eb2c99 mlx5_fc_id +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x976b46f3 mlx5_core_dealloc_pd +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x97ea0f9a mlx5_cmd_exec_polling +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x9abbb3ef mlx5_core_dealloc_transport_domain +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x9fa3992a mlx5_core_destroy_psv +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xa265afc7 mlx5_core_modify_tis +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xa3020196 mlx5_eswitch_get_proto_dev +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xa33151df mlx5_fc_destroy +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xa7a54c4d mlx5_cmd_create_vport_lag +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xa80d95ca mlx5_cmd_destroy_vport_lag +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xa8fb4a52 mlx5_fpga_sbu_conn_create +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xaf2e58b1 mlx5_core_create_rqt +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xafdee3be mlx5_core_destroy_mkey +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xb1856b23 mlx5_create_lag_demux_flow_table +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xb24cd388 mlx5_core_alloc_transport_domain +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xb99c7f87 mlx5_eq_create_generic +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xbc06234e mlx5_core_alloc_pd +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xbf008877 mlx5_add_flow_rules +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xbf0fb4b7 mlx5_cmd_set_state +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xc08ae035 mlx5_eq_update_ci +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xc3b79fd1 mlx5_qp_debugfs_init +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xcca7fa5a mlx5_modify_header_dealloc +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xd02008f1 mlx5_create_auto_grouped_flow_table +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xd3631297 mlx5_cmd_alloc_uar +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xd3d034c0 mlx5_lag_get_slave_port +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xd7ba4f07 mlx5_lag_query_cong_counters +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xdc03d01e mlx5_cmd_exec_cb +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xe0a0a111 mlx5_core_destroy_tir +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xe0bab420 mlx5_lag_is_active +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xe183c0e3 mlx5_cmd_cleanup +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xe976e233 mlx5_lag_get_roce_netdev +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xea3c0fb1 mlx5_core_attach_mcg +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xea9cc8ea mlx5_nic_vport_disable_roce +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xeb12c0f3 mlx5_cmd_free_uar +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xeea0f7ec mlx5_modify_header_alloc +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xf1eeca40 __tracepoint_mlx5_fs_del_fg +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xf7cc0a3a mlx5_rdma_rn_get_params +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xf831648f mlx5_fpga_mem_write +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xfae499e2 mlx5_cmd_cleanup_async_ctx +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xfb6f70de mlx5_cmd_exec +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xfbf3275f mlx5_eq_notifier_unregister +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xfe08c15a mlx5_fpga_sbu_conn_destroy +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xff05e262 __tracepoint_mlx5_fs_del_rule +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxfw/mlxfw 0xd718023c mlxfw_firmware_flash +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0x02998acf mlxsw_afa_block_append_counter +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 0x07abcc0c mlxsw_afa_block_append_trap +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0x0ca34ccf mlxsw_core_max_ports +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0x0e2b5842 mlxsw_afa_block_append_vlan_modify +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0x0e81c09c mlxsw_afk_destroy +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0x136bd359 mlxsw_env_get_module_eeprom +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0x15801382 mlxsw_afk_key_info_put +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0x19fa5852 mlxsw_core_flush_owq +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 0x2c68ced3 mlxsw_core_read_frc_h +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0x2decde87 mlxsw_core_fw_flash_start +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0x2f2c4887 mlxsw_afa_block_append_qos_switch_prio +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0x302a88e9 mlxsw_core_skb_transmit +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0x35ba2254 mlxsw_afk_values_add_u32 +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0x37018049 mlxsw_core_port_eth_set +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0x3f123442 mlxsw_core_kvd_sizes_get +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0x3f672008 mlxsw_reg_trans_write +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0x41055a45 mlxsw_core_event_listener_unregister +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 0x47fd6eee mlxsw_core_fw_flash_end +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0x4a1093b8 mlxsw_core_port_devlink_port_get +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0x4a6ed376 mlxsw_core_port_fini +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0x57e736af mlxsw_cmd_exec +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0x581fcfec mlxsw_core_ptp_transmitted +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0x5cf3dd79 mlxsw_core_bus_device_unregister +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0x5ff17b5c mlxsw_afa_block_destroy +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0x615ef5fc mlxsw_afa_block_append_qos_dscp +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 0x65e16da4 mlxsw_afk_key_info_get +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0x66beb7b9 mlxsw_core_skb_receive +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0x692ac04e mlxsw_afk_create +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0x6dadb35a mlxsw_core_driver_unregister +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0x71e1d813 mlxsw_core_port_clear +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0x73cf1d7a mlxsw_core_res_get +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0x749556a2 mlxsw_afk_key_info_subset +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0x76a65e3b mlxsw_core_port_init +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0x76c12cf7 mlxsw_core_trap_unregister +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0x77768221 mlxsw_core_module_max_width +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0x77d83398 mlxsw_core_read_frc_l +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0x801e4f83 mlxsw_core_rx_listener_unregister +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 0x858c30d0 mlxsw_afa_block_create +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0x8854d198 mlxsw_reg_write +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0x8ba5fa7e mlxsw_core_lag_mapping_set +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0x94dd9cf7 mlxsw_core_trap_state_set +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0x963cfb6a mlxsw_core_resources_query +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 0x9e41f494 mlxsw_afk_encode +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0xa3d0d2b6 mlxsw_afa_block_append_fwd +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0xa7765e88 mlxsw_reg_query +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0xa7ccb62a mlxsw_afa_block_append_qos_dsfield +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0xaa600760 mlxsw_reg_trans_query +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0xaad3faf0 mlxsw_core_driver_register +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0xb0717797 mlxsw_afa_block_append_fid_set +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0xb2f24677 mlxsw_core_res_valid +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0xb5e762fa mlxsw_afk_values_add_buf +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 0xb9394b32 mlxsw_afa_create +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0xba05b3b0 mlxsw_core_emad_string_tlv_enable +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0xbbd7a457 mlxsw_core_schedule_work +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0xbc222a8d mlxsw_afk_clear +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0xbe803287 mlxsw_core_bus_device_register +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0xbe82d6cc mlxsw_env_get_module_info +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0xbfb7df3c mlxsw_core_driver_priv +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0xbfd01f33 mlxsw_core_port_ib_set +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0xc9c2e4cc mlxsw_core_lag_mapping_clear +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 0xcd9a40a4 mlxsw_afa_block_append_drop +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0xd1a82f0b mlxsw_core_lag_mapping_get +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0xd252e62d mlxsw_core_skb_transmit_busy +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 0xd9f711ae mlxsw_afa_block_append_mcrouter +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0xdc415cf1 mlxsw_afa_block_continue +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 0xdeff4950 mlxsw_core_event_listener_register +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0xdf686ec9 mlxsw_afa_block_append_mirror +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0xe16986dd mlxsw_afa_block_activity_get +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0xea91541e mlxsw_core_rx_listener_register +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0xeca0348c mlxsw_core_schedule_dw +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0xecab212a mlxsw_afa_cookie_lookup +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0xef2a21bc mlxsw_core_trap_register +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0xf2ca3bae mlxsw_core_res_query_enabled +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0xf4909bea mlxsw_core_port_type_get +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0xf7fbba9f mlxsw_afa_block_append_qos_ecn +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0xff007c25 mlxsw_core_cpu_port_fini +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_i2c 0x5fddc1d3 mlxsw_i2c_driver_unregister +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_i2c 0x83beb712 mlxsw_i2c_driver_register +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_pci 0x11200db0 mlxsw_pci_driver_unregister +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_pci 0xd4180c3d mlxsw_pci_driver_register +EXPORT_SYMBOL drivers/net/ethernet/mscc/mscc_ocelot_common 0x048ea692 ocelot_regmap_init +EXPORT_SYMBOL drivers/net/ethernet/mscc/mscc_ocelot_common 0x073e2a8c ocelot_deinit +EXPORT_SYMBOL drivers/net/ethernet/mscc/mscc_ocelot_common 0x0b0a0e7a ocelot_fdb_del +EXPORT_SYMBOL drivers/net/ethernet/mscc/mscc_ocelot_common 0x0b150222 ocelot_netdevice_nb +EXPORT_SYMBOL drivers/net/ethernet/mscc/mscc_ocelot_common 0x10317043 ocelot_deinit_timestamp +EXPORT_SYMBOL drivers/net/ethernet/mscc/mscc_ocelot_common 0x14bb0760 ocelot_ptp_verify +EXPORT_SYMBOL drivers/net/ethernet/mscc/mscc_ocelot_common 0x19a3c23b ocelot_get_ethtool_stats +EXPORT_SYMBOL drivers/net/ethernet/mscc/mscc_ocelot_common 0x1a62c7c7 ocelot_vlan_del +EXPORT_SYMBOL drivers/net/ethernet/mscc/mscc_ocelot_common 0x1c98d6e7 ocelot_vlan_add +EXPORT_SYMBOL drivers/net/ethernet/mscc/mscc_ocelot_common 0x2388a0c4 ocelot_set_ageing_time +EXPORT_SYMBOL drivers/net/ethernet/mscc/mscc_ocelot_common 0x2a755a7d ocelot_get_txtstamp +EXPORT_SYMBOL drivers/net/ethernet/mscc/mscc_ocelot_common 0x2b3d8ac4 ocelot_port_disable +EXPORT_SYMBOL drivers/net/ethernet/mscc/mscc_ocelot_common 0x379f1e33 ocelot_port_policer_add +EXPORT_SYMBOL drivers/net/ethernet/mscc/mscc_ocelot_common 0x388e560d ocelot_get_max_mtu +EXPORT_SYMBOL drivers/net/ethernet/mscc/mscc_ocelot_common 0x462b740a ocelot_port_vlan_filtering +EXPORT_SYMBOL drivers/net/ethernet/mscc/mscc_ocelot_common 0x50c920f0 ocelot_port_policer_del +EXPORT_SYMBOL drivers/net/ethernet/mscc/mscc_ocelot_common 0x51384fcc ocelot_probe_port +EXPORT_SYMBOL drivers/net/ethernet/mscc/mscc_ocelot_common 0x5278ed29 __ocelot_rmw_ix +EXPORT_SYMBOL drivers/net/ethernet/mscc/mscc_ocelot_common 0x6348778f ocelot_port_set_maxlen +EXPORT_SYMBOL drivers/net/ethernet/mscc/mscc_ocelot_common 0x66611dc7 ocelot_chip_init +EXPORT_SYMBOL drivers/net/ethernet/mscc/mscc_ocelot_common 0x72c09751 ocelot_port_add_txtstamp_skb +EXPORT_SYMBOL drivers/net/ethernet/mscc/mscc_ocelot_common 0x746c0003 ocelot_hwstamp_get +EXPORT_SYMBOL drivers/net/ethernet/mscc/mscc_ocelot_common 0x753ed2a9 ocelot_get_strings +EXPORT_SYMBOL drivers/net/ethernet/mscc/mscc_ocelot_common 0x7b8f1278 ocelot_ptp_adjfine +EXPORT_SYMBOL drivers/net/ethernet/mscc/mscc_ocelot_common 0x872fd658 ocelot_fdb_add +EXPORT_SYMBOL drivers/net/ethernet/mscc/mscc_ocelot_common 0x87fec493 ocelot_ptp_gettime64 +EXPORT_SYMBOL drivers/net/ethernet/mscc/mscc_ocelot_common 0x8c568f9f ocelot_port_writel +EXPORT_SYMBOL drivers/net/ethernet/mscc/mscc_ocelot_common 0x8e35453a ocelot_hwstamp_set +EXPORT_SYMBOL drivers/net/ethernet/mscc/mscc_ocelot_common 0x9110942f ocelot_port_enable +EXPORT_SYMBOL drivers/net/ethernet/mscc/mscc_ocelot_common 0x973515cb ocelot_ptp_adjtime +EXPORT_SYMBOL drivers/net/ethernet/mscc/mscc_ocelot_common 0x998233a5 ocelot_port_readl +EXPORT_SYMBOL drivers/net/ethernet/mscc/mscc_ocelot_common 0x9dc692e2 ocelot_port_bridge_join +EXPORT_SYMBOL drivers/net/ethernet/mscc/mscc_ocelot_common 0xa6bf98f0 ocelot_regfields_init +EXPORT_SYMBOL drivers/net/ethernet/mscc/mscc_ocelot_common 0xabd385bd ocelot_init_timestamp +EXPORT_SYMBOL drivers/net/ethernet/mscc/mscc_ocelot_common 0xacbeca31 ocelot_ptp_settime64 +EXPORT_SYMBOL drivers/net/ethernet/mscc/mscc_ocelot_common 0xad4b4c09 ocelot_adjust_link +EXPORT_SYMBOL drivers/net/ethernet/mscc/mscc_ocelot_common 0xb20ccc34 __ocelot_write_ix +EXPORT_SYMBOL drivers/net/ethernet/mscc/mscc_ocelot_common 0xb5d90c44 ocelot_configure_cpu +EXPORT_SYMBOL drivers/net/ethernet/mscc/mscc_ocelot_common 0xb80ad6b5 ocelot_init +EXPORT_SYMBOL drivers/net/ethernet/mscc/mscc_ocelot_common 0xb854c097 ocelot_ptp_enable +EXPORT_SYMBOL drivers/net/ethernet/mscc/mscc_ocelot_common 0xcc354f29 ocelot_fdb_dump +EXPORT_SYMBOL drivers/net/ethernet/mscc/mscc_ocelot_common 0xce8bd978 __ocelot_read_ix +EXPORT_SYMBOL drivers/net/ethernet/mscc/mscc_ocelot_common 0xd0348add ocelot_switchdev_nb +EXPORT_SYMBOL drivers/net/ethernet/mscc/mscc_ocelot_common 0xd545b08e ocelot_get_sset_count +EXPORT_SYMBOL drivers/net/ethernet/mscc/mscc_ocelot_common 0xd84caa3b ocelot_bridge_stp_state_set +EXPORT_SYMBOL drivers/net/ethernet/mscc/mscc_ocelot_common 0xe54a91e8 ocelot_switchdev_blocking_nb +EXPORT_SYMBOL drivers/net/ethernet/mscc/mscc_ocelot_common 0xe573e3b4 ocelot_get_ts_info +EXPORT_SYMBOL drivers/net/ethernet/mscc/mscc_ocelot_common 0xe781e6d8 ocelot_port_bridge_leave +EXPORT_SYMBOL drivers/net/ethernet/mscc/mscc_ocelot_common 0xf2576871 ocelot_init_port +EXPORT_SYMBOL drivers/net/ethernet/qlogic/qed/qed 0x4f264472 qed_put_iscsi_ops +EXPORT_SYMBOL drivers/net/ethernet/qlogic/qed/qed 0x7917c1b0 qed_get_fcoe_ops +EXPORT_SYMBOL drivers/net/ethernet/qlogic/qed/qed 0x8ae0ba10 qed_get_iscsi_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 0xfd3b80aa qed_get_eth_ops +EXPORT_SYMBOL drivers/net/hamradio/hdlcdrv 0x60dd419a hdlcdrv_receiver +EXPORT_SYMBOL drivers/net/hamradio/hdlcdrv 0x8895d967 hdlcdrv_unregister +EXPORT_SYMBOL drivers/net/hamradio/hdlcdrv 0xbc851ebe hdlcdrv_arbitrate +EXPORT_SYMBOL drivers/net/hamradio/hdlcdrv 0xd9e2dcbc hdlcdrv_transmitter +EXPORT_SYMBOL drivers/net/hamradio/hdlcdrv 0xeb2a1fea hdlcdrv_register +EXPORT_SYMBOL drivers/net/mdio 0x3e17f466 mdio_set_flag +EXPORT_SYMBOL drivers/net/mdio 0x60443957 mdio45_probe +EXPORT_SYMBOL drivers/net/mdio 0x63e0fee5 mdio45_links_ok +EXPORT_SYMBOL drivers/net/mdio 0x652fb0b6 mdio45_ethtool_ksettings_get_npage +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/mii 0x0c55bd80 mii_check_link +EXPORT_SYMBOL drivers/net/mii 0x1c2f1905 generic_mii_ioctl +EXPORT_SYMBOL drivers/net/mii 0x207fc380 mii_ethtool_sset +EXPORT_SYMBOL drivers/net/mii 0x2f97826d mii_ethtool_gset +EXPORT_SYMBOL drivers/net/mii 0x40bd2cb7 mii_check_media +EXPORT_SYMBOL drivers/net/mii 0x4dfbfd61 mii_ethtool_get_link_ksettings +EXPORT_SYMBOL drivers/net/mii 0xa30b04b0 mii_check_gmii_support +EXPORT_SYMBOL drivers/net/mii 0xde65b4d1 mii_ethtool_set_link_ksettings +EXPORT_SYMBOL drivers/net/mii 0xf720c19b mii_nway_restart +EXPORT_SYMBOL drivers/net/mii 0xf7f7b1b8 mii_link_ok +EXPORT_SYMBOL drivers/net/phy/bcm-phy-lib 0x9108a557 bcm54xx_auxctl_write +EXPORT_SYMBOL drivers/net/phy/mdio-bitbang 0x8e6b892d free_mdio_bitbang +EXPORT_SYMBOL drivers/net/phy/mdio-bitbang 0xa842e081 alloc_mdio_bitbang +EXPORT_SYMBOL drivers/net/ppp/pppox 0x4cdbd7b5 pppox_ioctl +EXPORT_SYMBOL drivers/net/ppp/pppox 0x58a9d275 pppox_unbind_sock +EXPORT_SYMBOL drivers/net/ppp/pppox 0xb2100e43 register_pppox_proto +EXPORT_SYMBOL drivers/net/ppp/pppox 0xe0ff7a18 unregister_pppox_proto +EXPORT_SYMBOL drivers/net/sungem_phy 0xdac2afb5 sungem_phy_probe +EXPORT_SYMBOL drivers/net/team/team 0x0e9c7bf2 team_options_change_check +EXPORT_SYMBOL drivers/net/team/team 0x286b63cd team_options_register +EXPORT_SYMBOL drivers/net/team/team 0x4ead0817 team_option_inst_set_change +EXPORT_SYMBOL drivers/net/team/team 0x5d2f16da team_modeop_port_enter +EXPORT_SYMBOL drivers/net/team/team 0x794d0029 team_mode_unregister +EXPORT_SYMBOL drivers/net/team/team 0xa89bb6aa team_options_unregister +EXPORT_SYMBOL drivers/net/team/team 0xd6a5cea8 team_modeop_port_change_dev_addr +EXPORT_SYMBOL drivers/net/team/team 0xde6bc275 team_mode_register +EXPORT_SYMBOL drivers/net/usb/usbnet 0x07118f00 usbnet_link_change +EXPORT_SYMBOL drivers/net/usb/usbnet 0x1578c641 usbnet_manage_power +EXPORT_SYMBOL drivers/net/usb/usbnet 0x2c12306e usbnet_device_suggests_idle +EXPORT_SYMBOL drivers/net/wan/hdlc 0x211d72b6 register_hdlc_protocol +EXPORT_SYMBOL drivers/net/wan/hdlc 0x732efb71 unregister_hdlc_device +EXPORT_SYMBOL drivers/net/wan/hdlc 0x802dccda hdlc_close +EXPORT_SYMBOL drivers/net/wan/hdlc 0x8ba7254e hdlc_ioctl +EXPORT_SYMBOL drivers/net/wan/hdlc 0x9bf4c308 hdlc_start_xmit +EXPORT_SYMBOL drivers/net/wan/hdlc 0xa52ffcbe unregister_hdlc_protocol +EXPORT_SYMBOL drivers/net/wan/hdlc 0xae6d940b detach_hdlc_protocol +EXPORT_SYMBOL drivers/net/wan/hdlc 0xaf81c7c8 hdlc_open +EXPORT_SYMBOL drivers/net/wan/hdlc 0xb1701609 attach_hdlc_protocol +EXPORT_SYMBOL drivers/net/wan/hdlc 0xf0e95a6a alloc_hdlcdev +EXPORT_SYMBOL drivers/net/wimax/i2400m/i2400m 0x7fcc4a71 i2400m_unknown_barker +EXPORT_SYMBOL drivers/net/wireless/ath/ath 0x06787344 ath_hw_get_listen_time +EXPORT_SYMBOL drivers/net/wireless/ath/ath 0x108b188f ath_is_49ghz_allowed +EXPORT_SYMBOL drivers/net/wireless/ath/ath 0x2c0ef44c dfs_pattern_detector_init +EXPORT_SYMBOL drivers/net/wireless/ath/ath 0x3c374830 ath_hw_cycle_counters_update +EXPORT_SYMBOL drivers/net/wireless/ath/ath 0x4571aea8 ath_is_world_regd +EXPORT_SYMBOL drivers/net/wireless/ath/ath 0x45fcc5fc ath_printk +EXPORT_SYMBOL drivers/net/wireless/ath/ath 0x61750f08 ath_hw_setbssidmask +EXPORT_SYMBOL drivers/net/wireless/ath/ath 0x6376d4b7 ath_is_mybeacon +EXPORT_SYMBOL drivers/net/wireless/ath/ath 0x6a827b71 ath_hw_keyreset +EXPORT_SYMBOL drivers/net/wireless/ath/ath 0x6ee1d14c ath_reg_notifier_apply +EXPORT_SYMBOL drivers/net/wireless/ath/ath 0x914b8152 ath_regd_init +EXPORT_SYMBOL drivers/net/wireless/ath/ath 0xa18f224e ath_regd_find_country_by_name +EXPORT_SYMBOL drivers/net/wireless/ath/ath 0xa9085a43 ath_key_delete +EXPORT_SYMBOL drivers/net/wireless/ath/ath 0xb6588ba6 ath_bus_type_strings +EXPORT_SYMBOL drivers/net/wireless/ath/ath 0xd3ad4bdf ath_key_config +EXPORT_SYMBOL drivers/net/wireless/ath/ath 0xe617d07e ath_rxbuf_alloc +EXPORT_SYMBOL drivers/net/wireless/ath/ath 0xf08b651e ath_regd_get_band_ctl +EXPORT_SYMBOL drivers/net/wireless/ath/ath10k/ath10k_core 0x00af35ea ath10k_core_free_board_files +EXPORT_SYMBOL drivers/net/wireless/ath/ath10k/ath10k_core 0x015e5db2 ath10k_debug_mask +EXPORT_SYMBOL drivers/net/wireless/ath/ath10k/ath10k_core 0x033287e6 ath10k_ce_send +EXPORT_SYMBOL drivers/net/wireless/ath/ath10k/ath10k_core 0x049b1b24 ath10k_htc_process_trailer +EXPORT_SYMBOL drivers/net/wireless/ath/ath10k/ath10k_core 0x06cb052e ath10k_core_register +EXPORT_SYMBOL drivers/net/wireless/ath/ath10k/ath10k_core 0x08344845 ath10k_htt_rx_hl_indication +EXPORT_SYMBOL drivers/net/wireless/ath/ath10k/ath10k_core 0x0f7363eb ath10k_mac_tx_push_pending +EXPORT_SYMBOL drivers/net/wireless/ath/ath10k/ath10k_core 0x1edf6eb9 ath10k_core_start +EXPORT_SYMBOL drivers/net/wireless/ath/ath10k/ath10k_core 0x22f91b4a ath10k_coredump_new +EXPORT_SYMBOL drivers/net/wireless/ath/ath10k/ath10k_core 0x29785e67 ath10k_ce_completed_recv_next +EXPORT_SYMBOL drivers/net/wireless/ath/ath10k/ath10k_core 0x2a81e4dc __ath10k_ce_send_revert +EXPORT_SYMBOL drivers/net/wireless/ath/ath10k/ath10k_core 0x2d0d7a5c ath10k_ce_rx_post_buf +EXPORT_SYMBOL drivers/net/wireless/ath/ath10k/ath10k_core 0x3316d922 ath10k_ce_completed_send_next_nolock +EXPORT_SYMBOL drivers/net/wireless/ath/ath10k/ath10k_core 0x382a7afc ath10k_ce_completed_send_next +EXPORT_SYMBOL drivers/net/wireless/ath/ath10k/ath10k_core 0x3bb22b6e ath10k_htc_tx_completion_handler +EXPORT_SYMBOL drivers/net/wireless/ath/ath10k/ath10k_core 0x4d782bff ath10k_ce_disable_interrupts +EXPORT_SYMBOL drivers/net/wireless/ath/ath10k/ath10k_core 0x5020a28c ath10k_core_stop +EXPORT_SYMBOL drivers/net/wireless/ath/ath10k/ath10k_core 0x568b23f4 ath10k_ce_alloc_rri +EXPORT_SYMBOL drivers/net/wireless/ath/ath10k/ath10k_core 0x6c31aa89 ath10k_htt_rx_pktlog_completion_handler +EXPORT_SYMBOL drivers/net/wireless/ath/ath10k/ath10k_core 0x70877360 ath10k_ce_per_engine_service +EXPORT_SYMBOL drivers/net/wireless/ath/ath10k/ath10k_core 0x784cc0df ath10k_ce_num_free_src_entries +EXPORT_SYMBOL drivers/net/wireless/ath/ath10k/ath10k_core 0x7d0b260e ath10k_ce_per_engine_service_any +EXPORT_SYMBOL drivers/net/wireless/ath/ath10k/ath10k_core 0x7dfb3b96 ath10k_ce_deinit_pipe +EXPORT_SYMBOL drivers/net/wireless/ath/ath10k/ath10k_core 0x82efacfb ath10k_ce_rx_update_write_idx +EXPORT_SYMBOL drivers/net/wireless/ath/ath10k/ath10k_core 0x86c9f0e7 __tracepoint_ath10k_log_dbg +EXPORT_SYMBOL drivers/net/wireless/ath/ath10k/ath10k_core 0x90f6b73b ath10k_core_create +EXPORT_SYMBOL drivers/net/wireless/ath/ath10k/ath10k_core 0x94aed188 ath10k_ce_alloc_pipe +EXPORT_SYMBOL drivers/net/wireless/ath/ath10k/ath10k_core 0x9bd80119 ath10k_ce_send_nolock +EXPORT_SYMBOL drivers/net/wireless/ath/ath10k/ath10k_core 0x9fc37504 ath10k_htc_notify_tx_completion +EXPORT_SYMBOL drivers/net/wireless/ath/ath10k/ath10k_core 0xa936d8b0 ath10k_ce_cancel_send_next +EXPORT_SYMBOL drivers/net/wireless/ath/ath10k/ath10k_core 0xabb72f8f ath10k_core_destroy +EXPORT_SYMBOL drivers/net/wireless/ath/ath10k/ath10k_core 0xabe7c3f7 ath10k_ce_dump_registers +EXPORT_SYMBOL drivers/net/wireless/ath/ath10k/ath10k_core 0xafd47da9 ath10k_core_fetch_board_file +EXPORT_SYMBOL drivers/net/wireless/ath/ath10k/ath10k_core 0xb15c798e ath10k_htc_rx_completion_handler +EXPORT_SYMBOL drivers/net/wireless/ath/ath10k/ath10k_core 0xb6637f0f ath10k_ce_enable_interrupts +EXPORT_SYMBOL drivers/net/wireless/ath/ath10k/ath10k_core 0xb6b2e318 ath10k_ce_init_pipe +EXPORT_SYMBOL drivers/net/wireless/ath/ath10k/ath10k_core 0xbba6841f ath10k_htt_hif_tx_complete +EXPORT_SYMBOL drivers/net/wireless/ath/ath10k/ath10k_core 0xc128985f ath10k_print_driver_info +EXPORT_SYMBOL drivers/net/wireless/ath/ath10k/ath10k_core 0xc26583b0 ath10k_warn +EXPORT_SYMBOL drivers/net/wireless/ath/ath10k/ath10k_core 0xc33707a9 ath10k_ce_revoke_recv_next +EXPORT_SYMBOL drivers/net/wireless/ath/ath10k/ath10k_core 0xc72c1adb __ath10k_ce_rx_num_free_bufs +EXPORT_SYMBOL drivers/net/wireless/ath/ath10k/ath10k_core 0xd2ade6a7 ath10k_core_unregister +EXPORT_SYMBOL drivers/net/wireless/ath/ath10k/ath10k_core 0xdf897f60 ath10k_htt_txrx_compl_task +EXPORT_SYMBOL drivers/net/wireless/ath/ath10k/ath10k_core 0xe14502b6 ath10k_ce_free_rri +EXPORT_SYMBOL drivers/net/wireless/ath/ath10k/ath10k_core 0xe2e2c1d2 ath10k_htt_t2h_msg_handler +EXPORT_SYMBOL drivers/net/wireless/ath/ath10k/ath10k_core 0xe5322dc0 ath10k_coredump_get_mem_layout +EXPORT_SYMBOL drivers/net/wireless/ath/ath10k/ath10k_core 0xe73e12db ath10k_err +EXPORT_SYMBOL drivers/net/wireless/ath/ath10k/ath10k_core 0xe8a4d50d ath10k_ce_completed_recv_next_nolock +EXPORT_SYMBOL drivers/net/wireless/ath/ath10k/ath10k_core 0xfcfd332f ath10k_ce_free_pipe +EXPORT_SYMBOL drivers/net/wireless/ath/ath10k/ath10k_core 0xfe7749c7 ath10k_info +EXPORT_SYMBOL drivers/net/wireless/ath/ath11k/ath11k 0x61892a38 ath11k_core_get_hw_mac_id +EXPORT_SYMBOL drivers/net/wireless/ath/ath11k/ath11k 0xe5de8bbd ath11k_dp_service_srng +EXPORT_SYMBOL drivers/net/wireless/ath/ath6kl/ath6kl_core 0x1147914b ath6kl_cfg80211_suspend +EXPORT_SYMBOL drivers/net/wireless/ath/ath6kl/ath6kl_core 0x1354043d ath6kl_warn +EXPORT_SYMBOL drivers/net/wireless/ath/ath6kl/ath6kl_core 0x1d94cab9 ath6kl_read_tgt_stats +EXPORT_SYMBOL drivers/net/wireless/ath/ath6kl/ath6kl_core 0x3502feef ath6kl_info +EXPORT_SYMBOL drivers/net/wireless/ath/ath6kl/ath6kl_core 0x35bdb058 ath6kl_cfg80211_resume +EXPORT_SYMBOL drivers/net/wireless/ath/ath6kl/ath6kl_core 0x36d75cd6 ath6kl_core_init +EXPORT_SYMBOL drivers/net/wireless/ath/ath6kl/ath6kl_core 0x64e94655 ath6kl_core_destroy +EXPORT_SYMBOL drivers/net/wireless/ath/ath6kl/ath6kl_core 0x91cfb84a ath6kl_hif_rw_comp_handler +EXPORT_SYMBOL drivers/net/wireless/ath/ath6kl/ath6kl_core 0x9c4e8ad2 ath6kl_core_create +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 0xbfbc885e ath6kl_core_rx_complete +EXPORT_SYMBOL drivers/net/wireless/ath/ath6kl/ath6kl_core 0xda73ce1f ath6kl_core_cleanup +EXPORT_SYMBOL drivers/net/wireless/ath/ath6kl/ath6kl_core 0xed89283b ath6kl_hif_intr_bh_handler +EXPORT_SYMBOL drivers/net/wireless/ath/ath6kl/ath6kl_core 0xf9607119 ath6kl_core_tx_complete +EXPORT_SYMBOL drivers/net/wireless/ath/ath6kl/ath6kl_core 0xfbd892d4 ath6kl_stop_txrx +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_common 0x0888a63a ath9k_cmn_spectral_deinit_debug +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_common 0x0a753d7f ath9k_cmn_reload_chainmask +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_common 0x0dd2195e ath9k_cmn_spectral_scan_config +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_common 0x2f218144 ath_cmn_process_fft +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_common 0x2fa117c3 ath9k_cmn_debug_recv +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_common 0x4cce7f35 ath9k_cmn_process_rssi +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_common 0x554e6480 ath9k_cmn_spectral_init_debug +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_common 0x5553cf0b ath9k_cmn_get_channel +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_common 0x56153971 ath9k_cmn_process_rate +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_common 0x575f5dd3 ath9k_cmn_get_hw_crypto_keytype +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_common 0x57936918 ath9k_cmn_init_crypto +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_common 0x622cc48e ath9k_cmn_beacon_config_ap +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_common 0x64e4df21 ath9k_cmn_beacon_config_sta +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_common 0x8447eef3 ath9k_cmn_init_channels_rates +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_common 0x905c40d7 ath9k_cmn_spectral_scan_trigger +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_common 0x96ed8fab ath9k_cmn_debug_phy_err +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_common 0xae73c1bc ath9k_cmn_debug_modal_eeprom +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_common 0xaf87d481 ath9k_cmn_update_txpow +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_common 0xb76fccc7 ath9k_cmn_debug_stat_rx +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_common 0xd2981357 ath9k_cmn_count_streams +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_common 0xd8cb0889 ath9k_cmn_debug_base_eeprom +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_common 0xdf1cff51 ath9k_cmn_rx_skb_postprocess +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_common 0xf39879f1 ath9k_cmn_rx_accept +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_common 0xf577b6b0 ath9k_cmn_beacon_config_adhoc +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_common 0xf982590d ath9k_cmn_setup_ht_cap +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x02e8c517 ar9003_paprd_create_curve +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x0797e13e ath9k_hw_intrpend +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x08515441 ath9k_hw_name +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x087ed317 ath9k_hw_loadnf +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x0a091692 ath9k_hw_gen_timer_stop +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x0aef7a8d ath9k_hw_gpio_request_in +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x0f2fceae ath9k_hw_setopmode +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x0f77dafc ath9k_hw_get_tsf_offset +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x0f8a60f1 ar9003_is_paprd_enabled +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x1290fef9 ar9003_paprd_init_table +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x12e74365 ath9k_hw_set_txpowerlimit +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x1366fd5e ath9k_hw_reset_tsf +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x16ba8499 ath9k_hw_init +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x18316ec3 ath9k_hw_abortpcurecv +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x196db265 ath9k_hw_addrxbuf_edma +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x1ec21d23 ar9003_paprd_enable +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x224d898f ath9k_hw_ani_monitor +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x25c4fe94 ath9k_hw_beaconinit +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x2640f808 ath9k_hw_btcoex_bt_stomp +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x26691bea ath9k_hw_getrxfilter +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x29fcf9b1 ath9k_hw_gettxbuf +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x2c6247bf ath9k_hw_check_alive +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x308d8963 ath9k_hw_set_sta_beacon_timers +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x35c72128 ath9k_hw_set_rx_bufsize +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x38096a0f ath9k_hw_getchan_noise +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x381e52de ath9k_hw_write_associd +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x3a6608c6 ar9003_hw_disable_phy_restart +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x3d3410f9 ath9k_hw_setrxabort +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x3e927626 ath9k_hw_btcoex_set_concur_txprio +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x40e37c31 ath9k_hw_btcoex_init_scheme +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x40ebc48f ath9k_hw_resume_interrupts +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x43b686db ath_gen_timer_alloc +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x45365759 ath9k_hw_btcoex_deinit +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x4537e2c3 ath9k_hw_releasetxqueue +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x461e0886 ath9k_hw_gen_timer_start +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x463bfff8 ath9k_hw_phy_disable +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x48c4c4c8 ar9003_mci_cleanup +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x49d6ff57 ath9k_hw_gpio_free +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x4d20cb76 ath9k_hw_kill_interrupts +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x5213c70c ath9k_hw_rxprocdesc +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x550aa5e2 ar9003_mci_send_wlan_channels +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x56113190 ath9k_hw_set_tx_filter +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x58bdb91c ath9k_hw_disable_mib_counters +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x5958add1 ath9k_hw_getnf +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x5bb34021 ath9k_hw_wow_apply_pattern +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x612cda64 ath9k_hw_computetxtime +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x6179115d ar9003_hw_bb_watchdog_check +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x625e8545 ath9k_hw_gpio_request_out +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x6c5f1060 ath9k_hw_btcoex_init_2wire +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x6e815c82 ath9k_hw_btcoex_set_weight +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x6ebf41e7 ath9k_hw_set_txq_props +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x7399e163 ath9k_hw_stopdmarecv +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x7406830e ath9k_hw_puttxbuf +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x74f67b48 ath9k_hw_stop_dma_queue +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x79085ae5 ath9k_hw_bstuck_nfcal +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x7be9a988 ar9003_paprd_populate_single_table +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x83fc7e89 ath9k_hw_setuptxqueue +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x86ca77a2 ar9003_mci_setup +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x876d8037 ar9003_mci_set_bt_version +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x8802a850 ath9k_hw_resettxqueue +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x8960c70d ath9k_hw_wait +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x8f408e01 ath9k_hw_disable +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x9312388c ath9k_hw_deinit +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x9ca329af ar9003_mci_state +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x9d76a758 ar9003_paprd_setup_gain_table +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xa1997970 ath_gen_timer_isr +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xa6bcf879 ath9k_hw_setuprxdesc +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xa8b0109d ar9003_hw_bb_watchdog_dbg_info +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xac591b8d ath9k_hw_btcoex_init_3wire +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xace0429f ath9k_hw_startpcureceive +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xade167a8 ath9k_hw_init_global_settings +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xaf08d1e0 ath9k_hw_process_rxdesc_edma +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xafa11e0a ath9k_hw_gpio_get +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xb2f62b26 ath9k_hw_disable_interrupts +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xb44c93cc ath9k_hw_set_tsfadjust +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xb8d328d3 ath9k_hw_btcoex_enable +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xc17ccb2d ath9k_hw_setmcastfilter +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xc39e621e ath9k_hw_wow_wakeup +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xc5c80d66 ath9k_hw_btcoex_disable +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xc6183b3f ar9003_paprd_is_done +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xc61e42b7 ath9k_hw_numtxpending +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xc6384c88 ath9k_hw_enable_interrupts +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xc6b393ff ath9k_hw_check_nav +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xc89ef395 ath9k_hw_wow_enable +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xcb0f1b7f ath9k_hw_setpower +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xcc0a9433 ath9k_hw_settsf64 +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xcc595052 ath9k_hw_gettsf64 +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xcfc24b90 ath9k_hw_putrxbuf +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xd6468bc5 ath9k_hw_reset_calvalid +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xd69b3f4e ath9k_hw_abort_tx_dma +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xe0dc0b9d ath9k_hw_setantenna +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xe24b280f ath9k_hw_init_btcoex_hw +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xe2cea742 ath9k_hw_set_gpio +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xe4123747 ath9k_hw_setrxfilter +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xe9d8014e ath9k_hw_get_txq_props +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xeaae13b5 ar9003_mci_send_message +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xec8c2922 ath_gen_timer_free +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xef058553 ath9k_hw_btcoex_init_mci +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xef1e85f5 ar9003_mci_get_interrupt +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xf03494b5 ath9k_hw_set_interrupts +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xf16a7166 ath9k_hw_beaconq_setup +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xf28e831c ath9k_hw_gettsf32 +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xf319199d ath9k_hw_updatetxtriglevel +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xf50d2198 ar9003_mci_get_next_gpm_offset +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xf78b376e ath9k_hw_txstart +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xf8307715 ar9003_get_pll_sqsum_dvc +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xfba016ba ath9k_hw_reset +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xfd767082 ath9k_hw_setup_statusring +EXPORT_SYMBOL drivers/net/wireless/atmel/atmel 0x089708ef init_atmel_card +EXPORT_SYMBOL drivers/net/wireless/atmel/atmel 0x10b72b8f atmel_open +EXPORT_SYMBOL drivers/net/wireless/atmel/atmel 0x6c1451cc stop_atmel_card +EXPORT_SYMBOL drivers/net/wireless/broadcom/brcm80211/brcmutil/brcmutil 0x1906648e brcmu_boardrev_str +EXPORT_SYMBOL drivers/net/wireless/broadcom/brcm80211/brcmutil/brcmutil 0x1e0e558d brcmu_pkt_buf_free_skb +EXPORT_SYMBOL drivers/net/wireless/broadcom/brcm80211/brcmutil/brcmutil 0x3c93569e brcmu_pktq_pdeq_tail +EXPORT_SYMBOL drivers/net/wireless/broadcom/brcm80211/brcmutil/brcmutil 0x418312b1 brcmu_pktq_pflush +EXPORT_SYMBOL drivers/net/wireless/broadcom/brcm80211/brcmutil/brcmutil 0x518c69db brcmu_pktq_mlen +EXPORT_SYMBOL drivers/net/wireless/broadcom/brcm80211/brcmutil/brcmutil 0x53b403e8 brcmu_pktq_pdeq_match +EXPORT_SYMBOL drivers/net/wireless/broadcom/brcm80211/brcmutil/brcmutil 0x5c13a349 brcmu_pkt_buf_get_skb +EXPORT_SYMBOL drivers/net/wireless/broadcom/brcm80211/brcmutil/brcmutil 0x7297f11b brcmu_pktq_mdeq +EXPORT_SYMBOL drivers/net/wireless/broadcom/brcm80211/brcmutil/brcmutil 0x7a7accc4 brcmu_pktq_init +EXPORT_SYMBOL drivers/net/wireless/broadcom/brcm80211/brcmutil/brcmutil 0x85c4316d brcmu_pktq_penq +EXPORT_SYMBOL drivers/net/wireless/broadcom/brcm80211/brcmutil/brcmutil 0xa17c0ccf brcmu_dotrev_str +EXPORT_SYMBOL drivers/net/wireless/broadcom/brcm80211/brcmutil/brcmutil 0xc4bae86e brcmu_pktq_penq_head +EXPORT_SYMBOL drivers/net/wireless/broadcom/brcm80211/brcmutil/brcmutil 0xd4a9c367 brcmu_pktq_peek_tail +EXPORT_SYMBOL drivers/net/wireless/broadcom/brcm80211/brcmutil/brcmutil 0xd6217d91 brcmu_d11_attach +EXPORT_SYMBOL drivers/net/wireless/broadcom/brcm80211/brcmutil/brcmutil 0xe2ae1940 brcmu_pktq_pdeq +EXPORT_SYMBOL drivers/net/wireless/broadcom/brcm80211/brcmutil/brcmutil 0xf3509633 brcmu_pktq_flush +EXPORT_SYMBOL drivers/net/wireless/intel/ipw2x00/libipw 0x2ca3d768 libipw_xmit +EXPORT_SYMBOL drivers/net/wireless/intel/ipw2x00/libipw 0x3dcd5622 libipw_set_geo +EXPORT_SYMBOL drivers/net/wireless/intel/ipw2x00/libipw 0x3ef3a0fc libipw_get_channel +EXPORT_SYMBOL drivers/net/wireless/intel/ipw2x00/libipw 0x5ae897db libipw_wx_get_scan +EXPORT_SYMBOL drivers/net/wireless/intel/ipw2x00/libipw 0x61bce208 alloc_libipw +EXPORT_SYMBOL drivers/net/wireless/intel/ipw2x00/libipw 0x6ee0c694 libipw_wx_get_encodeext +EXPORT_SYMBOL drivers/net/wireless/intel/ipw2x00/libipw 0x7ab33d75 libipw_txb_free +EXPORT_SYMBOL drivers/net/wireless/intel/ipw2x00/libipw 0x83b95234 libipw_channel_to_index +EXPORT_SYMBOL drivers/net/wireless/intel/ipw2x00/libipw 0x9953703f libipw_rx +EXPORT_SYMBOL drivers/net/wireless/intel/ipw2x00/libipw 0xa569ae0c libipw_rx_mgt +EXPORT_SYMBOL drivers/net/wireless/intel/ipw2x00/libipw 0xa90857c6 libipw_wx_set_encode +EXPORT_SYMBOL drivers/net/wireless/intel/ipw2x00/libipw 0xab33915e free_libipw +EXPORT_SYMBOL drivers/net/wireless/intel/ipw2x00/libipw 0xade3f3b1 libipw_wx_set_encodeext +EXPORT_SYMBOL drivers/net/wireless/intel/ipw2x00/libipw 0xdebbe248 libipw_get_channel_flags +EXPORT_SYMBOL drivers/net/wireless/intel/ipw2x00/libipw 0xdf861d73 libipw_wx_get_encode +EXPORT_SYMBOL drivers/net/wireless/intel/ipw2x00/libipw 0xe45b19b3 libipw_channel_to_freq +EXPORT_SYMBOL drivers/net/wireless/intel/ipw2x00/libipw 0xecae083c libipw_is_valid_channel +EXPORT_SYMBOL drivers/net/wireless/intel/ipw2x00/libipw 0xedec4438 libipw_get_geo +EXPORT_SYMBOL drivers/net/wireless/intel/ipw2x00/libipw 0xeebbd98a libipw_freq_to_channel +EXPORT_SYMBOL drivers/net/wireless/intel/ipw2x00/libipw 0xf309ae19 libipw_networks_age +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x021308cc il_queue_space +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x0302a353 il_eeprom_init +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x041ce49e il_add_station_common +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x05167dac il_hdl_pm_debug_stats +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x14d42f84 il_wr_prph +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x158591d0 il_eeprom_query16 +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x19926a1e il_set_rxon_ht +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x19eeb5f0 il_mac_sta_remove +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x21f14d0e il_send_stats_request +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x28cf5c1c il_init_channel_map +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x29eba255 il_tx_cmd_complete +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x2ace9f69 il_tx_queue_init +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x3134b1f7 il_mac_hw_scan +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x33132bbd il_alloc_txq_mem +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x37c0ce87 _il_poll_bit +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x3e11f273 il_dbgfs_unregister +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x3e2ad55a il_set_decrypted_flag +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x3e39aac2 il_mac_reset_tsf +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x406c450e il_eeprom_free +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x416bd26a il_debug_level +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x453d3986 il_set_rxon_hwcrypto +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x477e10dd il_send_cmd_pdu +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x49ea7ddc il_restore_stations +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x49ec52e9 il_set_tx_power +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x4c6c0ca2 il_send_cmd +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x4d207f96 il_hdl_pm_sleep +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x538261b1 il_mac_config +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x542572f5 il_pm_ops +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x560ce049 il_rx_queue_update_write_ptr +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x562c8f56 il_leds_init +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x585399f3 il_clear_ucode_stations +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x5918deb8 il_get_single_channel_number +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x5cecae3c il_get_lowest_plcp +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x5d0339a2 il_cmd_queue_unmap +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x5e164bb3 il_irq_handle_error +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x64343431 il_hdl_spectrum_measurement +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x67b954d2 il_set_bit +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x69ba8701 il_fill_probe_req +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x6d9b495c il_mac_bss_info_changed +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x6f2c010e il_tx_cmd_protection +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x70a2cf71 il_connection_init_rx_config +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x718eaf5c il_write_targ_mem +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x731a9280 il_add_beacon_time +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x741b929c il_force_reset +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x7449d631 il_scan_cancel_timeout +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x74b9e0b7 il_mac_conf_tx +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x784c67e0 il_hdl_error +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x7b456ddd il_set_rate +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x7e006d80 il_cmd_queue_free +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x81f672ad il_apm_stop +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x8672579a il_send_rxon_timing +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x879ee6bf il_is_ht40_tx_allowed +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x88783f64 il_chswitch_done +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x88e4f350 il_setup_watchdog +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x890bbe24 il_send_cmd_sync +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x96527741 il_dbgfs_register +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x96605407 _il_apm_stop +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x9bb2986a il_send_bt_config +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x9cc714af il_bg_watchdog +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x9f136b24 il_send_add_sta +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0xa25fc53a il_setup_rx_scan_handlers +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0xa75dfc8f il_set_flags_for_band +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0xa9629344 il_cancel_scan_deferred_work +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0xa9805113 il_setup_scan_deferred_work +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0xaddac9c1 il_usecs_to_beacons +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0xae1e95f3 il_eeprom_query_addr +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0xb199dffe il_rx_queue_alloc +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0xb65510a3 il_get_cmd_string +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0xb7bd33ff il_isr +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0xba3814be il_init_scan_params +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0xbab3c629 il_check_rxon_cmd +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0xbf1a8167 il_power_update_mode +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0xbf52f0c2 il_get_channel_info +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0xc0d12626 il_set_rxon_channel +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0xc21010cd il_txq_update_write_ptr +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0xc3e2f7a1 il_rx_queue_space +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0xcc517f77 il_power_initialize +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0xcd449744 il_mac_remove_interface +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0xcdbdd05e il_update_stats +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0xcf6b9b36 il_get_passive_dwell_time +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0xd0a0f3fd il_free_channel_map +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0xd19a7d33 il_tx_queue_free +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0xd278dde9 il_get_free_ucode_key_idx +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0xd54a1600 il_mac_change_interface +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0xd99052ff il_free_geos +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0xda5681e5 il_send_lq_cmd +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0xda6ed722 il_tx_queue_reset +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0xdd732c9d il_free_txq_mem +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0xe0873e8f il_rd_prph +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0xe592523b il_init_geos +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0xe6ef2223 il_mac_add_interface +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0xe70c299b il_get_active_dwell_time +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0xe96e153f il_apm_init +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0xe9ff1482 il_full_rxon_required +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0xed630aaa il_poll_bit +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0xedfd3bac il_leds_exit +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0xeeeeed80 il_hdl_csa +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0xeeffca89 il_read_targ_mem +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0xf21bf680 il_tx_queue_unmap +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0xf70a693b il_bcast_addr +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0xfa41dc90 il_clear_bit +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0xfaceb92a il_mac_flush +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0xfb07409e il_send_cmd_pdu_async +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0xfc964b3a il_scan_cancel +EXPORT_SYMBOL drivers/net/wireless/intel/iwlwifi/iwlwifi 0x33c2544a __tracepoint_iwlwifi_dev_ucode_wrap_event +EXPORT_SYMBOL drivers/net/wireless/intel/iwlwifi/iwlwifi 0xa44e2870 __tracepoint_iwlwifi_dev_ucode_cont_event +EXPORT_SYMBOL drivers/net/wireless/intel/iwlwifi/iwlwifi 0xab9db4d3 __tracepoint_iwlwifi_dev_ucode_event +EXPORT_SYMBOL drivers/net/wireless/intersil/hostap/hostap 0x0ad69602 hostap_set_multicast_list_queue +EXPORT_SYMBOL drivers/net/wireless/intersil/hostap/hostap 0x13abdd5a hostap_dump_tx_header +EXPORT_SYMBOL drivers/net/wireless/intersil/hostap/hostap 0x15b0da6d hostap_set_hostapd_sta +EXPORT_SYMBOL drivers/net/wireless/intersil/hostap/hostap 0x16102a64 hostap_set_antsel +EXPORT_SYMBOL drivers/net/wireless/intersil/hostap/hostap 0x2ba0de38 hostap_add_interface +EXPORT_SYMBOL drivers/net/wireless/intersil/hostap/hostap 0x35c8a88f hostap_info_process +EXPORT_SYMBOL drivers/net/wireless/intersil/hostap/hostap 0x425a6a00 hostap_remove_interface +EXPORT_SYMBOL drivers/net/wireless/intersil/hostap/hostap 0x4499bb9a hostap_init_proc +EXPORT_SYMBOL drivers/net/wireless/intersil/hostap/hostap 0x50d9440b hostap_check_sta_fw_version +EXPORT_SYMBOL drivers/net/wireless/intersil/hostap/hostap 0x57328b64 hostap_set_auth_algs +EXPORT_SYMBOL drivers/net/wireless/intersil/hostap/hostap 0x624eaccf hostap_info_init +EXPORT_SYMBOL drivers/net/wireless/intersil/hostap/hostap 0x695eab2d hostap_80211_ops +EXPORT_SYMBOL drivers/net/wireless/intersil/hostap/hostap 0x6f216fe8 hostap_set_word +EXPORT_SYMBOL drivers/net/wireless/intersil/hostap/hostap 0x6fc27a37 hostap_master_start_xmit +EXPORT_SYMBOL drivers/net/wireless/intersil/hostap/hostap 0x7fb75891 hostap_dump_rx_header +EXPORT_SYMBOL drivers/net/wireless/intersil/hostap/hostap 0x87ef5270 hostap_free_data +EXPORT_SYMBOL drivers/net/wireless/intersil/hostap/hostap 0x88ea3a37 hostap_get_porttype +EXPORT_SYMBOL drivers/net/wireless/intersil/hostap/hostap 0x8ef94065 hostap_init_ap_proc +EXPORT_SYMBOL drivers/net/wireless/intersil/hostap/hostap 0x97efcc37 hostap_set_string +EXPORT_SYMBOL drivers/net/wireless/intersil/hostap/hostap 0xa2779faa hostap_setup_dev +EXPORT_SYMBOL drivers/net/wireless/intersil/hostap/hostap 0xa902b6ca hostap_remove_proc +EXPORT_SYMBOL drivers/net/wireless/intersil/hostap/hostap 0xa986fce2 hostap_set_encryption +EXPORT_SYMBOL drivers/net/wireless/intersil/hostap/hostap 0xb4b77c8b hostap_80211_get_hdrlen +EXPORT_SYMBOL drivers/net/wireless/intersil/hostap/hostap 0xc06666b8 prism2_update_comms_qual +EXPORT_SYMBOL drivers/net/wireless/intersil/hostap/hostap 0xc796cf2f hostap_handle_sta_tx_exc +EXPORT_SYMBOL drivers/net/wireless/intersil/hostap/hostap 0xc9e3867a hostap_80211_rx +EXPORT_SYMBOL drivers/net/wireless/intersil/hostap/hostap 0xd2874969 hostap_init_data +EXPORT_SYMBOL drivers/net/wireless/intersil/hostap/hostap 0xd908e07f hostap_set_hostapd +EXPORT_SYMBOL drivers/net/wireless/intersil/hostap/hostap 0xf0bd46da hostap_set_roaming +EXPORT_SYMBOL drivers/net/wireless/intersil/orinoco/orinoco 0x06eb0ec8 orinoco_init +EXPORT_SYMBOL drivers/net/wireless/intersil/orinoco/orinoco 0x11301ca2 orinoco_open +EXPORT_SYMBOL drivers/net/wireless/intersil/orinoco/orinoco 0x1d28bba9 orinoco_if_del +EXPORT_SYMBOL drivers/net/wireless/intersil/orinoco/orinoco 0x4330e93e free_orinocodev +EXPORT_SYMBOL drivers/net/wireless/intersil/orinoco/orinoco 0x91d4b26a orinoco_tx_timeout +EXPORT_SYMBOL drivers/net/wireless/intersil/orinoco/orinoco 0x9459c9e4 orinoco_if_add +EXPORT_SYMBOL drivers/net/wireless/intersil/orinoco/orinoco 0x9e93f6c0 __orinoco_ev_rx +EXPORT_SYMBOL drivers/net/wireless/intersil/orinoco/orinoco 0xa16843cf alloc_orinocodev +EXPORT_SYMBOL drivers/net/wireless/intersil/orinoco/orinoco 0xbbd519ca orinoco_up +EXPORT_SYMBOL drivers/net/wireless/intersil/orinoco/orinoco 0xbc500f67 __orinoco_ev_info +EXPORT_SYMBOL drivers/net/wireless/intersil/orinoco/orinoco 0xc0b620f7 orinoco_change_mtu +EXPORT_SYMBOL drivers/net/wireless/intersil/orinoco/orinoco 0xc7399cbe orinoco_set_multicast_list +EXPORT_SYMBOL drivers/net/wireless/intersil/orinoco/orinoco 0xd0004f27 orinoco_stop +EXPORT_SYMBOL drivers/net/wireless/intersil/orinoco/orinoco 0xeb4c9831 hermes_struct_init +EXPORT_SYMBOL drivers/net/wireless/intersil/orinoco/orinoco 0xf19c9f6b orinoco_down +EXPORT_SYMBOL drivers/net/wireless/intersil/orinoco/orinoco 0xf568b4bd orinoco_process_xmit_skb +EXPORT_SYMBOL drivers/net/wireless/intersil/orinoco/orinoco 0xffe27bca orinoco_interrupt +EXPORT_SYMBOL drivers/net/wireless/mediatek/mt76/mt76 0x8e2dc882 mt76_wcid_key_setup +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/btcoexist/btcoexist 0x32c02e0e rtl_btc_get_ops_pointer +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtl8192c/rtl8192c-common 0x00c5c14d _rtl92c_phy_set_rf_sleep +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtl8192c/rtl8192c-common 0x033ef0ac _rtl92c_phy_rf_serial_write +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtl8192c/rtl8192c-common 0x0fc9068a rtl92c_phy_sw_chnl +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtl8192c/rtl8192c-common 0x1a399682 rtl92c_set_fw_rsvdpagepkt +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtl8192c/rtl8192c-common 0x21ab478d rtl92c_phy_ap_calibrate +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 0x27105a7d rtl92c_firmware_selfreset +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtl8192c/rtl8192c-common 0x34af40c5 rtl92ce_phy_set_rf_on +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtl8192c/rtl8192c-common 0x3d20e86a rtl92c_dm_init_rate_adaptive_mask +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtl8192c/rtl8192c-common 0x467a2d78 _rtl92c_phy_init_bb_rf_register_definition +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtl8192c/rtl8192c-common 0x5290258f rtl92c_phy_query_bb_reg +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtl8192c/rtl8192c-common 0x5294b660 _rtl92c_phy_rf_serial_read +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtl8192c/rtl8192c-common 0x5392c68e rtl92c_set_fw_pwrmode_cmd +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtl8192c/rtl8192c-common 0x567e6da6 rtl92c_dm_bt_coexist +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtl8192c/rtl8192c-common 0x5a3af314 rtl92c_phy_set_bb_reg +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtl8192c/rtl8192c-common 0x5c54b436 rtl92c_bt_rssi_state_change +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtl8192c/rtl8192c-common 0x62d96c11 rtl92c_phy_sw_chnl_callback +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtl8192c/rtl8192c-common 0x76973b5e rtl92c_dm_watchdog +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtl8192c/rtl8192c-common 0x76a4169b _rtl92c_phy_txpwr_idx_to_dbm +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtl8192c/rtl8192c-common 0x76d8f448 _rtl92c_phy_dbm_to_txpwr_idx +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtl8192c/rtl8192c-common 0x7d5e0348 rtl92c_dm_init_edca_turbo +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtl8192c/rtl8192c-common 0x80fb147e rtl8192_phy_check_is_legal_rfpath +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtl8192c/rtl8192c-common 0x870ad189 rtl92c_download_fw +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtl8192c/rtl8192c-common 0x8e808d44 rtl92c_dm_rf_saving +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtl8192c/rtl8192c-common 0x93b7b836 rtl92c_dm_init +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtl8192c/rtl8192c-common 0xa02974d2 rtl92c_dm_write_dig +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtl8192c/rtl8192c-common 0xa1ea93a3 _rtl92c_store_pwrindex_diffrate_offset +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtl8192c/rtl8192c-common 0xa85a256f rtl92c_phy_set_rfpath_switch +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtl8192c/rtl8192c-common 0xacace1d4 rtl92c_phy_set_io +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtl8192c/rtl8192c-common 0xb0aeb4be rtl92c_phy_iq_calibrate +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtl8192c/rtl8192c-common 0xc03df37c _rtl92c_phy_fw_rf_serial_read +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtl8192c/rtl8192c-common 0xc6a5a139 rtl92c_dm_check_txpower_tracking +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtl8192c/rtl8192c-common 0xca4c73cc rtl92c_phy_set_io_cmd +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtl8192c/rtl8192c-common 0xd369014e rtl92c_fill_h2c_cmd +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtl8192c/rtl8192c-common 0xd59651ec rtl92c_phy_rf_config +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtl8192c/rtl8192c-common 0xdbfe9be9 rtl92c_set_fw_joinbss_report_cmd +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtl8192c/rtl8192c-common 0xdd95e905 _rtl92c_phy_bb8192c_config_parafile +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtl8192c/rtl8192c-common 0xe3f228d7 _rtl92c_phy_fw_rf_serial_write +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtl8192c/rtl8192c-common 0xedd61799 rtl92c_phy_update_txpower_dbm +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtl8192c/rtl8192c-common 0xf529bf4a rtl92c_phy_set_bw_mode +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtl8192c/rtl8192c-common 0xf7dce929 rtl92c_phy_set_txpower_level +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtl8192c/rtl8192c-common 0xf90370e1 rtl92c_phy_lc_calibrate +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtl_pci 0x2d892b06 rtl_pci_disconnect +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtl_pci 0x354e00aa rtl_pci_suspend +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtl_pci 0xaadfc3aa rtl_pci_probe +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtl_pci 0xb75d9bfc rtl_pci_resume +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtl_usb 0x037aee0e rtl_usb_resume +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtl_usb 0x0fb29c15 rtl_usb_disconnect +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtl_usb 0x52621bf0 rtl_usb_suspend +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtl_usb 0x69f061ad rtl_usb_probe +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtlwifi 0x0383ecc9 rtlwifi_rate_mapping +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtlwifi 0x042b2ce9 rtl_get_tcb_desc +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtlwifi 0x04743c19 efuse_read_1byte +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtlwifi 0x0993c419 rtl_send_smps_action +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtlwifi 0x0a95cdcc rtl_rfreg_delay +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtlwifi 0x0b038e24 channel5g_80m +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtlwifi 0x13b5b0e0 rtl_cmd_send_packet +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtlwifi 0x1b945315 rtl_addr_delay +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtlwifi 0x1c3bad6d rtl_ps_disable_nic +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtlwifi 0x1c7277f6 rtl_wowlan_fw_cb +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtlwifi 0x2570f38f rtl_cam_empty_entry +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtlwifi 0x2ee07b66 rtl_process_phyinfo +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtlwifi 0x30a956d7 rtl_query_rxpwrpercentage +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtlwifi 0x53151d93 rtl_c2hcmd_enqueue +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtlwifi 0x54824f58 channel5g +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtlwifi 0x5636b50d efuse_power_switch +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtlwifi 0x56ca08bf rtl_phy_scan_operation_backup +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtlwifi 0x61056fe9 rtl_signal_scale_mapping +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtlwifi 0x71ab98b1 rtl_mrate_idx_to_arfr_id +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtlwifi 0x7758b409 rtl_cam_delete_one_entry +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtlwifi 0x7df1a515 efuse_shadow_read +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtlwifi 0x892a39d4 rtl_rx_ampdu_apply +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtlwifi 0x8ca5ad69 rtl_cam_reset_all_entry +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtlwifi 0x9506344d rtl_hal_pwrseqcmdparsing +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtlwifi 0x95323ad1 rtl_dm_diginit +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtlwifi 0x9b8d42bc efuse_one_byte_read +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtlwifi 0x9fd9245d rtl_bb_delay +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtlwifi 0xa20e5d68 rtl_collect_scan_list +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtlwifi 0xc9d3587f rtl_cam_mark_invalid +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtlwifi 0xcb5fe2c1 rtl_init_rfkill +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtlwifi 0xd34d8221 rtl_cam_del_entry +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtlwifi 0xd5873508 rtl_fw_cb +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtlwifi 0xd8d3e98d rtl_efuse_shadow_map_update +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtlwifi 0xed7c8cf2 rtl_evm_db_to_percentage +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtlwifi 0xede7ed52 rtl_ps_enable_nic +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtlwifi 0xf3fb3391 rtl_cam_add_one_entry +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtlwifi 0xfefbb42a rtl_cam_get_free_entry +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw88/rtw88_8723d 0x34ff228b rtw8723d_hw_spec +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw88/rtw88_8822b 0xdf1f5839 rtw8822b_hw_spec +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw88/rtw88_8822c 0x30dd3307 rtw8822c_hw_spec +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw88/rtw88_core 0x0928c8e9 rtw_fw_do_iqk +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw88/rtw88_core 0x0c8fe831 rtw_phy_set_tx_power_level +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw88/rtw88_core 0x1383b82d rtw_core_init +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw88/rtw88_core 0x156db035 rtw_bf_enable_bfee_mu +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw88/rtw88_core 0x168de59a __rtw_dbg +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw88/rtw88_core 0x184b8239 rtw_chip_info_setup +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw88/rtw88_core 0x1c48d7e7 rtw_phy_cfg_mac +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw88/rtw88_core 0x2020f847 rtw_phy_pwrtrack_get_pwridx +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw88/rtw88_core 0x30e479e0 rtw_bf_set_gid_table +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw88/rtw88_core 0x31b8b6be rtw_phy_cfg_bb +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw88/rtw88_core 0x32d74c9e rtw_phy_read_rf_sipi +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw88/rtw88_core 0x33b3f3c0 rtw_debug_mask +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw88/rtw88_core 0x348e53b2 rtw_ops +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw88/rtw88_core 0x34cc3d19 rtw_rx_stats +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw88/rtw88_core 0x3766c196 rtw_phy_cfg_agc +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 0x47e0b76e rtw_parse_tbl_bb_pg +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw88/rtw88_core 0x4eda3b66 rtw_restore_reg +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw88/rtw88_core 0x519c8ba9 rtw_rate_size +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw88/rtw88_core 0x51f90bb6 rtw_phy_write_rf_reg_sipi +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw88/rtw88_core 0x538e8977 rtw_phy_load_tables +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw88/rtw88_core 0x53c80b5a rtw_coex_write_scbd +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw88/rtw88_core 0x56802e2c rtw_phy_pwrtrack_get_delta +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw88/rtw88_core 0x58210e60 rtw_rate_section +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw88/rtw88_core 0x5923b620 rtw_phy_pwrtrack_need_iqk +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw88/rtw88_core 0x5f3e1a23 rtw_bf_remove_bfee_mu +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw88/rtw88_core 0x66f9f726 rtw_phy_read_rf +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw88/rtw88_core 0x69745a99 rtw_phy_pwrtrack_avg +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw88/rtw88_core 0x72c7086a rtw_coex_write_indirect_reg +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw88/rtw88_core 0x802f0734 rtw_phy_pwrtrack_thermal_changed +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw88/rtw88_core 0x85dec0ee rtw_rx_fill_rx_status +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw88/rtw88_core 0xa628dda1 rtw_bf_enable_bfee_su +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw88/rtw88_core 0xa77ed9ef rtw_tx_report_enqueue +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw88/rtw88_core 0xb1019846 rtw_read8_physical_efuse +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw88/rtw88_core 0xb1ce2a7f rtw_core_deinit +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw88/rtw88_core 0xb215a9af rtw_bf_cfg_csi_rate +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw88/rtw88_core 0xb3298736 rtw_register_hw +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw88/rtw88_core 0xbc046076 rtw_parse_tbl_txpwr_lmt +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw88/rtw88_core 0xc3253dce rtw_set_channel_mac +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw88/rtw88_core 0xcc8c733b rtw_phy_get_tx_power_index +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw88/rtw88_core 0xd786a82e check_hw_ready +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw88/rtw88_core 0xdf77d341 rtw_tx_fill_tx_desc +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw88/rtw88_core 0xe15cadfd rtw_fw_c2h_cmd_rx_irqsafe +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw88/rtw88_core 0xe4bfebd6 rtw_power_mode_change +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw88/rtw88_core 0xe56b6938 rtw_phy_init +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw88/rtw88_core 0xe59aa109 rtw_coex_read_indirect_reg +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw88/rtw88_core 0xe5e33ca0 rtw_phy_config_swing_table +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw88/rtw88_core 0xebd4d71e rtw_tx_write_data_rsvd_page_get +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw88/rtw88_core 0xecbce4fe rtw_phy_write_rf_reg_mix +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw88/rtw88_core 0xf34249ad rtw_fw_lps_deep_mode +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw88/rtw88_core 0xf47ce903 rtw_parse_tbl_phy_cond +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw88/rtw88_core 0xf7207113 rtw_unregister_hw +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw88/rtw88_core 0xfafe1c5a rtw_tx_write_data_h2c_get +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw88/rtw88_core 0xfc9c918d rtw_bf_phy_init +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw88/rtw88_core 0xfde487bd rtw_phy_cfg_rf +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw88/rtw88_core 0xfe397cd9 rtw_bf_remove_bfee_su +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw88/rtw88_pci 0x5ff7b988 rtw_pci_remove +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw88/rtw88_pci 0xce0b5af2 rtw_pci_probe +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw88/rtw88_pci 0xdfbdbec1 rtw_pci_shutdown +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw88/rtw88_pci 0xf10e2a5f rtw_pm_ops +EXPORT_SYMBOL drivers/net/wireless/rsi/rsi_91x 0x5402d813 rsi_config_wowlan +EXPORT_SYMBOL drivers/net/wireless/ti/wlcore/wlcore 0x1c99a722 wlcore_tx_complete +EXPORT_SYMBOL drivers/net/wireless/ti/wlcore/wlcore 0x3adcb642 wl12xx_is_dummy_packet +EXPORT_SYMBOL drivers/net/wireless/ti/wlcore/wlcore 0xbbd54003 wl1271_free_tx_id +EXPORT_SYMBOL drivers/net/wireless/ti/wlcore/wlcore 0xebbb8fb4 wlcore_calc_packet_alignment +EXPORT_SYMBOL drivers/nfc/fdp/fdp 0x28621988 fdp_nci_probe +EXPORT_SYMBOL drivers/nfc/fdp/fdp 0x76e26f5d fdp_nci_recv_frame +EXPORT_SYMBOL drivers/nfc/fdp/fdp 0x8b57a12e fdp_nci_remove +EXPORT_SYMBOL drivers/nfc/microread/microread 0x75d4368b microread_remove +EXPORT_SYMBOL drivers/nfc/microread/microread 0x99a147b4 microread_probe +EXPORT_SYMBOL drivers/nfc/nxp-nci/nxp-nci 0x51205ae3 nxp_nci_fw_recv_frame +EXPORT_SYMBOL drivers/nfc/nxp-nci/nxp-nci 0xc733b463 nxp_nci_remove +EXPORT_SYMBOL drivers/nfc/nxp-nci/nxp-nci 0xfe28d1a0 nxp_nci_probe +EXPORT_SYMBOL drivers/nfc/pn533/pn533 0xb3f32d51 pn533_recv_frame +EXPORT_SYMBOL drivers/nfc/pn544/pn544 0x777abfb2 pn544_hci_remove +EXPORT_SYMBOL drivers/nfc/pn544/pn544 0xd529dd8a pn544_hci_probe +EXPORT_SYMBOL drivers/nfc/s3fwrn5/s3fwrn5 0x6c5f171f s3fwrn5_probe +EXPORT_SYMBOL drivers/nfc/s3fwrn5/s3fwrn5 0xbf92a190 s3fwrn5_recv_frame +EXPORT_SYMBOL drivers/nfc/s3fwrn5/s3fwrn5 0xf1ae1bd3 s3fwrn5_remove +EXPORT_SYMBOL drivers/nfc/st-nci/st-nci 0x0188e600 ndlc_probe +EXPORT_SYMBOL drivers/nfc/st-nci/st-nci 0x232bff27 st_nci_se_deinit +EXPORT_SYMBOL drivers/nfc/st-nci/st-nci 0x23863525 ndlc_send +EXPORT_SYMBOL drivers/nfc/st-nci/st-nci 0x3c1f39e5 ndlc_remove +EXPORT_SYMBOL drivers/nfc/st-nci/st-nci 0x43e9c87e ndlc_open +EXPORT_SYMBOL drivers/nfc/st-nci/st-nci 0x5d331e34 st_nci_se_init +EXPORT_SYMBOL drivers/nfc/st-nci/st-nci 0x8530c971 ndlc_recv +EXPORT_SYMBOL drivers/nfc/st-nci/st-nci 0xca443478 ndlc_close +EXPORT_SYMBOL drivers/nfc/st-nci/st-nci 0xda444be9 st_nci_vendor_cmds_init +EXPORT_SYMBOL drivers/nfc/st-nci/st-nci 0xe420efd8 st_nci_se_io +EXPORT_SYMBOL drivers/nfc/st21nfca/st21nfca_hci 0x036b2bb7 st21nfca_se_init +EXPORT_SYMBOL drivers/nfc/st21nfca/st21nfca_hci 0x0c87a4de st21nfca_hci_enable_se +EXPORT_SYMBOL drivers/nfc/st21nfca/st21nfca_hci 0x136f0e72 st21nfca_hci_discover_se +EXPORT_SYMBOL drivers/nfc/st21nfca/st21nfca_hci 0x138b6e0e st21nfca_hci_remove +EXPORT_SYMBOL drivers/nfc/st21nfca/st21nfca_hci 0x188d658d st21nfca_vendor_cmds_init +EXPORT_SYMBOL drivers/nfc/st21nfca/st21nfca_hci 0x2bf4b756 st21nfca_hci_probe +EXPORT_SYMBOL drivers/nfc/st21nfca/st21nfca_hci 0x52dca55c st21nfca_se_deinit +EXPORT_SYMBOL drivers/nfc/st21nfca/st21nfca_hci 0x686a7e4e st21nfca_im_send_dep_req +EXPORT_SYMBOL drivers/nfc/st21nfca/st21nfca_hci 0x7865b636 st21nfca_hci_se_io +EXPORT_SYMBOL drivers/nfc/st21nfca/st21nfca_hci 0x79ece9a2 st21nfca_hci_loopback_event_received +EXPORT_SYMBOL drivers/nfc/st21nfca/st21nfca_hci 0xa228e0db st21nfca_dep_event_received +EXPORT_SYMBOL drivers/nfc/st21nfca/st21nfca_hci 0xa2947885 st21nfca_connectivity_event_received +EXPORT_SYMBOL drivers/nfc/st21nfca/st21nfca_hci 0xab9d1fb6 st21nfca_tm_send_dep_res +EXPORT_SYMBOL drivers/nfc/st21nfca/st21nfca_hci 0xb38a3fac st21nfca_im_send_atr_req +EXPORT_SYMBOL drivers/nfc/st21nfca/st21nfca_hci 0xc38afa11 st21nfca_dep_deinit +EXPORT_SYMBOL drivers/nfc/st21nfca/st21nfca_hci 0xdca0a8bf st21nfca_hci_disable_se +EXPORT_SYMBOL drivers/nfc/st21nfca/st21nfca_hci 0xe8dd869b st21nfca_dep_init +EXPORT_SYMBOL drivers/nfc/st21nfca/st21nfca_hci 0xe925c406 st21nfca_apdu_reader_event_received +EXPORT_SYMBOL drivers/ntb/ntb 0x004437f5 ntb_unregister_client +EXPORT_SYMBOL drivers/ntb/ntb 0x12820430 ntb_msi_init +EXPORT_SYMBOL drivers/ntb/ntb 0x1e7c63db ntb_msg_event +EXPORT_SYMBOL drivers/ntb/ntb 0x2b5e366d ntb_default_peer_port_idx +EXPORT_SYMBOL drivers/ntb/ntb 0x5ca7e458 ntb_clear_ctx +EXPORT_SYMBOL drivers/ntb/ntb 0x6cc76727 ntb_default_peer_port_number +EXPORT_SYMBOL drivers/ntb/ntb 0x7c2bb640 ntbm_msi_free_irq +EXPORT_SYMBOL drivers/ntb/ntb 0x81cf6c3f ntb_msi_peer_trigger +EXPORT_SYMBOL drivers/ntb/ntb 0x8eba83ac ntb_register_device +EXPORT_SYMBOL drivers/ntb/ntb 0x9c88b30d ntb_unregister_device +EXPORT_SYMBOL drivers/ntb/ntb 0xa43b47ff ntb_default_port_number +EXPORT_SYMBOL drivers/ntb/ntb 0xb1cdb2f5 ntb_link_event +EXPORT_SYMBOL drivers/ntb/ntb 0xc098587d __ntb_register_client +EXPORT_SYMBOL drivers/ntb/ntb 0xc4293be3 ntb_msi_peer_addr +EXPORT_SYMBOL drivers/ntb/ntb 0xca7e3ad0 ntb_set_ctx +EXPORT_SYMBOL drivers/ntb/ntb 0xd0aa7505 ntb_msi_clear_mws +EXPORT_SYMBOL drivers/ntb/ntb 0xdcb09991 ntb_msi_setup_mws +EXPORT_SYMBOL drivers/ntb/ntb 0xfa0ebb21 ntb_default_peer_port_count +EXPORT_SYMBOL drivers/ntb/ntb 0xfb0027e8 ntb_db_event +EXPORT_SYMBOL drivers/ntb/ntb 0xff067159 ntbm_msi_request_threaded_irq +EXPORT_SYMBOL drivers/parport/parport 0x09065bd2 parport_ieee1284_epp_write_data +EXPORT_SYMBOL drivers/parport/parport 0x10804598 parport_claim +EXPORT_SYMBOL drivers/parport/parport 0x111249f6 parport_claim_or_block +EXPORT_SYMBOL drivers/parport/parport 0x1199460a parport_set_timeout +EXPORT_SYMBOL drivers/parport/parport 0x219948c3 parport_remove_port +EXPORT_SYMBOL drivers/parport/parport 0x23d751b2 parport_write +EXPORT_SYMBOL drivers/parport/parport 0x2a3a2dd6 parport_del_port +EXPORT_SYMBOL drivers/parport/parport 0x2c6f1f16 parport_ieee1284_read_byte +EXPORT_SYMBOL drivers/parport/parport 0x2cd1eaa1 parport_unregister_device +EXPORT_SYMBOL drivers/parport/parport 0x3348d24b parport_put_port +EXPORT_SYMBOL drivers/parport/parport 0x33b31e25 parport_find_base +EXPORT_SYMBOL drivers/parport/parport 0x3d116209 parport_wait_event +EXPORT_SYMBOL drivers/parport/parport 0x4af5df76 parport_ieee1284_epp_read_data +EXPORT_SYMBOL drivers/parport/parport 0x4d2a941b parport_ieee1284_interrupt +EXPORT_SYMBOL drivers/parport/parport 0x51940656 parport_find_number +EXPORT_SYMBOL drivers/parport/parport 0x545e9414 parport_ieee1284_epp_read_addr +EXPORT_SYMBOL drivers/parport/parport 0x595a300b parport_ieee1284_ecp_write_addr +EXPORT_SYMBOL drivers/parport/parport 0x5e3a3912 parport_irq_handler +EXPORT_SYMBOL drivers/parport/parport 0x5f6dafdb parport_unregister_driver +EXPORT_SYMBOL drivers/parport/parport 0x60118471 __parport_register_driver +EXPORT_SYMBOL drivers/parport/parport 0x6a2b393c parport_ieee1284_ecp_read_data +EXPORT_SYMBOL drivers/parport/parport 0x6ba09c3e parport_register_port +EXPORT_SYMBOL drivers/parport/parport 0x80ab6a8c parport_wait_peripheral +EXPORT_SYMBOL drivers/parport/parport 0x8aa54408 parport_announce_port +EXPORT_SYMBOL drivers/parport/parport 0x92fe1bc0 parport_negotiate +EXPORT_SYMBOL drivers/parport/parport 0x993070e6 parport_release +EXPORT_SYMBOL drivers/parport/parport 0xabbe66f2 parport_get_port +EXPORT_SYMBOL drivers/parport/parport 0xbf97e77c parport_ieee1284_ecp_write_data +EXPORT_SYMBOL drivers/parport/parport 0xc5c6c1a0 parport_ieee1284_read_nibble +EXPORT_SYMBOL drivers/parport/parport 0xce60ea89 parport_read +EXPORT_SYMBOL drivers/parport/parport 0xd666eb46 parport_ieee1284_write_compat +EXPORT_SYMBOL drivers/parport/parport 0xeb821d54 parport_register_dev_model +EXPORT_SYMBOL drivers/parport/parport 0xefcb8ca5 parport_ieee1284_epp_write_addr +EXPORT_SYMBOL drivers/parport/parport_pc 0x1e67054c parport_pc_unregister_port +EXPORT_SYMBOL drivers/parport/parport_pc 0xd86e1bc1 parport_pc_probe_port +EXPORT_SYMBOL drivers/platform/chrome/cros_ec 0x1c70f361 cros_ec_handle_event +EXPORT_SYMBOL drivers/platform/chrome/cros_ec 0x4bb1f6aa cros_ec_unregister +EXPORT_SYMBOL drivers/platform/chrome/cros_ec 0x5a20dcd9 cros_ec_suspend +EXPORT_SYMBOL drivers/platform/chrome/cros_ec 0xaf2bc023 cros_ec_register +EXPORT_SYMBOL drivers/platform/chrome/cros_ec 0xf33b60c9 cros_ec_resume +EXPORT_SYMBOL drivers/regulator/rohm-regulator 0xaff7fc4c rohm_regulator_set_dvs_levels +EXPORT_SYMBOL drivers/rpmsg/qcom_smd 0x3330a1c8 qcom_smd_unregister_edge +EXPORT_SYMBOL drivers/rpmsg/qcom_smd 0xe3c24096 qcom_smd_register_edge +EXPORT_SYMBOL drivers/rpmsg/rpmsg_core 0x1204fca4 rpmsg_unregister_device +EXPORT_SYMBOL drivers/rpmsg/rpmsg_core 0x17b078ba rpmsg_find_device +EXPORT_SYMBOL drivers/rpmsg/rpmsg_core 0x1d6acbe1 __register_rpmsg_driver +EXPORT_SYMBOL drivers/rpmsg/rpmsg_core 0x3410f039 rpmsg_sendto +EXPORT_SYMBOL drivers/rpmsg/rpmsg_core 0x38d446d7 unregister_rpmsg_driver +EXPORT_SYMBOL drivers/rpmsg/rpmsg_core 0x3f479cd1 rpmsg_trysend +EXPORT_SYMBOL drivers/rpmsg/rpmsg_core 0x518192d0 rpmsg_create_ept +EXPORT_SYMBOL drivers/rpmsg/rpmsg_core 0x5c38ea75 rpmsg_trysend_offchannel +EXPORT_SYMBOL drivers/rpmsg/rpmsg_core 0x6dac61ab rpmsg_destroy_ept +EXPORT_SYMBOL drivers/rpmsg/rpmsg_core 0xd9740d5c rpmsg_trysendto +EXPORT_SYMBOL drivers/rpmsg/rpmsg_core 0xe7bf47f7 rpmsg_poll +EXPORT_SYMBOL drivers/rpmsg/rpmsg_core 0xe7c3be43 rpmsg_register_device +EXPORT_SYMBOL drivers/rpmsg/rpmsg_core 0xeb178f2f rpmsg_send_offchannel +EXPORT_SYMBOL drivers/rpmsg/rpmsg_core 0xf891e056 rpmsg_send +EXPORT_SYMBOL drivers/rtc/rtc-ds1685 0xd2d5c5e5 ds1685_rtc_poweroff +EXPORT_SYMBOL drivers/scsi/esp_scsi 0x0cf9dd9e scsi_esp_register +EXPORT_SYMBOL drivers/scsi/esp_scsi 0x42789342 scsi_esp_template +EXPORT_SYMBOL drivers/scsi/esp_scsi 0x4a29ab38 scsi_esp_intr +EXPORT_SYMBOL drivers/scsi/esp_scsi 0x5efeb3c3 scsi_esp_unregister +EXPORT_SYMBOL drivers/scsi/esp_scsi 0xd521f564 scsi_esp_cmd +EXPORT_SYMBOL drivers/scsi/fcoe/libfcoe 0x2564ec61 fcoe_ctlr_link_down +EXPORT_SYMBOL drivers/scsi/fcoe/libfcoe 0x525cf6f7 fcoe_transport_detach +EXPORT_SYMBOL drivers/scsi/fcoe/libfcoe 0x5c6d761d fcoe_ctlr_recv_flogi +EXPORT_SYMBOL drivers/scsi/fcoe/libfcoe 0x5cb4bf1a fcoe_transport_attach +EXPORT_SYMBOL drivers/scsi/fcoe/libfcoe 0x73181f3b fcoe_fcf_get_selected +EXPORT_SYMBOL drivers/scsi/fcoe/libfcoe 0x9de874bb fcoe_ctlr_link_up +EXPORT_SYMBOL drivers/scsi/fcoe/libfcoe 0xa8cde828 fcoe_ctlr_recv +EXPORT_SYMBOL drivers/scsi/fcoe/libfcoe 0xad597879 fcoe_ctlr_init +EXPORT_SYMBOL drivers/scsi/fcoe/libfcoe 0xc3a8479a fcoe_ctlr_els_send +EXPORT_SYMBOL drivers/scsi/fcoe/libfcoe 0xdfe3f072 fcoe_ctlr_set_fip_mode +EXPORT_SYMBOL drivers/scsi/fcoe/libfcoe 0xf4a7496c fcoe_ctlr_destroy +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x01439070 fc_seq_set_resp +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x0235b0d0 fc_fcp_init +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x0b44e718 fc_seq_send +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x10e92195 fc_lport_iterate +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x1532ee50 fc_elsct_init +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x1948690f fc_exch_mgr_reset +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x1f75d339 fc_lport_bsg_request +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x22a5bccf fc_lport_reset +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x22b90986 fc_exch_mgr_del +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x22edc8d9 fc_vport_id_lookup +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x271c4b6b fc_exch_seq_send +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x28911b31 fc_lport_init +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x2925ebbf fc_exch_mgr_add +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x2d5e0cbd fc_fabric_login +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x3109157c fc_lport_logo_resp +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x31541b1e fc_set_mfs +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x32038d92 fc_rport_logoff +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x350d5c1c fc_lport_recv +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x37ec2799 fc_fc4_register_provider +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x3b679d0c fc_seq_assign +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x3b6c8bed fc_linkdown +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x465c4394 fc_eh_device_reset +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x49c2d392 fc_exch_mgr_free +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x51a8ebc1 fc_frame_alloc_fill +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x5ab41f0c fc_lport_notifier_head +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x5e7781a9 libfc_vport_create +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x608bc09e fc_vport_setlink +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x64d4576f fc_eh_host_reset +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x67348ad4 fc_set_rport_loss_tmo +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x70bbc0dc fc_get_host_speed +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x79439204 fc_lport_flogi_resp +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x7cc341a4 _fc_frame_alloc +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x7d4bc10c fc_disc_config +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x7d8aa0f1 fc_rport_terminate_io +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x7f3407a7 fc_seq_start_next +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x811811e0 fc_exch_done +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x84148663 fc_fill_reply_hdr +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x85deb9f1 fc_slave_alloc +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x8c2c56eb fc_exch_update_stats +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x8dd43d14 fc_rport_create +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x90ab4e6d fc_exch_recv +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x9924828f fc_rport_lookup +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x9d50ed7e fc_rport_destroy +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0xa14e00d0 fc_fcp_destroy +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0xa1bcd198 fc_cpu_mask +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0xa6448725 fc_rport_recv_req +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0xaac0edeb fc_lport_config +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0xae74bbe0 fc_fill_hdr +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0xb0ddd5a1 fc_rport_flush_queue +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0xb1060083 fc_elsct_send +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0xb10d78cc fc_exch_init +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0xbc61c47f fc_get_host_port_state +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0xbf2e5656 fc_exch_mgr_list_clone +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0xc56a6f67 fc_lport_destroy +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0xc623d584 fc_disc_init +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0xcad12949 fc_lport_set_local_id +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0xcc814621 fc_fc4_deregister_provider +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0xdb9626b4 fc_exch_mgr_alloc +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0xe32b2e7d fc_eh_abort +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0xe3af80bd fc_frame_crc_check +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0xe7b44f4c fc_get_host_stats +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0xebec5b9b fc_queuecommand +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0xed0b3d8d fc_rport_login +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0xedaad876 fc_linkup +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0xef20b2f1 fc_fabric_logoff +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0xfa4667d1 fc_seq_release +EXPORT_SYMBOL drivers/scsi/libsas/libsas 0x074f4607 sas_resume_ha +EXPORT_SYMBOL drivers/scsi/libsas/libsas 0x4a8e3d34 try_test_sas_gpio_gp_bit +EXPORT_SYMBOL drivers/scsi/libsas/libsas 0x6996bdbb sas_prep_resume_ha +EXPORT_SYMBOL drivers/scsi/libsas/libsas 0xf81761de sas_suspend_ha +EXPORT_SYMBOL drivers/scsi/megaraid/megaraid_mm 0x67a73810 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 0x5e68d73f qlt_lport_deregister +EXPORT_SYMBOL drivers/scsi/qla2xxx/qla2xxx 0x5f726fab qlt_rdy_to_xfer +EXPORT_SYMBOL drivers/scsi/qla2xxx/qla2xxx 0x7299fd11 qlt_unreg_sess +EXPORT_SYMBOL drivers/scsi/qla2xxx/qla2xxx 0x7f4dbdc1 qlt_xmit_response +EXPORT_SYMBOL drivers/scsi/qla2xxx/qla2xxx 0x7f514cf0 qlt_abort_cmd +EXPORT_SYMBOL drivers/scsi/qla2xxx/qla2xxx 0x82560357 qlt_free_mcmd +EXPORT_SYMBOL drivers/scsi/qla2xxx/qla2xxx 0xa4c74dcb qlt_xmit_tm_rsp +EXPORT_SYMBOL drivers/scsi/qla2xxx/qla2xxx 0xa8756e50 qlt_stop_phase2 +EXPORT_SYMBOL drivers/scsi/qla2xxx/qla2xxx 0xadfce5e7 qlt_free_cmd +EXPORT_SYMBOL drivers/scsi/qla2xxx/qla2xxx 0xe5696aa3 qlt_lport_register +EXPORT_SYMBOL drivers/scsi/qla2xxx/qla2xxx 0xf2c1aff8 qlt_enable_vha +EXPORT_SYMBOL drivers/scsi/qla2xxx/qla2xxx 0xf37d35da qlt_stop_phase1 +EXPORT_SYMBOL drivers/scsi/raid_class 0x6a47b43f raid_class_release +EXPORT_SYMBOL drivers/scsi/raid_class 0xbcf2c7b8 raid_class_attach +EXPORT_SYMBOL drivers/scsi/raid_class 0xcdf54239 raid_component_add +EXPORT_SYMBOL drivers/scsi/scsi_transport_fc 0x2320089d fc_vport_terminate +EXPORT_SYMBOL drivers/scsi/scsi_transport_fc 0x375f8bbd fc_get_event_number +EXPORT_SYMBOL drivers/scsi/scsi_transport_fc 0x479d1a97 fc_release_transport +EXPORT_SYMBOL drivers/scsi/scsi_transport_fc 0x4f008976 fc_remote_port_rolechg +EXPORT_SYMBOL drivers/scsi/scsi_transport_fc 0x511c7f34 scsi_is_fc_rport +EXPORT_SYMBOL drivers/scsi/scsi_transport_fc 0x55326626 fc_remote_port_add +EXPORT_SYMBOL drivers/scsi/scsi_transport_fc 0x6d5388f8 fc_host_post_fc_event +EXPORT_SYMBOL drivers/scsi/scsi_transport_fc 0x7add6c52 fc_host_fpin_rcv +EXPORT_SYMBOL drivers/scsi/scsi_transport_fc 0x7ffd1a50 fc_host_post_vendor_event +EXPORT_SYMBOL drivers/scsi/scsi_transport_fc 0xa7b497b5 fc_attach_transport +EXPORT_SYMBOL drivers/scsi/scsi_transport_fc 0xb7d05f35 fc_block_rport +EXPORT_SYMBOL drivers/scsi/scsi_transport_fc 0xd0715a87 fc_vport_create +EXPORT_SYMBOL drivers/scsi/scsi_transport_fc 0xdfc4d0d2 fc_block_scsi_eh +EXPORT_SYMBOL drivers/scsi/scsi_transport_fc 0xe043f5f4 fc_host_post_event +EXPORT_SYMBOL drivers/scsi/scsi_transport_fc 0xe29db223 fc_remove_host +EXPORT_SYMBOL drivers/scsi/scsi_transport_fc 0xe81a30b4 fc_eh_timed_out +EXPORT_SYMBOL drivers/scsi/scsi_transport_fc 0xed86abd4 fc_remote_port_delete +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0x04639691 sas_phy_delete +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0x0833973d sas_port_delete_phy +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0x0d495012 sas_rphy_free +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0x0da636e7 sas_phy_add +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0x0dc42a5b sas_port_free +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0x1a9c67d0 sas_end_device_alloc +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0x1ab4966b sas_port_mark_backlink +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0x2950aa94 sas_read_port_mode_page +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0x352bfdbb sas_port_add +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0x3773171a sas_remove_children +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0x3cb9a4e9 sas_expander_alloc +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0x417028e7 sas_port_get_phy +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0x53fbf417 sas_release_transport +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0x58e96f48 sas_rphy_unlink +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0x5b8effd9 scsi_is_sas_port +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0x6132889b sas_rphy_add +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0x61dd04e4 sas_get_address +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0x6aa48181 sas_port_alloc_num +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0x70290656 sas_remove_host +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0x80d6f5c2 sas_phy_alloc +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0x8ac0dff1 sas_port_delete +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0xa4e7daf9 sas_port_alloc +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0xa7659499 sas_port_add_phy +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0xbcc2cfbf scsi_is_sas_rphy +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0xc7e7a44e sas_phy_free +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0xdc929fa7 sas_rphy_remove +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0xe90c5068 scsi_is_sas_phy +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0xec839ad0 sas_rphy_delete +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0xfeefe272 sas_attach_transport +EXPORT_SYMBOL drivers/scsi/scsi_transport_spi 0x3686ea09 spi_print_msg +EXPORT_SYMBOL drivers/scsi/scsi_transport_spi 0x4a838458 spi_attach_transport +EXPORT_SYMBOL drivers/scsi/scsi_transport_spi 0x9f3418b2 spi_dv_device +EXPORT_SYMBOL drivers/scsi/scsi_transport_spi 0xbb8a05d8 spi_display_xfer_agreement +EXPORT_SYMBOL drivers/scsi/scsi_transport_spi 0xdc15b315 spi_release_transport +EXPORT_SYMBOL drivers/scsi/scsi_transport_spi 0xe26d299a spi_schedule_dv_device +EXPORT_SYMBOL drivers/scsi/scsi_transport_srp 0x1842dfd7 srp_start_tl_fail_timers +EXPORT_SYMBOL drivers/scsi/scsi_transport_srp 0x405b6e05 srp_parse_tmo +EXPORT_SYMBOL drivers/scsi/scsi_transport_srp 0x537326e0 srp_reconnect_rport +EXPORT_SYMBOL drivers/scsi/scsi_transport_srp 0x6560fad1 srp_rport_get +EXPORT_SYMBOL drivers/scsi/scsi_transport_srp 0x683d0b23 srp_rport_put +EXPORT_SYMBOL drivers/scsi/scsi_transport_srp 0xb897c003 srp_timed_out +EXPORT_SYMBOL drivers/scsi/ufs/tc-dwc-g210 0x0aa626ef tc_dwc_g210_config_40_bit +EXPORT_SYMBOL drivers/scsi/ufs/tc-dwc-g210 0x3c8d1f16 tc_dwc_g210_config_20_bit +EXPORT_SYMBOL drivers/scsi/ufs/ufshcd-core 0x220954d5 ufshcd_shutdown +EXPORT_SYMBOL drivers/scsi/ufs/ufshcd-core 0x24b49cc9 ufshcd_runtime_suspend +EXPORT_SYMBOL drivers/scsi/ufs/ufshcd-core 0x48903a8e ufshcd_map_desc_id_to_length +EXPORT_SYMBOL drivers/scsi/ufs/ufshcd-core 0x606e3146 ufshcd_system_resume +EXPORT_SYMBOL drivers/scsi/ufs/ufshcd-core 0x66d3e0ee ufshcd_runtime_resume +EXPORT_SYMBOL drivers/scsi/ufs/ufshcd-core 0x8a3fa0c1 ufshcd_alloc_host +EXPORT_SYMBOL drivers/scsi/ufs/ufshcd-core 0x8aea6596 ufshcd_runtime_idle +EXPORT_SYMBOL drivers/scsi/ufs/ufshcd-core 0xf08e3838 ufshcd_get_local_unipro_ver +EXPORT_SYMBOL drivers/scsi/ufs/ufshcd-core 0xfcbf0ac2 ufshcd_system_suspend +EXPORT_SYMBOL drivers/scsi/ufs/ufshcd-dwc 0x1c194e69 ufshcd_dwc_dme_set_attrs +EXPORT_SYMBOL drivers/scsi/ufs/ufshcd-dwc 0x361cd055 ufshcd_dwc_link_startup_notify +EXPORT_SYMBOL drivers/soc/mediatek/mtk-cmdq-helper 0x134db152 cmdq_pkt_write +EXPORT_SYMBOL drivers/soc/mediatek/mtk-cmdq-helper 0x52eb8e83 cmdq_pkt_flush_async +EXPORT_SYMBOL drivers/soc/mediatek/mtk-cmdq-helper 0x532db664 cmdq_pkt_poll_mask +EXPORT_SYMBOL drivers/soc/mediatek/mtk-cmdq-helper 0x5ab2e662 cmdq_pkt_write_mask +EXPORT_SYMBOL drivers/soc/mediatek/mtk-cmdq-helper 0x6d61d952 cmdq_pkt_flush +EXPORT_SYMBOL drivers/soc/mediatek/mtk-cmdq-helper 0x782df519 cmdq_pkt_destroy +EXPORT_SYMBOL drivers/soc/mediatek/mtk-cmdq-helper 0x8684e564 cmdq_dev_get_client_reg +EXPORT_SYMBOL drivers/soc/mediatek/mtk-cmdq-helper 0x8b2c8efe cmdq_pkt_wfe +EXPORT_SYMBOL drivers/soc/mediatek/mtk-cmdq-helper 0x91bd54f2 cmdq_pkt_clear_event +EXPORT_SYMBOL drivers/soc/mediatek/mtk-cmdq-helper 0xa7655345 cmdq_pkt_create +EXPORT_SYMBOL drivers/soc/mediatek/mtk-cmdq-helper 0xce144008 cmdq_mbox_destroy +EXPORT_SYMBOL drivers/soc/mediatek/mtk-cmdq-helper 0xe8846f22 cmdq_pkt_poll +EXPORT_SYMBOL drivers/soc/mediatek/mtk-cmdq-helper 0xf5361fd6 cmdq_mbox_create +EXPORT_SYMBOL drivers/soc/qcom/ocmem 0x8b0a1f5d of_get_ocmem +EXPORT_SYMBOL drivers/soc/qcom/ocmem 0xc53d76b1 ocmem_allocate +EXPORT_SYMBOL drivers/soc/qcom/ocmem 0xf9b05967 ocmem_free +EXPORT_SYMBOL drivers/soc/qcom/pdr_interface 0x1c76ea4d pdr_restart_pd +EXPORT_SYMBOL drivers/soc/qcom/pdr_interface 0x432975e6 pdr_add_lookup +EXPORT_SYMBOL drivers/soc/qcom/pdr_interface 0x47b2ed49 pdr_handle_alloc +EXPORT_SYMBOL drivers/soc/qcom/pdr_interface 0xf618ca5b pdr_handle_release +EXPORT_SYMBOL drivers/soc/qcom/qcom-geni-se 0x1544bab2 geni_se_clk_freq_match +EXPORT_SYMBOL drivers/soc/qcom/qcom-geni-se 0x1bbba9e4 geni_se_rx_dma_prep +EXPORT_SYMBOL drivers/soc/qcom/qcom-geni-se 0x24a33e13 geni_se_resources_on +EXPORT_SYMBOL drivers/soc/qcom/qcom-geni-se 0x3addf5f7 geni_se_init +EXPORT_SYMBOL drivers/soc/qcom/qcom-geni-se 0x55e58a9b geni_se_select_mode +EXPORT_SYMBOL drivers/soc/qcom/qcom-geni-se 0x6b868b05 geni_se_resources_off +EXPORT_SYMBOL drivers/soc/qcom/qcom-geni-se 0x8f28a040 geni_se_config_packing +EXPORT_SYMBOL drivers/soc/qcom/qcom-geni-se 0x9ee12974 geni_se_tx_dma_unprep +EXPORT_SYMBOL drivers/soc/qcom/qcom-geni-se 0xab41e2d8 geni_se_clk_tbl_get +EXPORT_SYMBOL drivers/soc/qcom/qcom-geni-se 0xb8cd993d geni_se_tx_dma_prep +EXPORT_SYMBOL drivers/soc/qcom/qcom-geni-se 0xdc8e8279 geni_se_get_qup_hw_version +EXPORT_SYMBOL drivers/soc/qcom/qcom-geni-se 0xe748f67f geni_se_rx_dma_unprep +EXPORT_SYMBOL drivers/soc/qcom/qmi_helpers 0x133168aa qmi_encode_message +EXPORT_SYMBOL drivers/soc/qcom/qmi_helpers 0x14d0c433 qmi_txn_wait +EXPORT_SYMBOL drivers/soc/qcom/qmi_helpers 0x21ce5888 qmi_response_type_v01_ei +EXPORT_SYMBOL drivers/soc/qcom/qmi_helpers 0x42e3b107 qmi_send_request +EXPORT_SYMBOL drivers/soc/qcom/qmi_helpers 0x48483de5 qmi_send_indication +EXPORT_SYMBOL drivers/soc/qcom/qmi_helpers 0x4d2d19f6 qmi_handle_init +EXPORT_SYMBOL drivers/soc/qcom/qmi_helpers 0x55ecf290 qmi_add_server +EXPORT_SYMBOL drivers/soc/qcom/qmi_helpers 0x59c78cc2 qmi_txn_cancel +EXPORT_SYMBOL drivers/soc/qcom/qmi_helpers 0x5d7a3318 qmi_send_response +EXPORT_SYMBOL drivers/soc/qcom/qmi_helpers 0x63469a37 qmi_txn_init +EXPORT_SYMBOL drivers/soc/qcom/qmi_helpers 0xa2ff1ede qmi_decode_message +EXPORT_SYMBOL drivers/soc/qcom/qmi_helpers 0xa71d9712 qmi_add_lookup +EXPORT_SYMBOL drivers/soc/qcom/qmi_helpers 0xff522df6 qmi_handle_release +EXPORT_SYMBOL drivers/soc/qcom/smd-rpm 0x46bb046c qcom_rpm_smd_write +EXPORT_SYMBOL drivers/soc/qcom/smem 0x5a710273 qcom_smem_get_free_space +EXPORT_SYMBOL drivers/soc/qcom/smem 0x63ef36e3 qcom_smem_alloc +EXPORT_SYMBOL drivers/soc/qcom/smem 0x694c56fb qcom_smem_virt_to_phys +EXPORT_SYMBOL drivers/soc/qcom/smem 0x932eb0e3 qcom_smem_get +EXPORT_SYMBOL drivers/soc/qcom/wcnss_ctrl 0x6b345c64 qcom_wcnss_open_channel +EXPORT_SYMBOL drivers/soundwire/soundwire-bus 0x085d6187 sdw_slave_read_prop +EXPORT_SYMBOL drivers/soundwire/soundwire-bus 0x0e8b0441 sdw_stream_remove_master +EXPORT_SYMBOL drivers/soundwire/soundwire-bus 0x0fdf4af6 sdw_bus_prep_clk_stop +EXPORT_SYMBOL drivers/soundwire/soundwire-bus 0x102e634b sdw_stream_remove_slave +EXPORT_SYMBOL drivers/soundwire/soundwire-bus 0x16145ec7 sdw_nwrite +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 0x25c17d60 sdw_bus_master_delete +EXPORT_SYMBOL drivers/soundwire/soundwire-bus 0x445d9032 sdw_bus_clk_stop +EXPORT_SYMBOL drivers/soundwire/soundwire-bus 0x44c70886 sdw_write +EXPORT_SYMBOL drivers/soundwire/soundwire-bus 0x4cde88bf sdw_disable_stream +EXPORT_SYMBOL drivers/soundwire/soundwire-bus 0x6063275b sdw_stream_add_master +EXPORT_SYMBOL drivers/soundwire/soundwire-bus 0x60e31fbb sdw_find_col_index +EXPORT_SYMBOL drivers/soundwire/soundwire-bus 0x71891d59 sdw_deprepare_stream +EXPORT_SYMBOL drivers/soundwire/soundwire-bus 0x7984b6ba sdw_stream_add_slave +EXPORT_SYMBOL drivers/soundwire/soundwire-bus 0x9a438406 sdw_read +EXPORT_SYMBOL drivers/soundwire/soundwire-bus 0x9e122d79 sdw_alloc_stream +EXPORT_SYMBOL drivers/soundwire/soundwire-bus 0xad4597bb sdw_bus_master_add +EXPORT_SYMBOL drivers/soundwire/soundwire-bus 0xbbec2c2e sdw_enable_stream +EXPORT_SYMBOL drivers/soundwire/soundwire-bus 0xcad4aec4 sdw_bus_exit_clk_stop +EXPORT_SYMBOL drivers/soundwire/soundwire-bus 0xcb5558df sdw_nread +EXPORT_SYMBOL drivers/soundwire/soundwire-bus 0xcceee499 sdw_handle_slave_status +EXPORT_SYMBOL drivers/soundwire/soundwire-bus 0xda5bce09 sdw_release_stream +EXPORT_SYMBOL drivers/soundwire/soundwire-bus 0xe9c9426b sdw_master_read_prop +EXPORT_SYMBOL drivers/soundwire/soundwire-bus 0xf46e29c4 sdw_clear_slave_status +EXPORT_SYMBOL drivers/ssb/ssb 0x01169194 ssb_pmu_set_ldo_voltage +EXPORT_SYMBOL drivers/ssb/ssb 0x05b6d3fa ssb_pcicore_dev_irqvecs_enable +EXPORT_SYMBOL drivers/ssb/ssb 0x15ec2f2b ssb_device_disable +EXPORT_SYMBOL drivers/ssb/ssb 0x3665c6bb ssb_device_enable +EXPORT_SYMBOL drivers/ssb/ssb 0x710dc443 ssb_bus_unregister +EXPORT_SYMBOL drivers/ssb/ssb 0x78be198f ssb_commit_settings +EXPORT_SYMBOL drivers/ssb/ssb 0x7af1aacc ssb_chipco_gpio_control +EXPORT_SYMBOL drivers/ssb/ssb 0x841f28b5 ssb_device_is_enabled +EXPORT_SYMBOL drivers/ssb/ssb 0x975a0469 ssb_bus_suspend +EXPORT_SYMBOL drivers/ssb/ssb 0x97efbc45 ssb_bus_resume +EXPORT_SYMBOL drivers/ssb/ssb 0xa4a8bb50 ssb_clockspeed +EXPORT_SYMBOL drivers/ssb/ssb 0xa77a2ed8 ssb_set_devtypedata +EXPORT_SYMBOL drivers/ssb/ssb 0xbdd2a76b ssb_bus_sdiobus_register +EXPORT_SYMBOL drivers/ssb/ssb 0xc6aff3c8 ssb_dma_translation +EXPORT_SYMBOL drivers/ssb/ssb 0xc9d8444e __ssb_driver_register +EXPORT_SYMBOL drivers/ssb/ssb 0xcb17f1cb ssb_admatch_base +EXPORT_SYMBOL drivers/ssb/ssb 0xd5a578d6 ssb_bus_may_powerdown +EXPORT_SYMBOL drivers/ssb/ssb 0xdc78acf3 ssb_pcihost_register +EXPORT_SYMBOL drivers/ssb/ssb 0xddb9bd0c ssb_driver_unregister +EXPORT_SYMBOL drivers/ssb/ssb 0xdfc7c6ef ssb_admatch_size +EXPORT_SYMBOL drivers/ssb/ssb 0xe2672393 ssb_bus_powerup +EXPORT_SYMBOL drivers/ssb/ssb 0xf29ec4d7 ssb_pmu_set_ldo_paref +EXPORT_SYMBOL drivers/staging/fbtft/fbtft 0x00a8a8be fbtft_unregister_framebuffer +EXPORT_SYMBOL drivers/staging/fbtft/fbtft 0x082ad0ab fbtft_register_backlight +EXPORT_SYMBOL drivers/staging/fbtft/fbtft 0x1308d84d fbtft_remove_common +EXPORT_SYMBOL drivers/staging/fbtft/fbtft 0x33ed1b7b fbtft_read_spi +EXPORT_SYMBOL drivers/staging/fbtft/fbtft 0x36fa66b5 fbtft_write_gpio16_wr +EXPORT_SYMBOL drivers/staging/fbtft/fbtft 0x3ebf75d3 fbtft_framebuffer_alloc +EXPORT_SYMBOL drivers/staging/fbtft/fbtft 0x4c224c9c fbtft_dbg_hex +EXPORT_SYMBOL drivers/staging/fbtft/fbtft 0x553c0463 fbtft_write_gpio8_wr +EXPORT_SYMBOL drivers/staging/fbtft/fbtft 0x5d24b317 fbtft_register_framebuffer +EXPORT_SYMBOL drivers/staging/fbtft/fbtft 0x5fddd0c5 fbtft_init_display +EXPORT_SYMBOL drivers/staging/fbtft/fbtft 0x602552f5 fbtft_write_reg16_bus8 +EXPORT_SYMBOL drivers/staging/fbtft/fbtft 0x66f39873 fbtft_write_spi_emulate_9 +EXPORT_SYMBOL drivers/staging/fbtft/fbtft 0x6d1a7b52 fbtft_framebuffer_release +EXPORT_SYMBOL drivers/staging/fbtft/fbtft 0x723d986b fbtft_write_reg8_bus8 +EXPORT_SYMBOL drivers/staging/fbtft/fbtft 0x75bb5535 fbtft_write_vmem16_bus16 +EXPORT_SYMBOL drivers/staging/fbtft/fbtft 0x7c94c980 fbtft_probe_common +EXPORT_SYMBOL drivers/staging/fbtft/fbtft 0x8629c1c4 fbtft_write_buf_dc +EXPORT_SYMBOL drivers/staging/fbtft/fbtft 0xa8fb9c85 fbtft_write_gpio16_wr_latched +EXPORT_SYMBOL drivers/staging/fbtft/fbtft 0xb0ec4c09 fbtft_unregister_backlight +EXPORT_SYMBOL drivers/staging/fbtft/fbtft 0xbde222b6 fbtft_write_reg8_bus9 +EXPORT_SYMBOL drivers/staging/fbtft/fbtft 0xc5ab77e6 fbtft_write_reg16_bus16 +EXPORT_SYMBOL drivers/staging/fbtft/fbtft 0xcbcaafde fbtft_write_spi +EXPORT_SYMBOL drivers/staging/fbtft/fbtft 0xd382a22c fbtft_write_vmem8_bus8 +EXPORT_SYMBOL drivers/staging/fbtft/fbtft 0xe0684ad7 fbtft_write_vmem16_bus9 +EXPORT_SYMBOL drivers/staging/fbtft/fbtft 0xf07b2d21 fbtft_write_vmem16_bus8 +EXPORT_SYMBOL drivers/staging/iio/addac/adt7316 0xd65c46ad adt7316_probe +EXPORT_SYMBOL drivers/staging/iio/meter/ade7854 0x5f753ff2 ade7854_probe +EXPORT_SYMBOL drivers/staging/nvec/nvec 0x0a5ea71f nvec_write_async +EXPORT_SYMBOL drivers/staging/nvec/nvec 0x32996b65 nvec_write_sync +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x036e7acc dot11d_init +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x05557596 rtllib_wx_get_essid +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x05fa29d1 rtllib_softmac_start_protocol +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x11a97b0a rtllib_start_send_beacons +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x129660c2 rtllib_wx_set_gen_ie +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x1b308131 rtllib_wx_set_rawtx +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x21eccff6 rtllib_get_beacon +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x22166084 rt_global_debug_component +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x25bf2152 rtllib_wx_set_auth +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x2cd784f6 rtllib_start_scan_syncro +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x2e4f1392 rtllib_stop_scan +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x2ebad3d2 rtllib_ps_tx_ack +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x35772c2f alloc_rtllib +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x42050bb6 rtllib_wx_get_scan +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x4413b7c0 rtllib_wx_get_wap +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x4bdcd14f rtllib_DisableIntelPromiscuousMode +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x5145f039 HT_update_self_and_peer_setting +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x522a754f rtllib_act_scanning +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x56a69be6 rtllib_wx_set_rts +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x605ff3c6 rtllib_stop_send_beacons +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x637057c1 rtllib_wx_get_name +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x68daec6c RemovePeerTS +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x69ff71d0 rtllib_wx_get_power +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x742825ef rtllib_wx_set_mlme +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x76c4382a rtllib_wx_set_scan +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x8139394e rtllib_wx_set_freq +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x8357542a rtllib_wx_set_rate +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x8e751bd4 dot11d_channel_map +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x90726f8c rtllib_wx_set_power +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x9aff380b rtllib_wx_set_encode_ext +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0xa1baa459 rtllib_sta_ps_send_null_frame +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0xb366471d rtllib_xmit +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0xb471fb83 rtllib_wx_get_encode +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0xb5c0adff rtllib_rx +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0xb5f80ad2 rtllib_wx_get_freq +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0xb79667b6 rtllib_wx_get_rate +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0xc52a6dc3 rtllib_legal_channel +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0xd1bbc3a7 rtllib_reset_queue +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0xd401bfc1 rtllib_softmac_stop_protocol +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0xd6556b42 rtllib_wx_set_encode +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0xda181e37 rtllib_wx_set_mode +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0xdf78f620 rtllib_wlan_frequencies +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0xe025e265 rtllib_stop_scan_syncro +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0xe0fbf40c rtllib_MgntDisconnect +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0xebf9d7a9 rtllib_wx_set_wap +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0xeed92dab rtllib_wx_get_mode +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0xf8d5682f free_rtllib +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0xf94cfb8f rtllib_wx_get_rts +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0xfcd86bca rtllib_wx_set_essid +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0xfe94984a rtllib_EnableIntelPromiscuousMode +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0xff9e5194 notify_wx_assoc_event +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x00726253 ieee80211_stop_scan_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x06207241 ieee80211_wx_get_power_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x0a5134aa ieee80211_softmac_xmit_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x0d12462b ieee80211_wx_set_scan_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x101a7d59 ieee80211_wx_get_freq_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x2466e835 SendDisassociation_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x25b4fdd5 ieee80211_start_send_beacons_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x26b27d04 is_legal_channel +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x29c50d46 ieee80211_rx_mgt_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x2b9d587e ieee80211_rx_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x2be8a2ec HTUpdateSelfAndPeerSetting +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x33f91c31 ieee80211_stop_send_beacons_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x357c1a6a ieee80211_wx_set_rts_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x3634ae6a ieee80211_softmac_start_protocol_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x48f45486 ieee80211_wx_get_rts_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x4a75af2a ieee80211_wx_get_rate_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x515f99e3 ieee80211_disassociate_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x594d8bc9 dot11d_update_country_ie +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x604c95fa ieee80211_txb_free_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x658fdfbe ieee80211_wx_set_power_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x68e20600 ieee80211_wx_set_encode_ext_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x69aa06c4 dot11d_get_max_tx_pwr_in_dbm +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x6f69a8ef to_legal_channel +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x77b05102 ieee80211_wx_get_mode_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x8173226d ieee80211_wx_get_encode_ext_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x821ee897 ieee80211_wx_get_encode_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x8cbed708 dot11d_reset +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x98b19dfa ieee80211_reset_queue_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x9948b224 rtl8192u_dot11d_init +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x9dfc231e ieee80211_start_scan_syncro_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x9fe2ec6b ieee80211_wx_set_essid_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0xa4d36036 ieee80211_wx_get_scan_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0xa9768fb5 ieee80211_softmac_stop_protocol_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0xa9bb4d6b ieee80211_wx_set_wap_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0xa9bcc7d6 ieee80211_wx_set_mlme_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0xaf7fa8b7 ieee80211_wx_set_encode_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0xb0b6cd25 ieee80211_is_54g_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0xb4e0eb1a dot11d_scan_complete +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0xb9db5b44 ieee80211_wx_set_freq_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0xbaac4085 ieee80211_wx_set_rawtx_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0xbadf65b4 ieee80211_wake_queue_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0xc25bf05d ieee80211_get_beacon_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0xc370a43e ieee80211_wlan_frequencies_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0xc9d979df ieee80211_stop_queue_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0xd336ea44 notify_wx_assoc_event_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0xd4330387 ieee80211_wx_get_wap_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0xd5739e3b ieee80211_wx_set_gen_ie_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0xd8fc9e97 ieee80211_wx_get_name_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0xde71771f ieee80211_wx_set_mode_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0xe3b48937 ieee80211_wx_set_rate_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0xe6a360c6 ieee80211_softmac_scan_syncro_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0xe828423f ieee80211_is_shortslot_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0xe8faad15 ieee80211_ps_tx_ack_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0xee0c15d4 ieee80211_wpa_supplicant_ioctl_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0xee3cad5e ieee80211_wx_set_auth_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0xfc4d4194 ieee80211_wx_get_essid_rsl +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x0893b0bf iscsit_find_cmd_from_itt +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x169f85f0 iscsit_process_nop_out +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x1b0f3146 iscsit_queue_rsp +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x1cab764a iscsit_check_dataout_payload +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x229b920e iscsit_process_scsi_cmd +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x40d2b732 iscsit_set_unsolicited_dataout +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x4cd6b097 iscsit_allocate_cmd +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x556c04f0 iscsit_check_dataout_hdr +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x5cfde078 iscsit_unregister_transport +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x5f2447ba iscsit_aborted_task +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x6040ec0d iscsit_build_task_mgt_rsp +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x64491b99 iscsit_register_transport +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x7200d874 iscsit_find_cmd_from_itt_or_dump +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x7f092604 iscsit_add_reject +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x82bf228a iscsit_process_text_cmd +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x83900f84 __iscsit_check_dataout_hdr +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x89e67783 iscsit_build_datain_pdu +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x8a7e8de6 iscsit_build_nopin_rsp +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x91dcca52 iscsit_handle_task_mgt_cmd +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x9d397693 iscsit_setup_text_cmd +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x9d5c4467 iscsit_free_cmd +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x9fbdeade iscsit_immediate_queue +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0xa1c47bf5 iscsit_increment_maxcmdsn +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0xa4b038c0 iscsit_build_rsp_pdu +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0xa7744be7 iscsit_handle_snack +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0xa8198446 iscsit_cause_connection_reinstatement +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0xa9d85cd7 iscsit_stop_dataout_timer +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0xb08b0710 iscsit_response_queue +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0xb2fc5bca iscsit_tmr_post_handler +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0xb5aeb87b iscsit_logout_post_handler +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0xbd41b75e iscsit_get_datain_values +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0xc12dde72 iscsit_build_reject +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0xc3c0d8da iscsit_add_cmd_to_immediate_queue +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0xc817c336 iscsit_release_cmd +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0xd36dad18 iscsit_build_text_rsp +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0xd49a4743 iscsit_handle_logout_cmd +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0xdc750f7d iscsit_sequence_cmd +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0xe1d99b44 iscsit_reject_cmd +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0xe3038524 iscsit_build_logout_rsp +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0xe4a763a0 iscsi_change_param_sprintf +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0xe4e55491 iscsit_build_r2ts_for_cmd +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0xe6a6c281 iscsit_setup_nop_out +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0xf34332f0 iscsi_find_param_from_key +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0xf4c8eaf9 iscsi_target_check_login_request +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0xfa59bd31 iscsit_setup_scsi_cmd +EXPORT_SYMBOL drivers/target/target_core_mod 0x00fa1d47 transport_init_se_cmd +EXPORT_SYMBOL drivers/target/target_core_mod 0x0871ffd6 transport_set_vpd_ident +EXPORT_SYMBOL drivers/target/target_core_mod 0x0cc9e3ab target_alloc_sgl +EXPORT_SYMBOL drivers/target/target_core_mod 0x113965e2 target_complete_cmd_with_length +EXPORT_SYMBOL drivers/target/target_core_mod 0x125a06f2 transport_copy_sense_to_cmd +EXPORT_SYMBOL drivers/target/target_core_mod 0x142072c0 transport_set_vpd_assoc +EXPORT_SYMBOL drivers/target/target_core_mod 0x169626de target_submit_cmd_map_sgls +EXPORT_SYMBOL drivers/target/target_core_mod 0x1a52504a transport_alloc_session +EXPORT_SYMBOL drivers/target/target_core_mod 0x1acbb1b2 core_tmr_alloc_req +EXPORT_SYMBOL drivers/target/target_core_mod 0x24592d87 sbc_dif_verify +EXPORT_SYMBOL drivers/target/target_core_mod 0x262dffff target_depend_item +EXPORT_SYMBOL drivers/target/target_core_mod 0x26d1dc33 transport_alloc_session_tags +EXPORT_SYMBOL drivers/target/target_core_mod 0x275f2a12 transport_kmap_data_sg +EXPORT_SYMBOL drivers/target/target_core_mod 0x2857117f transport_kunmap_data_sg +EXPORT_SYMBOL drivers/target/target_core_mod 0x296e0d9b core_tpg_get_initiator_node_acl +EXPORT_SYMBOL drivers/target/target_core_mod 0x29f76554 core_tpg_register +EXPORT_SYMBOL drivers/target/target_core_mod 0x2ad43661 target_sess_cmd_list_set_waiting +EXPORT_SYMBOL drivers/target/target_core_mod 0x2c8bba09 target_submit_tmr +EXPORT_SYMBOL drivers/target/target_core_mod 0x2cf85a5e core_tpg_set_initiator_node_tag +EXPORT_SYMBOL drivers/target/target_core_mod 0x38f994d1 sbc_parse_cdb +EXPORT_SYMBOL drivers/target/target_core_mod 0x398e4a41 target_put_sess_cmd +EXPORT_SYMBOL drivers/target/target_core_mod 0x3a20a9d7 transport_set_vpd_ident_type +EXPORT_SYMBOL drivers/target/target_core_mod 0x3b81d3ea sbc_get_write_same_sectors +EXPORT_SYMBOL drivers/target/target_core_mod 0x3c222c05 core_tpg_set_initiator_node_queue_depth +EXPORT_SYMBOL drivers/target/target_core_mod 0x3c6aa66a core_alua_check_nonop_delay +EXPORT_SYMBOL drivers/target/target_core_mod 0x3e7331d8 target_execute_cmd +EXPORT_SYMBOL drivers/target/target_core_mod 0x3fb7d36d target_configure_unmap_from_queue +EXPORT_SYMBOL drivers/target/target_core_mod 0x413c41af sbc_get_device_type +EXPORT_SYMBOL drivers/target/target_core_mod 0x44714b35 target_complete_cmd +EXPORT_SYMBOL drivers/target/target_core_mod 0x44e6c711 passthrough_pr_attrib_attrs +EXPORT_SYMBOL drivers/target/target_core_mod 0x47cc5331 transport_lookup_tmr_lun +EXPORT_SYMBOL drivers/target/target_core_mod 0x4a54e5a7 sbc_attrib_attrs +EXPORT_SYMBOL drivers/target/target_core_mod 0x4b767959 target_submit_cmd +EXPORT_SYMBOL drivers/target/target_core_mod 0x5460d056 spc_emulate_inquiry_std +EXPORT_SYMBOL drivers/target/target_core_mod 0x54a4a979 target_cmd_init_cdb +EXPORT_SYMBOL drivers/target/target_core_mod 0x54ef8ec0 core_allocate_nexus_loss_ua +EXPORT_SYMBOL drivers/target/target_core_mod 0x5640fa2d target_cmd_parse_cdb +EXPORT_SYMBOL drivers/target/target_core_mod 0x5a57cdb3 target_lun_is_rdonly +EXPORT_SYMBOL drivers/target/target_core_mod 0x5b579fef target_remove_session +EXPORT_SYMBOL drivers/target/target_core_mod 0x61dc4e6b target_register_template +EXPORT_SYMBOL drivers/target/target_core_mod 0x6c87639d transport_send_check_condition_and_sense +EXPORT_SYMBOL drivers/target/target_core_mod 0x70e4d0c3 transport_generic_request_failure +EXPORT_SYMBOL drivers/target/target_core_mod 0x7384fd9f core_tpg_check_initiator_node_acl +EXPORT_SYMBOL drivers/target/target_core_mod 0x73a7aaf3 target_show_cmd +EXPORT_SYMBOL drivers/target/target_core_mod 0x804160bc sbc_dif_copy_prot +EXPORT_SYMBOL drivers/target/target_core_mod 0x80699291 target_show_dynamic_sessions +EXPORT_SYMBOL drivers/target/target_core_mod 0x80baada7 target_put_nacl +EXPORT_SYMBOL drivers/target/target_core_mod 0x90bafb3f target_backend_unregister +EXPORT_SYMBOL drivers/target/target_core_mod 0x92de6e98 transport_backend_register +EXPORT_SYMBOL drivers/target/target_core_mod 0x9df7660a target_setup_session +EXPORT_SYMBOL drivers/target/target_core_mod 0xa0838291 target_get_sess_cmd +EXPORT_SYMBOL drivers/target/target_core_mod 0xa1def25b transport_wait_for_tasks +EXPORT_SYMBOL drivers/target/target_core_mod 0xa880969b transport_free_session +EXPORT_SYMBOL drivers/target/target_core_mod 0xa986e454 target_send_busy +EXPORT_SYMBOL drivers/target/target_core_mod 0xaa72a9fe transport_deregister_session +EXPORT_SYMBOL drivers/target/target_core_mod 0xadab2e1c transport_lookup_cmd_lun +EXPORT_SYMBOL drivers/target/target_core_mod 0xaf9d837e target_free_sgl +EXPORT_SYMBOL drivers/target/target_core_mod 0xc583fe77 target_undepend_item +EXPORT_SYMBOL drivers/target/target_core_mod 0xcae96dd5 transport_generic_handle_tmr +EXPORT_SYMBOL drivers/target/target_core_mod 0xd1aa4088 transport_init_session +EXPORT_SYMBOL drivers/target/target_core_mod 0xd5591b54 spc_emulate_evpd_83 +EXPORT_SYMBOL drivers/target/target_core_mod 0xd78247a7 target_nacl_find_deve +EXPORT_SYMBOL drivers/target/target_core_mod 0xdcc47a6c spc_parse_cdb +EXPORT_SYMBOL drivers/target/target_core_mod 0xe42d224b spc_emulate_report_luns +EXPORT_SYMBOL drivers/target/target_core_mod 0xe8bd3b0b passthrough_parse_cdb +EXPORT_SYMBOL drivers/target/target_core_mod 0xe9c61d60 transport_generic_free_cmd +EXPORT_SYMBOL drivers/target/target_core_mod 0xeaad0d18 target_wait_for_sess_cmds +EXPORT_SYMBOL drivers/target/target_core_mod 0xec541f83 core_tpg_deregister +EXPORT_SYMBOL drivers/target/target_core_mod 0xecb9b7f1 target_tpg_has_node_acl +EXPORT_SYMBOL drivers/target/target_core_mod 0xf35b6b61 transport_generic_new_cmd +EXPORT_SYMBOL drivers/target/target_core_mod 0xf3c2dfe0 transport_set_vpd_proto_id +EXPORT_SYMBOL drivers/target/target_core_mod 0xf5df9d0d __transport_register_session +EXPORT_SYMBOL drivers/target/target_core_mod 0xf662ca2e target_to_linux_sector +EXPORT_SYMBOL drivers/target/target_core_mod 0xf8ece579 target_unregister_template +EXPORT_SYMBOL drivers/target/target_core_mod 0xfae87978 transport_handle_cdb_direct +EXPORT_SYMBOL drivers/target/target_core_mod 0xfd8d36cd transport_deregister_session_configfs +EXPORT_SYMBOL drivers/target/target_core_mod 0xfede8835 passthrough_attrib_attrs +EXPORT_SYMBOL drivers/target/target_core_mod 0xff3c4fa7 transport_register_session +EXPORT_SYMBOL drivers/usb/class/cdc-wdm 0x02750968 usb_cdc_wdm_register +EXPORT_SYMBOL drivers/usb/gadget/libcomposite 0x1793dc96 usb_os_desc_prepare_interf_dir +EXPORT_SYMBOL drivers/usb/host/sl811-hcd 0xbbf2fcea sl811h_driver +EXPORT_SYMBOL drivers/usb/serial/usb_wwan 0x0e0d98a0 usb_wwan_tiocmset +EXPORT_SYMBOL drivers/usb/serial/usb_wwan 0x17bca229 usb_wwan_write +EXPORT_SYMBOL drivers/usb/serial/usb_wwan 0x210df390 usb_wwan_port_remove +EXPORT_SYMBOL drivers/usb/serial/usb_wwan 0x278ca318 usb_wwan_tiocmget +EXPORT_SYMBOL drivers/usb/serial/usb_wwan 0x2a89343f usb_wwan_get_serial_info +EXPORT_SYMBOL drivers/usb/serial/usb_wwan 0x61aa3d11 usb_wwan_resume +EXPORT_SYMBOL drivers/usb/serial/usb_wwan 0x7397becf usb_wwan_suspend +EXPORT_SYMBOL drivers/usb/serial/usb_wwan 0x7e7c82e5 usb_wwan_open +EXPORT_SYMBOL drivers/usb/serial/usb_wwan 0xa44c6e9a usb_wwan_close +EXPORT_SYMBOL drivers/usb/serial/usb_wwan 0xb44abd03 usb_wwan_dtr_rts +EXPORT_SYMBOL drivers/usb/serial/usb_wwan 0xba314f6c usb_wwan_write_room +EXPORT_SYMBOL drivers/usb/serial/usb_wwan 0xfe0ba0ae usb_wwan_set_serial_info +EXPORT_SYMBOL drivers/usb/serial/usb_wwan 0xff030ac4 usb_wwan_chars_in_buffer +EXPORT_SYMBOL drivers/usb/serial/usbserial 0x0a75af9c usb_serial_suspend +EXPORT_SYMBOL drivers/usb/serial/usbserial 0xa77de977 usb_serial_resume +EXPORT_SYMBOL drivers/vfio/mdev/mdev 0x02e6440e mdev_uuid +EXPORT_SYMBOL drivers/vfio/mdev/mdev 0x0b8d2f8b mdev_parent_dev +EXPORT_SYMBOL drivers/vfio/mdev/mdev 0x0ccbfccc mdev_from_dev +EXPORT_SYMBOL drivers/vfio/mdev/mdev 0x1e556cb0 mdev_register_driver +EXPORT_SYMBOL drivers/vfio/mdev/mdev 0x29c2491a mdev_get_iommu_device +EXPORT_SYMBOL drivers/vfio/mdev/mdev 0x4727e341 mdev_unregister_device +EXPORT_SYMBOL drivers/vfio/mdev/mdev 0x7b738cc6 mdev_set_drvdata +EXPORT_SYMBOL drivers/vfio/mdev/mdev 0x8cfd066c mdev_get_drvdata +EXPORT_SYMBOL drivers/vfio/mdev/mdev 0xdd0a02e0 mdev_set_iommu_device +EXPORT_SYMBOL drivers/vfio/mdev/mdev 0xe8b1d70c mdev_register_device +EXPORT_SYMBOL drivers/vfio/mdev/mdev 0xf9528833 mdev_unregister_driver +EXPORT_SYMBOL drivers/vfio/mdev/mdev 0xf996bcb8 mdev_dev +EXPORT_SYMBOL drivers/vfio/vfio 0x05b8cfda vfio_set_irqs_validate_and_prepare +EXPORT_SYMBOL drivers/vfio/vfio 0x0beb34b2 vfio_dma_rw +EXPORT_SYMBOL drivers/vfio/vfio 0x0f655355 vfio_info_add_capability +EXPORT_SYMBOL drivers/vfio/vfio 0x1475db81 vfio_register_notifier +EXPORT_SYMBOL drivers/vfio/vfio 0x48a81d7e vfio_group_pin_pages +EXPORT_SYMBOL drivers/vfio/vfio 0x51f16cdb vfio_info_cap_shift +EXPORT_SYMBOL drivers/vfio/vfio 0x73ec81d2 vfio_pin_pages +EXPORT_SYMBOL drivers/vfio/vfio 0x762badd2 vfio_unpin_pages +EXPORT_SYMBOL drivers/vfio/vfio 0x7834defd vfio_group_unpin_pages +EXPORT_SYMBOL drivers/vfio/vfio 0xfe91b0b9 vfio_unregister_notifier +EXPORT_SYMBOL drivers/vhost/vhost 0x963c858e vhost_chr_write_iter +EXPORT_SYMBOL drivers/vhost/vhost 0xf2e09dcf vhost_chr_poll +EXPORT_SYMBOL drivers/vhost/vringh 0x2e91ca97 vringh_iov_pull_kern +EXPORT_SYMBOL drivers/vhost/vringh 0x367ce26a vringh_iov_push_user +EXPORT_SYMBOL drivers/vhost/vringh 0x3b2fbd56 vringh_getdesc_kern +EXPORT_SYMBOL drivers/vhost/vringh 0x44d6f41b vringh_notify_enable_kern +EXPORT_SYMBOL drivers/vhost/vringh 0x4d0529ee vringh_complete_multi_user +EXPORT_SYMBOL drivers/vhost/vringh 0x56f694fc vringh_abandon_kern +EXPORT_SYMBOL drivers/vhost/vringh 0x58bc86ac vringh_complete_user +EXPORT_SYMBOL drivers/vhost/vringh 0x5aa88061 vringh_init_user +EXPORT_SYMBOL drivers/vhost/vringh 0x5e47ee29 vringh_notify_enable_user +EXPORT_SYMBOL drivers/vhost/vringh 0x7bda5e6d vringh_iov_push_kern +EXPORT_SYMBOL drivers/vhost/vringh 0x80ad788a vringh_notify_disable_user +EXPORT_SYMBOL drivers/vhost/vringh 0x821e9390 vringh_iov_pull_user +EXPORT_SYMBOL drivers/vhost/vringh 0x85665842 vringh_notify_enable_iotlb +EXPORT_SYMBOL drivers/vhost/vringh 0x8701069c vringh_abandon_iotlb +EXPORT_SYMBOL drivers/vhost/vringh 0x8bfb5a2b vringh_complete_iotlb +EXPORT_SYMBOL drivers/vhost/vringh 0x8e78a074 vringh_need_notify_user +EXPORT_SYMBOL drivers/vhost/vringh 0x91b5a92c vringh_abandon_user +EXPORT_SYMBOL drivers/vhost/vringh 0x98a7e2b2 vringh_getdesc_user +EXPORT_SYMBOL drivers/vhost/vringh 0xa8a5b2a1 vringh_getdesc_iotlb +EXPORT_SYMBOL drivers/vhost/vringh 0xac2d6746 vringh_init_kern +EXPORT_SYMBOL drivers/vhost/vringh 0xae7c3cbf vringh_iov_push_iotlb +EXPORT_SYMBOL drivers/vhost/vringh 0xaf01a583 vringh_set_iotlb +EXPORT_SYMBOL drivers/vhost/vringh 0xbc172ecf vringh_iov_pull_iotlb +EXPORT_SYMBOL drivers/vhost/vringh 0xbf4f4fbd vringh_need_notify_iotlb +EXPORT_SYMBOL drivers/vhost/vringh 0xd3a14d7d vringh_complete_kern +EXPORT_SYMBOL drivers/vhost/vringh 0xe544457e vringh_notify_disable_iotlb +EXPORT_SYMBOL drivers/vhost/vringh 0xee1c7df3 vringh_init_iotlb +EXPORT_SYMBOL drivers/vhost/vringh 0xf1bbb2ad vringh_need_notify_kern +EXPORT_SYMBOL drivers/vhost/vringh 0xff6e6a53 vringh_notify_disable_kern +EXPORT_SYMBOL drivers/video/backlight/lcd 0x0b9a67db devm_lcd_device_register +EXPORT_SYMBOL drivers/video/backlight/lcd 0x68c6cd29 devm_lcd_device_unregister +EXPORT_SYMBOL drivers/video/backlight/lcd 0xa74e400e lcd_device_register +EXPORT_SYMBOL drivers/video/backlight/lcd 0xe044d98e lcd_device_unregister +EXPORT_SYMBOL drivers/video/fbdev/core/svgalib 0x019707e8 svga_settile +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 0x41dcb827 svga_get_caps +EXPORT_SYMBOL drivers/video/fbdev/core/svgalib 0x4ab38ef2 svga_set_default_crt_regs +EXPORT_SYMBOL drivers/video/fbdev/core/svgalib 0x5d6e47d2 svga_tilecursor +EXPORT_SYMBOL drivers/video/fbdev/core/svgalib 0x64d744b7 svga_tilefill +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 0xb0ab2b2e svga_check_timings +EXPORT_SYMBOL drivers/video/fbdev/core/svgalib 0xd22ca511 svga_set_default_atc_regs +EXPORT_SYMBOL drivers/video/fbdev/core/svgalib 0xd341828b svga_tileblit +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 0xe526b657 svga_tilecopy +EXPORT_SYMBOL drivers/video/fbdev/core/svgalib 0xf912e3da svga_get_tilemax +EXPORT_SYMBOL drivers/video/fbdev/core/syscopyarea 0x2a955d07 sys_copyarea +EXPORT_SYMBOL drivers/video/fbdev/core/sysfillrect 0x2f85092c sys_fillrect +EXPORT_SYMBOL drivers/video/fbdev/core/sysimgblt 0xc6899e2b sys_imageblit +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 0x56ddf13e 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 0x64e720de mac_find_mode +EXPORT_SYMBOL drivers/video/fbdev/macmodes 0xe2304303 mac_map_monitor_sense +EXPORT_SYMBOL drivers/video/fbdev/matrox/g450_pll 0x634f84a3 matroxfb_g450_setclk +EXPORT_SYMBOL drivers/video/fbdev/matrox/g450_pll 0x9df849a0 matroxfb_g450_setpll_cond +EXPORT_SYMBOL drivers/video/fbdev/matrox/g450_pll 0xd8e0016d g450_mnp2f +EXPORT_SYMBOL drivers/video/fbdev/matrox/matroxfb_DAC1064 0x05f48fdd DAC1064_global_restore +EXPORT_SYMBOL drivers/video/fbdev/matrox/matroxfb_DAC1064 0x16dfbbfb matrox_mystique +EXPORT_SYMBOL drivers/video/fbdev/matrox/matroxfb_DAC1064 0x792f4a0e DAC1064_global_init +EXPORT_SYMBOL drivers/video/fbdev/matrox/matroxfb_DAC1064 0xb51aa2b0 matrox_G100 +EXPORT_SYMBOL drivers/video/fbdev/matrox/matroxfb_Ti3026 0xf8276aec matrox_millennium +EXPORT_SYMBOL drivers/video/fbdev/matrox/matroxfb_accel 0x3fe8c3cb matrox_cfbX_init +EXPORT_SYMBOL drivers/video/fbdev/matrox/matroxfb_base 0x5099637e matroxfb_enable_irq +EXPORT_SYMBOL drivers/video/fbdev/matrox/matroxfb_base 0xa41fdebc matroxfb_register_driver +EXPORT_SYMBOL drivers/video/fbdev/matrox/matroxfb_base 0xb1e80004 matroxfb_wait_for_sync +EXPORT_SYMBOL drivers/video/fbdev/matrox/matroxfb_base 0xeae7aa8b matroxfb_unregister_driver +EXPORT_SYMBOL drivers/video/fbdev/matrox/matroxfb_g450 0x7b739fde matroxfb_g450_shutdown +EXPORT_SYMBOL drivers/video/fbdev/matrox/matroxfb_g450 0xf657a773 matroxfb_g450_connect +EXPORT_SYMBOL drivers/video/fbdev/matrox/matroxfb_misc 0x00a8c10e matroxfb_read_pins +EXPORT_SYMBOL drivers/video/fbdev/matrox/matroxfb_misc 0x25cf8049 matroxfb_PLL_calcclock +EXPORT_SYMBOL drivers/video/fbdev/matrox/matroxfb_misc 0x2c442988 matroxfb_DAC_out +EXPORT_SYMBOL drivers/video/fbdev/matrox/matroxfb_misc 0x34f6240f matroxfb_vgaHWinit +EXPORT_SYMBOL drivers/video/fbdev/matrox/matroxfb_misc 0x973c7987 matroxfb_vgaHWrestore +EXPORT_SYMBOL drivers/video/fbdev/matrox/matroxfb_misc 0xc0ea10d0 matroxfb_DAC_in +EXPORT_SYMBOL drivers/video/fbdev/matrox/matroxfb_misc 0xcdc90c64 matroxfb_var2my +EXPORT_SYMBOL drivers/video/fbdev/omap2/omapfb/dss/omapdss 0x01575b17 dss_mgr_connect +EXPORT_SYMBOL drivers/video/fbdev/omap2/omapfb/dss/omapdss 0x01ea132e dispc_runtime_put +EXPORT_SYMBOL drivers/video/fbdev/omap2/omapfb/dss/omapdss 0x03005606 omapdss_get_version +EXPORT_SYMBOL drivers/video/fbdev/omap2/omapfb/dss/omapdss 0x0a8e13d2 omap_dss_get_overlay +EXPORT_SYMBOL drivers/video/fbdev/omap2/omapfb/dss/omapdss 0x14517904 omapdss_output_set_device +EXPORT_SYMBOL drivers/video/fbdev/omap2/omapfb/dss/omapdss 0x156bfe43 dss_mgr_set_timings +EXPORT_SYMBOL drivers/video/fbdev/omap2/omapfb/dss/omapdss 0x1c12e0e6 dss_mgr_register_framedone_handler +EXPORT_SYMBOL drivers/video/fbdev/omap2/omapfb/dss/omapdss 0x1d49ce4d omapdss_find_mgr_from_display +EXPORT_SYMBOL drivers/video/fbdev/omap2/omapfb/dss/omapdss 0x2423d741 dispc_ovl_setup +EXPORT_SYMBOL drivers/video/fbdev/omap2/omapfb/dss/omapdss 0x299448b6 omap_dss_get_overlay_manager +EXPORT_SYMBOL drivers/video/fbdev/omap2/omapfb/dss/omapdss 0x3082a0b3 dss_feat_get_supported_color_modes +EXPORT_SYMBOL drivers/video/fbdev/omap2/omapfb/dss/omapdss 0x35f0bf91 omapdss_default_get_recommended_bpp +EXPORT_SYMBOL drivers/video/fbdev/omap2/omapfb/dss/omapdss 0x3b9dd3bb omap_dss_find_device +EXPORT_SYMBOL drivers/video/fbdev/omap2/omapfb/dss/omapdss 0x3c803531 omapdss_default_get_resolution +EXPORT_SYMBOL drivers/video/fbdev/omap2/omapfb/dss/omapdss 0x3d36d54d dispc_mgr_set_lcd_config +EXPORT_SYMBOL drivers/video/fbdev/omap2/omapfb/dss/omapdss 0x3e9be9ec dss_mgr_enable +EXPORT_SYMBOL drivers/video/fbdev/omap2/omapfb/dss/omapdss 0x42912b0c dispc_clear_irqstatus +EXPORT_SYMBOL drivers/video/fbdev/omap2/omapfb/dss/omapdss 0x45d74ef6 dispc_mgr_enable +EXPORT_SYMBOL drivers/video/fbdev/omap2/omapfb/dss/omapdss 0x4bd67a8d dispc_write_irqenable +EXPORT_SYMBOL drivers/video/fbdev/omap2/omapfb/dss/omapdss 0x4c33081d omapdss_compat_uninit +EXPORT_SYMBOL drivers/video/fbdev/omap2/omapfb/dss/omapdss 0x4f676649 omapdss_unregister_display +EXPORT_SYMBOL drivers/video/fbdev/omap2/omapfb/dss/omapdss 0x54f6830a omapdss_get_default_display_name +EXPORT_SYMBOL drivers/video/fbdev/omap2/omapfb/dss/omapdss 0x55b1c332 omap_dss_get_output +EXPORT_SYMBOL drivers/video/fbdev/omap2/omapfb/dss/omapdss 0x5689afe7 dispc_ovl_enable +EXPORT_SYMBOL drivers/video/fbdev/omap2/omapfb/dss/omapdss 0x5c761004 dss_mgr_start_update +EXPORT_SYMBOL drivers/video/fbdev/omap2/omapfb/dss/omapdss 0x5c866caa dss_mgr_disable +EXPORT_SYMBOL drivers/video/fbdev/omap2/omapfb/dss/omapdss 0x628c0482 omapdss_register_display +EXPORT_SYMBOL drivers/video/fbdev/omap2/omapfb/dss/omapdss 0x636b3461 omap_dss_get_num_overlays +EXPORT_SYMBOL drivers/video/fbdev/omap2/omapfb/dss/omapdss 0x639ee0b5 omapdss_unregister_output +EXPORT_SYMBOL drivers/video/fbdev/omap2/omapfb/dss/omapdss 0x66cdd3c9 dispc_mgr_setup +EXPORT_SYMBOL drivers/video/fbdev/omap2/omapfb/dss/omapdss 0x6b1a3090 omap_dss_ntsc_timings +EXPORT_SYMBOL drivers/video/fbdev/omap2/omapfb/dss/omapdss 0x7057c4ea dss_mgr_set_lcd_config +EXPORT_SYMBOL drivers/video/fbdev/omap2/omapfb/dss/omapdss 0x7064a42c omap_dss_find_output_by_port_node +EXPORT_SYMBOL drivers/video/fbdev/omap2/omapfb/dss/omapdss 0x70e39dae dss_uninstall_mgr_ops +EXPORT_SYMBOL drivers/video/fbdev/omap2/omapfb/dss/omapdss 0x7331f0a3 dss_mgr_disconnect +EXPORT_SYMBOL drivers/video/fbdev/omap2/omapfb/dss/omapdss 0x827143a1 omap_dispc_unregister_isr +EXPORT_SYMBOL drivers/video/fbdev/omap2/omapfb/dss/omapdss 0x86581300 omap_dss_find_output +EXPORT_SYMBOL drivers/video/fbdev/omap2/omapfb/dss/omapdss 0x87fdb051 dispc_mgr_go +EXPORT_SYMBOL drivers/video/fbdev/omap2/omapfb/dss/omapdss 0x882004ae dss_mgr_unregister_framedone_handler +EXPORT_SYMBOL drivers/video/fbdev/omap2/omapfb/dss/omapdss 0x8a13a64a omapdss_register_output +EXPORT_SYMBOL drivers/video/fbdev/omap2/omapfb/dss/omapdss 0x8f1922b3 omap_dss_get_next_device +EXPORT_SYMBOL drivers/video/fbdev/omap2/omapfb/dss/omapdss 0x93963a85 dss_feat_get_num_mgrs +EXPORT_SYMBOL drivers/video/fbdev/omap2/omapfb/dss/omapdss 0x95dceb40 dss_install_mgr_ops +EXPORT_SYMBOL drivers/video/fbdev/omap2/omapfb/dss/omapdss 0x967cb4e8 dispc_ovl_set_channel_out +EXPORT_SYMBOL drivers/video/fbdev/omap2/omapfb/dss/omapdss 0xa13d27f5 dispc_read_irqenable +EXPORT_SYMBOL drivers/video/fbdev/omap2/omapfb/dss/omapdss 0xa4f6a175 dispc_mgr_get_sync_lost_irq +EXPORT_SYMBOL drivers/video/fbdev/omap2/omapfb/dss/omapdss 0xb3099d36 omapdss_default_get_timings +EXPORT_SYMBOL drivers/video/fbdev/omap2/omapfb/dss/omapdss 0xb3ed5aa9 dispc_mgr_is_enabled +EXPORT_SYMBOL drivers/video/fbdev/omap2/omapfb/dss/omapdss 0xb7f94a15 dispc_mgr_set_timings +EXPORT_SYMBOL drivers/video/fbdev/omap2/omapfb/dss/omapdss 0xba8ddcea dispc_mgr_get_vsync_irq +EXPORT_SYMBOL drivers/video/fbdev/omap2/omapfb/dss/omapdss 0xbafeee36 dispc_runtime_get +EXPORT_SYMBOL drivers/video/fbdev/omap2/omapfb/dss/omapdss 0xbb300900 omap_dss_get_device +EXPORT_SYMBOL drivers/video/fbdev/omap2/omapfb/dss/omapdss 0xbe0d4752 omap_video_timings_to_videomode +EXPORT_SYMBOL drivers/video/fbdev/omap2/omapfb/dss/omapdss 0xc152a375 omapdss_find_output_from_display +EXPORT_SYMBOL drivers/video/fbdev/omap2/omapfb/dss/omapdss 0xc45105c3 dispc_mgr_go_busy +EXPORT_SYMBOL drivers/video/fbdev/omap2/omapfb/dss/omapdss 0xcc197296 omap_dispc_register_isr +EXPORT_SYMBOL drivers/video/fbdev/omap2/omapfb/dss/omapdss 0xcd730805 omap_dss_put_device +EXPORT_SYMBOL drivers/video/fbdev/omap2/omapfb/dss/omapdss 0xce466b8f dispc_ovl_check +EXPORT_SYMBOL drivers/video/fbdev/omap2/omapfb/dss/omapdss 0xd1067ba7 dispc_ovl_enabled +EXPORT_SYMBOL drivers/video/fbdev/omap2/omapfb/dss/omapdss 0xd70adbc1 videomode_to_omap_video_timings +EXPORT_SYMBOL drivers/video/fbdev/omap2/omapfb/dss/omapdss 0xd8ed186b omap_dss_pal_timings +EXPORT_SYMBOL drivers/video/fbdev/omap2/omapfb/dss/omapdss 0xdb93b838 dispc_free_irq +EXPORT_SYMBOL drivers/video/fbdev/omap2/omapfb/dss/omapdss 0xdf50ae1e omapdss_output_unset_device +EXPORT_SYMBOL drivers/video/fbdev/omap2/omapfb/dss/omapdss 0xee2bc2d0 omapdss_is_initialized +EXPORT_SYMBOL drivers/video/fbdev/omap2/omapfb/dss/omapdss 0xef3b2795 dispc_mgr_get_framedone_irq +EXPORT_SYMBOL drivers/video/fbdev/omap2/omapfb/dss/omapdss 0xf4a7fc6d omapdss_compat_init +EXPORT_SYMBOL drivers/video/fbdev/omap2/omapfb/dss/omapdss 0xf4f63234 dispc_read_irqstatus +EXPORT_SYMBOL drivers/video/fbdev/omap2/omapfb/dss/omapdss 0xf9427374 dispc_request_irq +EXPORT_SYMBOL drivers/video/fbdev/omap2/omapfb/dss/omapdss 0xfe40bf95 dss_feat_get_num_ovls +EXPORT_SYMBOL drivers/video/fbdev/omap2/omapfb/dss/omapdss 0xffd2cf99 omap_dss_get_num_overlay_managers +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/w1/slaves/w1_ds2780 0x18126c7c w1_ds2780_io +EXPORT_SYMBOL drivers/w1/slaves/w1_ds2780 0xe10f7b61 w1_ds2780_eeprom_cmd +EXPORT_SYMBOL drivers/w1/slaves/w1_ds2781 0x4513ae12 w1_ds2781_io +EXPORT_SYMBOL drivers/w1/slaves/w1_ds2781 0x4ea1052c w1_ds2781_eeprom_cmd +EXPORT_SYMBOL drivers/w1/wire 0x005179dc w1_register_family +EXPORT_SYMBOL drivers/w1/wire 0x20f51514 w1_remove_master_device +EXPORT_SYMBOL drivers/w1/wire 0x997fad34 w1_unregister_family +EXPORT_SYMBOL drivers/w1/wire 0xd6395888 w1_add_master_device +EXPORT_SYMBOL drivers/watchdog/bd70528_wdt 0x1739cefd bd70528_wdt_unlock +EXPORT_SYMBOL drivers/watchdog/bd70528_wdt 0x4bac7c65 bd70528_wdt_lock +EXPORT_SYMBOL drivers/watchdog/bd70528_wdt 0xe372564d bd70528_wdt_set +EXPORT_SYMBOL fs/fscache/fscache 0x024a990b fscache_put_operation +EXPORT_SYMBOL fs/fscache/fscache 0x0308c04c fscache_add_cache +EXPORT_SYMBOL fs/fscache/fscache 0x059a00d2 fscache_cache_cleared_wq +EXPORT_SYMBOL fs/fscache/fscache 0x0bf226fe __fscache_unregister_netfs +EXPORT_SYMBOL fs/fscache/fscache 0x1b1ebe44 __fscache_wait_on_invalidate +EXPORT_SYMBOL fs/fscache/fscache 0x1f2676d9 fscache_withdraw_cache +EXPORT_SYMBOL fs/fscache/fscache 0x2089bd59 fscache_mark_page_cached +EXPORT_SYMBOL fs/fscache/fscache 0x271b91ac fscache_init_cache +EXPORT_SYMBOL fs/fscache/fscache 0x34d35af0 fscache_object_init +EXPORT_SYMBOL fs/fscache/fscache 0x36df92e9 fscache_object_destroy +EXPORT_SYMBOL fs/fscache/fscache 0x38592ec6 __fscache_uncache_all_inode_pages +EXPORT_SYMBOL fs/fscache/fscache 0x4a7a722d __fscache_register_netfs +EXPORT_SYMBOL fs/fscache/fscache 0x5b787a9d fscache_op_complete +EXPORT_SYMBOL fs/fscache/fscache 0x64d47956 fscache_enqueue_operation +EXPORT_SYMBOL fs/fscache/fscache 0x6a2a948d fscache_check_aux +EXPORT_SYMBOL fs/fscache/fscache 0x74530ecd fscache_op_debug_id +EXPORT_SYMBOL fs/fscache/fscache 0x769dfcc3 __fscache_wait_on_page_write +EXPORT_SYMBOL fs/fscache/fscache 0x78e1240c __fscache_attr_changed +EXPORT_SYMBOL fs/fscache/fscache 0x7d702acf __fscache_uncache_page +EXPORT_SYMBOL fs/fscache/fscache 0x7e3ee75a fscache_object_retrying_stale +EXPORT_SYMBOL fs/fscache/fscache 0x7faa9417 fscache_fsdef_index +EXPORT_SYMBOL fs/fscache/fscache 0x80db0ed7 __fscache_acquire_cookie +EXPORT_SYMBOL fs/fscache/fscache 0x8743585a __fscache_alloc_page +EXPORT_SYMBOL fs/fscache/fscache 0x8afc55cd __fscache_write_page +EXPORT_SYMBOL fs/fscache/fscache 0x8d87edab __fscache_update_cookie +EXPORT_SYMBOL fs/fscache/fscache 0x9385ce03 fscache_object_lookup_negative +EXPORT_SYMBOL fs/fscache/fscache 0x96527d75 __fscache_read_or_alloc_page +EXPORT_SYMBOL fs/fscache/fscache 0xa302d0f5 fscache_obtained_object +EXPORT_SYMBOL fs/fscache/fscache 0xb079ab5d fscache_object_mark_killed +EXPORT_SYMBOL fs/fscache/fscache 0xb418eb57 __fscache_readpages_cancel +EXPORT_SYMBOL fs/fscache/fscache 0xbb270544 fscache_operation_init +EXPORT_SYMBOL fs/fscache/fscache 0xbf557778 __fscache_enable_cookie +EXPORT_SYMBOL fs/fscache/fscache 0xde628ca5 __fscache_maybe_release_page +EXPORT_SYMBOL fs/fscache/fscache 0xde867e4f __fscache_read_or_alloc_pages +EXPORT_SYMBOL fs/fscache/fscache 0xe493c0e0 __fscache_disable_cookie +EXPORT_SYMBOL fs/fscache/fscache 0xe5d17b52 __fscache_check_page_write +EXPORT_SYMBOL fs/fscache/fscache 0xe9092726 __fscache_relinquish_cookie +EXPORT_SYMBOL fs/fscache/fscache 0xeaa83fdb __fscache_invalidate +EXPORT_SYMBOL fs/fscache/fscache 0xeba5a2ae fscache_io_error +EXPORT_SYMBOL fs/fscache/fscache 0xfd15dd49 __fscache_check_consistency +EXPORT_SYMBOL fs/fscache/fscache 0xff99163c fscache_mark_pages_cached +EXPORT_SYMBOL fs/ocfs2/cluster/ocfs2_nodemanager 0xbfd7d7a2 o2hb_global_heartbeat_active +EXPORT_SYMBOL fs/quota/quota_tree 0x36f1d97c qtree_entry_unused +EXPORT_SYMBOL fs/quota/quota_tree 0x4f9481c8 qtree_read_dquot +EXPORT_SYMBOL fs/quota/quota_tree 0x6dc74f84 qtree_get_next_id +EXPORT_SYMBOL fs/quota/quota_tree 0x7755b42d qtree_write_dquot +EXPORT_SYMBOL fs/quota/quota_tree 0xba64ddde qtree_release_dquot +EXPORT_SYMBOL fs/quota/quota_tree 0xecdbc352 qtree_delete_dquot +EXPORT_SYMBOL lib/crc-itu-t 0xa2048e95 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 0xba95c5c0 crc7_be +EXPORT_SYMBOL lib/crc8 0x5a742e56 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/libblake2s 0x246ea205 blake2s_update +EXPORT_SYMBOL lib/crypto/libblake2s 0x2cfa6ca1 blake2s256_hmac +EXPORT_SYMBOL lib/crypto/libblake2s 0xadae6df8 blake2s_final +EXPORT_SYMBOL lib/crypto/libblake2s-generic 0x23eea787 blake2s_compress_generic +EXPORT_SYMBOL lib/crypto/libchacha 0xcec122d7 chacha_crypt_generic +EXPORT_SYMBOL lib/crypto/libchacha20poly1305 0x5519169b xchacha20poly1305_decrypt +EXPORT_SYMBOL lib/crypto/libchacha20poly1305 0x5d776412 chacha20poly1305_decrypt +EXPORT_SYMBOL lib/crypto/libchacha20poly1305 0x64375eb4 chacha20poly1305_encrypt +EXPORT_SYMBOL lib/crypto/libchacha20poly1305 0x738d84bf xchacha20poly1305_encrypt +EXPORT_SYMBOL lib/crypto/libchacha20poly1305 0xb1ec48ec chacha20poly1305_decrypt_sg_inplace +EXPORT_SYMBOL lib/crypto/libchacha20poly1305 0xf0dbf797 chacha20poly1305_encrypt_sg_inplace +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 0x4dba97c6 poly1305_core_setkey +EXPORT_SYMBOL lib/crypto/libpoly1305 0xbcb90cb3 poly1305_core_emit +EXPORT_SYMBOL lib/libcrc32c 0x89a0cd52 crc32c_impl +EXPORT_SYMBOL lib/libcrc32c 0xb15b4109 crc32c +EXPORT_SYMBOL lib/lru_cache 0x03f599c7 lc_get_cumulative +EXPORT_SYMBOL lib/lru_cache 0x1a4bb846 lc_seq_printf_stats +EXPORT_SYMBOL lib/lru_cache 0x4f125ebc lc_seq_dump_details +EXPORT_SYMBOL lib/lru_cache 0x4feade4b lc_create +EXPORT_SYMBOL lib/lru_cache 0x56fc3ea0 lc_put +EXPORT_SYMBOL lib/lru_cache 0x619ed575 lc_try_get +EXPORT_SYMBOL lib/lru_cache 0x84e0214b lc_committed +EXPORT_SYMBOL lib/lru_cache 0xbbe7c23c lc_element_by_index +EXPORT_SYMBOL lib/lru_cache 0xc48fa976 lc_set +EXPORT_SYMBOL lib/lru_cache 0xc6e4cd46 lc_reset +EXPORT_SYMBOL lib/lru_cache 0xcb990a55 lc_try_lock +EXPORT_SYMBOL lib/lru_cache 0xcea6747e lc_destroy +EXPORT_SYMBOL lib/lru_cache 0xd212c9f0 lc_get +EXPORT_SYMBOL lib/lru_cache 0xeb13128b lc_del +EXPORT_SYMBOL lib/lru_cache 0xf460a486 lc_is_used +EXPORT_SYMBOL lib/lru_cache 0xf5ea5f5c lc_index_of +EXPORT_SYMBOL lib/lru_cache 0xf6acec20 lc_find +EXPORT_SYMBOL lib/lz4/lz4hc_compress 0x4cc636f2 LZ4_loadDictHC +EXPORT_SYMBOL lib/lz4/lz4hc_compress 0x765fd165 LZ4_saveDictHC +EXPORT_SYMBOL lib/lz4/lz4hc_compress 0xd02774b1 LZ4_compress_HC_continue +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 0x067fa594 objagg_create +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 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 0x3df1d3c1 lowpan_unregister_netdev +EXPORT_SYMBOL net/6lowpan/6lowpan 0x3e839ce4 lowpan_unregister_netdevice +EXPORT_SYMBOL net/6lowpan/6lowpan 0x41025a78 lowpan_register_netdevice +EXPORT_SYMBOL net/6lowpan/6lowpan 0x82e4c1b4 lowpan_nhc_add +EXPORT_SYMBOL net/6lowpan/6lowpan 0xa84c399c lowpan_register_netdev +EXPORT_SYMBOL net/6lowpan/6lowpan 0xbf7f77d5 lowpan_nhc_del +EXPORT_SYMBOL net/802/p8022 0x0bc8d71e unregister_8022_client +EXPORT_SYMBOL net/802/p8022 0x60c96670 register_8022_client +EXPORT_SYMBOL net/802/psnap 0x299d8d97 register_snap_client +EXPORT_SYMBOL net/802/psnap 0xbb5841ad unregister_snap_client +EXPORT_SYMBOL net/9p/9pnet 0x05c64358 p9_client_write +EXPORT_SYMBOL net/9p/9pnet 0x0969cee2 p9_client_cb +EXPORT_SYMBOL net/9p/9pnet 0x108e3b57 p9_client_mkdir_dotl +EXPORT_SYMBOL net/9p/9pnet 0x1916807a p9_release_pages +EXPORT_SYMBOL net/9p/9pnet 0x1f81a129 p9_client_fcreate +EXPORT_SYMBOL net/9p/9pnet 0x1fda2268 p9_client_link +EXPORT_SYMBOL net/9p/9pnet 0x21e00b11 p9_client_open +EXPORT_SYMBOL net/9p/9pnet 0x22a05bbe p9_fcall_fini +EXPORT_SYMBOL net/9p/9pnet 0x2734214c p9_client_renameat +EXPORT_SYMBOL net/9p/9pnet 0x3629289c v9fs_register_trans +EXPORT_SYMBOL net/9p/9pnet 0x39d68b1c p9_client_statfs +EXPORT_SYMBOL net/9p/9pnet 0x3d73a797 p9_errstr2errno +EXPORT_SYMBOL net/9p/9pnet 0x3d986cf9 p9dirent_read +EXPORT_SYMBOL net/9p/9pnet 0x3fbb31a8 p9_client_read +EXPORT_SYMBOL net/9p/9pnet 0x44405213 p9_client_readdir +EXPORT_SYMBOL net/9p/9pnet 0x460dd228 p9_client_clunk +EXPORT_SYMBOL net/9p/9pnet 0x46b0fa8f p9_client_create +EXPORT_SYMBOL net/9p/9pnet 0x4c1c47a1 p9_req_put +EXPORT_SYMBOL net/9p/9pnet 0x4fce9726 p9_client_mknod_dotl +EXPORT_SYMBOL net/9p/9pnet 0x51bcb96a v9fs_unregister_trans +EXPORT_SYMBOL net/9p/9pnet 0x5202920d p9_show_client_options +EXPORT_SYMBOL net/9p/9pnet 0x5d385173 p9_client_getlock_dotl +EXPORT_SYMBOL net/9p/9pnet 0x666d99f6 p9_is_proto_dotu +EXPORT_SYMBOL net/9p/9pnet 0x6a23d287 p9_is_proto_dotl +EXPORT_SYMBOL net/9p/9pnet 0x6e265925 p9_client_destroy +EXPORT_SYMBOL net/9p/9pnet 0x721b7804 p9_client_walk +EXPORT_SYMBOL net/9p/9pnet 0x73300f11 p9_client_getattr_dotl +EXPORT_SYMBOL net/9p/9pnet 0x73d5ed38 p9_client_begin_disconnect +EXPORT_SYMBOL net/9p/9pnet 0x7b514ce4 p9_client_stat +EXPORT_SYMBOL net/9p/9pnet 0x800e8867 p9_client_fsync +EXPORT_SYMBOL net/9p/9pnet 0x80bbc6fd p9_parse_header +EXPORT_SYMBOL net/9p/9pnet 0x812f61bd p9_client_read_once +EXPORT_SYMBOL net/9p/9pnet 0x87aa4d5a p9_client_remove +EXPORT_SYMBOL net/9p/9pnet 0x8cfc4f42 p9_client_disconnect +EXPORT_SYMBOL net/9p/9pnet 0xa276b4fe p9_client_symlink +EXPORT_SYMBOL net/9p/9pnet 0xa57f9823 p9_client_readlink +EXPORT_SYMBOL net/9p/9pnet 0xb24f8ff1 p9_client_create_dotl +EXPORT_SYMBOL net/9p/9pnet 0xbac55235 p9_client_attach +EXPORT_SYMBOL net/9p/9pnet 0xcbeb6888 v9fs_get_default_trans +EXPORT_SYMBOL net/9p/9pnet 0xce01338d p9_client_wstat +EXPORT_SYMBOL net/9p/9pnet 0xd384c683 p9stat_free +EXPORT_SYMBOL net/9p/9pnet 0xdcfa0717 p9_client_lock_dotl +EXPORT_SYMBOL net/9p/9pnet 0xdde30637 p9_tag_lookup +EXPORT_SYMBOL net/9p/9pnet 0xe1f90088 p9_client_unlinkat +EXPORT_SYMBOL net/9p/9pnet 0xe2d8ca10 p9_client_rename +EXPORT_SYMBOL net/9p/9pnet 0xe4a9f3a7 p9_client_setattr +EXPORT_SYMBOL net/9p/9pnet 0xe58a3360 p9_error_init +EXPORT_SYMBOL net/9p/9pnet 0xe6676c18 v9fs_get_trans_by_name +EXPORT_SYMBOL net/9p/9pnet 0xe6b1e55e p9stat_read +EXPORT_SYMBOL net/appletalk/appletalk 0x896937f4 aarp_send_ddp +EXPORT_SYMBOL net/appletalk/appletalk 0x8c986672 atrtr_get_dev +EXPORT_SYMBOL net/appletalk/appletalk 0xcc56b01f alloc_ltalkdev +EXPORT_SYMBOL net/appletalk/appletalk 0xd5f79afa atalk_find_dev_addr +EXPORT_SYMBOL net/atm/atm 0x261d6d72 atm_init_aal5 +EXPORT_SYMBOL net/atm/atm 0x2c0455b1 vcc_release_async +EXPORT_SYMBOL net/atm/atm 0x2cc2d52d vcc_hash +EXPORT_SYMBOL net/atm/atm 0x2df5c731 register_atm_ioctl +EXPORT_SYMBOL net/atm/atm 0x3cf31459 deregister_atm_ioctl +EXPORT_SYMBOL net/atm/atm 0x4443d399 atm_proc_root +EXPORT_SYMBOL net/atm/atm 0x4baad08f atm_dev_release_vccs +EXPORT_SYMBOL net/atm/atm 0x590b40d4 atm_dev_deregister +EXPORT_SYMBOL net/atm/atm 0x59c4d954 atm_dev_lookup +EXPORT_SYMBOL net/atm/atm 0x6b9a3871 vcc_sklist_lock +EXPORT_SYMBOL net/atm/atm 0x6e088cbd atm_dev_register +EXPORT_SYMBOL net/atm/atm 0x8db0e487 atm_dev_signal_change +EXPORT_SYMBOL net/atm/atm 0x9e3488ad vcc_process_recv_queue +EXPORT_SYMBOL net/atm/atm 0x9feaf287 sonet_subtract_stats +EXPORT_SYMBOL net/atm/atm 0xa2719545 vcc_insert_socket +EXPORT_SYMBOL net/atm/atm 0xaa024146 sonet_copy_stats +EXPORT_SYMBOL net/atm/atm 0xd6fa81fe atm_alloc_charge +EXPORT_SYMBOL net/atm/atm 0xdb195db6 atm_charge +EXPORT_SYMBOL net/atm/atm 0xf49bc67a atm_pcr_goal +EXPORT_SYMBOL net/ax25/ax25 0x14cecd59 ax25_display_timer +EXPORT_SYMBOL net/ax25/ax25 0x242852b9 ax25_uid_policy +EXPORT_SYMBOL net/ax25/ax25 0x4502c65a asc2ax +EXPORT_SYMBOL net/ax25/ax25 0x45dc1654 ax25_listen_register +EXPORT_SYMBOL net/ax25/ax25 0x53dea1ff ax2asc +EXPORT_SYMBOL net/ax25/ax25 0x59957ac5 ax25_send_frame +EXPORT_SYMBOL net/ax25/ax25 0x6a9f711b ax25_linkfail_release +EXPORT_SYMBOL net/ax25/ax25 0x7c3a5108 ax25_linkfail_register +EXPORT_SYMBOL net/ax25/ax25 0x8612be82 ax25_listen_release +EXPORT_SYMBOL net/ax25/ax25 0x8ede9e26 ax25_protocol_release +EXPORT_SYMBOL net/ax25/ax25 0x976a871c ax25_ip_xmit +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/ax25/ax25 0xf6aa6761 ax25_header_ops +EXPORT_SYMBOL net/ax25/ax25 0xfa13b645 ax25_find_cb +EXPORT_SYMBOL net/bluetooth/bluetooth 0x0103ce8e bt_accept_dequeue +EXPORT_SYMBOL net/bluetooth/bluetooth 0x01fe8d5f hci_register_dev +EXPORT_SYMBOL net/bluetooth/bluetooth 0x0718b8b7 bt_info +EXPORT_SYMBOL net/bluetooth/bluetooth 0x096852dc l2cap_is_socket +EXPORT_SYMBOL net/bluetooth/bluetooth 0x0b21b250 l2cap_conn_get +EXPORT_SYMBOL net/bluetooth/bluetooth 0x0f9f0541 hci_cmd_sync +EXPORT_SYMBOL net/bluetooth/bluetooth 0x13d24a15 l2cap_chan_close +EXPORT_SYMBOL net/bluetooth/bluetooth 0x13f67233 bt_accept_unlink +EXPORT_SYMBOL net/bluetooth/bluetooth 0x1c2dc99d hci_mgmt_chan_unregister +EXPORT_SYMBOL net/bluetooth/bluetooth 0x20c55dc6 bt_sock_wait_ready +EXPORT_SYMBOL net/bluetooth/bluetooth 0x214e4265 bt_warn +EXPORT_SYMBOL net/bluetooth/bluetooth 0x24216106 bt_procfs_cleanup +EXPORT_SYMBOL net/bluetooth/bluetooth 0x25123560 bt_sock_reclassify_lock +EXPORT_SYMBOL net/bluetooth/bluetooth 0x2d3d1d5a bt_sock_wait_state +EXPORT_SYMBOL net/bluetooth/bluetooth 0x30489e40 hci_unregister_dev +EXPORT_SYMBOL net/bluetooth/bluetooth 0x31d777fc hci_suspend_dev +EXPORT_SYMBOL net/bluetooth/bluetooth 0x3451ccee hci_reset_dev +EXPORT_SYMBOL net/bluetooth/bluetooth 0x38843059 bt_sock_recvmsg +EXPORT_SYMBOL net/bluetooth/bluetooth 0x41660e61 bt_accept_enqueue +EXPORT_SYMBOL net/bluetooth/bluetooth 0x43c1d1f3 hci_conn_security +EXPORT_SYMBOL net/bluetooth/bluetooth 0x443b9afa hci_set_hw_info +EXPORT_SYMBOL net/bluetooth/bluetooth 0x459ac6bc hci_get_route +EXPORT_SYMBOL net/bluetooth/bluetooth 0x5410bd95 hci_recv_frame +EXPORT_SYMBOL net/bluetooth/bluetooth 0x5c8fe0d2 hci_mgmt_chan_register +EXPORT_SYMBOL net/bluetooth/bluetooth 0x7256f912 hci_resume_dev +EXPORT_SYMBOL net/bluetooth/bluetooth 0x7aad008b bt_to_errno +EXPORT_SYMBOL net/bluetooth/bluetooth 0x7b5ce5c3 baswap +EXPORT_SYMBOL net/bluetooth/bluetooth 0x7b8c32f1 bt_err +EXPORT_SYMBOL net/bluetooth/bluetooth 0x88460908 l2cap_register_user +EXPORT_SYMBOL net/bluetooth/bluetooth 0x89881cde hci_unregister_cb +EXPORT_SYMBOL net/bluetooth/bluetooth 0x8fea24bd bt_sock_unregister +EXPORT_SYMBOL net/bluetooth/bluetooth 0x97c6064a hci_conn_switch_role +EXPORT_SYMBOL net/bluetooth/bluetooth 0x9fb40409 hci_register_cb +EXPORT_SYMBOL net/bluetooth/bluetooth 0xa06eb068 __hci_cmd_sync +EXPORT_SYMBOL net/bluetooth/bluetooth 0xa5b3a9ea hci_free_dev +EXPORT_SYMBOL net/bluetooth/bluetooth 0xa71c913b __hci_cmd_send +EXPORT_SYMBOL net/bluetooth/bluetooth 0xad044c99 hci_alloc_dev +EXPORT_SYMBOL net/bluetooth/bluetooth 0xad8495c1 hci_set_fw_info +EXPORT_SYMBOL net/bluetooth/bluetooth 0xb30d44e4 bt_sock_poll +EXPORT_SYMBOL net/bluetooth/bluetooth 0xb55e0a9c bt_procfs_init +EXPORT_SYMBOL net/bluetooth/bluetooth 0xc5cf3350 hci_recv_diag +EXPORT_SYMBOL net/bluetooth/bluetooth 0xc985b46c bt_sock_unlink +EXPORT_SYMBOL net/bluetooth/bluetooth 0xd7613212 bt_err_ratelimited +EXPORT_SYMBOL net/bluetooth/bluetooth 0xdc80800f __hci_cmd_sync_ev +EXPORT_SYMBOL net/bluetooth/bluetooth 0xddacccf6 bt_warn_ratelimited +EXPORT_SYMBOL net/bluetooth/bluetooth 0xe84b8467 l2cap_conn_put +EXPORT_SYMBOL net/bluetooth/bluetooth 0xe98dd728 bt_sock_stream_recvmsg +EXPORT_SYMBOL net/bluetooth/bluetooth 0xefd048a3 bt_sock_link +EXPORT_SYMBOL net/bluetooth/bluetooth 0xf0fb61d3 bt_sock_ioctl +EXPORT_SYMBOL net/bluetooth/bluetooth 0xf49bf631 hci_conn_check_secure +EXPORT_SYMBOL net/bluetooth/bluetooth 0xf9aeb557 l2cap_unregister_user +EXPORT_SYMBOL net/bluetooth/bluetooth 0xfada7689 bt_sock_register +EXPORT_SYMBOL net/bridge/netfilter/ebtables 0x75d41a92 ebt_do_table +EXPORT_SYMBOL net/bridge/netfilter/ebtables 0x8d05cd00 ebt_register_table +EXPORT_SYMBOL net/bridge/netfilter/ebtables 0xa63c5b05 ebt_unregister_table +EXPORT_SYMBOL net/caif/caif 0x1446b60a caif_client_register_refcnt +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 0x38ed6cf1 cfcnfg_add_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 0x53ca4149 caif_disconnect_client +EXPORT_SYMBOL net/caif/caif 0x839ddb7b cfcnfg_set_phy_state +EXPORT_SYMBOL net/caif/caif 0x8af8b64a caif_connect_client +EXPORT_SYMBOL net/caif/caif 0x9e3e305d cfpkt_set_prio +EXPORT_SYMBOL net/caif/caif 0xb7b6874e caif_free_client +EXPORT_SYMBOL net/caif/caif 0xca003685 caif_enroll_dev +EXPORT_SYMBOL net/caif/caif 0xd1d1aab2 get_cfcnfg +EXPORT_SYMBOL net/can/can 0x169b66de can_proto_register +EXPORT_SYMBOL net/can/can 0x1beee06c can_rx_register +EXPORT_SYMBOL net/can/can 0x62087fb3 can_proto_unregister +EXPORT_SYMBOL net/can/can 0x6dd0d6ad can_send +EXPORT_SYMBOL net/can/can 0xc4a38611 can_sock_destruct +EXPORT_SYMBOL net/can/can 0xf639ae89 can_rx_unregister +EXPORT_SYMBOL net/ceph/libceph 0x0012ec15 ceph_copy_from_page_vector +EXPORT_SYMBOL net/ceph/libceph 0x006d6a69 ceph_messenger_init +EXPORT_SYMBOL net/ceph/libceph 0x02947383 ceph_reset_client_addr +EXPORT_SYMBOL net/ceph/libceph 0x0460a8de ceph_osdc_unwatch +EXPORT_SYMBOL net/ceph/libceph 0x085085b6 osd_req_op_cls_init +EXPORT_SYMBOL net/ceph/libceph 0x0a3c60e0 ceph_pagelist_alloc +EXPORT_SYMBOL net/ceph/libceph 0x0e820695 ceph_cls_assert_locked +EXPORT_SYMBOL net/ceph/libceph 0x1077a798 ceph_osdc_call +EXPORT_SYMBOL net/ceph/libceph 0x11df1eab ceph_copy_user_to_page_vector +EXPORT_SYMBOL net/ceph/libceph 0x12fa0093 ceph_monc_validate_auth +EXPORT_SYMBOL net/ceph/libceph 0x150e956f ceph_release_page_vector +EXPORT_SYMBOL net/ceph/libceph 0x15cc2c6b osd_req_op_init +EXPORT_SYMBOL net/ceph/libceph 0x15f4c64e ceph_monc_renew_subs +EXPORT_SYMBOL net/ceph/libceph 0x1866727c ceph_msg_data_add_bio +EXPORT_SYMBOL net/ceph/libceph 0x1cba3f20 ceph_pagelist_append +EXPORT_SYMBOL net/ceph/libceph 0x2087719e ceph_oid_copy +EXPORT_SYMBOL net/ceph/libceph 0x2101cbc9 ceph_oid_destroy +EXPORT_SYMBOL net/ceph/libceph 0x23fb56fd ceph_msg_new2 +EXPORT_SYMBOL net/ceph/libceph 0x24d90f3f ceph_osdc_start_request +EXPORT_SYMBOL net/ceph/libceph 0x26a0f7f2 ceph_osdc_get_request +EXPORT_SYMBOL net/ceph/libceph 0x2886ead3 ceph_osdc_flush_notifies +EXPORT_SYMBOL net/ceph/libceph 0x2db5a837 osd_req_op_cls_request_data_pages +EXPORT_SYMBOL net/ceph/libceph 0x2ea4e2ea ceph_osdc_sync +EXPORT_SYMBOL net/ceph/libceph 0x30e43a49 ceph_pg_pool_name_by_id +EXPORT_SYMBOL net/ceph/libceph 0x317ac0ee ceph_oloc_copy +EXPORT_SYMBOL net/ceph/libceph 0x34f18ae7 ceph_auth_verify_authorizer_reply +EXPORT_SYMBOL net/ceph/libceph 0x3522979c ceph_buffer_new +EXPORT_SYMBOL net/ceph/libceph 0x36afbb45 ceph_auth_add_authorizer_challenge +EXPORT_SYMBOL net/ceph/libceph 0x38f2d94e ceph_file_to_extents +EXPORT_SYMBOL net/ceph/libceph 0x3acbf033 ceph_monc_got_map +EXPORT_SYMBOL net/ceph/libceph 0x3c8d7111 ceph_get_num_objects +EXPORT_SYMBOL net/ceph/libceph 0x3d0f2a7c ceph_oloc_destroy +EXPORT_SYMBOL net/ceph/libceph 0x42a8333e ceph_put_page_vector +EXPORT_SYMBOL net/ceph/libceph 0x42e04704 osd_req_op_extent_osd_data_bvecs +EXPORT_SYMBOL net/ceph/libceph 0x434c7416 ceph_msg_dump +EXPORT_SYMBOL net/ceph/libceph 0x45044d94 ceph_find_or_create_string +EXPORT_SYMBOL net/ceph/libceph 0x466b85b8 libceph_compatible +EXPORT_SYMBOL net/ceph/libceph 0x47075eab ceph_pg_poolid_by_name +EXPORT_SYMBOL net/ceph/libceph 0x48051272 osd_req_op_extent_update +EXPORT_SYMBOL net/ceph/libceph 0x5331838a ceph_con_send +EXPORT_SYMBOL net/ceph/libceph 0x5433190a ceph_osdc_watch +EXPORT_SYMBOL net/ceph/libceph 0x56b92656 ceph_parse_mon_ips +EXPORT_SYMBOL net/ceph/libceph 0x57baf885 ceph_str_hash +EXPORT_SYMBOL net/ceph/libceph 0x5aeeee62 ceph_oid_aprintf +EXPORT_SYMBOL net/ceph/libceph 0x5bd05069 ceph_open_session +EXPORT_SYMBOL net/ceph/libceph 0x6038df48 ceph_pg_pool_flags +EXPORT_SYMBOL net/ceph/libceph 0x63758856 ceph_str_hash_name +EXPORT_SYMBOL net/ceph/libceph 0x643ae8a0 ceph_osdc_put_request +EXPORT_SYMBOL net/ceph/libceph 0x644b6e50 ceph_pagelist_release +EXPORT_SYMBOL net/ceph/libceph 0x64fb6095 osd_req_op_extent_osd_data_pagelist +EXPORT_SYMBOL net/ceph/libceph 0x6586ee64 ceph_msg_data_add_bvecs +EXPORT_SYMBOL net/ceph/libceph 0x688e36fe ceph_monc_stop +EXPORT_SYMBOL net/ceph/libceph 0x6a4dc793 ceph_check_fsid +EXPORT_SYMBOL net/ceph/libceph 0x6a721f3f osd_req_op_extent_dup_last +EXPORT_SYMBOL net/ceph/libceph 0x6a7a38a0 ceph_pr_addr +EXPORT_SYMBOL net/ceph/libceph 0x6be07a04 ceph_create_client +EXPORT_SYMBOL net/ceph/libceph 0x6c1f2ecf osd_req_op_extent_osd_data_bvec_pos +EXPORT_SYMBOL net/ceph/libceph 0x6e3b0544 ceph_zero_page_vector_range +EXPORT_SYMBOL net/ceph/libceph 0x6ea1c8be ceph_copy_to_page_vector +EXPORT_SYMBOL net/ceph/libceph 0x6edb8cb7 ceph_pagelist_reserve +EXPORT_SYMBOL net/ceph/libceph 0x7358e4c4 ceph_alloc_options +EXPORT_SYMBOL net/ceph/libceph 0x74104cb5 ceph_monc_want_map +EXPORT_SYMBOL net/ceph/libceph 0x7795263c ceph_osdc_update_epoch_barrier +EXPORT_SYMBOL net/ceph/libceph 0x7a7a7f3d osd_req_op_xattr_init +EXPORT_SYMBOL net/ceph/libceph 0x80c20f6c ceph_osdc_maybe_request_map +EXPORT_SYMBOL net/ceph/libceph 0x83e20fa9 ceph_pg_to_acting_primary +EXPORT_SYMBOL net/ceph/libceph 0x8693956b ceph_monc_init +EXPORT_SYMBOL net/ceph/libceph 0x86fca7e4 ceph_put_snap_context +EXPORT_SYMBOL net/ceph/libceph 0x8bd5050e ceph_pagelist_free_reserve +EXPORT_SYMBOL net/ceph/libceph 0x92049e57 ceph_osdc_alloc_messages +EXPORT_SYMBOL net/ceph/libceph 0x94d5b4b9 ceph_monc_do_statfs +EXPORT_SYMBOL net/ceph/libceph 0x98643d9c ceph_auth_create_authorizer +EXPORT_SYMBOL net/ceph/libceph 0x99adc06a ceph_osdc_notify_ack +EXPORT_SYMBOL net/ceph/libceph 0x9a3727f0 ceph_print_client_options +EXPORT_SYMBOL net/ceph/libceph 0x9abe2180 ceph_parse_param +EXPORT_SYMBOL net/ceph/libceph 0x9ca95932 ceph_create_snap_context +EXPORT_SYMBOL net/ceph/libceph 0x9d07239b osd_req_op_extent_osd_data_pages +EXPORT_SYMBOL net/ceph/libceph 0x9e38a884 ceph_cls_break_lock +EXPORT_SYMBOL net/ceph/libceph 0x9fefa3cb ceph_calc_file_object_mapping +EXPORT_SYMBOL net/ceph/libceph 0xa0f693c2 ceph_monc_open_session +EXPORT_SYMBOL net/ceph/libceph 0xa698f998 ceph_free_lockers +EXPORT_SYMBOL net/ceph/libceph 0xa80dd098 ceph_osdc_notify +EXPORT_SYMBOL net/ceph/libceph 0xa9517ab1 ceph_compare_options +EXPORT_SYMBOL net/ceph/libceph 0xaa6cfce2 ceph_cls_unlock +EXPORT_SYMBOL net/ceph/libceph 0xaa761dcb ceph_object_locator_to_pg +EXPORT_SYMBOL net/ceph/libceph 0xab012567 ceph_osdc_alloc_request +EXPORT_SYMBOL net/ceph/libceph 0xab32ea3f ceph_msg_data_add_pages +EXPORT_SYMBOL net/ceph/libceph 0xad703657 ceph_auth_destroy_authorizer +EXPORT_SYMBOL net/ceph/libceph 0xafb8a407 ceph_msgr_flush +EXPORT_SYMBOL net/ceph/libceph 0xb0088121 osd_req_op_cls_request_data_pagelist +EXPORT_SYMBOL net/ceph/libceph 0xb1c9d00b ceph_osdc_wait_request +EXPORT_SYMBOL net/ceph/libceph 0xb4fd5c61 ceph_msg_put +EXPORT_SYMBOL net/ceph/libceph 0xb54676fa ceph_msg_type_name +EXPORT_SYMBOL net/ceph/libceph 0xb55c0802 osd_req_op_extent_init +EXPORT_SYMBOL net/ceph/libceph 0xb72c162e ceph_buffer_release +EXPORT_SYMBOL net/ceph/libceph 0xb72c49d6 ceph_monc_blacklist_add +EXPORT_SYMBOL net/ceph/libceph 0xb811d9c2 ceph_wait_for_latest_osdmap +EXPORT_SYMBOL net/ceph/libceph 0xb8431912 ceph_cls_lock_info +EXPORT_SYMBOL net/ceph/libceph 0xbaf56101 ceph_osdc_copy_from +EXPORT_SYMBOL net/ceph/libceph 0xbb69218a ceph_msg_data_add_pagelist +EXPORT_SYMBOL net/ceph/libceph 0xbd576112 ceph_msg_get +EXPORT_SYMBOL net/ceph/libceph 0xbd8c1313 ceph_destroy_options +EXPORT_SYMBOL net/ceph/libceph 0xbe3879aa ceph_get_snap_context +EXPORT_SYMBOL net/ceph/libceph 0xbefba9e2 ceph_con_keepalive +EXPORT_SYMBOL net/ceph/libceph 0xbfcc5cb0 ceph_con_open +EXPORT_SYMBOL net/ceph/libceph 0xc20c8ca8 ceph_pagelist_set_cursor +EXPORT_SYMBOL net/ceph/libceph 0xc817721a ceph_osdc_clear_abort_err +EXPORT_SYMBOL net/ceph/libceph 0xc85b4392 ceph_cls_set_cookie +EXPORT_SYMBOL net/ceph/libceph 0xca80437b ceph_extent_to_file +EXPORT_SYMBOL net/ceph/libceph 0xcd74999c ceph_monc_get_version_async +EXPORT_SYMBOL net/ceph/libceph 0xcfe6ef89 ceph_messenger_fini +EXPORT_SYMBOL net/ceph/libceph 0xd02a911e osd_req_op_alloc_hint_init +EXPORT_SYMBOL net/ceph/libceph 0xd25116f8 ceph_auth_update_authorizer +EXPORT_SYMBOL net/ceph/libceph 0xd25fe496 ceph_osdc_cancel_request +EXPORT_SYMBOL net/ceph/libceph 0xd4eb7735 ceph_decode_entity_addr +EXPORT_SYMBOL net/ceph/libceph 0xd58339dc ceph_cls_lock +EXPORT_SYMBOL net/ceph/libceph 0xda902c61 ceph_msg_new +EXPORT_SYMBOL net/ceph/libceph 0xdc6b0d29 ceph_osdc_abort_requests +EXPORT_SYMBOL net/ceph/libceph 0xde6fdc20 ceph_auth_is_authenticated +EXPORT_SYMBOL net/ceph/libceph 0xdf6ef4a1 ceph_oid_printf +EXPORT_SYMBOL net/ceph/libceph 0xdfab23ea ceph_auth_invalidate_authorizer +EXPORT_SYMBOL net/ceph/libceph 0xdfc091f9 ceph_entity_type_name +EXPORT_SYMBOL net/ceph/libceph 0xdfd6dd32 ceph_client_gid +EXPORT_SYMBOL net/ceph/libceph 0xe0b105fe osd_req_op_extent_osd_data_bio +EXPORT_SYMBOL net/ceph/libceph 0xe190ed1d ceph_monc_get_version +EXPORT_SYMBOL net/ceph/libceph 0xe1da3722 ceph_con_close +EXPORT_SYMBOL net/ceph/libceph 0xe2e74f30 ceph_con_init +EXPORT_SYMBOL net/ceph/libceph 0xe351ae6f osd_req_op_extent_osd_data +EXPORT_SYMBOL net/ceph/libceph 0xe3667017 osd_req_op_cls_request_data_bvecs +EXPORT_SYMBOL net/ceph/libceph 0xe9c24dde ceph_alloc_page_vector +EXPORT_SYMBOL net/ceph/libceph 0xec6fd607 ceph_client_addr +EXPORT_SYMBOL net/ceph/libceph 0xee120c03 ceph_release_string +EXPORT_SYMBOL net/ceph/libceph 0xee6efcee osd_req_op_cls_response_data_pages +EXPORT_SYMBOL net/ceph/libceph 0xeef6cfa3 ceph_iterate_extents +EXPORT_SYMBOL net/ceph/libceph 0xf4034844 ceph_monc_wait_osdmap +EXPORT_SYMBOL net/ceph/libceph 0xf562aab7 ceph_pagelist_truncate +EXPORT_SYMBOL net/ceph/libceph 0xf6093114 __ceph_open_session +EXPORT_SYMBOL net/ceph/libceph 0xfbbf725a osd_req_op_raw_data_in_pages +EXPORT_SYMBOL net/ceph/libceph 0xfe9f3f94 ceph_osdc_list_watchers +EXPORT_SYMBOL net/ceph/libceph 0xfef31277 ceph_osdc_new_request +EXPORT_SYMBOL net/ceph/libceph 0xff012122 ceph_destroy_client +EXPORT_SYMBOL net/dccp/dccp_ipv4 0x2028760c dccp_syn_ack_timeout +EXPORT_SYMBOL net/dccp/dccp_ipv4 0x7d47eb6c dccp_req_err +EXPORT_SYMBOL net/dsa/dsa_core 0x1b25c4dd dsa_port_vid_add +EXPORT_SYMBOL net/dsa/dsa_core 0xbb3e8968 dsa_port_vid_del +EXPORT_SYMBOL net/ieee802154/ieee802154 0x03a7ed49 wpan_phy_for_each +EXPORT_SYMBOL net/ieee802154/ieee802154 0x686de5e6 wpan_phy_new +EXPORT_SYMBOL net/ieee802154/ieee802154 0xa4387362 wpan_phy_register +EXPORT_SYMBOL net/ieee802154/ieee802154 0xc499de65 wpan_phy_find +EXPORT_SYMBOL net/ieee802154/ieee802154 0xd55b9a22 wpan_phy_unregister +EXPORT_SYMBOL net/ieee802154/ieee802154 0xf66b340f wpan_phy_free +EXPORT_SYMBOL net/ipv4/fou 0x16650407 __gue_build_header +EXPORT_SYMBOL net/ipv4/fou 0x19741ae4 gue_encap_hlen +EXPORT_SYMBOL net/ipv4/fou 0xe3d8c323 __fou_build_header +EXPORT_SYMBOL net/ipv4/fou 0xff1adff3 fou_encap_hlen +EXPORT_SYMBOL net/ipv4/gre 0x60848e8a gre_parse_header +EXPORT_SYMBOL net/ipv4/ip_tunnel 0x2d3535c8 ip_tunnel_get_iflink +EXPORT_SYMBOL net/ipv4/ip_tunnel 0x688789d9 ip_tunnel_encap_del_ops +EXPORT_SYMBOL net/ipv4/ip_tunnel 0xb06963da ip_tunnel_encap_add_ops +EXPORT_SYMBOL net/ipv4/ip_tunnel 0xeba07574 ip_tunnel_get_link_net +EXPORT_SYMBOL net/ipv4/netfilter/arp_tables 0x2947a5f6 arpt_unregister_table +EXPORT_SYMBOL net/ipv4/netfilter/arp_tables 0xb49c19d3 arpt_do_table +EXPORT_SYMBOL net/ipv4/netfilter/arp_tables 0xc2912438 arpt_register_table +EXPORT_SYMBOL net/ipv4/netfilter/ip_tables 0x2d67497c ipt_unregister_table_exit +EXPORT_SYMBOL net/ipv4/netfilter/ip_tables 0x344ec6fc ipt_unregister_table +EXPORT_SYMBOL net/ipv4/netfilter/ip_tables 0xe47688f4 ipt_register_table +EXPORT_SYMBOL net/ipv4/netfilter/ip_tables 0xed8b0a3b ipt_do_table +EXPORT_SYMBOL net/ipv4/netfilter/ip_tables 0xfb91a0dd ipt_unregister_table_pre_exit +EXPORT_SYMBOL net/ipv4/tunnel4 0x4c196861 xfrm4_tunnel_register +EXPORT_SYMBOL net/ipv4/tunnel4 0x60f05f45 xfrm4_tunnel_deregister +EXPORT_SYMBOL net/ipv4/udp_tunnel 0x30dca995 udp_sock_create4 +EXPORT_SYMBOL net/ipv6/ip6_tunnel 0x3f07aae8 ip6_tnl_get_link_net +EXPORT_SYMBOL net/ipv6/ip6_tunnel 0x65195e2f ip6_tnl_rcv +EXPORT_SYMBOL net/ipv6/ip6_tunnel 0x95596fe8 ip6_tnl_get_cap +EXPORT_SYMBOL net/ipv6/ip6_tunnel 0x9aef3eb9 ip6_tnl_xmit +EXPORT_SYMBOL net/ipv6/ip6_tunnel 0xa1340607 ip6_tnl_parse_tlv_enc_lim +EXPORT_SYMBOL net/ipv6/ip6_tunnel 0xb067d6c1 ip6_tnl_change_mtu +EXPORT_SYMBOL net/ipv6/ip6_tunnel 0xb392a573 ip6_tnl_get_iflink +EXPORT_SYMBOL net/ipv6/ip6_tunnel 0xf258f18b ip6_tnl_encap_add_ops +EXPORT_SYMBOL net/ipv6/ip6_tunnel 0xfd9213d7 ip6_tnl_encap_del_ops +EXPORT_SYMBOL net/ipv6/netfilter/ip6_tables 0x582a1c4a ip6t_unregister_table +EXPORT_SYMBOL net/ipv6/netfilter/ip6_tables 0x6a794eca ip6t_unregister_table_pre_exit +EXPORT_SYMBOL net/ipv6/netfilter/ip6_tables 0x9ba30892 ip6t_do_table +EXPORT_SYMBOL net/ipv6/netfilter/ip6_tables 0xc3a2eff0 ip6t_register_table +EXPORT_SYMBOL net/ipv6/netfilter/ip6_tables 0xebfb5dce ip6t_unregister_table_exit +EXPORT_SYMBOL net/ipv6/tunnel6 0x42440a81 xfrm6_tunnel_register +EXPORT_SYMBOL net/ipv6/tunnel6 0xeb4f4128 xfrm6_tunnel_deregister +EXPORT_SYMBOL net/ipv6/xfrm6_tunnel 0x0432134e xfrm6_tunnel_spi_lookup +EXPORT_SYMBOL net/ipv6/xfrm6_tunnel 0x9557d790 xfrm6_tunnel_alloc_spi +EXPORT_SYMBOL net/l2tp/l2tp_core 0x4067f992 l2tp_tunnel_free +EXPORT_SYMBOL net/l2tp/l2tp_core 0x6f79929f l2tp_recv_common +EXPORT_SYMBOL net/l2tp/l2tp_ip 0x81e6fa76 l2tp_ioctl +EXPORT_SYMBOL net/lapb/lapb 0x0537e8d1 lapb_data_received +EXPORT_SYMBOL net/lapb/lapb 0x2c74c99a lapb_connect_request +EXPORT_SYMBOL net/lapb/lapb 0x369e7592 lapb_disconnect_request +EXPORT_SYMBOL net/lapb/lapb 0x77e9a289 lapb_data_request +EXPORT_SYMBOL net/lapb/lapb 0xb930786b lapb_register +EXPORT_SYMBOL net/lapb/lapb 0xbd759aba lapb_getparms +EXPORT_SYMBOL net/lapb/lapb 0xd713e2a4 lapb_setparms +EXPORT_SYMBOL net/lapb/lapb 0xebcbd1c5 lapb_unregister +EXPORT_SYMBOL net/llc/llc 0x38b92846 llc_remove_pack +EXPORT_SYMBOL net/llc/llc 0x43bb3cce llc_sap_find +EXPORT_SYMBOL net/llc/llc 0x52d7b2fd llc_sap_list +EXPORT_SYMBOL net/llc/llc 0x71ddc11a llc_set_station_handler +EXPORT_SYMBOL net/llc/llc 0x814f62d8 llc_mac_hdr_init +EXPORT_SYMBOL net/llc/llc 0xa8846372 llc_build_and_send_ui_pkt +EXPORT_SYMBOL net/llc/llc 0xb4eb7cc6 llc_sap_open +EXPORT_SYMBOL net/llc/llc 0xcb246847 llc_sap_close +EXPORT_SYMBOL net/llc/llc 0xcbf74556 llc_add_pack +EXPORT_SYMBOL net/mac80211/mac80211 0x0099591d ieee80211_get_tkip_p2k +EXPORT_SYMBOL net/mac80211/mac80211 0x03bf5b61 ieee80211_sched_scan_results +EXPORT_SYMBOL net/mac80211/mac80211 0x05faed56 ieee80211_report_low_ack +EXPORT_SYMBOL net/mac80211/mac80211 0x063f5308 ieee80211_get_tkip_p1k_iv +EXPORT_SYMBOL net/mac80211/mac80211 0x06a07305 ieee80211_stop_rx_ba_session +EXPORT_SYMBOL net/mac80211/mac80211 0x10f10a34 ieee80211_reserve_tid +EXPORT_SYMBOL net/mac80211/mac80211 0x11d95663 ieee80211_tx_rate_update +EXPORT_SYMBOL net/mac80211/mac80211 0x16eb511d ieee80211_iter_keys_rcu +EXPORT_SYMBOL net/mac80211/mac80211 0x183dcd3b ieee80211_get_key_rx_seq +EXPORT_SYMBOL net/mac80211/mac80211 0x19f37f0d ieee80211_update_p2p_noa +EXPORT_SYMBOL net/mac80211/mac80211 0x1a66fc17 ieee80211_get_tkip_rx_p1k +EXPORT_SYMBOL net/mac80211/mac80211 0x1c2f35e6 ieee80211_probereq_get +EXPORT_SYMBOL net/mac80211/mac80211 0x242e1b6f ieee80211_csa_is_complete +EXPORT_SYMBOL net/mac80211/mac80211 0x24774393 ieee80211_ctstoself_get +EXPORT_SYMBOL net/mac80211/mac80211 0x2835bf57 ieee80211_beacon_loss +EXPORT_SYMBOL net/mac80211/mac80211 0x2c41f231 ieee80211_mark_rx_ba_filtered_frames +EXPORT_SYMBOL net/mac80211/mac80211 0x2cb6ae0a ieee80211_report_wowlan_wakeup +EXPORT_SYMBOL net/mac80211/mac80211 0x2cd6e04d ieee80211_beacon_get_template +EXPORT_SYMBOL net/mac80211/mac80211 0x38c8e198 ieee80211_txq_schedule_start +EXPORT_SYMBOL net/mac80211/mac80211 0x3c423124 __ieee80211_get_tx_led_name +EXPORT_SYMBOL net/mac80211/mac80211 0x41b1919f ieee80211_cqm_beacon_loss_notify +EXPORT_SYMBOL net/mac80211/mac80211 0x43f00d07 ieee80211_free_hw +EXPORT_SYMBOL net/mac80211/mac80211 0x4617a709 ieee80211_disable_rssi_reports +EXPORT_SYMBOL net/mac80211/mac80211 0x467f6008 ieee80211_nan_func_terminated +EXPORT_SYMBOL net/mac80211/mac80211 0x4cd0fd26 ieee80211_stop_queue +EXPORT_SYMBOL net/mac80211/mac80211 0x4ea92b90 ieee80211_free_txskb +EXPORT_SYMBOL net/mac80211/mac80211 0x4f94e5ca __ieee80211_create_tpt_led_trigger +EXPORT_SYMBOL net/mac80211/mac80211 0x52742724 ieee80211_find_sta +EXPORT_SYMBOL net/mac80211/mac80211 0x55cbe66a ieee80211_scan_completed +EXPORT_SYMBOL net/mac80211/mac80211 0x571c83fb ieee80211_register_hw +EXPORT_SYMBOL net/mac80211/mac80211 0x5922be43 ieee80211_proberesp_get +EXPORT_SYMBOL net/mac80211/mac80211 0x59292957 ieee80211_rts_get +EXPORT_SYMBOL net/mac80211/mac80211 0x60c1543a ieee80211_iter_keys +EXPORT_SYMBOL net/mac80211/mac80211 0x611b5c68 ieee80211_txq_may_transmit +EXPORT_SYMBOL net/mac80211/mac80211 0x62ef3eea ieee80211_wake_queue +EXPORT_SYMBOL net/mac80211/mac80211 0x633631df ieee80211_pspoll_get +EXPORT_SYMBOL net/mac80211/mac80211 0x651011a7 ieee80211_send_bar +EXPORT_SYMBOL net/mac80211/mac80211 0x66c95601 ieee80211_tx_prepare_skb +EXPORT_SYMBOL net/mac80211/mac80211 0x66e160f8 ieee80211_manage_rx_ba_offl +EXPORT_SYMBOL net/mac80211/mac80211 0x6c803e7b ieee80211_rate_control_register +EXPORT_SYMBOL net/mac80211/mac80211 0x74669ce2 ieee80211_queue_work +EXPORT_SYMBOL net/mac80211/mac80211 0x7702f1e3 ieee80211_stop_queues +EXPORT_SYMBOL net/mac80211/mac80211 0x7cf8db3f __ieee80211_get_rx_led_name +EXPORT_SYMBOL net/mac80211/mac80211 0x7de1d0ba ieee80211_get_buffered_bc +EXPORT_SYMBOL net/mac80211/mac80211 0x83b125ca ieee80211_queue_stopped +EXPORT_SYMBOL net/mac80211/mac80211 0x842d0ef1 ieee80211_tx_status +EXPORT_SYMBOL net/mac80211/mac80211 0x8e96dc79 ieee80211_connection_loss +EXPORT_SYMBOL net/mac80211/mac80211 0x902bbd52 wiphy_to_ieee80211_hw +EXPORT_SYMBOL net/mac80211/mac80211 0x90af78cd ieee80211_wake_queues +EXPORT_SYMBOL net/mac80211/mac80211 0x91415169 ieee80211_start_tx_ba_session +EXPORT_SYMBOL net/mac80211/mac80211 0x92c33478 ieee80211_unreserve_tid +EXPORT_SYMBOL net/mac80211/mac80211 0x930c33c7 ieee80211_csa_update_counter +EXPORT_SYMBOL net/mac80211/mac80211 0x936edd55 ieee80211_txq_get_depth +EXPORT_SYMBOL net/mac80211/mac80211 0x946614bc ieee80211_tx_status_ext +EXPORT_SYMBOL net/mac80211/mac80211 0x94ddca4e ieee80211_tx_status_8023 +EXPORT_SYMBOL net/mac80211/mac80211 0x97a29278 __ieee80211_get_assoc_led_name +EXPORT_SYMBOL net/mac80211/mac80211 0x991a0ca0 ieee80211_parse_p2p_noa +EXPORT_SYMBOL net/mac80211/mac80211 0x9e360d0c ieee80211_nan_func_match +EXPORT_SYMBOL net/mac80211/mac80211 0x9e9b399b __ieee80211_get_radio_led_name +EXPORT_SYMBOL net/mac80211/mac80211 0x9eb429fd ieee80211_enable_rssi_reports +EXPORT_SYMBOL net/mac80211/mac80211 0xa1dd40aa ieee80211_sta_block_awake +EXPORT_SYMBOL net/mac80211/mac80211 0xa346d8c1 ieee80211_sta_pspoll +EXPORT_SYMBOL net/mac80211/mac80211 0xa69dd2ef ieee80211_csa_set_counter +EXPORT_SYMBOL net/mac80211/mac80211 0xaada9a16 ieee80211_sta_set_buffered +EXPORT_SYMBOL net/mac80211/mac80211 0xb595d080 ieee80211_unregister_hw +EXPORT_SYMBOL net/mac80211/mac80211 0xb5a63ef2 rate_control_set_rates +EXPORT_SYMBOL net/mac80211/mac80211 0xb943f089 ieee80211_tx_status_irqsafe +EXPORT_SYMBOL net/mac80211/mac80211 0xb962fa11 ieee80211_restart_hw +EXPORT_SYMBOL net/mac80211/mac80211 0xb9ecb9b3 ieee80211_csa_finish +EXPORT_SYMBOL net/mac80211/mac80211 0xba64c3b1 ieee80211_ctstoself_duration +EXPORT_SYMBOL net/mac80211/mac80211 0xbb068c44 ieee80211_rx_ba_timer_expired +EXPORT_SYMBOL net/mac80211/mac80211 0xbc6ba9b3 ieee80211_tdls_oper_request +EXPORT_SYMBOL net/mac80211/mac80211 0xc03532a5 ieee80211_stop_tx_ba_cb_irqsafe +EXPORT_SYMBOL net/mac80211/mac80211 0xc0e9c2b8 ieee80211_sta_ps_transition +EXPORT_SYMBOL net/mac80211/mac80211 0xc1ca8f30 ieee80211_ap_probereq_get +EXPORT_SYMBOL net/mac80211/mac80211 0xc27a721f ieee80211_sta_eosp +EXPORT_SYMBOL net/mac80211/mac80211 0xc3415969 ieee80211_txq_airtime_check +EXPORT_SYMBOL net/mac80211/mac80211 0xcadf4add ieee80211_queue_delayed_work +EXPORT_SYMBOL net/mac80211/mac80211 0xcd382be5 ieee80211_send_eosp_nullfunc +EXPORT_SYMBOL net/mac80211/mac80211 0xd1537899 ieee80211_radar_detected +EXPORT_SYMBOL net/mac80211/mac80211 0xd4b5aae8 ieee80211_rate_control_unregister +EXPORT_SYMBOL net/mac80211/mac80211 0xd771361b ieee80211_cqm_rssi_notify +EXPORT_SYMBOL net/mac80211/mac80211 0xd97a511c ieee80211_generic_frame_duration +EXPORT_SYMBOL net/mac80211/mac80211 0xda957f83 ieee80211_next_txq +EXPORT_SYMBOL net/mac80211/mac80211 0xde075cc4 ieee80211_get_tx_rates +EXPORT_SYMBOL net/mac80211/mac80211 0xe2f3bb10 ieee80211_nullfunc_get +EXPORT_SYMBOL net/mac80211/mac80211 0xe37d8fd8 ieee80211_set_hw_80211_encap +EXPORT_SYMBOL net/mac80211/mac80211 0xe4441cb8 ieee80211_rx_napi +EXPORT_SYMBOL net/mac80211/mac80211 0xea5639c1 ieee80211_sched_scan_stopped +EXPORT_SYMBOL net/mac80211/mac80211 0xea966349 ieee80211_chswitch_done +EXPORT_SYMBOL net/mac80211/mac80211 0xeb8be171 ieee80211_rx_irqsafe +EXPORT_SYMBOL net/mac80211/mac80211 0xece7f4f7 ieee80211_stop_tx_ba_session +EXPORT_SYMBOL net/mac80211/mac80211 0xecf7a8d0 ieee80211_start_tx_ba_cb_irqsafe +EXPORT_SYMBOL net/mac80211/mac80211 0xf03cdfeb ieee80211_rts_duration +EXPORT_SYMBOL net/mac80211/mac80211 0xf0a38ab3 __ieee80211_schedule_txq +EXPORT_SYMBOL net/mac80211/mac80211 0xf11b58da ieee80211_alloc_hw_nm +EXPORT_SYMBOL net/mac80211/mac80211 0xf40b8727 ieee80211_sta_uapsd_trigger +EXPORT_SYMBOL net/mac80211/mac80211 0xf68aaac5 ieee80211_beacon_get_tim +EXPORT_SYMBOL net/mac80211/mac80211 0xfb7f26c5 ieee80211_tx_dequeue +EXPORT_SYMBOL net/mac80211/mac80211 0xfd5f55d2 ieee80211_sta_register_airtime +EXPORT_SYMBOL net/mac802154/mac802154 0x377169e7 ieee802154_stop_queue +EXPORT_SYMBOL net/mac802154/mac802154 0x3ac40fc9 ieee802154_xmit_complete +EXPORT_SYMBOL net/mac802154/mac802154 0x40890a04 ieee802154_free_hw +EXPORT_SYMBOL net/mac802154/mac802154 0x6aefd6a0 ieee802154_register_hw +EXPORT_SYMBOL net/mac802154/mac802154 0x9cb43455 ieee802154_wake_queue +EXPORT_SYMBOL net/mac802154/mac802154 0xa57d5dc5 ieee802154_rx_irqsafe +EXPORT_SYMBOL net/mac802154/mac802154 0xb4a23e7b ieee802154_alloc_hw +EXPORT_SYMBOL net/mac802154/mac802154 0xd53c1710 ieee802154_unregister_hw +EXPORT_SYMBOL net/netfilter/ipvs/ip_vs 0x04fd4e47 ip_vs_conn_new +EXPORT_SYMBOL net/netfilter/ipvs/ip_vs 0x095c84ae ip_vs_tcp_conn_listen +EXPORT_SYMBOL net/netfilter/ipvs/ip_vs 0x127de5a2 ip_vs_nfct_expect_related +EXPORT_SYMBOL net/netfilter/ipvs/ip_vs 0x24e86186 unregister_ip_vs_app +EXPORT_SYMBOL net/netfilter/ipvs/ip_vs 0x345dbda7 register_ip_vs_scheduler +EXPORT_SYMBOL net/netfilter/ipvs/ip_vs 0x34e20532 ip_vs_conn_out_get +EXPORT_SYMBOL net/netfilter/ipvs/ip_vs 0x3a52f8f8 ip_vs_new_conn_out +EXPORT_SYMBOL net/netfilter/ipvs/ip_vs 0x4595b71c ip_vs_conn_in_get +EXPORT_SYMBOL net/netfilter/ipvs/ip_vs 0x47ffdae9 register_ip_vs_app_inc +EXPORT_SYMBOL net/netfilter/ipvs/ip_vs 0x49a697f4 ip_vs_proto_data_get +EXPORT_SYMBOL net/netfilter/ipvs/ip_vs 0x4dca5523 unregister_ip_vs_scheduler +EXPORT_SYMBOL net/netfilter/ipvs/ip_vs 0xa0bebefd ip_vs_proto_get +EXPORT_SYMBOL net/netfilter/ipvs/ip_vs 0xb842e4d8 ip_vs_conn_put +EXPORT_SYMBOL net/netfilter/ipvs/ip_vs 0xbbe8e3ef register_ip_vs_app +EXPORT_SYMBOL net/netfilter/ipvs/ip_vs 0xd831a1a2 ip_vs_proto_name +EXPORT_SYMBOL net/netfilter/ipvs/ip_vs 0xe5d6345c ip_vs_scheduler_err +EXPORT_SYMBOL net/netfilter/nf_conntrack 0xb5490d6d nf_ct_ext_add +EXPORT_SYMBOL net/netfilter/nf_conntrack_pptp 0xf2a36612 pptp_msg_name +EXPORT_SYMBOL net/netfilter/nf_nat 0x2eff9922 nf_nat_setup_info +EXPORT_SYMBOL net/netfilter/nf_nat 0x3f92140b nf_xfrm_me_harder +EXPORT_SYMBOL net/netfilter/nf_nat 0x8069f989 nf_nat_follow_master +EXPORT_SYMBOL net/netfilter/nf_nat 0x8ae637b3 __nf_nat_mangle_tcp_packet +EXPORT_SYMBOL net/netfilter/nf_nat 0xfe981c2a nf_nat_mangle_udp_packet +EXPORT_SYMBOL net/netfilter/nft_fib 0xe8203072 nft_fib_policy +EXPORT_SYMBOL net/netfilter/x_tables 0x0d7f5fcd xt_alloc_entry_offsets +EXPORT_SYMBOL net/netfilter/x_tables 0x21bfa990 xt_register_matches +EXPORT_SYMBOL net/netfilter/x_tables 0x3bf9d084 xt_check_table_hooks +EXPORT_SYMBOL net/netfilter/x_tables 0x3c1a59fd xt_unregister_targets +EXPORT_SYMBOL net/netfilter/x_tables 0x44db6034 xt_register_targets +EXPORT_SYMBOL net/netfilter/x_tables 0x46065f39 xt_unregister_target +EXPORT_SYMBOL net/netfilter/x_tables 0x48012e28 xt_check_proc_name +EXPORT_SYMBOL net/netfilter/x_tables 0x73669c1f xt_register_match +EXPORT_SYMBOL net/netfilter/x_tables 0x977fd4bf xt_alloc_table_info +EXPORT_SYMBOL net/netfilter/x_tables 0xcb3e91cc xt_counters_alloc +EXPORT_SYMBOL net/netfilter/x_tables 0xd87ae60d xt_check_entry_offsets +EXPORT_SYMBOL net/netfilter/x_tables 0xd9a28332 xt_unregister_match +EXPORT_SYMBOL net/netfilter/x_tables 0xddb7b2ba xt_table_get_private_protected +EXPORT_SYMBOL net/netfilter/x_tables 0xe204e042 xt_free_table_info +EXPORT_SYMBOL net/netfilter/x_tables 0xe74fc2d8 xt_unregister_matches +EXPORT_SYMBOL net/netfilter/x_tables 0xeb24a2e7 xt_register_target +EXPORT_SYMBOL net/netfilter/x_tables 0xf7a78f5a xt_find_match +EXPORT_SYMBOL net/netfilter/x_tables 0xfef779fa xt_find_jump_offset +EXPORT_SYMBOL net/nfc/hci/hci 0x06022f73 nfc_hci_disconnect_gate +EXPORT_SYMBOL net/nfc/hci/hci 0x06b01f3f nfc_hci_send_cmd_async +EXPORT_SYMBOL net/nfc/hci/hci 0x1034755b nfc_hci_send_cmd +EXPORT_SYMBOL net/nfc/hci/hci 0x1316eee1 nfc_hci_allocate_device +EXPORT_SYMBOL net/nfc/hci/hci 0x19e3bb98 nfc_hci_disconnect_all_gates +EXPORT_SYMBOL net/nfc/hci/hci 0x223121ce nfc_hci_set_param +EXPORT_SYMBOL net/nfc/hci/hci 0x28a385c9 nfc_hci_set_clientdata +EXPORT_SYMBOL net/nfc/hci/hci 0x30ad49c2 nfc_hci_unregister_device +EXPORT_SYMBOL net/nfc/hci/hci 0x449b158f nfc_llc_stop +EXPORT_SYMBOL net/nfc/hci/hci 0x74fe3670 nfc_hci_result_to_errno +EXPORT_SYMBOL net/nfc/hci/hci 0x7b77c874 nfc_hci_free_device +EXPORT_SYMBOL net/nfc/hci/hci 0x90028b84 nfc_hci_get_clientdata +EXPORT_SYMBOL net/nfc/hci/hci 0x9055c6e7 nfc_hci_connect_gate +EXPORT_SYMBOL net/nfc/hci/hci 0xa725c79b nfc_llc_start +EXPORT_SYMBOL net/nfc/hci/hci 0xb8ab7b3c nfc_hci_recv_frame +EXPORT_SYMBOL net/nfc/hci/hci 0xc04b1fa9 nfc_hci_send_event +EXPORT_SYMBOL net/nfc/hci/hci 0xccf98baa nfc_hci_reset_pipes +EXPORT_SYMBOL net/nfc/hci/hci 0xd10f3432 nfc_hci_register_device +EXPORT_SYMBOL net/nfc/hci/hci 0xd2975b48 nfc_hci_reset_pipes_per_host +EXPORT_SYMBOL net/nfc/hci/hci 0xdd231c55 nfc_hci_sak_to_protocol +EXPORT_SYMBOL net/nfc/hci/hci 0xe1278ac7 nfc_hci_driver_failure +EXPORT_SYMBOL net/nfc/hci/hci 0xe2a57011 nfc_hci_target_discovered +EXPORT_SYMBOL net/nfc/hci/hci 0xee46e53b nfc_hci_get_param +EXPORT_SYMBOL net/nfc/nci/nci 0x00de2dda nci_register_device +EXPORT_SYMBOL net/nfc/nci/nci 0x084bca8f nci_nfcc_loopback +EXPORT_SYMBOL net/nfc/nci/nci 0x116075ac nci_hci_send_event +EXPORT_SYMBOL net/nfc/nci/nci 0x20622054 nci_nfcee_mode_set +EXPORT_SYMBOL net/nfc/nci/nci 0x274c0692 nci_core_init +EXPORT_SYMBOL net/nfc/nci/nci 0x5c2751ae nci_conn_max_data_pkt_payload_size +EXPORT_SYMBOL net/nfc/nci/nci 0x63760e02 nci_get_conn_info_by_dest_type_params +EXPORT_SYMBOL net/nfc/nci/nci 0x649e6e47 nci_send_data +EXPORT_SYMBOL net/nfc/nci/nci 0x65699401 nci_core_conn_create +EXPORT_SYMBOL net/nfc/nci/nci 0x7015a0bb nci_send_cmd +EXPORT_SYMBOL net/nfc/nci/nci 0x71f6d9d4 nci_hci_clear_all_pipes +EXPORT_SYMBOL net/nfc/nci/nci 0x7496e193 nci_send_frame +EXPORT_SYMBOL net/nfc/nci/nci 0x76896fc0 nci_hci_dev_session_init +EXPORT_SYMBOL net/nfc/nci/nci 0x82817d84 nci_req_complete +EXPORT_SYMBOL net/nfc/nci/nci 0x8f4bb8fd nci_prop_cmd +EXPORT_SYMBOL net/nfc/nci/nci 0x9120905f nci_recv_frame +EXPORT_SYMBOL net/nfc/nci/nci 0x91e5f0fd nci_core_cmd +EXPORT_SYMBOL net/nfc/nci/nci 0x96cfd366 nci_hci_connect_gate +EXPORT_SYMBOL net/nfc/nci/nci 0x9eac953f nci_hci_set_param +EXPORT_SYMBOL net/nfc/nci/nci 0xa18c1fe5 nci_core_reset +EXPORT_SYMBOL net/nfc/nci/nci 0xa594b585 nci_hci_get_param +EXPORT_SYMBOL net/nfc/nci/nci 0xafe0a26a nci_set_config +EXPORT_SYMBOL net/nfc/nci/nci 0xb8a54c8d nci_hci_send_cmd +EXPORT_SYMBOL net/nfc/nci/nci 0xba490602 nci_to_errno +EXPORT_SYMBOL net/nfc/nci/nci 0xbd63323b nci_core_conn_close +EXPORT_SYMBOL net/nfc/nci/nci 0xbf95c49a nci_free_device +EXPORT_SYMBOL net/nfc/nci/nci 0xd493857a nci_allocate_device +EXPORT_SYMBOL net/nfc/nci/nci 0xdaf8f0ae nci_hci_open_pipe +EXPORT_SYMBOL net/nfc/nci/nci 0xecde3e05 nci_nfcee_discover +EXPORT_SYMBOL net/nfc/nci/nci 0xfc22d964 nci_unregister_device +EXPORT_SYMBOL net/nfc/nfc 0x171f1a3d nfc_add_se +EXPORT_SYMBOL net/nfc/nfc 0x179274e6 nfc_target_lost +EXPORT_SYMBOL net/nfc/nfc 0x1b69ceb7 nfc_se_transaction +EXPORT_SYMBOL net/nfc/nfc 0x32ee9504 nfc_set_remote_general_bytes +EXPORT_SYMBOL net/nfc/nfc 0x34730c98 nfc_tm_deactivated +EXPORT_SYMBOL net/nfc/nfc 0x40dc9941 nfc_allocate_device +EXPORT_SYMBOL net/nfc/nfc 0x58dc179d nfc_driver_failure +EXPORT_SYMBOL net/nfc/nfc 0x65d96419 nfc_find_se +EXPORT_SYMBOL net/nfc/nfc 0x673e3b62 nfc_class +EXPORT_SYMBOL net/nfc/nfc 0x67d99f5c nfc_fw_download_done +EXPORT_SYMBOL net/nfc/nfc 0x6ecff204 nfc_register_device +EXPORT_SYMBOL net/nfc/nfc 0x89d154f2 nfc_tm_data_received +EXPORT_SYMBOL net/nfc/nfc 0x8ac999ea nfc_alloc_recv_skb +EXPORT_SYMBOL net/nfc/nfc 0x8d3a1b56 nfc_proto_unregister +EXPORT_SYMBOL net/nfc/nfc 0x8e384e31 __nfc_alloc_vendor_cmd_reply_skb +EXPORT_SYMBOL net/nfc/nfc 0x976102e2 nfc_targets_found +EXPORT_SYMBOL net/nfc/nfc 0xa23e7e6f nfc_get_local_general_bytes +EXPORT_SYMBOL net/nfc/nfc 0xa848267b nfc_vendor_cmd_reply +EXPORT_SYMBOL net/nfc/nfc 0xc8285dec nfc_unregister_device +EXPORT_SYMBOL net/nfc/nfc 0xcce42be3 nfc_remove_se +EXPORT_SYMBOL net/nfc/nfc 0xd60d0350 nfc_dep_link_is_up +EXPORT_SYMBOL net/nfc/nfc 0xdd378812 nfc_send_to_raw_sock +EXPORT_SYMBOL net/nfc/nfc 0xe0b2c650 nfc_tm_activated +EXPORT_SYMBOL net/nfc/nfc 0xe167b385 nfc_se_connectivity +EXPORT_SYMBOL net/nfc/nfc 0xf4246c58 nfc_proto_register +EXPORT_SYMBOL net/nfc/nfc_digital 0x14665c0c nfc_digital_unregister_device +EXPORT_SYMBOL net/nfc/nfc_digital 0x17297504 nfc_digital_free_device +EXPORT_SYMBOL net/nfc/nfc_digital 0x8f9f092c nfc_digital_register_device +EXPORT_SYMBOL net/nfc/nfc_digital 0xfe4c95e1 nfc_digital_allocate_device +EXPORT_SYMBOL net/phonet/phonet 0x22485a9b phonet_header_ops +EXPORT_SYMBOL net/phonet/phonet 0x79c09776 pn_sock_get_port +EXPORT_SYMBOL net/phonet/phonet 0x918da42b phonet_proto_unregister +EXPORT_SYMBOL net/phonet/phonet 0x94f623ff pn_sock_hash +EXPORT_SYMBOL net/phonet/phonet 0x9ef22333 phonet_proto_register +EXPORT_SYMBOL net/phonet/phonet 0xa0940a12 pn_skb_send +EXPORT_SYMBOL net/phonet/phonet 0xc8395824 phonet_stream_ops +EXPORT_SYMBOL net/phonet/phonet 0xf845a937 pn_sock_unhash +EXPORT_SYMBOL net/rxrpc/rxrpc 0x07e4ab06 rxrpc_kernel_abort_call +EXPORT_SYMBOL net/rxrpc/rxrpc 0x179e5821 rxrpc_kernel_set_max_life +EXPORT_SYMBOL net/rxrpc/rxrpc 0x1acf45fa rxrpc_kernel_check_life +EXPORT_SYMBOL net/rxrpc/rxrpc 0x2fdb9721 key_type_rxrpc +EXPORT_SYMBOL net/rxrpc/rxrpc 0x31bf3ca3 rxrpc_debug_id +EXPORT_SYMBOL net/rxrpc/rxrpc 0x37998291 rxrpc_kernel_charge_accept +EXPORT_SYMBOL net/rxrpc/rxrpc 0x5c5131c6 rxrpc_kernel_get_peer +EXPORT_SYMBOL net/rxrpc/rxrpc 0x600d350b rxrpc_get_null_key +EXPORT_SYMBOL net/rxrpc/rxrpc 0x749548dc rxrpc_kernel_begin_call +EXPORT_SYMBOL net/rxrpc/rxrpc 0x8a91262a rxrpc_kernel_end_call +EXPORT_SYMBOL net/rxrpc/rxrpc 0x9a87f0f6 rxrpc_sock_set_min_security_level +EXPORT_SYMBOL net/rxrpc/rxrpc 0x9d056de3 rxrpc_kernel_get_epoch +EXPORT_SYMBOL net/rxrpc/rxrpc 0xae0a7fe8 rxrpc_kernel_recv_data +EXPORT_SYMBOL net/rxrpc/rxrpc 0xb53d0304 rxrpc_kernel_get_srtt +EXPORT_SYMBOL net/rxrpc/rxrpc 0xbeb69e29 rxrpc_kernel_send_data +EXPORT_SYMBOL net/rxrpc/rxrpc 0xc021c211 rxrpc_kernel_set_tx_length +EXPORT_SYMBOL net/rxrpc/rxrpc 0xc55f9d37 rxrpc_kernel_new_call_notification +EXPORT_SYMBOL net/rxrpc/rxrpc 0xcd90dc2e rxrpc_kernel_get_reply_time +EXPORT_SYMBOL net/rxrpc/rxrpc 0xd9625d5f rxrpc_get_server_data_key +EXPORT_SYMBOL net/sctp/sctp 0x968e147a sctp_do_peeloff +EXPORT_SYMBOL net/sunrpc/auth_gss/auth_rpcgss 0xd5eee616 gss_mech_put +EXPORT_SYMBOL net/sunrpc/auth_gss/auth_rpcgss 0xef654572 gss_mech_get +EXPORT_SYMBOL net/sunrpc/auth_gss/auth_rpcgss 0xf9434ccd gss_pseudoflavor_to_service +EXPORT_SYMBOL net/sunrpc/sunrpc 0x2ed2f8c5 svc_pool_stats_open +EXPORT_SYMBOL net/sunrpc/sunrpc 0x532de7cc xdr_restrict_buflen +EXPORT_SYMBOL net/sunrpc/sunrpc 0x68fd5cb3 xdr_truncate_encode +EXPORT_SYMBOL net/tipc/tipc 0x6f1a7e11 tipc_dump_start +EXPORT_SYMBOL net/tipc/tipc 0xb6047223 tipc_nl_sk_walk +EXPORT_SYMBOL net/tipc/tipc 0xbece46f0 tipc_dump_done +EXPORT_SYMBOL net/tipc/tipc 0xf1c9da87 tipc_sk_fill_sock_diag +EXPORT_SYMBOL net/tls/tls 0x715787af tls_get_record +EXPORT_SYMBOL net/wimax/wimax 0x1ca1e876 wimax_reset +EXPORT_SYMBOL net/wimax/wimax 0x6fb16f71 wimax_rfkill +EXPORT_SYMBOL net/wireless/cfg80211 0x0144acf3 cfg80211_rx_mgmt_khz +EXPORT_SYMBOL net/wireless/cfg80211 0x02bf404b __cfg80211_send_event_skb +EXPORT_SYMBOL net/wireless/cfg80211 0x09b97ad6 ieee80211_data_to_8023_exthdr +EXPORT_SYMBOL net/wireless/cfg80211 0x0a250781 cfg80211_radar_event +EXPORT_SYMBOL net/wireless/cfg80211 0x10b6f23b cfg80211_bss_iter +EXPORT_SYMBOL net/wireless/cfg80211 0x111ad2fe cfg80211_rx_unexpected_4addr_frame +EXPORT_SYMBOL net/wireless/cfg80211 0x113b17f7 cfg80211_ft_event +EXPORT_SYMBOL net/wireless/cfg80211 0x1227f425 cfg80211_sched_scan_stopped +EXPORT_SYMBOL net/wireless/cfg80211 0x15a37cf3 cfg80211_calculate_bitrate +EXPORT_SYMBOL net/wireless/cfg80211 0x15a66363 cfg80211_rx_control_port +EXPORT_SYMBOL net/wireless/cfg80211 0x1879fcbd bridge_tunnel_header +EXPORT_SYMBOL net/wireless/cfg80211 0x18b53545 cfg80211_chandef_create +EXPORT_SYMBOL net/wireless/cfg80211 0x1ce2497f reg_query_regdb_wmm +EXPORT_SYMBOL net/wireless/cfg80211 0x1de5243d cfg80211_control_port_tx_status +EXPORT_SYMBOL net/wireless/cfg80211 0x2180f1cc cfg80211_sched_scan_stopped_rtnl +EXPORT_SYMBOL net/wireless/cfg80211 0x22776230 wiphy_rfkill_set_hw_state +EXPORT_SYMBOL net/wireless/cfg80211 0x23bcecba ieee80211_amsdu_to_8023s +EXPORT_SYMBOL net/wireless/cfg80211 0x28446f90 ieee80211_get_response_rate +EXPORT_SYMBOL net/wireless/cfg80211 0x3033359e cfg80211_conn_failed +EXPORT_SYMBOL net/wireless/cfg80211 0x30f9c510 cfg80211_external_auth_request +EXPORT_SYMBOL net/wireless/cfg80211 0x32cd9cf5 cfg80211_abandon_assoc +EXPORT_SYMBOL net/wireless/cfg80211 0x3327782c cfg80211_iftype_allowed +EXPORT_SYMBOL net/wireless/cfg80211 0x35daaaf4 cfg80211_disconnected +EXPORT_SYMBOL net/wireless/cfg80211 0x38cb594a ieee80211_ie_split_ric +EXPORT_SYMBOL net/wireless/cfg80211 0x38cbeacc cfg80211_check_combinations +EXPORT_SYMBOL net/wireless/cfg80211 0x3bd8aaa1 ieee80211_operating_class_to_band +EXPORT_SYMBOL net/wireless/cfg80211 0x3d652da0 cfg80211_nan_func_terminated +EXPORT_SYMBOL net/wireless/cfg80211 0x41cd2599 cfg80211_probe_status +EXPORT_SYMBOL net/wireless/cfg80211 0x46312808 ieee80211_radiotap_iterator_next +EXPORT_SYMBOL net/wireless/cfg80211 0x4dce6c5a cfg80211_get_drvinfo +EXPORT_SYMBOL net/wireless/cfg80211 0x5433a4e2 ieee80211_get_channel_khz +EXPORT_SYMBOL net/wireless/cfg80211 0x543606bc cfg80211_iter_combinations +EXPORT_SYMBOL net/wireless/cfg80211 0x56078bfa cfg80211_scan_done +EXPORT_SYMBOL net/wireless/cfg80211 0x5a643145 cfg80211_send_layer2_update +EXPORT_SYMBOL net/wireless/cfg80211 0x5cae4976 cfg80211_cac_event +EXPORT_SYMBOL net/wireless/cfg80211 0x5d16e241 cfg80211_stop_iface +EXPORT_SYMBOL net/wireless/cfg80211 0x5e0d5ed3 cfg80211_mgmt_tx_status +EXPORT_SYMBOL net/wireless/cfg80211 0x5f17fd42 cfg80211_inform_bss_data +EXPORT_SYMBOL net/wireless/cfg80211 0x60b25a36 cfg80211_cqm_beacon_loss_notify +EXPORT_SYMBOL net/wireless/cfg80211 0x619d87a2 cfg80211_tdls_oper_request +EXPORT_SYMBOL net/wireless/cfg80211 0x61f503b6 cfg80211_classify8021d +EXPORT_SYMBOL net/wireless/cfg80211 0x6367d203 cfg80211_tx_mgmt_expired +EXPORT_SYMBOL net/wireless/cfg80211 0x6437e67f wiphy_rfkill_start_polling +EXPORT_SYMBOL net/wireless/cfg80211 0x67d86dcd ieee80211_chandef_to_operating_class +EXPORT_SYMBOL net/wireless/cfg80211 0x68600c40 ieee80211_mandatory_rates +EXPORT_SYMBOL net/wireless/cfg80211 0x6992ff63 cfg80211_new_sta +EXPORT_SYMBOL net/wireless/cfg80211 0x69b18f43 rfc1042_header +EXPORT_SYMBOL net/wireless/cfg80211 0x69cc8ed2 wiphy_read_of_freq_limits +EXPORT_SYMBOL net/wireless/cfg80211 0x6bedf402 ieee80211_freq_khz_to_channel +EXPORT_SYMBOL net/wireless/cfg80211 0x6c0e464e cfg80211_unlink_bss +EXPORT_SYMBOL net/wireless/cfg80211 0x6edde2bf cfg80211_get_bss +EXPORT_SYMBOL net/wireless/cfg80211 0x6fa723f1 cfg80211_rx_unprot_mlme_mgmt +EXPORT_SYMBOL net/wireless/cfg80211 0x748b1c8f ieee80211_get_num_supported_channels +EXPORT_SYMBOL net/wireless/cfg80211 0x749aa7ae cfg80211_rx_assoc_resp +EXPORT_SYMBOL net/wireless/cfg80211 0x750a5844 cfg80211_sched_scan_results +EXPORT_SYMBOL net/wireless/cfg80211 0x780204df freq_reg_info +EXPORT_SYMBOL net/wireless/cfg80211 0x79b82a71 cfg80211_find_vendor_elem +EXPORT_SYMBOL net/wireless/cfg80211 0x7c3ac925 ieee80211_get_vht_max_nss +EXPORT_SYMBOL net/wireless/cfg80211 0x7ec763d6 regulatory_pre_cac_allowed +EXPORT_SYMBOL net/wireless/cfg80211 0x7ef39823 ieee80211_hdrlen +EXPORT_SYMBOL net/wireless/cfg80211 0x7f13e610 cfg80211_michael_mic_failure +EXPORT_SYMBOL net/wireless/cfg80211 0x81a471d6 cfg80211_chandef_valid +EXPORT_SYMBOL net/wireless/cfg80211 0x8201458b wiphy_unregister +EXPORT_SYMBOL net/wireless/cfg80211 0x840ecc6d cfg80211_get_station +EXPORT_SYMBOL net/wireless/cfg80211 0x8b24e88f cfg80211_merge_profile +EXPORT_SYMBOL net/wireless/cfg80211 0x8fa02936 cfg80211_free_nan_func +EXPORT_SYMBOL net/wireless/cfg80211 0x920b9f9f __cfg80211_alloc_reply_skb +EXPORT_SYMBOL net/wireless/cfg80211 0x957771e3 regulatory_hint +EXPORT_SYMBOL net/wireless/cfg80211 0x9d5213d5 cfg80211_reg_can_beacon +EXPORT_SYMBOL net/wireless/cfg80211 0x9d6cba30 cfg80211_find_elem_match +EXPORT_SYMBOL net/wireless/cfg80211 0xa080dd97 cfg80211_notify_new_peer_candidate +EXPORT_SYMBOL net/wireless/cfg80211 0xa63653b0 cfg80211_reg_can_beacon_relax +EXPORT_SYMBOL net/wireless/cfg80211 0xa7a05945 cfg80211_ref_bss +EXPORT_SYMBOL net/wireless/cfg80211 0xa823f203 cfg80211_port_authorized +EXPORT_SYMBOL net/wireless/cfg80211 0xa95f7b10 cfg80211_ch_switch_started_notify +EXPORT_SYMBOL net/wireless/cfg80211 0xa9dea168 cfg80211_crit_proto_stopped +EXPORT_SYMBOL net/wireless/cfg80211 0xac4d950a cfg80211_roamed +EXPORT_SYMBOL net/wireless/cfg80211 0xac97a207 ieee80211_radiotap_iterator_init +EXPORT_SYMBOL net/wireless/cfg80211 0xaf55b73b wiphy_rfkill_stop_polling +EXPORT_SYMBOL net/wireless/cfg80211 0xafe8b001 ieee80211_channel_to_freq_khz +EXPORT_SYMBOL net/wireless/cfg80211 0xb1cdcb29 cfg80211_pmksa_candidate_notify +EXPORT_SYMBOL net/wireless/cfg80211 0xb5bbe2f7 cfg80211_ibss_joined +EXPORT_SYMBOL net/wireless/cfg80211 0xb83bc008 wiphy_apply_custom_regulatory +EXPORT_SYMBOL net/wireless/cfg80211 0xb932da2a cfg80211_del_sta_sinfo +EXPORT_SYMBOL net/wireless/cfg80211 0xb93f03cf cfg80211_inform_bss_frame_data +EXPORT_SYMBOL net/wireless/cfg80211 0xbaea7375 __cfg80211_alloc_event_skb +EXPORT_SYMBOL net/wireless/cfg80211 0xbb21ee25 cfg80211_update_owe_info_event +EXPORT_SYMBOL net/wireless/cfg80211 0xbc5ef24c cfg80211_check_station_change +EXPORT_SYMBOL net/wireless/cfg80211 0xbe50e468 cfg80211_connect_done +EXPORT_SYMBOL net/wireless/cfg80211 0xc151575b cfg80211_report_obss_beacon_khz +EXPORT_SYMBOL net/wireless/cfg80211 0xc261f202 cfg80211_rx_spurious_frame +EXPORT_SYMBOL net/wireless/cfg80211 0xc8e1aff1 cfg80211_cqm_txe_notify +EXPORT_SYMBOL net/wireless/cfg80211 0xcc1a7c48 cfg80211_is_element_inherited +EXPORT_SYMBOL net/wireless/cfg80211 0xce949646 cfg80211_nan_match +EXPORT_SYMBOL net/wireless/cfg80211 0xd046bdeb wiphy_register +EXPORT_SYMBOL net/wireless/cfg80211 0xd176bcf1 cfg80211_cqm_pktloss_notify +EXPORT_SYMBOL net/wireless/cfg80211 0xd29b61e3 cfg80211_gtk_rekey_notify +EXPORT_SYMBOL net/wireless/cfg80211 0xd56d55f3 ieee80211_get_mesh_hdrlen +EXPORT_SYMBOL net/wireless/cfg80211 0xd5af0e77 cfg80211_chandef_usable +EXPORT_SYMBOL net/wireless/cfg80211 0xd6549427 cfg80211_rx_mlme_mgmt +EXPORT_SYMBOL net/wireless/cfg80211 0xd7f6f362 cfg80211_sinfo_alloc_tid_stats +EXPORT_SYMBOL net/wireless/cfg80211 0xd9d4953c cfg80211_ready_on_channel +EXPORT_SYMBOL net/wireless/cfg80211 0xdab412eb cfg80211_unregister_wdev +EXPORT_SYMBOL net/wireless/cfg80211 0xdba126c1 reg_initiator_name +EXPORT_SYMBOL net/wireless/cfg80211 0xdbf5d0bd regulatory_set_wiphy_regd_sync_rtnl +EXPORT_SYMBOL net/wireless/cfg80211 0xdc2dfa2d cfg80211_tx_mlme_mgmt +EXPORT_SYMBOL net/wireless/cfg80211 0xdd9806e2 ieee80211_get_hdrlen_from_skb +EXPORT_SYMBOL net/wireless/cfg80211 0xddb5201c cfg80211_sta_opmode_change_notify +EXPORT_SYMBOL net/wireless/cfg80211 0xdecca8e2 cfg80211_assoc_timeout +EXPORT_SYMBOL net/wireless/cfg80211 0xdfc9b6a0 wiphy_new_nm +EXPORT_SYMBOL net/wireless/cfg80211 0xe105c059 wiphy_free +EXPORT_SYMBOL net/wireless/cfg80211 0xe19e2e45 regulatory_set_wiphy_regd +EXPORT_SYMBOL net/wireless/cfg80211 0xe45f9cd9 cfg80211_report_wowlan_wakeup +EXPORT_SYMBOL net/wireless/cfg80211 0xed334b94 cfg80211_put_bss +EXPORT_SYMBOL net/wireless/cfg80211 0xef7edb79 cfg80211_cqm_rssi_notify +EXPORT_SYMBOL net/wireless/cfg80211 0xf02a3d27 cfg80211_remain_on_channel_expired +EXPORT_SYMBOL net/wireless/cfg80211 0xf5596d89 cfg80211_get_p2p_attr +EXPORT_SYMBOL net/wireless/cfg80211 0xf8f313a9 cfg80211_chandef_dfs_required +EXPORT_SYMBOL net/wireless/cfg80211 0xfad41052 cfg80211_ch_switch_notify +EXPORT_SYMBOL net/wireless/cfg80211 0xfae8514f cfg80211_chandef_compatible +EXPORT_SYMBOL net/wireless/cfg80211 0xfb1e2b08 cfg80211_auth_timeout +EXPORT_SYMBOL net/wireless/cfg80211 0xff0c113a ieee80211_bss_get_elem +EXPORT_SYMBOL net/wireless/lib80211 0x3487686a lib80211_register_crypto_ops +EXPORT_SYMBOL net/wireless/lib80211 0x49d193e3 lib80211_crypt_info_free +EXPORT_SYMBOL net/wireless/lib80211 0x834f4048 lib80211_unregister_crypto_ops +EXPORT_SYMBOL net/wireless/lib80211 0xa70866c2 lib80211_crypt_info_init +EXPORT_SYMBOL net/wireless/lib80211 0xbf95eaae lib80211_get_crypto_ops +EXPORT_SYMBOL net/wireless/lib80211 0xcc6d72f9 lib80211_crypt_delayed_deinit +EXPORT_SYMBOL sound/core/oss/snd-mixer-oss 0x4269176b snd_mixer_oss_ioctl_card +EXPORT_SYMBOL sound/core/seq/snd-seq 0x07fc424a snd_seq_event_port_attach +EXPORT_SYMBOL sound/core/seq/snd-seq 0x1a724fcc snd_seq_kernel_client_ctl +EXPORT_SYMBOL sound/core/seq/snd-seq 0x3061c52d snd_use_lock_sync_helper +EXPORT_SYMBOL sound/core/seq/snd-seq 0x3fb4d161 snd_seq_kernel_client_dispatch +EXPORT_SYMBOL sound/core/seq/snd-seq 0x55ba75bc snd_seq_kernel_client_write_poll +EXPORT_SYMBOL sound/core/seq/snd-seq 0x6bb71038 snd_seq_delete_kernel_client +EXPORT_SYMBOL sound/core/seq/snd-seq 0x7ac2f329 snd_seq_expand_var_event +EXPORT_SYMBOL sound/core/seq/snd-seq 0x7b8699eb snd_seq_event_port_detach +EXPORT_SYMBOL sound/core/seq/snd-seq 0xa765b522 snd_seq_create_kernel_client +EXPORT_SYMBOL sound/core/seq/snd-seq 0xb8e448a0 snd_seq_set_queue_tempo +EXPORT_SYMBOL sound/core/seq/snd-seq 0xe934da1d snd_seq_dump_var_event +EXPORT_SYMBOL sound/core/seq/snd-seq 0xf4ad2f95 snd_seq_kernel_client_enqueue +EXPORT_SYMBOL sound/core/seq/snd-seq-midi-emul 0x6ea09972 snd_midi_channel_alloc_set +EXPORT_SYMBOL sound/core/seq/snd-seq-midi-emul 0x833a3e07 snd_midi_channel_set_clear +EXPORT_SYMBOL sound/core/seq/snd-seq-midi-emul 0xb9948d2c snd_midi_channel_free_set +EXPORT_SYMBOL sound/core/seq/snd-seq-midi-emul 0xf912f0c8 snd_midi_process_event +EXPORT_SYMBOL sound/core/seq/snd-seq-midi-event 0x1724fb56 snd_midi_event_decode +EXPORT_SYMBOL sound/core/seq/snd-seq-midi-event 0x17fcf66b snd_midi_event_encode_byte +EXPORT_SYMBOL sound/core/seq/snd-seq-midi-event 0x1cff6e14 snd_midi_event_reset_encode +EXPORT_SYMBOL sound/core/seq/snd-seq-midi-event 0x2f853c43 snd_midi_event_no_status +EXPORT_SYMBOL sound/core/seq/snd-seq-midi-event 0x4d5f7f98 snd_midi_event_free +EXPORT_SYMBOL sound/core/seq/snd-seq-midi-event 0x56efbc6b snd_midi_event_reset_decode +EXPORT_SYMBOL sound/core/seq/snd-seq-midi-event 0xdaf3383a snd_midi_event_new +EXPORT_SYMBOL sound/core/seq/snd-seq-virmidi 0x75c1d1c8 snd_virmidi_new +EXPORT_SYMBOL sound/core/snd-hwdep 0x484bac11 snd_hwdep_new +EXPORT_SYMBOL sound/core/snd-rawmidi 0x06cfbece snd_rawmidi_drain_input +EXPORT_SYMBOL sound/core/snd-rawmidi 0x0741cd87 snd_rawmidi_drain_output +EXPORT_SYMBOL sound/core/snd-rawmidi 0x0a2b833c snd_rawmidi_kernel_release +EXPORT_SYMBOL sound/core/snd-rawmidi 0x16d1556b snd_rawmidi_receive +EXPORT_SYMBOL sound/core/snd-rawmidi 0x1a897be4 snd_rawmidi_kernel_open +EXPORT_SYMBOL sound/core/snd-rawmidi 0x1ce8d3fb snd_rawmidi_proceed +EXPORT_SYMBOL sound/core/snd-rawmidi 0x23fa562c snd_rawmidi_kernel_read +EXPORT_SYMBOL sound/core/snd-rawmidi 0x85828c9f __snd_rawmidi_transmit_ack +EXPORT_SYMBOL sound/core/snd-rawmidi 0x883ac3a7 snd_rawmidi_output_params +EXPORT_SYMBOL sound/core/snd-rawmidi 0x8a031983 snd_rawmidi_transmit_ack +EXPORT_SYMBOL sound/core/snd-rawmidi 0x948d2851 snd_rawmidi_kernel_write +EXPORT_SYMBOL sound/core/snd-rawmidi 0xad5bfc3d snd_rawmidi_drop_output +EXPORT_SYMBOL sound/core/snd-rawmidi 0xb71e9b8b snd_rawmidi_info_select +EXPORT_SYMBOL sound/core/snd-rawmidi 0xb951782b snd_rawmidi_new +EXPORT_SYMBOL sound/core/snd-rawmidi 0xc23e47d4 snd_rawmidi_transmit +EXPORT_SYMBOL sound/core/snd-rawmidi 0xc8ce29c1 snd_rawmidi_transmit_peek +EXPORT_SYMBOL sound/core/snd-rawmidi 0xc9b6ad5d snd_rawmidi_input_params +EXPORT_SYMBOL sound/core/snd-rawmidi 0xcac0d93d snd_rawmidi_set_ops +EXPORT_SYMBOL sound/core/snd-rawmidi 0xecb7be43 __snd_rawmidi_transmit_peek +EXPORT_SYMBOL sound/core/snd-rawmidi 0xf9c32110 snd_rawmidi_transmit_empty +EXPORT_SYMBOL sound/core/snd-seq-device 0x091def1c snd_seq_autoload_exit +EXPORT_SYMBOL sound/core/snd-seq-device 0x370a0736 snd_seq_autoload_init +EXPORT_SYMBOL sound/core/snd-seq-device 0x6339b6d0 snd_seq_device_load_drivers +EXPORT_SYMBOL sound/core/snd-seq-device 0xbde1bd93 snd_seq_device_new +EXPORT_SYMBOL sound/drivers/mpu401/snd-mpu401-uart 0x6d629c59 snd_mpu401_uart_interrupt_tx +EXPORT_SYMBOL sound/drivers/mpu401/snd-mpu401-uart 0xae0cc7af snd_mpu401_uart_new +EXPORT_SYMBOL sound/drivers/mpu401/snd-mpu401-uart 0xc0fec227 snd_mpu401_uart_interrupt +EXPORT_SYMBOL sound/drivers/opl3/snd-opl3-lib 0x05060a19 snd_opl3_regmap +EXPORT_SYMBOL sound/drivers/opl3/snd-opl3-lib 0x063d4461 snd_opl3_reset +EXPORT_SYMBOL sound/drivers/opl3/snd-opl3-lib 0x0c3cbe78 snd_opl3_new +EXPORT_SYMBOL sound/drivers/opl3/snd-opl3-lib 0x3dee794a snd_opl3_create +EXPORT_SYMBOL sound/drivers/opl3/snd-opl3-lib 0x510b5a2b snd_opl3_find_patch +EXPORT_SYMBOL sound/drivers/opl3/snd-opl3-lib 0x51d82845 snd_opl3_init +EXPORT_SYMBOL sound/drivers/opl3/snd-opl3-lib 0xa9f6a87c snd_opl3_interrupt +EXPORT_SYMBOL sound/drivers/opl3/snd-opl3-lib 0xceb754db snd_opl3_load_patch +EXPORT_SYMBOL sound/drivers/opl3/snd-opl3-lib 0xe0ad6321 snd_opl3_timer_new +EXPORT_SYMBOL sound/drivers/opl3/snd-opl3-lib 0xf012d79f snd_opl3_hwdep_new +EXPORT_SYMBOL sound/drivers/vx/snd-vx-lib 0x06d86c19 snd_vx_setup_firmware +EXPORT_SYMBOL sound/drivers/vx/snd-vx-lib 0x06da1c26 snd_vx_dsp_load +EXPORT_SYMBOL sound/drivers/vx/snd-vx-lib 0x08f670bb snd_vx_check_reg_bit +EXPORT_SYMBOL sound/drivers/vx/snd-vx-lib 0x226138b0 snd_vx_threaded_irq_handler +EXPORT_SYMBOL sound/drivers/vx/snd-vx-lib 0x2e062a80 snd_vx_create +EXPORT_SYMBOL sound/drivers/vx/snd-vx-lib 0x4d070b8f snd_vx_suspend +EXPORT_SYMBOL sound/drivers/vx/snd-vx-lib 0x532be1ca snd_vx_load_boot_image +EXPORT_SYMBOL sound/drivers/vx/snd-vx-lib 0x5c3a93b8 snd_vx_free_firmware +EXPORT_SYMBOL sound/drivers/vx/snd-vx-lib 0x6052d3c7 snd_vx_dsp_boot +EXPORT_SYMBOL sound/drivers/vx/snd-vx-lib 0xbece8eef snd_vx_resume +EXPORT_SYMBOL sound/drivers/vx/snd-vx-lib 0xf1f04d23 snd_vx_irq_handler +EXPORT_SYMBOL sound/firewire/snd-firewire-lib 0x069ad702 cmp_connection_destroy +EXPORT_SYMBOL sound/firewire/snd-firewire-lib 0x09e751ad avc_general_get_sig_fmt +EXPORT_SYMBOL sound/firewire/snd-firewire-lib 0x18ab5c27 amdtp_stream_destroy +EXPORT_SYMBOL sound/firewire/snd-firewire-lib 0x20254e45 amdtp_syt_intervals +EXPORT_SYMBOL sound/firewire/snd-firewire-lib 0x2a10e568 snd_fw_transaction +EXPORT_SYMBOL sound/firewire/snd-firewire-lib 0x2e4f0e05 iso_packets_buffer_destroy +EXPORT_SYMBOL sound/firewire/snd-firewire-lib 0x33350ad0 amdtp_stream_update +EXPORT_SYMBOL sound/firewire/snd-firewire-lib 0x40c0a30f cmp_connection_release +EXPORT_SYMBOL sound/firewire/snd-firewire-lib 0x4c59df41 iso_packets_buffer_init +EXPORT_SYMBOL sound/firewire/snd-firewire-lib 0x53716faa avc_general_get_plug_info +EXPORT_SYMBOL sound/firewire/snd-firewire-lib 0x53ca18e8 amdtp_rate_table +EXPORT_SYMBOL sound/firewire/snd-firewire-lib 0x60334d16 cmp_connection_check_used +EXPORT_SYMBOL sound/firewire/snd-firewire-lib 0x6406a9fe amdtp_stream_set_parameters +EXPORT_SYMBOL sound/firewire/snd-firewire-lib 0x6db0c61d cmp_connection_reserve +EXPORT_SYMBOL sound/firewire/snd-firewire-lib 0x75c8b3e4 snd_fw_schedule_registration +EXPORT_SYMBOL sound/firewire/snd-firewire-lib 0x7e2c1ee7 cmp_connection_establish +EXPORT_SYMBOL sound/firewire/snd-firewire-lib 0x8300eacc cmp_connection_init +EXPORT_SYMBOL sound/firewire/snd-firewire-lib 0x874ecaf3 fcp_avc_transaction +EXPORT_SYMBOL sound/firewire/snd-firewire-lib 0x8b0af54a amdtp_stream_init +EXPORT_SYMBOL sound/firewire/snd-firewire-lib 0x91122e91 fw_iso_resources_init +EXPORT_SYMBOL sound/firewire/snd-firewire-lib 0x9dd61c67 fcp_bus_reset +EXPORT_SYMBOL sound/firewire/snd-firewire-lib 0xa2e25d0f amdtp_stream_pcm_abort +EXPORT_SYMBOL sound/firewire/snd-firewire-lib 0xab102be2 cmp_connection_update +EXPORT_SYMBOL sound/firewire/snd-firewire-lib 0xb547eefb fw_iso_resources_destroy +EXPORT_SYMBOL sound/firewire/snd-firewire-lib 0xbc18a997 fw_iso_resources_allocate +EXPORT_SYMBOL sound/firewire/snd-firewire-lib 0xdb9567f2 fw_iso_resources_update +EXPORT_SYMBOL sound/firewire/snd-firewire-lib 0xe16cf44b amdtp_stream_get_max_payload +EXPORT_SYMBOL sound/firewire/snd-firewire-lib 0xe488c87b amdtp_stream_add_pcm_hw_constraints +EXPORT_SYMBOL sound/firewire/snd-firewire-lib 0xe83387e8 fw_iso_resources_free +EXPORT_SYMBOL sound/firewire/snd-firewire-lib 0xeeeff5f9 cmp_connection_break +EXPORT_SYMBOL sound/firewire/snd-firewire-lib 0xefdbeb84 amdtp_stream_pcm_prepare +EXPORT_SYMBOL sound/firewire/snd-firewire-lib 0xf55295e9 avc_general_set_sig_fmt +EXPORT_SYMBOL sound/i2c/other/snd-ak4113 0x4e180920 snd_ak4113_resume +EXPORT_SYMBOL sound/i2c/other/snd-ak4113 0x6929a988 snd_ak4113_suspend +EXPORT_SYMBOL sound/i2c/other/snd-ak4114 0x0012e551 snd_ak4114_create +EXPORT_SYMBOL sound/i2c/other/snd-ak4114 0x0cd2bef4 snd_ak4114_external_rate +EXPORT_SYMBOL sound/i2c/other/snd-ak4114 0x5016bec7 snd_ak4114_check_rate_and_errors +EXPORT_SYMBOL sound/i2c/other/snd-ak4114 0x5ada7be3 snd_ak4114_reg_write +EXPORT_SYMBOL sound/i2c/other/snd-ak4114 0x6473af1d snd_ak4114_suspend +EXPORT_SYMBOL sound/i2c/other/snd-ak4114 0x90a0a046 snd_ak4114_resume +EXPORT_SYMBOL sound/i2c/other/snd-ak4114 0xa1c8f80f snd_ak4114_reinit +EXPORT_SYMBOL sound/i2c/other/snd-ak4114 0xacbb413a snd_ak4114_build +EXPORT_SYMBOL sound/i2c/other/snd-ak4xxx-adda 0x26ccca23 snd_akm4xxx_build_controls +EXPORT_SYMBOL sound/i2c/other/snd-ak4xxx-adda 0x3f234c47 snd_akm4xxx_write +EXPORT_SYMBOL sound/i2c/other/snd-ak4xxx-adda 0x437870c4 snd_akm4xxx_reset +EXPORT_SYMBOL sound/i2c/other/snd-ak4xxx-adda 0xaca2d7cb snd_akm4xxx_init +EXPORT_SYMBOL sound/i2c/other/snd-pt2258 0xad50cabf snd_pt2258_reset +EXPORT_SYMBOL sound/i2c/other/snd-pt2258 0xeaa5eb42 snd_pt2258_build_controls +EXPORT_SYMBOL sound/i2c/snd-i2c 0x191ac8c4 snd_i2c_sendbytes +EXPORT_SYMBOL sound/i2c/snd-i2c 0x54fbabdf snd_i2c_device_free +EXPORT_SYMBOL sound/i2c/snd-i2c 0x5cc1301b snd_i2c_bus_create +EXPORT_SYMBOL sound/i2c/snd-i2c 0xa8cec718 snd_i2c_probeaddr +EXPORT_SYMBOL sound/i2c/snd-i2c 0xbcf45638 snd_i2c_device_create +EXPORT_SYMBOL sound/i2c/snd-i2c 0xf233674d snd_i2c_readbytes +EXPORT_SYMBOL sound/pci/ac97/snd-ac97-codec 0x168d1756 snd_ac97_resume +EXPORT_SYMBOL sound/pci/ac97/snd-ac97-codec 0x2164eb26 snd_ac97_write +EXPORT_SYMBOL sound/pci/ac97/snd-ac97-codec 0x23974d13 snd_ac97_read +EXPORT_SYMBOL sound/pci/ac97/snd-ac97-codec 0x2eb65fc6 snd_ac97_write_cache +EXPORT_SYMBOL sound/pci/ac97/snd-ac97-codec 0x324779f8 snd_ac97_pcm_open +EXPORT_SYMBOL sound/pci/ac97/snd-ac97-codec 0x37bc35be snd_ac97_update_power +EXPORT_SYMBOL sound/pci/ac97/snd-ac97-codec 0x4c4b4ccb snd_ac97_tune_hardware +EXPORT_SYMBOL sound/pci/ac97/snd-ac97-codec 0x6181b3ba snd_ac97_bus +EXPORT_SYMBOL sound/pci/ac97/snd-ac97-codec 0x7be2f1d4 snd_ac97_update_bits +EXPORT_SYMBOL sound/pci/ac97/snd-ac97-codec 0x982c58a1 snd_ac97_mixer +EXPORT_SYMBOL sound/pci/ac97/snd-ac97-codec 0xb37681d1 snd_ac97_set_rate +EXPORT_SYMBOL sound/pci/ac97/snd-ac97-codec 0xbc108ea2 snd_ac97_pcm_close +EXPORT_SYMBOL sound/pci/ac97/snd-ac97-codec 0xc040bd2a snd_ac97_suspend +EXPORT_SYMBOL sound/pci/ac97/snd-ac97-codec 0xd826c730 snd_ac97_pcm_double_rate_rules +EXPORT_SYMBOL sound/pci/ac97/snd-ac97-codec 0xd9d4aa4f snd_ac97_update +EXPORT_SYMBOL sound/pci/ac97/snd-ac97-codec 0xd9ef49af snd_ac97_pcm_assign +EXPORT_SYMBOL sound/pci/ac97/snd-ac97-codec 0xec7d382f snd_ac97_get_short_name +EXPORT_SYMBOL sound/pci/ice1712/snd-ice17xx-ak4xxx 0x134d0ad4 snd_ice1712_akm4xxx_init +EXPORT_SYMBOL sound/pci/ice1712/snd-ice17xx-ak4xxx 0x192b3355 snd_ice1712_akm4xxx_build_controls +EXPORT_SYMBOL sound/pci/ice1712/snd-ice17xx-ak4xxx 0xd1137edc snd_ice1712_akm4xxx_free +EXPORT_SYMBOL sound/pci/oxygen/snd-oxygen-lib 0x1e854d08 oxygen_write8_masked +EXPORT_SYMBOL sound/pci/oxygen/snd-oxygen-lib 0x2c8dc376 oxygen_read16 +EXPORT_SYMBOL sound/pci/oxygen/snd-oxygen-lib 0x5008ae3b oxygen_write16_masked +EXPORT_SYMBOL sound/pci/oxygen/snd-oxygen-lib 0x533dcdd7 oxygen_pci_shutdown +EXPORT_SYMBOL sound/pci/oxygen/snd-oxygen-lib 0x709339c9 oxygen_write_uart +EXPORT_SYMBOL sound/pci/oxygen/snd-oxygen-lib 0x71878d13 oxygen_write_ac97 +EXPORT_SYMBOL sound/pci/oxygen/snd-oxygen-lib 0x72f8ae6c oxygen_write32_masked +EXPORT_SYMBOL sound/pci/oxygen/snd-oxygen-lib 0x7525dac8 oxygen_write32 +EXPORT_SYMBOL sound/pci/oxygen/snd-oxygen-lib 0x7ba4573d oxygen_update_dac_routing +EXPORT_SYMBOL sound/pci/oxygen/snd-oxygen-lib 0x972231ea oxygen_write16 +EXPORT_SYMBOL sound/pci/oxygen/snd-oxygen-lib 0x9c424c2c oxygen_write8 +EXPORT_SYMBOL sound/pci/oxygen/snd-oxygen-lib 0xaf8aabf1 oxygen_write_i2c +EXPORT_SYMBOL sound/pci/oxygen/snd-oxygen-lib 0xafa6b797 oxygen_write_spi +EXPORT_SYMBOL sound/pci/oxygen/snd-oxygen-lib 0xb139cbd9 oxygen_pci_remove +EXPORT_SYMBOL sound/pci/oxygen/snd-oxygen-lib 0xbfde9e67 oxygen_write_ac97_masked +EXPORT_SYMBOL sound/pci/oxygen/snd-oxygen-lib 0xc30aaa3f oxygen_read_ac97 +EXPORT_SYMBOL sound/pci/oxygen/snd-oxygen-lib 0xc4c819a1 oxygen_pci_pm +EXPORT_SYMBOL sound/pci/oxygen/snd-oxygen-lib 0xcedfadc9 oxygen_read32 +EXPORT_SYMBOL sound/pci/oxygen/snd-oxygen-lib 0xe3a1bd41 oxygen_reset_uart +EXPORT_SYMBOL sound/pci/oxygen/snd-oxygen-lib 0xeefb6d1d oxygen_pci_probe +EXPORT_SYMBOL sound/pci/oxygen/snd-oxygen-lib 0xfd69a9fb oxygen_read8 +EXPORT_SYMBOL sound/soc/amd/acp_audio_dma 0xea74f232 bt_uart_enable +EXPORT_SYMBOL sound/soc/codecs/snd-soc-pcm3060 0x15c22972 pcm3060_regmap +EXPORT_SYMBOL sound/soc/codecs/snd-soc-pcm3060 0x3227764b pcm3060_probe +EXPORT_SYMBOL sound/soc/codecs/snd-soc-rt715 0xed2acb24 hda_to_sdw +EXPORT_SYMBOL sound/soc/codecs/snd-soc-tlv320aic23 0x266fbc0c tlv320aic23_regmap +EXPORT_SYMBOL sound/soc/codecs/snd-soc-tlv320aic23 0x8b1edd08 tlv320aic23_probe +EXPORT_SYMBOL sound/soc/codecs/snd-soc-tlv320aic32x4 0x59bb2d85 aic32x4_regmap_config +EXPORT_SYMBOL sound/soc/codecs/snd-soc-tlv320aic32x4 0x7be7e3cc aic32x4_remove +EXPORT_SYMBOL sound/soc/codecs/snd-soc-tlv320aic32x4 0x7ed62dd7 aic32x4_probe +EXPORT_SYMBOL sound/soc/fsl/snd-soc-fsl-utils 0x691566bf fsl_asoc_get_dma_channel +EXPORT_SYMBOL sound/soc/qcom/snd-soc-qcom-common 0x3c29a6c2 qcom_snd_parse_of +EXPORT_SYMBOL sound/soc/sof/snd-sof 0x02cc72ff sof_io_write64 +EXPORT_SYMBOL sound/soc/sof/snd-sof 0x0ecdf744 snd_sof_parse_module_memcpy +EXPORT_SYMBOL sound/soc/sof/snd-sof 0x1154a278 snd_sof_load_firmware_raw +EXPORT_SYMBOL sound/soc/sof/snd-sof 0x12907eb2 snd_sof_dsp_mailbox_init +EXPORT_SYMBOL sound/soc/sof/snd-sof 0x160f5afa sof_mailbox_write +EXPORT_SYMBOL sound/soc/sof/snd-sof 0x1a146973 sof_block_write +EXPORT_SYMBOL sound/soc/sof/snd-sof 0x1ca6625b snd_sof_suspend +EXPORT_SYMBOL sound/soc/sof/snd-sof 0x1e97618e snd_sof_ipc_init +EXPORT_SYMBOL sound/soc/sof/snd-sof 0x2d73c28d snd_sof_release_trace +EXPORT_SYMBOL sound/soc/sof/snd-sof 0x3433617b sof_block_read +EXPORT_SYMBOL sound/soc/sof/snd-sof 0x3a907c63 sof_machine_unregister +EXPORT_SYMBOL sound/soc/sof/snd-sof 0x3bf9c091 sof_fw_ready +EXPORT_SYMBOL sound/soc/sof/snd-sof 0x3e93c320 snd_sof_dsp_panic +EXPORT_SYMBOL sound/soc/sof/snd-sof 0x3ebb395f snd_sof_dsp_update_bits64_unlocked +EXPORT_SYMBOL sound/soc/sof/snd-sof 0x40b40bfa snd_sof_ipc_free +EXPORT_SYMBOL sound/soc/sof/snd-sof 0x42176949 sof_machine_register +EXPORT_SYMBOL sound/soc/sof/snd-sof 0x4bdc401f snd_sof_pci_update_bits +EXPORT_SYMBOL sound/soc/sof/snd-sof 0x5a6737c1 snd_sof_complete +EXPORT_SYMBOL sound/soc/sof/snd-sof 0x5cf5282d snd_sof_prepare +EXPORT_SYMBOL sound/soc/sof/snd-sof 0x67bcfc75 snd_sof_runtime_resume +EXPORT_SYMBOL sound/soc/sof/snd-sof 0x692589d3 snd_sof_device_remove +EXPORT_SYMBOL sound/soc/sof/snd-sof 0x6e4903f1 snd_sof_load_firmware_memcpy +EXPORT_SYMBOL sound/soc/sof/snd-sof 0x70e611d5 snd_sof_trace_notify_for_error +EXPORT_SYMBOL sound/soc/sof/snd-sof 0x77628bca snd_sof_load_firmware +EXPORT_SYMBOL sound/soc/sof/snd-sof 0x77d3ad44 snd_sof_fw_parse_ext_data +EXPORT_SYMBOL sound/soc/sof/snd-sof 0x77facb9d snd_sof_run_firmware +EXPORT_SYMBOL sound/soc/sof/snd-sof 0x79936912 snd_sof_dsp_only_d0i3_compatible_stream_active +EXPORT_SYMBOL sound/soc/sof/snd-sof 0x8378cf4b sof_io_read +EXPORT_SYMBOL sound/soc/sof/snd-sof 0x9076085d sof_io_write +EXPORT_SYMBOL sound/soc/sof/snd-sof 0x955def65 snd_sof_load_topology +EXPORT_SYMBOL sound/soc/sof/snd-sof 0x99d9001b snd_sof_ipc_reply +EXPORT_SYMBOL sound/soc/sof/snd-sof 0x9bf4d425 sof_machine_check +EXPORT_SYMBOL sound/soc/sof/snd-sof 0xa2ccb2c8 snd_sof_create_page_table +EXPORT_SYMBOL sound/soc/sof/snd-sof 0xa5aba841 snd_sof_device_probe +EXPORT_SYMBOL sound/soc/sof/snd-sof 0xa77618f5 snd_sof_dsp_update_bits +EXPORT_SYMBOL sound/soc/sof/snd-sof 0xad055b2c sof_ipc_tx_message +EXPORT_SYMBOL sound/soc/sof/snd-sof 0xb766d6b1 snd_sof_get_status +EXPORT_SYMBOL sound/soc/sof/snd-sof 0xb7c7fdb3 snd_sof_pcm_period_elapsed +EXPORT_SYMBOL sound/soc/sof/snd-sof 0xbe3be9b1 snd_sof_ipc_set_get_comp_data +EXPORT_SYMBOL sound/soc/sof/snd-sof 0xc501ac3b snd_sof_init_trace +EXPORT_SYMBOL sound/soc/sof/snd-sof 0xd20159db snd_sof_dsp_update_bits64 +EXPORT_SYMBOL sound/soc/sof/snd-sof 0xd927eca8 sof_ipc_tx_message_no_pm +EXPORT_SYMBOL sound/soc/sof/snd-sof 0xda753069 snd_sof_ipc_msgs_rx +EXPORT_SYMBOL sound/soc/sof/snd-sof 0xdb73aafd sof_mailbox_read +EXPORT_SYMBOL sound/soc/sof/snd-sof 0xdd7e0ca7 snd_sof_dsp_update_bits_forced +EXPORT_SYMBOL sound/soc/sof/snd-sof 0xe04db6df snd_sof_dsp_update_bits_unlocked +EXPORT_SYMBOL sound/soc/sof/snd-sof 0xe4da3f25 snd_sof_fw_unload +EXPORT_SYMBOL sound/soc/sof/snd-sof 0xe8e1bc7c snd_sof_runtime_suspend +EXPORT_SYMBOL sound/soc/sof/snd-sof 0xe915db13 snd_sof_runtime_idle +EXPORT_SYMBOL sound/soc/sof/snd-sof 0xeb0b9c0d snd_sof_free_trace +EXPORT_SYMBOL sound/soc/sof/snd-sof 0xf4d78a63 snd_sof_resume +EXPORT_SYMBOL sound/soc/sof/snd-sof 0xf888dc39 snd_sof_ipc_stream_posn +EXPORT_SYMBOL sound/soc/sof/snd-sof 0xfb0bbad6 snd_sof_ipc_valid +EXPORT_SYMBOL sound/soc/sof/snd-sof 0xfb6906fa snd_sof_handle_fw_exception +EXPORT_SYMBOL sound/soc/sof/snd-sof 0xfe211dbe sof_io_read64 +EXPORT_SYMBOL sound/usb/snd-usbmidi-lib 0x16756dc0 snd_usbmidi_input_start +EXPORT_SYMBOL sound/usb/snd-usbmidi-lib 0x63343b1d snd_usbmidi_input_stop +EXPORT_SYMBOL sound/usb/snd-usbmidi-lib 0x67e059aa __snd_usbmidi_create +EXPORT_SYMBOL sound/usb/snd-usbmidi-lib 0xb2af19e1 snd_usbmidi_resume +EXPORT_SYMBOL sound/usb/snd-usbmidi-lib 0xbed43a41 snd_usbmidi_suspend +EXPORT_SYMBOL sound/usb/snd-usbmidi-lib 0xd9d2bb03 snd_usbmidi_disconnect +EXPORT_SYMBOL vmlinux 0x001ee95a imx_ssi_fiq_base +EXPORT_SYMBOL vmlinux 0x0024d598 sock_gettstamp +EXPORT_SYMBOL vmlinux 0x00374085 unlock_page_memcg +EXPORT_SYMBOL vmlinux 0x004e2da5 rproc_elf_load_segments +EXPORT_SYMBOL vmlinux 0x005060cc param_ops_byte +EXPORT_SYMBOL vmlinux 0x005ad519 pin_user_pages_unlocked +EXPORT_SYMBOL vmlinux 0x006ce11f vme_lm_request +EXPORT_SYMBOL vmlinux 0x006e622d pci_resize_resource +EXPORT_SYMBOL vmlinux 0x0072c383 dump_truncate +EXPORT_SYMBOL vmlinux 0x007763ad free_cgroup_ns +EXPORT_SYMBOL vmlinux 0x00852eb4 pcie_capability_read_dword +EXPORT_SYMBOL vmlinux 0x008f07fe nla_append +EXPORT_SYMBOL vmlinux 0x00a9f03b cqhci_irq +EXPORT_SYMBOL vmlinux 0x00ab255e set_device_ro +EXPORT_SYMBOL vmlinux 0x00acb0f5 dst_cow_metrics_generic +EXPORT_SYMBOL vmlinux 0x00b3d0e8 backlight_device_register +EXPORT_SYMBOL vmlinux 0x00b4e615 posix_acl_equiv_mode +EXPORT_SYMBOL vmlinux 0x00b5432a device_add_disk +EXPORT_SYMBOL vmlinux 0x00c0ddcb xfrm_replay_seqhi +EXPORT_SYMBOL vmlinux 0x00d67b27 fwnode_graph_parse_endpoint +EXPORT_SYMBOL vmlinux 0x00d7e722 vme_lm_count +EXPORT_SYMBOL vmlinux 0x00dc0f19 csum_and_copy_from_iter +EXPORT_SYMBOL vmlinux 0x00fbe01f phy_init_hw +EXPORT_SYMBOL vmlinux 0x01000e51 schedule +EXPORT_SYMBOL vmlinux 0x010264bd mmc_gpio_get_ro +EXPORT_SYMBOL vmlinux 0x010aa257 iw_handler_get_spy +EXPORT_SYMBOL vmlinux 0x01139ffc max_mapnr +EXPORT_SYMBOL vmlinux 0x011a9e53 elf_hwcap2 +EXPORT_SYMBOL vmlinux 0x011ad160 devfreq_unregister_opp_notifier +EXPORT_SYMBOL vmlinux 0x011d870c pm860x_page_bulk_read +EXPORT_SYMBOL vmlinux 0x01212735 sget +EXPORT_SYMBOL vmlinux 0x0121369f audit_log_start +EXPORT_SYMBOL vmlinux 0x01230e4c truncate_inode_pages_final +EXPORT_SYMBOL vmlinux 0x0129c4f8 par_io_data_set +EXPORT_SYMBOL vmlinux 0x012ee7e0 lock_sock_nested +EXPORT_SYMBOL vmlinux 0x0145d60a pps_register_source +EXPORT_SYMBOL vmlinux 0x01505d85 imx_scu_call_rpc +EXPORT_SYMBOL vmlinux 0x01553371 vm_brk_flags +EXPORT_SYMBOL vmlinux 0x015af7f4 system_state +EXPORT_SYMBOL vmlinux 0x01757935 rdmacg_register_device +EXPORT_SYMBOL vmlinux 0x01769c8d begin_new_exec +EXPORT_SYMBOL vmlinux 0x017de3d5 nr_cpu_ids +EXPORT_SYMBOL vmlinux 0x01830813 kblockd_mod_delayed_work_on +EXPORT_SYMBOL vmlinux 0x018574a1 mb_cache_entry_delete +EXPORT_SYMBOL vmlinux 0x01984cc8 sg_alloc_table_from_pages +EXPORT_SYMBOL vmlinux 0x01a102a7 security_inode_init_security +EXPORT_SYMBOL vmlinux 0x01a3d310 omap_set_dma_channel_mode +EXPORT_SYMBOL vmlinux 0x01b1d6f7 pci_select_bars +EXPORT_SYMBOL vmlinux 0x01bd8e54 phy_stop +EXPORT_SYMBOL vmlinux 0x01e769d6 __next_node_in +EXPORT_SYMBOL vmlinux 0x01f410ba udp_prot +EXPORT_SYMBOL vmlinux 0x020856ec security_sock_rcv_skb +EXPORT_SYMBOL vmlinux 0x020dbf27 bitmap_alloc +EXPORT_SYMBOL vmlinux 0x02124474 ip_send_check +EXPORT_SYMBOL vmlinux 0x02196324 __aeabi_idiv +EXPORT_SYMBOL vmlinux 0x021de01b fb_validate_mode +EXPORT_SYMBOL vmlinux 0x02487bb0 vme_dma_list_free +EXPORT_SYMBOL vmlinux 0x02543a40 mark_buffer_dirty_inode +EXPORT_SYMBOL vmlinux 0x025483b1 set_current_groups +EXPORT_SYMBOL vmlinux 0x025b9b84 proc_remove +EXPORT_SYMBOL vmlinux 0x025de308 ethtool_rx_flow_rule_destroy +EXPORT_SYMBOL vmlinux 0x025e245a key_link +EXPORT_SYMBOL vmlinux 0x0273dadd of_graph_get_remote_port +EXPORT_SYMBOL vmlinux 0x0274dc2b netif_get_num_default_rss_queues +EXPORT_SYMBOL vmlinux 0x02800c37 tty_write_room +EXPORT_SYMBOL vmlinux 0x0283dfe3 _snd_pcm_hw_params_any +EXPORT_SYMBOL vmlinux 0x0290cdce of_parse_phandle +EXPORT_SYMBOL vmlinux 0x0296695f refcount_warn_saturate +EXPORT_SYMBOL vmlinux 0x02a18c74 nf_conntrack_destroy +EXPORT_SYMBOL vmlinux 0x02c065f8 ucc_set_qe_mux_mii_mng +EXPORT_SYMBOL vmlinux 0x02c8fda8 __xfrm_dst_lookup +EXPORT_SYMBOL vmlinux 0x02cc5f60 tcp_v4_connect +EXPORT_SYMBOL vmlinux 0x02cd9e8c __snd_pcm_lib_xfer +EXPORT_SYMBOL vmlinux 0x02df50b0 jiffies +EXPORT_SYMBOL vmlinux 0x02e80c3e dquot_get_dqblk +EXPORT_SYMBOL vmlinux 0x02ea111e scsi_driverbyte_string +EXPORT_SYMBOL vmlinux 0x02ee26c1 free_pages_exact +EXPORT_SYMBOL vmlinux 0x02f0a9ba kernel_getpeername +EXPORT_SYMBOL vmlinux 0x02f2f893 vme_register_bridge +EXPORT_SYMBOL vmlinux 0x02f5eee7 vlan_filter_drop_vids +EXPORT_SYMBOL vmlinux 0x02f67ae0 mmc_start_request +EXPORT_SYMBOL vmlinux 0x02f87771 sock_diag_put_filterinfo +EXPORT_SYMBOL vmlinux 0x02f9da02 phy_ethtool_get_link_ksettings +EXPORT_SYMBOL vmlinux 0x02fcefff simple_write_begin +EXPORT_SYMBOL vmlinux 0x0309817c ndo_dflt_fdb_del +EXPORT_SYMBOL vmlinux 0x030f73cd jbd2_journal_get_create_access +EXPORT_SYMBOL vmlinux 0x0324ff56 amba_driver_unregister +EXPORT_SYMBOL vmlinux 0x0334795d icst307_s2div +EXPORT_SYMBOL vmlinux 0x0334da4e scsi_command_size_tbl +EXPORT_SYMBOL vmlinux 0x0340a8b8 qdisc_class_hash_grow +EXPORT_SYMBOL vmlinux 0x03605d9d mmc_wait_for_req_done +EXPORT_SYMBOL vmlinux 0x03628315 dev_uc_unsync +EXPORT_SYMBOL vmlinux 0x03642a91 tcf_generic_walker +EXPORT_SYMBOL vmlinux 0x03644635 dev_change_proto_down +EXPORT_SYMBOL vmlinux 0x0366307a console_suspend_enabled +EXPORT_SYMBOL vmlinux 0x037a0cba kfree +EXPORT_SYMBOL vmlinux 0x0380fbd7 padata_free_shell +EXPORT_SYMBOL vmlinux 0x03815f35 ledtrig_disk_activity +EXPORT_SYMBOL vmlinux 0x03818e32 __dev_remove_pack +EXPORT_SYMBOL vmlinux 0x0397edd5 fb_edid_to_monspecs +EXPORT_SYMBOL vmlinux 0x03ad485e inet6_release +EXPORT_SYMBOL vmlinux 0x03ba39b0 v7_flush_user_cache_all +EXPORT_SYMBOL vmlinux 0x03c0b6e1 _dev_warn +EXPORT_SYMBOL vmlinux 0x03e2104e scsi_cmd_blk_ioctl +EXPORT_SYMBOL vmlinux 0x03fba701 wait_for_completion_killable_timeout +EXPORT_SYMBOL vmlinux 0x03fd2571 vm_unmap_ram +EXPORT_SYMBOL vmlinux 0x041e3c18 scsi_host_put +EXPORT_SYMBOL vmlinux 0x042685d7 sg_nents_for_len +EXPORT_SYMBOL vmlinux 0x04426f14 mem_section +EXPORT_SYMBOL vmlinux 0x04482cdb __refrigerator +EXPORT_SYMBOL vmlinux 0x044fb722 dev_base_lock +EXPORT_SYMBOL vmlinux 0x04502555 xfrm_policy_hash_rebuild +EXPORT_SYMBOL vmlinux 0x0455d677 devfreq_register_notifier +EXPORT_SYMBOL vmlinux 0x045c0f23 dma_fence_array_create +EXPORT_SYMBOL vmlinux 0x0468f2ae vlan_vids_add_by_dev +EXPORT_SYMBOL vmlinux 0x046a6374 security_sctp_sk_clone +EXPORT_SYMBOL vmlinux 0x047b4904 __inet_hash +EXPORT_SYMBOL vmlinux 0x0499c64c dev_addr_del +EXPORT_SYMBOL vmlinux 0x04a5bace snd_pcm_set_managed_buffer +EXPORT_SYMBOL vmlinux 0x04ae0988 sg_zero_buffer +EXPORT_SYMBOL vmlinux 0x04b0d474 blk_queue_max_segments +EXPORT_SYMBOL vmlinux 0x04be7905 blk_rq_map_kern +EXPORT_SYMBOL vmlinux 0x04c4b8df kmem_cache_destroy +EXPORT_SYMBOL vmlinux 0x04c6b4c3 __crypto_memneq +EXPORT_SYMBOL vmlinux 0x04ca1027 blkdev_issue_discard +EXPORT_SYMBOL vmlinux 0x04cda566 snd_interval_refine +EXPORT_SYMBOL vmlinux 0x04d09ab9 sock_alloc_file +EXPORT_SYMBOL vmlinux 0x04da236a __register_nls +EXPORT_SYMBOL vmlinux 0x04ea56f9 _kstrtol +EXPORT_SYMBOL vmlinux 0x04f6fd21 flow_rule_match_basic +EXPORT_SYMBOL vmlinux 0x0508088e ucs2_strnlen +EXPORT_SYMBOL vmlinux 0x050877b9 dmi_first_match +EXPORT_SYMBOL vmlinux 0x051cbddc unregister_shrinker +EXPORT_SYMBOL vmlinux 0x05240ee7 percpu_counter_batch +EXPORT_SYMBOL vmlinux 0x05313097 ethtool_virtdev_set_link_ksettings +EXPORT_SYMBOL vmlinux 0x054496b4 schedule_timeout_interruptible +EXPORT_SYMBOL vmlinux 0x054a6748 security_skb_classify_flow +EXPORT_SYMBOL vmlinux 0x054bec49 mmc_detect_change +EXPORT_SYMBOL vmlinux 0x054d272d pcie_print_link_status +EXPORT_SYMBOL vmlinux 0x05521a1b __nla_reserve_64bit +EXPORT_SYMBOL vmlinux 0x056419b2 follow_down_one +EXPORT_SYMBOL vmlinux 0x058824d0 pci_scan_root_bus_bridge +EXPORT_SYMBOL vmlinux 0x0588c3e6 of_n_addr_cells +EXPORT_SYMBOL vmlinux 0x05b0caa0 hdmi_vendor_infoframe_pack +EXPORT_SYMBOL vmlinux 0x05ca18a2 _raw_write_lock_irqsave +EXPORT_SYMBOL vmlinux 0x05e13eb9 ZSTD_initDDict +EXPORT_SYMBOL vmlinux 0x05e18a1b pci_find_next_bus +EXPORT_SYMBOL vmlinux 0x060845f5 devm_nvmem_cell_put +EXPORT_SYMBOL vmlinux 0x061651be strcat +EXPORT_SYMBOL vmlinux 0x0620ecfd skb_copy_datagram_from_iter +EXPORT_SYMBOL vmlinux 0x06268fb3 dquot_quota_off +EXPORT_SYMBOL vmlinux 0x062795d4 tcp_filter +EXPORT_SYMBOL vmlinux 0x062d90f3 lru_cache_add +EXPORT_SYMBOL vmlinux 0x06319406 keyring_alloc +EXPORT_SYMBOL vmlinux 0x0634100a bitmap_parselist_user +EXPORT_SYMBOL vmlinux 0x06350c70 set_security_override_from_ctx +EXPORT_SYMBOL vmlinux 0x065246b8 frame_vector_create +EXPORT_SYMBOL vmlinux 0x065cea24 input_alloc_absinfo +EXPORT_SYMBOL vmlinux 0x06675211 call_fib_notifiers +EXPORT_SYMBOL vmlinux 0x066a0258 tcf_classify +EXPORT_SYMBOL vmlinux 0x0670da3c nvmem_get_mac_address +EXPORT_SYMBOL vmlinux 0x06724b38 ZSTD_getFrameParams +EXPORT_SYMBOL vmlinux 0x067ea780 mutex_unlock +EXPORT_SYMBOL vmlinux 0x069199be read_cache_page +EXPORT_SYMBOL vmlinux 0x069a184d drop_super_exclusive +EXPORT_SYMBOL vmlinux 0x069c02a5 vfs_parse_fs_param +EXPORT_SYMBOL vmlinux 0x069c6a35 security_sctp_assoc_request +EXPORT_SYMBOL vmlinux 0x06a3ab7a blk_execute_rq +EXPORT_SYMBOL vmlinux 0x06b4cbc8 udp_push_pending_frames +EXPORT_SYMBOL vmlinux 0x06bdc640 jbd2_journal_load +EXPORT_SYMBOL vmlinux 0x06c42896 reuseport_detach_prog +EXPORT_SYMBOL vmlinux 0x06c8f2de slhc_compress +EXPORT_SYMBOL vmlinux 0x06f7924e param_get_uint +EXPORT_SYMBOL vmlinux 0x06fa326e vlan_dev_vlan_proto +EXPORT_SYMBOL vmlinux 0x07106083 phy_read_paged +EXPORT_SYMBOL vmlinux 0x072a8f8d __set_fiq_regs +EXPORT_SYMBOL vmlinux 0x072f901c vme_master_rmw +EXPORT_SYMBOL vmlinux 0x073cad1d md_write_start +EXPORT_SYMBOL vmlinux 0x075a2c33 ZSTD_decompressBegin_usingDict +EXPORT_SYMBOL vmlinux 0x075aafa9 input_reset_device +EXPORT_SYMBOL vmlinux 0x077079f9 snd_dma_alloc_pages +EXPORT_SYMBOL vmlinux 0x077169cc __alloc_pages_nodemask +EXPORT_SYMBOL vmlinux 0x07765ca4 remove_watch_from_object +EXPORT_SYMBOL vmlinux 0x07765e49 inet_ioctl +EXPORT_SYMBOL vmlinux 0x077af67c init_opal_dev +EXPORT_SYMBOL vmlinux 0x077ff773 watchdog_unregister_governor +EXPORT_SYMBOL vmlinux 0x0783ea95 neigh_app_ns +EXPORT_SYMBOL vmlinux 0x07861580 of_find_compatible_node +EXPORT_SYMBOL vmlinux 0x0790a2c6 __ip_options_compile +EXPORT_SYMBOL vmlinux 0x0797b613 dquot_alloc_inode +EXPORT_SYMBOL vmlinux 0x07a619b1 ip_sock_set_pktinfo +EXPORT_SYMBOL vmlinux 0x07a890c8 fb_alloc_cmap +EXPORT_SYMBOL vmlinux 0x07ad5684 prepare_creds +EXPORT_SYMBOL vmlinux 0x07cc4a5d printk_timed_ratelimit +EXPORT_SYMBOL vmlinux 0x07cd58fe sock_no_socketpair +EXPORT_SYMBOL vmlinux 0x07cf6ec4 locks_init_lock +EXPORT_SYMBOL vmlinux 0x07d51766 block_commit_write +EXPORT_SYMBOL vmlinux 0x07d8e5ed vm_insert_page +EXPORT_SYMBOL vmlinux 0x07da2e08 sock_alloc_send_pskb +EXPORT_SYMBOL vmlinux 0x07e2c085 radix_tree_tagged +EXPORT_SYMBOL vmlinux 0x07e63d01 param_set_ushort +EXPORT_SYMBOL vmlinux 0x07fc5160 mdio_device_register +EXPORT_SYMBOL vmlinux 0x0805f2c8 ecryptfs_get_auth_tok_key +EXPORT_SYMBOL vmlinux 0x08249512 iwe_stream_add_point +EXPORT_SYMBOL vmlinux 0x082c3213 pci_root_buses +EXPORT_SYMBOL vmlinux 0x082d2596 __inc_node_page_state +EXPORT_SYMBOL vmlinux 0x0833ccd6 pcibios_bus_to_resource +EXPORT_SYMBOL vmlinux 0x083eb21c rfkill_unregister +EXPORT_SYMBOL vmlinux 0x084c1a1a do_map_probe +EXPORT_SYMBOL vmlinux 0x085ce6a6 console_stop +EXPORT_SYMBOL vmlinux 0x086253a7 ioremap_cache +EXPORT_SYMBOL vmlinux 0x08690bbf __tracepoint_kmem_cache_alloc_node +EXPORT_SYMBOL vmlinux 0x0871434b __check_sticky +EXPORT_SYMBOL vmlinux 0x08799420 input_grab_device +EXPORT_SYMBOL vmlinux 0x0882a449 security_xfrm_policy_alloc +EXPORT_SYMBOL vmlinux 0x08a25231 proc_create_seq_private +EXPORT_SYMBOL vmlinux 0x08a71e0c pcie_capability_write_word +EXPORT_SYMBOL vmlinux 0x08b69ed1 dev_change_flags +EXPORT_SYMBOL vmlinux 0x08c4fd32 omap_disable_dma_irq +EXPORT_SYMBOL vmlinux 0x08ceefe9 register_console +EXPORT_SYMBOL vmlinux 0x08d7d496 make_kprojid +EXPORT_SYMBOL vmlinux 0x08da0ce7 xfrm4_protocol_register +EXPORT_SYMBOL vmlinux 0x08dc5d71 fscrypt_free_bounce_page +EXPORT_SYMBOL vmlinux 0x08ddea3c mipi_dsi_dcs_get_power_mode +EXPORT_SYMBOL vmlinux 0x08e1b0ca blk_queue_physical_block_size +EXPORT_SYMBOL vmlinux 0x08e39398 cmd_db_read_addr +EXPORT_SYMBOL vmlinux 0x08e74044 mtd_concat_create +EXPORT_SYMBOL vmlinux 0x08f47d79 __inode_sub_bytes +EXPORT_SYMBOL vmlinux 0x08f640e2 send_sig +EXPORT_SYMBOL vmlinux 0x08ffbadf tegra_ivc_write_advance +EXPORT_SYMBOL vmlinux 0x09092e2e netlink_broadcast +EXPORT_SYMBOL vmlinux 0x091c01e1 simple_rmdir +EXPORT_SYMBOL vmlinux 0x091d9865 pagecache_get_page +EXPORT_SYMBOL vmlinux 0x09242afd pagevec_lookup_range +EXPORT_SYMBOL vmlinux 0x0926027d tcf_classify_ingress +EXPORT_SYMBOL vmlinux 0x092d665e commit_creds +EXPORT_SYMBOL vmlinux 0x09473422 kernel_listen +EXPORT_SYMBOL vmlinux 0x094bafac tc_setup_cb_add +EXPORT_SYMBOL vmlinux 0x09561d1c of_root +EXPORT_SYMBOL vmlinux 0x0969f1ad phy_sfp_probe +EXPORT_SYMBOL vmlinux 0x09769037 dmt_modes +EXPORT_SYMBOL vmlinux 0x097bb54c pci_pme_capable +EXPORT_SYMBOL vmlinux 0x098b71c6 fb_dealloc_cmap +EXPORT_SYMBOL vmlinux 0x09a170cd flow_block_cb_priv +EXPORT_SYMBOL vmlinux 0x09a5ad5d drop_super +EXPORT_SYMBOL vmlinux 0x09bed655 pci_wait_for_pending_transaction +EXPORT_SYMBOL vmlinux 0x09c62ed6 phy_detach +EXPORT_SYMBOL vmlinux 0x09c8eb55 font_vga_8x16 +EXPORT_SYMBOL vmlinux 0x09cf719a unregister_nexthop_notifier +EXPORT_SYMBOL vmlinux 0x09d44df9 in_lock_functions +EXPORT_SYMBOL vmlinux 0x09e830b3 devm_devfreq_remove_device +EXPORT_SYMBOL vmlinux 0x09f84237 tty_unregister_device +EXPORT_SYMBOL vmlinux 0x0a06f6a7 ns_capable_noaudit +EXPORT_SYMBOL vmlinux 0x0a0da906 snd_info_free_entry +EXPORT_SYMBOL vmlinux 0x0a20d621 ZSTD_decompressBegin +EXPORT_SYMBOL vmlinux 0x0a292872 reservation_seqcount_class +EXPORT_SYMBOL vmlinux 0x0a3131f6 strnchr +EXPORT_SYMBOL vmlinux 0x0a48dc2c nlmsg_notify +EXPORT_SYMBOL vmlinux 0x0a5cf09d of_device_unregister +EXPORT_SYMBOL vmlinux 0x0a9338c7 bio_put +EXPORT_SYMBOL vmlinux 0x0aa09d79 omap_vrfb_map_angle +EXPORT_SYMBOL vmlinux 0x0aa309cf synchronize_hardirq +EXPORT_SYMBOL vmlinux 0x0aac0487 _snd_ctl_add_slave +EXPORT_SYMBOL vmlinux 0x0acf7679 dma_issue_pending_all +EXPORT_SYMBOL vmlinux 0x0ae11a9b serio_unregister_port +EXPORT_SYMBOL vmlinux 0x0ae547ed xxh64_update +EXPORT_SYMBOL vmlinux 0x0b11913c jbd2_journal_inode_ranged_wait +EXPORT_SYMBOL vmlinux 0x0b1b939e kmemdup +EXPORT_SYMBOL vmlinux 0x0b1beb31 vmalloc_32_user +EXPORT_SYMBOL vmlinux 0x0b2473d1 seq_write +EXPORT_SYMBOL vmlinux 0x0b2cb334 psched_ratecfg_precompute +EXPORT_SYMBOL vmlinux 0x0b30fa69 blk_mq_init_allocated_queue +EXPORT_SYMBOL vmlinux 0x0b32a490 serio_unregister_child_port +EXPORT_SYMBOL vmlinux 0x0b3c95ea security_inode_listsecurity +EXPORT_SYMBOL vmlinux 0x0b40d7cf _raw_read_unlock_irqrestore +EXPORT_SYMBOL vmlinux 0x0b423410 ww_mutex_lock +EXPORT_SYMBOL vmlinux 0x0b48677a __kfifo_init +EXPORT_SYMBOL vmlinux 0x0b617520 dma_fence_default_wait +EXPORT_SYMBOL vmlinux 0x0b709411 omap_vrfb_release_ctx +EXPORT_SYMBOL vmlinux 0x0b742fd7 simple_strtol +EXPORT_SYMBOL vmlinux 0x0b8f60f3 blk_mq_kick_requeue_list +EXPORT_SYMBOL vmlinux 0x0b9d0f67 request_firmware_nowait +EXPORT_SYMBOL vmlinux 0x0baf8a14 rproc_report_crash +EXPORT_SYMBOL vmlinux 0x0bc477a2 irq_set_irq_type +EXPORT_SYMBOL vmlinux 0x0be1b441 dquot_transfer +EXPORT_SYMBOL vmlinux 0x0be2dc75 udp_seq_stop +EXPORT_SYMBOL vmlinux 0x0bf99d7f dev_printk_emit +EXPORT_SYMBOL vmlinux 0x0c148aec snd_ctl_find_numid +EXPORT_SYMBOL vmlinux 0x0c24ef21 tcf_block_netif_keep_dst +EXPORT_SYMBOL vmlinux 0x0c25ec48 secure_tcpv6_seq +EXPORT_SYMBOL vmlinux 0x0c408a5f nf_register_net_hook +EXPORT_SYMBOL vmlinux 0x0c521c32 netdev_next_lower_dev_rcu +EXPORT_SYMBOL vmlinux 0x0c697ec8 neigh_changeaddr +EXPORT_SYMBOL vmlinux 0x0c6e5ede pci_get_class +EXPORT_SYMBOL vmlinux 0x0c8080d4 udp6_csum_init +EXPORT_SYMBOL vmlinux 0x0c9452f9 tty_port_tty_set +EXPORT_SYMBOL vmlinux 0x0ca028a7 snd_timer_start +EXPORT_SYMBOL vmlinux 0x0ca2c2c7 param_get_charp +EXPORT_SYMBOL vmlinux 0x0ca54fee _test_and_set_bit +EXPORT_SYMBOL vmlinux 0x0cb264a1 security_lock_kernel_down +EXPORT_SYMBOL vmlinux 0x0cb5eae1 vme_free_consistent +EXPORT_SYMBOL vmlinux 0x0cda6950 dma_resv_fini +EXPORT_SYMBOL vmlinux 0x0ce19729 mb_cache_entry_touch +EXPORT_SYMBOL vmlinux 0x0d062895 __lock_buffer +EXPORT_SYMBOL vmlinux 0x0d07f543 get_anon_bdev +EXPORT_SYMBOL vmlinux 0x0d2ca20f ucc_fast_get_qe_cr_subblock +EXPORT_SYMBOL vmlinux 0x0d2dbfea phy_advertise_supported +EXPORT_SYMBOL vmlinux 0x0d32a3a1 nf_log_unset +EXPORT_SYMBOL vmlinux 0x0d3f57a2 _find_next_bit_le +EXPORT_SYMBOL vmlinux 0x0d3f7426 neigh_xmit +EXPORT_SYMBOL vmlinux 0x0d404dda serial8250_set_isa_configurator +EXPORT_SYMBOL vmlinux 0x0d47efd3 rproc_get_by_child +EXPORT_SYMBOL vmlinux 0x0d542439 __ipv6_addr_type +EXPORT_SYMBOL vmlinux 0x0d61eeee __bitmap_subset +EXPORT_SYMBOL vmlinux 0x0d68cc19 mark_page_accessed +EXPORT_SYMBOL vmlinux 0x0da2b786 tty_set_operations +EXPORT_SYMBOL vmlinux 0x0da66bc4 cqhci_pltfm_init +EXPORT_SYMBOL vmlinux 0x0daadc94 ip_sock_set_recverr +EXPORT_SYMBOL vmlinux 0x0db6f3cc skb_checksum_trimmed +EXPORT_SYMBOL vmlinux 0x0dba5e9a radix_tree_delete +EXPORT_SYMBOL vmlinux 0x0dbbf07d fddi_type_trans +EXPORT_SYMBOL vmlinux 0x0dc1a78c bin2hex +EXPORT_SYMBOL vmlinux 0x0df10812 mmc_of_parse +EXPORT_SYMBOL vmlinux 0x0e163ca4 inet_proto_csum_replace4 +EXPORT_SYMBOL vmlinux 0x0e17678a siphash_4u64 +EXPORT_SYMBOL vmlinux 0x0e1c8804 dma_fence_chain_find_seqno +EXPORT_SYMBOL vmlinux 0x0e2a3ccd cros_ec_query_all +EXPORT_SYMBOL vmlinux 0x0e3cab45 scsi_is_host_device +EXPORT_SYMBOL vmlinux 0x0e3d5ac3 vfs_llseek +EXPORT_SYMBOL vmlinux 0x0e4a65bb mpage_writepage +EXPORT_SYMBOL vmlinux 0x0e804a8e mr_table_alloc +EXPORT_SYMBOL vmlinux 0x0e9aaefb inet_reqsk_alloc +EXPORT_SYMBOL vmlinux 0x0e9aeede __inode_add_bytes +EXPORT_SYMBOL vmlinux 0x0ec5babe vme_dma_free +EXPORT_SYMBOL vmlinux 0x0ecdf09a vfs_readlink +EXPORT_SYMBOL vmlinux 0x0ed20a20 d_instantiate_anon +EXPORT_SYMBOL vmlinux 0x0ee5b8a2 __neigh_event_send +EXPORT_SYMBOL vmlinux 0x0eea0399 strscpy +EXPORT_SYMBOL vmlinux 0x0f06957f allocate_resource +EXPORT_SYMBOL vmlinux 0x0f09cc34 schedule_timeout_killable +EXPORT_SYMBOL vmlinux 0x0f120c8e i2c_del_driver +EXPORT_SYMBOL vmlinux 0x0f1c41c3 mmc_get_card +EXPORT_SYMBOL vmlinux 0x0f319b5d find_inode_nowait +EXPORT_SYMBOL vmlinux 0x0f3af69a neigh_update +EXPORT_SYMBOL vmlinux 0x0f3e649e mmc_can_gpio_ro +EXPORT_SYMBOL vmlinux 0x0f5b8a14 nf_setsockopt +EXPORT_SYMBOL vmlinux 0x0f62fcc4 genphy_read_status +EXPORT_SYMBOL vmlinux 0x0f68d4a9 tty_unthrottle +EXPORT_SYMBOL vmlinux 0x0f86f560 kthread_delayed_work_timer_fn +EXPORT_SYMBOL vmlinux 0x0f878a46 qdisc_warn_nonwc +EXPORT_SYMBOL vmlinux 0x0faef0ed __tasklet_schedule +EXPORT_SYMBOL vmlinux 0x0fb2f8a4 mktime64 +EXPORT_SYMBOL vmlinux 0x0fb73650 tcp_close +EXPORT_SYMBOL vmlinux 0x0fb92fd0 vfs_get_link +EXPORT_SYMBOL vmlinux 0x0fbc9ac5 pci_clear_master +EXPORT_SYMBOL vmlinux 0x0fd076b6 mmc_wait_for_req +EXPORT_SYMBOL vmlinux 0x0fd902db mb_cache_entry_create +EXPORT_SYMBOL vmlinux 0x0ff178f6 __aeabi_idivmod +EXPORT_SYMBOL vmlinux 0x0fff5afc time64_to_tm +EXPORT_SYMBOL vmlinux 0x10018cb0 __pv_offset +EXPORT_SYMBOL vmlinux 0x10086004 pcim_enable_device +EXPORT_SYMBOL vmlinux 0x101ee6f9 ip_mc_leave_group +EXPORT_SYMBOL vmlinux 0x1025009a cpm_muram_alloc_fixed +EXPORT_SYMBOL vmlinux 0x102936ec qe_clock_source +EXPORT_SYMBOL vmlinux 0x104725c4 snd_ctl_rename_id +EXPORT_SYMBOL vmlinux 0x10479f47 jbd2_journal_start_commit +EXPORT_SYMBOL vmlinux 0x1052df6c padata_set_cpumask +EXPORT_SYMBOL vmlinux 0x105f047b snd_device_new +EXPORT_SYMBOL vmlinux 0x1068004b gf128mul_bbe +EXPORT_SYMBOL vmlinux 0x106f13ab crc_t10dif_generic +EXPORT_SYMBOL vmlinux 0x1072a394 csum_partial_copy_from_user +EXPORT_SYMBOL vmlinux 0x10739f1e swake_up_locked +EXPORT_SYMBOL vmlinux 0x1076ef06 inet_twsk_deschedule_put +EXPORT_SYMBOL vmlinux 0x107d4856 vme_master_request +EXPORT_SYMBOL vmlinux 0x107e5878 zlib_inflateEnd +EXPORT_SYMBOL vmlinux 0x1080613a mipi_dsi_dcs_set_display_on +EXPORT_SYMBOL vmlinux 0x10810807 snd_pcm_hw_constraint_step +EXPORT_SYMBOL vmlinux 0x1082bcb8 of_match_device +EXPORT_SYMBOL vmlinux 0x1085d5ee down_read_killable +EXPORT_SYMBOL vmlinux 0x108bd1fd xfrm_unregister_type_offload +EXPORT_SYMBOL vmlinux 0x10973ea9 cpu_user +EXPORT_SYMBOL vmlinux 0x1097c200 insert_inode_locked +EXPORT_SYMBOL vmlinux 0x10a851d9 rtnl_create_link +EXPORT_SYMBOL vmlinux 0x10b866ca tty_driver_kref_put +EXPORT_SYMBOL vmlinux 0x10bf5255 bio_integrity_trim +EXPORT_SYMBOL vmlinux 0x10c3f57e __gnet_stats_copy_queue +EXPORT_SYMBOL vmlinux 0x10c65bf4 snd_info_create_module_entry +EXPORT_SYMBOL vmlinux 0x10d9f885 scsi_sense_desc_find +EXPORT_SYMBOL vmlinux 0x10ec5e8a of_iomap +EXPORT_SYMBOL vmlinux 0x10f8772b __tracepoint_module_get +EXPORT_SYMBOL vmlinux 0x11089ac7 _ctype +EXPORT_SYMBOL vmlinux 0x112b84d5 sk_stream_kill_queues +EXPORT_SYMBOL vmlinux 0x1133cd7c blk_queue_max_discard_sectors +EXPORT_SYMBOL vmlinux 0x1145f276 tty_throttle +EXPORT_SYMBOL vmlinux 0x114844c9 tegra_dfll_runtime_suspend +EXPORT_SYMBOL vmlinux 0x11560d1b ptp_find_pin_unlocked +EXPORT_SYMBOL vmlinux 0x115c84b1 param_set_ullong +EXPORT_SYMBOL vmlinux 0x115cb9e0 d_rehash +EXPORT_SYMBOL vmlinux 0x11631994 ps2_sliced_command +EXPORT_SYMBOL vmlinux 0x1163f0a7 blk_max_low_pfn +EXPORT_SYMBOL vmlinux 0x11682657 __vfs_getxattr +EXPORT_SYMBOL vmlinux 0x117093be qdisc_class_hash_init +EXPORT_SYMBOL vmlinux 0x119b50e7 elf_check_arch +EXPORT_SYMBOL vmlinux 0x11a9d30f __alloc_skb +EXPORT_SYMBOL vmlinux 0x11b62670 snd_pcm_create_iec958_consumer +EXPORT_SYMBOL vmlinux 0x11e0ec41 dm_read_arg +EXPORT_SYMBOL vmlinux 0x11e30762 chacha_block_generic +EXPORT_SYMBOL vmlinux 0x11f47d8c utf8_strncmp +EXPORT_SYMBOL vmlinux 0x11f49502 __dev_get_by_flags +EXPORT_SYMBOL vmlinux 0x11f7ed4c hex_to_bin +EXPORT_SYMBOL vmlinux 0x120b336a __rb_insert_augmented +EXPORT_SYMBOL vmlinux 0x121f156b snd_timer_resolution +EXPORT_SYMBOL vmlinux 0x122132e5 param_ops_bint +EXPORT_SYMBOL vmlinux 0x1221cced security_socket_socketpair +EXPORT_SYMBOL vmlinux 0x1233385e __cleancache_put_page +EXPORT_SYMBOL vmlinux 0x12354755 mount_single +EXPORT_SYMBOL vmlinux 0x123b1d4b mntget +EXPORT_SYMBOL vmlinux 0x1251e43f phy_attach +EXPORT_SYMBOL vmlinux 0x1271bbc0 __do_once_done +EXPORT_SYMBOL vmlinux 0x1274437f pcie_set_mps +EXPORT_SYMBOL vmlinux 0x12a38747 usleep_range +EXPORT_SYMBOL vmlinux 0x12c03e07 snd_timer_global_free +EXPORT_SYMBOL vmlinux 0x12cabc89 siphash_2u64 +EXPORT_SYMBOL vmlinux 0x12d44735 skb_copy +EXPORT_SYMBOL vmlinux 0x12e2848b backlight_device_get_by_name +EXPORT_SYMBOL vmlinux 0x12f19edf __genradix_ptr_alloc +EXPORT_SYMBOL vmlinux 0x12f6f69c fb_videomode_to_var +EXPORT_SYMBOL vmlinux 0x13126a27 snd_ctl_remove_id +EXPORT_SYMBOL vmlinux 0x131e3196 generic_file_write_iter +EXPORT_SYMBOL vmlinux 0x13243d4b wl1251_get_platform_data +EXPORT_SYMBOL vmlinux 0x133924f9 inet_frag_destroy +EXPORT_SYMBOL vmlinux 0x134cdd34 inet_frag_rbtree_purge +EXPORT_SYMBOL vmlinux 0x13531fc8 security_sk_classify_flow +EXPORT_SYMBOL vmlinux 0x137c4236 bio_free_pages +EXPORT_SYMBOL vmlinux 0x137f3c6a __cpuhp_remove_state_cpuslocked +EXPORT_SYMBOL vmlinux 0x138f50de netdev_name_node_alt_destroy +EXPORT_SYMBOL vmlinux 0x1399a1c6 of_get_cpu_node +EXPORT_SYMBOL vmlinux 0x13b192b1 sock_dequeue_err_skb +EXPORT_SYMBOL vmlinux 0x13b55f55 snd_info_create_card_entry +EXPORT_SYMBOL vmlinux 0x13d0adf7 __kfifo_out +EXPORT_SYMBOL vmlinux 0x13d1e8e2 blk_queue_split +EXPORT_SYMBOL vmlinux 0x13d24f16 ZSTD_compressBegin_advanced +EXPORT_SYMBOL vmlinux 0x13d92490 dma_pool_create +EXPORT_SYMBOL vmlinux 0x13f0fe7a xfrm_register_km +EXPORT_SYMBOL vmlinux 0x13f42152 system_entering_hibernation +EXPORT_SYMBOL vmlinux 0x14069f20 ip6_route_me_harder +EXPORT_SYMBOL vmlinux 0x140cef8e cmxgcr_lock +EXPORT_SYMBOL vmlinux 0x141762e4 xfrm_policy_unregister_afinfo +EXPORT_SYMBOL vmlinux 0x1418cb34 blk_queue_flag_clear +EXPORT_SYMBOL vmlinux 0x14605535 dma_fence_context_alloc +EXPORT_SYMBOL vmlinux 0x146289b7 crc16_table +EXPORT_SYMBOL vmlinux 0x147d4a1e blkdev_put +EXPORT_SYMBOL vmlinux 0x148a4897 fb_set_cmap +EXPORT_SYMBOL vmlinux 0x148dcee2 abx500_get_register_interruptible +EXPORT_SYMBOL vmlinux 0x1491c2ae xfrm_state_walk_done +EXPORT_SYMBOL vmlinux 0x149f007c of_get_ddr_timings +EXPORT_SYMBOL vmlinux 0x14ad2b22 __mdiobus_write +EXPORT_SYMBOL vmlinux 0x14bfea43 __tcp_md5_do_lookup +EXPORT_SYMBOL vmlinux 0x14c01d53 jbd2_journal_abort +EXPORT_SYMBOL vmlinux 0x14c733bb dcache_dir_lseek +EXPORT_SYMBOL vmlinux 0x14cfe110 skb_orphan_partial +EXPORT_SYMBOL vmlinux 0x14d4a9c5 _change_bit +EXPORT_SYMBOL vmlinux 0x14eb5562 tcp_check_req +EXPORT_SYMBOL vmlinux 0x14f6bcb9 ipv6_getsockopt +EXPORT_SYMBOL vmlinux 0x14fb2365 cmdline_parts_set +EXPORT_SYMBOL vmlinux 0x1516f817 tty_insert_flip_string_flags +EXPORT_SYMBOL vmlinux 0x151a373b skb_copy_and_csum_datagram_msg +EXPORT_SYMBOL vmlinux 0x151a833a textsearch_prepare +EXPORT_SYMBOL vmlinux 0x151f4898 schedule_timeout_uninterruptible +EXPORT_SYMBOL vmlinux 0x1526b301 unix_tot_inflight +EXPORT_SYMBOL vmlinux 0x15387fce blk_queue_max_write_same_sectors +EXPORT_SYMBOL vmlinux 0x154c6338 dm_kcopyd_client_destroy +EXPORT_SYMBOL vmlinux 0x155f16c7 ww_mutex_unlock +EXPORT_SYMBOL vmlinux 0x15aca904 keyring_clear +EXPORT_SYMBOL vmlinux 0x15ace99a twl6040_get_sysclk +EXPORT_SYMBOL vmlinux 0x15b1da66 inet_recvmsg +EXPORT_SYMBOL vmlinux 0x15bafe29 unregister_md_cluster_operations +EXPORT_SYMBOL vmlinux 0x15bed7a5 LZ4_decompress_safe_partial +EXPORT_SYMBOL vmlinux 0x15d433c0 ZSTD_decompressStream +EXPORT_SYMBOL vmlinux 0x15dfdfb6 cdc_parse_cdc_header +EXPORT_SYMBOL vmlinux 0x15f0cd21 pci_try_set_mwi +EXPORT_SYMBOL vmlinux 0x16028985 cdrom_media_changed +EXPORT_SYMBOL vmlinux 0x16092bef sock_no_accept +EXPORT_SYMBOL vmlinux 0x1622aea4 page_cache_prev_miss +EXPORT_SYMBOL vmlinux 0x162893fd hashlen_string +EXPORT_SYMBOL vmlinux 0x1638a4a0 nf_unregister_net_hook +EXPORT_SYMBOL vmlinux 0x163a78b3 __tty_alloc_driver +EXPORT_SYMBOL vmlinux 0x163d2417 tegra_io_rail_power_off +EXPORT_SYMBOL vmlinux 0x164bd54f max8998_read_reg +EXPORT_SYMBOL vmlinux 0x164ccb70 poll_initwait +EXPORT_SYMBOL vmlinux 0x16525cc4 xa_find +EXPORT_SYMBOL vmlinux 0x16580854 phy_write_mmd +EXPORT_SYMBOL vmlinux 0x166810cb module_put +EXPORT_SYMBOL vmlinux 0x16a81aa9 tc_setup_cb_destroy +EXPORT_SYMBOL vmlinux 0x16b44d4e generic_file_readonly_mmap +EXPORT_SYMBOL vmlinux 0x16c9ea6e __starget_for_each_device +EXPORT_SYMBOL vmlinux 0x16e297c3 bit_wait +EXPORT_SYMBOL vmlinux 0x16e8df43 netdev_reset_tc +EXPORT_SYMBOL vmlinux 0x1709e4a5 vfs_ioc_setflags_prepare +EXPORT_SYMBOL vmlinux 0x1729d9a6 mdio_driver_unregister +EXPORT_SYMBOL vmlinux 0x1738c19e _raw_write_unlock_bh +EXPORT_SYMBOL vmlinux 0x174b97bb scsi_device_quiesce +EXPORT_SYMBOL vmlinux 0x17561c81 kill_pgrp +EXPORT_SYMBOL vmlinux 0x17570562 of_find_node_by_phandle +EXPORT_SYMBOL vmlinux 0x17690d48 unpin_user_page +EXPORT_SYMBOL vmlinux 0x177138b4 phy_ethtool_get_eee +EXPORT_SYMBOL vmlinux 0x17887935 nla_put_nohdr +EXPORT_SYMBOL vmlinux 0x178c4894 qe_upload_firmware +EXPORT_SYMBOL vmlinux 0x17bedb8d pcie_capability_clear_and_set_word +EXPORT_SYMBOL vmlinux 0x17bff169 inet_add_offload +EXPORT_SYMBOL vmlinux 0x17c87604 truncate_pagecache +EXPORT_SYMBOL vmlinux 0x181b2447 try_to_free_buffers +EXPORT_SYMBOL vmlinux 0x1820bfa4 security_dentry_create_files_as +EXPORT_SYMBOL vmlinux 0x18345b8e __bitmap_replace +EXPORT_SYMBOL vmlinux 0x183a0f0a rproc_free +EXPORT_SYMBOL vmlinux 0x184ef038 may_umount_tree +EXPORT_SYMBOL vmlinux 0x185148da kthread_stop +EXPORT_SYMBOL vmlinux 0x185320ba blk_queue_alignment_offset +EXPORT_SYMBOL vmlinux 0x1856e030 twl6040_set_pll +EXPORT_SYMBOL vmlinux 0x1858be06 tegra_ivc_write_get_next_frame +EXPORT_SYMBOL vmlinux 0x185c32cf sgl_free +EXPORT_SYMBOL vmlinux 0x185e7034 vme_dma_list_add +EXPORT_SYMBOL vmlinux 0x1874b05b hdmi_drm_infoframe_unpack_only +EXPORT_SYMBOL vmlinux 0x187884a8 cpm_muram_free +EXPORT_SYMBOL vmlinux 0x1887b64b vfs_fsync +EXPORT_SYMBOL vmlinux 0x188d4572 __scm_destroy +EXPORT_SYMBOL vmlinux 0x188ea314 jiffies_to_timespec64 +EXPORT_SYMBOL vmlinux 0x1899ee4b bdget +EXPORT_SYMBOL vmlinux 0x189c5980 arm_copy_to_user +EXPORT_SYMBOL vmlinux 0x189d180e vlan_vid_add +EXPORT_SYMBOL vmlinux 0x18a87ab6 pci_alloc_irq_vectors_affinity +EXPORT_SYMBOL vmlinux 0x18b34725 vme_register_error_handler +EXPORT_SYMBOL vmlinux 0x18b6007b fb_set_var +EXPORT_SYMBOL vmlinux 0x18bd1551 pid_task +EXPORT_SYMBOL vmlinux 0x18e25b21 __skb_checksum_complete +EXPORT_SYMBOL vmlinux 0x18e60984 __do_once_start +EXPORT_SYMBOL vmlinux 0x18eb99fc mmc_can_trim +EXPORT_SYMBOL vmlinux 0x18fc5726 mmc_request_done +EXPORT_SYMBOL vmlinux 0x1911b0b9 unregister_filesystem +EXPORT_SYMBOL vmlinux 0x192a032a __put_page +EXPORT_SYMBOL vmlinux 0x193c6a8c __sb_end_write +EXPORT_SYMBOL vmlinux 0x19457fb9 rtc_add_group +EXPORT_SYMBOL vmlinux 0x1956d179 netif_receive_skb +EXPORT_SYMBOL vmlinux 0x195c8596 cpu_rmap_update +EXPORT_SYMBOL vmlinux 0x1962d3fd kthread_associate_blkcg +EXPORT_SYMBOL vmlinux 0x19791737 mr_fill_mroute +EXPORT_SYMBOL vmlinux 0x197dc3b3 omap_set_dma_src_burst_mode +EXPORT_SYMBOL vmlinux 0x197fef3d security_binder_transfer_file +EXPORT_SYMBOL vmlinux 0x19827c5a dev_uc_sync_multiple +EXPORT_SYMBOL vmlinux 0x1984d421 out_of_line_wait_on_bit +EXPORT_SYMBOL vmlinux 0x198620d7 security_add_mnt_opt +EXPORT_SYMBOL vmlinux 0x198788b4 snd_lookup_oss_minor_data +EXPORT_SYMBOL vmlinux 0x1989c49a linkwatch_fire_event +EXPORT_SYMBOL vmlinux 0x199ae442 snd_pcm_hw_constraint_list +EXPORT_SYMBOL vmlinux 0x199ed0cd net_disable_timestamp +EXPORT_SYMBOL vmlinux 0x19ae304a fbcon_rotate_ccw +EXPORT_SYMBOL vmlinux 0x19bd383b security_secmark_refcount_dec +EXPORT_SYMBOL vmlinux 0x19d98f48 seq_open_private +EXPORT_SYMBOL vmlinux 0x19e12a02 d_invalidate +EXPORT_SYMBOL vmlinux 0x1a0e1d44 from_kuid_munged +EXPORT_SYMBOL vmlinux 0x1a16e13c put_disk +EXPORT_SYMBOL vmlinux 0x1a174d67 snd_pci_quirk_lookup +EXPORT_SYMBOL vmlinux 0x1a20c540 omap_vrfb_supported +EXPORT_SYMBOL vmlinux 0x1a21d691 __ksize +EXPORT_SYMBOL vmlinux 0x1a2cb0ce uart_get_divisor +EXPORT_SYMBOL vmlinux 0x1a3c6852 i2c_smbus_read_i2c_block_data_or_emulated +EXPORT_SYMBOL vmlinux 0x1a3e5f8d sk_stop_timer +EXPORT_SYMBOL vmlinux 0x1a51c881 sg_pcopy_from_buffer +EXPORT_SYMBOL vmlinux 0x1a5241de textsearch_unregister +EXPORT_SYMBOL vmlinux 0x1a56fcb8 dcache_readdir +EXPORT_SYMBOL vmlinux 0x1a5e8166 dm_kcopyd_copy +EXPORT_SYMBOL vmlinux 0x1a64d898 amba_find_device +EXPORT_SYMBOL vmlinux 0x1a65f4ad __arm_ioremap_pfn +EXPORT_SYMBOL vmlinux 0x1a68149b phy_attached_info +EXPORT_SYMBOL vmlinux 0x1a716f4d neigh_table_init +EXPORT_SYMBOL vmlinux 0x1a7bc9ef xxh32 +EXPORT_SYMBOL vmlinux 0x1a7fef6b proto_register +EXPORT_SYMBOL vmlinux 0x1a7ff252 i2c_smbus_read_block_data +EXPORT_SYMBOL vmlinux 0x1a810daf devm_pci_remap_iospace +EXPORT_SYMBOL vmlinux 0x1a93de42 pci_enable_msi +EXPORT_SYMBOL vmlinux 0x1a96b609 snd_register_oss_device +EXPORT_SYMBOL vmlinux 0x1a9a433c prandom_u32_state +EXPORT_SYMBOL vmlinux 0x1aa86d18 rdma_dim +EXPORT_SYMBOL vmlinux 0x1ad1f2e7 _memcpy_fromio +EXPORT_SYMBOL vmlinux 0x1ad385d4 ucc_fast_dump_regs +EXPORT_SYMBOL vmlinux 0x1ad528b3 nf_getsockopt +EXPORT_SYMBOL vmlinux 0x1aded990 ZSTD_DCtxWorkspaceBound +EXPORT_SYMBOL vmlinux 0x1ae231e1 get_bitmap_from_slot +EXPORT_SYMBOL vmlinux 0x1b015d25 bitmap_parselist +EXPORT_SYMBOL vmlinux 0x1b188ecb snd_ctl_new1 +EXPORT_SYMBOL vmlinux 0x1b1d9293 security_path_mknod +EXPORT_SYMBOL vmlinux 0x1b25f187 __xa_store +EXPORT_SYMBOL vmlinux 0x1b3ef517 touch_atime +EXPORT_SYMBOL vmlinux 0x1b404272 dm_kcopyd_zero +EXPORT_SYMBOL vmlinux 0x1b438f7d param_ops_invbool +EXPORT_SYMBOL vmlinux 0x1b44671d inet_del_protocol +EXPORT_SYMBOL vmlinux 0x1b6314fd in_aton +EXPORT_SYMBOL vmlinux 0x1b666ffe do_clone_file_range +EXPORT_SYMBOL vmlinux 0x1b6bcfd4 iptun_encaps +EXPORT_SYMBOL vmlinux 0x1b700d37 put_vaddr_frames +EXPORT_SYMBOL vmlinux 0x1b777357 rdmacg_unregister_device +EXPORT_SYMBOL vmlinux 0x1ba1cd02 dev_remove_pack +EXPORT_SYMBOL vmlinux 0x1bb387b5 udp_lib_getsockopt +EXPORT_SYMBOL vmlinux 0x1bb4c9d3 xfrm_alloc_spi +EXPORT_SYMBOL vmlinux 0x1bbac527 capable_wrt_inode_uidgid +EXPORT_SYMBOL vmlinux 0x1bc1f446 seg6_hmac_info_del +EXPORT_SYMBOL vmlinux 0x1bc24b4e show_init_ipc_ns +EXPORT_SYMBOL vmlinux 0x1be51eec update_region +EXPORT_SYMBOL vmlinux 0x1bee2997 ppp_output_wakeup +EXPORT_SYMBOL vmlinux 0x1c0b1aa5 md_register_thread +EXPORT_SYMBOL vmlinux 0x1c0ee98a netif_napi_del +EXPORT_SYMBOL vmlinux 0x1c2dfc01 put_cmsg_scm_timestamping64 +EXPORT_SYMBOL vmlinux 0x1c33aa61 fs_param_is_fd +EXPORT_SYMBOL vmlinux 0x1c386a4d __blk_rq_map_sg +EXPORT_SYMBOL vmlinux 0x1c5a389d nla_reserve_nohdr +EXPORT_SYMBOL vmlinux 0x1c5e3878 icst525_idx2s +EXPORT_SYMBOL vmlinux 0x1c777c5c dma_fence_add_callback +EXPORT_SYMBOL vmlinux 0x1c7dd2db crypto_sha1_finup +EXPORT_SYMBOL vmlinux 0x1c8a0c77 pci_enable_ptm +EXPORT_SYMBOL vmlinux 0x1c9fb372 rproc_shutdown +EXPORT_SYMBOL vmlinux 0x1cb2c6d8 kvasprintf +EXPORT_SYMBOL vmlinux 0x1cc20714 __kfree_skb +EXPORT_SYMBOL vmlinux 0x1cd11147 blk_get_queue +EXPORT_SYMBOL vmlinux 0x1cd927ff tcp_read_sock +EXPORT_SYMBOL vmlinux 0x1cd95ef0 noop_qdisc +EXPORT_SYMBOL vmlinux 0x1cea4bde handle_edge_irq +EXPORT_SYMBOL vmlinux 0x1cf99441 dcb_ieee_delapp +EXPORT_SYMBOL vmlinux 0x1d027e4b snd_pcm_format_signed +EXPORT_SYMBOL vmlinux 0x1d18f8b9 invalidate_mapping_pages +EXPORT_SYMBOL vmlinux 0x1d2cf140 _copy_from_iter_full +EXPORT_SYMBOL vmlinux 0x1d2d6d15 wait_iff_congested +EXPORT_SYMBOL vmlinux 0x1d43a34a snd_pcm_hw_constraint_pow2 +EXPORT_SYMBOL vmlinux 0x1d5f9555 frame_vector_destroy +EXPORT_SYMBOL vmlinux 0x1d6488d1 uart_unregister_driver +EXPORT_SYMBOL vmlinux 0x1d6bd450 from_kuid +EXPORT_SYMBOL vmlinux 0x1d98e374 fscrypt_fname_alloc_buffer +EXPORT_SYMBOL vmlinux 0x1da4398e netdev_get_xmit_slave +EXPORT_SYMBOL vmlinux 0x1dc6c93b lookup_user_key +EXPORT_SYMBOL vmlinux 0x1dcaf1e7 filemap_fdatawait_range_keep_errors +EXPORT_SYMBOL vmlinux 0x1dd571e6 fb_copy_cmap +EXPORT_SYMBOL vmlinux 0x1ddd643c flow_hash_from_keys +EXPORT_SYMBOL vmlinux 0x1de07bff __hw_addr_unsync_dev +EXPORT_SYMBOL vmlinux 0x1de3f19a ZSTD_endStream +EXPORT_SYMBOL vmlinux 0x1de4ccb2 get_sg_io_hdr +EXPORT_SYMBOL vmlinux 0x1df10d2c skb_copy_expand +EXPORT_SYMBOL vmlinux 0x1dff80f4 neigh_lookup_nodev +EXPORT_SYMBOL vmlinux 0x1e0373fc imx_scu_irq_group_enable +EXPORT_SYMBOL vmlinux 0x1e0492c7 scsi_device_set_state +EXPORT_SYMBOL vmlinux 0x1e0a0c24 mod_timer_pending +EXPORT_SYMBOL vmlinux 0x1e1e140e ns_to_timespec64 +EXPORT_SYMBOL vmlinux 0x1e1ec406 mmc_calc_max_discard +EXPORT_SYMBOL vmlinux 0x1e431dfd inet_csk_delete_keepalive_timer +EXPORT_SYMBOL vmlinux 0x1e43f49d rproc_coredump_add_segment +EXPORT_SYMBOL vmlinux 0x1e495dfb scsi_block_requests +EXPORT_SYMBOL vmlinux 0x1e496ac2 snd_ctl_remove +EXPORT_SYMBOL vmlinux 0x1e539d5c freeze_super +EXPORT_SYMBOL vmlinux 0x1e6d26a8 strstr +EXPORT_SYMBOL vmlinux 0x1e96f43d __cpu_possible_mask +EXPORT_SYMBOL vmlinux 0x1e975462 pci_pme_active +EXPORT_SYMBOL vmlinux 0x1e9edfb7 seq_hlist_start_head_rcu +EXPORT_SYMBOL vmlinux 0x1ea80a51 bd_finish_claiming +EXPORT_SYMBOL vmlinux 0x1eb41fe0 in_dev_finish_destroy +EXPORT_SYMBOL vmlinux 0x1eb64646 div64_s64 +EXPORT_SYMBOL vmlinux 0x1ec961fc dcb_ieee_setapp +EXPORT_SYMBOL vmlinux 0x1edb69d6 ktime_get_raw_ts64 +EXPORT_SYMBOL vmlinux 0x1efa1446 udp_seq_ops +EXPORT_SYMBOL vmlinux 0x1f3a6be4 vmf_insert_pfn_prot +EXPORT_SYMBOL vmlinux 0x1f4c2af1 __hw_addr_ref_sync_dev +EXPORT_SYMBOL vmlinux 0x1f4dfcd4 ether_setup +EXPORT_SYMBOL vmlinux 0x1f7e807f kstrtoint_from_user +EXPORT_SYMBOL vmlinux 0x1f87562c tcf_chain_put_by_act +EXPORT_SYMBOL vmlinux 0x1f9d7f16 pci_bus_read_dev_vendor_id +EXPORT_SYMBOL vmlinux 0x1fb02546 blk_rq_unmap_user +EXPORT_SYMBOL vmlinux 0x1fbd16da ip_tos2prio +EXPORT_SYMBOL vmlinux 0x1fc9c0c2 unregister_binfmt +EXPORT_SYMBOL vmlinux 0x1fd07fff kdb_grepping_flag +EXPORT_SYMBOL vmlinux 0x1fd33378 snd_ctl_boolean_stereo_info +EXPORT_SYMBOL vmlinux 0x1fdd1966 pcix_get_mmrbc +EXPORT_SYMBOL vmlinux 0x1fe3c490 request_firmware_into_buf +EXPORT_SYMBOL vmlinux 0x1fe4f0d8 get_mem_type +EXPORT_SYMBOL vmlinux 0x1fe912f1 netdev_alloc_frag +EXPORT_SYMBOL vmlinux 0x20000329 simple_strtoul +EXPORT_SYMBOL vmlinux 0x200036a3 ip_tunnel_metadata_cnt +EXPORT_SYMBOL vmlinux 0x20070ea2 _atomic_dec_and_lock_irqsave +EXPORT_SYMBOL vmlinux 0x200b2041 in6addr_any +EXPORT_SYMBOL vmlinux 0x20208ccd lock_rename +EXPORT_SYMBOL vmlinux 0x203a3e0b rawv6_mh_filter_unregister +EXPORT_SYMBOL vmlinux 0x204af5b5 netlbl_audit_start +EXPORT_SYMBOL vmlinux 0x204c19f5 tcp_alloc_md5sig_pool +EXPORT_SYMBOL vmlinux 0x204c5067 scsi_dev_info_add_list +EXPORT_SYMBOL vmlinux 0x205727b8 fs_context_for_submount +EXPORT_SYMBOL vmlinux 0x20608643 twl6040_get_pll +EXPORT_SYMBOL vmlinux 0x2065b5b9 security_task_getsecid +EXPORT_SYMBOL vmlinux 0x20706f03 rproc_elf_sanity_check +EXPORT_SYMBOL vmlinux 0x2072b8b4 unregister_sysctl_table +EXPORT_SYMBOL vmlinux 0x2072ee9b request_threaded_irq +EXPORT_SYMBOL vmlinux 0x207dee09 phy_ethtool_set_link_ksettings +EXPORT_SYMBOL vmlinux 0x20846110 down_killable +EXPORT_SYMBOL vmlinux 0x209bd147 flow_rule_match_enc_ipv4_addrs +EXPORT_SYMBOL vmlinux 0x209f3bf7 of_find_device_by_node +EXPORT_SYMBOL vmlinux 0x20a3cb5e nand_scan_with_ids +EXPORT_SYMBOL vmlinux 0x20a789ac irq_set_chip_data +EXPORT_SYMBOL vmlinux 0x20af635a posix_acl_valid +EXPORT_SYMBOL vmlinux 0x20cf3926 i2c_del_adapter +EXPORT_SYMBOL vmlinux 0x20d3d573 param_get_invbool +EXPORT_SYMBOL vmlinux 0x20d65e40 fb_find_nearest_mode +EXPORT_SYMBOL vmlinux 0x20eaa9ca shrink_dcache_parent +EXPORT_SYMBOL vmlinux 0x20eadd96 d_splice_alias +EXPORT_SYMBOL vmlinux 0x20ef1e64 request_key_rcu +EXPORT_SYMBOL vmlinux 0x21059cd7 audit_log_task_context +EXPORT_SYMBOL vmlinux 0x210ba150 netdev_alert +EXPORT_SYMBOL vmlinux 0x21110dbf mmioset +EXPORT_SYMBOL vmlinux 0x211331fa __divsi3 +EXPORT_SYMBOL vmlinux 0x211706f8 tty_kref_put +EXPORT_SYMBOL vmlinux 0x211ee9bc qcom_scm_assign_mem +EXPORT_SYMBOL vmlinux 0x212133db xps_rxqs_needed +EXPORT_SYMBOL vmlinux 0x213cc7c3 dev_get_by_name_rcu +EXPORT_SYMBOL vmlinux 0x213e4965 ps2_is_keyboard_id +EXPORT_SYMBOL vmlinux 0x215a8ec8 slhc_init +EXPORT_SYMBOL vmlinux 0x2160ef5d __netlink_dump_start +EXPORT_SYMBOL vmlinux 0x216d759a mmiocpy +EXPORT_SYMBOL vmlinux 0x21ab9bef of_cpu_node_to_id +EXPORT_SYMBOL vmlinux 0x21bdb523 errseq_check_and_advance +EXPORT_SYMBOL vmlinux 0x21be258c __nla_reserve +EXPORT_SYMBOL vmlinux 0x21be37e1 hdmi_avi_infoframe_check +EXPORT_SYMBOL vmlinux 0x21c334c6 blk_post_runtime_resume +EXPORT_SYMBOL vmlinux 0x21c4d812 skb_set_owner_w +EXPORT_SYMBOL vmlinux 0x21cb58ad cookie_timestamp_decode +EXPORT_SYMBOL vmlinux 0x21d03882 d_set_fallthru +EXPORT_SYMBOL vmlinux 0x21d3c1c9 inet_rtx_syn_ack +EXPORT_SYMBOL vmlinux 0x21da154c dev_uc_init +EXPORT_SYMBOL vmlinux 0x21e13cb3 inet_peer_xrlim_allow +EXPORT_SYMBOL vmlinux 0x21ee48a6 fscrypt_decrypt_bio +EXPORT_SYMBOL vmlinux 0x21f14f1a pci_release_regions +EXPORT_SYMBOL vmlinux 0x21f7eb8f claim_fiq +EXPORT_SYMBOL vmlinux 0x21fb5555 generic_parse_monolithic +EXPORT_SYMBOL vmlinux 0x220c7021 tegra_io_pad_power_disable +EXPORT_SYMBOL vmlinux 0x22238b70 cros_ec_get_next_event +EXPORT_SYMBOL vmlinux 0x2224700d inet_protos +EXPORT_SYMBOL vmlinux 0x222e7ce2 sysfs_streq +EXPORT_SYMBOL vmlinux 0x2231b88b netif_carrier_on +EXPORT_SYMBOL vmlinux 0x224899e1 get_user_pages +EXPORT_SYMBOL vmlinux 0x2252acfb input_flush_device +EXPORT_SYMBOL vmlinux 0x225e9580 dst_destroy +EXPORT_SYMBOL vmlinux 0x2276db98 kstrtoint +EXPORT_SYMBOL vmlinux 0x2277d558 mx53_revision +EXPORT_SYMBOL vmlinux 0x2291f07d phy_request_interrupt +EXPORT_SYMBOL vmlinux 0x22967569 __scsi_add_device +EXPORT_SYMBOL vmlinux 0x22b325d5 kd_mksound +EXPORT_SYMBOL vmlinux 0x22bc46ea default_llseek +EXPORT_SYMBOL vmlinux 0x22e5f2d1 dquot_quota_sync +EXPORT_SYMBOL vmlinux 0x22e6e823 mmc_cqe_start_req +EXPORT_SYMBOL vmlinux 0x22f9e8a4 xfrm_stateonly_find +EXPORT_SYMBOL vmlinux 0x22fb5fca skb_abort_seq_read +EXPORT_SYMBOL vmlinux 0x2300883f simple_map_init +EXPORT_SYMBOL vmlinux 0x230dcb66 vme_slave_request +EXPORT_SYMBOL vmlinux 0x231add98 tcp_init_sock +EXPORT_SYMBOL vmlinux 0x231f2520 napi_get_frags +EXPORT_SYMBOL vmlinux 0x2320664f disk_stack_limits +EXPORT_SYMBOL vmlinux 0x23220afc pci_reenable_device +EXPORT_SYMBOL vmlinux 0x232a29fc dma_set_coherent_mask +EXPORT_SYMBOL vmlinux 0x2332e901 netif_receive_skb_core +EXPORT_SYMBOL vmlinux 0x2339c2d8 PageMovable +EXPORT_SYMBOL vmlinux 0x234204ec key_instantiate_and_link +EXPORT_SYMBOL vmlinux 0x235294c6 max8925_reg_write +EXPORT_SYMBOL vmlinux 0x23619cff jiffies_64 +EXPORT_SYMBOL vmlinux 0x236856ec vfs_getattr +EXPORT_SYMBOL vmlinux 0x236ff005 watchdog_register_governor +EXPORT_SYMBOL vmlinux 0x23826133 sk_free +EXPORT_SYMBOL vmlinux 0x238b099f mipi_dsi_packet_format_is_short +EXPORT_SYMBOL vmlinux 0x239a6496 mdiobus_read +EXPORT_SYMBOL vmlinux 0x23b9d6e2 mangle_path +EXPORT_SYMBOL vmlinux 0x23bbdeed _raw_read_trylock +EXPORT_SYMBOL vmlinux 0x23c82171 get_user_pages_remote +EXPORT_SYMBOL vmlinux 0x23cc388a kthread_destroy_worker +EXPORT_SYMBOL vmlinux 0x23cef842 dma_fence_chain_init +EXPORT_SYMBOL vmlinux 0x23db3221 inet_csk_clear_xmit_timers +EXPORT_SYMBOL vmlinux 0x23e62a2b rt6_lookup +EXPORT_SYMBOL vmlinux 0x23e99b7e config_item_put +EXPORT_SYMBOL vmlinux 0x23ee13fd mb_cache_entry_find_first +EXPORT_SYMBOL vmlinux 0x23f637bf ppp_unit_number +EXPORT_SYMBOL vmlinux 0x23f9c5ce xps_needed +EXPORT_SYMBOL vmlinux 0x23fd3028 vmalloc_node +EXPORT_SYMBOL vmlinux 0x24212d86 __frontswap_invalidate_page +EXPORT_SYMBOL vmlinux 0x24428be5 strncpy_from_user +EXPORT_SYMBOL vmlinux 0x2456309c block_write_begin +EXPORT_SYMBOL vmlinux 0x2456e0b5 of_dev_put +EXPORT_SYMBOL vmlinux 0x2457e1be __sk_receive_skb +EXPORT_SYMBOL vmlinux 0x2458e021 single_open +EXPORT_SYMBOL vmlinux 0x2459bbcc console_set_on_cmdline +EXPORT_SYMBOL vmlinux 0x245d680b dcb_setapp +EXPORT_SYMBOL vmlinux 0x246790df idr_for_each +EXPORT_SYMBOL vmlinux 0x2473f47e dm_table_get_size +EXPORT_SYMBOL vmlinux 0x2482fe4c tcp_md5_hash_skb_data +EXPORT_SYMBOL vmlinux 0x24920f9d dev_open +EXPORT_SYMBOL vmlinux 0x249441bc i2c_smbus_read_byte +EXPORT_SYMBOL vmlinux 0x24a4a42d md_bitmap_cond_end_sync +EXPORT_SYMBOL vmlinux 0x24a94b26 snd_info_get_line +EXPORT_SYMBOL vmlinux 0x24b41863 open_with_fake_path +EXPORT_SYMBOL vmlinux 0x24b97378 kstrtos16_from_user +EXPORT_SYMBOL vmlinux 0x24c2b0af can_nice +EXPORT_SYMBOL vmlinux 0x24d273d1 add_timer +EXPORT_SYMBOL vmlinux 0x24ea65a6 netif_set_real_num_tx_queues +EXPORT_SYMBOL vmlinux 0x24f84e95 pcim_pin_device +EXPORT_SYMBOL vmlinux 0x24fa55ab pcim_iomap_table +EXPORT_SYMBOL vmlinux 0x250113b4 memory_read_from_buffer +EXPORT_SYMBOL vmlinux 0x250ff749 inet_confirm_addr +EXPORT_SYMBOL vmlinux 0x251ad22a page_pool_destroy +EXPORT_SYMBOL vmlinux 0x2522750c tcp_disconnect +EXPORT_SYMBOL vmlinux 0x25277497 rfkill_register +EXPORT_SYMBOL vmlinux 0x254007eb qdisc_reset +EXPORT_SYMBOL vmlinux 0x255aa4c9 migrate_page +EXPORT_SYMBOL vmlinux 0x2566a7c0 config_item_set_name +EXPORT_SYMBOL vmlinux 0x2570a138 reservation_seqcount_string +EXPORT_SYMBOL vmlinux 0x257ae45c dma_fence_free +EXPORT_SYMBOL vmlinux 0x25820c64 fs_overflowuid +EXPORT_SYMBOL vmlinux 0x258d2f76 net_dim_get_tx_moderation +EXPORT_SYMBOL vmlinux 0x25a42f52 eth_validate_addr +EXPORT_SYMBOL vmlinux 0x25ab1455 inet_del_offload +EXPORT_SYMBOL vmlinux 0x25b0af5b mmc_unregister_driver +EXPORT_SYMBOL vmlinux 0x25d36ad6 tc_setup_flow_action +EXPORT_SYMBOL vmlinux 0x25e58a09 hdmi_avi_infoframe_init +EXPORT_SYMBOL vmlinux 0x25e9d4bd resource_list_free +EXPORT_SYMBOL vmlinux 0x26040de7 netdev_lower_get_next_private +EXPORT_SYMBOL vmlinux 0x2618cf4c blk_rq_map_user_iov +EXPORT_SYMBOL vmlinux 0x26334184 devm_devfreq_register_opp_notifier +EXPORT_SYMBOL vmlinux 0x263a3bbb debugfs_create_automount +EXPORT_SYMBOL vmlinux 0x263beb75 ecryptfs_get_versions +EXPORT_SYMBOL vmlinux 0x264fd27c simple_pin_fs +EXPORT_SYMBOL vmlinux 0x2664b472 send_sig_info +EXPORT_SYMBOL vmlinux 0x2665a528 get_tree_single_reconf +EXPORT_SYMBOL vmlinux 0x2669a583 xfrm_spd_getinfo +EXPORT_SYMBOL vmlinux 0x2688ec10 bitmap_zalloc +EXPORT_SYMBOL vmlinux 0x2690aeb9 tcf_unregister_action +EXPORT_SYMBOL vmlinux 0x2690e6c1 _find_next_zero_bit_le +EXPORT_SYMBOL vmlinux 0x26944208 get_super +EXPORT_SYMBOL vmlinux 0x26a895f3 tcf_exts_change +EXPORT_SYMBOL vmlinux 0x26ab58bc dev_remove_offload +EXPORT_SYMBOL vmlinux 0x26b027c4 mroute6_is_socket +EXPORT_SYMBOL vmlinux 0x26bb950b __kfifo_from_user_r +EXPORT_SYMBOL vmlinux 0x26df921c proc_symlink +EXPORT_SYMBOL vmlinux 0x26eef99f mmc_cqe_post_req +EXPORT_SYMBOL vmlinux 0x270527c8 phy_free_interrupt +EXPORT_SYMBOL vmlinux 0x270ac400 sg_pcopy_to_buffer +EXPORT_SYMBOL vmlinux 0x270e7ac6 security_sctp_bind_connect +EXPORT_SYMBOL vmlinux 0x2733eaf7 scsi_dev_info_list_add_keyed +EXPORT_SYMBOL vmlinux 0x273b859d flow_rule_match_enc_opts +EXPORT_SYMBOL vmlinux 0x27479d14 param_free_charp +EXPORT_SYMBOL vmlinux 0x275f3d49 hdmi_vendor_infoframe_check +EXPORT_SYMBOL vmlinux 0x27639220 blk_verify_command +EXPORT_SYMBOL vmlinux 0x277185c4 devm_clk_hw_register_clkdev +EXPORT_SYMBOL vmlinux 0x27756bc8 scsi_sanitize_inquiry_string +EXPORT_SYMBOL vmlinux 0x2782b393 xfrm_state_walk_init +EXPORT_SYMBOL vmlinux 0x27864d57 memparse +EXPORT_SYMBOL vmlinux 0x278fb19f tcf_action_dump_1 +EXPORT_SYMBOL vmlinux 0x27a04e2a netlink_ack +EXPORT_SYMBOL vmlinux 0x27ad8526 gro_find_receive_by_type +EXPORT_SYMBOL vmlinux 0x27ae772f sock_cmsg_send +EXPORT_SYMBOL vmlinux 0x27bbf221 disable_irq_nosync +EXPORT_SYMBOL vmlinux 0x27c68705 node_states +EXPORT_SYMBOL vmlinux 0x27cf1f01 forget_all_cached_acls +EXPORT_SYMBOL vmlinux 0x27dc4078 netdev_has_any_upper_dev +EXPORT_SYMBOL vmlinux 0x27e99b45 neigh_lookup +EXPORT_SYMBOL vmlinux 0x27f79847 mipi_dsi_turn_on_peripheral +EXPORT_SYMBOL vmlinux 0x28031665 __ClearPageMovable +EXPORT_SYMBOL vmlinux 0x28118cb6 __get_user_1 +EXPORT_SYMBOL vmlinux 0x281823c5 __kfifo_out_peek +EXPORT_SYMBOL vmlinux 0x28217b4b page_pool_create +EXPORT_SYMBOL vmlinux 0x282706ec snd_ctl_make_virtual_master +EXPORT_SYMBOL vmlinux 0x2836c002 register_filesystem +EXPORT_SYMBOL vmlinux 0x2838df7e qdisc_create_dflt +EXPORT_SYMBOL vmlinux 0x284f2081 tcf_block_get +EXPORT_SYMBOL vmlinux 0x285cd22b may_umount +EXPORT_SYMBOL vmlinux 0x286c7b5b pci_wake_from_d3 +EXPORT_SYMBOL vmlinux 0x28748fee tty_port_raise_dtr_rts +EXPORT_SYMBOL vmlinux 0x2875a315 utf32_to_utf8 +EXPORT_SYMBOL vmlinux 0x2878e15a idr_destroy +EXPORT_SYMBOL vmlinux 0x287b14db skb_flow_dissect_tunnel_info +EXPORT_SYMBOL vmlinux 0x287b217b sk_stream_wait_memory +EXPORT_SYMBOL vmlinux 0x287bb8a8 configfs_remove_default_groups +EXPORT_SYMBOL vmlinux 0x287c5940 dma_free_attrs +EXPORT_SYMBOL vmlinux 0x28936f7a pci_ep_cfs_remove_epc_group +EXPORT_SYMBOL vmlinux 0x28a31ad5 sk_mc_loop +EXPORT_SYMBOL vmlinux 0x28c0ddbf rc5t583_ext_power_req_config +EXPORT_SYMBOL vmlinux 0x28c1effd of_clk_get +EXPORT_SYMBOL vmlinux 0x28e80c37 vm_numa_stat +EXPORT_SYMBOL vmlinux 0x28fff975 __find_get_block +EXPORT_SYMBOL vmlinux 0x290fa4c3 jbd2_journal_wipe +EXPORT_SYMBOL vmlinux 0x292544a1 thaw_super +EXPORT_SYMBOL vmlinux 0x292c5ded vfs_rename +EXPORT_SYMBOL vmlinux 0x294b9ea1 on_each_cpu +EXPORT_SYMBOL vmlinux 0x29555335 dma_resv_reserve_shared +EXPORT_SYMBOL vmlinux 0x2973bf1e netdev_has_upper_dev +EXPORT_SYMBOL vmlinux 0x2977212e mmc_alloc_host +EXPORT_SYMBOL vmlinux 0x29773325 param_ops_charp +EXPORT_SYMBOL vmlinux 0x2977559a super_setup_bdi +EXPORT_SYMBOL vmlinux 0x2991e2d8 netpoll_print_options +EXPORT_SYMBOL vmlinux 0x29a47fe9 dma_fence_wait_any_timeout +EXPORT_SYMBOL vmlinux 0x29af6459 set_posix_acl +EXPORT_SYMBOL vmlinux 0x29c5262b pci_release_resource +EXPORT_SYMBOL vmlinux 0x29d58d01 mdiobus_unregister_device +EXPORT_SYMBOL vmlinux 0x29d61a18 cfb_imageblit +EXPORT_SYMBOL vmlinux 0x29d76209 lookup_one_len +EXPORT_SYMBOL vmlinux 0x29d79b2d fb_get_mode +EXPORT_SYMBOL vmlinux 0x29d9f26e cancel_delayed_work_sync +EXPORT_SYMBOL vmlinux 0x29e18624 vlan_dev_vlan_id +EXPORT_SYMBOL vmlinux 0x29fe7f61 tcp_child_process +EXPORT_SYMBOL vmlinux 0x2a0136a9 inet6_csk_route_req +EXPORT_SYMBOL vmlinux 0x2a06cefd seg6_hmac_net_init +EXPORT_SYMBOL vmlinux 0x2a0fd0d0 ZSTD_getCParams +EXPORT_SYMBOL vmlinux 0x2a1107d7 blk_set_queue_depth +EXPORT_SYMBOL vmlinux 0x2a2893be follow_pfn +EXPORT_SYMBOL vmlinux 0x2a2de3c8 pci_read_config_dword +EXPORT_SYMBOL vmlinux 0x2a303d4d check_signature +EXPORT_SYMBOL vmlinux 0x2a30eeee __ip_select_ident +EXPORT_SYMBOL vmlinux 0x2a34d1bc sock_common_setsockopt +EXPORT_SYMBOL vmlinux 0x2a3aa678 _test_and_clear_bit +EXPORT_SYMBOL vmlinux 0x2a403cbb mark_buffer_dirty +EXPORT_SYMBOL vmlinux 0x2a461ad4 kmem_cache_free +EXPORT_SYMBOL vmlinux 0x2a524a1f vga_get +EXPORT_SYMBOL vmlinux 0x2a54a22c free_task +EXPORT_SYMBOL vmlinux 0x2a575831 input_inject_event +EXPORT_SYMBOL vmlinux 0x2a66337e __dec_node_page_state +EXPORT_SYMBOL vmlinux 0x2a6e4184 md_set_array_sectors +EXPORT_SYMBOL vmlinux 0x2a6f5286 phy_support_sym_pause +EXPORT_SYMBOL vmlinux 0x2a76adbe pci_request_selected_regions_exclusive +EXPORT_SYMBOL vmlinux 0x2a8e1462 get_cached_acl_rcu +EXPORT_SYMBOL vmlinux 0x2a8eacff lookup_bdev +EXPORT_SYMBOL vmlinux 0x2a9a19cf devm_clk_put +EXPORT_SYMBOL vmlinux 0x2a9a3905 vme_master_get +EXPORT_SYMBOL vmlinux 0x2aa0e4fc strncasecmp +EXPORT_SYMBOL vmlinux 0x2aa4fdc5 tty_hung_up_p +EXPORT_SYMBOL vmlinux 0x2ab74ad0 mmc_retune_pause +EXPORT_SYMBOL vmlinux 0x2ab89d46 md_write_inc +EXPORT_SYMBOL vmlinux 0x2ac36bba I_BDEV +EXPORT_SYMBOL vmlinux 0x2af0411e seg6_hmac_validate_skb +EXPORT_SYMBOL vmlinux 0x2b454a35 nf_log_bind_pf +EXPORT_SYMBOL vmlinux 0x2b54ad2e dup_iter +EXPORT_SYMBOL vmlinux 0x2b57d1df km_state_expired +EXPORT_SYMBOL vmlinux 0x2b5ab97d _raw_spin_lock_bh +EXPORT_SYMBOL vmlinux 0x2b5f571c md_bitmap_start_sync +EXPORT_SYMBOL vmlinux 0x2b68bd2f del_timer +EXPORT_SYMBOL vmlinux 0x2b6d8b51 tcf_exts_dump +EXPORT_SYMBOL vmlinux 0x2b77f192 kernel_sock_shutdown +EXPORT_SYMBOL vmlinux 0x2b88762c tcp_splice_read +EXPORT_SYMBOL vmlinux 0x2b8dd938 gro_cells_init +EXPORT_SYMBOL vmlinux 0x2b9381c0 jbd2_journal_init_inode +EXPORT_SYMBOL vmlinux 0x2b99722a __cpu_active_mask +EXPORT_SYMBOL vmlinux 0x2b9da7a4 genl_lock +EXPORT_SYMBOL vmlinux 0x2bb144ed setattr_copy +EXPORT_SYMBOL vmlinux 0x2bb33077 vscnprintf +EXPORT_SYMBOL vmlinux 0x2bd69ee5 mipi_dsi_dcs_set_tear_off +EXPORT_SYMBOL vmlinux 0x2bfc57e9 vme_unregister_driver +EXPORT_SYMBOL vmlinux 0x2bfdb94d dquot_alloc +EXPORT_SYMBOL vmlinux 0x2bff5887 xa_destroy +EXPORT_SYMBOL vmlinux 0x2c03e95a dm_kobject_release +EXPORT_SYMBOL vmlinux 0x2c14323a kstrtol_from_user +EXPORT_SYMBOL vmlinux 0x2c256e1f input_scancode_to_scalar +EXPORT_SYMBOL vmlinux 0x2c2df86e tso_build_data +EXPORT_SYMBOL vmlinux 0x2c329e54 tegra_powergate_sequence_power_up +EXPORT_SYMBOL vmlinux 0x2c380ad2 phy_resume +EXPORT_SYMBOL vmlinux 0x2c4063af blk_mq_end_request +EXPORT_SYMBOL vmlinux 0x2c45bf5a sock_recvmsg +EXPORT_SYMBOL vmlinux 0x2c53eb55 kill_anon_super +EXPORT_SYMBOL vmlinux 0x2c588631 tcf_em_unregister +EXPORT_SYMBOL vmlinux 0x2c659b86 fscrypt_free_inode +EXPORT_SYMBOL vmlinux 0x2c6b6974 __wait_on_bit_lock +EXPORT_SYMBOL vmlinux 0x2c6b73e3 fs_param_is_blob +EXPORT_SYMBOL vmlinux 0x2c77931d scsi_cmd_ioctl +EXPORT_SYMBOL vmlinux 0x2c7c8e9a pcibios_min_mem +EXPORT_SYMBOL vmlinux 0x2c81ec75 __irq_regs +EXPORT_SYMBOL vmlinux 0x2c845477 udp_sk_rx_dst_set +EXPORT_SYMBOL vmlinux 0x2c9d3756 vsnprintf +EXPORT_SYMBOL vmlinux 0x2cab95a4 ptp_clock_event +EXPORT_SYMBOL vmlinux 0x2cb1a50c generic_file_fsync +EXPORT_SYMBOL vmlinux 0x2cb7b754 input_event +EXPORT_SYMBOL vmlinux 0x2ccccf67 inet_csk_init_xmit_timers +EXPORT_SYMBOL vmlinux 0x2cd4a227 jbd2_journal_ack_err +EXPORT_SYMBOL vmlinux 0x2cd83d26 dev_getbyhwaddr_rcu +EXPORT_SYMBOL vmlinux 0x2ce3da53 sched_autogroup_create_attach +EXPORT_SYMBOL vmlinux 0x2cfde9a2 warn_slowpath_fmt +EXPORT_SYMBOL vmlinux 0x2d140a58 genl_unlock +EXPORT_SYMBOL vmlinux 0x2d19a7f3 snd_soc_alloc_ac97_component +EXPORT_SYMBOL vmlinux 0x2d1e631f __vfs_setxattr +EXPORT_SYMBOL vmlinux 0x2d30596c from_kqid_munged +EXPORT_SYMBOL vmlinux 0x2d3385d3 system_wq +EXPORT_SYMBOL vmlinux 0x2d39b0a7 kstrdup +EXPORT_SYMBOL vmlinux 0x2d3ba1da rdmacg_try_charge +EXPORT_SYMBOL vmlinux 0x2d3c7d52 generic_iommu_put_resv_regions +EXPORT_SYMBOL vmlinux 0x2d3ffd81 skb_coalesce_rx_frag +EXPORT_SYMBOL vmlinux 0x2d4c773a hdmi_spd_infoframe_init +EXPORT_SYMBOL vmlinux 0x2d517446 skb_clone +EXPORT_SYMBOL vmlinux 0x2d5e4777 mipi_dsi_dcs_set_tear_scanline +EXPORT_SYMBOL vmlinux 0x2d6fcc06 __kmalloc +EXPORT_SYMBOL vmlinux 0x2d912bca dmi_get_bios_year +EXPORT_SYMBOL vmlinux 0x2d994605 security_inode_copy_up_xattr +EXPORT_SYMBOL vmlinux 0x2da81bff _raw_spin_lock_irq +EXPORT_SYMBOL vmlinux 0x2dbd2199 jbd2_journal_get_undo_access +EXPORT_SYMBOL vmlinux 0x2dc5e56e gro_cells_receive +EXPORT_SYMBOL vmlinux 0x2dc8749f of_node_put +EXPORT_SYMBOL vmlinux 0x2dc905e6 pci_enable_device_io +EXPORT_SYMBOL vmlinux 0x2dd8ed18 mdiobus_is_registered_device +EXPORT_SYMBOL vmlinux 0x2ddd7ad2 file_update_time +EXPORT_SYMBOL vmlinux 0x2dec67cd _raw_write_trylock +EXPORT_SYMBOL vmlinux 0x2deffcf1 sg_miter_start +EXPORT_SYMBOL vmlinux 0x2e0335d7 dquot_free_inode +EXPORT_SYMBOL vmlinux 0x2e075504 sock_edemux +EXPORT_SYMBOL vmlinux 0x2e1082f7 inet_register_protosw +EXPORT_SYMBOL vmlinux 0x2e19e341 tc_setup_cb_call +EXPORT_SYMBOL vmlinux 0x2e1ca751 clk_put +EXPORT_SYMBOL vmlinux 0x2e288c74 tcp_seq_next +EXPORT_SYMBOL vmlinux 0x2e439142 drm_get_panel_orientation_quirk +EXPORT_SYMBOL vmlinux 0x2e5fe036 __skb_ext_put +EXPORT_SYMBOL vmlinux 0x2e67feac qdisc_offload_graft_helper +EXPORT_SYMBOL vmlinux 0x2e7249de __close_fd +EXPORT_SYMBOL vmlinux 0x2e77e471 filp_close +EXPORT_SYMBOL vmlinux 0x2e8a02b4 skb_split +EXPORT_SYMBOL vmlinux 0x2e8a78bf skb_checksum_help +EXPORT_SYMBOL vmlinux 0x2e917e1c tty_flip_buffer_push +EXPORT_SYMBOL vmlinux 0x2e91cca1 unlock_new_inode +EXPORT_SYMBOL vmlinux 0x2e994877 inet_getname +EXPORT_SYMBOL vmlinux 0x2e9ed018 blk_mq_requeue_request +EXPORT_SYMBOL vmlinux 0x2ea7f64a seq_read_iter +EXPORT_SYMBOL vmlinux 0x2eacbe22 ZSTD_compressBlock +EXPORT_SYMBOL vmlinux 0x2ebdcbc7 fs_param_is_path +EXPORT_SYMBOL vmlinux 0x2ec524ad __kfifo_in_r +EXPORT_SYMBOL vmlinux 0x2ec6bba0 errseq_set +EXPORT_SYMBOL vmlinux 0x2efc4c82 dma_resv_add_excl_fence +EXPORT_SYMBOL vmlinux 0x2f0284b0 mipi_dsi_dcs_get_display_brightness +EXPORT_SYMBOL vmlinux 0x2f03fc4b security_secmark_refcount_inc +EXPORT_SYMBOL vmlinux 0x2f1665f5 device_match_acpi_dev +EXPORT_SYMBOL vmlinux 0x2f18d647 pci_claim_resource +EXPORT_SYMBOL vmlinux 0x2f1b0d62 ZSTD_insertBlock +EXPORT_SYMBOL vmlinux 0x2f28acce tcp_sock_set_quickack +EXPORT_SYMBOL vmlinux 0x2f2e91b2 security_ib_alloc_security +EXPORT_SYMBOL vmlinux 0x2f333aab imx_scu_get_handle +EXPORT_SYMBOL vmlinux 0x2f41ae24 path_has_submounts +EXPORT_SYMBOL vmlinux 0x2f50cbf5 proc_doulongvec_minmax +EXPORT_SYMBOL vmlinux 0x2f58c94b kernel_param_lock +EXPORT_SYMBOL vmlinux 0x2f5a5411 ipv6_dev_get_saddr +EXPORT_SYMBOL vmlinux 0x2f5b0fdb gen_pool_alloc_algo_owner +EXPORT_SYMBOL vmlinux 0x2f6ea6d2 radix_tree_iter_resume +EXPORT_SYMBOL vmlinux 0x2f6f8205 vfs_create_mount +EXPORT_SYMBOL vmlinux 0x2f70dd19 pps_event +EXPORT_SYMBOL vmlinux 0x2f869976 file_ns_capable +EXPORT_SYMBOL vmlinux 0x2f8d3f6f skb_checksum_setup +EXPORT_SYMBOL vmlinux 0x2fad3061 truncate_setsize +EXPORT_SYMBOL vmlinux 0x2fb6de5d add_device_randomness +EXPORT_SYMBOL vmlinux 0x2fc1192e netdev_class_remove_file_ns +EXPORT_SYMBOL vmlinux 0x2fcd98cf tcf_idr_search +EXPORT_SYMBOL vmlinux 0x2fe252cc unregister_inet6addr_notifier +EXPORT_SYMBOL vmlinux 0x2fe57bdf pci_write_vpd +EXPORT_SYMBOL vmlinux 0x30034489 mmc_can_discard +EXPORT_SYMBOL vmlinux 0x300edffc no_seek_end_llseek_size +EXPORT_SYMBOL vmlinux 0x3014fa4c tcf_action_exec +EXPORT_SYMBOL vmlinux 0x301c6191 genl_unregister_family +EXPORT_SYMBOL vmlinux 0x30212b0d tegra_dfll_runtime_resume +EXPORT_SYMBOL vmlinux 0x30275bfb __tracepoint_dma_fence_enable_signal +EXPORT_SYMBOL vmlinux 0x303e0e81 inet_stream_ops +EXPORT_SYMBOL vmlinux 0x3045ff88 kernel_connect +EXPORT_SYMBOL vmlinux 0x30507b37 scsi_remove_target +EXPORT_SYMBOL vmlinux 0x306b46eb __cleancache_invalidate_fs +EXPORT_SYMBOL vmlinux 0x306cd71e scsi_device_put +EXPORT_SYMBOL vmlinux 0x30745185 wait_for_completion_interruptible +EXPORT_SYMBOL vmlinux 0x3096be16 names_cachep +EXPORT_SYMBOL vmlinux 0x309a13c1 of_graph_get_endpoint_by_regs +EXPORT_SYMBOL vmlinux 0x30a80826 __kfifo_from_user +EXPORT_SYMBOL vmlinux 0x30acfde9 hsiphash_2u32 +EXPORT_SYMBOL vmlinux 0x30bd1bd3 fb_show_logo +EXPORT_SYMBOL vmlinux 0x30bd34ba sock_set_priority +EXPORT_SYMBOL vmlinux 0x30c3595e napi_complete_done +EXPORT_SYMBOL vmlinux 0x30c6b841 nvm_alloc_dev +EXPORT_SYMBOL vmlinux 0x30d8d410 nf_log_unregister +EXPORT_SYMBOL vmlinux 0x30d9a471 gen_pool_create +EXPORT_SYMBOL vmlinux 0x30e104af security_socket_getpeersec_dgram +EXPORT_SYMBOL vmlinux 0x30e11a72 release_and_free_resource +EXPORT_SYMBOL vmlinux 0x30e2a037 unregister_tcf_proto_ops +EXPORT_SYMBOL vmlinux 0x30e72484 ipv6_sock_mc_drop +EXPORT_SYMBOL vmlinux 0x30e74134 tty_termios_copy_hw +EXPORT_SYMBOL vmlinux 0x3102d70b frontswap_curr_pages +EXPORT_SYMBOL vmlinux 0x31040d57 pskb_expand_head +EXPORT_SYMBOL vmlinux 0x3120814d pci_set_master +EXPORT_SYMBOL vmlinux 0x3126a9e8 siphash_1u64 +EXPORT_SYMBOL vmlinux 0x3132c06f pagevec_lookup_range_nr_tag +EXPORT_SYMBOL vmlinux 0x3135eaef tty_schedule_flip +EXPORT_SYMBOL vmlinux 0x313bc47a cfb_fillrect +EXPORT_SYMBOL vmlinux 0x3144f6d3 kmem_cache_alloc_trace +EXPORT_SYMBOL vmlinux 0x3145216f pci_dev_present +EXPORT_SYMBOL vmlinux 0x3147be84 pci_iomap +EXPORT_SYMBOL vmlinux 0x314b20c8 scnprintf +EXPORT_SYMBOL vmlinux 0x31891e4c utf8nagemin +EXPORT_SYMBOL vmlinux 0x31a4767f qcom_scm_hdcp_available +EXPORT_SYMBOL vmlinux 0x31a8d7ab fib_notifier_ops_register +EXPORT_SYMBOL vmlinux 0x31b31f5c csum_partial_copy_nocheck +EXPORT_SYMBOL vmlinux 0x31b50d21 _dev_notice +EXPORT_SYMBOL vmlinux 0x31bf6d87 file_write_and_wait_range +EXPORT_SYMBOL vmlinux 0x31c5d9b4 netdev_info +EXPORT_SYMBOL vmlinux 0x31c734c9 max8925_bulk_read +EXPORT_SYMBOL vmlinux 0x31d6f2c1 ns_capable_setid +EXPORT_SYMBOL vmlinux 0x31f0bb78 __kmap_atomic_idx +EXPORT_SYMBOL vmlinux 0x32138614 migrate_page_states +EXPORT_SYMBOL vmlinux 0x321a93b0 snd_ctl_find_id +EXPORT_SYMBOL vmlinux 0x322cbcef dquot_destroy +EXPORT_SYMBOL vmlinux 0x3231d129 register_key_type +EXPORT_SYMBOL vmlinux 0x32394d4b qe_issue_cmd +EXPORT_SYMBOL vmlinux 0x323ee8a7 current_in_userns +EXPORT_SYMBOL vmlinux 0x32412e90 fsync_bdev +EXPORT_SYMBOL vmlinux 0x3242e1fb clk_get +EXPORT_SYMBOL vmlinux 0x32430023 _totalhigh_pages +EXPORT_SYMBOL vmlinux 0x325e21e1 generic_file_direct_write +EXPORT_SYMBOL vmlinux 0x326115fc __fib6_flush_trees +EXPORT_SYMBOL vmlinux 0x32777d2a pci_get_subsys +EXPORT_SYMBOL vmlinux 0x327c84bf vme_lm_attach +EXPORT_SYMBOL vmlinux 0x3281fb74 ZSTD_compress_usingDict +EXPORT_SYMBOL vmlinux 0x3283e6b0 prandom_seed_full_state +EXPORT_SYMBOL vmlinux 0x328a05f1 strncpy +EXPORT_SYMBOL vmlinux 0x328ca60e tcp_v4_send_check +EXPORT_SYMBOL vmlinux 0x32996b77 pipe_unlock +EXPORT_SYMBOL vmlinux 0x32ce3777 radix_tree_preload +EXPORT_SYMBOL vmlinux 0x32e26108 scsi_report_bus_reset +EXPORT_SYMBOL vmlinux 0x32e6cbaf cdev_add +EXPORT_SYMBOL vmlinux 0x33022026 security_binder_transaction +EXPORT_SYMBOL vmlinux 0x3317461b phy_set_asym_pause +EXPORT_SYMBOL vmlinux 0x3327f153 rfkill_alloc +EXPORT_SYMBOL vmlinux 0x333c8c7d disk_end_io_acct +EXPORT_SYMBOL vmlinux 0x33447e9e pcie_get_mps +EXPORT_SYMBOL vmlinux 0x334a89ad mdiobus_free +EXPORT_SYMBOL vmlinux 0x3358e5ad bioset_init_from_src +EXPORT_SYMBOL vmlinux 0x337974a8 dev_alloc_name +EXPORT_SYMBOL vmlinux 0x3380fd69 find_get_pages_range_tag +EXPORT_SYMBOL vmlinux 0x339cb9ed proc_set_user +EXPORT_SYMBOL vmlinux 0x33a320e8 simple_transaction_read +EXPORT_SYMBOL vmlinux 0x33b76468 sock_init_data +EXPORT_SYMBOL vmlinux 0x33c09fde textsearch_destroy +EXPORT_SYMBOL vmlinux 0x33dbfd93 tcp_memory_allocated +EXPORT_SYMBOL vmlinux 0x33f0768c cpufreq_quick_get_max +EXPORT_SYMBOL vmlinux 0x33f4aaee netdev_set_tc_queue +EXPORT_SYMBOL vmlinux 0x3400958c clk_add_alias +EXPORT_SYMBOL vmlinux 0x3402eb3f of_find_i2c_adapter_by_node +EXPORT_SYMBOL vmlinux 0x34041fe1 km_policy_expired +EXPORT_SYMBOL vmlinux 0x341dbfa3 __per_cpu_offset +EXPORT_SYMBOL vmlinux 0x342b9051 cfb_copyarea +EXPORT_SYMBOL vmlinux 0x34429c34 blkdev_get_by_path +EXPORT_SYMBOL vmlinux 0x3445db12 vme_register_driver +EXPORT_SYMBOL vmlinux 0x344a10cc tcp_prot +EXPORT_SYMBOL vmlinux 0x34588742 __dev_kfree_skb_any +EXPORT_SYMBOL vmlinux 0x34596c35 of_find_matching_node_and_match +EXPORT_SYMBOL vmlinux 0x34616f74 tcf_idrinfo_destroy +EXPORT_SYMBOL vmlinux 0x346408cd iov_iter_pipe +EXPORT_SYMBOL vmlinux 0x34771e70 xp_dma_sync_for_cpu_slow +EXPORT_SYMBOL vmlinux 0x3479c720 filp_open +EXPORT_SYMBOL vmlinux 0x347ff556 phy_attach_direct +EXPORT_SYMBOL vmlinux 0x349b4277 xa_clear_mark +EXPORT_SYMBOL vmlinux 0x349cba85 strchr +EXPORT_SYMBOL vmlinux 0x34a04d71 radix_tree_delete_item +EXPORT_SYMBOL vmlinux 0x34b144d1 generic_block_fiemap +EXPORT_SYMBOL vmlinux 0x34bce2ed nand_read_oob_std +EXPORT_SYMBOL vmlinux 0x34c068dd ucc_slow_restart_tx +EXPORT_SYMBOL vmlinux 0x34c19275 simple_write_end +EXPORT_SYMBOL vmlinux 0x34c4cfa6 sock_no_sendpage_locked +EXPORT_SYMBOL vmlinux 0x34f3484e security_tun_dev_attach_queue +EXPORT_SYMBOL vmlinux 0x34fe8922 udp_lib_unhash +EXPORT_SYMBOL vmlinux 0x35037449 pci_ep_cfs_add_epc_group +EXPORT_SYMBOL vmlinux 0x3517383e register_reboot_notifier +EXPORT_SYMBOL vmlinux 0x352baefe tag_pages_for_writeback +EXPORT_SYMBOL vmlinux 0x352c05d9 release_resource +EXPORT_SYMBOL vmlinux 0x352dc779 __skb_get_hash +EXPORT_SYMBOL vmlinux 0x353205c3 ethtool_op_get_ts_info +EXPORT_SYMBOL vmlinux 0x353e3fa5 __get_user_4 +EXPORT_SYMBOL vmlinux 0x353ec7e9 scsi_register_driver +EXPORT_SYMBOL vmlinux 0x3544eae7 dev_mc_sync +EXPORT_SYMBOL vmlinux 0x3545701d ZSTD_compressBound +EXPORT_SYMBOL vmlinux 0x3548b858 ndisc_mc_map +EXPORT_SYMBOL vmlinux 0x3560d24b pci_read_vpd +EXPORT_SYMBOL vmlinux 0x3560e651 kmemdup_nul +EXPORT_SYMBOL vmlinux 0x356461c8 rtc_time64_to_tm +EXPORT_SYMBOL vmlinux 0x3565e9f6 seq_vprintf +EXPORT_SYMBOL vmlinux 0x35696cb2 hdmi_infoframe_unpack +EXPORT_SYMBOL vmlinux 0x356d3a5b pci_msix_vec_count +EXPORT_SYMBOL vmlinux 0x356d741b scsi_get_device_flags_keyed +EXPORT_SYMBOL vmlinux 0x3584d524 pcix_get_max_mmrbc +EXPORT_SYMBOL vmlinux 0x35a481e7 blkdev_issue_write_same +EXPORT_SYMBOL vmlinux 0x35a88f28 zlib_inflateInit2 +EXPORT_SYMBOL vmlinux 0x35bbe6c4 sync_dirty_buffer +EXPORT_SYMBOL vmlinux 0x35bdc817 ZSTD_getBlockSizeMax +EXPORT_SYMBOL vmlinux 0x35c03b5e rproc_of_resm_mem_entry_init +EXPORT_SYMBOL vmlinux 0x35cfe6ca __xfrm_init_state +EXPORT_SYMBOL vmlinux 0x35ea78f5 atomic_io_modify_relaxed +EXPORT_SYMBOL vmlinux 0x35f47969 fscrypt_inherit_context +EXPORT_SYMBOL vmlinux 0x3607e1fe __seq_open_private +EXPORT_SYMBOL vmlinux 0x360b1afe probe_irq_mask +EXPORT_SYMBOL vmlinux 0x3612c10f tmio_core_mmc_enable +EXPORT_SYMBOL vmlinux 0x361396e1 clear_nlink +EXPORT_SYMBOL vmlinux 0x36150e84 __ip4_datagram_connect +EXPORT_SYMBOL vmlinux 0x3616609c __netlink_ns_capable +EXPORT_SYMBOL vmlinux 0x3623788a ps2_handle_ack +EXPORT_SYMBOL vmlinux 0x3627bf2c netlink_ns_capable +EXPORT_SYMBOL vmlinux 0x363ad8d5 i2c_smbus_xfer +EXPORT_SYMBOL vmlinux 0x363c18dd tegra_dfll_resume +EXPORT_SYMBOL vmlinux 0x364e7989 __serio_register_driver +EXPORT_SYMBOL vmlinux 0x3656c550 call_usermodehelper_exec +EXPORT_SYMBOL vmlinux 0x36588e6a tcp_hashinfo +EXPORT_SYMBOL vmlinux 0x365acda7 set_normalized_timespec64 +EXPORT_SYMBOL vmlinux 0x365e7911 kstrdup_const +EXPORT_SYMBOL vmlinux 0x36723874 task_work_add +EXPORT_SYMBOL vmlinux 0x3672bd44 xfrm_state_unregister_afinfo +EXPORT_SYMBOL vmlinux 0x3675f8d9 xfrm_policy_walk_done +EXPORT_SYMBOL vmlinux 0x36799ec2 param_set_charp +EXPORT_SYMBOL vmlinux 0x3690c47a padata_start +EXPORT_SYMBOL vmlinux 0x369a2bcb __tracepoint_spi_transfer_stop +EXPORT_SYMBOL vmlinux 0x36ac219c pci_alloc_dev +EXPORT_SYMBOL vmlinux 0x36b13bd8 dma_set_mask +EXPORT_SYMBOL vmlinux 0x36b6c121 xfrm_state_lookup +EXPORT_SYMBOL vmlinux 0x36ceec24 config_group_find_item +EXPORT_SYMBOL vmlinux 0x36d69557 ipv6_flowlabel_exclusive +EXPORT_SYMBOL vmlinux 0x36dad99c call_usermodehelper_setup +EXPORT_SYMBOL vmlinux 0x36e1e491 ipv6_dev_mc_inc +EXPORT_SYMBOL vmlinux 0x36fd98fe get_user_pages_unlocked +EXPORT_SYMBOL vmlinux 0x37092874 xfrm6_find_1stfragopt +EXPORT_SYMBOL vmlinux 0x372c4f13 set_security_override +EXPORT_SYMBOL vmlinux 0x3735538e vmf_insert_pfn +EXPORT_SYMBOL vmlinux 0x374046a2 __skb_recv_udp +EXPORT_SYMBOL vmlinux 0x3744cf36 vmalloc_to_pfn +EXPORT_SYMBOL vmlinux 0x3748dc5c pci_prepare_to_sleep +EXPORT_SYMBOL vmlinux 0x374b47eb ZSTD_findDecompressedSize +EXPORT_SYMBOL vmlinux 0x3755f990 gf128mul_init_64k_bbe +EXPORT_SYMBOL vmlinux 0x375a2c5f vfs_rmdir +EXPORT_SYMBOL vmlinux 0x375c267f snd_pcm_lib_free_vmalloc_buffer +EXPORT_SYMBOL vmlinux 0x375d216d write_one_page +EXPORT_SYMBOL vmlinux 0x377c55df from_kgid +EXPORT_SYMBOL vmlinux 0x3796bdcc snd_pcm_format_little_endian +EXPORT_SYMBOL vmlinux 0x379ae745 write_dirty_buffer +EXPORT_SYMBOL vmlinux 0x37a6c054 of_device_is_compatible +EXPORT_SYMBOL vmlinux 0x37a771f4 jbd2_journal_revoke +EXPORT_SYMBOL vmlinux 0x37a83188 scsi_report_device_reset +EXPORT_SYMBOL vmlinux 0x37af3190 dm_table_run_md_queue_async +EXPORT_SYMBOL vmlinux 0x37befc70 jiffies_to_msecs +EXPORT_SYMBOL vmlinux 0x37c8f8ab __i2c_transfer +EXPORT_SYMBOL vmlinux 0x37d06b15 tty_port_carrier_raised +EXPORT_SYMBOL vmlinux 0x37d3275b devm_clk_release_clkdev +EXPORT_SYMBOL vmlinux 0x37db8f19 dmi_get_date +EXPORT_SYMBOL vmlinux 0x37f06341 of_graph_get_next_endpoint +EXPORT_SYMBOL vmlinux 0x37f2f01d nf_hook_slow_list +EXPORT_SYMBOL vmlinux 0x37f614b7 __kfifo_len_r +EXPORT_SYMBOL vmlinux 0x3802bacc pm860x_reg_write +EXPORT_SYMBOL vmlinux 0x3807430c param_get_string +EXPORT_SYMBOL vmlinux 0x38179c03 find_lock_entry +EXPORT_SYMBOL vmlinux 0x381a798a setup_max_cpus +EXPORT_SYMBOL vmlinux 0x3842b3a6 unix_gc_lock +EXPORT_SYMBOL vmlinux 0x3869afdf blk_put_queue +EXPORT_SYMBOL vmlinux 0x386d9ce9 radix_tree_lookup +EXPORT_SYMBOL vmlinux 0x386e1614 km_state_notify +EXPORT_SYMBOL vmlinux 0x38869d88 kstat +EXPORT_SYMBOL vmlinux 0x3891ffc8 ecryptfs_fill_auth_tok +EXPORT_SYMBOL vmlinux 0x389acf0c gpmc_configure +EXPORT_SYMBOL vmlinux 0x389ecf9e __bswapdi2 +EXPORT_SYMBOL vmlinux 0x38a71b7e pci_free_resource_list +EXPORT_SYMBOL vmlinux 0x38a9f7c5 in6addr_loopback +EXPORT_SYMBOL vmlinux 0x38b9bb93 sock_no_listen +EXPORT_SYMBOL vmlinux 0x38c1ea37 skb_copy_and_csum_bits +EXPORT_SYMBOL vmlinux 0x38d9ea97 sock_no_setsockopt +EXPORT_SYMBOL vmlinux 0x38da7157 add_to_pipe +EXPORT_SYMBOL vmlinux 0x38e0feb4 __scsi_iterate_devices +EXPORT_SYMBOL vmlinux 0x3910cddd snd_pcm_hw_rule_add +EXPORT_SYMBOL vmlinux 0x39110027 dev_uc_del +EXPORT_SYMBOL vmlinux 0x39189d73 dcbnl_ieee_notify +EXPORT_SYMBOL vmlinux 0x392a1c9a of_graph_get_port_parent +EXPORT_SYMBOL vmlinux 0x3939f8f0 rfkill_pause_polling +EXPORT_SYMBOL vmlinux 0x393cdc40 tty_port_close_end +EXPORT_SYMBOL vmlinux 0x39417c90 tegra_dfll_unregister +EXPORT_SYMBOL vmlinux 0x39461d6a in_egroup_p +EXPORT_SYMBOL vmlinux 0x394a1e11 phy_sfp_attach +EXPORT_SYMBOL vmlinux 0x3971b4df snd_ecards_limit +EXPORT_SYMBOL vmlinux 0x3992bc63 __xa_set_mark +EXPORT_SYMBOL vmlinux 0x39991865 icmp_global_allow +EXPORT_SYMBOL vmlinux 0x39a12ca7 _raw_spin_unlock_irqrestore +EXPORT_SYMBOL vmlinux 0x39a5ac26 tcp_enter_quickack_mode +EXPORT_SYMBOL vmlinux 0x39b52d19 __bitmap_and +EXPORT_SYMBOL vmlinux 0x39bf9301 _snd_pcm_hw_param_setempty +EXPORT_SYMBOL vmlinux 0x39c77e32 blk_queue_bounce_limit +EXPORT_SYMBOL vmlinux 0x39c88fd5 flush_rcu_work +EXPORT_SYMBOL vmlinux 0x39c989f5 iov_iter_fault_in_readable +EXPORT_SYMBOL vmlinux 0x39db1228 ip_do_fragment +EXPORT_SYMBOL vmlinux 0x39fd250a phy_do_ioctl_running +EXPORT_SYMBOL vmlinux 0x3a21e4a4 __blkdev_issue_discard +EXPORT_SYMBOL vmlinux 0x3a4f9d28 rng_is_initialized +EXPORT_SYMBOL vmlinux 0x3a7738c1 tcp_time_wait +EXPORT_SYMBOL vmlinux 0x3a86678e rtnl_notify +EXPORT_SYMBOL vmlinux 0x3a917281 devfreq_unregister_notifier +EXPORT_SYMBOL vmlinux 0x3aa5728d pci_disable_link_state_locked +EXPORT_SYMBOL vmlinux 0x3aa969ef of_find_mipi_dsi_host_by_node +EXPORT_SYMBOL vmlinux 0x3ab7b1cc scsi_set_sense_field_pointer +EXPORT_SYMBOL vmlinux 0x3abe991c param_set_uint +EXPORT_SYMBOL vmlinux 0x3ad6fd8e krait_get_l2_indirect_reg +EXPORT_SYMBOL vmlinux 0x3adf5af2 nla_reserve_64bit +EXPORT_SYMBOL vmlinux 0x3af9cafa __bio_clone_fast +EXPORT_SYMBOL vmlinux 0x3b064668 tcf_exts_dump_stats +EXPORT_SYMBOL vmlinux 0x3b0b65fc fwnode_get_mac_address +EXPORT_SYMBOL vmlinux 0x3b15a62e of_get_next_available_child +EXPORT_SYMBOL vmlinux 0x3b209a35 ZSTD_compressBegin +EXPORT_SYMBOL vmlinux 0x3b299067 percpu_counter_set +EXPORT_SYMBOL vmlinux 0x3b2f0aa3 md_handle_request +EXPORT_SYMBOL vmlinux 0x3b35f048 dev_get_flags +EXPORT_SYMBOL vmlinux 0x3b644591 __bitmap_shift_left +EXPORT_SYMBOL vmlinux 0x3b648100 secure_tcpv6_ts_off +EXPORT_SYMBOL vmlinux 0x3b697738 _raw_read_lock +EXPORT_SYMBOL vmlinux 0x3b6f3d61 vfs_clone_file_range +EXPORT_SYMBOL vmlinux 0x3bb7eef9 in6_dev_finish_destroy +EXPORT_SYMBOL vmlinux 0x3bbf46ea vga_base +EXPORT_SYMBOL vmlinux 0x3bc2bb37 flow_block_cb_setup_simple +EXPORT_SYMBOL vmlinux 0x3bccb66e register_mtd_chip_driver +EXPORT_SYMBOL vmlinux 0x3be3c927 vfs_statfs +EXPORT_SYMBOL vmlinux 0x3be7643e security_xfrm_policy_free +EXPORT_SYMBOL vmlinux 0x3c13746a f_setown +EXPORT_SYMBOL vmlinux 0x3c16acb4 fifo_create_dflt +EXPORT_SYMBOL vmlinux 0x3c185c61 page_put_link +EXPORT_SYMBOL vmlinux 0x3c27681e omap_rtc_power_off_program +EXPORT_SYMBOL vmlinux 0x3c3215c4 qe_immr +EXPORT_SYMBOL vmlinux 0x3c3fce39 __local_bh_enable_ip +EXPORT_SYMBOL vmlinux 0x3c3ff9fd sprintf +EXPORT_SYMBOL vmlinux 0x3c4f2f0e __phy_write_mmd +EXPORT_SYMBOL vmlinux 0x3c80c06c kstrtoull +EXPORT_SYMBOL vmlinux 0x3c9382ab of_find_all_nodes +EXPORT_SYMBOL vmlinux 0x3ca3a0a9 tc_cleanup_flow_action +EXPORT_SYMBOL vmlinux 0x3cb8963a of_get_child_by_name +EXPORT_SYMBOL vmlinux 0x3ce4ca6f disable_irq +EXPORT_SYMBOL vmlinux 0x3d0c3f54 dentry_open +EXPORT_SYMBOL vmlinux 0x3d1777a6 unregister_mtd_chip_driver +EXPORT_SYMBOL vmlinux 0x3d248e54 netdev_adjacent_change_commit +EXPORT_SYMBOL vmlinux 0x3d34ec82 pci_dev_put +EXPORT_SYMBOL vmlinux 0x3d3c540f elf_hwcap +EXPORT_SYMBOL vmlinux 0x3d56448c pci_request_irq +EXPORT_SYMBOL vmlinux 0x3d56e7b3 utf8_unload +EXPORT_SYMBOL vmlinux 0x3d8b01a5 pci_scan_bridge +EXPORT_SYMBOL vmlinux 0x3d94885b i2c_smbus_read_word_data +EXPORT_SYMBOL vmlinux 0x3daba25d new_inode +EXPORT_SYMBOL vmlinux 0x3dcb88a0 irq_set_handler_data +EXPORT_SYMBOL vmlinux 0x3dcf1ffa __wake_up +EXPORT_SYMBOL vmlinux 0x3dd033b0 cros_ec_prepare_tx +EXPORT_SYMBOL vmlinux 0x3dd878a0 hdmi_avi_infoframe_pack_only +EXPORT_SYMBOL vmlinux 0x3deb3a5c fb_prepare_logo +EXPORT_SYMBOL vmlinux 0x3df0de5f dm_io +EXPORT_SYMBOL vmlinux 0x3dfc897c seq_hlist_start_head +EXPORT_SYMBOL vmlinux 0x3e1e489d xfrm_unregister_type +EXPORT_SYMBOL vmlinux 0x3e20bf68 vfs_iter_write +EXPORT_SYMBOL vmlinux 0x3e2b0ba6 groups_alloc +EXPORT_SYMBOL vmlinux 0x3e2f1636 filemap_range_has_page +EXPORT_SYMBOL vmlinux 0x3e3387ac kmem_cache_shrink +EXPORT_SYMBOL vmlinux 0x3e443b7e param_get_long +EXPORT_SYMBOL vmlinux 0x3e553e7c tcf_block_put_ext +EXPORT_SYMBOL vmlinux 0x3e83ad9d lock_page_memcg +EXPORT_SYMBOL vmlinux 0x3e9110fa __hw_addr_unsync +EXPORT_SYMBOL vmlinux 0x3e94019e key_move +EXPORT_SYMBOL vmlinux 0x3e95e3c3 xfrm6_input_addr +EXPORT_SYMBOL vmlinux 0x3ebebc8f fscrypt_ioctl_set_policy +EXPORT_SYMBOL vmlinux 0x3ed104a5 xa_set_mark +EXPORT_SYMBOL vmlinux 0x3ee3d27f fscrypt_get_encryption_info +EXPORT_SYMBOL vmlinux 0x3eedad63 _copy_to_iter +EXPORT_SYMBOL vmlinux 0x3efe1703 phy_unregister_fixup_for_id +EXPORT_SYMBOL vmlinux 0x3f0317b0 mdio_device_free +EXPORT_SYMBOL vmlinux 0x3f0765ee mipi_dsi_dcs_set_column_address +EXPORT_SYMBOL vmlinux 0x3f09da50 max8998_write_reg +EXPORT_SYMBOL vmlinux 0x3f1890b2 dmam_pool_create +EXPORT_SYMBOL vmlinux 0x3f1f9420 mipi_dsi_dcs_set_page_address +EXPORT_SYMBOL vmlinux 0x3f3f443a skb_add_rx_frag +EXPORT_SYMBOL vmlinux 0x3f4547a7 put_unused_fd +EXPORT_SYMBOL vmlinux 0x3f4af46f gen_pool_first_fit_order_align +EXPORT_SYMBOL vmlinux 0x3f4bf22f devm_rproc_alloc +EXPORT_SYMBOL vmlinux 0x3f534e94 netlink_net_capable +EXPORT_SYMBOL vmlinux 0x3f62d048 dma_fence_init +EXPORT_SYMBOL vmlinux 0x3f68258b flow_rule_match_enc_ipv6_addrs +EXPORT_SYMBOL vmlinux 0x3f70a2f4 release_pages +EXPORT_SYMBOL vmlinux 0x3f7433a6 pagecache_write_end +EXPORT_SYMBOL vmlinux 0x3f88c8ae refcount_dec_and_lock +EXPORT_SYMBOL vmlinux 0x3f89071b security_ib_pkey_access +EXPORT_SYMBOL vmlinux 0x3fae3207 dcb_ieee_getapp_dscp_prio_mask_map +EXPORT_SYMBOL vmlinux 0x3fbaa6f2 adjust_managed_page_count +EXPORT_SYMBOL vmlinux 0x3fc12501 md_bitmap_update_sb +EXPORT_SYMBOL vmlinux 0x3fc6b407 elevator_alloc +EXPORT_SYMBOL vmlinux 0x3fcdded6 of_mdiobus_register +EXPORT_SYMBOL vmlinux 0x3fd07298 nvm_unregister_tgt_type +EXPORT_SYMBOL vmlinux 0x3fd78f3b register_chrdev_region +EXPORT_SYMBOL vmlinux 0x3fea538c hdmi_avi_infoframe_pack +EXPORT_SYMBOL vmlinux 0x4011fe92 padata_alloc_possible +EXPORT_SYMBOL vmlinux 0x40142cf4 netdev_lower_get_first_private_rcu +EXPORT_SYMBOL vmlinux 0x402d8d27 nand_monolithic_read_page_raw +EXPORT_SYMBOL vmlinux 0x403a93e7 radix_tree_gang_lookup_tag +EXPORT_SYMBOL vmlinux 0x4040b83d generic_file_llseek_size +EXPORT_SYMBOL vmlinux 0x4041504d blk_integrity_compare +EXPORT_SYMBOL vmlinux 0x4043a937 scsi_print_result +EXPORT_SYMBOL vmlinux 0x40481507 generic_copy_file_range +EXPORT_SYMBOL vmlinux 0x4059792f print_hex_dump +EXPORT_SYMBOL vmlinux 0x405e9cdc phy_attached_print +EXPORT_SYMBOL vmlinux 0x407136b1 __put_user_8 +EXPORT_SYMBOL vmlinux 0x407a3275 omap_start_dma +EXPORT_SYMBOL vmlinux 0x40856f3d kernel_recvmsg +EXPORT_SYMBOL vmlinux 0x40968caa dst_release +EXPORT_SYMBOL vmlinux 0x40973662 sysctl_udp_mem +EXPORT_SYMBOL vmlinux 0x409873e3 tty_termios_baud_rate +EXPORT_SYMBOL vmlinux 0x40a9b349 vzalloc +EXPORT_SYMBOL vmlinux 0x40ad62ed ip6_dst_hoplimit +EXPORT_SYMBOL vmlinux 0x40b33aed release_sock +EXPORT_SYMBOL vmlinux 0x40b51c05 __sysfs_match_string +EXPORT_SYMBOL vmlinux 0x40c5e620 mmc_can_secure_erase_trim +EXPORT_SYMBOL vmlinux 0x40c7247c si_meminfo +EXPORT_SYMBOL vmlinux 0x40c90a26 sock_set_reuseport +EXPORT_SYMBOL vmlinux 0x40cfe438 inet_csk_reqsk_queue_drop_and_put +EXPORT_SYMBOL vmlinux 0x40d04664 console_trylock +EXPORT_SYMBOL vmlinux 0x40d402ad do_wait_intr +EXPORT_SYMBOL vmlinux 0x40d59096 unregister_restart_handler +EXPORT_SYMBOL vmlinux 0x40f07981 __ashldi3 +EXPORT_SYMBOL vmlinux 0x41013957 vme_bus_error_handler +EXPORT_SYMBOL vmlinux 0x412404a0 pcibios_resource_to_bus +EXPORT_SYMBOL vmlinux 0x41283c2e security_unix_stream_connect +EXPORT_SYMBOL vmlinux 0x412970ec __generic_file_write_iter +EXPORT_SYMBOL vmlinux 0x41482d8b strndup_user +EXPORT_SYMBOL vmlinux 0x41495d19 simple_transaction_set +EXPORT_SYMBOL vmlinux 0x414975dd __genradix_prealloc +EXPORT_SYMBOL vmlinux 0x41537e5d path_is_mountpoint +EXPORT_SYMBOL vmlinux 0x4158306c generic_listxattr +EXPORT_SYMBOL vmlinux 0x4173ba83 ppp_unregister_channel +EXPORT_SYMBOL vmlinux 0x417b15f4 read_cache_pages +EXPORT_SYMBOL vmlinux 0x4183f057 generic_writepages +EXPORT_SYMBOL vmlinux 0x4188d439 neigh_rand_reach_time +EXPORT_SYMBOL vmlinux 0x418a5367 __scsi_format_command +EXPORT_SYMBOL vmlinux 0x41acaca6 md_bitmap_free +EXPORT_SYMBOL vmlinux 0x41bb84fc dma_fence_remove_callback +EXPORT_SYMBOL vmlinux 0x41d3bc95 dentry_path_raw +EXPORT_SYMBOL vmlinux 0x41e56a18 ZSTD_checkCParams +EXPORT_SYMBOL vmlinux 0x41e84ac1 mmc_gpiod_request_cd +EXPORT_SYMBOL vmlinux 0x41f005b4 xsk_umem_consume_tx +EXPORT_SYMBOL vmlinux 0x41f3775c kernel_sendpage +EXPORT_SYMBOL vmlinux 0x42022a23 amba_device_register +EXPORT_SYMBOL vmlinux 0x4203238f blk_register_region +EXPORT_SYMBOL vmlinux 0x4205b9c0 dcbnl_cee_notify +EXPORT_SYMBOL vmlinux 0x4209cbf9 tty_vhangup +EXPORT_SYMBOL vmlinux 0x420da01b dev_add_offload +EXPORT_SYMBOL vmlinux 0x42160169 flush_workqueue +EXPORT_SYMBOL vmlinux 0x42260b42 tcp_setsockopt +EXPORT_SYMBOL vmlinux 0x423a6e13 phy_register_fixup +EXPORT_SYMBOL vmlinux 0x42443b65 register_netdevice +EXPORT_SYMBOL vmlinux 0x42450512 sget_fc +EXPORT_SYMBOL vmlinux 0x4248ae3c single_task_running +EXPORT_SYMBOL vmlinux 0x424d3620 zlib_inflateIncomp +EXPORT_SYMBOL vmlinux 0x4253aa7e down_write +EXPORT_SYMBOL vmlinux 0x42604384 ucs2_strncmp +EXPORT_SYMBOL vmlinux 0x42798c6e devm_extcon_register_notifier +EXPORT_SYMBOL vmlinux 0x428ce1cc flow_rule_match_enc_control +EXPORT_SYMBOL vmlinux 0x42927685 vfs_fsync_range +EXPORT_SYMBOL vmlinux 0x42939ccd flow_block_cb_incref +EXPORT_SYMBOL vmlinux 0x4298b775 v7_flush_kern_cache_all +EXPORT_SYMBOL vmlinux 0x42a619b0 neigh_parms_release +EXPORT_SYMBOL vmlinux 0x42ab7d8a of_find_node_by_type +EXPORT_SYMBOL vmlinux 0x42cc9d7c blk_mq_unique_tag +EXPORT_SYMBOL vmlinux 0x42d65ecd __block_write_full_page +EXPORT_SYMBOL vmlinux 0x42f1b900 fb_pad_unaligned_buffer +EXPORT_SYMBOL vmlinux 0x4302d0eb free_pages +EXPORT_SYMBOL vmlinux 0x430a13b6 cdrom_check_events +EXPORT_SYMBOL vmlinux 0x430e2bc5 alloc_anon_inode +EXPORT_SYMBOL vmlinux 0x43172335 eth_header_cache_update +EXPORT_SYMBOL vmlinux 0x43186101 dmaengine_get_unmap_data +EXPORT_SYMBOL vmlinux 0x432c9147 uart_write_wakeup +EXPORT_SYMBOL vmlinux 0x4336fcca ucs2_as_utf8 +EXPORT_SYMBOL vmlinux 0x43383ac4 tso_start +EXPORT_SYMBOL vmlinux 0x433a1a88 ptp_clock_index +EXPORT_SYMBOL vmlinux 0x4351577a fb_parse_edid +EXPORT_SYMBOL vmlinux 0x435b4de4 jbd2_journal_restart +EXPORT_SYMBOL vmlinux 0x436013b7 md_done_sync +EXPORT_SYMBOL vmlinux 0x436f317d unregister_qdisc +EXPORT_SYMBOL vmlinux 0x4371159c tegra_ivc_reset +EXPORT_SYMBOL vmlinux 0x437a0d6d __sock_tx_timestamp +EXPORT_SYMBOL vmlinux 0x437e7777 fifo_set_limit +EXPORT_SYMBOL vmlinux 0x43825fa9 phys_mem_access_prot +EXPORT_SYMBOL vmlinux 0x4384eb42 __release_region +EXPORT_SYMBOL vmlinux 0x43856fea dev_disable_lro +EXPORT_SYMBOL vmlinux 0x438610bd security_tun_dev_alloc_security +EXPORT_SYMBOL vmlinux 0x43922e07 scsi_remove_host +EXPORT_SYMBOL vmlinux 0x4399f5f8 dev_get_stats +EXPORT_SYMBOL vmlinux 0x43a38358 setup_arg_pages +EXPORT_SYMBOL vmlinux 0x43a76cad nvm_end_io +EXPORT_SYMBOL vmlinux 0x43c9b5d5 vme_unregister_bridge +EXPORT_SYMBOL vmlinux 0x43d398f3 of_graph_get_port_by_id +EXPORT_SYMBOL vmlinux 0x43f06e38 locks_lock_inode_wait +EXPORT_SYMBOL vmlinux 0x43f4b0e1 pcie_get_speed_cap +EXPORT_SYMBOL vmlinux 0x43fa4cc9 blk_put_request +EXPORT_SYMBOL vmlinux 0x4403bbd0 imx_sc_misc_set_control +EXPORT_SYMBOL vmlinux 0x44139d75 mipi_dsi_dcs_write +EXPORT_SYMBOL vmlinux 0x442495c9 tmio_core_mmc_resume +EXPORT_SYMBOL vmlinux 0x44257722 request_key_with_auxdata +EXPORT_SYMBOL vmlinux 0x442d39e5 blk_queue_update_dma_alignment +EXPORT_SYMBOL vmlinux 0x44327b95 tcp_v4_md5_hash_skb +EXPORT_SYMBOL vmlinux 0x44366cfc simple_write_to_buffer +EXPORT_SYMBOL vmlinux 0x44469a76 crc_ccitt_false_table +EXPORT_SYMBOL vmlinux 0x444cc8ed tcp_md5_needed +EXPORT_SYMBOL vmlinux 0x4462d35e cpufreq_get_hw_max_freq +EXPORT_SYMBOL vmlinux 0x44643b93 __aeabi_lmul +EXPORT_SYMBOL vmlinux 0x44794b99 flow_rule_alloc +EXPORT_SYMBOL vmlinux 0x44801691 cdrom_get_last_written +EXPORT_SYMBOL vmlinux 0x448a872a fwnode_irq_get +EXPORT_SYMBOL vmlinux 0x448c5d44 init_special_inode +EXPORT_SYMBOL vmlinux 0x44a6e90a irq_cpu_rmap_add +EXPORT_SYMBOL vmlinux 0x44b83240 ucc_of_parse_tdm +EXPORT_SYMBOL vmlinux 0x44bbbb55 mipi_dsi_dcs_enter_sleep_mode +EXPORT_SYMBOL vmlinux 0x44c9dc6c percpu_counter_destroy +EXPORT_SYMBOL vmlinux 0x44ce4a4a fscrypt_encrypt_pagecache_blocks +EXPORT_SYMBOL vmlinux 0x44d019e4 mr_vif_seq_next +EXPORT_SYMBOL vmlinux 0x44da5d0f __csum_ipv6_magic +EXPORT_SYMBOL vmlinux 0x44e8ff17 mipi_dsi_set_maximum_return_packet_size +EXPORT_SYMBOL vmlinux 0x44e9a829 match_token +EXPORT_SYMBOL vmlinux 0x44eb1fc6 pci_back_from_sleep +EXPORT_SYMBOL vmlinux 0x45006cee default_red +EXPORT_SYMBOL vmlinux 0x45028784 ppp_input +EXPORT_SYMBOL vmlinux 0x450d9a35 cmd_db_read_slave_id +EXPORT_SYMBOL vmlinux 0x452ba683 ipv6_ext_hdr +EXPORT_SYMBOL vmlinux 0x4534ec78 skb_dequeue_tail +EXPORT_SYMBOL vmlinux 0x453c8403 pci_msi_enabled +EXPORT_SYMBOL vmlinux 0x453e3a29 blk_set_runtime_active +EXPORT_SYMBOL vmlinux 0x4562a134 __tracepoint_kmem_cache_free +EXPORT_SYMBOL vmlinux 0x4564a798 inc_node_page_state +EXPORT_SYMBOL vmlinux 0x45785133 add_watch_to_object +EXPORT_SYMBOL vmlinux 0x4578f528 __kfifo_to_user +EXPORT_SYMBOL vmlinux 0x4590d1e4 add_to_page_cache_locked +EXPORT_SYMBOL vmlinux 0x4597deb3 phy_init_eee +EXPORT_SYMBOL vmlinux 0x45a56b43 fbcon_rotate_cw +EXPORT_SYMBOL vmlinux 0x45b1319d sk_capable +EXPORT_SYMBOL vmlinux 0x45bd11d4 devm_iounmap +EXPORT_SYMBOL vmlinux 0x45bda0d5 system_serial_low +EXPORT_SYMBOL vmlinux 0x45dabcd8 dev_lstats_read +EXPORT_SYMBOL vmlinux 0x46045dd7 kstrtou8 +EXPORT_SYMBOL vmlinux 0x46119000 kset_unregister +EXPORT_SYMBOL vmlinux 0x461eb46a blk_mq_rq_cpu +EXPORT_SYMBOL vmlinux 0x462a2e75 match_strlcpy +EXPORT_SYMBOL vmlinux 0x462aa82c xfrm_state_flush +EXPORT_SYMBOL vmlinux 0x463034f0 sdev_disable_disk_events +EXPORT_SYMBOL vmlinux 0x463aaab0 __post_watch_notification +EXPORT_SYMBOL vmlinux 0x464f1a90 dev_pick_tx_zero +EXPORT_SYMBOL vmlinux 0x4656a687 con_set_default_unimap +EXPORT_SYMBOL vmlinux 0x465e24ff ucs2_utf8size +EXPORT_SYMBOL vmlinux 0x465fef6f tegra_ivc_init +EXPORT_SYMBOL vmlinux 0x46801258 tcp_seq_start +EXPORT_SYMBOL vmlinux 0x4680fb69 scsi_add_host_with_dma +EXPORT_SYMBOL vmlinux 0x4683a920 dqput +EXPORT_SYMBOL vmlinux 0x469a6ec7 tcp_parse_md5sig_option +EXPORT_SYMBOL vmlinux 0x469ab5bb bd_set_size +EXPORT_SYMBOL vmlinux 0x46bfe1b0 prepare_to_wait_exclusive +EXPORT_SYMBOL vmlinux 0x46c69d4a __dquot_transfer +EXPORT_SYMBOL vmlinux 0x46d039bf netdev_crit +EXPORT_SYMBOL vmlinux 0x46d3b28c __div0 +EXPORT_SYMBOL vmlinux 0x46f5969a scmd_printk +EXPORT_SYMBOL vmlinux 0x47096ad6 end_buffer_read_sync +EXPORT_SYMBOL vmlinux 0x471f11fc jbd2_journal_errno +EXPORT_SYMBOL vmlinux 0x4721d747 pci_request_selected_regions +EXPORT_SYMBOL vmlinux 0x4756260d ida_destroy +EXPORT_SYMBOL vmlinux 0x475d84ef gen_pool_dma_alloc_algo +EXPORT_SYMBOL vmlinux 0x47709e42 free_anon_bdev +EXPORT_SYMBOL vmlinux 0x478d9b84 ZSTD_isFrame +EXPORT_SYMBOL vmlinux 0x479137ca imx_scu_irq_unregister_notifier +EXPORT_SYMBOL vmlinux 0x47939e0d __tasklet_hi_schedule +EXPORT_SYMBOL vmlinux 0x4798adaf try_module_get +EXPORT_SYMBOL vmlinux 0x47a0cdcb mb_cache_entry_find_next +EXPORT_SYMBOL vmlinux 0x47a8c5ee remap_vmalloc_range +EXPORT_SYMBOL vmlinux 0x47b16df3 __tty_insert_flip_char +EXPORT_SYMBOL vmlinux 0x47b3d8f5 sock_recv_errqueue +EXPORT_SYMBOL vmlinux 0x47c65bfc unregister_inet6addr_validator_notifier +EXPORT_SYMBOL vmlinux 0x47cb8f9d padata_stop +EXPORT_SYMBOL vmlinux 0x47d96bc2 __sg_alloc_table_from_pages +EXPORT_SYMBOL vmlinux 0x47e70229 v7_flush_user_cache_range +EXPORT_SYMBOL vmlinux 0x47f26c2b pm8606_osc_enable +EXPORT_SYMBOL vmlinux 0x47f757de elf_platform +EXPORT_SYMBOL vmlinux 0x4824fdb0 phy_register_fixup_for_uid +EXPORT_SYMBOL vmlinux 0x4829783e ip_sock_set_mtu_discover +EXPORT_SYMBOL vmlinux 0x482fbcb5 would_dump +EXPORT_SYMBOL vmlinux 0x48419d69 ping_prot +EXPORT_SYMBOL vmlinux 0x4848cfb1 phy_mipi_dphy_get_default_config +EXPORT_SYMBOL vmlinux 0x484a97dd dma_async_tx_descriptor_init +EXPORT_SYMBOL vmlinux 0x484f6edf ktime_get_coarse_real_ts64 +EXPORT_SYMBOL vmlinux 0x48562431 uart_register_driver +EXPORT_SYMBOL vmlinux 0x4859b8bb rtc_year_days +EXPORT_SYMBOL vmlinux 0x4871d75d clk_hw_register_clkdev +EXPORT_SYMBOL vmlinux 0x487ee240 __nla_put_nohdr +EXPORT_SYMBOL vmlinux 0x48869b41 import_iovec +EXPORT_SYMBOL vmlinux 0x48a5b067 __machine_arch_type +EXPORT_SYMBOL vmlinux 0x48a91171 string_get_size +EXPORT_SYMBOL vmlinux 0x48b99a13 vme_lm_free +EXPORT_SYMBOL vmlinux 0x48b9e466 devm_alloc_etherdev_mqs +EXPORT_SYMBOL vmlinux 0x48bb80db hex2bin +EXPORT_SYMBOL vmlinux 0x48cf6a64 dm_put_device +EXPORT_SYMBOL vmlinux 0x48d6cab2 genphy_read_abilities +EXPORT_SYMBOL vmlinux 0x49045426 icmp_err_convert +EXPORT_SYMBOL vmlinux 0x49090975 cros_ec_cmd_xfer_status +EXPORT_SYMBOL vmlinux 0x490f9247 blackhole_netdev +EXPORT_SYMBOL vmlinux 0x494b42a7 flow_rule_match_meta +EXPORT_SYMBOL vmlinux 0x495bc98b mdio_find_bus +EXPORT_SYMBOL vmlinux 0x496d00ce simple_getattr +EXPORT_SYMBOL vmlinux 0x4982f418 rproc_da_to_va +EXPORT_SYMBOL vmlinux 0x498d6cc3 __napi_schedule +EXPORT_SYMBOL vmlinux 0x49970de8 finish_wait +EXPORT_SYMBOL vmlinux 0x49b1cdbb pci_alloc_host_bridge +EXPORT_SYMBOL vmlinux 0x49baa81b d_alloc_name +EXPORT_SYMBOL vmlinux 0x49bffefe clocksource_change_rating +EXPORT_SYMBOL vmlinux 0x49cc7600 skb_get_hash_perturb +EXPORT_SYMBOL vmlinux 0x49d3457a cpumask_any_but +EXPORT_SYMBOL vmlinux 0x49dde235 devm_pci_alloc_host_bridge +EXPORT_SYMBOL vmlinux 0x49e50651 inc_zone_page_state +EXPORT_SYMBOL vmlinux 0x49ebacbd _clear_bit +EXPORT_SYMBOL vmlinux 0x49f04645 devfreq_remove_governor +EXPORT_SYMBOL vmlinux 0x49f26466 kstrndup +EXPORT_SYMBOL vmlinux 0x49f375a4 dev_addr_flush +EXPORT_SYMBOL vmlinux 0x4a12c64f thermal_zone_device_critical +EXPORT_SYMBOL vmlinux 0x4a1bd097 inet_pton_with_scope +EXPORT_SYMBOL vmlinux 0x4a1efa4d unregister_netdevice_notifier_dev_net +EXPORT_SYMBOL vmlinux 0x4a39e5a1 omap_set_dma_src_params +EXPORT_SYMBOL vmlinux 0x4a3ea5c0 snd_request_card +EXPORT_SYMBOL vmlinux 0x4a424068 end_page_writeback +EXPORT_SYMBOL vmlinux 0x4a4ac7b0 __mod_node_page_state +EXPORT_SYMBOL vmlinux 0x4a4c16dd __sb_start_write +EXPORT_SYMBOL vmlinux 0x4a4c408c blk_pm_runtime_init +EXPORT_SYMBOL vmlinux 0x4a5a43c0 snd_pcm_lib_malloc_pages +EXPORT_SYMBOL vmlinux 0x4a70c84c locks_mandatory_area +EXPORT_SYMBOL vmlinux 0x4a96a8eb xxh32_digest +EXPORT_SYMBOL vmlinux 0x4a9a4343 i2c_verify_client +EXPORT_SYMBOL vmlinux 0x4aa6f4fa __mod_zone_page_state +EXPORT_SYMBOL vmlinux 0x4ab5ec35 security_sb_remount +EXPORT_SYMBOL vmlinux 0x4ad03e14 netpoll_send_skb +EXPORT_SYMBOL vmlinux 0x4adb18da __ip_mc_dec_group +EXPORT_SYMBOL vmlinux 0x4addfb3c vfs_iter_read +EXPORT_SYMBOL vmlinux 0x4ade8b2e kstrtou8_from_user +EXPORT_SYMBOL vmlinux 0x4ae8ee66 __kfifo_dma_out_prepare_r +EXPORT_SYMBOL vmlinux 0x4b1ec3e2 kstrtoul_from_user +EXPORT_SYMBOL vmlinux 0x4b357502 skb_mac_gso_segment +EXPORT_SYMBOL vmlinux 0x4b3b5124 lock_two_nondirectories +EXPORT_SYMBOL vmlinux 0x4b5fd49e dm_kcopyd_do_callback +EXPORT_SYMBOL vmlinux 0x4b715318 d_instantiate_new +EXPORT_SYMBOL vmlinux 0x4b814d51 pci_free_irq +EXPORT_SYMBOL vmlinux 0x4b9253cb snd_pcm_hw_constraint_mask64 +EXPORT_SYMBOL vmlinux 0x4bb23e41 dquot_writeback_dquots +EXPORT_SYMBOL vmlinux 0x4bb872e0 xfrm_state_alloc +EXPORT_SYMBOL vmlinux 0x4bba0b0e seq_lseek +EXPORT_SYMBOL vmlinux 0x4bbcc4f1 of_parse_phandle_with_args_map +EXPORT_SYMBOL vmlinux 0x4bcaa958 set_page_dirty_lock +EXPORT_SYMBOL vmlinux 0x4bdc1bb7 edac_mc_find +EXPORT_SYMBOL vmlinux 0x4bdcd91f __getblk_gfp +EXPORT_SYMBOL vmlinux 0x4be85a03 memweight +EXPORT_SYMBOL vmlinux 0x4bef1c67 empty_name +EXPORT_SYMBOL vmlinux 0x4bfdcefa __memset32 +EXPORT_SYMBOL vmlinux 0x4c19e65e proc_set_size +EXPORT_SYMBOL vmlinux 0x4c1cca3b cpumask_next_wrap +EXPORT_SYMBOL vmlinux 0x4c2ae700 strnstr +EXPORT_SYMBOL vmlinux 0x4c2dcd3b flow_indr_dev_register +EXPORT_SYMBOL vmlinux 0x4c32b60a invalidate_bdev +EXPORT_SYMBOL vmlinux 0x4c38d4e0 utf8_strncasecmp_folded +EXPORT_SYMBOL vmlinux 0x4c416eb9 LZ4_decompress_fast +EXPORT_SYMBOL vmlinux 0x4c63cff2 zap_page_range +EXPORT_SYMBOL vmlinux 0x4c6fdc3c mipi_dsi_driver_unregister +EXPORT_SYMBOL vmlinux 0x4c74b151 mipi_dsi_dcs_set_tear_on +EXPORT_SYMBOL vmlinux 0x4c9b846c mdiobus_scan +EXPORT_SYMBOL vmlinux 0x4cba441d iwe_stream_add_event +EXPORT_SYMBOL vmlinux 0x4cc2854d tegra114_clock_assert_dfll_dvco_reset +EXPORT_SYMBOL vmlinux 0x4ce8fc60 cdrom_mode_select +EXPORT_SYMBOL vmlinux 0x4d067018 udp_poll +EXPORT_SYMBOL vmlinux 0x4d0a280f configfs_unregister_default_group +EXPORT_SYMBOL vmlinux 0x4d0d163d copy_page +EXPORT_SYMBOL vmlinux 0x4d0f49c7 devm_ioremap +EXPORT_SYMBOL vmlinux 0x4d30124a genphy_check_and_restart_aneg +EXPORT_SYMBOL vmlinux 0x4d3c153f sigprocmask +EXPORT_SYMBOL vmlinux 0x4d45d89e udp_memory_allocated +EXPORT_SYMBOL vmlinux 0x4d514485 xa_store +EXPORT_SYMBOL vmlinux 0x4d5e47e8 devm_devfreq_add_device +EXPORT_SYMBOL vmlinux 0x4d633c89 mutex_lock_killable +EXPORT_SYMBOL vmlinux 0x4d634803 _raw_write_lock_irq +EXPORT_SYMBOL vmlinux 0x4d6ae35f rps_sock_flow_table +EXPORT_SYMBOL vmlinux 0x4d6d7331 nf_unregister_sockopt +EXPORT_SYMBOL vmlinux 0x4d7635f2 mmput_async +EXPORT_SYMBOL vmlinux 0x4d86229f file_modified +EXPORT_SYMBOL vmlinux 0x4d865de9 __serio_register_port +EXPORT_SYMBOL vmlinux 0x4d934e4b pci_enable_device_mem +EXPORT_SYMBOL vmlinux 0x4d9b652b rb_erase +EXPORT_SYMBOL vmlinux 0x4d9b6d35 snd_pcm_format_size +EXPORT_SYMBOL vmlinux 0x4da4f1e8 sock_no_ioctl +EXPORT_SYMBOL vmlinux 0x4dd80926 write_cache_pages +EXPORT_SYMBOL vmlinux 0x4dda8e84 nf_reinject +EXPORT_SYMBOL vmlinux 0x4ddad4ab xfrm_state_walk +EXPORT_SYMBOL vmlinux 0x4dec6038 memscan +EXPORT_SYMBOL vmlinux 0x4df2ea84 gen_estimator_read +EXPORT_SYMBOL vmlinux 0x4df79a4f vm_iomap_memory +EXPORT_SYMBOL vmlinux 0x4e05bdec mempool_init_node +EXPORT_SYMBOL vmlinux 0x4e0fa834 uart_update_timeout +EXPORT_SYMBOL vmlinux 0x4e13d312 serio_interrupt +EXPORT_SYMBOL vmlinux 0x4e2569c5 vm_insert_pages +EXPORT_SYMBOL vmlinux 0x4e3567f7 match_int +EXPORT_SYMBOL vmlinux 0x4e40113a xfrm4_rcv_encap +EXPORT_SYMBOL vmlinux 0x4e68e9be rb_next_postorder +EXPORT_SYMBOL vmlinux 0x4e6e8ea7 fg_console +EXPORT_SYMBOL vmlinux 0x4e7a254f phy_find_first +EXPORT_SYMBOL vmlinux 0x4ea432ba __close_fd_get_file +EXPORT_SYMBOL vmlinux 0x4ea48740 snd_pcm_new +EXPORT_SYMBOL vmlinux 0x4ea7b9f6 pci_write_config_word +EXPORT_SYMBOL vmlinux 0x4eada8f7 security_secid_to_secctx +EXPORT_SYMBOL vmlinux 0x4ebbbc53 blk_stack_limits +EXPORT_SYMBOL vmlinux 0x4eca328a pci_free_irq_vectors +EXPORT_SYMBOL vmlinux 0x4ecf0296 twl6040_clear_bits +EXPORT_SYMBOL vmlinux 0x4ee0e846 ZSTD_initDCtx +EXPORT_SYMBOL vmlinux 0x4ee98ebd tcp_have_smc +EXPORT_SYMBOL vmlinux 0x4f13b3ef inetpeer_invalidate_tree +EXPORT_SYMBOL vmlinux 0x4f1cd128 security_tun_dev_create +EXPORT_SYMBOL vmlinux 0x4f2250ba rtc_tm_to_time64 +EXPORT_SYMBOL vmlinux 0x4f27c18d xdp_get_umem_from_qid +EXPORT_SYMBOL vmlinux 0x4f4a209e tcp_recvmsg +EXPORT_SYMBOL vmlinux 0x4f4d78c5 LZ4_compress_default +EXPORT_SYMBOL vmlinux 0x4f572ba5 dma_direct_map_sg +EXPORT_SYMBOL vmlinux 0x4f6a761e __sk_dst_check +EXPORT_SYMBOL vmlinux 0x4f6cd76d ilookup5_nowait +EXPORT_SYMBOL vmlinux 0x4f6f2821 tcp_mtup_init +EXPORT_SYMBOL vmlinux 0x4f739a78 ipv6_mc_check_mld +EXPORT_SYMBOL vmlinux 0x4f80f913 __brelse +EXPORT_SYMBOL vmlinux 0x4f816e9b snd_pcm_format_big_endian +EXPORT_SYMBOL vmlinux 0x4f8183e9 of_get_i2c_adapter_by_node +EXPORT_SYMBOL vmlinux 0x4f89c9de gpmc_cs_free +EXPORT_SYMBOL vmlinux 0x4f9d7768 xfrm_policy_flush +EXPORT_SYMBOL vmlinux 0x4fa63912 input_open_device +EXPORT_SYMBOL vmlinux 0x4fae9f1f tcp_sock_set_user_timeout +EXPORT_SYMBOL vmlinux 0x4fbe92a7 peernet2id +EXPORT_SYMBOL vmlinux 0x4fd821f4 skb_flow_get_icmp_tci +EXPORT_SYMBOL vmlinux 0x4fd90ef0 vif_device_init +EXPORT_SYMBOL vmlinux 0x4fe2ec97 mr_mfc_find_parent +EXPORT_SYMBOL vmlinux 0x4fef3ef4 completion_done +EXPORT_SYMBOL vmlinux 0x5004b5b8 kern_unmount +EXPORT_SYMBOL vmlinux 0x50097088 security_tun_dev_free_security +EXPORT_SYMBOL vmlinux 0x5009c71d glob_match +EXPORT_SYMBOL vmlinux 0x5010e4cd mr_vif_seq_idx +EXPORT_SYMBOL vmlinux 0x502a625b mdio_device_remove +EXPORT_SYMBOL vmlinux 0x502b6647 mempool_create_node +EXPORT_SYMBOL vmlinux 0x503bd137 snd_interval_ranges +EXPORT_SYMBOL vmlinux 0x50449b5a inode_dio_wait +EXPORT_SYMBOL vmlinux 0x504c2ad0 inet6_del_offload +EXPORT_SYMBOL vmlinux 0x505f828e mr_rtm_dumproute +EXPORT_SYMBOL vmlinux 0x50624917 sha1_init +EXPORT_SYMBOL vmlinux 0x506dff1a __genradix_free +EXPORT_SYMBOL vmlinux 0x5081dfbe sk_stream_error +EXPORT_SYMBOL vmlinux 0x508deea5 sock_set_rcvbuf +EXPORT_SYMBOL vmlinux 0x5095ae54 kern_path_create +EXPORT_SYMBOL vmlinux 0x50a4698c fb_videomode_to_modelist +EXPORT_SYMBOL vmlinux 0x50aa4bd6 kfree_skb_list +EXPORT_SYMBOL vmlinux 0x50b73ce2 rfkill_find_type +EXPORT_SYMBOL vmlinux 0x50bae062 vga_remove_vgacon +EXPORT_SYMBOL vmlinux 0x50be748d security_ib_free_security +EXPORT_SYMBOL vmlinux 0x50cf7b3d jbd2_trans_will_send_data_barrier +EXPORT_SYMBOL vmlinux 0x50d71bcf gen_pool_first_fit +EXPORT_SYMBOL vmlinux 0x50f85302 __arm_smccc_hvc +EXPORT_SYMBOL vmlinux 0x50fd6103 dma_fence_signal +EXPORT_SYMBOL vmlinux 0x51022053 ZSTD_compressBegin_usingDict +EXPORT_SYMBOL vmlinux 0x511746c1 dump_fpu +EXPORT_SYMBOL vmlinux 0x511ffe81 devm_memremap +EXPORT_SYMBOL vmlinux 0x51284b8f netif_napi_add +EXPORT_SYMBOL vmlinux 0x51414518 kmem_cache_alloc_bulk +EXPORT_SYMBOL vmlinux 0x514a471a blk_mq_stop_hw_queues +EXPORT_SYMBOL vmlinux 0x514a62ec dq_data_lock +EXPORT_SYMBOL vmlinux 0x514b524f __cgroup_bpf_run_filter_sock_ops +EXPORT_SYMBOL vmlinux 0x514cc273 arm_copy_from_user +EXPORT_SYMBOL vmlinux 0x51641162 opal_unlock_from_suspend +EXPORT_SYMBOL vmlinux 0x516e31a6 generic_key_instantiate +EXPORT_SYMBOL vmlinux 0x517018a2 sgl_alloc_order +EXPORT_SYMBOL vmlinux 0x51824f2c scsi_scan_target +EXPORT_SYMBOL vmlinux 0x51957b93 pci_request_region +EXPORT_SYMBOL vmlinux 0x51a93e9e pcie_capability_read_word +EXPORT_SYMBOL vmlinux 0x51b2fc92 blkdev_fsync +EXPORT_SYMBOL vmlinux 0x51bacd35 scsi_eh_restore_cmnd +EXPORT_SYMBOL vmlinux 0x51e1be9c phy_drivers_unregister +EXPORT_SYMBOL vmlinux 0x51e77c97 pfn_valid +EXPORT_SYMBOL vmlinux 0x51f3da67 pfifo_fast_ops +EXPORT_SYMBOL vmlinux 0x51f81a70 skb_trim +EXPORT_SYMBOL vmlinux 0x51fd343b remove_conflicting_pci_framebuffers +EXPORT_SYMBOL vmlinux 0x5203d176 cmd_db_ready +EXPORT_SYMBOL vmlinux 0x520f0a95 snd_compr_malloc_pages +EXPORT_SYMBOL vmlinux 0x521ac12b input_enable_softrepeat +EXPORT_SYMBOL vmlinux 0x521ff531 mdiobus_read_nested +EXPORT_SYMBOL vmlinux 0x52248d91 vme_irq_request +EXPORT_SYMBOL vmlinux 0x523e57aa ZSTD_getDictID_fromDict +EXPORT_SYMBOL vmlinux 0x5261eccc devfreq_recommended_opp +EXPORT_SYMBOL vmlinux 0x5269504f dev_queue_xmit_accel +EXPORT_SYMBOL vmlinux 0x528c709d simple_read_from_buffer +EXPORT_SYMBOL vmlinux 0x529185f5 xfrm_find_acq +EXPORT_SYMBOL vmlinux 0x529d2ff0 seg6_hmac_info_lookup +EXPORT_SYMBOL vmlinux 0x52b4d0ab tty_port_alloc_xmit_buf +EXPORT_SYMBOL vmlinux 0x52bfaa26 fscrypt_setup_filename +EXPORT_SYMBOL vmlinux 0x52c9d337 rproc_del +EXPORT_SYMBOL vmlinux 0x52cb0b57 mnt_set_expiry +EXPORT_SYMBOL vmlinux 0x52d717da xz_dec_init +EXPORT_SYMBOL vmlinux 0x52e3e4a5 snd_pcm_hw_param_value +EXPORT_SYMBOL vmlinux 0x52e901e1 mmc_flush_cache +EXPORT_SYMBOL vmlinux 0x52f2850a imx_sc_pm_cpu_start +EXPORT_SYMBOL vmlinux 0x52fa3770 pci_msi_vec_count +EXPORT_SYMBOL vmlinux 0x530b1e98 pm_suspend +EXPORT_SYMBOL vmlinux 0x532beaea qdisc_hash_add +EXPORT_SYMBOL vmlinux 0x533bb3a1 xsk_set_rx_need_wakeup +EXPORT_SYMBOL vmlinux 0x5343a7a1 do_SAK +EXPORT_SYMBOL vmlinux 0x535176bd pci_bus_read_config_word +EXPORT_SYMBOL vmlinux 0x536060af radix_tree_lookup_slot +EXPORT_SYMBOL vmlinux 0x536e6dc3 init_task +EXPORT_SYMBOL vmlinux 0x5371b7ab pm860x_page_reg_write +EXPORT_SYMBOL vmlinux 0x5394b442 xfrm_state_add +EXPORT_SYMBOL vmlinux 0x53c5f44d sg_copy_buffer +EXPORT_SYMBOL vmlinux 0x53cb8eb5 block_read_full_page +EXPORT_SYMBOL vmlinux 0x53e8c316 scsi_track_queue_full +EXPORT_SYMBOL vmlinux 0x53ecfb8d dquot_get_state +EXPORT_SYMBOL vmlinux 0x53fdeb8e kfree_skb_partial +EXPORT_SYMBOL vmlinux 0x53ff65ad flow_rule_match_icmp +EXPORT_SYMBOL vmlinux 0x5401d4fb register_tcf_proto_ops +EXPORT_SYMBOL vmlinux 0x54042cbb mipi_dsi_dcs_nop +EXPORT_SYMBOL vmlinux 0x542a1839 blk_queue_logical_block_size +EXPORT_SYMBOL vmlinux 0x543e9231 simple_recursive_removal +EXPORT_SYMBOL vmlinux 0x543ef284 seq_hlist_start +EXPORT_SYMBOL vmlinux 0x54564f68 dev_load +EXPORT_SYMBOL vmlinux 0x54629e3a copy_page_to_iter +EXPORT_SYMBOL vmlinux 0x54844074 param_array_ops +EXPORT_SYMBOL vmlinux 0x54a9db5f _kstrtoul +EXPORT_SYMBOL vmlinux 0x54cab5be mdiobus_setup_mdiodev_from_board_info +EXPORT_SYMBOL vmlinux 0x54d1242a param_set_bint +EXPORT_SYMBOL vmlinux 0x54d8357b snd_timer_close +EXPORT_SYMBOL vmlinux 0x54db0460 xp_alloc +EXPORT_SYMBOL vmlinux 0x54ddcc2e bio_uninit +EXPORT_SYMBOL vmlinux 0x54e4a965 sock_i_uid +EXPORT_SYMBOL vmlinux 0x54e6fcdd net_enable_timestamp +EXPORT_SYMBOL vmlinux 0x54ec9908 noop_fsync +EXPORT_SYMBOL vmlinux 0x54ed45c7 tc6393xb_lcd_set_power +EXPORT_SYMBOL vmlinux 0x5506b8f7 netlbl_bitmap_setbit +EXPORT_SYMBOL vmlinux 0x55071b9e alloc_netdev_mqs +EXPORT_SYMBOL vmlinux 0x55076d83 security_binder_set_context_mgr +EXPORT_SYMBOL vmlinux 0x550dcf56 nobh_write_end +EXPORT_SYMBOL vmlinux 0x5519bcc8 dev_deactivate +EXPORT_SYMBOL vmlinux 0x551bd071 __rb_erase_color +EXPORT_SYMBOL vmlinux 0x551f3a5f get_task_cred +EXPORT_SYMBOL vmlinux 0x554ae3a4 irq_poll_sched +EXPORT_SYMBOL vmlinux 0x555ee77c tcp_shutdown +EXPORT_SYMBOL vmlinux 0x557b118f generic_setlease +EXPORT_SYMBOL vmlinux 0x558b281d aes_expandkey +EXPORT_SYMBOL vmlinux 0x559bd4cb snd_pcm_lib_preallocate_pages +EXPORT_SYMBOL vmlinux 0x559e7d32 __skb_warn_lro_forwarding +EXPORT_SYMBOL vmlinux 0x55bed2e0 security_sb_set_mnt_opts +EXPORT_SYMBOL vmlinux 0x55c72826 cdev_set_parent +EXPORT_SYMBOL vmlinux 0x55d41393 dev_uc_add_excl +EXPORT_SYMBOL vmlinux 0x55e31703 ethtool_convert_link_mode_to_legacy_u32 +EXPORT_SYMBOL vmlinux 0x55eb9e55 devm_rproc_add +EXPORT_SYMBOL vmlinux 0x5616ca39 snd_pcm_new_internal +EXPORT_SYMBOL vmlinux 0x562d837d cdrom_release +EXPORT_SYMBOL vmlinux 0x562e7e63 bio_integrity_prep +EXPORT_SYMBOL vmlinux 0x5635a60a vmalloc_user +EXPORT_SYMBOL vmlinux 0x56388366 genlmsg_multicast_allns +EXPORT_SYMBOL vmlinux 0x563952a3 kblockd_schedule_work +EXPORT_SYMBOL vmlinux 0x56498087 paddr_vmcoreinfo_note +EXPORT_SYMBOL vmlinux 0x5662bd0d finish_open +EXPORT_SYMBOL vmlinux 0x5662e994 vmf_insert_mixed_prot +EXPORT_SYMBOL vmlinux 0x56648ed5 seg6_hmac_info_add +EXPORT_SYMBOL vmlinux 0x5667a277 down_timeout +EXPORT_SYMBOL vmlinux 0x566e99b1 udp_pre_connect +EXPORT_SYMBOL vmlinux 0x56802ae8 rps_cpu_mask +EXPORT_SYMBOL vmlinux 0x56c8799d scsi_kunmap_atomic_sg +EXPORT_SYMBOL vmlinux 0x56fe85ab set_blocksize +EXPORT_SYMBOL vmlinux 0x5722ac7d input_mt_destroy_slots +EXPORT_SYMBOL vmlinux 0x5726aefd dev_driver_string +EXPORT_SYMBOL vmlinux 0x5729a1c8 snd_jack_set_parent +EXPORT_SYMBOL vmlinux 0x5742024f blk_queue_max_write_zeroes_sectors +EXPORT_SYMBOL vmlinux 0x574c2e74 bitmap_release_region +EXPORT_SYMBOL vmlinux 0x57540e61 nobh_write_begin +EXPORT_SYMBOL vmlinux 0x57575f08 dmaengine_put +EXPORT_SYMBOL vmlinux 0x5764b3d9 blk_mq_start_request +EXPORT_SYMBOL vmlinux 0x57674fd7 __sw_hweight16 +EXPORT_SYMBOL vmlinux 0x577299cc tcp_set_rcvlowat +EXPORT_SYMBOL vmlinux 0x577416b1 fbcon_rotate_ud +EXPORT_SYMBOL vmlinux 0x577b395a skb_tx_error +EXPORT_SYMBOL vmlinux 0x578a1876 tun_xdp_to_ptr +EXPORT_SYMBOL vmlinux 0x57a6bbaf alloc_fddidev +EXPORT_SYMBOL vmlinux 0x57aa94e2 pci_dev_driver +EXPORT_SYMBOL vmlinux 0x57abc1ed xsk_clear_rx_need_wakeup +EXPORT_SYMBOL vmlinux 0x57c7940f vfs_dup_fs_context +EXPORT_SYMBOL vmlinux 0x57c979f5 sock_create +EXPORT_SYMBOL vmlinux 0x57ceedb1 lockref_put_not_zero +EXPORT_SYMBOL vmlinux 0x57e5170c qcom_scm_iommu_secure_ptbl_size +EXPORT_SYMBOL vmlinux 0x57f29e70 mr_mfc_find_any_parent +EXPORT_SYMBOL vmlinux 0x57f38cdc qe_get_firmware_info +EXPORT_SYMBOL vmlinux 0x57ff23f0 ZSTD_getFrameContentSize +EXPORT_SYMBOL vmlinux 0x5806afd5 iov_iter_zero +EXPORT_SYMBOL vmlinux 0x58169824 phy_ethtool_ksettings_set +EXPORT_SYMBOL vmlinux 0x5818fe3c posix_acl_from_mode +EXPORT_SYMBOL vmlinux 0x581cde4e up +EXPORT_SYMBOL vmlinux 0x581f98da zlib_inflate +EXPORT_SYMBOL vmlinux 0x582b6275 xfrm_if_unregister_cb +EXPORT_SYMBOL vmlinux 0x5834c1bc d_find_alias +EXPORT_SYMBOL vmlinux 0x5838f6c9 rtc_valid_tm +EXPORT_SYMBOL vmlinux 0x58516557 omap_set_dma_src_data_pack +EXPORT_SYMBOL vmlinux 0x5855b740 __sg_page_iter_start +EXPORT_SYMBOL vmlinux 0x585a63ad tcp_rcv_state_process +EXPORT_SYMBOL vmlinux 0x586c70e1 phy_modify_paged_changed +EXPORT_SYMBOL vmlinux 0x587b892e qe_get_num_of_risc +EXPORT_SYMBOL vmlinux 0x58a15f42 cqhci_deactivate +EXPORT_SYMBOL vmlinux 0x58a5ee32 eth_header_cache +EXPORT_SYMBOL vmlinux 0x58a83c7c ac97_bus_type +EXPORT_SYMBOL vmlinux 0x58acf24b mdiobus_register_board_info +EXPORT_SYMBOL vmlinux 0x58adb05c get_vaddr_frames +EXPORT_SYMBOL vmlinux 0x58b314b0 dst_init +EXPORT_SYMBOL vmlinux 0x58b4645c dev_close_many +EXPORT_SYMBOL vmlinux 0x58b73bc7 match_wildcard +EXPORT_SYMBOL vmlinux 0x58c8110d snd_pcm_open_substream +EXPORT_SYMBOL vmlinux 0x58e3306d bit_wait_io +EXPORT_SYMBOL vmlinux 0x58f4c817 ZSTD_adjustCParams +EXPORT_SYMBOL vmlinux 0x58fa70b7 pagevec_lookup_range_tag +EXPORT_SYMBOL vmlinux 0x58fad869 __var_waitqueue +EXPORT_SYMBOL vmlinux 0x590a14f5 redirty_page_for_writepage +EXPORT_SYMBOL vmlinux 0x592b5bd9 tcp_sockets_allocated +EXPORT_SYMBOL vmlinux 0x594bf15b ioport_map +EXPORT_SYMBOL vmlinux 0x594e1317 __modsi3 +EXPORT_SYMBOL vmlinux 0x59588850 vsscanf +EXPORT_SYMBOL vmlinux 0x5962dfa8 dma_sync_wait +EXPORT_SYMBOL vmlinux 0x598c14ad key_revoke +EXPORT_SYMBOL vmlinux 0x598f21f7 eth_header_parse_protocol +EXPORT_SYMBOL vmlinux 0x599b4888 qe_setbrg +EXPORT_SYMBOL vmlinux 0x59a17bfc tegra114_clock_tune_cpu_trimmers_high +EXPORT_SYMBOL vmlinux 0x59ad918d end_buffer_async_write +EXPORT_SYMBOL vmlinux 0x59b1d17c pci_add_resource +EXPORT_SYMBOL vmlinux 0x59b7cab6 mempool_resize +EXPORT_SYMBOL vmlinux 0x59c08d28 rtnl_unicast +EXPORT_SYMBOL vmlinux 0x59d127f9 devm_release_resource +EXPORT_SYMBOL vmlinux 0x59d29dab v7_flush_kern_dcache_area +EXPORT_SYMBOL vmlinux 0x59d8785a sock_wake_async +EXPORT_SYMBOL vmlinux 0x59e5070d __do_div64 +EXPORT_SYMBOL vmlinux 0x59e6409a snd_pcm_mmap_data +EXPORT_SYMBOL vmlinux 0x59feca66 seq_pad +EXPORT_SYMBOL vmlinux 0x5a0601ad udp_lib_rehash +EXPORT_SYMBOL vmlinux 0x5a0b73d0 zlib_deflateInit2 +EXPORT_SYMBOL vmlinux 0x5a14de15 radix_tree_insert +EXPORT_SYMBOL vmlinux 0x5a1a28e4 inode_set_bytes +EXPORT_SYMBOL vmlinux 0x5a3954bd of_get_mac_address +EXPORT_SYMBOL vmlinux 0x5a4c1179 unregister_netdevice_notifier_net +EXPORT_SYMBOL vmlinux 0x5a4d313e gf128mul_4k_lle +EXPORT_SYMBOL vmlinux 0x5a87260c twl6040_set_bits +EXPORT_SYMBOL vmlinux 0x5aa3d6ce __test_set_page_writeback +EXPORT_SYMBOL vmlinux 0x5aa618ac path_nosuid +EXPORT_SYMBOL vmlinux 0x5aa6be2f vme_bus_type +EXPORT_SYMBOL vmlinux 0x5aae541f tcf_exts_destroy +EXPORT_SYMBOL vmlinux 0x5ab0adda __invalidate_device +EXPORT_SYMBOL vmlinux 0x5ab41e5d sock_queue_err_skb +EXPORT_SYMBOL vmlinux 0x5abea1fc scsi_report_opcode +EXPORT_SYMBOL vmlinux 0x5ac9dfc8 __remove_inode_hash +EXPORT_SYMBOL vmlinux 0x5b04be5a disable_fiq +EXPORT_SYMBOL vmlinux 0x5b062284 gen_pool_fixed_alloc +EXPORT_SYMBOL vmlinux 0x5b101a07 is_bad_inode +EXPORT_SYMBOL vmlinux 0x5b1b3a52 single_open_size +EXPORT_SYMBOL vmlinux 0x5b23dd72 filemap_check_errors +EXPORT_SYMBOL vmlinux 0x5b252484 truncate_inode_pages_range +EXPORT_SYMBOL vmlinux 0x5b2e07f4 phy_write_paged +EXPORT_SYMBOL vmlinux 0x5b30bbe3 blk_rq_count_integrity_sg +EXPORT_SYMBOL vmlinux 0x5b36d5dd utf8agemax +EXPORT_SYMBOL vmlinux 0x5b5d6d6c pci_find_capability +EXPORT_SYMBOL vmlinux 0x5b70760b i2c_register_driver +EXPORT_SYMBOL vmlinux 0x5b8643ce pcim_iomap +EXPORT_SYMBOL vmlinux 0x5b8f345c fixed_size_llseek +EXPORT_SYMBOL vmlinux 0x5b95942e bh_submit_read +EXPORT_SYMBOL vmlinux 0x5badbb78 string_escape_mem_ascii +EXPORT_SYMBOL vmlinux 0x5bbc7718 skb_flow_dissect_meta +EXPORT_SYMBOL vmlinux 0x5bbca693 dm_register_target +EXPORT_SYMBOL vmlinux 0x5bbe49f4 __init_waitqueue_head +EXPORT_SYMBOL vmlinux 0x5bc41496 fs_param_is_blockdev +EXPORT_SYMBOL vmlinux 0x5bc4eff7 bio_add_page +EXPORT_SYMBOL vmlinux 0x5bc7b9ca of_find_net_device_by_node +EXPORT_SYMBOL vmlinux 0x5bc92e85 LZ4_compress_destSize +EXPORT_SYMBOL vmlinux 0x5bd4ff88 flow_action_cookie_create +EXPORT_SYMBOL vmlinux 0x5be63c5b crc32c_csum_stub +EXPORT_SYMBOL vmlinux 0x5bed77ef posix_acl_update_mode +EXPORT_SYMBOL vmlinux 0x5bf7f981 save_stack_trace_tsk +EXPORT_SYMBOL vmlinux 0x5c0c88ac scsi_device_lookup +EXPORT_SYMBOL vmlinux 0x5c12dad4 vme_alloc_consistent +EXPORT_SYMBOL vmlinux 0x5c17137e sg_miter_skip +EXPORT_SYMBOL vmlinux 0x5c355595 key_payload_reserve +EXPORT_SYMBOL vmlinux 0x5c4265f6 blk_unregister_region +EXPORT_SYMBOL vmlinux 0x5c4d9a53 file_check_and_advance_wb_err +EXPORT_SYMBOL vmlinux 0x5c53ed77 single_release +EXPORT_SYMBOL vmlinux 0x5c688828 xfrm_policy_byid +EXPORT_SYMBOL vmlinux 0x5c716976 hdmi_audio_infoframe_pack_only +EXPORT_SYMBOL vmlinux 0x5c737040 ucc_fast_disable +EXPORT_SYMBOL vmlinux 0x5c7b2c9b snd_unregister_oss_device +EXPORT_SYMBOL vmlinux 0x5c7f1284 int_sqrt64 +EXPORT_SYMBOL vmlinux 0x5c81b95e arp_create +EXPORT_SYMBOL vmlinux 0x5c884c5f devfreq_monitor_resume +EXPORT_SYMBOL vmlinux 0x5c91d658 netdev_port_same_parent_id +EXPORT_SYMBOL vmlinux 0x5c9284a0 processor_id +EXPORT_SYMBOL vmlinux 0x5cb35bf8 dquot_commit_info +EXPORT_SYMBOL vmlinux 0x5cb9214f jbd2_journal_clear_err +EXPORT_SYMBOL vmlinux 0x5cbd8e69 __crc32c_le +EXPORT_SYMBOL vmlinux 0x5cc2b48e dquot_load_quota_inode +EXPORT_SYMBOL vmlinux 0x5cc6ee14 ip_frag_next +EXPORT_SYMBOL vmlinux 0x5cc79881 brioctl_set +EXPORT_SYMBOL vmlinux 0x5cce515e tcp_openreq_init_rwin +EXPORT_SYMBOL vmlinux 0x5ce5991f dma_supported +EXPORT_SYMBOL vmlinux 0x5ce9a942 hdmi_infoframe_pack_only +EXPORT_SYMBOL vmlinux 0x5cf53ce2 input_free_minor +EXPORT_SYMBOL vmlinux 0x5d0ce2cc elv_rb_latter_request +EXPORT_SYMBOL vmlinux 0x5d107e6b d_obtain_root +EXPORT_SYMBOL vmlinux 0x5d169ec5 tcp_sock_set_keepcnt +EXPORT_SYMBOL vmlinux 0x5d192635 blk_integrity_unregister +EXPORT_SYMBOL vmlinux 0x5d21c385 tcf_action_set_ctrlact +EXPORT_SYMBOL vmlinux 0x5d249d9d hdmi_drm_infoframe_pack +EXPORT_SYMBOL vmlinux 0x5d37d658 dim_park_tired +EXPORT_SYMBOL vmlinux 0x5d3a629a sock_common_recvmsg +EXPORT_SYMBOL vmlinux 0x5d3df12d filemap_map_pages +EXPORT_SYMBOL vmlinux 0x5d43ee61 set_cached_acl +EXPORT_SYMBOL vmlinux 0x5d49aabc init_wait_var_entry +EXPORT_SYMBOL vmlinux 0x5d52bb9b account_page_redirty +EXPORT_SYMBOL vmlinux 0x5d54aadd snd_compr_free_pages +EXPORT_SYMBOL vmlinux 0x5d7e9028 mpage_writepages +EXPORT_SYMBOL vmlinux 0x5d7eedf5 snd_pcm_lib_ioctl +EXPORT_SYMBOL vmlinux 0x5d810f97 kstrtou16_from_user +EXPORT_SYMBOL vmlinux 0x5d830297 get_random_bytes_arch +EXPORT_SYMBOL vmlinux 0x5d868d84 inet_addr_type_table +EXPORT_SYMBOL vmlinux 0x5daff4f0 tcp_ioctl +EXPORT_SYMBOL vmlinux 0x5dba71d7 sg_last +EXPORT_SYMBOL vmlinux 0x5dbd9cc0 blk_mq_complete_request +EXPORT_SYMBOL vmlinux 0x5dcf6341 outer_cache +EXPORT_SYMBOL vmlinux 0x5de5cca2 utf8_normalize +EXPORT_SYMBOL vmlinux 0x5e0ccb9f sha1_transform +EXPORT_SYMBOL vmlinux 0x5e15d536 migrate_page_move_mapping +EXPORT_SYMBOL vmlinux 0x5e1c8d7e ip6_xmit +EXPORT_SYMBOL vmlinux 0x5e1cb83e sock_queue_rcv_skb +EXPORT_SYMBOL vmlinux 0x5e373fb4 gf128mul_64k_bbe +EXPORT_SYMBOL vmlinux 0x5e38c830 __kfifo_dma_out_prepare +EXPORT_SYMBOL vmlinux 0x5e3e8d0c neigh_seq_next +EXPORT_SYMBOL vmlinux 0x5e4302e6 neigh_for_each +EXPORT_SYMBOL vmlinux 0x5e6f91f9 tegra_powergate_remove_clamping +EXPORT_SYMBOL vmlinux 0x5e71a876 napi_disable +EXPORT_SYMBOL vmlinux 0x5e7f4920 snd_pcm_format_set_silence +EXPORT_SYMBOL vmlinux 0x5e866d85 prandom_bytes +EXPORT_SYMBOL vmlinux 0x5e95b1cd current_umask +EXPORT_SYMBOL vmlinux 0x5ea04aa3 flow_block_cb_alloc +EXPORT_SYMBOL vmlinux 0x5eb24829 dm_shift_arg +EXPORT_SYMBOL vmlinux 0x5ec4aee6 put_sg_io_hdr +EXPORT_SYMBOL vmlinux 0x5ec800b7 xfrm_lookup_route +EXPORT_SYMBOL vmlinux 0x5ecd2bb3 qdisc_hash_del +EXPORT_SYMBOL vmlinux 0x5ed040b0 pm_set_vt_switch +EXPORT_SYMBOL vmlinux 0x5ed05bf6 hdmi_audio_infoframe_pack +EXPORT_SYMBOL vmlinux 0x5ed90adc int_to_scsilun +EXPORT_SYMBOL vmlinux 0x5ee16721 flow_get_u32_src +EXPORT_SYMBOL vmlinux 0x5efd6e34 mipi_dsi_dcs_read +EXPORT_SYMBOL vmlinux 0x5f098b2a in6addr_interfacelocal_allrouters +EXPORT_SYMBOL vmlinux 0x5f0b1b80 fs_bio_set +EXPORT_SYMBOL vmlinux 0x5f3f7454 nand_write_page_raw +EXPORT_SYMBOL vmlinux 0x5f4235f8 phy_ethtool_get_wol +EXPORT_SYMBOL vmlinux 0x5f53fae8 pci_get_slot +EXPORT_SYMBOL vmlinux 0x5f6b51b1 vlan_ioctl_set +EXPORT_SYMBOL vmlinux 0x5f754e5a memset +EXPORT_SYMBOL vmlinux 0x5f81a5fc rproc_coredump_add_custom_segment +EXPORT_SYMBOL vmlinux 0x5f849a69 _raw_spin_lock_irqsave +EXPORT_SYMBOL vmlinux 0x5f8aca8f pagecache_isize_extended +EXPORT_SYMBOL vmlinux 0x5f9d22ca map_kernel_range_noflush +EXPORT_SYMBOL vmlinux 0x5fb01358 alloc_pages_exact +EXPORT_SYMBOL vmlinux 0x5fba99bc max8925_set_bits +EXPORT_SYMBOL vmlinux 0x5fde9e10 __napi_alloc_skb +EXPORT_SYMBOL vmlinux 0x5feaea9d kmem_cache_create_usercopy +EXPORT_SYMBOL vmlinux 0x5fee265f ppp_register_compressor +EXPORT_SYMBOL vmlinux 0x5ff0e2c7 scm_fp_dup +EXPORT_SYMBOL vmlinux 0x5ff11cc3 pcibios_min_io +EXPORT_SYMBOL vmlinux 0x5ffa3ff8 register_fib_notifier +EXPORT_SYMBOL vmlinux 0x6004858d LZ4_compress_fast +EXPORT_SYMBOL vmlinux 0x6005b86b uart_resume_port +EXPORT_SYMBOL vmlinux 0x6005c351 zpool_has_pool +EXPORT_SYMBOL vmlinux 0x600683d3 do_unblank_screen +EXPORT_SYMBOL vmlinux 0x601ed695 netpoll_setup +EXPORT_SYMBOL vmlinux 0x601f665f dm_io_client_create +EXPORT_SYMBOL vmlinux 0x602c96f0 copy_to_user_fromio +EXPORT_SYMBOL vmlinux 0x602ce95f mtd_concat_destroy +EXPORT_SYMBOL vmlinux 0x603286b8 utf8_casefold +EXPORT_SYMBOL vmlinux 0x60351b98 __nla_validate +EXPORT_SYMBOL vmlinux 0x60352082 register_inet6addr_notifier +EXPORT_SYMBOL vmlinux 0x605790dc fiemap_fill_next_extent +EXPORT_SYMBOL vmlinux 0x605a7ed1 scsi_is_sdev_device +EXPORT_SYMBOL vmlinux 0x6081c097 md_integrity_add_rdev +EXPORT_SYMBOL vmlinux 0x6087ed41 filemap_fdatawrite_range +EXPORT_SYMBOL vmlinux 0x6091b333 unregister_chrdev_region +EXPORT_SYMBOL vmlinux 0x60923524 rio_query_mport +EXPORT_SYMBOL vmlinux 0x609bcd98 in6_pton +EXPORT_SYMBOL vmlinux 0x609f1c7e synchronize_net +EXPORT_SYMBOL vmlinux 0x60a32ea9 pm_power_off +EXPORT_SYMBOL vmlinux 0x60bffe6d div64_u64 +EXPORT_SYMBOL vmlinux 0x60d8ab30 vme_lm_get +EXPORT_SYMBOL vmlinux 0x60fac3bb dev_mc_del +EXPORT_SYMBOL vmlinux 0x610d198b __fs_parse +EXPORT_SYMBOL vmlinux 0x6113f6cc netdev_upper_dev_link +EXPORT_SYMBOL vmlinux 0x6121bd54 dql_init +EXPORT_SYMBOL vmlinux 0x6128b5fc __printk_ratelimit +EXPORT_SYMBOL vmlinux 0x614a0d6c dma_async_device_register +EXPORT_SYMBOL vmlinux 0x6156c7f4 net_dim +EXPORT_SYMBOL vmlinux 0x615911d7 __bitmap_set +EXPORT_SYMBOL vmlinux 0x615bb82f cred_fscmp +EXPORT_SYMBOL vmlinux 0x6173bf70 devm_register_reboot_notifier +EXPORT_SYMBOL vmlinux 0x619c5af9 jbd2_journal_destroy +EXPORT_SYMBOL vmlinux 0x619fe088 bdi_alloc +EXPORT_SYMBOL vmlinux 0x61a64cfa xfrm_state_update +EXPORT_SYMBOL vmlinux 0x61b76bb9 smp_call_function_many +EXPORT_SYMBOL vmlinux 0x61b7b126 simple_strtoull +EXPORT_SYMBOL vmlinux 0x61c76b3a proc_dointvec_jiffies +EXPORT_SYMBOL vmlinux 0x61cc9e25 fb_class +EXPORT_SYMBOL vmlinux 0x61e272c9 sha256_final +EXPORT_SYMBOL vmlinux 0x61e521aa param_set_byte +EXPORT_SYMBOL vmlinux 0x61ea189b fb_pad_aligned_buffer +EXPORT_SYMBOL vmlinux 0x61f8e72c unix_detach_fds +EXPORT_SYMBOL vmlinux 0x6207d782 snd_pcm_hw_constraint_integer +EXPORT_SYMBOL vmlinux 0x6214aef2 cpufreq_unregister_notifier +EXPORT_SYMBOL vmlinux 0x6228c21f smp_call_function_single +EXPORT_SYMBOL vmlinux 0x622b132a genphy_aneg_done +EXPORT_SYMBOL vmlinux 0x6258cfec inet6_add_offload +EXPORT_SYMBOL vmlinux 0x625b27fc blk_mq_run_hw_queues +EXPORT_SYMBOL vmlinux 0x62688e94 tty_port_block_til_ready +EXPORT_SYMBOL vmlinux 0x626d349e bdi_register +EXPORT_SYMBOL vmlinux 0x62737e1d sock_unregister +EXPORT_SYMBOL vmlinux 0x627d4340 hdmi_drm_infoframe_pack_only +EXPORT_SYMBOL vmlinux 0x62849ac7 dev_valid_name +EXPORT_SYMBOL vmlinux 0x62983b59 scsi_test_unit_ready +EXPORT_SYMBOL vmlinux 0x62bf6edf utf8agemin +EXPORT_SYMBOL vmlinux 0x62d31d03 d_make_root +EXPORT_SYMBOL vmlinux 0x62d83698 __mmc_claim_host +EXPORT_SYMBOL vmlinux 0x62f04e11 xfrm_state_register_afinfo +EXPORT_SYMBOL vmlinux 0x62f373ed twl6040_reg_read +EXPORT_SYMBOL vmlinux 0x62f576d9 trace_seq_hex_dump +EXPORT_SYMBOL vmlinux 0x62f8e5fb fb_pan_display +EXPORT_SYMBOL vmlinux 0x63066695 abx500_startup_irq_enabled +EXPORT_SYMBOL vmlinux 0x63080d12 mark_buffer_async_write +EXPORT_SYMBOL vmlinux 0x630b343f _dev_info +EXPORT_SYMBOL vmlinux 0x630f2cb8 _raw_read_lock_irqsave +EXPORT_SYMBOL vmlinux 0x63187451 pcie_aspm_support_enabled +EXPORT_SYMBOL vmlinux 0x6318fd1b __udp_disconnect +EXPORT_SYMBOL vmlinux 0x631d06aa cpu_rmap_put +EXPORT_SYMBOL vmlinux 0x63230633 ZSTD_initCStream +EXPORT_SYMBOL vmlinux 0x63231d35 omap_get_dma_src_pos +EXPORT_SYMBOL vmlinux 0x63284d79 ip_frag_init +EXPORT_SYMBOL vmlinux 0x6340a658 mmc_gpiod_request_ro +EXPORT_SYMBOL vmlinux 0x6342f99f mipi_dsi_create_packet +EXPORT_SYMBOL vmlinux 0x635aa7f0 datagram_poll +EXPORT_SYMBOL vmlinux 0x635ff76d LZ4_saveDict +EXPORT_SYMBOL vmlinux 0x6367ceb4 simple_empty +EXPORT_SYMBOL vmlinux 0x6371a339 iov_iter_gap_alignment +EXPORT_SYMBOL vmlinux 0x6373f61a sg_miter_stop +EXPORT_SYMBOL vmlinux 0x6386c8a4 bio_split +EXPORT_SYMBOL vmlinux 0x638aa379 dev_trans_start +EXPORT_SYMBOL vmlinux 0x6390d842 serio_open +EXPORT_SYMBOL vmlinux 0x63a04e28 simple_dir_operations +EXPORT_SYMBOL vmlinux 0x63a58370 flow_action_cookie_destroy +EXPORT_SYMBOL vmlinux 0x63a7c28c bitmap_find_free_region +EXPORT_SYMBOL vmlinux 0x63a8ec70 splice_direct_to_actor +EXPORT_SYMBOL vmlinux 0x63b01a85 devfreq_register_opp_notifier +EXPORT_SYMBOL vmlinux 0x63c4d61f __bitmap_weight +EXPORT_SYMBOL vmlinux 0x63c7965b vm_map_ram +EXPORT_SYMBOL vmlinux 0x63eb9355 panic_blink +EXPORT_SYMBOL vmlinux 0x6405dcd3 slhc_toss +EXPORT_SYMBOL vmlinux 0x64127b67 bitmap_find_next_zero_area_off +EXPORT_SYMBOL vmlinux 0x643d9ba1 groups_free +EXPORT_SYMBOL vmlinux 0x6443babd ZSTD_compressContinue +EXPORT_SYMBOL vmlinux 0x645662f7 vfs_mkdir +EXPORT_SYMBOL vmlinux 0x64650d8b sg_miter_next +EXPORT_SYMBOL vmlinux 0x647af474 prepare_to_wait_event +EXPORT_SYMBOL vmlinux 0x647faf31 flow_indr_dev_unregister +EXPORT_SYMBOL vmlinux 0x6481ffe0 hsiphash_1u32 +EXPORT_SYMBOL vmlinux 0x648eb59d gc_inflight_list +EXPORT_SYMBOL vmlinux 0x64999478 congestion_wait +EXPORT_SYMBOL vmlinux 0x64a3a1ce skb_put +EXPORT_SYMBOL vmlinux 0x64a9c928 default_blu +EXPORT_SYMBOL vmlinux 0x64c56877 rtnl_configure_link +EXPORT_SYMBOL vmlinux 0x64c6f023 dev_get_by_index_rcu +EXPORT_SYMBOL vmlinux 0x64c74969 posix_acl_to_xattr +EXPORT_SYMBOL vmlinux 0x64d32fbc pci_disable_device +EXPORT_SYMBOL vmlinux 0x64dd24df nla_put_64bit +EXPORT_SYMBOL vmlinux 0x64e5dca9 xfrm_state_check_expire +EXPORT_SYMBOL vmlinux 0x64efd203 iov_iter_advance +EXPORT_SYMBOL vmlinux 0x64f6899d generic_update_time +EXPORT_SYMBOL vmlinux 0x650f8603 snd_pcm_format_silence_64 +EXPORT_SYMBOL vmlinux 0x6513a3fa fb_get_color_depth +EXPORT_SYMBOL vmlinux 0x65143988 inet_shutdown +EXPORT_SYMBOL vmlinux 0x651a4139 test_taint +EXPORT_SYMBOL vmlinux 0x652032cb mac_pton +EXPORT_SYMBOL vmlinux 0x6520859a sync_blockdev +EXPORT_SYMBOL vmlinux 0x65235519 vga_client_register +EXPORT_SYMBOL vmlinux 0x65408378 zlib_inflate_blob +EXPORT_SYMBOL vmlinux 0x65464c16 clkdev_drop +EXPORT_SYMBOL vmlinux 0x6578533e prepare_to_wait +EXPORT_SYMBOL vmlinux 0x65827213 genphy_suspend +EXPORT_SYMBOL vmlinux 0x658ce1a8 xxh64_reset +EXPORT_SYMBOL vmlinux 0x65947c9e pipe_lock +EXPORT_SYMBOL vmlinux 0x65983753 unregister_framebuffer +EXPORT_SYMBOL vmlinux 0x659ded26 xfrm_flush_gc +EXPORT_SYMBOL vmlinux 0x65c3f18b free_buffer_head +EXPORT_SYMBOL vmlinux 0x65d12494 xp_dma_sync_for_device_slow +EXPORT_SYMBOL vmlinux 0x65d411e9 idr_get_next +EXPORT_SYMBOL vmlinux 0x65d9e877 cpufreq_register_notifier +EXPORT_SYMBOL vmlinux 0x65dccf13 xz_dec_end +EXPORT_SYMBOL vmlinux 0x65dd6562 del_random_ready_callback +EXPORT_SYMBOL vmlinux 0x65df1b47 sock_wfree +EXPORT_SYMBOL vmlinux 0x65fd98f6 tcp_parse_options +EXPORT_SYMBOL vmlinux 0x660b434e misc_deregister +EXPORT_SYMBOL vmlinux 0x66474aa4 neigh_proc_dointvec +EXPORT_SYMBOL vmlinux 0x664c360a param_set_long +EXPORT_SYMBOL vmlinux 0x66556307 __skb_flow_dissect +EXPORT_SYMBOL vmlinux 0x665c673b mipi_dsi_driver_register_full +EXPORT_SYMBOL vmlinux 0x665e0ec1 of_find_node_with_property +EXPORT_SYMBOL vmlinux 0x66657274 kmalloc_order +EXPORT_SYMBOL vmlinux 0x666863dc par_io_config_pin +EXPORT_SYMBOL vmlinux 0x666993a7 qdisc_offload_dump_helper +EXPORT_SYMBOL vmlinux 0x6673f96d xxh32_reset +EXPORT_SYMBOL vmlinux 0x6674bd14 omap_vrfb_request_ctx +EXPORT_SYMBOL vmlinux 0x6691e072 snd_jack_add_new_kctl +EXPORT_SYMBOL vmlinux 0x6695e395 inet_rcv_saddr_equal +EXPORT_SYMBOL vmlinux 0x669b65d0 seg6_push_hmac +EXPORT_SYMBOL vmlinux 0x669e3d93 d_path +EXPORT_SYMBOL vmlinux 0x66a74534 d_alloc +EXPORT_SYMBOL vmlinux 0x66ab2a54 vfs_setpos +EXPORT_SYMBOL vmlinux 0x66ce73fb __nlmsg_put +EXPORT_SYMBOL vmlinux 0x66dbb4d2 ZSTD_initCDict +EXPORT_SYMBOL vmlinux 0x67092819 resource_list_create_entry +EXPORT_SYMBOL vmlinux 0x67295bff iterate_supers_type +EXPORT_SYMBOL vmlinux 0x672c777c bio_advance +EXPORT_SYMBOL vmlinux 0x672fb170 dec_node_page_state +EXPORT_SYMBOL vmlinux 0x6738d380 snd_jack_set_key +EXPORT_SYMBOL vmlinux 0x6743708f sk_stream_wait_close +EXPORT_SYMBOL vmlinux 0x6746f964 zero_fill_bio_iter +EXPORT_SYMBOL vmlinux 0x6749d53f hdmi_vendor_infoframe_init +EXPORT_SYMBOL vmlinux 0x674ad5c1 uart_match_port +EXPORT_SYMBOL vmlinux 0x674c72fc vfs_link +EXPORT_SYMBOL vmlinux 0x6759ea6a __set_page_dirty_buffers +EXPORT_SYMBOL vmlinux 0x67690fa6 __SetPageMovable +EXPORT_SYMBOL vmlinux 0x676bbc0f _set_bit +EXPORT_SYMBOL vmlinux 0x676ceb2a neigh_connected_output +EXPORT_SYMBOL vmlinux 0x677a31f9 flow_rule_match_enc_keyid +EXPORT_SYMBOL vmlinux 0x677fee5c dev_queue_xmit +EXPORT_SYMBOL vmlinux 0x6782d34a rename_lock +EXPORT_SYMBOL vmlinux 0x679856f5 sort_r +EXPORT_SYMBOL vmlinux 0x679cfbbf kmem_cache_free_bulk +EXPORT_SYMBOL vmlinux 0x67aa0e48 iov_iter_single_seg_count +EXPORT_SYMBOL vmlinux 0x67ad1113 devm_free_irq +EXPORT_SYMBOL vmlinux 0x67ae1bf2 get_vm_area +EXPORT_SYMBOL vmlinux 0x67aed40d elv_rb_former_request +EXPORT_SYMBOL vmlinux 0x67b27ec1 tty_std_termios +EXPORT_SYMBOL vmlinux 0x67b78eb3 seq_hlist_next_rcu +EXPORT_SYMBOL vmlinux 0x67d71a44 vm_event_states +EXPORT_SYMBOL vmlinux 0x67e9c829 scsi_target_resume +EXPORT_SYMBOL vmlinux 0x67ea6e61 trace_print_hex_dump_seq +EXPORT_SYMBOL vmlinux 0x67eaf10e netlink_rcv_skb +EXPORT_SYMBOL vmlinux 0x67fef509 jbd2_journal_start +EXPORT_SYMBOL vmlinux 0x6808c968 cpumask_next_and +EXPORT_SYMBOL vmlinux 0x68109433 sock_common_getsockopt +EXPORT_SYMBOL vmlinux 0x681c351d elm_config +EXPORT_SYMBOL vmlinux 0x683dc83d simple_readpage +EXPORT_SYMBOL vmlinux 0x685a3569 zerocopy_sg_from_iter +EXPORT_SYMBOL vmlinux 0x685da503 fscrypt_ioctl_get_policy +EXPORT_SYMBOL vmlinux 0x685e31ca groups_sort +EXPORT_SYMBOL vmlinux 0x687b6a16 kdbgetsymval +EXPORT_SYMBOL vmlinux 0x68874cbd pci_irq_get_affinity +EXPORT_SYMBOL vmlinux 0x68a24153 snd_pcm_format_physical_width +EXPORT_SYMBOL vmlinux 0x68a90b51 get_default_font +EXPORT_SYMBOL vmlinux 0x68b3994a snd_pcm_hw_param_last +EXPORT_SYMBOL vmlinux 0x68b9fca9 i2c_smbus_read_i2c_block_data +EXPORT_SYMBOL vmlinux 0x68ba8ebd inode_nohighmem +EXPORT_SYMBOL vmlinux 0x68fb581a icst307_idx2s +EXPORT_SYMBOL vmlinux 0x690ea859 inode_newsize_ok +EXPORT_SYMBOL vmlinux 0x693be22a free_inode_nonrcu +EXPORT_SYMBOL vmlinux 0x69493b1a kstrtos16 +EXPORT_SYMBOL vmlinux 0x695d10ca snd_timer_new +EXPORT_SYMBOL vmlinux 0x696338c4 ip_defrag +EXPORT_SYMBOL vmlinux 0x69668826 netdev_increment_features +EXPORT_SYMBOL vmlinux 0x6971447a rtc_month_days +EXPORT_SYMBOL vmlinux 0x698f3f75 genlmsg_put +EXPORT_SYMBOL vmlinux 0x699e2f56 tty_register_ldisc +EXPORT_SYMBOL vmlinux 0x69ad2f20 kstrtouint +EXPORT_SYMBOL vmlinux 0x69b6f8d9 omap_set_dma_transfer_params +EXPORT_SYMBOL vmlinux 0x69b80afc napi_gro_receive +EXPORT_SYMBOL vmlinux 0x69c9b121 xfrm_parse_spi +EXPORT_SYMBOL vmlinux 0x69de8757 vme_check_window +EXPORT_SYMBOL vmlinux 0x69e51d08 __alloc_bucket_spinlocks +EXPORT_SYMBOL vmlinux 0x69f14e06 mmc_can_gpio_cd +EXPORT_SYMBOL vmlinux 0x69f23314 of_device_is_big_endian +EXPORT_SYMBOL vmlinux 0x69febe8f xfrm_state_delete_tunnel +EXPORT_SYMBOL vmlinux 0x6a037cf1 mempool_kfree +EXPORT_SYMBOL vmlinux 0x6a06fe13 mutex_lock_interruptible +EXPORT_SYMBOL vmlinux 0x6a24c43f netpoll_send_udp +EXPORT_SYMBOL vmlinux 0x6a263ac2 snd_pcm_hw_constraint_msbits +EXPORT_SYMBOL vmlinux 0x6a5c679c neigh_resolve_output +EXPORT_SYMBOL vmlinux 0x6a5cb5ee __get_free_pages +EXPORT_SYMBOL vmlinux 0x6a5cdc2f dquot_initialize +EXPORT_SYMBOL vmlinux 0x6a5ecb18 unregister_module_notifier +EXPORT_SYMBOL vmlinux 0x6a655fb9 set_anon_super +EXPORT_SYMBOL vmlinux 0x6a71cfb1 iov_iter_alignment +EXPORT_SYMBOL vmlinux 0x6a74fb09 tcp_req_err +EXPORT_SYMBOL vmlinux 0x6a8ab71d mmc_gpio_set_cd_wake +EXPORT_SYMBOL vmlinux 0x6ab16882 of_device_get_match_data +EXPORT_SYMBOL vmlinux 0x6ab487c4 blk_limits_io_opt +EXPORT_SYMBOL vmlinux 0x6ab9395a tc_setup_cb_replace +EXPORT_SYMBOL vmlinux 0x6adbda03 snd_timer_instance_new +EXPORT_SYMBOL vmlinux 0x6add5c9a dmi_find_device +EXPORT_SYMBOL vmlinux 0x6adecc7a ns_capable +EXPORT_SYMBOL vmlinux 0x6ae228b5 mmc_set_blocklen +EXPORT_SYMBOL vmlinux 0x6aeefac4 zlib_deflateReset +EXPORT_SYMBOL vmlinux 0x6af7b21a packing +EXPORT_SYMBOL vmlinux 0x6afb5936 scsi_host_alloc +EXPORT_SYMBOL vmlinux 0x6b058799 pci_request_regions +EXPORT_SYMBOL vmlinux 0x6b06907f flush_signals +EXPORT_SYMBOL vmlinux 0x6b1afa80 device_add_disk_no_queue_reg +EXPORT_SYMBOL vmlinux 0x6b29c7fa softnet_data +EXPORT_SYMBOL vmlinux 0x6b2dc060 dump_stack +EXPORT_SYMBOL vmlinux 0x6b322fbd __xa_alloc_cyclic +EXPORT_SYMBOL vmlinux 0x6b35aebc pci_ep_cfs_add_epf_group +EXPORT_SYMBOL vmlinux 0x6b3cd8a0 __dev_get_by_name +EXPORT_SYMBOL vmlinux 0x6b4afcd7 backlight_device_set_brightness +EXPORT_SYMBOL vmlinux 0x6b55acd0 rtnl_lock_killable +EXPORT_SYMBOL vmlinux 0x6b604710 lockref_get_not_zero +EXPORT_SYMBOL vmlinux 0x6b847f66 __dynamic_dev_dbg +EXPORT_SYMBOL vmlinux 0x6b853d06 ns_to_kernel_old_timeval +EXPORT_SYMBOL vmlinux 0x6b8964a9 nvm_register +EXPORT_SYMBOL vmlinux 0x6b8bf149 netif_receive_skb_list +EXPORT_SYMBOL vmlinux 0x6b8ceefd security_inode_invalidate_secctx +EXPORT_SYMBOL vmlinux 0x6b8d6b69 tty_port_hangup +EXPORT_SYMBOL vmlinux 0x6b93b140 devm_of_clk_del_provider +EXPORT_SYMBOL vmlinux 0x6bab002d crypto_sha256_finup +EXPORT_SYMBOL vmlinux 0x6bac0f4d pci_remap_iospace +EXPORT_SYMBOL vmlinux 0x6bc3fbc0 __unregister_chrdev +EXPORT_SYMBOL vmlinux 0x6bd0c8ae tegra_dfll_register +EXPORT_SYMBOL vmlinux 0x6bf6792a cpufreq_get_policy +EXPORT_SYMBOL vmlinux 0x6c0385d7 netif_set_real_num_rx_queues +EXPORT_SYMBOL vmlinux 0x6c19acc7 tcp_rtx_synack +EXPORT_SYMBOL vmlinux 0x6c1bf58a proc_create_mount_point +EXPORT_SYMBOL vmlinux 0x6c1ce5ce strcspn +EXPORT_SYMBOL vmlinux 0x6c257ac0 tty_termios_hw_change +EXPORT_SYMBOL vmlinux 0x6c2f76e4 rproc_elf_load_rsc_table +EXPORT_SYMBOL vmlinux 0x6c5cf9dc devm_extcon_unregister_notifier +EXPORT_SYMBOL vmlinux 0x6c61ce70 num_registered_fb +EXPORT_SYMBOL vmlinux 0x6c810e42 __xa_clear_mark +EXPORT_SYMBOL vmlinux 0x6c8641d5 mipi_dsi_generic_write +EXPORT_SYMBOL vmlinux 0x6c961f18 udp_set_csum +EXPORT_SYMBOL vmlinux 0x6cb46525 netlbl_catmap_walk +EXPORT_SYMBOL vmlinux 0x6cbcd95e ZSTD_compressStream +EXPORT_SYMBOL vmlinux 0x6cd2e444 insert_inode_locked4 +EXPORT_SYMBOL vmlinux 0x6cd5743c xsk_umem_uses_need_wakeup +EXPORT_SYMBOL vmlinux 0x6cd677a4 tty_port_close +EXPORT_SYMBOL vmlinux 0x6cdc5c6b nla_strlcpy +EXPORT_SYMBOL vmlinux 0x6cf0d67d qe_get_num_of_snums +EXPORT_SYMBOL vmlinux 0x6cf2ea5f vga_put +EXPORT_SYMBOL vmlinux 0x6cfb4904 tcp_md5_hash_key +EXPORT_SYMBOL vmlinux 0x6d01a90c __pskb_pull_tail +EXPORT_SYMBOL vmlinux 0x6d1263f8 ip_tunnel_header_ops +EXPORT_SYMBOL vmlinux 0x6d16caa1 pci_request_regions_exclusive +EXPORT_SYMBOL vmlinux 0x6d1fce18 genphy_read_mmd_unsupported +EXPORT_SYMBOL vmlinux 0x6d294e43 clock_t_to_jiffies +EXPORT_SYMBOL vmlinux 0x6d32023d mipi_dsi_dcs_set_display_brightness +EXPORT_SYMBOL vmlinux 0x6d3348f7 nvm_unregister +EXPORT_SYMBOL vmlinux 0x6d340f64 tty_termios_input_baud_rate +EXPORT_SYMBOL vmlinux 0x6d34557a dma_resv_copy_fences +EXPORT_SYMBOL vmlinux 0x6d3880b8 block_write_end +EXPORT_SYMBOL vmlinux 0x6d39cf31 input_set_poll_interval +EXPORT_SYMBOL vmlinux 0x6d3fbe89 snd_timer_continue +EXPORT_SYMBOL vmlinux 0x6d4567dd dev_get_port_parent_id +EXPORT_SYMBOL vmlinux 0x6d474382 configfs_depend_item_unlocked +EXPORT_SYMBOL vmlinux 0x6d4fefc6 md_reload_sb +EXPORT_SYMBOL vmlinux 0x6d64c2b9 load_nls +EXPORT_SYMBOL vmlinux 0x6d662533 _find_first_bit_le +EXPORT_SYMBOL vmlinux 0x6d7c7dcc bitmap_cut +EXPORT_SYMBOL vmlinux 0x6d89b199 proc_dointvec_minmax +EXPORT_SYMBOL vmlinux 0x6d9140b3 configfs_register_group +EXPORT_SYMBOL vmlinux 0x6da2f35a of_get_pci_address +EXPORT_SYMBOL vmlinux 0x6dabde4d mipi_dsi_dcs_set_display_off +EXPORT_SYMBOL vmlinux 0x6dba619b dev_uc_sync +EXPORT_SYMBOL vmlinux 0x6dbf29d8 iterate_fd +EXPORT_SYMBOL vmlinux 0x6dc58d89 devm_clk_get +EXPORT_SYMBOL vmlinux 0x6dca4a26 adjust_resource +EXPORT_SYMBOL vmlinux 0x6dcf857f uuid_null +EXPORT_SYMBOL vmlinux 0x6dd35de8 inet_addr_type +EXPORT_SYMBOL vmlinux 0x6df1aaf1 kernel_sigaction +EXPORT_SYMBOL vmlinux 0x6df585b9 vme_dma_request +EXPORT_SYMBOL vmlinux 0x6df65675 inet_csk_complete_hashdance +EXPORT_SYMBOL vmlinux 0x6df80b99 iget_failed +EXPORT_SYMBOL vmlinux 0x6e0d3b2a cdev_device_add +EXPORT_SYMBOL vmlinux 0x6e475df0 qdisc_watchdog_init +EXPORT_SYMBOL vmlinux 0x6e4e7468 vmap +EXPORT_SYMBOL vmlinux 0x6e4e7714 dma_fence_chain_ops +EXPORT_SYMBOL vmlinux 0x6e56c732 dquot_set_dqblk +EXPORT_SYMBOL vmlinux 0x6e6fb369 lease_get_mtime +EXPORT_SYMBOL vmlinux 0x6e720ff2 rtnl_unlock +EXPORT_SYMBOL vmlinux 0x6e7ced10 pci_set_power_state +EXPORT_SYMBOL vmlinux 0x6e81a8ec __dec_zone_page_state +EXPORT_SYMBOL vmlinux 0x6e90e460 __dquot_alloc_space +EXPORT_SYMBOL vmlinux 0x6e9dd606 __symbol_put +EXPORT_SYMBOL vmlinux 0x6ea55afb mount_subtree +EXPORT_SYMBOL vmlinux 0x6ea9363b force_sig +EXPORT_SYMBOL vmlinux 0x6eb7016a snd_ctl_notify +EXPORT_SYMBOL vmlinux 0x6eba4bce ipv6_chk_prefix +EXPORT_SYMBOL vmlinux 0x6ec0fa3e call_fib_notifier +EXPORT_SYMBOL vmlinux 0x6ecdb792 __percpu_counter_init +EXPORT_SYMBOL vmlinux 0x6ed8a5fc hdmi_drm_infoframe_check +EXPORT_SYMBOL vmlinux 0x6ef3ad5f pci_bus_read_config_byte +EXPORT_SYMBOL vmlinux 0x6ef8fcd8 snd_pcm_format_linear +EXPORT_SYMBOL vmlinux 0x6f013ecd __init_rwsem +EXPORT_SYMBOL vmlinux 0x6f01d0d6 iw_handler_set_spy +EXPORT_SYMBOL vmlinux 0x6f437d8a register_gifconf +EXPORT_SYMBOL vmlinux 0x6f52d66d io_uring_get_socket +EXPORT_SYMBOL vmlinux 0x6f5738aa __sk_mem_raise_allocated +EXPORT_SYMBOL vmlinux 0x6f63ec3e param_get_ullong +EXPORT_SYMBOL vmlinux 0x6f6409c1 dm_put_table_device +EXPORT_SYMBOL vmlinux 0x6f8085fe from_kgid_munged +EXPORT_SYMBOL vmlinux 0x6f8dbb3a pci_disable_msi +EXPORT_SYMBOL vmlinux 0x6f8f674a bpf_dispatcher_xdp_func +EXPORT_SYMBOL vmlinux 0x6fa1d16e devm_pci_remap_cfg_resource +EXPORT_SYMBOL vmlinux 0x6fa1f11d xfrm6_protocol_register +EXPORT_SYMBOL vmlinux 0x6fbe4717 idr_replace +EXPORT_SYMBOL vmlinux 0x6fbe9d80 mr_table_dump +EXPORT_SYMBOL vmlinux 0x6fcb87a1 touch_softlockup_watchdog +EXPORT_SYMBOL vmlinux 0x6fce3680 tcf_idr_cleanup +EXPORT_SYMBOL vmlinux 0x6fd9c35a __clzdi2 +EXPORT_SYMBOL vmlinux 0x70002fe8 siphash_1u32 +EXPORT_SYMBOL vmlinux 0x70097aa0 nand_bch_free +EXPORT_SYMBOL vmlinux 0x702946da ucs2_strlen +EXPORT_SYMBOL vmlinux 0x70426057 page_readlink +EXPORT_SYMBOL vmlinux 0x705d933f scsi_partsize +EXPORT_SYMBOL vmlinux 0x70679685 tso_count_descs +EXPORT_SYMBOL vmlinux 0x70703993 hdmi_spd_infoframe_pack +EXPORT_SYMBOL vmlinux 0x7071a4f2 cmdline_parts_free +EXPORT_SYMBOL vmlinux 0x7071b848 sdev_enable_disk_events +EXPORT_SYMBOL vmlinux 0x70873091 sock_create_lite +EXPORT_SYMBOL vmlinux 0x70d52ef1 __skb_free_datagram_locked +EXPORT_SYMBOL vmlinux 0x70d54591 jbd2_journal_inode_ranged_write +EXPORT_SYMBOL vmlinux 0x70e08262 xfrm_dev_state_flush +EXPORT_SYMBOL vmlinux 0x70e38f10 tcf_em_tree_validate +EXPORT_SYMBOL vmlinux 0x70ea8f09 dma_direct_map_resource +EXPORT_SYMBOL vmlinux 0x710befe5 bio_endio +EXPORT_SYMBOL vmlinux 0x711b8a9b __crc32c_le_shift +EXPORT_SYMBOL vmlinux 0x712110ab proc_dointvec_ms_jiffies +EXPORT_SYMBOL vmlinux 0x7127748b __skb_gso_segment +EXPORT_SYMBOL vmlinux 0x7129e5f8 hex_asc +EXPORT_SYMBOL vmlinux 0x71401626 register_netdevice_notifier_dev_net +EXPORT_SYMBOL vmlinux 0x71432c37 ZSTD_CCtxWorkspaceBound +EXPORT_SYMBOL vmlinux 0x71478e0e inet_unregister_protosw +EXPORT_SYMBOL vmlinux 0x714a4f7f sk_stream_wait_connect +EXPORT_SYMBOL vmlinux 0x71506623 xfrm6_rcv +EXPORT_SYMBOL vmlinux 0x716b58cb ioport_resource +EXPORT_SYMBOL vmlinux 0x716eea8f mdio_driver_register +EXPORT_SYMBOL vmlinux 0x7171121c overflowgid +EXPORT_SYMBOL vmlinux 0x71a50dbc register_blkdev +EXPORT_SYMBOL vmlinux 0x71a672ef dmam_pool_destroy +EXPORT_SYMBOL vmlinux 0x71a85c2a inet_sendpage +EXPORT_SYMBOL vmlinux 0x71a9f086 __hw_addr_sync_dev +EXPORT_SYMBOL vmlinux 0x71b29d5d revert_creds +EXPORT_SYMBOL vmlinux 0x71bf6bf9 flow_rule_match_tcp +EXPORT_SYMBOL vmlinux 0x71c1478c register_shrinker +EXPORT_SYMBOL vmlinux 0x71c7859d vfs_fadvise +EXPORT_SYMBOL vmlinux 0x71c90087 memcmp +EXPORT_SYMBOL vmlinux 0x71f016b3 set_page_dirty +EXPORT_SYMBOL vmlinux 0x71f7de4f proc_do_large_bitmap +EXPORT_SYMBOL vmlinux 0x7231fe7f scsi_ioctl +EXPORT_SYMBOL vmlinux 0x7245003e del_gendisk +EXPORT_SYMBOL vmlinux 0x7248828b __blockdev_direct_IO +EXPORT_SYMBOL vmlinux 0x724ddac7 utf8version_is_supported +EXPORT_SYMBOL vmlinux 0x72531440 ps2_drain +EXPORT_SYMBOL vmlinux 0x72571ca5 __tcf_em_tree_match +EXPORT_SYMBOL vmlinux 0x725976cc nf_log_set +EXPORT_SYMBOL vmlinux 0x7265142c dma_alloc_attrs +EXPORT_SYMBOL vmlinux 0x728b2c2b xfrm_input +EXPORT_SYMBOL vmlinux 0x72973c5c amba_driver_register +EXPORT_SYMBOL vmlinux 0x72a99fa7 wireless_send_event +EXPORT_SYMBOL vmlinux 0x72aef101 wireless_spy_update +EXPORT_SYMBOL vmlinux 0x72b9d287 default_grn +EXPORT_SYMBOL vmlinux 0x72c98f4c mount_nodev +EXPORT_SYMBOL vmlinux 0x72cd8feb fbcon_set_bitops +EXPORT_SYMBOL vmlinux 0x72d29a16 __get_hash_from_flowi6 +EXPORT_SYMBOL vmlinux 0x72d49c21 sk_net_capable +EXPORT_SYMBOL vmlinux 0x72ea7b2d scsi_device_type +EXPORT_SYMBOL vmlinux 0x72ef2526 security_inode_copy_up +EXPORT_SYMBOL vmlinux 0x72f90d1a netdev_txq_to_tc +EXPORT_SYMBOL vmlinux 0x73076315 snd_pci_quirk_lookup_id +EXPORT_SYMBOL vmlinux 0x7315a4e9 twl6030_mmc_card_detect_config +EXPORT_SYMBOL vmlinux 0x7317790e lockref_put_or_lock +EXPORT_SYMBOL vmlinux 0x732c6127 pci_enable_wake +EXPORT_SYMBOL vmlinux 0x73361eaa netlink_set_err +EXPORT_SYMBOL vmlinux 0x733ccdf6 mr_mfc_seq_next +EXPORT_SYMBOL vmlinux 0x7350d928 key_alloc +EXPORT_SYMBOL vmlinux 0x735f33b0 mutex_is_locked +EXPORT_SYMBOL vmlinux 0x736d2b25 i2c_verify_adapter +EXPORT_SYMBOL vmlinux 0x7380dffa argv_split +EXPORT_SYMBOL vmlinux 0x73abb180 alloc_contig_range +EXPORT_SYMBOL vmlinux 0x73b2a594 con_is_visible +EXPORT_SYMBOL vmlinux 0x73b386ba devm_backlight_device_unregister +EXPORT_SYMBOL vmlinux 0x73b4b783 init_pseudo +EXPORT_SYMBOL vmlinux 0x73e19f0e fs_lookup_param +EXPORT_SYMBOL vmlinux 0x73e20c1c strlcpy +EXPORT_SYMBOL vmlinux 0x73e457c8 security_sb_clone_mnt_opts +EXPORT_SYMBOL vmlinux 0x73ecc6b1 ps2_init +EXPORT_SYMBOL vmlinux 0x74103ee2 hmm_range_fault +EXPORT_SYMBOL vmlinux 0x7410aba2 strreplace +EXPORT_SYMBOL vmlinux 0x7411d71d fbcon_set_tileops +EXPORT_SYMBOL vmlinux 0x74196948 phy_remove_link_mode +EXPORT_SYMBOL vmlinux 0x741b4122 netif_carrier_off +EXPORT_SYMBOL vmlinux 0x742578a5 wait_for_random_bytes +EXPORT_SYMBOL vmlinux 0x744302ed __register_binfmt +EXPORT_SYMBOL vmlinux 0x744705ba ipv6_chk_addr_and_flags +EXPORT_SYMBOL vmlinux 0x744f4f23 __cleancache_invalidate_page +EXPORT_SYMBOL vmlinux 0x7453d3e8 security_release_secctx +EXPORT_SYMBOL vmlinux 0x745c2be7 vfs_dedupe_file_range_one +EXPORT_SYMBOL vmlinux 0x746cacd2 wait_on_page_bit_killable +EXPORT_SYMBOL vmlinux 0x7472cfdd genphy_read_lpa +EXPORT_SYMBOL vmlinux 0x747bbcfb ip6tun_encaps +EXPORT_SYMBOL vmlinux 0x74804e6d update_devfreq +EXPORT_SYMBOL vmlinux 0x7481e31d netdev_master_upper_dev_get_rcu +EXPORT_SYMBOL vmlinux 0x748856c5 kfree_skb +EXPORT_SYMBOL vmlinux 0x749849d8 LZ4_loadDict +EXPORT_SYMBOL vmlinux 0x74c134b9 __sw_hweight32 +EXPORT_SYMBOL vmlinux 0x74c1e471 ipv6_chk_custom_prefix +EXPORT_SYMBOL vmlinux 0x74e46dac imx_ssi_fiq_tx_buffer +EXPORT_SYMBOL vmlinux 0x74e5ff1a udpv6_encap_enable +EXPORT_SYMBOL vmlinux 0x74e78d5e mmc_sw_reset +EXPORT_SYMBOL vmlinux 0x74e830df netdev_unbind_sb_channel +EXPORT_SYMBOL vmlinux 0x74fa9cc6 refcount_dec_and_mutex_lock +EXPORT_SYMBOL vmlinux 0x7505bdef memchr_inv +EXPORT_SYMBOL vmlinux 0x7520ae72 try_to_writeback_inodes_sb +EXPORT_SYMBOL vmlinux 0x75259e4e neigh_event_ns +EXPORT_SYMBOL vmlinux 0x754841c7 ppp_unregister_compressor +EXPORT_SYMBOL vmlinux 0x7555bcc2 import_single_range +EXPORT_SYMBOL vmlinux 0x7567d381 __get_fiq_regs +EXPORT_SYMBOL vmlinux 0x756f23f9 posix_acl_from_xattr +EXPORT_SYMBOL vmlinux 0x757721f2 vm_mmap +EXPORT_SYMBOL vmlinux 0x757f088f cpm_muram_offset +EXPORT_SYMBOL vmlinux 0x759431df mipi_dsi_dcs_get_pixel_format +EXPORT_SYMBOL vmlinux 0x75bda77a seq_hlist_next +EXPORT_SYMBOL vmlinux 0x75c0cc6b simple_rename +EXPORT_SYMBOL vmlinux 0x75d0deb9 nsecs_to_jiffies64 +EXPORT_SYMBOL vmlinux 0x75d127a0 fscrypt_put_encryption_info +EXPORT_SYMBOL vmlinux 0x75d499dd vmcore_add_device_dump +EXPORT_SYMBOL vmlinux 0x75ee3b52 remove_arg_zero +EXPORT_SYMBOL vmlinux 0x75f1cf49 iov_iter_for_each_range +EXPORT_SYMBOL vmlinux 0x760a0f4f yield +EXPORT_SYMBOL vmlinux 0x760a11d1 __cleancache_init_shared_fs +EXPORT_SYMBOL vmlinux 0x7647726c handle_sysrq +EXPORT_SYMBOL vmlinux 0x7668736e xfrm_find_acq_byseq +EXPORT_SYMBOL vmlinux 0x766a0927 mempool_alloc_pages +EXPORT_SYMBOL vmlinux 0x766c952b abx500_mask_and_set_register_interruptible +EXPORT_SYMBOL vmlinux 0x76732fd4 kmap_to_page +EXPORT_SYMBOL vmlinux 0x768aec8c inet_csk_reqsk_queue_drop +EXPORT_SYMBOL vmlinux 0x769f6e64 errseq_check +EXPORT_SYMBOL vmlinux 0x76a4ffd2 netdev_master_upper_dev_link +EXPORT_SYMBOL vmlinux 0x76a9661b snd_ctl_boolean_mono_info +EXPORT_SYMBOL vmlinux 0x76cf47f6 __aeabi_llsl +EXPORT_SYMBOL vmlinux 0x76cf76aa fscrypt_fname_disk_to_usr +EXPORT_SYMBOL vmlinux 0x76d3cd60 laptop_mode +EXPORT_SYMBOL vmlinux 0x76d451c4 add_taint +EXPORT_SYMBOL vmlinux 0x76d5020b skb_kill_datagram +EXPORT_SYMBOL vmlinux 0x76de99c7 starget_for_each_device +EXPORT_SYMBOL vmlinux 0x7705c62d backlight_device_get_by_type +EXPORT_SYMBOL vmlinux 0x7732159c free_irq_cpu_rmap +EXPORT_SYMBOL vmlinux 0x77380b99 kobject_put +EXPORT_SYMBOL vmlinux 0x77449b44 snd_seq_root +EXPORT_SYMBOL vmlinux 0x7754a702 module_layout +EXPORT_SYMBOL vmlinux 0x7755509a unregister_netdevice_queue +EXPORT_SYMBOL vmlinux 0x77602189 snd_unregister_device +EXPORT_SYMBOL vmlinux 0x7765e403 ipv6_setsockopt +EXPORT_SYMBOL vmlinux 0x77662ef8 ihold +EXPORT_SYMBOL vmlinux 0x777919cb scsi_eh_finish_cmd +EXPORT_SYMBOL vmlinux 0x7779eafc jbd2_journal_begin_ordered_truncate +EXPORT_SYMBOL vmlinux 0x777b55ef scsi_device_get +EXPORT_SYMBOL vmlinux 0x777bb99f tcp_mmap +EXPORT_SYMBOL vmlinux 0x777da8f3 ps2_end_command +EXPORT_SYMBOL vmlinux 0x7791193f icst525_s2div +EXPORT_SYMBOL vmlinux 0x7797faa2 snd_ctl_register_ioctl +EXPORT_SYMBOL vmlinux 0x779a18af kstrtoll +EXPORT_SYMBOL vmlinux 0x779acd73 dquot_release +EXPORT_SYMBOL vmlinux 0x77bc13a0 strim +EXPORT_SYMBOL vmlinux 0x77c19b09 abx500_set_register_interruptible +EXPORT_SYMBOL vmlinux 0x77c871dd scsi_host_get +EXPORT_SYMBOL vmlinux 0x77e9eb37 aes_encrypt +EXPORT_SYMBOL vmlinux 0x77f6c690 _raw_read_lock_bh +EXPORT_SYMBOL vmlinux 0x77f6f183 kmalloc_order_trace +EXPORT_SYMBOL vmlinux 0x7807f0f8 schedule_timeout_idle +EXPORT_SYMBOL vmlinux 0x780e4b25 md_finish_reshape +EXPORT_SYMBOL vmlinux 0x78121a11 md_bitmap_endwrite +EXPORT_SYMBOL vmlinux 0x78277b6d mdiobus_register_device +EXPORT_SYMBOL vmlinux 0x78304139 md_check_recovery +EXPORT_SYMBOL vmlinux 0x783b977a kstrtobool_from_user +EXPORT_SYMBOL vmlinux 0x7840e278 neigh_direct_output +EXPORT_SYMBOL vmlinux 0x78431876 ZSTD_compressBegin_usingCDict +EXPORT_SYMBOL vmlinux 0x78439d43 get_tree_bdev +EXPORT_SYMBOL vmlinux 0x78525869 vfs_ioc_fssetxattr_check +EXPORT_SYMBOL vmlinux 0x78779c0b set_fiq_handler +EXPORT_SYMBOL vmlinux 0x7880c781 dm_kcopyd_prepare_callback +EXPORT_SYMBOL vmlinux 0x789affb1 frontswap_tmem_exclusive_gets +EXPORT_SYMBOL vmlinux 0x789ca253 security_binder_transfer_binder +EXPORT_SYMBOL vmlinux 0x78a16f48 aes_decrypt +EXPORT_SYMBOL vmlinux 0x78a25fea lookup_one_len_unlocked +EXPORT_SYMBOL vmlinux 0x78b70e9e nf_ct_get_tuple_skb +EXPORT_SYMBOL vmlinux 0x78c8ba75 bdput +EXPORT_SYMBOL vmlinux 0x78d6c752 __filemap_set_wb_err +EXPORT_SYMBOL vmlinux 0x78df6bd7 no_pci_devices +EXPORT_SYMBOL vmlinux 0x7917d8fe bio_integrity_alloc +EXPORT_SYMBOL vmlinux 0x791d7aad tcp_select_initial_window +EXPORT_SYMBOL vmlinux 0x792961fb netdev_lower_get_next +EXPORT_SYMBOL vmlinux 0x794765d1 mempool_free +EXPORT_SYMBOL vmlinux 0x794787af __insert_inode_hash +EXPORT_SYMBOL vmlinux 0x7973ad50 configfs_register_subsystem +EXPORT_SYMBOL vmlinux 0x797bcf94 _dev_emerg +EXPORT_SYMBOL vmlinux 0x797bde81 uart_suspend_port +EXPORT_SYMBOL vmlinux 0x797db5a2 __quota_error +EXPORT_SYMBOL vmlinux 0x79aa04a2 get_random_bytes +EXPORT_SYMBOL vmlinux 0x79b4b54f snd_mixer_oss_notify_callback +EXPORT_SYMBOL vmlinux 0x79c01772 tcp_sendpage +EXPORT_SYMBOL vmlinux 0x79d15f1f blk_pre_runtime_suspend +EXPORT_SYMBOL vmlinux 0x79d84e90 posix_lock_file +EXPORT_SYMBOL vmlinux 0x79e56760 uart_get_baud_rate +EXPORT_SYMBOL vmlinux 0x79f93867 __skb_recv_datagram +EXPORT_SYMBOL vmlinux 0x79fa1deb imx_ssi_fiq_rx_buffer +EXPORT_SYMBOL vmlinux 0x79fc577f utf8nagemax +EXPORT_SYMBOL vmlinux 0x7a00dfe3 snd_pcm_hw_param_first +EXPORT_SYMBOL vmlinux 0x7a032372 nand_read_page_raw +EXPORT_SYMBOL vmlinux 0x7a09a064 seg6_hmac_compute +EXPORT_SYMBOL vmlinux 0x7a1bcd59 gf128mul_x8_ble +EXPORT_SYMBOL vmlinux 0x7a3e8a42 radix_tree_next_chunk +EXPORT_SYMBOL vmlinux 0x7a4497db kzfree +EXPORT_SYMBOL vmlinux 0x7a4b7b3d of_translate_address +EXPORT_SYMBOL vmlinux 0x7a4cb4de scsi_is_target_device +EXPORT_SYMBOL vmlinux 0x7a74c7c1 vfs_copy_file_range +EXPORT_SYMBOL vmlinux 0x7a79b9f3 __sg_page_iter_next +EXPORT_SYMBOL vmlinux 0x7a95e5ae do_settimeofday64 +EXPORT_SYMBOL vmlinux 0x7a96ada4 jbd2_journal_invalidatepage +EXPORT_SYMBOL vmlinux 0x7a97c543 pcim_iounmap_regions +EXPORT_SYMBOL vmlinux 0x7a989d18 bio_copy_data +EXPORT_SYMBOL vmlinux 0x7a9b37e8 blk_start_plug +EXPORT_SYMBOL vmlinux 0x7aa1756e kvfree +EXPORT_SYMBOL vmlinux 0x7ab48f3d inet6_unregister_protosw +EXPORT_SYMBOL vmlinux 0x7ab88a45 system_freezing_cnt +EXPORT_SYMBOL vmlinux 0x7aba5c0b ZSTD_getParams +EXPORT_SYMBOL vmlinux 0x7abf76bc gnet_stats_copy_basic +EXPORT_SYMBOL vmlinux 0x7acbaa5e d_genocide +EXPORT_SYMBOL vmlinux 0x7acc6d19 sock_release +EXPORT_SYMBOL vmlinux 0x7ad050b9 qid_lt +EXPORT_SYMBOL vmlinux 0x7ad6c154 cdrom_number_of_slots +EXPORT_SYMBOL vmlinux 0x7adc0fbf rb_replace_node_rcu +EXPORT_SYMBOL vmlinux 0x7ade9187 gen_pool_dma_alloc +EXPORT_SYMBOL vmlinux 0x7aded2f7 down_write_trylock +EXPORT_SYMBOL vmlinux 0x7ae5d317 qe_get_snum +EXPORT_SYMBOL vmlinux 0x7ae88e68 tcp_simple_retransmit +EXPORT_SYMBOL vmlinux 0x7af7eb61 mfd_remove_devices +EXPORT_SYMBOL vmlinux 0x7afc9d8a unregister_sound_mixer +EXPORT_SYMBOL vmlinux 0x7b0192da kstrtou16 +EXPORT_SYMBOL vmlinux 0x7b026a13 dm_get_device +EXPORT_SYMBOL vmlinux 0x7b0edb07 ip_setsockopt +EXPORT_SYMBOL vmlinux 0x7b10453a register_sound_dsp +EXPORT_SYMBOL vmlinux 0x7b283ce3 prandom_bytes_state +EXPORT_SYMBOL vmlinux 0x7b2fb85d __xa_cmpxchg +EXPORT_SYMBOL vmlinux 0x7b3e94d6 put_watch_queue +EXPORT_SYMBOL vmlinux 0x7b4d5d37 of_graph_get_remote_endpoint +EXPORT_SYMBOL vmlinux 0x7b5011cf udp_flush_pending_frames +EXPORT_SYMBOL vmlinux 0x7b51b66c ZSTD_resetCStream +EXPORT_SYMBOL vmlinux 0x7b549882 unload_nls +EXPORT_SYMBOL vmlinux 0x7b5b8f31 sha256_update +EXPORT_SYMBOL vmlinux 0x7b5c8440 vm_munmap +EXPORT_SYMBOL vmlinux 0x7b74ae64 pci_enable_msix_range +EXPORT_SYMBOL vmlinux 0x7b7e0858 __skb_ext_del +EXPORT_SYMBOL vmlinux 0x7b7ee798 logfc +EXPORT_SYMBOL vmlinux 0x7b82b9ad input_unregister_handle +EXPORT_SYMBOL vmlinux 0x7b8c43c2 buffer_check_dirty_writeback +EXPORT_SYMBOL vmlinux 0x7b8eef39 dma_cache_sync +EXPORT_SYMBOL vmlinux 0x7b93beba blk_queue_segment_boundary +EXPORT_SYMBOL vmlinux 0x7b9789ca nvm_submit_io_sync +EXPORT_SYMBOL vmlinux 0x7b9d2e3c sk_filter_trim_cap +EXPORT_SYMBOL vmlinux 0x7ba5a3b4 tegra_powergate_power_off +EXPORT_SYMBOL vmlinux 0x7ba9faf2 snd_timer_pause +EXPORT_SYMBOL vmlinux 0x7baf7fcd ip_getsockopt +EXPORT_SYMBOL vmlinux 0x7bdf24d9 d_mark_dontcache +EXPORT_SYMBOL vmlinux 0x7bec5a8d ata_port_printk +EXPORT_SYMBOL vmlinux 0x7bf59272 pci_read_config_word +EXPORT_SYMBOL vmlinux 0x7c014618 bh_uptodate_or_lock +EXPORT_SYMBOL vmlinux 0x7c1172d2 lock_sock_fast +EXPORT_SYMBOL vmlinux 0x7c14ad95 sync_filesystem +EXPORT_SYMBOL vmlinux 0x7c173634 __bitmap_complement +EXPORT_SYMBOL vmlinux 0x7c26fd51 sgl_free_order +EXPORT_SYMBOL vmlinux 0x7c2f9e84 dev_pre_changeaddr_notify +EXPORT_SYMBOL vmlinux 0x7c42327c __skb_wait_for_more_packets +EXPORT_SYMBOL vmlinux 0x7c46233a cpufreq_quick_get +EXPORT_SYMBOL vmlinux 0x7c4b27cc md_flush_request +EXPORT_SYMBOL vmlinux 0x7c6b082c security_unix_may_send +EXPORT_SYMBOL vmlinux 0x7c6c7400 md_bitmap_startwrite +EXPORT_SYMBOL vmlinux 0x7c8cea9e key_create_or_update +EXPORT_SYMBOL vmlinux 0x7c9317e8 rproc_vq_interrupt +EXPORT_SYMBOL vmlinux 0x7c93b0f3 __neigh_for_each_release +EXPORT_SYMBOL vmlinux 0x7c98993d serio_reconnect +EXPORT_SYMBOL vmlinux 0x7ca8cb90 tcp_seq_stop +EXPORT_SYMBOL vmlinux 0x7cb1aea1 devlink_dpipe_header_ethernet +EXPORT_SYMBOL vmlinux 0x7cc035a7 __ucmpdi2 +EXPORT_SYMBOL vmlinux 0x7cc16de0 __cgroup_bpf_run_filter_sk +EXPORT_SYMBOL vmlinux 0x7cc1e2e4 vfs_tmpfile +EXPORT_SYMBOL vmlinux 0x7cc29dc7 inode_permission +EXPORT_SYMBOL vmlinux 0x7cc72e4a mmc_erase_group_aligned +EXPORT_SYMBOL vmlinux 0x7cc82f6a qdisc_watchdog_schedule_range_ns +EXPORT_SYMBOL vmlinux 0x7cda261b phy_disconnect +EXPORT_SYMBOL vmlinux 0x7cdeeb4d pgprot_user +EXPORT_SYMBOL vmlinux 0x7ce18c9f from_kqid +EXPORT_SYMBOL vmlinux 0x7ce568fe md_wakeup_thread +EXPORT_SYMBOL vmlinux 0x7cedd298 phy_support_asym_pause +EXPORT_SYMBOL vmlinux 0x7ceedd41 of_get_compatible_child +EXPORT_SYMBOL vmlinux 0x7cf35220 vme_master_free +EXPORT_SYMBOL vmlinux 0x7cfe368d net_dim_get_def_tx_moderation +EXPORT_SYMBOL vmlinux 0x7d07e0f5 ipmi_platform_add +EXPORT_SYMBOL vmlinux 0x7d09596b dma_pool_alloc +EXPORT_SYMBOL vmlinux 0x7d0db45c jiffies_to_clock_t +EXPORT_SYMBOL vmlinux 0x7d0e7290 tcp_timewait_state_process +EXPORT_SYMBOL vmlinux 0x7d0fd935 i2c_smbus_write_i2c_block_data +EXPORT_SYMBOL vmlinux 0x7d180d04 udp_gro_receive +EXPORT_SYMBOL vmlinux 0x7d26ef4a d_drop +EXPORT_SYMBOL vmlinux 0x7d358aeb tcp_v4_conn_request +EXPORT_SYMBOL vmlinux 0x7d360a9c sock_rfree +EXPORT_SYMBOL vmlinux 0x7d3f19ad config_item_get_unless_zero +EXPORT_SYMBOL vmlinux 0x7d404a82 con_is_bound +EXPORT_SYMBOL vmlinux 0x7d474d41 hdmi_infoframe_pack +EXPORT_SYMBOL vmlinux 0x7d47652e ip_mc_check_igmp +EXPORT_SYMBOL vmlinux 0x7d4b176a netlbl_catmap_setbit +EXPORT_SYMBOL vmlinux 0x7d531b44 irq_set_chip +EXPORT_SYMBOL vmlinux 0x7d60a08d tty_name +EXPORT_SYMBOL vmlinux 0x7d677869 blk_integrity_register +EXPORT_SYMBOL vmlinux 0x7d6c2636 gen_pool_add_owner +EXPORT_SYMBOL vmlinux 0x7d6f1dc3 gen_new_estimator +EXPORT_SYMBOL vmlinux 0x7d81e9e4 mini_qdisc_pair_swap +EXPORT_SYMBOL vmlinux 0x7d861508 prepare_to_swait_event +EXPORT_SYMBOL vmlinux 0x7dac1b4d xfrm6_protocol_deregister +EXPORT_SYMBOL vmlinux 0x7daece67 quota_send_warning +EXPORT_SYMBOL vmlinux 0x7dc0d7ee pci_clear_mwi +EXPORT_SYMBOL vmlinux 0x7dd5f9b1 d_delete +EXPORT_SYMBOL vmlinux 0x7de281eb simple_nosetlease +EXPORT_SYMBOL vmlinux 0x7de73628 unregister_console +EXPORT_SYMBOL vmlinux 0x7deff673 dm_consume_args +EXPORT_SYMBOL vmlinux 0x7e0ce0c3 up_write +EXPORT_SYMBOL vmlinux 0x7e194404 rproc_add_subdev +EXPORT_SYMBOL vmlinux 0x7e3191f6 try_to_del_timer_sync +EXPORT_SYMBOL vmlinux 0x7e32e7c7 irq_stat +EXPORT_SYMBOL vmlinux 0x7e38109e tty_port_close_start +EXPORT_SYMBOL vmlinux 0x7e4f2bad tty_wait_until_sent +EXPORT_SYMBOL vmlinux 0x7e5e2ce2 page_cache_next_miss +EXPORT_SYMBOL vmlinux 0x7e6a29e5 nf_unregister_queue_handler +EXPORT_SYMBOL vmlinux 0x7e986abe try_wait_for_completion +EXPORT_SYMBOL vmlinux 0x7ea55a8b netdev_boot_setup_check +EXPORT_SYMBOL vmlinux 0x7eb75835 devm_devfreq_unregister_opp_notifier +EXPORT_SYMBOL vmlinux 0x7eb95273 gnet_stats_copy_app +EXPORT_SYMBOL vmlinux 0x7ecb54a2 vfs_get_tree +EXPORT_SYMBOL vmlinux 0x7efd4daf input_setup_polling +EXPORT_SYMBOL vmlinux 0x7f02188f __msecs_to_jiffies +EXPORT_SYMBOL vmlinux 0x7f0322b6 __sk_queue_drop_skb +EXPORT_SYMBOL vmlinux 0x7f03b6a9 crc_ccitt_table +EXPORT_SYMBOL vmlinux 0x7f1ad4e6 locks_remove_posix +EXPORT_SYMBOL vmlinux 0x7f24de73 jiffies_to_usecs +EXPORT_SYMBOL vmlinux 0x7f304b27 ZSTD_DStreamWorkspaceBound +EXPORT_SYMBOL vmlinux 0x7f535d21 sk_alloc +EXPORT_SYMBOL vmlinux 0x7f63b31e _memcpy_toio +EXPORT_SYMBOL vmlinux 0x7f6826e6 invalidate_inode_buffers +EXPORT_SYMBOL vmlinux 0x7f76203b cdrom_get_media_event +EXPORT_SYMBOL vmlinux 0x7f7aa450 inet_sk_rebuild_header +EXPORT_SYMBOL vmlinux 0x7f7f7bb4 irq_poll_disable +EXPORT_SYMBOL vmlinux 0x7f8b2a32 snd_pcm_set_sync +EXPORT_SYMBOL vmlinux 0x7fa0ea72 seq_open +EXPORT_SYMBOL vmlinux 0x7fa134d8 flow_rule_match_ipv4_addrs +EXPORT_SYMBOL vmlinux 0x7fa5d3be csum_and_copy_to_iter +EXPORT_SYMBOL vmlinux 0x7fba1f75 input_register_handler +EXPORT_SYMBOL vmlinux 0x7fce778e tegra_ivc_total_queue_size +EXPORT_SYMBOL vmlinux 0x7fce8400 dquot_commit +EXPORT_SYMBOL vmlinux 0x7fd57011 scsi_free_host_dev +EXPORT_SYMBOL vmlinux 0x7fdb8116 touchscreen_parse_properties +EXPORT_SYMBOL vmlinux 0x7fde2edb vme_master_read +EXPORT_SYMBOL vmlinux 0x7fe32873 rb_replace_node +EXPORT_SYMBOL vmlinux 0x7fe782f1 rproc_put +EXPORT_SYMBOL vmlinux 0x7feb5d3f tcp_sock_set_syncnt +EXPORT_SYMBOL vmlinux 0x800e4ffa __muldi3 +EXPORT_SYMBOL vmlinux 0x801ce573 PDE_DATA +EXPORT_SYMBOL vmlinux 0x802ff312 rtnl_kfree_skbs +EXPORT_SYMBOL vmlinux 0x8039b3fd _totalram_pages +EXPORT_SYMBOL vmlinux 0x803b6dae request_firmware +EXPORT_SYMBOL vmlinux 0x803ddbb6 __posix_acl_create +EXPORT_SYMBOL vmlinux 0x805269d1 genphy_write_mmd_unsupported +EXPORT_SYMBOL vmlinux 0x805c024a bd_abort_claiming +EXPORT_SYMBOL vmlinux 0x806b065e gro_find_complete_by_type +EXPORT_SYMBOL vmlinux 0x806e1db6 fs_param_is_u32 +EXPORT_SYMBOL vmlinux 0x8070b995 rtnetlink_put_metrics +EXPORT_SYMBOL vmlinux 0x807643bb jbd2_journal_extend +EXPORT_SYMBOL vmlinux 0x80874081 amba_request_regions +EXPORT_SYMBOL vmlinux 0x80900b6b skb_queue_head +EXPORT_SYMBOL vmlinux 0x80c4c319 crc32_le +EXPORT_SYMBOL vmlinux 0x80ca5026 _bin2bcd +EXPORT_SYMBOL vmlinux 0x80d02c8b alloc_buffer_head +EXPORT_SYMBOL vmlinux 0x80d68d3e fb_register_client +EXPORT_SYMBOL vmlinux 0x8108ac7a down_read_trylock +EXPORT_SYMBOL vmlinux 0x81098346 ucc_fast_init +EXPORT_SYMBOL vmlinux 0x8112b3d2 scsi_build_sense_buffer +EXPORT_SYMBOL vmlinux 0x8114d158 fd_install +EXPORT_SYMBOL vmlinux 0x81209644 blk_queue_io_min +EXPORT_SYMBOL vmlinux 0x8141aef2 empty_aops +EXPORT_SYMBOL vmlinux 0x814504ce of_device_register +EXPORT_SYMBOL vmlinux 0x815b5dd4 match_octal +EXPORT_SYMBOL vmlinux 0x8162874e tcp_release_cb +EXPORT_SYMBOL vmlinux 0x81659580 sock_no_sendmsg +EXPORT_SYMBOL vmlinux 0x81748780 blk_mq_queue_stopped +EXPORT_SYMBOL vmlinux 0x817c8e16 vfs_get_super +EXPORT_SYMBOL vmlinux 0x818416e1 scsi_set_sense_information +EXPORT_SYMBOL vmlinux 0x818b0b30 efi +EXPORT_SYMBOL vmlinux 0x818dc55b cpufreq_generic_suspend +EXPORT_SYMBOL vmlinux 0x818edf97 cpm_muram_alloc +EXPORT_SYMBOL vmlinux 0x819f738c devfreq_update_interval +EXPORT_SYMBOL vmlinux 0x81a75137 devfreq_update_status +EXPORT_SYMBOL vmlinux 0x81a92a73 snd_card_new +EXPORT_SYMBOL vmlinux 0x81c45e17 pci_release_selected_regions +EXPORT_SYMBOL vmlinux 0x81c5544e wait_for_completion_killable +EXPORT_SYMBOL vmlinux 0x81c6c8b4 blk_queue_update_dma_pad +EXPORT_SYMBOL vmlinux 0x81d004f4 of_io_request_and_map +EXPORT_SYMBOL vmlinux 0x81d1036e dma_find_channel +EXPORT_SYMBOL vmlinux 0x81d5f0b2 unregister_quota_format +EXPORT_SYMBOL vmlinux 0x81db6ebb xz_dec_reset +EXPORT_SYMBOL vmlinux 0x81e6b37f dmi_get_system_info +EXPORT_SYMBOL vmlinux 0x81ef88d7 pci_get_domain_bus_and_slot +EXPORT_SYMBOL vmlinux 0x82072614 tasklet_kill +EXPORT_SYMBOL vmlinux 0x820c6a86 eth_gro_complete +EXPORT_SYMBOL vmlinux 0x822137e2 arm_heavy_mb +EXPORT_SYMBOL vmlinux 0x82296b68 mdio_device_reset +EXPORT_SYMBOL vmlinux 0x8239322c inet6_register_icmp_sender +EXPORT_SYMBOL vmlinux 0x824a4367 tmio_core_mmc_pwr +EXPORT_SYMBOL vmlinux 0x825ce234 __sk_mem_reclaim +EXPORT_SYMBOL vmlinux 0x826f13ea inet6_del_protocol +EXPORT_SYMBOL vmlinux 0x828062b1 __frontswap_init +EXPORT_SYMBOL vmlinux 0x82864d0a inet_csk_reset_keepalive_timer +EXPORT_SYMBOL vmlinux 0x829e7dd2 mdiobus_get_phy +EXPORT_SYMBOL vmlinux 0x82b24036 km_policy_notify +EXPORT_SYMBOL vmlinux 0x82e27691 inet_csk_accept +EXPORT_SYMBOL vmlinux 0x82e2f6d3 d_add +EXPORT_SYMBOL vmlinux 0x82f68ef0 netdev_bonding_info_change +EXPORT_SYMBOL vmlinux 0x82f886a1 ZSTD_findFrameCompressedSize +EXPORT_SYMBOL vmlinux 0x830624e6 snd_ctl_free_one +EXPORT_SYMBOL vmlinux 0x83179319 phy_mac_interrupt +EXPORT_SYMBOL vmlinux 0x8320bea8 __umodsi3 +EXPORT_SYMBOL vmlinux 0x83324e83 __wait_on_buffer +EXPORT_SYMBOL vmlinux 0x833c1367 mmc_hw_reset +EXPORT_SYMBOL vmlinux 0x8348060a seq_file_path +EXPORT_SYMBOL vmlinux 0x8351f2dc seqno_fence_ops +EXPORT_SYMBOL vmlinux 0x83581089 gf128mul_init_4k_lle +EXPORT_SYMBOL vmlinux 0x835f35fb fib_notifier_ops_unregister +EXPORT_SYMBOL vmlinux 0x8377fc0d down_write_killable +EXPORT_SYMBOL vmlinux 0x8380cd97 _dev_crit +EXPORT_SYMBOL vmlinux 0x83831ccd mipi_dsi_dcs_soft_reset +EXPORT_SYMBOL vmlinux 0x838d2bc8 siphash_3u32 +EXPORT_SYMBOL vmlinux 0x83a95a17 pci_save_state +EXPORT_SYMBOL vmlinux 0x83b8d2ce sock_enable_timestamps +EXPORT_SYMBOL vmlinux 0x83baf26e scsi_device_lookup_by_target +EXPORT_SYMBOL vmlinux 0x83c52fba xfrm4_protocol_init +EXPORT_SYMBOL vmlinux 0x83cd0e6f atomic_io_modify +EXPORT_SYMBOL vmlinux 0x83cfae6c __cgroup_bpf_run_filter_sock_addr +EXPORT_SYMBOL vmlinux 0x83e4c8e9 sock_i_ino +EXPORT_SYMBOL vmlinux 0x83ed8026 rproc_va_to_pa +EXPORT_SYMBOL vmlinux 0x83f045ee snd_pcm_hw_refine +EXPORT_SYMBOL vmlinux 0x840fbde8 __netlink_kernel_create +EXPORT_SYMBOL vmlinux 0x8431eaea __nla_reserve_nohdr +EXPORT_SYMBOL vmlinux 0x84386190 blk_mq_start_hw_queues +EXPORT_SYMBOL vmlinux 0x843d48f7 tcp_poll +EXPORT_SYMBOL vmlinux 0x8441c8cb sg_free_table +EXPORT_SYMBOL vmlinux 0x84473857 scsi_target_quiesce +EXPORT_SYMBOL vmlinux 0x845073f9 __scsi_device_lookup +EXPORT_SYMBOL vmlinux 0x8451fdfe sg_init_table +EXPORT_SYMBOL vmlinux 0x8456e9a7 xa_erase +EXPORT_SYMBOL vmlinux 0x846c7bbb scsi_kmap_atomic_sg +EXPORT_SYMBOL vmlinux 0x84818f57 tegra_powergate_power_on +EXPORT_SYMBOL vmlinux 0x849dfd5f inet_put_port +EXPORT_SYMBOL vmlinux 0x84aefb3f kern_path +EXPORT_SYMBOL vmlinux 0x84b183ae strncmp +EXPORT_SYMBOL vmlinux 0x84c36bf1 pm_vt_switch_unregister +EXPORT_SYMBOL vmlinux 0x84e55858 ipv4_specific +EXPORT_SYMBOL vmlinux 0x84f5425f __ps2_command +EXPORT_SYMBOL vmlinux 0x84fb73d2 netdev_upper_dev_unlink +EXPORT_SYMBOL vmlinux 0x8520cf11 cookie_ecn_ok +EXPORT_SYMBOL vmlinux 0x8527d5ef seq_read +EXPORT_SYMBOL vmlinux 0x852d856a request_key_tag +EXPORT_SYMBOL vmlinux 0x85338cb8 dquot_drop +EXPORT_SYMBOL vmlinux 0x8545dc3a blkdev_issue_zeroout +EXPORT_SYMBOL vmlinux 0x854e6f2d dev_get_by_name +EXPORT_SYMBOL vmlinux 0x854fec83 tegra_sku_info +EXPORT_SYMBOL vmlinux 0x8559dd90 follow_pte_pmd +EXPORT_SYMBOL vmlinux 0x85670f1d rtnl_is_locked +EXPORT_SYMBOL vmlinux 0x856ab81b input_mt_sync_frame +EXPORT_SYMBOL vmlinux 0x856ca649 devm_request_resource +EXPORT_SYMBOL vmlinux 0x8582ebff cpu_all_bits +EXPORT_SYMBOL vmlinux 0x858ee0ac seq_path +EXPORT_SYMBOL vmlinux 0x8591d7d5 ledtrig_mtd_activity +EXPORT_SYMBOL vmlinux 0x85a40ef3 genphy_loopback +EXPORT_SYMBOL vmlinux 0x85a7ae50 ata_link_printk +EXPORT_SYMBOL vmlinux 0x85b5e625 rfkill_set_states +EXPORT_SYMBOL vmlinux 0x85cb416c mipi_dsi_detach +EXPORT_SYMBOL vmlinux 0x85df9b6c strsep +EXPORT_SYMBOL vmlinux 0x85efc7e0 zero_pfn +EXPORT_SYMBOL vmlinux 0x85fbc931 slhc_uncompress +EXPORT_SYMBOL vmlinux 0x8617d92a cros_ec_cmd_xfer +EXPORT_SYMBOL vmlinux 0x862525a9 dev_mc_flush +EXPORT_SYMBOL vmlinux 0x862bc663 memset16 +EXPORT_SYMBOL vmlinux 0x86332725 __stack_chk_fail +EXPORT_SYMBOL vmlinux 0x863a276a color_table +EXPORT_SYMBOL vmlinux 0x863b3652 phy_mii_ioctl +EXPORT_SYMBOL vmlinux 0x865029ac __hw_addr_sync +EXPORT_SYMBOL vmlinux 0x86609d46 flush_dcache_page +EXPORT_SYMBOL vmlinux 0x8666995b sgl_alloc +EXPORT_SYMBOL vmlinux 0x866a37e4 tcp_conn_request +EXPORT_SYMBOL vmlinux 0x866ab0f8 input_release_device +EXPORT_SYMBOL vmlinux 0x86749d65 inet_dev_addr_type +EXPORT_SYMBOL vmlinux 0x8674ad7f generic_pipe_buf_release +EXPORT_SYMBOL vmlinux 0x8675eecd finalize_exec +EXPORT_SYMBOL vmlinux 0x867bdb64 vfs_symlink +EXPORT_SYMBOL vmlinux 0x868acba5 get_options +EXPORT_SYMBOL vmlinux 0x8691c1e9 ip_fraglist_prepare +EXPORT_SYMBOL vmlinux 0x86c67720 netdev_adjacent_change_abort +EXPORT_SYMBOL vmlinux 0x86d52ba5 lookup_constant +EXPORT_SYMBOL vmlinux 0x86eb0c08 proc_dointvec +EXPORT_SYMBOL vmlinux 0x86fb9b05 bitmap_parse_user +EXPORT_SYMBOL vmlinux 0x870d5a1c __init_swait_queue_head +EXPORT_SYMBOL vmlinux 0x87141761 devm_input_allocate_device +EXPORT_SYMBOL vmlinux 0x87188f49 dst_alloc +EXPORT_SYMBOL vmlinux 0x8718eb80 cros_ec_check_result +EXPORT_SYMBOL vmlinux 0x8761c6e5 pcie_port_service_register +EXPORT_SYMBOL vmlinux 0x878649a1 scsi_dma_unmap +EXPORT_SYMBOL vmlinux 0x87aab399 xfrm_lookup +EXPORT_SYMBOL vmlinux 0x87b4e795 tcp_add_backlog +EXPORT_SYMBOL vmlinux 0x87bad62d ethtool_op_get_link +EXPORT_SYMBOL vmlinux 0x87c5a70c jbd2__journal_restart +EXPORT_SYMBOL vmlinux 0x87d150f9 netpoll_poll_disable +EXPORT_SYMBOL vmlinux 0x87d8c08f security_path_rename +EXPORT_SYMBOL vmlinux 0x8803fe47 ip_options_compile +EXPORT_SYMBOL vmlinux 0x880766f5 netdev_pick_tx +EXPORT_SYMBOL vmlinux 0x880bd7e4 vfs_create +EXPORT_SYMBOL vmlinux 0x881bad5e phy_mipi_dphy_config_validate +EXPORT_SYMBOL vmlinux 0x8875dbda flow_block_cb_free +EXPORT_SYMBOL vmlinux 0x88822d38 unregister_blocking_lsm_notifier +EXPORT_SYMBOL vmlinux 0x8887b967 udp_sendmsg +EXPORT_SYMBOL vmlinux 0x88906c7a __sync_dirty_buffer +EXPORT_SYMBOL vmlinux 0x88a18e9e get_fs_type +EXPORT_SYMBOL vmlinux 0x88aa100f rt_dst_alloc +EXPORT_SYMBOL vmlinux 0x88b19f45 system_serial +EXPORT_SYMBOL vmlinux 0x88b87d4b set_wb_congested +EXPORT_SYMBOL vmlinux 0x88b8f9f3 iov_iter_bvec +EXPORT_SYMBOL vmlinux 0x88bcf9a8 filemap_page_mkwrite +EXPORT_SYMBOL vmlinux 0x88c0cdd6 netdev_name_node_alt_create +EXPORT_SYMBOL vmlinux 0x88d626c4 devm_gen_pool_create +EXPORT_SYMBOL vmlinux 0x88db9f48 __check_object_size +EXPORT_SYMBOL vmlinux 0x88e1d0f0 page_frag_free +EXPORT_SYMBOL vmlinux 0x88e570f1 simple_transaction_release +EXPORT_SYMBOL vmlinux 0x890de126 omap_vrfb_setup +EXPORT_SYMBOL vmlinux 0x8924c746 page_mapping +EXPORT_SYMBOL vmlinux 0x893922eb ata_print_version +EXPORT_SYMBOL vmlinux 0x89448739 __ethtool_get_link_ksettings +EXPORT_SYMBOL vmlinux 0x89505c3e register_sound_mixer +EXPORT_SYMBOL vmlinux 0x89507b7d rtnl_set_sk_err +EXPORT_SYMBOL vmlinux 0x897b4194 neigh_carrier_down +EXPORT_SYMBOL vmlinux 0x89959cd4 tcp_getsockopt +EXPORT_SYMBOL vmlinux 0x89e208f3 textsearch_register +EXPORT_SYMBOL vmlinux 0x89e4e3e3 mfd_cell_disable +EXPORT_SYMBOL vmlinux 0x8a15d710 tcf_block_get_ext +EXPORT_SYMBOL vmlinux 0x8a1de6d2 fget +EXPORT_SYMBOL vmlinux 0x8a3784dc __xa_alloc +EXPORT_SYMBOL vmlinux 0x8a3b1285 __xa_erase +EXPORT_SYMBOL vmlinux 0x8a490c90 rfkill_set_sw_state +EXPORT_SYMBOL vmlinux 0x8a4d3878 default_qdisc_ops +EXPORT_SYMBOL vmlinux 0x8a4fa83b __aeabi_llsr +EXPORT_SYMBOL vmlinux 0x8a7147f7 ip_check_defrag +EXPORT_SYMBOL vmlinux 0x8a7d1c31 high_memory +EXPORT_SYMBOL vmlinux 0x8a7e0d63 registered_fb +EXPORT_SYMBOL vmlinux 0x8a84be15 cdrom_ioctl +EXPORT_SYMBOL vmlinux 0x8a884a0c snd_timer_instance_free +EXPORT_SYMBOL vmlinux 0x8a8d0e8e inet6_unregister_icmp_sender +EXPORT_SYMBOL vmlinux 0x8a948f27 __nla_parse +EXPORT_SYMBOL vmlinux 0x8a99a016 mempool_free_slab +EXPORT_SYMBOL vmlinux 0x8a99a8a6 lease_modify +EXPORT_SYMBOL vmlinux 0x8aa30959 ZSTD_decompressDCtx +EXPORT_SYMBOL vmlinux 0x8ab7948a __xfrm_state_destroy +EXPORT_SYMBOL vmlinux 0x8ac136ae imx_sc_misc_get_control +EXPORT_SYMBOL vmlinux 0x8ac3334b net_dim_get_def_rx_moderation +EXPORT_SYMBOL vmlinux 0x8aca1c9f max8998_bulk_write +EXPORT_SYMBOL vmlinux 0x8adcabbf simple_dentry_operations +EXPORT_SYMBOL vmlinux 0x8ae84772 sk_wait_data +EXPORT_SYMBOL vmlinux 0x8b0088d1 LZ4_decompress_safe_usingDict +EXPORT_SYMBOL vmlinux 0x8b1337ec kmalloc_caches +EXPORT_SYMBOL vmlinux 0x8b28f2c0 pci_unmap_rom +EXPORT_SYMBOL vmlinux 0x8b46f8d6 from_kprojid +EXPORT_SYMBOL vmlinux 0x8b4c7089 snd_pcm_hw_constraint_ratdens +EXPORT_SYMBOL vmlinux 0x8b4ca93e fib_default_rule_add +EXPORT_SYMBOL vmlinux 0x8b618d08 overflowuid +EXPORT_SYMBOL vmlinux 0x8b8059bd in_group_p +EXPORT_SYMBOL vmlinux 0x8b910be2 errseq_sample +EXPORT_SYMBOL vmlinux 0x8b9ea582 ZSTD_copyDCtx +EXPORT_SYMBOL vmlinux 0x8ba81798 inet_frag_pull_head +EXPORT_SYMBOL vmlinux 0x8bac311b phy_device_free +EXPORT_SYMBOL vmlinux 0x8bb6db7a rawv6_mh_filter_register +EXPORT_SYMBOL vmlinux 0x8be64441 arp_send +EXPORT_SYMBOL vmlinux 0x8bee75d7 proc_dostring +EXPORT_SYMBOL vmlinux 0x8bef69be inet_select_addr +EXPORT_SYMBOL vmlinux 0x8c238b87 cqhci_resume +EXPORT_SYMBOL vmlinux 0x8c2599ba param_set_bool +EXPORT_SYMBOL vmlinux 0x8c3ab966 inet_csk_destroy_sock +EXPORT_SYMBOL vmlinux 0x8c3c1f8c tty_register_device +EXPORT_SYMBOL vmlinux 0x8c5d254a dma_fence_array_ops +EXPORT_SYMBOL vmlinux 0x8c6bf651 flow_block_cb_is_busy +EXPORT_SYMBOL vmlinux 0x8c9fe6bf eth_type_trans +EXPORT_SYMBOL vmlinux 0x8ca10772 gen_pool_dma_zalloc +EXPORT_SYMBOL vmlinux 0x8ca3cd71 ip6_err_gen_icmpv6_unreach +EXPORT_SYMBOL vmlinux 0x8cb316a8 snd_pcm_lib_preallocate_pages_for_all +EXPORT_SYMBOL vmlinux 0x8cc53d20 __par_io_config_pin +EXPORT_SYMBOL vmlinux 0x8cc73125 of_get_address +EXPORT_SYMBOL vmlinux 0x8ccf0630 inc_node_state +EXPORT_SYMBOL vmlinux 0x8cd8c339 omap_free_dma +EXPORT_SYMBOL vmlinux 0x8cda5908 xfrm_input_resume +EXPORT_SYMBOL vmlinux 0x8cdf3f22 flow_indr_dev_setup_offload +EXPORT_SYMBOL vmlinux 0x8cdfaa12 get_super_thawed +EXPORT_SYMBOL vmlinux 0x8ce13cc5 udplite_table +EXPORT_SYMBOL vmlinux 0x8ceae806 tcf_block_put +EXPORT_SYMBOL vmlinux 0x8cf90f60 snd_component_add +EXPORT_SYMBOL vmlinux 0x8cfd2099 __zerocopy_sg_from_iter +EXPORT_SYMBOL vmlinux 0x8d07ded1 stop_tty +EXPORT_SYMBOL vmlinux 0x8d0f054a build_skb_around +EXPORT_SYMBOL vmlinux 0x8d0f0792 filemap_fdatawait_keep_errors +EXPORT_SYMBOL vmlinux 0x8d520699 dquot_get_next_id +EXPORT_SYMBOL vmlinux 0x8d55bb8a qid_eq +EXPORT_SYMBOL vmlinux 0x8d5c5165 fasync_helper +EXPORT_SYMBOL vmlinux 0x8d73278e hex_asc_upper +EXPORT_SYMBOL vmlinux 0x8d7f5377 of_get_parent +EXPORT_SYMBOL vmlinux 0x8d857215 md_bitmap_close_sync +EXPORT_SYMBOL vmlinux 0x8dd04744 netdev_set_num_tc +EXPORT_SYMBOL vmlinux 0x8dd90383 sock_no_sendpage +EXPORT_SYMBOL vmlinux 0x8ddd8aad schedule_timeout +EXPORT_SYMBOL vmlinux 0x8dec9759 inet_gso_segment +EXPORT_SYMBOL vmlinux 0x8df12680 filemap_flush +EXPORT_SYMBOL vmlinux 0x8df3789f snd_oss_info_register +EXPORT_SYMBOL vmlinux 0x8df4afd9 qe_put_snum +EXPORT_SYMBOL vmlinux 0x8df9dd10 guid_null +EXPORT_SYMBOL vmlinux 0x8dfefc0d kvmalloc_node +EXPORT_SYMBOL vmlinux 0x8e116a88 on_each_cpu_mask +EXPORT_SYMBOL vmlinux 0x8e4201c2 flow_block_cb_lookup +EXPORT_SYMBOL vmlinux 0x8e4872d3 cpm_muram_dma +EXPORT_SYMBOL vmlinux 0x8e4c0330 dev_change_proto_down_generic +EXPORT_SYMBOL vmlinux 0x8e5dc050 iov_iter_revert +EXPORT_SYMBOL vmlinux 0x8e65c0fa tcp_v4_destroy_sock +EXPORT_SYMBOL vmlinux 0x8e865d3c arm_delay_ops +EXPORT_SYMBOL vmlinux 0x8e876807 rps_needed +EXPORT_SYMBOL vmlinux 0x8e89b7a3 security_dentry_init_security +EXPORT_SYMBOL vmlinux 0x8e8e707a fb_find_mode +EXPORT_SYMBOL vmlinux 0x8e93bd24 security_secctx_to_secid +EXPORT_SYMBOL vmlinux 0x8e9417cb kthread_create_worker_on_cpu +EXPORT_SYMBOL vmlinux 0x8ec2792c dquot_load_quota_sb +EXPORT_SYMBOL vmlinux 0x8ecbb3b8 nand_check_erased_ecc_chunk +EXPORT_SYMBOL vmlinux 0x8ecf67ff of_node_name_prefix +EXPORT_SYMBOL vmlinux 0x8edbfffb hdmi_spd_infoframe_pack_only +EXPORT_SYMBOL vmlinux 0x8edc6d6e configfs_undepend_item +EXPORT_SYMBOL vmlinux 0x8ef69e4f devfreq_monitor_stop +EXPORT_SYMBOL vmlinux 0x8ef70c92 cdrom_dummy_generic_packet +EXPORT_SYMBOL vmlinux 0x8ef8aeaa send_sig_mceerr +EXPORT_SYMBOL vmlinux 0x8efa462c __dev_kfree_skb_irq +EXPORT_SYMBOL vmlinux 0x8f00668b prepare_to_swait_exclusive +EXPORT_SYMBOL vmlinux 0x8f01afd6 twl6030_interrupt_mask +EXPORT_SYMBOL vmlinux 0x8f3625fe _raw_spin_unlock_bh +EXPORT_SYMBOL vmlinux 0x8f3a5352 iget5_locked +EXPORT_SYMBOL vmlinux 0x8f41f4a9 snd_ctl_unregister_ioctl +EXPORT_SYMBOL vmlinux 0x8f515620 rproc_elf_find_loaded_rsc_table +EXPORT_SYMBOL vmlinux 0x8f595b11 snd_major +EXPORT_SYMBOL vmlinux 0x8f678b07 __stack_chk_guard +EXPORT_SYMBOL vmlinux 0x8f686806 md_update_sb +EXPORT_SYMBOL vmlinux 0x8f8f657f bsearch +EXPORT_SYMBOL vmlinux 0x8f94c853 devfreq_suspend_device +EXPORT_SYMBOL vmlinux 0x8f996a30 ethtool_convert_legacy_u32_to_link_mode +EXPORT_SYMBOL vmlinux 0x8f9baf4d dqget +EXPORT_SYMBOL vmlinux 0x8fa37abc skb_realloc_headroom +EXPORT_SYMBOL vmlinux 0x8fcdf047 max8925_reg_read +EXPORT_SYMBOL vmlinux 0x8fce418f hash_and_copy_to_iter +EXPORT_SYMBOL vmlinux 0x8fcf844b bprm_change_interp +EXPORT_SYMBOL vmlinux 0x8fd180e7 kernel_neon_begin +EXPORT_SYMBOL vmlinux 0x8fe35457 xxh32_update +EXPORT_SYMBOL vmlinux 0x8fef4373 n_tty_ioctl_helper +EXPORT_SYMBOL vmlinux 0x8ff89ed0 seg6_hmac_exit +EXPORT_SYMBOL vmlinux 0x8ffbdba9 blk_limits_io_min +EXPORT_SYMBOL vmlinux 0x8fff2941 neigh_table_clear +EXPORT_SYMBOL vmlinux 0x901a3e40 mipi_dsi_device_unregister +EXPORT_SYMBOL vmlinux 0x901a5319 __f_setown +EXPORT_SYMBOL vmlinux 0x9021a7cf pfifo_qdisc_ops +EXPORT_SYMBOL vmlinux 0x9054ee54 ethtool_intersect_link_masks +EXPORT_SYMBOL vmlinux 0x9056142d rproc_elf_get_boot_addr +EXPORT_SYMBOL vmlinux 0x90609db6 gen_pool_virt_to_phys +EXPORT_SYMBOL vmlinux 0x906e648b phy_start +EXPORT_SYMBOL vmlinux 0x906f5252 dma_fence_enable_sw_signaling +EXPORT_SYMBOL vmlinux 0x9078330a keyring_search +EXPORT_SYMBOL vmlinux 0x907e4728 seq_dentry +EXPORT_SYMBOL vmlinux 0x90885b63 snd_pcm_lib_preallocate_free_for_all +EXPORT_SYMBOL vmlinux 0x909244c5 param_set_invbool +EXPORT_SYMBOL vmlinux 0x909332ca register_sysctl +EXPORT_SYMBOL vmlinux 0x90a8b1a0 tty_hangup +EXPORT_SYMBOL vmlinux 0x90bf3360 should_remove_suid +EXPORT_SYMBOL vmlinux 0x90c17062 pci_bus_find_capability +EXPORT_SYMBOL vmlinux 0x90c5e819 kstrtoll_from_user +EXPORT_SYMBOL vmlinux 0x90cdceaa netif_device_detach +EXPORT_SYMBOL vmlinux 0x90df04a0 component_match_add_release +EXPORT_SYMBOL vmlinux 0x90e87c5f netdev_class_create_file_ns +EXPORT_SYMBOL vmlinux 0x90fcb086 sock_set_reuseaddr +EXPORT_SYMBOL vmlinux 0x910096b6 ZSTD_compressEnd +EXPORT_SYMBOL vmlinux 0x910b6074 igrab +EXPORT_SYMBOL vmlinux 0x910fd727 generic_pipe_buf_try_steal +EXPORT_SYMBOL vmlinux 0x9135dba6 wait_for_completion_interruptible_timeout +EXPORT_SYMBOL vmlinux 0x9154cdd3 i2c_smbus_write_byte_data +EXPORT_SYMBOL vmlinux 0x915df785 contig_page_data +EXPORT_SYMBOL vmlinux 0x91804de2 sock_no_getsockopt +EXPORT_SYMBOL vmlinux 0x919029aa __readwrite_bug +EXPORT_SYMBOL vmlinux 0x91991127 tcp_sync_mss +EXPORT_SYMBOL vmlinux 0x919c58f3 __clzsi2 +EXPORT_SYMBOL vmlinux 0x91a408da sound_class +EXPORT_SYMBOL vmlinux 0x91a7b1da qdisc_class_hash_remove +EXPORT_SYMBOL vmlinux 0x91ae55fb page_pool_alloc_pages +EXPORT_SYMBOL vmlinux 0x91bd7d10 vga_tryget +EXPORT_SYMBOL vmlinux 0x91c0980e icst_hz +EXPORT_SYMBOL vmlinux 0x91fbdf51 mdiobus_alloc_size +EXPORT_SYMBOL vmlinux 0x92071d8b notify_change +EXPORT_SYMBOL vmlinux 0x920f06f5 key_type_keyring +EXPORT_SYMBOL vmlinux 0x921b07b1 __cpu_online_mask +EXPORT_SYMBOL vmlinux 0x922f45a6 __bitmap_clear +EXPORT_SYMBOL vmlinux 0x923b1276 dmaengine_get +EXPORT_SYMBOL vmlinux 0x923ea194 __xa_insert +EXPORT_SYMBOL vmlinux 0x924e2b8a param_get_int +EXPORT_SYMBOL vmlinux 0x927c5b98 phy_queue_state_machine +EXPORT_SYMBOL vmlinux 0x9292dca2 pci_disable_link_state +EXPORT_SYMBOL vmlinux 0x92952429 generic_fillattr +EXPORT_SYMBOL vmlinux 0x92b1749b __destroy_inode +EXPORT_SYMBOL vmlinux 0x92b9b180 slash_name +EXPORT_SYMBOL vmlinux 0x92bbd652 __nla_put_64bit +EXPORT_SYMBOL vmlinux 0x92c70330 ip_tunnel_parse_protocol +EXPORT_SYMBOL vmlinux 0x92d77a1f icmpv6_send +EXPORT_SYMBOL vmlinux 0x92de236f inet_sk_set_state +EXPORT_SYMBOL vmlinux 0x92e44b22 locks_copy_conflock +EXPORT_SYMBOL vmlinux 0x92ec510d jiffies64_to_msecs +EXPORT_SYMBOL vmlinux 0x92fa5abb vme_lm_detach +EXPORT_SYMBOL vmlinux 0x9305bf68 find_next_and_bit +EXPORT_SYMBOL vmlinux 0x9305f8e6 cpufreq_get +EXPORT_SYMBOL vmlinux 0x93215e1d __kfifo_skip_r +EXPORT_SYMBOL vmlinux 0x933bb280 inet_stream_connect +EXPORT_SYMBOL vmlinux 0x935c5284 uart_remove_one_port +EXPORT_SYMBOL vmlinux 0x93713086 sg_split +EXPORT_SYMBOL vmlinux 0x937639fb i2c_smbus_write_byte +EXPORT_SYMBOL vmlinux 0x937733e3 qid_valid +EXPORT_SYMBOL vmlinux 0x938d6ddc vme_irq_generate +EXPORT_SYMBOL vmlinux 0x93a6e0b2 io_schedule +EXPORT_SYMBOL vmlinux 0x93a7a69f ioc_lookup_icq +EXPORT_SYMBOL vmlinux 0x93adbe19 bio_alloc_bioset +EXPORT_SYMBOL vmlinux 0x93adcdb2 bio_devname +EXPORT_SYMBOL vmlinux 0x93b27077 rproc_get_by_phandle +EXPORT_SYMBOL vmlinux 0x93b3fc74 register_dcbevent_notifier +EXPORT_SYMBOL vmlinux 0x93bdaa1f dma_pool_free +EXPORT_SYMBOL vmlinux 0x93bed766 blk_pre_runtime_resume +EXPORT_SYMBOL vmlinux 0x93d765c9 napi_gro_flush +EXPORT_SYMBOL vmlinux 0x93d95b3a vme_slave_set +EXPORT_SYMBOL vmlinux 0x94098ff8 snd_interval_list +EXPORT_SYMBOL vmlinux 0x9424986a gnet_stats_copy_basic_hw +EXPORT_SYMBOL vmlinux 0x9425caca _raw_write_lock +EXPORT_SYMBOL vmlinux 0x9425f025 dcb_ieee_getapp_default_prio_mask +EXPORT_SYMBOL vmlinux 0x942c3443 __mdiobus_read +EXPORT_SYMBOL vmlinux 0x942f6176 nf_ip6_checksum +EXPORT_SYMBOL vmlinux 0x9432feda phy_reset_after_clk_enable +EXPORT_SYMBOL vmlinux 0x94341eee vlan_vid_del +EXPORT_SYMBOL vmlinux 0x943dc8aa crc32_be +EXPORT_SYMBOL vmlinux 0x943de5b8 inc_nlink +EXPORT_SYMBOL vmlinux 0x944a564d is_console_locked +EXPORT_SYMBOL vmlinux 0x944b4e25 seq_release +EXPORT_SYMBOL vmlinux 0x94619c3c alloc_fcdev +EXPORT_SYMBOL vmlinux 0x94664639 give_up_console +EXPORT_SYMBOL vmlinux 0x9483ec29 inet_frag_kill +EXPORT_SYMBOL vmlinux 0x94855ea1 inode_insert5 +EXPORT_SYMBOL vmlinux 0x948d719a padata_do_serial +EXPORT_SYMBOL vmlinux 0x94961283 vunmap +EXPORT_SYMBOL vmlinux 0x94985bbd shrink_dcache_sb +EXPORT_SYMBOL vmlinux 0x94995d2b tty_port_lower_dtr_rts +EXPORT_SYMBOL vmlinux 0x94a0f1e2 register_nexthop_notifier +EXPORT_SYMBOL vmlinux 0x94a5c24f scsi_mode_sense +EXPORT_SYMBOL vmlinux 0x94b4325c phy_suspend +EXPORT_SYMBOL vmlinux 0x94bf03ca utf8_to_utf32 +EXPORT_SYMBOL vmlinux 0x94d08a2d __breadahead_gfp +EXPORT_SYMBOL vmlinux 0x94d45b9e of_n_size_cells +EXPORT_SYMBOL vmlinux 0x9502c6bf d_alloc_anon +EXPORT_SYMBOL vmlinux 0x95034c97 xfrm6_rcv_tnl +EXPORT_SYMBOL vmlinux 0x950b41bf mipi_dsi_dcs_exit_sleep_mode +EXPORT_SYMBOL vmlinux 0x952c9de1 netif_schedule_queue +EXPORT_SYMBOL vmlinux 0x95368d33 memcg_kmem_enabled_key +EXPORT_SYMBOL vmlinux 0x9537316e cdrom_open +EXPORT_SYMBOL vmlinux 0x9545af6d tasklet_init +EXPORT_SYMBOL vmlinux 0x954eea4b inet_accept +EXPORT_SYMBOL vmlinux 0x954f099c idr_preload +EXPORT_SYMBOL vmlinux 0x955c6dd1 netif_tx_stop_all_queues +EXPORT_SYMBOL vmlinux 0x955cc2a8 down_read_interruptible +EXPORT_SYMBOL vmlinux 0x956c90f1 vfs_statx_fd +EXPORT_SYMBOL vmlinux 0x956ec157 __dev_getfirstbyhwtype +EXPORT_SYMBOL vmlinux 0x958d22eb writeback_inodes_sb +EXPORT_SYMBOL vmlinux 0x959d420b generic_splice_sendpage +EXPORT_SYMBOL vmlinux 0x95a2ff2d register_netdev +EXPORT_SYMBOL vmlinux 0x95badc24 jbd2_journal_start_reserved +EXPORT_SYMBOL vmlinux 0x95c0b178 tcf_get_next_chain +EXPORT_SYMBOL vmlinux 0x95d3d918 refcount_dec_and_lock_irqsave +EXPORT_SYMBOL vmlinux 0x95dbe078 __get_user_2 +EXPORT_SYMBOL vmlinux 0x9609a4e2 pci_set_mwi +EXPORT_SYMBOL vmlinux 0x961185da set_bh_page +EXPORT_SYMBOL vmlinux 0x961f1fc1 inet_dgram_connect +EXPORT_SYMBOL vmlinux 0x962c4977 clkdev_add +EXPORT_SYMBOL vmlinux 0x96573b80 __kfifo_dma_in_finish_r +EXPORT_SYMBOL vmlinux 0x965f34a2 posix_acl_chmod +EXPORT_SYMBOL vmlinux 0x96653696 phy_loopback +EXPORT_SYMBOL vmlinux 0x96692436 ucc_fast_free +EXPORT_SYMBOL vmlinux 0x9672dc81 of_get_cpu_state_node +EXPORT_SYMBOL vmlinux 0x967e21d8 pci_find_resource +EXPORT_SYMBOL vmlinux 0x96898769 sysfs_format_mac +EXPORT_SYMBOL vmlinux 0x968d9332 snd_ctl_add +EXPORT_SYMBOL vmlinux 0x96ad8137 dev_get_by_napi_id +EXPORT_SYMBOL vmlinux 0x96c17136 fb_var_to_videomode +EXPORT_SYMBOL vmlinux 0x96cd2b04 scsi_sense_key_string +EXPORT_SYMBOL vmlinux 0x9709dbc5 current_work +EXPORT_SYMBOL vmlinux 0x97106714 memdup_user_nul +EXPORT_SYMBOL vmlinux 0x971bf817 input_get_poll_interval +EXPORT_SYMBOL vmlinux 0x97255bdf strlen +EXPORT_SYMBOL vmlinux 0x972cf4fa kunmap_high +EXPORT_SYMBOL vmlinux 0x975e3c92 kernel_accept +EXPORT_SYMBOL vmlinux 0x97820b7e mpage_readpage +EXPORT_SYMBOL vmlinux 0x97934ecf del_timer_sync +EXPORT_SYMBOL vmlinux 0x97999817 rfkill_set_hw_state +EXPORT_SYMBOL vmlinux 0x979d8b2e tegra_dfll_suspend +EXPORT_SYMBOL vmlinux 0x979fe6f6 sock_bindtoindex +EXPORT_SYMBOL vmlinux 0x97a7dda9 pci_scan_root_bus +EXPORT_SYMBOL vmlinux 0x97ac8d00 ip6_frag_init +EXPORT_SYMBOL vmlinux 0x97adb487 utf8s_to_utf16s +EXPORT_SYMBOL vmlinux 0x97b6b1f5 __set_page_dirty_nobuffers +EXPORT_SYMBOL vmlinux 0x97bdfa60 scsi_dev_info_remove_list +EXPORT_SYMBOL vmlinux 0x97c9bcb5 t10_pi_type1_ip +EXPORT_SYMBOL vmlinux 0x97d43bed param_ops_int +EXPORT_SYMBOL vmlinux 0x97dac39f sk_page_frag_refill +EXPORT_SYMBOL vmlinux 0x97edb22b ip_route_input_noref +EXPORT_SYMBOL vmlinux 0x9807b1d9 pci_scan_slot +EXPORT_SYMBOL vmlinux 0x981ddda4 ppp_input_error +EXPORT_SYMBOL vmlinux 0x983284c0 iter_file_splice_write +EXPORT_SYMBOL vmlinux 0x983ac031 remove_wait_queue +EXPORT_SYMBOL vmlinux 0x983c8de9 generic_shutdown_super +EXPORT_SYMBOL vmlinux 0x984378d7 mark_info_dirty +EXPORT_SYMBOL vmlinux 0x985eb3d3 i2c_add_adapter +EXPORT_SYMBOL vmlinux 0x987c11c7 __pv_phys_pfn_offset +EXPORT_SYMBOL vmlinux 0x98832da8 utf8ncursor +EXPORT_SYMBOL vmlinux 0x988504b2 scsi_set_medium_removal +EXPORT_SYMBOL vmlinux 0x9891d82e ucc_slow_stop_tx +EXPORT_SYMBOL vmlinux 0x9892e7c9 proc_create +EXPORT_SYMBOL vmlinux 0x98a21b5a neigh_proc_dointvec_ms_jiffies +EXPORT_SYMBOL vmlinux 0x98b6c8a4 nf_ct_attach +EXPORT_SYMBOL vmlinux 0x98c89ade security_xfrm_state_alloc +EXPORT_SYMBOL vmlinux 0x98cb8a9c __cancel_dirty_page +EXPORT_SYMBOL vmlinux 0x98e508ef ignore_console_lock_warning +EXPORT_SYMBOL vmlinux 0x98f99f7b snd_card_free +EXPORT_SYMBOL vmlinux 0x9900a098 msm_pinctrl_dev_pm_ops +EXPORT_SYMBOL vmlinux 0x99094fb2 qcom_scm_is_available +EXPORT_SYMBOL vmlinux 0x991d72b4 rtc_add_groups +EXPORT_SYMBOL vmlinux 0x992a8ceb kmap_atomic_high_prot +EXPORT_SYMBOL vmlinux 0x992caa64 devm_mfd_add_devices +EXPORT_SYMBOL vmlinux 0x992e2bba key_reject_and_link +EXPORT_SYMBOL vmlinux 0x9935c9ac __xfrm_route_forward +EXPORT_SYMBOL vmlinux 0x9939eba0 backlight_unregister_notifier +EXPORT_SYMBOL vmlinux 0x993b03df percpu_counter_add_batch +EXPORT_SYMBOL vmlinux 0x9947700f seq_escape_mem_ascii +EXPORT_SYMBOL vmlinux 0x9948a138 ucc_slow_disable +EXPORT_SYMBOL vmlinux 0x99517682 udp_encap_enable +EXPORT_SYMBOL vmlinux 0x996829ea swake_up_all +EXPORT_SYMBOL vmlinux 0x996ba3bb blk_mq_start_stopped_hw_queues +EXPORT_SYMBOL vmlinux 0x99725dbd snd_power_wait +EXPORT_SYMBOL vmlinux 0x9974a269 sk_dst_check +EXPORT_SYMBOL vmlinux 0x9982433c tcf_action_check_ctrlact +EXPORT_SYMBOL vmlinux 0x99876eab blk_mq_delay_run_hw_queues +EXPORT_SYMBOL vmlinux 0x998fbb9d fscrypt_encrypt_block_inplace +EXPORT_SYMBOL vmlinux 0x9990f487 scsi_host_lookup +EXPORT_SYMBOL vmlinux 0x999319bc dev_uc_add +EXPORT_SYMBOL vmlinux 0x999e8297 vfree +EXPORT_SYMBOL vmlinux 0x99b3d1fd __cgroup_bpf_run_filter_skb +EXPORT_SYMBOL vmlinux 0x99bb8806 memmove +EXPORT_SYMBOL vmlinux 0x99c95fa5 unregister_sound_special +EXPORT_SYMBOL vmlinux 0x99d472b1 net_dim_get_rx_moderation +EXPORT_SYMBOL vmlinux 0x99e742c9 jbd2_journal_init_dev +EXPORT_SYMBOL vmlinux 0x99fe0c43 disk_start_io_acct +EXPORT_SYMBOL vmlinux 0x9a047675 of_parse_phandle_with_args +EXPORT_SYMBOL vmlinux 0x9a0c3a18 vme_unregister_error_handler +EXPORT_SYMBOL vmlinux 0x9a12d07b sg_copy_from_buffer +EXPORT_SYMBOL vmlinux 0x9a19ec50 make_flow_keys_digest +EXPORT_SYMBOL vmlinux 0x9a1a23de of_dev_get +EXPORT_SYMBOL vmlinux 0x9a1a9b74 ptp_find_pin +EXPORT_SYMBOL vmlinux 0x9a1dfd65 strpbrk +EXPORT_SYMBOL vmlinux 0x9a25b538 of_find_mipi_dsi_device_by_node +EXPORT_SYMBOL vmlinux 0x9a3ad99a unregister_netdev +EXPORT_SYMBOL vmlinux 0x9a41f841 md_cluster_ops +EXPORT_SYMBOL vmlinux 0x9a4cd694 input_mt_init_slots +EXPORT_SYMBOL vmlinux 0x9a50465a neigh_parms_alloc +EXPORT_SYMBOL vmlinux 0x9a583306 netlbl_bitmap_walk +EXPORT_SYMBOL vmlinux 0x9a5b8c11 tcp_v4_syn_recv_sock +EXPORT_SYMBOL vmlinux 0x9a5ce96f pci_bus_type +EXPORT_SYMBOL vmlinux 0x9a5f7340 proto_unregister +EXPORT_SYMBOL vmlinux 0x9a623656 inet_frags_init +EXPORT_SYMBOL vmlinux 0x9a8318ef v7_coherent_kern_range +EXPORT_SYMBOL vmlinux 0x9a89a7a3 proc_douintvec +EXPORT_SYMBOL vmlinux 0x9a8d5ef4 xp_dma_unmap +EXPORT_SYMBOL vmlinux 0x9aa9cea4 trace_print_flags_seq_u64 +EXPORT_SYMBOL vmlinux 0x9aaeefce sysctl_nf_log_all_netns +EXPORT_SYMBOL vmlinux 0x9abe5634 fput +EXPORT_SYMBOL vmlinux 0x9acb8066 _raw_read_unlock_bh +EXPORT_SYMBOL vmlinux 0x9ae3ef5c dm_table_get_md +EXPORT_SYMBOL vmlinux 0x9b02ca77 register_sound_special +EXPORT_SYMBOL vmlinux 0x9b0e1ec3 snd_card_free_when_closed +EXPORT_SYMBOL vmlinux 0x9b128a66 qcom_scm_set_remote_state +EXPORT_SYMBOL vmlinux 0x9b1b7306 xxh64 +EXPORT_SYMBOL vmlinux 0x9b1fe487 nf_log_packet +EXPORT_SYMBOL vmlinux 0x9b2560b9 gf128mul_init_4k_bbe +EXPORT_SYMBOL vmlinux 0x9b317cdc mmc_of_parse_voltage +EXPORT_SYMBOL vmlinux 0x9b33e0d7 unregister_dcbevent_notifier +EXPORT_SYMBOL vmlinux 0x9b3b3db3 netdev_lower_state_changed +EXPORT_SYMBOL vmlinux 0x9b3f8f12 nla_put +EXPORT_SYMBOL vmlinux 0x9b420478 utf8_strncasecmp +EXPORT_SYMBOL vmlinux 0x9b496b21 posix_acl_alloc +EXPORT_SYMBOL vmlinux 0x9b51637b i2c_smbus_write_word_data +EXPORT_SYMBOL vmlinux 0x9b58a3f0 security_d_instantiate +EXPORT_SYMBOL vmlinux 0x9b6eb137 ksize +EXPORT_SYMBOL vmlinux 0x9b7da6b0 __neigh_set_probe_once +EXPORT_SYMBOL vmlinux 0x9b8204f1 blk_rq_map_integrity_sg +EXPORT_SYMBOL vmlinux 0x9b860691 tty_unlock +EXPORT_SYMBOL vmlinux 0x9b923522 mem_cgroup_from_task +EXPORT_SYMBOL vmlinux 0x9b9abe91 generic_file_open +EXPORT_SYMBOL vmlinux 0x9beb9aaa register_cdrom +EXPORT_SYMBOL vmlinux 0x9c11f83f _copy_from_iter_full_nocache +EXPORT_SYMBOL vmlinux 0x9c294433 ipmr_rule_default +EXPORT_SYMBOL vmlinux 0x9c53d267 scsi_verify_blk_ioctl +EXPORT_SYMBOL vmlinux 0x9c5ee867 user_path_create +EXPORT_SYMBOL vmlinux 0x9c7419dc ZSTD_initDStream_usingDDict +EXPORT_SYMBOL vmlinux 0x9c756685 dev_uc_flush +EXPORT_SYMBOL vmlinux 0x9c849d3a file_remove_privs +EXPORT_SYMBOL vmlinux 0x9c956229 dquot_mark_dquot_dirty +EXPORT_SYMBOL vmlinux 0x9ca28258 snd_device_register +EXPORT_SYMBOL vmlinux 0x9cab34a6 rfkill_set_led_trigger_name +EXPORT_SYMBOL vmlinux 0x9cca155f udp_skb_destructor +EXPORT_SYMBOL vmlinux 0x9cdfb3f7 sysctl_fb_tunnels_only_for_init_net +EXPORT_SYMBOL vmlinux 0x9ce7fed5 dma_resv_init +EXPORT_SYMBOL vmlinux 0x9ce9d07f snd_pcm_kernel_ioctl +EXPORT_SYMBOL vmlinux 0x9ced48e4 ethtool_notify +EXPORT_SYMBOL vmlinux 0x9d036a5d discard_new_inode +EXPORT_SYMBOL vmlinux 0x9d06ac33 free_bucket_spinlocks +EXPORT_SYMBOL vmlinux 0x9d0d6206 unregister_netdevice_notifier +EXPORT_SYMBOL vmlinux 0x9d16a0db genl_notify +EXPORT_SYMBOL vmlinux 0x9d20fd74 page_get_link +EXPORT_SYMBOL vmlinux 0x9d23e886 abx500_get_register_page_interruptible +EXPORT_SYMBOL vmlinux 0x9d2e7707 unregister_sysrq_key +EXPORT_SYMBOL vmlinux 0x9d509330 soft_cursor +EXPORT_SYMBOL vmlinux 0x9d5cd559 reservation_ww_class +EXPORT_SYMBOL vmlinux 0x9d659fc8 vm_map_pages_zero +EXPORT_SYMBOL vmlinux 0x9d669763 memcpy +EXPORT_SYMBOL vmlinux 0x9d72bf02 nf_register_sockopt +EXPORT_SYMBOL vmlinux 0x9d741db5 ata_scsi_cmd_error_handler +EXPORT_SYMBOL vmlinux 0x9d7bc301 alloc_etherdev_mqs +EXPORT_SYMBOL vmlinux 0x9d7fe713 blk_dump_rq_flags +EXPORT_SYMBOL vmlinux 0x9d8efd55 set_binfmt +EXPORT_SYMBOL vmlinux 0x9d97ab2c audit_log_object_context +EXPORT_SYMBOL vmlinux 0x9da41213 security_sock_graft +EXPORT_SYMBOL vmlinux 0x9dc08a71 pgprot_kernel +EXPORT_SYMBOL vmlinux 0x9ddcf6ff of_graph_parse_endpoint +EXPORT_SYMBOL vmlinux 0x9de8b10c devm_extcon_register_notifier_all +EXPORT_SYMBOL vmlinux 0x9defa20f xfrm_init_state +EXPORT_SYMBOL vmlinux 0x9e0c711d vzalloc_node +EXPORT_SYMBOL vmlinux 0x9e0ec162 ZSTD_CStreamOutSize +EXPORT_SYMBOL vmlinux 0x9e0fa5ae hsiphash_3u32 +EXPORT_SYMBOL vmlinux 0x9e13f6f6 gf128mul_lle +EXPORT_SYMBOL vmlinux 0x9e36a493 of_phy_connect +EXPORT_SYMBOL vmlinux 0x9e4cea35 dev_addr_init +EXPORT_SYMBOL vmlinux 0x9e4faeef dm_io_client_destroy +EXPORT_SYMBOL vmlinux 0x9e534a0b eth_prepare_mac_addr_change +EXPORT_SYMBOL vmlinux 0x9e54ecba vme_irq_free +EXPORT_SYMBOL vmlinux 0x9e61bb05 set_freezable +EXPORT_SYMBOL vmlinux 0x9e6710a5 reuseport_detach_sock +EXPORT_SYMBOL vmlinux 0x9e6d79f8 snd_info_get_str +EXPORT_SYMBOL vmlinux 0x9e76a85c get_mem_cgroup_from_mm +EXPORT_SYMBOL vmlinux 0x9e8854cb of_lpddr3_get_min_tck +EXPORT_SYMBOL vmlinux 0x9e894ded bioset_integrity_create +EXPORT_SYMBOL vmlinux 0x9e900d7b simple_open +EXPORT_SYMBOL vmlinux 0x9e9a9cb4 trace_print_hex_seq +EXPORT_SYMBOL vmlinux 0x9e9eab95 devcgroup_check_permission +EXPORT_SYMBOL vmlinux 0x9e9eefb7 xfrm_trans_queue_net +EXPORT_SYMBOL vmlinux 0x9e9fdd9d memunmap +EXPORT_SYMBOL vmlinux 0x9ea00252 ata_dev_printk +EXPORT_SYMBOL vmlinux 0x9eab5bf8 snd_jack_new +EXPORT_SYMBOL vmlinux 0x9eb215c0 pci_bus_size_bridges +EXPORT_SYMBOL vmlinux 0x9ec0e639 twl6030_interrupt_unmask +EXPORT_SYMBOL vmlinux 0x9ec6ca96 ktime_get_real_ts64 +EXPORT_SYMBOL vmlinux 0x9ec7f432 revalidate_disk +EXPORT_SYMBOL vmlinux 0x9ec883b6 abort_creds +EXPORT_SYMBOL vmlinux 0x9ecb856f pci_map_rom +EXPORT_SYMBOL vmlinux 0x9ed11cdf console_start +EXPORT_SYMBOL vmlinux 0x9ed39a54 down_trylock +EXPORT_SYMBOL vmlinux 0x9ed8b616 trace_raw_output_prep +EXPORT_SYMBOL vmlinux 0x9ed978de vme_lm_set +EXPORT_SYMBOL vmlinux 0x9eea6334 remove_proc_entry +EXPORT_SYMBOL vmlinux 0x9eecdea9 inet_add_protocol +EXPORT_SYMBOL vmlinux 0x9eed2731 __netif_schedule +EXPORT_SYMBOL vmlinux 0x9efc7e72 __page_symlink +EXPORT_SYMBOL vmlinux 0x9efcf2f2 tegra_ivc_read_get_next_frame +EXPORT_SYMBOL vmlinux 0x9f086537 page_address +EXPORT_SYMBOL vmlinux 0x9f1f8679 xfrm_sad_getinfo +EXPORT_SYMBOL vmlinux 0x9f35bab6 phy_device_remove +EXPORT_SYMBOL vmlinux 0x9f3c9845 fb_firmware_edid +EXPORT_SYMBOL vmlinux 0x9f46ced8 __sw_hweight64 +EXPORT_SYMBOL vmlinux 0x9f50b770 keyring_restrict +EXPORT_SYMBOL vmlinux 0x9f54ead7 gro_cells_destroy +EXPORT_SYMBOL vmlinux 0x9f5a1e1c security_inode_setsecctx +EXPORT_SYMBOL vmlinux 0x9f5ba6ad ucc_slow_graceful_stop_tx +EXPORT_SYMBOL vmlinux 0x9f63fa83 snd_timer_stop +EXPORT_SYMBOL vmlinux 0x9f7030c0 has_capability +EXPORT_SYMBOL vmlinux 0x9f984513 strrchr +EXPORT_SYMBOL vmlinux 0x9f98d507 scsi_scan_host +EXPORT_SYMBOL vmlinux 0x9f9a5310 dma_resv_add_shared_fence +EXPORT_SYMBOL vmlinux 0x9fa13e94 phy_start_cable_test_tdr +EXPORT_SYMBOL vmlinux 0x9fb1d0ed uuid_is_valid +EXPORT_SYMBOL vmlinux 0x9fd1a8d4 __frontswap_test +EXPORT_SYMBOL vmlinux 0x9fdecc31 unregister_netdevice_many +EXPORT_SYMBOL vmlinux 0x9feed7ce timer_reduce +EXPORT_SYMBOL vmlinux 0x9ff50d1d scsi_vpd_lun_id +EXPORT_SYMBOL vmlinux 0x9ff5c7a4 elv_bio_merge_ok +EXPORT_SYMBOL vmlinux 0x9ffa3a75 netdev_max_backlog +EXPORT_SYMBOL vmlinux 0xa0112f45 user_revoke +EXPORT_SYMBOL vmlinux 0xa0133f9a cpumask_any_and_distribute +EXPORT_SYMBOL vmlinux 0xa01a4086 sock_efree +EXPORT_SYMBOL vmlinux 0xa02090c5 snd_pcm_set_managed_buffer_all +EXPORT_SYMBOL vmlinux 0xa0384d58 mr_dump +EXPORT_SYMBOL vmlinux 0xa0436e98 in6addr_linklocal_allnodes +EXPORT_SYMBOL vmlinux 0xa050fadf page_symlink +EXPORT_SYMBOL vmlinux 0xa052cd90 rdmacg_uncharge +EXPORT_SYMBOL vmlinux 0xa057df8f twl_set_regcache_bypass +EXPORT_SYMBOL vmlinux 0xa05d04bf _dev_alert +EXPORT_SYMBOL vmlinux 0xa05df183 fs_param_is_bool +EXPORT_SYMBOL vmlinux 0xa065cedc xfrm_init_replay +EXPORT_SYMBOL vmlinux 0xa06df9e1 __kfifo_dma_out_finish_r +EXPORT_SYMBOL vmlinux 0xa06f0a74 blk_get_request +EXPORT_SYMBOL vmlinux 0xa07f71f1 framebuffer_release +EXPORT_SYMBOL vmlinux 0xa084749a __bitmap_or +EXPORT_SYMBOL vmlinux 0xa0870726 d_obtain_alias +EXPORT_SYMBOL vmlinux 0xa095e02e generic_check_addressable +EXPORT_SYMBOL vmlinux 0xa0aae687 imx_ssi_fiq_end +EXPORT_SYMBOL vmlinux 0xa0ae1e73 siphash_3u64 +EXPORT_SYMBOL vmlinux 0xa0aefe3e bit_waitqueue +EXPORT_SYMBOL vmlinux 0xa0b04675 vmalloc_32 +EXPORT_SYMBOL vmlinux 0xa0bf10a4 unregister_md_personality +EXPORT_SYMBOL vmlinux 0xa0ccab22 mmc_put_card +EXPORT_SYMBOL vmlinux 0xa0d41258 dev_set_mtu +EXPORT_SYMBOL vmlinux 0xa0d5ae5a dev_close +EXPORT_SYMBOL vmlinux 0xa0dad88e netdev_adjacent_get_private +EXPORT_SYMBOL vmlinux 0xa0e177cd km_report +EXPORT_SYMBOL vmlinux 0xa0eae826 smp_call_function +EXPORT_SYMBOL vmlinux 0xa0eb889e md_check_no_bitmap +EXPORT_SYMBOL vmlinux 0xa0ebd14c sysctl_tcp_mem +EXPORT_SYMBOL vmlinux 0xa0fbac79 wake_up_bit +EXPORT_SYMBOL vmlinux 0xa108eb4d sysctl_optmem_max +EXPORT_SYMBOL vmlinux 0xa10f81bc param_set_int +EXPORT_SYMBOL vmlinux 0xa120d33c tty_unregister_ldisc +EXPORT_SYMBOL vmlinux 0xa13cf612 netdev_warn +EXPORT_SYMBOL vmlinux 0xa15afeb0 tcp_syn_ack_timeout +EXPORT_SYMBOL vmlinux 0xa15d0131 cancel_delayed_work +EXPORT_SYMBOL vmlinux 0xa167c2b9 snd_pcm_period_elapsed +EXPORT_SYMBOL vmlinux 0xa16b21fb wait_for_completion_timeout +EXPORT_SYMBOL vmlinux 0xa16ed532 unix_destruct_scm +EXPORT_SYMBOL vmlinux 0xa174b36f __sock_cmsg_send +EXPORT_SYMBOL vmlinux 0xa17bd3fc add_wait_queue +EXPORT_SYMBOL vmlinux 0xa1839690 __tracepoint_kmem_cache_alloc +EXPORT_SYMBOL vmlinux 0xa1927da7 inet6_ioctl +EXPORT_SYMBOL vmlinux 0xa1a70b14 block_invalidatepage +EXPORT_SYMBOL vmlinux 0xa1af8a1f vfs_mkobj +EXPORT_SYMBOL vmlinux 0xa1bacd91 qcom_scm_set_cold_boot_addr +EXPORT_SYMBOL vmlinux 0xa1bddd3f reuseport_select_sock +EXPORT_SYMBOL vmlinux 0xa1c76e0a _cond_resched +EXPORT_SYMBOL vmlinux 0xa1d131ed vmemdup_user +EXPORT_SYMBOL vmlinux 0xa1d9e172 filemap_fdatawait_range +EXPORT_SYMBOL vmlinux 0xa1e43ac0 __pagevec_release +EXPORT_SYMBOL vmlinux 0xa1f06870 clk_bulk_get +EXPORT_SYMBOL vmlinux 0xa1f4eae2 eth_platform_get_mac_address +EXPORT_SYMBOL vmlinux 0xa2060911 inet_current_timestamp +EXPORT_SYMBOL vmlinux 0xa216c596 netif_rx +EXPORT_SYMBOL vmlinux 0xa2329e73 touchscreen_report_pos +EXPORT_SYMBOL vmlinux 0xa24491bf ida_free +EXPORT_SYMBOL vmlinux 0xa24f23d8 __request_module +EXPORT_SYMBOL vmlinux 0xa253ad8c pcibios_fixup_bus +EXPORT_SYMBOL vmlinux 0xa25b90ab utf8byte +EXPORT_SYMBOL vmlinux 0xa263892b fscrypt_fname_free_buffer +EXPORT_SYMBOL vmlinux 0xa264bb9b of_match_node +EXPORT_SYMBOL vmlinux 0xa26b5d11 fs_param_is_enum +EXPORT_SYMBOL vmlinux 0xa28cfcc0 gen_estimator_active +EXPORT_SYMBOL vmlinux 0xa28d3d16 mark_buffer_write_io_error +EXPORT_SYMBOL vmlinux 0xa2af15cd pci_choose_state +EXPORT_SYMBOL vmlinux 0xa2b2342d get_unmapped_area +EXPORT_SYMBOL vmlinux 0xa2cc3c95 jbd2_journal_unlock_updates +EXPORT_SYMBOL vmlinux 0xa2d9846e param_get_ulong +EXPORT_SYMBOL vmlinux 0xa325cbdf d_move +EXPORT_SYMBOL vmlinux 0xa3294adc set_anon_super_fc +EXPORT_SYMBOL vmlinux 0xa3313e71 seq_escape +EXPORT_SYMBOL vmlinux 0xa351071a sync_inodes_sb +EXPORT_SYMBOL vmlinux 0xa35a308f jbd2__journal_start +EXPORT_SYMBOL vmlinux 0xa38878f8 pci_unmap_iospace +EXPORT_SYMBOL vmlinux 0xa38d5f44 devfreq_resume_device +EXPORT_SYMBOL vmlinux 0xa38f47d0 clear_inode +EXPORT_SYMBOL vmlinux 0xa39655e1 ucc_fast_transmit_on_demand +EXPORT_SYMBOL vmlinux 0xa3a4c337 nand_correct_data +EXPORT_SYMBOL vmlinux 0xa3a54979 init_on_free +EXPORT_SYMBOL vmlinux 0xa3ac158f sg_alloc_table +EXPORT_SYMBOL vmlinux 0xa3b6e1b7 omap_vrfb_max_height +EXPORT_SYMBOL vmlinux 0xa3c00c06 memcg_sockets_enabled_key +EXPORT_SYMBOL vmlinux 0xa3cf0edb genphy_soft_reset +EXPORT_SYMBOL vmlinux 0xa3e62172 mmc_remove_host +EXPORT_SYMBOL vmlinux 0xa3fc3883 udp_disconnect +EXPORT_SYMBOL vmlinux 0xa3fea172 sha224_final +EXPORT_SYMBOL vmlinux 0xa401afeb sock_no_getname +EXPORT_SYMBOL vmlinux 0xa40fa01f writeback_inodes_sb_nr +EXPORT_SYMBOL vmlinux 0xa43799a8 rfs_needed +EXPORT_SYMBOL vmlinux 0xa43d1c72 __nand_correct_data +EXPORT_SYMBOL vmlinux 0xa43fa1cf xfrm_user_policy +EXPORT_SYMBOL vmlinux 0xa4552208 init_on_alloc +EXPORT_SYMBOL vmlinux 0xa4610bc6 omap_rev +EXPORT_SYMBOL vmlinux 0xa46ccf00 dquot_acquire +EXPORT_SYMBOL vmlinux 0xa46d528d pneigh_enqueue +EXPORT_SYMBOL vmlinux 0xa47d9d10 get_mm_exe_file +EXPORT_SYMBOL vmlinux 0xa4959807 blk_queue_chunk_sectors +EXPORT_SYMBOL vmlinux 0xa4a57182 kernel_getsockname +EXPORT_SYMBOL vmlinux 0xa4ae9c1f kernel_bind +EXPORT_SYMBOL vmlinux 0xa4b42c55 omap_set_dma_priority +EXPORT_SYMBOL vmlinux 0xa4b7f2cc sync_file_get_fence +EXPORT_SYMBOL vmlinux 0xa4c8127c ZSTD_maxCLevel +EXPORT_SYMBOL vmlinux 0xa4dbf0ef genphy_update_link +EXPORT_SYMBOL vmlinux 0xa4e97f22 __sock_queue_rcv_skb +EXPORT_SYMBOL vmlinux 0xa4ec39a6 input_get_timestamp +EXPORT_SYMBOL vmlinux 0xa4fca045 qcom_scm_ocmem_lock +EXPORT_SYMBOL vmlinux 0xa505426a fs_param_is_s32 +EXPORT_SYMBOL vmlinux 0xa50f0c20 inode_io_list_del +EXPORT_SYMBOL vmlinux 0xa5169a2a irq_to_desc +EXPORT_SYMBOL vmlinux 0xa5283ba9 mmc_gpio_set_cd_isr +EXPORT_SYMBOL vmlinux 0xa5526619 rb_insert_color +EXPORT_SYMBOL vmlinux 0xa55be397 kthread_blkcg +EXPORT_SYMBOL vmlinux 0xa55c94ed unregister_key_type +EXPORT_SYMBOL vmlinux 0xa5684076 ida_alloc_range +EXPORT_SYMBOL vmlinux 0xa5689824 md_bitmap_sync_with_cluster +EXPORT_SYMBOL vmlinux 0xa56fde1c __genradix_iter_peek +EXPORT_SYMBOL vmlinux 0xa58220a5 module_refcount +EXPORT_SYMBOL vmlinux 0xa59052f0 __siphash_aligned +EXPORT_SYMBOL vmlinux 0xa59d216a fqdir_init +EXPORT_SYMBOL vmlinux 0xa5ad162f jbd2_journal_release_jbd_inode +EXPORT_SYMBOL vmlinux 0xa5ba819c bio_integrity_add_page +EXPORT_SYMBOL vmlinux 0xa5e51c29 security_path_unlink +EXPORT_SYMBOL vmlinux 0xa5eb9a6f noop_llseek +EXPORT_SYMBOL vmlinux 0xa61aa028 snd_pcm_format_unsigned +EXPORT_SYMBOL vmlinux 0xa61ced89 qdisc_put_rtab +EXPORT_SYMBOL vmlinux 0xa63f6044 kernel_read +EXPORT_SYMBOL vmlinux 0xa64f838b dma_dummy_ops +EXPORT_SYMBOL vmlinux 0xa658ada0 of_mdiobus_phy_device_register +EXPORT_SYMBOL vmlinux 0xa65acdbb fscrypt_has_permitted_context +EXPORT_SYMBOL vmlinux 0xa6692ec9 of_platform_bus_probe +EXPORT_SYMBOL vmlinux 0xa674ffb0 pci_bus_write_config_word +EXPORT_SYMBOL vmlinux 0xa681fe88 generate_random_uuid +EXPORT_SYMBOL vmlinux 0xa6841fb6 tun_ptr_to_xdp +EXPORT_SYMBOL vmlinux 0xa68613dd get_jiffies_64 +EXPORT_SYMBOL vmlinux 0xa6878c19 param_get_short +EXPORT_SYMBOL vmlinux 0xa6970398 __kfifo_to_user_r +EXPORT_SYMBOL vmlinux 0xa6997cf5 vprintk_emit +EXPORT_SYMBOL vmlinux 0xa6a1122f __kfifo_dma_in_prepare +EXPORT_SYMBOL vmlinux 0xa6a7a2ad div_s64_rem +EXPORT_SYMBOL vmlinux 0xa6b90811 devm_pci_remap_cfgspace +EXPORT_SYMBOL vmlinux 0xa6c39aa5 __inet6_lookup_established +EXPORT_SYMBOL vmlinux 0xa6fb7d42 dev_set_allmulti +EXPORT_SYMBOL vmlinux 0xa70bc96d qcom_scm_restore_sec_cfg_available +EXPORT_SYMBOL vmlinux 0xa7119e13 xfrm_if_register_cb +EXPORT_SYMBOL vmlinux 0xa71f7c1b mipi_dsi_dcs_write_buffer +EXPORT_SYMBOL vmlinux 0xa725ff44 inode_owner_or_capable +EXPORT_SYMBOL vmlinux 0xa72957cc __dynamic_pr_debug +EXPORT_SYMBOL vmlinux 0xa72c5b95 gen_pool_dma_zalloc_algo +EXPORT_SYMBOL vmlinux 0xa72fd1b2 tty_port_init +EXPORT_SYMBOL vmlinux 0xa73ee62b _atomic_dec_and_lock +EXPORT_SYMBOL vmlinux 0xa74a14d4 udplite_prot +EXPORT_SYMBOL vmlinux 0xa74b8a71 nf_log_trace +EXPORT_SYMBOL vmlinux 0xa74c9877 refcount_dec_and_rtnl_lock +EXPORT_SYMBOL vmlinux 0xa753f6ba vme_dma_list_exec +EXPORT_SYMBOL vmlinux 0xa75da5c9 netpoll_poll_enable +EXPORT_SYMBOL vmlinux 0xa77bfd29 register_inet6addr_validator_notifier +EXPORT_SYMBOL vmlinux 0xa7801974 configfs_register_default_group +EXPORT_SYMBOL vmlinux 0xa781f316 dev_addr_add +EXPORT_SYMBOL vmlinux 0xa7a3f85f jbd2_journal_set_triggers +EXPORT_SYMBOL vmlinux 0xa7aef36c cad_pid +EXPORT_SYMBOL vmlinux 0xa7b3181c up_read +EXPORT_SYMBOL vmlinux 0xa7e38f12 flow_keys_basic_dissector +EXPORT_SYMBOL vmlinux 0xa7ee8df9 netif_device_attach +EXPORT_SYMBOL vmlinux 0xa7eedcc4 call_usermodehelper +EXPORT_SYMBOL vmlinux 0xa7f37d3b genphy_c37_config_aneg +EXPORT_SYMBOL vmlinux 0xa7f7976b page_symlink_inode_operations +EXPORT_SYMBOL vmlinux 0xa7fbd37b mod_zone_page_state +EXPORT_SYMBOL vmlinux 0xa7fd7439 config_group_init +EXPORT_SYMBOL vmlinux 0xa7ff9d05 xfrm_state_insert +EXPORT_SYMBOL vmlinux 0xa804c5ef i2c_clients_command +EXPORT_SYMBOL vmlinux 0xa80acb56 lockref_mark_dead +EXPORT_SYMBOL vmlinux 0xa80b3407 fqdir_exit +EXPORT_SYMBOL vmlinux 0xa8124830 ll_rw_block +EXPORT_SYMBOL vmlinux 0xa818322c tcp_v4_do_rcv +EXPORT_SYMBOL vmlinux 0xa82fd6f7 __scsi_print_sense +EXPORT_SYMBOL vmlinux 0xa8306b78 scaled_ppm_to_ppb +EXPORT_SYMBOL vmlinux 0xa841cd10 set_nlink +EXPORT_SYMBOL vmlinux 0xa843805a get_unused_fd_flags +EXPORT_SYMBOL vmlinux 0xa844e2a9 mmc_command_done +EXPORT_SYMBOL vmlinux 0xa84ce9e0 crypto_aes_inv_sbox +EXPORT_SYMBOL vmlinux 0xa84d1a67 pci_irq_vector +EXPORT_SYMBOL vmlinux 0xa855c83d t10_pi_type3_crc +EXPORT_SYMBOL vmlinux 0xa87d3103 ipv6_select_ident +EXPORT_SYMBOL vmlinux 0xa87e9d9f vfs_path_lookup +EXPORT_SYMBOL vmlinux 0xa8a08caf trace_print_array_seq +EXPORT_SYMBOL vmlinux 0xa8a8110c kernel_neon_end +EXPORT_SYMBOL vmlinux 0xa8c662d2 user_path_at_empty +EXPORT_SYMBOL vmlinux 0xa8caa845 clk_bulk_put_all +EXPORT_SYMBOL vmlinux 0xa8ce945c napi_schedule_prep +EXPORT_SYMBOL vmlinux 0xa8e94d1e snd_timer_open +EXPORT_SYMBOL vmlinux 0xa8ec7d34 crc_ccitt +EXPORT_SYMBOL vmlinux 0xa8ee65c1 omap_vrfb_adjust_size +EXPORT_SYMBOL vmlinux 0xa8f6c843 ip_frag_ecn_table +EXPORT_SYMBOL vmlinux 0xa8f7f280 idr_get_next_ul +EXPORT_SYMBOL vmlinux 0xa8f8cdb8 dquot_set_dqinfo +EXPORT_SYMBOL vmlinux 0xa8fc1d70 blk_sync_queue +EXPORT_SYMBOL vmlinux 0xa901de01 scsi_vpd_tpg_id +EXPORT_SYMBOL vmlinux 0xa9068311 abx500_event_registers_startup_state_get +EXPORT_SYMBOL vmlinux 0xa90f5de0 iunique +EXPORT_SYMBOL vmlinux 0xa914940c dev_pm_opp_unregister_notifier +EXPORT_SYMBOL vmlinux 0xa92bf604 blk_mq_alloc_request +EXPORT_SYMBOL vmlinux 0xa934bc4b flow_get_u32_dst +EXPORT_SYMBOL vmlinux 0xa937a72f jbd2_journal_forget +EXPORT_SYMBOL vmlinux 0xa94a5635 netdev_lower_get_next_private_rcu +EXPORT_SYMBOL vmlinux 0xa955781c __skb_try_recv_datagram +EXPORT_SYMBOL vmlinux 0xa964dd13 gpmc_cs_request +EXPORT_SYMBOL vmlinux 0xa965ca81 reciprocal_value +EXPORT_SYMBOL vmlinux 0xa96ce029 pskb_extract +EXPORT_SYMBOL vmlinux 0xa96db198 fc_mount +EXPORT_SYMBOL vmlinux 0xa977faca block_truncate_page +EXPORT_SYMBOL vmlinux 0xa9850f85 dev_graft_qdisc +EXPORT_SYMBOL vmlinux 0xa997b5a7 sock_no_connect +EXPORT_SYMBOL vmlinux 0xa99dcc58 pskb_trim_rcsum_slow +EXPORT_SYMBOL vmlinux 0xa9a7432f qcom_scm_pas_mem_setup +EXPORT_SYMBOL vmlinux 0xa9a94c16 pci_scan_bus +EXPORT_SYMBOL vmlinux 0xa9c60338 sock_pfree +EXPORT_SYMBOL vmlinux 0xa9c80559 kmem_cache_create +EXPORT_SYMBOL vmlinux 0xa9eb465f ZSTD_CStreamInSize +EXPORT_SYMBOL vmlinux 0xa9ed62d2 tegra_fuse_readl +EXPORT_SYMBOL vmlinux 0xa9f7f473 rproc_add +EXPORT_SYMBOL vmlinux 0xaa02a2e5 devm_devfreq_register_notifier +EXPORT_SYMBOL vmlinux 0xaa1382b8 mmc_wait_for_cmd +EXPORT_SYMBOL vmlinux 0xaa304f90 tty_port_put +EXPORT_SYMBOL vmlinux 0xaa39bec6 security_inode_getsecctx +EXPORT_SYMBOL vmlinux 0xaa42e16a gen_pool_has_addr +EXPORT_SYMBOL vmlinux 0xaa4b86dd rproc_alloc +EXPORT_SYMBOL vmlinux 0xaa5e2610 tty_chars_in_buffer +EXPORT_SYMBOL vmlinux 0xaa5ec5b9 phy_start_aneg +EXPORT_SYMBOL vmlinux 0xaa68d907 input_mt_drop_unused +EXPORT_SYMBOL vmlinux 0xaa6901ac __kfifo_out_r +EXPORT_SYMBOL vmlinux 0xaa6f23ad rfkill_get_led_trigger_name +EXPORT_SYMBOL vmlinux 0xaa7c022f pci_fixup_device +EXPORT_SYMBOL vmlinux 0xaa91f77a pci_bus_write_config_byte +EXPORT_SYMBOL vmlinux 0xaa967ef1 passthru_features_check +EXPORT_SYMBOL vmlinux 0xaaa4057a of_mdio_find_bus +EXPORT_SYMBOL vmlinux 0xaaa4b9bc hchacha_block_generic +EXPORT_SYMBOL vmlinux 0xaabcba77 pci_iomap_range +EXPORT_SYMBOL vmlinux 0xaacc9e27 sort +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 0xaadfa401 neigh_sysctl_register +EXPORT_SYMBOL vmlinux 0xaadfe7bf xfrm6_rcv_encap +EXPORT_SYMBOL vmlinux 0xaafd9237 _raw_write_unlock_irqrestore +EXPORT_SYMBOL vmlinux 0xaafdc258 strcasecmp +EXPORT_SYMBOL vmlinux 0xab28dfeb pci_restore_state +EXPORT_SYMBOL vmlinux 0xab3697e4 irq_poll_init +EXPORT_SYMBOL vmlinux 0xab3b75ea vme_dma_pattern_attribute +EXPORT_SYMBOL vmlinux 0xab4d4458 dev_mc_init +EXPORT_SYMBOL vmlinux 0xab600421 probe_irq_off +EXPORT_SYMBOL vmlinux 0xab61be64 __pskb_copy_fclone +EXPORT_SYMBOL vmlinux 0xab63baa5 unregister_inetaddr_validator_notifier +EXPORT_SYMBOL vmlinux 0xab6f831a kill_fasync +EXPORT_SYMBOL vmlinux 0xab6f9d00 jbd2_journal_force_commit_nested +EXPORT_SYMBOL vmlinux 0xab722420 skb_vlan_push +EXPORT_SYMBOL vmlinux 0xab735372 ipmi_dmi_get_slave_addr +EXPORT_SYMBOL vmlinux 0xab7603e7 imx_ssi_fiq_start +EXPORT_SYMBOL vmlinux 0xab779d9e dev_change_carrier +EXPORT_SYMBOL vmlinux 0xab781570 fb_get_options +EXPORT_SYMBOL vmlinux 0xab8fe6d4 key_unlink +EXPORT_SYMBOL vmlinux 0xab98092f dquot_file_open +EXPORT_SYMBOL vmlinux 0xaba01789 kill_litter_super +EXPORT_SYMBOL vmlinux 0xaba29370 flow_rule_match_ipv6_addrs +EXPORT_SYMBOL vmlinux 0xabaeb991 netdev_refcnt_read +EXPORT_SYMBOL vmlinux 0xabcde482 dcb_getapp +EXPORT_SYMBOL vmlinux 0xabd2c6f2 mmc_gpiod_request_cd_irq +EXPORT_SYMBOL vmlinux 0xabe77661 ps2_command +EXPORT_SYMBOL vmlinux 0xabeda78c follow_up +EXPORT_SYMBOL vmlinux 0xabf32f29 utf16s_to_utf8s +EXPORT_SYMBOL vmlinux 0xac16e053 input_register_handle +EXPORT_SYMBOL vmlinux 0xac171001 sock_no_recvmsg +EXPORT_SYMBOL vmlinux 0xac1a55be unregister_reboot_notifier +EXPORT_SYMBOL vmlinux 0xac1d08d0 tcp_mss_to_mtu +EXPORT_SYMBOL vmlinux 0xac208da1 ip_route_me_harder +EXPORT_SYMBOL vmlinux 0xac308860 skb_pull +EXPORT_SYMBOL vmlinux 0xac3201b0 udp_flow_hashrnd +EXPORT_SYMBOL vmlinux 0xac331b07 ucc_slow_free +EXPORT_SYMBOL vmlinux 0xac437f7b snd_interval_ratnum +EXPORT_SYMBOL vmlinux 0xac47dc06 wait_for_key_construction +EXPORT_SYMBOL vmlinux 0xac4a1f98 scsi_dma_map +EXPORT_SYMBOL vmlinux 0xac4ba68e grab_cache_page_write_begin +EXPORT_SYMBOL vmlinux 0xac582aae scsi_host_busy +EXPORT_SYMBOL vmlinux 0xac5fcec0 in4_pton +EXPORT_SYMBOL vmlinux 0xac7b6754 skb_csum_hwoffload_help +EXPORT_SYMBOL vmlinux 0xac8597d5 mb_cache_entry_get +EXPORT_SYMBOL vmlinux 0xac8b99b0 thaw_bdev +EXPORT_SYMBOL vmlinux 0xac8cd1ae path_is_under +EXPORT_SYMBOL vmlinux 0xac94e86b vsprintf +EXPORT_SYMBOL vmlinux 0xaca995a5 sync_inode +EXPORT_SYMBOL vmlinux 0xacaa7b50 sock_create_kern +EXPORT_SYMBOL vmlinux 0xacab29b7 seq_hlist_start_percpu +EXPORT_SYMBOL vmlinux 0xacb31ecf _raw_spin_trylock +EXPORT_SYMBOL vmlinux 0xacc069ee __phy_resume +EXPORT_SYMBOL vmlinux 0xacc1a5c6 set_create_files_as +EXPORT_SYMBOL vmlinux 0xacd81eb3 jbd2_inode_cache +EXPORT_SYMBOL vmlinux 0xace2f17c cdrom_mode_sense +EXPORT_SYMBOL vmlinux 0xacf4d843 match_strdup +EXPORT_SYMBOL vmlinux 0xacf649bf audit_log_task_info +EXPORT_SYMBOL vmlinux 0xacfdf72b snd_register_device +EXPORT_SYMBOL vmlinux 0xacfeeac0 of_phy_attach +EXPORT_SYMBOL vmlinux 0xad03d5aa __dev_direct_xmit +EXPORT_SYMBOL vmlinux 0xad0413d4 match_hex +EXPORT_SYMBOL vmlinux 0xad0d468b inet_addr_type_dev_table +EXPORT_SYMBOL vmlinux 0xad0e6bd4 ioremap_wc +EXPORT_SYMBOL vmlinux 0xad13cc68 input_set_keycode +EXPORT_SYMBOL vmlinux 0xad1f0f20 dmam_alloc_attrs +EXPORT_SYMBOL vmlinux 0xad2846d4 device_get_mac_address +EXPORT_SYMBOL vmlinux 0xad347df7 vmf_insert_mixed_mkwrite +EXPORT_SYMBOL vmlinux 0xad40dceb sched_autogroup_detach +EXPORT_SYMBOL vmlinux 0xad44f76c mem_map +EXPORT_SYMBOL vmlinux 0xad555726 gnet_stats_finish_copy +EXPORT_SYMBOL vmlinux 0xad6a7a3e tcp_enter_cwr +EXPORT_SYMBOL vmlinux 0xad6f7144 __tracepoint_kmalloc_node +EXPORT_SYMBOL vmlinux 0xad73041f autoremove_wake_function +EXPORT_SYMBOL vmlinux 0xad84bef8 dm_table_event +EXPORT_SYMBOL vmlinux 0xad995dac netdev_stats_to_stats64 +EXPORT_SYMBOL vmlinux 0xada3b4b1 tcp_sock_set_nodelay +EXPORT_SYMBOL vmlinux 0xadbc6c18 of_get_next_cpu_node +EXPORT_SYMBOL vmlinux 0xadbeed61 mipi_dsi_packet_format_is_long +EXPORT_SYMBOL vmlinux 0xadcbd706 skb_clone_sk +EXPORT_SYMBOL vmlinux 0xadd22e70 LZ4_setStreamDecode +EXPORT_SYMBOL vmlinux 0xaddae4bf register_framebuffer +EXPORT_SYMBOL vmlinux 0xadde76ab pci_lost_interrupt +EXPORT_SYMBOL vmlinux 0xaddf8db7 msm_pinctrl_remove +EXPORT_SYMBOL vmlinux 0xade35dc7 tcf_exts_terse_dump +EXPORT_SYMBOL vmlinux 0xadfdfcef __bitmap_andnot +EXPORT_SYMBOL vmlinux 0xae04012c __vmalloc +EXPORT_SYMBOL vmlinux 0xae10db53 bdevname +EXPORT_SYMBOL vmlinux 0xae128389 param_ops_short +EXPORT_SYMBOL vmlinux 0xae296d28 current_time +EXPORT_SYMBOL vmlinux 0xae29e258 ip6_dst_alloc +EXPORT_SYMBOL vmlinux 0xae316c11 icmpv6_err_convert +EXPORT_SYMBOL vmlinux 0xae408327 clocksource_unregister +EXPORT_SYMBOL vmlinux 0xae553bb7 md_bitmap_end_sync +EXPORT_SYMBOL vmlinux 0xae8062da netdev_features_change +EXPORT_SYMBOL vmlinux 0xae9849dd __request_region +EXPORT_SYMBOL vmlinux 0xae9e9065 copy_page_from_iter +EXPORT_SYMBOL vmlinux 0xaeab13cb of_node_get +EXPORT_SYMBOL vmlinux 0xaeac049a generate_random_guid +EXPORT_SYMBOL vmlinux 0xaec01c15 phy_ethtool_nway_reset +EXPORT_SYMBOL vmlinux 0xaeccba82 get_watch_queue +EXPORT_SYMBOL vmlinux 0xaece77aa serio_close +EXPORT_SYMBOL vmlinux 0xaee03463 blkdev_issue_flush +EXPORT_SYMBOL vmlinux 0xaee7f740 jbd2_transaction_committed +EXPORT_SYMBOL vmlinux 0xaee95991 ZSTD_getDictID_fromFrame +EXPORT_SYMBOL vmlinux 0xaeff04d5 skb_ext_add +EXPORT_SYMBOL vmlinux 0xaf06832e scm_detach_fds +EXPORT_SYMBOL vmlinux 0xaf076011 __splice_from_pipe +EXPORT_SYMBOL vmlinux 0xaf081a6e devm_kvasprintf +EXPORT_SYMBOL vmlinux 0xaf16f615 ZSTD_DStreamOutSize +EXPORT_SYMBOL vmlinux 0xaf2cd1b1 netlink_broadcast_filtered +EXPORT_SYMBOL vmlinux 0xaf3dd7dc scsi_logging_level +EXPORT_SYMBOL vmlinux 0xaf4daafc sk_ns_capable +EXPORT_SYMBOL vmlinux 0xaf50e76d elf_set_personality +EXPORT_SYMBOL vmlinux 0xaf6dd8f5 sk_common_release +EXPORT_SYMBOL vmlinux 0xaf71b6fa rproc_add_carveout +EXPORT_SYMBOL vmlinux 0xaf72c349 netpoll_poll_dev +EXPORT_SYMBOL vmlinux 0xaf7dcb60 __sk_mem_reduce_allocated +EXPORT_SYMBOL vmlinux 0xaf7e0821 serial8250_do_pm +EXPORT_SYMBOL vmlinux 0xaf7e8799 flow_rule_match_vlan +EXPORT_SYMBOL vmlinux 0xaf82509e __register_chrdev +EXPORT_SYMBOL vmlinux 0xaf84865e __get_user_8 +EXPORT_SYMBOL vmlinux 0xaf89c869 nf_log_unbind_pf +EXPORT_SYMBOL vmlinux 0xaf8aa518 system_rev +EXPORT_SYMBOL vmlinux 0xaf91fd1a pagecache_write_begin +EXPORT_SYMBOL vmlinux 0xaf9a0a2a radix_tree_tag_clear +EXPORT_SYMBOL vmlinux 0xafa7a755 put_cmsg_scm_timestamping +EXPORT_SYMBOL vmlinux 0xafb1eb03 nand_calculate_ecc +EXPORT_SYMBOL vmlinux 0xafcbd5a6 netdev_upper_get_next_dev_rcu +EXPORT_SYMBOL vmlinux 0xafd98dc8 __put_user_ns +EXPORT_SYMBOL vmlinux 0xafe8ec9b clkdev_hw_alloc +EXPORT_SYMBOL vmlinux 0xafeb7485 jbd2_journal_check_available_features +EXPORT_SYMBOL vmlinux 0xaffa71f6 serial8250_do_set_termios +EXPORT_SYMBOL vmlinux 0xb00124fa param_set_ulong +EXPORT_SYMBOL vmlinux 0xb01bebf9 xfrm_get_acqseq +EXPORT_SYMBOL vmlinux 0xb01f6d3c loop_register_transfer +EXPORT_SYMBOL vmlinux 0xb02514f3 register_sound_special_device +EXPORT_SYMBOL vmlinux 0xb028d1a1 of_get_next_parent +EXPORT_SYMBOL vmlinux 0xb031e8df inetdev_by_index +EXPORT_SYMBOL vmlinux 0xb05fc310 sysctl_rmem_max +EXPORT_SYMBOL vmlinux 0xb076ba40 jbd2_journal_clear_features +EXPORT_SYMBOL vmlinux 0xb0857e34 generic_file_llseek +EXPORT_SYMBOL vmlinux 0xb08ec6d3 phy_set_max_speed +EXPORT_SYMBOL vmlinux 0xb0a0da0c rational_best_approximation +EXPORT_SYMBOL vmlinux 0xb0a3c5d2 trace_print_symbols_seq +EXPORT_SYMBOL vmlinux 0xb0b046ce ip_ct_attach +EXPORT_SYMBOL vmlinux 0xb0c73e18 vfs_get_fsid +EXPORT_SYMBOL vmlinux 0xb0d018f8 neigh_ifdown +EXPORT_SYMBOL vmlinux 0xb0da13e9 input_set_timestamp +EXPORT_SYMBOL vmlinux 0xb0e10781 get_option +EXPORT_SYMBOL vmlinux 0xb0ea4613 generic_permission +EXPORT_SYMBOL vmlinux 0xb0f8a1fb vm_get_page_prot +EXPORT_SYMBOL vmlinux 0xb1090c16 ipv6_skip_exthdr +EXPORT_SYMBOL vmlinux 0xb10bee3d md_integrity_register +EXPORT_SYMBOL vmlinux 0xb10d34a7 tty_insert_flip_string_fixed_flag +EXPORT_SYMBOL vmlinux 0xb121390a probe_irq_on +EXPORT_SYMBOL vmlinux 0xb128f6cb kthread_bind +EXPORT_SYMBOL vmlinux 0xb12cbacb fb_unregister_client +EXPORT_SYMBOL vmlinux 0xb13b465a __kfifo_dma_in_prepare_r +EXPORT_SYMBOL vmlinux 0xb147a855 dql_reset +EXPORT_SYMBOL vmlinux 0xb14ab1ef hdmi_audio_infoframe_init +EXPORT_SYMBOL vmlinux 0xb14d0a86 vfs_iocb_iter_write +EXPORT_SYMBOL vmlinux 0xb14fc46a find_next_clump8 +EXPORT_SYMBOL vmlinux 0xb16900ad cmdline_parts_parse +EXPORT_SYMBOL vmlinux 0xb169e9d4 skb_append +EXPORT_SYMBOL vmlinux 0xb1a5ab8c on_each_cpu_cond +EXPORT_SYMBOL vmlinux 0xb1abe565 remap_pfn_range +EXPORT_SYMBOL vmlinux 0xb1ad28e0 __gnu_mcount_nc +EXPORT_SYMBOL vmlinux 0xb1c3a01a oops_in_progress +EXPORT_SYMBOL vmlinux 0xb1c3de62 __neigh_create +EXPORT_SYMBOL vmlinux 0xb1ddf995 jiffies_64_to_clock_t +EXPORT_SYMBOL vmlinux 0xb1e486f1 get_mem_cgroup_from_page +EXPORT_SYMBOL vmlinux 0xb1e52f21 ppp_register_channel +EXPORT_SYMBOL vmlinux 0xb1e9e791 xfrm_register_type_offload +EXPORT_SYMBOL vmlinux 0xb1ef545a blk_integrity_merge_rq +EXPORT_SYMBOL vmlinux 0xb1f25fa7 ucc_fast_enable +EXPORT_SYMBOL vmlinux 0xb1f9b326 devm_ioremap_resource +EXPORT_SYMBOL vmlinux 0xb211943e qdisc_put +EXPORT_SYMBOL vmlinux 0xb2136c8b pci_read_config_byte +EXPORT_SYMBOL vmlinux 0xb21416b2 put_tty_driver +EXPORT_SYMBOL vmlinux 0xb216d331 sgl_free_n_order +EXPORT_SYMBOL vmlinux 0xb21a48d6 bio_reset +EXPORT_SYMBOL vmlinux 0xb2253dfa jbd2_journal_get_write_access +EXPORT_SYMBOL vmlinux 0xb228dd18 set_user_nice +EXPORT_SYMBOL vmlinux 0xb2296a3f mmc_can_erase +EXPORT_SYMBOL vmlinux 0xb22e16d5 radix_tree_maybe_preload +EXPORT_SYMBOL vmlinux 0xb231fe13 tc_setup_cb_reoffload +EXPORT_SYMBOL vmlinux 0xb235f906 truncate_pagecache_range +EXPORT_SYMBOL vmlinux 0xb242a7f6 __breadahead +EXPORT_SYMBOL vmlinux 0xb249a391 omap_request_dma +EXPORT_SYMBOL vmlinux 0xb24dc68f dcache_dir_open +EXPORT_SYMBOL vmlinux 0xb2701ead tcp_rcv_established +EXPORT_SYMBOL vmlinux 0xb286c477 qcom_scm_set_warm_boot_addr +EXPORT_SYMBOL vmlinux 0xb28d325d ucc_slow_init +EXPORT_SYMBOL vmlinux 0xb2a10cc9 input_set_abs_params +EXPORT_SYMBOL vmlinux 0xb2a78049 phy_validate_pause +EXPORT_SYMBOL vmlinux 0xb2b38635 input_get_keycode +EXPORT_SYMBOL vmlinux 0xb2d0053e cgroup_bpf_enabled_key +EXPORT_SYMBOL vmlinux 0xb2d48a2e queue_work_on +EXPORT_SYMBOL vmlinux 0xb2d6bc23 inet_dgram_ops +EXPORT_SYMBOL vmlinux 0xb2e5ae4a snd_lookup_minor_data +EXPORT_SYMBOL vmlinux 0xb2ecfb77 __dquot_free_space +EXPORT_SYMBOL vmlinux 0xb308c97d wait_woken +EXPORT_SYMBOL vmlinux 0xb30b9822 vme_master_set +EXPORT_SYMBOL vmlinux 0xb31092ef __xfrm_decode_session +EXPORT_SYMBOL vmlinux 0xb32728bb qcom_scm_iommu_secure_ptbl_init +EXPORT_SYMBOL vmlinux 0xb32efc47 dev_set_mac_address +EXPORT_SYMBOL vmlinux 0xb345dc29 dev_mc_add_global +EXPORT_SYMBOL vmlinux 0xb3495261 snd_device_free +EXPORT_SYMBOL vmlinux 0xb34f558a buffer_migrate_page +EXPORT_SYMBOL vmlinux 0xb3574818 remove_proc_subtree +EXPORT_SYMBOL vmlinux 0xb3667805 dqstats +EXPORT_SYMBOL vmlinux 0xb367c984 mxc_set_irq_fiq +EXPORT_SYMBOL vmlinux 0xb3687850 out_of_line_wait_on_bit_lock +EXPORT_SYMBOL vmlinux 0xb36bb0c2 zpool_unregister_driver +EXPORT_SYMBOL vmlinux 0xb374c6ba ip_options_rcv_srr +EXPORT_SYMBOL vmlinux 0xb37d3b07 inet_csk_reqsk_queue_add +EXPORT_SYMBOL vmlinux 0xb386881b tcp_sendmsg +EXPORT_SYMBOL vmlinux 0xb3ac57b2 fuse_dequeue_forget +EXPORT_SYMBOL vmlinux 0xb3bd68cc security_secmark_relabel_packet +EXPORT_SYMBOL vmlinux 0xb3d2c76d scsi_hostbyte_string +EXPORT_SYMBOL vmlinux 0xb3e0b89f generic_file_splice_read +EXPORT_SYMBOL vmlinux 0xb3e2778b ip6_find_1stfragopt +EXPORT_SYMBOL vmlinux 0xb3ea538a fscrypt_decrypt_pagecache_blocks +EXPORT_SYMBOL vmlinux 0xb3f7646e kthread_should_stop +EXPORT_SYMBOL vmlinux 0xb41938c9 truncate_inode_pages +EXPORT_SYMBOL vmlinux 0xb423dba1 console_blanked +EXPORT_SYMBOL vmlinux 0xb4267389 tcf_em_tree_destroy +EXPORT_SYMBOL vmlinux 0xb42d9b77 dquot_get_next_dqblk +EXPORT_SYMBOL vmlinux 0xb437a552 mipi_dsi_shutdown_peripheral +EXPORT_SYMBOL vmlinux 0xb438c364 bmap +EXPORT_SYMBOL vmlinux 0xb4519a8f string_escape_mem +EXPORT_SYMBOL vmlinux 0xb457c639 snd_pcm_hw_rule_noresample +EXPORT_SYMBOL vmlinux 0xb465ec95 scsi_remove_device +EXPORT_SYMBOL vmlinux 0xb466d134 register_md_personality +EXPORT_SYMBOL vmlinux 0xb476c8f4 ZSTD_decompress_usingDict +EXPORT_SYMBOL vmlinux 0xb48d4d22 security_sb_eat_lsm_opts +EXPORT_SYMBOL vmlinux 0xb4939f57 param_ops_bool +EXPORT_SYMBOL vmlinux 0xb4aa9275 __vlan_find_dev_deep_rcu +EXPORT_SYMBOL vmlinux 0xb4ab1a38 arm_coherent_dma_ops +EXPORT_SYMBOL vmlinux 0xb4e6a266 pm860x_bulk_write +EXPORT_SYMBOL vmlinux 0xb4f13d2a abort +EXPORT_SYMBOL vmlinux 0xb4fde2fb scsi_add_device +EXPORT_SYMBOL vmlinux 0xb505b54e get_phy_device +EXPORT_SYMBOL vmlinux 0xb51db220 pci_bus_add_devices +EXPORT_SYMBOL vmlinux 0xb5232be2 generic_write_checks +EXPORT_SYMBOL vmlinux 0xb53d1675 clk_bulk_get_all +EXPORT_SYMBOL vmlinux 0xb54d780a ip_generic_getfrag +EXPORT_SYMBOL vmlinux 0xb551a930 generic_remap_file_range_prep +EXPORT_SYMBOL vmlinux 0xb57343c2 frontswap_shrink +EXPORT_SYMBOL vmlinux 0xb576aa5a try_to_release_page +EXPORT_SYMBOL vmlinux 0xb57bcd54 mntput +EXPORT_SYMBOL vmlinux 0xb57e97a1 tty_port_open +EXPORT_SYMBOL vmlinux 0xb58747c0 qdisc_put_unlocked +EXPORT_SYMBOL vmlinux 0xb587c47c write_inode_now +EXPORT_SYMBOL vmlinux 0xb58aeaab kernel_cpustat +EXPORT_SYMBOL vmlinux 0xb5a459dc unregister_blkdev +EXPORT_SYMBOL vmlinux 0xb5aa7165 dma_pool_destroy +EXPORT_SYMBOL vmlinux 0xb5c23aba of_translate_dma_address +EXPORT_SYMBOL vmlinux 0xb5c67c64 nla_reserve +EXPORT_SYMBOL vmlinux 0xb5c830dd phy_attached_info_irq +EXPORT_SYMBOL vmlinux 0xb5d2a77b __page_frag_cache_drain +EXPORT_SYMBOL vmlinux 0xb5e77633 mmc_run_bkops +EXPORT_SYMBOL vmlinux 0xb5f0f829 __frontswap_load +EXPORT_SYMBOL vmlinux 0xb5f86678 kthread_create_on_node +EXPORT_SYMBOL vmlinux 0xb5fad643 nf_register_queue_handler +EXPORT_SYMBOL vmlinux 0xb5fd6be3 pci_get_device +EXPORT_SYMBOL vmlinux 0xb6065804 tcf_chain_get_by_act +EXPORT_SYMBOL vmlinux 0xb61dc17a __ip_dev_find +EXPORT_SYMBOL vmlinux 0xb62f451c _raw_read_lock_irq +EXPORT_SYMBOL vmlinux 0xb633f115 irq_poll_enable +EXPORT_SYMBOL vmlinux 0xb636dd73 __nand_calculate_ecc +EXPORT_SYMBOL vmlinux 0xb6564f70 remove_conflicting_framebuffers +EXPORT_SYMBOL vmlinux 0xb659b36b phy_ethtool_set_wol +EXPORT_SYMBOL vmlinux 0xb6614282 input_mt_get_slot_by_key +EXPORT_SYMBOL vmlinux 0xb66183bb scsi_command_normalize_sense +EXPORT_SYMBOL vmlinux 0xb662fc8f max8998_bulk_read +EXPORT_SYMBOL vmlinux 0xb678366f int_sqrt +EXPORT_SYMBOL vmlinux 0xb67b540a udp_gro_complete +EXPORT_SYMBOL vmlinux 0xb67c9280 utf8cursor +EXPORT_SYMBOL vmlinux 0xb67d33ac __block_write_begin +EXPORT_SYMBOL vmlinux 0xb67e9dbe kernel_param_unlock +EXPORT_SYMBOL vmlinux 0xb67fec0e uuid_parse +EXPORT_SYMBOL vmlinux 0xb6896671 crc_t10dif +EXPORT_SYMBOL vmlinux 0xb6936ffe _bcd2bin +EXPORT_SYMBOL vmlinux 0xb694335d forget_cached_acl +EXPORT_SYMBOL vmlinux 0xb6a68816 find_last_bit +EXPORT_SYMBOL vmlinux 0xb6abdea6 skb_ensure_writable +EXPORT_SYMBOL vmlinux 0xb6acaa13 phy_sfp_detach +EXPORT_SYMBOL vmlinux 0xb6b6284e xz_dec_run +EXPORT_SYMBOL vmlinux 0xb6bfd5b9 skb_vlan_pop +EXPORT_SYMBOL vmlinux 0xb6ce09cb crypto_sha256_update +EXPORT_SYMBOL vmlinux 0xb6ee34ce ipv6_sock_mc_join +EXPORT_SYMBOL vmlinux 0xb6eeb16b icmp_ndo_send +EXPORT_SYMBOL vmlinux 0xb6ef240c dquot_operations +EXPORT_SYMBOL vmlinux 0xb71d986d snd_pcm_hw_limit_rates +EXPORT_SYMBOL vmlinux 0xb71e012e tty_unregister_driver +EXPORT_SYMBOL vmlinux 0xb7248bf1 netdev_update_features +EXPORT_SYMBOL vmlinux 0xb72f1239 md_wait_for_blocked_rdev +EXPORT_SYMBOL vmlinux 0xb7362c90 do_wait_intr_irq +EXPORT_SYMBOL vmlinux 0xb73dfe12 dump_align +EXPORT_SYMBOL vmlinux 0xb74283c1 bdi_set_max_ratio +EXPORT_SYMBOL vmlinux 0xb7797135 ip_fraglist_init +EXPORT_SYMBOL vmlinux 0xb77b6816 xfrm_register_type +EXPORT_SYMBOL vmlinux 0xb77bb526 wait_on_page_bit +EXPORT_SYMBOL vmlinux 0xb7872388 ZSTD_copyCCtx +EXPORT_SYMBOL vmlinux 0xb78debe3 LZ4_decompress_fast_usingDict +EXPORT_SYMBOL vmlinux 0xb78e2050 qcom_scm_pas_init_image +EXPORT_SYMBOL vmlinux 0xb78fc446 xp_set_rxq_info +EXPORT_SYMBOL vmlinux 0xb7ad1d33 __scsi_device_lookup_by_target +EXPORT_SYMBOL vmlinux 0xb7b107b3 kobject_get_unless_zero +EXPORT_SYMBOL vmlinux 0xb7bb7c0e sock_set_keepalive +EXPORT_SYMBOL vmlinux 0xb7c6db70 sysctl_max_skb_frags +EXPORT_SYMBOL vmlinux 0xb7c8d666 dst_dev_put +EXPORT_SYMBOL vmlinux 0xb7dcbddb rtnl_link_get_net +EXPORT_SYMBOL vmlinux 0xb7dd21d9 generic_fadvise +EXPORT_SYMBOL vmlinux 0xb7df0e97 ZSTD_DDictWorkspaceBound +EXPORT_SYMBOL vmlinux 0xb80f77b2 blk_rq_init +EXPORT_SYMBOL vmlinux 0xb826c57b eth_commit_mac_addr_change +EXPORT_SYMBOL vmlinux 0xb82aab7e configfs_unregister_group +EXPORT_SYMBOL vmlinux 0xb82ae742 simple_lookup +EXPORT_SYMBOL vmlinux 0xb842716c qcom_scm_ocmem_lock_available +EXPORT_SYMBOL vmlinux 0xb853586b param_ops_string +EXPORT_SYMBOL vmlinux 0xb8585790 sock_no_mmap +EXPORT_SYMBOL vmlinux 0xb864b84b ZSTD_decompressBlock +EXPORT_SYMBOL vmlinux 0xb865601f devm_ioremap_wc +EXPORT_SYMBOL vmlinux 0xb868ac5c register_sysrq_key +EXPORT_SYMBOL vmlinux 0xb8872071 kthread_create_worker +EXPORT_SYMBOL vmlinux 0xb8959cc2 blk_post_runtime_suspend +EXPORT_SYMBOL vmlinux 0xb89b6e6b guid_parse +EXPORT_SYMBOL vmlinux 0xb8a02f2c netdev_printk +EXPORT_SYMBOL vmlinux 0xb8aa38f9 get_user_pages_locked +EXPORT_SYMBOL vmlinux 0xb8b043f2 kfree_link +EXPORT_SYMBOL vmlinux 0xb8c17907 pci_find_parent_resource +EXPORT_SYMBOL vmlinux 0xb8c66c45 dma_fence_get_status +EXPORT_SYMBOL vmlinux 0xb8def3ed tcf_exts_num_actions +EXPORT_SYMBOL vmlinux 0xb8e15315 input_unregister_device +EXPORT_SYMBOL vmlinux 0xb8e877e7 kstrtouint_from_user +EXPORT_SYMBOL vmlinux 0xb90f8bbe try_lookup_one_len +EXPORT_SYMBOL vmlinux 0xb911bb58 minmax_running_max +EXPORT_SYMBOL vmlinux 0xb9207361 xfrm_policy_bysel_ctx +EXPORT_SYMBOL vmlinux 0xb928d9b9 refresh_frequency_limits +EXPORT_SYMBOL vmlinux 0xb94339c4 qdisc_put_stab +EXPORT_SYMBOL vmlinux 0xb946de54 tcp_sock_set_cork +EXPORT_SYMBOL vmlinux 0xb95f98d6 _memset_io +EXPORT_SYMBOL vmlinux 0xb9638db4 snd_pcm_rate_to_rate_bit +EXPORT_SYMBOL vmlinux 0xb9702837 pci_match_id +EXPORT_SYMBOL vmlinux 0xb97220ff bitmap_parse +EXPORT_SYMBOL vmlinux 0xb97bd8b0 vme_master_mmap +EXPORT_SYMBOL vmlinux 0xb980ff99 __icmp_send +EXPORT_SYMBOL vmlinux 0xb99b70c6 configfs_depend_item +EXPORT_SYMBOL vmlinux 0xb99c9845 skb_page_frag_refill +EXPORT_SYMBOL vmlinux 0xb9a55bcb __dev_set_mtu +EXPORT_SYMBOL vmlinux 0xb9a613c6 __kmalloc_track_caller +EXPORT_SYMBOL vmlinux 0xb9a8f03b omap_stop_dma +EXPORT_SYMBOL vmlinux 0xb9acd3d9 __put_user_2 +EXPORT_SYMBOL vmlinux 0xb9bf1348 pci_write_config_dword +EXPORT_SYMBOL vmlinux 0xb9cb744c __skb_gro_checksum_complete +EXPORT_SYMBOL vmlinux 0xb9cdb891 map_destroy +EXPORT_SYMBOL vmlinux 0xb9d59a17 dcb_ieee_getapp_mask +EXPORT_SYMBOL vmlinux 0xb9d7f617 blk_integrity_merge_bio +EXPORT_SYMBOL vmlinux 0xb9e43214 skb_headers_offset_update +EXPORT_SYMBOL vmlinux 0xb9e8e2cc in6addr_sitelocal_allrouters +EXPORT_SYMBOL vmlinux 0xb9fadbe4 seq_put_decimal_ll +EXPORT_SYMBOL vmlinux 0xb9fc381a qcom_scm_hdcp_req +EXPORT_SYMBOL vmlinux 0xba1ce1ca mdio_device_create +EXPORT_SYMBOL vmlinux 0xba29e2ec dev_set_alias +EXPORT_SYMBOL vmlinux 0xba2ffeea ZSTD_initCStream_usingCDict +EXPORT_SYMBOL vmlinux 0xba3ee799 iov_iter_npages +EXPORT_SYMBOL vmlinux 0xba43e557 irq_domain_set_info +EXPORT_SYMBOL vmlinux 0xba497f13 loops_per_jiffy +EXPORT_SYMBOL vmlinux 0xba4ae097 enable_fiq +EXPORT_SYMBOL vmlinux 0xba55e22d __skb_checksum_complete_head +EXPORT_SYMBOL vmlinux 0xba707a78 qe_get_brg_clk +EXPORT_SYMBOL vmlinux 0xba7763af input_mt_report_pointer_emulation +EXPORT_SYMBOL vmlinux 0xba7e0ca1 csum_and_copy_from_iter_full +EXPORT_SYMBOL vmlinux 0xba8d820f param_set_short +EXPORT_SYMBOL vmlinux 0xba978485 register_md_cluster_operations +EXPORT_SYMBOL vmlinux 0xba991c43 __napi_schedule_irqoff +EXPORT_SYMBOL vmlinux 0xba9beaf8 inet_sk_rx_dst_set +EXPORT_SYMBOL vmlinux 0xbaa7c8c5 krealloc +EXPORT_SYMBOL vmlinux 0xbaae6ce4 skb_flow_dissector_init +EXPORT_SYMBOL vmlinux 0xbad60167 flow_rule_match_ct +EXPORT_SYMBOL vmlinux 0xbadcaade blk_set_default_limits +EXPORT_SYMBOL vmlinux 0xbaeddd28 snd_pcm_lib_free_pages +EXPORT_SYMBOL vmlinux 0xbaf6d005 kernel_sendpage_locked +EXPORT_SYMBOL vmlinux 0xbaffe660 vlan_vids_del_by_dev +EXPORT_SYMBOL vmlinux 0xbb0540aa zlib_inflateReset +EXPORT_SYMBOL vmlinux 0xbb14eb31 bcmp +EXPORT_SYMBOL vmlinux 0xbb1aee60 iw_handler_set_thrspy +EXPORT_SYMBOL vmlinux 0xbb24f607 init_cdrom_command +EXPORT_SYMBOL vmlinux 0xbb30148c ___pskb_trim +EXPORT_SYMBOL vmlinux 0xbb35675b __bitmap_intersects +EXPORT_SYMBOL vmlinux 0xbb43cbe2 vme_dma_pci_attribute +EXPORT_SYMBOL vmlinux 0xbb45f9c5 of_phy_is_fixed_link +EXPORT_SYMBOL vmlinux 0xbb47ff19 bioset_init +EXPORT_SYMBOL vmlinux 0xbb623a4c scsi_register_interface +EXPORT_SYMBOL vmlinux 0xbb627fd1 copy_string_kernel +EXPORT_SYMBOL vmlinux 0xbb6df778 sg_nents +EXPORT_SYMBOL vmlinux 0xbb716645 xfrm4_rcv +EXPORT_SYMBOL vmlinux 0xbb725484 md_error +EXPORT_SYMBOL vmlinux 0xbb72d4fe __put_user_1 +EXPORT_SYMBOL vmlinux 0xbbac01c2 param_get_ushort +EXPORT_SYMBOL vmlinux 0xbbcff9a4 check_zeroed_user +EXPORT_SYMBOL vmlinux 0xbbd48917 pci_iounmap +EXPORT_SYMBOL vmlinux 0xbbd58b07 simple_unlink +EXPORT_SYMBOL vmlinux 0xbbe9641d page_mapped +EXPORT_SYMBOL vmlinux 0xbbf8e26e mmc_erase +EXPORT_SYMBOL vmlinux 0xbc003aee padata_alloc_shell +EXPORT_SYMBOL vmlinux 0xbc0455ab tcf_idr_create +EXPORT_SYMBOL vmlinux 0xbc0c621c submit_bio +EXPORT_SYMBOL vmlinux 0xbc10dd97 __put_user_4 +EXPORT_SYMBOL vmlinux 0xbc1b41fa scsi_block_when_processing_errors +EXPORT_SYMBOL vmlinux 0xbc25f7cc free_contig_range +EXPORT_SYMBOL vmlinux 0xbc283efb skb_copy_and_csum_dev +EXPORT_SYMBOL vmlinux 0xbc295b48 config_group_init_type_name +EXPORT_SYMBOL vmlinux 0xbc3bd913 hdmi_infoframe_log +EXPORT_SYMBOL vmlinux 0xbc5ac51b phy_driver_unregister +EXPORT_SYMBOL vmlinux 0xbc60f0a6 msm_pinctrl_probe +EXPORT_SYMBOL vmlinux 0xbc7300f3 pps_lookup_dev +EXPORT_SYMBOL vmlinux 0xbc870930 of_lpddr3_get_ddr_timings +EXPORT_SYMBOL vmlinux 0xbc91f8fd unix_attach_fds +EXPORT_SYMBOL vmlinux 0xbcab6ee6 sscanf +EXPORT_SYMBOL vmlinux 0xbcbdf60f kstrtos8 +EXPORT_SYMBOL vmlinux 0xbcc0b9a4 iget_locked +EXPORT_SYMBOL vmlinux 0xbcc308bb strnlen_user +EXPORT_SYMBOL vmlinux 0xbcc54414 tty_devnum +EXPORT_SYMBOL vmlinux 0xbcd4aeff eth_get_headlen +EXPORT_SYMBOL vmlinux 0xbcdc6b3e kill_pid +EXPORT_SYMBOL vmlinux 0xbcf7e40c xfrm_policy_insert +EXPORT_SYMBOL vmlinux 0xbd01e5ef input_free_device +EXPORT_SYMBOL vmlinux 0xbd04dcab block_page_mkwrite +EXPORT_SYMBOL vmlinux 0xbd399672 elm_decode_bch_error_page +EXPORT_SYMBOL vmlinux 0xbd5276b5 create_empty_buffers +EXPORT_SYMBOL vmlinux 0xbd6e9690 param_ops_ushort +EXPORT_SYMBOL vmlinux 0xbd7640c8 make_kuid +EXPORT_SYMBOL vmlinux 0xbd820297 rtc_lock +EXPORT_SYMBOL vmlinux 0xbd8555f8 mutex_trylock_recursive +EXPORT_SYMBOL vmlinux 0xbd866309 generic_file_mmap +EXPORT_SYMBOL vmlinux 0xbd8bd726 xfrm_dst_ifdown +EXPORT_SYMBOL vmlinux 0xbda2c7b7 arm_dma_ops +EXPORT_SYMBOL vmlinux 0xbdafc1d2 udp_ioctl +EXPORT_SYMBOL vmlinux 0xbdbffd41 sock_alloc_send_skb +EXPORT_SYMBOL vmlinux 0xbdc651db __xfrm_state_delete +EXPORT_SYMBOL vmlinux 0xbdda95de serio_rescan +EXPORT_SYMBOL vmlinux 0xbdfa1433 input_close_device +EXPORT_SYMBOL vmlinux 0xbe0cb4d0 udp_seq_next +EXPORT_SYMBOL vmlinux 0xbe0e3cba tcf_queue_work +EXPORT_SYMBOL vmlinux 0xbe0e5118 nla_memcmp +EXPORT_SYMBOL vmlinux 0xbe12a92d alloc_file_pseudo +EXPORT_SYMBOL vmlinux 0xbe27d0f1 msi_desc_to_pci_dev +EXPORT_SYMBOL vmlinux 0xbe3ef040 inet6_add_protocol +EXPORT_SYMBOL vmlinux 0xbe4eb6ed secure_dccpv6_sequence_number +EXPORT_SYMBOL vmlinux 0xbe4f0582 freezing_slow_path +EXPORT_SYMBOL vmlinux 0xbe58206e vm_zone_stat +EXPORT_SYMBOL vmlinux 0xbe59d15e start_tty +EXPORT_SYMBOL vmlinux 0xbe5a24e9 xxh32_copy_state +EXPORT_SYMBOL vmlinux 0xbe7053b7 xfrm_policy_delete +EXPORT_SYMBOL vmlinux 0xbe729ccb pcie_relaxed_ordering_enabled +EXPORT_SYMBOL vmlinux 0xbeaa029e fb_set_suspend +EXPORT_SYMBOL vmlinux 0xbeb26b79 zpool_register_driver +EXPORT_SYMBOL vmlinux 0xbeddf30f cdev_alloc +EXPORT_SYMBOL vmlinux 0xbedf6701 inode_init_once +EXPORT_SYMBOL vmlinux 0xbee90f2f __kfifo_out_peek_r +EXPORT_SYMBOL vmlinux 0xbeee4511 jbd2_journal_free_reserved +EXPORT_SYMBOL vmlinux 0xbef43296 console_conditional_schedule +EXPORT_SYMBOL vmlinux 0xbefd2cbf udp6_seq_ops +EXPORT_SYMBOL vmlinux 0xbf0c31e8 pcie_capability_clear_and_set_dword +EXPORT_SYMBOL vmlinux 0xbf29967f ps2_cmd_aborted +EXPORT_SYMBOL vmlinux 0xbf40679d lookup_positive_unlocked +EXPORT_SYMBOL vmlinux 0xbf46417b dma_direct_map_page +EXPORT_SYMBOL vmlinux 0xbf48c002 pps_unregister_source +EXPORT_SYMBOL vmlinux 0xbf4d4539 udp_table +EXPORT_SYMBOL vmlinux 0xbf59c419 posix_acl_init +EXPORT_SYMBOL vmlinux 0xbf5b13b5 nonseekable_open +EXPORT_SYMBOL vmlinux 0xbf68796b netif_stacked_transfer_operstate +EXPORT_SYMBOL vmlinux 0xbf6960e3 pcie_port_service_unregister +EXPORT_SYMBOL vmlinux 0xbf69d794 blk_mq_tag_to_rq +EXPORT_SYMBOL vmlinux 0xbf7347b2 proc_doulongvec_ms_jiffies_minmax +EXPORT_SYMBOL vmlinux 0xbf75ea6c tegra114_clock_tune_cpu_trimmers_low +EXPORT_SYMBOL vmlinux 0xbf977b0d tcp_md5_do_del +EXPORT_SYMBOL vmlinux 0xbf9bcc8d __cap_empty_set +EXPORT_SYMBOL vmlinux 0xbfbe6d26 ip_mc_join_group +EXPORT_SYMBOL vmlinux 0xbfcbc0d2 stmp_reset_block +EXPORT_SYMBOL vmlinux 0xbfd17f1e of_pci_range_to_resource +EXPORT_SYMBOL vmlinux 0xbfd9dc9b __i2c_smbus_xfer +EXPORT_SYMBOL vmlinux 0xbfda55bf sockfd_lookup +EXPORT_SYMBOL vmlinux 0xbfdce7c3 clean_bdev_aliases +EXPORT_SYMBOL vmlinux 0xbfdf7bc3 mempool_create +EXPORT_SYMBOL vmlinux 0xbfe2bf87 phy_get_pause +EXPORT_SYMBOL vmlinux 0xbfe62457 tcp_gro_complete +EXPORT_SYMBOL vmlinux 0xbfe8435e simple_transaction_get +EXPORT_SYMBOL vmlinux 0xbfee3ad5 loop_unregister_transfer +EXPORT_SYMBOL vmlinux 0xc00e35bc serio_bus +EXPORT_SYMBOL vmlinux 0xc025016c flow_keys_dissector +EXPORT_SYMBOL vmlinux 0xc03f340e blk_mq_tagset_wait_completed_request +EXPORT_SYMBOL vmlinux 0xc04b3f8c ZSTD_compressCCtx +EXPORT_SYMBOL vmlinux 0xc05ce2b6 of_node_name_eq +EXPORT_SYMBOL vmlinux 0xc069dced __put_cred +EXPORT_SYMBOL vmlinux 0xc0732d30 __cpuhp_setup_state_cpuslocked +EXPORT_SYMBOL vmlinux 0xc07374b3 skb_unlink +EXPORT_SYMBOL vmlinux 0xc0763484 rfkill_blocked +EXPORT_SYMBOL vmlinux 0xc0772cf2 kmem_cache_size +EXPORT_SYMBOL vmlinux 0xc078da20 dev_mc_add +EXPORT_SYMBOL vmlinux 0xc07b0863 fb_destroy_modedb +EXPORT_SYMBOL vmlinux 0xc08faf94 call_netdevice_notifiers +EXPORT_SYMBOL vmlinux 0xc096e23d hdmi_drm_infoframe_init +EXPORT_SYMBOL vmlinux 0xc0a6a8c5 omap_set_dma_dest_burst_mode +EXPORT_SYMBOL vmlinux 0xc0a98385 profile_pc +EXPORT_SYMBOL vmlinux 0xc0b2664d devlink_dpipe_header_ipv4 +EXPORT_SYMBOL vmlinux 0xc0b383ee of_graph_get_endpoint_count +EXPORT_SYMBOL vmlinux 0xc0ba7d3c unregister_cdrom +EXPORT_SYMBOL vmlinux 0xc0ce8e53 crypto_sha512_update +EXPORT_SYMBOL vmlinux 0xc0d5feee vfs_statx +EXPORT_SYMBOL vmlinux 0xc0d649a7 __scsi_execute +EXPORT_SYMBOL vmlinux 0xc0da0e99 dim_on_top +EXPORT_SYMBOL vmlinux 0xc0e17977 param_ops_uint +EXPORT_SYMBOL vmlinux 0xc0edeea8 dev_add_pack +EXPORT_SYMBOL vmlinux 0xc0f4008e ptp_clock_register +EXPORT_SYMBOL vmlinux 0xc0f5e269 tegra_ahb_enable_smmu +EXPORT_SYMBOL vmlinux 0xc0f814df uart_add_one_port +EXPORT_SYMBOL vmlinux 0xc0fb357a dma_fence_chain_walk +EXPORT_SYMBOL vmlinux 0xc0fbb590 tcf_idr_create_from_flags +EXPORT_SYMBOL vmlinux 0xc0fee7e7 qdisc_tree_reduce_backlog +EXPORT_SYMBOL vmlinux 0xc0ff12fb nla_strdup +EXPORT_SYMBOL vmlinux 0xc13a7ba6 __tracepoint_kmalloc +EXPORT_SYMBOL vmlinux 0xc13f7346 pm8606_osc_disable +EXPORT_SYMBOL vmlinux 0xc1514a3b free_irq +EXPORT_SYMBOL vmlinux 0xc15cfb35 md_bitmap_unplug +EXPORT_SYMBOL vmlinux 0xc15f4ed8 utf8nlen +EXPORT_SYMBOL vmlinux 0xc1638863 vfs_ioctl +EXPORT_SYMBOL vmlinux 0xc16410b9 ZSTD_getDictID_fromDDict +EXPORT_SYMBOL vmlinux 0xc16926bd get_tz_trend +EXPORT_SYMBOL vmlinux 0xc16be39d iter_div_u64_rem +EXPORT_SYMBOL vmlinux 0xc1880831 input_set_capability +EXPORT_SYMBOL vmlinux 0xc1959671 udp6_set_csum +EXPORT_SYMBOL vmlinux 0xc19f786a generic_perform_write +EXPORT_SYMBOL vmlinux 0xc1a1e91c tcp_v4_md5_lookup +EXPORT_SYMBOL vmlinux 0xc1b17621 generic_cont_expand_simple +EXPORT_SYMBOL vmlinux 0xc1c47c73 of_find_node_by_name +EXPORT_SYMBOL vmlinux 0xc1ca2652 generic_ro_fops +EXPORT_SYMBOL vmlinux 0xc1d8cfaf __fdget +EXPORT_SYMBOL vmlinux 0xc1e18503 xfrm_policy_destroy +EXPORT_SYMBOL vmlinux 0xc1e2c742 tegra_io_rail_power_on +EXPORT_SYMBOL vmlinux 0xc1fdc6bd fb_blank +EXPORT_SYMBOL vmlinux 0xc2059c64 fscrypt_enqueue_decrypt_work +EXPORT_SYMBOL vmlinux 0xc207ee07 complete_and_exit +EXPORT_SYMBOL vmlinux 0xc213a772 pci_remove_bus +EXPORT_SYMBOL vmlinux 0xc22680e6 tcp_make_synack +EXPORT_SYMBOL vmlinux 0xc230c9a8 wait_for_completion_io_timeout +EXPORT_SYMBOL vmlinux 0xc267960e utf8_validate +EXPORT_SYMBOL vmlinux 0xc271c3be mutex_lock +EXPORT_SYMBOL vmlinux 0xc2758871 seq_release_private +EXPORT_SYMBOL vmlinux 0xc279969a omap_get_dma_dst_pos +EXPORT_SYMBOL vmlinux 0xc2810379 proc_create_single_data +EXPORT_SYMBOL vmlinux 0xc2967fa7 nf_unregister_net_hooks +EXPORT_SYMBOL vmlinux 0xc2a9b023 ppp_dev_name +EXPORT_SYMBOL vmlinux 0xc2a9e9b0 cdev_init +EXPORT_SYMBOL vmlinux 0xc2acc033 hex_dump_to_buffer +EXPORT_SYMBOL vmlinux 0xc2b1d4e1 lockref_put_return +EXPORT_SYMBOL vmlinux 0xc2cf2dde ZSTD_decompress_usingDDict +EXPORT_SYMBOL vmlinux 0xc2cf82c2 __devm_request_region +EXPORT_SYMBOL vmlinux 0xc2e587d1 reset_devices +EXPORT_SYMBOL vmlinux 0xc2edac05 input_mt_report_slot_state +EXPORT_SYMBOL vmlinux 0xc2ede9c5 gen_pool_destroy +EXPORT_SYMBOL vmlinux 0xc2fbae70 ps2_begin_command +EXPORT_SYMBOL vmlinux 0xc3038718 jbd2_journal_set_features +EXPORT_SYMBOL vmlinux 0xc306c3a8 page_frag_alloc +EXPORT_SYMBOL vmlinux 0xc3081485 put_disk_and_module +EXPORT_SYMBOL vmlinux 0xc31db0ce is_vmalloc_addr +EXPORT_SYMBOL vmlinux 0xc32c71af register_inetaddr_validator_notifier +EXPORT_SYMBOL vmlinux 0xc335be41 config_item_init_type_name +EXPORT_SYMBOL vmlinux 0xc34e9d07 of_find_node_opts_by_path +EXPORT_SYMBOL vmlinux 0xc34f28d3 pcim_iounmap +EXPORT_SYMBOL vmlinux 0xc358aaf8 snprintf +EXPORT_SYMBOL vmlinux 0xc37335b0 complete +EXPORT_SYMBOL vmlinux 0xc37f9c6e cpufreq_update_policy +EXPORT_SYMBOL vmlinux 0xc38c83b8 mod_timer +EXPORT_SYMBOL vmlinux 0xc38ed9cc configfs_unregister_subsystem +EXPORT_SYMBOL vmlinux 0xc3c74800 dev_get_iflink +EXPORT_SYMBOL vmlinux 0xc3cff861 km_new_mapping +EXPORT_SYMBOL vmlinux 0xc3ec7dc1 __gnet_stats_copy_basic +EXPORT_SYMBOL vmlinux 0xc3ed40b3 blk_queue_stack_limits +EXPORT_SYMBOL vmlinux 0xc4173909 kernel_sendmsg_locked +EXPORT_SYMBOL vmlinux 0xc41bc980 iwe_stream_add_value +EXPORT_SYMBOL vmlinux 0xc4212ab9 qdisc_class_hash_insert +EXPORT_SYMBOL vmlinux 0xc427e066 omap_vrfb_min_phys_size +EXPORT_SYMBOL vmlinux 0xc42f749c pci_free_host_bridge +EXPORT_SYMBOL vmlinux 0xc4657dc8 mempool_init +EXPORT_SYMBOL vmlinux 0xc4708199 cpm_muram_addr +EXPORT_SYMBOL vmlinux 0xc4777aa9 __ctzsi2 +EXPORT_SYMBOL vmlinux 0xc4878c14 tcf_get_next_proto +EXPORT_SYMBOL vmlinux 0xc48b29bb dev_set_group +EXPORT_SYMBOL vmlinux 0xc48b4b07 inet6_protos +EXPORT_SYMBOL vmlinux 0xc4993970 netdev_emerg +EXPORT_SYMBOL vmlinux 0xc4a46495 _copy_from_iter_nocache +EXPORT_SYMBOL vmlinux 0xc4bc46d5 __generic_file_fsync +EXPORT_SYMBOL vmlinux 0xc4c46dcb skb_vlan_untag +EXPORT_SYMBOL vmlinux 0xc4c91467 __nla_put +EXPORT_SYMBOL vmlinux 0xc4e51cca proc_mkdir +EXPORT_SYMBOL vmlinux 0xc4ea9fcc mmc_gpio_get_cd +EXPORT_SYMBOL vmlinux 0xc4f0589e __cleancache_init_fs +EXPORT_SYMBOL vmlinux 0xc4f0feb6 tc6393xb_lcd_mode +EXPORT_SYMBOL vmlinux 0xc5020749 tty_port_tty_get +EXPORT_SYMBOL vmlinux 0xc50a8fee dquot_disable +EXPORT_SYMBOL vmlinux 0xc50f3135 xsk_umem_consume_tx_done +EXPORT_SYMBOL vmlinux 0xc52da066 omap_set_dma_dest_params +EXPORT_SYMBOL vmlinux 0xc533d2b1 skb_queue_purge +EXPORT_SYMBOL vmlinux 0xc55bb7cc flow_rule_match_mpls +EXPORT_SYMBOL vmlinux 0xc579a42c dev_get_phys_port_name +EXPORT_SYMBOL vmlinux 0xc581500f ZSTD_resetDStream +EXPORT_SYMBOL vmlinux 0xc5850110 printk +EXPORT_SYMBOL vmlinux 0xc58a728d cqhci_init +EXPORT_SYMBOL vmlinux 0xc58f4b46 mipi_dsi_compression_mode +EXPORT_SYMBOL vmlinux 0xc58f7f9d input_allocate_device +EXPORT_SYMBOL vmlinux 0xc599a772 security_xfrm_state_delete +EXPORT_SYMBOL vmlinux 0xc5c374a5 tcp_fastopen_defer_connect +EXPORT_SYMBOL vmlinux 0xc5d365a9 mmc_retune_timer_stop +EXPORT_SYMBOL vmlinux 0xc5d566a4 flow_indr_block_cb_alloc +EXPORT_SYMBOL vmlinux 0xc5e5573a frame_vector_to_pages +EXPORT_SYMBOL vmlinux 0xc5ee6c48 kvfree_sensitive +EXPORT_SYMBOL vmlinux 0xc5f5e4fc ab3100_event_register +EXPORT_SYMBOL vmlinux 0xc6055c9e kvasprintf_const +EXPORT_SYMBOL vmlinux 0xc60d0620 __num_online_cpus +EXPORT_SYMBOL vmlinux 0xc60e88f0 of_count_phandle_with_args +EXPORT_SYMBOL vmlinux 0xc62dd850 __mark_inode_dirty +EXPORT_SYMBOL vmlinux 0xc631580a console_unlock +EXPORT_SYMBOL vmlinux 0xc633d82d phy_unregister_fixup +EXPORT_SYMBOL vmlinux 0xc63a23b5 address_space_init_once +EXPORT_SYMBOL vmlinux 0xc645ce95 __cleancache_invalidate_inode +EXPORT_SYMBOL vmlinux 0xc654c242 tegra_ivc_read_advance +EXPORT_SYMBOL vmlinux 0xc65910f1 pci_setup_cardbus +EXPORT_SYMBOL vmlinux 0xc65baf58 vga_set_legacy_decoding +EXPORT_SYMBOL vmlinux 0xc65e4e97 secure_dccp_sequence_number +EXPORT_SYMBOL vmlinux 0xc665afca filemap_fault +EXPORT_SYMBOL vmlinux 0xc66668e7 set_disk_ro +EXPORT_SYMBOL vmlinux 0xc6679a97 tty_do_resize +EXPORT_SYMBOL vmlinux 0xc66a8304 cpu_rmap_add +EXPORT_SYMBOL vmlinux 0xc66d919f dm_table_get_mode +EXPORT_SYMBOL vmlinux 0xc67a30cc mr_mfc_find_any +EXPORT_SYMBOL vmlinux 0xc67db994 vmf_insert_mixed +EXPORT_SYMBOL vmlinux 0xc680c33a __inet_stream_connect +EXPORT_SYMBOL vmlinux 0xc682805e vfs_dedupe_file_range +EXPORT_SYMBOL vmlinux 0xc687d788 blk_mq_alloc_tag_set +EXPORT_SYMBOL vmlinux 0xc68a53a9 ipv6_dev_mc_dec +EXPORT_SYMBOL vmlinux 0xc68adf82 km_query +EXPORT_SYMBOL vmlinux 0xc68f0c81 read_code +EXPORT_SYMBOL vmlinux 0xc69fce52 qcom_scm_qsmmu500_wait_safe_toggle +EXPORT_SYMBOL vmlinux 0xc6a223ce pci_add_new_bus +EXPORT_SYMBOL vmlinux 0xc6ad6f87 xfrm_policy_alloc +EXPORT_SYMBOL vmlinux 0xc6b5a12c netlbl_calipso_ops_register +EXPORT_SYMBOL vmlinux 0xc6c103a4 timestamp_truncate +EXPORT_SYMBOL vmlinux 0xc6cbbc89 capable +EXPORT_SYMBOL vmlinux 0xc6e73698 inode_set_flags +EXPORT_SYMBOL vmlinux 0xc6f0670a devm_of_find_backlight +EXPORT_SYMBOL vmlinux 0xc6f46339 init_timer_key +EXPORT_SYMBOL vmlinux 0xc6f94613 pin_user_pages +EXPORT_SYMBOL vmlinux 0xc6f9dcb9 skb_dump +EXPORT_SYMBOL vmlinux 0xc70767f3 vme_bus_num +EXPORT_SYMBOL vmlinux 0xc709e1c3 tcf_em_tree_dump +EXPORT_SYMBOL vmlinux 0xc70f5c97 __lock_page +EXPORT_SYMBOL vmlinux 0xc71619ba param_get_bool +EXPORT_SYMBOL vmlinux 0xc71b03ea dquot_quotactl_sysfile_ops +EXPORT_SYMBOL vmlinux 0xc7208c3a serial8250_resume_port +EXPORT_SYMBOL vmlinux 0xc720e5c8 iput +EXPORT_SYMBOL vmlinux 0xc7273722 generic_error_remove_page +EXPORT_SYMBOL vmlinux 0xc729e55c scsi_print_sense +EXPORT_SYMBOL vmlinux 0xc7309c7f fiemap_prep +EXPORT_SYMBOL vmlinux 0xc7398a90 mr_mfc_seq_idx +EXPORT_SYMBOL vmlinux 0xc7513f17 param_get_byte +EXPORT_SYMBOL vmlinux 0xc75ea91f max8925_bulk_write +EXPORT_SYMBOL vmlinux 0xc765179e bio_init +EXPORT_SYMBOL vmlinux 0xc76fbf3d xfrm_input_unregister_afinfo +EXPORT_SYMBOL vmlinux 0xc781bd9f rfkill_resume_polling +EXPORT_SYMBOL vmlinux 0xc7856a3d inet6addr_notifier_call_chain +EXPORT_SYMBOL vmlinux 0xc7919a4f always_delete_dentry +EXPORT_SYMBOL vmlinux 0xc79bcd36 dm_vcalloc +EXPORT_SYMBOL vmlinux 0xc7a35703 of_graph_get_remote_node +EXPORT_SYMBOL vmlinux 0xc7a45c89 security_inet_conn_established +EXPORT_SYMBOL vmlinux 0xc7a4fbed rtnl_lock +EXPORT_SYMBOL vmlinux 0xc7aba517 ipv6_chk_addr +EXPORT_SYMBOL vmlinux 0xc7bb58a2 unpin_user_pages_dirty_lock +EXPORT_SYMBOL vmlinux 0xc7c1107a LZ4_decompress_safe +EXPORT_SYMBOL vmlinux 0xc7d094b5 dm_read_arg_group +EXPORT_SYMBOL vmlinux 0xc7d591e2 misc_register +EXPORT_SYMBOL vmlinux 0xc7d949c6 block_is_partially_uptodate +EXPORT_SYMBOL vmlinux 0xc7ec6c27 strspn +EXPORT_SYMBOL vmlinux 0xc7f088a1 fb_get_buffer_offset +EXPORT_SYMBOL vmlinux 0xc7f59660 seq_hex_dump +EXPORT_SYMBOL vmlinux 0xc7f7b79f inet_bind +EXPORT_SYMBOL vmlinux 0xc81e91a8 napi_busy_loop +EXPORT_SYMBOL vmlinux 0xc83381c1 skb_recv_datagram +EXPORT_SYMBOL vmlinux 0xc8339e24 string_unescape +EXPORT_SYMBOL vmlinux 0xc837fe75 dput +EXPORT_SYMBOL vmlinux 0xc84a0a7e seq_hlist_start_rcu +EXPORT_SYMBOL vmlinux 0xc84e05fa devm_register_netdev +EXPORT_SYMBOL vmlinux 0xc86f7aef ip_sock_set_freebind +EXPORT_SYMBOL vmlinux 0xc871849d netdev_master_upper_dev_get +EXPORT_SYMBOL vmlinux 0xc872fd85 in6addr_interfacelocal_allnodes +EXPORT_SYMBOL vmlinux 0xc8827b75 sysctl_vals +EXPORT_SYMBOL vmlinux 0xc890c008 zlib_deflateEnd +EXPORT_SYMBOL vmlinux 0xc8a91f5b cpumask_local_spread +EXPORT_SYMBOL vmlinux 0xc8b58a25 __memset64 +EXPORT_SYMBOL vmlinux 0xc8d0ac07 mfd_add_devices +EXPORT_SYMBOL vmlinux 0xc900a717 xp_dma_map +EXPORT_SYMBOL vmlinux 0xc91ad41b xsk_clear_tx_need_wakeup +EXPORT_SYMBOL vmlinux 0xc91ecfee sb_set_blocksize +EXPORT_SYMBOL vmlinux 0xc9232ac7 sync_inode_metadata +EXPORT_SYMBOL vmlinux 0xc924ec63 crypto_sha512_finup +EXPORT_SYMBOL vmlinux 0xc9308850 __task_pid_nr_ns +EXPORT_SYMBOL vmlinux 0xc9429384 devm_clk_get_optional +EXPORT_SYMBOL vmlinux 0xc94d8e3b iomem_resource +EXPORT_SYMBOL vmlinux 0xc95cbf99 nobh_writepage +EXPORT_SYMBOL vmlinux 0xc95f2546 napi_gro_frags +EXPORT_SYMBOL vmlinux 0xc960e7c9 no_llseek +EXPORT_SYMBOL vmlinux 0xc9634df9 in6addr_linklocal_allrouters +EXPORT_SYMBOL vmlinux 0xc963ed5d kmap_high +EXPORT_SYMBOL vmlinux 0xc972449f mempool_alloc_slab +EXPORT_SYMBOL vmlinux 0xc9822234 clk_register_clkdev +EXPORT_SYMBOL vmlinux 0xc982f0fa __frontswap_store +EXPORT_SYMBOL vmlinux 0xc99e2a55 twl_rev +EXPORT_SYMBOL vmlinux 0xc9c9113d snd_info_register +EXPORT_SYMBOL vmlinux 0xc9ca3698 register_sysctl_table +EXPORT_SYMBOL vmlinux 0xc9cb37f2 rproc_coredump_set_elf_info +EXPORT_SYMBOL vmlinux 0xc9df055a xfrm_policy_walk_init +EXPORT_SYMBOL vmlinux 0xc9e4ef6d phy_aneg_done +EXPORT_SYMBOL vmlinux 0xca04a424 unpin_user_pages +EXPORT_SYMBOL vmlinux 0xca089d29 vme_init_bridge +EXPORT_SYMBOL vmlinux 0xca1ea2c7 blk_set_stacking_limits +EXPORT_SYMBOL vmlinux 0xca21ebd3 bitmap_free +EXPORT_SYMBOL vmlinux 0xca308b1e blk_queue_dma_alignment +EXPORT_SYMBOL vmlinux 0xca431c05 wake_bit_function +EXPORT_SYMBOL vmlinux 0xca813ce6 LZ4_decompress_safe_continue +EXPORT_SYMBOL vmlinux 0xca9360b5 rb_next +EXPORT_SYMBOL vmlinux 0xca94e2ed ip_sock_set_tos +EXPORT_SYMBOL vmlinux 0xcaaa20f7 vfs_iocb_iter_read +EXPORT_SYMBOL vmlinux 0xcaef8286 kstrtos8_from_user +EXPORT_SYMBOL vmlinux 0xcaf2c603 scsi_sd_pm_domain +EXPORT_SYMBOL vmlinux 0xcafe072b qcom_scm_io_writel +EXPORT_SYMBOL vmlinux 0xcb0288ea ledtrig_cpu +EXPORT_SYMBOL vmlinux 0xcb037897 flow_rule_match_cvlan +EXPORT_SYMBOL vmlinux 0xcb042ef8 kmem_cache_alloc +EXPORT_SYMBOL vmlinux 0xcb190790 mnt_drop_write_file +EXPORT_SYMBOL vmlinux 0xcb1aa5ac input_set_max_poll_interval +EXPORT_SYMBOL vmlinux 0xcb23db9b inet_gro_receive +EXPORT_SYMBOL vmlinux 0xcb3ae215 call_blocking_lsm_notifier +EXPORT_SYMBOL vmlinux 0xcb510bc2 complete_all +EXPORT_SYMBOL vmlinux 0xcb555d29 generic_make_request +EXPORT_SYMBOL vmlinux 0xcb5c0c9a md_reap_sync_thread +EXPORT_SYMBOL vmlinux 0xcb606eb9 xa_load +EXPORT_SYMBOL vmlinux 0xcb722ab0 mmc_retune_unpause +EXPORT_SYMBOL vmlinux 0xcb8bb798 _dev_err +EXPORT_SYMBOL vmlinux 0xcb8c753b mempool_exit +EXPORT_SYMBOL vmlinux 0xcb8ffb75 kobject_add +EXPORT_SYMBOL vmlinux 0xcba4abe3 list_sort +EXPORT_SYMBOL vmlinux 0xcba813c4 xfrm_input_register_afinfo +EXPORT_SYMBOL vmlinux 0xcbb8494b tty_port_destroy +EXPORT_SYMBOL vmlinux 0xcbbab1a4 tcf_em_register +EXPORT_SYMBOL vmlinux 0xcbc6415c pcie_get_readrq +EXPORT_SYMBOL vmlinux 0xcbd4898c fortify_panic +EXPORT_SYMBOL vmlinux 0xcbd57e60 gnet_stats_copy_rate_est +EXPORT_SYMBOL vmlinux 0xcbf1dbd0 utf8len +EXPORT_SYMBOL vmlinux 0xcc127e7e pci_bus_set_ops +EXPORT_SYMBOL vmlinux 0xcc15f328 snd_timer_global_new +EXPORT_SYMBOL vmlinux 0xcc248d26 serial8250_suspend_port +EXPORT_SYMBOL vmlinux 0xcc257513 fbcon_set_rotate +EXPORT_SYMBOL vmlinux 0xcc30f0f1 tcp_tx_delay_enabled +EXPORT_SYMBOL vmlinux 0xcc32d90f con_copy_unimap +EXPORT_SYMBOL vmlinux 0xcc3581b2 jbd2_journal_force_commit +EXPORT_SYMBOL vmlinux 0xcc3b2cc9 __sg_page_iter_dma_next +EXPORT_SYMBOL vmlinux 0xcc41477d audit_log +EXPORT_SYMBOL vmlinux 0xcc424667 snd_jack_report +EXPORT_SYMBOL vmlinux 0xcc5005fe msleep_interruptible +EXPORT_SYMBOL vmlinux 0xcc50db7e napi_consume_skb +EXPORT_SYMBOL vmlinux 0xcc5d22d9 can_do_mlock +EXPORT_SYMBOL vmlinux 0xcc6a729f snd_ctl_enum_info +EXPORT_SYMBOL vmlinux 0xcc724487 mpage_readahead +EXPORT_SYMBOL vmlinux 0xcc8f0664 jbd2_journal_blocks_per_page +EXPORT_SYMBOL vmlinux 0xccaa3da8 inet_sock_destruct +EXPORT_SYMBOL vmlinux 0xccaadaf8 __module_put_and_exit +EXPORT_SYMBOL vmlinux 0xccc21f5e input_get_new_minor +EXPORT_SYMBOL vmlinux 0xccc758d8 nla_policy_len +EXPORT_SYMBOL vmlinux 0xcccfebef __break_lease +EXPORT_SYMBOL vmlinux 0xccd9aa65 unlock_buffer +EXPORT_SYMBOL vmlinux 0xcce2c677 dump_page +EXPORT_SYMBOL vmlinux 0xccfb21ef genphy_setup_forced +EXPORT_SYMBOL vmlinux 0xccfb9e07 dst_default_metrics +EXPORT_SYMBOL vmlinux 0xccfd2ebc scsi_dev_info_list_del_keyed +EXPORT_SYMBOL vmlinux 0xcd00abbc add_wait_queue_exclusive +EXPORT_SYMBOL vmlinux 0xcd083b10 unregister_sound_dsp +EXPORT_SYMBOL vmlinux 0xcd094535 __pci_register_driver +EXPORT_SYMBOL vmlinux 0xcd23317d get_disk_and_module +EXPORT_SYMBOL vmlinux 0xcd279169 nla_find +EXPORT_SYMBOL vmlinux 0xcd2e9b7f inode_init_owner +EXPORT_SYMBOL vmlinux 0xcd30b95a tmio_core_mmc_clk_div +EXPORT_SYMBOL vmlinux 0xcd32e4e6 skb_try_coalesce +EXPORT_SYMBOL vmlinux 0xcd3a1a56 __blk_mq_end_request +EXPORT_SYMBOL vmlinux 0xcd3ec51d scsi_print_sense_hdr +EXPORT_SYMBOL vmlinux 0xcd3ed918 sock_no_bind +EXPORT_SYMBOL vmlinux 0xcd453820 jbd2_journal_lock_updates +EXPORT_SYMBOL vmlinux 0xcd63c845 __aeabi_lasr +EXPORT_SYMBOL vmlinux 0xcd751613 simple_dir_inode_operations +EXPORT_SYMBOL vmlinux 0xcd8884bb rproc_boot +EXPORT_SYMBOL vmlinux 0xcd8aa657 xsk_set_tx_need_wakeup +EXPORT_SYMBOL vmlinux 0xcd8ca770 da903x_query_status +EXPORT_SYMBOL vmlinux 0xcdae3a6d icmpv6_ndo_send +EXPORT_SYMBOL vmlinux 0xcdb97f75 get_super_exclusive_thawed +EXPORT_SYMBOL vmlinux 0xcdc39c9e security_ismaclabel +EXPORT_SYMBOL vmlinux 0xcdc5506b __ip_mc_inc_group +EXPORT_SYMBOL vmlinux 0xcdd26abb elv_rb_del +EXPORT_SYMBOL vmlinux 0xcdd795fc __sg_free_table +EXPORT_SYMBOL vmlinux 0xcde77bcc free_opal_dev +EXPORT_SYMBOL vmlinux 0xcdfa135d ZSTD_CDictWorkspaceBound +EXPORT_SYMBOL vmlinux 0xce14f8d8 ip_cmsg_recv_offset +EXPORT_SYMBOL vmlinux 0xce2840e7 irq_set_irq_wake +EXPORT_SYMBOL vmlinux 0xce2d061a serio_unregister_driver +EXPORT_SYMBOL vmlinux 0xce3ca308 copy_from_user_toio +EXPORT_SYMBOL vmlinux 0xce4cdb8e fb_find_best_mode +EXPORT_SYMBOL vmlinux 0xce5ac24f zlib_inflate_workspacesize +EXPORT_SYMBOL vmlinux 0xce731b34 ucc_slow_get_qe_cr_subblock +EXPORT_SYMBOL vmlinux 0xce7bfe70 vm_brk +EXPORT_SYMBOL vmlinux 0xce9a0703 genphy_resume +EXPORT_SYMBOL vmlinux 0xcea486ec clkdev_alloc +EXPORT_SYMBOL vmlinux 0xceab0311 strchrnul +EXPORT_SYMBOL vmlinux 0xceb2fbdf snd_pcm_release_substream +EXPORT_SYMBOL vmlinux 0xceb5a101 netlink_kernel_release +EXPORT_SYMBOL vmlinux 0xcebd9b98 param_ops_ullong +EXPORT_SYMBOL vmlinux 0xced2ec0c dev_getfirstbyhwtype +EXPORT_SYMBOL vmlinux 0xceea96b8 poll_freewait +EXPORT_SYMBOL vmlinux 0xceec8abd __mb_cache_entry_free +EXPORT_SYMBOL vmlinux 0xceed939d abx500_register_ops +EXPORT_SYMBOL vmlinux 0xceee9cb3 of_parse_phandle_with_fixed_args +EXPORT_SYMBOL vmlinux 0xcef0dee7 override_creds +EXPORT_SYMBOL vmlinux 0xcefcd99a serial8250_unregister_port +EXPORT_SYMBOL vmlinux 0xcf000c7e hdmi_infoframe_check +EXPORT_SYMBOL vmlinux 0xcf01f610 panic_notifier_list +EXPORT_SYMBOL vmlinux 0xcf0402a8 i2c_transfer +EXPORT_SYMBOL vmlinux 0xcf0667ec tcp_sock_set_keepidle +EXPORT_SYMBOL vmlinux 0xcf123fe3 xsk_umem_complete_tx +EXPORT_SYMBOL vmlinux 0xcf1c6ca3 cmdline_parts_find +EXPORT_SYMBOL vmlinux 0xcf259a0d ptp_cancel_worker_sync +EXPORT_SYMBOL vmlinux 0xcf26aa59 mmc_is_req_done +EXPORT_SYMBOL vmlinux 0xcf32c49c blkdev_get_by_dev +EXPORT_SYMBOL vmlinux 0xcf3fac84 cpumask_next +EXPORT_SYMBOL vmlinux 0xcf431b5f register_mii_tstamp_controller +EXPORT_SYMBOL vmlinux 0xcf4b32b5 neigh_sysctl_unregister +EXPORT_SYMBOL vmlinux 0xcf518694 snd_card_disconnect +EXPORT_SYMBOL vmlinux 0xcf52f9a8 pneigh_lookup +EXPORT_SYMBOL vmlinux 0xcf65eb50 pci_assign_resource +EXPORT_SYMBOL vmlinux 0xcf67c190 pcim_iomap_regions_request_all +EXPORT_SYMBOL vmlinux 0xcf6921f1 tcf_idr_check_alloc +EXPORT_SYMBOL vmlinux 0xcf7912cc file_open_root +EXPORT_SYMBOL vmlinux 0xcf7e1d1d hdmi_vendor_infoframe_pack_only +EXPORT_SYMBOL vmlinux 0xcf86cdac queue_delayed_work_on +EXPORT_SYMBOL vmlinux 0xcf8d119d neigh_seq_start +EXPORT_SYMBOL vmlinux 0xcf9b558d touchscreen_set_mt_pos +EXPORT_SYMBOL vmlinux 0xcfa93258 take_dentry_name_snapshot +EXPORT_SYMBOL vmlinux 0xcfb9e0e3 ioremap_page +EXPORT_SYMBOL vmlinux 0xcfbed627 get_acl +EXPORT_SYMBOL vmlinux 0xcfc342ba pci_bus_read_config_dword +EXPORT_SYMBOL vmlinux 0xcfc9fd56 dst_release_immediate +EXPORT_SYMBOL vmlinux 0xcffe4ef1 xfrm_policy_walk +EXPORT_SYMBOL vmlinux 0xd004c6ff jbd2_journal_init_jbd_inode +EXPORT_SYMBOL vmlinux 0xd019bd71 phy_driver_register +EXPORT_SYMBOL vmlinux 0xd022359f snd_timer_interrupt +EXPORT_SYMBOL vmlinux 0xd024b829 __mdiobus_register +EXPORT_SYMBOL vmlinux 0xd02f2dfb __inc_zone_page_state +EXPORT_SYMBOL vmlinux 0xd03bb545 snd_card_file_remove +EXPORT_SYMBOL vmlinux 0xd03eaa20 phy_read_mmd +EXPORT_SYMBOL vmlinux 0xd042475c qdisc_get_rtab +EXPORT_SYMBOL vmlinux 0xd04a95e7 of_phy_deregister_fixed_link +EXPORT_SYMBOL vmlinux 0xd04c1a64 sysctl_devconf_inherit_init_net +EXPORT_SYMBOL vmlinux 0xd04c7414 __tracepoint_kfree +EXPORT_SYMBOL vmlinux 0xd04febe9 arm_elf_read_implies_exec +EXPORT_SYMBOL vmlinux 0xd051b797 blk_queue_virt_boundary +EXPORT_SYMBOL vmlinux 0xd0581d62 cpu_tlb +EXPORT_SYMBOL vmlinux 0xd0654aba woken_wake_function +EXPORT_SYMBOL vmlinux 0xd0667f8c vc_resize +EXPORT_SYMBOL vmlinux 0xd06a7d32 snd_card_register +EXPORT_SYMBOL vmlinux 0xd07c265f tcp_connect +EXPORT_SYMBOL vmlinux 0xd0953267 phy_register_fixup_for_id +EXPORT_SYMBOL vmlinux 0xd0a91bab skip_spaces +EXPORT_SYMBOL vmlinux 0xd0ad905e blk_queue_io_opt +EXPORT_SYMBOL vmlinux 0xd0b26102 path_get +EXPORT_SYMBOL vmlinux 0xd0b959f8 pci_fixup_cardbus +EXPORT_SYMBOL vmlinux 0xd0cf563e page_zero_new_buffers +EXPORT_SYMBOL vmlinux 0xd0d0f1ce __dst_destroy_metrics_generic +EXPORT_SYMBOL vmlinux 0xd0d9259c find_vma +EXPORT_SYMBOL vmlinux 0xd0e9fb09 release_firmware +EXPORT_SYMBOL vmlinux 0xd0ff78db fs_param_is_u64 +EXPORT_SYMBOL vmlinux 0xd10475f5 page_pool_put_page +EXPORT_SYMBOL vmlinux 0xd1228d7b tty_port_free_xmit_buf +EXPORT_SYMBOL vmlinux 0xd12750aa backlight_force_update +EXPORT_SYMBOL vmlinux 0xd12d4032 pcim_iomap_regions +EXPORT_SYMBOL vmlinux 0xd1363cc1 ucs2_strsize +EXPORT_SYMBOL vmlinux 0xd1365d45 iw_handler_get_thrspy +EXPORT_SYMBOL vmlinux 0xd14aa50d cdev_device_del +EXPORT_SYMBOL vmlinux 0xd166a967 tcp_get_md5sig_pool +EXPORT_SYMBOL vmlinux 0xd178b343 pci_bus_claim_resources +EXPORT_SYMBOL vmlinux 0xd17d9316 vme_new_dma_list +EXPORT_SYMBOL vmlinux 0xd1816f32 frontswap_writethrough +EXPORT_SYMBOL vmlinux 0xd1985fb7 inode_needs_sync +EXPORT_SYMBOL vmlinux 0xd1a48ef5 xfrm4_protocol_deregister +EXPORT_SYMBOL vmlinux 0xd1abe064 sg_copy_to_buffer +EXPORT_SYMBOL vmlinux 0xd1b1f23b dquot_quota_on_mount +EXPORT_SYMBOL vmlinux 0xd1b27ce1 amba_device_unregister +EXPORT_SYMBOL vmlinux 0xd1bf4ac8 padata_free +EXPORT_SYMBOL vmlinux 0xd1cc4c3b mmc_set_data_timeout +EXPORT_SYMBOL vmlinux 0xd1d137eb fscrypt_zeroout_range +EXPORT_SYMBOL vmlinux 0xd1d87e92 scsi_mlreturn_string +EXPORT_SYMBOL vmlinux 0xd2051916 qcom_scm_cpu_power_down +EXPORT_SYMBOL vmlinux 0xd2167335 setup_new_exec +EXPORT_SYMBOL vmlinux 0xd21ed35b rproc_mem_entry_init +EXPORT_SYMBOL vmlinux 0xd222a7eb security_cred_getsecid +EXPORT_SYMBOL vmlinux 0xd2355cc9 simple_fill_super +EXPORT_SYMBOL vmlinux 0xd23873a6 ndo_dflt_fdb_dump +EXPORT_SYMBOL vmlinux 0xd2534f51 nvm_dev_dma_free +EXPORT_SYMBOL vmlinux 0xd25c93c5 par_io_of_config +EXPORT_SYMBOL vmlinux 0xd25d4f74 console_blank_hook +EXPORT_SYMBOL vmlinux 0xd269864a seq_puts +EXPORT_SYMBOL vmlinux 0xd272fd75 tcp_create_openreq_child +EXPORT_SYMBOL vmlinux 0xd27b25dd blk_check_plugged +EXPORT_SYMBOL vmlinux 0xd28d19cc ppp_channel_index +EXPORT_SYMBOL vmlinux 0xd29e2b27 cdev_del +EXPORT_SYMBOL vmlinux 0xd2ae15cf d_instantiate +EXPORT_SYMBOL vmlinux 0xd2b47ffb bio_add_pc_page +EXPORT_SYMBOL vmlinux 0xd2bdb87a genphy_read_status_fixed +EXPORT_SYMBOL vmlinux 0xd2da1048 register_netdevice_notifier +EXPORT_SYMBOL vmlinux 0xd2eb32b9 tcp_rx_skb_cache_key +EXPORT_SYMBOL vmlinux 0xd31ccb06 of_machine_is_compatible +EXPORT_SYMBOL vmlinux 0xd320645e jbd2_journal_dirty_metadata +EXPORT_SYMBOL vmlinux 0xd32d6c08 lockref_get +EXPORT_SYMBOL vmlinux 0xd3314cd1 phy_device_create +EXPORT_SYMBOL vmlinux 0xd3509e43 _copy_from_iter +EXPORT_SYMBOL vmlinux 0xd35a6d31 mempool_kmalloc +EXPORT_SYMBOL vmlinux 0xd35f75a1 match_string +EXPORT_SYMBOL vmlinux 0xd361cba4 gen_pool_dma_zalloc_align +EXPORT_SYMBOL vmlinux 0xd36dc10c get_random_u32 +EXPORT_SYMBOL vmlinux 0xd3865b67 of_device_alloc +EXPORT_SYMBOL vmlinux 0xd3947a28 twl6040_get_vibralr_status +EXPORT_SYMBOL vmlinux 0xd39fa6ab __kfifo_alloc +EXPORT_SYMBOL vmlinux 0xd3a8aa6a sync_mapping_buffers +EXPORT_SYMBOL vmlinux 0xd3c090b6 _snd_pcm_lib_alloc_vmalloc_buffer +EXPORT_SYMBOL vmlinux 0xd3d3f82e deactivate_super +EXPORT_SYMBOL vmlinux 0xd3e58b45 blk_cleanup_queue +EXPORT_SYMBOL vmlinux 0xd3eaf1ed devlink_dpipe_entry_clear +EXPORT_SYMBOL vmlinux 0xd406d266 fb_mode_is_equal +EXPORT_SYMBOL vmlinux 0xd4180bd9 mmc_card_is_blockaddr +EXPORT_SYMBOL vmlinux 0xd4399e48 empty_zero_page +EXPORT_SYMBOL vmlinux 0xd4485271 bdi_put +EXPORT_SYMBOL vmlinux 0xd46b54dd flush_delayed_work +EXPORT_SYMBOL vmlinux 0xd479f452 neigh_seq_stop +EXPORT_SYMBOL vmlinux 0xd47e4bc8 sock_bind_add +EXPORT_SYMBOL vmlinux 0xd4824618 tegra_ivc_notified +EXPORT_SYMBOL vmlinux 0xd4835ef8 dmi_check_system +EXPORT_SYMBOL vmlinux 0xd4849167 vme_irq_handler +EXPORT_SYMBOL vmlinux 0xd48fdeef dql_completed +EXPORT_SYMBOL vmlinux 0xd4aceca2 xfrm_state_lookup_byaddr +EXPORT_SYMBOL vmlinux 0xd4aedf23 flow_rule_match_enc_ports +EXPORT_SYMBOL vmlinux 0xd4bb4a82 inet6addr_validator_notifier_call_chain +EXPORT_SYMBOL vmlinux 0xd4c66dd2 register_quota_format +EXPORT_SYMBOL vmlinux 0xd4da0975 proc_mkdir_mode +EXPORT_SYMBOL vmlinux 0xd4e2f0e4 gen_pool_set_algo +EXPORT_SYMBOL vmlinux 0xd4e89843 bd_start_claiming +EXPORT_SYMBOL vmlinux 0xd4ea508f ip_mc_inc_group +EXPORT_SYMBOL vmlinux 0xd4febc7c netdev_rx_csum_fault +EXPORT_SYMBOL vmlinux 0xd5053b8f devm_extcon_unregister_notifier_all +EXPORT_SYMBOL vmlinux 0xd5087b6b scsi_change_queue_depth +EXPORT_SYMBOL vmlinux 0xd521fc3b of_get_next_child +EXPORT_SYMBOL vmlinux 0xd5249d13 mipi_dsi_dcs_set_pixel_format +EXPORT_SYMBOL vmlinux 0xd5263820 mb_cache_destroy +EXPORT_SYMBOL vmlinux 0xd53ed45b prepare_kernel_cred +EXPORT_SYMBOL vmlinux 0xd549fee3 iov_iter_init +EXPORT_SYMBOL vmlinux 0xd54bb34c get_tree_nodev +EXPORT_SYMBOL vmlinux 0xd558cdd9 follow_down +EXPORT_SYMBOL vmlinux 0xd559af1a check_disk_change +EXPORT_SYMBOL vmlinux 0xd598e04b d_prune_aliases +EXPORT_SYMBOL vmlinux 0xd5b3d0d5 xxh64_copy_state +EXPORT_SYMBOL vmlinux 0xd5d81e09 dev_mc_sync_multiple +EXPORT_SYMBOL vmlinux 0xd5d8cfa1 open_exec +EXPORT_SYMBOL vmlinux 0xd5db6a03 of_phy_find_device +EXPORT_SYMBOL vmlinux 0xd5e286b3 mini_qdisc_pair_block_init +EXPORT_SYMBOL vmlinux 0xd5e9f339 kobject_get +EXPORT_SYMBOL vmlinux 0xd5f52d4f netdev_rss_key_fill +EXPORT_SYMBOL vmlinux 0xd5f7f662 input_match_device_id +EXPORT_SYMBOL vmlinux 0xd60736ec gf128mul_free_64k +EXPORT_SYMBOL vmlinux 0xd6178b75 secpath_set +EXPORT_SYMBOL vmlinux 0xd6205c02 ZSTD_compress_usingCDict +EXPORT_SYMBOL vmlinux 0xd62344fc pci_bus_alloc_resource +EXPORT_SYMBOL vmlinux 0xd627480b strncat +EXPORT_SYMBOL vmlinux 0xd62c1924 snd_dma_alloc_pages_fallback +EXPORT_SYMBOL vmlinux 0xd63fafc2 div64_u64_rem +EXPORT_SYMBOL vmlinux 0xd6582ab0 xa_extract +EXPORT_SYMBOL vmlinux 0xd661e0d7 textsearch_find_continuous +EXPORT_SYMBOL vmlinux 0xd6794ac5 vlan_dev_real_dev +EXPORT_SYMBOL vmlinux 0xd688716b dm_kcopyd_client_create +EXPORT_SYMBOL vmlinux 0xd696f179 devfreq_remove_device +EXPORT_SYMBOL vmlinux 0xd69d8b5a blk_mq_delay_kick_requeue_list +EXPORT_SYMBOL vmlinux 0xd6a91f54 twl_i2c_read +EXPORT_SYMBOL vmlinux 0xd6b059ef xfrm_state_free +EXPORT_SYMBOL vmlinux 0xd6b9065c tcp_ld_RTO_revert +EXPORT_SYMBOL vmlinux 0xd6ba4f0e serial8250_register_8250_port +EXPORT_SYMBOL vmlinux 0xd6bc04ff cmd_db_read_aux_data +EXPORT_SYMBOL vmlinux 0xd6cfdff8 devm_get_clk_from_child +EXPORT_SYMBOL vmlinux 0xd6eaaea1 full_name_hash +EXPORT_SYMBOL vmlinux 0xd6ee688f vmalloc +EXPORT_SYMBOL vmlinux 0xd6fde043 is_module_sig_enforced +EXPORT_SYMBOL vmlinux 0xd703e459 d_hash_and_lookup +EXPORT_SYMBOL vmlinux 0xd70d35a1 gf128mul_4k_bbe +EXPORT_SYMBOL vmlinux 0xd70ef27a of_graph_get_remote_port_parent +EXPORT_SYMBOL vmlinux 0xd738ca1b phy_unregister_fixup_for_uid +EXPORT_SYMBOL vmlinux 0xd779183c d_lookup +EXPORT_SYMBOL vmlinux 0xd78bd373 phy_get_eee_err +EXPORT_SYMBOL vmlinux 0xd796f9af vfs_mknod +EXPORT_SYMBOL vmlinux 0xd797b9a5 vme_master_write +EXPORT_SYMBOL vmlinux 0xd7a0d78f ilookup5 +EXPORT_SYMBOL vmlinux 0xd7a8316a skb_checksum +EXPORT_SYMBOL vmlinux 0xd7b8a9bf blk_mq_run_hw_queue +EXPORT_SYMBOL vmlinux 0xd7c3aab4 unregister_mii_tstamp_controller +EXPORT_SYMBOL vmlinux 0xd7c542a8 __skb_checksum +EXPORT_SYMBOL vmlinux 0xd7c8f929 nf_hook_slow +EXPORT_SYMBOL vmlinux 0xd7ce1be3 __dynamic_ibdev_dbg +EXPORT_SYMBOL vmlinux 0xd7d280ad irq_poll_complete +EXPORT_SYMBOL vmlinux 0xd7e56a4e simple_strtoll +EXPORT_SYMBOL vmlinux 0xd80727dc __skb_flow_get_ports +EXPORT_SYMBOL vmlinux 0xd81bb6f6 find_inode_by_ino_rcu +EXPORT_SYMBOL vmlinux 0xd825c723 nand_bch_calculate_ecc +EXPORT_SYMBOL vmlinux 0xd8410611 mempool_alloc +EXPORT_SYMBOL vmlinux 0xd84f507b ndo_dflt_fdb_add +EXPORT_SYMBOL vmlinux 0xd8540803 clear_page_dirty_for_io +EXPORT_SYMBOL vmlinux 0xd8602b6a tun_is_xdp_frame +EXPORT_SYMBOL vmlinux 0xd860755b __tracepoint_spi_transfer_start +EXPORT_SYMBOL vmlinux 0xd875584a __genradix_ptr +EXPORT_SYMBOL vmlinux 0xd87c3ed9 security_inet_conn_request +EXPORT_SYMBOL vmlinux 0xd894a8d7 pcie_get_width_cap +EXPORT_SYMBOL vmlinux 0xd89da37f movable_zone +EXPORT_SYMBOL vmlinux 0xd89ee11f krait_set_l2_indirect_reg +EXPORT_SYMBOL vmlinux 0xd8a71c0b __tcf_idr_release +EXPORT_SYMBOL vmlinux 0xd8a994eb scsi_extd_sense_format +EXPORT_SYMBOL vmlinux 0xd8b31d46 tcf_exts_validate +EXPORT_SYMBOL vmlinux 0xd8c9f693 __sock_create +EXPORT_SYMBOL vmlinux 0xd8cd35f9 i2c_transfer_buffer_flags +EXPORT_SYMBOL vmlinux 0xd8de4149 dquot_resume +EXPORT_SYMBOL vmlinux 0xd902b93c put_ipc_ns +EXPORT_SYMBOL vmlinux 0xd90cae80 ip6_frag_next +EXPORT_SYMBOL vmlinux 0xd928f108 pci_ep_cfs_remove_epf_group +EXPORT_SYMBOL vmlinux 0xd9346321 ucc_tdm_init +EXPORT_SYMBOL vmlinux 0xd941438b of_phy_get_and_connect +EXPORT_SYMBOL vmlinux 0xd94a8723 blk_queue_max_segment_size +EXPORT_SYMBOL vmlinux 0xd955d2b7 omap_set_dma_dest_data_pack +EXPORT_SYMBOL vmlinux 0xd9662361 dm_unregister_target +EXPORT_SYMBOL vmlinux 0xd985dc99 mempool_free_pages +EXPORT_SYMBOL vmlinux 0xd9b0765d pm860x_bulk_read +EXPORT_SYMBOL vmlinux 0xd9b4553f remap_vmalloc_range_partial +EXPORT_SYMBOL vmlinux 0xd9b66372 mini_qdisc_pair_init +EXPORT_SYMBOL vmlinux 0xd9bc93e4 d_alloc_parallel +EXPORT_SYMBOL vmlinux 0xd9c5b9e7 skb_push +EXPORT_SYMBOL vmlinux 0xd9ce8f0c strnlen +EXPORT_SYMBOL vmlinux 0xd9d8fd16 register_restart_handler +EXPORT_SYMBOL vmlinux 0xd9d952d1 crypto_aes_sbox +EXPORT_SYMBOL vmlinux 0xd9df8640 scsi_device_resume +EXPORT_SYMBOL vmlinux 0xd9f99c05 build_skb +EXPORT_SYMBOL vmlinux 0xda0a2fc6 arp_tbl +EXPORT_SYMBOL vmlinux 0xda104eaa dump_emit +EXPORT_SYMBOL vmlinux 0xda2c85f8 unregister_nls +EXPORT_SYMBOL vmlinux 0xda318d31 key_task_permission +EXPORT_SYMBOL vmlinux 0xda3d10a8 security_tun_dev_open +EXPORT_SYMBOL vmlinux 0xda481957 sock_no_sendmsg_locked +EXPORT_SYMBOL vmlinux 0xda514b6c bdev_stack_limits +EXPORT_SYMBOL vmlinux 0xda5d544e __scm_send +EXPORT_SYMBOL vmlinux 0xda6fc0b3 __percpu_counter_compare +EXPORT_SYMBOL vmlinux 0xda72a7ec ZSTD_nextInputType +EXPORT_SYMBOL vmlinux 0xda7a0fe7 do_splice_direct +EXPORT_SYMBOL vmlinux 0xda872864 security_locked_down +EXPORT_SYMBOL vmlinux 0xda89ea3b ip_idents_reserve +EXPORT_SYMBOL vmlinux 0xda9a256b filemap_write_and_wait_range +EXPORT_SYMBOL vmlinux 0xdab8ba1e devfreq_add_device +EXPORT_SYMBOL vmlinux 0xdac14a3d inode_init_always +EXPORT_SYMBOL vmlinux 0xdac4913a bitmap_allocate_region +EXPORT_SYMBOL vmlinux 0xdac739f6 ZSTD_initCCtx +EXPORT_SYMBOL vmlinux 0xdad5a580 nvm_register_tgt_type +EXPORT_SYMBOL vmlinux 0xdad8dfb4 mmc_detect_card_removed +EXPORT_SYMBOL vmlinux 0xdad97f94 __raw_writesw +EXPORT_SYMBOL vmlinux 0xdae0c18d dcb_ieee_getapp_prio_dscp_mask_map +EXPORT_SYMBOL vmlinux 0xdaec8e39 bio_clone_fast +EXPORT_SYMBOL vmlinux 0xdaf842e3 make_kgid +EXPORT_SYMBOL vmlinux 0xdb15c855 nand_bch_init +EXPORT_SYMBOL vmlinux 0xdb360f66 dev_printk +EXPORT_SYMBOL vmlinux 0xdb3abfb8 tcf_register_action +EXPORT_SYMBOL vmlinux 0xdb68bbad rfkill_destroy +EXPORT_SYMBOL vmlinux 0xdb760f52 __kfifo_free +EXPORT_SYMBOL vmlinux 0xdb7aec83 mmc_add_host +EXPORT_SYMBOL vmlinux 0xdb81e2fc __wait_on_bit +EXPORT_SYMBOL vmlinux 0xdb9ca3c5 _raw_spin_lock +EXPORT_SYMBOL vmlinux 0xdbaa882e generic_write_end +EXPORT_SYMBOL vmlinux 0xdbcd694c tso_build_hdr +EXPORT_SYMBOL vmlinux 0xdbe9927a kernel_write +EXPORT_SYMBOL vmlinux 0xdbfdc825 ip4_datagram_connect +EXPORT_SYMBOL vmlinux 0xdc060eab ethtool_rx_flow_rule_create +EXPORT_SYMBOL vmlinux 0xdc14eda7 pci_pci_problems +EXPORT_SYMBOL vmlinux 0xdc3fcbc9 __sw_hweight8 +EXPORT_SYMBOL vmlinux 0xdc430db2 gen_pool_dma_alloc_align +EXPORT_SYMBOL vmlinux 0xdc49c198 reciprocal_value_adv +EXPORT_SYMBOL vmlinux 0xdc4ac95f memory_cgrp_subsys +EXPORT_SYMBOL vmlinux 0xdc512134 backlight_register_notifier +EXPORT_SYMBOL vmlinux 0xdc539628 neigh_destroy +EXPORT_SYMBOL vmlinux 0xdc5a86bb seq_printf +EXPORT_SYMBOL vmlinux 0xdc5c7961 gen_pool_best_fit +EXPORT_SYMBOL vmlinux 0xdc633378 twl6040_reg_write +EXPORT_SYMBOL vmlinux 0xdc77d170 _raw_spin_trylock_bh +EXPORT_SYMBOL vmlinux 0xdc81901a wait_for_completion_io +EXPORT_SYMBOL vmlinux 0xdcc3f9bd __ip_queue_xmit +EXPORT_SYMBOL vmlinux 0xdcd23cf5 blk_mq_init_sq_queue +EXPORT_SYMBOL vmlinux 0xdce5afd3 sock_kfree_s +EXPORT_SYMBOL vmlinux 0xdcf6d045 radix_tree_gang_lookup_tag_slot +EXPORT_SYMBOL vmlinux 0xdcfec389 snd_pcm_suspend_all +EXPORT_SYMBOL vmlinux 0xdd0a2ba2 strlcat +EXPORT_SYMBOL vmlinux 0xdd19523d snd_timer_notify +EXPORT_SYMBOL vmlinux 0xdd1befcc nf_log_register +EXPORT_SYMBOL vmlinux 0xdd226fa9 __raw_readsw +EXPORT_SYMBOL vmlinux 0xdd27fa87 memchr +EXPORT_SYMBOL vmlinux 0xdd2c169b mb_cache_create +EXPORT_SYMBOL vmlinux 0xdd36539b pcie_bandwidth_available +EXPORT_SYMBOL vmlinux 0xdd4e34f1 pin_user_pages_remote +EXPORT_SYMBOL vmlinux 0xdd4ffa9b mutex_trylock +EXPORT_SYMBOL vmlinux 0xdd76f075 find_inode_rcu +EXPORT_SYMBOL vmlinux 0xdd7ca54b scsi_get_host_dev +EXPORT_SYMBOL vmlinux 0xdd7e3192 qcom_scm_pas_auth_and_reset +EXPORT_SYMBOL vmlinux 0xdd81421f trace_print_symbols_seq_u64 +EXPORT_SYMBOL vmlinux 0xdd820029 set_groups +EXPORT_SYMBOL vmlinux 0xdd849d51 scsi_get_sense_info_fld +EXPORT_SYMBOL vmlinux 0xdd859ad8 sk_reset_timer +EXPORT_SYMBOL vmlinux 0xdd8ffec5 __dynamic_netdev_dbg +EXPORT_SYMBOL vmlinux 0xdda3c6b9 genphy_c37_read_status +EXPORT_SYMBOL vmlinux 0xddbc655c submit_bio_wait +EXPORT_SYMBOL vmlinux 0xddc6680c jbd2_journal_stop +EXPORT_SYMBOL vmlinux 0xddc851c0 gnet_stats_start_copy +EXPORT_SYMBOL vmlinux 0xddca9a5d of_phy_register_fixed_link +EXPORT_SYMBOL vmlinux 0xddd0d1a6 genphy_restart_aneg +EXPORT_SYMBOL vmlinux 0xddd17ac4 pci_release_region +EXPORT_SYMBOL vmlinux 0xdde4b2b6 of_find_backlight_by_node +EXPORT_SYMBOL vmlinux 0xdde4e19d pci_write_config_byte +EXPORT_SYMBOL vmlinux 0xddf041c4 pci_dev_get +EXPORT_SYMBOL vmlinux 0xde058b76 ab3100_event_unregister +EXPORT_SYMBOL vmlinux 0xde07efe2 bio_copy_data_iter +EXPORT_SYMBOL vmlinux 0xde25dbd0 iov_iter_discard +EXPORT_SYMBOL vmlinux 0xde4468e4 mmc_cqe_recovery +EXPORT_SYMBOL vmlinux 0xde4d4ace dim_calc_stats +EXPORT_SYMBOL vmlinux 0xde5543c3 fbcon_update_vcs +EXPORT_SYMBOL vmlinux 0xde59092a lockref_get_or_lock +EXPORT_SYMBOL vmlinux 0xde5ae857 vme_slave_get +EXPORT_SYMBOL vmlinux 0xde68b8d0 phy_set_sym_pause +EXPORT_SYMBOL vmlinux 0xde6c3f6a sock_alloc +EXPORT_SYMBOL vmlinux 0xde92cff0 iov_iter_get_pages +EXPORT_SYMBOL vmlinux 0xdea2089e dev_pm_opp_register_notifier +EXPORT_SYMBOL vmlinux 0xdea67088 dev_get_phys_port_id +EXPORT_SYMBOL vmlinux 0xdec030e5 arm_clear_user +EXPORT_SYMBOL vmlinux 0xded39a6b gen_kill_estimator +EXPORT_SYMBOL vmlinux 0xdeecd192 dns_query +EXPORT_SYMBOL vmlinux 0xdef2b30c scsi_rescan_device +EXPORT_SYMBOL vmlinux 0xdef7c893 fb_match_mode +EXPORT_SYMBOL vmlinux 0xdefb0652 add_random_ready_callback +EXPORT_SYMBOL vmlinux 0xdf032db6 pci_disable_msix +EXPORT_SYMBOL vmlinux 0xdf1498fe xp_raw_get_dma +EXPORT_SYMBOL vmlinux 0xdf1f965e eth_header_parse +EXPORT_SYMBOL vmlinux 0xdf2c2742 rb_last +EXPORT_SYMBOL vmlinux 0xdf3a693d crc_t10dif_update +EXPORT_SYMBOL vmlinux 0xdf45c216 nand_get_set_features_notsupp +EXPORT_SYMBOL vmlinux 0xdf46328f xp_raw_get_data +EXPORT_SYMBOL vmlinux 0xdf52def1 ZSTD_DStreamInSize +EXPORT_SYMBOL vmlinux 0xdf54a8f7 netlink_unregister_notifier +EXPORT_SYMBOL vmlinux 0xdf57c861 tcp_peek_len +EXPORT_SYMBOL vmlinux 0xdf5c2f92 done_path_create +EXPORT_SYMBOL vmlinux 0xdf70b608 devm_nvmem_unregister +EXPORT_SYMBOL vmlinux 0xdf84d873 __cleancache_get_page +EXPORT_SYMBOL vmlinux 0xdf929370 fs_overflowgid +EXPORT_SYMBOL vmlinux 0xdf93b9d8 timespec64_to_jiffies +EXPORT_SYMBOL vmlinux 0xdfcc4509 frontswap_register_ops +EXPORT_SYMBOL vmlinux 0xdfd559e1 pm_vt_switch_required +EXPORT_SYMBOL vmlinux 0xdfd91ce9 omap_type +EXPORT_SYMBOL vmlinux 0xdfdfa9e7 utf8nfdi +EXPORT_SYMBOL vmlinux 0xdfe6d794 __qdisc_calculate_pkt_len +EXPORT_SYMBOL vmlinux 0xdff905e5 vme_slave_free +EXPORT_SYMBOL vmlinux 0xdffb744b frame_vector_to_pfns +EXPORT_SYMBOL vmlinux 0xdffc80fc vesa_modes +EXPORT_SYMBOL vmlinux 0xe00ee456 mipi_dsi_attach +EXPORT_SYMBOL vmlinux 0xe0103b6d kiocb_set_cancel_fn +EXPORT_SYMBOL vmlinux 0xe028a6ca atomic_dec_and_mutex_lock +EXPORT_SYMBOL vmlinux 0xe02a3c02 phy_do_ioctl +EXPORT_SYMBOL vmlinux 0xe041a95a md_write_end +EXPORT_SYMBOL vmlinux 0xe04cd956 dquot_reclaim_space_nodirty +EXPORT_SYMBOL vmlinux 0xe0648b63 netpoll_parse_options +EXPORT_SYMBOL vmlinux 0xe0656c76 get_ipc_ns_exported +EXPORT_SYMBOL vmlinux 0xe06699b2 sg_next +EXPORT_SYMBOL vmlinux 0xe06a01b0 of_find_property +EXPORT_SYMBOL vmlinux 0xe0707b29 mmc_free_host +EXPORT_SYMBOL vmlinux 0xe073f2e3 __bforget +EXPORT_SYMBOL vmlinux 0xe0875eb1 kstrtobool +EXPORT_SYMBOL vmlinux 0xe0a1e822 finish_swait +EXPORT_SYMBOL vmlinux 0xe0a6b585 request_resource +EXPORT_SYMBOL vmlinux 0xe0b13336 argv_free +EXPORT_SYMBOL vmlinux 0xe0b2c56b ipv6_mc_check_icmpv6 +EXPORT_SYMBOL vmlinux 0xe0bef318 icst_hz_to_vco +EXPORT_SYMBOL vmlinux 0xe113bbbc csum_partial +EXPORT_SYMBOL vmlinux 0xe1141300 path_put +EXPORT_SYMBOL vmlinux 0xe123f3d9 dma_fence_release +EXPORT_SYMBOL vmlinux 0xe12bda79 vme_dma_free_attribute +EXPORT_SYMBOL vmlinux 0xe135f63b dquot_claim_space_nodirty +EXPORT_SYMBOL vmlinux 0xe13cd8a7 dmi_name_in_vendors +EXPORT_SYMBOL vmlinux 0xe1500721 mount_bdev +EXPORT_SYMBOL vmlinux 0xe153f436 __cpu_present_mask +EXPORT_SYMBOL vmlinux 0xe1973cdc __hsiphash_aligned +EXPORT_SYMBOL vmlinux 0xe1a3e7fd key_validate +EXPORT_SYMBOL vmlinux 0xe1a4f16a secure_ipv6_port_ephemeral +EXPORT_SYMBOL vmlinux 0xe1a58023 d_exact_alias +EXPORT_SYMBOL vmlinux 0xe1a9b2ff dma_fence_match_context +EXPORT_SYMBOL vmlinux 0xe1abfb3d xattr_full_name +EXPORT_SYMBOL vmlinux 0xe1c7af7b load_nls_default +EXPORT_SYMBOL vmlinux 0xe1dcf64a audit_log_format +EXPORT_SYMBOL vmlinux 0xe1e7e40c rtnl_nla_parse_ifla +EXPORT_SYMBOL vmlinux 0xe1e7e8d0 sock_no_linger +EXPORT_SYMBOL vmlinux 0xe209d2d1 file_path +EXPORT_SYMBOL vmlinux 0xe219e559 blk_mq_init_queue +EXPORT_SYMBOL vmlinux 0xe21bfc98 blk_mq_free_tag_set +EXPORT_SYMBOL vmlinux 0xe21d6cc7 vmalloc_to_page +EXPORT_SYMBOL vmlinux 0xe2274a1c __percpu_counter_sum +EXPORT_SYMBOL vmlinux 0xe23743d5 stream_open +EXPORT_SYMBOL vmlinux 0xe251bef7 setattr_prepare +EXPORT_SYMBOL vmlinux 0xe266f098 xa_get_mark +EXPORT_SYMBOL vmlinux 0xe273d75d alloc_cpu_rmap +EXPORT_SYMBOL vmlinux 0xe274b546 tcp_v4_mtu_reduced +EXPORT_SYMBOL vmlinux 0xe2815b8a jbd2_log_start_commit +EXPORT_SYMBOL vmlinux 0xe28193a4 blk_mq_tagset_busy_iter +EXPORT_SYMBOL vmlinux 0xe28ccf46 scsi_alloc_sgtables +EXPORT_SYMBOL vmlinux 0xe28e4207 __tracepoint_dma_fence_emit +EXPORT_SYMBOL vmlinux 0xe2a0b098 consume_skb +EXPORT_SYMBOL vmlinux 0xe2a3c085 udp_seq_start +EXPORT_SYMBOL vmlinux 0xe2c93353 inet_gro_complete +EXPORT_SYMBOL vmlinux 0xe2d467c4 gic_pmr_sync +EXPORT_SYMBOL vmlinux 0xe2d47398 crc_ccitt_false +EXPORT_SYMBOL vmlinux 0xe2d5255a strcmp +EXPORT_SYMBOL vmlinux 0xe2dd419f jbd2_journal_flush +EXPORT_SYMBOL vmlinux 0xe2e8065e memdup_user +EXPORT_SYMBOL vmlinux 0xe2f7fb1a from_kprojid_munged +EXPORT_SYMBOL vmlinux 0xe2ffeef3 scsi_req_init +EXPORT_SYMBOL vmlinux 0xe310bbb3 scsi_bios_ptable +EXPORT_SYMBOL vmlinux 0xe32ab4d8 xxh64_digest +EXPORT_SYMBOL vmlinux 0xe33bd852 skb_copy_and_hash_datagram_iter +EXPORT_SYMBOL vmlinux 0xe34418c6 gnet_stats_start_copy_compat +EXPORT_SYMBOL vmlinux 0xe346f67a __mutex_init +EXPORT_SYMBOL vmlinux 0xe3482046 radix_tree_iter_delete +EXPORT_SYMBOL vmlinux 0xe355159a clear_wb_congested +EXPORT_SYMBOL vmlinux 0xe3879ff2 unlock_two_nondirectories +EXPORT_SYMBOL vmlinux 0xe3958e2b genl_register_family +EXPORT_SYMBOL vmlinux 0xe39732da init_net +EXPORT_SYMBOL vmlinux 0xe39e4b5e inet6_bind +EXPORT_SYMBOL vmlinux 0xe3a03739 phy_start_cable_test +EXPORT_SYMBOL vmlinux 0xe3a79545 gnet_stats_copy_queue +EXPORT_SYMBOL vmlinux 0xe3a90dfa radix_tree_tag_set +EXPORT_SYMBOL vmlinux 0xe3b16232 bio_list_copy_data +EXPORT_SYMBOL vmlinux 0xe3b1bf52 mipi_dsi_device_register_full +EXPORT_SYMBOL vmlinux 0xe3b912cf skb_queue_tail +EXPORT_SYMBOL vmlinux 0xe3d0c057 inet_frags_fini +EXPORT_SYMBOL vmlinux 0xe3d237a5 pin_user_pages_locked +EXPORT_SYMBOL vmlinux 0xe3e3efc2 alloc_skb_with_frags +EXPORT_SYMBOL vmlinux 0xe3e76f92 xfrm_state_delete +EXPORT_SYMBOL vmlinux 0xe3ec2f2b alloc_chrdev_region +EXPORT_SYMBOL vmlinux 0xe3f50b57 bioset_exit +EXPORT_SYMBOL vmlinux 0xe3ff2c41 get_random_u64 +EXPORT_SYMBOL vmlinux 0xe40666d4 iterate_dir +EXPORT_SYMBOL vmlinux 0xe419c582 phy_modify_paged +EXPORT_SYMBOL vmlinux 0xe419f7b0 abx500_remove_ops +EXPORT_SYMBOL vmlinux 0xe425163c bdev_read_only +EXPORT_SYMBOL vmlinux 0xe428464e dma_fence_wait_timeout +EXPORT_SYMBOL vmlinux 0xe4329092 __ctzdi2 +EXPORT_SYMBOL vmlinux 0xe43a0f2b dma_mmap_attrs +EXPORT_SYMBOL vmlinux 0xe441e95a refcount_dec_not_one +EXPORT_SYMBOL vmlinux 0xe443624f dmaenginem_async_device_register +EXPORT_SYMBOL vmlinux 0xe447c50d phy_connect_direct +EXPORT_SYMBOL vmlinux 0xe44bf4c3 phy_connect +EXPORT_SYMBOL vmlinux 0xe4702b3a __sg_alloc_table +EXPORT_SYMBOL vmlinux 0xe470a56d ps2_sendbyte +EXPORT_SYMBOL vmlinux 0xe477fc9b memremap +EXPORT_SYMBOL vmlinux 0xe47a0fdd snd_timer_global_register +EXPORT_SYMBOL vmlinux 0xe47a4c99 devm_of_iomap +EXPORT_SYMBOL vmlinux 0xe47e1b6e framebuffer_alloc +EXPORT_SYMBOL vmlinux 0xe49b71bf make_bad_inode +EXPORT_SYMBOL vmlinux 0xe4a4c1da flow_rule_match_control +EXPORT_SYMBOL vmlinux 0xe4c5a1fc xp_free +EXPORT_SYMBOL vmlinux 0xe4c80097 cacheid +EXPORT_SYMBOL vmlinux 0xe4dc8e92 pci_set_vpd_size +EXPORT_SYMBOL vmlinux 0xe4eb2573 simple_symlink_inode_operations +EXPORT_SYMBOL vmlinux 0xe4effcd5 sg_init_one +EXPORT_SYMBOL vmlinux 0xe4f99a49 config_item_get +EXPORT_SYMBOL vmlinux 0xe51a2c7b tcf_action_update_stats +EXPORT_SYMBOL vmlinux 0xe51c882d jbd2_log_wait_commit +EXPORT_SYMBOL vmlinux 0xe523ad75 synchronize_irq +EXPORT_SYMBOL vmlinux 0xe5260906 __netdev_alloc_skb +EXPORT_SYMBOL vmlinux 0xe532e542 vfs_getattr_nosec +EXPORT_SYMBOL vmlinux 0xe5428b09 vc_cons +EXPORT_SYMBOL vmlinux 0xe545678e ata_std_end_eh +EXPORT_SYMBOL vmlinux 0xe56a9336 snd_pcm_format_width +EXPORT_SYMBOL vmlinux 0xe573511d xp_can_alloc +EXPORT_SYMBOL vmlinux 0xe57feefb qcom_scm_ocmem_unlock +EXPORT_SYMBOL vmlinux 0xe5807e62 gen_pool_first_fit_align +EXPORT_SYMBOL vmlinux 0xe58090ca security_ib_endport_manage_subnet +EXPORT_SYMBOL vmlinux 0xe5867808 dlci_ioctl_set +EXPORT_SYMBOL vmlinux 0xe58eca2f generic_pipe_buf_get +EXPORT_SYMBOL vmlinux 0xe590dea3 sk_busy_loop_end +EXPORT_SYMBOL vmlinux 0xe59d6936 t10_pi_type1_crc +EXPORT_SYMBOL vmlinux 0xe59f0295 simple_release_fs +EXPORT_SYMBOL vmlinux 0xe5a11a7f __skb_vlan_pop +EXPORT_SYMBOL vmlinux 0xe5ab17d2 pcim_set_mwi +EXPORT_SYMBOL vmlinux 0xe5bc9a53 slhc_free +EXPORT_SYMBOL vmlinux 0xe5c4a8f0 fs_context_for_mount +EXPORT_SYMBOL vmlinux 0xe5c78a99 do_blank_screen +EXPORT_SYMBOL vmlinux 0xe5d24339 jbd2_journal_check_used_features +EXPORT_SYMBOL vmlinux 0xe5d4f4c7 pci_unregister_driver +EXPORT_SYMBOL vmlinux 0xe5da6cb9 inet_proto_csum_replace16 +EXPORT_SYMBOL vmlinux 0xe5e9c6a3 tcp_sock_set_keepintvl +EXPORT_SYMBOL vmlinux 0xe613a798 inet_addr_is_any +EXPORT_SYMBOL vmlinux 0xe62e32c6 xfrm_trans_queue +EXPORT_SYMBOL vmlinux 0xe641a821 ilookup +EXPORT_SYMBOL vmlinux 0xe64f030e snd_pcm_set_ops +EXPORT_SYMBOL vmlinux 0xe65048e4 sb_min_blocksize +EXPORT_SYMBOL vmlinux 0xe650cedd iov_iter_get_pages_alloc +EXPORT_SYMBOL vmlinux 0xe6550505 dev_set_promiscuity +EXPORT_SYMBOL vmlinux 0xe655df08 skb_udp_tunnel_segment +EXPORT_SYMBOL vmlinux 0xe6563f6d pcie_capability_write_dword +EXPORT_SYMBOL vmlinux 0xe66f59f1 delete_from_page_cache +EXPORT_SYMBOL vmlinux 0xe67025df snd_card_file_add +EXPORT_SYMBOL vmlinux 0xe676c867 blk_rq_map_user +EXPORT_SYMBOL vmlinux 0xe68fe87f devm_request_any_context_irq +EXPORT_SYMBOL vmlinux 0xe693a6ce vme_get_size +EXPORT_SYMBOL vmlinux 0xe6a78b3f netdev_state_change +EXPORT_SYMBOL vmlinux 0xe6b51f52 of_find_backlight +EXPORT_SYMBOL vmlinux 0xe6ee8773 input_mt_report_finger_count +EXPORT_SYMBOL vmlinux 0xe6f9c6a1 md_unregister_thread +EXPORT_SYMBOL vmlinux 0xe707d823 __aeabi_uidiv +EXPORT_SYMBOL vmlinux 0xe7086e47 elv_rb_find +EXPORT_SYMBOL vmlinux 0xe726dbf5 dev_loopback_xmit +EXPORT_SYMBOL vmlinux 0xe7324b9a utf8nfdicf +EXPORT_SYMBOL vmlinux 0xe732ed82 input_unregister_handler +EXPORT_SYMBOL vmlinux 0xe7465bb8 free_netdev +EXPORT_SYMBOL vmlinux 0xe7490934 __phy_read_mmd +EXPORT_SYMBOL vmlinux 0xe755296e snd_pcm_stop +EXPORT_SYMBOL vmlinux 0xe760694a inet_offloads +EXPORT_SYMBOL vmlinux 0xe76247a2 posix_test_lock +EXPORT_SYMBOL vmlinux 0xe777df61 of_get_property +EXPORT_SYMBOL vmlinux 0xe7a079f0 sock_set_sndtimeo +EXPORT_SYMBOL vmlinux 0xe7aad845 tcp_md5_do_add +EXPORT_SYMBOL vmlinux 0xe7ce903f key_put +EXPORT_SYMBOL vmlinux 0xe7d4daac seq_list_next +EXPORT_SYMBOL vmlinux 0xe7f13f4f of_platform_device_create +EXPORT_SYMBOL vmlinux 0xe7f2e3a2 register_sysctl_paths +EXPORT_SYMBOL vmlinux 0xe80b8cbb inet_get_local_port_range +EXPORT_SYMBOL vmlinux 0xe80c5561 migrate_page_copy +EXPORT_SYMBOL vmlinux 0xe80c902a inet_csk_prepare_forced_close +EXPORT_SYMBOL vmlinux 0xe842dc8c dma_fence_get_stub +EXPORT_SYMBOL vmlinux 0xe84dcc4c get_cached_acl +EXPORT_SYMBOL vmlinux 0xe856033a ww_mutex_lock_interruptible +EXPORT_SYMBOL vmlinux 0xe856ce3d dev_pick_tx_cpu_id +EXPORT_SYMBOL vmlinux 0xe8616e48 i2c_put_adapter +EXPORT_SYMBOL vmlinux 0xe89be8a4 inet_frag_queue_insert +EXPORT_SYMBOL vmlinux 0xe8ae3b4f balance_dirty_pages_ratelimited +EXPORT_SYMBOL vmlinux 0xe8af015a kern_unmount_array +EXPORT_SYMBOL vmlinux 0xe8b9a3d4 mx51_revision +EXPORT_SYMBOL vmlinux 0xe8c6db84 skb_find_text +EXPORT_SYMBOL vmlinux 0xe8cd0a2c crc32_le_shift +EXPORT_SYMBOL vmlinux 0xe8cfce09 tegra114_clock_deassert_dfll_dvco_reset +EXPORT_SYMBOL vmlinux 0xe8df1164 inet_release +EXPORT_SYMBOL vmlinux 0xe8ee2491 __devm_release_region +EXPORT_SYMBOL vmlinux 0xe8fdf49d ipv6_find_hdr +EXPORT_SYMBOL vmlinux 0xe914e41e strcpy +EXPORT_SYMBOL vmlinux 0xe9325f03 downgrade_write +EXPORT_SYMBOL vmlinux 0xe94159b3 tcp_get_cookie_sock +EXPORT_SYMBOL vmlinux 0xe9515b1d thermal_cdev_update +EXPORT_SYMBOL vmlinux 0xe953b21f get_next_ino +EXPORT_SYMBOL vmlinux 0xe95a4860 xfrm_state_lookup_byspi +EXPORT_SYMBOL vmlinux 0xe97afe88 bpf_prog_get_type_path +EXPORT_SYMBOL vmlinux 0xe97c4103 ioremap +EXPORT_SYMBOL vmlinux 0xe97d86ef nosteal_pipe_buf_ops +EXPORT_SYMBOL vmlinux 0xe97e84da vfs_unlink +EXPORT_SYMBOL vmlinux 0xe98d780c nand_bch_correct_data +EXPORT_SYMBOL vmlinux 0xe99592ca param_ops_long +EXPORT_SYMBOL vmlinux 0xe99b7111 LZ4_decompress_fast_continue +EXPORT_SYMBOL vmlinux 0xe9a742c4 iov_iter_copy_from_user_atomic +EXPORT_SYMBOL vmlinux 0xe9a759e0 blkdev_get +EXPORT_SYMBOL vmlinux 0xe9cbf734 radix_tree_gang_lookup +EXPORT_SYMBOL vmlinux 0xe9d2fd74 inode_sub_bytes +EXPORT_SYMBOL vmlinux 0xe9d54035 rproc_remove_subdev +EXPORT_SYMBOL vmlinux 0xe9e8faeb efi_tpm_final_log_size +EXPORT_SYMBOL vmlinux 0xe9f7149c zlib_deflate_workspacesize +EXPORT_SYMBOL vmlinux 0xea1f5b88 samsung_rev +EXPORT_SYMBOL vmlinux 0xea2cfecf skb_free_datagram +EXPORT_SYMBOL vmlinux 0xea2e7e31 __skb_pad +EXPORT_SYMBOL vmlinux 0xea3c8e4e scsilun_to_int +EXPORT_SYMBOL vmlinux 0xea43d10e iov_iter_kvec +EXPORT_SYMBOL vmlinux 0xea557f57 tty_driver_flush_buffer +EXPORT_SYMBOL vmlinux 0xea582904 netpoll_cleanup +EXPORT_SYMBOL vmlinux 0xea607efe ipv6_push_frag_opts +EXPORT_SYMBOL vmlinux 0xea633bb1 seq_putc +EXPORT_SYMBOL vmlinux 0xea6f9a36 zlib_deflate_dfltcc_enabled +EXPORT_SYMBOL vmlinux 0xea78e5ff skb_flow_dissect_ct +EXPORT_SYMBOL vmlinux 0xea7987f1 key_update +EXPORT_SYMBOL vmlinux 0xea7a3e53 cleancache_register_ops +EXPORT_SYMBOL vmlinux 0xea80dfe1 security_req_classify_flow +EXPORT_SYMBOL vmlinux 0xea892ecc skb_prepare_seq_read +EXPORT_SYMBOL vmlinux 0xea90b38c pm860x_set_bits +EXPORT_SYMBOL vmlinux 0xea9cf5f3 ptp_clock_unregister +EXPORT_SYMBOL vmlinux 0xeaaf5b5f __free_pages +EXPORT_SYMBOL vmlinux 0xeac05a69 ucc_slow_enable +EXPORT_SYMBOL vmlinux 0xeaccdb36 reuseport_attach_prog +EXPORT_SYMBOL vmlinux 0xead254c9 unregister_fib_notifier +EXPORT_SYMBOL vmlinux 0xeafc141f __posix_acl_chmod +EXPORT_SYMBOL vmlinux 0xeb03b389 __raw_readsl +EXPORT_SYMBOL vmlinux 0xeb144136 dev_mc_add_excl +EXPORT_SYMBOL vmlinux 0xeb28fccf unmap_mapping_range +EXPORT_SYMBOL vmlinux 0xeb37101c audit_log_end +EXPORT_SYMBOL vmlinux 0xeb3848ff kunmap_atomic_high +EXPORT_SYMBOL vmlinux 0xeb4c8c04 security_sk_clone +EXPORT_SYMBOL vmlinux 0xeb55a931 __kfifo_max_r +EXPORT_SYMBOL vmlinux 0xeb7339c8 component_match_add_typed +EXPORT_SYMBOL vmlinux 0xeb8d2d01 mipi_dsi_picture_parameter_set +EXPORT_SYMBOL vmlinux 0xeba17370 kernel_sock_ip_overhead +EXPORT_SYMBOL vmlinux 0xebab4787 dm_mq_kick_requeue_list +EXPORT_SYMBOL vmlinux 0xebc9af8f snd_pcm_lib_get_vmalloc_page +EXPORT_SYMBOL vmlinux 0xebe057f7 inode_get_bytes +EXPORT_SYMBOL vmlinux 0xebe1d797 ip6_fraglist_init +EXPORT_SYMBOL vmlinux 0xebee7bc1 blk_queue_flag_set +EXPORT_SYMBOL vmlinux 0xebf4fefa dget_parent +EXPORT_SYMBOL vmlinux 0xebfdcbdf system_serial_high +EXPORT_SYMBOL vmlinux 0xec2534d5 of_get_min_tck +EXPORT_SYMBOL vmlinux 0xec2d6a2c dev_activate +EXPORT_SYMBOL vmlinux 0xec31891e cros_ec_get_host_event +EXPORT_SYMBOL vmlinux 0xec37a2e8 lockref_get_not_dead +EXPORT_SYMBOL vmlinux 0xec43eb07 netif_rx_ni +EXPORT_SYMBOL vmlinux 0xec4d9e3a clk_get_sys +EXPORT_SYMBOL vmlinux 0xec51e5a0 page_pool_release_page +EXPORT_SYMBOL vmlinux 0xec663c29 snd_card_set_id +EXPORT_SYMBOL vmlinux 0xec746916 devm_backlight_device_register +EXPORT_SYMBOL vmlinux 0xec9549c1 put_fs_context +EXPORT_SYMBOL vmlinux 0xec9cfd16 netdev_bind_sb_channel_queue +EXPORT_SYMBOL vmlinux 0xeca34b7a nand_monolithic_write_page_raw +EXPORT_SYMBOL vmlinux 0xecb70ee4 snd_pcm_new_stream +EXPORT_SYMBOL vmlinux 0xecc25f11 simple_statfs +EXPORT_SYMBOL vmlinux 0xecc7b4f7 block_write_full_page +EXPORT_SYMBOL vmlinux 0xeccc0f36 vlan_uses_dev +EXPORT_SYMBOL vmlinux 0xecd04450 skb_dequeue +EXPORT_SYMBOL vmlinux 0xece784c2 rb_first +EXPORT_SYMBOL vmlinux 0xecf696fc redraw_screen +EXPORT_SYMBOL vmlinux 0xecf8a3b4 __raw_writesl +EXPORT_SYMBOL vmlinux 0xecf96d6b __d_lookup_done +EXPORT_SYMBOL vmlinux 0xed09efd5 t10_pi_type3_ip +EXPORT_SYMBOL vmlinux 0xed1ba276 phy_print_status +EXPORT_SYMBOL vmlinux 0xed2d605b flow_block_cb_decref +EXPORT_SYMBOL vmlinux 0xed2ee7cb reuseport_alloc +EXPORT_SYMBOL vmlinux 0xed5c5f0d d_set_d_op +EXPORT_SYMBOL vmlinux 0xed5e6164 skb_copy_header +EXPORT_SYMBOL vmlinux 0xed6cc013 netdev_change_features +EXPORT_SYMBOL vmlinux 0xed7dec05 scsi_unblock_requests +EXPORT_SYMBOL vmlinux 0xed87caef mipi_dsi_host_unregister +EXPORT_SYMBOL vmlinux 0xed9efa7d cont_write_begin +EXPORT_SYMBOL vmlinux 0xedbaee5e nla_strcmp +EXPORT_SYMBOL vmlinux 0xedc03953 iounmap +EXPORT_SYMBOL vmlinux 0xedd9106d __ashrdi3 +EXPORT_SYMBOL vmlinux 0xedeb59d9 __tracepoint_dma_fence_signaled +EXPORT_SYMBOL vmlinux 0xedeff728 dquot_scan_active +EXPORT_SYMBOL vmlinux 0xee02a44f gen_replace_estimator +EXPORT_SYMBOL vmlinux 0xee15c6b9 security_inode_notifysecctx +EXPORT_SYMBOL vmlinux 0xee195251 drop_nlink +EXPORT_SYMBOL vmlinux 0xee1a44c1 tty_register_driver +EXPORT_SYMBOL vmlinux 0xee1b77de generic_delete_inode +EXPORT_SYMBOL vmlinux 0xee203603 fscrypt_decrypt_block_inplace +EXPORT_SYMBOL vmlinux 0xee2d0fc7 _local_bh_enable +EXPORT_SYMBOL vmlinux 0xee394c62 inet6_offloads +EXPORT_SYMBOL vmlinux 0xee43fd9b ___ratelimit +EXPORT_SYMBOL vmlinux 0xee5115d0 abx500_get_chip_id +EXPORT_SYMBOL vmlinux 0xee58e970 fb_add_videomode +EXPORT_SYMBOL vmlinux 0xee676ec6 tcp_initialize_rcv_mss +EXPORT_SYMBOL vmlinux 0xee8d74d6 jiffies64_to_nsecs +EXPORT_SYMBOL vmlinux 0xee8df156 inet_listen +EXPORT_SYMBOL vmlinux 0xee91879b rb_first_postorder +EXPORT_SYMBOL vmlinux 0xeea80730 kernel_sendmsg +EXPORT_SYMBOL vmlinux 0xeeb02628 pci_scan_single_device +EXPORT_SYMBOL vmlinux 0xeeb31b40 sync_file_create +EXPORT_SYMBOL vmlinux 0xeebb4f44 kset_register +EXPORT_SYMBOL vmlinux 0xeebefaf8 eth_gro_receive +EXPORT_SYMBOL vmlinux 0xeecd1eb4 of_clk_get_by_name +EXPORT_SYMBOL vmlinux 0xeece5f17 __blkdev_issue_zeroout +EXPORT_SYMBOL vmlinux 0xeedc7624 jbd2_journal_try_to_free_buffers +EXPORT_SYMBOL vmlinux 0xeee634d9 pm860x_reg_read +EXPORT_SYMBOL vmlinux 0xeeeacdc3 xfrm_unregister_km +EXPORT_SYMBOL vmlinux 0xeef6537a register_netdevice_notifier_net +EXPORT_SYMBOL vmlinux 0xef3a0b8e skb_seq_read +EXPORT_SYMBOL vmlinux 0xef4cad92 trace_print_flags_seq +EXPORT_SYMBOL vmlinux 0xef57839c dump_skip +EXPORT_SYMBOL vmlinux 0xef5da3e9 sock_kzfree_s +EXPORT_SYMBOL vmlinux 0xef6d0022 unlock_rename +EXPORT_SYMBOL vmlinux 0xef77842f blk_mq_start_hw_queue +EXPORT_SYMBOL vmlinux 0xef8a5438 bio_integrity_clone +EXPORT_SYMBOL vmlinux 0xef8ac53d qcom_scm_restore_sec_cfg +EXPORT_SYMBOL vmlinux 0xefa04cca netdev_set_sb_channel +EXPORT_SYMBOL vmlinux 0xefaa431b netdev_lower_dev_get_private +EXPORT_SYMBOL vmlinux 0xefac0d74 page_pool_update_nid +EXPORT_SYMBOL vmlinux 0xefb7bccf _raw_write_lock_bh +EXPORT_SYMBOL vmlinux 0xefbaad3e ppp_register_net_channel +EXPORT_SYMBOL vmlinux 0xefbc6ed3 inode_add_bytes +EXPORT_SYMBOL vmlinux 0xefc3c7e1 flow_rule_match_ports +EXPORT_SYMBOL vmlinux 0xefd30512 __cpuhp_setup_state +EXPORT_SYMBOL vmlinux 0xefec312f omap_get_dma_active_status +EXPORT_SYMBOL vmlinux 0xf0009fee put_pages_list +EXPORT_SYMBOL vmlinux 0xf008a885 seg6_hmac_init +EXPORT_SYMBOL vmlinux 0xf008d72a inet6_getname +EXPORT_SYMBOL vmlinux 0xf0133510 xfrm_policy_register_afinfo +EXPORT_SYMBOL vmlinux 0xf01528a4 dim_turn +EXPORT_SYMBOL vmlinux 0xf01585cd dquot_quota_on +EXPORT_SYMBOL vmlinux 0xf02a6977 queue_rcu_work +EXPORT_SYMBOL vmlinux 0xf0308d2f snd_ctl_replace +EXPORT_SYMBOL vmlinux 0xf04dabfa filemap_fdatawrite +EXPORT_SYMBOL vmlinux 0xf04fb05c kobject_del +EXPORT_SYMBOL vmlinux 0xf0622177 find_get_pages_contig +EXPORT_SYMBOL vmlinux 0xf063ae9b security_path_mkdir +EXPORT_SYMBOL vmlinux 0xf06cee2c radix_tree_replace_slot +EXPORT_SYMBOL vmlinux 0xf075bc11 dquot_initialize_needed +EXPORT_SYMBOL vmlinux 0xf08c67de napi_alloc_frag +EXPORT_SYMBOL vmlinux 0xf09b5d9a get_zeroed_page +EXPORT_SYMBOL vmlinux 0xf0a343ed release_dentry_name_snapshot +EXPORT_SYMBOL vmlinux 0xf0a84e83 snd_pcm_hw_constraint_ranges +EXPORT_SYMBOL vmlinux 0xf0c79070 __xfrm_policy_check +EXPORT_SYMBOL vmlinux 0xf0d2d8fc simple_setattr +EXPORT_SYMBOL vmlinux 0xf0ed2ef4 __raw_writesb +EXPORT_SYMBOL vmlinux 0xf0ef52e8 down +EXPORT_SYMBOL vmlinux 0xf0f0979e dma_get_sgtable_attrs +EXPORT_SYMBOL vmlinux 0xf102033e slhc_remember +EXPORT_SYMBOL vmlinux 0xf102732a crc16 +EXPORT_SYMBOL vmlinux 0xf108715e dma_fence_signal_locked +EXPORT_SYMBOL vmlinux 0xf123ff75 netdev_notify_peers +EXPORT_SYMBOL vmlinux 0xf149d83a simple_get_link +EXPORT_SYMBOL vmlinux 0xf14a91f6 jbd2_complete_transaction +EXPORT_SYMBOL vmlinux 0xf14e9143 input_register_device +EXPORT_SYMBOL vmlinux 0xf175802d blk_queue_max_hw_sectors +EXPORT_SYMBOL vmlinux 0xf179b196 ip6mr_rule_default +EXPORT_SYMBOL vmlinux 0xf195c682 fb_invert_cmaps +EXPORT_SYMBOL vmlinux 0xf1969a8e __usecs_to_jiffies +EXPORT_SYMBOL vmlinux 0xf19a66a0 backlight_device_unregister +EXPORT_SYMBOL vmlinux 0xf1a6bc32 bfifo_qdisc_ops +EXPORT_SYMBOL vmlinux 0xf1ad9c4b tegra_ivc_align +EXPORT_SYMBOL vmlinux 0xf1b5dd39 pci_enable_atomic_ops_to_root +EXPORT_SYMBOL vmlinux 0xf1c92140 eth_header +EXPORT_SYMBOL vmlinux 0xf1ccd040 rps_may_expire_flow +EXPORT_SYMBOL vmlinux 0xf1d00628 __cpuhp_remove_state +EXPORT_SYMBOL vmlinux 0xf1db1704 nla_memcpy +EXPORT_SYMBOL vmlinux 0xf1e046cc panic +EXPORT_SYMBOL vmlinux 0xf1e98c74 avenrun +EXPORT_SYMBOL vmlinux 0xf1ea6f1c __bswapsi2 +EXPORT_SYMBOL vmlinux 0xf1eb70b3 pci_bus_write_config_dword +EXPORT_SYMBOL vmlinux 0xf1f1dbe5 mod_node_page_state +EXPORT_SYMBOL vmlinux 0xf213bd2a complete_request_key +EXPORT_SYMBOL vmlinux 0xf21bc246 seq_put_decimal_ull +EXPORT_SYMBOL vmlinux 0xf2215f74 blk_finish_plug +EXPORT_SYMBOL vmlinux 0xf22ee5f1 nf_ip_checksum +EXPORT_SYMBOL vmlinux 0xf236c75e swake_up_one +EXPORT_SYMBOL vmlinux 0xf23fcb99 __kfifo_in +EXPORT_SYMBOL vmlinux 0xf2669a2c imx_scu_irq_register_notifier +EXPORT_SYMBOL vmlinux 0xf267c64f pcix_set_mmrbc +EXPORT_SYMBOL vmlinux 0xf2682a5b sdev_prefix_printk +EXPORT_SYMBOL vmlinux 0xf28404cf devlink_dpipe_header_ipv6 +EXPORT_SYMBOL vmlinux 0xf29de051 flow_rule_match_ip +EXPORT_SYMBOL vmlinux 0xf2a77078 put_cmsg +EXPORT_SYMBOL vmlinux 0xf2ad80d9 snd_pcm_create_iec958_consumer_hw_params +EXPORT_SYMBOL vmlinux 0xf2b14768 generic_file_read_iter +EXPORT_SYMBOL vmlinux 0xf2bb9aa1 reuseport_add_sock +EXPORT_SYMBOL vmlinux 0xf2c012ea pci_enable_device +EXPORT_SYMBOL vmlinux 0xf2c43f3f zlib_deflate +EXPORT_SYMBOL vmlinux 0xf2d71ae4 locks_free_lock +EXPORT_SYMBOL vmlinux 0xf2e5bd87 security_free_mnt_opts +EXPORT_SYMBOL vmlinux 0xf2fa0bed pci_stop_and_remove_bus_device +EXPORT_SYMBOL vmlinux 0xf3107926 sha224_update +EXPORT_SYMBOL vmlinux 0xf32c5d61 vm_map_pages +EXPORT_SYMBOL vmlinux 0xf32f36f1 vm_node_stat +EXPORT_SYMBOL vmlinux 0xf346231f seq_list_start_head +EXPORT_SYMBOL vmlinux 0xf348ff41 bpf_stats_enabled_key +EXPORT_SYMBOL vmlinux 0xf34dacd4 twl6030_mmc_card_detect +EXPORT_SYMBOL vmlinux 0xf353a698 register_module_notifier +EXPORT_SYMBOL vmlinux 0xf3745b38 dev_get_by_index +EXPORT_SYMBOL vmlinux 0xf3774029 __vfs_removexattr +EXPORT_SYMBOL vmlinux 0xf3781f5c snd_pcm_hw_constraint_ratnums +EXPORT_SYMBOL vmlinux 0xf37d143e scsicam_bios_param +EXPORT_SYMBOL vmlinux 0xf37f9794 devfreq_add_governor +EXPORT_SYMBOL vmlinux 0xf383746e proc_create_data +EXPORT_SYMBOL vmlinux 0xf388747b tty_lock +EXPORT_SYMBOL vmlinux 0xf389fe60 __hw_addr_init +EXPORT_SYMBOL vmlinux 0xf3916987 global_cursor_default +EXPORT_SYMBOL vmlinux 0xf393ea08 inet_frag_reasm_finish +EXPORT_SYMBOL vmlinux 0xf39836ee __sk_backlog_rcv +EXPORT_SYMBOL vmlinux 0xf39d596d dmam_free_coherent +EXPORT_SYMBOL vmlinux 0xf39e441c ZSTD_CStreamWorkspaceBound +EXPORT_SYMBOL vmlinux 0xf3a11c35 xa_find_after +EXPORT_SYMBOL vmlinux 0xf3aaa98f kobject_set_name +EXPORT_SYMBOL vmlinux 0xf3ae3acb file_fdatawait_range +EXPORT_SYMBOL vmlinux 0xf3b30a06 utf8version_latest +EXPORT_SYMBOL vmlinux 0xf3ceba09 mdiobus_write_nested +EXPORT_SYMBOL vmlinux 0xf3d8fb1e get_tree_keyed +EXPORT_SYMBOL vmlinux 0xf3e6402e __bitmap_equal +EXPORT_SYMBOL vmlinux 0xf3fcd1dd blk_alloc_queue +EXPORT_SYMBOL vmlinux 0xf40019c0 tegra114_clock_tune_cpu_trimmers_init +EXPORT_SYMBOL vmlinux 0xf41abb51 kill_block_super +EXPORT_SYMBOL vmlinux 0xf4228967 mipi_dsi_generic_read +EXPORT_SYMBOL vmlinux 0xf44a904a net_ns_barrier +EXPORT_SYMBOL vmlinux 0xf4663bd5 phy_ethtool_set_eee +EXPORT_SYMBOL vmlinux 0xf474c21c bitmap_print_to_pagebuf +EXPORT_SYMBOL vmlinux 0xf474fdcb kfree_const +EXPORT_SYMBOL vmlinux 0xf49ce261 inet_sendmsg +EXPORT_SYMBOL vmlinux 0xf4a04498 nmi_panic +EXPORT_SYMBOL vmlinux 0xf4b5ad90 __genphy_config_aneg +EXPORT_SYMBOL vmlinux 0xf4b83ce4 devfreq_monitor_suspend +EXPORT_SYMBOL vmlinux 0xf4ba246e ZSTD_nextSrcSizeToDecompress +EXPORT_SYMBOL vmlinux 0xf4baa334 proc_dointvec_userhz_jiffies +EXPORT_SYMBOL vmlinux 0xf4bdbeb9 __frontswap_invalidate_area +EXPORT_SYMBOL vmlinux 0xf4cbffc3 ZSTD_flushStream +EXPORT_SYMBOL vmlinux 0xf4ceb9dc sock_no_shutdown +EXPORT_SYMBOL vmlinux 0xf4db35bc stpcpy +EXPORT_SYMBOL vmlinux 0xf4e44b24 inet_frag_find +EXPORT_SYMBOL vmlinux 0xf4ea904b register_mii_timestamper +EXPORT_SYMBOL vmlinux 0xf4ee057d read_cache_page_gfp +EXPORT_SYMBOL vmlinux 0xf4f14de6 rtnl_trylock +EXPORT_SYMBOL vmlinux 0xf5110f92 unregister_mii_timestamper +EXPORT_SYMBOL vmlinux 0xf5243506 deactivate_locked_super +EXPORT_SYMBOL vmlinux 0xf527f72d mmc_release_host +EXPORT_SYMBOL vmlinux 0xf5282659 snd_pcm_hw_constraint_minmax +EXPORT_SYMBOL vmlinux 0xf539814f rt_dst_clone +EXPORT_SYMBOL vmlinux 0xf53a428d netlink_unicast +EXPORT_SYMBOL vmlinux 0xf53d4c26 qdisc_class_hash_destroy +EXPORT_SYMBOL vmlinux 0xf54cdf9a flow_rule_match_enc_ip +EXPORT_SYMBOL vmlinux 0xf55a4695 vme_slot_num +EXPORT_SYMBOL vmlinux 0xf564412a __aeabi_ulcmp +EXPORT_SYMBOL vmlinux 0xf573a0ed sock_register +EXPORT_SYMBOL vmlinux 0xf576a956 mmc_retune_release +EXPORT_SYMBOL vmlinux 0xf5771dc4 kobject_init +EXPORT_SYMBOL vmlinux 0xf578d59e register_qdisc +EXPORT_SYMBOL vmlinux 0xf5a0e0d2 gen_pool_for_each_chunk +EXPORT_SYMBOL vmlinux 0xf5b666ef __cond_resched_lock +EXPORT_SYMBOL vmlinux 0xf5db2aeb seg6_hmac_net_exit +EXPORT_SYMBOL vmlinux 0xf5e7ea40 ktime_get_coarse_ts64 +EXPORT_SYMBOL vmlinux 0xf5f1efa3 i2c_get_adapter +EXPORT_SYMBOL vmlinux 0xf643d104 hsiphash_4u32 +EXPORT_SYMBOL vmlinux 0xf64bf255 wait_for_completion +EXPORT_SYMBOL vmlinux 0xf652d359 __wake_up_bit +EXPORT_SYMBOL vmlinux 0xf65d03d3 locks_copy_lock +EXPORT_SYMBOL vmlinux 0xf66034fa devm_memunmap +EXPORT_SYMBOL vmlinux 0xf665f74f sock_load_diag_module +EXPORT_SYMBOL vmlinux 0xf68285c0 register_inetaddr_notifier +EXPORT_SYMBOL vmlinux 0xf6a5ee2e qcom_scm_io_readl +EXPORT_SYMBOL vmlinux 0xf6ca3742 genphy_config_eee_advert +EXPORT_SYMBOL vmlinux 0xf6cb9274 netdev_adjacent_change_prepare +EXPORT_SYMBOL vmlinux 0xf6d7e511 unix_get_socket +EXPORT_SYMBOL vmlinux 0xf6e4df71 on_each_cpu_cond_mask +EXPORT_SYMBOL vmlinux 0xf6ebc03b net_ratelimit +EXPORT_SYMBOL vmlinux 0xf6ed6c73 vlan_filter_push_vids +EXPORT_SYMBOL vmlinux 0xf6fc8791 __bitmap_xor +EXPORT_SYMBOL vmlinux 0xf6ffa7c0 input_mt_assign_slots +EXPORT_SYMBOL vmlinux 0xf705fa49 gen_pool_free_owner +EXPORT_SYMBOL vmlinux 0xf70d00e1 fs_param_is_string +EXPORT_SYMBOL vmlinux 0xf7163ec9 __raw_readsb +EXPORT_SYMBOL vmlinux 0xf738d1be register_blocking_lsm_notifier +EXPORT_SYMBOL vmlinux 0xf74b8346 dec_zone_page_state +EXPORT_SYMBOL vmlinux 0xf7584a9c find_font +EXPORT_SYMBOL vmlinux 0xf76843b5 qcom_scm_pas_supported +EXPORT_SYMBOL vmlinux 0xf76df20b skb_copy_bits +EXPORT_SYMBOL vmlinux 0xf76f8c8b no_seek_end_llseek +EXPORT_SYMBOL vmlinux 0xf77337a1 hdmi_audio_infoframe_check +EXPORT_SYMBOL vmlinux 0xf7802486 __aeabi_uidivmod +EXPORT_SYMBOL vmlinux 0xf780c849 pcie_set_readrq +EXPORT_SYMBOL vmlinux 0xf7a16ded of_mdiobus_child_is_phy +EXPORT_SYMBOL vmlinux 0xf7a59240 get_tree_single +EXPORT_SYMBOL vmlinux 0xf7abe5b2 inet6_register_protosw +EXPORT_SYMBOL vmlinux 0xf811e69d scsi_eh_flush_done_q +EXPORT_SYMBOL vmlinux 0xf82011c2 wake_up_process +EXPORT_SYMBOL vmlinux 0xf822b3f6 __bread_gfp +EXPORT_SYMBOL vmlinux 0xf82abc1d isa_dma_bridge_buggy +EXPORT_SYMBOL vmlinux 0xf82ec573 rb_prev +EXPORT_SYMBOL vmlinux 0xf838fd97 dim_park_on_top +EXPORT_SYMBOL vmlinux 0xf842c5fc d_find_any_alias +EXPORT_SYMBOL vmlinux 0xf84390e4 of_device_is_available +EXPORT_SYMBOL vmlinux 0xf84c3647 pci_add_resource_offset +EXPORT_SYMBOL vmlinux 0xf85315ba nvm_dev_dma_alloc +EXPORT_SYMBOL vmlinux 0xf866b00c tegra_io_pad_power_enable +EXPORT_SYMBOL vmlinux 0xf86f27cd idr_alloc_cyclic +EXPORT_SYMBOL vmlinux 0xf894273d nand_write_oob_std +EXPORT_SYMBOL vmlinux 0xf8a46143 __sk_mem_schedule +EXPORT_SYMBOL vmlinux 0xf8a84d78 netif_set_xps_queue +EXPORT_SYMBOL vmlinux 0xf8b7bccc security_old_inode_init_security +EXPORT_SYMBOL vmlinux 0xf8dad174 elv_rb_add +EXPORT_SYMBOL vmlinux 0xf8dd2637 super_setup_bdi_name +EXPORT_SYMBOL vmlinux 0xf8df7d09 param_set_copystring +EXPORT_SYMBOL vmlinux 0xf8e460a8 netdev_notice +EXPORT_SYMBOL vmlinux 0xf8f61ebc wake_up_var +EXPORT_SYMBOL vmlinux 0xf8f6a692 finish_no_open +EXPORT_SYMBOL vmlinux 0xf91397ff dcache_dir_close +EXPORT_SYMBOL vmlinux 0xf915179e refcount_dec_if_one +EXPORT_SYMBOL vmlinux 0xf918ddd2 param_ops_ulong +EXPORT_SYMBOL vmlinux 0xf92882c7 input_handler_for_each_handle +EXPORT_SYMBOL vmlinux 0xf92f1e24 netdev_has_upper_dev_all_rcu +EXPORT_SYMBOL vmlinux 0xf93aae46 __arm_smccc_smc +EXPORT_SYMBOL vmlinux 0xf93fd09c fb_find_mode_cvt +EXPORT_SYMBOL vmlinux 0xf9456736 unlock_page +EXPORT_SYMBOL vmlinux 0xf9722676 twl_i2c_write +EXPORT_SYMBOL vmlinux 0xf973f25d padata_do_parallel +EXPORT_SYMBOL vmlinux 0xf9904567 qdisc_watchdog_cancel +EXPORT_SYMBOL vmlinux 0xf9907576 ip6_fraglist_prepare +EXPORT_SYMBOL vmlinux 0xf9966fef imx_scu_enable_general_irq_channel +EXPORT_SYMBOL vmlinux 0xf9a36b47 down_interruptible +EXPORT_SYMBOL vmlinux 0xf9a482f9 msleep +EXPORT_SYMBOL vmlinux 0xf9b7ff83 end_buffer_write_sync +EXPORT_SYMBOL vmlinux 0xf9cf73c8 locks_delete_block +EXPORT_SYMBOL vmlinux 0xf9eced44 LZ4_compress_fast_continue +EXPORT_SYMBOL vmlinux 0xf9f13557 devm_devfreq_unregister_notifier +EXPORT_SYMBOL vmlinux 0xfa021f90 ZSTD_decompressContinue +EXPORT_SYMBOL vmlinux 0xfa46ff7e netdev_err +EXPORT_SYMBOL vmlinux 0xfa599bb2 netlink_register_notifier +EXPORT_SYMBOL vmlinux 0xfa6d202c udp_lib_get_port +EXPORT_SYMBOL vmlinux 0xfa82b7b9 dev_mc_unsync +EXPORT_SYMBOL vmlinux 0xfa873ad0 prandom_seed +EXPORT_SYMBOL vmlinux 0xfa963db1 arp_xmit +EXPORT_SYMBOL vmlinux 0xfa9be702 phy_ethtool_ksettings_get +EXPORT_SYMBOL vmlinux 0xfaa0a5ff sock_wmalloc +EXPORT_SYMBOL vmlinux 0xfab7e670 eth_mac_addr +EXPORT_SYMBOL vmlinux 0xfac5d6f1 get_thermal_instance +EXPORT_SYMBOL vmlinux 0xfac876d3 __hw_addr_ref_unsync_dev +EXPORT_SYMBOL vmlinux 0xfac8865f sysctl_wmem_max +EXPORT_SYMBOL vmlinux 0xfac91963 mdiobus_unregister +EXPORT_SYMBOL vmlinux 0xfacf4175 snd_dma_free_pages +EXPORT_SYMBOL vmlinux 0xfadf1ce8 mipi_dsi_host_register +EXPORT_SYMBOL vmlinux 0xfae0f68a dst_discard_out +EXPORT_SYMBOL vmlinux 0xfb012c98 dma_async_device_unregister +EXPORT_SYMBOL vmlinux 0xfb1d7438 down_read +EXPORT_SYMBOL vmlinux 0xfb2190f1 security_tun_dev_attach +EXPORT_SYMBOL vmlinux 0xfb242bf7 tty_check_change +EXPORT_SYMBOL vmlinux 0xfb26983d inet_proto_csum_replace_by_diff +EXPORT_SYMBOL vmlinux 0xfb336634 mempool_destroy +EXPORT_SYMBOL vmlinux 0xfb384d37 kasprintf +EXPORT_SYMBOL vmlinux 0xfb3e3ea5 devfreq_monitor_start +EXPORT_SYMBOL vmlinux 0xfb481954 vprintk +EXPORT_SYMBOL vmlinux 0xfb53c6dd twl6040_power +EXPORT_SYMBOL vmlinux 0xfb5dd93d skb_store_bits +EXPORT_SYMBOL vmlinux 0xfb6af58d recalc_sigpending +EXPORT_SYMBOL vmlinux 0xfb6ffc1f vfs_parse_fs_string +EXPORT_SYMBOL vmlinux 0xfb71c47f freeze_bdev +EXPORT_SYMBOL vmlinux 0xfb750f98 devm_request_threaded_irq +EXPORT_SYMBOL vmlinux 0xfb79bb58 phy_drivers_register +EXPORT_SYMBOL vmlinux 0xfb7a4954 mmc_cqe_request_done +EXPORT_SYMBOL vmlinux 0xfb7d9c45 __udivsi3 +EXPORT_SYMBOL vmlinux 0xfba400a5 i2c_smbus_read_byte_data +EXPORT_SYMBOL vmlinux 0xfba563b1 mfd_cell_enable +EXPORT_SYMBOL vmlinux 0xfba63293 vlan_for_each +EXPORT_SYMBOL vmlinux 0xfba7ddd2 match_u64 +EXPORT_SYMBOL vmlinux 0xfbaaf01e console_lock +EXPORT_SYMBOL vmlinux 0xfbad3cf0 scsi_normalize_sense +EXPORT_SYMBOL vmlinux 0xfbb606f0 d_add_ci +EXPORT_SYMBOL vmlinux 0xfbc4f89e io_schedule_timeout +EXPORT_SYMBOL vmlinux 0xfbec0c0e __module_get +EXPORT_SYMBOL vmlinux 0xfbf4ad81 pci_find_bus +EXPORT_SYMBOL vmlinux 0xfc10c938 generic_block_bmap +EXPORT_SYMBOL vmlinux 0xfc1e574b dev_mc_del_global +EXPORT_SYMBOL vmlinux 0xfc399557 utf8_load +EXPORT_SYMBOL vmlinux 0xfc39e32f ioport_unmap +EXPORT_SYMBOL vmlinux 0xfc3f3589 strscpy_pad +EXPORT_SYMBOL vmlinux 0xfc52abc7 qcom_scm_pas_shutdown +EXPORT_SYMBOL vmlinux 0xfc653bb4 nvm_submit_io +EXPORT_SYMBOL vmlinux 0xfc65459a kstrtoull_from_user +EXPORT_SYMBOL vmlinux 0xfc8c3330 inet_frag_reasm_prepare +EXPORT_SYMBOL vmlinux 0xfc95f3b0 blk_mq_delay_run_hw_queue +EXPORT_SYMBOL vmlinux 0xfcaedfca scsi_eh_prep_cmnd +EXPORT_SYMBOL vmlinux 0xfcc343e2 fs_context_for_reconfigure +EXPORT_SYMBOL vmlinux 0xfcc4d621 bdev_dax_pgoff +EXPORT_SYMBOL vmlinux 0xfccd6c50 get_task_exe_file +EXPORT_SYMBOL vmlinux 0xfcd1819a hdmi_spd_infoframe_check +EXPORT_SYMBOL vmlinux 0xfcd25b28 sock_sendmsg +EXPORT_SYMBOL vmlinux 0xfcd5bec1 blk_rq_append_bio +EXPORT_SYMBOL vmlinux 0xfcd87ea1 udp_lib_setsockopt +EXPORT_SYMBOL vmlinux 0xfce3d11d skb_copy_datagram_iter +EXPORT_SYMBOL vmlinux 0xfcea210a flow_rule_match_eth_addrs +EXPORT_SYMBOL vmlinux 0xfcec0987 enable_irq +EXPORT_SYMBOL vmlinux 0xfcfd9b7a sk_send_sigurg +EXPORT_SYMBOL vmlinux 0xfd00acda bdget_disk +EXPORT_SYMBOL vmlinux 0xfd090d1f key_invalidate +EXPORT_SYMBOL vmlinux 0xfd10ea0d blk_mq_stop_hw_queue +EXPORT_SYMBOL vmlinux 0xfd305341 walk_stackframe +EXPORT_SYMBOL vmlinux 0xfd3f0d14 nf_register_net_hooks +EXPORT_SYMBOL vmlinux 0xfd59335c max8998_update_reg +EXPORT_SYMBOL vmlinux 0xfd5ad821 nand_create_bbt +EXPORT_SYMBOL vmlinux 0xfd72b740 simple_link +EXPORT_SYMBOL vmlinux 0xfd73a76b flush_kernel_dcache_page +EXPORT_SYMBOL vmlinux 0xfd8c5afc release_fiq +EXPORT_SYMBOL vmlinux 0xfd8de48e pci_bus_assign_resources +EXPORT_SYMBOL vmlinux 0xfd9c3437 mdio_bus_type +EXPORT_SYMBOL vmlinux 0xfda40019 ptp_schedule_worker +EXPORT_SYMBOL vmlinux 0xfda9581f prandom_u32 +EXPORT_SYMBOL vmlinux 0xfdc464ef submit_bh +EXPORT_SYMBOL vmlinux 0xfdcc8a0e fb_find_best_display +EXPORT_SYMBOL vmlinux 0xfdf4cff0 neigh_proc_dointvec_jiffies +EXPORT_SYMBOL vmlinux 0xfdfb3dfe ps2_handle_response +EXPORT_SYMBOL vmlinux 0xfdff94e0 ZSTD_initDStream +EXPORT_SYMBOL vmlinux 0xfe029963 unregister_inetaddr_notifier +EXPORT_SYMBOL vmlinux 0xfe10e1b5 dev_vprintk_emit +EXPORT_SYMBOL vmlinux 0xfe13ab41 scsi_print_command +EXPORT_SYMBOL vmlinux 0xfe201bb8 sock_kmalloc +EXPORT_SYMBOL vmlinux 0xfe467643 __dev_get_by_index +EXPORT_SYMBOL vmlinux 0xfe487975 init_wait_entry +EXPORT_SYMBOL vmlinux 0xfe5d4bb2 sys_tz +EXPORT_SYMBOL vmlinux 0xfe651897 input_set_min_poll_interval +EXPORT_SYMBOL vmlinux 0xfe7d64a2 sock_setsockopt +EXPORT_SYMBOL vmlinux 0xfe90c4a6 _find_first_zero_bit_le +EXPORT_SYMBOL vmlinux 0xfea0934a fget_raw +EXPORT_SYMBOL vmlinux 0xfeb5d0aa verify_spi_info +EXPORT_SYMBOL vmlinux 0xfecd20e9 d_tmpfile +EXPORT_SYMBOL vmlinux 0xfedcdb60 seq_hlist_next_percpu +EXPORT_SYMBOL vmlinux 0xfeeb76dc jbd2_journal_update_sb_errno +EXPORT_SYMBOL vmlinux 0xfefa84a0 mdiobus_write +EXPORT_SYMBOL vmlinux 0xfefcb98e vme_dma_vme_attribute +EXPORT_SYMBOL vmlinux 0xff001148 bio_chain +EXPORT_SYMBOL vmlinux 0xff1913ae is_subdir +EXPORT_SYMBOL vmlinux 0xff1923bd xfrm6_rcv_spi +EXPORT_SYMBOL vmlinux 0xff1e9dd8 seq_list_start +EXPORT_SYMBOL vmlinux 0xff22d066 netlink_capable +EXPORT_SYMBOL vmlinux 0xff339573 tegra_ivc_cleanup +EXPORT_SYMBOL vmlinux 0xff44993b phy_device_register +EXPORT_SYMBOL vmlinux 0xff480ce4 mmc_register_driver +EXPORT_SYMBOL vmlinux 0xff4e9e47 xfrm_lookup_with_ifid +EXPORT_SYMBOL vmlinux 0xff5a6241 netif_skb_features +EXPORT_SYMBOL vmlinux 0xff5eb59e amba_release_regions +EXPORT_SYMBOL vmlinux 0xff6104d0 snd_pcm_rate_bit_to_rate +EXPORT_SYMBOL vmlinux 0xff67b37f __lshrdi3 +EXPORT_SYMBOL vmlinux 0xff6878cf fb_default_cmap +EXPORT_SYMBOL vmlinux 0xff7ef1bf of_find_i2c_device_by_node +EXPORT_SYMBOL vmlinux 0xff8c2e5a radix_tree_tag_get +EXPORT_SYMBOL vmlinux 0xff99f940 touch_buffer +EXPORT_SYMBOL vmlinux 0xffa6ba23 generic_read_dir +EXPORT_SYMBOL vmlinux 0xffa983d1 bdgrab +EXPORT_SYMBOL vmlinux 0xffb94ef0 _test_and_change_bit +EXPORT_SYMBOL vmlinux 0xffbbbd19 __alloc_disk_node +EXPORT_SYMBOL vmlinux 0xffc1a3ff netif_tx_wake_queue +EXPORT_SYMBOL vmlinux 0xffc759e9 sock_from_file +EXPORT_SYMBOL vmlinux 0xffd30857 __d_drop +EXPORT_SYMBOL vmlinux 0xffd96fef processor +EXPORT_SYMBOL vmlinux 0xffe20e2e qdisc_watchdog_init_clockid +EXPORT_SYMBOL vmlinux 0xffe9095f i2c_smbus_write_block_data +EXPORT_SYMBOL vmlinux 0xffeedf6a delayed_work_timer_fn +EXPORT_SYMBOL vmlinux 0xfff1358a crypto_sha1_update +EXPORT_SYMBOL vmlinux 0xfff6d930 nobh_truncate_page +EXPORT_SYMBOL_GPL arch/arm/crypto/sha1-arm 0x0a118710 sha1_finup_arm +EXPORT_SYMBOL_GPL arch/arm/crypto/sha1-arm 0x96c331bb sha1_update_arm +EXPORT_SYMBOL_GPL crypto/af_alg 0x0285d997 af_alg_wmem_wakeup +EXPORT_SYMBOL_GPL crypto/af_alg 0x0a6147d9 af_alg_wait_for_data +EXPORT_SYMBOL_GPL crypto/af_alg 0x260e07ff af_alg_count_tsgl +EXPORT_SYMBOL_GPL crypto/af_alg 0x29b413d4 af_alg_poll +EXPORT_SYMBOL_GPL crypto/af_alg 0x2f2f4a98 af_alg_release +EXPORT_SYMBOL_GPL crypto/af_alg 0x3a442592 af_alg_free_resources +EXPORT_SYMBOL_GPL crypto/af_alg 0x61b26f27 af_alg_unregister_type +EXPORT_SYMBOL_GPL crypto/af_alg 0x625e5dca af_alg_free_sg +EXPORT_SYMBOL_GPL crypto/af_alg 0x634bcc6f af_alg_alloc_areq +EXPORT_SYMBOL_GPL crypto/af_alg 0x6d0192a9 af_alg_get_rsgl +EXPORT_SYMBOL_GPL crypto/af_alg 0x756b4f0a af_alg_accept +EXPORT_SYMBOL_GPL crypto/af_alg 0x84218a64 af_alg_register_type +EXPORT_SYMBOL_GPL crypto/af_alg 0x89ef868e af_alg_make_sg +EXPORT_SYMBOL_GPL crypto/af_alg 0x8b2aeb0f af_alg_async_cb +EXPORT_SYMBOL_GPL crypto/af_alg 0x961cbc45 af_alg_sendpage +EXPORT_SYMBOL_GPL crypto/af_alg 0xdc4f6591 af_alg_pull_tsgl +EXPORT_SYMBOL_GPL crypto/af_alg 0xf3cfe634 af_alg_release_parent +EXPORT_SYMBOL_GPL crypto/af_alg 0xfa1e80cc af_alg_sendmsg +EXPORT_SYMBOL_GPL crypto/asymmetric_keys/asym_tpm 0x7430f97c tpm_key_create +EXPORT_SYMBOL_GPL crypto/asymmetric_keys/asym_tpm 0x8659b595 asym_tpm_subtype +EXPORT_SYMBOL_GPL crypto/async_tx/async_memcpy 0xaf5043ca async_memcpy +EXPORT_SYMBOL_GPL crypto/async_tx/async_pq 0xbd2e8b02 async_gen_syndrome +EXPORT_SYMBOL_GPL crypto/async_tx/async_pq 0xf6ff69ca async_syndrome_val +EXPORT_SYMBOL_GPL crypto/async_tx/async_raid6_recov 0x4e3c1ddc async_raid6_2data_recov +EXPORT_SYMBOL_GPL crypto/async_tx/async_raid6_recov 0x7f14ae96 async_raid6_datap_recov +EXPORT_SYMBOL_GPL crypto/async_tx/async_tx 0x109614ce __async_tx_find_channel +EXPORT_SYMBOL_GPL crypto/async_tx/async_tx 0x1e3404c0 async_tx_quiesce +EXPORT_SYMBOL_GPL crypto/async_tx/async_tx 0x3aadf7f0 async_tx_submit +EXPORT_SYMBOL_GPL crypto/async_tx/async_tx 0xc339c145 async_trigger_callback +EXPORT_SYMBOL_GPL crypto/async_tx/async_xor 0x691918fb async_xor_val +EXPORT_SYMBOL_GPL crypto/async_tx/async_xor 0xf7101be5 async_xor +EXPORT_SYMBOL_GPL crypto/authenc 0x2479193e crypto_authenc_extractkeys +EXPORT_SYMBOL_GPL crypto/blowfish_common 0x1eb0524e blowfish_setkey +EXPORT_SYMBOL_GPL crypto/cast5_generic 0x188d9d26 __cast5_decrypt +EXPORT_SYMBOL_GPL crypto/cast5_generic 0x9b92a059 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 0x4b59c38b 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 0x0266225e cryptd_aead_queued +EXPORT_SYMBOL_GPL crypto/cryptd 0x1b802607 cryptd_shash_desc +EXPORT_SYMBOL_GPL crypto/cryptd 0x2d4841b1 cryptd_skcipher_child +EXPORT_SYMBOL_GPL crypto/cryptd 0x3eb30467 cryptd_free_skcipher +EXPORT_SYMBOL_GPL crypto/cryptd 0x4f2aeb1a cryptd_skcipher_queued +EXPORT_SYMBOL_GPL crypto/cryptd 0x6f0ce2a0 cryptd_alloc_ahash +EXPORT_SYMBOL_GPL crypto/cryptd 0xaa7856f6 cryptd_free_aead +EXPORT_SYMBOL_GPL crypto/cryptd 0xb4a783f7 cryptd_aead_child +EXPORT_SYMBOL_GPL crypto/cryptd 0xcc778365 cryptd_free_ahash +EXPORT_SYMBOL_GPL crypto/cryptd 0xcf11d915 cryptd_alloc_aead +EXPORT_SYMBOL_GPL crypto/cryptd 0xd88d78e7 cryptd_ahash_child +EXPORT_SYMBOL_GPL crypto/cryptd 0xfdaa84cc cryptd_alloc_skcipher +EXPORT_SYMBOL_GPL crypto/cryptd 0xfdc3729a cryptd_ahash_queued +EXPORT_SYMBOL_GPL crypto/crypto_engine 0x09884da2 crypto_finalize_akcipher_request +EXPORT_SYMBOL_GPL crypto/crypto_engine 0x0d8fadfd crypto_transfer_akcipher_request_to_engine +EXPORT_SYMBOL_GPL crypto/crypto_engine 0x391b6744 crypto_engine_exit +EXPORT_SYMBOL_GPL crypto/crypto_engine 0x3ca6c5c6 crypto_engine_alloc_init_and_set +EXPORT_SYMBOL_GPL crypto/crypto_engine 0x3ff2028e crypto_transfer_skcipher_request_to_engine +EXPORT_SYMBOL_GPL crypto/crypto_engine 0x70089e79 crypto_engine_start +EXPORT_SYMBOL_GPL crypto/crypto_engine 0x88c1722b crypto_finalize_hash_request +EXPORT_SYMBOL_GPL crypto/crypto_engine 0x994f2598 crypto_engine_alloc_init +EXPORT_SYMBOL_GPL crypto/crypto_engine 0x9ca22e5a crypto_finalize_aead_request +EXPORT_SYMBOL_GPL crypto/crypto_engine 0xb47460e1 crypto_transfer_hash_request_to_engine +EXPORT_SYMBOL_GPL crypto/crypto_engine 0xc703401c crypto_finalize_skcipher_request +EXPORT_SYMBOL_GPL crypto/crypto_engine 0xe96e43da crypto_engine_stop +EXPORT_SYMBOL_GPL crypto/crypto_engine 0xf54f62a9 crypto_transfer_aead_request_to_engine +EXPORT_SYMBOL_GPL crypto/crypto_simd 0x504cb053 simd_aead_create_compat +EXPORT_SYMBOL_GPL crypto/crypto_simd 0x53fd4708 simd_register_aeads_compat +EXPORT_SYMBOL_GPL crypto/crypto_simd 0x615f1136 simd_unregister_aeads +EXPORT_SYMBOL_GPL crypto/crypto_simd 0x66983e96 simd_skcipher_create +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 0xc93bd74d simd_unregister_skciphers +EXPORT_SYMBOL_GPL crypto/crypto_simd 0xcec77839 simd_register_skciphers_compat +EXPORT_SYMBOL_GPL crypto/crypto_simd 0xefe73979 simd_skcipher_free +EXPORT_SYMBOL_GPL crypto/ecdh_generic 0x515ba532 crypto_ecdh_decode_key +EXPORT_SYMBOL_GPL crypto/ecdh_generic 0x7a395d76 crypto_ecdh_encode_key +EXPORT_SYMBOL_GPL crypto/ecdh_generic 0xd5a29505 crypto_ecdh_key_len +EXPORT_SYMBOL_GPL crypto/serpent_generic 0x4eb4c55e __serpent_encrypt +EXPORT_SYMBOL_GPL crypto/serpent_generic 0xb0613adf serpent_setkey +EXPORT_SYMBOL_GPL crypto/serpent_generic 0xbcc074f3 __serpent_decrypt +EXPORT_SYMBOL_GPL crypto/serpent_generic 0xd4c9681a __serpent_setkey +EXPORT_SYMBOL_GPL crypto/sm3_generic 0x0bddca87 sm3_zero_message_hash +EXPORT_SYMBOL_GPL crypto/sm4_generic 0x09a89410 crypto_sm4_expand_key +EXPORT_SYMBOL_GPL crypto/sm4_generic 0x15f805c7 crypto_sm4_decrypt +EXPORT_SYMBOL_GPL crypto/sm4_generic 0xae077149 crypto_sm4_encrypt +EXPORT_SYMBOL_GPL crypto/sm4_generic 0xf171d884 crypto_sm4_set_key +EXPORT_SYMBOL_GPL crypto/twofish_common 0xd5b2a838 twofish_setkey +EXPORT_SYMBOL_GPL crypto/twofish_common 0xe22b7787 __twofish_setkey +EXPORT_SYMBOL_GPL drivers/ata/pata_platform 0xae03fac6 __pata_platform_probe +EXPORT_SYMBOL_GPL drivers/ata/pata_sis 0x1eb6db68 sis_info133_for_sata +EXPORT_SYMBOL_GPL drivers/auxdisplay/charlcd 0x727ea304 charlcd_poke +EXPORT_SYMBOL_GPL drivers/auxdisplay/charlcd 0x9192a401 charlcd_register +EXPORT_SYMBOL_GPL drivers/auxdisplay/charlcd 0xa2a58bbe charlcd_alloc +EXPORT_SYMBOL_GPL drivers/auxdisplay/charlcd 0xac53a91b charlcd_unregister +EXPORT_SYMBOL_GPL drivers/auxdisplay/charlcd 0xd0cc2e18 charlcd_free +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/base/regmap/regmap-ac97 0x8786ea24 __devm_regmap_init_ac97 +EXPORT_SYMBOL_GPL drivers/base/regmap/regmap-ac97 0xc6d955a3 __regmap_init_ac97 +EXPORT_SYMBOL_GPL drivers/base/regmap/regmap-ac97 0xfd6b4bf1 regmap_ac97_default_volatile +EXPORT_SYMBOL_GPL drivers/base/regmap/regmap-i3c 0x96ed9ab0 __devm_regmap_init_i3c +EXPORT_SYMBOL_GPL drivers/base/regmap/regmap-sccb 0x74ed4dc4 __devm_regmap_init_sccb +EXPORT_SYMBOL_GPL drivers/base/regmap/regmap-sccb 0x82ce15a9 __regmap_init_sccb +EXPORT_SYMBOL_GPL drivers/base/regmap/regmap-sdw 0x0a782a87 __devm_regmap_init_sdw +EXPORT_SYMBOL_GPL drivers/base/regmap/regmap-sdw 0x303d609e __regmap_init_sdw +EXPORT_SYMBOL_GPL drivers/base/regmap/regmap-slimbus 0x77419c14 __regmap_init_slimbus +EXPORT_SYMBOL_GPL drivers/base/regmap/regmap-slimbus 0x910ac9bf __devm_regmap_init_slimbus +EXPORT_SYMBOL_GPL drivers/base/regmap/regmap-spmi 0x3303a1ff __regmap_init_spmi_base +EXPORT_SYMBOL_GPL drivers/base/regmap/regmap-spmi 0x946ad4f7 __devm_regmap_init_spmi_base +EXPORT_SYMBOL_GPL drivers/base/regmap/regmap-spmi 0xc0cf6d85 __devm_regmap_init_spmi_ext +EXPORT_SYMBOL_GPL drivers/base/regmap/regmap-spmi 0xce9c0461 __regmap_init_spmi_ext +EXPORT_SYMBOL_GPL drivers/base/regmap/regmap-w1 0x26a39ae8 __devm_regmap_init_w1 +EXPORT_SYMBOL_GPL drivers/base/regmap/regmap-w1 0xd8adc26e __regmap_init_w1 +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0x145cfd9a bcma_host_pci_up +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0x151d2e6d bcma_chipco_regctl_maskset +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0x19498ea2 bcma_core_set_clockmode +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0x269f8dfc bcma_core_pll_ctl +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0x3365ef9d bcma_driver_unregister +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0x3646f1f0 bcma_core_disable +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0x4d7b3f2a bcma_chipco_pll_write +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0x50c004fc bcma_find_core_unit +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0x63b67e5f bcma_chipco_pll_read +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0x6ba28842 bcma_core_pci_power_save +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0x81e025b4 __bcma_driver_register +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0x822d1a71 bcma_host_pci_down +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0x85c731aa bcma_chipco_gpio_outen +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0x861ef195 bcma_chipco_b_mii_write +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0x92e2d829 bcma_pmu_get_bus_clock +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0x96e830ff bcma_chipco_gpio_out +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0x9b6bc944 bcma_pmu_spuravoid_pllupdate +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0xadc531ba bcma_chipco_gpio_control +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0xb6e3ea1c bcma_chipco_pll_maskset +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0xd79fa1e7 bcma_host_pci_irq_ctl +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0xe1426138 bcma_chipco_get_alp_clock +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0xf21df2a2 bcma_core_enable +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0xf6342ebe bcma_core_is_enabled +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0xfdb55e2e bcma_chipco_chipctl_maskset +EXPORT_SYMBOL_GPL drivers/bluetooth/btbcm 0x197360b1 btbcm_finalize +EXPORT_SYMBOL_GPL drivers/bluetooth/btbcm 0x3f5724f0 btbcm_setup_apple +EXPORT_SYMBOL_GPL drivers/bluetooth/btbcm 0x4617816a btbcm_check_bdaddr +EXPORT_SYMBOL_GPL drivers/bluetooth/btbcm 0x742b27d5 btbcm_setup_patchram +EXPORT_SYMBOL_GPL drivers/bluetooth/btbcm 0xd936b06e btbcm_read_pcm_int_params +EXPORT_SYMBOL_GPL drivers/bluetooth/btbcm 0xdf210dfb btbcm_initialize +EXPORT_SYMBOL_GPL drivers/bluetooth/btbcm 0xf8549290 btbcm_write_pcm_int_params +EXPORT_SYMBOL_GPL drivers/bluetooth/btbcm 0xfb777cf9 btbcm_set_bdaddr +EXPORT_SYMBOL_GPL drivers/bluetooth/btintel 0x07321f46 btintel_download_firmware +EXPORT_SYMBOL_GPL drivers/bluetooth/btintel 0x118db169 btintel_hw_error +EXPORT_SYMBOL_GPL drivers/bluetooth/btintel 0x1e516682 btintel_reset_to_bootloader +EXPORT_SYMBOL_GPL drivers/bluetooth/btintel 0x30ba60e9 btintel_regmap_init +EXPORT_SYMBOL_GPL drivers/bluetooth/btintel 0x31e18f54 btintel_exit_mfg +EXPORT_SYMBOL_GPL drivers/bluetooth/btintel 0x5cabc9e2 btintel_send_intel_reset +EXPORT_SYMBOL_GPL drivers/bluetooth/btintel 0x5db32029 btintel_set_diag_mfg +EXPORT_SYMBOL_GPL drivers/bluetooth/btintel 0x6bf5a26d btintel_enter_mfg +EXPORT_SYMBOL_GPL drivers/bluetooth/btintel 0x6d76e68b btintel_set_event_mask +EXPORT_SYMBOL_GPL drivers/bluetooth/btintel 0x705db6a9 btintel_read_boot_params +EXPORT_SYMBOL_GPL drivers/bluetooth/btintel 0x75ab6c19 btintel_version_info +EXPORT_SYMBOL_GPL drivers/bluetooth/btintel 0x77367fb5 btintel_secure_send +EXPORT_SYMBOL_GPL drivers/bluetooth/btintel 0x7bbb1a27 btintel_set_bdaddr +EXPORT_SYMBOL_GPL drivers/bluetooth/btintel 0x90e27dbe btintel_check_bdaddr +EXPORT_SYMBOL_GPL drivers/bluetooth/btintel 0xb76f50f3 btintel_set_event_mask_mfg +EXPORT_SYMBOL_GPL drivers/bluetooth/btintel 0xd5bc6e50 btintel_set_diag +EXPORT_SYMBOL_GPL drivers/bluetooth/btintel 0xde022ab3 btintel_load_ddc_config +EXPORT_SYMBOL_GPL drivers/bluetooth/btintel 0xe757df02 btintel_read_version +EXPORT_SYMBOL_GPL drivers/bluetooth/btmrvl 0x1634eb6b btmrvl_enable_ps +EXPORT_SYMBOL_GPL drivers/bluetooth/btmrvl 0x1d1a90c2 btmrvl_pscan_window_reporting +EXPORT_SYMBOL_GPL drivers/bluetooth/btmrvl 0x433af045 btmrvl_send_module_cfg_cmd +EXPORT_SYMBOL_GPL drivers/bluetooth/btmrvl 0x57f8b9df btmrvl_register_hdev +EXPORT_SYMBOL_GPL drivers/bluetooth/btmrvl 0x5cd48945 btmrvl_interrupt +EXPORT_SYMBOL_GPL drivers/bluetooth/btmrvl 0x93c8452d btmrvl_add_card +EXPORT_SYMBOL_GPL drivers/bluetooth/btmrvl 0x97c43c4f btmrvl_send_hscfg_cmd +EXPORT_SYMBOL_GPL drivers/bluetooth/btmrvl 0xb0ae6dbf btmrvl_process_event +EXPORT_SYMBOL_GPL drivers/bluetooth/btmrvl 0xd63201a4 btmrvl_enable_hs +EXPORT_SYMBOL_GPL drivers/bluetooth/btmrvl 0xecd3d8d9 btmrvl_check_evtpkt +EXPORT_SYMBOL_GPL drivers/bluetooth/btmrvl 0xfb9f095f btmrvl_remove_card +EXPORT_SYMBOL_GPL drivers/bluetooth/btqca 0x57e84dfe qca_read_soc_version +EXPORT_SYMBOL_GPL drivers/bluetooth/btqca 0x6af44505 qca_uart_setup +EXPORT_SYMBOL_GPL drivers/bluetooth/btqca 0x8bb0b661 qca_send_pre_shutdown_cmd +EXPORT_SYMBOL_GPL drivers/bluetooth/btqca 0x96070f0b qca_set_bdaddr +EXPORT_SYMBOL_GPL drivers/bluetooth/btqca 0x9af4a170 qca_set_bdaddr_rome +EXPORT_SYMBOL_GPL drivers/bluetooth/btrtl 0x0dea0bdb btrtl_get_uart_settings +EXPORT_SYMBOL_GPL drivers/bluetooth/btrtl 0x7415cc1c btrtl_initialize +EXPORT_SYMBOL_GPL drivers/bluetooth/btrtl 0x7872165c btrtl_shutdown_realtek +EXPORT_SYMBOL_GPL drivers/bluetooth/btrtl 0x7d65fd9d btrtl_download_firmware +EXPORT_SYMBOL_GPL drivers/bluetooth/btrtl 0xaf78f260 btrtl_free +EXPORT_SYMBOL_GPL drivers/bluetooth/btrtl 0xd130acbe btrtl_setup_realtek +EXPORT_SYMBOL_GPL drivers/bluetooth/hci_uart 0x0ccd7adb hci_uart_tx_wakeup +EXPORT_SYMBOL_GPL drivers/bluetooth/hci_uart 0x139b0de6 hci_uart_register_device +EXPORT_SYMBOL_GPL drivers/bluetooth/hci_uart 0x3f98f440 h4_recv_buf +EXPORT_SYMBOL_GPL drivers/bluetooth/hci_uart 0x5998cbae hci_uart_unregister_device +EXPORT_SYMBOL_GPL drivers/bus/mhi/core/mhi 0x1d06679b mhi_poll +EXPORT_SYMBOL_GPL drivers/bus/mhi/core/mhi 0x233ef1ec mhi_prepare_for_transfer +EXPORT_SYMBOL_GPL drivers/bus/mhi/core/mhi 0x24c8e2ce __mhi_driver_register +EXPORT_SYMBOL_GPL drivers/bus/mhi/core/mhi 0x282b5e01 mhi_power_down +EXPORT_SYMBOL_GPL drivers/bus/mhi/core/mhi 0x2be62a81 mhi_queue_buf +EXPORT_SYMBOL_GPL drivers/bus/mhi/core/mhi 0x38c35791 mhi_pm_resume +EXPORT_SYMBOL_GPL drivers/bus/mhi/core/mhi 0x3d706792 mhi_notify +EXPORT_SYMBOL_GPL drivers/bus/mhi/core/mhi 0x3f0111dc mhi_unprepare_after_power_down +EXPORT_SYMBOL_GPL drivers/bus/mhi/core/mhi 0x5d5f07c7 mhi_unregister_controller +EXPORT_SYMBOL_GPL drivers/bus/mhi/core/mhi 0x67941dcc mhi_device_get_sync +EXPORT_SYMBOL_GPL drivers/bus/mhi/core/mhi 0x7132b308 mhi_force_rddm_mode +EXPORT_SYMBOL_GPL drivers/bus/mhi/core/mhi 0x73217c0d mhi_pm_suspend +EXPORT_SYMBOL_GPL drivers/bus/mhi/core/mhi 0x76832b2a mhi_device_put +EXPORT_SYMBOL_GPL drivers/bus/mhi/core/mhi 0x7a7ba4da mhi_driver_unregister +EXPORT_SYMBOL_GPL drivers/bus/mhi/core/mhi 0x98a1018b mhi_queue_dma +EXPORT_SYMBOL_GPL drivers/bus/mhi/core/mhi 0xa389b35c mhi_unprepare_from_transfer +EXPORT_SYMBOL_GPL drivers/bus/mhi/core/mhi 0xba28bdfe mhi_async_power_up +EXPORT_SYMBOL_GPL drivers/bus/mhi/core/mhi 0xd8977924 mhi_prepare_for_power_up +EXPORT_SYMBOL_GPL drivers/bus/mhi/core/mhi 0xdf71ff25 mhi_queue_skb +EXPORT_SYMBOL_GPL drivers/bus/mhi/core/mhi 0xec586d87 mhi_device_get +EXPORT_SYMBOL_GPL drivers/bus/mhi/core/mhi 0xf80d010e mhi_download_rddm_img +EXPORT_SYMBOL_GPL drivers/bus/mhi/core/mhi 0xfab704b4 mhi_register_controller +EXPORT_SYMBOL_GPL drivers/bus/moxtet 0x3f1b4306 moxtet_device_read +EXPORT_SYMBOL_GPL drivers/bus/moxtet 0x59be0d26 moxtet_device_written +EXPORT_SYMBOL_GPL drivers/bus/moxtet 0x94dc8f9c __moxtet_register_driver +EXPORT_SYMBOL_GPL drivers/bus/moxtet 0x98a48689 moxtet_device_write +EXPORT_SYMBOL_GPL drivers/clk/meson/clk-phase 0xc37ae3f3 meson_clk_triphase_ops +EXPORT_SYMBOL_GPL drivers/clk/meson/clk-phase 0xeb820ca2 meson_clk_phase_ops +EXPORT_SYMBOL_GPL drivers/clk/meson/sclk-div 0xb1aa8b06 meson_sclk_div_ops +EXPORT_SYMBOL_GPL drivers/clk/qcom/clk-qcom 0x0000139e clk_alpha_pll_ops +EXPORT_SYMBOL_GPL drivers/clk/qcom/clk-qcom 0x07fa3ea2 qcom_cc_register_sleep_clk +EXPORT_SYMBOL_GPL drivers/clk/qcom/clk-qcom 0x08f0cc30 clk_is_enabled_regmap +EXPORT_SYMBOL_GPL drivers/clk/qcom/clk-qcom 0x0d10c3c4 clk_enable_regmap +EXPORT_SYMBOL_GPL drivers/clk/qcom/clk-qcom 0x0d678ab9 qcom_reset_ops +EXPORT_SYMBOL_GPL drivers/clk/qcom/clk-qcom 0x0e5f8a53 clk_pll_sr2_ops +EXPORT_SYMBOL_GPL drivers/clk/qcom/clk-qcom 0x0e98da3d clk_pll_vote_ops +EXPORT_SYMBOL_GPL drivers/clk/qcom/clk-qcom 0x17b5359e qcom_cc_probe +EXPORT_SYMBOL_GPL drivers/clk/qcom/clk-qcom 0x17d44071 clk_alpha_pll_hwfsm_ops +EXPORT_SYMBOL_GPL drivers/clk/qcom/clk-qcom 0x1987883d clk_alpha_pll_fixed_lucid_ops +EXPORT_SYMBOL_GPL drivers/clk/qcom/clk-qcom 0x272f3204 clk_alpha_pll_fixed_ops +EXPORT_SYMBOL_GPL drivers/clk/qcom/clk-qcom 0x2a9c7452 clk_rcg_lcc_ops +EXPORT_SYMBOL_GPL drivers/clk/qcom/clk-qcom 0x2b0d957d clk_pixel_ops +EXPORT_SYMBOL_GPL drivers/clk/qcom/clk-qcom 0x2cae96b3 clk_regmap_div_ops +EXPORT_SYMBOL_GPL drivers/clk/qcom/clk-qcom 0x30bbf987 clk_rcg2_shared_ops +EXPORT_SYMBOL_GPL drivers/clk/qcom/clk-qcom 0x310b6341 clk_regmap_mux_closest_ops +EXPORT_SYMBOL_GPL drivers/clk/qcom/clk-qcom 0x31fa635a qcom_cc_really_probe +EXPORT_SYMBOL_GPL drivers/clk/qcom/clk-qcom 0x3747af55 clk_rcg_bypass2_ops +EXPORT_SYMBOL_GPL drivers/clk/qcom/clk-qcom 0x395868a1 qcom_find_freq_floor +EXPORT_SYMBOL_GPL drivers/clk/qcom/clk-qcom 0x3b15a709 clk_alpha_pll_configure +EXPORT_SYMBOL_GPL drivers/clk/qcom/clk-qcom 0x3dfc2dc5 clk_branch_simple_ops +EXPORT_SYMBOL_GPL drivers/clk/qcom/clk-qcom 0x405d394a clk_alpha_pll_postdiv_ops +EXPORT_SYMBOL_GPL drivers/clk/qcom/clk-qcom 0x418e9cfd clk_pll_ops +EXPORT_SYMBOL_GPL drivers/clk/qcom/clk-qcom 0x4b0ed6da clk_ops_hfpll +EXPORT_SYMBOL_GPL drivers/clk/qcom/clk-qcom 0x4c4ae6c8 devm_clk_register_regmap +EXPORT_SYMBOL_GPL drivers/clk/qcom/clk-qcom 0x5111f2ad clk_rcg2_ops +EXPORT_SYMBOL_GPL drivers/clk/qcom/clk-qcom 0x520df3b7 clk_rcg_esc_ops +EXPORT_SYMBOL_GPL drivers/clk/qcom/clk-qcom 0x57172323 clk_byte_ops +EXPORT_SYMBOL_GPL drivers/clk/qcom/clk-qcom 0x5e6abb22 mux_div_set_src_div +EXPORT_SYMBOL_GPL drivers/clk/qcom/clk-qcom 0x615dbb77 clk_branch2_ops +EXPORT_SYMBOL_GPL drivers/clk/qcom/clk-qcom 0x631939a9 clk_branch2_aon_ops +EXPORT_SYMBOL_GPL drivers/clk/qcom/clk-qcom 0x63ee9aa4 clk_alpha_pll_fixed_fabia_ops +EXPORT_SYMBOL_GPL drivers/clk/qcom/clk-qcom 0x668151b8 qcom_cc_register_board_clk +EXPORT_SYMBOL_GPL drivers/clk/qcom/clk-qcom 0x66922845 clk_branch_ops +EXPORT_SYMBOL_GPL drivers/clk/qcom/clk-qcom 0x68199825 clk_disable_regmap +EXPORT_SYMBOL_GPL drivers/clk/qcom/clk-qcom 0x6af41b8b qcom_pll_set_fsm_mode +EXPORT_SYMBOL_GPL drivers/clk/qcom/clk-qcom 0x6c069db2 qcom_find_src_index +EXPORT_SYMBOL_GPL drivers/clk/qcom/clk-qcom 0x7019378d clk_pll_configure_sr_hpm_lp +EXPORT_SYMBOL_GPL drivers/clk/qcom/clk-qcom 0x766e9f87 clk_regmap_div_ro_ops +EXPORT_SYMBOL_GPL drivers/clk/qcom/clk-qcom 0x787e8234 qcom_find_freq +EXPORT_SYMBOL_GPL drivers/clk/qcom/clk-qcom 0x78b81ea0 clk_rcg2_floor_ops +EXPORT_SYMBOL_GPL drivers/clk/qcom/clk-qcom 0x7e66fd9e clk_regmap_mux_div_ops +EXPORT_SYMBOL_GPL drivers/clk/qcom/clk-qcom 0x87a0893a qcom_cc_probe_by_index +EXPORT_SYMBOL_GPL drivers/clk/qcom/clk-qcom 0x8b55eac4 clk_dyn_rcg_ops +EXPORT_SYMBOL_GPL drivers/clk/qcom/clk-qcom 0x91c41c9f clk_edp_pixel_ops +EXPORT_SYMBOL_GPL drivers/clk/qcom/clk-qcom 0x97488818 clk_rcg_pixel_ops +EXPORT_SYMBOL_GPL drivers/clk/qcom/clk-qcom 0x9c8854a1 clk_alpha_pll_lucid_ops +EXPORT_SYMBOL_GPL drivers/clk/qcom/clk-qcom 0x9d909edd clk_gfx3d_ops +EXPORT_SYMBOL_GPL drivers/clk/qcom/clk-qcom 0x9dc41abb krait_div2_clk_ops +EXPORT_SYMBOL_GPL drivers/clk/qcom/clk-qcom 0x9e33f365 clk_trion_pll_postdiv_ops +EXPORT_SYMBOL_GPL drivers/clk/qcom/clk-qcom 0x9f241baa clk_rcg_ops +EXPORT_SYMBOL_GPL drivers/clk/qcom/clk-qcom 0xa6f08f9a clk_trion_fixed_pll_ops +EXPORT_SYMBOL_GPL drivers/clk/qcom/clk-qcom 0xaa403ee8 clk_alpha_pll_huayra_ops +EXPORT_SYMBOL_GPL drivers/clk/qcom/clk-qcom 0xadc2751b clk_alpha_pll_postdiv_fabia_ops +EXPORT_SYMBOL_GPL drivers/clk/qcom/clk-qcom 0xba961aa7 clk_dp_ops +EXPORT_SYMBOL_GPL drivers/clk/qcom/clk-qcom 0xc037091a krait_mux_clk_ops +EXPORT_SYMBOL_GPL drivers/clk/qcom/clk-qcom 0xc150d434 clk_alpha_pll_postdiv_ro_ops +EXPORT_SYMBOL_GPL drivers/clk/qcom/clk-qcom 0xc5bdfa11 clk_byte2_ops +EXPORT_SYMBOL_GPL drivers/clk/qcom/clk-qcom 0xc6a05db2 clk_fabia_pll_configure +EXPORT_SYMBOL_GPL drivers/clk/qcom/clk-qcom 0xce340fb8 clk_alpha_pll_regs +EXPORT_SYMBOL_GPL drivers/clk/qcom/clk-qcom 0xcf422970 clk_rcg_bypass_ops +EXPORT_SYMBOL_GPL drivers/clk/qcom/clk-qcom 0xd3135b41 qcom_cc_register_rcg_dfs +EXPORT_SYMBOL_GPL drivers/clk/qcom/clk-qcom 0xd7ab6782 clk_alpha_pll_postdiv_lucid_ops +EXPORT_SYMBOL_GPL drivers/clk/qcom/clk-qcom 0xd8d92954 clk_lucid_pll_configure +EXPORT_SYMBOL_GPL drivers/clk/qcom/clk-qcom 0xe133425f qcom_cc_map +EXPORT_SYMBOL_GPL drivers/clk/qcom/clk-qcom 0xe6e14638 clk_alpha_pll_fabia_ops +EXPORT_SYMBOL_GPL drivers/clk/qcom/clk-qcom 0xe816a036 clk_pll_configure_sr +EXPORT_SYMBOL_GPL drivers/counter/counter 0x01aab51b counter_count_direction_str +EXPORT_SYMBOL_GPL drivers/counter/counter 0x54e2be55 counter_device_enum_write +EXPORT_SYMBOL_GPL drivers/counter/counter 0x5c4db28b devm_counter_register +EXPORT_SYMBOL_GPL drivers/counter/counter 0x66f03983 counter_unregister +EXPORT_SYMBOL_GPL drivers/counter/counter 0x74947154 counter_count_enum_available_read +EXPORT_SYMBOL_GPL drivers/counter/counter 0x800ee1f5 counter_count_enum_write +EXPORT_SYMBOL_GPL drivers/counter/counter 0x857b6033 counter_device_enum_read +EXPORT_SYMBOL_GPL drivers/counter/counter 0x8cfbfee0 counter_device_enum_available_read +EXPORT_SYMBOL_GPL drivers/counter/counter 0xa5a0f4a7 counter_signal_enum_read +EXPORT_SYMBOL_GPL drivers/counter/counter 0xc482fd2c devm_counter_unregister +EXPORT_SYMBOL_GPL drivers/counter/counter 0xc799dcc1 counter_signal_enum_available_read +EXPORT_SYMBOL_GPL drivers/counter/counter 0xccab7878 counter_register +EXPORT_SYMBOL_GPL drivers/counter/counter 0xd704bde2 counter_signal_enum_write +EXPORT_SYMBOL_GPL drivers/counter/counter 0xdb587d55 counter_count_enum_read +EXPORT_SYMBOL_GPL drivers/counter/counter 0xee526d0f counter_count_mode_str +EXPORT_SYMBOL_GPL drivers/crypto/omap-crypto 0x701db540 omap_crypto_align_sg +EXPORT_SYMBOL_GPL drivers/crypto/omap-crypto 0xd5328478 omap_crypto_cleanup +EXPORT_SYMBOL_GPL drivers/dma/dw-edma/dw-edma 0x00e9b62f dw_edma_remove +EXPORT_SYMBOL_GPL drivers/dma/dw-edma/dw-edma 0xd2839fed dw_edma_probe +EXPORT_SYMBOL_GPL drivers/dma/dw/dw_dmac_core 0x4e5e46a5 dw_dma_probe +EXPORT_SYMBOL_GPL drivers/dma/dw/dw_dmac_core 0x66740560 dw_dma_filter +EXPORT_SYMBOL_GPL drivers/dma/dw/dw_dmac_core 0x8ce45d8c idma32_dma_probe +EXPORT_SYMBOL_GPL drivers/dma/dw/dw_dmac_core 0xa879b8a8 do_dw_dma_disable +EXPORT_SYMBOL_GPL drivers/dma/dw/dw_dmac_core 0xb210b551 dw_dma_remove +EXPORT_SYMBOL_GPL drivers/dma/dw/dw_dmac_core 0xde65aa6c do_dw_dma_enable +EXPORT_SYMBOL_GPL drivers/dma/dw/dw_dmac_core 0xf0609726 idma32_dma_remove +EXPORT_SYMBOL_GPL drivers/dma/fsl-edma-common 0x09b48728 fsl_edma_pause +EXPORT_SYMBOL_GPL drivers/dma/fsl-edma-common 0x122000ff fsl_edma_free_chan_resources +EXPORT_SYMBOL_GPL drivers/dma/fsl-edma-common 0x2dc19454 fsl_edma_alloc_chan_resources +EXPORT_SYMBOL_GPL drivers/dma/fsl-edma-common 0x44e3cf8a fsl_edma_resume +EXPORT_SYMBOL_GPL drivers/dma/fsl-edma-common 0x48af0b14 fsl_edma_setup_regs +EXPORT_SYMBOL_GPL drivers/dma/fsl-edma-common 0x4cf04475 fsl_edma_prep_slave_sg +EXPORT_SYMBOL_GPL drivers/dma/fsl-edma-common 0x92f28d67 fsl_edma_terminate_all +EXPORT_SYMBOL_GPL drivers/dma/fsl-edma-common 0xb9b0b3db fsl_edma_xfer_desc +EXPORT_SYMBOL_GPL drivers/dma/fsl-edma-common 0xbeef086c fsl_edma_chan_mux +EXPORT_SYMBOL_GPL drivers/dma/fsl-edma-common 0xbff4ca96 fsl_edma_cleanup_vchan +EXPORT_SYMBOL_GPL drivers/dma/fsl-edma-common 0xe048fa2f fsl_edma_tx_status +EXPORT_SYMBOL_GPL drivers/dma/fsl-edma-common 0xf2ddc7cb fsl_edma_prep_dma_cyclic +EXPORT_SYMBOL_GPL drivers/dma/fsl-edma-common 0xf5077239 fsl_edma_free_desc +EXPORT_SYMBOL_GPL drivers/dma/fsl-edma-common 0xf821368e fsl_edma_issue_pending +EXPORT_SYMBOL_GPL drivers/dma/fsl-edma-common 0xf8861432 fsl_edma_disable_request +EXPORT_SYMBOL_GPL drivers/dma/fsl-edma-common 0xfa1468f1 fsl_edma_slave_config +EXPORT_SYMBOL_GPL drivers/dma/qcom/hdma_mgmt 0x8660e133 hidma_mgmt_setup +EXPORT_SYMBOL_GPL drivers/dma/qcom/hdma_mgmt 0xc85caae6 hidma_mgmt_init_sys +EXPORT_SYMBOL_GPL drivers/firewire/firewire-core 0xe86fb5c7 fw_card_release +EXPORT_SYMBOL_GPL drivers/firmware/arm_scpi 0x3f9840cb get_scpi_ops +EXPORT_SYMBOL_GPL drivers/fpga/altera-pr-ip-core 0x4ac68bea alt_pr_unregister +EXPORT_SYMBOL_GPL drivers/fpga/altera-pr-ip-core 0xe0cab948 alt_pr_register +EXPORT_SYMBOL_GPL drivers/fpga/dfl 0x01fc2e22 dfl_fpga_dev_ops_unregister +EXPORT_SYMBOL_GPL drivers/fpga/dfl 0x0cf9a794 dfl_fpga_cdev_release_port +EXPORT_SYMBOL_GPL drivers/fpga/dfl 0x0dd013cc dfl_fpga_port_ops_get +EXPORT_SYMBOL_GPL drivers/fpga/dfl 0x1b239aa9 dfl_fpga_cdev_config_ports_vf +EXPORT_SYMBOL_GPL drivers/fpga/dfl 0x28963b21 dfl_fpga_port_ops_add +EXPORT_SYMBOL_GPL drivers/fpga/dfl 0x2c4ab237 dfl_fpga_cdev_assign_port +EXPORT_SYMBOL_GPL drivers/fpga/dfl 0x35463d3e dfl_fpga_enum_info_free +EXPORT_SYMBOL_GPL drivers/fpga/dfl 0x4ac79dec dfl_fpga_cdev_config_ports_pf +EXPORT_SYMBOL_GPL drivers/fpga/dfl 0x61f3662b dfl_fpga_dev_feature_uinit +EXPORT_SYMBOL_GPL drivers/fpga/dfl 0x806127ab dfl_fpga_port_ops_put +EXPORT_SYMBOL_GPL drivers/fpga/dfl 0x8bc2ca91 dfl_fpga_feature_devs_remove +EXPORT_SYMBOL_GPL drivers/fpga/dfl 0x9c9cff00 dfl_fpga_dev_ops_register +EXPORT_SYMBOL_GPL drivers/fpga/dfl 0x9e5d0afd dfl_fpga_port_ops_del +EXPORT_SYMBOL_GPL drivers/fpga/dfl 0xaba7df62 __dfl_fpga_cdev_find_port +EXPORT_SYMBOL_GPL drivers/fpga/dfl 0xaf1ebdd5 dfl_fpga_enum_info_alloc +EXPORT_SYMBOL_GPL drivers/fpga/dfl 0xbc9e62b7 dfl_fpga_dev_feature_init +EXPORT_SYMBOL_GPL drivers/fpga/dfl 0xc5c75886 dfl_fpga_enum_info_add_dfl +EXPORT_SYMBOL_GPL drivers/fpga/dfl 0xd8399cb8 dfl_fpga_check_port_id +EXPORT_SYMBOL_GPL drivers/fpga/dfl 0xe45efd81 dfl_fpga_feature_devs_enumerate +EXPORT_SYMBOL_GPL drivers/fpga/fpga-bridge 0x0633c4b9 fpga_bridges_enable +EXPORT_SYMBOL_GPL drivers/fpga/fpga-bridge 0x0ade092c of_fpga_bridge_get_to_list +EXPORT_SYMBOL_GPL drivers/fpga/fpga-bridge 0x0b2b884c fpga_bridges_put +EXPORT_SYMBOL_GPL drivers/fpga/fpga-bridge 0x2475b2b8 devm_fpga_bridge_create +EXPORT_SYMBOL_GPL drivers/fpga/fpga-bridge 0x2c8167cf fpga_bridges_disable +EXPORT_SYMBOL_GPL drivers/fpga/fpga-bridge 0x4639f7aa fpga_bridge_create +EXPORT_SYMBOL_GPL drivers/fpga/fpga-bridge 0x5373658f fpga_bridge_put +EXPORT_SYMBOL_GPL drivers/fpga/fpga-bridge 0x895556ee fpga_bridge_unregister +EXPORT_SYMBOL_GPL drivers/fpga/fpga-bridge 0xa752cd77 fpga_bridge_get_to_list +EXPORT_SYMBOL_GPL drivers/fpga/fpga-bridge 0xb0b04ad8 fpga_bridge_free +EXPORT_SYMBOL_GPL drivers/fpga/fpga-bridge 0xb20e4d92 fpga_bridge_enable +EXPORT_SYMBOL_GPL drivers/fpga/fpga-bridge 0xc7978bf4 fpga_bridge_disable +EXPORT_SYMBOL_GPL drivers/fpga/fpga-bridge 0xcf85542a fpga_bridge_register +EXPORT_SYMBOL_GPL drivers/fpga/fpga-bridge 0xda6162af of_fpga_bridge_get +EXPORT_SYMBOL_GPL drivers/fpga/fpga-bridge 0xe206713a fpga_bridge_get +EXPORT_SYMBOL_GPL drivers/fpga/fpga-mgr 0x07e364f4 devm_fpga_mgr_create +EXPORT_SYMBOL_GPL drivers/fpga/fpga-mgr 0x147ca5f3 fpga_image_info_alloc +EXPORT_SYMBOL_GPL drivers/fpga/fpga-mgr 0x14af6709 fpga_mgr_put +EXPORT_SYMBOL_GPL drivers/fpga/fpga-mgr 0x4d5b89b9 fpga_mgr_load +EXPORT_SYMBOL_GPL drivers/fpga/fpga-mgr 0x55716c1d fpga_mgr_lock +EXPORT_SYMBOL_GPL drivers/fpga/fpga-mgr 0x74f95b14 of_fpga_mgr_get +EXPORT_SYMBOL_GPL drivers/fpga/fpga-mgr 0x819359f5 fpga_image_info_free +EXPORT_SYMBOL_GPL drivers/fpga/fpga-mgr 0x86d79cc4 fpga_mgr_create +EXPORT_SYMBOL_GPL drivers/fpga/fpga-mgr 0xa9cc029f fpga_mgr_free +EXPORT_SYMBOL_GPL drivers/fpga/fpga-mgr 0xe3a05ae7 fpga_mgr_unregister +EXPORT_SYMBOL_GPL drivers/fpga/fpga-mgr 0xf303788b fpga_mgr_get +EXPORT_SYMBOL_GPL drivers/fpga/fpga-mgr 0xf407a468 fpga_mgr_unlock +EXPORT_SYMBOL_GPL drivers/fpga/fpga-mgr 0xf84980bf fpga_mgr_register +EXPORT_SYMBOL_GPL drivers/fpga/fpga-region 0x03367e13 fpga_region_program_fpga +EXPORT_SYMBOL_GPL drivers/fpga/fpga-region 0x3987e3b3 fpga_region_free +EXPORT_SYMBOL_GPL drivers/fpga/fpga-region 0x547c4616 devm_fpga_region_create +EXPORT_SYMBOL_GPL drivers/fpga/fpga-region 0x57064a89 fpga_region_register +EXPORT_SYMBOL_GPL drivers/fpga/fpga-region 0x5a2a7bdd fpga_region_class_find +EXPORT_SYMBOL_GPL drivers/fpga/fpga-region 0x71b60bc9 fpga_region_create +EXPORT_SYMBOL_GPL drivers/fpga/fpga-region 0x8d41c753 fpga_region_unregister +EXPORT_SYMBOL_GPL drivers/fsi/fsi-core 0x02dcc29c fsi_cdev_type +EXPORT_SYMBOL_GPL drivers/fsi/fsi-core 0x1c9fb6fb fsi_master_unregister +EXPORT_SYMBOL_GPL drivers/fsi/fsi-core 0x3a93847e fsi_slave_claim_range +EXPORT_SYMBOL_GPL drivers/fsi/fsi-core 0x3ac421c9 fsi_device_read +EXPORT_SYMBOL_GPL drivers/fsi/fsi-core 0x5a57d574 fsi_free_minor +EXPORT_SYMBOL_GPL drivers/fsi/fsi-core 0x5f39cb55 fsi_master_register +EXPORT_SYMBOL_GPL drivers/fsi/fsi-core 0x60a97912 fsi_slave_write +EXPORT_SYMBOL_GPL drivers/fsi/fsi-core 0x7bbcdcc6 fsi_driver_unregister +EXPORT_SYMBOL_GPL drivers/fsi/fsi-core 0x88aaecdd fsi_device_write +EXPORT_SYMBOL_GPL drivers/fsi/fsi-core 0xa366faa1 fsi_driver_register +EXPORT_SYMBOL_GPL drivers/fsi/fsi-core 0xb71b7e1c fsi_get_new_minor +EXPORT_SYMBOL_GPL drivers/fsi/fsi-core 0xce22aee2 fsi_slave_release_range +EXPORT_SYMBOL_GPL drivers/fsi/fsi-core 0xced56120 fsi_bus_type +EXPORT_SYMBOL_GPL drivers/fsi/fsi-core 0xe172715c fsi_master_rescan +EXPORT_SYMBOL_GPL drivers/fsi/fsi-core 0xe4ac7aa2 fsi_slave_read +EXPORT_SYMBOL_GPL drivers/fsi/fsi-occ 0x62fbed3b fsi_occ_submit +EXPORT_SYMBOL_GPL drivers/fsi/fsi-sbefifo 0x84fb3521 sbefifo_submit +EXPORT_SYMBOL_GPL drivers/fsi/fsi-sbefifo 0xb2e65dd4 sbefifo_parse_status +EXPORT_SYMBOL_GPL drivers/gnss/gnss 0x0292d115 gnss_allocate_device +EXPORT_SYMBOL_GPL drivers/gnss/gnss 0x4b242c5e gnss_register_device +EXPORT_SYMBOL_GPL drivers/gnss/gnss 0x58cb5fed gnss_insert_raw +EXPORT_SYMBOL_GPL drivers/gnss/gnss 0x9a4c238e gnss_deregister_device +EXPORT_SYMBOL_GPL drivers/gnss/gnss 0xb49add59 gnss_put_device +EXPORT_SYMBOL_GPL drivers/gnss/gnss-serial 0x5d543b45 gnss_serial_free +EXPORT_SYMBOL_GPL drivers/gnss/gnss-serial 0x8e7fd709 gnss_serial_register +EXPORT_SYMBOL_GPL drivers/gnss/gnss-serial 0xa29398ca gnss_serial_allocate +EXPORT_SYMBOL_GPL drivers/gnss/gnss-serial 0xa60768a4 gnss_serial_deregister +EXPORT_SYMBOL_GPL drivers/gnss/gnss-serial 0xdb69d1f3 gnss_serial_pm_ops +EXPORT_SYMBOL_GPL drivers/gpio/gpio-aspeed 0x5dcbe46c aspeed_gpio_copro_set_ops +EXPORT_SYMBOL_GPL drivers/gpio/gpio-aspeed 0x5e87bfb8 aspeed_gpio_copro_grab_gpio +EXPORT_SYMBOL_GPL drivers/gpio/gpio-aspeed 0x6c10e9cc aspeed_gpio_copro_release_gpio +EXPORT_SYMBOL_GPL drivers/gpio/gpio-max730x 0x0fdea4e7 __max730x_remove +EXPORT_SYMBOL_GPL drivers/gpio/gpio-max730x 0xfb72ec1b __max730x_probe +EXPORT_SYMBOL_GPL drivers/gpu/drm/bridge/analogix/analogix_dp 0x248b1d1e analogix_dp_unbind +EXPORT_SYMBOL_GPL drivers/gpu/drm/bridge/analogix/analogix_dp 0x4dd335af analogix_dp_resume +EXPORT_SYMBOL_GPL drivers/gpu/drm/bridge/analogix/analogix_dp 0x7b837692 analogix_dp_start_crc +EXPORT_SYMBOL_GPL drivers/gpu/drm/bridge/analogix/analogix_dp 0x7e657309 analogix_dp_probe +EXPORT_SYMBOL_GPL drivers/gpu/drm/bridge/analogix/analogix_dp 0xc67af2b1 analogix_dp_suspend +EXPORT_SYMBOL_GPL drivers/gpu/drm/bridge/analogix/analogix_dp 0xca7eca4f analogix_dp_remove +EXPORT_SYMBOL_GPL drivers/gpu/drm/bridge/analogix/analogix_dp 0xd820b4ab analogix_dp_bind +EXPORT_SYMBOL_GPL drivers/gpu/drm/bridge/analogix/analogix_dp 0xe4978c9d anx_dp_aux_transfer +EXPORT_SYMBOL_GPL drivers/gpu/drm/bridge/analogix/analogix_dp 0xfaa1255f analogix_dp_stop_crc +EXPORT_SYMBOL_GPL drivers/gpu/drm/bridge/synopsys/dw-hdmi 0x09340e05 dw_hdmi_set_channel_count +EXPORT_SYMBOL_GPL drivers/gpu/drm/bridge/synopsys/dw-hdmi 0x094f6fc5 dw_hdmi_phy_i2c_set_addr +EXPORT_SYMBOL_GPL drivers/gpu/drm/bridge/synopsys/dw-hdmi 0x1461e227 dw_hdmi_set_channel_status +EXPORT_SYMBOL_GPL drivers/gpu/drm/bridge/synopsys/dw-hdmi 0x157e02b6 dw_hdmi_phy_reset +EXPORT_SYMBOL_GPL drivers/gpu/drm/bridge/synopsys/dw-hdmi 0x2d1c0e80 dw_hdmi_setup_rx_sense +EXPORT_SYMBOL_GPL drivers/gpu/drm/bridge/synopsys/dw-hdmi 0x2fac9436 dw_hdmi_set_channel_allocation +EXPORT_SYMBOL_GPL drivers/gpu/drm/bridge/synopsys/dw-hdmi 0x316212a8 dw_hdmi_unbind +EXPORT_SYMBOL_GPL drivers/gpu/drm/bridge/synopsys/dw-hdmi 0x42926f4a dw_hdmi_resume +EXPORT_SYMBOL_GPL drivers/gpu/drm/bridge/synopsys/dw-hdmi 0x4a9b174f dw_hdmi_remove +EXPORT_SYMBOL_GPL drivers/gpu/drm/bridge/synopsys/dw-hdmi 0x6712b5a7 dw_hdmi_phy_gen2_txpwron +EXPORT_SYMBOL_GPL drivers/gpu/drm/bridge/synopsys/dw-hdmi 0x7d8a3aee dw_hdmi_phy_i2c_write +EXPORT_SYMBOL_GPL drivers/gpu/drm/bridge/synopsys/dw-hdmi 0x822671f9 dw_hdmi_set_high_tmds_clock_ratio +EXPORT_SYMBOL_GPL drivers/gpu/drm/bridge/synopsys/dw-hdmi 0x8dcd6f43 dw_hdmi_set_sample_rate +EXPORT_SYMBOL_GPL drivers/gpu/drm/bridge/synopsys/dw-hdmi 0x9b44a60b dw_hdmi_phy_gen2_pddq +EXPORT_SYMBOL_GPL drivers/gpu/drm/bridge/synopsys/dw-hdmi 0xb2876bb2 dw_hdmi_set_plugged_cb +EXPORT_SYMBOL_GPL drivers/gpu/drm/bridge/synopsys/dw-hdmi 0xcaf75e5b dw_hdmi_probe +EXPORT_SYMBOL_GPL drivers/gpu/drm/bridge/synopsys/dw-hdmi 0xce27012a dw_hdmi_audio_disable +EXPORT_SYMBOL_GPL drivers/gpu/drm/bridge/synopsys/dw-hdmi 0xd6968220 dw_hdmi_phy_setup_hpd +EXPORT_SYMBOL_GPL drivers/gpu/drm/bridge/synopsys/dw-hdmi 0xd8fe547b dw_hdmi_audio_enable +EXPORT_SYMBOL_GPL drivers/gpu/drm/bridge/synopsys/dw-hdmi 0xdafa1790 dw_hdmi_phy_read_hpd +EXPORT_SYMBOL_GPL drivers/gpu/drm/bridge/synopsys/dw-hdmi 0xefe6986b dw_hdmi_bind +EXPORT_SYMBOL_GPL drivers/gpu/drm/bridge/synopsys/dw-hdmi 0xf5922009 dw_hdmi_phy_update_hpd +EXPORT_SYMBOL_GPL drivers/gpu/drm/bridge/synopsys/dw-mipi-dsi 0x0d667204 dw_mipi_dsi_unbind +EXPORT_SYMBOL_GPL drivers/gpu/drm/bridge/synopsys/dw-mipi-dsi 0x22f1adb7 dw_mipi_dsi_probe +EXPORT_SYMBOL_GPL drivers/gpu/drm/bridge/synopsys/dw-mipi-dsi 0x41361ae4 dw_mipi_dsi_set_slave +EXPORT_SYMBOL_GPL drivers/gpu/drm/bridge/synopsys/dw-mipi-dsi 0x42ac3b2e dw_mipi_dsi_remove +EXPORT_SYMBOL_GPL drivers/gpu/drm/bridge/synopsys/dw-mipi-dsi 0x64adc439 dw_mipi_dsi_bind +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm 0x0923ecdd drm_bridge_hpd_notify +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm 0x1d6ec267 drm_display_mode_to_videomode +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm 0x1db38ef9 drm_gem_cma_free_object +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm 0x1ff2f758 drm_gem_shmem_dumb_create +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm 0x2479a1e7 drm_gem_cma_prime_mmap +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm 0x2a2923d5 drm_crtc_add_crc_entry +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm 0x313f29c8 drm_of_component_match_add +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm 0x34a092ec drm_bridge_get_edid +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm 0x39fed264 drm_bridge_hpd_enable +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm 0x483c9747 drm_class_device_register +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm 0x483ebb9d drm_gem_cma_prime_get_sg_table +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm 0x49b5ab2e drm_get_unmapped_area +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm 0x4d0db7f2 drm_gem_shmem_get_sg_table +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm 0x4e1125c4 drm_gem_cma_vm_ops +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm 0x512277f7 drm_class_device_unregister +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm 0x51d2dd85 drm_gem_cma_mmap +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm 0x6606bdbe drm_of_lvds_get_dual_link_pixel_order +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm 0x68b7858d drm_display_mode_from_videomode +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm 0x6f6c533f drm_gem_cma_prime_vunmap +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm 0x7142c488 drm_do_get_edid +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm 0x7289d009 drm_gem_shmem_free_object +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm 0x794787c9 drm_gem_shmem_mmap +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm 0x8b4c71af drm_gem_shmem_get_pages_sgt +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm 0x8d7fcfd1 drmm_kstrdup +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm 0x9736dd86 drm_bridge_hpd_disable +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm 0x99a075ed drm_gem_cma_dumb_create +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm 0x9e5e2362 drm_bridge_get_modes +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm 0xa3e4706e drm_gem_cma_dumb_create_internal +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm 0xa4242c9e drm_gem_shmem_prime_import_sg_table +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm 0xa83d213a drm_bridge_detect +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm 0xad4419fd drm_of_find_panel_or_bridge +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm 0xad885165 drm_bus_flags_from_videomode +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm 0xbd2fa26d drm_gem_cma_create +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm 0xbdf7f373 drm_hdcp_check_ksvs_revoked +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm 0xd7e20861 of_get_drm_display_mode +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm 0xdb3d68ba drm_gem_cma_prime_vmap +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm 0xddf4c0b4 drm_gem_shmem_create +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm 0xecf0e6bc drm_gem_cma_prime_import_sg_table +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm 0xf2ed04a8 drm_of_encoder_active_endpoint +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm 0xf3edc26e drm_gem_dumb_map_offset +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm_kms_helper 0x0a4990c6 drm_gem_fb_create_with_dirty +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm_kms_helper 0x3c91dddd drm_gem_fb_get_obj +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm_kms_helper 0x65fb49bc drm_gem_fb_afbc_init +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm_kms_helper 0x87ffa28a drm_gem_fb_create +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm_kms_helper 0x8e2b42d4 drm_gem_fb_init_with_funcs +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm_kms_helper 0xba4254a5 drm_bridge_connector_init +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm_kms_helper 0xbec2e9f1 drm_gem_fb_prepare_fb +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm_kms_helper 0xc7df1fe3 drm_gem_fb_create_with_funcs +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm_kms_helper 0xd50163e0 drm_bridge_connector_enable_hpd +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm_kms_helper 0xdf98eee7 drm_fb_cma_get_gem_obj +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm_kms_helper 0xe89597c5 drm_bridge_connector_disable_hpd +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm_kms_helper 0xfb33f1bf drm_fb_cma_get_gem_addr +EXPORT_SYMBOL_GPL drivers/gpu/drm/imx/imxdrm 0x053080f5 imx_drm_connector_destroy +EXPORT_SYMBOL_GPL drivers/gpu/drm/imx/imxdrm 0x90dbf153 ipu_planes_assign_pre +EXPORT_SYMBOL_GPL drivers/gpu/drm/imx/imxdrm 0x9b2adae4 ipu_plane_disable_deferred +EXPORT_SYMBOL_GPL drivers/gpu/drm/imx/imxdrm 0xc8653729 imx_drm_encoder_parse_of +EXPORT_SYMBOL_GPL drivers/gpu/drm/mcde/mcde_drm 0x84407338 mcde_display_init +EXPORT_SYMBOL_GPL drivers/gpu/drm/meson/meson-drm 0x2c73cfcf meson_venc_hdmi_venc_repeat +EXPORT_SYMBOL_GPL drivers/gpu/drm/meson/meson-drm 0x693296ad meson_vclk_vic_supported_freq +EXPORT_SYMBOL_GPL drivers/gpu/drm/meson/meson-drm 0x6dc0d6b5 meson_vclk_setup +EXPORT_SYMBOL_GPL drivers/gpu/drm/meson/meson-drm 0x94bf1378 meson_venc_hdmi_mode_set +EXPORT_SYMBOL_GPL drivers/gpu/drm/meson/meson-drm 0xab5bee2f meson_venc_hdmi_supported_vic +EXPORT_SYMBOL_GPL drivers/gpu/drm/meson/meson-drm 0xd23e0e01 meson_vclk_dmt_supported_freq +EXPORT_SYMBOL_GPL drivers/gpu/drm/meson/meson-drm 0xfd34888c meson_venc_hdmi_supported_mode +EXPORT_SYMBOL_GPL drivers/gpu/drm/pl111/pl111_drm 0x52718d55 pl111_versatile_init +EXPORT_SYMBOL_GPL drivers/gpu/drm/rcar-du/rcar_cmm 0x086782f9 rcar_cmm_disable +EXPORT_SYMBOL_GPL drivers/gpu/drm/rcar-du/rcar_cmm 0x1550c9a7 rcar_cmm_setup +EXPORT_SYMBOL_GPL drivers/gpu/drm/rcar-du/rcar_cmm 0x29d427e3 rcar_cmm_enable +EXPORT_SYMBOL_GPL drivers/gpu/drm/rcar-du/rcar_cmm 0x985a5ab2 rcar_cmm_init +EXPORT_SYMBOL_GPL drivers/gpu/drm/rcar-du/rcar_lvds 0x0be61e4d rcar_lvds_clk_disable +EXPORT_SYMBOL_GPL drivers/gpu/drm/rcar-du/rcar_lvds 0x31b368c7 rcar_lvds_dual_link +EXPORT_SYMBOL_GPL drivers/gpu/drm/rcar-du/rcar_lvds 0x6a4ca965 rcar_lvds_clk_enable +EXPORT_SYMBOL_GPL drivers/gpu/drm/rockchip/rockchipdrm 0x060ef581 vop_component_ops +EXPORT_SYMBOL_GPL drivers/gpu/drm/rockchip/rockchipdrm 0xe97a409b rockchip_rgb_init +EXPORT_SYMBOL_GPL drivers/gpu/drm/rockchip/rockchipdrm 0xfead7585 rockchip_rgb_fini +EXPORT_SYMBOL_GPL drivers/gpu/ipu-v3/imx-ipu-v3 0x01f4ee1f ipu_image_convert_adjust +EXPORT_SYMBOL_GPL drivers/gpu/ipu-v3/imx-ipu-v3 0x0252165f ipu_prg_channel_configure +EXPORT_SYMBOL_GPL drivers/gpu/ipu-v3/imx-ipu-v3 0x034e4f9b ipu_idmac_clear_buffer +EXPORT_SYMBOL_GPL drivers/gpu/ipu-v3/imx-ipu-v3 0x04742f4b ipu_idmac_enable_watermark +EXPORT_SYMBOL_GPL drivers/gpu/ipu-v3/imx-ipu-v3 0x050f0d7b ipu_di_adjust_videomode +EXPORT_SYMBOL_GPL drivers/gpu/ipu-v3/imx-ipu-v3 0x07036df2 ipu_ic_calc_csc +EXPORT_SYMBOL_GPL drivers/gpu/ipu-v3/imx-ipu-v3 0x0728116a ipu_csi_disable +EXPORT_SYMBOL_GPL drivers/gpu/ipu-v3/imx-ipu-v3 0x0b4ec668 ipu_cpmem_zero +EXPORT_SYMBOL_GPL drivers/gpu/ipu-v3/imx-ipu-v3 0x0e42bd95 ipu_csi_set_dest +EXPORT_SYMBOL_GPL drivers/gpu/ipu-v3/imx-ipu-v3 0x0eccd631 ipu_dump +EXPORT_SYMBOL_GPL drivers/gpu/ipu-v3/imx-ipu-v3 0x118160e1 ipu_ic_enable +EXPORT_SYMBOL_GPL drivers/gpu/ipu-v3/imx-ipu-v3 0x1348ad5a ipu_ic_task_idma_init +EXPORT_SYMBOL_GPL drivers/gpu/ipu-v3/imx-ipu-v3 0x13952dfe ipu_dmfc_enable_channel +EXPORT_SYMBOL_GPL drivers/gpu/ipu-v3/imx-ipu-v3 0x15ec2ba5 ipu_di_put +EXPORT_SYMBOL_GPL drivers/gpu/ipu-v3/imx-ipu-v3 0x1708d126 ipu_idmac_unlink +EXPORT_SYMBOL_GPL drivers/gpu/ipu-v3/imx-ipu-v3 0x18730251 ipu_rot_mode_to_degrees +EXPORT_SYMBOL_GPL drivers/gpu/ipu-v3/imx-ipu-v3 0x18aa0dcd ipu_image_convert_abort +EXPORT_SYMBOL_GPL drivers/gpu/ipu-v3/imx-ipu-v3 0x1e913d9f ipu_csi_get_window +EXPORT_SYMBOL_GPL drivers/gpu/ipu-v3/imx-ipu-v3 0x20e09f6f ipu_csi_set_mipi_datatype +EXPORT_SYMBOL_GPL drivers/gpu/ipu-v3/imx-ipu-v3 0x23aaa71f ipu_idmac_wait_busy +EXPORT_SYMBOL_GPL drivers/gpu/ipu-v3/imx-ipu-v3 0x2424c9a6 ipu_csi_is_interlaced +EXPORT_SYMBOL_GPL drivers/gpu/ipu-v3/imx-ipu-v3 0x258a4439 ipu_image_convert_queue +EXPORT_SYMBOL_GPL drivers/gpu/ipu-v3/imx-ipu-v3 0x2adf0f00 ipu_cpmem_skip_odd_chroma_rows +EXPORT_SYMBOL_GPL drivers/gpu/ipu-v3/imx-ipu-v3 0x2cf7ed72 ipu_dc_init_sync +EXPORT_SYMBOL_GPL drivers/gpu/ipu-v3/imx-ipu-v3 0x2e825a67 ipu_smfc_set_watermark +EXPORT_SYMBOL_GPL drivers/gpu/ipu-v3/imx-ipu-v3 0x2f92d651 ipu_ic_task_enable +EXPORT_SYMBOL_GPL drivers/gpu/ipu-v3/imx-ipu-v3 0x3020d65c ipu_prg_max_active_channels +EXPORT_SYMBOL_GPL drivers/gpu/ipu-v3/imx-ipu-v3 0x3166aec7 ipu_dmfc_disable_channel +EXPORT_SYMBOL_GPL drivers/gpu/ipu-v3/imx-ipu-v3 0x34fd07c8 ipu_cpmem_set_rotation +EXPORT_SYMBOL_GPL drivers/gpu/ipu-v3/imx-ipu-v3 0x37c33dcf ipu_cpmem_set_uv_offset +EXPORT_SYMBOL_GPL drivers/gpu/ipu-v3/imx-ipu-v3 0x38a62f32 ipu_dp_disable +EXPORT_SYMBOL_GPL drivers/gpu/ipu-v3/imx-ipu-v3 0x3d8f18f6 __ipu_ic_calc_csc +EXPORT_SYMBOL_GPL drivers/gpu/ipu-v3/imx-ipu-v3 0x3da8fd97 ipu_idmac_select_buffer +EXPORT_SYMBOL_GPL drivers/gpu/ipu-v3/imx-ipu-v3 0x3e86ea72 ipu_di_get_num +EXPORT_SYMBOL_GPL drivers/gpu/ipu-v3/imx-ipu-v3 0x4114b80f ipu_cpmem_set_format_passthrough +EXPORT_SYMBOL_GPL drivers/gpu/ipu-v3/imx-ipu-v3 0x418a282f ipu_drm_fourcc_to_colorspace +EXPORT_SYMBOL_GPL drivers/gpu/ipu-v3/imx-ipu-v3 0x4244759f ipu_dc_enable +EXPORT_SYMBOL_GPL drivers/gpu/ipu-v3/imx-ipu-v3 0x428b3432 ipu_dmfc_get +EXPORT_SYMBOL_GPL drivers/gpu/ipu-v3/imx-ipu-v3 0x42d3d500 ipu_image_convert_unprepare +EXPORT_SYMBOL_GPL drivers/gpu/ipu-v3/imx-ipu-v3 0x4431a2df ipu_idmac_put +EXPORT_SYMBOL_GPL drivers/gpu/ipu-v3/imx-ipu-v3 0x4917f47a ipu_ic_dump +EXPORT_SYMBOL_GPL drivers/gpu/ipu-v3/imx-ipu-v3 0x498b4c7b ipu_image_convert_enum_format +EXPORT_SYMBOL_GPL drivers/gpu/ipu-v3/imx-ipu-v3 0x4a13614c ipu_csi_get +EXPORT_SYMBOL_GPL drivers/gpu/ipu-v3/imx-ipu-v3 0x4af8f410 ipu_module_disable +EXPORT_SYMBOL_GPL drivers/gpu/ipu-v3/imx-ipu-v3 0x4c179b49 ipu_dp_put +EXPORT_SYMBOL_GPL drivers/gpu/ipu-v3/imx-ipu-v3 0x4d232623 ipu_cpmem_set_yuv_interleaved +EXPORT_SYMBOL_GPL drivers/gpu/ipu-v3/imx-ipu-v3 0x51475e87 ipu_dmfc_put +EXPORT_SYMBOL_GPL drivers/gpu/ipu-v3/imx-ipu-v3 0x527f3b94 ipu_smfc_set_burstsize +EXPORT_SYMBOL_GPL drivers/gpu/ipu-v3/imx-ipu-v3 0x53de277c ipu_di_enable +EXPORT_SYMBOL_GPL drivers/gpu/ipu-v3/imx-ipu-v3 0x55767280 ipu_vdi_set_motion +EXPORT_SYMBOL_GPL drivers/gpu/ipu-v3/imx-ipu-v3 0x57801c91 ipu_di_get +EXPORT_SYMBOL_GPL drivers/gpu/ipu-v3/imx-ipu-v3 0x57f20950 ipu_cpmem_get_burstsize +EXPORT_SYMBOL_GPL drivers/gpu/ipu-v3/imx-ipu-v3 0x580d2f81 ipu_vdi_put +EXPORT_SYMBOL_GPL drivers/gpu/ipu-v3/imx-ipu-v3 0x5b15aea8 ipu_dp_disable_channel +EXPORT_SYMBOL_GPL drivers/gpu/ipu-v3/imx-ipu-v3 0x5cae270a ipu_vdi_unsetup +EXPORT_SYMBOL_GPL drivers/gpu/ipu-v3/imx-ipu-v3 0x5e4a802e ipu_set_ic_src_mux +EXPORT_SYMBOL_GPL drivers/gpu/ipu-v3/imx-ipu-v3 0x602fbbc8 ipu_srm_dp_update +EXPORT_SYMBOL_GPL drivers/gpu/ipu-v3/imx-ipu-v3 0x60bdf2ec ipu_csi_put +EXPORT_SYMBOL_GPL drivers/gpu/ipu-v3/imx-ipu-v3 0x623722e2 ipu_ic_task_disable +EXPORT_SYMBOL_GPL drivers/gpu/ipu-v3/imx-ipu-v3 0x62be8454 ipu_prg_channel_disable +EXPORT_SYMBOL_GPL drivers/gpu/ipu-v3/imx-ipu-v3 0x63593ec7 ipu_csi_init_interface +EXPORT_SYMBOL_GPL drivers/gpu/ipu-v3/imx-ipu-v3 0x64031ebc ipu_idmac_enable_channel +EXPORT_SYMBOL_GPL drivers/gpu/ipu-v3/imx-ipu-v3 0x66e729d2 ipu_mbus_code_to_colorspace +EXPORT_SYMBOL_GPL drivers/gpu/ipu-v3/imx-ipu-v3 0x68d0d6a8 ipu_cpmem_set_yuv_planar_full +EXPORT_SYMBOL_GPL drivers/gpu/ipu-v3/imx-ipu-v3 0x6d17d9d5 ipu_prg_channel_configure_pending +EXPORT_SYMBOL_GPL drivers/gpu/ipu-v3/imx-ipu-v3 0x7068e939 ipu_dc_put +EXPORT_SYMBOL_GPL drivers/gpu/ipu-v3/imx-ipu-v3 0x747eaf4e ipu_image_convert_verify +EXPORT_SYMBOL_GPL drivers/gpu/ipu-v3/imx-ipu-v3 0x76e4c358 ipu_image_convert_prepare +EXPORT_SYMBOL_GPL drivers/gpu/ipu-v3/imx-ipu-v3 0x794468c5 ipu_idmac_channel_irq +EXPORT_SYMBOL_GPL drivers/gpu/ipu-v3/imx-ipu-v3 0x7c485045 ipu_prg_enable +EXPORT_SYMBOL_GPL drivers/gpu/ipu-v3/imx-ipu-v3 0x806ee405 ipu_image_convert_sync +EXPORT_SYMBOL_GPL drivers/gpu/ipu-v3/imx-ipu-v3 0x80a9aece ipu_cpmem_set_resolution +EXPORT_SYMBOL_GPL drivers/gpu/ipu-v3/imx-ipu-v3 0x80e1ceb7 ipu_fsu_unlink +EXPORT_SYMBOL_GPL drivers/gpu/ipu-v3/imx-ipu-v3 0x81d9995d ipu_fsu_link +EXPORT_SYMBOL_GPL drivers/gpu/ipu-v3/imx-ipu-v3 0x83a73292 ipu_dc_disable +EXPORT_SYMBOL_GPL drivers/gpu/ipu-v3/imx-ipu-v3 0x8497c7d4 ipu_degrees_to_rot_mode +EXPORT_SYMBOL_GPL drivers/gpu/ipu-v3/imx-ipu-v3 0x85e84b79 ipu_idmac_buffer_is_ready +EXPORT_SYMBOL_GPL drivers/gpu/ipu-v3/imx-ipu-v3 0x886c35aa ipu_smfc_map_channel +EXPORT_SYMBOL_GPL drivers/gpu/ipu-v3/imx-ipu-v3 0x8eb22643 ipu_dp_set_global_alpha +EXPORT_SYMBOL_GPL drivers/gpu/ipu-v3/imx-ipu-v3 0x8ece82bd ipu_pixelformat_is_planar +EXPORT_SYMBOL_GPL drivers/gpu/ipu-v3/imx-ipu-v3 0x8ef11ea1 ipu_prg_present +EXPORT_SYMBOL_GPL drivers/gpu/ipu-v3/imx-ipu-v3 0x8f14955a ipu_idmac_channel_busy +EXPORT_SYMBOL_GPL drivers/gpu/ipu-v3/imx-ipu-v3 0x9058e289 ipu_smfc_put +EXPORT_SYMBOL_GPL drivers/gpu/ipu-v3/imx-ipu-v3 0x91ce1a04 ipu_dp_set_window_pos +EXPORT_SYMBOL_GPL drivers/gpu/ipu-v3/imx-ipu-v3 0x951a09d5 ipu_csi_enable +EXPORT_SYMBOL_GPL drivers/gpu/ipu-v3/imx-ipu-v3 0x95a1f900 ipu_idmac_disable_channel +EXPORT_SYMBOL_GPL drivers/gpu/ipu-v3/imx-ipu-v3 0x97f08d2f ipu_ic_task_init +EXPORT_SYMBOL_GPL drivers/gpu/ipu-v3/imx-ipu-v3 0x99363e76 ipu_prg_format_supported +EXPORT_SYMBOL_GPL drivers/gpu/ipu-v3/imx-ipu-v3 0x9f38e177 ipu_dp_enable_channel +EXPORT_SYMBOL_GPL drivers/gpu/ipu-v3/imx-ipu-v3 0xa4b0cabd ipu_dc_disable_channel +EXPORT_SYMBOL_GPL drivers/gpu/ipu-v3/imx-ipu-v3 0xa60b144b ipu_csi_set_window +EXPORT_SYMBOL_GPL drivers/gpu/ipu-v3/imx-ipu-v3 0xa671dfcf ipu_map_irq +EXPORT_SYMBOL_GPL drivers/gpu/ipu-v3/imx-ipu-v3 0xa8adc101 ipu_pixelformat_to_colorspace +EXPORT_SYMBOL_GPL drivers/gpu/ipu-v3/imx-ipu-v3 0xa96882d8 ipu_ic_disable +EXPORT_SYMBOL_GPL drivers/gpu/ipu-v3/imx-ipu-v3 0xb556678d ipu_cpmem_dump +EXPORT_SYMBOL_GPL drivers/gpu/ipu-v3/imx-ipu-v3 0xba458b8f ipu_csi_set_test_generator +EXPORT_SYMBOL_GPL drivers/gpu/ipu-v3/imx-ipu-v3 0xbd18d210 ipu_get_num +EXPORT_SYMBOL_GPL drivers/gpu/ipu-v3/imx-ipu-v3 0xbf983ba6 ipu_vdi_set_field_order +EXPORT_SYMBOL_GPL drivers/gpu/ipu-v3/imx-ipu-v3 0xc080e4b5 ipu_dc_get +EXPORT_SYMBOL_GPL drivers/gpu/ipu-v3/imx-ipu-v3 0xc30cfe02 ipu_cpmem_set_axi_id +EXPORT_SYMBOL_GPL drivers/gpu/ipu-v3/imx-ipu-v3 0xc3605ae8 ipu_cpmem_set_stride +EXPORT_SYMBOL_GPL drivers/gpu/ipu-v3/imx-ipu-v3 0xc3c2cdb0 ipu_smfc_disable +EXPORT_SYMBOL_GPL drivers/gpu/ipu-v3/imx-ipu-v3 0xc4710e3f ipu_idmac_get +EXPORT_SYMBOL_GPL drivers/gpu/ipu-v3/imx-ipu-v3 0xc4af2e81 ipu_dmfc_config_wait4eot +EXPORT_SYMBOL_GPL drivers/gpu/ipu-v3/imx-ipu-v3 0xc4b15642 ipu_csi_set_skip_smfc +EXPORT_SYMBOL_GPL drivers/gpu/ipu-v3/imx-ipu-v3 0xc6675aa9 ipu_csi_dump +EXPORT_SYMBOL_GPL drivers/gpu/ipu-v3/imx-ipu-v3 0xc677177d ipu_smfc_enable +EXPORT_SYMBOL_GPL drivers/gpu/ipu-v3/imx-ipu-v3 0xc97e7a0f ipu_di_disable +EXPORT_SYMBOL_GPL drivers/gpu/ipu-v3/imx-ipu-v3 0xcbea3eec ipu_di_init_sync_panel +EXPORT_SYMBOL_GPL drivers/gpu/ipu-v3/imx-ipu-v3 0xcc7a5d75 ipu_prg_disable +EXPORT_SYMBOL_GPL drivers/gpu/ipu-v3/imx-ipu-v3 0xcd54eb3d ipu_ic_get +EXPORT_SYMBOL_GPL drivers/gpu/ipu-v3/imx-ipu-v3 0xcd7fbaa4 ipu_ic_task_graphics_init +EXPORT_SYMBOL_GPL drivers/gpu/ipu-v3/imx-ipu-v3 0xce10db35 ipu_stride_to_bytes +EXPORT_SYMBOL_GPL drivers/gpu/ipu-v3/imx-ipu-v3 0xcee639e3 ipu_dp_enable +EXPORT_SYMBOL_GPL drivers/gpu/ipu-v3/imx-ipu-v3 0xd24df879 ipu_idmac_get_current_buffer +EXPORT_SYMBOL_GPL drivers/gpu/ipu-v3/imx-ipu-v3 0xd2724247 ipu_cpmem_set_fmt +EXPORT_SYMBOL_GPL drivers/gpu/ipu-v3/imx-ipu-v3 0xd59d9b52 ipu_vdi_get +EXPORT_SYMBOL_GPL drivers/gpu/ipu-v3/imx-ipu-v3 0xd6d5994f ipu_cpmem_set_high_priority +EXPORT_SYMBOL_GPL drivers/gpu/ipu-v3/imx-ipu-v3 0xd8f285f0 ipu_vdi_setup +EXPORT_SYMBOL_GPL drivers/gpu/ipu-v3/imx-ipu-v3 0xdb49e02c ipu_module_enable +EXPORT_SYMBOL_GPL drivers/gpu/ipu-v3/imx-ipu-v3 0xdc06295f ipu_image_convert +EXPORT_SYMBOL_GPL drivers/gpu/ipu-v3/imx-ipu-v3 0xdc3b1b50 ipu_idmac_set_double_buffer +EXPORT_SYMBOL_GPL drivers/gpu/ipu-v3/imx-ipu-v3 0xdd6db9bc ipu_cpmem_interlaced_scan +EXPORT_SYMBOL_GPL drivers/gpu/ipu-v3/imx-ipu-v3 0xe300a959 ipu_dp_setup_channel +EXPORT_SYMBOL_GPL drivers/gpu/ipu-v3/imx-ipu-v3 0xe3785583 ipu_smfc_get +EXPORT_SYMBOL_GPL drivers/gpu/ipu-v3/imx-ipu-v3 0xe4e46103 ipu_cpmem_set_burstsize +EXPORT_SYMBOL_GPL drivers/gpu/ipu-v3/imx-ipu-v3 0xe562a498 ipu_cpmem_set_buffer +EXPORT_SYMBOL_GPL drivers/gpu/ipu-v3/imx-ipu-v3 0xe6243c52 ipu_dc_enable_channel +EXPORT_SYMBOL_GPL drivers/gpu/ipu-v3/imx-ipu-v3 0xe78afcda ipu_cpmem_set_format_rgb +EXPORT_SYMBOL_GPL drivers/gpu/ipu-v3/imx-ipu-v3 0xe95eff21 ipu_cpmem_set_image +EXPORT_SYMBOL_GPL drivers/gpu/ipu-v3/imx-ipu-v3 0xedf15a8b ipu_idmac_link +EXPORT_SYMBOL_GPL drivers/gpu/ipu-v3/imx-ipu-v3 0xeea12b31 ipu_vdi_enable +EXPORT_SYMBOL_GPL drivers/gpu/ipu-v3/imx-ipu-v3 0xf1440dc1 ipu_ic_put +EXPORT_SYMBOL_GPL drivers/gpu/ipu-v3/imx-ipu-v3 0xf1abac7e ipu_csi_set_downsize +EXPORT_SYMBOL_GPL drivers/gpu/ipu-v3/imx-ipu-v3 0xf268e1b9 ipu_set_csi_src_mux +EXPORT_SYMBOL_GPL drivers/gpu/ipu-v3/imx-ipu-v3 0xf2c8c5e2 ipu_idmac_lock_enable +EXPORT_SYMBOL_GPL drivers/gpu/ipu-v3/imx-ipu-v3 0xf38ea7ee ipu_dp_get +EXPORT_SYMBOL_GPL drivers/gpu/ipu-v3/imx-ipu-v3 0xf541df2d ipu_vdi_disable +EXPORT_SYMBOL_GPL drivers/gpu/ipu-v3/imx-ipu-v3 0xf93e752d ipu_cpmem_set_block_mode +EXPORT_SYMBOL_GPL drivers/greybus/greybus 0x05fa28bb greybus_message_sent +EXPORT_SYMBOL_GPL drivers/greybus/greybus 0x116f0b9e greybus_register_driver +EXPORT_SYMBOL_GPL drivers/greybus/greybus 0x13c077cc gb_hd_shutdown +EXPORT_SYMBOL_GPL drivers/greybus/greybus 0x14fd57c2 gb_hd_put +EXPORT_SYMBOL_GPL drivers/greybus/greybus 0x15d1942f greybus_disabled +EXPORT_SYMBOL_GPL drivers/greybus/greybus 0x291e2eec gb_hd_cport_reserve +EXPORT_SYMBOL_GPL drivers/greybus/greybus 0x29f7da7f __tracepoint_gb_hd_in +EXPORT_SYMBOL_GPL drivers/greybus/greybus 0x34c2b24e gb_operation_get +EXPORT_SYMBOL_GPL drivers/greybus/greybus 0x384d111a gb_connection_latency_tag_enable +EXPORT_SYMBOL_GPL drivers/greybus/greybus 0x38b89571 __tracepoint_gb_hd_create +EXPORT_SYMBOL_GPL drivers/greybus/greybus 0x3b35ef8a gb_operation_sync_timeout +EXPORT_SYMBOL_GPL drivers/greybus/greybus 0x44c8bf90 greybus_deregister_driver +EXPORT_SYMBOL_GPL drivers/greybus/greybus 0x46c8d9f2 gb_connection_disable_rx +EXPORT_SYMBOL_GPL drivers/greybus/greybus 0x50517685 __tracepoint_gb_message_submit +EXPORT_SYMBOL_GPL drivers/greybus/greybus 0x521a5a48 gb_svc_intf_set_power_mode +EXPORT_SYMBOL_GPL drivers/greybus/greybus 0x59c666b1 gb_connection_disable_forced +EXPORT_SYMBOL_GPL drivers/greybus/greybus 0x5e3073cd gb_operation_result +EXPORT_SYMBOL_GPL drivers/greybus/greybus 0x6e2fbeb9 gb_operation_response_alloc +EXPORT_SYMBOL_GPL drivers/greybus/greybus 0x7559871d gb_hd_output +EXPORT_SYMBOL_GPL drivers/greybus/greybus 0x75c9730a __tracepoint_gb_hd_add +EXPORT_SYMBOL_GPL drivers/greybus/greybus 0x7827724a gb_operation_unidirectional_timeout +EXPORT_SYMBOL_GPL drivers/greybus/greybus 0x815eb223 gb_connection_create_flags +EXPORT_SYMBOL_GPL drivers/greybus/greybus 0x81a15417 gb_connection_latency_tag_disable +EXPORT_SYMBOL_GPL drivers/greybus/greybus 0x8b0c6307 __tracepoint_gb_hd_del +EXPORT_SYMBOL_GPL drivers/greybus/greybus 0x904c1acf gb_operation_put +EXPORT_SYMBOL_GPL drivers/greybus/greybus 0x9767d244 gb_interface_request_mode_switch +EXPORT_SYMBOL_GPL drivers/greybus/greybus 0x98602cb3 gb_hd_del +EXPORT_SYMBOL_GPL drivers/greybus/greybus 0x9d8b5dbd greybus_data_rcvd +EXPORT_SYMBOL_GPL drivers/greybus/greybus 0xa181806a gb_hd_create +EXPORT_SYMBOL_GPL drivers/greybus/greybus 0xa8330f0b gb_hd_cport_release_reserved +EXPORT_SYMBOL_GPL drivers/greybus/greybus 0xb6fb7f44 gb_hd_add +EXPORT_SYMBOL_GPL drivers/greybus/greybus 0xb8244b61 gb_connection_disable +EXPORT_SYMBOL_GPL drivers/greybus/greybus 0xba9dcfe4 gb_connection_create +EXPORT_SYMBOL_GPL drivers/greybus/greybus 0xc3b69fe2 gb_connection_create_offloaded +EXPORT_SYMBOL_GPL drivers/greybus/greybus 0xc92faaec gb_operation_cancel +EXPORT_SYMBOL_GPL drivers/greybus/greybus 0xda0a697e gb_operation_create_flags +EXPORT_SYMBOL_GPL drivers/greybus/greybus 0xde3878ae gb_connection_enable_tx +EXPORT_SYMBOL_GPL drivers/greybus/greybus 0xe159625a gb_connection_enable +EXPORT_SYMBOL_GPL drivers/greybus/greybus 0xe19988ce gb_operation_request_send_sync_timeout +EXPORT_SYMBOL_GPL drivers/greybus/greybus 0xe4005c4d gb_debugfs_get +EXPORT_SYMBOL_GPL drivers/greybus/greybus 0xe7a963c4 gb_connection_destroy +EXPORT_SYMBOL_GPL drivers/greybus/greybus 0xeda04bdd gb_operation_request_send +EXPORT_SYMBOL_GPL drivers/greybus/greybus 0xfc3c3469 gb_operation_get_payload_size_max +EXPORT_SYMBOL_GPL drivers/greybus/greybus 0xfcd391a8 __tracepoint_gb_hd_release +EXPORT_SYMBOL_GPL drivers/hid/hid 0x01968e84 hidraw_disconnect +EXPORT_SYMBOL_GPL drivers/hid/hid 0x05495392 hid_debug +EXPORT_SYMBOL_GPL drivers/hid/hid 0x0d4b3b6c hid_field_extract +EXPORT_SYMBOL_GPL drivers/hid/hid 0x104591ff hidinput_connect +EXPORT_SYMBOL_GPL drivers/hid/hid 0x1092dd7e hid_hw_close +EXPORT_SYMBOL_GPL drivers/hid/hid 0x17d94e5c hid_check_keys_pressed +EXPORT_SYMBOL_GPL drivers/hid/hid 0x19d52f1f hid_quirks_exit +EXPORT_SYMBOL_GPL drivers/hid/hid 0x23f486e8 hid_set_field +EXPORT_SYMBOL_GPL drivers/hid/hid 0x31bbe4c0 hidinput_find_field +EXPORT_SYMBOL_GPL drivers/hid/hid 0x3ada53d1 hid_input_report +EXPORT_SYMBOL_GPL drivers/hid/hid 0x3bf79299 hid_lookup_quirk +EXPORT_SYMBOL_GPL drivers/hid/hid 0x3cc2bf7b hid_dump_report +EXPORT_SYMBOL_GPL drivers/hid/hid 0x3e05f6ac hidinput_get_led_field +EXPORT_SYMBOL_GPL drivers/hid/hid 0x45fe3c10 hid_hw_open +EXPORT_SYMBOL_GPL drivers/hid/hid 0x467daeb3 hid_connect +EXPORT_SYMBOL_GPL drivers/hid/hid 0x519388ac hidraw_connect +EXPORT_SYMBOL_GPL drivers/hid/hid 0x5cfbf3c5 hidinput_calc_abs_res +EXPORT_SYMBOL_GPL drivers/hid/hid 0x61eda7b1 hidraw_report_event +EXPORT_SYMBOL_GPL drivers/hid/hid 0x8b13a8b8 hid_snto32 +EXPORT_SYMBOL_GPL drivers/hid/hid 0x8b2eb6b4 hid_hw_start +EXPORT_SYMBOL_GPL drivers/hid/hid 0x9395100d hidinput_disconnect +EXPORT_SYMBOL_GPL drivers/hid/hid 0x96e28873 hid_unregister_driver +EXPORT_SYMBOL_GPL drivers/hid/hid 0x9cddff6e hid_dump_device +EXPORT_SYMBOL_GPL drivers/hid/hid 0x9d2ea7db hid_ignore +EXPORT_SYMBOL_GPL drivers/hid/hid 0xa8da407e hid_parse_report +EXPORT_SYMBOL_GPL drivers/hid/hid 0xa9b39da2 __hid_register_driver +EXPORT_SYMBOL_GPL drivers/hid/hid 0xaa526d03 hid_alloc_report_buf +EXPORT_SYMBOL_GPL drivers/hid/hid 0xaae52241 hid_output_report +EXPORT_SYMBOL_GPL drivers/hid/hid 0xaf20efcd hidinput_report_event +EXPORT_SYMBOL_GPL drivers/hid/hid 0xb0635aae hid_debug_event +EXPORT_SYMBOL_GPL drivers/hid/hid 0xbf2dbc78 hid_dump_input +EXPORT_SYMBOL_GPL drivers/hid/hid 0xc00de84c hid_match_device +EXPORT_SYMBOL_GPL drivers/hid/hid 0xc18b5c8c hid_hw_stop +EXPORT_SYMBOL_GPL drivers/hid/hid 0xc20342bd hid_dump_field +EXPORT_SYMBOL_GPL drivers/hid/hid 0xc53529d9 hid_destroy_device +EXPORT_SYMBOL_GPL drivers/hid/hid 0xcfa95fcc hid_add_device +EXPORT_SYMBOL_GPL drivers/hid/hid 0xd86ba1f8 hid_report_raw_event +EXPORT_SYMBOL_GPL drivers/hid/hid 0xe21a317f __hid_request +EXPORT_SYMBOL_GPL drivers/hid/hid 0xe2297c0b hid_validate_values +EXPORT_SYMBOL_GPL drivers/hid/hid 0xe277fe4f hid_compare_device_paths +EXPORT_SYMBOL_GPL drivers/hid/hid 0xe3fe8ae8 hid_open_report +EXPORT_SYMBOL_GPL drivers/hid/hid 0xe6dfaf95 hid_setup_resolution_multiplier +EXPORT_SYMBOL_GPL drivers/hid/hid 0xe8e08cae hid_allocate_device +EXPORT_SYMBOL_GPL drivers/hid/hid 0xf2c8336b hid_register_report +EXPORT_SYMBOL_GPL drivers/hid/hid 0xf39cb16b hid_disconnect +EXPORT_SYMBOL_GPL drivers/hid/hid 0xfa355613 hid_quirks_init +EXPORT_SYMBOL_GPL drivers/hid/hid 0xfad9e67d hid_resolv_usage +EXPORT_SYMBOL_GPL drivers/hid/hid 0xfc6eb440 hidinput_count_leds +EXPORT_SYMBOL_GPL drivers/hid/hid-roccat 0x2298c593 roccat_connect +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-common 0x017e5682 roccat_common2_send +EXPORT_SYMBOL_GPL drivers/hid/hid-roccat-common 0x7ccdfc03 roccat_common2_send_with_status +EXPORT_SYMBOL_GPL drivers/hid/hid-roccat-common 0x8643ac70 roccat_common2_device_init_struct +EXPORT_SYMBOL_GPL drivers/hid/hid-roccat-common 0xa13aa4f5 roccat_common2_sysfs_write +EXPORT_SYMBOL_GPL drivers/hid/hid-roccat-common 0xad625c51 roccat_common2_receive +EXPORT_SYMBOL_GPL drivers/hid/hid-roccat-common 0xbc24cf41 roccat_common2_sysfs_read +EXPORT_SYMBOL_GPL drivers/hid/hid-sensor-hub 0x06481595 sensor_hub_input_get_attribute_info +EXPORT_SYMBOL_GPL drivers/hid/hid-sensor-hub 0x234e15fc sensor_hub_register_callback +EXPORT_SYMBOL_GPL drivers/hid/hid-sensor-hub 0x29415dab sensor_hub_remove_callback +EXPORT_SYMBOL_GPL drivers/hid/hid-sensor-hub 0x56c457c8 sensor_hub_set_feature +EXPORT_SYMBOL_GPL drivers/hid/hid-sensor-hub 0x59e53273 sensor_hub_device_open +EXPORT_SYMBOL_GPL drivers/hid/hid-sensor-hub 0xa4148a41 sensor_hub_get_feature +EXPORT_SYMBOL_GPL drivers/hid/hid-sensor-hub 0xc03ae697 hid_sensor_get_usage_index +EXPORT_SYMBOL_GPL drivers/hid/hid-sensor-hub 0xea5381f6 sensor_hub_input_attr_get_raw_value +EXPORT_SYMBOL_GPL drivers/hid/hid-sensor-hub 0xf69c5194 sensor_hub_device_close +EXPORT_SYMBOL_GPL drivers/hid/i2c-hid/i2c-hid 0x9bdfb7bc i2c_hid_ll_driver +EXPORT_SYMBOL_GPL drivers/hid/uhid 0x574b07da uhid_hid_driver +EXPORT_SYMBOL_GPL drivers/hid/usbhid/usbhid 0x592dcee7 usb_hid_driver +EXPORT_SYMBOL_GPL drivers/hid/usbhid/usbhid 0xd0f7aa37 hiddev_hid_event +EXPORT_SYMBOL_GPL drivers/hsi/clients/ssi_protocol 0x11cc5f98 ssip_reset_event +EXPORT_SYMBOL_GPL drivers/hsi/clients/ssi_protocol 0x8dffdce1 ssip_slave_get_master +EXPORT_SYMBOL_GPL drivers/hsi/clients/ssi_protocol 0x98fa9b73 ssip_slave_stop_tx +EXPORT_SYMBOL_GPL drivers/hsi/clients/ssi_protocol 0xdffec985 ssip_slave_running +EXPORT_SYMBOL_GPL drivers/hsi/clients/ssi_protocol 0xe8e4779e ssip_slave_start_tx +EXPORT_SYMBOL_GPL drivers/hsi/controllers/omap_ssi 0x7d6b6606 ssi_waketest +EXPORT_SYMBOL_GPL drivers/hsi/hsi 0x19661a28 hsi_alloc_msg +EXPORT_SYMBOL_GPL drivers/hsi/hsi 0x270ff52c hsi_release_port +EXPORT_SYMBOL_GPL drivers/hsi/hsi 0x2c927b74 hsi_register_controller +EXPORT_SYMBOL_GPL drivers/hsi/hsi 0x34ea96cb hsi_unregister_port_event +EXPORT_SYMBOL_GPL drivers/hsi/hsi 0x5210a5bf hsi_board_list +EXPORT_SYMBOL_GPL drivers/hsi/hsi 0x5de4e48b hsi_alloc_controller +EXPORT_SYMBOL_GPL drivers/hsi/hsi 0x6d2d7b69 hsi_port_unregister_clients +EXPORT_SYMBOL_GPL drivers/hsi/hsi 0x8492af19 hsi_new_client +EXPORT_SYMBOL_GPL drivers/hsi/hsi 0x8541d58e hsi_add_clients_from_dt +EXPORT_SYMBOL_GPL drivers/hsi/hsi 0x8cbfb4ce hsi_free_msg +EXPORT_SYMBOL_GPL drivers/hsi/hsi 0xc1d8c38a hsi_async +EXPORT_SYMBOL_GPL drivers/hsi/hsi 0xc29d62fd hsi_unregister_controller +EXPORT_SYMBOL_GPL drivers/hsi/hsi 0xc6e7b84a hsi_register_port_event +EXPORT_SYMBOL_GPL drivers/hsi/hsi 0xc8218d82 hsi_put_controller +EXPORT_SYMBOL_GPL drivers/hsi/hsi 0xce1284be hsi_remove_client +EXPORT_SYMBOL_GPL drivers/hsi/hsi 0xd1179248 hsi_register_client_driver +EXPORT_SYMBOL_GPL drivers/hsi/hsi 0xd57f919c hsi_get_channel_id_by_name +EXPORT_SYMBOL_GPL drivers/hsi/hsi 0xdc1617ca hsi_event +EXPORT_SYMBOL_GPL drivers/hsi/hsi 0xf8584f06 hsi_claim_port +EXPORT_SYMBOL_GPL drivers/hwmon/adt7x10 0x0ce9a1ed adt7x10_remove +EXPORT_SYMBOL_GPL drivers/hwmon/adt7x10 0xb92ac9d3 adt7x10_dev_pm_ops +EXPORT_SYMBOL_GPL drivers/hwmon/adt7x10 0xfb5d1aa8 adt7x10_probe +EXPORT_SYMBOL_GPL drivers/hwmon/ltc2947-core 0x0601fbbe ltc2947_pm_ops +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/pmbus/pmbus_core 0x07c9ebc5 pmbus_read_byte_data +EXPORT_SYMBOL_GPL drivers/hwmon/pmbus/pmbus_core 0x0b175dbd pmbus_clear_faults +EXPORT_SYMBOL_GPL drivers/hwmon/pmbus/pmbus_core 0x0d9b20dd pmbus_get_driver_info +EXPORT_SYMBOL_GPL drivers/hwmon/pmbus/pmbus_core 0x16d01356 pmbus_update_fan +EXPORT_SYMBOL_GPL drivers/hwmon/pmbus/pmbus_core 0x184fbb73 pmbus_write_word_data +EXPORT_SYMBOL_GPL drivers/hwmon/pmbus/pmbus_core 0x1fbef73c pmbus_get_fan_rate_cached +EXPORT_SYMBOL_GPL drivers/hwmon/pmbus/pmbus_core 0x2d803c1c pmbus_write_byte_data +EXPORT_SYMBOL_GPL drivers/hwmon/pmbus/pmbus_core 0x2dcd417e pmbus_write_byte +EXPORT_SYMBOL_GPL drivers/hwmon/pmbus/pmbus_core 0x34125711 pmbus_update_byte_data +EXPORT_SYMBOL_GPL drivers/hwmon/pmbus/pmbus_core 0x3df4ad43 pmbus_check_word_register +EXPORT_SYMBOL_GPL drivers/hwmon/pmbus/pmbus_core 0x4144aff0 pmbus_read_word_data +EXPORT_SYMBOL_GPL drivers/hwmon/pmbus/pmbus_core 0x430faadf pmbus_get_fan_rate_device +EXPORT_SYMBOL_GPL drivers/hwmon/pmbus/pmbus_core 0x64ed8918 pmbus_do_probe +EXPORT_SYMBOL_GPL drivers/hwmon/pmbus/pmbus_core 0x74be1d25 pmbus_clear_cache +EXPORT_SYMBOL_GPL drivers/hwmon/pmbus/pmbus_core 0x9f9a05c5 pmbus_get_debugfs_dir +EXPORT_SYMBOL_GPL drivers/hwmon/pmbus/pmbus_core 0xaecc74f4 pmbus_regulator_ops +EXPORT_SYMBOL_GPL drivers/hwmon/pmbus/pmbus_core 0xd1cbf677 pmbus_check_byte_register +EXPORT_SYMBOL_GPL drivers/hwmon/pmbus/pmbus_core 0xf6495009 pmbus_set_page +EXPORT_SYMBOL_GPL drivers/hwmon/pmbus/pmbus_core 0xfc51f81c pmbus_do_remove +EXPORT_SYMBOL_GPL drivers/hwtracing/intel_th/intel_th 0x13fbaeaf intel_th_set_output +EXPORT_SYMBOL_GPL drivers/hwtracing/intel_th/intel_th 0x1fe333c6 intel_th_output_enable +EXPORT_SYMBOL_GPL drivers/hwtracing/intel_th/intel_th 0x4910d656 intel_th_trace_enable +EXPORT_SYMBOL_GPL drivers/hwtracing/intel_th/intel_th 0x75bb0297 intel_th_trace_disable +EXPORT_SYMBOL_GPL drivers/hwtracing/intel_th/intel_th 0xcc138d49 intel_th_trace_switch +EXPORT_SYMBOL_GPL drivers/hwtracing/intel_th/intel_th 0xcf15e07b intel_th_free +EXPORT_SYMBOL_GPL drivers/hwtracing/intel_th/intel_th 0xdd8412a9 intel_th_alloc +EXPORT_SYMBOL_GPL drivers/hwtracing/intel_th/intel_th 0xe9791329 intel_th_driver_unregister +EXPORT_SYMBOL_GPL drivers/hwtracing/intel_th/intel_th 0xfaa3536c intel_th_driver_register +EXPORT_SYMBOL_GPL drivers/hwtracing/intel_th/intel_th_msu 0x1c650020 intel_th_msc_window_unlock +EXPORT_SYMBOL_GPL drivers/hwtracing/intel_th/intel_th_msu 0x239d9980 intel_th_msu_buffer_unregister +EXPORT_SYMBOL_GPL drivers/hwtracing/intel_th/intel_th_msu 0x9570d4b0 intel_th_msu_buffer_register +EXPORT_SYMBOL_GPL drivers/hwtracing/stm/stm_core 0x0d362673 stm_unregister_protocol +EXPORT_SYMBOL_GPL drivers/hwtracing/stm/stm_core 0x1c3e4d3f stm_data_write +EXPORT_SYMBOL_GPL drivers/hwtracing/stm/stm_core 0x53c7db25 stm_unregister_device +EXPORT_SYMBOL_GPL drivers/hwtracing/stm/stm_core 0x65ae24bd stm_source_write +EXPORT_SYMBOL_GPL drivers/hwtracing/stm/stm_core 0x6ab8aa88 stm_source_register_device +EXPORT_SYMBOL_GPL drivers/hwtracing/stm/stm_core 0x6ac1e40e stm_register_protocol +EXPORT_SYMBOL_GPL drivers/hwtracing/stm/stm_core 0xa0ae2aa2 stm_source_unregister_device +EXPORT_SYMBOL_GPL drivers/hwtracing/stm/stm_core 0xc2304524 stm_register_device +EXPORT_SYMBOL_GPL drivers/hwtracing/stm/stm_core 0xe6d12811 to_pdrv_policy_node +EXPORT_SYMBOL_GPL drivers/i2c/i2c-mux 0x6469957b i2c_root_adapter +EXPORT_SYMBOL_GPL drivers/i2c/i2c-mux 0xbf58407c i2c_mux_del_adapters +EXPORT_SYMBOL_GPL drivers/i2c/i2c-mux 0xcaa79908 i2c_mux_add_adapter +EXPORT_SYMBOL_GPL drivers/i2c/i2c-mux 0xf030090e i2c_mux_alloc +EXPORT_SYMBOL_GPL drivers/i2c/i2c-smbus 0x20759ee8 i2c_register_spd +EXPORT_SYMBOL_GPL drivers/i2c/i2c-smbus 0xb6551d4c i2c_handle_smbus_alert +EXPORT_SYMBOL_GPL drivers/i3c/i3c 0x02d5dede i3c_master_defslvs_locked +EXPORT_SYMBOL_GPL drivers/i3c/i3c 0x2d74fd3a i3c_master_get_free_addr +EXPORT_SYMBOL_GPL drivers/i3c/i3c 0x3936bbd9 i3c_device_do_priv_xfers +EXPORT_SYMBOL_GPL drivers/i3c/i3c 0x5a634c20 i3c_device_disable_ibi +EXPORT_SYMBOL_GPL drivers/i3c/i3c 0x63e6dc5a i3cdev_to_dev +EXPORT_SYMBOL_GPL drivers/i3c/i3c 0x6a653740 i3c_driver_register_with_owner +EXPORT_SYMBOL_GPL drivers/i3c/i3c 0x76fe3e05 i3c_generic_ibi_free_pool +EXPORT_SYMBOL_GPL drivers/i3c/i3c 0x772daec3 i3c_generic_ibi_alloc_pool +EXPORT_SYMBOL_GPL drivers/i3c/i3c 0x7856cc8a i3c_master_add_i3c_dev_locked +EXPORT_SYMBOL_GPL drivers/i3c/i3c 0x8225037e i3c_driver_unregister +EXPORT_SYMBOL_GPL drivers/i3c/i3c 0x8589fc35 i3c_device_get_info +EXPORT_SYMBOL_GPL drivers/i3c/i3c 0x8a3c5fdd i3c_master_do_daa +EXPORT_SYMBOL_GPL drivers/i3c/i3c 0x8b32b29c i3c_master_enec_locked +EXPORT_SYMBOL_GPL drivers/i3c/i3c 0x95daae06 i3c_master_queue_ibi +EXPORT_SYMBOL_GPL drivers/i3c/i3c 0x98f66573 i3c_device_match_id +EXPORT_SYMBOL_GPL drivers/i3c/i3c 0x9d39c69f i3c_device_enable_ibi +EXPORT_SYMBOL_GPL drivers/i3c/i3c 0xa6e5635f i3c_master_register +EXPORT_SYMBOL_GPL drivers/i3c/i3c 0xaed569e8 i3c_master_set_info +EXPORT_SYMBOL_GPL drivers/i3c/i3c 0xb250f7ed i3c_device_request_ibi +EXPORT_SYMBOL_GPL drivers/i3c/i3c 0xc45c0ebc i3c_generic_ibi_get_free_slot +EXPORT_SYMBOL_GPL drivers/i3c/i3c 0xe666926c i3c_master_entdaa_locked +EXPORT_SYMBOL_GPL drivers/i3c/i3c 0xeeeb1d51 i3c_device_free_ibi +EXPORT_SYMBOL_GPL drivers/i3c/i3c 0xf1e07d80 dev_to_i3cdev +EXPORT_SYMBOL_GPL drivers/i3c/i3c 0xf370be3a i3c_master_disec_locked +EXPORT_SYMBOL_GPL drivers/i3c/i3c 0xf52b03d1 i3c_master_unregister +EXPORT_SYMBOL_GPL drivers/i3c/i3c 0xf9a30106 i3c_generic_ibi_recycle_slot +EXPORT_SYMBOL_GPL drivers/iio/accel/adxl372 0x2e3966e5 adxl372_readable_noinc_reg +EXPORT_SYMBOL_GPL drivers/iio/accel/adxl372 0xeb54eea3 adxl372_probe +EXPORT_SYMBOL_GPL drivers/iio/accel/bmc150-accel-core 0x6e49c9c4 bmc150_accel_core_probe +EXPORT_SYMBOL_GPL drivers/iio/accel/bmc150-accel-core 0x98955bcd bmc150_regmap_conf +EXPORT_SYMBOL_GPL drivers/iio/accel/bmc150-accel-core 0xb3760f77 bmc150_accel_core_remove +EXPORT_SYMBOL_GPL drivers/iio/accel/bmc150-accel-core 0xef93aad7 bmc150_accel_pm_ops +EXPORT_SYMBOL_GPL drivers/iio/accel/mma7455_core 0x860653cf mma7455_core_remove +EXPORT_SYMBOL_GPL drivers/iio/accel/mma7455_core 0xc2ea0d8d mma7455_core_regmap +EXPORT_SYMBOL_GPL drivers/iio/accel/mma7455_core 0xf6be94f0 mma7455_core_probe +EXPORT_SYMBOL_GPL drivers/iio/adc/ad7091r-base 0x25efea00 ad7091r_regmap_config +EXPORT_SYMBOL_GPL drivers/iio/adc/ad7091r-base 0xcfcac601 ad7091r_probe +EXPORT_SYMBOL_GPL drivers/iio/adc/ad7606 0x86d251c6 ad7606_pm_ops +EXPORT_SYMBOL_GPL drivers/iio/adc/ad7606 0xc521e28a ad7606_probe +EXPORT_SYMBOL_GPL drivers/iio/adc/ad_sigma_delta 0x2f5e9cdb ad_sd_validate_trigger +EXPORT_SYMBOL_GPL drivers/iio/adc/ad_sigma_delta 0x613d3513 ad_sd_setup_buffer_and_trigger +EXPORT_SYMBOL_GPL drivers/iio/adc/ad_sigma_delta 0x6ea56d4c ad_sd_init +EXPORT_SYMBOL_GPL drivers/iio/adc/ad_sigma_delta 0x6fd22b28 ad_sd_calibrate_all +EXPORT_SYMBOL_GPL drivers/iio/adc/ad_sigma_delta 0xac8d934e ad_sd_read_reg +EXPORT_SYMBOL_GPL drivers/iio/adc/ad_sigma_delta 0xc41248f3 ad_sd_set_comm +EXPORT_SYMBOL_GPL drivers/iio/adc/ad_sigma_delta 0xc579b9fa ad_sd_reset +EXPORT_SYMBOL_GPL drivers/iio/adc/ad_sigma_delta 0xcf16ff27 ad_sd_write_reg +EXPORT_SYMBOL_GPL drivers/iio/adc/ad_sigma_delta 0xeabb9f8d ad_sd_cleanup_buffer_and_trigger +EXPORT_SYMBOL_GPL drivers/iio/adc/ad_sigma_delta 0xf48a0c44 ad_sigma_delta_single_conversion +EXPORT_SYMBOL_GPL drivers/iio/adc/ad_sigma_delta 0xfe5efc6e ad_sd_calibrate +EXPORT_SYMBOL_GPL drivers/iio/adc/adi-axi-adc 0x5adced93 adi_axi_adc_conv_priv +EXPORT_SYMBOL_GPL drivers/iio/adc/adi-axi-adc 0xe4c9ed1c devm_adi_axi_adc_conv_register +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 0x615b9a6d 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 0x9bb30936 iio_channel_cb_get_iio_dev +EXPORT_SYMBOL_GPL drivers/iio/buffer/industrialio-buffer-cb 0xdf54bd34 iio_channel_get_all_cb +EXPORT_SYMBOL_GPL drivers/iio/buffer/industrialio-buffer-cb 0xfff2647d iio_channel_cb_set_buffer_watermark +EXPORT_SYMBOL_GPL drivers/iio/buffer/industrialio-buffer-dma 0x031082bd iio_dma_buffer_set_length +EXPORT_SYMBOL_GPL drivers/iio/buffer/industrialio-buffer-dma 0x098b6299 iio_dma_buffer_disable +EXPORT_SYMBOL_GPL drivers/iio/buffer/industrialio-buffer-dma 0x0d709c19 iio_dma_buffer_request_update +EXPORT_SYMBOL_GPL drivers/iio/buffer/industrialio-buffer-dma 0x1baa4c3e iio_dma_buffer_data_available +EXPORT_SYMBOL_GPL drivers/iio/buffer/industrialio-buffer-dma 0x4391c4fb iio_dma_buffer_read +EXPORT_SYMBOL_GPL drivers/iio/buffer/industrialio-buffer-dma 0x447390b2 iio_dma_buffer_enable +EXPORT_SYMBOL_GPL drivers/iio/buffer/industrialio-buffer-dma 0x4c4b2b9c iio_dma_buffer_set_bytes_per_datum +EXPORT_SYMBOL_GPL drivers/iio/buffer/industrialio-buffer-dma 0x4fdfa31f iio_dma_buffer_release +EXPORT_SYMBOL_GPL drivers/iio/buffer/industrialio-buffer-dma 0x557d1618 iio_dma_buffer_exit +EXPORT_SYMBOL_GPL drivers/iio/buffer/industrialio-buffer-dma 0xabd3da74 iio_dma_buffer_block_list_abort +EXPORT_SYMBOL_GPL drivers/iio/buffer/industrialio-buffer-dma 0xd48a35ce iio_dma_buffer_block_done +EXPORT_SYMBOL_GPL drivers/iio/buffer/industrialio-buffer-dma 0xdf598725 iio_dma_buffer_init +EXPORT_SYMBOL_GPL drivers/iio/buffer/industrialio-buffer-dmaengine 0x8b3e2646 iio_dmaengine_buffer_free +EXPORT_SYMBOL_GPL drivers/iio/buffer/industrialio-buffer-dmaengine 0x906a7b45 devm_iio_dmaengine_buffer_alloc +EXPORT_SYMBOL_GPL drivers/iio/buffer/industrialio-hw-consumer 0x3391543d iio_hw_consumer_disable +EXPORT_SYMBOL_GPL drivers/iio/buffer/industrialio-hw-consumer 0x9671bc15 iio_hw_consumer_free +EXPORT_SYMBOL_GPL drivers/iio/buffer/industrialio-hw-consumer 0x96c582dc devm_iio_hw_consumer_alloc +EXPORT_SYMBOL_GPL drivers/iio/buffer/industrialio-hw-consumer 0xbcd7a785 iio_hw_consumer_alloc +EXPORT_SYMBOL_GPL drivers/iio/buffer/industrialio-hw-consumer 0xbf358fa9 iio_hw_consumer_enable +EXPORT_SYMBOL_GPL drivers/iio/buffer/industrialio-triggered-buffer 0x9ffde331 devm_iio_triggered_buffer_setup +EXPORT_SYMBOL_GPL drivers/iio/chemical/bme680_core 0xd6fbe603 bme680_core_probe +EXPORT_SYMBOL_GPL drivers/iio/common/cros_ec_sensors/cros_ec_sensors_core 0x3dd04ef1 cros_ec_sensors_push_data +EXPORT_SYMBOL_GPL drivers/iio/common/cros_ec_sensors/cros_ec_sensors_core 0x4998e96c cros_ec_sensors_ext_info +EXPORT_SYMBOL_GPL drivers/iio/common/cros_ec_sensors/cros_ec_sensors_core 0x621649fc cros_ec_sensor_fifo_attributes +EXPORT_SYMBOL_GPL drivers/iio/common/cros_ec_sensors/cros_ec_sensors_core 0x772bc06e cros_ec_sensors_core_init +EXPORT_SYMBOL_GPL drivers/iio/common/cros_ec_sensors/cros_ec_sensors_core 0x7e84827f cros_ec_sensors_core_read_avail +EXPORT_SYMBOL_GPL drivers/iio/common/cros_ec_sensors/cros_ec_sensors_core 0x89d9fa8d cros_ec_sensors_read_cmd +EXPORT_SYMBOL_GPL drivers/iio/common/cros_ec_sensors/cros_ec_sensors_core 0x9755f1a0 cros_ec_sensors_core_read +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 0xbb2002ce cros_ec_sensors_read_lpc +EXPORT_SYMBOL_GPL drivers/iio/common/cros_ec_sensors/cros_ec_sensors_core 0xc7e39f45 cros_ec_motion_send_host_cmd +EXPORT_SYMBOL_GPL drivers/iio/common/cros_ec_sensors/cros_ec_sensors_core 0xdd048dbb cros_ec_sensors_core_write +EXPORT_SYMBOL_GPL drivers/iio/dac/ad5592r-base 0x00e8fd3e ad5592r_probe +EXPORT_SYMBOL_GPL drivers/iio/dac/ad5592r-base 0xce5b7875 ad5592r_remove +EXPORT_SYMBOL_GPL drivers/iio/dac/ad5686 0x35c75af8 ad5686_remove +EXPORT_SYMBOL_GPL drivers/iio/dac/ad5686 0x48edbd0d ad5686_probe +EXPORT_SYMBOL_GPL drivers/iio/gyro/bmg160_core 0x8e576b2e bmg160_core_probe +EXPORT_SYMBOL_GPL drivers/iio/gyro/bmg160_core 0xd8a4b27a bmg160_core_remove +EXPORT_SYMBOL_GPL drivers/iio/gyro/bmg160_core 0xfccc81a7 bmg160_pm_ops +EXPORT_SYMBOL_GPL drivers/iio/gyro/fxas21002c_core 0x1c0538e6 fxas21002c_pm_ops +EXPORT_SYMBOL_GPL drivers/iio/gyro/fxas21002c_core 0x3af78013 fxas21002c_core_remove +EXPORT_SYMBOL_GPL drivers/iio/gyro/fxas21002c_core 0x4f7a4e6e fxas21002c_core_probe +EXPORT_SYMBOL_GPL drivers/iio/imu/adis_lib 0x036e3a6e adis_update_scan_mode +EXPORT_SYMBOL_GPL drivers/iio/imu/adis_lib 0x05169f7f adis_cleanup_buffer_and_trigger +EXPORT_SYMBOL_GPL drivers/iio/imu/adis_lib 0x1e7224c5 devm_adis_probe_trigger +EXPORT_SYMBOL_GPL drivers/iio/imu/adis_lib 0x202008ff adis_probe_trigger +EXPORT_SYMBOL_GPL drivers/iio/imu/adis_lib 0x22dec3b2 __adis_initial_startup +EXPORT_SYMBOL_GPL drivers/iio/imu/adis_lib 0x2bce0071 devm_adis_setup_buffer_and_trigger +EXPORT_SYMBOL_GPL drivers/iio/imu/adis_lib 0x5563cd02 __adis_reset +EXPORT_SYMBOL_GPL drivers/iio/imu/adis_lib 0x5584b0d7 adis_single_conversion +EXPORT_SYMBOL_GPL drivers/iio/imu/adis_lib 0x606c943a adis_setup_buffer_and_trigger +EXPORT_SYMBOL_GPL drivers/iio/imu/adis_lib 0x6a378e52 adis_remove_trigger +EXPORT_SYMBOL_GPL drivers/iio/imu/adis_lib 0x6c880281 __adis_read_reg +EXPORT_SYMBOL_GPL drivers/iio/imu/adis_lib 0x85364b69 __adis_check_status +EXPORT_SYMBOL_GPL drivers/iio/imu/adis_lib 0x9f17f39c adis_init +EXPORT_SYMBOL_GPL drivers/iio/imu/adis_lib 0xd4df1d88 __adis_write_reg +EXPORT_SYMBOL_GPL drivers/iio/imu/adis_lib 0xf85bc998 __adis_update_bits_base +EXPORT_SYMBOL_GPL drivers/iio/imu/bmi160/bmi160_core 0x8955adcd bmi160_core_probe +EXPORT_SYMBOL_GPL drivers/iio/imu/fxos8700_core 0xd342eccf fxos8700_core_probe +EXPORT_SYMBOL_GPL drivers/iio/imu/inv_mpu6050/inv-mpu6050 0x1ca3e686 inv_mpu_core_probe +EXPORT_SYMBOL_GPL drivers/iio/imu/inv_mpu6050/inv-mpu6050 0x31ad79d9 inv_mpu_pmops +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x042698a1 devm_iio_channel_get_all +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x0aa272f9 iio_read_channel_offset +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x0de0e11b __devm_iio_trigger_register +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x0fdc9a8e iio_write_channel_attribute +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x111de917 iio_read_channel_processed +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x140dcd19 iio_device_release_direct_mode +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x1630d46c devm_iio_channel_get +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x193cf5e5 iio_read_max_channel_raw +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x1eca14ec iio_get_channel_ext_info_count +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x20ce344a iio_format_value +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x26f6b499 iio_str_to_fixpoint +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x2bf9a4fd iio_channel_get_all +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x3551c0d6 iio_read_channel_average_raw +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x3c529a30 iio_enum_read +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x415752aa iio_buffer_get +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x477674f7 iio_enum_available_read +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x4994dc07 devm_iio_trigger_alloc +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x5c0d3847 iio_device_claim_direct_mode +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x5cf1631e iio_write_channel_raw +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x626e612e iio_push_to_buffers +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x6abb37f9 iio_read_channel_raw +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x6d57f14a iio_channel_release_all +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x73479d0b iio_read_avail_channel_raw +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x784294bf iio_validate_scan_mask_onehot +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x8b881e02 iio_write_channel_ext_info +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x8c63a714 iio_read_channel_scale +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0xa23cfbea iio_buffer_put +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0xa4c0d21a iio_get_channel_type +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0xaee46972 iio_read_channel_ext_info +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0xb5433087 iio_update_buffers +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0xbb5f21eb iio_map_array_unregister +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0xcc752859 iio_dealloc_pollfunc +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0xccf3a9cf __devm_iio_device_register +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0xce55032a iio_device_attach_buffer +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0xd3da3cb3 iio_channel_release +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0xe08d34d3 iio_enum_write +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0xe195bda2 iio_read_avail_channel_attribute +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0xe758c989 devm_iio_device_alloc +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0xeaa7d0e6 iio_show_mount_matrix +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0xebf7c9c1 iio_buffer_set_attrs +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0xecea1164 iio_alloc_pollfunc +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0xf13a1c7f iio_convert_raw_to_processed +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0xf51d5275 iio_read_channel_attribute +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0xfdb3072b iio_channel_get +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0xffeed154 iio_map_array_register +EXPORT_SYMBOL_GPL drivers/iio/magnetometer/rm3100-core 0x0a1424e0 rm3100_volatile_table +EXPORT_SYMBOL_GPL drivers/iio/magnetometer/rm3100-core 0x86ffb1b2 rm3100_common_probe +EXPORT_SYMBOL_GPL drivers/iio/magnetometer/rm3100-core 0xaa911f08 rm3100_readable_table +EXPORT_SYMBOL_GPL drivers/iio/magnetometer/rm3100-core 0xcc7209be rm3100_writable_table +EXPORT_SYMBOL_GPL drivers/iio/pressure/mpl115 0x209f31d5 mpl115_probe +EXPORT_SYMBOL_GPL drivers/iio/pressure/zpa2326 0x18338280 zpa2326_isreg_readable +EXPORT_SYMBOL_GPL drivers/iio/pressure/zpa2326 0x3769c923 zpa2326_remove +EXPORT_SYMBOL_GPL drivers/iio/pressure/zpa2326 0x4ff7c48b zpa2326_isreg_precious +EXPORT_SYMBOL_GPL drivers/iio/pressure/zpa2326 0x6ccb2387 zpa2326_probe +EXPORT_SYMBOL_GPL drivers/iio/pressure/zpa2326 0xdaafa0b9 zpa2326_isreg_writeable +EXPORT_SYMBOL_GPL drivers/iio/pressure/zpa2326 0xe1a3b6d3 zpa2326_pm_ops +EXPORT_SYMBOL_GPL drivers/infiniband/core/ib_core 0xdbd019c4 ib_wq +EXPORT_SYMBOL_GPL drivers/infiniband/ulp/rtrs/rtrs-core 0x0b1c7262 rtrs_init_hb +EXPORT_SYMBOL_GPL drivers/infiniband/ulp/rtrs/rtrs-core 0x1bb571a4 rtrs_post_rdma_write_imm_empty +EXPORT_SYMBOL_GPL drivers/infiniband/ulp/rtrs/rtrs-core 0x1d4c03bb rtrs_iu_post_recv +EXPORT_SYMBOL_GPL drivers/infiniband/ulp/rtrs/rtrs-core 0x262e140a rtrs_post_recv_empty +EXPORT_SYMBOL_GPL drivers/infiniband/ulp/rtrs/rtrs-core 0x2e1ac348 rtrs_cq_qp_destroy +EXPORT_SYMBOL_GPL drivers/infiniband/ulp/rtrs/rtrs-core 0x4f552373 rtrs_start_hb +EXPORT_SYMBOL_GPL drivers/infiniband/ulp/rtrs/rtrs-core 0x6dcd90da rtrs_iu_alloc +EXPORT_SYMBOL_GPL drivers/infiniband/ulp/rtrs/rtrs-core 0x6e0951b5 rtrs_cq_qp_create +EXPORT_SYMBOL_GPL drivers/infiniband/ulp/rtrs/rtrs-core 0x8574bfeb rtrs_iu_post_send +EXPORT_SYMBOL_GPL drivers/infiniband/ulp/rtrs/rtrs-core 0xa1af0d2f rtrs_stop_hb +EXPORT_SYMBOL_GPL drivers/infiniband/ulp/rtrs/rtrs-core 0xb7e95a5e rtrs_iu_post_rdma_write_imm +EXPORT_SYMBOL_GPL drivers/infiniband/ulp/rtrs/rtrs-core 0xde56f843 rtrs_iu_free +EXPORT_SYMBOL_GPL drivers/infiniband/ulp/rtrs/rtrs-core 0xf307032f rtrs_send_hb_ack +EXPORT_SYMBOL_GPL drivers/input/ff-memless 0x0786e32a input_ff_create_memless +EXPORT_SYMBOL_GPL drivers/input/matrix-keymap 0xfe453471 matrix_keypad_parse_properties +EXPORT_SYMBOL_GPL drivers/input/misc/adxl34x 0x3d910892 adxl34x_probe +EXPORT_SYMBOL_GPL drivers/input/misc/adxl34x 0x49a4fcbd adxl34x_remove +EXPORT_SYMBOL_GPL drivers/input/misc/adxl34x 0x66535a18 adxl34x_suspend +EXPORT_SYMBOL_GPL drivers/input/misc/adxl34x 0xe4586827 adxl34x_resume +EXPORT_SYMBOL_GPL drivers/input/rmi4/rmi_core 0x0c9fdb6a rmi_2d_sensor_abs_process +EXPORT_SYMBOL_GPL drivers/input/rmi4/rmi_core 0x3275af46 rmi_2d_sensor_of_probe +EXPORT_SYMBOL_GPL drivers/input/rmi4/rmi_core 0x45250263 rmi_of_property_read_u32 +EXPORT_SYMBOL_GPL drivers/input/rmi4/rmi_core 0x529e0abf rmi_unregister_function_handler +EXPORT_SYMBOL_GPL drivers/input/rmi4/rmi_core 0x5a25a11c rmi_register_transport_device +EXPORT_SYMBOL_GPL drivers/input/rmi4/rmi_core 0x69e3983c rmi_2d_sensor_configure_input +EXPORT_SYMBOL_GPL drivers/input/rmi4/rmi_core 0x7cf22d24 rmi_2d_sensor_abs_report +EXPORT_SYMBOL_GPL drivers/input/rmi4/rmi_core 0x82bcbe61 rmi_dbg +EXPORT_SYMBOL_GPL drivers/input/rmi4/rmi_core 0x92a8cd04 rmi_driver_suspend +EXPORT_SYMBOL_GPL drivers/input/rmi4/rmi_core 0x9476b3e8 __rmi_register_function_handler +EXPORT_SYMBOL_GPL drivers/input/rmi4/rmi_core 0x999c28d8 rmi_2d_sensor_rel_report +EXPORT_SYMBOL_GPL drivers/input/rmi4/rmi_core 0x9a9bdea3 rmi_driver_resume +EXPORT_SYMBOL_GPL drivers/input/rmi4/rmi_core 0xe1b5ebaa rmi_set_attn_data +EXPORT_SYMBOL_GPL drivers/input/touchscreen/cyttsp4_core 0x3db9dfdb cyttsp4_probe +EXPORT_SYMBOL_GPL drivers/input/touchscreen/cyttsp4_core 0x69e35005 cyttsp4_remove +EXPORT_SYMBOL_GPL drivers/input/touchscreen/cyttsp4_core 0xbff7be4f cyttsp4_pm_ops +EXPORT_SYMBOL_GPL drivers/input/touchscreen/cyttsp_core 0x9f7f22d3 cyttsp_probe +EXPORT_SYMBOL_GPL drivers/input/touchscreen/cyttsp_core 0xc676696f cyttsp_pm_ops +EXPORT_SYMBOL_GPL drivers/input/touchscreen/cyttsp_i2c_common 0x289d11d3 cyttsp_i2c_write_block_data +EXPORT_SYMBOL_GPL drivers/input/touchscreen/cyttsp_i2c_common 0xc9aa7c46 cyttsp_i2c_read_block_data +EXPORT_SYMBOL_GPL drivers/input/touchscreen/tsc200x-core 0x075574fa tsc200x_pm_ops +EXPORT_SYMBOL_GPL drivers/input/touchscreen/tsc200x-core 0x505eac6c tsc200x_remove +EXPORT_SYMBOL_GPL drivers/input/touchscreen/tsc200x-core 0xbed8789e tsc200x_probe +EXPORT_SYMBOL_GPL drivers/input/touchscreen/tsc200x-core 0xf2e7211d tsc200x_regmap_config +EXPORT_SYMBOL_GPL drivers/input/touchscreen/wm97xx-ts 0x17d4c54c wm97xx_config_gpio +EXPORT_SYMBOL_GPL drivers/input/touchscreen/wm97xx-ts 0x23577c24 wm97xx_set_suspend_mode +EXPORT_SYMBOL_GPL drivers/input/touchscreen/wm97xx-ts 0x5aba72e6 wm97xx_get_gpio +EXPORT_SYMBOL_GPL drivers/input/touchscreen/wm97xx-ts 0x77cddf34 wm97xx_unregister_mach_ops +EXPORT_SYMBOL_GPL drivers/input/touchscreen/wm97xx-ts 0x790fbc7c wm9713_codec +EXPORT_SYMBOL_GPL drivers/input/touchscreen/wm97xx-ts 0x7c1a4cbc wm97xx_read_aux_adc +EXPORT_SYMBOL_GPL drivers/input/touchscreen/wm97xx-ts 0xa81ba1b8 wm9705_codec +EXPORT_SYMBOL_GPL drivers/input/touchscreen/wm97xx-ts 0xae2a78da wm97xx_reg_write +EXPORT_SYMBOL_GPL drivers/input/touchscreen/wm97xx-ts 0xb06e7632 wm97xx_reg_read +EXPORT_SYMBOL_GPL drivers/input/touchscreen/wm97xx-ts 0xb5a5bce2 wm9712_codec +EXPORT_SYMBOL_GPL drivers/input/touchscreen/wm97xx-ts 0xd4b7f78f wm97xx_set_gpio +EXPORT_SYMBOL_GPL drivers/input/touchscreen/wm97xx-ts 0xecb5012a wm97xx_register_mach_ops +EXPORT_SYMBOL_GPL drivers/interconnect/imx/imx-interconnect 0x987e09d8 imx_icc_unregister +EXPORT_SYMBOL_GPL drivers/interconnect/imx/imx-interconnect 0xc2cfae9a imx_icc_register +EXPORT_SYMBOL_GPL drivers/interconnect/qcom/icc-smd-rpm 0x81e513ad qcom_icc_rpm_smd_available +EXPORT_SYMBOL_GPL drivers/interconnect/qcom/icc-smd-rpm 0xe8dbdc6c qcom_icc_rpm_smd_send +EXPORT_SYMBOL_GPL drivers/iommu/iova 0x14450656 free_iova +EXPORT_SYMBOL_GPL drivers/iommu/iova 0x438d8df2 iova_cache_get +EXPORT_SYMBOL_GPL drivers/iommu/iova 0x560ca013 copy_reserved_iova +EXPORT_SYMBOL_GPL drivers/iommu/iova 0x632be339 find_iova +EXPORT_SYMBOL_GPL drivers/iommu/iova 0x6591423e alloc_iova_fast +EXPORT_SYMBOL_GPL drivers/iommu/iova 0x7b03b40e reserve_iova +EXPORT_SYMBOL_GPL drivers/iommu/iova 0x89032608 put_iova_domain +EXPORT_SYMBOL_GPL drivers/iommu/iova 0x99b29474 free_iova_fast +EXPORT_SYMBOL_GPL drivers/iommu/iova 0xa4066476 init_iova_domain +EXPORT_SYMBOL_GPL drivers/iommu/iova 0xb9939bcd queue_iova +EXPORT_SYMBOL_GPL drivers/iommu/iova 0xc7061ef3 iova_cache_put +EXPORT_SYMBOL_GPL drivers/iommu/iova 0xc76f53b7 alloc_iova +EXPORT_SYMBOL_GPL drivers/iommu/iova 0xdaa3dd25 __free_iova +EXPORT_SYMBOL_GPL drivers/iommu/iova 0xf4901ce0 init_iova_flush_queue +EXPORT_SYMBOL_GPL drivers/ipack/ipack 0x0c5f49cd ipack_put_device +EXPORT_SYMBOL_GPL drivers/ipack/ipack 0x27a23077 ipack_bus_register +EXPORT_SYMBOL_GPL drivers/ipack/ipack 0x4e8c875f ipack_driver_register +EXPORT_SYMBOL_GPL drivers/ipack/ipack 0x5721ca41 ipack_device_add +EXPORT_SYMBOL_GPL drivers/ipack/ipack 0x75065b0c ipack_device_del +EXPORT_SYMBOL_GPL drivers/ipack/ipack 0x8bc8c593 ipack_bus_unregister +EXPORT_SYMBOL_GPL drivers/ipack/ipack 0xac13b678 ipack_driver_unregister +EXPORT_SYMBOL_GPL drivers/ipack/ipack 0xdb3163d1 ipack_device_init +EXPORT_SYMBOL_GPL drivers/ipack/ipack 0xfbd86310 ipack_get_device +EXPORT_SYMBOL_GPL drivers/leds/led-class-flash 0x0b710929 led_classdev_flash_register_ext +EXPORT_SYMBOL_GPL drivers/leds/led-class-flash 0x53dfbac2 devm_led_classdev_flash_unregister +EXPORT_SYMBOL_GPL drivers/leds/led-class-flash 0x58cf49d2 led_update_flash_brightness +EXPORT_SYMBOL_GPL drivers/leds/led-class-flash 0x8ea4a5b1 led_set_flash_timeout +EXPORT_SYMBOL_GPL drivers/leds/led-class-flash 0x9f10ab63 led_get_flash_fault +EXPORT_SYMBOL_GPL drivers/leds/led-class-flash 0xc09bb5f4 led_classdev_flash_unregister +EXPORT_SYMBOL_GPL drivers/leds/led-class-flash 0xd462ea60 devm_led_classdev_flash_register_ext +EXPORT_SYMBOL_GPL drivers/leds/led-class-flash 0xe5b553d9 led_set_flash_brightness +EXPORT_SYMBOL_GPL drivers/leds/leds-lp55xx-common 0x06b02bd4 lp55xx_write +EXPORT_SYMBOL_GPL drivers/leds/leds-lp55xx-common 0x19a54183 lp55xx_unregister_sysfs +EXPORT_SYMBOL_GPL drivers/leds/leds-lp55xx-common 0x1f6c9d09 lp55xx_register_sysfs +EXPORT_SYMBOL_GPL drivers/leds/leds-lp55xx-common 0x4ba9e3eb lp55xx_unregister_leds +EXPORT_SYMBOL_GPL drivers/leds/leds-lp55xx-common 0x52218a59 lp55xx_is_extclk_used +EXPORT_SYMBOL_GPL drivers/leds/leds-lp55xx-common 0x56d088fa lp55xx_init_device +EXPORT_SYMBOL_GPL drivers/leds/leds-lp55xx-common 0x7fd63e03 lp55xx_of_populate_pdata +EXPORT_SYMBOL_GPL drivers/leds/leds-lp55xx-common 0x809a761a lp55xx_update_bits +EXPORT_SYMBOL_GPL drivers/leds/leds-lp55xx-common 0x83d39936 lp55xx_read +EXPORT_SYMBOL_GPL drivers/leds/leds-lp55xx-common 0xacde6207 lp55xx_deinit_device +EXPORT_SYMBOL_GPL drivers/leds/leds-lp55xx-common 0xd2f31597 lp55xx_register_leds +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 0x00af95a1 __tracepoint_bcache_btree_set_root +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0x06d94b0a __tracepoint_bcache_gc_start +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0x157aa73e __tracepoint_bcache_gc_copy +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0x19a50641 __tracepoint_bcache_journal_full +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0x19acd14e __tracepoint_bcache_journal_entry_full +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0x1e382318 __tracepoint_bcache_btree_node_split +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0x24935482 __tracepoint_bcache_bypass_sequential +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0x28991160 __tracepoint_bcache_read_retry +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0x29ef0066 __tracepoint_bcache_btree_gc_coalesce +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0x2cd1be34 __tracepoint_bcache_request_start +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0x3ae1afd1 __tracepoint_bcache_journal_write +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0x4f0216b8 __tracepoint_bcache_btree_node_compact +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0x56bd5947 __tracepoint_bcache_gc_copy_collision +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0x5cb0a24a __tracepoint_bcache_bypass_congested +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0x65835607 __tracepoint_bcache_btree_write +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0x68b2f180 __tracepoint_bcache_btree_cache_cannibalize +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0x7baca7fe __tracepoint_bcache_btree_read +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0x95286aa1 __tracepoint_bcache_invalidate +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0x9cedcd57 __tracepoint_bcache_alloc_fail +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0xa60fcee9 __tracepoint_bcache_read +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0xafae4e81 __tracepoint_bcache_btree_node_alloc_fail +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0xb4b03b2e __tracepoint_bcache_request_end +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0xb7500cb5 __tracepoint_bcache_gc_end +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0xc1fd1dbc __tracepoint_bcache_btree_insert_key +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0xd4cd3c1a __tracepoint_bcache_writeback +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0xe278bd6d __tracepoint_bcache_cache_insert +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0xe68d70a9 __tracepoint_bcache_write +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0xee926d8f __tracepoint_bcache_writeback_collision +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0xf30b9aa6 __tracepoint_bcache_journal_replay_key +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0xf438022f __tracepoint_bcache_btree_node_alloc +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0xfbd03183 __tracepoint_bcache_btree_node_free +EXPORT_SYMBOL_GPL drivers/md/dm-bio-prison 0x09d26fc2 dm_bio_detain +EXPORT_SYMBOL_GPL drivers/md/dm-bio-prison 0x17dd39d6 dm_deferred_set_create +EXPORT_SYMBOL_GPL drivers/md/dm-bio-prison 0x2b59c0b0 dm_cell_promote_or_release +EXPORT_SYMBOL_GPL drivers/md/dm-bio-prison 0x2eb01e04 dm_deferred_set_destroy +EXPORT_SYMBOL_GPL drivers/md/dm-bio-prison 0x316f7eda dm_cell_lock_v2 +EXPORT_SYMBOL_GPL drivers/md/dm-bio-prison 0x49cb8d22 dm_cell_visit_release +EXPORT_SYMBOL_GPL drivers/md/dm-bio-prison 0x4c9d521b dm_cell_put_v2 +EXPORT_SYMBOL_GPL drivers/md/dm-bio-prison 0x58d5cc70 dm_cell_release +EXPORT_SYMBOL_GPL drivers/md/dm-bio-prison 0x5e4b2651 dm_bio_prison_alloc_cell_v2 +EXPORT_SYMBOL_GPL drivers/md/dm-bio-prison 0x607f860c dm_cell_lock_promote_v2 +EXPORT_SYMBOL_GPL drivers/md/dm-bio-prison 0x6791a44e dm_deferred_entry_dec +EXPORT_SYMBOL_GPL drivers/md/dm-bio-prison 0x753e20b2 dm_bio_prison_create +EXPORT_SYMBOL_GPL drivers/md/dm-bio-prison 0x8123fd44 dm_bio_prison_free_cell_v2 +EXPORT_SYMBOL_GPL drivers/md/dm-bio-prison 0x87236a4d dm_cell_quiesce_v2 +EXPORT_SYMBOL_GPL drivers/md/dm-bio-prison 0x8f876ced dm_get_cell +EXPORT_SYMBOL_GPL drivers/md/dm-bio-prison 0x90745af5 dm_bio_prison_alloc_cell +EXPORT_SYMBOL_GPL drivers/md/dm-bio-prison 0x9380ad45 dm_cell_error +EXPORT_SYMBOL_GPL drivers/md/dm-bio-prison 0xa462af77 dm_cell_release_no_holder +EXPORT_SYMBOL_GPL drivers/md/dm-bio-prison 0xace9b57b dm_bio_prison_destroy_v2 +EXPORT_SYMBOL_GPL drivers/md/dm-bio-prison 0xb50ef546 dm_bio_prison_free_cell +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 0xd99e003d dm_bio_prison_create_v2 +EXPORT_SYMBOL_GPL drivers/md/dm-bio-prison 0xdc4a53f5 dm_cell_get_v2 +EXPORT_SYMBOL_GPL drivers/md/dm-bio-prison 0xf38f9aad dm_cell_unlock_v2 +EXPORT_SYMBOL_GPL drivers/md/dm-bufio 0x0ad0dc4f dm_bufio_mark_buffer_dirty +EXPORT_SYMBOL_GPL drivers/md/dm-bufio 0x111ab12a dm_bufio_mark_partial_buffer_dirty +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 0x6aebce95 dm_bufio_issue_discard +EXPORT_SYMBOL_GPL drivers/md/dm-bufio 0x6d3f57bd dm_bufio_get_client +EXPORT_SYMBOL_GPL drivers/md/dm-bufio 0x72f07bf4 dm_bufio_set_minimum_buffers +EXPORT_SYMBOL_GPL drivers/md/dm-bufio 0x74dcd98c dm_bufio_get_aux_data +EXPORT_SYMBOL_GPL drivers/md/dm-bufio 0x7c381a76 dm_bufio_get_block_size +EXPORT_SYMBOL_GPL drivers/md/dm-bufio 0x867e87eb dm_bufio_get_dm_io_client +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 0xb2438d54 dm_bufio_release_move +EXPORT_SYMBOL_GPL drivers/md/dm-bufio 0xc0d7df85 dm_bufio_new +EXPORT_SYMBOL_GPL drivers/md/dm-bufio 0xc90df7e5 dm_bufio_prefetch +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-bufio 0xf4a6d5a9 dm_bufio_client_create +EXPORT_SYMBOL_GPL drivers/md/dm-cache 0x03bb93e0 dm_cache_policy_get_name +EXPORT_SYMBOL_GPL drivers/md/dm-cache 0x0efbca4c btracker_promotion_already_present +EXPORT_SYMBOL_GPL drivers/md/dm-cache 0x3d666e0e dm_cache_policy_unregister +EXPORT_SYMBOL_GPL drivers/md/dm-cache 0x5730f8ae dm_cache_policy_create +EXPORT_SYMBOL_GPL drivers/md/dm-cache 0x5adc2807 btracker_destroy +EXPORT_SYMBOL_GPL drivers/md/dm-cache 0x5b3dc349 dm_cache_policy_get_version +EXPORT_SYMBOL_GPL drivers/md/dm-cache 0x5de611a9 btracker_nr_writebacks_queued +EXPORT_SYMBOL_GPL drivers/md/dm-cache 0x75c08c4a dm_cache_policy_register +EXPORT_SYMBOL_GPL drivers/md/dm-cache 0x87bee547 btracker_queue +EXPORT_SYMBOL_GPL drivers/md/dm-cache 0x8f647e48 dm_cache_policy_get_hint_size +EXPORT_SYMBOL_GPL drivers/md/dm-cache 0x90136207 dm_cache_policy_destroy +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 0xbf1a2968 btracker_create +EXPORT_SYMBOL_GPL drivers/md/dm-cache 0xccfe6409 btracker_nr_demotions_queued +EXPORT_SYMBOL_GPL drivers/md/dm-multipath 0x8af764d1 dm_register_path_selector +EXPORT_SYMBOL_GPL drivers/md/dm-multipath 0xa57c5512 dm_unregister_path_selector +EXPORT_SYMBOL_GPL drivers/md/dm-region-hash 0x01d2f9ac dm_rh_recovery_start +EXPORT_SYMBOL_GPL drivers/md/dm-region-hash 0x3214bd4b dm_rh_inc_pending +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 0x4dca22df dm_rh_bio_to_region +EXPORT_SYMBOL_GPL drivers/md/dm-region-hash 0x57e16c3e dm_rh_get_state +EXPORT_SYMBOL_GPL drivers/md/dm-region-hash 0x5f4a6e61 dm_rh_dec +EXPORT_SYMBOL_GPL drivers/md/dm-region-hash 0x66696f01 dm_rh_dirty_log +EXPORT_SYMBOL_GPL drivers/md/dm-region-hash 0x77739eaa dm_rh_mark_nosync +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 0x85dcc69a dm_rh_delay +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 0xe5a79f77 dm_region_hash_create +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 0x09cc81fa dm_btree_cursor_skip +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x0a7e77f3 dm_btree_cursor_end +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x0b25f6bc dm_array_resize +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x0b36102c dm_array_empty +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x0be67537 dm_btree_walk +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x0e198232 dm_btree_insert +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x10e6ccea dm_bitset_clear_bit +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x16af9071 dm_array_set_value +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x1e3f728d dm_block_data +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x23ebd5fb dm_bitset_set_bit +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x2417c5c4 dm_btree_empty +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x29c25d50 dm_bm_write_lock_zero +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x2adee13f dm_btree_cursor_next +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 0x34d45c77 dm_btree_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 0x36a34e58 dm_array_cursor_get_value +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x36b84cda dm_array_del +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x3a797d19 dm_btree_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 0x432b8178 dm_array_cursor_begin +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x4557b425 dm_bitset_test_bit +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x46af8087 dm_bm_read_lock +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x48d1c7dc dm_btree_find_lowest_key +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x48e323be dm_bm_unlock +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x49081644 dm_btree_remove +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x4a4cb558 dm_btree_insert_notify +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x5475ba9e dm_block_location +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x55f98e63 dm_tm_open_with_sm +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x630a38db dm_block_manager_create +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x63b0c22d dm_bitset_flush +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x64976f82 dm_tm_shadow_block +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x688d422d dm_bm_block_size +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x6af8a872 dm_array_info_init +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x6bb4bf8f dm_array_cursor_next +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x6e1e3821 dm_array_walk +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x6f2fe3c4 dm_btree_remove_leaves +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 0x7485935a dm_btree_lookup +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x764567c8 dm_btree_find_highest_key +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 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 0x885b0024 dm_array_new +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x89783bda dm_array_cursor_end +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x8a56150c dm_tm_read_lock +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 0x97263968 dm_bitset_resize +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x98db2687 dm_bitset_cursor_end +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 0x9e98460e dm_bitset_empty +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0xa2ea5542 dm_bitset_del +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0xa3cc1157 dm_btree_cursor_begin +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0xa433adbc dm_bm_write_lock +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0xa51fbedc dm_bitset_new +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0xa7083b63 dm_sm_disk_create +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0xaab0ef04 dm_bitset_cursor_skip +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0xb6949944 dm_array_get_value +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0xb8dbd4e1 dm_sm_disk_open +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0xbb461fb7 dm_bitset_cursor_begin +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0xbbb5df05 dm_array_cursor_skip +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0xc248bde2 dm_disk_bitset_init +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0xcedfc878 dm_bitset_cursor_get_value +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0xd163cade dm_tm_commit +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0xd6367ed7 dm_tm_create_with_sm +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0xd6711a58 dm_bitset_cursor_next +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0xe781f874 dm_tm_dec +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0xf398644f dm_btree_lookup_next +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0xf3e25192 dm_bm_checksum +EXPORT_SYMBOL_GPL drivers/media/cec/core/cec 0x00bba4ee cec_allocate_adapter +EXPORT_SYMBOL_GPL drivers/media/cec/core/cec 0x122db2a8 cec_delete_adapter +EXPORT_SYMBOL_GPL drivers/media/cec/core/cec 0x15ffce0e cec_transmit_msg +EXPORT_SYMBOL_GPL drivers/media/cec/core/cec 0x3e654d47 cec_queue_pin_hpd_event +EXPORT_SYMBOL_GPL drivers/media/cec/core/cec 0x45403736 cec_queue_pin_5v_event +EXPORT_SYMBOL_GPL drivers/media/cec/core/cec 0x48d27f16 cec_s_conn_info +EXPORT_SYMBOL_GPL drivers/media/cec/core/cec 0x4d387846 cec_register_adapter +EXPORT_SYMBOL_GPL drivers/media/cec/core/cec 0x4f08d01b cec_notifier_parse_hdmi_phandle +EXPORT_SYMBOL_GPL drivers/media/cec/core/cec 0x59204a37 cec_s_log_addrs +EXPORT_SYMBOL_GPL drivers/media/cec/core/cec 0x64cd0738 cec_received_msg_ts +EXPORT_SYMBOL_GPL drivers/media/cec/core/cec 0x7252160f cec_queue_pin_cec_event +EXPORT_SYMBOL_GPL drivers/media/cec/core/cec 0x77b470f4 cec_transmit_attempt_done_ts +EXPORT_SYMBOL_GPL drivers/media/cec/core/cec 0x8bc72bd8 cec_s_phys_addr +EXPORT_SYMBOL_GPL drivers/media/cec/core/cec 0x9bac66d6 cec_notifier_conn_register +EXPORT_SYMBOL_GPL drivers/media/cec/core/cec 0x9f55cc14 cec_unregister_adapter +EXPORT_SYMBOL_GPL drivers/media/cec/core/cec 0xa01fbb6b cec_notifier_set_phys_addr +EXPORT_SYMBOL_GPL drivers/media/cec/core/cec 0xa072610e cec_notifier_cec_adap_register +EXPORT_SYMBOL_GPL drivers/media/cec/core/cec 0xa312da2d cec_fill_conn_info_from_drm +EXPORT_SYMBOL_GPL drivers/media/cec/core/cec 0xaee236c6 cec_notifier_conn_unregister +EXPORT_SYMBOL_GPL drivers/media/cec/core/cec 0xba245d73 cec_s_phys_addr_from_edid +EXPORT_SYMBOL_GPL drivers/media/cec/core/cec 0xba5aee0a cec_notifier_cec_adap_unregister +EXPORT_SYMBOL_GPL drivers/media/cec/core/cec 0xbe4de675 cec_get_edid_phys_addr +EXPORT_SYMBOL_GPL drivers/media/cec/core/cec 0xbf8dd70b cec_transmit_done_ts +EXPORT_SYMBOL_GPL drivers/media/cec/core/cec 0xf8c99364 cec_notifier_set_phys_addr_from_edid +EXPORT_SYMBOL_GPL drivers/media/common/b2c2/b2c2-flexcop 0x66c0289a b2c2_flexcop_debug +EXPORT_SYMBOL_GPL drivers/media/common/saa7146/saa7146 0x02e1fb33 saa7146_register_extension +EXPORT_SYMBOL_GPL drivers/media/common/saa7146/saa7146 0x0c178f13 saa7146_pgtable_alloc +EXPORT_SYMBOL_GPL drivers/media/common/saa7146/saa7146 0x45be26f2 saa7146_vfree_destroy_pgtable +EXPORT_SYMBOL_GPL drivers/media/common/saa7146/saa7146 0x5cc8588f saa7146_vmalloc_build_pgtable +EXPORT_SYMBOL_GPL drivers/media/common/saa7146/saa7146 0x76cbcfd8 saa7146_unregister_extension +EXPORT_SYMBOL_GPL drivers/media/common/saa7146/saa7146 0xdb549759 saa7146_setgpio +EXPORT_SYMBOL_GPL drivers/media/common/saa7146/saa7146 0xdf1bdae4 saa7146_pgtable_free +EXPORT_SYMBOL_GPL drivers/media/common/saa7146/saa7146 0xe3cd9b5c saa7146_debug +EXPORT_SYMBOL_GPL drivers/media/common/saa7146/saa7146 0xe64fc9b7 saa7146_pgtable_build_single +EXPORT_SYMBOL_GPL drivers/media/common/saa7146/saa7146 0xecabc14a saa7146_wait_for_debi_done +EXPORT_SYMBOL_GPL drivers/media/common/saa7146/saa7146 0xf25b988c saa7146_i2c_adapter_prepare +EXPORT_SYMBOL_GPL drivers/media/common/saa7146/saa7146_vv 0x0532da0b saa7146_start_preview +EXPORT_SYMBOL_GPL drivers/media/common/saa7146/saa7146_vv 0x0e8e9858 saa7146_vv_init +EXPORT_SYMBOL_GPL drivers/media/common/saa7146/saa7146_vv 0x609a422f saa7146_set_hps_source_and_sync +EXPORT_SYMBOL_GPL drivers/media/common/saa7146/saa7146_vv 0x9241f644 saa7146_stop_preview +EXPORT_SYMBOL_GPL drivers/media/common/saa7146/saa7146_vv 0xcfcbebff saa7146_vv_release +EXPORT_SYMBOL_GPL drivers/media/common/saa7146/saa7146_vv 0xec016348 saa7146_unregister_device +EXPORT_SYMBOL_GPL drivers/media/common/saa7146/saa7146_vv 0xfa0fa10a saa7146_register_device +EXPORT_SYMBOL_GPL drivers/media/common/siano/smsmdtv 0x032122a9 sms_board_led_feedback +EXPORT_SYMBOL_GPL drivers/media/common/siano/smsmdtv 0x0c55f342 smscore_register_device +EXPORT_SYMBOL_GPL drivers/media/common/siano/smsmdtv 0x194d819e smscore_register_client +EXPORT_SYMBOL_GPL drivers/media/common/siano/smsmdtv 0x1dd39ddf smscore_unregister_device +EXPORT_SYMBOL_GPL drivers/media/common/siano/smsmdtv 0x21e36bf2 smscore_registry_getmode +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 0x38a64316 smscore_putbuffer +EXPORT_SYMBOL_GPL drivers/media/common/siano/smsmdtv 0x45284ae9 smsendian_handle_rx_message +EXPORT_SYMBOL_GPL drivers/media/common/siano/smsmdtv 0x45b59d3b sms_board_event +EXPORT_SYMBOL_GPL drivers/media/common/siano/smsmdtv 0x553f7725 smscore_get_device_mode +EXPORT_SYMBOL_GPL drivers/media/common/siano/smsmdtv 0x59a4765f smscore_getbuffer +EXPORT_SYMBOL_GPL drivers/media/common/siano/smsmdtv 0x5de298da sms_board_power +EXPORT_SYMBOL_GPL drivers/media/common/siano/smsmdtv 0x63222b29 smsclient_sendrequest +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 0x827a8c5b sms_board_setup +EXPORT_SYMBOL_GPL drivers/media/common/siano/smsmdtv 0x844539ae sms_get_board +EXPORT_SYMBOL_GPL drivers/media/common/siano/smsmdtv 0xb2d333c7 smscore_start_device +EXPORT_SYMBOL_GPL drivers/media/common/siano/smsmdtv 0xb6ab6dfc smscore_onresponse +EXPORT_SYMBOL_GPL drivers/media/common/siano/smsmdtv 0xbbdb5c42 smscore_unregister_client +EXPORT_SYMBOL_GPL drivers/media/common/siano/smsmdtv 0xc144dc6a smscore_register_hotplug +EXPORT_SYMBOL_GPL drivers/media/common/siano/smsmdtv 0xc60fcb26 smscore_set_board_id +EXPORT_SYMBOL_GPL drivers/media/common/siano/smsmdtv 0xdaf84e62 smscore_unregister_hotplug +EXPORT_SYMBOL_GPL drivers/media/common/siano/smsmdtv 0xf78293a8 smscore_get_board_id +EXPORT_SYMBOL_GPL drivers/media/common/siano/smsmdtv 0xfd2a438a sms_board_lna_control +EXPORT_SYMBOL_GPL drivers/media/common/v4l2-tpg/v4l2-tpg 0x03005a48 tpg_alloc +EXPORT_SYMBOL_GPL drivers/media/common/v4l2-tpg/v4l2-tpg 0x040dc7cd tpg_aspect_strings +EXPORT_SYMBOL_GPL drivers/media/common/v4l2-tpg/v4l2-tpg 0x4d1d285c tpg_init +EXPORT_SYMBOL_GPL drivers/media/common/v4l2-tpg/v4l2-tpg 0x517e7ccd tpg_fill_plane_buffer +EXPORT_SYMBOL_GPL drivers/media/common/v4l2-tpg/v4l2-tpg 0x579c6308 tpg_gen_text +EXPORT_SYMBOL_GPL drivers/media/common/v4l2-tpg/v4l2-tpg 0x6026aaf0 tpg_log_status +EXPORT_SYMBOL_GPL drivers/media/common/v4l2-tpg/v4l2-tpg 0x6960e899 tpg_s_crop_compose +EXPORT_SYMBOL_GPL drivers/media/common/v4l2-tpg/v4l2-tpg 0x756516e7 tpg_s_fourcc +EXPORT_SYMBOL_GPL drivers/media/common/v4l2-tpg/v4l2-tpg 0x7a5d8c0b tpg_update_mv_step +EXPORT_SYMBOL_GPL drivers/media/common/v4l2-tpg/v4l2-tpg 0x86b4ddf7 tpg_reset_source +EXPORT_SYMBOL_GPL drivers/media/common/v4l2-tpg/v4l2-tpg 0x975a1e29 tpg_g_interleaved_plane +EXPORT_SYMBOL_GPL drivers/media/common/v4l2-tpg/v4l2-tpg 0xaa5503d9 tpg_set_font +EXPORT_SYMBOL_GPL drivers/media/common/v4l2-tpg/v4l2-tpg 0xc6110b6e tpg_free +EXPORT_SYMBOL_GPL drivers/media/common/v4l2-tpg/v4l2-tpg 0xc6808be7 tpg_calc_text_basep +EXPORT_SYMBOL_GPL drivers/media/common/v4l2-tpg/v4l2-tpg 0xce8159bb tpg_pattern_strings +EXPORT_SYMBOL_GPL drivers/media/common/v4l2-tpg/v4l2-tpg 0xf65c5e46 tpg_fillbuffer +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-common 0x021a019c vb2_core_dqbuf +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-common 0x0aa6af5e __tracepoint_vb2_buf_queue +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-common 0x16f67eef __tracepoint_vb2_qbuf +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-common 0x1b125da8 vb2_write +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-common 0x1d544dc9 vb2_request_object_is_buffer +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-common 0x1f2b2a01 vb2_buffer_done +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-common 0x2f105b6a vb2_core_queue_init +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-common 0x421e5794 vb2_core_streamon +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-common 0x4381f396 vb2_thread_start +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-common 0x53521e19 vb2_mmap +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-common 0x60adef96 vb2_wait_for_all_buffers +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-common 0x7b0bf049 vb2_plane_vaddr +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-common 0x7e1e2fe4 vb2_core_create_bufs +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-common 0x7e8a3a3b vb2_core_prepare_buf +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-common 0x7eeeee2e __tracepoint_vb2_buf_done +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-common 0x83006a6c vb2_core_qbuf +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-common 0x88f1425c vb2_core_querybuf +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-common 0x92d0b10b vb2_queue_error +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-common 0x9d401420 vb2_thread_stop +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-common 0x9ee7fa61 vb2_discard_done +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-common 0xa3e23b2e vb2_read +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-common 0xa5a363f1 vb2_plane_cookie +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-common 0xb69dd93a vb2_core_poll +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-common 0xbd7e99f3 vb2_core_streamoff +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-common 0xcfc721d1 vb2_core_expbuf +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-common 0xd8192224 __tracepoint_vb2_dqbuf +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-common 0xe779c33a vb2_core_queue_release +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-common 0xe8e542bb vb2_request_buffer_cnt +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-common 0xfdd41197 vb2_core_reqbufs +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-dma-contig 0x76480ae3 vb2_dma_contig_set_max_seg_size +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-dma-contig 0xbfa82561 vb2_dma_contig_memops +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-dma-sg 0xd25fcdbf vb2_dma_sg_memops +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-memops 0x3a591f42 vb2_common_vm_ops +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-v4l2 0x01e908e2 vb2_qbuf +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-v4l2 0x041b45e5 vb2_prepare_buf +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-v4l2 0x248e4668 _vb2_fop_release +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-v4l2 0x24b08b15 vb2_ioctl_qbuf +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-v4l2 0x375706cb vb2_streamon +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-v4l2 0x387687a6 vb2_expbuf +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-v4l2 0x421065c1 vb2_fop_read +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-v4l2 0x469f64c9 vb2_create_bufs +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-v4l2 0x4d987331 vb2_ops_wait_finish +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-v4l2 0x4ee36821 vb2_streamoff +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-v4l2 0x4fcb922a vb2_fop_poll +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-v4l2 0x5d925414 vb2_ioctl_querybuf +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-v4l2 0x5fd89261 vb2_find_timestamp +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-v4l2 0x648a00c4 vb2_fop_write +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-v4l2 0x70d26740 vb2_queue_release +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-v4l2 0x79b43420 vb2_reqbufs +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-v4l2 0x8df45d4b vb2_fop_release +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-v4l2 0x8fa15cb4 vb2_ioctl_reqbufs +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-v4l2 0x970ff871 vb2_ioctl_streamoff +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-v4l2 0x9a2a2562 vb2_fop_mmap +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-v4l2 0xabc113b4 vb2_ioctl_expbuf +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-v4l2 0xac24b316 vb2_ioctl_streamon +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-v4l2 0xacff8f97 vb2_request_validate +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-v4l2 0xb56320db vb2_queue_init +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-v4l2 0xbf883872 vb2_poll +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-v4l2 0xc2318c71 vb2_request_queue +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-v4l2 0xda04fc16 vb2_ioctl_create_bufs +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-v4l2 0xda5c4896 vb2_ioctl_prepare_buf +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-v4l2 0xe722c9a1 vb2_ioctl_dqbuf +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-v4l2 0xfb99e1e7 vb2_dqbuf +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-v4l2 0xfdac7a38 vb2_ops_wait_prepare +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-vmalloc 0x22d18bed vb2_vmalloc_memops +EXPORT_SYMBOL_GPL drivers/media/dvb-core/dvb-core 0x0cfdca0b dvb_module_release +EXPORT_SYMBOL_GPL drivers/media/dvb-core/dvb-core 0x710e7838 dvb_module_probe +EXPORT_SYMBOL_GPL drivers/media/dvb-core/dvb-core 0x93c940ce dvb_create_media_graph +EXPORT_SYMBOL_GPL drivers/media/dvb-frontends/as102_fe 0x6948c899 as102_attach +EXPORT_SYMBOL_GPL drivers/media/dvb-frontends/cx24117 0xc75c7251 cx24117_attach +EXPORT_SYMBOL_GPL drivers/media/dvb-frontends/gp8psk-fe 0xf6f58985 gp8psk_fe_attach +EXPORT_SYMBOL_GPL drivers/media/dvb-frontends/mxl5xx 0xd1af669d mxl5xx_attach +EXPORT_SYMBOL_GPL drivers/media/dvb-frontends/stv0910 0xecc4d725 stv0910_attach +EXPORT_SYMBOL_GPL drivers/media/dvb-frontends/stv6111 0xcc0b5d2b stv6111_attach +EXPORT_SYMBOL_GPL drivers/media/dvb-frontends/tda18271c2dd 0x9f4637fc tda18271c2dd_attach +EXPORT_SYMBOL_GPL drivers/media/i2c/aptina-pll 0x7b48434d aptina_pll_calculate +EXPORT_SYMBOL_GPL drivers/media/i2c/smiapp-pll 0x475d5467 smiapp_pll_calculate +EXPORT_SYMBOL_GPL drivers/media/mc/mc 0x1194759a media_entity_find_link +EXPORT_SYMBOL_GPL drivers/media/mc/mc 0x125520d6 media_device_delete +EXPORT_SYMBOL_GPL drivers/media/mc/mc 0x184794bb __media_entity_remove_links +EXPORT_SYMBOL_GPL drivers/media/mc/mc 0x27cfd20c __media_entity_setup_link +EXPORT_SYMBOL_GPL drivers/media/mc/mc 0x2e030410 media_device_pci_init +EXPORT_SYMBOL_GPL drivers/media/mc/mc 0x2e9fe9af media_request_put +EXPORT_SYMBOL_GPL drivers/media/mc/mc 0x31534555 media_entity_remote_pad +EXPORT_SYMBOL_GPL drivers/media/mc/mc 0x32bf1959 media_device_unregister_entity_notify +EXPORT_SYMBOL_GPL drivers/media/mc/mc 0x399942a4 __media_remove_intf_links +EXPORT_SYMBOL_GPL drivers/media/mc/mc 0x407476fb media_pipeline_stop +EXPORT_SYMBOL_GPL drivers/media/mc/mc 0x434f1041 __media_device_usb_init +EXPORT_SYMBOL_GPL drivers/media/mc/mc 0x449c231d media_remove_intf_link +EXPORT_SYMBOL_GPL drivers/media/mc/mc 0x48b0edc6 media_device_cleanup +EXPORT_SYMBOL_GPL drivers/media/mc/mc 0x54782582 media_entity_remove_links +EXPORT_SYMBOL_GPL drivers/media/mc/mc 0x5551462f media_graph_walk_cleanup +EXPORT_SYMBOL_GPL drivers/media/mc/mc 0x562e132d media_device_init +EXPORT_SYMBOL_GPL drivers/media/mc/mc 0x5880096d media_graph_walk_next +EXPORT_SYMBOL_GPL drivers/media/mc/mc 0x59153b5d media_device_register_entity_notify +EXPORT_SYMBOL_GPL drivers/media/mc/mc 0x60b81bf8 __media_pipeline_start +EXPORT_SYMBOL_GPL drivers/media/mc/mc 0x6632084c media_graph_walk_start +EXPORT_SYMBOL_GPL drivers/media/mc/mc 0x66d0f51d media_remove_intf_links +EXPORT_SYMBOL_GPL drivers/media/mc/mc 0x6d71849c media_request_object_complete +EXPORT_SYMBOL_GPL drivers/media/mc/mc 0x71505ba4 media_get_pad_index +EXPORT_SYMBOL_GPL drivers/media/mc/mc 0x72a3d43a __media_pipeline_stop +EXPORT_SYMBOL_GPL drivers/media/mc/mc 0x7aa0d26e media_entity_get_fwnode_pad +EXPORT_SYMBOL_GPL drivers/media/mc/mc 0x820398a8 media_request_get_by_fd +EXPORT_SYMBOL_GPL drivers/media/mc/mc 0x848b4890 media_devnode_create +EXPORT_SYMBOL_GPL drivers/media/mc/mc 0x8609030a media_entity_setup_link +EXPORT_SYMBOL_GPL drivers/media/mc/mc 0x87bc12dc media_device_unregister +EXPORT_SYMBOL_GPL drivers/media/mc/mc 0x8d2772ff media_pipeline_start +EXPORT_SYMBOL_GPL drivers/media/mc/mc 0x8e255811 media_create_intf_link +EXPORT_SYMBOL_GPL drivers/media/mc/mc 0x8f6b6588 media_device_usb_allocate +EXPORT_SYMBOL_GPL drivers/media/mc/mc 0x9c634081 media_request_object_bind +EXPORT_SYMBOL_GPL drivers/media/mc/mc 0xa8cd0699 __media_remove_intf_link +EXPORT_SYMBOL_GPL drivers/media/mc/mc 0xba383765 media_request_object_find +EXPORT_SYMBOL_GPL drivers/media/mc/mc 0xba891ac5 media_devnode_remove +EXPORT_SYMBOL_GPL drivers/media/mc/mc 0xc2cf6f74 media_create_pad_link +EXPORT_SYMBOL_GPL drivers/media/mc/mc 0xc8038ae6 media_request_object_unbind +EXPORT_SYMBOL_GPL drivers/media/mc/mc 0xca9e8b8c media_graph_walk_init +EXPORT_SYMBOL_GPL drivers/media/mc/mc 0xcb2f6df4 media_device_register_entity +EXPORT_SYMBOL_GPL drivers/media/mc/mc 0xdc581289 __media_entity_enum_init +EXPORT_SYMBOL_GPL drivers/media/mc/mc 0xdeb41775 media_request_object_put +EXPORT_SYMBOL_GPL drivers/media/mc/mc 0xe1e4d6d7 __media_device_register +EXPORT_SYMBOL_GPL drivers/media/mc/mc 0xe5ceecd6 media_entity_enum_cleanup +EXPORT_SYMBOL_GPL drivers/media/mc/mc 0xe6d9b457 media_device_unregister_entity +EXPORT_SYMBOL_GPL drivers/media/mc/mc 0xe81e2e98 media_create_pad_links +EXPORT_SYMBOL_GPL drivers/media/mc/mc 0xeb88369d media_entity_pads_init +EXPORT_SYMBOL_GPL drivers/media/mc/mc 0xf1d9b38a media_request_object_init +EXPORT_SYMBOL_GPL drivers/media/pci/cx88/cx88xx 0x7d2d0b01 cx88_setup_xc3028 +EXPORT_SYMBOL_GPL drivers/media/pci/mantis/mantis_core 0x02672195 mantis_uart_init +EXPORT_SYMBOL_GPL drivers/media/pci/mantis/mantis_core 0x1acae123 mantis_dma_exit +EXPORT_SYMBOL_GPL drivers/media/pci/mantis/mantis_core 0x1d46e2af mantis_ca_init +EXPORT_SYMBOL_GPL drivers/media/pci/mantis/mantis_core 0x26deaade mantis_gpio_set_bits +EXPORT_SYMBOL_GPL drivers/media/pci/mantis/mantis_core 0x3370c735 mantis_input_init +EXPORT_SYMBOL_GPL drivers/media/pci/mantis/mantis_core 0x37181c2b mantis_dvb_exit +EXPORT_SYMBOL_GPL drivers/media/pci/mantis/mantis_core 0x41d5464e mantis_pci_init +EXPORT_SYMBOL_GPL drivers/media/pci/mantis/mantis_core 0x5e9d5723 mantis_frontend_power +EXPORT_SYMBOL_GPL drivers/media/pci/mantis/mantis_core 0x624c2f5c mantis_stream_control +EXPORT_SYMBOL_GPL drivers/media/pci/mantis/mantis_core 0x627d76da mantis_input_exit +EXPORT_SYMBOL_GPL drivers/media/pci/mantis/mantis_core 0x74ae0ef3 mantis_ca_exit +EXPORT_SYMBOL_GPL drivers/media/pci/mantis/mantis_core 0x77a61dc3 mantis_get_mac +EXPORT_SYMBOL_GPL drivers/media/pci/mantis/mantis_core 0x7973adf2 mantis_i2c_init +EXPORT_SYMBOL_GPL drivers/media/pci/mantis/mantis_core 0xadfe1352 mantis_i2c_exit +EXPORT_SYMBOL_GPL drivers/media/pci/mantis/mantis_core 0xc60cc28b mantis_pci_exit +EXPORT_SYMBOL_GPL drivers/media/pci/mantis/mantis_core 0xce475f83 mantis_dma_init +EXPORT_SYMBOL_GPL drivers/media/pci/mantis/mantis_core 0xd9571a4d mantis_frontend_soft_reset +EXPORT_SYMBOL_GPL drivers/media/pci/mantis/mantis_core 0xe395a28b mantis_dvb_init +EXPORT_SYMBOL_GPL drivers/media/pci/mantis/mantis_core 0xeb615ed8 mantis_uart_exit +EXPORT_SYMBOL_GPL drivers/media/pci/saa7134/saa7134 0x01a82086 saa7134_ts_qops +EXPORT_SYMBOL_GPL drivers/media/pci/saa7134/saa7134 0x085701c2 saa7134_g_std +EXPORT_SYMBOL_GPL drivers/media/pci/saa7134/saa7134 0x119f4e43 saa7134_s_tuner +EXPORT_SYMBOL_GPL drivers/media/pci/saa7134/saa7134 0x2378c3ad saa7134_ts_start_streaming +EXPORT_SYMBOL_GPL drivers/media/pci/saa7134/saa7134 0x24f6bad5 saa7134_querystd +EXPORT_SYMBOL_GPL drivers/media/pci/saa7134/saa7134 0x257a337e saa7134_s_frequency +EXPORT_SYMBOL_GPL drivers/media/pci/saa7134/saa7134 0x27920904 saa7134_g_tuner +EXPORT_SYMBOL_GPL drivers/media/pci/saa7134/saa7134 0x468e3e18 saa7134_querycap +EXPORT_SYMBOL_GPL drivers/media/pci/saa7134/saa7134 0x504a7cc3 saa7134_s_input +EXPORT_SYMBOL_GPL drivers/media/pci/saa7134/saa7134 0x89599e23 saa7134_g_frequency +EXPORT_SYMBOL_GPL drivers/media/pci/saa7134/saa7134 0x92342887 saa7134_ts_stop_streaming +EXPORT_SYMBOL_GPL drivers/media/pci/saa7134/saa7134 0x9e96efbe saa7134_enum_input +EXPORT_SYMBOL_GPL drivers/media/pci/saa7134/saa7134 0x9f67c6c4 saa7134_ts_buffer_init +EXPORT_SYMBOL_GPL drivers/media/pci/saa7134/saa7134 0xa214b787 saa7134_ts_queue_setup +EXPORT_SYMBOL_GPL drivers/media/pci/saa7134/saa7134 0xaa853091 saa7134_vb2_buffer_queue +EXPORT_SYMBOL_GPL drivers/media/pci/saa7134/saa7134 0xbf16b1b8 saa7134_s_std +EXPORT_SYMBOL_GPL drivers/media/pci/saa7134/saa7134 0xc831f142 saa7134_g_input +EXPORT_SYMBOL_GPL drivers/media/pci/saa7134/saa7134 0xd047a4a6 saa7134_stop_streaming +EXPORT_SYMBOL_GPL drivers/media/pci/saa7134/saa7134 0xfac5dbb8 saa7134_ts_buffer_prepare +EXPORT_SYMBOL_GPL drivers/media/pci/ttpci/budget-core 0x4cfc6945 ttpci_budget_init +EXPORT_SYMBOL_GPL drivers/media/pci/ttpci/budget-core 0x5d70819a ttpci_budget_debiwrite +EXPORT_SYMBOL_GPL drivers/media/pci/ttpci/budget-core 0x68be0e86 ttpci_budget_irq10_handler +EXPORT_SYMBOL_GPL drivers/media/pci/ttpci/budget-core 0x6c40db56 ttpci_budget_init_hooks +EXPORT_SYMBOL_GPL drivers/media/pci/ttpci/budget-core 0x7948c222 budget_debug +EXPORT_SYMBOL_GPL drivers/media/pci/ttpci/budget-core 0x85ee5f3a ttpci_budget_debiread +EXPORT_SYMBOL_GPL drivers/media/pci/ttpci/budget-core 0xfbe39e5e ttpci_budget_set_video_port +EXPORT_SYMBOL_GPL drivers/media/pci/ttpci/budget-core 0xff820e71 ttpci_budget_deinit +EXPORT_SYMBOL_GPL drivers/media/platform/marvell-ccic/mcam-core 0x158a04ad mccic_shutdown +EXPORT_SYMBOL_GPL drivers/media/platform/marvell-ccic/mcam-core 0x89d8647e mccic_resume +EXPORT_SYMBOL_GPL drivers/media/platform/marvell-ccic/mcam-core 0xa9dfb7f9 mccic_register +EXPORT_SYMBOL_GPL drivers/media/platform/marvell-ccic/mcam-core 0xd13e0f83 mccic_irq +EXPORT_SYMBOL_GPL drivers/media/platform/marvell-ccic/mcam-core 0xda896f05 mccic_suspend +EXPORT_SYMBOL_GPL drivers/media/platform/mtk-vpu/mtk-vpu 0x141236d1 vpu_get_vdec_hw_capa +EXPORT_SYMBOL_GPL drivers/media/platform/mtk-vpu/mtk-vpu 0x1f20f5b2 vpu_ipi_send +EXPORT_SYMBOL_GPL drivers/media/platform/mtk-vpu/mtk-vpu 0x24dde156 vpu_get_venc_hw_capa +EXPORT_SYMBOL_GPL drivers/media/platform/mtk-vpu/mtk-vpu 0x34ea50c6 vpu_ipi_register +EXPORT_SYMBOL_GPL drivers/media/platform/mtk-vpu/mtk-vpu 0x41b19dae vpu_mapping_dm_addr +EXPORT_SYMBOL_GPL drivers/media/platform/mtk-vpu/mtk-vpu 0xc805dd21 vpu_get_plat_device +EXPORT_SYMBOL_GPL drivers/media/platform/mtk-vpu/mtk-vpu 0xe021252a vpu_wdt_reg_handler +EXPORT_SYMBOL_GPL drivers/media/platform/mtk-vpu/mtk-vpu 0xe552006f vpu_load_firmware +EXPORT_SYMBOL_GPL drivers/media/platform/omap/omap-vout 0x085d8e48 omap_vout_try_window +EXPORT_SYMBOL_GPL drivers/media/platform/omap/omap-vout 0x0a59c11d omap_vout_new_format +EXPORT_SYMBOL_GPL drivers/media/platform/omap/omap-vout 0x0d615dfe omap_vout_default_crop +EXPORT_SYMBOL_GPL drivers/media/platform/omap/omap-vout 0x3739df24 omap_vout_new_window +EXPORT_SYMBOL_GPL drivers/media/platform/omap/omap-vout 0x6e8a3074 omap_vout_new_crop +EXPORT_SYMBOL_GPL drivers/media/platform/rcar-fcp 0x23e237f3 rcar_fcp_get_device +EXPORT_SYMBOL_GPL drivers/media/platform/rcar-fcp 0x3d858696 rcar_fcp_put +EXPORT_SYMBOL_GPL drivers/media/platform/rcar-fcp 0x4ad5d888 rcar_fcp_enable +EXPORT_SYMBOL_GPL drivers/media/platform/rcar-fcp 0x5fe6f6e8 rcar_fcp_disable +EXPORT_SYMBOL_GPL drivers/media/platform/rcar-fcp 0x9877c29f rcar_fcp_get +EXPORT_SYMBOL_GPL drivers/media/platform/vsp1/vsp1 0x01436b67 vsp1_du_map_sg +EXPORT_SYMBOL_GPL drivers/media/platform/vsp1/vsp1 0x298ed56d vsp1_du_atomic_begin +EXPORT_SYMBOL_GPL drivers/media/platform/vsp1/vsp1 0x6b7c9ebb vsp1_du_unmap_sg +EXPORT_SYMBOL_GPL drivers/media/platform/vsp1/vsp1 0x7d7897a4 vsp1_du_atomic_update +EXPORT_SYMBOL_GPL drivers/media/platform/vsp1/vsp1 0x8ddb9bf1 vsp1_du_atomic_flush +EXPORT_SYMBOL_GPL drivers/media/platform/vsp1/vsp1 0xe79743b3 vsp1_du_init +EXPORT_SYMBOL_GPL drivers/media/platform/vsp1/vsp1 0xed3b70b1 vsp1_du_setup_lif +EXPORT_SYMBOL_GPL drivers/media/platform/xilinx/xilinx-video 0x3c7eb685 xvip_set_format_size +EXPORT_SYMBOL_GPL drivers/media/platform/xilinx/xilinx-video 0x47a4f78d xvip_cleanup_resources +EXPORT_SYMBOL_GPL drivers/media/platform/xilinx/xilinx-video 0x6e3199cd xvip_clr_and_set +EXPORT_SYMBOL_GPL drivers/media/platform/xilinx/xilinx-video 0x8c0237b3 xvip_clr_or_set +EXPORT_SYMBOL_GPL drivers/media/platform/xilinx/xilinx-video 0x9b1c84e3 xvip_enum_frame_size +EXPORT_SYMBOL_GPL drivers/media/platform/xilinx/xilinx-video 0xb67940fb xvip_get_format_by_fourcc +EXPORT_SYMBOL_GPL drivers/media/platform/xilinx/xilinx-video 0xc14e32f0 xvip_init_resources +EXPORT_SYMBOL_GPL drivers/media/platform/xilinx/xilinx-video 0xd83b1ea5 xvip_of_get_format +EXPORT_SYMBOL_GPL drivers/media/platform/xilinx/xilinx-video 0xdbabc42b xvip_enum_mbus_code +EXPORT_SYMBOL_GPL drivers/media/platform/xilinx/xilinx-video 0xe08e6063 xvip_get_format_by_code +EXPORT_SYMBOL_GPL drivers/media/platform/xilinx/xilinx-vtc 0x3c16a6b1 xvtc_generator_stop +EXPORT_SYMBOL_GPL drivers/media/platform/xilinx/xilinx-vtc 0x43688c5c xvtc_of_get +EXPORT_SYMBOL_GPL drivers/media/platform/xilinx/xilinx-vtc 0x47d7900b xvtc_generator_start +EXPORT_SYMBOL_GPL drivers/media/platform/xilinx/xilinx-vtc 0xa8a0f912 xvtc_put +EXPORT_SYMBOL_GPL drivers/media/radio/shark2 0x7b48f677 radio_tea5777_init +EXPORT_SYMBOL_GPL drivers/media/radio/shark2 0x96949461 radio_tea5777_exit +EXPORT_SYMBOL_GPL drivers/media/radio/si470x/radio-si470x-common 0x277f5f80 si470x_viddev_template +EXPORT_SYMBOL_GPL drivers/media/radio/si470x/radio-si470x-common 0x650ada4f si470x_set_freq +EXPORT_SYMBOL_GPL drivers/media/radio/si470x/radio-si470x-common 0x66cdac98 si470x_ctrl_ops +EXPORT_SYMBOL_GPL drivers/media/radio/si470x/radio-si470x-common 0x80e54fcf si470x_start +EXPORT_SYMBOL_GPL drivers/media/radio/si470x/radio-si470x-common 0xd15e7b1c si470x_stop +EXPORT_SYMBOL_GPL drivers/media/rc/rc-core 0x0518b9ff rc_g_keycode_from_table +EXPORT_SYMBOL_GPL drivers/media/rc/rc-core 0x05ed2c9c rc_unregister_device +EXPORT_SYMBOL_GPL drivers/media/rc/rc-core 0x154def03 ir_raw_event_set_idle +EXPORT_SYMBOL_GPL drivers/media/rc/rc-core 0x27383244 rc_allocate_device +EXPORT_SYMBOL_GPL drivers/media/rc/rc-core 0x3174467e ir_raw_event_store +EXPORT_SYMBOL_GPL drivers/media/rc/rc-core 0x44c73138 ir_raw_event_store_with_filter +EXPORT_SYMBOL_GPL drivers/media/rc/rc-core 0x52a6e729 rc_map_register +EXPORT_SYMBOL_GPL drivers/media/rc/rc-core 0x52e7529a devm_rc_register_device +EXPORT_SYMBOL_GPL drivers/media/rc/rc-core 0x684157d1 rc_free_device +EXPORT_SYMBOL_GPL drivers/media/rc/rc-core 0x6ce113f1 rc_keydown_notimeout +EXPORT_SYMBOL_GPL drivers/media/rc/rc-core 0x7a0db325 ir_lirc_scancode_event +EXPORT_SYMBOL_GPL drivers/media/rc/rc-core 0x849637b7 rc_register_device +EXPORT_SYMBOL_GPL drivers/media/rc/rc-core 0x870b4266 rc_map_unregister +EXPORT_SYMBOL_GPL drivers/media/rc/rc-core 0x8f6504f7 ir_raw_event_store_with_timeout +EXPORT_SYMBOL_GPL drivers/media/rc/rc-core 0x97577f94 rc_keyup +EXPORT_SYMBOL_GPL drivers/media/rc/rc-core 0xaaa4e48c devm_rc_allocate_device +EXPORT_SYMBOL_GPL drivers/media/rc/rc-core 0xb4406953 ir_raw_event_handle +EXPORT_SYMBOL_GPL drivers/media/rc/rc-core 0xcbca17d9 rc_repeat +EXPORT_SYMBOL_GPL drivers/media/rc/rc-core 0xda06a1db rc_keydown +EXPORT_SYMBOL_GPL drivers/media/rc/rc-core 0xf2c26ead ir_raw_event_store_edge +EXPORT_SYMBOL_GPL drivers/media/rc/rc-core 0xfd5960f2 rc_map_get +EXPORT_SYMBOL_GPL drivers/media/tuners/mt2063 0x0dc864c0 mt2063_attach +EXPORT_SYMBOL_GPL drivers/media/tuners/mt20xx 0x7600615d microtune_attach +EXPORT_SYMBOL_GPL drivers/media/tuners/mxl5007t 0x9d889151 mxl5007t_attach +EXPORT_SYMBOL_GPL drivers/media/tuners/r820t 0x6c48c794 r820t_attach +EXPORT_SYMBOL_GPL drivers/media/tuners/tda18271 0xcb1a4b9a tda18271_attach +EXPORT_SYMBOL_GPL drivers/media/tuners/tda827x 0x8b893286 tda827x_attach +EXPORT_SYMBOL_GPL drivers/media/tuners/tda8290 0x0b9093f6 tda829x_attach +EXPORT_SYMBOL_GPL drivers/media/tuners/tda8290 0x5fc3a0cd tda829x_probe +EXPORT_SYMBOL_GPL drivers/media/tuners/tda9887 0x3835c1d7 tda9887_attach +EXPORT_SYMBOL_GPL drivers/media/tuners/tea5761 0x42ac8483 tea5761_autodetection +EXPORT_SYMBOL_GPL drivers/media/tuners/tea5761 0x8936b6ab tea5761_attach +EXPORT_SYMBOL_GPL drivers/media/tuners/tea5767 0x51ec8281 tea5767_attach +EXPORT_SYMBOL_GPL drivers/media/tuners/tea5767 0xbee5ea04 tea5767_autodetection +EXPORT_SYMBOL_GPL drivers/media/tuners/tuner-simple 0xe7927bff simple_tuner_attach +EXPORT_SYMBOL_GPL drivers/media/usb/cx231xx/cx231xx 0x017ea7c7 cx231xx_tuner_callback +EXPORT_SYMBOL_GPL drivers/media/usb/cx231xx/cx231xx 0x1d91b052 cx231xx_init_vbi_isoc +EXPORT_SYMBOL_GPL drivers/media/usb/cx231xx/cx231xx 0x20eb19f2 cx231xx_uninit_isoc +EXPORT_SYMBOL_GPL drivers/media/usb/cx231xx/cx231xx 0x230a1ea7 cx231xx_init_bulk +EXPORT_SYMBOL_GPL drivers/media/usb/cx231xx/cx231xx 0x35b91bce cx231xx_capture_start +EXPORT_SYMBOL_GPL drivers/media/usb/cx231xx/cx231xx 0x442c4a19 cx231xx_demod_reset +EXPORT_SYMBOL_GPL drivers/media/usb/cx231xx/cx231xx 0x4e987dcc cx231xx_send_gpio_cmd +EXPORT_SYMBOL_GPL drivers/media/usb/cx231xx/cx231xx 0x5695b75d cx231xx_enable656 +EXPORT_SYMBOL_GPL drivers/media/usb/cx231xx/cx231xx 0x5f0a6cb7 cx231xx_dev_uninit +EXPORT_SYMBOL_GPL drivers/media/usb/cx231xx/cx231xx 0x68d634d5 cx231xx_uninit_vbi_isoc +EXPORT_SYMBOL_GPL drivers/media/usb/cx231xx/cx231xx 0x6bc3b86a cx231xx_unmute_audio +EXPORT_SYMBOL_GPL drivers/media/usb/cx231xx/cx231xx 0x70a24ff4 cx231xx_dev_init +EXPORT_SYMBOL_GPL drivers/media/usb/cx231xx/cx231xx 0x7aa9fc76 cx231xx_disable656 +EXPORT_SYMBOL_GPL drivers/media/usb/cx231xx/cx231xx 0x7ea82934 cx231xx_get_i2c_adap +EXPORT_SYMBOL_GPL drivers/media/usb/cx231xx/cx231xx 0x824d9df3 is_fw_load +EXPORT_SYMBOL_GPL drivers/media/usb/cx231xx/cx231xx 0x87a42802 cx231xx_set_mode +EXPORT_SYMBOL_GPL drivers/media/usb/cx231xx/cx231xx 0x9d183d50 cx231xx_uninit_bulk +EXPORT_SYMBOL_GPL drivers/media/usb/cx231xx/cx231xx 0xbaed0eb9 cx231xx_init_isoc +EXPORT_SYMBOL_GPL drivers/media/usb/cx231xx/cx231xx 0xc79ec088 cx231xx_set_alt_setting +EXPORT_SYMBOL_GPL drivers/media/usb/cx231xx/cx231xx 0xdc97f13e cx231xx_enable_i2c_port_3 +EXPORT_SYMBOL_GPL drivers/media/usb/cx231xx/cx231xx 0xfac319f1 cx231xx_send_usb_command +EXPORT_SYMBOL_GPL drivers/media/usb/dvb-usb-v2/mxl111sf-demod 0xecbd13a6 mxl111sf_demod_attach +EXPORT_SYMBOL_GPL drivers/media/usb/dvb-usb-v2/mxl111sf-tuner 0x83dd5fcf mxl111sf_tuner_attach +EXPORT_SYMBOL_GPL drivers/media/usb/em28xx/em28xx 0x02f38050 em28xx_audio_analog_set +EXPORT_SYMBOL_GPL drivers/media/usb/em28xx/em28xx 0x0905f9be em28xx_init_usb_xfer +EXPORT_SYMBOL_GPL drivers/media/usb/em28xx/em28xx 0x0ce89a7b em28xx_audio_setup +EXPORT_SYMBOL_GPL drivers/media/usb/em28xx/em28xx 0x1232531a em28xx_read_reg +EXPORT_SYMBOL_GPL drivers/media/usb/em28xx/em28xx 0x1a3e5cc9 em28xx_write_reg_bits +EXPORT_SYMBOL_GPL drivers/media/usb/em28xx/em28xx 0x2022b366 em28xx_stop_urbs +EXPORT_SYMBOL_GPL drivers/media/usb/em28xx/em28xx 0x29d99e24 em28xx_read_ac97 +EXPORT_SYMBOL_GPL drivers/media/usb/em28xx/em28xx 0x40929f07 em28xx_setup_xc3028 +EXPORT_SYMBOL_GPL drivers/media/usb/em28xx/em28xx 0x57648d33 em28xx_alloc_urbs +EXPORT_SYMBOL_GPL drivers/media/usb/em28xx/em28xx 0x6dd1d01d em28xx_write_ac97 +EXPORT_SYMBOL_GPL drivers/media/usb/em28xx/em28xx 0x721f7cc7 em28xx_free_device +EXPORT_SYMBOL_GPL drivers/media/usb/em28xx/em28xx 0x75f2fc6b em28xx_toggle_reg_bits +EXPORT_SYMBOL_GPL drivers/media/usb/em28xx/em28xx 0x7827efc5 em28xx_write_regs +EXPORT_SYMBOL_GPL drivers/media/usb/em28xx/em28xx 0x7896bb5a em28xx_gpio_set +EXPORT_SYMBOL_GPL drivers/media/usb/em28xx/em28xx 0x7fc8652c em28xx_tuner_callback +EXPORT_SYMBOL_GPL drivers/media/usb/em28xx/em28xx 0x82b01159 em28xx_find_led +EXPORT_SYMBOL_GPL drivers/media/usb/em28xx/em28xx 0x86b216d9 em28xx_uninit_usb_xfer +EXPORT_SYMBOL_GPL drivers/media/usb/em28xx/em28xx 0x88fb7053 em28xx_set_mode +EXPORT_SYMBOL_GPL drivers/media/usb/em28xx/em28xx 0x921d7c65 em28xx_boards +EXPORT_SYMBOL_GPL drivers/media/usb/em28xx/em28xx 0xcdd0f5f3 em28xx_write_reg +EXPORT_SYMBOL_GPL drivers/media/usb/em28xx/em28xx 0xde6b9cf1 em28xx_init_camera +EXPORT_SYMBOL_GPL drivers/media/usb/tm6000/tm6000 0x2309a6d6 tm6000_xc5000_callback +EXPORT_SYMBOL_GPL drivers/media/usb/tm6000/tm6000 0x60488a97 tm6000_set_reg_mask +EXPORT_SYMBOL_GPL drivers/media/usb/tm6000/tm6000 0x89b611dd tm6000_debug +EXPORT_SYMBOL_GPL drivers/media/usb/tm6000/tm6000 0xc469aac9 tm6000_get_reg +EXPORT_SYMBOL_GPL drivers/media/usb/tm6000/tm6000 0xc6b3bdf7 tm6000_set_reg +EXPORT_SYMBOL_GPL drivers/media/usb/tm6000/tm6000 0xdff8e89d tm6000_tuner_callback +EXPORT_SYMBOL_GPL drivers/media/usb/tm6000/tm6000 0xe0dfd6d5 tm6000_set_audio_bitrate +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 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 0xef15cc44 v4l2_hdmi_rx_colorimetry +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 0x12f26aba v4l2_flash_init +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-flash-led-class 0x4691b403 v4l2_flash_release +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-flash-led-class 0xcd6fb7ac v4l2_flash_indicator_init +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-fwnode 0x4b6d24be v4l2_async_notifier_parse_fwnode_endpoints_by_port +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-fwnode 0x59fbb7e5 v4l2_fwnode_endpoint_alloc_parse +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-fwnode 0x5dfd514c v4l2_async_register_subdev_sensor_common +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-fwnode 0x612ddce5 v4l2_fwnode_connector_free +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-fwnode 0x77282f14 v4l2_fwnode_endpoint_parse +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-fwnode 0x796a17c6 v4l2_fwnode_endpoint_free +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-fwnode 0x7ab98331 v4l2_fwnode_parse_link +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-fwnode 0x7e558880 v4l2_fwnode_device_parse +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-fwnode 0xa65b2f61 v4l2_fwnode_connector_parse +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-fwnode 0xab5841d8 v4l2_async_notifier_parse_fwnode_sensor_common +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-fwnode 0xbc78e677 v4l2_fwnode_connector_add_link +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-fwnode 0xc9b04af1 v4l2_fwnode_put_link +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-fwnode 0xdcd6132c v4l2_async_notifier_parse_fwnode_endpoints +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-h264 0x8468300b v4l2_h264_init_reflist_builder +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-h264 0xa003c02f v4l2_h264_build_b_ref_lists +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-h264 0xae38bf6d v4l2_h264_build_p_ref_list +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-jpeg 0x161b22cc v4l2_jpeg_parse_header +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-jpeg 0x4c847e31 v4l2_jpeg_parse_huffman_tables +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-jpeg 0x5e92a994 v4l2_jpeg_parse_scan_header +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-jpeg 0xd8c706cb v4l2_jpeg_parse_frame_header +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-jpeg 0xdc58b7d5 v4l2_jpeg_parse_quantization_tables +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0x068b55e2 v4l2_m2m_qbuf +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0x0f9d8f57 v4l2_m2m_reqbufs +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0x11b79ff5 v4l2_m2m_ioctl_try_encoder_cmd +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0x13506b0d v4l2_m2m_fop_poll +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0x1635311d v4l2_m2m_update_stop_streaming_state +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0x168a26bb v4l2_m2m_streamoff +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0x1b8ce154 v4l2_m2m_ctx_release +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0x2fb67d15 v4l2_m2m_create_bufs +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0x3e10501e v4l2_m2m_ioctl_qbuf +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0x3f75a5a9 v4l2_m2m_next_buf +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0x3f838b65 v4l2_m2m_try_schedule +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0x3f96e4a5 v4l2_m2m_buf_remove_by_idx +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0x4386b92a v4l2_m2m_ioctl_streamoff +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0x45e3ff30 v4l2_m2m_ioctl_stateless_try_decoder_cmd +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0x4f5da330 v4l2_m2m_querybuf +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0x4fa0e261 v4l2_m2m_ioctl_reqbufs +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0x5415dffd v4l2_m2m_fop_mmap +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0x582a4c57 v4l2_m2m_ioctl_querybuf +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0x5db83451 v4l2_m2m_ioctl_expbuf +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0x63f5f762 v4l2_m2m_update_start_streaming_state +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0x6a37d191 v4l2_m2m_ioctl_stateless_decoder_cmd +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0x6f93118f v4l2_m2m_buf_remove_by_buf +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0x70eab0f2 v4l2_m2m_ioctl_dqbuf +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0x730f2eae v4l2_m2m_init +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0x75a858db v4l2_m2m_ioctl_create_bufs +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0x7e1c16e5 v4l2_m2m_dqbuf +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0x800fb7f6 v4l2_m2m_buf_queue +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0x89d315fa v4l2_m2m_expbuf +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0x91fb79c9 v4l2_m2m_last_buffer_done +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0x9342ecea v4l2_m2m_last_buf +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0x9511895a v4l2_m2m_decoder_cmd +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0x97990d54 v4l2_m2m_buf_remove +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0x97e182e8 v4l2_m2m_request_queue +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0x9e550a75 v4l2_m2m_ioctl_streamon +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0xad055ee6 v4l2_m2m_ctx_init +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0xb15a25a9 v4l2_m2m_ioctl_try_decoder_cmd +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0xb9026a2f v4l2_m2m_ioctl_encoder_cmd +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0xba116835 v4l2_m2m_register_media_controller +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0xc4d5fd11 v4l2_m2m_buf_copy_metadata +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0xc6fca5ad v4l2_m2m_release +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0xdd23593c v4l2_m2m_prepare_buf +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0xdfc64ac1 v4l2_m2m_streamon +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0xe1d2f0b2 v4l2_m2m_encoder_cmd +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0xef21d8ed v4l2_m2m_ioctl_prepare_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 0xf866ffdf v4l2_m2m_ioctl_decoder_cmd +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0xfe3924f6 v4l2_m2m_poll +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0x0318072b videobuf_poll_stream +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0x068bb8e7 videobuf_queue_cancel +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0x0c5dbfec videobuf_read_stream +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0x0e7e78db videobuf_mmap_free +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0x16079d01 videobuf_iolock +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0x1d6a61a7 videobuf_queue_core_init +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0x29947911 videobuf_read_start +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0x2a884696 videobuf_queue_to_vaddr +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0x3876410e videobuf_reqbufs +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0x460a1127 videobuf_waiton +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0x48863d27 __videobuf_mmap_setup +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0x78905dab videobuf_next_field +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0x85458171 videobuf_streamon +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0x9cee6dff videobuf_dqbuf +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0xa0ed74aa videobuf_mmap_mapper +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0xa602b426 videobuf_querybuf +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0xa8e66203 videobuf_streamoff +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0xab9f5dcc videobuf_read_stop +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0xaea417de videobuf_alloc_vb +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0xb07a96fe videobuf_stop +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0xb315e8f5 videobuf_qbuf +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0xcf61776d videobuf_mmap_setup +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0xef9ab88e videobuf_read_one +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0xfa961667 videobuf_queue_is_busy +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-dma-sg 0x2c906cfc videobuf_queue_sg_init +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-dma-sg 0x49789f22 videobuf_to_dma +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-dma-sg 0x7034e96b videobuf_dma_unmap +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-dma-sg 0xa825c75b videobuf_sg_alloc +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-dma-sg 0xd480c4da videobuf_dma_free +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-vmalloc 0x17a18fee videobuf_queue_vmalloc_init +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-vmalloc 0x60473868 videobuf_vmalloc_free +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-vmalloc 0x9b6ea977 videobuf_to_vmalloc +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x0033f256 v4l2_src_change_event_subdev_subscribe +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x06e4e05b v4l2_async_notifier_add_fwnode_remote_subdev +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x0aefb779 v4l2_device_unregister +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x0b5ce5f0 v4l_vb2q_enable_media_source +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x178a4812 __tracepoint_vb2_v4l2_buf_done +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x19c2bf28 v4l2_event_queue +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x2082a7c8 v4l2_device_put +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x2229bfe3 v4l2_event_pending +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x25a0b77f __tracepoint_vb2_v4l2_buf_queue +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x2a602b1a v4l2_ctrl_request_hdl_ctrl_find +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x3245322b v4l2_g_parm_cap +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x33ab8b10 v4l2_fh_release +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x389707e8 v4l_enable_media_source +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x3bf25424 v4l2_event_subdev_unsubscribe +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x3c3a17a0 v4l2_event_queue_fh +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x3c853c67 v4l2_event_subscribe +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x490639ef v4l2_event_unsubscribe +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x4940e4d5 v4l2_async_notifier_add_fwnode_subdev +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x50d65b11 v4l2_subdev_free_pad_config +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x6059598a v4l2_pipeline_link_notify +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x61817752 __tracepoint_vb2_v4l2_dqbuf +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x640312e9 v4l2_async_notifier_add_subdev +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x694c6266 __v4l2_device_register_subdev_nodes +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x6d810f54 v4l2_fh_open +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x6df81f80 v4l2_subdev_link_validate +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x6e9acc41 v4l2_fill_pixfmt_mp +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x704d7b52 v4l2_spi_new_subdev +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x73efcf69 v4l2_ctrl_request_hdl_find +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x7bc2765b v4l2_fh_del +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x8007839a v4l2_event_unsubscribe_all +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x80c54f85 v4l2_async_notifier_add_devname_subdev +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x813f25d1 v4l2_i2c_subdev_init +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x842bcff9 v4l2_i2c_subdev_addr +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x8678dd76 v4l2_pipeline_pm_get +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x95fa7a6f v4l2_i2c_new_subdev +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x976288b6 v4l2_subdev_get_fwnode_pad_1_to_1 +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x9c8d421c v4l2_fh_add +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x9cfb1946 v4l2_fh_init +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x9fef35ac v4l2_apply_frmsize_constraints +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0xa1c75d1b v4l2_async_notifier_add_i2c_subdev +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0xa6392d49 v4l2_spi_subdev_init +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0xa820498b v4l2_subdev_alloc_pad_config +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0xb43f4415 v4l2_fh_is_singular +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0xb45b1a77 v4l2_device_set_name +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0xb67a4cf5 v4l2_subdev_notify_event +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0xb6dbc1fa v4l2_device_register +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0xb92a966d v4l2_fh_exit +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0xba958ce3 v4l2_s_parm_cap +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0xbc748243 v4l2_create_fwnode_links_to_pad +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0xbc9a9c83 v4l2_async_notifier_cleanup +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0xc2cb4ad3 v4l2_device_register_subdev +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0xc6cd58c7 v4l2_i2c_new_subdev_board +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0xc70d8175 __v4l2_ctrl_handler_setup +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0xc9179db1 v4l2_pipeline_pm_put +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0xc9b285cc v4l2_event_dequeue +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0xcc501597 v4l2_fill_pixfmt +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0xdc8b334c v4l2_i2c_subdev_set_name +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0xe2712013 v4l2_mc_create_media_graph +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0xe8770199 __tracepoint_vb2_v4l2_qbuf +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0xeb81d59d v4l2_device_unregister_subdev +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0xed2b1268 v4l_disable_media_source +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0xf2a353ac v4l2_i2c_tuner_addrs +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0xf5ef842e v4l_bound_align_image +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0xf7047aa4 v4l2_src_change_event_subscribe +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0xfac9fb3e v4l2_subdev_link_validate_default +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0xfed4988d v4l2_device_disconnect +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0xff76573f __v4l2_find_nearest_size +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0xff99aeaa v4l2_create_fwnode_links +EXPORT_SYMBOL_GPL drivers/memory/pl353-smc 0x27ed2092 pl353_smc_set_ecc_mode +EXPORT_SYMBOL_GPL drivers/memory/pl353-smc 0x2eec2ab2 pl353_smc_ecc_is_busy +EXPORT_SYMBOL_GPL drivers/memory/pl353-smc 0x31112d75 pl353_smc_get_nand_int_status_raw +EXPORT_SYMBOL_GPL drivers/memory/pl353-smc 0x80ef3725 pl353_smc_set_ecc_pg_size +EXPORT_SYMBOL_GPL drivers/memory/pl353-smc 0x84eeb67e pl353_smc_set_buswidth +EXPORT_SYMBOL_GPL drivers/memory/pl353-smc 0xc00d163f pl353_smc_set_cycles +EXPORT_SYMBOL_GPL drivers/memory/pl353-smc 0xc37aa3c1 pl353_smc_clr_nand_int +EXPORT_SYMBOL_GPL drivers/memory/pl353-smc 0xe2603369 pl353_smc_get_ecc_val +EXPORT_SYMBOL_GPL drivers/memory/ti-emif-sram 0x49a8a623 ti_emif_get_mem_type +EXPORT_SYMBOL_GPL drivers/memory/ti-emif-sram 0xbcf322c5 ti_emif_copy_pm_function_table +EXPORT_SYMBOL_GPL drivers/mfd/88pm80x 0x74008f4d pm80x_init +EXPORT_SYMBOL_GPL drivers/mfd/88pm80x 0x81787e45 pm80x_regmap_config +EXPORT_SYMBOL_GPL drivers/mfd/88pm80x 0xd99fd720 pm80x_deinit +EXPORT_SYMBOL_GPL drivers/mfd/88pm80x 0xe1b8ae3b pm80x_pm_ops +EXPORT_SYMBOL_GPL drivers/mfd/da9150-core 0x0a672d86 da9150_bulk_write +EXPORT_SYMBOL_GPL drivers/mfd/da9150-core 0x281243b2 da9150_set_bits +EXPORT_SYMBOL_GPL drivers/mfd/da9150-core 0x544e41e7 da9150_read_qif +EXPORT_SYMBOL_GPL drivers/mfd/da9150-core 0x787a1547 da9150_bulk_read +EXPORT_SYMBOL_GPL drivers/mfd/da9150-core 0xa2cf6e3b da9150_write_qif +EXPORT_SYMBOL_GPL drivers/mfd/da9150-core 0xc9e884d1 da9150_reg_write +EXPORT_SYMBOL_GPL drivers/mfd/da9150-core 0xeaa5369a da9150_reg_read +EXPORT_SYMBOL_GPL drivers/mfd/gateworks-gsc 0xa142a524 gsc_read +EXPORT_SYMBOL_GPL drivers/mfd/gateworks-gsc 0xb7abd1c4 gsc_write +EXPORT_SYMBOL_GPL drivers/mfd/iqs62x 0x22a28670 iqs62x_events +EXPORT_SYMBOL_GPL drivers/mfd/kempld-core 0x286cc635 kempld_write32 +EXPORT_SYMBOL_GPL drivers/mfd/kempld-core 0x78068efe kempld_read32 +EXPORT_SYMBOL_GPL drivers/mfd/kempld-core 0x921be65e kempld_release_mutex +EXPORT_SYMBOL_GPL drivers/mfd/kempld-core 0x9abb32af kempld_write8 +EXPORT_SYMBOL_GPL drivers/mfd/kempld-core 0x9ad28ffe kempld_write16 +EXPORT_SYMBOL_GPL drivers/mfd/kempld-core 0xa2fede09 kempld_read16 +EXPORT_SYMBOL_GPL drivers/mfd/kempld-core 0xc5ee38ae kempld_get_mutex +EXPORT_SYMBOL_GPL drivers/mfd/kempld-core 0xff8cbd15 kempld_read8 +EXPORT_SYMBOL_GPL drivers/mfd/lm3533-core 0x00be4119 lm3533_write +EXPORT_SYMBOL_GPL drivers/mfd/lm3533-core 0x40491197 lm3533_read +EXPORT_SYMBOL_GPL drivers/mfd/lm3533-core 0x5f9f7b66 lm3533_update +EXPORT_SYMBOL_GPL drivers/mfd/lm3533-ctrlbank 0x520e36f2 lm3533_ctrlbank_set_brightness +EXPORT_SYMBOL_GPL drivers/mfd/lm3533-ctrlbank 0x5821a8ec lm3533_ctrlbank_disable +EXPORT_SYMBOL_GPL drivers/mfd/lm3533-ctrlbank 0x8c218bd0 lm3533_ctrlbank_get_brightness +EXPORT_SYMBOL_GPL drivers/mfd/lm3533-ctrlbank 0x8f282e56 lm3533_ctrlbank_set_max_current +EXPORT_SYMBOL_GPL drivers/mfd/lm3533-ctrlbank 0xcdb9cfa0 lm3533_ctrlbank_get_pwm +EXPORT_SYMBOL_GPL drivers/mfd/lm3533-ctrlbank 0xd1b1e75c lm3533_ctrlbank_set_pwm +EXPORT_SYMBOL_GPL drivers/mfd/lm3533-ctrlbank 0xfe0c4b8c lm3533_ctrlbank_enable +EXPORT_SYMBOL_GPL drivers/mfd/lp3943 0x5d9a14aa lp3943_update_bits +EXPORT_SYMBOL_GPL drivers/mfd/lp3943 0x9a4f7e90 lp3943_read_byte +EXPORT_SYMBOL_GPL drivers/mfd/lp3943 0xcaba1a95 lp3943_write_byte +EXPORT_SYMBOL_GPL drivers/mfd/madera 0x0f379262 madera_of_match +EXPORT_SYMBOL_GPL drivers/mfd/madera 0x12639008 cs47l15_32bit_i2c_regmap +EXPORT_SYMBOL_GPL drivers/mfd/madera 0x126e4c48 cs47l15_16bit_i2c_regmap +EXPORT_SYMBOL_GPL drivers/mfd/madera 0x1b33571f madera_dev_exit +EXPORT_SYMBOL_GPL drivers/mfd/madera 0x4a3f81a9 cs47l35_patch +EXPORT_SYMBOL_GPL drivers/mfd/madera 0x51568d04 cs47l15_16bit_spi_regmap +EXPORT_SYMBOL_GPL drivers/mfd/madera 0x515b5144 cs47l15_32bit_spi_regmap +EXPORT_SYMBOL_GPL drivers/mfd/madera 0x62bc33c9 madera_pm_ops +EXPORT_SYMBOL_GPL drivers/mfd/madera 0x86b3d0fd cs47l92_16bit_spi_regmap +EXPORT_SYMBOL_GPL drivers/mfd/madera 0x86be0cbd cs47l92_32bit_spi_regmap +EXPORT_SYMBOL_GPL drivers/mfd/madera 0x8eb1b65e cs47l85_patch +EXPORT_SYMBOL_GPL drivers/mfd/madera 0x9b9527c8 cs47l35_32bit_spi_regmap +EXPORT_SYMBOL_GPL drivers/mfd/madera 0x9b98fb88 cs47l35_16bit_spi_regmap +EXPORT_SYMBOL_GPL drivers/mfd/madera 0xa9e7bcb0 cs47l85_32bit_spi_regmap +EXPORT_SYMBOL_GPL drivers/mfd/madera 0xa9ea60f0 cs47l85_16bit_spi_regmap +EXPORT_SYMBOL_GPL drivers/mfd/madera 0xb132cb00 cs47l90_32bit_i2c_regmap +EXPORT_SYMBOL_GPL drivers/mfd/madera 0xb13f1740 cs47l90_16bit_i2c_regmap +EXPORT_SYMBOL_GPL drivers/mfd/madera 0xbaee6338 cs47l92_patch +EXPORT_SYMBOL_GPL drivers/mfd/madera 0xc586cdf1 cs47l92_32bit_i2c_regmap +EXPORT_SYMBOL_GPL drivers/mfd/madera 0xc58b11b1 cs47l92_16bit_i2c_regmap +EXPORT_SYMBOL_GPL drivers/mfd/madera 0xc7ab2fde madera_dev_init +EXPORT_SYMBOL_GPL drivers/mfd/madera 0xd4398c31 cs47l15_patch +EXPORT_SYMBOL_GPL drivers/mfd/madera 0xd876583f cs47l90_patch +EXPORT_SYMBOL_GPL drivers/mfd/madera 0xd8a03ac4 cs47l35_16bit_i2c_regmap +EXPORT_SYMBOL_GPL drivers/mfd/madera 0xd8ade684 cs47l35_32bit_i2c_regmap +EXPORT_SYMBOL_GPL drivers/mfd/madera 0xead2a1bc cs47l85_16bit_i2c_regmap +EXPORT_SYMBOL_GPL drivers/mfd/madera 0xeadf7dfc cs47l85_32bit_i2c_regmap +EXPORT_SYMBOL_GPL drivers/mfd/madera 0xebe384cb madera_name_from_type +EXPORT_SYMBOL_GPL drivers/mfd/madera 0xf207d60c cs47l90_16bit_spi_regmap +EXPORT_SYMBOL_GPL drivers/mfd/madera 0xf20a0a4c cs47l90_32bit_spi_regmap +EXPORT_SYMBOL_GPL drivers/mfd/mc13xxx-core 0x4498975a mc13xxx_adc_do_conversion +EXPORT_SYMBOL_GPL drivers/mfd/mc13xxx-core 0x6ca28c91 mc13xxx_common_init +EXPORT_SYMBOL_GPL drivers/mfd/mc13xxx-core 0x74552e25 mc13xxx_common_exit +EXPORT_SYMBOL_GPL drivers/mfd/mc13xxx-core 0x8a0afbf6 mc13xxx_variant_mc13892 +EXPORT_SYMBOL_GPL drivers/mfd/mc13xxx-core 0xcab0b0d6 mc13xxx_variant_mc13783 +EXPORT_SYMBOL_GPL drivers/mfd/mc13xxx-core 0xd8bf45be mc13xxx_variant_mc34708 +EXPORT_SYMBOL_GPL drivers/mfd/motorola-cpcap 0xa226dbe8 cpcap_sense_virq +EXPORT_SYMBOL_GPL drivers/mfd/pcf50633 0x067545ae pcf50633_register_irq +EXPORT_SYMBOL_GPL drivers/mfd/pcf50633 0x1156cb5a pcf50633_reg_clear_bits +EXPORT_SYMBOL_GPL drivers/mfd/pcf50633 0x6513b5c8 pcf50633_write_block +EXPORT_SYMBOL_GPL drivers/mfd/pcf50633 0x700884cb pcf50633_reg_read +EXPORT_SYMBOL_GPL drivers/mfd/pcf50633 0x75e25535 pcf50633_irq_mask_get +EXPORT_SYMBOL_GPL drivers/mfd/pcf50633 0x7ecd6c74 pcf50633_free_irq +EXPORT_SYMBOL_GPL drivers/mfd/pcf50633 0x95c3afbc pcf50633_reg_set_bit_mask +EXPORT_SYMBOL_GPL drivers/mfd/pcf50633 0x96124750 pcf50633_irq_unmask +EXPORT_SYMBOL_GPL drivers/mfd/pcf50633 0xaf6e865b pcf50633_read_block +EXPORT_SYMBOL_GPL drivers/mfd/pcf50633 0xda9b85f4 pcf50633_irq_mask +EXPORT_SYMBOL_GPL drivers/mfd/pcf50633 0xe8384749 pcf50633_reg_write +EXPORT_SYMBOL_GPL drivers/mfd/pcf50633-adc 0x1e9c1ff5 pcf50633_adc_async_read +EXPORT_SYMBOL_GPL drivers/mfd/pcf50633-adc 0x4c402bf7 pcf50633_adc_sync_read +EXPORT_SYMBOL_GPL drivers/mfd/pcf50633-gpio 0x74833f41 pcf50633_gpio_invert_get +EXPORT_SYMBOL_GPL drivers/mfd/pcf50633-gpio 0x777ddc78 pcf50633_gpio_get +EXPORT_SYMBOL_GPL drivers/mfd/pcf50633-gpio 0x970d366c pcf50633_gpio_set +EXPORT_SYMBOL_GPL drivers/mfd/pcf50633-gpio 0xa37a885c pcf50633_gpio_power_supply_set +EXPORT_SYMBOL_GPL drivers/mfd/pcf50633-gpio 0xd47faf75 pcf50633_gpio_invert_set +EXPORT_SYMBOL_GPL drivers/mfd/rave-sp 0xc31bdb8e devm_rave_sp_register_event_notifier +EXPORT_SYMBOL_GPL drivers/mfd/rave-sp 0xeecaf484 rave_sp_exec +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 0x02d85c97 si476x_core_is_a_secondary_tuner +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0x0cfe47e4 si476x_core_cmd_fm_tune_freq +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0x166e0667 si476x_core_cmd_ana_audio_pin_cfg +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0x22790507 si476x_core_has_diversity +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0x2b0d57f1 si476x_core_cmd_func_info +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0x440c2690 si476x_core_has_am +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0x44bf3d58 si476x_core_cmd_zif_pin_cfg +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0x5714e89f si476x_core_is_powered_up +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0x69480155 si476x_core_cmd_am_tune_freq +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0x69783e8d si476x_core_cmd_fm_phase_diversity +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0x71ad2ad9 si476x_core_cmd_get_property +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0x746863a7 si476x_core_cmd_set_property +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0x75e488c3 si476x_core_cmd_fm_seek_start +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0x785a697c si476x_core_cmd_intb_pin_cfg +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0x7d5e94a0 si476x_core_cmd_agc_status +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0x7f4f47ed si476x_core_is_in_am_receiver_mode +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0x89c178c7 si476x_core_i2c_xfer +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0x8ac6be10 si476x_core_set_power_state +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0x9661f8d0 si476x_core_cmd_fm_phase_div_status +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0x97532363 si476x_core_cmd_power_down +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0xba45b376 devm_regmap_init_si476x +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0xcbfa4f9a si476x_core_cmd_fm_rds_blockcount +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0xd34d4171 si476x_core_start +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0xd9573568 si476x_core_cmd_fm_rds_status +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0xd9bb9bbc si476x_core_cmd_am_acf_status +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0xe0d31438 si476x_core_cmd_ic_link_gpo_ctl_pin_cfg +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0xe0e65eb5 si476x_core_cmd_power_up +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0xe2428a56 si476x_core_stop +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0xe79a2ac6 si476x_core_cmd_fm_rsq_status +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0xea51b353 si476x_core_cmd_fm_acf_status +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0xeb17708c si476x_core_cmd_am_rsq_status +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0xf3fd8924 si476x_core_cmd_am_seek_start +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0xfcec1e94 si476x_core_is_a_primary_tuner +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0xffb61552 si476x_core_cmd_dig_audio_pin_cfg +EXPORT_SYMBOL_GPL drivers/mfd/ssbi 0x328910d5 ssbi_read +EXPORT_SYMBOL_GPL drivers/mfd/ssbi 0xe02d85f1 ssbi_write +EXPORT_SYMBOL_GPL drivers/mfd/stmfx 0x3e125eaa stmfx_function_disable +EXPORT_SYMBOL_GPL drivers/mfd/stmfx 0xbdd3240b stmfx_function_enable +EXPORT_SYMBOL_GPL drivers/mfd/ti_am335x_tscadc 0x132d0e32 am335x_tsc_se_adc_done +EXPORT_SYMBOL_GPL drivers/mfd/ti_am335x_tscadc 0x800ffab2 am335x_tsc_se_set_once +EXPORT_SYMBOL_GPL drivers/mfd/ti_am335x_tscadc 0x87cc675e am335x_tsc_se_set_cache +EXPORT_SYMBOL_GPL drivers/mfd/ti_am335x_tscadc 0x9676ebb6 am335x_tsc_se_clr +EXPORT_SYMBOL_GPL drivers/mfd/tps65218 0x2ba74af1 tps65218_clear_bits +EXPORT_SYMBOL_GPL drivers/mfd/tps65218 0x86b27654 tps65218_set_bits +EXPORT_SYMBOL_GPL drivers/mfd/tps65218 0xcd9478bd tps65218_reg_write +EXPORT_SYMBOL_GPL drivers/mfd/ucb1400_core 0xa633e18c ucb1400_adc_read +EXPORT_SYMBOL_GPL drivers/misc/cardreader/alcor_pci 0x065d252e alcor_write16 +EXPORT_SYMBOL_GPL drivers/misc/cardreader/alcor_pci 0x086cf90b alcor_write32be +EXPORT_SYMBOL_GPL drivers/misc/cardreader/alcor_pci 0x15756b9e alcor_write32 +EXPORT_SYMBOL_GPL drivers/misc/cardreader/alcor_pci 0x1c8c4b0b alcor_read32be +EXPORT_SYMBOL_GPL drivers/misc/cardreader/alcor_pci 0x4e822457 alcor_read32 +EXPORT_SYMBOL_GPL drivers/misc/cardreader/alcor_pci 0x63c7dbe6 alcor_write8 +EXPORT_SYMBOL_GPL drivers/misc/cardreader/alcor_pci 0xa5628f80 alcor_read8 +EXPORT_SYMBOL_GPL drivers/misc/cardreader/rtsx_pci 0x039c775b rtsx_pci_send_cmd +EXPORT_SYMBOL_GPL drivers/misc/cardreader/rtsx_pci 0x05136311 rtsx_pci_switch_clock +EXPORT_SYMBOL_GPL drivers/misc/cardreader/rtsx_pci 0x1660066c rtsx_pci_transfer_data +EXPORT_SYMBOL_GPL drivers/misc/cardreader/rtsx_pci 0x1993e863 rtsx_pci_write_register +EXPORT_SYMBOL_GPL drivers/misc/cardreader/rtsx_pci 0x1c4b1ae2 rtsx_pci_card_pull_ctl_enable +EXPORT_SYMBOL_GPL drivers/misc/cardreader/rtsx_pci 0x333a3afb rtsx_pci_read_register +EXPORT_SYMBOL_GPL drivers/misc/cardreader/rtsx_pci 0x612c9971 rtsx_pci_complete_unfinished_transfer +EXPORT_SYMBOL_GPL drivers/misc/cardreader/rtsx_pci 0x6cc11e12 rtsx_pci_dma_transfer +EXPORT_SYMBOL_GPL drivers/misc/cardreader/rtsx_pci 0x6e2bf1c4 rtsx_pci_dma_unmap_sg +EXPORT_SYMBOL_GPL drivers/misc/cardreader/rtsx_pci 0x791b6bb7 rtsx_pci_stop_cmd +EXPORT_SYMBOL_GPL drivers/misc/cardreader/rtsx_pci 0x7da5dcfe rtsx_pci_write_ppbuf +EXPORT_SYMBOL_GPL drivers/misc/cardreader/rtsx_pci 0x8bc713d1 rtsx_pci_card_power_on +EXPORT_SYMBOL_GPL drivers/misc/cardreader/rtsx_pci 0x94df82e8 rtsx_pci_read_ppbuf +EXPORT_SYMBOL_GPL drivers/misc/cardreader/rtsx_pci 0xad4ff3a9 rtsx_pci_card_power_off +EXPORT_SYMBOL_GPL drivers/misc/cardreader/rtsx_pci 0xaea415c5 rtsx_pci_card_exist +EXPORT_SYMBOL_GPL drivers/misc/cardreader/rtsx_pci 0xaf097bf7 rtsx_pci_send_cmd_no_wait +EXPORT_SYMBOL_GPL drivers/misc/cardreader/rtsx_pci 0xc41a391b rtsx_pci_switch_output_voltage +EXPORT_SYMBOL_GPL drivers/misc/cardreader/rtsx_pci 0xc6df3e80 rtsx_pci_write_phy_register +EXPORT_SYMBOL_GPL drivers/misc/cardreader/rtsx_pci 0xcb77ef28 rtsx_pci_add_cmd +EXPORT_SYMBOL_GPL drivers/misc/cardreader/rtsx_pci 0xdae4fa2b rtsx_pci_card_exclusive_check +EXPORT_SYMBOL_GPL drivers/misc/cardreader/rtsx_pci 0xdf539e6c rtsx_pci_start_run +EXPORT_SYMBOL_GPL drivers/misc/cardreader/rtsx_pci 0xe44c340e rtsx_pci_card_pull_ctl_disable +EXPORT_SYMBOL_GPL drivers/misc/cardreader/rtsx_pci 0xf9ee4269 rtsx_pci_dma_map_sg +EXPORT_SYMBOL_GPL drivers/misc/cardreader/rtsx_pci 0xfc3977a2 rtsx_pci_read_phy_register +EXPORT_SYMBOL_GPL drivers/misc/cardreader/rtsx_usb 0x02d6507b rtsx_usb_send_cmd +EXPORT_SYMBOL_GPL drivers/misc/cardreader/rtsx_usb 0x19e0f065 rtsx_usb_transfer_data +EXPORT_SYMBOL_GPL drivers/misc/cardreader/rtsx_usb 0x1b281762 rtsx_usb_write_ppbuf +EXPORT_SYMBOL_GPL drivers/misc/cardreader/rtsx_usb 0x26eb1ee3 rtsx_usb_get_rsp +EXPORT_SYMBOL_GPL drivers/misc/cardreader/rtsx_usb 0x37d9ad2f rtsx_usb_read_ppbuf +EXPORT_SYMBOL_GPL drivers/misc/cardreader/rtsx_usb 0x5d8f0106 rtsx_usb_write_register +EXPORT_SYMBOL_GPL drivers/misc/cardreader/rtsx_usb 0x8bd08212 rtsx_usb_get_card_status +EXPORT_SYMBOL_GPL drivers/misc/cardreader/rtsx_usb 0x8ef9b9eb rtsx_usb_ep0_write_register +EXPORT_SYMBOL_GPL drivers/misc/cardreader/rtsx_usb 0x9ea6c3a8 rtsx_usb_read_register +EXPORT_SYMBOL_GPL drivers/misc/cardreader/rtsx_usb 0xb175c934 rtsx_usb_add_cmd +EXPORT_SYMBOL_GPL drivers/misc/cardreader/rtsx_usb 0xdbd9cfa9 rtsx_usb_switch_clock +EXPORT_SYMBOL_GPL drivers/misc/cardreader/rtsx_usb 0xe0d6d0fe rtsx_usb_card_exclusive_check +EXPORT_SYMBOL_GPL drivers/misc/cardreader/rtsx_usb 0xed48c32d rtsx_usb_ep0_read_register +EXPORT_SYMBOL_GPL drivers/misc/cb710/cb710 0x17541510 cb710_sg_dwiter_read_next_block +EXPORT_SYMBOL_GPL drivers/misc/cb710/cb710 0x235b0818 cb710_set_irq_handler +EXPORT_SYMBOL_GPL drivers/misc/cb710/cb710 0x557ddf3d cb710_sg_dwiter_write_next_block +EXPORT_SYMBOL_GPL drivers/misc/cb710/cb710 0xb2e2d7a4 cb710_pci_update_config_reg +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 0x25cf5b5f enclosure_component_register +EXPORT_SYMBOL_GPL drivers/misc/enclosure 0x32d9d43a enclosure_find +EXPORT_SYMBOL_GPL drivers/misc/enclosure 0x33331a18 enclosure_component_alloc +EXPORT_SYMBOL_GPL drivers/misc/enclosure 0x41e9961d enclosure_for_each_device +EXPORT_SYMBOL_GPL drivers/misc/enclosure 0x81cece03 enclosure_add_device +EXPORT_SYMBOL_GPL drivers/misc/enclosure 0x8b4ed904 enclosure_unregister +EXPORT_SYMBOL_GPL drivers/misc/enclosure 0xb9f7e7f0 enclosure_register +EXPORT_SYMBOL_GPL drivers/misc/enclosure 0xfa944658 enclosure_remove_device +EXPORT_SYMBOL_GPL drivers/misc/lis3lv02d/lis3lv02d 0x518946bc lis3lv02d_poweroff +EXPORT_SYMBOL_GPL drivers/misc/lis3lv02d/lis3lv02d 0x51ac69b1 lis3_dev +EXPORT_SYMBOL_GPL drivers/misc/lis3lv02d/lis3lv02d 0x53a19657 lis3lv02d_init_dt +EXPORT_SYMBOL_GPL drivers/misc/lis3lv02d/lis3lv02d 0x596427e4 lis3lv02d_joystick_enable +EXPORT_SYMBOL_GPL drivers/misc/lis3lv02d/lis3lv02d 0x69c4d461 lis3lv02d_poweron +EXPORT_SYMBOL_GPL drivers/misc/lis3lv02d/lis3lv02d 0x6da5aa99 lis3lv02d_remove_fs +EXPORT_SYMBOL_GPL drivers/misc/lis3lv02d/lis3lv02d 0xb2cf9b3f lis3lv02d_joystick_disable +EXPORT_SYMBOL_GPL drivers/misc/lis3lv02d/lis3lv02d 0xbb0b15d8 lis3lv02d_init_device +EXPORT_SYMBOL_GPL drivers/misc/ti-st/st_drv 0x091fbd7e st_register +EXPORT_SYMBOL_GPL drivers/misc/ti-st/st_drv 0xa31892ca st_unregister +EXPORT_SYMBOL_GPL drivers/misc/uacce/uacce 0x19ba7751 uacce_register +EXPORT_SYMBOL_GPL drivers/misc/uacce/uacce 0x1e349af4 uacce_alloc +EXPORT_SYMBOL_GPL drivers/misc/uacce/uacce 0x7542ad0b uacce_remove +EXPORT_SYMBOL_GPL drivers/mmc/host/dw_mmc-pltfm 0x94459585 dw_mci_pltfm_remove +EXPORT_SYMBOL_GPL drivers/mmc/host/dw_mmc-pltfm 0x9a7d0c4d dw_mci_pltfm_pmops +EXPORT_SYMBOL_GPL drivers/mmc/host/dw_mmc-pltfm 0xcfa2d344 dw_mci_pltfm_register +EXPORT_SYMBOL_GPL drivers/mmc/host/renesas_sdhi_core 0xc75f27d5 renesas_sdhi_probe +EXPORT_SYMBOL_GPL drivers/mmc/host/renesas_sdhi_core 0xd547271f renesas_sdhi_remove +EXPORT_SYMBOL_GPL drivers/mmc/host/tmio_mmc_core 0x1f24fab7 tmio_mmc_do_data_irq +EXPORT_SYMBOL_GPL drivers/mmc/host/tmio_mmc_core 0x378f2335 tmio_mmc_irq +EXPORT_SYMBOL_GPL drivers/mmc/host/tmio_mmc_core 0x37ff88a9 tmio_mmc_host_runtime_suspend +EXPORT_SYMBOL_GPL drivers/mmc/host/tmio_mmc_core 0x4c5bf090 tmio_mmc_host_remove +EXPORT_SYMBOL_GPL drivers/mmc/host/tmio_mmc_core 0x52b2133e tmio_mmc_host_probe +EXPORT_SYMBOL_GPL drivers/mmc/host/tmio_mmc_core 0x96aeb45d tmio_mmc_host_runtime_resume +EXPORT_SYMBOL_GPL drivers/mmc/host/tmio_mmc_core 0x9988a00f tmio_mmc_disable_mmc_irqs +EXPORT_SYMBOL_GPL drivers/mmc/host/tmio_mmc_core 0xae2f7cb5 tmio_mmc_enable_mmc_irqs +EXPORT_SYMBOL_GPL drivers/mmc/host/tmio_mmc_core 0xbf8f9474 tmio_mmc_host_free +EXPORT_SYMBOL_GPL drivers/mmc/host/tmio_mmc_core 0xfcaa4ab2 tmio_mmc_host_alloc +EXPORT_SYMBOL_GPL drivers/most/most_core 0x1115a457 most_stop_enqueue +EXPORT_SYMBOL_GPL drivers/most/most_core 0x17dfa78d most_put_mbo +EXPORT_SYMBOL_GPL drivers/most/most_core 0x21edd4aa channel_has_mbo +EXPORT_SYMBOL_GPL drivers/most/most_core 0x33033840 most_get_mbo +EXPORT_SYMBOL_GPL drivers/most/most_core 0x5a8fef45 most_start_channel +EXPORT_SYMBOL_GPL drivers/most/most_core 0x85ebef6c most_register_interface +EXPORT_SYMBOL_GPL drivers/most/most_core 0x867821aa most_stop_channel +EXPORT_SYMBOL_GPL drivers/most/most_core 0x905f85ff most_submit_mbo +EXPORT_SYMBOL_GPL drivers/most/most_core 0x9dc71c60 most_register_configfs_subsys +EXPORT_SYMBOL_GPL drivers/most/most_core 0xba27bcc6 most_deregister_interface +EXPORT_SYMBOL_GPL drivers/most/most_core 0xc70eb93c most_resume_enqueue +EXPORT_SYMBOL_GPL drivers/most/most_core 0xd8f0c08a most_register_component +EXPORT_SYMBOL_GPL drivers/most/most_core 0xe28a58fc most_deregister_component +EXPORT_SYMBOL_GPL drivers/most/most_core 0xe83472bb most_deregister_configfs_subsys +EXPORT_SYMBOL_GPL drivers/mtd/chips/cfi_cmdset_0001 0x136ff232 cfi_cmdset_0003 +EXPORT_SYMBOL_GPL drivers/mtd/chips/cfi_cmdset_0001 0x2c46d7da cfi_cmdset_0001 +EXPORT_SYMBOL_GPL drivers/mtd/chips/cfi_cmdset_0001 0xee71d7a4 cfi_cmdset_0200 +EXPORT_SYMBOL_GPL drivers/mtd/chips/cfi_cmdset_0002 0x0cfb60c6 cfi_cmdset_0002 +EXPORT_SYMBOL_GPL drivers/mtd/chips/cfi_cmdset_0002 0x72a92b16 cfi_cmdset_0006 +EXPORT_SYMBOL_GPL drivers/mtd/chips/cfi_cmdset_0002 0xff02af40 cfi_cmdset_0701 +EXPORT_SYMBOL_GPL drivers/mtd/chips/cfi_cmdset_0020 0x9d3c0641 cfi_cmdset_0020 +EXPORT_SYMBOL_GPL drivers/mtd/chips/cfi_util 0x2e6d5fab cfi_qry_mode_off +EXPORT_SYMBOL_GPL drivers/mtd/chips/cfi_util 0x8caa843f cfi_qry_present +EXPORT_SYMBOL_GPL drivers/mtd/chips/cfi_util 0xf81953fa cfi_qry_mode_on +EXPORT_SYMBOL_GPL drivers/mtd/hyperbus/hyperbus-core 0xc412e29a hyperbus_register_device +EXPORT_SYMBOL_GPL drivers/mtd/hyperbus/hyperbus-core 0xe8227955 hyperbus_unregister_device +EXPORT_SYMBOL_GPL drivers/mtd/nand/onenand/onenand 0xa8c5a29b onenand_scan +EXPORT_SYMBOL_GPL drivers/mtd/nand/onenand/onenand 0xd4e98b8e onenand_release +EXPORT_SYMBOL_GPL drivers/mtd/nand/raw/brcmnand/brcmnand 0x0b3aa0a4 brcmnand_remove +EXPORT_SYMBOL_GPL drivers/mtd/nand/raw/brcmnand/brcmnand 0x23398a94 brcmnand_probe +EXPORT_SYMBOL_GPL drivers/mtd/nand/raw/brcmnand/brcmnand 0xe20efe8b brcmnand_pm_ops +EXPORT_SYMBOL_GPL drivers/mtd/nand/raw/denali 0x8a842708 denali_chip_init +EXPORT_SYMBOL_GPL drivers/mtd/nand/raw/sm_common 0x52e0b604 sm_register_device +EXPORT_SYMBOL_GPL drivers/mtd/spi-nor/spi-nor 0xc0fed223 spi_nor_scan +EXPORT_SYMBOL_GPL drivers/mtd/spi-nor/spi-nor 0xfc746590 spi_nor_restore +EXPORT_SYMBOL_GPL drivers/mtd/ubi/ubi 0x04421f27 ubi_do_get_device_info +EXPORT_SYMBOL_GPL drivers/mtd/ubi/ubi 0x093508dd ubi_leb_map +EXPORT_SYMBOL_GPL drivers/mtd/ubi/ubi 0x38e10c1d ubi_flush +EXPORT_SYMBOL_GPL drivers/mtd/ubi/ubi 0x3adb020f ubi_leb_write +EXPORT_SYMBOL_GPL drivers/mtd/ubi/ubi 0x42801d20 ubi_sync +EXPORT_SYMBOL_GPL drivers/mtd/ubi/ubi 0x42d7cf78 ubi_open_volume_nm +EXPORT_SYMBOL_GPL drivers/mtd/ubi/ubi 0x5e731dc8 ubi_get_volume_info +EXPORT_SYMBOL_GPL drivers/mtd/ubi/ubi 0x66011ab6 ubi_get_device_info +EXPORT_SYMBOL_GPL drivers/mtd/ubi/ubi 0x7f37e4da ubi_open_volume_path +EXPORT_SYMBOL_GPL drivers/mtd/ubi/ubi 0x85a8ee76 ubi_unregister_volume_notifier +EXPORT_SYMBOL_GPL drivers/mtd/ubi/ubi 0x8a2f2862 ubi_leb_unmap +EXPORT_SYMBOL_GPL drivers/mtd/ubi/ubi 0x9ad5f1ba ubi_leb_change +EXPORT_SYMBOL_GPL drivers/mtd/ubi/ubi 0x9c7ee3ee ubi_open_volume +EXPORT_SYMBOL_GPL drivers/mtd/ubi/ubi 0xc2625ec7 ubi_leb_read +EXPORT_SYMBOL_GPL drivers/mtd/ubi/ubi 0xd850e1aa ubi_leb_read_sg +EXPORT_SYMBOL_GPL drivers/mtd/ubi/ubi 0xeb7b8732 ubi_close_volume +EXPORT_SYMBOL_GPL drivers/mtd/ubi/ubi 0xedf94c3a ubi_is_mapped +EXPORT_SYMBOL_GPL drivers/mtd/ubi/ubi 0xf5ee9ba8 ubi_register_volume_notifier +EXPORT_SYMBOL_GPL drivers/mtd/ubi/ubi 0xffd75b9b ubi_leb_erase +EXPORT_SYMBOL_GPL drivers/mux/mux-core 0x263bcaa7 devm_mux_chip_register +EXPORT_SYMBOL_GPL drivers/mux/mux-core 0x442a69bb devm_mux_control_get +EXPORT_SYMBOL_GPL drivers/mux/mux-core 0x4eedebef mux_chip_alloc +EXPORT_SYMBOL_GPL drivers/mux/mux-core 0x52b56b51 mux_chip_free +EXPORT_SYMBOL_GPL drivers/mux/mux-core 0x59eb9761 mux_control_try_select +EXPORT_SYMBOL_GPL drivers/mux/mux-core 0x6048d362 mux_chip_unregister +EXPORT_SYMBOL_GPL drivers/mux/mux-core 0x7bc45dc4 mux_control_states +EXPORT_SYMBOL_GPL drivers/mux/mux-core 0x87d3ec8b mux_control_deselect +EXPORT_SYMBOL_GPL drivers/mux/mux-core 0x897a3f9d mux_control_put +EXPORT_SYMBOL_GPL drivers/mux/mux-core 0xaed62b71 devm_mux_chip_alloc +EXPORT_SYMBOL_GPL drivers/mux/mux-core 0xbbca5bd7 mux_chip_register +EXPORT_SYMBOL_GPL drivers/mux/mux-core 0xcdb2f0f3 mux_control_select +EXPORT_SYMBOL_GPL drivers/mux/mux-core 0xf4ae1cb9 mux_control_get +EXPORT_SYMBOL_GPL drivers/net/arcnet/arcnet 0x16a85840 arcnet_led_event +EXPORT_SYMBOL_GPL drivers/net/arcnet/arcnet 0x5ae5992d devm_arcnet_led_init +EXPORT_SYMBOL_GPL drivers/net/bareudp 0xa7582a5f bareudp_dev_create +EXPORT_SYMBOL_GPL drivers/net/can/c_can/c_can 0x0357d567 c_can_power_down +EXPORT_SYMBOL_GPL drivers/net/can/c_can/c_can 0x29ea8dcf alloc_c_can_dev +EXPORT_SYMBOL_GPL drivers/net/can/c_can/c_can 0x3a709c42 free_c_can_dev +EXPORT_SYMBOL_GPL drivers/net/can/c_can/c_can 0x40bb890b unregister_c_can_dev +EXPORT_SYMBOL_GPL drivers/net/can/c_can/c_can 0x6c4621ba register_c_can_dev +EXPORT_SYMBOL_GPL drivers/net/can/c_can/c_can 0xfd0188c8 c_can_power_up +EXPORT_SYMBOL_GPL drivers/net/can/can-dev 0x0a865c02 can_rx_offload_add_timestamp +EXPORT_SYMBOL_GPL drivers/net/can/can-dev 0x119079f4 can_bus_off +EXPORT_SYMBOL_GPL drivers/net/can/can-dev 0x16081ffb can_dlc2len +EXPORT_SYMBOL_GPL drivers/net/can/can-dev 0x2bfbd245 of_can_transceiver +EXPORT_SYMBOL_GPL drivers/net/can/can-dev 0x34efa472 can_rx_offload_queue_sorted +EXPORT_SYMBOL_GPL drivers/net/can/can-dev 0x37e9eac3 unregister_candev +EXPORT_SYMBOL_GPL drivers/net/can/can-dev 0x42746c41 register_candev +EXPORT_SYMBOL_GPL drivers/net/can/can-dev 0x53fe84a5 free_candev +EXPORT_SYMBOL_GPL drivers/net/can/can-dev 0x8762619a can_len2dlc +EXPORT_SYMBOL_GPL drivers/net/can/can-dev 0x8bf8c381 can_free_echo_skb +EXPORT_SYMBOL_GPL drivers/net/can/can-dev 0x8eee4be7 alloc_can_err_skb +EXPORT_SYMBOL_GPL drivers/net/can/can-dev 0x9205e9ed can_rx_offload_queue_tail +EXPORT_SYMBOL_GPL drivers/net/can/can-dev 0x979fb8b1 can_change_mtu +EXPORT_SYMBOL_GPL drivers/net/can/can-dev 0x9edffb43 can_change_state +EXPORT_SYMBOL_GPL drivers/net/can/can-dev 0xab2fcef5 close_candev +EXPORT_SYMBOL_GPL drivers/net/can/can-dev 0xb37c9934 can_rx_offload_irq_offload_timestamp +EXPORT_SYMBOL_GPL drivers/net/can/can-dev 0xb3e7c0fe open_candev +EXPORT_SYMBOL_GPL drivers/net/can/can-dev 0xcff2f62c can_rx_offload_enable +EXPORT_SYMBOL_GPL drivers/net/can/can-dev 0xd33fae41 safe_candev_priv +EXPORT_SYMBOL_GPL drivers/net/can/can-dev 0xd8130186 can_rx_offload_add_fifo +EXPORT_SYMBOL_GPL drivers/net/can/can-dev 0xdb53b07f can_get_echo_skb +EXPORT_SYMBOL_GPL drivers/net/can/can-dev 0xedfb9cea alloc_canfd_skb +EXPORT_SYMBOL_GPL drivers/net/can/can-dev 0xee612859 can_put_echo_skb +EXPORT_SYMBOL_GPL drivers/net/can/can-dev 0xf11a95d9 alloc_can_skb +EXPORT_SYMBOL_GPL drivers/net/can/can-dev 0xf206577f can_rx_offload_del +EXPORT_SYMBOL_GPL drivers/net/can/can-dev 0xf4effa19 alloc_candev_mqs +EXPORT_SYMBOL_GPL drivers/net/can/can-dev 0xf85387c6 can_rx_offload_get_echo_skb +EXPORT_SYMBOL_GPL drivers/net/can/can-dev 0xff8aea9f can_rx_offload_irq_offload_fifo +EXPORT_SYMBOL_GPL drivers/net/can/cc770/cc770 0x2c07a44e alloc_cc770dev +EXPORT_SYMBOL_GPL drivers/net/can/cc770/cc770 0x5cc5f3f7 free_cc770dev +EXPORT_SYMBOL_GPL drivers/net/can/cc770/cc770 0x99ecf30c unregister_cc770dev +EXPORT_SYMBOL_GPL drivers/net/can/cc770/cc770 0xe1767260 register_cc770dev +EXPORT_SYMBOL_GPL drivers/net/can/m_can/m_can 0x46bf0b7e m_can_class_get_clocks +EXPORT_SYMBOL_GPL drivers/net/can/m_can/m_can 0x4a1cf337 m_can_init_ram +EXPORT_SYMBOL_GPL drivers/net/can/m_can/m_can 0x8b1cac95 m_can_class_free_dev +EXPORT_SYMBOL_GPL drivers/net/can/m_can/m_can 0x9740b460 m_can_class_register +EXPORT_SYMBOL_GPL drivers/net/can/m_can/m_can 0x9bd9f78c m_can_class_allocate_dev +EXPORT_SYMBOL_GPL drivers/net/can/m_can/m_can 0xb318f297 m_can_class_suspend +EXPORT_SYMBOL_GPL drivers/net/can/m_can/m_can 0xcf321b75 m_can_class_unregister +EXPORT_SYMBOL_GPL drivers/net/can/m_can/m_can 0xcffa6867 m_can_class_resume +EXPORT_SYMBOL_GPL drivers/net/can/sja1000/sja1000 0x04b55979 register_sja1000dev +EXPORT_SYMBOL_GPL drivers/net/can/sja1000/sja1000 0x49ebd0d2 sja1000_interrupt +EXPORT_SYMBOL_GPL drivers/net/can/sja1000/sja1000 0x5742b6fe unregister_sja1000dev +EXPORT_SYMBOL_GPL drivers/net/can/sja1000/sja1000 0x8e4fd9b7 alloc_sja1000dev +EXPORT_SYMBOL_GPL drivers/net/can/sja1000/sja1000 0xa00a4ba1 free_sja1000dev +EXPORT_SYMBOL_GPL drivers/net/dsa/lan9303-core 0x85d3bbec lan9303_indirect_phy_ops +EXPORT_SYMBOL_GPL drivers/net/dsa/microchip/ksz_common 0x0b1fc282 ksz_port_bridge_leave +EXPORT_SYMBOL_GPL drivers/net/dsa/microchip/ksz_common 0x1f2e7229 ksz_port_bridge_join +EXPORT_SYMBOL_GPL drivers/net/dsa/microchip/ksz_common 0x36999849 ksz_init_mib_timer +EXPORT_SYMBOL_GPL drivers/net/dsa/microchip/ksz_common 0x3790113b ksz_adjust_link +EXPORT_SYMBOL_GPL drivers/net/dsa/microchip/ksz_common 0x44067465 ksz_port_mdb_prepare +EXPORT_SYMBOL_GPL drivers/net/dsa/microchip/ksz_common 0x47d2b721 ksz_get_ethtool_stats +EXPORT_SYMBOL_GPL drivers/net/dsa/microchip/ksz_common 0x7e77801b ksz_sset_count +EXPORT_SYMBOL_GPL drivers/net/dsa/microchip/ksz_common 0x8230c0f1 ksz_enable_port +EXPORT_SYMBOL_GPL drivers/net/dsa/microchip/ksz_common 0xa34bb0ac ksz_port_mdb_del +EXPORT_SYMBOL_GPL drivers/net/dsa/microchip/ksz_common 0xbdc49c67 ksz_port_mdb_add +EXPORT_SYMBOL_GPL drivers/net/dsa/microchip/ksz_common 0xc0fd05de ksz_port_vlan_prepare +EXPORT_SYMBOL_GPL drivers/net/dsa/microchip/ksz_common 0xc482ea59 ksz_update_port_member +EXPORT_SYMBOL_GPL drivers/net/dsa/microchip/ksz_common 0xcb5c233e ksz_phy_write16 +EXPORT_SYMBOL_GPL drivers/net/dsa/microchip/ksz_common 0xd9f6b28e ksz_port_fast_age +EXPORT_SYMBOL_GPL drivers/net/dsa/microchip/ksz_common 0xdfdd8b1e ksz_disable_port +EXPORT_SYMBOL_GPL drivers/net/dsa/microchip/ksz_common 0xe3086acf ksz_phy_read16 +EXPORT_SYMBOL_GPL drivers/net/dsa/microchip/ksz_common 0xf4449d90 ksz_port_fdb_dump +EXPORT_SYMBOL_GPL drivers/net/dsa/realtek-smi 0x0a6e8986 rtl8366_set_vlan +EXPORT_SYMBOL_GPL drivers/net/dsa/realtek-smi 0x260451e8 rtl8366_vlan_prepare +EXPORT_SYMBOL_GPL drivers/net/dsa/realtek-smi 0x620f1c8e rtl8366_get_sset_count +EXPORT_SYMBOL_GPL drivers/net/dsa/realtek-smi 0x63f70c78 rtl8366rb_variant +EXPORT_SYMBOL_GPL drivers/net/dsa/realtek-smi 0x79bbaefd rtl8366_get_ethtool_stats +EXPORT_SYMBOL_GPL drivers/net/dsa/realtek-smi 0x92dd747a rtl8366_vlan_del +EXPORT_SYMBOL_GPL drivers/net/dsa/realtek-smi 0x9d4f5d2e rtl8366_enable_vlan4k +EXPORT_SYMBOL_GPL drivers/net/dsa/realtek-smi 0x9e75e06e rtl8366_vlan_add +EXPORT_SYMBOL_GPL drivers/net/dsa/realtek-smi 0x9ef4ba22 rtl8366_enable_vlan +EXPORT_SYMBOL_GPL drivers/net/dsa/realtek-smi 0xb3878319 rtl8366_reset_vlan +EXPORT_SYMBOL_GPL drivers/net/dsa/realtek-smi 0xbc187943 realtek_smi_write_reg_noack +EXPORT_SYMBOL_GPL drivers/net/dsa/realtek-smi 0xdcdd7b78 rtl8366_get_strings +EXPORT_SYMBOL_GPL drivers/net/dsa/realtek-smi 0xe2cd8631 rtl8366_set_pvid +EXPORT_SYMBOL_GPL drivers/net/dsa/realtek-smi 0xe421e0b6 rtl8366_mc_is_used +EXPORT_SYMBOL_GPL drivers/net/dsa/realtek-smi 0xea8541ff rtl8366_init_vlan +EXPORT_SYMBOL_GPL drivers/net/dsa/realtek-smi 0xfa9232f5 rtl8366_vlan_filtering +EXPORT_SYMBOL_GPL drivers/net/ethernet/arc/arc_emac 0x697f4e13 arc_emac_remove +EXPORT_SYMBOL_GPL drivers/net/ethernet/arc/arc_emac 0xf9204236 arc_emac_probe +EXPORT_SYMBOL_GPL drivers/net/ethernet/freescale/enetc/fsl-enetc-mdio 0xa664caef enetc_mdio_read +EXPORT_SYMBOL_GPL drivers/net/ethernet/freescale/enetc/fsl-enetc-mdio 0xbe83508a enetc_hw_alloc +EXPORT_SYMBOL_GPL drivers/net/ethernet/freescale/enetc/fsl-enetc-mdio 0xce9c649b enetc_mdio_write +EXPORT_SYMBOL_GPL drivers/net/ethernet/freescale/enetc/fsl-enetc-mdio 0xf68ac32d enetc_mdio_lock +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x035c0adf mlx4_multicast_attach +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x08255a70 mlx4_mr_hw_change_pd +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x0b1d8f94 mlx4_flow_steer_promisc_remove +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x0c073922 mlx4_get_devlink_port +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x0c29c5c7 mlx4_get_internal_clock_params +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x119135e7 mlx4_mr_hw_change_access +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x11baab90 mlx4_config_dev_retrieval +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x12ff2896 mlx4_multicast_detach +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x13201a3f mlx4_write_mtt +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x1479de30 mlx4_pd_alloc +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x15e08834 mlx4_unicast_attach +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x168a7b89 mlx4_SYNC_TPT +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x1b5cc074 mlx4_bond +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x1b97e715 mlx4_flow_detach +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x22575f5a mlx4_srq_free +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x249348f0 mlx4_register_mac +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x2506ad86 mlx4_get_protocol_dev +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x257e2926 mlx4_qp_remove +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x2d4b30fc mlx4_buf_write_mtt +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x2d59662e mlx4_unicast_promisc_remove +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x2ee2a1c2 mlx4_xrcd_free +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x2f6e90c1 mlx4_port_map_set +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x312bab26 mlx4_get_vf_stats +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x32a955a4 mlx4_wol_write +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x3359d170 mlx4_mr_enable +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x34020285 mlx4_xrcd_alloc +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x34f90d3c mlx4_phys_to_slaves_pport_actv +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x3567417b mlx4_multicast_promisc_remove +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x36454dfe mlx4_flow_steer_promisc_add +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x3a4244b9 mlx4_mr_hw_write_mpt +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x3a6c1ad5 mlx4_mtt_cleanup +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x3ff1141b mlx4_get_counter_stats +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x416ec29d mlx4_alloc_hwq_res +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x444c74b4 mlx4_find_cached_mac +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x4b922b85 mlx4_cq_free +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x4bb6e61e mlx4_set_vf_rate +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x53763a89 mlx4_bf_free +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x53e76c50 mlx4_register_vlan +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x55c3ac45 mlx4_uar_alloc +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x570f813e mlx4_cq_alloc +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x571184bd mlx4_find_cached_vlan +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x5a51d55a mlx4_qp_to_ready +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x5f10ecfc mlx4_srq_query +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x65585f59 mlx4_mtt_addr +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x6606837f mlx4_wol_read +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x6635922a mlx4_counter_free +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x67ae5448 mlx4_srq_alloc +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x68bf48f1 mlx4_mtt_init +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x6b01aa4e mlx4_phys_to_slaves_pport +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x6d25e879 mlx4_phys_to_slave_port +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x6d8830ce mlx4_bf_alloc +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x6fadbb70 mlx4_mr_free +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x79ab68ce mlx4_srq_arm +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x7a52133e mlx4_srq_lookup +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x7a66bcd7 mlx4_get_base_gid_ix +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x7abe9b86 __mlx4_register_mac +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x7b87747c mlx4_vf_smi_enabled +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x7d51786e __mlx4_cmd +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x809edb7e mlx4_pd_free +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x839ddc75 mlx4_flow_attach +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x866880a1 mlx4_mr_hw_put_mpt +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x86757a93 mlx4_set_admin_guid +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x87337714 mlx4_update_qp +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x890571ad mlx4_unbond +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x89bb5d68 mlx4_read_clock +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x8dcd7447 mlx4_uar_free +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x8f274e54 mlx4_unicast_promisc_add +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x8f4c0416 mlx4_mr_rereg_mem_write +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x906ed486 mlx4_get_active_ports +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x9271103b mlx4_replace_zero_macs +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x95ed7669 mlx4_qp_alloc +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x96c9d93b mlx4_qp_release_range +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x9c4cae36 mlx4_FLOW_STEERING_IB_UC_QP_RANGE +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x9d5cfb7b mlx4_mw_alloc +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xa11fedae mlx4_mr_rereg_mem_cleanup +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xa220e1f5 mlx4_map_sw_to_hw_steering_mode +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xa383f032 mlx4_vf_set_enable_smi_admin +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xa50dedcc mlx4_counter_alloc +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xa78fe42f mlx4_ACCESS_PTYS_REG +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xa865da33 mlx4_buf_free +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xa8ffee49 mlx4_set_vf_mac +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xa902be54 __mlx4_unregister_mac +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xac4b6145 mlx4_set_vf_spoofchk +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xae3fd71d __mlx4_replace_mac +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xb0ad8657 mlx4_qp_reserve_range +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xb22fb49e mlx4_mw_enable +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xb2ee01f2 mlx4_map_sw_to_hw_steering_id +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xb7424347 mlx4_INIT_PORT +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xba03e676 mlx4_free_cmd_mailbox +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xc0d92a2a mlx4_mr_alloc +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xc2a61387 mlx4_get_default_counter_index +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xc8366209 mlx4_mr_hw_get_mpt +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xcdb0a49c mlx4_set_vf_vlan +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xce77777a mlx4_get_base_qpn +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xceb40845 mlx4_unregister_vlan +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xd4da3302 mlx4_config_roce_v2_port +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xd5a4da07 mlx4_set_vf_link_state +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xd7a5a219 mlx4_get_slave_default_vlan +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xd845f87b mlx4_unregister_mac +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xd8c2fceb mlx4_alloc_cmd_mailbox +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xdc440bd5 mlx4_get_vf_config +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xdffada80 mlx4_config_vxlan_port +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xe06af9ac mlx4_multicast_promisc_add +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xe880975d mlx4_qp_modify +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xe94a62ce mlx4_unicast_detach +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xe989b41d mlx4_free_hwq_res +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xea822c17 mlx4_cq_modify +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xeaf72abc mlx4_get_admin_guid +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xec9640bc mlx4_db_free +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xf1846e13 mlx4_db_alloc +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xf1d316ab mlx4_qp_query +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xf45ddb80 mlx4_vf_get_enable_smi_admin +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xf6f2d21b mlx4_hw_rule_sz +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xf701de5a mlx4_register_interface +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xf898b54c mlx4_cq_resize +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xf939afef mlx4_mw_free +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xf9c86436 mlx4_buf_alloc +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xfa4f4132 mlx4_qp_free +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xfd73d40a mlx4_unregister_interface +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xfdb839d8 mlx4_slave_convert_port +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xfe630528 mlx4_CLOSE_PORT +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x04e9fd19 mlx5_nic_vport_affiliate_multiport +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x0c021f4b mlx5_buf_free +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x14ac14c1 mlx5_set_port_pfc +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x1561fefb mlx5_db_free +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x19b1965c mlx5_accel_esp_create_xfrm +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x1a3b2974 mlx5_query_nic_vport_mtu +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x1dcbcbc4 mlx5_modify_port_ets_rate_limit +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x1e557031 mlx5_fill_page_array +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x1ee2cb0e mlx5_frag_buf_free +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x22a2cfa3 mlx5_core_query_sq_state +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x3407aedd mlx5_query_nic_system_image_guid +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x34a58d3b mlx5_set_port_pause +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x3893ec68 mlx5_query_nic_vport_qkey_viol_cntr +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x3d6a0659 mlx5_core_reserved_gids_count +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x42097985 mlx5_query_port_vl_hw_cap +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x4415e0f8 mlx5_db_alloc_node +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x46d88921 mlx5_modify_nic_vport_promisc +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x4e36d159 mlx5_query_module_eeprom +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x4eb918ab mlx5_query_port_link_width_oper +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x4ebc696a mlx5_db_alloc +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x519209d1 mlx5_query_hca_vport_pkey +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x51a44678 mlx5_nic_vport_enable_roce +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x57d2bc89 mlx5_query_port_oper_mtu +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x59c62e1c mlx5_set_port_wol +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x5a4c0076 mlx5_query_port_admin_status +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x5c9e015d mlx5_query_port_tc_bw_alloc +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x5cefab16 mlx5_dm_sw_icm_alloc +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x5d007cb1 mlx5_core_query_ib_ppcnt +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x5d1b290d mlx5_query_nic_vport_system_image_guid +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x67583ec9 mlx5_accel_esp_destroy_xfrm +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x68163734 mlx5_set_port_tc_group +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x686d6532 mlx5_query_port_tc_group +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x708c8648 mlx5_modify_nic_vport_mac_address +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x71595ab9 mlx5_nic_vport_unaffiliate_multiport +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x7221baf4 mlx5_fill_page_frag_array +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x73f48da9 mlx5_query_min_inline +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x75a287e5 mlx5_query_hca_vport_context +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x76cd20eb mlx5_query_port_ets_rate_limit +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x77d1aafc mlx5_query_port_pause +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x7a4b33ca mlx5_query_nic_vport_mac_address +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x7b23a07f mlx5_eswitch_mode +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x87519659 mlx5_query_mac_address +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x8be40ef5 mlx5_modify_nic_vport_mac_list +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x922fa31e mlx5_nic_vport_update_local_lb +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x947f6726 mlx5_frag_buf_alloc_node +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x95d625f3 mlx5_query_nic_vport_node_guid +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x97905b20 mlx5_query_nic_vport_min_inline +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x9b2ff1bb mlx5_toggle_port_link +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xa7a8956b mlx5_set_port_admin_status +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xadefb8bb mlx5_accel_ipsec_device_caps +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xb51739bd mlx5_query_port_pfc +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xb7147d41 mlx5_query_hca_vport_gid +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xbcc80db4 mlx5_modify_nic_vport_vlans +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xbdffd31f mlx5_dm_sw_icm_dealloc +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xc04b7e72 mlx5_core_modify_hca_vport_context +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xc08ae3a2 mlx5_query_port_ptys +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xc3506d31 mlx5_query_port_wol +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xc43bd228 mlx5_eswitch_get_total_vports +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xd09889f6 mlx5_query_nic_vport_promisc +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xd1fe025e mlx5_set_port_mtu +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xd63f8fc6 mlx5_core_access_reg +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xd6f0ff02 mlx5_query_port_prio_tc +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xda3b7537 mlx5_query_hca_vport_node_guid +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xdebf2edb mlx5_query_nic_vport_mac_list +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xe7af24a5 mlx5_core_query_vport_counter +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xec2ff772 mlx5_set_port_caps +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xf026fb08 mlx5_query_port_max_mtu +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xf05b4eb3 mlx5_query_hca_vport_system_image_guid +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xf215a35a mlx5_set_port_prio_tc +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xf2effb8e mlx5_nic_vport_query_local_lb +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xf95e4795 mlx5_accel_esp_modify_xfrm +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xfcad67a8 mlx5_set_port_tc_bw_alloc +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xfe5a94e1 mlx5_modify_nic_vport_mtu +EXPORT_SYMBOL_GPL drivers/net/ethernet/microchip/encx24j600-regmap 0x0b872ac2 devm_regmap_init_encx24j600 +EXPORT_SYMBOL_GPL drivers/net/ethernet/microchip/encx24j600-regmap 0x2695f52f regmap_encx24j600_spi_write +EXPORT_SYMBOL_GPL drivers/net/ethernet/microchip/encx24j600-regmap 0x4be2f862 regmap_encx24j600_spi_read +EXPORT_SYMBOL_GPL drivers/net/ethernet/mscc/mscc_ocelot_common 0x07077298 ocelot_cls_flower_replace +EXPORT_SYMBOL_GPL drivers/net/ethernet/mscc/mscc_ocelot_common 0x45c20920 ocelot_cls_flower_destroy +EXPORT_SYMBOL_GPL drivers/net/ethernet/mscc/mscc_ocelot_common 0xcc818896 ocelot_cls_flower_stats +EXPORT_SYMBOL_GPL drivers/net/ethernet/qualcomm/qca_7k_common 0x0b28a9ad qcafrm_create_footer +EXPORT_SYMBOL_GPL drivers/net/ethernet/qualcomm/qca_7k_common 0x2b6ddf3f qcafrm_fsm_decode +EXPORT_SYMBOL_GPL drivers/net/ethernet/qualcomm/qca_7k_common 0x41da0375 qcafrm_create_header +EXPORT_SYMBOL_GPL drivers/net/ethernet/stmicro/stmmac/stmmac 0x19f4459f stmmac_dvr_probe +EXPORT_SYMBOL_GPL drivers/net/ethernet/stmicro/stmmac/stmmac 0x499267cd stmmac_suspend +EXPORT_SYMBOL_GPL drivers/net/ethernet/stmicro/stmmac/stmmac 0x79c1bfda stmmac_resume +EXPORT_SYMBOL_GPL drivers/net/ethernet/stmicro/stmmac/stmmac 0x92d778bb stmmac_get_mac_addr +EXPORT_SYMBOL_GPL drivers/net/ethernet/stmicro/stmmac/stmmac 0xd1cc24db stmmac_set_mac_addr +EXPORT_SYMBOL_GPL drivers/net/ethernet/stmicro/stmmac/stmmac 0xebb373f8 stmmac_dvr_remove +EXPORT_SYMBOL_GPL drivers/net/ethernet/stmicro/stmmac/stmmac-platform 0x27aeedea stmmac_probe_config_dt +EXPORT_SYMBOL_GPL drivers/net/ethernet/stmicro/stmmac/stmmac-platform 0x3c0a1121 stmmac_pltfr_remove +EXPORT_SYMBOL_GPL drivers/net/ethernet/stmicro/stmmac/stmmac-platform 0x9805a946 stmmac_remove_config_dt +EXPORT_SYMBOL_GPL drivers/net/ethernet/stmicro/stmmac/stmmac-platform 0xf0542a43 stmmac_pltfr_pm_ops +EXPORT_SYMBOL_GPL drivers/net/ethernet/stmicro/stmmac/stmmac-platform 0xf1b9678f stmmac_get_platform_resources +EXPORT_SYMBOL_GPL drivers/net/ethernet/wiznet/w5100 0x093044c3 w5100_ops_priv +EXPORT_SYMBOL_GPL drivers/net/ethernet/wiznet/w5100 0x5fdf6908 w5100_probe +EXPORT_SYMBOL_GPL drivers/net/ethernet/wiznet/w5100 0x889070f4 w5100_pm_ops +EXPORT_SYMBOL_GPL drivers/net/ethernet/wiznet/w5100 0xc9576ea4 w5100_remove +EXPORT_SYMBOL_GPL drivers/net/geneve 0x36adc814 geneve_dev_create_fb +EXPORT_SYMBOL_GPL drivers/net/ipvlan/ipvlan 0x0090545b ipvlan_link_new +EXPORT_SYMBOL_GPL drivers/net/ipvlan/ipvlan 0x43a9e368 ipvlan_link_delete +EXPORT_SYMBOL_GPL drivers/net/ipvlan/ipvlan 0xc16f3afd ipvlan_link_setup +EXPORT_SYMBOL_GPL drivers/net/ipvlan/ipvlan 0xdc25da81 ipvlan_count_rx +EXPORT_SYMBOL_GPL drivers/net/ipvlan/ipvlan 0xfc4285b1 ipvlan_link_register +EXPORT_SYMBOL_GPL drivers/net/macsec 0x69dec0dd macsec_pn_wrapped +EXPORT_SYMBOL_GPL drivers/net/macvlan 0x2253125c macvlan_common_newlink +EXPORT_SYMBOL_GPL drivers/net/macvlan 0x547e1f35 macvlan_link_register +EXPORT_SYMBOL_GPL drivers/net/macvlan 0xc6637786 macvlan_dellink +EXPORT_SYMBOL_GPL drivers/net/macvlan 0xf5f2da60 macvlan_common_setup +EXPORT_SYMBOL_GPL drivers/net/net_failover 0x27ae1819 net_failover_create +EXPORT_SYMBOL_GPL drivers/net/net_failover 0x6b65323f net_failover_destroy +EXPORT_SYMBOL_GPL drivers/net/phy/bcm-phy-lib 0x02d50ee6 bcm_phy_write_exp +EXPORT_SYMBOL_GPL drivers/net/phy/bcm-phy-lib 0x04543104 bcm_phy_modify_exp +EXPORT_SYMBOL_GPL drivers/net/phy/bcm-phy-lib 0x1c75ada9 __bcm_phy_read_rdb +EXPORT_SYMBOL_GPL drivers/net/phy/bcm-phy-lib 0x1d43b6ac bcm_phy_cable_test_get_status +EXPORT_SYMBOL_GPL drivers/net/phy/bcm-phy-lib 0x23ab0e01 bcm_phy_write_rdb +EXPORT_SYMBOL_GPL drivers/net/phy/bcm-phy-lib 0x23f2176c bcm_phy_read_shadow +EXPORT_SYMBOL_GPL drivers/net/phy/bcm-phy-lib 0x2bfe5b75 bcm_phy_get_stats +EXPORT_SYMBOL_GPL drivers/net/phy/bcm-phy-lib 0x3022e858 bcm_phy_enable_jumbo +EXPORT_SYMBOL_GPL drivers/net/phy/bcm-phy-lib 0x31a281d4 bcm_phy_cable_test_get_status_rdb +EXPORT_SYMBOL_GPL drivers/net/phy/bcm-phy-lib 0x36b580b1 bcm_phy_get_sset_count +EXPORT_SYMBOL_GPL drivers/net/phy/bcm-phy-lib 0x378839a8 bcm_phy_set_eee +EXPORT_SYMBOL_GPL drivers/net/phy/bcm-phy-lib 0x45045c56 __bcm_phy_read_exp +EXPORT_SYMBOL_GPL drivers/net/phy/bcm-phy-lib 0x4959c0ef __bcm_phy_modify_exp +EXPORT_SYMBOL_GPL drivers/net/phy/bcm-phy-lib 0x4addb11d bcm_phy_cable_test_start +EXPORT_SYMBOL_GPL drivers/net/phy/bcm-phy-lib 0x4ef4591f bcm_phy_downshift_set +EXPORT_SYMBOL_GPL drivers/net/phy/bcm-phy-lib 0x562891f1 bcm54xx_auxctl_read +EXPORT_SYMBOL_GPL drivers/net/phy/bcm-phy-lib 0x7a7cd922 bcm_phy_ack_intr +EXPORT_SYMBOL_GPL drivers/net/phy/bcm-phy-lib 0x7ca94622 bcm_phy_read_misc +EXPORT_SYMBOL_GPL drivers/net/phy/bcm-phy-lib 0x8d2555bb bcm_phy_get_strings +EXPORT_SYMBOL_GPL drivers/net/phy/bcm-phy-lib 0x8ea423a0 bcm_phy_r_rc_cal_reset +EXPORT_SYMBOL_GPL drivers/net/phy/bcm-phy-lib 0x92625ce3 bcm_phy_read_exp +EXPORT_SYMBOL_GPL drivers/net/phy/bcm-phy-lib 0xa3464bbe bcm_phy_config_intr +EXPORT_SYMBOL_GPL drivers/net/phy/bcm-phy-lib 0xa46b8b6f bcm_phy_write_shadow +EXPORT_SYMBOL_GPL drivers/net/phy/bcm-phy-lib 0xbd7ae146 bcm_phy_modify_rdb +EXPORT_SYMBOL_GPL drivers/net/phy/bcm-phy-lib 0xc33f0b0e bcm_phy_cable_test_start_rdb +EXPORT_SYMBOL_GPL drivers/net/phy/bcm-phy-lib 0xcb13ad1c bcm_phy_read_rdb +EXPORT_SYMBOL_GPL drivers/net/phy/bcm-phy-lib 0xcbca6980 bcm_phy_downshift_get +EXPORT_SYMBOL_GPL drivers/net/phy/bcm-phy-lib 0xd1574d4d bcm_phy_28nm_a0b0_afe_config_init +EXPORT_SYMBOL_GPL drivers/net/phy/bcm-phy-lib 0xdb3a4d20 bcm_phy_write_misc +EXPORT_SYMBOL_GPL drivers/net/phy/bcm-phy-lib 0xdd696d2c __bcm_phy_write_exp +EXPORT_SYMBOL_GPL drivers/net/phy/bcm-phy-lib 0xedd3ad67 bcm_phy_enable_apd +EXPORT_SYMBOL_GPL drivers/net/phy/bcm-phy-lib 0xf07710ad __bcm_phy_modify_rdb +EXPORT_SYMBOL_GPL drivers/net/phy/bcm-phy-lib 0xfc176dcb __bcm_phy_write_rdb +EXPORT_SYMBOL_GPL drivers/net/phy/mdio-i2c 0x2b7eb2d3 mdio_i2c_alloc +EXPORT_SYMBOL_GPL drivers/net/phy/mdio-mux 0x6318757f mdio_mux_uninit +EXPORT_SYMBOL_GPL drivers/net/phy/mdio-mux 0xe8c05287 mdio_mux_init +EXPORT_SYMBOL_GPL drivers/net/phy/mdio-xpcs 0xb07fb29d mdio_xpcs_get_ops +EXPORT_SYMBOL_GPL drivers/net/phy/phylink 0x08213956 phylink_ethtool_get_wol +EXPORT_SYMBOL_GPL drivers/net/phy/phylink 0x1162b00e phylink_ethtool_ksettings_get +EXPORT_SYMBOL_GPL drivers/net/phy/phylink 0x12135396 phylink_mac_change +EXPORT_SYMBOL_GPL drivers/net/phy/phylink 0x15c4e3e2 phylink_ethtool_set_pauseparam +EXPORT_SYMBOL_GPL drivers/net/phy/phylink 0x2c8e28ee phylink_ethtool_get_eee +EXPORT_SYMBOL_GPL drivers/net/phy/phylink 0x38d5d310 phylink_connect_phy +EXPORT_SYMBOL_GPL drivers/net/phy/phylink 0x4fd8ebee phylink_mii_c45_pcs_get_state +EXPORT_SYMBOL_GPL drivers/net/phy/phylink 0x57727285 phylink_ethtool_set_eee +EXPORT_SYMBOL_GPL drivers/net/phy/phylink 0x5fb6b35f phylink_helper_basex_speed +EXPORT_SYMBOL_GPL drivers/net/phy/phylink 0x62104126 phylink_ethtool_set_wol +EXPORT_SYMBOL_GPL drivers/net/phy/phylink 0x651d9dfc phylink_mii_c22_pcs_set_advertisement +EXPORT_SYMBOL_GPL drivers/net/phy/phylink 0x6f4166c5 phylink_of_phy_connect +EXPORT_SYMBOL_GPL drivers/net/phy/phylink 0x6fa426d2 phylink_ethtool_nway_reset +EXPORT_SYMBOL_GPL drivers/net/phy/phylink 0x7c4ef972 phylink_mii_c22_pcs_get_state +EXPORT_SYMBOL_GPL drivers/net/phy/phylink 0x825c7340 phylink_get_eee_err +EXPORT_SYMBOL_GPL drivers/net/phy/phylink 0x86ff345f phylink_ethtool_ksettings_set +EXPORT_SYMBOL_GPL drivers/net/phy/phylink 0x8f880042 phylink_mii_c22_pcs_an_restart +EXPORT_SYMBOL_GPL drivers/net/phy/phylink 0x911fcd6c phylink_start +EXPORT_SYMBOL_GPL drivers/net/phy/phylink 0x983276da phylink_disconnect_phy +EXPORT_SYMBOL_GPL drivers/net/phy/phylink 0x9951eb3d phylink_create +EXPORT_SYMBOL_GPL drivers/net/phy/phylink 0xbadaeaed phylink_add_pcs +EXPORT_SYMBOL_GPL drivers/net/phy/phylink 0xc1d15a4c phylink_set_port_modes +EXPORT_SYMBOL_GPL drivers/net/phy/phylink 0xdcb0a2c0 phylink_stop +EXPORT_SYMBOL_GPL drivers/net/phy/phylink 0xde66f4a7 phylink_mii_ioctl +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 0xf8fe5642 phylink_ethtool_get_pauseparam +EXPORT_SYMBOL_GPL drivers/net/tap 0x161379d9 tap_get_ptr_ring +EXPORT_SYMBOL_GPL drivers/net/tap 0x1dec1ed2 tap_get_minor +EXPORT_SYMBOL_GPL drivers/net/tap 0x37d7ac57 tap_get_socket +EXPORT_SYMBOL_GPL drivers/net/tap 0x52526aa9 tap_handle_frame +EXPORT_SYMBOL_GPL drivers/net/tap 0x8d0a4ba1 tap_queue_resize +EXPORT_SYMBOL_GPL drivers/net/tap 0x9c8bee16 tap_create_cdev +EXPORT_SYMBOL_GPL drivers/net/tap 0xe48da259 tap_del_queues +EXPORT_SYMBOL_GPL drivers/net/tap 0xea4e3c11 tap_free_minor +EXPORT_SYMBOL_GPL drivers/net/tap 0xf99f0f60 tap_destroy_cdev +EXPORT_SYMBOL_GPL drivers/net/usb/cdc_ether 0x12f76e09 usbnet_cdc_bind +EXPORT_SYMBOL_GPL drivers/net/usb/cdc_ether 0x758b9216 usbnet_generic_cdc_bind +EXPORT_SYMBOL_GPL drivers/net/usb/cdc_ether 0x7a583d6f usbnet_cdc_unbind +EXPORT_SYMBOL_GPL drivers/net/usb/cdc_ether 0x9dfe1dfe usbnet_ether_cdc_bind +EXPORT_SYMBOL_GPL drivers/net/usb/cdc_ether 0xb44c2c6a usbnet_cdc_status +EXPORT_SYMBOL_GPL drivers/net/usb/cdc_ncm 0x1d8fbced cdc_ncm_fill_tx_frame +EXPORT_SYMBOL_GPL drivers/net/usb/cdc_ncm 0x2123798f cdc_ncm_bind_common +EXPORT_SYMBOL_GPL drivers/net/usb/cdc_ncm 0x3affc1df cdc_ncm_rx_fixup +EXPORT_SYMBOL_GPL drivers/net/usb/cdc_ncm 0x68d03941 cdc_ncm_rx_verify_nth16 +EXPORT_SYMBOL_GPL drivers/net/usb/cdc_ncm 0x8e54317e cdc_ncm_unbind +EXPORT_SYMBOL_GPL drivers/net/usb/cdc_ncm 0x947dc526 cdc_ncm_rx_verify_ndp32 +EXPORT_SYMBOL_GPL drivers/net/usb/cdc_ncm 0xc0bce205 cdc_ncm_tx_fixup +EXPORT_SYMBOL_GPL drivers/net/usb/cdc_ncm 0xcec42860 cdc_ncm_select_altsetting +EXPORT_SYMBOL_GPL drivers/net/usb/cdc_ncm 0xcfbb9f47 cdc_ncm_rx_verify_nth32 +EXPORT_SYMBOL_GPL drivers/net/usb/cdc_ncm 0xd0447b2d cdc_ncm_rx_verify_ndp16 +EXPORT_SYMBOL_GPL drivers/net/usb/cdc_ncm 0xdb207010 cdc_ncm_change_mtu +EXPORT_SYMBOL_GPL drivers/net/usb/rndis_host 0x0c40fd53 rndis_command +EXPORT_SYMBOL_GPL drivers/net/usb/rndis_host 0x14c5d179 rndis_status +EXPORT_SYMBOL_GPL drivers/net/usb/rndis_host 0x5f3d19c9 generic_rndis_bind +EXPORT_SYMBOL_GPL drivers/net/usb/rndis_host 0x65d17887 rndis_rx_fixup +EXPORT_SYMBOL_GPL drivers/net/usb/rndis_host 0xd9d390e2 rndis_tx_fixup +EXPORT_SYMBOL_GPL drivers/net/usb/rndis_host 0xdaa76ed6 rndis_unbind +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0x020c38a7 usbnet_start_xmit +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0x03337912 usbnet_read_cmd_nopm +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0x14e3afe7 usbnet_write_cmd_async +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0x2cb3a322 usbnet_open +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0x3660561d usbnet_pause_rx +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0x4a210a45 usbnet_stop +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0x4c555525 usbnet_disconnect +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0x5215c235 usbnet_resume +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0x589b0165 usbnet_write_cmd_nopm +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0x5fa88966 usbnet_defer_kevent +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0x6b8854f3 usbnet_purge_paused_rxq +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0x7c49d0e1 usbnet_get_link +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0x80aa347a usbnet_nway_reset +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0x85fd1f5d usbnet_change_mtu +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0x87a358b6 usbnet_unlink_rx_urbs +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0x87b0b49a usbnet_update_max_qlen +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0x92a84f1e usbnet_resume_rx +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0xa1ec2110 usbnet_get_ethernet_addr +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0xb5b7761b usbnet_read_cmd +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0xba5301d1 usbnet_status_start +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0xbb24af98 usbnet_status_stop +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0xd13f6838 usbnet_set_link_ksettings +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0xdd16b428 usbnet_get_endpoints +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0xded36f01 usbnet_suspend +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0xdf537dc8 usbnet_probe +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0xe2649342 usbnet_get_msglevel +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0xe95dd13d usbnet_tx_timeout +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0xea418160 usbnet_get_stats64 +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0xeb2645b9 usbnet_write_cmd +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0xeea75927 usbnet_skb_return +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0xf482a169 usbnet_get_link_ksettings +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0xfa7804a8 usbnet_set_msglevel +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0xfea9f5c8 usbnet_get_drvinfo +EXPORT_SYMBOL_GPL drivers/net/vxlan 0x2b5258c5 vxlan_fdb_replay +EXPORT_SYMBOL_GPL drivers/net/vxlan 0x7238ef9d vxlan_fdb_clear_offload +EXPORT_SYMBOL_GPL drivers/net/vxlan 0x944212ed vxlan_dev_create +EXPORT_SYMBOL_GPL drivers/net/vxlan 0xa5182172 vxlan_fdb_find_uc +EXPORT_SYMBOL_GPL drivers/net/wimax/i2400m/i2400m 0x01c7f828 i2400m_init +EXPORT_SYMBOL_GPL drivers/net/wimax/i2400m/i2400m 0x0bfeed72 i2400m_release +EXPORT_SYMBOL_GPL drivers/net/wimax/i2400m/i2400m 0x2e81a957 i2400m_is_boot_barker +EXPORT_SYMBOL_GPL drivers/net/wimax/i2400m/i2400m 0x47934313 i2400m_tx_msg_get +EXPORT_SYMBOL_GPL drivers/net/wimax/i2400m/i2400m 0x48f746a1 i2400m_reset +EXPORT_SYMBOL_GPL drivers/net/wimax/i2400m/i2400m 0x6165753a i2400m_setup +EXPORT_SYMBOL_GPL drivers/net/wimax/i2400m/i2400m 0x682e7878 i2400m_dev_reset_handle +EXPORT_SYMBOL_GPL drivers/net/wimax/i2400m/i2400m 0x6ece1b2d i2400m_error_recovery +EXPORT_SYMBOL_GPL drivers/net/wimax/i2400m/i2400m 0x9985e45a i2400m_cmd_enter_powersave +EXPORT_SYMBOL_GPL drivers/net/wimax/i2400m/i2400m 0xaa83d153 i2400m_tx_msg_sent +EXPORT_SYMBOL_GPL drivers/net/wimax/i2400m/i2400m 0xb00b793c i2400m_bm_cmd_prepare +EXPORT_SYMBOL_GPL drivers/net/wimax/i2400m/i2400m 0xb2b8bb93 i2400m_dev_bootstrap +EXPORT_SYMBOL_GPL drivers/net/wimax/i2400m/i2400m 0xbbd765b1 i2400m_netdev_setup +EXPORT_SYMBOL_GPL drivers/net/wimax/i2400m/i2400m 0xbe3a7ee7 i2400m_tx +EXPORT_SYMBOL_GPL drivers/net/wimax/i2400m/i2400m 0xc6d53aaa i2400m_pre_reset +EXPORT_SYMBOL_GPL drivers/net/wimax/i2400m/i2400m 0xdaf98121 i2400m_post_reset +EXPORT_SYMBOL_GPL drivers/net/wimax/i2400m/i2400m 0xe1e3398c i2400m_rx +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/ipw2x00/libipw 0xa2c2c4d4 libipw_rx_any +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x2a3a7d7b il_remove_station +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x362c9cc3 il_prep_station +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x672fefce _il_grab_nic_access +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x6a5cb748 il_mac_tx_last_beacon +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x781b1e63 il_dealloc_bcast_stations +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0x0189c36f iwl_wait_notification +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0x11e4ef9e iwl_fw_dbg_read_d3_debug_data +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0x15dfc96d iwl_read_prph +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0x16157b48 iwl_cmd_groups_verify_sorted +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0x16408130 iwl_poll_direct_bit +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0x1787e6e2 iwl_fw_lookup_notif_ver +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0x1815f865 iwl_read_eeprom +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0x18677fb9 iwl_write_direct32 +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0x1c48129a iwl_dump_desc_assert +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0x23203914 iwl_clear_bits_prph +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0x23e6add1 iwl_free_fw_paging +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0x25a6ef5b __iwl_info +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0x2a66d3bf iwl_trans_send_cmd +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0x2c0f571f iwl_init_notification_wait +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0x2c706ce5 iwl_get_nvm +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0x2e41017d iwl_fw_runtime_suspend +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0x33e24098 iwl_fw_error_print_fseq_regs +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0x35033c81 iwl_phy_db_free +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0x39145791 __iwl_crit +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0x3a900843 iwl_read_external_nvm +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0x3e84f29f iwl_fw_dbg_stop_sync +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0x4cec9c4f iwl_dbg_tlv_del_timers +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0x4f294b37 iwl_fw_runtime_init +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0x5032fac4 iwl_opmode_register +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0x50d9fd5a iwl_get_shared_mem_conf +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0x52279457 iwl_get_cmd_string +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0x54bcc45e __iwl_err +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0x5c52e109 iwl_opmode_deregister +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0x5dfb1213 iwl_fw_dbg_collect_desc +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0x5ef4a44d iwl_notification_wait +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0x6400577a iwl_set_bits_prph +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0x69124f7f iwl_write_prph64_no_grab +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0x70493e5c iwl_fw_dbg_error_collect +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0x7434fb4b iwl_fw_lookup_cmd_ver +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0x76ea1568 iwl_read_direct32 +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0x776221bf iwl_send_phy_db_data +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0x78061a0b iwl_write64 +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0x79e4cd73 iwl_dbg_tlv_time_point +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0x80d4a14c __iwl_dbg +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0x86a55c1f iwl_fw_dbg_collect +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0x93160e9e iwl_abort_notification_waits +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0x94e724fe iwl_set_soc_latency +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0x95566a31 iwl_write_direct64 +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0xa42c5ab7 iwl_init_paging +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0xa55a3d2d iwl_parse_nvm_data +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0xa72dc087 iwl_fw_dbg_collect_trig +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0xa9f05394 iwlwifi_mod_params +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0xaae2b4d7 iwl_fw_start_dbg_conf +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0xad44ca20 iwl_write8 +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0xae2671a7 iwl_fw_runtime_resume +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0xaf662ecc iwl_parse_nvm_mcc_info +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0xb1e39cb3 iwl_remove_notification +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0xb292809a iwl_set_bits_mask_prph +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0xc1dde534 iwl_read_prph_no_grab +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0xc7466d48 __iwl_warn +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0xca8b434f iwl_finish_nic_init +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0xce0c6460 iwl_phy_db_set_section +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0xce7ed86d iwl_read32 +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0xcedad0d4 iwl_fw_dbg_stop_restart_recording +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0xddc797b7 iwl_phy_db_init +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0xdec9e66d iwl_notification_wait_init +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0xe1f27e91 iwl_write_prph_no_grab +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0xe9e1a96d iwl_write_prph +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0xea1b26fc iwl_nvm_fixups +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0xebfb9060 iwl_poll_bit +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0xf5370f83 iwl_write32 +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0xf6c4ee7c iwl_force_nmi +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0xfbbe82c5 iwl_parse_eeprom_data +EXPORT_SYMBOL_GPL drivers/net/wireless/intersil/p54/p54common 0x1e2d2968 p54_free_skb +EXPORT_SYMBOL_GPL drivers/net/wireless/intersil/p54/p54common 0x1f265713 p54_register_common +EXPORT_SYMBOL_GPL drivers/net/wireless/intersil/p54/p54common 0x546da762 p54_init_common +EXPORT_SYMBOL_GPL drivers/net/wireless/intersil/p54/p54common 0x6fc13f90 p54_read_eeprom +EXPORT_SYMBOL_GPL drivers/net/wireless/intersil/p54/p54common 0xa93808b0 p54_unregister_common +EXPORT_SYMBOL_GPL drivers/net/wireless/intersil/p54/p54common 0xc0ee910c p54_free_common +EXPORT_SYMBOL_GPL drivers/net/wireless/intersil/p54/p54common 0xee528cec p54_rx +EXPORT_SYMBOL_GPL drivers/net/wireless/intersil/p54/p54common 0xf2fe9508 p54_parse_firmware +EXPORT_SYMBOL_GPL drivers/net/wireless/intersil/p54/p54common 0xf6ddbd0a p54_parse_eeprom +EXPORT_SYMBOL_GPL drivers/net/wireless/marvell/libertas/libertas 0x32e9348c lbs_suspend +EXPORT_SYMBOL_GPL drivers/net/wireless/marvell/libertas/libertas 0x42d4c366 lbs_queue_event +EXPORT_SYMBOL_GPL drivers/net/wireless/marvell/libertas/libertas 0x4554575f lbs_send_tx_feedback +EXPORT_SYMBOL_GPL drivers/net/wireless/marvell/libertas/libertas 0x55984666 lbs_notify_command_response +EXPORT_SYMBOL_GPL drivers/net/wireless/marvell/libertas/libertas 0x56dc1c3d lbs_host_to_card_done +EXPORT_SYMBOL_GPL drivers/net/wireless/marvell/libertas/libertas 0x58d06e66 lbs_stop_card +EXPORT_SYMBOL_GPL drivers/net/wireless/marvell/libertas/libertas 0x5fdf38b8 lbs_disablemesh +EXPORT_SYMBOL_GPL drivers/net/wireless/marvell/libertas/libertas 0x7deae2e3 lbs_cmd_copyback +EXPORT_SYMBOL_GPL drivers/net/wireless/marvell/libertas/libertas 0x91d18bff lbs_start_card +EXPORT_SYMBOL_GPL drivers/net/wireless/marvell/libertas/libertas 0xa09d87b3 lbs_get_firmware_async +EXPORT_SYMBOL_GPL drivers/net/wireless/marvell/libertas/libertas 0xa495a937 lbs_get_firmware +EXPORT_SYMBOL_GPL drivers/net/wireless/marvell/libertas/libertas 0xbe0cfbb1 __lbs_cmd +EXPORT_SYMBOL_GPL drivers/net/wireless/marvell/libertas/libertas 0xc32ffe45 lbs_resume +EXPORT_SYMBOL_GPL drivers/net/wireless/marvell/libertas/libertas 0xd11e783a lbs_add_card +EXPORT_SYMBOL_GPL drivers/net/wireless/marvell/libertas/libertas 0xd9a42e75 lbs_process_rxed_packet +EXPORT_SYMBOL_GPL drivers/net/wireless/marvell/libertas/libertas 0xdd42ac8b lbs_host_sleep_cfg +EXPORT_SYMBOL_GPL drivers/net/wireless/marvell/libertas/libertas 0xf606fe38 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 0x77af145d lbtf_cmd_copyback +EXPORT_SYMBOL_GPL drivers/net/wireless/marvell/libertas_tf/libertas_tf 0x793742dc lbtf_send_tx_feedback +EXPORT_SYMBOL_GPL drivers/net/wireless/marvell/libertas_tf/libertas_tf 0x908daf1a lbtf_rx +EXPORT_SYMBOL_GPL drivers/net/wireless/marvell/libertas_tf/libertas_tf 0x94209bcf __lbtf_cmd +EXPORT_SYMBOL_GPL drivers/net/wireless/marvell/libertas_tf/libertas_tf 0xa6a49579 lbtf_cmd_response_rx +EXPORT_SYMBOL_GPL drivers/net/wireless/marvell/libertas_tf/libertas_tf 0xc2b33933 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 0xd87528c0 lbtf_remove_card +EXPORT_SYMBOL_GPL drivers/net/wireless/marvell/libertas_tf/libertas_tf 0xe3316565 lbtf_add_card +EXPORT_SYMBOL_GPL drivers/net/wireless/marvell/mwifiex/mwifiex 0x025d6e0b mwifiex_disable_auto_ds +EXPORT_SYMBOL_GPL drivers/net/wireless/marvell/mwifiex/mwifiex 0x15974d3f mwifiex_init_shutdown_fw +EXPORT_SYMBOL_GPL drivers/net/wireless/marvell/mwifiex/mwifiex 0x1999ed42 mwifiex_queue_main_work +EXPORT_SYMBOL_GPL drivers/net/wireless/marvell/mwifiex/mwifiex 0x267130c1 mwifiex_shutdown_sw +EXPORT_SYMBOL_GPL drivers/net/wireless/marvell/mwifiex/mwifiex 0x3d13a155 mwifiex_del_virtual_intf +EXPORT_SYMBOL_GPL drivers/net/wireless/marvell/mwifiex/mwifiex 0x3e69cea7 mwifiex_main_process +EXPORT_SYMBOL_GPL drivers/net/wireless/marvell/mwifiex/mwifiex 0x3e8d991e mwifiex_process_sleep_confirm_resp +EXPORT_SYMBOL_GPL drivers/net/wireless/marvell/mwifiex/mwifiex 0x4af43795 mwifiex_multi_chan_resync +EXPORT_SYMBOL_GPL drivers/net/wireless/marvell/mwifiex/mwifiex 0x5c5d2fc3 mwifiex_write_data_complete +EXPORT_SYMBOL_GPL drivers/net/wireless/marvell/mwifiex/mwifiex 0x5c6a275e mwifiex_dnld_fw +EXPORT_SYMBOL_GPL drivers/net/wireless/marvell/mwifiex/mwifiex 0x6f5a6c9f mwifiex_add_card +EXPORT_SYMBOL_GPL drivers/net/wireless/marvell/mwifiex/mwifiex 0x71a6d1fe mwifiex_enable_hs +EXPORT_SYMBOL_GPL drivers/net/wireless/marvell/mwifiex/mwifiex 0x77d8ad96 mwifiex_remove_card +EXPORT_SYMBOL_GPL drivers/net/wireless/marvell/mwifiex/mwifiex 0x7e0cdf75 mwifiex_cancel_hs +EXPORT_SYMBOL_GPL drivers/net/wireless/marvell/mwifiex/mwifiex 0x7e10236f mwifiex_handle_rx_packet +EXPORT_SYMBOL_GPL drivers/net/wireless/marvell/mwifiex/mwifiex 0x83c7428c _mwifiex_dbg +EXPORT_SYMBOL_GPL drivers/net/wireless/marvell/mwifiex/mwifiex 0x8e9d6490 mwifiex_prepare_fw_dump_info +EXPORT_SYMBOL_GPL drivers/net/wireless/marvell/mwifiex/mwifiex 0x93b75247 mwifiex_fw_dump_event +EXPORT_SYMBOL_GPL drivers/net/wireless/marvell/mwifiex/mwifiex 0xa017c08d mwifiex_drv_info_dump +EXPORT_SYMBOL_GPL drivers/net/wireless/marvell/mwifiex/mwifiex 0xb5924c7a mwifiex_process_hs_config +EXPORT_SYMBOL_GPL drivers/net/wireless/marvell/mwifiex/mwifiex 0xd4dad9f3 mwifiex_alloc_dma_align_buf +EXPORT_SYMBOL_GPL drivers/net/wireless/marvell/mwifiex/mwifiex 0xdd54f513 mwifiex_deauthenticate_all +EXPORT_SYMBOL_GPL drivers/net/wireless/marvell/mwifiex/mwifiex 0xf019c79b mwifiex_add_virtual_intf +EXPORT_SYMBOL_GPL drivers/net/wireless/marvell/mwifiex/mwifiex 0xf951e8eb mwifiex_upload_device_dump +EXPORT_SYMBOL_GPL drivers/net/wireless/marvell/mwifiex/mwifiex 0xfd17c3db mwifiex_reinit_sw +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0x024660ae mt76_insert_ccmp_hdr +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0x09311bca mt76_mcu_rx_event +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0x0dd1bc47 mt76_register_debugfs +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0x11e525d8 mt76_set_stream_caps +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0x14bca94a mt76_rx +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0x1f043add mt76_tx_status_lock +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0x20661992 mt76_tx_complete_skb +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0x2079466f mt76_get_txpower +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0x2c2c85c0 mt76_rx_aggr_stop +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0x2e1e7b6b mt76_txq_schedule_all +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0x3cdb1021 mt76_put_txwi +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0x40df9bbe mt76_sta_state +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0x440ff571 mt76_eeprom_init +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0x480ed625 mt76_mmio_init +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0x49ebe957 mt76_tx_status_skb_done +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0x4f734355 mt76_mcu_get_response +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0x53d67da1 mt76_rx_poll_complete +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0x5436fcb0 mt76_mcu_msg_alloc +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0x5437eda2 mt76_sw_scan +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0x5c098b4d mt76_pci_disable_aspm +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0x5d97b7a3 mt76_sw_scan_complete +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0x601d5b6e __mt76_poll +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0x67fb66b8 mt76_tx_status_check +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0x68c098a6 mt76_txq_remove +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0x698f017f mt76_free_device +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0x6a037dbd mt76_txq_schedule +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0x6fa18d82 __mt76_sta_remove +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0x70301b54 mt76_has_tx_pending +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0x7121f7a9 mt76_unregister_device +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0x750bb975 mt76_csa_check +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0x75a5a6e8 __mt76_poll_msec +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0x75e343e0 mt76_stop_tx_queues +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0x79e98748 mt76_seq_puts_array +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0x7e60365d mt76_register_device +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0x7e9162f5 mt76_sta_pre_rcu_remove +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0x8172c6d5 mt76_txq_init +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0x8580af91 mt76_dma_attach +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0x887367da __tracepoint_dev_irq +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0x8a744eee mt76_tx_status_skb_add +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0x8af08988 mt76_set_tim +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0x9a22d945 mt76_tx +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0x9ac9ac0c mt76_get_antenna +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0x9e219a46 mt76_rx_aggr_start +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0xa356e934 mt76_queues_read +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0xa556faaa __tracepoint_mac_txdone +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0xaf1e816c mt76_eeprom_override +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0xb235fb50 mt76_update_survey +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0xb58ac8ad mt76_set_channel +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0xbd4ddeb5 mt76_set_irq_mask +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0xbddaa2ec mt76_csa_finish +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0xc0b200a0 mt76_register_phy +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0xc3262956 mt76_tx_status_unlock +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0xc3edc643 mt76_get_min_avg_rssi +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0xc6634315 mt76_ac_to_hwq +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0xc7183631 mt76_tx_status_skb_get +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0xce1aef04 mt76_release_buffered_frames +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0xd05e12fe mt76_get_survey +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0xd765b573 mt76_alloc_phy +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0xdb3d363d mt76_unregister_phy +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0xe392a98e mt76_get_rate +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0xe40b66ef mt76_wcid_alloc +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0xe4a30bbf mt76_alloc_device +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0xe6585280 mt76_dma_cleanup +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0xfe5e42a6 mt76_wake_tx_queue +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76-usb 0x14b7903c mt76u_resume_rx +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76-usb 0x366ba8f3 mt76u_stop_rx +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76-usb 0x43dcf2cc mt76u_skb_dma_info +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76-usb 0x5fbdb98a mt76u_vendor_request +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76-usb 0x604ee09b mt76u_alloc_mcu_queue +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76-usb 0x688c91df mt76u_init +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76-usb 0xbc5c73b2 mt76u_stop_tx +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76-usb 0xd79d25a6 mt76u_single_wr +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76-usb 0xe11fd9e7 mt76u_alloc_queues +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76-usb 0xe658f6be mt76u_queues_deinit +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76-usb 0xf5984189 mt76u_deinit +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt7615/mt7615-common 0x057c4d49 mt7615_rates +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt7615/mt7615-common 0x0ccf0393 mt7615_firmware_own +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt7615/mt7615-common 0x121f5b59 mt7615_phy_init +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt7615/mt7615-common 0x12a20525 mt7615_mac_sta_remove +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt7615/mt7615-common 0x24677e91 mt7615_mcu_del_wtbl_all +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt7615/mt7615-common 0x36041cd1 mt7615_init_debugfs +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt7615/mt7615-common 0x39c756cf mt7615_update_channel +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt7615/mt7615-common 0x3c5afa3f mt7615_mac_init +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt7615/mt7615-common 0x40cb946c mt7615_init_txpower +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt7615/mt7615-common 0x4e8e8fea mt7615_init_device +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt7615/mt7615-common 0x50488dc2 mt7615_mcu_exit +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt7615/mt7615-common 0x5563426b mt7615_ops +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt7615/mt7615-common 0x66075d6c mt7615_mcu_init +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt7615/mt7615-common 0x70e8b27e mt7615_unregister_ext_phy +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt7615/mt7615-common 0x710a4a41 mt7615_mac_write_txwi +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt7615/mt7615-common 0x7eb34371 mt7615_mac_wtbl_update_key +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt7615/mt7615-common 0x7ffc4366 mt7615_mac_sta_poll +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt7615/mt7615-common 0x8323cd0a __mt7663_load_firmware +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt7615/mt7615-common 0x90191658 mt7615_txp_skb_unmap +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt7615/mt7615-common 0x9adbda68 mt7615_mac_wtbl_update_cipher +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt7615/mt7615-common 0x9f9dfc3d mt7615_queue_rx_skb +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt7615/mt7615-common 0xa0abac25 mt7615_mcu_fill_msg +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt7615/mt7615-common 0xa6b79b63 mt7615_mac_sta_add +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt7615/mt7615-common 0xaa76857f mt7615_wait_for_mcu_init +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt7615/mt7615-common 0xb4f63711 mt7615_mcu_wait_response +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt7615/mt7615-common 0xc191f406 mt7615_eeprom_init +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt7615/mt7615-common 0xc344c452 mt7615_mcu_msg_send +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt7615/mt7615-common 0xc6810589 mt7615_mac_wtbl_update_pk +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt7615/mt7615-common 0xc7189d3d mt7615_register_ext_phy +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt7615/mt7615-common 0xca3344bb mt7615_mac_set_rates +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt7615/mt7615-common 0xcd03586e mt7615_dma_reset +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt7615/mt7615-common 0xcf4e1f82 mt7615_mcu_restart +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt7615/mt7615-common 0xd302665e mt7615_check_offload_capability +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt7615/mt7615-common 0xd8d385a8 mt7615_sta_ps +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt7615/mt7615-common 0xdb82d126 mt7615_mcu_set_hif_suspend +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt7615/mt7615-common 0xe2f2abbe mt7615_driver_own +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt7615/mt7615-common 0xffdb9f8a mt7615_mcu_set_eeprom +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x0/mt76x0-common 0x0334b4bc mt76x0_init_hardware +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x0/mt76x0-common 0x6dca7fe3 mt76x0_chip_onoff +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x0/mt76x0-common 0x8d4837ca mt76x0_mac_stop +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x0/mt76x0-common 0xa7548c33 mt76x0_phy_calibrate +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x0/mt76x0-common 0xb3c09713 mt76x0_register_device +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x0/mt76x0-common 0xea593290 mt76x0_config +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0x0462ce68 mt76x02_add_rate_power_offset +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0x0477a205 mt76x02_tx_status_data +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0x098e54bb mt76x02_queue_rx_skb +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0x0d4023ec mt76x02_get_max_rate_power +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0x11331e65 mt76x02_mac_setaddr +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0x133af24e mt76x02_configure_filter +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0x18ec2b49 mt76x02_mcu_calibrate +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0x194913d9 mt76x02_sw_scan_complete +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0x1fd28a75 mt76x02_mac_set_beacon +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0x2156eeb0 mt76x02_reconfig_complete +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0x267a6b59 mt76x02_rx_poll_complete +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0x27fc4456 mt76x02_sta_remove +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0x2878b597 mt76x02_phy_set_bw +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0x28b09545 mt76x02_mcu_set_radio_state +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0x2bc2e192 mt76x02_eeprom_parse_hw_cap +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0x30b16d68 mt76x02_update_beacon_iter +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0x35d2834d mt76x02_limit_rate_power +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0x402e9902 mt76x02_eeprom_copy +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0x4263e535 mt76x02_enqueue_buffered_bc +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0x439d85f4 mt76x02_phy_set_rxpath +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0x462e3e0c mt76x02_set_key +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0x4820ff2a mt76x02_init_device +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0x4ac407c4 mt76x02_phy_set_txpower +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0x4af8a31c mt76x02_bss_info_changed +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0x4c2e1bfc mt76x02_init_agc_gain +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0x4c700915 mt76x02_phy_set_txdac +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0x4e7b9d1d mt76x02_mcu_cleanup +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0x50173ccb mt76x02_tx_set_txpwr_auto +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0x54091081 mt76x02_mac_reset_counters +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0x56f358a4 mt76x02_sta_ps +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0x5a475b8a mt76x02_mcu_function_select +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0x5bd84fd5 mt76x02_rates +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0x5ef329ed mt76x02_set_tx_ackto +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0x6279eec3 mt76x02_phy_set_band +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0x672b48a0 mt76x02_dma_cleanup +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0x6eb31a0c mt76x02_init_beacon_config +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0x75aab030 mt76x02_set_ethtool_fwver +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0x782ff6b4 mt76x02_sta_add +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0x7831cd69 mt76x02_conf_tx +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0x7a4c1d9a mt76x02_get_rx_gain +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0x7fa128ba mt76x02_remove_interface +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0x8016dcf6 mt76x02_ext_pa_enabled +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0x84c17368 mt76x02_set_rts_threshold +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0x86d72080 mt76x02_mac_shared_key_setup +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0x8f4496bf mt76x02_tx_prepare_skb +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0x90590bb1 mt76x02_mac_wcid_setup +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0x91d5b9ee mt76x02_irq_handler +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0x9b247796 mt76x02_tx +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0xa18dfb3a mt76x02_edcca_init +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0xa4674ef2 mt76x02_mac_start +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0xb105607b mt76x02_config_mac_addr_list +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0xbdd0e997 mt76x02_set_coverage_class +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0xc12de294 mt76x02_get_lna_gain +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0xc15386c2 mt76x02_add_interface +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0xce156c7b mt76x02_phy_adjust_vga_gain +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0xcecd0351 mt76x02_get_efuse_data +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0xd58584f8 mt76x02_dma_init +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0xd81227e9 mt76x02_resync_beacon_timer +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0xda9fe30c mt76x02_update_channel +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0xdbfbfe33 mt76x02_tx_complete_skb +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0xdcb3811f mt76x02_phy_dfs_adjust_agc +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0xdeaeb6bd mt76x02_mac_cc_reset +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0xded7ef32 mt76x02_remove_hdr_pad +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0xdf336c8b mt76x02_init_debugfs +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0xe550c4bb mt76x02_mac_write_txwi +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0xe987267d mt76x02_mcu_msg_send +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0xec6b2d93 mt76x02_dma_disable +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0xed69c071 mt76x02_dfs_init_params +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0xee9b7c3b mt76x02_sta_rate_tbl_update +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0xf309cee0 mt76x02_ampdu_action +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0xfcbc04aa mt76x02e_init_beacon_config +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-usb 0x1a5a78f6 mt76x02u_mcu_fw_reset +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-usb 0x1e2cbd30 mt76x02u_mcu_fw_send_data +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-usb 0x2bdcb7c1 mt76x02u_tx_complete_skb +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-usb 0x52de027a mt76x02u_exit_beacon_config +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-usb 0x62419b1e mt76x02u_init_mcu +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-usb 0x87c1a5a4 mt76x02u_tx_prepare_skb +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-usb 0xa925f68a mt76x02u_mac_start +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-usb 0xcf60d49b mt76x02u_init_beacon_config +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x2/mt76x2-common 0x064b9168 mt76x2_mcu_init_gain +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x2/mt76x2-common 0x2154c3e7 mt76x2_mcu_load_cr +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x2/mt76x2-common 0x35daea01 mt76x2_mac_stop +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x2/mt76x2-common 0x376a001f mt76x2_phy_update_channel_gain +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x2/mt76x2-common 0x44236877 mt76x2_apply_gain_adj +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x2/mt76x2-common 0x5be796ee mt76_write_mac_initvals +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x2/mt76x2-common 0x637ffc87 mt76x2_phy_set_txpower +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x2/mt76x2-common 0x66cdc051 mt76x2_phy_set_txpower_regs +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x2/mt76x2-common 0x7a2cb36f mt76x2_phy_tssi_compensate +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x2/mt76x2-common 0x8da14030 mt76x2_mcu_tssi_comp +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x2/mt76x2-common 0x8e2fe5ac mt76x2_get_rate_power +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x2/mt76x2-common 0x9207d70a mt76x2_get_temp_comp +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x2/mt76x2-common 0xa4e5a08d mt76x2_init_txpower +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x2/mt76x2-common 0xa8350c2f mt76x2_read_rx_gain +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x2/mt76x2-common 0xb416f363 mt76x2_configure_tx_delay +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x2/mt76x2-common 0xbedbf443 mt76x2_eeprom_init +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x2/mt76x2-common 0xe0a1f965 mt76x2_mcu_set_channel +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x2/mt76x2-common 0xf17fbfd9 mt76x2_reset_wlan +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x2/mt76x2-common 0xfa9292dd mt76x2_get_power_info +EXPORT_SYMBOL_GPL drivers/net/wireless/quantenna/qtnfmac/qtnfmac 0x31fab83c qtnf_chipid_to_string +EXPORT_SYMBOL_GPL drivers/net/wireless/quantenna/qtnfmac/qtnfmac 0x428a5d00 qtnf_wake_all_queues +EXPORT_SYMBOL_GPL drivers/net/wireless/quantenna/qtnfmac/qtnfmac 0x436878e0 qtnf_trans_handle_rx_ctl_packet +EXPORT_SYMBOL_GPL drivers/net/wireless/quantenna/qtnfmac/qtnfmac 0x50d36355 qtnf_update_rx_stats +EXPORT_SYMBOL_GPL drivers/net/wireless/quantenna/qtnfmac/qtnfmac 0x5463bcb1 qtnf_classify_skb +EXPORT_SYMBOL_GPL drivers/net/wireless/quantenna/qtnfmac/qtnfmac 0x9753ce0d qtnf_core_attach +EXPORT_SYMBOL_GPL drivers/net/wireless/quantenna/qtnfmac/qtnfmac 0xb8f4804c qtnf_update_tx_stats +EXPORT_SYMBOL_GPL drivers/net/wireless/quantenna/qtnfmac/qtnfmac 0xf7382d4d qtnf_core_detach +EXPORT_SYMBOL_GPL drivers/net/wireless/quantenna/qtnfmac/qtnfmac 0xfec08b7f qtnf_get_debugfs_dir +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2800lib 0x08a8f624 rt2800_get_key_seq +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2800lib 0x3696feda rt2800_set_rts_threshold +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2800lib 0x37e5825a rt2800_config_erp +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2800lib 0x4c502b30 rt2800_rfkill_poll +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2800lib 0x4c8ed651 rt2800_conf_tx +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2800lib 0x514c4c7e rt2800_efuse_detect +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2800lib 0x51572845 rt2800_load_firmware +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2800lib 0x5b7528be rt2800_config_shared_key +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2800lib 0x5de41274 rt2800_get_survey +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2800lib 0x615780d8 rt2800_config +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2800lib 0x63b4c4d4 rt2800_link_tuner +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2800lib 0x65beae1a rt2800_pre_reset_hw +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2800lib 0x6642d55d rt2800_write_tx_data +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2800lib 0x69d1fab7 rt2800_mcu_request +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2800lib 0x6ee749a5 rt2800_sta_remove +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2800lib 0x722df693 rt2800_enable_radio +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2800lib 0x850f6166 rt2800_config_ant +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2800lib 0x851892e4 rt2800_txstatus_pending +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2800lib 0x8ef647d6 rt2800_get_tsf +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2800lib 0x92d28493 rt2800_sta_add +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2800lib 0x962ff491 rt2800_read_eeprom_efuse +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2800lib 0x9cd5f479 rt2800_disable_wpdma +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2800lib 0x9d90c2bd rt2800_config_intf +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2800lib 0xa054c71a rt2800_config_pairwise_key +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2800lib 0xad8142b4 rt2800_check_firmware +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2800lib 0xae485105 rt2800_disable_radio +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2800lib 0xb6467ac7 rt2800_ampdu_action +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2800lib 0xb8b47784 rt2800_process_rxwi +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2800lib 0xbd07bd9f rt2800_probe_hw +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2800lib 0xbe828707 rt2800_get_txwi_rxwi_size +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2800lib 0xc1f41348 rt2800_txdone_entry +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2800lib 0xc4668045 rt2800_gain_calibration +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2800lib 0xc54ccbec rt2800_reset_tuner +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2800lib 0xcb679bc0 rt2800_link_stats +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2800lib 0xd03a0dd0 rt2800_wait_csr_ready +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2800lib 0xd708398d rt2800_watchdog +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2800lib 0xda65d02f rt2800_txstatus_timeout +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2800lib 0xdbb6aaa5 rt2800_wait_wpdma_ready +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2800lib 0xe96529ab rt2800_txdone_nostatus +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2800lib 0xf026648e rt2800_clear_beacon +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2800lib 0xf0573bfa rt2800_config_filter +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2800lib 0xf7c2e0cc rt2800_txdone +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2800lib 0xf88c2310 rt2800_write_beacon +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2800lib 0xff722d5f rt2800_vco_calibration +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2800mmio 0x070554e8 rt2800mmio_queue_init +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2800mmio 0x0fad1430 rt2800mmio_pretbtt_tasklet +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2800mmio 0x16e49cc3 rt2800mmio_start_queue +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2800mmio 0x1ffcaf5e rt2800mmio_kick_queue +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2800mmio 0x23ac2433 rt2800mmio_stop_queue +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2800mmio 0x2505789d rt2800mmio_tbtt_tasklet +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2800mmio 0x2ac0902f rt2800mmio_flush_queue +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2800mmio 0x39bff6c5 rt2800mmio_write_tx_desc +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2800mmio 0x3bd04234 rt2800mmio_clear_entry +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2800mmio 0x4ffaca3a rt2800mmio_probe_hw +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2800mmio 0x5fa4db64 rt2800mmio_interrupt +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2800mmio 0x632f8822 rt2800mmio_fill_rxdone +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2800mmio 0x6d67e555 rt2800mmio_get_dma_done +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2800mmio 0x92c0bcd1 rt2800mmio_rxdone_tasklet +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2800mmio 0xab876db1 rt2800mmio_enable_radio +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2800mmio 0xb74561c2 rt2800mmio_toggle_irq +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2800mmio 0xb7e3808b rt2800mmio_get_entry_state +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2800mmio 0xc5e97cd2 rt2800mmio_get_txwi +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2800mmio 0xc6a1455e rt2800mmio_autowake_tasklet +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2800mmio 0xd641943d rt2800mmio_init_registers +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2800mmio 0xdcc4ecb7 rt2800mmio_init_queues +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2800mmio 0xe28f94c7 rt2800mmio_txstatus_tasklet +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00lib 0x03371c1e rt2x00mac_get_antenna +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00lib 0x0a5ee0d7 rt2x00queue_pause_queue +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00lib 0x0ac70587 rt2x00mac_get_stats +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00lib 0x11846247 rt2x00queue_stop_queues +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00lib 0x1746e4d8 rt2x00mac_flush +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00lib 0x2a809eda rt2x00mac_rfkill_poll +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00lib 0x30ce1529 rt2x00lib_rxdone +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00lib 0x330573f3 rt2x00mac_add_interface +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00lib 0x5271931f rt2x00queue_map_txskb +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00lib 0x52cafbe9 rt2x00lib_dmadone +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00lib 0x535198cd rt2x00queue_get_entry +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00lib 0x58b75d09 rt2x00mac_get_ringparam +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00lib 0x638a5087 rt2x00queue_start_queues +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00lib 0x68939712 rt2x00mac_set_key +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00lib 0x6bfd4532 rt2x00lib_txdone_nomatch +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00lib 0x6d2a1256 rt2x00mac_configure_filter +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00lib 0x6f0b7a91 rt2x00mac_sw_scan_start +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00lib 0x752f72e6 rt2x00mac_start +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00lib 0x7881ccfb rt2x00mac_stop +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00lib 0x7a499e66 rt2x00lib_resume +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00lib 0x7c90265c rt2x00lib_txdone_noinfo +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00lib 0x80c12c7a rt2x00queue_flush_queues +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00lib 0x80ee3a75 rt2x00mac_config +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00lib 0x8821b6a4 rt2x00lib_beacondone +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00lib 0x88adc4d7 rt2x00mac_reconfig_complete +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00lib 0x93b93cf2 rt2x00queue_unpause_queue +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00lib 0x99554d52 rt2x00queue_flush_queue +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00lib 0x9d7ba9c7 rt2x00lib_get_bssidx +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00lib 0xa01ba3ab rt2x00lib_suspend +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00lib 0xa11635ff rt2x00mac_set_antenna +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00lib 0xa5a27c84 rt2x00lib_dmastart +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00lib 0xa669feab rt2x00mac_remove_interface +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00lib 0xa9cbf98a rt2x00lib_set_mac_address +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00lib 0xb2d9f614 rt2x00lib_txdone +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00lib 0xb863d41d rt2x00mac_conf_tx +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00lib 0xc081c5c8 rt2x00mac_sw_scan_complete +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00lib 0xca26d406 rt2x00lib_remove_dev +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00lib 0xcdb7ff36 rt2x00mac_tx_frames_pending +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00lib 0xd1d21743 rt2x00queue_unmap_skb +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00lib 0xd8970ce0 rt2x00mac_tx +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00lib 0xe33c55a6 rt2x00lib_probe_dev +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00lib 0xe3c83568 rt2x00queue_stop_queue +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00lib 0xea9d70ae rt2x00queue_start_queue +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00lib 0xf41bdb0d rt2x00mac_set_tim +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00lib 0xfcc3642d rt2x00queue_for_each_entry +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00lib 0xfeb82438 rt2x00mac_bss_info_changed +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00lib 0xfffd8802 rt2x00lib_pretbtt +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00mmio 0x76f57a61 rt2x00mmio_flush_queue +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00mmio 0xb76f7412 rt2x00mmio_initialize +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00mmio 0xe687dee4 rt2x00mmio_rxdone +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00mmio 0xecb1309b rt2x00mmio_uninitialize +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00mmio 0xedd781d5 rt2x00mmio_regbusy_read +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00pci 0x2909af87 rt2x00pci_probe +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00pci 0x7a5e907c rt2x00pci_remove +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00pci 0x7d1a164f rt2x00pci_resume +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00pci 0xc9142211 rt2x00pci_suspend +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00usb 0x0868957c rt2x00usb_resume +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00usb 0x2447f914 rt2x00usb_vendor_request +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00usb 0x394a087a rt2x00usb_kick_queue +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00usb 0x4e80bc3e rt2x00usb_regbusy_read +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00usb 0x56d8d576 rt2x00usb_watchdog +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00usb 0x57e23baf rt2x00usb_flush_queue +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00usb 0x6e274b8d rt2x00usb_uninitialize +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00usb 0x828ab36f rt2x00usb_clear_entry +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00usb 0x838cf69f rt2x00usb_vendor_req_buff_lock +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00usb 0xa21452f3 rt2x00usb_disable_radio +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00usb 0xb219b6ba rt2x00usb_suspend +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00usb 0xba667fa3 rt2x00usb_probe +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00usb 0xcc3363d9 rt2x00usb_initialize +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00usb 0xd375d1e7 rt2x00usb_disconnect +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00usb 0xded362cf rt2x00usb_vendor_request_buff +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00usb 0xf6feed98 rt2x00usb_register_read_async +EXPORT_SYMBOL_GPL drivers/net/wireless/realtek/rtlwifi/rtl8192c/rtl8192c-common 0x02f48c0a dm_savepowerindex +EXPORT_SYMBOL_GPL drivers/net/wireless/realtek/rtlwifi/rtl8192c/rtl8192c-common 0x203772ee dm_writepowerindex +EXPORT_SYMBOL_GPL drivers/net/wireless/realtek/rtlwifi/rtl8192c/rtl8192c-common 0xfb97c2c1 dm_restorepowerindex +EXPORT_SYMBOL_GPL drivers/net/wireless/realtek/rtlwifi/rtl8192c/rtl8192c-common 0xfdc0032d rtl92c_set_p2p_ps_offload_cmd +EXPORT_SYMBOL_GPL drivers/net/wireless/realtek/rtlwifi/rtl8723com/rtl8723-common 0x0aa3f69f rtl8723_phy_path_a_fill_iqk_matrix +EXPORT_SYMBOL_GPL drivers/net/wireless/realtek/rtlwifi/rtl8723com/rtl8723-common 0x14033ca7 rtl8723_phy_init_bb_rf_reg_def +EXPORT_SYMBOL_GPL drivers/net/wireless/realtek/rtlwifi/rtl8723com/rtl8723-common 0x15905c68 rtl8723ae_firmware_selfreset +EXPORT_SYMBOL_GPL drivers/net/wireless/realtek/rtlwifi/rtl8723com/rtl8723-common 0x265d2698 rtl8723_phy_rf_serial_write +EXPORT_SYMBOL_GPL drivers/net/wireless/realtek/rtlwifi/rtl8723com/rtl8723-common 0x2c5dec94 rtl8723_enable_fw_download +EXPORT_SYMBOL_GPL drivers/net/wireless/realtek/rtlwifi/rtl8723com/rtl8723-common 0x2ec2dba2 rtl8723_phy_pi_mode_switch +EXPORT_SYMBOL_GPL drivers/net/wireless/realtek/rtlwifi/rtl8723com/rtl8723-common 0x3303d170 rtl8723_download_fw +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 0x5ee1090e rtl8723_phy_path_adda_on +EXPORT_SYMBOL_GPL drivers/net/wireless/realtek/rtlwifi/rtl8723com/rtl8723-common 0x6bf5ea86 rtl8723_phy_reload_adda_registers +EXPORT_SYMBOL_GPL drivers/net/wireless/realtek/rtlwifi/rtl8723com/rtl8723-common 0x77679b58 rtl8723_fw_free_to_go +EXPORT_SYMBOL_GPL drivers/net/wireless/realtek/rtlwifi/rtl8723com/rtl8723-common 0x8466435a rtl8723_write_fw +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 0x95561295 rtl8723_cmd_send_packet +EXPORT_SYMBOL_GPL drivers/net/wireless/realtek/rtlwifi/rtl8723com/rtl8723-common 0xa21b58fa rtl8723_dm_init_dynamic_txpower +EXPORT_SYMBOL_GPL drivers/net/wireless/realtek/rtlwifi/rtl8723com/rtl8723-common 0xa38722f0 rtl8723_dm_init_edca_turbo +EXPORT_SYMBOL_GPL drivers/net/wireless/realtek/rtlwifi/rtl8723com/rtl8723-common 0xab3cd995 rtl8723_phy_query_bb_reg +EXPORT_SYMBOL_GPL drivers/net/wireless/realtek/rtlwifi/rtl8723com/rtl8723-common 0xb31218c4 rtl8723_phy_set_bb_reg +EXPORT_SYMBOL_GPL drivers/net/wireless/realtek/rtlwifi/rtl8723com/rtl8723-common 0xc5c72046 rtl8723_phy_path_a_standby +EXPORT_SYMBOL_GPL drivers/net/wireless/realtek/rtlwifi/rtl8723com/rtl8723-common 0xc9ccd3ae rtl8723_phy_reload_mac_registers +EXPORT_SYMBOL_GPL drivers/net/wireless/realtek/rtlwifi/rtl8723com/rtl8723-common 0xd83dc7aa rtl8723_phy_save_mac_registers +EXPORT_SYMBOL_GPL drivers/net/wireless/realtek/rtlwifi/rtl8723com/rtl8723-common 0xdfdb10ed rtl8723_dm_init_dynamic_bb_powersaving +EXPORT_SYMBOL_GPL drivers/net/wireless/realtek/rtlwifi/rtl8723com/rtl8723-common 0xe727b835 rtl8723_phy_txpwr_idx_to_dbm +EXPORT_SYMBOL_GPL drivers/net/wireless/realtek/rtlwifi/rtl8723com/rtl8723-common 0xe8fe71d5 rtl8723_phy_rf_serial_read +EXPORT_SYMBOL_GPL drivers/net/wireless/realtek/rtlwifi/rtl8723com/rtl8723-common 0xf206ac36 rtl8723_save_adda_registers +EXPORT_SYMBOL_GPL drivers/net/wireless/realtek/rtlwifi/rtl8723com/rtl8723-common 0xf2fca31c rtl8723_phy_mac_setting_calibration +EXPORT_SYMBOL_GPL drivers/net/wireless/realtek/rtlwifi/rtl8723com/rtl8723-common 0xfe5e2a59 rtl8723be_firmware_selfreset +EXPORT_SYMBOL_GPL drivers/net/wireless/realtek/rtlwifi/rtlwifi 0x0bb44f32 rtl_deinit_core +EXPORT_SYMBOL_GPL drivers/net/wireless/realtek/rtlwifi/rtlwifi 0x0d28dae6 rtl_lps_leave +EXPORT_SYMBOL_GPL drivers/net/wireless/realtek/rtlwifi/rtlwifi 0x0db12d24 rtl_ips_nic_on +EXPORT_SYMBOL_GPL drivers/net/wireless/realtek/rtlwifi/rtlwifi 0x127670c7 rtl_action_proc +EXPORT_SYMBOL_GPL drivers/net/wireless/realtek/rtlwifi/rtlwifi 0x2921a4d4 rtl_btc_status_false +EXPORT_SYMBOL_GPL drivers/net/wireless/realtek/rtlwifi/rtlwifi 0x2bb061c8 rtl_ops +EXPORT_SYMBOL_GPL drivers/net/wireless/realtek/rtlwifi/rtlwifi 0x2e5382f9 rtl_fill_dummy +EXPORT_SYMBOL_GPL drivers/net/wireless/realtek/rtlwifi/rtlwifi 0x32f0320e rtl_get_hal_edca_param +EXPORT_SYMBOL_GPL drivers/net/wireless/realtek/rtlwifi/rtlwifi 0x37b993b4 rtl_global_var +EXPORT_SYMBOL_GPL drivers/net/wireless/realtek/rtlwifi/rtlwifi 0x4dcb6d73 rtl_deinit_rfkill +EXPORT_SYMBOL_GPL drivers/net/wireless/realtek/rtlwifi/rtlwifi 0x51d01ae2 rtl_fw_page_write +EXPORT_SYMBOL_GPL drivers/net/wireless/realtek/rtlwifi/rtlwifi 0x5b8bc983 rtl_tx_mgmt_proc +EXPORT_SYMBOL_GPL drivers/net/wireless/realtek/rtlwifi/rtlwifi 0x618b0634 rtl_deinit_deferred_work +EXPORT_SYMBOL_GPL drivers/net/wireless/realtek/rtlwifi/rtlwifi 0x64f53406 rtl_tx_ackqueue +EXPORT_SYMBOL_GPL drivers/net/wireless/realtek/rtlwifi/rtlwifi 0x6beed42a rtl_beacon_statistic +EXPORT_SYMBOL_GPL drivers/net/wireless/realtek/rtlwifi/rtlwifi 0x723c64b3 rtl_recognize_peer +EXPORT_SYMBOL_GPL drivers/net/wireless/realtek/rtlwifi/rtlwifi 0x7fd43faf rtl_efuse_ops_init +EXPORT_SYMBOL_GPL drivers/net/wireless/realtek/rtlwifi/rtlwifi 0x8f504894 rtl_fw_block_write +EXPORT_SYMBOL_GPL drivers/net/wireless/realtek/rtlwifi/rtlwifi 0x91f6c0e4 rtl_lps_enter +EXPORT_SYMBOL_GPL drivers/net/wireless/realtek/rtlwifi/rtlwifi 0x97e05663 rtl_tid_to_ac +EXPORT_SYMBOL_GPL drivers/net/wireless/realtek/rtlwifi/rtlwifi 0x98142bf9 rtl_swlps_beacon +EXPORT_SYMBOL_GPL drivers/net/wireless/realtek/rtlwifi/rtlwifi 0x9e4d1ebb rtl_init_rx_config +EXPORT_SYMBOL_GPL drivers/net/wireless/realtek/rtlwifi/rtlwifi 0xb4ec7a79 rtl_init_core +EXPORT_SYMBOL_GPL drivers/net/wireless/realtek/rtlwifi/rtlwifi 0xbda555b7 rtl_tx_report_handler +EXPORT_SYMBOL_GPL drivers/net/wireless/realtek/rtlwifi/rtlwifi 0xc1e9bccd rtl_get_hwinfo +EXPORT_SYMBOL_GPL drivers/net/wireless/realtek/rtlwifi/rtlwifi 0xcc3cb2c5 read_efuse_byte +EXPORT_SYMBOL_GPL drivers/net/wireless/realtek/rtlwifi/rtlwifi 0xd9f47486 rtl_is_special_data +EXPORT_SYMBOL_GPL drivers/net/wireless/realtek/rtlwifi/rtlwifi 0xe1c2d915 rtl_set_tx_report +EXPORT_SYMBOL_GPL drivers/net/wireless/realtek/rtlwifi/rtlwifi 0xf83cfdb6 rtl_p2p_info +EXPORT_SYMBOL_GPL drivers/net/wireless/realtek/rtlwifi/rtlwifi 0xf8ff6add rtl_lps_change_work_callback +EXPORT_SYMBOL_GPL drivers/net/wireless/rsi/rsi_91x 0x0f5c3ce9 rsi_zone_enabled +EXPORT_SYMBOL_GPL drivers/net/wireless/rsi/rsi_91x 0x188a286d rsi_91x_deinit +EXPORT_SYMBOL_GPL drivers/net/wireless/rsi/rsi_91x 0x26efc0ac rsi_91x_init +EXPORT_SYMBOL_GPL drivers/net/wireless/rsi/rsi_91x 0x3a879ed2 rsi_hal_device_init +EXPORT_SYMBOL_GPL drivers/net/wireless/rsi/rsi_91x 0x904ec63e rsi_read_pkt +EXPORT_SYMBOL_GPL drivers/net/wireless/rsi/rsi_91x 0xcd173710 rsi_dbg +EXPORT_SYMBOL_GPL drivers/net/wireless/rsi/rsi_91x 0xe5a9a582 rsi_mac80211_detach +EXPORT_SYMBOL_GPL drivers/net/wireless/st/cw1200/cw1200_core 0x7dbad94a cw1200_can_suspend +EXPORT_SYMBOL_GPL drivers/net/wireless/st/cw1200/cw1200_core 0xa1723f3c cw1200_irq_handler +EXPORT_SYMBOL_GPL drivers/net/wireless/st/cw1200/cw1200_core 0xb5ce5df7 cw1200_core_release +EXPORT_SYMBOL_GPL drivers/net/wireless/st/cw1200/cw1200_core 0xdc6cc556 cw1200_core_probe +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wl1251/wl1251 0x2e88db37 wl1251_free_hw +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wl1251/wl1251 0xbc8aa41d wl1251_init_ieee80211 +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wl1251/wl1251 0xfdff0051 wl1251_alloc_hw +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x03143e7e wl12xx_cmd_build_probe_req +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x03bb20f2 wlcore_cmd_generic_cfg +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x06d3b27e wl12xx_debug_level +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x08e6a252 wlcore_event_roc_complete +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x0d1f8ee6 wl1271_acx_pm_config +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x16307790 wlcore_event_channel_switch +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x20351125 wlcore_get_native_channel_type +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x331ae170 wlcore_translate_addr +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x42df5753 wl1271_cmd_data_path +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x431d2708 wlcore_event_rssi_trigger +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x487c9129 wl1271_acx_init_mem_config +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x567bda01 wlcore_event_inactive_sta +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x56a67cc7 wl1271_cmd_test +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x5ba7ecd6 wlcore_event_ba_rx_constraint +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x5f714edf wlcore_disable_interrupts_nosync +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x6ce84b26 wl1271_cmd_send +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x73a6e771 wlcore_boot_upload_nvs +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x767fce82 wl1271_cmd_configure +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x78549a96 wlcore_set_scan_chan_params +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x791054e4 wlcore_synchronize_interrupts +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x7dc1de5b wlcore_enable_interrupts +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x7e1b85c8 wlcore_alloc_hw +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x82394122 wl12xx_acx_mem_cfg +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x8271f3dd wl1271_acx_sleep_auth +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x84d93306 wlcore_event_soft_gemini_sense +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x865f60bb wlcore_event_max_tx_failure +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x8f4fcd04 wlcore_event_beacon_loss +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x8f925cf8 wlcore_probe +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x91b638ce wlcore_event_fw_logger +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x969b9389 wlcore_boot_upload_firmware +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x9da22350 wlcore_event_dummy_packet +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x9e7898a3 wlcore_scan_sched_scan_results +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0xa2ffa5f4 wlcore_set_partition +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0xa4bbee51 wl1271_debugfs_update_stats +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0xa98b96e8 wl1271_tx_flush +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0xac3ec848 wlcore_event_sched_scan_completed +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0xb8593de3 wlcore_boot_run_firmware +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0xc1db71fa wl1271_format_buffer +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0xc9d6f2db wlcore_remove +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0xcc42fad9 wlcore_free_hw +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0xd7330cd5 wlcore_set_key +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0xda0b2d99 wl1271_acx_set_ht_capabilities +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0xda686e84 wl1271_tx_min_rate_get +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0xe07ef76c wlcore_disable_interrupts +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0xf9fdf17c wlcore_scan_sched_scan_ssid_list +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0xfe0ed778 wlcore_cmd_wait_for_event_or_timeout +EXPORT_SYMBOL_GPL drivers/nfc/nfcmrvl/nfcmrvl 0x3ec8c313 nfcmrvl_nci_recv_frame +EXPORT_SYMBOL_GPL drivers/nfc/nfcmrvl/nfcmrvl 0x8fc5b6a8 nfcmrvl_parse_dt +EXPORT_SYMBOL_GPL drivers/nfc/nfcmrvl/nfcmrvl 0xfcd8864d nfcmrvl_nci_unregister_dev +EXPORT_SYMBOL_GPL drivers/nfc/nfcmrvl/nfcmrvl 0xfe9ef725 nfcmrvl_nci_register_dev +EXPORT_SYMBOL_GPL drivers/nfc/pn533/pn533 0x07d0550b pn533_rx_frame_is_cmd_response +EXPORT_SYMBOL_GPL drivers/nfc/pn533/pn533 0x1730ddca pn53x_unregister_nfc +EXPORT_SYMBOL_GPL drivers/nfc/pn533/pn533 0x1f389ca8 pn533_finalize_setup +EXPORT_SYMBOL_GPL drivers/nfc/pn533/pn533 0x309c86de pn532_i2c_nfc_alloc +EXPORT_SYMBOL_GPL drivers/nfc/pn533/pn533 0x7c51a8f0 pn53x_register_nfc +EXPORT_SYMBOL_GPL drivers/nfc/pn533/pn533 0xac255926 pn53x_common_clean +EXPORT_SYMBOL_GPL drivers/nfc/pn533/pn533 0xda728823 pn53x_common_init +EXPORT_SYMBOL_GPL drivers/nfc/pn533/pn533 0xdecfd339 pn533_rx_frame_is_ack +EXPORT_SYMBOL_GPL drivers/nfc/st-nci/st-nci 0x011dae2b st_nci_probe +EXPORT_SYMBOL_GPL drivers/nfc/st-nci/st-nci 0x0bf19d01 st_nci_hci_load_session +EXPORT_SYMBOL_GPL drivers/nfc/st-nci/st-nci 0x0c26dcac st_nci_remove +EXPORT_SYMBOL_GPL drivers/nfc/st-nci/st-nci 0x6107458c st_nci_hci_cmd_received +EXPORT_SYMBOL_GPL drivers/nfc/st-nci/st-nci 0x61c4979c st_nci_enable_se +EXPORT_SYMBOL_GPL drivers/nfc/st-nci/st-nci 0xb755746d st_nci_discover_se +EXPORT_SYMBOL_GPL drivers/nfc/st-nci/st-nci 0xcf649a27 st_nci_disable_se +EXPORT_SYMBOL_GPL drivers/nfc/st-nci/st-nci 0xea4c23fb st_nci_hci_event_received +EXPORT_SYMBOL_GPL drivers/nfc/st95hf/st95hf 0x0f331e76 st95hf_spi_recv_response +EXPORT_SYMBOL_GPL drivers/nfc/st95hf/st95hf 0x9a743ae1 st95hf_spi_send +EXPORT_SYMBOL_GPL drivers/nfc/st95hf/st95hf 0xc3c8f0b4 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 0x0cd74c76 ntb_transport_unregister_client +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 0x799fdcb6 ntb_transport_create_queue +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 0xbd18acab ntb_transport_register_client +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 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/nvme/host/nvme-core 0x04660c93 nvme_stop_ctrl +EXPORT_SYMBOL_GPL drivers/nvme/host/nvme-core 0x083e1f22 nvme_remove_namespaces +EXPORT_SYMBOL_GPL drivers/nvme/host/nvme-core 0x19876274 __tracepoint_nvme_sq +EXPORT_SYMBOL_GPL drivers/nvme/host/nvme-core 0x1a24758e nvme_kill_queues +EXPORT_SYMBOL_GPL drivers/nvme/host/nvme-core 0x20b73a1b nvme_unfreeze +EXPORT_SYMBOL_GPL drivers/nvme/host/nvme-core 0x2108b45d nvme_sync_queues +EXPORT_SYMBOL_GPL drivers/nvme/host/nvme-core 0x2333e32b nvme_init_ctrl +EXPORT_SYMBOL_GPL drivers/nvme/host/nvme-core 0x2eede233 nvme_change_ctrl_state +EXPORT_SYMBOL_GPL drivers/nvme/host/nvme-core 0x2f3cc5ae nvme_uninit_ctrl +EXPORT_SYMBOL_GPL drivers/nvme/host/nvme-core 0x2f4da364 nvme_disable_ctrl +EXPORT_SYMBOL_GPL drivers/nvme/host/nvme-core 0x31738acf nvme_cancel_request +EXPORT_SYMBOL_GPL drivers/nvme/host/nvme-core 0x35339f84 nvme_enable_ctrl +EXPORT_SYMBOL_GPL drivers/nvme/host/nvme-core 0x4163bdd9 nvme_submit_sync_cmd +EXPORT_SYMBOL_GPL drivers/nvme/host/nvme-core 0x49224181 nvme_reset_wq +EXPORT_SYMBOL_GPL drivers/nvme/host/nvme-core 0x5101a146 nvme_try_sched_reset +EXPORT_SYMBOL_GPL drivers/nvme/host/nvme-core 0x5f3317b0 nvme_wait_freeze +EXPORT_SYMBOL_GPL drivers/nvme/host/nvme-core 0x64b62862 nvme_wq +EXPORT_SYMBOL_GPL drivers/nvme/host/nvme-core 0x65d7c710 nvme_shutdown_ctrl +EXPORT_SYMBOL_GPL drivers/nvme/host/nvme-core 0x699a4b21 nvme_reset_ctrl +EXPORT_SYMBOL_GPL drivers/nvme/host/nvme-core 0x6e688f2c nvme_cleanup_cmd +EXPORT_SYMBOL_GPL drivers/nvme/host/nvme-core 0x755aabd9 nvme_stop_keep_alive +EXPORT_SYMBOL_GPL drivers/nvme/host/nvme-core 0x7675c081 nvme_wait_freeze_timeout +EXPORT_SYMBOL_GPL drivers/nvme/host/nvme-core 0x813cf212 nvme_io_timeout +EXPORT_SYMBOL_GPL drivers/nvme/host/nvme-core 0x826c4951 nvme_set_queue_count +EXPORT_SYMBOL_GPL drivers/nvme/host/nvme-core 0x8540eb47 nvme_alloc_request +EXPORT_SYMBOL_GPL drivers/nvme/host/nvme-core 0x86329683 nvme_start_freeze +EXPORT_SYMBOL_GPL drivers/nvme/host/nvme-core 0x8ab19397 nvme_sec_submit +EXPORT_SYMBOL_GPL drivers/nvme/host/nvme-core 0x8bdf1a56 nvme_init_identify +EXPORT_SYMBOL_GPL drivers/nvme/host/nvme-core 0x8c89cefc __nvme_submit_sync_cmd +EXPORT_SYMBOL_GPL drivers/nvme/host/nvme-core 0x90c76bde nvme_sync_io_queues +EXPORT_SYMBOL_GPL drivers/nvme/host/nvme-core 0x99c9963c nvme_stop_queues +EXPORT_SYMBOL_GPL drivers/nvme/host/nvme-core 0xa3f441c7 nvme_complete_async_event +EXPORT_SYMBOL_GPL drivers/nvme/host/nvme-core 0xa4cfe1f6 nvme_reset_ctrl_sync +EXPORT_SYMBOL_GPL drivers/nvme/host/nvme-core 0xb808600d nvme_get_features +EXPORT_SYMBOL_GPL drivers/nvme/host/nvme-core 0xba73bbb8 nvme_start_ctrl +EXPORT_SYMBOL_GPL drivers/nvme/host/nvme-core 0xbabcf36f nvme_start_queues +EXPORT_SYMBOL_GPL drivers/nvme/host/nvme-core 0xbd42fb17 nvme_setup_cmd +EXPORT_SYMBOL_GPL drivers/nvme/host/nvme-core 0xd2d83d06 nvme_wait_reset +EXPORT_SYMBOL_GPL drivers/nvme/host/nvme-core 0xd45434ee admin_timeout +EXPORT_SYMBOL_GPL drivers/nvme/host/nvme-core 0xd58bbbcb nvme_delete_wq +EXPORT_SYMBOL_GPL drivers/nvme/host/nvme-core 0xebe67aa6 nvme_complete_rq +EXPORT_SYMBOL_GPL drivers/nvme/host/nvme-core 0xf213db8f nvme_set_features +EXPORT_SYMBOL_GPL drivers/nvme/host/nvme-core 0xfd4e742f nvme_delete_ctrl +EXPORT_SYMBOL_GPL drivers/nvme/host/nvme-fabrics 0x0639ca04 nvmf_connect_io_queue +EXPORT_SYMBOL_GPL drivers/nvme/host/nvme-fabrics 0x14552e94 nvmf_ip_options_match +EXPORT_SYMBOL_GPL drivers/nvme/host/nvme-fabrics 0x2907de94 nvmf_reg_read64 +EXPORT_SYMBOL_GPL drivers/nvme/host/nvme-fabrics 0x313099c8 nvmf_fail_nonready_command +EXPORT_SYMBOL_GPL drivers/nvme/host/nvme-fabrics 0x35b79339 __nvmf_check_ready +EXPORT_SYMBOL_GPL drivers/nvme/host/nvme-fabrics 0x508c8532 nvmf_should_reconnect +EXPORT_SYMBOL_GPL drivers/nvme/host/nvme-fabrics 0x7e62db69 nvmf_connect_admin_queue +EXPORT_SYMBOL_GPL drivers/nvme/host/nvme-fabrics 0x999b6ecf nvmf_free_options +EXPORT_SYMBOL_GPL drivers/nvme/host/nvme-fabrics 0xa7e9975b nvmf_reg_read32 +EXPORT_SYMBOL_GPL drivers/nvme/host/nvme-fabrics 0xbf0dae8f nvmf_reg_write32 +EXPORT_SYMBOL_GPL drivers/nvme/host/nvme-fabrics 0xca3a1649 nvmf_unregister_transport +EXPORT_SYMBOL_GPL drivers/nvme/host/nvme-fabrics 0xe1da3c68 nvmf_get_address +EXPORT_SYMBOL_GPL drivers/nvme/host/nvme-fabrics 0xee1ef3a1 nvmf_register_transport +EXPORT_SYMBOL_GPL drivers/nvme/host/nvme-fc 0x0d12e564 nvme_fc_register_remoteport +EXPORT_SYMBOL_GPL drivers/nvme/host/nvme-fc 0x35b8c820 nvme_fc_register_localport +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 0x8a9cf5a7 nvme_fc_set_remoteport_devloss +EXPORT_SYMBOL_GPL drivers/nvme/host/nvme-fc 0xbeaa0ea6 nvme_fc_rcv_ls_req +EXPORT_SYMBOL_GPL drivers/nvme/host/nvme-fc 0xfca9dc99 nvme_fc_unregister_remoteport +EXPORT_SYMBOL_GPL drivers/nvme/target/nvmet 0x08207c16 nvmet_unregister_transport +EXPORT_SYMBOL_GPL drivers/nvme/target/nvmet 0x0bc75bb6 nvmet_req_free_sgls +EXPORT_SYMBOL_GPL drivers/nvme/target/nvmet 0x1cd1eaa9 nvmet_req_complete +EXPORT_SYMBOL_GPL drivers/nvme/target/nvmet 0x3ebd780f nvmet_register_transport +EXPORT_SYMBOL_GPL drivers/nvme/target/nvmet 0x59662a1d nvmet_check_transfer_len +EXPORT_SYMBOL_GPL drivers/nvme/target/nvmet 0x8b1f166b nvmet_sq_init +EXPORT_SYMBOL_GPL drivers/nvme/target/nvmet 0xa594c196 nvmet_req_uninit +EXPORT_SYMBOL_GPL drivers/nvme/target/nvmet 0xc7215a2a nvmet_req_alloc_sgls +EXPORT_SYMBOL_GPL drivers/nvme/target/nvmet 0xcaa0c239 nvmet_sq_destroy +EXPORT_SYMBOL_GPL drivers/nvme/target/nvmet 0xcefd9e26 nvmet_req_init +EXPORT_SYMBOL_GPL drivers/nvme/target/nvmet 0xe952be11 nvmet_ctrl_fatal_error +EXPORT_SYMBOL_GPL drivers/nvme/target/nvmet-fc 0x0e3c043d nvmet_fc_rcv_ls_req +EXPORT_SYMBOL_GPL drivers/nvme/target/nvmet-fc 0x4a013682 nvmet_fc_invalidate_host +EXPORT_SYMBOL_GPL drivers/nvme/target/nvmet-fc 0x7b8040d6 nvmet_fc_register_targetport +EXPORT_SYMBOL_GPL drivers/nvme/target/nvmet-fc 0x9ef76d99 nvmet_fc_unregister_targetport +EXPORT_SYMBOL_GPL drivers/nvme/target/nvmet-fc 0xddb93c97 nvmet_fc_rcv_fcp_abort +EXPORT_SYMBOL_GPL drivers/nvme/target/nvmet-fc 0xfee33ec7 nvmet_fc_rcv_fcp_req +EXPORT_SYMBOL_GPL drivers/pci/switch/switchtec 0x629b2317 switchtec_class +EXPORT_SYMBOL_GPL drivers/phy/qualcomm/phy-qcom-ufs 0x0a5df6c1 get_ufs_qcom_phy +EXPORT_SYMBOL_GPL drivers/phy/qualcomm/phy-qcom-ufs 0x266bb705 ufs_qcom_phy_power_off +EXPORT_SYMBOL_GPL drivers/phy/qualcomm/phy-qcom-ufs 0x30ccc377 ufs_qcom_phy_save_controller_version +EXPORT_SYMBOL_GPL drivers/phy/qualcomm/phy-qcom-ufs 0x56804afc ufs_qcom_phy_init_vregulators +EXPORT_SYMBOL_GPL drivers/phy/qualcomm/phy-qcom-ufs 0x62b186c1 ufs_qcom_phy_init_clks +EXPORT_SYMBOL_GPL drivers/phy/qualcomm/phy-qcom-ufs 0xae541953 ufs_qcom_phy_power_on +EXPORT_SYMBOL_GPL drivers/phy/qualcomm/phy-qcom-ufs 0xb3e5f214 ufs_qcom_phy_set_tx_lane_enable +EXPORT_SYMBOL_GPL drivers/phy/qualcomm/phy-qcom-ufs 0xb507193e ufs_qcom_phy_generic_probe +EXPORT_SYMBOL_GPL drivers/phy/qualcomm/phy-qcom-ufs 0xec13f943 ufs_qcom_phy_calibrate +EXPORT_SYMBOL_GPL drivers/phy/tegra/phy-tegra-xusb 0x2a23379a tegra_xusb_padctl_put +EXPORT_SYMBOL_GPL drivers/phy/tegra/phy-tegra-xusb 0x4a80dd4c tegra_xusb_padctl_usb3_save_context +EXPORT_SYMBOL_GPL drivers/phy/tegra/phy-tegra-xusb 0x504052c4 tegra_xusb_padctl_hsic_set_idle +EXPORT_SYMBOL_GPL drivers/phy/tegra/phy-tegra-xusb 0x6c3921df tegra_xusb_padctl_get +EXPORT_SYMBOL_GPL drivers/phy/tegra/phy-tegra-xusb 0x6f958d0b tegra124_xusb_padctl_soc +EXPORT_SYMBOL_GPL drivers/phy/tegra/phy-tegra-xusb 0x860300df tegra_xusb_padctl_get_usb3_companion +EXPORT_SYMBOL_GPL drivers/phy/tegra/phy-tegra-xusb 0xc62edd52 tegra_xusb_padctl_usb3_set_lfps_detect +EXPORT_SYMBOL_GPL drivers/phy/tegra/phy-tegra-xusb 0xd7b6d055 tegra_phy_xusb_utmi_port_reset +EXPORT_SYMBOL_GPL drivers/phy/tegra/phy-tegra-xusb 0xe8c4ec6b tegra_xusb_padctl_set_vbus_override +EXPORT_SYMBOL_GPL drivers/phy/ti/phy-omap-control 0x415002cb omap_control_pcie_pcs +EXPORT_SYMBOL_GPL drivers/phy/ti/phy-omap-control 0x4275840f omap_control_phy_power +EXPORT_SYMBOL_GPL drivers/phy/ti/phy-omap-control 0x9b63f75f omap_control_usb_set_mode +EXPORT_SYMBOL_GPL drivers/phy/ti/phy-omap-usb2 0x00d48f33 omap_usb2_set_comparator +EXPORT_SYMBOL_GPL drivers/pinctrl/pinctrl-mcp23s08 0x019f1c81 mcp23s08_probe_one +EXPORT_SYMBOL_GPL drivers/pinctrl/pinctrl-mcp23s08 0x5c9bc011 mcp23x08_regmap +EXPORT_SYMBOL_GPL drivers/pinctrl/pinctrl-mcp23s08 0x6ce064fe mcp23x17_regmap +EXPORT_SYMBOL_GPL drivers/platform/chrome/cros-ec-sensorhub 0x53b6161d cros_ec_sensorhub_unregister_push_data +EXPORT_SYMBOL_GPL drivers/platform/chrome/cros-ec-sensorhub 0xa1c8554f cros_ec_sensorhub_register_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/power/reset/reboot-mode 0x159620d1 devm_reboot_mode_unregister +EXPORT_SYMBOL_GPL drivers/power/reset/reboot-mode 0x3c1416f6 reboot_mode_unregister +EXPORT_SYMBOL_GPL drivers/power/reset/reboot-mode 0x4474067e devm_reboot_mode_register +EXPORT_SYMBOL_GPL drivers/power/reset/reboot-mode 0xb881d3fa reboot_mode_register +EXPORT_SYMBOL_GPL drivers/power/supply/bq27xxx_battery 0x8d2b6fa5 bq27xxx_battery_update +EXPORT_SYMBOL_GPL drivers/power/supply/bq27xxx_battery 0xcf00d035 bq27xxx_battery_teardown +EXPORT_SYMBOL_GPL drivers/power/supply/bq27xxx_battery 0xdf89f6ce bq27xxx_battery_setup +EXPORT_SYMBOL_GPL drivers/power/supply/pcf50633-charger 0x2de756a7 pcf50633_mbc_usb_curlim_set +EXPORT_SYMBOL_GPL drivers/power/supply/pcf50633-charger 0x47371451 pcf50633_mbc_get_status +EXPORT_SYMBOL_GPL drivers/power/supply/pcf50633-charger 0xde08448f pcf50633_mbc_get_usb_online_status +EXPORT_SYMBOL_GPL drivers/ptp/ptp-qoriq 0x06cd55b7 ptp_qoriq_enable +EXPORT_SYMBOL_GPL drivers/ptp/ptp-qoriq 0x158d587d ptp_qoriq_init +EXPORT_SYMBOL_GPL drivers/ptp/ptp-qoriq 0x2eae82b0 ptp_qoriq_isr +EXPORT_SYMBOL_GPL drivers/ptp/ptp-qoriq 0x74f048ac ptp_qoriq_adjfine +EXPORT_SYMBOL_GPL drivers/ptp/ptp-qoriq 0x79c0c36b ptp_qoriq_free +EXPORT_SYMBOL_GPL drivers/ptp/ptp-qoriq 0x7b8a501c ptp_qoriq_settime +EXPORT_SYMBOL_GPL drivers/ptp/ptp-qoriq 0x97fd01bf extts_clean_up +EXPORT_SYMBOL_GPL drivers/ptp/ptp-qoriq 0xa95c5672 ptp_qoriq_adjtime +EXPORT_SYMBOL_GPL drivers/ptp/ptp-qoriq 0xd0fd419a ptp_qoriq_gettime +EXPORT_SYMBOL_GPL drivers/regulator/mc13xxx-regulator-core 0x3ed099df mc13xxx_parse_regulators_dt +EXPORT_SYMBOL_GPL drivers/regulator/mc13xxx-regulator-core 0x63a799ff mc13xxx_get_num_regulators_dt +EXPORT_SYMBOL_GPL drivers/regulator/mc13xxx-regulator-core 0x9414a059 mc13xxx_fixed_regulator_ops +EXPORT_SYMBOL_GPL drivers/regulator/mc13xxx-regulator-core 0xb1d8a88a mc13xxx_regulator_ops +EXPORT_SYMBOL_GPL drivers/regulator/mc13xxx-regulator-core 0xe661bec3 mc13xxx_fixed_regulator_set_voltage +EXPORT_SYMBOL_GPL drivers/regulator/wm8350-regulator 0x2a87b4dd wm8350_dcdc25_set_mode +EXPORT_SYMBOL_GPL drivers/regulator/wm8350-regulator 0x369863d7 wm8350_isink_set_flash +EXPORT_SYMBOL_GPL drivers/regulator/wm8350-regulator 0x8a584bb8 wm8350_register_regulator +EXPORT_SYMBOL_GPL drivers/regulator/wm8350-regulator 0x8ac1d8da wm8350_register_led +EXPORT_SYMBOL_GPL drivers/regulator/wm8350-regulator 0xd7b39019 wm8350_ldo_set_slot +EXPORT_SYMBOL_GPL drivers/regulator/wm8350-regulator 0xee25a93f wm8350_dcdc_set_slot +EXPORT_SYMBOL_GPL drivers/regulator/wm8400-regulator 0x88970066 wm8400_register_regulator +EXPORT_SYMBOL_GPL drivers/remoteproc/mtk_scp 0x04f148eb scp_get_venc_hw_capa +EXPORT_SYMBOL_GPL drivers/remoteproc/mtk_scp 0x249027d0 scp_get +EXPORT_SYMBOL_GPL drivers/remoteproc/mtk_scp 0x89b058b8 scp_mapping_dm_addr +EXPORT_SYMBOL_GPL drivers/remoteproc/mtk_scp 0x9c15289f scp_get_device +EXPORT_SYMBOL_GPL drivers/remoteproc/mtk_scp 0xbeb3f106 scp_get_vdec_hw_capa +EXPORT_SYMBOL_GPL drivers/remoteproc/mtk_scp 0xdd7cb3cc scp_put +EXPORT_SYMBOL_GPL drivers/remoteproc/mtk_scp 0xf64c5a53 scp_get_rproc +EXPORT_SYMBOL_GPL drivers/remoteproc/mtk_scp_ipi 0x09313652 scp_memcpy_aligned +EXPORT_SYMBOL_GPL drivers/remoteproc/mtk_scp_ipi 0x0a2c295b scp_ipi_send +EXPORT_SYMBOL_GPL drivers/remoteproc/mtk_scp_ipi 0x0b2e5dd4 scp_ipi_lock +EXPORT_SYMBOL_GPL drivers/remoteproc/mtk_scp_ipi 0x38e5ae32 scp_ipi_register +EXPORT_SYMBOL_GPL drivers/remoteproc/mtk_scp_ipi 0x63090f63 scp_ipi_unregister +EXPORT_SYMBOL_GPL drivers/remoteproc/mtk_scp_ipi 0xb8957f89 scp_ipi_unlock +EXPORT_SYMBOL_GPL drivers/remoteproc/qcom_common 0x31bfd40e qcom_unregister_ssr_notifier +EXPORT_SYMBOL_GPL drivers/remoteproc/qcom_common 0x588b71be qcom_remove_smd_subdev +EXPORT_SYMBOL_GPL drivers/remoteproc/qcom_common 0x666e4dd5 qcom_remove_ssr_subdev +EXPORT_SYMBOL_GPL drivers/remoteproc/qcom_common 0x7ad5935b qcom_add_glink_subdev +EXPORT_SYMBOL_GPL drivers/remoteproc/qcom_common 0x8142a32e qcom_add_smd_subdev +EXPORT_SYMBOL_GPL drivers/remoteproc/qcom_common 0x86a84622 qcom_register_ssr_notifier +EXPORT_SYMBOL_GPL drivers/remoteproc/qcom_common 0xb365bfd9 qcom_register_dump_segments +EXPORT_SYMBOL_GPL drivers/remoteproc/qcom_common 0xc17b9f61 qcom_remove_glink_subdev +EXPORT_SYMBOL_GPL drivers/remoteproc/qcom_common 0xcafd1f1b qcom_add_ssr_subdev +EXPORT_SYMBOL_GPL drivers/remoteproc/qcom_q6v5 0x251058cc qcom_q6v5_init +EXPORT_SYMBOL_GPL drivers/remoteproc/qcom_q6v5 0x93cb50d5 qcom_q6v5_wait_for_start +EXPORT_SYMBOL_GPL drivers/remoteproc/qcom_q6v5 0xd0cafabd qcom_q6v5_unprepare +EXPORT_SYMBOL_GPL drivers/remoteproc/qcom_q6v5 0xd6fe5754 qcom_q6v5_request_stop +EXPORT_SYMBOL_GPL drivers/remoteproc/qcom_q6v5 0xde2be3aa qcom_q6v5_panic +EXPORT_SYMBOL_GPL drivers/remoteproc/qcom_q6v5 0xee937681 qcom_q6v5_prepare +EXPORT_SYMBOL_GPL drivers/remoteproc/qcom_q6v5_ipa_notify 0x24b68aa8 qcom_remove_ipa_notify_subdev +EXPORT_SYMBOL_GPL drivers/remoteproc/qcom_q6v5_ipa_notify 0xc16fb9bc qcom_add_ipa_notify_subdev +EXPORT_SYMBOL_GPL drivers/remoteproc/qcom_q6v5_mss 0x527bd9d2 qcom_deregister_ipa_notify +EXPORT_SYMBOL_GPL drivers/remoteproc/qcom_q6v5_mss 0xe4abfcfe qcom_register_ipa_notify +EXPORT_SYMBOL_GPL drivers/remoteproc/qcom_sysmon 0xa881c6fc qcom_remove_sysmon_subdev +EXPORT_SYMBOL_GPL drivers/remoteproc/qcom_sysmon 0xe82257b2 qcom_add_sysmon_subdev +EXPORT_SYMBOL_GPL drivers/rpmsg/mtk_rpmsg 0x86903274 mtk_rpmsg_destroy_rproc_subdev +EXPORT_SYMBOL_GPL drivers/rpmsg/mtk_rpmsg 0xa573dae4 mtk_rpmsg_create_rproc_subdev +EXPORT_SYMBOL_GPL drivers/rpmsg/qcom_glink 0x149236da qcom_glink_native_remove +EXPORT_SYMBOL_GPL drivers/rpmsg/qcom_glink 0xbba03da4 qcom_glink_native_probe +EXPORT_SYMBOL_GPL drivers/rpmsg/qcom_glink 0xf14f5684 qcom_glink_ssr_notify +EXPORT_SYMBOL_GPL drivers/rpmsg/qcom_glink 0xfd2d5a1d qcom_glink_native_unregister +EXPORT_SYMBOL_GPL drivers/rpmsg/qcom_glink_smem 0x72dd75d9 qcom_glink_smem_unregister +EXPORT_SYMBOL_GPL drivers/rpmsg/qcom_glink_smem 0x7cbc6516 qcom_glink_smem_register +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x01a00893 cxgbi_get_host_param +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x086b870d cxgbi_sock_act_open_req_arp_failure +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x0dc6dbdd cxgbi_set_conn_param +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x189a79b3 cxgbi_device_find_by_netdev +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x19aaf868 cxgbi_ddp_ppm_setup +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x228b9405 cxgbi_hbas_remove +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x2876738c cxgbi_sock_closed +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x2e59fafe cxgbi_create_conn +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x37a7eb7c cxgbi_conn_tx_open +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x3e55e729 cxgbi_conn_pdu_ready +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x3f52135b cxgbi_conn_alloc_pdu +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x3fa91533 cxgbi_ep_disconnect +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x417716b6 cxgbi_sock_rcv_abort_rpl +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x4c4c62c4 cxgbi_sock_purge_wr_queue +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x53956f6e cxgbi_sock_rcv_close_conn_rpl +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x558c3fde cxgbi_sock_established +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x5ec3434d cxgbi_conn_init_pdu +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x6c6c3a40 cxgbi_create_session +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x79a49c3a cxgbi_sock_free_cpl_skbs +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x7d3fb02d cxgbi_iscsi_cleanup +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x7e086017 cxgbi_get_ep_param +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x7fdb6004 cxgbi_device_unregister_all +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x847543d1 cxgbi_device_find_by_lldev +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x8a72195b cxgbi_iscsi_init +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x9bc5eeba cxgbi_cleanup_task +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x9cf28404 cxgbi_set_host_param +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x9da68bd8 cxgbi_ep_poll +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0xb2ce6161 cxgbi_destroy_session +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0xb52d656f cxgbi_device_portmap_cleanup +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0xb664cfdb cxgbi_device_portmap_create +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0xc4d73f70 cxgbi_device_unregister +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0xc80c5d0a cxgbi_hbas_add +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0xc87a6dd1 cxgbi_sock_skb_entail +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0xc8baac13 cxgbi_parse_pdu_itt +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0xcfa24ae8 cxgbi_ep_connect +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0xdcc6b0cb cxgbi_conn_xmit_pdu +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0xe0cd38ba cxgbi_sock_rcv_peer_close +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0xe48ec6ee cxgbi_get_conn_stats +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0xef346615 cxgbi_attr_is_visible +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0xf14bcf05 cxgbi_sock_fail_act_open +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0xf35e9239 cxgbi_device_find_by_netdev_rcu +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0xf377f15c cxgbi_device_register +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0xf3d6b6e2 cxgbi_sock_rcv_wr_ack +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0xf76db0d0 cxgbi_ddp_set_one_ppod +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0xfa2d3bed cxgbi_bind_conn +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0xfb3f3dcf cxgbi_sock_select_mss +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0xfca9cb66 cxgbi_sock_check_wr_invariants +EXPORT_SYMBOL_GPL drivers/scsi/fcoe/libfcoe 0x0e434634 fcoe_check_wait_queue +EXPORT_SYMBOL_GPL drivers/scsi/fcoe/libfcoe 0x18ddb2f5 fcoe_get_lesb +EXPORT_SYMBOL_GPL drivers/scsi/fcoe/libfcoe 0x1a964732 fcoe_validate_vport_create +EXPORT_SYMBOL_GPL drivers/scsi/fcoe/libfcoe 0x1b18a45a fcoe_start_io +EXPORT_SYMBOL_GPL drivers/scsi/fcoe/libfcoe 0x451e2a29 fcoe_libfc_config +EXPORT_SYMBOL_GPL drivers/scsi/fcoe/libfcoe 0x485c92e6 fcoe_get_wwn +EXPORT_SYMBOL_GPL drivers/scsi/fcoe/libfcoe 0x647daaed fcoe_ctlr_device_delete +EXPORT_SYMBOL_GPL drivers/scsi/fcoe/libfcoe 0x9281ecfe fcoe_ctlr_get_lesb +EXPORT_SYMBOL_GPL drivers/scsi/fcoe/libfcoe 0x973c22bd fcoe_fcf_device_add +EXPORT_SYMBOL_GPL drivers/scsi/fcoe/libfcoe 0xa87b9a91 fcoe_clean_pending_queue +EXPORT_SYMBOL_GPL drivers/scsi/fcoe/libfcoe 0xb898c9b3 fcoe_fcf_device_delete +EXPORT_SYMBOL_GPL drivers/scsi/fcoe/libfcoe 0xbac58840 fcoe_queue_timer +EXPORT_SYMBOL_GPL drivers/scsi/fcoe/libfcoe 0xd73e1b61 fcoe_link_speed_update +EXPORT_SYMBOL_GPL drivers/scsi/fcoe/libfcoe 0xd7e48567 fcoe_fc_crc +EXPORT_SYMBOL_GPL drivers/scsi/fcoe/libfcoe 0xdd944534 fcoe_wwn_from_mac +EXPORT_SYMBOL_GPL drivers/scsi/fcoe/libfcoe 0xde05d084 __fcoe_get_lesb +EXPORT_SYMBOL_GPL drivers/scsi/fcoe/libfcoe 0xf167cb7a fcoe_wwn_to_str +EXPORT_SYMBOL_GPL drivers/scsi/fcoe/libfcoe 0xf441c78b fcoe_ctlr_device_add +EXPORT_SYMBOL_GPL drivers/scsi/fcoe/libfcoe 0xf7513e9e fcoe_get_paged_crc_eof +EXPORT_SYMBOL_GPL drivers/scsi/fdomain 0x3d45098e fdomain_create +EXPORT_SYMBOL_GPL drivers/scsi/fdomain 0x65044f70 fdomain_destroy +EXPORT_SYMBOL_GPL drivers/scsi/iscsi_boot_sysfs 0x1a32012b iscsi_boot_create_kset +EXPORT_SYMBOL_GPL drivers/scsi/iscsi_boot_sysfs 0x2097dbaa iscsi_boot_destroy_kset +EXPORT_SYMBOL_GPL drivers/scsi/iscsi_boot_sysfs 0x2377ea2f iscsi_boot_create_target +EXPORT_SYMBOL_GPL drivers/scsi/iscsi_boot_sysfs 0x3a01c24f iscsi_boot_create_acpitbl +EXPORT_SYMBOL_GPL drivers/scsi/iscsi_boot_sysfs 0xa4b4e84b iscsi_boot_create_host_kset +EXPORT_SYMBOL_GPL drivers/scsi/iscsi_boot_sysfs 0xbf101f68 iscsi_boot_create_initiator +EXPORT_SYMBOL_GPL drivers/scsi/iscsi_boot_sysfs 0xeb55478e iscsi_boot_create_ethernet +EXPORT_SYMBOL_GPL drivers/scsi/libfc/libfc 0xf15aa126 fc_seq_els_rsp_send +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x0158a8b9 iscsi_requeue_task +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x02842984 iscsi_conn_setup +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x083bd6b0 iscsi_queuecommand +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x12b2ad06 iscsi_switch_str_param +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x13e42877 iscsi_itt_to_ctask +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x174aaeb8 iscsi_session_failure +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x174d9751 iscsi_conn_queue_work +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x1ed83d58 iscsi_session_recovery_timedout +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x2092aa0d iscsi_prep_data_out_pdu +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x289a0c00 iscsi_complete_scsi_task +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x2bf8e7d5 iscsi_conn_bind +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x2c45f03f iscsi_conn_start +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x2fab6fa6 iscsi_itt_to_task +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x3bef2f73 iscsi_pool_init +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x3df99cce iscsi_conn_failure +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x407d9dcf iscsi_session_get_param +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x41b4c5c0 iscsi_put_task +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x56531562 iscsi_session_setup +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x5d5139a3 iscsi_eh_device_reset +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x62aad059 iscsi_host_set_param +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x6c0fa069 iscsi_conn_get_param +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x6e6250c8 iscsi_update_cmdsn +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x6fad6dc8 iscsi_eh_abort +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x7178db2d iscsi_suspend_tx +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x738c21ed iscsi_session_teardown +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x774962e3 __iscsi_get_task +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x7f819cea iscsi_host_alloc +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x80e114c1 iscsi_set_param +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x81e25fe3 iscsi_complete_pdu +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x82530e1f iscsi_eh_session_reset +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x847c5c34 iscsi_conn_send_pdu +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x8d303b1b iscsi_pool_free +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x8f50fe25 iscsi_target_alloc +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x9077f5f0 __iscsi_complete_pdu +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x95b90cec iscsi_host_remove +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x9dbb7ad3 iscsi_verify_itt +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0xa0ad3a4b iscsi_suspend_queue +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0xb637d195 iscsi_host_get_param +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0xcdff7a5e __iscsi_put_task +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0xda29c26d iscsi_eh_cmd_timed_out +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0xe92504d5 iscsi_conn_teardown +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0xeab9cbd5 iscsi_conn_get_addr_param +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0xef7471d7 iscsi_conn_stop +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0xf9bb23b5 iscsi_eh_recover_target +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0xfbac4224 iscsi_host_free +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0xfe0f26ac iscsi_host_add +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi_tcp 0x143424cc iscsi_segment_init_linear +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi_tcp 0x17b0db98 iscsi_tcp_dgst_header +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi_tcp 0x1da40f69 iscsi_tcp_hdr_recv_prep +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi_tcp 0x28162c1d iscsi_tcp_segment_unmap +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi_tcp 0x2bab4e3b iscsi_tcp_r2tpool_free +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi_tcp 0x4c1fa277 iscsi_tcp_conn_get_stats +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi_tcp 0x4cbee5ad iscsi_tcp_recv_segment_is_hdr +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi_tcp 0x4ecbb6cd iscsi_tcp_task_init +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi_tcp 0x54bbff36 iscsi_segment_seek_sg +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi_tcp 0x6e892b88 iscsi_tcp_segment_done +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi_tcp 0x792996c9 iscsi_tcp_recv_skb +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi_tcp 0x973d84a8 iscsi_tcp_conn_setup +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi_tcp 0xade2049b iscsi_tcp_cleanup_task +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi_tcp 0xcf645339 iscsi_tcp_set_max_r2t +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi_tcp 0xe540a82e iscsi_tcp_conn_teardown +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi_tcp 0xe82e3397 iscsi_tcp_task_xmit +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi_tcp 0xf97f6a1b iscsi_tcp_r2tpool_alloc +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0x1011b2fc sas_eh_target_reset_handler +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0x1592bafe sas_change_queue_depth +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0x1d8c0e0b sas_alloc_slow_task +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0x20dd97c2 sas_unregister_ha +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0x24459504 sas_queuecommand +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0x2a952e5b sas_slave_configure +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0x33f9fd69 dev_attr_phy_event_threshold +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0x3742b446 sas_target_alloc +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0x5eedc50b sas_ata_schedule_reset +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0x6231c0aa sas_phy_reset +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0x679cb8dd sas_eh_device_reset_handler +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0x6a1e6b66 sas_ioctl +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0x6c2fa218 sas_get_local_phy +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0x80814bf4 sas_domain_attach_transport +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0x90ec582a sas_task_abort +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0x92904a0a sas_request_addr +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0xa648656c sas_alloc_task +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0xabf7dcee sas_free_task +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0xb56a9c72 sas_target_destroy +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0xd790260a sas_drain_work +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0xdc3c4932 sas_bios_param +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0xe4956e3d sas_register_ha +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0xf6e9e51b sas_eh_abort_handler +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0xfa83d158 sas_ssp_task_response +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x0f331ca5 iscsi_create_conn +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x11476927 iscsi_flashnode_bus_match +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x191ccaad __tracepoint_iscsi_dbg_sw_tcp +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x2397e0db iscsi_post_host_event +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x249c5198 iscsi_register_transport +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x285095aa iscsi_session_event +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x2f4256fc iscsi_conn_error_event +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x300d66cf iscsi_recv_pdu +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x352451d8 iscsi_destroy_conn +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x367ce5ba iscsi_ping_comp_event +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x3dc2768b iscsi_conn_login_event +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x3f6eafd9 iscsi_create_endpoint +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x418c1250 iscsi_is_session_dev +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x427d4089 iscsi_get_port_state_name +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x453c4380 iscsi_find_flashnode_sess +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x4a04dafd iscsi_block_session +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x4a765554 iscsi_destroy_flashnode_sess +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x4e3e7686 iscsi_offload_mesg +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x5935e463 iscsi_host_for_each_session +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x5d9d2b2c __tracepoint_iscsi_dbg_eh +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x5f42376e iscsi_alloc_session +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x60f5b176 iscsi_find_flashnode_conn +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x635103bf iscsi_destroy_iface +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x63eb77f4 iscsi_unregister_transport +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x6520fec2 __tracepoint_iscsi_dbg_session +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x699fe53e iscsi_get_discovery_parent_name +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x6ae2e4f6 iscsi_block_scsi_eh +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x6c034ba4 iscsi_create_session +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x70026a2a iscsi_remove_session +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x79b138c0 iscsi_create_iface +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x7cd7d6be __tracepoint_iscsi_dbg_conn +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x84a005f1 iscsi_get_router_state_name +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x85a2bcc2 __tracepoint_iscsi_dbg_tcp +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x8e6ad8b8 iscsi_dbg_trace +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x9bc45861 iscsi_free_session +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0xa669f17d iscsi_destroy_all_flashnode +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0xaa0b4024 iscsi_unblock_session +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0xae70dba9 iscsi_scan_finished +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0xbc071179 iscsi_get_ipaddress_state_name +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0xbf765e97 iscsi_lookup_endpoint +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0xd4600a8f iscsi_create_flashnode_conn +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0xd9f7a6b1 iscsi_is_session_online +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0xe1fa7149 iscsi_get_port_speed_name +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0xe46d702a iscsi_add_session +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0xe9509fb6 iscsi_session_chkready +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0xeaabfebf iscsi_create_flashnode_sess +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0xff83dad8 iscsi_destroy_endpoint +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_sas 0x2fdc72a0 sas_tlr_supported +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_sas 0x7ed1a9b4 sas_is_tlr_enabled +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_sas 0x9d17bc0f sas_enable_tlr +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_sas 0xe774abb1 sas_disable_tlr +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 0xcffa2aff spi_populate_width_msg +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_spi 0xf318ae90 spi_populate_tag_msg +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_srp 0x0a211775 srp_rport_add +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_srp 0x1902178a srp_tmo_valid +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_srp 0x4b555a07 srp_rport_del +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_srp 0x506cf85d srp_remove_host +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_srp 0x55fe28e1 srp_attach_transport +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_srp 0x67ff23e2 srp_release_transport +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_srp 0x91aac438 srp_stop_rport_timers +EXPORT_SYMBOL_GPL drivers/scsi/ufs/ufshcd-core 0x0ffed48a ufshcd_hba_enable +EXPORT_SYMBOL_GPL drivers/scsi/ufs/ufshcd-core 0x16e531bb ufshcd_init +EXPORT_SYMBOL_GPL drivers/scsi/ufs/ufshcd-core 0x1abbb325 ufshcd_config_pwr_mode +EXPORT_SYMBOL_GPL drivers/scsi/ufs/ufshcd-core 0x1cea70d6 ufshcd_uic_hibern8_exit +EXPORT_SYMBOL_GPL drivers/scsi/ufs/ufshcd-core 0x2af3821c ufshcd_dealloc_host +EXPORT_SYMBOL_GPL drivers/scsi/ufs/ufshcd-core 0x328486ac ufshcd_fixup_dev_quirks +EXPORT_SYMBOL_GPL drivers/scsi/ufs/ufshcd-core 0x38698efe ufshcd_make_hba_operational +EXPORT_SYMBOL_GPL drivers/scsi/ufs/ufshcd-core 0x47212b70 ufshcd_dump_regs +EXPORT_SYMBOL_GPL drivers/scsi/ufs/ufshcd-core 0x4fd72e48 ufshcd_auto_hibern8_update +EXPORT_SYMBOL_GPL drivers/scsi/ufs/ufshcd-core 0x511edfa9 ufshcd_release +EXPORT_SYMBOL_GPL drivers/scsi/ufs/ufshcd-core 0x5ce5f302 ufshcd_dme_set_attr +EXPORT_SYMBOL_GPL drivers/scsi/ufs/ufshcd-core 0x5d588c32 ufshcd_update_reg_hist +EXPORT_SYMBOL_GPL drivers/scsi/ufs/ufshcd-core 0x68194dc4 ufshcd_dme_get_attr +EXPORT_SYMBOL_GPL drivers/scsi/ufs/ufshcd-core 0x7095ad94 ufshcd_remove +EXPORT_SYMBOL_GPL drivers/scsi/ufs/ufshcd-core 0x723b1abf ufshcd_delay_us +EXPORT_SYMBOL_GPL drivers/scsi/ufs/ufshcd-core 0xa94ef593 ufshcd_hold +EXPORT_SYMBOL_GPL drivers/scsi/ufs/ufshcd-core 0xc5a04e5d ufshcd_link_recovery +EXPORT_SYMBOL_GPL drivers/scsi/ufs/ufshcd-pltfrm 0x439eb571 ufshcd_pltfrm_runtime_suspend +EXPORT_SYMBOL_GPL drivers/scsi/ufs/ufshcd-pltfrm 0x87e2fd2f ufshcd_pltfrm_runtime_resume +EXPORT_SYMBOL_GPL drivers/scsi/ufs/ufshcd-pltfrm 0xa91b2c57 ufshcd_pltfrm_suspend +EXPORT_SYMBOL_GPL drivers/scsi/ufs/ufshcd-pltfrm 0xc8b6ae31 ufshcd_pltfrm_init +EXPORT_SYMBOL_GPL drivers/scsi/ufs/ufshcd-pltfrm 0xca151c2d ufshcd_pltfrm_shutdown +EXPORT_SYMBOL_GPL drivers/scsi/ufs/ufshcd-pltfrm 0xd73ce2ab ufshcd_pltfrm_resume +EXPORT_SYMBOL_GPL drivers/scsi/ufs/ufshcd-pltfrm 0xebe17933 ufshcd_pltfrm_runtime_idle +EXPORT_SYMBOL_GPL drivers/scsi/ufs/ufshcd-pltfrm 0xff85cd6b ufshcd_get_pwr_dev_param +EXPORT_SYMBOL_GPL drivers/siox/siox-core 0x46a06e2c siox_device_connected +EXPORT_SYMBOL_GPL drivers/siox/siox-core 0x84b4f441 siox_master_register +EXPORT_SYMBOL_GPL drivers/siox/siox-core 0x9e51b034 siox_device_synced +EXPORT_SYMBOL_GPL drivers/siox/siox-core 0xd39730b3 __siox_driver_register +EXPORT_SYMBOL_GPL drivers/siox/siox-core 0xd7bf0321 siox_master_alloc +EXPORT_SYMBOL_GPL drivers/siox/siox-core 0xed7c0953 siox_master_unregister +EXPORT_SYMBOL_GPL drivers/slimbus/slimbus 0x12692efb slim_get_device +EXPORT_SYMBOL_GPL drivers/slimbus/slimbus 0x190e5b21 slim_stream_unprepare +EXPORT_SYMBOL_GPL drivers/slimbus/slimbus 0x1c2a3ea7 __slim_driver_register +EXPORT_SYMBOL_GPL drivers/slimbus/slimbus 0x2f6df612 slim_device_report_present +EXPORT_SYMBOL_GPL drivers/slimbus/slimbus 0x32c6fad2 slim_writeb +EXPORT_SYMBOL_GPL drivers/slimbus/slimbus 0x58107b76 slim_ctrl_clk_pause +EXPORT_SYMBOL_GPL drivers/slimbus/slimbus 0x62eb467f slim_alloc_txn_tid +EXPORT_SYMBOL_GPL drivers/slimbus/slimbus 0x65bb4d4e slim_free_txn_tid +EXPORT_SYMBOL_GPL drivers/slimbus/slimbus 0x707564fa slim_msg_response +EXPORT_SYMBOL_GPL drivers/slimbus/slimbus 0x77da9200 slim_stream_allocate +EXPORT_SYMBOL_GPL drivers/slimbus/slimbus 0x7b84308b slim_stream_prepare +EXPORT_SYMBOL_GPL drivers/slimbus/slimbus 0x808d2677 slim_write +EXPORT_SYMBOL_GPL drivers/slimbus/slimbus 0x8204bd94 slim_driver_unregister +EXPORT_SYMBOL_GPL drivers/slimbus/slimbus 0x821d2f73 slim_get_logical_addr +EXPORT_SYMBOL_GPL drivers/slimbus/slimbus 0x86e8a3c9 slim_do_transfer +EXPORT_SYMBOL_GPL drivers/slimbus/slimbus 0x87bf1d0e slim_stream_enable +EXPORT_SYMBOL_GPL drivers/slimbus/slimbus 0x952c2f26 of_slim_get_device +EXPORT_SYMBOL_GPL drivers/slimbus/slimbus 0x9ca42d1b slim_register_controller +EXPORT_SYMBOL_GPL drivers/slimbus/slimbus 0xa253d55b slim_stream_free +EXPORT_SYMBOL_GPL drivers/slimbus/slimbus 0xb33a0179 slim_read +EXPORT_SYMBOL_GPL drivers/slimbus/slimbus 0xb51e8156 slim_xfer_msg +EXPORT_SYMBOL_GPL drivers/slimbus/slimbus 0xca670ae6 slim_readb +EXPORT_SYMBOL_GPL drivers/slimbus/slimbus 0xdbde1503 slim_stream_disable +EXPORT_SYMBOL_GPL drivers/slimbus/slimbus 0xe9cdfc85 slim_report_absent +EXPORT_SYMBOL_GPL drivers/slimbus/slimbus 0xf2d27d66 slim_unregister_controller +EXPORT_SYMBOL_GPL drivers/slimbus/slimbus 0xfa2a3912 slimbus_bus +EXPORT_SYMBOL_GPL drivers/soc/amlogic/meson-canvas 0x2baeeff8 meson_canvas_get +EXPORT_SYMBOL_GPL drivers/soc/amlogic/meson-canvas 0x494128eb meson_canvas_alloc +EXPORT_SYMBOL_GPL drivers/soc/amlogic/meson-canvas 0x673c5a86 meson_canvas_config +EXPORT_SYMBOL_GPL drivers/soc/amlogic/meson-canvas 0xfbd79150 meson_canvas_free +EXPORT_SYMBOL_GPL drivers/soc/qcom/apr 0x9d2006b0 apr_send_pkt +EXPORT_SYMBOL_GPL drivers/soc/qcom/apr 0xae199f2c apr_driver_unregister +EXPORT_SYMBOL_GPL drivers/soc/qcom/apr 0xd3ebbd8d __apr_driver_register +EXPORT_SYMBOL_GPL drivers/soc/qcom/apr 0xe5f58c3b aprbus +EXPORT_SYMBOL_GPL drivers/soc/qcom/llcc-qcom 0x06285798 llcc_slice_deactivate +EXPORT_SYMBOL_GPL drivers/soc/qcom/llcc-qcom 0x09afc16e llcc_slice_activate +EXPORT_SYMBOL_GPL drivers/soc/qcom/llcc-qcom 0x14f99b76 llcc_get_slice_id +EXPORT_SYMBOL_GPL drivers/soc/qcom/llcc-qcom 0x2027e82d llcc_slice_getd +EXPORT_SYMBOL_GPL drivers/soc/qcom/llcc-qcom 0x62ff6e92 llcc_slice_putd +EXPORT_SYMBOL_GPL drivers/soc/qcom/llcc-qcom 0xdffee709 llcc_get_slice_size +EXPORT_SYMBOL_GPL drivers/soc/qcom/mdt_loader 0x1f1a6ac6 qcom_mdt_load_no_init +EXPORT_SYMBOL_GPL drivers/soc/qcom/mdt_loader 0x42f47788 qcom_mdt_read_metadata +EXPORT_SYMBOL_GPL drivers/soc/qcom/mdt_loader 0x45e1cd7c qcom_mdt_get_size +EXPORT_SYMBOL_GPL drivers/soc/qcom/mdt_loader 0x813711c3 qcom_mdt_load +EXPORT_SYMBOL_GPL drivers/soundwire/soundwire-bus 0x47ba2b59 sdw_bus_type +EXPORT_SYMBOL_GPL drivers/soundwire/soundwire-bus 0x91017455 sdw_unregister_driver +EXPORT_SYMBOL_GPL drivers/soundwire/soundwire-bus 0xd0069afa __sdw_register_driver +EXPORT_SYMBOL_GPL drivers/spi/spi-bitbang 0x0161fa85 spi_bitbang_init +EXPORT_SYMBOL_GPL drivers/spi/spi-bitbang 0x2d030ba1 spi_bitbang_start +EXPORT_SYMBOL_GPL drivers/spi/spi-bitbang 0x36b0acbb spi_bitbang_cleanup +EXPORT_SYMBOL_GPL drivers/spi/spi-bitbang 0x37f5caf7 spi_bitbang_setup_transfer +EXPORT_SYMBOL_GPL drivers/spi/spi-bitbang 0x4f9bcc9d spi_bitbang_stop +EXPORT_SYMBOL_GPL drivers/spi/spi-bitbang 0xd087d5fd spi_bitbang_setup +EXPORT_SYMBOL_GPL drivers/spi/spi-dw 0x0df9c2d9 dw_spi_dma_setup_generic +EXPORT_SYMBOL_GPL drivers/spi/spi-dw 0x16c980c7 dw_spi_update_cr0_v1_01a +EXPORT_SYMBOL_GPL drivers/spi/spi-dw 0x1e298b46 dw_spi_dma_setup_mfld +EXPORT_SYMBOL_GPL drivers/spi/spi-dw 0x31aa8884 dw_spi_suspend_host +EXPORT_SYMBOL_GPL drivers/spi/spi-dw 0x603c40c4 dw_spi_set_cs +EXPORT_SYMBOL_GPL drivers/spi/spi-dw 0x71ffd85f dw_spi_add_host +EXPORT_SYMBOL_GPL drivers/spi/spi-dw 0xc3c086b1 dw_spi_resume_host +EXPORT_SYMBOL_GPL drivers/spi/spi-dw 0xe1e77c5e dw_spi_remove_host +EXPORT_SYMBOL_GPL drivers/spi/spi-dw 0xfc8c8a5c dw_spi_update_cr0 +EXPORT_SYMBOL_GPL drivers/spi/spi-loopback-test 0x2fc06e72 spi_test_execute_msg +EXPORT_SYMBOL_GPL drivers/spi/spi-loopback-test 0x7f4ed6e5 spi_test_run_tests +EXPORT_SYMBOL_GPL drivers/spi/spi-loopback-test 0xff3981be spi_test_run_test +EXPORT_SYMBOL_GPL drivers/spmi/spmi 0x205ae43c spmi_ext_register_write +EXPORT_SYMBOL_GPL drivers/spmi/spmi 0x2063f98f spmi_command_reset +EXPORT_SYMBOL_GPL drivers/spmi/spmi 0x24b3d998 __spmi_driver_register +EXPORT_SYMBOL_GPL drivers/spmi/spmi 0x31358cce spmi_command_shutdown +EXPORT_SYMBOL_GPL drivers/spmi/spmi 0x5abe464f spmi_ext_register_read +EXPORT_SYMBOL_GPL drivers/spmi/spmi 0x5f1e0f75 spmi_controller_alloc +EXPORT_SYMBOL_GPL drivers/spmi/spmi 0x62a67a71 spmi_register_write +EXPORT_SYMBOL_GPL drivers/spmi/spmi 0x6bf18d30 spmi_controller_add +EXPORT_SYMBOL_GPL drivers/spmi/spmi 0x8bd9e373 spmi_command_wakeup +EXPORT_SYMBOL_GPL drivers/spmi/spmi 0x8f0b1731 spmi_command_sleep +EXPORT_SYMBOL_GPL drivers/spmi/spmi 0xae84e4ef spmi_register_zero_write +EXPORT_SYMBOL_GPL drivers/spmi/spmi 0xd8e68c3f spmi_controller_remove +EXPORT_SYMBOL_GPL drivers/spmi/spmi 0xd9468a2b spmi_ext_register_readl +EXPORT_SYMBOL_GPL drivers/spmi/spmi 0xda1cbd36 spmi_device_alloc +EXPORT_SYMBOL_GPL drivers/spmi/spmi 0xe5a4638f spmi_device_add +EXPORT_SYMBOL_GPL drivers/spmi/spmi 0xe5b9b3c5 spmi_ext_register_writel +EXPORT_SYMBOL_GPL drivers/spmi/spmi 0xf6928fff spmi_register_read +EXPORT_SYMBOL_GPL drivers/spmi/spmi 0xf8cec708 spmi_device_remove +EXPORT_SYMBOL_GPL drivers/ssb/ssb 0xd1ffbf06 ssb_pmu_spuravoid_pllupdate +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x0724edce comedi_auto_config +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x0b6e916d comedi_dio_update_state +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x0cd330f4 range_unknown +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x13494ab3 comedi_inc_scan_progress +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x1d0f05e8 comedi_timeout +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x1f03751a comedi_buf_write_samples +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x21102f87 range_0_32mA +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x279302be comedi_load_firmware +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x2b29f62f comedi_alloc_spriv +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x2cc6afbf comedi_dev_put +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x2f0ad9d3 range_bipolar5 +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x4236eaaf range_4_20mA +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x491d107e comedi_buf_read_n_available +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x4b26305c comedi_buf_write_free +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x4fe634f3 range_bipolar2_5 +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x5e9a022d comedi_set_hw_dev +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x67d8214f comedi_buf_write_alloc +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x68c1032a comedi_dev_get_from_minor +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x6de136f3 comedi_alloc_subdev_readback +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x8113872c range_unipolar10 +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x843c49c1 comedi_auto_unconfig +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x845b2afd comedi_buf_read_free +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x976ae24b comedi_buf_read_samples +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x9f834070 comedi_event +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0xa0432581 comedi_handle_events +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0xadcd65c2 comedi_is_subdevice_running +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0xaf534c2c comedi_nsamples_left +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0xb56d335a comedi_nscans_left +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0xb679cebc range_0_20mA +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0xba471791 comedi_dio_insn_config +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0xbb52fc7f range_bipolar10 +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0xbdbe75c6 range_unipolar2_5 +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0xc6c6cf2b comedi_buf_read_alloc +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0xc7ca5137 comedi_driver_unregister +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0xc806e6f5 comedi_check_chanlist +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0xd404bbfe comedi_readback_insn_read +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0xd858562f comedi_request_region +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0xdb2044b2 range_unipolar5 +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0xe36e8c57 comedi_bytes_per_scan_cmd +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0xe44f46f8 comedi_alloc_devpriv +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0xe890eb3a comedi_driver_register +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0xf8e7d2f3 comedi_bytes_per_scan +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0xf93a663b comedi_set_spriv_auto_free +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0xfaff5b3e __comedi_request_region +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0xfb9f9e06 comedi_legacy_detach +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0xfd28790a comedi_alloc_subdevices +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi_pci 0x15f0f81a comedi_pci_detach +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi_pci 0x2aa5b750 comedi_pci_driver_unregister +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi_pci 0x2dc90bc1 comedi_pci_driver_register +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi_pci 0x541fc84c comedi_pci_auto_config +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi_pci 0x72bb07c7 comedi_to_pci_dev +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi_pci 0xa8e52caf comedi_pci_disable +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi_pci 0xc9779f95 comedi_pci_auto_unconfig +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi_pci 0xcfef6f34 comedi_pci_enable +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi_usb 0x167cc1bd comedi_to_usb_dev +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi_usb 0x485a78a5 comedi_usb_auto_config +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi_usb 0x7711014a comedi_usb_auto_unconfig +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi_usb 0xacc01e69 comedi_to_usb_interface +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi_usb 0xdc499547 comedi_usb_driver_register +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi_usb 0xf8a02e91 comedi_usb_driver_unregister +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/addi_watchdog 0x1189ab3f addi_watchdog_init +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/addi_watchdog 0x79f4a6cf addi_watchdog_reset +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/amplc_dio200_common 0x2219d055 amplc_dio200_common_attach +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/amplc_dio200_common 0xc60cacab amplc_dio200_set_enhance +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/amplc_pc236_common 0x67df0b27 amplc_pc236_common_attach +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/comedi_8254 0x2d01b467 comedi_8254_set_busy +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/comedi_8254 0x3259456c comedi_8254_mm_init +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/comedi_8254 0x377f508c comedi_8254_cascade_ns_to_timer +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/comedi_8254 0x50747c24 comedi_8254_update_divisors +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/comedi_8254 0x53162539 comedi_8254_subdevice_init +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/comedi_8254 0x99c06f5d comedi_8254_load +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/comedi_8254 0x9a3f83eb comedi_8254_init +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/comedi_8254 0x9b1fea10 comedi_8254_ns_to_timer +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/comedi_8254 0xb016921a comedi_8254_read +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/comedi_8254 0xcc639d18 comedi_8254_write +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/comedi_8254 0xd0aa5deb comedi_8254_set_mode +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/comedi_8254 0xe9a12ae1 comedi_8254_status +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/comedi_8254 0xfb4e3a77 comedi_8254_pacer_enable +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/comedi_8255 0x0e53aca4 subdev_8255_regbase +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/comedi_8255 0xc2d23a49 subdev_8255_mm_init +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/comedi_8255 0xf215775b subdev_8255_init +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/das08 0xf999afb5 das08_common_attach +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/mite 0x0e20d196 mite_init_ring_descriptors +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/mite 0x1a1edd53 mite_ack_linkc +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/mite 0x1f2f41c1 mite_prep_dma +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/mite 0x26bcf7b4 mite_release_channel +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/mite 0x51ba2c2e mite_dma_disarm +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/mite 0x5f60134b mite_request_channel_in_range +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/mite 0x604656b8 mite_alloc_ring +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/mite 0x81411384 mite_request_channel +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/mite 0x9b4f42bb mite_buf_change +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/mite 0xabbae5a8 mite_detach +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/mite 0xb82aadff mite_dma_arm +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/mite 0xc525c631 mite_bytes_in_transit +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/mite 0xca0cd935 mite_done +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/mite 0xce8ca3dd mite_free_ring +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/mite 0xe052fbea mite_attach +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/mite 0xfc100ab2 mite_sync_dma +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/ni_labpc_common 0x71f6284f labpc_common_attach +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/ni_labpc_common 0xb3b11d40 labpc_common_detach +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/ni_routing 0x076bc308 ni_find_route_source +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/ni_routing 0x0921123e ni_lookup_route_register +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/ni_routing 0x1facf7f8 ni_is_cmd_dest +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/ni_routing 0x64443d67 ni_get_valid_routes +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/ni_routing 0x6c18c54e ni_count_valid_routes +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/ni_routing 0x85e75c94 ni_assign_device_routes +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/ni_routing 0x863a306d ni_sort_device_routes +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/ni_routing 0x8ab47ba4 ni_route_set_has_source +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/ni_routing 0x8f0f0901 ni_find_route_set +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/ni_routing 0xb3e302a3 ni_route_to_register +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/ni_tio 0x0f6fb38e ni_tio_arm +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/ni_tio 0x17a9d056 ni_tio_insn_write +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/ni_tio 0x2ee9f104 ni_tio_unset_routing +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/ni_tio 0x45377258 ni_tio_set_gate_src_raw +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/ni_tio 0x4f06cbb2 ni_tio_get_soft_copy +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/ni_tio 0x6ce4a5fd ni_tio_set_bits +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/ni_tio 0x7278276c ni_tio_insn_config +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/ni_tio 0x7d4c98bc ni_tio_set_gate_src +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/ni_tio 0x84cb9e9a ni_tio_init_counter +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/ni_tio 0xa42ccd5c ni_tio_write +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/ni_tio 0xaa307f05 ni_gpct_device_destroy +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/ni_tio 0xac9229d8 ni_tio_read +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/ni_tio 0xcfa7632d ni_gpct_device_construct +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/ni_tio 0xd09ccbf6 ni_tio_get_routing +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/ni_tio 0xd9379d5e ni_tio_set_routing +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/ni_tio 0xf94b7dc9 ni_tio_insn_read +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/ni_tiocmd 0x08bf687c ni_tio_set_mite_channel +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/ni_tiocmd 0x1973576f ni_tio_cmd +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/ni_tiocmd 0x5359936e ni_tio_cmdtest +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/ni_tiocmd 0x78bd5cb5 ni_tio_handle_interrupt +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/ni_tiocmd 0xd6c6299b ni_tio_cancel +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/ni_tiocmd 0xebd12141 ni_tio_acknowledge +EXPORT_SYMBOL_GPL drivers/staging/comedi/kcomedilib/kcomedilib 0x02313f50 comedi_open +EXPORT_SYMBOL_GPL drivers/staging/comedi/kcomedilib/kcomedilib 0x389a4b3f comedi_find_subdevice_by_type +EXPORT_SYMBOL_GPL drivers/staging/comedi/kcomedilib/kcomedilib 0x5bf6e5fe comedi_get_n_channels +EXPORT_SYMBOL_GPL drivers/staging/comedi/kcomedilib/kcomedilib 0xa5863ff6 comedi_dio_config +EXPORT_SYMBOL_GPL drivers/staging/comedi/kcomedilib/kcomedilib 0xd4c28bd3 comedi_dio_bitfield2 +EXPORT_SYMBOL_GPL drivers/staging/comedi/kcomedilib/kcomedilib 0xebc28ffd comedi_dio_get_config +EXPORT_SYMBOL_GPL drivers/staging/comedi/kcomedilib/kcomedilib 0xf72c65ff comedi_close +EXPORT_SYMBOL_GPL drivers/staging/fieldbus/anybuss/anybuss_core 0x0261f640 anybuss_host_common_probe +EXPORT_SYMBOL_GPL drivers/staging/fieldbus/anybuss/anybuss_core 0x0a122ca2 anybuss_recv_msg +EXPORT_SYMBOL_GPL drivers/staging/fieldbus/anybuss/anybuss_core 0x0cbb3828 anybuss_client_driver_register +EXPORT_SYMBOL_GPL drivers/staging/fieldbus/anybuss/anybuss_core 0x10d51aef anybuss_send_msg +EXPORT_SYMBOL_GPL drivers/staging/fieldbus/anybuss/anybuss_core 0x4d97a5db anybuss_set_power +EXPORT_SYMBOL_GPL drivers/staging/fieldbus/anybuss/anybuss_core 0x51fc727a anybuss_start_init +EXPORT_SYMBOL_GPL drivers/staging/fieldbus/anybuss/anybuss_core 0x6ba43ba8 anybuss_read_output +EXPORT_SYMBOL_GPL drivers/staging/fieldbus/anybuss/anybuss_core 0x72eccc0f anybuss_read_fbctrl +EXPORT_SYMBOL_GPL drivers/staging/fieldbus/anybuss/anybuss_core 0x7324f7d7 anybuss_write_input +EXPORT_SYMBOL_GPL drivers/staging/fieldbus/anybuss/anybuss_core 0x8c4b9751 devm_anybuss_host_common_probe +EXPORT_SYMBOL_GPL drivers/staging/fieldbus/anybuss/anybuss_core 0xb684c4d6 anybuss_send_ext +EXPORT_SYMBOL_GPL drivers/staging/fieldbus/anybuss/anybuss_core 0xdad556fd anybuss_client_driver_unregister +EXPORT_SYMBOL_GPL drivers/staging/fieldbus/anybuss/anybuss_core 0xe80d76b2 anybuss_finish_init +EXPORT_SYMBOL_GPL drivers/staging/fieldbus/anybuss/anybuss_core 0xfce879ad anybuss_host_common_remove +EXPORT_SYMBOL_GPL drivers/staging/fieldbus/fieldbus_dev 0x294f58d5 fieldbus_dev_area_updated +EXPORT_SYMBOL_GPL drivers/staging/fieldbus/fieldbus_dev 0x813c8112 fieldbus_dev_register +EXPORT_SYMBOL_GPL drivers/staging/fieldbus/fieldbus_dev 0xa4d3cd39 fieldbus_dev_online_changed +EXPORT_SYMBOL_GPL drivers/staging/fieldbus/fieldbus_dev 0xc79a4070 fieldbus_dev_unregister +EXPORT_SYMBOL_GPL drivers/staging/greybus/gb-audio-apbridgea 0x0fc01952 gb_audio_apbridgea_prepare_tx +EXPORT_SYMBOL_GPL drivers/staging/greybus/gb-audio-apbridgea 0x26c7d395 gb_audio_apbridgea_set_tx_data_size +EXPORT_SYMBOL_GPL drivers/staging/greybus/gb-audio-apbridgea 0x2c53c471 gb_audio_apbridgea_register_cport +EXPORT_SYMBOL_GPL drivers/staging/greybus/gb-audio-apbridgea 0x5f68a4db gb_audio_apbridgea_start_rx +EXPORT_SYMBOL_GPL drivers/staging/greybus/gb-audio-apbridgea 0x710e0739 gb_audio_apbridgea_prepare_rx +EXPORT_SYMBOL_GPL drivers/staging/greybus/gb-audio-apbridgea 0x83f6bfe2 gb_audio_apbridgea_stop_rx +EXPORT_SYMBOL_GPL drivers/staging/greybus/gb-audio-apbridgea 0x8c8042ed gb_audio_apbridgea_shutdown_tx +EXPORT_SYMBOL_GPL drivers/staging/greybus/gb-audio-apbridgea 0xa6ea7188 gb_audio_apbridgea_set_config +EXPORT_SYMBOL_GPL drivers/staging/greybus/gb-audio-apbridgea 0xb74becec gb_audio_apbridgea_unregister_cport +EXPORT_SYMBOL_GPL drivers/staging/greybus/gb-audio-apbridgea 0xd380263c gb_audio_apbridgea_set_rx_data_size +EXPORT_SYMBOL_GPL drivers/staging/greybus/gb-audio-apbridgea 0xf24e5c86 gb_audio_apbridgea_shutdown_rx +EXPORT_SYMBOL_GPL drivers/staging/greybus/gb-audio-apbridgea 0xf6251976 gb_audio_apbridgea_start_tx +EXPORT_SYMBOL_GPL drivers/staging/greybus/gb-audio-apbridgea 0xfd38a189 gb_audio_apbridgea_stop_tx +EXPORT_SYMBOL_GPL drivers/staging/greybus/gb-audio-gb 0x2330ea33 gb_audio_gb_set_control +EXPORT_SYMBOL_GPL drivers/staging/greybus/gb-audio-gb 0x3e981cde gb_audio_gb_get_control +EXPORT_SYMBOL_GPL drivers/staging/greybus/gb-audio-gb 0x45e6fb21 gb_audio_gb_activate_tx +EXPORT_SYMBOL_GPL drivers/staging/greybus/gb-audio-gb 0x4d3d4d6d gb_audio_gb_activate_rx +EXPORT_SYMBOL_GPL drivers/staging/greybus/gb-audio-gb 0x59b24c36 gb_audio_gb_disable_widget +EXPORT_SYMBOL_GPL drivers/staging/greybus/gb-audio-gb 0x68855a04 gb_audio_gb_get_pcm +EXPORT_SYMBOL_GPL drivers/staging/greybus/gb-audio-gb 0x75ee29e9 gb_audio_gb_set_rx_data_size +EXPORT_SYMBOL_GPL drivers/staging/greybus/gb-audio-gb 0xd2607cf2 gb_audio_gb_deactivate_tx +EXPORT_SYMBOL_GPL drivers/staging/greybus/gb-audio-gb 0xdabbcabe gb_audio_gb_deactivate_rx +EXPORT_SYMBOL_GPL drivers/staging/greybus/gb-audio-gb 0xe5b7da98 gb_audio_gb_enable_widget +EXPORT_SYMBOL_GPL drivers/staging/greybus/gb-audio-gb 0xed2b45bc gb_audio_gb_set_tx_data_size +EXPORT_SYMBOL_GPL drivers/staging/greybus/gb-audio-gb 0xeed0c619 gb_audio_gb_set_pcm +EXPORT_SYMBOL_GPL drivers/staging/greybus/gb-audio-gb 0xf0a3fdde gb_audio_gb_get_topology +EXPORT_SYMBOL_GPL drivers/staging/greybus/gb-audio-manager 0x19e9e6b1 gb_audio_manager_remove_all +EXPORT_SYMBOL_GPL drivers/staging/greybus/gb-audio-manager 0x32e6391e gb_audio_manager_remove +EXPORT_SYMBOL_GPL drivers/staging/greybus/gb-audio-manager 0x5a108b0f gb_audio_manager_add +EXPORT_SYMBOL_GPL drivers/staging/greybus/gb-audio-manager 0x69afd974 gb_audio_manager_get_module +EXPORT_SYMBOL_GPL drivers/staging/greybus/gb-audio-manager 0x7016e56c gb_audio_manager_put_module +EXPORT_SYMBOL_GPL drivers/staging/greybus/gb-audio-manager 0x79eef2f8 gb_audio_manager_dump_all +EXPORT_SYMBOL_GPL drivers/staging/greybus/gb-audio-manager 0xaeac8ca2 gb_audio_manager_dump_module +EXPORT_SYMBOL_GPL drivers/staging/greybus/gb-gbphy 0x41c83e23 gb_gbphy_deregister_driver +EXPORT_SYMBOL_GPL drivers/staging/greybus/gb-gbphy 0xd36bf137 gb_gbphy_register_driver +EXPORT_SYMBOL_GPL drivers/staging/greybus/gb-spilib 0x082b6948 gb_spilib_master_init +EXPORT_SYMBOL_GPL drivers/staging/greybus/gb-spilib 0xeab561ae gb_spilib_master_exit +EXPORT_SYMBOL_GPL drivers/staging/iio/addac/adt7316 0x4d89260f adt7316_pm_ops +EXPORT_SYMBOL_GPL drivers/staging/media/imx/imx-media-common 0x0734eb43 imx_media_find_subdev_by_devname +EXPORT_SYMBOL_GPL drivers/staging/media/imx/imx-media-common 0x0938165f imx_media_capture_device_register +EXPORT_SYMBOL_GPL drivers/staging/media/imx/imx-media-common 0x0c3b288e imx_media_ipu_image_to_mbus_fmt +EXPORT_SYMBOL_GPL drivers/staging/media/imx/imx-media-common 0x0ded5c39 imx_media_capture_device_next_buf +EXPORT_SYMBOL_GPL drivers/staging/media/imx/imx-media-common 0x0f285b24 imx_media_capture_device_init +EXPORT_SYMBOL_GPL drivers/staging/media/imx/imx-media-common 0x11367c95 imx_media_pipeline_csi2_channel +EXPORT_SYMBOL_GPL drivers/staging/media/imx/imx-media-common 0x22846806 imx_media_probe_complete +EXPORT_SYMBOL_GPL drivers/staging/media/imx/imx-media-common 0x2dea1896 imx_media_try_colorimetry +EXPORT_SYMBOL_GPL drivers/staging/media/imx/imx-media-common 0x31694799 imx_media_pipeline_subdev +EXPORT_SYMBOL_GPL drivers/staging/media/imx/imx-media-common 0x3afc4948 imx_media_find_pixel_format +EXPORT_SYMBOL_GPL drivers/staging/media/imx/imx-media-common 0x3bde9b59 imx_media_free_dma_buf +EXPORT_SYMBOL_GPL drivers/staging/media/imx/imx-media-common 0x49057c4e imx_media_init_cfg +EXPORT_SYMBOL_GPL drivers/staging/media/imx/imx-media-common 0x4a715bc0 imx_media_get_pad_fwnode +EXPORT_SYMBOL_GPL drivers/staging/media/imx/imx-media-common 0x534ba9e1 imx_media_find_mbus_format +EXPORT_SYMBOL_GPL drivers/staging/media/imx/imx-media-common 0x687718fb imx_media_add_of_subdevs +EXPORT_SYMBOL_GPL drivers/staging/media/imx/imx-media-common 0x7b3c2125 imx_media_alloc_dma_buf +EXPORT_SYMBOL_GPL drivers/staging/media/imx/imx-media-common 0x8093c108 imx_media_mbus_fmt_to_pix_fmt +EXPORT_SYMBOL_GPL drivers/staging/media/imx/imx-media-common 0x8aa9eeed imx_media_find_subdev_by_fwnode +EXPORT_SYMBOL_GPL drivers/staging/media/imx/imx-media-common 0x91d69412 imx_media_pipeline_video_device +EXPORT_SYMBOL_GPL drivers/staging/media/imx/imx-media-common 0x955f8e06 imx_media_enum_pixel_formats +EXPORT_SYMBOL_GPL drivers/staging/media/imx/imx-media-common 0x9e344618 imx_media_add_video_device +EXPORT_SYMBOL_GPL drivers/staging/media/imx/imx-media-common 0xa631199b imx_media_grp_id_to_sd_name +EXPORT_SYMBOL_GPL drivers/staging/media/imx/imx-media-common 0xa9e2459f imx_media_enum_mbus_formats +EXPORT_SYMBOL_GPL drivers/staging/media/imx/imx-media-common 0xaa6bd246 imx_media_pipeline_pad +EXPORT_SYMBOL_GPL drivers/staging/media/imx/imx-media-common 0xacba838b imx_media_mbus_fmt_to_ipu_image +EXPORT_SYMBOL_GPL drivers/staging/media/imx/imx-media-common 0xb4580461 imx_media_dev_init +EXPORT_SYMBOL_GPL drivers/staging/media/imx/imx-media-common 0xc4cd8bb4 imx_media_dev_notifier_register +EXPORT_SYMBOL_GPL drivers/staging/media/imx/imx-media-common 0xc8c6886e imx_media_capture_device_remove +EXPORT_SYMBOL_GPL drivers/staging/media/imx/imx-media-common 0xcc9ae390 imx_media_init_mbus_fmt +EXPORT_SYMBOL_GPL drivers/staging/media/imx/imx-media-common 0xcca505ec imx_media_capture_device_unregister +EXPORT_SYMBOL_GPL drivers/staging/media/imx/imx-media-common 0xd23d250d imx_media_of_add_csi +EXPORT_SYMBOL_GPL drivers/staging/media/imx/imx-media-common 0xf69c3c40 imx_media_capture_device_error +EXPORT_SYMBOL_GPL drivers/staging/media/imx/imx-media-common 0xf86bc3e5 imx_media_pipeline_set_stream +EXPORT_SYMBOL_GPL drivers/staging/media/meson/vdec/meson-vdec 0x0b84dd74 codec_hevc_setup_decode_head +EXPORT_SYMBOL_GPL drivers/staging/media/meson/vdec/meson-vdec 0x115655e9 amvdec_am21c_body_size +EXPORT_SYMBOL_GPL drivers/staging/media/meson/vdec/meson-vdec 0x1cb1e6d9 amvdec_am21c_size +EXPORT_SYMBOL_GPL drivers/staging/media/meson/vdec/meson-vdec 0x20c18276 amvdec_set_canvases +EXPORT_SYMBOL_GPL drivers/staging/media/meson/vdec/meson-vdec 0x2b47c659 codec_hevc_setup_buffers +EXPORT_SYMBOL_GPL drivers/staging/media/meson/vdec/meson-vdec 0x357b2720 amvdec_dst_buf_done +EXPORT_SYMBOL_GPL drivers/staging/media/meson/vdec/meson-vdec 0x3b4ea04d amvdec_write_parser +EXPORT_SYMBOL_GPL drivers/staging/media/meson/vdec/meson-vdec 0x454eee04 amvdec_dst_buf_done_offset +EXPORT_SYMBOL_GPL drivers/staging/media/meson/vdec/meson-vdec 0x51f656c4 amvdec_read_parser +EXPORT_SYMBOL_GPL drivers/staging/media/meson/vdec/meson-vdec 0x5ff35ee8 amvdec_am21c_head_size +EXPORT_SYMBOL_GPL drivers/staging/media/meson/vdec/meson-vdec 0x6035fa68 amvdec_remove_ts +EXPORT_SYMBOL_GPL drivers/staging/media/meson/vdec/meson-vdec 0x6398395e amvdec_add_ts +EXPORT_SYMBOL_GPL drivers/staging/media/meson/vdec/meson-vdec 0xa1eea1ae amvdec_read_dos +EXPORT_SYMBOL_GPL drivers/staging/media/meson/vdec/meson-vdec 0xa3d7d32b amvdec_src_change +EXPORT_SYMBOL_GPL drivers/staging/media/meson/vdec/meson-vdec 0xa6dbfef2 amvdec_write_dos +EXPORT_SYMBOL_GPL drivers/staging/media/meson/vdec/meson-vdec 0xad410020 codec_hevc_free_mmu_headers +EXPORT_SYMBOL_GPL drivers/staging/media/meson/vdec/meson-vdec 0xad98cc30 codec_hevc_free_fbc_buffers +EXPORT_SYMBOL_GPL drivers/staging/media/meson/vdec/meson-vdec 0xb0882c72 codec_hevc_fill_mmu_map +EXPORT_SYMBOL_GPL drivers/staging/media/meson/vdec/meson-vdec 0xd6eb91ee amvdec_clear_dos_bits +EXPORT_SYMBOL_GPL drivers/staging/media/meson/vdec/meson-vdec 0xedd70cdb amvdec_write_dos_bits +EXPORT_SYMBOL_GPL drivers/staging/media/meson/vdec/meson-vdec 0xee4bf68a amvdec_dst_buf_done_idx +EXPORT_SYMBOL_GPL drivers/staging/media/meson/vdec/meson-vdec 0xf67eefc2 amvdec_get_output_size +EXPORT_SYMBOL_GPL drivers/staging/media/meson/vdec/meson-vdec 0xfc457b19 amvdec_abort +EXPORT_SYMBOL_GPL drivers/staging/media/meson/vdec/meson-vdec 0xfff1bdc8 amvdec_set_par_from_dar +EXPORT_SYMBOL_GPL drivers/staging/nvec/nvec 0x9c3d2d72 nvec_register_notifier +EXPORT_SYMBOL_GPL drivers/staging/nvec/nvec 0xa1ed6f5d nvec_msg_free +EXPORT_SYMBOL_GPL drivers/staging/nvec/nvec 0xb9752c71 nvec_unregister_notifier +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0x1bae5b0b synth_remove +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0x1bcac916 spk_do_catch_up +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0x1e39eb14 synth_putws +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0x2d3e7fbb spk_ttyio_synth_probe +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0x2e7e21d7 speakup_event +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0x345ad135 spk_serial_synth_probe +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0x37e31ea1 synth_add +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0x41a160e5 synth_buffer_empty +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0x4449e1dd synth_buffer_clear +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0x466f5eb7 synth_putwc +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0x54a48d36 spk_ttyio_synth_immediate +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0x5d613720 spk_synth_is_alive_restart +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0x76d40046 synth_buffer_skip_nonlatin1 +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0x8181ceec speakup_info +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0x834b3493 spk_var_show +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0x84dad068 synth_buffer_getc +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0x8c82dfca synth_request_region +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0x8e50055a spk_stop_serial_interrupt +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0x8fe0db01 synth_putwc_s +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0xa90c32a5 spk_do_catch_up_unicode +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0xaadb0612 synth_buffer_peek +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0xae7d6424 spk_ttyio_release +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0xb177838a spk_ttyio_ops +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0xbbd15a51 speakup_start_ttys +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0xc0817d3a spk_serial_synth_immediate +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0xc319c604 synth_putws_s +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0xd8fd86cf synth_release_region +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0xe194d0ef synth_printf +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0xe7cd4558 spk_serial_release +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0xea2d3c4b spk_serial_io_ops +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0xec87bb27 spk_synth_flush +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0xf05afe7a spk_var_store +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0xf75317d7 spk_synth_is_alive_nop +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0xf9a68401 spk_synth_get_index +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0xfd189eef spk_get_var +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0xfd78643c synth_current +EXPORT_SYMBOL_GPL drivers/staging/wilc1000/wilc1000 0x51e38721 host_wakeup_notify +EXPORT_SYMBOL_GPL drivers/staging/wilc1000/wilc1000 0x67478c01 chip_allow_sleep +EXPORT_SYMBOL_GPL drivers/staging/wilc1000/wilc1000 0x7cfa1b73 wilc_cfg80211_init +EXPORT_SYMBOL_GPL drivers/staging/wilc1000/wilc1000 0x86a81635 wilc_handle_isr +EXPORT_SYMBOL_GPL drivers/staging/wilc1000/wilc1000 0xb5b7d945 host_sleep_notify +EXPORT_SYMBOL_GPL drivers/staging/wilc1000/wilc1000 0xc55c1c84 chip_wakeup +EXPORT_SYMBOL_GPL drivers/staging/wilc1000/wilc1000 0xde0a4b37 wilc_netdev_cleanup +EXPORT_SYMBOL_GPL drivers/tee/tee 0x004fed63 tee_shm_pool_alloc +EXPORT_SYMBOL_GPL drivers/tee/tee 0x03a0a745 tee_shm_free +EXPORT_SYMBOL_GPL drivers/tee/tee 0x0d9b29e7 tee_device_alloc +EXPORT_SYMBOL_GPL drivers/tee/tee 0x2458f012 tee_client_close_session +EXPORT_SYMBOL_GPL drivers/tee/tee 0x2caede20 tee_shm_register +EXPORT_SYMBOL_GPL drivers/tee/tee 0x43051118 tee_shm_pa2va +EXPORT_SYMBOL_GPL drivers/tee/tee 0x4febbacc tee_shm_pool_free +EXPORT_SYMBOL_GPL drivers/tee/tee 0x53346f4d tee_client_invoke_func +EXPORT_SYMBOL_GPL drivers/tee/tee 0x61c679a5 tee_bus_type +EXPORT_SYMBOL_GPL drivers/tee/tee 0x67085bba tee_client_open_session +EXPORT_SYMBOL_GPL drivers/tee/tee 0x6d89445b tee_get_drvdata +EXPORT_SYMBOL_GPL drivers/tee/tee 0x7ced73d0 tee_shm_get_from_id +EXPORT_SYMBOL_GPL drivers/tee/tee 0x850a5dd5 tee_shm_va2pa +EXPORT_SYMBOL_GPL drivers/tee/tee 0x85fd9922 tee_session_calc_client_uuid +EXPORT_SYMBOL_GPL drivers/tee/tee 0xa2de7e0c tee_shm_get_pa +EXPORT_SYMBOL_GPL drivers/tee/tee 0xa30425a1 tee_client_close_context +EXPORT_SYMBOL_GPL drivers/tee/tee 0xab1db073 tee_device_register +EXPORT_SYMBOL_GPL drivers/tee/tee 0xc7d09c2c tee_shm_pool_mgr_alloc_res_mem +EXPORT_SYMBOL_GPL drivers/tee/tee 0xcaf979c9 tee_device_unregister +EXPORT_SYMBOL_GPL drivers/tee/tee 0xce0a8a9d tee_shm_get_va +EXPORT_SYMBOL_GPL drivers/tee/tee 0xdb06fa41 tee_shm_alloc +EXPORT_SYMBOL_GPL drivers/tee/tee 0xed3c6fa9 tee_client_get_version +EXPORT_SYMBOL_GPL drivers/tee/tee 0xf550644f tee_client_open_context +EXPORT_SYMBOL_GPL drivers/tee/tee 0xfa80b16a tee_shm_put +EXPORT_SYMBOL_GPL drivers/tee/tee 0xfe55319d tee_shm_pool_alloc_res_mem +EXPORT_SYMBOL_GPL drivers/thunderbolt/thunderbolt 0x01d23ee1 tb_property_create_dir +EXPORT_SYMBOL_GPL drivers/thunderbolt/thunderbolt 0x06c2aeef tb_ring_poll_complete +EXPORT_SYMBOL_GPL drivers/thunderbolt/thunderbolt 0x21a31526 tb_unregister_protocol_handler +EXPORT_SYMBOL_GPL drivers/thunderbolt/thunderbolt 0x2531326a tb_ring_free +EXPORT_SYMBOL_GPL drivers/thunderbolt/thunderbolt 0x36521060 tb_register_protocol_handler +EXPORT_SYMBOL_GPL drivers/thunderbolt/thunderbolt 0x393b4f2f tb_property_free_dir +EXPORT_SYMBOL_GPL drivers/thunderbolt/thunderbolt 0x3a2362e2 tb_ring_alloc_rx +EXPORT_SYMBOL_GPL drivers/thunderbolt/thunderbolt 0x40563583 tb_xdomain_enable_paths +EXPORT_SYMBOL_GPL drivers/thunderbolt/thunderbolt 0x50e506d0 tb_register_service_driver +EXPORT_SYMBOL_GPL drivers/thunderbolt/thunderbolt 0x5b0f2c0c tb_xdomain_type +EXPORT_SYMBOL_GPL drivers/thunderbolt/thunderbolt 0x603249ed tb_unregister_property_dir +EXPORT_SYMBOL_GPL drivers/thunderbolt/thunderbolt 0x64cc57e3 tb_xdomain_disable_paths +EXPORT_SYMBOL_GPL drivers/thunderbolt/thunderbolt 0x658e3d97 tb_property_add_immediate +EXPORT_SYMBOL_GPL drivers/thunderbolt/thunderbolt 0x6ceee74b tb_property_remove +EXPORT_SYMBOL_GPL drivers/thunderbolt/thunderbolt 0x8598d300 tb_xdomain_request +EXPORT_SYMBOL_GPL drivers/thunderbolt/thunderbolt 0x86166e8c tb_property_get_next +EXPORT_SYMBOL_GPL drivers/thunderbolt/thunderbolt 0x87bf95e9 tb_xdomain_find_by_uuid +EXPORT_SYMBOL_GPL drivers/thunderbolt/thunderbolt 0x8b62f95e tb_property_add_dir +EXPORT_SYMBOL_GPL drivers/thunderbolt/thunderbolt 0x94d292f4 tb_unregister_service_driver +EXPORT_SYMBOL_GPL drivers/thunderbolt/thunderbolt 0x98b3c65f tb_ring_start +EXPORT_SYMBOL_GPL drivers/thunderbolt/thunderbolt 0xa94481c7 __tb_ring_enqueue +EXPORT_SYMBOL_GPL drivers/thunderbolt/thunderbolt 0xac2258ff tb_ring_stop +EXPORT_SYMBOL_GPL drivers/thunderbolt/thunderbolt 0xaf1fe161 tb_ring_alloc_tx +EXPORT_SYMBOL_GPL drivers/thunderbolt/thunderbolt 0xb550c639 tb_service_type +EXPORT_SYMBOL_GPL drivers/thunderbolt/thunderbolt 0xb7c7cdce tb_property_add_text +EXPORT_SYMBOL_GPL drivers/thunderbolt/thunderbolt 0xc48e7e48 tb_xdomain_find_by_route +EXPORT_SYMBOL_GPL drivers/thunderbolt/thunderbolt 0xc64da6ae tb_property_find +EXPORT_SYMBOL_GPL drivers/thunderbolt/thunderbolt 0xd362571d tb_xdomain_response +EXPORT_SYMBOL_GPL drivers/thunderbolt/thunderbolt 0xe2697cd4 tb_property_add_data +EXPORT_SYMBOL_GPL drivers/thunderbolt/thunderbolt 0xf1cfd1ff tb_register_property_dir +EXPORT_SYMBOL_GPL drivers/thunderbolt/thunderbolt 0xf91931cb tb_ring_poll +EXPORT_SYMBOL_GPL drivers/tty/n_tracesink 0x8a422e5e n_tracesink_datadrain +EXPORT_SYMBOL_GPL drivers/uio/uio 0x4305b7ad uio_event_notify +EXPORT_SYMBOL_GPL drivers/uio/uio 0x4b45314e __uio_register_device +EXPORT_SYMBOL_GPL drivers/uio/uio 0x62859836 __devm_uio_register_device +EXPORT_SYMBOL_GPL drivers/uio/uio 0xda8af1f0 uio_unregister_device +EXPORT_SYMBOL_GPL drivers/usb/atm/usbatm 0x061b085d usbatm_usb_probe +EXPORT_SYMBOL_GPL drivers/usb/atm/usbatm 0xf486c891 usbatm_usb_disconnect +EXPORT_SYMBOL_GPL drivers/usb/chipidea/ci_hdrc 0x3c5379aa hw_phymode_configure +EXPORT_SYMBOL_GPL drivers/usb/chipidea/ci_hdrc 0x984d8c8b ci_hdrc_remove_device +EXPORT_SYMBOL_GPL drivers/usb/chipidea/ci_hdrc 0xdf3f5959 ci_hdrc_add_device +EXPORT_SYMBOL_GPL drivers/usb/chipidea/usbmisc_imx 0x323c9a8b imx_usbmisc_hsic_set_connect +EXPORT_SYMBOL_GPL drivers/usb/chipidea/usbmisc_imx 0x3aa6b71a imx_usbmisc_hsic_set_clk +EXPORT_SYMBOL_GPL drivers/usb/chipidea/usbmisc_imx 0x7f655b0e imx_usbmisc_set_wakeup +EXPORT_SYMBOL_GPL drivers/usb/chipidea/usbmisc_imx 0x7f97a93c imx_usbmisc_init +EXPORT_SYMBOL_GPL drivers/usb/chipidea/usbmisc_imx 0xb7a55af2 imx_usbmisc_charger_detection +EXPORT_SYMBOL_GPL drivers/usb/chipidea/usbmisc_imx 0xc9297777 imx_usbmisc_init_post +EXPORT_SYMBOL_GPL drivers/usb/common/ulpi 0x9067d3a9 ulpi_unregister_interface +EXPORT_SYMBOL_GPL drivers/usb/common/ulpi 0xa2dd65a1 ulpi_unregister_driver +EXPORT_SYMBOL_GPL drivers/usb/common/ulpi 0xb13c6d9d __ulpi_register_driver +EXPORT_SYMBOL_GPL drivers/usb/common/ulpi 0xc0f76643 ulpi_write +EXPORT_SYMBOL_GPL drivers/usb/common/ulpi 0xc1eeb5aa ulpi_read +EXPORT_SYMBOL_GPL drivers/usb/common/ulpi 0xeed8b125 ulpi_register_interface +EXPORT_SYMBOL_GPL drivers/usb/gadget/function/u_audio 0x392de00c u_audio_start_capture +EXPORT_SYMBOL_GPL drivers/usb/gadget/function/u_audio 0x8f164f63 u_audio_stop_playback +EXPORT_SYMBOL_GPL drivers/usb/gadget/function/u_audio 0x914252b0 g_audio_setup +EXPORT_SYMBOL_GPL drivers/usb/gadget/function/u_audio 0x94de1bf2 u_audio_stop_capture +EXPORT_SYMBOL_GPL drivers/usb/gadget/function/u_audio 0xa1475260 g_audio_cleanup +EXPORT_SYMBOL_GPL drivers/usb/gadget/function/u_audio 0xd5be6383 u_audio_start_playback +EXPORT_SYMBOL_GPL drivers/usb/gadget/function/u_ether 0x15657f1f gether_get_host_addr_cdc +EXPORT_SYMBOL_GPL drivers/usb/gadget/function/u_ether 0x1f9b0370 gether_set_dev_addr +EXPORT_SYMBOL_GPL drivers/usb/gadget/function/u_ether 0x2e2e5b1d gether_set_gadget +EXPORT_SYMBOL_GPL drivers/usb/gadget/function/u_ether 0x4922f324 gether_get_host_addr +EXPORT_SYMBOL_GPL drivers/usb/gadget/function/u_ether 0x50ad2348 gether_get_host_addr_u8 +EXPORT_SYMBOL_GPL drivers/usb/gadget/function/u_ether 0x58b6fc9c gether_get_ifname +EXPORT_SYMBOL_GPL drivers/usb/gadget/function/u_ether 0x60338bc6 gether_setup_name +EXPORT_SYMBOL_GPL drivers/usb/gadget/function/u_ether 0x633c653b gether_set_qmult +EXPORT_SYMBOL_GPL drivers/usb/gadget/function/u_ether 0x72d747ab gether_set_host_addr +EXPORT_SYMBOL_GPL drivers/usb/gadget/function/u_ether 0x7d71f285 gether_disconnect +EXPORT_SYMBOL_GPL drivers/usb/gadget/function/u_ether 0x8878cfa6 gether_cleanup +EXPORT_SYMBOL_GPL drivers/usb/gadget/function/u_ether 0xad675e13 gether_connect +EXPORT_SYMBOL_GPL drivers/usb/gadget/function/u_ether 0xbdd58593 gether_get_dev_addr +EXPORT_SYMBOL_GPL drivers/usb/gadget/function/u_ether 0xd324aaf2 gether_register_netdev +EXPORT_SYMBOL_GPL drivers/usb/gadget/function/u_ether 0xe409b85b gether_setup_name_default +EXPORT_SYMBOL_GPL drivers/usb/gadget/function/u_ether 0xf839e4fb gether_get_qmult +EXPORT_SYMBOL_GPL drivers/usb/gadget/function/u_serial 0x03075b02 gserial_resume +EXPORT_SYMBOL_GPL drivers/usb/gadget/function/u_serial 0x33bfdca2 gserial_alloc_line +EXPORT_SYMBOL_GPL drivers/usb/gadget/function/u_serial 0x77dbf841 gserial_get_console +EXPORT_SYMBOL_GPL drivers/usb/gadget/function/u_serial 0x7eeb76ef gserial_connect +EXPORT_SYMBOL_GPL drivers/usb/gadget/function/u_serial 0x90ce677f gserial_disconnect +EXPORT_SYMBOL_GPL drivers/usb/gadget/function/u_serial 0xa18ee0bd gserial_set_console +EXPORT_SYMBOL_GPL drivers/usb/gadget/function/u_serial 0xb6652875 gserial_free_line +EXPORT_SYMBOL_GPL drivers/usb/gadget/function/u_serial 0xc9a64872 gserial_suspend +EXPORT_SYMBOL_GPL drivers/usb/gadget/function/u_serial 0xe89dc424 gserial_alloc_line_no_console +EXPORT_SYMBOL_GPL drivers/usb/gadget/function/u_serial 0xf53717eb gs_alloc_req +EXPORT_SYMBOL_GPL drivers/usb/gadget/function/u_serial 0xfe9468f2 gs_free_req +EXPORT_SYMBOL_GPL drivers/usb/gadget/function/usb_f_fs 0x3df5db03 ffs_lock +EXPORT_SYMBOL_GPL drivers/usb/gadget/function/usb_f_fs 0xf16829b4 ffs_single_dev +EXPORT_SYMBOL_GPL drivers/usb/gadget/function/usb_f_fs 0xf48ac1c9 ffs_name_dev +EXPORT_SYMBOL_GPL drivers/usb/gadget/function/usb_f_mass_storage 0x0f61bb0b fsg_store_inquiry_string +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 0x1aeb82fc fsg_show_ro +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 0x2933ee1d fsg_ss_bulk_in_desc +EXPORT_SYMBOL_GPL drivers/usb/gadget/function/usb_f_mass_storage 0x2f5a1458 fsg_store_file +EXPORT_SYMBOL_GPL drivers/usb/gadget/function/usb_f_mass_storage 0x34913ce2 fsg_show_file +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 0x3b08f45b fsg_lun_fsync_sub +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 0x423845e4 fsg_ss_bulk_in_comp_desc +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 0x66708cdf fsg_show_cdrom +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 0x6b3f7651 fsg_store_ro +EXPORT_SYMBOL_GPL drivers/usb/gadget/function/usb_f_mass_storage 0x7931959f fsg_lun_close +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 0x857b6dc2 fsg_hs_function +EXPORT_SYMBOL_GPL drivers/usb/gadget/function/usb_f_mass_storage 0x8de3ce28 fsg_store_nofua +EXPORT_SYMBOL_GPL drivers/usb/gadget/function/usb_f_mass_storage 0x92be2ce3 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 0x9ae03461 fsg_common_remove_lun +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 0xab6c68ac fsg_config_from_params +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 0xc0652f6a fsg_lun_open +EXPORT_SYMBOL_GPL drivers/usb/gadget/function/usb_f_mass_storage 0xd166c6a1 fsg_store_removable +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 0xd736a82e fsg_common_set_cdev +EXPORT_SYMBOL_GPL drivers/usb/gadget/function/usb_f_mass_storage 0xe1dd323e fsg_show_removable +EXPORT_SYMBOL_GPL drivers/usb/gadget/function/usb_f_mass_storage 0xe75c2a28 fsg_show_inquiry_string +EXPORT_SYMBOL_GPL drivers/usb/gadget/function/usb_f_mass_storage 0xee56229b fsg_show_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_rndis 0x0b84f8e2 rndis_register +EXPORT_SYMBOL_GPL drivers/usb/gadget/function/usb_f_rndis 0x1406381a rndis_deregister +EXPORT_SYMBOL_GPL drivers/usb/gadget/function/usb_f_rndis 0x2e171632 rndis_set_host_mac +EXPORT_SYMBOL_GPL drivers/usb/gadget/function/usb_f_rndis 0x2ff4fdb0 rndis_set_param_vendor +EXPORT_SYMBOL_GPL drivers/usb/gadget/function/usb_f_rndis 0x3cc64ec7 rndis_msg_parser +EXPORT_SYMBOL_GPL drivers/usb/gadget/function/usb_f_rndis 0x435b8ada rndis_rm_hdr +EXPORT_SYMBOL_GPL drivers/usb/gadget/function/usb_f_rndis 0x4a0f9457 rndis_set_param_medium +EXPORT_SYMBOL_GPL drivers/usb/gadget/function/usb_f_rndis 0x5af58401 rndis_get_next_response +EXPORT_SYMBOL_GPL drivers/usb/gadget/function/usb_f_rndis 0x628a1623 rndis_signal_disconnect +EXPORT_SYMBOL_GPL drivers/usb/gadget/function/usb_f_rndis 0x6cb4b9e9 rndis_uninit +EXPORT_SYMBOL_GPL drivers/usb/gadget/function/usb_f_rndis 0xa3b4051f rndis_borrow_net +EXPORT_SYMBOL_GPL drivers/usb/gadget/function/usb_f_rndis 0xaff5904a rndis_free_response +EXPORT_SYMBOL_GPL drivers/usb/gadget/function/usb_f_rndis 0xc0b81bdc rndis_signal_connect +EXPORT_SYMBOL_GPL drivers/usb/gadget/function/usb_f_rndis 0xd8f7681d rndis_set_param_dev +EXPORT_SYMBOL_GPL drivers/usb/gadget/function/usb_f_rndis 0xd9195da6 rndis_add_hdr +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0x0387b97c usb_get_function +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0x0c589aba usb_validate_langid +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0x0d74618b usb_composite_probe +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0x1d9be7e2 usb_add_function +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0x2129e23e usb_ep_autoconfig_ss +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0x2401a83c usb_assign_descriptors +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0x264ee540 usb_otg_descriptor_init +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0x2e09263f usb_copy_descriptors +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0x3b517fd9 usb_function_register +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0x3d5adcf8 usb_string_id +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0x416cda94 usb_composite_overwrite_options +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0x4aa29487 usb_put_function +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0x4beb505d usb_gadget_get_string +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0x4edc65e0 config_ep_by_speed +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0x4ffde34d usb_put_function_instance +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0x6ff1de25 usb_interface_id +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0x7bf774f4 usb_otg_descriptor_alloc +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0x8ccb6d67 unregister_gadget_item +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0x910e55f7 alloc_ep_req +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0x914d5fba usb_ep_autoconfig_release +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0x953778d6 usb_add_config_only +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0x9a8a845a usb_ep_autoconfig +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0x9f4f8a6e usb_composite_unregister +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0xaa506562 usb_function_unregister +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0xaba1daab usb_function_deactivate +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0xad6ebf61 usb_gstrings_attach +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0xb24084d6 usb_ep_autoconfig_reset +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0xbd62e2bb usb_remove_function +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0xbf68fdac usb_free_all_descriptors +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0xc5f6971d usb_function_activate +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0xd2ea2134 usb_descriptor_fillbuf +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0xe32da7d7 usb_composite_setup_continue +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0xe9248757 usb_get_function_instance +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0xeb69cbc5 usb_add_config +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0xf474a207 usb_gadget_config_buf +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0xf544d4c9 usb_string_ids_tab +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0xf565af99 usb_string_ids_n +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0xfc033447 config_ep_by_speed_and_alt +EXPORT_SYMBOL_GPL drivers/usb/gadget/udc/snps_udc_core 0x1f3d0736 init_dma_pools +EXPORT_SYMBOL_GPL drivers/usb/gadget/udc/snps_udc_core 0x2b6f2409 udc_probe +EXPORT_SYMBOL_GPL drivers/usb/gadget/udc/snps_udc_core 0x2e77f853 gadget_release +EXPORT_SYMBOL_GPL drivers/usb/gadget/udc/snps_udc_core 0x439fa244 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 0xba03ed63 udc_basic_init +EXPORT_SYMBOL_GPL drivers/usb/gadget/udc/snps_udc_core 0xd6a4753c udc_enable_dev_setup_interrupts +EXPORT_SYMBOL_GPL drivers/usb/gadget/udc/snps_udc_core 0xd8ae4b18 free_dma_pools +EXPORT_SYMBOL_GPL drivers/usb/gadget/udc/snps_udc_core 0xea7c4839 udc_remove +EXPORT_SYMBOL_GPL drivers/usb/gadget/udc/snps_udc_core 0xeb0cf4ef udc_mask_unused_interrupts +EXPORT_SYMBOL_GPL drivers/usb/host/xhci-pci-renesas 0xb54f3423 renesas_xhci_pci_exit +EXPORT_SYMBOL_GPL drivers/usb/host/xhci-pci-renesas 0xdd14fa9e renesas_xhci_check_request_fw +EXPORT_SYMBOL_GPL drivers/usb/misc/ezusb 0x5357eb8e ezusb_fx1_set_reset +EXPORT_SYMBOL_GPL drivers/usb/misc/ezusb 0xc747fea1 ezusb_fx1_ihex_firmware_download +EXPORT_SYMBOL_GPL drivers/usb/misc/ftdi-elan 0x085c6152 usb_ftdi_elan_edset_flush +EXPORT_SYMBOL_GPL drivers/usb/misc/ftdi-elan 0x5754c3c1 usb_ftdi_elan_edset_output +EXPORT_SYMBOL_GPL drivers/usb/misc/ftdi-elan 0x5e91bc16 ftdi_elan_gone_away +EXPORT_SYMBOL_GPL drivers/usb/misc/ftdi-elan 0x70b4bcfe usb_ftdi_elan_edset_empty +EXPORT_SYMBOL_GPL drivers/usb/misc/ftdi-elan 0x8011a481 usb_ftdi_elan_edset_setup +EXPORT_SYMBOL_GPL drivers/usb/misc/ftdi-elan 0x894cefe3 usb_ftdi_elan_edset_input +EXPORT_SYMBOL_GPL drivers/usb/misc/ftdi-elan 0xc26560e0 usb_ftdi_elan_read_pcimem +EXPORT_SYMBOL_GPL drivers/usb/misc/ftdi-elan 0xcbfdfaec usb_ftdi_elan_edset_single +EXPORT_SYMBOL_GPL drivers/usb/misc/ftdi-elan 0xce47e1dc usb_ftdi_elan_write_pcimem +EXPORT_SYMBOL_GPL drivers/usb/phy/phy-am335x-control 0x508daecd am335x_get_phy_control +EXPORT_SYMBOL_GPL drivers/usb/phy/phy-isp1301 0x0fa8574f isp1301_get_client +EXPORT_SYMBOL_GPL drivers/usb/phy/phy-tegra-usb 0x6aa75481 tegra_ehci_phy_restore_start +EXPORT_SYMBOL_GPL drivers/usb/phy/phy-tegra-usb 0xa5c2d1ec tegra_ehci_phy_restore_end +EXPORT_SYMBOL_GPL drivers/usb/phy/phy-tegra-usb 0xe088ce8a tegra_usb_phy_postresume +EXPORT_SYMBOL_GPL drivers/usb/phy/phy-tegra-usb 0xebabac4a tegra_usb_phy_preresume +EXPORT_SYMBOL_GPL drivers/usb/serial/usb_wwan 0x808d858e usb_wwan_port_probe +EXPORT_SYMBOL_GPL drivers/usb/serial/usbserial 0x1beceae3 usb_serial_generic_resume +EXPORT_SYMBOL_GPL drivers/usb/serial/usbserial 0x2841df88 usb_serial_generic_wait_until_sent +EXPORT_SYMBOL_GPL drivers/usb/serial/usbserial 0x45cfb5e7 usb_serial_generic_submit_read_urbs +EXPORT_SYMBOL_GPL drivers/usb/serial/usbserial 0x538114e3 usb_serial_handle_sysrq_char +EXPORT_SYMBOL_GPL drivers/usb/serial/usbserial 0x61e35d6b usb_serial_generic_write_start +EXPORT_SYMBOL_GPL drivers/usb/serial/usbserial 0x6fcd9fc5 usb_serial_generic_get_icount +EXPORT_SYMBOL_GPL drivers/usb/serial/usbserial 0x7fce53a4 usb_serial_generic_tiocmiwait +EXPORT_SYMBOL_GPL drivers/usb/serial/usbserial 0x87e1d037 usb_serial_generic_close +EXPORT_SYMBOL_GPL drivers/usb/serial/usbserial 0x8ab7e543 usb_serial_generic_process_read_urb +EXPORT_SYMBOL_GPL drivers/usb/serial/usbserial 0x9b8b8307 usb_serial_register_drivers +EXPORT_SYMBOL_GPL drivers/usb/serial/usbserial 0x9bf8cb6f usb_serial_generic_write +EXPORT_SYMBOL_GPL drivers/usb/serial/usbserial 0xa1075f5a usb_serial_generic_open +EXPORT_SYMBOL_GPL drivers/usb/serial/usbserial 0xa9120342 usb_serial_generic_write_bulk_callback +EXPORT_SYMBOL_GPL drivers/usb/serial/usbserial 0xb52b4f91 usb_serial_generic_unthrottle +EXPORT_SYMBOL_GPL drivers/usb/serial/usbserial 0xba6339c9 usb_serial_generic_read_bulk_callback +EXPORT_SYMBOL_GPL drivers/usb/serial/usbserial 0xc97685c9 usb_serial_port_softint +EXPORT_SYMBOL_GPL drivers/usb/serial/usbserial 0xcaee1e11 usb_serial_handle_dcd_change +EXPORT_SYMBOL_GPL drivers/usb/serial/usbserial 0xcd547cc9 usb_serial_generic_chars_in_buffer +EXPORT_SYMBOL_GPL drivers/usb/serial/usbserial 0xd4faea41 usb_serial_generic_throttle +EXPORT_SYMBOL_GPL drivers/usb/serial/usbserial 0xde6ff845 usb_serial_handle_break +EXPORT_SYMBOL_GPL drivers/usb/serial/usbserial 0xfbcfd8e2 usb_serial_deregister_drivers +EXPORT_SYMBOL_GPL drivers/usb/typec/altmodes/typec_displayport 0x4423f3de dp_altmode_remove +EXPORT_SYMBOL_GPL drivers/usb/typec/altmodes/typec_displayport 0xe0ead1d5 dp_altmode_probe +EXPORT_SYMBOL_GPL drivers/usb/typec/tcpm/tcpci 0x5c186fd8 tcpci_register_port +EXPORT_SYMBOL_GPL drivers/usb/typec/tcpm/tcpci 0x6f497a3c tcpci_irq +EXPORT_SYMBOL_GPL drivers/usb/typec/tcpm/tcpci 0xc529e32e tcpci_unregister_port +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 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 0xea220941 tcpm_tcpc_reset +EXPORT_SYMBOL_GPL drivers/usb/typec/tcpm/tcpm 0xf7cef46b tcpm_register_port +EXPORT_SYMBOL_GPL drivers/usb/typec/typec 0x00e60c96 typec_altmode_exit +EXPORT_SYMBOL_GPL drivers/usb/typec/typec 0x03608f2a typec_cable_set_identity +EXPORT_SYMBOL_GPL drivers/usb/typec/typec 0x0beb08ce typec_altmode_vdm +EXPORT_SYMBOL_GPL drivers/usb/typec/typec 0x0eeb98ce typec_switch_set +EXPORT_SYMBOL_GPL drivers/usb/typec/typec 0x0f797cd3 fwnode_typec_switch_get +EXPORT_SYMBOL_GPL drivers/usb/typec/typec 0x1b90ac2b typec_unregister_plug +EXPORT_SYMBOL_GPL drivers/usb/typec/typec 0x246a82e1 typec_match_altmode +EXPORT_SYMBOL_GPL drivers/usb/typec/typec 0x2bd1a7a0 typec_altmode_get_plug +EXPORT_SYMBOL_GPL drivers/usb/typec/typec 0x2c4b45c2 typec_cable_is_active +EXPORT_SYMBOL_GPL drivers/usb/typec/typec 0x2d1e301d typec_find_power_role +EXPORT_SYMBOL_GPL drivers/usb/typec/typec 0x33fd62de typec_set_pwr_opmode +EXPORT_SYMBOL_GPL drivers/usb/typec/typec 0x36852716 typec_set_orientation +EXPORT_SYMBOL_GPL drivers/usb/typec/typec 0x38c26b10 typec_altmode_attention +EXPORT_SYMBOL_GPL drivers/usb/typec/typec 0x38d32b49 typec_switch_put +EXPORT_SYMBOL_GPL drivers/usb/typec/typec 0x3bb2120b typec_unregister_altmode +EXPORT_SYMBOL_GPL drivers/usb/typec/typec 0x426285ea typec_unregister_cable +EXPORT_SYMBOL_GPL drivers/usb/typec/typec 0x493159cc typec_partner_set_identity +EXPORT_SYMBOL_GPL drivers/usb/typec/typec 0x4aaf4de5 typec_cable_put +EXPORT_SYMBOL_GPL drivers/usb/typec/typec 0x516d0a95 typec_altmode_enter +EXPORT_SYMBOL_GPL drivers/usb/typec/typec 0x51d662a7 typec_switch_get_drvdata +EXPORT_SYMBOL_GPL drivers/usb/typec/typec 0x54c93810 typec_set_mode +EXPORT_SYMBOL_GPL drivers/usb/typec/typec 0x5869adb2 typec_get_orientation +EXPORT_SYMBOL_GPL drivers/usb/typec/typec 0x5ac3a632 typec_set_vconn_role +EXPORT_SYMBOL_GPL drivers/usb/typec/typec 0x5f2c6469 typec_set_data_role +EXPORT_SYMBOL_GPL drivers/usb/typec/typec 0x614740d9 typec_register_partner +EXPORT_SYMBOL_GPL drivers/usb/typec/typec 0x62facd43 fwnode_typec_mux_get +EXPORT_SYMBOL_GPL drivers/usb/typec/typec 0x734a9c4d typec_get_drvdata +EXPORT_SYMBOL_GPL drivers/usb/typec/typec 0x7374b157 typec_mux_get_drvdata +EXPORT_SYMBOL_GPL drivers/usb/typec/typec 0x7e2998e7 typec_set_pwr_role +EXPORT_SYMBOL_GPL drivers/usb/typec/typec 0x9049491e typec_find_port_data_role +EXPORT_SYMBOL_GPL drivers/usb/typec/typec 0x9bdb3288 typec_altmode_unregister_driver +EXPORT_SYMBOL_GPL drivers/usb/typec/typec 0x9cad8da6 typec_unregister_partner +EXPORT_SYMBOL_GPL drivers/usb/typec/typec 0xa173787c typec_mux_unregister +EXPORT_SYMBOL_GPL drivers/usb/typec/typec 0xa1f4c7e1 typec_mux_set +EXPORT_SYMBOL_GPL drivers/usb/typec/typec 0xa254de98 typec_find_orientation +EXPORT_SYMBOL_GPL drivers/usb/typec/typec 0xa2e6eb88 typec_switch_unregister +EXPORT_SYMBOL_GPL drivers/usb/typec/typec 0xa7d8868d typec_register_port +EXPORT_SYMBOL_GPL drivers/usb/typec/typec 0xaed38135 typec_switch_register +EXPORT_SYMBOL_GPL drivers/usb/typec/typec 0xb44f942d typec_plug_register_altmode +EXPORT_SYMBOL_GPL drivers/usb/typec/typec 0xbc0c5538 typec_altmode_put_plug +EXPORT_SYMBOL_GPL drivers/usb/typec/typec 0xc3092874 typec_mux_put +EXPORT_SYMBOL_GPL drivers/usb/typec/typec 0xc7ac0b3f typec_mux_register +EXPORT_SYMBOL_GPL drivers/usb/typec/typec 0xc9dc23f2 typec_mux_set_drvdata +EXPORT_SYMBOL_GPL drivers/usb/typec/typec 0xcb9206be typec_switch_set_drvdata +EXPORT_SYMBOL_GPL drivers/usb/typec/typec 0xcc520d2c typec_altmode_update_active +EXPORT_SYMBOL_GPL drivers/usb/typec/typec 0xd17aba39 typec_altmode_notify +EXPORT_SYMBOL_GPL drivers/usb/typec/typec 0xda0a9c4c typec_unregister_port +EXPORT_SYMBOL_GPL drivers/usb/typec/typec 0xddb7a7d0 typec_altmode2port +EXPORT_SYMBOL_GPL drivers/usb/typec/typec 0xde83e38a typec_cable_get +EXPORT_SYMBOL_GPL drivers/usb/typec/typec 0xdfbde482 typec_altmode_get_partner +EXPORT_SYMBOL_GPL drivers/usb/typec/typec 0xe0b8cd03 typec_partner_register_altmode +EXPORT_SYMBOL_GPL drivers/usb/typec/typec 0xe2c3b700 typec_register_cable +EXPORT_SYMBOL_GPL drivers/usb/typec/typec 0xe68935cd typec_port_register_altmode +EXPORT_SYMBOL_GPL drivers/usb/typec/typec 0xeafc1eb8 typec_find_port_power_role +EXPORT_SYMBOL_GPL drivers/usb/typec/typec 0xee19f4b1 typec_register_plug +EXPORT_SYMBOL_GPL drivers/usb/typec/typec 0xf65c39ea __typec_altmode_register_driver +EXPORT_SYMBOL_GPL drivers/usb/typec/ucsi/typec_ucsi 0x197a8753 ucsi_register +EXPORT_SYMBOL_GPL drivers/usb/typec/ucsi/typec_ucsi 0x20e57606 ucsi_destroy +EXPORT_SYMBOL_GPL drivers/usb/typec/ucsi/typec_ucsi 0x5084751a ucsi_unregister +EXPORT_SYMBOL_GPL drivers/usb/typec/ucsi/typec_ucsi 0x647ab47c ucsi_connector_change +EXPORT_SYMBOL_GPL drivers/usb/typec/ucsi/typec_ucsi 0x821ae22c ucsi_create +EXPORT_SYMBOL_GPL drivers/usb/typec/ucsi/typec_ucsi 0x8db05597 ucsi_set_drvdata +EXPORT_SYMBOL_GPL drivers/usb/typec/ucsi/typec_ucsi 0xafc6a776 ucsi_get_drvdata +EXPORT_SYMBOL_GPL drivers/usb/typec/ucsi/typec_ucsi 0xd404dd7c ucsi_resume +EXPORT_SYMBOL_GPL drivers/usb/typec/ucsi/typec_ucsi 0xdfaa53e0 ucsi_send_command +EXPORT_SYMBOL_GPL drivers/usb/typec/ucsi/typec_ucsi 0xf0085865 ucsi_init +EXPORT_SYMBOL_GPL drivers/usb/usbip/usbip-core 0x0dca5759 dev_attr_usbip_debug +EXPORT_SYMBOL_GPL drivers/usb/usbip/usbip-core 0x34bed191 usbip_dump_urb +EXPORT_SYMBOL_GPL drivers/usb/usbip/usbip-core 0x3d4e50ca usbip_pack_pdu +EXPORT_SYMBOL_GPL drivers/usb/usbip/usbip-core 0x66da2818 usbip_recv_xbuff +EXPORT_SYMBOL_GPL drivers/usb/usbip/usbip-core 0x78b72f44 usbip_debug_flag +EXPORT_SYMBOL_GPL drivers/usb/usbip/usbip-core 0x8c48933b usbip_pad_iso +EXPORT_SYMBOL_GPL drivers/usb/usbip/usbip-core 0x921d8fb2 usbip_alloc_iso_desc_pdu +EXPORT_SYMBOL_GPL drivers/usb/usbip/usbip-core 0xa076761f usbip_stop_eh +EXPORT_SYMBOL_GPL drivers/usb/usbip/usbip-core 0xa08eb37b usbip_in_eh +EXPORT_SYMBOL_GPL drivers/usb/usbip/usbip-core 0xa285c795 usbip_event_add +EXPORT_SYMBOL_GPL drivers/usb/usbip/usbip-core 0xa39b81fb usbip_start_eh +EXPORT_SYMBOL_GPL drivers/usb/usbip/usbip-core 0xb01a66ae usbip_event_happened +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 0xebc64d9a usbip_recv +EXPORT_SYMBOL_GPL drivers/usb/usbip/usbip-core 0xff31038f usbip_recv_iso +EXPORT_SYMBOL_GPL drivers/vdpa/vdpa 0x3e4bd92a vdpa_register_device +EXPORT_SYMBOL_GPL drivers/vdpa/vdpa 0x4642a910 vdpa_unregister_device +EXPORT_SYMBOL_GPL drivers/vdpa/vdpa 0x6962b1e4 vdpa_unregister_driver +EXPORT_SYMBOL_GPL drivers/vdpa/vdpa 0xabd39201 __vdpa_register_driver +EXPORT_SYMBOL_GPL drivers/vdpa/vdpa 0xc07e131c __vdpa_alloc_device +EXPORT_SYMBOL_GPL drivers/vfio/mdev/mdev 0xdb4e440b mdev_bus_type +EXPORT_SYMBOL_GPL drivers/vfio/platform/vfio-platform-base 0x7a63f685 vfio_platform_remove_common +EXPORT_SYMBOL_GPL drivers/vfio/platform/vfio-platform-base 0x8b395bf0 vfio_platform_probe_common +EXPORT_SYMBOL_GPL drivers/vfio/platform/vfio-platform-base 0x91d5745c __vfio_platform_register_reset +EXPORT_SYMBOL_GPL drivers/vfio/platform/vfio-platform-base 0xe2f400fc vfio_platform_unregister_reset +EXPORT_SYMBOL_GPL drivers/vfio/vfio 0x036baa29 vfio_iommu_group_get +EXPORT_SYMBOL_GPL drivers/vfio/vfio 0x06240fe0 vfio_group_get_external_user_from_dev +EXPORT_SYMBOL_GPL drivers/vfio/vfio 0x2ea4b8bc vfio_register_iommu_driver +EXPORT_SYMBOL_GPL drivers/vfio/vfio 0x3567743b vfio_external_user_iommu_id +EXPORT_SYMBOL_GPL drivers/vfio/vfio 0x44b83e00 vfio_info_cap_add +EXPORT_SYMBOL_GPL drivers/vfio/vfio 0x5716794b vfio_group_get_external_user +EXPORT_SYMBOL_GPL drivers/vfio/vfio 0x5b35c4f9 vfio_group_set_kvm +EXPORT_SYMBOL_GPL drivers/vfio/vfio 0x696cafc3 vfio_unregister_iommu_driver +EXPORT_SYMBOL_GPL drivers/vfio/vfio 0x8a20ea27 vfio_external_group_match_file +EXPORT_SYMBOL_GPL drivers/vfio/vfio 0x90a21d11 vfio_add_group_dev +EXPORT_SYMBOL_GPL drivers/vfio/vfio 0x95258207 vfio_device_data +EXPORT_SYMBOL_GPL drivers/vfio/vfio 0x969c73d9 vfio_device_put +EXPORT_SYMBOL_GPL drivers/vfio/vfio 0xc1d989c5 vfio_external_check_extension +EXPORT_SYMBOL_GPL drivers/vfio/vfio 0xc4913442 vfio_group_put_external_user +EXPORT_SYMBOL_GPL drivers/vfio/vfio 0xd407477b vfio_del_group_dev +EXPORT_SYMBOL_GPL drivers/vfio/vfio 0xde3ee9a9 vfio_device_get_from_dev +EXPORT_SYMBOL_GPL drivers/vfio/vfio 0xe596c598 vfio_iommu_group_put +EXPORT_SYMBOL_GPL drivers/vfio/vfio_virqfd 0x5ae939d7 vfio_virqfd_disable +EXPORT_SYMBOL_GPL drivers/vfio/vfio_virqfd 0xe82519ec vfio_virqfd_enable +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x05fecabd vhost_has_work +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x0e16b039 vhost_poll_queue +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x1c98909b vhost_dequeue_msg +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x31974d09 vhost_add_used_n +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x366543fa vhost_enqueue_msg +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x394ae939 vhost_add_used_and_signal_n +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x42c06acd vhost_dev_has_owner +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x4929b1e5 vhost_poll_flush +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x4c99de4c vhost_exceeds_weight +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x4cafa46f vhost_vq_is_setup +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x522da3dc vhost_disable_notify +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x526ff963 vhost_chr_read_iter +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x527e499e vhost_work_flush +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x58495135 vhost_new_msg +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x5fcc8ada vhost_log_access_ok +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x629c1cf5 vhost_signal +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x645b98fa vhost_dev_cleanup +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x6b558582 vhost_poll_init +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x6ed37730 vhost_add_used_and_signal +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x7033edd5 vhost_get_vq_desc +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x71f59614 vhost_dev_stop +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x7401bb58 vhost_poll_stop +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x8c4c49a8 vhost_dev_reset_owner +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x8e49d882 vhost_poll_start +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x9413544c vhost_dev_set_owner +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0xa05e1c7f vhost_work_queue +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0xa0f71b8b vq_meta_prefetch +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0xa330dfe4 vhost_init_device_iotlb +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0xa909cfc5 vhost_work_init +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0xb151b626 vhost_vq_init_access +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0xb39a0605 vhost_log_write +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0xb7697b2a vhost_vring_ioctl +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0xba335ad4 vhost_enable_notify +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0xc044e6ca vhost_add_used +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0xc60a9d27 vhost_dev_check_owner +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0xc79b8eb3 vhost_dev_init +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0xc8a436aa vhost_dev_ioctl +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0xe4a68a12 vhost_vq_avail_empty +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0xea5d7bf4 vhost_vq_access_ok +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0xf03444eb vhost_discard_vq_desc +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 0x514d0e6a vhost_iotlb_itree_first +EXPORT_SYMBOL_GPL drivers/vhost/vhost_iotlb 0x5f4e5249 vhost_iotlb_reset +EXPORT_SYMBOL_GPL drivers/vhost/vhost_iotlb 0x6bec0e66 vhost_iotlb_del_range +EXPORT_SYMBOL_GPL drivers/vhost/vhost_iotlb 0x7579334f vhost_iotlb_itree_next +EXPORT_SYMBOL_GPL drivers/vhost/vhost_iotlb 0xa24517eb vhost_iotlb_free +EXPORT_SYMBOL_GPL drivers/vhost/vhost_iotlb 0xad111707 vhost_iotlb_map_free +EXPORT_SYMBOL_GPL drivers/vhost/vhost_iotlb 0xc577832d vhost_iotlb_alloc +EXPORT_SYMBOL_GPL drivers/video/backlight/ili9320 0x061b970c ili9320_suspend +EXPORT_SYMBOL_GPL drivers/video/backlight/ili9320 0x297760b9 ili9320_probe_spi +EXPORT_SYMBOL_GPL drivers/video/backlight/ili9320 0x3e744f3e ili9320_shutdown +EXPORT_SYMBOL_GPL drivers/video/backlight/ili9320 0x4bd8c825 ili9320_write_regs +EXPORT_SYMBOL_GPL drivers/video/backlight/ili9320 0x5051b3b0 ili9320_remove +EXPORT_SYMBOL_GPL drivers/video/backlight/ili9320 0x61caa038 ili9320_resume +EXPORT_SYMBOL_GPL drivers/video/backlight/ili9320 0xbee929f7 ili9320_write +EXPORT_SYMBOL_GPL drivers/video/fbdev/core/fb_ddc 0x9e98d57f fb_ddc_read +EXPORT_SYMBOL_GPL drivers/video/fbdev/core/fb_sys_fops 0x2ef2ddbf fb_sys_read +EXPORT_SYMBOL_GPL drivers/video/fbdev/core/fb_sys_fops 0xbbffb308 fb_sys_write +EXPORT_SYMBOL_GPL drivers/video/fbdev/omap2/omapfb/dss/omapdss 0x167640e0 omapdss_of_get_next_endpoint +EXPORT_SYMBOL_GPL drivers/video/fbdev/omap2/omapfb/dss/omapdss 0x23769c5f omapdss_of_get_next_port +EXPORT_SYMBOL_GPL drivers/video/fbdev/omap2/omapfb/dss/omapdss 0x5dd01536 omapdss_of_find_source_for_first_ep +EXPORT_SYMBOL_GPL drivers/video/fbdev/omap2/omapfb/dss/omapdss 0x75b20865 omapdss_of_get_first_endpoint +EXPORT_SYMBOL_GPL drivers/video/fbdev/sis/sisfb 0xab8893d9 sis_free_new +EXPORT_SYMBOL_GPL drivers/video/fbdev/sis/sisfb 0xe0d228a6 sis_malloc_new +EXPORT_SYMBOL_GPL drivers/w1/wire 0x07799f92 w1_next_pullup +EXPORT_SYMBOL_GPL drivers/w1/wire 0x28497d53 w1_write_block +EXPORT_SYMBOL_GPL drivers/w1/wire 0x53292ccd w1_touch_bit +EXPORT_SYMBOL_GPL drivers/w1/wire 0x550d3d77 w1_reset_resume_command +EXPORT_SYMBOL_GPL drivers/w1/wire 0x63757e92 w1_calc_crc8 +EXPORT_SYMBOL_GPL drivers/w1/wire 0x699fd786 w1_read_block +EXPORT_SYMBOL_GPL drivers/w1/wire 0x88558566 w1_write_8 +EXPORT_SYMBOL_GPL drivers/w1/wire 0xa8a01353 w1_read_8 +EXPORT_SYMBOL_GPL drivers/w1/wire 0xb5101af8 w1_reset_bus +EXPORT_SYMBOL_GPL drivers/w1/wire 0xc4d21a70 w1_triplet +EXPORT_SYMBOL_GPL drivers/w1/wire 0xc6730117 w1_reset_select_slave +EXPORT_SYMBOL_GPL drivers/w1/wire 0xfd868cb1 w1_touch_block +EXPORT_SYMBOL_GPL fs/dlm/dlm 0x3af7aef7 dlm_posix_get +EXPORT_SYMBOL_GPL fs/dlm/dlm 0x4b62826c dlm_unlock +EXPORT_SYMBOL_GPL fs/dlm/dlm 0x5c77b231 dlm_posix_lock +EXPORT_SYMBOL_GPL fs/dlm/dlm 0x647d6170 dlm_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/dlm/dlm 0xd9b1af99 dlm_posix_unlock +EXPORT_SYMBOL_GPL fs/fscache/fscache 0x092cf98e fscache_object_sleep_till_congested +EXPORT_SYMBOL_GPL fs/lockd/lockd 0x2f402edf nlmclnt_done +EXPORT_SYMBOL_GPL fs/lockd/lockd 0x497da1ef lockd_down +EXPORT_SYMBOL_GPL fs/lockd/lockd 0x4ea323fc nlmsvc_ops +EXPORT_SYMBOL_GPL fs/lockd/lockd 0x62995581 nlmclnt_proc +EXPORT_SYMBOL_GPL fs/lockd/lockd 0x77e35ccc nlmsvc_unlock_all_by_ip +EXPORT_SYMBOL_GPL fs/lockd/lockd 0xaaf041b4 nlmsvc_unlock_all_by_sb +EXPORT_SYMBOL_GPL fs/lockd/lockd 0xb75e06eb nlmclnt_init +EXPORT_SYMBOL_GPL fs/lockd/lockd 0xceb45e74 lockd_up +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x010c637f nfs_pgheader_init +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x01b1bbb3 nfs_server_copy_userdata +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x0294c6a2 nfs_callback_nr_threads +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x03e8f006 nfs_fhget +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x04077187 nfs_pageio_reset_read_mds +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x05ff8f12 nfs_free_client +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x07685266 nfs_free_server +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x099208e2 nfs_get_client +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x0ab099f4 nfs_writeback_update_inode +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x0ba835fc nfs_pageio_reset_write_mds +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x0f12710c nfs_flock +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x0f6bf6fc nfs_show_options +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x10436ec2 nfs_retry_commit +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x10962bc2 nfs_auth_info_match +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x14f0dbd1 nfs_pageio_init_write +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x189bfd5a nfs_release_request +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x1ba26c23 nfs_client_init_status +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x1c0ea8f1 nfs_mknod +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x1c292add nfs_put_client +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x1c32cf44 nfs_setsecurity +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x1eda497d __tracepoint_nfs_fsync_enter +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x22d795a8 _nfs_display_fhandle_hash +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x23b4e374 nfs_commit_inode +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x26884ff7 nfs_alloc_fhandle +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x285b2e9b nfs_invalidate_atime +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x2d7e95b6 nfs_show_devname +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x2d9f17b4 nfs_rmdir +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x2f68b6e0 nfs_free_inode +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x3133764d nfs_may_open +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x3725fbc6 nfs_mark_client_ready +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x37765e49 nfs_server_insert_lists +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x37e65f3f nfs_commitdata_release +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x39e05ac3 nfs_idmap_cache_timeout +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x3cbe96d4 nfs_sb_active +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x3f2690f2 nfs_check_flags +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x40739385 nfs_wait_bit_killable +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x42eb519d nfs_revalidate_inode +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x42f2c81f nfs4_client_id_uniquifier +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x4315ca75 nfs_request_add_commit_list +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x450aa86b nfs_lookup +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x463af344 nfs_commitdata_alloc +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x4708cf70 nfs_scan_commit_list +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x47814233 nfs_force_lookup_revalidate +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x4ac65999 nfs_request_remove_commit_list +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x4cb9e001 recover_lost_locks +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x4dc570ac nfs_clear_verifier_delegated +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x4e4afe64 nfs_do_submount +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x4e783bfb nfs_inode_attach_open_context +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x4e97fc50 nfs_try_get_tree +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x51892d61 nfs_callback_set_tcpport +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x51b8d69c nfs_init_cinfo +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x52247bf5 nfs_client_for_each_server +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x52e36900 nfs_zap_acl_cache +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x543d364f nfs_pageio_resend +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x5600a3ee nfs_put_lock_context +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x5711792b nfs_server_remove_lists +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x584b8482 nfs_inc_attr_generation_counter +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x5985140a nfs_probe_fsinfo +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x59a2904f nfs_create_server +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x5ca992c0 nfs_fs_type +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x5d061005 nfs_generic_pgio +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x5d1aca4b nfs_file_fsync +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x5e5defe7 nfs_file_set_open_context +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x62d09303 nfs_lock +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x63e14e3c __tracepoint_nfs_fsync_exit +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x66ed2a6c unregister_nfs_version +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x675fe895 nfs_pageio_init_read +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x695f423e alloc_nfs_open_context +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x69f4f886 nfs_file_operations +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x6bdac1ad nfs_post_op_update_inode +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x6cbe3383 nfs_commit_free +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x7199039e nfs_symlink +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x77e57155 nfs_kill_super +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x7bc6a006 nfs_file_mmap +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x7ebf4ace __tracepoint_nfs_xdr_status +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x832e8f0b nfs_alloc_fattr +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x85c14926 register_nfs_version +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x8853894f nfs_link +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x890e39aa nfs_getattr +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x893769fd nfs_show_stats +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x89436a40 nfs_access_add_cache +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x8b2dae7e nfs_statfs +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x8ca36d1d nfs_setattr +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x8dcd64d1 nfs_permission +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x8f723e86 nfs_generic_pg_test +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x90a5530f nfsiod_workqueue +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x91d1fe52 max_session_slots +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x939692d0 nfs_file_llseek +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x93d19936 nfs_alloc_client +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x93d7f424 nfs_access_zap_cache +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x94ca59f1 nfs_rename +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x95c2feba nfs_close_context +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x96bcd7f0 nfs_write_inode +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x97b1bfc3 nfs_wait_client_init_complete +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x98b0ece8 nfs_init_timeout_values +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x9a97e5db nfs4_fs_type +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x9b5fafbe nfs_request_add_commit_list_locked +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x9ef0bb40 put_nfs_open_context +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xa05ca625 nfs_fattr_init +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xa2340dc7 nfs_create +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xa42b8982 nfs_show_path +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xa53bf209 nfs_path +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xa5771f42 nfs_refresh_inode +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xa7c088a9 nfs_pgio_header_alloc +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xa8e9e1ae send_implementation_id +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xa8f19c80 nfs_filemap_write_and_wait_range +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xaaa14361 nfs_dreq_bytes_left +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xaafd4acc max_session_cb_slots +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xac7bb827 nfs_wait_on_request +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xad480bac nfs_fscache_open_file +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xb20f1065 nfs_instantiate +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xb27b9fab nfs_add_or_obtain +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xb52170a3 nfs_initiate_pgio +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xb5b1351b nfs_alloc_inode +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xb5b893ed nfs_open +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xb6838eb1 nfs_init_commit +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xb77e1835 nfs_dentry_operations +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xb7ee9d32 get_nfs_open_context +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xb8978881 nfs_pgio_header_free +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xbeec8d09 nfs_file_release +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xc21646fe nfs_clone_server +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xc297cb07 nfs_sb_deactive +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xc3490823 nfs_atomic_open +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xc3a2be67 nfs_net_id +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xc3fc5307 nfs_umount_begin +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xc920024c nfs_set_verifier +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xca10255b nfs_alloc_server +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xcc6ed4d5 nfs_initiate_commit +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xce41b3fe nfs_submount +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xcfb3de61 nfs_async_iocounter_wait +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xd5a4ab7a nfs_file_read +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xd899a0ce nfs_init_client +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xda50dd02 nfs_file_write +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xdadc544c nfs_pgio_current_mirror +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xdae9b5d7 nfs4_disable_idmapping +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xdc0bd5b2 nfs_clear_inode +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xe048d5cd nfs_get_lock_context +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xe0b4c9e8 nfs_create_rpc_client +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xe135cedf nfs4_dentry_operations +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xe1cf1958 nfs_post_op_update_inode_force_wcc +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xe55ff5e0 nfs_setattr_update_inode +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xe58a3864 nfs_drop_inode +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xe5ca5a66 nfs_client_init_is_complete +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xe60f4d50 nfs_wb_all +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xe8f67bc9 nfs4_label_alloc +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xea767c0e nfs_access_set_mask +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xea7bb3ec nfs_reconfigure +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xf0289c07 nfs_sync_inode +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xf79dec84 nfs_mkdir +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xf7c92d0c nfs_init_server_rpcclient +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xf7eec8c8 nfs_sops +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xf850e4b0 nfs_unlink +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xfc619abd _nfs_display_fhandle +EXPORT_SYMBOL_GPL fs/nfs/nfsv3 0xc56f1056 nfs3_set_ds_client +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x04061068 pnfs_generic_pg_check_range +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x054bef45 layoutstats_timer +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x0f896457 nfs4_init_ds_session +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x0fbfe299 pnfs_free_commit_array +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x13fade39 nfs4_setup_sequence +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x1444b34f pnfs_generic_recover_commit_reqs +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x1dbf15ab pnfs_generic_write_commit_done +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x1fc6870f nfs42_ssc_close +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x218dd56f nfs4_schedule_migration_recovery +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x25bb4ccc nfs4_init_deviceid_node +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x2b03ec0b __tracepoint_ff_layout_write_error +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x33098772 nfs4_proc_getdeviceinfo +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x3594daf7 pnfs_generic_pg_readpages +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x36751a61 __tracepoint_pnfs_mds_fallback_pg_init_write +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x39c33aff pnfs_generic_pg_init_write +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x3a539867 nfs4_sequence_done +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x3e73f10c __tracepoint_pnfs_mds_fallback_pg_init_read +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x434fcfad pnfs_error_mark_layout_for_return +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x463be3b1 nfs4_put_deviceid_node +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x5205f7ed __tracepoint_pnfs_mds_fallback_write_done +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x59238307 nfs4_mark_deviceid_available +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x5c9f0739 pnfs_update_layout +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x686396c4 nfs4_schedule_stateid_recovery +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x68a125b2 pnfs_set_layoutcommit +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x69d3558d pnfs_generic_rw_release +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x6a19da7b nfs4_decode_mp_ds_addr +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x6c54383c pnfs_layoutcommit_inode +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x6e16b52a __tracepoint_pnfs_mds_fallback_read_pagelist +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x71087501 nfs4_delete_deviceid +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x719f5c67 pnfs_generic_pg_init_read +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x74d1c22b pnfs_register_layoutdriver +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x751acc9c pnfs_generic_pg_writepages +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x78427f5e nfs4_test_session_trunk +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x7b807acb pnfs_generic_pg_cleanup +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x7ddfa662 pnfs_generic_clear_request_commit +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x7fa19a0c pnfs_nfs_generic_sync +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x84ecab6a nfs41_sequence_done +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x89f28eb1 nfs42_ssc_open +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x8fbe8ddd pnfs_set_lo_fail +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x8fd6a890 pnfs_generic_layout_insert_lseg +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x90164ab8 pnfs_read_done_resend_to_mds +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x92b4f642 nfs4_set_ds_client +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x9808c888 nfs4_pnfs_ds_connect +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x9aad3a1e pnfs_generic_sync +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x9d162943 __tracepoint_ff_layout_commit_error +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xa02df320 nfs_map_string_to_numeric +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xa37bfca2 pnfs_ld_read_done +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xa6192cb8 pnfs_report_layoutstat +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xa6523918 nfs4_mark_deviceid_unavailable +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xa6726911 nfs4_find_or_create_ds_client +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xa912a546 pnfs_add_commit_array +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xaaa04a91 nfs4_set_rw_stateid +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xaecd598b pnfs_layout_mark_request_commit +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xb2b556d5 pnfs_generic_ds_cinfo_destroy +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xb30425fe nfs4_schedule_lease_recovery +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xb4895436 __tracepoint_nfs4_pnfs_write +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xb5dac3d5 pnfs_write_done_resend_to_mds +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xb6d8af7e pnfs_generic_scan_commit_lists +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xb85de48c __tracepoint_pnfs_mds_fallback_read_done +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xc151e45f __tracepoint_pnfs_mds_fallback_write_pagelist +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xc2b2f58a nfs_remove_bad_delegation +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xc3d62904 pnfs_ld_write_done +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xc64ad630 nfs4_schedule_lease_moved_recovery +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xcac9675a __tracepoint_nfs4_pnfs_read +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xcf8f1c83 pnfs_put_lseg +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xd482b537 pnfs_destroy_layout +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xd6d3c4be pnfs_generic_commit_pagelist +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xd7e77626 nfs4_find_get_deviceid +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xd9dcce0d pnfs_unregister_layoutdriver +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xddc1e3e6 nfs4_pnfs_ds_add +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xde049240 nfs4_schedule_session_recovery +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xde5fb5fe __tracepoint_ff_layout_read_error +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xe046bc8a nfs4_pnfs_ds_put +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xe0fd20aa nfs4_test_deviceid_unavailable +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xe1df130c pnfs_generic_pg_test +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xe1eca9bd __tracepoint_pnfs_mds_fallback_pg_get_mirror_count +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xe5a7264c __tracepoint_nfs4_pnfs_commit_ds +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xe9a65038 nfs42_proc_layouterror +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xed15fb41 nfs4_print_deviceid +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xee600402 pnfs_alloc_commit_array +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xeeeb7be4 pnfs_generic_search_commit_reqs +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xf3904f5c pnfs_generic_pg_check_layout +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xf4fc9d8e pnfs_generic_ds_cinfo_release_lseg +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xf609fc49 pnfs_read_resend_pnfs +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xf7801360 nfs41_maxgetdevinfo_overhead +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xf80e437d pnfs_generic_prepare_to_resend_writes +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xf999267e pnfs_generic_commit_release +EXPORT_SYMBOL_GPL fs/nfs_common/grace 0x0fbfc1d0 opens_in_grace +EXPORT_SYMBOL_GPL fs/nfs_common/grace 0x1fe1e1ad locks_end_grace +EXPORT_SYMBOL_GPL fs/nfs_common/grace 0x953ef589 locks_in_grace +EXPORT_SYMBOL_GPL fs/nfs_common/grace 0x9a1bcdd2 locks_start_grace +EXPORT_SYMBOL_GPL fs/nfs_common/nfs_acl 0x18d873bf nfsacl_decode +EXPORT_SYMBOL_GPL fs/nfs_common/nfs_acl 0xa6c9f1b5 nfsacl_encode +EXPORT_SYMBOL_GPL fs/nfsd/nfsd 0x5b388f0f inter_copy_offload_enable +EXPORT_SYMBOL_GPL fs/ocfs2/cluster/ocfs2_nodemanager 0x11994796 o2nm_node_put +EXPORT_SYMBOL_GPL fs/ocfs2/cluster/ocfs2_nodemanager 0x1b89c6ee o2hb_fill_node_map +EXPORT_SYMBOL_GPL fs/ocfs2/cluster/ocfs2_nodemanager 0x1cb231d0 mlog_not_bits +EXPORT_SYMBOL_GPL fs/ocfs2/cluster/ocfs2_nodemanager 0x364f639b o2net_send_message_vec +EXPORT_SYMBOL_GPL fs/ocfs2/cluster/ocfs2_nodemanager 0x4900035b o2hb_stop_all_regions +EXPORT_SYMBOL_GPL fs/ocfs2/cluster/ocfs2_nodemanager 0x492026a1 o2nm_node_get +EXPORT_SYMBOL_GPL fs/ocfs2/cluster/ocfs2_nodemanager 0x58614cb7 o2hb_unregister_callback +EXPORT_SYMBOL_GPL fs/ocfs2/cluster/ocfs2_nodemanager 0x58c88ff2 o2hb_get_all_regions +EXPORT_SYMBOL_GPL fs/ocfs2/cluster/ocfs2_nodemanager 0x687f6251 mlog_and_bits +EXPORT_SYMBOL_GPL fs/ocfs2/cluster/ocfs2_nodemanager 0x6a0c3847 __mlog_printk +EXPORT_SYMBOL_GPL fs/ocfs2/cluster/ocfs2_nodemanager 0x7383fc43 o2hb_setup_callback +EXPORT_SYMBOL_GPL fs/ocfs2/cluster/ocfs2_nodemanager 0x87bf4389 o2nm_get_node_by_num +EXPORT_SYMBOL_GPL fs/ocfs2/cluster/ocfs2_nodemanager 0x92344b3c o2hb_register_callback +EXPORT_SYMBOL_GPL fs/ocfs2/cluster/ocfs2_nodemanager 0xa87bc9e7 o2nm_configured_node_map +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 0xe6acf375 o2nm_get_node_by_ip +EXPORT_SYMBOL_GPL fs/ocfs2/cluster/ocfs2_nodemanager 0xf1a5611d o2net_unregister_handler_list +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 0x6a053b4e dlm_register_domain +EXPORT_SYMBOL_GPL fs/ocfs2/dlm/ocfs2_dlm 0x7a1211f8 dlm_setup_eviction_cb +EXPORT_SYMBOL_GPL fs/ocfs2/dlm/ocfs2_dlm 0x80f49748 dlmunlock +EXPORT_SYMBOL_GPL fs/ocfs2/dlm/ocfs2_dlm 0x8d91a60a dlm_unregister_domain +EXPORT_SYMBOL_GPL fs/ocfs2/dlm/ocfs2_dlm 0xbf8df008 dlmlock +EXPORT_SYMBOL_GPL fs/ocfs2/dlm/ocfs2_dlm 0xc4904112 dlm_register_eviction_cb +EXPORT_SYMBOL_GPL fs/ocfs2/dlm/ocfs2_dlm 0xcffc0b9c dlm_print_one_lock +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 0x14644275 ocfs2_stack_glue_unregister +EXPORT_SYMBOL_GPL fs/ocfs2/ocfs2_stackglue 0x1475f64b ocfs2_dlm_lvb_valid +EXPORT_SYMBOL_GPL fs/ocfs2/ocfs2_stackglue 0x201acce5 ocfs2_stack_glue_register +EXPORT_SYMBOL_GPL fs/ocfs2/ocfs2_stackglue 0x4d3af7fa ocfs2_cluster_hangup +EXPORT_SYMBOL_GPL fs/ocfs2/ocfs2_stackglue 0x59ce41ff ocfs2_kset +EXPORT_SYMBOL_GPL fs/ocfs2/ocfs2_stackglue 0x76f40744 ocfs2_dlm_lvb +EXPORT_SYMBOL_GPL fs/ocfs2/ocfs2_stackglue 0x8bc5d07b ocfs2_plock +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 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/pstore/pstore_blk 0x43cc3d4b pstore_blk_get_config +EXPORT_SYMBOL_GPL fs/pstore/pstore_blk 0x941c79d7 unregister_pstore_blk +EXPORT_SYMBOL_GPL fs/pstore/pstore_blk 0xb32bf368 register_pstore_blk +EXPORT_SYMBOL_GPL fs/pstore/pstore_blk 0xb542cba5 unregister_pstore_device +EXPORT_SYMBOL_GPL fs/pstore/pstore_blk 0xf31bbdd5 register_pstore_device +EXPORT_SYMBOL_GPL fs/pstore/pstore_zone 0x74d120f1 register_pstore_zone +EXPORT_SYMBOL_GPL fs/pstore/pstore_zone 0xd49ab95f unregister_pstore_zone +EXPORT_SYMBOL_GPL kernel/torture 0x1b2fca48 torture_must_stop_irq +EXPORT_SYMBOL_GPL kernel/torture 0x1be7d8be torture_onoff_failures +EXPORT_SYMBOL_GPL kernel/torture 0x3e9619f5 torture_onoff_stats +EXPORT_SYMBOL_GPL kernel/torture 0x3ff9be11 torture_online +EXPORT_SYMBOL_GPL kernel/torture 0x447d9c95 torture_offline +EXPORT_SYMBOL_GPL kernel/torture 0x4c7529bd torture_shutdown_absorb +EXPORT_SYMBOL_GPL kernel/torture 0x52665f8b torture_random +EXPORT_SYMBOL_GPL kernel/torture 0x5a12a7da torture_stutter_init +EXPORT_SYMBOL_GPL kernel/torture 0x679d9e50 torture_must_stop +EXPORT_SYMBOL_GPL kernel/torture 0x688e6a64 torture_cleanup_end +EXPORT_SYMBOL_GPL kernel/torture 0x6c3ff11a torture_init_begin +EXPORT_SYMBOL_GPL kernel/torture 0x87bb682f _torture_stop_kthread +EXPORT_SYMBOL_GPL kernel/torture 0x8b0e1d2f torture_shuffle_init +EXPORT_SYMBOL_GPL kernel/torture 0xc67a49d4 torture_cleanup_begin +EXPORT_SYMBOL_GPL kernel/torture 0xc94a93e3 torture_onoff_init +EXPORT_SYMBOL_GPL kernel/torture 0xcaed6e2a _torture_create_kthread +EXPORT_SYMBOL_GPL kernel/torture 0xdbc5277a torture_shutdown_init +EXPORT_SYMBOL_GPL kernel/torture 0xe1f9ecc3 torture_shuffle_task_register +EXPORT_SYMBOL_GPL kernel/torture 0xe2430307 stutter_wait +EXPORT_SYMBOL_GPL kernel/torture 0xe6989fd3 torture_init_end +EXPORT_SYMBOL_GPL kernel/torture 0xf6d34fb5 torture_kthread_stopping +EXPORT_SYMBOL_GPL lib/842/842_compress 0xcf048a91 sw842_compress +EXPORT_SYMBOL_GPL lib/842/842_decompress 0xa4adedf1 sw842_decompress +EXPORT_SYMBOL_GPL lib/crc4 0x696b3a5a crc4 +EXPORT_SYMBOL_GPL lib/crc64 0x955ee96c crc64_be +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 0x39e8fa4b poly1305_update_generic +EXPORT_SYMBOL_GPL lib/crypto/libpoly1305 0x4370baea poly1305_init_generic +EXPORT_SYMBOL_GPL lib/crypto/libpoly1305 0x4a833012 poly1305_final_generic +EXPORT_SYMBOL_GPL lib/notifier-error-inject 0x1337b2f2 notifier_err_inject_dir +EXPORT_SYMBOL_GPL lib/notifier-error-inject 0x3265cc55 notifier_err_inject_init +EXPORT_SYMBOL_GPL lib/raid6/raid6_pq 0x021957e1 raid6_datap_recov +EXPORT_SYMBOL_GPL lib/raid6/raid6_pq 0x0f8a2742 raid6_2data_recov +EXPORT_SYMBOL_GPL lib/raid6/raid6_pq 0xd4cb6873 raid6_call +EXPORT_SYMBOL_GPL net/6lowpan/6lowpan 0x0a3a213c lowpan_header_decompress +EXPORT_SYMBOL_GPL net/6lowpan/6lowpan 0x8d4f2fa4 lowpan_header_compress +EXPORT_SYMBOL_GPL net/802/garp 0x10dfaea1 garp_register_application +EXPORT_SYMBOL_GPL net/802/garp 0x4df95928 garp_request_join +EXPORT_SYMBOL_GPL net/802/garp 0x66ee8693 garp_unregister_application +EXPORT_SYMBOL_GPL net/802/garp 0xb21eee46 garp_request_leave +EXPORT_SYMBOL_GPL net/802/garp 0xcd3c0b9d garp_uninit_applicant +EXPORT_SYMBOL_GPL net/802/garp 0xd0009f9f garp_init_applicant +EXPORT_SYMBOL_GPL net/802/mrp 0x4261907a mrp_request_leave +EXPORT_SYMBOL_GPL net/802/mrp 0x6a89c5ec mrp_register_application +EXPORT_SYMBOL_GPL net/802/mrp 0x832e6ce2 mrp_request_join +EXPORT_SYMBOL_GPL net/802/mrp 0x84359c1a mrp_unregister_application +EXPORT_SYMBOL_GPL net/802/mrp 0x8aa9fa5e mrp_uninit_applicant +EXPORT_SYMBOL_GPL net/802/mrp 0xf467f788 mrp_init_applicant +EXPORT_SYMBOL_GPL net/802/stp 0x25619354 stp_proto_register +EXPORT_SYMBOL_GPL net/802/stp 0x4e9b0a32 stp_proto_unregister +EXPORT_SYMBOL_GPL net/9p/9pnet 0x56945adb p9_client_xattrwalk +EXPORT_SYMBOL_GPL net/9p/9pnet 0x7a157a4c p9_client_xattrcreate +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 0x02ca46e5 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/bluetooth/bluetooth 0x0d4012b0 l2cap_chan_create +EXPORT_SYMBOL_GPL net/bluetooth/bluetooth 0x31726509 l2cap_chan_del +EXPORT_SYMBOL_GPL net/bluetooth/bluetooth 0x38fd62f7 l2cap_chan_set_defaults +EXPORT_SYMBOL_GPL net/bluetooth/bluetooth 0x471ae327 l2cap_chan_put +EXPORT_SYMBOL_GPL net/bluetooth/bluetooth 0x788ad79e l2cap_chan_connect +EXPORT_SYMBOL_GPL net/bluetooth/bluetooth 0xb47c892e bt_debugfs +EXPORT_SYMBOL_GPL net/bluetooth/bluetooth 0xd80fb611 l2cap_chan_send +EXPORT_SYMBOL_GPL net/bluetooth/bluetooth 0xedfe98d1 l2cap_chan_list +EXPORT_SYMBOL_GPL net/bluetooth/bluetooth 0xf3fdb85f l2cap_add_psm +EXPORT_SYMBOL_GPL net/bluetooth/hidp/hidp 0xf9fa97d4 hidp_hid_driver +EXPORT_SYMBOL_GPL net/bridge/bridge 0x0fe7457a br_forward_finish +EXPORT_SYMBOL_GPL net/bridge/bridge 0x11e77a0b br_multicast_enabled +EXPORT_SYMBOL_GPL net/bridge/bridge 0x22129848 br_dev_queue_push_xmit +EXPORT_SYMBOL_GPL net/bridge/bridge 0x39c10626 nf_br_ops +EXPORT_SYMBOL_GPL net/bridge/bridge 0x3e723cde br_port_flag_is_set +EXPORT_SYMBOL_GPL net/bridge/bridge 0x43ba82c1 br_handle_frame_finish +EXPORT_SYMBOL_GPL net/bridge/bridge 0x5a03b25e br_fdb_find_port +EXPORT_SYMBOL_GPL net/bridge/bridge 0x83c484a4 br_multicast_has_querier_adjacent +EXPORT_SYMBOL_GPL net/bridge/bridge 0x96e48497 br_vlan_enabled +EXPORT_SYMBOL_GPL net/bridge/bridge 0x9e52fa2a br_vlan_get_info +EXPORT_SYMBOL_GPL net/bridge/bridge 0xaeabf84e br_fdb_clear_offload +EXPORT_SYMBOL_GPL net/bridge/bridge 0xb584b747 br_vlan_get_proto +EXPORT_SYMBOL_GPL net/bridge/bridge 0xba4f79a5 br_forward +EXPORT_SYMBOL_GPL net/bridge/bridge 0xbe672c06 br_multicast_list_adjacent +EXPORT_SYMBOL_GPL net/bridge/bridge 0xd85b8f37 br_vlan_get_pvid_rcu +EXPORT_SYMBOL_GPL net/bridge/bridge 0xdaa3bd5f br_multicast_has_querier_anywhere +EXPORT_SYMBOL_GPL net/bridge/bridge 0xeeed2207 br_multicast_router +EXPORT_SYMBOL_GPL net/bridge/bridge 0xf8bb55d9 br_vlan_get_pvid +EXPORT_SYMBOL_GPL net/core/failover 0x696c67d3 failover_register +EXPORT_SYMBOL_GPL net/core/failover 0xacc72f00 failover_slave_unregister +EXPORT_SYMBOL_GPL net/core/failover 0xfe7c909f failover_unregister +EXPORT_SYMBOL_GPL net/dccp/dccp 0x13612146 dccp_init_sock +EXPORT_SYMBOL_GPL net/dccp/dccp 0x163267b6 dccp_feat_nn_get +EXPORT_SYMBOL_GPL net/dccp/dccp 0x182ec2bf dccp_ackvec_parsed_add +EXPORT_SYMBOL_GPL net/dccp/dccp 0x19367fce dccp_getsockopt +EXPORT_SYMBOL_GPL net/dccp/dccp 0x308c8007 dccp_setsockopt +EXPORT_SYMBOL_GPL net/dccp/dccp 0x374682f5 dccp_disconnect +EXPORT_SYMBOL_GPL net/dccp/dccp 0x3c3db164 dccp_reqsk_init +EXPORT_SYMBOL_GPL net/dccp/dccp 0x48465ec9 dccp_parse_options +EXPORT_SYMBOL_GPL net/dccp/dccp 0x4cdd391d dccp_feat_list_purge +EXPORT_SYMBOL_GPL net/dccp/dccp 0x50a1fa1b dccp_shutdown +EXPORT_SYMBOL_GPL net/dccp/dccp 0x52d9b31c dccp_set_state +EXPORT_SYMBOL_GPL net/dccp/dccp 0x557d4046 dccp_recvmsg +EXPORT_SYMBOL_GPL net/dccp/dccp 0x57a824f4 dccp_make_response +EXPORT_SYMBOL_GPL net/dccp/dccp 0x58ababfb inet_dccp_listen +EXPORT_SYMBOL_GPL net/dccp/dccp 0x59814a84 dccp_statistics +EXPORT_SYMBOL_GPL net/dccp/dccp 0x59ab69ba dccp_child_process +EXPORT_SYMBOL_GPL net/dccp/dccp 0x73ef33c2 dccp_close +EXPORT_SYMBOL_GPL net/dccp/dccp 0x80993155 dccp_timestamp +EXPORT_SYMBOL_GPL net/dccp/dccp 0x8130eda8 dccp_ioctl +EXPORT_SYMBOL_GPL net/dccp/dccp 0x86be7924 dccp_packet_name +EXPORT_SYMBOL_GPL net/dccp/dccp 0x8c4faac0 dccp_check_req +EXPORT_SYMBOL_GPL net/dccp/dccp 0x8f70fda0 dccp_send_ack +EXPORT_SYMBOL_GPL net/dccp/dccp 0x920cba70 dccp_ctl_make_reset +EXPORT_SYMBOL_GPL net/dccp/dccp 0x9598d24d dccp_ackvec_parsed_cleanup +EXPORT_SYMBOL_GPL net/dccp/dccp 0x9629347a dccp_rcv_established +EXPORT_SYMBOL_GPL net/dccp/dccp 0x978ab94e dccp_feat_signal_nn_change +EXPORT_SYMBOL_GPL net/dccp/dccp 0x98eb3556 dccp_poll +EXPORT_SYMBOL_GPL net/dccp/dccp 0xa43e19f0 dccp_death_row +EXPORT_SYMBOL_GPL net/dccp/dccp 0xaae7359b dccp_reqsk_send_ack +EXPORT_SYMBOL_GPL net/dccp/dccp 0xb04c12ee dccp_insert_option +EXPORT_SYMBOL_GPL net/dccp/dccp 0xb82cffaa dccp_send_sync +EXPORT_SYMBOL_GPL net/dccp/dccp 0xbb543353 dccp_destroy_sock +EXPORT_SYMBOL_GPL net/dccp/dccp 0xc1c0ff3b dccp_sync_mss +EXPORT_SYMBOL_GPL net/dccp/dccp 0xde6a8af9 dccp_connect +EXPORT_SYMBOL_GPL net/dccp/dccp 0xe27d41d4 dccp_done +EXPORT_SYMBOL_GPL net/dccp/dccp 0xf0784aa7 dccp_orphan_count +EXPORT_SYMBOL_GPL net/dccp/dccp 0xf55ef99b dccp_hashinfo +EXPORT_SYMBOL_GPL net/dccp/dccp 0xf6a3a58f dccp_sendmsg +EXPORT_SYMBOL_GPL net/dccp/dccp 0xf78d342c dccp_create_openreq_child +EXPORT_SYMBOL_GPL net/dccp/dccp 0xfec07173 dccp_rcv_state_process +EXPORT_SYMBOL_GPL net/dccp/dccp_ipv4 0x0a211203 dccp_v4_send_check +EXPORT_SYMBOL_GPL net/dccp/dccp_ipv4 0x4facfc5a dccp_v4_connect +EXPORT_SYMBOL_GPL net/dccp/dccp_ipv4 0xa591e392 dccp_v4_request_recv_sock +EXPORT_SYMBOL_GPL net/dccp/dccp_ipv4 0xa94c3a24 dccp_invalid_packet +EXPORT_SYMBOL_GPL net/dccp/dccp_ipv4 0xe5fef2cf dccp_v4_do_rcv +EXPORT_SYMBOL_GPL net/dccp/dccp_ipv4 0xfb3850a3 dccp_v4_conn_request +EXPORT_SYMBOL_GPL net/dsa/dsa_core 0x00247f59 dsa_devlink_resource_occ_get_register +EXPORT_SYMBOL_GPL net/dsa/dsa_core 0x072c0e0c dsa_devlink_param_set +EXPORT_SYMBOL_GPL net/dsa/dsa_core 0x2cc91083 dsa_switch_find +EXPORT_SYMBOL_GPL net/dsa/dsa_core 0x3ce7a001 dsa_switch_suspend +EXPORT_SYMBOL_GPL net/dsa/dsa_core 0x498a3057 dsa_unregister_switch +EXPORT_SYMBOL_GPL net/dsa/dsa_core 0x577d03a6 dsa_port_get_ethtool_phy_stats +EXPORT_SYMBOL_GPL net/dsa/dsa_core 0x58c4913a dsa_devlink_resources_unregister +EXPORT_SYMBOL_GPL net/dsa/dsa_core 0x5c5bb8ee unregister_dsa_notifier +EXPORT_SYMBOL_GPL net/dsa/dsa_core 0x65aab2f4 dsa_switch_resume +EXPORT_SYMBOL_GPL net/dsa/dsa_core 0x6b1cd31f dsa_devlink_resource_register +EXPORT_SYMBOL_GPL net/dsa/dsa_core 0x6e5ab771 dsa_tag_drivers_unregister +EXPORT_SYMBOL_GPL net/dsa/dsa_core 0x79130b8f dsa_devlink_params_register +EXPORT_SYMBOL_GPL net/dsa/dsa_core 0x79926ef9 dsa_port_phylink_mac_change +EXPORT_SYMBOL_GPL net/dsa/dsa_core 0x7efd5153 dsa_dev_to_net_device +EXPORT_SYMBOL_GPL net/dsa/dsa_core 0x99490865 dsa_port_from_netdev +EXPORT_SYMBOL_GPL net/dsa/dsa_core 0x9e5ce7ed dsa_tag_drivers_register +EXPORT_SYMBOL_GPL net/dsa/dsa_core 0xa384f75a call_dsa_notifiers +EXPORT_SYMBOL_GPL net/dsa/dsa_core 0xa6417f9a dsa_devlink_resource_occ_get_unregister +EXPORT_SYMBOL_GPL net/dsa/dsa_core 0xa8350752 dsa_devlink_params_unregister +EXPORT_SYMBOL_GPL net/dsa/dsa_core 0xb7a9d92b dsa_port_get_phy_sset_count +EXPORT_SYMBOL_GPL net/dsa/dsa_core 0xc94723f0 dsa_register_switch +EXPORT_SYMBOL_GPL net/dsa/dsa_core 0xd5f2f99a dsa_port_get_phy_strings +EXPORT_SYMBOL_GPL net/dsa/dsa_core 0xde4adfff dsa_devlink_param_get +EXPORT_SYMBOL_GPL net/dsa/dsa_core 0xe7f874a4 dsa_enqueue_skb +EXPORT_SYMBOL_GPL net/dsa/dsa_core 0xf86039e0 register_dsa_notifier +EXPORT_SYMBOL_GPL net/dsa/tag_8021q 0x2c0cf5f1 dsa_8021q_crosschip_bridge_join +EXPORT_SYMBOL_GPL net/dsa/tag_8021q 0x302c2b16 dsa_8021q_crosschip_bridge_leave +EXPORT_SYMBOL_GPL net/dsa/tag_8021q 0x415e894e dsa_8021q_rx_subvlan +EXPORT_SYMBOL_GPL net/dsa/tag_8021q 0x417d1fed dsa_8021q_rx_switch_id +EXPORT_SYMBOL_GPL net/dsa/tag_8021q 0x4bfcb24f dsa_8021q_rx_vid +EXPORT_SYMBOL_GPL net/dsa/tag_8021q 0x58ff2fbf dsa_8021q_xmit +EXPORT_SYMBOL_GPL net/dsa/tag_8021q 0x5f5112f0 dsa_port_setup_8021q_tagging +EXPORT_SYMBOL_GPL net/dsa/tag_8021q 0x9e59271d dsa_8021q_rx_source_port +EXPORT_SYMBOL_GPL net/dsa/tag_8021q 0xabb6389a dsa_8021q_rx_vid_subvlan +EXPORT_SYMBOL_GPL net/dsa/tag_8021q 0xacee1aca dsa_8021q_tx_vid +EXPORT_SYMBOL_GPL net/dsa/tag_8021q 0xf13e1803 vid_is_dsa_8021q +EXPORT_SYMBOL_GPL net/ieee802154/ieee802154 0x0c4bead4 ieee802154_hdr_pull +EXPORT_SYMBOL_GPL net/ieee802154/ieee802154 0x4e33043c ieee802154_hdr_peek +EXPORT_SYMBOL_GPL net/ieee802154/ieee802154 0x87e2553b ieee802154_max_payload +EXPORT_SYMBOL_GPL net/ieee802154/ieee802154 0xba0c09ae ieee802154_hdr_push +EXPORT_SYMBOL_GPL net/ieee802154/ieee802154 0xf052cdea ieee802154_hdr_peek_addrs +EXPORT_SYMBOL_GPL net/ife/ife 0x18d86551 ife_decode +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 0xca91216b ife_encode +EXPORT_SYMBOL_GPL net/ife/ife 0xe7888e98 ife_tlv_meta_encode +EXPORT_SYMBOL_GPL net/ipv4/esp4 0x65f32a05 esp_output_head +EXPORT_SYMBOL_GPL net/ipv4/esp4 0xa85a81e7 esp_input_done2 +EXPORT_SYMBOL_GPL net/ipv4/esp4 0xbf8976a7 esp_output_tail +EXPORT_SYMBOL_GPL net/ipv4/gre 0x83e0a3b0 gre_del_protocol +EXPORT_SYMBOL_GPL net/ipv4/gre 0xe1e94db6 gre_add_protocol +EXPORT_SYMBOL_GPL net/ipv4/inet_diag 0x2478c488 inet_diag_msg_attrs_fill +EXPORT_SYMBOL_GPL net/ipv4/inet_diag 0x2a19d0c7 inet_diag_dump_icsk +EXPORT_SYMBOL_GPL net/ipv4/inet_diag 0x301fa481 inet_diag_register +EXPORT_SYMBOL_GPL net/ipv4/inet_diag 0x81193464 inet_diag_dump_one_icsk +EXPORT_SYMBOL_GPL net/ipv4/inet_diag 0xbe6363ef inet_diag_find_one_icsk +EXPORT_SYMBOL_GPL net/ipv4/inet_diag 0xdd5ae8ea inet_diag_msg_common_fill +EXPORT_SYMBOL_GPL net/ipv4/inet_diag 0xe0a2ce97 inet_diag_unregister +EXPORT_SYMBOL_GPL net/ipv4/inet_diag 0xf70441d8 inet_diag_bc_sk +EXPORT_SYMBOL_GPL net/ipv4/inet_diag 0xfee31f15 inet_sk_diag_fill +EXPORT_SYMBOL_GPL net/ipv4/ip_gre 0x614de758 gretap_fb_dev_create +EXPORT_SYMBOL_GPL net/ipv4/ip_tunnel 0x417d3669 ip_tunnel_ctl +EXPORT_SYMBOL_GPL net/ipv4/ip_tunnel 0x49d494e3 ip_tunnel_newlink +EXPORT_SYMBOL_GPL net/ipv4/ip_tunnel 0x4b725eb6 ip_tunnel_lookup +EXPORT_SYMBOL_GPL net/ipv4/ip_tunnel 0x5eb00338 ip_tunnel_rcv +EXPORT_SYMBOL_GPL net/ipv4/ip_tunnel 0x6f2d1f44 ip_tunnel_change_mtu +EXPORT_SYMBOL_GPL net/ipv4/ip_tunnel 0x7706aa07 ip_tunnel_changelink +EXPORT_SYMBOL_GPL net/ipv4/ip_tunnel 0x8c1f7a8d ip_tunnel_delete_nets +EXPORT_SYMBOL_GPL net/ipv4/ip_tunnel 0x8e429221 ip_tunnel_xmit +EXPORT_SYMBOL_GPL net/ipv4/ip_tunnel 0xa531bf19 ip_tunnel_setup +EXPORT_SYMBOL_GPL net/ipv4/ip_tunnel 0xa5d1004c ip_tunnel_encap_setup +EXPORT_SYMBOL_GPL net/ipv4/ip_tunnel 0xabd26d2e ip_md_tunnel_xmit +EXPORT_SYMBOL_GPL net/ipv4/ip_tunnel 0xb4abbb14 ip_tunnel_uninit +EXPORT_SYMBOL_GPL net/ipv4/ip_tunnel 0xc00e60f6 ip_tunnel_ioctl +EXPORT_SYMBOL_GPL net/ipv4/ip_tunnel 0xcd0496c9 ip_tunnel_init_net +EXPORT_SYMBOL_GPL net/ipv4/ip_tunnel 0xdc0ec809 __ip_tunnel_change_mtu +EXPORT_SYMBOL_GPL net/ipv4/ip_tunnel 0xecdacd3c ip_tunnel_dellink +EXPORT_SYMBOL_GPL net/ipv4/ip_tunnel 0xfcfb7330 ip_tunnel_init +EXPORT_SYMBOL_GPL net/ipv4/netfilter/arp_tables 0xe635adec arpt_alloc_initial_table +EXPORT_SYMBOL_GPL net/ipv4/netfilter/ip_tables 0x2f44f07d ipt_alloc_initial_table +EXPORT_SYMBOL_GPL net/ipv4/netfilter/nf_defrag_ipv4 0x7389b7a7 nf_defrag_ipv4_enable +EXPORT_SYMBOL_GPL net/ipv4/netfilter/nf_dup_ipv4 0xfcb5b894 nf_dup_ipv4 +EXPORT_SYMBOL_GPL net/ipv4/netfilter/nf_reject_ipv4 0x12d5d0d1 nf_reject_ip_tcphdr_put +EXPORT_SYMBOL_GPL net/ipv4/netfilter/nf_reject_ipv4 0x72c7a45e nf_reject_iphdr_put +EXPORT_SYMBOL_GPL net/ipv4/netfilter/nf_reject_ipv4 0x7327ee59 nf_send_unreach +EXPORT_SYMBOL_GPL net/ipv4/netfilter/nf_reject_ipv4 0x7750b84b nf_reject_ip_tcphdr_get +EXPORT_SYMBOL_GPL net/ipv4/netfilter/nf_reject_ipv4 0xe3713df5 nf_send_reset +EXPORT_SYMBOL_GPL net/ipv4/netfilter/nf_socket_ipv4 0xd0318515 nf_sk_lookup_slow_v4 +EXPORT_SYMBOL_GPL net/ipv4/netfilter/nf_tproxy_ipv4 0x268539f7 nf_tproxy_get_sock_v4 +EXPORT_SYMBOL_GPL net/ipv4/netfilter/nf_tproxy_ipv4 0x63143e33 nf_tproxy_laddr4 +EXPORT_SYMBOL_GPL net/ipv4/netfilter/nf_tproxy_ipv4 0x6edadde9 nf_tproxy_handle_time_wait4 +EXPORT_SYMBOL_GPL net/ipv4/netfilter/nft_fib_ipv4 0x27d27775 nft_fib4_eval +EXPORT_SYMBOL_GPL net/ipv4/netfilter/nft_fib_ipv4 0xdbc039dc nft_fib4_eval_type +EXPORT_SYMBOL_GPL net/ipv4/tcp_vegas 0x236e80e7 tcp_vegas_state +EXPORT_SYMBOL_GPL net/ipv4/tcp_vegas 0x4e0c350e tcp_vegas_cwnd_event +EXPORT_SYMBOL_GPL net/ipv4/tcp_vegas 0x6c2307c7 tcp_vegas_init +EXPORT_SYMBOL_GPL net/ipv4/tcp_vegas 0x92f43781 tcp_vegas_get_info +EXPORT_SYMBOL_GPL net/ipv4/tcp_vegas 0xc15979f1 tcp_vegas_pkts_acked +EXPORT_SYMBOL_GPL net/ipv4/udp_tunnel 0x02c9ff2c udp_tun_rx_dst +EXPORT_SYMBOL_GPL net/ipv4/udp_tunnel 0x531304dd udp_tunnel_sock_release +EXPORT_SYMBOL_GPL net/ipv4/udp_tunnel 0x56f6390b udp_tunnel_notify_del_rx_port +EXPORT_SYMBOL_GPL net/ipv4/udp_tunnel 0x78ff61ef udp_tunnel_notify_add_rx_port +EXPORT_SYMBOL_GPL net/ipv4/udp_tunnel 0x9d466ccf udp_tunnel_drop_rx_port +EXPORT_SYMBOL_GPL net/ipv4/udp_tunnel 0xa38c5b51 udp_tunnel_push_rx_port +EXPORT_SYMBOL_GPL net/ipv4/udp_tunnel 0xa8a7adec setup_udp_tunnel_sock +EXPORT_SYMBOL_GPL net/ipv4/udp_tunnel 0xb368ca07 udp_tunnel_xmit_skb +EXPORT_SYMBOL_GPL net/ipv6/esp6 0xaab6fca3 esp6_output_head +EXPORT_SYMBOL_GPL net/ipv6/esp6 0xad53e16f esp6_output_tail +EXPORT_SYMBOL_GPL net/ipv6/esp6 0xb8a36917 esp6_input_done2 +EXPORT_SYMBOL_GPL net/ipv6/ip6_tunnel 0x20528cda ip6_tnl_rcv_ctl +EXPORT_SYMBOL_GPL net/ipv6/ip6_tunnel 0x36a0534c ip6_tnl_xmit_ctl +EXPORT_SYMBOL_GPL net/ipv6/ip6_tunnel 0xc676d0c8 ip6_tnl_encap_setup +EXPORT_SYMBOL_GPL net/ipv6/ip6_udp_tunnel 0x2fe040f1 udp_tunnel6_xmit_skb +EXPORT_SYMBOL_GPL net/ipv6/ip6_udp_tunnel 0xbf57f72a udp_sock_create6 +EXPORT_SYMBOL_GPL net/ipv6/netfilter/ip6_tables 0x8e699427 ip6t_alloc_initial_table +EXPORT_SYMBOL_GPL net/ipv6/netfilter/nf_defrag_ipv6 0x1cc86472 nf_defrag_ipv6_enable +EXPORT_SYMBOL_GPL net/ipv6/netfilter/nf_defrag_ipv6 0xf7ad18ed nf_ct_frag6_gather +EXPORT_SYMBOL_GPL net/ipv6/netfilter/nf_dup_ipv6 0xb9fd5d94 nf_dup_ipv6 +EXPORT_SYMBOL_GPL net/ipv6/netfilter/nf_reject_ipv6 0x3edd5f18 nf_reject_ip6hdr_put +EXPORT_SYMBOL_GPL net/ipv6/netfilter/nf_reject_ipv6 0x86600605 nf_reject_ip6_tcphdr_put +EXPORT_SYMBOL_GPL net/ipv6/netfilter/nf_reject_ipv6 0x8c960b4c nf_send_unreach6 +EXPORT_SYMBOL_GPL net/ipv6/netfilter/nf_reject_ipv6 0x978f48ee nf_reject_ip6_tcphdr_get +EXPORT_SYMBOL_GPL net/ipv6/netfilter/nf_reject_ipv6 0xd3888df2 nf_send_reset6 +EXPORT_SYMBOL_GPL net/ipv6/netfilter/nf_socket_ipv6 0x5756247c nf_sk_lookup_slow_v6 +EXPORT_SYMBOL_GPL net/ipv6/netfilter/nf_tproxy_ipv6 0x9c5fae41 nf_tproxy_get_sock_v6 +EXPORT_SYMBOL_GPL net/ipv6/netfilter/nf_tproxy_ipv6 0xc86bb4ee nf_tproxy_handle_time_wait6 +EXPORT_SYMBOL_GPL net/ipv6/netfilter/nf_tproxy_ipv6 0xe6eca8bf nf_tproxy_laddr6 +EXPORT_SYMBOL_GPL net/ipv6/netfilter/nft_fib_ipv6 0x6bd15719 nft_fib6_eval_type +EXPORT_SYMBOL_GPL net/ipv6/netfilter/nft_fib_ipv6 0xd850b4f8 nft_fib6_eval +EXPORT_SYMBOL_GPL net/l2tp/l2tp_core 0x07279cfa l2tp_xmit_skb +EXPORT_SYMBOL_GPL net/l2tp/l2tp_core 0x1381b6b4 l2tp_tunnel_get_session +EXPORT_SYMBOL_GPL net/l2tp/l2tp_core 0x1bfeb0bf l2tp_session_set_header_len +EXPORT_SYMBOL_GPL net/l2tp/l2tp_core 0x423e9f3d l2tp_tunnel_delete +EXPORT_SYMBOL_GPL net/l2tp/l2tp_core 0x4a5c21e3 l2tp_session_register +EXPORT_SYMBOL_GPL net/l2tp/l2tp_core 0x5597cb36 l2tp_session_get_nth +EXPORT_SYMBOL_GPL net/l2tp/l2tp_core 0x59ef8ae7 l2tp_tunnel_register +EXPORT_SYMBOL_GPL net/l2tp/l2tp_core 0x5ab998a6 l2tp_tunnel_get +EXPORT_SYMBOL_GPL net/l2tp/l2tp_core 0x6941837c __l2tp_session_unhash +EXPORT_SYMBOL_GPL net/l2tp/l2tp_core 0xa5d37caa l2tp_session_get_by_ifname +EXPORT_SYMBOL_GPL net/l2tp/l2tp_core 0xb3142d89 l2tp_tunnel_create +EXPORT_SYMBOL_GPL net/l2tp/l2tp_core 0xd191add1 l2tp_session_free +EXPORT_SYMBOL_GPL net/l2tp/l2tp_core 0xd3eba131 l2tp_tunnel_get_nth +EXPORT_SYMBOL_GPL net/l2tp/l2tp_core 0xda465843 l2tp_session_get +EXPORT_SYMBOL_GPL net/l2tp/l2tp_core 0xdb8ca235 l2tp_session_create +EXPORT_SYMBOL_GPL net/l2tp/l2tp_core 0xe002c32e l2tp_session_delete +EXPORT_SYMBOL_GPL net/l2tp/l2tp_core 0xef38c429 l2tp_udp_encap_recv +EXPORT_SYMBOL_GPL net/l2tp/l2tp_netlink 0x337f2432 l2tp_nl_unregister_ops +EXPORT_SYMBOL_GPL net/l2tp/l2tp_netlink 0x35218dd1 l2tp_nl_register_ops +EXPORT_SYMBOL_GPL net/mac80211/mac80211 0x20d5363e ieee80211_resume_disconnect +EXPORT_SYMBOL_GPL net/mac80211/mac80211 0x2a058d61 ieee80211_calc_rx_airtime +EXPORT_SYMBOL_GPL net/mac80211/mac80211 0x5250cf98 ieee80211_tkip_add_iv +EXPORT_SYMBOL_GPL net/mac80211/mac80211 0x6c446563 ieee80211_vif_to_wdev +EXPORT_SYMBOL_GPL net/mac80211/mac80211 0x8917c841 ieee80211_gtk_rekey_notify +EXPORT_SYMBOL_GPL net/mac80211/mac80211 0x89d30354 ieee80211_iterate_active_interfaces_rtnl +EXPORT_SYMBOL_GPL net/mac80211/mac80211 0x8c5793b7 ieee80211_iterate_stations_atomic +EXPORT_SYMBOL_GPL net/mac80211/mac80211 0x8d16d7bc ieee80211_remain_on_channel_expired +EXPORT_SYMBOL_GPL net/mac80211/mac80211 0x9620cdcc wdev_to_ieee80211_vif +EXPORT_SYMBOL_GPL net/mac80211/mac80211 0x97199293 ieee80211_update_mu_groups +EXPORT_SYMBOL_GPL net/mac80211/mac80211 0x9e27d40b ieee80211_iterate_active_interfaces_atomic +EXPORT_SYMBOL_GPL net/mac80211/mac80211 0xa1247034 ieee80211_remove_key +EXPORT_SYMBOL_GPL net/mac80211/mac80211 0xbdadf156 ieee80211_find_sta_by_ifaddr +EXPORT_SYMBOL_GPL net/mac80211/mac80211 0xc6a61055 ieee80211_ave_rssi +EXPORT_SYMBOL_GPL net/mac80211/mac80211 0xce0445d9 ieee80211_ready_on_channel +EXPORT_SYMBOL_GPL net/mac80211/mac80211 0xd284735d ieee80211_calc_tx_airtime +EXPORT_SYMBOL_GPL net/mac80211/mac80211 0xd6c155e4 ieee80211_request_smps +EXPORT_SYMBOL_GPL net/mac80211/mac80211 0xd8e09da4 ieee80211_set_key_rx_seq +EXPORT_SYMBOL_GPL net/mac80211/mac80211 0xdc862750 ieee80211_iter_chan_contexts_atomic +EXPORT_SYMBOL_GPL net/mac80211/mac80211 0xde5714a2 ieee80211_iterate_interfaces +EXPORT_SYMBOL_GPL net/mac80211/mac80211 0xe7d6a309 ieee80211_gtk_rekey_add +EXPORT_SYMBOL_GPL net/mpls/mpls_router 0x1966e4ae mpls_pkt_too_big +EXPORT_SYMBOL_GPL net/mpls/mpls_router 0x1d5c97c0 nla_put_labels +EXPORT_SYMBOL_GPL net/mpls/mpls_router 0xb10354fc mpls_dev_mtu +EXPORT_SYMBOL_GPL net/mpls/mpls_router 0xb29358bf mpls_stats_inc_outucastpkts +EXPORT_SYMBOL_GPL net/mpls/mpls_router 0xe413b0a4 nla_get_labels +EXPORT_SYMBOL_GPL net/mpls/mpls_router 0xf86f0f11 mpls_output_possible +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0x22d966c6 ip_set_range_to_cidr +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0x244ef7ed ip_set_get_ip4_port +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0x37334265 ip_set_extensions +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0x397f6231 ip_set_free +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0x3aa1580d ip_set_get_byname +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0x45e880bc ip_set_test +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0x49eb98a0 ip_set_nfnl_put +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0x6344eaf6 ip_set_alloc +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0x69261b35 ip_set_elem_len +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0x76a7517c ip_set_get_ip6_port +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 0x89adfc0a ip_set_nfnl_get_byindex +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0x9a52a675 ip_set_get_extensions +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0x9deb50dd ip_set_put_extensions +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 0xa2d06505 ip_set_name_byindex +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0xa307ac79 ip_set_put_flags +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0xa6c64620 ip_set_type_register +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0xb2f94454 ip_set_del +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0xbf078f44 ip_set_init_comment +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0xc346fd88 ip_set_add +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0xf55fe7f8 ip_set_type_unregister +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0xf5fecc33 ip_set_put_byindex +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0xffb634fc ip_set_match_extensions +EXPORT_SYMBOL_GPL net/netfilter/ipvs/ip_vs 0x243554ec ip_vs_conn_out_get_proto +EXPORT_SYMBOL_GPL net/netfilter/ipvs/ip_vs 0x521921f9 unregister_ip_vs_pe +EXPORT_SYMBOL_GPL net/netfilter/ipvs/ip_vs 0xaf321c02 ip_vs_conn_in_get_proto +EXPORT_SYMBOL_GPL net/netfilter/ipvs/ip_vs 0xd84214f4 register_ip_vs_pe +EXPORT_SYMBOL_GPL net/netfilter/nf_conncount 0x268a4802 nf_conncount_cache_free +EXPORT_SYMBOL_GPL net/netfilter/nf_conncount 0x26acd0b4 nf_conncount_gc_list +EXPORT_SYMBOL_GPL net/netfilter/nf_conncount 0x79cb6126 nf_conncount_destroy +EXPORT_SYMBOL_GPL net/netfilter/nf_conncount 0x97c68e9c nf_conncount_count +EXPORT_SYMBOL_GPL net/netfilter/nf_conncount 0xbe03a217 nf_conncount_list_init +EXPORT_SYMBOL_GPL net/netfilter/nf_conncount 0xecacf6fd nf_conncount_init +EXPORT_SYMBOL_GPL net/netfilter/nf_conncount 0xfb041740 nf_conncount_add +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x00a830e9 nf_connlabels_put +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x03492edd nf_ct_l4proto_log_invalid +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x03626e96 nf_ct_timeout_put_hook +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x040ecb6a nf_nat_helper_register +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x0882dd2b nf_ct_expect_alloc +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x0bc00f80 nf_nat_helper_try_module_get +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x0cfa13e7 nf_nat_helper_put +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x13786603 nf_conntrack_free +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x1ab68dc6 nf_ct_bridge_register +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x1e5e9292 nf_ct_extend_unregister +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x21b93cd7 nf_conntrack_helpers_register +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x271e1b13 nf_ct_unlink_expect_report +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 0x29103849 nf_ct_expect_related_report +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x2982927a nf_ct_port_tuple_to_nlattr +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x2c0ec2c8 nf_connlabels_get +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x2cf732bd nf_ct_l4proto_find +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x3637afe1 nf_conntrack_eventmask_report +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x44a211da __nf_ct_refresh_acct +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x473e385d nf_conntrack_lock +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x4ea258d2 nf_conntrack_expect_lock +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x50c58b7b nf_ct_iterate_destroy +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x52787642 nf_ct_tmpl_alloc +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x5341d153 nf_ct_helper_expectfn_find_by_name +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x552ab13a nf_ct_expect_iterate_destroy +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x57009b7b nf_ct_expect_register_notifier +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x58ac5de9 nf_conntrack_helper_unregister +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x58beff70 nf_ct_remove_expectations +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x5e439294 nf_conntrack_alloc +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x620bfdc1 __nf_ct_try_assign_helper +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x621013a7 nf_confirm +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x628f972d nf_ct_unexpect_related +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x63297bfe nf_ct_tmpl_free +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x63918447 nf_conntrack_tuple_taken +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x67bfc6c1 nf_ct_unconfirmed_destroy +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x684069be nf_ct_expect_iterate_net +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x693c3961 nf_ct_helper_hash +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x6ada6cc4 nf_ct_helper_log +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x6b71b764 nf_ct_gre_keymap_destroy +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x6dc9420a nf_ct_helper_expectfn_unregister +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x70bac619 nf_ct_helper_expectfn_find_by_symbol +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x71315034 nf_ct_seq_offset +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x72e32dfe nf_ct_expect_unregister_notifier +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x7da80b2e nf_ct_port_nla_policy +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x7e36ab63 nf_ct_helper_init +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x80424671 nf_conntrack_helper_register +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x808f734b nf_ct_gre_keymap_add +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x80921314 nf_nat_helper_unregister +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x8c02b109 nf_ct_remove_expect +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x8c6e11f4 nf_conntrack_locks +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x8ffe7e89 nf_conntrack_htable_size +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x91a27940 nf_conntrack_register_notifier +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x91be2f48 nf_ct_iterate_cleanup_net +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x91eb7856 __nf_ct_expect_find +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x95d23f62 nf_ct_seq_adjust +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x9853f078 nf_ct_set_timeout +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x99121347 nf_ct_acct_add +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x9b3bc89e nf_ct_helper_expectfn_register +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x9b54b131 nf_ct_expect_put +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x9d023bee nf_conntrack_helper_try_module_get +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x9ecfb779 nf_ct_untimeout +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x9fd169ea nf_conntrack_helpers_unregister +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xa14c2be4 nf_ct_timeout_find_get_hook +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xa19841f9 nf_ct_tcp_seqadj_set +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xa243b195 nf_ct_get_id +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xafbd6cf5 nf_ct_port_nlattr_to_tuple +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xb0ede05e nf_ct_seqadj_set +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xb9507e3f nf_conntrack_find_get +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xbef3bb9d nf_conntrack_helper_put +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xbff32bf4 nf_ct_deliver_cached_events +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xc18ac88d nf_ct_expect_hsize +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xc215d2bd nf_ct_seqadj_init +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xc2b23c63 __nf_conntrack_confirm +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xc40f284c nf_ct_helper_hsize +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xc52c63b6 nf_ct_helper_ext_add +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xc53a1a53 nf_ct_extend_register +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xca946b09 nf_ct_get_tuplepr +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xcf084d19 nf_conntrack_unregister_notifier +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xd1f5a78b nf_ct_kill_acct +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xd505c3e0 nf_ct_port_nlattr_tuple_size +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xd855886e nf_ct_bridge_unregister +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xdd3191ac nf_conntrack_hash_check_insert +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xe2d27645 nf_ct_expect_find_get +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xe852e271 nf_connlabels_replace +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xec8beba6 nf_ct_expect_hash +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xeeb47289 nf_ct_netns_get +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xf38bcdf3 nf_conntrack_max +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xf3ca5ed7 nf_ct_delete +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xf6287f0e nf_conntrack_alter_reply +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xfa785b7e nf_ct_expect_init +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xfc75225c nf_ct_destroy_timeout +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xfcf94f7f __nf_conntrack_helper_find +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xfd246f40 nf_l4proto_log_invalid +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xfdbe4da4 nf_ct_netns_put +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xfe731af8 nf_ct_invert_tuple +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xffd9fa81 nf_conntrack_in +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_amanda 0x20c00ca1 nf_nat_amanda_hook +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_broadcast 0x17fb9c0e nf_conntrack_broadcast_help +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_ftp 0x54490468 nf_nat_ftp_hook +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_h323 0x19e436b2 set_ras_addr_hook +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_h323 0x445271e1 set_sig_addr_hook +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_h323 0x50cc9290 get_h225_addr +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_h323 0x57a1470f nat_q931_hook +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_h323 0x6b4fd9a0 set_h225_addr_hook +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_h323 0xa9833e00 nat_h245_hook +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_h323 0xc202dba7 nat_rtp_rtcp_hook +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_h323 0xd205b5f9 nat_callforwarding_hook +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_h323 0xf7360ac8 set_h245_addr_hook +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_h323 0xfc8e0d1c nat_t120_hook +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_irc 0x37c789d6 nf_nat_irc_hook +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_pptp 0x099f1c86 nf_nat_pptp_hook_expectfn +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_pptp 0x3e9d5f0a nf_nat_pptp_hook_exp_gre +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_pptp 0x7125d32f nf_nat_pptp_hook_inbound +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_pptp 0xec7019fa nf_nat_pptp_hook_outbound +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_sip 0x3b7cd623 ct_sip_get_sdp_header +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_sip 0x3bed7846 ct_sip_parse_request +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_sip 0x469fe320 ct_sip_parse_address_param +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_sip 0x54ef5026 ct_sip_parse_header_uri +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_sip 0x561c4b8a ct_sip_parse_numerical_param +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_sip 0xbc777f66 ct_sip_get_header +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_sip 0xd8287442 nf_nat_sip_hooks +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_snmp 0x44579f5d nf_nat_snmp_hook +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_tftp 0xdb34a7d2 nf_nat_tftp_hook +EXPORT_SYMBOL_GPL net/netfilter/nf_dup_netdev 0x51874ca1 nft_fwd_dup_netdev_offload +EXPORT_SYMBOL_GPL net/netfilter/nf_dup_netdev 0xc40b059b nf_dup_netdev_egress +EXPORT_SYMBOL_GPL net/netfilter/nf_dup_netdev 0xc96940b2 nf_fwd_netdev_egress +EXPORT_SYMBOL_GPL net/netfilter/nf_flow_table 0x0d9c6c87 flow_offload_free +EXPORT_SYMBOL_GPL net/netfilter/nf_flow_table 0x1173dfb6 flow_offload_lookup +EXPORT_SYMBOL_GPL net/netfilter/nf_flow_table 0x3921770b nf_flow_snat_port +EXPORT_SYMBOL_GPL net/netfilter/nf_flow_table 0x4e3d1799 flow_offload_teardown +EXPORT_SYMBOL_GPL net/netfilter/nf_flow_table 0x5679f332 flow_offload_route_init +EXPORT_SYMBOL_GPL net/netfilter/nf_flow_table 0x60f5c911 nf_flow_table_cleanup +EXPORT_SYMBOL_GPL net/netfilter/nf_flow_table 0x62c5804f nf_flow_rule_route_ipv6 +EXPORT_SYMBOL_GPL net/netfilter/nf_flow_table 0x7e1f805d nf_flow_rule_route_ipv4 +EXPORT_SYMBOL_GPL net/netfilter/nf_flow_table 0x8c1fc595 nf_flow_table_init +EXPORT_SYMBOL_GPL net/netfilter/nf_flow_table 0x8e99020b flow_offload_add +EXPORT_SYMBOL_GPL net/netfilter/nf_flow_table 0x9d0b7ec8 nf_flow_table_free +EXPORT_SYMBOL_GPL net/netfilter/nf_flow_table 0xb4839336 nf_flow_offload_ipv6_hook +EXPORT_SYMBOL_GPL net/netfilter/nf_flow_table 0xb970a05e flow_offload_alloc +EXPORT_SYMBOL_GPL net/netfilter/nf_flow_table 0xc6937c0f nf_flow_offload_ip_hook +EXPORT_SYMBOL_GPL net/netfilter/nf_flow_table 0xcee4e809 flow_offload_refresh +EXPORT_SYMBOL_GPL net/netfilter/nf_flow_table 0xf110c4c3 nf_flow_table_offload_setup +EXPORT_SYMBOL_GPL net/netfilter/nf_flow_table 0xf42ca572 nf_flow_dnat_port +EXPORT_SYMBOL_GPL net/netfilter/nf_log_common 0x2fb822be nf_log_dump_sk_uid_gid +EXPORT_SYMBOL_GPL net/netfilter/nf_log_common 0x5a3d0c12 nf_log_l2packet +EXPORT_SYMBOL_GPL net/netfilter/nf_log_common 0x6530f0a0 nf_log_dump_packet_common +EXPORT_SYMBOL_GPL net/netfilter/nf_log_common 0x6b8f61ef nf_log_dump_tcp_header +EXPORT_SYMBOL_GPL net/netfilter/nf_log_common 0x85f3307b nf_log_dump_vlan +EXPORT_SYMBOL_GPL net/netfilter/nf_log_common 0x9e1d189f nf_log_dump_udp_header +EXPORT_SYMBOL_GPL net/netfilter/nf_nat 0x07a6c565 nf_nat_alloc_null_binding +EXPORT_SYMBOL_GPL net/netfilter/nf_nat 0x15662bec nf_nat_masquerade_ipv4 +EXPORT_SYMBOL_GPL net/netfilter/nf_nat 0x1b6474e0 nf_ct_nat_ext_add +EXPORT_SYMBOL_GPL net/netfilter/nf_nat 0x213cf8cc nf_nat_packet +EXPORT_SYMBOL_GPL net/netfilter/nf_nat 0x2db2da72 nf_nat_ipv4_register_fn +EXPORT_SYMBOL_GPL net/netfilter/nf_nat 0x3bc17c49 nf_nat_masquerade_inet_register_notifiers +EXPORT_SYMBOL_GPL net/netfilter/nf_nat 0x402e9295 nf_nat_masquerade_ipv6 +EXPORT_SYMBOL_GPL net/netfilter/nf_nat 0x4ca6123b nf_nat_inet_fn +EXPORT_SYMBOL_GPL net/netfilter/nf_nat 0x5b3a85cc nf_nat_redirect_ipv4 +EXPORT_SYMBOL_GPL net/netfilter/nf_nat 0x5c9a040b nf_nat_redirect_ipv6 +EXPORT_SYMBOL_GPL net/netfilter/nf_nat 0x70acff7d nf_nat_icmpv6_reply_translation +EXPORT_SYMBOL_GPL net/netfilter/nf_nat 0x84246e6b nf_nat_ipv6_register_fn +EXPORT_SYMBOL_GPL net/netfilter/nf_nat 0x9f6f81bb nf_nat_inet_unregister_fn +EXPORT_SYMBOL_GPL net/netfilter/nf_nat 0xa8bd3f78 nf_nat_inet_register_fn +EXPORT_SYMBOL_GPL net/netfilter/nf_nat 0xb5e0fac9 nf_nat_ipv4_unregister_fn +EXPORT_SYMBOL_GPL net/netfilter/nf_nat 0xd9c25654 nf_nat_masquerade_inet_unregister_notifiers +EXPORT_SYMBOL_GPL net/netfilter/nf_nat 0xd9ec5146 nf_nat_icmp_reply_translation +EXPORT_SYMBOL_GPL net/netfilter/nf_nat 0xe2ec8dd2 nf_nat_ipv6_unregister_fn +EXPORT_SYMBOL_GPL net/netfilter/nf_synproxy_core 0x0c4cdaf4 ipv4_synproxy_hook +EXPORT_SYMBOL_GPL net/netfilter/nf_synproxy_core 0x17c85b4c nf_synproxy_ipv6_init +EXPORT_SYMBOL_GPL net/netfilter/nf_synproxy_core 0x1f099794 synproxy_init_timestamp_cookie +EXPORT_SYMBOL_GPL net/netfilter/nf_synproxy_core 0x1fbacfed nf_synproxy_ipv6_fini +EXPORT_SYMBOL_GPL net/netfilter/nf_synproxy_core 0x468ac98f synproxy_recv_client_ack_ipv6 +EXPORT_SYMBOL_GPL net/netfilter/nf_synproxy_core 0x5766b888 synproxy_recv_client_ack +EXPORT_SYMBOL_GPL net/netfilter/nf_synproxy_core 0x7f23ff37 synproxy_send_client_synack +EXPORT_SYMBOL_GPL net/netfilter/nf_synproxy_core 0x8125338b synproxy_send_client_synack_ipv6 +EXPORT_SYMBOL_GPL net/netfilter/nf_synproxy_core 0x95bf078c nf_synproxy_ipv4_fini +EXPORT_SYMBOL_GPL net/netfilter/nf_synproxy_core 0x9dcd932d nf_synproxy_ipv4_init +EXPORT_SYMBOL_GPL net/netfilter/nf_synproxy_core 0xca9fc082 synproxy_net_id +EXPORT_SYMBOL_GPL net/netfilter/nf_synproxy_core 0xe21e785a ipv6_synproxy_hook +EXPORT_SYMBOL_GPL net/netfilter/nf_synproxy_core 0xf9d5c908 synproxy_parse_options +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0x05cd4287 nft_data_dump +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0x0e3093c1 nft_meta_set_init +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0x16a2dd8b nft_unregister_expr +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0x1c1a1531 nft_chain_validate_hooks +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0x1e6b75a3 nft_parse_register +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0x2aad9dd4 nft_set_lookup_global +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0x2c2ee0f8 nft_chain_validate_dependency +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0x3251d762 nf_tables_trans_destroy_flush_work +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0x37ce26c2 nft_register_expr +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0x3ee59e43 nft_obj_lookup +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0x502eed3d nft_meta_policy +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0x51fd7156 nft_meta_set_eval +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0x52edcd07 nf_tables_deactivate_flowtable +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0x6c29baba nft_meta_set_destroy +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0x70fc21e5 __nft_release_basechain +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0x729cf59a nf_tables_bind_set +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0x77865373 nft_unregister_chain_type +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0x77c15342 nft_data_release +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0x7b1d8f15 nft_data_init +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0x7b565d71 nf_tables_destroy_set +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0x7fb26857 nft_meta_get_eval +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0x85430a76 nft_validate_register_load +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0x8ca16293 nft_register_obj +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0x8eae9e55 nft_meta_get_init +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0x917ec44c nft_register_flowtable_type +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0x928a02c9 nft_meta_set_dump +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0x9658dc59 nft_flowtable_lookup +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0x98dcc199 nft_set_elem_destroy +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0x9cf8ce57 nft_unregister_flowtable_type +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0xa8e4db91 nft_meta_get_dump +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0xa9ffc821 nft_trace_enabled +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0xae6d76f2 nft_do_chain +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0xaeea8248 nft_register_chain_type +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0xb431b813 nft_meta_set_validate +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0xb678b144 nft_dump_register +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0xc7be9d19 nft_validate_register_store +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0xc9fdd6c5 nft_obj_notify +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0xd1ce0286 nf_tables_deactivate_set +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0xde57b5f5 nft_parse_u32_check +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0xdf3e22a0 nft_unregister_obj +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0xee9e6aac nft_chain_validate +EXPORT_SYMBOL_GPL net/netfilter/nfnetlink 0x1d9e7471 nfnetlink_set_err +EXPORT_SYMBOL_GPL net/netfilter/nfnetlink 0x5ce3b588 nfnl_lock +EXPORT_SYMBOL_GPL net/netfilter/nfnetlink 0x7052f6b5 nfnetlink_subsys_unregister +EXPORT_SYMBOL_GPL net/netfilter/nfnetlink 0x92362952 nfnetlink_subsys_register +EXPORT_SYMBOL_GPL net/netfilter/nfnetlink 0xa18aaa37 nfnetlink_unicast +EXPORT_SYMBOL_GPL net/netfilter/nfnetlink 0xb6774e3d nfnetlink_has_listeners +EXPORT_SYMBOL_GPL net/netfilter/nfnetlink 0xdb065657 nfnl_unlock +EXPORT_SYMBOL_GPL net/netfilter/nfnetlink 0xf32102f5 nfnetlink_send +EXPORT_SYMBOL_GPL net/netfilter/nfnetlink_acct 0x77e13cf9 nfnl_acct_overquota +EXPORT_SYMBOL_GPL net/netfilter/nfnetlink_acct 0xb7cd275c nfnl_acct_update +EXPORT_SYMBOL_GPL net/netfilter/nfnetlink_acct 0xbecf5d14 nfnl_acct_put +EXPORT_SYMBOL_GPL net/netfilter/nfnetlink_acct 0xd405e7c3 nfnl_acct_find_get +EXPORT_SYMBOL_GPL net/netfilter/nfnetlink_osf 0x35eff5e0 nf_osf_fingers +EXPORT_SYMBOL_GPL net/netfilter/nfnetlink_osf 0xcfe84415 nf_osf_find +EXPORT_SYMBOL_GPL net/netfilter/nfnetlink_osf 0xf2600cb9 nf_osf_match +EXPORT_SYMBOL_GPL net/netfilter/nft_fib 0x26f06785 nft_fib_dump +EXPORT_SYMBOL_GPL net/netfilter/nft_fib 0x2f6f1813 nft_fib_store_result +EXPORT_SYMBOL_GPL net/netfilter/nft_fib 0x426495d2 nft_fib_init +EXPORT_SYMBOL_GPL net/netfilter/nft_fib 0xf681a06a nft_fib_validate +EXPORT_SYMBOL_GPL net/netfilter/nft_reject 0x105b07e2 nft_reject_policy +EXPORT_SYMBOL_GPL net/netfilter/nft_reject 0x1de558c1 nft_reject_icmpv6_code +EXPORT_SYMBOL_GPL net/netfilter/nft_reject 0xa920ce8b nft_reject_validate +EXPORT_SYMBOL_GPL net/netfilter/nft_reject 0xaf0b4481 nft_reject_init +EXPORT_SYMBOL_GPL net/netfilter/nft_reject 0xc527e5bb nft_reject_dump +EXPORT_SYMBOL_GPL net/netfilter/nft_reject 0xe2c84666 nft_reject_icmp_code +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0x0a1304d6 xt_request_find_match +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0x1099e3dd xt_replace_table +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0x1b2a6405 xt_unregister_table +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0x24c8e482 xt_copy_counters_from_user +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0x296aef6c xt_check_match +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0x3f1ef70a xt_tee_enabled +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0x3f5fde73 xt_proto_init +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0x560083df xt_find_table_lock +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0x5bd6e497 xt_hook_ops_alloc +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0x5d122777 xt_proto_fini +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 0x87abf1f2 xt_check_target +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0x9c995c69 xt_percpu_counter_alloc +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0xbcb264cd xt_request_find_table_lock +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0xbfacb837 xt_percpu_counter_free +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0xc72d3e6d xt_request_find_target +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0xd3ba8728 xt_table_unlock +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0xddf68fc6 xt_find_revision +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0xde159278 xt_match_to_user +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0xe7bf2af8 xt_register_table +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0xfe946bf4 xt_target_to_user +EXPORT_SYMBOL_GPL net/netfilter/xt_RATEEST 0x71b35e89 xt_rateest_lookup +EXPORT_SYMBOL_GPL net/netfilter/xt_RATEEST 0xe20cda58 xt_rateest_put +EXPORT_SYMBOL_GPL net/nfc/nci/nci_spi 0x7d9570ad nci_spi_send +EXPORT_SYMBOL_GPL net/nfc/nci/nci_spi 0x8f251789 nci_spi_allocate_spi +EXPORT_SYMBOL_GPL net/nfc/nci/nci_spi 0xb45b1aeb nci_spi_read +EXPORT_SYMBOL_GPL net/nfc/nci/nci_uart 0x7065fe61 nci_uart_unregister +EXPORT_SYMBOL_GPL net/nfc/nci/nci_uart 0x7eb6cce8 nci_uart_set_config +EXPORT_SYMBOL_GPL net/nfc/nci/nci_uart 0xeb7c38d2 nci_uart_register +EXPORT_SYMBOL_GPL net/nsh/nsh 0x403c0cf4 nsh_push +EXPORT_SYMBOL_GPL net/nsh/nsh 0xc337a389 nsh_pop +EXPORT_SYMBOL_GPL net/openvswitch/openvswitch 0x0bd8cc94 __ovs_vport_ops_register +EXPORT_SYMBOL_GPL net/openvswitch/openvswitch 0x203e2fb1 ovs_vport_free +EXPORT_SYMBOL_GPL net/openvswitch/openvswitch 0x43246d25 ovs_vport_alloc +EXPORT_SYMBOL_GPL net/openvswitch/openvswitch 0x9fdf7bfd ovs_vport_ops_unregister +EXPORT_SYMBOL_GPL net/openvswitch/openvswitch 0xd029b132 ovs_netdev_link +EXPORT_SYMBOL_GPL net/openvswitch/openvswitch 0xdd9b6476 ovs_netdev_tunnel_destroy +EXPORT_SYMBOL_GPL net/psample/psample 0x02306874 psample_group_take +EXPORT_SYMBOL_GPL net/psample/psample 0x232f9810 psample_sample_packet +EXPORT_SYMBOL_GPL net/psample/psample 0x74db0a5e psample_group_get +EXPORT_SYMBOL_GPL net/psample/psample 0xeecbc95f psample_group_put +EXPORT_SYMBOL_GPL net/qrtr/ns 0x636a2832 qrtr_ns_init +EXPORT_SYMBOL_GPL net/qrtr/ns 0x8d25501f qrtr_ns_remove +EXPORT_SYMBOL_GPL net/qrtr/qrtr 0x19df3f85 qrtr_endpoint_unregister +EXPORT_SYMBOL_GPL net/qrtr/qrtr 0x40b37580 qrtr_endpoint_register +EXPORT_SYMBOL_GPL net/qrtr/qrtr 0x5344037c qrtr_endpoint_post +EXPORT_SYMBOL_GPL net/rds/rds 0x00a467af rds_wq +EXPORT_SYMBOL_GPL net/rds/rds 0x0216f502 rds_message_unmapped +EXPORT_SYMBOL_GPL net/rds/rds 0x117c13c1 rds_conn_connect_if_down +EXPORT_SYMBOL_GPL net/rds/rds 0x120e01ce rds_rdma_send_complete +EXPORT_SYMBOL_GPL net/rds/rds 0x1d3ecf6a rds_cong_map_updated +EXPORT_SYMBOL_GPL net/rds/rds 0x2b0d543c rds_message_add_extension +EXPORT_SYMBOL_GPL net/rds/rds 0x2ce4beb5 rds_trans_register +EXPORT_SYMBOL_GPL net/rds/rds 0x2df8e643 rds_conn_drop +EXPORT_SYMBOL_GPL net/rds/rds 0x31b10ea6 rds_message_put +EXPORT_SYMBOL_GPL net/rds/rds 0x36087aa4 rds_stats +EXPORT_SYMBOL_GPL net/rds/rds 0x45411eec rds_send_drop_acked +EXPORT_SYMBOL_GPL net/rds/rds 0x45a4781e rds_addr_cmp +EXPORT_SYMBOL_GPL net/rds/rds 0x4f45ea4d rds_send_path_drop_acked +EXPORT_SYMBOL_GPL net/rds/rds 0x512677b8 rds_send_ping +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 0x5cdc0034 rds_conn_path_connect_if_down +EXPORT_SYMBOL_GPL net/rds/rds 0x5d017880 rds_connect_complete +EXPORT_SYMBOL_GPL net/rds/rds 0x5fbd6388 rds_connect_path_complete +EXPORT_SYMBOL_GPL net/rds/rds 0x65b4c05d rds_inc_path_init +EXPORT_SYMBOL_GPL net/rds/rds 0x6daacbe9 rds_send_xmit +EXPORT_SYMBOL_GPL net/rds/rds 0x71958fb8 rds_recv_incoming +EXPORT_SYMBOL_GPL net/rds/rds 0x7a9c1443 rds_conn_create_outgoing +EXPORT_SYMBOL_GPL net/rds/rds 0x7c516a3a rds_for_each_conn_info +EXPORT_SYMBOL_GPL net/rds/rds 0xa180189c rds_atomic_send_complete +EXPORT_SYMBOL_GPL net/rds/rds 0xc2dab779 rds_info_copy +EXPORT_SYMBOL_GPL net/rds/rds 0xc4b5282e rds_conn_path_drop +EXPORT_SYMBOL_GPL net/rds/rds 0xca222854 rds_page_remainder_alloc +EXPORT_SYMBOL_GPL net/rds/rds 0xcdaf52e8 rds_send_path_reset +EXPORT_SYMBOL_GPL net/rds/rds 0xcf82af6f rds_info_deregister_func +EXPORT_SYMBOL_GPL net/rds/rds 0xd3859f55 rds_inc_init +EXPORT_SYMBOL_GPL net/rds/rds 0xd4009737 rds_info_register_func +EXPORT_SYMBOL_GPL net/rds/rds 0xdf537fc7 rds_message_addref +EXPORT_SYMBOL_GPL net/rds/rds 0xdfe0ee9c rds_inc_put +EXPORT_SYMBOL_GPL net/rds/rds 0xed0401c5 rds_conn_create +EXPORT_SYMBOL_GPL net/rds/rds 0xf26455e0 rds_conn_destroy +EXPORT_SYMBOL_GPL net/rds/rds 0xf4c257e8 rds_stats_info_copy +EXPORT_SYMBOL_GPL net/rds/rds 0xf8048bb4 rds_trans_unregister +EXPORT_SYMBOL_GPL net/sched/sch_pie 0x68967bb2 pie_process_dequeue +EXPORT_SYMBOL_GPL net/sched/sch_pie 0x6ce9b467 pie_calculate_probability +EXPORT_SYMBOL_GPL net/sched/sch_pie 0xb5471ac2 pie_drop_early +EXPORT_SYMBOL_GPL net/sched/sch_taprio 0x7db7d103 taprio_offload_free +EXPORT_SYMBOL_GPL net/sched/sch_taprio 0xd765a904 taprio_offload_get +EXPORT_SYMBOL_GPL net/sctp/sctp 0x2e81b3b2 sctp_transport_lookup_process +EXPORT_SYMBOL_GPL net/sctp/sctp 0x2f9a475f sctp_for_each_transport +EXPORT_SYMBOL_GPL net/sctp/sctp 0xc6006a54 sctp_get_sctp_info +EXPORT_SYMBOL_GPL net/sctp/sctp 0xd1b268b2 sctp_for_each_endpoint +EXPORT_SYMBOL_GPL net/smc/smc 0x0367662e smcd_handle_irq +EXPORT_SYMBOL_GPL net/smc/smc 0x0dc788e4 smc_unhash_sk +EXPORT_SYMBOL_GPL net/smc/smc 0x1e91180c smc_proto6 +EXPORT_SYMBOL_GPL net/smc/smc 0x210f4803 smcd_alloc_dev +EXPORT_SYMBOL_GPL net/smc/smc 0x28435efb smcd_handle_event +EXPORT_SYMBOL_GPL net/smc/smc 0x639ae6db smcd_register_dev +EXPORT_SYMBOL_GPL net/smc/smc 0x682a393b smcd_free_dev +EXPORT_SYMBOL_GPL net/smc/smc 0x6b54a1c5 smc_proto +EXPORT_SYMBOL_GPL net/smc/smc 0xc1050816 smc_hash_sk +EXPORT_SYMBOL_GPL net/smc/smc 0xd4c010b8 smcd_unregister_dev +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 0xb708a156 svcauth_gss_flavor +EXPORT_SYMBOL_GPL net/sunrpc/auth_gss/auth_rpcgss 0xbc7dc5ee gss_mech_register +EXPORT_SYMBOL_GPL net/sunrpc/auth_gss/auth_rpcgss 0xc0e0f443 gss_mech_unregister +EXPORT_SYMBOL_GPL net/sunrpc/auth_gss/auth_rpcgss 0xc54b2fae svcauth_gss_register_pseudoflavor +EXPORT_SYMBOL_GPL net/sunrpc/auth_gss/auth_rpcgss 0xd7673035 g_verify_token_header +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x00bc9e10 svc_reg_xprt_class +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x00f23187 rpcauth_create +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x01d47b76 sunrpc_init_cache_detail +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x020c78cd rpc_clnt_xprt_switch_add_xprt +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x0247544e sunrpc_cache_pipe_upcall +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x027d57b9 svc_exit_thread +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x02e0973b svcauth_unix_set_client +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x03f6f9cb xdr_inline_decode +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x05cde2b9 xdr_init_decode +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x05d1dbd8 svc_destroy +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x05e807a9 xdr_encode_string +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x061e9858 rpc_malloc +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x065994f1 xdr_encode_opaque_fixed +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x08cfaeaf rpc_wake_up_first +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x098fcaf6 svc_rpcbind_set_version +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x0ac26ce4 svc_close_xprt +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x0b5abc4c rpcauth_destroy_credcache +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x0b84fea0 rpc_wake_up_status +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x0bafe327 sunrpc_cache_pipe_upcall_timeout +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x0c28008b rpc_init_wait_queue +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x0c44acfd rpcauth_unwrap_resp_decode +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x0d206ff2 rpc_restart_call +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x10da80a3 xprt_free_slot +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x12c6be31 auth_domain_lookup +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x14ac269d csum_partial_copy_to_xdr +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x17dd48b0 svc_create_xprt +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x1807e7d1 rpc_init_priority_wait_queue +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x18837360 rpc_restart_call_prepare +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x198a9e0e put_rpccred +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x19fde6e2 rpc_create +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x1ac18738 rpcauth_lookup_credcache +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x1b189c55 sunrpc_cache_unhash +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x1c866a7f sunrpc_cache_lookup_rcu +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x1d39d291 rpc_call_start +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x1d68f8ab rpc_set_connect_timeout +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x1df36570 xdr_terminate_string +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x1e119a79 rpcauth_get_pseudoflavor +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x1f1b5d0c cache_check +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x220f0483 rpc_killall_tasks +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x228f7330 svc_set_client +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x22b4f01b xprt_lookup_rqst +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x241b1f92 rpc_init_pipe_dir_head +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x2474ed93 rpc_task_timeout +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x26987db8 xprt_wait_for_reply_request_def +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x26c7bc9f xdr_inline_pages +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x28bc105f write_bytes_to_xdr_buf +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x2919b156 xdr_decode_string_inplace +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x292d97b6 cache_seq_next_rcu +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x29d4a1d5 rpc_init_pipe_dir_object +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x2ac4cc8e rpc_clnt_setup_test_and_add_xprt +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x2b04ff7b rpc_proc_unregister +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x2c5e4814 rpc_call_async +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x2f11a1df xdr_stream_decode_opaque +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x2f4d94bd rpc_get_sb_net +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x2f8ebbe0 rpc_ntop +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x2fa7b7d3 rpcauth_lookupcred +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x3171a3e3 rpc_call_sync +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x31a89d59 rpc_debug +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x31d88378 auth_domain_put +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x37b97024 rpc_num_bc_slots +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x385e5f50 cache_create_net +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x387e1639 rpc_pipefs_notifier_register +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x3bed1f3b xprt_request_get_cong +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x3c7b926c rpcauth_register +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x3c7bd89c rpc_max_payload +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x3cfcf6e0 cache_seq_stop_rcu +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x3d484c90 xdr_decode_word +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x3d66f407 rpc_pipe_generic_upcall +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x3e63cce1 xdr_encode_word +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x3f1b86fa rpcauth_init_cred +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x3f9a2b0b rpcauth_get_gssinfo +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x416e0659 rpc_clnt_xprt_switch_has_addr +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x41aa9b17 rpc_clone_client_set_auth +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x41ab0710 rpcauth_stringify_acceptor +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x453efa54 svc_pool_map +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x45abcb91 xprt_free +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x46049284 rpc_mkpipe_dentry +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x478e948e svc_rqst_free +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x47aeb712 svc_prepare_thread +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x49878605 xprt_adjust_cwnd +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x498fe223 svc_encode_read_payload +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x4afedab1 xprtiod_workqueue +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x4ba6f910 svc_create +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x4cfc2895 svc_alien_sock +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x4d3c15df rpc_put_sb_net +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 0x4f663561 svc_reserve +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x4fabdcdd svc_sock_update_bufs +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x509d1824 rpc_free +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x53445f68 nlm_debug +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x54c1a06f xprt_alloc_slot +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x5507c44a rpc_pton +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x566764c1 rpc_bind_new_program +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x572260e3 rpc_machine_cred +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x589ea947 rpc_force_rebind +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x58f4c2d1 cache_register_net +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x5974c5fc xdr_decode_array2 +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x5a45ba31 svc_auth_unregister +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x5abd53cf sunrpc_cache_update +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x5ca8c7b6 rpc_prepare_reply_pages +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x5cd3cb2c svc_wake_up +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x5dfc54c5 sunrpc_destroy_cache_detail +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x5e83af87 cache_purge +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x60a8afda rpc_count_iostats_metrics +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x616a1360 rpc_sleep_on_timeout +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x619d8a8e cache_unregister_net +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x61ee7f0b __rpc_wait_for_completion_task +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x63b69e63 xprt_destroy_backchannel +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x6438419c svc_xprt_enqueue +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x67600315 svc_proc_register +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x67856d59 xprt_reconnect_delay +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x679aaeb6 rpc_queue_upcall +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x6880acc9 svc_find_xprt +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x69882acb xprt_get +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x6b93f3c5 svc_xprt_put +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x6db696ae xprt_wake_pending_tasks +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x6ea116a8 xdr_buf_from_iov +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x6f67eb38 xprt_update_rtt +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x70a670df rpc_clnt_add_xprt +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x71340ff2 xprt_reserve_xprt +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x71fa908a cache_flush +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x72490694 xdr_buf_trim +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x731c3ae4 xprt_wait_for_buffer_space +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x73e3567c svc_max_payload +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x75844a9f rpc_sleep_on_priority +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x76331a8c rpc_put_task +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x779b25f1 rpc_delay +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x79083abe rpc_wake_up_next +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x79d01ca1 rpc_uaddr2sockaddr +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x7aed2209 svc_generic_rpcbind_set +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x7de53067 rpc_init_rtt +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x7e45b99c svc_proc_unregister +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x7e5394f0 gssd_running +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x7f5554f0 rpc_clnt_iterate_for_each_xprt +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x805aac09 svcauth_unix_purge +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x81ee20fd svc_seq_show +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x82510541 xprt_alloc +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x830d69b2 xprt_reconnect_backoff +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x83e64c0c rpc_destroy_pipe_data +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x8472fe07 xprt_write_space +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x86c0ffde rpc_localaddr +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x87730e0c svc_recv +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x88bf7470 xdr_set_scratch_buffer +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x891a7506 rpc_find_or_alloc_pipe_dir_object +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x8950ce33 xdr_process_buf +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x89baadf3 svc_rpcb_setup +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x89c2167d xdr_read_pages +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x8a16b777 xdr_reserve_space +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x8a50933e rpc_call_null +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x8a59b807 rpc_d_lookup_sb +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x8aeba40c svc_age_temp_xprts_now +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x8c0ffde4 rpc_peeraddr2str +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x8e204dd2 rpc_max_bc_payload +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x8e2db949 svc_generic_init_request +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x8e3b19d6 svc_rpcb_cleanup +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x90b22246 rpc_net_ns +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x91a9feea rpc_count_iostats +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x9224516d rpc_wake_up +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x93ac1458 svc_auth_register +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x977225e4 xprt_complete_rqst +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x985304b8 sunrpc_cache_unregister_pipefs +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x99b29490 rpc_clnt_swap_activate +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x9ee6fa12 xprt_wait_for_reply_request_rtt +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x9fd38e9b sunrpc_cache_register_pipefs +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xa13acdb8 svc_pool_map_put +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xa169010a xprt_setup_backchannel +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xa28040a4 rpc_mkpipe_data +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xa3ca07fb svc_print_addr +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xa61b8ef7 svc_xprt_names +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xa6f7fdee rpc_run_task +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xa7572245 xprt_reserve_xprt_cong +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xa818f4b4 xdr_enter_page +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xaa0bdb42 svc_drop +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xabc68575 rpc_clnt_show_stats +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xac89e308 bc_svc_process +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xad8552bd xdr_write_pages +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xadf5df28 unix_domain_find +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xaeeabfa9 xprt_disconnect_done +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xaf5bf6ef nfs_debug +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xafd96784 rpc_add_pipe_dir_object +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xb311a272 xprt_force_disconnect +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xb312d0c4 svc_pool_map_get +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xb3c1a11e rpc_sleep_on +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xb43ab3a4 svc_return_autherr +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xb51a3724 rpc_pipefs_notifier_unregister +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xb5b90260 rpc_alloc_iostats +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xb649906b xprt_put +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xbb1fbdf8 svc_unreg_xprt_class +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xbb6dc82b rpcauth_init_credcache +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xbb905f5c svc_set_num_threads_sync +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xbc76ada3 rpcauth_unregister +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xbdb8af30 rpc_release_client +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xbf4d66ac rpcb_getport_async +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xbf76eddd xdr_stream_decode_opaque_dup +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xbf9d1b96 nfsd_debug +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xc0c56679 xdr_stream_pos +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xc12435e3 rpc_calc_rto +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xc1491651 svc_create_pooled +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xc169d947 rpc_destroy_wait_queue +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xc188f6fc rpc_remove_pipe_dir_object +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xc2ac7bf1 rpc_peeraddr +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xc3f8e9e4 xprt_release_xprt_cong +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xc41bd17d xprt_pin_rqst +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xc60d9eb9 xdr_buf_subsegment +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xc8e96dea qword_addhex +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xca7de181 xdr_commit_encode +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xcaf35e83 rpc_shutdown_client +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xcb47212e rpc_setbufsize +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xcb69af6b auth_domain_find +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xcc68ae22 rpc_exit +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xcd74c0dd xdr_stream_decode_string_dup +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xce678a59 xdr_decode_netobj +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xcee467f3 xprt_load_transport +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xcf16e718 rpc_clnt_xprt_switch_put +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xcf377b08 xprt_unregister_transport +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xd01cb628 _copy_from_pages +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xd2e932a7 rpc_proc_register +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xd3086bbb svc_rqst_alloc +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xd36786d2 svc_xprt_do_enqueue +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xd3872d31 rpc_sleep_on_priority_timeout +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xd47658ec svc_bind +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xd59f3145 rpc_clnt_test_and_add_xprt +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xd6c46688 svc_fill_write_vector +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xd827f15f rpc_put_task_async +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xda121f69 xprt_release_rqst_cong +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xdab2f890 svc_addsock +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xdc1e5038 xdr_shift_buf +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xdebc99a6 svc_xprt_copy_addrs +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xe0a79868 rpc_clnt_swap_deactivate +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xe105023a rpc_switch_client_transport +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xe220bd4d xprt_release_xprt +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xe2f15f57 svc_authenticate +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xe31550b8 rpc_task_release_transport +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xe4a7b3ac svc_shutdown_net +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xe5919cb1 xdr_encode_opaque +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xe66a954b xdr_init_encode +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xe6f6311e cache_destroy_net +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xe7cfa82f xdr_stream_decode_string +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xe95c348f rpc_free_iostats +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xe97f4ce5 qword_get +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xeb7f6928 rpc_wake_up_queued_task +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xec1d3f15 xprt_unpin_rqst +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xec4c36c5 svc_xprt_init +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xeda9ed2b read_bytes_from_xdr_buf +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xedcf6be4 qword_add +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xeea5b1cb rpc_unlink +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xeeacab69 rpc_update_rtt +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xefa80ed7 xdr_init_decode_pages +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xf09241c4 xdr_encode_array2 +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xf272266d svc_process +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xf3ba6e94 cache_seq_start_rcu +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xf84e19fd svc_fill_symlink_pathname +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xf8996ace rpcauth_wrap_req_encode +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xfa0752c3 svc_set_num_threads +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xfa868d4d xprt_register_transport +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xff0199b0 rpc_clone_client +EXPORT_SYMBOL_GPL net/tls/tls 0x0a6480e5 tls_offload_tx_resync_request +EXPORT_SYMBOL_GPL net/tls/tls 0xb2d9d607 tls_encrypt_skb +EXPORT_SYMBOL_GPL net/tls/tls 0xc1bfdb32 tls_validate_xmit_skb +EXPORT_SYMBOL_GPL net/tls/tls 0xfd3ff337 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 0x0a1bb1ef virtio_transport_do_socket_init +EXPORT_SYMBOL_GPL net/vmw_vsock/vmw_vsock_virtio_transport_common 0x0a6bfa10 virtio_transport_inc_tx_pkt +EXPORT_SYMBOL_GPL net/vmw_vsock/vmw_vsock_virtio_transport_common 0x135841ac virtio_transport_release +EXPORT_SYMBOL_GPL net/vmw_vsock/vmw_vsock_virtio_transport_common 0x2249b414 virtio_transport_recv_pkt +EXPORT_SYMBOL_GPL net/vmw_vsock/vmw_vsock_virtio_transport_common 0x27501396 virtio_transport_notify_send_pre_enqueue +EXPORT_SYMBOL_GPL net/vmw_vsock/vmw_vsock_virtio_transport_common 0x31a34822 virtio_transport_stream_enqueue +EXPORT_SYMBOL_GPL net/vmw_vsock/vmw_vsock_virtio_transport_common 0x3a08c3aa virtio_transport_notify_send_post_enqueue +EXPORT_SYMBOL_GPL net/vmw_vsock/vmw_vsock_virtio_transport_common 0x3d3df157 virtio_transport_notify_send_init +EXPORT_SYMBOL_GPL net/vmw_vsock/vmw_vsock_virtio_transport_common 0x3db44bb4 virtio_transport_shutdown +EXPORT_SYMBOL_GPL net/vmw_vsock/vmw_vsock_virtio_transport_common 0x444c72da virtio_transport_notify_recv_pre_block +EXPORT_SYMBOL_GPL net/vmw_vsock/vmw_vsock_virtio_transport_common 0x45bad641 virtio_transport_notify_buffer_size +EXPORT_SYMBOL_GPL net/vmw_vsock/vmw_vsock_virtio_transport_common 0x6ae954e2 virtio_transport_notify_recv_post_dequeue +EXPORT_SYMBOL_GPL net/vmw_vsock/vmw_vsock_virtio_transport_common 0x796ef096 virtio_transport_notify_recv_pre_dequeue +EXPORT_SYMBOL_GPL net/vmw_vsock/vmw_vsock_virtio_transport_common 0x7edd5d7f virtio_transport_notify_send_pre_block +EXPORT_SYMBOL_GPL net/vmw_vsock/vmw_vsock_virtio_transport_common 0x81861533 virtio_transport_stream_is_active +EXPORT_SYMBOL_GPL net/vmw_vsock/vmw_vsock_virtio_transport_common 0x8c2599ef virtio_transport_notify_recv_init +EXPORT_SYMBOL_GPL net/vmw_vsock/vmw_vsock_virtio_transport_common 0xa5872e8f virtio_transport_put_credit +EXPORT_SYMBOL_GPL net/vmw_vsock/vmw_vsock_virtio_transport_common 0xb4d6f11d virtio_transport_stream_rcvhiwat +EXPORT_SYMBOL_GPL net/vmw_vsock/vmw_vsock_virtio_transport_common 0xb670a3d9 virtio_transport_stream_has_data +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 0xc4088432 virtio_transport_stream_has_space +EXPORT_SYMBOL_GPL net/vmw_vsock/vmw_vsock_virtio_transport_common 0xc6d5b166 virtio_transport_notify_poll_in +EXPORT_SYMBOL_GPL net/vmw_vsock/vmw_vsock_virtio_transport_common 0xd5344f90 virtio_transport_deliver_tap_pkt +EXPORT_SYMBOL_GPL net/vmw_vsock/vmw_vsock_virtio_transport_common 0xe3edbc28 virtio_transport_get_credit +EXPORT_SYMBOL_GPL net/vmw_vsock/vmw_vsock_virtio_transport_common 0xe9465825 virtio_transport_stream_dequeue +EXPORT_SYMBOL_GPL net/vmw_vsock/vmw_vsock_virtio_transport_common 0xebd3bf90 virtio_transport_dgram_dequeue +EXPORT_SYMBOL_GPL net/vmw_vsock/vmw_vsock_virtio_transport_common 0xf184c346 virtio_transport_destruct +EXPORT_SYMBOL_GPL net/vmw_vsock/vmw_vsock_virtio_transport_common 0xf84bec52 virtio_transport_notify_poll_out +EXPORT_SYMBOL_GPL net/vmw_vsock/vmw_vsock_virtio_transport_common 0xfa3dd9d7 virtio_transport_connect +EXPORT_SYMBOL_GPL net/vmw_vsock/vmw_vsock_virtio_transport_common 0xfaacd2ee virtio_transport_dgram_bind +EXPORT_SYMBOL_GPL net/vmw_vsock/vmw_vsock_virtio_transport_common 0xfbc88640 virtio_transport_free_pkt +EXPORT_SYMBOL_GPL net/vmw_vsock/vmw_vsock_virtio_transport_common 0xfedd2a9e virtio_transport_dgram_enqueue +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0x00234b00 vsock_add_tap +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0x0043dff5 vsock_remove_sock +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0x08287dda vsock_core_register +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0x16a591fd vsock_enqueue_accept +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0x1ba5e27b vsock_remove_tap +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0x2663cb64 vsock_addr_equals_addr +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0x284e07d8 vsock_bind_table +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0x3377d853 vsock_core_unregister +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0x3a00a04f vsock_stream_has_data +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0x44420515 vsock_table_lock +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0x73879664 vsock_addr_init +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0x74e91915 vsock_addr_cast +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0x751ff010 vsock_addr_unbind +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0x7dc49a4c vsock_remove_pending +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0x8713dd66 vsock_assign_transport +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0x8bce1809 vsock_remove_connected +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0x8cb050a7 vsock_deliver_tap +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0x8ff08208 vsock_find_connected_socket +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0x90aa8549 vsock_find_cid +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0x968ee88f vsock_for_each_connected_socket +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0x9bb6fd09 vsock_connected_table +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0xa937d009 vsock_core_get_transport +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0xb06f363d vsock_add_pending +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0xbc35de47 vsock_insert_connected +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0xbd0f699d vsock_addr_bound +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0xc3373f82 vsock_find_bound_socket +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0xd95ac116 vsock_addr_validate +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0xde51e870 vsock_remove_bound +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0xe9dfb5bf vsock_create_connected +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0xe9ebd884 vsock_stream_has_space +EXPORT_SYMBOL_GPL net/wimax/wimax 0x0c091d95 wimax_msg +EXPORT_SYMBOL_GPL net/wimax/wimax 0x1b1b2fbb wimax_msg_send +EXPORT_SYMBOL_GPL net/wimax/wimax 0x2e426c3b wimax_msg_data +EXPORT_SYMBOL_GPL net/wimax/wimax 0x39cf1c2f wimax_dev_add +EXPORT_SYMBOL_GPL net/wimax/wimax 0x3a1f21ab wimax_report_rfkill_hw +EXPORT_SYMBOL_GPL net/wimax/wimax 0x48312ca3 wimax_msg_len +EXPORT_SYMBOL_GPL net/wimax/wimax 0x527ebca6 wimax_report_rfkill_sw +EXPORT_SYMBOL_GPL net/wimax/wimax 0x58258dbb wimax_dev_init +EXPORT_SYMBOL_GPL net/wimax/wimax 0x5d16bb05 wimax_msg_alloc +EXPORT_SYMBOL_GPL net/wimax/wimax 0x81a5370c wimax_msg_data_len +EXPORT_SYMBOL_GPL net/wimax/wimax 0xa267162e wimax_dev_rm +EXPORT_SYMBOL_GPL net/wimax/wimax 0xc13fa56f wimax_state_change +EXPORT_SYMBOL_GPL net/wimax/wimax 0xcb91a257 wimax_state_get +EXPORT_SYMBOL_GPL net/wireless/cfg80211 0x0299b410 cfg80211_wext_giwmode +EXPORT_SYMBOL_GPL net/wireless/cfg80211 0x09e1ee9f cfg80211_vendor_cmd_reply +EXPORT_SYMBOL_GPL net/wireless/cfg80211 0x26d3d5e2 cfg80211_pmsr_complete +EXPORT_SYMBOL_GPL net/wireless/cfg80211 0x40e987b4 cfg80211_wext_giwrts +EXPORT_SYMBOL_GPL net/wireless/cfg80211 0x489441c1 cfg80211_wext_giwrange +EXPORT_SYMBOL_GPL net/wireless/cfg80211 0x5a4151f6 cfg80211_wext_giwfrag +EXPORT_SYMBOL_GPL net/wireless/cfg80211 0x6453762e cfg80211_wext_giwscan +EXPORT_SYMBOL_GPL net/wireless/cfg80211 0x71a00e98 cfg80211_wext_giwname +EXPORT_SYMBOL_GPL net/wireless/cfg80211 0x7ba626da cfg80211_shutdown_all_interfaces +EXPORT_SYMBOL_GPL net/wireless/cfg80211 0x804c127c cfg80211_wext_siwmode +EXPORT_SYMBOL_GPL net/wireless/cfg80211 0x844cc983 cfg80211_wext_giwretry +EXPORT_SYMBOL_GPL net/wireless/cfg80211 0x846694cb cfg80211_pmsr_report +EXPORT_SYMBOL_GPL net/wireless/cfg80211 0x9f4a6cb0 cfg80211_wext_siwfrag +EXPORT_SYMBOL_GPL net/wireless/cfg80211 0xaacb4201 cfg80211_wext_siwscan +EXPORT_SYMBOL_GPL net/wireless/cfg80211 0xeeb81805 cfg80211_vendor_cmd_get_sender +EXPORT_SYMBOL_GPL net/wireless/cfg80211 0xf1ef7f0c cfg80211_wext_siwrts +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 0x22028261 ipcomp_output +EXPORT_SYMBOL_GPL net/xfrm/xfrm_ipcomp 0x2ff698f9 ipcomp_init_state +EXPORT_SYMBOL_GPL net/xfrm/xfrm_ipcomp 0xbb65a921 ipcomp_destroy +EXPORT_SYMBOL_GPL net/xfrm/xfrm_ipcomp 0xeb1d083e ipcomp_input +EXPORT_SYMBOL_GPL sound/core/seq/snd-seq 0xadb51cff snd_seq_client_ioctl_unlock +EXPORT_SYMBOL_GPL sound/core/seq/snd-seq 0xe50413d7 snd_seq_client_ioctl_lock +EXPORT_SYMBOL_GPL sound/core/snd-seq-device 0x176448e6 __snd_seq_driver_register +EXPORT_SYMBOL_GPL sound/core/snd-seq-device 0x415bd159 snd_seq_driver_unregister +EXPORT_SYMBOL_GPL sound/firewire/snd-firewire-lib 0x029f0419 amdtp_am824_set_midi_position +EXPORT_SYMBOL_GPL sound/firewire/snd-firewire-lib 0x29636d40 amdtp_domain_destroy +EXPORT_SYMBOL_GPL sound/firewire/snd-firewire-lib 0x34bead05 amdtp_domain_stream_pcm_pointer +EXPORT_SYMBOL_GPL sound/firewire/snd-firewire-lib 0x56bc668b amdtp_am824_add_pcm_hw_constraints +EXPORT_SYMBOL_GPL sound/firewire/snd-firewire-lib 0x636c554f amdtp_am824_set_pcm_position +EXPORT_SYMBOL_GPL sound/firewire/snd-firewire-lib 0x79aecc31 amdtp_domain_add_stream +EXPORT_SYMBOL_GPL sound/firewire/snd-firewire-lib 0x7c0606a1 amdtp_domain_stop +EXPORT_SYMBOL_GPL sound/firewire/snd-firewire-lib 0x989c19cb amdtp_am824_init +EXPORT_SYMBOL_GPL sound/firewire/snd-firewire-lib 0x9aa7733a amdtp_domain_init +EXPORT_SYMBOL_GPL sound/firewire/snd-firewire-lib 0xcf0b4be4 amdtp_domain_stream_pcm_ack +EXPORT_SYMBOL_GPL sound/firewire/snd-firewire-lib 0xe1e6862c amdtp_domain_start +EXPORT_SYMBOL_GPL sound/firewire/snd-firewire-lib 0xe6446fbc amdtp_am824_midi_trigger +EXPORT_SYMBOL_GPL sound/firewire/snd-firewire-lib 0xf2f7d15b amdtp_am824_set_parameters +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0x0030838f snd_hdac_check_power_state +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0x05636f93 snd_hdac_aligned_read +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0x096bd641 snd_hdac_read +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0x0d1d6f54 snd_hdac_bus_alloc_stream_pages +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0x0d54b6ef snd_hdac_codec_modalias +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0x12389fb9 snd_hdac_bus_exit_link_reset +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0x1414643c snd_hdac_regmap_read_raw +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0x1433b641 snd_hdac_codec_write +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0x1488641f snd_hdac_aligned_write +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0x18a6b48b snd_hdac_read_parm_uncached +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0x194006f2 snd_hdac_get_stream +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0x1f1e53ff snd_hdac_acomp_register_notifier +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0x1f1f9dc6 snd_hdac_refresh_widgets +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0x2a24930b snd_hdac_power_up +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0x2a5d2599 snd_hdac_device_exit +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0x2b02ac18 snd_hdac_stream_release +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0x2b4c1867 snd_hdac_stream_reset +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0x302bbc36 snd_hdac_stream_sync_trigger +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0x33bd3635 snd_hdac_dsp_trigger +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0x3741f582 snd_hdac_bus_send_cmd +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0x3bd544c2 snd_hdac_get_active_channels +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0x3e0d5bb2 snd_hdac_stream_cleanup +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0x3e827c1a snd_hdac_stream_setup_periods +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0x3eb0f9ab snd_hdac_stream_init +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0x40cfac72 snd_hdac_bus_update_rirb +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0x44204d8c snd_hdac_stream_clear +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0x4627c5ac snd_hdac_get_stream_stripe_ctl +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0x479c66ab snd_hdac_stream_set_params +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0x49430b1b snd_hdac_stream_timecounter_init +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0x4c7ec4b6 snd_hdac_get_ch_alloc_from_ca +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0x4f74ef78 snd_hdac_override_parm +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0x567e04b8 snd_hdac_bus_stop_chip +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0x5aa92a12 snd_hdac_stream_assign +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0x5c07cb49 snd_hdac_calc_stream_format +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0x5fd65421 snd_hdac_power_down +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0x6042c368 snd_hdac_acomp_init +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0x646c0797 snd_hdac_regmap_add_vendor_verb +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0x64715a71 snd_hdac_device_register +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0x6674fbcd snd_hdac_bus_free_stream_pages +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0x67bfe791 snd_hdac_spk_to_chmap +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0x67fc2a09 snd_hdac_power_down_pm +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0x688fb927 hdac_get_device_id +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0x6ade9744 snd_hdac_bus_init_chip +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0x738aaac7 snd_hdac_bus_get_response +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0x73dc425e snd_hdac_device_set_chip_name +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0x748f0c25 snd_hdac_bus_init +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0x77c754a8 snd_hdac_chmap_to_spk_mask +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0x7b2025bb snd_hdac_stream_setup +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0x852e3bf3 snd_hdac_power_up_pm +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0x85e14dde snd_hda_bus_type +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0x893afcaa snd_hdac_bus_handle_stream_irq +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0x8a22c125 snd_hdac_regmap_write_raw +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0x8ff9940e snd_hdac_regmap_sync +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0x92b5edb4 snd_hdac_dsp_prepare +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0x942c3654 _snd_hdac_read_parm +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0x94f36d7a snd_hdac_stream_start +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0x9a8e1877 snd_array_free +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0xa61e9fc5 snd_hdac_regmap_exit +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0xa62ccb20 snd_hdac_bus_exit +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0xa7c43d87 snd_hdac_display_power +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0xabd40468 snd_hdac_query_supported_pcm +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0xb7e7c798 snd_hdac_sync_power_state +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0xbbad23c6 snd_hdac_regmap_init +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0xbe7dd7dc snd_array_new +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0xc7227897 snd_hdac_set_codec_wakeup +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0xc87eece0 snd_hdac_bus_exec_verb_unlocked +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0xcc7cea62 snd_hdac_bus_parse_capabilities +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0xd49ec290 snd_hdac_bus_init_cmd_io +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0xd4b0467d snd_hdac_register_chmap_ops +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0xd5150b61 snd_hdac_get_connections +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0xd792de9a snd_hdac_codec_read +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0xd9ec18bd snd_hdac_stream_sync +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0xdafa019e snd_hdac_bus_reset_link +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0xdb5dd2c1 snd_hdac_dsp_cleanup +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0xdbb33860 snd_hdac_regmap_update_raw +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0xdcfda99a snd_hdac_setup_channel_mapping +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0xdd58953e snd_hdac_acomp_get_eld +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0xdf429443 snd_hdac_device_unregister +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0xe4cee5bf snd_hdac_regmap_update_raw_once +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0xe4e07754 snd_hdac_print_channel_allocation +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0xe529533f snd_hdac_is_supported_format +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0xe8ba9122 snd_hdac_sync_audio_rate +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0xe9a4e0ab snd_hdac_bus_enter_link_reset +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0xeabc50ee snd_hdac_device_init +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0xf325c64b snd_hdac_add_chmap_ctls +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0xf4cf2cda snd_hdac_channel_allocation +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0xf58c6812 snd_hdac_stream_stop +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0xfa86624b snd_hdac_acomp_exit +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0xfccebc19 snd_hdac_bus_stop_cmd_io +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0xfddae314 snd_hdac_get_sub_nodes +EXPORT_SYMBOL_GPL sound/hda/snd-intel-dspcfg 0xa6897d25 snd_intel_dsp_driver_probe +EXPORT_SYMBOL_GPL sound/i2c/other/snd-ak4113 0x05aac7a6 snd_ak4113_check_rate_and_errors +EXPORT_SYMBOL_GPL sound/i2c/other/snd-ak4113 0x2c7f70df snd_ak4113_external_rate +EXPORT_SYMBOL_GPL sound/i2c/other/snd-ak4113 0xa4e83ecb snd_ak4113_build +EXPORT_SYMBOL_GPL sound/i2c/other/snd-ak4113 0xa66aacac snd_ak4113_reg_write +EXPORT_SYMBOL_GPL sound/i2c/other/snd-ak4113 0xde9e829f snd_ak4113_create +EXPORT_SYMBOL_GPL sound/i2c/other/snd-ak4113 0xee4e6944 snd_ak4113_reinit +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x0235925e snd_hda_apply_verbs +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x02edc40c snd_hda_override_amp_caps +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x0676f5ac snd_hda_get_input_pin_attr +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x0747e8f6 snd_hda_jack_tbl_get_mst +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x09e58e33 snd_hda_shutup_pins +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x0a18e6e7 snd_hda_multi_out_dig_close +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x0b289c69 azx_stop_all_streams +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x0ccd24ed snd_hda_get_dev_select +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x0eb1cc23 snd_hda_correct_pin_ctl +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x117c353f snd_hda_attach_beep_device +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x15d7c397 snd_hda_jack_set_dirty_all +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x178a5a8a __hda_codec_driver_register +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x1a1de104 azx_probe_codecs +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x1baadc79 snd_hda_multi_out_analog_cleanup +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x231cd5b9 azx_get_position +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x24168265 snd_hda_enable_beep_device +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x24561b54 snd_hda_codec_load_dsp_cleanup +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x25f189ac azx_bus_init +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x278a4e8f snd_hda_multi_out_analog_open +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x2c8e1faa snd_hda_add_nid +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x2cd74787 snd_hda_pick_fixup +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x2e66b2cb snd_hda_codec_set_pin_target +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x2f93a600 snd_hda_jack_pin_sense +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x35d30ac2 snd_hda_get_connections +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x36446b2d snd_hda_sync_vmaster_hook +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x372ee151 snd_hda_multi_out_dig_cleanup +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x375faa60 is_jack_detectable +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x38ce402b azx_interrupt +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x38ff5c74 snd_hda_codec_set_power_to_all +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x39b15927 snd_hda_add_verbs +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x3a2b3c95 snd_hda_create_dig_out_ctls +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x3bd987a8 snd_hda_check_amp_caps +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x3be56edf snd_hda_set_dev_select +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x3eb3a369 snd_hda_codec_amp_init_stereo +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x4063e431 snd_hda_jack_set_gating_jack +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x41b1447f snd_hda_get_int_hint +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x41b2c928 snd_hda_mixer_amp_switch_put +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x4e98e1a2 snd_hda_parse_pin_defcfg +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x5308d841 snd_hda_add_new_ctls +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x53b4307d snd_hda_load_patch +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x588fc0c3 snd_hda_set_vmaster_tlv +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x5a538cc3 snd_hda_get_pin_label +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x5a9065a6 snd_hda_spdif_ctls_assign +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x5b56aa1e snd_hda_jack_detect_enable +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x5c208d81 snd_hda_input_mux_put +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x5cfd1535 snd_hda_get_bool_hint +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x5e50f8f8 snd_hda_codec_amp_init +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x6082fdde snd_hda_codec_pcm_new +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x63d2d8d0 azx_stop_chip +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x63e9e843 snd_hda_codec_pcm_put +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x640d383a snd_hda_codec_update_widgets +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x66d1174b snd_hda_mixer_amp_volume_put +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x67726080 snd_hda_get_default_vref +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x68ec4a58 snd_hda_codec_get_pincfg +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x6d3622e6 snd_hda_mixer_amp_tlv +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x701fd801 snd_hda_spdif_out_of_nid +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x734a795f snd_hda_spdif_ctls_unassign +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x7592ca11 azx_codec_configure +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x759d59d1 snd_hda_jack_report_sync +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x76391333 snd_hda_codec_set_pincfg +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x78294119 azx_get_pos_lpib +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x79cba292 snd_hda_jack_detect_state_mst +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x7ac5a809 azx_get_pos_posbuf +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x7b23e038 snd_hda_multi_out_dig_prepare +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x7c930adb snd_hda_codec_load_dsp_trigger +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x7ee68257 hda_codec_driver_unregister +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x7fd3bfd5 snd_hda_apply_fixup +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x821ce149 snd_hda_add_vmaster_hook +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x82a521fd snd_hda_ctl_add +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x854dd1a5 snd_hda_codec_setup_stream +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x86647d12 snd_hda_enum_helper_info +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x8e5811de azx_init_streams +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x8eb2bfa9 snd_hda_codec_set_name +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x92422e49 _snd_hda_set_pin_ctl +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x938e7f93 snd_hda_jack_unsol_event +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x940bb592 snd_hda_codec_new +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x958ff681 __snd_hda_add_vmaster +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x97f6edca snd_hda_jack_poll_all +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x9968805d snd_hda_codec_amp_update +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x9cc6bca3 snd_hda_codec_cleanup +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x9d16f608 snd_hda_lock_devices +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x9d596c31 snd_hda_pick_pin_fixup +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x9d7718e2 snd_hda_codec_load_dsp_prepare +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xa0fbe9be hda_get_autocfg_input_label +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xa7281630 snd_hda_codec_build_controls +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xa785acfe snd_hda_codec_get_pin_target +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xaaef75ad snd_hda_multi_out_dig_open +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xabd027ea snd_hda_jack_tbl_get_from_tag +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xb3b3ef1a snd_hda_detach_beep_device +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xb470cbc2 snd_hda_add_imux_item +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xb6422690 snd_hda_get_conn_index +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xb862b9fc snd_hda_override_conn_list +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xb89867aa snd_hda_unlock_devices +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xb996c6f6 azx_init_chip +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xbf75e684 snd_hda_get_hint +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xbff9b124 snd_hda_get_conn_list +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xc0a5f1ab snd_hda_jack_add_kctls +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xc295685f snd_hda_check_amp_list_power +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xc3c13d71 query_amp_caps +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xc6218ab8 snd_hda_create_spdif_share_sw +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xc89d29bd snd_hda_apply_pincfgs +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xcc83b9c5 snd_hda_input_mux_info +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xcda8540e snd_hda_find_mixer_ctl +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xce43d1b1 snd_hda_jack_detect_enable_callback_mst +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xce89690d snd_hda_jack_add_kctl_mst +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xcf886cd3 snd_hda_mixer_amp_volume_info +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xcfda9b1e snd_hda_mixer_amp_switch_get +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xd0fed896 snd_hda_set_power_save +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xd2e770ce azx_free_streams +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xd38c520a snd_hda_codec_configure +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xd5bd0ddc snd_hda_multi_out_analog_prepare +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xd8aa135a snd_hda_mixer_amp_switch_get_beep +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xda35960e snd_hda_codec_eapd_power_filter +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xdb06b019 snd_hda_codec_device_new +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xe118de5d snd_pcm_2_1_chmaps +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xe196625f snd_hda_create_spdif_in_ctls +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xe199d292 snd_hda_sequence_write +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xe4810d9a __snd_hda_codec_cleanup_stream +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xe826bde6 snd_hda_get_num_devices +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xe8b9457d snd_hda_mixer_amp_volume_get +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xe8ebb2b0 snd_hda_mixer_amp_switch_info +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xeab5dca4 snd_hda_codec_amp_stereo +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xeda3a721 snd_print_pcm_bits +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xf0cc0fe5 snd_hda_mixer_amp_switch_put_beep +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xf6e41088 snd_hda_codec_parse_pcms +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xfe0a1f4c snd_hda_codec_prepare +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec-generic 0x089ed4cc snd_hda_add_new_path +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec-generic 0x1af9a6ac snd_hda_gen_check_power_status +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec-generic 0x1cba00f1 snd_hda_gen_add_mute_led_cdev +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec-generic 0x333094ac snd_hda_gen_fix_pin_power +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec-generic 0x49b3523f snd_hda_gen_reboot_notify +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec-generic 0x53391bc8 snd_hda_get_path_idx +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec-generic 0x5f07bdfc snd_hda_gen_update_outputs +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec-generic 0x68e72e7e snd_hda_gen_add_micmute_led_cdev +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec-generic 0x74d30a9e snd_hda_gen_build_pcms +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec-generic 0x76dc6871 hda_main_out_badness +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec-generic 0x76e2c8ca snd_hda_gen_build_controls +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec-generic 0x85a6bb48 snd_hda_gen_hp_automute +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec-generic 0x871a6e44 hda_extra_out_badness +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec-generic 0x8809bbb1 snd_hda_activate_path +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec-generic 0x8d8fdbf0 snd_hda_gen_path_power_filter +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec-generic 0x98f1be03 snd_hda_gen_add_kctl +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec-generic 0x9b3b1c07 snd_hda_gen_parse_auto_config +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec-generic 0xbcb5cfe5 snd_hda_get_path_from_idx +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec-generic 0xd4af30b4 snd_hda_gen_free +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec-generic 0xd53651f6 snd_hda_gen_init +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec-generic 0xe547dab3 snd_hda_gen_mic_autoswitch +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec-generic 0xe7473ea8 snd_hda_gen_spec_init +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec-generic 0xf817a2f9 snd_hda_gen_stream_pm +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec-generic 0xfb572065 snd_hda_gen_line_automute +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-adau-utils 0xae620be9 adau_calc_pll_cfg +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-adau1761 0x2200df6a adau1761_regmap_config +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-adau1761 0xda31578e adau1761_probe +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-adau17x1 0x0120986f adau17x1_readable_register +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-adau17x1 0x02030215 adau17x1_remove +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-adau17x1 0x1965f107 adau17x1_add_widgets +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-adau17x1 0x1d21000e adau17x1_add_routes +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-adau17x1 0x4938e30f adau17x1_volatile_register +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-adau17x1 0x90cdc4fa adau17x1_precious_register +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-adau17x1 0x953b4da0 adau17x1_dai_ops +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-adau17x1 0xe9735808 adau17x1_probe +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-adau17x1 0xf463310e adau17x1_resume +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-adau17x1 0xf89a1c7a adau17x1_set_micbias_voltage +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-adau7118 0x8101e0ce adau7118_probe +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-arizona 0x027758c1 arizona_lhpf1_mode +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-arizona 0x04a564ec arizona_hp_ev +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-arizona 0x0f024587 arizona_dai_ops +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-arizona 0x142b9476 arizona_in_vd_ramp +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-arizona 0x153f1501 arizona_init_spk +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-arizona 0x1ec252b2 arizona_isrc_fsl +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-arizona 0x1fd80bf0 arizona_anc_ng_enum +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-arizona 0x232094dc arizona_init_gpio +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-arizona 0x26d79523 arizona_out_vi_ramp +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-arizona 0x2773d191 arizona_of_get_audio_pdata +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-arizona 0x339f425c arizona_lhpf2_mode +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-arizona 0x36978d68 arizona_set_output_mode +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-arizona 0x3a8d647b arizona_dvfs_up +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-arizona 0x409bf161 arizona_init_vol_limit +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-arizona 0x46277216 arizona_rate_val +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-arizona 0x4700f4e3 arizona_out_vd_ramp +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-arizona 0x4b2494f9 arizona_clk_ev +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-arizona 0x4e7f5f84 arizona_input_analog +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-arizona 0x504f7766 arizona_lhpf4_mode +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-arizona 0x65669f60 arizona_dvfs_sysclk_ev +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-arizona 0x69102a20 arizona_sample_rate_text +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-arizona 0x725ae5e4 arizona_init_mono +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-arizona 0x729a5ef3 arizona_mixer_values +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-arizona 0x75fcf5b6 arizona_in_vi_ramp +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-arizona 0x7d357710 arizona_set_fll +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-arizona 0x7f26f273 arizona_mixer_texts +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-arizona 0x7fb07e37 arizona_init_dvfs +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-arizona 0x7fcb929a arizona_sample_rate_val_to_name +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-arizona 0x80cb173c arizona_in_ev +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-arizona 0x855310a4 arizona_isrc_fsh +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-arizona 0x85bd4ec7 arizona_ng_hold +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-arizona 0x8708aa3e arizona_lhpf_coeff_put +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-arizona 0x8b8759c6 arizona_set_fll_refclk +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-arizona 0x8ce0154e arizona_in_hpf_cut_enum +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-arizona 0x8dfda793 arizona_asrc_rate1 +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-arizona 0x8ffe6386 arizona_free_spk_irqs +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-arizona 0x934316e0 arizona_eq_coeff_put +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-arizona 0x9485f5b1 arizona_init_spk_irqs +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-arizona 0x95e849e8 arizona_lhpf3_mode +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-arizona 0x9dc40e63 arizona_output_anc_src +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-arizona 0xa4a28103 arizona_anc_input_src +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-arizona 0xa66ae11f arizona_init_dai +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-arizona 0xab3cd77f arizona_set_sysclk +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-arizona 0xab4d845c arizona_rate_text +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-arizona 0xbfdda74a arizona_adsp2_rate_controls +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-arizona 0xc0dbb8fc arizona_init_fll +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-arizona 0xc53b32e0 arizona_dvfs_down +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-arizona 0xc9c29637 arizona_mixer_tlv +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-arizona 0xca0b26bb arizona_simple_dai_ops +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-arizona 0xdce6e596 arizona_in_dmic_osr +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-arizona 0xdfe804b8 arizona_sample_rate_val +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-arizona 0xf14e6998 arizona_anc_ev +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-arizona 0xf6444056 arizona_voice_trigger_switch +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-arizona 0xfee6f4b8 arizona_init_common +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-arizona 0xff9dccfc arizona_out_ev +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-cs4271 0x7d05786f cs4271_dt_ids +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-cs4271 0xafaf1ef4 cs4271_probe +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-cs4271 0xc1113019 cs4271_regmap_config +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-cs42l51 0x12cf10b6 cs42l51_remove +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-cs42l51 0x375ad98c cs42l51_of_match +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-cs42l51 0x4a5c9f5d cs42l51_suspend +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-cs42l51 0xbd3d717d cs42l51_regmap +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-cs42l51 0xbe3171b9 cs42l51_resume +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-cs42l51 0xe65fd14e cs42l51_probe +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-cs42xx8 0x0245c4f2 cs42xx8_of_match +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-cs42xx8 0x7cac7292 cs42888_data +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-cs42xx8 0x899b3d98 cs42xx8_regmap_config +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-cs42xx8 0xc08bec41 cs42xx8_probe +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-cs42xx8 0xcd3794c9 cs42448_data +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-cs42xx8 0xf3cddc36 cs42xx8_pm +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-da7219 0x458abcca da7219_aad_jack_det +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-da7219 0x49963810 da7219_aad_init +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-da7219 0x74b88127 da7219_aad_exit +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-es8328 0x87ecb5af es8328_regmap_config +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-es8328 0x9eb16f47 es8328_probe +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-hdmi-codec 0x4eeeef72 hdmi_codec_set_jack_detect +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-max98090 0x39331680 max98090_mic_detect +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-max98095 0x3626ae67 max98095_jack_detect +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-nau8824 0xdef47f72 nau8824_enable_jack_detect +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-pcm1789-codec 0x63f88876 pcm1789_regmap_config +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-pcm1789-codec 0x79a439b9 pcm1789_common_exit +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-pcm1789-codec 0x89149c47 pcm1789_common_init +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-pcm179x-codec 0x3253dae1 pcm179x_common_init +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-pcm179x-codec 0x6448245e pcm179x_regmap_config +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-pcm186x 0x2670f7b7 pcm186x_regmap +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-pcm186x 0x373f4d4f pcm186x_probe +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-pcm3168a 0x0eb19217 pcm3168a_remove +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-pcm3168a 0x305f62b9 pcm3168a_regmap +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-pcm3168a 0x4489e4a9 pcm3168a_probe +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-pcm3168a 0xcee1a5a8 pcm3168a_pm_ops +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-pcm512x 0x57d05237 pcm512x_regmap +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-pcm512x 0x6a18e23e pcm512x_pm_ops +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-pcm512x 0x9438bf75 pcm512x_remove +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-pcm512x 0xd62653f1 pcm512x_probe +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-rl6231 0x5dc92cdf rl6231_pll_calc +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-rl6231 0x70617a04 rl6231_get_clk_info +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-rl6231 0x8d7fa148 rl6231_get_pre_div +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-rl6231 0xdba4502f rl6231_calc_dmic_clk +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-rt5514-spi 0x554467a3 rt5514_spi_burst_read +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-rt5514-spi 0xbb4583f6 rt5514_spi_burst_write +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-rt5640 0xb42578b7 rt5640_sel_asrc_clk_src +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-rt5640 0xf3d7cf76 rt5640_dmic_enable +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-rt5645 0x9b3470ca rt5645_sel_asrc_clk_src +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-rt5645 0xaa919456 rt5645_set_jack_detect +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-rt5663 0x30f836bf rt5663_sel_asrc_clk_src +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-rt5677 0xabe9f3c4 rt5677_sel_asrc_clk_src +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-rt5677-spi 0x425a794d rt5677_spi_write +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-rt5677-spi 0xa8c77592 rt5677_spi_read +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-rt5677-spi 0xc6695825 rt5677_spi_hotword_detected +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-rt5677-spi 0xf17750f8 rt5677_spi_write_firmware +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-rt5682 0x074d3f19 rt5682_apply_patch_list +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-rt5682 0x08414742 rt5682_headset_detect +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-rt5682 0x2082ea17 rt5682_aif2_dai_ops +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-rt5682 0x28730696 rt5682_supply_names +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-rt5682 0x3a7ec035 rt5682_reset +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-rt5682 0x5b131caa rt5682_parse_dt +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-rt5682 0x61529636 rt5682_readable_register +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-rt5682 0x787104a6 rt5682_sel_asrc_clk_src +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-rt5682 0x91079df2 rt5682_jack_detect_handler +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-rt5682 0xb7a511a3 rt5682_calibrate +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-rt5682 0xb897de56 rt5682_reg +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-rt5682 0xcbb55114 rt5682_aif1_dai_ops +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-rt5682 0xdbefdb52 rt5682_volatile_register +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-rt5682 0xe3439d43 rt5682_soc_component_dev +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-sigmadsp 0x0e42987f sigmadsp_reset +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-sigmadsp 0x11a7690c sigmadsp_restrict_params +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-sigmadsp 0x1c6cfcc0 devm_sigmadsp_init +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-sigmadsp 0x80cb41ed sigmadsp_attach +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-sigmadsp 0xe101ba40 sigmadsp_setup +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-sigmadsp-i2c 0xebc2507f devm_sigmadsp_init_i2c +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-sigmadsp-regmap 0x50ac6566 devm_sigmadsp_init_regmap +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-ssm2602 0xe1ab63b1 ssm2602_regmap_config +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-ssm2602 0xf17c146e ssm2602_probe +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-tlv320aic32x4 0x33be1e53 aic32x4_register_clocks +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-ts3a227e 0x378a9190 ts3a227e_enable_jack_detect +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-twl6040 0x205fd11b twl6040_get_hs_step_size +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-twl6040 0x2a3b5c44 twl6040_get_trim_value +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-twl6040 0x4686887a twl6040_hs_jack_detect +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-twl6040 0xc1bbcbad twl6040_get_dl1_gain +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-twl6040 0xd2a0e78e twl6040_get_clk_id +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-wm-adsp 0x0022f2a2 wm_adsp_compr_trigger +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-wm-adsp 0x0246db6c wm_adsp2_set_dspclk +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-wm-adsp 0x02e25a4a wm_adsp_compr_pointer +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-wm-adsp 0x0c5c2a90 wm_adsp_compr_set_params +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-wm-adsp 0x113ee4c7 wm_adsp_read_ctl +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-wm-adsp 0x1d026603 wm_adsp_compr_handle_irq +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-wm-adsp 0x1eccec21 wm_adsp2_preloader_get +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-wm-adsp 0x2557aea0 wm_adsp1_init +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-wm-adsp 0x2e81386f wm_adsp2_remove +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-wm-adsp 0x36d617ef wm_adsp2_component_probe +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-wm-adsp 0x3980fbbb wm_adsp_compr_get_caps +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-wm-adsp 0x40a443b7 wm_adsp_early_event +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-wm-adsp 0x460dbf06 wm_adsp_fw_put +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-wm-adsp 0x50126eab wm_adsp2_init +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-wm-adsp 0x52c16479 wm_halo_wdt_expire +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-wm-adsp 0x6afee48d wm_halo_init +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-wm-adsp 0x7288ec06 wm_adsp_write_ctl +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-wm-adsp 0x842907ea wm_adsp_compr_copy +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-wm-adsp 0x9e88cc3f wm_adsp_fw_enum +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-wm-adsp 0xa75a90d4 wm_adsp_fw_get +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-wm-adsp 0xaed0cb34 wm_adsp1_event +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-wm-adsp 0xb93e6dec wm_adsp2_component_remove +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-wm-adsp 0xdd3c79ef wm_adsp2_bus_error +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-wm-adsp 0xea38ee07 wm_halo_bus_error +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-wm-adsp 0xef6826b3 wm_adsp_compr_open +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-wm-adsp 0xeff6e5d2 wm_adsp_compr_free +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-wm-adsp 0xfdf213a8 wm_adsp_event +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-wm-adsp 0xff9bc3f3 wm_adsp2_preloader_put +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-wm-hubs 0x1b8f39c0 wm_hubs_update_class_w +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-wm-hubs 0x4c2001fe wm_hubs_hpr_mux +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-wm-hubs 0x54b5ec95 wm_hubs_set_bias_level +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-wm-hubs 0x5cd7eb9b wm_hubs_dcs_done +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-wm-hubs 0x757206d5 wm_hubs_spkmix_tlv +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-wm-hubs 0x75fc6215 wm_hubs_hpl_mux +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-wm-hubs 0x9dbd182c wm_hubs_vmid_ena +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-wm-hubs 0xa7226f4c wm_hubs_handle_analogue_pdata +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-wm-hubs 0xc4dfd822 wm_hubs_add_analogue_controls +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-wm-hubs 0xd1d6c952 wm_hubs_add_analogue_routes +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-wm8804 0x482cd136 wm8804_probe +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-wm8804 0x5f3b761d wm8804_regmap_config +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-wm8804 0x85048c61 wm8804_remove +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-wm8804 0xdeb65e7b wm8804_pm +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-wm8903 0x1f0ff16a wm8903_mic_detect +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-wm8962 0x4bc6e522 wm8962_mic_detect +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-wm8994 0x4bf4a6fe wm8958_mic_detect +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-wm8994 0xb676b595 wm8994_mic_detect +EXPORT_SYMBOL_GPL sound/soc/fsl/snd-soc-fsl-asrc 0x9cdf2b20 fsl_asrc_component +EXPORT_SYMBOL_GPL sound/soc/fsl/snd-soc-fsl-easrc 0xa595fc51 fsl_easrc_get_dma_channel +EXPORT_SYMBOL_GPL sound/soc/generic/snd-soc-simple-card-utils 0x126cad8e asoc_simple_parse_routing +EXPORT_SYMBOL_GPL sound/soc/generic/snd-soc-simple-card-utils 0x13c0d9ad asoc_simple_parse_card_name +EXPORT_SYMBOL_GPL sound/soc/generic/snd-soc-simple-card-utils 0x2b294814 asoc_simple_parse_pin_switches +EXPORT_SYMBOL_GPL sound/soc/generic/snd-soc-simple-card-utils 0x2f106d8c asoc_simple_parse_daifmt +EXPORT_SYMBOL_GPL sound/soc/generic/snd-soc-simple-card-utils 0x380ca2db asoc_simple_set_dailink_name +EXPORT_SYMBOL_GPL sound/soc/generic/snd-soc-simple-card-utils 0x52e848f0 asoc_simple_be_hw_params_fixup +EXPORT_SYMBOL_GPL sound/soc/generic/snd-soc-simple-card-utils 0x59363bd6 asoc_simple_init_priv +EXPORT_SYMBOL_GPL sound/soc/generic/snd-soc-simple-card-utils 0x6115c957 asoc_simple_canonicalize_platform +EXPORT_SYMBOL_GPL sound/soc/generic/snd-soc-simple-card-utils 0x6c84cab7 asoc_simple_parse_widgets +EXPORT_SYMBOL_GPL sound/soc/generic/snd-soc-simple-card-utils 0x83e8cdcb asoc_simple_clean_reference +EXPORT_SYMBOL_GPL sound/soc/generic/snd-soc-simple-card-utils 0x850ec90e asoc_simple_canonicalize_cpu +EXPORT_SYMBOL_GPL sound/soc/generic/snd-soc-simple-card-utils 0x92501191 asoc_simple_parse_convert +EXPORT_SYMBOL_GPL sound/soc/generic/snd-soc-simple-card-utils 0xa00cc369 asoc_simple_shutdown +EXPORT_SYMBOL_GPL sound/soc/generic/snd-soc-simple-card-utils 0xa2626f98 asoc_simple_init_jack +EXPORT_SYMBOL_GPL sound/soc/generic/snd-soc-simple-card-utils 0xcf459ee1 asoc_simple_hw_params +EXPORT_SYMBOL_GPL sound/soc/generic/snd-soc-simple-card-utils 0xd14909fb asoc_simple_parse_clk +EXPORT_SYMBOL_GPL sound/soc/generic/snd-soc-simple-card-utils 0xd3263cdd asoc_simple_startup +EXPORT_SYMBOL_GPL sound/soc/generic/snd-soc-simple-card-utils 0xe5523ef0 asoc_simple_dai_init +EXPORT_SYMBOL_GPL sound/soc/generic/snd-soc-simple-card-utils 0xf3bafb75 asoc_simple_convert_fixup +EXPORT_SYMBOL_GPL sound/soc/mediatek/common/snd-soc-mtk-common 0x145f728d mtk_afe_pcm_new +EXPORT_SYMBOL_GPL sound/soc/mediatek/common/snd-soc-mtk-common 0x14abe7d0 mtk_memif_set_disable +EXPORT_SYMBOL_GPL sound/soc/mediatek/common/snd-soc-mtk-common 0x1f12db7e mtk_afe_pcm_platform +EXPORT_SYMBOL_GPL sound/soc/mediatek/common/snd-soc-mtk-common 0x25401874 mtk_memif_set_rate +EXPORT_SYMBOL_GPL sound/soc/mediatek/common/snd-soc-mtk-common 0x323ce595 mtk_afe_fe_startup +EXPORT_SYMBOL_GPL sound/soc/mediatek/common/snd-soc-mtk-common 0x3a541b3d mtk_memif_set_format +EXPORT_SYMBOL_GPL sound/soc/mediatek/common/snd-soc-mtk-common 0x50135338 mtk_afe_fe_ops +EXPORT_SYMBOL_GPL sound/soc/mediatek/common/snd-soc-mtk-common 0x72457ab0 mtk_afe_combine_sub_dai +EXPORT_SYMBOL_GPL sound/soc/mediatek/common/snd-soc-mtk-common 0x73875ca4 mtk_memif_set_addr +EXPORT_SYMBOL_GPL sound/soc/mediatek/common/snd-soc-mtk-common 0x7a141fd9 mtk_dynamic_irq_release +EXPORT_SYMBOL_GPL sound/soc/mediatek/common/snd-soc-mtk-common 0x85c211fa mtk_afe_fe_trigger +EXPORT_SYMBOL_GPL sound/soc/mediatek/common/snd-soc-mtk-common 0x86c42edc mtk_afe_fe_hw_free +EXPORT_SYMBOL_GPL sound/soc/mediatek/common/snd-soc-mtk-common 0x8f19a0cd mtk_afe_pcm_pointer +EXPORT_SYMBOL_GPL sound/soc/mediatek/common/snd-soc-mtk-common 0x90aed4f0 mtk_memif_set_pbuf_size +EXPORT_SYMBOL_GPL sound/soc/mediatek/common/snd-soc-mtk-common 0x9168274d mtk_afe_add_sub_dai_control +EXPORT_SYMBOL_GPL sound/soc/mediatek/common/snd-soc-mtk-common 0x941d08f9 mtk_afe_suspend +EXPORT_SYMBOL_GPL sound/soc/mediatek/common/snd-soc-mtk-common 0x97531df2 mtk_memif_set_channel +EXPORT_SYMBOL_GPL sound/soc/mediatek/common/snd-soc-mtk-common 0xa3a5b872 mtk_afe_fe_hw_params +EXPORT_SYMBOL_GPL sound/soc/mediatek/common/snd-soc-mtk-common 0xb7080418 mtk_memif_set_enable +EXPORT_SYMBOL_GPL sound/soc/mediatek/common/snd-soc-mtk-common 0xcf0a739e mtk_afe_resume +EXPORT_SYMBOL_GPL sound/soc/mediatek/common/snd-soc-mtk-common 0xd354b90d mtk_afe_fe_shutdown +EXPORT_SYMBOL_GPL sound/soc/mediatek/common/snd-soc-mtk-common 0xde014420 mtk_dynamic_irq_acquire +EXPORT_SYMBOL_GPL sound/soc/mediatek/common/snd-soc-mtk-common 0xf5f6c2db mtk_memif_set_rate_substream +EXPORT_SYMBOL_GPL sound/soc/mediatek/common/snd-soc-mtk-common 0xf92eaf2e mtk_afe_fe_prepare +EXPORT_SYMBOL_GPL sound/soc/meson/snd-soc-meson-axg-fifo 0x185f17ca axg_fifo_pcm_pointer +EXPORT_SYMBOL_GPL sound/soc/meson/snd-soc-meson-axg-fifo 0x29fc6c05 axg_fifo_pcm_trigger +EXPORT_SYMBOL_GPL sound/soc/meson/snd-soc-meson-axg-fifo 0x3d42d7a3 axg_fifo_probe +EXPORT_SYMBOL_GPL sound/soc/meson/snd-soc-meson-axg-fifo 0x70992e10 axg_fifo_pcm_hw_free +EXPORT_SYMBOL_GPL sound/soc/meson/snd-soc-meson-axg-fifo 0x7f323b5a axg_fifo_pcm_new +EXPORT_SYMBOL_GPL sound/soc/meson/snd-soc-meson-axg-fifo 0x862f5f35 axg_fifo_pcm_open +EXPORT_SYMBOL_GPL sound/soc/meson/snd-soc-meson-axg-fifo 0x980e2953 axg_fifo_pcm_hw_params +EXPORT_SYMBOL_GPL sound/soc/meson/snd-soc-meson-axg-fifo 0x9b9c4071 axg_fifo_pcm_close +EXPORT_SYMBOL_GPL sound/soc/meson/snd-soc-meson-axg-fifo 0xcfa842c1 g12a_fifo_pcm_hw_params +EXPORT_SYMBOL_GPL sound/soc/meson/snd-soc-meson-axg-tdm-formatter 0x2db27767 axg_tdm_stream_stop +EXPORT_SYMBOL_GPL sound/soc/meson/snd-soc-meson-axg-tdm-formatter 0x63169364 axg_tdm_formatter_probe +EXPORT_SYMBOL_GPL sound/soc/meson/snd-soc-meson-axg-tdm-formatter 0x679cd72f axg_tdm_stream_free +EXPORT_SYMBOL_GPL sound/soc/meson/snd-soc-meson-axg-tdm-formatter 0x74cef4bf axg_tdm_formatter_event +EXPORT_SYMBOL_GPL sound/soc/meson/snd-soc-meson-axg-tdm-formatter 0x9734c838 axg_tdm_stream_start +EXPORT_SYMBOL_GPL sound/soc/meson/snd-soc-meson-axg-tdm-formatter 0xb711a93e axg_tdm_stream_alloc +EXPORT_SYMBOL_GPL sound/soc/meson/snd-soc-meson-axg-tdm-formatter 0xeaf1cae4 axg_tdm_formatter_set_channel_masks +EXPORT_SYMBOL_GPL sound/soc/meson/snd-soc-meson-axg-tdm-interface 0x0218b62b axg_tdm_set_tdm_slots +EXPORT_SYMBOL_GPL sound/soc/meson/snd-soc-meson-card-utils 0x015820f9 meson_card_reallocate_links +EXPORT_SYMBOL_GPL sound/soc/meson/snd-soc-meson-card-utils 0x0e72a373 meson_card_parse_daifmt +EXPORT_SYMBOL_GPL sound/soc/meson/snd-soc-meson-card-utils 0x530acb8e meson_card_set_be_link +EXPORT_SYMBOL_GPL sound/soc/meson/snd-soc-meson-card-utils 0x5b8ae223 meson_card_probe +EXPORT_SYMBOL_GPL sound/soc/meson/snd-soc-meson-card-utils 0x78de0d28 meson_card_i2s_set_sysclk +EXPORT_SYMBOL_GPL sound/soc/meson/snd-soc-meson-card-utils 0x98692967 meson_card_set_fe_link +EXPORT_SYMBOL_GPL sound/soc/meson/snd-soc-meson-card-utils 0x99c538cf meson_card_parse_dai +EXPORT_SYMBOL_GPL sound/soc/meson/snd-soc-meson-card-utils 0xb9fea068 meson_card_remove +EXPORT_SYMBOL_GPL sound/soc/meson/snd-soc-meson-codec-glue 0x3f0daa34 meson_codec_glue_input_get_data +EXPORT_SYMBOL_GPL sound/soc/meson/snd-soc-meson-codec-glue 0x458b51c6 meson_codec_glue_input_set_fmt +EXPORT_SYMBOL_GPL sound/soc/meson/snd-soc-meson-codec-glue 0x47e25c50 meson_codec_glue_input_hw_params +EXPORT_SYMBOL_GPL sound/soc/meson/snd-soc-meson-codec-glue 0x5206ed88 meson_codec_glue_output_startup +EXPORT_SYMBOL_GPL sound/soc/meson/snd-soc-meson-codec-glue 0xb95c14c8 meson_codec_glue_input_dai_probe +EXPORT_SYMBOL_GPL sound/soc/meson/snd-soc-meson-codec-glue 0xd54ecb1c meson_codec_glue_input_dai_remove +EXPORT_SYMBOL_GPL sound/soc/qcom/qdsp6/q6adm 0x28421460 q6adm_get_copp_id +EXPORT_SYMBOL_GPL sound/soc/qcom/qdsp6/q6adm 0x31888be3 q6adm_open +EXPORT_SYMBOL_GPL sound/soc/qcom/qdsp6/q6adm 0x5262ce99 q6adm_close +EXPORT_SYMBOL_GPL sound/soc/qcom/qdsp6/q6adm 0xf11e0361 q6adm_matrix_map +EXPORT_SYMBOL_GPL sound/soc/qcom/qdsp6/q6afe 0x369b6eeb q6afe_port_put +EXPORT_SYMBOL_GPL sound/soc/qcom/qdsp6/q6afe 0x3997e13a q6afe_is_rx_port +EXPORT_SYMBOL_GPL sound/soc/qcom/qdsp6/q6afe 0x3b16d6e7 q6afe_port_stop +EXPORT_SYMBOL_GPL sound/soc/qcom/qdsp6/q6afe 0x498d993b q6afe_get_port_id +EXPORT_SYMBOL_GPL sound/soc/qcom/qdsp6/q6afe 0x5332304f q6afe_slim_port_prepare +EXPORT_SYMBOL_GPL sound/soc/qcom/qdsp6/q6afe 0x7df60063 q6afe_port_set_sysclk +EXPORT_SYMBOL_GPL sound/soc/qcom/qdsp6/q6afe 0xae809786 q6afe_hdmi_port_prepare +EXPORT_SYMBOL_GPL sound/soc/qcom/qdsp6/q6afe 0xbe87a4be q6afe_port_get_from_id +EXPORT_SYMBOL_GPL sound/soc/qcom/qdsp6/q6afe 0xd4523c59 q6afe_i2s_port_prepare +EXPORT_SYMBOL_GPL sound/soc/qcom/qdsp6/q6afe 0xe45246a8 q6afe_port_start +EXPORT_SYMBOL_GPL sound/soc/qcom/qdsp6/q6afe 0xfaf22370 q6afe_tdm_port_prepare +EXPORT_SYMBOL_GPL sound/soc/qcom/qdsp6/q6asm 0x01d71b3d q6asm_stream_media_format_block_wma_v9 +EXPORT_SYMBOL_GPL sound/soc/qcom/qdsp6/q6asm 0x151ae9d4 q6asm_cmd +EXPORT_SYMBOL_GPL sound/soc/qcom/qdsp6/q6asm 0x1bad7526 q6asm_audio_client_alloc +EXPORT_SYMBOL_GPL sound/soc/qcom/qdsp6/q6asm 0x40299233 q6asm_run +EXPORT_SYMBOL_GPL sound/soc/qcom/qdsp6/q6asm 0x5382edf1 q6asm_open_read +EXPORT_SYMBOL_GPL sound/soc/qcom/qdsp6/q6asm 0x56418ca6 q6asm_map_memory_regions +EXPORT_SYMBOL_GPL sound/soc/qcom/qdsp6/q6asm 0x689e402d q6asm_stream_media_format_block_alac +EXPORT_SYMBOL_GPL sound/soc/qcom/qdsp6/q6asm 0x68db31e2 q6asm_unmap_memory_regions +EXPORT_SYMBOL_GPL sound/soc/qcom/qdsp6/q6asm 0x6eb89e95 q6asm_media_format_block_multi_ch_pcm +EXPORT_SYMBOL_GPL sound/soc/qcom/qdsp6/q6asm 0x720ce413 q6asm_stream_media_format_block_flac +EXPORT_SYMBOL_GPL sound/soc/qcom/qdsp6/q6asm 0x7353d9dd q6asm_cmd_nowait +EXPORT_SYMBOL_GPL sound/soc/qcom/qdsp6/q6asm 0x857330c9 q6asm_write_async +EXPORT_SYMBOL_GPL sound/soc/qcom/qdsp6/q6asm 0xa06e9828 q6asm_stream_media_format_block_ape +EXPORT_SYMBOL_GPL sound/soc/qcom/qdsp6/q6asm 0xc5a116a4 q6asm_get_session_id +EXPORT_SYMBOL_GPL sound/soc/qcom/qdsp6/q6asm 0xcc4952e4 q6asm_audio_client_free +EXPORT_SYMBOL_GPL sound/soc/qcom/qdsp6/q6asm 0xd599e50f q6asm_enc_cfg_blk_pcm_format_support +EXPORT_SYMBOL_GPL sound/soc/qcom/qdsp6/q6asm 0xdbedfcd9 q6asm_run_nowait +EXPORT_SYMBOL_GPL sound/soc/qcom/qdsp6/q6asm 0xe060c0a1 q6asm_read +EXPORT_SYMBOL_GPL sound/soc/qcom/qdsp6/q6asm 0xe1531577 q6asm_open_write +EXPORT_SYMBOL_GPL sound/soc/qcom/qdsp6/q6asm 0xf40aaabe q6asm_stream_media_format_block_wma_v10 +EXPORT_SYMBOL_GPL sound/soc/qcom/qdsp6/q6core 0x7e52e977 q6core_is_adsp_ready +EXPORT_SYMBOL_GPL sound/soc/qcom/qdsp6/q6core 0x9b02ea0d q6core_get_svc_api_info +EXPORT_SYMBOL_GPL sound/soc/qcom/qdsp6/q6dsp-common 0x17142e58 q6dsp_map_channels +EXPORT_SYMBOL_GPL sound/soc/qcom/qdsp6/q6routing 0x5b75f756 q6routing_stream_open +EXPORT_SYMBOL_GPL sound/soc/qcom/qdsp6/q6routing 0xa7a64259 q6routing_stream_close +EXPORT_SYMBOL_GPL sound/soc/qcom/snd-soc-lpass-cpu 0x14c99ca9 asoc_qcom_lpass_cpu_platform_probe +EXPORT_SYMBOL_GPL sound/soc/qcom/snd-soc-lpass-cpu 0x566b3290 asoc_qcom_lpass_cpu_dai_probe +EXPORT_SYMBOL_GPL sound/soc/qcom/snd-soc-lpass-cpu 0x967d8f96 asoc_qcom_lpass_cpu_dai_ops +EXPORT_SYMBOL_GPL sound/soc/qcom/snd-soc-lpass-cpu 0xb4dc8928 asoc_qcom_lpass_cpu_platform_remove +EXPORT_SYMBOL_GPL sound/soc/qcom/snd-soc-lpass-platform 0x44eca761 asoc_qcom_lpass_platform_register +EXPORT_SYMBOL_GPL sound/soc/rockchip/snd-soc-rockchip-pcm 0x4330bf72 rockchip_pcm_platform_register +EXPORT_SYMBOL_GPL sound/soc/samsung/snd-soc-idma 0x0340de96 idma_reg_addr_init +EXPORT_SYMBOL_GPL sound/soc/samsung/snd-soc-s3c-dma 0x38a03521 samsung_asoc_dma_platform_register +EXPORT_SYMBOL_GPL sound/soc/sof/snd-sof 0x19a5a0b1 snd_sof_debugfs_buf_item +EXPORT_SYMBOL_GPL sound/soc/sof/snd-sof 0xcd20d457 snd_sof_debugfs_io_item +EXPORT_SYMBOL_GPL sound/soc/sof/snd-sof 0xdc4970a2 snd_sof_dbg_init +EXPORT_SYMBOL_GPL sound/soc/sof/snd-sof 0xe7d84d0d snd_sof_free_debug +EXPORT_SYMBOL_GPL sound/soc/tegra/snd-soc-tegra-pcm 0x2d48c7d5 tegra_pcm_platform_register +EXPORT_SYMBOL_GPL sound/soc/tegra/snd-soc-tegra-pcm 0x6ebc9eae tegra_pcm_platform_unregister +EXPORT_SYMBOL_GPL sound/soc/tegra/snd-soc-tegra-pcm 0xb07b65ed tegra_pcm_platform_register_with_chan_names +EXPORT_SYMBOL_GPL sound/soc/tegra/snd-soc-tegra-utils 0x085b113b tegra_asoc_utils_set_rate +EXPORT_SYMBOL_GPL sound/soc/tegra/snd-soc-tegra-utils 0x0c787c22 tegra_asoc_utils_init +EXPORT_SYMBOL_GPL sound/soc/tegra/snd-soc-tegra-utils 0xaeeaa383 tegra_asoc_utils_set_ac97_rate +EXPORT_SYMBOL_GPL sound/soc/tegra/snd-soc-tegra20-das 0x0d54c9b9 tegra20_das_connect_dap_to_dac +EXPORT_SYMBOL_GPL sound/soc/tegra/snd-soc-tegra20-das 0xb52cfca4 tegra20_das_connect_dac_to_dap +EXPORT_SYMBOL_GPL sound/soc/tegra/snd-soc-tegra20-das 0xbced7431 tegra20_das_connect_dap_to_dap +EXPORT_SYMBOL_GPL sound/soc/tegra/snd-soc-tegra30-ahub 0x386bbc30 tegra30_ahub_allocate_tx_fifo +EXPORT_SYMBOL_GPL sound/soc/tegra/snd-soc-tegra30-ahub 0x55a40206 tegra30_ahub_disable_rx_fifo +EXPORT_SYMBOL_GPL sound/soc/tegra/snd-soc-tegra30-ahub 0x5d7237ff tegra30_ahub_set_cif +EXPORT_SYMBOL_GPL sound/soc/tegra/snd-soc-tegra30-ahub 0x6060e6f9 tegra30_ahub_allocate_rx_fifo +EXPORT_SYMBOL_GPL sound/soc/tegra/snd-soc-tegra30-ahub 0x6fe20143 tegra30_ahub_set_rx_cif_source +EXPORT_SYMBOL_GPL sound/soc/tegra/snd-soc-tegra30-ahub 0xb419329b tegra30_ahub_disable_tx_fifo +EXPORT_SYMBOL_GPL sound/soc/tegra/snd-soc-tegra30-ahub 0xb4a9367d tegra30_ahub_enable_tx_fifo +EXPORT_SYMBOL_GPL sound/soc/tegra/snd-soc-tegra30-ahub 0xb81bca9d tegra30_ahub_free_rx_fifo +EXPORT_SYMBOL_GPL sound/soc/tegra/snd-soc-tegra30-ahub 0xc78c7125 tegra30_ahub_free_tx_fifo +EXPORT_SYMBOL_GPL sound/soc/tegra/snd-soc-tegra30-ahub 0xccb67e55 tegra124_ahub_set_cif +EXPORT_SYMBOL_GPL sound/soc/tegra/snd-soc-tegra30-ahub 0xccc98372 tegra30_ahub_enable_rx_fifo +EXPORT_SYMBOL_GPL sound/soc/tegra/snd-soc-tegra30-ahub 0xe549513a tegra30_ahub_unset_rx_cif_source +EXPORT_SYMBOL_GPL sound/soc/ti/snd-soc-omap-mcbsp 0x05c49464 omap_mcbsp_st_add_controls +EXPORT_SYMBOL_GPL sound/soc/ti/snd-soc-omap-mcpdm 0x77ea0a29 omap_mcpdm_configure_dn_offsets +EXPORT_SYMBOL_GPL sound/soc/ti/snd-soc-ti-edma 0x4a74ca16 edma_pcm_platform_register +EXPORT_SYMBOL_GPL sound/soc/ti/snd-soc-ti-sdma 0x72d45561 sdma_pcm_platform_register +EXPORT_SYMBOL_GPL sound/soc/ti/snd-soc-ti-udma 0x5d631e6d udma_pcm_platform_register +EXPORT_SYMBOL_GPL sound/soc/uniphier/snd-soc-uniphier-aio-cpu 0x2046ffdc uniphier_aio_dai_remove +EXPORT_SYMBOL_GPL sound/soc/uniphier/snd-soc-uniphier-aio-cpu 0x52dd3dfa uniphier_aio_spdif_ops +EXPORT_SYMBOL_GPL sound/soc/uniphier/snd-soc-uniphier-aio-cpu 0x5be7ed90 uniphier_aio_remove +EXPORT_SYMBOL_GPL sound/soc/uniphier/snd-soc-uniphier-aio-cpu 0xa7b8b4e9 uniphier_aio_i2s_ops +EXPORT_SYMBOL_GPL sound/soc/uniphier/snd-soc-uniphier-aio-cpu 0xbeac839f uniphier_aio_dai_probe +EXPORT_SYMBOL_GPL sound/soc/uniphier/snd-soc-uniphier-aio-cpu 0xcee9775d uniphier_aiodma_soc_register_platform +EXPORT_SYMBOL_GPL sound/soc/uniphier/snd-soc-uniphier-aio-cpu 0xfabd0eea uniphier_aio_probe +EXPORT_SYMBOL_GPL sound/usb/line6/snd-usb-line6 0x044712a9 line6_init_pcm +EXPORT_SYMBOL_GPL sound/usb/line6/snd-usb-line6 0x0c132ca8 line6_read_data +EXPORT_SYMBOL_GPL sound/usb/line6/snd-usb-line6 0x0c5a21e3 line6_alloc_sysex_buffer +EXPORT_SYMBOL_GPL sound/usb/line6/snd-usb-line6 0x17f06916 line6_version_request_async +EXPORT_SYMBOL_GPL sound/usb/line6/snd-usb-line6 0x1edb5af2 line6_read_serial_number +EXPORT_SYMBOL_GPL sound/usb/line6/snd-usb-line6 0x202a1b1b line6_midi_id +EXPORT_SYMBOL_GPL sound/usb/line6/snd-usb-line6 0x20f239b9 line6_write_data +EXPORT_SYMBOL_GPL sound/usb/line6/snd-usb-line6 0x21d0d831 line6_disconnect +EXPORT_SYMBOL_GPL sound/usb/line6/snd-usb-line6 0x22a285ba line6_pcm_release +EXPORT_SYMBOL_GPL sound/usb/line6/snd-usb-line6 0x22f3a4b0 line6_send_sysex_message +EXPORT_SYMBOL_GPL sound/usb/line6/snd-usb-line6 0x2917c04c line6_pcm_acquire +EXPORT_SYMBOL_GPL sound/usb/line6/snd-usb-line6 0x51b81963 line6_resume +EXPORT_SYMBOL_GPL sound/usb/line6/snd-usb-line6 0x556f819c line6_suspend +EXPORT_SYMBOL_GPL sound/usb/line6/snd-usb-line6 0x6d28c0bb line6_send_raw_message_async +EXPORT_SYMBOL_GPL sound/usb/line6/snd-usb-line6 0x811123fc line6_probe +EXPORT_SYMBOL_GPL sound/usb/line6/snd-usb-line6 0x936623f7 line6_init_midi +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 0x000221ac fscrypt_file_open +EXPORT_SYMBOL_GPL vmlinux 0x0004c198 pm_generic_resume_noirq +EXPORT_SYMBOL_GPL vmlinux 0x000fb61b udp_init_sock +EXPORT_SYMBOL_GPL vmlinux 0x001368c8 netlink_has_listeners +EXPORT_SYMBOL_GPL vmlinux 0x0018ff0f devm_release_action +EXPORT_SYMBOL_GPL vmlinux 0x001cc4da devlink_dpipe_entry_ctx_close +EXPORT_SYMBOL_GPL vmlinux 0x00264a54 pci_epc_start +EXPORT_SYMBOL_GPL vmlinux 0x002a9c8e blk_mq_pci_map_queues +EXPORT_SYMBOL_GPL vmlinux 0x003e9604 cs47l24_spi_regmap +EXPORT_SYMBOL_GPL vmlinux 0x004c7e16 sysfs_merge_group +EXPORT_SYMBOL_GPL vmlinux 0x00513f58 get_timespec64 +EXPORT_SYMBOL_GPL vmlinux 0x00521834 register_kretprobes +EXPORT_SYMBOL_GPL vmlinux 0x0061e501 ata_wait_register +EXPORT_SYMBOL_GPL vmlinux 0x00632780 work_busy +EXPORT_SYMBOL_GPL vmlinux 0x0064eaf4 genphy_c45_an_disable_aneg +EXPORT_SYMBOL_GPL vmlinux 0x0092d40e devlink_port_param_value_changed +EXPORT_SYMBOL_GPL vmlinux 0x00994aca mmc_switch +EXPORT_SYMBOL_GPL vmlinux 0x009b998c fuse_conn_get +EXPORT_SYMBOL_GPL vmlinux 0x00bb6e6e sock_prot_inuse_add +EXPORT_SYMBOL_GPL vmlinux 0x00c9acde cpu_device_create +EXPORT_SYMBOL_GPL vmlinux 0x00dec14a pm_genpd_remove_device +EXPORT_SYMBOL_GPL vmlinux 0x00f5abf3 tpm_chip_unregister +EXPORT_SYMBOL_GPL vmlinux 0x01060078 iomap_finish_ioends +EXPORT_SYMBOL_GPL vmlinux 0x0111e15d snd_soc_component_nc_pin +EXPORT_SYMBOL_GPL vmlinux 0x0116f69f scsi_flush_work +EXPORT_SYMBOL_GPL vmlinux 0x0119b375 ata_scsi_dma_need_drain +EXPORT_SYMBOL_GPL vmlinux 0x011cf34d lp8788_write_byte +EXPORT_SYMBOL_GPL vmlinux 0x01206e26 crypto_alloc_acomp +EXPORT_SYMBOL_GPL vmlinux 0x01222a9a of_phandle_iterator_init +EXPORT_SYMBOL_GPL vmlinux 0x01284dec sdhci_get_property +EXPORT_SYMBOL_GPL vmlinux 0x014758d0 phy_create_lookup +EXPORT_SYMBOL_GPL vmlinux 0x014b44ee tpm_pm_resume +EXPORT_SYMBOL_GPL vmlinux 0x0150f7d2 pm_runtime_force_resume +EXPORT_SYMBOL_GPL vmlinux 0x015144a6 mbox_send_message +EXPORT_SYMBOL_GPL vmlinux 0x015b2c8f sdio_memcpy_fromio +EXPORT_SYMBOL_GPL vmlinux 0x0162aa31 ipv6_find_tlv +EXPORT_SYMBOL_GPL vmlinux 0x016615ee of_prop_next_string +EXPORT_SYMBOL_GPL vmlinux 0x016f2ef0 devm_usb_put_phy +EXPORT_SYMBOL_GPL vmlinux 0x0170cb6c efivar_work +EXPORT_SYMBOL_GPL vmlinux 0x0183f196 wm8997_aod +EXPORT_SYMBOL_GPL vmlinux 0x01866a57 ezx_pcap_set_bits +EXPORT_SYMBOL_GPL vmlinux 0x018f62b4 mmc_regulator_get_supply +EXPORT_SYMBOL_GPL vmlinux 0x01b1957e pin_user_pages_fast_only +EXPORT_SYMBOL_GPL vmlinux 0x01c2ab81 serdev_device_open +EXPORT_SYMBOL_GPL vmlinux 0x01c6cb0c cpu_cluster_pm_enter +EXPORT_SYMBOL_GPL vmlinux 0x01d419ea __irq_domain_add +EXPORT_SYMBOL_GPL vmlinux 0x01d747f5 percpu_ref_exit +EXPORT_SYMBOL_GPL vmlinux 0x01e01b7a governor_sysfs_ops +EXPORT_SYMBOL_GPL vmlinux 0x01e1a8de kgdb_breakpoint +EXPORT_SYMBOL_GPL vmlinux 0x01fead94 __pci_reset_function_locked +EXPORT_SYMBOL_GPL vmlinux 0x02085209 of_devfreq_cooling_register +EXPORT_SYMBOL_GPL vmlinux 0x02100d8c perf_event_refresh +EXPORT_SYMBOL_GPL vmlinux 0x02257c1a tps6586x_reads +EXPORT_SYMBOL_GPL vmlinux 0x022d8e33 iommu_dev_enable_feature +EXPORT_SYMBOL_GPL vmlinux 0x0230935d bpf_prog_alloc +EXPORT_SYMBOL_GPL vmlinux 0x02394899 play_idle_precise +EXPORT_SYMBOL_GPL vmlinux 0x024a7e59 sched_trace_cfs_rq_path +EXPORT_SYMBOL_GPL vmlinux 0x024f7710 iomap_seek_data +EXPORT_SYMBOL_GPL vmlinux 0x02567d5e bpf_prog_free +EXPORT_SYMBOL_GPL vmlinux 0x025f5098 pci_create_root_bus +EXPORT_SYMBOL_GPL vmlinux 0x026d2711 vfs_removexattr +EXPORT_SYMBOL_GPL vmlinux 0x026f3380 btree_lookup +EXPORT_SYMBOL_GPL vmlinux 0x027b7e62 mtd_ooblayout_set_eccbytes +EXPORT_SYMBOL_GPL vmlinux 0x02800f58 serial8250_rx_chars +EXPORT_SYMBOL_GPL vmlinux 0x02862186 bpf_prog_inc +EXPORT_SYMBOL_GPL vmlinux 0x02862880 devm_clk_unregister +EXPORT_SYMBOL_GPL vmlinux 0x02b24cd3 __tracepoint_cpu_idle +EXPORT_SYMBOL_GPL vmlinux 0x02be0548 ata_bmdma_status +EXPORT_SYMBOL_GPL vmlinux 0x02e685a7 gpiod_set_array_value_cansleep +EXPORT_SYMBOL_GPL vmlinux 0x02ea61a6 dax_flush +EXPORT_SYMBOL_GPL vmlinux 0x0307c271 iomap_dio_iopoll +EXPORT_SYMBOL_GPL vmlinux 0x0312b3b0 reset_controller_add_lookup +EXPORT_SYMBOL_GPL vmlinux 0x03201e28 crypto_stats_ahash_update +EXPORT_SYMBOL_GPL vmlinux 0x0321cdbf of_alias_get_highest_id +EXPORT_SYMBOL_GPL vmlinux 0x03315f0c btree_destroy +EXPORT_SYMBOL_GPL vmlinux 0x03372453 force_irqthreads +EXPORT_SYMBOL_GPL vmlinux 0x033832c7 usb_amd_hang_symptom_quirk +EXPORT_SYMBOL_GPL vmlinux 0x0342d6e6 udp_cmsg_send +EXPORT_SYMBOL_GPL vmlinux 0x0343bdf1 __i2c_board_list +EXPORT_SYMBOL_GPL vmlinux 0x034e5305 fat_detach +EXPORT_SYMBOL_GPL vmlinux 0x035345a7 gpiod_set_consumer_name +EXPORT_SYMBOL_GPL vmlinux 0x0358f6f2 ata_link_online +EXPORT_SYMBOL_GPL vmlinux 0x036d8e9b klist_add_tail +EXPORT_SYMBOL_GPL vmlinux 0x0376a0ac strp_done +EXPORT_SYMBOL_GPL vmlinux 0x03819344 bpf_offload_dev_create +EXPORT_SYMBOL_GPL vmlinux 0x03907f28 firmware_request_nowarn +EXPORT_SYMBOL_GPL vmlinux 0x03952887 ktime_add_safe +EXPORT_SYMBOL_GPL vmlinux 0x039d8bd6 sock_zerocopy_put +EXPORT_SYMBOL_GPL vmlinux 0x03d13511 crypto_register_shash +EXPORT_SYMBOL_GPL vmlinux 0x03d48dac pinctrl_add_gpio_range +EXPORT_SYMBOL_GPL vmlinux 0x03df762d nand_wait_ready +EXPORT_SYMBOL_GPL vmlinux 0x03e15a46 account_locked_vm +EXPORT_SYMBOL_GPL vmlinux 0x03f46381 tpm_tis_remove +EXPORT_SYMBOL_GPL vmlinux 0x03f9c59e sdhci_set_power_and_bus_voltage +EXPORT_SYMBOL_GPL vmlinux 0x040539cb __phy_modify_mmd +EXPORT_SYMBOL_GPL vmlinux 0x04172241 debugfs_create_u32 +EXPORT_SYMBOL_GPL vmlinux 0x041f2fdd regulator_set_bypass_regmap +EXPORT_SYMBOL_GPL vmlinux 0x042113e9 max8997_write_reg +EXPORT_SYMBOL_GPL vmlinux 0x0422cb66 led_compose_name +EXPORT_SYMBOL_GPL vmlinux 0x04251e15 sock_diag_register +EXPORT_SYMBOL_GPL vmlinux 0x04542ed6 device_attach +EXPORT_SYMBOL_GPL vmlinux 0x045b115b perf_event_create_kernel_counter +EXPORT_SYMBOL_GPL vmlinux 0x0465a073 regmap_reg_in_ranges +EXPORT_SYMBOL_GPL vmlinux 0x046d8804 blk_req_needs_zone_write_lock +EXPORT_SYMBOL_GPL vmlinux 0x046f359e of_overlay_notifier_register +EXPORT_SYMBOL_GPL vmlinux 0x04775497 skcipher_register_instance +EXPORT_SYMBOL_GPL vmlinux 0x0489af9f phy_select_page +EXPORT_SYMBOL_GPL vmlinux 0x048b5f8d twl4030_audio_get_mclk +EXPORT_SYMBOL_GPL vmlinux 0x04909e13 securityfs_remove +EXPORT_SYMBOL_GPL vmlinux 0x04911d5f xfrm_output +EXPORT_SYMBOL_GPL vmlinux 0x049a33e7 tracing_cond_snapshot_data +EXPORT_SYMBOL_GPL vmlinux 0x049da79a of_genpd_del_provider +EXPORT_SYMBOL_GPL vmlinux 0x04a162fc usb_for_each_dev +EXPORT_SYMBOL_GPL vmlinux 0x04adb178 get_mtd_device +EXPORT_SYMBOL_GPL vmlinux 0x04ae4635 trace_handle_return +EXPORT_SYMBOL_GPL vmlinux 0x04c4f603 mpi_get_buffer +EXPORT_SYMBOL_GPL vmlinux 0x04dcce4e remove_resource +EXPORT_SYMBOL_GPL vmlinux 0x04e1b99f snd_pcm_std_chmaps +EXPORT_SYMBOL_GPL vmlinux 0x04e95684 crypto_enqueue_request +EXPORT_SYMBOL_GPL vmlinux 0x04fb6430 of_property_read_u64 +EXPORT_SYMBOL_GPL vmlinux 0x05003025 extcon_get_extcon_dev +EXPORT_SYMBOL_GPL vmlinux 0x050e60f1 class_create_file_ns +EXPORT_SYMBOL_GPL vmlinux 0x0515908b of_clk_parent_fill +EXPORT_SYMBOL_GPL vmlinux 0x0515b3b6 kill_mtd_super +EXPORT_SYMBOL_GPL vmlinux 0x0520eb57 cgrp_dfl_root +EXPORT_SYMBOL_GPL vmlinux 0x052c9aed ktime_get_real_fast_ns +EXPORT_SYMBOL_GPL vmlinux 0x0531e22d get_task_pid +EXPORT_SYMBOL_GPL vmlinux 0x05355bf0 pci_host_common_remove +EXPORT_SYMBOL_GPL vmlinux 0x054e550b kernel_halt +EXPORT_SYMBOL_GPL vmlinux 0x054f67d8 get_pid_task +EXPORT_SYMBOL_GPL vmlinux 0x05610897 of_changeset_destroy +EXPORT_SYMBOL_GPL vmlinux 0x0570910a devm_of_phy_get_by_index +EXPORT_SYMBOL_GPL vmlinux 0x058b582a vt_get_leds +EXPORT_SYMBOL_GPL vmlinux 0x05be9823 bio_disassociate_blkg +EXPORT_SYMBOL_GPL vmlinux 0x05d6a011 fib6_new_table +EXPORT_SYMBOL_GPL vmlinux 0x05deab2a dma_buf_fd +EXPORT_SYMBOL_GPL vmlinux 0x05eeae26 bsg_job_done +EXPORT_SYMBOL_GPL vmlinux 0x05ffcb46 handle_mm_fault +EXPORT_SYMBOL_GPL vmlinux 0x06095f40 dev_attr_ncq_prio_enable +EXPORT_SYMBOL_GPL vmlinux 0x06122337 atomic_notifier_chain_unregister +EXPORT_SYMBOL_GPL vmlinux 0x06144876 blk_mq_freeze_queue_wait_timeout +EXPORT_SYMBOL_GPL vmlinux 0x06172964 extcon_set_state_sync +EXPORT_SYMBOL_GPL vmlinux 0x06184eec devfreq_event_get_edev_count +EXPORT_SYMBOL_GPL vmlinux 0x06209f49 phy_lookup_setting +EXPORT_SYMBOL_GPL vmlinux 0x06242fcc devfreq_event_remove_edev +EXPORT_SYMBOL_GPL vmlinux 0x0626da5f od_unregister_powersave_bias_handler +EXPORT_SYMBOL_GPL vmlinux 0x06323008 __rtnl_link_register +EXPORT_SYMBOL_GPL vmlinux 0x06350a8c __fscrypt_prepare_symlink +EXPORT_SYMBOL_GPL vmlinux 0x063bf7ee efivar_entry_iter +EXPORT_SYMBOL_GPL vmlinux 0x0644f8e2 fsverity_cleanup_inode +EXPORT_SYMBOL_GPL vmlinux 0x064db9a5 mark_mounts_for_expiry +EXPORT_SYMBOL_GPL vmlinux 0x06568b21 nf_nat_hook +EXPORT_SYMBOL_GPL vmlinux 0x066e91bd dma_need_sync +EXPORT_SYMBOL_GPL vmlinux 0x067c2a83 anon_inode_getfile +EXPORT_SYMBOL_GPL vmlinux 0x0683f4eb regulator_set_drvdata +EXPORT_SYMBOL_GPL vmlinux 0x068c7eb7 vga_default_device +EXPORT_SYMBOL_GPL vmlinux 0x06a0b9fe tcp_sendpage_locked +EXPORT_SYMBOL_GPL vmlinux 0x06a2a628 spi_controller_dma_unmap_mem_op_data +EXPORT_SYMBOL_GPL vmlinux 0x06a338e2 devm_ioremap_uc +EXPORT_SYMBOL_GPL vmlinux 0x06a8fbe0 pci_reset_function_locked +EXPORT_SYMBOL_GPL vmlinux 0x06b09f5d snd_soc_component_set_jack +EXPORT_SYMBOL_GPL vmlinux 0x06b53bd2 memalloc_socks_key +EXPORT_SYMBOL_GPL vmlinux 0x06c13051 __clk_hw_register_fixed_rate +EXPORT_SYMBOL_GPL vmlinux 0x06c41810 pci_epc_mem_free_addr +EXPORT_SYMBOL_GPL vmlinux 0x06c421e5 regulator_list_voltage_table +EXPORT_SYMBOL_GPL vmlinux 0x06c484a7 snd_soc_lookup_component +EXPORT_SYMBOL_GPL vmlinux 0x06cae89a cpufreq_generic_attr +EXPORT_SYMBOL_GPL vmlinux 0x06cca30b ring_buffer_record_off +EXPORT_SYMBOL_GPL vmlinux 0x06e88816 subsys_find_device_by_id +EXPORT_SYMBOL_GPL vmlinux 0x06e92aea nl_table_lock +EXPORT_SYMBOL_GPL vmlinux 0x06f2c7da phy_reset +EXPORT_SYMBOL_GPL vmlinux 0x06fbc5ca __irq_alloc_domain_generic_chips +EXPORT_SYMBOL_GPL vmlinux 0x06ff6e29 kobject_uevent_env +EXPORT_SYMBOL_GPL vmlinux 0x0704d71e pci_epc_mem_exit +EXPORT_SYMBOL_GPL vmlinux 0x07147af8 snd_soc_link_compr_shutdown +EXPORT_SYMBOL_GPL vmlinux 0x0718280b dev_attr_link_power_management_policy +EXPORT_SYMBOL_GPL vmlinux 0x071f06e9 regmap_add_irq_chip_np +EXPORT_SYMBOL_GPL vmlinux 0x07242d92 put_dax +EXPORT_SYMBOL_GPL vmlinux 0x072cfee7 __raw_v6_lookup +EXPORT_SYMBOL_GPL vmlinux 0x073b68b5 verify_signature +EXPORT_SYMBOL_GPL vmlinux 0x0756db79 crypto_shash_digest +EXPORT_SYMBOL_GPL vmlinux 0x076356e7 sfp_may_have_phy +EXPORT_SYMBOL_GPL vmlinux 0x07646cee ata_tf_to_fis +EXPORT_SYMBOL_GPL vmlinux 0x0771a7a1 blk_queue_set_zoned +EXPORT_SYMBOL_GPL vmlinux 0x07734c00 snd_soc_put_xr_sx +EXPORT_SYMBOL_GPL vmlinux 0x0775d9db iomap_page_mkwrite +EXPORT_SYMBOL_GPL vmlinux 0x0782e90e tpm_calc_ordinal_duration +EXPORT_SYMBOL_GPL vmlinux 0x078a1f16 regmap_multi_reg_write +EXPORT_SYMBOL_GPL vmlinux 0x07942325 ata_dev_next +EXPORT_SYMBOL_GPL vmlinux 0x07a4b851 ip_tunnel_get_stats64 +EXPORT_SYMBOL_GPL vmlinux 0x07b13cb2 dm_start_time_ns_from_clone +EXPORT_SYMBOL_GPL vmlinux 0x07b21f85 kdb_get_kbd_char +EXPORT_SYMBOL_GPL vmlinux 0x07b2a8c0 ahci_platform_get_resources +EXPORT_SYMBOL_GPL vmlinux 0x07b52e38 rtnl_unregister +EXPORT_SYMBOL_GPL vmlinux 0x07bcc488 snd_soc_of_parse_tdm_slot +EXPORT_SYMBOL_GPL vmlinux 0x07be6905 net_inc_egress_queue +EXPORT_SYMBOL_GPL vmlinux 0x07bf29cd get_cached_msi_msg +EXPORT_SYMBOL_GPL vmlinux 0x07ed6028 powercap_unregister_zone +EXPORT_SYMBOL_GPL vmlinux 0x07f27097 sock_diag_unregister_inet_compat +EXPORT_SYMBOL_GPL vmlinux 0x07f8cd6e __rio_local_read_config_16 +EXPORT_SYMBOL_GPL vmlinux 0x07fa055e scmi_protocol_unregister +EXPORT_SYMBOL_GPL vmlinux 0x07fceed9 usb_free_streams +EXPORT_SYMBOL_GPL vmlinux 0x080179f4 strp_process +EXPORT_SYMBOL_GPL vmlinux 0x08023fb7 clk_hw_register +EXPORT_SYMBOL_GPL vmlinux 0x08135613 dax_write_cache +EXPORT_SYMBOL_GPL vmlinux 0x081bcb16 irq_domain_free_irqs_parent +EXPORT_SYMBOL_GPL vmlinux 0x0828d609 mc146818_get_time +EXPORT_SYMBOL_GPL vmlinux 0x082b4d5f put_mtd_device +EXPORT_SYMBOL_GPL vmlinux 0x08360835 mtd_lock +EXPORT_SYMBOL_GPL vmlinux 0x08370227 devm_kmalloc +EXPORT_SYMBOL_GPL vmlinux 0x08387737 device_init_wakeup +EXPORT_SYMBOL_GPL vmlinux 0x08428582 genphy_c45_read_lpa +EXPORT_SYMBOL_GPL vmlinux 0x084ca149 sata_scr_valid +EXPORT_SYMBOL_GPL vmlinux 0x085ddb36 sk_msg_trim +EXPORT_SYMBOL_GPL vmlinux 0x086d57f3 alloc_dax_region +EXPORT_SYMBOL_GPL vmlinux 0x087f1f83 usb_hcd_unmap_urb_for_dma +EXPORT_SYMBOL_GPL vmlinux 0x087f5dc5 wm831x_of_match +EXPORT_SYMBOL_GPL vmlinux 0x0895c3cd crypto_unregister_instance +EXPORT_SYMBOL_GPL vmlinux 0x0898c908 desc_to_gpio +EXPORT_SYMBOL_GPL vmlinux 0x08acb827 bus_register +EXPORT_SYMBOL_GPL vmlinux 0x08aeed7f sbitmap_queue_init_node +EXPORT_SYMBOL_GPL vmlinux 0x08c73234 __tracepoint_rpm_suspend +EXPORT_SYMBOL_GPL vmlinux 0x08c8a21e cpuidle_register_device +EXPORT_SYMBOL_GPL vmlinux 0x08cd893c crypto_grab_akcipher +EXPORT_SYMBOL_GPL vmlinux 0x08d3bf02 trace_vprintk +EXPORT_SYMBOL_GPL vmlinux 0x08df879e dio_end_io +EXPORT_SYMBOL_GPL vmlinux 0x08e3043a amba_apb_device_add_res +EXPORT_SYMBOL_GPL vmlinux 0x08e94300 __tracepoint_br_fdb_update +EXPORT_SYMBOL_GPL vmlinux 0x090202bf ipv4_sk_update_pmtu +EXPORT_SYMBOL_GPL vmlinux 0x0907ffdc blk_revalidate_disk_zones +EXPORT_SYMBOL_GPL vmlinux 0x09152b60 usb_create_hcd +EXPORT_SYMBOL_GPL vmlinux 0x0919ec8a platform_get_irq_byname_optional +EXPORT_SYMBOL_GPL vmlinux 0x091eb9b4 round_jiffies +EXPORT_SYMBOL_GPL vmlinux 0x0929331a genphy_c45_restart_aneg +EXPORT_SYMBOL_GPL vmlinux 0x09412e16 icc_enable +EXPORT_SYMBOL_GPL vmlinux 0x09428136 bpf_trace_run5 +EXPORT_SYMBOL_GPL vmlinux 0x09492220 musb_mailbox +EXPORT_SYMBOL_GPL vmlinux 0x0956b414 idr_alloc_u32 +EXPORT_SYMBOL_GPL vmlinux 0x095f97f1 nand_read_data_op +EXPORT_SYMBOL_GPL vmlinux 0x0960f178 nf_checksum +EXPORT_SYMBOL_GPL vmlinux 0x0966d50b gov_attr_set_get +EXPORT_SYMBOL_GPL vmlinux 0x096716a0 set_secondary_fwnode +EXPORT_SYMBOL_GPL vmlinux 0x098fa3c4 locks_release_private +EXPORT_SYMBOL_GPL vmlinux 0x09989cd6 devm_of_clk_add_hw_provider +EXPORT_SYMBOL_GPL vmlinux 0x09a13d16 usb_ep_enable +EXPORT_SYMBOL_GPL vmlinux 0x09aa536c scsi_dh_attach +EXPORT_SYMBOL_GPL vmlinux 0x09ad85d5 pci_bus_add_device +EXPORT_SYMBOL_GPL vmlinux 0x09b53e14 interval_tree_remove +EXPORT_SYMBOL_GPL vmlinux 0x09bc0589 regulator_register_supply_alias +EXPORT_SYMBOL_GPL vmlinux 0x09e66eb3 virtqueue_get_vring +EXPORT_SYMBOL_GPL vmlinux 0x09e913c1 snd_pcm_alt_chmaps +EXPORT_SYMBOL_GPL vmlinux 0x09eaaa68 skb_mpls_pop +EXPORT_SYMBOL_GPL vmlinux 0x09ee2c25 fat_time_unix2fat +EXPORT_SYMBOL_GPL vmlinux 0x09f5b2f7 bsg_scsi_register_queue +EXPORT_SYMBOL_GPL vmlinux 0x09f6b608 regulator_get_voltage_sel_regmap +EXPORT_SYMBOL_GPL vmlinux 0x0a19bfe9 dmi_kobj +EXPORT_SYMBOL_GPL vmlinux 0x0a1db1dd blkcg_activate_policy +EXPORT_SYMBOL_GPL vmlinux 0x0a365254 ahci_pmp_retry_srst_ops +EXPORT_SYMBOL_GPL vmlinux 0x0a42d1f5 snd_device_initialize +EXPORT_SYMBOL_GPL vmlinux 0x0a4f6b22 devm_kmemdup +EXPORT_SYMBOL_GPL vmlinux 0x0a6c4041 cn_netlink_send +EXPORT_SYMBOL_GPL vmlinux 0x0a6ce1cc sfp_select_interface +EXPORT_SYMBOL_GPL vmlinux 0x0aadf6fc led_trigger_blink_oneshot +EXPORT_SYMBOL_GPL vmlinux 0x0ab983ac dummy_irq_chip +EXPORT_SYMBOL_GPL vmlinux 0x0abc3d93 rht_bucket_nested_insert +EXPORT_SYMBOL_GPL vmlinux 0x0ac596bb snd_soc_dapm_get_enum_double +EXPORT_SYMBOL_GPL vmlinux 0x0ad27591 bpf_sk_storage_diag_put +EXPORT_SYMBOL_GPL vmlinux 0x0ae8d8c6 gpiod_unexport +EXPORT_SYMBOL_GPL vmlinux 0x0af49fa9 i2c_dw_adjust_bus_speed +EXPORT_SYMBOL_GPL vmlinux 0x0b07abe2 unshare_fs_struct +EXPORT_SYMBOL_GPL vmlinux 0x0b1bb9f9 synchronize_rcu_tasks +EXPORT_SYMBOL_GPL vmlinux 0x0b1c796e dma_can_mmap +EXPORT_SYMBOL_GPL vmlinux 0x0b237ca6 clk_hw_rate_is_protected +EXPORT_SYMBOL_GPL vmlinux 0x0b2970fe klist_iter_init +EXPORT_SYMBOL_GPL vmlinux 0x0b3d8621 mmput +EXPORT_SYMBOL_GPL vmlinux 0x0b424b41 dev_pm_opp_add +EXPORT_SYMBOL_GPL vmlinux 0x0b4a8834 musb_writeb +EXPORT_SYMBOL_GPL vmlinux 0x0b552623 scsi_target_block +EXPORT_SYMBOL_GPL vmlinux 0x0b56db6e ncsi_vlan_rx_add_vid +EXPORT_SYMBOL_GPL vmlinux 0x0b60ec0b cgroup_get_from_fd +EXPORT_SYMBOL_GPL vmlinux 0x0b693d01 devm_hwmon_device_unregister +EXPORT_SYMBOL_GPL vmlinux 0x0b72bb52 snd_soc_set_ac97_ops_of_reset +EXPORT_SYMBOL_GPL vmlinux 0x0b79b592 rtc_initialize_alarm +EXPORT_SYMBOL_GPL vmlinux 0x0b7c4731 sbitmap_queue_show +EXPORT_SYMBOL_GPL vmlinux 0x0b87261e transport_add_device +EXPORT_SYMBOL_GPL vmlinux 0x0b970b7d tty_buffer_space_avail +EXPORT_SYMBOL_GPL vmlinux 0x0ba65e4f usb_disable_lpm +EXPORT_SYMBOL_GPL vmlinux 0x0bb028d4 hisi_clk_register_fixed_factor +EXPORT_SYMBOL_GPL vmlinux 0x0bc0974e tpm_chip_start +EXPORT_SYMBOL_GPL vmlinux 0x0be4ce86 mtd_write_user_prot_reg +EXPORT_SYMBOL_GPL vmlinux 0x0c1556ec crypto_stats_rng_seed +EXPORT_SYMBOL_GPL vmlinux 0x0c17df10 phy_save_page +EXPORT_SYMBOL_GPL vmlinux 0x0c23c104 of_nvmem_cell_get +EXPORT_SYMBOL_GPL vmlinux 0x0c23cc5e __devm_regmap_init_spi +EXPORT_SYMBOL_GPL vmlinux 0x0c303f52 bch_encode +EXPORT_SYMBOL_GPL vmlinux 0x0c32ff8a edac_pci_alloc_index +EXPORT_SYMBOL_GPL vmlinux 0x0c3edef4 snd_soc_dapm_stream_stop +EXPORT_SYMBOL_GPL vmlinux 0x0c49c744 serial8250_em485_start_tx +EXPORT_SYMBOL_GPL vmlinux 0x0c4ffde1 pwm_get_chip_data +EXPORT_SYMBOL_GPL vmlinux 0x0c55e2d5 nvm_set_chunk_meta +EXPORT_SYMBOL_GPL vmlinux 0x0c5b6039 tps6586x_set_bits +EXPORT_SYMBOL_GPL vmlinux 0x0c5e7ec1 snd_soc_unregister_component_by_driver +EXPORT_SYMBOL_GPL vmlinux 0x0c6b419c mmc_cmdq_disable +EXPORT_SYMBOL_GPL vmlinux 0x0c7927a7 devm_regmap_add_irq_chip +EXPORT_SYMBOL_GPL vmlinux 0x0c81a5f1 sysfs_create_groups +EXPORT_SYMBOL_GPL vmlinux 0x0c97770f __devm_spi_alloc_controller +EXPORT_SYMBOL_GPL vmlinux 0x0c9d55ec sk_msg_memcopy_from_iter +EXPORT_SYMBOL_GPL vmlinux 0x0cafcb4e snd_soc_component_read +EXPORT_SYMBOL_GPL vmlinux 0x0cb185fa vfs_readf +EXPORT_SYMBOL_GPL vmlinux 0x0cb456e1 __clk_get_hw +EXPORT_SYMBOL_GPL vmlinux 0x0cb4c798 iomap_seek_hole +EXPORT_SYMBOL_GPL vmlinux 0x0cb6523f of_genpd_remove_subdomain +EXPORT_SYMBOL_GPL vmlinux 0x0ccad909 inet6_lookup_listener +EXPORT_SYMBOL_GPL vmlinux 0x0ce44776 dev_pm_set_dedicated_wake_irq +EXPORT_SYMBOL_GPL vmlinux 0x0ce80e51 of_alias_get_id +EXPORT_SYMBOL_GPL vmlinux 0x0ce9926a extcon_set_property_sync +EXPORT_SYMBOL_GPL vmlinux 0x0cfae067 snd_soc_dapm_put_enum_double +EXPORT_SYMBOL_GPL vmlinux 0x0d0ac9ae edac_pci_handle_npe +EXPORT_SYMBOL_GPL vmlinux 0x0d0bfd25 regmap_write_async +EXPORT_SYMBOL_GPL vmlinux 0x0d1cc4dd devres_release +EXPORT_SYMBOL_GPL vmlinux 0x0d256675 _snd_pcm_stream_lock_irqsave +EXPORT_SYMBOL_GPL vmlinux 0x0d27f4c7 sk_msg_return +EXPORT_SYMBOL_GPL vmlinux 0x0d3a8663 dm_internal_suspend_noflush +EXPORT_SYMBOL_GPL vmlinux 0x0d3e3481 bch_free +EXPORT_SYMBOL_GPL vmlinux 0x0d3e6a85 crypto_enqueue_request_head +EXPORT_SYMBOL_GPL vmlinux 0x0d459213 work_on_cpu_safe +EXPORT_SYMBOL_GPL vmlinux 0x0d4961de nf_log_buf_open +EXPORT_SYMBOL_GPL vmlinux 0x0d50d2a5 cpufreq_cooling_unregister +EXPORT_SYMBOL_GPL vmlinux 0x0d59a383 wbt_disable_default +EXPORT_SYMBOL_GPL vmlinux 0x0d5a5939 cpu_topology +EXPORT_SYMBOL_GPL vmlinux 0x0d6a7f61 usb_unlocked_enable_lpm +EXPORT_SYMBOL_GPL vmlinux 0x0d870a00 devm_phy_create +EXPORT_SYMBOL_GPL vmlinux 0x0da97fe9 stmpe_set_altfunc +EXPORT_SYMBOL_GPL vmlinux 0x0daa0c01 iomap_zero_range +EXPORT_SYMBOL_GPL vmlinux 0x0db4857f rio_release_dma +EXPORT_SYMBOL_GPL vmlinux 0x0db91226 __netdev_watchdog_up +EXPORT_SYMBOL_GPL vmlinux 0x0dc373ab wm5110_aod +EXPORT_SYMBOL_GPL vmlinux 0x0dc4e9fc dev_pm_opp_get_of_node +EXPORT_SYMBOL_GPL vmlinux 0x0dcb3ee8 divider_recalc_rate +EXPORT_SYMBOL_GPL vmlinux 0x0dd8d9e1 register_asymmetric_key_parser +EXPORT_SYMBOL_GPL vmlinux 0x0ddb1cd7 llist_reverse_order +EXPORT_SYMBOL_GPL vmlinux 0x0e152d2d reset_simple_ops +EXPORT_SYMBOL_GPL vmlinux 0x0e156852 device_link_remove +EXPORT_SYMBOL_GPL vmlinux 0x0e1911bc dma_buf_move_notify +EXPORT_SYMBOL_GPL vmlinux 0x0e238d07 sk_clear_memalloc +EXPORT_SYMBOL_GPL vmlinux 0x0e2805f6 ata_sff_data_xfer +EXPORT_SYMBOL_GPL vmlinux 0x0e2d0b91 devm_of_icc_get +EXPORT_SYMBOL_GPL vmlinux 0x0e44c417 devm_fwnode_gpiod_get_index +EXPORT_SYMBOL_GPL vmlinux 0x0e53ea4b gen_pool_get +EXPORT_SYMBOL_GPL vmlinux 0x0e58118e rio_mport_chk_dev_access +EXPORT_SYMBOL_GPL vmlinux 0x0e6a5076 mtd_del_partition +EXPORT_SYMBOL_GPL vmlinux 0x0e7e403e dev_pm_opp_put +EXPORT_SYMBOL_GPL vmlinux 0x0e8648b1 thermal_zone_of_get_sensor_id +EXPORT_SYMBOL_GPL vmlinux 0x0e87a45c crypto_unregister_ahashes +EXPORT_SYMBOL_GPL vmlinux 0x0e8a574a cpuacct_cgrp_subsys_on_dfl_key +EXPORT_SYMBOL_GPL vmlinux 0x0e8c4e74 serial8250_tx_chars +EXPORT_SYMBOL_GPL vmlinux 0x0e9862e1 handle_untracked_irq +EXPORT_SYMBOL_GPL vmlinux 0x0e9bf026 sata_lpm_ignore_phy_events +EXPORT_SYMBOL_GPL vmlinux 0x0eada42c compat_only_sysfs_link_entry_to_kobj +EXPORT_SYMBOL_GPL vmlinux 0x0ece0a18 __xas_next +EXPORT_SYMBOL_GPL vmlinux 0x0edbb631 of_get_phy_mode +EXPORT_SYMBOL_GPL vmlinux 0x0edc914d of_address_to_resource +EXPORT_SYMBOL_GPL vmlinux 0x0edfae99 __vring_new_virtqueue +EXPORT_SYMBOL_GPL vmlinux 0x0eeb5417 __kprobe_event_gen_cmd_start +EXPORT_SYMBOL_GPL vmlinux 0x0ef51b26 find_get_pid +EXPORT_SYMBOL_GPL vmlinux 0x0efa4a19 serial8250_request_dma +EXPORT_SYMBOL_GPL vmlinux 0x0f059aed crypto_comp_compress +EXPORT_SYMBOL_GPL vmlinux 0x0f0f222a snd_soc_component_disable_pin +EXPORT_SYMBOL_GPL vmlinux 0x0f180070 ring_buffer_free_read_page +EXPORT_SYMBOL_GPL vmlinux 0x0f1c00b9 ata_host_put +EXPORT_SYMBOL_GPL vmlinux 0x0f1c0e9e regulator_get_exclusive +EXPORT_SYMBOL_GPL vmlinux 0x0f2203d9 ata_qc_get_active +EXPORT_SYMBOL_GPL vmlinux 0x0f2da3dc rdma_cgrp_subsys_on_dfl_key +EXPORT_SYMBOL_GPL vmlinux 0x0f3d98cb phy_resolve_aneg_linkmode +EXPORT_SYMBOL_GPL vmlinux 0x0f3e1b22 rtnl_af_register +EXPORT_SYMBOL_GPL vmlinux 0x0f407add sched_setscheduler +EXPORT_SYMBOL_GPL vmlinux 0x0f4c4228 mtd_is_locked +EXPORT_SYMBOL_GPL vmlinux 0x0f517ff5 icc_std_aggregate +EXPORT_SYMBOL_GPL vmlinux 0x0f698de0 devm_spi_mem_dirmap_create +EXPORT_SYMBOL_GPL vmlinux 0x0f713f3d irq_chip_enable_parent +EXPORT_SYMBOL_GPL vmlinux 0x0f75d0b5 vchan_find_desc +EXPORT_SYMBOL_GPL vmlinux 0x0f7ca236 dmi_memdev_name +EXPORT_SYMBOL_GPL vmlinux 0x0f93aee8 devm_gpiod_unhinge +EXPORT_SYMBOL_GPL vmlinux 0x0f949ea8 i2c_add_numbered_adapter +EXPORT_SYMBOL_GPL vmlinux 0x0fb488c3 get_user_pages_fast_only +EXPORT_SYMBOL_GPL vmlinux 0x0fc22b31 pci_host_common_probe +EXPORT_SYMBOL_GPL vmlinux 0x0fd70012 pci_dev_run_wake +EXPORT_SYMBOL_GPL vmlinux 0x1003348e fsverity_verify_page +EXPORT_SYMBOL_GPL vmlinux 0x100359e4 stop_machine +EXPORT_SYMBOL_GPL vmlinux 0x100ab093 __tracepoint_powernv_throttle +EXPORT_SYMBOL_GPL vmlinux 0x10138352 tracing_on +EXPORT_SYMBOL_GPL vmlinux 0x101bbe13 pci_load_and_free_saved_state +EXPORT_SYMBOL_GPL vmlinux 0x103cd540 pci_epf_alloc_space +EXPORT_SYMBOL_GPL vmlinux 0x1043cac3 queue_work_node +EXPORT_SYMBOL_GPL vmlinux 0x104854e6 sdio_release_irq +EXPORT_SYMBOL_GPL vmlinux 0x1062aa27 power_supply_batinfo_ocv2cap +EXPORT_SYMBOL_GPL vmlinux 0x106ad9e1 software_node_unregister_node_group +EXPORT_SYMBOL_GPL vmlinux 0x10904ec0 sysfs_create_mount_point +EXPORT_SYMBOL_GPL vmlinux 0x109b6088 skb_zerocopy_iter_stream +EXPORT_SYMBOL_GPL vmlinux 0x10bdb8bd register_trace_event +EXPORT_SYMBOL_GPL vmlinux 0x10c2e75a kmsg_dump_register +EXPORT_SYMBOL_GPL vmlinux 0x10c2fc92 regulator_set_current_limit_regmap +EXPORT_SYMBOL_GPL vmlinux 0x10d78e8e tegra_bpmp_transfer_atomic +EXPORT_SYMBOL_GPL vmlinux 0x10d9abd2 dma_buf_pin +EXPORT_SYMBOL_GPL vmlinux 0x10e72608 hisi_clk_alloc +EXPORT_SYMBOL_GPL vmlinux 0x10ecc52c usb_amd_quirk_pll_enable +EXPORT_SYMBOL_GPL vmlinux 0x10f93c3c sata_async_notification +EXPORT_SYMBOL_GPL vmlinux 0x10fb42a7 scsi_unregister_device_handler +EXPORT_SYMBOL_GPL vmlinux 0x1104c4d5 trace_seq_puts +EXPORT_SYMBOL_GPL vmlinux 0x11091291 nand_extract_bits +EXPORT_SYMBOL_GPL vmlinux 0x110d5a2d fsl8250_handle_irq +EXPORT_SYMBOL_GPL vmlinux 0x11197001 dev_pm_qos_flags +EXPORT_SYMBOL_GPL vmlinux 0x1125fb19 exportfs_encode_inode_fh +EXPORT_SYMBOL_GPL vmlinux 0x112ca405 snd_soc_bytes_info_ext +EXPORT_SYMBOL_GPL vmlinux 0x1138cb1f of_reset_control_array_get +EXPORT_SYMBOL_GPL vmlinux 0x113bb791 spi_res_release +EXPORT_SYMBOL_GPL vmlinux 0x1141d3bd rio_request_outb_mbox +EXPORT_SYMBOL_GPL vmlinux 0x11526c9a meson_clk_pll_ops +EXPORT_SYMBOL_GPL vmlinux 0x11528518 sdio_writeb +EXPORT_SYMBOL_GPL vmlinux 0x117b2712 rio_map_outb_region +EXPORT_SYMBOL_GPL vmlinux 0x11807076 spi_sync +EXPORT_SYMBOL_GPL vmlinux 0x1183f83a device_change_owner +EXPORT_SYMBOL_GPL vmlinux 0x11859dbb get_net_ns_by_pid +EXPORT_SYMBOL_GPL vmlinux 0x1188af7a noop_set_page_dirty +EXPORT_SYMBOL_GPL vmlinux 0x1194ad6d add_swap_extent +EXPORT_SYMBOL_GPL vmlinux 0x11a2e0ac crypto_dh_key_len +EXPORT_SYMBOL_GPL vmlinux 0x11aa809a regulator_unlock +EXPORT_SYMBOL_GPL vmlinux 0x11b105bc usb_disable_xhci_ports +EXPORT_SYMBOL_GPL vmlinux 0x11c23240 crypto_attr_u32 +EXPORT_SYMBOL_GPL vmlinux 0x11c411eb dma_get_required_mask +EXPORT_SYMBOL_GPL vmlinux 0x11c79928 pm_runtime_forbid +EXPORT_SYMBOL_GPL vmlinux 0x11cc298e irq_domain_xlate_twocell +EXPORT_SYMBOL_GPL vmlinux 0x11d7589e add_hwgenerator_randomness +EXPORT_SYMBOL_GPL vmlinux 0x11df0e75 devlink_fmsg_binary_pair_nest_start +EXPORT_SYMBOL_GPL vmlinux 0x11e549ed housekeeping_affine +EXPORT_SYMBOL_GPL vmlinux 0x11eb5fa6 snd_soc_dapm_enable_pin +EXPORT_SYMBOL_GPL vmlinux 0x11f0cfb0 kthread_use_mm +EXPORT_SYMBOL_GPL vmlinux 0x11fe930f sdhci_pltfm_pmops +EXPORT_SYMBOL_GPL vmlinux 0x1211e3fb bd_link_disk_holder +EXPORT_SYMBOL_GPL vmlinux 0x121d958a unregister_die_notifier +EXPORT_SYMBOL_GPL vmlinux 0x1222ba51 evm_verifyxattr +EXPORT_SYMBOL_GPL vmlinux 0x122d1d71 mmu_notifier_unregister +EXPORT_SYMBOL_GPL vmlinux 0x1234e483 get_cpu_iowait_time_us +EXPORT_SYMBOL_GPL vmlinux 0x123add08 device_get_child_node_count +EXPORT_SYMBOL_GPL vmlinux 0x12429b74 kthread_unuse_mm +EXPORT_SYMBOL_GPL vmlinux 0x124c3d3a mmc_abort_tuning +EXPORT_SYMBOL_GPL vmlinux 0x1253bb2f vfs_getxattr +EXPORT_SYMBOL_GPL vmlinux 0x1258360b page_reporting_unregister +EXPORT_SYMBOL_GPL vmlinux 0x125d637f irq_chip_set_affinity_parent +EXPORT_SYMBOL_GPL vmlinux 0x1268f357 resume_device_irqs +EXPORT_SYMBOL_GPL vmlinux 0x126c06f6 pingv6_prot +EXPORT_SYMBOL_GPL vmlinux 0x126c3ff3 __bio_crypt_clone +EXPORT_SYMBOL_GPL vmlinux 0x1282d7e5 of_clk_src_simple_get +EXPORT_SYMBOL_GPL vmlinux 0x128f5a1c blk_freeze_queue_start +EXPORT_SYMBOL_GPL vmlinux 0x129334ae sfp_parse_support +EXPORT_SYMBOL_GPL vmlinux 0x12a0ca29 pci_cfg_access_lock +EXPORT_SYMBOL_GPL vmlinux 0x12a6d688 ksm_madvise +EXPORT_SYMBOL_GPL vmlinux 0x12bda432 sdhci_cqe_disable +EXPORT_SYMBOL_GPL vmlinux 0x12be45c2 screen_glyph +EXPORT_SYMBOL_GPL vmlinux 0x12cdd747 spi_finalize_current_transfer +EXPORT_SYMBOL_GPL vmlinux 0x12d0d84e gpiochip_unlock_as_irq +EXPORT_SYMBOL_GPL vmlinux 0x12dae608 l3mdev_master_ifindex_rcu +EXPORT_SYMBOL_GPL vmlinux 0x12ff1e89 devfreq_event_set_event +EXPORT_SYMBOL_GPL vmlinux 0x12ff296f snd_soc_card_get_kcontrol +EXPORT_SYMBOL_GPL vmlinux 0x131a5ed7 regmap_del_irq_chip +EXPORT_SYMBOL_GPL vmlinux 0x131db64a system_long_wq +EXPORT_SYMBOL_GPL vmlinux 0x1323a582 ata_bmdma_stop +EXPORT_SYMBOL_GPL vmlinux 0x132432c5 devfreq_event_enable_edev +EXPORT_SYMBOL_GPL vmlinux 0x132f9635 dma_buf_end_cpu_access +EXPORT_SYMBOL_GPL vmlinux 0x1338926c dma_buf_export +EXPORT_SYMBOL_GPL vmlinux 0x133969d7 __trace_printk +EXPORT_SYMBOL_GPL vmlinux 0x13401202 crypto_type_has_alg +EXPORT_SYMBOL_GPL vmlinux 0x13578f33 ip_build_and_send_pkt +EXPORT_SYMBOL_GPL vmlinux 0x136209db power_supply_reg_notifier +EXPORT_SYMBOL_GPL vmlinux 0x136c872f gpiod_get_index +EXPORT_SYMBOL_GPL vmlinux 0x137e2312 __tracepoint_xdp_bulk_tx +EXPORT_SYMBOL_GPL vmlinux 0x13813f20 uprobe_unregister +EXPORT_SYMBOL_GPL vmlinux 0x1381d4f3 net_cls_cgrp_subsys_enabled_key +EXPORT_SYMBOL_GPL vmlinux 0x1381fdf4 usb_gadget_clear_selfpowered +EXPORT_SYMBOL_GPL vmlinux 0x13889036 inet_ehash_locks_alloc +EXPORT_SYMBOL_GPL vmlinux 0x138e0957 dax_write_cache_enabled +EXPORT_SYMBOL_GPL vmlinux 0x13a69312 virtqueue_notify +EXPORT_SYMBOL_GPL vmlinux 0x13be0e88 apply_to_page_range +EXPORT_SYMBOL_GPL vmlinux 0x13c7cd25 of_phy_get +EXPORT_SYMBOL_GPL vmlinux 0x13cb7882 query_asymmetric_key +EXPORT_SYMBOL_GPL vmlinux 0x13cf04ac spi_unregister_controller +EXPORT_SYMBOL_GPL vmlinux 0x13d01656 iommu_group_get +EXPORT_SYMBOL_GPL vmlinux 0x13d57dff scsi_ioctl_block_when_processing_errors +EXPORT_SYMBOL_GPL vmlinux 0x13ed8784 sdev_evt_alloc +EXPORT_SYMBOL_GPL vmlinux 0x13f4e4ce dmaengine_desc_attach_metadata +EXPORT_SYMBOL_GPL vmlinux 0x13f5766e sdhci_pltfm_register +EXPORT_SYMBOL_GPL vmlinux 0x13fbfc15 tegra_xusb_padctl_legacy_remove +EXPORT_SYMBOL_GPL vmlinux 0x1403ad09 cpufreq_add_update_util_hook +EXPORT_SYMBOL_GPL vmlinux 0x1404f87d fib4_rule_default +EXPORT_SYMBOL_GPL vmlinux 0x14050692 i2c_unregister_device +EXPORT_SYMBOL_GPL vmlinux 0x140c99b7 snd_soc_bytes_put +EXPORT_SYMBOL_GPL vmlinux 0x140cf343 tegra_bpmp_put +EXPORT_SYMBOL_GPL vmlinux 0x141064d5 kmsg_dump_get_line +EXPORT_SYMBOL_GPL vmlinux 0x141dfbab efivar_entry_delete +EXPORT_SYMBOL_GPL vmlinux 0x141eac07 __percpu_down_read +EXPORT_SYMBOL_GPL vmlinux 0x141f38bf ktime_get_raw_fast_ns +EXPORT_SYMBOL_GPL vmlinux 0x14298497 usb_altnum_to_altsetting +EXPORT_SYMBOL_GPL vmlinux 0x143128b4 kobject_move +EXPORT_SYMBOL_GPL vmlinux 0x1449a6ad regulator_bulk_force_disable +EXPORT_SYMBOL_GPL vmlinux 0x144b960e scsi_schedule_eh +EXPORT_SYMBOL_GPL vmlinux 0x147c3515 wm831x_auxadc_read +EXPORT_SYMBOL_GPL vmlinux 0x14801835 usb_register_driver +EXPORT_SYMBOL_GPL vmlinux 0x14831bc2 devlink_dpipe_table_counter_enabled +EXPORT_SYMBOL_GPL vmlinux 0x148ede45 pm_runtime_set_memalloc_noio +EXPORT_SYMBOL_GPL vmlinux 0x1499082a driver_unregister +EXPORT_SYMBOL_GPL vmlinux 0x149f093b cci_ace_get_port +EXPORT_SYMBOL_GPL vmlinux 0x14a98a21 cpu_cgrp_subsys_enabled_key +EXPORT_SYMBOL_GPL vmlinux 0x14ae9d60 ncsi_stop_dev +EXPORT_SYMBOL_GPL vmlinux 0x14bc6e82 regulator_get_voltage +EXPORT_SYMBOL_GPL vmlinux 0x14c2872d xas_pause +EXPORT_SYMBOL_GPL vmlinux 0x14c8c3b6 iommu_domain_get_attr +EXPORT_SYMBOL_GPL vmlinux 0x14cb4cac of_clk_get_parent_count +EXPORT_SYMBOL_GPL vmlinux 0x14d01690 clk_mux_index_to_val +EXPORT_SYMBOL_GPL vmlinux 0x14d27bee lp8788_read_multi_bytes +EXPORT_SYMBOL_GPL vmlinux 0x14d6821e device_match_name +EXPORT_SYMBOL_GPL vmlinux 0x14d9c62e fsnotify_find_mark +EXPORT_SYMBOL_GPL vmlinux 0x14e0316b kernel_kobj +EXPORT_SYMBOL_GPL vmlinux 0x14e12ac8 devm_irq_alloc_generic_chip +EXPORT_SYMBOL_GPL vmlinux 0x14ebe9c6 phy_create +EXPORT_SYMBOL_GPL vmlinux 0x14fda6a9 of_irq_get_byname +EXPORT_SYMBOL_GPL vmlinux 0x1504fdf4 usb_clear_halt +EXPORT_SYMBOL_GPL vmlinux 0x15116fde devm_of_phy_provider_unregister +EXPORT_SYMBOL_GPL vmlinux 0x15249db8 ip6_sk_dst_lookup_flow +EXPORT_SYMBOL_GPL vmlinux 0x152ba415 perf_event_sysfs_show +EXPORT_SYMBOL_GPL vmlinux 0x152d8a1f rtc_read_alarm +EXPORT_SYMBOL_GPL vmlinux 0x153b60a6 klist_del +EXPORT_SYMBOL_GPL vmlinux 0x153d4191 dev_pm_opp_init_cpufreq_table +EXPORT_SYMBOL_GPL vmlinux 0x15510a89 devlink_fmsg_binary_put +EXPORT_SYMBOL_GPL vmlinux 0x156ce943 virtqueue_add_sgs +EXPORT_SYMBOL_GPL vmlinux 0x1573f7dc blk_steal_bios +EXPORT_SYMBOL_GPL vmlinux 0x157c3ee7 devm_gpio_free +EXPORT_SYMBOL_GPL vmlinux 0x157ce384 class_dev_iter_init +EXPORT_SYMBOL_GPL vmlinux 0x158542ac snd_soc_link_compr_set_params +EXPORT_SYMBOL_GPL vmlinux 0x1595c43e blk_ksm_reprogram_all_keys +EXPORT_SYMBOL_GPL vmlinux 0x1595e94e snd_soc_dapm_del_routes +EXPORT_SYMBOL_GPL vmlinux 0x159e23cc pm_generic_poweroff +EXPORT_SYMBOL_GPL vmlinux 0x15a454e8 ping_init_sock +EXPORT_SYMBOL_GPL vmlinux 0x15ad9c88 sync_page_io +EXPORT_SYMBOL_GPL vmlinux 0x15b06044 __xas_prev +EXPORT_SYMBOL_GPL vmlinux 0x15ba74b0 spi_mem_supports_op +EXPORT_SYMBOL_GPL vmlinux 0x15bda508 crypto_lookup_template +EXPORT_SYMBOL_GPL vmlinux 0x15d1eab0 device_connection_add +EXPORT_SYMBOL_GPL vmlinux 0x15d7e9db tty_register_device_attr +EXPORT_SYMBOL_GPL vmlinux 0x15ec6155 usb_put_hcd +EXPORT_SYMBOL_GPL vmlinux 0x15f36582 led_blink_set +EXPORT_SYMBOL_GPL vmlinux 0x161b1093 usb_phy_roothub_alloc +EXPORT_SYMBOL_GPL vmlinux 0x1620a74f ethnl_cable_test_step +EXPORT_SYMBOL_GPL vmlinux 0x1621ffee iommu_fwspec_init +EXPORT_SYMBOL_GPL vmlinux 0x162a9cc8 devlink_params_register +EXPORT_SYMBOL_GPL vmlinux 0x162f5f38 __irq_domain_alloc_fwnode +EXPORT_SYMBOL_GPL vmlinux 0x162fe4c6 tcp_ca_openreq_child +EXPORT_SYMBOL_GPL vmlinux 0x1635da54 imx_pcm_fiq_exit +EXPORT_SYMBOL_GPL vmlinux 0x163a561f mtd_read +EXPORT_SYMBOL_GPL vmlinux 0x165bc9d1 synth_event_trace_end +EXPORT_SYMBOL_GPL vmlinux 0x165dcccc bsg_setup_queue +EXPORT_SYMBOL_GPL vmlinux 0x1662e8eb crypto_register_akcipher +EXPORT_SYMBOL_GPL vmlinux 0x166aa120 proc_get_parent_data +EXPORT_SYMBOL_GPL vmlinux 0x168dc646 device_create_bin_file +EXPORT_SYMBOL_GPL vmlinux 0x1690b503 usb_role_switch_get_drvdata +EXPORT_SYMBOL_GPL vmlinux 0x1690dac0 blkg_rwstat_recursive_sum +EXPORT_SYMBOL_GPL vmlinux 0x1697c196 of_phandle_iterator_next +EXPORT_SYMBOL_GPL vmlinux 0x169fe196 device_find_child_by_name +EXPORT_SYMBOL_GPL vmlinux 0x169ff08b gpiod_set_raw_array_value_cansleep +EXPORT_SYMBOL_GPL vmlinux 0x16a5f0ed badblocks_check +EXPORT_SYMBOL_GPL vmlinux 0x16b65ce7 da9052_free_irq +EXPORT_SYMBOL_GPL vmlinux 0x16da1f88 devlink_fmsg_u32_put +EXPORT_SYMBOL_GPL vmlinux 0x16ef576b class_for_each_device +EXPORT_SYMBOL_GPL vmlinux 0x16ffb8af get_tree_mtd +EXPORT_SYMBOL_GPL vmlinux 0x1706a654 debugfs_create_x16 +EXPORT_SYMBOL_GPL vmlinux 0x170cc36c put_timespec64 +EXPORT_SYMBOL_GPL vmlinux 0x1712ea28 __reset_control_get +EXPORT_SYMBOL_GPL vmlinux 0x17257b7e snd_dmaengine_pcm_prepare_slave_config +EXPORT_SYMBOL_GPL vmlinux 0x173491a5 ata_pci_device_do_resume +EXPORT_SYMBOL_GPL vmlinux 0x173ac4df sdio_retune_crc_disable +EXPORT_SYMBOL_GPL vmlinux 0x173c74b9 regmap_fields_update_bits_base +EXPORT_SYMBOL_GPL vmlinux 0x173fe18e crypto_skcipher_decrypt +EXPORT_SYMBOL_GPL vmlinux 0x1746252f mbox_request_channel_byname +EXPORT_SYMBOL_GPL vmlinux 0x174c677f d_walk +EXPORT_SYMBOL_GPL vmlinux 0x176031a7 devlink_fmsg_string_put +EXPORT_SYMBOL_GPL vmlinux 0x177a0633 arch_set_freq_scale +EXPORT_SYMBOL_GPL vmlinux 0x177c338d twl_get_version +EXPORT_SYMBOL_GPL vmlinux 0x179da7fe dma_buf_unpin +EXPORT_SYMBOL_GPL vmlinux 0x17a8061e serdev_device_get_tiocm +EXPORT_SYMBOL_GPL vmlinux 0x17cd025c irq_find_mapping +EXPORT_SYMBOL_GPL vmlinux 0x17dc4c4f hisi_reset_init +EXPORT_SYMBOL_GPL vmlinux 0x17eaec63 led_classdev_resume +EXPORT_SYMBOL_GPL vmlinux 0x17f98270 pm_clk_create +EXPORT_SYMBOL_GPL vmlinux 0x17f9d379 iommu_cache_invalidate +EXPORT_SYMBOL_GPL vmlinux 0x17fbe97d amba_device_put +EXPORT_SYMBOL_GPL vmlinux 0x18008c59 ring_buffer_resize +EXPORT_SYMBOL_GPL vmlinux 0x180f98b9 fwnode_handle_get +EXPORT_SYMBOL_GPL vmlinux 0x1817930e dma_buf_map_attachment +EXPORT_SYMBOL_GPL vmlinux 0x1821ab1d blk_clear_pm_only +EXPORT_SYMBOL_GPL vmlinux 0x183f3d12 cpu_subsys +EXPORT_SYMBOL_GPL vmlinux 0x1843329a clean_acked_data_disable +EXPORT_SYMBOL_GPL vmlinux 0x184721d1 rio_mport_write_config_16 +EXPORT_SYMBOL_GPL vmlinux 0x18615d35 efivar_supports_writes +EXPORT_SYMBOL_GPL vmlinux 0x187b067f phy_pm_runtime_get +EXPORT_SYMBOL_GPL vmlinux 0x18858eec clk_hw_set_rate_range +EXPORT_SYMBOL_GPL vmlinux 0x188b8697 irq_of_parse_and_map +EXPORT_SYMBOL_GPL vmlinux 0x188e63da ata_scsi_slave_config +EXPORT_SYMBOL_GPL vmlinux 0x18c6f85f do_tcp_sendpages +EXPORT_SYMBOL_GPL vmlinux 0x18c7b69c crypto_aead_encrypt +EXPORT_SYMBOL_GPL vmlinux 0x18ce24ba xfrm_audit_state_delete +EXPORT_SYMBOL_GPL vmlinux 0x18d896f8 ata_sas_tport_delete +EXPORT_SYMBOL_GPL vmlinux 0x18dd4667 i2c_parse_fw_timings +EXPORT_SYMBOL_GPL vmlinux 0x18ddfa86 hrtimer_init +EXPORT_SYMBOL_GPL vmlinux 0x18e4f8aa swphy_read_reg +EXPORT_SYMBOL_GPL vmlinux 0x18e5d08d pci_user_write_config_dword +EXPORT_SYMBOL_GPL vmlinux 0x18f18e4c snd_soc_dapm_sync_unlocked +EXPORT_SYMBOL_GPL vmlinux 0x18fb2caf cpus_read_unlock +EXPORT_SYMBOL_GPL vmlinux 0x190a7209 mpi_write_to_sgl +EXPORT_SYMBOL_GPL vmlinux 0x1921431b meson_clk_pcie_pll_ops +EXPORT_SYMBOL_GPL vmlinux 0x193cf760 rdev_clear_badblocks +EXPORT_SYMBOL_GPL vmlinux 0x1940b13e usb_kill_urb +EXPORT_SYMBOL_GPL vmlinux 0x194132fa zs_huge_class_size +EXPORT_SYMBOL_GPL vmlinux 0x194de273 kthread_flush_worker +EXPORT_SYMBOL_GPL vmlinux 0x196294ed snd_soc_tplg_component_load +EXPORT_SYMBOL_GPL vmlinux 0x196dcacc snd_soc_dai_compr_get_metadata +EXPORT_SYMBOL_GPL vmlinux 0x196fbaf3 __mtd_next_device +EXPORT_SYMBOL_GPL vmlinux 0x1972bae4 mddev_suspend +EXPORT_SYMBOL_GPL vmlinux 0x19a304ba usb_disabled +EXPORT_SYMBOL_GPL vmlinux 0x19b2e65f __tcp_bpf_recvmsg +EXPORT_SYMBOL_GPL vmlinux 0x19c20269 soc_device_unregister +EXPORT_SYMBOL_GPL vmlinux 0x19c2036c devlink_port_type_clear +EXPORT_SYMBOL_GPL vmlinux 0x19c2073a genphy_c45_an_config_aneg +EXPORT_SYMBOL_GPL vmlinux 0x19e81304 btree_alloc +EXPORT_SYMBOL_GPL vmlinux 0x19f462ab kfree_call_rcu +EXPORT_SYMBOL_GPL vmlinux 0x1a042fa5 cpufreq_cooling_register +EXPORT_SYMBOL_GPL vmlinux 0x1a0a0206 cpufreq_dbs_governor_stop +EXPORT_SYMBOL_GPL vmlinux 0x1a10c32b crypto_ft_tab +EXPORT_SYMBOL_GPL vmlinux 0x1a132424 user_describe +EXPORT_SYMBOL_GPL vmlinux 0x1a146ec3 usb_ep_type_string +EXPORT_SYMBOL_GPL vmlinux 0x1a177911 usb_get_intf +EXPORT_SYMBOL_GPL vmlinux 0x1a1ae9c9 shash_no_setkey +EXPORT_SYMBOL_GPL vmlinux 0x1a267fa8 bch_init +EXPORT_SYMBOL_GPL vmlinux 0x1a585778 simple_attr_write +EXPORT_SYMBOL_GPL vmlinux 0x1a5c5775 snd_card_add_dev_attr +EXPORT_SYMBOL_GPL vmlinux 0x1a6bf28f fsnotify_get_cookie +EXPORT_SYMBOL_GPL vmlinux 0x1a6ffa87 iommu_get_domain_for_dev +EXPORT_SYMBOL_GPL vmlinux 0x1a7256f9 usb_hcd_link_urb_to_ep +EXPORT_SYMBOL_GPL vmlinux 0x1a77903a of_alias_get_alias_list +EXPORT_SYMBOL_GPL vmlinux 0x1a9dbfae skb_mpls_push +EXPORT_SYMBOL_GPL vmlinux 0x1ab4ef94 regmap_raw_read +EXPORT_SYMBOL_GPL vmlinux 0x1ab68ff9 i2c_adapter_depth +EXPORT_SYMBOL_GPL vmlinux 0x1ac458a1 public_key_signature_free +EXPORT_SYMBOL_GPL vmlinux 0x1ad5566e regulator_bulk_enable +EXPORT_SYMBOL_GPL vmlinux 0x1ad7c57d devlink_resource_occ_get_register +EXPORT_SYMBOL_GPL vmlinux 0x1ad9d2e3 stmpe_reg_write +EXPORT_SYMBOL_GPL vmlinux 0x1adec33b bio_associate_blkg +EXPORT_SYMBOL_GPL vmlinux 0x1aece18a rio_bus_type +EXPORT_SYMBOL_GPL vmlinux 0x1aedb708 iommu_device_register +EXPORT_SYMBOL_GPL vmlinux 0x1aefc3db of_property_read_variable_u8_array +EXPORT_SYMBOL_GPL vmlinux 0x1af267f8 int_pow +EXPORT_SYMBOL_GPL vmlinux 0x1af78209 kset_find_obj +EXPORT_SYMBOL_GPL vmlinux 0x1b28399a metadata_dst_alloc_percpu +EXPORT_SYMBOL_GPL vmlinux 0x1b31883b uhci_reset_hc +EXPORT_SYMBOL_GPL vmlinux 0x1b339560 of_pm_clk_add_clks +EXPORT_SYMBOL_GPL vmlinux 0x1b4184ca rio_mport_send_doorbell +EXPORT_SYMBOL_GPL vmlinux 0x1b424230 clock_cooling_register +EXPORT_SYMBOL_GPL vmlinux 0x1b4a4c04 fwnode_property_read_u16_array +EXPORT_SYMBOL_GPL vmlinux 0x1b5059ce ata_id_xfermask +EXPORT_SYMBOL_GPL vmlinux 0x1b5ad884 rio_request_outb_dbell +EXPORT_SYMBOL_GPL vmlinux 0x1b657a38 edac_pci_del_device +EXPORT_SYMBOL_GPL vmlinux 0x1b8247cd __fat_fs_error +EXPORT_SYMBOL_GPL vmlinux 0x1b8822d8 pinctrl_gpio_direction_output +EXPORT_SYMBOL_GPL vmlinux 0x1b92e41d inet_putpeer +EXPORT_SYMBOL_GPL vmlinux 0x1ba52610 usb_deregister_dev +EXPORT_SYMBOL_GPL vmlinux 0x1baa55d5 meson_clk_pll_ro_ops +EXPORT_SYMBOL_GPL vmlinux 0x1bbd5e9a __page_file_index +EXPORT_SYMBOL_GPL vmlinux 0x1bc40a8d gpmc_omap_get_nand_ops +EXPORT_SYMBOL_GPL vmlinux 0x1bc5eebe pinctrl_gpio_direction_input +EXPORT_SYMBOL_GPL vmlinux 0x1bcc68d9 pci_try_reset_function +EXPORT_SYMBOL_GPL vmlinux 0x1bd28d76 snd_soc_register_component +EXPORT_SYMBOL_GPL vmlinux 0x1c1096e1 ahci_do_hardreset +EXPORT_SYMBOL_GPL vmlinux 0x1c2a41ad crypto_unregister_ahash +EXPORT_SYMBOL_GPL vmlinux 0x1c2d726a relay_buf_full +EXPORT_SYMBOL_GPL vmlinux 0x1c353b55 nvmem_cell_read_u32 +EXPORT_SYMBOL_GPL vmlinux 0x1c43b0c4 thermal_cooling_device_unregister +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 0x1c6b8a76 ata_bmdma_post_internal_cmd +EXPORT_SYMBOL_GPL vmlinux 0x1c6d7959 fat_attach +EXPORT_SYMBOL_GPL vmlinux 0x1c785f94 irq_chip_get_parent_state +EXPORT_SYMBOL_GPL vmlinux 0x1c798d9f for_each_kernel_tracepoint +EXPORT_SYMBOL_GPL vmlinux 0x1c7f4e31 skcipher_alloc_instance_simple +EXPORT_SYMBOL_GPL vmlinux 0x1c80d27d btree_geo128 +EXPORT_SYMBOL_GPL vmlinux 0x1c87a811 __round_jiffies_up +EXPORT_SYMBOL_GPL vmlinux 0x1c8d833d clk_register_fixed_factor +EXPORT_SYMBOL_GPL vmlinux 0x1c931155 __clk_hw_register_divider +EXPORT_SYMBOL_GPL vmlinux 0x1c9e1312 fwnode_get_name +EXPORT_SYMBOL_GPL vmlinux 0x1cbb267e pci_status_get_and_clear_errors +EXPORT_SYMBOL_GPL vmlinux 0x1cbd92b0 cpu_mitigations_off +EXPORT_SYMBOL_GPL vmlinux 0x1ccab588 regulator_bulk_register_supply_alias +EXPORT_SYMBOL_GPL vmlinux 0x1cde9036 led_init_core +EXPORT_SYMBOL_GPL vmlinux 0x1cdf4efb copy_from_kernel_nofault +EXPORT_SYMBOL_GPL vmlinux 0x1ce65eea usb_hcd_check_unlink_urb +EXPORT_SYMBOL_GPL vmlinux 0x1cfe4101 clkdev_hw_create +EXPORT_SYMBOL_GPL vmlinux 0x1d079095 dst_cache_get_ip6 +EXPORT_SYMBOL_GPL vmlinux 0x1d222ced irq_get_irqchip_state +EXPORT_SYMBOL_GPL vmlinux 0x1d29b6e6 adp5520_clr_bits +EXPORT_SYMBOL_GPL vmlinux 0x1d29b9e1 decode_rs8 +EXPORT_SYMBOL_GPL vmlinux 0x1d3cc1c6 crypto_mod_put +EXPORT_SYMBOL_GPL vmlinux 0x1d4cbf97 snd_soc_dapm_init +EXPORT_SYMBOL_GPL vmlinux 0x1d4d2a74 spi_alloc_device +EXPORT_SYMBOL_GPL vmlinux 0x1d548ca5 regulator_notifier_call_chain +EXPORT_SYMBOL_GPL vmlinux 0x1d591d32 rio_release_outb_dbell +EXPORT_SYMBOL_GPL vmlinux 0x1d61e7e1 clk_register_gate +EXPORT_SYMBOL_GPL vmlinux 0x1d67c2b8 usb_create_shared_hcd +EXPORT_SYMBOL_GPL vmlinux 0x1d6d379b amba_bustype +EXPORT_SYMBOL_GPL vmlinux 0x1d77b0f8 unix_socket_table +EXPORT_SYMBOL_GPL vmlinux 0x1d7f6d33 dev_attr_em_message +EXPORT_SYMBOL_GPL vmlinux 0x1d80a7e5 mtk_mmsys_ddp_connect +EXPORT_SYMBOL_GPL vmlinux 0x1d94a218 dmi_memdev_handle +EXPORT_SYMBOL_GPL vmlinux 0x1d95727d snd_soc_unregister_card +EXPORT_SYMBOL_GPL vmlinux 0x1d96dd25 spi_mem_dirmap_destroy +EXPORT_SYMBOL_GPL vmlinux 0x1d9d64d0 sysfs_change_owner +EXPORT_SYMBOL_GPL vmlinux 0x1d9de7fd sdhci_request +EXPORT_SYMBOL_GPL vmlinux 0x1dab1f76 __devm_regmap_init_i2c +EXPORT_SYMBOL_GPL vmlinux 0x1db2f1d0 sock_diag_check_cookie +EXPORT_SYMBOL_GPL vmlinux 0x1dbcf0c8 virtio_device_restore +EXPORT_SYMBOL_GPL vmlinux 0x1dce0031 evm_inode_init_security +EXPORT_SYMBOL_GPL vmlinux 0x1dd052c0 fib_add_nexthop +EXPORT_SYMBOL_GPL vmlinux 0x1dd6a78b serial8250_set_defaults +EXPORT_SYMBOL_GPL vmlinux 0x1de00292 trace_get_event_file +EXPORT_SYMBOL_GPL vmlinux 0x1e0670c6 reset_control_release +EXPORT_SYMBOL_GPL vmlinux 0x1e11df39 snd_soc_unregister_component +EXPORT_SYMBOL_GPL vmlinux 0x1e23525e alloc_dax +EXPORT_SYMBOL_GPL vmlinux 0x1e3e54d1 crypto_alloc_rng +EXPORT_SYMBOL_GPL vmlinux 0x1e455bfd sysfs_remove_files +EXPORT_SYMBOL_GPL vmlinux 0x1e699034 tcp_leave_memory_pressure +EXPORT_SYMBOL_GPL vmlinux 0x1e7bbcb3 kernel_restart +EXPORT_SYMBOL_GPL vmlinux 0x1e7d6157 freezer_cgrp_subsys_enabled_key +EXPORT_SYMBOL_GPL vmlinux 0x1e85e2f7 hwmon_notify_event +EXPORT_SYMBOL_GPL vmlinux 0x1e8fac8e wireless_nlevent_flush +EXPORT_SYMBOL_GPL vmlinux 0x1e957e15 bus_register_notifier +EXPORT_SYMBOL_GPL vmlinux 0x1e961c4f fwnode_graph_get_port_parent +EXPORT_SYMBOL_GPL vmlinux 0x1eaef2ea usb_hub_find_child +EXPORT_SYMBOL_GPL vmlinux 0x1eb9516e round_jiffies_relative +EXPORT_SYMBOL_GPL vmlinux 0x1ebd5cd8 ipv6_opt_accepted +EXPORT_SYMBOL_GPL vmlinux 0x1ebf6c2a pci_power_names +EXPORT_SYMBOL_GPL vmlinux 0x1ec55349 sock_zerocopy_alloc +EXPORT_SYMBOL_GPL vmlinux 0x1ec57d70 tty_get_pgrp +EXPORT_SYMBOL_GPL vmlinux 0x1ecae3a7 wait_for_stable_page +EXPORT_SYMBOL_GPL vmlinux 0x1eef92f7 unregister_pernet_subsys +EXPORT_SYMBOL_GPL vmlinux 0x1efebd8c fib_nh_common_release +EXPORT_SYMBOL_GPL vmlinux 0x1f049f01 nf_hook_entries_insert_raw +EXPORT_SYMBOL_GPL vmlinux 0x1f0cb5bf pm_power_off_prepare +EXPORT_SYMBOL_GPL vmlinux 0x1f2cf60b iomap_ioend_try_merge +EXPORT_SYMBOL_GPL vmlinux 0x1f3bfc19 regmap_raw_write_async +EXPORT_SYMBOL_GPL vmlinux 0x1f449588 mctrl_gpio_disable_ms +EXPORT_SYMBOL_GPL vmlinux 0x1f54b3ee inet_hashinfo_init +EXPORT_SYMBOL_GPL vmlinux 0x1f563160 bpf_offload_dev_priv +EXPORT_SYMBOL_GPL vmlinux 0x1f5fc4a5 cpu_latency_qos_request_active +EXPORT_SYMBOL_GPL vmlinux 0x1f66eba5 vfs_lock_file +EXPORT_SYMBOL_GPL vmlinux 0x1f6725b4 regulator_list_voltage_linear +EXPORT_SYMBOL_GPL vmlinux 0x1f74090f regulator_list_hardware_vsel +EXPORT_SYMBOL_GPL vmlinux 0x1f774f46 cpuset_cgrp_subsys_enabled_key +EXPORT_SYMBOL_GPL vmlinux 0x1f77cca1 thermal_zone_get_slope +EXPORT_SYMBOL_GPL vmlinux 0x1f816c03 get_net_ns_by_fd +EXPORT_SYMBOL_GPL vmlinux 0x1f834efe udp_abort +EXPORT_SYMBOL_GPL vmlinux 0x1f84ad69 anon_transport_class_unregister +EXPORT_SYMBOL_GPL vmlinux 0x1f8544b8 panic_timeout +EXPORT_SYMBOL_GPL vmlinux 0x1f890d7b phy_pm_runtime_put_sync +EXPORT_SYMBOL_GPL vmlinux 0x1f90d8de dw_pcie_upconfig_setup +EXPORT_SYMBOL_GPL vmlinux 0x1fa1d95c sha256_zero_message_hash +EXPORT_SYMBOL_GPL vmlinux 0x1fbea212 usb_phy_roothub_resume +EXPORT_SYMBOL_GPL vmlinux 0x1fca0b38 housekeeping_overridden +EXPORT_SYMBOL_GPL vmlinux 0x1fd1cf7b edac_mc_alloc +EXPORT_SYMBOL_GPL vmlinux 0x1fd25a2c regulator_allow_bypass +EXPORT_SYMBOL_GPL vmlinux 0x1fddfc2e ip6_datagram_recv_ctl +EXPORT_SYMBOL_GPL vmlinux 0x1fe6e504 gpiod_add_hogs +EXPORT_SYMBOL_GPL vmlinux 0x1fea62c0 devm_regmap_del_irq_chip +EXPORT_SYMBOL_GPL vmlinux 0x1ff222df blk_set_pm_only +EXPORT_SYMBOL_GPL vmlinux 0x1ff7baaa snd_soc_get_dai_name +EXPORT_SYMBOL_GPL vmlinux 0x201c9db4 fib_new_table +EXPORT_SYMBOL_GPL vmlinux 0x202a3460 spi_mem_dirmap_read +EXPORT_SYMBOL_GPL vmlinux 0x202ac22d store_sampling_rate +EXPORT_SYMBOL_GPL vmlinux 0x204000a6 ata_port_schedule_eh +EXPORT_SYMBOL_GPL vmlinux 0x20445e5c pci_generic_ecam_ops +EXPORT_SYMBOL_GPL vmlinux 0x20478a3e usb_hcd_is_primary_hcd +EXPORT_SYMBOL_GPL vmlinux 0x205dc8d9 regulator_bulk_free +EXPORT_SYMBOL_GPL vmlinux 0x2064e06f irq_create_fwspec_mapping +EXPORT_SYMBOL_GPL vmlinux 0x206f1d45 regulator_put +EXPORT_SYMBOL_GPL vmlinux 0x207bfc28 dma_resv_wait_timeout_rcu +EXPORT_SYMBOL_GPL vmlinux 0x20835a9f __xdp_release_frame +EXPORT_SYMBOL_GPL vmlinux 0x2087be15 pm_generic_freeze +EXPORT_SYMBOL_GPL vmlinux 0x20960ff6 of_dma_configure +EXPORT_SYMBOL_GPL vmlinux 0x209bcd13 regulator_is_enabled_regmap +EXPORT_SYMBOL_GPL vmlinux 0x20eac433 mtd_pairing_groups +EXPORT_SYMBOL_GPL vmlinux 0x20ecd41e __mdiobus_modify_changed +EXPORT_SYMBOL_GPL vmlinux 0x20f2d8b2 __mnt_is_readonly +EXPORT_SYMBOL_GPL vmlinux 0x20f9db42 xhci_mtk_add_ep_quirk +EXPORT_SYMBOL_GPL vmlinux 0x210649db __put_mtd_device +EXPORT_SYMBOL_GPL vmlinux 0x210a2104 of_icc_get_by_index +EXPORT_SYMBOL_GPL vmlinux 0x210dcde6 ip6_sk_redirect +EXPORT_SYMBOL_GPL vmlinux 0x21498b27 __clk_hw_register_gate +EXPORT_SYMBOL_GPL vmlinux 0x214fc26f fat_flush_inodes +EXPORT_SYMBOL_GPL vmlinux 0x21559f80 devres_alloc_node +EXPORT_SYMBOL_GPL vmlinux 0x21562a1d raw_v4_hashinfo +EXPORT_SYMBOL_GPL vmlinux 0x216de4e1 rcu_get_gp_kthreads_prio +EXPORT_SYMBOL_GPL vmlinux 0x21726652 pernet_ops_rwsem +EXPORT_SYMBOL_GPL vmlinux 0x2172cbbb fwnode_graph_get_remote_port +EXPORT_SYMBOL_GPL vmlinux 0x2183b93d gpiochip_add_pin_range +EXPORT_SYMBOL_GPL vmlinux 0x2187db77 ping_queue_rcv_skb +EXPORT_SYMBOL_GPL vmlinux 0x219bf79e ata_cable_sata +EXPORT_SYMBOL_GPL vmlinux 0x21a563da clk_get_accuracy +EXPORT_SYMBOL_GPL vmlinux 0x21a69f91 devlink_net +EXPORT_SYMBOL_GPL vmlinux 0x21a9cad0 device_for_each_child_reverse +EXPORT_SYMBOL_GPL vmlinux 0x21ac8b77 iommu_group_get_by_id +EXPORT_SYMBOL_GPL vmlinux 0x21ae5262 irq_generic_chip_ops +EXPORT_SYMBOL_GPL vmlinux 0x21c02107 devm_mbox_controller_unregister +EXPORT_SYMBOL_GPL vmlinux 0x21cb2204 skcipher_walk_aead_decrypt +EXPORT_SYMBOL_GPL vmlinux 0x21cd536a crypto_put_default_null_skcipher +EXPORT_SYMBOL_GPL vmlinux 0x21d3a17b dw_pcie_ep_init_notify +EXPORT_SYMBOL_GPL vmlinux 0x21ded146 __skb_tstamp_tx +EXPORT_SYMBOL_GPL vmlinux 0x21e068f3 tpm_is_tpm2 +EXPORT_SYMBOL_GPL vmlinux 0x21f4e673 dm_bio_get_target_bio_nr +EXPORT_SYMBOL_GPL vmlinux 0x21f8a10c ata_host_alloc +EXPORT_SYMBOL_GPL vmlinux 0x2207aa4b tcp_abort +EXPORT_SYMBOL_GPL vmlinux 0x22091108 is_skb_forwardable +EXPORT_SYMBOL_GPL vmlinux 0x220e9561 snd_soc_dapm_put_volsw +EXPORT_SYMBOL_GPL vmlinux 0x2211a4c0 blk_op_str +EXPORT_SYMBOL_GPL vmlinux 0x221268fd arm_iommu_detach_device +EXPORT_SYMBOL_GPL vmlinux 0x221a07d0 __sdhci_set_timeout +EXPORT_SYMBOL_GPL vmlinux 0x2227d139 virtio_finalize_features +EXPORT_SYMBOL_GPL vmlinux 0x22648c02 __tracepoint_neigh_event_send_done +EXPORT_SYMBOL_GPL vmlinux 0x2267af01 regmap_register_patch +EXPORT_SYMBOL_GPL vmlinux 0x226fd638 inet_hash +EXPORT_SYMBOL_GPL vmlinux 0x227140b4 crypto_ahash_walk_first +EXPORT_SYMBOL_GPL vmlinux 0x227da6df scsi_autopm_get_device +EXPORT_SYMBOL_GPL vmlinux 0x2295c354 of_property_read_u64_index +EXPORT_SYMBOL_GPL vmlinux 0x229b77c1 snd_ctl_get_preferred_subdevice +EXPORT_SYMBOL_GPL vmlinux 0x22a52ab9 tracepoint_probe_unregister +EXPORT_SYMBOL_GPL vmlinux 0x22b8693d bgpio_init +EXPORT_SYMBOL_GPL vmlinux 0x22b8c536 devlink_port_params_unregister +EXPORT_SYMBOL_GPL vmlinux 0x22c2547a bus_unregister +EXPORT_SYMBOL_GPL vmlinux 0x22c50110 serdev_device_write_room +EXPORT_SYMBOL_GPL vmlinux 0x22d69a43 ping_rcv +EXPORT_SYMBOL_GPL vmlinux 0x22d75787 devm_extcon_dev_free +EXPORT_SYMBOL_GPL vmlinux 0x22d9409b iomap_sort_ioends +EXPORT_SYMBOL_GPL vmlinux 0x22e7bf25 pinctrl_dev_get_devname +EXPORT_SYMBOL_GPL vmlinux 0x22f767dd wm8350_read_auxadc +EXPORT_SYMBOL_GPL vmlinux 0x23134788 regulator_set_voltage_sel_regmap +EXPORT_SYMBOL_GPL vmlinux 0x2322b129 crypto_larval_kill +EXPORT_SYMBOL_GPL vmlinux 0x232e1d96 dev_attr_unload_heads +EXPORT_SYMBOL_GPL vmlinux 0x23362530 blk_mq_force_complete_rq +EXPORT_SYMBOL_GPL vmlinux 0x233e0154 rio_unregister_driver +EXPORT_SYMBOL_GPL vmlinux 0x23412816 rtc_tm_to_ktime +EXPORT_SYMBOL_GPL vmlinux 0x234af278 devm_reset_control_array_get +EXPORT_SYMBOL_GPL vmlinux 0x234cf416 devlink_fmsg_string_pair_put +EXPORT_SYMBOL_GPL vmlinux 0x2366c934 edac_get_sysfs_subsys +EXPORT_SYMBOL_GPL vmlinux 0x2380a2b9 bus_sort_breadthfirst +EXPORT_SYMBOL_GPL vmlinux 0x23835e7c pci_epf_free_space +EXPORT_SYMBOL_GPL vmlinux 0x23852145 badblocks_store +EXPORT_SYMBOL_GPL vmlinux 0x23864ce7 cpuset_mem_spread_node +EXPORT_SYMBOL_GPL vmlinux 0x23950433 efivar_variable_is_removable +EXPORT_SYMBOL_GPL vmlinux 0x2396c7f0 clk_set_parent +EXPORT_SYMBOL_GPL vmlinux 0x23b72eed vfs_cancel_lock +EXPORT_SYMBOL_GPL vmlinux 0x23dcc797 usb_gadget_vbus_connect +EXPORT_SYMBOL_GPL vmlinux 0x23f6c603 free_vm_area +EXPORT_SYMBOL_GPL vmlinux 0x241343eb fuse_dev_fiq_ops +EXPORT_SYMBOL_GPL vmlinux 0x2435f57b pm_clk_suspend +EXPORT_SYMBOL_GPL vmlinux 0x243f0b4b crypto_check_attr_type +EXPORT_SYMBOL_GPL vmlinux 0x2471f73f thermal_zone_unbind_cooling_device +EXPORT_SYMBOL_GPL vmlinux 0x24722b6a pm_schedule_suspend +EXPORT_SYMBOL_GPL vmlinux 0x24730cd2 gpiod_get_from_of_node +EXPORT_SYMBOL_GPL vmlinux 0x247c01df dev_pm_opp_set_regulators +EXPORT_SYMBOL_GPL vmlinux 0x247ef831 kdb_unregister +EXPORT_SYMBOL_GPL vmlinux 0x24868f2a md_kick_rdev_from_array +EXPORT_SYMBOL_GPL vmlinux 0x248a6d83 mtd_wunit_to_pairing_info +EXPORT_SYMBOL_GPL vmlinux 0x248c1527 sock_diag_save_cookie +EXPORT_SYMBOL_GPL vmlinux 0x24ad11db wakeup_sources_read_unlock +EXPORT_SYMBOL_GPL vmlinux 0x24b499e3 dw_pcie_wait_for_link +EXPORT_SYMBOL_GPL vmlinux 0x24ce2625 dev_pm_opp_put_clkname +EXPORT_SYMBOL_GPL vmlinux 0x24d176f4 debugfs_create_x32 +EXPORT_SYMBOL_GPL vmlinux 0x24da0093 rcu_inkernel_boot_has_ended +EXPORT_SYMBOL_GPL vmlinux 0x24e4ea2d tcp_unregister_congestion_control +EXPORT_SYMBOL_GPL vmlinux 0x24eb7e32 leds_list +EXPORT_SYMBOL_GPL vmlinux 0x24f39c39 reset_control_reset +EXPORT_SYMBOL_GPL vmlinux 0x24f63dcf ata_xfer_mask2mode +EXPORT_SYMBOL_GPL vmlinux 0x2526afdd cros_ec_check_features +EXPORT_SYMBOL_GPL vmlinux 0x25379e73 clk_set_min_rate +EXPORT_SYMBOL_GPL vmlinux 0x2539d534 dev_pm_enable_wake_irq +EXPORT_SYMBOL_GPL vmlinux 0x2541a979 snd_soc_calc_frame_size +EXPORT_SYMBOL_GPL vmlinux 0x25488d60 pci_vfs_assigned +EXPORT_SYMBOL_GPL vmlinux 0x25717301 sb800_prefetch +EXPORT_SYMBOL_GPL vmlinux 0x2581fdd0 snd_soc_dai_link_set_capabilities +EXPORT_SYMBOL_GPL vmlinux 0x2592fc6c console_printk +EXPORT_SYMBOL_GPL vmlinux 0x259b8438 regmap_parse_val +EXPORT_SYMBOL_GPL vmlinux 0x25a67f10 usb_wakeup_enabled_descendants +EXPORT_SYMBOL_GPL vmlinux 0x25a95026 pingv6_ops +EXPORT_SYMBOL_GPL vmlinux 0x25ae5c03 fsnotify_put_mark +EXPORT_SYMBOL_GPL vmlinux 0x25ae9e21 crypto_shash_tfm_digest +EXPORT_SYMBOL_GPL vmlinux 0x25c363d3 ata_bmdma_port_ops +EXPORT_SYMBOL_GPL vmlinux 0x25c4ee91 pci_set_pcie_reset_state +EXPORT_SYMBOL_GPL vmlinux 0x25c528c4 devm_extcon_dev_unregister +EXPORT_SYMBOL_GPL vmlinux 0x25f473fc devm_free_pages +EXPORT_SYMBOL_GPL vmlinux 0x25fee408 pci_remove_root_bus +EXPORT_SYMBOL_GPL vmlinux 0x26025fa0 dev_coredumpm +EXPORT_SYMBOL_GPL vmlinux 0x2613123f __sync_filesystem +EXPORT_SYMBOL_GPL vmlinux 0x261b6f7c tty_release_struct +EXPORT_SYMBOL_GPL vmlinux 0x262eba44 bd_unlink_disk_holder +EXPORT_SYMBOL_GPL vmlinux 0x2630938d ata_sas_queuecmd +EXPORT_SYMBOL_GPL vmlinux 0x2638586b xas_init_marks +EXPORT_SYMBOL_GPL vmlinux 0x2651442f pci_add_dynid +EXPORT_SYMBOL_GPL vmlinux 0x26520970 vm_memory_committed +EXPORT_SYMBOL_GPL vmlinux 0x265bbef9 kexec_crash_loaded +EXPORT_SYMBOL_GPL vmlinux 0x26776d9b of_reconfig_get_state_change +EXPORT_SYMBOL_GPL vmlinux 0x267df662 smp_call_on_cpu +EXPORT_SYMBOL_GPL vmlinux 0x269f02ed tty_prepare_flip_string +EXPORT_SYMBOL_GPL vmlinux 0x26a28b54 fixed_phy_register_with_gpiod +EXPORT_SYMBOL_GPL vmlinux 0x26a88021 thermal_of_cooling_device_register +EXPORT_SYMBOL_GPL vmlinux 0x26ab4755 put_old_itimerspec32 +EXPORT_SYMBOL_GPL vmlinux 0x26c547c0 bL_switcher_register_notifier +EXPORT_SYMBOL_GPL vmlinux 0x26c90ea4 scsi_eh_get_sense +EXPORT_SYMBOL_GPL vmlinux 0x26d43224 inet_unhash +EXPORT_SYMBOL_GPL vmlinux 0x26e5a13e __efivar_entry_delete +EXPORT_SYMBOL_GPL vmlinux 0x26ed2186 register_vmap_purge_notifier +EXPORT_SYMBOL_GPL vmlinux 0x2704548a of_clk_get_from_provider +EXPORT_SYMBOL_GPL vmlinux 0x2714c7a7 debugfs_create_x8 +EXPORT_SYMBOL_GPL vmlinux 0x2715e422 devlink_free +EXPORT_SYMBOL_GPL vmlinux 0x2729f989 fwnode_property_read_u32_array +EXPORT_SYMBOL_GPL vmlinux 0x272e9d77 hisi_reset_exit +EXPORT_SYMBOL_GPL vmlinux 0x2734197f musb_readb +EXPORT_SYMBOL_GPL vmlinux 0x2734aa90 tty_ldisc_release +EXPORT_SYMBOL_GPL vmlinux 0x274cf5e1 __clk_get_flags +EXPORT_SYMBOL_GPL vmlinux 0x2758d43b pci_set_host_bridge_release +EXPORT_SYMBOL_GPL vmlinux 0x2768ea27 extcon_register_notifier +EXPORT_SYMBOL_GPL vmlinux 0x278242d3 dapm_regulator_event +EXPORT_SYMBOL_GPL vmlinux 0x2793b061 lwtunnel_input +EXPORT_SYMBOL_GPL vmlinux 0x279c4d2a snd_soc_bytes_info +EXPORT_SYMBOL_GPL vmlinux 0x27a9b574 regcache_sync_region +EXPORT_SYMBOL_GPL vmlinux 0x27ad6158 extcon_find_edev_by_node +EXPORT_SYMBOL_GPL vmlinux 0x27bdfeaf ping_unhash +EXPORT_SYMBOL_GPL vmlinux 0x27d8cb68 ata_sff_softreset +EXPORT_SYMBOL_GPL vmlinux 0x27e699e0 regmap_mmio_attach_clk +EXPORT_SYMBOL_GPL vmlinux 0x27e8cbcb synth_event_trace_start +EXPORT_SYMBOL_GPL vmlinux 0x27ed0bc9 iomap_readahead +EXPORT_SYMBOL_GPL vmlinux 0x27f0568b ata_sas_port_init +EXPORT_SYMBOL_GPL vmlinux 0x27f4f029 ftrace_set_global_filter +EXPORT_SYMBOL_GPL vmlinux 0x27f61877 tps65912_regmap_config +EXPORT_SYMBOL_GPL vmlinux 0x27fa66e1 nr_free_buffer_pages +EXPORT_SYMBOL_GPL vmlinux 0x27fc95f6 raw_abort +EXPORT_SYMBOL_GPL vmlinux 0x2803b61d crypto_unregister_akcipher +EXPORT_SYMBOL_GPL vmlinux 0x2822c290 dma_buf_dynamic_attach +EXPORT_SYMBOL_GPL vmlinux 0x2826aaf0 skb_morph +EXPORT_SYMBOL_GPL vmlinux 0x2827bfb3 kill_pid_usb_asyncio +EXPORT_SYMBOL_GPL vmlinux 0x282aed60 rio_release_inb_pwrite +EXPORT_SYMBOL_GPL vmlinux 0x282b7d57 xas_clear_mark +EXPORT_SYMBOL_GPL vmlinux 0x282cdabc usb_led_activity +EXPORT_SYMBOL_GPL vmlinux 0x283795f7 bpf_prog_inc_not_zero +EXPORT_SYMBOL_GPL vmlinux 0x2840a437 perf_event_disable +EXPORT_SYMBOL_GPL vmlinux 0x285548b7 mtk_pinconf_bias_set_rev1 +EXPORT_SYMBOL_GPL vmlinux 0x285bc9a9 of_phy_simple_xlate +EXPORT_SYMBOL_GPL vmlinux 0x2864abc9 klist_node_attached +EXPORT_SYMBOL_GPL vmlinux 0x286cc647 async_synchronize_cookie_domain +EXPORT_SYMBOL_GPL vmlinux 0x2882d40e usb_role_switch_unregister +EXPORT_SYMBOL_GPL vmlinux 0x289543ad mtd_ooblayout_get_databytes +EXPORT_SYMBOL_GPL vmlinux 0x289aadb1 ima_file_hash +EXPORT_SYMBOL_GPL vmlinux 0x289cd2f4 task_cgroup_path +EXPORT_SYMBOL_GPL vmlinux 0x28a2d4f1 vc_scrolldelta_helper +EXPORT_SYMBOL_GPL vmlinux 0x28aa6a67 call_rcu +EXPORT_SYMBOL_GPL vmlinux 0x28ab4fb9 pinctrl_gpio_free +EXPORT_SYMBOL_GPL vmlinux 0x28b030d2 of_overlay_notifier_unregister +EXPORT_SYMBOL_GPL vmlinux 0x28bcb906 inet6_sk_rebuild_header +EXPORT_SYMBOL_GPL vmlinux 0x28c3a2e2 phy_configure +EXPORT_SYMBOL_GPL vmlinux 0x28da1c49 efivar_entry_set +EXPORT_SYMBOL_GPL vmlinux 0x28fa4788 pinctrl_find_gpio_range_from_pin_nolock +EXPORT_SYMBOL_GPL vmlinux 0x29231498 dev_pm_opp_unregister_set_opp_helper +EXPORT_SYMBOL_GPL vmlinux 0x293b7f2b iommu_aux_detach_device +EXPORT_SYMBOL_GPL vmlinux 0x293c2cfb devm_usb_get_phy_by_phandle +EXPORT_SYMBOL_GPL vmlinux 0x294816d5 dev_pm_get_subsys_data +EXPORT_SYMBOL_GPL vmlinux 0x2953a22b clk_hw_get_flags +EXPORT_SYMBOL_GPL vmlinux 0x295a2670 clk_regmap_divider_ro_ops +EXPORT_SYMBOL_GPL vmlinux 0x295b982a hisi_clk_register_fixed_rate +EXPORT_SYMBOL_GPL vmlinux 0x296fe755 pm_clk_remove_clk +EXPORT_SYMBOL_GPL vmlinux 0x2972cbbc class_interface_unregister +EXPORT_SYMBOL_GPL vmlinux 0x29743665 usb_get_maximum_speed +EXPORT_SYMBOL_GPL vmlinux 0x297ced47 pm_generic_poweroff_late +EXPORT_SYMBOL_GPL vmlinux 0x29899c62 component_master_add_with_match +EXPORT_SYMBOL_GPL vmlinux 0x298b7d49 of_genpd_parse_idle_states +EXPORT_SYMBOL_GPL vmlinux 0x2995ac36 usb_match_id +EXPORT_SYMBOL_GPL vmlinux 0x29b945e8 ata_sas_scsi_ioctl +EXPORT_SYMBOL_GPL vmlinux 0x29cf2470 rdma_cgrp_subsys_enabled_key +EXPORT_SYMBOL_GPL vmlinux 0x29eba37f current_is_async +EXPORT_SYMBOL_GPL vmlinux 0x2a050f9d cs47l24_patch +EXPORT_SYMBOL_GPL vmlinux 0x2a0a40fa mdio_bus_init +EXPORT_SYMBOL_GPL vmlinux 0x2a2aea17 clk_fixed_rate_ops +EXPORT_SYMBOL_GPL vmlinux 0x2a2c4f88 page_mkclean +EXPORT_SYMBOL_GPL vmlinux 0x2a32131e wm5102_spi_regmap +EXPORT_SYMBOL_GPL vmlinux 0x2a35ad48 musb_interrupt +EXPORT_SYMBOL_GPL vmlinux 0x2a3e255d __clk_determine_rate +EXPORT_SYMBOL_GPL vmlinux 0x2a414634 __ip6_local_out +EXPORT_SYMBOL_GPL vmlinux 0x2a58b049 irq_domain_get_irq_data +EXPORT_SYMBOL_GPL vmlinux 0x2a62cb3a ring_buffer_overrun_cpu +EXPORT_SYMBOL_GPL vmlinux 0x2a635b90 scsi_get_vpd_page +EXPORT_SYMBOL_GPL vmlinux 0x2a65821b usb_gadget_connect +EXPORT_SYMBOL_GPL vmlinux 0x2a678a13 __suspend_report_result +EXPORT_SYMBOL_GPL vmlinux 0x2a911833 scmi_protocol_register +EXPORT_SYMBOL_GPL vmlinux 0x2a9dea87 device_get_phy_mode +EXPORT_SYMBOL_GPL vmlinux 0x2acdf766 pwm_capture +EXPORT_SYMBOL_GPL vmlinux 0x2ad13b11 nand_select_target +EXPORT_SYMBOL_GPL vmlinux 0x2ad3232c usb_get_hcd +EXPORT_SYMBOL_GPL vmlinux 0x2adbb1ba mddev_init_writes_pending +EXPORT_SYMBOL_GPL vmlinux 0x2ae31ddc ata_sff_error_handler +EXPORT_SYMBOL_GPL vmlinux 0x2b129555 ping_seq_start +EXPORT_SYMBOL_GPL vmlinux 0x2b1483d9 dma_get_slave_channel +EXPORT_SYMBOL_GPL vmlinux 0x2b3adc76 phy_start_machine +EXPORT_SYMBOL_GPL vmlinux 0x2b4151e7 request_firmware_direct +EXPORT_SYMBOL_GPL vmlinux 0x2b4509dd devlink_health_reporter_state_update +EXPORT_SYMBOL_GPL vmlinux 0x2b5c81a5 snd_soc_lookup_component_nolocked +EXPORT_SYMBOL_GPL vmlinux 0x2b614135 da903x_register_notifier +EXPORT_SYMBOL_GPL vmlinux 0x2b6150fb power_supply_temp2resist_simple +EXPORT_SYMBOL_GPL vmlinux 0x2b6197ff devm_gpio_request_one +EXPORT_SYMBOL_GPL vmlinux 0x2b717ab2 dev_pm_disable_wake_irq +EXPORT_SYMBOL_GPL vmlinux 0x2b7da827 dm_put +EXPORT_SYMBOL_GPL vmlinux 0x2b854389 percpu_down_write +EXPORT_SYMBOL_GPL vmlinux 0x2b952517 clk_has_parent +EXPORT_SYMBOL_GPL vmlinux 0x2ba9c5a3 tps80031_ext_power_req_config +EXPORT_SYMBOL_GPL vmlinux 0x2bb910b4 pci_epc_clear_bar +EXPORT_SYMBOL_GPL vmlinux 0x2bd1efd5 sysfs_create_files +EXPORT_SYMBOL_GPL vmlinux 0x2bd5f163 phy_power_off +EXPORT_SYMBOL_GPL vmlinux 0x2be5030f copy_to_user_nofault +EXPORT_SYMBOL_GPL vmlinux 0x2bf56747 power_supply_set_input_current_limit_from_supplier +EXPORT_SYMBOL_GPL vmlinux 0x2bf8d3a3 led_trigger_write +EXPORT_SYMBOL_GPL vmlinux 0x2c0bd60d arizona_clk32k_disable +EXPORT_SYMBOL_GPL vmlinux 0x2c208607 power_supply_is_system_supplied +EXPORT_SYMBOL_GPL vmlinux 0x2c3054f9 net_inc_ingress_queue +EXPORT_SYMBOL_GPL vmlinux 0x2c32a13f of_phy_put +EXPORT_SYMBOL_GPL vmlinux 0x2c3a2d13 usb_add_gadget_udc +EXPORT_SYMBOL_GPL vmlinux 0x2c3d9a6c clk_mux_determine_rate_flags +EXPORT_SYMBOL_GPL vmlinux 0x2c5b8db9 of_i2c_get_board_info +EXPORT_SYMBOL_GPL vmlinux 0x2c5fbbc8 fwnode_get_named_gpiod +EXPORT_SYMBOL_GPL vmlinux 0x2c6208ee serial8250_rpm_get +EXPORT_SYMBOL_GPL vmlinux 0x2c66ac85 devlink_info_serial_number_put +EXPORT_SYMBOL_GPL vmlinux 0x2c7db649 irq_dispose_mapping +EXPORT_SYMBOL_GPL vmlinux 0x2c8dd6b8 edac_mem_types +EXPORT_SYMBOL_GPL vmlinux 0x2c97f8a2 of_reconfig_notifier_register +EXPORT_SYMBOL_GPL vmlinux 0x2ca378d0 is_software_node +EXPORT_SYMBOL_GPL vmlinux 0x2ca4d5dc vring_new_virtqueue +EXPORT_SYMBOL_GPL vmlinux 0x2cb09e4e irq_set_chained_handler_and_data +EXPORT_SYMBOL_GPL vmlinux 0x2cb1e454 sata_link_debounce +EXPORT_SYMBOL_GPL vmlinux 0x2cd26e42 ref_module +EXPORT_SYMBOL_GPL vmlinux 0x2cea32ee unregister_oldmem_pfn_is_ram +EXPORT_SYMBOL_GPL vmlinux 0x2cfa6e11 pinctrl_get_group_pins +EXPORT_SYMBOL_GPL vmlinux 0x2d01fb5c modify_user_hw_breakpoint +EXPORT_SYMBOL_GPL vmlinux 0x2d1b02d2 usermodehelper_read_lock_wait +EXPORT_SYMBOL_GPL vmlinux 0x2d1bc4cd fat_fill_super +EXPORT_SYMBOL_GPL vmlinux 0x2d2dd36f kobj_ns_grab_current +EXPORT_SYMBOL_GPL vmlinux 0x2d2f77b1 led_put +EXPORT_SYMBOL_GPL vmlinux 0x2d3409d3 __pm_relax +EXPORT_SYMBOL_GPL vmlinux 0x2d368c4c nand_subop_get_addr_start_off +EXPORT_SYMBOL_GPL vmlinux 0x2d396e38 of_property_count_elems_of_size +EXPORT_SYMBOL_GPL vmlinux 0x2d3dd196 tcp_ca_get_key_by_name +EXPORT_SYMBOL_GPL vmlinux 0x2d41e6f5 __trace_puts +EXPORT_SYMBOL_GPL vmlinux 0x2d6422eb iomap_file_buffered_write +EXPORT_SYMBOL_GPL vmlinux 0x2d928dd4 snd_soc_dapm_get_pin_switch +EXPORT_SYMBOL_GPL vmlinux 0x2d9536a0 spi_statistics_add_transfer_stats +EXPORT_SYMBOL_GPL vmlinux 0x2daa2177 x509_free_certificate +EXPORT_SYMBOL_GPL vmlinux 0x2db67d4a owl_sps_set_pg +EXPORT_SYMBOL_GPL vmlinux 0x2dfcda0b gpiod_set_raw_value_cansleep +EXPORT_SYMBOL_GPL vmlinux 0x2e028ae6 rcutorture_get_gp_data +EXPORT_SYMBOL_GPL vmlinux 0x2e2360b1 ftrace_set_global_notrace +EXPORT_SYMBOL_GPL vmlinux 0x2e24265b dev_pm_qos_expose_latency_limit +EXPORT_SYMBOL_GPL vmlinux 0x2e30509c percpu_ref_switch_to_atomic +EXPORT_SYMBOL_GPL vmlinux 0x2e312baf fwnode_count_parents +EXPORT_SYMBOL_GPL vmlinux 0x2e358ece mmc_sanitize +EXPORT_SYMBOL_GPL vmlinux 0x2e3696c0 blk_mq_virtio_map_queues +EXPORT_SYMBOL_GPL vmlinux 0x2e3a88d0 max8997_bulk_read +EXPORT_SYMBOL_GPL vmlinux 0x2e4261f6 snmp_get_cpu_field64 +EXPORT_SYMBOL_GPL vmlinux 0x2e5a65d2 iommu_dev_has_feature +EXPORT_SYMBOL_GPL vmlinux 0x2e957432 ahci_platform_ops +EXPORT_SYMBOL_GPL vmlinux 0x2e9b3bef dev_pm_opp_enable +EXPORT_SYMBOL_GPL vmlinux 0x2e9fdbab sata_scr_read +EXPORT_SYMBOL_GPL vmlinux 0x2ea11a90 __pm_runtime_use_autosuspend +EXPORT_SYMBOL_GPL vmlinux 0x2ea2d6a9 mtk_smi_larb_get +EXPORT_SYMBOL_GPL vmlinux 0x2ebe3135 cpu_is_hotpluggable +EXPORT_SYMBOL_GPL vmlinux 0x2ec25f13 __devm_reset_control_get +EXPORT_SYMBOL_GPL vmlinux 0x2ecd7309 crypto_alloc_akcipher +EXPORT_SYMBOL_GPL vmlinux 0x2edb1ff0 phy_restart_aneg +EXPORT_SYMBOL_GPL vmlinux 0x2ee043c0 genphy_c45_pma_read_abilities +EXPORT_SYMBOL_GPL vmlinux 0x2ee1a9f3 usb_unanchor_urb +EXPORT_SYMBOL_GPL vmlinux 0x2efa7b42 regmap_get_val_bytes +EXPORT_SYMBOL_GPL vmlinux 0x2efdb7d2 snd_soc_of_parse_audio_simple_widgets +EXPORT_SYMBOL_GPL vmlinux 0x2efe512c sk_psock_drop +EXPORT_SYMBOL_GPL vmlinux 0x2f0d9053 usb_otg_state_string +EXPORT_SYMBOL_GPL vmlinux 0x2f25afef kstrdup_quotable_file +EXPORT_SYMBOL_GPL vmlinux 0x2f272bca pci_generic_config_write +EXPORT_SYMBOL_GPL vmlinux 0x2f355c05 snd_soc_of_parse_audio_routing +EXPORT_SYMBOL_GPL vmlinux 0x2f3b9d6f bpf_offload_dev_netdev_unregister +EXPORT_SYMBOL_GPL vmlinux 0x2f4113a2 dcookie_register +EXPORT_SYMBOL_GPL vmlinux 0x2f46fcb3 __devm_of_phy_provider_register +EXPORT_SYMBOL_GPL vmlinux 0x2f4dc771 mbox_free_channel +EXPORT_SYMBOL_GPL vmlinux 0x2f5c1223 __tracepoint_neigh_cleanup_and_release +EXPORT_SYMBOL_GPL vmlinux 0x2f63e634 usb_poison_anchored_urbs +EXPORT_SYMBOL_GPL vmlinux 0x2f65f1a1 ahci_stop_engine +EXPORT_SYMBOL_GPL vmlinux 0x2f85a9a3 usb_sg_cancel +EXPORT_SYMBOL_GPL vmlinux 0x2f87d601 perf_aux_output_flag +EXPORT_SYMBOL_GPL vmlinux 0x2f895416 vbin_printf +EXPORT_SYMBOL_GPL vmlinux 0x2f91815f skb_send_sock_locked +EXPORT_SYMBOL_GPL vmlinux 0x2f9278da pci_generic_config_read +EXPORT_SYMBOL_GPL vmlinux 0x2f967a7a debugfs_create_u32_array +EXPORT_SYMBOL_GPL vmlinux 0x2fade0be synth_event_add_field +EXPORT_SYMBOL_GPL vmlinux 0x2fb78063 regmap_multi_reg_write_bypassed +EXPORT_SYMBOL_GPL vmlinux 0x2fc98045 rdev_get_drvdata +EXPORT_SYMBOL_GPL vmlinux 0x2fd849a1 synth_event_trace +EXPORT_SYMBOL_GPL vmlinux 0x2fdce39f netdev_is_rx_handler_busy +EXPORT_SYMBOL_GPL vmlinux 0x2fe97a6c event_triggers_post_call +EXPORT_SYMBOL_GPL vmlinux 0x2feadf37 thermal_zone_device_register +EXPORT_SYMBOL_GPL vmlinux 0x2fee2993 __root_device_register +EXPORT_SYMBOL_GPL vmlinux 0x30096d57 insert_resource +EXPORT_SYMBOL_GPL vmlinux 0x301bbf5b devm_gpiod_put_array +EXPORT_SYMBOL_GPL vmlinux 0x3021656e pci_disable_ats +EXPORT_SYMBOL_GPL vmlinux 0x302a794a dm_internal_resume_fast +EXPORT_SYMBOL_GPL vmlinux 0x30341ca6 mpc8xxx_spi_rx_buf_u32 +EXPORT_SYMBOL_GPL vmlinux 0x303db38e snd_soc_tplg_component_remove +EXPORT_SYMBOL_GPL vmlinux 0x3061cfce ring_buffer_entries_cpu +EXPORT_SYMBOL_GPL vmlinux 0x3067d2db dev_pm_opp_get_freq +EXPORT_SYMBOL_GPL vmlinux 0x30693bb7 imx_audmux_v1_configure_port +EXPORT_SYMBOL_GPL vmlinux 0x3069809a __tracepoint_xhci_dbg_quirks +EXPORT_SYMBOL_GPL vmlinux 0x3069e46b scatterwalk_copychunks +EXPORT_SYMBOL_GPL vmlinux 0x30741085 sched_trace_rd_span +EXPORT_SYMBOL_GPL vmlinux 0x307825fe dst_cache_get +EXPORT_SYMBOL_GPL vmlinux 0x307c8965 snd_soc_info_enum_double +EXPORT_SYMBOL_GPL vmlinux 0x3080ba85 __hwspin_lock_timeout +EXPORT_SYMBOL_GPL vmlinux 0x30810187 of_irq_to_resource +EXPORT_SYMBOL_GPL vmlinux 0x30817266 rtnl_put_cacheinfo +EXPORT_SYMBOL_GPL vmlinux 0x30a2b5f5 cpuacct_cgrp_subsys_enabled_key +EXPORT_SYMBOL_GPL vmlinux 0x30b34968 tcp_register_congestion_control +EXPORT_SYMBOL_GPL vmlinux 0x30bd8cbf kernel_read_file_from_path +EXPORT_SYMBOL_GPL vmlinux 0x30c3928d icc_node_del +EXPORT_SYMBOL_GPL vmlinux 0x30d6deb3 rt_mutex_timed_lock +EXPORT_SYMBOL_GPL vmlinux 0x30df795a dw_pcie_ep_init_complete +EXPORT_SYMBOL_GPL vmlinux 0x30eaa9ad of_clk_set_defaults +EXPORT_SYMBOL_GPL vmlinux 0x31138e67 __get_task_comm +EXPORT_SYMBOL_GPL vmlinux 0x311a826f dw_pcie_ep_linkup +EXPORT_SYMBOL_GPL vmlinux 0x311ab1ee pci_find_next_capability +EXPORT_SYMBOL_GPL vmlinux 0x31266931 con_debug_leave +EXPORT_SYMBOL_GPL vmlinux 0x31277254 ata_scsi_queuecmd +EXPORT_SYMBOL_GPL vmlinux 0x31290304 pci_epc_linkup +EXPORT_SYMBOL_GPL vmlinux 0x313549e2 crypto_unregister_acomp +EXPORT_SYMBOL_GPL vmlinux 0x314ab954 snd_soc_component_init_regmap +EXPORT_SYMBOL_GPL vmlinux 0x314e33b2 udp6_lib_lookup_skb +EXPORT_SYMBOL_GPL vmlinux 0x3161efff shmem_file_setup +EXPORT_SYMBOL_GPL vmlinux 0x3166b150 ata_msleep +EXPORT_SYMBOL_GPL vmlinux 0x316b1d03 devm_led_classdev_register_ext +EXPORT_SYMBOL_GPL vmlinux 0x317e7be6 bpf_map_inc_with_uref +EXPORT_SYMBOL_GPL vmlinux 0x31861f82 arizona_of_get_type +EXPORT_SYMBOL_GPL vmlinux 0x318911e1 i2c_new_smbus_alert_device +EXPORT_SYMBOL_GPL vmlinux 0x318ab2b0 sysfs_add_link_to_group +EXPORT_SYMBOL_GPL vmlinux 0x3192d768 cpufreq_remove_update_util_hook +EXPORT_SYMBOL_GPL vmlinux 0x3195d903 pinmux_generic_get_function_name +EXPORT_SYMBOL_GPL vmlinux 0x3198367b dev_pm_opp_set_prop_name +EXPORT_SYMBOL_GPL vmlinux 0x31a95e8b ring_buffer_record_enable_cpu +EXPORT_SYMBOL_GPL vmlinux 0x31b0aa77 kobject_rename +EXPORT_SYMBOL_GPL vmlinux 0x31c4084a phy_optional_get +EXPORT_SYMBOL_GPL vmlinux 0x31c7970f pciserial_suspend_ports +EXPORT_SYMBOL_GPL vmlinux 0x31e7d27f devlink_resource_register +EXPORT_SYMBOL_GPL vmlinux 0x31eaa3cc genphy_c45_check_and_restart_aneg +EXPORT_SYMBOL_GPL vmlinux 0x3202dfdb clk_hw_set_parent +EXPORT_SYMBOL_GPL vmlinux 0x32032dca vchan_tx_desc_free +EXPORT_SYMBOL_GPL vmlinux 0x3236a1c5 lwtunnel_fill_encap +EXPORT_SYMBOL_GPL vmlinux 0x32474e82 devm_nvmem_cell_get +EXPORT_SYMBOL_GPL vmlinux 0x3250ace6 wm8350_reg_lock +EXPORT_SYMBOL_GPL vmlinux 0x3251cf0b watchdog_notify_pretimeout +EXPORT_SYMBOL_GPL vmlinux 0x3269fc70 perf_event_addr_filters_sync +EXPORT_SYMBOL_GPL vmlinux 0x327217db virtqueue_add_inbuf_ctx +EXPORT_SYMBOL_GPL vmlinux 0x327d0940 mtd_get_device_size +EXPORT_SYMBOL_GPL vmlinux 0x32843893 lwtunnel_build_state +EXPORT_SYMBOL_GPL vmlinux 0x328c3f24 irq_create_mapping_affinity +EXPORT_SYMBOL_GPL vmlinux 0x329dde80 devm_free_percpu +EXPORT_SYMBOL_GPL vmlinux 0x32a3a61d tpm2_flush_context +EXPORT_SYMBOL_GPL vmlinux 0x32ab06cc irq_percpu_is_enabled +EXPORT_SYMBOL_GPL vmlinux 0x32aea289 blk_mq_sched_try_merge +EXPORT_SYMBOL_GPL vmlinux 0x32baba03 unregister_trace_event +EXPORT_SYMBOL_GPL vmlinux 0x32c3cb4e class_compat_register +EXPORT_SYMBOL_GPL vmlinux 0x32ce5f4f srcu_batches_completed +EXPORT_SYMBOL_GPL vmlinux 0x32e0a587 nand_reset_op +EXPORT_SYMBOL_GPL vmlinux 0x32e97898 i2c_dw_probe_master +EXPORT_SYMBOL_GPL vmlinux 0x32ee45a2 netdev_walk_all_lower_dev_rcu +EXPORT_SYMBOL_GPL vmlinux 0x3308a544 sdhci_set_clock +EXPORT_SYMBOL_GPL vmlinux 0x330b10ab snd_soc_set_dmi_name +EXPORT_SYMBOL_GPL vmlinux 0x3312a640 icc_disable +EXPORT_SYMBOL_GPL vmlinux 0x331c387e ata_sas_port_resume +EXPORT_SYMBOL_GPL vmlinux 0x3323b3f0 usb_gadget_disconnect +EXPORT_SYMBOL_GPL vmlinux 0x3335ae32 freq_qos_update_request +EXPORT_SYMBOL_GPL vmlinux 0x33379c32 i2c_of_match_device +EXPORT_SYMBOL_GPL vmlinux 0x33425cdb __pneigh_lookup +EXPORT_SYMBOL_GPL vmlinux 0x334afab6 irq_domain_add_simple +EXPORT_SYMBOL_GPL vmlinux 0x334bb729 tcp_cong_avoid_ai +EXPORT_SYMBOL_GPL vmlinux 0x3359e8d5 iomap_dio_rw +EXPORT_SYMBOL_GPL vmlinux 0x335c570f enable_percpu_irq +EXPORT_SYMBOL_GPL vmlinux 0x336a2d50 proc_create_net_single +EXPORT_SYMBOL_GPL vmlinux 0x33708be0 blk_mq_start_stopped_hw_queue +EXPORT_SYMBOL_GPL vmlinux 0x3396d735 key_type_user +EXPORT_SYMBOL_GPL vmlinux 0x33a0faff devlink_alloc +EXPORT_SYMBOL_GPL vmlinux 0x33b1b935 usb_block_urb +EXPORT_SYMBOL_GPL vmlinux 0x33b46aa6 uart_parse_earlycon +EXPORT_SYMBOL_GPL vmlinux 0x33c23a6a tpm_get_random +EXPORT_SYMBOL_GPL vmlinux 0x33cd2cd6 cpu_latency_qos_update_request +EXPORT_SYMBOL_GPL vmlinux 0x33d0d73f devm_phy_get +EXPORT_SYMBOL_GPL vmlinux 0x33dbf7ff device_link_add +EXPORT_SYMBOL_GPL vmlinux 0x33dffe93 regmap_mmio_detach_clk +EXPORT_SYMBOL_GPL vmlinux 0x33e87c14 blk_set_queue_dying +EXPORT_SYMBOL_GPL vmlinux 0x33e9e0a2 atomic_notifier_chain_register +EXPORT_SYMBOL_GPL vmlinux 0x33efc8c8 trace_clock_local +EXPORT_SYMBOL_GPL vmlinux 0x3409f680 pci_epc_destroy +EXPORT_SYMBOL_GPL vmlinux 0x340d96fe transport_remove_device +EXPORT_SYMBOL_GPL vmlinux 0x3421d068 da903x_read +EXPORT_SYMBOL_GPL vmlinux 0x34276189 ata_host_suspend +EXPORT_SYMBOL_GPL vmlinux 0x342c4c9d soc_ac97_ops +EXPORT_SYMBOL_GPL vmlinux 0x34327a8f unregister_mtd_user +EXPORT_SYMBOL_GPL vmlinux 0x34407691 crypto_has_ahash +EXPORT_SYMBOL_GPL vmlinux 0x34420d02 spi_busnum_to_master +EXPORT_SYMBOL_GPL vmlinux 0x3451949a unregister_virtio_device +EXPORT_SYMBOL_GPL vmlinux 0x345194eb get_device +EXPORT_SYMBOL_GPL vmlinux 0x345c40e6 crypto_register_shashes +EXPORT_SYMBOL_GPL vmlinux 0x3461ba36 usb_bus_idr +EXPORT_SYMBOL_GPL vmlinux 0x3480f7ee cpuidle_unregister +EXPORT_SYMBOL_GPL vmlinux 0x348195fb iomap_bmap +EXPORT_SYMBOL_GPL vmlinux 0x34908579 sbitmap_finish_wait +EXPORT_SYMBOL_GPL vmlinux 0x3492aa45 crypto_stats_akcipher_decrypt +EXPORT_SYMBOL_GPL vmlinux 0x34931725 fat_scan +EXPORT_SYMBOL_GPL vmlinux 0x34956a20 relay_open +EXPORT_SYMBOL_GPL vmlinux 0x34a84df3 __tracepoint_detach_device_from_domain +EXPORT_SYMBOL_GPL vmlinux 0x34ac50a4 visitorl +EXPORT_SYMBOL_GPL vmlinux 0x34ad66a5 get_user_pages_fast +EXPORT_SYMBOL_GPL vmlinux 0x34ae9a75 crypto_hash_walk_first +EXPORT_SYMBOL_GPL vmlinux 0x34f4161f ata_pci_shutdown_one +EXPORT_SYMBOL_GPL vmlinux 0x34f4f5fe device_move +EXPORT_SYMBOL_GPL vmlinux 0x34f68122 rio_add_mport_pw_handler +EXPORT_SYMBOL_GPL vmlinux 0x34fcda68 devm_remove_action +EXPORT_SYMBOL_GPL vmlinux 0x3503a146 md_allow_write +EXPORT_SYMBOL_GPL vmlinux 0x352b3813 maxim_charger_calc_reg_current +EXPORT_SYMBOL_GPL vmlinux 0x352ec68b bpf_offload_dev_destroy +EXPORT_SYMBOL_GPL vmlinux 0x35372ec1 of_icc_xlate_onecell +EXPORT_SYMBOL_GPL vmlinux 0x3540ea11 of_get_display_timing +EXPORT_SYMBOL_GPL vmlinux 0x354ac51d fsnotify_destroy_mark +EXPORT_SYMBOL_GPL vmlinux 0x3569ae72 sched_setscheduler_nocheck +EXPORT_SYMBOL_GPL vmlinux 0x3571a723 skcipher_walk_async +EXPORT_SYMBOL_GPL vmlinux 0x3572f33c serial8250_release_dma +EXPORT_SYMBOL_GPL vmlinux 0x357a3470 hwspin_lock_free +EXPORT_SYMBOL_GPL vmlinux 0x357d361a mmu_interval_notifier_insert_locked +EXPORT_SYMBOL_GPL vmlinux 0x358ff60f twl_get_hfclk_rate +EXPORT_SYMBOL_GPL vmlinux 0x35996de4 em_register_perf_domain +EXPORT_SYMBOL_GPL vmlinux 0x35abe8a5 rockchip_pcie_parse_dt +EXPORT_SYMBOL_GPL vmlinux 0x35b2f5d5 simple_attr_open +EXPORT_SYMBOL_GPL vmlinux 0x35be8cfc of_pci_parse_bus_range +EXPORT_SYMBOL_GPL vmlinux 0x35d2494e crypto_alg_extsize +EXPORT_SYMBOL_GPL vmlinux 0x35d89216 nanddev_bbt_set_block_status +EXPORT_SYMBOL_GPL vmlinux 0x35e25a8a bpf_prog_create_from_user +EXPORT_SYMBOL_GPL vmlinux 0x36075bb5 iommu_group_register_notifier +EXPORT_SYMBOL_GPL vmlinux 0x361878c1 devlink_trap_policers_register +EXPORT_SYMBOL_GPL vmlinux 0x36242943 switchdev_deferred_process +EXPORT_SYMBOL_GPL vmlinux 0x362d7a08 regmap_irq_get_domain +EXPORT_SYMBOL_GPL vmlinux 0x362de961 rhashtable_free_and_destroy +EXPORT_SYMBOL_GPL vmlinux 0x363a49dd ata_bmdma32_port_ops +EXPORT_SYMBOL_GPL vmlinux 0x3641b51d snd_soc_link_compr_startup +EXPORT_SYMBOL_GPL vmlinux 0x3649c417 dma_buf_mmap +EXPORT_SYMBOL_GPL vmlinux 0x364e9a9a regmap_field_update_bits_base +EXPORT_SYMBOL_GPL vmlinux 0x3680e970 cgroup_get_from_path +EXPORT_SYMBOL_GPL vmlinux 0x369fcd70 tracing_snapshot +EXPORT_SYMBOL_GPL vmlinux 0x36ba9ad9 __class_register +EXPORT_SYMBOL_GPL vmlinux 0x36c98c77 con_debug_enter +EXPORT_SYMBOL_GPL vmlinux 0x36dc0a57 of_get_required_opp_performance_state +EXPORT_SYMBOL_GPL vmlinux 0x36dc95cf sm501_find_clock +EXPORT_SYMBOL_GPL vmlinux 0x36e1a080 crypto_drop_spawn +EXPORT_SYMBOL_GPL vmlinux 0x36ec8a8a nvmem_device_cell_read +EXPORT_SYMBOL_GPL vmlinux 0x370a48ad sysfs_chmod_file +EXPORT_SYMBOL_GPL vmlinux 0x37291365 ata_host_init +EXPORT_SYMBOL_GPL vmlinux 0x372e0e66 bpf_prog_sub +EXPORT_SYMBOL_GPL vmlinux 0x372f985e set_cpus_allowed_ptr +EXPORT_SYMBOL_GPL vmlinux 0x3731047e metadata_dst_free +EXPORT_SYMBOL_GPL vmlinux 0x37318197 sata_set_spd +EXPORT_SYMBOL_GPL vmlinux 0x3734ab16 syscon_regmap_lookup_by_phandle +EXPORT_SYMBOL_GPL vmlinux 0x3737e671 pm_generic_resume_early +EXPORT_SYMBOL_GPL vmlinux 0x37387662 put_device +EXPORT_SYMBOL_GPL vmlinux 0x374c53e1 ata_get_cmd_descript +EXPORT_SYMBOL_GPL vmlinux 0x37595cb3 meson_clk_mpll_ops +EXPORT_SYMBOL_GPL vmlinux 0x375dbb85 iommu_domain_alloc +EXPORT_SYMBOL_GPL vmlinux 0x377bbcbc pm_suspend_target_state +EXPORT_SYMBOL_GPL vmlinux 0x37a1a2b5 sysfs_unmerge_group +EXPORT_SYMBOL_GPL vmlinux 0x37ba93b2 pinctrl_select_default_state +EXPORT_SYMBOL_GPL vmlinux 0x37bc0f74 clk_gate_restore_context +EXPORT_SYMBOL_GPL vmlinux 0x37c0f2e1 debugfs_create_u16 +EXPORT_SYMBOL_GPL vmlinux 0x37d599fd power_supply_get_by_name +EXPORT_SYMBOL_GPL vmlinux 0x37f47436 pci_ioremap_wc_bar +EXPORT_SYMBOL_GPL vmlinux 0x3809bac4 of_property_match_string +EXPORT_SYMBOL_GPL vmlinux 0x3814929f pci_device_group +EXPORT_SYMBOL_GPL vmlinux 0x38158ec5 __inet_lookup_established +EXPORT_SYMBOL_GPL vmlinux 0x381cf502 usb_driver_release_interface +EXPORT_SYMBOL_GPL vmlinux 0x38236b31 crypto_register_skciphers +EXPORT_SYMBOL_GPL vmlinux 0x38316a51 phy_speed_down +EXPORT_SYMBOL_GPL vmlinux 0x3833be81 aead_register_instance +EXPORT_SYMBOL_GPL vmlinux 0x38374815 clear_selection +EXPORT_SYMBOL_GPL vmlinux 0x3841419e blk_queue_write_cache +EXPORT_SYMBOL_GPL vmlinux 0x3854f2f3 class_find_device +EXPORT_SYMBOL_GPL vmlinux 0x385e1148 usb_add_phy +EXPORT_SYMBOL_GPL vmlinux 0x387405ba fwnode_property_match_string +EXPORT_SYMBOL_GPL vmlinux 0x3892f645 subsys_dev_iter_exit +EXPORT_SYMBOL_GPL vmlinux 0x38935d4f nvmem_cell_get +EXPORT_SYMBOL_GPL vmlinux 0x389f797a inverse_translate +EXPORT_SYMBOL_GPL vmlinux 0x38a9c2c7 input_ff_effect_from_user +EXPORT_SYMBOL_GPL vmlinux 0x38aa1397 gpiod_add_lookup_table +EXPORT_SYMBOL_GPL vmlinux 0x38aa4657 xas_nomem +EXPORT_SYMBOL_GPL vmlinux 0x38aa5bfd snd_ac97_reset +EXPORT_SYMBOL_GPL vmlinux 0x38afe804 regulator_map_voltage_iterate +EXPORT_SYMBOL_GPL vmlinux 0x38b15ec8 crypto_unregister_rng +EXPORT_SYMBOL_GPL vmlinux 0x38b5b5a7 devlink_flash_update_status_notify +EXPORT_SYMBOL_GPL vmlinux 0x38c0c9e4 btree_update +EXPORT_SYMBOL_GPL vmlinux 0x38c6397a dev_pm_qos_add_ancestor_request +EXPORT_SYMBOL_GPL vmlinux 0x38c8c29a fb_deferred_io_fsync +EXPORT_SYMBOL_GPL vmlinux 0x38d4f511 pm_runtime_enable +EXPORT_SYMBOL_GPL vmlinux 0x38d64028 trace_seq_vprintf +EXPORT_SYMBOL_GPL vmlinux 0x38e45a86 syscon_node_to_regmap +EXPORT_SYMBOL_GPL vmlinux 0x38e5bc5a clk_set_rate_range +EXPORT_SYMBOL_GPL vmlinux 0x38e65df7 pinctrl_find_and_add_gpio_range +EXPORT_SYMBOL_GPL vmlinux 0x38ea60a9 mmc_send_status +EXPORT_SYMBOL_GPL vmlinux 0x38ef1749 snd_soc_get_dai_id +EXPORT_SYMBOL_GPL vmlinux 0x38f8fe54 security_inode_create +EXPORT_SYMBOL_GPL vmlinux 0x3903b95f of_get_regulator_init_data +EXPORT_SYMBOL_GPL vmlinux 0x390ee24b virtqueue_kick +EXPORT_SYMBOL_GPL vmlinux 0x39174654 alarm_start +EXPORT_SYMBOL_GPL vmlinux 0x39179871 blk_update_request +EXPORT_SYMBOL_GPL vmlinux 0x3922af3f snd_soc_component_update_bits +EXPORT_SYMBOL_GPL vmlinux 0x394a2589 devm_hwspin_lock_free +EXPORT_SYMBOL_GPL vmlinux 0x395e7c2d do_splice_from +EXPORT_SYMBOL_GPL vmlinux 0x3979e66d ata_sff_dev_classify +EXPORT_SYMBOL_GPL vmlinux 0x39849348 perf_tp_event +EXPORT_SYMBOL_GPL vmlinux 0x3988fce9 sfp_bus_add_upstream +EXPORT_SYMBOL_GPL vmlinux 0x3989109b platform_bus_type +EXPORT_SYMBOL_GPL vmlinux 0x398f2da2 __inet_lookup_listener +EXPORT_SYMBOL_GPL vmlinux 0x3990ae25 crypto_ahash_final +EXPORT_SYMBOL_GPL vmlinux 0x3992ecd7 snd_soc_component_enable_pin_unlocked +EXPORT_SYMBOL_GPL vmlinux 0x3996aa13 device_for_each_child +EXPORT_SYMBOL_GPL vmlinux 0x39a7affc driver_deferred_probe_timeout +EXPORT_SYMBOL_GPL vmlinux 0x39d18801 gov_update_cpu_data +EXPORT_SYMBOL_GPL vmlinux 0x39d3130f vchan_dma_desc_free_list +EXPORT_SYMBOL_GPL vmlinux 0x39e61495 nf_logger_request_module +EXPORT_SYMBOL_GPL vmlinux 0x39ea933b rio_mport_get_physefb +EXPORT_SYMBOL_GPL vmlinux 0x39f701d1 pci_epf_unbind +EXPORT_SYMBOL_GPL vmlinux 0x39f728d4 phy_init +EXPORT_SYMBOL_GPL vmlinux 0x39f8fda3 xfrm_dev_offload_ok +EXPORT_SYMBOL_GPL vmlinux 0x39fbc57f pinctrl_pm_select_sleep_state +EXPORT_SYMBOL_GPL vmlinux 0x3a09dbc6 crypto_hash_alg_has_setkey +EXPORT_SYMBOL_GPL vmlinux 0x3a0b42ff efivars_unregister +EXPORT_SYMBOL_GPL vmlinux 0x3a1decbb ata_sff_prereset +EXPORT_SYMBOL_GPL vmlinux 0x3a2e1b39 dm_report_zones_cb +EXPORT_SYMBOL_GPL vmlinux 0x3a2f3d58 debugfs_create_size_t +EXPORT_SYMBOL_GPL vmlinux 0x3a4f6a32 ata_sff_interrupt +EXPORT_SYMBOL_GPL vmlinux 0x3a536bd7 ring_buffer_read_finish +EXPORT_SYMBOL_GPL vmlinux 0x3a58bcd8 __blk_req_zone_write_lock +EXPORT_SYMBOL_GPL vmlinux 0x3a5a25b9 ata_std_error_handler +EXPORT_SYMBOL_GPL vmlinux 0x3a6dc43f pkcs7_get_content_data +EXPORT_SYMBOL_GPL vmlinux 0x3a7bc091 get_mtd_device_nm +EXPORT_SYMBOL_GPL vmlinux 0x3a865c0c mmu_interval_notifier_insert +EXPORT_SYMBOL_GPL vmlinux 0x3a8c7b76 invalidate_inode_pages2_range +EXPORT_SYMBOL_GPL vmlinux 0x3a92ae95 crypto_req_done +EXPORT_SYMBOL_GPL vmlinux 0x3a9be019 asymmetric_key_id_partial +EXPORT_SYMBOL_GPL vmlinux 0x3aa12240 crypto_hash_walk_done +EXPORT_SYMBOL_GPL vmlinux 0x3aa42cfa md_new_event +EXPORT_SYMBOL_GPL vmlinux 0x3aad462e pci_epc_add_epf +EXPORT_SYMBOL_GPL vmlinux 0x3ab79747 __mnt_drop_write +EXPORT_SYMBOL_GPL vmlinux 0x3acdf325 twl4030_audio_enable_resource +EXPORT_SYMBOL_GPL vmlinux 0x3ad58dcf sock_zerocopy_realloc +EXPORT_SYMBOL_GPL vmlinux 0x3ad59dc1 devlink_port_type_ib_set +EXPORT_SYMBOL_GPL vmlinux 0x3adf62bf usb_alloc_streams +EXPORT_SYMBOL_GPL vmlinux 0x3ae64043 spi_delay_to_ns +EXPORT_SYMBOL_GPL vmlinux 0x3ae7645c pci_epc_get_first_free_bar +EXPORT_SYMBOL_GPL vmlinux 0x3ae9c5bf ping_close +EXPORT_SYMBOL_GPL vmlinux 0x3aeec121 serial8250_em485_stop_tx +EXPORT_SYMBOL_GPL vmlinux 0x3af9f9c7 dm_path_uevent +EXPORT_SYMBOL_GPL vmlinux 0x3b03229c ping_getfrag +EXPORT_SYMBOL_GPL vmlinux 0x3b05dacf security_path_chown +EXPORT_SYMBOL_GPL vmlinux 0x3b06bd9d ata_scsi_change_queue_depth +EXPORT_SYMBOL_GPL vmlinux 0x3b22acd6 pcie_port_bus_type +EXPORT_SYMBOL_GPL vmlinux 0x3b26928c debugfs_write_file_bool +EXPORT_SYMBOL_GPL vmlinux 0x3b40cd30 crypto_register_skcipher +EXPORT_SYMBOL_GPL vmlinux 0x3b4c240a display_timings_release +EXPORT_SYMBOL_GPL vmlinux 0x3b8769b3 rio_register_mport +EXPORT_SYMBOL_GPL vmlinux 0x3b987140 regulator_disable_regmap +EXPORT_SYMBOL_GPL vmlinux 0x3b9a348c devm_pci_epc_destroy +EXPORT_SYMBOL_GPL vmlinux 0x3ba1abde pinconf_generic_dt_free_map +EXPORT_SYMBOL_GPL vmlinux 0x3ba26281 __atomic_notifier_call_chain +EXPORT_SYMBOL_GPL vmlinux 0x3ba56ae1 metadata_dst_free_percpu +EXPORT_SYMBOL_GPL vmlinux 0x3babb2a1 regmap_get_reg_stride +EXPORT_SYMBOL_GPL vmlinux 0x3bb404ae mmc_pwrseq_unregister +EXPORT_SYMBOL_GPL vmlinux 0x3bb99689 crypto_stats_skcipher_decrypt +EXPORT_SYMBOL_GPL vmlinux 0x3bba0c85 usb_add_phy_dev +EXPORT_SYMBOL_GPL vmlinux 0x3bbe8c17 spi_get_next_queued_message +EXPORT_SYMBOL_GPL vmlinux 0x3bc0c5ea wm8998_i2c_regmap +EXPORT_SYMBOL_GPL vmlinux 0x3bcd7e28 crypto_unregister_alg +EXPORT_SYMBOL_GPL vmlinux 0x3bdb5d28 alg_test +EXPORT_SYMBOL_GPL vmlinux 0x3beef199 n_tty_inherit_ops +EXPORT_SYMBOL_GPL vmlinux 0x3bf02f1b ftrace_set_filter_ip +EXPORT_SYMBOL_GPL vmlinux 0x3bf17755 mpi_read_buffer +EXPORT_SYMBOL_GPL vmlinux 0x3c17b513 usb_hcd_setup_local_mem +EXPORT_SYMBOL_GPL vmlinux 0x3c1c3725 rcu_fwd_progress_check +EXPORT_SYMBOL_GPL vmlinux 0x3c1e3379 irq_domain_xlate_onetwocell +EXPORT_SYMBOL_GPL vmlinux 0x3c200eab gpiod_get_array_value_cansleep +EXPORT_SYMBOL_GPL vmlinux 0x3c2b68f7 of_changeset_apply +EXPORT_SYMBOL_GPL vmlinux 0x3c2e13ab devm_clk_hw_register +EXPORT_SYMBOL_GPL vmlinux 0x3c441e2a pm_generic_runtime_suspend +EXPORT_SYMBOL_GPL vmlinux 0x3c45bc12 smpboot_register_percpu_thread +EXPORT_SYMBOL_GPL vmlinux 0x3c5afe56 regulator_set_voltage_sel_pickable_regmap +EXPORT_SYMBOL_GPL vmlinux 0x3c651f33 rhashtable_insert_slow +EXPORT_SYMBOL_GPL vmlinux 0x3c681dc4 ring_buffer_record_disable +EXPORT_SYMBOL_GPL vmlinux 0x3c701b0e pm_clk_add_notifier +EXPORT_SYMBOL_GPL vmlinux 0x3c72724e usb_wait_anchor_empty_timeout +EXPORT_SYMBOL_GPL vmlinux 0x3c7f9360 sk_msg_free_partial +EXPORT_SYMBOL_GPL vmlinux 0x3c9e1402 blk_queue_max_discard_segments +EXPORT_SYMBOL_GPL vmlinux 0x3ca0fd2e dst_cache_set_ip6 +EXPORT_SYMBOL_GPL vmlinux 0x3cbc07f5 iommu_device_unlink +EXPORT_SYMBOL_GPL vmlinux 0x3cd06035 add_input_randomness +EXPORT_SYMBOL_GPL vmlinux 0x3ce0d5e4 device_connection_find +EXPORT_SYMBOL_GPL vmlinux 0x3ce493ef power_supply_powers +EXPORT_SYMBOL_GPL vmlinux 0x3cf02e49 arizona_dev_init +EXPORT_SYMBOL_GPL vmlinux 0x3cfeee47 blkcg_print_blkgs +EXPORT_SYMBOL_GPL vmlinux 0x3d0aaa3f of_pci_range_parser_init +EXPORT_SYMBOL_GPL vmlinux 0x3d1eda71 sock_zerocopy_callback +EXPORT_SYMBOL_GPL vmlinux 0x3d25e9a3 regulator_list_voltage_linear_range +EXPORT_SYMBOL_GPL vmlinux 0x3d2ae5f5 mmc_cmdq_enable +EXPORT_SYMBOL_GPL vmlinux 0x3d2b2708 phy_package_join +EXPORT_SYMBOL_GPL vmlinux 0x3d2d658e dev_pm_qos_expose_latency_tolerance +EXPORT_SYMBOL_GPL vmlinux 0x3d388324 dpm_resume_end +EXPORT_SYMBOL_GPL vmlinux 0x3d44d140 espintcp_push_skb +EXPORT_SYMBOL_GPL vmlinux 0x3d46ffe1 anon_transport_class_register +EXPORT_SYMBOL_GPL vmlinux 0x3d49fc73 __tracepoint_napi_poll +EXPORT_SYMBOL_GPL vmlinux 0x3d510a7b rcu_jiffies_till_stall_check +EXPORT_SYMBOL_GPL vmlinux 0x3d67416e cpts_create +EXPORT_SYMBOL_GPL vmlinux 0x3d6a3a04 dt_init_idle_driver +EXPORT_SYMBOL_GPL vmlinux 0x3d6a3fa6 update_time +EXPORT_SYMBOL_GPL vmlinux 0x3d6ec589 addrconf_prefix_rcv_add_addr +EXPORT_SYMBOL_GPL vmlinux 0x3d756150 iommu_register_device_fault_handler +EXPORT_SYMBOL_GPL vmlinux 0x3d79ad09 __srcu_read_lock +EXPORT_SYMBOL_GPL vmlinux 0x3da08c6e usb_get_status +EXPORT_SYMBOL_GPL vmlinux 0x3da31f46 fsnotify_add_mark +EXPORT_SYMBOL_GPL vmlinux 0x3dad5aa1 phy_destroy +EXPORT_SYMBOL_GPL vmlinux 0x3db3af97 nf_checksum_partial +EXPORT_SYMBOL_GPL vmlinux 0x3dc526a9 arizona_of_match +EXPORT_SYMBOL_GPL vmlinux 0x3dca3247 sdio_retune_hold_now +EXPORT_SYMBOL_GPL vmlinux 0x3dd72eba rq_flush_dcache_pages +EXPORT_SYMBOL_GPL vmlinux 0x3ddf9d57 ping_hash +EXPORT_SYMBOL_GPL vmlinux 0x3de2cb91 icc_provider_add +EXPORT_SYMBOL_GPL vmlinux 0x3de9cae1 crypto_remove_final +EXPORT_SYMBOL_GPL vmlinux 0x3df188ed rtc_class_open +EXPORT_SYMBOL_GPL vmlinux 0x3dfce20d perf_event_pause +EXPORT_SYMBOL_GPL vmlinux 0x3e06bf8d sata_link_resume +EXPORT_SYMBOL_GPL vmlinux 0x3e095037 perf_event_enable +EXPORT_SYMBOL_GPL vmlinux 0x3e09b76d platform_get_irq_optional +EXPORT_SYMBOL_GPL vmlinux 0x3e17a786 devfreq_cooling_register +EXPORT_SYMBOL_GPL vmlinux 0x3e18f67b call_switchdev_blocking_notifiers +EXPORT_SYMBOL_GPL vmlinux 0x3e1d1f1c page_endio +EXPORT_SYMBOL_GPL vmlinux 0x3e214dd4 dev_fwnode +EXPORT_SYMBOL_GPL vmlinux 0x3e21ba72 acomp_request_free +EXPORT_SYMBOL_GPL vmlinux 0x3e27065b usb_ep_set_wedge +EXPORT_SYMBOL_GPL vmlinux 0x3e31d9c3 net_prio_cgrp_subsys_enabled_key +EXPORT_SYMBOL_GPL vmlinux 0x3e3fd4fb bpf_prog_get_type_dev +EXPORT_SYMBOL_GPL vmlinux 0x3e4a07f7 sock_inuse_get +EXPORT_SYMBOL_GPL vmlinux 0x3e4bcae1 devm_mbox_controller_register +EXPORT_SYMBOL_GPL vmlinux 0x3e512cbb aead_exit_geniv +EXPORT_SYMBOL_GPL vmlinux 0x3e537662 crypto_shash_setkey +EXPORT_SYMBOL_GPL vmlinux 0x3e5ae2df gpiochip_irqchip_add_domain +EXPORT_SYMBOL_GPL vmlinux 0x3e5f5622 sbitmap_queue_clear +EXPORT_SYMBOL_GPL vmlinux 0x3e65f289 snd_soc_put_volsw_range +EXPORT_SYMBOL_GPL vmlinux 0x3e7080cb mpi_read_from_buffer +EXPORT_SYMBOL_GPL vmlinux 0x3e83e399 inet_csk_update_pmtu +EXPORT_SYMBOL_GPL vmlinux 0x3ea39053 pci_epc_multi_mem_init +EXPORT_SYMBOL_GPL vmlinux 0x3eafc51f wm8350_block_read +EXPORT_SYMBOL_GPL vmlinux 0x3ec360ee cpufreq_cpu_put +EXPORT_SYMBOL_GPL vmlinux 0x3ecba722 vfs_read +EXPORT_SYMBOL_GPL vmlinux 0x3eccb333 shash_ahash_digest +EXPORT_SYMBOL_GPL vmlinux 0x3ecdd3cf blkdev_report_zones +EXPORT_SYMBOL_GPL vmlinux 0x3ee6ddbc mctrl_gpio_init_noauto +EXPORT_SYMBOL_GPL vmlinux 0x3ef051c8 crypto_inc +EXPORT_SYMBOL_GPL vmlinux 0x3ef1098a dbs_update +EXPORT_SYMBOL_GPL vmlinux 0x3efa8d59 platform_device_register +EXPORT_SYMBOL_GPL vmlinux 0x3efd1889 dax_direct_access +EXPORT_SYMBOL_GPL vmlinux 0x3efd68d9 usb_free_urb +EXPORT_SYMBOL_GPL vmlinux 0x3eff5225 sysfs_remove_file_from_group +EXPORT_SYMBOL_GPL vmlinux 0x3f060887 __ioread32_copy +EXPORT_SYMBOL_GPL vmlinux 0x3f0f62e6 devlink_dpipe_entry_ctx_prepare +EXPORT_SYMBOL_GPL vmlinux 0x3f3b4e53 regulator_map_voltage_pickable_linear_range +EXPORT_SYMBOL_GPL vmlinux 0x3f4632cd phy_10gbit_features +EXPORT_SYMBOL_GPL vmlinux 0x3f5064bb ahci_platform_suspend_host +EXPORT_SYMBOL_GPL vmlinux 0x3f5d49bb component_bind_all +EXPORT_SYMBOL_GPL vmlinux 0x3f69d2a0 sysfs_group_change_owner +EXPORT_SYMBOL_GPL vmlinux 0x3f6ef804 mtd_get_fact_prot_info +EXPORT_SYMBOL_GPL vmlinux 0x3f6f320e pinctrl_generic_remove_group +EXPORT_SYMBOL_GPL vmlinux 0x3f84bcd7 dax_alive +EXPORT_SYMBOL_GPL vmlinux 0x3f8ab72e devlink_fmsg_bool_put +EXPORT_SYMBOL_GPL vmlinux 0x3f982928 pcie_has_flr +EXPORT_SYMBOL_GPL vmlinux 0x3fae7177 devlink_params_unregister +EXPORT_SYMBOL_GPL vmlinux 0x3fb37885 mtd_add_partition +EXPORT_SYMBOL_GPL vmlinux 0x3fb5e6cb pci_create_slot +EXPORT_SYMBOL_GPL vmlinux 0x3fe6c346 devlink_fmsg_binary_pair_put +EXPORT_SYMBOL_GPL vmlinux 0x3fea029c hisi_clk_register_gate +EXPORT_SYMBOL_GPL vmlinux 0x3ffdacf3 timerqueue_iterate_next +EXPORT_SYMBOL_GPL vmlinux 0x4009eb6a fixup_user_fault +EXPORT_SYMBOL_GPL vmlinux 0x40388a65 snd_soc_dapm_nc_pin +EXPORT_SYMBOL_GPL vmlinux 0x403b12a2 usb_get_phy +EXPORT_SYMBOL_GPL vmlinux 0x403bf854 pci_stop_and_remove_bus_device_locked +EXPORT_SYMBOL_GPL vmlinux 0x403f9529 gpio_request_one +EXPORT_SYMBOL_GPL vmlinux 0x4044865c usb_interrupt_msg +EXPORT_SYMBOL_GPL vmlinux 0x4065d168 pm_print_active_wakeup_sources +EXPORT_SYMBOL_GPL vmlinux 0x40674e64 snd_pcm_stream_unlock +EXPORT_SYMBOL_GPL vmlinux 0x406c4cb1 hrtimer_resolution +EXPORT_SYMBOL_GPL vmlinux 0x4071b517 out_of_line_wait_on_bit_timeout +EXPORT_SYMBOL_GPL vmlinux 0x4071c4bb each_symbol_section +EXPORT_SYMBOL_GPL vmlinux 0x4076d3ee rtc_read_time +EXPORT_SYMBOL_GPL vmlinux 0x4099f919 tun_ptr_free +EXPORT_SYMBOL_GPL vmlinux 0x40aedb3b sched_setattr +EXPORT_SYMBOL_GPL vmlinux 0x40b1068c fuse_conn_put +EXPORT_SYMBOL_GPL vmlinux 0x40dac017 phy_modify +EXPORT_SYMBOL_GPL vmlinux 0x40dbb336 dmaengine_unmap_put +EXPORT_SYMBOL_GPL vmlinux 0x40e101a1 dm_get_md +EXPORT_SYMBOL_GPL vmlinux 0x40ed3ccc tps6586x_clr_bits +EXPORT_SYMBOL_GPL vmlinux 0x40f0683e reset_control_put +EXPORT_SYMBOL_GPL vmlinux 0x40f83c1b component_del +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 0x41014dcd snd_soc_card_remove_dai_link +EXPORT_SYMBOL_GPL vmlinux 0x412bc681 ring_buffer_empty_cpu +EXPORT_SYMBOL_GPL vmlinux 0x412e2787 dev_pm_opp_get_sharing_cpus +EXPORT_SYMBOL_GPL vmlinux 0x413d06a1 of_clk_add_hw_provider +EXPORT_SYMBOL_GPL vmlinux 0x414538e6 synth_event_add_field_str +EXPORT_SYMBOL_GPL vmlinux 0x41476ed6 irq_chip_mask_parent +EXPORT_SYMBOL_GPL vmlinux 0x414aea1d crypto_skcipher_encrypt +EXPORT_SYMBOL_GPL vmlinux 0x414d119a videomode_from_timings +EXPORT_SYMBOL_GPL vmlinux 0x414ed5cb devm_pinctrl_register +EXPORT_SYMBOL_GPL vmlinux 0x414f45d9 clockevents_unbind_device +EXPORT_SYMBOL_GPL vmlinux 0x41530da3 wm831x_set_bits +EXPORT_SYMBOL_GPL vmlinux 0x416c2f50 __tracepoint_wbc_writepage +EXPORT_SYMBOL_GPL vmlinux 0x41814cb8 dirty_writeback_interval +EXPORT_SYMBOL_GPL vmlinux 0x418627dc devm_kasprintf +EXPORT_SYMBOL_GPL vmlinux 0x4186354e tc3589x_block_read +EXPORT_SYMBOL_GPL vmlinux 0x418bc284 device_connection_remove +EXPORT_SYMBOL_GPL vmlinux 0x419e7efd sfp_module_stop +EXPORT_SYMBOL_GPL vmlinux 0x41a77b20 raw_seq_stop +EXPORT_SYMBOL_GPL vmlinux 0x41b4df93 register_mtd_user +EXPORT_SYMBOL_GPL vmlinux 0x41c0b9ee devm_spi_register_controller +EXPORT_SYMBOL_GPL vmlinux 0x41c166ca virtio_break_device +EXPORT_SYMBOL_GPL vmlinux 0x41c30f3a trace_seq_bprintf +EXPORT_SYMBOL_GPL vmlinux 0x41c7e38a sdio_writeb_readb +EXPORT_SYMBOL_GPL vmlinux 0x41c94bf5 __cci_control_port_by_device +EXPORT_SYMBOL_GPL vmlinux 0x41deaf79 inet_ctl_sock_create +EXPORT_SYMBOL_GPL vmlinux 0x41ea7510 srcu_notifier_call_chain +EXPORT_SYMBOL_GPL vmlinux 0x41ed3cec eventfd_ctx_remove_wait_queue +EXPORT_SYMBOL_GPL vmlinux 0x41ee3f33 fsnotify_get_group +EXPORT_SYMBOL_GPL vmlinux 0x41eff548 ip_route_output_flow +EXPORT_SYMBOL_GPL vmlinux 0x42041512 i2c_get_dma_safe_msg_buf +EXPORT_SYMBOL_GPL vmlinux 0x4205ad24 cancel_work_sync +EXPORT_SYMBOL_GPL vmlinux 0x420f3d01 nvmem_unregister_notifier +EXPORT_SYMBOL_GPL vmlinux 0x42214614 __ftrace_vbprintk +EXPORT_SYMBOL_GPL vmlinux 0x42228e66 crypto_aead_setauthsize +EXPORT_SYMBOL_GPL vmlinux 0x424c2dd7 platform_device_register_full +EXPORT_SYMBOL_GPL vmlinux 0x42635d55 pm_suspend_global_flags +EXPORT_SYMBOL_GPL vmlinux 0x426f3096 devlink_is_reload_failed +EXPORT_SYMBOL_GPL vmlinux 0x42784ce7 irq_domain_translate_onecell +EXPORT_SYMBOL_GPL vmlinux 0x427ce846 crypto_default_rng +EXPORT_SYMBOL_GPL vmlinux 0x42825ce2 rcu_scheduler_active +EXPORT_SYMBOL_GPL vmlinux 0x42856cb4 platform_get_resource_byname +EXPORT_SYMBOL_GPL vmlinux 0x42887525 sbitmap_queue_min_shallow_depth +EXPORT_SYMBOL_GPL vmlinux 0x428d1eb2 sk_msg_clone +EXPORT_SYMBOL_GPL vmlinux 0x428eb164 ahci_start_engine +EXPORT_SYMBOL_GPL vmlinux 0x4294fa7c ata_link_abort +EXPORT_SYMBOL_GPL vmlinux 0x42a36712 device_add_properties +EXPORT_SYMBOL_GPL vmlinux 0x42a8e89c arm_iommu_attach_device +EXPORT_SYMBOL_GPL vmlinux 0x42aa7402 kernfs_path_from_node +EXPORT_SYMBOL_GPL vmlinux 0x42aadcce clk_register_divider_table +EXPORT_SYMBOL_GPL vmlinux 0x42c58776 security_inode_permission +EXPORT_SYMBOL_GPL vmlinux 0x42d1a588 arizona_clk32k_enable +EXPORT_SYMBOL_GPL vmlinux 0x42e445f6 clk_mux_val_to_index +EXPORT_SYMBOL_GPL vmlinux 0x42e7a297 scatterwalk_map_and_copy +EXPORT_SYMBOL_GPL vmlinux 0x42e9d0da ring_buffer_unlock_commit +EXPORT_SYMBOL_GPL vmlinux 0x42efb127 nvmem_del_cell_lookups +EXPORT_SYMBOL_GPL vmlinux 0x42f728aa mctrl_gpio_get_outputs +EXPORT_SYMBOL_GPL vmlinux 0x431bb478 phy_driver_is_genphy +EXPORT_SYMBOL_GPL vmlinux 0x431f87e3 dev_pm_domain_detach +EXPORT_SYMBOL_GPL vmlinux 0x43249cbf mtk_eint_find_irq +EXPORT_SYMBOL_GPL vmlinux 0x432730b9 usb_hcd_pci_probe +EXPORT_SYMBOL_GPL vmlinux 0x433139c3 crypto_unregister_skciphers +EXPORT_SYMBOL_GPL vmlinux 0x433d735d cpuidle_unregister_driver +EXPORT_SYMBOL_GPL vmlinux 0x4365a6b1 dev_pm_opp_of_add_table_indexed +EXPORT_SYMBOL_GPL vmlinux 0x4369d075 snd_soc_component_set_pll +EXPORT_SYMBOL_GPL vmlinux 0x4369dcfe serial8250_init_port +EXPORT_SYMBOL_GPL vmlinux 0x437eb1df ipv6_mod_enabled +EXPORT_SYMBOL_GPL vmlinux 0x437fd7d8 mmu_notifier_put +EXPORT_SYMBOL_GPL vmlinux 0x43a47ade crypto_stats_aead_decrypt +EXPORT_SYMBOL_GPL vmlinux 0x43aa319e lease_register_notifier +EXPORT_SYMBOL_GPL vmlinux 0x43b2756a tracing_snapshot_cond_enable +EXPORT_SYMBOL_GPL vmlinux 0x43bd999d ata_platform_remove_one +EXPORT_SYMBOL_GPL vmlinux 0x43c0ebe9 sbitmap_show +EXPORT_SYMBOL_GPL vmlinux 0x43c58ddb dev_pm_opp_of_get_sharing_cpus +EXPORT_SYMBOL_GPL vmlinux 0x43c984f0 blk_mq_sched_try_insert_merge +EXPORT_SYMBOL_GPL vmlinux 0x43de4f24 smp_call_function_single_async +EXPORT_SYMBOL_GPL vmlinux 0x43ef796e sdhci_pltfm_clk_get_max_clock +EXPORT_SYMBOL_GPL vmlinux 0x43f56e82 ata_xfer_mode2shift +EXPORT_SYMBOL_GPL vmlinux 0x43f81957 clk_round_rate +EXPORT_SYMBOL_GPL vmlinux 0x441b4c10 ahci_dev_classify +EXPORT_SYMBOL_GPL vmlinux 0x4422d7d6 of_devfreq_cooling_register_power +EXPORT_SYMBOL_GPL vmlinux 0x442d3464 led_trigger_register_simple +EXPORT_SYMBOL_GPL vmlinux 0x442d75a4 usb_gadget_udc_reset +EXPORT_SYMBOL_GPL vmlinux 0x442d89c5 phy_10gbit_fec_features +EXPORT_SYMBOL_GPL vmlinux 0x442e6794 devm_get_free_pages +EXPORT_SYMBOL_GPL vmlinux 0x44339406 sbitmap_queue_resize +EXPORT_SYMBOL_GPL vmlinux 0x44418188 wm8350_device_init +EXPORT_SYMBOL_GPL vmlinux 0x44489f1b __devm_pci_epc_create +EXPORT_SYMBOL_GPL vmlinux 0x444e6320 wm8400_reset_codec_reg_cache +EXPORT_SYMBOL_GPL vmlinux 0x444f1735 cpu_pm_register_notifier +EXPORT_SYMBOL_GPL vmlinux 0x44531e80 percpu_ref_kill_and_confirm +EXPORT_SYMBOL_GPL vmlinux 0x445a09c0 nvmem_device_cell_write +EXPORT_SYMBOL_GPL vmlinux 0x44648d02 i2c_probe_func_quick_read +EXPORT_SYMBOL_GPL vmlinux 0x447861f1 usb_store_new_id +EXPORT_SYMBOL_GPL vmlinux 0x447dc230 of_pwm_xlate_with_flags +EXPORT_SYMBOL_GPL vmlinux 0x447eb497 wakeup_sources_walk_start +EXPORT_SYMBOL_GPL vmlinux 0x4484a5a4 wait_for_device_probe +EXPORT_SYMBOL_GPL vmlinux 0x44915de2 devm_kstrdup +EXPORT_SYMBOL_GPL vmlinux 0x449f1ec9 nanddev_erase +EXPORT_SYMBOL_GPL vmlinux 0x44a267b8 nf_queue +EXPORT_SYMBOL_GPL vmlinux 0x44a91dae badblocks_show +EXPORT_SYMBOL_GPL vmlinux 0x44b0313d synth_event_create +EXPORT_SYMBOL_GPL vmlinux 0x44ba1042 percpu_ref_resurrect +EXPORT_SYMBOL_GPL vmlinux 0x44bae227 bit_wait_timeout +EXPORT_SYMBOL_GPL vmlinux 0x44cf8cf0 blk_zone_cond_str +EXPORT_SYMBOL_GPL vmlinux 0x44d4fd2d kgdb_unregister_io_module +EXPORT_SYMBOL_GPL vmlinux 0x44f3ae16 pm_generic_restore_early +EXPORT_SYMBOL_GPL vmlinux 0x4507f4a8 cpuhp_tasks_frozen +EXPORT_SYMBOL_GPL vmlinux 0x4520327b dev_pm_opp_put_supported_hw +EXPORT_SYMBOL_GPL vmlinux 0x45242641 tpm_pcr_read +EXPORT_SYMBOL_GPL vmlinux 0x45365b6f vfs_setxattr +EXPORT_SYMBOL_GPL vmlinux 0x4553edcc dev_pm_opp_set_clkname +EXPORT_SYMBOL_GPL vmlinux 0x45558f56 clk_unregister_fixed_factor +EXPORT_SYMBOL_GPL vmlinux 0x45580822 sk_psock_msg_verdict +EXPORT_SYMBOL_GPL vmlinux 0x455b7e2f __dax_driver_register +EXPORT_SYMBOL_GPL vmlinux 0x4561f990 qcom_smem_state_unregister +EXPORT_SYMBOL_GPL vmlinux 0x4562f8e4 pkcs7_free_message +EXPORT_SYMBOL_GPL vmlinux 0x456a4c83 devm_spi_mem_dirmap_destroy +EXPORT_SYMBOL_GPL vmlinux 0x457594fa crypto_alg_list +EXPORT_SYMBOL_GPL vmlinux 0x45771824 crypto_skcipher_setkey +EXPORT_SYMBOL_GPL vmlinux 0x4577fad9 __sdhci_read_caps +EXPORT_SYMBOL_GPL vmlinux 0x4582b60a of_dma_controller_free +EXPORT_SYMBOL_GPL vmlinux 0x458ea773 ata_pci_sff_activate_host +EXPORT_SYMBOL_GPL vmlinux 0x45baf6ae tps65912_device_exit +EXPORT_SYMBOL_GPL vmlinux 0x45c13997 sysfs_remove_group +EXPORT_SYMBOL_GPL vmlinux 0x45f1bc79 __tracepoint_non_standard_event +EXPORT_SYMBOL_GPL vmlinux 0x45f93b22 phy_validate +EXPORT_SYMBOL_GPL vmlinux 0x45fca75c tpm_get_timeouts +EXPORT_SYMBOL_GPL vmlinux 0x45ff8535 trace_seq_putc +EXPORT_SYMBOL_GPL vmlinux 0x46013233 net_dec_ingress_queue +EXPORT_SYMBOL_GPL vmlinux 0x46066e5b perf_pmu_name +EXPORT_SYMBOL_GPL vmlinux 0x46297234 dma_buf_put +EXPORT_SYMBOL_GPL vmlinux 0x46343462 bpf_prog_select_runtime +EXPORT_SYMBOL_GPL vmlinux 0x4640db2a icc_get_name +EXPORT_SYMBOL_GPL vmlinux 0x464607d1 dw_pcie_link_set_max_speed +EXPORT_SYMBOL_GPL vmlinux 0x466cbb03 snd_soc_poweroff +EXPORT_SYMBOL_GPL vmlinux 0x466e5342 net_prio_cgrp_subsys_on_dfl_key +EXPORT_SYMBOL_GPL vmlinux 0x46784e97 sfp_add_phy +EXPORT_SYMBOL_GPL vmlinux 0x4681621a bpfilter_ops +EXPORT_SYMBOL_GPL vmlinux 0x4683a8ee key_type_encrypted +EXPORT_SYMBOL_GPL vmlinux 0x4686b974 snd_soc_dapm_ignore_suspend +EXPORT_SYMBOL_GPL vmlinux 0x46870dbd crypto_register_acomp +EXPORT_SYMBOL_GPL vmlinux 0x4688d7ec pvclock_gtod_unregister_notifier +EXPORT_SYMBOL_GPL vmlinux 0x46905160 iptunnel_metadata_reply +EXPORT_SYMBOL_GPL vmlinux 0x4696f730 proc_create_net_data_write +EXPORT_SYMBOL_GPL vmlinux 0x46973c89 usb_reset_device +EXPORT_SYMBOL_GPL vmlinux 0x46b21bd2 find_asymmetric_key +EXPORT_SYMBOL_GPL vmlinux 0x46c06c19 klist_add_head +EXPORT_SYMBOL_GPL vmlinux 0x46c5be22 clk_multiplier_ops +EXPORT_SYMBOL_GPL vmlinux 0x46f42be0 devlink_fmsg_u8_put +EXPORT_SYMBOL_GPL vmlinux 0x4700260a tty_port_register_device_attr +EXPORT_SYMBOL_GPL vmlinux 0x470ba005 tty_ldisc_ref_wait +EXPORT_SYMBOL_GPL vmlinux 0x470cfd27 crypto_stats_rng_generate +EXPORT_SYMBOL_GPL vmlinux 0x47229b5c gpio_request +EXPORT_SYMBOL_GPL vmlinux 0x4723883b xdp_rxq_info_unreg +EXPORT_SYMBOL_GPL vmlinux 0x47317949 crypto_alg_sem +EXPORT_SYMBOL_GPL vmlinux 0x47317de2 mtk_eint_do_suspend +EXPORT_SYMBOL_GPL vmlinux 0x473b7d3b exportfs_encode_fh +EXPORT_SYMBOL_GPL vmlinux 0x473f3a52 l3mdev_fib_table_rcu +EXPORT_SYMBOL_GPL vmlinux 0x4749fe7b ata_link_offline +EXPORT_SYMBOL_GPL vmlinux 0x474b222d crypto_stats_akcipher_verify +EXPORT_SYMBOL_GPL vmlinux 0x4761f17c register_netevent_notifier +EXPORT_SYMBOL_GPL vmlinux 0x4768a4fc ahci_platform_disable_phys +EXPORT_SYMBOL_GPL vmlinux 0x476d119b crypto_mod_get +EXPORT_SYMBOL_GPL vmlinux 0x47714004 nf_queue_entry_free +EXPORT_SYMBOL_GPL vmlinux 0x477b0d53 generic_fh_to_dentry +EXPORT_SYMBOL_GPL vmlinux 0x47884890 system_power_efficient_wq +EXPORT_SYMBOL_GPL vmlinux 0x47925794 idr_find +EXPORT_SYMBOL_GPL vmlinux 0x479f7d4b clk_bulk_disable +EXPORT_SYMBOL_GPL vmlinux 0x47aad3b9 have_governor_per_policy +EXPORT_SYMBOL_GPL vmlinux 0x47bbfd76 uart_set_options +EXPORT_SYMBOL_GPL vmlinux 0x47c1d254 gpiod_get +EXPORT_SYMBOL_GPL vmlinux 0x47d59011 rio_dma_prep_xfer +EXPORT_SYMBOL_GPL vmlinux 0x47d9c4bb sk_psock_tls_strp_read +EXPORT_SYMBOL_GPL vmlinux 0x47de0dc7 clk_unregister_mux +EXPORT_SYMBOL_GPL vmlinux 0x47e18ba1 inet6_hash_connect +EXPORT_SYMBOL_GPL vmlinux 0x47eaa1d4 spi_set_cs_timing +EXPORT_SYMBOL_GPL vmlinux 0x48020c1c irq_get_percpu_devid_partition +EXPORT_SYMBOL_GPL vmlinux 0x4811e175 disk_part_iter_next +EXPORT_SYMBOL_GPL vmlinux 0x4827ab8d l3mdev_update_flow +EXPORT_SYMBOL_GPL vmlinux 0x48290473 mtk_pinconf_drive_set +EXPORT_SYMBOL_GPL vmlinux 0x484779ef __i2c_board_lock +EXPORT_SYMBOL_GPL vmlinux 0x484be316 mm_account_pinned_pages +EXPORT_SYMBOL_GPL vmlinux 0x484cb2b0 spi_split_transfers_maxsize +EXPORT_SYMBOL_GPL vmlinux 0x4870b854 dma_resv_get_fences_rcu +EXPORT_SYMBOL_GPL vmlinux 0x4872dacc unregister_pernet_device +EXPORT_SYMBOL_GPL vmlinux 0x4890887d dev_pm_qos_hide_flags +EXPORT_SYMBOL_GPL vmlinux 0x48945ee7 replace_page_cache_page +EXPORT_SYMBOL_GPL vmlinux 0x489ea5dd iommu_aux_attach_device +EXPORT_SYMBOL_GPL vmlinux 0x48a3d20b mctrl_gpio_get +EXPORT_SYMBOL_GPL vmlinux 0x48a49331 i2c_adapter_type +EXPORT_SYMBOL_GPL vmlinux 0x48b928ed class_unregister +EXPORT_SYMBOL_GPL vmlinux 0x48c436dd snd_soc_dapm_get_volsw +EXPORT_SYMBOL_GPL vmlinux 0x48c4fb76 transport_configure_device +EXPORT_SYMBOL_GPL vmlinux 0x48d3a0d0 tpm_chip_register +EXPORT_SYMBOL_GPL vmlinux 0x48e831fd sched_trace_cfs_rq_cpu +EXPORT_SYMBOL_GPL vmlinux 0x49181f89 usb_hcd_start_port_resume +EXPORT_SYMBOL_GPL vmlinux 0x49326ef6 irq_set_affinity_notifier +EXPORT_SYMBOL_GPL vmlinux 0x495da3d5 snd_soc_dapm_force_enable_pin +EXPORT_SYMBOL_GPL vmlinux 0x4967d11b tty_port_default_client_ops +EXPORT_SYMBOL_GPL vmlinux 0x497d4da1 unregister_virtio_driver +EXPORT_SYMBOL_GPL vmlinux 0x497d90e3 input_ff_destroy +EXPORT_SYMBOL_GPL vmlinux 0x498c9790 devlink_traps_unregister +EXPORT_SYMBOL_GPL vmlinux 0x499043d3 crypto_init_queue +EXPORT_SYMBOL_GPL vmlinux 0x499222dd devlink_flash_update_end_notify +EXPORT_SYMBOL_GPL vmlinux 0x49932f46 pstore_register +EXPORT_SYMBOL_GPL vmlinux 0x49975bd0 wakeup_source_create +EXPORT_SYMBOL_GPL vmlinux 0x49983ec6 devm_irq_setup_generic_chip +EXPORT_SYMBOL_GPL vmlinux 0x499cfb9b cpufreq_cpu_get_raw +EXPORT_SYMBOL_GPL vmlinux 0x49a03786 reset_controller_register +EXPORT_SYMBOL_GPL vmlinux 0x49a35118 platform_device_alloc +EXPORT_SYMBOL_GPL vmlinux 0x49aa2fa6 __fscrypt_prepare_rename +EXPORT_SYMBOL_GPL vmlinux 0x49c467d2 ehci_suspend +EXPORT_SYMBOL_GPL vmlinux 0x49d96707 freq_qos_remove_request +EXPORT_SYMBOL_GPL vmlinux 0x49dddde0 regulator_bulk_disable +EXPORT_SYMBOL_GPL vmlinux 0x49e96999 cond_synchronize_rcu +EXPORT_SYMBOL_GPL vmlinux 0x49f484ef sdio_readw +EXPORT_SYMBOL_GPL vmlinux 0x4a17ed66 sysrq_mask +EXPORT_SYMBOL_GPL vmlinux 0x4a1bc915 cdrom_read_tocentry +EXPORT_SYMBOL_GPL vmlinux 0x4a5694de switchdev_port_obj_add +EXPORT_SYMBOL_GPL vmlinux 0x4ab57e92 cpuidle_register_driver +EXPORT_SYMBOL_GPL vmlinux 0x4ab61ef8 rio_get_device +EXPORT_SYMBOL_GPL vmlinux 0x4abc372c transport_class_register +EXPORT_SYMBOL_GPL vmlinux 0x4abce14b debugfs_create_u8 +EXPORT_SYMBOL_GPL vmlinux 0x4ad63858 rockchip_pcie_init_port +EXPORT_SYMBOL_GPL vmlinux 0x4ad77930 devm_phy_optional_get +EXPORT_SYMBOL_GPL vmlinux 0x4ae26481 sysfs_break_active_protection +EXPORT_SYMBOL_GPL vmlinux 0x4ae2a234 gpiochip_line_is_open_drain +EXPORT_SYMBOL_GPL vmlinux 0x4ae8f1d3 ata_pci_device_do_suspend +EXPORT_SYMBOL_GPL vmlinux 0x4affb123 irq_create_strict_mappings +EXPORT_SYMBOL_GPL vmlinux 0x4b09fe33 clk_hw_unregister +EXPORT_SYMBOL_GPL vmlinux 0x4b104907 xfrm_output_resume +EXPORT_SYMBOL_GPL vmlinux 0x4b1dc521 spi_bus_lock +EXPORT_SYMBOL_GPL vmlinux 0x4b380f02 devm_clk_bulk_get_all +EXPORT_SYMBOL_GPL vmlinux 0x4b495122 sdio_claim_host +EXPORT_SYMBOL_GPL vmlinux 0x4b51f74c ata_xfer_mode2mask +EXPORT_SYMBOL_GPL vmlinux 0x4b540f2c crypto_aead_decrypt +EXPORT_SYMBOL_GPL vmlinux 0x4b57d747 debugfs_attr_write +EXPORT_SYMBOL_GPL vmlinux 0x4b5bccdb skb_pull_rcsum +EXPORT_SYMBOL_GPL vmlinux 0x4b67d693 usb_add_gadget_udc_release +EXPORT_SYMBOL_GPL vmlinux 0x4b6b0936 inet_peer_base_init +EXPORT_SYMBOL_GPL vmlinux 0x4b6ca48a unix_outq_len +EXPORT_SYMBOL_GPL vmlinux 0x4b744101 crypto_destroy_tfm +EXPORT_SYMBOL_GPL vmlinux 0x4b82da1b ip6_local_out +EXPORT_SYMBOL_GPL vmlinux 0x4b8bb1f3 usb_get_urb +EXPORT_SYMBOL_GPL vmlinux 0x4b8ead64 usb_poison_urb +EXPORT_SYMBOL_GPL vmlinux 0x4b9053c6 dax_copy_to_iter +EXPORT_SYMBOL_GPL vmlinux 0x4b99da4f mtd_ooblayout_get_eccbytes +EXPORT_SYMBOL_GPL vmlinux 0x4b9a92fa mtd_ooblayout_set_databytes +EXPORT_SYMBOL_GPL vmlinux 0x4ba38776 sched_trace_rq_avg_irq +EXPORT_SYMBOL_GPL vmlinux 0x4bba1476 pci_intx +EXPORT_SYMBOL_GPL vmlinux 0x4bbae38e rockchip_pcie_enable_clocks +EXPORT_SYMBOL_GPL vmlinux 0x4bdee258 sdhci_cqe_enable +EXPORT_SYMBOL_GPL vmlinux 0x4be5a410 device_property_match_string +EXPORT_SYMBOL_GPL vmlinux 0x4c05ede3 mddev_resume +EXPORT_SYMBOL_GPL vmlinux 0x4c27703c usb_amd_pt_check_port +EXPORT_SYMBOL_GPL vmlinux 0x4c2fbbef snd_soc_suspend +EXPORT_SYMBOL_GPL vmlinux 0x4c3a71bb snd_dmaengine_pcm_get_chan +EXPORT_SYMBOL_GPL vmlinux 0x4c4e9b35 __lock_page_killable +EXPORT_SYMBOL_GPL vmlinux 0x4c5ca995 adp5520_register_notifier +EXPORT_SYMBOL_GPL vmlinux 0x4c7dbce7 led_classdev_unregister +EXPORT_SYMBOL_GPL vmlinux 0x4cb0e4ef pm_runtime_allow +EXPORT_SYMBOL_GPL vmlinux 0x4cb1cf44 ftrace_set_filter +EXPORT_SYMBOL_GPL vmlinux 0x4cba2be6 fsnotify_alloc_group +EXPORT_SYMBOL_GPL vmlinux 0x4cc0f751 usb_debug_root +EXPORT_SYMBOL_GPL vmlinux 0x4cd67c15 ata_std_sched_eh +EXPORT_SYMBOL_GPL vmlinux 0x4ce6d76e tps65217_reg_read +EXPORT_SYMBOL_GPL vmlinux 0x4ce8a612 rio_route_add_entry +EXPORT_SYMBOL_GPL vmlinux 0x4ce98848 fib6_get_table +EXPORT_SYMBOL_GPL vmlinux 0x4ceef8b9 dma_wait_for_async_tx +EXPORT_SYMBOL_GPL vmlinux 0x4cf17d9a hrtimer_cancel +EXPORT_SYMBOL_GPL vmlinux 0x4cf24332 __usb_get_extra_descriptor +EXPORT_SYMBOL_GPL vmlinux 0x4cf46b42 trace_event_buffer_lock_reserve +EXPORT_SYMBOL_GPL vmlinux 0x4cf8af22 gpiod_export +EXPORT_SYMBOL_GPL vmlinux 0x4d0015e2 cpu_hotplug_disable +EXPORT_SYMBOL_GPL vmlinux 0x4d024589 apply_to_existing_page_range +EXPORT_SYMBOL_GPL vmlinux 0x4d1ca86a pci_ats_supported +EXPORT_SYMBOL_GPL vmlinux 0x4d1d01a8 da9052_adc_read_temp +EXPORT_SYMBOL_GPL vmlinux 0x4d20bb12 fuse_do_ioctl +EXPORT_SYMBOL_GPL vmlinux 0x4d3687d9 alarm_forward +EXPORT_SYMBOL_GPL vmlinux 0x4d38bd1c kthread_flush_work +EXPORT_SYMBOL_GPL vmlinux 0x4d38f1e0 bL_switcher_unregister_notifier +EXPORT_SYMBOL_GPL vmlinux 0x4d4c3201 regmap_fields_read +EXPORT_SYMBOL_GPL vmlinux 0x4d4d7b79 blk_mq_map_queues +EXPORT_SYMBOL_GPL vmlinux 0x4d62a963 gpiochip_enable_irq +EXPORT_SYMBOL_GPL vmlinux 0x4d6d0bbc iommu_group_ref_get +EXPORT_SYMBOL_GPL vmlinux 0x4d72ac42 usb_alloc_dev +EXPORT_SYMBOL_GPL vmlinux 0x4d7a201d regulator_desc_list_voltage_linear_range +EXPORT_SYMBOL_GPL vmlinux 0x4d83fb4a led_trigger_rename_static +EXPORT_SYMBOL_GPL vmlinux 0x4d8eadc1 nand_change_write_column_op +EXPORT_SYMBOL_GPL vmlinux 0x4d951d70 stmpe_block_write +EXPORT_SYMBOL_GPL vmlinux 0x4d9baa72 pktgen_xfrm_outer_mode_output +EXPORT_SYMBOL_GPL vmlinux 0x4daa7444 dev_pm_opp_of_add_table +EXPORT_SYMBOL_GPL vmlinux 0x4dae16e4 i2c_put_dma_safe_msg_buf +EXPORT_SYMBOL_GPL vmlinux 0x4dd22a34 tty_encode_baud_rate +EXPORT_SYMBOL_GPL vmlinux 0x4dd9d14d cn_netlink_send_mult +EXPORT_SYMBOL_GPL vmlinux 0x4de17ab3 usb_state_string +EXPORT_SYMBOL_GPL vmlinux 0x4de403b0 bpf_trace_run1 +EXPORT_SYMBOL_GPL vmlinux 0x4e36a8bd hwspin_lock_unregister +EXPORT_SYMBOL_GPL vmlinux 0x4e66f08d of_device_uevent_modalias +EXPORT_SYMBOL_GPL vmlinux 0x4e71d41e sdhci_setup_host +EXPORT_SYMBOL_GPL vmlinux 0x4e785814 dma_get_slave_caps +EXPORT_SYMBOL_GPL vmlinux 0x4e7db255 ack_all_badblocks +EXPORT_SYMBOL_GPL vmlinux 0x4e7f919f ahci_platform_enable_regulators +EXPORT_SYMBOL_GPL vmlinux 0x4e81effb adp5520_write +EXPORT_SYMBOL_GPL vmlinux 0x4e8ad597 fib_rules_register +EXPORT_SYMBOL_GPL vmlinux 0x4e9f1114 pwmchip_add_with_polarity +EXPORT_SYMBOL_GPL vmlinux 0x4ea6b7d1 ata_host_register +EXPORT_SYMBOL_GPL vmlinux 0x4eac5fc1 cpu_mitigations_auto_nosmt +EXPORT_SYMBOL_GPL vmlinux 0x4eae39d8 i2c_new_ancillary_device +EXPORT_SYMBOL_GPL vmlinux 0x4ebfb865 policy_has_boost_freq +EXPORT_SYMBOL_GPL vmlinux 0x4ec16ba6 sdio_f0_readb +EXPORT_SYMBOL_GPL vmlinux 0x4ecb52ab __fl6_sock_lookup +EXPORT_SYMBOL_GPL vmlinux 0x4ecc7018 of_resolve_phandles +EXPORT_SYMBOL_GPL vmlinux 0x4ed59d7f ata_dev_set_feature +EXPORT_SYMBOL_GPL vmlinux 0x4ee9e302 tun_get_tx_ring +EXPORT_SYMBOL_GPL vmlinux 0x4ef35f23 pinctrl_force_sleep +EXPORT_SYMBOL_GPL vmlinux 0x4ef4d219 gpiod_set_raw_value +EXPORT_SYMBOL_GPL vmlinux 0x4ef5bcf4 perf_swevent_get_recursion_context +EXPORT_SYMBOL_GPL vmlinux 0x4f16b6ad spi_mem_exec_op +EXPORT_SYMBOL_GPL vmlinux 0x4f1a5083 gpiochip_generic_config +EXPORT_SYMBOL_GPL vmlinux 0x4f239d3a of_thermal_get_trip_points +EXPORT_SYMBOL_GPL vmlinux 0x4f331911 __percpu_init_rwsem +EXPORT_SYMBOL_GPL vmlinux 0x4f3ba219 blkg_rwstat_init +EXPORT_SYMBOL_GPL vmlinux 0x4f41c2fa del_mtd_blktrans_dev +EXPORT_SYMBOL_GPL vmlinux 0x4f487631 dma_buf_vmap +EXPORT_SYMBOL_GPL vmlinux 0x4f543ff9 mutex_lock_io +EXPORT_SYMBOL_GPL vmlinux 0x4f546853 get_net_ns +EXPORT_SYMBOL_GPL vmlinux 0x4f649316 ata_sff_queue_pio_task +EXPORT_SYMBOL_GPL vmlinux 0x4f6a07fe show_rcu_gp_kthreads +EXPORT_SYMBOL_GPL vmlinux 0x4f6f8602 __blkdev_driver_ioctl +EXPORT_SYMBOL_GPL vmlinux 0x4f72a987 uart_parse_options +EXPORT_SYMBOL_GPL vmlinux 0x4f7456ca led_classdev_notify_brightness_hw_changed +EXPORT_SYMBOL_GPL vmlinux 0x4f7850e8 wbc_account_cgroup_owner +EXPORT_SYMBOL_GPL vmlinux 0x4f78b5ea fuse_dev_install +EXPORT_SYMBOL_GPL vmlinux 0x4f81b817 __tracepoint_br_fdb_add +EXPORT_SYMBOL_GPL vmlinux 0x4f8cfa1e pci_ecam_create +EXPORT_SYMBOL_GPL vmlinux 0x4f8e1592 blkg_lookup_slowpath +EXPORT_SYMBOL_GPL vmlinux 0x4f93958d devfreq_event_reset_event +EXPORT_SYMBOL_GPL vmlinux 0x4f98d766 cpu_pm_unregister_notifier +EXPORT_SYMBOL_GPL vmlinux 0x4f9bca83 debugfs_real_fops +EXPORT_SYMBOL_GPL vmlinux 0x4f9db54d netdev_rx_handler_register +EXPORT_SYMBOL_GPL vmlinux 0x4fa4d1f4 sdhci_suspend_host +EXPORT_SYMBOL_GPL vmlinux 0x4fb06134 wakeup_source_register +EXPORT_SYMBOL_GPL vmlinux 0x4fb0625d mtd_get_user_prot_info +EXPORT_SYMBOL_GPL vmlinux 0x4fcf08dd bpf_redirect_info +EXPORT_SYMBOL_GPL vmlinux 0x4fdc945d sata_deb_timing_normal +EXPORT_SYMBOL_GPL vmlinux 0x4fe1eddf unregister_netevent_notifier +EXPORT_SYMBOL_GPL vmlinux 0x4fec2099 snd_soc_dapm_enable_pin_unlocked +EXPORT_SYMBOL_GPL vmlinux 0x4ff6d3df regulator_set_pull_down_regmap +EXPORT_SYMBOL_GPL vmlinux 0x5007b410 xhci_dbg_trace +EXPORT_SYMBOL_GPL vmlinux 0x50114cb3 fib_nh_common_init +EXPORT_SYMBOL_GPL vmlinux 0x501c5b27 get_kernel_pages +EXPORT_SYMBOL_GPL vmlinux 0x503461c5 md_stop +EXPORT_SYMBOL_GPL vmlinux 0x503c5951 devm_regulator_register +EXPORT_SYMBOL_GPL vmlinux 0x503eeebb synth_event_add_fields +EXPORT_SYMBOL_GPL vmlinux 0x506595b1 power_supply_am_i_supplied +EXPORT_SYMBOL_GPL vmlinux 0x5073279a of_get_fb_videomode +EXPORT_SYMBOL_GPL vmlinux 0x507ebc7d fl6_update_dst +EXPORT_SYMBOL_GPL vmlinux 0x50855306 dev_pm_domain_attach +EXPORT_SYMBOL_GPL vmlinux 0x5086b884 snd_soc_dai_set_tdm_slot +EXPORT_SYMBOL_GPL vmlinux 0x5086c2d9 mvebu_mbus_get_dram_win_info +EXPORT_SYMBOL_GPL vmlinux 0x508afef4 usb_anchor_suspend_wakeups +EXPORT_SYMBOL_GPL vmlinux 0x5091b823 ring_buffer_read_start +EXPORT_SYMBOL_GPL vmlinux 0x509d5f55 clk_divider_ro_ops +EXPORT_SYMBOL_GPL vmlinux 0x50a7ce41 file_ra_state_init +EXPORT_SYMBOL_GPL vmlinux 0x50b127a5 regmap_get_raw_write_max +EXPORT_SYMBOL_GPL vmlinux 0x50b88f41 usb_get_gadget_udc_name +EXPORT_SYMBOL_GPL vmlinux 0x50c84c9e snd_soc_dapm_new_controls +EXPORT_SYMBOL_GPL vmlinux 0x50c89f23 __alloc_percpu +EXPORT_SYMBOL_GPL vmlinux 0x50cb7de0 rockchip_pcie_deinit_phys +EXPORT_SYMBOL_GPL vmlinux 0x50ceaa55 devlink_port_attrs_pci_vf_set +EXPORT_SYMBOL_GPL vmlinux 0x50cf7537 mddev_init +EXPORT_SYMBOL_GPL vmlinux 0x50e5f910 serdev_device_write_wakeup +EXPORT_SYMBOL_GPL vmlinux 0x50e7193a __i2c_first_dynamic_bus_num +EXPORT_SYMBOL_GPL vmlinux 0x50fad434 round_jiffies_up +EXPORT_SYMBOL_GPL vmlinux 0x50feda70 pci_probe_reset_bus +EXPORT_SYMBOL_GPL vmlinux 0x50ff7b76 deregister_mtd_blktrans +EXPORT_SYMBOL_GPL vmlinux 0x51058329 init_uts_ns +EXPORT_SYMBOL_GPL vmlinux 0x511b24de rt_mutex_trylock +EXPORT_SYMBOL_GPL vmlinux 0x51390c96 rcu_barrier_tasks_rude +EXPORT_SYMBOL_GPL vmlinux 0x513ad2dc platform_device_add_resources +EXPORT_SYMBOL_GPL vmlinux 0x514fc1c3 i2c_slave_unregister +EXPORT_SYMBOL_GPL vmlinux 0x51552503 blk_mq_sched_request_inserted +EXPORT_SYMBOL_GPL vmlinux 0x51715a53 usb_ep0_reinit +EXPORT_SYMBOL_GPL vmlinux 0x51733b90 icc_set_tag +EXPORT_SYMBOL_GPL vmlinux 0x51754009 inet_hashinfo2_init_mod +EXPORT_SYMBOL_GPL vmlinux 0x5190a0c7 mtk_pinconf_bias_disable_set +EXPORT_SYMBOL_GPL vmlinux 0x51a1966b ping_recvmsg +EXPORT_SYMBOL_GPL vmlinux 0x51a348cc usb_role_switch_set_drvdata +EXPORT_SYMBOL_GPL vmlinux 0x51c2fc23 bpf_prog_create +EXPORT_SYMBOL_GPL vmlinux 0x51cf0049 extcon_sync +EXPORT_SYMBOL_GPL vmlinux 0x51d04ea2 tpm_chip_stop +EXPORT_SYMBOL_GPL vmlinux 0x51d4f88c virtio_config_enable +EXPORT_SYMBOL_GPL vmlinux 0x51dae1c3 devlink_param_value_changed +EXPORT_SYMBOL_GPL vmlinux 0x51ef89fc mtd_read_fact_prot_reg +EXPORT_SYMBOL_GPL vmlinux 0x51f1a161 __kthread_init_worker +EXPORT_SYMBOL_GPL vmlinux 0x52092315 pci_ignore_hotplug +EXPORT_SYMBOL_GPL vmlinux 0x52252316 clk_unregister_fixed_rate +EXPORT_SYMBOL_GPL vmlinux 0x5227baaa debugfs_create_blob +EXPORT_SYMBOL_GPL vmlinux 0x522ee651 __module_text_address +EXPORT_SYMBOL_GPL vmlinux 0x5236497d trace_clock +EXPORT_SYMBOL_GPL vmlinux 0x523cefbe __audit_inode_child +EXPORT_SYMBOL_GPL vmlinux 0x523fd3b1 serial8250_do_set_divisor +EXPORT_SYMBOL_GPL vmlinux 0x5271dbf4 pci_ioremap_io +EXPORT_SYMBOL_GPL vmlinux 0x52783029 snd_soc_of_put_dai_link_codecs +EXPORT_SYMBOL_GPL vmlinux 0x527dc6da max8997_bulk_write +EXPORT_SYMBOL_GPL vmlinux 0x5283012b snd_dmaengine_pcm_trigger +EXPORT_SYMBOL_GPL vmlinux 0x529395ad edac_mc_del_mc +EXPORT_SYMBOL_GPL vmlinux 0x52a64a22 device_wakeup_enable +EXPORT_SYMBOL_GPL vmlinux 0x52aaae94 xdp_rxq_info_reg_mem_model +EXPORT_SYMBOL_GPL vmlinux 0x52b1e3c7 pci_flags +EXPORT_SYMBOL_GPL vmlinux 0x52b3e8a1 is_hash_blacklisted +EXPORT_SYMBOL_GPL vmlinux 0x52b96b90 sdev_evt_send_simple +EXPORT_SYMBOL_GPL vmlinux 0x52c1a3b6 usb_gen_phy_init +EXPORT_SYMBOL_GPL vmlinux 0x52c35e83 call_rcu_tasks_trace +EXPORT_SYMBOL_GPL vmlinux 0x52d44ac4 max8997_read_reg +EXPORT_SYMBOL_GPL vmlinux 0x52d54fce devlink_info_version_stored_put +EXPORT_SYMBOL_GPL vmlinux 0x52e0b73e ata_bmdma_setup +EXPORT_SYMBOL_GPL vmlinux 0x52eb9cab pci_user_read_config_byte +EXPORT_SYMBOL_GPL vmlinux 0x52f21cc5 thermal_cooling_device_register +EXPORT_SYMBOL_GPL vmlinux 0x530484d5 scsi_internal_device_unblock_nowait +EXPORT_SYMBOL_GPL vmlinux 0x5305e8ee usb_gadget_activate +EXPORT_SYMBOL_GPL vmlinux 0x530ca30a ata_sff_dma_pause +EXPORT_SYMBOL_GPL vmlinux 0x531f701e xdp_rxq_info_reg +EXPORT_SYMBOL_GPL vmlinux 0x53408b86 validate_xmit_xfrm +EXPORT_SYMBOL_GPL vmlinux 0x5358864e devlink_fmsg_binary_pair_nest_end +EXPORT_SYMBOL_GPL vmlinux 0x53667c9c ata_qc_complete_multiple +EXPORT_SYMBOL_GPL vmlinux 0x536822e3 sfp_module_insert +EXPORT_SYMBOL_GPL vmlinux 0x5375935f pm_generic_freeze_late +EXPORT_SYMBOL_GPL vmlinux 0x53799581 bpf_trace_run8 +EXPORT_SYMBOL_GPL vmlinux 0x537a259b tpm2_get_cc_attrs_tbl +EXPORT_SYMBOL_GPL vmlinux 0x537ca3f0 snd_soc_of_get_dai_name +EXPORT_SYMBOL_GPL vmlinux 0x538d073d phy_duplex_to_str +EXPORT_SYMBOL_GPL vmlinux 0x539774b3 synth_event_add_val +EXPORT_SYMBOL_GPL vmlinux 0x53a52129 skb_append_pagefrags +EXPORT_SYMBOL_GPL vmlinux 0x53aba5a1 fscrypt_show_test_dummy_encryption +EXPORT_SYMBOL_GPL vmlinux 0x53b43159 regmap_reinit_cache +EXPORT_SYMBOL_GPL vmlinux 0x53e06c0c power_supply_find_ocv2cap_table +EXPORT_SYMBOL_GPL vmlinux 0x53e100b7 gpiod_to_chip +EXPORT_SYMBOL_GPL vmlinux 0x53e44378 cpuidle_enable_device +EXPORT_SYMBOL_GPL vmlinux 0x53fc8f45 nvmem_device_get +EXPORT_SYMBOL_GPL vmlinux 0x54172702 cci_disable_port_by_cpu +EXPORT_SYMBOL_GPL vmlinux 0x5419375a phy_package_leave +EXPORT_SYMBOL_GPL vmlinux 0x541bd60a irq_work_run +EXPORT_SYMBOL_GPL vmlinux 0x54325c63 snd_pcm_hw_constraint_eld +EXPORT_SYMBOL_GPL vmlinux 0x5435454c divider_ro_round_rate_parent +EXPORT_SYMBOL_GPL vmlinux 0x543e27e3 skb_zerocopy_iter_dgram +EXPORT_SYMBOL_GPL vmlinux 0x545ea4d3 ata_dummy_port_ops +EXPORT_SYMBOL_GPL vmlinux 0x5463df96 regcache_mark_dirty +EXPORT_SYMBOL_GPL vmlinux 0x548020af snd_soc_get_enum_double +EXPORT_SYMBOL_GPL vmlinux 0x549436fa fwnode_usb_role_switch_get +EXPORT_SYMBOL_GPL vmlinux 0x549525ef handle_nested_irq +EXPORT_SYMBOL_GPL vmlinux 0x549c2783 ata_sff_qc_fill_rtf +EXPORT_SYMBOL_GPL vmlinux 0x54a25da2 qcom_smem_state_put +EXPORT_SYMBOL_GPL vmlinux 0x54aa2864 irq_domain_associate +EXPORT_SYMBOL_GPL vmlinux 0x54b38160 dequeue_signal +EXPORT_SYMBOL_GPL vmlinux 0x54c3b17c devm_regulator_unregister_supply_alias +EXPORT_SYMBOL_GPL vmlinux 0x54cddcac dev_pm_domain_set +EXPORT_SYMBOL_GPL vmlinux 0x54e2a844 blk_mq_freeze_queue_wait +EXPORT_SYMBOL_GPL vmlinux 0x54e9052c tracepoint_probe_register +EXPORT_SYMBOL_GPL vmlinux 0x54e9bf10 sock_gen_put +EXPORT_SYMBOL_GPL vmlinux 0x54f0bd3e ata_sas_port_suspend +EXPORT_SYMBOL_GPL vmlinux 0x54fc34be regcache_cache_only +EXPORT_SYMBOL_GPL vmlinux 0x54fec1c0 pinctrl_register_and_init +EXPORT_SYMBOL_GPL vmlinux 0x551335dd serial8250_rpm_get_tx +EXPORT_SYMBOL_GPL vmlinux 0x55339365 flush_delayed_fput +EXPORT_SYMBOL_GPL vmlinux 0x553b49a4 cpufreq_get_driver_data +EXPORT_SYMBOL_GPL vmlinux 0x553c0d3a vchan_tx_submit +EXPORT_SYMBOL_GPL vmlinux 0x553c5846 ata_port_abort +EXPORT_SYMBOL_GPL vmlinux 0x55417264 unregister_vt_notifier +EXPORT_SYMBOL_GPL vmlinux 0x555da5aa power_supply_property_is_writeable +EXPORT_SYMBOL_GPL vmlinux 0x556e4390 clk_get_rate +EXPORT_SYMBOL_GPL vmlinux 0x55784228 regmap_irq_get_virq +EXPORT_SYMBOL_GPL vmlinux 0x5578edff tty_set_ldisc +EXPORT_SYMBOL_GPL vmlinux 0x558b3693 tpm_default_chip +EXPORT_SYMBOL_GPL vmlinux 0x55934ce4 mtd_write +EXPORT_SYMBOL_GPL vmlinux 0x5598fb41 spi_res_alloc +EXPORT_SYMBOL_GPL vmlinux 0x55acaf6d dev_pm_opp_get_max_clock_latency +EXPORT_SYMBOL_GPL vmlinux 0x55c2beaf pci_pasid_features +EXPORT_SYMBOL_GPL vmlinux 0x55c50e05 blk_ksm_init +EXPORT_SYMBOL_GPL vmlinux 0x55c6484d xfrm_audit_state_add +EXPORT_SYMBOL_GPL vmlinux 0x55c76a23 ksys_sync_helper +EXPORT_SYMBOL_GPL vmlinux 0x55cd9783 pinctrl_utils_reserve_map +EXPORT_SYMBOL_GPL vmlinux 0x55eecff4 bit_wait_io_timeout +EXPORT_SYMBOL_GPL vmlinux 0x55efaa82 xhci_resume +EXPORT_SYMBOL_GPL vmlinux 0x55ff38ea iommu_present +EXPORT_SYMBOL_GPL vmlinux 0x56045541 call_switchdev_notifiers +EXPORT_SYMBOL_GPL vmlinux 0x56054c05 crypto_it_tab +EXPORT_SYMBOL_GPL vmlinux 0x56173654 pcap_set_ts_bits +EXPORT_SYMBOL_GPL vmlinux 0x561835eb init_rs_non_canonical +EXPORT_SYMBOL_GPL vmlinux 0x561be3e8 devfreq_event_is_enabled +EXPORT_SYMBOL_GPL vmlinux 0x56256e8a orderly_poweroff +EXPORT_SYMBOL_GPL vmlinux 0x56310925 regulator_mode_to_status +EXPORT_SYMBOL_GPL vmlinux 0x5632e63d nand_subop_get_num_addr_cyc +EXPORT_SYMBOL_GPL vmlinux 0x563d4d55 spi_register_controller +EXPORT_SYMBOL_GPL vmlinux 0x5641485b tty_termios_encode_baud_rate +EXPORT_SYMBOL_GPL vmlinux 0x56a6a76c net_rwsem +EXPORT_SYMBOL_GPL vmlinux 0x56b63670 lzo1x_1_compress +EXPORT_SYMBOL_GPL vmlinux 0x56bd6c14 of_get_display_timings +EXPORT_SYMBOL_GPL vmlinux 0x56d431d6 __clk_mux_determine_rate_closest +EXPORT_SYMBOL_GPL vmlinux 0x56dddf19 thermal_zone_bind_cooling_device +EXPORT_SYMBOL_GPL vmlinux 0x56e9103b cpu_pm_enter +EXPORT_SYMBOL_GPL vmlinux 0x56f1cc92 wakeup_sources_walk_next +EXPORT_SYMBOL_GPL vmlinux 0x57059f8d sdhci_dumpregs +EXPORT_SYMBOL_GPL vmlinux 0x572ca1a0 blk_ksm_destroy +EXPORT_SYMBOL_GPL vmlinux 0x573b5453 ipv6_fixup_options +EXPORT_SYMBOL_GPL vmlinux 0x5743f393 fwnode_create_software_node +EXPORT_SYMBOL_GPL vmlinux 0x574dbb70 device_property_read_string +EXPORT_SYMBOL_GPL vmlinux 0x575016da devm_power_supply_get_by_phandle +EXPORT_SYMBOL_GPL vmlinux 0x576b546c snd_soc_dai_compr_trigger +EXPORT_SYMBOL_GPL vmlinux 0x57737880 snd_soc_debugfs_root +EXPORT_SYMBOL_GPL vmlinux 0x577394f8 arm_iommu_release_mapping +EXPORT_SYMBOL_GPL vmlinux 0x5779cb54 pin_user_pages_fast +EXPORT_SYMBOL_GPL vmlinux 0x578666ba phy_restore_page +EXPORT_SYMBOL_GPL vmlinux 0x578b1be4 sdhci_send_tuning +EXPORT_SYMBOL_GPL vmlinux 0x5790e7a0 pci_unlock_rescan_remove +EXPORT_SYMBOL_GPL vmlinux 0x57922fe3 sdhci_start_tuning +EXPORT_SYMBOL_GPL vmlinux 0x579e0bf5 rtnl_unregister_all +EXPORT_SYMBOL_GPL vmlinux 0x57a231cc usb_decode_ctrl +EXPORT_SYMBOL_GPL vmlinux 0x57a7c1e5 devm_watchdog_register_device +EXPORT_SYMBOL_GPL vmlinux 0x57accc5e gpiod_get_raw_value_cansleep +EXPORT_SYMBOL_GPL vmlinux 0x57c23399 transport_class_unregister +EXPORT_SYMBOL_GPL vmlinux 0x57c39727 kdb_register_flags +EXPORT_SYMBOL_GPL vmlinux 0x57d1f270 tpm1_do_selftest +EXPORT_SYMBOL_GPL vmlinux 0x57d2e935 snd_soc_dpcm_can_be_free_stop +EXPORT_SYMBOL_GPL vmlinux 0x57d6ef2d regulator_bulk_get +EXPORT_SYMBOL_GPL vmlinux 0x57da358a phy_exit +EXPORT_SYMBOL_GPL vmlinux 0x57e08115 add_disk_randomness +EXPORT_SYMBOL_GPL vmlinux 0x57e22073 blk_queue_rq_timeout +EXPORT_SYMBOL_GPL vmlinux 0x57ea7814 pm_clk_add_clk +EXPORT_SYMBOL_GPL vmlinux 0x57f70547 secure_ipv4_port_ephemeral +EXPORT_SYMBOL_GPL vmlinux 0x57f844a0 strp_stop +EXPORT_SYMBOL_GPL vmlinux 0x57fe308c i2c_client_type +EXPORT_SYMBOL_GPL vmlinux 0x57ff6bd2 em_cpu_get +EXPORT_SYMBOL_GPL vmlinux 0x58040f8d pci_disable_pasid +EXPORT_SYMBOL_GPL vmlinux 0x58065a22 usb_get_dev +EXPORT_SYMBOL_GPL vmlinux 0x58261de7 shmem_file_setup_with_mnt +EXPORT_SYMBOL_GPL vmlinux 0x5831e062 cpus_read_trylock +EXPORT_SYMBOL_GPL vmlinux 0x5838e933 dm_suspended +EXPORT_SYMBOL_GPL vmlinux 0x583e7aac spi_take_timestamp_pre +EXPORT_SYMBOL_GPL vmlinux 0x584f938f wm5110_revd_irq +EXPORT_SYMBOL_GPL vmlinux 0x585df369 trace_define_field +EXPORT_SYMBOL_GPL vmlinux 0x58631dab imx_audmux_v2_configure_port +EXPORT_SYMBOL_GPL vmlinux 0x5879a27d sfp_get_module_info +EXPORT_SYMBOL_GPL vmlinux 0x5879df48 ahci_platform_shutdown +EXPORT_SYMBOL_GPL vmlinux 0x587a9026 snd_soc_dai_set_fmt +EXPORT_SYMBOL_GPL vmlinux 0x587ac04d cpufreq_show_cpus +EXPORT_SYMBOL_GPL vmlinux 0x587d759a proc_create_net_data +EXPORT_SYMBOL_GPL vmlinux 0x58903802 wait_on_page_writeback +EXPORT_SYMBOL_GPL vmlinux 0x5893ea04 wb_writeout_inc +EXPORT_SYMBOL_GPL vmlinux 0x5897872c pstore_unregister +EXPORT_SYMBOL_GPL vmlinux 0x58b73c78 ata_ehi_clear_desc +EXPORT_SYMBOL_GPL vmlinux 0x58c5784c fsl_mc_device_group +EXPORT_SYMBOL_GPL vmlinux 0x58ccf1c4 tcp_reno_cong_avoid +EXPORT_SYMBOL_GPL vmlinux 0x58d6bef8 blk_add_driver_data +EXPORT_SYMBOL_GPL vmlinux 0x58def6ca sfp_module_remove +EXPORT_SYMBOL_GPL vmlinux 0x58ed5732 pm_generic_runtime_resume +EXPORT_SYMBOL_GPL vmlinux 0x58f0308a clk_regmap_divider_ops +EXPORT_SYMBOL_GPL vmlinux 0x58f3577b posix_clock_register +EXPORT_SYMBOL_GPL vmlinux 0x58fc03ec tc3589x_block_write +EXPORT_SYMBOL_GPL vmlinux 0x5906aaa7 regulator_map_voltage_ascend +EXPORT_SYMBOL_GPL vmlinux 0x59076158 security_path_truncate +EXPORT_SYMBOL_GPL vmlinux 0x59138e93 ehci_handshake +EXPORT_SYMBOL_GPL vmlinux 0x5920c651 pm_genpd_add_subdomain +EXPORT_SYMBOL_GPL vmlinux 0x59397d16 debugfs_remove +EXPORT_SYMBOL_GPL vmlinux 0x59399e2d pinconf_generic_dt_subnode_to_map +EXPORT_SYMBOL_GPL vmlinux 0x5939f160 __udp_gso_segment +EXPORT_SYMBOL_GPL vmlinux 0x593f36e3 nvm_get_chunk_meta +EXPORT_SYMBOL_GPL vmlinux 0x59502fbe crypto_grab_ahash +EXPORT_SYMBOL_GPL vmlinux 0x595483d4 register_wide_hw_breakpoint +EXPORT_SYMBOL_GPL vmlinux 0x595d4f54 xdp_rxq_info_is_reg +EXPORT_SYMBOL_GPL vmlinux 0x59633f8f usb_enable_lpm +EXPORT_SYMBOL_GPL vmlinux 0x5979bf4c skb_complete_wifi_ack +EXPORT_SYMBOL_GPL vmlinux 0x5986d190 kdb_printf +EXPORT_SYMBOL_GPL vmlinux 0x5988b961 da903x_reads +EXPORT_SYMBOL_GPL vmlinux 0x599184a8 mnt_clone_write +EXPORT_SYMBOL_GPL vmlinux 0x59a1fab8 ehci_cf_port_reset_rwsem +EXPORT_SYMBOL_GPL vmlinux 0x59b5def6 clk_regmap_gate_ops +EXPORT_SYMBOL_GPL vmlinux 0x59b75ce9 __sbitmap_queue_get_shallow +EXPORT_SYMBOL_GPL vmlinux 0x59bf3f8f usb_get_dr_mode +EXPORT_SYMBOL_GPL vmlinux 0x59c1659e of_genpd_remove_last +EXPORT_SYMBOL_GPL vmlinux 0x59cd9405 ip_local_out +EXPORT_SYMBOL_GPL vmlinux 0x59cdb410 blk_rq_unprep_clone +EXPORT_SYMBOL_GPL vmlinux 0x59dd963a dev_pm_opp_of_get_opp_desc_node +EXPORT_SYMBOL_GPL vmlinux 0x59de3454 bus_remove_file +EXPORT_SYMBOL_GPL vmlinux 0x59f43571 mtk_pinconf_drive_get +EXPORT_SYMBOL_GPL vmlinux 0x5a049df5 snd_soc_component_read32 +EXPORT_SYMBOL_GPL vmlinux 0x5a0b4462 dev_nit_active +EXPORT_SYMBOL_GPL vmlinux 0x5a10169c rio_mport_read_config_8 +EXPORT_SYMBOL_GPL vmlinux 0x5a160450 mdiobus_modify +EXPORT_SYMBOL_GPL vmlinux 0x5a1d134a rcu_momentary_dyntick_idle +EXPORT_SYMBOL_GPL vmlinux 0x5a46def4 led_sysfs_disable +EXPORT_SYMBOL_GPL vmlinux 0x5a49dbc9 timerqueue_del +EXPORT_SYMBOL_GPL vmlinux 0x5a61d58a ata_sff_freeze +EXPORT_SYMBOL_GPL vmlinux 0x5a6cdb52 nf_ct_zone_dflt +EXPORT_SYMBOL_GPL vmlinux 0x5a7246a8 regmap_update_bits_base +EXPORT_SYMBOL_GPL vmlinux 0x5a76e56b sbitmap_prepare_to_wait +EXPORT_SYMBOL_GPL vmlinux 0x5a7bfe41 crypto_probing_notify +EXPORT_SYMBOL_GPL vmlinux 0x5a946c68 device_property_read_u32_array +EXPORT_SYMBOL_GPL vmlinux 0x5a99ceae virtqueue_get_buf +EXPORT_SYMBOL_GPL vmlinux 0x5aa1db77 crypto_register_rng +EXPORT_SYMBOL_GPL vmlinux 0x5aafbed2 spi_replace_transfers +EXPORT_SYMBOL_GPL vmlinux 0x5ab09745 edac_get_owner +EXPORT_SYMBOL_GPL vmlinux 0x5ab936af ata_bmdma_qc_issue +EXPORT_SYMBOL_GPL vmlinux 0x5abb3e7f ata_bmdma_irq_clear +EXPORT_SYMBOL_GPL vmlinux 0x5abfac14 pci_epc_get_msix +EXPORT_SYMBOL_GPL vmlinux 0x5ac24451 unregister_kprobe +EXPORT_SYMBOL_GPL vmlinux 0x5ad2447c blkcg_policy_unregister +EXPORT_SYMBOL_GPL vmlinux 0x5adab7a2 regulator_suspend_enable +EXPORT_SYMBOL_GPL vmlinux 0x5ae80999 icc_get +EXPORT_SYMBOL_GPL vmlinux 0x5aeb7d93 vring_del_virtqueue +EXPORT_SYMBOL_GPL vmlinux 0x5af00bb7 gov_attr_set_init +EXPORT_SYMBOL_GPL vmlinux 0x5b0c18d6 nand_change_read_column_op +EXPORT_SYMBOL_GPL vmlinux 0x5b18b3b8 xdp_attachment_setup +EXPORT_SYMBOL_GPL vmlinux 0x5b21ceff ring_buffer_iter_peek +EXPORT_SYMBOL_GPL vmlinux 0x5b2b337f nl_table +EXPORT_SYMBOL_GPL vmlinux 0x5b316080 software_node_unregister_nodes +EXPORT_SYMBOL_GPL vmlinux 0x5b3f8900 musb_queue_resume_work +EXPORT_SYMBOL_GPL vmlinux 0x5b520767 regulator_set_suspend_voltage +EXPORT_SYMBOL_GPL vmlinux 0x5b65c85d wm8350_reg_write +EXPORT_SYMBOL_GPL vmlinux 0x5b6a71b9 tc3589x_set_bits +EXPORT_SYMBOL_GPL vmlinux 0x5b72f33e regulator_get_bypass_regmap +EXPORT_SYMBOL_GPL vmlinux 0x5b8da080 sdhci_cleanup_host +EXPORT_SYMBOL_GPL vmlinux 0x5b9e30ad gpiochip_get_data +EXPORT_SYMBOL_GPL vmlinux 0x5bb6bb5d spi_unregister_device +EXPORT_SYMBOL_GPL vmlinux 0x5bbd5bd2 powercap_unregister_control_type +EXPORT_SYMBOL_GPL vmlinux 0x5bc4d9c9 devlink_region_snapshot_id_get +EXPORT_SYMBOL_GPL vmlinux 0x5bca223d devm_regulator_unregister +EXPORT_SYMBOL_GPL vmlinux 0x5bd0748f crypto_del_default_rng +EXPORT_SYMBOL_GPL vmlinux 0x5bdae35b usb_phy_roothub_set_mode +EXPORT_SYMBOL_GPL vmlinux 0x5bdbac4e rcu_unexpedite_gp +EXPORT_SYMBOL_GPL vmlinux 0x5be0542b pm_clk_add +EXPORT_SYMBOL_GPL vmlinux 0x5bf66f9c ata_sff_busy_sleep +EXPORT_SYMBOL_GPL vmlinux 0x5c05b933 tpm2_get_tpm_pt +EXPORT_SYMBOL_GPL vmlinux 0x5c18af37 dapm_kcontrol_get_value +EXPORT_SYMBOL_GPL vmlinux 0x5c26f451 i2c_slave_register +EXPORT_SYMBOL_GPL vmlinux 0x5c2b0a38 usb_put_dev +EXPORT_SYMBOL_GPL vmlinux 0x5c2bcd37 bpf_warn_invalid_xdp_action +EXPORT_SYMBOL_GPL vmlinux 0x5c5a1b16 tick_broadcast_control +EXPORT_SYMBOL_GPL vmlinux 0x5c66e90c efivar_run_worker +EXPORT_SYMBOL_GPL vmlinux 0x5c724709 memory_cgrp_subsys_on_dfl_key +EXPORT_SYMBOL_GPL vmlinux 0x5c7631e4 spi_async +EXPORT_SYMBOL_GPL vmlinux 0x5c7a25e8 perf_event_release_kernel +EXPORT_SYMBOL_GPL vmlinux 0x5c952eb2 cpufreq_freq_attr_scaling_available_freqs +EXPORT_SYMBOL_GPL vmlinux 0x5ca22b24 led_set_brightness_sync +EXPORT_SYMBOL_GPL vmlinux 0x5cad8fc3 power_supply_ocv2cap_simple +EXPORT_SYMBOL_GPL vmlinux 0x5cbf491f gpiod_cansleep +EXPORT_SYMBOL_GPL vmlinux 0x5ccecbcb __kthread_should_park +EXPORT_SYMBOL_GPL vmlinux 0x5cd719c8 crypto_register_acomps +EXPORT_SYMBOL_GPL vmlinux 0x5cd9612c ata_sff_postreset +EXPORT_SYMBOL_GPL vmlinux 0x5cede61a crypto_larval_alloc +EXPORT_SYMBOL_GPL vmlinux 0x5cf325bc blk_mq_quiesce_queue_nowait +EXPORT_SYMBOL_GPL vmlinux 0x5cfcdb16 pwmchip_add +EXPORT_SYMBOL_GPL vmlinux 0x5d03fed7 scmi_driver_register +EXPORT_SYMBOL_GPL vmlinux 0x5d08d43a mtk_smi_larb_put +EXPORT_SYMBOL_GPL vmlinux 0x5d0a84c9 mtk_pinconf_adv_pull_get +EXPORT_SYMBOL_GPL vmlinux 0x5d31f97e mtd_unlock +EXPORT_SYMBOL_GPL vmlinux 0x5d35b43f __srcu_read_unlock +EXPORT_SYMBOL_GPL vmlinux 0x5d5980c3 iommu_sva_unbind_device +EXPORT_SYMBOL_GPL vmlinux 0x5d5a8f77 devlink_dpipe_headers_unregister +EXPORT_SYMBOL_GPL vmlinux 0x5d60e5a2 fscrypt_ioctl_remove_key_all_users +EXPORT_SYMBOL_GPL vmlinux 0x5d6a46b9 udp4_lib_lookup +EXPORT_SYMBOL_GPL vmlinux 0x5d708f99 clk_register_mux_table +EXPORT_SYMBOL_GPL vmlinux 0x5d715b0d crypto_ahash_digest +EXPORT_SYMBOL_GPL vmlinux 0x5d71cc5c rt_mutex_lock +EXPORT_SYMBOL_GPL vmlinux 0x5d8476d3 bpf_sk_storage_diag_alloc +EXPORT_SYMBOL_GPL vmlinux 0x5d9d49ca ahci_platform_init_host +EXPORT_SYMBOL_GPL vmlinux 0x5da67adc zs_compact +EXPORT_SYMBOL_GPL vmlinux 0x5dbe4631 trace_event_reg +EXPORT_SYMBOL_GPL vmlinux 0x5dde12d5 ip6_route_output_flags_noref +EXPORT_SYMBOL_GPL vmlinux 0x5de5ab59 dmaengine_desc_get_metadata_ptr +EXPORT_SYMBOL_GPL vmlinux 0x5df778c5 __tracepoint_kfree_skb +EXPORT_SYMBOL_GPL vmlinux 0x5dfe35bd dev_pm_domain_start +EXPORT_SYMBOL_GPL vmlinux 0x5dff6fda x509_decode_time +EXPORT_SYMBOL_GPL vmlinux 0x5e0622cf skb_zerocopy +EXPORT_SYMBOL_GPL vmlinux 0x5e0678f3 devlink_port_attrs_pci_pf_set +EXPORT_SYMBOL_GPL vmlinux 0x5e0c550e snd_soc_new_ac97_component +EXPORT_SYMBOL_GPL vmlinux 0x5e12ecc1 __tracepoint_rpm_return_int +EXPORT_SYMBOL_GPL vmlinux 0x5e1b9961 of_reserved_mem_lookup +EXPORT_SYMBOL_GPL vmlinux 0x5e1e080d devm_thermal_zone_of_sensor_unregister +EXPORT_SYMBOL_GPL vmlinux 0x5e2115ba sdio_retune_release +EXPORT_SYMBOL_GPL vmlinux 0x5e36f080 ahci_save_initial_config +EXPORT_SYMBOL_GPL vmlinux 0x5e47b0f5 __devm_regmap_init +EXPORT_SYMBOL_GPL vmlinux 0x5e515be6 ktime_get_ts64 +EXPORT_SYMBOL_GPL vmlinux 0x5e67b71d evm_set_key +EXPORT_SYMBOL_GPL vmlinux 0x5e798ffb divider_get_val +EXPORT_SYMBOL_GPL vmlinux 0x5e7ed468 blkdev_read_iter +EXPORT_SYMBOL_GPL vmlinux 0x5e85415b ring_buffer_consume +EXPORT_SYMBOL_GPL vmlinux 0x5e8b0860 ahci_shost_attrs +EXPORT_SYMBOL_GPL vmlinux 0x5e8d08f2 sdhci_remove_host +EXPORT_SYMBOL_GPL vmlinux 0x5ea57b88 relay_close +EXPORT_SYMBOL_GPL vmlinux 0x5eb368ad ahci_init_controller +EXPORT_SYMBOL_GPL vmlinux 0x5ec62549 ata_dev_classify +EXPORT_SYMBOL_GPL vmlinux 0x5ee07278 of_dma_simple_xlate +EXPORT_SYMBOL_GPL vmlinux 0x5ee8fba1 pci_generic_config_write32 +EXPORT_SYMBOL_GPL vmlinux 0x5ef008ae skcipher_walk_complete +EXPORT_SYMBOL_GPL vmlinux 0x5f00badb fuse_dev_free +EXPORT_SYMBOL_GPL vmlinux 0x5f02b72d __dma_request_channel +EXPORT_SYMBOL_GPL vmlinux 0x5f038459 phy_check_downshift +EXPORT_SYMBOL_GPL vmlinux 0x5f0ede3e netlink_add_tap +EXPORT_SYMBOL_GPL vmlinux 0x5f0ee569 snd_soc_dai_set_pll +EXPORT_SYMBOL_GPL vmlinux 0x5f2d1e91 ncsi_vlan_rx_kill_vid +EXPORT_SYMBOL_GPL vmlinux 0x5f5383ce kthread_mod_delayed_work +EXPORT_SYMBOL_GPL vmlinux 0x5f5aebc2 rio_mport_write_config_32 +EXPORT_SYMBOL_GPL vmlinux 0x5f607b21 balloon_page_alloc +EXPORT_SYMBOL_GPL vmlinux 0x5f647e07 nexthop_select_path +EXPORT_SYMBOL_GPL vmlinux 0x5f6ef280 led_update_brightness +EXPORT_SYMBOL_GPL vmlinux 0x5f6f1e9e dax_get_private +EXPORT_SYMBOL_GPL vmlinux 0x5f808bdd serdev_device_alloc +EXPORT_SYMBOL_GPL vmlinux 0x5f850f0f devfreq_cooling_unregister +EXPORT_SYMBOL_GPL vmlinux 0x5f8672ec wm831x_bulk_read +EXPORT_SYMBOL_GPL vmlinux 0x5f92aad8 i2c_handle_smbus_host_notify +EXPORT_SYMBOL_GPL vmlinux 0x5f97f6d4 pm_wakeup_ws_event +EXPORT_SYMBOL_GPL vmlinux 0x5f9e1a1a __tracepoint_neigh_event_send_dead +EXPORT_SYMBOL_GPL vmlinux 0x5fa3a75f pinctrl_lookup_state +EXPORT_SYMBOL_GPL vmlinux 0x5fab7490 __fsnotify_inode_delete +EXPORT_SYMBOL_GPL vmlinux 0x5fbcdb8e clk_register +EXPORT_SYMBOL_GPL vmlinux 0x5fc44681 pm_generic_thaw +EXPORT_SYMBOL_GPL vmlinux 0x5fca6ee6 edac_mc_find_csrow_by_page +EXPORT_SYMBOL_GPL vmlinux 0x5fd034e6 __efivar_entry_get +EXPORT_SYMBOL_GPL vmlinux 0x5fd88b7e yield_to +EXPORT_SYMBOL_GPL vmlinux 0x5fe7a3e7 perf_aux_output_end +EXPORT_SYMBOL_GPL vmlinux 0x5ff21923 tps6586x_read +EXPORT_SYMBOL_GPL vmlinux 0x5ff27091 snd_soc_jack_notifier_register +EXPORT_SYMBOL_GPL vmlinux 0x5ffc0a16 phy_10gbit_full_features +EXPORT_SYMBOL_GPL vmlinux 0x60033020 reset_controller_unregister +EXPORT_SYMBOL_GPL vmlinux 0x60078704 regulator_bulk_set_supply_names +EXPORT_SYMBOL_GPL vmlinux 0x60091316 clk_notifier_register +EXPORT_SYMBOL_GPL vmlinux 0x6027ba0b get_task_mm +EXPORT_SYMBOL_GPL vmlinux 0x602aeef0 lp8788_update_bits +EXPORT_SYMBOL_GPL vmlinux 0x6052ed89 debugfs_file_put +EXPORT_SYMBOL_GPL vmlinux 0x6053830d sdhci_request_atomic +EXPORT_SYMBOL_GPL vmlinux 0x60671345 software_node_register_nodes +EXPORT_SYMBOL_GPL vmlinux 0x6075d0c7 omap_tll_init +EXPORT_SYMBOL_GPL vmlinux 0x607c4683 devlink_info_version_fixed_put +EXPORT_SYMBOL_GPL vmlinux 0x607e794c page_cache_readahead_unbounded +EXPORT_SYMBOL_GPL vmlinux 0x6090de1f raw_seq_next +EXPORT_SYMBOL_GPL vmlinux 0x6091797f synchronize_rcu +EXPORT_SYMBOL_GPL vmlinux 0x60a13e90 rcu_barrier +EXPORT_SYMBOL_GPL vmlinux 0x60bcab98 fl6_merge_options +EXPORT_SYMBOL_GPL vmlinux 0x60bf23f7 smpboot_unregister_percpu_thread +EXPORT_SYMBOL_GPL vmlinux 0x60c01e56 device_reprobe +EXPORT_SYMBOL_GPL vmlinux 0x60c2dad1 ahci_sdev_attrs +EXPORT_SYMBOL_GPL vmlinux 0x60e41278 blkcg_policy_register +EXPORT_SYMBOL_GPL vmlinux 0x60e531c4 usb_urb_ep_type_check +EXPORT_SYMBOL_GPL vmlinux 0x60ebc96f ring_buffer_read_prepare +EXPORT_SYMBOL_GPL vmlinux 0x6114aa49 hisi_clk_init +EXPORT_SYMBOL_GPL vmlinux 0x611b07a6 regmap_noinc_write +EXPORT_SYMBOL_GPL vmlinux 0x6129fb93 sfp_remove_phy +EXPORT_SYMBOL_GPL vmlinux 0x612bfd89 errno_to_blk_status +EXPORT_SYMBOL_GPL vmlinux 0x614150ff __tracepoint_devlink_hwerr +EXPORT_SYMBOL_GPL vmlinux 0x614782f1 usb_anchor_empty +EXPORT_SYMBOL_GPL vmlinux 0x614adcb7 of_overlay_remove_all +EXPORT_SYMBOL_GPL vmlinux 0x614df71c cn_add_callback +EXPORT_SYMBOL_GPL vmlinux 0x616048c9 power_supply_unregister +EXPORT_SYMBOL_GPL vmlinux 0x616aa667 devm_regulator_get_exclusive +EXPORT_SYMBOL_GPL vmlinux 0x616b30c7 kmsg_dump_rewind +EXPORT_SYMBOL_GPL vmlinux 0x616bdfce led_classdev_register_ext +EXPORT_SYMBOL_GPL vmlinux 0x6181e79f timerqueue_add +EXPORT_SYMBOL_GPL vmlinux 0x618d3a38 devm_mdiobus_alloc_size +EXPORT_SYMBOL_GPL vmlinux 0x6194bf33 gpiochip_get_desc +EXPORT_SYMBOL_GPL vmlinux 0x619694a8 ipv6_proxy_select_ident +EXPORT_SYMBOL_GPL vmlinux 0x6198dfea __ring_buffer_alloc +EXPORT_SYMBOL_GPL vmlinux 0x6199ad5d crypto_has_skcipher +EXPORT_SYMBOL_GPL vmlinux 0x61a65a21 regmap_read +EXPORT_SYMBOL_GPL vmlinux 0x61ab4d9a regulator_get_error_flags +EXPORT_SYMBOL_GPL vmlinux 0x61ae420f devm_regulator_register_notifier +EXPORT_SYMBOL_GPL vmlinux 0x61af2524 virtqueue_get_desc_addr +EXPORT_SYMBOL_GPL vmlinux 0x61c9320a acomp_request_alloc +EXPORT_SYMBOL_GPL vmlinux 0x61d2a79c of_property_read_string +EXPORT_SYMBOL_GPL vmlinux 0x61d9b802 power_supply_set_battery_charged +EXPORT_SYMBOL_GPL vmlinux 0x61dc6ddd devres_for_each_res +EXPORT_SYMBOL_GPL vmlinux 0x61df4cfc blk_insert_cloned_request +EXPORT_SYMBOL_GPL vmlinux 0x61ebc741 __skb_get_hash_symmetric +EXPORT_SYMBOL_GPL vmlinux 0x61f574e1 powercap_register_zone +EXPORT_SYMBOL_GPL vmlinux 0x61f67c92 phy_gbit_features_array +EXPORT_SYMBOL_GPL vmlinux 0x62031367 pci_epc_set_msix +EXPORT_SYMBOL_GPL vmlinux 0x6203a470 iommu_domain_window_enable +EXPORT_SYMBOL_GPL vmlinux 0x6214920a tty_mode_ioctl +EXPORT_SYMBOL_GPL vmlinux 0x62216cbe usb_choose_configuration +EXPORT_SYMBOL_GPL vmlinux 0x622c7922 register_oom_notifier +EXPORT_SYMBOL_GPL vmlinux 0x62377a7b blk_io_schedule +EXPORT_SYMBOL_GPL vmlinux 0x6246a629 synchronize_rcu_tasks_trace +EXPORT_SYMBOL_GPL vmlinux 0x6257dda7 clk_rate_exclusive_get +EXPORT_SYMBOL_GPL vmlinux 0x6259d291 clk_restore_context +EXPORT_SYMBOL_GPL vmlinux 0x6273eee6 kernfs_get +EXPORT_SYMBOL_GPL vmlinux 0x628d2475 rtc_set_time +EXPORT_SYMBOL_GPL vmlinux 0x628e20f7 rio_unregister_scan +EXPORT_SYMBOL_GPL vmlinux 0x62b57898 fib_nl_delrule +EXPORT_SYMBOL_GPL vmlinux 0x62bb09bf clocks_calc_mult_shift +EXPORT_SYMBOL_GPL vmlinux 0x62bd0101 devlink_port_param_driverinit_value_set +EXPORT_SYMBOL_GPL vmlinux 0x62d0e2a6 __wake_up_locked +EXPORT_SYMBOL_GPL vmlinux 0x62d36df0 xhci_mtk_sch_exit +EXPORT_SYMBOL_GPL vmlinux 0x62d4962b param_set_bool_enable_only +EXPORT_SYMBOL_GPL vmlinux 0x62df0bc5 pci_check_and_mask_intx +EXPORT_SYMBOL_GPL vmlinux 0x62e3d653 __platform_driver_probe +EXPORT_SYMBOL_GPL vmlinux 0x62f0fccf pci_disable_rom +EXPORT_SYMBOL_GPL vmlinux 0x62f3b62f of_phy_provider_unregister +EXPORT_SYMBOL_GPL vmlinux 0x63022f53 blk_mq_rdma_map_queues +EXPORT_SYMBOL_GPL vmlinux 0x63150e06 clk_get_parent +EXPORT_SYMBOL_GPL vmlinux 0x6316f57a gpiochip_find +EXPORT_SYMBOL_GPL vmlinux 0x63197685 s2idle_wake +EXPORT_SYMBOL_GPL vmlinux 0x6319b85c net_ns_type_operations +EXPORT_SYMBOL_GPL vmlinux 0x63221b95 snd_soc_put_volsw +EXPORT_SYMBOL_GPL vmlinux 0x63538348 nand_soft_waitrdy +EXPORT_SYMBOL_GPL vmlinux 0x6353c730 mbox_chan_received_data +EXPORT_SYMBOL_GPL vmlinux 0x635580fa phy_get +EXPORT_SYMBOL_GPL vmlinux 0x637b45cf fwnode_connection_find_match +EXPORT_SYMBOL_GPL vmlinux 0x637d0d14 snd_soc_dai_compr_pointer +EXPORT_SYMBOL_GPL vmlinux 0x63842567 bsg_job_get +EXPORT_SYMBOL_GPL vmlinux 0x6384fb8c devlink_sb_register +EXPORT_SYMBOL_GPL vmlinux 0x6387672c snd_soc_dapm_disable_pin_unlocked +EXPORT_SYMBOL_GPL vmlinux 0x638a85b3 nvmem_add_cell_table +EXPORT_SYMBOL_GPL vmlinux 0x638d9f99 trace_array_set_clr_event +EXPORT_SYMBOL_GPL vmlinux 0x6394143f wm5110_patch +EXPORT_SYMBOL_GPL vmlinux 0x63adbf92 encode_rs8 +EXPORT_SYMBOL_GPL vmlinux 0x63b5824f snd_soc_component_get_pin_status +EXPORT_SYMBOL_GPL vmlinux 0x63c08029 clk_bulk_unprepare +EXPORT_SYMBOL_GPL vmlinux 0x63dd60f3 unix_peer_get +EXPORT_SYMBOL_GPL vmlinux 0x63de9697 snd_soc_dai_action +EXPORT_SYMBOL_GPL vmlinux 0x63f7dd80 fwnode_property_read_u64_array +EXPORT_SYMBOL_GPL vmlinux 0x63fc0198 ip_valid_fib_dump_req +EXPORT_SYMBOL_GPL vmlinux 0x64091fec spi_res_add +EXPORT_SYMBOL_GPL vmlinux 0x6409598c nand_reset +EXPORT_SYMBOL_GPL vmlinux 0x64130214 cpufreq_dbs_governor_start +EXPORT_SYMBOL_GPL vmlinux 0x642390e3 regulator_get_current_limit_regmap +EXPORT_SYMBOL_GPL vmlinux 0x64256424 visitor32 +EXPORT_SYMBOL_GPL vmlinux 0x6437b09a fuse_request_end +EXPORT_SYMBOL_GPL vmlinux 0x644609dc __sock_recv_wifi_status +EXPORT_SYMBOL_GPL vmlinux 0x64477660 vring_create_virtqueue +EXPORT_SYMBOL_GPL vmlinux 0x644ad40d crypto_register_template +EXPORT_SYMBOL_GPL vmlinux 0x644bfdcf trace_print_bitmask_seq +EXPORT_SYMBOL_GPL vmlinux 0x645f7baf fib_nexthop_info +EXPORT_SYMBOL_GPL vmlinux 0x647537f3 pl320_ipc_register_notifier +EXPORT_SYMBOL_GPL vmlinux 0x6481c65e of_reserved_mem_device_init_by_name +EXPORT_SYMBOL_GPL vmlinux 0x64925270 __dax_synchronous +EXPORT_SYMBOL_GPL vmlinux 0x6493a2df rht_bucket_nested +EXPORT_SYMBOL_GPL vmlinux 0x6499ca92 copy_from_user_nofault +EXPORT_SYMBOL_GPL vmlinux 0x64a2c7e7 meson_clk_mpll_ro_ops +EXPORT_SYMBOL_GPL vmlinux 0x64a84255 irq_chip_release_resources_parent +EXPORT_SYMBOL_GPL vmlinux 0x64b81273 crypto_stats_get +EXPORT_SYMBOL_GPL vmlinux 0x64bead33 class_remove_file_ns +EXPORT_SYMBOL_GPL vmlinux 0x64c07d32 btree_remove +EXPORT_SYMBOL_GPL vmlinux 0x64cdf082 xas_load +EXPORT_SYMBOL_GPL vmlinux 0x64de0eca tty_port_tty_hangup +EXPORT_SYMBOL_GPL vmlinux 0x64e22a08 rio_request_inb_pwrite +EXPORT_SYMBOL_GPL vmlinux 0x64e27c4f synth_event_delete +EXPORT_SYMBOL_GPL vmlinux 0x64ee2011 fat_dir_empty +EXPORT_SYMBOL_GPL vmlinux 0x64faf25c vprintk_default +EXPORT_SYMBOL_GPL vmlinux 0x6504823f fwnode_property_get_reference_args +EXPORT_SYMBOL_GPL vmlinux 0x6506563a raw_unhash_sk +EXPORT_SYMBOL_GPL vmlinux 0x6506e8b6 bdi_dev_name +EXPORT_SYMBOL_GPL vmlinux 0x65284995 efi_capsule_update +EXPORT_SYMBOL_GPL vmlinux 0x65289755 led_set_brightness_nosleep +EXPORT_SYMBOL_GPL vmlinux 0x653f1848 __udp_enqueue_schedule_skb +EXPORT_SYMBOL_GPL vmlinux 0x6543ec96 spi_mem_get_name +EXPORT_SYMBOL_GPL vmlinux 0x6546a1b9 snd_dmaengine_pcm_unregister +EXPORT_SYMBOL_GPL vmlinux 0x65537437 freezer_cgrp_subsys_on_dfl_key +EXPORT_SYMBOL_GPL vmlinux 0x6555dfff iommu_unmap_fast +EXPORT_SYMBOL_GPL vmlinux 0x6575ce1b mmc_send_tuning +EXPORT_SYMBOL_GPL vmlinux 0x6584fa01 udp4_hwcsum +EXPORT_SYMBOL_GPL vmlinux 0x6592a643 rtc_alarm_irq_enable +EXPORT_SYMBOL_GPL vmlinux 0x65c4d72b inet_send_prepare +EXPORT_SYMBOL_GPL vmlinux 0x65c6e39a regulator_set_voltage +EXPORT_SYMBOL_GPL vmlinux 0x65ccb6f0 call_netevent_notifiers +EXPORT_SYMBOL_GPL vmlinux 0x65d026fc init_pid_ns +EXPORT_SYMBOL_GPL vmlinux 0x65dca720 driver_find_device +EXPORT_SYMBOL_GPL vmlinux 0x65def01d mpi_read_raw_from_sgl +EXPORT_SYMBOL_GPL vmlinux 0x661601de sprint_symbol +EXPORT_SYMBOL_GPL vmlinux 0x6636c3c9 irq_set_vcpu_affinity +EXPORT_SYMBOL_GPL vmlinux 0x663bb448 devlink_fmsg_obj_nest_end +EXPORT_SYMBOL_GPL vmlinux 0x664d2f5e snd_soc_dapm_kcontrol_dapm +EXPORT_SYMBOL_GPL vmlinux 0x66511e16 fwnode_get_next_child_node +EXPORT_SYMBOL_GPL vmlinux 0x66515994 __platform_create_bundle +EXPORT_SYMBOL_GPL vmlinux 0x665e92a0 clk_set_duty_cycle +EXPORT_SYMBOL_GPL vmlinux 0x666078c0 tcp_get_syncookie_mss +EXPORT_SYMBOL_GPL vmlinux 0x6666b8ba kthread_func +EXPORT_SYMBOL_GPL vmlinux 0x6670570b devm_gpiod_get_optional +EXPORT_SYMBOL_GPL vmlinux 0x667eddea pinctrl_force_default +EXPORT_SYMBOL_GPL vmlinux 0x668402aa crypto_put_default_rng +EXPORT_SYMBOL_GPL vmlinux 0x669594ad musb_clearw +EXPORT_SYMBOL_GPL vmlinux 0x66a72617 pm_genpd_remove_subdomain +EXPORT_SYMBOL_GPL vmlinux 0x66b26b2b clk_hw_unregister_divider +EXPORT_SYMBOL_GPL vmlinux 0x66b97421 sfp_link_up +EXPORT_SYMBOL_GPL vmlinux 0x66d57f37 __clk_mux_determine_rate +EXPORT_SYMBOL_GPL vmlinux 0x66d87d38 symbol_put_addr +EXPORT_SYMBOL_GPL vmlinux 0x66f5fe89 tcp_orphan_count +EXPORT_SYMBOL_GPL vmlinux 0x670e23a8 watchdog_init_timeout +EXPORT_SYMBOL_GPL vmlinux 0x6710095a blk_trace_setup +EXPORT_SYMBOL_GPL vmlinux 0x6719a5de __rio_local_write_config_16 +EXPORT_SYMBOL_GPL vmlinux 0x6735d56e tcp_ca_get_name_by_key +EXPORT_SYMBOL_GPL vmlinux 0x67444919 snd_soc_dai_compr_set_metadata +EXPORT_SYMBOL_GPL vmlinux 0x6781513c __wake_up_locked_key +EXPORT_SYMBOL_GPL vmlinux 0x678d4faa pwm_adjust_config +EXPORT_SYMBOL_GPL vmlinux 0x67955ce6 profile_hits +EXPORT_SYMBOL_GPL vmlinux 0x67a508ae regmap_get_device +EXPORT_SYMBOL_GPL vmlinux 0x67a5333c devlink_dpipe_table_resource_set +EXPORT_SYMBOL_GPL vmlinux 0x67b9dd81 devlink_param_driverinit_value_set +EXPORT_SYMBOL_GPL vmlinux 0x67c7a7c8 __rt_mutex_init +EXPORT_SYMBOL_GPL vmlinux 0x67d4c062 hwmon_device_register_with_info +EXPORT_SYMBOL_GPL vmlinux 0x67d6fad7 blk_mq_free_request +EXPORT_SYMBOL_GPL vmlinux 0x67da9f7c sha512_zero_message_hash +EXPORT_SYMBOL_GPL vmlinux 0x67dcec97 vfs_test_lock +EXPORT_SYMBOL_GPL vmlinux 0x67dd4f2b cdrom_multisession +EXPORT_SYMBOL_GPL vmlinux 0x67e43bd9 snd_soc_dai_compr_ack +EXPORT_SYMBOL_GPL vmlinux 0x67f2b7b8 of_cpufreq_cooling_register +EXPORT_SYMBOL_GPL vmlinux 0x67fdd7c4 __synth_event_gen_cmd_start +EXPORT_SYMBOL_GPL vmlinux 0x6817a30c wm831x_reg_read +EXPORT_SYMBOL_GPL vmlinux 0x681e5c43 blk_req_zone_write_trylock +EXPORT_SYMBOL_GPL vmlinux 0x682ff057 ring_buffer_commit_overrun_cpu +EXPORT_SYMBOL_GPL vmlinux 0x6836ee95 exportfs_decode_fh +EXPORT_SYMBOL_GPL vmlinux 0x683b555a alloc_vm_area +EXPORT_SYMBOL_GPL vmlinux 0x683f06ad iommu_unregister_device_fault_handler +EXPORT_SYMBOL_GPL vmlinux 0x68485531 netdev_walk_all_upper_dev_rcu +EXPORT_SYMBOL_GPL vmlinux 0x6852f3ec nd_tbl +EXPORT_SYMBOL_GPL vmlinux 0x685d3e76 sdhci_set_power_noreg +EXPORT_SYMBOL_GPL vmlinux 0x68645f24 rio_request_inb_dbell +EXPORT_SYMBOL_GPL vmlinux 0x68708ad6 mtk_pinconf_drive_set_raw +EXPORT_SYMBOL_GPL vmlinux 0x68758fda nvmem_cell_write +EXPORT_SYMBOL_GPL vmlinux 0x687fca31 imx6q_cpuidle_fec_irqs_used +EXPORT_SYMBOL_GPL vmlinux 0x68806cf2 sdev_evt_send +EXPORT_SYMBOL_GPL vmlinux 0x6891f85e do_unregister_con_driver +EXPORT_SYMBOL_GPL vmlinux 0x6894835c __tracepoint_pelt_rt_tp +EXPORT_SYMBOL_GPL vmlinux 0x68952493 rcu_note_context_switch +EXPORT_SYMBOL_GPL vmlinux 0x689675ba usb_role_switch_find_by_fwnode +EXPORT_SYMBOL_GPL vmlinux 0x689d4785 snd_hwparams_to_dma_slave_config +EXPORT_SYMBOL_GPL vmlinux 0x68ae3fc4 regmap_attach_dev +EXPORT_SYMBOL_GPL vmlinux 0x68aee36d snd_ctl_activate_id +EXPORT_SYMBOL_GPL vmlinux 0x68b0db87 serdev_device_write_flush +EXPORT_SYMBOL_GPL vmlinux 0x68b44f4d of_pci_get_max_link_speed +EXPORT_SYMBOL_GPL vmlinux 0x68b6e30a platform_device_add_data +EXPORT_SYMBOL_GPL vmlinux 0x68c114e7 ip6_redirect +EXPORT_SYMBOL_GPL vmlinux 0x68c6d156 edac_pci_alloc_ctl_info +EXPORT_SYMBOL_GPL vmlinux 0x68f026ca tty_ldisc_deref +EXPORT_SYMBOL_GPL vmlinux 0x68f19f8a ata_sas_port_alloc +EXPORT_SYMBOL_GPL vmlinux 0x68f37e9f __tracepoint_neigh_update +EXPORT_SYMBOL_GPL vmlinux 0x68f87c5a amba_apb_device_add +EXPORT_SYMBOL_GPL vmlinux 0x68ff7add snd_soc_free_ac97_component +EXPORT_SYMBOL_GPL vmlinux 0x690ad252 wm5102_i2c_regmap +EXPORT_SYMBOL_GPL vmlinux 0x690e5433 device_register +EXPORT_SYMBOL_GPL vmlinux 0x690f585e phy_basic_ports_array +EXPORT_SYMBOL_GPL vmlinux 0x6913865a trace_clock_jiffies +EXPORT_SYMBOL_GPL vmlinux 0x691c0b0d pci_platform_power_transition +EXPORT_SYMBOL_GPL vmlinux 0x691c85b6 rhashtable_walk_peek +EXPORT_SYMBOL_GPL vmlinux 0x692098e2 list_lru_del +EXPORT_SYMBOL_GPL vmlinux 0x692a4f08 idr_alloc +EXPORT_SYMBOL_GPL vmlinux 0x6944962e iommu_fwspec_add_ids +EXPORT_SYMBOL_GPL vmlinux 0x6945725e mpi_read_raw_data +EXPORT_SYMBOL_GPL vmlinux 0x69575109 security_path_rmdir +EXPORT_SYMBOL_GPL vmlinux 0x69578708 tcpv6_prot +EXPORT_SYMBOL_GPL vmlinux 0x6958ae23 dax_get_by_host +EXPORT_SYMBOL_GPL vmlinux 0x696a4590 devm_hwrng_unregister +EXPORT_SYMBOL_GPL vmlinux 0x696f2b63 of_changeset_init +EXPORT_SYMBOL_GPL vmlinux 0x6979b611 pci_epc_remove_epf +EXPORT_SYMBOL_GPL vmlinux 0x697c5d0d tracing_snapshot_alloc +EXPORT_SYMBOL_GPL vmlinux 0x6992dccc snd_soc_cnew +EXPORT_SYMBOL_GPL vmlinux 0x6992dd3f sata_pmp_qc_defer_cmd_switch +EXPORT_SYMBOL_GPL vmlinux 0x699a4d3b xfrm_local_error +EXPORT_SYMBOL_GPL vmlinux 0x699fbaa1 snd_soc_component_update_bits_async +EXPORT_SYMBOL_GPL vmlinux 0x69a95b5f arizona_set_irq_wake +EXPORT_SYMBOL_GPL vmlinux 0x69bb313b inet6_destroy_sock +EXPORT_SYMBOL_GPL vmlinux 0x69ddca35 inet_hash_connect +EXPORT_SYMBOL_GPL vmlinux 0x69e683de uuid_gen +EXPORT_SYMBOL_GPL vmlinux 0x69edc9a6 __clocksource_update_freq_scale +EXPORT_SYMBOL_GPL vmlinux 0x69ee2220 linear_range_get_selector_high +EXPORT_SYMBOL_GPL vmlinux 0x69f908f7 usb_register_device_driver +EXPORT_SYMBOL_GPL vmlinux 0x69f91007 pci_msi_mask_irq +EXPORT_SYMBOL_GPL vmlinux 0x6a000adf mtk_hw_get_value +EXPORT_SYMBOL_GPL vmlinux 0x6a05b65b fb_videomode_from_videomode +EXPORT_SYMBOL_GPL vmlinux 0x6a0715ef devlink_dpipe_table_register +EXPORT_SYMBOL_GPL vmlinux 0x6a1733eb iommu_group_unregister_notifier +EXPORT_SYMBOL_GPL vmlinux 0x6a2f8b14 snd_soc_set_runtime_hwparams +EXPORT_SYMBOL_GPL vmlinux 0x6a41d510 validate_xmit_skb_list +EXPORT_SYMBOL_GPL vmlinux 0x6a44e3e6 trace_array_destroy +EXPORT_SYMBOL_GPL vmlinux 0x6a460dc5 schedule_hrtimeout +EXPORT_SYMBOL_GPL vmlinux 0x6a4f59d7 pci_disable_sriov +EXPORT_SYMBOL_GPL vmlinux 0x6a4f623b mmu_notifier_synchronize +EXPORT_SYMBOL_GPL vmlinux 0x6a5e2bde __cookie_v6_init_sequence +EXPORT_SYMBOL_GPL vmlinux 0x6a72aca2 serdev_device_set_tiocm +EXPORT_SYMBOL_GPL vmlinux 0x6a8fb6ca udp4_lib_lookup_skb +EXPORT_SYMBOL_GPL vmlinux 0x6aa5e412 gen_pool_avail +EXPORT_SYMBOL_GPL vmlinux 0x6aaa6745 cpts_release +EXPORT_SYMBOL_GPL vmlinux 0x6ab1c8bb xas_store +EXPORT_SYMBOL_GPL vmlinux 0x6ae53d00 amba_device_alloc +EXPORT_SYMBOL_GPL vmlinux 0x6ae641b6 alarm_expires_remaining +EXPORT_SYMBOL_GPL vmlinux 0x6af8c6dc musb_writel +EXPORT_SYMBOL_GPL vmlinux 0x6b05a0dc gpiod_get_optional +EXPORT_SYMBOL_GPL vmlinux 0x6b152a12 devm_phy_package_join +EXPORT_SYMBOL_GPL vmlinux 0x6b1c3803 pinmux_generic_get_function +EXPORT_SYMBOL_GPL vmlinux 0x6b22926b irq_work_sync +EXPORT_SYMBOL_GPL vmlinux 0x6b2afd12 sysfs_update_groups +EXPORT_SYMBOL_GPL vmlinux 0x6b3199af mtk_pinconf_bias_get_rev1 +EXPORT_SYMBOL_GPL vmlinux 0x6b334acc trace_seq_bitmask +EXPORT_SYMBOL_GPL vmlinux 0x6b37ee7b ip6_route_input_lookup +EXPORT_SYMBOL_GPL vmlinux 0x6b413c9b sfp_link_down +EXPORT_SYMBOL_GPL vmlinux 0x6b4420a9 xdp_convert_zc_to_xdp_frame +EXPORT_SYMBOL_GPL vmlinux 0x6b4560ed fuse_simple_background +EXPORT_SYMBOL_GPL vmlinux 0x6b459469 tty_kclose +EXPORT_SYMBOL_GPL vmlinux 0x6b4c6d26 __vfs_removexattr_locked +EXPORT_SYMBOL_GPL vmlinux 0x6b4d8db9 null_dailink_component +EXPORT_SYMBOL_GPL vmlinux 0x6b6bca89 amba_ahb_device_add_res +EXPORT_SYMBOL_GPL vmlinux 0x6b72e663 rhashtable_walk_stop +EXPORT_SYMBOL_GPL vmlinux 0x6b7442d6 __rio_local_write_config_8 +EXPORT_SYMBOL_GPL vmlinux 0x6b784e45 fuse_dev_alloc_install +EXPORT_SYMBOL_GPL vmlinux 0x6b81c38b power_supply_unreg_notifier +EXPORT_SYMBOL_GPL vmlinux 0x6ba15c51 attribute_container_find_class_device +EXPORT_SYMBOL_GPL vmlinux 0x6ba8b314 crypto_unregister_aeads +EXPORT_SYMBOL_GPL vmlinux 0x6baf7999 trace_output_call +EXPORT_SYMBOL_GPL vmlinux 0x6bce93d8 list_lru_walk_node +EXPORT_SYMBOL_GPL vmlinux 0x6bd1aa56 stack_trace_save +EXPORT_SYMBOL_GPL vmlinux 0x6be23673 dev_pm_qos_hide_latency_limit +EXPORT_SYMBOL_GPL vmlinux 0x6be5993b pinmux_generic_get_function_groups +EXPORT_SYMBOL_GPL vmlinux 0x6be8527c regulator_bulk_unregister_supply_alias +EXPORT_SYMBOL_GPL vmlinux 0x6c00cd63 devm_pinctrl_unregister +EXPORT_SYMBOL_GPL vmlinux 0x6c00d70e regulator_list_voltage_pickable_linear_range +EXPORT_SYMBOL_GPL vmlinux 0x6c0de629 virtqueue_get_vring_size +EXPORT_SYMBOL_GPL vmlinux 0x6c3f70e0 guid_gen +EXPORT_SYMBOL_GPL vmlinux 0x6c43b737 ata_sff_queue_delayed_work +EXPORT_SYMBOL_GPL vmlinux 0x6c47380f balloon_aops +EXPORT_SYMBOL_GPL vmlinux 0x6c4b6684 reset_control_assert +EXPORT_SYMBOL_GPL vmlinux 0x6c4b76b2 xfrm_audit_state_replay +EXPORT_SYMBOL_GPL vmlinux 0x6c65fde1 da9052_regmap_config +EXPORT_SYMBOL_GPL vmlinux 0x6c6b6664 devlink_sb_unregister +EXPORT_SYMBOL_GPL vmlinux 0x6c7ef723 devm_gpiochip_add_data_with_key +EXPORT_SYMBOL_GPL vmlinux 0x6c81027d fwnode_property_read_string +EXPORT_SYMBOL_GPL vmlinux 0x6ca4bf88 async_synchronize_full_domain +EXPORT_SYMBOL_GPL vmlinux 0x6ca91521 security_inode_setattr +EXPORT_SYMBOL_GPL vmlinux 0x6cc41bb4 bio_associate_blkg_from_css +EXPORT_SYMBOL_GPL vmlinux 0x6cf9ac91 tpm_send +EXPORT_SYMBOL_GPL vmlinux 0x6d012f8e xhci_mtk_sch_init +EXPORT_SYMBOL_GPL vmlinux 0x6d097ddb __rio_local_read_config_32 +EXPORT_SYMBOL_GPL vmlinux 0x6d0ae550 pinctrl_gpio_request +EXPORT_SYMBOL_GPL vmlinux 0x6d0b8c5e percpu_ref_switch_to_atomic_sync +EXPORT_SYMBOL_GPL vmlinux 0x6d161831 xhci_gen_setup +EXPORT_SYMBOL_GPL vmlinux 0x6d2b1d62 init_dummy_netdev +EXPORT_SYMBOL_GPL vmlinux 0x6d2fc5a6 net_namespace_list +EXPORT_SYMBOL_GPL vmlinux 0x6d3af8b2 ahci_platform_enable_resources +EXPORT_SYMBOL_GPL vmlinux 0x6d4095dc regmap_noinc_read +EXPORT_SYMBOL_GPL vmlinux 0x6d486041 pm_runtime_autosuspend_expiration +EXPORT_SYMBOL_GPL vmlinux 0x6d6ab32d scsi_host_unblock +EXPORT_SYMBOL_GPL vmlinux 0x6d6fec1f ktime_mono_to_any +EXPORT_SYMBOL_GPL vmlinux 0x6d794c6c mbox_controller_unregister +EXPORT_SYMBOL_GPL vmlinux 0x6d7e951e rcu_exp_batches_completed +EXPORT_SYMBOL_GPL vmlinux 0x6d8747a0 scatterwalk_ffwd +EXPORT_SYMBOL_GPL vmlinux 0x6d931b00 transport_setup_device +EXPORT_SYMBOL_GPL vmlinux 0x6d986c8e devm_gpiod_get_array_optional +EXPORT_SYMBOL_GPL vmlinux 0x6d9c046c icc_set_bw +EXPORT_SYMBOL_GPL vmlinux 0x6d9ee2a0 __request_percpu_irq +EXPORT_SYMBOL_GPL vmlinux 0x6da1b55b report_iommu_fault +EXPORT_SYMBOL_GPL vmlinux 0x6da59f73 devlink_port_type_eth_set +EXPORT_SYMBOL_GPL vmlinux 0x6da96ca4 thermal_zone_get_zone_by_name +EXPORT_SYMBOL_GPL vmlinux 0x6dae8eca blk_mq_quiesce_queue +EXPORT_SYMBOL_GPL vmlinux 0x6dbaafd3 put_old_timespec32 +EXPORT_SYMBOL_GPL vmlinux 0x6dc43f43 imx6q_cpuidle_fec_irqs_unused +EXPORT_SYMBOL_GPL vmlinux 0x6dcd5c57 usb_gadget_deactivate +EXPORT_SYMBOL_GPL vmlinux 0x6dd3d0da pci_iomap_wc +EXPORT_SYMBOL_GPL vmlinux 0x6dd463cd anon_inode_getfd +EXPORT_SYMBOL_GPL vmlinux 0x6dd622ba of_console_check +EXPORT_SYMBOL_GPL vmlinux 0x6de0dd5a get_device_system_crosststamp +EXPORT_SYMBOL_GPL vmlinux 0x6df3a927 vfs_fallocate +EXPORT_SYMBOL_GPL vmlinux 0x6df516e4 snd_soc_dapm_mixer_update_power +EXPORT_SYMBOL_GPL vmlinux 0x6dfabed1 sbitmap_add_wait_queue +EXPORT_SYMBOL_GPL vmlinux 0x6e0baa2c devm_reset_controller_register +EXPORT_SYMBOL_GPL vmlinux 0x6e1a916a locks_alloc_lock +EXPORT_SYMBOL_GPL vmlinux 0x6e1ec5bd scsi_queue_work +EXPORT_SYMBOL_GPL vmlinux 0x6e1f9450 ata_bmdma_start +EXPORT_SYMBOL_GPL vmlinux 0x6e20216a amba_device_add +EXPORT_SYMBOL_GPL vmlinux 0x6e3a9b0c serial8250_do_get_mctrl +EXPORT_SYMBOL_GPL vmlinux 0x6e3ebc94 nf_ipv6_ops +EXPORT_SYMBOL_GPL vmlinux 0x6e3ff83a edac_device_alloc_index +EXPORT_SYMBOL_GPL vmlinux 0x6e4bc056 spi_res_free +EXPORT_SYMBOL_GPL vmlinux 0x6e4d0b80 get_dcookie +EXPORT_SYMBOL_GPL vmlinux 0x6e55ed00 pinctrl_generic_get_group_pins +EXPORT_SYMBOL_GPL vmlinux 0x6e56beb0 md_do_sync +EXPORT_SYMBOL_GPL vmlinux 0x6e623155 badblocks_clear +EXPORT_SYMBOL_GPL vmlinux 0x6e677f56 efivar_entry_find +EXPORT_SYMBOL_GPL vmlinux 0x6e72568c register_virtio_device +EXPORT_SYMBOL_GPL vmlinux 0x6e7943ec iommu_group_id +EXPORT_SYMBOL_GPL vmlinux 0x6e89a560 regmap_irq_chip_get_base +EXPORT_SYMBOL_GPL vmlinux 0x6e9b5be1 espintcp_queue_out +EXPORT_SYMBOL_GPL vmlinux 0x6eb12aab free_io_pgtable_ops +EXPORT_SYMBOL_GPL vmlinux 0x6eb9e30d extcon_unregister_notifier_all +EXPORT_SYMBOL_GPL vmlinux 0x6ebe366f ktime_get_mono_fast_ns +EXPORT_SYMBOL_GPL vmlinux 0x6ec1861e pci_restore_msi_state +EXPORT_SYMBOL_GPL vmlinux 0x6ed01b65 sdio_claim_irq +EXPORT_SYMBOL_GPL vmlinux 0x6ed6a28f dw_pcie_host_init +EXPORT_SYMBOL_GPL vmlinux 0x6ee13683 crypto_grab_shash +EXPORT_SYMBOL_GPL vmlinux 0x6ee8c94b sfp_get_module_eeprom +EXPORT_SYMBOL_GPL vmlinux 0x6ef0ead8 bpf_trace_run9 +EXPORT_SYMBOL_GPL vmlinux 0x6ef6b54f ktime_get_boot_fast_ns +EXPORT_SYMBOL_GPL vmlinux 0x6f02be50 iommu_domain_free +EXPORT_SYMBOL_GPL vmlinux 0x6f091d04 phy_calibrate +EXPORT_SYMBOL_GPL vmlinux 0x6f12560a get_old_timespec32 +EXPORT_SYMBOL_GPL vmlinux 0x6f17d876 devlink_resources_unregister +EXPORT_SYMBOL_GPL vmlinux 0x6f214a01 ata_port_desc +EXPORT_SYMBOL_GPL vmlinux 0x6f2f18ca ata_qc_complete +EXPORT_SYMBOL_GPL vmlinux 0x6f48a143 inet6_csk_addr2sockaddr +EXPORT_SYMBOL_GPL vmlinux 0x6f538894 pci_user_write_config_word +EXPORT_SYMBOL_GPL vmlinux 0x6f5724b6 clock_cooling_unregister +EXPORT_SYMBOL_GPL vmlinux 0x6f85f94b blk_queue_can_use_dma_map_merging +EXPORT_SYMBOL_GPL vmlinux 0x6f870e56 gadget_find_ep_by_name +EXPORT_SYMBOL_GPL vmlinux 0x6f8a9279 sdio_memcpy_toio +EXPORT_SYMBOL_GPL vmlinux 0x6f9e763b timecounter_read +EXPORT_SYMBOL_GPL vmlinux 0x6fa0f5eb nand_cleanup +EXPORT_SYMBOL_GPL vmlinux 0x6fb717cf ahci_ops +EXPORT_SYMBOL_GPL vmlinux 0x6fb7e313 asic3_write_register +EXPORT_SYMBOL_GPL vmlinux 0x6fc0bfbf __pm_runtime_set_status +EXPORT_SYMBOL_GPL vmlinux 0x6fc855f7 snd_pcm_stream_lock_irq +EXPORT_SYMBOL_GPL vmlinux 0x6fcef6ab ring_buffer_reset +EXPORT_SYMBOL_GPL vmlinux 0x6fd0d0ae regulator_set_mode +EXPORT_SYMBOL_GPL vmlinux 0x6fdfdc64 firmware_kobj +EXPORT_SYMBOL_GPL vmlinux 0x6fe91d35 usb_phy_set_event +EXPORT_SYMBOL_GPL vmlinux 0x6ff607b6 crypto_get_default_rng +EXPORT_SYMBOL_GPL vmlinux 0x7006586e iommu_get_group_resv_regions +EXPORT_SYMBOL_GPL vmlinux 0x700708ca devm_clk_bulk_get +EXPORT_SYMBOL_GPL vmlinux 0x70086c68 virtqueue_get_avail_addr +EXPORT_SYMBOL_GPL vmlinux 0x700db22c usb_find_alt_setting +EXPORT_SYMBOL_GPL vmlinux 0x70252b9f crypto_unregister_shash +EXPORT_SYMBOL_GPL vmlinux 0x703380e5 blk_mq_flush_busy_ctxs +EXPORT_SYMBOL_GPL vmlinux 0x703b5037 extcon_get_state +EXPORT_SYMBOL_GPL vmlinux 0x7046fa61 crypto_cipher_decrypt_one +EXPORT_SYMBOL_GPL vmlinux 0x704ab145 fb_deferred_io_init +EXPORT_SYMBOL_GPL vmlinux 0x705f6537 rio_release_inb_dbell +EXPORT_SYMBOL_GPL vmlinux 0x7063b00f ahci_platform_enable_clks +EXPORT_SYMBOL_GPL vmlinux 0x70664aaf serial8250_get_port +EXPORT_SYMBOL_GPL vmlinux 0x7073c04f phy_10_100_features_array +EXPORT_SYMBOL_GPL vmlinux 0x7095666e fat_sync_inode +EXPORT_SYMBOL_GPL vmlinux 0x709d3832 tps65217_set_bits +EXPORT_SYMBOL_GPL vmlinux 0x70a57ae6 syscon_regmap_lookup_by_phandle_args +EXPORT_SYMBOL_GPL vmlinux 0x70a8eb75 fuse_dev_operations +EXPORT_SYMBOL_GPL vmlinux 0x70b18152 sfp_register_socket +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 0x70d69b9a __spi_register_driver +EXPORT_SYMBOL_GPL vmlinux 0x70f39840 serdev_device_remove +EXPORT_SYMBOL_GPL vmlinux 0x70f6e7d0 regulator_force_disable +EXPORT_SYMBOL_GPL vmlinux 0x710c2183 spi_add_device +EXPORT_SYMBOL_GPL vmlinux 0x710c73b6 crypto_unregister_notifier +EXPORT_SYMBOL_GPL vmlinux 0x710e0179 omap_iommu_domain_deactivate +EXPORT_SYMBOL_GPL vmlinux 0x71247f1f peernet2id_alloc +EXPORT_SYMBOL_GPL vmlinux 0x71299ecb dev_pm_opp_free_cpufreq_table +EXPORT_SYMBOL_GPL vmlinux 0x712dd15b pci_assign_unassigned_bus_resources +EXPORT_SYMBOL_GPL vmlinux 0x712deb80 skb_segment +EXPORT_SYMBOL_GPL vmlinux 0x713238d0 scsi_internal_device_block_nowait +EXPORT_SYMBOL_GPL vmlinux 0x7138f369 sm501_set_clock +EXPORT_SYMBOL_GPL vmlinux 0x71477d48 dw_pcie_host_deinit +EXPORT_SYMBOL_GPL vmlinux 0x7151e016 perf_aux_output_begin +EXPORT_SYMBOL_GPL vmlinux 0x716265c7 debugfs_initialized +EXPORT_SYMBOL_GPL vmlinux 0x71650819 add_bootloader_randomness +EXPORT_SYMBOL_GPL vmlinux 0x71709904 scmi_driver_unregister +EXPORT_SYMBOL_GPL vmlinux 0x719a5e41 musb_readw +EXPORT_SYMBOL_GPL vmlinux 0x719c26ef __rtnl_link_unregister +EXPORT_SYMBOL_GPL vmlinux 0x719e17ff clk_notifier_unregister +EXPORT_SYMBOL_GPL vmlinux 0x719f9e07 usb_hcd_resume_root_hub +EXPORT_SYMBOL_GPL vmlinux 0x71a3fb93 wakeup_source_destroy +EXPORT_SYMBOL_GPL vmlinux 0x71d836b0 clk_hw_get_parent_index +EXPORT_SYMBOL_GPL vmlinux 0x71e9a36a usb_set_interface +EXPORT_SYMBOL_GPL vmlinux 0x71eaa965 debugfs_create_file +EXPORT_SYMBOL_GPL vmlinux 0x71efbdb5 fscrypt_ioctl_get_nonce +EXPORT_SYMBOL_GPL vmlinux 0x71f6670b __cookie_v6_check +EXPORT_SYMBOL_GPL vmlinux 0x71f9bf7f mtk_pinconf_drive_get_rev1 +EXPORT_SYMBOL_GPL vmlinux 0x72025ffb xfrm_state_afinfo_get_rcu +EXPORT_SYMBOL_GPL vmlinux 0x72035dda pci_msi_create_irq_domain +EXPORT_SYMBOL_GPL vmlinux 0x72433752 phy_pm_runtime_put +EXPORT_SYMBOL_GPL vmlinux 0x724c7b22 pci_walk_bus +EXPORT_SYMBOL_GPL vmlinux 0x725bfc79 lwtunnel_xmit +EXPORT_SYMBOL_GPL vmlinux 0x726937d8 devres_close_group +EXPORT_SYMBOL_GPL vmlinux 0x726a8892 ahash_register_instance +EXPORT_SYMBOL_GPL vmlinux 0x72712294 inet6_csk_update_pmtu +EXPORT_SYMBOL_GPL vmlinux 0x7278d328 all_vm_events +EXPORT_SYMBOL_GPL vmlinux 0x72965e65 set_primary_fwnode +EXPORT_SYMBOL_GPL vmlinux 0x72aee1ad sbitmap_get +EXPORT_SYMBOL_GPL vmlinux 0x72b0f77d fat_free_clusters +EXPORT_SYMBOL_GPL vmlinux 0x72b22dad sfp_bus_find_fwnode +EXPORT_SYMBOL_GPL vmlinux 0x72b299e1 efi_capsule_supported +EXPORT_SYMBOL_GPL vmlinux 0x72ba8a76 mtk_pinconf_adv_drive_get +EXPORT_SYMBOL_GPL vmlinux 0x72bf8a59 sdio_set_block_size +EXPORT_SYMBOL_GPL vmlinux 0x72d0a7a3 iommu_domain_set_attr +EXPORT_SYMBOL_GPL vmlinux 0x72d4cd79 pci_epf_create +EXPORT_SYMBOL_GPL vmlinux 0x7304e1e2 ata_pci_bmdma_init_one +EXPORT_SYMBOL_GPL vmlinux 0x730a98a4 pci_reset_function +EXPORT_SYMBOL_GPL vmlinux 0x730eaf66 __generic_fsdax_supported +EXPORT_SYMBOL_GPL vmlinux 0x7313638e to_of_pinfo +EXPORT_SYMBOL_GPL vmlinux 0x7314b8e2 blk_mq_debugfs_rq_show +EXPORT_SYMBOL_GPL vmlinux 0x733ef9f2 iommu_set_fault_handler +EXPORT_SYMBOL_GPL vmlinux 0x734e6517 sbitmap_bitmap_show +EXPORT_SYMBOL_GPL vmlinux 0x73532010 usb_gadget_set_selfpowered +EXPORT_SYMBOL_GPL vmlinux 0x737676f9 serial8250_do_set_ldisc +EXPORT_SYMBOL_GPL vmlinux 0x738022a7 fsverity_ioctl_measure +EXPORT_SYMBOL_GPL vmlinux 0x738414fd usb_autopm_put_interface_no_suspend +EXPORT_SYMBOL_GPL vmlinux 0x739d0b99 efivar_entry_add +EXPORT_SYMBOL_GPL vmlinux 0x73a48b4a ata_sff_std_ports +EXPORT_SYMBOL_GPL vmlinux 0x73b1f197 pcie_aspm_enabled +EXPORT_SYMBOL_GPL vmlinux 0x73b98231 asymmetric_key_generate_id +EXPORT_SYMBOL_GPL vmlinux 0x73c089ff pm_generic_restore_noirq +EXPORT_SYMBOL_GPL vmlinux 0x73cc8631 oiap +EXPORT_SYMBOL_GPL vmlinux 0x73e34da9 devlink_port_unregister +EXPORT_SYMBOL_GPL vmlinux 0x73f1aab7 gpiochip_is_requested +EXPORT_SYMBOL_GPL vmlinux 0x73f85562 pinctrl_pm_select_default_state +EXPORT_SYMBOL_GPL vmlinux 0x7419cabf platform_driver_unregister +EXPORT_SYMBOL_GPL vmlinux 0x7420af4a crypto_unregister_template +EXPORT_SYMBOL_GPL vmlinux 0x742d3ff0 snd_soc_runtime_calc_hw +EXPORT_SYMBOL_GPL vmlinux 0x7439fb4f tcp_done +EXPORT_SYMBOL_GPL vmlinux 0x743a165e ata_pack_xfermask +EXPORT_SYMBOL_GPL vmlinux 0x744fa0fc regcache_cache_bypass +EXPORT_SYMBOL_GPL vmlinux 0x7462e7b4 xhci_run +EXPORT_SYMBOL_GPL vmlinux 0x747a4b1f tcp_reno_ssthresh +EXPORT_SYMBOL_GPL vmlinux 0x748d8876 ipv6_recv_error +EXPORT_SYMBOL_GPL vmlinux 0x7497687a snd_pcm_add_chmap_ctls +EXPORT_SYMBOL_GPL vmlinux 0x74b201d6 clockevents_config_and_register +EXPORT_SYMBOL_GPL vmlinux 0x74b5ea68 lcm_not_zero +EXPORT_SYMBOL_GPL vmlinux 0x74bad0b3 sock_prot_inuse_get +EXPORT_SYMBOL_GPL vmlinux 0x74baf17a tracing_is_on +EXPORT_SYMBOL_GPL vmlinux 0x74bbed77 alloc_empty_file +EXPORT_SYMBOL_GPL vmlinux 0x74bc45b5 ata_sff_thaw +EXPORT_SYMBOL_GPL vmlinux 0x74bc88ee pci_cfg_access_unlock +EXPORT_SYMBOL_GPL vmlinux 0x74c2428a device_unregister +EXPORT_SYMBOL_GPL vmlinux 0x74cbc07e noop_invalidatepage +EXPORT_SYMBOL_GPL vmlinux 0x74dadf13 irqchip_fwnode_ops +EXPORT_SYMBOL_GPL vmlinux 0x74e1e0d5 devm_extcon_dev_allocate +EXPORT_SYMBOL_GPL vmlinux 0x74e2ec8e dma_buf_unmap_attachment +EXPORT_SYMBOL_GPL vmlinux 0x74f129be iommu_device_sysfs_add +EXPORT_SYMBOL_GPL vmlinux 0x74fbee18 tty_find_polling_driver +EXPORT_SYMBOL_GPL vmlinux 0x7513b5ec __iowrite32_copy +EXPORT_SYMBOL_GPL vmlinux 0x7518e0a1 ata_scsi_slave_destroy +EXPORT_SYMBOL_GPL vmlinux 0x7522f3ba irq_modify_status +EXPORT_SYMBOL_GPL vmlinux 0x752b75b3 dax_attribute_group +EXPORT_SYMBOL_GPL vmlinux 0x753924af tps6586x_get_version +EXPORT_SYMBOL_GPL vmlinux 0x75424683 ata_sas_port_destroy +EXPORT_SYMBOL_GPL vmlinux 0x755ae3c8 trusted_tpm_send +EXPORT_SYMBOL_GPL vmlinux 0x75603f2d dm_device_name +EXPORT_SYMBOL_GPL vmlinux 0x756c1090 rio_unlock_device +EXPORT_SYMBOL_GPL vmlinux 0x756ef6a5 pci_sriov_get_totalvfs +EXPORT_SYMBOL_GPL vmlinux 0x75783ca0 devm_platform_get_and_ioremap_resource +EXPORT_SYMBOL_GPL vmlinux 0x757df18d crypto_unregister_shashes +EXPORT_SYMBOL_GPL vmlinux 0x7584a241 rio_dev_get +EXPORT_SYMBOL_GPL vmlinux 0x758a08a6 sdhci_add_host +EXPORT_SYMBOL_GPL vmlinux 0x759139cb of_pci_check_probe_only +EXPORT_SYMBOL_GPL vmlinux 0x75933297 percpu_up_write +EXPORT_SYMBOL_GPL vmlinux 0x75a58e08 usb_ifnum_to_if +EXPORT_SYMBOL_GPL vmlinux 0x75b2c65c crypto_alloc_ahash +EXPORT_SYMBOL_GPL vmlinux 0x75bf6cc0 is_binary_blacklisted +EXPORT_SYMBOL_GPL vmlinux 0x75cbfb09 add_interrupt_randomness +EXPORT_SYMBOL_GPL vmlinux 0x75d74c97 mctrl_gpio_init +EXPORT_SYMBOL_GPL vmlinux 0x75dd4ebe of_overlay_remove +EXPORT_SYMBOL_GPL vmlinux 0x75e02fc9 of_get_videomode +EXPORT_SYMBOL_GPL vmlinux 0x75e9c735 pci_ats_disabled +EXPORT_SYMBOL_GPL vmlinux 0x75f2f2e3 ip6_sk_update_pmtu +EXPORT_SYMBOL_GPL vmlinux 0x75f987b5 pci_reset_bus +EXPORT_SYMBOL_GPL vmlinux 0x75fb9062 arch_timer_read_counter +EXPORT_SYMBOL_GPL vmlinux 0x761bb6da blk_mq_make_request +EXPORT_SYMBOL_GPL vmlinux 0x762c9cf5 platform_add_devices +EXPORT_SYMBOL_GPL vmlinux 0x7631727b ata_sff_tf_load +EXPORT_SYMBOL_GPL vmlinux 0x7636b0a7 reset_control_get_count +EXPORT_SYMBOL_GPL vmlinux 0x764d6bce of_usb_host_tpl_support +EXPORT_SYMBOL_GPL vmlinux 0x7651ce00 simple_attr_read +EXPORT_SYMBOL_GPL vmlinux 0x7665ee72 crypto_dh_decode_key +EXPORT_SYMBOL_GPL vmlinux 0x76674530 pci_stop_root_bus +EXPORT_SYMBOL_GPL vmlinux 0x7681946c unregister_pm_notifier +EXPORT_SYMBOL_GPL vmlinux 0x768a9836 tpmm_chip_alloc +EXPORT_SYMBOL_GPL vmlinux 0x76972885 ata_std_postreset +EXPORT_SYMBOL_GPL vmlinux 0x76cb6bb4 ipv6_stub +EXPORT_SYMBOL_GPL vmlinux 0x76d91225 ata_sff_wait_ready +EXPORT_SYMBOL_GPL vmlinux 0x76d9b876 clk_set_rate +EXPORT_SYMBOL_GPL vmlinux 0x76dc5daa gpiochip_generic_request +EXPORT_SYMBOL_GPL vmlinux 0x76e10a88 __wait_rcu_gp +EXPORT_SYMBOL_GPL vmlinux 0x76eeeb0f sha384_zero_message_hash +EXPORT_SYMBOL_GPL vmlinux 0x76f03079 mpc8xxx_spi_probe +EXPORT_SYMBOL_GPL vmlinux 0x770d7a9f ata_host_detach +EXPORT_SYMBOL_GPL vmlinux 0x771838b8 mtd_table_mutex +EXPORT_SYMBOL_GPL vmlinux 0x771b0a4d dma_get_merge_boundary +EXPORT_SYMBOL_GPL vmlinux 0x771df30e sdhci_enable_sdio_irq +EXPORT_SYMBOL_GPL vmlinux 0x7729cbdd task_handoff_register +EXPORT_SYMBOL_GPL vmlinux 0x772e2c26 xas_set_mark +EXPORT_SYMBOL_GPL vmlinux 0x7731bd26 cpufreq_freq_transition_end +EXPORT_SYMBOL_GPL vmlinux 0x7739967d sdio_readl +EXPORT_SYMBOL_GPL vmlinux 0x7739f714 vfs_setlease +EXPORT_SYMBOL_GPL vmlinux 0x773ca9df iommu_device_link +EXPORT_SYMBOL_GPL vmlinux 0x773f2713 clk_hw_unregister_mux +EXPORT_SYMBOL_GPL vmlinux 0x7756ec84 clk_hw_is_prepared +EXPORT_SYMBOL_GPL vmlinux 0x7757b51a clk_unregister +EXPORT_SYMBOL_GPL vmlinux 0x775eeb1c sbitmap_resize +EXPORT_SYMBOL_GPL vmlinux 0x77683d48 rio_request_mport_dma +EXPORT_SYMBOL_GPL vmlinux 0x776f2968 snd_card_rw_proc_new +EXPORT_SYMBOL_GPL vmlinux 0x777c39a6 strp_data_ready +EXPORT_SYMBOL_GPL vmlinux 0x7791e066 dw_pcie_read +EXPORT_SYMBOL_GPL vmlinux 0x77a113ce invalidate_inode_pages2 +EXPORT_SYMBOL_GPL vmlinux 0x77ab7d44 pinctrl_generic_get_group_name +EXPORT_SYMBOL_GPL vmlinux 0x77ae495d usb_speed_string +EXPORT_SYMBOL_GPL vmlinux 0x77aefdbe device_bind_driver +EXPORT_SYMBOL_GPL vmlinux 0x77b01b7d device_release_driver +EXPORT_SYMBOL_GPL vmlinux 0x77b46ffb usb_ep_set_maxpacket_limit +EXPORT_SYMBOL_GPL vmlinux 0x77bb6666 mnt_want_write +EXPORT_SYMBOL_GPL vmlinux 0x77cc004c ahci_handle_port_intr +EXPORT_SYMBOL_GPL vmlinux 0x77e75be3 sfp_bus_put +EXPORT_SYMBOL_GPL vmlinux 0x77eca204 uart_console_write +EXPORT_SYMBOL_GPL vmlinux 0x781e1694 pci_sriov_set_totalvfs +EXPORT_SYMBOL_GPL vmlinux 0x7823f5dc sprint_OID +EXPORT_SYMBOL_GPL vmlinux 0x7826f6f7 dapm_pinctrl_event +EXPORT_SYMBOL_GPL vmlinux 0x78342a91 dm_internal_resume +EXPORT_SYMBOL_GPL vmlinux 0x78594bcc pci_aer_clear_nonfatal_status +EXPORT_SYMBOL_GPL vmlinux 0x785a93b4 si_mem_available +EXPORT_SYMBOL_GPL vmlinux 0x78682c96 device_get_dma_attr +EXPORT_SYMBOL_GPL vmlinux 0x78718725 pinctrl_generic_get_group +EXPORT_SYMBOL_GPL vmlinux 0x788bfbad ring_buffer_empty +EXPORT_SYMBOL_GPL vmlinux 0x7890233b serdev_device_close +EXPORT_SYMBOL_GPL vmlinux 0x789b974e sdhci_set_uhs_signaling +EXPORT_SYMBOL_GPL vmlinux 0x789c73d9 rcu_cpu_stall_suppress_at_boot +EXPORT_SYMBOL_GPL vmlinux 0x78ad0d04 i2c_new_client_device +EXPORT_SYMBOL_GPL vmlinux 0x78b39c68 tcp_bpf_sendmsg_redir +EXPORT_SYMBOL_GPL vmlinux 0x78c4c182 synth_event_add_next_val +EXPORT_SYMBOL_GPL vmlinux 0x78cdfb3b ip6_datagram_send_ctl +EXPORT_SYMBOL_GPL vmlinux 0x78ddb76b dmi_match +EXPORT_SYMBOL_GPL vmlinux 0x78dee4bf skb_scrub_packet +EXPORT_SYMBOL_GPL vmlinux 0x78e2b10f __page_mapcount +EXPORT_SYMBOL_GPL vmlinux 0x78fdfc75 wm831x_reg_lock +EXPORT_SYMBOL_GPL vmlinux 0x792f0d20 netdev_set_default_ethtool_ops +EXPORT_SYMBOL_GPL vmlinux 0x793a93dc raw_v6_hashinfo +EXPORT_SYMBOL_GPL vmlinux 0x793e26aa virtqueue_is_broken +EXPORT_SYMBOL_GPL vmlinux 0x7944e0fc tracing_off +EXPORT_SYMBOL_GPL vmlinux 0x7946de22 snd_pcm_lib_default_mmap +EXPORT_SYMBOL_GPL vmlinux 0x79470a2c TSS_authhmac +EXPORT_SYMBOL_GPL vmlinux 0x794a0461 rockchip_pcie_disable_clocks +EXPORT_SYMBOL_GPL vmlinux 0x794b7271 orderly_reboot +EXPORT_SYMBOL_GPL vmlinux 0x7951c889 genpd_dev_pm_attach_by_id +EXPORT_SYMBOL_GPL vmlinux 0x795a2a9d ata_std_bios_param +EXPORT_SYMBOL_GPL vmlinux 0x795cb118 genphy_c45_config_aneg +EXPORT_SYMBOL_GPL vmlinux 0x7962f6d4 fsstack_copy_inode_size +EXPORT_SYMBOL_GPL vmlinux 0x797715d6 gpiochip_line_is_irq +EXPORT_SYMBOL_GPL vmlinux 0x7988dcca pinctrl_generic_add_group +EXPORT_SYMBOL_GPL vmlinux 0x79a30423 clk_hw_register_fixed_factor +EXPORT_SYMBOL_GPL vmlinux 0x79a46e17 da9052_request_irq +EXPORT_SYMBOL_GPL vmlinux 0x79b1853b led_trigger_unregister +EXPORT_SYMBOL_GPL vmlinux 0x79b34623 of_genpd_add_device +EXPORT_SYMBOL_GPL vmlinux 0x79cdb946 irq_domain_associate_many +EXPORT_SYMBOL_GPL vmlinux 0x79defbe1 kthread_should_park +EXPORT_SYMBOL_GPL vmlinux 0x79e23789 sk_psock_init +EXPORT_SYMBOL_GPL vmlinux 0x7a20cebe public_key_subtype +EXPORT_SYMBOL_GPL vmlinux 0x7a252444 clockevents_register_device +EXPORT_SYMBOL_GPL vmlinux 0x7a3ac6f8 iommu_device_sysfs_remove +EXPORT_SYMBOL_GPL vmlinux 0x7a410378 ata_slave_link_init +EXPORT_SYMBOL_GPL vmlinux 0x7a48d06c cpu_latency_qos_remove_request +EXPORT_SYMBOL_GPL vmlinux 0x7a73e605 wm831x_isinkv_values +EXPORT_SYMBOL_GPL vmlinux 0x7a7c3420 regmap_bulk_write +EXPORT_SYMBOL_GPL vmlinux 0x7a7cbe75 sdhci_pltfm_resume +EXPORT_SYMBOL_GPL vmlinux 0x7a7f1396 zs_malloc +EXPORT_SYMBOL_GPL vmlinux 0x7a81541b async_synchronize_cookie +EXPORT_SYMBOL_GPL vmlinux 0x7a81e665 blkg_prfill_rwstat +EXPORT_SYMBOL_GPL vmlinux 0x7a876cbe pci_enable_ats +EXPORT_SYMBOL_GPL vmlinux 0x7a8f2dc6 devm_power_supply_register +EXPORT_SYMBOL_GPL vmlinux 0x7a8fb0bc mtd_ooblayout_count_freebytes +EXPORT_SYMBOL_GPL vmlinux 0x7a9f8028 devm_gpiod_get_index +EXPORT_SYMBOL_GPL vmlinux 0x7aa956a0 snd_dmaengine_pcm_pointer +EXPORT_SYMBOL_GPL vmlinux 0x7ab6eeec dapm_mark_endpoints_dirty +EXPORT_SYMBOL_GPL vmlinux 0x7ac10ad8 icst_clk_register +EXPORT_SYMBOL_GPL vmlinux 0x7ac722bd phy_all_ports_features_array +EXPORT_SYMBOL_GPL vmlinux 0x7ad1ded1 pinctrl_register_mappings +EXPORT_SYMBOL_GPL vmlinux 0x7ad8e8b9 regulator_register_notifier +EXPORT_SYMBOL_GPL vmlinux 0x7ae537a9 bio_clone_blkg_association +EXPORT_SYMBOL_GPL vmlinux 0x7af45f42 ahci_error_handler +EXPORT_SYMBOL_GPL vmlinux 0x7af92859 rio_set_port_lockout +EXPORT_SYMBOL_GPL vmlinux 0x7b178afe unlock_system_sleep +EXPORT_SYMBOL_GPL vmlinux 0x7b25ae73 kernel_read_file +EXPORT_SYMBOL_GPL vmlinux 0x7b25e026 power_supply_get_battery_info +EXPORT_SYMBOL_GPL vmlinux 0x7b4c67ad crypto_comp_decompress +EXPORT_SYMBOL_GPL vmlinux 0x7b4d954b clk_register_fractional_divider +EXPORT_SYMBOL_GPL vmlinux 0x7b58a70d fsverity_ioctl_enable +EXPORT_SYMBOL_GPL vmlinux 0x7b59253a class_interface_register +EXPORT_SYMBOL_GPL vmlinux 0x7b5a4926 sha1_zero_message_hash +EXPORT_SYMBOL_GPL vmlinux 0x7b617623 iommu_sva_bind_gpasid +EXPORT_SYMBOL_GPL vmlinux 0x7b6bb234 skb_gso_validate_network_len +EXPORT_SYMBOL_GPL vmlinux 0x7b776b9e usb_hcd_poll_rh_status +EXPORT_SYMBOL_GPL vmlinux 0x7b7dce4b user_read +EXPORT_SYMBOL_GPL vmlinux 0x7b80d2a0 virtqueue_enable_cb_delayed +EXPORT_SYMBOL_GPL vmlinux 0x7b9793a2 get_cpu_idle_time_us +EXPORT_SYMBOL_GPL vmlinux 0x7bde5615 pci_load_saved_state +EXPORT_SYMBOL_GPL vmlinux 0x7be04a5e spi_setup +EXPORT_SYMBOL_GPL vmlinux 0x7c17f00e nanddev_bbt_cleanup +EXPORT_SYMBOL_GPL vmlinux 0x7c20576d nanddev_bbt_get_block_status +EXPORT_SYMBOL_GPL vmlinux 0x7c231dca sched_trace_rq_avg_dl +EXPORT_SYMBOL_GPL vmlinux 0x7c2956f4 iommu_domain_window_disable +EXPORT_SYMBOL_GPL vmlinux 0x7c2e0aaf software_node_fwnode +EXPORT_SYMBOL_GPL vmlinux 0x7c44da4e usb_enable_intel_xhci_ports +EXPORT_SYMBOL_GPL vmlinux 0x7c49c2f0 sock_diag_destroy +EXPORT_SYMBOL_GPL vmlinux 0x7c5b58f0 led_trigger_read +EXPORT_SYMBOL_GPL vmlinux 0x7c69a6fd dm_disk +EXPORT_SYMBOL_GPL vmlinux 0x7c7eb03d inet_ehash_nolisten +EXPORT_SYMBOL_GPL vmlinux 0x7c7f5094 pci_speed_string +EXPORT_SYMBOL_GPL vmlinux 0x7c983a5d dmi_walk +EXPORT_SYMBOL_GPL vmlinux 0x7c9a7371 clk_prepare +EXPORT_SYMBOL_GPL vmlinux 0x7caf0d52 put_pid_ns +EXPORT_SYMBOL_GPL vmlinux 0x7cb1cba4 skb_mpls_dec_ttl +EXPORT_SYMBOL_GPL vmlinux 0x7cb52f17 lwtunnel_cmp_encap +EXPORT_SYMBOL_GPL vmlinux 0x7cc431ba crypto_alloc_base +EXPORT_SYMBOL_GPL vmlinux 0x7cd6f042 cpufreq_get_current_driver +EXPORT_SYMBOL_GPL vmlinux 0x7cd7317b devm_add_action +EXPORT_SYMBOL_GPL vmlinux 0x7cdc65a0 wbc_attach_and_unlock_inode +EXPORT_SYMBOL_GPL vmlinux 0x7cddbfe7 cs47l24_irq +EXPORT_SYMBOL_GPL vmlinux 0x7ceaf0d5 generic_handle_irq +EXPORT_SYMBOL_GPL vmlinux 0x7cf5643f tty_buffer_unlock_exclusive +EXPORT_SYMBOL_GPL vmlinux 0x7d068525 gpiod_get_value +EXPORT_SYMBOL_GPL vmlinux 0x7d08f022 iommu_alloc_resv_region +EXPORT_SYMBOL_GPL vmlinux 0x7d1b7c06 sk_clone_lock +EXPORT_SYMBOL_GPL vmlinux 0x7d26e34c ahci_host_activate +EXPORT_SYMBOL_GPL vmlinux 0x7d3475b4 mtk_pinconf_bias_disable_set_rev1 +EXPORT_SYMBOL_GPL vmlinux 0x7d3b820f kobject_create_and_add +EXPORT_SYMBOL_GPL vmlinux 0x7d59dd46 pm_wq +EXPORT_SYMBOL_GPL vmlinux 0x7d6c6b1d bpf_trace_run10 +EXPORT_SYMBOL_GPL vmlinux 0x7d7841d9 phy_power_on +EXPORT_SYMBOL_GPL vmlinux 0x7d78943a ata_sff_dev_select +EXPORT_SYMBOL_GPL vmlinux 0x7d795aae gpiod_export_link +EXPORT_SYMBOL_GPL vmlinux 0x7d7ed1fc nand_prog_page_end_op +EXPORT_SYMBOL_GPL vmlinux 0x7d7f62d7 sysfs_groups_change_owner +EXPORT_SYMBOL_GPL vmlinux 0x7d956e5d __pm_runtime_idle +EXPORT_SYMBOL_GPL vmlinux 0x7d9efb2c eventfd_fget +EXPORT_SYMBOL_GPL vmlinux 0x7da132c5 rio_map_inb_region +EXPORT_SYMBOL_GPL vmlinux 0x7db548b3 ahci_platform_resume +EXPORT_SYMBOL_GPL vmlinux 0x7dbe72db regulator_get_mode +EXPORT_SYMBOL_GPL vmlinux 0x7dc0b6dc sysfs_create_link +EXPORT_SYMBOL_GPL vmlinux 0x7dc4e30c debugfs_create_regset32 +EXPORT_SYMBOL_GPL vmlinux 0x7dd105ad nand_ooblayout_sp_ops +EXPORT_SYMBOL_GPL vmlinux 0x7dda30af unregister_tracepoint_module_notifier +EXPORT_SYMBOL_GPL vmlinux 0x7ddc0742 irq_domain_reset_irq_data +EXPORT_SYMBOL_GPL vmlinux 0x7df9a9fa blk_mq_init_queue_data +EXPORT_SYMBOL_GPL vmlinux 0x7e08d3c8 __tracepoint_remove_device_from_group +EXPORT_SYMBOL_GPL vmlinux 0x7e0d1aeb pm_genpd_syscore_poweron +EXPORT_SYMBOL_GPL vmlinux 0x7e2bc8f8 class_dev_iter_next +EXPORT_SYMBOL_GPL vmlinux 0x7e347325 gpiochip_remove +EXPORT_SYMBOL_GPL vmlinux 0x7e40ae3b spi_write_then_read +EXPORT_SYMBOL_GPL vmlinux 0x7e47efdc nand_readid_op +EXPORT_SYMBOL_GPL vmlinux 0x7e489e4e snd_soc_dai_compr_get_params +EXPORT_SYMBOL_GPL vmlinux 0x7e5254b8 irq_setup_alt_chip +EXPORT_SYMBOL_GPL vmlinux 0x7e5b87dd devm_gpiod_put +EXPORT_SYMBOL_GPL vmlinux 0x7e5c13f7 pm_clk_runtime_suspend +EXPORT_SYMBOL_GPL vmlinux 0x7e5db80b pstore_name_to_type +EXPORT_SYMBOL_GPL vmlinux 0x7e606130 snd_soc_calc_bclk +EXPORT_SYMBOL_GPL vmlinux 0x7e64181d usb_calc_bus_time +EXPORT_SYMBOL_GPL vmlinux 0x7e69e6c5 snd_soc_jack_add_gpiods +EXPORT_SYMBOL_GPL vmlinux 0x7e79b13a sbitmap_init_node +EXPORT_SYMBOL_GPL vmlinux 0x7e7e3f58 ring_buffer_reset_cpu +EXPORT_SYMBOL_GPL vmlinux 0x7e82e3ae tegra_bpmp_get +EXPORT_SYMBOL_GPL vmlinux 0x7e8a65e3 task_cls_state +EXPORT_SYMBOL_GPL vmlinux 0x7e8b975c i2c_for_each_dev +EXPORT_SYMBOL_GPL vmlinux 0x7eb00a3f usb_gadget_giveback_request +EXPORT_SYMBOL_GPL vmlinux 0x7eb808d0 add_cpu +EXPORT_SYMBOL_GPL vmlinux 0x7ebce2c9 mtd_block_isreserved +EXPORT_SYMBOL_GPL vmlinux 0x7ec046e5 net_ns_get_ownership +EXPORT_SYMBOL_GPL vmlinux 0x7ece998a snd_soc_dapm_kcontrol_widget +EXPORT_SYMBOL_GPL vmlinux 0x7ed2d35c snd_soc_dpcm_fe_can_update +EXPORT_SYMBOL_GPL vmlinux 0x7edea432 snd_soc_jack_notifier_unregister +EXPORT_SYMBOL_GPL vmlinux 0x7ee8412d __get_mtd_device +EXPORT_SYMBOL_GPL vmlinux 0x7eea6b8b pcap_adc_async +EXPORT_SYMBOL_GPL vmlinux 0x7eecaeb2 usb_role_switch_get +EXPORT_SYMBOL_GPL vmlinux 0x7eedf347 icc_provider_del +EXPORT_SYMBOL_GPL vmlinux 0x7efcb646 irq_domain_free_irqs_common +EXPORT_SYMBOL_GPL vmlinux 0x7eff1806 mtd_writev +EXPORT_SYMBOL_GPL vmlinux 0x7f014ec8 iomap_is_partially_uptodate +EXPORT_SYMBOL_GPL vmlinux 0x7f01cdfc irq_gc_mask_set_bit +EXPORT_SYMBOL_GPL vmlinux 0x7f04f857 blk_trace_startstop +EXPORT_SYMBOL_GPL vmlinux 0x7f1e6f1c da9052_disable_irq_nosync +EXPORT_SYMBOL_GPL vmlinux 0x7f35e114 gpiod_is_active_low +EXPORT_SYMBOL_GPL vmlinux 0x7f3d4826 of_nvmem_device_get +EXPORT_SYMBOL_GPL vmlinux 0x7f4262f6 dev_pm_opp_is_turbo +EXPORT_SYMBOL_GPL vmlinux 0x7f453e57 ndo_dflt_bridge_getlink +EXPORT_SYMBOL_GPL vmlinux 0x7f7809ad cros_ec_get_sensor_count +EXPORT_SYMBOL_GPL vmlinux 0x7f7cbc64 ip_tunnel_need_metadata +EXPORT_SYMBOL_GPL vmlinux 0x7f85d954 vfs_writef +EXPORT_SYMBOL_GPL vmlinux 0x7f8b434a usb_hub_claim_port +EXPORT_SYMBOL_GPL vmlinux 0x7f8dd2bb bstr_printf +EXPORT_SYMBOL_GPL vmlinux 0x7f930e60 usb_driver_set_configuration +EXPORT_SYMBOL_GPL vmlinux 0x7f9e55e8 adp5520_unregister_notifier +EXPORT_SYMBOL_GPL vmlinux 0x7fa1bdce sysfs_create_link_nowarn +EXPORT_SYMBOL_GPL vmlinux 0x7fa720a6 hrtimer_active +EXPORT_SYMBOL_GPL vmlinux 0x7faf4184 serdev_device_wait_until_sent +EXPORT_SYMBOL_GPL vmlinux 0x7fafdec9 clk_fixed_factor_ops +EXPORT_SYMBOL_GPL vmlinux 0x7fb2756b dma_get_any_slave_channel +EXPORT_SYMBOL_GPL vmlinux 0x7fb43741 sdhci_pltfm_suspend +EXPORT_SYMBOL_GPL vmlinux 0x7fb7be36 fuse_send_init +EXPORT_SYMBOL_GPL vmlinux 0x7fbd7428 find_vpid +EXPORT_SYMBOL_GPL vmlinux 0x7fd27f81 ipv4_redirect +EXPORT_SYMBOL_GPL vmlinux 0x7fd3afe1 sata_pmp_port_ops +EXPORT_SYMBOL_GPL vmlinux 0x7fdfbcc3 __blkg_prfill_u64 +EXPORT_SYMBOL_GPL vmlinux 0x7fee9dab alarm_try_to_cancel +EXPORT_SYMBOL_GPL vmlinux 0x801eb65d dev_pm_opp_of_cpumask_remove_table +EXPORT_SYMBOL_GPL vmlinux 0x80248fb6 ata_port_pbar_desc +EXPORT_SYMBOL_GPL vmlinux 0x802b02a8 devm_snd_soc_register_dai +EXPORT_SYMBOL_GPL vmlinux 0x8033c3c5 l3mdev_master_upper_ifindex_by_index_rcu +EXPORT_SYMBOL_GPL vmlinux 0x8033fae3 tracing_snapshot_cond_disable +EXPORT_SYMBOL_GPL vmlinux 0x80477c5a class_compat_create_link +EXPORT_SYMBOL_GPL vmlinux 0x8048260e sdhci_enable_clk +EXPORT_SYMBOL_GPL vmlinux 0x804bfb4f of_platform_populate +EXPORT_SYMBOL_GPL vmlinux 0x805667cf devlink_fmsg_u64_put +EXPORT_SYMBOL_GPL vmlinux 0x805b8128 device_match_of_node +EXPORT_SYMBOL_GPL vmlinux 0x80669740 sysfs_remove_file_self +EXPORT_SYMBOL_GPL vmlinux 0x806864bc regmap_check_range_table +EXPORT_SYMBOL_GPL vmlinux 0x806a088e zap_vma_ptes +EXPORT_SYMBOL_GPL vmlinux 0x80746ec6 btree_visitor +EXPORT_SYMBOL_GPL vmlinux 0x807fdcc4 call_rcu_tasks_rude +EXPORT_SYMBOL_GPL vmlinux 0x808533d1 __module_address +EXPORT_SYMBOL_GPL vmlinux 0x808ec1a3 crypto_alg_tested +EXPORT_SYMBOL_GPL vmlinux 0x80910d51 skb_partial_csum_set +EXPORT_SYMBOL_GPL vmlinux 0x80b17b75 omap_get_plat_info +EXPORT_SYMBOL_GPL vmlinux 0x80bcb0cb edac_device_free_ctl_info +EXPORT_SYMBOL_GPL vmlinux 0x80c456ac regmap_bulk_read +EXPORT_SYMBOL_GPL vmlinux 0x80c68137 nf_log_buf_close +EXPORT_SYMBOL_GPL vmlinux 0x80cf1a33 pcie_port_find_device +EXPORT_SYMBOL_GPL vmlinux 0x80d5e57a mpi_free +EXPORT_SYMBOL_GPL vmlinux 0x80d9d70a devm_of_led_get +EXPORT_SYMBOL_GPL vmlinux 0x80dfe69c ata_common_sdev_attrs +EXPORT_SYMBOL_GPL vmlinux 0x80e98a7b i2c_new_dummy_device +EXPORT_SYMBOL_GPL vmlinux 0x80f7d128 __tracepoint_block_bio_remap +EXPORT_SYMBOL_GPL vmlinux 0x8118ce81 devm_otg_ulpi_create +EXPORT_SYMBOL_GPL vmlinux 0x811dc334 usb_unregister_notify +EXPORT_SYMBOL_GPL vmlinux 0x8126d246 subsys_interface_unregister +EXPORT_SYMBOL_GPL vmlinux 0x8135b2aa add_page_wait_queue +EXPORT_SYMBOL_GPL vmlinux 0x815588a6 clk_enable +EXPORT_SYMBOL_GPL vmlinux 0x815fda83 sed_ioctl +EXPORT_SYMBOL_GPL vmlinux 0x816a41ca cpufreq_update_limits +EXPORT_SYMBOL_GPL vmlinux 0x816c0bbd crypto_unregister_acomps +EXPORT_SYMBOL_GPL vmlinux 0x817be032 access_process_vm +EXPORT_SYMBOL_GPL vmlinux 0x81920167 crypto_shash_final +EXPORT_SYMBOL_GPL vmlinux 0x8192478c da9052_enable_irq +EXPORT_SYMBOL_GPL vmlinux 0x81975468 ehci_adjust_port_wakeup_flags +EXPORT_SYMBOL_GPL vmlinux 0x81b03377 efivar_entry_set_safe +EXPORT_SYMBOL_GPL vmlinux 0x81bb2a01 page_cache_async_readahead +EXPORT_SYMBOL_GPL vmlinux 0x81bcbb43 pci_destroy_slot +EXPORT_SYMBOL_GPL vmlinux 0x81bf93e8 snd_soc_get_volsw +EXPORT_SYMBOL_GPL vmlinux 0x81c3d08f usb_unlink_urb +EXPORT_SYMBOL_GPL vmlinux 0x81cea705 usb_put_intf +EXPORT_SYMBOL_GPL vmlinux 0x81d31a33 usb_phy_set_charger_state +EXPORT_SYMBOL_GPL vmlinux 0x81d8c761 usb_unlocked_disable_lpm +EXPORT_SYMBOL_GPL vmlinux 0x81f2b867 dev_pm_opp_of_register_em +EXPORT_SYMBOL_GPL vmlinux 0x81fb567b dev_pm_set_wake_irq +EXPORT_SYMBOL_GPL vmlinux 0x820ba29f devm_led_classdev_unregister +EXPORT_SYMBOL_GPL vmlinux 0x821b10d8 iomap_swapfile_activate +EXPORT_SYMBOL_GPL vmlinux 0x821ec7f1 clk_mux_ro_ops +EXPORT_SYMBOL_GPL vmlinux 0x82213df5 sysfs_rename_link_ns +EXPORT_SYMBOL_GPL vmlinux 0x82226c53 pinctrl_unregister_mappings +EXPORT_SYMBOL_GPL vmlinux 0x824d6aff mmc_app_cmd +EXPORT_SYMBOL_GPL vmlinux 0x8263380c sysfs_notify +EXPORT_SYMBOL_GPL vmlinux 0x826fe081 uart_try_toggle_sysrq +EXPORT_SYMBOL_GPL vmlinux 0x829385e3 virtqueue_enable_cb +EXPORT_SYMBOL_GPL vmlinux 0x82b30293 pci_set_cacheline_size +EXPORT_SYMBOL_GPL vmlinux 0x82b55fd3 rcuwait_wake_up +EXPORT_SYMBOL_GPL vmlinux 0x82bad965 i2c_generic_scl_recovery +EXPORT_SYMBOL_GPL vmlinux 0x82bb3f77 key_set_timeout +EXPORT_SYMBOL_GPL vmlinux 0x82c3260d of_mm_gpiochip_remove +EXPORT_SYMBOL_GPL vmlinux 0x82c5f07a dmaengine_desc_set_metadata_len +EXPORT_SYMBOL_GPL vmlinux 0x82d79b51 sysctl_vfs_cache_pressure +EXPORT_SYMBOL_GPL vmlinux 0x82df41bf dm_get_queue_limits +EXPORT_SYMBOL_GPL vmlinux 0x82ed1a2f usb_gadget_ep_match_desc +EXPORT_SYMBOL_GPL vmlinux 0x82ff4b95 clk_hw_unregister_fixed_factor +EXPORT_SYMBOL_GPL vmlinux 0x83029a0b regulator_get_optional +EXPORT_SYMBOL_GPL vmlinux 0x83185348 of_led_get +EXPORT_SYMBOL_GPL vmlinux 0x831e9d70 fuse_free_conn +EXPORT_SYMBOL_GPL vmlinux 0x8338321c devm_rtc_device_register +EXPORT_SYMBOL_GPL vmlinux 0x8339df73 klist_add_behind +EXPORT_SYMBOL_GPL vmlinux 0x833d0031 spi_slave_abort +EXPORT_SYMBOL_GPL vmlinux 0x8341a73c __set_page_dirty +EXPORT_SYMBOL_GPL vmlinux 0x8349a895 nvmem_device_put +EXPORT_SYMBOL_GPL vmlinux 0x8378935e pm_runtime_force_suspend +EXPORT_SYMBOL_GPL vmlinux 0x83a3652f pcie_bus_configure_settings +EXPORT_SYMBOL_GPL vmlinux 0x83baa033 dev_pm_opp_find_freq_floor +EXPORT_SYMBOL_GPL vmlinux 0x83c456ff of_pinctrl_get +EXPORT_SYMBOL_GPL vmlinux 0x83d77a09 cpufreq_register_governor +EXPORT_SYMBOL_GPL vmlinux 0x83dc4a1b devlink_health_reporter_create +EXPORT_SYMBOL_GPL vmlinux 0x83dec7c6 __sock_recv_timestamp +EXPORT_SYMBOL_GPL vmlinux 0x83f4969f sdhci_set_data_timeout_irq +EXPORT_SYMBOL_GPL vmlinux 0x83fa50ec nexthop_find_by_id +EXPORT_SYMBOL_GPL vmlinux 0x8403df80 devlink_region_snapshot_id_put +EXPORT_SYMBOL_GPL vmlinux 0x84106f36 devlink_trap_ctx_priv +EXPORT_SYMBOL_GPL vmlinux 0x841b4cf2 alloc_page_buffers +EXPORT_SYMBOL_GPL vmlinux 0x84264ced fs_umode_to_ftype +EXPORT_SYMBOL_GPL vmlinux 0x84428688 fwnode_property_read_string_array +EXPORT_SYMBOL_GPL vmlinux 0x8446be74 phy_modify_mmd +EXPORT_SYMBOL_GPL vmlinux 0x844712df perf_event_cgrp_subsys_on_dfl_key +EXPORT_SYMBOL_GPL vmlinux 0x8448abbd serdev_device_write_buf +EXPORT_SYMBOL_GPL vmlinux 0x844be9bd skb_complete_tx_timestamp +EXPORT_SYMBOL_GPL vmlinux 0x844ff557 fscrypt_fname_siphash +EXPORT_SYMBOL_GPL vmlinux 0x84502a47 blk_status_to_errno +EXPORT_SYMBOL_GPL vmlinux 0x845aa3dc lpddr2_jedec_timings +EXPORT_SYMBOL_GPL vmlinux 0x845b2069 usb_show_dynids +EXPORT_SYMBOL_GPL vmlinux 0x8462cb62 atapi_cmd_type +EXPORT_SYMBOL_GPL vmlinux 0x8463a34a handle_simple_irq +EXPORT_SYMBOL_GPL vmlinux 0x8469dbbd cpts_misc_interrupt +EXPORT_SYMBOL_GPL vmlinux 0x8483f9aa blk_queue_required_elevator_features +EXPORT_SYMBOL_GPL vmlinux 0x849b9edc debugfs_attr_read +EXPORT_SYMBOL_GPL vmlinux 0x84a0a7d7 sk_set_memalloc +EXPORT_SYMBOL_GPL vmlinux 0x84a2e43d blk_rq_prep_clone +EXPORT_SYMBOL_GPL vmlinux 0x84a8d0eb of_changeset_revert +EXPORT_SYMBOL_GPL vmlinux 0x84b9f876 usb_disable_ltm +EXPORT_SYMBOL_GPL vmlinux 0x84bc50c3 ata_sff_port_ops +EXPORT_SYMBOL_GPL vmlinux 0x84c81f24 of_get_dma_window +EXPORT_SYMBOL_GPL vmlinux 0x84cb8de2 rtc_class_close +EXPORT_SYMBOL_GPL vmlinux 0x84d3fc1f __fscrypt_prepare_link +EXPORT_SYMBOL_GPL vmlinux 0x84df8654 device_property_present +EXPORT_SYMBOL_GPL vmlinux 0x850268ea devlink_dpipe_headers_register +EXPORT_SYMBOL_GPL vmlinux 0x8506baa8 clk_unregister_gate +EXPORT_SYMBOL_GPL vmlinux 0x850bb6db devlink_health_reporter_destroy +EXPORT_SYMBOL_GPL vmlinux 0x8514807a device_get_named_child_node +EXPORT_SYMBOL_GPL vmlinux 0x851c1fae rio_mport_initialize +EXPORT_SYMBOL_GPL vmlinux 0x851e6003 usb_phy_roothub_calibrate +EXPORT_SYMBOL_GPL vmlinux 0x852b4cf9 rio_get_comptag +EXPORT_SYMBOL_GPL vmlinux 0x853c370a trace_array_printk +EXPORT_SYMBOL_GPL vmlinux 0x85540ebc nvmem_cell_put +EXPORT_SYMBOL_GPL vmlinux 0x85583ff4 perf_event_period +EXPORT_SYMBOL_GPL vmlinux 0x856032e7 irq_create_of_mapping +EXPORT_SYMBOL_GPL vmlinux 0x8566f8fe fwnode_property_present +EXPORT_SYMBOL_GPL vmlinux 0x856714cc pinctrl_pm_select_idle_state +EXPORT_SYMBOL_GPL vmlinux 0x85711b84 iommu_dev_feature_enabled +EXPORT_SYMBOL_GPL vmlinux 0x857385ff usb_enable_autosuspend +EXPORT_SYMBOL_GPL vmlinux 0x8574ca6c gpio_request_array +EXPORT_SYMBOL_GPL vmlinux 0x8576f531 sock_diag_unregister +EXPORT_SYMBOL_GPL vmlinux 0x8583f29a tegra_bpmp_mrq_is_supported +EXPORT_SYMBOL_GPL vmlinux 0x858c1b60 gpiod_direction_output_raw +EXPORT_SYMBOL_GPL vmlinux 0x85967e9f pwm_put +EXPORT_SYMBOL_GPL vmlinux 0x85a49dc7 pci_vpd_find_info_keyword +EXPORT_SYMBOL_GPL vmlinux 0x85aca8ec user_free_preparse +EXPORT_SYMBOL_GPL vmlinux 0x85acb812 register_kprobe +EXPORT_SYMBOL_GPL vmlinux 0x85b06317 cpuidle_get_driver +EXPORT_SYMBOL_GPL vmlinux 0x85b3f3cf inet_getpeer +EXPORT_SYMBOL_GPL vmlinux 0x85b9266b do_splice_to +EXPORT_SYMBOL_GPL vmlinux 0x85c3db52 crypto_stats_decompress +EXPORT_SYMBOL_GPL vmlinux 0x85c54b61 efivar_validate +EXPORT_SYMBOL_GPL vmlinux 0x85ca66a2 device_store_int +EXPORT_SYMBOL_GPL vmlinux 0x85d749d4 irq_domain_xlate_onecell +EXPORT_SYMBOL_GPL vmlinux 0x85d91449 pinctrl_enable +EXPORT_SYMBOL_GPL vmlinux 0x85f696dc devm_regulator_get +EXPORT_SYMBOL_GPL vmlinux 0x85f72a61 __mmdrop +EXPORT_SYMBOL_GPL vmlinux 0x860a2eab bch_decode +EXPORT_SYMBOL_GPL vmlinux 0x8613bbe7 devlink_dpipe_match_put +EXPORT_SYMBOL_GPL vmlinux 0x8620b802 snd_soc_add_dai_controls +EXPORT_SYMBOL_GPL vmlinux 0x862258db timecounter_init +EXPORT_SYMBOL_GPL vmlinux 0x86248ec5 __audit_log_nfcfg +EXPORT_SYMBOL_GPL vmlinux 0x862bb17b linear_range_values_in_range_array +EXPORT_SYMBOL_GPL vmlinux 0x86384c42 pci_epf_bind +EXPORT_SYMBOL_GPL vmlinux 0x86457405 of_property_read_string_helper +EXPORT_SYMBOL_GPL vmlinux 0x86585a33 devlink_fmsg_obj_nest_start +EXPORT_SYMBOL_GPL vmlinux 0x8665230b percpu_ref_switch_to_percpu +EXPORT_SYMBOL_GPL vmlinux 0x866c152b security_path_symlink +EXPORT_SYMBOL_GPL vmlinux 0x8677245d unregister_switchdev_blocking_notifier +EXPORT_SYMBOL_GPL vmlinux 0x8677b06b cgroup_attach_task_all +EXPORT_SYMBOL_GPL vmlinux 0x8679cfad ata_sas_sync_probe +EXPORT_SYMBOL_GPL vmlinux 0x867e5fd2 pci_disable_pri +EXPORT_SYMBOL_GPL vmlinux 0x86844258 rio_register_driver +EXPORT_SYMBOL_GPL vmlinux 0x868784cb __symbol_get +EXPORT_SYMBOL_GPL vmlinux 0x86a3593f _proc_mkdir +EXPORT_SYMBOL_GPL vmlinux 0x86a742d1 pci_find_next_ext_capability +EXPORT_SYMBOL_GPL vmlinux 0x86b427ce clkdev_create +EXPORT_SYMBOL_GPL vmlinux 0x86c16990 devm_of_platform_populate +EXPORT_SYMBOL_GPL vmlinux 0x86c961b3 __set_dax_synchronous +EXPORT_SYMBOL_GPL vmlinux 0x86d68061 scsi_bus_type +EXPORT_SYMBOL_GPL vmlinux 0x86dedb6b hvc_poll +EXPORT_SYMBOL_GPL vmlinux 0x86e7b040 kill_dev_dax +EXPORT_SYMBOL_GPL vmlinux 0x86e7dca5 i2c_recover_bus +EXPORT_SYMBOL_GPL vmlinux 0x86f6b99d synchronize_rcu_expedited +EXPORT_SYMBOL_GPL vmlinux 0x86f85114 net_dec_egress_queue +EXPORT_SYMBOL_GPL vmlinux 0x8702a316 usb_set_configuration +EXPORT_SYMBOL_GPL vmlinux 0x8708a697 dev_pm_opp_set_sharing_cpus +EXPORT_SYMBOL_GPL vmlinux 0x87245673 extcon_get_edev_name +EXPORT_SYMBOL_GPL vmlinux 0x87564683 mpc8xxx_spi_rx_buf_u8 +EXPORT_SYMBOL_GPL vmlinux 0x87599e91 security_file_permission +EXPORT_SYMBOL_GPL vmlinux 0x877c9d59 wm831x_auxadc_read_uv +EXPORT_SYMBOL_GPL vmlinux 0x877d3ac3 sbitmap_del_wait_queue +EXPORT_SYMBOL_GPL vmlinux 0x877e5e68 synth_event_gen_cmd_array_start +EXPORT_SYMBOL_GPL vmlinux 0x87899f9c subsys_dev_iter_next +EXPORT_SYMBOL_GPL vmlinux 0x878be68d rio_release_inb_mbox +EXPORT_SYMBOL_GPL vmlinux 0x8794d792 snd_soc_dai_set_channel_map +EXPORT_SYMBOL_GPL vmlinux 0x879bb353 pl08x_filter_id +EXPORT_SYMBOL_GPL vmlinux 0x879fde0d fat_update_time +EXPORT_SYMBOL_GPL vmlinux 0x87b0781d gpiochip_populate_parent_fwspec_twocell +EXPORT_SYMBOL_GPL vmlinux 0x87b2b34e __tracepoint_attach_device_to_domain +EXPORT_SYMBOL_GPL vmlinux 0x87b6c2e0 __inet_twsk_schedule +EXPORT_SYMBOL_GPL vmlinux 0x87b72212 nand_read_page_op +EXPORT_SYMBOL_GPL vmlinux 0x87b7d617 srcu_torture_stats_print +EXPORT_SYMBOL_GPL vmlinux 0x87baa8c4 stmpe811_adc_common_init +EXPORT_SYMBOL_GPL vmlinux 0x87c2db3f rio_route_get_entry +EXPORT_SYMBOL_GPL vmlinux 0x87c33135 fscrypt_ioctl_remove_key +EXPORT_SYMBOL_GPL vmlinux 0x87c4f1ca usb_ep_fifo_flush +EXPORT_SYMBOL_GPL vmlinux 0x87d529a3 __regmap_init_i2c +EXPORT_SYMBOL_GPL vmlinux 0x87d85651 tty_port_register_device_serdev +EXPORT_SYMBOL_GPL vmlinux 0x87e6f854 snd_soc_put_enum_double +EXPORT_SYMBOL_GPL vmlinux 0x87f29e3f dev_pm_opp_disable +EXPORT_SYMBOL_GPL vmlinux 0x88019cdd find_extend_vma +EXPORT_SYMBOL_GPL vmlinux 0x8804dde1 tpm2_probe +EXPORT_SYMBOL_GPL vmlinux 0x8805a073 blocking_notifier_call_chain +EXPORT_SYMBOL_GPL vmlinux 0x880ef295 property_entries_dup +EXPORT_SYMBOL_GPL vmlinux 0x88136451 sched_trace_rq_avg_rt +EXPORT_SYMBOL_GPL vmlinux 0x88279cae regulator_disable +EXPORT_SYMBOL_GPL vmlinux 0x88279d2c pci_epc_put +EXPORT_SYMBOL_GPL vmlinux 0x883ca9d7 module_mutex +EXPORT_SYMBOL_GPL vmlinux 0x885528a6 ring_buffer_discard_commit +EXPORT_SYMBOL_GPL vmlinux 0x885dc820 d_exchange +EXPORT_SYMBOL_GPL vmlinux 0x888cd568 inet_csk_reqsk_queue_hash_add +EXPORT_SYMBOL_GPL vmlinux 0x88930241 scsi_host_complete_all_commands +EXPORT_SYMBOL_GPL vmlinux 0x88997d6f soc_device_register +EXPORT_SYMBOL_GPL vmlinux 0x88ab6fe3 kgdb_active +EXPORT_SYMBOL_GPL vmlinux 0x88b4ae92 ring_buffer_normalize_time_stamp +EXPORT_SYMBOL_GPL vmlinux 0x88bc3f9e iommu_sva_get_pasid +EXPORT_SYMBOL_GPL vmlinux 0x88be8ff7 iommu_map_sg_atomic +EXPORT_SYMBOL_GPL vmlinux 0x88c64c32 virtqueue_get_buf_ctx +EXPORT_SYMBOL_GPL vmlinux 0x88dad729 rio_alloc_net +EXPORT_SYMBOL_GPL vmlinux 0x88e50630 crypto_register_alg +EXPORT_SYMBOL_GPL vmlinux 0x88f58bdf security_kernel_load_data +EXPORT_SYMBOL_GPL vmlinux 0x88fe643f snd_soc_dapm_force_bias_level +EXPORT_SYMBOL_GPL vmlinux 0x890728c2 attribute_container_register +EXPORT_SYMBOL_GPL vmlinux 0x8924eb1e rcu_force_quiescent_state +EXPORT_SYMBOL_GPL vmlinux 0x892867a4 clk_hw_get_rate +EXPORT_SYMBOL_GPL vmlinux 0x8932aa0b serial8250_do_shutdown +EXPORT_SYMBOL_GPL vmlinux 0x8933a03b bpf_map_inc +EXPORT_SYMBOL_GPL vmlinux 0x893abbdd devlink_fmsg_u32_pair_put +EXPORT_SYMBOL_GPL vmlinux 0x8941b3c5 devlink_port_params_register +EXPORT_SYMBOL_GPL vmlinux 0x8942ac29 irq_chip_unmask_parent +EXPORT_SYMBOL_GPL vmlinux 0x89436f1e efivar_entry_set_get_size +EXPORT_SYMBOL_GPL vmlinux 0x8946b5c8 scsi_target_unblock +EXPORT_SYMBOL_GPL vmlinux 0x8947dc3b device_match_any +EXPORT_SYMBOL_GPL vmlinux 0x89485687 iommu_group_put +EXPORT_SYMBOL_GPL vmlinux 0x895d3d20 inode_congested +EXPORT_SYMBOL_GPL vmlinux 0x896f812a mtk_eint_do_resume +EXPORT_SYMBOL_GPL vmlinux 0x89834cd0 crypto_shash_update +EXPORT_SYMBOL_GPL vmlinux 0x899389a1 __udp6_lib_lookup +EXPORT_SYMBOL_GPL vmlinux 0x89bbafc6 usb_register_notify +EXPORT_SYMBOL_GPL vmlinux 0x89bef563 fscrypt_set_test_dummy_encryption +EXPORT_SYMBOL_GPL vmlinux 0x89bfe270 __wake_up_locked_key_bookmark +EXPORT_SYMBOL_GPL vmlinux 0x89c52706 usb_hcd_amd_remote_wakeup_quirk +EXPORT_SYMBOL_GPL vmlinux 0x89f6fc57 extcon_unregister_notifier +EXPORT_SYMBOL_GPL vmlinux 0x89f9d73a pci_rescan_bus +EXPORT_SYMBOL_GPL vmlinux 0x89ff1add class_destroy +EXPORT_SYMBOL_GPL vmlinux 0x8a3f84ba linear_range_get_selector_low +EXPORT_SYMBOL_GPL vmlinux 0x8a3fde26 pm_genpd_remove +EXPORT_SYMBOL_GPL vmlinux 0x8a51e48a wm8350_reg_unlock +EXPORT_SYMBOL_GPL vmlinux 0x8a554a36 mpc8xxx_spi_strmode +EXPORT_SYMBOL_GPL vmlinux 0x8a5bc7ae usb_udc_vbus_handler +EXPORT_SYMBOL_GPL vmlinux 0x8a62b81b sfp_upstream_stop +EXPORT_SYMBOL_GPL vmlinux 0x8a7ca372 kernfs_put +EXPORT_SYMBOL_GPL vmlinux 0x8a9cffc0 wm8350_gpio_config +EXPORT_SYMBOL_GPL vmlinux 0x8a9d804f usb_anchor_urb +EXPORT_SYMBOL_GPL vmlinux 0x8aa02161 alarm_cancel +EXPORT_SYMBOL_GPL vmlinux 0x8aa4bd12 __pm_runtime_suspend +EXPORT_SYMBOL_GPL vmlinux 0x8aa86d43 netlink_strict_get_check +EXPORT_SYMBOL_GPL vmlinux 0x8aad89f7 exynos_get_pmu_regmap +EXPORT_SYMBOL_GPL vmlinux 0x8ab3269d dev_forward_skb +EXPORT_SYMBOL_GPL vmlinux 0x8abacc47 get_max_files +EXPORT_SYMBOL_GPL vmlinux 0x8ac11ebd iommu_sva_bind_device +EXPORT_SYMBOL_GPL vmlinux 0x8ad4d55e scsi_eh_ready_devs +EXPORT_SYMBOL_GPL vmlinux 0x8ad90666 handle_fasteoi_ack_irq +EXPORT_SYMBOL_GPL vmlinux 0x8aea1f90 fixed_phy_unregister +EXPORT_SYMBOL_GPL vmlinux 0x8b038a87 rtnl_get_net_ns_capable +EXPORT_SYMBOL_GPL vmlinux 0x8b149c36 clk_is_match +EXPORT_SYMBOL_GPL vmlinux 0x8b16b0fa register_net_sysctl +EXPORT_SYMBOL_GPL vmlinux 0x8b188ad1 sdio_readb +EXPORT_SYMBOL_GPL vmlinux 0x8b36ed3f pci_bridge_secondary_bus_reset +EXPORT_SYMBOL_GPL vmlinux 0x8b4277c3 fat_search_long +EXPORT_SYMBOL_GPL vmlinux 0x8b4c5bfa blockdev_superblock +EXPORT_SYMBOL_GPL vmlinux 0x8b529ce4 nvmem_add_cell_lookups +EXPORT_SYMBOL_GPL vmlinux 0x8b6d2ba3 sdio_writel +EXPORT_SYMBOL_GPL vmlinux 0x8b892c02 __hwspin_trylock +EXPORT_SYMBOL_GPL vmlinux 0x8b8dc35c fscrypt_ioctl_get_policy_ex +EXPORT_SYMBOL_GPL vmlinux 0x8b91f7a7 nr_swap_pages +EXPORT_SYMBOL_GPL vmlinux 0x8ba0c4ba usb_root_hub_lost_power +EXPORT_SYMBOL_GPL vmlinux 0x8babf072 of_hwspin_lock_get_id_byname +EXPORT_SYMBOL_GPL vmlinux 0x8bbb4855 bus_for_each_dev +EXPORT_SYMBOL_GPL vmlinux 0x8bd92074 regulator_map_voltage_linear_range +EXPORT_SYMBOL_GPL vmlinux 0x8be73823 platform_bus +EXPORT_SYMBOL_GPL vmlinux 0x8c0215f2 pm_system_wakeup +EXPORT_SYMBOL_GPL vmlinux 0x8c03d20c destroy_workqueue +EXPORT_SYMBOL_GPL vmlinux 0x8c11e860 nanddev_cleanup +EXPORT_SYMBOL_GPL vmlinux 0x8c2921e2 __tracepoint_pelt_irq_tp +EXPORT_SYMBOL_GPL vmlinux 0x8c2b697e clk_hw_round_rate +EXPORT_SYMBOL_GPL vmlinux 0x8c33d6cf of_pci_range_parser_one +EXPORT_SYMBOL_GPL vmlinux 0x8c479745 __cpuhp_state_remove_instance +EXPORT_SYMBOL_GPL vmlinux 0x8c5e6c2c gpiochip_request_own_desc +EXPORT_SYMBOL_GPL vmlinux 0x8c5fbb62 input_ff_create +EXPORT_SYMBOL_GPL vmlinux 0x8c68d301 __clk_hw_register_mux +EXPORT_SYMBOL_GPL vmlinux 0x8c743fb6 reset_control_status +EXPORT_SYMBOL_GPL vmlinux 0x8c75aee6 kern_mount +EXPORT_SYMBOL_GPL vmlinux 0x8c788a22 devlink_trap_groups_register +EXPORT_SYMBOL_GPL vmlinux 0x8c7bb06f tty_port_register_device_attr_serdev +EXPORT_SYMBOL_GPL vmlinux 0x8c7bd877 __tracepoint_br_fdb_external_learn_add +EXPORT_SYMBOL_GPL vmlinux 0x8c89e3b8 usb_phy_roothub_power_off +EXPORT_SYMBOL_GPL vmlinux 0x8c8b428a securityfs_create_file +EXPORT_SYMBOL_GPL vmlinux 0x8cada6b6 scsi_dh_attached_handler_name +EXPORT_SYMBOL_GPL vmlinux 0x8caeeeaa rhashtable_destroy +EXPORT_SYMBOL_GPL vmlinux 0x8cb33061 led_trigger_blink +EXPORT_SYMBOL_GPL vmlinux 0x8cb5474c gpiochip_irqchip_add_key +EXPORT_SYMBOL_GPL vmlinux 0x8cb99563 inet6_lookup +EXPORT_SYMBOL_GPL vmlinux 0x8cca0669 gpiochip_line_is_open_source +EXPORT_SYMBOL_GPL vmlinux 0x8cd48bd2 __tcp_send_ack +EXPORT_SYMBOL_GPL vmlinux 0x8cf6bd3d inet_csk_get_port +EXPORT_SYMBOL_GPL vmlinux 0x8d18ac84 edac_mc_free +EXPORT_SYMBOL_GPL vmlinux 0x8d22bb58 iommu_group_alloc +EXPORT_SYMBOL_GPL vmlinux 0x8d423ce7 page_reporting_register +EXPORT_SYMBOL_GPL vmlinux 0x8d45c95d of_pci_find_child_device +EXPORT_SYMBOL_GPL vmlinux 0x8d4fc2c5 thermal_zone_of_sensor_register +EXPORT_SYMBOL_GPL vmlinux 0x8d584b27 pinmux_generic_remove_function +EXPORT_SYMBOL_GPL vmlinux 0x8d5fd735 phy_gbit_features +EXPORT_SYMBOL_GPL vmlinux 0x8d609e30 serdev_device_set_baudrate +EXPORT_SYMBOL_GPL vmlinux 0x8d64e36a usb_free_coherent +EXPORT_SYMBOL_GPL vmlinux 0x8d6ca584 cpufreq_driver_resolve_freq +EXPORT_SYMBOL_GPL vmlinux 0x8d6e4127 bio_iov_iter_get_pages +EXPORT_SYMBOL_GPL vmlinux 0x8d79fabd fuse_do_open +EXPORT_SYMBOL_GPL vmlinux 0x8d7bc776 pkcs7_verify +EXPORT_SYMBOL_GPL vmlinux 0x8d7e2e8c snd_soc_dapm_force_enable_pin_unlocked +EXPORT_SYMBOL_GPL vmlinux 0x8d864069 snd_pcm_rate_range_to_bits +EXPORT_SYMBOL_GPL vmlinux 0x8d872906 ata_pio_need_iordy +EXPORT_SYMBOL_GPL vmlinux 0x8d877da8 rio_free_net +EXPORT_SYMBOL_GPL vmlinux 0x8d9f7d4c rockchip_pcie_cfg_configuration_accesses +EXPORT_SYMBOL_GPL vmlinux 0x8da8b07a nand_prog_page_op +EXPORT_SYMBOL_GPL vmlinux 0x8db73b40 i2c_dw_prepare_clk +EXPORT_SYMBOL_GPL vmlinux 0x8dc11669 lpddr2_jedec_addressing_table +EXPORT_SYMBOL_GPL vmlinux 0x8dc28feb skb_cow_data +EXPORT_SYMBOL_GPL vmlinux 0x8dc9e1c7 thermal_remove_hwmon_sysfs +EXPORT_SYMBOL_GPL vmlinux 0x8de818bd of_irq_find_parent +EXPORT_SYMBOL_GPL vmlinux 0x8e02ae06 nf_ip_route +EXPORT_SYMBOL_GPL vmlinux 0x8e0d882d pci_find_ext_capability +EXPORT_SYMBOL_GPL vmlinux 0x8e143d11 fib_rules_lookup +EXPORT_SYMBOL_GPL vmlinux 0x8e15135c ahci_kick_engine +EXPORT_SYMBOL_GPL vmlinux 0x8e1621cf fscrypt_match_name +EXPORT_SYMBOL_GPL vmlinux 0x8e3859ac uart_get_rs485_mode +EXPORT_SYMBOL_GPL vmlinux 0x8e3b8c97 snd_soc_resume +EXPORT_SYMBOL_GPL vmlinux 0x8e3bfa89 blk_mq_update_nr_hw_queues +EXPORT_SYMBOL_GPL vmlinux 0x8e43680a find_module +EXPORT_SYMBOL_GPL vmlinux 0x8e4b63a6 hisi_clk_register_gate_sep +EXPORT_SYMBOL_GPL vmlinux 0x8e4eb451 bpf_sk_storage_diag_free +EXPORT_SYMBOL_GPL vmlinux 0x8e51a3c7 dev_pm_opp_cpumask_remove_table +EXPORT_SYMBOL_GPL vmlinux 0x8e5f36e9 stmpe_block_read +EXPORT_SYMBOL_GPL vmlinux 0x8e82db91 __devm_regmap_init_mmio_clk +EXPORT_SYMBOL_GPL vmlinux 0x8e863186 of_icc_get +EXPORT_SYMBOL_GPL vmlinux 0x8e888270 dm_hold +EXPORT_SYMBOL_GPL vmlinux 0x8e8fc934 sdhci_adma_write_desc +EXPORT_SYMBOL_GPL vmlinux 0x8e94f7c9 irq_gc_mask_clr_bit +EXPORT_SYMBOL_GPL vmlinux 0x8eaa61ac regulator_set_voltage_rdev +EXPORT_SYMBOL_GPL vmlinux 0x8eabf7e4 handle_fasteoi_nmi +EXPORT_SYMBOL_GPL vmlinux 0x8eae8dfd usb_find_common_endpoints +EXPORT_SYMBOL_GPL vmlinux 0x8eb798d4 regulator_get_linear_step +EXPORT_SYMBOL_GPL vmlinux 0x8eb89b1e hvc_instantiate +EXPORT_SYMBOL_GPL vmlinux 0x8ec2e211 sdhci_pltfm_init +EXPORT_SYMBOL_GPL vmlinux 0x8ecf8558 __pci_epc_create +EXPORT_SYMBOL_GPL vmlinux 0x8ee0e9f4 vchan_init +EXPORT_SYMBOL_GPL vmlinux 0x8eee3399 dax_read_unlock +EXPORT_SYMBOL_GPL vmlinux 0x8f0748af rcu_expedite_gp +EXPORT_SYMBOL_GPL vmlinux 0x8f079f77 usb_gadget_unmap_request_by_dev +EXPORT_SYMBOL_GPL vmlinux 0x8f0d10e0 rio_attach_device +EXPORT_SYMBOL_GPL vmlinux 0x8f1a8cf9 rsa_parse_pub_key +EXPORT_SYMBOL_GPL vmlinux 0x8f4d4e43 pci_cfg_access_trylock +EXPORT_SYMBOL_GPL vmlinux 0x8f558793 mtk_pinconf_adv_pull_set +EXPORT_SYMBOL_GPL vmlinux 0x8f592c8c of_usb_update_otg_caps +EXPORT_SYMBOL_GPL vmlinux 0x8f6cee77 __round_jiffies_relative +EXPORT_SYMBOL_GPL vmlinux 0x8f725e67 probes_decode_arm_table +EXPORT_SYMBOL_GPL vmlinux 0x8f786bee fs_umode_to_dtype +EXPORT_SYMBOL_GPL vmlinux 0x8f997f47 snd_soc_dapm_new_widgets +EXPORT_SYMBOL_GPL vmlinux 0x8fbe60c9 rio_dma_prep_slave_sg +EXPORT_SYMBOL_GPL vmlinux 0x8fca63f8 snd_soc_of_get_slot_mask +EXPORT_SYMBOL_GPL vmlinux 0x8fcff898 synchronize_srcu +EXPORT_SYMBOL_GPL vmlinux 0x8fe67f45 list_lru_walk_one +EXPORT_SYMBOL_GPL vmlinux 0x8ff4e92c cgroup_path_ns +EXPORT_SYMBOL_GPL vmlinux 0x900a86a8 crypto_unregister_rngs +EXPORT_SYMBOL_GPL vmlinux 0x901c6c99 __tracepoint_neigh_update_done +EXPORT_SYMBOL_GPL vmlinux 0x903b627c list_lru_isolate_move +EXPORT_SYMBOL_GPL vmlinux 0x9055efc0 ata_sff_qc_issue +EXPORT_SYMBOL_GPL vmlinux 0x90584ffe snd_soc_component_disable_pin_unlocked +EXPORT_SYMBOL_GPL vmlinux 0x90688bcd devlink_info_driver_name_put +EXPORT_SYMBOL_GPL vmlinux 0x906dd327 usb_unpoison_anchored_urbs +EXPORT_SYMBOL_GPL vmlinux 0x9070f2c3 sk_setup_caps +EXPORT_SYMBOL_GPL vmlinux 0x90803c9e i2c_get_device_id +EXPORT_SYMBOL_GPL vmlinux 0x9084c4da fuse_fill_super_common +EXPORT_SYMBOL_GPL vmlinux 0x90b59a2a devm_device_add_group +EXPORT_SYMBOL_GPL vmlinux 0x90b8c7f4 debugfs_create_u64 +EXPORT_SYMBOL_GPL vmlinux 0x90d3b4d6 serial8250_rx_dma_flush +EXPORT_SYMBOL_GPL vmlinux 0x90d7dcb6 dev_pm_put_subsys_data +EXPORT_SYMBOL_GPL vmlinux 0x90dcb7c8 extcon_set_property +EXPORT_SYMBOL_GPL vmlinux 0x90ec0b50 disable_kprobe +EXPORT_SYMBOL_GPL vmlinux 0x90fe57ac crypto_aes_set_key +EXPORT_SYMBOL_GPL vmlinux 0x91166960 of_changeset_action +EXPORT_SYMBOL_GPL vmlinux 0x9118f3ba register_kretprobe +EXPORT_SYMBOL_GPL vmlinux 0x9120d438 scsi_register_device_handler +EXPORT_SYMBOL_GPL vmlinux 0x9132e0d1 elv_register +EXPORT_SYMBOL_GPL vmlinux 0x91333b84 blkg_conf_finish +EXPORT_SYMBOL_GPL vmlinux 0x9134b361 snd_soc_new_compress +EXPORT_SYMBOL_GPL vmlinux 0x913ca5e1 iommu_map +EXPORT_SYMBOL_GPL vmlinux 0x9145d11c watchdog_unregister_device +EXPORT_SYMBOL_GPL vmlinux 0x914edfc0 blk_mq_sched_free_hctx_data +EXPORT_SYMBOL_GPL vmlinux 0x91519a16 dev_pm_opp_of_cpumask_add_table +EXPORT_SYMBOL_GPL vmlinux 0x9156c70e alarmtimer_get_rtcdev +EXPORT_SYMBOL_GPL vmlinux 0x91637e86 unregister_net_sysctl_table +EXPORT_SYMBOL_GPL vmlinux 0x916e061e msi_desc_to_pci_sysdata +EXPORT_SYMBOL_GPL vmlinux 0x91708a9e fs_kobj +EXPORT_SYMBOL_GPL vmlinux 0x91938636 x509_cert_parse +EXPORT_SYMBOL_GPL vmlinux 0x919c0594 da9055_regmap_config +EXPORT_SYMBOL_GPL vmlinux 0x91a0df44 nand_op_parser_exec_op +EXPORT_SYMBOL_GPL vmlinux 0x91a0fcb5 __phy_modify_mmd_changed +EXPORT_SYMBOL_GPL vmlinux 0x91a39f17 ethnl_cable_test_result +EXPORT_SYMBOL_GPL vmlinux 0x91a41668 of_get_pci_domain_nr +EXPORT_SYMBOL_GPL vmlinux 0x91a4f560 usb_queue_reset_device +EXPORT_SYMBOL_GPL vmlinux 0x91a55068 public_key_free +EXPORT_SYMBOL_GPL vmlinux 0x91c6e5b0 pcap_to_irq +EXPORT_SYMBOL_GPL vmlinux 0x91c8139d sk_msg_free +EXPORT_SYMBOL_GPL vmlinux 0x91ce9caa snd_soc_component_exit_regmap +EXPORT_SYMBOL_GPL vmlinux 0x91f04058 cpufreq_driver_target +EXPORT_SYMBOL_GPL vmlinux 0x91f94684 pm_clk_resume +EXPORT_SYMBOL_GPL vmlinux 0x91fa5317 crypto_stats_skcipher_encrypt +EXPORT_SYMBOL_GPL vmlinux 0x920321a6 usb_deregister_device_driver +EXPORT_SYMBOL_GPL vmlinux 0x920beb59 scsi_host_block +EXPORT_SYMBOL_GPL vmlinux 0x9244abb2 serial8250_do_set_mctrl +EXPORT_SYMBOL_GPL vmlinux 0x924c46f8 zs_unmap_object +EXPORT_SYMBOL_GPL vmlinux 0x925d91e2 bio_trim +EXPORT_SYMBOL_GPL vmlinux 0x925f2a7a iomap_fiemap +EXPORT_SYMBOL_GPL vmlinux 0x926fdcad ata_host_start +EXPORT_SYMBOL_GPL vmlinux 0x92777862 rcu_read_unlock_trace_special +EXPORT_SYMBOL_GPL vmlinux 0x927f456b skcipher_walk_done +EXPORT_SYMBOL_GPL vmlinux 0x9282f433 __tracepoint_devlink_hwmsg +EXPORT_SYMBOL_GPL vmlinux 0x9285ceb2 rhashtable_init +EXPORT_SYMBOL_GPL vmlinux 0x9294eabc bpf_prog_add +EXPORT_SYMBOL_GPL vmlinux 0x92a3222f pwmchip_remove +EXPORT_SYMBOL_GPL vmlinux 0x92a48c01 fixed_phy_register +EXPORT_SYMBOL_GPL vmlinux 0x92a4f574 dev_pm_opp_register_set_opp_helper +EXPORT_SYMBOL_GPL vmlinux 0x92af3b30 snd_soc_dai_compr_startup +EXPORT_SYMBOL_GPL vmlinux 0x92b57248 flush_work +EXPORT_SYMBOL_GPL vmlinux 0x92d31cfb fixed_phy_add +EXPORT_SYMBOL_GPL vmlinux 0x92d57b97 pwm_free +EXPORT_SYMBOL_GPL vmlinux 0x92db8f68 do_trace_rcu_torture_read +EXPORT_SYMBOL_GPL vmlinux 0x92ffc3bb seg6_do_srh_inline +EXPORT_SYMBOL_GPL vmlinux 0x92ffcc77 pci_max_pasids +EXPORT_SYMBOL_GPL vmlinux 0x9312eef5 of_i2c_setup_smbus_alert +EXPORT_SYMBOL_GPL vmlinux 0x93170790 blk_fill_rwbs +EXPORT_SYMBOL_GPL vmlinux 0x931b88c3 crypto_grab_skcipher +EXPORT_SYMBOL_GPL vmlinux 0x9321b325 devm_clk_bulk_get_optional +EXPORT_SYMBOL_GPL vmlinux 0x93255b2b ring_buffer_lock_reserve +EXPORT_SYMBOL_GPL vmlinux 0x932c8d7a linear_range_get_value_array +EXPORT_SYMBOL_GPL vmlinux 0x933ac406 gpiod_set_array_value +EXPORT_SYMBOL_GPL vmlinux 0x934c287c devlink_dpipe_entry_ctx_append +EXPORT_SYMBOL_GPL vmlinux 0x934fea0e crypto_unregister_templates +EXPORT_SYMBOL_GPL vmlinux 0x935b2e76 led_trigger_set +EXPORT_SYMBOL_GPL vmlinux 0x93805369 software_node_register_node_group +EXPORT_SYMBOL_GPL vmlinux 0x9384cd49 ata_tf_from_fis +EXPORT_SYMBOL_GPL vmlinux 0x9396c787 __wake_up_locked_sync_key +EXPORT_SYMBOL_GPL vmlinux 0x93e1b647 serdev_device_set_parity +EXPORT_SYMBOL_GPL vmlinux 0x93edef07 devlink_health_report +EXPORT_SYMBOL_GPL vmlinux 0x93fb59b6 __netpoll_cleanup +EXPORT_SYMBOL_GPL vmlinux 0x9402cfd4 aead_init_geniv +EXPORT_SYMBOL_GPL vmlinux 0x94062060 snd_dmaengine_pcm_refine_runtime_hwparams +EXPORT_SYMBOL_GPL vmlinux 0x940bb7a3 pci_epc_set_msi +EXPORT_SYMBOL_GPL vmlinux 0x940bcf12 snd_soc_dpcm_get_substream +EXPORT_SYMBOL_GPL vmlinux 0x940cce27 __sock_recv_ts_and_drops +EXPORT_SYMBOL_GPL vmlinux 0x941a3d4f clk_hw_unregister_fixed_rate +EXPORT_SYMBOL_GPL vmlinux 0x941f2aaa eventfd_ctx_put +EXPORT_SYMBOL_GPL vmlinux 0x9425bb34 nvmem_dev_name +EXPORT_SYMBOL_GPL vmlinux 0x942813e9 disk_has_partitions +EXPORT_SYMBOL_GPL vmlinux 0x942d15c6 iommu_fwspec_free +EXPORT_SYMBOL_GPL vmlinux 0x9430b198 trace_dump_stack +EXPORT_SYMBOL_GPL vmlinux 0x943d2695 devm_usb_get_phy_by_node +EXPORT_SYMBOL_GPL vmlinux 0x9447d163 paste_selection +EXPORT_SYMBOL_GPL vmlinux 0x94549204 bus_rescan_devices +EXPORT_SYMBOL_GPL vmlinux 0x945517c1 snd_dmaengine_pcm_pointer_no_residue +EXPORT_SYMBOL_GPL vmlinux 0x94559758 dev_pm_opp_get_suspend_opp_freq +EXPORT_SYMBOL_GPL vmlinux 0x94565d24 usb_ep_free_request +EXPORT_SYMBOL_GPL vmlinux 0x9459866f wm5110_i2c_regmap +EXPORT_SYMBOL_GPL vmlinux 0x946c38ea sdhci_set_ios +EXPORT_SYMBOL_GPL vmlinux 0x946c9a93 dummy_con +EXPORT_SYMBOL_GPL vmlinux 0x946d849f mtk_is_virt_gpio +EXPORT_SYMBOL_GPL vmlinux 0x946dd559 sha224_zero_message_hash +EXPORT_SYMBOL_GPL vmlinux 0x94850687 tty_buffer_set_limit +EXPORT_SYMBOL_GPL vmlinux 0x949794e0 trace_put_event_file +EXPORT_SYMBOL_GPL vmlinux 0x949b5176 devlink_region_snapshot_create +EXPORT_SYMBOL_GPL vmlinux 0x94abb745 sprint_oid +EXPORT_SYMBOL_GPL vmlinux 0x94b4f70c virtqueue_poll +EXPORT_SYMBOL_GPL vmlinux 0x94b81aa9 xfrm_audit_state_notfound_simple +EXPORT_SYMBOL_GPL vmlinux 0x94c1a6f1 irq_chip_set_parent_state +EXPORT_SYMBOL_GPL vmlinux 0x94d47197 fscrypt_get_symlink +EXPORT_SYMBOL_GPL vmlinux 0x94d71345 __raw_v4_lookup +EXPORT_SYMBOL_GPL vmlinux 0x94dde596 snd_soc_remove_pcm_runtime +EXPORT_SYMBOL_GPL vmlinux 0x94df0e83 nf_queue_entry_get_refs +EXPORT_SYMBOL_GPL vmlinux 0x94e0261e da9052_adc_manual_read +EXPORT_SYMBOL_GPL vmlinux 0x94e28f5a verify_pkcs7_signature +EXPORT_SYMBOL_GPL vmlinux 0x94e4cb27 __bio_try_merge_page +EXPORT_SYMBOL_GPL vmlinux 0x94edf8f7 iommu_attach_device +EXPORT_SYMBOL_GPL vmlinux 0x9504df26 irq_wake_thread +EXPORT_SYMBOL_GPL vmlinux 0x95072cc4 crypto_register_instance +EXPORT_SYMBOL_GPL vmlinux 0x950c55c2 fuse_abort_conn +EXPORT_SYMBOL_GPL vmlinux 0x950d3b60 inode_dax +EXPORT_SYMBOL_GPL vmlinux 0x951a2773 crypto_has_alg +EXPORT_SYMBOL_GPL vmlinux 0x9521ed09 blk_trace_remove +EXPORT_SYMBOL_GPL vmlinux 0x952664c5 do_exit +EXPORT_SYMBOL_GPL vmlinux 0x9529f491 amba_ahb_device_add +EXPORT_SYMBOL_GPL vmlinux 0x952cc716 unregister_wide_hw_breakpoint +EXPORT_SYMBOL_GPL vmlinux 0x952f5f55 firmware_request_cache +EXPORT_SYMBOL_GPL vmlinux 0x95363dfb usb_autopm_put_interface +EXPORT_SYMBOL_GPL vmlinux 0x953e1b9e ktime_get_real_seconds +EXPORT_SYMBOL_GPL vmlinux 0x955ae82c snd_soc_dapm_disable_pin +EXPORT_SYMBOL_GPL vmlinux 0x955b0e2e kthread_worker_fn +EXPORT_SYMBOL_GPL vmlinux 0x956ac400 ring_buffer_dropped_events_cpu +EXPORT_SYMBOL_GPL vmlinux 0x95730db3 inet6_hash +EXPORT_SYMBOL_GPL vmlinux 0x9580c5a3 component_add_typed +EXPORT_SYMBOL_GPL vmlinux 0x95814a55 inet_csk_listen_stop +EXPORT_SYMBOL_GPL vmlinux 0x958dac4b dev_pm_genpd_set_performance_state +EXPORT_SYMBOL_GPL vmlinux 0x958df3ac zs_free +EXPORT_SYMBOL_GPL vmlinux 0x959ba5ef ip6_flush_pending_frames +EXPORT_SYMBOL_GPL vmlinux 0x959ec5f5 call_rcu_tasks +EXPORT_SYMBOL_GPL vmlinux 0x95a43f36 pid_nr_ns +EXPORT_SYMBOL_GPL vmlinux 0x95aeeedc blkg_conf_prep +EXPORT_SYMBOL_GPL vmlinux 0x95bb669c input_ff_erase +EXPORT_SYMBOL_GPL vmlinux 0x95bc9078 btree_free +EXPORT_SYMBOL_GPL vmlinux 0x95c7da06 usb_autopm_get_interface_async +EXPORT_SYMBOL_GPL vmlinux 0x95ddadc6 of_reserved_mem_device_release +EXPORT_SYMBOL_GPL vmlinux 0x95ecfa3a gpiod_get_direction +EXPORT_SYMBOL_GPL vmlinux 0x95ef1ccc dmi_memdev_size +EXPORT_SYMBOL_GPL vmlinux 0x95f02e2a tty_buffer_lock_exclusive +EXPORT_SYMBOL_GPL vmlinux 0x95f7c6db __pm_runtime_disable +EXPORT_SYMBOL_GPL vmlinux 0x95f981c2 rtc_set_alarm +EXPORT_SYMBOL_GPL vmlinux 0x95ff742f ip6_push_pending_frames +EXPORT_SYMBOL_GPL vmlinux 0x960e27d9 regulator_sync_voltage +EXPORT_SYMBOL_GPL vmlinux 0x961286e0 ring_buffer_read_events_cpu +EXPORT_SYMBOL_GPL vmlinux 0x961fd1e6 mtd_point +EXPORT_SYMBOL_GPL vmlinux 0x9631f124 usb_disable_autosuspend +EXPORT_SYMBOL_GPL vmlinux 0x964b72b7 edac_device_handle_ce_count +EXPORT_SYMBOL_GPL vmlinux 0x96554810 register_keyboard_notifier +EXPORT_SYMBOL_GPL vmlinux 0x9661a1c6 hwspin_lock_register +EXPORT_SYMBOL_GPL vmlinux 0x9664d84a scsi_host_busy_iter +EXPORT_SYMBOL_GPL vmlinux 0x966f5581 security_kernel_post_read_file +EXPORT_SYMBOL_GPL vmlinux 0x9671a450 elv_rqhash_del +EXPORT_SYMBOL_GPL vmlinux 0x968f9a23 efivar_entry_iter_begin +EXPORT_SYMBOL_GPL vmlinux 0x969b48bd event_triggers_call +EXPORT_SYMBOL_GPL vmlinux 0x96a151a6 gpiod_get_array_value +EXPORT_SYMBOL_GPL vmlinux 0x96a2e07b sysfs_remove_bin_file +EXPORT_SYMBOL_GPL vmlinux 0x96b5453a eventfd_ctx_fileget +EXPORT_SYMBOL_GPL vmlinux 0x96bce2f2 kmsg_dump_get_buffer +EXPORT_SYMBOL_GPL vmlinux 0x96be2fcd device_add_groups +EXPORT_SYMBOL_GPL vmlinux 0x96c2f2e7 dw_pcie_setup_rc +EXPORT_SYMBOL_GPL vmlinux 0x96ca63f5 __rht_bucket_nested +EXPORT_SYMBOL_GPL vmlinux 0x96da7592 device_remove_file_self +EXPORT_SYMBOL_GPL vmlinux 0x96ee4316 dapm_clock_event +EXPORT_SYMBOL_GPL vmlinux 0x96ffac01 regulator_unregister_supply_alias +EXPORT_SYMBOL_GPL vmlinux 0x9714e0bb ktime_get_raw +EXPORT_SYMBOL_GPL vmlinux 0x9714f426 dev_pm_opp_get_opp_table +EXPORT_SYMBOL_GPL vmlinux 0x971d61f0 hrtimer_try_to_cancel +EXPORT_SYMBOL_GPL vmlinux 0x974c04de nanddev_mtd_max_bad_blocks +EXPORT_SYMBOL_GPL vmlinux 0x974d4d87 crypto_ahash_setkey +EXPORT_SYMBOL_GPL vmlinux 0x974f5217 fib_rules_unregister +EXPORT_SYMBOL_GPL vmlinux 0x975519c1 asymmetric_key_id_same +EXPORT_SYMBOL_GPL vmlinux 0x977af35d shmem_truncate_range +EXPORT_SYMBOL_GPL vmlinux 0x97905771 blk_register_queue +EXPORT_SYMBOL_GPL vmlinux 0x979d4027 imx_pcm_dma_init +EXPORT_SYMBOL_GPL vmlinux 0x97a74b63 snd_soc_add_component +EXPORT_SYMBOL_GPL vmlinux 0x97b71dc9 btree_insert +EXPORT_SYMBOL_GPL vmlinux 0x97dbc307 xfrm_dev_resume +EXPORT_SYMBOL_GPL vmlinux 0x97de2b83 debug_locks_silent +EXPORT_SYMBOL_GPL vmlinux 0x97e7f902 trace_vbprintk +EXPORT_SYMBOL_GPL vmlinux 0x97ed4ade perf_trace_run_bpf_submit +EXPORT_SYMBOL_GPL vmlinux 0x9808e1d5 snd_soc_card_jack_new +EXPORT_SYMBOL_GPL vmlinux 0x981679f9 rtnl_link_unregister +EXPORT_SYMBOL_GPL vmlinux 0x98268a24 skb_gso_validate_mac_len +EXPORT_SYMBOL_GPL vmlinux 0x98275b0e find_mci_by_dev +EXPORT_SYMBOL_GPL vmlinux 0x9833bc0c hvc_kick +EXPORT_SYMBOL_GPL vmlinux 0x983c8aef cpufreq_dbs_governor_exit +EXPORT_SYMBOL_GPL vmlinux 0x98415006 sdio_unregister_driver +EXPORT_SYMBOL_GPL vmlinux 0x98503a63 mpi_alloc +EXPORT_SYMBOL_GPL vmlinux 0x985453e1 lease_unregister_notifier +EXPORT_SYMBOL_GPL vmlinux 0x9871e686 cpufreq_driver_fast_switch +EXPORT_SYMBOL_GPL vmlinux 0x9872345c lwtunnel_state_alloc +EXPORT_SYMBOL_GPL vmlinux 0x987520e2 usb_find_common_endpoints_reverse +EXPORT_SYMBOL_GPL vmlinux 0x9879932b crypto_register_notifier +EXPORT_SYMBOL_GPL vmlinux 0x987def65 snd_soc_component_async_complete +EXPORT_SYMBOL_GPL vmlinux 0x989074ff kmsg_dump_reason_str +EXPORT_SYMBOL_GPL vmlinux 0x9895beed security_path_chmod +EXPORT_SYMBOL_GPL vmlinux 0x989c4e37 devm_platform_ioremap_resource +EXPORT_SYMBOL_GPL vmlinux 0x98ade657 pm_generic_thaw_noirq +EXPORT_SYMBOL_GPL vmlinux 0x98cbe22f gpiod_put +EXPORT_SYMBOL_GPL vmlinux 0x98d0a184 debugfs_create_symlink +EXPORT_SYMBOL_GPL vmlinux 0x98e9327b pci_bus_max_busnr +EXPORT_SYMBOL_GPL vmlinux 0x98ee62b2 ring_buffer_record_disable_cpu +EXPORT_SYMBOL_GPL vmlinux 0x98fa1e20 dm_get_reserved_rq_based_ios +EXPORT_SYMBOL_GPL vmlinux 0x98fc1dc4 clk_hw_register_fractional_divider +EXPORT_SYMBOL_GPL vmlinux 0x98fd2227 irq_domain_add_legacy +EXPORT_SYMBOL_GPL vmlinux 0x991a4ed4 snd_soc_unregister_dai +EXPORT_SYMBOL_GPL vmlinux 0x995ce246 ata_sas_async_probe +EXPORT_SYMBOL_GPL vmlinux 0x995d1071 prof_on +EXPORT_SYMBOL_GPL vmlinux 0x996bd751 set_task_ioprio +EXPORT_SYMBOL_GPL vmlinux 0x99768324 power_supply_put_battery_info +EXPORT_SYMBOL_GPL vmlinux 0x998a8395 list_lru_count_one +EXPORT_SYMBOL_GPL vmlinux 0x9997e7c2 devm_pinctrl_get +EXPORT_SYMBOL_GPL vmlinux 0x99a5fbac pm_clk_destroy +EXPORT_SYMBOL_GPL vmlinux 0x99b7191f dynevent_create +EXPORT_SYMBOL_GPL vmlinux 0x99ba040d fwnode_get_next_available_child_node +EXPORT_SYMBOL_GPL vmlinux 0x99c809c4 kick_process +EXPORT_SYMBOL_GPL vmlinux 0x99d370dc i2c_match_id +EXPORT_SYMBOL_GPL vmlinux 0x99dbdd0d devlink_flash_update_begin_notify +EXPORT_SYMBOL_GPL vmlinux 0x99f1f0ca skb_clone_tx_timestamp +EXPORT_SYMBOL_GPL vmlinux 0x99f2d00a sysfs_emit_at +EXPORT_SYMBOL_GPL vmlinux 0x9a048866 user_preparse +EXPORT_SYMBOL_GPL vmlinux 0x9a11a0fc crypto_attr_alg_name +EXPORT_SYMBOL_GPL vmlinux 0x9a11b316 pci_slots_kset +EXPORT_SYMBOL_GPL vmlinux 0x9a153cd5 mbox_client_txdone +EXPORT_SYMBOL_GPL vmlinux 0x9a2768d5 regmap_exit +EXPORT_SYMBOL_GPL vmlinux 0x9a2b508c fat_truncate_time +EXPORT_SYMBOL_GPL vmlinux 0x9a4055c8 kobject_uevent +EXPORT_SYMBOL_GPL vmlinux 0x9a412e8a devm_thermal_of_cooling_device_register +EXPORT_SYMBOL_GPL vmlinux 0x9a5de38d sdhci_calc_clk +EXPORT_SYMBOL_GPL vmlinux 0x9a66dea6 usb_phy_generic_unregister +EXPORT_SYMBOL_GPL vmlinux 0x9a788778 efivar_entry_size +EXPORT_SYMBOL_GPL vmlinux 0x9a799756 fsnotify_put_group +EXPORT_SYMBOL_GPL vmlinux 0x9a8038fb debugfs_create_dir +EXPORT_SYMBOL_GPL vmlinux 0x9a85cfb7 wm831x_reg_write +EXPORT_SYMBOL_GPL vmlinux 0x9aa19a61 fib_rule_matchall +EXPORT_SYMBOL_GPL vmlinux 0x9ab4f7f6 sched_trace_rq_cpu +EXPORT_SYMBOL_GPL vmlinux 0x9ac11b74 suspend_set_ops +EXPORT_SYMBOL_GPL vmlinux 0x9ac3739d tegra_bpmp_mrq_return +EXPORT_SYMBOL_GPL vmlinux 0x9acafe13 bus_unregister_notifier +EXPORT_SYMBOL_GPL vmlinux 0x9ad56d2d __tracepoint_block_split +EXPORT_SYMBOL_GPL vmlinux 0x9ad7f514 crypto_stats_kpp_generate_public_key +EXPORT_SYMBOL_GPL vmlinux 0x9ae527f4 dm_post_suspending +EXPORT_SYMBOL_GPL vmlinux 0x9ae9c3ae relay_file_operations +EXPORT_SYMBOL_GPL vmlinux 0x9aeacb87 ring_buffer_iter_empty +EXPORT_SYMBOL_GPL vmlinux 0x9b015814 kernfs_notify +EXPORT_SYMBOL_GPL vmlinux 0x9b12cb97 usb_put_phy +EXPORT_SYMBOL_GPL vmlinux 0x9b1d8b70 blkcg_root +EXPORT_SYMBOL_GPL vmlinux 0x9b231af3 pinctrl_add_gpio_ranges +EXPORT_SYMBOL_GPL vmlinux 0x9b555c8c pm_suspend_default_s2idle +EXPORT_SYMBOL_GPL vmlinux 0x9b62f3a4 da903x_unregister_notifier +EXPORT_SYMBOL_GPL vmlinux 0x9b67e78b pci_epf_match_device +EXPORT_SYMBOL_GPL vmlinux 0x9b6ec967 ring_buffer_size +EXPORT_SYMBOL_GPL vmlinux 0x9b74b176 tty_init_termios +EXPORT_SYMBOL_GPL vmlinux 0x9b896724 devlink_param_value_str_fill +EXPORT_SYMBOL_GPL vmlinux 0x9b9071cb get_old_itimerspec32 +EXPORT_SYMBOL_GPL vmlinux 0x9b92d16e pinctrl_gpio_set_config +EXPORT_SYMBOL_GPL vmlinux 0x9babfdc8 fsnotify +EXPORT_SYMBOL_GPL vmlinux 0x9bbd50f9 ata_sff_pause +EXPORT_SYMBOL_GPL vmlinux 0x9bc3146c component_unbind_all +EXPORT_SYMBOL_GPL vmlinux 0x9bd398c9 ata_scsi_port_error_handler +EXPORT_SYMBOL_GPL vmlinux 0x9bdb2448 snd_pcm_stop_xrun +EXPORT_SYMBOL_GPL vmlinux 0x9bdfc4a7 of_reserved_mem_device_init_by_idx +EXPORT_SYMBOL_GPL vmlinux 0x9be398d1 ata_sff_exec_command +EXPORT_SYMBOL_GPL vmlinux 0x9bece81b mpi_cmp_ui +EXPORT_SYMBOL_GPL vmlinux 0x9beed87b usb_hub_clear_tt_buffer +EXPORT_SYMBOL_GPL vmlinux 0x9bfbdfbe l3mdev_fib_table_by_index +EXPORT_SYMBOL_GPL vmlinux 0x9c06c6a7 fuse_dev_release +EXPORT_SYMBOL_GPL vmlinux 0x9c07029d sdio_readsb +EXPORT_SYMBOL_GPL vmlinux 0x9c0feec3 qcom_smem_state_get +EXPORT_SYMBOL_GPL vmlinux 0x9c2cc15b vfs_kern_mount +EXPORT_SYMBOL_GPL vmlinux 0x9c498dd6 dma_request_chan_by_mask +EXPORT_SYMBOL_GPL vmlinux 0x9c5ca9d8 __phy_modify +EXPORT_SYMBOL_GPL vmlinux 0x9c641c2a setfl +EXPORT_SYMBOL_GPL vmlinux 0x9c686f24 pm_clk_init +EXPORT_SYMBOL_GPL vmlinux 0x9c6febfc add_uevent_var +EXPORT_SYMBOL_GPL vmlinux 0x9c7af97a blk_mq_queue_inflight +EXPORT_SYMBOL_GPL vmlinux 0x9c7e5815 ip_route_output_tunnel +EXPORT_SYMBOL_GPL vmlinux 0x9c803020 usb_phy_roothub_power_on +EXPORT_SYMBOL_GPL vmlinux 0x9c8238e7 bio_release_pages +EXPORT_SYMBOL_GPL vmlinux 0x9c9d9291 regulator_enable_regmap +EXPORT_SYMBOL_GPL vmlinux 0x9ca480cc clk_gate_is_enabled +EXPORT_SYMBOL_GPL vmlinux 0x9cc2cba8 mnt_want_write_file +EXPORT_SYMBOL_GPL vmlinux 0x9cc4f70a register_pm_notifier +EXPORT_SYMBOL_GPL vmlinux 0x9cd99220 sec_irq_init +EXPORT_SYMBOL_GPL vmlinux 0x9ce3afa3 crypto_aead_setkey +EXPORT_SYMBOL_GPL vmlinux 0x9cf2e122 relay_reset +EXPORT_SYMBOL_GPL vmlinux 0x9d04bde5 ata_sas_port_stop +EXPORT_SYMBOL_GPL vmlinux 0x9d09e8ae ring_buffer_event_data +EXPORT_SYMBOL_GPL vmlinux 0x9d12c519 udp6_lib_lookup +EXPORT_SYMBOL_GPL vmlinux 0x9d21e783 inode_sb_list_add +EXPORT_SYMBOL_GPL vmlinux 0x9d270466 usb_remove_phy +EXPORT_SYMBOL_GPL vmlinux 0x9d288101 devlink_params_unpublish +EXPORT_SYMBOL_GPL vmlinux 0x9d2bb0af __clocksource_register_scale +EXPORT_SYMBOL_GPL vmlinux 0x9d3983f3 edac_device_del_device +EXPORT_SYMBOL_GPL vmlinux 0x9d57d1fe snd_soc_rtdcom_lookup +EXPORT_SYMBOL_GPL vmlinux 0x9d5baaa8 usb_hcd_end_port_resume +EXPORT_SYMBOL_GPL vmlinux 0x9d5bd161 tcp_rate_check_app_limited +EXPORT_SYMBOL_GPL vmlinux 0x9d6e6b1a ahci_platform_disable_clks +EXPORT_SYMBOL_GPL vmlinux 0x9da60155 usb_lock_device_for_reset +EXPORT_SYMBOL_GPL vmlinux 0x9db52d6a perf_aux_output_skip +EXPORT_SYMBOL_GPL vmlinux 0x9dba64d7 alarm_restart +EXPORT_SYMBOL_GPL vmlinux 0x9dda51dc ata_noop_qc_prep +EXPORT_SYMBOL_GPL vmlinux 0x9de2a969 devm_nvmem_device_get +EXPORT_SYMBOL_GPL vmlinux 0x9df10ab5 usb_ep_dequeue +EXPORT_SYMBOL_GPL vmlinux 0x9dfdf722 gpio_free_array +EXPORT_SYMBOL_GPL vmlinux 0x9dfe7820 devm_nvmem_device_put +EXPORT_SYMBOL_GPL vmlinux 0x9e016686 digsig_verify +EXPORT_SYMBOL_GPL vmlinux 0x9e03de48 dm_get_table_device +EXPORT_SYMBOL_GPL vmlinux 0x9e11cbf0 bpf_offload_dev_match +EXPORT_SYMBOL_GPL vmlinux 0x9e24460a iomap_readpage +EXPORT_SYMBOL_GPL vmlinux 0x9e269b75 mmc_get_ext_csd +EXPORT_SYMBOL_GPL vmlinux 0x9e28dbc2 of_mm_gpiochip_add_data +EXPORT_SYMBOL_GPL vmlinux 0x9e2d25ae snd_ctl_apply_vmaster_slaves +EXPORT_SYMBOL_GPL vmlinux 0x9e37c401 nand_decode_ext_id +EXPORT_SYMBOL_GPL vmlinux 0x9e37cc3d usb_get_descriptor +EXPORT_SYMBOL_GPL vmlinux 0x9e3d77ee screen_pos +EXPORT_SYMBOL_GPL vmlinux 0x9e42472d trace_event_buffer_commit +EXPORT_SYMBOL_GPL vmlinux 0x9e472f5f snmp_fold_field +EXPORT_SYMBOL_GPL vmlinux 0x9e52b50f blk_abort_request +EXPORT_SYMBOL_GPL vmlinux 0x9e5534c2 dev_pm_opp_of_find_icc_paths +EXPORT_SYMBOL_GPL vmlinux 0x9e5cfb2e io_cgrp_subsys +EXPORT_SYMBOL_GPL vmlinux 0x9e65ed2b __kprobe_event_add_fields +EXPORT_SYMBOL_GPL vmlinux 0x9e76a08b iommu_capable +EXPORT_SYMBOL_GPL vmlinux 0x9e7d0640 ftrace_set_notrace +EXPORT_SYMBOL_GPL vmlinux 0x9e82b61c tps6586x_irq_get_virq +EXPORT_SYMBOL_GPL vmlinux 0x9e875831 regulator_map_voltage_linear +EXPORT_SYMBOL_GPL vmlinux 0x9e8a35e0 snd_pcm_stream_unlock_irq +EXPORT_SYMBOL_GPL vmlinux 0x9e8bacdf usb_get_from_anchor +EXPORT_SYMBOL_GPL vmlinux 0x9e8dd867 fb_deferred_io_cleanup +EXPORT_SYMBOL_GPL vmlinux 0x9e9ceda6 i2c_bus_type +EXPORT_SYMBOL_GPL vmlinux 0x9ea807e4 debugfs_create_file_size +EXPORT_SYMBOL_GPL vmlinux 0x9ea882f8 ip_fib_metrics_init +EXPORT_SYMBOL_GPL vmlinux 0x9eac849c devm_regulator_get_optional +EXPORT_SYMBOL_GPL vmlinux 0x9eb1ec0c pci_assign_unassigned_bridge_resources +EXPORT_SYMBOL_GPL vmlinux 0x9eba3cae snd_soc_dai_set_clkdiv +EXPORT_SYMBOL_GPL vmlinux 0x9ec944a8 mtd_unpoint +EXPORT_SYMBOL_GPL vmlinux 0x9ed16fdb crypto_stats_akcipher_encrypt +EXPORT_SYMBOL_GPL vmlinux 0x9ed554b3 unregister_keyboard_notifier +EXPORT_SYMBOL_GPL vmlinux 0x9ee5e40a __ktime_divns +EXPORT_SYMBOL_GPL vmlinux 0x9ef35b26 device_set_of_node_from_dev +EXPORT_SYMBOL_GPL vmlinux 0x9ef83803 xhci_mtk_drop_ep_quirk +EXPORT_SYMBOL_GPL vmlinux 0x9efe645e mtk_pinconf_drive_set_rev1 +EXPORT_SYMBOL_GPL vmlinux 0x9f140889 usb_anchor_resume_wakeups +EXPORT_SYMBOL_GPL vmlinux 0x9f2dbf39 devm_clk_register +EXPORT_SYMBOL_GPL vmlinux 0x9f354dfb wbt_enable_default +EXPORT_SYMBOL_GPL vmlinux 0x9f3faee4 dev_pm_opp_of_remove_table +EXPORT_SYMBOL_GPL vmlinux 0x9f4a51ca pci_remap_cfgspace +EXPORT_SYMBOL_GPL vmlinux 0x9f54d7a8 pci_epf_destroy +EXPORT_SYMBOL_GPL vmlinux 0x9f55e8e6 stmpe_set_bits +EXPORT_SYMBOL_GPL vmlinux 0x9f571acf spi_mem_default_supports_op +EXPORT_SYMBOL_GPL vmlinux 0x9f5a1c19 mtk_pinconf_bias_get +EXPORT_SYMBOL_GPL vmlinux 0x9fce80db fb_notifier_call_chain +EXPORT_SYMBOL_GPL vmlinux 0x9fcec376 crypto_get_default_null_skcipher +EXPORT_SYMBOL_GPL vmlinux 0x9fe4fc85 irq_chip_set_wake_parent +EXPORT_SYMBOL_GPL vmlinux 0x9fe5caac devm_kstrdup_const +EXPORT_SYMBOL_GPL vmlinux 0x9fe899b7 get_cpu_idle_time +EXPORT_SYMBOL_GPL vmlinux 0x9fe939e1 mpi_powm +EXPORT_SYMBOL_GPL vmlinux 0x9fe9c826 dm_accept_partial_bio +EXPORT_SYMBOL_GPL vmlinux 0x9fff1f39 devlink_traps_register +EXPORT_SYMBOL_GPL vmlinux 0xa00b0c16 posix_acl_create +EXPORT_SYMBOL_GPL vmlinux 0xa00b9466 snd_soc_dapm_get_pin_status +EXPORT_SYMBOL_GPL vmlinux 0xa00e4912 create_signature +EXPORT_SYMBOL_GPL vmlinux 0xa01d423a regmap_get_max_register +EXPORT_SYMBOL_GPL vmlinux 0xa0326db6 of_irq_parse_and_map_pci +EXPORT_SYMBOL_GPL vmlinux 0xa0356402 device_wakeup_disable +EXPORT_SYMBOL_GPL vmlinux 0xa03c5690 hwmon_device_register +EXPORT_SYMBOL_GPL vmlinux 0xa04d6c2d dev_pm_opp_find_freq_ceil_by_volt +EXPORT_SYMBOL_GPL vmlinux 0xa04f945a cpus_read_lock +EXPORT_SYMBOL_GPL vmlinux 0xa05d5d25 pm_generic_restore +EXPORT_SYMBOL_GPL vmlinux 0xa0623f97 xfrm_audit_state_replay_overflow +EXPORT_SYMBOL_GPL vmlinux 0xa069fe99 add_to_page_cache_lru +EXPORT_SYMBOL_GPL vmlinux 0xa0743630 fb_deferred_io_open +EXPORT_SYMBOL_GPL vmlinux 0xa09a109f crypto_register_aeads +EXPORT_SYMBOL_GPL vmlinux 0xa0baccc1 fwnode_get_parent +EXPORT_SYMBOL_GPL vmlinux 0xa0eef7a9 ata_sff_port_intr +EXPORT_SYMBOL_GPL vmlinux 0xa1109aa6 switchdev_port_attr_set +EXPORT_SYMBOL_GPL vmlinux 0xa124dab1 spi_controller_resume +EXPORT_SYMBOL_GPL vmlinux 0xa1263254 dev_pm_opp_attach_genpd +EXPORT_SYMBOL_GPL vmlinux 0xa12c9947 virtqueue_add_inbuf +EXPORT_SYMBOL_GPL vmlinux 0xa12f2f21 gpiochip_lock_as_irq +EXPORT_SYMBOL_GPL vmlinux 0xa13e33dd of_clk_hw_register +EXPORT_SYMBOL_GPL vmlinux 0xa1402966 nanddev_bbt_init +EXPORT_SYMBOL_GPL vmlinux 0xa1410a7a usb_gadget_unmap_request +EXPORT_SYMBOL_GPL vmlinux 0xa14dc504 ip6_update_pmtu +EXPORT_SYMBOL_GPL vmlinux 0xa1690e3e snd_soc_dapm_update_dai +EXPORT_SYMBOL_GPL vmlinux 0xa1778c9e serdev_device_set_flow_control +EXPORT_SYMBOL_GPL vmlinux 0xa1870a4d devfreq_event_add_edev +EXPORT_SYMBOL_GPL vmlinux 0xa18c27c7 led_get_default_pattern +EXPORT_SYMBOL_GPL vmlinux 0xa19ec2ee snd_device_get_state +EXPORT_SYMBOL_GPL vmlinux 0xa1a89071 edac_pci_free_ctl_info +EXPORT_SYMBOL_GPL vmlinux 0xa1b7503c is_current_mnt_ns +EXPORT_SYMBOL_GPL vmlinux 0xa1bbb439 unix_inq_len +EXPORT_SYMBOL_GPL vmlinux 0xa1bd2526 dpcm_be_dai_trigger +EXPORT_SYMBOL_GPL vmlinux 0xa1bfaed3 dev_pm_opp_get_voltage +EXPORT_SYMBOL_GPL vmlinux 0xa1c20fad kill_device +EXPORT_SYMBOL_GPL vmlinux 0xa1c5715a of_gen_pool_get +EXPORT_SYMBOL_GPL vmlinux 0xa1ce50b4 mmu_notifier_get_locked +EXPORT_SYMBOL_GPL vmlinux 0xa1d8004a videomode_from_timing +EXPORT_SYMBOL_GPL vmlinux 0xa1f1bd3a arm_check_condition +EXPORT_SYMBOL_GPL vmlinux 0xa1f64cfd device_property_read_u16_array +EXPORT_SYMBOL_GPL vmlinux 0xa1f87d67 sdhci_runtime_suspend_host +EXPORT_SYMBOL_GPL vmlinux 0xa202c114 irq_domain_set_hwirq_and_chip +EXPORT_SYMBOL_GPL vmlinux 0xa20ae1b2 devm_hwspin_lock_unregister +EXPORT_SYMBOL_GPL vmlinux 0xa20d01ba __trace_bprintk +EXPORT_SYMBOL_GPL vmlinux 0xa21e15ec device_create_with_groups +EXPORT_SYMBOL_GPL vmlinux 0xa21ff7bb iptunnel_handle_offloads +EXPORT_SYMBOL_GPL vmlinux 0xa222bf7c gpiochip_disable_irq +EXPORT_SYMBOL_GPL vmlinux 0xa231f0b9 bpf_trace_run6 +EXPORT_SYMBOL_GPL vmlinux 0xa23a4f15 devm_regulator_unregister_notifier +EXPORT_SYMBOL_GPL vmlinux 0xa23b8517 snd_soc_dapm_new_control +EXPORT_SYMBOL_GPL vmlinux 0xa23f684b __tracepoint_io_page_fault +EXPORT_SYMBOL_GPL vmlinux 0xa245f42c __put_net +EXPORT_SYMBOL_GPL vmlinux 0xa252dc4f rt_mutex_lock_interruptible +EXPORT_SYMBOL_GPL vmlinux 0xa255f471 dw_pcie_msi_init +EXPORT_SYMBOL_GPL vmlinux 0xa262eafb sk_msg_free_nocharge +EXPORT_SYMBOL_GPL vmlinux 0xa26d9b4f workqueue_congested +EXPORT_SYMBOL_GPL vmlinux 0xa286a234 snd_pcm_format_name +EXPORT_SYMBOL_GPL vmlinux 0xa29270aa gpiod_set_debounce +EXPORT_SYMBOL_GPL vmlinux 0xa2ac00e9 cpuidle_register +EXPORT_SYMBOL_GPL vmlinux 0xa2bb0553 nand_prog_page_begin_op +EXPORT_SYMBOL_GPL vmlinux 0xa2bd25da tracepoint_probe_register_prio +EXPORT_SYMBOL_GPL vmlinux 0xa2c31b2a proc_douintvec_minmax +EXPORT_SYMBOL_GPL vmlinux 0xa2cb2377 led_trigger_remove +EXPORT_SYMBOL_GPL vmlinux 0xa2ce4d88 enable_kprobe +EXPORT_SYMBOL_GPL vmlinux 0xa2d39f0a ima_file_check +EXPORT_SYMBOL_GPL vmlinux 0xa2d8dae6 power_supply_put +EXPORT_SYMBOL_GPL vmlinux 0xa2e1b3ef trace_printk_init_buffers +EXPORT_SYMBOL_GPL vmlinux 0xa2f812f9 phy_10gbit_fec_features_array +EXPORT_SYMBOL_GPL vmlinux 0xa304e008 pm_generic_poweroff_noirq +EXPORT_SYMBOL_GPL vmlinux 0xa30c2b0f snd_soc_dai_set_sysclk +EXPORT_SYMBOL_GPL vmlinux 0xa31f9679 pci_epc_mem_init +EXPORT_SYMBOL_GPL vmlinux 0xa32073d8 ethnl_cable_test_finished +EXPORT_SYMBOL_GPL vmlinux 0xa3277b93 pinctrl_parse_index_with_args +EXPORT_SYMBOL_GPL vmlinux 0xa32f3d9e decode_rs16 +EXPORT_SYMBOL_GPL vmlinux 0xa3350771 fscrypt_ioctl_add_key +EXPORT_SYMBOL_GPL vmlinux 0xa33744aa edac_stop_work +EXPORT_SYMBOL_GPL vmlinux 0xa33f18c1 mtd_ooblayout_free +EXPORT_SYMBOL_GPL vmlinux 0xa345acdc fscrypt_drop_inode +EXPORT_SYMBOL_GPL vmlinux 0xa346975c idr_remove +EXPORT_SYMBOL_GPL vmlinux 0xa34f01b7 switchdev_handle_port_obj_del +EXPORT_SYMBOL_GPL vmlinux 0xa34f0587 led_classdev_suspend +EXPORT_SYMBOL_GPL vmlinux 0xa369e66f alloc_io_pgtable_ops +EXPORT_SYMBOL_GPL vmlinux 0xa3780ef5 attribute_container_unregister +EXPORT_SYMBOL_GPL vmlinux 0xa379a52e edac_pci_release_generic_ctl +EXPORT_SYMBOL_GPL vmlinux 0xa37dfda8 sysfs_unbreak_active_protection +EXPORT_SYMBOL_GPL vmlinux 0xa380e740 uart_handle_cts_change +EXPORT_SYMBOL_GPL vmlinux 0xa38602cd drain_workqueue +EXPORT_SYMBOL_GPL vmlinux 0xa389a49a profile_event_register +EXPORT_SYMBOL_GPL vmlinux 0xa38a9f71 get_itimerspec64 +EXPORT_SYMBOL_GPL vmlinux 0xa39c4f04 of_clk_hw_simple_get +EXPORT_SYMBOL_GPL vmlinux 0xa3a04602 btree_geo64 +EXPORT_SYMBOL_GPL vmlinux 0xa3a14edc rio_add_net +EXPORT_SYMBOL_GPL vmlinux 0xa3ab37d2 of_pci_dma_range_parser_init +EXPORT_SYMBOL_GPL vmlinux 0xa3b958ce reset_hung_task_detector +EXPORT_SYMBOL_GPL vmlinux 0xa3d3c9e9 crypto_stats_init +EXPORT_SYMBOL_GPL vmlinux 0xa3e09593 pci_disable_pcie_error_reporting +EXPORT_SYMBOL_GPL vmlinux 0xa3e76608 devm_regulator_put +EXPORT_SYMBOL_GPL vmlinux 0xa3ec5555 scsi_check_sense +EXPORT_SYMBOL_GPL vmlinux 0xa3f12f69 __crypto_xor +EXPORT_SYMBOL_GPL vmlinux 0xa3f59cea pci_common_swizzle +EXPORT_SYMBOL_GPL vmlinux 0xa3fee39c scsi_autopm_put_device +EXPORT_SYMBOL_GPL vmlinux 0xa4031b7f sfp_parse_port +EXPORT_SYMBOL_GPL vmlinux 0xa40fed13 spi_mem_driver_register_with_owner +EXPORT_SYMBOL_GPL vmlinux 0xa410a295 devlink_region_destroy +EXPORT_SYMBOL_GPL vmlinux 0xa42bd8af rtc_nvmem_register +EXPORT_SYMBOL_GPL vmlinux 0xa42be8b6 xfrm_audit_state_notfound +EXPORT_SYMBOL_GPL vmlinux 0xa4399ea6 snd_dmaengine_pcm_request_channel +EXPORT_SYMBOL_GPL vmlinux 0xa44a1307 interval_tree_iter_first +EXPORT_SYMBOL_GPL vmlinux 0xa44fbefa __tracepoint_xdp_exception +EXPORT_SYMBOL_GPL vmlinux 0xa4514e91 snd_soc_dapm_put_pin_switch +EXPORT_SYMBOL_GPL vmlinux 0xa4591774 gpiochip_populate_parent_fwspec_fourcell +EXPORT_SYMBOL_GPL vmlinux 0xa45c7b90 stack_trace_print +EXPORT_SYMBOL_GPL vmlinux 0xa45dc275 trace_seq_putmem +EXPORT_SYMBOL_GPL vmlinux 0xa46f754b genphy_c45_read_status +EXPORT_SYMBOL_GPL vmlinux 0xa471982d dm_table_set_type +EXPORT_SYMBOL_GPL vmlinux 0xa47a60d6 usb_gadget_map_request_by_dev +EXPORT_SYMBOL_GPL vmlinux 0xa47be8fe edac_pci_add_device +EXPORT_SYMBOL_GPL vmlinux 0xa47e06af ip4_datagram_release_cb +EXPORT_SYMBOL_GPL vmlinux 0xa48196c8 kdb_poll_idx +EXPORT_SYMBOL_GPL vmlinux 0xa48600c6 fwnode_get_next_parent +EXPORT_SYMBOL_GPL vmlinux 0xa4ab7c1c ring_buffer_overruns +EXPORT_SYMBOL_GPL vmlinux 0xa4ae1e0a mbox_flush +EXPORT_SYMBOL_GPL vmlinux 0xa4b07fe7 ring_buffer_change_overwrite +EXPORT_SYMBOL_GPL vmlinux 0xa4b87845 pcie_flr +EXPORT_SYMBOL_GPL vmlinux 0xa4cc19b3 irq_set_affinity_hint +EXPORT_SYMBOL_GPL vmlinux 0xa4dff1d5 usb_of_has_combined_node +EXPORT_SYMBOL_GPL vmlinux 0xa4f84c7c sysfs_update_group +EXPORT_SYMBOL_GPL vmlinux 0xa4fab2ca inet_twsk_purge +EXPORT_SYMBOL_GPL vmlinux 0xa502b3d4 skb_mpls_update_lse +EXPORT_SYMBOL_GPL vmlinux 0xa518b768 fsverity_file_open +EXPORT_SYMBOL_GPL vmlinux 0xa531471e clk_save_context +EXPORT_SYMBOL_GPL vmlinux 0xa53b7e80 sdhci_pltfm_unregister +EXPORT_SYMBOL_GPL vmlinux 0xa53f0dd7 tnum_strn +EXPORT_SYMBOL_GPL vmlinux 0xa53f161a switchdev_handle_port_attr_set +EXPORT_SYMBOL_GPL vmlinux 0xa5884929 irq_chip_eoi_parent +EXPORT_SYMBOL_GPL vmlinux 0xa598da6c sm501_misc_control +EXPORT_SYMBOL_GPL vmlinux 0xa5b4b48a rhashtable_walk_enter +EXPORT_SYMBOL_GPL vmlinux 0xa5d02f2c __put_task_struct +EXPORT_SYMBOL_GPL vmlinux 0xa5d7c388 pstore_type_to_name +EXPORT_SYMBOL_GPL vmlinux 0xa5e52841 tpm_put_ops +EXPORT_SYMBOL_GPL vmlinux 0xa5e584e2 mvebu_mbus_get_io_win_info +EXPORT_SYMBOL_GPL vmlinux 0xa5efbf4c async_synchronize_full +EXPORT_SYMBOL_GPL vmlinux 0xa62892c6 efivar_sysfs_list +EXPORT_SYMBOL_GPL vmlinux 0xa62a7975 genphy_c45_read_link +EXPORT_SYMBOL_GPL vmlinux 0xa6345d7e find_symbol +EXPORT_SYMBOL_GPL vmlinux 0xa635e407 fwnode_graph_get_remote_port_parent +EXPORT_SYMBOL_GPL vmlinux 0xa6367e9f cpufreq_policy_transition_delay_us +EXPORT_SYMBOL_GPL vmlinux 0xa63ff0de fwnode_get_named_child_node +EXPORT_SYMBOL_GPL vmlinux 0xa6419d09 spi_sync_locked +EXPORT_SYMBOL_GPL vmlinux 0xa653165e pci_enable_pcie_error_reporting +EXPORT_SYMBOL_GPL vmlinux 0xa6533f3d blkdev_write_iter +EXPORT_SYMBOL_GPL vmlinux 0xa65af6e7 phy_resolve_aneg_pause +EXPORT_SYMBOL_GPL vmlinux 0xa65fb3fc usb_gadget_frame_number +EXPORT_SYMBOL_GPL vmlinux 0xa662a42b pinctrl_remove_gpio_range +EXPORT_SYMBOL_GPL vmlinux 0xa6709d14 genphy_c45_read_pma +EXPORT_SYMBOL_GPL vmlinux 0xa670d1e7 devm_platform_ioremap_resource_byname +EXPORT_SYMBOL_GPL vmlinux 0xa6747043 pm_runtime_set_autosuspend_delay +EXPORT_SYMBOL_GPL vmlinux 0xa6883cd1 xfrm_audit_state_icvfail +EXPORT_SYMBOL_GPL vmlinux 0xa68921aa ata_cable_80wire +EXPORT_SYMBOL_GPL vmlinux 0xa68cdc13 proc_create_net_single_write +EXPORT_SYMBOL_GPL vmlinux 0xa6a379e0 do_unbind_con_driver +EXPORT_SYMBOL_GPL vmlinux 0xa6a50619 devlink_reload_enable +EXPORT_SYMBOL_GPL vmlinux 0xa6a976c5 nanddev_init +EXPORT_SYMBOL_GPL vmlinux 0xa6b21ef2 dpm_suspend_end +EXPORT_SYMBOL_GPL vmlinux 0xa6b49539 akcipher_register_instance +EXPORT_SYMBOL_GPL vmlinux 0xa6e1a69d kick_all_cpus_sync +EXPORT_SYMBOL_GPL vmlinux 0xa6f2003b skb_segment_list +EXPORT_SYMBOL_GPL vmlinux 0xa6f941f9 snd_soc_limit_volume +EXPORT_SYMBOL_GPL vmlinux 0xa7049d95 icc_node_create +EXPORT_SYMBOL_GPL vmlinux 0xa709c835 fib6_info_destroy_rcu +EXPORT_SYMBOL_GPL vmlinux 0xa724331f phy_led_triggers_register +EXPORT_SYMBOL_GPL vmlinux 0xa725b74e kobject_init_and_add +EXPORT_SYMBOL_GPL vmlinux 0xa73b2f68 lochnagar_update_config +EXPORT_SYMBOL_GPL vmlinux 0xa7530348 mtd_write_oob +EXPORT_SYMBOL_GPL vmlinux 0xa7560577 crypto_dequeue_request +EXPORT_SYMBOL_GPL vmlinux 0xa76eea95 ata_timing_compute +EXPORT_SYMBOL_GPL vmlinux 0xa7735583 snd_soc_dapm_info_pin_switch +EXPORT_SYMBOL_GPL vmlinux 0xa777e970 xfrm_audit_policy_delete +EXPORT_SYMBOL_GPL vmlinux 0xa77b9098 ata_sff_wait_after_reset +EXPORT_SYMBOL_GPL vmlinux 0xa7802e2e btree_grim_visitor +EXPORT_SYMBOL_GPL vmlinux 0xa7a0d6bf walk_iomem_res_desc +EXPORT_SYMBOL_GPL vmlinux 0xa7a6b8af __blk_req_zone_write_unlock +EXPORT_SYMBOL_GPL vmlinux 0xa7aaafde klist_iter_exit +EXPORT_SYMBOL_GPL vmlinux 0xa7aec036 register_user_hw_breakpoint +EXPORT_SYMBOL_GPL vmlinux 0xa7b09f71 pinctrl_utils_add_config +EXPORT_SYMBOL_GPL vmlinux 0xa7b8e716 pci_epc_set_bar +EXPORT_SYMBOL_GPL vmlinux 0xa7bbf713 mtk_pinconf_bias_disable_get +EXPORT_SYMBOL_GPL vmlinux 0xa7c45329 irq_domain_translate_twocell +EXPORT_SYMBOL_GPL vmlinux 0xa7d1cbd7 rhltable_init +EXPORT_SYMBOL_GPL vmlinux 0xa7dd0c66 dev_pm_opp_remove +EXPORT_SYMBOL_GPL vmlinux 0xa7e1c3bf tracing_snapshot_cond +EXPORT_SYMBOL_GPL vmlinux 0xa7ed4bf4 i2c_new_scanned_device +EXPORT_SYMBOL_GPL vmlinux 0xa7ff9500 ahci_start_fis_rx +EXPORT_SYMBOL_GPL vmlinux 0xa81a65a4 snd_soc_jack_report +EXPORT_SYMBOL_GPL vmlinux 0xa82d014c of_regulator_match +EXPORT_SYMBOL_GPL vmlinux 0xa8414f7d pinctrl_unregister +EXPORT_SYMBOL_GPL vmlinux 0xa848820b genpd_dev_pm_attach +EXPORT_SYMBOL_GPL vmlinux 0xa851973a raw_notifier_call_chain +EXPORT_SYMBOL_GPL vmlinux 0xa854e926 regulator_get +EXPORT_SYMBOL_GPL vmlinux 0xa8590986 debugfs_create_file_unsafe +EXPORT_SYMBOL_GPL vmlinux 0xa8691316 mtk_pinconf_adv_drive_set +EXPORT_SYMBOL_GPL vmlinux 0xa87c6b35 mtk_build_eint +EXPORT_SYMBOL_GPL vmlinux 0xa8953448 unregister_ftrace_function +EXPORT_SYMBOL_GPL vmlinux 0xa8aa94cf perf_event_read_value +EXPORT_SYMBOL_GPL vmlinux 0xa8bc1596 led_colors +EXPORT_SYMBOL_GPL vmlinux 0xa8c14b67 loop_backing_file +EXPORT_SYMBOL_GPL vmlinux 0xa8d07b31 rio_dev_put +EXPORT_SYMBOL_GPL vmlinux 0xa8da5f93 gpiochip_relres_irq +EXPORT_SYMBOL_GPL vmlinux 0xa90bb48d ahci_platform_suspend +EXPORT_SYMBOL_GPL vmlinux 0xa910d722 devres_find +EXPORT_SYMBOL_GPL vmlinux 0xa9157dbe kernfs_find_and_get_ns +EXPORT_SYMBOL_GPL vmlinux 0xa91598b5 perf_get_aux +EXPORT_SYMBOL_GPL vmlinux 0xa920dc0c noop_direct_IO +EXPORT_SYMBOL_GPL vmlinux 0xa9242b8b nanddev_bbt_update +EXPORT_SYMBOL_GPL vmlinux 0xa926c695 regulator_get_hardware_vsel_register +EXPORT_SYMBOL_GPL vmlinux 0xa92b7803 power_supply_notifier +EXPORT_SYMBOL_GPL vmlinux 0xa9320d27 ktime_get_seconds +EXPORT_SYMBOL_GPL vmlinux 0xa93224b5 stmpe_enable +EXPORT_SYMBOL_GPL vmlinux 0xa9490706 pci_epc_stop +EXPORT_SYMBOL_GPL vmlinux 0xa94f476f open_related_ns +EXPORT_SYMBOL_GPL vmlinux 0xa966398a cpufreq_frequency_table_get_index +EXPORT_SYMBOL_GPL vmlinux 0xa969a800 mmu_interval_notifier_remove +EXPORT_SYMBOL_GPL vmlinux 0xa9708765 bpf_event_output +EXPORT_SYMBOL_GPL vmlinux 0xa974cc33 driver_for_each_device +EXPORT_SYMBOL_GPL vmlinux 0xa9841924 tcp_set_keepalive +EXPORT_SYMBOL_GPL vmlinux 0xa986882a pinctrl_register +EXPORT_SYMBOL_GPL vmlinux 0xa988b2ec platform_msi_domain_free_irqs +EXPORT_SYMBOL_GPL vmlinux 0xa98d88b3 pci_store_saved_state +EXPORT_SYMBOL_GPL vmlinux 0xa9951a52 clk_regmap_mux_ops +EXPORT_SYMBOL_GPL vmlinux 0xa99ef899 devlink_fmsg_bool_pair_put +EXPORT_SYMBOL_GPL vmlinux 0xa9a998c7 spi_delay_exec +EXPORT_SYMBOL_GPL vmlinux 0xa9c2a588 usb_remove_hcd +EXPORT_SYMBOL_GPL vmlinux 0xa9d95113 crypto_alloc_kpp +EXPORT_SYMBOL_GPL vmlinux 0xa9df487f blk_mq_bio_list_merge +EXPORT_SYMBOL_GPL vmlinux 0xa9e05660 io_cgrp_subsys_on_dfl_key +EXPORT_SYMBOL_GPL vmlinux 0xa9e12cb0 led_set_brightness +EXPORT_SYMBOL_GPL vmlinux 0xa9e18049 task_handoff_unregister +EXPORT_SYMBOL_GPL vmlinux 0xa9e30764 snd_soc_tplg_widget_remove_all +EXPORT_SYMBOL_GPL vmlinux 0xa9efb775 security_file_ioctl +EXPORT_SYMBOL_GPL vmlinux 0xaa0360c8 irq_create_direct_mapping +EXPORT_SYMBOL_GPL vmlinux 0xaa073280 tty_ldisc_ref +EXPORT_SYMBOL_GPL vmlinux 0xaa20838b ata_dev_pair +EXPORT_SYMBOL_GPL vmlinux 0xaa230f88 perf_unregister_guest_info_callbacks +EXPORT_SYMBOL_GPL vmlinux 0xaa2a72bf __iowrite64_copy +EXPORT_SYMBOL_GPL vmlinux 0xaa2c00e3 pci_get_dsn +EXPORT_SYMBOL_GPL vmlinux 0xaa44acff omap_tll_disable +EXPORT_SYMBOL_GPL vmlinux 0xaa657fe9 ahci_platform_enable_phys +EXPORT_SYMBOL_GPL vmlinux 0xaa74dedc pci_d3cold_enable +EXPORT_SYMBOL_GPL vmlinux 0xaa88ba94 seq_buf_printf +EXPORT_SYMBOL_GPL vmlinux 0xaaa918c9 ftrace_dump +EXPORT_SYMBOL_GPL vmlinux 0xaaaacddf regulator_count_voltages +EXPORT_SYMBOL_GPL vmlinux 0xaaaaf33e blk_lld_busy +EXPORT_SYMBOL_GPL vmlinux 0xaaab22db pwm_apply_state +EXPORT_SYMBOL_GPL vmlinux 0xaad9a67a input_ff_flush +EXPORT_SYMBOL_GPL vmlinux 0xaae339c1 clk_hw_get_name +EXPORT_SYMBOL_GPL vmlinux 0xaae48b2c switchdev_port_obj_del +EXPORT_SYMBOL_GPL vmlinux 0xaae74bac gpiod_count +EXPORT_SYMBOL_GPL vmlinux 0xaaecf75d perf_trace_buf_alloc +EXPORT_SYMBOL_GPL vmlinux 0xaafaf79f pm_genpd_opp_to_performance_state +EXPORT_SYMBOL_GPL vmlinux 0xab06e6e2 cpts_register +EXPORT_SYMBOL_GPL vmlinux 0xab17930b sysfs_create_group +EXPORT_SYMBOL_GPL vmlinux 0xab28af7f nf_hook_entries_delete_raw +EXPORT_SYMBOL_GPL vmlinux 0xab2b21bf kthread_cancel_work_sync +EXPORT_SYMBOL_GPL vmlinux 0xab32cffc disk_map_sector_rcu +EXPORT_SYMBOL_GPL vmlinux 0xab378068 wm8350_set_bits +EXPORT_SYMBOL_GPL vmlinux 0xab378bef snd_soc_dai_compr_shutdown +EXPORT_SYMBOL_GPL vmlinux 0xab49ee9d dma_request_slave_channel +EXPORT_SYMBOL_GPL vmlinux 0xab4ba724 of_css +EXPORT_SYMBOL_GPL vmlinux 0xab4c9dac __tracepoint_rpm_resume +EXPORT_SYMBOL_GPL vmlinux 0xab4f4b32 bprintf +EXPORT_SYMBOL_GPL vmlinux 0xab8bc1a2 snd_pcm_rate_mask_intersect +EXPORT_SYMBOL_GPL vmlinux 0xab9211c8 of_irq_parse_raw +EXPORT_SYMBOL_GPL vmlinux 0xab941ef3 crypto_alloc_aead +EXPORT_SYMBOL_GPL vmlinux 0xab9aefd5 mtd_blktrans_cease_background +EXPORT_SYMBOL_GPL vmlinux 0xab9bd884 perf_register_guest_info_callbacks +EXPORT_SYMBOL_GPL vmlinux 0xab9cc962 pci_user_read_config_word +EXPORT_SYMBOL_GPL vmlinux 0xabbe74f8 usb_alloc_urb +EXPORT_SYMBOL_GPL vmlinux 0xabc640f3 list_lru_isolate +EXPORT_SYMBOL_GPL vmlinux 0xabcda29e leds_list_lock +EXPORT_SYMBOL_GPL vmlinux 0xabcfa03b __tracepoint_block_rq_remap +EXPORT_SYMBOL_GPL vmlinux 0xabe0a961 ata_bmdma_qc_prep +EXPORT_SYMBOL_GPL vmlinux 0xabe8512e regmap_field_free +EXPORT_SYMBOL_GPL vmlinux 0xabf24f18 pci_epc_get +EXPORT_SYMBOL_GPL vmlinux 0xabf6602b usb_sg_wait +EXPORT_SYMBOL_GPL vmlinux 0xabf86863 sysfs_file_change_owner +EXPORT_SYMBOL_GPL vmlinux 0xabffe13e scsi_free_sgtables +EXPORT_SYMBOL_GPL vmlinux 0xac04b43c mbox_controller_register +EXPORT_SYMBOL_GPL vmlinux 0xac070136 device_link_del +EXPORT_SYMBOL_GPL vmlinux 0xac122495 sdio_disable_func +EXPORT_SYMBOL_GPL vmlinux 0xac1f4d54 crypto_stats_kpp_set_secret +EXPORT_SYMBOL_GPL vmlinux 0xac257b4e edac_device_add_device +EXPORT_SYMBOL_GPL vmlinux 0xac59420a debugfs_print_regs32 +EXPORT_SYMBOL_GPL vmlinux 0xac84da09 lwtunnel_encap_del_ops +EXPORT_SYMBOL_GPL vmlinux 0xac8c0d79 phy_set_mode_ext +EXPORT_SYMBOL_GPL vmlinux 0xac8e325e fwnode_graph_get_endpoint_by_id +EXPORT_SYMBOL_GPL vmlinux 0xac9084dd ip6_pol_route +EXPORT_SYMBOL_GPL vmlinux 0xaca81d2e devm_snd_dmaengine_pcm_register +EXPORT_SYMBOL_GPL vmlinux 0xacb4d88c clk_rate_exclusive_put +EXPORT_SYMBOL_GPL vmlinux 0xacbe4d46 subsys_interface_register +EXPORT_SYMBOL_GPL vmlinux 0xacccd340 blk_poll +EXPORT_SYMBOL_GPL vmlinux 0xacf357c9 ping_get_port +EXPORT_SYMBOL_GPL vmlinux 0xacf74e76 scsi_dh_activate +EXPORT_SYMBOL_GPL vmlinux 0xad023426 regulator_unregister_notifier +EXPORT_SYMBOL_GPL vmlinux 0xad0d4cbc icc_node_add +EXPORT_SYMBOL_GPL vmlinux 0xad14ff44 ata_pci_device_suspend +EXPORT_SYMBOL_GPL vmlinux 0xad16e6dd dm_set_target_max_io_len +EXPORT_SYMBOL_GPL vmlinux 0xad244d29 iommu_detach_group +EXPORT_SYMBOL_GPL vmlinux 0xad4e6259 remove_cpu +EXPORT_SYMBOL_GPL vmlinux 0xad5737fc efivar_init +EXPORT_SYMBOL_GPL vmlinux 0xad61c581 fuse_direct_io +EXPORT_SYMBOL_GPL vmlinux 0xad645234 register_switchdev_notifier +EXPORT_SYMBOL_GPL vmlinux 0xad67a282 __fput_sync +EXPORT_SYMBOL_GPL vmlinux 0xad6ecfce nand_status_op +EXPORT_SYMBOL_GPL vmlinux 0xad711e34 devm_extcon_dev_register +EXPORT_SYMBOL_GPL vmlinux 0xad7c07cb snd_soc_dapm_sync +EXPORT_SYMBOL_GPL vmlinux 0xad8e6cf0 devfreq_event_disable_edev +EXPORT_SYMBOL_GPL vmlinux 0xada38766 dst_cache_destroy +EXPORT_SYMBOL_GPL vmlinux 0xadaa1de9 spi_controller_suspend +EXPORT_SYMBOL_GPL vmlinux 0xadad88f9 __inet_inherit_port +EXPORT_SYMBOL_GPL vmlinux 0xadcf91e0 crypto_unregister_skcipher +EXPORT_SYMBOL_GPL vmlinux 0xaddab6a9 perf_event_update_userpage +EXPORT_SYMBOL_GPL vmlinux 0xade141dc tc3589x_reg_read +EXPORT_SYMBOL_GPL vmlinux 0xade1de04 virtio_config_changed +EXPORT_SYMBOL_GPL vmlinux 0xade3e56c musb_writew +EXPORT_SYMBOL_GPL vmlinux 0xade56b92 skb_splice_bits +EXPORT_SYMBOL_GPL vmlinux 0xadf9699b pci_write_msi_msg +EXPORT_SYMBOL_GPL vmlinux 0xae03eb7d devm_regmap_field_alloc +EXPORT_SYMBOL_GPL vmlinux 0xae0b2473 tty_port_register_device +EXPORT_SYMBOL_GPL vmlinux 0xae0da3b3 fuse_dev_alloc +EXPORT_SYMBOL_GPL vmlinux 0xae2d16b0 dw_pcie_ep_init +EXPORT_SYMBOL_GPL vmlinux 0xae2d4d20 __ftrace_vprintk +EXPORT_SYMBOL_GPL vmlinux 0xae39f80e dst_cache_init +EXPORT_SYMBOL_GPL vmlinux 0xae411456 ata_sff_drain_fifo +EXPORT_SYMBOL_GPL vmlinux 0xae492919 tcp_set_state +EXPORT_SYMBOL_GPL vmlinux 0xae63ee8e usb_of_get_interface_node +EXPORT_SYMBOL_GPL vmlinux 0xae69b1c1 usermodehelper_read_unlock +EXPORT_SYMBOL_GPL vmlinux 0xae78abb0 device_initialize +EXPORT_SYMBOL_GPL vmlinux 0xae7c231d mpi_cmp +EXPORT_SYMBOL_GPL vmlinux 0xae83f199 extcon_set_state +EXPORT_SYMBOL_GPL vmlinux 0xaea2c00c mddev_congested +EXPORT_SYMBOL_GPL vmlinux 0xaeb6f0be __cpuhp_state_add_instance +EXPORT_SYMBOL_GPL vmlinux 0xaecf38bf __of_reset_control_get +EXPORT_SYMBOL_GPL vmlinux 0xaef546bc thermal_add_hwmon_sysfs +EXPORT_SYMBOL_GPL vmlinux 0xaef6a80d usb_phy_set_charger_current +EXPORT_SYMBOL_GPL vmlinux 0xaf063047 sdhci_execute_tuning +EXPORT_SYMBOL_GPL vmlinux 0xaf1741a3 napi_hash_del +EXPORT_SYMBOL_GPL vmlinux 0xaf318d7d register_pernet_subsys +EXPORT_SYMBOL_GPL vmlinux 0xaf348da7 cpu_pm_exit +EXPORT_SYMBOL_GPL vmlinux 0xaf3774e6 bpf_trace_run11 +EXPORT_SYMBOL_GPL vmlinux 0xaf4014ff usb_amd_quirk_pll_check +EXPORT_SYMBOL_GPL vmlinux 0xaf4a2d60 snd_soc_jack_add_gpios +EXPORT_SYMBOL_GPL vmlinux 0xaf526d9e pm_clk_remove +EXPORT_SYMBOL_GPL vmlinux 0xaf5271e7 cleanup_srcu_struct +EXPORT_SYMBOL_GPL vmlinux 0xaf66e4b7 snd_soc_jack_get_type +EXPORT_SYMBOL_GPL vmlinux 0xaf6dcf98 devm_i2c_new_dummy_device +EXPORT_SYMBOL_GPL vmlinux 0xaf79ded8 device_add +EXPORT_SYMBOL_GPL vmlinux 0xaf8a501d blk_queue_max_zone_append_sectors +EXPORT_SYMBOL_GPL vmlinux 0xaf9ec1be pm_generic_thaw_early +EXPORT_SYMBOL_GPL vmlinux 0xafc6d14a wakeup_source_add +EXPORT_SYMBOL_GPL vmlinux 0xafd7699f devlink_param_driverinit_value_get +EXPORT_SYMBOL_GPL vmlinux 0xafddd545 ata_id_c_string +EXPORT_SYMBOL_GPL vmlinux 0xafdfe2f5 device_create +EXPORT_SYMBOL_GPL vmlinux 0xaff1f419 usb_autopm_put_interface_async +EXPORT_SYMBOL_GPL vmlinux 0xaff35932 virtio_device_freeze +EXPORT_SYMBOL_GPL vmlinux 0xb00c48fb uhci_check_and_reset_hc +EXPORT_SYMBOL_GPL vmlinux 0xb011d7d1 ahci_platform_disable_regulators +EXPORT_SYMBOL_GPL vmlinux 0xb0127120 pm_generic_freeze_noirq +EXPORT_SYMBOL_GPL vmlinux 0xb01dbac3 rtnl_delete_link +EXPORT_SYMBOL_GPL vmlinux 0xb0232477 klist_prev +EXPORT_SYMBOL_GPL vmlinux 0xb032bd22 tty_port_unregister_device +EXPORT_SYMBOL_GPL vmlinux 0xb04bf20e serial8250_em485_destroy +EXPORT_SYMBOL_GPL vmlinux 0xb04d1f7b perf_event_cgrp_subsys_enabled_key +EXPORT_SYMBOL_GPL vmlinux 0xb055a28b device_rename +EXPORT_SYMBOL_GPL vmlinux 0xb05631af spi_finalize_current_message +EXPORT_SYMBOL_GPL vmlinux 0xb065dbc1 pwm_set_chip_data +EXPORT_SYMBOL_GPL vmlinux 0xb0747ed2 rcu_cpu_stall_suppress +EXPORT_SYMBOL_GPL vmlinux 0xb077e70a clk_unprepare +EXPORT_SYMBOL_GPL vmlinux 0xb07d94b3 gpiod_direction_output +EXPORT_SYMBOL_GPL vmlinux 0xb07e9341 debugfs_create_x64 +EXPORT_SYMBOL_GPL vmlinux 0xb085706f ata_std_qc_defer +EXPORT_SYMBOL_GPL vmlinux 0xb096624b iommu_page_response +EXPORT_SYMBOL_GPL vmlinux 0xb0ad570b ata_bmdma_port_start +EXPORT_SYMBOL_GPL vmlinux 0xb0ae519c inet_twsk_put +EXPORT_SYMBOL_GPL vmlinux 0xb0b10e2d mtd_pairing_info_to_wunit +EXPORT_SYMBOL_GPL vmlinux 0xb0b2542e gpiod_set_value +EXPORT_SYMBOL_GPL vmlinux 0xb0b85f47 ring_buffer_iter_reset +EXPORT_SYMBOL_GPL vmlinux 0xb0ce2734 device_show_int +EXPORT_SYMBOL_GPL vmlinux 0xb0da373c nvmem_cell_read_u16 +EXPORT_SYMBOL_GPL vmlinux 0xb0dafeb4 dw_pcie_find_capability +EXPORT_SYMBOL_GPL vmlinux 0xb0dc237f musb_set_peripheral +EXPORT_SYMBOL_GPL vmlinux 0xb0de6d17 usb_gadget_map_request +EXPORT_SYMBOL_GPL vmlinux 0xb0ef6255 snd_soc_dapm_free +EXPORT_SYMBOL_GPL vmlinux 0xb0fbb722 clk_fractional_divider_ops +EXPORT_SYMBOL_GPL vmlinux 0xb10d964d devlink_fmsg_pair_nest_end +EXPORT_SYMBOL_GPL vmlinux 0xb11625b9 cpu_cgrp_subsys_on_dfl_key +EXPORT_SYMBOL_GPL vmlinux 0xb11b9113 pci_ioremap_bar +EXPORT_SYMBOL_GPL vmlinux 0xb11d1eee dw_pcie_write_dbi +EXPORT_SYMBOL_GPL vmlinux 0xb11d9000 tty_dev_name_to_number +EXPORT_SYMBOL_GPL vmlinux 0xb12761a2 ahci_qc_issue +EXPORT_SYMBOL_GPL vmlinux 0xb1296318 regulator_set_load +EXPORT_SYMBOL_GPL vmlinux 0xb1302295 iommu_attach_group +EXPORT_SYMBOL_GPL vmlinux 0xb1391174 ata_pci_sff_init_host +EXPORT_SYMBOL_GPL vmlinux 0xb1425b32 dm_table_add_target_callbacks +EXPORT_SYMBOL_GPL vmlinux 0xb1647fc2 devlink_info_version_running_put +EXPORT_SYMBOL_GPL vmlinux 0xb172ffac efivars_sysfs_init +EXPORT_SYMBOL_GPL vmlinux 0xb1750fb0 omap_iommu_restore_ctx +EXPORT_SYMBOL_GPL vmlinux 0xb18110e0 __tracepoint_arm_event +EXPORT_SYMBOL_GPL vmlinux 0xb18429eb suspend_device_irqs +EXPORT_SYMBOL_GPL vmlinux 0xb1851921 ata_pci_bmdma_init +EXPORT_SYMBOL_GPL vmlinux 0xb1879b69 crypto_stats_ahash_final +EXPORT_SYMBOL_GPL vmlinux 0xb18b3fef bus_get_kset +EXPORT_SYMBOL_GPL vmlinux 0xb1932e00 tc3589x_reg_write +EXPORT_SYMBOL_GPL vmlinux 0xb198a1c8 devm_request_pci_bus_resources +EXPORT_SYMBOL_GPL vmlinux 0xb19c2d75 xfrm_state_mtu +EXPORT_SYMBOL_GPL vmlinux 0xb1bc29d5 blkcg_deactivate_policy +EXPORT_SYMBOL_GPL vmlinux 0xb1bed25d dpm_resume_start +EXPORT_SYMBOL_GPL vmlinux 0xb1bed2fe snd_soc_dpcm_be_can_update +EXPORT_SYMBOL_GPL vmlinux 0xb1dabc1e unregister_ftrace_export +EXPORT_SYMBOL_GPL vmlinux 0xb1e25684 __trace_bputs +EXPORT_SYMBOL_GPL vmlinux 0xb1efb293 crypto_register_aead +EXPORT_SYMBOL_GPL vmlinux 0xb1fa694f inet_csk_route_req +EXPORT_SYMBOL_GPL vmlinux 0xb2104c64 uart_handle_dcd_change +EXPORT_SYMBOL_GPL vmlinux 0xb210b46e __fib_lookup +EXPORT_SYMBOL_GPL vmlinux 0xb21a98dd tps6586x_update +EXPORT_SYMBOL_GPL vmlinux 0xb2210d64 reset_control_deassert +EXPORT_SYMBOL_GPL vmlinux 0xb229c547 of_dma_controller_register +EXPORT_SYMBOL_GPL vmlinux 0xb2405efc secure_tcp_seq +EXPORT_SYMBOL_GPL vmlinux 0xb249dbe4 inet_twsk_hashdance +EXPORT_SYMBOL_GPL vmlinux 0xb2633f47 path_noexec +EXPORT_SYMBOL_GPL vmlinux 0xb26a1add elfcorehdr_addr +EXPORT_SYMBOL_GPL vmlinux 0xb26df5fe usb_reset_configuration +EXPORT_SYMBOL_GPL vmlinux 0xb27d8b52 pci_host_probe +EXPORT_SYMBOL_GPL vmlinux 0xb28014db wm8997_i2c_regmap +EXPORT_SYMBOL_GPL vmlinux 0xb28bd7b9 devm_snd_soc_register_component +EXPORT_SYMBOL_GPL vmlinux 0xb2932615 fuse_file_poll +EXPORT_SYMBOL_GPL vmlinux 0xb2993fcd l3mdev_link_scope_lookup +EXPORT_SYMBOL_GPL vmlinux 0xb2abf354 dev_pm_domain_attach_by_name +EXPORT_SYMBOL_GPL vmlinux 0xb2b6fee6 rio_mport_class +EXPORT_SYMBOL_GPL vmlinux 0xb2c1732e rcu_gp_set_torture_wait +EXPORT_SYMBOL_GPL vmlinux 0xb2dcae4b get_governor_parent_kobj +EXPORT_SYMBOL_GPL vmlinux 0xb2de4cf2 clk_gate_ops +EXPORT_SYMBOL_GPL vmlinux 0xb2df2bd7 usb_phy_gen_create_phy +EXPORT_SYMBOL_GPL vmlinux 0xb2e764e8 suspend_valid_only_mem +EXPORT_SYMBOL_GPL vmlinux 0xb2f383a0 power_supply_get_by_phandle +EXPORT_SYMBOL_GPL vmlinux 0xb2fadc38 clk_regmap_gate_ro_ops +EXPORT_SYMBOL_GPL vmlinux 0xb3055959 fib_table_lookup +EXPORT_SYMBOL_GPL vmlinux 0xb307c909 devlink_fmsg_u64_pair_put +EXPORT_SYMBOL_GPL vmlinux 0xb30bc955 pinctrl_utils_add_map_configs +EXPORT_SYMBOL_GPL vmlinux 0xb30e9972 sock_diag_register_inet_compat +EXPORT_SYMBOL_GPL vmlinux 0xb315aaf5 br_ip6_fragment +EXPORT_SYMBOL_GPL vmlinux 0xb31a8580 ata_link_next +EXPORT_SYMBOL_GPL vmlinux 0xb31c5ec4 ata_bmdma_error_handler +EXPORT_SYMBOL_GPL vmlinux 0xb32533c5 gpiochip_add_pingroup_range +EXPORT_SYMBOL_GPL vmlinux 0xb3397df5 dst_cache_set_ip4 +EXPORT_SYMBOL_GPL vmlinux 0xb363e44f sg_scsi_ioctl +EXPORT_SYMBOL_GPL vmlinux 0xb36582bc devfreq_event_get_edev_by_phandle +EXPORT_SYMBOL_GPL vmlinux 0xb365f716 regulator_set_current_limit +EXPORT_SYMBOL_GPL vmlinux 0xb371ee67 mbox_chan_txdone +EXPORT_SYMBOL_GPL vmlinux 0xb378559e freq_qos_add_request +EXPORT_SYMBOL_GPL vmlinux 0xb382d7ef snd_soc_of_parse_card_name +EXPORT_SYMBOL_GPL vmlinux 0xb38469e9 synth_event_trace_array +EXPORT_SYMBOL_GPL vmlinux 0xb38d24ff usb_register_dev +EXPORT_SYMBOL_GPL vmlinux 0xb39a0256 to_software_node +EXPORT_SYMBOL_GPL vmlinux 0xb39c68df devm_devfreq_event_add_edev +EXPORT_SYMBOL_GPL vmlinux 0xb39c7cf9 trace_seq_printf +EXPORT_SYMBOL_GPL vmlinux 0xb3ab2237 __rtc_register_device +EXPORT_SYMBOL_GPL vmlinux 0xb3ae618f regmap_get_val_endian +EXPORT_SYMBOL_GPL vmlinux 0xb3b08a50 irq_chip_ack_parent +EXPORT_SYMBOL_GPL vmlinux 0xb3cf9a82 sdhci_end_tuning +EXPORT_SYMBOL_GPL vmlinux 0xb3d6a998 pci_enable_pasid +EXPORT_SYMBOL_GPL vmlinux 0xb3eb2f9d rio_lock_device +EXPORT_SYMBOL_GPL vmlinux 0xb3f7cdde pinconf_generic_parse_dt_config +EXPORT_SYMBOL_GPL vmlinux 0xb401b8be __pci_epf_register_driver +EXPORT_SYMBOL_GPL vmlinux 0xb407951c devlink_params_publish +EXPORT_SYMBOL_GPL vmlinux 0xb40971e7 devm_fwnode_pwm_get +EXPORT_SYMBOL_GPL vmlinux 0xb40a3482 icc_put +EXPORT_SYMBOL_GPL vmlinux 0xb40c6376 cpuset_cgrp_subsys_on_dfl_key +EXPORT_SYMBOL_GPL vmlinux 0xb4147ce0 pm_stay_awake +EXPORT_SYMBOL_GPL vmlinux 0xb41806c8 spi_async_locked +EXPORT_SYMBOL_GPL vmlinux 0xb41c5b2d srcu_init_notifier_head +EXPORT_SYMBOL_GPL vmlinux 0xb4235f08 devm_pinctrl_put +EXPORT_SYMBOL_GPL vmlinux 0xb43a3960 imx_pcm_fiq_init +EXPORT_SYMBOL_GPL vmlinux 0xb43f9365 ktime_get +EXPORT_SYMBOL_GPL vmlinux 0xb44e18ea audit_enabled +EXPORT_SYMBOL_GPL vmlinux 0xb462bbd3 usb_string +EXPORT_SYMBOL_GPL vmlinux 0xb474a574 pci_user_read_config_dword +EXPORT_SYMBOL_GPL vmlinux 0xb498aa34 devm_gpiod_get_array +EXPORT_SYMBOL_GPL vmlinux 0xb49de221 __tracepoint_sched_overutilized_tp +EXPORT_SYMBOL_GPL vmlinux 0xb4a5cbf9 crypto_unregister_scomps +EXPORT_SYMBOL_GPL vmlinux 0xb4afef8b snd_card_ref +EXPORT_SYMBOL_GPL vmlinux 0xb4b78a97 pci_device_is_present +EXPORT_SYMBOL_GPL vmlinux 0xb4b97c90 pvclock_gtod_register_notifier +EXPORT_SYMBOL_GPL vmlinux 0xb4c15a44 platform_device_put +EXPORT_SYMBOL_GPL vmlinux 0xb4d50b35 snd_soc_runtime_action +EXPORT_SYMBOL_GPL vmlinux 0xb4dbc96d bpf_trace_run2 +EXPORT_SYMBOL_GPL vmlinux 0xb4e798cd gpiochip_generic_free +EXPORT_SYMBOL_GPL vmlinux 0xb4ea7cf7 kgdb_connected +EXPORT_SYMBOL_GPL vmlinux 0xb4eda0da ring_buffer_event_length +EXPORT_SYMBOL_GPL vmlinux 0xb506c484 securityfs_create_dir +EXPORT_SYMBOL_GPL vmlinux 0xb509ead2 of_dma_request_slave_channel +EXPORT_SYMBOL_GPL vmlinux 0xb50f1ef4 dm_send_uevents +EXPORT_SYMBOL_GPL vmlinux 0xb5176965 of_thermal_get_ntrips +EXPORT_SYMBOL_GPL vmlinux 0xb51fbd64 edac_op_state +EXPORT_SYMBOL_GPL vmlinux 0xb524e1fe __ndisc_fill_addr_option +EXPORT_SYMBOL_GPL vmlinux 0xb5431d70 lwtunnel_output +EXPORT_SYMBOL_GPL vmlinux 0xb551ab33 tpm_tis_core_init +EXPORT_SYMBOL_GPL vmlinux 0xb56c9a30 xfrm_audit_policy_add +EXPORT_SYMBOL_GPL vmlinux 0xb5777a64 usb_hcd_platform_shutdown +EXPORT_SYMBOL_GPL vmlinux 0xb579bb17 __vfs_setxattr_locked +EXPORT_SYMBOL_GPL vmlinux 0xb5899c0b ti_cm_get_macid +EXPORT_SYMBOL_GPL vmlinux 0xb5938130 fwnode_graph_get_next_endpoint +EXPORT_SYMBOL_GPL vmlinux 0xb5a1105f snd_dmaengine_pcm_set_config_from_dai_data +EXPORT_SYMBOL_GPL vmlinux 0xb5a373e5 efivar_entry_get +EXPORT_SYMBOL_GPL vmlinux 0xb5a8056e dma_buf_attach +EXPORT_SYMBOL_GPL vmlinux 0xb5b0df75 da9052_disable_irq +EXPORT_SYMBOL_GPL vmlinux 0xb5c63984 __vfs_removexattr_noperm +EXPORT_SYMBOL_GPL vmlinux 0xb5ca1338 crypto_inst_setname +EXPORT_SYMBOL_GPL vmlinux 0xb5dcd8a0 klist_init +EXPORT_SYMBOL_GPL vmlinux 0xb5e3b272 sdio_writesb +EXPORT_SYMBOL_GPL vmlinux 0xb5eb0a9f kthread_unpark +EXPORT_SYMBOL_GPL vmlinux 0xb5eb11ee pm_genpd_add_device +EXPORT_SYMBOL_GPL vmlinux 0xb5ec301b devm_snd_soc_register_card +EXPORT_SYMBOL_GPL vmlinux 0xb5eca02f usb_phy_get_charger_current +EXPORT_SYMBOL_GPL vmlinux 0xb5fca6f0 aead_geniv_alloc +EXPORT_SYMBOL_GPL vmlinux 0xb61a0da3 bpf_map_put +EXPORT_SYMBOL_GPL vmlinux 0xb6261484 register_die_notifier +EXPORT_SYMBOL_GPL vmlinux 0xb638193f debugfs_create_ulong +EXPORT_SYMBOL_GPL vmlinux 0xb64cf75f sdio_register_driver +EXPORT_SYMBOL_GPL vmlinux 0xb6787346 sfp_unregister_socket +EXPORT_SYMBOL_GPL vmlinux 0xb68f8905 rio_release_outb_mbox +EXPORT_SYMBOL_GPL vmlinux 0xb69118a5 crypto_alg_mod_lookup +EXPORT_SYMBOL_GPL vmlinux 0xb6918719 tpm_tis_resume +EXPORT_SYMBOL_GPL vmlinux 0xb6acc6ae ip6_append_data +EXPORT_SYMBOL_GPL vmlinux 0xb6ad1fe7 pci_check_and_unmask_intx +EXPORT_SYMBOL_GPL vmlinux 0xb6c5a961 blk_stat_enable_accounting +EXPORT_SYMBOL_GPL vmlinux 0xb6c945ad rtnl_af_unregister +EXPORT_SYMBOL_GPL vmlinux 0xb6ca969a snd_dmaengine_pcm_open_request_chan +EXPORT_SYMBOL_GPL vmlinux 0xb6e6d99d clk_disable +EXPORT_SYMBOL_GPL vmlinux 0xb6e9f9e5 ohci_restart +EXPORT_SYMBOL_GPL vmlinux 0xb702a597 regulator_disable_deferred +EXPORT_SYMBOL_GPL vmlinux 0xb7329c06 clk_set_phase +EXPORT_SYMBOL_GPL vmlinux 0xb74538d2 kprobe_event_cmd_init +EXPORT_SYMBOL_GPL vmlinux 0xb7491c17 lzorle1x_1_compress +EXPORT_SYMBOL_GPL vmlinux 0xb74942c2 gpiod_get_value_cansleep +EXPORT_SYMBOL_GPL vmlinux 0xb7588b6a ethnl_cable_test_alloc +EXPORT_SYMBOL_GPL vmlinux 0xb7641af2 sdhci_set_bus_width +EXPORT_SYMBOL_GPL vmlinux 0xb771e6b7 bL_switch_request_cb +EXPORT_SYMBOL_GPL vmlinux 0xb77db4cd software_node_find_by_name +EXPORT_SYMBOL_GPL vmlinux 0xb785a3ee spi_controller_dma_map_mem_op_data +EXPORT_SYMBOL_GPL vmlinux 0xb791bf4c cpufreq_dbs_governor_limits +EXPORT_SYMBOL_GPL vmlinux 0xb7a387fc synchronize_rcu_tasks_rude +EXPORT_SYMBOL_GPL vmlinux 0xb7aab13f trace_event_raw_init +EXPORT_SYMBOL_GPL vmlinux 0xb7b4c7af snd_soc_dai_compr_set_params +EXPORT_SYMBOL_GPL vmlinux 0xb7b81fa2 ftrace_ops_set_global_filter +EXPORT_SYMBOL_GPL vmlinux 0xb7be3253 sysfs_create_bin_file +EXPORT_SYMBOL_GPL vmlinux 0xb7c51c2c snd_soc_find_dai_with_mutex +EXPORT_SYMBOL_GPL vmlinux 0xb7c69a63 unregister_vmap_purge_notifier +EXPORT_SYMBOL_GPL vmlinux 0xb7de5a3b spi_take_timestamp_post +EXPORT_SYMBOL_GPL vmlinux 0xb7e51830 tpm_transmit_cmd +EXPORT_SYMBOL_GPL vmlinux 0xb7ea259a usb_phy_roothub_suspend +EXPORT_SYMBOL_GPL vmlinux 0xb7eed08b gpiochip_irq_domain_deactivate +EXPORT_SYMBOL_GPL vmlinux 0xb81aef4d mtk_mmsys_ddp_disconnect +EXPORT_SYMBOL_GPL vmlinux 0xb8212341 timecounter_cyc2time +EXPORT_SYMBOL_GPL vmlinux 0xb82566eb omap_tll_enable +EXPORT_SYMBOL_GPL vmlinux 0xb82d3571 usb_gadget_vbus_draw +EXPORT_SYMBOL_GPL vmlinux 0xb833d9e6 devm_device_remove_groups +EXPORT_SYMBOL_GPL vmlinux 0xb845d2b5 crypto_shash_finup +EXPORT_SYMBOL_GPL vmlinux 0xb854bd8e phy_basic_t1_features +EXPORT_SYMBOL_GPL vmlinux 0xb8610796 skb_defer_rx_timestamp +EXPORT_SYMBOL_GPL vmlinux 0xb86bdc17 __platform_register_drivers +EXPORT_SYMBOL_GPL vmlinux 0xb87232cb rio_local_get_device_id +EXPORT_SYMBOL_GPL vmlinux 0xb8752e4d __tracepoint_fib6_table_lookup +EXPORT_SYMBOL_GPL vmlinux 0xb87b4d8c pinmux_generic_get_function_count +EXPORT_SYMBOL_GPL vmlinux 0xb87f7184 da903x_write +EXPORT_SYMBOL_GPL vmlinux 0xb882420f sched_show_task +EXPORT_SYMBOL_GPL vmlinux 0xb88671ea __mmc_send_status +EXPORT_SYMBOL_GPL vmlinux 0xb88dbfce irq_set_irqchip_state +EXPORT_SYMBOL_GPL vmlinux 0xb8a6e94e ping_bind +EXPORT_SYMBOL_GPL vmlinux 0xb8c3db25 set_capacity_revalidate_and_notify +EXPORT_SYMBOL_GPL vmlinux 0xb8c4a2ce device_remove_bin_file +EXPORT_SYMBOL_GPL vmlinux 0xb8cd3a7f nf_logger_put +EXPORT_SYMBOL_GPL vmlinux 0xb8d48f56 user_update +EXPORT_SYMBOL_GPL vmlinux 0xb90a1fcd rsa_parse_priv_key +EXPORT_SYMBOL_GPL vmlinux 0xb90a5cf8 rio_local_set_device_id +EXPORT_SYMBOL_GPL vmlinux 0xb9138620 xas_create_range +EXPORT_SYMBOL_GPL vmlinux 0xb9150023 regcache_sync +EXPORT_SYMBOL_GPL vmlinux 0xb9176155 asn1_ber_decoder +EXPORT_SYMBOL_GPL vmlinux 0xb917b6d7 return_address +EXPORT_SYMBOL_GPL vmlinux 0xb930fb40 rtnl_register_module +EXPORT_SYMBOL_GPL vmlinux 0xb939f0db tty_port_tty_wakeup +EXPORT_SYMBOL_GPL vmlinux 0xb946145c proc_mkdir_data +EXPORT_SYMBOL_GPL vmlinux 0xb95559bc housekeeping_any_cpu +EXPORT_SYMBOL_GPL vmlinux 0xb9681621 xdp_do_flush +EXPORT_SYMBOL_GPL vmlinux 0xb96d210a ata_sas_port_start +EXPORT_SYMBOL_GPL vmlinux 0xb98391f9 phy_speed_up +EXPORT_SYMBOL_GPL vmlinux 0xb98a039e __blkg_prfill_rwstat +EXPORT_SYMBOL_GPL vmlinux 0xb98b9616 dw_pcie_find_ext_capability +EXPORT_SYMBOL_GPL vmlinux 0xb99a93f5 crypto_chain +EXPORT_SYMBOL_GPL vmlinux 0xb99d3629 synth_event_cmd_init +EXPORT_SYMBOL_GPL vmlinux 0xb9b0cc3a extcon_get_edev_by_phandle +EXPORT_SYMBOL_GPL vmlinux 0xb9b9df41 usb_amd_dev_put +EXPORT_SYMBOL_GPL vmlinux 0xb9c425de register_syscore_ops +EXPORT_SYMBOL_GPL vmlinux 0xb9d025c9 llist_del_first +EXPORT_SYMBOL_GPL vmlinux 0xb9e87b94 bL_switcher_trace_trigger +EXPORT_SYMBOL_GPL vmlinux 0xba02f5e1 ata_pci_bmdma_prepare_host +EXPORT_SYMBOL_GPL vmlinux 0xba13d11b mpc8xxx_spi_tx_buf_u8 +EXPORT_SYMBOL_GPL vmlinux 0xba1fd22b dev_pm_qos_expose_flags +EXPORT_SYMBOL_GPL vmlinux 0xba2b7f64 cpufreq_generic_get +EXPORT_SYMBOL_GPL vmlinux 0xba2bd125 phy_gbit_fibre_features +EXPORT_SYMBOL_GPL vmlinux 0xba3a523b ahci_fill_cmd_slot +EXPORT_SYMBOL_GPL vmlinux 0xba3af09a mtd_read_oob +EXPORT_SYMBOL_GPL vmlinux 0xba458797 cpts_tx_timestamp +EXPORT_SYMBOL_GPL vmlinux 0xba5dbcd5 devm_mdiobus_free +EXPORT_SYMBOL_GPL vmlinux 0xba7ac137 __kernel_write +EXPORT_SYMBOL_GPL vmlinux 0xba88b811 device_remove_groups +EXPORT_SYMBOL_GPL vmlinux 0xba9b7ece snd_soc_of_parse_daifmt +EXPORT_SYMBOL_GPL vmlinux 0xba9dd2d2 devlink_trap_groups_unregister +EXPORT_SYMBOL_GPL vmlinux 0xba9ef4b3 gpiod_set_raw_array_value +EXPORT_SYMBOL_GPL vmlinux 0xba9f896a inet_csk_listen_start +EXPORT_SYMBOL_GPL vmlinux 0xbab1b2f8 ahci_set_em_messages +EXPORT_SYMBOL_GPL vmlinux 0xbab9a9f0 maxim_charger_currents +EXPORT_SYMBOL_GPL vmlinux 0xbabb99c9 dev_pm_opp_get_opp_count +EXPORT_SYMBOL_GPL vmlinux 0xbac5d459 genphy_c45_pma_setup_forced +EXPORT_SYMBOL_GPL vmlinux 0xbace3461 usb_ep_disable +EXPORT_SYMBOL_GPL vmlinux 0xbad08bd0 iommu_sva_unbind_gpasid +EXPORT_SYMBOL_GPL vmlinux 0xbad414d5 devm_clk_hw_unregister +EXPORT_SYMBOL_GPL vmlinux 0xbaebf3f1 cpufreq_unregister_governor +EXPORT_SYMBOL_GPL vmlinux 0xbaecd648 phy_led_trigger_change_speed +EXPORT_SYMBOL_GPL vmlinux 0xbaf6850c fsnotify_wait_marks_destroyed +EXPORT_SYMBOL_GPL vmlinux 0xbb0ab47b debug_locks +EXPORT_SYMBOL_GPL vmlinux 0xbb13b23b crypto_register_algs +EXPORT_SYMBOL_GPL vmlinux 0xbb1f7e14 sysfs_add_file_to_group +EXPORT_SYMBOL_GPL vmlinux 0xbb364ab5 md_rdev_init +EXPORT_SYMBOL_GPL vmlinux 0xbb43095d rio_add_device +EXPORT_SYMBOL_GPL vmlinux 0xbb4c7570 pids_cgrp_subsys_on_dfl_key +EXPORT_SYMBOL_GPL vmlinux 0xbb541a4b devlink_resource_size_get +EXPORT_SYMBOL_GPL vmlinux 0xbb598016 sm501_unit_power +EXPORT_SYMBOL_GPL vmlinux 0xbb6a3cbd devlink_fmsg_arr_pair_nest_start +EXPORT_SYMBOL_GPL vmlinux 0xbb6de8f7 bpf_map_inc_not_zero +EXPORT_SYMBOL_GPL vmlinux 0xbb7195a5 xdp_warn +EXPORT_SYMBOL_GPL vmlinux 0xbb7f76bb ehci_setup +EXPORT_SYMBOL_GPL vmlinux 0xbb8e41c7 sdhci_enable_v4_mode +EXPORT_SYMBOL_GPL vmlinux 0xbb901912 usb_set_device_state +EXPORT_SYMBOL_GPL vmlinux 0xbb902505 look_up_OID +EXPORT_SYMBOL_GPL vmlinux 0xbbb4a1cd firmware_request_platform +EXPORT_SYMBOL_GPL vmlinux 0xbbb962fa ip6_datagram_connect +EXPORT_SYMBOL_GPL vmlinux 0xbbc9421d regulator_is_enabled +EXPORT_SYMBOL_GPL vmlinux 0xbbcc73b7 tty_ldisc_receive_buf +EXPORT_SYMBOL_GPL vmlinux 0xbbe97f4b iomap_releasepage +EXPORT_SYMBOL_GPL vmlinux 0xbbf0913f evict_inodes +EXPORT_SYMBOL_GPL vmlinux 0xbc11dd87 powercap_register_control_type +EXPORT_SYMBOL_GPL vmlinux 0xbc1cebda stmpe_disable +EXPORT_SYMBOL_GPL vmlinux 0xbc308dd6 sdhci_abort_tuning +EXPORT_SYMBOL_GPL vmlinux 0xbc377f6a usb_hc_died +EXPORT_SYMBOL_GPL vmlinux 0xbc550232 register_mtd_blktrans +EXPORT_SYMBOL_GPL vmlinux 0xbc6bec66 free_percpu_irq +EXPORT_SYMBOL_GPL vmlinux 0xbc6d8fa6 devm_gpio_request +EXPORT_SYMBOL_GPL vmlinux 0xbc7e42f3 gpiochip_irqchip_irq_valid +EXPORT_SYMBOL_GPL vmlinux 0xbc84ffae inet_csk_route_child_sock +EXPORT_SYMBOL_GPL vmlinux 0xbc87f1a4 fwnode_gpiod_get_index +EXPORT_SYMBOL_GPL vmlinux 0xbca695a3 usb_find_interface +EXPORT_SYMBOL_GPL vmlinux 0xbca9448b fib_info_nh_uses_dev +EXPORT_SYMBOL_GPL vmlinux 0xbcc15e75 ktime_get_coarse_with_offset +EXPORT_SYMBOL_GPL vmlinux 0xbccce97f splice_to_pipe +EXPORT_SYMBOL_GPL vmlinux 0xbccf5258 cm_notify_event +EXPORT_SYMBOL_GPL vmlinux 0xbccfd4d8 register_oldmem_pfn_is_ram +EXPORT_SYMBOL_GPL vmlinux 0xbcdd5b99 iommu_group_set_name +EXPORT_SYMBOL_GPL vmlinux 0xbce9cc79 regulator_lock +EXPORT_SYMBOL_GPL vmlinux 0xbcf1f0e6 zs_create_pool +EXPORT_SYMBOL_GPL vmlinux 0xbcf7a639 devm_hwspin_lock_request +EXPORT_SYMBOL_GPL vmlinux 0xbd239e12 ipv6_bpf_stub +EXPORT_SYMBOL_GPL vmlinux 0xbd3fe1e3 disable_hardirq +EXPORT_SYMBOL_GPL vmlinux 0xbd4288ce seg6_do_srh_encap +EXPORT_SYMBOL_GPL vmlinux 0xbd5faaaf wm8350_block_write +EXPORT_SYMBOL_GPL vmlinux 0xbd688b78 percpu_free_rwsem +EXPORT_SYMBOL_GPL vmlinux 0xbd74a465 phy_remove_lookup +EXPORT_SYMBOL_GPL vmlinux 0xbd75af0e ipv6_dup_options +EXPORT_SYMBOL_GPL vmlinux 0xbd7ad818 mtd_panic_write +EXPORT_SYMBOL_GPL vmlinux 0xbd9a8e96 __class_create +EXPORT_SYMBOL_GPL vmlinux 0xbda5db96 omap_iommu_domain_activate +EXPORT_SYMBOL_GPL vmlinux 0xbde27d1a md_bitmap_load +EXPORT_SYMBOL_GPL vmlinux 0xbdfcfb0c pinconf_generic_dt_node_to_map +EXPORT_SYMBOL_GPL vmlinux 0xbdfeb1e3 iommu_aux_get_pasid +EXPORT_SYMBOL_GPL vmlinux 0xbe2285cd musb_set_host +EXPORT_SYMBOL_GPL vmlinux 0xbe354d97 mtd_device_parse_register +EXPORT_SYMBOL_GPL vmlinux 0xbe370244 clean_acked_data_enable +EXPORT_SYMBOL_GPL vmlinux 0xbe373db3 debugfs_create_bool +EXPORT_SYMBOL_GPL vmlinux 0xbe37ef69 gpiod_get_raw_value +EXPORT_SYMBOL_GPL vmlinux 0xbe4d2904 netdev_rx_handler_unregister +EXPORT_SYMBOL_GPL vmlinux 0xbe500a7c ncsi_start_dev +EXPORT_SYMBOL_GPL vmlinux 0xbe687e88 wake_up_all_idle_cpus +EXPORT_SYMBOL_GPL vmlinux 0xbe70bd0a irq_set_default_host +EXPORT_SYMBOL_GPL vmlinux 0xbe84988e uart_insert_char +EXPORT_SYMBOL_GPL vmlinux 0xbe898833 mtd_block_markbad +EXPORT_SYMBOL_GPL vmlinux 0xbe8cb29b ip6_dst_lookup_tunnel +EXPORT_SYMBOL_GPL vmlinux 0xbe96dfd8 of_reconfig_notifier_unregister +EXPORT_SYMBOL_GPL vmlinux 0xbe9a83d5 dw_pcie_write +EXPORT_SYMBOL_GPL vmlinux 0xbea461ee __iptunnel_pull_header +EXPORT_SYMBOL_GPL vmlinux 0xbea5ff1e static_key_initialized +EXPORT_SYMBOL_GPL vmlinux 0xbeafb65b ata_host_alloc_pinfo +EXPORT_SYMBOL_GPL vmlinux 0xbeb53a1e sdio_set_host_pm_flags +EXPORT_SYMBOL_GPL vmlinux 0xbec3dc1d regmap_write +EXPORT_SYMBOL_GPL vmlinux 0xbec5473b usb_ep_fifo_status +EXPORT_SYMBOL_GPL vmlinux 0xbed491ea devres_destroy +EXPORT_SYMBOL_GPL vmlinux 0xbed9eb5b crypto_register_scomps +EXPORT_SYMBOL_GPL vmlinux 0xbedb9473 cpts_rx_timestamp +EXPORT_SYMBOL_GPL vmlinux 0xbef74c23 inet6_csk_xmit +EXPORT_SYMBOL_GPL vmlinux 0xbefb53aa register_kprobes +EXPORT_SYMBOL_GPL vmlinux 0xbefff0a4 gpmc_omap_onenand_set_timings +EXPORT_SYMBOL_GPL vmlinux 0xbf041102 register_vt_notifier +EXPORT_SYMBOL_GPL vmlinux 0xbf138cc9 blk_queue_flag_test_and_set +EXPORT_SYMBOL_GPL vmlinux 0xbf27485e devres_remove +EXPORT_SYMBOL_GPL vmlinux 0xbf4d00cc bus_find_device +EXPORT_SYMBOL_GPL vmlinux 0xbf4eedd2 housekeeping_cpumask +EXPORT_SYMBOL_GPL vmlinux 0xbf688574 sched_trace_cfs_rq_avg +EXPORT_SYMBOL_GPL vmlinux 0xbf6abbe7 housekeeping_enabled +EXPORT_SYMBOL_GPL vmlinux 0xbfb30dd4 of_fdt_unflatten_tree +EXPORT_SYMBOL_GPL vmlinux 0xbfb47fc4 dev_pm_qos_add_request +EXPORT_SYMBOL_GPL vmlinux 0xbfb6bb11 mtk_pinconf_bias_disable_get_rev1 +EXPORT_SYMBOL_GPL vmlinux 0xbfbc5434 pciserial_resume_ports +EXPORT_SYMBOL_GPL vmlinux 0xbfda75b8 fwnode_get_nth_parent +EXPORT_SYMBOL_GPL vmlinux 0xbfe053c6 of_genpd_add_subdomain +EXPORT_SYMBOL_GPL vmlinux 0xbfe5616d tick_broadcast_oneshot_control +EXPORT_SYMBOL_GPL vmlinux 0xbfecb36f sata_port_ops +EXPORT_SYMBOL_GPL vmlinux 0xbff30880 kthread_queue_delayed_work +EXPORT_SYMBOL_GPL vmlinux 0xbffc9c73 power_supply_class +EXPORT_SYMBOL_GPL vmlinux 0xbffce09b rhashtable_walk_exit +EXPORT_SYMBOL_GPL vmlinux 0xc00131cf visitor64 +EXPORT_SYMBOL_GPL vmlinux 0xc003f744 usb_hub_release_port +EXPORT_SYMBOL_GPL vmlinux 0xc006bfb0 ohci_suspend +EXPORT_SYMBOL_GPL vmlinux 0xc018e1a0 list_lru_add +EXPORT_SYMBOL_GPL vmlinux 0xc01d5c71 pcie_update_link_speed +EXPORT_SYMBOL_GPL vmlinux 0xc022cf11 direct_make_request +EXPORT_SYMBOL_GPL vmlinux 0xc0266029 __regmap_init_mmio_clk +EXPORT_SYMBOL_GPL vmlinux 0xc02f6dc0 xhci_shutdown +EXPORT_SYMBOL_GPL vmlinux 0xc0332cfd lwtunnel_get_encap_size +EXPORT_SYMBOL_GPL vmlinux 0xc034edd0 task_user_regset_view +EXPORT_SYMBOL_GPL vmlinux 0xc0420b23 usb_bus_idr_lock +EXPORT_SYMBOL_GPL vmlinux 0xc0583e20 edac_queue_work +EXPORT_SYMBOL_GPL vmlinux 0xc06b77b3 __cci_control_port_by_index +EXPORT_SYMBOL_GPL vmlinux 0xc081c246 bL_switcher_put_enabled +EXPORT_SYMBOL_GPL vmlinux 0xc0932aeb crypto_create_tfm +EXPORT_SYMBOL_GPL vmlinux 0xc09aa7e0 pci_epc_get_msi +EXPORT_SYMBOL_GPL vmlinux 0xc0a36054 thermal_zone_device_update +EXPORT_SYMBOL_GPL vmlinux 0xc0a96e14 rcu_gp_is_expedited +EXPORT_SYMBOL_GPL vmlinux 0xc0b7bfca raw_hash_sk +EXPORT_SYMBOL_GPL vmlinux 0xc0c0079a dev_pm_opp_find_freq_exact +EXPORT_SYMBOL_GPL vmlinux 0xc0c3e29b crypto_alloc_sync_skcipher +EXPORT_SYMBOL_GPL vmlinux 0xc0ca6264 irq_gc_ack_set_bit +EXPORT_SYMBOL_GPL vmlinux 0xc0cd3075 pinctrl_generic_get_group_count +EXPORT_SYMBOL_GPL vmlinux 0xc0dbab37 trace_seq_path +EXPORT_SYMBOL_GPL vmlinux 0xc0dcb59e edac_layer_name +EXPORT_SYMBOL_GPL vmlinux 0xc0e75cec visitor128 +EXPORT_SYMBOL_GPL vmlinux 0xc0ede07a sysfs_create_file_ns +EXPORT_SYMBOL_GPL vmlinux 0xc0f0458a ip_tunnel_unneed_metadata +EXPORT_SYMBOL_GPL vmlinux 0xc0f19d66 ahci_print_info +EXPORT_SYMBOL_GPL vmlinux 0xc10655da xas_get_mark +EXPORT_SYMBOL_GPL vmlinux 0xc1086e0c sysrq_toggle_support +EXPORT_SYMBOL_GPL vmlinux 0xc10fddb8 name_to_dev_t +EXPORT_SYMBOL_GPL vmlinux 0xc1135678 mtk_hw_set_value +EXPORT_SYMBOL_GPL vmlinux 0xc1182335 bpf_prog_destroy +EXPORT_SYMBOL_GPL vmlinux 0xc11e2521 snd_soc_card_add_dai_link +EXPORT_SYMBOL_GPL vmlinux 0xc129566a unregister_kretprobe +EXPORT_SYMBOL_GPL vmlinux 0xc12fbbaa ata_sas_slave_configure +EXPORT_SYMBOL_GPL vmlinux 0xc13412d5 devlink_port_attrs_set +EXPORT_SYMBOL_GPL vmlinux 0xc14b64c7 rio_unmap_inb_region +EXPORT_SYMBOL_GPL vmlinux 0xc14f9dde nand_erase_op +EXPORT_SYMBOL_GPL vmlinux 0xc150e423 ata_std_prereset +EXPORT_SYMBOL_GPL vmlinux 0xc173be1a pci_parse_request_of_pci_ranges +EXPORT_SYMBOL_GPL vmlinux 0xc17515d7 usb_hcds_loaded +EXPORT_SYMBOL_GPL vmlinux 0xc18bc752 register_virtio_driver +EXPORT_SYMBOL_GPL vmlinux 0xc19c3a66 srcu_notifier_chain_register +EXPORT_SYMBOL_GPL vmlinux 0xc1a1d24e iomap_writepage +EXPORT_SYMBOL_GPL vmlinux 0xc1c390e0 blk_mq_freeze_queue +EXPORT_SYMBOL_GPL vmlinux 0xc1c4decc platform_get_irq_byname +EXPORT_SYMBOL_GPL vmlinux 0xc1c97631 snd_soc_add_card_controls +EXPORT_SYMBOL_GPL vmlinux 0xc1d8bae5 snd_soc_tplg_widget_remove +EXPORT_SYMBOL_GPL vmlinux 0xc1ddaf65 kobj_sysfs_ops +EXPORT_SYMBOL_GPL vmlinux 0xc1f23e15 power_supply_get_drvdata +EXPORT_SYMBOL_GPL vmlinux 0xc2107931 xdp_rxq_info_unreg_mem_model +EXPORT_SYMBOL_GPL vmlinux 0xc213c672 serial8250_clear_and_reinit_fifos +EXPORT_SYMBOL_GPL vmlinux 0xc21853d0 kobject_get_path +EXPORT_SYMBOL_GPL vmlinux 0xc218a220 component_add +EXPORT_SYMBOL_GPL vmlinux 0xc21b3cca devices_cgrp_subsys_on_dfl_key +EXPORT_SYMBOL_GPL vmlinux 0xc222ead3 xas_find_marked +EXPORT_SYMBOL_GPL vmlinux 0xc22a3091 vm_unmap_aliases +EXPORT_SYMBOL_GPL vmlinux 0xc2317c04 of_clk_del_provider +EXPORT_SYMBOL_GPL vmlinux 0xc2444290 snd_soc_dai_set_bclk_ratio +EXPORT_SYMBOL_GPL vmlinux 0xc262596b gpiochip_add_data_with_key +EXPORT_SYMBOL_GPL vmlinux 0xc2674a10 dma_max_mapping_size +EXPORT_SYMBOL_GPL vmlinux 0xc2692173 wakeup_sources_read_lock +EXPORT_SYMBOL_GPL vmlinux 0xc26a56a0 pci_enable_sriov +EXPORT_SYMBOL_GPL vmlinux 0xc277c2c7 snd_soc_dapm_mux_update_power +EXPORT_SYMBOL_GPL vmlinux 0xc27dc7f5 param_ops_bool_enable_only +EXPORT_SYMBOL_GPL vmlinux 0xc280fb46 kdb_register +EXPORT_SYMBOL_GPL vmlinux 0xc289e46d cpufreq_generic_frequency_table_verify +EXPORT_SYMBOL_GPL vmlinux 0xc2a740ab ethnl_cable_test_amplitude +EXPORT_SYMBOL_GPL vmlinux 0xc2a814db tcp_memory_pressure +EXPORT_SYMBOL_GPL vmlinux 0xc2a8de87 sk_msg_alloc +EXPORT_SYMBOL_GPL vmlinux 0xc2bdb66e wm831x_regmap_config +EXPORT_SYMBOL_GPL vmlinux 0xc2db7e18 xas_find +EXPORT_SYMBOL_GPL vmlinux 0xc2f34e87 devm_regulator_bulk_register_supply_alias +EXPORT_SYMBOL_GPL vmlinux 0xc2fab1ff balloon_page_list_dequeue +EXPORT_SYMBOL_GPL vmlinux 0xc2fb8052 platform_msi_domain_alloc_irqs +EXPORT_SYMBOL_GPL vmlinux 0xc33f6b71 pci_epc_unmap_addr +EXPORT_SYMBOL_GPL vmlinux 0xc341ae6d zs_map_object +EXPORT_SYMBOL_GPL vmlinux 0xc34520dc trace_event_buffer_reserve +EXPORT_SYMBOL_GPL vmlinux 0xc34bace8 mtk_eint_do_init +EXPORT_SYMBOL_GPL vmlinux 0xc35c4c78 of_mpc8xxx_spi_probe +EXPORT_SYMBOL_GPL vmlinux 0xc36eef17 qcom_smem_state_register +EXPORT_SYMBOL_GPL vmlinux 0xc37291e0 disk_part_iter_exit +EXPORT_SYMBOL_GPL vmlinux 0xc3805cd1 fs_ftype_to_dtype +EXPORT_SYMBOL_GPL vmlinux 0xc381eefb nf_queue_nf_hook_drop +EXPORT_SYMBOL_GPL vmlinux 0xc383cfd8 dax_copy_from_iter +EXPORT_SYMBOL_GPL vmlinux 0xc383d6ba snd_dmaengine_pcm_register +EXPORT_SYMBOL_GPL vmlinux 0xc385cb58 perf_num_counters +EXPORT_SYMBOL_GPL vmlinux 0xc3942384 of_platform_default_populate +EXPORT_SYMBOL_GPL vmlinux 0xc39a3aa0 __bio_add_page +EXPORT_SYMBOL_GPL vmlinux 0xc3c4c6cc hash_algo_name +EXPORT_SYMBOL_GPL vmlinux 0xc3d0c709 sysfs_remove_groups +EXPORT_SYMBOL_GPL vmlinux 0xc3d15d51 security_inode_mkdir +EXPORT_SYMBOL_GPL vmlinux 0xc3d73053 dax_supported +EXPORT_SYMBOL_GPL vmlinux 0xc3de65ff ring_buffer_bytes_cpu +EXPORT_SYMBOL_GPL vmlinux 0xc3e8f2d0 regulator_get_init_drvdata +EXPORT_SYMBOL_GPL vmlinux 0xc3ea5305 iommu_default_passthrough +EXPORT_SYMBOL_GPL vmlinux 0xc3f285e2 wm8350_reg_read +EXPORT_SYMBOL_GPL vmlinux 0xc4071562 virtio_check_driver_offered_feature +EXPORT_SYMBOL_GPL vmlinux 0xc4206cd2 crypto_register_ahash +EXPORT_SYMBOL_GPL vmlinux 0xc42130fd irq_domain_free_fwnode +EXPORT_SYMBOL_GPL vmlinux 0xc424bda9 skcipher_walk_virt +EXPORT_SYMBOL_GPL vmlinux 0xc428068d sata_deb_timing_long +EXPORT_SYMBOL_GPL vmlinux 0xc42b0213 vfs_write +EXPORT_SYMBOL_GPL vmlinux 0xc445e789 nfnl_ct_hook +EXPORT_SYMBOL_GPL vmlinux 0xc4476e3c sdhci_free_host +EXPORT_SYMBOL_GPL vmlinux 0xc4490e66 usb_of_get_companion_dev +EXPORT_SYMBOL_GPL vmlinux 0xc454fc7b twl_get_type +EXPORT_SYMBOL_GPL vmlinux 0xc457b646 snd_dmaengine_pcm_open +EXPORT_SYMBOL_GPL vmlinux 0xc463f434 thermal_zone_get_offset +EXPORT_SYMBOL_GPL vmlinux 0xc471c67a twl4030_audio_disable_resource +EXPORT_SYMBOL_GPL vmlinux 0xc48b7ccf ata_mode_string +EXPORT_SYMBOL_GPL vmlinux 0xc4937fde ti_clk_is_in_standby +EXPORT_SYMBOL_GPL vmlinux 0xc498c554 free_fib_info +EXPORT_SYMBOL_GPL vmlinux 0xc49f6ddf snd_compr_stop_error +EXPORT_SYMBOL_GPL vmlinux 0xc4b582e4 bus_set_iommu +EXPORT_SYMBOL_GPL vmlinux 0xc4b75f35 wakeup_source_unregister +EXPORT_SYMBOL_GPL vmlinux 0xc4be41bc strp_unpause +EXPORT_SYMBOL_GPL vmlinux 0xc4c27b12 mnt_drop_write +EXPORT_SYMBOL_GPL vmlinux 0xc4ce9245 dev_pm_domain_attach_by_id +EXPORT_SYMBOL_GPL vmlinux 0xc4cf2420 ring_buffer_read_page +EXPORT_SYMBOL_GPL vmlinux 0xc4e2c52d sdio_retune_crc_enable +EXPORT_SYMBOL_GPL vmlinux 0xc4f0da12 ktime_get_with_offset +EXPORT_SYMBOL_GPL vmlinux 0xc4f2b684 devm_pwm_get +EXPORT_SYMBOL_GPL vmlinux 0xc513153f clk_hw_get_parent +EXPORT_SYMBOL_GPL vmlinux 0xc518c5e8 stmpe_reg_read +EXPORT_SYMBOL_GPL vmlinux 0xc53cb8ce device_del +EXPORT_SYMBOL_GPL vmlinux 0xc5445bf8 key_type_asymmetric +EXPORT_SYMBOL_GPL vmlinux 0xc553416d blk_execute_rq_nowait +EXPORT_SYMBOL_GPL vmlinux 0xc554d76e __account_locked_vm +EXPORT_SYMBOL_GPL vmlinux 0xc556e050 fib6_check_nexthop +EXPORT_SYMBOL_GPL vmlinux 0xc55ff962 phy_basic_t1_features_array +EXPORT_SYMBOL_GPL vmlinux 0xc5604800 clk_set_rate_exclusive +EXPORT_SYMBOL_GPL vmlinux 0xc56679ae regulator_get_current_limit +EXPORT_SYMBOL_GPL vmlinux 0xc569d8ce __clk_get_name +EXPORT_SYMBOL_GPL vmlinux 0xc575c737 debug_locks_off +EXPORT_SYMBOL_GPL vmlinux 0xc5777fca linear_range_get_selector_low_array +EXPORT_SYMBOL_GPL vmlinux 0xc57aee3e gpiod_direction_input +EXPORT_SYMBOL_GPL vmlinux 0xc585894f power_supply_changed +EXPORT_SYMBOL_GPL vmlinux 0xc58a3ee6 icc_node_destroy +EXPORT_SYMBOL_GPL vmlinux 0xc593d983 tpm_chip_alloc +EXPORT_SYMBOL_GPL vmlinux 0xc5a6039a pm_generic_resume +EXPORT_SYMBOL_GPL vmlinux 0xc5aa993a nand_read_oob_op +EXPORT_SYMBOL_GPL vmlinux 0xc5aafff1 wbc_detach_inode +EXPORT_SYMBOL_GPL vmlinux 0xc600d5e2 extcon_get_property_capability +EXPORT_SYMBOL_GPL vmlinux 0xc61786b8 pinctrl_utils_free_map +EXPORT_SYMBOL_GPL vmlinux 0xc617f82c unregister_oom_notifier +EXPORT_SYMBOL_GPL vmlinux 0xc63b6143 kthread_cancel_delayed_work_sync +EXPORT_SYMBOL_GPL vmlinux 0xc63c0bf1 nvmem_device_find +EXPORT_SYMBOL_GPL vmlinux 0xc6433365 of_thermal_is_trip_valid +EXPORT_SYMBOL_GPL vmlinux 0xc6444ed2 devm_gpiod_get_from_of_node +EXPORT_SYMBOL_GPL vmlinux 0xc64fecab mmc_regulator_set_vqmmc +EXPORT_SYMBOL_GPL vmlinux 0xc654d3f4 lwtunnel_valid_encap_type +EXPORT_SYMBOL_GPL vmlinux 0xc65a634b gov_attr_set_put +EXPORT_SYMBOL_GPL vmlinux 0xc66b77b1 iommu_group_set_iommudata +EXPORT_SYMBOL_GPL vmlinux 0xc66b9088 bpf_trace_run7 +EXPORT_SYMBOL_GPL vmlinux 0xc66c2d59 __irq_set_handler +EXPORT_SYMBOL_GPL vmlinux 0xc6746756 mmc_pwrseq_register +EXPORT_SYMBOL_GPL vmlinux 0xc6779093 ring_buffer_record_enable +EXPORT_SYMBOL_GPL vmlinux 0xc67a7d67 extcon_set_property_capability +EXPORT_SYMBOL_GPL vmlinux 0xc68c9773 uart_console_device +EXPORT_SYMBOL_GPL vmlinux 0xc68d6aaa ping_seq_next +EXPORT_SYMBOL_GPL vmlinux 0xc69b7ee5 zs_destroy_pool +EXPORT_SYMBOL_GPL vmlinux 0xc6a4a872 __clk_is_enabled +EXPORT_SYMBOL_GPL vmlinux 0xc6a7fa08 pci_epf_unregister_driver +EXPORT_SYMBOL_GPL vmlinux 0xc6b01e67 rdev_get_dev +EXPORT_SYMBOL_GPL vmlinux 0xc6c3ed50 percpu_ref_reinit +EXPORT_SYMBOL_GPL vmlinux 0xc6c496cb regmap_field_read +EXPORT_SYMBOL_GPL vmlinux 0xc6d26984 ipv4_update_pmtu +EXPORT_SYMBOL_GPL vmlinux 0xc6d42f92 driver_attach +EXPORT_SYMBOL_GPL vmlinux 0xc6e46b2a of_msi_configure +EXPORT_SYMBOL_GPL vmlinux 0xc6e667f1 thread_notify_head +EXPORT_SYMBOL_GPL vmlinux 0xc6e7a295 screen_glyph_unicode +EXPORT_SYMBOL_GPL vmlinux 0xc6ee4ac1 virtio_add_status +EXPORT_SYMBOL_GPL vmlinux 0xc6eec8f5 clk_divider_ops +EXPORT_SYMBOL_GPL vmlinux 0xc71b5c49 ata_ncq_sdev_attrs +EXPORT_SYMBOL_GPL vmlinux 0xc71e64a9 snmp_get_cpu_field +EXPORT_SYMBOL_GPL vmlinux 0xc7315315 iomap_file_unshare +EXPORT_SYMBOL_GPL vmlinux 0xc73b55a4 __mmu_notifier_register +EXPORT_SYMBOL_GPL vmlinux 0xc74b7468 virtqueue_detach_unused_buf +EXPORT_SYMBOL_GPL vmlinux 0xc75267b3 dpm_for_each_dev +EXPORT_SYMBOL_GPL vmlinux 0xc75d35f7 handle_fasteoi_mask_irq +EXPORT_SYMBOL_GPL vmlinux 0xc7651842 ahci_platform_resume_host +EXPORT_SYMBOL_GPL vmlinux 0xc771f25d alarm_init +EXPORT_SYMBOL_GPL vmlinux 0xc78fc7fb pm_generic_suspend_noirq +EXPORT_SYMBOL_GPL vmlinux 0xc79144f5 trace_seq_putmem_hex +EXPORT_SYMBOL_GPL vmlinux 0xc7a1840e llist_add_batch +EXPORT_SYMBOL_GPL vmlinux 0xc7a5dafa hwmon_device_unregister +EXPORT_SYMBOL_GPL vmlinux 0xc7be666f __crypto_alloc_tfm +EXPORT_SYMBOL_GPL vmlinux 0xc7e03783 balloon_page_dequeue +EXPORT_SYMBOL_GPL vmlinux 0xc7fa4aa9 kobj_ns_drop +EXPORT_SYMBOL_GPL vmlinux 0xc80864c3 snd_soc_set_ac97_ops +EXPORT_SYMBOL_GPL vmlinux 0xc80a2a48 fib_alias_hw_flags_set +EXPORT_SYMBOL_GPL vmlinux 0xc812c0f2 fwnode_property_read_u8_array +EXPORT_SYMBOL_GPL vmlinux 0xc817740d gpiod_get_array +EXPORT_SYMBOL_GPL vmlinux 0xc81de083 ata_eh_analyze_ncq_error +EXPORT_SYMBOL_GPL vmlinux 0xc8269f94 snd_soc_params_to_frame_size +EXPORT_SYMBOL_GPL vmlinux 0xc8282613 device_property_read_string_array +EXPORT_SYMBOL_GPL vmlinux 0xc82c721f klist_remove +EXPORT_SYMBOL_GPL vmlinux 0xc83ccf4e device_dma_supported +EXPORT_SYMBOL_GPL vmlinux 0xc844384a devm_thermal_zone_of_sensor_register +EXPORT_SYMBOL_GPL vmlinux 0xc848d8dc usb_ep_queue +EXPORT_SYMBOL_GPL vmlinux 0xc848f1db register_ftrace_function +EXPORT_SYMBOL_GPL vmlinux 0xc853247f class_dev_iter_exit +EXPORT_SYMBOL_GPL vmlinux 0xc8594d3d reset_control_acquire +EXPORT_SYMBOL_GPL vmlinux 0xc87152ce fat_setattr +EXPORT_SYMBOL_GPL vmlinux 0xc873e327 tty_perform_flush +EXPORT_SYMBOL_GPL vmlinux 0xc8789b73 unix_table_lock +EXPORT_SYMBOL_GPL vmlinux 0xc8795595 spi_mem_adjust_op_size +EXPORT_SYMBOL_GPL vmlinux 0xc8819bda crypto_unregister_kpp +EXPORT_SYMBOL_GPL vmlinux 0xc88c13c1 i2c_detect_slave_mode +EXPORT_SYMBOL_GPL vmlinux 0xc8a613bc ptp_classify_raw +EXPORT_SYMBOL_GPL vmlinux 0xc8b16341 regulator_list_voltage +EXPORT_SYMBOL_GPL vmlinux 0xc8bdfbfc devm_devfreq_event_remove_edev +EXPORT_SYMBOL_GPL vmlinux 0xc8cadd80 edac_device_alloc_ctl_info +EXPORT_SYMBOL_GPL vmlinux 0xc8d6c566 pinctrl_put +EXPORT_SYMBOL_GPL vmlinux 0xc8ddd5b5 kstrdup_quotable +EXPORT_SYMBOL_GPL vmlinux 0xc8e77244 snd_card_disconnect_sync +EXPORT_SYMBOL_GPL vmlinux 0xc8fc06cf nvmem_register +EXPORT_SYMBOL_GPL vmlinux 0xc902dbe5 md_run +EXPORT_SYMBOL_GPL vmlinux 0xc9080cfd pci_iomap_wc_range +EXPORT_SYMBOL_GPL vmlinux 0xc90f6d46 tegra_bpmp_free_mrq +EXPORT_SYMBOL_GPL vmlinux 0xc91277a1 kgdb_schedule_breakpoint +EXPORT_SYMBOL_GPL vmlinux 0xc91ded61 devres_get +EXPORT_SYMBOL_GPL vmlinux 0xc92f2056 usb_hcd_unmap_urb_setup_for_dma +EXPORT_SYMBOL_GPL vmlinux 0xc9364bf3 sdhci_start_signal_voltage_switch +EXPORT_SYMBOL_GPL vmlinux 0xc93927e5 device_create_file +EXPORT_SYMBOL_GPL vmlinux 0xc93b4ecc mmc_regulator_set_ocr +EXPORT_SYMBOL_GPL vmlinux 0xc93caa01 of_platform_depopulate +EXPORT_SYMBOL_GPL vmlinux 0xc93ee1e7 usb_phy_roothub_init +EXPORT_SYMBOL_GPL vmlinux 0xc944bd7f ata_eh_freeze_port +EXPORT_SYMBOL_GPL vmlinux 0xc9561772 fb_destroy_modelist +EXPORT_SYMBOL_GPL vmlinux 0xc96fb674 nvmem_device_read +EXPORT_SYMBOL_GPL vmlinux 0xc9817c70 pm_relax +EXPORT_SYMBOL_GPL vmlinux 0xc9827693 __bpf_call_base +EXPORT_SYMBOL_GPL vmlinux 0xc9863b32 subsys_system_register +EXPORT_SYMBOL_GPL vmlinux 0xc987f11a tcp_unregister_ulp +EXPORT_SYMBOL_GPL vmlinux 0xc988def4 usb_match_one_id +EXPORT_SYMBOL_GPL vmlinux 0xc9a228ce property_entries_free +EXPORT_SYMBOL_GPL vmlinux 0xc9aa1203 hwrng_register +EXPORT_SYMBOL_GPL vmlinux 0xc9bb959d ata_sff_tf_read +EXPORT_SYMBOL_GPL vmlinux 0xc9c1f42f unregister_kprobes +EXPORT_SYMBOL_GPL vmlinux 0xc9c42799 skcipher_walk_aead_encrypt +EXPORT_SYMBOL_GPL vmlinux 0xc9d393da sbitmap_queue_wake_up +EXPORT_SYMBOL_GPL vmlinux 0xc9ec4e21 free_percpu +EXPORT_SYMBOL_GPL vmlinux 0xc9f3347b netlink_remove_tap +EXPORT_SYMBOL_GPL vmlinux 0xc9f3de5e pm_generic_suspend_late +EXPORT_SYMBOL_GPL vmlinux 0xc9f4de70 of_property_read_variable_u64_array +EXPORT_SYMBOL_GPL vmlinux 0xc9fb00f7 pl320_ipc_transmit +EXPORT_SYMBOL_GPL vmlinux 0xc9fd634a usb_role_switch_put +EXPORT_SYMBOL_GPL vmlinux 0xca12f97c of_dma_is_coherent +EXPORT_SYMBOL_GPL vmlinux 0xca17dfc5 of_property_read_variable_u16_array +EXPORT_SYMBOL_GPL vmlinux 0xca1bcc12 tty_port_link_device +EXPORT_SYMBOL_GPL vmlinux 0xca2b81f5 clk_hw_is_enabled +EXPORT_SYMBOL_GPL vmlinux 0xca2ec968 mm_unaccount_pinned_pages +EXPORT_SYMBOL_GPL vmlinux 0xca30fa89 thermal_zone_get_temp +EXPORT_SYMBOL_GPL vmlinux 0xca3ab270 __tracepoint_map +EXPORT_SYMBOL_GPL vmlinux 0xca467318 hibernation_set_ops +EXPORT_SYMBOL_GPL vmlinux 0xca62d265 snd_soc_info_volsw_sx +EXPORT_SYMBOL_GPL vmlinux 0xca683870 __devm_alloc_percpu +EXPORT_SYMBOL_GPL vmlinux 0xca759a75 gpiochip_line_is_valid +EXPORT_SYMBOL_GPL vmlinux 0xca766854 tcp_sendmsg_locked +EXPORT_SYMBOL_GPL vmlinux 0xca7d8764 kthread_freezable_should_stop +EXPORT_SYMBOL_GPL vmlinux 0xca7fdd82 phy_driver_is_genphy_10g +EXPORT_SYMBOL_GPL vmlinux 0xca88dada regulator_register +EXPORT_SYMBOL_GPL vmlinux 0xca9a1d5e ring_buffer_free +EXPORT_SYMBOL_GPL vmlinux 0xcaa5299e skb_to_sgvec +EXPORT_SYMBOL_GPL vmlinux 0xcaa71f39 dev_pm_qos_remove_request +EXPORT_SYMBOL_GPL vmlinux 0xcabe04de cpuidle_resume_and_unlock +EXPORT_SYMBOL_GPL vmlinux 0xcabe1206 list_lru_destroy +EXPORT_SYMBOL_GPL vmlinux 0xcad805df efivars_kobject +EXPORT_SYMBOL_GPL vmlinux 0xcade6d41 __tracepoint_pelt_cfs_tp +EXPORT_SYMBOL_GPL vmlinux 0xcae60de3 usb_deregister +EXPORT_SYMBOL_GPL vmlinux 0xcaeab027 of_clk_get_parent_name +EXPORT_SYMBOL_GPL vmlinux 0xcaf27af9 rdev_get_id +EXPORT_SYMBOL_GPL vmlinux 0xcaf4a30b ata_port_wait_eh +EXPORT_SYMBOL_GPL vmlinux 0xcaf7bff3 tps6586x_write +EXPORT_SYMBOL_GPL vmlinux 0xcb0a447c nand_gpio_waitrdy +EXPORT_SYMBOL_GPL vmlinux 0xcb0d7545 sk_set_peek_off +EXPORT_SYMBOL_GPL vmlinux 0xcb15eee9 sdhci_pci_get_data +EXPORT_SYMBOL_GPL vmlinux 0xcb2bfe2b nvmem_register_notifier +EXPORT_SYMBOL_GPL vmlinux 0xcb30703f fixed_phy_change_carrier +EXPORT_SYMBOL_GPL vmlinux 0xcb330b3d of_hwspin_lock_get_id +EXPORT_SYMBOL_GPL vmlinux 0xcb4ed46e nand_ecc_choose_conf +EXPORT_SYMBOL_GPL vmlinux 0xcb5a258e rtm_getroute_parse_ip_proto +EXPORT_SYMBOL_GPL vmlinux 0xcb81776c snd_soc_tplg_widget_bind_event +EXPORT_SYMBOL_GPL vmlinux 0xcb96d84f pm_runtime_irq_safe +EXPORT_SYMBOL_GPL vmlinux 0xcb99cc88 strp_check_rcv +EXPORT_SYMBOL_GPL vmlinux 0xcbbc25a7 ping_seq_stop +EXPORT_SYMBOL_GPL vmlinux 0xcbbc30a9 pci_generic_config_read32 +EXPORT_SYMBOL_GPL vmlinux 0xcbe56bc2 zs_get_total_pages +EXPORT_SYMBOL_GPL vmlinux 0xcc07eb7a led_set_brightness_nopm +EXPORT_SYMBOL_GPL vmlinux 0xcc0c7578 __regmap_init_spi +EXPORT_SYMBOL_GPL vmlinux 0xcc20ac52 hrtimer_forward +EXPORT_SYMBOL_GPL vmlinux 0xcc2dbfd8 irq_domain_check_msi_remap +EXPORT_SYMBOL_GPL vmlinux 0xcc312197 clk_mux_ops +EXPORT_SYMBOL_GPL vmlinux 0xcc39c03e nvmem_unregister +EXPORT_SYMBOL_GPL vmlinux 0xcc44acd1 devm_hwrng_register +EXPORT_SYMBOL_GPL vmlinux 0xcc691ab5 snd_soc_dapm_add_routes +EXPORT_SYMBOL_GPL vmlinux 0xcc7d46b6 rio_pw_enable +EXPORT_SYMBOL_GPL vmlinux 0xcc81ef86 fuse_get_unique +EXPORT_SYMBOL_GPL vmlinux 0xcc8cb946 netdev_walk_all_lower_dev +EXPORT_SYMBOL_GPL vmlinux 0xcc994a9f usb_hcd_pci_shutdown +EXPORT_SYMBOL_GPL vmlinux 0xcc9e76c4 tty_port_install +EXPORT_SYMBOL_GPL vmlinux 0xcca2e25e regmap_async_complete_cb +EXPORT_SYMBOL_GPL vmlinux 0xcca882a8 md_bitmap_resize +EXPORT_SYMBOL_GPL vmlinux 0xccaba888 page_cache_sync_readahead +EXPORT_SYMBOL_GPL vmlinux 0xccbe13e2 dev_pm_opp_remove_all_dynamic +EXPORT_SYMBOL_GPL vmlinux 0xcccb10a7 tps65912_device_init +EXPORT_SYMBOL_GPL vmlinux 0xcccfb2fa sata_deb_timing_hotplug +EXPORT_SYMBOL_GPL vmlinux 0xccd344ac devm_nvmem_register +EXPORT_SYMBOL_GPL vmlinux 0xccd86806 ata_id_string +EXPORT_SYMBOL_GPL vmlinux 0xcce1cd57 __hrtimer_get_remaining +EXPORT_SYMBOL_GPL vmlinux 0xccf52bc9 sfp_upstream_start +EXPORT_SYMBOL_GPL vmlinux 0xccf6c344 phy_put +EXPORT_SYMBOL_GPL vmlinux 0xcd015ac7 mtd_ooblayout_count_eccbytes +EXPORT_SYMBOL_GPL vmlinux 0xcd0ca08b tcp_is_ulp_esp +EXPORT_SYMBOL_GPL vmlinux 0xcd15a15e pm_genpd_init +EXPORT_SYMBOL_GPL vmlinux 0xcd24e146 hash_digest_size +EXPORT_SYMBOL_GPL vmlinux 0xcd27e2c0 platform_device_del +EXPORT_SYMBOL_GPL vmlinux 0xcd28e5cc iomap_migrate_page +EXPORT_SYMBOL_GPL vmlinux 0xcd2c38fc of_irq_to_resource_table +EXPORT_SYMBOL_GPL vmlinux 0xcd2e8fce cgroup_rstat_updated +EXPORT_SYMBOL_GPL vmlinux 0xcd3bb4d2 watchdog_register_device +EXPORT_SYMBOL_GPL vmlinux 0xcd55886e snd_soc_jack_free_gpios +EXPORT_SYMBOL_GPL vmlinux 0xcd5a2004 usb_add_hcd +EXPORT_SYMBOL_GPL vmlinux 0xcd61918d usb_gen_phy_shutdown +EXPORT_SYMBOL_GPL vmlinux 0xcd6f2dc9 nf_log_buf_add +EXPORT_SYMBOL_GPL vmlinux 0xcd8368c2 crypto_register_ahashes +EXPORT_SYMBOL_GPL vmlinux 0xcd8ca08a sysfs_remove_link +EXPORT_SYMBOL_GPL vmlinux 0xcd906368 ohci_init_driver +EXPORT_SYMBOL_GPL vmlinux 0xcd91b127 system_highpri_wq +EXPORT_SYMBOL_GPL vmlinux 0xcd94d159 gpiochip_reqres_irq +EXPORT_SYMBOL_GPL vmlinux 0xcd974f00 rcu_all_qs +EXPORT_SYMBOL_GPL vmlinux 0xcd994d6a device_get_next_child_node +EXPORT_SYMBOL_GPL vmlinux 0xcd9cd2ff wakeme_after_rcu +EXPORT_SYMBOL_GPL vmlinux 0xcdb30878 cpts_unregister +EXPORT_SYMBOL_GPL vmlinux 0xcdb6adcc ras_userspace_consumers +EXPORT_SYMBOL_GPL vmlinux 0xcdca3691 nr_irqs +EXPORT_SYMBOL_GPL vmlinux 0xcdd3c046 do_xdp_generic +EXPORT_SYMBOL_GPL vmlinux 0xcde1d97a rockchip_pcie_get_phys +EXPORT_SYMBOL_GPL vmlinux 0xce009978 console_drivers +EXPORT_SYMBOL_GPL vmlinux 0xce031fd3 mtd_lock_user_prot_reg +EXPORT_SYMBOL_GPL vmlinux 0xce2e7e0c snd_pcm_stream_lock +EXPORT_SYMBOL_GPL vmlinux 0xce325405 snd_ctl_add_vmaster_hook +EXPORT_SYMBOL_GPL vmlinux 0xce32effa tty_wakeup +EXPORT_SYMBOL_GPL vmlinux 0xce4bc9cb sdhci_cqe_irq +EXPORT_SYMBOL_GPL vmlinux 0xce4f823a crypto_unregister_scomp +EXPORT_SYMBOL_GPL vmlinux 0xce4ff082 virtqueue_enable_cb_prepare +EXPORT_SYMBOL_GPL vmlinux 0xce5143c3 of_prop_next_u32 +EXPORT_SYMBOL_GPL vmlinux 0xce553d39 srcu_notifier_chain_unregister +EXPORT_SYMBOL_GPL vmlinux 0xce562fd1 sbitmap_queue_wake_all +EXPORT_SYMBOL_GPL vmlinux 0xce56fbdb usb_autopm_get_interface +EXPORT_SYMBOL_GPL vmlinux 0xce6b30a3 tps65217_reg_write +EXPORT_SYMBOL_GPL vmlinux 0xce6db656 rcu_is_watching +EXPORT_SYMBOL_GPL vmlinux 0xce6e1630 wm831x_reg_unlock +EXPORT_SYMBOL_GPL vmlinux 0xceab6a90 uprobe_register +EXPORT_SYMBOL_GPL vmlinux 0xcebd3fa6 user_destroy +EXPORT_SYMBOL_GPL vmlinux 0xcec811a4 devres_remove_group +EXPORT_SYMBOL_GPL vmlinux 0xcec93c92 pm_runtime_no_callbacks +EXPORT_SYMBOL_GPL vmlinux 0xced3d542 gpiochip_remove_pin_ranges +EXPORT_SYMBOL_GPL vmlinux 0xcee1641c kgdb_unregister_nmi_console +EXPORT_SYMBOL_GPL vmlinux 0xcee54322 power_supply_set_property +EXPORT_SYMBOL_GPL vmlinux 0xcee88e7a of_overlay_fdt_apply +EXPORT_SYMBOL_GPL vmlinux 0xcef4d5b4 __alloc_percpu_gfp +EXPORT_SYMBOL_GPL vmlinux 0xcf00a7ad dax_region_put +EXPORT_SYMBOL_GPL vmlinux 0xcf0991f5 hrtimer_init_sleeper +EXPORT_SYMBOL_GPL vmlinux 0xcf0e71c2 fat_get_dotdot_entry +EXPORT_SYMBOL_GPL vmlinux 0xcf28f55e trace_clock_global +EXPORT_SYMBOL_GPL vmlinux 0xcf4521db dw_pcie_link_set_n_fts +EXPORT_SYMBOL_GPL vmlinux 0xcf45d0e4 __pm_runtime_resume +EXPORT_SYMBOL_GPL vmlinux 0xcf484b50 kthread_park +EXPORT_SYMBOL_GPL vmlinux 0xcf54ea93 async_unregister_domain +EXPORT_SYMBOL_GPL vmlinux 0xcf77b6bc bpf_trace_run4 +EXPORT_SYMBOL_GPL vmlinux 0xcf788afe shmem_read_mapping_page_gfp +EXPORT_SYMBOL_GPL vmlinux 0xcf79ee8b vfs_submount +EXPORT_SYMBOL_GPL vmlinux 0xcf7d0d32 dev_fill_metadata_dst +EXPORT_SYMBOL_GPL vmlinux 0xcf8d72d7 regmap_add_irq_chip +EXPORT_SYMBOL_GPL vmlinux 0xcf924c3f sdio_get_host_pm_caps +EXPORT_SYMBOL_GPL vmlinux 0xcfc5108a devlink_fmsg_u8_pair_put +EXPORT_SYMBOL_GPL vmlinux 0xcfc7b4e4 rcu_barrier_tasks_trace +EXPORT_SYMBOL_GPL vmlinux 0xcfc7c3ed tty_ldisc_flush +EXPORT_SYMBOL_GPL vmlinux 0xcfd6d5d4 tcp_slow_start +EXPORT_SYMBOL_GPL vmlinux 0xcfed453e irq_chip_disable_parent +EXPORT_SYMBOL_GPL vmlinux 0xd0097a91 devm_hwspin_lock_register +EXPORT_SYMBOL_GPL vmlinux 0xd010ce60 driver_register +EXPORT_SYMBOL_GPL vmlinux 0xd0166e04 lwtunnel_encap_add_ops +EXPORT_SYMBOL_GPL vmlinux 0xd0213e2b devm_of_platform_depopulate +EXPORT_SYMBOL_GPL vmlinux 0xd03eaf4c schedule_hrtimeout_range +EXPORT_SYMBOL_GPL vmlinux 0xd0575ab7 snd_pcm_stream_unlock_irqrestore +EXPORT_SYMBOL_GPL vmlinux 0xd06524ba raw_notifier_chain_unregister +EXPORT_SYMBOL_GPL vmlinux 0xd067d3c5 system_freezable_power_efficient_wq +EXPORT_SYMBOL_GPL vmlinux 0xd06ecd9a __hwspin_unlock +EXPORT_SYMBOL_GPL vmlinux 0xd0707a0d simple_attr_release +EXPORT_SYMBOL_GPL vmlinux 0xd099c5c1 devm_thermal_add_hwmon_sysfs +EXPORT_SYMBOL_GPL vmlinux 0xd09c3fe5 pinmux_generic_add_function +EXPORT_SYMBOL_GPL vmlinux 0xd09fa27b iterate_mounts +EXPORT_SYMBOL_GPL vmlinux 0xd0a00623 power_supply_register_no_ws +EXPORT_SYMBOL_GPL vmlinux 0xd0a50642 led_trigger_unregister_simple +EXPORT_SYMBOL_GPL vmlinux 0xd0b26cf8 mpc8xxx_spi_tx_buf_u32 +EXPORT_SYMBOL_GPL vmlinux 0xd0c05159 emergency_restart +EXPORT_SYMBOL_GPL vmlinux 0xd0c79604 iommu_map_atomic +EXPORT_SYMBOL_GPL vmlinux 0xd0cce5f6 of_get_named_gpio_flags +EXPORT_SYMBOL_GPL vmlinux 0xd0db0f12 run_dax +EXPORT_SYMBOL_GPL vmlinux 0xd0fe6e04 ata_pci_device_resume +EXPORT_SYMBOL_GPL vmlinux 0xd101762c power_supply_register +EXPORT_SYMBOL_GPL vmlinux 0xd12159a7 stack_trace_snprint +EXPORT_SYMBOL_GPL vmlinux 0xd142f6fe ata_do_set_mode +EXPORT_SYMBOL_GPL vmlinux 0xd15c8f6c tcp_twsk_unique +EXPORT_SYMBOL_GPL vmlinux 0xd1620dec iomap_writepages +EXPORT_SYMBOL_GPL vmlinux 0xd16228ab noop_backing_dev_info +EXPORT_SYMBOL_GPL vmlinux 0xd16a76b3 spi_mem_dirmap_write +EXPORT_SYMBOL_GPL vmlinux 0xd16aeb37 __ata_ehi_push_desc +EXPORT_SYMBOL_GPL vmlinux 0xd16c9628 icc_link_destroy +EXPORT_SYMBOL_GPL vmlinux 0xd18e7239 devfreq_event_get_event +EXPORT_SYMBOL_GPL vmlinux 0xd1962fcb rt_mutex_unlock +EXPORT_SYMBOL_GPL vmlinux 0xd1969c4f devm_regmap_add_irq_chip_np +EXPORT_SYMBOL_GPL vmlinux 0xd1b0a33b dma_async_device_channel_register +EXPORT_SYMBOL_GPL vmlinux 0xd1b4ace6 rio_del_device +EXPORT_SYMBOL_GPL vmlinux 0xd1c1a17e usb_unpoison_urb +EXPORT_SYMBOL_GPL vmlinux 0xd1c54073 clk_bulk_get_optional +EXPORT_SYMBOL_GPL vmlinux 0xd1cbc23c add_timer_on +EXPORT_SYMBOL_GPL vmlinux 0xd1f0205c shash_free_singlespawn_instance +EXPORT_SYMBOL_GPL vmlinux 0xd1f2eee2 nf_logger_find_get +EXPORT_SYMBOL_GPL vmlinux 0xd1ff96b4 snd_soc_add_component_controls +EXPORT_SYMBOL_GPL vmlinux 0xd200993d regulator_set_voltage_time +EXPORT_SYMBOL_GPL vmlinux 0xd203eaa7 snd_soc_component_force_enable_pin_unlocked +EXPORT_SYMBOL_GPL vmlinux 0xd20a9c3d regmap_field_alloc +EXPORT_SYMBOL_GPL vmlinux 0xd20bf6ba dcookie_unregister +EXPORT_SYMBOL_GPL vmlinux 0xd213dedf __usb_create_hcd +EXPORT_SYMBOL_GPL vmlinux 0xd217e9e6 trace_set_clr_event +EXPORT_SYMBOL_GPL vmlinux 0xd21b61bd async_schedule_node_domain +EXPORT_SYMBOL_GPL vmlinux 0xd21cb4fc alarm_forward_now +EXPORT_SYMBOL_GPL vmlinux 0xd21d58e8 pci_find_next_ht_capability +EXPORT_SYMBOL_GPL vmlinux 0xd22dae7b usb_gadget_probe_driver +EXPORT_SYMBOL_GPL vmlinux 0xd2306115 snd_soc_info_volsw +EXPORT_SYMBOL_GPL vmlinux 0xd23858fa of_find_spi_device_by_node +EXPORT_SYMBOL_GPL vmlinux 0xd238ad09 virtqueue_kick_prepare +EXPORT_SYMBOL_GPL vmlinux 0xd23d2036 of_genpd_add_provider_onecell +EXPORT_SYMBOL_GPL vmlinux 0xd25dd478 icc_nodes_remove +EXPORT_SYMBOL_GPL vmlinux 0xd25e1350 devm_regmap_field_free +EXPORT_SYMBOL_GPL vmlinux 0xd260af0d ring_buffer_write +EXPORT_SYMBOL_GPL vmlinux 0xd266e5eb gpio_to_desc +EXPORT_SYMBOL_GPL vmlinux 0xd266eb7d device_match_fwnode +EXPORT_SYMBOL_GPL vmlinux 0xd273b1b1 __round_jiffies_up_relative +EXPORT_SYMBOL_GPL vmlinux 0xd27d7d91 pciserial_init_ports +EXPORT_SYMBOL_GPL vmlinux 0xd286c953 rtc_update_irq_enable +EXPORT_SYMBOL_GPL vmlinux 0xd2922323 crypto_ahash_finup +EXPORT_SYMBOL_GPL vmlinux 0xd2a10307 usb_gadget_wakeup +EXPORT_SYMBOL_GPL vmlinux 0xd2a3b316 synchronize_srcu_expedited +EXPORT_SYMBOL_GPL vmlinux 0xd2ad3f07 snd_soc_jack_add_zones +EXPORT_SYMBOL_GPL vmlinux 0xd2b10a05 ata_timing_find_mode +EXPORT_SYMBOL_GPL vmlinux 0xd2d05ef0 snd_soc_get_volsw_sx +EXPORT_SYMBOL_GPL vmlinux 0xd2dc87a8 ohci_setup +EXPORT_SYMBOL_GPL vmlinux 0xd2dd4812 phy_basic_features +EXPORT_SYMBOL_GPL vmlinux 0xd2e09787 crypto_grab_spawn +EXPORT_SYMBOL_GPL vmlinux 0xd2e6b444 da903x_clr_bits +EXPORT_SYMBOL_GPL vmlinux 0xd303ead4 snd_soc_bytes_tlv_callback +EXPORT_SYMBOL_GPL vmlinux 0xd31197f5 sock_zerocopy_put_abort +EXPORT_SYMBOL_GPL vmlinux 0xd315aa8b of_clk_src_onecell_get +EXPORT_SYMBOL_GPL vmlinux 0xd31a2ac5 ring_buffer_oldest_event_ts +EXPORT_SYMBOL_GPL vmlinux 0xd320930d dax_inode +EXPORT_SYMBOL_GPL vmlinux 0xd330b7da blk_mq_sched_mark_restart_hctx +EXPORT_SYMBOL_GPL vmlinux 0xd339d793 ata_bmdma_dumb_qc_prep +EXPORT_SYMBOL_GPL vmlinux 0xd33acc1f pinctrl_dev_get_drvdata +EXPORT_SYMBOL_GPL vmlinux 0xd33ada8b cci_probed +EXPORT_SYMBOL_GPL vmlinux 0xd35fc3cc css_next_descendant_pre +EXPORT_SYMBOL_GPL vmlinux 0xd3738f35 __inode_attach_wb +EXPORT_SYMBOL_GPL vmlinux 0xd378022e regulator_unregister +EXPORT_SYMBOL_GPL vmlinux 0xd37cde94 rio_request_dma +EXPORT_SYMBOL_GPL vmlinux 0xd38fbf27 rio_enable_rx_tx_port +EXPORT_SYMBOL_GPL vmlinux 0xd39071e6 region_intersects +EXPORT_SYMBOL_GPL vmlinux 0xd393d177 irq_domain_remove +EXPORT_SYMBOL_GPL vmlinux 0xd39712ef iommu_map_sg +EXPORT_SYMBOL_GPL vmlinux 0xd39e9848 put_itimerspec64 +EXPORT_SYMBOL_GPL vmlinux 0xd3af446b wm8350_clear_bits +EXPORT_SYMBOL_GPL vmlinux 0xd3b67187 led_sysfs_enable +EXPORT_SYMBOL_GPL vmlinux 0xd3c0a31a snd_soc_of_parse_node_prefix +EXPORT_SYMBOL_GPL vmlinux 0xd3c227b8 blkdev_ioctl +EXPORT_SYMBOL_GPL vmlinux 0xd3c672b8 nand_subop_get_data_len +EXPORT_SYMBOL_GPL vmlinux 0xd3d8b68c devm_led_trigger_register +EXPORT_SYMBOL_GPL vmlinux 0xd3f62a7e generic_file_buffered_read +EXPORT_SYMBOL_GPL vmlinux 0xd3f8f3f4 page_poisoning_enabled +EXPORT_SYMBOL_GPL vmlinux 0xd400c9e8 musb_get_mode +EXPORT_SYMBOL_GPL vmlinux 0xd4034828 system_freezable_wq +EXPORT_SYMBOL_GPL vmlinux 0xd405e8ce bio_alloc_mddev +EXPORT_SYMBOL_GPL vmlinux 0xd406d0bb bus_for_each_drv +EXPORT_SYMBOL_GPL vmlinux 0xd41ff2ac nand_subop_get_data_start_off +EXPORT_SYMBOL_GPL vmlinux 0xd432ca9f iommu_iova_to_phys +EXPORT_SYMBOL_GPL vmlinux 0xd449f4b4 bpf_offload_dev_netdev_register +EXPORT_SYMBOL_GPL vmlinux 0xd44a5eac kgdb_register_nmi_console +EXPORT_SYMBOL_GPL vmlinux 0xd454d9b2 kthread_data +EXPORT_SYMBOL_GPL vmlinux 0xd4621941 usb_bulk_msg +EXPORT_SYMBOL_GPL vmlinux 0xd46ae9b9 tty_buffer_request_room +EXPORT_SYMBOL_GPL vmlinux 0xd474bb62 platform_device_add +EXPORT_SYMBOL_GPL vmlinux 0xd492ae73 arizona_request_irq +EXPORT_SYMBOL_GPL vmlinux 0xd49c4559 i2c_dw_configure_master +EXPORT_SYMBOL_GPL vmlinux 0xd4b108eb badblocks_exit +EXPORT_SYMBOL_GPL vmlinux 0xd4b4c17b rdev_set_badblocks +EXPORT_SYMBOL_GPL vmlinux 0xd4b4dc18 devlink_register +EXPORT_SYMBOL_GPL vmlinux 0xd4b6157e devlink_health_reporter_recovery_done +EXPORT_SYMBOL_GPL vmlinux 0xd4b9abba tcp_register_ulp +EXPORT_SYMBOL_GPL vmlinux 0xd4beac3b snd_soc_close_delayed_work +EXPORT_SYMBOL_GPL vmlinux 0xd4c14632 system_unbound_wq +EXPORT_SYMBOL_GPL vmlinux 0xd4c15442 pinctrl_utils_add_map_mux +EXPORT_SYMBOL_GPL vmlinux 0xd4e6d7e0 linear_range_get_value +EXPORT_SYMBOL_GPL vmlinux 0xd4e90707 elv_unregister +EXPORT_SYMBOL_GPL vmlinux 0xd4f77b9f blk_mq_unquiesce_queue +EXPORT_SYMBOL_GPL vmlinux 0xd500769b regmap_async_complete +EXPORT_SYMBOL_GPL vmlinux 0xd5032cd9 thermal_zone_of_sensor_unregister +EXPORT_SYMBOL_GPL vmlinux 0xd52d75c6 nf_ct_hook +EXPORT_SYMBOL_GPL vmlinux 0xd5301b2c linear_range_get_max_value +EXPORT_SYMBOL_GPL vmlinux 0xd53e1b50 pci_bus_resource_n +EXPORT_SYMBOL_GPL vmlinux 0xd5474690 usb_role_switch_set_role +EXPORT_SYMBOL_GPL vmlinux 0xd54b313b nand_deselect_target +EXPORT_SYMBOL_GPL vmlinux 0xd5563dd7 set_selection_kernel +EXPORT_SYMBOL_GPL vmlinux 0xd55ad93b iommu_group_get_iommudata +EXPORT_SYMBOL_GPL vmlinux 0xd55ec5c0 __nf_ip6_route +EXPORT_SYMBOL_GPL vmlinux 0xd562853b snd_soc_component_set_sysclk +EXPORT_SYMBOL_GPL vmlinux 0xd56e0b32 md_find_rdev_nr_rcu +EXPORT_SYMBOL_GPL vmlinux 0xd575c74d cpufreq_disable_fast_switch +EXPORT_SYMBOL_GPL vmlinux 0xd59a1587 linkmode_resolve_pause +EXPORT_SYMBOL_GPL vmlinux 0xd5a25d13 snd_soc_info_volsw_range +EXPORT_SYMBOL_GPL vmlinux 0xd5a90a2f snd_soc_get_pcm_runtime +EXPORT_SYMBOL_GPL vmlinux 0xd5abe1f9 md_find_rdev_rcu +EXPORT_SYMBOL_GPL vmlinux 0xd5ac24e5 blocking_notifier_chain_register +EXPORT_SYMBOL_GPL vmlinux 0xd5e2423f percpu_ref_init +EXPORT_SYMBOL_GPL vmlinux 0xd5e5f76f usb_control_msg +EXPORT_SYMBOL_GPL vmlinux 0xd5ec0ad9 subsys_dev_iter_init +EXPORT_SYMBOL_GPL vmlinux 0xd60854a7 rtc_update_irq +EXPORT_SYMBOL_GPL vmlinux 0xd6164816 blkg_rwstat_exit +EXPORT_SYMBOL_GPL vmlinux 0xd62228ad edac_pci_handle_pe +EXPORT_SYMBOL_GPL vmlinux 0xd637e850 usb_phy_generic_register +EXPORT_SYMBOL_GPL vmlinux 0xd63ce82a __tracepoint_cpu_frequency +EXPORT_SYMBOL_GPL vmlinux 0xd64618ab hwmon_device_register_with_groups +EXPORT_SYMBOL_GPL vmlinux 0xd64ed259 __memcat_p +EXPORT_SYMBOL_GPL vmlinux 0xd653b126 sched_clock +EXPORT_SYMBOL_GPL vmlinux 0xd667b39a soc_device_match +EXPORT_SYMBOL_GPL vmlinux 0xd67364f7 eventfd_ctx_fdget +EXPORT_SYMBOL_GPL vmlinux 0xd67c99b6 usb_enable_ltm +EXPORT_SYMBOL_GPL vmlinux 0xd67e555a ata_pci_sff_prepare_host +EXPORT_SYMBOL_GPL vmlinux 0xd68695bf ip6_dst_lookup +EXPORT_SYMBOL_GPL vmlinux 0xd687e87d rio_mport_write_config_8 +EXPORT_SYMBOL_GPL vmlinux 0xd6899af2 posix_clock_unregister +EXPORT_SYMBOL_GPL vmlinux 0xd69038cb icc_link_create +EXPORT_SYMBOL_GPL vmlinux 0xd69d5768 efivar_entry_remove +EXPORT_SYMBOL_GPL vmlinux 0xd6a74ef3 devres_open_group +EXPORT_SYMBOL_GPL vmlinux 0xd6ab64d6 device_match_devt +EXPORT_SYMBOL_GPL vmlinux 0xd6c2a739 rio_mport_get_feature +EXPORT_SYMBOL_GPL vmlinux 0xd6c3dec7 shash_register_instance +EXPORT_SYMBOL_GPL vmlinux 0xd6d51261 __scsi_init_queue +EXPORT_SYMBOL_GPL vmlinux 0xd6d73a76 musb_root_disconnect +EXPORT_SYMBOL_GPL vmlinux 0xd6f8d853 gpiod_put_array +EXPORT_SYMBOL_GPL vmlinux 0xd7010d7e dev_pm_qos_add_notifier +EXPORT_SYMBOL_GPL vmlinux 0xd7092819 snd_soc_component_test_bits +EXPORT_SYMBOL_GPL vmlinux 0xd70b78ce devm_hwmon_device_register_with_groups +EXPORT_SYMBOL_GPL vmlinux 0xd70baa59 __device_reset +EXPORT_SYMBOL_GPL vmlinux 0xd70bcbc0 bus_create_file +EXPORT_SYMBOL_GPL vmlinux 0xd71f73e7 mtd_ooblayout_ecc +EXPORT_SYMBOL_GPL vmlinux 0xd72ce666 input_class +EXPORT_SYMBOL_GPL vmlinux 0xd7399d2a efivar_entry_iter_end +EXPORT_SYMBOL_GPL vmlinux 0xd7614723 wm5110_spi_regmap +EXPORT_SYMBOL_GPL vmlinux 0xd766e8f2 btree_init_mempool +EXPORT_SYMBOL_GPL vmlinux 0xd767c02a ahci_platform_disable_resources +EXPORT_SYMBOL_GPL vmlinux 0xd768e985 regulator_has_full_constraints +EXPORT_SYMBOL_GPL vmlinux 0xd76ed683 devm_regmap_init_vexpress_config +EXPORT_SYMBOL_GPL vmlinux 0xd7953983 fib_rules_seq_read +EXPORT_SYMBOL_GPL vmlinux 0xd7b411cb __irq_alloc_descs +EXPORT_SYMBOL_GPL vmlinux 0xd7c35343 fsnotify_init_mark +EXPORT_SYMBOL_GPL vmlinux 0xd7d27300 device_find_child +EXPORT_SYMBOL_GPL vmlinux 0xd7e04bd6 pinctrl_get +EXPORT_SYMBOL_GPL vmlinux 0xd7e9b8ff __devm_irq_alloc_descs +EXPORT_SYMBOL_GPL vmlinux 0xd7f73970 rio_unregister_mport +EXPORT_SYMBOL_GPL vmlinux 0xd7f8c8f2 pci_scan_child_bus +EXPORT_SYMBOL_GPL vmlinux 0xd81bbe58 rhashtable_walk_start_check +EXPORT_SYMBOL_GPL vmlinux 0xd81ecd19 devm_regulator_register_supply_alias +EXPORT_SYMBOL_GPL vmlinux 0xd824bd5d snd_soc_add_pcm_runtime +EXPORT_SYMBOL_GPL vmlinux 0xd8267b15 usb_of_get_device_node +EXPORT_SYMBOL_GPL vmlinux 0xd82c5fc1 task_cputime_adjusted +EXPORT_SYMBOL_GPL vmlinux 0xd83b4213 virtio_max_dma_size +EXPORT_SYMBOL_GPL vmlinux 0xd84870e5 perf_pmu_register +EXPORT_SYMBOL_GPL vmlinux 0xd8497d56 platform_device_unregister +EXPORT_SYMBOL_GPL vmlinux 0xd84b33b0 gpiochip_irq_domain_activate +EXPORT_SYMBOL_GPL vmlinux 0xd84d35bd dax_read_lock +EXPORT_SYMBOL_GPL vmlinux 0xd8585277 md_stop_writes +EXPORT_SYMBOL_GPL vmlinux 0xd85c31d0 security_path_link +EXPORT_SYMBOL_GPL vmlinux 0xd86aaa90 mtk_pinconf_drive_get_raw +EXPORT_SYMBOL_GPL vmlinux 0xd8773917 snd_soc_register_card +EXPORT_SYMBOL_GPL vmlinux 0xd87a11cb dev_pm_opp_get_max_volt_latency +EXPORT_SYMBOL_GPL vmlinux 0xd87fc0a0 usb_amd_prefetch_quirk +EXPORT_SYMBOL_GPL vmlinux 0xd886c75c ping_common_sendmsg +EXPORT_SYMBOL_GPL vmlinux 0xd89b3769 snd_soc_put_strobe +EXPORT_SYMBOL_GPL vmlinux 0xd8c2cdd5 cpufreq_generic_init +EXPORT_SYMBOL_GPL vmlinux 0xd8c8bdee vring_transport_features +EXPORT_SYMBOL_GPL vmlinux 0xd8cda5bf snd_soc_runtime_set_dai_fmt +EXPORT_SYMBOL_GPL vmlinux 0xd8d24416 hisi_clk_register_mux +EXPORT_SYMBOL_GPL vmlinux 0xd8d654ca list_lru_count_node +EXPORT_SYMBOL_GPL vmlinux 0xd8d68ab1 dmi_memdev_type +EXPORT_SYMBOL_GPL vmlinux 0xd8dca8c1 usb_ep_set_halt +EXPORT_SYMBOL_GPL vmlinux 0xd8e0372c ahci_reset_em +EXPORT_SYMBOL_GPL vmlinux 0xd8efea81 dm_per_bio_data +EXPORT_SYMBOL_GPL vmlinux 0xd8f4cdda device_store_bool +EXPORT_SYMBOL_GPL vmlinux 0xd8f86817 da903x_update +EXPORT_SYMBOL_GPL vmlinux 0xd902f9f8 regulator_get_voltage_sel_pickable_regmap +EXPORT_SYMBOL_GPL vmlinux 0xd9104446 devm_usb_get_phy +EXPORT_SYMBOL_GPL vmlinux 0xd9375c1c of_map_rid +EXPORT_SYMBOL_GPL vmlinux 0xd93c5466 pci_epc_get_features +EXPORT_SYMBOL_GPL vmlinux 0xd93f5183 da903x_set_bits +EXPORT_SYMBOL_GPL vmlinux 0xd94388e5 bsg_unregister_queue +EXPORT_SYMBOL_GPL vmlinux 0xd94b587b snd_soc_dpcm_runtime_update +EXPORT_SYMBOL_GPL vmlinux 0xd95dd8bf add_mtd_blktrans_dev +EXPORT_SYMBOL_GPL vmlinux 0xd96babb4 interval_tree_iter_next +EXPORT_SYMBOL_GPL vmlinux 0xd9885c82 tegra_bpmp_request_mrq +EXPORT_SYMBOL_GPL vmlinux 0xd990395c crypto_unregister_aead +EXPORT_SYMBOL_GPL vmlinux 0xd9bddeb7 skb_copy_ubufs +EXPORT_SYMBOL_GPL vmlinux 0xd9bde299 badblocks_init +EXPORT_SYMBOL_GPL vmlinux 0xd9c2fafa crypto_rng_reset +EXPORT_SYMBOL_GPL vmlinux 0xd9c399a3 debugfs_lookup +EXPORT_SYMBOL_GPL vmlinux 0xd9cac481 attribute_container_classdev_to_container +EXPORT_SYMBOL_GPL vmlinux 0xd9e24457 ring_buffer_peek +EXPORT_SYMBOL_GPL vmlinux 0xd9e328a2 crypto_cipher_encrypt_one +EXPORT_SYMBOL_GPL vmlinux 0xd9e98100 unregister_asymmetric_key_parser +EXPORT_SYMBOL_GPL vmlinux 0xd9f3e65f __tracepoint_suspend_resume +EXPORT_SYMBOL_GPL vmlinux 0xd9ff2172 ezx_pcap_write +EXPORT_SYMBOL_GPL vmlinux 0xda0a0e84 ehci_resume +EXPORT_SYMBOL_GPL vmlinux 0xda1129c8 __tracepoint_block_unplug +EXPORT_SYMBOL_GPL vmlinux 0xda1c802b bdev_disk_changed +EXPORT_SYMBOL_GPL vmlinux 0xda20df4a ahci_do_softreset +EXPORT_SYMBOL_GPL vmlinux 0xda2daf46 ip6_datagram_release_cb +EXPORT_SYMBOL_GPL vmlinux 0xda320d31 sfp_module_start +EXPORT_SYMBOL_GPL vmlinux 0xda413c39 sk_attach_filter +EXPORT_SYMBOL_GPL vmlinux 0xda45c2ca md_rdev_clear +EXPORT_SYMBOL_GPL vmlinux 0xda623912 devlink_reload_disable +EXPORT_SYMBOL_GPL vmlinux 0xda6b86b7 otg_ulpi_create +EXPORT_SYMBOL_GPL vmlinux 0xda6dbfdc serdev_controller_remove +EXPORT_SYMBOL_GPL vmlinux 0xda7c46c6 regulator_is_equal +EXPORT_SYMBOL_GPL vmlinux 0xda812dfa dev_set_name +EXPORT_SYMBOL_GPL vmlinux 0xda85ed66 regulator_get_drvdata +EXPORT_SYMBOL_GPL vmlinux 0xda8cc3b9 hwrng_unregister +EXPORT_SYMBOL_GPL vmlinux 0xda938d6f __sbitmap_queue_get +EXPORT_SYMBOL_GPL vmlinux 0xdaa0b752 sdio_signal_irq +EXPORT_SYMBOL_GPL vmlinux 0xdab5a1eb interval_tree_insert +EXPORT_SYMBOL_GPL vmlinux 0xdad435d6 pci_ecam_free +EXPORT_SYMBOL_GPL vmlinux 0xdaf4dfb3 fb_mode_option +EXPORT_SYMBOL_GPL vmlinux 0xdaf5c16e __cookie_v4_check +EXPORT_SYMBOL_GPL vmlinux 0xdafc7da7 iomap_truncate_page +EXPORT_SYMBOL_GPL vmlinux 0xdafcdc3a ktime_get_snapshot +EXPORT_SYMBOL_GPL vmlinux 0xdafee6b4 irq_chip_request_resources_parent +EXPORT_SYMBOL_GPL vmlinux 0xdb0e61d0 iommu_report_device_fault +EXPORT_SYMBOL_GPL vmlinux 0xdb242ecf __register_mtd_parser +EXPORT_SYMBOL_GPL vmlinux 0xdb254e0f phy_pm_runtime_get_sync +EXPORT_SYMBOL_GPL vmlinux 0xdb25da3e irq_work_queue +EXPORT_SYMBOL_GPL vmlinux 0xdb598e0e addrconf_add_linklocal +EXPORT_SYMBOL_GPL vmlinux 0xdb5a1b17 xdp_attachment_query +EXPORT_SYMBOL_GPL vmlinux 0xdb76c2c2 transport_destroy_device +EXPORT_SYMBOL_GPL vmlinux 0xdb7ae8a1 balloon_page_enqueue +EXPORT_SYMBOL_GPL vmlinux 0xdb7d1a84 dev_pm_qos_hide_latency_tolerance +EXPORT_SYMBOL_GPL vmlinux 0xdb8a1b3f usermodehelper_read_trylock +EXPORT_SYMBOL_GPL vmlinux 0xdba22696 software_node_register +EXPORT_SYMBOL_GPL vmlinux 0xdba7c24c sdhci_resume_host +EXPORT_SYMBOL_GPL vmlinux 0xdbb4a89f usb_gadget_set_state +EXPORT_SYMBOL_GPL vmlinux 0xdbc1967f md_bitmap_copy_from_slot +EXPORT_SYMBOL_GPL vmlinux 0xdbcdfc4a dev_pm_opp_set_supported_hw +EXPORT_SYMBOL_GPL vmlinux 0xdbd61ed4 __efivar_entry_iter +EXPORT_SYMBOL_GPL vmlinux 0xdbdf2eed gpiochip_free_own_desc +EXPORT_SYMBOL_GPL vmlinux 0xdbf2fb17 pci_probe_reset_slot +EXPORT_SYMBOL_GPL vmlinux 0xdbf7cb70 mpi_get_nbits +EXPORT_SYMBOL_GPL vmlinux 0xdc01fc71 snd_device_disconnect +EXPORT_SYMBOL_GPL vmlinux 0xdc09904b sdhci_reset_tuning +EXPORT_SYMBOL_GPL vmlinux 0xdc1ae6ec securityfs_create_symlink +EXPORT_SYMBOL_GPL vmlinux 0xdc1c7acd snd_dmaengine_pcm_close_release_chan +EXPORT_SYMBOL_GPL vmlinux 0xdc4f576f arizona_free_irq +EXPORT_SYMBOL_GPL vmlinux 0xdc50c8d2 __list_lru_init +EXPORT_SYMBOL_GPL vmlinux 0xdc57e0df fwnode_remove_software_node +EXPORT_SYMBOL_GPL vmlinux 0xdc6596fa irq_set_parent +EXPORT_SYMBOL_GPL vmlinux 0xdc7ce353 mv_mbus_dram_info_nooverlap +EXPORT_SYMBOL_GPL vmlinux 0xdc825d6c usb_amd_quirk_pll_disable +EXPORT_SYMBOL_GPL vmlinux 0xdc86e59f efivars_register +EXPORT_SYMBOL_GPL vmlinux 0xdc97af2e syscore_suspend +EXPORT_SYMBOL_GPL vmlinux 0xdc9eb827 ata_sff_hsm_move +EXPORT_SYMBOL_GPL vmlinux 0xdc9fa232 raw_notifier_chain_register +EXPORT_SYMBOL_GPL vmlinux 0xdca09bd8 dw8250_setup_port +EXPORT_SYMBOL_GPL vmlinux 0xdcbc6dfb __strp_unpause +EXPORT_SYMBOL_GPL vmlinux 0xdcd27691 snd_soc_of_get_dai_link_codecs +EXPORT_SYMBOL_GPL vmlinux 0xdce032b9 ata_scsi_ioctl +EXPORT_SYMBOL_GPL vmlinux 0xdcf005f8 tracepoint_srcu +EXPORT_SYMBOL_GPL vmlinux 0xdcf5f5fb led_stop_software_blink +EXPORT_SYMBOL_GPL vmlinux 0xdcfa7163 dma_buf_get +EXPORT_SYMBOL_GPL vmlinux 0xdd060504 kernel_read_file_from_fd +EXPORT_SYMBOL_GPL vmlinux 0xdd0762df set_worker_desc +EXPORT_SYMBOL_GPL vmlinux 0xdd0fd236 hisi_clk_register_phase +EXPORT_SYMBOL_GPL vmlinux 0xdd21316c nvmem_del_cell_table +EXPORT_SYMBOL_GPL vmlinux 0xdd2505a0 bus_get_device_klist +EXPORT_SYMBOL_GPL vmlinux 0xdd36be2b security_kernel_read_file +EXPORT_SYMBOL_GPL vmlinux 0xdd391eff profile_event_unregister +EXPORT_SYMBOL_GPL vmlinux 0xdd4107ce __devm_create_dev_dax +EXPORT_SYMBOL_GPL vmlinux 0xdd4d043d mmu_interval_read_begin +EXPORT_SYMBOL_GPL vmlinux 0xdd5083a9 shash_ahash_update +EXPORT_SYMBOL_GPL vmlinux 0xdd511253 genphy_c45_read_mdix +EXPORT_SYMBOL_GPL vmlinux 0xdd591609 devlink_trap_report +EXPORT_SYMBOL_GPL vmlinux 0xdd626ee3 fuse_len_args +EXPORT_SYMBOL_GPL vmlinux 0xdd69c88d led_trigger_event +EXPORT_SYMBOL_GPL vmlinux 0xdd7eeeab tegra_xusb_padctl_legacy_probe +EXPORT_SYMBOL_GPL vmlinux 0xdd7feb92 ehci_init_driver +EXPORT_SYMBOL_GPL vmlinux 0xdd85063c lpddr2_jedec_min_tck +EXPORT_SYMBOL_GPL vmlinux 0xdd8bc0b4 fat_getattr +EXPORT_SYMBOL_GPL vmlinux 0xdd8c8e7b sdhci_runtime_resume_host +EXPORT_SYMBOL_GPL vmlinux 0xdd9c7a5f md_start +EXPORT_SYMBOL_GPL vmlinux 0xdda2a5e6 snd_soc_dapm_nc_pin_unlocked +EXPORT_SYMBOL_GPL vmlinux 0xddb83f7e dma_request_chan +EXPORT_SYMBOL_GPL vmlinux 0xddbeeecc pci_lock_rescan_remove +EXPORT_SYMBOL_GPL vmlinux 0xddd6a7be devices_cgrp_subsys_enabled_key +EXPORT_SYMBOL_GPL vmlinux 0xdde35496 __ata_change_queue_depth +EXPORT_SYMBOL_GPL vmlinux 0xdde3c722 serdev_controller_alloc +EXPORT_SYMBOL_GPL vmlinux 0xdde4b384 thermal_notify_framework +EXPORT_SYMBOL_GPL vmlinux 0xddef345e pm_runtime_get_if_active +EXPORT_SYMBOL_GPL vmlinux 0xddfd75ab omap_iommu_save_ctx +EXPORT_SYMBOL_GPL vmlinux 0xddffbec1 driver_remove_file +EXPORT_SYMBOL_GPL vmlinux 0xde0213e3 devlink_resource_occ_get_unregister +EXPORT_SYMBOL_GPL vmlinux 0xde0c0d4a fb_bl_default_curve +EXPORT_SYMBOL_GPL vmlinux 0xde217752 debugfs_create_devm_seqfile +EXPORT_SYMBOL_GPL vmlinux 0xde25f88c __tracepoint_add_device_to_group +EXPORT_SYMBOL_GPL vmlinux 0xde2a9893 dev_attr_em_message_type +EXPORT_SYMBOL_GPL vmlinux 0xde3253d0 rtnl_link_register +EXPORT_SYMBOL_GPL vmlinux 0xde364cf6 ata_cable_ignore +EXPORT_SYMBOL_GPL vmlinux 0xde38b027 ulpi_viewport_access_ops +EXPORT_SYMBOL_GPL vmlinux 0xde3c396d __pm_stay_awake +EXPORT_SYMBOL_GPL vmlinux 0xde413845 nand_write_data_op +EXPORT_SYMBOL_GPL vmlinux 0xde4196d6 fwnode_device_is_available +EXPORT_SYMBOL_GPL vmlinux 0xde4ea80a skb_to_sgvec_nomark +EXPORT_SYMBOL_GPL vmlinux 0xde60a699 sata_sff_hardreset +EXPORT_SYMBOL_GPL vmlinux 0xde6f1851 TSS_checkhmac1 +EXPORT_SYMBOL_GPL vmlinux 0xde6f5b68 clk_hw_get_parent_by_index +EXPORT_SYMBOL_GPL vmlinux 0xde710efe snd_dmaengine_pcm_close +EXPORT_SYMBOL_GPL vmlinux 0xde962b81 irq_domain_pop_irq +EXPORT_SYMBOL_GPL vmlinux 0xde96b720 ata_bmdma_port_intr +EXPORT_SYMBOL_GPL vmlinux 0xdea9919b kmsg_dump_unregister +EXPORT_SYMBOL_GPL vmlinux 0xdeab2b69 devm_hwmon_device_register_with_info +EXPORT_SYMBOL_GPL vmlinux 0xdebd9f8d driver_create_file +EXPORT_SYMBOL_GPL vmlinux 0xdebfc961 alloc_skb_for_msg +EXPORT_SYMBOL_GPL vmlinux 0xded11d32 ip6_input +EXPORT_SYMBOL_GPL vmlinux 0xded58269 device_set_wakeup_enable +EXPORT_SYMBOL_GPL vmlinux 0xdef7ff65 __netpoll_free +EXPORT_SYMBOL_GPL vmlinux 0xdefa4406 ata_sff_lost_interrupt +EXPORT_SYMBOL_GPL vmlinux 0xdeffa0a7 edac_raw_mc_handle_error +EXPORT_SYMBOL_GPL vmlinux 0xdf0f75c6 eventfd_signal +EXPORT_SYMBOL_GPL vmlinux 0xdf1b1254 ata_host_activate +EXPORT_SYMBOL_GPL vmlinux 0xdf20bd51 extcon_dev_free +EXPORT_SYMBOL_GPL vmlinux 0xdf255dcf memory_cgrp_subsys_enabled_key +EXPORT_SYMBOL_GPL vmlinux 0xdf2bb368 regulator_enable +EXPORT_SYMBOL_GPL vmlinux 0xdf3664be devm_regulator_bulk_unregister_supply_alias +EXPORT_SYMBOL_GPL vmlinux 0xdf3a47bb ethnl_cable_test_fault_length +EXPORT_SYMBOL_GPL vmlinux 0xdf42de06 xdp_attachment_flags_ok +EXPORT_SYMBOL_GPL vmlinux 0xdf54cb4c of_pwm_get +EXPORT_SYMBOL_GPL vmlinux 0xdf67bd66 of_clk_add_provider +EXPORT_SYMBOL_GPL vmlinux 0xdf78aadb kgdb_register_io_module +EXPORT_SYMBOL_GPL vmlinux 0xdf7b8b3c __page_file_mapping +EXPORT_SYMBOL_GPL vmlinux 0xdf7d36b9 pci_sriov_configure_simple +EXPORT_SYMBOL_GPL vmlinux 0xdf7fa33b __tracepoint_tcp_send_reset +EXPORT_SYMBOL_GPL vmlinux 0xdf900506 sdio_writew +EXPORT_SYMBOL_GPL vmlinux 0xdf9208c0 alloc_workqueue +EXPORT_SYMBOL_GPL vmlinux 0xdfa75936 sock_diag_put_meminfo +EXPORT_SYMBOL_GPL vmlinux 0xdfae6b7a rio_unmap_outb_region +EXPORT_SYMBOL_GPL vmlinux 0xdfbe1c87 device_get_match_data +EXPORT_SYMBOL_GPL vmlinux 0xdfc03cd7 __wake_up_sync +EXPORT_SYMBOL_GPL vmlinux 0xdfc1805f pci_epc_mem_alloc_addr +EXPORT_SYMBOL_GPL vmlinux 0xdfc8ae8a tpm_pm_suspend +EXPORT_SYMBOL_GPL vmlinux 0xdfc92595 irq_find_matching_fwspec +EXPORT_SYMBOL_GPL vmlinux 0xdfcb6c90 mctrl_gpio_set +EXPORT_SYMBOL_GPL vmlinux 0xdfdabde2 gpiochip_irq_map +EXPORT_SYMBOL_GPL vmlinux 0xdfe3a0f7 fsnotify_parent +EXPORT_SYMBOL_GPL vmlinux 0xdff60447 dma_buf_detach +EXPORT_SYMBOL_GPL vmlinux 0xe0022ea7 input_ff_upload +EXPORT_SYMBOL_GPL vmlinux 0xe02498f9 dax_driver_unregister +EXPORT_SYMBOL_GPL vmlinux 0xe034b822 sdhci_pltfm_free +EXPORT_SYMBOL_GPL vmlinux 0xe03ad687 debugfs_create_atomic_t +EXPORT_SYMBOL_GPL vmlinux 0xe04be2f4 snd_compress_register +EXPORT_SYMBOL_GPL vmlinux 0xe04e99d7 btree_merge +EXPORT_SYMBOL_GPL vmlinux 0xe0506377 serial8250_rpm_put +EXPORT_SYMBOL_GPL vmlinux 0xe05e2f85 nexthop_free_rcu +EXPORT_SYMBOL_GPL vmlinux 0xe0713cd6 init_user_ns +EXPORT_SYMBOL_GPL vmlinux 0xe071d05d zs_pool_stats +EXPORT_SYMBOL_GPL vmlinux 0xe07615f9 fat_add_entries +EXPORT_SYMBOL_GPL vmlinux 0xe08b3da7 snd_soc_component_enable_pin +EXPORT_SYMBOL_GPL vmlinux 0xe092bb57 crypto_spawn_tfm +EXPORT_SYMBOL_GPL vmlinux 0xe0950540 dev_pm_opp_get_level +EXPORT_SYMBOL_GPL vmlinux 0xe0a80509 usb_ep_clear_halt +EXPORT_SYMBOL_GPL vmlinux 0xe0b1c103 clk_set_max_rate +EXPORT_SYMBOL_GPL vmlinux 0xe0c75c0c fsverity_verify_bio +EXPORT_SYMBOL_GPL vmlinux 0xe0f26064 snd_soc_pm_ops +EXPORT_SYMBOL_GPL vmlinux 0xe124944f scsi_device_from_queue +EXPORT_SYMBOL_GPL vmlinux 0xe126553f __tracepoint_unmap +EXPORT_SYMBOL_GPL vmlinux 0xe13f07eb irq_get_domain_generic_chip +EXPORT_SYMBOL_GPL vmlinux 0xe14ac753 od_register_powersave_bias_handler +EXPORT_SYMBOL_GPL vmlinux 0xe14f5bf1 device_store_ulong +EXPORT_SYMBOL_GPL vmlinux 0xe1502545 __tracepoint_neigh_timer_handler +EXPORT_SYMBOL_GPL vmlinux 0xe1653a54 software_node_unregister +EXPORT_SYMBOL_GPL vmlinux 0xe168aaea __fscrypt_prepare_lookup +EXPORT_SYMBOL_GPL vmlinux 0xe1775ee7 dm_get_reserved_bio_based_ios +EXPORT_SYMBOL_GPL vmlinux 0xe18424f8 net_dm_hw_report +EXPORT_SYMBOL_GPL vmlinux 0xe18960ba nvmem_device_write +EXPORT_SYMBOL_GPL vmlinux 0xe1981f7b perf_pmu_migrate_context +EXPORT_SYMBOL_GPL vmlinux 0xe19d88fd devm_serdev_device_open +EXPORT_SYMBOL_GPL vmlinux 0xe1bd6c99 rio_init_mports +EXPORT_SYMBOL_GPL vmlinux 0xe1bf0639 gpiod_get_index_optional +EXPORT_SYMBOL_GPL vmlinux 0xe1c63523 blk_ksm_get_slot_idx +EXPORT_SYMBOL_GPL vmlinux 0xe1cd2e1a relay_switch_subbuf +EXPORT_SYMBOL_GPL vmlinux 0xe1cfa261 __tracepoint_fdb_delete +EXPORT_SYMBOL_GPL vmlinux 0xe1e12c8c clone_private_mount +EXPORT_SYMBOL_GPL vmlinux 0xe20aff6c irq_alloc_generic_chip +EXPORT_SYMBOL_GPL vmlinux 0xe218c900 rio_route_clr_table +EXPORT_SYMBOL_GPL vmlinux 0xe231cd60 usb_get_current_frame_number +EXPORT_SYMBOL_GPL vmlinux 0xe233762a input_event_from_user +EXPORT_SYMBOL_GPL vmlinux 0xe23a6c55 platform_device_add_properties +EXPORT_SYMBOL_GPL vmlinux 0xe241541d tty_put_char +EXPORT_SYMBOL_GPL vmlinux 0xe241b460 nexthop_for_each_fib6_nh +EXPORT_SYMBOL_GPL vmlinux 0xe25c60ec regcache_drop_region +EXPORT_SYMBOL_GPL vmlinux 0xe26306e1 hwspin_lock_get_id +EXPORT_SYMBOL_GPL vmlinux 0xe2717792 dax_zero_page_range +EXPORT_SYMBOL_GPL vmlinux 0xe2740acd cpufreq_dbs_governor_init +EXPORT_SYMBOL_GPL vmlinux 0xe27d6a7f crypto_register_kpp +EXPORT_SYMBOL_GPL vmlinux 0xe27fca08 snd_soc_find_dai +EXPORT_SYMBOL_GPL vmlinux 0xe282ac35 dma_run_dependencies +EXPORT_SYMBOL_GPL vmlinux 0xe286b454 ata_sff_irq_on +EXPORT_SYMBOL_GPL vmlinux 0xe2972fbb sdhci_set_power +EXPORT_SYMBOL_GPL vmlinux 0xe29fe531 ata_ehi_push_desc +EXPORT_SYMBOL_GPL vmlinux 0xe2b3207a unregister_switchdev_notifier +EXPORT_SYMBOL_GPL vmlinux 0xe2c432ce ping_err +EXPORT_SYMBOL_GPL vmlinux 0xe2df51a8 spi_bus_type +EXPORT_SYMBOL_GPL vmlinux 0xe2ec4a67 snd_compress_deregister +EXPORT_SYMBOL_GPL vmlinux 0xe2fa2b77 hrtimer_sleeper_start_expires +EXPORT_SYMBOL_GPL vmlinux 0xe2fae56a find_pid_ns +EXPORT_SYMBOL_GPL vmlinux 0xe301a065 arm_iommu_create_mapping +EXPORT_SYMBOL_GPL vmlinux 0xe3043ff9 request_any_context_irq +EXPORT_SYMBOL_GPL vmlinux 0xe3314acf handle_fasteoi_irq +EXPORT_SYMBOL_GPL vmlinux 0xe331e165 cpuidle_disable_device +EXPORT_SYMBOL_GPL vmlinux 0xe3395963 ohci_hub_control +EXPORT_SYMBOL_GPL vmlinux 0xe34c63f0 hvc_alloc +EXPORT_SYMBOL_GPL vmlinux 0xe35277bd ata_pci_bmdma_clear_simplex +EXPORT_SYMBOL_GPL vmlinux 0xe360e972 ata_host_resume +EXPORT_SYMBOL_GPL vmlinux 0xe37009bc clk_register_fixed_rate +EXPORT_SYMBOL_GPL vmlinux 0xe3801eb4 scsi_mode_select +EXPORT_SYMBOL_GPL vmlinux 0xe38704d7 clk_register_hisi_phase +EXPORT_SYMBOL_GPL vmlinux 0xe39167a6 crypto_register_scomp +EXPORT_SYMBOL_GPL vmlinux 0xe39d0794 usb_phy_roothub_exit +EXPORT_SYMBOL_GPL vmlinux 0xe39fc2be mtd_get_unmapped_area +EXPORT_SYMBOL_GPL vmlinux 0xe3a17f04 debugfs_file_get +EXPORT_SYMBOL_GPL vmlinux 0xe3a90858 mbox_request_channel +EXPORT_SYMBOL_GPL vmlinux 0xe3afd49c encrypt_blob +EXPORT_SYMBOL_GPL vmlinux 0xe3b09712 kprobe_event_delete +EXPORT_SYMBOL_GPL vmlinux 0xe3bb45d5 iommu_device_unregister +EXPORT_SYMBOL_GPL vmlinux 0xe3bd07d1 extcon_register_notifier_all +EXPORT_SYMBOL_GPL vmlinux 0xe3c5297d __ip6_datagram_connect +EXPORT_SYMBOL_GPL vmlinux 0xe3cf4b58 device_pm_wait_for_dev +EXPORT_SYMBOL_GPL vmlinux 0xe3d06a82 dma_async_device_channel_unregister +EXPORT_SYMBOL_GPL vmlinux 0xe3d964f3 of_dma_xlate_by_chan_id +EXPORT_SYMBOL_GPL vmlinux 0xe40b524f dev_get_regmap +EXPORT_SYMBOL_GPL vmlinux 0xe40bb23e devlink_health_reporter_priv +EXPORT_SYMBOL_GPL vmlinux 0xe41833e4 pwm_get +EXPORT_SYMBOL_GPL vmlinux 0xe41ae0ca phy_pm_runtime_forbid +EXPORT_SYMBOL_GPL vmlinux 0xe41f4eb5 nanddev_markbad +EXPORT_SYMBOL_GPL vmlinux 0xe4309905 syscore_resume +EXPORT_SYMBOL_GPL vmlinux 0xe4309c1d check_move_unevictable_pages +EXPORT_SYMBOL_GPL vmlinux 0xe4408dde handle_level_irq +EXPORT_SYMBOL_GPL vmlinux 0xe448dcad sysfs_remove_file_ns +EXPORT_SYMBOL_GPL vmlinux 0xe449aeb5 extcon_dev_unregister +EXPORT_SYMBOL_GPL vmlinux 0xe47dface devm_gpiod_get +EXPORT_SYMBOL_GPL vmlinux 0xe480d8e1 class_compat_remove_link +EXPORT_SYMBOL_GPL vmlinux 0xe4954950 fanout_mutex +EXPORT_SYMBOL_GPL vmlinux 0xe4971ade tracing_alloc_snapshot +EXPORT_SYMBOL_GPL vmlinux 0xe499dd68 regulator_is_supported_voltage +EXPORT_SYMBOL_GPL vmlinux 0xe4b064f9 pcie_link_speed +EXPORT_SYMBOL_GPL vmlinux 0xe4b08f98 generic_device_group +EXPORT_SYMBOL_GPL vmlinux 0xe4b37955 sm501_modify_reg +EXPORT_SYMBOL_GPL vmlinux 0xe4b818c3 phy_speed_to_str +EXPORT_SYMBOL_GPL vmlinux 0xe4be2f52 devlink_region_create +EXPORT_SYMBOL_GPL vmlinux 0xe4bfe175 usb_gadget_vbus_disconnect +EXPORT_SYMBOL_GPL vmlinux 0xe4c2c66c rtc_ktime_to_tm +EXPORT_SYMBOL_GPL vmlinux 0xe4c9f178 btree_get_prev +EXPORT_SYMBOL_GPL vmlinux 0xe4d47ea4 pm_generic_suspend +EXPORT_SYMBOL_GPL vmlinux 0xe4e48b12 swphy_validate_state +EXPORT_SYMBOL_GPL vmlinux 0xe4e6ba35 spi_mem_dirmap_create +EXPORT_SYMBOL_GPL vmlinux 0xe51143a7 thermal_zone_device_unregister +EXPORT_SYMBOL_GPL vmlinux 0xe52025ae cpufreq_freq_attr_scaling_boost_freqs +EXPORT_SYMBOL_GPL vmlinux 0xe535e753 pci_d3cold_disable +EXPORT_SYMBOL_GPL vmlinux 0xe554a884 of_irq_get +EXPORT_SYMBOL_GPL vmlinux 0xe57003b8 iomap_invalidatepage +EXPORT_SYMBOL_GPL vmlinux 0xe57b993d init_srcu_struct +EXPORT_SYMBOL_GPL vmlinux 0xe57cc330 ethnl_cable_test_pulse +EXPORT_SYMBOL_GPL vmlinux 0xe580adc6 snd_soc_dai_active +EXPORT_SYMBOL_GPL vmlinux 0xe5815ff9 mtd_read_user_prot_reg +EXPORT_SYMBOL_GPL vmlinux 0xe58558fe mmu_notifier_range_update_to_read_only +EXPORT_SYMBOL_GPL vmlinux 0xe5883bd9 class_compat_unregister +EXPORT_SYMBOL_GPL vmlinux 0xe5927967 dev_pm_opp_remove_table +EXPORT_SYMBOL_GPL vmlinux 0xe59db730 devm_rtc_allocate_device +EXPORT_SYMBOL_GPL vmlinux 0xe59efb0e musb_clearb +EXPORT_SYMBOL_GPL vmlinux 0xe5b026b0 pid_vnr +EXPORT_SYMBOL_GPL vmlinux 0xe5c04952 __vfs_setxattr_noperm +EXPORT_SYMBOL_GPL vmlinux 0xe5cb1943 hisi_clk_register_divider +EXPORT_SYMBOL_GPL vmlinux 0xe5cf3dd7 devm_init_badblocks +EXPORT_SYMBOL_GPL vmlinux 0xe5d49310 blkdev_zone_mgmt +EXPORT_SYMBOL_GPL vmlinux 0xe5d4b295 __regmap_init +EXPORT_SYMBOL_GPL vmlinux 0xe5d7409c alarm_start_relative +EXPORT_SYMBOL_GPL vmlinux 0xe5eec47d snd_soc_get_xr_sx +EXPORT_SYMBOL_GPL vmlinux 0xe5f2519f tty_kopen +EXPORT_SYMBOL_GPL vmlinux 0xe5fbed1c of_property_read_u32_index +EXPORT_SYMBOL_GPL vmlinux 0xe5fd44a6 __platform_driver_register +EXPORT_SYMBOL_GPL vmlinux 0xe603c2fe badblocks_set +EXPORT_SYMBOL_GPL vmlinux 0xe6045877 of_property_read_variable_u32_array +EXPORT_SYMBOL_GPL vmlinux 0xe61d24a3 wm831x_device_shutdown +EXPORT_SYMBOL_GPL vmlinux 0xe6212673 nf_route +EXPORT_SYMBOL_GPL vmlinux 0xe626bee4 mtd_device_unregister +EXPORT_SYMBOL_GPL vmlinux 0xe628bb9f phy_fibre_port_array +EXPORT_SYMBOL_GPL vmlinux 0xe656a2dd relay_subbufs_consumed +EXPORT_SYMBOL_GPL vmlinux 0xe65f3e92 devlink_unregister +EXPORT_SYMBOL_GPL vmlinux 0xe670ae72 driver_find +EXPORT_SYMBOL_GPL vmlinux 0xe67241c7 strp_init +EXPORT_SYMBOL_GPL vmlinux 0xe684dec9 tpm_try_get_ops +EXPORT_SYMBOL_GPL vmlinux 0xe6898c9e ip6_route_output_flags +EXPORT_SYMBOL_GPL vmlinux 0xe68a8506 skcipher_walk_atomise +EXPORT_SYMBOL_GPL vmlinux 0xe6a257f1 divider_round_rate_parent +EXPORT_SYMBOL_GPL vmlinux 0xe6a6eced call_srcu +EXPORT_SYMBOL_GPL vmlinux 0xe6ab43fd devm_of_phy_get +EXPORT_SYMBOL_GPL vmlinux 0xe6d57ddf ncsi_unregister_dev +EXPORT_SYMBOL_GPL vmlinux 0xe6d81d31 hrtimer_start_range_ns +EXPORT_SYMBOL_GPL vmlinux 0xe6e341ff irq_domain_push_irq +EXPORT_SYMBOL_GPL vmlinux 0xe6e3f04c devfreq_get_devfreq_by_phandle +EXPORT_SYMBOL_GPL vmlinux 0xe6e40502 rcu_get_gp_seq +EXPORT_SYMBOL_GPL vmlinux 0xe701cff2 trace_array_put +EXPORT_SYMBOL_GPL vmlinux 0xe70874c6 inet_csk_clone_lock +EXPORT_SYMBOL_GPL vmlinux 0xe714da01 crypto_alloc_tfm +EXPORT_SYMBOL_GPL vmlinux 0xe71a4ae6 crypto_alloc_shash +EXPORT_SYMBOL_GPL vmlinux 0xe71d756a generic_fh_to_parent +EXPORT_SYMBOL_GPL vmlinux 0xe7262c6f show_class_attr_string +EXPORT_SYMBOL_GPL vmlinux 0xe72bf2c2 get_kernel_page +EXPORT_SYMBOL_GPL vmlinux 0xe736b9cf cpufreq_enable_fast_switch +EXPORT_SYMBOL_GPL vmlinux 0xe7371fb8 dev_pm_qos_update_user_latency_tolerance +EXPORT_SYMBOL_GPL vmlinux 0xe747297d xas_find_conflict +EXPORT_SYMBOL_GPL vmlinux 0xe74c80c6 vfs_truncate +EXPORT_SYMBOL_GPL vmlinux 0xe753b68d devlink_fmsg_arr_pair_nest_end +EXPORT_SYMBOL_GPL vmlinux 0xe75625fb cpu_bit_bitmap +EXPORT_SYMBOL_GPL vmlinux 0xe769232e sprint_symbol_no_offset +EXPORT_SYMBOL_GPL vmlinux 0xe77006e6 fsstack_copy_attr_all +EXPORT_SYMBOL_GPL vmlinux 0xe775b60a sbitmap_any_bit_set +EXPORT_SYMBOL_GPL vmlinux 0xe77c0f4e wm8997_irq +EXPORT_SYMBOL_GPL vmlinux 0xe783e261 sysfs_emit +EXPORT_SYMBOL_GPL vmlinux 0xe7853836 platform_get_resource +EXPORT_SYMBOL_GPL vmlinux 0xe78a281d split_page +EXPORT_SYMBOL_GPL vmlinux 0xe7ab09fa shash_ahash_finup +EXPORT_SYMBOL_GPL vmlinux 0xe7acf59d of_pci_address_to_resource +EXPORT_SYMBOL_GPL vmlinux 0xe7b1a233 pinconf_generic_dump_config +EXPORT_SYMBOL_GPL vmlinux 0xe7beaf28 ahci_check_ready +EXPORT_SYMBOL_GPL vmlinux 0xe7cded8c pkcs7_validate_trust +EXPORT_SYMBOL_GPL vmlinux 0xe7d55d7f dw_pcie_read_dbi +EXPORT_SYMBOL_GPL vmlinux 0xe7d6d2d4 filter_match_preds +EXPORT_SYMBOL_GPL vmlinux 0xe7d724f2 tcp_get_info +EXPORT_SYMBOL_GPL vmlinux 0xe7eee3d5 __cookie_v4_init_sequence +EXPORT_SYMBOL_GPL vmlinux 0xe7f204ee edac_pci_create_generic_ctl +EXPORT_SYMBOL_GPL vmlinux 0xe7ffe877 pcpu_base_addr +EXPORT_SYMBOL_GPL vmlinux 0xe809cffb ring_buffer_time_stamp +EXPORT_SYMBOL_GPL vmlinux 0xe818b32b ata_bmdma_interrupt +EXPORT_SYMBOL_GPL vmlinux 0xe81ddad6 tracing_generic_entry_update +EXPORT_SYMBOL_GPL vmlinux 0xe8200d3c __sdhci_add_host +EXPORT_SYMBOL_GPL vmlinux 0xe8273263 tps65217_clear_bits +EXPORT_SYMBOL_GPL vmlinux 0xe82bde82 usb_driver_claim_interface +EXPORT_SYMBOL_GPL vmlinux 0xe82e9f4e dev_pm_opp_find_freq_ceil +EXPORT_SYMBOL_GPL vmlinux 0xe8466a39 vfs_getxattr_alloc +EXPORT_SYMBOL_GPL vmlinux 0xe84f6e5c pciserial_remove_ports +EXPORT_SYMBOL_GPL vmlinux 0xe85a9fd3 cpu_cluster_pm_exit +EXPORT_SYMBOL_GPL vmlinux 0xe862c4b7 dpm_suspend_start +EXPORT_SYMBOL_GPL vmlinux 0xe864b6bc task_active_pid_ns +EXPORT_SYMBOL_GPL vmlinux 0xe864cd1b serdev_device_add +EXPORT_SYMBOL_GPL vmlinux 0xe8656788 dma_resv_test_signaled_rcu +EXPORT_SYMBOL_GPL vmlinux 0xe8715ee5 devm_phy_destroy +EXPORT_SYMBOL_GPL vmlinux 0xe8752112 ip6_route_lookup +EXPORT_SYMBOL_GPL vmlinux 0xe87b6e4c sysfs_remove_link_from_group +EXPORT_SYMBOL_GPL vmlinux 0xe88b95b0 platform_unregister_drivers +EXPORT_SYMBOL_GPL vmlinux 0xe89e7430 raw_seq_start +EXPORT_SYMBOL_GPL vmlinux 0xe8a3fd2a dev_pm_opp_get_max_transition_latency +EXPORT_SYMBOL_GPL vmlinux 0xe8a7b60d vfs_listxattr +EXPORT_SYMBOL_GPL vmlinux 0xe8abe27e tty_standard_install +EXPORT_SYMBOL_GPL vmlinux 0xe8b34372 __of_phy_provider_register +EXPORT_SYMBOL_GPL vmlinux 0xe8b64725 ehci_reset +EXPORT_SYMBOL_GPL vmlinux 0xe8b848a2 mm_kobj +EXPORT_SYMBOL_GPL vmlinux 0xe8c3999b sdhci_alloc_host +EXPORT_SYMBOL_GPL vmlinux 0xe8cf340c snd_soc_info_xr_sx +EXPORT_SYMBOL_GPL vmlinux 0xe8d538ac pin_get_name +EXPORT_SYMBOL_GPL vmlinux 0xe8e26fc7 pm_runtime_suspended_time +EXPORT_SYMBOL_GPL vmlinux 0xe8eb2b37 tty_set_termios +EXPORT_SYMBOL_GPL vmlinux 0xe8f856ef regulator_suspend_disable +EXPORT_SYMBOL_GPL vmlinux 0xe8fd5583 nvmem_cell_read_u64 +EXPORT_SYMBOL_GPL vmlinux 0xe900cc2b __serdev_device_driver_register +EXPORT_SYMBOL_GPL vmlinux 0xe90619e6 kthread_queue_work +EXPORT_SYMBOL_GPL vmlinux 0xe90f5582 serial8250_rpm_put_tx +EXPORT_SYMBOL_GPL vmlinux 0xe9127fd3 platform_find_device_by_driver +EXPORT_SYMBOL_GPL vmlinux 0xe9140521 usb_ep_alloc_request +EXPORT_SYMBOL_GPL vmlinux 0xe9334378 pm_genpd_syscore_poweroff +EXPORT_SYMBOL_GPL vmlinux 0xe93d4889 sk_msg_zerocopy_from_iter +EXPORT_SYMBOL_GPL vmlinux 0xe93e49c3 devres_free +EXPORT_SYMBOL_GPL vmlinux 0xe94285ae pci_epc_map_addr +EXPORT_SYMBOL_GPL vmlinux 0xe956a75c pl320_ipc_unregister_notifier +EXPORT_SYMBOL_GPL vmlinux 0xe96cd629 gpiochip_line_is_persistent +EXPORT_SYMBOL_GPL vmlinux 0xe97f80be __netpoll_setup +EXPORT_SYMBOL_GPL vmlinux 0xe98cf384 mtk_pinconf_bias_get_combo +EXPORT_SYMBOL_GPL vmlinux 0xe9915e5b device_show_bool +EXPORT_SYMBOL_GPL vmlinux 0xe9931f9e fat_alloc_new_dir +EXPORT_SYMBOL_GPL vmlinux 0xe999cd5a fwnode_handle_put +EXPORT_SYMBOL_GPL vmlinux 0xe9a7fe16 nvmem_cell_read +EXPORT_SYMBOL_GPL vmlinux 0xe9a94157 ata_cable_40wire +EXPORT_SYMBOL_GPL vmlinux 0xe9aeba4e iommu_unmap +EXPORT_SYMBOL_GPL vmlinux 0xe9b233cd scsi_nl_sock +EXPORT_SYMBOL_GPL vmlinux 0xe9c616de cpu_latency_qos_add_request +EXPORT_SYMBOL_GPL vmlinux 0xe9d1b7cf irq_to_pcap +EXPORT_SYMBOL_GPL vmlinux 0xe9d26bc5 __tracepoint_block_bio_complete +EXPORT_SYMBOL_GPL vmlinux 0xe9e7bf40 crypto_stats_aead_encrypt +EXPORT_SYMBOL_GPL vmlinux 0xea0910fc sg_free_table_chained +EXPORT_SYMBOL_GPL vmlinux 0xea105b6a usb_asmedia_modifyflowcontrol +EXPORT_SYMBOL_GPL vmlinux 0xea114216 sg_alloc_table_chained +EXPORT_SYMBOL_GPL vmlinux 0xea124bd1 gcd +EXPORT_SYMBOL_GPL vmlinux 0xea1b5f3f of_pm_clk_add_clk +EXPORT_SYMBOL_GPL vmlinux 0xea1bb291 bL_switcher_get_enabled +EXPORT_SYMBOL_GPL vmlinux 0xea1bc2e1 sdio_f0_writeb +EXPORT_SYMBOL_GPL vmlinux 0xea38036f ring_buffer_entries +EXPORT_SYMBOL_GPL vmlinux 0xea4a09cb mod_delayed_work_on +EXPORT_SYMBOL_GPL vmlinux 0xea4eba7d of_usb_get_dr_mode_by_phy +EXPORT_SYMBOL_GPL vmlinux 0xea50dad3 ahci_ignore_sss +EXPORT_SYMBOL_GPL vmlinux 0xea637207 subsys_virtual_register +EXPORT_SYMBOL_GPL vmlinux 0xea637736 of_fwnode_ops +EXPORT_SYMBOL_GPL vmlinux 0xea7c9d64 snd_soc_component_write +EXPORT_SYMBOL_GPL vmlinux 0xea8cc570 ehci_hub_control +EXPORT_SYMBOL_GPL vmlinux 0xea974d62 dev_pm_qos_remove_notifier +EXPORT_SYMBOL_GPL vmlinux 0xeab0a925 nanddev_mtd_erase +EXPORT_SYMBOL_GPL vmlinux 0xeac6495c ata_pci_sff_init_one +EXPORT_SYMBOL_GPL vmlinux 0xead2e457 usb_hcd_map_urb_for_dma +EXPORT_SYMBOL_GPL vmlinux 0xead54924 mctrl_gpio_to_gpiod +EXPORT_SYMBOL_GPL vmlinux 0xeadf359d tcp_twsk_destructor +EXPORT_SYMBOL_GPL vmlinux 0xeae0f496 clean_acked_data_flush +EXPORT_SYMBOL_GPL vmlinux 0xeae23c65 pinctrl_dev_get_name +EXPORT_SYMBOL_GPL vmlinux 0xeaf62044 iommu_dev_disable_feature +EXPORT_SYMBOL_GPL vmlinux 0xeafe07b8 clk_bulk_prepare +EXPORT_SYMBOL_GPL vmlinux 0xeb0bdb17 deregister_mtd_parser +EXPORT_SYMBOL_GPL vmlinux 0xeb1d902c sata_std_hardreset +EXPORT_SYMBOL_GPL vmlinux 0xeb1ec34b phy_pm_runtime_allow +EXPORT_SYMBOL_GPL vmlinux 0xeb2cbe6f __cpufreq_driver_target +EXPORT_SYMBOL_GPL vmlinux 0xeb2f825c init_rs_gfp +EXPORT_SYMBOL_GPL vmlinux 0xeb37e24d serdev_controller_add +EXPORT_SYMBOL_GPL vmlinux 0xeb3c8d73 wm5110_irq +EXPORT_SYMBOL_GPL vmlinux 0xeb640c70 mtd_ooblayout_find_eccregion +EXPORT_SYMBOL_GPL vmlinux 0xeb6413ea clock_cooling_get_level +EXPORT_SYMBOL_GPL vmlinux 0xeb6aaf36 kernel_read_file_from_path_initns +EXPORT_SYMBOL_GPL vmlinux 0xeb6e63b4 of_clk_hw_onecell_get +EXPORT_SYMBOL_GPL vmlinux 0xeb6e90de serial8250_read_char +EXPORT_SYMBOL_GPL vmlinux 0xeb711ae7 snd_soc_params_to_bclk +EXPORT_SYMBOL_GPL vmlinux 0xeb77a01a blk_ksm_register +EXPORT_SYMBOL_GPL vmlinux 0xeb9abbee ata_sff_queue_work +EXPORT_SYMBOL_GPL vmlinux 0xeb9e3830 phy_modify_changed +EXPORT_SYMBOL_GPL vmlinux 0xebb9211c edac_mc_add_mc_with_groups +EXPORT_SYMBOL_GPL vmlinux 0xebbe1622 io_cgrp_subsys_enabled_key +EXPORT_SYMBOL_GPL vmlinux 0xebbf7e2f rio_inb_pwrite_handler +EXPORT_SYMBOL_GPL vmlinux 0xebc9a09f lock_system_sleep +EXPORT_SYMBOL_GPL vmlinux 0xebd4cc11 mctrl_gpio_enable_ms +EXPORT_SYMBOL_GPL vmlinux 0xebe4519a led_trigger_register +EXPORT_SYMBOL_GPL vmlinux 0xebed2492 phy_modify_mmd_changed +EXPORT_SYMBOL_GPL vmlinux 0xebf34d25 rio_request_inb_mbox +EXPORT_SYMBOL_GPL vmlinux 0xec07cb9c disk_part_iter_init +EXPORT_SYMBOL_GPL vmlinux 0xec0f481f serial8250_handle_irq +EXPORT_SYMBOL_GPL vmlinux 0xec0f8740 edac_mod_work +EXPORT_SYMBOL_GPL vmlinux 0xec20a843 device_connection_find_match +EXPORT_SYMBOL_GPL vmlinux 0xec47e98a nand_ooblayout_lp_ops +EXPORT_SYMBOL_GPL vmlinux 0xec49980a rio_register_scan +EXPORT_SYMBOL_GPL vmlinux 0xec5adfee cpufreq_table_index_unsorted +EXPORT_SYMBOL_GPL vmlinux 0xec68ba70 clk_bulk_enable +EXPORT_SYMBOL_GPL vmlinux 0xec69c109 virtqueue_disable_cb +EXPORT_SYMBOL_GPL vmlinux 0xec6fd20b irq_set_chip_and_handler_name +EXPORT_SYMBOL_GPL vmlinux 0xec774acb cpufreq_frequency_table_verify +EXPORT_SYMBOL_GPL vmlinux 0xec8466a8 pkcs7_parse_message +EXPORT_SYMBOL_GPL vmlinux 0xec904029 dm_bio_from_per_bio_data +EXPORT_SYMBOL_GPL vmlinux 0xeca7c161 watchdog_set_restart_priority +EXPORT_SYMBOL_GPL vmlinux 0xecb37061 mmu_notifier_register +EXPORT_SYMBOL_GPL vmlinux 0xecb70831 extcon_dev_register +EXPORT_SYMBOL_GPL vmlinux 0xecbec45f ata_do_dev_read_id +EXPORT_SYMBOL_GPL vmlinux 0xece22bfe regmap_can_raw_write +EXPORT_SYMBOL_GPL vmlinux 0xece34b98 iommu_group_remove_device +EXPORT_SYMBOL_GPL vmlinux 0xecfb055c device_show_ulong +EXPORT_SYMBOL_GPL vmlinux 0xed032a72 snd_soc_get_volsw_range +EXPORT_SYMBOL_GPL vmlinux 0xed068443 root_device_unregister +EXPORT_SYMBOL_GPL vmlinux 0xed0baf05 ata_sff_check_status +EXPORT_SYMBOL_GPL vmlinux 0xed2777c0 fwnode_get_phy_mode +EXPORT_SYMBOL_GPL vmlinux 0xed2f77ae crypto_grab_aead +EXPORT_SYMBOL_GPL vmlinux 0xed344146 mcpm_is_available +EXPORT_SYMBOL_GPL vmlinux 0xed35f0f8 xhci_suspend +EXPORT_SYMBOL_GPL vmlinux 0xed388b41 adp5520_set_bits +EXPORT_SYMBOL_GPL vmlinux 0xed38c848 __tracepoint_rpm_idle +EXPORT_SYMBOL_GPL vmlinux 0xed40899c of_genpd_add_provider_simple +EXPORT_SYMBOL_GPL vmlinux 0xed40c72b mtk_pinconf_bias_set_combo +EXPORT_SYMBOL_GPL vmlinux 0xed4ca732 dev_coredumpsg +EXPORT_SYMBOL_GPL vmlinux 0xed7bee0b posix_acl_default_xattr_handler +EXPORT_SYMBOL_GPL vmlinux 0xed846b65 devlink_trap_policers_unregister +EXPORT_SYMBOL_GPL vmlinux 0xed8a3de0 ip_route_output_key_hash +EXPORT_SYMBOL_GPL vmlinux 0xed8bbe99 __tracepoint_pelt_dl_tp +EXPORT_SYMBOL_GPL vmlinux 0xed913858 tcp_enter_memory_pressure +EXPORT_SYMBOL_GPL vmlinux 0xed92d8e7 put_pid +EXPORT_SYMBOL_GPL vmlinux 0xed9937b5 bsg_job_put +EXPORT_SYMBOL_GPL vmlinux 0xed998092 snd_ctl_sync_vmaster +EXPORT_SYMBOL_GPL vmlinux 0xed9ca161 xfrm_dev_state_add +EXPORT_SYMBOL_GPL vmlinux 0xedb0352c sata_scr_write_flush +EXPORT_SYMBOL_GPL vmlinux 0xedb3561d decrypt_blob +EXPORT_SYMBOL_GPL vmlinux 0xedb6afd0 debugfs_rename +EXPORT_SYMBOL_GPL vmlinux 0xedcb588e ipv4_sk_redirect +EXPORT_SYMBOL_GPL vmlinux 0xedd12504 shmem_zero_setup +EXPORT_SYMBOL_GPL vmlinux 0xedd82fd9 pinctrl_find_gpio_range_from_pin +EXPORT_SYMBOL_GPL vmlinux 0xedd8602e rio_mport_read_config_32 +EXPORT_SYMBOL_GPL vmlinux 0xede6f9d9 ip6_datagram_connect_v6_only +EXPORT_SYMBOL_GPL vmlinux 0xede8d631 gpiod_get_raw_array_value_cansleep +EXPORT_SYMBOL_GPL vmlinux 0xedfd01aa crypto_spawn_tfm2 +EXPORT_SYMBOL_GPL vmlinux 0xee030c9e lp8788_read_byte +EXPORT_SYMBOL_GPL vmlinux 0xee0d6213 snd_soc_jack_add_pins +EXPORT_SYMBOL_GPL vmlinux 0xee0f82c0 i2c_dw_validate_speed +EXPORT_SYMBOL_GPL vmlinux 0xee15d306 mtd_block_isbad +EXPORT_SYMBOL_GPL vmlinux 0xee19dece fat_remove_entries +EXPORT_SYMBOL_GPL vmlinux 0xee1ce7bb sdio_align_size +EXPORT_SYMBOL_GPL vmlinux 0xee282e42 key_type_logon +EXPORT_SYMBOL_GPL vmlinux 0xee38806d platform_get_irq +EXPORT_SYMBOL_GPL vmlinux 0xee38ef57 register_switchdev_blocking_notifier +EXPORT_SYMBOL_GPL vmlinux 0xee41e26c dev_coredumpv +EXPORT_SYMBOL_GPL vmlinux 0xee6b71c4 syscon_regmap_lookup_by_compatible +EXPORT_SYMBOL_GPL vmlinux 0xee78c24a __hvc_resize +EXPORT_SYMBOL_GPL vmlinux 0xeeaf34a2 dev_pm_clear_wake_irq +EXPORT_SYMBOL_GPL vmlinux 0xeed21e98 mctrl_gpio_free +EXPORT_SYMBOL_GPL vmlinux 0xeedd987e phy_10gbit_features_array +EXPORT_SYMBOL_GPL vmlinux 0xeedfcec3 task_work_run +EXPORT_SYMBOL_GPL vmlinux 0xeedfcfb2 irq_domain_alloc_irqs_parent +EXPORT_SYMBOL_GPL vmlinux 0xeee1f3d9 rio_del_mport_pw_handler +EXPORT_SYMBOL_GPL vmlinux 0xeee7de5e adp5520_read +EXPORT_SYMBOL_GPL vmlinux 0xeef230f3 gpiod_get_raw_array_value +EXPORT_SYMBOL_GPL vmlinux 0xeeffdceb rio_get_asm +EXPORT_SYMBOL_GPL vmlinux 0xef088f73 iptunnel_xmit +EXPORT_SYMBOL_GPL vmlinux 0xef29fcdd clk_bulk_put +EXPORT_SYMBOL_GPL vmlinux 0xef3f0d1b blk_mq_alloc_request_hctx +EXPORT_SYMBOL_GPL vmlinux 0xef43621a of_device_modalias +EXPORT_SYMBOL_GPL vmlinux 0xef456ccf relay_flush +EXPORT_SYMBOL_GPL vmlinux 0xef464c28 getboottime64 +EXPORT_SYMBOL_GPL vmlinux 0xef65a3cf blkdev_nr_zones +EXPORT_SYMBOL_GPL vmlinux 0xef6c3f70 round_jiffies_up_relative +EXPORT_SYMBOL_GPL vmlinux 0xef70eb7e ring_buffer_iter_advance +EXPORT_SYMBOL_GPL vmlinux 0xef79d5f0 serial8250_do_startup +EXPORT_SYMBOL_GPL vmlinux 0xef83eed1 usb_unlink_anchored_urbs +EXPORT_SYMBOL_GPL vmlinux 0xef840d8e dst_cache_get_ip4 +EXPORT_SYMBOL_GPL vmlinux 0xef8cef27 clockevent_delta2ns +EXPORT_SYMBOL_GPL vmlinux 0xef97554e xdp_do_redirect +EXPORT_SYMBOL_GPL vmlinux 0xefa2c27d register_tracepoint_module_notifier +EXPORT_SYMBOL_GPL vmlinux 0xefaace6e mv_mbus_dram_info +EXPORT_SYMBOL_GPL vmlinux 0xefad5107 pci_pri_supported +EXPORT_SYMBOL_GPL vmlinux 0xefadd683 fwnode_graph_get_remote_node +EXPORT_SYMBOL_GPL vmlinux 0xefaebe84 fscrypt_ioctl_get_key_status +EXPORT_SYMBOL_GPL vmlinux 0xefc72784 usb_hcd_giveback_urb +EXPORT_SYMBOL_GPL vmlinux 0xefd51482 ata_bmdma_port_start32 +EXPORT_SYMBOL_GPL vmlinux 0xefd71dc3 hvc_remove +EXPORT_SYMBOL_GPL vmlinux 0xefeafcf1 edac_has_mcs +EXPORT_SYMBOL_GPL vmlinux 0xeff0214e gpiochip_set_nested_irqchip +EXPORT_SYMBOL_GPL vmlinux 0xeffe3e33 of_platform_device_destroy +EXPORT_SYMBOL_GPL vmlinux 0xf017b394 devm_power_supply_register_no_ws +EXPORT_SYMBOL_GPL vmlinux 0xf0337609 gen10g_config_aneg +EXPORT_SYMBOL_GPL vmlinux 0xf03748cb snd_compress_new +EXPORT_SYMBOL_GPL vmlinux 0xf04db245 ata_port_freeze +EXPORT_SYMBOL_GPL vmlinux 0xf04f09fd dev_pm_opp_put_opp_table +EXPORT_SYMBOL_GPL vmlinux 0xf061699b dev_pm_opp_set_rate +EXPORT_SYMBOL_GPL vmlinux 0xf06ced30 spi_mem_driver_unregister +EXPORT_SYMBOL_GPL vmlinux 0xf07ee7cf cpufreq_freq_transition_begin +EXPORT_SYMBOL_GPL vmlinux 0xf0910075 sfp_bus_del_upstream +EXPORT_SYMBOL_GPL vmlinux 0xf09d6488 crypto_register_templates +EXPORT_SYMBOL_GPL vmlinux 0xf0aad129 input_ff_event +EXPORT_SYMBOL_GPL vmlinux 0xf0acac5c xhci_ext_cap_init +EXPORT_SYMBOL_GPL vmlinux 0xf0b215c0 __dev_forward_skb +EXPORT_SYMBOL_GPL vmlinux 0xf0cf08d8 blk_rq_err_bytes +EXPORT_SYMBOL_GPL vmlinux 0xf0de7461 dm_internal_suspend_fast +EXPORT_SYMBOL_GPL vmlinux 0xf0efdc71 devres_release_group +EXPORT_SYMBOL_GPL vmlinux 0xf0f6e5fa uprobe_register_refctr +EXPORT_SYMBOL_GPL vmlinux 0xf0f95e51 musb_readl +EXPORT_SYMBOL_GPL vmlinux 0xf10a6999 usb_role_switch_register +EXPORT_SYMBOL_GPL vmlinux 0xf10c565f irq_get_irq_data +EXPORT_SYMBOL_GPL vmlinux 0xf119a642 max8997_update_reg +EXPORT_SYMBOL_GPL vmlinux 0xf1361941 pci_vpd_find_tag +EXPORT_SYMBOL_GPL vmlinux 0xf1431553 xhci_init_driver +EXPORT_SYMBOL_GPL vmlinux 0xf15752e5 sata_link_hardreset +EXPORT_SYMBOL_GPL vmlinux 0xf171f358 devres_add +EXPORT_SYMBOL_GPL vmlinux 0xf18410f3 dev_queue_xmit_nit +EXPORT_SYMBOL_GPL vmlinux 0xf1847a76 iommu_group_add_device +EXPORT_SYMBOL_GPL vmlinux 0xf184d189 kernel_power_off +EXPORT_SYMBOL_GPL vmlinux 0xf1894acc pci_hp_add_bridge +EXPORT_SYMBOL_GPL vmlinux 0xf18fd98e led_blink_set_oneshot +EXPORT_SYMBOL_GPL vmlinux 0xf19375a7 nanddev_isbad +EXPORT_SYMBOL_GPL vmlinux 0xf1a75893 bsg_remove_queue +EXPORT_SYMBOL_GPL vmlinux 0xf1b31314 delayacct_on +EXPORT_SYMBOL_GPL vmlinux 0xf1bed159 led_trigger_set_default +EXPORT_SYMBOL_GPL vmlinux 0xf1c0ac63 __spi_alloc_controller +EXPORT_SYMBOL_GPL vmlinux 0xf1c8c76f pci_epc_write_header +EXPORT_SYMBOL_GPL vmlinux 0xf1fa06fe pinctrl_select_state +EXPORT_SYMBOL_GPL vmlinux 0xf1fae6a3 asic3_read_register +EXPORT_SYMBOL_GPL vmlinux 0xf1fbc9c6 tun_get_socket +EXPORT_SYMBOL_GPL vmlinux 0xf21477d2 device_property_read_u64_array +EXPORT_SYMBOL_GPL vmlinux 0xf21e1f9b disable_percpu_irq +EXPORT_SYMBOL_GPL vmlinux 0xf22131a1 gpiod_set_config +EXPORT_SYMBOL_GPL vmlinux 0xf23d4b36 __fscrypt_encrypt_symlink +EXPORT_SYMBOL_GPL vmlinux 0xf2481a5f rio_mport_get_efb +EXPORT_SYMBOL_GPL vmlinux 0xf25c8773 devm_device_remove_group +EXPORT_SYMBOL_GPL vmlinux 0xf25ec466 da903x_writes +EXPORT_SYMBOL_GPL vmlinux 0xf2698f21 sdio_enable_func +EXPORT_SYMBOL_GPL vmlinux 0xf2967796 ring_buffer_record_on +EXPORT_SYMBOL_GPL vmlinux 0xf2a8573f sk_free_unlock_clone +EXPORT_SYMBOL_GPL vmlinux 0xf2aa2967 sata_link_scr_lpm +EXPORT_SYMBOL_GPL vmlinux 0xf2aaccc3 ethnl_cable_test_free +EXPORT_SYMBOL_GPL vmlinux 0xf2cddd33 cpuidle_unregister_device +EXPORT_SYMBOL_GPL vmlinux 0xf2d4cc34 devlink_port_param_driverinit_value_get +EXPORT_SYMBOL_GPL vmlinux 0xf2d6b0ff sbitmap_get_shallow +EXPORT_SYMBOL_GPL vmlinux 0xf2e282e9 edac_device_handle_ue_count +EXPORT_SYMBOL_GPL vmlinux 0xf302568d __bdev_dax_supported +EXPORT_SYMBOL_GPL vmlinux 0xf304c8d8 pci_epc_init_notify +EXPORT_SYMBOL_GPL vmlinux 0xf30a5502 cpufreq_enable_boost_support +EXPORT_SYMBOL_GPL vmlinux 0xf30fda27 lzo1x_decompress_safe +EXPORT_SYMBOL_GPL vmlinux 0xf311e156 key_being_used_for +EXPORT_SYMBOL_GPL vmlinux 0xf31632e0 ezx_pcap_read +EXPORT_SYMBOL_GPL vmlinux 0xf3165f53 spi_new_device +EXPORT_SYMBOL_GPL vmlinux 0xf31b3fd1 workqueue_set_max_active +EXPORT_SYMBOL_GPL vmlinux 0xf31d58ab snd_soc_put_volsw_sx +EXPORT_SYMBOL_GPL vmlinux 0xf324d475 __rio_local_write_config_32 +EXPORT_SYMBOL_GPL vmlinux 0xf3257281 usb_del_gadget_udc +EXPORT_SYMBOL_GPL vmlinux 0xf32d2fbd dev_pm_qos_update_request +EXPORT_SYMBOL_GPL vmlinux 0xf331236f btree_geo32 +EXPORT_SYMBOL_GPL vmlinux 0xf3388e9e posix_acl_access_xattr_handler +EXPORT_SYMBOL_GPL vmlinux 0xf342fd5d freq_qos_remove_notifier +EXPORT_SYMBOL_GPL vmlinux 0xf34c1fd9 edac_mc_handle_error +EXPORT_SYMBOL_GPL vmlinux 0xf3808cb1 get_state_synchronize_rcu +EXPORT_SYMBOL_GPL vmlinux 0xf3974db5 snd_soc_dai_set_tristate +EXPORT_SYMBOL_GPL vmlinux 0xf3985e8d relay_late_setup_files +EXPORT_SYMBOL_GPL vmlinux 0xf3b451ca kdb_poll_funcs +EXPORT_SYMBOL_GPL vmlinux 0xf3dd478e usb_gadget_unregister_driver +EXPORT_SYMBOL_GPL vmlinux 0xf3de705c snd_soc_dapm_weak_routes +EXPORT_SYMBOL_GPL vmlinux 0xf3e99ce0 handle_bad_irq +EXPORT_SYMBOL_GPL vmlinux 0xf3fdc7dc kset_create_and_add +EXPORT_SYMBOL_GPL vmlinux 0xf4039457 ahci_reset_controller +EXPORT_SYMBOL_GPL vmlinux 0xf415297a mtk_pinconf_bias_set +EXPORT_SYMBOL_GPL vmlinux 0xf4203cbd fwnode_find_reference +EXPORT_SYMBOL_GPL vmlinux 0xf421a7fd extcon_get_property +EXPORT_SYMBOL_GPL vmlinux 0xf4284cc1 perf_pmu_unregister +EXPORT_SYMBOL_GPL vmlinux 0xf42fec93 __blk_mq_debugfs_rq_show +EXPORT_SYMBOL_GPL vmlinux 0xf44579d7 kstrdup_quotable_cmdline +EXPORT_SYMBOL_GPL vmlinux 0xf447f124 iomap_set_page_dirty +EXPORT_SYMBOL_GPL vmlinux 0xf449c6fb crypto_stats_akcipher_sign +EXPORT_SYMBOL_GPL vmlinux 0xf453b82f mtk_eint_set_debounce +EXPORT_SYMBOL_GPL vmlinux 0xf45cf578 regulator_set_soft_start_regmap +EXPORT_SYMBOL_GPL vmlinux 0xf46216f4 unregister_kretprobes +EXPORT_SYMBOL_GPL vmlinux 0xf467bce7 fib_nl_newrule +EXPORT_SYMBOL_GPL vmlinux 0xf4689d50 linkmode_set_pause +EXPORT_SYMBOL_GPL vmlinux 0xf47de486 usb_kill_anchored_urbs +EXPORT_SYMBOL_GPL vmlinux 0xf485d7a6 ring_buffer_swap_cpu +EXPORT_SYMBOL_GPL vmlinux 0xf4877697 pwm_request +EXPORT_SYMBOL_GPL vmlinux 0xf48ceebd net_cls_cgrp_subsys_on_dfl_key +EXPORT_SYMBOL_GPL vmlinux 0xf48ebcc6 rt_mutex_destroy +EXPORT_SYMBOL_GPL vmlinux 0xf49c680a fsverity_enqueue_verify_work +EXPORT_SYMBOL_GPL vmlinux 0xf49c8179 devm_kfree +EXPORT_SYMBOL_GPL vmlinux 0xf4a034ba get_cpu_device +EXPORT_SYMBOL_GPL vmlinux 0xf4a06bcc sdhci_reset +EXPORT_SYMBOL_GPL vmlinux 0xf4af35c2 rcu_gp_is_normal +EXPORT_SYMBOL_GPL vmlinux 0xf4b4a02a usb_mon_register +EXPORT_SYMBOL_GPL vmlinux 0xf4c45e6c spi_bus_unlock +EXPORT_SYMBOL_GPL vmlinux 0xf4c6b529 pci_find_ht_capability +EXPORT_SYMBOL_GPL vmlinux 0xf4d42ecc dev_pm_opp_detach_genpd +EXPORT_SYMBOL_GPL vmlinux 0xf4d4440b ohci_hub_status_data +EXPORT_SYMBOL_GPL vmlinux 0xf4da71b3 public_key_verify_signature +EXPORT_SYMBOL_GPL vmlinux 0xf4f4676a tegra_bpmp_transfer +EXPORT_SYMBOL_GPL vmlinux 0xf4f69d1f clk_hw_unregister_gate +EXPORT_SYMBOL_GPL vmlinux 0xf4faf388 dm_noflush_suspending +EXPORT_SYMBOL_GPL vmlinux 0xf50e3014 devlink_net_set +EXPORT_SYMBOL_GPL vmlinux 0xf524e496 bpf_trace_run3 +EXPORT_SYMBOL_GPL vmlinux 0xf527cbb2 tty_save_termios +EXPORT_SYMBOL_GPL vmlinux 0xf52abbc9 crypto_shoot_alg +EXPORT_SYMBOL_GPL vmlinux 0xf52e14e9 snmp_fold_field64 +EXPORT_SYMBOL_GPL vmlinux 0xf5468929 usb_sg_init +EXPORT_SYMBOL_GPL vmlinux 0xf546ea23 devm_pinctrl_register_and_init +EXPORT_SYMBOL_GPL vmlinux 0xf54bd49b lcm +EXPORT_SYMBOL_GPL vmlinux 0xf54f2d84 trace_array_get_by_name +EXPORT_SYMBOL_GPL vmlinux 0xf553318d cpuidle_pause_and_lock +EXPORT_SYMBOL_GPL vmlinux 0xf55b6e72 rdev_get_regmap +EXPORT_SYMBOL_GPL vmlinux 0xf55bb665 snd_soc_bytes_get +EXPORT_SYMBOL_GPL vmlinux 0xf569bb5f pci_ecam_map_bus +EXPORT_SYMBOL_GPL vmlinux 0xf5761c3f devm_gpiod_get_index_optional +EXPORT_SYMBOL_GPL vmlinux 0xf578c642 dma_release_channel +EXPORT_SYMBOL_GPL vmlinux 0xf5792292 sk_detach_filter +EXPORT_SYMBOL_GPL vmlinux 0xf5994fee ahci_port_resume +EXPORT_SYMBOL_GPL vmlinux 0xf5a3ba99 linear_range_values_in_range +EXPORT_SYMBOL_GPL vmlinux 0xf5a691cd invalidate_bh_lrus +EXPORT_SYMBOL_GPL vmlinux 0xf5b7e6e7 __wake_up_sync_key +EXPORT_SYMBOL_GPL vmlinux 0xf5bac791 devprop_gpiochip_set_names +EXPORT_SYMBOL_GPL vmlinux 0xf5c549cf xdp_return_frame_rx_napi +EXPORT_SYMBOL_GPL vmlinux 0xf5c94687 phy_led_triggers_unregister +EXPORT_SYMBOL_GPL vmlinux 0xf5d7eb5a register_ftrace_export +EXPORT_SYMBOL_GPL vmlinux 0xf5f28b1d udp_destruct_sock +EXPORT_SYMBOL_GPL vmlinux 0xf5f370e0 async_schedule_node +EXPORT_SYMBOL_GPL vmlinux 0xf60c7675 pci_enable_rom +EXPORT_SYMBOL_GPL vmlinux 0xf618fa5d br_fdb_test_addr_hook +EXPORT_SYMBOL_GPL vmlinux 0xf61af7f7 platform_irq_count +EXPORT_SYMBOL_GPL vmlinux 0xf61baa65 pids_cgrp_subsys_enabled_key +EXPORT_SYMBOL_GPL vmlinux 0xf61c2183 dev_pm_opp_find_level_exact +EXPORT_SYMBOL_GPL vmlinux 0xf6256a8f crypto_unregister_algs +EXPORT_SYMBOL_GPL vmlinux 0xf62b7e37 srcutorture_get_gp_data +EXPORT_SYMBOL_GPL vmlinux 0xf641bb4a ohci_resume +EXPORT_SYMBOL_GPL vmlinux 0xf65461f8 lwtunnel_valid_encap_type_attr +EXPORT_SYMBOL_GPL vmlinux 0xf663ee2f pcap_adc_sync +EXPORT_SYMBOL_GPL vmlinux 0xf66a2170 ata_cable_unknown +EXPORT_SYMBOL_GPL vmlinux 0xf67ca4a9 serial8250_modem_status +EXPORT_SYMBOL_GPL vmlinux 0xf67e1307 snd_soc_component_force_enable_pin +EXPORT_SYMBOL_GPL vmlinux 0xf6989fd4 fsverity_prepare_setattr +EXPORT_SYMBOL_GPL vmlinux 0xf69b1622 gpiochip_irq_unmap +EXPORT_SYMBOL_GPL vmlinux 0xf6afd440 __udp4_lib_lookup +EXPORT_SYMBOL_GPL vmlinux 0xf6b737b0 usb_submit_urb +EXPORT_SYMBOL_GPL vmlinux 0xf6c6124a crypto_alloc_skcipher +EXPORT_SYMBOL_GPL vmlinux 0xf6c8dc62 cpu_hotplug_enable +EXPORT_SYMBOL_GPL vmlinux 0xf6ca74a6 device_destroy +EXPORT_SYMBOL_GPL vmlinux 0xf6cc3ea0 elv_rqhash_add +EXPORT_SYMBOL_GPL vmlinux 0xf6cda760 snd_soc_get_strobe +EXPORT_SYMBOL_GPL vmlinux 0xf6e874f5 ata_timing_merge +EXPORT_SYMBOL_GPL vmlinux 0xf6f16c56 rcu_barrier_tasks +EXPORT_SYMBOL_GPL vmlinux 0xf71a7ca7 regmap_raw_write +EXPORT_SYMBOL_GPL vmlinux 0xf71b9690 regulator_get_voltage_rdev +EXPORT_SYMBOL_GPL vmlinux 0xf730fb4a qcom_smem_state_update_bits +EXPORT_SYMBOL_GPL vmlinux 0xf7340f23 dev_pm_opp_put_prop_name +EXPORT_SYMBOL_GPL vmlinux 0xf7455c16 input_event_to_user +EXPORT_SYMBOL_GPL vmlinux 0xf745f0c3 device_remove_file +EXPORT_SYMBOL_GPL vmlinux 0xf749debc md5_zero_message_hash +EXPORT_SYMBOL_GPL vmlinux 0xf74b2ec4 skb_zerocopy_headlen +EXPORT_SYMBOL_GPL vmlinux 0xf74bc943 regmap_get_raw_read_max +EXPORT_SYMBOL_GPL vmlinux 0xf75b6913 devlink_dpipe_table_unregister +EXPORT_SYMBOL_GPL vmlinux 0xf76b0a59 read_current_timer +EXPORT_SYMBOL_GPL vmlinux 0xf77c319a irq_domain_create_hierarchy +EXPORT_SYMBOL_GPL vmlinux 0xf7864d0f rio_mport_read_config_16 +EXPORT_SYMBOL_GPL vmlinux 0xf7920d26 mpc8xxx_spi_rx_buf_u16 +EXPORT_SYMBOL_GPL vmlinux 0xf7932d5c ip6_dst_lookup_flow +EXPORT_SYMBOL_GPL vmlinux 0xf7ace7ed clk_hw_get_num_parents +EXPORT_SYMBOL_GPL vmlinux 0xf7b7c987 bpf_verifier_log_write +EXPORT_SYMBOL_GPL vmlinux 0xf7bc95b0 devlink_fmsg_pair_nest_start +EXPORT_SYMBOL_GPL vmlinux 0xf7c96f0d mpc8xxx_spi_tx_buf_u16 +EXPORT_SYMBOL_GPL vmlinux 0xf7c9b693 hwspin_lock_request +EXPORT_SYMBOL_GPL vmlinux 0xf7ca651f unregister_hw_breakpoint +EXPORT_SYMBOL_GPL vmlinux 0xf7d961d8 clk_hw_unregister_composite +EXPORT_SYMBOL_GPL vmlinux 0xf7e60838 sdhci_switch_external_dma +EXPORT_SYMBOL_GPL vmlinux 0xf7eb2326 ata_dummy_port_info +EXPORT_SYMBOL_GPL vmlinux 0xf7ee0de0 devlink_dpipe_action_put +EXPORT_SYMBOL_GPL vmlinux 0xf8235a73 fixed_phy_set_link_update +EXPORT_SYMBOL_GPL vmlinux 0xf82c2564 virtqueue_add_outbuf +EXPORT_SYMBOL_GPL vmlinux 0xf82f16b3 execute_in_process_context +EXPORT_SYMBOL_GPL vmlinux 0xf82f3657 work_on_cpu +EXPORT_SYMBOL_GPL vmlinux 0xf834c26d housekeeping_test_cpu +EXPORT_SYMBOL_GPL vmlinux 0xf83fa0cd fuse_kill_sb_anon +EXPORT_SYMBOL_GPL vmlinux 0xf84607ba cpufreq_register_driver +EXPORT_SYMBOL_GPL vmlinux 0xf84ed30c phy_gbit_all_ports_features +EXPORT_SYMBOL_GPL vmlinux 0xf8731bf6 clk_regmap_mux_ro_ops +EXPORT_SYMBOL_GPL vmlinux 0xf880cf6b sk_psock_destroy +EXPORT_SYMBOL_GPL vmlinux 0xf88e0d25 sysfs_remove_mount_point +EXPORT_SYMBOL_GPL vmlinux 0xf8a0bd5c regulator_set_active_discharge_regmap +EXPORT_SYMBOL_GPL vmlinux 0xf8d5a622 wakeup_source_remove +EXPORT_SYMBOL_GPL vmlinux 0xf8e8a3c0 component_master_del +EXPORT_SYMBOL_GPL vmlinux 0xf8f3a0fb ata_ratelimit +EXPORT_SYMBOL_GPL vmlinux 0xf8fad15a irq_chip_mask_ack_parent +EXPORT_SYMBOL_GPL vmlinux 0xf902ac4c snd_soc_dai_get_channel_map +EXPORT_SYMBOL_GPL vmlinux 0xf903f26c dma_buf_vunmap +EXPORT_SYMBOL_GPL vmlinux 0xf90bd5f4 metadata_dst_alloc +EXPORT_SYMBOL_GPL vmlinux 0xf9129e64 devm_pwm_put +EXPORT_SYMBOL_GPL vmlinux 0xf91afa77 devm_hwspin_lock_request_specific +EXPORT_SYMBOL_GPL vmlinux 0xf92230c1 usb_autopm_get_interface_no_resume +EXPORT_SYMBOL_GPL vmlinux 0xf932015f __raw_notifier_call_chain +EXPORT_SYMBOL_GPL vmlinux 0xf948f55d ata_sas_tport_add +EXPORT_SYMBOL_GPL vmlinux 0xf952292a of_irq_parse_one +EXPORT_SYMBOL_GPL vmlinux 0xf95322f4 kthread_parkme +EXPORT_SYMBOL_GPL vmlinux 0xf956c7f9 pci_epc_raise_irq +EXPORT_SYMBOL_GPL vmlinux 0xf9571e9d do_truncate +EXPORT_SYMBOL_GPL vmlinux 0xf9646e69 srcu_barrier +EXPORT_SYMBOL_GPL vmlinux 0xf972d809 pci_user_write_config_byte +EXPORT_SYMBOL_GPL vmlinux 0xf97447d1 cpufreq_cpu_get +EXPORT_SYMBOL_GPL vmlinux 0xf9859480 crypto_register_rngs +EXPORT_SYMBOL_GPL vmlinux 0xf98c5319 mtd_erase +EXPORT_SYMBOL_GPL vmlinux 0xf9a054b5 __round_jiffies +EXPORT_SYMBOL_GPL vmlinux 0xf9abee3b skb_tstamp_tx +EXPORT_SYMBOL_GPL vmlinux 0xf9acc546 register_pernet_device +EXPORT_SYMBOL_GPL vmlinux 0xf9ba36e9 irq_setup_generic_chip +EXPORT_SYMBOL_GPL vmlinux 0xf9cff44b spi_get_device_id +EXPORT_SYMBOL_GPL vmlinux 0xf9d129df klist_iter_init_node +EXPORT_SYMBOL_GPL vmlinux 0xf9e56193 trace_event_ignore_this_pid +EXPORT_SYMBOL_GPL vmlinux 0xfa008bf7 tpm_pcr_extend +EXPORT_SYMBOL_GPL vmlinux 0xfa03858a sram_exec_copy +EXPORT_SYMBOL_GPL vmlinux 0xfa090853 ata_pci_remove_one +EXPORT_SYMBOL_GPL vmlinux 0xfa1945db irq_domain_simple_ops +EXPORT_SYMBOL_GPL vmlinux 0xfa1a8d6e pinctrl_count_index_with_args +EXPORT_SYMBOL_GPL vmlinux 0xfa1d8a56 iommu_detach_device +EXPORT_SYMBOL_GPL vmlinux 0xfa1eb910 unregister_syscore_ops +EXPORT_SYMBOL_GPL vmlinux 0xfa40c5be key_type_trusted +EXPORT_SYMBOL_GPL vmlinux 0xfa4f3b50 gpiod_toggle_active_low +EXPORT_SYMBOL_GPL vmlinux 0xfa690589 netdev_cmd_to_name +EXPORT_SYMBOL_GPL vmlinux 0xfa6e6f91 power_supply_get_property +EXPORT_SYMBOL_GPL vmlinux 0xfa73ed80 device_remove_properties +EXPORT_SYMBOL_GPL vmlinux 0xfa754f14 virtqueue_get_used_addr +EXPORT_SYMBOL_GPL vmlinux 0xfa782602 pci_msi_unmask_irq +EXPORT_SYMBOL_GPL vmlinux 0xfa82f473 klist_next +EXPORT_SYMBOL_GPL vmlinux 0xfa919adf fuse_conn_init +EXPORT_SYMBOL_GPL vmlinux 0xfa94f031 switchdev_handle_port_obj_add +EXPORT_SYMBOL_GPL vmlinux 0xfaa92a02 of_pci_get_devfn +EXPORT_SYMBOL_GPL vmlinux 0xfab30dc0 mdio_bus_exit +EXPORT_SYMBOL_GPL vmlinux 0xfab53ed9 pinctrl_gpio_can_use_line +EXPORT_SYMBOL_GPL vmlinux 0xfaba248a usb_scuttle_anchored_urbs +EXPORT_SYMBOL_GPL vmlinux 0xfabbc367 gpiod_set_value_cansleep +EXPORT_SYMBOL_GPL vmlinux 0xfac2b7b2 tcp_reno_undo_cwnd +EXPORT_SYMBOL_GPL vmlinux 0xfacfeeec fork_usermode_blob +EXPORT_SYMBOL_GPL vmlinux 0xfad9c827 kill_dax +EXPORT_SYMBOL_GPL vmlinux 0xfadcc497 virtio_config_disable +EXPORT_SYMBOL_GPL vmlinux 0xfaeef376 dev_attr_sw_activity +EXPORT_SYMBOL_GPL vmlinux 0xfaf04ef0 fwnode_graph_get_remote_endpoint +EXPORT_SYMBOL_GPL vmlinux 0xfb03c33c serial8250_em485_config +EXPORT_SYMBOL_GPL vmlinux 0xfb123793 xdp_rxq_info_unused +EXPORT_SYMBOL_GPL vmlinux 0xfb15b40b dma_buf_begin_cpu_access +EXPORT_SYMBOL_GPL vmlinux 0xfb24d4ab blocking_notifier_chain_unregister +EXPORT_SYMBOL_GPL vmlinux 0xfb2645ff inet_twsk_alloc +EXPORT_SYMBOL_GPL vmlinux 0xfb27fa14 devm_of_pwm_get +EXPORT_SYMBOL_GPL vmlinux 0xfb32b30f ring_buffer_read_prepare_sync +EXPORT_SYMBOL_GPL vmlinux 0xfb3382a5 irq_remove_generic_chip +EXPORT_SYMBOL_GPL vmlinux 0xfb4550f8 rhashtable_walk_next +EXPORT_SYMBOL_GPL vmlinux 0xfb4ca2f1 pci_test_config_bits +EXPORT_SYMBOL_GPL vmlinux 0xfb51f520 gen_pool_size +EXPORT_SYMBOL_GPL vmlinux 0xfb6083bc usb_alloc_coherent +EXPORT_SYMBOL_GPL vmlinux 0xfb6ae508 crypto_stats_compress +EXPORT_SYMBOL_GPL vmlinux 0xfb6b5325 ata_scsi_unlock_native_capacity +EXPORT_SYMBOL_GPL vmlinux 0xfb6eedf9 power_group_name +EXPORT_SYMBOL_GPL vmlinux 0xfb7a4a7f btree_last +EXPORT_SYMBOL_GPL vmlinux 0xfb8a24a1 serdev_device_write +EXPORT_SYMBOL_GPL vmlinux 0xfb9c163e cpuidle_get_cpu_driver +EXPORT_SYMBOL_GPL vmlinux 0xfba385d1 crypto_remove_spawns +EXPORT_SYMBOL_GPL vmlinux 0xfbae5402 sata_pmp_error_handler +EXPORT_SYMBOL_GPL vmlinux 0xfbbade33 usb_reset_endpoint +EXPORT_SYMBOL_GPL vmlinux 0xfbbcd114 of_dma_router_register +EXPORT_SYMBOL_GPL vmlinux 0xfbbd41ca no_action +EXPORT_SYMBOL_GPL vmlinux 0xfbdb6074 fuse_sync_release +EXPORT_SYMBOL_GPL vmlinux 0xfbdee62f skb_consume_udp +EXPORT_SYMBOL_GPL vmlinux 0xfbfb512c wm8997_patch +EXPORT_SYMBOL_GPL vmlinux 0xfbfea93a scsi_dh_set_params +EXPORT_SYMBOL_GPL vmlinux 0xfc014cb6 smp_call_function_any +EXPORT_SYMBOL_GPL vmlinux 0xfc0342a1 snd_soc_dai_digital_mute +EXPORT_SYMBOL_GPL vmlinux 0xfc03d97a page_is_ram +EXPORT_SYMBOL_GPL vmlinux 0xfc14bb2e dm_get_dev_t +EXPORT_SYMBOL_GPL vmlinux 0xfc189a17 regmap_test_bits +EXPORT_SYMBOL_GPL vmlinux 0xfc19bc45 crypto_dh_encode_key +EXPORT_SYMBOL_GPL vmlinux 0xfc1c8dd6 __netif_set_xps_queue +EXPORT_SYMBOL_GPL vmlinux 0xfc1e19f0 __rio_local_read_config_8 +EXPORT_SYMBOL_GPL vmlinux 0xfc210a03 get_current_tty +EXPORT_SYMBOL_GPL vmlinux 0xfc2b463e palmas_ext_control_req_config +EXPORT_SYMBOL_GPL vmlinux 0xfc350c5e xdp_return_frame +EXPORT_SYMBOL_GPL vmlinux 0xfc3973d8 __tracepoint_mc_event +EXPORT_SYMBOL_GPL vmlinux 0xfc3cd432 pm_wakeup_dev_event +EXPORT_SYMBOL_GPL vmlinux 0xfc416b4a dev_change_net_namespace +EXPORT_SYMBOL_GPL vmlinux 0xfc435265 blkcg_root_css +EXPORT_SYMBOL_GPL vmlinux 0xfc537103 of_device_request_module +EXPORT_SYMBOL_GPL vmlinux 0xfc664544 mbox_client_peek_data +EXPORT_SYMBOL_GPL vmlinux 0xfc6d135d bpf_prog_put +EXPORT_SYMBOL_GPL vmlinux 0xfc70c255 bpf_trace_run12 +EXPORT_SYMBOL_GPL vmlinux 0xfc8cfdb0 crypto_cipher_setkey +EXPORT_SYMBOL_GPL vmlinux 0xfc9d973d genphy_c45_aneg_done +EXPORT_SYMBOL_GPL vmlinux 0xfcb251e1 gpiod_to_irq +EXPORT_SYMBOL_GPL vmlinux 0xfcbe519a crypto_stats_kpp_compute_shared_secret +EXPORT_SYMBOL_GPL vmlinux 0xfccb809f irq_chip_set_type_parent +EXPORT_SYMBOL_GPL vmlinux 0xfccc9b26 tpm1_getcap +EXPORT_SYMBOL_GPL vmlinux 0xfd040770 __blocking_notifier_call_chain +EXPORT_SYMBOL_GPL vmlinux 0xfd4dba7d freq_qos_add_notifier +EXPORT_SYMBOL_GPL vmlinux 0xfd581da1 free_rs +EXPORT_SYMBOL_GPL vmlinux 0xfd5827d5 snd_soc_component_nc_pin_unlocked +EXPORT_SYMBOL_GPL vmlinux 0xfd5d828d ncsi_register_dev +EXPORT_SYMBOL_GPL vmlinux 0xfd6c27ac regulator_set_voltage_time_sel +EXPORT_SYMBOL_GPL vmlinux 0xfd7aeb0b sdio_release_host +EXPORT_SYMBOL_GPL vmlinux 0xfd8e0acc fat_build_inode +EXPORT_SYMBOL_GPL vmlinux 0xfd971920 hwspin_lock_request_specific +EXPORT_SYMBOL_GPL vmlinux 0xfd97e92f tps6586x_writes +EXPORT_SYMBOL_GPL vmlinux 0xfd99b94a arizona_dev_exit +EXPORT_SYMBOL_GPL vmlinux 0xfdaca390 mddev_unlock +EXPORT_SYMBOL_GPL vmlinux 0xfdbc64b1 crypto_find_alg +EXPORT_SYMBOL_GPL vmlinux 0xfdbd7a17 crypto_get_attr_type +EXPORT_SYMBOL_GPL vmlinux 0xfdc0d17a pm_clk_runtime_resume +EXPORT_SYMBOL_GPL vmlinux 0xfdc6e9bf power_supply_external_power_changed +EXPORT_SYMBOL_GPL vmlinux 0xfde4fa7b devm_device_add_groups +EXPORT_SYMBOL_GPL vmlinux 0xfdf637af dm_table_device_name +EXPORT_SYMBOL_GPL vmlinux 0xfdfc821e pskb_put +EXPORT_SYMBOL_GPL vmlinux 0xfe07a4fd of_modalias_node +EXPORT_SYMBOL_GPL vmlinux 0xfe0bbbd2 atomic_notifier_call_chain +EXPORT_SYMBOL_GPL vmlinux 0xfe1c6e7b usb_hcd_pci_remove +EXPORT_SYMBOL_GPL vmlinux 0xfe232988 gpiod_get_array_optional +EXPORT_SYMBOL_GPL vmlinux 0xfe29d810 trace_seq_to_user +EXPORT_SYMBOL_GPL vmlinux 0xfe36aa5b snd_soc_dpcm_can_be_params +EXPORT_SYMBOL_GPL vmlinux 0xfe3e2209 pwm_request_from_chip +EXPORT_SYMBOL_GPL vmlinux 0xfe476039 ktime_get_resolution_ns +EXPORT_SYMBOL_GPL vmlinux 0xfe48eecb __tracepoint_pelt_se_tp +EXPORT_SYMBOL_GPL vmlinux 0xfe495283 sk_msg_return_zero +EXPORT_SYMBOL_GPL vmlinux 0xfe4a357d pci_num_vf +EXPORT_SYMBOL_GPL vmlinux 0xfe4df495 device_set_wakeup_capable +EXPORT_SYMBOL_GPL vmlinux 0xfe5c0467 nanddev_isreserved +EXPORT_SYMBOL_GPL vmlinux 0xfe609951 mtd_kmalloc_up_to +EXPORT_SYMBOL_GPL vmlinux 0xfe8cdb84 ring_buffer_alloc_read_page +EXPORT_SYMBOL_GPL vmlinux 0xfe9833ed devm_phy_put +EXPORT_SYMBOL_GPL vmlinux 0xfe990052 gpio_free +EXPORT_SYMBOL_GPL vmlinux 0xfe9a2870 devm_regulator_bulk_get +EXPORT_SYMBOL_GPL vmlinux 0xfe9bbc65 of_usb_get_phy_mode +EXPORT_SYMBOL_GPL vmlinux 0xfe9f9b32 iommu_group_for_each_dev +EXPORT_SYMBOL_GPL vmlinux 0xfea05d74 balloon_page_list_enqueue +EXPORT_SYMBOL_GPL vmlinux 0xfea55244 usb_init_urb +EXPORT_SYMBOL_GPL vmlinux 0xfeaeebf7 cpufreq_unregister_driver +EXPORT_SYMBOL_GPL vmlinux 0xfec3bf84 icst_clk_setup +EXPORT_SYMBOL_GPL vmlinux 0xfed11ed1 usb_mon_deregister +EXPORT_SYMBOL_GPL vmlinux 0xfed2096b __srcu_notifier_call_chain +EXPORT_SYMBOL_GPL vmlinux 0xfed3bc4e ata_dev_disable +EXPORT_SYMBOL_GPL vmlinux 0xfed8a851 pm_runtime_barrier +EXPORT_SYMBOL_GPL vmlinux 0xfee2cc96 blk_mq_unfreeze_queue +EXPORT_SYMBOL_GPL vmlinux 0xfee7e5cc usb_hcd_pci_pm_ops +EXPORT_SYMBOL_GPL vmlinux 0xfef284b3 dev_pm_opp_put_regulators +EXPORT_SYMBOL_GPL vmlinux 0xfef67ace btree_init +EXPORT_SYMBOL_GPL vmlinux 0xff05fa13 vring_interrupt +EXPORT_SYMBOL_GPL vmlinux 0xff064d62 gpiod_set_transitory +EXPORT_SYMBOL_GPL vmlinux 0xff1e9ed0 device_property_read_u8_array +EXPORT_SYMBOL_GPL vmlinux 0xff291ecf clk_unregister_divider +EXPORT_SYMBOL_GPL vmlinux 0xff3cf0c6 __trace_note_message +EXPORT_SYMBOL_GPL vmlinux 0xff42c374 usb_role_switch_get_role +EXPORT_SYMBOL_GPL vmlinux 0xff43c48b fib6_rule_default +EXPORT_SYMBOL_GPL vmlinux 0xff5a8cfe cn_del_callback +EXPORT_SYMBOL_GPL vmlinux 0xff5d30fb inet_csk_addr2sockaddr +EXPORT_SYMBOL_GPL vmlinux 0xff628805 devlink_port_register +EXPORT_SYMBOL_GPL vmlinux 0xff750a10 of_detach_node +EXPORT_SYMBOL_GPL vmlinux 0xff81487d gpiod_remove_lookup_table +EXPORT_SYMBOL_GPL vmlinux 0xff84949a debugfs_read_file_bool +EXPORT_SYMBOL_GPL vmlinux 0xff9332fb do_take_over_console +EXPORT_SYMBOL_GPL vmlinux 0xffa3bfad sata_scr_write +EXPORT_SYMBOL_GPL vmlinux 0xffa7b6b4 ata_sff_data_xfer32 +EXPORT_SYMBOL_GPL vmlinux 0xffae8e8b nsecs_to_jiffies +EXPORT_SYMBOL_GPL vmlinux 0xffbd94a7 arizona_pm_ops +EXPORT_SYMBOL_GPL vmlinux 0xffd1123f save_stack_trace +EXPORT_SYMBOL_GPL vmlinux 0xffdbc689 lwtstate_free +EXPORT_SYMBOL_GPL vmlinux 0xffde28f7 usb_wakeup_notification +EXPORT_SYMBOL_GPL vmlinux 0xffdf905f ata_wait_after_reset +EXPORT_SYMBOL_GPL vmlinux 0xffe1c089 device_node_to_regmap +EXPORT_SYMBOL_GPL vmlinux 0xffe8bfa3 fib_rules_dump +EXPORT_SYMBOL_GPL vmlinux 0xfff443f2 usb_hcd_unlink_urb_from_ep +FIRMWARE_LOADER_PRIVATE EXPORT_SYMBOL_GPL 0xd3ae7756 fw_fallback_config vmlinux +LTC2497 EXPORT_SYMBOL 0x85ccbf5c ltc2497core_probe drivers/iio/adc/ltc2497-core +LTC2497 EXPORT_SYMBOL 0xd06068ea ltc2497core_remove drivers/iio/adc/ltc2497-core +MCB EXPORT_SYMBOL_GPL 0x03ca6ef3 mcb_free_dev drivers/mcb/mcb +MCB EXPORT_SYMBOL_GPL 0x04bdba9d chameleon_parse_cells drivers/mcb/mcb +MCB EXPORT_SYMBOL_GPL 0x159d5794 mcb_alloc_bus drivers/mcb/mcb +MCB EXPORT_SYMBOL_GPL 0x1a91a239 mcb_bus_add_devices drivers/mcb/mcb +MCB EXPORT_SYMBOL_GPL 0x27ad078f mcb_get_resource drivers/mcb/mcb +MCB EXPORT_SYMBOL_GPL 0x32dc9e71 mcb_request_mem drivers/mcb/mcb +MCB EXPORT_SYMBOL_GPL 0x370a8086 mcb_release_bus drivers/mcb/mcb +MCB EXPORT_SYMBOL_GPL 0x3cf4880c mcb_bus_put drivers/mcb/mcb +MCB EXPORT_SYMBOL_GPL 0x54abb017 mcb_device_register drivers/mcb/mcb +MCB EXPORT_SYMBOL_GPL 0x5d3fa972 mcb_alloc_dev drivers/mcb/mcb +MCB EXPORT_SYMBOL_GPL 0x8eee0a7f mcb_bus_get drivers/mcb/mcb +MCB EXPORT_SYMBOL_GPL 0x9e02ac4a mcb_unregister_driver drivers/mcb/mcb +MCB EXPORT_SYMBOL_GPL 0xbcf52873 mcb_release_mem drivers/mcb/mcb +MCB EXPORT_SYMBOL_GPL 0xc1fa8138 __mcb_register_driver drivers/mcb/mcb +MCB EXPORT_SYMBOL_GPL 0xdecd9b5d mcb_get_irq drivers/mcb/mcb +USB_STORAGE EXPORT_SYMBOL_GPL 0x07d6682f usb_stor_host_template_init drivers/usb/storage/usb-storage +USB_STORAGE EXPORT_SYMBOL_GPL 0x102fc348 usb_stor_disconnect drivers/usb/storage/usb-storage +USB_STORAGE EXPORT_SYMBOL_GPL 0x1b0c4555 usb_stor_probe1 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 0x20b44d7b usb_stor_CB_transport drivers/usb/storage/usb-storage +USB_STORAGE EXPORT_SYMBOL_GPL 0x23790057 usb_stor_transparent_scsi_command drivers/usb/storage/usb-storage +USB_STORAGE EXPORT_SYMBOL_GPL 0x2dda7dd2 usb_stor_resume drivers/usb/storage/usb-storage +USB_STORAGE EXPORT_SYMBOL_GPL 0x3e7e5f51 usb_stor_suspend drivers/usb/storage/usb-storage +USB_STORAGE EXPORT_SYMBOL_GPL 0x42284460 usb_stor_reset_resume drivers/usb/storage/usb-storage +USB_STORAGE EXPORT_SYMBOL_GPL 0x4714a58f usb_stor_post_reset drivers/usb/storage/usb-storage +USB_STORAGE EXPORT_SYMBOL_GPL 0x57d9d318 usb_stor_clear_halt drivers/usb/storage/usb-storage +USB_STORAGE EXPORT_SYMBOL_GPL 0x5a539e2e usb_stor_ctrl_transfer drivers/usb/storage/usb-storage +USB_STORAGE EXPORT_SYMBOL_GPL 0x6ea3d8b1 usb_stor_bulk_transfer_sg drivers/usb/storage/usb-storage +USB_STORAGE EXPORT_SYMBOL_GPL 0x7944c842 usb_stor_access_xfer_buf drivers/usb/storage/usb-storage +USB_STORAGE EXPORT_SYMBOL_GPL 0x7e90f88f usb_stor_pre_reset drivers/usb/storage/usb-storage +USB_STORAGE EXPORT_SYMBOL_GPL 0x95ae5dbb usb_stor_bulk_srb drivers/usb/storage/usb-storage +USB_STORAGE EXPORT_SYMBOL_GPL 0x9db4687b usb_stor_set_xfer_buf drivers/usb/storage/usb-storage +USB_STORAGE EXPORT_SYMBOL_GPL 0xa3374d2f usb_stor_Bulk_transport drivers/usb/storage/usb-storage +USB_STORAGE EXPORT_SYMBOL_GPL 0xa57d6086 usb_stor_control_msg drivers/usb/storage/usb-storage +USB_STORAGE EXPORT_SYMBOL_GPL 0xb0e078b1 fill_inquiry_response drivers/usb/storage/usb-storage +USB_STORAGE EXPORT_SYMBOL_GPL 0xb3360ae3 usb_stor_probe2 drivers/usb/storage/usb-storage +USB_STORAGE EXPORT_SYMBOL_GPL 0xbfb6e147 usb_stor_Bulk_reset drivers/usb/storage/usb-storage +USB_STORAGE EXPORT_SYMBOL_GPL 0xcf1dbec7 usb_stor_CB_reset drivers/usb/storage/usb-storage +USB_STORAGE EXPORT_SYMBOL_GPL 0xea0e822e usb_stor_adjust_quirks drivers/usb/storage/usb-storage +USB_STORAGE EXPORT_SYMBOL_GPL 0xf16baac0 usb_stor_bulk_transfer_buf drivers/usb/storage/usb-storage --- linux-azure-5.8-5.8.0.orig/debian.master/abi/5.8.0-50.56/armhf/generic-lpae +++ linux-azure-5.8-5.8.0/debian.master/abi/5.8.0-50.56/armhf/generic-lpae @@ -0,0 +1,23674 @@ +EXPORT_SYMBOL arch/arm/crypto/chacha-neon 0x220b49ab chacha_crypt_arch +EXPORT_SYMBOL arch/arm/crypto/chacha-neon 0xdc94f829 chacha_init_arch +EXPORT_SYMBOL arch/arm/crypto/chacha-neon 0xdd8ec6bd hchacha_block_arch +EXPORT_SYMBOL arch/arm/crypto/curve25519-neon 0x3c74a43e curve25519_base_arch +EXPORT_SYMBOL arch/arm/crypto/curve25519-neon 0xc832c670 curve25519_arch +EXPORT_SYMBOL arch/arm/crypto/poly1305-arm 0x6ddf27bc poly1305_update_arch +EXPORT_SYMBOL arch/arm/crypto/poly1305-arm 0x737051cc poly1305_init_arch +EXPORT_SYMBOL arch/arm/crypto/poly1305-arm 0xf39f5240 poly1305_final_arch +EXPORT_SYMBOL arch/arm/crypto/sha256-arm 0x34dc21f5 crypto_sha256_arm_finup +EXPORT_SYMBOL arch/arm/crypto/sha256-arm 0xc118c12d crypto_sha256_arm_update +EXPORT_SYMBOL arch/arm/lib/xor-neon 0x0f051164 xor_block_neon_inner +EXPORT_SYMBOL crypto/ecc 0x16e410ff vli_from_be64 +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 0x9263b417 ecc_point_mult_shamir +EXPORT_SYMBOL crypto/ecc 0x92668805 vli_cmp +EXPORT_SYMBOL crypto/ecc 0x9f6efabd vli_sub +EXPORT_SYMBOL crypto/ecc 0xa76b31a2 crypto_ecdh_shared_secret +EXPORT_SYMBOL crypto/ecc 0xd6315f31 ecc_gen_privkey +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 0x29af8c4b crypto_nhpoly1305_update +EXPORT_SYMBOL crypto/nhpoly1305 0x49a7939f crypto_nhpoly1305_final +EXPORT_SYMBOL crypto/nhpoly1305 0x54a1913b crypto_nhpoly1305_final_helper +EXPORT_SYMBOL crypto/nhpoly1305 0x667686ab crypto_nhpoly1305_update_helper +EXPORT_SYMBOL crypto/nhpoly1305 0x6c35ca45 crypto_nhpoly1305_setkey +EXPORT_SYMBOL crypto/nhpoly1305 0xef9666b8 crypto_nhpoly1305_init +EXPORT_SYMBOL crypto/sha3_generic 0x320ca599 crypto_sha3_update +EXPORT_SYMBOL crypto/sha3_generic 0x7f0cfda1 crypto_sha3_init +EXPORT_SYMBOL crypto/sha3_generic 0xaa67896c crypto_sha3_final +EXPORT_SYMBOL crypto/sm3_generic 0x1b4e63e5 crypto_sm3_finup +EXPORT_SYMBOL crypto/sm3_generic 0x91611d8d crypto_sm3_update +EXPORT_SYMBOL crypto/xor 0x5b6c00e6 xor_blocks +EXPORT_SYMBOL drivers/atm/suni 0x7d15aa1d suni_init +EXPORT_SYMBOL drivers/bcma/bcma 0x8ac88707 bcma_core_dma_translation +EXPORT_SYMBOL drivers/bcma/bcma 0xbf74533b 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/block/paride/paride 0x1e5043a4 pi_init +EXPORT_SYMBOL drivers/block/paride/paride 0x2125f363 paride_register +EXPORT_SYMBOL drivers/block/paride/paride 0x4267110a pi_register_driver +EXPORT_SYMBOL drivers/block/paride/paride 0x4e84b67a pi_read_regr +EXPORT_SYMBOL drivers/block/paride/paride 0x6b25418a pi_disconnect +EXPORT_SYMBOL drivers/block/paride/paride 0x7e145948 pi_write_regr +EXPORT_SYMBOL drivers/block/paride/paride 0x8cbe76a7 pi_schedule_claimed +EXPORT_SYMBOL drivers/block/paride/paride 0x8d8a1f33 pi_connect +EXPORT_SYMBOL drivers/block/paride/paride 0x927f1652 paride_unregister +EXPORT_SYMBOL drivers/block/paride/paride 0xb21ba07d pi_unregister_driver +EXPORT_SYMBOL drivers/block/paride/paride 0xb8f9e263 pi_release +EXPORT_SYMBOL drivers/block/paride/paride 0xd21eec65 pi_write_block +EXPORT_SYMBOL drivers/block/paride/paride 0xd4e74fc8 pi_do_claimed +EXPORT_SYMBOL drivers/block/paride/paride 0xf0dd260f pi_read_block +EXPORT_SYMBOL drivers/bluetooth/btbcm 0x6b4f327a btbcm_patchram +EXPORT_SYMBOL drivers/bluetooth/btrsi 0xfc7c987e rsi_bt_ops +EXPORT_SYMBOL drivers/bus/mhi/core/mhi 0x03e05def 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 0x15d60baf ipmi_add_smi +EXPORT_SYMBOL drivers/char/ipmi/ipmi_msghandler 0x230094ac ipmi_smi_watchdog_pretimeout +EXPORT_SYMBOL drivers/char/ipmi/ipmi_msghandler 0x31cab048 ipmi_smi_msg_received +EXPORT_SYMBOL drivers/char/ipmi/ipmi_msghandler 0x40f2b10c ipmi_alloc_smi_msg +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 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 0xa666161a ipmi_smi_watcher_register +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 0xb040a546 ipmi_smi_watcher_unregister +EXPORT_SYMBOL drivers/char/ipmi/ipmi_msghandler 0xc9f041a4 ipmi_get_smi_info +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 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/ipmi/kcs_bmc 0x8442ce8b kcs_bmc_handle_event +EXPORT_SYMBOL drivers/char/ipmi/kcs_bmc 0x9647c49b kcs_bmc_alloc +EXPORT_SYMBOL drivers/char/tpm/st33zp24/tpm_st33zp24 0x5d8ae3f1 st33zp24_probe +EXPORT_SYMBOL drivers/char/tpm/st33zp24/tpm_st33zp24 0x742c8618 st33zp24_remove +EXPORT_SYMBOL drivers/char/tpm/st33zp24/tpm_st33zp24 0xa3b4dad5 st33zp24_pm_suspend +EXPORT_SYMBOL drivers/char/tpm/st33zp24/tpm_st33zp24 0xffdb822d st33zp24_pm_resume +EXPORT_SYMBOL drivers/char/xillybus/xillybus_core 0x25978d50 xillybus_isr +EXPORT_SYMBOL drivers/char/xillybus/xillybus_core 0x50c9f598 xillybus_endpoint_discovery +EXPORT_SYMBOL drivers/char/xillybus/xillybus_core 0x76d1304f xillybus_endpoint_remove +EXPORT_SYMBOL drivers/char/xillybus/xillybus_core 0x7e9a4c5f xillybus_init_endpoint +EXPORT_SYMBOL drivers/crypto/atmel-i2c 0x4b82e0f8 atmel_i2c_send_receive +EXPORT_SYMBOL drivers/crypto/atmel-i2c 0x80a11b1d atmel_i2c_init_read_cmd +EXPORT_SYMBOL drivers/crypto/atmel-i2c 0xc5357091 atmel_i2c_enqueue +EXPORT_SYMBOL drivers/crypto/atmel-i2c 0xc71ed50c atmel_i2c_init_genkey_cmd +EXPORT_SYMBOL drivers/crypto/atmel-i2c 0xf283e995 atmel_i2c_init_random_cmd +EXPORT_SYMBOL drivers/crypto/atmel-i2c 0xfaab573f atmel_i2c_init_ecdh_cmd +EXPORT_SYMBOL drivers/crypto/atmel-i2c 0xfc793522 atmel_i2c_probe +EXPORT_SYMBOL drivers/firewire/firewire-core 0x04b5dfbc fw_core_remove_card +EXPORT_SYMBOL drivers/firewire/firewire-core 0x0f3d220e fw_card_add +EXPORT_SYMBOL drivers/firewire/firewire-core 0x2201269d fw_core_add_address_handler +EXPORT_SYMBOL drivers/firewire/firewire-core 0x2885fec5 fw_get_request_speed +EXPORT_SYMBOL drivers/firewire/firewire-core 0x3acef540 fw_send_request +EXPORT_SYMBOL drivers/firewire/firewire-core 0x3c56ef91 fw_workqueue +EXPORT_SYMBOL drivers/firewire/firewire-core 0x3fec32b0 fw_send_response +EXPORT_SYMBOL drivers/firewire/firewire-core 0x556601c3 fw_csr_string +EXPORT_SYMBOL drivers/firewire/firewire-core 0x570f1b4e fw_iso_resource_manage +EXPORT_SYMBOL drivers/firewire/firewire-core 0x599043e9 fw_cancel_transaction +EXPORT_SYMBOL drivers/firewire/firewire-core 0x5e94b613 fw_iso_context_stop +EXPORT_SYMBOL drivers/firewire/firewire-core 0x5fbd349e fw_iso_buffer_destroy +EXPORT_SYMBOL drivers/firewire/firewire-core 0x6693a99a fw_core_handle_response +EXPORT_SYMBOL drivers/firewire/firewire-core 0x69f08f72 fw_core_remove_descriptor +EXPORT_SYMBOL drivers/firewire/firewire-core 0x7f5b0645 fw_card_initialize +EXPORT_SYMBOL drivers/firewire/firewire-core 0x81dafdfc fw_schedule_bus_reset +EXPORT_SYMBOL drivers/firewire/firewire-core 0x84fa8395 fw_iso_context_create +EXPORT_SYMBOL drivers/firewire/firewire-core 0x86468d44 fw_rcode_string +EXPORT_SYMBOL drivers/firewire/firewire-core 0x8ec4e37e fw_core_add_descriptor +EXPORT_SYMBOL drivers/firewire/firewire-core 0x9cb39d59 fw_iso_context_queue_flush +EXPORT_SYMBOL drivers/firewire/firewire-core 0xad0494c6 fw_iso_context_flush_completions +EXPORT_SYMBOL drivers/firewire/firewire-core 0xaedf84ce fw_high_memory_region +EXPORT_SYMBOL drivers/firewire/firewire-core 0xb67df444 fw_bus_type +EXPORT_SYMBOL drivers/firewire/firewire-core 0xb9449477 fw_core_remove_address_handler +EXPORT_SYMBOL drivers/firewire/firewire-core 0xce65452d fw_iso_context_start +EXPORT_SYMBOL drivers/firewire/firewire-core 0xcf36c596 fw_iso_context_queue +EXPORT_SYMBOL drivers/firewire/firewire-core 0xd167ec5b fw_core_handle_request +EXPORT_SYMBOL drivers/firewire/firewire-core 0xd63631de fw_device_enable_phys_dma +EXPORT_SYMBOL drivers/firewire/firewire-core 0xe3fde125 fw_csr_iterator_next +EXPORT_SYMBOL drivers/firewire/firewire-core 0xe6ed9a74 fw_iso_buffer_init +EXPORT_SYMBOL drivers/firewire/firewire-core 0xe80e5087 fw_csr_iterator_init +EXPORT_SYMBOL drivers/firewire/firewire-core 0xe8b2b155 fw_iso_context_destroy +EXPORT_SYMBOL drivers/firewire/firewire-core 0xeed30862 fw_fill_response +EXPORT_SYMBOL drivers/firewire/firewire-core 0xef9cd769 fw_run_transaction +EXPORT_SYMBOL drivers/firewire/firewire-core 0xf5c77ea4 fw_core_handle_bus_reset +EXPORT_SYMBOL drivers/gpu/drm/drm 0x009a86b8 drm_poll +EXPORT_SYMBOL drivers/gpu/drm/drm 0x019c81ab drm_client_framebuffer_delete +EXPORT_SYMBOL drivers/gpu/drm/drm 0x01f0ec7f drm_print_regset32 +EXPORT_SYMBOL drivers/gpu/drm/drm 0x0393f102 drm_connector_set_vrr_capable_property +EXPORT_SYMBOL drivers/gpu/drm/drm 0x042b0299 drm_writeback_get_out_fence +EXPORT_SYMBOL drivers/gpu/drm/drm 0x05c65622 drm_syncobj_create +EXPORT_SYMBOL drivers/gpu/drm/drm 0x0697d3d8 drm_crtc_init_with_planes +EXPORT_SYMBOL drivers/gpu/drm/drm 0x06b30f2e drm_mode_create_tv_margin_properties +EXPORT_SYMBOL drivers/gpu/drm/drm 0x070b28aa drm_ht_remove_item +EXPORT_SYMBOL drivers/gpu/drm/drm 0x0712e21d drm_edid_get_monitor_name +EXPORT_SYMBOL drivers/gpu/drm/drm 0x07f88521 drm_edid_is_valid +EXPORT_SYMBOL drivers/gpu/drm/drm 0x07fb3645 drm_send_event +EXPORT_SYMBOL drivers/gpu/drm/drm 0x0813bc88 drm_color_lut_check +EXPORT_SYMBOL drivers/gpu/drm/drm 0x081e2769 drm_syncobj_find +EXPORT_SYMBOL drivers/gpu/drm/drm 0x082f00c6 drm_gem_unmap_dma_buf +EXPORT_SYMBOL drivers/gpu/drm/drm 0x099de731 drm_syncobj_replace_fence +EXPORT_SYMBOL drivers/gpu/drm/drm 0x0a182887 drm_panel_of_backlight +EXPORT_SYMBOL drivers/gpu/drm/drm 0x0a72f765 drm_clflush_virt_range +EXPORT_SYMBOL drivers/gpu/drm/drm 0x0ad9a913 drm_plane_force_disable +EXPORT_SYMBOL drivers/gpu/drm/drm 0x0b5d4036 drm_gem_vm_open +EXPORT_SYMBOL drivers/gpu/drm/drm 0x0c8a2efd drm_plane_create_color_properties +EXPORT_SYMBOL drivers/gpu/drm/drm 0x0cdc5a2a drm_crtc_check_viewport +EXPORT_SYMBOL drivers/gpu/drm/drm 0x0d18d7f3 drm_connector_attach_vrr_capable_property +EXPORT_SYMBOL drivers/gpu/drm/drm 0x0dee1c9a drm_match_cea_mode +EXPORT_SYMBOL drivers/gpu/drm/drm 0x0dfd0e69 drm_atomic_bridge_chain_post_disable +EXPORT_SYMBOL drivers/gpu/drm/drm 0x0e83a5e9 drm_crtc_from_index +EXPORT_SYMBOL drivers/gpu/drm/drm 0x0fd60df2 drm_get_connector_status_name +EXPORT_SYMBOL drivers/gpu/drm/drm 0x10228e04 drm_gtf_mode_complex +EXPORT_SYMBOL drivers/gpu/drm/drm 0x107742a9 drm_get_subpixel_order_name +EXPORT_SYMBOL drivers/gpu/drm/drm 0x10a33de6 drm_mode_create_from_cmdline_mode +EXPORT_SYMBOL drivers/gpu/drm/drm 0x10c62b61 __drm_printfn_debug +EXPORT_SYMBOL drivers/gpu/drm/drm 0x12347c72 drm_crtc_arm_vblank_event +EXPORT_SYMBOL drivers/gpu/drm/drm 0x12e1dae7 drm_mode_config_reset +EXPORT_SYMBOL drivers/gpu/drm/drm 0x12ff6ee6 drm_plane_create_zpos_property +EXPORT_SYMBOL drivers/gpu/drm/drm 0x13021165 drm_atomic_bridge_chain_disable +EXPORT_SYMBOL drivers/gpu/drm/drm 0x1309c832 drm_warn_on_modeset_not_all_locked +EXPORT_SYMBOL drivers/gpu/drm/drm 0x136c7a97 drm_add_edid_modes +EXPORT_SYMBOL drivers/gpu/drm/drm 0x138bce43 drm_mode_plane_set_obj_prop +EXPORT_SYMBOL drivers/gpu/drm/drm 0x13e14103 drm_mode_equal_no_clocks_no_stereo +EXPORT_SYMBOL drivers/gpu/drm/drm 0x14f1f659 drm_property_create_signed_range +EXPORT_SYMBOL drivers/gpu/drm/drm 0x15d8aa41 __drm_printfn_seq_file +EXPORT_SYMBOL drivers/gpu/drm/drm 0x15e974b1 drm_get_format_info +EXPORT_SYMBOL drivers/gpu/drm/drm 0x165076d2 drm_gem_prime_handle_to_fd +EXPORT_SYMBOL drivers/gpu/drm/drm 0x16ac2597 drm_printf +EXPORT_SYMBOL drivers/gpu/drm/drm 0x16f823f0 drm_mode_duplicate +EXPORT_SYMBOL drivers/gpu/drm/drm 0x17cb5081 drm_i2c_encoder_mode_fixup +EXPORT_SYMBOL drivers/gpu/drm/drm 0x18bffe3d drm_connector_attach_scaling_mode_property +EXPORT_SYMBOL drivers/gpu/drm/drm 0x19f8c1e2 drm_dev_register +EXPORT_SYMBOL drivers/gpu/drm/drm 0x1a411479 drm_syncobj_free +EXPORT_SYMBOL drivers/gpu/drm/drm 0x1adc5aae drm_gem_dmabuf_vmap +EXPORT_SYMBOL drivers/gpu/drm/drm 0x1dbcf7b7 drm_framebuffer_plane_width +EXPORT_SYMBOL drivers/gpu/drm/drm 0x1e55ade8 drmm_add_final_kfree +EXPORT_SYMBOL drivers/gpu/drm/drm 0x1e755c08 drm_mode_set_config_internal +EXPORT_SYMBOL drivers/gpu/drm/drm 0x1f722065 drm_atomic_set_fence_for_plane +EXPORT_SYMBOL drivers/gpu/drm/drm 0x21313faf drm_mode_get_tile_group +EXPORT_SYMBOL drivers/gpu/drm/drm 0x21535abe drm_atomic_add_affected_planes +EXPORT_SYMBOL drivers/gpu/drm/drm 0x215b4efc __drm_atomic_helper_set_config +EXPORT_SYMBOL drivers/gpu/drm/drm 0x2181c0f9 drm_i2c_encoder_save +EXPORT_SYMBOL drivers/gpu/drm/drm 0x2183c08c drm_mm_scan_add_block +EXPORT_SYMBOL drivers/gpu/drm/drm 0x224322d3 drm_panel_detach +EXPORT_SYMBOL drivers/gpu/drm/drm 0x230e8b5c drm_writeback_prepare_job +EXPORT_SYMBOL drivers/gpu/drm/drm 0x2461597c drm_gem_map_attach +EXPORT_SYMBOL drivers/gpu/drm/drm 0x24fb2a31 drm_connector_list_iter_end +EXPORT_SYMBOL drivers/gpu/drm/drm 0x2532689b drm_mode_is_420 +EXPORT_SYMBOL drivers/gpu/drm/drm 0x25daad93 __drm_mm_interval_first +EXPORT_SYMBOL drivers/gpu/drm/drm 0x2634c9bb drm_dev_has_vblank +EXPORT_SYMBOL drivers/gpu/drm/drm 0x26a03ce8 drm_gem_map_dma_buf +EXPORT_SYMBOL drivers/gpu/drm/drm 0x26faa40f drm_plane_cleanup +EXPORT_SYMBOL drivers/gpu/drm/drm 0x271f5b9c drm_atomic_private_obj_init +EXPORT_SYMBOL drivers/gpu/drm/drm 0x2754dad8 drm_mm_reserve_node +EXPORT_SYMBOL drivers/gpu/drm/drm 0x2766b724 drm_property_create +EXPORT_SYMBOL drivers/gpu/drm/drm 0x27be15ef drm_hdmi_vendor_infoframe_from_display_mode +EXPORT_SYMBOL drivers/gpu/drm/drm 0x27e20320 drm_syncobj_add_point +EXPORT_SYMBOL drivers/gpu/drm/drm 0x29f078d1 drm_mode_legacy_fb_format +EXPORT_SYMBOL drivers/gpu/drm/drm 0x2a0a49e8 drm_client_buffer_vunmap +EXPORT_SYMBOL drivers/gpu/drm/drm 0x2a4dae44 drm_connector_init +EXPORT_SYMBOL drivers/gpu/drm/drm 0x2a6c69b6 drm_mode_put_tile_group +EXPORT_SYMBOL drivers/gpu/drm/drm 0x2a962499 drm_mm_scan_init_with_range +EXPORT_SYMBOL drivers/gpu/drm/drm 0x2aaea1c3 drm_hdmi_avi_infoframe_colorspace +EXPORT_SYMBOL drivers/gpu/drm/drm 0x2af49d8c drm_set_preferred_mode +EXPORT_SYMBOL drivers/gpu/drm/drm 0x2c11cb4e drm_property_create_enum +EXPORT_SYMBOL drivers/gpu/drm/drm 0x2d50570f drm_rect_calc_hscale +EXPORT_SYMBOL drivers/gpu/drm/drm 0x2d6d795f drm_client_init +EXPORT_SYMBOL drivers/gpu/drm/drm 0x2d8257e0 drm_syncobj_get_handle +EXPORT_SYMBOL drivers/gpu/drm/drm 0x2eae180b __devm_drm_dev_alloc +EXPORT_SYMBOL drivers/gpu/drm/drm 0x2eb4c77c drm_event_reserve_init +EXPORT_SYMBOL drivers/gpu/drm/drm 0x2f5304ef drm_gem_cma_prime_import_sg_table_vmap +EXPORT_SYMBOL drivers/gpu/drm/drm 0x2ffa2b04 drm_crtc_vblank_count +EXPORT_SYMBOL drivers/gpu/drm/drm 0x3005c9fc drm_crtc_handle_vblank +EXPORT_SYMBOL drivers/gpu/drm/drm 0x306aaa40 drm_crtc_cleanup +EXPORT_SYMBOL drivers/gpu/drm/drm 0x31b8a5e3 __drm_set_edid_firmware_path +EXPORT_SYMBOL drivers/gpu/drm/drm 0x325c2c12 drm_framebuffer_remove +EXPORT_SYMBOL drivers/gpu/drm/drm 0x3261c299 drm_gem_fence_array_add_implicit +EXPORT_SYMBOL drivers/gpu/drm/drm 0x337e23ce drm_atomic_get_crtc_state +EXPORT_SYMBOL drivers/gpu/drm/drm 0x33c6709a drm_dev_printk +EXPORT_SYMBOL drivers/gpu/drm/drm 0x34f8a5ce drm_connector_list_iter_next +EXPORT_SYMBOL drivers/gpu/drm/drm 0x3503d682 drm_mode_vrefresh +EXPORT_SYMBOL drivers/gpu/drm/drm 0x354e090f drm_atomic_set_crtc_for_connector +EXPORT_SYMBOL drivers/gpu/drm/drm 0x35793cd9 drm_crtc_vblank_helper_get_vblank_timestamp +EXPORT_SYMBOL drivers/gpu/drm/drm 0x35afae24 __drm_puts_seq_file +EXPORT_SYMBOL drivers/gpu/drm/drm 0x365f528b drm_gem_shmem_print_info +EXPORT_SYMBOL drivers/gpu/drm/drm 0x378d294c drm_mode_is_420_also +EXPORT_SYMBOL drivers/gpu/drm/drm 0x380b5fbb __drm_get_edid_firmware_path +EXPORT_SYMBOL drivers/gpu/drm/drm 0x3836671f drm_mode_probed_add +EXPORT_SYMBOL drivers/gpu/drm/drm 0x39093b79 drm_vma_offset_manager_init +EXPORT_SYMBOL drivers/gpu/drm/drm 0x391b9373 drm_atomic_get_new_bridge_state +EXPORT_SYMBOL drivers/gpu/drm/drm 0x3a684801 drm_mode_object_get +EXPORT_SYMBOL drivers/gpu/drm/drm 0x3a6cdd9b drm_panel_get_modes +EXPORT_SYMBOL drivers/gpu/drm/drm 0x3a7d0312 drm_mode_validate_ycbcr420 +EXPORT_SYMBOL drivers/gpu/drm/drm 0x3b10acea drm_panel_add +EXPORT_SYMBOL drivers/gpu/drm/drm 0x3b3dfc03 drm_sysfs_connector_status_event +EXPORT_SYMBOL drivers/gpu/drm/drm 0x3b5c207f drm_modeset_acquire_init +EXPORT_SYMBOL drivers/gpu/drm/drm 0x3ba17eab drm_ht_insert_item +EXPORT_SYMBOL drivers/gpu/drm/drm 0x3cef3292 drm_connector_list_update +EXPORT_SYMBOL drivers/gpu/drm/drm 0x3e3bb636 drm_property_destroy +EXPORT_SYMBOL drivers/gpu/drm/drm 0x3e5157c0 drm_vblank_restore +EXPORT_SYMBOL drivers/gpu/drm/drm 0x40ea2938 drm_framebuffer_plane_height +EXPORT_SYMBOL drivers/gpu/drm/drm 0x421d4b85 drm_plane_create_zpos_immutable_property +EXPORT_SYMBOL drivers/gpu/drm/drm 0x434fb6f3 drm_property_lookup_blob +EXPORT_SYMBOL drivers/gpu/drm/drm 0x440a9f16 drm_plane_create_rotation_property +EXPORT_SYMBOL drivers/gpu/drm/drm 0x448dfc77 drm_bridge_chain_mode_fixup +EXPORT_SYMBOL drivers/gpu/drm/drm 0x44c28edf drm_modeset_unlock_all +EXPORT_SYMBOL drivers/gpu/drm/drm 0x453d11de drm_client_buffer_vmap +EXPORT_SYMBOL drivers/gpu/drm/drm 0x45ae1452 drm_connector_set_link_status_property +EXPORT_SYMBOL drivers/gpu/drm/drm 0x46c59d9d drm_atomic_add_encoder_bridges +EXPORT_SYMBOL drivers/gpu/drm/drm 0x473cddad drm_dev_unplug +EXPORT_SYMBOL drivers/gpu/drm/drm 0x474156b5 drm_mode_equal +EXPORT_SYMBOL drivers/gpu/drm/drm 0x47f985aa drm_edid_duplicate +EXPORT_SYMBOL drivers/gpu/drm/drm 0x4834906a drm_flip_work_commit +EXPORT_SYMBOL drivers/gpu/drm/drm 0x4846995b drm_atomic_get_old_private_obj_state +EXPORT_SYMBOL drivers/gpu/drm/drm 0x48f22c03 drm_modeset_lock +EXPORT_SYMBOL drivers/gpu/drm/drm 0x49650259 drm_modeset_drop_locks +EXPORT_SYMBOL drivers/gpu/drm/drm 0x49b9251d drm_i2c_encoder_init +EXPORT_SYMBOL drivers/gpu/drm/drm 0x4ac69dfb drm_connector_attach_content_type_property +EXPORT_SYMBOL drivers/gpu/drm/drm 0x4b7ebf95 drm_mm_remove_node +EXPORT_SYMBOL drivers/gpu/drm/drm 0x4c1b724f drm_client_modeset_probe +EXPORT_SYMBOL drivers/gpu/drm/drm 0x4c500e16 drm_display_info_set_bus_formats +EXPORT_SYMBOL drivers/gpu/drm/drm 0x4d18fc40 drm_framebuffer_unregister_private +EXPORT_SYMBOL drivers/gpu/drm/drm 0x4e095f11 drm_get_format_name +EXPORT_SYMBOL drivers/gpu/drm/drm 0x4e1fa852 drm_gem_object_put_unlocked +EXPORT_SYMBOL drivers/gpu/drm/drm 0x4f0acb24 drm_crtc_vblank_get +EXPORT_SYMBOL drivers/gpu/drm/drm 0x4f18a150 __drm_debug +EXPORT_SYMBOL drivers/gpu/drm/drm 0x4f5a4ed2 drm_gem_dmabuf_release +EXPORT_SYMBOL drivers/gpu/drm/drm 0x4f6e7e07 drm_atomic_get_new_private_obj_state +EXPORT_SYMBOL drivers/gpu/drm/drm 0x4fa7d85b drm_writeback_signal_completion +EXPORT_SYMBOL drivers/gpu/drm/drm 0x4fd4f4cb drm_connector_set_panel_orientation_with_quirk +EXPORT_SYMBOL drivers/gpu/drm/drm 0x50586f98 drm_panel_enable +EXPORT_SYMBOL drivers/gpu/drm/drm 0x50674de7 drm_timeout_abs_to_jiffies +EXPORT_SYMBOL drivers/gpu/drm/drm 0x5168c02c drm_gem_create_mmap_offset_size +EXPORT_SYMBOL drivers/gpu/drm/drm 0x516bcadb drm_prime_sg_to_page_addr_arrays +EXPORT_SYMBOL drivers/gpu/drm/drm 0x52cf65de drm_mode_create_hdmi_colorspace_property +EXPORT_SYMBOL drivers/gpu/drm/drm 0x550db1ae drm_debugfs_create_files +EXPORT_SYMBOL drivers/gpu/drm/drm 0x55a6f524 drm_mode_crtc_set_gamma_size +EXPORT_SYMBOL drivers/gpu/drm/drm 0x56607e69 drm_gem_unlock_reservations +EXPORT_SYMBOL drivers/gpu/drm/drm 0x56c6e828 drm_mode_get_hv_timing +EXPORT_SYMBOL drivers/gpu/drm/drm 0x56e48a6e drm_driver_legacy_fb_format +EXPORT_SYMBOL drivers/gpu/drm/drm 0x57698a50 drm_mm_takedown +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 0x59c663c6 drm_gem_vm_close +EXPORT_SYMBOL drivers/gpu/drm/drm 0x5a79975c drm_noop +EXPORT_SYMBOL drivers/gpu/drm/drm 0x5cfc557a drm_connector_set_tile_property +EXPORT_SYMBOL drivers/gpu/drm/drm 0x5f11a850 drm_client_modeset_commit +EXPORT_SYMBOL drivers/gpu/drm/drm 0x5f7985a5 drm_mm_scan_remove_block +EXPORT_SYMBOL drivers/gpu/drm/drm 0x5f9c7c7e drm_gem_prime_export +EXPORT_SYMBOL drivers/gpu/drm/drm 0x61b3e19d drm_client_dev_hotplug +EXPORT_SYMBOL drivers/gpu/drm/drm 0x6215b1bb drm_vma_offset_add +EXPORT_SYMBOL drivers/gpu/drm/drm 0x628b767f drm_gem_object_init +EXPORT_SYMBOL drivers/gpu/drm/drm 0x633a8148 drm_dev_put +EXPORT_SYMBOL drivers/gpu/drm/drm 0x637cac19 drm_mode_set_crtcinfo +EXPORT_SYMBOL drivers/gpu/drm/drm 0x63e125b6 drm_property_blob_put +EXPORT_SYMBOL drivers/gpu/drm/drm 0x661de57a drm_property_create_bitmask +EXPORT_SYMBOL drivers/gpu/drm/drm 0x6635ad80 drm_gem_put_pages +EXPORT_SYMBOL drivers/gpu/drm/drm 0x664a7f1f drm_client_register +EXPORT_SYMBOL drivers/gpu/drm/drm 0x66551bc7 drm_detect_monitor_audio +EXPORT_SYMBOL drivers/gpu/drm/drm 0x68446fe5 drm_mode_object_find +EXPORT_SYMBOL drivers/gpu/drm/drm 0x6b0b9550 drm_flip_work_init +EXPORT_SYMBOL drivers/gpu/drm/drm 0x6b5447c3 drm_mode_find_dmt +EXPORT_SYMBOL drivers/gpu/drm/drm 0x6b88a4c1 drm_state_dump +EXPORT_SYMBOL drivers/gpu/drm/drm 0x6d6fab8f drmm_kfree +EXPORT_SYMBOL drivers/gpu/drm/drm 0x6dec0e69 drm_legacy_ioremapfree +EXPORT_SYMBOL drivers/gpu/drm/drm 0x6e30ba8e drm_rect_rotate_inv +EXPORT_SYMBOL drivers/gpu/drm/drm 0x6ea2d3d0 drm_gem_dma_resv_wait +EXPORT_SYMBOL drivers/gpu/drm/drm 0x6fef364b drm_client_release +EXPORT_SYMBOL drivers/gpu/drm/drm 0x71221d52 drm_vma_offset_manager_destroy +EXPORT_SYMBOL drivers/gpu/drm/drm 0x717c931b drm_any_plane_has_format +EXPORT_SYMBOL drivers/gpu/drm/drm 0x71900cf2 drm_syncobj_get_fd +EXPORT_SYMBOL drivers/gpu/drm/drm 0x72e037fb drm_connector_register +EXPORT_SYMBOL drivers/gpu/drm/drm 0x73542ff7 __drm_atomic_helper_disable_plane +EXPORT_SYMBOL drivers/gpu/drm/drm 0x74f7fec7 drm_plane_init +EXPORT_SYMBOL drivers/gpu/drm/drm 0x75644363 drm_atomic_get_bridge_state +EXPORT_SYMBOL drivers/gpu/drm/drm 0x759cd721 drm_ioctl_kernel +EXPORT_SYMBOL drivers/gpu/drm/drm 0x75e887e6 drm_master_internal_acquire +EXPORT_SYMBOL drivers/gpu/drm/drm 0x772ac138 drm_crtc_vblank_reset +EXPORT_SYMBOL drivers/gpu/drm/drm 0x77e9ef70 drm_writeback_queue_job +EXPORT_SYMBOL drivers/gpu/drm/drm 0x7856720c drm_event_reserve_init_locked +EXPORT_SYMBOL drivers/gpu/drm/drm 0x793dc55c drm_add_override_edid_modes +EXPORT_SYMBOL drivers/gpu/drm/drm 0x7ce1d054 drm_property_blob_get +EXPORT_SYMBOL drivers/gpu/drm/drm 0x7e016d38 drm_flip_work_cleanup +EXPORT_SYMBOL drivers/gpu/drm/drm 0x7e185515 drm_dev_dbg +EXPORT_SYMBOL drivers/gpu/drm/drm 0x7e8d05eb drm_of_crtc_port_mask +EXPORT_SYMBOL drivers/gpu/drm/drm 0x7edc546f drm_mm_print +EXPORT_SYMBOL drivers/gpu/drm/drm 0x7edca70d drm_hdmi_avi_infoframe_from_display_mode +EXPORT_SYMBOL drivers/gpu/drm/drm 0x7f65c2b7 drm_modeset_lock_init +EXPORT_SYMBOL drivers/gpu/drm/drm 0x7ff16bce drm_get_edid_switcheroo +EXPORT_SYMBOL drivers/gpu/drm/drm 0x80937ab2 drm_prime_pages_to_sg +EXPORT_SYMBOL drivers/gpu/drm/drm 0x80d87577 of_drm_find_panel +EXPORT_SYMBOL drivers/gpu/drm/drm 0x8108949d drm_mode_equal_no_clocks +EXPORT_SYMBOL drivers/gpu/drm/drm 0x81913eb3 drm_gem_handle_delete +EXPORT_SYMBOL drivers/gpu/drm/drm 0x81992424 drm_edid_header_is_valid +EXPORT_SYMBOL drivers/gpu/drm/drm 0x84459fcb drm_calc_timestamping_constants +EXPORT_SYMBOL drivers/gpu/drm/drm 0x847b49a5 drm_dev_alloc +EXPORT_SYMBOL drivers/gpu/drm/drm 0x847ba5ba drm_connector_set_path_property +EXPORT_SYMBOL drivers/gpu/drm/drm 0x8563a554 drm_ht_remove +EXPORT_SYMBOL drivers/gpu/drm/drm 0x8577922a drm_connector_attach_tv_margin_properties +EXPORT_SYMBOL drivers/gpu/drm/drm 0x8634374d drm_dev_set_unique +EXPORT_SYMBOL drivers/gpu/drm/drm 0x865d3b19 drm_handle_vblank +EXPORT_SYMBOL drivers/gpu/drm/drm 0x86cfa899 drm_object_property_set_value +EXPORT_SYMBOL drivers/gpu/drm/drm 0x871ab41a drm_rect_intersect +EXPORT_SYMBOL drivers/gpu/drm/drm 0x8745a565 drm_i2c_encoder_destroy +EXPORT_SYMBOL drivers/gpu/drm/drm 0x874702e4 __drmm_add_action +EXPORT_SYMBOL drivers/gpu/drm/drm 0x8829bbef drm_panel_attach +EXPORT_SYMBOL drivers/gpu/drm/drm 0x898a01db drm_panel_init +EXPORT_SYMBOL drivers/gpu/drm/drm 0x89af8d8c drm_gem_shmem_vmap +EXPORT_SYMBOL drivers/gpu/drm/drm 0x8a69d413 drm_gem_objects_lookup +EXPORT_SYMBOL drivers/gpu/drm/drm 0x8b346cec drm_gem_cma_print_info +EXPORT_SYMBOL drivers/gpu/drm/drm 0x8b488750 drm_gem_shmem_put_pages +EXPORT_SYMBOL drivers/gpu/drm/drm 0x8b777c73 drm_i2c_encoder_restore +EXPORT_SYMBOL drivers/gpu/drm/drm 0x8bbb71fd drm_i2c_encoder_mode_set +EXPORT_SYMBOL drivers/gpu/drm/drm 0x8c4fd37c drm_mode_set_name +EXPORT_SYMBOL drivers/gpu/drm/drm 0x8e5bba4b drm_hdcp_update_content_protection +EXPORT_SYMBOL drivers/gpu/drm/drm 0x8fc13552 drm_gem_mmap_obj +EXPORT_SYMBOL drivers/gpu/drm/drm 0x9116ca2e drm_hdmi_avi_infoframe_content_type +EXPORT_SYMBOL drivers/gpu/drm/drm 0x91224ad0 drm_mode_prune_invalid +EXPORT_SYMBOL drivers/gpu/drm/drm 0x91318f0e drm_i2c_encoder_detect +EXPORT_SYMBOL drivers/gpu/drm/drm 0x91fec1cc drm_rect_calc_vscale +EXPORT_SYMBOL drivers/gpu/drm/drm 0x9213f5c3 drm_edid_to_speaker_allocation +EXPORT_SYMBOL drivers/gpu/drm/drm 0x921c6235 drm_panel_disable +EXPORT_SYMBOL drivers/gpu/drm/drm 0x9229b825 drm_atomic_set_mode_for_crtc +EXPORT_SYMBOL drivers/gpu/drm/drm 0x92a118b9 drm_irq_install +EXPORT_SYMBOL drivers/gpu/drm/drm 0x92bc6fd0 drm_vma_offset_remove +EXPORT_SYMBOL drivers/gpu/drm/drm 0x93a51340 drm_ioctl +EXPORT_SYMBOL drivers/gpu/drm/drm 0x93da3a4e drm_modeset_backoff +EXPORT_SYMBOL drivers/gpu/drm/drm 0x93dd241e drm_connector_has_possible_encoder +EXPORT_SYMBOL drivers/gpu/drm/drm 0x941cbfb3 drm_mode_create_scaling_mode_property +EXPORT_SYMBOL drivers/gpu/drm/drm 0x95538bfd drm_mode_destroy +EXPORT_SYMBOL drivers/gpu/drm/drm 0x95dbc76d drm_ht_create +EXPORT_SYMBOL drivers/gpu/drm/drm 0x95e3a673 drm_writeback_connector_init +EXPORT_SYMBOL drivers/gpu/drm/drm 0x96187b4d drm_property_add_enum +EXPORT_SYMBOL drivers/gpu/drm/drm 0x9626b9a3 drm_atomic_state_alloc +EXPORT_SYMBOL drivers/gpu/drm/drm 0x9646ca7c drm_encoder_init +EXPORT_SYMBOL drivers/gpu/drm/drm 0x967f15bd drm_gem_object_lookup +EXPORT_SYMBOL drivers/gpu/drm/drm 0x96c665d3 drm_gem_dumb_destroy +EXPORT_SYMBOL drivers/gpu/drm/drm 0x96fe8ffd drm_of_component_probe +EXPORT_SYMBOL drivers/gpu/drm/drm 0x974f0db8 drm_atomic_state_init +EXPORT_SYMBOL drivers/gpu/drm/drm 0x982698bd drm_mode_match +EXPORT_SYMBOL drivers/gpu/drm/drm 0x989ffa09 drm_atomic_set_crtc_for_plane +EXPORT_SYMBOL drivers/gpu/drm/drm 0x9937450f drm_gem_lock_reservations +EXPORT_SYMBOL drivers/gpu/drm/drm 0x99a455f1 drm_modeset_lock_all_ctx +EXPORT_SYMBOL drivers/gpu/drm/drm 0x99fd20aa drm_rect_clip_scaled +EXPORT_SYMBOL drivers/gpu/drm/drm 0x9a0207c6 drm_connector_list_iter_begin +EXPORT_SYMBOL drivers/gpu/drm/drm 0x9a7298c4 drm_release +EXPORT_SYMBOL drivers/gpu/drm/drm 0x9af6867f drm_i2c_encoder_dpms +EXPORT_SYMBOL drivers/gpu/drm/drm 0x9b8a53f5 drm_ht_just_insert_please +EXPORT_SYMBOL drivers/gpu/drm/drm 0x9ba5f721 drm_atomic_set_mode_prop_for_crtc +EXPORT_SYMBOL drivers/gpu/drm/drm 0x9cc6f6a1 drm_gem_free_mmap_offset +EXPORT_SYMBOL drivers/gpu/drm/drm 0x9d1d0009 drm_atomic_check_only +EXPORT_SYMBOL drivers/gpu/drm/drm 0x9e5c2191 drm_crtc_vblank_count_and_time +EXPORT_SYMBOL drivers/gpu/drm/drm 0x9e759dba drm_gem_shmem_vunmap +EXPORT_SYMBOL drivers/gpu/drm/drm 0x9fa3c228 drm_connector_cleanup +EXPORT_SYMBOL drivers/gpu/drm/drm 0xa0282b9e drm_connector_attach_content_protection_property +EXPORT_SYMBOL drivers/gpu/drm/drm 0xa02dddaa drm_bridge_chain_pre_enable +EXPORT_SYMBOL drivers/gpu/drm/drm 0xa0370ab2 drm_invalid_op +EXPORT_SYMBOL drivers/gpu/drm/drm 0xa0713087 drm_ht_find_item +EXPORT_SYMBOL drivers/gpu/drm/drm 0xa0ce8883 drm_connector_unregister +EXPORT_SYMBOL drivers/gpu/drm/drm 0xa1a34c9c drm_legacy_ioremap +EXPORT_SYMBOL drivers/gpu/drm/drm 0xa1dedcb3 drm_connector_update_edid_property +EXPORT_SYMBOL drivers/gpu/drm/drm 0xa1f04a73 drm_gem_shmem_pin +EXPORT_SYMBOL drivers/gpu/drm/drm 0xa22e14a2 drm_i2c_encoder_commit +EXPORT_SYMBOL drivers/gpu/drm/drm 0xa2abb5d2 drmm_mode_config_init +EXPORT_SYMBOL drivers/gpu/drm/drm 0xa2c6db3a drm_gem_mmap +EXPORT_SYMBOL drivers/gpu/drm/drm 0xa3925892 drm_atomic_get_new_connector_for_encoder +EXPORT_SYMBOL drivers/gpu/drm/drm 0xa486aaf9 drm_get_edid +EXPORT_SYMBOL drivers/gpu/drm/drm 0xa4babfce drm_atomic_get_old_connector_for_encoder +EXPORT_SYMBOL drivers/gpu/drm/drm 0xa6083799 drm_crtc_vblank_restore +EXPORT_SYMBOL drivers/gpu/drm/drm 0xa62a7177 drm_property_replace_global_blob +EXPORT_SYMBOL drivers/gpu/drm/drm 0xa6f0c5ce drm_mode_create +EXPORT_SYMBOL drivers/gpu/drm/drm 0xa77fc1a3 drm_crtc_enable_color_mgmt +EXPORT_SYMBOL drivers/gpu/drm/drm 0xa7907c8f drm_property_create_bool +EXPORT_SYMBOL drivers/gpu/drm/drm 0xa7b82581 drm_gem_prime_mmap +EXPORT_SYMBOL drivers/gpu/drm/drm 0xa8ad5d01 drm_detect_hdmi_monitor +EXPORT_SYMBOL drivers/gpu/drm/drm 0xa8e7f6b4 drm_crtc_vblank_helper_get_vblank_timestamp_internal +EXPORT_SYMBOL drivers/gpu/drm/drm 0xa8eede91 drm_crtc_vblank_waitqueue +EXPORT_SYMBOL drivers/gpu/drm/drm 0xa9defa11 drm_mode_validate_driver +EXPORT_SYMBOL drivers/gpu/drm/drm 0xaa8c50a6 drm_object_property_get_value +EXPORT_SYMBOL drivers/gpu/drm/drm 0xaac39ff3 __drm_printfn_info +EXPORT_SYMBOL drivers/gpu/drm/drm 0xab26d550 drm_dev_get +EXPORT_SYMBOL drivers/gpu/drm/drm 0xab321bc2 drm_gem_prime_import_dev +EXPORT_SYMBOL drivers/gpu/drm/drm 0xac8ca0d9 drm_client_modeset_dpms +EXPORT_SYMBOL drivers/gpu/drm/drm 0xac9c2bd4 drm_dev_unregister +EXPORT_SYMBOL drivers/gpu/drm/drm 0xacc13d51 drm_encoder_cleanup +EXPORT_SYMBOL drivers/gpu/drm/drm 0xad4e902b drm_color_ctm_s31_32_to_qm_n +EXPORT_SYMBOL drivers/gpu/drm/drm 0xae1c03de drm_client_framebuffer_create +EXPORT_SYMBOL drivers/gpu/drm/drm 0xae277372 __drm_crtc_commit_free +EXPORT_SYMBOL drivers/gpu/drm/drm 0xae8e5acf drm_framebuffer_init +EXPORT_SYMBOL drivers/gpu/drm/drm 0xaf993cb3 drm_bridge_chain_disable +EXPORT_SYMBOL drivers/gpu/drm/drm 0xafb7d051 drm_cma_gem_create_object_default_funcs +EXPORT_SYMBOL drivers/gpu/drm/drm 0xb053adda drm_rect_rotate +EXPORT_SYMBOL drivers/gpu/drm/drm 0xb06020c2 drm_atomic_get_connector_state +EXPORT_SYMBOL drivers/gpu/drm/drm 0xb0b05ff5 drm_clflush_sg +EXPORT_SYMBOL drivers/gpu/drm/drm 0xb11ac7a7 __drm_err +EXPORT_SYMBOL drivers/gpu/drm/drm 0xb13fc1e6 drm_mode_create_content_type_property +EXPORT_SYMBOL drivers/gpu/drm/drm 0xb1afb536 drm_atomic_state_default_clear +EXPORT_SYMBOL drivers/gpu/drm/drm 0xb1d8e4f3 drm_gem_shmem_purge_locked +EXPORT_SYMBOL drivers/gpu/drm/drm 0xb2092540 drm_bridge_chain_post_disable +EXPORT_SYMBOL drivers/gpu/drm/drm 0xb2fa5df5 drm_mode_create_tile_group +EXPORT_SYMBOL drivers/gpu/drm/drm 0xb396e57d drm_atomic_state_default_release +EXPORT_SYMBOL drivers/gpu/drm/drm 0xb3f01edd drm_property_create_object +EXPORT_SYMBOL drivers/gpu/drm/drm 0xb4032484 drm_mm_insert_node_in_range +EXPORT_SYMBOL drivers/gpu/drm/drm 0xb404fdd3 drm_atomic_normalize_zpos +EXPORT_SYMBOL drivers/gpu/drm/drm 0xb4fc915c drm_gem_object_put +EXPORT_SYMBOL drivers/gpu/drm/drm 0xb5da1a44 drm_master_get +EXPORT_SYMBOL drivers/gpu/drm/drm 0xb6126996 drm_crtc_send_vblank_event +EXPORT_SYMBOL drivers/gpu/drm/drm 0xb6127243 drm_need_swiotlb +EXPORT_SYMBOL drivers/gpu/drm/drm 0xb61f0afe drm_panel_unprepare +EXPORT_SYMBOL drivers/gpu/drm/drm 0xb62b7985 drm_universal_plane_init +EXPORT_SYMBOL drivers/gpu/drm/drm 0xb6559533 drm_crtc_set_max_vblank_count +EXPORT_SYMBOL drivers/gpu/drm/drm 0xb6d93016 devm_drm_dev_init +EXPORT_SYMBOL drivers/gpu/drm/drm 0xb75c3a01 drm_object_attach_property +EXPORT_SYMBOL drivers/gpu/drm/drm 0xb78cb7c4 drm_gem_prime_import +EXPORT_SYMBOL drivers/gpu/drm/drm 0xb8082885 drm_mode_create_aspect_ratio_property +EXPORT_SYMBOL drivers/gpu/drm/drm 0xb853833f drm_mode_validate_size +EXPORT_SYMBOL drivers/gpu/drm/drm 0xb8bdb3f5 drm_puts +EXPORT_SYMBOL drivers/gpu/drm/drm 0xb953b091 drm_bridge_attach +EXPORT_SYMBOL drivers/gpu/drm/drm 0xb95d6797 drm_hdmi_infoframe_set_hdr_metadata +EXPORT_SYMBOL drivers/gpu/drm/drm 0xb9cad492 __drm_atomic_state_free +EXPORT_SYMBOL drivers/gpu/drm/drm 0xb9ebd0e4 drm_mode_parse_command_line_for_connector +EXPORT_SYMBOL drivers/gpu/drm/drm 0xb9f56e22 drm_format_info_block_width +EXPORT_SYMBOL drivers/gpu/drm/drm 0xbb1ea267 drm_gem_shmem_unpin +EXPORT_SYMBOL drivers/gpu/drm/drm 0xbb33ee7b drm_default_rgb_quant_range +EXPORT_SYMBOL drivers/gpu/drm/drm 0xbb395081 drm_release_noglobal +EXPORT_SYMBOL drivers/gpu/drm/drm 0xbb8a8a57 drm_mode_object_put +EXPORT_SYMBOL drivers/gpu/drm/drm 0xbc13d822 drm_vma_node_revoke +EXPORT_SYMBOL drivers/gpu/drm/drm 0xbd2e82c4 drm_irq_uninstall +EXPORT_SYMBOL drivers/gpu/drm/drm 0xbdb22f95 drm_plane_from_index +EXPORT_SYMBOL drivers/gpu/drm/drm 0xbe0b042c drm_atomic_bridge_chain_check +EXPORT_SYMBOL drivers/gpu/drm/drm 0xbfb876cb drm_gem_handle_create +EXPORT_SYMBOL drivers/gpu/drm/drm 0xbfc52deb drm_wait_one_vblank +EXPORT_SYMBOL drivers/gpu/drm/drm 0xbfdad3b9 drm_gem_dmabuf_vunmap +EXPORT_SYMBOL drivers/gpu/drm/drm 0xc0241b7d drm_atomic_bridge_chain_pre_enable +EXPORT_SYMBOL drivers/gpu/drm/drm 0xc1497980 drm_bridge_remove +EXPORT_SYMBOL drivers/gpu/drm/drm 0xc2671150 drm_debugfs_remove_files +EXPORT_SYMBOL drivers/gpu/drm/drm 0xc26e73c7 drm_is_current_master +EXPORT_SYMBOL drivers/gpu/drm/drm 0xc2c36138 drm_mode_is_420_only +EXPORT_SYMBOL drivers/gpu/drm/drm 0xc324efb9 drm_edid_to_sad +EXPORT_SYMBOL drivers/gpu/drm/drm 0xc4264c85 drm_put_dev +EXPORT_SYMBOL drivers/gpu/drm/drm 0xc426e3fc drm_modeset_unlock +EXPORT_SYMBOL drivers/gpu/drm/drm 0xc4332e47 drm_gem_shmem_purge +EXPORT_SYMBOL drivers/gpu/drm/drm 0xc4a81571 drm_panel_prepare +EXPORT_SYMBOL drivers/gpu/drm/drm 0xc4dc99e5 drm_vma_node_is_allowed +EXPORT_SYMBOL drivers/gpu/drm/drm 0xc5433a0a drm_gem_object_release +EXPORT_SYMBOL drivers/gpu/drm/drm 0xc5992401 __drm_puts_coredump +EXPORT_SYMBOL drivers/gpu/drm/drm 0xc65c6c2c drm_property_replace_blob +EXPORT_SYMBOL drivers/gpu/drm/drm 0xc6f91169 drm_atomic_set_fb_for_plane +EXPORT_SYMBOL drivers/gpu/drm/drm 0xc71b1012 drm_atomic_state_clear +EXPORT_SYMBOL drivers/gpu/drm/drm 0xc72175ae drm_master_internal_release +EXPORT_SYMBOL drivers/gpu/drm/drm 0xc72807b3 drm_atomic_private_obj_fini +EXPORT_SYMBOL drivers/gpu/drm/drm 0xc7f0f027 drm_format_info_min_pitch +EXPORT_SYMBOL drivers/gpu/drm/drm 0xc841b905 drm_crtc_wait_one_vblank +EXPORT_SYMBOL drivers/gpu/drm/drm 0xca3256bc drm_atomic_get_private_obj_state +EXPORT_SYMBOL drivers/gpu/drm/drm 0xcaf810da drm_event_cancel_free +EXPORT_SYMBOL drivers/gpu/drm/drm 0xcb2340b8 drm_rect_debug_print +EXPORT_SYMBOL drivers/gpu/drm/drm 0xcd068bee __drmm_add_action_or_reset +EXPORT_SYMBOL drivers/gpu/drm/drm 0xce179555 drm_send_event_locked +EXPORT_SYMBOL drivers/gpu/drm/drm 0xce6e0a0a drm_crtc_vblank_put +EXPORT_SYMBOL drivers/gpu/drm/drm 0xcf11a549 drm_flip_work_allocate_task +EXPORT_SYMBOL drivers/gpu/drm/drm 0xcf362b44 drm_hdmi_avi_infoframe_bars +EXPORT_SYMBOL drivers/gpu/drm/drm 0xcfa9cb98 drm_prime_gem_destroy +EXPORT_SYMBOL drivers/gpu/drm/drm 0xd1023666 drm_mode_config_cleanup +EXPORT_SYMBOL drivers/gpu/drm/drm 0xd13f9985 drm_edid_block_valid +EXPORT_SYMBOL drivers/gpu/drm/drm 0xd150b93b drm_legacy_ioremap_wc +EXPORT_SYMBOL drivers/gpu/drm/drm 0xd1fc5f14 drm_flip_work_queue +EXPORT_SYMBOL drivers/gpu/drm/drm 0xd30305cb drm_bridge_chain_enable +EXPORT_SYMBOL drivers/gpu/drm/drm 0xd3163e71 drm_panel_remove +EXPORT_SYMBOL drivers/gpu/drm/drm 0xd337c7f1 drm_crtc_accurate_vblank_count +EXPORT_SYMBOL drivers/gpu/drm/drm 0xd4132cc6 drm_gem_fence_array_add +EXPORT_SYMBOL drivers/gpu/drm/drm 0xd4753863 drm_gtf_mode +EXPORT_SYMBOL drivers/gpu/drm/drm 0xd53c069c drm_crtc_vblank_off +EXPORT_SYMBOL drivers/gpu/drm/drm 0xd680a377 drm_gem_object_free +EXPORT_SYMBOL drivers/gpu/drm/drm 0xd6a1c4bc drm_modeset_acquire_fini +EXPORT_SYMBOL drivers/gpu/drm/drm 0xd7958df4 drm_mode_create_suggested_offset_properties +EXPORT_SYMBOL drivers/gpu/drm/drm 0xd87bc710 drm_dev_enter +EXPORT_SYMBOL drivers/gpu/drm/drm 0xd8ff99b9 drm_plane_create_blend_mode_property +EXPORT_SYMBOL drivers/gpu/drm/drm 0xd93dcc3b drm_dev_init +EXPORT_SYMBOL drivers/gpu/drm/drm 0xd96b425a __drm_printfn_coredump +EXPORT_SYMBOL drivers/gpu/drm/drm 0xda0402ca drm_open +EXPORT_SYMBOL drivers/gpu/drm/drm 0xda63b66a drm_crtc_vblank_on +EXPORT_SYMBOL drivers/gpu/drm/drm 0xdacdc5dd drm_bridge_chain_mode_set +EXPORT_SYMBOL drivers/gpu/drm/drm 0xdb6a9b7e drm_of_find_possible_crtcs +EXPORT_SYMBOL drivers/gpu/drm/drm 0xdc57e4a6 drm_gem_shmem_get_pages +EXPORT_SYMBOL drivers/gpu/drm/drm 0xdc7d08b0 drm_framebuffer_cleanup +EXPORT_SYMBOL drivers/gpu/drm/drm 0xdc817261 drm_ioctl_permit +EXPORT_SYMBOL drivers/gpu/drm/drm 0xdc833fbb drm_flip_work_queue_task +EXPORT_SYMBOL drivers/gpu/drm/drm 0xdd2c79ba drm_connector_attach_encoder +EXPORT_SYMBOL drivers/gpu/drm/drm 0xdd83a6f3 drm_connector_attach_max_bpc_property +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 0xdfc82e66 drm_probe_ddc +EXPORT_SYMBOL drivers/gpu/drm/drm 0xe0d5d8ec drm_vma_node_allow +EXPORT_SYMBOL drivers/gpu/drm/drm 0xe13d864d drm_gem_prime_fd_to_handle +EXPORT_SYMBOL drivers/gpu/drm/drm 0xe1d0e5f8 drm_client_rotation +EXPORT_SYMBOL drivers/gpu/drm/drm 0xe2590004 drm_bridge_add +EXPORT_SYMBOL drivers/gpu/drm/drm 0xe2c9f9c0 drm_gem_shmem_create_with_handle +EXPORT_SYMBOL drivers/gpu/drm/drm 0xe2dc8ed4 drm_bridge_chain_mode_valid +EXPORT_SYMBOL drivers/gpu/drm/drm 0xe3bdf8db drm_atomic_get_old_bridge_state +EXPORT_SYMBOL drivers/gpu/drm/drm 0xe43687d9 drm_connector_attach_edid_property +EXPORT_SYMBOL drivers/gpu/drm/drm 0xe817eb01 __drm_printfn_err +EXPORT_SYMBOL drivers/gpu/drm/drm 0xe8a034df drm_dev_exit +EXPORT_SYMBOL drivers/gpu/drm/drm 0xe8a66ad4 drm_vma_offset_lookup_locked +EXPORT_SYMBOL drivers/gpu/drm/drm 0xe8d188ae drm_connector_init_with_ddc +EXPORT_SYMBOL drivers/gpu/drm/drm 0xe8ffb9d8 drm_av_sync_delay +EXPORT_SYMBOL drivers/gpu/drm/drm 0xea5c9843 drm_mode_create_tv_properties +EXPORT_SYMBOL drivers/gpu/drm/drm 0xea780335 drm_read +EXPORT_SYMBOL drivers/gpu/drm/drm 0xeb2ce83f drm_modeset_lock_single_interruptible +EXPORT_SYMBOL drivers/gpu/drm/drm 0xeb6933a6 drm_syncobj_find_fence +EXPORT_SYMBOL drivers/gpu/drm/drm 0xeb6fcbea drm_gem_shmem_madvise +EXPORT_SYMBOL drivers/gpu/drm/drm 0xebc281f5 drm_writeback_cleanup_job +EXPORT_SYMBOL drivers/gpu/drm/drm 0xec12af74 __drm_dbg +EXPORT_SYMBOL drivers/gpu/drm/drm 0xecc25bf6 drm_mode_create_dp_colorspace_property +EXPORT_SYMBOL drivers/gpu/drm/drm 0xed851497 drm_property_create_range +EXPORT_SYMBOL drivers/gpu/drm/drm 0xedb2245c drm_gem_get_pages +EXPORT_SYMBOL drivers/gpu/drm/drm 0xee0434f3 drm_cvt_mode +EXPORT_SYMBOL drivers/gpu/drm/drm 0xeef14d8c drm_format_info_block_height +EXPORT_SYMBOL drivers/gpu/drm/drm 0xeef536ed drm_client_modeset_commit_locked +EXPORT_SYMBOL drivers/gpu/drm/drm 0xefadece9 drm_property_create_blob +EXPORT_SYMBOL drivers/gpu/drm/drm 0xf0517d7a drm_mm_init +EXPORT_SYMBOL drivers/gpu/drm/drm 0xf1421d13 drm_mode_sort +EXPORT_SYMBOL drivers/gpu/drm/drm 0xf2064248 drm_atomic_bridge_chain_enable +EXPORT_SYMBOL drivers/gpu/drm/drm 0xf2a19c99 drm_add_modes_noedid +EXPORT_SYMBOL drivers/gpu/drm/drm 0xf3559f9c drm_gem_dmabuf_mmap +EXPORT_SYMBOL drivers/gpu/drm/drm 0xf406e46a drm_get_connector_type_name +EXPORT_SYMBOL drivers/gpu/drm/drm 0xf4351831 of_drm_find_bridge +EXPORT_SYMBOL drivers/gpu/drm/drm 0xf439d15a drm_modeset_lock_all +EXPORT_SYMBOL drivers/gpu/drm/drm 0xf4e2cca5 drm_plane_create_alpha_property +EXPORT_SYMBOL drivers/gpu/drm/drm 0xf53d2d7b drm_vblank_init +EXPORT_SYMBOL drivers/gpu/drm/drm 0xf5d23872 drm_hdmi_avi_infoframe_quant_range +EXPORT_SYMBOL drivers/gpu/drm/drm 0xf6423b5c drm_i2c_encoder_prepare +EXPORT_SYMBOL drivers/gpu/drm/drm 0xf717eec5 drm_atomic_add_affected_connectors +EXPORT_SYMBOL drivers/gpu/drm/drm 0xf7786714 drm_clflush_pages +EXPORT_SYMBOL drivers/gpu/drm/drm 0xf7cf1efd drm_atomic_nonblocking_commit +EXPORT_SYMBOL drivers/gpu/drm/drm 0xf826786c drm_format_info +EXPORT_SYMBOL drivers/gpu/drm/drm 0xf841e4b0 drm_connector_set_panel_orientation +EXPORT_SYMBOL drivers/gpu/drm/drm 0xf87f92e9 drmm_kmalloc +EXPORT_SYMBOL drivers/gpu/drm/drm 0xf91e7e9d drm_atomic_commit +EXPORT_SYMBOL drivers/gpu/drm/drm 0xf9453380 drm_atomic_get_plane_state +EXPORT_SYMBOL drivers/gpu/drm/drm 0xf95c59d1 drm_gem_private_object_init +EXPORT_SYMBOL drivers/gpu/drm/drm 0xfae21a10 drm_gem_dmabuf_export +EXPORT_SYMBOL drivers/gpu/drm/drm 0xfb50b511 drm_gem_map_detach +EXPORT_SYMBOL drivers/gpu/drm/drm 0xfb688e73 drm_gem_create_mmap_offset +EXPORT_SYMBOL drivers/gpu/drm/drm 0xfbb801cf drm_master_put +EXPORT_SYMBOL drivers/gpu/drm/drm 0xfd652d52 drm_sysfs_hotplug_event +EXPORT_SYMBOL drivers/gpu/drm/drm 0xfded2a5c drm_framebuffer_lookup +EXPORT_SYMBOL drivers/gpu/drm/drm 0xfed795af drm_mode_debug_printmodeline +EXPORT_SYMBOL drivers/gpu/drm/drm 0xff0850cc drm_mode_create_dvi_i_properties +EXPORT_SYMBOL drivers/gpu/drm/drm 0xff8de91d drm_print_bits +EXPORT_SYMBOL drivers/gpu/drm/drm 0xff90a292 drm_mode_copy +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x00c6b2ce drm_dp_atomic_find_vcpi_slots +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x01a01a8a drm_fb_swab16 +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x028f03ed drm_fb_xrgb8888_to_rgb565_dstclip +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x02a7fc68 drm_atomic_helper_bridge_destroy_state +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x02efa553 drm_atomic_helper_bridge_duplicate_state +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x0347a06a drm_mode_config_helper_resume +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x035997a8 drm_atomic_helper_set_config +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x05778fcc drm_atomic_helper_update_legacy_modeset_state +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x06c49551 drm_dp_dsc_sink_line_buf_depth +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x09e6b363 drm_atomic_helper_commit_duplicated_state +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x0a4b2ec5 drm_plane_enable_fb_damage_clips +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x0b789bcd __drm_atomic_helper_bridge_duplicate_state +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x0dbe6116 drm_dp_mst_allocate_vcpi +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x0e2e8ac6 drm_dp_dual_mode_set_tmds_output +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x1175ddca drm_dp_mst_dsc_aux_for_port +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x133cb34b drm_atomic_helper_crtc_duplicate_state +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x154a3da9 drm_dp_check_act_status +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x1565196b drm_atomic_helper_async_commit +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x156eb862 drm_dp_set_phy_test_pattern +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x16a94681 drm_mode_config_helper_suspend +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x17a63e62 drm_fb_helper_set_suspend +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x17d5f9c7 drm_atomic_helper_page_flip +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x17e81658 drm_lspcon_get_mode +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x1a3f6d86 drm_atomic_helper_crtc_destroy_state +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x1b9c35dd drm_kms_helper_hotplug_event +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x1c043001 drm_fb_helper_sys_copyarea +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x1e9f11b9 __drm_atomic_helper_connector_destroy_state +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x1f9347ce drm_dp_mst_get_edid +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x21347458 drm_dp_mst_atomic_enable_dsc +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x215c8e4d drm_fb_helper_blank +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x215e122b drm_dp_mst_atomic_check +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x21cbbf65 drm_dp_dual_mode_read +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x26815dbc drm_dp_link_rate_to_bw_code +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x26a8f371 drm_kms_helper_poll_enable +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x26be8e7a drm_dp_mst_deallocate_vcpi +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x274849b4 drm_atomic_helper_dirtyfb +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x27528f65 drm_atomic_helper_commit_tail +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x299440dc drm_dp_mst_connector_late_register +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x2b368ea0 drm_fb_helper_lastclose +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x2b58672e drm_fb_helper_output_poll_changed +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x2c0fde91 drm_simple_display_pipe_attach_bridge +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x2c657f22 drm_atomic_helper_prepare_planes +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x2c9fc789 drm_simple_display_pipe_init +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x2d6361f9 drm_atomic_helper_swap_state +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x2e4504d8 drm_atomic_helper_duplicate_state +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x2f53a9e0 drm_dp_update_payload_part1 +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x2fb16ed6 drm_atomic_helper_connector_destroy_state +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x2fb1cea5 __drm_atomic_helper_crtc_duplicate_state +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x30663975 drm_fb_helper_pan_display +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x3108007a __drm_atomic_helper_plane_destroy_state +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x31b681bc drm_atomic_helper_connector_reset +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x33946699 __drm_atomic_helper_private_obj_duplicate_state +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x34513203 drm_fb_helper_set_suspend_unlocked +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x34afac95 drm_fb_helper_set_par +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x34ede43b devm_drm_panel_bridge_add_typed +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x36f2f3b8 drm_atomic_helper_resume +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x3893e95d drm_atomic_helper_wait_for_fences +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x38b861bc drm_dp_atomic_release_vcpi_slots +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x3998ba07 drm_dp_dual_mode_detect +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x3a8063f3 drm_dp_dsc_sink_supported_input_bpcs +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x3c5d6be7 drm_kms_helper_poll_disable +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x3ca571a9 drm_atomic_helper_connector_duplicate_state +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x3efb43d8 drm_dp_remote_aux_init +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x436e291e drm_fb_helper_prepare +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x43f4b0b4 drm_dp_dpcd_write +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x467918ed drm_fb_helper_sys_write +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x468646a3 drm_atomic_helper_disable_planes_on_crtc +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x485198de drm_primary_helper_funcs +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x48b62a57 drm_dp_link_train_channel_eq_delay +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x49209455 drm_fb_helper_unregister_fbi +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x4a0dd06f __drm_atomic_helper_connector_duplicate_state +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x4a73519a drm_atomic_helper_bridge_reset +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x4b0b58f3 drm_atomic_get_mst_topology_state +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x4b44ad8f drm_dp_aux_init +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x4b986d94 drm_helper_connector_dpms +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x4e81acf3 drm_panel_bridge_connector +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x4fadb431 drm_fb_helper_restore_fbdev_mode_unlocked +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x50df78b1 drm_dp_send_power_updown_phy +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x52928ad0 drm_atomic_helper_wait_for_dependencies +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x5407ae9e drm_dp_get_dual_mode_type_name +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x553f61a7 __drm_atomic_helper_plane_duplicate_state +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x5604f5a9 drm_fb_helper_alloc_fbi +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x56317d5f drm_atomic_helper_async_check +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x574b1f8b drm_atomic_helper_damage_merged +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x57ab1be8 drm_fb_helper_initial_config +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x582f248e drm_dp_get_adjust_request_pre_emphasis +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x5878b8fd drm_kms_helper_poll_init +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x58d8fcaa drm_dsc_pps_payload_pack +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x597278fb drm_gem_fb_simple_display_pipe_prepare_fb +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x59dc4ec8 drm_fb_memcpy +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x5a4734d1 drm_kms_helper_is_poll_worker +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x5d7c4b3c drm_atomic_helper_legacy_gamma_set +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x5ed82f63 drm_self_refresh_helper_init +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x626658a7 __drm_atomic_helper_connector_reset +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x648d953b drm_dsc_dp_pps_header_init +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x64d4398c drm_atomic_helper_commit_tail_rpm +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x6615069e drm_dp_dsc_sink_max_slice_count +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x6748ec73 drm_fb_helper_ioctl +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x677cc1e5 drm_dp_mst_dump_topology +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x67cd93a9 drm_atomic_helper_check +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x6831fd90 drm_helper_probe_single_connector_modes +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x68a485f9 drm_scdc_set_high_tmds_clock_ratio +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x693db38f drm_dp_start_crc +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x69ee4a02 drm_fb_helper_sys_fillrect +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x6a50af54 drm_dp_downstream_id +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x6a7ee1d4 drm_panel_bridge_add +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x6b5c2b06 drm_atomic_helper_damage_iter_next +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x6d4d90a2 drm_atomic_helper_damage_iter_init +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x6dcf338f drm_atomic_helper_check_planes +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x6f551492 drm_fb_helper_check_var +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x71dd79c1 drm_primary_helper_destroy +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x724c8f20 drm_dp_dual_mode_get_tmds_output +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x73011db0 drm_dp_bw_code_to_link_rate +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x737a58c5 drm_dp_downstream_debug +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x750abda1 drm_dp_mst_topology_mgr_init +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x75c415fc __drm_atomic_helper_crtc_state_reset +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x76e86174 drm_fb_memcpy_dstclip +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x79ac7f7d drm_fb_helper_fini +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x7c08180b drm_helper_force_disable_all +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x7cd80efe drm_dp_mst_put_port_malloc +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x7e45dbaa drm_atomic_helper_plane_duplicate_state +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x7e8a8001 drm_atomic_helper_check_modeset +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x7eb5f231 drm_dp_cec_irq +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x7ef89bc1 drm_panel_bridge_add_typed +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x7f958b0c drm_helper_encoder_in_use +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x809cef4f drm_dp_mst_get_port_malloc +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x81f54f36 drm_dp_update_payload_part2 +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x82bc9a5c drm_fb_helper_fill_info +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x83722260 drm_fb_helper_init +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x84629d08 drm_atomic_helper_plane_destroy_state +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x84666e6a drm_crtc_helper_set_config +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x877ee222 drm_atomic_helper_bridge_propagate_bus_fmt +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x87b5d11c __drm_atomic_helper_plane_state_reset +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x894b1f57 drm_dp_get_adjust_request_post_cursor +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x89af2d4d drm_dp_mst_topology_mgr_resume +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x8b5afd56 drm_kms_helper_poll_fini +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x8ca2d9e4 drm_dp_calc_pbn_mode +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x8d701329 drm_dp_clock_recovery_ok +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x9198383e drm_atomic_helper_commit +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x91b2c3b2 drm_atomic_helper_wait_for_vblanks +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x92340566 drm_fb_xrgb8888_to_rgb565 +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x92459080 drm_atomic_helper_commit_hw_done +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x924f03b2 drm_dp_mst_topology_mgr_set_mst +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x92d6455a drm_fb_xrgb8888_to_gray8 +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x955a2bb9 drm_dp_stop_crc +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x95ac286f drm_dp_cec_register_connector +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x9715e5db drm_fb_helper_debug_leave +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x9af836d7 drm_fb_helper_debug_enter +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x9b9d3800 drm_helper_mode_fill_fb_struct +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x9bbf55f9 drm_crtc_helper_set_mode +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x9c506f58 drm_dp_dual_mode_write +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x9cdc08b0 drm_atomic_helper_plane_reset +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x9ceba2d1 drm_self_refresh_helper_alter_state +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x9d006d11 drm_helper_probe_detect +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x9dd287f3 __drm_atomic_helper_connector_state_reset +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x9f51d246 drm_scdc_read +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x9fb3fcf9 drm_simple_encoder_init +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xa1fefe6a drm_dp_psr_setup_time +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xa28ff7fe drm_helper_move_panel_connectors_to_head +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xa2f5c65b drm_dp_get_edid_quirks +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xa31eb44d drm_scdc_get_scrambling_status +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xa3b387ee drm_helper_hpd_irq_event +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xa53aa713 drm_atomic_helper_commit_modeset_enables +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xa5b94207 drm_fb_helper_cfb_copyarea +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xa6bb1c83 drm_fb_helper_hotplug_event +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xa6ff9496 drm_dp_link_train_clock_recovery_delay +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xa8bc4885 __drm_atomic_helper_plane_reset +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xa8c06be1 drm_lspcon_set_mode +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xaafebed7 drm_dp_dual_mode_max_tmds_clock +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xab08cae2 drm_dp_send_real_edid_checksum +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xab0e7cd4 drm_fb_helper_modinit +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xab15e05d drm_dp_mst_topology_mgr_suspend +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xab3ec4eb drm_dp_mst_add_affected_dsc_crtcs +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xab9e81e9 drm_gem_fb_create_handle +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xabbf80a7 drm_dp_get_vc_payload_bw +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xabe5d47c drm_helper_crtc_in_use +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xac4181ce drm_atomic_helper_update_plane +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xaddf8a07 drm_helper_disable_unused_functions +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xae8e28db drm_gem_fb_destroy +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xb07456c5 drm_scdc_write +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xb0834f16 drm_dp_mst_hpd_irq +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xb1366ade drm_atomic_helper_disable_all +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xb2e24b16 drm_dp_vsc_sdp_log +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xb41d87f0 drm_dp_read_desc +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xb4900fb9 drm_dp_find_vcpi_slots +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xb5c59dda drm_atomic_helper_crtc_reset +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xb6009f8d drm_atomic_helper_connector_tv_reset +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xb63c65f0 drm_atomic_helper_fake_vblank +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xb8900c5d drm_atomic_helper_page_flip_target +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xba211f26 drm_dp_cec_unregister_connector +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xbd77b752 drm_atomic_helper_disable_plane +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xbe2c0452 drm_fbdev_generic_setup +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xbf414a46 __drm_atomic_helper_crtc_reset +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xc0ba6338 drm_fb_helper_setcmap +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xc31790af devm_drm_panel_bridge_add +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xc40358b3 drm_dp_mst_reset_vcpi_slots +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xc4368ad4 drm_atomic_helper_cleanup_planes +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xc4b89351 drm_atomic_helper_commit_modeset_disables +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xc5c99a79 drm_dp_get_adjust_request_voltage +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xc6037a6a drm_dp_mst_topology_state_funcs +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xce3774cf drm_dp_get_phy_test_pattern +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xceaeb8ab drm_fb_helper_deferred_io +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xd0533804 drm_fb_helper_cfb_fillrect +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xd073f269 drm_atomic_helper_setup_commit +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xd3ca2e6d drm_atomic_helper_wait_for_flip_done +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xd5ee5e8b drm_fb_xrgb8888_to_rgb888_dstclip +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xd60b779d __drm_atomic_helper_crtc_destroy_state +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xdaa1dc88 drm_atomic_helper_commit_cleanup_done +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xdb8dd8a0 drm_atomic_helper_check_plane_state +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xdec1beb3 drm_atomic_helper_suspend +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xdff8eac9 drm_dp_mst_get_vcpi_slots +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xe02abfbb drm_dp_downstream_max_bpc +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xe067a151 drm_dp_dpcd_read_link_status +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xe5657dc2 drm_self_refresh_helper_cleanup +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xe5defe41 drm_dp_aux_register +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xe7af2818 drm_fb_helper_sys_read +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xe8e2cdd4 drm_atomic_helper_check_plane_damage +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xe935938d drm_dp_cec_unset_edid +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xebadd885 drm_dp_dpcd_read +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xebc17f17 drm_fb_helper_cfb_imageblit +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xec07df87 drm_scdc_set_scrambling +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xec74f6e9 drm_dp_mst_connector_early_unregister +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xedc92fae drm_dp_aux_unregister +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xedcf81ce drm_dp_channel_eq_ok +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xeea0b6a3 drm_crtc_init +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xf0acbb2b __drm_atomic_helper_bridge_reset +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xf2329e89 drm_dp_downstream_max_clock +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xf29043ca drm_dp_mst_detect_port +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xf445e7d2 drm_panel_bridge_remove +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xf5545089 drm_atomic_helper_shutdown +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xf607df3d drm_fb_helper_sys_imageblit +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xfb53b150 drm_helper_resume_force_mode +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xfb918ab4 drm_dp_cec_set_edid +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xfcf4c60a drm_self_refresh_helper_update_avg_times +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xfd6dd5dc drm_atomic_helper_commit_planes_on_crtc +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xfdbff2f6 drm_atomic_helper_commit_planes +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xfdd08757 drm_dp_mst_topology_mgr_destroy +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xfe12bcb9 drm_dsc_compute_rc_parameters +EXPORT_SYMBOL drivers/gpu/drm/drm_mipi_dbi 0x041f60e1 mipi_dbi_command_read +EXPORT_SYMBOL drivers/gpu/drm/drm_mipi_dbi 0x147fcf7a mipi_dbi_dev_init_with_formats +EXPORT_SYMBOL drivers/gpu/drm/drm_mipi_dbi 0x17f09374 mipi_dbi_command_buf +EXPORT_SYMBOL drivers/gpu/drm/drm_mipi_dbi 0x39a42fa1 mipi_dbi_poweron_reset +EXPORT_SYMBOL drivers/gpu/drm/drm_mipi_dbi 0x5c943137 mipi_dbi_spi_cmd_max_speed +EXPORT_SYMBOL drivers/gpu/drm/drm_mipi_dbi 0x626b3916 mipi_dbi_debugfs_init +EXPORT_SYMBOL drivers/gpu/drm/drm_mipi_dbi 0x742d2584 mipi_dbi_display_is_on +EXPORT_SYMBOL drivers/gpu/drm/drm_mipi_dbi 0x7da57054 mipi_dbi_buf_copy +EXPORT_SYMBOL drivers/gpu/drm/drm_mipi_dbi 0x86c7792b mipi_dbi_command_stackbuf +EXPORT_SYMBOL drivers/gpu/drm/drm_mipi_dbi 0xa919ae15 mipi_dbi_poweron_conditional_reset +EXPORT_SYMBOL drivers/gpu/drm/drm_mipi_dbi 0xad7739f7 mipi_dbi_hw_reset +EXPORT_SYMBOL drivers/gpu/drm/drm_mipi_dbi 0xadb2646f mipi_dbi_enable_flush +EXPORT_SYMBOL drivers/gpu/drm/drm_mipi_dbi 0xbdc0e63e mipi_dbi_dev_init +EXPORT_SYMBOL drivers/gpu/drm/drm_mipi_dbi 0xcf932ec5 mipi_dbi_pipe_update +EXPORT_SYMBOL drivers/gpu/drm/drm_mipi_dbi 0xd53d19d6 mipi_dbi_spi_init +EXPORT_SYMBOL drivers/gpu/drm/drm_mipi_dbi 0xf7598e31 mipi_dbi_pipe_disable +EXPORT_SYMBOL drivers/gpu/drm/drm_mipi_dbi 0xfe648889 mipi_dbi_spi_transfer +EXPORT_SYMBOL drivers/gpu/drm/drm_ttm_helper 0x86b3627b drm_gem_ttm_mmap +EXPORT_SYMBOL drivers/gpu/drm/drm_ttm_helper 0x9584b696 drm_gem_ttm_print_info +EXPORT_SYMBOL drivers/gpu/drm/drm_vram_helper 0x02f754a2 drm_gem_vram_offset +EXPORT_SYMBOL drivers/gpu/drm/drm_vram_helper 0x192afefb drm_gem_vram_fill_create_dumb +EXPORT_SYMBOL drivers/gpu/drm/drm_vram_helper 0x38c25d27 drm_gem_vram_put +EXPORT_SYMBOL drivers/gpu/drm/drm_vram_helper 0x3d9189c4 drm_gem_vram_simple_display_pipe_cleanup_fb +EXPORT_SYMBOL drivers/gpu/drm/drm_vram_helper 0x4683c183 drm_gem_vram_mmap_offset +EXPORT_SYMBOL drivers/gpu/drm/drm_vram_helper 0x5b73b64c drm_gem_vram_vunmap +EXPORT_SYMBOL drivers/gpu/drm/drm_vram_helper 0x60e3d7d1 drm_gem_vram_vmap +EXPORT_SYMBOL drivers/gpu/drm/drm_vram_helper 0x695fb328 drm_gem_vram_simple_display_pipe_prepare_fb +EXPORT_SYMBOL drivers/gpu/drm/drm_vram_helper 0x6a779af1 drm_vram_helper_release_mm +EXPORT_SYMBOL drivers/gpu/drm/drm_vram_helper 0x9b7e6739 drm_vram_helper_alloc_mm +EXPORT_SYMBOL drivers/gpu/drm/drm_vram_helper 0x9fdd524e drm_gem_vram_kmap +EXPORT_SYMBOL drivers/gpu/drm/drm_vram_helper 0xa8c07353 drm_gem_vram_driver_dumb_mmap_offset +EXPORT_SYMBOL drivers/gpu/drm/drm_vram_helper 0xb4cbb757 drm_gem_vram_pin +EXPORT_SYMBOL drivers/gpu/drm/drm_vram_helper 0xbdffd64e drm_vram_helper_mode_valid +EXPORT_SYMBOL drivers/gpu/drm/drm_vram_helper 0xca5a4605 drm_gem_vram_create +EXPORT_SYMBOL drivers/gpu/drm/drm_vram_helper 0xce5f2496 drm_gem_vram_kunmap +EXPORT_SYMBOL drivers/gpu/drm/drm_vram_helper 0xd06578bc drm_vram_mm_debugfs_init +EXPORT_SYMBOL drivers/gpu/drm/drm_vram_helper 0xd52c1044 drm_gem_vram_unpin +EXPORT_SYMBOL drivers/gpu/drm/drm_vram_helper 0xd8f4a463 drm_gem_vram_driver_dumb_create +EXPORT_SYMBOL drivers/gpu/drm/drm_vram_helper 0xe6a7b73d drm_gem_vram_plane_helper_cleanup_fb +EXPORT_SYMBOL drivers/gpu/drm/drm_vram_helper 0xed60105a drm_gem_vram_plane_helper_prepare_fb +EXPORT_SYMBOL drivers/gpu/drm/rockchip/rockchipdrm 0xe36e95e1 rockchip_drm_wait_vact_end +EXPORT_SYMBOL drivers/gpu/drm/scheduler/gpu-sched 0x0470de60 drm_sched_entity_init +EXPORT_SYMBOL drivers/gpu/drm/scheduler/gpu-sched 0x0b327bb5 drm_sched_entity_push_job +EXPORT_SYMBOL drivers/gpu/drm/scheduler/gpu-sched 0x0e108043 drm_sched_job_cleanup +EXPORT_SYMBOL drivers/gpu/drm/scheduler/gpu-sched 0x11194af6 drm_sched_resubmit_jobs +EXPORT_SYMBOL drivers/gpu/drm/scheduler/gpu-sched 0x17a34fb3 drm_sched_increase_karma +EXPORT_SYMBOL drivers/gpu/drm/scheduler/gpu-sched 0x18d7d45d drm_sched_entity_destroy +EXPORT_SYMBOL drivers/gpu/drm/scheduler/gpu-sched 0x18defdea drm_sched_start +EXPORT_SYMBOL drivers/gpu/drm/scheduler/gpu-sched 0x24ce1711 drm_sched_fini +EXPORT_SYMBOL drivers/gpu/drm/scheduler/gpu-sched 0x258eb6a1 drm_sched_job_init +EXPORT_SYMBOL drivers/gpu/drm/scheduler/gpu-sched 0x3b765ba4 drm_sched_init +EXPORT_SYMBOL drivers/gpu/drm/scheduler/gpu-sched 0x48addfe3 drm_sched_suspend_timeout +EXPORT_SYMBOL drivers/gpu/drm/scheduler/gpu-sched 0x499869ec drm_sched_fault +EXPORT_SYMBOL drivers/gpu/drm/scheduler/gpu-sched 0x59f0979c drm_sched_resume_timeout +EXPORT_SYMBOL drivers/gpu/drm/scheduler/gpu-sched 0x6378e316 drm_sched_entity_set_priority +EXPORT_SYMBOL drivers/gpu/drm/scheduler/gpu-sched 0x739e6978 drm_sched_entity_fini +EXPORT_SYMBOL drivers/gpu/drm/scheduler/gpu-sched 0x7b767698 to_drm_sched_fence +EXPORT_SYMBOL drivers/gpu/drm/scheduler/gpu-sched 0x95848277 drm_sched_dependency_optimized +EXPORT_SYMBOL drivers/gpu/drm/scheduler/gpu-sched 0xac369f95 drm_sched_pick_best +EXPORT_SYMBOL drivers/gpu/drm/scheduler/gpu-sched 0xca4e8afc drm_sched_entity_modify_sched +EXPORT_SYMBOL drivers/gpu/drm/scheduler/gpu-sched 0xd95a2766 drm_sched_entity_flush +EXPORT_SYMBOL drivers/gpu/drm/scheduler/gpu-sched 0xf9b35d10 drm_sched_stop +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x077a20d9 ttm_eu_backoff_reservation +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x0a6a756c ttm_check_under_lowerlimit +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x0b3d9783 ttm_bo_move_ttm +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x0d923072 ttm_dma_tt_init +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x0fef840c ttm_tt_set_placement_caching +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x1201749f ttm_eu_fence_buffer_objects +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x132b05be ttm_round_pot +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x163124ab ttm_populate_and_map_pages +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x20da5a24 ttm_mem_global_alloc +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x223dbba7 ttm_bo_move_accel_cleanup +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x246042a8 ttm_bo_kunmap +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x263bf795 ttm_mem_global_free +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x2808e56f ttm_bo_unmap_virtual +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x28748bb7 ttm_dma_tt_fini +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x327aba40 ttm_bo_device_init +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x331412fa ttm_bo_glob +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x3375280c ttm_tt_fini +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x3ac98331 ttm_bo_kmap +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x3c527c43 ttm_bo_bulk_move_lru_tail +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x416e173a ttm_bo_vm_access +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x442c613f ttm_bo_vm_fault +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x4983cfc1 ttm_bo_device_release +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x4f29cebf ttm_bo_move_to_lru_tail +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x525b4f5a ttm_bo_pipeline_move +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x536fcc01 ttm_bo_move_memcpy +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x53ddbe48 ttm_get_kernel_zone_memory_size +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x5eee7f44 ttm_bo_init_reserved +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x6a89746f ttm_bo_mem_compat +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x6c7865d0 ttm_bo_init +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x70347a9a ttm_bo_vm_close +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x79612d95 ttm_mem_glob +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x7d19b8ed ttm_bo_acc_size +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x7fcb3f89 ttm_bo_vm_open +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x835fcd07 ttm_bo_vm_reserve +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x84bac894 ttm_unmap_and_unpopulate_pages +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x85da93ef ttm_bo_put +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x87f11aa2 ttm_bo_swapout_all +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x8b9a70a2 ttm_sg_tt_init +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x8d9acd89 ttm_bo_mem_put +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x8e54575d ttm_page_alloc_debugfs +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x8f586448 ttm_pool_unpopulate +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x916c5434 ttm_bo_mem_space +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x933a7679 ttm_bo_manager_func +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x936aeba5 ttm_bo_validate +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x93a07c2b ttm_bo_lock_delayed_workqueue +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x9a72dffe ttm_tt_init +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x9d9080bd ttm_bo_dma_acc_size +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xa3d775b1 ttm_bo_eviction_valuable +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xab99331f ttm_bo_wait +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xb043ee9c ttm_bo_vm_fault_reserved +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xbc017112 ttm_eu_reserve_buffers +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xbd5a9431 ttm_tt_bind +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xbee52bac ttm_bo_clean_mm +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xd092f27a ttm_bo_init_mm +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xd1bff0a0 ttm_pool_populate +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xda26baa6 ttm_bo_unlock_delayed_workqueue +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xf74a889c ttm_bo_swapout +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xf7b8631a ttm_bo_create +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xf9590677 ttm_bo_evict_mm +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xfa329dc4 ttm_bo_mmap +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xfdffa381 ttm_io_prot +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xffc1ce2f ttm_bo_mmap_obj +EXPORT_SYMBOL drivers/hid/hid 0x0d623b97 hid_bus_type +EXPORT_SYMBOL drivers/hwmon/hwmon-vid 0x2f9e7f8e vid_which_vrm +EXPORT_SYMBOL drivers/hwmon/hwmon-vid 0x446615bd vid_from_reg +EXPORT_SYMBOL drivers/hwmon/sch56xx-common 0x01568393 sch56xx_read_virtual_reg +EXPORT_SYMBOL drivers/hwmon/sch56xx-common 0x34257f35 sch56xx_watchdog_unregister +EXPORT_SYMBOL drivers/hwmon/sch56xx-common 0x8ccd925e 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 0x35a818be i2c_bit_add_numbered_bus +EXPORT_SYMBOL drivers/i2c/algos/i2c-algo-bit 0xa4565d7d i2c_bit_algo +EXPORT_SYMBOL drivers/i2c/algos/i2c-algo-bit 0xe1d3fd2c i2c_bit_add_bus +EXPORT_SYMBOL drivers/i2c/algos/i2c-algo-pca 0x25efb6e6 i2c_pca_add_bus +EXPORT_SYMBOL drivers/i2c/algos/i2c-algo-pca 0x890cdc57 i2c_pca_add_numbered_bus +EXPORT_SYMBOL drivers/i2c/busses/i2c-amd756 0x62ea9738 amd756_smbus +EXPORT_SYMBOL drivers/iio/accel/bma400_core 0x56742df4 bma400_probe +EXPORT_SYMBOL drivers/iio/accel/bma400_core 0x6394b058 bma400_remove +EXPORT_SYMBOL drivers/iio/accel/bma400_core 0x952b0fba bma400_regmap_config +EXPORT_SYMBOL drivers/iio/accel/kxsd9 0x20c9b37c kxsd9_common_probe +EXPORT_SYMBOL drivers/iio/accel/kxsd9 0x50b01b81 kxsd9_dev_pm_ops +EXPORT_SYMBOL drivers/iio/accel/kxsd9 0x939b5e75 kxsd9_common_remove +EXPORT_SYMBOL drivers/iio/accel/mma9551_core 0x3cc97ab5 mma9551_update_config_bits +EXPORT_SYMBOL drivers/iio/accel/mma9551_core 0x41ef446c mma9551_read_accel_scale +EXPORT_SYMBOL drivers/iio/accel/mma9551_core 0x433d15a1 mma9551_read_config_byte +EXPORT_SYMBOL drivers/iio/accel/mma9551_core 0x43915fe3 mma9551_gpio_config +EXPORT_SYMBOL drivers/iio/accel/mma9551_core 0x5f6f7a88 mma9551_read_version +EXPORT_SYMBOL drivers/iio/accel/mma9551_core 0x641e801e mma9551_set_power_state +EXPORT_SYMBOL drivers/iio/accel/mma9551_core 0x7183b059 mma9551_read_accel_chan +EXPORT_SYMBOL drivers/iio/accel/mma9551_core 0x72f5ea50 mma9551_write_config_byte +EXPORT_SYMBOL drivers/iio/accel/mma9551_core 0x7d13348a mma9551_set_device_state +EXPORT_SYMBOL drivers/iio/accel/mma9551_core 0x83776292 mma9551_read_status_word +EXPORT_SYMBOL drivers/iio/accel/mma9551_core 0x870424dd mma9551_read_config_word +EXPORT_SYMBOL drivers/iio/accel/mma9551_core 0xa5cffd64 mma9551_read_status_words +EXPORT_SYMBOL drivers/iio/accel/mma9551_core 0xb56bb598 mma9551_write_config_words +EXPORT_SYMBOL drivers/iio/accel/mma9551_core 0xbcd7fe96 mma9551_sleep +EXPORT_SYMBOL drivers/iio/accel/mma9551_core 0xdda36e86 mma9551_write_config_word +EXPORT_SYMBOL drivers/iio/accel/mma9551_core 0xdfed3234 mma9551_app_reset +EXPORT_SYMBOL drivers/iio/accel/mma9551_core 0xeb5d4f27 mma9551_read_status_byte +EXPORT_SYMBOL drivers/iio/accel/mma9551_core 0xf2f14f9a mma9551_read_config_words +EXPORT_SYMBOL drivers/iio/accel/st_accel 0x2ebf8e01 st_accel_common_remove +EXPORT_SYMBOL drivers/iio/accel/st_accel 0x5d8a88f6 st_accel_common_probe +EXPORT_SYMBOL drivers/iio/accel/st_accel 0x78e86115 st_accel_get_settings +EXPORT_SYMBOL drivers/iio/adc/qcom-vadc-common 0x70e6eca1 qcom_vadc_decimation_from_dt +EXPORT_SYMBOL drivers/iio/adc/qcom-vadc-common 0xcae36995 qcom_vadc_scale +EXPORT_SYMBOL drivers/iio/adc/qcom-vadc-common 0xf253ae31 qcom_adc5_hw_scale +EXPORT_SYMBOL drivers/iio/buffer/industrialio-buffer-dmaengine 0x6651b057 iio_dmaengine_buffer_alloc +EXPORT_SYMBOL drivers/iio/buffer/industrialio-triggered-buffer 0x5c5eb1ce iio_triggered_buffer_cleanup +EXPORT_SYMBOL drivers/iio/buffer/industrialio-triggered-buffer 0xdb6e102e iio_triggered_buffer_setup +EXPORT_SYMBOL drivers/iio/buffer/kfifo_buf 0x19056c71 devm_iio_kfifo_allocate +EXPORT_SYMBOL drivers/iio/buffer/kfifo_buf 0xa84cb1f1 iio_kfifo_allocate +EXPORT_SYMBOL drivers/iio/buffer/kfifo_buf 0xb2c41c4d iio_kfifo_free +EXPORT_SYMBOL drivers/iio/chemical/bme680_core 0x3f85e65e bme680_regmap_config +EXPORT_SYMBOL drivers/iio/common/hid-sensors/hid-sensor-iio-common 0x57378150 hid_sensor_set_report_latency +EXPORT_SYMBOL drivers/iio/common/hid-sensors/hid-sensor-iio-common 0x70b9f89f hid_sensor_convert_timestamp +EXPORT_SYMBOL drivers/iio/common/hid-sensors/hid-sensor-iio-common 0x7f7621ec hid_sensor_format_scale +EXPORT_SYMBOL drivers/iio/common/hid-sensors/hid-sensor-iio-common 0x8ba93c36 hid_sensor_parse_common_attributes +EXPORT_SYMBOL drivers/iio/common/hid-sensors/hid-sensor-iio-common 0x8bdb00ff hid_sensor_write_samp_freq_value +EXPORT_SYMBOL drivers/iio/common/hid-sensors/hid-sensor-iio-common 0x98a6e692 hid_sensor_get_report_latency +EXPORT_SYMBOL drivers/iio/common/hid-sensors/hid-sensor-iio-common 0x9dae7f47 hid_sensor_read_poll_value +EXPORT_SYMBOL drivers/iio/common/hid-sensors/hid-sensor-iio-common 0xa7914310 hid_sensor_read_samp_freq_value +EXPORT_SYMBOL drivers/iio/common/hid-sensors/hid-sensor-iio-common 0xef2eaa43 hid_sensor_batch_mode_supported +EXPORT_SYMBOL drivers/iio/common/hid-sensors/hid-sensor-iio-common 0xf2176d99 hid_sensor_read_raw_hyst_value +EXPORT_SYMBOL drivers/iio/common/hid-sensors/hid-sensor-iio-common 0xf99b83dd hid_sensor_write_raw_hyst_value +EXPORT_SYMBOL drivers/iio/common/hid-sensors/hid-sensor-trigger 0x3222e703 hid_sensor_pm_ops +EXPORT_SYMBOL drivers/iio/common/hid-sensors/hid-sensor-trigger 0x649e9ff8 hid_sensor_remove_trigger +EXPORT_SYMBOL drivers/iio/common/hid-sensors/hid-sensor-trigger 0xe7f8992e hid_sensor_power_state +EXPORT_SYMBOL drivers/iio/common/hid-sensors/hid-sensor-trigger 0xecdcead4 hid_sensor_setup_trigger +EXPORT_SYMBOL drivers/iio/common/ms_sensors/ms_sensors_i2c 0x045688dd ms_sensors_read_prom_word +EXPORT_SYMBOL drivers/iio/common/ms_sensors/ms_sensors_i2c 0x14b55276 ms_sensors_ht_read_humidity +EXPORT_SYMBOL drivers/iio/common/ms_sensors/ms_sensors_i2c 0x20da8fe3 ms_sensors_show_heater +EXPORT_SYMBOL drivers/iio/common/ms_sensors/ms_sensors_i2c 0x2d2f5cd5 ms_sensors_reset +EXPORT_SYMBOL drivers/iio/common/ms_sensors/ms_sensors_i2c 0x42b6a050 ms_sensors_convert_and_read +EXPORT_SYMBOL drivers/iio/common/ms_sensors/ms_sensors_i2c 0x496963ce ms_sensors_tp_read_prom +EXPORT_SYMBOL drivers/iio/common/ms_sensors/ms_sensors_i2c 0x55762d39 ms_sensors_show_battery_low +EXPORT_SYMBOL drivers/iio/common/ms_sensors/ms_sensors_i2c 0x92c85f02 ms_sensors_ht_read_temperature +EXPORT_SYMBOL drivers/iio/common/ms_sensors/ms_sensors_i2c 0x99cd8ec6 ms_sensors_read_temp_and_pressure +EXPORT_SYMBOL drivers/iio/common/ms_sensors/ms_sensors_i2c 0xc7401c60 ms_sensors_read_serial +EXPORT_SYMBOL drivers/iio/common/ms_sensors/ms_sensors_i2c 0xd482d08a ms_sensors_write_resolution +EXPORT_SYMBOL drivers/iio/common/ms_sensors/ms_sensors_i2c 0xe152cbd3 ms_sensors_write_heater +EXPORT_SYMBOL drivers/iio/common/ssp_sensors/sensorhub 0x07854a79 ssp_register_consumer +EXPORT_SYMBOL drivers/iio/common/ssp_sensors/sensorhub 0x1463139d ssp_change_delay +EXPORT_SYMBOL drivers/iio/common/ssp_sensors/sensorhub 0x1daed9f0 ssp_get_sensor_delay +EXPORT_SYMBOL drivers/iio/common/ssp_sensors/sensorhub 0x2c840836 ssp_enable_sensor +EXPORT_SYMBOL drivers/iio/common/ssp_sensors/sensorhub 0xd55b6792 ssp_disable_sensor +EXPORT_SYMBOL drivers/iio/common/ssp_sensors/ssp_iio 0x65d020eb ssp_common_buffer_postenable +EXPORT_SYMBOL drivers/iio/common/ssp_sensors/ssp_iio 0x97542ad2 ssp_common_buffer_postdisable +EXPORT_SYMBOL drivers/iio/common/ssp_sensors/ssp_iio 0xf400d989 ssp_common_process_data +EXPORT_SYMBOL drivers/iio/common/st_sensors/st_sensors 0x074d7047 st_sensors_trigger_handler +EXPORT_SYMBOL drivers/iio/common/st_sensors/st_sensors 0x180b8655 st_sensors_init_sensor +EXPORT_SYMBOL drivers/iio/common/st_sensors/st_sensors 0x18c77e4d st_sensors_set_enable +EXPORT_SYMBOL drivers/iio/common/st_sensors/st_sensors 0x21144f29 st_sensors_sysfs_scale_avail +EXPORT_SYMBOL drivers/iio/common/st_sensors/st_sensors 0x346e33fe st_sensors_allocate_trigger +EXPORT_SYMBOL drivers/iio/common/st_sensors/st_sensors 0x3532af28 st_sensors_deallocate_trigger +EXPORT_SYMBOL drivers/iio/common/st_sensors/st_sensors 0x35941ae3 st_sensors_verify_id +EXPORT_SYMBOL drivers/iio/common/st_sensors/st_sensors 0x3c759fde st_sensors_power_enable +EXPORT_SYMBOL drivers/iio/common/st_sensors/st_sensors 0x56e7d818 st_sensors_sysfs_sampling_frequency_avail +EXPORT_SYMBOL drivers/iio/common/st_sensors/st_sensors 0x5e18f3e7 st_sensors_dev_name_probe +EXPORT_SYMBOL drivers/iio/common/st_sensors/st_sensors 0x6fd29222 st_sensors_validate_device +EXPORT_SYMBOL drivers/iio/common/st_sensors/st_sensors 0x8d6b69fe st_sensors_power_disable +EXPORT_SYMBOL drivers/iio/common/st_sensors/st_sensors 0x99cac2f1 st_sensors_read_info_raw +EXPORT_SYMBOL drivers/iio/common/st_sensors/st_sensors 0xb6a22d96 st_sensors_set_odr +EXPORT_SYMBOL drivers/iio/common/st_sensors/st_sensors 0xc657b707 st_sensors_get_settings_index +EXPORT_SYMBOL drivers/iio/common/st_sensors/st_sensors 0xe53adf21 st_sensors_set_axis_enable +EXPORT_SYMBOL drivers/iio/common/st_sensors/st_sensors 0xf12fb4b0 st_sensors_set_dataready_irq +EXPORT_SYMBOL drivers/iio/common/st_sensors/st_sensors 0xf587386e st_sensors_debugfs_reg_access +EXPORT_SYMBOL drivers/iio/common/st_sensors/st_sensors 0xfe6fe789 st_sensors_set_fullscale_by_gain +EXPORT_SYMBOL drivers/iio/common/st_sensors/st_sensors_i2c 0xab7a945f st_sensors_i2c_configure +EXPORT_SYMBOL drivers/iio/common/st_sensors/st_sensors_spi 0x8c291f64 st_sensors_spi_configure +EXPORT_SYMBOL drivers/iio/gyro/mpu3050 0x71eb3c0d mpu3050_dev_pm_ops +EXPORT_SYMBOL drivers/iio/gyro/mpu3050 0xa2c3a2be mpu3050_common_probe +EXPORT_SYMBOL drivers/iio/gyro/mpu3050 0xbefef335 mpu3050_common_remove +EXPORT_SYMBOL drivers/iio/gyro/st_gyro 0x2a7d35e6 st_gyro_get_settings +EXPORT_SYMBOL drivers/iio/gyro/st_gyro 0x6e038dbf st_gyro_common_remove +EXPORT_SYMBOL drivers/iio/gyro/st_gyro 0xc945c9e6 st_gyro_common_probe +EXPORT_SYMBOL drivers/iio/humidity/hts221 0x19058036 hts221_probe +EXPORT_SYMBOL drivers/iio/humidity/hts221 0xa3917623 hts221_pm_ops +EXPORT_SYMBOL drivers/iio/imu/adis_lib 0x3b6daa94 adis_debugfs_reg_access +EXPORT_SYMBOL drivers/iio/imu/adis_lib 0x6e233f6d adis_enable_irq +EXPORT_SYMBOL drivers/iio/imu/bmi160/bmi160_core 0xca19cfae bmi160_enable_irq +EXPORT_SYMBOL drivers/iio/imu/bmi160/bmi160_core 0xf9951133 bmi160_regmap_config +EXPORT_SYMBOL drivers/iio/imu/fxos8700_core 0x31fbcd84 fxos8700_regmap_config +EXPORT_SYMBOL drivers/iio/imu/st_lsm6dsx/st_lsm6dsx 0x10471c3f st_lsm6dsx_pm_ops +EXPORT_SYMBOL drivers/iio/imu/st_lsm6dsx/st_lsm6dsx 0x6419c7b2 st_lsm6dsx_probe +EXPORT_SYMBOL drivers/iio/industrialio 0x07dc7f5d iio_bus_type +EXPORT_SYMBOL drivers/iio/industrialio 0x0a645d55 iio_trigger_alloc +EXPORT_SYMBOL drivers/iio/industrialio 0x1e1af718 iio_device_free +EXPORT_SYMBOL drivers/iio/industrialio 0x1fa29c9d iio_trigger_validate_own_device +EXPORT_SYMBOL drivers/iio/industrialio 0x268b80a9 iio_triggered_buffer_postenable +EXPORT_SYMBOL drivers/iio/industrialio 0x26a0c840 iio_device_alloc +EXPORT_SYMBOL drivers/iio/industrialio 0x2d6bcdcb iio_trigger_generic_data_rdy_poll +EXPORT_SYMBOL drivers/iio/industrialio 0x35215a65 iio_buffer_init +EXPORT_SYMBOL drivers/iio/industrialio 0x63d1ec9b iio_triggered_buffer_predisable +EXPORT_SYMBOL drivers/iio/industrialio 0x68f589e6 iio_read_mount_matrix +EXPORT_SYMBOL drivers/iio/industrialio 0x6ea7eee2 iio_read_const_attr +EXPORT_SYMBOL drivers/iio/industrialio 0x7e6885c5 iio_trigger_notify_done +EXPORT_SYMBOL drivers/iio/industrialio 0x8851d03c iio_device_unregister +EXPORT_SYMBOL drivers/iio/industrialio 0x8901436e iio_trigger_free +EXPORT_SYMBOL drivers/iio/industrialio 0x94562988 iio_trigger_set_immutable +EXPORT_SYMBOL drivers/iio/industrialio 0x9471b920 iio_trigger_unregister +EXPORT_SYMBOL drivers/iio/industrialio 0x9f8eacd1 iio_get_time_res +EXPORT_SYMBOL drivers/iio/industrialio 0xa5371d95 iio_get_time_ns +EXPORT_SYMBOL drivers/iio/industrialio 0xb82d2c2a iio_device_set_clock +EXPORT_SYMBOL drivers/iio/industrialio 0xcb0f4617 iio_trigger_using_own +EXPORT_SYMBOL drivers/iio/industrialio 0xdf76bbeb iio_pollfunc_store_time +EXPORT_SYMBOL drivers/iio/industrialio 0xe44c4c26 __iio_trigger_register +EXPORT_SYMBOL drivers/iio/industrialio 0xe60a056f iio_push_event +EXPORT_SYMBOL drivers/iio/industrialio 0xf0be8e2d __iio_device_register +EXPORT_SYMBOL drivers/iio/industrialio 0xf595e46b iio_trigger_poll_chained +EXPORT_SYMBOL drivers/iio/industrialio 0xf71e053c iio_trigger_poll +EXPORT_SYMBOL drivers/iio/industrialio-configfs 0xa824270b iio_configfs_subsys +EXPORT_SYMBOL drivers/iio/industrialio-sw-device 0x06b2ba7d iio_unregister_sw_device_type +EXPORT_SYMBOL drivers/iio/industrialio-sw-device 0x2927cb5c iio_sw_device_create +EXPORT_SYMBOL drivers/iio/industrialio-sw-device 0x794a7c06 iio_sw_device_destroy +EXPORT_SYMBOL drivers/iio/industrialio-sw-device 0x9283e629 iio_register_sw_device_type +EXPORT_SYMBOL drivers/iio/industrialio-sw-trigger 0x1a2d9123 iio_register_sw_trigger_type +EXPORT_SYMBOL drivers/iio/industrialio-sw-trigger 0x8e588c6f iio_sw_trigger_destroy +EXPORT_SYMBOL drivers/iio/industrialio-sw-trigger 0xa902c422 iio_sw_trigger_create +EXPORT_SYMBOL drivers/iio/industrialio-sw-trigger 0xd05bc2d0 iio_unregister_sw_trigger_type +EXPORT_SYMBOL drivers/iio/industrialio-triggered-event 0x6a850f5e iio_triggered_event_setup +EXPORT_SYMBOL drivers/iio/industrialio-triggered-event 0xbb7105aa iio_triggered_event_cleanup +EXPORT_SYMBOL drivers/iio/light/st_uvis25_core 0x5afaf1f5 st_uvis25_probe +EXPORT_SYMBOL drivers/iio/light/st_uvis25_core 0x6aadf00b st_uvis25_pm_ops +EXPORT_SYMBOL drivers/iio/magnetometer/bmc150_magn 0x190c28f3 bmc150_magn_regmap_config +EXPORT_SYMBOL drivers/iio/magnetometer/bmc150_magn 0x63f8a35c bmc150_magn_probe +EXPORT_SYMBOL drivers/iio/magnetometer/bmc150_magn 0x6af5c2f6 bmc150_magn_remove +EXPORT_SYMBOL drivers/iio/magnetometer/bmc150_magn 0xdcb6d926 bmc150_magn_pm_ops +EXPORT_SYMBOL drivers/iio/magnetometer/hmc5843_core 0x0eaffbd9 hmc5843_common_suspend +EXPORT_SYMBOL drivers/iio/magnetometer/hmc5843_core 0x2dedb348 hmc5843_common_remove +EXPORT_SYMBOL drivers/iio/magnetometer/hmc5843_core 0x4f5bec84 hmc5843_common_resume +EXPORT_SYMBOL drivers/iio/magnetometer/hmc5843_core 0x6aa88b97 hmc5843_common_probe +EXPORT_SYMBOL drivers/iio/magnetometer/st_magn 0x5386a43a st_magn_common_remove +EXPORT_SYMBOL drivers/iio/magnetometer/st_magn 0x94f99b83 st_magn_common_probe +EXPORT_SYMBOL drivers/iio/magnetometer/st_magn 0xbb89fe47 st_magn_get_settings +EXPORT_SYMBOL drivers/iio/pressure/bmp280 0x3d736af7 bmp280_regmap_config +EXPORT_SYMBOL drivers/iio/pressure/bmp280 0x4ac0ecd1 bmp280_dev_pm_ops +EXPORT_SYMBOL drivers/iio/pressure/bmp280 0xb2ceeb43 bmp280_common_probe +EXPORT_SYMBOL drivers/iio/pressure/bmp280 0xd7f5b795 bmp180_regmap_config +EXPORT_SYMBOL drivers/iio/pressure/ms5611_core 0x4385d867 ms5611_remove +EXPORT_SYMBOL drivers/iio/pressure/ms5611_core 0x680e3ebc ms5611_probe +EXPORT_SYMBOL drivers/iio/pressure/st_pressure 0x7e8c4b5b st_press_get_settings +EXPORT_SYMBOL drivers/iio/pressure/st_pressure 0xa3ea00f4 st_press_common_probe +EXPORT_SYMBOL drivers/iio/pressure/st_pressure 0xc04f8fa5 st_press_common_remove +EXPORT_SYMBOL drivers/infiniband/core/ib_cm 0x06ed4e88 ib_send_cm_rep +EXPORT_SYMBOL drivers/infiniband/core/ib_cm 0x0aa9d008 ib_send_cm_rej +EXPORT_SYMBOL drivers/infiniband/core/ib_cm 0x22fd2a18 ib_send_cm_req +EXPORT_SYMBOL drivers/infiniband/core/ib_cm 0x28a41185 ib_cm_notify +EXPORT_SYMBOL drivers/infiniband/core/ib_cm 0x49d7df48 ib_destroy_cm_id +EXPORT_SYMBOL drivers/infiniband/core/ib_cm 0x506b560c ib_cm_listen +EXPORT_SYMBOL drivers/infiniband/core/ib_cm 0x69824a14 ibcm_reject_msg +EXPORT_SYMBOL drivers/infiniband/core/ib_cm 0x733031bc ib_cm_init_qp_attr +EXPORT_SYMBOL drivers/infiniband/core/ib_cm 0x741cb3f0 ib_send_cm_mra +EXPORT_SYMBOL drivers/infiniband/core/ib_cm 0x8255cec4 ib_send_cm_drep +EXPORT_SYMBOL drivers/infiniband/core/ib_cm 0x89d08e0b ib_create_cm_id +EXPORT_SYMBOL drivers/infiniband/core/ib_cm 0x9d699de6 ib_send_cm_dreq +EXPORT_SYMBOL drivers/infiniband/core/ib_cm 0xc0a55251 ib_send_cm_rtu +EXPORT_SYMBOL drivers/infiniband/core/ib_cm 0xc7f1d05f ib_send_cm_sidr_rep +EXPORT_SYMBOL drivers/infiniband/core/ib_cm 0xc8a5b090 cm_class +EXPORT_SYMBOL drivers/infiniband/core/ib_cm 0xd0e996c0 ib_cm_insert_listen +EXPORT_SYMBOL drivers/infiniband/core/ib_cm 0xfcefee94 ib_send_cm_sidr_req +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x01e445e6 ib_free_cq +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x03659ce7 rdma_nl_stat_hwcounter_entry +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x041e6be2 rdma_copy_src_l2_addr +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x04c22eb2 ib_detach_mcast +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x04d08d1a ib_sa_service_rec_query +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x07e5b530 ib_device_get_by_name +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x087a05da ib_dealloc_xrcd +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x0bae4be7 rdma_umap_priv_init +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x11ae1917 ibdev_notice +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x11be5d92 rdma_rw_ctx_post +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x11e1597f rdma_rw_ctx_destroy_signature +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x133d4607 rdma_user_mmap_entry_remove +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x15a144de ib_get_cached_port_state +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x173a8b3e ib_modify_qp +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x176b5ff3 rdma_link_register +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x179c4b4c rdma_create_user_ah +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x17dab221 ib_unregister_device_queued +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x184621a4 ib_get_rdma_header_version +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x1926abae ib_cq_pool_put +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x1b037462 __rdma_block_iter_start +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x20b52000 rdma_nl_put_driver_u32 +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x21149250 rdma_rw_ctx_destroy +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x2508a355 rdma_destroy_ah_user +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x253cc306 rdma_nl_unicast_wait +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x25a2d81c ib_register_mad_agent +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x25e51f44 ib_port_register_module_stat +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x26ae74aa ib_unregister_mad_agent +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x299a0ccf rdma_user_mmap_entry_insert +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x2a280906 ib_drain_rq +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x2a91bb33 ib_cache_gid_type_str +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x2d192f63 rdma_restrack_count +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x2d37aa4d ib_mr_pool_destroy +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x2f161f59 rdma_destroy_ah_attr +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x305e5701 rdma_addr_size_kss +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x30fde0bf ib_create_rwq_ind_table +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x34472ea0 ib_create_wq +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x35125ad5 ib_set_vf_link_state +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x35636da0 rdma_init_netdev +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x3575ac6f rdma_set_cq_moderation +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x3620de30 ib_reg_user_mr +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x37e921de ib_modify_srq +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x390e71c6 ib_create_qp_security +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x394011ef rdma_restrack_set_task +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x39f6a982 ib_mad_kernel_rmpp_agent +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x3b3df5ed ib_modify_wq +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x3b7f981f ib_register_event_handler +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x3c92ee8b ib_get_cached_subnet_prefix +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x3eebc6a1 ib_query_pkey +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x3fc2387c ib_ud_header_unpack +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x4100f6a0 ib_device_put +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x4332d8fd rdma_replace_ah_attr +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x434c5d10 zgid +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x44169afc rdma_rw_mr_factor +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x44400b8c ib_create_qp +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x44f4d617 ib_device_get_by_netdev +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x45fb8985 rdma_nl_chk_listeners +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x47091b99 ibdev_emerg +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x47d05e45 __ib_alloc_cq +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x481546e8 ib_advise_mr +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x48c364f9 rdma_user_mmap_io +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x49e86a0e ib_get_gids_from_rdma_hdr +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x4b453af3 rdma_hold_gid_attr +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x4bf06c5c ib_open_qp +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x4cc7485d ib_free_recv_mad +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x4cf890bd ib_init_ah_from_mcmember +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 0x4fc701ba ib_mr_pool_init +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x520b2638 ib_pack +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x52113230 rdma_user_mmap_entry_insert_range +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x52cf0c4b ibdev_printk +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x5392d10f rdma_resolve_ip +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x55000b75 ib_get_cached_pkey +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x55384187 ib_check_mr_status +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x562c028f rdma_restrack_kadd +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x57c68f8b rdma_query_gid +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x580bd621 ib_modify_device +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x59f5215b rdma_put_gid_attr +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x5b88f164 ib_attach_mcast +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x5b9f64b4 ibdev_alert +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x5f1148e6 rdma_move_grh_sgid_attr +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x5f6ab2fb ib_dereg_mr_user +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x6051aeec ib_init_ah_attr_from_wc +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x613b1e2e ib_is_mad_class_rmpp +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x61d24c52 ib_rate_to_mbps +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x64553728 rdma_dev_access_netns +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x6546517f rdma_alloc_netdev +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x654b4669 ib_create_srq_user +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x6581ca90 ib_sa_unregister_client +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x665bf72a ib_drain_sq +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x67fe341b rdma_nl_put_driver_u64 +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x68e18c25 ib_register_client +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x6b919171 ib_query_srq +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x6b958320 ib_ud_ip4_csum +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x6c28701a ib_find_exact_cached_pkey +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x6f3614b6 rdma_is_zero_gid +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x6fb83ed3 ib_set_vf_guid +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x6fc28652 ib_get_vf_config +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x721461b9 ib_sa_get_mcmember_rec +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x72f55846 __ib_alloc_pd +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x75a729a0 rdma_nl_unregister +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x76771680 ib_alloc_mr_integrity +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x783e76fe rdma_rw_ctx_wrs +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x787ccc4c ib_get_mad_data_offset +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x78b871da rdma_user_mmap_entry_put +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x79b4ab07 ib_modify_qp_with_udata +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x7b56b034 ib_unregister_driver +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x7f4bfb74 ib_create_send_mad +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x81218358 ib_map_mr_sg_pi +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x81444f37 _ib_alloc_device +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x81c91eb5 rdma_link_unregister +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x86cef180 rdma_addr_size +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x87b9f267 __ib_create_cq +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x884820ef roce_gid_type_mask_support +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x89acc1f0 rdma_get_gid_attr +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x8a22dc70 ib_modify_mad +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x8a46973f ib_device_set_netdev +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x8b010247 ib_set_client_data +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x8c075b11 ibnl_put_attr +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x8c4c1497 ib_get_rmpp_segment +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x8dea03bb ib_cq_pool_get +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x8dfb99f2 __ib_alloc_cq_any +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x8e7528da __rdma_block_iter_next +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x90e807c7 ib_cache_gid_parse_type_str +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x90f175ae ib_get_vf_stats +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x915945fe ib_modify_port +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x920364f0 ib_sa_join_multicast +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x94d78b3d ib_create_ah_from_wc +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x95aa56ee ibdev_warn +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x971389d5 rdma_query_ah +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x9a869097 rdma_nl_multicast +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x9b0fe2ce ib_close_qp +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x9eb03117 ibdev_info +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xa10141e5 ib_process_cq_direct +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xa1550d51 ibnl_put_msg +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xa1b7bcea ib_get_cached_lmc +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xa2f36707 __ib_alloc_xrcd +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xa4556a56 ib_query_qp +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xa52e29f4 rdma_create_ah +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xa596f41a ib_free_send_mad +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xa5e787c7 ib_destroy_rwq_ind_table +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xa7c4c123 ib_sa_register_client +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xa9b88e1f ib_get_eth_speed +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xa9f1f33b ib_dealloc_device +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xaaee3be4 rdma_copy_ah_attr +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xada88c44 rdma_nl_register +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xaddd5a4a rdma_restrack_get +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xadeff281 ib_unregister_event_handler +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xae956dce ib_rate_to_mult +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xaff49152 ib_mr_pool_get +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xb06275a0 rdma_read_gid_l2_fields +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xb06d6a7a rdma_roce_rescan_device +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xb1a312e1 ib_unpack +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xb36e4148 ib_sa_pack_path +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xb51cbb33 ib_dispatch_event +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xb673aeef rdma_restrack_put +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xb77a7853 ib_find_gid +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xb7852a05 ib_ud_header_init +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xb83182cb rdma_port_get_link_layer +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xb9604988 ib_destroy_wq +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xbb8a6f2f ib_find_cached_pkey +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xbe6f9cfa ib_sg_to_pages +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xbe7ab708 ib_map_mr_sg +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xc1120225 ib_dealloc_pd_user +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xc1cd4e43 ibdev_err +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xc6121f8a ib_rdmacg_try_charge +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xc6f36c4e rdma_read_gid_attr_ndev_rcu +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xc7e9b901 rdma_find_gid +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xc8103fea rdma_addr_cancel +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xc8147b73 ib_cancel_mad +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xcd3a63b3 ib_set_device_ops +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xd307297a rdma_user_mmap_entry_get +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xd32a7c48 rdma_read_gid_hw_context +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xd3464692 ib_alloc_mr_user +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xd44af71b ib_register_device +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xd4b4fe28 ib_get_net_dev_by_params +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xd5cb027d ib_unregister_device +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xd6636ca6 rdma_addr_size_in6 +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xd6e65d77 ib_modify_qp_is_ok +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xd7de91aa ib_mr_pool_put +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xd80aa6ff rdma_user_mmap_entry_get_pgoff +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xda0d50ec ib_sa_cancel_query +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xdde7a5c5 ib_init_ah_attr_from_path +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xde75198c ib_port_unregister_module_stat +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xe0aea375 rdma_rw_ctx_init +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xe0f05899 ib_sa_guid_info_rec_query +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xe2542155 ib_resize_cq +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xe4527953 ib_drain_qp +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xe47f1a61 ibdev_crit +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xe48fe4c7 ib_sa_path_rec_get +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xe5840ec6 ib_wc_status_msg +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xe5a78c1e ib_sa_unpack_path +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xe5ab4c5c rdma_nl_put_driver_string +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xe603cdfd ib_destroy_qp_user +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xe60919fd ib_sa_sendonly_fullmem_support +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xe7b52e5f mult_to_ib_rate +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xe7ef4a7e rdma_restrack_del +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xe87646a1 rdma_find_gid_by_port +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xe9c877fd rdma_nl_put_driver_u32_hex +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xe9e799fc ib_ud_header_pack +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xea59cf2a rdma_restrack_get_byid +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xea8acdb5 ib_unregister_client +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xec978bac ib_query_port +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xed63d0d9 ib_get_vf_guid +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xee3e3d58 ib_rdmacg_uncharge +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xef3fc42a ib_get_device_fw_str +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xefb97256 rdma_nl_put_driver_u64_hex +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xeff8513b rdma_modify_ah +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xf0d5a07d ib_destroy_cq_user +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xf2c3cb1e rdma_move_ah_attr +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xf5dedb30 rdma_node_get_transport +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xf601645a ib_unregister_device_and_put +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xf60e99f5 rdma_restrack_uadd +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xf6ed3334 ib_event_msg +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xf7445060 ib_post_send_mad +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xf8db0af6 ib_destroy_srq_user +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xf9ead627 rdma_rw_ctx_signature_init +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xfc1aee42 rdma_nl_unicast +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xfc78a1b8 rdma_translate_ip +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xfd1c5bc9 ib_find_pkey +EXPORT_SYMBOL drivers/infiniband/core/ib_uverbs 0x004c43b6 ib_copy_qp_attr_to_user +EXPORT_SYMBOL drivers/infiniband/core/ib_uverbs 0x18c70714 _uverbs_get_const +EXPORT_SYMBOL drivers/infiniband/core/ib_uverbs 0x1a9696c0 ib_umem_odp_alloc_child +EXPORT_SYMBOL drivers/infiniband/core/ib_uverbs 0x1b54bd5d ib_copy_path_rec_from_user +EXPORT_SYMBOL drivers/infiniband/core/ib_uverbs 0x26357a32 ib_umem_release +EXPORT_SYMBOL drivers/infiniband/core/ib_uverbs 0x2be7741f uverbs_uobject_put +EXPORT_SYMBOL drivers/infiniband/core/ib_uverbs 0x33d1176b uverbs_fd_class +EXPORT_SYMBOL drivers/infiniband/core/ib_uverbs 0x3e7c60af uverbs_destroy_def_handler +EXPORT_SYMBOL drivers/infiniband/core/ib_uverbs 0x3f236146 ib_umem_get +EXPORT_SYMBOL drivers/infiniband/core/ib_uverbs 0x4b4c932c ib_umem_odp_get +EXPORT_SYMBOL drivers/infiniband/core/ib_uverbs 0x63057f4b ib_copy_path_rec_to_user +EXPORT_SYMBOL drivers/infiniband/core/ib_uverbs 0x6c9a2da1 ib_umem_odp_alloc_implicit +EXPORT_SYMBOL drivers/infiniband/core/ib_uverbs 0x703c0af7 uverbs_uobject_fd_release +EXPORT_SYMBOL drivers/infiniband/core/ib_uverbs 0x750ba96f uverbs_get_flags64 +EXPORT_SYMBOL drivers/infiniband/core/ib_uverbs 0x79fa377f ib_umem_odp_map_dma_pages +EXPORT_SYMBOL drivers/infiniband/core/ib_uverbs 0x89399ec6 ib_uverbs_get_ucontext_file +EXPORT_SYMBOL drivers/infiniband/core/ib_uverbs 0x8d7a7afb uverbs_finalize_uobj_create +EXPORT_SYMBOL drivers/infiniband/core/ib_uverbs 0x95bf1de7 flow_resources_add +EXPORT_SYMBOL drivers/infiniband/core/ib_uverbs 0x9fea7aab uverbs_copy_to +EXPORT_SYMBOL drivers/infiniband/core/ib_uverbs 0xaadbfc31 uverbs_get_flags32 +EXPORT_SYMBOL drivers/infiniband/core/ib_uverbs 0xadc4a249 uverbs_idr_class +EXPORT_SYMBOL drivers/infiniband/core/ib_uverbs 0xb0a8ff7c ib_uverbs_flow_resources_free +EXPORT_SYMBOL drivers/infiniband/core/ib_uverbs 0xb26d124e ib_umem_copy_from +EXPORT_SYMBOL drivers/infiniband/core/ib_uverbs 0xbdabec89 ib_umem_page_count +EXPORT_SYMBOL drivers/infiniband/core/ib_uverbs 0xbeb5c8ff _uverbs_alloc +EXPORT_SYMBOL drivers/infiniband/core/ib_uverbs 0xc2bb5407 ib_umem_find_best_pgsz +EXPORT_SYMBOL drivers/infiniband/core/ib_uverbs 0xe1e44e24 ib_umem_odp_release +EXPORT_SYMBOL drivers/infiniband/core/ib_uverbs 0xecfc0dfd flow_resources_alloc +EXPORT_SYMBOL drivers/infiniband/core/ib_uverbs 0xef11aa9e ib_umem_odp_unmap_dma_pages +EXPORT_SYMBOL drivers/infiniband/core/ib_uverbs 0xf1874586 ib_copy_ah_attr_to_user +EXPORT_SYMBOL drivers/infiniband/core/iw_cm 0x04cc9ede iw_cm_init_qp_attr +EXPORT_SYMBOL drivers/infiniband/core/iw_cm 0x5eedfeda iw_cm_accept +EXPORT_SYMBOL drivers/infiniband/core/iw_cm 0x67343fdc iw_cm_reject +EXPORT_SYMBOL drivers/infiniband/core/iw_cm 0x8e9f0724 iw_cm_disconnect +EXPORT_SYMBOL drivers/infiniband/core/iw_cm 0x9ad8982b iw_create_cm_id +EXPORT_SYMBOL drivers/infiniband/core/iw_cm 0xa3483f09 iw_cm_listen +EXPORT_SYMBOL drivers/infiniband/core/iw_cm 0xeb256d45 iw_cm_connect +EXPORT_SYMBOL drivers/infiniband/core/iw_cm 0xf3df871f iwcm_reject_msg +EXPORT_SYMBOL drivers/infiniband/core/iw_cm 0xf6d12066 iw_destroy_cm_id +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0x01e0b54b rdma_disconnect +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0x114e5383 rdma_connect +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0x16244e83 rdma_destroy_id +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0x17542ab3 rdma_set_ack_timeout +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0x1a8482d2 rdma_reject +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0x1ad5611d rdma_iw_cm_id +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0x1b85f7ca rdma_resolve_route +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0x1ccb432f rdma_set_reuseaddr +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0x1d85738c rdma_leave_multicast +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0x21375c4e rdma_resolve_addr +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0x2d49877b rdma_notify +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0x2ddf9a15 rdma_bind_addr +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0x305c2cbd rdma_init_qp_attr +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0x38959563 rdma_connect_ece +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0x3b6871dc rdma_create_qp +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0x480ecb04 rdma_read_gids +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0x54229454 rdma_get_service_id +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0x5742213f rdma_set_ib_path +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0x7863a983 rdma_consumer_reject_data +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0x907df803 rdma_event_msg +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0x92946842 rdma_set_afonly +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0x978b380d __rdma_accept +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0xa190f53b rdma_res_to_id +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0xa6456703 rdma_listen +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0xb2c92650 rdma_set_service_type +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0xb3f982e5 rdma_destroy_qp +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0xcf93255c __rdma_create_id +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0xea98be9b rdma_reject_msg +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0xee63e8cc rdma_join_multicast +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0xf25dbce4 __rdma_accept_ece +EXPORT_SYMBOL drivers/infiniband/ulp/rtrs/rtrs-client 0x1302d397 rtrs_clt_put_permit +EXPORT_SYMBOL drivers/infiniband/ulp/rtrs/rtrs-client 0x336d0b96 rtrs_clt_close +EXPORT_SYMBOL drivers/infiniband/ulp/rtrs/rtrs-client 0x3b50de7d rtrs_clt_request +EXPORT_SYMBOL drivers/infiniband/ulp/rtrs/rtrs-client 0x501f598d rtrs_permit_to_pdu +EXPORT_SYMBOL drivers/infiniband/ulp/rtrs/rtrs-client 0x6a89bd09 rtrs_clt_query +EXPORT_SYMBOL drivers/infiniband/ulp/rtrs/rtrs-client 0x94e9eeac rtrs_clt_open +EXPORT_SYMBOL drivers/infiniband/ulp/rtrs/rtrs-client 0xfc3c4633 rtrs_clt_get_permit +EXPORT_SYMBOL drivers/infiniband/ulp/rtrs/rtrs-core 0x03e7fa39 rtrs_rdma_dev_pd_init +EXPORT_SYMBOL drivers/infiniband/ulp/rtrs/rtrs-core 0x2510363a sockaddr_to_str +EXPORT_SYMBOL drivers/infiniband/ulp/rtrs/rtrs-core 0x3d5994c1 rtrs_ib_dev_put +EXPORT_SYMBOL drivers/infiniband/ulp/rtrs/rtrs-core 0x59e97415 rtrs_ib_dev_find_or_add +EXPORT_SYMBOL drivers/infiniband/ulp/rtrs/rtrs-core 0x67029a33 rtrs_addr_to_sockaddr +EXPORT_SYMBOL drivers/infiniband/ulp/rtrs/rtrs-core 0xa6b927ea rtrs_rdma_dev_pd_deinit +EXPORT_SYMBOL drivers/infiniband/ulp/rtrs/rtrs-server 0x45820838 rtrs_srv_get_sess_name +EXPORT_SYMBOL drivers/infiniband/ulp/rtrs/rtrs-server 0x69abc0bf rtrs_srv_set_sess_priv +EXPORT_SYMBOL drivers/infiniband/ulp/rtrs/rtrs-server 0x827f5f92 rtrs_srv_get_queue_depth +EXPORT_SYMBOL drivers/infiniband/ulp/rtrs/rtrs-server 0x8b3a62e6 rtrs_srv_open +EXPORT_SYMBOL drivers/infiniband/ulp/rtrs/rtrs-server 0xb1ffcb8e rtrs_srv_resp_rdma +EXPORT_SYMBOL drivers/infiniband/ulp/rtrs/rtrs-server 0xb3af78eb rtrs_srv_close +EXPORT_SYMBOL drivers/input/gameport/gameport 0x0b591659 gameport_stop_polling +EXPORT_SYMBOL drivers/input/gameport/gameport 0x35d321ad __gameport_register_port +EXPORT_SYMBOL drivers/input/gameport/gameport 0x4356a1dc gameport_unregister_port +EXPORT_SYMBOL drivers/input/gameport/gameport 0x515c5b92 gameport_unregister_driver +EXPORT_SYMBOL drivers/input/gameport/gameport 0xad628c7f gameport_close +EXPORT_SYMBOL drivers/input/gameport/gameport 0xc61ed75e gameport_set_phys +EXPORT_SYMBOL drivers/input/gameport/gameport 0xcc36bae5 gameport_start_polling +EXPORT_SYMBOL drivers/input/gameport/gameport 0xf200ba92 gameport_open +EXPORT_SYMBOL drivers/input/gameport/gameport 0xf3392521 __gameport_register_driver +EXPORT_SYMBOL drivers/input/input-polldev 0x106cc34e devm_input_allocate_polled_device +EXPORT_SYMBOL drivers/input/input-polldev 0x352a6797 input_register_polled_device +EXPORT_SYMBOL drivers/input/input-polldev 0x92177c9d input_free_polled_device +EXPORT_SYMBOL drivers/input/input-polldev 0x99438aac input_unregister_polled_device +EXPORT_SYMBOL drivers/input/input-polldev 0xa4b61001 input_allocate_polled_device +EXPORT_SYMBOL drivers/input/joystick/iforce/iforce 0x2881362a iforce_send_packet +EXPORT_SYMBOL drivers/input/joystick/iforce/iforce 0x3e33cbf7 iforce_process_packet +EXPORT_SYMBOL drivers/input/joystick/iforce/iforce 0xa2442c02 iforce_init_device +EXPORT_SYMBOL drivers/input/matrix-keymap 0x4971d237 matrix_keypad_build_keymap +EXPORT_SYMBOL drivers/input/misc/ad714x 0x1015809b ad714x_disable +EXPORT_SYMBOL drivers/input/misc/ad714x 0xa9942356 ad714x_probe +EXPORT_SYMBOL drivers/input/misc/ad714x 0xf5af8cf9 ad714x_enable +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/misc/cma3000_d0x 0xde1cd88e cma3000_init +EXPORT_SYMBOL drivers/input/rmi4/rmi_core 0xc273d35a rmi_unregister_transport_device +EXPORT_SYMBOL drivers/input/sparse-keymap 0x57642986 sparse_keymap_report_entry +EXPORT_SYMBOL drivers/input/sparse-keymap 0x6939e326 sparse_keymap_entry_from_keycode +EXPORT_SYMBOL drivers/input/sparse-keymap 0x76591764 sparse_keymap_report_event +EXPORT_SYMBOL drivers/input/sparse-keymap 0xc958d9c5 sparse_keymap_setup +EXPORT_SYMBOL drivers/input/sparse-keymap 0xe5ad2a5c sparse_keymap_entry_from_scancode +EXPORT_SYMBOL drivers/input/touchscreen/ad7879 0x10e4c014 ad7879_probe +EXPORT_SYMBOL drivers/input/touchscreen/ad7879 0x891a9f1d ad7879_pm_ops +EXPORT_SYMBOL drivers/isdn/capi/kernelcapi 0x08dda9b6 capi_ctr_ready +EXPORT_SYMBOL drivers/isdn/capi/kernelcapi 0x2f3512d5 capi_ctr_handle_message +EXPORT_SYMBOL drivers/isdn/capi/kernelcapi 0x45a46134 capi_ctr_down +EXPORT_SYMBOL drivers/isdn/capi/kernelcapi 0x954eefa5 attach_capi_ctr +EXPORT_SYMBOL drivers/isdn/capi/kernelcapi 0xbb60272f detach_capi_ctr +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 0x2e7bdcfd mISDNisac_irq +EXPORT_SYMBOL drivers/isdn/hardware/mISDN/mISDNipac 0x396de5ae mISDNipac_irq +EXPORT_SYMBOL drivers/isdn/hardware/mISDN/mISDNipac 0x45d8cea7 mISDNisac_init +EXPORT_SYMBOL drivers/isdn/hardware/mISDN/mISDNipac 0xb5cf680e mISDNipac_init +EXPORT_SYMBOL drivers/isdn/hardware/mISDN/mISDNisar 0x2b953ac2 mISDNisar_init +EXPORT_SYMBOL drivers/isdn/hardware/mISDN/mISDNisar 0xa41fa718 mISDNisar_irq +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0x03a68066 mISDN_FsmRestartTimer +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0x05e7096e dchannel_senddata +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0x12d247eb recv_Bchannel_skb +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 0x28cb4231 mISDN_freebchannel +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 0x46275426 mISDN_ctrl_bchannel +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0x50c2230c mISDN_FsmChangeState +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0x5725d404 mISDN_initbchannel +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0x588886a6 l1_event +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0x5945047e queue_ch_frame +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0x6047df40 mISDN_FsmInitTimer +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0x6187b510 mISDN_initdchannel +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0x644f3b26 mISDN_unregister_device +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0x6c663518 mISDN_register_device +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0x726ebadb bchannel_get_rxbuf +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0x9c928457 mISDN_FsmNew +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0xa1be0652 recv_Dchannel_skb +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0xb3424cb7 mISDN_unregister_Bprotocol +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0xbb31308e recv_Dchannel +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0xc0d67eb5 mISDN_freedchannel +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0xc3401729 mISDN_register_clock +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0xc48d1c51 get_next_bframe +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0xcaaad949 mISDN_register_Bprotocol +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0xcc7299ba mISDNDevName4ch +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 0xdf893e13 recv_Echannel +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0xe3a70f88 mISDN_clear_bchannel +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0xe5161396 recv_Bchannel +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0xe8f617eb mISDN_unregister_clock +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0xe90bd0df create_l1 +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0xf69568b1 get_next_dframe +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0xfde804fc bchannel_senddata +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 0x54a12ec4 ti_lmu_common_set_ramp +EXPORT_SYMBOL drivers/leds/leds-ti-lmu-common 0x8ea94730 ti_lmu_common_get_brt_res +EXPORT_SYMBOL drivers/leds/leds-ti-lmu-common 0xced72aae ti_lmu_common_set_brightness +EXPORT_SYMBOL drivers/leds/leds-ti-lmu-common 0xfc33f3b3 ti_lmu_common_get_ramp_params +EXPORT_SYMBOL drivers/mailbox/omap-mailbox 0x1258a5fe omap_mbox_enable_irq +EXPORT_SYMBOL drivers/mailbox/omap-mailbox 0x636c1867 omap_mbox_request_channel +EXPORT_SYMBOL drivers/mailbox/omap-mailbox 0xc6410961 omap_mbox_disable_irq +EXPORT_SYMBOL drivers/md/dm-log 0x02490b49 dm_dirty_log_destroy +EXPORT_SYMBOL drivers/md/dm-log 0x05476746 dm_dirty_log_type_register +EXPORT_SYMBOL drivers/md/dm-log 0x389d3172 dm_dirty_log_type_unregister +EXPORT_SYMBOL drivers/md/dm-log 0x62198eeb dm_dirty_log_create +EXPORT_SYMBOL drivers/md/dm-snapshot 0x0829eb08 dm_exception_store_type_unregister +EXPORT_SYMBOL drivers/md/dm-snapshot 0x28b3cbe5 dm_exception_store_type_register +EXPORT_SYMBOL drivers/md/dm-snapshot 0x4654a20e dm_snap_origin +EXPORT_SYMBOL drivers/md/dm-snapshot 0x886a60d3 dm_snap_cow +EXPORT_SYMBOL drivers/md/dm-snapshot 0xd54b8284 dm_exception_store_destroy +EXPORT_SYMBOL drivers/md/dm-snapshot 0xec85a1ef dm_exception_store_create +EXPORT_SYMBOL drivers/md/raid456 0x58e990b8 raid5_set_cache_size +EXPORT_SYMBOL drivers/md/raid456 0x8554ff22 r5c_journal_mode_set +EXPORT_SYMBOL drivers/media/common/b2c2/b2c2-flexcop 0x004f9fea flexcop_pass_dmx_data +EXPORT_SYMBOL drivers/media/common/b2c2/b2c2-flexcop 0x110e76e9 flexcop_device_initialize +EXPORT_SYMBOL drivers/media/common/b2c2/b2c2-flexcop 0x168d89eb flexcop_pass_dmx_packets +EXPORT_SYMBOL drivers/media/common/b2c2/b2c2-flexcop 0x1e0f8e0b flexcop_sram_set_dest +EXPORT_SYMBOL drivers/media/common/b2c2/b2c2-flexcop 0x52da8bec flexcop_wan_set_speed +EXPORT_SYMBOL drivers/media/common/b2c2/b2c2-flexcop 0x5748c0b6 flexcop_device_kmalloc +EXPORT_SYMBOL drivers/media/common/b2c2/b2c2-flexcop 0x648187fc flexcop_device_kfree +EXPORT_SYMBOL drivers/media/common/b2c2/b2c2-flexcop 0x7943e738 flexcop_sram_ctrl +EXPORT_SYMBOL drivers/media/common/b2c2/b2c2-flexcop 0x96af58e2 flexcop_pid_feed_control +EXPORT_SYMBOL drivers/media/common/b2c2/b2c2-flexcop 0xc4e2109e flexcop_dump_reg +EXPORT_SYMBOL drivers/media/common/b2c2/b2c2-flexcop 0xcf01ddad flexcop_eeprom_check_mac_addr +EXPORT_SYMBOL drivers/media/common/b2c2/b2c2-flexcop 0xe5888f65 flexcop_i2c_request +EXPORT_SYMBOL drivers/media/common/b2c2/b2c2-flexcop 0xfdca6e04 flexcop_device_exit +EXPORT_SYMBOL drivers/media/common/cx2341x 0x4bd8da30 cx2341x_handler_set_busy +EXPORT_SYMBOL drivers/media/common/cx2341x 0x55aa7c5f cx2341x_mpeg_ctrls +EXPORT_SYMBOL drivers/media/common/cx2341x 0x5fb512db cx2341x_handler_init +EXPORT_SYMBOL drivers/media/common/cx2341x 0x8d3a49fd cx2341x_ctrl_get_menu +EXPORT_SYMBOL drivers/media/common/cx2341x 0xa46a4d81 cx2341x_handler_setup +EXPORT_SYMBOL drivers/media/common/cx2341x 0xb9c8f3f1 cx2341x_update +EXPORT_SYMBOL drivers/media/common/cx2341x 0xc889377e cx2341x_log_status +EXPORT_SYMBOL drivers/media/common/cx2341x 0xdaff62f9 cx2341x_fill_defaults +EXPORT_SYMBOL drivers/media/common/cx2341x 0xdbf6e0f9 cx2341x_handler_set_50hz +EXPORT_SYMBOL drivers/media/common/cx2341x 0xe197a5dd cx2341x_ext_ctrls +EXPORT_SYMBOL drivers/media/common/cx2341x 0xeb854f47 cx2341x_ctrl_query +EXPORT_SYMBOL drivers/media/common/cypress_firmware 0x5f86d828 cypress_load_firmware +EXPORT_SYMBOL drivers/media/common/tveeprom 0x0dbf0296 tveeprom_hauppauge_analog +EXPORT_SYMBOL drivers/media/common/tveeprom 0x59f9ceb0 tveeprom_read +EXPORT_SYMBOL drivers/media/common/videobuf2/videobuf2-common 0x8f275cd7 vb2_verify_memory_type +EXPORT_SYMBOL drivers/media/common/videobuf2/videobuf2-common 0xdd867f0f vb2_buffer_in_use +EXPORT_SYMBOL drivers/media/common/videobuf2/videobuf2-dvb 0x7e990a3d vb2_dvb_find_frontend +EXPORT_SYMBOL drivers/media/common/videobuf2/videobuf2-dvb 0xb35ff098 vb2_dvb_unregister_bus +EXPORT_SYMBOL drivers/media/common/videobuf2/videobuf2-dvb 0xc70c1021 vb2_dvb_register_bus +EXPORT_SYMBOL drivers/media/common/videobuf2/videobuf2-dvb 0xe4d87603 vb2_dvb_dealloc_frontends +EXPORT_SYMBOL drivers/media/common/videobuf2/videobuf2-dvb 0xec73434c vb2_dvb_get_frontend +EXPORT_SYMBOL drivers/media/common/videobuf2/videobuf2-dvb 0xefd6faf7 vb2_dvb_alloc_frontend +EXPORT_SYMBOL drivers/media/common/videobuf2/videobuf2-memops 0xa21fa765 vb2_create_framevec +EXPORT_SYMBOL drivers/media/common/videobuf2/videobuf2-memops 0xccd197c7 vb2_destroy_framevec +EXPORT_SYMBOL drivers/media/common/videobuf2/videobuf2-v4l2 0x7373a0bc vb2_querybuf +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x006d6880 dvb_dmx_swfilter +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x08733236 intlog10 +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x0e6cd491 dvb_register_device +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x0f7bf36f dvb_register_adapter +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x12d265d8 dvb_unregister_frontend +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x1609d70c dvb_ringbuffer_flush +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x1ba5b157 dvb_remove_device +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x1e7a8283 dvb_ringbuffer_read +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x21381c3b dvb_dmx_swfilter_raw +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x214d5b4e dvb_ringbuffer_init +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x2c12c287 dvb_ringbuffer_empty +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x31d09674 dvb_register_frontend +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x32bccf2b dvb_ca_en50221_camchange_irq +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x33efea5a dvb_net_release +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x38a21780 dvb_unregister_adapter +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x38c65851 dvb_generic_open +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x3b93d71a dvb_frontend_sleep_until +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x3fd96ba7 dvb_ringbuffer_flush_spinlock_wakeup +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x42d15a1b dvb_ringbuffer_write_user +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x4be5c646 dvb_dmx_init +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x561a9103 dvb_free_device +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x58920678 dvb_frontend_reinitialise +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x5eedb549 dvb_ca_en50221_frda_irq +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x5f2b1d95 intlog2 +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x64b27329 dvb_dmxdev_init +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x66191513 dvb_net_init +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x6ba914a6 dvb_unregister_device +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x7b334d3c dvb_dmx_release +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x8026ef3e dvb_ringbuffer_read_user +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x82143c17 dvb_ringbuffer_avail +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x83ea0a2b dvb_ca_en50221_camready_irq +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x846ed814 dvb_ca_en50221_init +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x883388eb dvb_generic_release +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x9b0d9c0f dvb_frontend_detach +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0xa68fb899 dvb_frontend_suspend +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0xb98f70d8 dvb_frontend_resume +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0xbe3d62d6 dvb_ca_en50221_release +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0xc0b93899 dvb_ringbuffer_write +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0xdafc31c5 dvb_dmx_swfilter_packets +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0xe196082f dvb_dmxdev_release +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0xedda2b2f dvb_dmx_swfilter_204 +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0xfa4430e6 dvb_generic_ioctl +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0xfe73d116 dvb_ringbuffer_free +EXPORT_SYMBOL drivers/media/dvb-frontends/ascot2e 0x4d58fe06 ascot2e_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/atbm8830 0x950f49a1 atbm8830_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/au8522_common 0x00248073 au8522_sleep +EXPORT_SYMBOL drivers/media/dvb-frontends/au8522_common 0x0d7498cc au8522_get_state +EXPORT_SYMBOL drivers/media/dvb-frontends/au8522_common 0x2c93d1b7 au8522_release_state +EXPORT_SYMBOL drivers/media/dvb-frontends/au8522_common 0x2d7870b3 au8522_analog_i2c_gate_ctrl +EXPORT_SYMBOL drivers/media/dvb-frontends/au8522_common 0x5e53b05f au8522_writereg +EXPORT_SYMBOL drivers/media/dvb-frontends/au8522_common 0x66c51d4e au8522_init +EXPORT_SYMBOL drivers/media/dvb-frontends/au8522_common 0x9119fbd7 au8522_i2c_gate_ctrl +EXPORT_SYMBOL drivers/media/dvb-frontends/au8522_common 0x9a9cd6d5 au8522_led_ctrl +EXPORT_SYMBOL drivers/media/dvb-frontends/au8522_common 0xfbaa48aa au8522_readreg +EXPORT_SYMBOL drivers/media/dvb-frontends/au8522_dig 0x065e26a1 au8522_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/bcm3510 0x8a23a7f0 bcm3510_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/cx22700 0x217e4886 cx22700_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/cx22702 0x8fa112d9 cx22702_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/cx24110 0xbd477ed2 cx24110_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/cx24113 0xb988ab72 cx24113_agc_callback +EXPORT_SYMBOL drivers/media/dvb-frontends/cx24113 0xcbea1237 cx24113_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/cx24116 0xbcd6e217 cx24116_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/cx24120 0x89b9ce1d cx24120_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/cx24123 0x1b7582ee cx24123_get_tuner_i2c_adapter +EXPORT_SYMBOL drivers/media/dvb-frontends/cx24123 0x404b96c8 cx24123_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/cxd2820r 0xbcff347e cxd2820r_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/cxd2841er 0x082a59fe cxd2841er_attach_s +EXPORT_SYMBOL drivers/media/dvb-frontends/cxd2841er 0xf792fd64 cxd2841er_attach_t_c +EXPORT_SYMBOL drivers/media/dvb-frontends/cxd2880/cxd2880 0x192a1873 cxd2880_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/dib0070 0x36ce1374 dib0070_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/dib0070 0x4c9e06c8 dib0070_wbd_offset +EXPORT_SYMBOL drivers/media/dvb-frontends/dib0070 0x9c4a24e6 dib0070_ctrl_agc_filter +EXPORT_SYMBOL drivers/media/dvb-frontends/dib0070 0xa054a041 dib0070_get_rf_output +EXPORT_SYMBOL drivers/media/dvb-frontends/dib0070 0xd527ead3 dib0070_set_rf_output +EXPORT_SYMBOL drivers/media/dvb-frontends/dib0090 0x03121731 dib0090_set_vga +EXPORT_SYMBOL drivers/media/dvb-frontends/dib0090 0x0b93ad80 dib0090_fw_register +EXPORT_SYMBOL drivers/media/dvb-frontends/dib0090 0x1378288b dib0090_get_wbd_offset +EXPORT_SYMBOL drivers/media/dvb-frontends/dib0090 0x1a0b5a61 dib0090_update_tuning_table_7090 +EXPORT_SYMBOL drivers/media/dvb-frontends/dib0090 0x30527ec8 dib0090_set_tune_state +EXPORT_SYMBOL drivers/media/dvb-frontends/dib0090 0x48e3e653 dib0090_get_wbd_target +EXPORT_SYMBOL drivers/media/dvb-frontends/dib0090 0x6fdbf0cd dib0090_pwm_gain_reset +EXPORT_SYMBOL drivers/media/dvb-frontends/dib0090 0x71b48dc7 dib0090_get_current_gain +EXPORT_SYMBOL drivers/media/dvb-frontends/dib0090 0x78527100 dib0090_set_dc_servo +EXPORT_SYMBOL drivers/media/dvb-frontends/dib0090 0xa8d4364f dib0090_set_switch +EXPORT_SYMBOL drivers/media/dvb-frontends/dib0090 0xb5c1f5a0 dib0090_gain_control +EXPORT_SYMBOL drivers/media/dvb-frontends/dib0090 0xc3f9b04e dib0090_register +EXPORT_SYMBOL drivers/media/dvb-frontends/dib0090 0xc711a885 dib0090_update_rframp_7090 +EXPORT_SYMBOL drivers/media/dvb-frontends/dib0090 0xf17c0131 dib0090_dcc_freq +EXPORT_SYMBOL drivers/media/dvb-frontends/dib0090 0xfbd19f22 dib0090_get_tune_state +EXPORT_SYMBOL drivers/media/dvb-frontends/dib3000mb 0xa530e423 dib3000mb_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/dib3000mc 0x00d37cf1 dib3000mc_pid_parse +EXPORT_SYMBOL drivers/media/dvb-frontends/dib3000mc 0x2df913ba dib3000mc_set_config +EXPORT_SYMBOL drivers/media/dvb-frontends/dib3000mc 0x367da012 dib3000mc_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/dib3000mc 0x6d1939e8 dib3000mc_i2c_enumeration +EXPORT_SYMBOL drivers/media/dvb-frontends/dib3000mc 0x95444a5b dib3000mc_pid_control +EXPORT_SYMBOL drivers/media/dvb-frontends/dib3000mc 0xd7ca8d72 dib3000mc_get_tuner_i2c_master +EXPORT_SYMBOL drivers/media/dvb-frontends/dib7000m 0x2323a6c5 dib7000m_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/dib7000m 0x247a2c6b dib7000m_pid_filter +EXPORT_SYMBOL drivers/media/dvb-frontends/dib7000m 0x84b59a01 dib7000m_get_i2c_master +EXPORT_SYMBOL drivers/media/dvb-frontends/dib7000m 0x9b041232 dib7000m_pid_filter_ctrl +EXPORT_SYMBOL drivers/media/dvb-frontends/dib7000p 0xf36c10c7 dib7000p_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/dib8000 0x9c18d40c dib8000_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/dib9000 0x01471861 dib9000_i2c_enumeration +EXPORT_SYMBOL drivers/media/dvb-frontends/dib9000 0x1bd218f5 dib9000_fw_pid_filter_ctrl +EXPORT_SYMBOL drivers/media/dvb-frontends/dib9000 0x1cb8baf5 dib9000_get_slave_frontend +EXPORT_SYMBOL drivers/media/dvb-frontends/dib9000 0x2969bff5 dib9000_set_i2c_adapter +EXPORT_SYMBOL drivers/media/dvb-frontends/dib9000 0x4d4ec724 dib9000_get_tuner_interface +EXPORT_SYMBOL drivers/media/dvb-frontends/dib9000 0x53f62f08 dib9000_fw_set_component_bus_speed +EXPORT_SYMBOL drivers/media/dvb-frontends/dib9000 0x5ee33b30 dib9000_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/dib9000 0x7aef75a3 dib9000_get_component_bus_interface +EXPORT_SYMBOL drivers/media/dvb-frontends/dib9000 0x802de703 dib9000_fw_pid_filter +EXPORT_SYMBOL drivers/media/dvb-frontends/dib9000 0x8b63e4f5 dib9000_get_i2c_master +EXPORT_SYMBOL drivers/media/dvb-frontends/dib9000 0xb19171b8 dib9000_set_slave_frontend +EXPORT_SYMBOL drivers/media/dvb-frontends/dib9000 0xcb95d5e0 dib9000_set_gpio +EXPORT_SYMBOL drivers/media/dvb-frontends/dib9000 0xf10c0033 dib9000_firmware_post_pll_init +EXPORT_SYMBOL drivers/media/dvb-frontends/dibx000_common 0x2c3bcf9c dibx000_get_i2c_adapter +EXPORT_SYMBOL drivers/media/dvb-frontends/dibx000_common 0x2ebeec97 dibx000_i2c_set_speed +EXPORT_SYMBOL drivers/media/dvb-frontends/dibx000_common 0x40d462b5 dibx000_reset_i2c_master +EXPORT_SYMBOL drivers/media/dvb-frontends/dibx000_common 0x764b003f dibx000_exit_i2c_master +EXPORT_SYMBOL drivers/media/dvb-frontends/dibx000_common 0x9b236834 dibx000_init_i2c_master +EXPORT_SYMBOL drivers/media/dvb-frontends/drx39xyj/drx39xyj 0x0f8b8584 drx39xxj_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/drxd 0x0e38e395 drxd_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/drxk 0x3c0d51a3 drxk_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/ds3000 0xf6e5974d ds3000_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/dvb-pll 0x898963fa dvb_pll_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/dvb_dummy_fe 0x1a4e82c2 dvb_dummy_fe_qam_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/dvb_dummy_fe 0x1b512a25 dvb_dummy_fe_ofdm_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/dvb_dummy_fe 0xb09f0e4d dvb_dummy_fe_qpsk_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/ec100 0x8c9386da ec100_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/helene 0xbebd3dc5 helene_attach_s +EXPORT_SYMBOL drivers/media/dvb-frontends/helene 0xecacd683 helene_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/horus3a 0xea48fcca horus3a_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/isl6405 0x288adbd6 isl6405_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/isl6421 0x75e32478 isl6421_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/isl6423 0xaa816dcd isl6423_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/itd1000 0xf4ae769b itd1000_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/ix2505v 0x14461dde ix2505v_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/l64781 0x37e8c7de l64781_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/lg2160 0x8a08e196 lg2160_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/lgdt3305 0x29919dd7 lgdt3305_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/lgdt3306a 0xd887cc33 lgdt3306a_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/lgdt330x 0xea120a1c lgdt330x_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/lgs8gl5 0x51fae77d lgs8gl5_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/lgs8gxx 0xa9db11af lgs8gxx_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/lnbh25 0x222cdff2 lnbh25_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/lnbh29 0xaaa11877 lnbh29_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/lnbp21 0xda95e3e4 lnbp21_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/lnbp21 0xe0fc9853 lnbh24_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/lnbp22 0x2e8ad9dc lnbp22_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/m88ds3103 0x4a0cf133 m88ds3103_get_agc_pwm +EXPORT_SYMBOL drivers/media/dvb-frontends/m88ds3103 0xcb012d71 m88ds3103_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/m88rs2000 0x2280af1e m88rs2000_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/mb86a16 0x1550c9b0 mb86a16_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/mb86a20s 0x5111a0d2 mb86a20s_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/mt312 0x3961d136 mt312_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/mt352 0x0e14bc61 mt352_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/nxt200x 0xd460ced5 nxt200x_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/nxt6000 0x4f7cce62 nxt6000_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/or51132 0x6b8581f7 or51132_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/or51211 0x7ff02823 or51211_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/s5h1409 0xc754f673 s5h1409_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/s5h1411 0xb2daa5c9 s5h1411_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/s5h1420 0xa7281ca8 s5h1420_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/s5h1420 0xc20bee69 s5h1420_get_tuner_i2c_adapter +EXPORT_SYMBOL drivers/media/dvb-frontends/s5h1432 0x1a8bff50 s5h1432_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/s921 0xebeb008e s921_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/si21xx 0x57faadc2 si21xx_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/sp8870 0xd1d647ff sp8870_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/sp887x 0x780e7e62 sp887x_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/stb0899 0x8b10aac7 stb0899_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/stb6000 0xac162116 stb6000_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/stb6100 0x62fb082a stb6100_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/stv0288 0x88926149 stv0288_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/stv0297 0x01cf8f3b stv0297_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/stv0299 0xff697d50 stv0299_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/stv0367 0x480b9df4 stv0367ddb_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/stv0367 0x766cb625 stv0367cab_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/stv0367 0xaeec47b6 stv0367ter_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/stv0900 0x92c595bc stv0900_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/stv090x 0xb1d2ccea stv090x_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/stv6110 0x0a71749d stv6110_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/stv6110x 0x7687d927 stv6110x_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/tda10021 0xa60ccce2 tda10021_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/tda10023 0x08f21b4e tda10023_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/tda10048 0x502bd3cf tda10048_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/tda1004x 0x3c6adfb1 tda10045_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/tda1004x 0xf66efb65 tda10046_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/tda10086 0x8b7b4c6b tda10086_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/tda665x 0x7fe07367 tda665x_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/tda8083 0x8f8fa48b tda8083_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/tda8261 0xf99e769b tda8261_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/tda826x 0x3b012ab6 tda826x_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/ts2020 0x8fdf8b79 ts2020_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/tua6100 0x90d7f0d7 tua6100_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/ves1820 0xc304c758 ves1820_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/ves1x93 0x1a0a3c4b ves1x93_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/zd1301_demod 0x3b227cda zd1301_demod_get_i2c_adapter +EXPORT_SYMBOL drivers/media/dvb-frontends/zd1301_demod 0x844cbc4f zd1301_demod_get_dvb_frontend +EXPORT_SYMBOL drivers/media/dvb-frontends/zl10036 0x70547bcf zl10036_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/zl10039 0x0e261ced zl10039_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/zl10353 0x8f359784 zl10353_attach +EXPORT_SYMBOL drivers/media/pci/b2c2/b2c2-flexcop-pci 0x32b9da60 flexcop_dma_config_timer +EXPORT_SYMBOL drivers/media/pci/b2c2/b2c2-flexcop-pci 0x3a14d9f1 flexcop_dma_control_timer_irq +EXPORT_SYMBOL drivers/media/pci/b2c2/b2c2-flexcop-pci 0x834f5a60 flexcop_dma_allocate +EXPORT_SYMBOL drivers/media/pci/b2c2/b2c2-flexcop-pci 0x9cd7cd9e flexcop_dma_free +EXPORT_SYMBOL drivers/media/pci/b2c2/b2c2-flexcop-pci 0xbb882bc1 flexcop_dma_control_size_irq +EXPORT_SYMBOL drivers/media/pci/b2c2/b2c2-flexcop-pci 0xcd2c1ded flexcop_dma_config +EXPORT_SYMBOL drivers/media/pci/b2c2/b2c2-flexcop-pci 0xf39c6925 flexcop_dma_xfer_control +EXPORT_SYMBOL drivers/media/pci/bt8xx/bt878 0x031c8410 bt878_stop +EXPORT_SYMBOL drivers/media/pci/bt8xx/bt878 0x1c908716 bt878 +EXPORT_SYMBOL drivers/media/pci/bt8xx/bt878 0x4d6d09ab bt878_device_control +EXPORT_SYMBOL drivers/media/pci/bt8xx/bt878 0x7933f20a bt878_start +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 0x5aabcf97 bttv_get_pcidev +EXPORT_SYMBOL drivers/media/pci/bt8xx/bttv 0x8ecf4acc bttv_write_gpio +EXPORT_SYMBOL drivers/media/pci/bt8xx/bttv 0x942b8773 bttv_sub_unregister +EXPORT_SYMBOL drivers/media/pci/bt8xx/bttv 0xbcf2d2fb bttv_read_gpio +EXPORT_SYMBOL drivers/media/pci/bt8xx/bttv 0xd36b58b6 bttv_sub_register +EXPORT_SYMBOL drivers/media/pci/bt8xx/dst 0x3cc2d104 dst_comm_init +EXPORT_SYMBOL drivers/media/pci/bt8xx/dst 0x3fc5ba76 dst_error_recovery +EXPORT_SYMBOL drivers/media/pci/bt8xx/dst 0x43a983fd dst_check_sum +EXPORT_SYMBOL drivers/media/pci/bt8xx/dst 0x4f492625 write_dst +EXPORT_SYMBOL drivers/media/pci/bt8xx/dst 0x560b816c rdc_reset_state +EXPORT_SYMBOL drivers/media/pci/bt8xx/dst 0x5f91eba0 dst_wait_dst_ready +EXPORT_SYMBOL drivers/media/pci/bt8xx/dst 0x8a98416a dst_attach +EXPORT_SYMBOL drivers/media/pci/bt8xx/dst 0x9357b9de read_dst +EXPORT_SYMBOL drivers/media/pci/bt8xx/dst 0x9a3027f6 dst_error_bailout +EXPORT_SYMBOL drivers/media/pci/bt8xx/dst 0xe104956d dst_pio_disable +EXPORT_SYMBOL drivers/media/pci/bt8xx/dst_ca 0x4c34f926 dst_ca_attach +EXPORT_SYMBOL drivers/media/pci/cx18/cx18 0x116c0e6d cx18_start_v4l2_encode_stream +EXPORT_SYMBOL drivers/media/pci/cx18/cx18 0x2cdea06d cx18_reset_ir_gpio +EXPORT_SYMBOL drivers/media/pci/cx18/cx18 0x485cf9e7 cx18_stop_v4l2_encode_stream +EXPORT_SYMBOL drivers/media/pci/cx18/cx18 0x7c5e7f78 cx18_ext_init +EXPORT_SYMBOL drivers/media/pci/cx18/cx18 0xabf56477 cx18_release_stream +EXPORT_SYMBOL drivers/media/pci/cx18/cx18 0xe9b5cfc3 cx18_claim_stream +EXPORT_SYMBOL drivers/media/pci/cx23885/altera-ci 0x59a5ad6d altera_ci_init +EXPORT_SYMBOL drivers/media/pci/cx23885/altera-ci 0x6ff7510d altera_ci_tuner_reset +EXPORT_SYMBOL drivers/media/pci/cx23885/altera-ci 0xdb3faf38 altera_ci_release +EXPORT_SYMBOL drivers/media/pci/cx23885/altera-ci 0xe66b9812 altera_ci_irq +EXPORT_SYMBOL drivers/media/pci/cx25821/cx25821 0x17d28abf cx25821_riscmem_alloc +EXPORT_SYMBOL drivers/media/pci/cx25821/cx25821 0x36e9f1ca cx25821_sram_channel_setup_audio +EXPORT_SYMBOL drivers/media/pci/cx25821/cx25821 0x42dcccd3 cx25821_dev_get +EXPORT_SYMBOL drivers/media/pci/cx25821/cx25821 0x44b517f5 cx25821_print_irqbits +EXPORT_SYMBOL drivers/media/pci/cx25821/cx25821 0x4817931e cx25821_sram_channel_dump_audio +EXPORT_SYMBOL drivers/media/pci/cx25821/cx25821 0x5c63c1ce cx25821_dev_unregister +EXPORT_SYMBOL drivers/media/pci/cx25821/cx25821 0xa14c4f74 cx25821_risc_databuffer_audio +EXPORT_SYMBOL drivers/media/pci/cx25821/cx25821 0xcb778f7f cx25821_set_gpiopin_direction +EXPORT_SYMBOL drivers/media/pci/cx25821/cx25821 0xe9050411 cx25821_sram_channels +EXPORT_SYMBOL drivers/media/pci/cx88/cx88-vp3054-i2c 0x38b22180 vp3054_i2c_probe +EXPORT_SYMBOL drivers/media/pci/cx88/cx88-vp3054-i2c 0xdc6c4915 vp3054_i2c_remove +EXPORT_SYMBOL drivers/media/pci/cx88/cx8800 0x1b5ef819 cx88_enum_input +EXPORT_SYMBOL drivers/media/pci/cx88/cx8800 0x297d61c2 cx88_querycap +EXPORT_SYMBOL drivers/media/pci/cx88/cx8800 0x7141bf9d cx88_set_freq +EXPORT_SYMBOL drivers/media/pci/cx88/cx8800 0x882ad062 cx88_video_mux +EXPORT_SYMBOL drivers/media/pci/cx88/cx8802 0x1cc5a023 cx8802_unregister_driver +EXPORT_SYMBOL drivers/media/pci/cx88/cx8802 0x4ad2fe30 cx8802_get_driver +EXPORT_SYMBOL drivers/media/pci/cx88/cx8802 0x59f85d26 cx8802_cancel_buffers +EXPORT_SYMBOL drivers/media/pci/cx88/cx8802 0x6b2af9f7 cx8802_buf_queue +EXPORT_SYMBOL drivers/media/pci/cx88/cx8802 0x802778e3 cx8802_buf_prepare +EXPORT_SYMBOL drivers/media/pci/cx88/cx8802 0xaadce81c cx8802_start_dma +EXPORT_SYMBOL drivers/media/pci/cx88/cx8802 0xc439e853 cx8802_register_driver +EXPORT_SYMBOL drivers/media/pci/cx88/cx88xx 0x1dfcda57 cx88_dsp_detect_stereo_sap +EXPORT_SYMBOL drivers/media/pci/cx88/cx88xx 0x3b9f2f49 cx88_set_tvaudio +EXPORT_SYMBOL drivers/media/pci/cx88/cx88xx 0x3f7f2910 cx88_risc_buffer +EXPORT_SYMBOL drivers/media/pci/cx88/cx88xx 0x447ecce0 cx88_newstation +EXPORT_SYMBOL drivers/media/pci/cx88/cx88xx 0x5211e6d3 cx88_reset +EXPORT_SYMBOL drivers/media/pci/cx88/cx88xx 0x54bccb8d cx88_get_stereo +EXPORT_SYMBOL drivers/media/pci/cx88/cx88xx 0x57be5457 cx88_sram_channel_setup +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 0x77bc1e66 cx88_vdev_init +EXPORT_SYMBOL drivers/media/pci/cx88/cx88xx 0x8d88137a cx88_sram_channels +EXPORT_SYMBOL drivers/media/pci/cx88/cx88xx 0x8e839a5d cx88_set_tvnorm +EXPORT_SYMBOL drivers/media/pci/cx88/cx88xx 0x904b8696 cx88_audio_thread +EXPORT_SYMBOL drivers/media/pci/cx88/cx88xx 0x90aa016e cx88_set_stereo +EXPORT_SYMBOL drivers/media/pci/cx88/cx88xx 0x99ab4593 cx88_core_get +EXPORT_SYMBOL drivers/media/pci/cx88/cx88xx 0x9a4be027 cx88_shutdown +EXPORT_SYMBOL drivers/media/pci/cx88/cx88xx 0x9d121170 cx88_core_put +EXPORT_SYMBOL drivers/media/pci/cx88/cx88xx 0xb376ead8 cx88_risc_databuffer +EXPORT_SYMBOL drivers/media/pci/cx88/cx88xx 0xca45a281 cx88_ir_start +EXPORT_SYMBOL drivers/media/pci/cx88/cx88xx 0xcaeedc42 cx88_ir_stop +EXPORT_SYMBOL drivers/media/pci/cx88/cx88xx 0xe89da875 cx88_set_scale +EXPORT_SYMBOL drivers/media/pci/cx88/cx88xx 0xeb430a01 cx88_core_irq +EXPORT_SYMBOL drivers/media/pci/cx88/cx88xx 0xec37f0a4 cx88_sram_channel_dump +EXPORT_SYMBOL drivers/media/pci/cx88/cx88xx 0xfdb5312e cx88_wakeup +EXPORT_SYMBOL drivers/media/pci/ddbridge/ddbridge-dummy-fe 0x09701f7f ddbridge_dummy_fe_qam_attach +EXPORT_SYMBOL drivers/media/pci/ivtv/ivtv 0x14f67530 ivtv_debug +EXPORT_SYMBOL drivers/media/pci/ivtv/ivtv 0x1efdf8ee ivtv_vapi_result +EXPORT_SYMBOL drivers/media/pci/ivtv/ivtv 0x2223d2e6 ivtv_vapi +EXPORT_SYMBOL drivers/media/pci/ivtv/ivtv 0x24a0bc26 ivtv_firmware_check +EXPORT_SYMBOL drivers/media/pci/ivtv/ivtv 0x56dcefab ivtv_clear_irq_mask +EXPORT_SYMBOL drivers/media/pci/ivtv/ivtv 0x595c6a08 ivtv_claim_stream +EXPORT_SYMBOL drivers/media/pci/ivtv/ivtv 0x6a1c2e89 ivtv_set_irq_mask +EXPORT_SYMBOL drivers/media/pci/ivtv/ivtv 0x742372cb ivtv_udma_alloc +EXPORT_SYMBOL drivers/media/pci/ivtv/ivtv 0x75366b81 ivtv_ext_init +EXPORT_SYMBOL drivers/media/pci/ivtv/ivtv 0xab3bd391 ivtv_stop_v4l2_encode_stream +EXPORT_SYMBOL drivers/media/pci/ivtv/ivtv 0xb8843026 ivtv_release_stream +EXPORT_SYMBOL drivers/media/pci/ivtv/ivtv 0xc2443f53 ivtv_udma_unmap +EXPORT_SYMBOL drivers/media/pci/ivtv/ivtv 0xcf909cfb ivtv_api +EXPORT_SYMBOL drivers/media/pci/ivtv/ivtv 0xd32a3f9d ivtv_udma_prepare +EXPORT_SYMBOL drivers/media/pci/ivtv/ivtv 0xd969387e ivtv_start_v4l2_encode_stream +EXPORT_SYMBOL drivers/media/pci/ivtv/ivtv 0xdacd7abd ivtv_reset_ir_gpio +EXPORT_SYMBOL drivers/media/pci/ivtv/ivtv 0xede404eb ivtv_init_on_first_open +EXPORT_SYMBOL drivers/media/pci/ivtv/ivtv 0xf47b8c32 ivtv_udma_setup +EXPORT_SYMBOL drivers/media/pci/saa7134/saa7134 0x00016688 saa7134_dmasound_exit +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 0x15fd138b saa7134_tvaudio_setmute +EXPORT_SYMBOL drivers/media/pci/saa7134/saa7134 0x30adaa64 saa7134_pgtable_build +EXPORT_SYMBOL drivers/media/pci/saa7134/saa7134 0x32427cf5 saa7134_set_dmabits +EXPORT_SYMBOL drivers/media/pci/saa7134/saa7134 0x730c4be3 saa7134_boards +EXPORT_SYMBOL drivers/media/pci/saa7134/saa7134 0x7b71ba5d saa7134_dmasound_init +EXPORT_SYMBOL drivers/media/pci/saa7134/saa7134 0xaa43fa5a saa7134_set_gpio +EXPORT_SYMBOL drivers/media/pci/saa7134/saa7134 0xb4916b35 saa7134_pgtable_free +EXPORT_SYMBOL drivers/media/pci/saa7134/saa7134 0xc6e9fe4c saa7134_devlist_lock +EXPORT_SYMBOL drivers/media/pci/saa7134/saa7134 0xcc280254 saa_dsp_writel +EXPORT_SYMBOL drivers/media/pci/saa7134/saa7134 0xd0497029 saa7134_ts_register +EXPORT_SYMBOL drivers/media/pci/saa7134/saa7134 0xf6ceb571 saa7134_pgtable_alloc +EXPORT_SYMBOL drivers/media/pci/saa7134/saa7134 0xffbcb206 saa7134_ts_unregister +EXPORT_SYMBOL drivers/media/pci/ttpci/ttpci-eeprom 0x693e74ba ttpci_eeprom_decode_mac +EXPORT_SYMBOL drivers/media/pci/ttpci/ttpci-eeprom 0x87ea844c ttpci_eeprom_parse_mac +EXPORT_SYMBOL drivers/media/platform/ti-vpe/ti-csc 0x177ae363 csc_set_coeff_bypass +EXPORT_SYMBOL drivers/media/platform/ti-vpe/ti-csc 0x209bff75 csc_dump_regs +EXPORT_SYMBOL drivers/media/platform/ti-vpe/ti-csc 0x2d78b21f csc_set_coeff +EXPORT_SYMBOL drivers/media/platform/ti-vpe/ti-csc 0xc89d086f csc_create +EXPORT_SYMBOL drivers/media/platform/ti-vpe/ti-sc 0x33464675 sc_set_hs_coeffs +EXPORT_SYMBOL drivers/media/platform/ti-vpe/ti-sc 0x510cb459 sc_set_vs_coeffs +EXPORT_SYMBOL drivers/media/platform/ti-vpe/ti-sc 0x74aa4b26 sc_dump_regs +EXPORT_SYMBOL drivers/media/platform/ti-vpe/ti-sc 0x796beba0 sc_create +EXPORT_SYMBOL drivers/media/platform/ti-vpe/ti-sc 0xe77dc9ab sc_config_scaler +EXPORT_SYMBOL drivers/media/platform/ti-vpe/ti-vpdma 0x07464bcf vpdma_add_cfd_block +EXPORT_SYMBOL drivers/media/platform/ti-vpe/ti-vpdma 0x0ca990c7 vpdma_unmap_desc_buf +EXPORT_SYMBOL drivers/media/platform/ti-vpe/ti-vpdma 0x190b742d vpdma_create +EXPORT_SYMBOL drivers/media/platform/ti-vpe/ti-vpdma 0x1e26321d vpdma_misc_fmts +EXPORT_SYMBOL drivers/media/platform/ti-vpe/ti-vpdma 0x1ee5d41c vpdma_add_in_dtd +EXPORT_SYMBOL drivers/media/platform/ti-vpe/ti-vpdma 0x26314f8c vpdma_set_line_mode +EXPORT_SYMBOL drivers/media/platform/ti-vpe/ti-vpdma 0x2b08bd6e vpdma_hwlist_get_priv +EXPORT_SYMBOL drivers/media/platform/ti-vpe/ti-vpdma 0x3269c1e2 vpdma_add_sync_on_channel_ctd +EXPORT_SYMBOL drivers/media/platform/ti-vpe/ti-vpdma 0x3b3f4afb vpdma_create_desc_list +EXPORT_SYMBOL drivers/media/platform/ti-vpe/ti-vpdma 0x4485638a vpdma_set_bg_color +EXPORT_SYMBOL drivers/media/platform/ti-vpe/ti-vpdma 0x49293b26 vpdma_yuv_fmts +EXPORT_SYMBOL drivers/media/platform/ti-vpe/ti-vpdma 0x50ec40af vpdma_rgb_fmts +EXPORT_SYMBOL drivers/media/platform/ti-vpe/ti-vpdma 0x5b1b9450 vpdma_list_busy +EXPORT_SYMBOL drivers/media/platform/ti-vpe/ti-vpdma 0x60708dc6 vpdma_raw_fmts +EXPORT_SYMBOL drivers/media/platform/ti-vpe/ti-vpdma 0x614ac2d9 vpdma_clear_list_stat +EXPORT_SYMBOL drivers/media/platform/ti-vpe/ti-vpdma 0x6724e391 vpdma_enable_list_complete_irq +EXPORT_SYMBOL drivers/media/platform/ti-vpe/ti-vpdma 0x6ea95e2f vpdma_free_desc_buf +EXPORT_SYMBOL drivers/media/platform/ti-vpe/ti-vpdma 0x73ae3d42 vpdma_add_cfd_adb +EXPORT_SYMBOL drivers/media/platform/ti-vpe/ti-vpdma 0x7965a7d7 vpdma_set_frame_start_event +EXPORT_SYMBOL drivers/media/platform/ti-vpe/ti-vpdma 0x872ab065 vpdma_get_list_mask +EXPORT_SYMBOL drivers/media/platform/ti-vpe/ti-vpdma 0x88847683 vpdma_hwlist_alloc +EXPORT_SYMBOL drivers/media/platform/ti-vpe/ti-vpdma 0x92417974 vpdma_map_desc_buf +EXPORT_SYMBOL drivers/media/platform/ti-vpe/ti-vpdma 0x9de56bd8 vpdma_add_abort_channel_ctd +EXPORT_SYMBOL drivers/media/platform/ti-vpe/ti-vpdma 0x9ece601a vpdma_free_desc_list +EXPORT_SYMBOL drivers/media/platform/ti-vpe/ti-vpdma 0xabdc201c vpdma_submit_descs +EXPORT_SYMBOL drivers/media/platform/ti-vpe/ti-vpdma 0xac07769e vpdma_get_list_stat +EXPORT_SYMBOL drivers/media/platform/ti-vpe/ti-vpdma 0xac6b0c26 vpdma_set_max_size +EXPORT_SYMBOL drivers/media/platform/ti-vpe/ti-vpdma 0xc201cf71 vpdma_dump_regs +EXPORT_SYMBOL drivers/media/platform/ti-vpe/ti-vpdma 0xcc78bec4 vpdma_rawchan_add_out_dtd +EXPORT_SYMBOL drivers/media/platform/ti-vpe/ti-vpdma 0xd0aeae6a vpdma_add_out_dtd +EXPORT_SYMBOL drivers/media/platform/ti-vpe/ti-vpdma 0xebbec4fb vpdma_alloc_desc_buf +EXPORT_SYMBOL drivers/media/platform/ti-vpe/ti-vpdma 0xf4fe0cda vpdma_list_cleanup +EXPORT_SYMBOL drivers/media/platform/ti-vpe/ti-vpdma 0xf5c8cf87 vpdma_update_dma_addr +EXPORT_SYMBOL drivers/media/platform/ti-vpe/ti-vpdma 0xf77aa29b vpdma_hwlist_release +EXPORT_SYMBOL drivers/media/platform/ti-vpe/ti-vpdma 0xf82483c6 vpdma_reset_desc_list +EXPORT_SYMBOL drivers/media/radio/tea575x 0x40e8e279 snd_tea575x_enum_freq_bands +EXPORT_SYMBOL drivers/media/radio/tea575x 0x50750dcc snd_tea575x_exit +EXPORT_SYMBOL drivers/media/radio/tea575x 0x79525f0e snd_tea575x_g_tuner +EXPORT_SYMBOL drivers/media/radio/tea575x 0x84156bb4 snd_tea575x_hw_init +EXPORT_SYMBOL drivers/media/radio/tea575x 0x8d570796 snd_tea575x_set_freq +EXPORT_SYMBOL drivers/media/radio/tea575x 0x9230910f snd_tea575x_s_hw_freq_seek +EXPORT_SYMBOL drivers/media/radio/tea575x 0xb84ed756 snd_tea575x_init +EXPORT_SYMBOL drivers/media/rc/rc-core 0x0903ef0b ir_raw_handler_unregister +EXPORT_SYMBOL drivers/media/rc/rc-core 0x2aa3f8f4 ir_raw_handler_register +EXPORT_SYMBOL drivers/media/rc/rc-core 0x2ad91f6e ir_raw_gen_pl +EXPORT_SYMBOL drivers/media/rc/rc-core 0x3131b773 ir_raw_encode_scancode +EXPORT_SYMBOL drivers/media/rc/rc-core 0x4725eda1 ir_raw_encode_carrier +EXPORT_SYMBOL drivers/media/rc/rc-core 0x7cf52901 ir_raw_gen_manchester +EXPORT_SYMBOL drivers/media/rc/rc-core 0x9e12e343 ir_raw_gen_pd +EXPORT_SYMBOL drivers/media/tuners/fc0011 0xe9169453 fc0011_attach +EXPORT_SYMBOL drivers/media/tuners/fc0012 0xc16803ea fc0012_attach +EXPORT_SYMBOL drivers/media/tuners/fc0013 0x14837aeb fc0013_rc_cal_reset +EXPORT_SYMBOL drivers/media/tuners/fc0013 0x51be3327 fc0013_rc_cal_add +EXPORT_SYMBOL drivers/media/tuners/fc0013 0xc74ee498 fc0013_attach +EXPORT_SYMBOL drivers/media/tuners/max2165 0xf2faffec max2165_attach +EXPORT_SYMBOL drivers/media/tuners/mc44s803 0xf8784733 mc44s803_attach +EXPORT_SYMBOL drivers/media/tuners/mt2060 0xff375de5 mt2060_attach +EXPORT_SYMBOL drivers/media/tuners/mt2131 0xb239bad1 mt2131_attach +EXPORT_SYMBOL drivers/media/tuners/mt2266 0xe554e11d mt2266_attach +EXPORT_SYMBOL drivers/media/tuners/mxl5005s 0x8adf95f8 mxl5005s_attach +EXPORT_SYMBOL drivers/media/tuners/qt1010 0xaf09c234 qt1010_attach +EXPORT_SYMBOL drivers/media/tuners/tda18218 0x05ad608b tda18218_attach +EXPORT_SYMBOL drivers/media/tuners/tuner-types 0x4c48939e tuners +EXPORT_SYMBOL drivers/media/tuners/tuner-types 0xc2821775 tuner_count +EXPORT_SYMBOL drivers/media/tuners/tuner-xc2028 0x51f6c1c7 xc2028_attach +EXPORT_SYMBOL drivers/media/tuners/xc4000 0x3e5b53db xc4000_attach +EXPORT_SYMBOL drivers/media/tuners/xc5000 0x0e97b073 xc5000_attach +EXPORT_SYMBOL drivers/media/usb/cx231xx/cx231xx 0x220278fc cx231xx_register_extension +EXPORT_SYMBOL drivers/media/usb/cx231xx/cx231xx 0xe03ff012 cx231xx_unregister_extension +EXPORT_SYMBOL drivers/media/usb/dvb-usb-v2/dvb_usb_v2 0x1890a9a5 dvb_usbv2_generic_write +EXPORT_SYMBOL drivers/media/usb/dvb-usb-v2/dvb_usb_v2 0x34927e45 dvb_usbv2_suspend +EXPORT_SYMBOL drivers/media/usb/dvb-usb-v2/dvb_usb_v2 0x5bf3cd11 dvb_usbv2_disconnect +EXPORT_SYMBOL drivers/media/usb/dvb-usb-v2/dvb_usb_v2 0x5fc07bbc dvb_usbv2_generic_write_locked +EXPORT_SYMBOL drivers/media/usb/dvb-usb-v2/dvb_usb_v2 0x94d3ce68 dvb_usbv2_resume +EXPORT_SYMBOL drivers/media/usb/dvb-usb-v2/dvb_usb_v2 0xafdd77a6 dvb_usbv2_reset_resume +EXPORT_SYMBOL drivers/media/usb/dvb-usb-v2/dvb_usb_v2 0xb7279c88 dvb_usbv2_probe +EXPORT_SYMBOL drivers/media/usb/dvb-usb-v2/dvb_usb_v2 0xbe87e866 dvb_usbv2_generic_rw_locked +EXPORT_SYMBOL drivers/media/usb/dvb-usb-v2/dvb_usb_v2 0xfc017d0f dvb_usbv2_generic_rw +EXPORT_SYMBOL drivers/media/usb/dvb-usb/dvb-usb 0x065b0f79 dvb_usb_device_init +EXPORT_SYMBOL drivers/media/usb/dvb-usb/dvb-usb 0x65d933e3 dvb_usb_get_hexline +EXPORT_SYMBOL drivers/media/usb/dvb-usb/dvb-usb 0x6fd23cb7 dvb_usb_nec_rc_key_to_event +EXPORT_SYMBOL drivers/media/usb/dvb-usb/dvb-usb 0xaa72e651 dvb_usb_generic_write +EXPORT_SYMBOL drivers/media/usb/dvb-usb/dvb-usb 0xc218dd1e dvb_usb_generic_rw +EXPORT_SYMBOL drivers/media/usb/dvb-usb/dvb-usb 0xde243274 usb_cypress_load_firmware +EXPORT_SYMBOL drivers/media/usb/dvb-usb/dvb-usb 0xe742e278 dvb_usb_device_exit +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 0x7450e513 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 0x01371864 dibusb_read_eeprom_byte +EXPORT_SYMBOL drivers/media/usb/dvb-usb/dvb-usb-dibusb-common 0x33972d39 dibusb2_0_power_ctrl +EXPORT_SYMBOL drivers/media/usb/dvb-usb/dvb-usb-dibusb-common 0x38fa723c dibusb_pid_filter_ctrl +EXPORT_SYMBOL drivers/media/usb/dvb-usb/dvb-usb-dibusb-common 0x7bd70880 dibusb_pid_filter +EXPORT_SYMBOL drivers/media/usb/dvb-usb/dvb-usb-dibusb-common 0x7cbfeb91 dibusb_power_ctrl +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 0x94a275cb dibusb2_0_streaming_ctrl +EXPORT_SYMBOL drivers/media/usb/dvb-usb/dvb-usb-dibusb-common 0x9dedb1e3 dibusb_rc_query +EXPORT_SYMBOL drivers/media/usb/dvb-usb/dvb-usb-dibusb-common 0xc66c54d4 dibusb_streaming_ctrl +EXPORT_SYMBOL drivers/media/usb/dvb-usb/dvb-usb-dibusb-common 0xed026e72 dibusb_i2c_algo +EXPORT_SYMBOL drivers/media/usb/dvb-usb/dvb-usb-dibusb-mc-common 0x2147af67 dibusb_dib3000mc_frontend_attach +EXPORT_SYMBOL drivers/media/usb/dvb-usb/dvb-usb-dibusb-mc-common 0x79c19b86 dibusb_dib3000mc_tuner_attach +EXPORT_SYMBOL drivers/media/usb/em28xx/em28xx 0x2515667b em28xx_unregister_extension +EXPORT_SYMBOL drivers/media/usb/em28xx/em28xx 0x690b96f4 em28xx_register_extension +EXPORT_SYMBOL drivers/media/usb/go7007/go7007 0x19e45720 go7007_read_interrupt +EXPORT_SYMBOL drivers/media/usb/go7007/go7007 0x3ab027a5 go7007_boot_encoder +EXPORT_SYMBOL drivers/media/usb/go7007/go7007 0x48fc4059 go7007_read_addr +EXPORT_SYMBOL drivers/media/usb/go7007/go7007 0x6cecb554 go7007_snd_remove +EXPORT_SYMBOL drivers/media/usb/go7007/go7007 0x8f108f06 go7007_update_board +EXPORT_SYMBOL drivers/media/usb/go7007/go7007 0xa27e2540 go7007_parse_video_stream +EXPORT_SYMBOL drivers/media/usb/go7007/go7007 0xb1aef526 go7007_alloc +EXPORT_SYMBOL drivers/media/usb/go7007/go7007 0xc74478ac go7007_register_encoder +EXPORT_SYMBOL drivers/media/usb/go7007/go7007 0xf6afbc3c go7007_snd_init +EXPORT_SYMBOL drivers/media/usb/gspca/gspca_main 0x35c5762d gspca_resume +EXPORT_SYMBOL drivers/media/usb/gspca/gspca_main 0x39665092 gspca_suspend +EXPORT_SYMBOL drivers/media/usb/gspca/gspca_main 0x9670af2c gspca_debug +EXPORT_SYMBOL drivers/media/usb/gspca/gspca_main 0x9d18e977 gspca_coarse_grained_expo_autogain +EXPORT_SYMBOL drivers/media/usb/gspca/gspca_main 0xc0254afc gspca_disconnect +EXPORT_SYMBOL drivers/media/usb/gspca/gspca_main 0xcbc53b9c gspca_dev_probe +EXPORT_SYMBOL drivers/media/usb/gspca/gspca_main 0xcdc11195 gspca_expo_autogain +EXPORT_SYMBOL drivers/media/usb/gspca/gspca_main 0xec6f1b88 gspca_frame_add +EXPORT_SYMBOL drivers/media/usb/gspca/gspca_main 0xf11e2a0e gspca_dev_probe2 +EXPORT_SYMBOL drivers/media/usb/tm6000/tm6000 0x409a7c15 tm6000_init_digital_mode +EXPORT_SYMBOL drivers/media/usb/tm6000/tm6000 0x8f00cbba tm6000_register_extension +EXPORT_SYMBOL drivers/media/usb/tm6000/tm6000 0xfac1ca7c tm6000_unregister_extension +EXPORT_SYMBOL drivers/media/usb/ttusb-dec/ttusbdecfe 0x089dedaa ttusbdecfe_dvbt_attach +EXPORT_SYMBOL drivers/media/usb/ttusb-dec/ttusbdecfe 0x235aec60 ttusbdecfe_dvbs_attach +EXPORT_SYMBOL drivers/media/v4l2-core/v4l2-mem2mem 0x459e133f v4l2_m2m_get_curr_priv +EXPORT_SYMBOL drivers/media/v4l2-core/v4l2-mem2mem 0x568fa546 v4l2_m2m_buf_done_and_job_finish +EXPORT_SYMBOL drivers/media/v4l2-core/v4l2-mem2mem 0x7f64b661 v4l2_m2m_job_finish +EXPORT_SYMBOL drivers/media/v4l2-core/v4l2-mem2mem 0x94a18006 v4l2_m2m_get_vq +EXPORT_SYMBOL drivers/media/v4l2-core/v4l2-mem2mem 0x9752c5b0 v4l2_m2m_mmap +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x03450193 v4l2_ctrl_notify +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x056a1eec __v4l2_clk_register_fixed +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x0614dd5a v4l2_video_std_frame_period +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x062454c9 v4l2_ctrl_cluster +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x082737e8 v4l2_ctrl_merge +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x08ca2030 v4l2_ctrl_add_handler +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x0f8deaf6 v4l2_ctrl_subdev_subscribe_event +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x10890b93 v4l2_ctrl_log_status +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x11510a63 v4l2_async_unregister_subdev +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x123959a1 v4l2_type_names +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x1337af09 __video_register_device +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x16244fe5 v4l2_prio_check +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x19e73129 v4l2_ctrl_new_custom +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x2342f1ae v4l2_prio_open +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x25655a5c v4l2_subdev_init +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x28b12cc9 v4l2_format_info +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x2b513fde v4l2_ctrl_handler_setup +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x2e1a9bac __v4l2_ctrl_modify_range +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x307bfe97 v4l2_querymenu +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x315de2cf v4l2_ctrl_get_menu +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x31da7945 video_ioctl2 +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x32cacfd9 v4l2_clk_disable +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x32d43420 v4l2_ctrl_get_name +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x3a2ac86d v4l2_ctrl_new_std_menu_items +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x3adbd595 v4l2_field_names +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x3b3f7ba3 v4l2_ctrl_find +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x3bdd0f94 v4l2_prio_change +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x44171216 v4l2_s_ctrl +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x46560fd4 v4l2_async_subdev_notifier_register +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x49d9529f v4l2_query_ext_ctrl +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x4aa440b0 v4l2_ctrl_new_fwnode_properties +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x4d4913db v4l2_g_ctrl +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x4f2e5535 v4l2_ctrl_auto_cluster +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x525eeb79 v4l2_ctrl_request_setup +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x5bb086bf v4l2_async_notifier_init +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x5c89e2f0 v4l2_ctrl_poll +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x64ee7144 video_device_release +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x658d91e3 v4l2_ctrl_handler_log_status +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x674c52f9 video_unregister_device +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x6be42d76 v4l2_ctrl_handler_free +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x704b4239 v4l2_clk_put +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x72c75d7e v4l2_ctrl_g_ctrl +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x76930711 v4l2_ctrl_new_std_menu +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x76c9a046 video_device_alloc +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x79e75791 v4l2_clk_register +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x7b805161 v4l2_ctrl_sub_ev_ops +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x7ecd5161 __v4l2_ctrl_s_ctrl +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x805d315d v4l2_try_ext_ctrls +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x806b8181 video_device_release_empty +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x8106095a v4l2_prio_max +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x8280534c v4l2_ctrl_fill +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x84dded6c v4l2_s_ext_ctrls +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x89e3897d v4l2_ctrl_query_fill +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x93a1e065 v4l2_clk_unregister_fixed +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xa8972609 v4l2_ctrl_handler_init_class +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xab35da4c v4l2_subdev_call_wrappers +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xac0231c2 v4l2_ctrl_new_std +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xac0bd0e7 v4l2_clk_unregister +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xac754f5c v4l2_async_notifier_unregister +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xb5bac5f7 __v4l2_ctrl_s_ctrl_compound +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xb77b0159 v4l2_prio_init +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xbc391f48 v4l2_async_notifier_register +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xbc5671dc v4l_printk_ioctl +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xbe4648f6 __v4l2_ctrl_s_ctrl_string +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xc41ddff9 v4l2_clk_get_rate +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xca1b061f v4l2_async_register_subdev +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xcc0736a5 v4l2_ctrl_activate +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xcda04a5b v4l2_prio_close +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xceb565fe v4l2_clk_enable +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xd16d9c01 v4l2_ctrl_get_int_menu +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xd2abe922 v4l2_queryctrl +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xd305219d v4l2_ctrl_new_std_compound +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xd3f29748 v4l2_ctrl_subdev_log_status +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xd4e54f99 v4l2_ctrl_request_complete +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xd55407a9 video_devdata +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xd8558d5a v4l2_clk_get +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xd871bc6e v4l2_ctrl_radio_filter +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xd9a6ea4e v4l2_ctrl_subscribe_event +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xdbe04703 v4l2_ctrl_g_ctrl_int64 +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xe2af4b3d v4l2_g_ext_ctrls +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xe2b92059 v4l2_video_std_construct +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xe929470c v4l2_ctrl_new_int_menu +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xecab9699 __v4l2_ctrl_s_ctrl_int64 +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xf2aa5708 __v4l2_ctrl_grab +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 0xf9cbefc4 v4l2_clk_set_rate +EXPORT_SYMBOL drivers/memstick/core/memstick 0x0c12780f memstick_resume_host +EXPORT_SYMBOL drivers/memstick/core/memstick 0x1ca1da19 memstick_unregister_driver +EXPORT_SYMBOL drivers/memstick/core/memstick 0x301ce040 memstick_register_driver +EXPORT_SYMBOL drivers/memstick/core/memstick 0x36e907b2 memstick_alloc_host +EXPORT_SYMBOL drivers/memstick/core/memstick 0x400c06f9 memstick_suspend_host +EXPORT_SYMBOL drivers/memstick/core/memstick 0x4a4e5778 memstick_init_req_sg +EXPORT_SYMBOL drivers/memstick/core/memstick 0x4ce2c6b8 memstick_set_rw_addr +EXPORT_SYMBOL drivers/memstick/core/memstick 0x51cb13f8 memstick_init_req +EXPORT_SYMBOL drivers/memstick/core/memstick 0x8c5e4e09 memstick_free_host +EXPORT_SYMBOL drivers/memstick/core/memstick 0x93ab621d memstick_detect_change +EXPORT_SYMBOL drivers/memstick/core/memstick 0xaea73a39 memstick_add_host +EXPORT_SYMBOL drivers/memstick/core/memstick 0xb90cfbaf memstick_remove_host +EXPORT_SYMBOL drivers/memstick/core/memstick 0xd6717ff8 memstick_next_req +EXPORT_SYMBOL drivers/memstick/core/memstick 0xe7728535 memstick_new_req +EXPORT_SYMBOL drivers/memstick/host/r592 0x52f1b23b memstick_debug_get_tpc_name +EXPORT_SYMBOL drivers/message/fusion/mptbase 0x1a26d2d1 mpt_findImVolumes +EXPORT_SYMBOL drivers/message/fusion/mptbase 0x23408464 mpt_event_register +EXPORT_SYMBOL drivers/message/fusion/mptbase 0x25ea76dd mpt_GetIocState +EXPORT_SYMBOL drivers/message/fusion/mptbase 0x2bc5a916 mpt_free_fw_memory +EXPORT_SYMBOL drivers/message/fusion/mptbase 0x32759c40 mpt_attach +EXPORT_SYMBOL drivers/message/fusion/mptbase 0x3461d290 mpt_halt_firmware +EXPORT_SYMBOL drivers/message/fusion/mptbase 0x428bd393 mpt_put_msg_frame +EXPORT_SYMBOL drivers/message/fusion/mptbase 0x49623c90 mpt_verify_adapter +EXPORT_SYMBOL drivers/message/fusion/mptbase 0x49845131 mpt_send_handshake_request +EXPORT_SYMBOL drivers/message/fusion/mptbase 0x502108d0 mpt_fwfault_debug +EXPORT_SYMBOL drivers/message/fusion/mptbase 0x53adf926 mpt_free_msg_frame +EXPORT_SYMBOL drivers/message/fusion/mptbase 0x5dacc903 mpt_device_driver_register +EXPORT_SYMBOL drivers/message/fusion/mptbase 0x610b257e mpt_reset_deregister +EXPORT_SYMBOL drivers/message/fusion/mptbase 0x69eef50b mpt_resume +EXPORT_SYMBOL drivers/message/fusion/mptbase 0x74a0134a mpt_device_driver_deregister +EXPORT_SYMBOL drivers/message/fusion/mptbase 0x86e2ba64 mptbase_sas_persist_operation +EXPORT_SYMBOL drivers/message/fusion/mptbase 0x97afa4f1 mpt_HardResetHandler +EXPORT_SYMBOL drivers/message/fusion/mptbase 0x981efe92 mpt_deregister +EXPORT_SYMBOL drivers/message/fusion/mptbase 0xa8fc29a7 mpt_Soft_Hard_ResetHandler +EXPORT_SYMBOL drivers/message/fusion/mptbase 0xade86fd3 mpt_reset_register +EXPORT_SYMBOL drivers/message/fusion/mptbase 0xbd3f275d mpt_clear_taskmgmt_in_progress_flag +EXPORT_SYMBOL drivers/message/fusion/mptbase 0xc209ffb8 mpt_register +EXPORT_SYMBOL drivers/message/fusion/mptbase 0xc413b26d mpt_alloc_fw_memory +EXPORT_SYMBOL drivers/message/fusion/mptbase 0xcc2f7631 mpt_raid_phys_disk_pg1 +EXPORT_SYMBOL drivers/message/fusion/mptbase 0xcf950481 mpt_get_msg_frame +EXPORT_SYMBOL drivers/message/fusion/mptbase 0xd124fab1 mpt_print_ioc_summary +EXPORT_SYMBOL drivers/message/fusion/mptbase 0xd23c37df mpt_set_taskmgmt_in_progress_flag +EXPORT_SYMBOL drivers/message/fusion/mptbase 0xd95962b3 mpt_raid_phys_disk_pg0 +EXPORT_SYMBOL drivers/message/fusion/mptbase 0xdd52a818 mpt_detach +EXPORT_SYMBOL drivers/message/fusion/mptbase 0xdd805159 ioc_list +EXPORT_SYMBOL drivers/message/fusion/mptbase 0xe0013217 mpt_config +EXPORT_SYMBOL drivers/message/fusion/mptbase 0xe6c1e126 mpt_event_deregister +EXPORT_SYMBOL drivers/message/fusion/mptbase 0xed5e15c4 mpt_suspend +EXPORT_SYMBOL drivers/message/fusion/mptbase 0xfe82ee47 mpt_raid_phys_disk_get_num_paths +EXPORT_SYMBOL drivers/message/fusion/mptbase 0xffa593fa mpt_put_msg_frame_hi_pri +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0x06650683 mptscsih_info +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0x07951752 mptscsih_abort +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0x17b1ace5 mptscsih_show_info +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0x35e40916 mptscsih_shutdown +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0x3b6f0a42 mptscsih_taskmgmt_response_code +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0x4a3f5536 mptscsih_bios_param +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0x4a814be0 mptscsih_ioc_reset +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0x4c5715ed mptscsih_change_queue_depth +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0x5c9a8937 mptscsih_io_done +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0x64318bba mptscsih_suspend +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0x69ea2ae4 mptscsih_flush_running_cmds +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0x7a0ab1fa mptscsih_remove +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0x7bc061ba mptscsih_taskmgmt_complete +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0x80de07e3 mptscsih_host_attrs +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0x8396047e mptscsih_raid_id_to_num +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0x96418843 mptscsih_IssueTaskMgmt +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0x96f4c117 mptscsih_qcmd +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0xadf800cd mptscsih_is_phys_disk +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0xb3e7772d mptscsih_event_process +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0xc339b3f1 mptscsih_bus_reset +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0xc915f97c mptscsih_dev_reset +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0xd7df0916 mptscsih_resume +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0xd8b1aeaa mptscsih_host_reset +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0xe5b5d4c0 mptscsih_slave_configure +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0xefeaa45f mptscsih_slave_destroy +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0xf55a972c mptscsih_get_scsi_lookup +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0xffb55dd2 mptscsih_scandv_complete +EXPORT_SYMBOL drivers/mfd/axp20x 0x272788a1 axp20x_device_remove +EXPORT_SYMBOL drivers/mfd/axp20x 0x3e27de4b axp20x_match_device +EXPORT_SYMBOL drivers/mfd/axp20x 0xa9e8ee41 axp20x_device_probe +EXPORT_SYMBOL drivers/mfd/dln2 0x3d90c212 dln2_unregister_event_cb +EXPORT_SYMBOL drivers/mfd/dln2 0xa854aea9 dln2_register_event_cb +EXPORT_SYMBOL drivers/mfd/dln2 0xea87d891 dln2_transfer +EXPORT_SYMBOL drivers/mfd/htc-pasic3 0x59c5fdfc pasic3_read_register +EXPORT_SYMBOL drivers/mfd/htc-pasic3 0xc0ca828d pasic3_write_register +EXPORT_SYMBOL drivers/mfd/mc13xxx-core 0x170e4f5a mc13xxx_reg_read +EXPORT_SYMBOL drivers/mfd/mc13xxx-core 0x1734b769 mc13xxx_reg_write +EXPORT_SYMBOL drivers/mfd/mc13xxx-core 0x394abbf3 mc13xxx_irq_unmask +EXPORT_SYMBOL drivers/mfd/mc13xxx-core 0x4c194bf9 mc13xxx_unlock +EXPORT_SYMBOL drivers/mfd/mc13xxx-core 0x6eda13a5 mc13xxx_get_flags +EXPORT_SYMBOL drivers/mfd/mc13xxx-core 0x8741578e mc13xxx_irq_status +EXPORT_SYMBOL drivers/mfd/mc13xxx-core 0xc5665d7b mc13xxx_irq_request +EXPORT_SYMBOL drivers/mfd/mc13xxx-core 0xd3c20242 mc13xxx_irq_mask +EXPORT_SYMBOL drivers/mfd/mc13xxx-core 0xe2f044d6 mc13xxx_lock +EXPORT_SYMBOL drivers/mfd/mc13xxx-core 0xe9b37428 mc13xxx_reg_rmw +EXPORT_SYMBOL drivers/mfd/mc13xxx-core 0xf8bfaa23 mc13xxx_irq_free +EXPORT_SYMBOL drivers/mfd/qcom_rpm 0x832aed94 qcom_rpm_write +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 0x1b2eff33 wm1811_regmap_config +EXPORT_SYMBOL drivers/mfd/wm8994 0x3987d23f wm8994_base_regmap_config +EXPORT_SYMBOL drivers/mfd/wm8994 0x82deaf46 wm8994_irq_exit +EXPORT_SYMBOL drivers/mfd/wm8994 0x844cfd1e wm8958_regmap_config +EXPORT_SYMBOL drivers/mfd/wm8994 0x95f83dce wm8994_irq_init +EXPORT_SYMBOL drivers/mfd/wm8994 0xb6764687 wm8994_regmap_config +EXPORT_SYMBOL drivers/misc/ad525x_dpot 0x022fded7 ad_dpot_remove +EXPORT_SYMBOL drivers/misc/ad525x_dpot 0x53524015 ad_dpot_probe +EXPORT_SYMBOL drivers/misc/altera-stapl/altera-stapl 0x2fb85933 altera_init +EXPORT_SYMBOL drivers/misc/c2port/core 0x3dd36086 c2port_device_register +EXPORT_SYMBOL drivers/misc/c2port/core 0x7a4a0f0c c2port_device_unregister +EXPORT_SYMBOL drivers/misc/tifm_core 0x10de1f0f tifm_alloc_device +EXPORT_SYMBOL drivers/misc/tifm_core 0x14a8c386 tifm_add_adapter +EXPORT_SYMBOL drivers/misc/tifm_core 0x34e3f5a7 tifm_free_device +EXPORT_SYMBOL drivers/misc/tifm_core 0x39f86aa1 tifm_queue_work +EXPORT_SYMBOL drivers/misc/tifm_core 0x40275e3a tifm_has_ms_pif +EXPORT_SYMBOL drivers/misc/tifm_core 0x4e3b8307 tifm_remove_adapter +EXPORT_SYMBOL drivers/misc/tifm_core 0x5214f117 tifm_free_adapter +EXPORT_SYMBOL drivers/misc/tifm_core 0x65145adc tifm_register_driver +EXPORT_SYMBOL drivers/misc/tifm_core 0x76edc7ff tifm_unmap_sg +EXPORT_SYMBOL drivers/misc/tifm_core 0x93f7ecb5 tifm_eject +EXPORT_SYMBOL drivers/misc/tifm_core 0xd1532e4c tifm_map_sg +EXPORT_SYMBOL drivers/misc/tifm_core 0xed957551 tifm_unregister_driver +EXPORT_SYMBOL drivers/misc/tifm_core 0xf0c99616 tifm_alloc_adapter +EXPORT_SYMBOL drivers/mmc/host/cqhci 0x50f04b92 cqhci_pltfm_init +EXPORT_SYMBOL drivers/mmc/host/cqhci 0x6ef7219a cqhci_deactivate +EXPORT_SYMBOL drivers/mmc/host/cqhci 0x70944e35 cqhci_irq +EXPORT_SYMBOL drivers/mmc/host/cqhci 0x94f2154e cqhci_init +EXPORT_SYMBOL drivers/mmc/host/cqhci 0x97fd5f77 cqhci_resume +EXPORT_SYMBOL drivers/mmc/host/dw_mmc 0x014dd150 dw_mci_remove +EXPORT_SYMBOL drivers/mmc/host/dw_mmc 0x55d9600f dw_mci_runtime_resume +EXPORT_SYMBOL drivers/mmc/host/dw_mmc 0xb009b3a4 dw_mci_probe +EXPORT_SYMBOL drivers/mmc/host/dw_mmc 0xf3c3c2c0 dw_mci_runtime_suspend +EXPORT_SYMBOL drivers/mmc/host/of_mmc_spi 0x6060babb mmc_spi_get_pdata +EXPORT_SYMBOL drivers/mmc/host/of_mmc_spi 0xa03eba2e mmc_spi_put_pdata +EXPORT_SYMBOL drivers/mtd/chips/cfi_util 0x11ce6ed3 cfi_fixup +EXPORT_SYMBOL drivers/mtd/chips/cfi_util 0x16430ce1 cfi_build_cmd_addr +EXPORT_SYMBOL drivers/mtd/chips/cfi_util 0x5cb27fe4 cfi_varsize_frob +EXPORT_SYMBOL drivers/mtd/chips/cfi_util 0x7b3b5f6b cfi_read_pri +EXPORT_SYMBOL drivers/mtd/chips/cfi_util 0x7e8e2bde cfi_merge_status +EXPORT_SYMBOL drivers/mtd/chips/cfi_util 0xcc303527 cfi_send_gen_cmd +EXPORT_SYMBOL drivers/mtd/chips/cfi_util 0xcef177a7 cfi_build_cmd +EXPORT_SYMBOL drivers/mtd/chips/cfi_util 0xff9fa623 cfi_udelay +EXPORT_SYMBOL drivers/mtd/chips/gen_probe 0x895ca6a3 mtd_do_chip_probe +EXPORT_SYMBOL drivers/mtd/lpddr/lpddr_cmds 0x269f9bcd lpddr_cmdset +EXPORT_SYMBOL drivers/mtd/nand/onenand/onenand 0x7e715626 flexonenand_region +EXPORT_SYMBOL drivers/mtd/nand/onenand/onenand 0xc9f09c08 onenand_addr +EXPORT_SYMBOL drivers/mtd/nand/raw/denali 0x0b6ea763 denali_remove +EXPORT_SYMBOL drivers/mtd/nand/raw/denali 0x30db096f denali_calc_ecc_bytes +EXPORT_SYMBOL drivers/mtd/nand/raw/denali 0x9a9fef87 denali_init +EXPORT_SYMBOL drivers/mtd/nand/raw/mtk_ecc 0x102603bc mtk_ecc_get_parity_bits +EXPORT_SYMBOL drivers/mtd/nand/raw/mtk_ecc 0x5437e775 mtk_ecc_disable +EXPORT_SYMBOL drivers/mtd/nand/raw/mtk_ecc 0x5de55d81 mtk_ecc_get_stats +EXPORT_SYMBOL drivers/mtd/nand/raw/mtk_ecc 0x6df58afb mtk_ecc_release +EXPORT_SYMBOL drivers/mtd/nand/raw/mtk_ecc 0x76e53683 mtk_ecc_wait_done +EXPORT_SYMBOL drivers/mtd/nand/raw/mtk_ecc 0x7cce5a73 of_mtk_ecc_get +EXPORT_SYMBOL drivers/mtd/nand/raw/mtk_ecc 0x8dcc87d2 mtk_ecc_enable +EXPORT_SYMBOL drivers/mtd/nand/raw/mtk_ecc 0xda64ef4a mtk_ecc_adjust_strength +EXPORT_SYMBOL drivers/mtd/nand/raw/mtk_ecc 0xec8b9207 mtk_ecc_encode +EXPORT_SYMBOL drivers/net/arcnet/arcnet 0x0251ca75 arc_bcast_proto +EXPORT_SYMBOL drivers/net/arcnet/arcnet 0x1207d887 arcnet_send_packet +EXPORT_SYMBOL drivers/net/arcnet/arcnet 0x3078e9a9 arcnet_open +EXPORT_SYMBOL drivers/net/arcnet/arcnet 0x4178c67a arcnet_unregister_proto +EXPORT_SYMBOL drivers/net/arcnet/arcnet 0x46d8953b arc_raw_proto +EXPORT_SYMBOL drivers/net/arcnet/arcnet 0x6534792a arcnet_debug +EXPORT_SYMBOL drivers/net/arcnet/arcnet 0x7ab70661 arc_proto_default +EXPORT_SYMBOL drivers/net/arcnet/arcnet 0x93fb0134 arcnet_close +EXPORT_SYMBOL drivers/net/arcnet/arcnet 0xb40e40cb arc_proto_map +EXPORT_SYMBOL drivers/net/arcnet/arcnet 0xcea4fec1 arcnet_timeout +EXPORT_SYMBOL drivers/net/arcnet/arcnet 0xd6e78243 alloc_arcdev +EXPORT_SYMBOL drivers/net/arcnet/arcnet 0xecb730b0 arcnet_interrupt +EXPORT_SYMBOL drivers/net/arcnet/com20020 0x84c9add6 com20020_check +EXPORT_SYMBOL drivers/net/arcnet/com20020 0x95125193 com20020_netdev_ops +EXPORT_SYMBOL drivers/net/arcnet/com20020 0xfc25c6b9 com20020_found +EXPORT_SYMBOL drivers/net/dsa/b53/b53_common 0x0b2f4756 b53_phylink_validate +EXPORT_SYMBOL drivers/net/dsa/b53/b53_common 0x143cf63a b53_mdb_add +EXPORT_SYMBOL drivers/net/dsa/b53/b53_common 0x20213288 b53_vlan_add +EXPORT_SYMBOL drivers/net/dsa/b53/b53_common 0x20a3479b b53_imp_vlan_setup +EXPORT_SYMBOL drivers/net/dsa/b53/b53_common 0x274b2a4b b53_get_mac_eee +EXPORT_SYMBOL drivers/net/dsa/b53/b53_common 0x28e52308 b53_get_sset_count +EXPORT_SYMBOL drivers/net/dsa/b53/b53_common 0x315923d4 b53_br_egress_floods +EXPORT_SYMBOL drivers/net/dsa/b53/b53_common 0x37af6084 b53_mdb_prepare +EXPORT_SYMBOL drivers/net/dsa/b53/b53_common 0x385fa53b b53_phylink_mac_link_state +EXPORT_SYMBOL drivers/net/dsa/b53/b53_common 0x3d8a7430 b53_fdb_add +EXPORT_SYMBOL drivers/net/dsa/b53/b53_common 0x434e587d b53_phylink_mac_link_down +EXPORT_SYMBOL drivers/net/dsa/b53/b53_common 0x44cf3db7 b53_port_event +EXPORT_SYMBOL drivers/net/dsa/b53/b53_common 0x551106be b53_mirror_add +EXPORT_SYMBOL drivers/net/dsa/b53/b53_common 0x595a4daf b53_configure_vlan +EXPORT_SYMBOL drivers/net/dsa/b53/b53_common 0x59bf57c5 b53_get_ethtool_phy_stats +EXPORT_SYMBOL drivers/net/dsa/b53/b53_common 0x6ede313b b53_get_tag_protocol +EXPORT_SYMBOL drivers/net/dsa/b53/b53_common 0x723dd5f0 b53_fdb_del +EXPORT_SYMBOL drivers/net/dsa/b53/b53_common 0x902ac0ec b53_mirror_del +EXPORT_SYMBOL drivers/net/dsa/b53/b53_common 0x9187119a b53_switch_detect +EXPORT_SYMBOL drivers/net/dsa/b53/b53_common 0x93c68122 b53_disable_port +EXPORT_SYMBOL drivers/net/dsa/b53/b53_common 0x9e4cf45c b53_vlan_prepare +EXPORT_SYMBOL drivers/net/dsa/b53/b53_common 0x9e50cbb0 b53_set_mac_eee +EXPORT_SYMBOL drivers/net/dsa/b53/b53_common 0xa1ba903e b53_eee_init +EXPORT_SYMBOL drivers/net/dsa/b53/b53_common 0xa96547fb b53_enable_port +EXPORT_SYMBOL drivers/net/dsa/b53/b53_common 0xb094e076 b53_vlan_del +EXPORT_SYMBOL drivers/net/dsa/b53/b53_common 0xbdcb0aff b53_switch_register +EXPORT_SYMBOL drivers/net/dsa/b53/b53_common 0xbdf4f509 b53_phylink_mac_link_up +EXPORT_SYMBOL drivers/net/dsa/b53/b53_common 0xc2efb493 b53_fdb_dump +EXPORT_SYMBOL drivers/net/dsa/b53/b53_common 0xc5dba0dc b53_eee_enable_set +EXPORT_SYMBOL drivers/net/dsa/b53/b53_common 0xd397321e b53_br_fast_age +EXPORT_SYMBOL drivers/net/dsa/b53/b53_common 0xd8c78497 b53_vlan_filtering +EXPORT_SYMBOL drivers/net/dsa/b53/b53_common 0xda2eb111 b53_br_join +EXPORT_SYMBOL drivers/net/dsa/b53/b53_common 0xdb3841ae b53_phylink_mac_an_restart +EXPORT_SYMBOL drivers/net/dsa/b53/b53_common 0xdba26af5 b53_switch_alloc +EXPORT_SYMBOL drivers/net/dsa/b53/b53_common 0xde2c0574 b53_br_leave +EXPORT_SYMBOL drivers/net/dsa/b53/b53_common 0xe452c512 b53_brcm_hdr_setup +EXPORT_SYMBOL drivers/net/dsa/b53/b53_common 0xeb4b7c6b b53_get_ethtool_stats +EXPORT_SYMBOL drivers/net/dsa/b53/b53_common 0xec333843 b53_get_strings +EXPORT_SYMBOL drivers/net/dsa/b53/b53_common 0xfb11b159 b53_mdb_del +EXPORT_SYMBOL drivers/net/dsa/b53/b53_common 0xfca85a0a b53_phylink_mac_config +EXPORT_SYMBOL drivers/net/dsa/b53/b53_common 0xfecbd769 b53_br_set_stp_state +EXPORT_SYMBOL drivers/net/dsa/b53/b53_serdes 0x4f9b42aa b53_serdes_phylink_validate +EXPORT_SYMBOL drivers/net/dsa/b53/b53_serdes 0x8188f317 b53_serdes_link_set +EXPORT_SYMBOL drivers/net/dsa/b53/b53_serdes 0x8a47dc8f b53_serdes_init +EXPORT_SYMBOL drivers/net/dsa/b53/b53_serdes 0xb2bc999a b53_serdes_link_state +EXPORT_SYMBOL drivers/net/dsa/b53/b53_serdes 0xf73ab879 b53_serdes_config +EXPORT_SYMBOL drivers/net/dsa/b53/b53_serdes 0xf7423bf0 b53_serdes_an_restart +EXPORT_SYMBOL drivers/net/dsa/lan9303-core 0x20867dd3 lan9303_probe +EXPORT_SYMBOL drivers/net/dsa/lan9303-core 0xada83f40 lan9303_register_set +EXPORT_SYMBOL drivers/net/dsa/lan9303-core 0xf9835b28 lan9303_remove +EXPORT_SYMBOL drivers/net/dsa/microchip/ksz8795 0x7b08953e ksz8795_switch_register +EXPORT_SYMBOL drivers/net/dsa/microchip/ksz9477 0xd7b57089 ksz9477_switch_register +EXPORT_SYMBOL drivers/net/dsa/microchip/ksz_common 0x70062e95 ksz_switch_register +EXPORT_SYMBOL drivers/net/dsa/microchip/ksz_common 0x9818522b ksz_switch_alloc +EXPORT_SYMBOL drivers/net/dsa/microchip/ksz_common 0xe9dd688a ksz_switch_remove +EXPORT_SYMBOL drivers/net/dsa/vitesse-vsc73xx-core 0x171e2584 vsc73xx_probe +EXPORT_SYMBOL drivers/net/dsa/vitesse-vsc73xx-core 0x99d242fe vsc73xx_is_addr_valid +EXPORT_SYMBOL drivers/net/dsa/vitesse-vsc73xx-core 0x9c0f2d8e vsc73xx_remove +EXPORT_SYMBOL drivers/net/ethernet/8390/8390 0x119721ac ei_interrupt +EXPORT_SYMBOL drivers/net/ethernet/8390/8390 0x32a8d276 ei_tx_timeout +EXPORT_SYMBOL drivers/net/ethernet/8390/8390 0x35e02d34 NS8390_init +EXPORT_SYMBOL drivers/net/ethernet/8390/8390 0x3cef5869 ei_netdev_ops +EXPORT_SYMBOL drivers/net/ethernet/8390/8390 0x3eade0ee ei_set_multicast_list +EXPORT_SYMBOL drivers/net/ethernet/8390/8390 0x6b26bb04 __alloc_ei_netdev +EXPORT_SYMBOL drivers/net/ethernet/8390/8390 0x7943c470 ei_get_stats +EXPORT_SYMBOL drivers/net/ethernet/8390/8390 0xaf38522e ei_close +EXPORT_SYMBOL drivers/net/ethernet/8390/8390 0xc4f2f3eb ei_start_xmit +EXPORT_SYMBOL drivers/net/ethernet/8390/8390 0xecad2e8d ei_poll +EXPORT_SYMBOL drivers/net/ethernet/8390/8390 0xf0cf162a ei_open +EXPORT_SYMBOL drivers/net/ethernet/broadcom/cnic 0x3873b8a4 cnic_register_driver +EXPORT_SYMBOL drivers/net/ethernet/broadcom/cnic 0x636af174 cnic_unregister_driver +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb3/cxgb3 0x05bfabe2 cxgb3_register_client +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb3/cxgb3 0x29c84d98 cxgb3_free_atid +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb3/cxgb3 0x3c6e919d cxgb3_ofld_send +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb3/cxgb3 0x45ca5ecb t3_register_cpl_handler +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb3/cxgb3 0x4e5f44dc t3_l2t_send_slow +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb3/cxgb3 0x5b9ceafc cxgb3_insert_tid +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb3/cxgb3 0x61ebb113 cxgb3_alloc_atid +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb3/cxgb3 0x655964d6 cxgb3_remove_tid +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb3/cxgb3 0x745e1b83 cxgb3_alloc_stid +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb3/cxgb3 0x7d7d84eb t3_l2t_send_event +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb3/cxgb3 0x803db662 cxgb3_free_stid +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb3/cxgb3 0xb3ff8ef2 t3_l2t_get +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb3/cxgb3 0xdd2f3258 t3_l2e_free +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb3/cxgb3 0xe7e3d50d cxgb3_unregister_client +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb3/cxgb3 0xf084bc88 cxgb3_queue_tid_release +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb3/cxgb3 0xf362434b dev2t3cdev +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0x05a459e5 cxgb4_clip_release +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0x0b9e6565 cxgb4_port_idx +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0x0e8e7171 cxgb4_get_tcp_stats +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0x14670d1f t4_cleanup_clip_tbl +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0x193aafe5 cxgb4_ring_tx_db +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0x1a6a1545 cxgb4_dbfifo_count +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0x21562966 cxgb4_update_root_dev_clip +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0x23e34108 cxgb4_clip_get +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0x2c7492c6 cxgb4_ofld_send +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0x2dfa8945 cxgb4_create_server_filter +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0x317511e3 cxgb4_l2t_send +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0x3217a81b cxgb4_port_chan +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0x322b3c2c cxgb4_pktgl_to_skb +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0x3ed5e007 cxgb4_create_server +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0x4b9964ae cxgb4_remove_server +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0x4e0e1105 cxgb4_remove_server_filter +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0x4fc4399b cxgb4_remove_tid +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0x50ee5c07 cxgb4_best_aligned_mtu +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0x676a11a9 cxgb4_unregister_uld +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0x70acd06d cxgb4_port_e2cchan +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0x8e4150e4 cxgb4_get_srq_entry +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0x8e7c5bcd cxgb4_crypto_send +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0x914aa64c cxgb4_create_server6 +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0x94a1a7a5 cxgb4_l2t_get +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0x95030e4f cxgb4_alloc_stid +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0xa46ab062 cxgb4_port_viid +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0xaf2a5464 cxgb4_write_sgl +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0xb19de0c9 cxgb4_immdata_send +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0xb1ffbf87 cxgb4_read_sge_timestamp +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0xb87d8442 cxgb4_read_tpte +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0xb8d7c143 cxgb4_inline_tx_skb +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0xbb1501d0 cxgb4_bar2_sge_qregs +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0xbcf60187 cxgb4_reclaim_completed_tx +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0xbe81b7e2 cxgb4_l2t_alloc_switching +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0xc533a043 cxgb4_smt_alloc_switching +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0xc7f9ddb2 cxgb4_flush_eq_cache +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0xcbf1c39a cxgb4_select_ntuple +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0xcfb8392c cxgb4_alloc_sftid +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0xd1422404 cxgb4_sync_txq_pidx +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0xd49b056a cxgb4_free_stid +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0xd5cf64eb cxgb4_register_uld +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0xd69a0294 cxgb4_best_mtu +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0xded2869b cxgb4_smt_release +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0xe6ac74c5 cxgb4_alloc_atid +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0xe750dfd0 cxgb4_free_atid +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0xf0f39dcf cxgb4_l2t_release +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0xf27e7387 cxgb4_map_skb +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0xf4fc2866 cxgb4_check_l2t_valid +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0xfb51196c cxgb4_iscsi_init +EXPORT_SYMBOL drivers/net/ethernet/chelsio/libcxgb/libcxgb 0x007ff86a cxgbi_ppm_release +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 0x2eebcd33 cxgb_find_route6 +EXPORT_SYMBOL drivers/net/ethernet/chelsio/libcxgb/libcxgb 0x7cdb90a9 cxgbi_ppm_init +EXPORT_SYMBOL drivers/net/ethernet/chelsio/libcxgb/libcxgb 0x8a3822d1 cxgbi_ppm_ppod_release +EXPORT_SYMBOL drivers/net/ethernet/chelsio/libcxgb/libcxgb 0xb63833cc cxgbi_ppm_ppods_reserve +EXPORT_SYMBOL drivers/net/ethernet/chelsio/libcxgb/libcxgb 0xcfa0037d cxgb_find_route +EXPORT_SYMBOL drivers/net/ethernet/chelsio/libcxgb/libcxgb 0xd33a04a5 cxgbi_ppm_make_ppod_hdr +EXPORT_SYMBOL drivers/net/ethernet/cisco/enic/enic 0x015c4ad5 vnic_dev_get_res_count +EXPORT_SYMBOL drivers/net/ethernet/cisco/enic/enic 0x41847abf vnic_dev_get_pdev +EXPORT_SYMBOL drivers/net/ethernet/cisco/enic/enic 0x6d75f894 vnic_dev_unregister +EXPORT_SYMBOL drivers/net/ethernet/cisco/enic/enic 0x817c37a9 enic_api_devcmd_proxy_by_index +EXPORT_SYMBOL drivers/net/ethernet/cisco/enic/enic 0x92a9133d vnic_dev_get_res +EXPORT_SYMBOL drivers/net/ethernet/cisco/enic/enic 0xb901f335 vnic_dev_register +EXPORT_SYMBOL drivers/net/ethernet/emulex/benet/be2net 0x3e7bdf85 be_roce_register_driver +EXPORT_SYMBOL drivers/net/ethernet/emulex/benet/be2net 0x4e2e10d2 be_roce_mcc_cmd +EXPORT_SYMBOL drivers/net/ethernet/emulex/benet/be2net 0xb1ce5d3a be_roce_unregister_driver +EXPORT_SYMBOL drivers/net/ethernet/freescale/enetc/fsl-enetc-ptp 0x5431a304 enetc_phc_index +EXPORT_SYMBOL drivers/net/ethernet/hisilicon/hns/hnae 0x4b13832e hnae_reinit_handle +EXPORT_SYMBOL drivers/net/ethernet/hisilicon/hns/hnae 0x8adbb5a8 hnae_ae_register +EXPORT_SYMBOL drivers/net/ethernet/hisilicon/hns/hnae 0xb1266858 hnae_register_notifier +EXPORT_SYMBOL drivers/net/ethernet/hisilicon/hns/hnae 0xbf6744be hnae_put_handle +EXPORT_SYMBOL drivers/net/ethernet/hisilicon/hns/hnae 0xc737c16c hnae_get_handle +EXPORT_SYMBOL drivers/net/ethernet/hisilicon/hns/hnae 0xd3a3edc7 hnae_ae_unregister +EXPORT_SYMBOL drivers/net/ethernet/hisilicon/hns/hnae 0xdf24adef hnae_unregister_notifier +EXPORT_SYMBOL drivers/net/ethernet/hisilicon/hns/hns_dsaf 0xbcd7797a hns_dsaf_roce_reset +EXPORT_SYMBOL drivers/net/ethernet/hisilicon/hns3/hnae3 0x0a7db4be hnae3_unregister_ae_algo +EXPORT_SYMBOL drivers/net/ethernet/hisilicon/hns3/hnae3 0x1000f0b3 hnae3_register_client +EXPORT_SYMBOL drivers/net/ethernet/hisilicon/hns3/hnae3 0x10e53abc hnae3_unregister_client +EXPORT_SYMBOL drivers/net/ethernet/hisilicon/hns3/hnae3 0x1e512854 hnae3_register_ae_dev +EXPORT_SYMBOL drivers/net/ethernet/hisilicon/hns3/hnae3 0x1eb4e25b hnae3_unregister_ae_dev +EXPORT_SYMBOL drivers/net/ethernet/hisilicon/hns3/hnae3 0xba38a8da hnae3_register_ae_algo +EXPORT_SYMBOL drivers/net/ethernet/hisilicon/hns3/hnae3 0xbbec0645 hnae3_set_client_init_flag +EXPORT_SYMBOL drivers/net/ethernet/intel/i40e/i40e 0x6711f313 i40e_unregister_client +EXPORT_SYMBOL drivers/net/ethernet/intel/i40e/i40e 0xfaafeb29 i40e_register_client +EXPORT_SYMBOL drivers/net/ethernet/intel/iavf/iavf 0xaf76db80 iavf_register_client +EXPORT_SYMBOL drivers/net/ethernet/intel/iavf/iavf 0xe0028500 iavf_unregister_client +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x052ded98 mlx4_ALLOCATE_VPP_set +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x0a42a8b7 mlx4_query_diag_counters +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x0ce657d5 mlx4_max_tc +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x0dd39c80 mlx4_release_eq +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x19350999 mlx4_SET_VPORT_QOS_set +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x206c3da6 mlx4_gen_pkey_eqe +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x210a807d mlx4_get_slave_pkey_gid_tbl_len +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x24af15f1 mlx4_gen_guid_change_eqe +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x2f9d3716 mlx4_SET_VPORT_QOS_get +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x32bdf386 mlx4_eq_get_irq +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x4708f03f mlx4_get_slave_node_guid +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x56e9a3f7 mlx4_SET_PORT_fcs_check +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x61b1b41e mlx4_SET_PORT_qpn_calc +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x63851d89 get_phv_bit +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x646140c7 mlx4_sync_pkey_table +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x6e9a5724 mlx4_get_roce_gid_from_slave +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x72ed2de4 mlx4_SET_PORT_BEACON +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x743b1fbb set_and_calc_slave_port_state +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x76d21e77 mlx4_get_eqs_per_port +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 0x8062a30e mlx4_test_async +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x81411470 mlx4_get_slave_port_state +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x82256683 mlx4_SET_PORT_SCHEDULER +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x83ab6720 mlx4_get_module_info +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x8fae09f2 mlx4_is_eq_vector_valid +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x9044fb21 mlx4_put_slave_node_guid +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x94df2e1e mlx4_test_interrupt +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x95a17498 mlx4_is_eq_shared +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x9fd8296e mlx4_get_parav_qkey +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xa7816844 set_phv_bit +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xa930acdb mlx4_ALLOCATE_VPP_get +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xada5b96b mlx4_SET_MCAST_FLTR +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xb739ec5e mlx4_get_is_vlan_offload_disabled +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xc35f2e7b mlx4_SET_PORT_VXLAN +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xd1880b39 mlx4_SET_PORT_PRIO2TC +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xd655be3f mlx4_SET_PORT_user_mtu +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xdc80b118 mlx4_get_cpu_rmap +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xe57366cf mlx4_gen_port_state_change_eqe +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xe5909e58 mlx4_assign_eq +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xe9d9a0e2 mlx4_is_slave_active +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xf4963b6d mlx4_SET_PORT_user_mac +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xf778fb8c mlx4_get_slave_from_roce_gid +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xf7c855d5 mlx4_SET_PORT_general +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xf92df321 mlx4_gen_slaves_port_mgt_ev +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xfdde4796 mlx4_tunnel_steer_add +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x0010d6d6 mlx5_core_create_cq +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x01effe8c mlx5_lag_is_roce +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x08dfd283 mlx5_eswitch_reg_c1_loopback_enabled +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x08f09e5d mlx5_comp_vectors_count +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x0a5a413d mlx5_rl_remove_rate +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x0c2fc676 __tracepoint_mlx5_fs_del_fte +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x0c6fb65c mlx5_eq_notifier_unregister +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x0df8ed93 mlx5_cmd_exec +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x102a09fa mlx5_cmd_init +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x103aedc0 mlx5_core_query_vendor_id +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x11eeff28 mlx5_free_bfreg +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x1bc601d8 mlx5_fc_destroy +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x1db45179 mlx5_core_query_cq +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x1e736f08 mlx5_core_roce_gid_set +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x1f58234e mlx5_core_create_mkey +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x1fcef11a mlx5_core_destroy_tir +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x20d84b9f mlx5_eswitch_unregister_vport_reps +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x27741673 mlx5_core_create_rqt +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x28c22270 mlx5_core_destroy_psv +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x292c1ef2 mlx5_fc_query +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x2acb24ed mlx5_core_modify_cq +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x2afeaded mlx5_cmd_free_uar +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x2d397489 mlx5_eswitch_vport_match_metadata_enabled +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x33118b8d mlx5_cmd_init_async_ctx +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x33b83268 mlx5_core_query_mkey +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x358ba29b mlx5_fpga_mem_read +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x35bbdda7 mlx5_buf_alloc +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x38fe8cb8 mlx5_cmd_alloc_uar +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x39153c11 __tracepoint_mlx5_fs_add_ft +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x40c907dc mlx5_cmd_exec_cb +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x4511bb53 mlx5_eq_notifier_register +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x45ace8ac mlx5_core_create_tis +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x45f41731 mlx5_rl_remove_rate_raw +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x4798a2af mlx5_eswitch_get_proto_dev +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x4910996b mlx5_cmd_cleanup +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x4ad7e9d4 __tracepoint_mlx5_fs_add_rule +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x4e5d038b mlx5_fc_create +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x4f8e301b mlx5_eq_get_eqe +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x515d1147 mlx5_eq_disable +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x5200239a mlx5_core_dealloc_transport_domain +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x53962ce0 mlx5_eq_destroy_generic +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x557b0cfa mlx5_cmd_create_vport_lag +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x58fa7d83 __tracepoint_mlx5_fs_add_fg +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x5919f708 mlx5_fpga_get_sbu_caps +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x5c25bfeb mlx5_destroy_flow_table +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x5d38b981 mlx5_fpga_sbu_conn_sendmsg +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x5f7588ba mlx5_del_flow_rules +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x5f89a34b mlx5_core_destroy_rq +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x5fa9574e mlx5_debug_qp_remove +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 0x636bb5b0 mlx5_fpga_mem_write +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x64eeae46 mlx5_eswitch_uplink_get_proto_dev +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x678b1fe9 mlx5_core_destroy_rqt +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x6c5c7c4f mlx5_query_port_ib_proto_oper +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x7253f3fe mlx5_eswitch_get_encap_mode +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x73193ce9 __tracepoint_mlx5_fw +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x7568af5b mlx5_get_flow_namespace +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x766add23 mlx5_core_destroy_mkey +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x7a6c8b1e mlx5_core_alloc_transport_domain +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x7e9b55bc mlx5_core_alloc_pd +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x80af5251 mlx5_modify_header_alloc +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x829a113e mlx5_vector2eqn +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x84e0fbfa mlx5_eq_create_generic +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x884fe06b mlx5_get_uars_page +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x8afb714c mlx5_fpga_sbu_conn_destroy +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x8dfe49e6 mlx5_alloc_bfreg +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x90018bd2 __tracepoint_mlx5_fs_del_ft +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x924f75e0 mlx5_packet_reformat_alloc +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x92bab563 mlx5_add_flow_rules +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x9585dfe7 mlx5_core_destroy_tis +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x95d47eb2 __tracepoint_mlx5_fs_set_fte +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x96eb2c99 mlx5_fc_id +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x9c55e894 mlx5_register_interface +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x9dfd4580 mlx5_core_modify_sq +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x9e5e7de6 mlx5_core_detach_mcg +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x9e62ec8c mlx5_fs_add_rx_underlay_qpn +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x9ee9a2a0 mlx5_core_create_rq +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x9f43a70c mlx5_core_query_rq +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xa05c03af mlx5_packet_reformat_dealloc +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xa10bba61 mlx5_core_create_psv +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xacc6f9eb mlx5_notifier_register +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xb1856b23 mlx5_create_lag_demux_flow_table +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xb2bcddb3 mlx5_core_create_tir +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xb52fc124 mlx5_lag_query_cong_counters +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xbaebaf40 mlx5_core_modify_tis +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xbb081c3d mlx5_debug_qp_add +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xbbce050a mlx5_put_uars_page +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xbbe20b9a mlx5_lag_get_roce_netdev +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xbeffea5f mlx5_rl_add_rate +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xbf012b67 mlx5_get_fdb_sub_ns +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xc1d8fbdb mlx5_core_dealloc_pd +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xc445019c mlx5_rdma_rn_get_params +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xc47cc0ff mlx5_core_destroy_cq +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xc5914161 mlx5_cmd_cleanup_async_ctx +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xc6634c45 mlx5_nic_vport_disable_roce +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xc6990060 mlx5_eswitch_vport_rep +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xc6ebdb50 mlx5_qp_debugfs_init +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xc994d03d mlx5_eq_update_ci +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xcab83acd mlx5_rl_is_in_range +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xcae6d8e2 mlx5_comp_irq_get_affinity_mask +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xcc214512 mlx5_core_modify_cq_moderation +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xcc8630d8 mlx5_cmd_exec_polling +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xcd6d1eb6 mlx5_cmd_destroy_vport_lag +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xcef97576 mlx5_eswitch_register_vport_reps +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xd02008f1 mlx5_create_auto_grouped_flow_table +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xd2a8c715 mlx5_notifier_unregister +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xe1af8e40 mlx5_rl_add_rate_raw +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xe28eeaa0 mlx5_lag_is_sriov +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xe2f419b9 mlx5_lag_is_active +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xe654e430 mlx5_eq_enable +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xe76409f6 mlx5_core_attach_mcg +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xe7c0b035 mlx5_eswitch_get_vport_metadata_for_match +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xeab3babb mlx5_debugfs_root +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xecc04a56 mlx5_fs_remove_rx_underlay_qpn +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xed21e598 mlx5_core_query_sq +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xed504735 mlx5_modify_header_dealloc +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xef9f0714 mlx5_core_modify_rq +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xefec61c3 mlx5_qp_debugfs_cleanup +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xf1eeca40 __tracepoint_mlx5_fs_del_fg +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xf25a8e3b mlx5_fpga_sbu_conn_create +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xfb518f6c mlx5_unregister_interface +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xfcb2fecc mlx5_eswitch_add_send_to_vport_rule +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xfd014900 mlx5_cmd_set_state +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xff05e262 __tracepoint_mlx5_fs_del_rule +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xff8e1061 mlx5_lag_get_slave_port +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxfw/mlxfw 0x863d4587 mlxfw_firmware_flash +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0x01802d66 mlxsw_core_driver_unregister +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0x02998acf mlxsw_afa_block_append_counter +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 0x04538d30 mlxsw_core_port_eth_set +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0x07abcc0c mlxsw_afa_block_append_trap +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0x0ca34ccf mlxsw_core_max_ports +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0x0e2b5842 mlxsw_afa_block_append_vlan_modify +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0x0e81c09c mlxsw_afk_destroy +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0x0fb457da mlxsw_core_trap_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 0x19fa5852 mlxsw_core_flush_owq +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0x1b647733 mlxsw_core_trap_state_set +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 0x2c68ced3 mlxsw_core_read_frc_h +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0x2decde87 mlxsw_core_fw_flash_start +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0x2f2c4887 mlxsw_afa_block_append_qos_switch_prio +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0x2f47516e mlxsw_core_rx_listener_register +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0x33f201c3 mlxsw_core_skb_receive +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0x35ba2254 mlxsw_afk_values_add_u32 +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0x3f123442 mlxsw_core_kvd_sizes_get +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0x3f672008 mlxsw_reg_trans_write +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0x41055a45 mlxsw_core_event_listener_unregister +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 0x47fd6eee mlxsw_core_fw_flash_end +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0x4a6ed376 mlxsw_core_port_fini +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0x4df7c37d mlxsw_afa_block_append_mirror +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0x4f93c312 mlxsw_env_get_module_eeprom +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0x56be982b mlxsw_core_port_devlink_port_get +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0x57e736af mlxsw_cmd_exec +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0x5cf3dd79 mlxsw_core_bus_device_unregister +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0x5ff17b5c mlxsw_afa_block_destroy +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0x615ef5fc mlxsw_afa_block_append_qos_dscp +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0x618a30ab mlxsw_afa_block_commit +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0x62a06080 mlxsw_core_trap_unregister +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0x63874d4c mlxsw_core_port_driver_priv +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0x65e16da4 mlxsw_afk_key_info_get +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0x692ac04e mlxsw_afk_create +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0x71e1d813 mlxsw_core_port_clear +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0x73cf1d7a mlxsw_core_res_get +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0x749556a2 mlxsw_afk_key_info_subset +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0x76a65e3b mlxsw_core_port_init +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0x77768221 mlxsw_core_module_max_width +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0x77d83398 mlxsw_core_read_frc_l +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 0x858c30d0 mlxsw_afa_block_create +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0x8854d198 mlxsw_reg_write +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0x8979a400 mlxsw_core_ptp_transmitted +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0x8ba5fa7e mlxsw_core_lag_mapping_set +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0x963cfb6a mlxsw_core_resources_query +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 0x9e41f494 mlxsw_afk_encode +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0xa3d0d2b6 mlxsw_afa_block_append_fwd +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0xa73eb78b mlxsw_afa_create +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0xa7765e88 mlxsw_reg_query +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0xa7ccb62a mlxsw_afa_block_append_qos_dsfield +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0xa853a7d9 mlxsw_core_driver_register +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0xaa600760 mlxsw_reg_trans_query +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0xb0717797 mlxsw_afa_block_append_fid_set +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0xb2f24677 mlxsw_core_res_valid +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0xb5e762fa mlxsw_afk_values_add_buf +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 0xb75ef25e mlxsw_core_skb_transmit +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0xba05b3b0 mlxsw_core_emad_string_tlv_enable +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0xbbd7a457 mlxsw_core_schedule_work +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0xbc222a8d mlxsw_afk_clear +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0xbe82d6cc mlxsw_env_get_module_info +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0xbfb7df3c mlxsw_core_driver_priv +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0xbfd01f33 mlxsw_core_port_ib_set +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0xc37fb52e mlxsw_core_bus_device_register +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0xc5b67467 mlxsw_core_rx_listener_unregister +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0xc9c2e4cc mlxsw_core_lag_mapping_clear +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 0xcd9a40a4 mlxsw_afa_block_append_drop +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0xd1a82f0b mlxsw_core_lag_mapping_get +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0xd252e62d mlxsw_core_skb_transmit_busy +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 0xd9f711ae mlxsw_afa_block_append_mcrouter +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0xdc415cf1 mlxsw_afa_block_continue +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 0xdeff4950 mlxsw_core_event_listener_register +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0xe16986dd mlxsw_afa_block_activity_get +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0xeca0348c mlxsw_core_schedule_dw +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0xecab212a mlxsw_afa_cookie_lookup +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0xf2ca3bae mlxsw_core_res_query_enabled +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0xf4909bea mlxsw_core_port_type_get +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0xf7fbba9f mlxsw_afa_block_append_qos_ecn +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0xff007c25 mlxsw_core_cpu_port_fini +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_i2c 0x7501f652 mlxsw_i2c_driver_unregister +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_i2c 0x772c7d65 mlxsw_i2c_driver_register +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_pci 0x95f3197e mlxsw_pci_driver_register +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_pci 0xec706f8d mlxsw_pci_driver_unregister +EXPORT_SYMBOL drivers/net/ethernet/mscc/mscc_ocelot_common 0x0652a14e ocelot_port_vlan_filtering +EXPORT_SYMBOL drivers/net/ethernet/mscc/mscc_ocelot_common 0x0b150222 ocelot_netdevice_nb +EXPORT_SYMBOL drivers/net/ethernet/mscc/mscc_ocelot_common 0x1115bc6f ocelot_set_ageing_time +EXPORT_SYMBOL drivers/net/ethernet/mscc/mscc_ocelot_common 0x11677db6 ocelot_port_readl +EXPORT_SYMBOL drivers/net/ethernet/mscc/mscc_ocelot_common 0x166fc5b2 ocelot_deinit_timestamp +EXPORT_SYMBOL drivers/net/ethernet/mscc/mscc_ocelot_common 0x16d18e37 ocelot_init_port +EXPORT_SYMBOL drivers/net/ethernet/mscc/mscc_ocelot_common 0x1c2e990c ocelot_port_bridge_join +EXPORT_SYMBOL drivers/net/ethernet/mscc/mscc_ocelot_common 0x1e04ffe2 ocelot_hwstamp_get +EXPORT_SYMBOL drivers/net/ethernet/mscc/mscc_ocelot_common 0x1f858668 ocelot_get_txtstamp +EXPORT_SYMBOL drivers/net/ethernet/mscc/mscc_ocelot_common 0x2ceff2f2 ocelot_bridge_stp_state_set +EXPORT_SYMBOL drivers/net/ethernet/mscc/mscc_ocelot_common 0x2f7701cf ocelot_regmap_init +EXPORT_SYMBOL drivers/net/ethernet/mscc/mscc_ocelot_common 0x31775dd8 ocelot_port_policer_del +EXPORT_SYMBOL drivers/net/ethernet/mscc/mscc_ocelot_common 0x3a5703fe ocelot_get_ethtool_stats +EXPORT_SYMBOL drivers/net/ethernet/mscc/mscc_ocelot_common 0x43a5f73b ocelot_get_ts_info +EXPORT_SYMBOL drivers/net/ethernet/mscc/mscc_ocelot_common 0x446d053b ocelot_port_add_txtstamp_skb +EXPORT_SYMBOL drivers/net/ethernet/mscc/mscc_ocelot_common 0x4811987c ocelot_get_max_mtu +EXPORT_SYMBOL drivers/net/ethernet/mscc/mscc_ocelot_common 0x49cba47a ocelot_hwstamp_set +EXPORT_SYMBOL drivers/net/ethernet/mscc/mscc_ocelot_common 0x52894748 ocelot_port_bridge_leave +EXPORT_SYMBOL drivers/net/ethernet/mscc/mscc_ocelot_common 0x5bea2849 ocelot_get_strings +EXPORT_SYMBOL drivers/net/ethernet/mscc/mscc_ocelot_common 0x6a7ba071 ocelot_port_disable +EXPORT_SYMBOL drivers/net/ethernet/mscc/mscc_ocelot_common 0x741a4082 ocelot_fdb_del +EXPORT_SYMBOL drivers/net/ethernet/mscc/mscc_ocelot_common 0x8c4be7f8 ocelot_port_enable +EXPORT_SYMBOL drivers/net/ethernet/mscc/mscc_ocelot_common 0x8c75d641 ocelot_ptp_gettime64 +EXPORT_SYMBOL drivers/net/ethernet/mscc/mscc_ocelot_common 0x932d7b28 __ocelot_read_ix +EXPORT_SYMBOL drivers/net/ethernet/mscc/mscc_ocelot_common 0x957d637c ocelot_ptp_verify +EXPORT_SYMBOL drivers/net/ethernet/mscc/mscc_ocelot_common 0x969f1a7d ocelot_vlan_add +EXPORT_SYMBOL drivers/net/ethernet/mscc/mscc_ocelot_common 0xa2101149 ocelot_fdb_dump +EXPORT_SYMBOL drivers/net/ethernet/mscc/mscc_ocelot_common 0xb53528b4 ocelot_probe_port +EXPORT_SYMBOL drivers/net/ethernet/mscc/mscc_ocelot_common 0xb7743d62 ocelot_ptp_enable +EXPORT_SYMBOL drivers/net/ethernet/mscc/mscc_ocelot_common 0xb833df89 __ocelot_rmw_ix +EXPORT_SYMBOL drivers/net/ethernet/mscc/mscc_ocelot_common 0xbd3e6139 ocelot_init +EXPORT_SYMBOL drivers/net/ethernet/mscc/mscc_ocelot_common 0xc524a082 ocelot_adjust_link +EXPORT_SYMBOL drivers/net/ethernet/mscc/mscc_ocelot_common 0xc9a541af ocelot_get_sset_count +EXPORT_SYMBOL drivers/net/ethernet/mscc/mscc_ocelot_common 0xcaf793bd ocelot_vlan_del +EXPORT_SYMBOL drivers/net/ethernet/mscc/mscc_ocelot_common 0xce541a95 __ocelot_write_ix +EXPORT_SYMBOL drivers/net/ethernet/mscc/mscc_ocelot_common 0xd0348add ocelot_switchdev_nb +EXPORT_SYMBOL drivers/net/ethernet/mscc/mscc_ocelot_common 0xd10aa597 ocelot_port_policer_add +EXPORT_SYMBOL drivers/net/ethernet/mscc/mscc_ocelot_common 0xd9c67300 ocelot_ptp_adjfine +EXPORT_SYMBOL drivers/net/ethernet/mscc/mscc_ocelot_common 0xdb35dd68 ocelot_port_set_maxlen +EXPORT_SYMBOL drivers/net/ethernet/mscc/mscc_ocelot_common 0xde704725 ocelot_fdb_add +EXPORT_SYMBOL drivers/net/ethernet/mscc/mscc_ocelot_common 0xdf0999ae ocelot_deinit +EXPORT_SYMBOL drivers/net/ethernet/mscc/mscc_ocelot_common 0xe48587c0 ocelot_init_timestamp +EXPORT_SYMBOL drivers/net/ethernet/mscc/mscc_ocelot_common 0xe54a91e8 ocelot_switchdev_blocking_nb +EXPORT_SYMBOL drivers/net/ethernet/mscc/mscc_ocelot_common 0xec5ab6d4 ocelot_chip_init +EXPORT_SYMBOL drivers/net/ethernet/mscc/mscc_ocelot_common 0xed17a3d2 ocelot_ptp_adjtime +EXPORT_SYMBOL drivers/net/ethernet/mscc/mscc_ocelot_common 0xf1ff9348 ocelot_configure_cpu +EXPORT_SYMBOL drivers/net/ethernet/mscc/mscc_ocelot_common 0xf32d75de ocelot_port_writel +EXPORT_SYMBOL drivers/net/ethernet/mscc/mscc_ocelot_common 0xf470eea4 ocelot_ptp_settime64 +EXPORT_SYMBOL drivers/net/ethernet/mscc/mscc_ocelot_common 0xff083c15 ocelot_regfields_init +EXPORT_SYMBOL drivers/net/ethernet/qlogic/qed/qed 0x15e81ba5 qed_get_fcoe_ops +EXPORT_SYMBOL drivers/net/ethernet/qlogic/qed/qed 0x4a2458f5 qed_get_eth_ops +EXPORT_SYMBOL drivers/net/ethernet/qlogic/qed/qed 0x4d332061 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 0x992e03d0 qed_put_fcoe_ops +EXPORT_SYMBOL drivers/net/ethernet/qlogic/qed/qed 0x9eeeef48 qed_put_eth_ops +EXPORT_SYMBOL drivers/net/hamradio/hdlcdrv 0x29203463 hdlcdrv_arbitrate +EXPORT_SYMBOL drivers/net/hamradio/hdlcdrv 0x85d715b6 hdlcdrv_unregister +EXPORT_SYMBOL drivers/net/hamradio/hdlcdrv 0xbb63b776 hdlcdrv_transmitter +EXPORT_SYMBOL drivers/net/hamradio/hdlcdrv 0xe7bc6980 hdlcdrv_register +EXPORT_SYMBOL drivers/net/hamradio/hdlcdrv 0xee24d545 hdlcdrv_receiver +EXPORT_SYMBOL drivers/net/mdio 0x3e17f466 mdio_set_flag +EXPORT_SYMBOL drivers/net/mdio 0x60443957 mdio45_probe +EXPORT_SYMBOL drivers/net/mdio 0x63e0fee5 mdio45_links_ok +EXPORT_SYMBOL drivers/net/mdio 0x652fb0b6 mdio45_ethtool_ksettings_get_npage +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/mii 0x16807991 mii_nway_restart +EXPORT_SYMBOL drivers/net/mii 0x2d82dff6 mii_ethtool_gset +EXPORT_SYMBOL drivers/net/mii 0x2df8d3e0 mii_check_media +EXPORT_SYMBOL drivers/net/mii 0x3ed285fa mii_check_gmii_support +EXPORT_SYMBOL drivers/net/mii 0x78e9eb27 generic_mii_ioctl +EXPORT_SYMBOL drivers/net/mii 0x82281397 mii_check_link +EXPORT_SYMBOL drivers/net/mii 0xb3a6c07e mii_ethtool_get_link_ksettings +EXPORT_SYMBOL drivers/net/mii 0xcfa7f02d mii_link_ok +EXPORT_SYMBOL drivers/net/mii 0xdbbd6708 mii_ethtool_sset +EXPORT_SYMBOL drivers/net/mii 0xed8aab37 mii_ethtool_set_link_ksettings +EXPORT_SYMBOL drivers/net/phy/bcm-phy-lib 0x74ddd140 bcm54xx_auxctl_write +EXPORT_SYMBOL drivers/net/phy/mdio-bitbang 0xaf6d20cf alloc_mdio_bitbang +EXPORT_SYMBOL drivers/net/phy/mdio-bitbang 0xf2a7d68c free_mdio_bitbang +EXPORT_SYMBOL drivers/net/ppp/pppox 0x1ba44107 register_pppox_proto +EXPORT_SYMBOL drivers/net/ppp/pppox 0xe0ff7a18 unregister_pppox_proto +EXPORT_SYMBOL drivers/net/ppp/pppox 0xf0279863 pppox_ioctl +EXPORT_SYMBOL drivers/net/ppp/pppox 0xf06c1deb pppox_unbind_sock +EXPORT_SYMBOL drivers/net/sungem_phy 0x1d5dce9a sungem_phy_probe +EXPORT_SYMBOL drivers/net/team/team 0x081794fe team_modeop_port_enter +EXPORT_SYMBOL drivers/net/team/team 0x10cc7148 team_options_register +EXPORT_SYMBOL drivers/net/team/team 0x1c3d8432 team_options_unregister +EXPORT_SYMBOL drivers/net/team/team 0x3c26fff9 team_options_change_check +EXPORT_SYMBOL drivers/net/team/team 0x6364f916 team_modeop_port_change_dev_addr +EXPORT_SYMBOL drivers/net/team/team 0xaeab2eda team_option_inst_set_change +EXPORT_SYMBOL drivers/net/team/team 0xb78a11f7 team_mode_unregister +EXPORT_SYMBOL drivers/net/team/team 0xf97b4ae5 team_mode_register +EXPORT_SYMBOL drivers/net/usb/usbnet 0xc0bc036e usbnet_manage_power +EXPORT_SYMBOL drivers/net/usb/usbnet 0xd4ea7cec usbnet_link_change +EXPORT_SYMBOL drivers/net/usb/usbnet 0xdff98597 usbnet_device_suggests_idle +EXPORT_SYMBOL drivers/net/wan/hdlc 0x023b4059 unregister_hdlc_protocol +EXPORT_SYMBOL drivers/net/wan/hdlc 0x0b3914a5 register_hdlc_protocol +EXPORT_SYMBOL drivers/net/wan/hdlc 0x51a43c9c hdlc_start_xmit +EXPORT_SYMBOL drivers/net/wan/hdlc 0x54198214 hdlc_close +EXPORT_SYMBOL drivers/net/wan/hdlc 0x54f30280 alloc_hdlcdev +EXPORT_SYMBOL drivers/net/wan/hdlc 0x6137ff00 attach_hdlc_protocol +EXPORT_SYMBOL drivers/net/wan/hdlc 0x6a78e6e5 hdlc_open +EXPORT_SYMBOL drivers/net/wan/hdlc 0x78ffb215 detach_hdlc_protocol +EXPORT_SYMBOL drivers/net/wan/hdlc 0x8e9209e8 hdlc_ioctl +EXPORT_SYMBOL drivers/net/wan/hdlc 0xa8cb7859 unregister_hdlc_device +EXPORT_SYMBOL drivers/net/wimax/i2400m/i2400m 0x57849117 i2400m_unknown_barker +EXPORT_SYMBOL drivers/net/wireless/ath/ath 0x108b188f ath_is_49ghz_allowed +EXPORT_SYMBOL drivers/net/wireless/ath/ath 0x2095445d ath_reg_notifier_apply +EXPORT_SYMBOL drivers/net/wireless/ath/ath 0x2fb995d1 ath_hw_cycle_counters_update +EXPORT_SYMBOL drivers/net/wireless/ath/ath 0x33a377e9 ath_is_mybeacon +EXPORT_SYMBOL drivers/net/wireless/ath/ath 0x42f63add ath_hw_get_listen_time +EXPORT_SYMBOL drivers/net/wireless/ath/ath 0x44a873c5 dfs_pattern_detector_init +EXPORT_SYMBOL drivers/net/wireless/ath/ath 0x4571aea8 ath_is_world_regd +EXPORT_SYMBOL drivers/net/wireless/ath/ath 0x58e53e19 ath_hw_keyreset +EXPORT_SYMBOL drivers/net/wireless/ath/ath 0x62883818 ath_key_config +EXPORT_SYMBOL drivers/net/wireless/ath/ath 0x9912286a ath_key_delete +EXPORT_SYMBOL drivers/net/wireless/ath/ath 0x9a9f6ac0 ath_printk +EXPORT_SYMBOL drivers/net/wireless/ath/ath 0xa18f224e ath_regd_find_country_by_name +EXPORT_SYMBOL drivers/net/wireless/ath/ath 0xb5a2fd76 ath_rxbuf_alloc +EXPORT_SYMBOL drivers/net/wireless/ath/ath 0xb6588ba6 ath_bus_type_strings +EXPORT_SYMBOL drivers/net/wireless/ath/ath 0xcdd121c5 ath_hw_setbssidmask +EXPORT_SYMBOL drivers/net/wireless/ath/ath 0xceeae165 ath_regd_init +EXPORT_SYMBOL drivers/net/wireless/ath/ath 0xf08b651e ath_regd_get_band_ctl +EXPORT_SYMBOL drivers/net/wireless/ath/ath10k/ath10k_core 0x015e5db2 ath10k_debug_mask +EXPORT_SYMBOL drivers/net/wireless/ath/ath10k/ath10k_core 0x01e161d3 ath10k_ce_free_pipe +EXPORT_SYMBOL drivers/net/wireless/ath/ath10k/ath10k_core 0x05e15f31 ath10k_ce_rx_update_write_idx +EXPORT_SYMBOL drivers/net/wireless/ath/ath10k/ath10k_core 0x0b42424c ath10k_ce_deinit_pipe +EXPORT_SYMBOL drivers/net/wireless/ath/ath10k/ath10k_core 0x0d61036b ath10k_ce_num_free_src_entries +EXPORT_SYMBOL drivers/net/wireless/ath/ath10k/ath10k_core 0x15c02208 ath10k_core_unregister +EXPORT_SYMBOL drivers/net/wireless/ath/ath10k/ath10k_core 0x1689c573 ath10k_coredump_get_mem_layout +EXPORT_SYMBOL drivers/net/wireless/ath/ath10k/ath10k_core 0x1f5e0a36 ath10k_core_free_board_files +EXPORT_SYMBOL drivers/net/wireless/ath/ath10k/ath10k_core 0x2e5dc835 ath10k_core_create +EXPORT_SYMBOL drivers/net/wireless/ath/ath10k/ath10k_core 0x2e963701 ath10k_htt_hif_tx_complete +EXPORT_SYMBOL drivers/net/wireless/ath/ath10k/ath10k_core 0x2ee05777 ath10k_htt_rx_pktlog_completion_handler +EXPORT_SYMBOL drivers/net/wireless/ath/ath10k/ath10k_core 0x39244757 ath10k_ce_revoke_recv_next +EXPORT_SYMBOL drivers/net/wireless/ath/ath10k/ath10k_core 0x3b93d811 ath10k_ce_disable_interrupts +EXPORT_SYMBOL drivers/net/wireless/ath/ath10k/ath10k_core 0x407dc2ea ath10k_mac_tx_push_pending +EXPORT_SYMBOL drivers/net/wireless/ath/ath10k/ath10k_core 0x49dcaef2 ath10k_err +EXPORT_SYMBOL drivers/net/wireless/ath/ath10k/ath10k_core 0x4f939a0e ath10k_htc_tx_completion_handler +EXPORT_SYMBOL drivers/net/wireless/ath/ath10k/ath10k_core 0x514b4970 ath10k_core_register +EXPORT_SYMBOL drivers/net/wireless/ath/ath10k/ath10k_core 0x5bf95614 ath10k_ce_completed_send_next +EXPORT_SYMBOL drivers/net/wireless/ath/ath10k/ath10k_core 0x685510e8 ath10k_htc_notify_tx_completion +EXPORT_SYMBOL drivers/net/wireless/ath/ath10k/ath10k_core 0x696fb7e0 ath10k_ce_init_pipe +EXPORT_SYMBOL drivers/net/wireless/ath/ath10k/ath10k_core 0x6a0aeb13 ath10k_ce_enable_interrupts +EXPORT_SYMBOL drivers/net/wireless/ath/ath10k/ath10k_core 0x6c87ba3d ath10k_ce_cancel_send_next +EXPORT_SYMBOL drivers/net/wireless/ath/ath10k/ath10k_core 0x70ccd606 ath10k_coredump_new +EXPORT_SYMBOL drivers/net/wireless/ath/ath10k/ath10k_core 0x75c1608c ath10k_ce_completed_send_next_nolock +EXPORT_SYMBOL drivers/net/wireless/ath/ath10k/ath10k_core 0x760232ef ath10k_ce_alloc_rri +EXPORT_SYMBOL drivers/net/wireless/ath/ath10k/ath10k_core 0x7a4de69e ath10k_ce_dump_registers +EXPORT_SYMBOL drivers/net/wireless/ath/ath10k/ath10k_core 0x7c797c71 ath10k_core_fetch_board_file +EXPORT_SYMBOL drivers/net/wireless/ath/ath10k/ath10k_core 0x80907970 ath10k_htt_rx_hl_indication +EXPORT_SYMBOL drivers/net/wireless/ath/ath10k/ath10k_core 0x812f7465 ath10k_ce_completed_recv_next_nolock +EXPORT_SYMBOL drivers/net/wireless/ath/ath10k/ath10k_core 0x86c9f0e7 __tracepoint_ath10k_log_dbg +EXPORT_SYMBOL drivers/net/wireless/ath/ath10k/ath10k_core 0x89162a58 ath10k_info +EXPORT_SYMBOL drivers/net/wireless/ath/ath10k/ath10k_core 0x8f41ad64 ath10k_ce_completed_recv_next +EXPORT_SYMBOL drivers/net/wireless/ath/ath10k/ath10k_core 0xa235a9e8 ath10k_ce_free_rri +EXPORT_SYMBOL drivers/net/wireless/ath/ath10k/ath10k_core 0xa8517ce1 ath10k_core_start +EXPORT_SYMBOL drivers/net/wireless/ath/ath10k/ath10k_core 0xa8ce2623 ath10k_htt_t2h_msg_handler +EXPORT_SYMBOL drivers/net/wireless/ath/ath10k/ath10k_core 0xabd5666b ath10k_core_stop +EXPORT_SYMBOL drivers/net/wireless/ath/ath10k/ath10k_core 0xaed7e2e4 ath10k_core_destroy +EXPORT_SYMBOL drivers/net/wireless/ath/ath10k/ath10k_core 0xb792b40e ath10k_ce_send +EXPORT_SYMBOL drivers/net/wireless/ath/ath10k/ath10k_core 0xba589597 ath10k_htt_txrx_compl_task +EXPORT_SYMBOL drivers/net/wireless/ath/ath10k/ath10k_core 0xba6c0a92 __ath10k_ce_send_revert +EXPORT_SYMBOL drivers/net/wireless/ath/ath10k/ath10k_core 0xbe016b71 ath10k_ce_send_nolock +EXPORT_SYMBOL drivers/net/wireless/ath/ath10k/ath10k_core 0xc71a0748 ath10k_htc_process_trailer +EXPORT_SYMBOL drivers/net/wireless/ath/ath10k/ath10k_core 0xc7840aa4 __ath10k_ce_rx_num_free_bufs +EXPORT_SYMBOL drivers/net/wireless/ath/ath10k/ath10k_core 0xcc1e6b6a ath10k_print_driver_info +EXPORT_SYMBOL drivers/net/wireless/ath/ath10k/ath10k_core 0xd4354ff1 ath10k_ce_rx_post_buf +EXPORT_SYMBOL drivers/net/wireless/ath/ath10k/ath10k_core 0xd78f60cd ath10k_warn +EXPORT_SYMBOL drivers/net/wireless/ath/ath10k/ath10k_core 0xdb4dc706 ath10k_ce_alloc_pipe +EXPORT_SYMBOL drivers/net/wireless/ath/ath10k/ath10k_core 0xdbef98cc ath10k_ce_per_engine_service +EXPORT_SYMBOL drivers/net/wireless/ath/ath10k/ath10k_core 0xe3e88e19 ath10k_htc_rx_completion_handler +EXPORT_SYMBOL drivers/net/wireless/ath/ath10k/ath10k_core 0xf8218933 ath10k_ce_per_engine_service_any +EXPORT_SYMBOL drivers/net/wireless/ath/ath11k/ath11k 0x4997033f ath11k_core_get_hw_mac_id +EXPORT_SYMBOL drivers/net/wireless/ath/ath11k/ath11k 0x611c1316 ath11k_dp_service_srng +EXPORT_SYMBOL drivers/net/wireless/ath/ath6kl/ath6kl_core 0x0d02b15f ath6kl_core_tx_complete +EXPORT_SYMBOL drivers/net/wireless/ath/ath6kl/ath6kl_core 0x1354043d ath6kl_warn +EXPORT_SYMBOL drivers/net/wireless/ath/ath6kl/ath6kl_core 0x167617dd ath6kl_core_rx_complete +EXPORT_SYMBOL drivers/net/wireless/ath/ath6kl/ath6kl_core 0x3502feef ath6kl_info +EXPORT_SYMBOL drivers/net/wireless/ath/ath6kl/ath6kl_core 0x509b2fc8 ath6kl_core_cleanup +EXPORT_SYMBOL drivers/net/wireless/ath/ath6kl/ath6kl_core 0x561754aa ath6kl_core_create +EXPORT_SYMBOL drivers/net/wireless/ath/ath6kl/ath6kl_core 0x5ca3e357 ath6kl_stop_txrx +EXPORT_SYMBOL drivers/net/wireless/ath/ath6kl/ath6kl_core 0x650dc3ef ath6kl_core_destroy +EXPORT_SYMBOL drivers/net/wireless/ath/ath6kl/ath6kl_core 0x8176cec7 ath6kl_core_init +EXPORT_SYMBOL drivers/net/wireless/ath/ath6kl/ath6kl_core 0x8f2ee6db ath6kl_hif_intr_bh_handler +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 0xd1babf4e ath6kl_read_tgt_stats +EXPORT_SYMBOL drivers/net/wireless/ath/ath6kl/ath6kl_core 0xec4a2967 ath6kl_cfg80211_suspend +EXPORT_SYMBOL drivers/net/wireless/ath/ath6kl/ath6kl_core 0xff77fb49 ath6kl_cfg80211_resume +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_common 0x00e69197 ath9k_cmn_get_hw_crypto_keytype +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_common 0x046fe41f ath9k_cmn_init_crypto +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_common 0x29862560 ath9k_cmn_update_txpow +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_common 0x2e3fa3cb ath9k_cmn_spectral_init_debug +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_common 0x3c1eb461 ath_cmn_process_fft +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_common 0x545be0c0 ath9k_cmn_beacon_config_sta +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_common 0x6a669cc7 ath9k_cmn_spectral_scan_trigger +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_common 0x6dcced82 ath9k_cmn_get_channel +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_common 0x831d262d ath9k_cmn_spectral_scan_config +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_common 0x960b6f41 ath9k_cmn_spectral_deinit_debug +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_common 0x9d9e3401 ath9k_cmn_reload_chainmask +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_common 0x9e11e756 ath9k_cmn_debug_phy_err +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_common 0xb0e2445a ath9k_cmn_rx_skb_postprocess +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_common 0xb76fccc7 ath9k_cmn_debug_stat_rx +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_common 0xb96c301b ath9k_cmn_rx_accept +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_common 0xc5600525 ath9k_cmn_process_rate +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_common 0xc6d15147 ath9k_cmn_beacon_config_ap +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_common 0xc790a1d8 ath9k_cmn_debug_modal_eeprom +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_common 0xce477477 ath9k_cmn_process_rssi +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_common 0xd2981357 ath9k_cmn_count_streams +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_common 0xe39206c0 ath9k_cmn_debug_base_eeprom +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_common 0xec1a188a ath9k_cmn_debug_recv +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_common 0xf64947ef ath9k_cmn_init_channels_rates +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_common 0xf7d2482d ath9k_cmn_setup_ht_cap +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_common 0xf8ac3ca5 ath9k_cmn_beacon_config_adhoc +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x01591a40 ath9k_hw_btcoex_init_scheme +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x064e5b8f ar9003_mci_state +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x068d4447 ar9003_mci_get_next_gpm_offset +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x0b150b52 ath9k_hw_getnf +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x0b8cffe9 ath9k_hw_check_nav +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x0bccfea4 ath9k_hw_btcoex_init_mci +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x0d228ded ar9003_paprd_setup_gain_table +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x0e6a5a7c ath9k_hw_gettsf32 +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x0f77dafc ath9k_hw_get_tsf_offset +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x13524195 ath9k_hw_get_txq_props +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x1a169e9b ath9k_hw_wait +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x1a367589 ath9k_hw_bstuck_nfcal +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x1b06f630 ath9k_hw_init_global_settings +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x1b9d4a7e ath9k_hw_stopdmarecv +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x1caf74ef ath9k_hw_computetxtime +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x1e1be53a ath9k_hw_gettxbuf +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x22605df5 ar9003_mci_setup +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x24a39bf6 ath9k_hw_btcoex_deinit +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x25e95711 ath9k_hw_gpio_free +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x30c5aa9c ath9k_hw_reset_tsf +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x375b5fcb ath9k_hw_gen_timer_start +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x3a9a604f ath9k_hw_wow_wakeup +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x3d024d97 ath9k_hw_reset +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x3ed0f082 ath9k_hw_addrxbuf_edma +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x3fc5cbcb ath9k_hw_init +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x4046a7b0 ath9k_hw_beaconq_setup +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x40943f42 ath9k_hw_disable +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x44bb2567 ath9k_hw_abortpcurecv +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x484daac8 ath9k_hw_phy_disable +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x4dc71c54 ath9k_hw_resettxqueue +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x4e328b4a ath_gen_timer_free +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x5144d1c1 ath9k_hw_kill_interrupts +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x51c637b6 ar9003_paprd_populate_single_table +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x5884203d ath9k_hw_disable_mib_counters +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x5900888d ath9k_hw_btcoex_init_2wire +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x5fd43c39 ath9k_hw_write_associd +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x6423e216 ath9k_hw_setantenna +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x693a8275 ath9k_hw_setup_statusring +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x6d86eec4 ar9003_mci_set_bt_version +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x6dbe2702 ath9k_hw_setuprxdesc +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x6dcd79c7 ath9k_hw_stop_dma_queue +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x7011d010 ath9k_hw_gpio_request_out +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x722ea2b3 ath9k_hw_getchan_noise +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x72a4b20b ath9k_hw_set_tsfadjust +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x73a041bb ath9k_hw_startpcureceive +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x73bfabfc ath9k_hw_setrxfilter +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x7835a359 ath9k_hw_getrxfilter +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x7e63a49f ath9k_hw_btcoex_bt_stomp +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x7fa0a718 ath9k_hw_disable_interrupts +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x803bc441 ath9k_hw_enable_interrupts +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x81076c60 ath9k_hw_putrxbuf +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x816ce340 ath9k_hw_gettsf64 +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x82c14b1a ath9k_hw_set_rx_bufsize +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x847f1021 ar9003_get_pll_sqsum_dvc +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x8506c9be ath9k_hw_set_txq_props +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x8749c220 ath9k_hw_btcoex_disable +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x88a184dd ath9k_hw_btcoex_set_concur_txprio +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x88ccd3a6 ar9003_mci_cleanup +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x8a445872 ath9k_hw_process_rxdesc_edma +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x8dcdc1a0 ar9003_paprd_enable +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x935958fb ath9k_hw_gpio_get +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x9406eae3 ath9k_hw_settsf64 +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x97fda6b1 ath9k_hw_set_sta_beacon_timers +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x98cbd96c ath9k_hw_setuptxqueue +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x9f0b9dbc ath9k_hw_setopmode +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xa004e87e ath9k_hw_releasetxqueue +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xa3451891 ath9k_hw_reset_calvalid +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xa54619ab ath9k_hw_gpio_request_in +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xa9bf6a1b ath_gen_timer_alloc +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xad359994 ar9003_paprd_create_curve +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xae480bb5 ath9k_hw_btcoex_set_weight +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xb1699bf9 ar9003_paprd_init_table +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xb2e3eadc ar9003_paprd_is_done +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xb4a0edce ath9k_hw_deinit +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xb5052f81 ath9k_hw_beaconinit +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xb6cafe59 ath9k_hw_set_tx_filter +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xbf13cca2 ath9k_hw_loadnf +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xc01b9330 ath9k_hw_btcoex_init_3wire +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xc24f57b1 ar9003_hw_bb_watchdog_check +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xc2e742b4 ath9k_hw_set_txpowerlimit +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xc53d08b8 ath9k_hw_rxprocdesc +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xc88a604e ath9k_hw_numtxpending +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xca4ae78a ar9003_mci_send_wlan_channels +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xcaa61a45 ar9003_hw_bb_watchdog_dbg_info +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xcbb2464f ar9003_is_paprd_enabled +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xd4513735 ath9k_hw_init_btcoex_hw +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xd4f946dd ath9k_hw_updatetxtriglevel +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xd73c670f ar9003_hw_disable_phy_restart +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xd7783f4c ath9k_hw_resume_interrupts +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xd855134d ath9k_hw_intrpend +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xdbe992d3 ath9k_hw_puttxbuf +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xe626ccba ath9k_hw_wow_apply_pattern +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xe6623192 ath9k_hw_check_alive +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xe8407a6f ath9k_hw_abort_tx_dma +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xeabe4177 ath9k_hw_set_interrupts +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xebf0347e ar9003_mci_send_message +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xec4d2ec3 ath9k_hw_wow_enable +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xf03de70f ath9k_hw_name +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xf101970d ath9k_hw_btcoex_enable +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xf414ee91 ath9k_hw_ani_monitor +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xf5aa14f0 ath9k_hw_gen_timer_stop +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xf5af5480 ar9003_mci_get_interrupt +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xf71c92c6 ath9k_hw_txstart +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xf93af87c ath9k_hw_setmcastfilter +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xfd25ccc5 ath9k_hw_set_gpio +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xfdb3d009 ath_gen_timer_isr +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xff0e6004 ath9k_hw_setpower +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xff52d762 ath9k_hw_setrxabort +EXPORT_SYMBOL drivers/net/wireless/atmel/atmel 0x7ccb9990 atmel_open +EXPORT_SYMBOL drivers/net/wireless/atmel/atmel 0x9fc92cd1 init_atmel_card +EXPORT_SYMBOL drivers/net/wireless/atmel/atmel 0xf17300c8 stop_atmel_card +EXPORT_SYMBOL drivers/net/wireless/broadcom/brcm80211/brcmutil/brcmutil 0x0e834546 brcmu_pktq_pdeq_match +EXPORT_SYMBOL drivers/net/wireless/broadcom/brcm80211/brcmutil/brcmutil 0x1906648e brcmu_boardrev_str +EXPORT_SYMBOL drivers/net/wireless/broadcom/brcm80211/brcmutil/brcmutil 0x21337e59 brcmu_pktq_mlen +EXPORT_SYMBOL drivers/net/wireless/broadcom/brcm80211/brcmutil/brcmutil 0x37bf26f9 brcmu_pktq_flush +EXPORT_SYMBOL drivers/net/wireless/broadcom/brcm80211/brcmutil/brcmutil 0x3ee4b880 brcmu_pkt_buf_get_skb +EXPORT_SYMBOL drivers/net/wireless/broadcom/brcm80211/brcmutil/brcmutil 0x5ed918d0 brcmu_pktq_mdeq +EXPORT_SYMBOL drivers/net/wireless/broadcom/brcm80211/brcmutil/brcmutil 0x993631ef brcmu_pktq_pflush +EXPORT_SYMBOL drivers/net/wireless/broadcom/brcm80211/brcmutil/brcmutil 0x9b8b602a brcmu_pktq_pdeq_tail +EXPORT_SYMBOL drivers/net/wireless/broadcom/brcm80211/brcmutil/brcmutil 0x9bba9a5a brcmu_pktq_peek_tail +EXPORT_SYMBOL drivers/net/wireless/broadcom/brcm80211/brcmutil/brcmutil 0xa17c0ccf brcmu_dotrev_str +EXPORT_SYMBOL drivers/net/wireless/broadcom/brcm80211/brcmutil/brcmutil 0xb0a8af77 brcmu_pktq_pdeq +EXPORT_SYMBOL drivers/net/wireless/broadcom/brcm80211/brcmutil/brcmutil 0xb88717d8 brcmu_pktq_init +EXPORT_SYMBOL drivers/net/wireless/broadcom/brcm80211/brcmutil/brcmutil 0xb8e69070 brcmu_pktq_penq_head +EXPORT_SYMBOL drivers/net/wireless/broadcom/brcm80211/brcmutil/brcmutil 0xc103131b brcmu_pktq_penq +EXPORT_SYMBOL drivers/net/wireless/broadcom/brcm80211/brcmutil/brcmutil 0xd6217d91 brcmu_d11_attach +EXPORT_SYMBOL drivers/net/wireless/broadcom/brcm80211/brcmutil/brcmutil 0xe65c4bd0 brcmu_pkt_buf_free_skb +EXPORT_SYMBOL drivers/net/wireless/intel/ipw2x00/libipw 0x0a91a245 free_libipw +EXPORT_SYMBOL drivers/net/wireless/intel/ipw2x00/libipw 0x429111da libipw_wx_get_encodeext +EXPORT_SYMBOL drivers/net/wireless/intel/ipw2x00/libipw 0x47b778e2 libipw_rx_mgt +EXPORT_SYMBOL drivers/net/wireless/intel/ipw2x00/libipw 0x637d5543 libipw_get_geo +EXPORT_SYMBOL drivers/net/wireless/intel/ipw2x00/libipw 0x649045c0 libipw_freq_to_channel +EXPORT_SYMBOL drivers/net/wireless/intel/ipw2x00/libipw 0x66b42d31 libipw_wx_get_encode +EXPORT_SYMBOL drivers/net/wireless/intel/ipw2x00/libipw 0x690a6f34 alloc_libipw +EXPORT_SYMBOL drivers/net/wireless/intel/ipw2x00/libipw 0x77235afa libipw_wx_get_scan +EXPORT_SYMBOL drivers/net/wireless/intel/ipw2x00/libipw 0x90f9903f libipw_channel_to_index +EXPORT_SYMBOL drivers/net/wireless/intel/ipw2x00/libipw 0x9670f8c4 libipw_xmit +EXPORT_SYMBOL drivers/net/wireless/intel/ipw2x00/libipw 0x980e74ae libipw_get_channel_flags +EXPORT_SYMBOL drivers/net/wireless/intel/ipw2x00/libipw 0xce11a016 libipw_txb_free +EXPORT_SYMBOL drivers/net/wireless/intel/ipw2x00/libipw 0xcff8a3ed libipw_wx_set_encodeext +EXPORT_SYMBOL drivers/net/wireless/intel/ipw2x00/libipw 0xd37abf4a libipw_get_channel +EXPORT_SYMBOL drivers/net/wireless/intel/ipw2x00/libipw 0xe0481152 libipw_wx_set_encode +EXPORT_SYMBOL drivers/net/wireless/intel/ipw2x00/libipw 0xedad2785 libipw_is_valid_channel +EXPORT_SYMBOL drivers/net/wireless/intel/ipw2x00/libipw 0xeea97c0b libipw_channel_to_freq +EXPORT_SYMBOL drivers/net/wireless/intel/ipw2x00/libipw 0xf458bbb5 libipw_set_geo +EXPORT_SYMBOL drivers/net/wireless/intel/ipw2x00/libipw 0xf899d3c6 libipw_networks_age +EXPORT_SYMBOL drivers/net/wireless/intel/ipw2x00/libipw 0xfaac2a3e libipw_rx +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x01c87543 il_scan_cancel +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x0db7e15e il_apm_stop +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x0edd62ec il_mac_add_interface +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x160d0cf3 il_get_lowest_plcp +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x16359a86 il_send_cmd +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x1722d829 il_fill_probe_req +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x21618e68 il_update_stats +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x21e0ed0c il_tx_queue_init +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x23bd70ab il_send_cmd_pdu +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x24be6c98 il_irq_handle_error +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x24ff1c1e il_hdl_error +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x27369272 il_write_targ_mem +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x29a41abd il_power_update_mode +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x2bf7eea6 il_queue_space +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x2ca22e45 il_clear_ucode_stations +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x2cf8ac12 il_mac_remove_interface +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x2daafc26 il_set_decrypted_flag +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x2fed7dd8 il_set_rxon_ht +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x31f5a899 il_send_add_sta +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x340d5626 il_set_flags_for_band +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x3c4470f4 il_add_beacon_time +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x4050a56d il_init_geos +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x416bd26a il_debug_level +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x42fe0f01 il_cancel_scan_deferred_work +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x4300a58b il_mac_conf_tx +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x44a3645a il_hdl_pm_debug_stats +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x4721e7cb il_tx_cmd_protection +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x4a468217 il_set_tx_power +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x4bf59712 il_send_stats_request +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x5abb6891 il_wr_prph +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x5cace2d4 il_get_passive_dwell_time +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x5dbc3bdb il_connection_init_rx_config +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x603bbb32 il_txq_update_write_ptr +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x62647287 il_rd_prph +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x66fa3652 il_init_channel_map +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x69089dde il_leds_init +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x6cc4a273 il_free_geos +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x6e27f8bb il_read_targ_mem +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x723d0b8b il_send_bt_config +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x7366858d il_send_cmd_sync +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x73ded91f il_mac_reset_tsf +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x740d7c44 _il_poll_bit +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x77d86f9d il_mac_config +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x786245c5 il_chswitch_done +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x793445b5 il_setup_rx_scan_handlers +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x79f37acf il_full_rxon_required +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x7ab25f02 il_eeprom_free +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x7bf0ca8b il_send_rxon_timing +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x7d8020d1 il_get_free_ucode_key_idx +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x7dccfd38 il_leds_exit +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x806d0388 il_force_reset +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x806e0d08 il_tx_queue_free +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x80d97747 il_get_channel_info +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x82589592 il_check_rxon_cmd +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x827c702f il_free_channel_map +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x82ac9248 il_mac_flush +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x865f0ab5 il_rx_queue_alloc +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x8ab8e325 il_get_active_dwell_time +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x8bd5f844 il_send_cmd_pdu_async +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x954beb9e il_pm_ops +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x96d96060 il_set_rate +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x972b8e29 _il_apm_stop +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x99195a58 il_alloc_txq_mem +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x9cc714af il_bg_watchdog +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x9d2ff256 il_tx_queue_reset +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x9dcba9bc il_scan_cancel_timeout +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x9e9309a4 il_eeprom_init +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0xa2fb5d4e il_apm_init +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0xa47df13e il_get_single_channel_number +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0xa495e8d9 il_hdl_csa +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0xa56b46d0 il_set_bit +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0xa5c209d7 il_tx_queue_unmap +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0xa61f9ec4 il_restore_stations +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0xa6bd2212 il_setup_watchdog +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0xaecc7d07 il_cmd_queue_unmap +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0xb1fb34f3 il_is_ht40_tx_allowed +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0xb590ef6b il_mac_hw_scan +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0xb65510a3 il_get_cmd_string +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0xb68223e4 il_init_scan_params +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0xb7bd33ff il_isr +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0xba76742c il_rx_queue_space +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0xbc7c9f26 il_mac_bss_info_changed +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0xbf733452 il_mac_change_interface +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0xc929ad9a il_tx_cmd_complete +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0xcf817785 il_power_initialize +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0xd05e3352 il_free_txq_mem +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0xd688ac43 il_setup_scan_deferred_work +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0xd8de9571 il_dbgfs_register +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0xdd8a42f0 il_dbgfs_unregister +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0xddb482b1 il_hdl_spectrum_measurement +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0xdec51cf7 il_eeprom_query_addr +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0xdf0ee488 il_set_rxon_hwcrypto +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0xe19fec55 il_clear_bit +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0xe337643f il_usecs_to_beacons +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0xe43930e4 il_add_station_common +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0xe5edebc1 il_poll_bit +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0xe9417bf6 il_eeprom_query16 +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0xeaf24925 il_hdl_pm_sleep +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0xf15f571b il_mac_sta_remove +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0xf298ecc8 il_set_rxon_channel +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0xf43f4882 il_send_lq_cmd +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0xf6374952 il_cmd_queue_free +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0xf70a693b il_bcast_addr +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0xf7f23173 il_rx_queue_update_write_ptr +EXPORT_SYMBOL drivers/net/wireless/intel/iwlwifi/iwlwifi 0x33c2544a __tracepoint_iwlwifi_dev_ucode_wrap_event +EXPORT_SYMBOL drivers/net/wireless/intel/iwlwifi/iwlwifi 0xa44e2870 __tracepoint_iwlwifi_dev_ucode_cont_event +EXPORT_SYMBOL drivers/net/wireless/intel/iwlwifi/iwlwifi 0xab9db4d3 __tracepoint_iwlwifi_dev_ucode_event +EXPORT_SYMBOL drivers/net/wireless/intersil/hostap/hostap 0x0518e5e6 hostap_check_sta_fw_version +EXPORT_SYMBOL drivers/net/wireless/intersil/hostap/hostap 0x0ad69602 hostap_set_multicast_list_queue +EXPORT_SYMBOL drivers/net/wireless/intersil/hostap/hostap 0x13abdd5a hostap_dump_tx_header +EXPORT_SYMBOL drivers/net/wireless/intersil/hostap/hostap 0x20cebf78 hostap_add_interface +EXPORT_SYMBOL drivers/net/wireless/intersil/hostap/hostap 0x249297c9 hostap_setup_dev +EXPORT_SYMBOL drivers/net/wireless/intersil/hostap/hostap 0x31643b78 hostap_handle_sta_tx_exc +EXPORT_SYMBOL drivers/net/wireless/intersil/hostap/hostap 0x31916095 hostap_init_proc +EXPORT_SYMBOL drivers/net/wireless/intersil/hostap/hostap 0x3be9b9e2 hostap_remove_proc +EXPORT_SYMBOL drivers/net/wireless/intersil/hostap/hostap 0x4bedc392 hostap_set_hostapd_sta +EXPORT_SYMBOL drivers/net/wireless/intersil/hostap/hostap 0x554b1ba0 hostap_remove_interface +EXPORT_SYMBOL drivers/net/wireless/intersil/hostap/hostap 0x7349c90e hostap_init_data +EXPORT_SYMBOL drivers/net/wireless/intersil/hostap/hostap 0x7fb75891 hostap_dump_rx_header +EXPORT_SYMBOL drivers/net/wireless/intersil/hostap/hostap 0x8baedc91 prism2_update_comms_qual +EXPORT_SYMBOL drivers/net/wireless/intersil/hostap/hostap 0x9383f222 hostap_set_word +EXPORT_SYMBOL drivers/net/wireless/intersil/hostap/hostap 0xa5393489 hostap_info_init +EXPORT_SYMBOL drivers/net/wireless/intersil/hostap/hostap 0xa6ea6719 hostap_set_antsel +EXPORT_SYMBOL drivers/net/wireless/intersil/hostap/hostap 0xa9467d63 hostap_get_porttype +EXPORT_SYMBOL drivers/net/wireless/intersil/hostap/hostap 0xb4b77c8b hostap_80211_get_hdrlen +EXPORT_SYMBOL drivers/net/wireless/intersil/hostap/hostap 0xb9f4d0cb hostap_set_encryption +EXPORT_SYMBOL drivers/net/wireless/intersil/hostap/hostap 0xc26e8afd hostap_set_roaming +EXPORT_SYMBOL drivers/net/wireless/intersil/hostap/hostap 0xc425d6bf hostap_set_string +EXPORT_SYMBOL drivers/net/wireless/intersil/hostap/hostap 0xd0ed109f hostap_80211_rx +EXPORT_SYMBOL drivers/net/wireless/intersil/hostap/hostap 0xd5ac1491 hostap_80211_ops +EXPORT_SYMBOL drivers/net/wireless/intersil/hostap/hostap 0xd88a9b6e hostap_free_data +EXPORT_SYMBOL drivers/net/wireless/intersil/hostap/hostap 0xe27e456f hostap_init_ap_proc +EXPORT_SYMBOL drivers/net/wireless/intersil/hostap/hostap 0xec29d242 hostap_master_start_xmit +EXPORT_SYMBOL drivers/net/wireless/intersil/hostap/hostap 0xee0d7093 hostap_set_auth_algs +EXPORT_SYMBOL drivers/net/wireless/intersil/hostap/hostap 0xf1de90e1 hostap_set_hostapd +EXPORT_SYMBOL drivers/net/wireless/intersil/hostap/hostap 0xf5944039 hostap_info_process +EXPORT_SYMBOL drivers/net/wireless/intersil/orinoco/orinoco 0x08ca9d90 orinoco_process_xmit_skb +EXPORT_SYMBOL drivers/net/wireless/intersil/orinoco/orinoco 0x263ff871 orinoco_set_multicast_list +EXPORT_SYMBOL drivers/net/wireless/intersil/orinoco/orinoco 0x2d3deea7 alloc_orinocodev +EXPORT_SYMBOL drivers/net/wireless/intersil/orinoco/orinoco 0x35566397 free_orinocodev +EXPORT_SYMBOL drivers/net/wireless/intersil/orinoco/orinoco 0x3cb5c5be orinoco_init +EXPORT_SYMBOL drivers/net/wireless/intersil/orinoco/orinoco 0x52a53d9a orinoco_if_add +EXPORT_SYMBOL drivers/net/wireless/intersil/orinoco/orinoco 0x5df4acb5 orinoco_up +EXPORT_SYMBOL drivers/net/wireless/intersil/orinoco/orinoco 0x7c2faad7 orinoco_open +EXPORT_SYMBOL drivers/net/wireless/intersil/orinoco/orinoco 0x7f9b84ab orinoco_down +EXPORT_SYMBOL drivers/net/wireless/intersil/orinoco/orinoco 0x907bacc9 orinoco_tx_timeout +EXPORT_SYMBOL drivers/net/wireless/intersil/orinoco/orinoco 0x9b615465 orinoco_change_mtu +EXPORT_SYMBOL drivers/net/wireless/intersil/orinoco/orinoco 0xb380c377 orinoco_if_del +EXPORT_SYMBOL drivers/net/wireless/intersil/orinoco/orinoco 0xd1b3e5a1 __orinoco_ev_rx +EXPORT_SYMBOL drivers/net/wireless/intersil/orinoco/orinoco 0xeb4c9831 hermes_struct_init +EXPORT_SYMBOL drivers/net/wireless/intersil/orinoco/orinoco 0xf3f5c8c3 __orinoco_ev_info +EXPORT_SYMBOL drivers/net/wireless/intersil/orinoco/orinoco 0xf799eac9 orinoco_stop +EXPORT_SYMBOL drivers/net/wireless/intersil/orinoco/orinoco 0xffe27bca orinoco_interrupt +EXPORT_SYMBOL drivers/net/wireless/mediatek/mt76/mt76 0xe2d31466 mt76_wcid_key_setup +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/btcoexist/btcoexist 0x6dda635d rtl_btc_get_ops_pointer +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtl8192c/rtl8192c-common 0x01c9e322 rtl92c_phy_lc_calibrate +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtl8192c/rtl8192c-common 0x1533a1f0 _rtl92c_phy_dbm_to_txpwr_idx +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtl8192c/rtl8192c-common 0x1534bd6f rtl92c_phy_update_txpower_dbm +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtl8192c/rtl8192c-common 0x1f2b0761 _rtl92c_phy_rf_serial_write +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 0x26651329 rtl92c_phy_set_io_cmd +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtl8192c/rtl8192c-common 0x2dbbd069 _rtl92c_phy_bb8192c_config_parafile +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtl8192c/rtl8192c-common 0x3df1b43f rtl92c_download_fw +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtl8192c/rtl8192c-common 0x43774af1 rtl92c_phy_set_rfpath_switch +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtl8192c/rtl8192c-common 0x49473593 rtl92c_dm_init_rate_adaptive_mask +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtl8192c/rtl8192c-common 0x49965742 _rtl92c_phy_fw_rf_serial_write +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtl8192c/rtl8192c-common 0x4abafde3 rtl92c_phy_set_bb_reg +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtl8192c/rtl8192c-common 0x54ba2e1e rtl92c_dm_bt_coexist +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtl8192c/rtl8192c-common 0x58254352 rtl92c_dm_write_dig +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtl8192c/rtl8192c-common 0x5d348700 _rtl92c_store_pwrindex_diffrate_offset +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtl8192c/rtl8192c-common 0x6563bf65 rtl92c_phy_set_io +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtl8192c/rtl8192c-common 0x6a33bb1b rtl92c_phy_sw_chnl_callback +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtl8192c/rtl8192c-common 0x6d8aac8f rtl92c_phy_sw_chnl +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtl8192c/rtl8192c-common 0x6f98a729 rtl92c_phy_iq_calibrate +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtl8192c/rtl8192c-common 0x7257b310 _rtl92c_phy_rf_serial_read +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtl8192c/rtl8192c-common 0x72b522af rtl92c_set_fw_pwrmode_cmd +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtl8192c/rtl8192c-common 0x7526a0d9 rtl92ce_phy_set_rf_on +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtl8192c/rtl8192c-common 0x7561a303 rtl92c_dm_rf_saving +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtl8192c/rtl8192c-common 0x79c986fe rtl92c_bt_rssi_state_change +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtl8192c/rtl8192c-common 0x811fd5ff rtl8192_phy_check_is_legal_rfpath +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtl8192c/rtl8192c-common 0x83b5ac8f rtl92c_firmware_selfreset +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtl8192c/rtl8192c-common 0x866ee6aa rtl92c_phy_set_bw_mode +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtl8192c/rtl8192c-common 0x936e49fa _rtl92c_phy_fw_rf_serial_read +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtl8192c/rtl8192c-common 0x980702c8 rtl92c_phy_rf_config +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtl8192c/rtl8192c-common 0x9c0cdf40 rtl92c_dm_init +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtl8192c/rtl8192c-common 0xac42f7dd rtl92c_dm_watchdog +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtl8192c/rtl8192c-common 0xad120325 rtl92c_dm_check_txpower_tracking +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtl8192c/rtl8192c-common 0xaf4a2ec0 rtl92c_dm_init_edca_turbo +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtl8192c/rtl8192c-common 0xb7206e8a rtl92c_phy_ap_calibrate +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtl8192c/rtl8192c-common 0xbc5d59b2 _rtl92c_phy_init_bb_rf_register_definition +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtl8192c/rtl8192c-common 0xbf6ac79f _rtl92c_phy_set_rf_sleep +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtl8192c/rtl8192c-common 0xc0ab55f0 rtl92c_set_fw_joinbss_report_cmd +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtl8192c/rtl8192c-common 0xc27f3b18 rtl92c_phy_query_bb_reg +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtl8192c/rtl8192c-common 0xc6f35740 rtl92c_fill_h2c_cmd +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtl8192c/rtl8192c-common 0xcd47646c _rtl92c_phy_txpwr_idx_to_dbm +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtl8192c/rtl8192c-common 0xd2840d83 rtl92c_phy_set_txpower_level +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtl8192c/rtl8192c-common 0xf2999e74 rtl92c_set_fw_rsvdpagepkt +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtl_pci 0x190cc574 rtl_pci_resume +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtl_pci 0x6f227249 rtl_pci_probe +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtl_pci 0xa84dbb42 rtl_pci_disconnect +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtl_pci 0xe948d933 rtl_pci_suspend +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtl_usb 0x8145f7a8 rtl_usb_suspend +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtl_usb 0xa6f37ff4 rtl_usb_disconnect +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtl_usb 0xab4007ed rtl_usb_probe +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtl_usb 0xd9528185 rtl_usb_resume +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtlwifi 0x010d9d2a rtl_rx_ampdu_apply +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtlwifi 0x0b038e24 channel5g_80m +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtlwifi 0x1b945315 rtl_addr_delay +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtlwifi 0x1bfd80ba rtl_efuse_shadow_map_update +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtlwifi 0x1c7277f6 rtl_wowlan_fw_cb +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtlwifi 0x28f47054 rtl_cam_empty_entry +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtlwifi 0x30a956d7 rtl_query_rxpwrpercentage +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtlwifi 0x3a25c13f rtl_cam_reset_all_entry +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtlwifi 0x3a69e59f efuse_power_switch +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtlwifi 0x3f19e625 rtl_cam_del_entry +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtlwifi 0x3f2b0c29 rtl_c2hcmd_enqueue +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtlwifi 0x475f55bc rtl_cam_delete_one_entry +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtlwifi 0x488215c2 rtl_init_rfkill +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtlwifi 0x49bf38c2 rtl_phy_scan_operation_backup +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtlwifi 0x54824f58 channel5g +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtlwifi 0x55e2c6c1 rtl_mrate_idx_to_arfr_id +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtlwifi 0x5a1ce3cb rtl_send_smps_action +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtlwifi 0x5af496c2 rtl_process_phyinfo +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtlwifi 0x5c118786 rtl_cam_mark_invalid +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtlwifi 0x684881dd rtl_cam_get_free_entry +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtlwifi 0x7a0cced9 rtl_collect_scan_list +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtlwifi 0x866f814e rtl_dm_diginit +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtlwifi 0x88e5cc06 rtl_ps_enable_nic +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtlwifi 0x94118522 rtl_hal_pwrseqcmdparsing +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtlwifi 0x9b30a8af rtl_rfreg_delay +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtlwifi 0xa063199d rtlwifi_rate_mapping +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtlwifi 0xa471321c rtl_bb_delay +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtlwifi 0xa4e510ca rtl_signal_scale_mapping +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtlwifi 0xaba5e8e3 efuse_shadow_read +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtlwifi 0xb2ae4443 rtl_ps_disable_nic +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtlwifi 0xb659a7d6 efuse_read_1byte +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtlwifi 0xc4779592 rtl_cam_add_one_entry +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtlwifi 0xcfaa904f efuse_one_byte_read +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtlwifi 0xd5873508 rtl_fw_cb +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtlwifi 0xeb71ad1d rtl_get_tcb_desc +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtlwifi 0xed1372ab rtl_cmd_send_packet +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtlwifi 0xed7c8cf2 rtl_evm_db_to_percentage +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw88/rtw88_8723d 0xb06847b5 rtw8723d_hw_spec +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw88/rtw88_8822b 0x5b883d07 rtw8822b_hw_spec +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw88/rtw88_8822c 0xb44a5639 rtw8822c_hw_spec +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw88/rtw88_core 0x03a082a8 rtw_chip_info_setup +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw88/rtw88_core 0x0588d006 rtw_read8_physical_efuse +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw88/rtw88_core 0x08b52e54 rtw_phy_pwrtrack_get_pwridx +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw88/rtw88_core 0x1017a14a rtw_phy_config_swing_table +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw88/rtw88_core 0x16221174 rtw_phy_pwrtrack_need_iqk +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw88/rtw88_core 0x1c9825cd rtw_phy_cfg_bb +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw88/rtw88_core 0x1f12bb33 rtw_bf_enable_bfee_su +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw88/rtw88_core 0x1f249ff3 rtw_coex_read_indirect_reg +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw88/rtw88_core 0x2041ea8e rtw_phy_init +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw88/rtw88_core 0x22ec1cb6 rtw_phy_read_rf_sipi +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw88/rtw88_core 0x23168c3e rtw_phy_cfg_agc +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw88/rtw88_core 0x33b3f3c0 rtw_debug_mask +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw88/rtw88_core 0x34bbf010 rtw_tx_fill_tx_desc +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw88/rtw88_core 0x36187168 rtw_phy_write_rf_reg_sipi +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw88/rtw88_core 0x416807d9 rtw_power_mode_change +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw88/rtw88_core 0x41875879 rtw_set_channel_mac +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw88/rtw88_core 0x439a0d36 check_hw_ready +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 0x4cd9e65f rtw_coex_write_indirect_reg +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw88/rtw88_core 0x4f5fbc99 rtw_bf_remove_bfee_su +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw88/rtw88_core 0x504b01e1 rtw_tx_report_enqueue +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw88/rtw88_core 0x519c8ba9 rtw_rate_size +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw88/rtw88_core 0x58210e60 rtw_rate_section +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw88/rtw88_core 0x5954b418 rtw_bf_cfg_csi_rate +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw88/rtw88_core 0x606736a8 rtw_phy_pwrtrack_thermal_changed +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw88/rtw88_core 0x6ad85000 rtw_parse_tbl_txpwr_lmt +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw88/rtw88_core 0x6c4f1ada rtw_rx_fill_rx_status +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw88/rtw88_core 0x70b9f226 rtw_parse_tbl_bb_pg +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw88/rtw88_core 0x72ec7ba2 rtw_unregister_hw +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw88/rtw88_core 0x7641b6f0 rtw_tx_write_data_h2c_get +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw88/rtw88_core 0x778a4e5d rtw_phy_cfg_rf +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw88/rtw88_core 0x78ba45ed rtw_restore_reg +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw88/rtw88_core 0x83a6988c rtw_rx_stats +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw88/rtw88_core 0x88ba165b rtw_phy_set_tx_power_level +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw88/rtw88_core 0x8b822414 rtw_phy_get_tx_power_index +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw88/rtw88_core 0x8d3071c2 rtw_phy_pwrtrack_avg +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw88/rtw88_core 0x8dbe440e rtw_phy_write_rf_reg_mix +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw88/rtw88_core 0x9412154b rtw_bf_enable_bfee_mu +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw88/rtw88_core 0x9bb16259 rtw_phy_cfg_mac +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw88/rtw88_core 0x9cbb62a4 rtw_parse_tbl_phy_cond +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw88/rtw88_core 0x9fcd6585 rtw_fw_do_iqk +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw88/rtw88_core 0xa19e3879 rtw_ops +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw88/rtw88_core 0xa27f46a7 rtw_phy_load_tables +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw88/rtw88_core 0xac913ff7 rtw_bf_set_gid_table +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw88/rtw88_core 0xbecd4407 rtw_phy_pwrtrack_get_delta +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw88/rtw88_core 0xc0957a6b rtw_bf_remove_bfee_mu +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw88/rtw88_core 0xc4fade89 rtw_tx_write_data_rsvd_page_get +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw88/rtw88_core 0xc9dc6dca rtw_core_deinit +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw88/rtw88_core 0xd60b3017 rtw_core_init +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw88/rtw88_core 0xd9baa873 rtw_register_hw +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw88/rtw88_core 0xda2562c8 rtw_coex_write_scbd +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw88/rtw88_core 0xea3e4e64 rtw_bf_phy_init +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw88/rtw88_core 0xf04795c9 rtw_fw_c2h_cmd_rx_irqsafe +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw88/rtw88_core 0xf2ded332 __rtw_dbg +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw88/rtw88_core 0xf3066f90 rtw_phy_read_rf +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw88/rtw88_core 0xf34249ad rtw_fw_lps_deep_mode +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw88/rtw88_pci 0x2baffc16 rtw_pm_ops +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw88/rtw88_pci 0x9cfa8f8b rtw_pci_probe +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw88/rtw88_pci 0xc6c05477 rtw_pci_remove +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw88/rtw88_pci 0xdee4289b rtw_pci_shutdown +EXPORT_SYMBOL drivers/net/wireless/rsi/rsi_91x 0x4f83baa4 rsi_config_wowlan +EXPORT_SYMBOL drivers/net/wireless/ti/wlcore/wlcore 0x1480b495 wl1271_free_tx_id +EXPORT_SYMBOL drivers/net/wireless/ti/wlcore/wlcore 0x1e7c2506 wl12xx_is_dummy_packet +EXPORT_SYMBOL drivers/net/wireless/ti/wlcore/wlcore 0x25dfb0e0 wlcore_calc_packet_alignment +EXPORT_SYMBOL drivers/net/wireless/ti/wlcore/wlcore 0x5f2ed9f1 wlcore_tx_complete +EXPORT_SYMBOL drivers/nfc/fdp/fdp 0x225589f4 fdp_nci_remove +EXPORT_SYMBOL drivers/nfc/fdp/fdp 0xa9087f1c fdp_nci_probe +EXPORT_SYMBOL drivers/nfc/fdp/fdp 0xddfd2472 fdp_nci_recv_frame +EXPORT_SYMBOL drivers/nfc/microread/microread 0xdd69a1e6 microread_remove +EXPORT_SYMBOL drivers/nfc/microread/microread 0xf3111b6d microread_probe +EXPORT_SYMBOL drivers/nfc/nxp-nci/nxp-nci 0x92338996 nxp_nci_fw_recv_frame +EXPORT_SYMBOL drivers/nfc/nxp-nci/nxp-nci 0x93c7b86b nxp_nci_remove +EXPORT_SYMBOL drivers/nfc/nxp-nci/nxp-nci 0xf417b84c nxp_nci_probe +EXPORT_SYMBOL drivers/nfc/pn533/pn533 0xb8e15b14 pn533_recv_frame +EXPORT_SYMBOL drivers/nfc/pn544/pn544 0x54bdf468 pn544_hci_remove +EXPORT_SYMBOL drivers/nfc/pn544/pn544 0x7baa289a pn544_hci_probe +EXPORT_SYMBOL drivers/nfc/s3fwrn5/s3fwrn5 0x401b2bfe s3fwrn5_remove +EXPORT_SYMBOL drivers/nfc/s3fwrn5/s3fwrn5 0xae018f1c s3fwrn5_probe +EXPORT_SYMBOL drivers/nfc/s3fwrn5/s3fwrn5 0xc70fa529 s3fwrn5_recv_frame +EXPORT_SYMBOL drivers/nfc/st-nci/st-nci 0x15cc291e st_nci_se_io +EXPORT_SYMBOL drivers/nfc/st-nci/st-nci 0x1de73802 ndlc_close +EXPORT_SYMBOL drivers/nfc/st-nci/st-nci 0x2abccdb2 ndlc_probe +EXPORT_SYMBOL drivers/nfc/st-nci/st-nci 0x53a9935c st_nci_se_deinit +EXPORT_SYMBOL drivers/nfc/st-nci/st-nci 0x6eecbbb8 ndlc_send +EXPORT_SYMBOL drivers/nfc/st-nci/st-nci 0x7bc39bbf ndlc_open +EXPORT_SYMBOL drivers/nfc/st-nci/st-nci 0xb3aa8407 ndlc_remove +EXPORT_SYMBOL drivers/nfc/st-nci/st-nci 0xc1c03e85 st_nci_vendor_cmds_init +EXPORT_SYMBOL drivers/nfc/st-nci/st-nci 0xdab736c5 ndlc_recv +EXPORT_SYMBOL drivers/nfc/st-nci/st-nci 0xdf03c6f7 st_nci_se_init +EXPORT_SYMBOL drivers/nfc/st21nfca/st21nfca_hci 0x03692f64 st21nfca_hci_disable_se +EXPORT_SYMBOL drivers/nfc/st21nfca/st21nfca_hci 0x1094689d st21nfca_im_send_atr_req +EXPORT_SYMBOL drivers/nfc/st21nfca/st21nfca_hci 0x19bd6ce5 st21nfca_im_send_dep_req +EXPORT_SYMBOL drivers/nfc/st21nfca/st21nfca_hci 0x2174a0ca st21nfca_apdu_reader_event_received +EXPORT_SYMBOL drivers/nfc/st21nfca/st21nfca_hci 0x546b44b8 st21nfca_dep_event_received +EXPORT_SYMBOL drivers/nfc/st21nfca/st21nfca_hci 0x66b628e7 st21nfca_hci_se_io +EXPORT_SYMBOL drivers/nfc/st21nfca/st21nfca_hci 0x84899e1b st21nfca_se_deinit +EXPORT_SYMBOL drivers/nfc/st21nfca/st21nfca_hci 0x877b8b95 st21nfca_hci_enable_se +EXPORT_SYMBOL drivers/nfc/st21nfca/st21nfca_hci 0x87de3b4a st21nfca_dep_init +EXPORT_SYMBOL drivers/nfc/st21nfca/st21nfca_hci 0x9474be5b st21nfca_vendor_cmds_init +EXPORT_SYMBOL drivers/nfc/st21nfca/st21nfca_hci 0x9a620069 st21nfca_hci_probe +EXPORT_SYMBOL drivers/nfc/st21nfca/st21nfca_hci 0x9b5d0045 st21nfca_tm_send_dep_res +EXPORT_SYMBOL drivers/nfc/st21nfca/st21nfca_hci 0xb2df6a14 st21nfca_connectivity_event_received +EXPORT_SYMBOL drivers/nfc/st21nfca/st21nfca_hci 0xc0db20f8 st21nfca_se_init +EXPORT_SYMBOL drivers/nfc/st21nfca/st21nfca_hci 0xd0a3609b st21nfca_hci_remove +EXPORT_SYMBOL drivers/nfc/st21nfca/st21nfca_hci 0xd0cf45ec st21nfca_hci_loopback_event_received +EXPORT_SYMBOL drivers/nfc/st21nfca/st21nfca_hci 0xd81fdcc8 st21nfca_dep_deinit +EXPORT_SYMBOL drivers/nfc/st21nfca/st21nfca_hci 0xe32d9547 st21nfca_hci_discover_se +EXPORT_SYMBOL drivers/ntb/ntb 0x0259e695 ntb_msi_setup_mws +EXPORT_SYMBOL drivers/ntb/ntb 0x047b3730 ntb_default_peer_port_idx +EXPORT_SYMBOL drivers/ntb/ntb 0x189bff58 ntb_msi_clear_mws +EXPORT_SYMBOL drivers/ntb/ntb 0x1aba362c ntbm_msi_request_threaded_irq +EXPORT_SYMBOL drivers/ntb/ntb 0x22c1f6ef ntb_msg_event +EXPORT_SYMBOL drivers/ntb/ntb 0x3d5ff4f7 ntbm_msi_free_irq +EXPORT_SYMBOL drivers/ntb/ntb 0x4f6e60a3 ntb_unregister_device +EXPORT_SYMBOL drivers/ntb/ntb 0x657e1785 ntb_msi_init +EXPORT_SYMBOL drivers/ntb/ntb 0x65e4a2b1 ntb_db_event +EXPORT_SYMBOL drivers/ntb/ntb 0x670aa276 ntb_unregister_client +EXPORT_SYMBOL drivers/ntb/ntb 0x9a31c91f ntb_set_ctx +EXPORT_SYMBOL drivers/ntb/ntb 0x9c0dd846 ntb_default_peer_port_number +EXPORT_SYMBOL drivers/ntb/ntb 0xabd9999e ntb_link_event +EXPORT_SYMBOL drivers/ntb/ntb 0xad6243f4 ntb_default_peer_port_count +EXPORT_SYMBOL drivers/ntb/ntb 0xd7fc7e71 ntb_default_port_number +EXPORT_SYMBOL drivers/ntb/ntb 0xd9007ab0 __ntb_register_client +EXPORT_SYMBOL drivers/ntb/ntb 0xd995cf90 ntb_register_device +EXPORT_SYMBOL drivers/ntb/ntb 0xdf07ae81 ntb_msi_peer_trigger +EXPORT_SYMBOL drivers/ntb/ntb 0xecb275f6 ntb_msi_peer_addr +EXPORT_SYMBOL drivers/ntb/ntb 0xfa17e78e ntb_clear_ctx +EXPORT_SYMBOL drivers/nvdimm/nd_btt 0x5824462c nvdimm_namespace_attach_btt +EXPORT_SYMBOL drivers/nvdimm/nd_btt 0x83908b9d nvdimm_namespace_detach_btt +EXPORT_SYMBOL drivers/parport/parport 0x178e74f3 parport_register_dev_model +EXPORT_SYMBOL drivers/parport/parport 0x293ab471 parport_unregister_device +EXPORT_SYMBOL drivers/parport/parport 0x3db138ee parport_unregister_driver +EXPORT_SYMBOL drivers/parport/parport 0x45488770 parport_get_port +EXPORT_SYMBOL drivers/parport/parport 0x4980fff6 parport_write +EXPORT_SYMBOL drivers/parport/parport 0x4d2a941b parport_ieee1284_interrupt +EXPORT_SYMBOL drivers/parport/parport 0x52493583 parport_claim_or_block +EXPORT_SYMBOL drivers/parport/parport 0x5e3a3912 parport_irq_handler +EXPORT_SYMBOL drivers/parport/parport 0x5e6575f4 parport_announce_port +EXPORT_SYMBOL drivers/parport/parport 0x61c21144 parport_set_timeout +EXPORT_SYMBOL drivers/parport/parport 0x688eeb03 parport_wait_event +EXPORT_SYMBOL drivers/parport/parport 0x6a0a5535 parport_ieee1284_epp_read_addr +EXPORT_SYMBOL drivers/parport/parport 0x737df120 parport_ieee1284_epp_write_addr +EXPORT_SYMBOL drivers/parport/parport 0x765722c7 parport_remove_port +EXPORT_SYMBOL drivers/parport/parport 0x7ac525ce parport_ieee1284_ecp_write_data +EXPORT_SYMBOL drivers/parport/parport 0x8b91a314 parport_ieee1284_epp_read_data +EXPORT_SYMBOL drivers/parport/parport 0x930534b6 parport_claim +EXPORT_SYMBOL drivers/parport/parport 0x9b0e62ac parport_read +EXPORT_SYMBOL drivers/parport/parport 0x9f874da0 parport_ieee1284_write_compat +EXPORT_SYMBOL drivers/parport/parport 0xa1c3e4c6 parport_find_number +EXPORT_SYMBOL drivers/parport/parport 0xaae89cc3 __parport_register_driver +EXPORT_SYMBOL drivers/parport/parport 0xad64166f parport_negotiate +EXPORT_SYMBOL drivers/parport/parport 0xb0ee57f5 parport_ieee1284_read_nibble +EXPORT_SYMBOL drivers/parport/parport 0xb3208a92 parport_ieee1284_ecp_write_addr +EXPORT_SYMBOL drivers/parport/parport 0xb36b5a9a parport_register_port +EXPORT_SYMBOL drivers/parport/parport 0xba985e7c parport_ieee1284_epp_write_data +EXPORT_SYMBOL drivers/parport/parport 0xbdae70a5 parport_del_port +EXPORT_SYMBOL drivers/parport/parport 0xca01fe6d parport_ieee1284_read_byte +EXPORT_SYMBOL drivers/parport/parport 0xd1b375f8 parport_find_base +EXPORT_SYMBOL drivers/parport/parport 0xee9352ab parport_release +EXPORT_SYMBOL drivers/parport/parport 0xf4999531 parport_put_port +EXPORT_SYMBOL drivers/parport/parport 0xf6f57d9d parport_ieee1284_ecp_read_data +EXPORT_SYMBOL drivers/parport/parport 0xfae6fe21 parport_wait_peripheral +EXPORT_SYMBOL drivers/parport/parport_pc 0x0bb00b9a parport_pc_unregister_port +EXPORT_SYMBOL drivers/parport/parport_pc 0xe44b0d26 parport_pc_probe_port +EXPORT_SYMBOL drivers/platform/chrome/cros_ec 0x0821ba1a cros_ec_resume +EXPORT_SYMBOL drivers/platform/chrome/cros_ec 0x234b1426 cros_ec_register +EXPORT_SYMBOL drivers/platform/chrome/cros_ec 0x65e2d213 cros_ec_unregister +EXPORT_SYMBOL drivers/platform/chrome/cros_ec 0x66ad357f cros_ec_handle_event +EXPORT_SYMBOL drivers/platform/chrome/cros_ec 0xe98c7429 cros_ec_suspend +EXPORT_SYMBOL drivers/regulator/rohm-regulator 0xa633e54e rohm_regulator_set_dvs_levels +EXPORT_SYMBOL drivers/rpmsg/qcom_smd 0x3330a1c8 qcom_smd_unregister_edge +EXPORT_SYMBOL drivers/rpmsg/qcom_smd 0xa0758813 qcom_smd_register_edge +EXPORT_SYMBOL drivers/rpmsg/rpmsg_core 0x1433e984 rpmsg_trysend_offchannel +EXPORT_SYMBOL drivers/rpmsg/rpmsg_core 0x4a237693 __register_rpmsg_driver +EXPORT_SYMBOL drivers/rpmsg/rpmsg_core 0x6e45906c rpmsg_trysendto +EXPORT_SYMBOL drivers/rpmsg/rpmsg_core 0x6f5b0375 rpmsg_trysend +EXPORT_SYMBOL drivers/rpmsg/rpmsg_core 0x7487ee9c rpmsg_sendto +EXPORT_SYMBOL drivers/rpmsg/rpmsg_core 0x822e907d rpmsg_destroy_ept +EXPORT_SYMBOL drivers/rpmsg/rpmsg_core 0x9d678c46 rpmsg_poll +EXPORT_SYMBOL drivers/rpmsg/rpmsg_core 0x9e27580f rpmsg_find_device +EXPORT_SYMBOL drivers/rpmsg/rpmsg_core 0xb3efbe9c rpmsg_create_ept +EXPORT_SYMBOL drivers/rpmsg/rpmsg_core 0xc38f2c7c rpmsg_send +EXPORT_SYMBOL drivers/rpmsg/rpmsg_core 0xe4e5866f unregister_rpmsg_driver +EXPORT_SYMBOL drivers/rpmsg/rpmsg_core 0xe688213c rpmsg_send_offchannel +EXPORT_SYMBOL drivers/rpmsg/rpmsg_core 0xec994b6e rpmsg_register_device +EXPORT_SYMBOL drivers/rpmsg/rpmsg_core 0xf8d18906 rpmsg_unregister_device +EXPORT_SYMBOL drivers/rtc/rtc-ds1685 0x8e9eab08 ds1685_rtc_poweroff +EXPORT_SYMBOL drivers/scsi/esp_scsi 0x0f22ec20 scsi_esp_cmd +EXPORT_SYMBOL drivers/scsi/esp_scsi 0x4a29ab38 scsi_esp_intr +EXPORT_SYMBOL drivers/scsi/esp_scsi 0xbbe66925 scsi_esp_register +EXPORT_SYMBOL drivers/scsi/esp_scsi 0xc0313395 scsi_esp_unregister +EXPORT_SYMBOL drivers/scsi/esp_scsi 0xfb831b85 scsi_esp_template +EXPORT_SYMBOL drivers/scsi/fcoe/libfcoe 0x07863bd0 fcoe_ctlr_link_up +EXPORT_SYMBOL drivers/scsi/fcoe/libfcoe 0x27c3f3d8 fcoe_ctlr_recv_flogi +EXPORT_SYMBOL drivers/scsi/fcoe/libfcoe 0x3fb73c2b fcoe_ctlr_destroy +EXPORT_SYMBOL drivers/scsi/fcoe/libfcoe 0x42f3ab2e fcoe_ctlr_link_down +EXPORT_SYMBOL drivers/scsi/fcoe/libfcoe 0x73d73b0d fcoe_transport_detach +EXPORT_SYMBOL drivers/scsi/fcoe/libfcoe 0xaf83f4a6 fcoe_ctlr_init +EXPORT_SYMBOL drivers/scsi/fcoe/libfcoe 0xbb3986a2 fcoe_ctlr_recv +EXPORT_SYMBOL drivers/scsi/fcoe/libfcoe 0xcbe4e10d fcoe_ctlr_set_fip_mode +EXPORT_SYMBOL drivers/scsi/fcoe/libfcoe 0xd084b8ce fcoe_ctlr_els_send +EXPORT_SYMBOL drivers/scsi/fcoe/libfcoe 0xd6f34a4a fcoe_fcf_get_selected +EXPORT_SYMBOL drivers/scsi/fcoe/libfcoe 0xf1076e0d fcoe_transport_attach +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x01439070 fc_seq_set_resp +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x0a151c5d fc_vport_setlink +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x0d6155cb fc_fabric_login +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x0ed1acb8 fc_lport_reset +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x1f13fc67 fc_get_host_port_state +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x22b90986 fc_exch_mgr_del +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x2401dad5 fc_exch_mgr_alloc +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x28faecb1 fc_get_host_stats +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x2fc9d7c9 fc_lport_config +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x3109157c fc_lport_logo_resp +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x3297dcd9 fc_lport_bsg_request +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x38bd6d1d fc_rport_login +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x38f62111 fc_linkdown +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x46246571 fc_exch_seq_send +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x51a8ebc1 fc_frame_alloc_fill +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x5ab41f0c fc_lport_notifier_head +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x6985faae fc_rport_terminate_io +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x7069790e fc_rport_logoff +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x729891c2 fc_exch_update_stats +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x74272225 fc_exch_mgr_free +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x78497bb5 fc_fcp_init +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x79439204 fc_lport_flogi_resp +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x7bfe9e1e fc_get_host_speed +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x7cc341a4 _fc_frame_alloc +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x7d60c41d fc_eh_device_reset +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x7da00902 fc_lport_destroy +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x7f3407a7 fc_seq_start_next +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x811811e0 fc_exch_done +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x8331b73b fc_lport_iterate +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x84148663 fc_fill_reply_hdr +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x849d8e82 fc_disc_init +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x8a37dc8f fc_rport_lookup +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x8c96fe9b fc_lport_recv +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x8ecc9be0 fc_fcp_destroy +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x9d50ed7e fc_rport_destroy +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x9dc46d18 fc_queuecommand +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x9fb6dc6d fc_seq_send +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0xa1bcd198 fc_cpu_mask +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0xa44a7c21 fc_vport_id_lookup +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0xa8004c50 fc_fabric_logoff +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0xac079683 fc_elsct_send +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0xae74bbe0 fc_fill_hdr +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0xb0ddd5a1 fc_rport_flush_queue +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0xb9a4be55 fc_lport_set_local_id +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0xb9efd592 fc_exch_recv +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0xbca4da68 fc_fc4_deregister_provider +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0xbefffaea fc_exch_mgr_list_clone +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0xc3bab1e6 fc_eh_host_reset +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0xc43ea37e fc_exch_init +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0xceb1d394 fc_set_rport_loss_tmo +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0xcfcb0dfb fc_exch_mgr_reset +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0xd12ce06f fc_eh_abort +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0xd29f4e17 fc_rport_create +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0xd8d03551 libfc_vport_create +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0xdb82b2c0 fc_linkup +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0xe1bb4cf8 fc_set_mfs +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0xe35726c4 fc_seq_assign +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0xe3af80bd fc_frame_crc_check +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0xe891e4e1 fc_exch_mgr_add +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0xea08749d fc_elsct_init +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0xee95ab8d fc_slave_alloc +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0xf5ce4001 fc_lport_init +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0xf7986e5c fc_disc_config +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0xf8bf4f74 fc_rport_recv_req +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0xfa4667d1 fc_seq_release +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0xffe1cee5 fc_fc4_register_provider +EXPORT_SYMBOL drivers/scsi/libsas/libsas 0x01403917 sas_suspend_ha +EXPORT_SYMBOL drivers/scsi/libsas/libsas 0x4a8e3d34 try_test_sas_gpio_gp_bit +EXPORT_SYMBOL drivers/scsi/libsas/libsas 0xa09721b5 sas_resume_ha +EXPORT_SYMBOL drivers/scsi/libsas/libsas 0xfea729da sas_prep_resume_ha +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/megaraid/megaraid_mm 0xe2a7e718 mraid_mm_register_adp +EXPORT_SYMBOL drivers/scsi/qla2xxx/qla2xxx 0x07454a5a qlt_free_cmd +EXPORT_SYMBOL drivers/scsi/qla2xxx/qla2xxx 0x2f191e6a qlt_rdy_to_xfer +EXPORT_SYMBOL drivers/scsi/qla2xxx/qla2xxx 0x3d831b81 qlt_unreg_sess +EXPORT_SYMBOL drivers/scsi/qla2xxx/qla2xxx 0x3d8e5857 qlt_lport_deregister +EXPORT_SYMBOL drivers/scsi/qla2xxx/qla2xxx 0x6dbcdcd3 qlt_lport_register +EXPORT_SYMBOL drivers/scsi/qla2xxx/qla2xxx 0x7043c46c qlt_xmit_response +EXPORT_SYMBOL drivers/scsi/qla2xxx/qla2xxx 0x939dd805 qlt_free_mcmd +EXPORT_SYMBOL drivers/scsi/qla2xxx/qla2xxx 0xa3e7000e qlt_stop_phase1 +EXPORT_SYMBOL drivers/scsi/qla2xxx/qla2xxx 0xaab31ff8 qlt_abort_cmd +EXPORT_SYMBOL drivers/scsi/qla2xxx/qla2xxx 0xaec753b0 qlt_enable_vha +EXPORT_SYMBOL drivers/scsi/qla2xxx/qla2xxx 0xbdb697ee qlt_xmit_tm_rsp +EXPORT_SYMBOL drivers/scsi/qla2xxx/qla2xxx 0xd9158365 qlt_stop_phase2 +EXPORT_SYMBOL drivers/scsi/raid_class 0x15e85421 raid_class_attach +EXPORT_SYMBOL drivers/scsi/raid_class 0x1ad90512 raid_class_release +EXPORT_SYMBOL drivers/scsi/raid_class 0x436acbbb raid_component_add +EXPORT_SYMBOL drivers/scsi/scsi_transport_fc 0x1693e2a2 fc_host_fpin_rcv +EXPORT_SYMBOL drivers/scsi/scsi_transport_fc 0x1e7ad9a4 scsi_is_fc_rport +EXPORT_SYMBOL drivers/scsi/scsi_transport_fc 0x234b56b7 fc_remove_host +EXPORT_SYMBOL drivers/scsi/scsi_transport_fc 0x375f8bbd fc_get_event_number +EXPORT_SYMBOL drivers/scsi/scsi_transport_fc 0x489f3077 fc_block_rport +EXPORT_SYMBOL drivers/scsi/scsi_transport_fc 0x51059534 fc_remote_port_add +EXPORT_SYMBOL drivers/scsi/scsi_transport_fc 0x6dd9e355 fc_host_post_event +EXPORT_SYMBOL drivers/scsi/scsi_transport_fc 0x8722059c fc_release_transport +EXPORT_SYMBOL drivers/scsi/scsi_transport_fc 0x9988068c fc_host_post_fc_event +EXPORT_SYMBOL drivers/scsi/scsi_transport_fc 0x9c9baddc fc_host_post_vendor_event +EXPORT_SYMBOL drivers/scsi/scsi_transport_fc 0x9d354846 fc_vport_terminate +EXPORT_SYMBOL drivers/scsi/scsi_transport_fc 0xcdc5e928 fc_vport_create +EXPORT_SYMBOL drivers/scsi/scsi_transport_fc 0xd517c141 fc_eh_timed_out +EXPORT_SYMBOL drivers/scsi/scsi_transport_fc 0xe056846f fc_attach_transport +EXPORT_SYMBOL drivers/scsi/scsi_transport_fc 0xe0c8fe22 fc_remote_port_delete +EXPORT_SYMBOL drivers/scsi/scsi_transport_fc 0xe99ec1f7 fc_block_scsi_eh +EXPORT_SYMBOL drivers/scsi/scsi_transport_fc 0xfd28bffb fc_remote_port_rolechg +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0x1186dc2f sas_port_mark_backlink +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0x245d6199 sas_remove_host +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0x27a43402 sas_port_delete +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0x33bf82aa sas_read_port_mode_page +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0x3d0999c0 sas_rphy_delete +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0x3ecbdf53 sas_port_delete_phy +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0x4e11772e sas_attach_transport +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0x527fd4f0 scsi_is_sas_phy +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0x54311e83 sas_release_transport +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0x57b61825 sas_get_address +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0x57b6812d sas_phy_add +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0x6d571c65 sas_port_alloc +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0x79ce31b4 sas_rphy_remove +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0x8563b601 scsi_is_sas_port +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0x8e42d5e4 sas_phy_delete +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0xa0b29b0a sas_port_add +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0xa16ca48a sas_rphy_free +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0xac93423c sas_end_device_alloc +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0xb298ec99 sas_port_get_phy +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0xb84c4efa sas_rphy_unlink +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0xbf9d041a sas_rphy_add +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0xc77a0eef scsi_is_sas_rphy +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0xc9506c1b sas_phy_alloc +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0xd1202438 sas_phy_free +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0xd61c87df sas_port_add_phy +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0xea3de830 sas_port_alloc_num +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0xebe9af9d sas_port_free +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0xfab5cf86 sas_remove_children +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0xfb33f458 sas_expander_alloc +EXPORT_SYMBOL drivers/scsi/scsi_transport_spi 0x3686ea09 spi_print_msg +EXPORT_SYMBOL drivers/scsi/scsi_transport_spi 0x58c2aa05 spi_dv_device +EXPORT_SYMBOL drivers/scsi/scsi_transport_spi 0x6743a5c1 spi_schedule_dv_device +EXPORT_SYMBOL drivers/scsi/scsi_transport_spi 0x6d5a5c45 spi_attach_transport +EXPORT_SYMBOL drivers/scsi/scsi_transport_spi 0xbac8ac0e spi_release_transport +EXPORT_SYMBOL drivers/scsi/scsi_transport_spi 0xbe510fe7 spi_display_xfer_agreement +EXPORT_SYMBOL drivers/scsi/scsi_transport_srp 0x3c442aa6 srp_start_tl_fail_timers +EXPORT_SYMBOL drivers/scsi/scsi_transport_srp 0x405b6e05 srp_parse_tmo +EXPORT_SYMBOL drivers/scsi/scsi_transport_srp 0x7dc0f20d srp_reconnect_rport +EXPORT_SYMBOL drivers/scsi/scsi_transport_srp 0x9c5ade17 srp_rport_put +EXPORT_SYMBOL drivers/scsi/scsi_transport_srp 0x9f547ae1 srp_timed_out +EXPORT_SYMBOL drivers/scsi/scsi_transport_srp 0xf337707e srp_rport_get +EXPORT_SYMBOL drivers/scsi/ufs/tc-dwc-g210 0x12dbee2d tc_dwc_g210_config_40_bit +EXPORT_SYMBOL drivers/scsi/ufs/tc-dwc-g210 0x8b4907bf tc_dwc_g210_config_20_bit +EXPORT_SYMBOL drivers/scsi/ufs/ufshcd-core 0x0350daa5 ufshcd_runtime_resume +EXPORT_SYMBOL drivers/scsi/ufs/ufshcd-core 0x12287dde ufshcd_runtime_suspend +EXPORT_SYMBOL drivers/scsi/ufs/ufshcd-core 0x1581d99a ufshcd_get_local_unipro_ver +EXPORT_SYMBOL drivers/scsi/ufs/ufshcd-core 0x4903fe0f ufshcd_system_suspend +EXPORT_SYMBOL drivers/scsi/ufs/ufshcd-core 0x5d0c7d10 ufshcd_shutdown +EXPORT_SYMBOL drivers/scsi/ufs/ufshcd-core 0xb547487b ufshcd_map_desc_id_to_length +EXPORT_SYMBOL drivers/scsi/ufs/ufshcd-core 0xc3b13384 ufshcd_runtime_idle +EXPORT_SYMBOL drivers/scsi/ufs/ufshcd-core 0xef50c1d8 ufshcd_alloc_host +EXPORT_SYMBOL drivers/scsi/ufs/ufshcd-core 0xf67d161a ufshcd_system_resume +EXPORT_SYMBOL drivers/scsi/ufs/ufshcd-dwc 0x3d4c30cf ufshcd_dwc_link_startup_notify +EXPORT_SYMBOL drivers/scsi/ufs/ufshcd-dwc 0x62867b04 ufshcd_dwc_dme_set_attrs +EXPORT_SYMBOL drivers/soc/mediatek/mtk-cmdq-helper 0x00b44ef9 cmdq_pkt_poll_mask +EXPORT_SYMBOL drivers/soc/mediatek/mtk-cmdq-helper 0x0b713282 cmdq_pkt_poll +EXPORT_SYMBOL drivers/soc/mediatek/mtk-cmdq-helper 0x0f51b3ef cmdq_pkt_write +EXPORT_SYMBOL drivers/soc/mediatek/mtk-cmdq-helper 0x243391b2 cmdq_mbox_create +EXPORT_SYMBOL drivers/soc/mediatek/mtk-cmdq-helper 0x431f28d1 cmdq_pkt_wfe +EXPORT_SYMBOL drivers/soc/mediatek/mtk-cmdq-helper 0x59ab9e73 cmdq_pkt_destroy +EXPORT_SYMBOL drivers/soc/mediatek/mtk-cmdq-helper 0x8cd5a570 cmdq_pkt_clear_event +EXPORT_SYMBOL drivers/soc/mediatek/mtk-cmdq-helper 0x94887ba0 cmdq_pkt_write_mask +EXPORT_SYMBOL drivers/soc/mediatek/mtk-cmdq-helper 0xa2d1d99d cmdq_mbox_destroy +EXPORT_SYMBOL drivers/soc/mediatek/mtk-cmdq-helper 0xb749a852 cmdq_dev_get_client_reg +EXPORT_SYMBOL drivers/soc/mediatek/mtk-cmdq-helper 0xc317c0cf cmdq_pkt_create +EXPORT_SYMBOL drivers/soc/mediatek/mtk-cmdq-helper 0xd8b8fbcc cmdq_pkt_flush_async +EXPORT_SYMBOL drivers/soc/mediatek/mtk-cmdq-helper 0xdde7bff5 cmdq_pkt_flush +EXPORT_SYMBOL drivers/soc/qcom/ocmem 0xb9ce826a of_get_ocmem +EXPORT_SYMBOL drivers/soc/qcom/ocmem 0xc53d76b1 ocmem_allocate +EXPORT_SYMBOL drivers/soc/qcom/ocmem 0xf9b05967 ocmem_free +EXPORT_SYMBOL drivers/soc/qcom/pdr_interface 0x1c76ea4d pdr_restart_pd +EXPORT_SYMBOL drivers/soc/qcom/pdr_interface 0x432975e6 pdr_add_lookup +EXPORT_SYMBOL drivers/soc/qcom/pdr_interface 0x47b2ed49 pdr_handle_alloc +EXPORT_SYMBOL drivers/soc/qcom/pdr_interface 0xf618ca5b pdr_handle_release +EXPORT_SYMBOL drivers/soc/qcom/qcom-geni-se 0x10384507 geni_se_clk_freq_match +EXPORT_SYMBOL drivers/soc/qcom/qcom-geni-se 0x349bfd0b geni_se_config_packing +EXPORT_SYMBOL drivers/soc/qcom/qcom-geni-se 0x39281fca geni_se_rx_dma_prep +EXPORT_SYMBOL drivers/soc/qcom/qcom-geni-se 0x3d25e41f geni_se_get_qup_hw_version +EXPORT_SYMBOL drivers/soc/qcom/qcom-geni-se 0x4223bc4b geni_se_tx_dma_prep +EXPORT_SYMBOL drivers/soc/qcom/qcom-geni-se 0x43f34e55 geni_se_resources_on +EXPORT_SYMBOL drivers/soc/qcom/qcom-geni-se 0x5ff61120 geni_se_select_mode +EXPORT_SYMBOL drivers/soc/qcom/qcom-geni-se 0xaa08dccd geni_se_tx_dma_unprep +EXPORT_SYMBOL drivers/soc/qcom/qcom-geni-se 0xad0db649 geni_se_resources_off +EXPORT_SYMBOL drivers/soc/qcom/qcom-geni-se 0xba9ee63f geni_se_init +EXPORT_SYMBOL drivers/soc/qcom/qcom-geni-se 0xd3881317 geni_se_clk_tbl_get +EXPORT_SYMBOL drivers/soc/qcom/qcom-geni-se 0xe2b71a23 geni_se_rx_dma_unprep +EXPORT_SYMBOL drivers/soc/qcom/qmi_helpers 0x133168aa qmi_encode_message +EXPORT_SYMBOL drivers/soc/qcom/qmi_helpers 0x21ce5888 qmi_response_type_v01_ei +EXPORT_SYMBOL drivers/soc/qcom/qmi_helpers 0x21e03a0e qmi_add_lookup +EXPORT_SYMBOL drivers/soc/qcom/qmi_helpers 0x27fb4da1 qmi_handle_init +EXPORT_SYMBOL drivers/soc/qcom/qmi_helpers 0x31ac3080 qmi_txn_init +EXPORT_SYMBOL drivers/soc/qcom/qmi_helpers 0x85ef780b qmi_send_request +EXPORT_SYMBOL drivers/soc/qcom/qmi_helpers 0x9949bb63 qmi_txn_cancel +EXPORT_SYMBOL drivers/soc/qcom/qmi_helpers 0xa2ff1ede qmi_decode_message +EXPORT_SYMBOL drivers/soc/qcom/qmi_helpers 0xaf47447e qmi_add_server +EXPORT_SYMBOL drivers/soc/qcom/qmi_helpers 0xbcbab4bb qmi_handle_release +EXPORT_SYMBOL drivers/soc/qcom/qmi_helpers 0xc4510042 qmi_send_response +EXPORT_SYMBOL drivers/soc/qcom/qmi_helpers 0xeb8f47e6 qmi_send_indication +EXPORT_SYMBOL drivers/soc/qcom/qmi_helpers 0xfc3a6cfb qmi_txn_wait +EXPORT_SYMBOL drivers/soc/qcom/smd-rpm 0x46bb046c qcom_rpm_smd_write +EXPORT_SYMBOL drivers/soc/qcom/smem 0x5a710273 qcom_smem_get_free_space +EXPORT_SYMBOL drivers/soc/qcom/smem 0x63ef36e3 qcom_smem_alloc +EXPORT_SYMBOL drivers/soc/qcom/smem 0x932eb0e3 qcom_smem_get +EXPORT_SYMBOL drivers/soc/qcom/smem 0x9979b76e qcom_smem_virt_to_phys +EXPORT_SYMBOL drivers/soc/qcom/wcnss_ctrl 0x5bf924eb qcom_wcnss_open_channel +EXPORT_SYMBOL drivers/soundwire/soundwire-bus 0x0c757b6c sdw_nwrite +EXPORT_SYMBOL drivers/soundwire/soundwire-bus 0x16d1706b sdw_prepare_stream +EXPORT_SYMBOL drivers/soundwire/soundwire-bus 0x1b9be91f sdw_write +EXPORT_SYMBOL drivers/soundwire/soundwire-bus 0x1deee061 sdw_find_row_index +EXPORT_SYMBOL drivers/soundwire/soundwire-bus 0x2577e63a sdw_stream_add_slave +EXPORT_SYMBOL drivers/soundwire/soundwire-bus 0x2ee86342 sdw_nread +EXPORT_SYMBOL drivers/soundwire/soundwire-bus 0x30dd6ba3 sdw_bus_master_delete +EXPORT_SYMBOL drivers/soundwire/soundwire-bus 0x355a5522 sdw_bus_clk_stop +EXPORT_SYMBOL drivers/soundwire/soundwire-bus 0x45c32ede sdw_stream_add_master +EXPORT_SYMBOL drivers/soundwire/soundwire-bus 0x4cde88bf sdw_disable_stream +EXPORT_SYMBOL drivers/soundwire/soundwire-bus 0x500cacfc sdw_bus_master_add +EXPORT_SYMBOL drivers/soundwire/soundwire-bus 0x60e31fbb sdw_find_col_index +EXPORT_SYMBOL drivers/soundwire/soundwire-bus 0x71891d59 sdw_deprepare_stream +EXPORT_SYMBOL drivers/soundwire/soundwire-bus 0x83908085 sdw_slave_read_prop +EXPORT_SYMBOL drivers/soundwire/soundwire-bus 0x8a6b3acb sdw_stream_remove_master +EXPORT_SYMBOL drivers/soundwire/soundwire-bus 0x8bbc16f6 sdw_master_read_prop +EXPORT_SYMBOL drivers/soundwire/soundwire-bus 0x9a2e5c48 sdw_stream_remove_slave +EXPORT_SYMBOL drivers/soundwire/soundwire-bus 0x9e122d79 sdw_alloc_stream +EXPORT_SYMBOL drivers/soundwire/soundwire-bus 0xbaad0604 sdw_bus_prep_clk_stop +EXPORT_SYMBOL drivers/soundwire/soundwire-bus 0xbbec2c2e sdw_enable_stream +EXPORT_SYMBOL drivers/soundwire/soundwire-bus 0xda5bce09 sdw_release_stream +EXPORT_SYMBOL drivers/soundwire/soundwire-bus 0xe3b69cea sdw_read +EXPORT_SYMBOL drivers/soundwire/soundwire-bus 0xed81dcb8 sdw_handle_slave_status +EXPORT_SYMBOL drivers/soundwire/soundwire-bus 0xf566f1f9 sdw_bus_exit_clk_stop +EXPORT_SYMBOL drivers/soundwire/soundwire-bus 0xf85a7ecf sdw_clear_slave_status +EXPORT_SYMBOL drivers/ssb/ssb 0x05b09fdf ssb_pmu_set_ldo_voltage +EXPORT_SYMBOL drivers/ssb/ssb 0x34c60f2a ssb_device_disable +EXPORT_SYMBOL drivers/ssb/ssb 0x425ccefa ssb_bus_may_powerdown +EXPORT_SYMBOL drivers/ssb/ssb 0x544d4602 ssb_bus_unregister +EXPORT_SYMBOL drivers/ssb/ssb 0x65e8bb86 ssb_bus_sdiobus_register +EXPORT_SYMBOL drivers/ssb/ssb 0x6fca291c ssb_commit_settings +EXPORT_SYMBOL drivers/ssb/ssb 0x7165a8d0 __ssb_driver_register +EXPORT_SYMBOL drivers/ssb/ssb 0x795e5794 ssb_set_devtypedata +EXPORT_SYMBOL drivers/ssb/ssb 0x84029e13 ssb_dma_translation +EXPORT_SYMBOL drivers/ssb/ssb 0x8ac50880 ssb_pcicore_dev_irqvecs_enable +EXPORT_SYMBOL drivers/ssb/ssb 0x976f1bd4 ssb_device_is_enabled +EXPORT_SYMBOL drivers/ssb/ssb 0xa1f4577c ssb_driver_unregister +EXPORT_SYMBOL drivers/ssb/ssb 0xa30ce072 ssb_device_enable +EXPORT_SYMBOL drivers/ssb/ssb 0xaa858d4c ssb_bus_suspend +EXPORT_SYMBOL drivers/ssb/ssb 0xb9ff05fa ssb_bus_powerup +EXPORT_SYMBOL drivers/ssb/ssb 0xbff92df8 ssb_clockspeed +EXPORT_SYMBOL drivers/ssb/ssb 0xc83e6859 ssb_bus_resume +EXPORT_SYMBOL drivers/ssb/ssb 0xcb17f1cb ssb_admatch_base +EXPORT_SYMBOL drivers/ssb/ssb 0xccc0cf81 ssb_chipco_gpio_control +EXPORT_SYMBOL drivers/ssb/ssb 0xd396f55c ssb_pcihost_register +EXPORT_SYMBOL drivers/ssb/ssb 0xdfc7c6ef ssb_admatch_size +EXPORT_SYMBOL drivers/ssb/ssb 0xec8518e5 ssb_pmu_set_ldo_paref +EXPORT_SYMBOL drivers/staging/fbtft/fbtft 0x0cb38297 fbtft_register_framebuffer +EXPORT_SYMBOL drivers/staging/fbtft/fbtft 0x0d4d36cf fbtft_write_reg8_bus8 +EXPORT_SYMBOL drivers/staging/fbtft/fbtft 0x0eb6cc71 fbtft_write_spi +EXPORT_SYMBOL drivers/staging/fbtft/fbtft 0x0fa96c18 fbtft_register_backlight +EXPORT_SYMBOL drivers/staging/fbtft/fbtft 0x102fe86f fbtft_remove_common +EXPORT_SYMBOL drivers/staging/fbtft/fbtft 0x18b16e33 fbtft_framebuffer_release +EXPORT_SYMBOL drivers/staging/fbtft/fbtft 0x31e344d1 fbtft_dbg_hex +EXPORT_SYMBOL drivers/staging/fbtft/fbtft 0x409bdeac fbtft_unregister_backlight +EXPORT_SYMBOL drivers/staging/fbtft/fbtft 0x40b4a32a fbtft_write_gpio16_wr_latched +EXPORT_SYMBOL drivers/staging/fbtft/fbtft 0x54fbc9ca fbtft_write_gpio16_wr +EXPORT_SYMBOL drivers/staging/fbtft/fbtft 0x678ee926 fbtft_unregister_framebuffer +EXPORT_SYMBOL drivers/staging/fbtft/fbtft 0x715ce5e5 fbtft_write_vmem16_bus8 +EXPORT_SYMBOL drivers/staging/fbtft/fbtft 0x71dd3d33 fbtft_write_vmem16_bus9 +EXPORT_SYMBOL drivers/staging/fbtft/fbtft 0x732e9e97 fbtft_write_reg16_bus16 +EXPORT_SYMBOL drivers/staging/fbtft/fbtft 0x7bcdb855 fbtft_write_vmem8_bus8 +EXPORT_SYMBOL drivers/staging/fbtft/fbtft 0x895e7982 fbtft_init_display +EXPORT_SYMBOL drivers/staging/fbtft/fbtft 0x8f45a8fd fbtft_write_reg8_bus9 +EXPORT_SYMBOL drivers/staging/fbtft/fbtft 0x93e089bc fbtft_write_buf_dc +EXPORT_SYMBOL drivers/staging/fbtft/fbtft 0xa50e02c7 fbtft_probe_common +EXPORT_SYMBOL drivers/staging/fbtft/fbtft 0xc1f94244 fbtft_write_vmem16_bus16 +EXPORT_SYMBOL drivers/staging/fbtft/fbtft 0xc21083a5 fbtft_framebuffer_alloc +EXPORT_SYMBOL drivers/staging/fbtft/fbtft 0xc375c225 fbtft_write_gpio8_wr +EXPORT_SYMBOL drivers/staging/fbtft/fbtft 0xcbc65393 fbtft_write_reg16_bus8 +EXPORT_SYMBOL drivers/staging/fbtft/fbtft 0xd139eec7 fbtft_read_spi +EXPORT_SYMBOL drivers/staging/fbtft/fbtft 0xdb1ae5d1 fbtft_write_spi_emulate_9 +EXPORT_SYMBOL drivers/staging/iio/addac/adt7316 0x84708d68 adt7316_probe +EXPORT_SYMBOL drivers/staging/iio/meter/ade7854 0x56597de8 ade7854_probe +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x00f1357c rtllib_wx_get_essid +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x0166c2f5 rtllib_wx_set_wap +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x022748e9 rtllib_softmac_stop_protocol +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x18695d35 rtllib_EnableIntelPromiscuousMode +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x1fce7181 rtllib_wx_set_rts +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x22166084 rt_global_debug_component +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x27d9659f rtllib_wx_set_power +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x348793c8 notify_wx_assoc_event +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x3ab7f823 rtllib_wx_set_encode +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x3c587db2 rtllib_start_send_beacons +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x3fb20c8b rtllib_xmit +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x458325e0 rtllib_sta_ps_send_null_frame +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x45dd8feb rtllib_wx_get_freq +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x4b85a339 rtllib_stop_scan +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x4ebfab84 dot11d_channel_map +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x4fe251fb rtllib_wx_get_wap +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x50dded33 rtllib_softmac_start_protocol +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x514ae28f rtllib_wx_get_rts +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x5553be50 rtllib_legal_channel +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x57431e1c alloc_rtllib +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x58835ec4 free_rtllib +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x5e68e61a rtllib_wx_set_auth +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x5ecc7ab9 rtllib_wx_get_mode +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x6189a874 rtllib_stop_scan_syncro +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x6406c9b8 rtllib_get_beacon +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x6c00ffbc rtllib_wx_set_mlme +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x6dceb09e rtllib_wx_set_rate +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x700807fe HT_update_self_and_peer_setting +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x76775217 rtllib_wx_get_scan +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x7a7819eb rtllib_ps_tx_ack +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x80904b87 rtllib_wx_get_encode +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x80af89da rtllib_MgntDisconnect +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x8a38190a rtllib_wx_get_rate +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x8fb66857 rtllib_wx_set_gen_ie +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x8fc95c19 rtllib_rx +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x9181fb83 rtllib_wx_set_scan +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x922185a4 rtllib_start_scan_syncro +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x9b1a052c rtllib_reset_queue +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0xa06cc80d rtllib_DisableIntelPromiscuousMode +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0xa22b267f rtllib_wx_set_freq +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0xa546e356 dot11d_init +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0xadb08c74 rtllib_wx_set_rawtx +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0xae752be0 rtllib_act_scanning +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0xb93ad32d rtllib_wx_set_mode +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0xd05cc46b rtllib_wx_get_power +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0xd5aaae89 rtllib_wx_set_encode_ext +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0xdf78f620 rtllib_wlan_frequencies +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0xe2920718 rtllib_wx_get_name +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0xe44c325d rtllib_stop_send_beacons +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0xe5c1e820 RemovePeerTS +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0xf7749488 rtllib_wx_set_essid +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x0217cd3f ieee80211_wx_set_encode_ext_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x0255b6b7 ieee80211_softmac_start_protocol_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x02d711d1 ieee80211_get_beacon_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x051c0b46 ieee80211_softmac_stop_protocol_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x08feddd1 dot11d_update_country_ie +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x0e8c38f9 ieee80211_wx_set_rts_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x1cb53b6d ieee80211_wx_set_power_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x1d202d35 to_legal_channel +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x1d741b27 ieee80211_stop_queue_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x2f99e1d8 ieee80211_rx_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x3110911a ieee80211_wx_get_rts_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x31fa107c ieee80211_wx_set_essid_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x34a0bae0 ieee80211_start_send_beacons_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x3a727ceb is_legal_channel +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x40285b30 ieee80211_stop_send_beacons_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x4b6fadff ieee80211_wx_set_encode_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x4c383edc ieee80211_stop_scan_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x5047d87e ieee80211_wx_set_rate_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x5cf6de91 ieee80211_wx_set_rawtx_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x5f4d5f3c ieee80211_wx_set_wap_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x60d1f6df ieee80211_wx_get_wap_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x66b71bf6 ieee80211_wx_get_encode_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x680ee3f4 SendDisassociation_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x697bf715 ieee80211_wx_get_rate_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x85847cb2 ieee80211_reset_queue_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x8b1227c8 HTUpdateSelfAndPeerSetting +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x9276a5fc ieee80211_disassociate_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x9566aa09 ieee80211_softmac_xmit_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x96e26b9c ieee80211_wx_set_freq_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x987d8205 ieee80211_wx_set_auth_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0xa002a8f4 ieee80211_wake_queue_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0xa6fa4d38 ieee80211_wx_set_gen_ie_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0xaa6f4b4e ieee80211_wpa_supplicant_ioctl_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0xacbebd3c ieee80211_wx_get_name_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0xafde44f7 ieee80211_wx_get_freq_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0xb0b6cd25 ieee80211_is_54g_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0xb2f21375 ieee80211_wx_get_encode_ext_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0xb8d961e1 dot11d_scan_complete +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0xbac2f538 dot11d_reset +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0xc35b9a4b ieee80211_wx_get_scan_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0xc370a43e ieee80211_wlan_frequencies_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0xc6ecbf92 ieee80211_wx_get_power_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0xc8825f53 ieee80211_softmac_scan_syncro_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0xc95f5acb dot11d_get_max_tx_pwr_in_dbm +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0xd15ed1f1 ieee80211_ps_tx_ack_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0xdc94b40b ieee80211_rx_mgt_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0xdc961c61 ieee80211_wx_set_mode_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0xdef0b456 notify_wx_assoc_event_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0xe5aa330a ieee80211_wx_get_mode_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0xe7a709a5 ieee80211_txb_free_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0xe828423f ieee80211_is_shortslot_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0xeba39483 ieee80211_wx_get_essid_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0xece29127 ieee80211_wx_set_mlme_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0xf7fbbaf8 rtl8192u_dot11d_init +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0xfa67b520 ieee80211_wx_set_scan_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0xfd6595c8 ieee80211_start_scan_syncro_rsl +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x04259542 iscsit_reject_cmd +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x0d54dafa iscsit_build_nopin_rsp +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x1304ff38 iscsit_find_cmd_from_itt +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x177be159 iscsit_queue_rsp +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x2fac2e2f iscsit_setup_text_cmd +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x39076d52 iscsit_set_unsolicited_dataout +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x44fbcff3 iscsit_build_datain_pdu +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x4e8d81dc iscsit_build_r2ts_for_cmd +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x50aacc8b iscsit_build_task_mgt_rsp +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x5694cd34 iscsit_setup_scsi_cmd +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x584e0edf iscsit_add_cmd_to_immediate_queue +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x5b439938 iscsit_add_reject +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x5c317922 iscsit_check_dataout_hdr +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x6407ff87 iscsit_process_scsi_cmd +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x663c1b90 iscsit_allocate_cmd +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x71112499 iscsit_handle_task_mgt_cmd +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x72a1b346 iscsit_build_rsp_pdu +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x7fb26239 iscsit_sequence_cmd +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x8049dfeb iscsit_immediate_queue +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x847b50cc iscsit_stop_dataout_timer +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x8d6f5e09 iscsit_handle_snack +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x8e4aa6d4 iscsit_check_dataout_payload +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x8faedfd8 iscsit_logout_post_handler +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x9753b03a iscsi_target_check_login_request +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x991dca0f iscsit_cause_connection_reinstatement +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x9bd3f1d4 iscsit_find_cmd_from_itt_or_dump +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0xa36125b6 iscsit_tmr_post_handler +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0xaba5b495 iscsit_unregister_transport +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0xaedc2d0c iscsit_build_reject +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0xaf532373 iscsit_response_queue +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0xb3fcc9bc iscsi_change_param_sprintf +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0xc0b5d6f1 iscsit_register_transport +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0xc79042df iscsit_free_cmd +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0xccc1c16f iscsit_release_cmd +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0xce2daa95 iscsit_build_logout_rsp +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0xd19334e0 __iscsit_check_dataout_hdr +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0xd32de99a iscsit_process_text_cmd +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0xd842ed1d iscsit_process_nop_out +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0xd9b06371 iscsit_increment_maxcmdsn +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0xd9d5a392 iscsit_setup_nop_out +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0xdf0e69e1 iscsit_get_datain_values +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0xea8788bf iscsit_build_text_rsp +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0xedbdeb7d iscsit_handle_logout_cmd +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0xf34332f0 iscsi_find_param_from_key +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0xf5df0900 iscsit_aborted_task +EXPORT_SYMBOL drivers/target/target_core_mod 0x024d95e1 sbc_dif_verify +EXPORT_SYMBOL drivers/target/target_core_mod 0x0871ffd6 transport_set_vpd_ident +EXPORT_SYMBOL drivers/target/target_core_mod 0x0e245308 target_to_linux_sector +EXPORT_SYMBOL drivers/target/target_core_mod 0x12b203a6 transport_send_check_condition_and_sense +EXPORT_SYMBOL drivers/target/target_core_mod 0x132ac915 target_submit_cmd_map_sgls +EXPORT_SYMBOL drivers/target/target_core_mod 0x142072c0 transport_set_vpd_assoc +EXPORT_SYMBOL drivers/target/target_core_mod 0x19045974 target_remove_session +EXPORT_SYMBOL drivers/target/target_core_mod 0x1acbb1b2 core_tmr_alloc_req +EXPORT_SYMBOL drivers/target/target_core_mod 0x1c4f1a0d target_get_sess_cmd +EXPORT_SYMBOL drivers/target/target_core_mod 0x1e7d26d5 core_allocate_nexus_loss_ua +EXPORT_SYMBOL drivers/target/target_core_mod 0x1ef7f850 sbc_attrib_attrs +EXPORT_SYMBOL drivers/target/target_core_mod 0x1fc3c73e target_show_dynamic_sessions +EXPORT_SYMBOL drivers/target/target_core_mod 0x26c94bec core_tpg_set_initiator_node_tag +EXPORT_SYMBOL drivers/target/target_core_mod 0x3a0bfcb3 passthrough_pr_attrib_attrs +EXPORT_SYMBOL drivers/target/target_core_mod 0x3a20a9d7 transport_set_vpd_ident_type +EXPORT_SYMBOL drivers/target/target_core_mod 0x3c92e582 core_tpg_set_initiator_node_queue_depth +EXPORT_SYMBOL drivers/target/target_core_mod 0x3d92a1ec transport_wait_for_tasks +EXPORT_SYMBOL drivers/target/target_core_mod 0x3eb0bd42 target_nacl_find_deve +EXPORT_SYMBOL drivers/target/target_core_mod 0x44c42708 target_undepend_item +EXPORT_SYMBOL drivers/target/target_core_mod 0x46429ae9 spc_emulate_report_luns +EXPORT_SYMBOL drivers/target/target_core_mod 0x493a0733 transport_lookup_tmr_lun +EXPORT_SYMBOL drivers/target/target_core_mod 0x4cf3db40 sbc_get_write_same_sectors +EXPORT_SYMBOL drivers/target/target_core_mod 0x4e0b4113 target_lun_is_rdonly +EXPORT_SYMBOL drivers/target/target_core_mod 0x4e3db551 target_cmd_init_cdb +EXPORT_SYMBOL drivers/target/target_core_mod 0x50c401ae transport_init_session +EXPORT_SYMBOL drivers/target/target_core_mod 0x50ca39ce core_tpg_register +EXPORT_SYMBOL drivers/target/target_core_mod 0x5de3526a target_cmd_parse_cdb +EXPORT_SYMBOL drivers/target/target_core_mod 0x5f60b5bd sbc_dif_copy_prot +EXPORT_SYMBOL drivers/target/target_core_mod 0x5f626223 passthrough_attrib_attrs +EXPORT_SYMBOL drivers/target/target_core_mod 0x5fce3a6f spc_emulate_evpd_83 +EXPORT_SYMBOL drivers/target/target_core_mod 0x638bffb7 target_free_sgl +EXPORT_SYMBOL drivers/target/target_core_mod 0x68bbb43a target_setup_session +EXPORT_SYMBOL drivers/target/target_core_mod 0x6962cd7a target_backend_unregister +EXPORT_SYMBOL drivers/target/target_core_mod 0x6ebb1a62 transport_backend_register +EXPORT_SYMBOL drivers/target/target_core_mod 0x706d387b target_put_sess_cmd +EXPORT_SYMBOL drivers/target/target_core_mod 0x759b416d transport_generic_new_cmd +EXPORT_SYMBOL drivers/target/target_core_mod 0x76348578 transport_alloc_session +EXPORT_SYMBOL drivers/target/target_core_mod 0x79e92d73 target_depend_item +EXPORT_SYMBOL drivers/target/target_core_mod 0x7a1d0d3c target_alloc_sgl +EXPORT_SYMBOL drivers/target/target_core_mod 0x7ac2b761 transport_free_session +EXPORT_SYMBOL drivers/target/target_core_mod 0x7be0d215 spc_emulate_inquiry_std +EXPORT_SYMBOL drivers/target/target_core_mod 0x7c523c78 transport_copy_sense_to_cmd +EXPORT_SYMBOL drivers/target/target_core_mod 0x89f77852 target_submit_cmd +EXPORT_SYMBOL drivers/target/target_core_mod 0x8c0900de __transport_register_session +EXPORT_SYMBOL drivers/target/target_core_mod 0x8c9b2075 core_tpg_get_initiator_node_acl +EXPORT_SYMBOL drivers/target/target_core_mod 0x93f84eda transport_alloc_session_tags +EXPORT_SYMBOL drivers/target/target_core_mod 0x995df5af sbc_parse_cdb +EXPORT_SYMBOL drivers/target/target_core_mod 0x9df6fbdb target_put_nacl +EXPORT_SYMBOL drivers/target/target_core_mod 0xa055cbc3 spc_parse_cdb +EXPORT_SYMBOL drivers/target/target_core_mod 0xa254b608 transport_deregister_session +EXPORT_SYMBOL drivers/target/target_core_mod 0xa974b7a7 transport_deregister_session_configfs +EXPORT_SYMBOL drivers/target/target_core_mod 0xad6d50b9 passthrough_parse_cdb +EXPORT_SYMBOL drivers/target/target_core_mod 0xae7edde5 target_sess_cmd_list_set_waiting +EXPORT_SYMBOL drivers/target/target_core_mod 0xb88ee155 transport_generic_request_failure +EXPORT_SYMBOL drivers/target/target_core_mod 0xbc5b047a transport_generic_handle_tmr +EXPORT_SYMBOL drivers/target/target_core_mod 0xc2bbdc96 transport_register_session +EXPORT_SYMBOL drivers/target/target_core_mod 0xc857f670 target_unregister_template +EXPORT_SYMBOL drivers/target/target_core_mod 0xc96933b2 core_tpg_deregister +EXPORT_SYMBOL drivers/target/target_core_mod 0xca1250c1 target_show_cmd +EXPORT_SYMBOL drivers/target/target_core_mod 0xcb91e95b transport_kunmap_data_sg +EXPORT_SYMBOL drivers/target/target_core_mod 0xcbd6d2d2 target_register_template +EXPORT_SYMBOL drivers/target/target_core_mod 0xd25abcf9 transport_generic_free_cmd +EXPORT_SYMBOL drivers/target/target_core_mod 0xd43813ab transport_lookup_cmd_lun +EXPORT_SYMBOL drivers/target/target_core_mod 0xd5ad81bc target_configure_unmap_from_queue +EXPORT_SYMBOL drivers/target/target_core_mod 0xde1a281f target_execute_cmd +EXPORT_SYMBOL drivers/target/target_core_mod 0xe590c732 sbc_get_device_type +EXPORT_SYMBOL drivers/target/target_core_mod 0xe685e7ac target_submit_tmr +EXPORT_SYMBOL drivers/target/target_core_mod 0xeaae7044 transport_kmap_data_sg +EXPORT_SYMBOL drivers/target/target_core_mod 0xeba3c84a core_alua_check_nonop_delay +EXPORT_SYMBOL drivers/target/target_core_mod 0xebdf14e7 target_complete_cmd_with_length +EXPORT_SYMBOL drivers/target/target_core_mod 0xf004d0fd target_send_busy +EXPORT_SYMBOL drivers/target/target_core_mod 0xf3c2dfe0 transport_set_vpd_proto_id +EXPORT_SYMBOL drivers/target/target_core_mod 0xf56023d1 transport_init_se_cmd +EXPORT_SYMBOL drivers/target/target_core_mod 0xf6a6da7d core_tpg_check_initiator_node_acl +EXPORT_SYMBOL drivers/target/target_core_mod 0xf6d65c4a target_complete_cmd +EXPORT_SYMBOL drivers/target/target_core_mod 0xfad3ac34 target_wait_for_sess_cmds +EXPORT_SYMBOL drivers/target/target_core_mod 0xfd3a2934 target_tpg_has_node_acl +EXPORT_SYMBOL drivers/target/target_core_mod 0xff6f6bf3 transport_handle_cdb_direct +EXPORT_SYMBOL drivers/usb/class/cdc-wdm 0x431f0497 usb_cdc_wdm_register +EXPORT_SYMBOL drivers/usb/gadget/libcomposite 0x980e5956 usb_os_desc_prepare_interf_dir +EXPORT_SYMBOL drivers/usb/host/sl811-hcd 0xee016e88 sl811h_driver +EXPORT_SYMBOL drivers/usb/serial/usb_wwan 0x0120e149 usb_wwan_write +EXPORT_SYMBOL drivers/usb/serial/usb_wwan 0x062dbb33 usb_wwan_chars_in_buffer +EXPORT_SYMBOL drivers/usb/serial/usb_wwan 0x10be313c usb_wwan_resume +EXPORT_SYMBOL drivers/usb/serial/usb_wwan 0x16757acf usb_wwan_set_serial_info +EXPORT_SYMBOL drivers/usb/serial/usb_wwan 0x18a6e2aa usb_wwan_get_serial_info +EXPORT_SYMBOL drivers/usb/serial/usb_wwan 0x4a636ad3 usb_wwan_write_room +EXPORT_SYMBOL drivers/usb/serial/usb_wwan 0x7163fa7c usb_wwan_open +EXPORT_SYMBOL drivers/usb/serial/usb_wwan 0x8798a244 usb_wwan_dtr_rts +EXPORT_SYMBOL drivers/usb/serial/usb_wwan 0x9ca1562e usb_wwan_close +EXPORT_SYMBOL drivers/usb/serial/usb_wwan 0xad8bfda6 usb_wwan_suspend +EXPORT_SYMBOL drivers/usb/serial/usb_wwan 0xafc9ea4e usb_wwan_tiocmset +EXPORT_SYMBOL drivers/usb/serial/usb_wwan 0xd107f144 usb_wwan_tiocmget +EXPORT_SYMBOL drivers/usb/serial/usb_wwan 0xe3ab3010 usb_wwan_port_remove +EXPORT_SYMBOL drivers/usb/serial/usbserial 0x1d1d259d usb_serial_resume +EXPORT_SYMBOL drivers/usb/serial/usbserial 0x9c5130e1 usb_serial_suspend +EXPORT_SYMBOL drivers/vfio/mdev/mdev 0x02e965fd mdev_get_iommu_device +EXPORT_SYMBOL drivers/vfio/mdev/mdev 0x0c4d5787 mdev_uuid +EXPORT_SYMBOL drivers/vfio/mdev/mdev 0x20b27824 mdev_from_dev +EXPORT_SYMBOL drivers/vfio/mdev/mdev 0x2e862b63 mdev_unregister_device +EXPORT_SYMBOL drivers/vfio/mdev/mdev 0x5aa63879 mdev_get_drvdata +EXPORT_SYMBOL drivers/vfio/mdev/mdev 0x6bc278e4 mdev_register_driver +EXPORT_SYMBOL drivers/vfio/mdev/mdev 0x90df86df mdev_set_drvdata +EXPORT_SYMBOL drivers/vfio/mdev/mdev 0xac256d1b mdev_register_device +EXPORT_SYMBOL drivers/vfio/mdev/mdev 0xc4b7aa35 mdev_dev +EXPORT_SYMBOL drivers/vfio/mdev/mdev 0xc5e3593c mdev_set_iommu_device +EXPORT_SYMBOL drivers/vfio/mdev/mdev 0xc92363f7 mdev_parent_dev +EXPORT_SYMBOL drivers/vfio/mdev/mdev 0xf1e2c034 mdev_unregister_driver +EXPORT_SYMBOL drivers/vfio/vfio 0x001dd584 vfio_unpin_pages +EXPORT_SYMBOL drivers/vfio/vfio 0x05b8cfda vfio_set_irqs_validate_and_prepare +EXPORT_SYMBOL drivers/vfio/vfio 0x0f655355 vfio_info_add_capability +EXPORT_SYMBOL drivers/vfio/vfio 0x48a81d7e vfio_group_pin_pages +EXPORT_SYMBOL drivers/vfio/vfio 0x51f16cdb vfio_info_cap_shift +EXPORT_SYMBOL drivers/vfio/vfio 0x5d3a804b vfio_dma_rw +EXPORT_SYMBOL drivers/vfio/vfio 0x67d2deea vfio_pin_pages +EXPORT_SYMBOL drivers/vfio/vfio 0x7834defd vfio_group_unpin_pages +EXPORT_SYMBOL drivers/vfio/vfio 0xf6c64e8d vfio_register_notifier +EXPORT_SYMBOL drivers/vfio/vfio 0xfbcad209 vfio_unregister_notifier +EXPORT_SYMBOL drivers/vhost/vhost 0x4e855b5a vhost_chr_poll +EXPORT_SYMBOL drivers/vhost/vhost 0x53e6c081 vhost_chr_write_iter +EXPORT_SYMBOL drivers/vhost/vringh 0x2e91ca97 vringh_iov_pull_kern +EXPORT_SYMBOL drivers/vhost/vringh 0x367ce26a vringh_iov_push_user +EXPORT_SYMBOL drivers/vhost/vringh 0x3b2fbd56 vringh_getdesc_kern +EXPORT_SYMBOL drivers/vhost/vringh 0x44d6f41b vringh_notify_enable_kern +EXPORT_SYMBOL drivers/vhost/vringh 0x4d0529ee vringh_complete_multi_user +EXPORT_SYMBOL drivers/vhost/vringh 0x56f694fc vringh_abandon_kern +EXPORT_SYMBOL drivers/vhost/vringh 0x58bc86ac vringh_complete_user +EXPORT_SYMBOL drivers/vhost/vringh 0x5aa88061 vringh_init_user +EXPORT_SYMBOL drivers/vhost/vringh 0x5e47ee29 vringh_notify_enable_user +EXPORT_SYMBOL drivers/vhost/vringh 0x7bda5e6d vringh_iov_push_kern +EXPORT_SYMBOL drivers/vhost/vringh 0x80ad788a vringh_notify_disable_user +EXPORT_SYMBOL drivers/vhost/vringh 0x821e9390 vringh_iov_pull_user +EXPORT_SYMBOL drivers/vhost/vringh 0x85665842 vringh_notify_enable_iotlb +EXPORT_SYMBOL drivers/vhost/vringh 0x8701069c vringh_abandon_iotlb +EXPORT_SYMBOL drivers/vhost/vringh 0x8bfb5a2b vringh_complete_iotlb +EXPORT_SYMBOL drivers/vhost/vringh 0x8e78a074 vringh_need_notify_user +EXPORT_SYMBOL drivers/vhost/vringh 0x91b5a92c vringh_abandon_user +EXPORT_SYMBOL drivers/vhost/vringh 0x98a7e2b2 vringh_getdesc_user +EXPORT_SYMBOL drivers/vhost/vringh 0xa8a5b2a1 vringh_getdesc_iotlb +EXPORT_SYMBOL drivers/vhost/vringh 0xac2d6746 vringh_init_kern +EXPORT_SYMBOL drivers/vhost/vringh 0xae7c3cbf vringh_iov_push_iotlb +EXPORT_SYMBOL drivers/vhost/vringh 0xaf01a583 vringh_set_iotlb +EXPORT_SYMBOL drivers/vhost/vringh 0xbc172ecf vringh_iov_pull_iotlb +EXPORT_SYMBOL drivers/vhost/vringh 0xbf4f4fbd vringh_need_notify_iotlb +EXPORT_SYMBOL drivers/vhost/vringh 0xd3a14d7d vringh_complete_kern +EXPORT_SYMBOL drivers/vhost/vringh 0xe544457e vringh_notify_disable_iotlb +EXPORT_SYMBOL drivers/vhost/vringh 0xee1c7df3 vringh_init_iotlb +EXPORT_SYMBOL drivers/vhost/vringh 0xf1bbb2ad vringh_need_notify_kern +EXPORT_SYMBOL drivers/vhost/vringh 0xff6e6a53 vringh_notify_disable_kern +EXPORT_SYMBOL drivers/video/backlight/lcd 0x5a1e94f7 lcd_device_unregister +EXPORT_SYMBOL drivers/video/backlight/lcd 0x959b66ed lcd_device_register +EXPORT_SYMBOL drivers/video/backlight/lcd 0xbbcb7954 devm_lcd_device_register +EXPORT_SYMBOL drivers/video/backlight/lcd 0xf405a31b devm_lcd_device_unregister +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 0x3743cbbe svga_tilecursor +EXPORT_SYMBOL drivers/video/fbdev/core/svgalib 0x4906457f svga_settile +EXPORT_SYMBOL drivers/video/fbdev/core/svgalib 0x4ab38ef2 svga_set_default_crt_regs +EXPORT_SYMBOL drivers/video/fbdev/core/svgalib 0x7591bb00 svga_tilecopy +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 0x9b31acd1 svga_get_caps +EXPORT_SYMBOL drivers/video/fbdev/core/svgalib 0xb0ab2b2e svga_check_timings +EXPORT_SYMBOL drivers/video/fbdev/core/svgalib 0xbf862d2b svga_get_tilemax +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 0xde952af9 svga_tilefill +EXPORT_SYMBOL drivers/video/fbdev/core/svgalib 0xe28d2a49 svga_set_default_gfx_regs +EXPORT_SYMBOL drivers/video/fbdev/core/svgalib 0xf49b2c44 svga_tileblit +EXPORT_SYMBOL drivers/video/fbdev/core/syscopyarea 0x2f923bb2 sys_copyarea +EXPORT_SYMBOL drivers/video/fbdev/core/sysfillrect 0xdcfd1656 sys_fillrect +EXPORT_SYMBOL drivers/video/fbdev/core/sysimgblt 0x1e17e151 sys_imageblit +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 0x7841167c 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 0xe54387e6 mac_find_mode +EXPORT_SYMBOL drivers/video/fbdev/matrox/g450_pll 0x7b5f6855 matroxfb_g450_setclk +EXPORT_SYMBOL drivers/video/fbdev/matrox/g450_pll 0x8a725291 g450_mnp2f +EXPORT_SYMBOL drivers/video/fbdev/matrox/g450_pll 0xf269c88f matroxfb_g450_setpll_cond +EXPORT_SYMBOL drivers/video/fbdev/matrox/matroxfb_DAC1064 0x5dc68c3a DAC1064_global_restore +EXPORT_SYMBOL drivers/video/fbdev/matrox/matroxfb_DAC1064 0xa2751082 matrox_G100 +EXPORT_SYMBOL drivers/video/fbdev/matrox/matroxfb_DAC1064 0xafab65d4 DAC1064_global_init +EXPORT_SYMBOL drivers/video/fbdev/matrox/matroxfb_DAC1064 0xeb915300 matrox_mystique +EXPORT_SYMBOL drivers/video/fbdev/matrox/matroxfb_Ti3026 0xa1bec59e matrox_millennium +EXPORT_SYMBOL drivers/video/fbdev/matrox/matroxfb_accel 0x2574df3c matrox_cfbX_init +EXPORT_SYMBOL drivers/video/fbdev/matrox/matroxfb_base 0x0b3305aa matroxfb_enable_irq +EXPORT_SYMBOL drivers/video/fbdev/matrox/matroxfb_base 0x3bd04881 matroxfb_unregister_driver +EXPORT_SYMBOL drivers/video/fbdev/matrox/matroxfb_base 0x8f9002c2 matroxfb_register_driver +EXPORT_SYMBOL drivers/video/fbdev/matrox/matroxfb_base 0x90f0e0d3 matroxfb_wait_for_sync +EXPORT_SYMBOL drivers/video/fbdev/matrox/matroxfb_g450 0x82f84310 matroxfb_g450_connect +EXPORT_SYMBOL drivers/video/fbdev/matrox/matroxfb_g450 0xbc283407 matroxfb_g450_shutdown +EXPORT_SYMBOL drivers/video/fbdev/matrox/matroxfb_misc 0x25cf8049 matroxfb_PLL_calcclock +EXPORT_SYMBOL drivers/video/fbdev/matrox/matroxfb_misc 0x8a4b94f0 matroxfb_DAC_out +EXPORT_SYMBOL drivers/video/fbdev/matrox/matroxfb_misc 0x9a05a19f matroxfb_vgaHWinit +EXPORT_SYMBOL drivers/video/fbdev/matrox/matroxfb_misc 0xb1a90cd0 matroxfb_read_pins +EXPORT_SYMBOL drivers/video/fbdev/matrox/matroxfb_misc 0xbc092b42 matroxfb_vgaHWrestore +EXPORT_SYMBOL drivers/video/fbdev/matrox/matroxfb_misc 0xcdc90c64 matroxfb_var2my +EXPORT_SYMBOL drivers/video/fbdev/matrox/matroxfb_misc 0xdd854088 matroxfb_DAC_in +EXPORT_SYMBOL drivers/video/fbdev/omap2/omapfb/dss/omapdss 0x01ea132e dispc_runtime_put +EXPORT_SYMBOL drivers/video/fbdev/omap2/omapfb/dss/omapdss 0x03005606 omapdss_get_version +EXPORT_SYMBOL drivers/video/fbdev/omap2/omapfb/dss/omapdss 0x0786ef5c omapdss_unregister_display +EXPORT_SYMBOL drivers/video/fbdev/omap2/omapfb/dss/omapdss 0x097bf44d omapdss_find_mgr_from_display +EXPORT_SYMBOL drivers/video/fbdev/omap2/omapfb/dss/omapdss 0x261dcad2 dss_mgr_register_framedone_handler +EXPORT_SYMBOL drivers/video/fbdev/omap2/omapfb/dss/omapdss 0x3082a0b3 dss_feat_get_supported_color_modes +EXPORT_SYMBOL drivers/video/fbdev/omap2/omapfb/dss/omapdss 0x36d1d536 omap_dss_get_overlay_manager +EXPORT_SYMBOL drivers/video/fbdev/omap2/omapfb/dss/omapdss 0x38e61b54 omapdss_find_output_from_display +EXPORT_SYMBOL drivers/video/fbdev/omap2/omapfb/dss/omapdss 0x3a50573f dispc_ovl_check +EXPORT_SYMBOL drivers/video/fbdev/omap2/omapfb/dss/omapdss 0x3d36d54d dispc_mgr_set_lcd_config +EXPORT_SYMBOL drivers/video/fbdev/omap2/omapfb/dss/omapdss 0x42912b0c dispc_clear_irqstatus +EXPORT_SYMBOL drivers/video/fbdev/omap2/omapfb/dss/omapdss 0x45d74ef6 dispc_mgr_enable +EXPORT_SYMBOL drivers/video/fbdev/omap2/omapfb/dss/omapdss 0x4bd67a8d dispc_write_irqenable +EXPORT_SYMBOL drivers/video/fbdev/omap2/omapfb/dss/omapdss 0x4c33081d omapdss_compat_uninit +EXPORT_SYMBOL drivers/video/fbdev/omap2/omapfb/dss/omapdss 0x5070b2bc omapdss_default_get_resolution +EXPORT_SYMBOL drivers/video/fbdev/omap2/omapfb/dss/omapdss 0x51d0f14d omap_dss_put_device +EXPORT_SYMBOL drivers/video/fbdev/omap2/omapfb/dss/omapdss 0x546809a2 omap_dss_find_output_by_port_node +EXPORT_SYMBOL drivers/video/fbdev/omap2/omapfb/dss/omapdss 0x54f6830a omapdss_get_default_display_name +EXPORT_SYMBOL drivers/video/fbdev/omap2/omapfb/dss/omapdss 0x5689afe7 dispc_ovl_enable +EXPORT_SYMBOL drivers/video/fbdev/omap2/omapfb/dss/omapdss 0x636b3461 omap_dss_get_num_overlays +EXPORT_SYMBOL drivers/video/fbdev/omap2/omapfb/dss/omapdss 0x66cdd3c9 dispc_mgr_setup +EXPORT_SYMBOL drivers/video/fbdev/omap2/omapfb/dss/omapdss 0x6b1a3090 omap_dss_ntsc_timings +EXPORT_SYMBOL drivers/video/fbdev/omap2/omapfb/dss/omapdss 0x70e39dae dss_uninstall_mgr_ops +EXPORT_SYMBOL drivers/video/fbdev/omap2/omapfb/dss/omapdss 0x7e9099b4 dss_mgr_disable +EXPORT_SYMBOL drivers/video/fbdev/omap2/omapfb/dss/omapdss 0x827143a1 omap_dispc_unregister_isr +EXPORT_SYMBOL drivers/video/fbdev/omap2/omapfb/dss/omapdss 0x87fdb051 dispc_mgr_go +EXPORT_SYMBOL drivers/video/fbdev/omap2/omapfb/dss/omapdss 0x8bd864d4 omap_dss_find_device +EXPORT_SYMBOL drivers/video/fbdev/omap2/omapfb/dss/omapdss 0x93963a85 dss_feat_get_num_mgrs +EXPORT_SYMBOL drivers/video/fbdev/omap2/omapfb/dss/omapdss 0x95d5c793 omapdss_default_get_recommended_bpp +EXPORT_SYMBOL drivers/video/fbdev/omap2/omapfb/dss/omapdss 0x967cb4e8 dispc_ovl_set_channel_out +EXPORT_SYMBOL drivers/video/fbdev/omap2/omapfb/dss/omapdss 0x9beb1294 dss_mgr_set_timings +EXPORT_SYMBOL drivers/video/fbdev/omap2/omapfb/dss/omapdss 0xa13d27f5 dispc_read_irqenable +EXPORT_SYMBOL drivers/video/fbdev/omap2/omapfb/dss/omapdss 0xa4f6a175 dispc_mgr_get_sync_lost_irq +EXPORT_SYMBOL drivers/video/fbdev/omap2/omapfb/dss/omapdss 0xa884016b omap_dss_get_next_device +EXPORT_SYMBOL drivers/video/fbdev/omap2/omapfb/dss/omapdss 0xaea7e534 omap_dss_get_overlay +EXPORT_SYMBOL drivers/video/fbdev/omap2/omapfb/dss/omapdss 0xaff1a67e omapdss_register_display +EXPORT_SYMBOL drivers/video/fbdev/omap2/omapfb/dss/omapdss 0xb3ed5aa9 dispc_mgr_is_enabled +EXPORT_SYMBOL drivers/video/fbdev/omap2/omapfb/dss/omapdss 0xb6951de9 omapdss_output_set_device +EXPORT_SYMBOL drivers/video/fbdev/omap2/omapfb/dss/omapdss 0xb7f94a15 dispc_mgr_set_timings +EXPORT_SYMBOL drivers/video/fbdev/omap2/omapfb/dss/omapdss 0xba8ddcea dispc_mgr_get_vsync_irq +EXPORT_SYMBOL drivers/video/fbdev/omap2/omapfb/dss/omapdss 0xbafeee36 dispc_runtime_get +EXPORT_SYMBOL drivers/video/fbdev/omap2/omapfb/dss/omapdss 0xbd827095 dss_install_mgr_ops +EXPORT_SYMBOL drivers/video/fbdev/omap2/omapfb/dss/omapdss 0xbe0d4752 omap_video_timings_to_videomode +EXPORT_SYMBOL drivers/video/fbdev/omap2/omapfb/dss/omapdss 0xc3a4e566 dss_mgr_enable +EXPORT_SYMBOL drivers/video/fbdev/omap2/omapfb/dss/omapdss 0xc45105c3 dispc_mgr_go_busy +EXPORT_SYMBOL drivers/video/fbdev/omap2/omapfb/dss/omapdss 0xcc197296 omap_dispc_register_isr +EXPORT_SYMBOL drivers/video/fbdev/omap2/omapfb/dss/omapdss 0xceb0091d omapdss_output_unset_device +EXPORT_SYMBOL drivers/video/fbdev/omap2/omapfb/dss/omapdss 0xcede97c5 omapdss_default_get_timings +EXPORT_SYMBOL drivers/video/fbdev/omap2/omapfb/dss/omapdss 0xd1067ba7 dispc_ovl_enabled +EXPORT_SYMBOL drivers/video/fbdev/omap2/omapfb/dss/omapdss 0xd70adbc1 videomode_to_omap_video_timings +EXPORT_SYMBOL drivers/video/fbdev/omap2/omapfb/dss/omapdss 0xd8ed186b omap_dss_pal_timings +EXPORT_SYMBOL drivers/video/fbdev/omap2/omapfb/dss/omapdss 0xdb93b838 dispc_free_irq +EXPORT_SYMBOL drivers/video/fbdev/omap2/omapfb/dss/omapdss 0xdc8a7079 omap_dss_find_output +EXPORT_SYMBOL drivers/video/fbdev/omap2/omapfb/dss/omapdss 0xde8b74b2 dss_mgr_set_lcd_config +EXPORT_SYMBOL drivers/video/fbdev/omap2/omapfb/dss/omapdss 0xe71ea1af dss_mgr_disconnect +EXPORT_SYMBOL drivers/video/fbdev/omap2/omapfb/dss/omapdss 0xecba911c omapdss_unregister_output +EXPORT_SYMBOL drivers/video/fbdev/omap2/omapfb/dss/omapdss 0xee2bc2d0 omapdss_is_initialized +EXPORT_SYMBOL drivers/video/fbdev/omap2/omapfb/dss/omapdss 0xee6601a9 dss_mgr_unregister_framedone_handler +EXPORT_SYMBOL drivers/video/fbdev/omap2/omapfb/dss/omapdss 0xeeb2704a dss_mgr_connect +EXPORT_SYMBOL drivers/video/fbdev/omap2/omapfb/dss/omapdss 0xef3b2795 dispc_mgr_get_framedone_irq +EXPORT_SYMBOL drivers/video/fbdev/omap2/omapfb/dss/omapdss 0xf34ede02 dss_mgr_start_update +EXPORT_SYMBOL drivers/video/fbdev/omap2/omapfb/dss/omapdss 0xf4a7fc6d omapdss_compat_init +EXPORT_SYMBOL drivers/video/fbdev/omap2/omapfb/dss/omapdss 0xf4f63234 dispc_read_irqstatus +EXPORT_SYMBOL drivers/video/fbdev/omap2/omapfb/dss/omapdss 0xf9427374 dispc_request_irq +EXPORT_SYMBOL drivers/video/fbdev/omap2/omapfb/dss/omapdss 0xf99e1799 omap_dss_get_output +EXPORT_SYMBOL drivers/video/fbdev/omap2/omapfb/dss/omapdss 0xfa95d18f dispc_ovl_setup +EXPORT_SYMBOL drivers/video/fbdev/omap2/omapfb/dss/omapdss 0xfa985cb4 omap_dss_get_device +EXPORT_SYMBOL drivers/video/fbdev/omap2/omapfb/dss/omapdss 0xfc2ce6b1 omapdss_register_output +EXPORT_SYMBOL drivers/video/fbdev/omap2/omapfb/dss/omapdss 0xfe40bf95 dss_feat_get_num_ovls +EXPORT_SYMBOL drivers/video/fbdev/omap2/omapfb/dss/omapdss 0xffd2cf99 omap_dss_get_num_overlay_managers +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/w1/slaves/w1_ds2780 0x330d53e6 w1_ds2780_eeprom_cmd +EXPORT_SYMBOL drivers/w1/slaves/w1_ds2780 0xb926e48d w1_ds2780_io +EXPORT_SYMBOL drivers/w1/slaves/w1_ds2781 0x00d5d993 w1_ds2781_io +EXPORT_SYMBOL drivers/w1/slaves/w1_ds2781 0x85a28f5b w1_ds2781_eeprom_cmd +EXPORT_SYMBOL drivers/w1/wire 0x6929043e w1_add_master_device +EXPORT_SYMBOL drivers/w1/wire 0x7c34493c w1_register_family +EXPORT_SYMBOL drivers/w1/wire 0x92f8f6a8 w1_remove_master_device +EXPORT_SYMBOL drivers/w1/wire 0xd6cbbefc w1_unregister_family +EXPORT_SYMBOL drivers/watchdog/bd70528_wdt 0x094a0f4a bd70528_wdt_set +EXPORT_SYMBOL drivers/watchdog/bd70528_wdt 0xa67efb9a bd70528_wdt_lock +EXPORT_SYMBOL drivers/watchdog/bd70528_wdt 0xff383648 bd70528_wdt_unlock +EXPORT_SYMBOL fs/fscache/fscache 0x03e82969 fscache_put_operation +EXPORT_SYMBOL fs/fscache/fscache 0x04cd350c fscache_fsdef_index +EXPORT_SYMBOL fs/fscache/fscache 0x04e6733e fscache_operation_init +EXPORT_SYMBOL fs/fscache/fscache 0x059a00d2 fscache_cache_cleared_wq +EXPORT_SYMBOL fs/fscache/fscache 0x18494915 __fscache_unregister_netfs +EXPORT_SYMBOL fs/fscache/fscache 0x215ebcbd __fscache_enable_cookie +EXPORT_SYMBOL fs/fscache/fscache 0x24ac2d7d fscache_object_init +EXPORT_SYMBOL fs/fscache/fscache 0x2fa87285 fscache_add_cache +EXPORT_SYMBOL fs/fscache/fscache 0x32f6c266 fscache_object_lookup_negative +EXPORT_SYMBOL fs/fscache/fscache 0x35167087 fscache_object_mark_killed +EXPORT_SYMBOL fs/fscache/fscache 0x3848e12a fscache_mark_pages_cached +EXPORT_SYMBOL fs/fscache/fscache 0x392a22e8 __fscache_attr_changed +EXPORT_SYMBOL fs/fscache/fscache 0x3d33e5b2 __fscache_alloc_page +EXPORT_SYMBOL fs/fscache/fscache 0x457d26de fscache_init_cache +EXPORT_SYMBOL fs/fscache/fscache 0x502f25a9 __fscache_acquire_cookie +EXPORT_SYMBOL fs/fscache/fscache 0x518ec8f6 __fscache_read_or_alloc_page +EXPORT_SYMBOL fs/fscache/fscache 0x53260420 __fscache_relinquish_cookie +EXPORT_SYMBOL fs/fscache/fscache 0x58b893a0 __fscache_check_page_write +EXPORT_SYMBOL fs/fscache/fscache 0x6970badd fscache_mark_page_cached +EXPORT_SYMBOL fs/fscache/fscache 0x70aceece fscache_obtained_object +EXPORT_SYMBOL fs/fscache/fscache 0x70d26bfe __fscache_uncache_page +EXPORT_SYMBOL fs/fscache/fscache 0x71a8fa4d __fscache_check_consistency +EXPORT_SYMBOL fs/fscache/fscache 0x735fd450 __fscache_wait_on_page_write +EXPORT_SYMBOL fs/fscache/fscache 0x74530ecd fscache_op_debug_id +EXPORT_SYMBOL fs/fscache/fscache 0x7a1f8b1e fscache_op_complete +EXPORT_SYMBOL fs/fscache/fscache 0x7a33262a __fscache_disable_cookie +EXPORT_SYMBOL fs/fscache/fscache 0x80ab7a2f fscache_io_error +EXPORT_SYMBOL fs/fscache/fscache 0x8df8c39e __fscache_wait_on_invalidate +EXPORT_SYMBOL fs/fscache/fscache 0x8eb1fb4f __fscache_invalidate +EXPORT_SYMBOL fs/fscache/fscache 0x98e028be __fscache_update_cookie +EXPORT_SYMBOL fs/fscache/fscache 0x9c56a844 __fscache_read_or_alloc_pages +EXPORT_SYMBOL fs/fscache/fscache 0x9cbb0b54 __fscache_register_netfs +EXPORT_SYMBOL fs/fscache/fscache 0x9e491557 __fscache_write_page +EXPORT_SYMBOL fs/fscache/fscache 0x9f0fe80d fscache_object_retrying_stale +EXPORT_SYMBOL fs/fscache/fscache 0xa1530aea __fscache_readpages_cancel +EXPORT_SYMBOL fs/fscache/fscache 0xa66e8e3b fscache_enqueue_operation +EXPORT_SYMBOL fs/fscache/fscache 0xa8d01aaa fscache_withdraw_cache +EXPORT_SYMBOL fs/fscache/fscache 0xde74e8c2 fscache_object_destroy +EXPORT_SYMBOL fs/fscache/fscache 0xe72bfd33 fscache_check_aux +EXPORT_SYMBOL fs/fscache/fscache 0xee102824 __fscache_uncache_all_inode_pages +EXPORT_SYMBOL fs/fscache/fscache 0xf841da10 __fscache_maybe_release_page +EXPORT_SYMBOL fs/ocfs2/cluster/ocfs2_nodemanager 0xbfd7d7a2 o2hb_global_heartbeat_active +EXPORT_SYMBOL fs/quota/quota_tree 0x10a3d752 qtree_release_dquot +EXPORT_SYMBOL fs/quota/quota_tree 0x8fa8eeb8 qtree_entry_unused +EXPORT_SYMBOL fs/quota/quota_tree 0x9e856381 qtree_get_next_id +EXPORT_SYMBOL fs/quota/quota_tree 0xa3ea6e29 qtree_read_dquot +EXPORT_SYMBOL fs/quota/quota_tree 0xc2b3908c qtree_delete_dquot +EXPORT_SYMBOL fs/quota/quota_tree 0xe5020fe2 qtree_write_dquot +EXPORT_SYMBOL lib/crc-itu-t 0xa2048e95 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 0xba95c5c0 crc7_be +EXPORT_SYMBOL lib/crc8 0x5a742e56 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/libblake2s 0x246ea205 blake2s_update +EXPORT_SYMBOL lib/crypto/libblake2s 0x2cfa6ca1 blake2s256_hmac +EXPORT_SYMBOL lib/crypto/libblake2s 0xadae6df8 blake2s_final +EXPORT_SYMBOL lib/crypto/libblake2s-generic 0x23eea787 blake2s_compress_generic +EXPORT_SYMBOL lib/crypto/libchacha 0xcec122d7 chacha_crypt_generic +EXPORT_SYMBOL lib/crypto/libchacha20poly1305 0x5519169b xchacha20poly1305_decrypt +EXPORT_SYMBOL lib/crypto/libchacha20poly1305 0x5d776412 chacha20poly1305_decrypt +EXPORT_SYMBOL lib/crypto/libchacha20poly1305 0x64375eb4 chacha20poly1305_encrypt +EXPORT_SYMBOL lib/crypto/libchacha20poly1305 0x738d84bf xchacha20poly1305_encrypt +EXPORT_SYMBOL lib/crypto/libchacha20poly1305 0xb1693668 chacha20poly1305_decrypt_sg_inplace +EXPORT_SYMBOL lib/crypto/libchacha20poly1305 0xbb7cb0d3 chacha20poly1305_encrypt_sg_inplace +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 0x4dba97c6 poly1305_core_setkey +EXPORT_SYMBOL lib/crypto/libpoly1305 0xbcb90cb3 poly1305_core_emit +EXPORT_SYMBOL lib/libcrc32c 0x89a0cd52 crc32c_impl +EXPORT_SYMBOL lib/libcrc32c 0xb15b4109 crc32c +EXPORT_SYMBOL lib/lru_cache 0x03f599c7 lc_get_cumulative +EXPORT_SYMBOL lib/lru_cache 0x4feade4b lc_create +EXPORT_SYMBOL lib/lru_cache 0x56fc3ea0 lc_put +EXPORT_SYMBOL lib/lru_cache 0x619ed575 lc_try_get +EXPORT_SYMBOL lib/lru_cache 0x84e0214b lc_committed +EXPORT_SYMBOL lib/lru_cache 0xbbe7c23c lc_element_by_index +EXPORT_SYMBOL lib/lru_cache 0xc48fa976 lc_set +EXPORT_SYMBOL lib/lru_cache 0xc6e4cd46 lc_reset +EXPORT_SYMBOL lib/lru_cache 0xcb7e3981 lc_seq_printf_stats +EXPORT_SYMBOL lib/lru_cache 0xcb990a55 lc_try_lock +EXPORT_SYMBOL lib/lru_cache 0xcbec7b3a lc_seq_dump_details +EXPORT_SYMBOL lib/lru_cache 0xcea6747e lc_destroy +EXPORT_SYMBOL lib/lru_cache 0xd212c9f0 lc_get +EXPORT_SYMBOL lib/lru_cache 0xeb13128b lc_del +EXPORT_SYMBOL lib/lru_cache 0xf460a486 lc_is_used +EXPORT_SYMBOL lib/lru_cache 0xf5ea5f5c lc_index_of +EXPORT_SYMBOL lib/lru_cache 0xf6acec20 lc_find +EXPORT_SYMBOL lib/lz4/lz4hc_compress 0x4cc636f2 LZ4_loadDictHC +EXPORT_SYMBOL lib/lz4/lz4hc_compress 0x765fd165 LZ4_saveDictHC +EXPORT_SYMBOL lib/lz4/lz4hc_compress 0xd02774b1 LZ4_compress_HC_continue +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 0x067fa594 objagg_create +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 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 0x041cd22b lowpan_nhc_add +EXPORT_SYMBOL net/6lowpan/6lowpan 0x0b0cd397 lowpan_unregister_netdev +EXPORT_SYMBOL net/6lowpan/6lowpan 0x25a6b826 lowpan_register_netdevice +EXPORT_SYMBOL net/6lowpan/6lowpan 0x42ed65e1 lowpan_nhc_del +EXPORT_SYMBOL net/6lowpan/6lowpan 0x4d2171bb lowpan_register_netdev +EXPORT_SYMBOL net/6lowpan/6lowpan 0xef8e7846 lowpan_unregister_netdevice +EXPORT_SYMBOL net/802/p8022 0x28f826cc register_8022_client +EXPORT_SYMBOL net/802/p8022 0x4bfc84c4 unregister_8022_client +EXPORT_SYMBOL net/802/psnap 0x4b6afc86 register_snap_client +EXPORT_SYMBOL net/802/psnap 0x7518f68c unregister_snap_client +EXPORT_SYMBOL net/9p/9pnet 0x02c82cfb p9_client_statfs +EXPORT_SYMBOL net/9p/9pnet 0x0edc8500 p9_tag_lookup +EXPORT_SYMBOL net/9p/9pnet 0x12af1dc7 p9_client_fcreate +EXPORT_SYMBOL net/9p/9pnet 0x175a653b p9_client_getlock_dotl +EXPORT_SYMBOL net/9p/9pnet 0x1bbfd96d p9_client_create +EXPORT_SYMBOL net/9p/9pnet 0x1c46a6c8 p9_release_pages +EXPORT_SYMBOL net/9p/9pnet 0x1d632ad5 p9_client_getattr_dotl +EXPORT_SYMBOL net/9p/9pnet 0x22a05bbe p9_fcall_fini +EXPORT_SYMBOL net/9p/9pnet 0x2ec931d8 p9_client_link +EXPORT_SYMBOL net/9p/9pnet 0x3d73a797 p9_errstr2errno +EXPORT_SYMBOL net/9p/9pnet 0x3d986cf9 p9dirent_read +EXPORT_SYMBOL net/9p/9pnet 0x46ca4ba4 p9_client_attach +EXPORT_SYMBOL net/9p/9pnet 0x4a552fdd p9_client_setattr +EXPORT_SYMBOL net/9p/9pnet 0x4c1c47a1 p9_req_put +EXPORT_SYMBOL net/9p/9pnet 0x56d79881 p9_client_renameat +EXPORT_SYMBOL net/9p/9pnet 0x57e02dde v9fs_unregister_trans +EXPORT_SYMBOL net/9p/9pnet 0x5c33d9d7 p9_is_proto_dotu +EXPORT_SYMBOL net/9p/9pnet 0x5c88e62f p9_client_stat +EXPORT_SYMBOL net/9p/9pnet 0x648b26ed p9_client_clunk +EXPORT_SYMBOL net/9p/9pnet 0x693c85ca p9_client_remove +EXPORT_SYMBOL net/9p/9pnet 0x6aa76fa5 v9fs_get_trans_by_name +EXPORT_SYMBOL net/9p/9pnet 0x7062be50 p9_client_read_once +EXPORT_SYMBOL net/9p/9pnet 0x762a6e8e p9_client_mknod_dotl +EXPORT_SYMBOL net/9p/9pnet 0x780a1b7d p9_client_begin_disconnect +EXPORT_SYMBOL net/9p/9pnet 0x7a09129f p9_is_proto_dotl +EXPORT_SYMBOL net/9p/9pnet 0x80bbc6fd p9_parse_header +EXPORT_SYMBOL net/9p/9pnet 0x8129cac1 p9_client_symlink +EXPORT_SYMBOL net/9p/9pnet 0x960fc351 p9_client_fsync +EXPORT_SYMBOL net/9p/9pnet 0xa7557320 p9_client_readdir +EXPORT_SYMBOL net/9p/9pnet 0xaa382516 p9_client_open +EXPORT_SYMBOL net/9p/9pnet 0xae1351a8 p9_client_disconnect +EXPORT_SYMBOL net/9p/9pnet 0xb54b78cc p9_client_rename +EXPORT_SYMBOL net/9p/9pnet 0xb7dd4def p9_client_unlinkat +EXPORT_SYMBOL net/9p/9pnet 0xb8ae541f p9_client_mkdir_dotl +EXPORT_SYMBOL net/9p/9pnet 0xb929c86b v9fs_register_trans +EXPORT_SYMBOL net/9p/9pnet 0xb9dae1ef p9_client_readlink +EXPORT_SYMBOL net/9p/9pnet 0xbfc15c29 p9_client_cb +EXPORT_SYMBOL net/9p/9pnet 0xc48a955f p9_client_walk +EXPORT_SYMBOL net/9p/9pnet 0xc53fb13c p9_client_wstat +EXPORT_SYMBOL net/9p/9pnet 0xca839173 p9_client_read +EXPORT_SYMBOL net/9p/9pnet 0xd384c683 p9stat_free +EXPORT_SYMBOL net/9p/9pnet 0xd83d6090 v9fs_get_default_trans +EXPORT_SYMBOL net/9p/9pnet 0xdaa967be p9_client_destroy +EXPORT_SYMBOL net/9p/9pnet 0xdf74c0c0 p9_client_lock_dotl +EXPORT_SYMBOL net/9p/9pnet 0xe32a04e0 p9_client_create_dotl +EXPORT_SYMBOL net/9p/9pnet 0xe395cb43 p9_client_write +EXPORT_SYMBOL net/9p/9pnet 0xe58a3360 p9_error_init +EXPORT_SYMBOL net/9p/9pnet 0xe6b1e55e p9stat_read +EXPORT_SYMBOL net/9p/9pnet 0xf28b00f5 p9_show_client_options +EXPORT_SYMBOL net/appletalk/appletalk 0x5de0eecd atrtr_get_dev +EXPORT_SYMBOL net/appletalk/appletalk 0x7b2239c0 aarp_send_ddp +EXPORT_SYMBOL net/appletalk/appletalk 0x7dcd8eac atalk_find_dev_addr +EXPORT_SYMBOL net/appletalk/appletalk 0xaee5e4ca alloc_ltalkdev +EXPORT_SYMBOL net/atm/atm 0x07b2d7d7 vcc_release_async +EXPORT_SYMBOL net/atm/atm 0x161bccc2 vcc_process_recv_queue +EXPORT_SYMBOL net/atm/atm 0x2cc2d52d vcc_hash +EXPORT_SYMBOL net/atm/atm 0x4443d399 atm_proc_root +EXPORT_SYMBOL net/atm/atm 0x611f00f8 deregister_atm_ioctl +EXPORT_SYMBOL net/atm/atm 0x6b9a3871 vcc_sklist_lock +EXPORT_SYMBOL net/atm/atm 0x92a3131f register_atm_ioctl +EXPORT_SYMBOL net/atm/atm 0x99fb5075 atm_dev_deregister +EXPORT_SYMBOL net/atm/atm 0x9feaf287 sonet_subtract_stats +EXPORT_SYMBOL net/atm/atm 0xaa024146 sonet_copy_stats +EXPORT_SYMBOL net/atm/atm 0xac26ff38 atm_dev_signal_change +EXPORT_SYMBOL net/atm/atm 0xb3be1357 atm_init_aal5 +EXPORT_SYMBOL net/atm/atm 0xbd9fb98f atm_dev_register +EXPORT_SYMBOL net/atm/atm 0xda0db069 atm_dev_lookup +EXPORT_SYMBOL net/atm/atm 0xe7522eb1 atm_alloc_charge +EXPORT_SYMBOL net/atm/atm 0xe79b14a5 atm_charge +EXPORT_SYMBOL net/atm/atm 0xed9dd106 atm_dev_release_vccs +EXPORT_SYMBOL net/atm/atm 0xf49bc67a atm_pcr_goal +EXPORT_SYMBOL net/atm/atm 0xffd60164 vcc_insert_socket +EXPORT_SYMBOL net/ax25/ax25 0x081f6605 ax25_header_ops +EXPORT_SYMBOL net/ax25/ax25 0x10a5a6dd ax25_linkfail_release +EXPORT_SYMBOL net/ax25/ax25 0x14cecd59 ax25_display_timer +EXPORT_SYMBOL net/ax25/ax25 0x242852b9 ax25_uid_policy +EXPORT_SYMBOL net/ax25/ax25 0x38a9ec96 ax25_send_frame +EXPORT_SYMBOL net/ax25/ax25 0x4502c65a asc2ax +EXPORT_SYMBOL net/ax25/ax25 0x4e12c43e ax25_listen_release +EXPORT_SYMBOL net/ax25/ax25 0x5091a66a ax25_listen_register +EXPORT_SYMBOL net/ax25/ax25 0x53dea1ff ax2asc +EXPORT_SYMBOL net/ax25/ax25 0x6a349d73 ax25_linkfail_register +EXPORT_SYMBOL net/ax25/ax25 0x89d7eaeb ax25_find_cb +EXPORT_SYMBOL net/ax25/ax25 0x8ede9e26 ax25_protocol_release +EXPORT_SYMBOL net/ax25/ax25 0xbb2edf21 ax25_ip_xmit +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/bluetooth/bluetooth 0x0718b8b7 bt_info +EXPORT_SYMBOL net/bluetooth/bluetooth 0x125aa2a9 hci_alloc_dev +EXPORT_SYMBOL net/bluetooth/bluetooth 0x1798efb9 hci_get_route +EXPORT_SYMBOL net/bluetooth/bluetooth 0x1ea5a2c0 hci_conn_switch_role +EXPORT_SYMBOL net/bluetooth/bluetooth 0x214e4265 bt_warn +EXPORT_SYMBOL net/bluetooth/bluetooth 0x23fe7314 hci_reset_dev +EXPORT_SYMBOL net/bluetooth/bluetooth 0x2924a206 bt_sock_ioctl +EXPORT_SYMBOL net/bluetooth/bluetooth 0x2a477cfa hci_conn_check_secure +EXPORT_SYMBOL net/bluetooth/bluetooth 0x2dc58456 bt_sock_link +EXPORT_SYMBOL net/bluetooth/bluetooth 0x3a385228 l2cap_conn_put +EXPORT_SYMBOL net/bluetooth/bluetooth 0x3cdc3075 hci_set_fw_info +EXPORT_SYMBOL net/bluetooth/bluetooth 0x49d4a149 __hci_cmd_sync_ev +EXPORT_SYMBOL net/bluetooth/bluetooth 0x4a253f85 bt_sock_reclassify_lock +EXPORT_SYMBOL net/bluetooth/bluetooth 0x5b1b39b5 hci_conn_security +EXPORT_SYMBOL net/bluetooth/bluetooth 0x6ede8a1b bt_accept_unlink +EXPORT_SYMBOL net/bluetooth/bluetooth 0x733ae71a bt_procfs_init +EXPORT_SYMBOL net/bluetooth/bluetooth 0x75e39b16 __hci_cmd_send +EXPORT_SYMBOL net/bluetooth/bluetooth 0x77a54ebb l2cap_chan_close +EXPORT_SYMBOL net/bluetooth/bluetooth 0x7aad008b bt_to_errno +EXPORT_SYMBOL net/bluetooth/bluetooth 0x7afca2c4 bt_accept_dequeue +EXPORT_SYMBOL net/bluetooth/bluetooth 0x7b5ce5c3 baswap +EXPORT_SYMBOL net/bluetooth/bluetooth 0x7b8c32f1 bt_err +EXPORT_SYMBOL net/bluetooth/bluetooth 0x7d70efab hci_unregister_dev +EXPORT_SYMBOL net/bluetooth/bluetooth 0x80da8983 l2cap_is_socket +EXPORT_SYMBOL net/bluetooth/bluetooth 0x82f47b11 bt_sock_recvmsg +EXPORT_SYMBOL net/bluetooth/bluetooth 0x84c830fd hci_mgmt_chan_unregister +EXPORT_SYMBOL net/bluetooth/bluetooth 0x8cb9b504 hci_free_dev +EXPORT_SYMBOL net/bluetooth/bluetooth 0x8e5eb5a2 l2cap_register_user +EXPORT_SYMBOL net/bluetooth/bluetooth 0x8f1ab56e bt_sock_wait_ready +EXPORT_SYMBOL net/bluetooth/bluetooth 0x8fea24bd bt_sock_unregister +EXPORT_SYMBOL net/bluetooth/bluetooth 0x937622aa hci_cmd_sync +EXPORT_SYMBOL net/bluetooth/bluetooth 0x963dd983 bt_sock_unlink +EXPORT_SYMBOL net/bluetooth/bluetooth 0x9a4f08b4 hci_unregister_cb +EXPORT_SYMBOL net/bluetooth/bluetooth 0xa2ca1311 bt_sock_poll +EXPORT_SYMBOL net/bluetooth/bluetooth 0xa2e10969 hci_suspend_dev +EXPORT_SYMBOL net/bluetooth/bluetooth 0xac36d093 bt_sock_stream_recvmsg +EXPORT_SYMBOL net/bluetooth/bluetooth 0xad756c42 __hci_cmd_sync +EXPORT_SYMBOL net/bluetooth/bluetooth 0xb1fa0d98 hci_recv_frame +EXPORT_SYMBOL net/bluetooth/bluetooth 0xb36ec8c0 bt_procfs_cleanup +EXPORT_SYMBOL net/bluetooth/bluetooth 0xb5a6225a l2cap_conn_get +EXPORT_SYMBOL net/bluetooth/bluetooth 0xc55a6984 bt_sock_register +EXPORT_SYMBOL net/bluetooth/bluetooth 0xc6ee85ed hci_set_hw_info +EXPORT_SYMBOL net/bluetooth/bluetooth 0xc8803300 bt_accept_enqueue +EXPORT_SYMBOL net/bluetooth/bluetooth 0xce3997d5 hci_mgmt_chan_register +EXPORT_SYMBOL net/bluetooth/bluetooth 0xd7613212 bt_err_ratelimited +EXPORT_SYMBOL net/bluetooth/bluetooth 0xddacccf6 bt_warn_ratelimited +EXPORT_SYMBOL net/bluetooth/bluetooth 0xdf7164d9 l2cap_unregister_user +EXPORT_SYMBOL net/bluetooth/bluetooth 0xdf9760ca hci_register_cb +EXPORT_SYMBOL net/bluetooth/bluetooth 0xe3b7aab1 bt_sock_wait_state +EXPORT_SYMBOL net/bluetooth/bluetooth 0xe6f73760 hci_register_dev +EXPORT_SYMBOL net/bluetooth/bluetooth 0xee409e07 hci_recv_diag +EXPORT_SYMBOL net/bluetooth/bluetooth 0xff65dd69 hci_resume_dev +EXPORT_SYMBOL net/bridge/netfilter/ebtables 0x3d223f68 ebt_do_table +EXPORT_SYMBOL net/bridge/netfilter/ebtables 0x81542bd8 ebt_unregister_table +EXPORT_SYMBOL net/bridge/netfilter/ebtables 0xfb9e237e ebt_register_table +EXPORT_SYMBOL net/caif/caif 0x1446b60a caif_client_register_refcnt +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 0x47f5073f cfcnfg_add_phy_layer +EXPORT_SYMBOL net/caif/caif 0x4a237e57 cfpkt_tonative +EXPORT_SYMBOL net/caif/caif 0x839ddb7b cfcnfg_set_phy_state +EXPORT_SYMBOL net/caif/caif 0x8fe2bd5f 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 0xc790d419 caif_disconnect_client +EXPORT_SYMBOL net/caif/caif 0xda8568f8 caif_connect_client +EXPORT_SYMBOL net/caif/caif 0xe7ab69a0 get_cfcnfg +EXPORT_SYMBOL net/can/can 0x11c22271 can_sock_destruct +EXPORT_SYMBOL net/can/can 0x12fd3c3f can_rx_register +EXPORT_SYMBOL net/can/can 0x38b3658a can_send +EXPORT_SYMBOL net/can/can 0x53db4f7d can_proto_register +EXPORT_SYMBOL net/can/can 0x81eabf21 can_rx_unregister +EXPORT_SYMBOL net/can/can 0x867fdca3 can_proto_unregister +EXPORT_SYMBOL net/ceph/libceph 0x03e8c65d ceph_parse_mon_ips +EXPORT_SYMBOL net/ceph/libceph 0x065c822f osd_req_op_extent_osd_data_pagelist +EXPORT_SYMBOL net/ceph/libceph 0x07adf381 ceph_copy_from_page_vector +EXPORT_SYMBOL net/ceph/libceph 0x08b5bdcf ceph_msg_get +EXPORT_SYMBOL net/ceph/libceph 0x0a3c60e0 ceph_pagelist_alloc +EXPORT_SYMBOL net/ceph/libceph 0x0b609523 osd_req_op_extent_osd_data_bvec_pos +EXPORT_SYMBOL net/ceph/libceph 0x0d3cf0e0 ceph_zero_page_vector_range +EXPORT_SYMBOL net/ceph/libceph 0x0d87efc5 osd_req_op_init +EXPORT_SYMBOL net/ceph/libceph 0x0dc0b8a7 ceph_msg_new +EXPORT_SYMBOL net/ceph/libceph 0x18154028 osd_req_op_extent_dup_last +EXPORT_SYMBOL net/ceph/libceph 0x1872078d ceph_monc_validate_auth +EXPORT_SYMBOL net/ceph/libceph 0x1b9b2ebe ceph_osdc_update_epoch_barrier +EXPORT_SYMBOL net/ceph/libceph 0x1cba3f20 ceph_pagelist_append +EXPORT_SYMBOL net/ceph/libceph 0x2087719e ceph_oid_copy +EXPORT_SYMBOL net/ceph/libceph 0x2101cbc9 ceph_oid_destroy +EXPORT_SYMBOL net/ceph/libceph 0x21263332 ceph_osdc_notify +EXPORT_SYMBOL net/ceph/libceph 0x2229aac7 ceph_osdc_cancel_request +EXPORT_SYMBOL net/ceph/libceph 0x25db16f8 ceph_reset_client_addr +EXPORT_SYMBOL net/ceph/libceph 0x27fe4a1a ceph_osdc_flush_notifies +EXPORT_SYMBOL net/ceph/libceph 0x2d04ef35 ceph_osdc_alloc_messages +EXPORT_SYMBOL net/ceph/libceph 0x2e91a798 ceph_cls_unlock +EXPORT_SYMBOL net/ceph/libceph 0x30e43a49 ceph_pg_pool_name_by_id +EXPORT_SYMBOL net/ceph/libceph 0x317ac0ee ceph_oloc_copy +EXPORT_SYMBOL net/ceph/libceph 0x338893f3 ceph_msg_data_add_pages +EXPORT_SYMBOL net/ceph/libceph 0x34df7dcf ceph_open_session +EXPORT_SYMBOL net/ceph/libceph 0x3522979c ceph_buffer_new +EXPORT_SYMBOL net/ceph/libceph 0x38f2d94e ceph_file_to_extents +EXPORT_SYMBOL net/ceph/libceph 0x3c8d7111 ceph_get_num_objects +EXPORT_SYMBOL net/ceph/libceph 0x3cc771a5 ceph_osdc_maybe_request_map +EXPORT_SYMBOL net/ceph/libceph 0x3d0f2a7c ceph_oloc_destroy +EXPORT_SYMBOL net/ceph/libceph 0x3e2ef025 ceph_auth_is_authenticated +EXPORT_SYMBOL net/ceph/libceph 0x4329c4b2 __ceph_open_session +EXPORT_SYMBOL net/ceph/libceph 0x45044d94 ceph_find_or_create_string +EXPORT_SYMBOL net/ceph/libceph 0x466b85b8 libceph_compatible +EXPORT_SYMBOL net/ceph/libceph 0x47075eab ceph_pg_poolid_by_name +EXPORT_SYMBOL net/ceph/libceph 0x499255bb ceph_monc_renew_subs +EXPORT_SYMBOL net/ceph/libceph 0x49f28e07 osd_req_op_cls_init +EXPORT_SYMBOL net/ceph/libceph 0x4b5accaa ceph_client_gid +EXPORT_SYMBOL net/ceph/libceph 0x4d85a424 ceph_monc_want_map +EXPORT_SYMBOL net/ceph/libceph 0x4ecf53c9 osd_req_op_extent_update +EXPORT_SYMBOL net/ceph/libceph 0x52226b04 osd_req_op_cls_request_data_pagelist +EXPORT_SYMBOL net/ceph/libceph 0x566a3db6 ceph_print_client_options +EXPORT_SYMBOL net/ceph/libceph 0x57baf885 ceph_str_hash +EXPORT_SYMBOL net/ceph/libceph 0x5aeeee62 ceph_oid_aprintf +EXPORT_SYMBOL net/ceph/libceph 0x5b3b9700 ceph_auth_verify_authorizer_reply +EXPORT_SYMBOL net/ceph/libceph 0x5d98be9c ceph_msg_dump +EXPORT_SYMBOL net/ceph/libceph 0x6038df48 ceph_pg_pool_flags +EXPORT_SYMBOL net/ceph/libceph 0x61461c6c ceph_con_send +EXPORT_SYMBOL net/ceph/libceph 0x63758856 ceph_str_hash_name +EXPORT_SYMBOL net/ceph/libceph 0x6439f33c ceph_copy_to_page_vector +EXPORT_SYMBOL net/ceph/libceph 0x643e09b6 osd_req_op_cls_response_data_pages +EXPORT_SYMBOL net/ceph/libceph 0x644b6e50 ceph_pagelist_release +EXPORT_SYMBOL net/ceph/libceph 0x64b9311a ceph_osdc_notify_ack +EXPORT_SYMBOL net/ceph/libceph 0x6a7a38a0 ceph_pr_addr +EXPORT_SYMBOL net/ceph/libceph 0x6c0e9817 ceph_osdc_alloc_request +EXPORT_SYMBOL net/ceph/libceph 0x6d088ad3 ceph_monc_do_statfs +EXPORT_SYMBOL net/ceph/libceph 0x6dbb13a9 ceph_create_client +EXPORT_SYMBOL net/ceph/libceph 0x6edb8cb7 ceph_pagelist_reserve +EXPORT_SYMBOL net/ceph/libceph 0x6fbd297c ceph_msg_data_add_pagelist +EXPORT_SYMBOL net/ceph/libceph 0x714d76cd osd_req_op_xattr_init +EXPORT_SYMBOL net/ceph/libceph 0x71544694 osd_req_op_cls_request_data_pages +EXPORT_SYMBOL net/ceph/libceph 0x7358e4c4 ceph_alloc_options +EXPORT_SYMBOL net/ceph/libceph 0x74b9ba57 ceph_osdc_copy_from +EXPORT_SYMBOL net/ceph/libceph 0x75c518bc ceph_copy_user_to_page_vector +EXPORT_SYMBOL net/ceph/libceph 0x7e03e3b0 osd_req_op_extent_osd_data +EXPORT_SYMBOL net/ceph/libceph 0x7f05fdd6 osd_req_op_extent_init +EXPORT_SYMBOL net/ceph/libceph 0x83e20fa9 ceph_pg_to_acting_primary +EXPORT_SYMBOL net/ceph/libceph 0x83e60701 ceph_cls_set_cookie +EXPORT_SYMBOL net/ceph/libceph 0x86fca7e4 ceph_put_snap_context +EXPORT_SYMBOL net/ceph/libceph 0x893218d6 ceph_cls_break_lock +EXPORT_SYMBOL net/ceph/libceph 0x8951e6f2 ceph_msg_new2 +EXPORT_SYMBOL net/ceph/libceph 0x89c5a5e0 ceph_osdc_get_request +EXPORT_SYMBOL net/ceph/libceph 0x8bd5050e ceph_pagelist_free_reserve +EXPORT_SYMBOL net/ceph/libceph 0x8fcaea25 ceph_auth_update_authorizer +EXPORT_SYMBOL net/ceph/libceph 0x90259e3c osd_req_op_alloc_hint_init +EXPORT_SYMBOL net/ceph/libceph 0x90c17239 ceph_monc_get_version +EXPORT_SYMBOL net/ceph/libceph 0x925f4fee ceph_monc_got_map +EXPORT_SYMBOL net/ceph/libceph 0x933c9c75 osd_req_op_extent_osd_data_bio +EXPORT_SYMBOL net/ceph/libceph 0x95d5a166 ceph_con_open +EXPORT_SYMBOL net/ceph/libceph 0x965aa215 ceph_auth_invalidate_authorizer +EXPORT_SYMBOL net/ceph/libceph 0x96b66fa0 ceph_release_page_vector +EXPORT_SYMBOL net/ceph/libceph 0x973e8f26 ceph_cls_assert_locked +EXPORT_SYMBOL net/ceph/libceph 0x9754707d ceph_alloc_page_vector +EXPORT_SYMBOL net/ceph/libceph 0x9889ac6b ceph_osdc_list_watchers +EXPORT_SYMBOL net/ceph/libceph 0x9ca95932 ceph_create_snap_context +EXPORT_SYMBOL net/ceph/libceph 0x9f0aa562 ceph_monc_get_version_async +EXPORT_SYMBOL net/ceph/libceph 0x9fefa3cb ceph_calc_file_object_mapping +EXPORT_SYMBOL net/ceph/libceph 0xa0124ca1 ceph_cls_lock_info +EXPORT_SYMBOL net/ceph/libceph 0xa4839864 ceph_msg_data_add_bvecs +EXPORT_SYMBOL net/ceph/libceph 0xa6067446 ceph_osdc_new_request +EXPORT_SYMBOL net/ceph/libceph 0xa698f998 ceph_free_lockers +EXPORT_SYMBOL net/ceph/libceph 0xaa761dcb ceph_object_locator_to_pg +EXPORT_SYMBOL net/ceph/libceph 0xad703657 ceph_auth_destroy_authorizer +EXPORT_SYMBOL net/ceph/libceph 0xaebc0f41 osd_req_op_extent_osd_data_pages +EXPORT_SYMBOL net/ceph/libceph 0xafb8a407 ceph_msgr_flush +EXPORT_SYMBOL net/ceph/libceph 0xb04b974e ceph_osdc_unwatch +EXPORT_SYMBOL net/ceph/libceph 0xb3b80a71 ceph_monc_open_session +EXPORT_SYMBOL net/ceph/libceph 0xb52a14d8 ceph_wait_for_latest_osdmap +EXPORT_SYMBOL net/ceph/libceph 0xb54676fa ceph_msg_type_name +EXPORT_SYMBOL net/ceph/libceph 0xb72c162e ceph_buffer_release +EXPORT_SYMBOL net/ceph/libceph 0xb72f41c5 ceph_con_keepalive +EXPORT_SYMBOL net/ceph/libceph 0xb7d91e52 ceph_messenger_fini +EXPORT_SYMBOL net/ceph/libceph 0xbd8c1313 ceph_destroy_options +EXPORT_SYMBOL net/ceph/libceph 0xbe3879aa ceph_get_snap_context +EXPORT_SYMBOL net/ceph/libceph 0xbe8c11cf ceph_osdc_start_request +EXPORT_SYMBOL net/ceph/libceph 0xc1e9a4f5 ceph_con_init +EXPORT_SYMBOL net/ceph/libceph 0xc20c8ca8 ceph_pagelist_set_cursor +EXPORT_SYMBOL net/ceph/libceph 0xc6c16381 ceph_osdc_call +EXPORT_SYMBOL net/ceph/libceph 0xc77a5b38 ceph_osdc_sync +EXPORT_SYMBOL net/ceph/libceph 0xca80437b ceph_extent_to_file +EXPORT_SYMBOL net/ceph/libceph 0xccd9c5ea ceph_auth_create_authorizer +EXPORT_SYMBOL net/ceph/libceph 0xcfc8ad10 ceph_monc_blacklist_add +EXPORT_SYMBOL net/ceph/libceph 0xd03c93fb ceph_osdc_clear_abort_err +EXPORT_SYMBOL net/ceph/libceph 0xd06c446b ceph_destroy_client +EXPORT_SYMBOL net/ceph/libceph 0xd4eb7735 ceph_decode_entity_addr +EXPORT_SYMBOL net/ceph/libceph 0xd6399184 ceph_check_fsid +EXPORT_SYMBOL net/ceph/libceph 0xd93e3448 ceph_con_close +EXPORT_SYMBOL net/ceph/libceph 0xda53513b ceph_client_addr +EXPORT_SYMBOL net/ceph/libceph 0xda85be67 ceph_monc_stop +EXPORT_SYMBOL net/ceph/libceph 0xdbe0cbb3 ceph_monc_init +EXPORT_SYMBOL net/ceph/libceph 0xde9e0ff3 ceph_auth_add_authorizer_challenge +EXPORT_SYMBOL net/ceph/libceph 0xdf182268 ceph_osdc_watch +EXPORT_SYMBOL net/ceph/libceph 0xdf6ef4a1 ceph_oid_printf +EXPORT_SYMBOL net/ceph/libceph 0xdfc091f9 ceph_entity_type_name +EXPORT_SYMBOL net/ceph/libceph 0xe0516fcf ceph_msg_put +EXPORT_SYMBOL net/ceph/libceph 0xe25d0d16 ceph_monc_wait_osdmap +EXPORT_SYMBOL net/ceph/libceph 0xe2f1da12 ceph_osdc_wait_request +EXPORT_SYMBOL net/ceph/libceph 0xe459b1e1 ceph_messenger_init +EXPORT_SYMBOL net/ceph/libceph 0xe6893feb ceph_cls_lock +EXPORT_SYMBOL net/ceph/libceph 0xe7dd9e54 osd_req_op_extent_osd_data_bvecs +EXPORT_SYMBOL net/ceph/libceph 0xebc4239f osd_req_op_cls_request_data_bvecs +EXPORT_SYMBOL net/ceph/libceph 0xee120c03 ceph_release_string +EXPORT_SYMBOL net/ceph/libceph 0xeef6cfa3 ceph_iterate_extents +EXPORT_SYMBOL net/ceph/libceph 0xefd69dda ceph_osdc_abort_requests +EXPORT_SYMBOL net/ceph/libceph 0xf2359bf6 ceph_compare_options +EXPORT_SYMBOL net/ceph/libceph 0xf35affbb ceph_parse_param +EXPORT_SYMBOL net/ceph/libceph 0xf3f5cd18 ceph_osdc_put_request +EXPORT_SYMBOL net/ceph/libceph 0xf562aab7 ceph_pagelist_truncate +EXPORT_SYMBOL net/ceph/libceph 0xf611c1b6 osd_req_op_raw_data_in_pages +EXPORT_SYMBOL net/ceph/libceph 0xf7ddd535 ceph_put_page_vector +EXPORT_SYMBOL net/ceph/libceph 0xfc359567 ceph_msg_data_add_bio +EXPORT_SYMBOL net/dccp/dccp_ipv4 0x4ee13111 dccp_syn_ack_timeout +EXPORT_SYMBOL net/dccp/dccp_ipv4 0xe0efd7f8 dccp_req_err +EXPORT_SYMBOL net/dsa/dsa_core 0x063a7232 dsa_port_vid_add +EXPORT_SYMBOL net/dsa/dsa_core 0x6269b0e7 dsa_port_vid_del +EXPORT_SYMBOL net/ieee802154/ieee802154 0x0d72a051 wpan_phy_free +EXPORT_SYMBOL net/ieee802154/ieee802154 0x23521512 wpan_phy_register +EXPORT_SYMBOL net/ieee802154/ieee802154 0x82ef67f4 wpan_phy_find +EXPORT_SYMBOL net/ieee802154/ieee802154 0x950cca2d wpan_phy_unregister +EXPORT_SYMBOL net/ieee802154/ieee802154 0xa7b9e039 wpan_phy_new +EXPORT_SYMBOL net/ieee802154/ieee802154 0xab7d284f wpan_phy_for_each +EXPORT_SYMBOL net/ipv4/fou 0x19308a84 __fou_build_header +EXPORT_SYMBOL net/ipv4/fou 0x19741ae4 gue_encap_hlen +EXPORT_SYMBOL net/ipv4/fou 0xfd254b72 __gue_build_header +EXPORT_SYMBOL net/ipv4/fou 0xff1adff3 fou_encap_hlen +EXPORT_SYMBOL net/ipv4/gre 0x1b3bb6d1 gre_parse_header +EXPORT_SYMBOL net/ipv4/ip_tunnel 0x24204574 ip_tunnel_get_link_net +EXPORT_SYMBOL net/ipv4/ip_tunnel 0x52076c91 ip_tunnel_get_iflink +EXPORT_SYMBOL net/ipv4/ip_tunnel 0x80a17775 ip_tunnel_encap_add_ops +EXPORT_SYMBOL net/ipv4/ip_tunnel 0xd8abe9b3 ip_tunnel_encap_del_ops +EXPORT_SYMBOL net/ipv4/netfilter/arp_tables 0x0b12bec2 arpt_register_table +EXPORT_SYMBOL net/ipv4/netfilter/arp_tables 0xd3679f74 arpt_do_table +EXPORT_SYMBOL net/ipv4/netfilter/arp_tables 0xf35a94e2 arpt_unregister_table +EXPORT_SYMBOL net/ipv4/netfilter/ip_tables 0x0402898c ipt_do_table +EXPORT_SYMBOL net/ipv4/netfilter/ip_tables 0x36c31f87 ipt_unregister_table_exit +EXPORT_SYMBOL net/ipv4/netfilter/ip_tables 0x5ad4ffe6 ipt_unregister_table_pre_exit +EXPORT_SYMBOL net/ipv4/netfilter/ip_tables 0x81afb88c ipt_unregister_table +EXPORT_SYMBOL net/ipv4/netfilter/ip_tables 0xcc2b853d ipt_register_table +EXPORT_SYMBOL net/ipv4/tunnel4 0x05d64669 xfrm4_tunnel_deregister +EXPORT_SYMBOL net/ipv4/tunnel4 0x662d43b5 xfrm4_tunnel_register +EXPORT_SYMBOL net/ipv4/udp_tunnel 0x0e755d45 udp_sock_create4 +EXPORT_SYMBOL net/ipv6/ip6_tunnel 0x2d8a8807 ip6_tnl_get_link_net +EXPORT_SYMBOL net/ipv6/ip6_tunnel 0x496a6b0e ip6_tnl_parse_tlv_enc_lim +EXPORT_SYMBOL net/ipv6/ip6_tunnel 0x5bbd8e3e ip6_tnl_encap_add_ops +EXPORT_SYMBOL net/ipv6/ip6_tunnel 0xa57e3fb0 ip6_tnl_get_iflink +EXPORT_SYMBOL net/ipv6/ip6_tunnel 0xa730d50c ip6_tnl_change_mtu +EXPORT_SYMBOL net/ipv6/ip6_tunnel 0xabfa312e ip6_tnl_rcv +EXPORT_SYMBOL net/ipv6/ip6_tunnel 0xee8844e2 ip6_tnl_xmit +EXPORT_SYMBOL net/ipv6/ip6_tunnel 0xf5bd6701 ip6_tnl_encap_del_ops +EXPORT_SYMBOL net/ipv6/ip6_tunnel 0xfda29037 ip6_tnl_get_cap +EXPORT_SYMBOL net/ipv6/netfilter/ip6_tables 0x10733771 ip6t_unregister_table_pre_exit +EXPORT_SYMBOL net/ipv6/netfilter/ip6_tables 0xa9435dd7 ip6t_unregister_table +EXPORT_SYMBOL net/ipv6/netfilter/ip6_tables 0xc40b25ea ip6t_register_table +EXPORT_SYMBOL net/ipv6/netfilter/ip6_tables 0xd0f81726 ip6t_unregister_table_exit +EXPORT_SYMBOL net/ipv6/netfilter/ip6_tables 0xe501c9d7 ip6t_do_table +EXPORT_SYMBOL net/ipv6/tunnel6 0x50ea83ae xfrm6_tunnel_deregister +EXPORT_SYMBOL net/ipv6/tunnel6 0x9ce5f5e7 xfrm6_tunnel_register +EXPORT_SYMBOL net/ipv6/xfrm6_tunnel 0x36649a56 xfrm6_tunnel_alloc_spi +EXPORT_SYMBOL net/ipv6/xfrm6_tunnel 0x5b65cfc5 xfrm6_tunnel_spi_lookup +EXPORT_SYMBOL net/l2tp/l2tp_core 0x3535fd3f l2tp_recv_common +EXPORT_SYMBOL net/l2tp/l2tp_core 0x91544a90 l2tp_tunnel_free +EXPORT_SYMBOL net/l2tp/l2tp_ip 0xa57b5bab l2tp_ioctl +EXPORT_SYMBOL net/lapb/lapb 0x1367ecb5 lapb_unregister +EXPORT_SYMBOL net/lapb/lapb 0x161a3aef lapb_data_request +EXPORT_SYMBOL net/lapb/lapb 0x1d140b2c lapb_disconnect_request +EXPORT_SYMBOL net/lapb/lapb 0x1fe249e4 lapb_getparms +EXPORT_SYMBOL net/lapb/lapb 0x21e9554b lapb_register +EXPORT_SYMBOL net/lapb/lapb 0x3210cd43 lapb_data_received +EXPORT_SYMBOL net/lapb/lapb 0x577311f0 lapb_setparms +EXPORT_SYMBOL net/lapb/lapb 0xc13ca2e2 lapb_connect_request +EXPORT_SYMBOL net/llc/llc 0x062b1f2b llc_set_station_handler +EXPORT_SYMBOL net/llc/llc 0x0ec8e7d8 llc_mac_hdr_init +EXPORT_SYMBOL net/llc/llc 0x38b92846 llc_remove_pack +EXPORT_SYMBOL net/llc/llc 0x52d7b2fd llc_sap_list +EXPORT_SYMBOL net/llc/llc 0x53328943 llc_build_and_send_ui_pkt +EXPORT_SYMBOL net/llc/llc 0x99c993ae llc_add_pack +EXPORT_SYMBOL net/llc/llc 0xcc223d20 llc_sap_open +EXPORT_SYMBOL net/llc/llc 0xe59fa062 llc_sap_close +EXPORT_SYMBOL net/llc/llc 0xe9bdaa41 llc_sap_find +EXPORT_SYMBOL net/mac80211/mac80211 0x05c70711 ieee80211_txq_may_transmit +EXPORT_SYMBOL net/mac80211/mac80211 0x063f5308 ieee80211_get_tkip_p1k_iv +EXPORT_SYMBOL net/mac80211/mac80211 0x0b3f1e95 ieee80211_tx_status_8023 +EXPORT_SYMBOL net/mac80211/mac80211 0x0dce4653 ieee80211_scan_completed +EXPORT_SYMBOL net/mac80211/mac80211 0x10e51213 ieee80211_tx_rate_update +EXPORT_SYMBOL net/mac80211/mac80211 0x1101dd28 __ieee80211_create_tpt_led_trigger +EXPORT_SYMBOL net/mac80211/mac80211 0x11f765d4 ieee80211_tx_status_irqsafe +EXPORT_SYMBOL net/mac80211/mac80211 0x172a6f03 ieee80211_generic_frame_duration +EXPORT_SYMBOL net/mac80211/mac80211 0x183dcd3b ieee80211_get_key_rx_seq +EXPORT_SYMBOL net/mac80211/mac80211 0x19f37f0d ieee80211_update_p2p_noa +EXPORT_SYMBOL net/mac80211/mac80211 0x1a66fc17 ieee80211_get_tkip_rx_p1k +EXPORT_SYMBOL net/mac80211/mac80211 0x1aefa3d9 ieee80211_wake_queues +EXPORT_SYMBOL net/mac80211/mac80211 0x1cdbe5d0 ieee80211_connection_loss +EXPORT_SYMBOL net/mac80211/mac80211 0x20d0f18c ieee80211_queue_delayed_work +EXPORT_SYMBOL net/mac80211/mac80211 0x21c874d1 ieee80211_tx_prepare_skb +EXPORT_SYMBOL net/mac80211/mac80211 0x21da216a ieee80211_restart_hw +EXPORT_SYMBOL net/mac80211/mac80211 0x2c61141f ieee80211_find_sta +EXPORT_SYMBOL net/mac80211/mac80211 0x2cce5cb6 ieee80211_free_hw +EXPORT_SYMBOL net/mac80211/mac80211 0x2eb1aed3 ieee80211_get_tx_rates +EXPORT_SYMBOL net/mac80211/mac80211 0x39dfdcf7 ieee80211_txq_schedule_start +EXPORT_SYMBOL net/mac80211/mac80211 0x3a3d14ec ieee80211_txq_airtime_check +EXPORT_SYMBOL net/mac80211/mac80211 0x3d955c11 ieee80211_unreserve_tid +EXPORT_SYMBOL net/mac80211/mac80211 0x3f1ace13 ieee80211_wake_queue +EXPORT_SYMBOL net/mac80211/mac80211 0x3f83a563 ieee80211_get_tkip_p2k +EXPORT_SYMBOL net/mac80211/mac80211 0x41392a5e ieee80211_ctstoself_get +EXPORT_SYMBOL net/mac80211/mac80211 0x492fa4b9 ieee80211_csa_update_counter +EXPORT_SYMBOL net/mac80211/mac80211 0x4ec351fd ieee80211_start_tx_ba_session +EXPORT_SYMBOL net/mac80211/mac80211 0x5285c0b7 ieee80211_radar_detected +EXPORT_SYMBOL net/mac80211/mac80211 0x53265dba ieee80211_csa_finish +EXPORT_SYMBOL net/mac80211/mac80211 0x535c84c4 ieee80211_iter_keys_rcu +EXPORT_SYMBOL net/mac80211/mac80211 0x53ba230c ieee80211_rts_duration +EXPORT_SYMBOL net/mac80211/mac80211 0x53eb758e ieee80211_stop_queues +EXPORT_SYMBOL net/mac80211/mac80211 0x58e660eb ieee80211_stop_tx_ba_session +EXPORT_SYMBOL net/mac80211/mac80211 0x59306173 ieee80211_cqm_beacon_loss_notify +EXPORT_SYMBOL net/mac80211/mac80211 0x5d753bb1 ieee80211_tdls_oper_request +EXPORT_SYMBOL net/mac80211/mac80211 0x5dfb87d4 ieee80211_csa_is_complete +EXPORT_SYMBOL net/mac80211/mac80211 0x5ec91cfb ieee80211_sched_scan_results +EXPORT_SYMBOL net/mac80211/mac80211 0x6781139e ieee80211_ap_probereq_get +EXPORT_SYMBOL net/mac80211/mac80211 0x6c34ae29 ieee80211_pspoll_get +EXPORT_SYMBOL net/mac80211/mac80211 0x6c3670e6 ieee80211_start_tx_ba_cb_irqsafe +EXPORT_SYMBOL net/mac80211/mac80211 0x6d2939ea ieee80211_rate_control_register +EXPORT_SYMBOL net/mac80211/mac80211 0x6e9d27ee ieee80211_cqm_rssi_notify +EXPORT_SYMBOL net/mac80211/mac80211 0x74966b54 ieee80211_unregister_hw +EXPORT_SYMBOL net/mac80211/mac80211 0x7583bcdc __ieee80211_get_tx_led_name +EXPORT_SYMBOL net/mac80211/mac80211 0x78f97fca ieee80211_set_hw_80211_encap +EXPORT_SYMBOL net/mac80211/mac80211 0x7d6022ce ieee80211_sta_block_awake +EXPORT_SYMBOL net/mac80211/mac80211 0x7f8f2e13 ieee80211_rx_napi +EXPORT_SYMBOL net/mac80211/mac80211 0x835cbe33 ieee80211_send_bar +EXPORT_SYMBOL net/mac80211/mac80211 0x8433a3d7 rate_control_set_rates +EXPORT_SYMBOL net/mac80211/mac80211 0x84958dfa ieee80211_enable_rssi_reports +EXPORT_SYMBOL net/mac80211/mac80211 0x8671c9cb __ieee80211_get_assoc_led_name +EXPORT_SYMBOL net/mac80211/mac80211 0x86766220 wiphy_to_ieee80211_hw +EXPORT_SYMBOL net/mac80211/mac80211 0x897bf9de ieee80211_beacon_get_template +EXPORT_SYMBOL net/mac80211/mac80211 0x8a27f7fc ieee80211_rx_ba_timer_expired +EXPORT_SYMBOL net/mac80211/mac80211 0x8be7a8fb __ieee80211_schedule_txq +EXPORT_SYMBOL net/mac80211/mac80211 0x8d2c3649 ieee80211_send_eosp_nullfunc +EXPORT_SYMBOL net/mac80211/mac80211 0x8d7a5825 ieee80211_free_txskb +EXPORT_SYMBOL net/mac80211/mac80211 0x90a4671d ieee80211_stop_queue +EXPORT_SYMBOL net/mac80211/mac80211 0x951725b3 ieee80211_sched_scan_stopped +EXPORT_SYMBOL net/mac80211/mac80211 0x969503c7 ieee80211_txq_get_depth +EXPORT_SYMBOL net/mac80211/mac80211 0x977604a1 ieee80211_nullfunc_get +EXPORT_SYMBOL net/mac80211/mac80211 0x991a0ca0 ieee80211_parse_p2p_noa +EXPORT_SYMBOL net/mac80211/mac80211 0xa0e127ae ieee80211_sta_eosp +EXPORT_SYMBOL net/mac80211/mac80211 0xa131ca03 ieee80211_register_hw +EXPORT_SYMBOL net/mac80211/mac80211 0xa2f41124 ieee80211_nan_func_terminated +EXPORT_SYMBOL net/mac80211/mac80211 0xa821075c ieee80211_next_txq +EXPORT_SYMBOL net/mac80211/mac80211 0xa85f58ca ieee80211_stop_rx_ba_session +EXPORT_SYMBOL net/mac80211/mac80211 0xa8f2bf10 ieee80211_csa_set_counter +EXPORT_SYMBOL net/mac80211/mac80211 0xaa92b39e ieee80211_manage_rx_ba_offl +EXPORT_SYMBOL net/mac80211/mac80211 0xaf555f82 ieee80211_reserve_tid +EXPORT_SYMBOL net/mac80211/mac80211 0xb5fc5889 ieee80211_mark_rx_ba_filtered_frames +EXPORT_SYMBOL net/mac80211/mac80211 0xb6ff2170 ieee80211_rate_control_unregister +EXPORT_SYMBOL net/mac80211/mac80211 0xb7abe8b5 ieee80211_probereq_get +EXPORT_SYMBOL net/mac80211/mac80211 0xbd904a45 ieee80211_report_wowlan_wakeup +EXPORT_SYMBOL net/mac80211/mac80211 0xbea31c96 ieee80211_sta_uapsd_trigger +EXPORT_SYMBOL net/mac80211/mac80211 0xc2f8a0e4 ieee80211_report_low_ack +EXPORT_SYMBOL net/mac80211/mac80211 0xcccb7819 ieee80211_disable_rssi_reports +EXPORT_SYMBOL net/mac80211/mac80211 0xce0ee455 ieee80211_nan_func_match +EXPORT_SYMBOL net/mac80211/mac80211 0xd1d19776 ieee80211_stop_tx_ba_cb_irqsafe +EXPORT_SYMBOL net/mac80211/mac80211 0xd359d85c ieee80211_sta_set_buffered +EXPORT_SYMBOL net/mac80211/mac80211 0xd37f16a6 ieee80211_rx_irqsafe +EXPORT_SYMBOL net/mac80211/mac80211 0xd61c8a85 ieee80211_sta_pspoll +EXPORT_SYMBOL net/mac80211/mac80211 0xdbaa4c14 ieee80211_get_buffered_bc +EXPORT_SYMBOL net/mac80211/mac80211 0xdc3b8b2b ieee80211_ctstoself_duration +EXPORT_SYMBOL net/mac80211/mac80211 0xdce6dd31 ieee80211_alloc_hw_nm +EXPORT_SYMBOL net/mac80211/mac80211 0xde6eb873 ieee80211_sta_register_airtime +EXPORT_SYMBOL net/mac80211/mac80211 0xdf0001c6 ieee80211_beacon_get_tim +EXPORT_SYMBOL net/mac80211/mac80211 0xe03ccd76 ieee80211_tx_status +EXPORT_SYMBOL net/mac80211/mac80211 0xe1ae3e78 ieee80211_tx_status_ext +EXPORT_SYMBOL net/mac80211/mac80211 0xe2c2df93 __ieee80211_get_rx_led_name +EXPORT_SYMBOL net/mac80211/mac80211 0xe40cbae9 ieee80211_sta_ps_transition +EXPORT_SYMBOL net/mac80211/mac80211 0xe830fcf4 ieee80211_queue_stopped +EXPORT_SYMBOL net/mac80211/mac80211 0xe8a61cad ieee80211_chswitch_done +EXPORT_SYMBOL net/mac80211/mac80211 0xe9214723 ieee80211_queue_work +EXPORT_SYMBOL net/mac80211/mac80211 0xf0bc46d7 ieee80211_proberesp_get +EXPORT_SYMBOL net/mac80211/mac80211 0xf20ef759 ieee80211_iter_keys +EXPORT_SYMBOL net/mac80211/mac80211 0xf47db933 ieee80211_tx_dequeue +EXPORT_SYMBOL net/mac80211/mac80211 0xf4badd42 ieee80211_rts_get +EXPORT_SYMBOL net/mac80211/mac80211 0xf6a6ea82 ieee80211_beacon_loss +EXPORT_SYMBOL net/mac80211/mac80211 0xfc3e9e34 __ieee80211_get_radio_led_name +EXPORT_SYMBOL net/mac802154/mac802154 0x65da46e4 ieee802154_register_hw +EXPORT_SYMBOL net/mac802154/mac802154 0x73aaf536 ieee802154_wake_queue +EXPORT_SYMBOL net/mac802154/mac802154 0x766ca511 ieee802154_free_hw +EXPORT_SYMBOL net/mac802154/mac802154 0x9bc8c72a ieee802154_stop_queue +EXPORT_SYMBOL net/mac802154/mac802154 0xa79ccfc3 ieee802154_alloc_hw +EXPORT_SYMBOL net/mac802154/mac802154 0xaab1e701 ieee802154_unregister_hw +EXPORT_SYMBOL net/mac802154/mac802154 0xd828027c ieee802154_rx_irqsafe +EXPORT_SYMBOL net/mac802154/mac802154 0xec049377 ieee802154_xmit_complete +EXPORT_SYMBOL net/netfilter/ipvs/ip_vs 0x1077d135 ip_vs_conn_out_get +EXPORT_SYMBOL net/netfilter/ipvs/ip_vs 0x1a64d6f7 ip_vs_proto_data_get +EXPORT_SYMBOL net/netfilter/ipvs/ip_vs 0x1c6168b4 unregister_ip_vs_app +EXPORT_SYMBOL net/netfilter/ipvs/ip_vs 0x37e4484e ip_vs_new_conn_out +EXPORT_SYMBOL net/netfilter/ipvs/ip_vs 0x47f769aa ip_vs_proto_get +EXPORT_SYMBOL net/netfilter/ipvs/ip_vs 0x537f81d8 ip_vs_tcp_conn_listen +EXPORT_SYMBOL net/netfilter/ipvs/ip_vs 0x64e216ef ip_vs_conn_in_get +EXPORT_SYMBOL net/netfilter/ipvs/ip_vs 0x69eb643c ip_vs_nfct_expect_related +EXPORT_SYMBOL net/netfilter/ipvs/ip_vs 0x780b05b2 unregister_ip_vs_scheduler +EXPORT_SYMBOL net/netfilter/ipvs/ip_vs 0x7a6efc41 register_ip_vs_app_inc +EXPORT_SYMBOL net/netfilter/ipvs/ip_vs 0x9b8c45a3 register_ip_vs_scheduler +EXPORT_SYMBOL net/netfilter/ipvs/ip_vs 0xd831a1a2 ip_vs_proto_name +EXPORT_SYMBOL net/netfilter/ipvs/ip_vs 0xe868342e ip_vs_conn_new +EXPORT_SYMBOL net/netfilter/ipvs/ip_vs 0xe8a97216 ip_vs_scheduler_err +EXPORT_SYMBOL net/netfilter/ipvs/ip_vs 0xe9d33eac register_ip_vs_app +EXPORT_SYMBOL net/netfilter/ipvs/ip_vs 0xf2609f9c ip_vs_conn_put +EXPORT_SYMBOL net/netfilter/nf_conntrack 0x66c3822d nf_ct_ext_add +EXPORT_SYMBOL net/netfilter/nf_conntrack_pptp 0xf2a36612 pptp_msg_name +EXPORT_SYMBOL net/netfilter/nf_nat 0x03d16049 nf_nat_follow_master +EXPORT_SYMBOL net/netfilter/nf_nat 0x1b45ea90 __nf_nat_mangle_tcp_packet +EXPORT_SYMBOL net/netfilter/nf_nat 0x283a1cbc nf_xfrm_me_harder +EXPORT_SYMBOL net/netfilter/nf_nat 0x711f0fbf nf_nat_setup_info +EXPORT_SYMBOL net/netfilter/nf_nat 0xb5763148 nf_nat_mangle_udp_packet +EXPORT_SYMBOL net/netfilter/nft_fib 0xe8203072 nft_fib_policy +EXPORT_SYMBOL net/netfilter/x_tables 0x035e13f1 xt_unregister_match +EXPORT_SYMBOL net/netfilter/x_tables 0x0b845f1d xt_unregister_targets +EXPORT_SYMBOL net/netfilter/x_tables 0x0d7f5fcd xt_alloc_entry_offsets +EXPORT_SYMBOL net/netfilter/x_tables 0x1b46a052 xt_register_match +EXPORT_SYMBOL net/netfilter/x_tables 0x2c48c57a xt_register_target +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 0x4cc5251a xt_register_matches +EXPORT_SYMBOL net/netfilter/x_tables 0x977fd4bf xt_alloc_table_info +EXPORT_SYMBOL net/netfilter/x_tables 0xa9afb032 xt_table_get_private_protected +EXPORT_SYMBOL net/netfilter/x_tables 0xaeb327cf xt_find_match +EXPORT_SYMBOL net/netfilter/x_tables 0xcb3e91cc xt_counters_alloc +EXPORT_SYMBOL net/netfilter/x_tables 0xd15deafb xt_unregister_matches +EXPORT_SYMBOL net/netfilter/x_tables 0xd87ae60d xt_check_entry_offsets +EXPORT_SYMBOL net/netfilter/x_tables 0xdc14153c xt_register_targets +EXPORT_SYMBOL net/netfilter/x_tables 0xe204e042 xt_free_table_info +EXPORT_SYMBOL net/netfilter/x_tables 0xfb0ad07e xt_unregister_target +EXPORT_SYMBOL net/netfilter/x_tables 0xfef779fa xt_find_jump_offset +EXPORT_SYMBOL net/nfc/hci/hci 0x0470c0cc nfc_hci_get_clientdata +EXPORT_SYMBOL net/nfc/hci/hci 0x1190741b nfc_hci_disconnect_gate +EXPORT_SYMBOL net/nfc/hci/hci 0x16aea250 nfc_hci_unregister_device +EXPORT_SYMBOL net/nfc/hci/hci 0x1e282e04 nfc_hci_disconnect_all_gates +EXPORT_SYMBOL net/nfc/hci/hci 0x29bfa408 nfc_hci_recv_frame +EXPORT_SYMBOL net/nfc/hci/hci 0x3f8cb107 nfc_hci_reset_pipes_per_host +EXPORT_SYMBOL net/nfc/hci/hci 0x401d035b nfc_hci_set_param +EXPORT_SYMBOL net/nfc/hci/hci 0x512cb2a9 nfc_hci_target_discovered +EXPORT_SYMBOL net/nfc/hci/hci 0x539dd0d3 nfc_hci_register_device +EXPORT_SYMBOL net/nfc/hci/hci 0x5470ed9b nfc_hci_send_event +EXPORT_SYMBOL net/nfc/hci/hci 0x5646edba nfc_llc_stop +EXPORT_SYMBOL net/nfc/hci/hci 0x580b3b3e nfc_hci_reset_pipes +EXPORT_SYMBOL net/nfc/hci/hci 0x5ada13cd nfc_hci_send_cmd +EXPORT_SYMBOL net/nfc/hci/hci 0x6dfd5c33 nfc_hci_set_clientdata +EXPORT_SYMBOL net/nfc/hci/hci 0x7105817c nfc_hci_connect_gate +EXPORT_SYMBOL net/nfc/hci/hci 0x74fe3670 nfc_hci_result_to_errno +EXPORT_SYMBOL net/nfc/hci/hci 0x978c68d3 nfc_hci_allocate_device +EXPORT_SYMBOL net/nfc/hci/hci 0xa74ac77c nfc_llc_start +EXPORT_SYMBOL net/nfc/hci/hci 0xb86160d9 nfc_hci_get_param +EXPORT_SYMBOL net/nfc/hci/hci 0xcd75a7f0 nfc_hci_free_device +EXPORT_SYMBOL net/nfc/hci/hci 0xd524ba60 nfc_hci_driver_failure +EXPORT_SYMBOL net/nfc/hci/hci 0xdd231c55 nfc_hci_sak_to_protocol +EXPORT_SYMBOL net/nfc/hci/hci 0xf16bd285 nfc_hci_send_cmd_async +EXPORT_SYMBOL net/nfc/nci/nci 0x169f22ce nci_conn_max_data_pkt_payload_size +EXPORT_SYMBOL net/nfc/nci/nci 0x1a1554e2 nci_core_cmd +EXPORT_SYMBOL net/nfc/nci/nci 0x1a3d706f nci_send_data +EXPORT_SYMBOL net/nfc/nci/nci 0x26117b7f nci_get_conn_info_by_dest_type_params +EXPORT_SYMBOL net/nfc/nci/nci 0x2fac75e8 nci_hci_get_param +EXPORT_SYMBOL net/nfc/nci/nci 0x3667088a nci_unregister_device +EXPORT_SYMBOL net/nfc/nci/nci 0x536feb1f nci_req_complete +EXPORT_SYMBOL net/nfc/nci/nci 0x62b0cd79 nci_prop_cmd +EXPORT_SYMBOL net/nfc/nci/nci 0x640410ee nci_register_device +EXPORT_SYMBOL net/nfc/nci/nci 0x6534e0e2 nci_nfcee_mode_set +EXPORT_SYMBOL net/nfc/nci/nci 0x6c55e346 nci_hci_open_pipe +EXPORT_SYMBOL net/nfc/nci/nci 0x71fdac7f nci_core_reset +EXPORT_SYMBOL net/nfc/nci/nci 0x7a798a54 nci_recv_frame +EXPORT_SYMBOL net/nfc/nci/nci 0x872ce1b7 nci_free_device +EXPORT_SYMBOL net/nfc/nci/nci 0x8e8d65f4 nci_send_frame +EXPORT_SYMBOL net/nfc/nci/nci 0x9a5604bf nci_hci_send_event +EXPORT_SYMBOL net/nfc/nci/nci 0x9fe88993 nci_nfcc_loopback +EXPORT_SYMBOL net/nfc/nci/nci 0xae753473 nci_hci_set_param +EXPORT_SYMBOL net/nfc/nci/nci 0xba490602 nci_to_errno +EXPORT_SYMBOL net/nfc/nci/nci 0xbcda7211 nci_hci_dev_session_init +EXPORT_SYMBOL net/nfc/nci/nci 0xbf2b0bd7 nci_send_cmd +EXPORT_SYMBOL net/nfc/nci/nci 0xc905f660 nci_hci_connect_gate +EXPORT_SYMBOL net/nfc/nci/nci 0xd1441eda nci_core_init +EXPORT_SYMBOL net/nfc/nci/nci 0xe4307abb nci_set_config +EXPORT_SYMBOL net/nfc/nci/nci 0xea5f614a nci_hci_clear_all_pipes +EXPORT_SYMBOL net/nfc/nci/nci 0xeb7b1332 nci_hci_send_cmd +EXPORT_SYMBOL net/nfc/nci/nci 0xebda017a nci_core_conn_close +EXPORT_SYMBOL net/nfc/nci/nci 0xefcd8e9e nci_allocate_device +EXPORT_SYMBOL net/nfc/nci/nci 0xf99a5aea nci_core_conn_create +EXPORT_SYMBOL net/nfc/nci/nci 0xfcc034b8 nci_nfcee_discover +EXPORT_SYMBOL net/nfc/nfc 0x05d3bd38 nfc_target_lost +EXPORT_SYMBOL net/nfc/nfc 0x0ca64d71 nfc_dep_link_is_up +EXPORT_SYMBOL net/nfc/nfc 0x0e32f934 nfc_targets_found +EXPORT_SYMBOL net/nfc/nfc 0x197d38ae nfc_register_device +EXPORT_SYMBOL net/nfc/nfc 0x26389615 nfc_tm_data_received +EXPORT_SYMBOL net/nfc/nfc 0x26969b38 nfc_add_se +EXPORT_SYMBOL net/nfc/nfc 0x280d2084 nfc_tm_activated +EXPORT_SYMBOL net/nfc/nfc 0x39d8fe2e nfc_vendor_cmd_reply +EXPORT_SYMBOL net/nfc/nfc 0x4159483f nfc_fw_download_done +EXPORT_SYMBOL net/nfc/nfc 0x50a69075 nfc_proto_register +EXPORT_SYMBOL net/nfc/nfc 0x533d0942 nfc_find_se +EXPORT_SYMBOL net/nfc/nfc 0x66366129 nfc_class +EXPORT_SYMBOL net/nfc/nfc 0x6d5bb8b2 nfc_se_transaction +EXPORT_SYMBOL net/nfc/nfc 0x75357a4c nfc_get_local_general_bytes +EXPORT_SYMBOL net/nfc/nfc 0x9af51d1d nfc_remove_se +EXPORT_SYMBOL net/nfc/nfc 0x9d23d47e nfc_alloc_recv_skb +EXPORT_SYMBOL net/nfc/nfc 0x9e0e3db3 nfc_set_remote_general_bytes +EXPORT_SYMBOL net/nfc/nfc 0x9fe52023 nfc_proto_unregister +EXPORT_SYMBOL net/nfc/nfc 0xa70cd417 nfc_send_to_raw_sock +EXPORT_SYMBOL net/nfc/nfc 0xae8d309b nfc_unregister_device +EXPORT_SYMBOL net/nfc/nfc 0xb09b700b nfc_driver_failure +EXPORT_SYMBOL net/nfc/nfc 0xba4065f0 nfc_allocate_device +EXPORT_SYMBOL net/nfc/nfc 0xcb956885 nfc_tm_deactivated +EXPORT_SYMBOL net/nfc/nfc 0xdb79ba93 __nfc_alloc_vendor_cmd_reply_skb +EXPORT_SYMBOL net/nfc/nfc 0xdd5e68f8 nfc_se_connectivity +EXPORT_SYMBOL net/nfc/nfc_digital 0x54cc27e3 nfc_digital_allocate_device +EXPORT_SYMBOL net/nfc/nfc_digital 0x71a1c75e nfc_digital_unregister_device +EXPORT_SYMBOL net/nfc/nfc_digital 0xa9e38a29 nfc_digital_register_device +EXPORT_SYMBOL net/nfc/nfc_digital 0xb55f2248 nfc_digital_free_device +EXPORT_SYMBOL net/phonet/phonet 0x3045fe17 phonet_header_ops +EXPORT_SYMBOL net/phonet/phonet 0x536f6df7 pn_sock_unhash +EXPORT_SYMBOL net/phonet/phonet 0x8c961a11 pn_sock_hash +EXPORT_SYMBOL net/phonet/phonet 0xccc7fbf4 phonet_proto_unregister +EXPORT_SYMBOL net/phonet/phonet 0xcdaf2664 phonet_proto_register +EXPORT_SYMBOL net/phonet/phonet 0xcddb6cb8 pn_sock_get_port +EXPORT_SYMBOL net/phonet/phonet 0xdc4af966 phonet_stream_ops +EXPORT_SYMBOL net/phonet/phonet 0xec103bfb pn_skb_send +EXPORT_SYMBOL net/rxrpc/rxrpc 0x047aed9c rxrpc_kernel_abort_call +EXPORT_SYMBOL net/rxrpc/rxrpc 0x0c749929 rxrpc_kernel_recv_data +EXPORT_SYMBOL net/rxrpc/rxrpc 0x2077a42d rxrpc_kernel_check_life +EXPORT_SYMBOL net/rxrpc/rxrpc 0x31bf3ca3 rxrpc_debug_id +EXPORT_SYMBOL net/rxrpc/rxrpc 0x5161a029 rxrpc_kernel_get_epoch +EXPORT_SYMBOL net/rxrpc/rxrpc 0x66992ced rxrpc_kernel_set_max_life +EXPORT_SYMBOL net/rxrpc/rxrpc 0x6773e2f1 rxrpc_kernel_end_call +EXPORT_SYMBOL net/rxrpc/rxrpc 0x6a38d9f7 rxrpc_get_server_data_key +EXPORT_SYMBOL net/rxrpc/rxrpc 0x765042a5 rxrpc_kernel_begin_call +EXPORT_SYMBOL net/rxrpc/rxrpc 0x7b8af586 rxrpc_kernel_charge_accept +EXPORT_SYMBOL net/rxrpc/rxrpc 0x8ada205b rxrpc_kernel_get_peer +EXPORT_SYMBOL net/rxrpc/rxrpc 0xaba2d2c9 rxrpc_sock_set_min_security_level +EXPORT_SYMBOL net/rxrpc/rxrpc 0xaefb6028 rxrpc_kernel_get_srtt +EXPORT_SYMBOL net/rxrpc/rxrpc 0xbaaa3490 rxrpc_kernel_get_reply_time +EXPORT_SYMBOL net/rxrpc/rxrpc 0xc491a525 rxrpc_kernel_send_data +EXPORT_SYMBOL net/rxrpc/rxrpc 0xc95d5620 key_type_rxrpc +EXPORT_SYMBOL net/rxrpc/rxrpc 0xd02bc533 rxrpc_get_null_key +EXPORT_SYMBOL net/rxrpc/rxrpc 0xd76ab991 rxrpc_kernel_set_tx_length +EXPORT_SYMBOL net/rxrpc/rxrpc 0xf30a7729 rxrpc_kernel_new_call_notification +EXPORT_SYMBOL net/sctp/sctp 0x1d0d4310 sctp_do_peeloff +EXPORT_SYMBOL net/sunrpc/auth_gss/auth_rpcgss 0xba28f169 gss_mech_put +EXPORT_SYMBOL net/sunrpc/auth_gss/auth_rpcgss 0xc731a8a6 gss_mech_get +EXPORT_SYMBOL net/sunrpc/auth_gss/auth_rpcgss 0xe6cf064b gss_pseudoflavor_to_service +EXPORT_SYMBOL net/sunrpc/sunrpc 0x059b6a39 xdr_truncate_encode +EXPORT_SYMBOL net/sunrpc/sunrpc 0x53a3fa82 xdr_restrict_buflen +EXPORT_SYMBOL net/sunrpc/sunrpc 0x5b13e887 svc_pool_stats_open +EXPORT_SYMBOL net/tipc/tipc 0x23424dfe tipc_nl_sk_walk +EXPORT_SYMBOL net/tipc/tipc 0x6ef9095c tipc_dump_done +EXPORT_SYMBOL net/tipc/tipc 0xd5f686bf tipc_dump_start +EXPORT_SYMBOL net/tipc/tipc 0xdcd98d3d tipc_sk_fill_sock_diag +EXPORT_SYMBOL net/tls/tls 0x4c3dc1d8 tls_get_record +EXPORT_SYMBOL net/wimax/wimax 0x358f2560 wimax_reset +EXPORT_SYMBOL net/wimax/wimax 0xd85a3019 wimax_rfkill +EXPORT_SYMBOL net/wireless/cfg80211 0x03632e72 cfg80211_cac_event +EXPORT_SYMBOL net/wireless/cfg80211 0x08f168de cfg80211_send_layer2_update +EXPORT_SYMBOL net/wireless/cfg80211 0x11feb81a __cfg80211_alloc_event_skb +EXPORT_SYMBOL net/wireless/cfg80211 0x153ad50d cfg80211_put_bss +EXPORT_SYMBOL net/wireless/cfg80211 0x15a37cf3 cfg80211_calculate_bitrate +EXPORT_SYMBOL net/wireless/cfg80211 0x1879fcbd bridge_tunnel_header +EXPORT_SYMBOL net/wireless/cfg80211 0x18b53545 cfg80211_chandef_create +EXPORT_SYMBOL net/wireless/cfg80211 0x1a6765dc cfg80211_crit_proto_stopped +EXPORT_SYMBOL net/wireless/cfg80211 0x1ce2497f reg_query_regdb_wmm +EXPORT_SYMBOL net/wireless/cfg80211 0x1e029930 cfg80211_report_wowlan_wakeup +EXPORT_SYMBOL net/wireless/cfg80211 0x214abaa7 cfg80211_new_sta +EXPORT_SYMBOL net/wireless/cfg80211 0x25e45122 cfg80211_classify8021d +EXPORT_SYMBOL net/wireless/cfg80211 0x28446f90 ieee80211_get_response_rate +EXPORT_SYMBOL net/wireless/cfg80211 0x2a9c70a5 ieee80211_amsdu_to_8023s +EXPORT_SYMBOL net/wireless/cfg80211 0x2f8bb157 cfg80211_cqm_rssi_notify +EXPORT_SYMBOL net/wireless/cfg80211 0x2ff8c45b cfg80211_ref_bss +EXPORT_SYMBOL net/wireless/cfg80211 0x30c92968 cfg80211_mgmt_tx_status +EXPORT_SYMBOL net/wireless/cfg80211 0x358bc5c4 cfg80211_gtk_rekey_notify +EXPORT_SYMBOL net/wireless/cfg80211 0x38cb594a ieee80211_ie_split_ric +EXPORT_SYMBOL net/wireless/cfg80211 0x39d9f16c cfg80211_bss_iter +EXPORT_SYMBOL net/wireless/cfg80211 0x3bd8aaa1 ieee80211_operating_class_to_band +EXPORT_SYMBOL net/wireless/cfg80211 0x3cca547d cfg80211_del_sta_sinfo +EXPORT_SYMBOL net/wireless/cfg80211 0x3d71b4c4 cfg80211_radar_event +EXPORT_SYMBOL net/wireless/cfg80211 0x46312808 ieee80211_radiotap_iterator_next +EXPORT_SYMBOL net/wireless/cfg80211 0x47533920 cfg80211_rx_control_port +EXPORT_SYMBOL net/wireless/cfg80211 0x4b92b5ec cfg80211_unregister_wdev +EXPORT_SYMBOL net/wireless/cfg80211 0x4e039d39 cfg80211_tx_mlme_mgmt +EXPORT_SYMBOL net/wireless/cfg80211 0x53564f5e wiphy_apply_custom_regulatory +EXPORT_SYMBOL net/wireless/cfg80211 0x57e74308 cfg80211_cqm_txe_notify +EXPORT_SYMBOL net/wireless/cfg80211 0x5ee437ee cfg80211_connect_done +EXPORT_SYMBOL net/wireless/cfg80211 0x5fd790f6 wiphy_rfkill_set_hw_state +EXPORT_SYMBOL net/wireless/cfg80211 0x602030d8 cfg80211_michael_mic_failure +EXPORT_SYMBOL net/wireless/cfg80211 0x640a188b ieee80211_data_to_8023_exthdr +EXPORT_SYMBOL net/wireless/cfg80211 0x645c70f5 cfg80211_tdls_oper_request +EXPORT_SYMBOL net/wireless/cfg80211 0x66018c73 cfg80211_sched_scan_stopped +EXPORT_SYMBOL net/wireless/cfg80211 0x673cc653 cfg80211_rx_mgmt_khz +EXPORT_SYMBOL net/wireless/cfg80211 0x67d86dcd ieee80211_chandef_to_operating_class +EXPORT_SYMBOL net/wireless/cfg80211 0x683f8c45 cfg80211_iftype_allowed +EXPORT_SYMBOL net/wireless/cfg80211 0x68600c40 ieee80211_mandatory_rates +EXPORT_SYMBOL net/wireless/cfg80211 0x688ef4d8 wiphy_register +EXPORT_SYMBOL net/wireless/cfg80211 0x69b18f43 rfc1042_header +EXPORT_SYMBOL net/wireless/cfg80211 0x69c563d0 cfg80211_unlink_bss +EXPORT_SYMBOL net/wireless/cfg80211 0x69e1bf5e cfg80211_rx_spurious_frame +EXPORT_SYMBOL net/wireless/cfg80211 0x6a05bc9d cfg80211_iter_combinations +EXPORT_SYMBOL net/wireless/cfg80211 0x6bedf402 ieee80211_freq_khz_to_channel +EXPORT_SYMBOL net/wireless/cfg80211 0x6e220166 cfg80211_ft_event +EXPORT_SYMBOL net/wireless/cfg80211 0x6e3e0ccd ieee80211_get_num_supported_channels +EXPORT_SYMBOL net/wireless/cfg80211 0x71ac5a84 cfg80211_rx_unprot_mlme_mgmt +EXPORT_SYMBOL net/wireless/cfg80211 0x7455fffc freq_reg_info +EXPORT_SYMBOL net/wireless/cfg80211 0x752d5289 cfg80211_cqm_beacon_loss_notify +EXPORT_SYMBOL net/wireless/cfg80211 0x752f144a cfg80211_auth_timeout +EXPORT_SYMBOL net/wireless/cfg80211 0x76b1f90e regulatory_set_wiphy_regd_sync_rtnl +EXPORT_SYMBOL net/wireless/cfg80211 0x79b82a71 cfg80211_find_vendor_elem +EXPORT_SYMBOL net/wireless/cfg80211 0x7b0d3ad1 cfg80211_notify_new_peer_candidate +EXPORT_SYMBOL net/wireless/cfg80211 0x7b529b03 cfg80211_ch_switch_notify +EXPORT_SYMBOL net/wireless/cfg80211 0x7b7d9c5e cfg80211_ch_switch_started_notify +EXPORT_SYMBOL net/wireless/cfg80211 0x7c3ac925 ieee80211_get_vht_max_nss +EXPORT_SYMBOL net/wireless/cfg80211 0x7c9a916b regulatory_set_wiphy_regd +EXPORT_SYMBOL net/wireless/cfg80211 0x7eb61ae2 cfg80211_port_authorized +EXPORT_SYMBOL net/wireless/cfg80211 0x7ef39823 ieee80211_hdrlen +EXPORT_SYMBOL net/wireless/cfg80211 0x81a471d6 cfg80211_chandef_valid +EXPORT_SYMBOL net/wireless/cfg80211 0x83061a14 cfg80211_inform_bss_data +EXPORT_SYMBOL net/wireless/cfg80211 0x8366e81b cfg80211_reg_can_beacon +EXPORT_SYMBOL net/wireless/cfg80211 0x847055c7 cfg80211_update_owe_info_event +EXPORT_SYMBOL net/wireless/cfg80211 0x861263c0 cfg80211_rx_unexpected_4addr_frame +EXPORT_SYMBOL net/wireless/cfg80211 0x86321f22 cfg80211_get_station +EXPORT_SYMBOL net/wireless/cfg80211 0x873a3a5a cfg80211_remain_on_channel_expired +EXPORT_SYMBOL net/wireless/cfg80211 0x8b24e88f cfg80211_merge_profile +EXPORT_SYMBOL net/wireless/cfg80211 0x8bb4ec76 cfg80211_sched_scan_stopped_rtnl +EXPORT_SYMBOL net/wireless/cfg80211 0x8c9617f6 cfg80211_stop_iface +EXPORT_SYMBOL net/wireless/cfg80211 0x8fa02936 cfg80211_free_nan_func +EXPORT_SYMBOL net/wireless/cfg80211 0x930e3467 cfg80211_assoc_timeout +EXPORT_SYMBOL net/wireless/cfg80211 0x9928b2fe wiphy_unregister +EXPORT_SYMBOL net/wireless/cfg80211 0x9960b271 cfg80211_sta_opmode_change_notify +EXPORT_SYMBOL net/wireless/cfg80211 0x9a0f15b1 cfg80211_ready_on_channel +EXPORT_SYMBOL net/wireless/cfg80211 0x9c2a48a3 cfg80211_ibss_joined +EXPORT_SYMBOL net/wireless/cfg80211 0x9d6cba30 cfg80211_find_elem_match +EXPORT_SYMBOL net/wireless/cfg80211 0xa2c3ca7d cfg80211_chandef_usable +EXPORT_SYMBOL net/wireless/cfg80211 0xa57e0d12 cfg80211_rx_mlme_mgmt +EXPORT_SYMBOL net/wireless/cfg80211 0xa85ee37c cfg80211_get_drvinfo +EXPORT_SYMBOL net/wireless/cfg80211 0xa9a84c7d ieee80211_get_channel_khz +EXPORT_SYMBOL net/wireless/cfg80211 0xac97a207 ieee80211_radiotap_iterator_init +EXPORT_SYMBOL net/wireless/cfg80211 0xafe8b001 ieee80211_channel_to_freq_khz +EXPORT_SYMBOL net/wireless/cfg80211 0xb6711eac cfg80211_control_port_tx_status +EXPORT_SYMBOL net/wireless/cfg80211 0xbaf601f4 regulatory_hint +EXPORT_SYMBOL net/wireless/cfg80211 0xbe3dcb05 cfg80211_nan_match +EXPORT_SYMBOL net/wireless/cfg80211 0xbf3ad95e __cfg80211_send_event_skb +EXPORT_SYMBOL net/wireless/cfg80211 0xbf8558da regulatory_pre_cac_allowed +EXPORT_SYMBOL net/wireless/cfg80211 0xc19d224e cfg80211_disconnected +EXPORT_SYMBOL net/wireless/cfg80211 0xc2c0895c ieee80211_get_hdrlen_from_skb +EXPORT_SYMBOL net/wireless/cfg80211 0xc320d038 cfg80211_cqm_pktloss_notify +EXPORT_SYMBOL net/wireless/cfg80211 0xc39862fb cfg80211_check_station_change +EXPORT_SYMBOL net/wireless/cfg80211 0xc4922cb7 cfg80211_probe_status +EXPORT_SYMBOL net/wireless/cfg80211 0xc4fe800f cfg80211_rx_assoc_resp +EXPORT_SYMBOL net/wireless/cfg80211 0xc810f0bc cfg80211_roamed +EXPORT_SYMBOL net/wireless/cfg80211 0xc81ae8c9 wiphy_free +EXPORT_SYMBOL net/wireless/cfg80211 0xc9e6e049 wiphy_read_of_freq_limits +EXPORT_SYMBOL net/wireless/cfg80211 0xcc1a7c48 cfg80211_is_element_inherited +EXPORT_SYMBOL net/wireless/cfg80211 0xd3c7bef6 cfg80211_chandef_dfs_required +EXPORT_SYMBOL net/wireless/cfg80211 0xd56d55f3 ieee80211_get_mesh_hdrlen +EXPORT_SYMBOL net/wireless/cfg80211 0xd5dd1061 cfg80211_check_combinations +EXPORT_SYMBOL net/wireless/cfg80211 0xd7f6f362 cfg80211_sinfo_alloc_tid_stats +EXPORT_SYMBOL net/wireless/cfg80211 0xd8ba0dda cfg80211_get_bss +EXPORT_SYMBOL net/wireless/cfg80211 0xdba126c1 reg_initiator_name +EXPORT_SYMBOL net/wireless/cfg80211 0xe2c98853 cfg80211_abandon_assoc +EXPORT_SYMBOL net/wireless/cfg80211 0xe3233af4 wiphy_rfkill_start_polling +EXPORT_SYMBOL net/wireless/cfg80211 0xe38e3cd4 cfg80211_reg_can_beacon_relax +EXPORT_SYMBOL net/wireless/cfg80211 0xea6f4e4a cfg80211_pmksa_candidate_notify +EXPORT_SYMBOL net/wireless/cfg80211 0xebcfd34d cfg80211_tx_mgmt_expired +EXPORT_SYMBOL net/wireless/cfg80211 0xec37d7a8 cfg80211_conn_failed +EXPORT_SYMBOL net/wireless/cfg80211 0xed674ff2 cfg80211_sched_scan_results +EXPORT_SYMBOL net/wireless/cfg80211 0xf0362ed9 cfg80211_report_obss_beacon_khz +EXPORT_SYMBOL net/wireless/cfg80211 0xf073943d cfg80211_external_auth_request +EXPORT_SYMBOL net/wireless/cfg80211 0xf3e1b960 cfg80211_scan_done +EXPORT_SYMBOL net/wireless/cfg80211 0xf516015c __cfg80211_alloc_reply_skb +EXPORT_SYMBOL net/wireless/cfg80211 0xf53f4b91 wiphy_new_nm +EXPORT_SYMBOL net/wireless/cfg80211 0xf5596d89 cfg80211_get_p2p_attr +EXPORT_SYMBOL net/wireless/cfg80211 0xf72d447f wiphy_rfkill_stop_polling +EXPORT_SYMBOL net/wireless/cfg80211 0xf9ac7257 cfg80211_nan_func_terminated +EXPORT_SYMBOL net/wireless/cfg80211 0xfae8514f cfg80211_chandef_compatible +EXPORT_SYMBOL net/wireless/cfg80211 0xfdf6b011 cfg80211_inform_bss_frame_data +EXPORT_SYMBOL net/wireless/cfg80211 0xff0c113a ieee80211_bss_get_elem +EXPORT_SYMBOL net/wireless/lib80211 0x0ddc1817 lib80211_register_crypto_ops +EXPORT_SYMBOL net/wireless/lib80211 0x287501a7 lib80211_crypt_delayed_deinit +EXPORT_SYMBOL net/wireless/lib80211 0xc123557f lib80211_unregister_crypto_ops +EXPORT_SYMBOL net/wireless/lib80211 0xcafd0a9b lib80211_get_crypto_ops +EXPORT_SYMBOL net/wireless/lib80211 0xce43a03e lib80211_crypt_info_free +EXPORT_SYMBOL net/wireless/lib80211 0xef277cf7 lib80211_crypt_info_init +EXPORT_SYMBOL sound/core/oss/snd-mixer-oss 0x28d9d3e8 snd_mixer_oss_ioctl_card +EXPORT_SYMBOL sound/core/seq/snd-seq 0x1a724fcc snd_seq_kernel_client_ctl +EXPORT_SYMBOL sound/core/seq/snd-seq 0x3061c52d snd_use_lock_sync_helper +EXPORT_SYMBOL sound/core/seq/snd-seq 0x3fb4d161 snd_seq_kernel_client_dispatch +EXPORT_SYMBOL sound/core/seq/snd-seq 0x60de800c snd_seq_kernel_client_write_poll +EXPORT_SYMBOL sound/core/seq/snd-seq 0x64db7fb6 snd_seq_kernel_client_enqueue +EXPORT_SYMBOL sound/core/seq/snd-seq 0x6bb71038 snd_seq_delete_kernel_client +EXPORT_SYMBOL sound/core/seq/snd-seq 0x7ac2f329 snd_seq_expand_var_event +EXPORT_SYMBOL sound/core/seq/snd-seq 0x7b8699eb snd_seq_event_port_detach +EXPORT_SYMBOL sound/core/seq/snd-seq 0x8bc6900a snd_seq_event_port_attach +EXPORT_SYMBOL sound/core/seq/snd-seq 0xb8e448a0 snd_seq_set_queue_tempo +EXPORT_SYMBOL sound/core/seq/snd-seq 0xcb558d82 snd_seq_create_kernel_client +EXPORT_SYMBOL sound/core/seq/snd-seq 0xe934da1d snd_seq_dump_var_event +EXPORT_SYMBOL sound/core/seq/snd-seq-midi-emul 0x6ea09972 snd_midi_channel_alloc_set +EXPORT_SYMBOL sound/core/seq/snd-seq-midi-emul 0x833a3e07 snd_midi_channel_set_clear +EXPORT_SYMBOL sound/core/seq/snd-seq-midi-emul 0xb9948d2c snd_midi_channel_free_set +EXPORT_SYMBOL sound/core/seq/snd-seq-midi-emul 0xf912f0c8 snd_midi_process_event +EXPORT_SYMBOL sound/core/seq/snd-seq-midi-event 0x1724fb56 snd_midi_event_decode +EXPORT_SYMBOL sound/core/seq/snd-seq-midi-event 0x17fcf66b snd_midi_event_encode_byte +EXPORT_SYMBOL sound/core/seq/snd-seq-midi-event 0x1cff6e14 snd_midi_event_reset_encode +EXPORT_SYMBOL sound/core/seq/snd-seq-midi-event 0x2f853c43 snd_midi_event_no_status +EXPORT_SYMBOL sound/core/seq/snd-seq-midi-event 0x4d5f7f98 snd_midi_event_free +EXPORT_SYMBOL sound/core/seq/snd-seq-midi-event 0x56efbc6b snd_midi_event_reset_decode +EXPORT_SYMBOL sound/core/seq/snd-seq-midi-event 0xdaf3383a snd_midi_event_new +EXPORT_SYMBOL sound/core/seq/snd-seq-virmidi 0x8cdc5846 snd_virmidi_new +EXPORT_SYMBOL sound/core/snd-hwdep 0x99d0e449 snd_hwdep_new +EXPORT_SYMBOL sound/core/snd-rawmidi 0x0961d4f5 snd_rawmidi_output_params +EXPORT_SYMBOL sound/core/snd-rawmidi 0x0a9023f6 snd_rawmidi_transmit_empty +EXPORT_SYMBOL sound/core/snd-rawmidi 0x0c8ae889 snd_rawmidi_transmit +EXPORT_SYMBOL sound/core/snd-rawmidi 0x16641c21 snd_rawmidi_kernel_write +EXPORT_SYMBOL sound/core/snd-rawmidi 0x1ef26e32 snd_rawmidi_transmit_ack +EXPORT_SYMBOL sound/core/snd-rawmidi 0x2633c8d6 snd_rawmidi_drain_input +EXPORT_SYMBOL sound/core/snd-rawmidi 0x2daad9b7 snd_rawmidi_drop_output +EXPORT_SYMBOL sound/core/snd-rawmidi 0x3b60fc81 snd_rawmidi_input_params +EXPORT_SYMBOL sound/core/snd-rawmidi 0x6c60b786 snd_rawmidi_kernel_open +EXPORT_SYMBOL sound/core/snd-rawmidi 0x7508470f snd_rawmidi_kernel_release +EXPORT_SYMBOL sound/core/snd-rawmidi 0x7b14131c snd_rawmidi_proceed +EXPORT_SYMBOL sound/core/snd-rawmidi 0x8080a0f0 snd_rawmidi_info_select +EXPORT_SYMBOL sound/core/snd-rawmidi 0x8de843b1 snd_rawmidi_transmit_peek +EXPORT_SYMBOL sound/core/snd-rawmidi 0x9f01c37e snd_rawmidi_kernel_read +EXPORT_SYMBOL sound/core/snd-rawmidi 0xa32aa5b9 snd_rawmidi_drain_output +EXPORT_SYMBOL sound/core/snd-rawmidi 0xae1672df __snd_rawmidi_transmit_peek +EXPORT_SYMBOL sound/core/snd-rawmidi 0xcb9448de snd_rawmidi_new +EXPORT_SYMBOL sound/core/snd-rawmidi 0xe50d001e snd_rawmidi_receive +EXPORT_SYMBOL sound/core/snd-rawmidi 0xe5f54b36 snd_rawmidi_set_ops +EXPORT_SYMBOL sound/core/snd-rawmidi 0xffb3fedd __snd_rawmidi_transmit_ack +EXPORT_SYMBOL sound/core/snd-seq-device 0x091def1c snd_seq_autoload_exit +EXPORT_SYMBOL sound/core/snd-seq-device 0x370a0736 snd_seq_autoload_init +EXPORT_SYMBOL sound/core/snd-seq-device 0x6339b6d0 snd_seq_device_load_drivers +EXPORT_SYMBOL sound/core/snd-seq-device 0xffcdc4a6 snd_seq_device_new +EXPORT_SYMBOL sound/drivers/mpu401/snd-mpu401-uart 0x6d629c59 snd_mpu401_uart_interrupt_tx +EXPORT_SYMBOL sound/drivers/mpu401/snd-mpu401-uart 0xa8480b75 snd_mpu401_uart_new +EXPORT_SYMBOL sound/drivers/mpu401/snd-mpu401-uart 0xc0fec227 snd_mpu401_uart_interrupt +EXPORT_SYMBOL sound/drivers/opl3/snd-opl3-lib 0x05060a19 snd_opl3_regmap +EXPORT_SYMBOL sound/drivers/opl3/snd-opl3-lib 0x252423b0 snd_opl3_interrupt +EXPORT_SYMBOL sound/drivers/opl3/snd-opl3-lib 0x3e102755 snd_opl3_hwdep_new +EXPORT_SYMBOL sound/drivers/opl3/snd-opl3-lib 0x43b9bd38 snd_opl3_load_patch +EXPORT_SYMBOL sound/drivers/opl3/snd-opl3-lib 0x8a5a2689 snd_opl3_find_patch +EXPORT_SYMBOL sound/drivers/opl3/snd-opl3-lib 0xb07923c5 snd_opl3_init +EXPORT_SYMBOL sound/drivers/opl3/snd-opl3-lib 0xb727df00 snd_opl3_new +EXPORT_SYMBOL sound/drivers/opl3/snd-opl3-lib 0xc1324873 snd_opl3_create +EXPORT_SYMBOL sound/drivers/opl3/snd-opl3-lib 0xda3d6334 snd_opl3_timer_new +EXPORT_SYMBOL sound/drivers/opl3/snd-opl3-lib 0xdd4babc0 snd_opl3_reset +EXPORT_SYMBOL sound/drivers/vx/snd-vx-lib 0x0daac3ea snd_vx_dsp_load +EXPORT_SYMBOL sound/drivers/vx/snd-vx-lib 0x226138b0 snd_vx_threaded_irq_handler +EXPORT_SYMBOL sound/drivers/vx/snd-vx-lib 0x4fee764c snd_vx_dsp_boot +EXPORT_SYMBOL sound/drivers/vx/snd-vx-lib 0x58071c30 snd_vx_check_reg_bit +EXPORT_SYMBOL sound/drivers/vx/snd-vx-lib 0x62830396 snd_vx_create +EXPORT_SYMBOL sound/drivers/vx/snd-vx-lib 0x76681629 snd_vx_suspend +EXPORT_SYMBOL sound/drivers/vx/snd-vx-lib 0x8079908b snd_vx_load_boot_image +EXPORT_SYMBOL sound/drivers/vx/snd-vx-lib 0x9463d21c snd_vx_free_firmware +EXPORT_SYMBOL sound/drivers/vx/snd-vx-lib 0xdaaa2b7a snd_vx_setup_firmware +EXPORT_SYMBOL sound/drivers/vx/snd-vx-lib 0xf1f04d23 snd_vx_irq_handler +EXPORT_SYMBOL sound/drivers/vx/snd-vx-lib 0xf918dc9d snd_vx_resume +EXPORT_SYMBOL sound/firewire/snd-firewire-lib 0x028c35c6 amdtp_stream_set_parameters +EXPORT_SYMBOL sound/firewire/snd-firewire-lib 0x04a5d221 cmp_connection_destroy +EXPORT_SYMBOL sound/firewire/snd-firewire-lib 0x14f18616 amdtp_stream_init +EXPORT_SYMBOL sound/firewire/snd-firewire-lib 0x18a5f475 amdtp_stream_destroy +EXPORT_SYMBOL sound/firewire/snd-firewire-lib 0x1c78c271 avc_general_get_plug_info +EXPORT_SYMBOL sound/firewire/snd-firewire-lib 0x20254e45 amdtp_syt_intervals +EXPORT_SYMBOL sound/firewire/snd-firewire-lib 0x2070ffe7 cmp_connection_break +EXPORT_SYMBOL sound/firewire/snd-firewire-lib 0x21bc12bb avc_general_get_sig_fmt +EXPORT_SYMBOL sound/firewire/snd-firewire-lib 0x32e19543 snd_fw_transaction +EXPORT_SYMBOL sound/firewire/snd-firewire-lib 0x471ba183 fw_iso_resources_allocate +EXPORT_SYMBOL sound/firewire/snd-firewire-lib 0x4fed7a9c fw_iso_resources_update +EXPORT_SYMBOL sound/firewire/snd-firewire-lib 0x53ca18e8 amdtp_rate_table +EXPORT_SYMBOL sound/firewire/snd-firewire-lib 0x58112be2 fcp_bus_reset +EXPORT_SYMBOL sound/firewire/snd-firewire-lib 0x5f08cbca cmp_connection_release +EXPORT_SYMBOL sound/firewire/snd-firewire-lib 0x6a87c442 snd_fw_schedule_registration +EXPORT_SYMBOL sound/firewire/snd-firewire-lib 0x7b600dac fw_iso_resources_free +EXPORT_SYMBOL sound/firewire/snd-firewire-lib 0x8148c9e6 cmp_connection_check_used +EXPORT_SYMBOL sound/firewire/snd-firewire-lib 0xb27834a5 cmp_connection_update +EXPORT_SYMBOL sound/firewire/snd-firewire-lib 0xb87335b9 amdtp_stream_get_max_payload +EXPORT_SYMBOL sound/firewire/snd-firewire-lib 0xbd2d1b2b fw_iso_resources_destroy +EXPORT_SYMBOL sound/firewire/snd-firewire-lib 0xc8a50d22 cmp_connection_reserve +EXPORT_SYMBOL sound/firewire/snd-firewire-lib 0xca7061cf amdtp_stream_update +EXPORT_SYMBOL sound/firewire/snd-firewire-lib 0xcbb8aa8e amdtp_stream_pcm_abort +EXPORT_SYMBOL sound/firewire/snd-firewire-lib 0xce201d3a amdtp_stream_pcm_prepare +EXPORT_SYMBOL sound/firewire/snd-firewire-lib 0xcf285377 fw_iso_resources_init +EXPORT_SYMBOL sound/firewire/snd-firewire-lib 0xd7ebcd70 fcp_avc_transaction +EXPORT_SYMBOL sound/firewire/snd-firewire-lib 0xd9c26e8b iso_packets_buffer_destroy +EXPORT_SYMBOL sound/firewire/snd-firewire-lib 0xe60f281f cmp_connection_establish +EXPORT_SYMBOL sound/firewire/snd-firewire-lib 0xe6f04d18 avc_general_set_sig_fmt +EXPORT_SYMBOL sound/firewire/snd-firewire-lib 0xf00217d2 cmp_connection_init +EXPORT_SYMBOL sound/firewire/snd-firewire-lib 0xf7424db4 iso_packets_buffer_init +EXPORT_SYMBOL sound/firewire/snd-firewire-lib 0xffaf1e63 amdtp_stream_add_pcm_hw_constraints +EXPORT_SYMBOL sound/i2c/other/snd-ak4113 0x8ee63b62 snd_ak4113_suspend +EXPORT_SYMBOL sound/i2c/other/snd-ak4113 0xdc4b39ec snd_ak4113_resume +EXPORT_SYMBOL sound/i2c/other/snd-ak4114 0x0930debe snd_ak4114_check_rate_and_errors +EXPORT_SYMBOL sound/i2c/other/snd-ak4114 0x11111a0e snd_ak4114_build +EXPORT_SYMBOL sound/i2c/other/snd-ak4114 0x48c19f78 snd_ak4114_external_rate +EXPORT_SYMBOL sound/i2c/other/snd-ak4114 0x7e1e3127 snd_ak4114_suspend +EXPORT_SYMBOL sound/i2c/other/snd-ak4114 0x8d6047da snd_ak4114_reg_write +EXPORT_SYMBOL sound/i2c/other/snd-ak4114 0xc3e2b8c4 snd_ak4114_create +EXPORT_SYMBOL sound/i2c/other/snd-ak4114 0xd9088c47 snd_ak4114_reinit +EXPORT_SYMBOL sound/i2c/other/snd-ak4114 0xe3496ec7 snd_ak4114_resume +EXPORT_SYMBOL sound/i2c/other/snd-ak4xxx-adda 0x3344ae39 snd_akm4xxx_reset +EXPORT_SYMBOL sound/i2c/other/snd-ak4xxx-adda 0x4870af2b snd_akm4xxx_build_controls +EXPORT_SYMBOL sound/i2c/other/snd-ak4xxx-adda 0x97b88db6 snd_akm4xxx_init +EXPORT_SYMBOL sound/i2c/other/snd-ak4xxx-adda 0xbba2468a snd_akm4xxx_write +EXPORT_SYMBOL sound/i2c/other/snd-pt2258 0x564fdaba snd_pt2258_build_controls +EXPORT_SYMBOL sound/i2c/other/snd-pt2258 0xf619f782 snd_pt2258_reset +EXPORT_SYMBOL sound/i2c/snd-cs8427 0x14c8e429 snd_cs8427_init +EXPORT_SYMBOL sound/i2c/snd-cs8427 0x556182a9 snd_cs8427_create +EXPORT_SYMBOL sound/i2c/snd-cs8427 0x5b555ea3 snd_cs8427_iec958_active +EXPORT_SYMBOL sound/i2c/snd-cs8427 0xce2958da snd_cs8427_iec958_pcm +EXPORT_SYMBOL sound/i2c/snd-cs8427 0xd801ec5e snd_cs8427_reg_write +EXPORT_SYMBOL sound/i2c/snd-cs8427 0xe2bd649e snd_cs8427_iec958_build +EXPORT_SYMBOL sound/i2c/snd-i2c 0x013e4ae5 snd_i2c_sendbytes +EXPORT_SYMBOL sound/i2c/snd-i2c 0x449aeb0b snd_i2c_device_free +EXPORT_SYMBOL sound/i2c/snd-i2c 0x51ac52db snd_i2c_bus_create +EXPORT_SYMBOL sound/i2c/snd-i2c 0x96da77e5 snd_i2c_readbytes +EXPORT_SYMBOL sound/i2c/snd-i2c 0xd53658d5 snd_i2c_device_create +EXPORT_SYMBOL sound/i2c/snd-i2c 0xdcd862a3 snd_i2c_probeaddr +EXPORT_SYMBOL sound/pci/ac97/snd-ac97-codec 0x004c2438 snd_ac97_resume +EXPORT_SYMBOL sound/pci/ac97/snd-ac97-codec 0x25d13b5a snd_ac97_read +EXPORT_SYMBOL sound/pci/ac97/snd-ac97-codec 0x3b496840 snd_ac97_tune_hardware +EXPORT_SYMBOL sound/pci/ac97/snd-ac97-codec 0x3d878235 snd_ac97_suspend +EXPORT_SYMBOL sound/pci/ac97/snd-ac97-codec 0x3e37998a snd_ac97_update_power +EXPORT_SYMBOL sound/pci/ac97/snd-ac97-codec 0x414f9205 snd_ac97_pcm_double_rate_rules +EXPORT_SYMBOL sound/pci/ac97/snd-ac97-codec 0x4701169b snd_ac97_mixer +EXPORT_SYMBOL sound/pci/ac97/snd-ac97-codec 0x4b3b5b2e snd_ac97_write +EXPORT_SYMBOL sound/pci/ac97/snd-ac97-codec 0x58eed666 snd_ac97_get_short_name +EXPORT_SYMBOL sound/pci/ac97/snd-ac97-codec 0x5d9f268e snd_ac97_pcm_open +EXPORT_SYMBOL sound/pci/ac97/snd-ac97-codec 0x6bc81a02 snd_ac97_update +EXPORT_SYMBOL sound/pci/ac97/snd-ac97-codec 0x6e28e9bb snd_ac97_write_cache +EXPORT_SYMBOL sound/pci/ac97/snd-ac97-codec 0x943f3256 snd_ac97_pcm_assign +EXPORT_SYMBOL sound/pci/ac97/snd-ac97-codec 0xa911d7e5 snd_ac97_pcm_close +EXPORT_SYMBOL sound/pci/ac97/snd-ac97-codec 0xbbdae39f snd_ac97_bus +EXPORT_SYMBOL sound/pci/ac97/snd-ac97-codec 0xdf1ec01f snd_ac97_set_rate +EXPORT_SYMBOL sound/pci/ac97/snd-ac97-codec 0xe3db10a0 snd_ac97_update_bits +EXPORT_SYMBOL sound/pci/emu10k1/snd-emu10k1 0x180ecde5 snd_emu10k1_voice_alloc +EXPORT_SYMBOL sound/pci/emu10k1/snd-emu10k1 0x21d60c68 snd_emu10k1_ptr_read +EXPORT_SYMBOL sound/pci/emu10k1/snd-emu10k1 0x2f649872 snd_emu10k1_synth_free +EXPORT_SYMBOL sound/pci/emu10k1/snd-emu10k1 0x5e5b2ed3 snd_emu10k1_voice_free +EXPORT_SYMBOL sound/pci/emu10k1/snd-emu10k1 0x63a34378 snd_emu10k1_ptr_write +EXPORT_SYMBOL sound/pci/emu10k1/snd-emu10k1 0xa33f6743 snd_emu10k1_synth_bzero +EXPORT_SYMBOL sound/pci/emu10k1/snd-emu10k1 0xd5081e4b snd_emu10k1_memblk_map +EXPORT_SYMBOL sound/pci/emu10k1/snd-emu10k1 0xe898cbbd snd_emu10k1_synth_alloc +EXPORT_SYMBOL sound/pci/emu10k1/snd-emu10k1 0xf32a95b6 snd_emu10k1_synth_copy_from_user +EXPORT_SYMBOL sound/pci/ice1712/snd-ice17xx-ak4xxx 0x0869803e snd_ice1712_akm4xxx_init +EXPORT_SYMBOL sound/pci/ice1712/snd-ice17xx-ak4xxx 0x6e901560 snd_ice1712_akm4xxx_build_controls +EXPORT_SYMBOL sound/pci/ice1712/snd-ice17xx-ak4xxx 0x7c7c93f0 snd_ice1712_akm4xxx_free +EXPORT_SYMBOL sound/pci/oxygen/snd-oxygen-lib 0x0d6c1167 oxygen_pci_probe +EXPORT_SYMBOL sound/pci/oxygen/snd-oxygen-lib 0x0e7d3cc3 oxygen_update_dac_routing +EXPORT_SYMBOL sound/pci/oxygen/snd-oxygen-lib 0x25b2fe3e oxygen_read16 +EXPORT_SYMBOL sound/pci/oxygen/snd-oxygen-lib 0x36681c8f oxygen_write8_masked +EXPORT_SYMBOL sound/pci/oxygen/snd-oxygen-lib 0x416a881e oxygen_read_ac97 +EXPORT_SYMBOL sound/pci/oxygen/snd-oxygen-lib 0x44c92bb2 oxygen_reset_uart +EXPORT_SYMBOL sound/pci/oxygen/snd-oxygen-lib 0x4a51030b oxygen_pci_shutdown +EXPORT_SYMBOL sound/pci/oxygen/snd-oxygen-lib 0x4f0c1066 oxygen_read8 +EXPORT_SYMBOL sound/pci/oxygen/snd-oxygen-lib 0x5747e9e5 oxygen_write_ac97 +EXPORT_SYMBOL sound/pci/oxygen/snd-oxygen-lib 0x587a7436 oxygen_write32_masked +EXPORT_SYMBOL sound/pci/oxygen/snd-oxygen-lib 0x6328f616 oxygen_pci_remove +EXPORT_SYMBOL sound/pci/oxygen/snd-oxygen-lib 0x650ccd9d oxygen_write_i2c +EXPORT_SYMBOL sound/pci/oxygen/snd-oxygen-lib 0x6cd266f5 oxygen_write8 +EXPORT_SYMBOL sound/pci/oxygen/snd-oxygen-lib 0x7420257d oxygen_write16 +EXPORT_SYMBOL sound/pci/oxygen/snd-oxygen-lib 0xa4df830e oxygen_write_ac97_masked +EXPORT_SYMBOL sound/pci/oxygen/snd-oxygen-lib 0xb44e4acc oxygen_write_spi +EXPORT_SYMBOL sound/pci/oxygen/snd-oxygen-lib 0xb4e79d2e oxygen_write32 +EXPORT_SYMBOL sound/pci/oxygen/snd-oxygen-lib 0xb6609101 oxygen_read32 +EXPORT_SYMBOL sound/pci/oxygen/snd-oxygen-lib 0xbc0ca601 oxygen_write16_masked +EXPORT_SYMBOL sound/pci/oxygen/snd-oxygen-lib 0xdecd6fd8 oxygen_pci_pm +EXPORT_SYMBOL sound/pci/oxygen/snd-oxygen-lib 0xe302b052 oxygen_write_uart +EXPORT_SYMBOL sound/pci/trident/snd-trident 0x01e3bc2f snd_trident_start_voice +EXPORT_SYMBOL sound/pci/trident/snd-trident 0x3aa9e3a7 snd_trident_stop_voice +EXPORT_SYMBOL sound/pci/trident/snd-trident 0x5a1bf903 snd_trident_free_voice +EXPORT_SYMBOL sound/pci/trident/snd-trident 0x91f1c1ea snd_trident_write_voice_regs +EXPORT_SYMBOL sound/pci/trident/snd-trident 0xcc30a735 snd_trident_alloc_voice +EXPORT_SYMBOL sound/soc/amd/acp_audio_dma 0xea74f232 bt_uart_enable +EXPORT_SYMBOL sound/soc/codecs/snd-soc-pcm3060 0x2bfabe0c pcm3060_regmap +EXPORT_SYMBOL sound/soc/codecs/snd-soc-pcm3060 0xad47d305 pcm3060_probe +EXPORT_SYMBOL sound/soc/codecs/snd-soc-rt715 0xed2acb24 hda_to_sdw +EXPORT_SYMBOL sound/soc/codecs/snd-soc-tlv320aic23 0x7d4a321c tlv320aic23_probe +EXPORT_SYMBOL sound/soc/codecs/snd-soc-tlv320aic23 0x832d6486 tlv320aic23_regmap +EXPORT_SYMBOL sound/soc/codecs/snd-soc-tlv320aic32x4 0x159b4bb2 aic32x4_remove +EXPORT_SYMBOL sound/soc/codecs/snd-soc-tlv320aic32x4 0xe05d2ba4 aic32x4_probe +EXPORT_SYMBOL sound/soc/codecs/snd-soc-tlv320aic32x4 0xebefcbd8 aic32x4_regmap_config +EXPORT_SYMBOL sound/soc/qcom/snd-soc-qcom-common 0x72f3d5e6 qcom_snd_parse_of +EXPORT_SYMBOL sound/soc/sof/snd-sof 0x0584743d sof_block_write +EXPORT_SYMBOL sound/soc/sof/snd-sof 0x05ac96b7 snd_sof_dsp_mailbox_init +EXPORT_SYMBOL sound/soc/sof/snd-sof 0x074923be snd_sof_ipc_msgs_rx +EXPORT_SYMBOL sound/soc/sof/snd-sof 0x0b4832c6 snd_sof_dsp_update_bits64 +EXPORT_SYMBOL sound/soc/sof/snd-sof 0x0b7cf620 snd_sof_fw_unload +EXPORT_SYMBOL sound/soc/sof/snd-sof 0x0c18ad46 snd_sof_dsp_panic +EXPORT_SYMBOL sound/soc/sof/snd-sof 0x2263f4c0 snd_sof_runtime_resume +EXPORT_SYMBOL sound/soc/sof/snd-sof 0x236e28aa snd_sof_get_status +EXPORT_SYMBOL sound/soc/sof/snd-sof 0x3009c671 snd_sof_suspend +EXPORT_SYMBOL sound/soc/sof/snd-sof 0x30ca7104 snd_sof_dsp_update_bits_forced +EXPORT_SYMBOL sound/soc/sof/snd-sof 0x37a62d3a snd_sof_complete +EXPORT_SYMBOL sound/soc/sof/snd-sof 0x3904d91b sof_io_read64 +EXPORT_SYMBOL sound/soc/sof/snd-sof 0x3d3beb1a snd_sof_pci_update_bits +EXPORT_SYMBOL sound/soc/sof/snd-sof 0x5749d557 snd_sof_run_firmware +EXPORT_SYMBOL sound/soc/sof/snd-sof 0x599a9cb8 sof_machine_register +EXPORT_SYMBOL sound/soc/sof/snd-sof 0x5b967219 sof_io_write +EXPORT_SYMBOL sound/soc/sof/snd-sof 0x5fe62cb2 sof_block_read +EXPORT_SYMBOL sound/soc/sof/snd-sof 0x6119cdce snd_sof_load_firmware +EXPORT_SYMBOL sound/soc/sof/snd-sof 0x66cf0148 snd_sof_dsp_update_bits +EXPORT_SYMBOL sound/soc/sof/snd-sof 0x6d9183be snd_sof_create_page_table +EXPORT_SYMBOL sound/soc/sof/snd-sof 0x6e296971 snd_sof_load_firmware_memcpy +EXPORT_SYMBOL sound/soc/sof/snd-sof 0x70660b5e sof_mailbox_read +EXPORT_SYMBOL sound/soc/sof/snd-sof 0x745f7ac2 snd_sof_runtime_idle +EXPORT_SYMBOL sound/soc/sof/snd-sof 0x771ae282 sof_machine_unregister +EXPORT_SYMBOL sound/soc/sof/snd-sof 0x792e7b26 snd_sof_load_topology +EXPORT_SYMBOL sound/soc/sof/snd-sof 0x7e1c6182 snd_sof_load_firmware_raw +EXPORT_SYMBOL sound/soc/sof/snd-sof 0x7e46223d snd_sof_dsp_only_d0i3_compatible_stream_active +EXPORT_SYMBOL sound/soc/sof/snd-sof 0x8d1cdd5c snd_sof_device_probe +EXPORT_SYMBOL sound/soc/sof/snd-sof 0x8f851681 snd_sof_ipc_free +EXPORT_SYMBOL sound/soc/sof/snd-sof 0x9275b7bd snd_sof_release_trace +EXPORT_SYMBOL sound/soc/sof/snd-sof 0x96e36bf8 sof_fw_ready +EXPORT_SYMBOL sound/soc/sof/snd-sof 0x97e352ca snd_sof_ipc_set_get_comp_data +EXPORT_SYMBOL sound/soc/sof/snd-sof 0x9b463d0a snd_sof_handle_fw_exception +EXPORT_SYMBOL sound/soc/sof/snd-sof 0xa398376d snd_sof_runtime_suspend +EXPORT_SYMBOL sound/soc/sof/snd-sof 0xa631c48d snd_sof_dsp_update_bits_unlocked +EXPORT_SYMBOL sound/soc/sof/snd-sof 0xac298b0d snd_sof_trace_notify_for_error +EXPORT_SYMBOL sound/soc/sof/snd-sof 0xac4d1703 sof_mailbox_write +EXPORT_SYMBOL sound/soc/sof/snd-sof 0xad055b2c sof_ipc_tx_message +EXPORT_SYMBOL sound/soc/sof/snd-sof 0xadbeaff7 snd_sof_ipc_reply +EXPORT_SYMBOL sound/soc/sof/snd-sof 0xb3652b56 snd_sof_init_trace +EXPORT_SYMBOL sound/soc/sof/snd-sof 0xba6d754d snd_sof_resume +EXPORT_SYMBOL sound/soc/sof/snd-sof 0xce165827 snd_sof_ipc_stream_posn +EXPORT_SYMBOL sound/soc/sof/snd-sof 0xd021484c snd_sof_parse_module_memcpy +EXPORT_SYMBOL sound/soc/sof/snd-sof 0xd131f665 snd_sof_ipc_init +EXPORT_SYMBOL sound/soc/sof/snd-sof 0xd6f7357b snd_sof_fw_parse_ext_data +EXPORT_SYMBOL sound/soc/sof/snd-sof 0xd927eca8 sof_ipc_tx_message_no_pm +EXPORT_SYMBOL sound/soc/sof/snd-sof 0xdbfdfbf0 snd_sof_prepare +EXPORT_SYMBOL sound/soc/sof/snd-sof 0xe26568a4 sof_io_write64 +EXPORT_SYMBOL sound/soc/sof/snd-sof 0xe8a72db2 sof_io_read +EXPORT_SYMBOL sound/soc/sof/snd-sof 0xeee37a0b snd_sof_pcm_period_elapsed +EXPORT_SYMBOL sound/soc/sof/snd-sof 0xf2ef432d snd_sof_device_remove +EXPORT_SYMBOL sound/soc/sof/snd-sof 0xf38c763b snd_sof_ipc_valid +EXPORT_SYMBOL sound/soc/sof/snd-sof 0xf96a4a56 sof_machine_check +EXPORT_SYMBOL sound/soc/sof/snd-sof 0xf9ede523 snd_sof_dsp_update_bits64_unlocked +EXPORT_SYMBOL sound/soc/sof/snd-sof 0xfa969633 snd_sof_free_trace +EXPORT_SYMBOL sound/synth/emux/snd-emux-synth 0x122beed7 snd_emux_free +EXPORT_SYMBOL sound/synth/emux/snd-emux-synth 0x285f4f5c snd_emux_lock_voice +EXPORT_SYMBOL sound/synth/emux/snd-emux-synth 0x3515766e snd_emux_register +EXPORT_SYMBOL sound/synth/emux/snd-emux-synth 0x655cb202 snd_sf_linear_to_log +EXPORT_SYMBOL sound/synth/emux/snd-emux-synth 0xc53af771 snd_emux_terminate_all +EXPORT_SYMBOL sound/synth/emux/snd-emux-synth 0xdcf0389f snd_emux_new +EXPORT_SYMBOL sound/synth/emux/snd-emux-synth 0xe0a956c5 snd_emux_unlock_voice +EXPORT_SYMBOL sound/synth/snd-util-mem 0x44db6e41 snd_util_memhdr_new +EXPORT_SYMBOL sound/synth/snd-util-mem 0x801ce873 __snd_util_mem_alloc +EXPORT_SYMBOL sound/synth/snd-util-mem 0x97b7ac12 snd_util_mem_alloc +EXPORT_SYMBOL sound/synth/snd-util-mem 0x9f632a2c snd_util_mem_avail +EXPORT_SYMBOL sound/synth/snd-util-mem 0xbc531e15 __snd_util_mem_free +EXPORT_SYMBOL sound/synth/snd-util-mem 0xbe2c305c __snd_util_memblk_new +EXPORT_SYMBOL sound/synth/snd-util-mem 0xc0f9c9ea snd_util_mem_free +EXPORT_SYMBOL sound/synth/snd-util-mem 0xd7295068 snd_util_memhdr_free +EXPORT_SYMBOL sound/usb/snd-usbmidi-lib 0x16756dc0 snd_usbmidi_input_start +EXPORT_SYMBOL sound/usb/snd-usbmidi-lib 0x2083a8c1 __snd_usbmidi_create +EXPORT_SYMBOL sound/usb/snd-usbmidi-lib 0x63343b1d snd_usbmidi_input_stop +EXPORT_SYMBOL sound/usb/snd-usbmidi-lib 0xb2af19e1 snd_usbmidi_resume +EXPORT_SYMBOL sound/usb/snd-usbmidi-lib 0xbed43a41 snd_usbmidi_suspend +EXPORT_SYMBOL sound/usb/snd-usbmidi-lib 0xd9d2bb03 snd_usbmidi_disconnect +EXPORT_SYMBOL vmlinux 0x0005d929 framebuffer_release +EXPORT_SYMBOL vmlinux 0x000acf4d scsi_unblock_requests +EXPORT_SYMBOL vmlinux 0x000b32d3 phy_read_paged +EXPORT_SYMBOL vmlinux 0x0019e017 __scm_send +EXPORT_SYMBOL vmlinux 0x00299f9a dst_destroy +EXPORT_SYMBOL vmlinux 0x002acffc devfreq_recommended_opp +EXPORT_SYMBOL vmlinux 0x002f41ce edac_mc_find +EXPORT_SYMBOL vmlinux 0x003e808c devfreq_remove_governor +EXPORT_SYMBOL vmlinux 0x00487f31 fb_pan_display +EXPORT_SYMBOL vmlinux 0x007dbb82 seq_path +EXPORT_SYMBOL vmlinux 0x00804f3e msm_pinctrl_dev_pm_ops +EXPORT_SYMBOL vmlinux 0x008f07fe nla_append +EXPORT_SYMBOL vmlinux 0x009adc7b mmc_erase +EXPORT_SYMBOL vmlinux 0x00afedee __dynamic_netdev_dbg +EXPORT_SYMBOL vmlinux 0x00b4e615 posix_acl_equiv_mode +EXPORT_SYMBOL vmlinux 0x00d7e722 vme_lm_count +EXPORT_SYMBOL vmlinux 0x00e79ba2 tty_unlock +EXPORT_SYMBOL vmlinux 0x01000e51 schedule +EXPORT_SYMBOL vmlinux 0x01054a95 pci_pme_active +EXPORT_SYMBOL vmlinux 0x01139ffc max_mapnr +EXPORT_SYMBOL vmlinux 0x0115d800 param_set_byte +EXPORT_SYMBOL vmlinux 0x0117355a skb_copy_and_csum_datagram_msg +EXPORT_SYMBOL vmlinux 0x011a9e53 elf_hwcap2 +EXPORT_SYMBOL vmlinux 0x0129c4f8 par_io_data_set +EXPORT_SYMBOL vmlinux 0x01553371 vm_brk_flags +EXPORT_SYMBOL vmlinux 0x015af7f4 system_state +EXPORT_SYMBOL vmlinux 0x016b37c6 dev_get_by_name_rcu +EXPORT_SYMBOL vmlinux 0x01740410 inet_ioctl +EXPORT_SYMBOL vmlinux 0x01757935 rdmacg_register_device +EXPORT_SYMBOL vmlinux 0x017de3d5 nr_cpu_ids +EXPORT_SYMBOL vmlinux 0x01830813 kblockd_mod_delayed_work_on +EXPORT_SYMBOL vmlinux 0x018574a1 mb_cache_entry_delete +EXPORT_SYMBOL vmlinux 0x01872b53 ucc_of_parse_tdm +EXPORT_SYMBOL vmlinux 0x01911cd8 make_bad_inode +EXPORT_SYMBOL vmlinux 0x019a1573 inet_gro_receive +EXPORT_SYMBOL vmlinux 0x01a3d310 omap_set_dma_channel_mode +EXPORT_SYMBOL vmlinux 0x01bf54e0 nf_log_trace +EXPORT_SYMBOL vmlinux 0x01bf55fc paddr_vmcoreinfo_note +EXPORT_SYMBOL vmlinux 0x01dca497 noop_fsync +EXPORT_SYMBOL vmlinux 0x01e37b0a pcie_get_mps +EXPORT_SYMBOL vmlinux 0x01e769d6 __next_node_in +EXPORT_SYMBOL vmlinux 0x0205cadd key_type_keyring +EXPORT_SYMBOL vmlinux 0x0207fab7 iov_iter_gap_alignment +EXPORT_SYMBOL vmlinux 0x02091dcd pci_set_mwi +EXPORT_SYMBOL vmlinux 0x020dbf27 bitmap_alloc +EXPORT_SYMBOL vmlinux 0x02124474 ip_send_check +EXPORT_SYMBOL vmlinux 0x02196324 __aeabi_idiv +EXPORT_SYMBOL vmlinux 0x0231acb7 sock_setsockopt +EXPORT_SYMBOL vmlinux 0x023c084d scsi_device_get +EXPORT_SYMBOL vmlinux 0x025483b1 set_current_groups +EXPORT_SYMBOL vmlinux 0x02673d37 devm_clk_hw_register_clkdev +EXPORT_SYMBOL vmlinux 0x0274dc2b netif_get_num_default_rss_queues +EXPORT_SYMBOL vmlinux 0x0283dfe3 _snd_pcm_hw_params_any +EXPORT_SYMBOL vmlinux 0x0290bea9 pci_irq_vector +EXPORT_SYMBOL vmlinux 0x0296695f refcount_warn_saturate +EXPORT_SYMBOL vmlinux 0x029e194e fddi_type_trans +EXPORT_SYMBOL vmlinux 0x02a18c74 nf_conntrack_destroy +EXPORT_SYMBOL vmlinux 0x02b2816d cdev_alloc +EXPORT_SYMBOL vmlinux 0x02bc1cc1 udplite_prot +EXPORT_SYMBOL vmlinux 0x02c065f8 ucc_set_qe_mux_mii_mng +EXPORT_SYMBOL vmlinux 0x02c68492 tty_check_change +EXPORT_SYMBOL vmlinux 0x02c84a0d ip_sock_set_tos +EXPORT_SYMBOL vmlinux 0x02d0439f inet_csk_reqsk_queue_drop_and_put +EXPORT_SYMBOL vmlinux 0x02df50b0 jiffies +EXPORT_SYMBOL vmlinux 0x02e121ca param_set_ulong +EXPORT_SYMBOL vmlinux 0x02ea111e scsi_driverbyte_string +EXPORT_SYMBOL vmlinux 0x02ee26c1 free_pages_exact +EXPORT_SYMBOL vmlinux 0x02f8957a rproc_add_subdev +EXPORT_SYMBOL vmlinux 0x030b628d __sb_start_write +EXPORT_SYMBOL vmlinux 0x0326ff50 i2c_smbus_read_byte +EXPORT_SYMBOL vmlinux 0x0327d62c skb_prepare_seq_read +EXPORT_SYMBOL vmlinux 0x032e3caf netif_device_attach +EXPORT_SYMBOL vmlinux 0x0334795d icst307_s2div +EXPORT_SYMBOL vmlinux 0x0334da4e scsi_command_size_tbl +EXPORT_SYMBOL vmlinux 0x0340083a __frontswap_load +EXPORT_SYMBOL vmlinux 0x0357a3af get_fs_type +EXPORT_SYMBOL vmlinux 0x0366307a console_suspend_enabled +EXPORT_SYMBOL vmlinux 0x0377d8ab md_finish_reshape +EXPORT_SYMBOL vmlinux 0x037a0cba kfree +EXPORT_SYMBOL vmlinux 0x03815f35 ledtrig_disk_activity +EXPORT_SYMBOL vmlinux 0x038c88be blk_cleanup_queue +EXPORT_SYMBOL vmlinux 0x03914173 t10_pi_type1_ip +EXPORT_SYMBOL vmlinux 0x0397edd5 fb_edid_to_monspecs +EXPORT_SYMBOL vmlinux 0x039a8b5d bpf_prog_get_type_path +EXPORT_SYMBOL vmlinux 0x039b256e dst_cow_metrics_generic +EXPORT_SYMBOL vmlinux 0x03b11ae0 grab_cache_page_write_begin +EXPORT_SYMBOL vmlinux 0x03ba39b0 v7_flush_user_cache_all +EXPORT_SYMBOL vmlinux 0x03c60516 dma_resv_reserve_shared +EXPORT_SYMBOL vmlinux 0x03fba701 wait_for_completion_killable_timeout +EXPORT_SYMBOL vmlinux 0x03fd2571 vm_unmap_ram +EXPORT_SYMBOL vmlinux 0x041c3b86 xsk_set_tx_need_wakeup +EXPORT_SYMBOL vmlinux 0x0425b43b mipi_dsi_dcs_get_pixel_format +EXPORT_SYMBOL vmlinux 0x04426c15 vme_lm_request +EXPORT_SYMBOL vmlinux 0x04426f14 mem_section +EXPORT_SYMBOL vmlinux 0x044272df devfreq_unregister_notifier +EXPORT_SYMBOL vmlinux 0x04482cdb __refrigerator +EXPORT_SYMBOL vmlinux 0x04496e8d snd_pcm_hw_refine +EXPORT_SYMBOL vmlinux 0x044fb722 dev_base_lock +EXPORT_SYMBOL vmlinux 0x0453b104 inet6_register_icmp_sender +EXPORT_SYMBOL vmlinux 0x0453eb19 input_grab_device +EXPORT_SYMBOL vmlinux 0x045c0f23 dma_fence_array_create +EXPORT_SYMBOL vmlinux 0x045ccc04 devm_request_threaded_irq +EXPORT_SYMBOL vmlinux 0x0461a6e1 clocksource_unregister +EXPORT_SYMBOL vmlinux 0x0479e02c vlan_dev_vlan_id +EXPORT_SYMBOL vmlinux 0x047c9e89 blk_pm_runtime_init +EXPORT_SYMBOL vmlinux 0x04863c9c skb_ext_add +EXPORT_SYMBOL vmlinux 0x04962a24 ip4_datagram_connect +EXPORT_SYMBOL vmlinux 0x049c188c get_mem_cgroup_from_page +EXPORT_SYMBOL vmlinux 0x049d36f4 get_super_exclusive_thawed +EXPORT_SYMBOL vmlinux 0x04b01a47 d_obtain_root +EXPORT_SYMBOL vmlinux 0x04c5f69b param_set_long +EXPORT_SYMBOL vmlinux 0x04c6b4c3 __crypto_memneq +EXPORT_SYMBOL vmlinux 0x04c90784 cdrom_open +EXPORT_SYMBOL vmlinux 0x04cb31c4 abx500_mask_and_set_register_interruptible +EXPORT_SYMBOL vmlinux 0x04cda566 snd_interval_refine +EXPORT_SYMBOL vmlinux 0x04e0bff8 dma_direct_unmap_page +EXPORT_SYMBOL vmlinux 0x04ea56f9 _kstrtol +EXPORT_SYMBOL vmlinux 0x04ff2670 mr_mfc_find_parent +EXPORT_SYMBOL vmlinux 0x0508088e ucs2_strnlen +EXPORT_SYMBOL vmlinux 0x050877b9 dmi_first_match +EXPORT_SYMBOL vmlinux 0x050e37c6 __nlmsg_put +EXPORT_SYMBOL vmlinux 0x0517cf90 dma_get_sgtable_attrs +EXPORT_SYMBOL vmlinux 0x051b46b6 mmc_of_parse_voltage +EXPORT_SYMBOL vmlinux 0x05240ee7 percpu_counter_batch +EXPORT_SYMBOL vmlinux 0x05434d58 posix_acl_update_mode +EXPORT_SYMBOL vmlinux 0x054496b4 schedule_timeout_interruptible +EXPORT_SYMBOL vmlinux 0x054577ab seq_vprintf +EXPORT_SYMBOL vmlinux 0x05484c07 vm_map_pages +EXPORT_SYMBOL vmlinux 0x05521a1b __nla_reserve_64bit +EXPORT_SYMBOL vmlinux 0x0554fac4 eth_header_cache_update +EXPORT_SYMBOL vmlinux 0x0555d837 ip_tunnel_parse_protocol +EXPORT_SYMBOL vmlinux 0x0590c113 deactivate_super +EXPORT_SYMBOL vmlinux 0x0596c772 pagevec_lookup_range_nr_tag +EXPORT_SYMBOL vmlinux 0x05a8b8b9 __cancel_dirty_page +EXPORT_SYMBOL vmlinux 0x05b0caa0 hdmi_vendor_infoframe_pack +EXPORT_SYMBOL vmlinux 0x05c7bdef xfrm_state_lookup_byaddr +EXPORT_SYMBOL vmlinux 0x05ca18a2 _raw_write_lock_irqsave +EXPORT_SYMBOL vmlinux 0x05cd617e gen_pool_dma_alloc +EXPORT_SYMBOL vmlinux 0x05e13eb9 ZSTD_initDDict +EXPORT_SYMBOL vmlinux 0x05e305d1 generic_permission +EXPORT_SYMBOL vmlinux 0x060837f1 snd_ctl_remove +EXPORT_SYMBOL vmlinux 0x06109d12 jbd2_journal_stop +EXPORT_SYMBOL vmlinux 0x061651be strcat +EXPORT_SYMBOL vmlinux 0x0621b73f kthread_destroy_worker +EXPORT_SYMBOL vmlinux 0x062d423a kmem_cache_alloc_bulk +EXPORT_SYMBOL vmlinux 0x06325eef flow_rule_match_enc_opts +EXPORT_SYMBOL vmlinux 0x0634100a bitmap_parselist_user +EXPORT_SYMBOL vmlinux 0x06350c70 set_security_override_from_ctx +EXPORT_SYMBOL vmlinux 0x065246b8 frame_vector_create +EXPORT_SYMBOL vmlinux 0x0667f84a dev_mc_add +EXPORT_SYMBOL vmlinux 0x06724b38 ZSTD_getFrameParams +EXPORT_SYMBOL vmlinux 0x067ea780 mutex_unlock +EXPORT_SYMBOL vmlinux 0x06938d16 mmc_wait_for_req +EXPORT_SYMBOL vmlinux 0x069812d5 xfrm_register_type_offload +EXPORT_SYMBOL vmlinux 0x06c8f2de slhc_compress +EXPORT_SYMBOL vmlinux 0x06f2a132 dev_get_phys_port_name +EXPORT_SYMBOL vmlinux 0x071c3067 pcim_iounmap_regions +EXPORT_SYMBOL vmlinux 0x072f901c vme_master_rmw +EXPORT_SYMBOL vmlinux 0x072fb27c skb_copy_and_csum_bits +EXPORT_SYMBOL vmlinux 0x0732d428 snd_ctl_remove_id +EXPORT_SYMBOL vmlinux 0x0732dbee __ip_mc_inc_group +EXPORT_SYMBOL vmlinux 0x07394d80 pci_set_master +EXPORT_SYMBOL vmlinux 0x074a85aa kern_path +EXPORT_SYMBOL vmlinux 0x074a91d2 inet6_protos +EXPORT_SYMBOL vmlinux 0x075a2258 cpu_tlb +EXPORT_SYMBOL vmlinux 0x075a2c33 ZSTD_decompressBegin_usingDict +EXPORT_SYMBOL vmlinux 0x0765c998 xfrm_policy_hash_rebuild +EXPORT_SYMBOL vmlinux 0x07684401 input_inject_event +EXPORT_SYMBOL vmlinux 0x07719426 dcache_dir_lseek +EXPORT_SYMBOL vmlinux 0x07776848 may_umount_tree +EXPORT_SYMBOL vmlinux 0x077af67c init_opal_dev +EXPORT_SYMBOL vmlinux 0x078510f9 locks_copy_conflock +EXPORT_SYMBOL vmlinux 0x07a890c8 fb_alloc_cmap +EXPORT_SYMBOL vmlinux 0x07ad5684 prepare_creds +EXPORT_SYMBOL vmlinux 0x07af27f6 scsi_device_put +EXPORT_SYMBOL vmlinux 0x07cc4a5d printk_timed_ratelimit +EXPORT_SYMBOL vmlinux 0x07e2c085 radix_tree_tagged +EXPORT_SYMBOL vmlinux 0x07e4dc97 alloc_skb_with_frags +EXPORT_SYMBOL vmlinux 0x07f57478 pci_unmap_iospace +EXPORT_SYMBOL vmlinux 0x07f887c3 snd_pcm_lib_ioctl +EXPORT_SYMBOL vmlinux 0x0805f2c8 ecryptfs_get_auth_tok_key +EXPORT_SYMBOL vmlinux 0x0808148b filemap_fdatawait_range +EXPORT_SYMBOL vmlinux 0x08087809 snd_pcm_hw_constraint_list +EXPORT_SYMBOL vmlinux 0x081e5365 proc_create_mount_point +EXPORT_SYMBOL vmlinux 0x08249512 iwe_stream_add_point +EXPORT_SYMBOL vmlinux 0x0824a327 tcp_syn_ack_timeout +EXPORT_SYMBOL vmlinux 0x082c3213 pci_root_buses +EXPORT_SYMBOL vmlinux 0x08331cdd udp_sk_rx_dst_set +EXPORT_SYMBOL vmlinux 0x083eb21c rfkill_unregister +EXPORT_SYMBOL vmlinux 0x084afc36 generic_file_fsync +EXPORT_SYMBOL vmlinux 0x08613c7c ip_frag_next +EXPORT_SYMBOL vmlinux 0x08690bbf __tracepoint_kmem_cache_alloc_node +EXPORT_SYMBOL vmlinux 0x086979b7 phy_free_interrupt +EXPORT_SYMBOL vmlinux 0x0882a449 security_xfrm_policy_alloc +EXPORT_SYMBOL vmlinux 0x08a82cc5 snd_ctl_boolean_mono_info +EXPORT_SYMBOL vmlinux 0x08b625f5 phy_device_create +EXPORT_SYMBOL vmlinux 0x08c4fd32 omap_disable_dma_irq +EXPORT_SYMBOL vmlinux 0x08ca2eed nlmsg_notify +EXPORT_SYMBOL vmlinux 0x08d25525 msm_pinctrl_probe +EXPORT_SYMBOL vmlinux 0x08d4ca86 mount_subtree +EXPORT_SYMBOL vmlinux 0x08de2cbb nd_device_register +EXPORT_SYMBOL vmlinux 0x08e39398 cmd_db_read_addr +EXPORT_SYMBOL vmlinux 0x08f228d8 vfs_symlink +EXPORT_SYMBOL vmlinux 0x09017abf mdio_driver_unregister +EXPORT_SYMBOL vmlinux 0x09037193 simple_nosetlease +EXPORT_SYMBOL vmlinux 0x09122e86 xfrm_policy_walk_done +EXPORT_SYMBOL vmlinux 0x09156ccb sock_no_recvmsg +EXPORT_SYMBOL vmlinux 0x09207831 irq_domain_set_info +EXPORT_SYMBOL vmlinux 0x09287c47 ww_mutex_unlock +EXPORT_SYMBOL vmlinux 0x092d665e commit_creds +EXPORT_SYMBOL vmlinux 0x09466089 bio_clone_fast +EXPORT_SYMBOL vmlinux 0x094e28e6 kmem_cache_create +EXPORT_SYMBOL vmlinux 0x09769037 dmt_modes +EXPORT_SYMBOL vmlinux 0x0977786c of_phy_attach +EXPORT_SYMBOL vmlinux 0x097f58a7 input_unregister_handler +EXPORT_SYMBOL vmlinux 0x098b71c6 fb_dealloc_cmap +EXPORT_SYMBOL vmlinux 0x09933b19 unregister_filesystem +EXPORT_SYMBOL vmlinux 0x09992aef sg_alloc_table_from_pages +EXPORT_SYMBOL vmlinux 0x09a12428 blk_mq_delay_run_hw_queue +EXPORT_SYMBOL vmlinux 0x09aa11a7 bdev_dax_pgoff +EXPORT_SYMBOL vmlinux 0x09c2c24d inet_csk_destroy_sock +EXPORT_SYMBOL vmlinux 0x09c8eb55 font_vga_8x16 +EXPORT_SYMBOL vmlinux 0x09d44df9 in_lock_functions +EXPORT_SYMBOL vmlinux 0x09fbdf48 tso_build_hdr +EXPORT_SYMBOL vmlinux 0x0a046256 udp_lib_setsockopt +EXPORT_SYMBOL vmlinux 0x0a06f6a7 ns_capable_noaudit +EXPORT_SYMBOL vmlinux 0x0a0c92a1 md_check_no_bitmap +EXPORT_SYMBOL vmlinux 0x0a198916 sock_enable_timestamps +EXPORT_SYMBOL vmlinux 0x0a20d621 ZSTD_decompressBegin +EXPORT_SYMBOL vmlinux 0x0a292872 reservation_seqcount_class +EXPORT_SYMBOL vmlinux 0x0a2c65c2 snd_timer_new +EXPORT_SYMBOL vmlinux 0x0a3131f6 strnchr +EXPORT_SYMBOL vmlinux 0x0a760100 keyring_alloc +EXPORT_SYMBOL vmlinux 0x0a8ccaa2 put_watch_queue +EXPORT_SYMBOL vmlinux 0x0aa309cf synchronize_hardirq +EXPORT_SYMBOL vmlinux 0x0aa79dfe backlight_force_update +EXPORT_SYMBOL vmlinux 0x0aaccc92 pci_remap_iospace +EXPORT_SYMBOL vmlinux 0x0abf256c jbd2_journal_revoke +EXPORT_SYMBOL vmlinux 0x0aca674f vfs_iocb_iter_write +EXPORT_SYMBOL vmlinux 0x0ace4bf4 __ClearPageMovable +EXPORT_SYMBOL vmlinux 0x0acf7679 dma_issue_pending_all +EXPORT_SYMBOL vmlinux 0x0ad2342d register_tcf_proto_ops +EXPORT_SYMBOL vmlinux 0x0adc2bed pm860x_bulk_write +EXPORT_SYMBOL vmlinux 0x0adfa33e ip_frag_init +EXPORT_SYMBOL vmlinux 0x0ae547ed xxh64_update +EXPORT_SYMBOL vmlinux 0x0ae9df49 rproc_elf_find_loaded_rsc_table +EXPORT_SYMBOL vmlinux 0x0b0487de nvmem_get_mac_address +EXPORT_SYMBOL vmlinux 0x0b0d24c5 mtd_concat_destroy +EXPORT_SYMBOL vmlinux 0x0b1b939e kmemdup +EXPORT_SYMBOL vmlinux 0x0b1beb31 vmalloc_32_user +EXPORT_SYMBOL vmlinux 0x0b1c7da9 __seq_open_private +EXPORT_SYMBOL vmlinux 0x0b2bd220 ethtool_op_get_ts_info +EXPORT_SYMBOL vmlinux 0x0b2cb334 psched_ratecfg_precompute +EXPORT_SYMBOL vmlinux 0x0b4005ce __devm_request_region +EXPORT_SYMBOL vmlinux 0x0b40d7cf _raw_read_unlock_irqrestore +EXPORT_SYMBOL vmlinux 0x0b48677a __kfifo_init +EXPORT_SYMBOL vmlinux 0x0b5b4cc4 tcp_conn_request +EXPORT_SYMBOL vmlinux 0x0b617520 dma_fence_default_wait +EXPORT_SYMBOL vmlinux 0x0b742fd7 simple_strtol +EXPORT_SYMBOL vmlinux 0x0b889b93 genphy_soft_reset +EXPORT_SYMBOL vmlinux 0x0bacd329 amba_device_unregister +EXPORT_SYMBOL vmlinux 0x0bc477a2 irq_set_irq_type +EXPORT_SYMBOL vmlinux 0x0bcb4d7e forget_cached_acl +EXPORT_SYMBOL vmlinux 0x0bccdc82 inode_permission +EXPORT_SYMBOL vmlinux 0x0bdaf4a3 setattr_copy +EXPORT_SYMBOL vmlinux 0x0bdef99d __cgroup_bpf_run_filter_sock_addr +EXPORT_SYMBOL vmlinux 0x0bea548a udp_lib_rehash +EXPORT_SYMBOL vmlinux 0x0beff2b9 pci_find_resource +EXPORT_SYMBOL vmlinux 0x0bf1143f iov_iter_pipe +EXPORT_SYMBOL vmlinux 0x0bf24b4d scsi_report_bus_reset +EXPORT_SYMBOL vmlinux 0x0c0579f1 xfrm4_protocol_deregister +EXPORT_SYMBOL vmlinux 0x0c25ec48 secure_tcpv6_seq +EXPORT_SYMBOL vmlinux 0x0c349e70 dev_uc_add_excl +EXPORT_SYMBOL vmlinux 0x0c35edc5 alloc_buffer_head +EXPORT_SYMBOL vmlinux 0x0c6fb599 netdev_change_features +EXPORT_SYMBOL vmlinux 0x0c87071d tty_port_close_start +EXPORT_SYMBOL vmlinux 0x0ca54fee _test_and_set_bit +EXPORT_SYMBOL vmlinux 0x0caf51fb config_item_init_type_name +EXPORT_SYMBOL vmlinux 0x0cb264a1 security_lock_kernel_down +EXPORT_SYMBOL vmlinux 0x0cc1318b mipi_dsi_device_unregister +EXPORT_SYMBOL vmlinux 0x0ce19729 mb_cache_entry_touch +EXPORT_SYMBOL vmlinux 0x0cee61bd phy_init_hw +EXPORT_SYMBOL vmlinux 0x0cf096f6 skb_realloc_headroom +EXPORT_SYMBOL vmlinux 0x0d01fbb0 key_alloc +EXPORT_SYMBOL vmlinux 0x0d07f543 get_anon_bdev +EXPORT_SYMBOL vmlinux 0x0d2132ca snd_timer_global_new +EXPORT_SYMBOL vmlinux 0x0d287931 flow_block_cb_incref +EXPORT_SYMBOL vmlinux 0x0d2ca20f ucc_fast_get_qe_cr_subblock +EXPORT_SYMBOL vmlinux 0x0d3f57a2 _find_next_bit_le +EXPORT_SYMBOL vmlinux 0x0d542439 __ipv6_addr_type +EXPORT_SYMBOL vmlinux 0x0d61eeee __bitmap_subset +EXPORT_SYMBOL vmlinux 0x0d79e7e5 netdev_name_node_alt_destroy +EXPORT_SYMBOL vmlinux 0x0d9b6ab6 __ip_queue_xmit +EXPORT_SYMBOL vmlinux 0x0da3008f security_inode_copy_up +EXPORT_SYMBOL vmlinux 0x0da75654 set_user_nice +EXPORT_SYMBOL vmlinux 0x0dba5e9a radix_tree_delete +EXPORT_SYMBOL vmlinux 0x0dc1a78c bin2hex +EXPORT_SYMBOL vmlinux 0x0dc299ae blk_queue_max_segments +EXPORT_SYMBOL vmlinux 0x0de81d5b blkdev_issue_flush +EXPORT_SYMBOL vmlinux 0x0df04b2d blk_mq_end_request +EXPORT_SYMBOL vmlinux 0x0df48f58 pci_bus_set_ops +EXPORT_SYMBOL vmlinux 0x0dfff1cd scsi_print_sense +EXPORT_SYMBOL vmlinux 0x0e0d9699 of_find_node_opts_by_path +EXPORT_SYMBOL vmlinux 0x0e13da8d framebuffer_alloc +EXPORT_SYMBOL vmlinux 0x0e17678a siphash_4u64 +EXPORT_SYMBOL vmlinux 0x0e1c8804 dma_fence_chain_find_seqno +EXPORT_SYMBOL vmlinux 0x0e3f3194 __inet_hash +EXPORT_SYMBOL vmlinux 0x0e512aa6 rtc_add_groups +EXPORT_SYMBOL vmlinux 0x0e66fb5e get_bitmap_from_slot +EXPORT_SYMBOL vmlinux 0x0e6c5688 skb_put +EXPORT_SYMBOL vmlinux 0x0e9ca233 pin_user_pages +EXPORT_SYMBOL vmlinux 0x0ea827d1 tcp_v4_md5_hash_skb +EXPORT_SYMBOL vmlinux 0x0eb0a662 dm_table_get_md +EXPORT_SYMBOL vmlinux 0x0ebac350 genphy_c37_read_status +EXPORT_SYMBOL vmlinux 0x0ebae799 netif_receive_skb_core +EXPORT_SYMBOL vmlinux 0x0ec5babe vme_dma_free +EXPORT_SYMBOL vmlinux 0x0ee1a44e blk_pre_runtime_suspend +EXPORT_SYMBOL vmlinux 0x0ee656f7 snd_ctl_replace +EXPORT_SYMBOL vmlinux 0x0eea0399 strscpy +EXPORT_SYMBOL vmlinux 0x0f00439e snd_pcm_stop +EXPORT_SYMBOL vmlinux 0x0f09cc34 schedule_timeout_killable +EXPORT_SYMBOL vmlinux 0x0f172543 vfs_create +EXPORT_SYMBOL vmlinux 0x0f1ae2e2 rtnetlink_put_metrics +EXPORT_SYMBOL vmlinux 0x0f1ebe76 netlink_broadcast_filtered +EXPORT_SYMBOL vmlinux 0x0f402622 dev_queue_xmit +EXPORT_SYMBOL vmlinux 0x0f644822 dev_change_flags +EXPORT_SYMBOL vmlinux 0x0f78bc6f rproc_of_resm_mem_entry_init +EXPORT_SYMBOL vmlinux 0x0f800655 path_nosuid +EXPORT_SYMBOL vmlinux 0x0f86f560 kthread_delayed_work_timer_fn +EXPORT_SYMBOL vmlinux 0x0f946f74 dev_add_pack +EXPORT_SYMBOL vmlinux 0x0fa0964a from_kprojid_munged +EXPORT_SYMBOL vmlinux 0x0faef0ed __tasklet_schedule +EXPORT_SYMBOL vmlinux 0x0fb2f8a4 mktime64 +EXPORT_SYMBOL vmlinux 0x0fb432c7 rtnl_link_get_net +EXPORT_SYMBOL vmlinux 0x0fb8b982 skb_vlan_pop +EXPORT_SYMBOL vmlinux 0x0fd902db mb_cache_entry_create +EXPORT_SYMBOL vmlinux 0x0fdb059e tcp_v4_conn_request +EXPORT_SYMBOL vmlinux 0x0fe18cce tcp_create_openreq_child +EXPORT_SYMBOL vmlinux 0x0feab63e dst_release +EXPORT_SYMBOL vmlinux 0x0ff178f6 __aeabi_idivmod +EXPORT_SYMBOL vmlinux 0x0ff72640 proc_create_single_data +EXPORT_SYMBOL vmlinux 0x0fff5afc time64_to_tm +EXPORT_SYMBOL vmlinux 0x10018cb0 __pv_offset +EXPORT_SYMBOL vmlinux 0x100c98c4 sock_bindtoindex +EXPORT_SYMBOL vmlinux 0x1010d171 phy_read_mmd +EXPORT_SYMBOL vmlinux 0x1019d9e8 dst_release_immediate +EXPORT_SYMBOL vmlinux 0x1023718e fb_get_mode +EXPORT_SYMBOL vmlinux 0x1025009a cpm_muram_alloc_fixed +EXPORT_SYMBOL vmlinux 0x102936ec qe_clock_source +EXPORT_SYMBOL vmlinux 0x103486bb xfrm_policy_flush +EXPORT_SYMBOL vmlinux 0x1035c7c2 __release_region +EXPORT_SYMBOL vmlinux 0x1054422c pci_bus_alloc_resource +EXPORT_SYMBOL vmlinux 0x1068004b gf128mul_bbe +EXPORT_SYMBOL vmlinux 0x106f13ab crc_t10dif_generic +EXPORT_SYMBOL vmlinux 0x1072a394 csum_partial_copy_from_user +EXPORT_SYMBOL vmlinux 0x10739f1e swake_up_locked +EXPORT_SYMBOL vmlinux 0x107e5878 zlib_inflateEnd +EXPORT_SYMBOL vmlinux 0x10834602 simple_recursive_removal +EXPORT_SYMBOL vmlinux 0x1085d5ee down_read_killable +EXPORT_SYMBOL vmlinux 0x10942d7f vme_irq_generate +EXPORT_SYMBOL vmlinux 0x109a8efe cookie_ecn_ok +EXPORT_SYMBOL vmlinux 0x10af17fc __d_lookup_done +EXPORT_SYMBOL vmlinux 0x10bc43cb netif_set_real_num_rx_queues +EXPORT_SYMBOL vmlinux 0x10c23cf2 dup_iter +EXPORT_SYMBOL vmlinux 0x10c3f57e __gnet_stats_copy_queue +EXPORT_SYMBOL vmlinux 0x10d90f04 mr_table_dump +EXPORT_SYMBOL vmlinux 0x10d9f885 scsi_sense_desc_find +EXPORT_SYMBOL vmlinux 0x10ecfc2e nvm_dev_dma_free +EXPORT_SYMBOL vmlinux 0x10f8772b __tracepoint_module_get +EXPORT_SYMBOL vmlinux 0x11089ac7 _ctype +EXPORT_SYMBOL vmlinux 0x11128404 mark_buffer_dirty_inode +EXPORT_SYMBOL vmlinux 0x113a3e68 config_group_init +EXPORT_SYMBOL vmlinux 0x113caf11 inetdev_by_index +EXPORT_SYMBOL vmlinux 0x114060d3 reuseport_select_sock +EXPORT_SYMBOL vmlinux 0x1163f0a7 blk_max_low_pfn +EXPORT_SYMBOL vmlinux 0x117093be qdisc_class_hash_init +EXPORT_SYMBOL vmlinux 0x11802422 __bread_gfp +EXPORT_SYMBOL vmlinux 0x1183bf09 devm_pci_remap_iospace +EXPORT_SYMBOL vmlinux 0x118cd687 of_device_is_big_endian +EXPORT_SYMBOL vmlinux 0x119b50e7 elf_check_arch +EXPORT_SYMBOL vmlinux 0x11aa5bf0 __sock_create +EXPORT_SYMBOL vmlinux 0x11ac1bd1 inet6_csk_route_req +EXPORT_SYMBOL vmlinux 0x11d16ed6 of_find_backlight_by_node +EXPORT_SYMBOL vmlinux 0x11e0ec41 dm_read_arg +EXPORT_SYMBOL vmlinux 0x11e30762 chacha_block_generic +EXPORT_SYMBOL vmlinux 0x11ee6b15 snd_pcm_kernel_ioctl +EXPORT_SYMBOL vmlinux 0x11f47d8c utf8_strncmp +EXPORT_SYMBOL vmlinux 0x11f7ed4c hex_to_bin +EXPORT_SYMBOL vmlinux 0x11ffdfee ucc_slow_stop_tx +EXPORT_SYMBOL vmlinux 0x12008d48 rproc_coredump_set_elf_info +EXPORT_SYMBOL vmlinux 0x120b336a __rb_insert_augmented +EXPORT_SYMBOL vmlinux 0x121e9e19 skb_append +EXPORT_SYMBOL vmlinux 0x12240fc7 i2c_add_adapter +EXPORT_SYMBOL vmlinux 0x1271bbc0 __do_once_done +EXPORT_SYMBOL vmlinux 0x1275fcff bdev_read_only +EXPORT_SYMBOL vmlinux 0x12827367 sg_copy_from_buffer +EXPORT_SYMBOL vmlinux 0x1296c751 _copy_to_iter +EXPORT_SYMBOL vmlinux 0x129d832b genphy_read_abilities +EXPORT_SYMBOL vmlinux 0x12a34822 sched_autogroup_detach +EXPORT_SYMBOL vmlinux 0x12a38747 usleep_range +EXPORT_SYMBOL vmlinux 0x12ac9ee0 of_get_mac_address +EXPORT_SYMBOL vmlinux 0x12b1204e nosteal_pipe_buf_ops +EXPORT_SYMBOL vmlinux 0x12cabc89 siphash_2u64 +EXPORT_SYMBOL vmlinux 0x12f19edf __genradix_ptr_alloc +EXPORT_SYMBOL vmlinux 0x12f6f69c fb_videomode_to_var +EXPORT_SYMBOL vmlinux 0x12fbb91e vme_dma_request +EXPORT_SYMBOL vmlinux 0x130b1b15 remove_arg_zero +EXPORT_SYMBOL vmlinux 0x13110126 request_resource +EXPORT_SYMBOL vmlinux 0x1314260d elm_decode_bch_error_page +EXPORT_SYMBOL vmlinux 0x1317533f max8925_reg_write +EXPORT_SYMBOL vmlinux 0x131b7254 snd_timer_start +EXPORT_SYMBOL vmlinux 0x13243d4b wl1251_get_platform_data +EXPORT_SYMBOL vmlinux 0x132ce099 netlink_rcv_skb +EXPORT_SYMBOL vmlinux 0x1345cd88 irq_to_desc +EXPORT_SYMBOL vmlinux 0x134cdd34 inet_frag_rbtree_purge +EXPORT_SYMBOL vmlinux 0x137bb9e8 current_time +EXPORT_SYMBOL vmlinux 0x137eb822 rproc_report_crash +EXPORT_SYMBOL vmlinux 0x137f3c6a __cpuhp_remove_state_cpuslocked +EXPORT_SYMBOL vmlinux 0x139e89f7 done_path_create +EXPORT_SYMBOL vmlinux 0x13aaa617 ip6_find_1stfragopt +EXPORT_SYMBOL vmlinux 0x13c75fd3 mdio_device_remove +EXPORT_SYMBOL vmlinux 0x13ccc67c inc_nlink +EXPORT_SYMBOL vmlinux 0x13d0adf7 __kfifo_out +EXPORT_SYMBOL vmlinux 0x13d24f16 ZSTD_compressBegin_advanced +EXPORT_SYMBOL vmlinux 0x13de540c d_exact_alias +EXPORT_SYMBOL vmlinux 0x13e7932e sg_miter_start +EXPORT_SYMBOL vmlinux 0x13f42152 system_entering_hibernation +EXPORT_SYMBOL vmlinux 0x13fe6e61 tty_driver_flush_buffer +EXPORT_SYMBOL vmlinux 0x140cef8e cmxgcr_lock +EXPORT_SYMBOL vmlinux 0x14111a24 phy_init_eee +EXPORT_SYMBOL vmlinux 0x1455a2d5 drop_super +EXPORT_SYMBOL vmlinux 0x14605535 dma_fence_context_alloc +EXPORT_SYMBOL vmlinux 0x146289b7 crc16_table +EXPORT_SYMBOL vmlinux 0x146c61cf proc_create +EXPORT_SYMBOL vmlinux 0x1486978a gen_pool_add_owner +EXPORT_SYMBOL vmlinux 0x149443f2 dma_pool_create +EXPORT_SYMBOL vmlinux 0x14d4a9c5 _change_bit +EXPORT_SYMBOL vmlinux 0x14edb326 netdev_rx_csum_fault +EXPORT_SYMBOL vmlinux 0x14f17f19 mark_page_accessed +EXPORT_SYMBOL vmlinux 0x14fb2365 cmdline_parts_set +EXPORT_SYMBOL vmlinux 0x14fc1250 blkdev_issue_discard +EXPORT_SYMBOL vmlinux 0x14fd5f7e submit_bio +EXPORT_SYMBOL vmlinux 0x150dc025 nf_unregister_queue_handler +EXPORT_SYMBOL vmlinux 0x15110684 ptp_find_pin +EXPORT_SYMBOL vmlinux 0x151f4898 schedule_timeout_uninterruptible +EXPORT_SYMBOL vmlinux 0x1526a9ee security_inode_notifysecctx +EXPORT_SYMBOL vmlinux 0x1526b301 unix_tot_inflight +EXPORT_SYMBOL vmlinux 0x1534a1d3 fc_mount +EXPORT_SYMBOL vmlinux 0x154a610c passthru_features_check +EXPORT_SYMBOL vmlinux 0x154c6338 dm_kcopyd_client_destroy +EXPORT_SYMBOL vmlinux 0x155d5b69 sock_no_connect +EXPORT_SYMBOL vmlinux 0x15755e3e netdev_crit +EXPORT_SYMBOL vmlinux 0x1580b358 sdev_prefix_printk +EXPORT_SYMBOL vmlinux 0x15ad5d4c unpin_user_pages +EXPORT_SYMBOL vmlinux 0x15bafe29 unregister_md_cluster_operations +EXPORT_SYMBOL vmlinux 0x15bed7a5 LZ4_decompress_safe_partial +EXPORT_SYMBOL vmlinux 0x15c6754b nd_btt_probe +EXPORT_SYMBOL vmlinux 0x15d433c0 ZSTD_decompressStream +EXPORT_SYMBOL vmlinux 0x15d4fa78 clear_inode +EXPORT_SYMBOL vmlinux 0x15e26a80 rtnl_configure_link +EXPORT_SYMBOL vmlinux 0x1601c17d has_capability +EXPORT_SYMBOL vmlinux 0x160323fc pci_free_host_bridge +EXPORT_SYMBOL vmlinux 0x160c5a11 dentry_open +EXPORT_SYMBOL vmlinux 0x1617c0e7 config_group_find_item +EXPORT_SYMBOL vmlinux 0x162893fd hashlen_string +EXPORT_SYMBOL vmlinux 0x163c602d flush_kernel_dcache_page +EXPORT_SYMBOL vmlinux 0x164541fb param_array_ops +EXPORT_SYMBOL vmlinux 0x16525cc4 xa_find +EXPORT_SYMBOL vmlinux 0x1659c76b vmap +EXPORT_SYMBOL vmlinux 0x1669d699 snd_pcm_hw_constraint_step +EXPORT_SYMBOL vmlinux 0x166b4fe4 init_special_inode +EXPORT_SYMBOL vmlinux 0x168cca7a bio_uninit +EXPORT_SYMBOL vmlinux 0x1697b130 component_match_add_release +EXPORT_SYMBOL vmlinux 0x16e297c3 bit_wait +EXPORT_SYMBOL vmlinux 0x16e6db1d skb_dump +EXPORT_SYMBOL vmlinux 0x16fd57fb simple_dir_inode_operations +EXPORT_SYMBOL vmlinux 0x170bf23b flow_rule_match_cvlan +EXPORT_SYMBOL vmlinux 0x17109a96 neigh_sysctl_register +EXPORT_SYMBOL vmlinux 0x17265777 abx500_get_register_page_interruptible +EXPORT_SYMBOL vmlinux 0x172cab5f seq_lseek +EXPORT_SYMBOL vmlinux 0x1738c19e _raw_write_unlock_bh +EXPORT_SYMBOL vmlinux 0x1741848d vme_unregister_bridge +EXPORT_SYMBOL vmlinux 0x17887935 nla_put_nohdr +EXPORT_SYMBOL vmlinux 0x178c4894 qe_upload_firmware +EXPORT_SYMBOL vmlinux 0x179e5008 nvm_end_io +EXPORT_SYMBOL vmlinux 0x17af08b2 jbd2_journal_free_reserved +EXPORT_SYMBOL vmlinux 0x17cd5989 snd_jack_add_new_kctl +EXPORT_SYMBOL vmlinux 0x17cfbbb4 lock_rename +EXPORT_SYMBOL vmlinux 0x17da755d rdmacg_try_charge +EXPORT_SYMBOL vmlinux 0x17f0cb54 mmc_gpiod_request_cd +EXPORT_SYMBOL vmlinux 0x1804f935 pci_release_resource +EXPORT_SYMBOL vmlinux 0x1814ba9f dquot_writeback_dquots +EXPORT_SYMBOL vmlinux 0x1829307c xfrm_state_walk_done +EXPORT_SYMBOL vmlinux 0x18345b8e __bitmap_replace +EXPORT_SYMBOL vmlinux 0x183fc312 xfrm_init_replay +EXPORT_SYMBOL vmlinux 0x184b7dd3 prepare_to_swait_event +EXPORT_SYMBOL vmlinux 0x18697957 mmc_add_host +EXPORT_SYMBOL vmlinux 0x1874b05b hdmi_drm_infoframe_unpack_only +EXPORT_SYMBOL vmlinux 0x187884a8 cpm_muram_free +EXPORT_SYMBOL vmlinux 0x188568b2 mmc_can_gpio_ro +EXPORT_SYMBOL vmlinux 0x188ea314 jiffies_to_timespec64 +EXPORT_SYMBOL vmlinux 0x189c5980 arm_copy_to_user +EXPORT_SYMBOL vmlinux 0x18a45515 pci_find_bus +EXPORT_SYMBOL vmlinux 0x18ae28f3 poll_freewait +EXPORT_SYMBOL vmlinux 0x18ce2e8c __test_set_page_writeback +EXPORT_SYMBOL vmlinux 0x18d8c2b5 dma_sync_wait +EXPORT_SYMBOL vmlinux 0x18e60984 __do_once_start +EXPORT_SYMBOL vmlinux 0x18fa3f27 kthread_blkcg +EXPORT_SYMBOL vmlinux 0x18fbfae4 truncate_setsize +EXPORT_SYMBOL vmlinux 0x18fddfb4 tcp_rcv_established +EXPORT_SYMBOL vmlinux 0x19084f5d d_move +EXPORT_SYMBOL vmlinux 0x190e8ac0 pci_alloc_irq_vectors_affinity +EXPORT_SYMBOL vmlinux 0x190fb6ad iter_file_splice_write +EXPORT_SYMBOL vmlinux 0x191018da pci_setup_cardbus +EXPORT_SYMBOL vmlinux 0x192a4c82 skb_vlan_push +EXPORT_SYMBOL vmlinux 0x19380128 mmc_set_data_timeout +EXPORT_SYMBOL vmlinux 0x193ab73e xfrm_policy_delete +EXPORT_SYMBOL vmlinux 0x193d97ac scsi_test_unit_ready +EXPORT_SYMBOL vmlinux 0x194cd3ed xp_can_alloc +EXPORT_SYMBOL vmlinux 0x195c8596 cpu_rmap_update +EXPORT_SYMBOL vmlinux 0x197dc3b3 omap_set_dma_src_burst_mode +EXPORT_SYMBOL vmlinux 0x1984d421 out_of_line_wait_on_bit +EXPORT_SYMBOL vmlinux 0x198620d7 security_add_mnt_opt +EXPORT_SYMBOL vmlinux 0x1986a395 inet_twsk_deschedule_put +EXPORT_SYMBOL vmlinux 0x198788b4 snd_lookup_oss_minor_data +EXPORT_SYMBOL vmlinux 0x1988d652 inet6_unregister_icmp_sender +EXPORT_SYMBOL vmlinux 0x19958360 rproc_elf_load_segments +EXPORT_SYMBOL vmlinux 0x199ed0cd net_disable_timestamp +EXPORT_SYMBOL vmlinux 0x19bd383b security_secmark_refcount_dec +EXPORT_SYMBOL vmlinux 0x19c658c3 xfrm_register_km +EXPORT_SYMBOL vmlinux 0x19c96422 dma_direct_sync_sg_for_device +EXPORT_SYMBOL vmlinux 0x19d3f766 snd_ctl_register_ioctl +EXPORT_SYMBOL vmlinux 0x19d91750 dst_alloc +EXPORT_SYMBOL vmlinux 0x19f0ec7e sock_recvmsg +EXPORT_SYMBOL vmlinux 0x19f97772 fs_param_is_blockdev +EXPORT_SYMBOL vmlinux 0x1a10f789 bprm_change_interp +EXPORT_SYMBOL vmlinux 0x1a17f3f4 __pskb_copy_fclone +EXPORT_SYMBOL vmlinux 0x1a21d691 __ksize +EXPORT_SYMBOL vmlinux 0x1a240057 tcf_idr_check_alloc +EXPORT_SYMBOL vmlinux 0x1a304f97 i2c_smbus_read_word_data +EXPORT_SYMBOL vmlinux 0x1a3f9753 cdev_device_del +EXPORT_SYMBOL vmlinux 0x1a4298e7 sk_free +EXPORT_SYMBOL vmlinux 0x1a437271 snd_pcm_hw_param_first +EXPORT_SYMBOL vmlinux 0x1a65f4ad __arm_ioremap_pfn +EXPORT_SYMBOL vmlinux 0x1a70989e padata_start +EXPORT_SYMBOL vmlinux 0x1a745a3d input_alloc_absinfo +EXPORT_SYMBOL vmlinux 0x1a7bc9ef xxh32 +EXPORT_SYMBOL vmlinux 0x1a824932 devm_gen_pool_create +EXPORT_SYMBOL vmlinux 0x1a9a433c prandom_u32_state +EXPORT_SYMBOL vmlinux 0x1a9c7813 vmalloc_to_page +EXPORT_SYMBOL vmlinux 0x1aa86d18 rdma_dim +EXPORT_SYMBOL vmlinux 0x1abe935c vfs_get_link +EXPORT_SYMBOL vmlinux 0x1ac3693d vfs_iter_write +EXPORT_SYMBOL vmlinux 0x1ad1f2e7 _memcpy_fromio +EXPORT_SYMBOL vmlinux 0x1aded990 ZSTD_DCtxWorkspaceBound +EXPORT_SYMBOL vmlinux 0x1ae940b8 icmpv6_send +EXPORT_SYMBOL vmlinux 0x1b015d25 bitmap_parselist +EXPORT_SYMBOL vmlinux 0x1b03a02a amba_find_device +EXPORT_SYMBOL vmlinux 0x1b055971 mpage_readpage +EXPORT_SYMBOL vmlinux 0x1b0a4bfc inode_insert5 +EXPORT_SYMBOL vmlinux 0x1b11b0ec serial8250_register_8250_port +EXPORT_SYMBOL vmlinux 0x1b15bd74 vme_register_error_handler +EXPORT_SYMBOL vmlinux 0x1b25f187 __xa_store +EXPORT_SYMBOL vmlinux 0x1b3505b2 qdisc_put +EXPORT_SYMBOL vmlinux 0x1b47624f drop_super_exclusive +EXPORT_SYMBOL vmlinux 0x1b4cd946 md_reap_sync_thread +EXPORT_SYMBOL vmlinux 0x1b6314fd in_aton +EXPORT_SYMBOL vmlinux 0x1b700d37 put_vaddr_frames +EXPORT_SYMBOL vmlinux 0x1b742bc8 neigh_carrier_down +EXPORT_SYMBOL vmlinux 0x1b777357 rdmacg_unregister_device +EXPORT_SYMBOL vmlinux 0x1b8a4088 kmem_cache_destroy +EXPORT_SYMBOL vmlinux 0x1c0fcb9a set_bh_page +EXPORT_SYMBOL vmlinux 0x1c404347 register_framebuffer +EXPORT_SYMBOL vmlinux 0x1c441cdc tcf_em_tree_dump +EXPORT_SYMBOL vmlinux 0x1c4adcca get_tree_keyed +EXPORT_SYMBOL vmlinux 0x1c560f13 insert_inode_locked +EXPORT_SYMBOL vmlinux 0x1c5a389d nla_reserve_nohdr +EXPORT_SYMBOL vmlinux 0x1c5e3878 icst525_idx2s +EXPORT_SYMBOL vmlinux 0x1c712c9c fscrypt_decrypt_block_inplace +EXPORT_SYMBOL vmlinux 0x1c777c5c dma_fence_add_callback +EXPORT_SYMBOL vmlinux 0x1c9eb4ae of_lpddr3_get_min_tck +EXPORT_SYMBOL vmlinux 0x1cb2c6d8 kvasprintf +EXPORT_SYMBOL vmlinux 0x1cb6da41 find_inode_rcu +EXPORT_SYMBOL vmlinux 0x1ce22bd4 dquot_drop +EXPORT_SYMBOL vmlinux 0x1d027e4b snd_pcm_format_signed +EXPORT_SYMBOL vmlinux 0x1d045697 dm_unregister_target +EXPORT_SYMBOL vmlinux 0x1d0f3a23 scsi_scan_target +EXPORT_SYMBOL vmlinux 0x1d13af5f set_wb_congested +EXPORT_SYMBOL vmlinux 0x1d226a7b neigh_update +EXPORT_SYMBOL vmlinux 0x1d258b48 param_set_invbool +EXPORT_SYMBOL vmlinux 0x1d2d6d15 wait_iff_congested +EXPORT_SYMBOL vmlinux 0x1d2ec20e inet_csk_reset_keepalive_timer +EXPORT_SYMBOL vmlinux 0x1d30fce1 configfs_register_group +EXPORT_SYMBOL vmlinux 0x1d37eeed ioremap +EXPORT_SYMBOL vmlinux 0x1d5f9555 frame_vector_destroy +EXPORT_SYMBOL vmlinux 0x1d66b4e5 ucc_fast_dump_regs +EXPORT_SYMBOL vmlinux 0x1d7d4fec md_error +EXPORT_SYMBOL vmlinux 0x1d7dc203 genphy_config_eee_advert +EXPORT_SYMBOL vmlinux 0x1d9b8920 mnt_set_expiry +EXPORT_SYMBOL vmlinux 0x1db33266 inode_init_owner +EXPORT_SYMBOL vmlinux 0x1db42fb6 devfreq_monitor_resume +EXPORT_SYMBOL vmlinux 0x1dc6c93b lookup_user_key +EXPORT_SYMBOL vmlinux 0x1dd571e6 fb_copy_cmap +EXPORT_SYMBOL vmlinux 0x1ddd643c flow_hash_from_keys +EXPORT_SYMBOL vmlinux 0x1de3f19a ZSTD_endStream +EXPORT_SYMBOL vmlinux 0x1de4ccb2 get_sg_io_hdr +EXPORT_SYMBOL vmlinux 0x1de67f9b qcom_scm_io_writel +EXPORT_SYMBOL vmlinux 0x1de6bad7 of_get_pci_address +EXPORT_SYMBOL vmlinux 0x1dea8e8a sound_class +EXPORT_SYMBOL vmlinux 0x1e0a0c24 mod_timer_pending +EXPORT_SYMBOL vmlinux 0x1e1205f8 genphy_resume +EXPORT_SYMBOL vmlinux 0x1e1e140e ns_to_timespec64 +EXPORT_SYMBOL vmlinux 0x1e1e81e0 notify_change +EXPORT_SYMBOL vmlinux 0x1e20b473 dst_discard_out +EXPORT_SYMBOL vmlinux 0x1e238871 rfkill_alloc +EXPORT_SYMBOL vmlinux 0x1e2899e7 snd_card_new +EXPORT_SYMBOL vmlinux 0x1e4e4975 of_find_i2c_device_by_node +EXPORT_SYMBOL vmlinux 0x1e52776a d_find_any_alias +EXPORT_SYMBOL vmlinux 0x1e5284e4 vm_get_page_prot +EXPORT_SYMBOL vmlinux 0x1e6d26a8 strstr +EXPORT_SYMBOL vmlinux 0x1e6d7eed __blkdev_issue_zeroout +EXPORT_SYMBOL vmlinux 0x1e7d3495 dcb_ieee_setapp +EXPORT_SYMBOL vmlinux 0x1e924096 _dev_notice +EXPORT_SYMBOL vmlinux 0x1e96f43d __cpu_possible_mask +EXPORT_SYMBOL vmlinux 0x1e9edfb7 seq_hlist_start_head_rcu +EXPORT_SYMBOL vmlinux 0x1eb64646 div64_s64 +EXPORT_SYMBOL vmlinux 0x1ece300c i2c_del_driver +EXPORT_SYMBOL vmlinux 0x1edb69d6 ktime_get_raw_ts64 +EXPORT_SYMBOL vmlinux 0x1f09dc52 netdev_lower_get_next_private_rcu +EXPORT_SYMBOL vmlinux 0x1f18efd0 phy_connect +EXPORT_SYMBOL vmlinux 0x1f2c37f0 ihold +EXPORT_SYMBOL vmlinux 0x1f378d8e inet_shutdown +EXPORT_SYMBOL vmlinux 0x1f3a2208 devm_get_clk_from_child +EXPORT_SYMBOL vmlinux 0x1f3a8218 snd_info_register +EXPORT_SYMBOL vmlinux 0x1f3dd35f dev_open +EXPORT_SYMBOL vmlinux 0x1f6dd92d netdev_lower_state_changed +EXPORT_SYMBOL vmlinux 0x1f7965e4 dev_mc_sync +EXPORT_SYMBOL vmlinux 0x1f7e807f kstrtoint_from_user +EXPORT_SYMBOL vmlinux 0x1f8e3ea9 tcf_classify_ingress +EXPORT_SYMBOL vmlinux 0x1fb016c7 phy_do_ioctl +EXPORT_SYMBOL vmlinux 0x1fb4ae38 pm860x_reg_write +EXPORT_SYMBOL vmlinux 0x1fbbee1b rproc_del +EXPORT_SYMBOL vmlinux 0x1fbd16da ip_tos2prio +EXPORT_SYMBOL vmlinux 0x1fc6debd mmc_can_erase +EXPORT_SYMBOL vmlinux 0x1fcd3f01 pci_request_regions +EXPORT_SYMBOL vmlinux 0x1fd07fff kdb_grepping_flag +EXPORT_SYMBOL vmlinux 0x1fe912f1 netdev_alloc_frag +EXPORT_SYMBOL vmlinux 0x1fe99d3f file_check_and_advance_wb_err +EXPORT_SYMBOL vmlinux 0x1ff0f226 mdiobus_register_device +EXPORT_SYMBOL vmlinux 0x1ff2a957 inet_csk_clear_xmit_timers +EXPORT_SYMBOL vmlinux 0x20000329 simple_strtoul +EXPORT_SYMBOL vmlinux 0x200036a3 ip_tunnel_metadata_cnt +EXPORT_SYMBOL vmlinux 0x20070ea2 _atomic_dec_and_lock_irqsave +EXPORT_SYMBOL vmlinux 0x200b2041 in6addr_any +EXPORT_SYMBOL vmlinux 0x200f8748 hash_and_copy_to_iter +EXPORT_SYMBOL vmlinux 0x202613b1 skb_clone_sk +EXPORT_SYMBOL vmlinux 0x204af5b5 netlbl_audit_start +EXPORT_SYMBOL vmlinux 0x204c19f5 tcp_alloc_md5sig_pool +EXPORT_SYMBOL vmlinux 0x204c5067 scsi_dev_info_add_list +EXPORT_SYMBOL vmlinux 0x2061b2b7 pci_bus_assign_resources +EXPORT_SYMBOL vmlinux 0x206d9eee simple_write_begin +EXPORT_SYMBOL vmlinux 0x2072b8b4 unregister_sysctl_table +EXPORT_SYMBOL vmlinux 0x2072ee9b request_threaded_irq +EXPORT_SYMBOL vmlinux 0x2078a274 netif_set_real_num_tx_queues +EXPORT_SYMBOL vmlinux 0x20846110 down_killable +EXPORT_SYMBOL vmlinux 0x208ad4ad request_firmware_nowait +EXPORT_SYMBOL vmlinux 0x208d844c mdiobus_alloc_size +EXPORT_SYMBOL vmlinux 0x20997623 ipv6_select_ident +EXPORT_SYMBOL vmlinux 0x20a789ac irq_set_chip_data +EXPORT_SYMBOL vmlinux 0x20af635a posix_acl_valid +EXPORT_SYMBOL vmlinux 0x20b5eb06 send_sig_info +EXPORT_SYMBOL vmlinux 0x20cc1752 of_parse_phandle_with_fixed_args +EXPORT_SYMBOL vmlinux 0x20d65e40 fb_find_nearest_mode +EXPORT_SYMBOL vmlinux 0x20f064a7 vfs_mkdir +EXPORT_SYMBOL vmlinux 0x20fce982 kernel_write +EXPORT_SYMBOL vmlinux 0x20fdd306 xfrm_state_flush +EXPORT_SYMBOL vmlinux 0x2104b2a9 kill_fasync +EXPORT_SYMBOL vmlinux 0x21059cd7 audit_log_task_context +EXPORT_SYMBOL vmlinux 0x210dd0f9 of_graph_get_remote_port +EXPORT_SYMBOL vmlinux 0x210ed057 ethtool_virtdev_set_link_ksettings +EXPORT_SYMBOL vmlinux 0x21110dbf mmioset +EXPORT_SYMBOL vmlinux 0x211331fa __divsi3 +EXPORT_SYMBOL vmlinux 0x212133db xps_rxqs_needed +EXPORT_SYMBOL vmlinux 0x2139a7cd mpage_writepage +EXPORT_SYMBOL vmlinux 0x213a738d memregion_alloc +EXPORT_SYMBOL vmlinux 0x213e4965 ps2_is_keyboard_id +EXPORT_SYMBOL vmlinux 0x215a8ec8 slhc_init +EXPORT_SYMBOL vmlinux 0x216a60d5 nd_region_to_nstype +EXPORT_SYMBOL vmlinux 0x216d759a mmiocpy +EXPORT_SYMBOL vmlinux 0x218e600b pci_add_resource_offset +EXPORT_SYMBOL vmlinux 0x218f3b1c blk_mq_start_stopped_hw_queues +EXPORT_SYMBOL vmlinux 0x21bdb523 errseq_check_and_advance +EXPORT_SYMBOL vmlinux 0x21be258c __nla_reserve +EXPORT_SYMBOL vmlinux 0x21be37e1 hdmi_avi_infoframe_check +EXPORT_SYMBOL vmlinux 0x21db55ad of_root +EXPORT_SYMBOL vmlinux 0x21e13cb3 inet_peer_xrlim_allow +EXPORT_SYMBOL vmlinux 0x22085d6e __blockdev_direct_IO +EXPORT_SYMBOL vmlinux 0x222e7ce2 sysfs_streq +EXPORT_SYMBOL vmlinux 0x223ce812 of_mdiobus_register +EXPORT_SYMBOL vmlinux 0x2265714d phy_ethtool_get_wol +EXPORT_SYMBOL vmlinux 0x226b50f8 get_thermal_instance +EXPORT_SYMBOL vmlinux 0x226cbbc6 console_stop +EXPORT_SYMBOL vmlinux 0x2276db98 kstrtoint +EXPORT_SYMBOL vmlinux 0x22869ee5 __kfree_skb +EXPORT_SYMBOL vmlinux 0x228ea054 ip_fraglist_init +EXPORT_SYMBOL vmlinux 0x22913148 netpoll_send_udp +EXPORT_SYMBOL vmlinux 0x22974c58 filemap_map_pages +EXPORT_SYMBOL vmlinux 0x22b325d5 kd_mksound +EXPORT_SYMBOL vmlinux 0x22b3634d flow_indr_dev_register +EXPORT_SYMBOL vmlinux 0x22bf070f _copy_from_iter +EXPORT_SYMBOL vmlinux 0x22c6310a genphy_read_status +EXPORT_SYMBOL vmlinux 0x22ccabb1 eth_platform_get_mac_address +EXPORT_SYMBOL vmlinux 0x22d892de __cgroup_bpf_run_filter_skb +EXPORT_SYMBOL vmlinux 0x22e441b1 inet_frag_find +EXPORT_SYMBOL vmlinux 0x22ed1015 __generic_file_write_iter +EXPORT_SYMBOL vmlinux 0x230290ff vfs_dedupe_file_range_one +EXPORT_SYMBOL vmlinux 0x2305c29f rdmacg_uncharge +EXPORT_SYMBOL vmlinux 0x23184522 __hw_addr_unsync_dev +EXPORT_SYMBOL vmlinux 0x232cad3c vm_insert_page +EXPORT_SYMBOL vmlinux 0x2338e152 genphy_aneg_done +EXPORT_SYMBOL vmlinux 0x235b5f1c flow_block_cb_lookup +EXPORT_SYMBOL vmlinux 0x23619cff jiffies_64 +EXPORT_SYMBOL vmlinux 0x238355dc kernel_accept +EXPORT_SYMBOL vmlinux 0x238b099f mipi_dsi_packet_format_is_short +EXPORT_SYMBOL vmlinux 0x238c37a1 xfrm_input_resume +EXPORT_SYMBOL vmlinux 0x239e5a8f of_node_put +EXPORT_SYMBOL vmlinux 0x23a2ae73 inet_del_protocol +EXPORT_SYMBOL vmlinux 0x23a5934d pcie_capability_read_dword +EXPORT_SYMBOL vmlinux 0x23a962f0 update_devfreq +EXPORT_SYMBOL vmlinux 0x23b74cbf starget_for_each_device +EXPORT_SYMBOL vmlinux 0x23b9d6e2 mangle_path +EXPORT_SYMBOL vmlinux 0x23b9e5e3 max8925_set_bits +EXPORT_SYMBOL vmlinux 0x23bbdeed _raw_read_trylock +EXPORT_SYMBOL vmlinux 0x23c96e71 fib_notifier_ops_unregister +EXPORT_SYMBOL vmlinux 0x23cef842 dma_fence_chain_init +EXPORT_SYMBOL vmlinux 0x23d39624 jbd2_journal_clear_err +EXPORT_SYMBOL vmlinux 0x23eb319b tcp_sock_set_user_timeout +EXPORT_SYMBOL vmlinux 0x23eb9c86 nvm_register_tgt_type +EXPORT_SYMBOL vmlinux 0x23ee13fd mb_cache_entry_find_first +EXPORT_SYMBOL vmlinux 0x23f9c5ce xps_needed +EXPORT_SYMBOL vmlinux 0x23fd3028 vmalloc_node +EXPORT_SYMBOL vmlinux 0x23fe0445 of_phy_register_fixed_link +EXPORT_SYMBOL vmlinux 0x240bf63f clocksource_change_rating +EXPORT_SYMBOL vmlinux 0x24212d86 __frontswap_invalidate_page +EXPORT_SYMBOL vmlinux 0x2424e4e9 sb_set_blocksize +EXPORT_SYMBOL vmlinux 0x2437a6fe napi_disable +EXPORT_SYMBOL vmlinux 0x2438f3da param_get_string +EXPORT_SYMBOL vmlinux 0x2440e8a8 scm_detach_fds +EXPORT_SYMBOL vmlinux 0x24428be5 strncpy_from_user +EXPORT_SYMBOL vmlinux 0x2456a67a phy_driver_unregister +EXPORT_SYMBOL vmlinux 0x2459bbcc console_set_on_cmdline +EXPORT_SYMBOL vmlinux 0x245abe12 handle_edge_irq +EXPORT_SYMBOL vmlinux 0x246790df idr_for_each +EXPORT_SYMBOL vmlinux 0x247313f7 scsi_get_host_dev +EXPORT_SYMBOL vmlinux 0x2473f47e dm_table_get_size +EXPORT_SYMBOL vmlinux 0x2477dae3 dev_mc_sync_multiple +EXPORT_SYMBOL vmlinux 0x247d3fac nd_btt_arena_is_valid +EXPORT_SYMBOL vmlinux 0x247decdb xp_dma_map +EXPORT_SYMBOL vmlinux 0x248577ce dqget +EXPORT_SYMBOL vmlinux 0x24875a0d snd_unregister_oss_device +EXPORT_SYMBOL vmlinux 0x2493bc8f pm860x_set_bits +EXPORT_SYMBOL vmlinux 0x2497a12d __mod_node_page_state +EXPORT_SYMBOL vmlinux 0x249b2a11 device_get_mac_address +EXPORT_SYMBOL vmlinux 0x24a94b26 snd_info_get_line +EXPORT_SYMBOL vmlinux 0x24adacef sk_stream_wait_close +EXPORT_SYMBOL vmlinux 0x24b97378 kstrtos16_from_user +EXPORT_SYMBOL vmlinux 0x24c70460 devfreq_unregister_opp_notifier +EXPORT_SYMBOL vmlinux 0x24cf2c8e pci_scan_single_device +EXPORT_SYMBOL vmlinux 0x24cf355e blk_alloc_queue +EXPORT_SYMBOL vmlinux 0x24d273d1 add_timer +EXPORT_SYMBOL vmlinux 0x24e85d41 mount_nodev +EXPORT_SYMBOL vmlinux 0x24f9a421 clk_add_alias +EXPORT_SYMBOL vmlinux 0x24fbf832 seq_open +EXPORT_SYMBOL vmlinux 0x25010f97 dcb_ieee_getapp_default_prio_mask +EXPORT_SYMBOL vmlinux 0x250113b4 memory_read_from_buffer +EXPORT_SYMBOL vmlinux 0x251fc935 tty_port_carrier_raised +EXPORT_SYMBOL vmlinux 0x252161cf __page_symlink +EXPORT_SYMBOL vmlinux 0x2523e114 snd_pcm_new +EXPORT_SYMBOL vmlinux 0x25277497 rfkill_register +EXPORT_SYMBOL vmlinux 0x2527b496 sg_miter_next +EXPORT_SYMBOL vmlinux 0x2534b2e4 blk_mq_delay_kick_requeue_list +EXPORT_SYMBOL vmlinux 0x25398e6d _dev_emerg +EXPORT_SYMBOL vmlinux 0x254122b6 snd_timer_interrupt +EXPORT_SYMBOL vmlinux 0x254d81a9 get_super_thawed +EXPORT_SYMBOL vmlinux 0x2570a138 reservation_seqcount_string +EXPORT_SYMBOL vmlinux 0x25719dce pcie_port_service_register +EXPORT_SYMBOL vmlinux 0x2571cada wireless_spy_update +EXPORT_SYMBOL vmlinux 0x257ae45c dma_fence_free +EXPORT_SYMBOL vmlinux 0x25820c64 fs_overflowuid +EXPORT_SYMBOL vmlinux 0x258d2f76 net_dim_get_tx_moderation +EXPORT_SYMBOL vmlinux 0x25a2528a skb_checksum_setup +EXPORT_SYMBOL vmlinux 0x25b6e429 tcp_v4_send_check +EXPORT_SYMBOL vmlinux 0x25bbee24 mipi_dsi_attach +EXPORT_SYMBOL vmlinux 0x25c2fb71 jbd2_journal_restart +EXPORT_SYMBOL vmlinux 0x25d126ae unregister_netdevice_notifier_net +EXPORT_SYMBOL vmlinux 0x25e43c5c security_binder_transfer_binder +EXPORT_SYMBOL vmlinux 0x25e4b559 tcp_initialize_rcv_mss +EXPORT_SYMBOL vmlinux 0x25e58a09 hdmi_avi_infoframe_init +EXPORT_SYMBOL vmlinux 0x25e78c50 __dec_zone_page_state +EXPORT_SYMBOL vmlinux 0x25e9d4bd resource_list_free +EXPORT_SYMBOL vmlinux 0x25eda87e nand_calculate_ecc +EXPORT_SYMBOL vmlinux 0x26080095 __xfrm_route_forward +EXPORT_SYMBOL vmlinux 0x260a095a __sg_alloc_table +EXPORT_SYMBOL vmlinux 0x261bc020 simple_transaction_read +EXPORT_SYMBOL vmlinux 0x2625ae26 tty_do_resize +EXPORT_SYMBOL vmlinux 0x262ac3c8 device_add_disk_no_queue_reg +EXPORT_SYMBOL vmlinux 0x263ba4af blk_queue_flag_set +EXPORT_SYMBOL vmlinux 0x263beb75 ecryptfs_get_versions +EXPORT_SYMBOL vmlinux 0x263f62c3 scsi_host_get +EXPORT_SYMBOL vmlinux 0x2648fa6f pskb_trim_rcsum_slow +EXPORT_SYMBOL vmlinux 0x264ea38f dcache_readdir +EXPORT_SYMBOL vmlinux 0x2683a11b mipi_dsi_detach +EXPORT_SYMBOL vmlinux 0x2688ec10 bitmap_zalloc +EXPORT_SYMBOL vmlinux 0x268b8ccb nvdimm_namespace_common_probe +EXPORT_SYMBOL vmlinux 0x2690e6c1 _find_next_zero_bit_le +EXPORT_SYMBOL vmlinux 0x26a369c2 dma_direct_sync_sg_for_cpu +EXPORT_SYMBOL vmlinux 0x26bb950b __kfifo_from_user_r +EXPORT_SYMBOL vmlinux 0x26c102bf fbcon_set_rotate +EXPORT_SYMBOL vmlinux 0x26c97ed3 seq_read_iter +EXPORT_SYMBOL vmlinux 0x26d24cb8 vm_event_states +EXPORT_SYMBOL vmlinux 0x26db48a6 tty_unthrottle +EXPORT_SYMBOL vmlinux 0x26f0d8ce empty_zero_page +EXPORT_SYMBOL vmlinux 0x26f5dfdf nobh_writepage +EXPORT_SYMBOL vmlinux 0x2726d05d netdev_set_num_tc +EXPORT_SYMBOL vmlinux 0x2733eaf7 scsi_dev_info_list_add_keyed +EXPORT_SYMBOL vmlinux 0x27479d14 param_free_charp +EXPORT_SYMBOL vmlinux 0x274a4f7f inet_accept +EXPORT_SYMBOL vmlinux 0x274c242a of_graph_parse_endpoint +EXPORT_SYMBOL vmlinux 0x275dfee4 ucc_slow_free +EXPORT_SYMBOL vmlinux 0x275f3d49 hdmi_vendor_infoframe_check +EXPORT_SYMBOL vmlinux 0x27622376 flow_rule_match_ipv4_addrs +EXPORT_SYMBOL vmlinux 0x27639220 blk_verify_command +EXPORT_SYMBOL vmlinux 0x276bdb6b pci_select_bars +EXPORT_SYMBOL vmlinux 0x277081b7 udp_gro_complete +EXPORT_SYMBOL vmlinux 0x27756bc8 scsi_sanitize_inquiry_string +EXPORT_SYMBOL vmlinux 0x2782b393 xfrm_state_walk_init +EXPORT_SYMBOL vmlinux 0x27864d57 memparse +EXPORT_SYMBOL vmlinux 0x27894b31 snd_dma_alloc_pages_fallback +EXPORT_SYMBOL vmlinux 0x279a0dd2 input_open_device +EXPORT_SYMBOL vmlinux 0x279f4417 __dev_getfirstbyhwtype +EXPORT_SYMBOL vmlinux 0x27a14a9b make_kgid +EXPORT_SYMBOL vmlinux 0x27b7016c proc_create_seq_private +EXPORT_SYMBOL vmlinux 0x27b9f7c8 mipi_dsi_dcs_set_page_address +EXPORT_SYMBOL vmlinux 0x27bbf221 disable_irq_nosync +EXPORT_SYMBOL vmlinux 0x27c68705 node_states +EXPORT_SYMBOL vmlinux 0x27ca94f0 nvdimm_namespace_locked +EXPORT_SYMBOL vmlinux 0x27cdca93 pci_add_resource +EXPORT_SYMBOL vmlinux 0x27dda698 key_unlink +EXPORT_SYMBOL vmlinux 0x27dfc358 sock_recv_errqueue +EXPORT_SYMBOL vmlinux 0x27ec872c config_group_init_type_name +EXPORT_SYMBOL vmlinux 0x27ef2f6a tcf_get_next_proto +EXPORT_SYMBOL vmlinux 0x27f1410c dquot_acquire +EXPORT_SYMBOL vmlinux 0x2803567e filemap_write_and_wait_range +EXPORT_SYMBOL vmlinux 0x28118cb6 __get_user_1 +EXPORT_SYMBOL vmlinux 0x281823c5 __kfifo_out_peek +EXPORT_SYMBOL vmlinux 0x281ae721 of_find_node_with_property +EXPORT_SYMBOL vmlinux 0x2823e004 no_seek_end_llseek_size +EXPORT_SYMBOL vmlinux 0x2852a08e d_drop +EXPORT_SYMBOL vmlinux 0x2861da12 netlink_set_err +EXPORT_SYMBOL vmlinux 0x2875a315 utf32_to_utf8 +EXPORT_SYMBOL vmlinux 0x2876bdce generic_update_time +EXPORT_SYMBOL vmlinux 0x28779cb7 snd_pcm_suspend_all +EXPORT_SYMBOL vmlinux 0x2878e15a idr_destroy +EXPORT_SYMBOL vmlinux 0x28894e48 security_d_instantiate +EXPORT_SYMBOL vmlinux 0x28957c01 security_inode_setsecctx +EXPORT_SYMBOL vmlinux 0x289e680f tcp_splice_read +EXPORT_SYMBOL vmlinux 0x28d8bf2c mr_vif_seq_next +EXPORT_SYMBOL vmlinux 0x28db3a02 netdev_has_upper_dev_all_rcu +EXPORT_SYMBOL vmlinux 0x28df32d2 security_binder_transfer_file +EXPORT_SYMBOL vmlinux 0x28e43491 __lock_page +EXPORT_SYMBOL vmlinux 0x28e80c37 vm_numa_stat +EXPORT_SYMBOL vmlinux 0x2913565e sock_alloc +EXPORT_SYMBOL vmlinux 0x2946da06 load_nls_default +EXPORT_SYMBOL vmlinux 0x294b9ea1 on_each_cpu +EXPORT_SYMBOL vmlinux 0x297eae71 tcp_v4_do_rcv +EXPORT_SYMBOL vmlinux 0x298ee6a5 jbd2_journal_forget +EXPORT_SYMBOL vmlinux 0x299e35bc may_umount +EXPORT_SYMBOL vmlinux 0x29a47fe9 dma_fence_wait_any_timeout +EXPORT_SYMBOL vmlinux 0x29aa0b2d dev_getfirstbyhwtype +EXPORT_SYMBOL vmlinux 0x29d9f26e cancel_delayed_work_sync +EXPORT_SYMBOL vmlinux 0x29e6f720 skb_pull +EXPORT_SYMBOL vmlinux 0x29f146ab dev_alloc_name +EXPORT_SYMBOL vmlinux 0x29f16d7b devm_register_netdev +EXPORT_SYMBOL vmlinux 0x29fade36 sock_common_setsockopt +EXPORT_SYMBOL vmlinux 0x29fb2fa8 fwnode_irq_get +EXPORT_SYMBOL vmlinux 0x2a0fd0d0 ZSTD_getCParams +EXPORT_SYMBOL vmlinux 0x2a1abfb3 set_anon_super +EXPORT_SYMBOL vmlinux 0x2a2b1722 block_invalidatepage +EXPORT_SYMBOL vmlinux 0x2a303d4d check_signature +EXPORT_SYMBOL vmlinux 0x2a3aa678 _test_and_clear_bit +EXPORT_SYMBOL vmlinux 0x2a4cb564 tcp_get_cookie_sock +EXPORT_SYMBOL vmlinux 0x2a53ca98 neigh_event_ns +EXPORT_SYMBOL vmlinux 0x2a55f7c8 unlock_buffer +EXPORT_SYMBOL vmlinux 0x2a58e21a mmc_gpio_get_cd +EXPORT_SYMBOL vmlinux 0x2a85cf4f mark_info_dirty +EXPORT_SYMBOL vmlinux 0x2a9a3905 vme_master_get +EXPORT_SYMBOL vmlinux 0x2aa0e4fc strncasecmp +EXPORT_SYMBOL vmlinux 0x2aa4dfb7 generic_iommu_put_resv_regions +EXPORT_SYMBOL vmlinux 0x2aaa5a01 genphy_suspend +EXPORT_SYMBOL vmlinux 0x2aad94e0 input_setup_polling +EXPORT_SYMBOL vmlinux 0x2abcf01c devm_of_iomap +EXPORT_SYMBOL vmlinux 0x2adc1f07 do_clone_file_range +EXPORT_SYMBOL vmlinux 0x2ae5323b fscrypt_encrypt_pagecache_blocks +EXPORT_SYMBOL vmlinux 0x2ae90832 security_unix_may_send +EXPORT_SYMBOL vmlinux 0x2aecd309 mdio_find_bus +EXPORT_SYMBOL vmlinux 0x2aef2aee __scsi_print_sense +EXPORT_SYMBOL vmlinux 0x2b00c45f flush_signals +EXPORT_SYMBOL vmlinux 0x2b01c083 of_get_compatible_child +EXPORT_SYMBOL vmlinux 0x2b16baa2 filemap_fdatawait_range_keep_errors +EXPORT_SYMBOL vmlinux 0x2b35c7c8 iw_handler_get_thrspy +EXPORT_SYMBOL vmlinux 0x2b415834 nand_monolithic_write_page_raw +EXPORT_SYMBOL vmlinux 0x2b5ab97d _raw_spin_lock_bh +EXPORT_SYMBOL vmlinux 0x2b5e4fd7 pci_save_state +EXPORT_SYMBOL vmlinux 0x2b68bd2f del_timer +EXPORT_SYMBOL vmlinux 0x2b6b2e56 sk_filter_trim_cap +EXPORT_SYMBOL vmlinux 0x2b6f23f7 pci_bus_read_config_dword +EXPORT_SYMBOL vmlinux 0x2b83dca8 kernel_connect +EXPORT_SYMBOL vmlinux 0x2b8853c5 __vfs_setxattr +EXPORT_SYMBOL vmlinux 0x2b99722a __cpu_active_mask +EXPORT_SYMBOL vmlinux 0x2b9b256c mr_mfc_find_any +EXPORT_SYMBOL vmlinux 0x2b9da7a4 genl_lock +EXPORT_SYMBOL vmlinux 0x2bb0ce03 path_is_mountpoint +EXPORT_SYMBOL vmlinux 0x2bb33077 vscnprintf +EXPORT_SYMBOL vmlinux 0x2bbee4a2 snd_jack_report +EXPORT_SYMBOL vmlinux 0x2bc40bbc ip6_fraglist_init +EXPORT_SYMBOL vmlinux 0x2bcfdcc4 fb_firmware_edid +EXPORT_SYMBOL vmlinux 0x2beb5222 snd_pcm_set_managed_buffer_all +EXPORT_SYMBOL vmlinux 0x2bff5887 xa_destroy +EXPORT_SYMBOL vmlinux 0x2c11ae1f phy_print_status +EXPORT_SYMBOL vmlinux 0x2c14323a kstrtol_from_user +EXPORT_SYMBOL vmlinux 0x2c1a2119 snd_pcm_hw_rule_noresample +EXPORT_SYMBOL vmlinux 0x2c1d39e8 param_get_ullong +EXPORT_SYMBOL vmlinux 0x2c256e1f input_scancode_to_scalar +EXPORT_SYMBOL vmlinux 0x2c3239cb blk_post_runtime_resume +EXPORT_SYMBOL vmlinux 0x2c541a1c vmf_insert_mixed_prot +EXPORT_SYMBOL vmlinux 0x2c67caed uart_get_divisor +EXPORT_SYMBOL vmlinux 0x2c6b6974 __wait_on_bit_lock +EXPORT_SYMBOL vmlinux 0x2c6f92bc simple_setattr +EXPORT_SYMBOL vmlinux 0x2c74b1d6 cdev_del +EXPORT_SYMBOL vmlinux 0x2c7c8e9a pcibios_min_mem +EXPORT_SYMBOL vmlinux 0x2c80c447 fscrypt_zeroout_range +EXPORT_SYMBOL vmlinux 0x2c81ec75 __irq_regs +EXPORT_SYMBOL vmlinux 0x2c9d3756 vsnprintf +EXPORT_SYMBOL vmlinux 0x2cc3495a skb_set_owner_w +EXPORT_SYMBOL vmlinux 0x2cc6a73c shrink_dcache_parent +EXPORT_SYMBOL vmlinux 0x2cc7c4ff file_open_root +EXPORT_SYMBOL vmlinux 0x2cd6f3a0 security_dentry_create_files_as +EXPORT_SYMBOL vmlinux 0x2ce699fb bdev_stack_limits +EXPORT_SYMBOL vmlinux 0x2ce9a414 kmem_cache_free_bulk +EXPORT_SYMBOL vmlinux 0x2cf14b15 ucc_fast_disable +EXPORT_SYMBOL vmlinux 0x2cf4c57b of_device_register +EXPORT_SYMBOL vmlinux 0x2cf83bd0 vme_dma_list_add +EXPORT_SYMBOL vmlinux 0x2cfde9a2 warn_slowpath_fmt +EXPORT_SYMBOL vmlinux 0x2d037c0c ip6_frag_init +EXPORT_SYMBOL vmlinux 0x2d13dc9b generic_cont_expand_simple +EXPORT_SYMBOL vmlinux 0x2d140a58 genl_unlock +EXPORT_SYMBOL vmlinux 0x2d25513a snd_pcm_hw_constraint_minmax +EXPORT_SYMBOL vmlinux 0x2d2851d8 __pskb_pull_tail +EXPORT_SYMBOL vmlinux 0x2d30596c from_kqid_munged +EXPORT_SYMBOL vmlinux 0x2d3385d3 system_wq +EXPORT_SYMBOL vmlinux 0x2d39b0a7 kstrdup +EXPORT_SYMBOL vmlinux 0x2d45c835 __cleancache_invalidate_inode +EXPORT_SYMBOL vmlinux 0x2d4c773a hdmi_spd_infoframe_init +EXPORT_SYMBOL vmlinux 0x2d6fcc06 __kmalloc +EXPORT_SYMBOL vmlinux 0x2d741be8 tc_setup_cb_add +EXPORT_SYMBOL vmlinux 0x2d8fc491 registered_fb +EXPORT_SYMBOL vmlinux 0x2d912bca dmi_get_bios_year +EXPORT_SYMBOL vmlinux 0x2d92ef30 netlink_kernel_release +EXPORT_SYMBOL vmlinux 0x2d994605 security_inode_copy_up_xattr +EXPORT_SYMBOL vmlinux 0x2d9c0aec of_graph_get_next_endpoint +EXPORT_SYMBOL vmlinux 0x2d9c88f4 of_phy_is_fixed_link +EXPORT_SYMBOL vmlinux 0x2da81bff _raw_spin_lock_irq +EXPORT_SYMBOL vmlinux 0x2da9ba35 netdev_unbind_sb_channel +EXPORT_SYMBOL vmlinux 0x2dd2874b pcie_port_service_unregister +EXPORT_SYMBOL vmlinux 0x2ddb5abc snd_timer_instance_new +EXPORT_SYMBOL vmlinux 0x2dec67cd _raw_write_trylock +EXPORT_SYMBOL vmlinux 0x2e1ca751 clk_put +EXPORT_SYMBOL vmlinux 0x2e1d2918 ip6_frag_next +EXPORT_SYMBOL vmlinux 0x2e2a29bb locks_delete_block +EXPORT_SYMBOL vmlinux 0x2e3122c1 sock_i_uid +EXPORT_SYMBOL vmlinux 0x2e358ed1 phy_ethtool_nway_reset +EXPORT_SYMBOL vmlinux 0x2e36aa25 genphy_check_and_restart_aneg +EXPORT_SYMBOL vmlinux 0x2e439142 drm_get_panel_orientation_quirk +EXPORT_SYMBOL vmlinux 0x2e4c03cc __sk_mem_raise_allocated +EXPORT_SYMBOL vmlinux 0x2e5fe036 __skb_ext_put +EXPORT_SYMBOL vmlinux 0x2ea48d4f nd_device_notify +EXPORT_SYMBOL vmlinux 0x2eacbe22 ZSTD_compressBlock +EXPORT_SYMBOL vmlinux 0x2eb2fc15 iunique +EXPORT_SYMBOL vmlinux 0x2eb90bac scsi_is_sdev_device +EXPORT_SYMBOL vmlinux 0x2ebc3924 vfs_getattr_nosec +EXPORT_SYMBOL vmlinux 0x2ec524ad __kfifo_in_r +EXPORT_SYMBOL vmlinux 0x2ec6bba0 errseq_set +EXPORT_SYMBOL vmlinux 0x2ecc60fb max8925_bulk_write +EXPORT_SYMBOL vmlinux 0x2eefafeb flow_block_cb_priv +EXPORT_SYMBOL vmlinux 0x2ef7fbbb eth_header +EXPORT_SYMBOL vmlinux 0x2f03fc4b security_secmark_refcount_inc +EXPORT_SYMBOL vmlinux 0x2f1a5e53 md_wakeup_thread +EXPORT_SYMBOL vmlinux 0x2f1b0d62 ZSTD_insertBlock +EXPORT_SYMBOL vmlinux 0x2f288b7f rio_query_mport +EXPORT_SYMBOL vmlinux 0x2f2e91b2 security_ib_alloc_security +EXPORT_SYMBOL vmlinux 0x2f31ec11 xp_dma_sync_for_cpu_slow +EXPORT_SYMBOL vmlinux 0x2f50cbf5 proc_doulongvec_minmax +EXPORT_SYMBOL vmlinux 0x2f50d74c set_nlink +EXPORT_SYMBOL vmlinux 0x2f519f77 netpoll_cleanup +EXPORT_SYMBOL vmlinux 0x2f57e93e pneigh_enqueue +EXPORT_SYMBOL vmlinux 0x2f5ac619 sock_gettstamp +EXPORT_SYMBOL vmlinux 0x2f5b0fdb gen_pool_alloc_algo_owner +EXPORT_SYMBOL vmlinux 0x2f5d2dcc mmc_remove_host +EXPORT_SYMBOL vmlinux 0x2f68d77b always_delete_dentry +EXPORT_SYMBOL vmlinux 0x2f6ea6d2 radix_tree_iter_resume +EXPORT_SYMBOL vmlinux 0x2f7754a8 dma_pool_free +EXPORT_SYMBOL vmlinux 0x2fa3b41c snd_ctl_rename_id +EXPORT_SYMBOL vmlinux 0x2fb6de5d add_device_randomness +EXPORT_SYMBOL vmlinux 0x2fcf89aa lookup_one_len_unlocked +EXPORT_SYMBOL vmlinux 0x2fd3c9a7 of_get_next_parent +EXPORT_SYMBOL vmlinux 0x2fe252cc unregister_inet6addr_notifier +EXPORT_SYMBOL vmlinux 0x2ff6c64a send_sig_mceerr +EXPORT_SYMBOL vmlinux 0x3007c48d __frontswap_store +EXPORT_SYMBOL vmlinux 0x301c1a00 netdev_class_remove_file_ns +EXPORT_SYMBOL vmlinux 0x301ecc03 gro_cells_receive +EXPORT_SYMBOL vmlinux 0x30275bfb __tracepoint_dma_fence_enable_signal +EXPORT_SYMBOL vmlinux 0x302779e3 filemap_fdatawait_keep_errors +EXPORT_SYMBOL vmlinux 0x3034fcdf tty_port_tty_set +EXPORT_SYMBOL vmlinux 0x3040066f make_kprojid +EXPORT_SYMBOL vmlinux 0x3067ef76 inet6_release +EXPORT_SYMBOL vmlinux 0x306ab000 writeback_inodes_sb +EXPORT_SYMBOL vmlinux 0x30745185 wait_for_completion_interruptible +EXPORT_SYMBOL vmlinux 0x307f30ec mmc_detect_card_removed +EXPORT_SYMBOL vmlinux 0x30849b81 abx500_get_chip_id +EXPORT_SYMBOL vmlinux 0x3084e0e7 blk_queue_stack_limits +EXPORT_SYMBOL vmlinux 0x308d2093 phy_validate_pause +EXPORT_SYMBOL vmlinux 0x30917d11 security_inode_init_security +EXPORT_SYMBOL vmlinux 0x3096be16 names_cachep +EXPORT_SYMBOL vmlinux 0x30a80826 __kfifo_from_user +EXPORT_SYMBOL vmlinux 0x30acfde9 hsiphash_2u32 +EXPORT_SYMBOL vmlinux 0x30c0cdfb pci_bus_type +EXPORT_SYMBOL vmlinux 0x30d8a12a tty_wait_until_sent +EXPORT_SYMBOL vmlinux 0x30d9a471 gen_pool_create +EXPORT_SYMBOL vmlinux 0x30da0c74 bio_alloc_bioset +EXPORT_SYMBOL vmlinux 0x30e74134 tty_termios_copy_hw +EXPORT_SYMBOL vmlinux 0x3102d70b frontswap_curr_pages +EXPORT_SYMBOL vmlinux 0x310547ae mr_dump +EXPORT_SYMBOL vmlinux 0x31096eee __cgroup_bpf_run_filter_sock_ops +EXPORT_SYMBOL vmlinux 0x31218c6b __register_binfmt +EXPORT_SYMBOL vmlinux 0x3126a9e8 siphash_1u64 +EXPORT_SYMBOL vmlinux 0x312d90fd iov_iter_npages +EXPORT_SYMBOL vmlinux 0x3145216f pci_dev_present +EXPORT_SYMBOL vmlinux 0x314b20c8 scnprintf +EXPORT_SYMBOL vmlinux 0x31513926 device_match_acpi_dev +EXPORT_SYMBOL vmlinux 0x315478ed set_page_dirty +EXPORT_SYMBOL vmlinux 0x31604792 bio_integrity_clone +EXPORT_SYMBOL vmlinux 0x31798ee7 udp_push_pending_frames +EXPORT_SYMBOL vmlinux 0x31891e4c utf8nagemin +EXPORT_SYMBOL vmlinux 0x31a4767f qcom_scm_hdcp_available +EXPORT_SYMBOL vmlinux 0x31a68738 pci_msix_vec_count +EXPORT_SYMBOL vmlinux 0x31a7e255 mipi_dsi_driver_unregister +EXPORT_SYMBOL vmlinux 0x31aae7f1 ptp_find_pin_unlocked +EXPORT_SYMBOL vmlinux 0x31b19700 simple_lookup +EXPORT_SYMBOL vmlinux 0x31b31f5c csum_partial_copy_nocheck +EXPORT_SYMBOL vmlinux 0x31b763b6 inet_pton_with_scope +EXPORT_SYMBOL vmlinux 0x31baac76 fscrypt_inherit_context +EXPORT_SYMBOL vmlinux 0x31bddf48 get_tree_nodev +EXPORT_SYMBOL vmlinux 0x31d6f2c1 ns_capable_setid +EXPORT_SYMBOL vmlinux 0x31f0bb78 __kmap_atomic_idx +EXPORT_SYMBOL vmlinux 0x3200e7c3 phy_remove_link_mode +EXPORT_SYMBOL vmlinux 0x320a6216 tcp_peek_len +EXPORT_SYMBOL vmlinux 0x3223bbf2 flow_block_cb_setup_simple +EXPORT_SYMBOL vmlinux 0x3232132e of_get_next_available_child +EXPORT_SYMBOL vmlinux 0x32394d4b qe_issue_cmd +EXPORT_SYMBOL vmlinux 0x32430023 _totalhigh_pages +EXPORT_SYMBOL vmlinux 0x3248a459 sock_no_sendpage +EXPORT_SYMBOL vmlinux 0x325f076f dec_zone_page_state +EXPORT_SYMBOL vmlinux 0x327441c7 dquot_quota_on +EXPORT_SYMBOL vmlinux 0x32744f55 scsi_bios_ptable +EXPORT_SYMBOL vmlinux 0x32759ddd __xfrm_decode_session +EXPORT_SYMBOL vmlinux 0x327c84bf vme_lm_attach +EXPORT_SYMBOL vmlinux 0x3281fb74 ZSTD_compress_usingDict +EXPORT_SYMBOL vmlinux 0x3283e6b0 prandom_seed_full_state +EXPORT_SYMBOL vmlinux 0x328a05f1 strncpy +EXPORT_SYMBOL vmlinux 0x32929fad __tcf_em_tree_match +EXPORT_SYMBOL vmlinux 0x32a67c61 bioset_init_from_src +EXPORT_SYMBOL vmlinux 0x32b7f6db ipv6_mc_check_mld +EXPORT_SYMBOL vmlinux 0x32c94e31 register_netdevice +EXPORT_SYMBOL vmlinux 0x32ce3777 radix_tree_preload +EXPORT_SYMBOL vmlinux 0x33029925 kill_litter_super +EXPORT_SYMBOL vmlinux 0x3346d70c free_task +EXPORT_SYMBOL vmlinux 0x339378f5 mdiobus_get_phy +EXPORT_SYMBOL vmlinux 0x33991756 vfs_get_tree +EXPORT_SYMBOL vmlinux 0x339bb096 netdev_printk +EXPORT_SYMBOL vmlinux 0x33c14978 security_sb_remount +EXPORT_SYMBOL vmlinux 0x33d27415 generic_splice_sendpage +EXPORT_SYMBOL vmlinux 0x33dbfd93 tcp_memory_allocated +EXPORT_SYMBOL vmlinux 0x33f0768c cpufreq_quick_get_max +EXPORT_SYMBOL vmlinux 0x341a16f5 xfrm_lookup +EXPORT_SYMBOL vmlinux 0x341cfcb8 register_mii_timestamper +EXPORT_SYMBOL vmlinux 0x341dbfa3 __per_cpu_offset +EXPORT_SYMBOL vmlinux 0x34211f5b sock_common_recvmsg +EXPORT_SYMBOL vmlinux 0x342c7ae6 simple_getattr +EXPORT_SYMBOL vmlinux 0x34376760 tcp_poll +EXPORT_SYMBOL vmlinux 0x3439c95a ethtool_op_get_link +EXPORT_SYMBOL vmlinux 0x3439ee46 remove_watch_from_object +EXPORT_SYMBOL vmlinux 0x34581bd4 padata_do_parallel +EXPORT_SYMBOL vmlinux 0x3467205b flow_rule_match_ipv6_addrs +EXPORT_SYMBOL vmlinux 0x3468afa4 tcp_sock_set_keepidle +EXPORT_SYMBOL vmlinux 0x347766d8 bio_advance +EXPORT_SYMBOL vmlinux 0x34865cf5 xfrm6_protocol_deregister +EXPORT_SYMBOL vmlinux 0x3488251a scsi_cmd_blk_ioctl +EXPORT_SYMBOL vmlinux 0x349b4277 xa_clear_mark +EXPORT_SYMBOL vmlinux 0x349cba85 strchr +EXPORT_SYMBOL vmlinux 0x349dd3c7 genphy_read_mmd_unsupported +EXPORT_SYMBOL vmlinux 0x349e50c6 da903x_query_status +EXPORT_SYMBOL vmlinux 0x34a04d71 radix_tree_delete_item +EXPORT_SYMBOL vmlinux 0x34c37173 vga_get +EXPORT_SYMBOL vmlinux 0x34c571aa snd_pci_quirk_lookup +EXPORT_SYMBOL vmlinux 0x34ccda95 dev_queue_xmit_accel +EXPORT_SYMBOL vmlinux 0x34f3484e security_tun_dev_attach_queue +EXPORT_SYMBOL vmlinux 0x34f702c7 vfs_llseek +EXPORT_SYMBOL vmlinux 0x34fa8092 ip6_err_gen_icmpv6_unreach +EXPORT_SYMBOL vmlinux 0x350c7f19 user_path_create +EXPORT_SYMBOL vmlinux 0x3517383e register_reboot_notifier +EXPORT_SYMBOL vmlinux 0x353e3fa5 __get_user_4 +EXPORT_SYMBOL vmlinux 0x354474c6 genphy_update_link +EXPORT_SYMBOL vmlinux 0x3545701d ZSTD_compressBound +EXPORT_SYMBOL vmlinux 0x355f57f2 vm_map_ram +EXPORT_SYMBOL vmlinux 0x3560e651 kmemdup_nul +EXPORT_SYMBOL vmlinux 0x356461c8 rtc_time64_to_tm +EXPORT_SYMBOL vmlinux 0x35696cb2 hdmi_infoframe_unpack +EXPORT_SYMBOL vmlinux 0x35864d28 ppp_register_channel +EXPORT_SYMBOL vmlinux 0x358b768e disk_end_io_acct +EXPORT_SYMBOL vmlinux 0x35a313ab sock_no_shutdown +EXPORT_SYMBOL vmlinux 0x35a88f28 zlib_inflateInit2 +EXPORT_SYMBOL vmlinux 0x35ad6995 tcp_v4_connect +EXPORT_SYMBOL vmlinux 0x35b0d581 xp_dma_unmap +EXPORT_SYMBOL vmlinux 0x35b88d70 of_match_device +EXPORT_SYMBOL vmlinux 0x35bc2609 __blk_mq_end_request +EXPORT_SYMBOL vmlinux 0x35bdc817 ZSTD_getBlockSizeMax +EXPORT_SYMBOL vmlinux 0x35d7fd5b config_item_set_name +EXPORT_SYMBOL vmlinux 0x35e9e8d6 devm_nvmem_cell_put +EXPORT_SYMBOL vmlinux 0x35ea78f5 atomic_io_modify_relaxed +EXPORT_SYMBOL vmlinux 0x3602edc4 arp_xmit +EXPORT_SYMBOL vmlinux 0x360b1afe probe_irq_mask +EXPORT_SYMBOL vmlinux 0x3612c10f tmio_core_mmc_enable +EXPORT_SYMBOL vmlinux 0x3634c69f mipi_dsi_device_register_full +EXPORT_SYMBOL vmlinux 0x363dbe0b scsi_target_quiesce +EXPORT_SYMBOL vmlinux 0x3655324b fb_find_mode +EXPORT_SYMBOL vmlinux 0x36588e6a tcp_hashinfo +EXPORT_SYMBOL vmlinux 0x365acda7 set_normalized_timespec64 +EXPORT_SYMBOL vmlinux 0x365e7911 kstrdup_const +EXPORT_SYMBOL vmlinux 0x3667aa8f pcie_set_mps +EXPORT_SYMBOL vmlinux 0x366b9928 nf_getsockopt +EXPORT_SYMBOL vmlinux 0x367727f9 block_truncate_page +EXPORT_SYMBOL vmlinux 0x3687e9dc key_instantiate_and_link +EXPORT_SYMBOL vmlinux 0x368d6555 write_cache_pages +EXPORT_SYMBOL vmlinux 0x3696522f security_inet_conn_request +EXPORT_SYMBOL vmlinux 0x369a2bcb __tracepoint_spi_transfer_stop +EXPORT_SYMBOL vmlinux 0x36d69557 ipv6_flowlabel_exclusive +EXPORT_SYMBOL vmlinux 0x36ecd195 unlock_page_memcg +EXPORT_SYMBOL vmlinux 0x36fabea4 scsi_host_put +EXPORT_SYMBOL vmlinux 0x36fb567d pm860x_reg_read +EXPORT_SYMBOL vmlinux 0x37173a2c f_setown +EXPORT_SYMBOL vmlinux 0x371d3c7a devm_register_reboot_notifier +EXPORT_SYMBOL vmlinux 0x372c4f13 set_security_override +EXPORT_SYMBOL vmlinux 0x3744cf36 vmalloc_to_pfn +EXPORT_SYMBOL vmlinux 0x3749b0df dquot_commit_info +EXPORT_SYMBOL vmlinux 0x374b47eb ZSTD_findDecompressedSize +EXPORT_SYMBOL vmlinux 0x3755f990 gf128mul_init_64k_bbe +EXPORT_SYMBOL vmlinux 0x37739932 tcp_v4_destroy_sock +EXPORT_SYMBOL vmlinux 0x377e9540 secure_tcpv6_ts_off +EXPORT_SYMBOL vmlinux 0x378f2af0 snd_info_free_entry +EXPORT_SYMBOL vmlinux 0x3796bdcc snd_pcm_format_little_endian +EXPORT_SYMBOL vmlinux 0x37a38aec ip_mc_leave_group +EXPORT_SYMBOL vmlinux 0x37a7e082 phy_ethtool_get_eee +EXPORT_SYMBOL vmlinux 0x37af3190 dm_table_run_md_queue_async +EXPORT_SYMBOL vmlinux 0x37b022f9 sg_split +EXPORT_SYMBOL vmlinux 0x37b3b990 param_get_invbool +EXPORT_SYMBOL vmlinux 0x37befc70 jiffies_to_msecs +EXPORT_SYMBOL vmlinux 0x37bfae87 path_put +EXPORT_SYMBOL vmlinux 0x37db8f19 dmi_get_date +EXPORT_SYMBOL vmlinux 0x37f614b7 __kfifo_len_r +EXPORT_SYMBOL vmlinux 0x37fc427e mmc_put_card +EXPORT_SYMBOL vmlinux 0x380f00ea rps_may_expire_flow +EXPORT_SYMBOL vmlinux 0x380f8ba4 netdev_master_upper_dev_get_rcu +EXPORT_SYMBOL vmlinux 0x381942fb blk_mq_unique_tag +EXPORT_SYMBOL vmlinux 0x381a798a setup_max_cpus +EXPORT_SYMBOL vmlinux 0x381bfd0e register_qdisc +EXPORT_SYMBOL vmlinux 0x3826bd00 snd_pcm_lib_get_vmalloc_page +EXPORT_SYMBOL vmlinux 0x3830dcea of_phy_connect +EXPORT_SYMBOL vmlinux 0x38372b28 snd_pcm_lib_free_pages +EXPORT_SYMBOL vmlinux 0x3842b3a6 unix_gc_lock +EXPORT_SYMBOL vmlinux 0x384b2803 finish_open +EXPORT_SYMBOL vmlinux 0x386d9ce9 radix_tree_lookup +EXPORT_SYMBOL vmlinux 0x3879bd1d i2c_clients_command +EXPORT_SYMBOL vmlinux 0x38869d88 kstat +EXPORT_SYMBOL vmlinux 0x3891ffc8 ecryptfs_fill_auth_tok +EXPORT_SYMBOL vmlinux 0x389acf0c gpmc_configure +EXPORT_SYMBOL vmlinux 0x389ecf9e __bswapdi2 +EXPORT_SYMBOL vmlinux 0x38a71b7e pci_free_resource_list +EXPORT_SYMBOL vmlinux 0x38a9691d pm8606_osc_enable +EXPORT_SYMBOL vmlinux 0x38a9f7c5 in6addr_loopback +EXPORT_SYMBOL vmlinux 0x38af5ec0 ppp_register_net_channel +EXPORT_SYMBOL vmlinux 0x38b7b2f5 d_tmpfile +EXPORT_SYMBOL vmlinux 0x38b85ab4 fd_install +EXPORT_SYMBOL vmlinux 0x38c309f7 flow_rule_match_tcp +EXPORT_SYMBOL vmlinux 0x38cce45c elv_rb_add +EXPORT_SYMBOL vmlinux 0x38e2dee2 ppp_register_compressor +EXPORT_SYMBOL vmlinux 0x38fbc371 register_filesystem +EXPORT_SYMBOL vmlinux 0x39179888 jbd2_journal_get_undo_access +EXPORT_SYMBOL vmlinux 0x39224aac sock_alloc_send_pskb +EXPORT_SYMBOL vmlinux 0x39323cbb sock_diag_put_filterinfo +EXPORT_SYMBOL vmlinux 0x39326ae9 dev_printk +EXPORT_SYMBOL vmlinux 0x3939f8f0 rfkill_pause_polling +EXPORT_SYMBOL vmlinux 0x3944cb44 jbd2_journal_start_reserved +EXPORT_SYMBOL vmlinux 0x39461d6a in_egroup_p +EXPORT_SYMBOL vmlinux 0x394a1e11 phy_sfp_attach +EXPORT_SYMBOL vmlinux 0x3955249f jbd2_complete_transaction +EXPORT_SYMBOL vmlinux 0x3971b4df snd_ecards_limit +EXPORT_SYMBOL vmlinux 0x398c5fd3 pci_ep_cfs_add_epc_group +EXPORT_SYMBOL vmlinux 0x3992bc63 __xa_set_mark +EXPORT_SYMBOL vmlinux 0x3993a8e9 of_mdiobus_phy_device_register +EXPORT_SYMBOL vmlinux 0x399762e1 reuseport_add_sock +EXPORT_SYMBOL vmlinux 0x39991865 icmp_global_allow +EXPORT_SYMBOL vmlinux 0x39a117f8 dquot_get_dqblk +EXPORT_SYMBOL vmlinux 0x39a12ca7 _raw_spin_unlock_irqrestore +EXPORT_SYMBOL vmlinux 0x39acd48a __destroy_inode +EXPORT_SYMBOL vmlinux 0x39b36941 dev_trans_start +EXPORT_SYMBOL vmlinux 0x39b52d19 __bitmap_and +EXPORT_SYMBOL vmlinux 0x39b549b9 unregister_fib_notifier +EXPORT_SYMBOL vmlinux 0x39b6559d tcp_time_wait +EXPORT_SYMBOL vmlinux 0x39bf9301 _snd_pcm_hw_param_setempty +EXPORT_SYMBOL vmlinux 0x39c88fd5 flush_rcu_work +EXPORT_SYMBOL vmlinux 0x39d54c10 __neigh_event_send +EXPORT_SYMBOL vmlinux 0x39dd8674 blkdev_issue_zeroout +EXPORT_SYMBOL vmlinux 0x39fd7a47 netif_skb_features +EXPORT_SYMBOL vmlinux 0x3a12fd71 netdev_port_same_parent_id +EXPORT_SYMBOL vmlinux 0x3a13f54a sgl_alloc +EXPORT_SYMBOL vmlinux 0x3a14aa43 scsi_report_opcode +EXPORT_SYMBOL vmlinux 0x3a2f6702 sg_alloc_table +EXPORT_SYMBOL vmlinux 0x3a46fd61 serio_reconnect +EXPORT_SYMBOL vmlinux 0x3a4f9d28 rng_is_initialized +EXPORT_SYMBOL vmlinux 0x3a81b622 param_get_charp +EXPORT_SYMBOL vmlinux 0x3a8c66d3 contig_page_data +EXPORT_SYMBOL vmlinux 0x3aaf816f blk_put_request +EXPORT_SYMBOL vmlinux 0x3ab7b1cc scsi_set_sense_field_pointer +EXPORT_SYMBOL vmlinux 0x3ac2402e vlan_ioctl_set +EXPORT_SYMBOL vmlinux 0x3acf1530 simple_dentry_operations +EXPORT_SYMBOL vmlinux 0x3ad464d5 security_tun_dev_attach +EXPORT_SYMBOL vmlinux 0x3ad6fd8e krait_get_l2_indirect_reg +EXPORT_SYMBOL vmlinux 0x3adf5af2 nla_reserve_64bit +EXPORT_SYMBOL vmlinux 0x3af031e2 snd_timer_notify +EXPORT_SYMBOL vmlinux 0x3af5ee2b blk_integrity_unregister +EXPORT_SYMBOL vmlinux 0x3afe319f dev_mc_unsync +EXPORT_SYMBOL vmlinux 0x3b16bd7a posix_test_lock +EXPORT_SYMBOL vmlinux 0x3b209a35 ZSTD_compressBegin +EXPORT_SYMBOL vmlinux 0x3b2563cc input_set_poll_interval +EXPORT_SYMBOL vmlinux 0x3b299067 percpu_counter_set +EXPORT_SYMBOL vmlinux 0x3b350d77 sock_no_mmap +EXPORT_SYMBOL vmlinux 0x3b3d2473 dm_get_device +EXPORT_SYMBOL vmlinux 0x3b61a588 param_set_uint +EXPORT_SYMBOL vmlinux 0x3b644591 __bitmap_shift_left +EXPORT_SYMBOL vmlinux 0x3b697738 _raw_read_lock +EXPORT_SYMBOL vmlinux 0x3b6d33f6 unlock_page +EXPORT_SYMBOL vmlinux 0x3b7e29aa simple_statfs +EXPORT_SYMBOL vmlinux 0x3b7eec57 qdisc_reset +EXPORT_SYMBOL vmlinux 0x3b81d44c writeback_inodes_sb_nr +EXPORT_SYMBOL vmlinux 0x3b9edc06 devm_pci_remap_cfg_resource +EXPORT_SYMBOL vmlinux 0x3ba78cd2 padata_stop +EXPORT_SYMBOL vmlinux 0x3bb0781c security_old_inode_init_security +EXPORT_SYMBOL vmlinux 0x3bb47aec skb_add_rx_frag +EXPORT_SYMBOL vmlinux 0x3bbf46ea vga_base +EXPORT_SYMBOL vmlinux 0x3bcb35c0 inet6_add_protocol +EXPORT_SYMBOL vmlinux 0x3be4ce56 netpoll_setup +EXPORT_SYMBOL vmlinux 0x3be7643e security_xfrm_policy_free +EXPORT_SYMBOL vmlinux 0x3c185c61 page_put_link +EXPORT_SYMBOL vmlinux 0x3c3215c4 qe_immr +EXPORT_SYMBOL vmlinux 0x3c38963f posix_acl_chmod +EXPORT_SYMBOL vmlinux 0x3c3fce39 __local_bh_enable_ip +EXPORT_SYMBOL vmlinux 0x3c3ff9fd sprintf +EXPORT_SYMBOL vmlinux 0x3c5cf86a nand_bch_correct_data +EXPORT_SYMBOL vmlinux 0x3c60315c ioremap_cache +EXPORT_SYMBOL vmlinux 0x3c728c96 generic_setlease +EXPORT_SYMBOL vmlinux 0x3c7915d4 netdev_update_features +EXPORT_SYMBOL vmlinux 0x3c7a4a24 sg_miter_stop +EXPORT_SYMBOL vmlinux 0x3c80c06c kstrtoull +EXPORT_SYMBOL vmlinux 0x3c841299 vfs_dup_fs_context +EXPORT_SYMBOL vmlinux 0x3cac3625 netdev_class_create_file_ns +EXPORT_SYMBOL vmlinux 0x3cb46eca serio_rescan +EXPORT_SYMBOL vmlinux 0x3ce4ca6f disable_irq +EXPORT_SYMBOL vmlinux 0x3ceda97c module_layout +EXPORT_SYMBOL vmlinux 0x3cf0f6ff skb_queue_tail +EXPORT_SYMBOL vmlinux 0x3cf44bf0 truncate_pagecache_range +EXPORT_SYMBOL vmlinux 0x3cfda75a kernel_sock_shutdown +EXPORT_SYMBOL vmlinux 0x3d0d6a66 tso_start +EXPORT_SYMBOL vmlinux 0x3d154e4c blk_queue_update_dma_pad +EXPORT_SYMBOL vmlinux 0x3d3c540f elf_hwcap +EXPORT_SYMBOL vmlinux 0x3d45cce5 nf_hook_slow_list +EXPORT_SYMBOL vmlinux 0x3d4df8e3 sk_send_sigurg +EXPORT_SYMBOL vmlinux 0x3d56e7b3 utf8_unload +EXPORT_SYMBOL vmlinux 0x3d934a62 input_register_device +EXPORT_SYMBOL vmlinux 0x3dae494f blk_rq_map_user_iov +EXPORT_SYMBOL vmlinux 0x3db8c88b inet_csk_reqsk_queue_add +EXPORT_SYMBOL vmlinux 0x3dcb88a0 irq_set_handler_data +EXPORT_SYMBOL vmlinux 0x3dcf1ffa __wake_up +EXPORT_SYMBOL vmlinux 0x3dd878a0 hdmi_avi_infoframe_pack_only +EXPORT_SYMBOL vmlinux 0x3df12427 phy_register_fixup_for_uid +EXPORT_SYMBOL vmlinux 0x3dfc897c seq_hlist_start_head +EXPORT_SYMBOL vmlinux 0x3e1e8778 _copy_from_iter_full +EXPORT_SYMBOL vmlinux 0x3e2b0ba6 groups_alloc +EXPORT_SYMBOL vmlinux 0x3e423216 phy_start_cable_test_tdr +EXPORT_SYMBOL vmlinux 0x3e571787 blk_dump_rq_flags +EXPORT_SYMBOL vmlinux 0x3e690099 of_clk_get +EXPORT_SYMBOL vmlinux 0x3e77a869 __skb_try_recv_datagram +EXPORT_SYMBOL vmlinux 0x3e7fbda6 xfrm6_rcv_tnl +EXPORT_SYMBOL vmlinux 0x3e9110fa __hw_addr_unsync +EXPORT_SYMBOL vmlinux 0x3ea22002 devm_backlight_device_register +EXPORT_SYMBOL vmlinux 0x3eb1b8f1 xfrm_input_register_afinfo +EXPORT_SYMBOL vmlinux 0x3ece047a pcim_iomap_regions_request_all +EXPORT_SYMBOL vmlinux 0x3ed104a5 xa_set_mark +EXPORT_SYMBOL vmlinux 0x3ef54a6c get_mm_exe_file +EXPORT_SYMBOL vmlinux 0x3efe1703 phy_unregister_fixup_for_id +EXPORT_SYMBOL vmlinux 0x3f0ea678 dma_alloc_attrs +EXPORT_SYMBOL vmlinux 0x3f1f8c06 mipi_dsi_dcs_exit_sleep_mode +EXPORT_SYMBOL vmlinux 0x3f24367f import_single_range +EXPORT_SYMBOL vmlinux 0x3f2964cd input_allocate_device +EXPORT_SYMBOL vmlinux 0x3f2da03d add_random_ready_callback +EXPORT_SYMBOL vmlinux 0x3f4547a7 put_unused_fd +EXPORT_SYMBOL vmlinux 0x3f4af46f gen_pool_first_fit_order_align +EXPORT_SYMBOL vmlinux 0x3f557466 mark_buffer_dirty +EXPORT_SYMBOL vmlinux 0x3f62d048 dma_fence_init +EXPORT_SYMBOL vmlinux 0x3f7c8f72 stream_open +EXPORT_SYMBOL vmlinux 0x3f80c59e snd_pcm_hw_constraint_ratnums +EXPORT_SYMBOL vmlinux 0x3f88c8ae refcount_dec_and_lock +EXPORT_SYMBOL vmlinux 0x3f89071b security_ib_pkey_access +EXPORT_SYMBOL vmlinux 0x3f9b4a87 mpage_readahead +EXPORT_SYMBOL vmlinux 0x3f9b9776 kmap_atomic_high_prot +EXPORT_SYMBOL vmlinux 0x3f9c4bb4 iw_handler_set_spy +EXPORT_SYMBOL vmlinux 0x3f9fe79e ilookup +EXPORT_SYMBOL vmlinux 0x3fa5510c cookie_timestamp_decode +EXPORT_SYMBOL vmlinux 0x3fb72244 of_mdiobus_child_is_phy +EXPORT_SYMBOL vmlinux 0x3fbf3c89 vme_slave_set +EXPORT_SYMBOL vmlinux 0x3fc3364c get_phy_device +EXPORT_SYMBOL vmlinux 0x3fcc0a0f md_wait_for_blocked_rdev +EXPORT_SYMBOL vmlinux 0x3fd78f3b register_chrdev_region +EXPORT_SYMBOL vmlinux 0x3fea538c hdmi_avi_infoframe_pack +EXPORT_SYMBOL vmlinux 0x400dec45 bdget +EXPORT_SYMBOL vmlinux 0x40101925 __skb_gro_checksum_complete +EXPORT_SYMBOL vmlinux 0x401d3b36 inode_init_always +EXPORT_SYMBOL vmlinux 0x402981be ipmi_platform_add +EXPORT_SYMBOL vmlinux 0x403a93e7 radix_tree_gang_lookup_tag +EXPORT_SYMBOL vmlinux 0x403ef801 pagecache_write_begin +EXPORT_SYMBOL vmlinux 0x404ebd6d netif_receive_skb +EXPORT_SYMBOL vmlinux 0x405361bf scsi_is_target_device +EXPORT_SYMBOL vmlinux 0x4054cad3 udp_poll +EXPORT_SYMBOL vmlinux 0x4059792f print_hex_dump +EXPORT_SYMBOL vmlinux 0x4065c194 neigh_seq_next +EXPORT_SYMBOL vmlinux 0x407136b1 __put_user_8 +EXPORT_SYMBOL vmlinux 0x407a3275 omap_start_dma +EXPORT_SYMBOL vmlinux 0x40950af6 __skb_free_datagram_locked +EXPORT_SYMBOL vmlinux 0x40973662 sysctl_udp_mem +EXPORT_SYMBOL vmlinux 0x409873e3 tty_termios_baud_rate +EXPORT_SYMBOL vmlinux 0x40a9b349 vzalloc +EXPORT_SYMBOL vmlinux 0x40b51c05 __sysfs_match_string +EXPORT_SYMBOL vmlinux 0x40c58cea csum_and_copy_from_iter_full +EXPORT_SYMBOL vmlinux 0x40c7247c si_meminfo +EXPORT_SYMBOL vmlinux 0x40d04664 console_trylock +EXPORT_SYMBOL vmlinux 0x40d402ad do_wait_intr +EXPORT_SYMBOL vmlinux 0x40d59096 unregister_restart_handler +EXPORT_SYMBOL vmlinux 0x40ee8c03 gnet_stats_finish_copy +EXPORT_SYMBOL vmlinux 0x40f07981 __ashldi3 +EXPORT_SYMBOL vmlinux 0x40f726e8 dcbnl_cee_notify +EXPORT_SYMBOL vmlinux 0x4110ea2f blk_mq_queue_stopped +EXPORT_SYMBOL vmlinux 0x411c1ceb skb_copy_and_hash_datagram_iter +EXPORT_SYMBOL vmlinux 0x412705ba xfrm6_input_addr +EXPORT_SYMBOL vmlinux 0x41482d8b strndup_user +EXPORT_SYMBOL vmlinux 0x414975dd __genradix_prealloc +EXPORT_SYMBOL vmlinux 0x4158709c of_find_matching_node_and_match +EXPORT_SYMBOL vmlinux 0x416d432c netif_schedule_queue +EXPORT_SYMBOL vmlinux 0x41743215 netdev_adjacent_change_abort +EXPORT_SYMBOL vmlinux 0x4179f64e generic_listxattr +EXPORT_SYMBOL vmlinux 0x417d3d40 get_mem_type +EXPORT_SYMBOL vmlinux 0x4188d439 neigh_rand_reach_time +EXPORT_SYMBOL vmlinux 0x418a05aa input_enable_softrepeat +EXPORT_SYMBOL vmlinux 0x418a5367 __scsi_format_command +EXPORT_SYMBOL vmlinux 0x41913dad tcf_em_unregister +EXPORT_SYMBOL vmlinux 0x4191f1af dm_kcopyd_copy +EXPORT_SYMBOL vmlinux 0x41bb84fc dma_fence_remove_callback +EXPORT_SYMBOL vmlinux 0x41c35238 rc5t583_ext_power_req_config +EXPORT_SYMBOL vmlinux 0x41e56a18 ZSTD_checkCParams +EXPORT_SYMBOL vmlinux 0x42140ab0 pcim_pin_device +EXPORT_SYMBOL vmlinux 0x42160169 flush_workqueue +EXPORT_SYMBOL vmlinux 0x42292ea5 scsi_dma_map +EXPORT_SYMBOL vmlinux 0x4230a8d7 sg_nents_for_len +EXPORT_SYMBOL vmlinux 0x4231ee68 cdrom_dummy_generic_packet +EXPORT_SYMBOL vmlinux 0x4244ac90 pci_dev_get +EXPORT_SYMBOL vmlinux 0x4248ae3c single_task_running +EXPORT_SYMBOL vmlinux 0x424d3620 zlib_inflateIncomp +EXPORT_SYMBOL vmlinux 0x4253aa7e down_write +EXPORT_SYMBOL vmlinux 0x4258815b xsk_umem_consume_tx_done +EXPORT_SYMBOL vmlinux 0x42604384 ucs2_strncmp +EXPORT_SYMBOL vmlinux 0x427b2cc7 vga_tryget +EXPORT_SYMBOL vmlinux 0x429813b1 pci_unregister_driver +EXPORT_SYMBOL vmlinux 0x4298b775 v7_flush_kern_cache_all +EXPORT_SYMBOL vmlinux 0x42a40b09 arm_coherent_dma_ops +EXPORT_SYMBOL vmlinux 0x42a636e7 inode_newsize_ok +EXPORT_SYMBOL vmlinux 0x42be7ca2 key_link +EXPORT_SYMBOL vmlinux 0x42db85c3 tcp_sock_set_syncnt +EXPORT_SYMBOL vmlinux 0x42f1b900 fb_pad_unaligned_buffer +EXPORT_SYMBOL vmlinux 0x4302d0eb free_pages +EXPORT_SYMBOL vmlinux 0x431010d7 dev_addr_del +EXPORT_SYMBOL vmlinux 0x431ea458 neigh_parms_alloc +EXPORT_SYMBOL vmlinux 0x432317dc qdisc_hash_del +EXPORT_SYMBOL vmlinux 0x432a3003 netif_stacked_transfer_operstate +EXPORT_SYMBOL vmlinux 0x433546a9 udp6_csum_init +EXPORT_SYMBOL vmlinux 0x4336fcca ucs2_as_utf8 +EXPORT_SYMBOL vmlinux 0x433997fd __mdiobus_register +EXPORT_SYMBOL vmlinux 0x434e8d2d inet_addr_type_table +EXPORT_SYMBOL vmlinux 0x4351577a fb_parse_edid +EXPORT_SYMBOL vmlinux 0x435238d1 skb_tx_error +EXPORT_SYMBOL vmlinux 0x4353d1a3 xfrm_lookup_route +EXPORT_SYMBOL vmlinux 0x436232b9 refresh_frequency_limits +EXPORT_SYMBOL vmlinux 0x4363adcb ip_cmsg_recv_offset +EXPORT_SYMBOL vmlinux 0x436413de remove_conflicting_pci_framebuffers +EXPORT_SYMBOL vmlinux 0x436c2ee2 tcf_idr_cleanup +EXPORT_SYMBOL vmlinux 0x4376dd09 pci_resize_resource +EXPORT_SYMBOL vmlinux 0x437a0d6d __sock_tx_timestamp +EXPORT_SYMBOL vmlinux 0x438610bd security_tun_dev_alloc_security +EXPORT_SYMBOL vmlinux 0x438b68a8 bdput +EXPORT_SYMBOL vmlinux 0x43ab1e88 pci_iounmap +EXPORT_SYMBOL vmlinux 0x43b84258 lock_page_memcg +EXPORT_SYMBOL vmlinux 0x43cf058d devm_input_allocate_device +EXPORT_SYMBOL vmlinux 0x441302b3 ip_mc_join_group +EXPORT_SYMBOL vmlinux 0x442495c9 tmio_core_mmc_resume +EXPORT_SYMBOL vmlinux 0x44366cfc simple_write_to_buffer +EXPORT_SYMBOL vmlinux 0x443cd191 dquot_initialize +EXPORT_SYMBOL vmlinux 0x443f9f06 fput +EXPORT_SYMBOL vmlinux 0x44469a76 crc_ccitt_false_table +EXPORT_SYMBOL vmlinux 0x44489ed1 md_bitmap_close_sync +EXPORT_SYMBOL vmlinux 0x444cc8ed tcp_md5_needed +EXPORT_SYMBOL vmlinux 0x444f8367 devm_of_clk_del_provider +EXPORT_SYMBOL vmlinux 0x44522309 locks_copy_lock +EXPORT_SYMBOL vmlinux 0x4462d35e cpufreq_get_hw_max_freq +EXPORT_SYMBOL vmlinux 0x44643b93 __aeabi_lmul +EXPORT_SYMBOL vmlinux 0x4465a790 mr_fill_mroute +EXPORT_SYMBOL vmlinux 0x446ca555 blk_queue_max_discard_sectors +EXPORT_SYMBOL vmlinux 0x449aae6b sync_mapping_buffers +EXPORT_SYMBOL vmlinux 0x44a6e90a irq_cpu_rmap_add +EXPORT_SYMBOL vmlinux 0x44b15e8a write_inode_now +EXPORT_SYMBOL vmlinux 0x44c9dc6c percpu_counter_destroy +EXPORT_SYMBOL vmlinux 0x44d99dfc neigh_direct_output +EXPORT_SYMBOL vmlinux 0x44da5d0f __csum_ipv6_magic +EXPORT_SYMBOL vmlinux 0x44e9a829 match_token +EXPORT_SYMBOL vmlinux 0x45006cee default_red +EXPORT_SYMBOL vmlinux 0x450d9a35 cmd_db_read_slave_id +EXPORT_SYMBOL vmlinux 0x452ba683 ipv6_ext_hdr +EXPORT_SYMBOL vmlinux 0x453c8403 pci_msi_enabled +EXPORT_SYMBOL vmlinux 0x45451392 pcix_get_max_mmrbc +EXPORT_SYMBOL vmlinux 0x454a0237 migrate_page_copy +EXPORT_SYMBOL vmlinux 0x454bd404 nvdimm_revalidate_disk +EXPORT_SYMBOL vmlinux 0x454e111c fb_set_suspend +EXPORT_SYMBOL vmlinux 0x4555676c of_graph_get_port_parent +EXPORT_SYMBOL vmlinux 0x4562a134 __tracepoint_kmem_cache_free +EXPORT_SYMBOL vmlinux 0x4578f528 __kfifo_to_user +EXPORT_SYMBOL vmlinux 0x457d7f0d mipi_dsi_dcs_soft_reset +EXPORT_SYMBOL vmlinux 0x459a73c7 dquot_quota_sync +EXPORT_SYMBOL vmlinux 0x45a8cd96 dquot_quota_on_mount +EXPORT_SYMBOL vmlinux 0x45bda0d5 system_serial_low +EXPORT_SYMBOL vmlinux 0x45c889ff netif_napi_add +EXPORT_SYMBOL vmlinux 0x45e04be4 inet_del_offload +EXPORT_SYMBOL vmlinux 0x46045dd7 kstrtou8 +EXPORT_SYMBOL vmlinux 0x461d16ca sg_nents +EXPORT_SYMBOL vmlinux 0x462a2e75 match_strlcpy +EXPORT_SYMBOL vmlinux 0x462fb97b sock_edemux +EXPORT_SYMBOL vmlinux 0x46478967 xfrm_state_lookup +EXPORT_SYMBOL vmlinux 0x464ef0aa wait_on_page_bit +EXPORT_SYMBOL vmlinux 0x465e24ff ucs2_utf8size +EXPORT_SYMBOL vmlinux 0x46607c11 pci_scan_bus +EXPORT_SYMBOL vmlinux 0x46620bc2 dma_resv_add_excl_fence +EXPORT_SYMBOL vmlinux 0x46686729 vfs_rename +EXPORT_SYMBOL vmlinux 0x466fc771 get_watch_queue +EXPORT_SYMBOL vmlinux 0x467f59d1 gro_cells_init +EXPORT_SYMBOL vmlinux 0x467fdf2f bio_add_pc_page +EXPORT_SYMBOL vmlinux 0x4688a3ce __breadahead_gfp +EXPORT_SYMBOL vmlinux 0x468a43d5 xp_alloc +EXPORT_SYMBOL vmlinux 0x469a6ec7 tcp_parse_md5sig_option +EXPORT_SYMBOL vmlinux 0x469f21c4 dcb_setapp +EXPORT_SYMBOL vmlinux 0x46a86aa1 finalize_exec +EXPORT_SYMBOL vmlinux 0x46aa9c79 generic_file_splice_read +EXPORT_SYMBOL vmlinux 0x46ba133b tty_port_close +EXPORT_SYMBOL vmlinux 0x46bfe1b0 prepare_to_wait_exclusive +EXPORT_SYMBOL vmlinux 0x46d3b28c __div0 +EXPORT_SYMBOL vmlinux 0x46d8e72f phy_start +EXPORT_SYMBOL vmlinux 0x46dc1802 __dquot_free_space +EXPORT_SYMBOL vmlinux 0x46e577df _snd_ctl_add_slave +EXPORT_SYMBOL vmlinux 0x46e6b917 inet_unregister_protosw +EXPORT_SYMBOL vmlinux 0x46e9cb7c ptp_cancel_worker_sync +EXPORT_SYMBOL vmlinux 0x46f102ad user_revoke +EXPORT_SYMBOL vmlinux 0x47085509 omap_rtc_power_off_program +EXPORT_SYMBOL vmlinux 0x471c164d __hw_addr_sync_dev +EXPORT_SYMBOL vmlinux 0x472683ee snd_device_register +EXPORT_SYMBOL vmlinux 0x4727a468 generic_delete_inode +EXPORT_SYMBOL vmlinux 0x4756260d ida_destroy +EXPORT_SYMBOL vmlinux 0x476ac754 __xfrm_state_delete +EXPORT_SYMBOL vmlinux 0x476f3ea8 eth_prepare_mac_addr_change +EXPORT_SYMBOL vmlinux 0x47709e42 free_anon_bdev +EXPORT_SYMBOL vmlinux 0x47876517 unregister_binfmt +EXPORT_SYMBOL vmlinux 0x478d9b84 ZSTD_isFrame +EXPORT_SYMBOL vmlinux 0x47939e0d __tasklet_hi_schedule +EXPORT_SYMBOL vmlinux 0x47a0cdcb mb_cache_entry_find_next +EXPORT_SYMBOL vmlinux 0x47ad6fac tcp_child_process +EXPORT_SYMBOL vmlinux 0x47b18d89 mmc_erase_group_aligned +EXPORT_SYMBOL vmlinux 0x47b2c2d5 skb_copy_bits +EXPORT_SYMBOL vmlinux 0x47b87c95 __qdisc_calculate_pkt_len +EXPORT_SYMBOL vmlinux 0x47c65bfc unregister_inet6addr_validator_notifier +EXPORT_SYMBOL vmlinux 0x47e70229 v7_flush_user_cache_range +EXPORT_SYMBOL vmlinux 0x47ee1b4a seq_put_decimal_ull +EXPORT_SYMBOL vmlinux 0x47f757de elf_platform +EXPORT_SYMBOL vmlinux 0x4812e2c2 xfrm6_find_1stfragopt +EXPORT_SYMBOL vmlinux 0x48346765 __serio_register_driver +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 0x48610c10 processor +EXPORT_SYMBOL vmlinux 0x4871d75d clk_hw_register_clkdev +EXPORT_SYMBOL vmlinux 0x487408e6 tcf_action_dump_1 +EXPORT_SYMBOL vmlinux 0x487ee240 __nla_put_nohdr +EXPORT_SYMBOL vmlinux 0x48a14d98 snd_pcm_new_stream +EXPORT_SYMBOL vmlinux 0x48a5b067 __machine_arch_type +EXPORT_SYMBOL vmlinux 0x48a91171 string_get_size +EXPORT_SYMBOL vmlinux 0x48b99a13 vme_lm_free +EXPORT_SYMBOL vmlinux 0x48bb80db hex2bin +EXPORT_SYMBOL vmlinux 0x48d53706 sock_rfree +EXPORT_SYMBOL vmlinux 0x49045426 icmp_err_convert +EXPORT_SYMBOL vmlinux 0x490fe0d6 sock_set_sndtimeo +EXPORT_SYMBOL vmlinux 0x4914d762 ptp_clock_event +EXPORT_SYMBOL vmlinux 0x491877df dma_free_attrs +EXPORT_SYMBOL vmlinux 0x491e47dd kernel_getsockname +EXPORT_SYMBOL vmlinux 0x4942bf92 nf_log_bind_pf +EXPORT_SYMBOL vmlinux 0x494fbd73 iw_handler_get_spy +EXPORT_SYMBOL vmlinux 0x4965273c twl6040_clear_bits +EXPORT_SYMBOL vmlinux 0x496a686d vfs_get_super +EXPORT_SYMBOL vmlinux 0x4980215e ether_setup +EXPORT_SYMBOL vmlinux 0x499667aa jbd2_journal_set_features +EXPORT_SYMBOL vmlinux 0x49970de8 finish_wait +EXPORT_SYMBOL vmlinux 0x499f0ecf nd_sb_checksum +EXPORT_SYMBOL vmlinux 0x49ca6fba add_watch_to_object +EXPORT_SYMBOL vmlinux 0x49d3457a cpumask_any_but +EXPORT_SYMBOL vmlinux 0x49db0def skb_queue_purge +EXPORT_SYMBOL vmlinux 0x49e855d0 scsicam_bios_param +EXPORT_SYMBOL vmlinux 0x49ebacbd _clear_bit +EXPORT_SYMBOL vmlinux 0x49f26466 kstrndup +EXPORT_SYMBOL vmlinux 0x4a020ad8 devm_free_irq +EXPORT_SYMBOL vmlinux 0x4a1d73c1 cdrom_get_last_written +EXPORT_SYMBOL vmlinux 0x4a3036b4 ptp_clock_register +EXPORT_SYMBOL vmlinux 0x4a30b2ec phy_attach_direct +EXPORT_SYMBOL vmlinux 0x4a39e5a1 omap_set_dma_src_params +EXPORT_SYMBOL vmlinux 0x4a3c1463 devm_request_any_context_irq +EXPORT_SYMBOL vmlinux 0x4a3ea5c0 snd_request_card +EXPORT_SYMBOL vmlinux 0x4a422730 simple_rename +EXPORT_SYMBOL vmlinux 0x4a443313 md_write_inc +EXPORT_SYMBOL vmlinux 0x4a4ad313 is_bad_inode +EXPORT_SYMBOL vmlinux 0x4a4e0cc0 __dynamic_ibdev_dbg +EXPORT_SYMBOL vmlinux 0x4a51c582 of_graph_get_remote_endpoint +EXPORT_SYMBOL vmlinux 0x4a96a8eb xxh32_digest +EXPORT_SYMBOL vmlinux 0x4ade8b2e kstrtou8_from_user +EXPORT_SYMBOL vmlinux 0x4ae510b1 kobject_get_unless_zero +EXPORT_SYMBOL vmlinux 0x4af4e621 i2c_smbus_write_block_data +EXPORT_SYMBOL vmlinux 0x4b06f80c pci_bus_write_config_byte +EXPORT_SYMBOL vmlinux 0x4b09b6ff dma_direct_map_sg +EXPORT_SYMBOL vmlinux 0x4b1924ca sk_wait_data +EXPORT_SYMBOL vmlinux 0x4b1ec3e2 kstrtoul_from_user +EXPORT_SYMBOL vmlinux 0x4b2a8e92 from_kgid +EXPORT_SYMBOL vmlinux 0x4b2bdeef follow_pte_pmd +EXPORT_SYMBOL vmlinux 0x4b472d98 generic_parse_monolithic +EXPORT_SYMBOL vmlinux 0x4b51935d sk_dst_check +EXPORT_SYMBOL vmlinux 0x4b5fd49e dm_kcopyd_do_callback +EXPORT_SYMBOL vmlinux 0x4b6dfac0 d_find_alias +EXPORT_SYMBOL vmlinux 0x4b916377 eth_type_trans +EXPORT_SYMBOL vmlinux 0x4bd4ac84 inet_put_port +EXPORT_SYMBOL vmlinux 0x4bdd9de3 iterate_dir +EXPORT_SYMBOL vmlinux 0x4be76dc6 dquot_set_dqinfo +EXPORT_SYMBOL vmlinux 0x4be85a03 memweight +EXPORT_SYMBOL vmlinux 0x4bef1c67 empty_name +EXPORT_SYMBOL vmlinux 0x4bf8ba8d __vfs_removexattr +EXPORT_SYMBOL vmlinux 0x4bfdcefa __memset32 +EXPORT_SYMBOL vmlinux 0x4c1cca3b cpumask_next_wrap +EXPORT_SYMBOL vmlinux 0x4c2ae700 strnstr +EXPORT_SYMBOL vmlinux 0x4c2d7fc3 would_dump +EXPORT_SYMBOL vmlinux 0x4c2e6aa6 submit_bh +EXPORT_SYMBOL vmlinux 0x4c36711a blk_integrity_register +EXPORT_SYMBOL vmlinux 0x4c38d4e0 utf8_strncasecmp_folded +EXPORT_SYMBOL vmlinux 0x4c416eb9 LZ4_decompress_fast +EXPORT_SYMBOL vmlinux 0x4c6401dd md_update_sb +EXPORT_SYMBOL vmlinux 0x4c694e47 scsi_host_busy +EXPORT_SYMBOL vmlinux 0x4c8fafcd read_cache_page_gfp +EXPORT_SYMBOL vmlinux 0x4c948f17 bio_integrity_alloc +EXPORT_SYMBOL vmlinux 0x4c9ab106 shrink_dcache_sb +EXPORT_SYMBOL vmlinux 0x4ca5e3a2 ipv6_dev_mc_inc +EXPORT_SYMBOL vmlinux 0x4cb0c9f9 seq_pad +EXPORT_SYMBOL vmlinux 0x4cba441d iwe_stream_add_event +EXPORT_SYMBOL vmlinux 0x4ccc0959 inet_select_addr +EXPORT_SYMBOL vmlinux 0x4cec642e put_cmsg_scm_timestamping +EXPORT_SYMBOL vmlinux 0x4d0d163d copy_page +EXPORT_SYMBOL vmlinux 0x4d13d6e9 mr_vif_seq_idx +EXPORT_SYMBOL vmlinux 0x4d166b67 of_node_name_eq +EXPORT_SYMBOL vmlinux 0x4d2a4b5e set_binfmt +EXPORT_SYMBOL vmlinux 0x4d2d266a skb_unlink +EXPORT_SYMBOL vmlinux 0x4d3486eb dquot_operations +EXPORT_SYMBOL vmlinux 0x4d3c153f sigprocmask +EXPORT_SYMBOL vmlinux 0x4d407667 cdc_parse_cdc_header +EXPORT_SYMBOL vmlinux 0x4d45d89e udp_memory_allocated +EXPORT_SYMBOL vmlinux 0x4d514485 xa_store +EXPORT_SYMBOL vmlinux 0x4d5ff25b devfreq_add_governor +EXPORT_SYMBOL vmlinux 0x4d633c89 mutex_lock_killable +EXPORT_SYMBOL vmlinux 0x4d634803 _raw_write_lock_irq +EXPORT_SYMBOL vmlinux 0x4d6ae35f rps_sock_flow_table +EXPORT_SYMBOL vmlinux 0x4d787ca7 simple_link +EXPORT_SYMBOL vmlinux 0x4d9b652b rb_erase +EXPORT_SYMBOL vmlinux 0x4d9b6d35 snd_pcm_format_size +EXPORT_SYMBOL vmlinux 0x4dec6038 memscan +EXPORT_SYMBOL vmlinux 0x4dedec35 vme_dma_list_free +EXPORT_SYMBOL vmlinux 0x4dee3ad2 mfd_add_devices +EXPORT_SYMBOL vmlinux 0x4df2ea84 gen_estimator_read +EXPORT_SYMBOL vmlinux 0x4e021361 locks_free_lock +EXPORT_SYMBOL vmlinux 0x4e05bdec mempool_init_node +EXPORT_SYMBOL vmlinux 0x4e10814d __alloc_disk_node +EXPORT_SYMBOL vmlinux 0x4e134646 md_check_recovery +EXPORT_SYMBOL vmlinux 0x4e2e74c1 qcom_scm_io_readl +EXPORT_SYMBOL vmlinux 0x4e3567f7 match_int +EXPORT_SYMBOL vmlinux 0x4e419045 tc6393xb_lcd_set_power +EXPORT_SYMBOL vmlinux 0x4e47309b input_close_device +EXPORT_SYMBOL vmlinux 0x4e608eab jbd2_log_wait_commit +EXPORT_SYMBOL vmlinux 0x4e68e9be rb_next_postorder +EXPORT_SYMBOL vmlinux 0x4e6e8ea7 fg_console +EXPORT_SYMBOL vmlinux 0x4ea4f89a snd_compr_free_pages +EXPORT_SYMBOL vmlinux 0x4eada8f7 security_secid_to_secctx +EXPORT_SYMBOL vmlinux 0x4eadc47f tty_port_open +EXPORT_SYMBOL vmlinux 0x4eb24b02 __devm_release_region +EXPORT_SYMBOL vmlinux 0x4eb372f1 __napi_schedule_irqoff +EXPORT_SYMBOL vmlinux 0x4ebbbc53 blk_stack_limits +EXPORT_SYMBOL vmlinux 0x4ee0e846 ZSTD_initDCtx +EXPORT_SYMBOL vmlinux 0x4ee42e6f request_firmware +EXPORT_SYMBOL vmlinux 0x4ee98ebd tcp_have_smc +EXPORT_SYMBOL vmlinux 0x4ee9f03f filemap_fdatawrite_range +EXPORT_SYMBOL vmlinux 0x4f13b3ef inetpeer_invalidate_tree +EXPORT_SYMBOL vmlinux 0x4f1cd128 security_tun_dev_create +EXPORT_SYMBOL vmlinux 0x4f1ebc1c tty_register_ldisc +EXPORT_SYMBOL vmlinux 0x4f2250ba rtc_tm_to_time64 +EXPORT_SYMBOL vmlinux 0x4f26125b init_net +EXPORT_SYMBOL vmlinux 0x4f294850 fscrypt_ioctl_set_policy +EXPORT_SYMBOL vmlinux 0x4f4d78c5 LZ4_compress_default +EXPORT_SYMBOL vmlinux 0x4f51f065 blk_integrity_merge_rq +EXPORT_SYMBOL vmlinux 0x4f65c77f ppp_input_error +EXPORT_SYMBOL vmlinux 0x4f65cadb blk_queue_bounce_limit +EXPORT_SYMBOL vmlinux 0x4f816e9b snd_pcm_format_big_endian +EXPORT_SYMBOL vmlinux 0x4f84b37f kobject_init +EXPORT_SYMBOL vmlinux 0x4f89c9de gpmc_cs_free +EXPORT_SYMBOL vmlinux 0x4fb93acb d_genocide +EXPORT_SYMBOL vmlinux 0x4fbc7c2d fget_raw +EXPORT_SYMBOL vmlinux 0x4fbd734a scsi_report_device_reset +EXPORT_SYMBOL vmlinux 0x4fc4a121 eth_gro_complete +EXPORT_SYMBOL vmlinux 0x4fe3dfe1 ip_route_me_harder +EXPORT_SYMBOL vmlinux 0x4feaca78 nvm_dev_dma_alloc +EXPORT_SYMBOL vmlinux 0x4feb72c1 of_get_next_child +EXPORT_SYMBOL vmlinux 0x4fef3ef4 completion_done +EXPORT_SYMBOL vmlinux 0x4ff9413d __blk_rq_map_sg +EXPORT_SYMBOL vmlinux 0x50097088 security_tun_dev_free_security +EXPORT_SYMBOL vmlinux 0x5009c71d glob_match +EXPORT_SYMBOL vmlinux 0x502b6647 mempool_create_node +EXPORT_SYMBOL vmlinux 0x5039f559 vm_mmap +EXPORT_SYMBOL vmlinux 0x503bd137 snd_interval_ranges +EXPORT_SYMBOL vmlinux 0x505d9d1f devm_rproc_alloc +EXPORT_SYMBOL vmlinux 0x50624917 sha1_init +EXPORT_SYMBOL vmlinux 0x506b9d2b mem_map +EXPORT_SYMBOL vmlinux 0x506dff1a __genradix_free +EXPORT_SYMBOL vmlinux 0x5076a4cd xfrm_user_policy +EXPORT_SYMBOL vmlinux 0x507bde52 kobject_get +EXPORT_SYMBOL vmlinux 0x507ea3f6 serio_close +EXPORT_SYMBOL vmlinux 0x508c938e sock_common_getsockopt +EXPORT_SYMBOL vmlinux 0x508ddee8 abx500_startup_irq_enabled +EXPORT_SYMBOL vmlinux 0x5095f6dc cros_ec_get_next_event +EXPORT_SYMBOL vmlinux 0x50a4698c fb_videomode_to_modelist +EXPORT_SYMBOL vmlinux 0x50a7e0ac remove_proc_entry +EXPORT_SYMBOL vmlinux 0x50b73ce2 rfkill_find_type +EXPORT_SYMBOL vmlinux 0x50bd9224 vfs_copy_file_range +EXPORT_SYMBOL vmlinux 0x50be748d security_ib_free_security +EXPORT_SYMBOL vmlinux 0x50d5d70e tc_setup_cb_reoffload +EXPORT_SYMBOL vmlinux 0x50d71bcf gen_pool_first_fit +EXPORT_SYMBOL vmlinux 0x50f18a40 netdev_adjacent_change_prepare +EXPORT_SYMBOL vmlinux 0x50f85302 __arm_smccc_hvc +EXPORT_SYMBOL vmlinux 0x50fd6103 dma_fence_signal +EXPORT_SYMBOL vmlinux 0x51022053 ZSTD_compressBegin_usingDict +EXPORT_SYMBOL vmlinux 0x511499fb pci_lost_interrupt +EXPORT_SYMBOL vmlinux 0x51163ed5 __page_frag_cache_drain +EXPORT_SYMBOL vmlinux 0x511746c1 dump_fpu +EXPORT_SYMBOL vmlinux 0x511951a3 md_write_end +EXPORT_SYMBOL vmlinux 0x511b12f3 elv_bio_merge_ok +EXPORT_SYMBOL vmlinux 0x51287b0e alloc_anon_inode +EXPORT_SYMBOL vmlinux 0x513b7efe vm_map_pages_zero +EXPORT_SYMBOL vmlinux 0x514a62ec dq_data_lock +EXPORT_SYMBOL vmlinux 0x514cc273 arm_copy_from_user +EXPORT_SYMBOL vmlinux 0x51554254 rproc_shutdown +EXPORT_SYMBOL vmlinux 0x515b5452 pci_bus_claim_resources +EXPORT_SYMBOL vmlinux 0x51641162 opal_unlock_from_suspend +EXPORT_SYMBOL vmlinux 0x5173f493 __genphy_config_aneg +EXPORT_SYMBOL vmlinux 0x5174b56d tcf_chain_get_by_act +EXPORT_SYMBOL vmlinux 0x517e59da kobject_set_name +EXPORT_SYMBOL vmlinux 0x518d4eeb jbd2_journal_release_jbd_inode +EXPORT_SYMBOL vmlinux 0x5198bc5c security_path_unlink +EXPORT_SYMBOL vmlinux 0x519a9075 sock_alloc_send_skb +EXPORT_SYMBOL vmlinux 0x51a0ab26 jbd2_journal_lock_updates +EXPORT_SYMBOL vmlinux 0x51acf2a5 of_graph_get_endpoint_count +EXPORT_SYMBOL vmlinux 0x51e1fa9b pci_disable_msix +EXPORT_SYMBOL vmlinux 0x51e77c97 pfn_valid +EXPORT_SYMBOL vmlinux 0x51f509be ps2_command +EXPORT_SYMBOL vmlinux 0x51fd4e88 __dev_remove_pack +EXPORT_SYMBOL vmlinux 0x5203d176 cmd_db_ready +EXPORT_SYMBOL vmlinux 0x520a0a42 mipi_dsi_dcs_set_tear_scanline +EXPORT_SYMBOL vmlinux 0x520dda55 eth_header_cache +EXPORT_SYMBOL vmlinux 0x5212e449 ptp_clock_index +EXPORT_SYMBOL vmlinux 0x52156d98 iov_iter_single_seg_count +EXPORT_SYMBOL vmlinux 0x5219843e mmc_register_driver +EXPORT_SYMBOL vmlinux 0x521b8e95 __mdiobus_write +EXPORT_SYMBOL vmlinux 0x521d0406 skb_trim +EXPORT_SYMBOL vmlinux 0x522d89f4 mr_mfc_seq_idx +EXPORT_SYMBOL vmlinux 0x523e57aa ZSTD_getDictID_fromDict +EXPORT_SYMBOL vmlinux 0x523f381c pm860x_page_reg_write +EXPORT_SYMBOL vmlinux 0x524d3115 nd_region_release_lane +EXPORT_SYMBOL vmlinux 0x528c709d simple_read_from_buffer +EXPORT_SYMBOL vmlinux 0x52d051cf blk_mq_start_request +EXPORT_SYMBOL vmlinux 0x52d717da xz_dec_init +EXPORT_SYMBOL vmlinux 0x52d8d19e _copy_from_iter_nocache +EXPORT_SYMBOL vmlinux 0x52e3e4a5 snd_pcm_hw_param_value +EXPORT_SYMBOL vmlinux 0x530b0c46 ip_ct_attach +EXPORT_SYMBOL vmlinux 0x530b1e98 pm_suspend +EXPORT_SYMBOL vmlinux 0x531470fc kmap_to_page +EXPORT_SYMBOL vmlinux 0x53332987 tcp_make_synack +EXPORT_SYMBOL vmlinux 0x533d26c6 put_disk_and_module +EXPORT_SYMBOL vmlinux 0x53463802 page_pool_release_page +EXPORT_SYMBOL vmlinux 0x536060af radix_tree_lookup_slot +EXPORT_SYMBOL vmlinux 0x5398a950 scsi_block_requests +EXPORT_SYMBOL vmlinux 0x53b09702 inet_confirm_addr +EXPORT_SYMBOL vmlinux 0x53da3739 pci_disable_msi +EXPORT_SYMBOL vmlinux 0x53f3f59b register_netdev +EXPORT_SYMBOL vmlinux 0x53f85379 ab3100_event_unregister +EXPORT_SYMBOL vmlinux 0x540c9199 no_llseek +EXPORT_SYMBOL vmlinux 0x540d3030 pci_request_selected_regions +EXPORT_SYMBOL vmlinux 0x54200a28 fbcon_set_bitops +EXPORT_SYMBOL vmlinux 0x543316d3 inet_csk_accept +EXPORT_SYMBOL vmlinux 0x543d939c key_invalidate +EXPORT_SYMBOL vmlinux 0x543ef284 seq_hlist_start +EXPORT_SYMBOL vmlinux 0x5461bb90 snd_register_device +EXPORT_SYMBOL vmlinux 0x5466ba1c textsearch_prepare +EXPORT_SYMBOL vmlinux 0x5469ff81 efi +EXPORT_SYMBOL vmlinux 0x546a8ba2 genlmsg_multicast_allns +EXPORT_SYMBOL vmlinux 0x548c0c30 cdrom_check_events +EXPORT_SYMBOL vmlinux 0x548d6fcf __i2c_transfer +EXPORT_SYMBOL vmlinux 0x548fe2cc pci_read_config_byte +EXPORT_SYMBOL vmlinux 0x549941ee blk_rq_append_bio +EXPORT_SYMBOL vmlinux 0x54a9db5f _kstrtoul +EXPORT_SYMBOL vmlinux 0x54b86882 nand_create_bbt +EXPORT_SYMBOL vmlinux 0x54e6fcdd net_enable_timestamp +EXPORT_SYMBOL vmlinux 0x5506b8f7 netlbl_bitmap_setbit +EXPORT_SYMBOL vmlinux 0x551770ba inode_get_bytes +EXPORT_SYMBOL vmlinux 0x551bd071 __rb_erase_color +EXPORT_SYMBOL vmlinux 0x5537a369 genphy_loopback +EXPORT_SYMBOL vmlinux 0x5541e7d9 bd_abort_claiming +EXPORT_SYMBOL vmlinux 0x554ae3a4 irq_poll_sched +EXPORT_SYMBOL vmlinux 0x556262c3 cros_ec_get_host_event +EXPORT_SYMBOL vmlinux 0x5568d218 generic_file_mmap +EXPORT_SYMBOL vmlinux 0x55691d5a zerocopy_sg_from_iter +EXPORT_SYMBOL vmlinux 0x557cf51e rtnl_create_link +EXPORT_SYMBOL vmlinux 0x5580fc56 fib_default_rule_add +EXPORT_SYMBOL vmlinux 0x558b281d aes_expandkey +EXPORT_SYMBOL vmlinux 0x5591299b ip_options_compile +EXPORT_SYMBOL vmlinux 0x55b8c34a flow_rule_match_enc_control +EXPORT_SYMBOL vmlinux 0x55d180c2 of_find_node_by_type +EXPORT_SYMBOL vmlinux 0x55e31703 ethtool_convert_link_mode_to_legacy_u32 +EXPORT_SYMBOL vmlinux 0x55f597ce jbd2_journal_set_triggers +EXPORT_SYMBOL vmlinux 0x560aa1f0 vfs_unlink +EXPORT_SYMBOL vmlinux 0x5635a60a vmalloc_user +EXPORT_SYMBOL vmlinux 0x563952a3 kblockd_schedule_work +EXPORT_SYMBOL vmlinux 0x5649398e inet_add_offload +EXPORT_SYMBOL vmlinux 0x564d28bd __module_get +EXPORT_SYMBOL vmlinux 0x564e31fb sock_no_listen +EXPORT_SYMBOL vmlinux 0x5661623f flow_indr_block_cb_alloc +EXPORT_SYMBOL vmlinux 0x5667a277 down_timeout +EXPORT_SYMBOL vmlinux 0x566e2b89 i2c_register_driver +EXPORT_SYMBOL vmlinux 0x566e59b1 serio_interrupt +EXPORT_SYMBOL vmlinux 0x56782775 dma_direct_sync_single_for_cpu +EXPORT_SYMBOL vmlinux 0x56802ae8 rps_cpu_mask +EXPORT_SYMBOL vmlinux 0x56843f01 cdrom_mode_sense +EXPORT_SYMBOL vmlinux 0x56aab8ef sock_set_priority +EXPORT_SYMBOL vmlinux 0x56b0aecd generic_pipe_buf_release +EXPORT_SYMBOL vmlinux 0x56b6e4cd clear_nlink +EXPORT_SYMBOL vmlinux 0x56b78252 pcim_iomap_table +EXPORT_SYMBOL vmlinux 0x56c8799d scsi_kunmap_atomic_sg +EXPORT_SYMBOL vmlinux 0x56dea4ee twl6030_mmc_card_detect +EXPORT_SYMBOL vmlinux 0x56e91042 fixed_size_llseek +EXPORT_SYMBOL vmlinux 0x571e300d vme_unregister_driver +EXPORT_SYMBOL vmlinux 0x572481e7 nf_setsockopt +EXPORT_SYMBOL vmlinux 0x57307a3c cfb_imageblit +EXPORT_SYMBOL vmlinux 0x574c2e74 bitmap_release_region +EXPORT_SYMBOL vmlinux 0x57575f08 dmaengine_put +EXPORT_SYMBOL vmlinux 0x5762b782 bio_devname +EXPORT_SYMBOL vmlinux 0x57674fd7 __sw_hweight16 +EXPORT_SYMBOL vmlinux 0x5770371b d_make_root +EXPORT_SYMBOL vmlinux 0x5784c830 skb_dequeue_tail +EXPORT_SYMBOL vmlinux 0x5788f665 d_lookup +EXPORT_SYMBOL vmlinux 0x578a1876 tun_xdp_to_ptr +EXPORT_SYMBOL vmlinux 0x579190dd in6_dev_finish_destroy +EXPORT_SYMBOL vmlinux 0x57af2a95 of_pci_range_to_resource +EXPORT_SYMBOL vmlinux 0x57b11181 dev_printk_emit +EXPORT_SYMBOL vmlinux 0x57b92374 skb_copy_header +EXPORT_SYMBOL vmlinux 0x57ceedb1 lockref_put_not_zero +EXPORT_SYMBOL vmlinux 0x57e00b95 pci_dev_put +EXPORT_SYMBOL vmlinux 0x57e143cf blk_set_queue_depth +EXPORT_SYMBOL vmlinux 0x57e5170c qcom_scm_iommu_secure_ptbl_size +EXPORT_SYMBOL vmlinux 0x57f38cdc qe_get_firmware_info +EXPORT_SYMBOL vmlinux 0x57ff23f0 ZSTD_getFrameContentSize +EXPORT_SYMBOL vmlinux 0x580407e9 pci_enable_msix_range +EXPORT_SYMBOL vmlinux 0x5818fe3c posix_acl_from_mode +EXPORT_SYMBOL vmlinux 0x581cde4e up +EXPORT_SYMBOL vmlinux 0x581f98da zlib_inflate +EXPORT_SYMBOL vmlinux 0x582279b0 invalidate_inode_buffers +EXPORT_SYMBOL vmlinux 0x582b6275 xfrm_if_unregister_cb +EXPORT_SYMBOL vmlinux 0x583752a6 capable_wrt_inode_uidgid +EXPORT_SYMBOL vmlinux 0x5838f6c9 rtc_valid_tm +EXPORT_SYMBOL vmlinux 0x584a07c6 pci_read_vpd +EXPORT_SYMBOL vmlinux 0x58516557 omap_set_dma_src_data_pack +EXPORT_SYMBOL vmlinux 0x5873d885 of_find_net_device_by_node +EXPORT_SYMBOL vmlinux 0x587b892e qe_get_num_of_risc +EXPORT_SYMBOL vmlinux 0x58853c46 vfs_ioctl +EXPORT_SYMBOL vmlinux 0x5896505a block_read_full_page +EXPORT_SYMBOL vmlinux 0x58acf24b mdiobus_register_board_info +EXPORT_SYMBOL vmlinux 0x58adb05c get_vaddr_frames +EXPORT_SYMBOL vmlinux 0x58b4645c dev_close_many +EXPORT_SYMBOL vmlinux 0x58b5a1de user_path_at_empty +EXPORT_SYMBOL vmlinux 0x58b73bc7 match_wildcard +EXPORT_SYMBOL vmlinux 0x58b7cb59 netlink_capable +EXPORT_SYMBOL vmlinux 0x58e3306d bit_wait_io +EXPORT_SYMBOL vmlinux 0x58e8d074 arp_send +EXPORT_SYMBOL vmlinux 0x58f14e08 fscrypt_ioctl_get_policy +EXPORT_SYMBOL vmlinux 0x58f4c817 ZSTD_adjustCParams +EXPORT_SYMBOL vmlinux 0x58fad869 __var_waitqueue +EXPORT_SYMBOL vmlinux 0x590ec8d7 netlink_ns_capable +EXPORT_SYMBOL vmlinux 0x59131403 ioc_lookup_icq +EXPORT_SYMBOL vmlinux 0x59138e50 flow_rule_match_enc_ports +EXPORT_SYMBOL vmlinux 0x591621ae i2c_put_adapter +EXPORT_SYMBOL vmlinux 0x591cd0a3 file_update_time +EXPORT_SYMBOL vmlinux 0x592b5bd9 tcp_sockets_allocated +EXPORT_SYMBOL vmlinux 0x59337f60 tty_driver_kref_put +EXPORT_SYMBOL vmlinux 0x5942cbec xfrm_policy_byid +EXPORT_SYMBOL vmlinux 0x594bf15b ioport_map +EXPORT_SYMBOL vmlinux 0x594e1317 __modsi3 +EXPORT_SYMBOL vmlinux 0x594f6923 mmc_alloc_host +EXPORT_SYMBOL vmlinux 0x59588850 vsscanf +EXPORT_SYMBOL vmlinux 0x596992be scsi_print_command +EXPORT_SYMBOL vmlinux 0x5975f32e file_modified +EXPORT_SYMBOL vmlinux 0x59864461 current_in_userns +EXPORT_SYMBOL vmlinux 0x598d918f xfrm_state_delete_tunnel +EXPORT_SYMBOL vmlinux 0x598e7ce6 skb_clone +EXPORT_SYMBOL vmlinux 0x59912f91 kernel_sendpage_locked +EXPORT_SYMBOL vmlinux 0x599af782 snd_pcm_period_elapsed +EXPORT_SYMBOL vmlinux 0x599b4888 qe_setbrg +EXPORT_SYMBOL vmlinux 0x59a94b37 sg_miter_skip +EXPORT_SYMBOL vmlinux 0x59ad438e get_acl +EXPORT_SYMBOL vmlinux 0x59b7cab6 mempool_resize +EXPORT_SYMBOL vmlinux 0x59c105e1 ipv6_chk_custom_prefix +EXPORT_SYMBOL vmlinux 0x59c78dbf copy_string_kernel +EXPORT_SYMBOL vmlinux 0x59ce0e40 pci_pme_capable +EXPORT_SYMBOL vmlinux 0x59d29dab v7_flush_kern_dcache_area +EXPORT_SYMBOL vmlinux 0x59d788b5 kernel_sendmsg +EXPORT_SYMBOL vmlinux 0x59da4432 devm_clk_get +EXPORT_SYMBOL vmlinux 0x59e1dafb pps_event +EXPORT_SYMBOL vmlinux 0x59e5070d __do_div64 +EXPORT_SYMBOL vmlinux 0x59efbc41 mr_mfc_find_any_parent +EXPORT_SYMBOL vmlinux 0x5a0b73d0 zlib_deflateInit2 +EXPORT_SYMBOL vmlinux 0x5a11f0e9 phy_attached_info_irq +EXPORT_SYMBOL vmlinux 0x5a14de15 radix_tree_insert +EXPORT_SYMBOL vmlinux 0x5a24a7b1 vme_bus_error_handler +EXPORT_SYMBOL vmlinux 0x5a4d313e gf128mul_4k_lle +EXPORT_SYMBOL vmlinux 0x5a577c91 inode_owner_or_capable +EXPORT_SYMBOL vmlinux 0x5a64aac5 i2c_get_adapter +EXPORT_SYMBOL vmlinux 0x5a98332f ip_defrag +EXPORT_SYMBOL vmlinux 0x5a99fc2c jbd2_journal_destroy +EXPORT_SYMBOL vmlinux 0x5a9a0f4d dst_dev_put +EXPORT_SYMBOL vmlinux 0x5aadc405 vfs_ioc_fssetxattr_check +EXPORT_SYMBOL vmlinux 0x5acf62a8 sk_mc_loop +EXPORT_SYMBOL vmlinux 0x5ad10fd1 of_find_mipi_dsi_device_by_node +EXPORT_SYMBOL vmlinux 0x5affe966 xfrm_state_add +EXPORT_SYMBOL vmlinux 0x5b062284 gen_pool_fixed_alloc +EXPORT_SYMBOL vmlinux 0x5b113f22 unregister_md_personality +EXPORT_SYMBOL vmlinux 0x5b23eed7 __napi_alloc_skb +EXPORT_SYMBOL vmlinux 0x5b36a11d phy_driver_register +EXPORT_SYMBOL vmlinux 0x5b36d5dd utf8agemax +EXPORT_SYMBOL vmlinux 0x5b52eb35 pci_bus_read_config_byte +EXPORT_SYMBOL vmlinux 0x5b54903b qcom_scm_pas_mem_setup +EXPORT_SYMBOL vmlinux 0x5b88b567 inet6_getname +EXPORT_SYMBOL vmlinux 0x5badbb78 string_escape_mem_ascii +EXPORT_SYMBOL vmlinux 0x5bb791e0 page_symlink_inode_operations +EXPORT_SYMBOL vmlinux 0x5bbe49f4 __init_waitqueue_head +EXPORT_SYMBOL vmlinux 0x5bc92e85 LZ4_compress_destSize +EXPORT_SYMBOL vmlinux 0x5bcee0f4 zap_page_range +EXPORT_SYMBOL vmlinux 0x5bd4ff88 flow_action_cookie_create +EXPORT_SYMBOL vmlinux 0x5bd638da sock_from_file +EXPORT_SYMBOL vmlinux 0x5be24e40 stop_tty +EXPORT_SYMBOL vmlinux 0x5be63c5b crc32c_csum_stub +EXPORT_SYMBOL vmlinux 0x5bec17da __cleancache_get_page +EXPORT_SYMBOL vmlinux 0x5bf3dd2e kobject_del +EXPORT_SYMBOL vmlinux 0x5bf7f981 save_stack_trace_tsk +EXPORT_SYMBOL vmlinux 0x5bfe047d pin_user_pages_remote +EXPORT_SYMBOL vmlinux 0x5c3a1d43 kill_block_super +EXPORT_SYMBOL vmlinux 0x5c3b2e9a xfrm_find_acq_byseq +EXPORT_SYMBOL vmlinux 0x5c4265f6 blk_unregister_region +EXPORT_SYMBOL vmlinux 0x5c716976 hdmi_audio_infoframe_pack_only +EXPORT_SYMBOL vmlinux 0x5c75a92c seg6_hmac_info_lookup +EXPORT_SYMBOL vmlinux 0x5c7f0f4d security_socket_socketpair +EXPORT_SYMBOL vmlinux 0x5c7f1284 int_sqrt64 +EXPORT_SYMBOL vmlinux 0x5c9284a0 processor_id +EXPORT_SYMBOL vmlinux 0x5cbd8e69 __crc32c_le +EXPORT_SYMBOL vmlinux 0x5cc47949 dma_cache_sync +EXPORT_SYMBOL vmlinux 0x5ce9a942 hdmi_infoframe_pack_only +EXPORT_SYMBOL vmlinux 0x5cf53ce2 input_free_minor +EXPORT_SYMBOL vmlinux 0x5d0a438e blk_mq_stop_hw_queue +EXPORT_SYMBOL vmlinux 0x5d249d9d hdmi_drm_infoframe_pack +EXPORT_SYMBOL vmlinux 0x5d327694 mipi_dsi_host_unregister +EXPORT_SYMBOL vmlinux 0x5d37d658 dim_park_tired +EXPORT_SYMBOL vmlinux 0x5d45d9aa try_to_release_page +EXPORT_SYMBOL vmlinux 0x5d49aabc init_wait_var_entry +EXPORT_SYMBOL vmlinux 0x5d56f1a1 inet_csk_init_xmit_timers +EXPORT_SYMBOL vmlinux 0x5d5fabea tcf_em_tree_validate +EXPORT_SYMBOL vmlinux 0x5d810f97 kstrtou16_from_user +EXPORT_SYMBOL vmlinux 0x5d830297 get_random_bytes_arch +EXPORT_SYMBOL vmlinux 0x5d8b8c0c __sk_queue_drop_skb +EXPORT_SYMBOL vmlinux 0x5d9858d0 __skb_gso_segment +EXPORT_SYMBOL vmlinux 0x5daddf50 rproc_vq_interrupt +EXPORT_SYMBOL vmlinux 0x5db05ee8 xp_dma_sync_for_device_slow +EXPORT_SYMBOL vmlinux 0x5dc2d6f0 __dev_get_by_index +EXPORT_SYMBOL vmlinux 0x5dcf6341 outer_cache +EXPORT_SYMBOL vmlinux 0x5dd51aef lock_two_nondirectories +EXPORT_SYMBOL vmlinux 0x5dd5bae2 secpath_set +EXPORT_SYMBOL vmlinux 0x5de5cca2 utf8_normalize +EXPORT_SYMBOL vmlinux 0x5decfc45 neigh_table_init +EXPORT_SYMBOL vmlinux 0x5e029e1f _dev_crit +EXPORT_SYMBOL vmlinux 0x5e05ecb7 pagecache_get_page +EXPORT_SYMBOL vmlinux 0x5e0a7989 dquot_set_dqblk +EXPORT_SYMBOL vmlinux 0x5e0ccb9f sha1_transform +EXPORT_SYMBOL vmlinux 0x5e335d5a fscrypt_put_encryption_info +EXPORT_SYMBOL vmlinux 0x5e354480 blackhole_netdev +EXPORT_SYMBOL vmlinux 0x5e373fb4 gf128mul_64k_bbe +EXPORT_SYMBOL vmlinux 0x5e38edb0 ip6tun_encaps +EXPORT_SYMBOL vmlinux 0x5e631405 mmc_gpio_get_ro +EXPORT_SYMBOL vmlinux 0x5e6e3254 pci_enable_ptm +EXPORT_SYMBOL vmlinux 0x5e7f4920 snd_pcm_format_set_silence +EXPORT_SYMBOL vmlinux 0x5e814b88 get_super +EXPORT_SYMBOL vmlinux 0x5e866d85 prandom_bytes +EXPORT_SYMBOL vmlinux 0x5e8771c4 config_item_get +EXPORT_SYMBOL vmlinux 0x5e95b1cd current_umask +EXPORT_SYMBOL vmlinux 0x5e9f24bd dev_pm_opp_unregister_notifier +EXPORT_SYMBOL vmlinux 0x5ea0a262 mipi_dsi_compression_mode +EXPORT_SYMBOL vmlinux 0x5eb24829 dm_shift_arg +EXPORT_SYMBOL vmlinux 0x5ec4aee6 put_sg_io_hdr +EXPORT_SYMBOL vmlinux 0x5ecbea47 crypto_sha1_update +EXPORT_SYMBOL vmlinux 0x5ecf8c71 simple_rmdir +EXPORT_SYMBOL vmlinux 0x5ed040b0 pm_set_vt_switch +EXPORT_SYMBOL vmlinux 0x5ed05bf6 hdmi_audio_infoframe_pack +EXPORT_SYMBOL vmlinux 0x5ed307c0 skb_headers_offset_update +EXPORT_SYMBOL vmlinux 0x5ed90adc int_to_scsilun +EXPORT_SYMBOL vmlinux 0x5ee16721 flow_get_u32_src +EXPORT_SYMBOL vmlinux 0x5ee8a3b2 devm_backlight_device_unregister +EXPORT_SYMBOL vmlinux 0x5f098b2a in6addr_interfacelocal_allrouters +EXPORT_SYMBOL vmlinux 0x5f19587e consume_skb +EXPORT_SYMBOL vmlinux 0x5f4413e0 xfrm_state_walk +EXPORT_SYMBOL vmlinux 0x5f6b889c rproc_va_to_pa +EXPORT_SYMBOL vmlinux 0x5f6d2a43 ata_scsi_cmd_error_handler +EXPORT_SYMBOL vmlinux 0x5f754e5a memset +EXPORT_SYMBOL vmlinux 0x5f7bf8aa __sk_mem_schedule +EXPORT_SYMBOL vmlinux 0x5f849a69 _raw_spin_lock_irqsave +EXPORT_SYMBOL vmlinux 0x5f8d72a9 audit_log +EXPORT_SYMBOL vmlinux 0x5fa240b0 netlink_ack +EXPORT_SYMBOL vmlinux 0x5fa2a099 tcp_md5_do_del +EXPORT_SYMBOL vmlinux 0x5fa8fba9 mdio_device_free +EXPORT_SYMBOL vmlinux 0x5faa1d90 add_to_page_cache_locked +EXPORT_SYMBOL vmlinux 0x5fb01358 alloc_pages_exact +EXPORT_SYMBOL vmlinux 0x5fb6f3e4 kernel_sendmsg_locked +EXPORT_SYMBOL vmlinux 0x5fb87cde tty_write_room +EXPORT_SYMBOL vmlinux 0x5fbd6542 inet6_ioctl +EXPORT_SYMBOL vmlinux 0x5fc2799e inet_sendpage +EXPORT_SYMBOL vmlinux 0x5fc8cd49 __dquot_alloc_space +EXPORT_SYMBOL vmlinux 0x5fdb9237 pcie_get_width_cap +EXPORT_SYMBOL vmlinux 0x5fea1193 devm_clk_get_optional +EXPORT_SYMBOL vmlinux 0x5feba5d1 pci_request_regions_exclusive +EXPORT_SYMBOL vmlinux 0x5ff11cc3 pcibios_min_io +EXPORT_SYMBOL vmlinux 0x5ffd23ac tc_setup_flow_action +EXPORT_SYMBOL vmlinux 0x6004858d LZ4_compress_fast +EXPORT_SYMBOL vmlinux 0x6005c351 zpool_has_pool +EXPORT_SYMBOL vmlinux 0x600683d3 do_unblank_screen +EXPORT_SYMBOL vmlinux 0x6012ccea generic_pipe_buf_get +EXPORT_SYMBOL vmlinux 0x601896cd rproc_alloc +EXPORT_SYMBOL vmlinux 0x601f665f dm_io_client_create +EXPORT_SYMBOL vmlinux 0x602c96f0 copy_to_user_fromio +EXPORT_SYMBOL vmlinux 0x602dfd4d __ip4_datagram_connect +EXPORT_SYMBOL vmlinux 0x60303f8c tty_register_driver +EXPORT_SYMBOL vmlinux 0x603286b8 utf8_casefold +EXPORT_SYMBOL vmlinux 0x60351b98 __nla_validate +EXPORT_SYMBOL vmlinux 0x60352082 register_inet6addr_notifier +EXPORT_SYMBOL vmlinux 0x6040f529 read_code +EXPORT_SYMBOL vmlinux 0x604d2654 seg6_hmac_validate_skb +EXPORT_SYMBOL vmlinux 0x605790dc fiemap_fill_next_extent +EXPORT_SYMBOL vmlinux 0x605bfa2d sock_no_bind +EXPORT_SYMBOL vmlinux 0x60746a0f mmc_hw_reset +EXPORT_SYMBOL vmlinux 0x608b0dc4 fbcon_rotate_ud +EXPORT_SYMBOL vmlinux 0x6091b333 unregister_chrdev_region +EXPORT_SYMBOL vmlinux 0x609bcd98 in6_pton +EXPORT_SYMBOL vmlinux 0x609f1c7e synchronize_net +EXPORT_SYMBOL vmlinux 0x60a32ea9 pm_power_off +EXPORT_SYMBOL vmlinux 0x60bcc0b6 tcp_sock_set_keepcnt +EXPORT_SYMBOL vmlinux 0x60bffe6d div64_u64 +EXPORT_SYMBOL vmlinux 0x60c2492c tty_unregister_driver +EXPORT_SYMBOL vmlinux 0x60c7d842 tcp_init_sock +EXPORT_SYMBOL vmlinux 0x60d87caf prepare_kernel_cred +EXPORT_SYMBOL vmlinux 0x60d8ab30 vme_lm_get +EXPORT_SYMBOL vmlinux 0x60f93606 PDE_DATA +EXPORT_SYMBOL vmlinux 0x6120df73 input_set_timestamp +EXPORT_SYMBOL vmlinux 0x6121bd54 dql_init +EXPORT_SYMBOL vmlinux 0x6128b5fc __printk_ratelimit +EXPORT_SYMBOL vmlinux 0x6130fd6e jbd2_journal_force_commit_nested +EXPORT_SYMBOL vmlinux 0x61449e56 neigh_sysctl_unregister +EXPORT_SYMBOL vmlinux 0x6156c7f4 net_dim +EXPORT_SYMBOL vmlinux 0x615911d7 __bitmap_set +EXPORT_SYMBOL vmlinux 0x615bb82f cred_fscmp +EXPORT_SYMBOL vmlinux 0x617421db tty_set_operations +EXPORT_SYMBOL vmlinux 0x61830360 devfreq_resume_device +EXPORT_SYMBOL vmlinux 0x619ea5e0 nobh_truncate_page +EXPORT_SYMBOL vmlinux 0x61a9b4d0 iterate_supers_type +EXPORT_SYMBOL vmlinux 0x61ab8a61 rtc_add_group +EXPORT_SYMBOL vmlinux 0x61ab9c45 revalidate_disk +EXPORT_SYMBOL vmlinux 0x61ad30f0 filemap_page_mkwrite +EXPORT_SYMBOL vmlinux 0x61b52d08 scsi_eh_finish_cmd +EXPORT_SYMBOL vmlinux 0x61b76bb9 smp_call_function_many +EXPORT_SYMBOL vmlinux 0x61b7b126 simple_strtoull +EXPORT_SYMBOL vmlinux 0x61b8d1cc param_ops_bint +EXPORT_SYMBOL vmlinux 0x61bdbd3f pci_enable_wake +EXPORT_SYMBOL vmlinux 0x61c76b3a proc_dointvec_jiffies +EXPORT_SYMBOL vmlinux 0x61d121bf pci_write_config_word +EXPORT_SYMBOL vmlinux 0x61e272c9 sha256_final +EXPORT_SYMBOL vmlinux 0x61ea189b fb_pad_aligned_buffer +EXPORT_SYMBOL vmlinux 0x62040553 pci_scan_root_bus_bridge +EXPORT_SYMBOL vmlinux 0x620b8452 tcf_register_action +EXPORT_SYMBOL vmlinux 0x6214aef2 cpufreq_unregister_notifier +EXPORT_SYMBOL vmlinux 0x6228c21f smp_call_function_single +EXPORT_SYMBOL vmlinux 0x6241407b dev_graft_qdisc +EXPORT_SYMBOL vmlinux 0x625434d2 get_cached_acl_rcu +EXPORT_SYMBOL vmlinux 0x62572daa __vlan_find_dev_deep_rcu +EXPORT_SYMBOL vmlinux 0x625c6eb6 security_sk_clone +EXPORT_SYMBOL vmlinux 0x62668304 iov_iter_get_pages +EXPORT_SYMBOL vmlinux 0x626a31e3 thaw_super +EXPORT_SYMBOL vmlinux 0x62737e1d sock_unregister +EXPORT_SYMBOL vmlinux 0x6278022a phy_ethtool_ksettings_get +EXPORT_SYMBOL vmlinux 0x627d4340 hdmi_drm_infoframe_pack_only +EXPORT_SYMBOL vmlinux 0x62849ac7 dev_valid_name +EXPORT_SYMBOL vmlinux 0x6288dea9 mdiobus_write +EXPORT_SYMBOL vmlinux 0x6291a99d dma_resv_init +EXPORT_SYMBOL vmlinux 0x62a3af74 iget_locked +EXPORT_SYMBOL vmlinux 0x62b3adc9 pci_dev_driver +EXPORT_SYMBOL vmlinux 0x62bba2d1 skb_udp_tunnel_segment +EXPORT_SYMBOL vmlinux 0x62bcc78d seq_puts +EXPORT_SYMBOL vmlinux 0x62bf6edf utf8agemin +EXPORT_SYMBOL vmlinux 0x62f576d9 trace_seq_hex_dump +EXPORT_SYMBOL vmlinux 0x62f5ea98 generic_perform_write +EXPORT_SYMBOL vmlinux 0x6302bce5 textsearch_register +EXPORT_SYMBOL vmlinux 0x63086464 mdio_device_create +EXPORT_SYMBOL vmlinux 0x630cec25 page_cache_prev_miss +EXPORT_SYMBOL vmlinux 0x630f2cb8 _raw_read_lock_irqsave +EXPORT_SYMBOL vmlinux 0x63123c11 md_handle_request +EXPORT_SYMBOL vmlinux 0x63187451 pcie_aspm_support_enabled +EXPORT_SYMBOL vmlinux 0x631d06aa cpu_rmap_put +EXPORT_SYMBOL vmlinux 0x63230633 ZSTD_initCStream +EXPORT_SYMBOL vmlinux 0x632ba660 tcf_classify +EXPORT_SYMBOL vmlinux 0x632e5311 unlock_two_nondirectories +EXPORT_SYMBOL vmlinux 0x6334bac4 pci_find_next_bus +EXPORT_SYMBOL vmlinux 0x6342f99f mipi_dsi_create_packet +EXPORT_SYMBOL vmlinux 0x635c36a9 tcp_openreq_init_rwin +EXPORT_SYMBOL vmlinux 0x635ff76d LZ4_saveDict +EXPORT_SYMBOL vmlinux 0x63633e8f pcie_bandwidth_available +EXPORT_SYMBOL vmlinux 0x637d1029 iov_iter_discard +EXPORT_SYMBOL vmlinux 0x6390b1ae input_set_min_poll_interval +EXPORT_SYMBOL vmlinux 0x63a0f2c8 page_pool_put_page +EXPORT_SYMBOL vmlinux 0x63a58370 flow_action_cookie_destroy +EXPORT_SYMBOL vmlinux 0x63a7c28c bitmap_find_free_region +EXPORT_SYMBOL vmlinux 0x63bd6e9e seq_read +EXPORT_SYMBOL vmlinux 0x63c4d61f __bitmap_weight +EXPORT_SYMBOL vmlinux 0x63ca4474 blkdev_fsync +EXPORT_SYMBOL vmlinux 0x63ceeb28 sk_alloc +EXPORT_SYMBOL vmlinux 0x63d4f2b0 tc_setup_cb_replace +EXPORT_SYMBOL vmlinux 0x63eb9355 panic_blink +EXPORT_SYMBOL vmlinux 0x6405dcd3 slhc_toss +EXPORT_SYMBOL vmlinux 0x641008eb max8998_bulk_read +EXPORT_SYMBOL vmlinux 0x64127b67 bitmap_find_next_zero_area_off +EXPORT_SYMBOL vmlinux 0x641750a1 padata_set_cpumask +EXPORT_SYMBOL vmlinux 0x641a52c8 set_cached_acl +EXPORT_SYMBOL vmlinux 0x6423b24c simple_symlink_inode_operations +EXPORT_SYMBOL vmlinux 0x643d9ba1 groups_free +EXPORT_SYMBOL vmlinux 0x6442ed1a pci_set_power_state +EXPORT_SYMBOL vmlinux 0x6443babd ZSTD_compressContinue +EXPORT_SYMBOL vmlinux 0x6450953b remap_vmalloc_range_partial +EXPORT_SYMBOL vmlinux 0x645bb838 udp_lib_get_port +EXPORT_SYMBOL vmlinux 0x6460fe60 skb_ensure_writable +EXPORT_SYMBOL vmlinux 0x64670a8d neigh_connected_output +EXPORT_SYMBOL vmlinux 0x646da3ee mmc_gpio_set_cd_wake +EXPORT_SYMBOL vmlinux 0x6470e898 tty_port_raise_dtr_rts +EXPORT_SYMBOL vmlinux 0x6478d2fe page_mapped +EXPORT_SYMBOL vmlinux 0x647af474 prepare_to_wait_event +EXPORT_SYMBOL vmlinux 0x648184ee dst_init +EXPORT_SYMBOL vmlinux 0x6481ffe0 hsiphash_1u32 +EXPORT_SYMBOL vmlinux 0x64830d5a of_get_parent +EXPORT_SYMBOL vmlinux 0x648eb59d gc_inflight_list +EXPORT_SYMBOL vmlinux 0x64999478 congestion_wait +EXPORT_SYMBOL vmlinux 0x649c3191 of_clk_get_by_name +EXPORT_SYMBOL vmlinux 0x64a9c928 default_blu +EXPORT_SYMBOL vmlinux 0x64c1086f snd_pcm_set_sync +EXPORT_SYMBOL vmlinux 0x64c74969 posix_acl_to_xattr +EXPORT_SYMBOL vmlinux 0x64c990c2 mfd_cell_disable +EXPORT_SYMBOL vmlinux 0x64dd0b6d skb_copy_expand +EXPORT_SYMBOL vmlinux 0x64dd24df nla_put_64bit +EXPORT_SYMBOL vmlinux 0x64eefe0a vfs_iter_read +EXPORT_SYMBOL vmlinux 0x650be7db __skb_checksum +EXPORT_SYMBOL vmlinux 0x650f8603 snd_pcm_format_silence_64 +EXPORT_SYMBOL vmlinux 0x6513a3fa fb_get_color_depth +EXPORT_SYMBOL vmlinux 0x651a4139 test_taint +EXPORT_SYMBOL vmlinux 0x652032cb mac_pton +EXPORT_SYMBOL vmlinux 0x65209fd6 param_get_short +EXPORT_SYMBOL vmlinux 0x6521cc2c pcie_get_speed_cap +EXPORT_SYMBOL vmlinux 0x652aba80 ww_mutex_lock_interruptible +EXPORT_SYMBOL vmlinux 0x653c9aa8 key_payload_reserve +EXPORT_SYMBOL vmlinux 0x65408378 zlib_inflate_blob +EXPORT_SYMBOL vmlinux 0x65464c16 clkdev_drop +EXPORT_SYMBOL vmlinux 0x6578533e prepare_to_wait +EXPORT_SYMBOL vmlinux 0x658ce1a8 xxh64_reset +EXPORT_SYMBOL vmlinux 0x6590f648 sock_no_accept +EXPORT_SYMBOL vmlinux 0x659ded26 xfrm_flush_gc +EXPORT_SYMBOL vmlinux 0x659f1b7f new_inode +EXPORT_SYMBOL vmlinux 0x65a108b6 nd_integrity_init +EXPORT_SYMBOL vmlinux 0x65b04e92 blk_mq_init_sq_queue +EXPORT_SYMBOL vmlinux 0x65b83069 pagevec_lookup_range_tag +EXPORT_SYMBOL vmlinux 0x65d411e9 idr_get_next +EXPORT_SYMBOL vmlinux 0x65d7cd3c tty_port_free_xmit_buf +EXPORT_SYMBOL vmlinux 0x65d9e877 cpufreq_register_notifier +EXPORT_SYMBOL vmlinux 0x65dccf13 xz_dec_end +EXPORT_SYMBOL vmlinux 0x65e8c970 pipe_lock +EXPORT_SYMBOL vmlinux 0x65f4da93 of_get_i2c_adapter_by_node +EXPORT_SYMBOL vmlinux 0x65fdbbfd jbd2_journal_get_write_access +EXPORT_SYMBOL vmlinux 0x661655a0 param_get_bool +EXPORT_SYMBOL vmlinux 0x662552b4 block_is_partially_uptodate +EXPORT_SYMBOL vmlinux 0x66404f43 iov_iter_fault_in_readable +EXPORT_SYMBOL vmlinux 0x66441270 of_get_ddr_timings +EXPORT_SYMBOL vmlinux 0x66474aa4 neigh_proc_dointvec +EXPORT_SYMBOL vmlinux 0x66657274 kmalloc_order +EXPORT_SYMBOL vmlinux 0x66661282 inet_proto_csum_replace_by_diff +EXPORT_SYMBOL vmlinux 0x666863dc par_io_config_pin +EXPORT_SYMBOL vmlinux 0x6673f96d xxh32_reset +EXPORT_SYMBOL vmlinux 0x6690a953 pci_fixup_device +EXPORT_SYMBOL vmlinux 0x66ab5efc sock_efree +EXPORT_SYMBOL vmlinux 0x66c103ad twl6040_reg_write +EXPORT_SYMBOL vmlinux 0x66dbb4d2 ZSTD_initCDict +EXPORT_SYMBOL vmlinux 0x66eb5645 netdev_lower_get_next_private +EXPORT_SYMBOL vmlinux 0x670ab004 dev_mc_del +EXPORT_SYMBOL vmlinux 0x670b7b7a mdiobus_is_registered_device +EXPORT_SYMBOL vmlinux 0x67198938 tc_cleanup_flow_action +EXPORT_SYMBOL vmlinux 0x672ab9a8 freeze_super +EXPORT_SYMBOL vmlinux 0x6732caef finish_swait +EXPORT_SYMBOL vmlinux 0x67412d2f ucc_slow_enable +EXPORT_SYMBOL vmlinux 0x67440933 dput +EXPORT_SYMBOL vmlinux 0x6749d53f hdmi_vendor_infoframe_init +EXPORT_SYMBOL vmlinux 0x6751f942 snd_ctl_make_virtual_master +EXPORT_SYMBOL vmlinux 0x675a8e80 jbd2_log_start_commit +EXPORT_SYMBOL vmlinux 0x67676fa3 pci_map_rom +EXPORT_SYMBOL vmlinux 0x676bbc0f _set_bit +EXPORT_SYMBOL vmlinux 0x676e9a11 sock_dequeue_err_skb +EXPORT_SYMBOL vmlinux 0x677324dd sock_no_sendmsg +EXPORT_SYMBOL vmlinux 0x6782d34a rename_lock +EXPORT_SYMBOL vmlinux 0x678b96ec dma_pool_alloc +EXPORT_SYMBOL vmlinux 0x6795ba18 bio_list_copy_data +EXPORT_SYMBOL vmlinux 0x679856f5 sort_r +EXPORT_SYMBOL vmlinux 0x679d615a snd_dma_alloc_pages +EXPORT_SYMBOL vmlinux 0x67a4edb5 devm_extcon_unregister_notifier_all +EXPORT_SYMBOL vmlinux 0x67af23af inet_addr_type +EXPORT_SYMBOL vmlinux 0x67b27ec1 tty_std_termios +EXPORT_SYMBOL vmlinux 0x67b5610a inet_stream_connect +EXPORT_SYMBOL vmlinux 0x67b78eb3 seq_hlist_next_rcu +EXPORT_SYMBOL vmlinux 0x67ba8526 pci_ep_cfs_add_epf_group +EXPORT_SYMBOL vmlinux 0x67c1f787 __find_get_block +EXPORT_SYMBOL vmlinux 0x67caf1e1 pps_unregister_source +EXPORT_SYMBOL vmlinux 0x67d12557 xfrm_policy_walk +EXPORT_SYMBOL vmlinux 0x67ea6e61 trace_print_hex_dump_seq +EXPORT_SYMBOL vmlinux 0x67edddf0 tcf_action_set_ctrlact +EXPORT_SYMBOL vmlinux 0x67ef7188 pcim_iomap_regions +EXPORT_SYMBOL vmlinux 0x6808c968 cpumask_next_and +EXPORT_SYMBOL vmlinux 0x6811c1a8 blk_mq_stop_hw_queues +EXPORT_SYMBOL vmlinux 0x68182fed ip6_xmit +EXPORT_SYMBOL vmlinux 0x68330cca gnet_stats_start_copy +EXPORT_SYMBOL vmlinux 0x685a3765 prepare_to_swait_exclusive +EXPORT_SYMBOL vmlinux 0x685e31ca groups_sort +EXPORT_SYMBOL vmlinux 0x6864093b __cgroup_bpf_run_filter_sk +EXPORT_SYMBOL vmlinux 0x6873f125 fs_param_is_blob +EXPORT_SYMBOL vmlinux 0x68765434 generic_ro_fops +EXPORT_SYMBOL vmlinux 0x6877a10b netdev_upper_dev_link +EXPORT_SYMBOL vmlinux 0x687b6a16 kdbgetsymval +EXPORT_SYMBOL vmlinux 0x6884e98e __alloc_pages_nodemask +EXPORT_SYMBOL vmlinux 0x68871fd0 mmc_retune_timer_stop +EXPORT_SYMBOL vmlinux 0x68a24153 snd_pcm_format_physical_width +EXPORT_SYMBOL vmlinux 0x68a90b51 get_default_font +EXPORT_SYMBOL vmlinux 0x68ad8972 end_buffer_read_sync +EXPORT_SYMBOL vmlinux 0x68b6ce07 i2c_verify_client +EXPORT_SYMBOL vmlinux 0x68c0fbc2 dev_lstats_read +EXPORT_SYMBOL vmlinux 0x68c407af netdev_lower_get_next +EXPORT_SYMBOL vmlinux 0x68ce1f3d __register_nls +EXPORT_SYMBOL vmlinux 0x68ce98a7 kset_register +EXPORT_SYMBOL vmlinux 0x68d80923 nf_log_unregister +EXPORT_SYMBOL vmlinux 0x68e85f73 blk_mq_tag_to_rq +EXPORT_SYMBOL vmlinux 0x68ea058d nf_register_net_hooks +EXPORT_SYMBOL vmlinux 0x68fb581a icst307_idx2s +EXPORT_SYMBOL vmlinux 0x691938f8 sg_pcopy_from_buffer +EXPORT_SYMBOL vmlinux 0x691bd63d fs_param_is_string +EXPORT_SYMBOL vmlinux 0x69493b1a kstrtos16 +EXPORT_SYMBOL vmlinux 0x69573e52 fscrypt_free_inode +EXPORT_SYMBOL vmlinux 0x695b3d73 inet_register_protosw +EXPORT_SYMBOL vmlinux 0x69668826 netdev_increment_features +EXPORT_SYMBOL vmlinux 0x696a7914 scsi_print_result +EXPORT_SYMBOL vmlinux 0x696fb14e netpoll_poll_disable +EXPORT_SYMBOL vmlinux 0x6971447a rtc_month_days +EXPORT_SYMBOL vmlinux 0x6976b961 jbd2_journal_load +EXPORT_SYMBOL vmlinux 0x69890041 __break_lease +EXPORT_SYMBOL vmlinux 0x699bb4b0 devfreq_suspend_device +EXPORT_SYMBOL vmlinux 0x69a08f46 udp_lib_getsockopt +EXPORT_SYMBOL vmlinux 0x69ad2f20 kstrtouint +EXPORT_SYMBOL vmlinux 0x69b6f8d9 omap_set_dma_transfer_params +EXPORT_SYMBOL vmlinux 0x69c49c0e blk_queue_split +EXPORT_SYMBOL vmlinux 0x69c69db7 vga_remove_vgacon +EXPORT_SYMBOL vmlinux 0x69de8757 vme_check_window +EXPORT_SYMBOL vmlinux 0x69e51d08 __alloc_bucket_spinlocks +EXPORT_SYMBOL vmlinux 0x69f29846 security_inode_invalidate_secctx +EXPORT_SYMBOL vmlinux 0x69f5e379 phy_set_sym_pause +EXPORT_SYMBOL vmlinux 0x6a03751f sgl_free_order +EXPORT_SYMBOL vmlinux 0x6a037cf1 mempool_kfree +EXPORT_SYMBOL vmlinux 0x6a06fe13 mutex_lock_interruptible +EXPORT_SYMBOL vmlinux 0x6a363665 devm_release_resource +EXPORT_SYMBOL vmlinux 0x6a41cf47 __cleancache_init_fs +EXPORT_SYMBOL vmlinux 0x6a46889e show_init_ipc_ns +EXPORT_SYMBOL vmlinux 0x6a5cb5ee __get_free_pages +EXPORT_SYMBOL vmlinux 0x6a5ecb18 unregister_module_notifier +EXPORT_SYMBOL vmlinux 0x6a6c614a mipi_dsi_driver_register_full +EXPORT_SYMBOL vmlinux 0x6a7215bc fwnode_get_mac_address +EXPORT_SYMBOL vmlinux 0x6a80cd72 ipv6_sock_mc_drop +EXPORT_SYMBOL vmlinux 0x6a9fa971 follow_up +EXPORT_SYMBOL vmlinux 0x6aa11aa6 sgl_free_n_order +EXPORT_SYMBOL vmlinux 0x6aa54901 fs_param_is_path +EXPORT_SYMBOL vmlinux 0x6ab487c4 blk_limits_io_opt +EXPORT_SYMBOL vmlinux 0x6ac13eb3 skb_copy +EXPORT_SYMBOL vmlinux 0x6ac4929a unregister_console +EXPORT_SYMBOL vmlinux 0x6ac79b2b phy_suspend +EXPORT_SYMBOL vmlinux 0x6ad0ab28 rt_dst_alloc +EXPORT_SYMBOL vmlinux 0x6add5c9a dmi_find_device +EXPORT_SYMBOL vmlinux 0x6adecc7a ns_capable +EXPORT_SYMBOL vmlinux 0x6aeefac4 zlib_deflateReset +EXPORT_SYMBOL vmlinux 0x6aef90e7 unregister_qdisc +EXPORT_SYMBOL vmlinux 0x6af7b21a packing +EXPORT_SYMBOL vmlinux 0x6b1a40d6 snd_ctl_new1 +EXPORT_SYMBOL vmlinux 0x6b227ace km_state_notify +EXPORT_SYMBOL vmlinux 0x6b22cbaf fscrypt_encrypt_block_inplace +EXPORT_SYMBOL vmlinux 0x6b243a75 tcf_unregister_action +EXPORT_SYMBOL vmlinux 0x6b26b995 backlight_device_unregister +EXPORT_SYMBOL vmlinux 0x6b2a6ad2 thaw_bdev +EXPORT_SYMBOL vmlinux 0x6b2dc060 dump_stack +EXPORT_SYMBOL vmlinux 0x6b322fbd __xa_alloc_cyclic +EXPORT_SYMBOL vmlinux 0x6b439e27 dquot_transfer +EXPORT_SYMBOL vmlinux 0x6b44e452 mod_zone_page_state +EXPORT_SYMBOL vmlinux 0x6b472dc4 inode_dio_wait +EXPORT_SYMBOL vmlinux 0x6b53321f padata_do_serial +EXPORT_SYMBOL vmlinux 0x6b55acd0 rtnl_lock_killable +EXPORT_SYMBOL vmlinux 0x6b57dfd9 fb_set_var +EXPORT_SYMBOL vmlinux 0x6b5b1abf vfs_getattr +EXPORT_SYMBOL vmlinux 0x6b604710 lockref_get_not_zero +EXPORT_SYMBOL vmlinux 0x6b6c31d9 kmem_cache_alloc +EXPORT_SYMBOL vmlinux 0x6b730057 cfb_fillrect +EXPORT_SYMBOL vmlinux 0x6b7bb556 udp_prot +EXPORT_SYMBOL vmlinux 0x6b853d06 ns_to_kernel_old_timeval +EXPORT_SYMBOL vmlinux 0x6b8bf149 netif_receive_skb_list +EXPORT_SYMBOL vmlinux 0x6b9aed24 km_query +EXPORT_SYMBOL vmlinux 0x6bb1fae8 ps2_sendbyte +EXPORT_SYMBOL vmlinux 0x6bb632aa param_ops_charp +EXPORT_SYMBOL vmlinux 0x6bb93d9e sg_copy_to_buffer +EXPORT_SYMBOL vmlinux 0x6bc3fbc0 __unregister_chrdev +EXPORT_SYMBOL vmlinux 0x6bcd0dd4 phy_modify_paged +EXPORT_SYMBOL vmlinux 0x6bf7d3c2 sg_pcopy_to_buffer +EXPORT_SYMBOL vmlinux 0x6c17ee76 cdev_set_parent +EXPORT_SYMBOL vmlinux 0x6c1ce5ce strcspn +EXPORT_SYMBOL vmlinux 0x6c257ac0 tty_termios_hw_change +EXPORT_SYMBOL vmlinux 0x6c2e1f73 serio_unregister_port +EXPORT_SYMBOL vmlinux 0x6c379f17 lock_sock_fast +EXPORT_SYMBOL vmlinux 0x6c4c0aee ata_std_end_eh +EXPORT_SYMBOL vmlinux 0x6c4cad69 ipv6_chk_prefix +EXPORT_SYMBOL vmlinux 0x6c61ce70 num_registered_fb +EXPORT_SYMBOL vmlinux 0x6c70645a netdev_next_lower_dev_rcu +EXPORT_SYMBOL vmlinux 0x6c78db4a snd_timer_global_register +EXPORT_SYMBOL vmlinux 0x6c810e42 __xa_clear_mark +EXPORT_SYMBOL vmlinux 0x6c845f4f block_page_mkwrite +EXPORT_SYMBOL vmlinux 0x6cb1ccfa phy_sfp_probe +EXPORT_SYMBOL vmlinux 0x6cb46525 netlbl_catmap_walk +EXPORT_SYMBOL vmlinux 0x6cb71e6d inode_nohighmem +EXPORT_SYMBOL vmlinux 0x6cbc5f29 vlan_filter_drop_vids +EXPORT_SYMBOL vmlinux 0x6cbcd95e ZSTD_compressStream +EXPORT_SYMBOL vmlinux 0x6cbfcef7 sk_stream_wait_connect +EXPORT_SYMBOL vmlinux 0x6cbfd5e6 free_buffer_head +EXPORT_SYMBOL vmlinux 0x6cd21a3a mount_single +EXPORT_SYMBOL vmlinux 0x6cdc5c6b nla_strlcpy +EXPORT_SYMBOL vmlinux 0x6ce9398f kthread_create_worker_on_cpu +EXPORT_SYMBOL vmlinux 0x6ceb8ccd mmc_wait_for_cmd +EXPORT_SYMBOL vmlinux 0x6cf0d67d qe_get_num_of_snums +EXPORT_SYMBOL vmlinux 0x6cfd9007 md_bitmap_update_sb +EXPORT_SYMBOL vmlinux 0x6d0189d0 phy_start_aneg +EXPORT_SYMBOL vmlinux 0x6d0593b1 sk_net_capable +EXPORT_SYMBOL vmlinux 0x6d0e4e2e phy_device_register +EXPORT_SYMBOL vmlinux 0x6d179493 input_mt_report_pointer_emulation +EXPORT_SYMBOL vmlinux 0x6d294e43 clock_t_to_jiffies +EXPORT_SYMBOL vmlinux 0x6d2fb3ad eth_validate_addr +EXPORT_SYMBOL vmlinux 0x6d3181d8 ipv6_find_hdr +EXPORT_SYMBOL vmlinux 0x6d340f64 tty_termios_input_baud_rate +EXPORT_SYMBOL vmlinux 0x6d34a322 mdio_driver_register +EXPORT_SYMBOL vmlinux 0x6d4fdb57 __sock_cmsg_send +EXPORT_SYMBOL vmlinux 0x6d662533 _find_first_bit_le +EXPORT_SYMBOL vmlinux 0x6d7c7dcc bitmap_cut +EXPORT_SYMBOL vmlinux 0x6d89b199 proc_dointvec_minmax +EXPORT_SYMBOL vmlinux 0x6d8d8904 uart_add_one_port +EXPORT_SYMBOL vmlinux 0x6da56a05 filemap_fdatawrite +EXPORT_SYMBOL vmlinux 0x6daaf2a2 zpool_unregister_driver +EXPORT_SYMBOL vmlinux 0x6dc7e44d of_graph_get_remote_node +EXPORT_SYMBOL vmlinux 0x6dcf857f uuid_null +EXPORT_SYMBOL vmlinux 0x6dd069b5 __i2c_smbus_xfer +EXPORT_SYMBOL vmlinux 0x6df05cbf single_open +EXPORT_SYMBOL vmlinux 0x6df1aaf1 kernel_sigaction +EXPORT_SYMBOL vmlinux 0x6dfabcb1 watchdog_register_governor +EXPORT_SYMBOL vmlinux 0x6e0d0924 cpufreq_get_policy +EXPORT_SYMBOL vmlinux 0x6e19e3f2 ilookup5_nowait +EXPORT_SYMBOL vmlinux 0x6e25990e jbd2_journal_begin_ordered_truncate +EXPORT_SYMBOL vmlinux 0x6e3bac38 vfs_path_lookup +EXPORT_SYMBOL vmlinux 0x6e3ebeb0 phy_get_pause +EXPORT_SYMBOL vmlinux 0x6e4c1b38 vme_irq_free +EXPORT_SYMBOL vmlinux 0x6e4e7714 dma_fence_chain_ops +EXPORT_SYMBOL vmlinux 0x6e586338 iov_iter_revert +EXPORT_SYMBOL vmlinux 0x6e720ff2 rtnl_unlock +EXPORT_SYMBOL vmlinux 0x6e9dd606 __symbol_put +EXPORT_SYMBOL vmlinux 0x6ea54060 simple_readpage +EXPORT_SYMBOL vmlinux 0x6ea9363b force_sig +EXPORT_SYMBOL vmlinux 0x6eae2f2e add_to_pipe +EXPORT_SYMBOL vmlinux 0x6ebd9c9c inet_gro_complete +EXPORT_SYMBOL vmlinux 0x6ec0fa3e call_fib_notifier +EXPORT_SYMBOL vmlinux 0x6ecdb792 __percpu_counter_init +EXPORT_SYMBOL vmlinux 0x6ed8a5fc hdmi_drm_infoframe_check +EXPORT_SYMBOL vmlinux 0x6ee13b3e vme_bus_num +EXPORT_SYMBOL vmlinux 0x6ef66e4d seq_write +EXPORT_SYMBOL vmlinux 0x6ef8fcd8 snd_pcm_format_linear +EXPORT_SYMBOL vmlinux 0x6f013ecd __init_rwsem +EXPORT_SYMBOL vmlinux 0x6f125964 xfrm6_rcv +EXPORT_SYMBOL vmlinux 0x6f28d270 fbcon_rotate_cw +EXPORT_SYMBOL vmlinux 0x6f2b7fa6 skb_try_coalesce +EXPORT_SYMBOL vmlinux 0x6f5283ec seq_putc +EXPORT_SYMBOL vmlinux 0x6f633b27 sk_stop_timer +EXPORT_SYMBOL vmlinux 0x6f7456e0 netpoll_parse_options +EXPORT_SYMBOL vmlinux 0x6f8f674a bpf_dispatcher_xdp_func +EXPORT_SYMBOL vmlinux 0x6f902a03 xfrm6_rcv_encap +EXPORT_SYMBOL vmlinux 0x6f9853c2 dma_mmap_attrs +EXPORT_SYMBOL vmlinux 0x6fbe4717 idr_replace +EXPORT_SYMBOL vmlinux 0x6fbf60af snd_soc_alloc_ac97_component +EXPORT_SYMBOL vmlinux 0x6fcb87a1 touch_softlockup_watchdog +EXPORT_SYMBOL vmlinux 0x6fd9c35a __clzdi2 +EXPORT_SYMBOL vmlinux 0x6fdcf7ca netdev_err +EXPORT_SYMBOL vmlinux 0x6fddf709 md_bitmap_end_sync +EXPORT_SYMBOL vmlinux 0x6ff774dd rproc_free +EXPORT_SYMBOL vmlinux 0x70002fe8 siphash_1u32 +EXPORT_SYMBOL vmlinux 0x70097aa0 nand_bch_free +EXPORT_SYMBOL vmlinux 0x700c21a4 scsi_block_when_processing_errors +EXPORT_SYMBOL vmlinux 0x7017a673 security_inet_conn_established +EXPORT_SYMBOL vmlinux 0x702900c6 neigh_lookup_nodev +EXPORT_SYMBOL vmlinux 0x702946da ucs2_strlen +EXPORT_SYMBOL vmlinux 0x70407c4e rproc_add_carveout +EXPORT_SYMBOL vmlinux 0x70703993 hdmi_spd_infoframe_pack +EXPORT_SYMBOL vmlinux 0x7071a4f2 cmdline_parts_free +EXPORT_SYMBOL vmlinux 0x70744ae5 __block_write_begin +EXPORT_SYMBOL vmlinux 0x707dede7 migrate_page_move_mapping +EXPORT_SYMBOL vmlinux 0x708f2130 gnet_stats_copy_basic +EXPORT_SYMBOL vmlinux 0x70a09b26 bio_chain +EXPORT_SYMBOL vmlinux 0x70baf857 skb_find_text +EXPORT_SYMBOL vmlinux 0x70daa225 redraw_screen +EXPORT_SYMBOL vmlinux 0x7102d945 vlan_filter_push_vids +EXPORT_SYMBOL vmlinux 0x711b8a9b __crc32c_le_shift +EXPORT_SYMBOL vmlinux 0x711cd91c simple_transaction_get +EXPORT_SYMBOL vmlinux 0x712110ab proc_dointvec_ms_jiffies +EXPORT_SYMBOL vmlinux 0x7129e5f8 hex_asc +EXPORT_SYMBOL vmlinux 0x71432c37 ZSTD_CCtxWorkspaceBound +EXPORT_SYMBOL vmlinux 0x71514ad4 key_move +EXPORT_SYMBOL vmlinux 0x7153e108 inet_csk_reqsk_queue_drop +EXPORT_SYMBOL vmlinux 0x7156c952 of_node_name_prefix +EXPORT_SYMBOL vmlinux 0x7160d9ad cleancache_register_ops +EXPORT_SYMBOL vmlinux 0x716fae12 bd_set_size +EXPORT_SYMBOL vmlinux 0x717105f3 max8998_bulk_write +EXPORT_SYMBOL vmlinux 0x7171121c overflowgid +EXPORT_SYMBOL vmlinux 0x71793d51 get_tree_bdev +EXPORT_SYMBOL vmlinux 0x71852e77 __neigh_set_probe_once +EXPORT_SYMBOL vmlinux 0x718d07c0 set_blocksize +EXPORT_SYMBOL vmlinux 0x7197bd70 md_bitmap_sync_with_cluster +EXPORT_SYMBOL vmlinux 0x71a50dbc register_blkdev +EXPORT_SYMBOL vmlinux 0x71a672ef dmam_pool_destroy +EXPORT_SYMBOL vmlinux 0x71b29d5d revert_creds +EXPORT_SYMBOL vmlinux 0x71b710e6 pcie_set_readrq +EXPORT_SYMBOL vmlinux 0x71b9e7d2 rawv6_mh_filter_register +EXPORT_SYMBOL vmlinux 0x71c90087 memcmp +EXPORT_SYMBOL vmlinux 0x71d1d2e9 pci_alloc_host_bridge +EXPORT_SYMBOL vmlinux 0x71f35d36 mmc_detect_change +EXPORT_SYMBOL vmlinux 0x71f5758e fb_validate_mode +EXPORT_SYMBOL vmlinux 0x71f7de4f proc_do_large_bitmap +EXPORT_SYMBOL vmlinux 0x7203d67b page_get_link +EXPORT_SYMBOL vmlinux 0x720a0b4f netdev_info +EXPORT_SYMBOL vmlinux 0x7234f463 blk_mq_requeue_request +EXPORT_SYMBOL vmlinux 0x724ddac7 utf8version_is_supported +EXPORT_SYMBOL vmlinux 0x7288cbc6 tcf_block_get_ext +EXPORT_SYMBOL vmlinux 0x7288e347 unregister_nexthop_notifier +EXPORT_SYMBOL vmlinux 0x7295dc8f __put_page +EXPORT_SYMBOL vmlinux 0x729c812b skb_csum_hwoffload_help +EXPORT_SYMBOL vmlinux 0x72a75afe param_set_ullong +EXPORT_SYMBOL vmlinux 0x72b9d287 default_grn +EXPORT_SYMBOL vmlinux 0x72bb9dcd netif_tx_stop_all_queues +EXPORT_SYMBOL vmlinux 0x72bbf0c1 memory_cgrp_subsys +EXPORT_SYMBOL vmlinux 0x72c99314 xsk_set_rx_need_wakeup +EXPORT_SYMBOL vmlinux 0x72cf819b nd_device_unregister +EXPORT_SYMBOL vmlinux 0x72d230a2 param_set_charp +EXPORT_SYMBOL vmlinux 0x72d29a16 __get_hash_from_flowi6 +EXPORT_SYMBOL vmlinux 0x72de0959 generic_block_fiemap +EXPORT_SYMBOL vmlinux 0x72e18061 bdi_set_max_ratio +EXPORT_SYMBOL vmlinux 0x72e6bcf3 neigh_resolve_output +EXPORT_SYMBOL vmlinux 0x72ea7b2d scsi_device_type +EXPORT_SYMBOL vmlinux 0x72eb6732 mipi_dsi_dcs_set_column_address +EXPORT_SYMBOL vmlinux 0x72fc7fda of_get_child_by_name +EXPORT_SYMBOL vmlinux 0x73044d74 mipi_dsi_dcs_set_display_on +EXPORT_SYMBOL vmlinux 0x730503df sock_set_rcvbuf +EXPORT_SYMBOL vmlinux 0x73076315 snd_pci_quirk_lookup_id +EXPORT_SYMBOL vmlinux 0x730e77f7 fifo_create_dflt +EXPORT_SYMBOL vmlinux 0x73147e64 ndo_dflt_fdb_dump +EXPORT_SYMBOL vmlinux 0x7315a4e9 twl6030_mmc_card_detect_config +EXPORT_SYMBOL vmlinux 0x7317790e lockref_put_or_lock +EXPORT_SYMBOL vmlinux 0x731b7382 rproc_put +EXPORT_SYMBOL vmlinux 0x7326c43d super_setup_bdi_name +EXPORT_SYMBOL vmlinux 0x73404bf5 tcp_v4_mtu_reduced +EXPORT_SYMBOL vmlinux 0x734132f7 migrate_page +EXPORT_SYMBOL vmlinux 0x73430d70 get_mem_cgroup_from_mm +EXPORT_SYMBOL vmlinux 0x7343a230 __skb_get_hash +EXPORT_SYMBOL vmlinux 0x735f33b0 mutex_is_locked +EXPORT_SYMBOL vmlinux 0x7380dffa argv_split +EXPORT_SYMBOL vmlinux 0x739c2f06 proc_mkdir +EXPORT_SYMBOL vmlinux 0x73a508cb inet_add_protocol +EXPORT_SYMBOL vmlinux 0x73abb180 alloc_contig_range +EXPORT_SYMBOL vmlinux 0x73b473e1 md_write_start +EXPORT_SYMBOL vmlinux 0x73c983e5 param_ops_byte +EXPORT_SYMBOL vmlinux 0x73d20fb3 omap_get_dma_src_pos +EXPORT_SYMBOL vmlinux 0x73e20c1c strlcpy +EXPORT_SYMBOL vmlinux 0x7410aba2 strreplace +EXPORT_SYMBOL vmlinux 0x741e45b1 dcb_getapp +EXPORT_SYMBOL vmlinux 0x742578a5 wait_for_random_bytes +EXPORT_SYMBOL vmlinux 0x74320f4f __hw_addr_ref_unsync_dev +EXPORT_SYMBOL vmlinux 0x744834f5 input_event +EXPORT_SYMBOL vmlinux 0x7453d3e8 security_release_secctx +EXPORT_SYMBOL vmlinux 0x7459df66 of_n_size_cells +EXPORT_SYMBOL vmlinux 0x74645a6e dev_change_carrier +EXPORT_SYMBOL vmlinux 0x749849d8 LZ4_loadDict +EXPORT_SYMBOL vmlinux 0x74afc4df free_netdev +EXPORT_SYMBOL vmlinux 0x74b20f7b dquot_alloc +EXPORT_SYMBOL vmlinux 0x74b9e4dc pcie_capability_read_word +EXPORT_SYMBOL vmlinux 0x74beab48 scsi_eh_prep_cmnd +EXPORT_SYMBOL vmlinux 0x74c134b9 __sw_hweight32 +EXPORT_SYMBOL vmlinux 0x74c1816a scsi_vpd_lun_id +EXPORT_SYMBOL vmlinux 0x74c5ce19 inet_sk_rebuild_header +EXPORT_SYMBOL vmlinux 0x74d5b66c inet_frag_queue_insert +EXPORT_SYMBOL vmlinux 0x74dc8943 begin_new_exec +EXPORT_SYMBOL vmlinux 0x74e11f88 __scsi_device_lookup_by_target +EXPORT_SYMBOL vmlinux 0x74e5ff1a udpv6_encap_enable +EXPORT_SYMBOL vmlinux 0x74fa9cc6 refcount_dec_and_mutex_lock +EXPORT_SYMBOL vmlinux 0x75018f69 inet_recvmsg +EXPORT_SYMBOL vmlinux 0x7505bdef memchr_inv +EXPORT_SYMBOL vmlinux 0x750edb20 __breadahead +EXPORT_SYMBOL vmlinux 0x751068ee scsi_device_lookup +EXPORT_SYMBOL vmlinux 0x751387da tty_port_init +EXPORT_SYMBOL vmlinux 0x753260d8 rproc_coredump_add_custom_segment +EXPORT_SYMBOL vmlinux 0x755e32d2 of_phy_deregister_fixed_link +EXPORT_SYMBOL vmlinux 0x756f23f9 posix_acl_from_xattr +EXPORT_SYMBOL vmlinux 0x757f088f cpm_muram_offset +EXPORT_SYMBOL vmlinux 0x7586f470 max8925_bulk_read +EXPORT_SYMBOL vmlinux 0x759933fd flow_rule_match_enc_ipv4_addrs +EXPORT_SYMBOL vmlinux 0x759e1d62 iterate_fd +EXPORT_SYMBOL vmlinux 0x75a3e08d snd_card_free +EXPORT_SYMBOL vmlinux 0x75b9cdca mtd_concat_create +EXPORT_SYMBOL vmlinux 0x75bc7e6a security_sock_rcv_skb +EXPORT_SYMBOL vmlinux 0x75bda77a seq_hlist_next +EXPORT_SYMBOL vmlinux 0x75d0deb9 nsecs_to_jiffies64 +EXPORT_SYMBOL vmlinux 0x75d499dd vmcore_add_device_dump +EXPORT_SYMBOL vmlinux 0x75d81a79 misc_deregister +EXPORT_SYMBOL vmlinux 0x75dc0ecc mmc_card_is_blockaddr +EXPORT_SYMBOL vmlinux 0x75e828b2 jbd2_journal_inode_ranged_wait +EXPORT_SYMBOL vmlinux 0x760551bc neigh_parms_release +EXPORT_SYMBOL vmlinux 0x760932d8 tty_vhangup +EXPORT_SYMBOL vmlinux 0x760a0f4f yield +EXPORT_SYMBOL vmlinux 0x761ba562 sock_no_sendmsg_locked +EXPORT_SYMBOL vmlinux 0x76221de2 sk_stream_kill_queues +EXPORT_SYMBOL vmlinux 0x7630831c __splice_from_pipe +EXPORT_SYMBOL vmlinux 0x7638ede3 io_uring_get_socket +EXPORT_SYMBOL vmlinux 0x7647726c handle_sysrq +EXPORT_SYMBOL vmlinux 0x766a0927 mempool_alloc_pages +EXPORT_SYMBOL vmlinux 0x766a31e2 tcp_select_initial_window +EXPORT_SYMBOL vmlinux 0x766deee7 mmc_cqe_recovery +EXPORT_SYMBOL vmlinux 0x76888f32 mdio_bus_type +EXPORT_SYMBOL vmlinux 0x7688fb35 find_vma +EXPORT_SYMBOL vmlinux 0x769f6e64 errseq_check +EXPORT_SYMBOL vmlinux 0x76a7900e mem_cgroup_from_task +EXPORT_SYMBOL vmlinux 0x76bd51fa xfrm_init_state +EXPORT_SYMBOL vmlinux 0x76bd5aad snd_compr_malloc_pages +EXPORT_SYMBOL vmlinux 0x76c28a0c buffer_migrate_page +EXPORT_SYMBOL vmlinux 0x76cf2557 ethtool_notify +EXPORT_SYMBOL vmlinux 0x76cf47f6 __aeabi_llsl +EXPORT_SYMBOL vmlinux 0x76d18130 blk_queue_flag_clear +EXPORT_SYMBOL vmlinux 0x76d3cd60 laptop_mode +EXPORT_SYMBOL vmlinux 0x76d451c4 add_taint +EXPORT_SYMBOL vmlinux 0x76ffd786 inet_addr_type_dev_table +EXPORT_SYMBOL vmlinux 0x7700ce69 seq_escape_mem_ascii +EXPORT_SYMBOL vmlinux 0x7709697a km_policy_expired +EXPORT_SYMBOL vmlinux 0x77098dd0 tcp_sock_set_keepintvl +EXPORT_SYMBOL vmlinux 0x77102593 of_phy_get_and_connect +EXPORT_SYMBOL vmlinux 0x77262f49 tcf_idr_create +EXPORT_SYMBOL vmlinux 0x7732159c free_irq_cpu_rmap +EXPORT_SYMBOL vmlinux 0x77347825 is_nd_btt +EXPORT_SYMBOL vmlinux 0x77358855 iomem_resource +EXPORT_SYMBOL vmlinux 0x773b654f pcie_capability_clear_and_set_dword +EXPORT_SYMBOL vmlinux 0x777bf245 devm_devfreq_remove_device +EXPORT_SYMBOL vmlinux 0x77832768 pci_bus_add_devices +EXPORT_SYMBOL vmlinux 0x77901ced d_add_ci +EXPORT_SYMBOL vmlinux 0x7791193f icst525_s2div +EXPORT_SYMBOL vmlinux 0x7796e383 pci_match_id +EXPORT_SYMBOL vmlinux 0x779a18af kstrtoll +EXPORT_SYMBOL vmlinux 0x77bc13a0 strim +EXPORT_SYMBOL vmlinux 0x77bf2c62 jbd2_journal_abort +EXPORT_SYMBOL vmlinux 0x77d0fe85 inet6_del_protocol +EXPORT_SYMBOL vmlinux 0x77e9eb37 aes_encrypt +EXPORT_SYMBOL vmlinux 0x77ef6e4a pci_ep_cfs_remove_epc_group +EXPORT_SYMBOL vmlinux 0x77f6c690 _raw_read_lock_bh +EXPORT_SYMBOL vmlinux 0x77f6f183 kmalloc_order_trace +EXPORT_SYMBOL vmlinux 0x7807f0f8 schedule_timeout_idle +EXPORT_SYMBOL vmlinux 0x7832440e xfrm_unregister_type_offload +EXPORT_SYMBOL vmlinux 0x783b977a kstrtobool_from_user +EXPORT_SYMBOL vmlinux 0x78431876 ZSTD_compressBegin_usingCDict +EXPORT_SYMBOL vmlinux 0x786f21ed of_find_all_nodes +EXPORT_SYMBOL vmlinux 0x7880c781 dm_kcopyd_prepare_callback +EXPORT_SYMBOL vmlinux 0x7889b1a0 map_kernel_range_noflush +EXPORT_SYMBOL vmlinux 0x788ebac2 inet_frag_kill +EXPORT_SYMBOL vmlinux 0x789affb1 frontswap_tmem_exclusive_gets +EXPORT_SYMBOL vmlinux 0x78a16f48 aes_decrypt +EXPORT_SYMBOL vmlinux 0x78bd5834 kthread_create_on_node +EXPORT_SYMBOL vmlinux 0x78c1b274 dma_direct_map_page +EXPORT_SYMBOL vmlinux 0x78d0a697 input_match_device_id +EXPORT_SYMBOL vmlinux 0x78df6bd7 no_pci_devices +EXPORT_SYMBOL vmlinux 0x78e6195f cdrom_get_media_event +EXPORT_SYMBOL vmlinux 0x790eec02 skb_recv_datagram +EXPORT_SYMBOL vmlinux 0x7923bf4e qdisc_watchdog_init +EXPORT_SYMBOL vmlinux 0x7934e883 max8998_read_reg +EXPORT_SYMBOL vmlinux 0x794765d1 mempool_free +EXPORT_SYMBOL vmlinux 0x794baa2e __udp_disconnect +EXPORT_SYMBOL vmlinux 0x79511213 t10_pi_type3_ip +EXPORT_SYMBOL vmlinux 0x795cd69c path_has_submounts +EXPORT_SYMBOL vmlinux 0x795dea12 __put_user_ns +EXPORT_SYMBOL vmlinux 0x79715693 bd_finish_claiming +EXPORT_SYMBOL vmlinux 0x798f8667 __netlink_kernel_create +EXPORT_SYMBOL vmlinux 0x799cf414 elv_rb_del +EXPORT_SYMBOL vmlinux 0x79aa04a2 get_random_bytes +EXPORT_SYMBOL vmlinux 0x79ae6cf1 dma_async_device_register +EXPORT_SYMBOL vmlinux 0x79b2cd1b xfrm_state_alloc +EXPORT_SYMBOL vmlinux 0x79b2fb3c skb_checksum_trimmed +EXPORT_SYMBOL vmlinux 0x79b6ad6f nvm_submit_io_sync +EXPORT_SYMBOL vmlinux 0x79cebdc0 kernel_bind +EXPORT_SYMBOL vmlinux 0x79d2a755 clean_bdev_aliases +EXPORT_SYMBOL vmlinux 0x79fbdb4e csum_and_copy_from_iter +EXPORT_SYMBOL vmlinux 0x79fc577f utf8nagemax +EXPORT_SYMBOL vmlinux 0x7a09a064 seg6_hmac_compute +EXPORT_SYMBOL vmlinux 0x7a0c3c53 cdev_init +EXPORT_SYMBOL vmlinux 0x7a1bcd59 gf128mul_x8_ble +EXPORT_SYMBOL vmlinux 0x7a2d7823 nf_unregister_sockopt +EXPORT_SYMBOL vmlinux 0x7a3e8a42 radix_tree_next_chunk +EXPORT_SYMBOL vmlinux 0x7a4497db kzfree +EXPORT_SYMBOL vmlinux 0x7a4694b2 nand_scan_with_ids +EXPORT_SYMBOL vmlinux 0x7a4ceaa7 unpin_user_page +EXPORT_SYMBOL vmlinux 0x7a548f24 __dynamic_dev_dbg +EXPORT_SYMBOL vmlinux 0x7a5d07af mipi_dsi_dcs_nop +EXPORT_SYMBOL vmlinux 0x7a709507 ip_sock_set_freebind +EXPORT_SYMBOL vmlinux 0x7a7a1acb __filemap_set_wb_err +EXPORT_SYMBOL vmlinux 0x7a8b1681 md_bitmap_unplug +EXPORT_SYMBOL vmlinux 0x7a8b36a7 devm_request_resource +EXPORT_SYMBOL vmlinux 0x7a8fa39a blkdev_issue_write_same +EXPORT_SYMBOL vmlinux 0x7a95e5ae do_settimeofday64 +EXPORT_SYMBOL vmlinux 0x7a968137 ucc_slow_restart_tx +EXPORT_SYMBOL vmlinux 0x7a9b37e8 blk_start_plug +EXPORT_SYMBOL vmlinux 0x7aa1756e kvfree +EXPORT_SYMBOL vmlinux 0x7ab76d8c sk_reset_timer +EXPORT_SYMBOL vmlinux 0x7ab78713 pm_vt_switch_required +EXPORT_SYMBOL vmlinux 0x7ab88a45 system_freezing_cnt +EXPORT_SYMBOL vmlinux 0x7aba5c0b ZSTD_getParams +EXPORT_SYMBOL vmlinux 0x7acb6f49 udp_pre_connect +EXPORT_SYMBOL vmlinux 0x7ad050b9 qid_lt +EXPORT_SYMBOL vmlinux 0x7ad1008c vfs_fsync +EXPORT_SYMBOL vmlinux 0x7adc0fbf rb_replace_node_rcu +EXPORT_SYMBOL vmlinux 0x7aded2f7 down_write_trylock +EXPORT_SYMBOL vmlinux 0x7ae5d317 qe_get_snum +EXPORT_SYMBOL vmlinux 0x7afc9d8a unregister_sound_mixer +EXPORT_SYMBOL vmlinux 0x7b0192da kstrtou16 +EXPORT_SYMBOL vmlinux 0x7b283ce3 prandom_bytes_state +EXPORT_SYMBOL vmlinux 0x7b2fb85d __xa_cmpxchg +EXPORT_SYMBOL vmlinux 0x7b3b7630 phys_mem_access_prot +EXPORT_SYMBOL vmlinux 0x7b45cb8d rt_dst_clone +EXPORT_SYMBOL vmlinux 0x7b4c6aa6 find_get_pages_contig +EXPORT_SYMBOL vmlinux 0x7b51b66c ZSTD_resetCStream +EXPORT_SYMBOL vmlinux 0x7b5b8f31 sha256_update +EXPORT_SYMBOL vmlinux 0x7b5c8440 vm_munmap +EXPORT_SYMBOL vmlinux 0x7b7936cd configfs_unregister_default_group +EXPORT_SYMBOL vmlinux 0x7b79fe1d pagecache_write_end +EXPORT_SYMBOL vmlinux 0x7b7d9f97 snd_pcm_hw_constraint_pow2 +EXPORT_SYMBOL vmlinux 0x7bda6021 cdrom_number_of_slots +EXPORT_SYMBOL vmlinux 0x7be11b77 ata_print_version +EXPORT_SYMBOL vmlinux 0x7c0e208d get_user_pages +EXPORT_SYMBOL vmlinux 0x7c173634 __bitmap_complement +EXPORT_SYMBOL vmlinux 0x7c2de1c6 of_find_backlight +EXPORT_SYMBOL vmlinux 0x7c3615a8 __ip_options_compile +EXPORT_SYMBOL vmlinux 0x7c39e7b5 __cleancache_invalidate_fs +EXPORT_SYMBOL vmlinux 0x7c46233a cpufreq_quick_get +EXPORT_SYMBOL vmlinux 0x7c5ed000 inet_dgram_connect +EXPORT_SYMBOL vmlinux 0x7c7712ef tcf_em_register +EXPORT_SYMBOL vmlinux 0x7c891181 ipv6_chk_addr_and_flags +EXPORT_SYMBOL vmlinux 0x7c8cea9e key_create_or_update +EXPORT_SYMBOL vmlinux 0x7c9ca58f __sg_page_iter_next +EXPORT_SYMBOL vmlinux 0x7ca21980 netlink_net_capable +EXPORT_SYMBOL vmlinux 0x7cb1aea1 devlink_dpipe_header_ethernet +EXPORT_SYMBOL vmlinux 0x7cb2796d mipi_dsi_dcs_write_buffer +EXPORT_SYMBOL vmlinux 0x7cb2fa5c xfrm4_rcv +EXPORT_SYMBOL vmlinux 0x7cc035a7 __ucmpdi2 +EXPORT_SYMBOL vmlinux 0x7cdef9dd phy_get_eee_err +EXPORT_SYMBOL vmlinux 0x7cdf46ca __phy_read_mmd +EXPORT_SYMBOL vmlinux 0x7ce18c9f from_kqid +EXPORT_SYMBOL vmlinux 0x7cf35220 vme_master_free +EXPORT_SYMBOL vmlinux 0x7cfe368d net_dim_get_def_tx_moderation +EXPORT_SYMBOL vmlinux 0x7d0db45c jiffies_to_clock_t +EXPORT_SYMBOL vmlinux 0x7d1f0a6b __module_put_and_exit +EXPORT_SYMBOL vmlinux 0x7d22f6a6 gen_pool_dma_zalloc +EXPORT_SYMBOL vmlinux 0x7d3e4a59 tcf_exts_destroy +EXPORT_SYMBOL vmlinux 0x7d474d41 hdmi_infoframe_pack +EXPORT_SYMBOL vmlinux 0x7d4b176a netlbl_catmap_setbit +EXPORT_SYMBOL vmlinux 0x7d4ebd8d tcp_read_sock +EXPORT_SYMBOL vmlinux 0x7d6666c5 pci_bus_read_config_word +EXPORT_SYMBOL vmlinux 0x7d66f91a ps2_drain +EXPORT_SYMBOL vmlinux 0x7d69895c of_parse_phandle_with_args_map +EXPORT_SYMBOL vmlinux 0x7d6e240f xattr_full_name +EXPORT_SYMBOL vmlinux 0x7d6f1dc3 gen_new_estimator +EXPORT_SYMBOL vmlinux 0x7d991e43 inet_listen +EXPORT_SYMBOL vmlinux 0x7da93458 cros_ec_query_all +EXPORT_SYMBOL vmlinux 0x7daece67 quota_send_warning +EXPORT_SYMBOL vmlinux 0x7db1e043 build_skb_around +EXPORT_SYMBOL vmlinux 0x7db8926e zero_fill_bio_iter +EXPORT_SYMBOL vmlinux 0x7dcb81ae sched_autogroup_create_attach +EXPORT_SYMBOL vmlinux 0x7dd4e529 __zerocopy_sg_from_iter +EXPORT_SYMBOL vmlinux 0x7ddd799f blk_pre_runtime_resume +EXPORT_SYMBOL vmlinux 0x7deff673 dm_consume_args +EXPORT_SYMBOL vmlinux 0x7df80d34 dev_get_by_index_rcu +EXPORT_SYMBOL vmlinux 0x7dfa8d9e twl6040_get_sysclk +EXPORT_SYMBOL vmlinux 0x7e0300b4 dm_kobject_release +EXPORT_SYMBOL vmlinux 0x7e0c27bc iget5_locked +EXPORT_SYMBOL vmlinux 0x7e0c6927 twl6040_power +EXPORT_SYMBOL vmlinux 0x7e0ce0c3 up_write +EXPORT_SYMBOL vmlinux 0x7e2d9bb7 pci_scan_root_bus +EXPORT_SYMBOL vmlinux 0x7e3191f6 try_to_del_timer_sync +EXPORT_SYMBOL vmlinux 0x7e32e7c7 irq_stat +EXPORT_SYMBOL vmlinux 0x7e3a322e poll_initwait +EXPORT_SYMBOL vmlinux 0x7e42735b flow_rule_match_icmp +EXPORT_SYMBOL vmlinux 0x7e4e952e scsi_command_normalize_sense +EXPORT_SYMBOL vmlinux 0x7e58ebe5 md_bitmap_cond_end_sync +EXPORT_SYMBOL vmlinux 0x7e7599e2 fb_show_logo +EXPORT_SYMBOL vmlinux 0x7e986abe try_wait_for_completion +EXPORT_SYMBOL vmlinux 0x7ea1ed5d pci_write_vpd +EXPORT_SYMBOL vmlinux 0x7eba766f __netlink_ns_capable +EXPORT_SYMBOL vmlinux 0x7ed465e8 __cleancache_init_shared_fs +EXPORT_SYMBOL vmlinux 0x7ed938a7 of_match_node +EXPORT_SYMBOL vmlinux 0x7ee526c3 phy_drivers_unregister +EXPORT_SYMBOL vmlinux 0x7ee70d0c md_bitmap_endwrite +EXPORT_SYMBOL vmlinux 0x7f02188f __msecs_to_jiffies +EXPORT_SYMBOL vmlinux 0x7f03b6a9 crc_ccitt_table +EXPORT_SYMBOL vmlinux 0x7f24de73 jiffies_to_usecs +EXPORT_SYMBOL vmlinux 0x7f304b27 ZSTD_DStreamWorkspaceBound +EXPORT_SYMBOL vmlinux 0x7f3e0b3c page_mapping +EXPORT_SYMBOL vmlinux 0x7f5b4fe4 sg_free_table +EXPORT_SYMBOL vmlinux 0x7f63b31e _memcpy_toio +EXPORT_SYMBOL vmlinux 0x7f732467 d_alloc +EXPORT_SYMBOL vmlinux 0x7f7f7bb4 irq_poll_disable +EXPORT_SYMBOL vmlinux 0x7fa25934 d_instantiate +EXPORT_SYMBOL vmlinux 0x7fbddd03 page_pool_update_nid +EXPORT_SYMBOL vmlinux 0x7fc41029 page_readlink +EXPORT_SYMBOL vmlinux 0x7fdc518d icmp_ndo_send +EXPORT_SYMBOL vmlinux 0x7fde2edb vme_master_read +EXPORT_SYMBOL vmlinux 0x7fe2d9d3 get_cached_acl +EXPORT_SYMBOL vmlinux 0x7fe32873 rb_replace_node +EXPORT_SYMBOL vmlinux 0x7fe35678 register_sound_special_device +EXPORT_SYMBOL vmlinux 0x800c499e inet_dev_addr_type +EXPORT_SYMBOL vmlinux 0x800e4ffa __muldi3 +EXPORT_SYMBOL vmlinux 0x80108291 amba_driver_register +EXPORT_SYMBOL vmlinux 0x80224041 kernel_sock_ip_overhead +EXPORT_SYMBOL vmlinux 0x80285051 fb_prepare_logo +EXPORT_SYMBOL vmlinux 0x802921eb dquot_get_state +EXPORT_SYMBOL vmlinux 0x8032a69d ip_mc_inc_group +EXPORT_SYMBOL vmlinux 0x8039b3fd _totalram_pages +EXPORT_SYMBOL vmlinux 0x803ddbb6 __posix_acl_create +EXPORT_SYMBOL vmlinux 0x806b4311 sk_stream_error +EXPORT_SYMBOL vmlinux 0x80717fb8 dquot_file_open +EXPORT_SYMBOL vmlinux 0x807a94cf file_path +EXPORT_SYMBOL vmlinux 0x80862fec input_register_handler +EXPORT_SYMBOL vmlinux 0x808bc8e3 param_set_bool +EXPORT_SYMBOL vmlinux 0x80910f9d snd_device_free +EXPORT_SYMBOL vmlinux 0x8092c0a5 mmc_retune_release +EXPORT_SYMBOL vmlinux 0x8096b0d4 phy_write_paged +EXPORT_SYMBOL vmlinux 0x809ca8c4 __pci_register_driver +EXPORT_SYMBOL vmlinux 0x80c4c319 crc32_le +EXPORT_SYMBOL vmlinux 0x80ca5026 _bin2bcd +EXPORT_SYMBOL vmlinux 0x80d0027a con_set_default_unimap +EXPORT_SYMBOL vmlinux 0x80d68d3e fb_register_client +EXPORT_SYMBOL vmlinux 0x80d9b7ba do_splice_direct +EXPORT_SYMBOL vmlinux 0x80f2b487 of_device_is_available +EXPORT_SYMBOL vmlinux 0x80fff45a mmc_release_host +EXPORT_SYMBOL vmlinux 0x8108ac7a down_read_trylock +EXPORT_SYMBOL vmlinux 0x8112b3d2 scsi_build_sense_buffer +EXPORT_SYMBOL vmlinux 0x81253acf tcp_md5_hash_key +EXPORT_SYMBOL vmlinux 0x8149cf57 skb_orphan_partial +EXPORT_SYMBOL vmlinux 0x815b5dd4 match_octal +EXPORT_SYMBOL vmlinux 0x81690a2d check_disk_change +EXPORT_SYMBOL vmlinux 0x8182e53a simple_unlink +EXPORT_SYMBOL vmlinux 0x81831d5e nd_namespace_blk_validate +EXPORT_SYMBOL vmlinux 0x818416e1 scsi_set_sense_information +EXPORT_SYMBOL vmlinux 0x818edf97 cpm_muram_alloc +EXPORT_SYMBOL vmlinux 0x8192c88a input_set_keycode +EXPORT_SYMBOL vmlinux 0x8194da1c pm860x_bulk_read +EXPORT_SYMBOL vmlinux 0x81a1b66d vfs_iocb_iter_read +EXPORT_SYMBOL vmlinux 0x81a2fc86 pci_alloc_dev +EXPORT_SYMBOL vmlinux 0x81a511a8 dev_mc_init +EXPORT_SYMBOL vmlinux 0x81b91dde fifo_set_limit +EXPORT_SYMBOL vmlinux 0x81c5544e wait_for_completion_killable +EXPORT_SYMBOL vmlinux 0x81c7985f generic_file_direct_write +EXPORT_SYMBOL vmlinux 0x81d28c48 ndo_dflt_fdb_add +EXPORT_SYMBOL vmlinux 0x81db6ebb xz_dec_reset +EXPORT_SYMBOL vmlinux 0x81e6b37f dmi_get_system_info +EXPORT_SYMBOL vmlinux 0x81ee4df6 xfrm_state_register_afinfo +EXPORT_SYMBOL vmlinux 0x82072614 tasklet_kill +EXPORT_SYMBOL vmlinux 0x820a7ed3 skb_dequeue +EXPORT_SYMBOL vmlinux 0x822137e2 arm_heavy_mb +EXPORT_SYMBOL vmlinux 0x823031be mpage_writepages +EXPORT_SYMBOL vmlinux 0x823764d5 mroute6_is_socket +EXPORT_SYMBOL vmlinux 0x8238141c mmc_can_gpio_cd +EXPORT_SYMBOL vmlinux 0x823ae819 write_dirty_buffer +EXPORT_SYMBOL vmlinux 0x824a4367 tmio_core_mmc_pwr +EXPORT_SYMBOL vmlinux 0x826abd29 tcp_release_cb +EXPORT_SYMBOL vmlinux 0x82706a6b inode_set_bytes +EXPORT_SYMBOL vmlinux 0x828062b1 __frontswap_init +EXPORT_SYMBOL vmlinux 0x82a1c87e security_binder_set_context_mgr +EXPORT_SYMBOL vmlinux 0x82a63b9d xfrm_unregister_type +EXPORT_SYMBOL vmlinux 0x82c5f39d dump_emit +EXPORT_SYMBOL vmlinux 0x82cc6cf5 twl6040_get_vibralr_status +EXPORT_SYMBOL vmlinux 0x82d1a026 vfs_fsync_range +EXPORT_SYMBOL vmlinux 0x82d5e70e blk_queue_io_min +EXPORT_SYMBOL vmlinux 0x82e53743 configfs_unregister_subsystem +EXPORT_SYMBOL vmlinux 0x82f30d76 xfrm_trans_queue_net +EXPORT_SYMBOL vmlinux 0x82f886a1 ZSTD_findFrameCompressedSize +EXPORT_SYMBOL vmlinux 0x82fe2d99 nf_unregister_net_hooks +EXPORT_SYMBOL vmlinux 0x83111cb7 dev_getbyhwaddr_rcu +EXPORT_SYMBOL vmlinux 0x8320bea8 __umodsi3 +EXPORT_SYMBOL vmlinux 0x83297ce3 sync_filesystem +EXPORT_SYMBOL vmlinux 0x8347039f xfrm_state_free +EXPORT_SYMBOL vmlinux 0x83495f80 netdev_boot_setup_check +EXPORT_SYMBOL vmlinux 0x8351f2dc seqno_fence_ops +EXPORT_SYMBOL vmlinux 0x83581089 gf128mul_init_4k_lle +EXPORT_SYMBOL vmlinux 0x835f3d76 xp_raw_get_data +EXPORT_SYMBOL vmlinux 0x8377fc0d down_write_killable +EXPORT_SYMBOL vmlinux 0x83827014 md_bitmap_start_sync +EXPORT_SYMBOL vmlinux 0x838d0016 max8925_reg_read +EXPORT_SYMBOL vmlinux 0x838d2bc8 siphash_3u32 +EXPORT_SYMBOL vmlinux 0x83c52fba xfrm4_protocol_init +EXPORT_SYMBOL vmlinux 0x83cd0e6f atomic_io_modify +EXPORT_SYMBOL vmlinux 0x83e9f161 jbd2_journal_check_used_features +EXPORT_SYMBOL vmlinux 0x840342c6 sgl_free +EXPORT_SYMBOL vmlinux 0x840b4830 uart_update_timeout +EXPORT_SYMBOL vmlinux 0x84184598 xfrm_state_unregister_afinfo +EXPORT_SYMBOL vmlinux 0x841a2d87 dma_direct_sync_single_for_device +EXPORT_SYMBOL vmlinux 0x84246792 nf_log_packet +EXPORT_SYMBOL vmlinux 0x84286527 flow_rule_match_basic +EXPORT_SYMBOL vmlinux 0x8429b312 mipi_dsi_dcs_get_power_mode +EXPORT_SYMBOL vmlinux 0x8431eaea __nla_reserve_nohdr +EXPORT_SYMBOL vmlinux 0x8432d4df netdev_bonding_info_change +EXPORT_SYMBOL vmlinux 0x84330317 kmem_cache_shrink +EXPORT_SYMBOL vmlinux 0x84453f80 adjust_managed_page_count +EXPORT_SYMBOL vmlinux 0x8456e9a7 xa_erase +EXPORT_SYMBOL vmlinux 0x846eb887 copy_page_to_iter +EXPORT_SYMBOL vmlinux 0x847326b7 mmc_cqe_request_done +EXPORT_SYMBOL vmlinux 0x847f1f7b iov_iter_alignment +EXPORT_SYMBOL vmlinux 0x84b183ae strncmp +EXPORT_SYMBOL vmlinux 0x84f80644 of_find_i2c_adapter_by_node +EXPORT_SYMBOL vmlinux 0x851c2938 param_get_ulong +EXPORT_SYMBOL vmlinux 0x85267b61 input_set_capability +EXPORT_SYMBOL vmlinux 0x8537938e __scsi_add_device +EXPORT_SYMBOL vmlinux 0x85382aba of_parse_phandle +EXPORT_SYMBOL vmlinux 0x8544d004 blk_queue_max_segment_size +EXPORT_SYMBOL vmlinux 0x854b7a44 setattr_prepare +EXPORT_SYMBOL vmlinux 0x854e9742 tcp_disconnect +EXPORT_SYMBOL vmlinux 0x8565ac71 qdisc_offload_graft_helper +EXPORT_SYMBOL vmlinux 0x85670f1d rtnl_is_locked +EXPORT_SYMBOL vmlinux 0x8582ebff cpu_all_bits +EXPORT_SYMBOL vmlinux 0x858b468e sock_set_keepalive +EXPORT_SYMBOL vmlinux 0x858ed16f cad_pid +EXPORT_SYMBOL vmlinux 0x8591d7d5 ledtrig_mtd_activity +EXPORT_SYMBOL vmlinux 0x85971188 of_platform_bus_probe +EXPORT_SYMBOL vmlinux 0x85b5e625 rfkill_set_states +EXPORT_SYMBOL vmlinux 0x85bd1608 __request_region +EXPORT_SYMBOL vmlinux 0x85bdd7e7 seq_file_path +EXPORT_SYMBOL vmlinux 0x85d16059 get_unmapped_area +EXPORT_SYMBOL vmlinux 0x85dded0e xfrm_policy_insert +EXPORT_SYMBOL vmlinux 0x85df9b6c strsep +EXPORT_SYMBOL vmlinux 0x85efc7e0 zero_pfn +EXPORT_SYMBOL vmlinux 0x85f14c94 simple_release_fs +EXPORT_SYMBOL vmlinux 0x85fbc931 slhc_uncompress +EXPORT_SYMBOL vmlinux 0x8601959d genphy_write_mmd_unsupported +EXPORT_SYMBOL vmlinux 0x8604b2f1 single_release +EXPORT_SYMBOL vmlinux 0x860f7fde ps2_begin_command +EXPORT_SYMBOL vmlinux 0x862bc663 memset16 +EXPORT_SYMBOL vmlinux 0x862cdf4b jbd2_journal_unlock_updates +EXPORT_SYMBOL vmlinux 0x8631dd65 __skb_checksum_complete_head +EXPORT_SYMBOL vmlinux 0x86332725 __stack_chk_fail +EXPORT_SYMBOL vmlinux 0x863a276a color_table +EXPORT_SYMBOL vmlinux 0x863e374c buffer_check_dirty_writeback +EXPORT_SYMBOL vmlinux 0x865029ac __hw_addr_sync +EXPORT_SYMBOL vmlinux 0x8654c948 security_path_rename +EXPORT_SYMBOL vmlinux 0x8668fb82 bdi_put +EXPORT_SYMBOL vmlinux 0x8675f169 snd_dma_free_pages +EXPORT_SYMBOL vmlinux 0x867db10e pmem_should_map_pages +EXPORT_SYMBOL vmlinux 0x8681d808 unpin_user_pages_dirty_lock +EXPORT_SYMBOL vmlinux 0x86830973 dev_get_stats +EXPORT_SYMBOL vmlinux 0x868acba5 get_options +EXPORT_SYMBOL vmlinux 0x868dc758 sock_set_reuseaddr +EXPORT_SYMBOL vmlinux 0x868ddb49 pcim_enable_device +EXPORT_SYMBOL vmlinux 0x8690a16d flow_rule_match_ip +EXPORT_SYMBOL vmlinux 0x86936b97 pcim_iounmap +EXPORT_SYMBOL vmlinux 0x86ad6737 mipi_dsi_dcs_set_tear_on +EXPORT_SYMBOL vmlinux 0x86ae4384 vlan_vids_add_by_dev +EXPORT_SYMBOL vmlinux 0x86bcb351 vfs_readlink +EXPORT_SYMBOL vmlinux 0x86d52ba5 lookup_constant +EXPORT_SYMBOL vmlinux 0x86e1e303 dev_load +EXPORT_SYMBOL vmlinux 0x86e525c6 mdiobus_unregister +EXPORT_SYMBOL vmlinux 0x86eb0c08 proc_dointvec +EXPORT_SYMBOL vmlinux 0x86eb61f0 input_get_poll_interval +EXPORT_SYMBOL vmlinux 0x86fb9b05 bitmap_parse_user +EXPORT_SYMBOL vmlinux 0x870d5a1c __init_swait_queue_head +EXPORT_SYMBOL vmlinux 0x8710c5b2 pci_unmap_rom +EXPORT_SYMBOL vmlinux 0x87228cd0 seq_dentry +EXPORT_SYMBOL vmlinux 0x872a1103 try_to_free_buffers +EXPORT_SYMBOL vmlinux 0x8737fbd6 mr_table_alloc +EXPORT_SYMBOL vmlinux 0x874c3e4b tcp_prot +EXPORT_SYMBOL vmlinux 0x8769c169 serio_unregister_driver +EXPORT_SYMBOL vmlinux 0x876f3e83 tcp_getsockopt +EXPORT_SYMBOL vmlinux 0x8792c081 tty_port_alloc_xmit_buf +EXPORT_SYMBOL vmlinux 0x8799d063 generic_write_checks +EXPORT_SYMBOL vmlinux 0x87a610a2 dump_page +EXPORT_SYMBOL vmlinux 0x87b843af tcf_idrinfo_destroy +EXPORT_SYMBOL vmlinux 0x87b8798d sg_next +EXPORT_SYMBOL vmlinux 0x87c69a46 scsi_remove_target +EXPORT_SYMBOL vmlinux 0x87ccbbe7 sync_inodes_sb +EXPORT_SYMBOL vmlinux 0x87ccd779 devm_kvasprintf +EXPORT_SYMBOL vmlinux 0x87da834a jbd2_transaction_committed +EXPORT_SYMBOL vmlinux 0x87dd8234 pci_write_config_byte +EXPORT_SYMBOL vmlinux 0x87fc9d10 request_key_tag +EXPORT_SYMBOL vmlinux 0x87ff97a1 jbd2_journal_invalidatepage +EXPORT_SYMBOL vmlinux 0x88038e57 blk_queue_max_hw_sectors +EXPORT_SYMBOL vmlinux 0x8812621a param_get_long +EXPORT_SYMBOL vmlinux 0x881bad5e phy_mipi_dphy_config_validate +EXPORT_SYMBOL vmlinux 0x88313de8 scsi_change_queue_depth +EXPORT_SYMBOL vmlinux 0x88365570 __inode_add_bytes +EXPORT_SYMBOL vmlinux 0x883ba150 dev_set_alias +EXPORT_SYMBOL vmlinux 0x8867e530 __inet_stream_connect +EXPORT_SYMBOL vmlinux 0x88822d38 unregister_blocking_lsm_notifier +EXPORT_SYMBOL vmlinux 0x889aec17 snd_pcm_open_substream +EXPORT_SYMBOL vmlinux 0x889f432e blk_integrity_merge_bio +EXPORT_SYMBOL vmlinux 0x88a092a8 crypto_sha256_finup +EXPORT_SYMBOL vmlinux 0x88b02a28 load_nls +EXPORT_SYMBOL vmlinux 0x88b19f45 system_serial +EXPORT_SYMBOL vmlinux 0x88bf53a7 qdisc_offload_dump_helper +EXPORT_SYMBOL vmlinux 0x88bf58a6 fscrypt_fname_alloc_buffer +EXPORT_SYMBOL vmlinux 0x88c4b827 __cleancache_put_page +EXPORT_SYMBOL vmlinux 0x88db9f48 __check_object_size +EXPORT_SYMBOL vmlinux 0x88dbc808 devm_mfd_add_devices +EXPORT_SYMBOL vmlinux 0x88e1d0f0 page_frag_free +EXPORT_SYMBOL vmlinux 0x8904c312 filp_close +EXPORT_SYMBOL vmlinux 0x891e42a6 snd_timer_close +EXPORT_SYMBOL vmlinux 0x89278a03 sock_create +EXPORT_SYMBOL vmlinux 0x89305059 kfree_skb +EXPORT_SYMBOL vmlinux 0x89405259 generic_remap_file_range_prep +EXPORT_SYMBOL vmlinux 0x89631df0 fuse_dequeue_forget +EXPORT_SYMBOL vmlinux 0x896fe1f9 mark_buffer_async_write +EXPORT_SYMBOL vmlinux 0x8971940d twl6040_set_bits +EXPORT_SYMBOL vmlinux 0x8973064e posix_lock_file +EXPORT_SYMBOL vmlinux 0x89837e54 inet_bind +EXPORT_SYMBOL vmlinux 0x8984f1fd netif_carrier_off +EXPORT_SYMBOL vmlinux 0x8997620c generic_copy_file_range +EXPORT_SYMBOL vmlinux 0x89ab3f68 pci_scan_bridge +EXPORT_SYMBOL vmlinux 0x89aefcb2 tty_port_block_til_ready +EXPORT_SYMBOL vmlinux 0x89b49e1b qdisc_watchdog_init_clockid +EXPORT_SYMBOL vmlinux 0x89dad2f6 tcp_parse_options +EXPORT_SYMBOL vmlinux 0x8a0b8729 get_user_pages_remote +EXPORT_SYMBOL vmlinux 0x8a3784dc __xa_alloc +EXPORT_SYMBOL vmlinux 0x8a3b1285 __xa_erase +EXPORT_SYMBOL vmlinux 0x8a490c90 rfkill_set_sw_state +EXPORT_SYMBOL vmlinux 0x8a4fa83b __aeabi_llsr +EXPORT_SYMBOL vmlinux 0x8a641973 cdrom_mode_select +EXPORT_SYMBOL vmlinux 0x8a6b25c5 ip_sock_set_recverr +EXPORT_SYMBOL vmlinux 0x8a7d1c31 high_memory +EXPORT_SYMBOL vmlinux 0x8a948f27 __nla_parse +EXPORT_SYMBOL vmlinux 0x8a99a016 mempool_free_slab +EXPORT_SYMBOL vmlinux 0x8aa30959 ZSTD_decompressDCtx +EXPORT_SYMBOL vmlinux 0x8aa42116 simple_get_link +EXPORT_SYMBOL vmlinux 0x8ac24c68 ip_check_defrag +EXPORT_SYMBOL vmlinux 0x8ac3334b net_dim_get_def_rx_moderation +EXPORT_SYMBOL vmlinux 0x8ad049bc take_dentry_name_snapshot +EXPORT_SYMBOL vmlinux 0x8ae6270d tcp_check_req +EXPORT_SYMBOL vmlinux 0x8afe0b59 dma_resv_copy_fences +EXPORT_SYMBOL vmlinux 0x8afe8cf0 gnet_stats_copy_queue +EXPORT_SYMBOL vmlinux 0x8afef503 pcibios_fixup_bus +EXPORT_SYMBOL vmlinux 0x8b0088d1 LZ4_decompress_safe_usingDict +EXPORT_SYMBOL vmlinux 0x8b2cefab blk_get_queue +EXPORT_SYMBOL vmlinux 0x8b3431f3 nvm_unregister_tgt_type +EXPORT_SYMBOL vmlinux 0x8b5a164d xfrm_spd_getinfo +EXPORT_SYMBOL vmlinux 0x8b5c5dea tcf_action_update_stats +EXPORT_SYMBOL vmlinux 0x8b618d08 overflowuid +EXPORT_SYMBOL vmlinux 0x8b67775a snd_unregister_device +EXPORT_SYMBOL vmlinux 0x8b71938c cros_ec_check_result +EXPORT_SYMBOL vmlinux 0x8b71fd9a dev_get_by_index +EXPORT_SYMBOL vmlinux 0x8b7258df phy_device_remove +EXPORT_SYMBOL vmlinux 0x8b8059bd in_group_p +EXPORT_SYMBOL vmlinux 0x8b8ab00e clear_page_dirty_for_io +EXPORT_SYMBOL vmlinux 0x8b910be2 errseq_sample +EXPORT_SYMBOL vmlinux 0x8b97d3d2 phy_find_first +EXPORT_SYMBOL vmlinux 0x8b9ea582 ZSTD_copyDCtx +EXPORT_SYMBOL vmlinux 0x8bb8cc5a pci_read_config_word +EXPORT_SYMBOL vmlinux 0x8bc99b1b d_splice_alias +EXPORT_SYMBOL vmlinux 0x8bd01817 d_delete +EXPORT_SYMBOL vmlinux 0x8bd6feca twl6040_get_pll +EXPORT_SYMBOL vmlinux 0x8be189ab ucc_slow_disable +EXPORT_SYMBOL vmlinux 0x8bee75d7 proc_dostring +EXPORT_SYMBOL vmlinux 0x8c4c4c3f dqput +EXPORT_SYMBOL vmlinux 0x8c592110 eth_header_parse_protocol +EXPORT_SYMBOL vmlinux 0x8c5d254a dma_fence_array_ops +EXPORT_SYMBOL vmlinux 0x8c623e8c skb_checksum +EXPORT_SYMBOL vmlinux 0x8c67fa6a qdisc_put_unlocked +EXPORT_SYMBOL vmlinux 0x8c685c23 uart_remove_one_port +EXPORT_SYMBOL vmlinux 0x8c6bf651 flow_block_cb_is_busy +EXPORT_SYMBOL vmlinux 0x8c6d0b22 _copy_from_iter_full_nocache +EXPORT_SYMBOL vmlinux 0x8c8950a7 mount_bdev +EXPORT_SYMBOL vmlinux 0x8c8dfac9 ps2_cmd_aborted +EXPORT_SYMBOL vmlinux 0x8ca41b9b register_netdevice_notifier_net +EXPORT_SYMBOL vmlinux 0x8ca43791 tc6393xb_lcd_mode +EXPORT_SYMBOL vmlinux 0x8cbc614a cpufreq_generic_suspend +EXPORT_SYMBOL vmlinux 0x8cc53d20 __par_io_config_pin +EXPORT_SYMBOL vmlinux 0x8cd8c339 omap_free_dma +EXPORT_SYMBOL vmlinux 0x8ce13cc5 udplite_table +EXPORT_SYMBOL vmlinux 0x8d0404a1 key_task_permission +EXPORT_SYMBOL vmlinux 0x8d051bd4 jbd2_trans_will_send_data_barrier +EXPORT_SYMBOL vmlinux 0x8d0e0555 no_seek_end_llseek +EXPORT_SYMBOL vmlinux 0x8d2123ac __netif_schedule +EXPORT_SYMBOL vmlinux 0x8d2aad25 phy_support_asym_pause +EXPORT_SYMBOL vmlinux 0x8d2d8a46 jbd2_journal_blocks_per_page +EXPORT_SYMBOL vmlinux 0x8d2eb950 freeze_bdev +EXPORT_SYMBOL vmlinux 0x8d53df83 vfs_statfs +EXPORT_SYMBOL vmlinux 0x8d55bb8a qid_eq +EXPORT_SYMBOL vmlinux 0x8d6ce7be get_vm_area +EXPORT_SYMBOL vmlinux 0x8d6dc41a register_shrinker +EXPORT_SYMBOL vmlinux 0x8d73278e hex_asc_upper +EXPORT_SYMBOL vmlinux 0x8d79ba03 tty_unregister_device +EXPORT_SYMBOL vmlinux 0x8d7cb9dd snd_ctl_find_id +EXPORT_SYMBOL vmlinux 0x8d9a917f udp6_set_csum +EXPORT_SYMBOL vmlinux 0x8da12741 jbd2_journal_try_to_free_buffers +EXPORT_SYMBOL vmlinux 0x8dae0dfc neigh_changeaddr +EXPORT_SYMBOL vmlinux 0x8dc47517 blk_queue_chunk_sectors +EXPORT_SYMBOL vmlinux 0x8dc85b3e phy_disconnect +EXPORT_SYMBOL vmlinux 0x8dd1b484 phy_mac_interrupt +EXPORT_SYMBOL vmlinux 0x8ddd8aad schedule_timeout +EXPORT_SYMBOL vmlinux 0x8df3789f snd_oss_info_register +EXPORT_SYMBOL vmlinux 0x8df4afd9 qe_put_snum +EXPORT_SYMBOL vmlinux 0x8df86a97 md_register_thread +EXPORT_SYMBOL vmlinux 0x8df9c6e8 vme_slave_request +EXPORT_SYMBOL vmlinux 0x8df9dd10 guid_null +EXPORT_SYMBOL vmlinux 0x8dfefc0d kvmalloc_node +EXPORT_SYMBOL vmlinux 0x8e08f37e tcp_set_rcvlowat +EXPORT_SYMBOL vmlinux 0x8e116a88 on_each_cpu_mask +EXPORT_SYMBOL vmlinux 0x8e193b73 pci_bus_size_bridges +EXPORT_SYMBOL vmlinux 0x8e359e37 phy_aneg_done +EXPORT_SYMBOL vmlinux 0x8e362158 snd_timer_continue +EXPORT_SYMBOL vmlinux 0x8e4c60a3 cpm_muram_dma +EXPORT_SYMBOL vmlinux 0x8e590e36 devm_alloc_etherdev_mqs +EXPORT_SYMBOL vmlinux 0x8e865d3c arm_delay_ops +EXPORT_SYMBOL vmlinux 0x8e876807 rps_needed +EXPORT_SYMBOL vmlinux 0x8e93bd24 security_secctx_to_secid +EXPORT_SYMBOL vmlinux 0x8ecbb3b8 nand_check_erased_ecc_chunk +EXPORT_SYMBOL vmlinux 0x8ece9097 zpool_register_driver +EXPORT_SYMBOL vmlinux 0x8edbfffb hdmi_spd_infoframe_pack_only +EXPORT_SYMBOL vmlinux 0x8ee0f5a8 inet_gso_segment +EXPORT_SYMBOL vmlinux 0x8eea1829 should_remove_suid +EXPORT_SYMBOL vmlinux 0x8f01afd6 twl6030_interrupt_mask +EXPORT_SYMBOL vmlinux 0x8f1077f4 padata_free +EXPORT_SYMBOL vmlinux 0x8f3625fe _raw_spin_unlock_bh +EXPORT_SYMBOL vmlinux 0x8f43d7fb inet_sk_rx_dst_set +EXPORT_SYMBOL vmlinux 0x8f528411 netdev_get_xmit_slave +EXPORT_SYMBOL vmlinux 0x8f580bd2 snd_pcm_hw_param_last +EXPORT_SYMBOL vmlinux 0x8f595b11 snd_major +EXPORT_SYMBOL vmlinux 0x8f678b07 __stack_chk_guard +EXPORT_SYMBOL vmlinux 0x8f8a3b48 tty_hung_up_p +EXPORT_SYMBOL vmlinux 0x8f8f657f bsearch +EXPORT_SYMBOL vmlinux 0x8f996a30 ethtool_convert_legacy_u32_to_link_mode +EXPORT_SYMBOL vmlinux 0x8fc08fa2 __bforget +EXPORT_SYMBOL vmlinux 0x8fcb0492 dev_change_proto_down_generic +EXPORT_SYMBOL vmlinux 0x8fd180e7 kernel_neon_begin +EXPORT_SYMBOL vmlinux 0x8fd50c3a flow_rule_match_enc_ipv6_addrs +EXPORT_SYMBOL vmlinux 0x8fd8aa49 amba_request_regions +EXPORT_SYMBOL vmlinux 0x8fe1d96e __skb_flow_dissect +EXPORT_SYMBOL vmlinux 0x8fe35457 xxh32_update +EXPORT_SYMBOL vmlinux 0x8ff89ed0 seg6_hmac_exit +EXPORT_SYMBOL vmlinux 0x8ffbdba9 blk_limits_io_min +EXPORT_SYMBOL vmlinux 0x900028b9 ps2_handle_response +EXPORT_SYMBOL vmlinux 0x9000457f dev_set_promiscuity +EXPORT_SYMBOL vmlinux 0x9001f517 vfs_get_fsid +EXPORT_SYMBOL vmlinux 0x900b2aa0 __dev_set_mtu +EXPORT_SYMBOL vmlinux 0x900b5f7b snd_pcm_lib_preallocate_pages_for_all +EXPORT_SYMBOL vmlinux 0x9010797a dec_node_page_state +EXPORT_SYMBOL vmlinux 0x90110295 inet_offloads +EXPORT_SYMBOL vmlinux 0x9015ea02 input_get_timestamp +EXPORT_SYMBOL vmlinux 0x902d8722 vme_slave_get +EXPORT_SYMBOL vmlinux 0x90332bf1 jbd2_journal_get_create_access +EXPORT_SYMBOL vmlinux 0x90351e73 __brelse +EXPORT_SYMBOL vmlinux 0x904893eb arp_create +EXPORT_SYMBOL vmlinux 0x9054ee54 ethtool_intersect_link_masks +EXPORT_SYMBOL vmlinux 0x905f55b9 __lock_buffer +EXPORT_SYMBOL vmlinux 0x906f5252 dma_fence_enable_sw_signaling +EXPORT_SYMBOL vmlinux 0x907c12b0 devm_memunmap +EXPORT_SYMBOL vmlinux 0x90929439 find_get_pages_range_tag +EXPORT_SYMBOL vmlinux 0x909332ca register_sysctl +EXPORT_SYMBOL vmlinux 0x90b091a3 dev_pm_opp_register_notifier +EXPORT_SYMBOL vmlinux 0x90c5e819 kstrtoll_from_user +EXPORT_SYMBOL vmlinux 0x90cce472 nf_log_register +EXPORT_SYMBOL vmlinux 0x90da7a3c file_remove_privs +EXPORT_SYMBOL vmlinux 0x90db9057 send_sig +EXPORT_SYMBOL vmlinux 0x90f0dd8c fb_blank +EXPORT_SYMBOL vmlinux 0x910096b6 ZSTD_compressEnd +EXPORT_SYMBOL vmlinux 0x91028c62 max8998_update_reg +EXPORT_SYMBOL vmlinux 0x91106a55 param_get_int +EXPORT_SYMBOL vmlinux 0x91150ca0 seq_release_private +EXPORT_SYMBOL vmlinux 0x912cc35c devm_nvmem_unregister +EXPORT_SYMBOL vmlinux 0x912dd348 tcf_exts_num_actions +EXPORT_SYMBOL vmlinux 0x912f3deb __xfrm_init_state +EXPORT_SYMBOL vmlinux 0x9132d063 devm_devfreq_register_notifier +EXPORT_SYMBOL vmlinux 0x9135dba6 wait_for_completion_interruptible_timeout +EXPORT_SYMBOL vmlinux 0x9162b1b3 sock_wfree +EXPORT_SYMBOL vmlinux 0x9166559f unregister_netdevice_notifier_dev_net +EXPORT_SYMBOL vmlinux 0x9183de96 __neigh_create +EXPORT_SYMBOL vmlinux 0x919029aa __readwrite_bug +EXPORT_SYMBOL vmlinux 0x919c58f3 __clzsi2 +EXPORT_SYMBOL vmlinux 0x91a56476 tcp_enter_quickack_mode +EXPORT_SYMBOL vmlinux 0x91a7b1da qdisc_class_hash_remove +EXPORT_SYMBOL vmlinux 0x91c0980e icst_hz +EXPORT_SYMBOL vmlinux 0x91d2a835 fbcon_update_vcs +EXPORT_SYMBOL vmlinux 0x91dda666 fb_set_cmap +EXPORT_SYMBOL vmlinux 0x91ecbbf6 skb_abort_seq_read +EXPORT_SYMBOL vmlinux 0x9201a7a7 request_firmware_into_buf +EXPORT_SYMBOL vmlinux 0x9206cba1 d_obtain_alias +EXPORT_SYMBOL vmlinux 0x921b07b1 __cpu_online_mask +EXPORT_SYMBOL vmlinux 0x921d1f48 freezing_slow_path +EXPORT_SYMBOL vmlinux 0x92207c3c security_sb_clone_mnt_opts +EXPORT_SYMBOL vmlinux 0x92299b37 xfrm_find_acq +EXPORT_SYMBOL vmlinux 0x922f45a6 __bitmap_clear +EXPORT_SYMBOL vmlinux 0x923b1276 dmaengine_get +EXPORT_SYMBOL vmlinux 0x923d4be3 eth_get_headlen +EXPORT_SYMBOL vmlinux 0x923ea194 __xa_insert +EXPORT_SYMBOL vmlinux 0x926a92fd scsi_ioctl +EXPORT_SYMBOL vmlinux 0x926ae8f9 abx500_event_registers_startup_state_get +EXPORT_SYMBOL vmlinux 0x926af405 of_find_compatible_node +EXPORT_SYMBOL vmlinux 0x9289ea45 input_mt_report_finger_count +EXPORT_SYMBOL vmlinux 0x928ceb29 __block_write_full_page +EXPORT_SYMBOL vmlinux 0x92adbd6b iov_iter_bvec +EXPORT_SYMBOL vmlinux 0x92b28b06 __starget_for_each_device +EXPORT_SYMBOL vmlinux 0x92b9b180 slash_name +EXPORT_SYMBOL vmlinux 0x92bbd652 __nla_put_64bit +EXPORT_SYMBOL vmlinux 0x92ec510d jiffies64_to_msecs +EXPORT_SYMBOL vmlinux 0x92f0ca73 of_cpu_node_to_id +EXPORT_SYMBOL vmlinux 0x92fa5abb vme_lm_detach +EXPORT_SYMBOL vmlinux 0x9305bf68 find_next_and_bit +EXPORT_SYMBOL vmlinux 0x9305f8e6 cpufreq_get +EXPORT_SYMBOL vmlinux 0x931136b4 iov_iter_advance +EXPORT_SYMBOL vmlinux 0x9312ba9c ppp_unregister_compressor +EXPORT_SYMBOL vmlinux 0x93205967 pipe_unlock +EXPORT_SYMBOL vmlinux 0x93215e1d __kfifo_skip_r +EXPORT_SYMBOL vmlinux 0x932cc3fc dev_uc_init +EXPORT_SYMBOL vmlinux 0x9334b696 do_map_probe +EXPORT_SYMBOL vmlinux 0x93463aeb xfrm_policy_destroy +EXPORT_SYMBOL vmlinux 0x934966df tcp_shutdown +EXPORT_SYMBOL vmlinux 0x935726ee serial8250_set_isa_configurator +EXPORT_SYMBOL vmlinux 0x935a301a xfrm_state_update +EXPORT_SYMBOL vmlinux 0x935f1d3b phy_request_interrupt +EXPORT_SYMBOL vmlinux 0x937733e3 qid_valid +EXPORT_SYMBOL vmlinux 0x937f34af dev_get_by_napi_id +EXPORT_SYMBOL vmlinux 0x939182a1 ip_route_input_noref +EXPORT_SYMBOL vmlinux 0x93a6e0b2 io_schedule +EXPORT_SYMBOL vmlinux 0x93ac9ae3 sdev_disable_disk_events +EXPORT_SYMBOL vmlinux 0x93b3fc74 register_dcbevent_notifier +EXPORT_SYMBOL vmlinux 0x93ca32bd touch_atime +EXPORT_SYMBOL vmlinux 0x93dd696f register_netdevice_notifier_dev_net +EXPORT_SYMBOL vmlinux 0x93edf894 qdisc_create_dflt +EXPORT_SYMBOL vmlinux 0x93f0b01e dev_change_proto_down +EXPORT_SYMBOL vmlinux 0x93fec5f7 devm_extcon_register_notifier_all +EXPORT_SYMBOL vmlinux 0x94098ff8 snd_interval_list +EXPORT_SYMBOL vmlinux 0x9414dfc9 pci_fixup_cardbus +EXPORT_SYMBOL vmlinux 0x941f11f9 eth_header_parse +EXPORT_SYMBOL vmlinux 0x9425caca _raw_write_lock +EXPORT_SYMBOL vmlinux 0x943dc8aa crc32_be +EXPORT_SYMBOL vmlinux 0x9448b3b3 input_register_handle +EXPORT_SYMBOL vmlinux 0x944a564d is_console_locked +EXPORT_SYMBOL vmlinux 0x9460d3f4 mipi_dsi_dcs_set_display_brightness +EXPORT_SYMBOL vmlinux 0x94621e68 dev_pick_tx_zero +EXPORT_SYMBOL vmlinux 0x94961283 vunmap +EXPORT_SYMBOL vmlinux 0x94963282 con_copy_unimap +EXPORT_SYMBOL vmlinux 0x949bf7eb pci_enable_device_mem +EXPORT_SYMBOL vmlinux 0x949c0c8a dma_dummy_ops +EXPORT_SYMBOL vmlinux 0x94ada84a block_commit_write +EXPORT_SYMBOL vmlinux 0x94bf03ca utf8_to_utf32 +EXPORT_SYMBOL vmlinux 0x94d94e4b scsi_device_quiesce +EXPORT_SYMBOL vmlinux 0x94dd2f8a snd_card_register +EXPORT_SYMBOL vmlinux 0x94e16a1e __quota_error +EXPORT_SYMBOL vmlinux 0x94edf350 dm_mq_kick_requeue_list +EXPORT_SYMBOL vmlinux 0x9504fac5 set_device_ro +EXPORT_SYMBOL vmlinux 0x950e55da sock_queue_err_skb +EXPORT_SYMBOL vmlinux 0x95368d33 memcg_kmem_enabled_key +EXPORT_SYMBOL vmlinux 0x9545af6d tasklet_init +EXPORT_SYMBOL vmlinux 0x954f099c idr_preload +EXPORT_SYMBOL vmlinux 0x95513fbf nand_read_oob_std +EXPORT_SYMBOL vmlinux 0x955411d1 skb_mac_gso_segment +EXPORT_SYMBOL vmlinux 0x955cc2a8 down_read_interruptible +EXPORT_SYMBOL vmlinux 0x9569a8e6 create_empty_buffers +EXPORT_SYMBOL vmlinux 0x956c90f1 vfs_statx_fd +EXPORT_SYMBOL vmlinux 0x95722936 ucc_fast_transmit_on_demand +EXPORT_SYMBOL vmlinux 0x957caf9a pci_release_region +EXPORT_SYMBOL vmlinux 0x9587cbac skb_checksum_help +EXPORT_SYMBOL vmlinux 0x958d40c4 neigh_destroy +EXPORT_SYMBOL vmlinux 0x958e2cd7 call_netdevice_notifiers +EXPORT_SYMBOL vmlinux 0x959e0f75 unregister_netdev +EXPORT_SYMBOL vmlinux 0x95a17b59 eth_mac_addr +EXPORT_SYMBOL vmlinux 0x95b7b9e2 netdev_notice +EXPORT_SYMBOL vmlinux 0x95c23573 sock_register +EXPORT_SYMBOL vmlinux 0x95cf77bb tty_port_put +EXPORT_SYMBOL vmlinux 0x95d06dd9 netpoll_send_skb +EXPORT_SYMBOL vmlinux 0x95d3d918 refcount_dec_and_lock_irqsave +EXPORT_SYMBOL vmlinux 0x95dbe078 __get_user_2 +EXPORT_SYMBOL vmlinux 0x95dca82e proc_set_size +EXPORT_SYMBOL vmlinux 0x95ea90b3 mmc_can_discard +EXPORT_SYMBOL vmlinux 0x960c52b4 splice_direct_to_actor +EXPORT_SYMBOL vmlinux 0x9623a1fe ip6_dst_alloc +EXPORT_SYMBOL vmlinux 0x962c4977 clkdev_add +EXPORT_SYMBOL vmlinux 0x9645ed0b pgprot_user +EXPORT_SYMBOL vmlinux 0x964e12f0 dma_resv_fini +EXPORT_SYMBOL vmlinux 0x9653fff1 __dev_get_by_flags +EXPORT_SYMBOL vmlinux 0x96573b80 __kfifo_dma_in_finish_r +EXPORT_SYMBOL vmlinux 0x9659338b vme_slot_num +EXPORT_SYMBOL vmlinux 0x966312fa of_device_unregister +EXPORT_SYMBOL vmlinux 0x9665ef64 blk_set_runtime_active +EXPORT_SYMBOL vmlinux 0x966ad271 nvm_register +EXPORT_SYMBOL vmlinux 0x966afa64 km_policy_notify +EXPORT_SYMBOL vmlinux 0x96898769 sysfs_format_mac +EXPORT_SYMBOL vmlinux 0x96c17136 fb_var_to_videomode +EXPORT_SYMBOL vmlinux 0x96cd2b04 scsi_sense_key_string +EXPORT_SYMBOL vmlinux 0x96d39d0b fscrypt_free_bounce_page +EXPORT_SYMBOL vmlinux 0x96de3069 mod_node_page_state +EXPORT_SYMBOL vmlinux 0x96e7cbcc ip_mc_check_igmp +EXPORT_SYMBOL vmlinux 0x9709dbc5 current_work +EXPORT_SYMBOL vmlinux 0x970b97a3 __sk_receive_skb +EXPORT_SYMBOL vmlinux 0x970cc3ad blkdev_put +EXPORT_SYMBOL vmlinux 0x970e564e t10_pi_type1_crc +EXPORT_SYMBOL vmlinux 0x97106714 memdup_user_nul +EXPORT_SYMBOL vmlinux 0x971a4ef6 nvm_unregister +EXPORT_SYMBOL vmlinux 0x97255bdf strlen +EXPORT_SYMBOL vmlinux 0x972d3208 scsi_dma_unmap +EXPORT_SYMBOL vmlinux 0x9745b613 generic_fillattr +EXPORT_SYMBOL vmlinux 0x974d2ff1 resource_list_create_entry +EXPORT_SYMBOL vmlinux 0x976ea2b8 pcie_capability_clear_and_set_word +EXPORT_SYMBOL vmlinux 0x97733a10 devm_devfreq_add_device +EXPORT_SYMBOL vmlinux 0x9776df93 d_alloc_anon +EXPORT_SYMBOL vmlinux 0x977fc315 inet_get_local_port_range +EXPORT_SYMBOL vmlinux 0x97808501 of_dev_get +EXPORT_SYMBOL vmlinux 0x97934ecf del_timer_sync +EXPORT_SYMBOL vmlinux 0x97999817 rfkill_set_hw_state +EXPORT_SYMBOL vmlinux 0x97adb487 utf8s_to_utf16s +EXPORT_SYMBOL vmlinux 0x97b00c4f mmc_cqe_start_req +EXPORT_SYMBOL vmlinux 0x97bdfa60 scsi_dev_info_remove_list +EXPORT_SYMBOL vmlinux 0x97c6c326 __ip_dev_find +EXPORT_SYMBOL vmlinux 0x97d1cce6 from_kprojid +EXPORT_SYMBOL vmlinux 0x97d80cee devfreq_monitor_suspend +EXPORT_SYMBOL vmlinux 0x97e689d8 xfrm_state_check_expire +EXPORT_SYMBOL vmlinux 0x97f58dbd jbd2_journal_extend +EXPORT_SYMBOL vmlinux 0x97fb48f1 configfs_unregister_group +EXPORT_SYMBOL vmlinux 0x9802a530 inode_needs_sync +EXPORT_SYMBOL vmlinux 0x981c2db3 cfb_copyarea +EXPORT_SYMBOL vmlinux 0x98227112 pci_set_vpd_size +EXPORT_SYMBOL vmlinux 0x983ac031 remove_wait_queue +EXPORT_SYMBOL vmlinux 0x985ce93c bdi_register +EXPORT_SYMBOL vmlinux 0x987c11c7 __pv_phys_pfn_offset +EXPORT_SYMBOL vmlinux 0x98832da8 utf8ncursor +EXPORT_SYMBOL vmlinux 0x989672a9 pps_register_source +EXPORT_SYMBOL vmlinux 0x98a21b5a neigh_proc_dointvec_ms_jiffies +EXPORT_SYMBOL vmlinux 0x98af38df pci_bus_find_capability +EXPORT_SYMBOL vmlinux 0x98b264b5 pci_bus_read_dev_vendor_id +EXPORT_SYMBOL vmlinux 0x98b40014 pneigh_lookup +EXPORT_SYMBOL vmlinux 0x98c89ade security_xfrm_state_alloc +EXPORT_SYMBOL vmlinux 0x98c8c0fa tso_count_descs +EXPORT_SYMBOL vmlinux 0x98d7bc65 blkdev_get_by_path +EXPORT_SYMBOL vmlinux 0x98e508ef ignore_console_lock_warning +EXPORT_SYMBOL vmlinux 0x98e802e5 genl_register_family +EXPORT_SYMBOL vmlinux 0x98f492df cdev_device_add +EXPORT_SYMBOL vmlinux 0x98f5eb7e mdiobus_unregister_device +EXPORT_SYMBOL vmlinux 0x99088b28 mdio_device_register +EXPORT_SYMBOL vmlinux 0x99094fb2 qcom_scm_is_available +EXPORT_SYMBOL vmlinux 0x9912ec32 truncate_inode_pages_final +EXPORT_SYMBOL vmlinux 0x992b88d0 inode_sub_bytes +EXPORT_SYMBOL vmlinux 0x992c70ae of_dev_put +EXPORT_SYMBOL vmlinux 0x992e0096 gnet_stats_copy_basic_hw +EXPORT_SYMBOL vmlinux 0x9939eba0 backlight_unregister_notifier +EXPORT_SYMBOL vmlinux 0x993b03df percpu_counter_add_batch +EXPORT_SYMBOL vmlinux 0x99517682 udp_encap_enable +EXPORT_SYMBOL vmlinux 0x9952e8f1 unregister_cdrom +EXPORT_SYMBOL vmlinux 0x9961223e bdi_alloc +EXPORT_SYMBOL vmlinux 0x996397c7 xsk_umem_consume_tx +EXPORT_SYMBOL vmlinux 0x99669498 dev_addr_flush +EXPORT_SYMBOL vmlinux 0x996829ea swake_up_all +EXPORT_SYMBOL vmlinux 0x9983614b pci_write_config_dword +EXPORT_SYMBOL vmlinux 0x999e8297 vfree +EXPORT_SYMBOL vmlinux 0x99b1df33 xfrm4_rcv_encap +EXPORT_SYMBOL vmlinux 0x99bb8806 memmove +EXPORT_SYMBOL vmlinux 0x99c06907 snd_ctl_add +EXPORT_SYMBOL vmlinux 0x99c95fa5 unregister_sound_special +EXPORT_SYMBOL vmlinux 0x99d472b1 net_dim_get_rx_moderation +EXPORT_SYMBOL vmlinux 0x9a0c3a18 vme_unregister_error_handler +EXPORT_SYMBOL vmlinux 0x9a0c71e3 param_ops_long +EXPORT_SYMBOL vmlinux 0x9a19ec50 make_flow_keys_digest +EXPORT_SYMBOL vmlinux 0x9a1dfd65 strpbrk +EXPORT_SYMBOL vmlinux 0x9a21f127 snd_ctl_unregister_ioctl +EXPORT_SYMBOL vmlinux 0x9a2f0a04 invalidate_bdev +EXPORT_SYMBOL vmlinux 0x9a357610 lock_sock_nested +EXPORT_SYMBOL vmlinux 0x9a5318d4 neigh_seq_stop +EXPORT_SYMBOL vmlinux 0x9a583306 netlbl_bitmap_walk +EXPORT_SYMBOL vmlinux 0x9a5b98b5 d_instantiate_anon +EXPORT_SYMBOL vmlinux 0x9a61259b tcf_exts_terse_dump +EXPORT_SYMBOL vmlinux 0x9a753644 lru_cache_add +EXPORT_SYMBOL vmlinux 0x9a7d39d5 tcf_exts_change +EXPORT_SYMBOL vmlinux 0x9a8318ef v7_coherent_kern_range +EXPORT_SYMBOL vmlinux 0x9a89a7a3 proc_douintvec +EXPORT_SYMBOL vmlinux 0x9a9f54d7 napi_consume_skb +EXPORT_SYMBOL vmlinux 0x9aa9cea4 trace_print_flags_seq_u64 +EXPORT_SYMBOL vmlinux 0x9aaeefce sysctl_nf_log_all_netns +EXPORT_SYMBOL vmlinux 0x9ab16178 seg6_push_hmac +EXPORT_SYMBOL vmlinux 0x9abfbd57 scsi_host_alloc +EXPORT_SYMBOL vmlinux 0x9acb8066 _raw_read_unlock_bh +EXPORT_SYMBOL vmlinux 0x9ad6a864 dquot_release +EXPORT_SYMBOL vmlinux 0x9adab44c tcf_idr_create_from_flags +EXPORT_SYMBOL vmlinux 0x9b013d13 get_user_pages_locked +EXPORT_SYMBOL vmlinux 0x9b08cb71 dcb_ieee_getapp_prio_dscp_mask_map +EXPORT_SYMBOL vmlinux 0x9b128a66 qcom_scm_set_remote_state +EXPORT_SYMBOL vmlinux 0x9b1b6814 i2c_smbus_read_block_data +EXPORT_SYMBOL vmlinux 0x9b1b7306 xxh64 +EXPORT_SYMBOL vmlinux 0x9b2560b9 gf128mul_init_4k_bbe +EXPORT_SYMBOL vmlinux 0x9b33d2b4 mipi_dsi_picture_parameter_set +EXPORT_SYMBOL vmlinux 0x9b33e0d7 unregister_dcbevent_notifier +EXPORT_SYMBOL vmlinux 0x9b3f8f12 nla_put +EXPORT_SYMBOL vmlinux 0x9b420478 utf8_strncasecmp +EXPORT_SYMBOL vmlinux 0x9b496b21 posix_acl_alloc +EXPORT_SYMBOL vmlinux 0x9b5a9e8b filemap_flush +EXPORT_SYMBOL vmlinux 0x9b5c5fe9 mipi_dsi_dcs_write +EXPORT_SYMBOL vmlinux 0x9b5f0256 try_to_writeback_inodes_sb +EXPORT_SYMBOL vmlinux 0x9b5f05e3 generic_shutdown_super +EXPORT_SYMBOL vmlinux 0x9b5f3966 noop_llseek +EXPORT_SYMBOL vmlinux 0x9b6eb137 ksize +EXPORT_SYMBOL vmlinux 0x9b80dbe7 dcb_ieee_getapp_mask +EXPORT_SYMBOL vmlinux 0x9b8b009c nf_ct_attach +EXPORT_SYMBOL vmlinux 0x9b8ce098 seq_hex_dump +EXPORT_SYMBOL vmlinux 0x9bc45420 nf_log_unbind_pf +EXPORT_SYMBOL vmlinux 0x9be4d453 dquot_quotactl_sysfile_ops +EXPORT_SYMBOL vmlinux 0x9be8c1d0 forget_all_cached_acls +EXPORT_SYMBOL vmlinux 0x9beda1b2 __tcp_md5_do_lookup +EXPORT_SYMBOL vmlinux 0x9bf40ee3 __skb_pad +EXPORT_SYMBOL vmlinux 0x9bf512b9 give_up_console +EXPORT_SYMBOL vmlinux 0x9c0366ab snd_timer_open +EXPORT_SYMBOL vmlinux 0x9c1a71b3 nand_bch_init +EXPORT_SYMBOL vmlinux 0x9c2cc473 vc_resize +EXPORT_SYMBOL vmlinux 0x9c32b97e scm_fp_dup +EXPORT_SYMBOL vmlinux 0x9c47e328 phy_stop +EXPORT_SYMBOL vmlinux 0x9c7419dc ZSTD_initDStream_usingDDict +EXPORT_SYMBOL vmlinux 0x9c757530 twl6040_reg_read +EXPORT_SYMBOL vmlinux 0x9c845e93 input_free_device +EXPORT_SYMBOL vmlinux 0x9c9d7347 end_buffer_write_sync +EXPORT_SYMBOL vmlinux 0x9ca694a5 register_mii_tstamp_controller +EXPORT_SYMBOL vmlinux 0x9cab34a6 rfkill_set_led_trigger_name +EXPORT_SYMBOL vmlinux 0x9cbc9c6a nf_register_queue_handler +EXPORT_SYMBOL vmlinux 0x9cc1a8da fs_param_is_u32 +EXPORT_SYMBOL vmlinux 0x9ccf7171 vme_dma_pci_attribute +EXPORT_SYMBOL vmlinux 0x9cdc2c99 filemap_fault +EXPORT_SYMBOL vmlinux 0x9cdfb3f7 sysctl_fb_tunnels_only_for_init_net +EXPORT_SYMBOL vmlinux 0x9ce90824 kernel_param_unlock +EXPORT_SYMBOL vmlinux 0x9d06ac33 free_bucket_spinlocks +EXPORT_SYMBOL vmlinux 0x9d0d6206 unregister_netdevice_notifier +EXPORT_SYMBOL vmlinux 0x9d21ad49 security_sk_classify_flow +EXPORT_SYMBOL vmlinux 0x9d2e7707 unregister_sysrq_key +EXPORT_SYMBOL vmlinux 0x9d31449a jbd2_journal_dirty_metadata +EXPORT_SYMBOL vmlinux 0x9d5cd559 reservation_ww_class +EXPORT_SYMBOL vmlinux 0x9d669763 memcpy +EXPORT_SYMBOL vmlinux 0x9d7ded29 genphy_read_status_fixed +EXPORT_SYMBOL vmlinux 0x9d8dda1f __pagevec_release +EXPORT_SYMBOL vmlinux 0x9d97ab2c audit_log_object_context +EXPORT_SYMBOL vmlinux 0x9d9dff40 backlight_device_get_by_type +EXPORT_SYMBOL vmlinux 0x9da1f4a4 linkwatch_fire_event +EXPORT_SYMBOL vmlinux 0x9dbcc63d skb_free_datagram +EXPORT_SYMBOL vmlinux 0x9dd8d922 drop_nlink +EXPORT_SYMBOL vmlinux 0x9e0c711d vzalloc_node +EXPORT_SYMBOL vmlinux 0x9e0ec162 ZSTD_CStreamOutSize +EXPORT_SYMBOL vmlinux 0x9e0fa5ae hsiphash_3u32 +EXPORT_SYMBOL vmlinux 0x9e13f6f6 gf128mul_lle +EXPORT_SYMBOL vmlinux 0x9e1968ee pci_get_slot +EXPORT_SYMBOL vmlinux 0x9e2fc6e1 tcp_seq_start +EXPORT_SYMBOL vmlinux 0x9e4bbb55 inet_rtx_syn_ack +EXPORT_SYMBOL vmlinux 0x9e4faeef dm_io_client_destroy +EXPORT_SYMBOL vmlinux 0x9e5199c0 par_io_of_config +EXPORT_SYMBOL vmlinux 0x9e61bb05 set_freezable +EXPORT_SYMBOL vmlinux 0x9e67301d rtnl_set_sk_err +EXPORT_SYMBOL vmlinux 0x9e6d79f8 snd_info_get_str +EXPORT_SYMBOL vmlinux 0x9e7bbe22 follow_down_one +EXPORT_SYMBOL vmlinux 0x9e8e7ca8 unregister_key_type +EXPORT_SYMBOL vmlinux 0x9e9a9cb4 trace_print_hex_seq +EXPORT_SYMBOL vmlinux 0x9e9eab95 devcgroup_check_permission +EXPORT_SYMBOL vmlinux 0x9e9fdd9d memunmap +EXPORT_SYMBOL vmlinux 0x9eae434a mmc_get_card +EXPORT_SYMBOL vmlinux 0x9eb45fb7 configfs_depend_item +EXPORT_SYMBOL vmlinux 0x9ec0e639 twl6030_interrupt_unmask +EXPORT_SYMBOL vmlinux 0x9ec67136 proc_set_user +EXPORT_SYMBOL vmlinux 0x9ec6ca96 ktime_get_real_ts64 +EXPORT_SYMBOL vmlinux 0x9ec883b6 abort_creds +EXPORT_SYMBOL vmlinux 0x9ed39a54 down_trylock +EXPORT_SYMBOL vmlinux 0x9ed978de vme_lm_set +EXPORT_SYMBOL vmlinux 0x9eff651f netdev_features_change +EXPORT_SYMBOL vmlinux 0x9f46ced8 __sw_hweight64 +EXPORT_SYMBOL vmlinux 0x9f50b770 keyring_restrict +EXPORT_SYMBOL vmlinux 0x9f54ead7 gro_cells_destroy +EXPORT_SYMBOL vmlinux 0x9f91fb1f bh_submit_read +EXPORT_SYMBOL vmlinux 0x9f984513 strrchr +EXPORT_SYMBOL vmlinux 0x9fa03615 unix_attach_fds +EXPORT_SYMBOL vmlinux 0x9fb1d0ed uuid_is_valid +EXPORT_SYMBOL vmlinux 0x9fc2320b dma_async_tx_descriptor_init +EXPORT_SYMBOL vmlinux 0x9fc56f87 blk_queue_physical_block_size +EXPORT_SYMBOL vmlinux 0x9fdecc31 unregister_netdevice_many +EXPORT_SYMBOL vmlinux 0x9fedba48 page_pool_create +EXPORT_SYMBOL vmlinux 0x9feed7ce timer_reduce +EXPORT_SYMBOL vmlinux 0x9fef8cf5 __kfifo_dma_in_prepare_r +EXPORT_SYMBOL vmlinux 0x9ffa3a75 netdev_max_backlog +EXPORT_SYMBOL vmlinux 0xa00b141f blk_register_region +EXPORT_SYMBOL vmlinux 0xa0133f9a cpumask_any_and_distribute +EXPORT_SYMBOL vmlinux 0xa01fc37e netdev_lower_dev_get_private +EXPORT_SYMBOL vmlinux 0xa0436e98 in6addr_linklocal_allnodes +EXPORT_SYMBOL vmlinux 0xa057ca4d page_zero_new_buffers +EXPORT_SYMBOL vmlinux 0xa057df8f twl_set_regcache_bypass +EXPORT_SYMBOL vmlinux 0xa066413f neigh_ifdown +EXPORT_SYMBOL vmlinux 0xa06df9e1 __kfifo_dma_out_finish_r +EXPORT_SYMBOL vmlinux 0xa071249b scsi_kmap_atomic_sg +EXPORT_SYMBOL vmlinux 0xa07efa33 vme_new_dma_list +EXPORT_SYMBOL vmlinux 0xa084749a __bitmap_or +EXPORT_SYMBOL vmlinux 0xa08a8524 alloc_file_pseudo +EXPORT_SYMBOL vmlinux 0xa095e02e generic_check_addressable +EXPORT_SYMBOL vmlinux 0xa0ae1e73 siphash_3u64 +EXPORT_SYMBOL vmlinux 0xa0aefe3e bit_waitqueue +EXPORT_SYMBOL vmlinux 0xa0b04675 vmalloc_32 +EXPORT_SYMBOL vmlinux 0xa0b0ec01 pci_msi_vec_count +EXPORT_SYMBOL vmlinux 0xa0bfaf5a __mdiobus_read +EXPORT_SYMBOL vmlinux 0xa0c8652d snd_card_disconnect +EXPORT_SYMBOL vmlinux 0xa0d05708 bio_add_page +EXPORT_SYMBOL vmlinux 0xa0dab839 sock_create_lite +EXPORT_SYMBOL vmlinux 0xa0dad88e netdev_adjacent_get_private +EXPORT_SYMBOL vmlinux 0xa0dc5bd5 dev_addr_add +EXPORT_SYMBOL vmlinux 0xa0dd3ba9 mdiobus_read +EXPORT_SYMBOL vmlinux 0xa0eae826 smp_call_function +EXPORT_SYMBOL vmlinux 0xa0ebd14c sysctl_tcp_mem +EXPORT_SYMBOL vmlinux 0xa0fbac79 wake_up_bit +EXPORT_SYMBOL vmlinux 0xa10043b2 file_fdatawait_range +EXPORT_SYMBOL vmlinux 0xa10625b6 rawv6_mh_filter_unregister +EXPORT_SYMBOL vmlinux 0xa108eb4d sysctl_optmem_max +EXPORT_SYMBOL vmlinux 0xa10c6e54 I_BDEV +EXPORT_SYMBOL vmlinux 0xa11a6e6f skb_queue_head +EXPORT_SYMBOL vmlinux 0xa120d33c tty_unregister_ldisc +EXPORT_SYMBOL vmlinux 0xa135f94d phy_ethtool_ksettings_set +EXPORT_SYMBOL vmlinux 0xa14c571d scsi_verify_blk_ioctl +EXPORT_SYMBOL vmlinux 0xa14f5d88 snd_info_create_card_entry +EXPORT_SYMBOL vmlinux 0xa15d0131 cancel_delayed_work +EXPORT_SYMBOL vmlinux 0xa16b21fb wait_for_completion_timeout +EXPORT_SYMBOL vmlinux 0xa16d440a inet_sk_set_state +EXPORT_SYMBOL vmlinux 0xa1722b84 sock_kzfree_s +EXPORT_SYMBOL vmlinux 0xa17b40c9 fib_notifier_ops_register +EXPORT_SYMBOL vmlinux 0xa17bd3fc add_wait_queue +EXPORT_SYMBOL vmlinux 0xa1831a58 kmap_high +EXPORT_SYMBOL vmlinux 0xa1839690 __tracepoint_kmem_cache_alloc +EXPORT_SYMBOL vmlinux 0xa1874abe xfrm_alloc_spi +EXPORT_SYMBOL vmlinux 0xa18ff8f9 i2c_smbus_write_byte +EXPORT_SYMBOL vmlinux 0xa1a83a80 phy_device_free +EXPORT_SYMBOL vmlinux 0xa1a9c35b unlock_rename +EXPORT_SYMBOL vmlinux 0xa1bacd91 qcom_scm_set_cold_boot_addr +EXPORT_SYMBOL vmlinux 0xa1c76e0a _cond_resched +EXPORT_SYMBOL vmlinux 0xa1d131ed vmemdup_user +EXPORT_SYMBOL vmlinux 0xa1d7dae0 blkdev_get_by_dev +EXPORT_SYMBOL vmlinux 0xa1e5b787 scsi_remove_device +EXPORT_SYMBOL vmlinux 0xa2060911 inet_current_timestamp +EXPORT_SYMBOL vmlinux 0xa2148e03 snd_jack_new +EXPORT_SYMBOL vmlinux 0xa214ed8e dev_uc_add +EXPORT_SYMBOL vmlinux 0xa222247e snd_seq_root +EXPORT_SYMBOL vmlinux 0xa230489b devm_ioremap_resource +EXPORT_SYMBOL vmlinux 0xa2373135 param_set_short +EXPORT_SYMBOL vmlinux 0xa24491bf ida_free +EXPORT_SYMBOL vmlinux 0xa244d54c mipi_dsi_set_maximum_return_packet_size +EXPORT_SYMBOL vmlinux 0xa24a0f66 vfs_rmdir +EXPORT_SYMBOL vmlinux 0xa24f23d8 __request_module +EXPORT_SYMBOL vmlinux 0xa259fc67 kernel_read +EXPORT_SYMBOL vmlinux 0xa25b90ab utf8byte +EXPORT_SYMBOL vmlinux 0xa263892b fscrypt_fname_free_buffer +EXPORT_SYMBOL vmlinux 0xa26f9170 skb_push +EXPORT_SYMBOL vmlinux 0xa2710c14 of_find_property +EXPORT_SYMBOL vmlinux 0xa27dbb7d pagevec_lookup_range +EXPORT_SYMBOL vmlinux 0xa27eb148 input_release_device +EXPORT_SYMBOL vmlinux 0xa2803183 wait_on_page_bit_killable +EXPORT_SYMBOL vmlinux 0xa2818607 fget +EXPORT_SYMBOL vmlinux 0xa28cfcc0 gen_estimator_active +EXPORT_SYMBOL vmlinux 0xa29734d3 dcb_ieee_getapp_dscp_prio_mask_map +EXPORT_SYMBOL vmlinux 0xa2987770 unregister_mii_tstamp_controller +EXPORT_SYMBOL vmlinux 0xa2a53ce0 uart_write_wakeup +EXPORT_SYMBOL vmlinux 0xa2b5eb51 devm_ioremap +EXPORT_SYMBOL vmlinux 0xa2bdb0b1 flow_rule_match_meta +EXPORT_SYMBOL vmlinux 0xa2cf36f8 netdev_name_node_alt_create +EXPORT_SYMBOL vmlinux 0xa2d3aca3 nf_log_unset +EXPORT_SYMBOL vmlinux 0xa2dde4ef pci_stop_and_remove_bus_device +EXPORT_SYMBOL vmlinux 0xa2e54f50 devm_ioremap_wc +EXPORT_SYMBOL vmlinux 0xa2eb131d xdp_get_umem_from_qid +EXPORT_SYMBOL vmlinux 0xa2fd94f2 sock_no_sendpage_locked +EXPORT_SYMBOL vmlinux 0xa2fe0c7b snd_ctl_find_numid +EXPORT_SYMBOL vmlinux 0xa2ffbad9 generic_file_open +EXPORT_SYMBOL vmlinux 0xa306914a udp_skb_destructor +EXPORT_SYMBOL vmlinux 0xa33d312c d_alloc_name +EXPORT_SYMBOL vmlinux 0xa34df88f alloc_fcdev +EXPORT_SYMBOL vmlinux 0xa34fa454 sync_blockdev +EXPORT_SYMBOL vmlinux 0xa36bdfb5 neigh_for_each +EXPORT_SYMBOL vmlinux 0xa37b158c __d_drop +EXPORT_SYMBOL vmlinux 0xa38c406a mipi_dsi_dcs_set_pixel_format +EXPORT_SYMBOL vmlinux 0xa3a54979 init_on_free +EXPORT_SYMBOL vmlinux 0xa3ba27bf vme_free_consistent +EXPORT_SYMBOL vmlinux 0xa3c00c06 memcg_sockets_enabled_key +EXPORT_SYMBOL vmlinux 0xa3d66540 tcp_v4_syn_recv_sock +EXPORT_SYMBOL vmlinux 0xa3f0f4fe rproc_elf_load_rsc_table +EXPORT_SYMBOL vmlinux 0xa3fea172 sha224_final +EXPORT_SYMBOL vmlinux 0xa40768df ip6_dst_hoplimit +EXPORT_SYMBOL vmlinux 0xa408cf15 blk_put_queue +EXPORT_SYMBOL vmlinux 0xa43799a8 rfs_needed +EXPORT_SYMBOL vmlinux 0xa43a312e pmem_sector_size +EXPORT_SYMBOL vmlinux 0xa43d1c72 __nand_correct_data +EXPORT_SYMBOL vmlinux 0xa44b3adf __close_fd +EXPORT_SYMBOL vmlinux 0xa4552208 init_on_alloc +EXPORT_SYMBOL vmlinux 0xa4610bc6 omap_rev +EXPORT_SYMBOL vmlinux 0xa4624248 loop_register_transfer +EXPORT_SYMBOL vmlinux 0xa467f856 unregister_nls +EXPORT_SYMBOL vmlinux 0xa4681609 key_validate +EXPORT_SYMBOL vmlinux 0xa47bb424 tcp_setsockopt +EXPORT_SYMBOL vmlinux 0xa47c28df km_report +EXPORT_SYMBOL vmlinux 0xa485c1d1 snd_pcm_new_internal +EXPORT_SYMBOL vmlinux 0xa496f05c __wait_on_buffer +EXPORT_SYMBOL vmlinux 0xa4a48d55 pm860x_page_bulk_read +EXPORT_SYMBOL vmlinux 0xa4b42c55 omap_set_dma_priority +EXPORT_SYMBOL vmlinux 0xa4b7f2cc sync_file_get_fence +EXPORT_SYMBOL vmlinux 0xa4c8127c ZSTD_maxCLevel +EXPORT_SYMBOL vmlinux 0xa4c89ea3 flow_rule_match_ports +EXPORT_SYMBOL vmlinux 0xa4cb5638 __dst_destroy_metrics_generic +EXPORT_SYMBOL vmlinux 0xa4dd0a63 dma_direct_unmap_sg +EXPORT_SYMBOL vmlinux 0xa4f0309a device_add_disk +EXPORT_SYMBOL vmlinux 0xa4f3c194 inet_sendmsg +EXPORT_SYMBOL vmlinux 0xa4f78838 __close_fd_get_file +EXPORT_SYMBOL vmlinux 0xa4fca045 qcom_scm_ocmem_lock +EXPORT_SYMBOL vmlinux 0xa50c9d2d mmc_request_done +EXPORT_SYMBOL vmlinux 0xa517a6e1 deactivate_locked_super +EXPORT_SYMBOL vmlinux 0xa52d6316 sg_zero_buffer +EXPORT_SYMBOL vmlinux 0xa5487e17 snd_pcm_mmap_data +EXPORT_SYMBOL vmlinux 0xa5526619 rb_insert_color +EXPORT_SYMBOL vmlinux 0xa55b865d dev_set_mac_address +EXPORT_SYMBOL vmlinux 0xa5684076 ida_alloc_range +EXPORT_SYMBOL vmlinux 0xa56fde1c __genradix_iter_peek +EXPORT_SYMBOL vmlinux 0xa573832c unlock_new_inode +EXPORT_SYMBOL vmlinux 0xa57a6736 con_is_visible +EXPORT_SYMBOL vmlinux 0xa58c576d nf_register_sockopt +EXPORT_SYMBOL vmlinux 0xa58d5c71 proto_register +EXPORT_SYMBOL vmlinux 0xa59052f0 __siphash_aligned +EXPORT_SYMBOL vmlinux 0xa592be52 input_reset_device +EXPORT_SYMBOL vmlinux 0xa59301bb tcp_mmap +EXPORT_SYMBOL vmlinux 0xa596d91b dev_activate +EXPORT_SYMBOL vmlinux 0xa5988194 __tty_alloc_driver +EXPORT_SYMBOL vmlinux 0xa59c3008 blk_rq_map_integrity_sg +EXPORT_SYMBOL vmlinux 0xa59e57f6 __sk_dst_check +EXPORT_SYMBOL vmlinux 0xa5a3557a uart_get_baud_rate +EXPORT_SYMBOL vmlinux 0xa5c09a38 neigh_seq_start +EXPORT_SYMBOL vmlinux 0xa5e76b3b of_io_request_and_map +EXPORT_SYMBOL vmlinux 0xa5f8fdc9 nf_ip6_checksum +EXPORT_SYMBOL vmlinux 0xa5fc627e fscrypt_get_encryption_info +EXPORT_SYMBOL vmlinux 0xa602030f devm_iounmap +EXPORT_SYMBOL vmlinux 0xa615e357 mmc_command_done +EXPORT_SYMBOL vmlinux 0xa61aa028 snd_pcm_format_unsigned +EXPORT_SYMBOL vmlinux 0xa61ced89 qdisc_put_rtab +EXPORT_SYMBOL vmlinux 0xa62b33c5 soft_cursor +EXPORT_SYMBOL vmlinux 0xa62b9bad snd_ctl_free_one +EXPORT_SYMBOL vmlinux 0xa637cea6 rproc_remove_subdev +EXPORT_SYMBOL vmlinux 0xa6509b96 end_buffer_async_write +EXPORT_SYMBOL vmlinux 0xa6534423 dev_uc_unsync +EXPORT_SYMBOL vmlinux 0xa6557d5c dev_disable_lro +EXPORT_SYMBOL vmlinux 0xa65da9df devfreq_monitor_stop +EXPORT_SYMBOL vmlinux 0xa65f2f16 elevator_alloc +EXPORT_SYMBOL vmlinux 0xa664cefc blk_queue_max_write_same_sectors +EXPORT_SYMBOL vmlinux 0xa681fe88 generate_random_uuid +EXPORT_SYMBOL vmlinux 0xa6841fb6 tun_ptr_to_xdp +EXPORT_SYMBOL vmlinux 0xa68613dd get_jiffies_64 +EXPORT_SYMBOL vmlinux 0xa691b965 xfrm_sad_getinfo +EXPORT_SYMBOL vmlinux 0xa694bf06 xfrm_lookup_with_ifid +EXPORT_SYMBOL vmlinux 0xa695211a dev_mc_flush +EXPORT_SYMBOL vmlinux 0xa6970398 __kfifo_to_user_r +EXPORT_SYMBOL vmlinux 0xa6997cf5 vprintk_emit +EXPORT_SYMBOL vmlinux 0xa6a5fa09 serio_unregister_child_port +EXPORT_SYMBOL vmlinux 0xa6a7a2ad div_s64_rem +EXPORT_SYMBOL vmlinux 0xa6b24c9c mmc_flush_cache +EXPORT_SYMBOL vmlinux 0xa6c52a73 dquot_load_quota_sb +EXPORT_SYMBOL vmlinux 0xa6dbdb20 set_create_files_as +EXPORT_SYMBOL vmlinux 0xa6efd948 phy_modify_paged_changed +EXPORT_SYMBOL vmlinux 0xa700167b padata_alloc_shell +EXPORT_SYMBOL vmlinux 0xa7016cdc input_mt_init_slots +EXPORT_SYMBOL vmlinux 0xa70bc96d qcom_scm_restore_sec_cfg_available +EXPORT_SYMBOL vmlinux 0xa712414c snd_pcm_set_managed_buffer +EXPORT_SYMBOL vmlinux 0xa714758e sg_copy_buffer +EXPORT_SYMBOL vmlinux 0xa7192728 sock_queue_rcv_skb +EXPORT_SYMBOL vmlinux 0xa71eab75 scsi_is_host_device +EXPORT_SYMBOL vmlinux 0xa726b306 dev_mc_del_global +EXPORT_SYMBOL vmlinux 0xa72957cc __dynamic_pr_debug +EXPORT_SYMBOL vmlinux 0xa738bf7c dquot_get_next_dqblk +EXPORT_SYMBOL vmlinux 0xa73ee62b _atomic_dec_and_lock +EXPORT_SYMBOL vmlinux 0xa74c9877 refcount_dec_and_rtnl_lock +EXPORT_SYMBOL vmlinux 0xa7507581 seq_printf +EXPORT_SYMBOL vmlinux 0xa76560fa dcache_dir_close +EXPORT_SYMBOL vmlinux 0xa77bfd29 register_inet6addr_validator_notifier +EXPORT_SYMBOL vmlinux 0xa77d829d find_inode_nowait +EXPORT_SYMBOL vmlinux 0xa77e91c9 netdev_lower_get_first_private_rcu +EXPORT_SYMBOL vmlinux 0xa7821e2f blk_sync_queue +EXPORT_SYMBOL vmlinux 0xa78fad94 phy_set_asym_pause +EXPORT_SYMBOL vmlinux 0xa795d231 d_invalidate +EXPORT_SYMBOL vmlinux 0xa7a56dca pci_wait_for_pending_transaction +EXPORT_SYMBOL vmlinux 0xa7b3181c up_read +EXPORT_SYMBOL vmlinux 0xa7b6f192 snd_pcm_lib_preallocate_free_for_all +EXPORT_SYMBOL vmlinux 0xa7c50c82 vga_put +EXPORT_SYMBOL vmlinux 0xa7c8be48 input_unregister_handle +EXPORT_SYMBOL vmlinux 0xa7d1f64c noop_qdisc +EXPORT_SYMBOL vmlinux 0xa7e38f12 flow_keys_basic_dissector +EXPORT_SYMBOL vmlinux 0xa7eedcc4 call_usermodehelper +EXPORT_SYMBOL vmlinux 0xa80acb56 lockref_mark_dead +EXPORT_SYMBOL vmlinux 0xa8253676 pci_get_subsys +EXPORT_SYMBOL vmlinux 0xa82b08ef hmm_range_fault +EXPORT_SYMBOL vmlinux 0xa8306b78 scaled_ppm_to_ppb +EXPORT_SYMBOL vmlinux 0xa8324bec tcf_block_get +EXPORT_SYMBOL vmlinux 0xa834d1c6 bio_split +EXPORT_SYMBOL vmlinux 0xa843805a get_unused_fd_flags +EXPORT_SYMBOL vmlinux 0xa84ce9e0 crypto_aes_inv_sbox +EXPORT_SYMBOL vmlinux 0xa85b2a09 pfifo_qdisc_ops +EXPORT_SYMBOL vmlinux 0xa8613cd2 mmc_start_request +EXPORT_SYMBOL vmlinux 0xa8679bc7 snd_pcm_lib_preallocate_pages +EXPORT_SYMBOL vmlinux 0xa86a8f4b textsearch_unregister +EXPORT_SYMBOL vmlinux 0xa873f90f vfs_tmpfile +EXPORT_SYMBOL vmlinux 0xa8880473 phy_drivers_register +EXPORT_SYMBOL vmlinux 0xa88c8269 __inet6_lookup_established +EXPORT_SYMBOL vmlinux 0xa8990854 dump_skip +EXPORT_SYMBOL vmlinux 0xa89a60f7 rproc_coredump_add_segment +EXPORT_SYMBOL vmlinux 0xa8a08caf trace_print_array_seq +EXPORT_SYMBOL vmlinux 0xa8a8110c kernel_neon_end +EXPORT_SYMBOL vmlinux 0xa8b3fa41 can_nice +EXPORT_SYMBOL vmlinux 0xa8b94a4a inode_init_once +EXPORT_SYMBOL vmlinux 0xa8caa845 clk_bulk_put_all +EXPORT_SYMBOL vmlinux 0xa8d52d76 snd_pcm_release_substream +EXPORT_SYMBOL vmlinux 0xa8d988e7 vm_insert_pages +EXPORT_SYMBOL vmlinux 0xa8ddc124 kern_unmount_array +EXPORT_SYMBOL vmlinux 0xa8eade93 inet_frags_fini +EXPORT_SYMBOL vmlinux 0xa8ec7d34 crc_ccitt +EXPORT_SYMBOL vmlinux 0xa8f48e75 serial8250_do_set_termios +EXPORT_SYMBOL vmlinux 0xa8f6c843 ip_frag_ecn_table +EXPORT_SYMBOL vmlinux 0xa8f7f280 idr_get_next_ul +EXPORT_SYMBOL vmlinux 0xa8fc89a2 migrate_page_states +EXPORT_SYMBOL vmlinux 0xa903ebcd param_set_int +EXPORT_SYMBOL vmlinux 0xa905d54c read_cache_pages +EXPORT_SYMBOL vmlinux 0xa934bc4b flow_get_u32_dst +EXPORT_SYMBOL vmlinux 0xa935f5a0 crypto_sha512_update +EXPORT_SYMBOL vmlinux 0xa936133e del_random_ready_callback +EXPORT_SYMBOL vmlinux 0xa9643179 mdiobus_setup_mdiodev_from_board_info +EXPORT_SYMBOL vmlinux 0xa964dd13 gpmc_cs_request +EXPORT_SYMBOL vmlinux 0xa965ca81 reciprocal_value +EXPORT_SYMBOL vmlinux 0xa98b0091 filp_open +EXPORT_SYMBOL vmlinux 0xa9a36966 xfrm_trans_queue +EXPORT_SYMBOL vmlinux 0xa9d8d50f skb_flow_dissect_ct +EXPORT_SYMBOL vmlinux 0xa9eb465f ZSTD_CStreamInSize +EXPORT_SYMBOL vmlinux 0xa9ef6239 _snd_pcm_lib_alloc_vmalloc_buffer +EXPORT_SYMBOL vmlinux 0xa9ff5e82 dquot_resume +EXPORT_SYMBOL vmlinux 0xaa0b7885 __mark_inode_dirty +EXPORT_SYMBOL vmlinux 0xaa14d557 register_cdrom +EXPORT_SYMBOL vmlinux 0xaa310c41 _dev_err +EXPORT_SYMBOL vmlinux 0xaa317d74 touch_buffer +EXPORT_SYMBOL vmlinux 0xaa42e16a gen_pool_has_addr +EXPORT_SYMBOL vmlinux 0xaa568174 of_n_addr_cells +EXPORT_SYMBOL vmlinux 0xaa56fb7d d_instantiate_new +EXPORT_SYMBOL vmlinux 0xaa6901ac __kfifo_out_r +EXPORT_SYMBOL vmlinux 0xaa6b8aed generic_block_bmap +EXPORT_SYMBOL vmlinux 0xaa6f23ad rfkill_get_led_trigger_name +EXPORT_SYMBOL vmlinux 0xaaa26d81 __insert_inode_hash +EXPORT_SYMBOL vmlinux 0xaaa4b9bc hchacha_block_generic +EXPORT_SYMBOL vmlinux 0xaab7fc9f input_unregister_device +EXPORT_SYMBOL vmlinux 0xaac9e71f devm_clk_release_clkdev +EXPORT_SYMBOL vmlinux 0xaacc9e27 sort +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 0xaae7bcba serio_bus +EXPORT_SYMBOL vmlinux 0xaaf20904 __xfrm_state_destroy +EXPORT_SYMBOL vmlinux 0xaafd9237 _raw_write_unlock_irqrestore +EXPORT_SYMBOL vmlinux 0xaafdc258 strcasecmp +EXPORT_SYMBOL vmlinux 0xab024b0a generic_read_dir +EXPORT_SYMBOL vmlinux 0xab082de5 snd_pcm_set_ops +EXPORT_SYMBOL vmlinux 0xab1abc71 unload_nls +EXPORT_SYMBOL vmlinux 0xab1ebc94 tty_port_hangup +EXPORT_SYMBOL vmlinux 0xab3697e4 irq_poll_init +EXPORT_SYMBOL vmlinux 0xab3b75ea vme_dma_pattern_attribute +EXPORT_SYMBOL vmlinux 0xab4678d9 ppp_input +EXPORT_SYMBOL vmlinux 0xab600421 probe_irq_off +EXPORT_SYMBOL vmlinux 0xab63baa5 unregister_inetaddr_validator_notifier +EXPORT_SYMBOL vmlinux 0xab735372 ipmi_dmi_get_slave_addr +EXPORT_SYMBOL vmlinux 0xab781570 fb_get_options +EXPORT_SYMBOL vmlinux 0xab9bf915 devfreq_register_opp_notifier +EXPORT_SYMBOL vmlinux 0xaba2454d jbd2_journal_update_sb_errno +EXPORT_SYMBOL vmlinux 0xaba3c85a mr_rtm_dumproute +EXPORT_SYMBOL vmlinux 0xaba7cc56 ipv6_chk_addr +EXPORT_SYMBOL vmlinux 0xaba89183 set_posix_acl +EXPORT_SYMBOL vmlinux 0xabaa8648 netdev_warn +EXPORT_SYMBOL vmlinux 0xabaf0b68 dev_deactivate +EXPORT_SYMBOL vmlinux 0xabc0620d bioset_exit +EXPORT_SYMBOL vmlinux 0xabc9826c sock_release +EXPORT_SYMBOL vmlinux 0xabcb2009 wake_up_process +EXPORT_SYMBOL vmlinux 0xabf32f29 utf16s_to_utf8s +EXPORT_SYMBOL vmlinux 0xabf7ba10 pcibios_resource_to_bus +EXPORT_SYMBOL vmlinux 0xabfcebff rproc_da_to_va +EXPORT_SYMBOL vmlinux 0xac1a55be unregister_reboot_notifier +EXPORT_SYMBOL vmlinux 0xac3201b0 udp_flow_hashrnd +EXPORT_SYMBOL vmlinux 0xac33a990 phy_support_sym_pause +EXPORT_SYMBOL vmlinux 0xac3f3d13 __dev_direct_xmit +EXPORT_SYMBOL vmlinux 0xac416167 ip_generic_getfrag +EXPORT_SYMBOL vmlinux 0xac437f7b snd_interval_ratnum +EXPORT_SYMBOL vmlinux 0xac59b4ff sock_no_ioctl +EXPORT_SYMBOL vmlinux 0xac5f0d2c eth_commit_mac_addr_change +EXPORT_SYMBOL vmlinux 0xac5fcec0 in4_pton +EXPORT_SYMBOL vmlinux 0xac61f901 __mod_zone_page_state +EXPORT_SYMBOL vmlinux 0xac620682 snd_card_set_id +EXPORT_SYMBOL vmlinux 0xac8597d5 mb_cache_entry_get +EXPORT_SYMBOL vmlinux 0xac88ca95 __snd_pcm_lib_xfer +EXPORT_SYMBOL vmlinux 0xac94e86b vsprintf +EXPORT_SYMBOL vmlinux 0xacab29b7 seq_hlist_start_percpu +EXPORT_SYMBOL vmlinux 0xacb31ecf _raw_spin_trylock +EXPORT_SYMBOL vmlinux 0xacc2abc1 skb_copy_and_csum_dev +EXPORT_SYMBOL vmlinux 0xacd81eb3 jbd2_inode_cache +EXPORT_SYMBOL vmlinux 0xacd84912 phy_resume +EXPORT_SYMBOL vmlinux 0xacf4d843 match_strdup +EXPORT_SYMBOL vmlinux 0xacf649bf audit_log_task_info +EXPORT_SYMBOL vmlinux 0xad0413d4 match_hex +EXPORT_SYMBOL vmlinux 0xad0a167e snd_timer_global_free +EXPORT_SYMBOL vmlinux 0xad19d025 vlan_uses_dev +EXPORT_SYMBOL vmlinux 0xad411b2b ip6_fraglist_prepare +EXPORT_SYMBOL vmlinux 0xad4d6c1d block_write_begin +EXPORT_SYMBOL vmlinux 0xad6f7144 __tracepoint_kmalloc_node +EXPORT_SYMBOL vmlinux 0xad73041f autoremove_wake_function +EXPORT_SYMBOL vmlinux 0xad7dd19e fs_context_for_mount +EXPORT_SYMBOL vmlinux 0xad84bef8 dm_table_event +EXPORT_SYMBOL vmlinux 0xad995dac netdev_stats_to_stats64 +EXPORT_SYMBOL vmlinux 0xadbeed61 mipi_dsi_packet_format_is_long +EXPORT_SYMBOL vmlinux 0xadd22e70 LZ4_setStreamDecode +EXPORT_SYMBOL vmlinux 0xadd89902 inet_csk_prepare_forced_close +EXPORT_SYMBOL vmlinux 0xadde8b02 of_find_mipi_dsi_host_by_node +EXPORT_SYMBOL vmlinux 0xade68118 bdgrab +EXPORT_SYMBOL vmlinux 0xadfdfcef __bitmap_andnot +EXPORT_SYMBOL vmlinux 0xae04012c __vmalloc +EXPORT_SYMBOL vmlinux 0xae05aba3 scsi_add_host_with_dma +EXPORT_SYMBOL vmlinux 0xae12e881 qdisc_watchdog_cancel +EXPORT_SYMBOL vmlinux 0xae13fdb3 fiemap_prep +EXPORT_SYMBOL vmlinux 0xae316c11 icmpv6_err_convert +EXPORT_SYMBOL vmlinux 0xae414ff7 sync_file_create +EXPORT_SYMBOL vmlinux 0xae559e84 register_sound_dsp +EXPORT_SYMBOL vmlinux 0xae5c511d napi_gro_flush +EXPORT_SYMBOL vmlinux 0xae6f2ac3 twl6040_set_pll +EXPORT_SYMBOL vmlinux 0xae9a94d4 __frontswap_test +EXPORT_SYMBOL vmlinux 0xae9f55b3 snd_ctl_notify +EXPORT_SYMBOL vmlinux 0xaea1b045 __scsi_iterate_devices +EXPORT_SYMBOL vmlinux 0xaeab1274 xp_set_rxq_info +EXPORT_SYMBOL vmlinux 0xaeac049a generate_random_guid +EXPORT_SYMBOL vmlinux 0xaeae5815 skb_flow_get_icmp_tci +EXPORT_SYMBOL vmlinux 0xaebed9db __skb_warn_lro_forwarding +EXPORT_SYMBOL vmlinux 0xaec2e496 skb_flow_dissect_meta +EXPORT_SYMBOL vmlinux 0xaec70252 xfrm_register_type +EXPORT_SYMBOL vmlinux 0xaec7c2f1 __task_pid_nr_ns +EXPORT_SYMBOL vmlinux 0xaee95991 ZSTD_getDictID_fromFrame +EXPORT_SYMBOL vmlinux 0xaf022ba2 netlbl_calipso_ops_register +EXPORT_SYMBOL vmlinux 0xaf051c6f mmc_gpio_set_cd_isr +EXPORT_SYMBOL vmlinux 0xaf13218e in_dev_finish_destroy +EXPORT_SYMBOL vmlinux 0xaf16f615 ZSTD_DStreamOutSize +EXPORT_SYMBOL vmlinux 0xaf1f5dfd fscrypt_fname_disk_to_usr +EXPORT_SYMBOL vmlinux 0xaf2cc42e get_tree_single +EXPORT_SYMBOL vmlinux 0xaf3dd7dc scsi_logging_level +EXPORT_SYMBOL vmlinux 0xaf50e76d elf_set_personality +EXPORT_SYMBOL vmlinux 0xaf6b8774 nvm_submit_io +EXPORT_SYMBOL vmlinux 0xaf730d8c kobject_put +EXPORT_SYMBOL vmlinux 0xaf743e6f scsi_mode_sense +EXPORT_SYMBOL vmlinux 0xaf841cf3 tcp_req_err +EXPORT_SYMBOL vmlinux 0xaf84865e __get_user_8 +EXPORT_SYMBOL vmlinux 0xaf8aa518 system_rev +EXPORT_SYMBOL vmlinux 0xaf92a6a5 mmc_is_req_done +EXPORT_SYMBOL vmlinux 0xaf9a0a2a radix_tree_tag_clear +EXPORT_SYMBOL vmlinux 0xafa4d33d jbd2_journal_flush +EXPORT_SYMBOL vmlinux 0xafa7704c __SetPageMovable +EXPORT_SYMBOL vmlinux 0xafb80896 dcbnl_ieee_notify +EXPORT_SYMBOL vmlinux 0xafd1c8f8 blk_queue_alignment_offset +EXPORT_SYMBOL vmlinux 0xafd9de5a component_match_add_typed +EXPORT_SYMBOL vmlinux 0xafe24387 nand_write_oob_std +EXPORT_SYMBOL vmlinux 0xafe557bb serio_open +EXPORT_SYMBOL vmlinux 0xafe6a054 gnet_stats_start_copy_compat +EXPORT_SYMBOL vmlinux 0xafe8ec9b clkdev_hw_alloc +EXPORT_SYMBOL vmlinux 0xafebcf26 dump_truncate +EXPORT_SYMBOL vmlinux 0xaff07ca7 tcp_v4_md5_lookup +EXPORT_SYMBOL vmlinux 0xb01bebf9 xfrm_get_acqseq +EXPORT_SYMBOL vmlinux 0xb04dd079 param_get_ushort +EXPORT_SYMBOL vmlinux 0xb05a6602 snd_component_add +EXPORT_SYMBOL vmlinux 0xb05fc310 sysctl_rmem_max +EXPORT_SYMBOL vmlinux 0xb068aaa8 tcf_action_exec +EXPORT_SYMBOL vmlinux 0xb083d0b6 scsi_host_lookup +EXPORT_SYMBOL vmlinux 0xb08eb6c2 pcie_relaxed_ordering_enabled +EXPORT_SYMBOL vmlinux 0xb09ef452 vfs_parse_fs_param +EXPORT_SYMBOL vmlinux 0xb0a0da0c rational_best_approximation +EXPORT_SYMBOL vmlinux 0xb0a19aa1 ip_options_rcv_srr +EXPORT_SYMBOL vmlinux 0xb0a3c5d2 trace_print_symbols_seq +EXPORT_SYMBOL vmlinux 0xb0bf3f6c snd_pcm_hw_constraint_ranges +EXPORT_SYMBOL vmlinux 0xb0c207d5 ac97_bus_type +EXPORT_SYMBOL vmlinux 0xb0de52c7 softnet_data +EXPORT_SYMBOL vmlinux 0xb0e10781 get_option +EXPORT_SYMBOL vmlinux 0xb0ed08fe vme_master_mmap +EXPORT_SYMBOL vmlinux 0xb0f541a1 snd_ctl_boolean_stereo_info +EXPORT_SYMBOL vmlinux 0xb10b4c63 from_kgid_munged +EXPORT_SYMBOL vmlinux 0xb10e7df4 __kfifo_dma_in_prepare +EXPORT_SYMBOL vmlinux 0xb121390a probe_irq_on +EXPORT_SYMBOL vmlinux 0xb12cbacb fb_unregister_client +EXPORT_SYMBOL vmlinux 0xb1357551 vfs_clone_file_range +EXPORT_SYMBOL vmlinux 0xb13e9056 snd_pcm_hw_constraint_integer +EXPORT_SYMBOL vmlinux 0xb147a855 dql_reset +EXPORT_SYMBOL vmlinux 0xb14ab1ef hdmi_audio_infoframe_init +EXPORT_SYMBOL vmlinux 0xb14f1dab md_bitmap_free +EXPORT_SYMBOL vmlinux 0xb14fc46a find_next_clump8 +EXPORT_SYMBOL vmlinux 0xb16900ad cmdline_parts_parse +EXPORT_SYMBOL vmlinux 0xb16afcda sock_set_reuseport +EXPORT_SYMBOL vmlinux 0xb173c075 netdev_has_upper_dev +EXPORT_SYMBOL vmlinux 0xb19296cb security_path_mkdir +EXPORT_SYMBOL vmlinux 0xb19a5de4 kthread_create_worker +EXPORT_SYMBOL vmlinux 0xb19b6915 proc_symlink +EXPORT_SYMBOL vmlinux 0xb1a5ab8c on_each_cpu_cond +EXPORT_SYMBOL vmlinux 0xb1ad28e0 __gnu_mcount_nc +EXPORT_SYMBOL vmlinux 0xb1c3a01a oops_in_progress +EXPORT_SYMBOL vmlinux 0xb1cf1151 fqdir_exit +EXPORT_SYMBOL vmlinux 0xb1d3e4ac udp_set_csum +EXPORT_SYMBOL vmlinux 0xb1ddf995 jiffies_64_to_clock_t +EXPORT_SYMBOL vmlinux 0xb1e53b0b tcp_mss_to_mtu +EXPORT_SYMBOL vmlinux 0xb1e7e765 tcp_gro_complete +EXPORT_SYMBOL vmlinux 0xb1f94dd4 netdev_alert +EXPORT_SYMBOL vmlinux 0xb21c02f9 ww_mutex_lock +EXPORT_SYMBOL vmlinux 0xb22116b9 dev_mc_add_global +EXPORT_SYMBOL vmlinux 0xb22e16d5 radix_tree_maybe_preload +EXPORT_SYMBOL vmlinux 0xb249a391 omap_request_dma +EXPORT_SYMBOL vmlinux 0xb256c974 simple_transaction_release +EXPORT_SYMBOL vmlinux 0xb25a698b ps2_sliced_command +EXPORT_SYMBOL vmlinux 0xb25bf2f0 rproc_add +EXPORT_SYMBOL vmlinux 0xb286c477 qcom_scm_set_warm_boot_addr +EXPORT_SYMBOL vmlinux 0xb289ac68 config_item_get_unless_zero +EXPORT_SYMBOL vmlinux 0xb28d1559 pci_find_parent_resource +EXPORT_SYMBOL vmlinux 0xb29dff47 phy_set_max_speed +EXPORT_SYMBOL vmlinux 0xb2b19c01 key_reject_and_link +EXPORT_SYMBOL vmlinux 0xb2d0053e cgroup_bpf_enabled_key +EXPORT_SYMBOL vmlinux 0xb2d1a293 xsk_clear_tx_need_wakeup +EXPORT_SYMBOL vmlinux 0xb2d48a2e queue_work_on +EXPORT_SYMBOL vmlinux 0xb2e5ae4a snd_lookup_minor_data +EXPORT_SYMBOL vmlinux 0xb2ecb711 phy_queue_state_machine +EXPORT_SYMBOL vmlinux 0xb2fb51cb console_start +EXPORT_SYMBOL vmlinux 0xb308c97d wait_woken +EXPORT_SYMBOL vmlinux 0xb30a275a xfrm_policy_unregister_afinfo +EXPORT_SYMBOL vmlinux 0xb30b9822 vme_master_set +EXPORT_SYMBOL vmlinux 0xb320b016 simple_open +EXPORT_SYMBOL vmlinux 0xb320cc0e sg_init_one +EXPORT_SYMBOL vmlinux 0xb32728bb qcom_scm_iommu_secure_ptbl_init +EXPORT_SYMBOL vmlinux 0xb344e6df blk_rq_init +EXPORT_SYMBOL vmlinux 0xb34efb7b PageMovable +EXPORT_SYMBOL vmlinux 0xb35938f9 sock_sendmsg +EXPORT_SYMBOL vmlinux 0xb3667805 dqstats +EXPORT_SYMBOL vmlinux 0xb3687850 out_of_line_wait_on_bit_lock +EXPORT_SYMBOL vmlinux 0xb3789a5e param_ops_uint +EXPORT_SYMBOL vmlinux 0xb37b6ee5 dev_get_port_parent_id +EXPORT_SYMBOL vmlinux 0xb37c7ff0 sb_min_blocksize +EXPORT_SYMBOL vmlinux 0xb390f4fa ppp_output_wakeup +EXPORT_SYMBOL vmlinux 0xb397492e mr_mfc_seq_next +EXPORT_SYMBOL vmlinux 0xb3b7c0af nand_bch_calculate_ecc +EXPORT_SYMBOL vmlinux 0xb3bb1a88 d_alloc_parallel +EXPORT_SYMBOL vmlinux 0xb3bd68cc security_secmark_relabel_packet +EXPORT_SYMBOL vmlinux 0xb3bed574 kunmap_high +EXPORT_SYMBOL vmlinux 0xb3d2c76d scsi_hostbyte_string +EXPORT_SYMBOL vmlinux 0xb3d3c361 kfree_skb_list +EXPORT_SYMBOL vmlinux 0xb3d55ec5 textsearch_destroy +EXPORT_SYMBOL vmlinux 0xb3ef82c2 pm8606_osc_disable +EXPORT_SYMBOL vmlinux 0xb3f5579b pci_add_new_bus +EXPORT_SYMBOL vmlinux 0xb3f7646e kthread_should_stop +EXPORT_SYMBOL vmlinux 0xb3f8c428 param_ops_ullong +EXPORT_SYMBOL vmlinux 0xb3fe9f9a tc_setup_cb_call +EXPORT_SYMBOL vmlinux 0xb3ff384e tcf_idr_search +EXPORT_SYMBOL vmlinux 0xb423dba1 console_blanked +EXPORT_SYMBOL vmlinux 0xb42cf26f i2c_transfer +EXPORT_SYMBOL vmlinux 0xb44a0331 vmf_insert_pfn +EXPORT_SYMBOL vmlinux 0xb4519a8f string_escape_mem +EXPORT_SYMBOL vmlinux 0xb4600f09 bio_integrity_add_page +EXPORT_SYMBOL vmlinux 0xb476c8f4 ZSTD_decompress_usingDict +EXPORT_SYMBOL vmlinux 0xb48d4d22 security_sb_eat_lsm_opts +EXPORT_SYMBOL vmlinux 0xb4910192 arm_dma_zone_size +EXPORT_SYMBOL vmlinux 0xb491bc7d devm_devfreq_unregister_opp_notifier +EXPORT_SYMBOL vmlinux 0xb49274e1 locks_init_lock +EXPORT_SYMBOL vmlinux 0xb4af49d3 phy_do_ioctl_running +EXPORT_SYMBOL vmlinux 0xb4b933b6 truncate_inode_pages_range +EXPORT_SYMBOL vmlinux 0xb4bfacbb pskb_expand_head +EXPORT_SYMBOL vmlinux 0xb4ccf129 kset_unregister +EXPORT_SYMBOL vmlinux 0xb4ddc2ce seq_put_decimal_ll +EXPORT_SYMBOL vmlinux 0xb4f13d2a abort +EXPORT_SYMBOL vmlinux 0xb50eb768 pfifo_fast_ops +EXPORT_SYMBOL vmlinux 0xb52cbecc gro_find_receive_by_type +EXPORT_SYMBOL vmlinux 0xb56ea0e0 of_get_property +EXPORT_SYMBOL vmlinux 0xb57343c2 frontswap_shrink +EXPORT_SYMBOL vmlinux 0xb5773692 tcp_sendmsg +EXPORT_SYMBOL vmlinux 0xb577d308 xfrm_input_unregister_afinfo +EXPORT_SYMBOL vmlinux 0xb57872c3 security_dentry_init_security +EXPORT_SYMBOL vmlinux 0xb5790fab neigh_app_ns +EXPORT_SYMBOL vmlinux 0xb57a2658 tcp_seq_next +EXPORT_SYMBOL vmlinux 0xb58aeaab kernel_cpustat +EXPORT_SYMBOL vmlinux 0xb5a459dc unregister_blkdev +EXPORT_SYMBOL vmlinux 0xb5aa7165 dma_pool_destroy +EXPORT_SYMBOL vmlinux 0xb5b702a2 mipi_dsi_turn_on_peripheral +EXPORT_SYMBOL vmlinux 0xb5c21463 xfrm_state_insert +EXPORT_SYMBOL vmlinux 0xb5c67c64 nla_reserve +EXPORT_SYMBOL vmlinux 0xb5d275fe inet_frag_reasm_finish +EXPORT_SYMBOL vmlinux 0xb5e7cd16 fwnode_graph_parse_endpoint +EXPORT_SYMBOL vmlinux 0xb610680f __netlink_dump_start +EXPORT_SYMBOL vmlinux 0xb61dec60 i2c_smbus_read_byte_data +EXPORT_SYMBOL vmlinux 0xb6214a18 call_fib_notifiers +EXPORT_SYMBOL vmlinux 0xb62f451c _raw_read_lock_irq +EXPORT_SYMBOL vmlinux 0xb633f115 irq_poll_enable +EXPORT_SYMBOL vmlinux 0xb636dd73 __nand_calculate_ecc +EXPORT_SYMBOL vmlinux 0xb63848fe arp_tbl +EXPORT_SYMBOL vmlinux 0xb66238d8 get_task_exe_file +EXPORT_SYMBOL vmlinux 0xb6674f4e simple_empty +EXPORT_SYMBOL vmlinux 0xb66f3fe1 security_sctp_assoc_request +EXPORT_SYMBOL vmlinux 0xb6751eb5 udp_ioctl +EXPORT_SYMBOL vmlinux 0xb678366f int_sqrt +EXPORT_SYMBOL vmlinux 0xb67c9280 utf8cursor +EXPORT_SYMBOL vmlinux 0xb67caf65 ucc_fast_enable +EXPORT_SYMBOL vmlinux 0xb67fec0e uuid_parse +EXPORT_SYMBOL vmlinux 0xb6896671 crc_t10dif +EXPORT_SYMBOL vmlinux 0xb6936ffe _bcd2bin +EXPORT_SYMBOL vmlinux 0xb699bb03 elm_config +EXPORT_SYMBOL vmlinux 0xb69a4961 tty_insert_flip_string_flags +EXPORT_SYMBOL vmlinux 0xb6a68816 find_last_bit +EXPORT_SYMBOL vmlinux 0xb6acaa13 phy_sfp_detach +EXPORT_SYMBOL vmlinux 0xb6b6284e xz_dec_run +EXPORT_SYMBOL vmlinux 0xb6e6a155 amba_release_regions +EXPORT_SYMBOL vmlinux 0xb6f6fc01 xfrm_policy_register_afinfo +EXPORT_SYMBOL vmlinux 0xb6fbc3d3 nand_read_page_raw +EXPORT_SYMBOL vmlinux 0xb7019cdb sock_cmsg_send +EXPORT_SYMBOL vmlinux 0xb70b5065 cdrom_release +EXPORT_SYMBOL vmlinux 0xb71d986d snd_pcm_hw_limit_rates +EXPORT_SYMBOL vmlinux 0xb7362c90 do_wait_intr_irq +EXPORT_SYMBOL vmlinux 0xb736b4b9 mmc_calc_max_discard +EXPORT_SYMBOL vmlinux 0xb74c6728 uart_match_port +EXPORT_SYMBOL vmlinux 0xb7688155 ucc_slow_init +EXPORT_SYMBOL vmlinux 0xb77088cd devm_extcon_register_notifier +EXPORT_SYMBOL vmlinux 0xb7872388 ZSTD_copyCCtx +EXPORT_SYMBOL vmlinux 0xb787ea4c tcp_ioctl +EXPORT_SYMBOL vmlinux 0xb787f98d md_set_array_sectors +EXPORT_SYMBOL vmlinux 0xb78debe3 LZ4_decompress_fast_usingDict +EXPORT_SYMBOL vmlinux 0xb78e2050 qcom_scm_pas_init_image +EXPORT_SYMBOL vmlinux 0xb7bb9036 jbd2_journal_init_dev +EXPORT_SYMBOL vmlinux 0xb7c119ce unregister_quota_format +EXPORT_SYMBOL vmlinux 0xb7c6db70 sysctl_max_skb_frags +EXPORT_SYMBOL vmlinux 0xb7d2875d inet6_unregister_protosw +EXPORT_SYMBOL vmlinux 0xb7d54386 fscrypt_setup_filename +EXPORT_SYMBOL vmlinux 0xb7defbdc kernel_recvmsg +EXPORT_SYMBOL vmlinux 0xb7df0e97 ZSTD_DDictWorkspaceBound +EXPORT_SYMBOL vmlinux 0xb7f24f49 d_path +EXPORT_SYMBOL vmlinux 0xb842716c qcom_scm_ocmem_lock_available +EXPORT_SYMBOL vmlinux 0xb84a57ef blk_rq_map_kern +EXPORT_SYMBOL vmlinux 0xb861f4f9 tty_hangup +EXPORT_SYMBOL vmlinux 0xb864b84b ZSTD_decompressBlock +EXPORT_SYMBOL vmlinux 0xb867f1f3 ip_tunnel_header_ops +EXPORT_SYMBOL vmlinux 0xb868ac5c register_sysrq_key +EXPORT_SYMBOL vmlinux 0xb8801568 sk_capable +EXPORT_SYMBOL vmlinux 0xb88032a1 iov_iter_copy_from_user_atomic +EXPORT_SYMBOL vmlinux 0xb89b6e6b guid_parse +EXPORT_SYMBOL vmlinux 0xb8a6ffeb __kfifo_dma_out_prepare_r +EXPORT_SYMBOL vmlinux 0xb8b043f2 kfree_link +EXPORT_SYMBOL vmlinux 0xb8bb1d3d logfc +EXPORT_SYMBOL vmlinux 0xb8bbcc1c md_unregister_thread +EXPORT_SYMBOL vmlinux 0xb8c66c45 dma_fence_get_status +EXPORT_SYMBOL vmlinux 0xb8ceb78f udp_seq_start +EXPORT_SYMBOL vmlinux 0xb8e877e7 kstrtouint_from_user +EXPORT_SYMBOL vmlinux 0xb9008677 tcp_ld_RTO_revert +EXPORT_SYMBOL vmlinux 0xb90292ed of_graph_get_remote_port_parent +EXPORT_SYMBOL vmlinux 0xb9046556 scsi_set_medium_removal +EXPORT_SYMBOL vmlinux 0xb9056bb6 remove_conflicting_framebuffers +EXPORT_SYMBOL vmlinux 0xb911bb58 minmax_running_max +EXPORT_SYMBOL vmlinux 0xb9168d27 __skb_checksum_complete +EXPORT_SYMBOL vmlinux 0xb9369fe1 mipi_dsi_generic_read +EXPORT_SYMBOL vmlinux 0xb93eff19 of_count_phandle_with_args +EXPORT_SYMBOL vmlinux 0xb940d1d3 thermal_zone_device_critical +EXPORT_SYMBOL vmlinux 0xb94339c4 qdisc_put_stab +EXPORT_SYMBOL vmlinux 0xb9488012 pcix_set_mmrbc +EXPORT_SYMBOL vmlinux 0xb956cc5e skb_get_hash_perturb +EXPORT_SYMBOL vmlinux 0xb95f98d6 _memset_io +EXPORT_SYMBOL vmlinux 0xb9638db4 snd_pcm_rate_to_rate_bit +EXPORT_SYMBOL vmlinux 0xb96cbd6e ipv6_setsockopt +EXPORT_SYMBOL vmlinux 0xb97220ff bitmap_parse +EXPORT_SYMBOL vmlinux 0xb986ae29 snd_card_file_add +EXPORT_SYMBOL vmlinux 0xb993aaee vlan_dev_vlan_proto +EXPORT_SYMBOL vmlinux 0xb9a613c6 __kmalloc_track_caller +EXPORT_SYMBOL vmlinux 0xb9a8f03b omap_stop_dma +EXPORT_SYMBOL vmlinux 0xb9aaf706 fs_param_is_s32 +EXPORT_SYMBOL vmlinux 0xb9acd3d9 __put_user_2 +EXPORT_SYMBOL vmlinux 0xb9c3f8ed lookup_one_len +EXPORT_SYMBOL vmlinux 0xb9c685b2 path_get +EXPORT_SYMBOL vmlinux 0xb9d22c3a ip_do_fragment +EXPORT_SYMBOL vmlinux 0xb9d4aa10 dm_register_target +EXPORT_SYMBOL vmlinux 0xb9e22433 security_socket_getpeersec_dgram +EXPORT_SYMBOL vmlinux 0xb9e5f3f2 nand_monolithic_read_page_raw +EXPORT_SYMBOL vmlinux 0xb9e8e2cc in6addr_sitelocal_allrouters +EXPORT_SYMBOL vmlinux 0xb9ec9ef2 tcf_get_next_chain +EXPORT_SYMBOL vmlinux 0xb9eee3ec scsi_partsize +EXPORT_SYMBOL vmlinux 0xb9fc381a qcom_scm_hdcp_req +EXPORT_SYMBOL vmlinux 0xba0acc2c vlan_dev_real_dev +EXPORT_SYMBOL vmlinux 0xba1005a4 ppp_dev_name +EXPORT_SYMBOL vmlinux 0xba16d34c pci_free_irq_vectors +EXPORT_SYMBOL vmlinux 0xba2a873f pci_free_irq +EXPORT_SYMBOL vmlinux 0xba2ffeea ZSTD_initCStream_usingCDict +EXPORT_SYMBOL vmlinux 0xba3e4b7a register_md_personality +EXPORT_SYMBOL vmlinux 0xba3ef7f1 napi_schedule_prep +EXPORT_SYMBOL vmlinux 0xba497f13 loops_per_jiffy +EXPORT_SYMBOL vmlinux 0xba5a3e69 dmam_free_coherent +EXPORT_SYMBOL vmlinux 0xba707a78 qe_get_brg_clk +EXPORT_SYMBOL vmlinux 0xba92ce53 backlight_device_register +EXPORT_SYMBOL vmlinux 0xbaa6d384 tcp_md5_hash_skb_data +EXPORT_SYMBOL vmlinux 0xbaa7c8c5 krealloc +EXPORT_SYMBOL vmlinux 0xbaae6ce4 skb_flow_dissector_init +EXPORT_SYMBOL vmlinux 0xbaafae4d clear_wb_congested +EXPORT_SYMBOL vmlinux 0xbabb9a31 blk_queue_io_opt +EXPORT_SYMBOL vmlinux 0xbabf67cf netdev_bind_sb_channel_queue +EXPORT_SYMBOL vmlinux 0xbadcaade blk_set_default_limits +EXPORT_SYMBOL vmlinux 0xbadf903e __skb_recv_udp +EXPORT_SYMBOL vmlinux 0xbae5a7a0 xp_free +EXPORT_SYMBOL vmlinux 0xbb01fcad of_lpddr3_get_ddr_timings +EXPORT_SYMBOL vmlinux 0xbb0540aa zlib_inflateReset +EXPORT_SYMBOL vmlinux 0xbb14eb31 bcmp +EXPORT_SYMBOL vmlinux 0xbb2319c6 tcf_exts_validate +EXPORT_SYMBOL vmlinux 0xbb24f607 init_cdrom_command +EXPORT_SYMBOL vmlinux 0xbb35675b __bitmap_intersects +EXPORT_SYMBOL vmlinux 0xbb3cc85f kmem_cache_size +EXPORT_SYMBOL vmlinux 0xbb49ea6c fscrypt_decrypt_bio +EXPORT_SYMBOL vmlinux 0xbb4e8dbe tty_flip_buffer_push +EXPORT_SYMBOL vmlinux 0xbb70f90a blk_mq_free_tag_set +EXPORT_SYMBOL vmlinux 0xbb720d05 phy_loopback +EXPORT_SYMBOL vmlinux 0xbb72d4fe __put_user_1 +EXPORT_SYMBOL vmlinux 0xbb838503 follow_pfn +EXPORT_SYMBOL vmlinux 0xbb86036a arm_dma_ops +EXPORT_SYMBOL vmlinux 0xbb95d999 dma_direct_map_resource +EXPORT_SYMBOL vmlinux 0xbbc93458 max8998_write_reg +EXPORT_SYMBOL vmlinux 0xbbcff9a4 check_zeroed_user +EXPORT_SYMBOL vmlinux 0xbbd5f563 inet_proto_csum_replace4 +EXPORT_SYMBOL vmlinux 0xbbd9dc5d param_ops_ulong +EXPORT_SYMBOL vmlinux 0xbbdcc3eb netpoll_poll_enable +EXPORT_SYMBOL vmlinux 0xbbdd2d99 __inc_node_page_state +EXPORT_SYMBOL vmlinux 0xbbdef33c sget +EXPORT_SYMBOL vmlinux 0xbc00dee0 __sk_backlog_rcv +EXPORT_SYMBOL vmlinux 0xbc012424 tcp_sendpage +EXPORT_SYMBOL vmlinux 0xbc05bd0a module_put +EXPORT_SYMBOL vmlinux 0xbc10dd97 __put_user_4 +EXPORT_SYMBOL vmlinux 0xbc25f7cc free_contig_range +EXPORT_SYMBOL vmlinux 0xbc358216 sget_fc +EXPORT_SYMBOL vmlinux 0xbc35cae5 bio_put +EXPORT_SYMBOL vmlinux 0xbc3e6bad tcp_filter +EXPORT_SYMBOL vmlinux 0xbc3f558b __scsi_execute +EXPORT_SYMBOL vmlinux 0xbc414170 kobject_add +EXPORT_SYMBOL vmlinux 0xbc4d7b8a finish_no_open +EXPORT_SYMBOL vmlinux 0xbc6ad4eb sock_no_getsockopt +EXPORT_SYMBOL vmlinux 0xbc701899 bh_uptodate_or_lock +EXPORT_SYMBOL vmlinux 0xbc77cd25 sk_page_frag_refill +EXPORT_SYMBOL vmlinux 0xbcab6ee6 sscanf +EXPORT_SYMBOL vmlinux 0xbcbd4263 gnet_stats_copy_app +EXPORT_SYMBOL vmlinux 0xbcbdf60f kstrtos8 +EXPORT_SYMBOL vmlinux 0xbcc308bb strnlen_user +EXPORT_SYMBOL vmlinux 0xbcc98d82 scsi_add_device +EXPORT_SYMBOL vmlinux 0xbcd28b75 pps_lookup_dev +EXPORT_SYMBOL vmlinux 0xbcf0d6fc xsk_umem_complete_tx +EXPORT_SYMBOL vmlinux 0xbcfa1860 ppp_unregister_channel +EXPORT_SYMBOL vmlinux 0xbd0c61c1 security_skb_classify_flow +EXPORT_SYMBOL vmlinux 0xbd2ec65c mmc_retune_pause +EXPORT_SYMBOL vmlinux 0xbd407123 input_mt_assign_slots +EXPORT_SYMBOL vmlinux 0xbd46dfcd simple_write_end +EXPORT_SYMBOL vmlinux 0xbd483fa1 nand_correct_data +EXPORT_SYMBOL vmlinux 0xbd4a3cb3 msm_pinctrl_remove +EXPORT_SYMBOL vmlinux 0xbd6807f0 mmc_of_parse +EXPORT_SYMBOL vmlinux 0xbd820297 rtc_lock +EXPORT_SYMBOL vmlinux 0xbd8555f8 mutex_trylock_recursive +EXPORT_SYMBOL vmlinux 0xbda8cc82 dev_uc_sync +EXPORT_SYMBOL vmlinux 0xbdad62f8 __icmp_send +EXPORT_SYMBOL vmlinux 0xbdc21701 __cleancache_invalidate_page +EXPORT_SYMBOL vmlinux 0xbdca067b vfs_fadvise +EXPORT_SYMBOL vmlinux 0xbdd38922 skb_copy_datagram_from_iter +EXPORT_SYMBOL vmlinux 0xbe0e3cba tcf_queue_work +EXPORT_SYMBOL vmlinux 0xbe0e5118 nla_memcmp +EXPORT_SYMBOL vmlinux 0xbe1420f0 netdev_state_change +EXPORT_SYMBOL vmlinux 0xbe32fea7 tty_chars_in_buffer +EXPORT_SYMBOL vmlinux 0xbe47e789 blk_mq_start_hw_queues +EXPORT_SYMBOL vmlinux 0xbe4eb6ed secure_dccpv6_sequence_number +EXPORT_SYMBOL vmlinux 0xbe58206e vm_zone_stat +EXPORT_SYMBOL vmlinux 0xbe5a24e9 xxh32_copy_state +EXPORT_SYMBOL vmlinux 0xbe5d7480 param_set_ushort +EXPORT_SYMBOL vmlinux 0xbe5e0742 tcp_enter_cwr +EXPORT_SYMBOL vmlinux 0xbe936d7f mmc_cqe_post_req +EXPORT_SYMBOL vmlinux 0xbebee8c9 udp_lib_unhash +EXPORT_SYMBOL vmlinux 0xbee90f2f __kfifo_out_peek_r +EXPORT_SYMBOL vmlinux 0xbef43296 console_conditional_schedule +EXPORT_SYMBOL vmlinux 0xbf086e8f mdiobus_read_nested +EXPORT_SYMBOL vmlinux 0xbf0e6545 inet_protos +EXPORT_SYMBOL vmlinux 0xbf4161ba pin_user_pages_unlocked +EXPORT_SYMBOL vmlinux 0xbf485d40 textsearch_find_continuous +EXPORT_SYMBOL vmlinux 0xbf4d4539 udp_table +EXPORT_SYMBOL vmlinux 0xbf5007a7 mini_qdisc_pair_block_init +EXPORT_SYMBOL vmlinux 0xbf59c419 posix_acl_init +EXPORT_SYMBOL vmlinux 0xbf7347b2 proc_doulongvec_ms_jiffies_minmax +EXPORT_SYMBOL vmlinux 0xbf865e50 dquot_disable +EXPORT_SYMBOL vmlinux 0xbf8e90ea of_translate_dma_address +EXPORT_SYMBOL vmlinux 0xbf9232f8 clk_bulk_get_all +EXPORT_SYMBOL vmlinux 0xbf9bcc8d __cap_empty_set +EXPORT_SYMBOL vmlinux 0xbfb16bff tcp_timewait_state_process +EXPORT_SYMBOL vmlinux 0xbfdf7bc3 mempool_create +EXPORT_SYMBOL vmlinux 0xbfe34c8c ip_fraglist_prepare +EXPORT_SYMBOL vmlinux 0xbfee3ad5 loop_unregister_transfer +EXPORT_SYMBOL vmlinux 0xc00c8fdf tty_port_lower_dtr_rts +EXPORT_SYMBOL vmlinux 0xc0151a10 tty_register_device +EXPORT_SYMBOL vmlinux 0xc025016c flow_keys_dissector +EXPORT_SYMBOL vmlinux 0xc0268c03 gro_find_complete_by_type +EXPORT_SYMBOL vmlinux 0xc0272ced pid_task +EXPORT_SYMBOL vmlinux 0xc02bc920 param_ops_ushort +EXPORT_SYMBOL vmlinux 0xc0304195 skb_store_bits +EXPORT_SYMBOL vmlinux 0xc034a061 rproc_get_by_phandle +EXPORT_SYMBOL vmlinux 0xc03c09e3 snd_pcm_hw_constraint_msbits +EXPORT_SYMBOL vmlinux 0xc03d9b15 seg6_hmac_info_add +EXPORT_SYMBOL vmlinux 0xc044310b clk_get +EXPORT_SYMBOL vmlinux 0xc04b3f8c ZSTD_compressCCtx +EXPORT_SYMBOL vmlinux 0xc067522d inet_frag_reasm_prepare +EXPORT_SYMBOL vmlinux 0xc069dced __put_cred +EXPORT_SYMBOL vmlinux 0xc0732d30 __cpuhp_setup_state_cpuslocked +EXPORT_SYMBOL vmlinux 0xc0763484 rfkill_blocked +EXPORT_SYMBOL vmlinux 0xc07b0863 fb_destroy_modedb +EXPORT_SYMBOL vmlinux 0xc07f4520 of_get_cpu_state_node +EXPORT_SYMBOL vmlinux 0xc0832c81 blk_mq_run_hw_queues +EXPORT_SYMBOL vmlinux 0xc0849d00 csum_and_copy_to_iter +EXPORT_SYMBOL vmlinux 0xc095344f dev_addr_init +EXPORT_SYMBOL vmlinux 0xc096e23d hdmi_drm_infoframe_init +EXPORT_SYMBOL vmlinux 0xc09f4749 disk_start_io_acct +EXPORT_SYMBOL vmlinux 0xc0a6a8c5 omap_set_dma_dest_burst_mode +EXPORT_SYMBOL vmlinux 0xc0a98385 profile_pc +EXPORT_SYMBOL vmlinux 0xc0b2664d devlink_dpipe_header_ipv4 +EXPORT_SYMBOL vmlinux 0xc0d5feee vfs_statx +EXPORT_SYMBOL vmlinux 0xc0da0e99 dim_on_top +EXPORT_SYMBOL vmlinux 0xc0e11423 bioset_init +EXPORT_SYMBOL vmlinux 0xc0ec0ad7 update_region +EXPORT_SYMBOL vmlinux 0xc0fb357a dma_fence_chain_walk +EXPORT_SYMBOL vmlinux 0xc0ff12fb nla_strdup +EXPORT_SYMBOL vmlinux 0xc105db6f netif_device_detach +EXPORT_SYMBOL vmlinux 0xc10cbf3d __invalidate_device +EXPORT_SYMBOL vmlinux 0xc112b0b3 ipv6_getsockopt +EXPORT_SYMBOL vmlinux 0xc13a7ba6 __tracepoint_kmalloc +EXPORT_SYMBOL vmlinux 0xc13e6843 phy_ethtool_set_link_ksettings +EXPORT_SYMBOL vmlinux 0xc1425404 nand_write_page_raw +EXPORT_SYMBOL vmlinux 0xc1514a3b free_irq +EXPORT_SYMBOL vmlinux 0xc15f4ed8 utf8nlen +EXPORT_SYMBOL vmlinux 0xc16410b9 ZSTD_getDictID_fromDDict +EXPORT_SYMBOL vmlinux 0xc16be39d iter_div_u64_rem +EXPORT_SYMBOL vmlinux 0xc17035f1 sock_no_getname +EXPORT_SYMBOL vmlinux 0xc173d972 tcp_sync_mss +EXPORT_SYMBOL vmlinux 0xc175d3b4 xfrm4_protocol_register +EXPORT_SYMBOL vmlinux 0xc17aa7a9 xfrm6_rcv_spi +EXPORT_SYMBOL vmlinux 0xc181ee9a dquot_scan_active +EXPORT_SYMBOL vmlinux 0xc184d96d of_get_min_tck +EXPORT_SYMBOL vmlinux 0xc1aabef7 invalidate_mapping_pages +EXPORT_SYMBOL vmlinux 0xc1c6b370 call_usermodehelper_setup +EXPORT_SYMBOL vmlinux 0xc1d8cfaf __fdget +EXPORT_SYMBOL vmlinux 0xc1e2129a netdev_notify_peers +EXPORT_SYMBOL vmlinux 0xc1e27225 i2c_smbus_write_word_data +EXPORT_SYMBOL vmlinux 0xc1e61f18 configfs_register_default_group +EXPORT_SYMBOL vmlinux 0xc2059c64 fscrypt_enqueue_decrypt_work +EXPORT_SYMBOL vmlinux 0xc206a497 to_nd_btt +EXPORT_SYMBOL vmlinux 0xc207ee07 complete_and_exit +EXPORT_SYMBOL vmlinux 0xc20afef8 ethtool_rx_flow_rule_destroy +EXPORT_SYMBOL vmlinux 0xc229411a devfreq_add_device +EXPORT_SYMBOL vmlinux 0xc230c9a8 wait_for_completion_io_timeout +EXPORT_SYMBOL vmlinux 0xc23745e5 d_mark_dontcache +EXPORT_SYMBOL vmlinux 0xc258997d snd_pcm_create_iec958_consumer +EXPORT_SYMBOL vmlinux 0xc26795ad mini_qdisc_pair_init +EXPORT_SYMBOL vmlinux 0xc267960e utf8_validate +EXPORT_SYMBOL vmlinux 0xc26b61e7 blk_queue_logical_block_size +EXPORT_SYMBOL vmlinux 0xc271c3be mutex_lock +EXPORT_SYMBOL vmlinux 0xc2819b43 inet6_register_protosw +EXPORT_SYMBOL vmlinux 0xc294e0cb module_refcount +EXPORT_SYMBOL vmlinux 0xc29902e8 elv_rb_former_request +EXPORT_SYMBOL vmlinux 0xc2a5f3b5 tcp_md5_do_add +EXPORT_SYMBOL vmlinux 0xc2acc033 hex_dump_to_buffer +EXPORT_SYMBOL vmlinux 0xc2b1d4e1 lockref_put_return +EXPORT_SYMBOL vmlinux 0xc2b299e4 open_exec +EXPORT_SYMBOL vmlinux 0xc2b4c32e md_integrity_add_rdev +EXPORT_SYMBOL vmlinux 0xc2cf2dde ZSTD_decompress_usingDDict +EXPORT_SYMBOL vmlinux 0xc2d60abe iov_iter_kvec +EXPORT_SYMBOL vmlinux 0xc2e587d1 reset_devices +EXPORT_SYMBOL vmlinux 0xc2ede9c5 gen_pool_destroy +EXPORT_SYMBOL vmlinux 0xc2f07c5a vfs_create_mount +EXPORT_SYMBOL vmlinux 0xc2f63a7a to_ndd +EXPORT_SYMBOL vmlinux 0xc306c3a8 page_frag_alloc +EXPORT_SYMBOL vmlinux 0xc3126b2b phy_advertise_supported +EXPORT_SYMBOL vmlinux 0xc31db0ce is_vmalloc_addr +EXPORT_SYMBOL vmlinux 0xc3269bb0 jbd2__journal_restart +EXPORT_SYMBOL vmlinux 0xc32c71af register_inetaddr_validator_notifier +EXPORT_SYMBOL vmlinux 0xc3391737 genphy_restart_aneg +EXPORT_SYMBOL vmlinux 0xc34a86d7 security_inode_listsecurity +EXPORT_SYMBOL vmlinux 0xc3522ab3 __scm_destroy +EXPORT_SYMBOL vmlinux 0xc358aaf8 snprintf +EXPORT_SYMBOL vmlinux 0xc36c7835 xfrm_replay_seqhi +EXPORT_SYMBOL vmlinux 0xc3716735 alloc_etherdev_mqs +EXPORT_SYMBOL vmlinux 0xc37335b0 complete +EXPORT_SYMBOL vmlinux 0xc37863e5 vme_register_bridge +EXPORT_SYMBOL vmlinux 0xc379a5c0 dev_uc_del +EXPORT_SYMBOL vmlinux 0xc37f9c6e cpufreq_update_policy +EXPORT_SYMBOL vmlinux 0xc3809e08 pcie_get_readrq +EXPORT_SYMBOL vmlinux 0xc38c83b8 mod_timer +EXPORT_SYMBOL vmlinux 0xc3981552 udp_seq_next +EXPORT_SYMBOL vmlinux 0xc3a3ab09 nf_unregister_net_hook +EXPORT_SYMBOL vmlinux 0xc3a82302 of_graph_get_endpoint_by_regs +EXPORT_SYMBOL vmlinux 0xc3a9615d pci_iomap +EXPORT_SYMBOL vmlinux 0xc3ec7dc1 __gnet_stats_copy_basic +EXPORT_SYMBOL vmlinux 0xc4040a01 xsk_clear_rx_need_wakeup +EXPORT_SYMBOL vmlinux 0xc40af356 mmc_can_trim +EXPORT_SYMBOL vmlinux 0xc415e5da sync_inode +EXPORT_SYMBOL vmlinux 0xc4173362 xp_raw_get_dma +EXPORT_SYMBOL vmlinux 0xc41bc980 iwe_stream_add_value +EXPORT_SYMBOL vmlinux 0xc4212ab9 qdisc_class_hash_insert +EXPORT_SYMBOL vmlinux 0xc42d95ad dquot_claim_space_nodirty +EXPORT_SYMBOL vmlinux 0xc433eb4e __alloc_skb +EXPORT_SYMBOL vmlinux 0xc4352fbf iov_iter_init +EXPORT_SYMBOL vmlinux 0xc45aa74c __dev_kfree_skb_irq +EXPORT_SYMBOL vmlinux 0xc4657dc8 mempool_init +EXPORT_SYMBOL vmlinux 0xc4708199 cpm_muram_addr +EXPORT_SYMBOL vmlinux 0xc4777aa9 __ctzsi2 +EXPORT_SYMBOL vmlinux 0xc47a1451 pm_vt_switch_unregister +EXPORT_SYMBOL vmlinux 0xc4845b20 register_console +EXPORT_SYMBOL vmlinux 0xc485795a mmc_wait_for_req_done +EXPORT_SYMBOL vmlinux 0xc491e0c4 jbd2_journal_force_commit +EXPORT_SYMBOL vmlinux 0xc4a500ab pci_claim_resource +EXPORT_SYMBOL vmlinux 0xc4a69054 iput +EXPORT_SYMBOL vmlinux 0xc4acc45b snd_jack_set_key +EXPORT_SYMBOL vmlinux 0xc4ad426c scsi_remove_host +EXPORT_SYMBOL vmlinux 0xc4b6ca43 udp_seq_stop +EXPORT_SYMBOL vmlinux 0xc4c2e419 filemap_check_errors +EXPORT_SYMBOL vmlinux 0xc4c91467 __nla_put +EXPORT_SYMBOL vmlinux 0xc4d98b27 iov_iter_zero +EXPORT_SYMBOL vmlinux 0xc4f05ef4 get_disk_and_module +EXPORT_SYMBOL vmlinux 0xc50d7221 unix_get_socket +EXPORT_SYMBOL vmlinux 0xc5120da2 dev_pre_changeaddr_notify +EXPORT_SYMBOL vmlinux 0xc51607db param_ops_string +EXPORT_SYMBOL vmlinux 0xc51969de genphy_c37_config_aneg +EXPORT_SYMBOL vmlinux 0xc52da066 omap_set_dma_dest_params +EXPORT_SYMBOL vmlinux 0xc52f3dac tty_throttle +EXPORT_SYMBOL vmlinux 0xc53fe81b __set_page_dirty_nobuffers +EXPORT_SYMBOL vmlinux 0xc549d4c7 __f_setown +EXPORT_SYMBOL vmlinux 0xc5524968 scsi_vpd_tpg_id +EXPORT_SYMBOL vmlinux 0xc55f9e48 dquot_get_next_id +EXPORT_SYMBOL vmlinux 0xc5619689 pci_bus_write_config_word +EXPORT_SYMBOL vmlinux 0xc581500f ZSTD_resetDStream +EXPORT_SYMBOL vmlinux 0xc5850110 printk +EXPORT_SYMBOL vmlinux 0xc58f1c00 elv_rb_find +EXPORT_SYMBOL vmlinux 0xc58fdec6 dquot_free_inode +EXPORT_SYMBOL vmlinux 0xc595e3fb copy_page_from_iter +EXPORT_SYMBOL vmlinux 0xc599a772 security_xfrm_state_delete +EXPORT_SYMBOL vmlinux 0xc5a6d10b release_and_free_resource +EXPORT_SYMBOL vmlinux 0xc5df8bcb blk_mq_tagset_wait_completed_request +EXPORT_SYMBOL vmlinux 0xc5e5573a frame_vector_to_pages +EXPORT_SYMBOL vmlinux 0xc5e74216 release_resource +EXPORT_SYMBOL vmlinux 0xc5ee1d3a key_put +EXPORT_SYMBOL vmlinux 0xc5ee6c48 kvfree_sensitive +EXPORT_SYMBOL vmlinux 0xc5f0765b brioctl_set +EXPORT_SYMBOL vmlinux 0xc5f7e801 sg_last +EXPORT_SYMBOL vmlinux 0xc5fff94e scsi_device_set_state +EXPORT_SYMBOL vmlinux 0xc6055c9e kvasprintf_const +EXPORT_SYMBOL vmlinux 0xc60d0620 __num_online_cpus +EXPORT_SYMBOL vmlinux 0xc611007c neigh_xmit +EXPORT_SYMBOL vmlinux 0xc61b1056 xfrm_dst_ifdown +EXPORT_SYMBOL vmlinux 0xc62fd229 __inc_zone_page_state +EXPORT_SYMBOL vmlinux 0xc631580a console_unlock +EXPORT_SYMBOL vmlinux 0xc633d82d phy_unregister_fixup +EXPORT_SYMBOL vmlinux 0xc6388bbe tcf_action_check_ctrlact +EXPORT_SYMBOL vmlinux 0xc63cfbac mfd_remove_devices +EXPORT_SYMBOL vmlinux 0xc6486902 __dev_get_by_name +EXPORT_SYMBOL vmlinux 0xc64d2d57 kthread_stop +EXPORT_SYMBOL vmlinux 0xc65e4e97 secure_dccp_sequence_number +EXPORT_SYMBOL vmlinux 0xc66a8304 cpu_rmap_add +EXPORT_SYMBOL vmlinux 0xc66d919f dm_table_get_mode +EXPORT_SYMBOL vmlinux 0xc67d7ffb dmam_pool_create +EXPORT_SYMBOL vmlinux 0xc6914dd9 d_hash_and_lookup +EXPORT_SYMBOL vmlinux 0xc69fce52 qcom_scm_qsmmu500_wait_safe_toggle +EXPORT_SYMBOL vmlinux 0xc6abda2e of_device_is_compatible +EXPORT_SYMBOL vmlinux 0xc6bafe4d of_device_alloc +EXPORT_SYMBOL vmlinux 0xc6cbbc89 capable +EXPORT_SYMBOL vmlinux 0xc6d774cf generic_error_remove_page +EXPORT_SYMBOL vmlinux 0xc6e223f1 skb_kill_datagram +EXPORT_SYMBOL vmlinux 0xc6e98771 dev_close +EXPORT_SYMBOL vmlinux 0xc6f46339 init_timer_key +EXPORT_SYMBOL vmlinux 0xc7040bf5 ucc_tdm_init +EXPORT_SYMBOL vmlinux 0xc70a7c7e param_ops_bool +EXPORT_SYMBOL vmlinux 0xc70c586f default_llseek +EXPORT_SYMBOL vmlinux 0xc71b4e24 ata_link_printk +EXPORT_SYMBOL vmlinux 0xc7208c3a serial8250_resume_port +EXPORT_SYMBOL vmlinux 0xc7512f79 inode_io_list_del +EXPORT_SYMBOL vmlinux 0xc76329b5 pci_disable_link_state +EXPORT_SYMBOL vmlinux 0xc76440b8 flush_dcache_page +EXPORT_SYMBOL vmlinux 0xc778f5ed dev_set_mtu +EXPORT_SYMBOL vmlinux 0xc781bd9f rfkill_resume_polling +EXPORT_SYMBOL vmlinux 0xc7856a3d inet6addr_notifier_call_chain +EXPORT_SYMBOL vmlinux 0xc79bcd36 dm_vcalloc +EXPORT_SYMBOL vmlinux 0xc7a0372a tcf_block_put_ext +EXPORT_SYMBOL vmlinux 0xc7a20d4d unregister_framebuffer +EXPORT_SYMBOL vmlinux 0xc7a3afbf unregister_tcf_proto_ops +EXPORT_SYMBOL vmlinux 0xc7a4fbed rtnl_lock +EXPORT_SYMBOL vmlinux 0xc7ac87f0 tty_kref_put +EXPORT_SYMBOL vmlinux 0xc7b077e3 snd_mixer_oss_notify_callback +EXPORT_SYMBOL vmlinux 0xc7b26024 sock_bind_add +EXPORT_SYMBOL vmlinux 0xc7c1107a LZ4_decompress_safe +EXPORT_SYMBOL vmlinux 0xc7c2f5bb bio_copy_data +EXPORT_SYMBOL vmlinux 0xc7c49209 of_mdio_find_bus +EXPORT_SYMBOL vmlinux 0xc7c75b61 d_add +EXPORT_SYMBOL vmlinux 0xc7d094b5 dm_read_arg_group +EXPORT_SYMBOL vmlinux 0xc7ec6c27 strspn +EXPORT_SYMBOL vmlinux 0xc8173b16 fs_lookup_param +EXPORT_SYMBOL vmlinux 0xc81b41f6 tcp_connect +EXPORT_SYMBOL vmlinux 0xc81e91a8 napi_busy_loop +EXPORT_SYMBOL vmlinux 0xc81e9e69 snd_power_wait +EXPORT_SYMBOL vmlinux 0xc82a1af8 netpoll_print_options +EXPORT_SYMBOL vmlinux 0xc8339e24 string_unescape +EXPORT_SYMBOL vmlinux 0xc8351cac dquot_alloc_inode +EXPORT_SYMBOL vmlinux 0xc84a0a7e seq_hlist_start_rcu +EXPORT_SYMBOL vmlinux 0xc8564db4 pci_try_set_mwi +EXPORT_SYMBOL vmlinux 0xc858563e tcf_exts_dump_stats +EXPORT_SYMBOL vmlinux 0xc872fd85 in6addr_interfacelocal_allnodes +EXPORT_SYMBOL vmlinux 0xc8827b75 sysctl_vals +EXPORT_SYMBOL vmlinux 0xc890c008 zlib_deflateEnd +EXPORT_SYMBOL vmlinux 0xc8a91f5b cpumask_local_spread +EXPORT_SYMBOL vmlinux 0xc8b58a25 __memset64 +EXPORT_SYMBOL vmlinux 0xc921e314 truncate_inode_pages +EXPORT_SYMBOL vmlinux 0xc930f423 get_ipc_ns_exported +EXPORT_SYMBOL vmlinux 0xc93b7051 pci_remove_bus +EXPORT_SYMBOL vmlinux 0xc945b365 blk_mq_tagset_busy_iter +EXPORT_SYMBOL vmlinux 0xc95611aa nvdimm_namespace_capacity +EXPORT_SYMBOL vmlinux 0xc9634df9 in6addr_linklocal_allrouters +EXPORT_SYMBOL vmlinux 0xc972449f mempool_alloc_slab +EXPORT_SYMBOL vmlinux 0xc973b373 kmalloc_caches +EXPORT_SYMBOL vmlinux 0xc981a5a3 kill_anon_super +EXPORT_SYMBOL vmlinux 0xc981df77 del_gendisk +EXPORT_SYMBOL vmlinux 0xc9822234 clk_register_clkdev +EXPORT_SYMBOL vmlinux 0xc9823220 mdiobus_write_nested +EXPORT_SYMBOL vmlinux 0xc983922d locks_mandatory_area +EXPORT_SYMBOL vmlinux 0xc99cbb83 gen_pool_dma_alloc_align +EXPORT_SYMBOL vmlinux 0xc99e2a55 twl_rev +EXPORT_SYMBOL vmlinux 0xc9a38fd1 input_mt_sync_frame +EXPORT_SYMBOL vmlinux 0xc9c0525f locks_remove_posix +EXPORT_SYMBOL vmlinux 0xc9ca3698 register_sysctl_table +EXPORT_SYMBOL vmlinux 0xc9cb4bdb lookup_positive_unlocked +EXPORT_SYMBOL vmlinux 0xc9d2dc36 flow_rule_match_ct +EXPORT_SYMBOL vmlinux 0xc9dc31f4 bfifo_qdisc_ops +EXPORT_SYMBOL vmlinux 0xc9df055a xfrm_policy_walk_init +EXPORT_SYMBOL vmlinux 0xc9e9d5f9 vme_alloc_consistent +EXPORT_SYMBOL vmlinux 0xc9fd562a cdrom_media_changed +EXPORT_SYMBOL vmlinux 0xca1ea2c7 blk_set_stacking_limits +EXPORT_SYMBOL vmlinux 0xca21ebd3 bitmap_free +EXPORT_SYMBOL vmlinux 0xca431c05 wake_bit_function +EXPORT_SYMBOL vmlinux 0xca75f08e set_page_dirty_lock +EXPORT_SYMBOL vmlinux 0xca813ce6 LZ4_decompress_safe_continue +EXPORT_SYMBOL vmlinux 0xca813d25 dev_uc_flush +EXPORT_SYMBOL vmlinux 0xca83aaec snd_card_file_remove +EXPORT_SYMBOL vmlinux 0xca8b6d45 __getblk_gfp +EXPORT_SYMBOL vmlinux 0xca9360b5 rb_next +EXPORT_SYMBOL vmlinux 0xca974ab4 ab3100_event_register +EXPORT_SYMBOL vmlinux 0xcab42a9c blk_queue_virt_boundary +EXPORT_SYMBOL vmlinux 0xcab897e1 phy_attach +EXPORT_SYMBOL vmlinux 0xcac5ef5b input_get_keycode +EXPORT_SYMBOL vmlinux 0xcad6559c dev_remove_offload +EXPORT_SYMBOL vmlinux 0xcaef8286 kstrtos8_from_user +EXPORT_SYMBOL vmlinux 0xcaf0abc0 pci_enable_device +EXPORT_SYMBOL vmlinux 0xcaf2c603 scsi_sd_pm_domain +EXPORT_SYMBOL vmlinux 0xcaf50034 dm_put_table_device +EXPORT_SYMBOL vmlinux 0xcb0288ea ledtrig_cpu +EXPORT_SYMBOL vmlinux 0xcb3887c7 iptun_encaps +EXPORT_SYMBOL vmlinux 0xcb3ae215 call_blocking_lsm_notifier +EXPORT_SYMBOL vmlinux 0xcb510bc2 complete_all +EXPORT_SYMBOL vmlinux 0xcb606eb9 xa_load +EXPORT_SYMBOL vmlinux 0xcb86eea1 igrab +EXPORT_SYMBOL vmlinux 0xcb8c753b mempool_exit +EXPORT_SYMBOL vmlinux 0xcb9460f5 cros_ec_cmd_xfer_status +EXPORT_SYMBOL vmlinux 0xcb95e2d2 generic_write_end +EXPORT_SYMBOL vmlinux 0xcba0e0fe __ethtool_get_link_ksettings +EXPORT_SYMBOL vmlinux 0xcba4abe3 list_sort +EXPORT_SYMBOL vmlinux 0xcbc32064 nvdimm_namespace_disk_name +EXPORT_SYMBOL vmlinux 0xcbcd7955 xfrm_unregister_km +EXPORT_SYMBOL vmlinux 0xcbd4898c fortify_panic +EXPORT_SYMBOL vmlinux 0xcbd65e9b xfrm_policy_bysel_ctx +EXPORT_SYMBOL vmlinux 0xcbdacac6 devm_memremap +EXPORT_SYMBOL vmlinux 0xcbe8b9ed xfrm6_protocol_register +EXPORT_SYMBOL vmlinux 0xcbe9078f touchscreen_report_pos +EXPORT_SYMBOL vmlinux 0xcbf1dbd0 utf8len +EXPORT_SYMBOL vmlinux 0xcc15d6bf netdev_upper_dev_unlink +EXPORT_SYMBOL vmlinux 0xcc248d26 serial8250_suspend_port +EXPORT_SYMBOL vmlinux 0xcc29863f simple_pin_fs +EXPORT_SYMBOL vmlinux 0xcc30f0f1 tcp_tx_delay_enabled +EXPORT_SYMBOL vmlinux 0xcc323ded vga_set_legacy_decoding +EXPORT_SYMBOL vmlinux 0xcc3b83c2 dm_kcopyd_zero +EXPORT_SYMBOL vmlinux 0xcc445ceb __sg_page_iter_dma_next +EXPORT_SYMBOL vmlinux 0xcc4546da vme_irq_request +EXPORT_SYMBOL vmlinux 0xcc4a9317 sock_create_kern +EXPORT_SYMBOL vmlinux 0xcc5005fe msleep_interruptible +EXPORT_SYMBOL vmlinux 0xcc50cdb7 fs_param_is_u64 +EXPORT_SYMBOL vmlinux 0xcc5d22d9 can_do_mlock +EXPORT_SYMBOL vmlinux 0xcc6a729f snd_ctl_enum_info +EXPORT_SYMBOL vmlinux 0xcc737b90 napi_complete_done +EXPORT_SYMBOL vmlinux 0xcc7e75bf misc_register +EXPORT_SYMBOL vmlinux 0xcc958898 get_tree_single_reconf +EXPORT_SYMBOL vmlinux 0xcc9c9247 devm_clk_put +EXPORT_SYMBOL vmlinux 0xcca33b3e scsi_alloc_sgtables +EXPORT_SYMBOL vmlinux 0xccc21f5e input_get_new_minor +EXPORT_SYMBOL vmlinux 0xccc646af tcp_add_backlog +EXPORT_SYMBOL vmlinux 0xccc758d8 nla_policy_len +EXPORT_SYMBOL vmlinux 0xccd4c999 __sg_page_iter_start +EXPORT_SYMBOL vmlinux 0xccfb9e07 dst_default_metrics +EXPORT_SYMBOL vmlinux 0xccfd2ebc scsi_dev_info_list_del_keyed +EXPORT_SYMBOL vmlinux 0xcd00abbc add_wait_queue_exclusive +EXPORT_SYMBOL vmlinux 0xcd083b10 unregister_sound_dsp +EXPORT_SYMBOL vmlinux 0xcd279169 nla_find +EXPORT_SYMBOL vmlinux 0xcd2d7264 netif_set_xps_queue +EXPORT_SYMBOL vmlinux 0xcd30b95a tmio_core_mmc_clk_div +EXPORT_SYMBOL vmlinux 0xcd5470d8 tcp_rtx_synack +EXPORT_SYMBOL vmlinux 0xcd5725b6 scsi_get_device_flags_keyed +EXPORT_SYMBOL vmlinux 0xcd5e9fd6 reuseport_detach_sock +EXPORT_SYMBOL vmlinux 0xcd63c845 __aeabi_lasr +EXPORT_SYMBOL vmlinux 0xcd79cb68 i2c_del_adapter +EXPORT_SYMBOL vmlinux 0xcd86aa85 tc_setup_cb_destroy +EXPORT_SYMBOL vmlinux 0xcda23794 devfreq_remove_device +EXPORT_SYMBOL vmlinux 0xcda72c22 netdev_emerg +EXPORT_SYMBOL vmlinux 0xcdc39c9e security_ismaclabel +EXPORT_SYMBOL vmlinux 0xcde77bcc free_opal_dev +EXPORT_SYMBOL vmlinux 0xcdfa135d ZSTD_CDictWorkspaceBound +EXPORT_SYMBOL vmlinux 0xcdfd68a2 snd_jack_set_parent +EXPORT_SYMBOL vmlinux 0xce0dff07 kill_pid +EXPORT_SYMBOL vmlinux 0xce2610c8 vmf_insert_pfn_prot +EXPORT_SYMBOL vmlinux 0xce2840e7 irq_set_irq_wake +EXPORT_SYMBOL vmlinux 0xce3724e6 try_lookup_one_len +EXPORT_SYMBOL vmlinux 0xce3ca308 copy_from_user_toio +EXPORT_SYMBOL vmlinux 0xce4a559c pci_prepare_to_sleep +EXPORT_SYMBOL vmlinux 0xce4cdb8e fb_find_best_mode +EXPORT_SYMBOL vmlinux 0xce552fda file_write_and_wait_range +EXPORT_SYMBOL vmlinux 0xce5ac24f zlib_inflate_workspacesize +EXPORT_SYMBOL vmlinux 0xce69d9d9 __dec_node_page_state +EXPORT_SYMBOL vmlinux 0xce731b34 ucc_slow_get_qe_cr_subblock +EXPORT_SYMBOL vmlinux 0xce77aa5a lease_modify +EXPORT_SYMBOL vmlinux 0xce7bfe70 vm_brk +EXPORT_SYMBOL vmlinux 0xce86d04e sock_wmalloc +EXPORT_SYMBOL vmlinux 0xcea486ec clkdev_alloc +EXPORT_SYMBOL vmlinux 0xceab0311 strchrnul +EXPORT_SYMBOL vmlinux 0xcede275c memremap +EXPORT_SYMBOL vmlinux 0xcede9a41 flow_block_cb_free +EXPORT_SYMBOL vmlinux 0xceec8abd __mb_cache_entry_free +EXPORT_SYMBOL vmlinux 0xceec8fbf security_sctp_bind_connect +EXPORT_SYMBOL vmlinux 0xcef0dee7 override_creds +EXPORT_SYMBOL vmlinux 0xcef8b427 vme_dma_list_exec +EXPORT_SYMBOL vmlinux 0xcefcd99a serial8250_unregister_port +EXPORT_SYMBOL vmlinux 0xcf000c7e hdmi_infoframe_check +EXPORT_SYMBOL vmlinux 0xcf01f610 panic_notifier_list +EXPORT_SYMBOL vmlinux 0xcf1ab349 vfs_parse_fs_string +EXPORT_SYMBOL vmlinux 0xcf1c6ca3 cmdline_parts_find +EXPORT_SYMBOL vmlinux 0xcf27333f ipv6_dev_get_saddr +EXPORT_SYMBOL vmlinux 0xcf3fac84 cpumask_next +EXPORT_SYMBOL vmlinux 0xcf4faba6 register_fib_notifier +EXPORT_SYMBOL vmlinux 0xcf75d105 debugfs_create_automount +EXPORT_SYMBOL vmlinux 0xcf7e1d1d hdmi_vendor_infoframe_pack_only +EXPORT_SYMBOL vmlinux 0xcf86cdac queue_delayed_work_on +EXPORT_SYMBOL vmlinux 0xcf9415fb sk_ns_capable +EXPORT_SYMBOL vmlinux 0xcf9b558d touchscreen_set_mt_pos +EXPORT_SYMBOL vmlinux 0xcfdb9d27 configfs_undepend_item +EXPORT_SYMBOL vmlinux 0xcffc8805 pci_enable_atomic_ops_to_root +EXPORT_SYMBOL vmlinux 0xd0325335 dev_get_by_name +EXPORT_SYMBOL vmlinux 0xd042475c qdisc_get_rtab +EXPORT_SYMBOL vmlinux 0xd0459dff pci_back_from_sleep +EXPORT_SYMBOL vmlinux 0xd04c1a64 sysctl_devconf_inherit_init_net +EXPORT_SYMBOL vmlinux 0xd04c7414 __tracepoint_kfree +EXPORT_SYMBOL vmlinux 0xd04febe9 arm_elf_read_implies_exec +EXPORT_SYMBOL vmlinux 0xd05f79ae param_ops_invbool +EXPORT_SYMBOL vmlinux 0xd0654aba woken_wake_function +EXPORT_SYMBOL vmlinux 0xd07fea52 udp_disconnect +EXPORT_SYMBOL vmlinux 0xd0a91bab skip_spaces +EXPORT_SYMBOL vmlinux 0xd0ab6984 scsi_device_lookup_by_target +EXPORT_SYMBOL vmlinux 0xd0ba273b inet_stream_ops +EXPORT_SYMBOL vmlinux 0xd0c26fa9 __ps2_command +EXPORT_SYMBOL vmlinux 0xd0ca0d1a sync_inode_metadata +EXPORT_SYMBOL vmlinux 0xd0d7b6c5 fbcon_rotate_ccw +EXPORT_SYMBOL vmlinux 0xd0e9fb09 release_firmware +EXPORT_SYMBOL vmlinux 0xd1074304 generic_fadvise +EXPORT_SYMBOL vmlinux 0xd109778f gen_pool_dma_alloc_algo +EXPORT_SYMBOL vmlinux 0xd10aea1a scsi_cmd_ioctl +EXPORT_SYMBOL vmlinux 0xd10c0a78 md_reload_sb +EXPORT_SYMBOL vmlinux 0xd11dd8ea register_gifconf +EXPORT_SYMBOL vmlinux 0xd12c4bb7 vlan_vid_del +EXPORT_SYMBOL vmlinux 0xd134d775 i2c_smbus_xfer +EXPORT_SYMBOL vmlinux 0xd1363cc1 ucs2_strsize +EXPORT_SYMBOL vmlinux 0xd141750a kernel_sendpage +EXPORT_SYMBOL vmlinux 0xd14f1c6a fqdir_init +EXPORT_SYMBOL vmlinux 0xd156b914 devm_pci_alloc_host_bridge +EXPORT_SYMBOL vmlinux 0xd16f5836 flow_rule_match_eth_addrs +EXPORT_SYMBOL vmlinux 0xd1816f32 frontswap_writethrough +EXPORT_SYMBOL vmlinux 0xd19580af ppp_channel_index +EXPORT_SYMBOL vmlinux 0xd1975916 inc_zone_page_state +EXPORT_SYMBOL vmlinux 0xd19b66e9 account_page_redirty +EXPORT_SYMBOL vmlinux 0xd1b0027c abx500_get_register_interruptible +EXPORT_SYMBOL vmlinux 0xd1b3ca59 map_destroy +EXPORT_SYMBOL vmlinux 0xd1d87e92 scsi_mlreturn_string +EXPORT_SYMBOL vmlinux 0xd1d91ec5 blk_mq_alloc_request +EXPORT_SYMBOL vmlinux 0xd1e9ee33 dev_driver_string +EXPORT_SYMBOL vmlinux 0xd204b040 generic_file_write_iter +EXPORT_SYMBOL vmlinux 0xd2051916 qcom_scm_cpu_power_down +EXPORT_SYMBOL vmlinux 0xd221916a param_ops_int +EXPORT_SYMBOL vmlinux 0xd222a7eb security_cred_getsecid +EXPORT_SYMBOL vmlinux 0xd2478e23 tty_name +EXPORT_SYMBOL vmlinux 0xd25d4f74 console_blank_hook +EXPORT_SYMBOL vmlinux 0xd26ba520 security_sock_graft +EXPORT_SYMBOL vmlinux 0xd26c36a9 genphy_setup_forced +EXPORT_SYMBOL vmlinux 0xd27b25dd blk_check_plugged +EXPORT_SYMBOL vmlinux 0xd2802d5c pgprot_kernel +EXPORT_SYMBOL vmlinux 0xd28440af mini_qdisc_pair_swap +EXPORT_SYMBOL vmlinux 0xd288841c omap_get_dma_dst_pos +EXPORT_SYMBOL vmlinux 0xd28dc97a netdev_pick_tx +EXPORT_SYMBOL vmlinux 0xd2984faa jbd2_journal_inode_ranged_write +EXPORT_SYMBOL vmlinux 0xd2b17698 napi_gro_frags +EXPORT_SYMBOL vmlinux 0xd2b31c9f of_node_get +EXPORT_SYMBOL vmlinux 0xd2ccbe3a bdget_disk +EXPORT_SYMBOL vmlinux 0xd2da1048 register_netdevice_notifier +EXPORT_SYMBOL vmlinux 0xd2eb32b9 tcp_rx_skb_cache_key +EXPORT_SYMBOL vmlinux 0xd2f969f6 mipi_dsi_dcs_enter_sleep_mode +EXPORT_SYMBOL vmlinux 0xd3032194 netif_napi_del +EXPORT_SYMBOL vmlinux 0xd3038d2a xfrm_state_lookup_byspi +EXPORT_SYMBOL vmlinux 0xd31ccb06 of_machine_is_compatible +EXPORT_SYMBOL vmlinux 0xd3213a2b input_flush_device +EXPORT_SYMBOL vmlinux 0xd32d6c08 lockref_get +EXPORT_SYMBOL vmlinux 0xd32ef590 dev_pick_tx_cpu_id +EXPORT_SYMBOL vmlinux 0xd34f74bb free_cgroup_ns +EXPORT_SYMBOL vmlinux 0xd35a6d31 mempool_kmalloc +EXPORT_SYMBOL vmlinux 0xd35f75a1 match_string +EXPORT_SYMBOL vmlinux 0xd36dc10c get_random_u32 +EXPORT_SYMBOL vmlinux 0xd39bf675 input_mt_get_slot_by_key +EXPORT_SYMBOL vmlinux 0xd39fa6ab __kfifo_alloc +EXPORT_SYMBOL vmlinux 0xd3acb99f key_revoke +EXPORT_SYMBOL vmlinux 0xd3e923cf mnt_drop_write_file +EXPORT_SYMBOL vmlinux 0xd3eaf1ed devlink_dpipe_entry_clear +EXPORT_SYMBOL vmlinux 0xd400d866 dentry_path_raw +EXPORT_SYMBOL vmlinux 0xd4023427 msi_desc_to_pci_dev +EXPORT_SYMBOL vmlinux 0xd404ec0e uart_register_driver +EXPORT_SYMBOL vmlinux 0xd406d266 fb_mode_is_equal +EXPORT_SYMBOL vmlinux 0xd4153d39 ping_prot +EXPORT_SYMBOL vmlinux 0xd429b1b8 dcb_ieee_delapp +EXPORT_SYMBOL vmlinux 0xd4302b3a bd_start_claiming +EXPORT_SYMBOL vmlinux 0xd4403085 sock_i_ino +EXPORT_SYMBOL vmlinux 0xd440750a dm_io +EXPORT_SYMBOL vmlinux 0xd446375f of_find_device_by_node +EXPORT_SYMBOL vmlinux 0xd446fd11 pci_request_selected_regions_exclusive +EXPORT_SYMBOL vmlinux 0xd44e5ab0 phy_register_fixup_for_id +EXPORT_SYMBOL vmlinux 0xd45536ff netif_rx +EXPORT_SYMBOL vmlinux 0xd455c605 nd_dev_to_uuid +EXPORT_SYMBOL vmlinux 0xd45c7253 try_module_get +EXPORT_SYMBOL vmlinux 0xd45f768a fs_bio_set +EXPORT_SYMBOL vmlinux 0xd46b54dd flush_delayed_work +EXPORT_SYMBOL vmlinux 0xd47153ca dquot_commit +EXPORT_SYMBOL vmlinux 0xd47303ac mmc_can_secure_erase_trim +EXPORT_SYMBOL vmlinux 0xd4835ef8 dmi_check_system +EXPORT_SYMBOL vmlinux 0xd4896dca __check_sticky +EXPORT_SYMBOL vmlinux 0xd48fdeef dql_completed +EXPORT_SYMBOL vmlinux 0xd4a62c9a uart_resume_port +EXPORT_SYMBOL vmlinux 0xd4bb4a82 inet6addr_validator_notifier_call_chain +EXPORT_SYMBOL vmlinux 0xd4bf491a napi_gro_receive +EXPORT_SYMBOL vmlinux 0xd4db9859 inet_csk_complete_hashdance +EXPORT_SYMBOL vmlinux 0xd4e2f0e4 gen_pool_set_algo +EXPORT_SYMBOL vmlinux 0xd4e6fd82 page_address +EXPORT_SYMBOL vmlinux 0xd4eaa59f xfrm_policy_alloc +EXPORT_SYMBOL vmlinux 0xd4ee48f2 free_inode_nonrcu +EXPORT_SYMBOL vmlinux 0xd4f827a0 __fs_parse +EXPORT_SYMBOL vmlinux 0xd4fa5a87 __kfifo_dma_out_prepare +EXPORT_SYMBOL vmlinux 0xd5011015 unmap_mapping_range +EXPORT_SYMBOL vmlinux 0xd5263820 mb_cache_destroy +EXPORT_SYMBOL vmlinux 0xd528e417 is_subdir +EXPORT_SYMBOL vmlinux 0xd5419a57 tty_lock +EXPORT_SYMBOL vmlinux 0xd591a5d8 config_item_put +EXPORT_SYMBOL vmlinux 0xd593381f i2c_verify_adapter +EXPORT_SYMBOL vmlinux 0xd5aca501 flow_rule_match_vlan +EXPORT_SYMBOL vmlinux 0xd5b3d0d5 xxh64_copy_state +EXPORT_SYMBOL vmlinux 0xd5b9c152 phy_write_mmd +EXPORT_SYMBOL vmlinux 0xd5cee70d fscrypt_has_permitted_context +EXPORT_SYMBOL vmlinux 0xd5d3f100 blk_queue_dma_alignment +EXPORT_SYMBOL vmlinux 0xd5df3787 __sb_end_write +EXPORT_SYMBOL vmlinux 0xd5e43edd request_key_rcu +EXPORT_SYMBOL vmlinux 0xd5eec907 ___pskb_trim +EXPORT_SYMBOL vmlinux 0xd5f52d4f netdev_rss_key_fill +EXPORT_SYMBOL vmlinux 0xd5f7dceb fbcon_set_tileops +EXPORT_SYMBOL vmlinux 0xd6062103 blk_mq_run_hw_queue +EXPORT_SYMBOL vmlinux 0xd60736ec gf128mul_free_64k +EXPORT_SYMBOL vmlinux 0xd6205c02 ZSTD_compress_usingCDict +EXPORT_SYMBOL vmlinux 0xd621d1a5 dma_set_coherent_mask +EXPORT_SYMBOL vmlinux 0xd627480b strncat +EXPORT_SYMBOL vmlinux 0xd637ffe1 __sg_alloc_table_from_pages +EXPORT_SYMBOL vmlinux 0xd63fafc2 div64_u64_rem +EXPORT_SYMBOL vmlinux 0xd655716d i2c_smbus_write_byte_data +EXPORT_SYMBOL vmlinux 0xd6582ab0 xa_extract +EXPORT_SYMBOL vmlinux 0xd65a6621 request_key_with_auxdata +EXPORT_SYMBOL vmlinux 0xd66ff323 touchscreen_parse_properties +EXPORT_SYMBOL vmlinux 0xd6749d8a rtnl_notify +EXPORT_SYMBOL vmlinux 0xd674fa41 d_set_d_op +EXPORT_SYMBOL vmlinux 0xd675467c dev_loopback_xmit +EXPORT_SYMBOL vmlinux 0xd67ab6f0 thermal_cdev_update +EXPORT_SYMBOL vmlinux 0xd688716b dm_kcopyd_client_create +EXPORT_SYMBOL vmlinux 0xd68c5a1f adjust_resource +EXPORT_SYMBOL vmlinux 0xd69e0eeb tcp_get_md5sig_pool +EXPORT_SYMBOL vmlinux 0xd6a91f54 twl_i2c_read +EXPORT_SYMBOL vmlinux 0xd6bc04ff cmd_db_read_aux_data +EXPORT_SYMBOL vmlinux 0xd6be813b of_find_node_by_name +EXPORT_SYMBOL vmlinux 0xd6cfd5ce crypto_sha512_finup +EXPORT_SYMBOL vmlinux 0xd6d4a9c0 ptp_schedule_worker +EXPORT_SYMBOL vmlinux 0xd6eaaea1 full_name_hash +EXPORT_SYMBOL vmlinux 0xd6ee688f vmalloc +EXPORT_SYMBOL vmlinux 0xd6fb94a8 kern_unmount +EXPORT_SYMBOL vmlinux 0xd6fde043 is_module_sig_enforced +EXPORT_SYMBOL vmlinux 0xd70d35a1 gf128mul_4k_bbe +EXPORT_SYMBOL vmlinux 0xd71a2592 discard_new_inode +EXPORT_SYMBOL vmlinux 0xd720d0c8 submit_bio_wait +EXPORT_SYMBOL vmlinux 0xd72fbfd2 remap_pfn_range +EXPORT_SYMBOL vmlinux 0xd732dbbd d_set_fallthru +EXPORT_SYMBOL vmlinux 0xd7355a97 dump_align +EXPORT_SYMBOL vmlinux 0xd738ca1b phy_unregister_fixup_for_uid +EXPORT_SYMBOL vmlinux 0xd73baed7 vfs_mkobj +EXPORT_SYMBOL vmlinux 0xd74b6944 flow_rule_match_mpls +EXPORT_SYMBOL vmlinux 0xd7515d32 rtnl_kfree_skbs +EXPORT_SYMBOL vmlinux 0xd763d027 unregister_netdevice_queue +EXPORT_SYMBOL vmlinux 0xd76574b5 dcache_dir_open +EXPORT_SYMBOL vmlinux 0xd7680f6e vmf_insert_mixed +EXPORT_SYMBOL vmlinux 0xd7689575 nd_region_acquire_lane +EXPORT_SYMBOL vmlinux 0xd797b9a5 vme_master_write +EXPORT_SYMBOL vmlinux 0xd79d7189 of_find_node_by_phandle +EXPORT_SYMBOL vmlinux 0xd79e0310 netlink_unicast +EXPORT_SYMBOL vmlinux 0xd79e6222 udp_flush_pending_frames +EXPORT_SYMBOL vmlinux 0xd7be8b81 devfreq_monitor_start +EXPORT_SYMBOL vmlinux 0xd7c7bbfa pci_clear_mwi +EXPORT_SYMBOL vmlinux 0xd7d0acfc input_mt_report_slot_state +EXPORT_SYMBOL vmlinux 0xd7d280ad irq_poll_complete +EXPORT_SYMBOL vmlinux 0xd7d7f438 release_pages +EXPORT_SYMBOL vmlinux 0xd7e56a4e simple_strtoll +EXPORT_SYMBOL vmlinux 0xd7eb7840 uart_suspend_port +EXPORT_SYMBOL vmlinux 0xd7fd12a7 ipv4_specific +EXPORT_SYMBOL vmlinux 0xd8030aaf iov_iter_get_pages_alloc +EXPORT_SYMBOL vmlinux 0xd808fba8 abx500_set_register_interruptible +EXPORT_SYMBOL vmlinux 0xd815cfa5 dma_resv_add_shared_fence +EXPORT_SYMBOL vmlinux 0xd821246f __set_page_dirty_buffers +EXPORT_SYMBOL vmlinux 0xd82907cb i2c_smbus_read_i2c_block_data_or_emulated +EXPORT_SYMBOL vmlinux 0xd8410611 mempool_alloc +EXPORT_SYMBOL vmlinux 0xd845bee5 tcp_mtup_init +EXPORT_SYMBOL vmlinux 0xd8602b6a tun_is_xdp_frame +EXPORT_SYMBOL vmlinux 0xd860755b __tracepoint_spi_transfer_start +EXPORT_SYMBOL vmlinux 0xd86b7a9f page_pool_destroy +EXPORT_SYMBOL vmlinux 0xd875584a __genradix_ptr +EXPORT_SYMBOL vmlinux 0xd87b9ae1 single_open_size +EXPORT_SYMBOL vmlinux 0xd89da37f movable_zone +EXPORT_SYMBOL vmlinux 0xd89ee11f krait_set_l2_indirect_reg +EXPORT_SYMBOL vmlinux 0xd8a10744 ndisc_mc_map +EXPORT_SYMBOL vmlinux 0xd8a1596e d_prune_aliases +EXPORT_SYMBOL vmlinux 0xd8a994eb scsi_extd_sense_format +EXPORT_SYMBOL vmlinux 0xd8ae04b4 pci_wake_from_d3 +EXPORT_SYMBOL vmlinux 0xd8b3b2f7 blk_queue_segment_boundary +EXPORT_SYMBOL vmlinux 0xd8d599a1 phy_attached_print +EXPORT_SYMBOL vmlinux 0xd8e45145 unix_destruct_scm +EXPORT_SYMBOL vmlinux 0xd8e855af tcf_block_put +EXPORT_SYMBOL vmlinux 0xd90ea19b vfs_setpos +EXPORT_SYMBOL vmlinux 0xd90f6c12 end_page_writeback +EXPORT_SYMBOL vmlinux 0xd912045a dev_get_flags +EXPORT_SYMBOL vmlinux 0xd9144b5f sock_no_setsockopt +EXPORT_SYMBOL vmlinux 0xd916bc5b security_inode_getsecctx +EXPORT_SYMBOL vmlinux 0xd91a4254 __remove_inode_hash +EXPORT_SYMBOL vmlinux 0xd91c4639 abx500_register_ops +EXPORT_SYMBOL vmlinux 0xd9237104 __phy_resume +EXPORT_SYMBOL vmlinux 0xd9303880 bio_copy_data_iter +EXPORT_SYMBOL vmlinux 0xd94cc893 blk_mq_kick_requeue_list +EXPORT_SYMBOL vmlinux 0xd955d2b7 omap_set_dma_dest_data_pack +EXPORT_SYMBOL vmlinux 0xd9702186 serial8250_do_pm +EXPORT_SYMBOL vmlinux 0xd983f138 mmc_unregister_driver +EXPORT_SYMBOL vmlinux 0xd985dc99 mempool_free_pages +EXPORT_SYMBOL vmlinux 0xd9892a1b ip_sock_set_pktinfo +EXPORT_SYMBOL vmlinux 0xd9a0116a pci_release_regions +EXPORT_SYMBOL vmlinux 0xd9ce8f0c strnlen +EXPORT_SYMBOL vmlinux 0xd9d8fd16 register_restart_handler +EXPORT_SYMBOL vmlinux 0xd9d952d1 crypto_aes_sbox +EXPORT_SYMBOL vmlinux 0xd9e7d3b7 jbd2_journal_errno +EXPORT_SYMBOL vmlinux 0xd9ebef65 page_cache_next_miss +EXPORT_SYMBOL vmlinux 0xd9f41b00 __skb_flow_get_ports +EXPORT_SYMBOL vmlinux 0xda00fd5a vc_cons +EXPORT_SYMBOL vmlinux 0xda3d10a8 security_tun_dev_open +EXPORT_SYMBOL vmlinux 0xda533f42 snd_pcm_hw_constraint_ratdens +EXPORT_SYMBOL vmlinux 0xda5342d0 kmem_cache_create_usercopy +EXPORT_SYMBOL vmlinux 0xda5f32e0 phy_ethtool_set_wol +EXPORT_SYMBOL vmlinux 0xda6fc0b3 __percpu_counter_compare +EXPORT_SYMBOL vmlinux 0xda72a7ec ZSTD_nextInputType +EXPORT_SYMBOL vmlinux 0xda85fcd2 ipv6_dev_mc_dec +EXPORT_SYMBOL vmlinux 0xda872864 security_locked_down +EXPORT_SYMBOL vmlinux 0xda87d7ca tcp_sock_set_nodelay +EXPORT_SYMBOL vmlinux 0xda89ea3b ip_idents_reserve +EXPORT_SYMBOL vmlinux 0xdaab1199 netdev_refcnt_read +EXPORT_SYMBOL vmlinux 0xdaacc800 register_key_type +EXPORT_SYMBOL vmlinux 0xdac4913a bitmap_allocate_region +EXPORT_SYMBOL vmlinux 0xdac6f745 t10_pi_type3_crc +EXPORT_SYMBOL vmlinux 0xdac739f6 ZSTD_initCCtx +EXPORT_SYMBOL vmlinux 0xdad97f94 __raw_writesw +EXPORT_SYMBOL vmlinux 0xdae0bd87 ip_setsockopt +EXPORT_SYMBOL vmlinux 0xdae23bc0 scsi_register_interface +EXPORT_SYMBOL vmlinux 0xdaed9d10 dquot_mark_dquot_dirty +EXPORT_SYMBOL vmlinux 0xdb0d39ea pci_request_region +EXPORT_SYMBOL vmlinux 0xdb152625 rt6_lookup +EXPORT_SYMBOL vmlinux 0xdb27e5f4 mfd_cell_enable +EXPORT_SYMBOL vmlinux 0xdb3fac1d ps2_init +EXPORT_SYMBOL vmlinux 0xdb45a05a netdev_adjacent_change_commit +EXPORT_SYMBOL vmlinux 0xdb68bbad rfkill_destroy +EXPORT_SYMBOL vmlinux 0xdb760f52 __kfifo_free +EXPORT_SYMBOL vmlinux 0xdb81e2fc __wait_on_bit +EXPORT_SYMBOL vmlinux 0xdb895f40 proc_create_data +EXPORT_SYMBOL vmlinux 0xdb9482d8 blk_mq_delay_run_hw_queues +EXPORT_SYMBOL vmlinux 0xdb9ca3c5 _raw_spin_lock +EXPORT_SYMBOL vmlinux 0xdba119ca ip6_route_me_harder +EXPORT_SYMBOL vmlinux 0xdbb6fd67 devfreq_register_notifier +EXPORT_SYMBOL vmlinux 0xdbdf6c92 ioport_resource +EXPORT_SYMBOL vmlinux 0xdbfff460 udp6_seq_ops +EXPORT_SYMBOL vmlinux 0xdc000667 dev_get_iflink +EXPORT_SYMBOL vmlinux 0xdc07c8c2 peernet2id +EXPORT_SYMBOL vmlinux 0xdc091da2 skb_split +EXPORT_SYMBOL vmlinux 0xdc0a4182 netdev_reset_tc +EXPORT_SYMBOL vmlinux 0xdc14eda7 pci_pci_problems +EXPORT_SYMBOL vmlinux 0xdc2cda8e locks_lock_inode_wait +EXPORT_SYMBOL vmlinux 0xdc343b2e ata_port_printk +EXPORT_SYMBOL vmlinux 0xdc3fcbc9 __sw_hweight8 +EXPORT_SYMBOL vmlinux 0xdc4140cc __skb_vlan_pop +EXPORT_SYMBOL vmlinux 0xdc41d13a vfs_ioc_setflags_prepare +EXPORT_SYMBOL vmlinux 0xdc49c198 reciprocal_value_adv +EXPORT_SYMBOL vmlinux 0xdc512134 backlight_register_notifier +EXPORT_SYMBOL vmlinux 0xdc5bd298 vlan_vids_del_by_dev +EXPORT_SYMBOL vmlinux 0xdc5c7961 gen_pool_best_fit +EXPORT_SYMBOL vmlinux 0xdc77d170 _raw_spin_trylock_bh +EXPORT_SYMBOL vmlinux 0xdc81901a wait_for_completion_io +EXPORT_SYMBOL vmlinux 0xdc9ee388 jbd2_journal_clear_features +EXPORT_SYMBOL vmlinux 0xdcb1180a pcix_get_mmrbc +EXPORT_SYMBOL vmlinux 0xdcb7bbe7 sock_no_socketpair +EXPORT_SYMBOL vmlinux 0xdcd7fc15 blk_mq_alloc_tag_set +EXPORT_SYMBOL vmlinux 0xdcd94fee security_sctp_sk_clone +EXPORT_SYMBOL vmlinux 0xdcdae7ab is_nvdimm_bus_locked +EXPORT_SYMBOL vmlinux 0xdcdb5a7b ps2_end_command +EXPORT_SYMBOL vmlinux 0xdce332f3 __serio_register_port +EXPORT_SYMBOL vmlinux 0xdcf6d045 radix_tree_gang_lookup_tag_slot +EXPORT_SYMBOL vmlinux 0xdcf77006 tcf_block_netif_keep_dst +EXPORT_SYMBOL vmlinux 0xdd0a2ba2 strlcat +EXPORT_SYMBOL vmlinux 0xdd1b9dd5 inet_csk_delete_keepalive_timer +EXPORT_SYMBOL vmlinux 0xdd1f884e of_phy_find_device +EXPORT_SYMBOL vmlinux 0xdd226fa9 __raw_readsw +EXPORT_SYMBOL vmlinux 0xdd255c75 netpoll_poll_dev +EXPORT_SYMBOL vmlinux 0xdd27fa87 memchr +EXPORT_SYMBOL vmlinux 0xdd2c169b mb_cache_create +EXPORT_SYMBOL vmlinux 0xdd33c2a7 bmap +EXPORT_SYMBOL vmlinux 0xdd4ffa9b mutex_trylock +EXPORT_SYMBOL vmlinux 0xdd742d72 __sg_free_table +EXPORT_SYMBOL vmlinux 0xdd7e3192 qcom_scm_pas_auth_and_reset +EXPORT_SYMBOL vmlinux 0xdd81421f trace_print_symbols_seq_u64 +EXPORT_SYMBOL vmlinux 0xdd820029 set_groups +EXPORT_SYMBOL vmlinux 0xdd82d5ec pci_get_device +EXPORT_SYMBOL vmlinux 0xdd849d51 scsi_get_sense_info_fld +EXPORT_SYMBOL vmlinux 0xdd89574c qdisc_tree_reduce_backlog +EXPORT_SYMBOL vmlinux 0xdd8f8a2e blk_mq_start_hw_queue +EXPORT_SYMBOL vmlinux 0xddb16e23 rproc_elf_sanity_check +EXPORT_SYMBOL vmlinux 0xddb2d524 __xfrm_dst_lookup +EXPORT_SYMBOL vmlinux 0xddceab61 inet_reqsk_alloc +EXPORT_SYMBOL vmlinux 0xdddf6b61 keyring_search +EXPORT_SYMBOL vmlinux 0xddea85e5 get_task_cred +EXPORT_SYMBOL vmlinux 0xde122994 file_ns_capable +EXPORT_SYMBOL vmlinux 0xde1999a5 import_iovec +EXPORT_SYMBOL vmlinux 0xde1d2612 jbd2__journal_start +EXPORT_SYMBOL vmlinux 0xde389b57 mipi_dsi_generic_write +EXPORT_SYMBOL vmlinux 0xde3aa31c put_fs_context +EXPORT_SYMBOL vmlinux 0xde4d4ace dim_calc_stats +EXPORT_SYMBOL vmlinux 0xde59092a lockref_get_or_lock +EXPORT_SYMBOL vmlinux 0xde80aa08 vme_bus_type +EXPORT_SYMBOL vmlinux 0xde8d90d8 get_user_pages_unlocked +EXPORT_SYMBOL vmlinux 0xde905558 __blkdev_issue_discard +EXPORT_SYMBOL vmlinux 0xde962197 register_md_cluster_operations +EXPORT_SYMBOL vmlinux 0xde965b53 security_task_getsecid +EXPORT_SYMBOL vmlinux 0xdeb8b4de xfrm_parse_spi +EXPORT_SYMBOL vmlinux 0xdebdd7f3 configfs_depend_item_unlocked +EXPORT_SYMBOL vmlinux 0xdec030e5 arm_clear_user +EXPORT_SYMBOL vmlinux 0xdecf1881 mdio_device_reset +EXPORT_SYMBOL vmlinux 0xded0a32b blk_post_runtime_suspend +EXPORT_SYMBOL vmlinux 0xded39a6b gen_kill_estimator +EXPORT_SYMBOL vmlinux 0xdee71a06 pin_user_pages_locked +EXPORT_SYMBOL vmlinux 0xdeecd192 dns_query +EXPORT_SYMBOL vmlinux 0xdef7c893 fb_match_mode +EXPORT_SYMBOL vmlinux 0xdf0e8dff vif_device_init +EXPORT_SYMBOL vmlinux 0xdf141c83 disk_stack_limits +EXPORT_SYMBOL vmlinux 0xdf176a99 qdisc_watchdog_schedule_range_ns +EXPORT_SYMBOL vmlinux 0xdf258f60 vme_irq_handler +EXPORT_SYMBOL vmlinux 0xdf272de7 proc_remove +EXPORT_SYMBOL vmlinux 0xdf2c2742 rb_last +EXPORT_SYMBOL vmlinux 0xdf36c98c dev_remove_pack +EXPORT_SYMBOL vmlinux 0xdf3a693d crc_t10dif_update +EXPORT_SYMBOL vmlinux 0xdf52def1 ZSTD_DStreamInSize +EXPORT_SYMBOL vmlinux 0xdf54a8f7 netlink_unregister_notifier +EXPORT_SYMBOL vmlinux 0xdf72bf50 lease_get_mtime +EXPORT_SYMBOL vmlinux 0xdf77d561 __skb_recv_datagram +EXPORT_SYMBOL vmlinux 0xdf85947f of_iomap +EXPORT_SYMBOL vmlinux 0xdf929370 fs_overflowgid +EXPORT_SYMBOL vmlinux 0xdf93b9d8 timespec64_to_jiffies +EXPORT_SYMBOL vmlinux 0xdfc1b17a task_work_add +EXPORT_SYMBOL vmlinux 0xdfc75152 cdrom_ioctl +EXPORT_SYMBOL vmlinux 0xdfd91ce9 omap_type +EXPORT_SYMBOL vmlinux 0xdfd9da84 pci_restore_state +EXPORT_SYMBOL vmlinux 0xdfdc2994 jbd2_journal_init_inode +EXPORT_SYMBOL vmlinux 0xdfdfa9e7 utf8nfdi +EXPORT_SYMBOL vmlinux 0xdfe7a430 fs_param_is_fd +EXPORT_SYMBOL vmlinux 0xdff404e7 block_write_end +EXPORT_SYMBOL vmlinux 0xdff66fe9 __dquot_transfer +EXPORT_SYMBOL vmlinux 0xdff905e5 vme_slave_free +EXPORT_SYMBOL vmlinux 0xdff9e8c0 padata_alloc_possible +EXPORT_SYMBOL vmlinux 0xdffb744b frame_vector_to_pfns +EXPORT_SYMBOL vmlinux 0xdffc80fc vesa_modes +EXPORT_SYMBOL vmlinux 0xe0106f9f skb_flow_dissect_tunnel_info +EXPORT_SYMBOL vmlinux 0xe011933b __skb_ext_del +EXPORT_SYMBOL vmlinux 0xe01f6a09 keyring_clear +EXPORT_SYMBOL vmlinux 0xe028a6ca atomic_dec_and_mutex_lock +EXPORT_SYMBOL vmlinux 0xe0329e47 seq_escape +EXPORT_SYMBOL vmlinux 0xe03877e6 gnet_stats_copy_rate_est +EXPORT_SYMBOL vmlinux 0xe03c1677 pci_request_irq +EXPORT_SYMBOL vmlinux 0xe042c4e6 flow_rule_match_enc_keyid +EXPORT_SYMBOL vmlinux 0xe0601f3b blk_rq_count_integrity_sg +EXPORT_SYMBOL vmlinux 0xe065094e mmc_run_bkops +EXPORT_SYMBOL vmlinux 0xe085e831 inet6_del_offload +EXPORT_SYMBOL vmlinux 0xe0875eb1 kstrtobool +EXPORT_SYMBOL vmlinux 0xe08ea316 eth_gro_receive +EXPORT_SYMBOL vmlinux 0xe0b13336 argv_free +EXPORT_SYMBOL vmlinux 0xe0bef318 icst_hz_to_vco +EXPORT_SYMBOL vmlinux 0xe0c4301f put_cmsg +EXPORT_SYMBOL vmlinux 0xe0c48dce bio_init +EXPORT_SYMBOL vmlinux 0xe0c4e989 pci_scan_slot +EXPORT_SYMBOL vmlinux 0xe113bbbc csum_partial +EXPORT_SYMBOL vmlinux 0xe11812fb pagecache_isize_extended +EXPORT_SYMBOL vmlinux 0xe11c0b56 kmem_cache_alloc_trace +EXPORT_SYMBOL vmlinux 0xe121bfb9 seq_release +EXPORT_SYMBOL vmlinux 0xe123f3d9 dma_fence_release +EXPORT_SYMBOL vmlinux 0xe126d8df insert_inode_locked4 +EXPORT_SYMBOL vmlinux 0xe12bda79 vme_dma_free_attribute +EXPORT_SYMBOL vmlinux 0xe13cd8a7 dmi_name_in_vendors +EXPORT_SYMBOL vmlinux 0xe14b028b netlink_broadcast +EXPORT_SYMBOL vmlinux 0xe153f436 __cpu_present_mask +EXPORT_SYMBOL vmlinux 0xe15effdd bio_reset +EXPORT_SYMBOL vmlinux 0xe161b324 amba_device_register +EXPORT_SYMBOL vmlinux 0xe17df40a vme_master_request +EXPORT_SYMBOL vmlinux 0xe1973cdc __hsiphash_aligned +EXPORT_SYMBOL vmlinux 0xe1a4f16a secure_ipv6_port_ephemeral +EXPORT_SYMBOL vmlinux 0xe1a9b2ff dma_fence_match_context +EXPORT_SYMBOL vmlinux 0xe1bb14da netdev_upper_get_next_dev_rcu +EXPORT_SYMBOL vmlinux 0xe1d3d480 nobh_write_end +EXPORT_SYMBOL vmlinux 0xe1dcf64a audit_log_format +EXPORT_SYMBOL vmlinux 0xe1e7e40c rtnl_nla_parse_ifla +EXPORT_SYMBOL vmlinux 0xe1ffac19 mdiobus_free +EXPORT_SYMBOL vmlinux 0xe202c65e _dev_warn +EXPORT_SYMBOL vmlinux 0xe209acdc clk_bulk_get +EXPORT_SYMBOL vmlinux 0xe2104ca4 genlmsg_put +EXPORT_SYMBOL vmlinux 0xe213eb2b of_device_get_match_data +EXPORT_SYMBOL vmlinux 0xe219bf18 genphy_read_lpa +EXPORT_SYMBOL vmlinux 0xe2274a1c __percpu_counter_sum +EXPORT_SYMBOL vmlinux 0xe228c666 generic_file_llseek_size +EXPORT_SYMBOL vmlinux 0xe22b3db8 tcf_generic_walker +EXPORT_SYMBOL vmlinux 0xe24690f6 ipv6_sock_mc_join +EXPORT_SYMBOL vmlinux 0xe25ae898 page_symlink +EXPORT_SYMBOL vmlinux 0xe266f098 xa_get_mark +EXPORT_SYMBOL vmlinux 0xe273d75d alloc_cpu_rmap +EXPORT_SYMBOL vmlinux 0xe28e4207 __tracepoint_dma_fence_emit +EXPORT_SYMBOL vmlinux 0xe2c34374 scsi_target_resume +EXPORT_SYMBOL vmlinux 0xe2c5ae24 kfree_skb_partial +EXPORT_SYMBOL vmlinux 0xe2c80310 blk_mq_init_allocated_queue +EXPORT_SYMBOL vmlinux 0xe2cf4a29 n_tty_ioctl_helper +EXPORT_SYMBOL vmlinux 0xe2d467c4 gic_pmr_sync +EXPORT_SYMBOL vmlinux 0xe2d47398 crc_ccitt_false +EXPORT_SYMBOL vmlinux 0xe2d5255a strcmp +EXPORT_SYMBOL vmlinux 0xe2d90c75 pci_release_selected_regions +EXPORT_SYMBOL vmlinux 0xe2e8065e memdup_user +EXPORT_SYMBOL vmlinux 0xe2e9822e iw_handler_set_thrspy +EXPORT_SYMBOL vmlinux 0xe2ffeef3 scsi_req_init +EXPORT_SYMBOL vmlinux 0xe3161829 inet_dgram_ops +EXPORT_SYMBOL vmlinux 0xe323413e km_state_expired +EXPORT_SYMBOL vmlinux 0xe32ab4d8 xxh64_digest +EXPORT_SYMBOL vmlinux 0xe346f67a __mutex_init +EXPORT_SYMBOL vmlinux 0xe347e9c8 dquot_quota_off +EXPORT_SYMBOL vmlinux 0xe3482046 radix_tree_iter_delete +EXPORT_SYMBOL vmlinux 0xe3534bcc i2c_transfer_buffer_flags +EXPORT_SYMBOL vmlinux 0xe3569dce sock_pfree +EXPORT_SYMBOL vmlinux 0xe36a7620 generic_file_readonly_mmap +EXPORT_SYMBOL vmlinux 0xe36cbd83 kthread_bind +EXPORT_SYMBOL vmlinux 0xe389e0d5 snd_pcm_lib_free_vmalloc_buffer +EXPORT_SYMBOL vmlinux 0xe391bff6 nf_reinject +EXPORT_SYMBOL vmlinux 0xe39879e6 kthread_associate_blkcg +EXPORT_SYMBOL vmlinux 0xe39cf4ea bio_endio +EXPORT_SYMBOL vmlinux 0xe3a42fdd sock_kmalloc +EXPORT_SYMBOL vmlinux 0xe3a90dfa radix_tree_tag_set +EXPORT_SYMBOL vmlinux 0xe3ba8af3 input_mt_destroy_slots +EXPORT_SYMBOL vmlinux 0xe3d81f58 call_usermodehelper_exec +EXPORT_SYMBOL vmlinux 0xe3e84821 inet_sock_destruct +EXPORT_SYMBOL vmlinux 0xe3ec2f2b alloc_chrdev_region +EXPORT_SYMBOL vmlinux 0xe3f50bca security_sb_set_mnt_opts +EXPORT_SYMBOL vmlinux 0xe3ff2c41 get_random_u64 +EXPORT_SYMBOL vmlinux 0xe4086752 flow_block_cb_decref +EXPORT_SYMBOL vmlinux 0xe40a7fe0 nvm_alloc_dev +EXPORT_SYMBOL vmlinux 0xe4100429 ptp_clock_unregister +EXPORT_SYMBOL vmlinux 0xe420de58 qdisc_class_hash_grow +EXPORT_SYMBOL vmlinux 0xe428464e dma_fence_wait_timeout +EXPORT_SYMBOL vmlinux 0xe4329092 __ctzdi2 +EXPORT_SYMBOL vmlinux 0xe43a2fa1 configfs_register_subsystem +EXPORT_SYMBOL vmlinux 0xe43fa92b devm_devfreq_unregister_notifier +EXPORT_SYMBOL vmlinux 0xe441e95a refcount_dec_not_one +EXPORT_SYMBOL vmlinux 0xe4429a9a __neigh_for_each_release +EXPORT_SYMBOL vmlinux 0xe4457345 fs_param_is_bool +EXPORT_SYMBOL vmlinux 0xe44c1d68 set_anon_super_fc +EXPORT_SYMBOL vmlinux 0xe45507ce tty_schedule_flip +EXPORT_SYMBOL vmlinux 0xe4598e3c super_setup_bdi +EXPORT_SYMBOL vmlinux 0xe46097fb scsi_register_driver +EXPORT_SYMBOL vmlinux 0xe4610c68 __tty_insert_flip_char +EXPORT_SYMBOL vmlinux 0xe46f97e1 put_disk +EXPORT_SYMBOL vmlinux 0xe479ea02 netdev_txq_to_tc +EXPORT_SYMBOL vmlinux 0xe490d100 balance_dirty_pages_ratelimited +EXPORT_SYMBOL vmlinux 0xe49523c8 nd_btt_version +EXPORT_SYMBOL vmlinux 0xe4979314 sock_kfree_s +EXPORT_SYMBOL vmlinux 0xe49c897c sk_common_release +EXPORT_SYMBOL vmlinux 0xe4a7ea8c pci_bus_write_config_dword +EXPORT_SYMBOL vmlinux 0xe4be0304 of_graph_get_port_by_id +EXPORT_SYMBOL vmlinux 0xe4c3dccd vmf_insert_mixed_mkwrite +EXPORT_SYMBOL vmlinux 0xe4c3fa71 phy_connect_direct +EXPORT_SYMBOL vmlinux 0xe4c80097 cacheid +EXPORT_SYMBOL vmlinux 0xe4d31a6e watchdog_unregister_governor +EXPORT_SYMBOL vmlinux 0xe4d93b5d mmc_free_host +EXPORT_SYMBOL vmlinux 0xe4df0fa4 backlight_device_set_brightness +EXPORT_SYMBOL vmlinux 0xe4f3fc95 seg6_hmac_net_init +EXPORT_SYMBOL vmlinux 0xe4f3fd14 amba_driver_unregister +EXPORT_SYMBOL vmlinux 0xe502fea9 mipi_dsi_dcs_read +EXPORT_SYMBOL vmlinux 0xe50cef83 neigh_table_clear +EXPORT_SYMBOL vmlinux 0xe51c4380 input_set_max_poll_interval +EXPORT_SYMBOL vmlinux 0xe51e7218 vfs_mknod +EXPORT_SYMBOL vmlinux 0xe523ad75 synchronize_irq +EXPORT_SYMBOL vmlinux 0xe52b70c2 pci_enable_device_io +EXPORT_SYMBOL vmlinux 0xe534f768 param_set_bint +EXPORT_SYMBOL vmlinux 0xe5371198 remove_proc_subtree +EXPORT_SYMBOL vmlinux 0xe5466a39 security_path_mknod +EXPORT_SYMBOL vmlinux 0xe54d89d7 md_flush_request +EXPORT_SYMBOL vmlinux 0xe54eb23a ip6mr_rule_default +EXPORT_SYMBOL vmlinux 0xe56364dc netif_carrier_on +EXPORT_SYMBOL vmlinux 0xe569b0f0 dev_set_allmulti +EXPORT_SYMBOL vmlinux 0xe56a9336 snd_pcm_format_width +EXPORT_SYMBOL vmlinux 0xe56e370c truncate_pagecache +EXPORT_SYMBOL vmlinux 0xe5735f6c rproc_mem_entry_init +EXPORT_SYMBOL vmlinux 0xe577283d nand_get_set_features_notsupp +EXPORT_SYMBOL vmlinux 0xe579812c ipv6_mc_check_icmpv6 +EXPORT_SYMBOL vmlinux 0xe57feefb qcom_scm_ocmem_unlock +EXPORT_SYMBOL vmlinux 0xe5807e62 gen_pool_first_fit_align +EXPORT_SYMBOL vmlinux 0xe58090ca security_ib_endport_manage_subnet +EXPORT_SYMBOL vmlinux 0xe5815af1 xfrm_state_delete +EXPORT_SYMBOL vmlinux 0xe5867808 dlci_ioctl_set +EXPORT_SYMBOL vmlinux 0xe588a2ab inet_frags_init +EXPORT_SYMBOL vmlinux 0xe590dea3 sk_busy_loop_end +EXPORT_SYMBOL vmlinux 0xe59e8877 blk_get_request +EXPORT_SYMBOL vmlinux 0xe5a48d3a inc_node_page_state +EXPORT_SYMBOL vmlinux 0xe5bc9a53 slhc_free +EXPORT_SYMBOL vmlinux 0xe5bf760a bio_integrity_prep +EXPORT_SYMBOL vmlinux 0xe5c78a99 do_blank_screen +EXPORT_SYMBOL vmlinux 0xe5cbac6b tty_insert_flip_string_fixed_flag +EXPORT_SYMBOL vmlinux 0xe5ccb179 pci_get_class +EXPORT_SYMBOL vmlinux 0xe5cebdf9 pci_disable_device +EXPORT_SYMBOL vmlinux 0xe5d2a9fe scsi_free_host_dev +EXPORT_SYMBOL vmlinux 0xe5d83b19 bdevname +EXPORT_SYMBOL vmlinux 0xe5e8aa73 mmc_set_blocklen +EXPORT_SYMBOL vmlinux 0xe613a798 inet_addr_is_any +EXPORT_SYMBOL vmlinux 0xe615951a __scsi_device_lookup +EXPORT_SYMBOL vmlinux 0xe63c7d9d ip_sock_set_mtu_discover +EXPORT_SYMBOL vmlinux 0xe6427569 devm_devfreq_register_opp_notifier +EXPORT_SYMBOL vmlinux 0xe673dfd7 fs_param_is_enum +EXPORT_SYMBOL vmlinux 0xe68f35dd __dev_kfree_skb_any +EXPORT_SYMBOL vmlinux 0xe693a6ce vme_get_size +EXPORT_SYMBOL vmlinux 0xe69ba08a md_integrity_register +EXPORT_SYMBOL vmlinux 0xe6a14059 irq_set_chip +EXPORT_SYMBOL vmlinux 0xe6b0fe32 netdev_set_sb_channel +EXPORT_SYMBOL vmlinux 0xe6d2c39f cdev_add +EXPORT_SYMBOL vmlinux 0xe6ea9101 alloc_fddidev +EXPORT_SYMBOL vmlinux 0xe6ec692a tcf_exts_dump +EXPORT_SYMBOL vmlinux 0xe6fc8be2 mntput +EXPORT_SYMBOL vmlinux 0xe705858f _dev_alert +EXPORT_SYMBOL vmlinux 0xe707d823 __aeabi_uidiv +EXPORT_SYMBOL vmlinux 0xe7324b9a utf8nfdicf +EXPORT_SYMBOL vmlinux 0xe7596b1f devfreq_update_interval +EXPORT_SYMBOL vmlinux 0xe76c667e dev_uc_sync_multiple +EXPORT_SYMBOL vmlinux 0xe793ea15 nf_register_net_hook +EXPORT_SYMBOL vmlinux 0xe79ad6a9 skb_copy_datagram_iter +EXPORT_SYMBOL vmlinux 0xe7c8413d inc_node_state +EXPORT_SYMBOL vmlinux 0xe7cd0eb9 xsk_umem_uses_need_wakeup +EXPORT_SYMBOL vmlinux 0xe7d310b0 input_mt_drop_unused +EXPORT_SYMBOL vmlinux 0xe7d3ddea __nd_driver_register +EXPORT_SYMBOL vmlinux 0xe7d4daac seq_list_next +EXPORT_SYMBOL vmlinux 0xe7d71aa6 __skb_wait_for_more_packets +EXPORT_SYMBOL vmlinux 0xe7d8cf11 empty_aops +EXPORT_SYMBOL vmlinux 0xe7ead49b backlight_device_get_by_name +EXPORT_SYMBOL vmlinux 0xe7f2e3a2 register_sysctl_paths +EXPORT_SYMBOL vmlinux 0xe7f7f1ed audit_log_start +EXPORT_SYMBOL vmlinux 0xe7fec12d qdisc_warn_nonwc +EXPORT_SYMBOL vmlinux 0xe8084f02 tcf_em_tree_destroy +EXPORT_SYMBOL vmlinux 0xe80d5345 inet_frag_destroy +EXPORT_SYMBOL vmlinux 0xe81c7709 tcp_sock_set_quickack +EXPORT_SYMBOL vmlinux 0xe8267498 netdev_master_upper_dev_get +EXPORT_SYMBOL vmlinux 0xe842dc8c dma_fence_get_stub +EXPORT_SYMBOL vmlinux 0xe85a876c snd_device_new +EXPORT_SYMBOL vmlinux 0xe88acc33 of_get_next_cpu_node +EXPORT_SYMBOL vmlinux 0xe894241c flow_indr_dev_unregister +EXPORT_SYMBOL vmlinux 0xe8cd0a2c crc32_le_shift +EXPORT_SYMBOL vmlinux 0xe8e9d747 __hw_addr_ref_sync_dev +EXPORT_SYMBOL vmlinux 0xe8ff4539 bio_integrity_trim +EXPORT_SYMBOL vmlinux 0xe90cfa66 crypto_sha1_finup +EXPORT_SYMBOL vmlinux 0xe914e41e strcpy +EXPORT_SYMBOL vmlinux 0xe9325f03 downgrade_write +EXPORT_SYMBOL vmlinux 0xe9344390 complete_request_key +EXPORT_SYMBOL vmlinux 0xe9435755 fasync_helper +EXPORT_SYMBOL vmlinux 0xe9520720 blk_integrity_compare +EXPORT_SYMBOL vmlinux 0xe953b21f get_next_ino +EXPORT_SYMBOL vmlinux 0xe984380c scsi_track_queue_full +EXPORT_SYMBOL vmlinux 0xe99036d8 pci_get_domain_bus_and_slot +EXPORT_SYMBOL vmlinux 0xe996c17c udp_gro_receive +EXPORT_SYMBOL vmlinux 0xe99b7111 LZ4_decompress_fast_continue +EXPORT_SYMBOL vmlinux 0xe9a1c5ab sdev_enable_disk_events +EXPORT_SYMBOL vmlinux 0xe9a3264e i2c_smbus_read_i2c_block_data +EXPORT_SYMBOL vmlinux 0xe9b6ddbe find_lock_entry +EXPORT_SYMBOL vmlinux 0xe9cbf734 radix_tree_gang_lookup +EXPORT_SYMBOL vmlinux 0xe9e8faeb efi_tpm_final_log_size +EXPORT_SYMBOL vmlinux 0xe9f117ae blkdev_get +EXPORT_SYMBOL vmlinux 0xe9f31cbd tcp_sock_set_cork +EXPORT_SYMBOL vmlinux 0xe9f7149c zlib_deflate_workspacesize +EXPORT_SYMBOL vmlinux 0xea02880c sync_dirty_buffer +EXPORT_SYMBOL vmlinux 0xea091902 fsync_bdev +EXPORT_SYMBOL vmlinux 0xea0d60a3 remap_vmalloc_range +EXPORT_SYMBOL vmlinux 0xea119d1d pcie_print_link_status +EXPORT_SYMBOL vmlinux 0xea1f5b88 samsung_rev +EXPORT_SYMBOL vmlinux 0xea253ae9 netdev_set_tc_queue +EXPORT_SYMBOL vmlinux 0xea2542b4 datagram_poll +EXPORT_SYMBOL vmlinux 0xea3c8e4e scsilun_to_int +EXPORT_SYMBOL vmlinux 0xea441d2e __fib6_flush_trees +EXPORT_SYMBOL vmlinux 0xea5ad272 cros_ec_cmd_xfer +EXPORT_SYMBOL vmlinux 0xea613c2b tty_port_destroy +EXPORT_SYMBOL vmlinux 0xea6f9a36 zlib_deflate_dfltcc_enabled +EXPORT_SYMBOL vmlinux 0xea7987f1 key_update +EXPORT_SYMBOL vmlinux 0xea80dfe1 security_req_classify_flow +EXPORT_SYMBOL vmlinux 0xea82ff10 fs_context_for_reconfigure +EXPORT_SYMBOL vmlinux 0xea8c256e unregister_shrinker +EXPORT_SYMBOL vmlinux 0xea8cc9b1 dma_set_mask +EXPORT_SYMBOL vmlinux 0xea9f018d inet6_bind +EXPORT_SYMBOL vmlinux 0xeaa3d6be nobh_write_begin +EXPORT_SYMBOL vmlinux 0xeaabda0e pci_reenable_device +EXPORT_SYMBOL vmlinux 0xeac107a3 unregister_mii_timestamper +EXPORT_SYMBOL vmlinux 0xeadd947a generic_key_instantiate +EXPORT_SYMBOL vmlinux 0xeafc141f __posix_acl_chmod +EXPORT_SYMBOL vmlinux 0xeb03b389 __raw_readsl +EXPORT_SYMBOL vmlinux 0xeb1f1910 __sk_mem_reduce_allocated +EXPORT_SYMBOL vmlinux 0xeb1fb80f __tcf_idr_release +EXPORT_SYMBOL vmlinux 0xeb2d411d blk_rq_unmap_user +EXPORT_SYMBOL vmlinux 0xeb37101c audit_log_end +EXPORT_SYMBOL vmlinux 0xeb3848ff kunmap_atomic_high +EXPORT_SYMBOL vmlinux 0xeb3ef8c5 tag_pages_for_writeback +EXPORT_SYMBOL vmlinux 0xeb412560 __inode_sub_bytes +EXPORT_SYMBOL vmlinux 0xeb55a931 __kfifo_max_r +EXPORT_SYMBOL vmlinux 0xeb6708df ilookup5 +EXPORT_SYMBOL vmlinux 0xeb7f7703 mipi_dsi_dcs_get_display_brightness +EXPORT_SYMBOL vmlinux 0xeb903c1c rproc_boot +EXPORT_SYMBOL vmlinux 0xeb9e913d sgl_alloc_order +EXPORT_SYMBOL vmlinux 0xebbad822 dev_mc_add_excl +EXPORT_SYMBOL vmlinux 0xebcc4969 rtnl_unicast +EXPORT_SYMBOL vmlinux 0xebd4b2cf snd_info_create_module_entry +EXPORT_SYMBOL vmlinux 0xebe0586a inet_frag_pull_head +EXPORT_SYMBOL vmlinux 0xebfa124d pcie_capability_write_word +EXPORT_SYMBOL vmlinux 0xebfdcbdf system_serial_high +EXPORT_SYMBOL vmlinux 0xebffede5 pci_clear_master +EXPORT_SYMBOL vmlinux 0xec0bb2fe dev_get_phys_port_id +EXPORT_SYMBOL vmlinux 0xec107a50 of_parse_phandle_with_args +EXPORT_SYMBOL vmlinux 0xec1252ab generic_writepages +EXPORT_SYMBOL vmlinux 0xec27914d mmc_retune_unpause +EXPORT_SYMBOL vmlinux 0xec37a2e8 lockref_get_not_dead +EXPORT_SYMBOL vmlinux 0xec3807fe padata_free_shell +EXPORT_SYMBOL vmlinux 0xec42c68a register_nexthop_notifier +EXPORT_SYMBOL vmlinux 0xec4d9e3a clk_get_sys +EXPORT_SYMBOL vmlinux 0xec5a078e ipv6_push_frag_opts +EXPORT_SYMBOL vmlinux 0xec5e7617 ps2_handle_ack +EXPORT_SYMBOL vmlinux 0xec765e58 devm_pci_remap_cfgspace +EXPORT_SYMBOL vmlinux 0xec7d8b67 kernel_param_lock +EXPORT_SYMBOL vmlinux 0xec85437c mark_buffer_write_io_error +EXPORT_SYMBOL vmlinux 0xec9b365f blk_mq_init_queue +EXPORT_SYMBOL vmlinux 0xecd19445 jbd2_journal_init_jbd_inode +EXPORT_SYMBOL vmlinux 0xecd38206 param_ops_short +EXPORT_SYMBOL vmlinux 0xecda95a8 pci_ep_cfs_remove_epf_group +EXPORT_SYMBOL vmlinux 0xece2fe8f hdmi_infoframe_log +EXPORT_SYMBOL vmlinux 0xece784c2 rb_first +EXPORT_SYMBOL vmlinux 0xecf8a3b4 __raw_writesl +EXPORT_SYMBOL vmlinux 0xed1dcb42 __phy_write_mmd +EXPORT_SYMBOL vmlinux 0xed29e98b jbd2_journal_check_available_features +EXPORT_SYMBOL vmlinux 0xed34321e mipi_dsi_dcs_set_display_off +EXPORT_SYMBOL vmlinux 0xed4e2c95 seg6_hmac_info_del +EXPORT_SYMBOL vmlinux 0xed66c87b pcim_set_mwi +EXPORT_SYMBOL vmlinux 0xed98c8a7 snd_timer_instance_free +EXPORT_SYMBOL vmlinux 0xedac02b7 inet_release +EXPORT_SYMBOL vmlinux 0xedba8f5e tcp_fastopen_defer_connect +EXPORT_SYMBOL vmlinux 0xedbaee5e nla_strcmp +EXPORT_SYMBOL vmlinux 0xedbe0d4b i2c_smbus_write_i2c_block_data +EXPORT_SYMBOL vmlinux 0xedbe9679 ppp_unit_number +EXPORT_SYMBOL vmlinux 0xedc03953 iounmap +EXPORT_SYMBOL vmlinux 0xedc2c0f0 dmaenginem_async_device_register +EXPORT_SYMBOL vmlinux 0xedc2f5b5 skb_page_frag_refill +EXPORT_SYMBOL vmlinux 0xedd9106d __ashrdi3 +EXPORT_SYMBOL vmlinux 0xede456e5 blk_mq_complete_request +EXPORT_SYMBOL vmlinux 0xedeb59d9 __tracepoint_dma_fence_signaled +EXPORT_SYMBOL vmlinux 0xee02a44f gen_replace_estimator +EXPORT_SYMBOL vmlinux 0xee1aac2e __sock_queue_rcv_skb +EXPORT_SYMBOL vmlinux 0xee2d0fc7 _local_bh_enable +EXPORT_SYMBOL vmlinux 0xee43fd9b ___ratelimit +EXPORT_SYMBOL vmlinux 0xee58e970 fb_add_videomode +EXPORT_SYMBOL vmlinux 0xee742f3e build_skb +EXPORT_SYMBOL vmlinux 0xee74e40d nf_ip_checksum +EXPORT_SYMBOL vmlinux 0xee8d74d6 jiffies64_to_nsecs +EXPORT_SYMBOL vmlinux 0xee91879b rb_first_postorder +EXPORT_SYMBOL vmlinux 0xee922b77 gen_pool_dma_zalloc_align +EXPORT_SYMBOL vmlinux 0xee9b9f4a phy_reset_after_clk_enable +EXPORT_SYMBOL vmlinux 0xee9bdf66 tty_port_close_end +EXPORT_SYMBOL vmlinux 0xeec792d3 reuseport_alloc +EXPORT_SYMBOL vmlinux 0xeee65d2f seg6_hmac_net_exit +EXPORT_SYMBOL vmlinux 0xeeec17a3 __napi_schedule +EXPORT_SYMBOL vmlinux 0xeef1b7aa ipv6_skip_exthdr +EXPORT_SYMBOL vmlinux 0xef045399 phy_start_cable_test +EXPORT_SYMBOL vmlinux 0xef045621 netdev_has_any_upper_dev +EXPORT_SYMBOL vmlinux 0xef4cad92 trace_print_flags_seq +EXPORT_SYMBOL vmlinux 0xef50bec8 frontswap_register_ops +EXPORT_SYMBOL vmlinux 0xef531c45 neigh_lookup +EXPORT_SYMBOL vmlinux 0xef628d59 devm_rproc_add +EXPORT_SYMBOL vmlinux 0xef69cfa9 tcp_close +EXPORT_SYMBOL vmlinux 0xef7ea6d2 __register_chrdev +EXPORT_SYMBOL vmlinux 0xef833c4d genl_notify +EXPORT_SYMBOL vmlinux 0xef874249 udp_sendmsg +EXPORT_SYMBOL vmlinux 0xef8ac53d qcom_scm_restore_sec_cfg +EXPORT_SYMBOL vmlinux 0xef926c2a wireless_send_event +EXPORT_SYMBOL vmlinux 0xefa53afa vlan_for_each +EXPORT_SYMBOL vmlinux 0xefb7bccf _raw_write_lock_bh +EXPORT_SYMBOL vmlinux 0xefca6be8 flow_rule_match_enc_ip +EXPORT_SYMBOL vmlinux 0xefd30512 __cpuhp_setup_state +EXPORT_SYMBOL vmlinux 0xefec312f omap_get_dma_active_status +EXPORT_SYMBOL vmlinux 0xeff11e61 vfs_link +EXPORT_SYMBOL vmlinux 0xeff8d1bf jbd2_journal_start_commit +EXPORT_SYMBOL vmlinux 0xf0009fee put_pages_list +EXPORT_SYMBOL vmlinux 0xf008a885 seg6_hmac_init +EXPORT_SYMBOL vmlinux 0xf0098412 snd_timer_resolution +EXPORT_SYMBOL vmlinux 0xf00f0d75 inet_rcv_saddr_equal +EXPORT_SYMBOL vmlinux 0xf01528a4 dim_turn +EXPORT_SYMBOL vmlinux 0xf018a9d5 of_get_address +EXPORT_SYMBOL vmlinux 0xf01d8e78 blk_queue_update_dma_alignment +EXPORT_SYMBOL vmlinux 0xf02a6977 queue_rcu_work +EXPORT_SYMBOL vmlinux 0xf03648d0 dquot_reclaim_space_nodirty +EXPORT_SYMBOL vmlinux 0xf03d0201 cros_ec_prepare_tx +EXPORT_SYMBOL vmlinux 0xf059dcbb km_new_mapping +EXPORT_SYMBOL vmlinux 0xf069269c md_cluster_ops +EXPORT_SYMBOL vmlinux 0xf06bd4cc skb_coalesce_rx_frag +EXPORT_SYMBOL vmlinux 0xf06cee2c radix_tree_replace_slot +EXPORT_SYMBOL vmlinux 0xf0742323 tcf_chain_put_by_act +EXPORT_SYMBOL vmlinux 0xf07efde9 start_tty +EXPORT_SYMBOL vmlinux 0xf08c67de napi_alloc_frag +EXPORT_SYMBOL vmlinux 0xf08fdf5c tso_build_data +EXPORT_SYMBOL vmlinux 0xf09b5d9a get_zeroed_page +EXPORT_SYMBOL vmlinux 0xf0a343ed release_dentry_name_snapshot +EXPORT_SYMBOL vmlinux 0xf0ad412a scsi_rescan_device +EXPORT_SYMBOL vmlinux 0xf0c39db4 dquot_initialize_needed +EXPORT_SYMBOL vmlinux 0xf0dac86d snd_pcm_hw_constraint_mask64 +EXPORT_SYMBOL vmlinux 0xf0ded4d6 mntget +EXPORT_SYMBOL vmlinux 0xf0ed2ef4 __raw_writesb +EXPORT_SYMBOL vmlinux 0xf0ef52e8 down +EXPORT_SYMBOL vmlinux 0xf0f27c68 init_pseudo +EXPORT_SYMBOL vmlinux 0xf0fc25ed __netdev_alloc_skb +EXPORT_SYMBOL vmlinux 0xf102033e slhc_remember +EXPORT_SYMBOL vmlinux 0xf102732a crc16 +EXPORT_SYMBOL vmlinux 0xf108715e dma_fence_signal_locked +EXPORT_SYMBOL vmlinux 0xf13fb5f3 alloc_netdev_mqs +EXPORT_SYMBOL vmlinux 0xf142ff1f mmc_gpiod_request_ro +EXPORT_SYMBOL vmlinux 0xf14f6106 genl_unregister_family +EXPORT_SYMBOL vmlinux 0xf1528155 phy_ethtool_get_link_ksettings +EXPORT_SYMBOL vmlinux 0xf15e59fd vfs_dedupe_file_range +EXPORT_SYMBOL vmlinux 0xf160b26d phy_ethtool_set_eee +EXPORT_SYMBOL vmlinux 0xf16f2ad7 filemap_range_has_page +EXPORT_SYMBOL vmlinux 0xf191f6f2 snd_register_oss_device +EXPORT_SYMBOL vmlinux 0xf192f25a set_disk_ro +EXPORT_SYMBOL vmlinux 0xf194c20c gen_pool_dma_zalloc_algo +EXPORT_SYMBOL vmlinux 0xf195c682 fb_invert_cmaps +EXPORT_SYMBOL vmlinux 0xf1969a8e __usecs_to_jiffies +EXPORT_SYMBOL vmlinux 0xf19c888e _dev_info +EXPORT_SYMBOL vmlinux 0xf1a7bdab register_quota_format +EXPORT_SYMBOL vmlinux 0xf1ba8ffd trace_raw_output_prep +EXPORT_SYMBOL vmlinux 0xf1cbad06 block_write_full_page +EXPORT_SYMBOL vmlinux 0xf1d00628 __cpuhp_remove_state +EXPORT_SYMBOL vmlinux 0xf1db1704 nla_memcpy +EXPORT_SYMBOL vmlinux 0xf1dd71a3 nf_log_set +EXPORT_SYMBOL vmlinux 0xf1e046cc panic +EXPORT_SYMBOL vmlinux 0xf1e98c74 avenrun +EXPORT_SYMBOL vmlinux 0xf1ea6f1c __bswapsi2 +EXPORT_SYMBOL vmlinux 0xf1f72e41 icmpv6_ndo_send +EXPORT_SYMBOL vmlinux 0xf1ff563b tty_devnum +EXPORT_SYMBOL vmlinux 0xf2215f74 blk_finish_plug +EXPORT_SYMBOL vmlinux 0xf228188d udp_seq_ops +EXPORT_SYMBOL vmlinux 0xf22f62dc qdisc_hash_add +EXPORT_SYMBOL vmlinux 0xf23176df param_get_uint +EXPORT_SYMBOL vmlinux 0xf236c75e swake_up_one +EXPORT_SYMBOL vmlinux 0xf23fcb99 __kfifo_in +EXPORT_SYMBOL vmlinux 0xf24ba3d6 flow_block_cb_alloc +EXPORT_SYMBOL vmlinux 0xf24d0163 iget_failed +EXPORT_SYMBOL vmlinux 0xf25f6bf6 of_translate_address +EXPORT_SYMBOL vmlinux 0xf2705d8b ucc_fast_init +EXPORT_SYMBOL vmlinux 0xf27c59b3 put_tty_driver +EXPORT_SYMBOL vmlinux 0xf28404cf devlink_dpipe_header_ipv6 +EXPORT_SYMBOL vmlinux 0xf28bb6b1 flow_rule_match_control +EXPORT_SYMBOL vmlinux 0xf290e2ea xfrm_dev_state_flush +EXPORT_SYMBOL vmlinux 0xf299ee2e snd_card_free_when_closed +EXPORT_SYMBOL vmlinux 0xf2a8a18c flow_rule_alloc +EXPORT_SYMBOL vmlinux 0xf2a98e6e register_sound_mixer +EXPORT_SYMBOL vmlinux 0xf2ad80d9 snd_pcm_create_iec958_consumer_hw_params +EXPORT_SYMBOL vmlinux 0xf2c43f3f zlib_deflate +EXPORT_SYMBOL vmlinux 0xf2dd5329 phy_register_fixup +EXPORT_SYMBOL vmlinux 0xf2e2030a napi_get_frags +EXPORT_SYMBOL vmlinux 0xf2e5bd87 security_free_mnt_opts +EXPORT_SYMBOL vmlinux 0xf2f53617 memregion_free +EXPORT_SYMBOL vmlinux 0xf2f99a97 crypto_sha256_update +EXPORT_SYMBOL vmlinux 0xf3010fed con_is_bound +EXPORT_SYMBOL vmlinux 0xf3107926 sha224_update +EXPORT_SYMBOL vmlinux 0xf313d758 simple_transaction_set +EXPORT_SYMBOL vmlinux 0xf32c9a5b inet6_add_offload +EXPORT_SYMBOL vmlinux 0xf32f36f1 vm_node_stat +EXPORT_SYMBOL vmlinux 0xf346231f seq_list_start_head +EXPORT_SYMBOL vmlinux 0xf348ebf8 nonseekable_open +EXPORT_SYMBOL vmlinux 0xf348ff41 bpf_stats_enabled_key +EXPORT_SYMBOL vmlinux 0xf349def0 skb_vlan_untag +EXPORT_SYMBOL vmlinux 0xf34f7ea5 xfrm_if_register_cb +EXPORT_SYMBOL vmlinux 0xf35384d6 jbd2_journal_ack_err +EXPORT_SYMBOL vmlinux 0xf353a698 register_module_notifier +EXPORT_SYMBOL vmlinux 0xf3707036 phy_detach +EXPORT_SYMBOL vmlinux 0xf37d4839 sock_init_data +EXPORT_SYMBOL vmlinux 0xf386d7ee dquot_destroy +EXPORT_SYMBOL vmlinux 0xf389fe60 __hw_addr_init +EXPORT_SYMBOL vmlinux 0xf3916987 global_cursor_default +EXPORT_SYMBOL vmlinux 0xf392b9e9 xfrm_stateonly_find +EXPORT_SYMBOL vmlinux 0xf39e441c ZSTD_CStreamWorkspaceBound +EXPORT_SYMBOL vmlinux 0xf3a11c35 xa_find_after +EXPORT_SYMBOL vmlinux 0xf3a996d5 register_sound_special +EXPORT_SYMBOL vmlinux 0xf3b30a06 utf8version_latest +EXPORT_SYMBOL vmlinux 0xf3cd727f tcp_recvmsg +EXPORT_SYMBOL vmlinux 0xf3e0e1df allocate_resource +EXPORT_SYMBOL vmlinux 0xf3e6402e __bitmap_equal +EXPORT_SYMBOL vmlinux 0xf3ea641e reuseport_attach_prog +EXPORT_SYMBOL vmlinux 0xf3fbc0a9 fb_get_buffer_offset +EXPORT_SYMBOL vmlinux 0xf420d111 dev_vprintk_emit +EXPORT_SYMBOL vmlinux 0xf437cc6d inet_proto_csum_replace16 +EXPORT_SYMBOL vmlinux 0xf44a904a net_ns_barrier +EXPORT_SYMBOL vmlinux 0xf4542d93 sock_alloc_file +EXPORT_SYMBOL vmlinux 0xf46209a6 do_SAK +EXPORT_SYMBOL vmlinux 0xf469bf1e dma_find_channel +EXPORT_SYMBOL vmlinux 0xf46ba87e blk_queue_max_write_zeroes_sectors +EXPORT_SYMBOL vmlinux 0xf474c21c bitmap_print_to_pagebuf +EXPORT_SYMBOL vmlinux 0xf474fdcb kfree_const +EXPORT_SYMBOL vmlinux 0xf48b7147 pci_enable_msi +EXPORT_SYMBOL vmlinux 0xf4a038d2 get_tz_trend +EXPORT_SYMBOL vmlinux 0xf4a04498 nmi_panic +EXPORT_SYMBOL vmlinux 0xf4abfa2a netdev_master_upper_dev_link +EXPORT_SYMBOL vmlinux 0xf4af07f3 abx500_remove_ops +EXPORT_SYMBOL vmlinux 0xf4b575fd redirty_page_for_writepage +EXPORT_SYMBOL vmlinux 0xf4ba246e ZSTD_nextSrcSizeToDecompress +EXPORT_SYMBOL vmlinux 0xf4baa334 proc_dointvec_userhz_jiffies +EXPORT_SYMBOL vmlinux 0xf4bdbeb9 __frontswap_invalidate_area +EXPORT_SYMBOL vmlinux 0xf4c7a4ab ndo_dflt_fdb_del +EXPORT_SYMBOL vmlinux 0xf4cbffc3 ZSTD_flushStream +EXPORT_SYMBOL vmlinux 0xf4db35bc stpcpy +EXPORT_SYMBOL vmlinux 0xf4e9690b sock_no_linger +EXPORT_SYMBOL vmlinux 0xf4f14de6 rtnl_trylock +EXPORT_SYMBOL vmlinux 0xf53d4c26 qdisc_class_hash_destroy +EXPORT_SYMBOL vmlinux 0xf55c0fc2 __post_watch_notification +EXPORT_SYMBOL vmlinux 0xf564412a __aeabi_ulcmp +EXPORT_SYMBOL vmlinux 0xf57e5ec9 dev_add_offload +EXPORT_SYMBOL vmlinux 0xf5868d8f kiocb_set_cancel_fn +EXPORT_SYMBOL vmlinux 0xf589c2a6 phy_attached_info +EXPORT_SYMBOL vmlinux 0xf596a9b3 make_kuid +EXPORT_SYMBOL vmlinux 0xf5a9557e generic_file_read_iter +EXPORT_SYMBOL vmlinux 0xf5ab4de2 pskb_extract +EXPORT_SYMBOL vmlinux 0xf5b3eeb8 pcibios_bus_to_resource +EXPORT_SYMBOL vmlinux 0xf5b666ef __cond_resched_lock +EXPORT_SYMBOL vmlinux 0xf5bce806 simple_fill_super +EXPORT_SYMBOL vmlinux 0xf5d01ba3 unix_detach_fds +EXPORT_SYMBOL vmlinux 0xf5db30ae gen_pool_for_each_chunk +EXPORT_SYMBOL vmlinux 0xf5e358e4 sk_stream_wait_memory +EXPORT_SYMBOL vmlinux 0xf5e7ea40 ktime_get_coarse_ts64 +EXPORT_SYMBOL vmlinux 0xf5fb07f8 pci_read_config_dword +EXPORT_SYMBOL vmlinux 0xf60ba26b simple_map_init +EXPORT_SYMBOL vmlinux 0xf62c39fe ucc_slow_graceful_stop_tx +EXPORT_SYMBOL vmlinux 0xf631149a pci_choose_state +EXPORT_SYMBOL vmlinux 0xf6371951 rproc_elf_get_boot_addr +EXPORT_SYMBOL vmlinux 0xf6399eae of_platform_device_create +EXPORT_SYMBOL vmlinux 0xf643d104 hsiphash_4u32 +EXPORT_SYMBOL vmlinux 0xf64bdf10 tcp_seq_stop +EXPORT_SYMBOL vmlinux 0xf64bf255 wait_for_completion +EXPORT_SYMBOL vmlinux 0xf652d359 __wake_up_bit +EXPORT_SYMBOL vmlinux 0xf66182ea address_space_init_once +EXPORT_SYMBOL vmlinux 0xf665f74f sock_load_diag_module +EXPORT_SYMBOL vmlinux 0xf66f1cbb netif_tx_wake_queue +EXPORT_SYMBOL vmlinux 0xf68285c0 register_inetaddr_notifier +EXPORT_SYMBOL vmlinux 0xf6a841a8 snd_timer_pause +EXPORT_SYMBOL vmlinux 0xf6b701df vlan_vid_add +EXPORT_SYMBOL vmlinux 0xf6b8fad4 mmc_gpiod_request_cd_irq +EXPORT_SYMBOL vmlinux 0xf6d7a596 setup_new_exec +EXPORT_SYMBOL vmlinux 0xf6e4df71 on_each_cpu_cond_mask +EXPORT_SYMBOL vmlinux 0xf6ebc03b net_ratelimit +EXPORT_SYMBOL vmlinux 0xf6fc8791 __bitmap_xor +EXPORT_SYMBOL vmlinux 0xf6fdcb2d configfs_remove_default_groups +EXPORT_SYMBOL vmlinux 0xf705fa49 gen_pool_free_owner +EXPORT_SYMBOL vmlinux 0xf7163ec9 __raw_readsb +EXPORT_SYMBOL vmlinux 0xf71b42f4 md_done_sync +EXPORT_SYMBOL vmlinux 0xf72d460c kill_pgrp +EXPORT_SYMBOL vmlinux 0xf738d1be register_blocking_lsm_notifier +EXPORT_SYMBOL vmlinux 0xf7474ab3 blk_execute_rq +EXPORT_SYMBOL vmlinux 0xf7572b19 dma_supported +EXPORT_SYMBOL vmlinux 0xf7584a9c find_font +EXPORT_SYMBOL vmlinux 0xf76843b5 qcom_scm_pas_supported +EXPORT_SYMBOL vmlinux 0xf77337a1 hdmi_audio_infoframe_check +EXPORT_SYMBOL vmlinux 0xf7802486 __aeabi_uidivmod +EXPORT_SYMBOL vmlinux 0xf799f347 __ip_select_ident +EXPORT_SYMBOL vmlinux 0xf7ae367d security_unix_stream_connect +EXPORT_SYMBOL vmlinux 0xf7bc0200 __sk_mem_reclaim +EXPORT_SYMBOL vmlinux 0xf7c79fce dquot_load_quota_inode +EXPORT_SYMBOL vmlinux 0xf7e5c7c3 devfreq_update_status +EXPORT_SYMBOL vmlinux 0xf7eb0bc3 param_get_byte +EXPORT_SYMBOL vmlinux 0xf7fb5241 kernel_getpeername +EXPORT_SYMBOL vmlinux 0xf811e69d scsi_eh_flush_done_q +EXPORT_SYMBOL vmlinux 0xf8174f56 mipi_dsi_dcs_set_tear_off +EXPORT_SYMBOL vmlinux 0xf822f24c inet6_offloads +EXPORT_SYMBOL vmlinux 0xf827605f dmam_alloc_attrs +EXPORT_SYMBOL vmlinux 0xf82abc1d isa_dma_bridge_buggy +EXPORT_SYMBOL vmlinux 0xf82ec573 rb_prev +EXPORT_SYMBOL vmlinux 0xf838fd97 dim_park_on_top +EXPORT_SYMBOL vmlinux 0xf83b3429 elv_rb_latter_request +EXPORT_SYMBOL vmlinux 0xf859178a ethtool_rx_flow_rule_create +EXPORT_SYMBOL vmlinux 0xf86f27cd idr_alloc_cyclic +EXPORT_SYMBOL vmlinux 0xf888ca21 sg_init_table +EXPORT_SYMBOL vmlinux 0xf8981644 fs_context_for_submount +EXPORT_SYMBOL vmlinux 0xf8a8fbd4 mmput_async +EXPORT_SYMBOL vmlinux 0xf8adc586 dget_parent +EXPORT_SYMBOL vmlinux 0xf8e4efea generic_make_request +EXPORT_SYMBOL vmlinux 0xf8f61ebc wake_up_var +EXPORT_SYMBOL vmlinux 0xf90a0107 kmem_cache_free +EXPORT_SYMBOL vmlinux 0xf912f908 fscrypt_decrypt_pagecache_blocks +EXPORT_SYMBOL vmlinux 0xf915179e refcount_dec_if_one +EXPORT_SYMBOL vmlinux 0xf922bf5b open_with_fake_path +EXPORT_SYMBOL vmlinux 0xf93aae46 __arm_smccc_smc +EXPORT_SYMBOL vmlinux 0xf93fd09c fb_find_mode_cvt +EXPORT_SYMBOL vmlinux 0xf952c505 mipi_dsi_host_register +EXPORT_SYMBOL vmlinux 0xf9722676 twl_i2c_write +EXPORT_SYMBOL vmlinux 0xf983ba9f devm_extcon_unregister_notifier +EXPORT_SYMBOL vmlinux 0xf9846ed0 vme_init_bridge +EXPORT_SYMBOL vmlinux 0xf98fc79e reuseport_detach_prog +EXPORT_SYMBOL vmlinux 0xf9a36b47 down_interruptible +EXPORT_SYMBOL vmlinux 0xf9a482f9 msleep +EXPORT_SYMBOL vmlinux 0xf9ab4afd bioset_integrity_create +EXPORT_SYMBOL vmlinux 0xf9c7392a kern_path_create +EXPORT_SYMBOL vmlinux 0xf9d720ca timestamp_truncate +EXPORT_SYMBOL vmlinux 0xf9dc2be5 iov_iter_for_each_range +EXPORT_SYMBOL vmlinux 0xf9e9fc1b vga_client_register +EXPORT_SYMBOL vmlinux 0xf9eced44 LZ4_compress_fast_continue +EXPORT_SYMBOL vmlinux 0xf9ff11b8 simple_dir_operations +EXPORT_SYMBOL vmlinux 0xfa021f90 ZSTD_decompressContinue +EXPORT_SYMBOL vmlinux 0xfa1d9f9d inode_set_flags +EXPORT_SYMBOL vmlinux 0xfa217765 blk_mq_rq_cpu +EXPORT_SYMBOL vmlinux 0xfa282782 unregister_mtd_chip_driver +EXPORT_SYMBOL vmlinux 0xfa37bdb3 __sync_dirty_buffer +EXPORT_SYMBOL vmlinux 0xfa599bb2 netlink_register_notifier +EXPORT_SYMBOL vmlinux 0xfa5cf8c0 inode_add_bytes +EXPORT_SYMBOL vmlinux 0xfa64df88 cont_write_begin +EXPORT_SYMBOL vmlinux 0xfa7ef5cd fb_class +EXPORT_SYMBOL vmlinux 0xfa873ad0 prandom_seed +EXPORT_SYMBOL vmlinux 0xfa9bd7c5 uart_unregister_driver +EXPORT_SYMBOL vmlinux 0xfaa4dd37 dma_async_device_unregister +EXPORT_SYMBOL vmlinux 0xfaabc769 sockfd_lookup +EXPORT_SYMBOL vmlinux 0xfab0356d scsi_scan_host +EXPORT_SYMBOL vmlinux 0xfab08c2d __generic_file_fsync +EXPORT_SYMBOL vmlinux 0xfab291f9 pci_assign_resource +EXPORT_SYMBOL vmlinux 0xfabb4168 ip_getsockopt +EXPORT_SYMBOL vmlinux 0xfac8865f sysctl_wmem_max +EXPORT_SYMBOL vmlinux 0xfad31d7c jbd2_journal_wipe +EXPORT_SYMBOL vmlinux 0xfafc6dce delete_from_page_cache +EXPORT_SYMBOL vmlinux 0xfb1ab0d2 scsi_device_resume +EXPORT_SYMBOL vmlinux 0xfb1d7438 down_read +EXPORT_SYMBOL vmlinux 0xfb28bdcc dmaengine_get_unmap_data +EXPORT_SYMBOL vmlinux 0xfb336634 mempool_destroy +EXPORT_SYMBOL vmlinux 0xfb384d37 kasprintf +EXPORT_SYMBOL vmlinux 0xfb481954 vprintk +EXPORT_SYMBOL vmlinux 0xfb4aa5b3 scsi_eh_restore_cmnd +EXPORT_SYMBOL vmlinux 0xfb6af58d recalc_sigpending +EXPORT_SYMBOL vmlinux 0xfb7d9c45 __udivsi3 +EXPORT_SYMBOL vmlinux 0xfb86735e __free_pages +EXPORT_SYMBOL vmlinux 0xfb9dd39c ipmr_rule_default +EXPORT_SYMBOL vmlinux 0xfba67c62 ata_dev_printk +EXPORT_SYMBOL vmlinux 0xfba7ddd2 match_u64 +EXPORT_SYMBOL vmlinux 0xfbaaf01e console_lock +EXPORT_SYMBOL vmlinux 0xfbad3cf0 scsi_normalize_sense +EXPORT_SYMBOL vmlinux 0xfbb4880d __mmc_claim_host +EXPORT_SYMBOL vmlinux 0xfbc4f89e io_schedule_timeout +EXPORT_SYMBOL vmlinux 0xfbc9e7fb rproc_get_by_child +EXPORT_SYMBOL vmlinux 0xfbceef23 read_cache_page +EXPORT_SYMBOL vmlinux 0xfbdb1ffe __vfs_getxattr +EXPORT_SYMBOL vmlinux 0xfbdfd3f1 ioremap_wc +EXPORT_SYMBOL vmlinux 0xfbfe0e86 ucc_fast_free +EXPORT_SYMBOL vmlinux 0xfbff6949 pcie_capability_write_dword +EXPORT_SYMBOL vmlinux 0xfc06ff92 d_rehash +EXPORT_SYMBOL vmlinux 0xfc1cffb8 proto_unregister +EXPORT_SYMBOL vmlinux 0xfc347171 register_mtd_chip_driver +EXPORT_SYMBOL vmlinux 0xfc399557 utf8_load +EXPORT_SYMBOL vmlinux 0xfc39e32f ioport_unmap +EXPORT_SYMBOL vmlinux 0xfc3f3589 strscpy_pad +EXPORT_SYMBOL vmlinux 0xfc4c8587 pci_irq_get_affinity +EXPORT_SYMBOL vmlinux 0xfc5192b5 flow_indr_dev_setup_offload +EXPORT_SYMBOL vmlinux 0xfc52abc7 qcom_scm_pas_shutdown +EXPORT_SYMBOL vmlinux 0xfc5adb87 mipi_dsi_shutdown_peripheral +EXPORT_SYMBOL vmlinux 0xfc601514 page_pool_alloc_pages +EXPORT_SYMBOL vmlinux 0xfc610c96 devm_of_find_backlight +EXPORT_SYMBOL vmlinux 0xfc65459a kstrtoull_from_user +EXPORT_SYMBOL vmlinux 0xfc7b611e md_bitmap_startwrite +EXPORT_SYMBOL vmlinux 0xfc89bcf3 kernel_listen +EXPORT_SYMBOL vmlinux 0xfca0aeb0 __ip_mc_dec_group +EXPORT_SYMBOL vmlinux 0xfcca951c seq_open_private +EXPORT_SYMBOL vmlinux 0xfcd1819a hdmi_spd_infoframe_check +EXPORT_SYMBOL vmlinux 0xfcde7ef0 snd_timer_stop +EXPORT_SYMBOL vmlinux 0xfcec0987 enable_irq +EXPORT_SYMBOL vmlinux 0xfd04ab51 pci_iomap_range +EXPORT_SYMBOL vmlinux 0xfd115de1 pci_find_capability +EXPORT_SYMBOL vmlinux 0xfd17c1d9 skb_seq_read +EXPORT_SYMBOL vmlinux 0xfd1c5d27 follow_down +EXPORT_SYMBOL vmlinux 0xfd283a43 netif_rx_ni +EXPORT_SYMBOL vmlinux 0xfd305341 walk_stackframe +EXPORT_SYMBOL vmlinux 0xfd48dd04 find_inode_by_ino_rcu +EXPORT_SYMBOL vmlinux 0xfd50864b pci_disable_link_state_locked +EXPORT_SYMBOL vmlinux 0xfd5f9240 pcim_iomap +EXPORT_SYMBOL vmlinux 0xfd70d1bf snd_pcm_hw_rule_add +EXPORT_SYMBOL vmlinux 0xfd7c1b2a tty_port_tty_get +EXPORT_SYMBOL vmlinux 0xfda84390 from_kuid_munged +EXPORT_SYMBOL vmlinux 0xfda9581f prandom_u32 +EXPORT_SYMBOL vmlinux 0xfdcc8a0e fb_find_best_display +EXPORT_SYMBOL vmlinux 0xfde306c4 tcp_rcv_state_process +EXPORT_SYMBOL vmlinux 0xfde6fba4 bio_free_pages +EXPORT_SYMBOL vmlinux 0xfdf44c54 scsi_print_sense_hdr +EXPORT_SYMBOL vmlinux 0xfdf4cff0 neigh_proc_dointvec_jiffies +EXPORT_SYMBOL vmlinux 0xfdfcb7a4 dm_put_device +EXPORT_SYMBOL vmlinux 0xfdfd88b7 __xfrm_policy_check +EXPORT_SYMBOL vmlinux 0xfdff94e0 ZSTD_initDStream +EXPORT_SYMBOL vmlinux 0xfdff94e3 generic_pipe_buf_try_steal +EXPORT_SYMBOL vmlinux 0xfe000180 param_set_copystring +EXPORT_SYMBOL vmlinux 0xfe029963 unregister_inetaddr_notifier +EXPORT_SYMBOL vmlinux 0xfe051b3d inet_getname +EXPORT_SYMBOL vmlinux 0xfe054e9a jbd2_journal_start +EXPORT_SYMBOL vmlinux 0xfe11b2b2 from_kuid +EXPORT_SYMBOL vmlinux 0xfe171764 ioremap_page +EXPORT_SYMBOL vmlinux 0xfe20025b nvdimm_bus_lock +EXPORT_SYMBOL vmlinux 0xfe3cbc1c input_set_abs_params +EXPORT_SYMBOL vmlinux 0xfe3e419a put_ipc_ns +EXPORT_SYMBOL vmlinux 0xfe41829c xa_store_range +EXPORT_SYMBOL vmlinux 0xfe487975 init_wait_entry +EXPORT_SYMBOL vmlinux 0xfe5d4bb2 sys_tz +EXPORT_SYMBOL vmlinux 0xfe60d9ec wait_for_key_construction +EXPORT_SYMBOL vmlinux 0xfe67c4f1 generic_file_llseek +EXPORT_SYMBOL vmlinux 0xfe72c296 phy_mii_ioctl +EXPORT_SYMBOL vmlinux 0xfe7c7dd3 input_handler_for_each_handle +EXPORT_SYMBOL vmlinux 0xfe832ac3 ll_rw_block +EXPORT_SYMBOL vmlinux 0xfe868f0e cpu_user +EXPORT_SYMBOL vmlinux 0xfe90c4a6 _find_first_zero_bit_le +EXPORT_SYMBOL vmlinux 0xfe98529e init_task +EXPORT_SYMBOL vmlinux 0xfe9ee68b release_sock +EXPORT_SYMBOL vmlinux 0xfeb5d0aa verify_spi_info +EXPORT_SYMBOL vmlinux 0xfec5341b tcp_simple_retransmit +EXPORT_SYMBOL vmlinux 0xfedb731b write_one_page +EXPORT_SYMBOL vmlinux 0xfedcdb60 seq_hlist_next_percpu +EXPORT_SYMBOL vmlinux 0xfefcb98e vme_dma_vme_attribute +EXPORT_SYMBOL vmlinux 0xff02a41b of_get_cpu_node +EXPORT_SYMBOL vmlinux 0xff1e9dd8 seq_list_start +EXPORT_SYMBOL vmlinux 0xff1ead36 vme_register_driver +EXPORT_SYMBOL vmlinux 0xff307d59 sock_wake_async +EXPORT_SYMBOL vmlinux 0xff5e7aba lookup_bdev +EXPORT_SYMBOL vmlinux 0xff60da92 mdiobus_scan +EXPORT_SYMBOL vmlinux 0xff6104d0 snd_pcm_rate_bit_to_rate +EXPORT_SYMBOL vmlinux 0xff6282f3 xfrm_input +EXPORT_SYMBOL vmlinux 0xff674079 security_binder_transaction +EXPORT_SYMBOL vmlinux 0xff67b37f __lshrdi3 +EXPORT_SYMBOL vmlinux 0xff6878cf fb_default_cmap +EXPORT_SYMBOL vmlinux 0xff6cd8e0 dev_set_group +EXPORT_SYMBOL vmlinux 0xff73be30 snd_pcm_lib_malloc_pages +EXPORT_SYMBOL vmlinux 0xff744319 scmd_printk +EXPORT_SYMBOL vmlinux 0xff8c2e5a radix_tree_tag_get +EXPORT_SYMBOL vmlinux 0xff9610ee qcom_scm_assign_mem +EXPORT_SYMBOL vmlinux 0xff98a454 __bio_clone_fast +EXPORT_SYMBOL vmlinux 0xff99161a nvdimm_bus_unlock +EXPORT_SYMBOL vmlinux 0xff996450 gen_pool_virt_to_phys +EXPORT_SYMBOL vmlinux 0xff9b6aad path_is_under +EXPORT_SYMBOL vmlinux 0xffb3eeb2 default_qdisc_ops +EXPORT_SYMBOL vmlinux 0xffb94ef0 _test_and_change_bit +EXPORT_SYMBOL vmlinux 0xffbdff56 nf_ct_get_tuple_skb +EXPORT_SYMBOL vmlinux 0xffd21205 setup_arg_pages +EXPORT_SYMBOL vmlinux 0xffd9ed2a nf_hook_slow +EXPORT_SYMBOL vmlinux 0xffdcad50 blk_rq_map_user +EXPORT_SYMBOL vmlinux 0xffe5f7f5 put_cmsg_scm_timestamping64 +EXPORT_SYMBOL vmlinux 0xffe82224 mmc_sw_reset +EXPORT_SYMBOL vmlinux 0xffeedf6a delayed_work_timer_fn +EXPORT_SYMBOL vmlinux 0xfff38c3f proc_mkdir_mode +EXPORT_SYMBOL vmlinux 0xfff9db26 vm_iomap_memory +EXPORT_SYMBOL_GPL arch/arm/crypto/sha1-arm 0x6b487d23 sha1_finup_arm +EXPORT_SYMBOL_GPL arch/arm/crypto/sha1-arm 0x9b0617bb sha1_update_arm +EXPORT_SYMBOL_GPL crypto/af_alg 0x0571743a af_alg_accept +EXPORT_SYMBOL_GPL crypto/af_alg 0x158eb152 af_alg_release_parent +EXPORT_SYMBOL_GPL crypto/af_alg 0x18fdea95 af_alg_sendpage +EXPORT_SYMBOL_GPL crypto/af_alg 0x1b4c1b3b af_alg_release +EXPORT_SYMBOL_GPL crypto/af_alg 0x3d96db6d af_alg_wmem_wakeup +EXPORT_SYMBOL_GPL crypto/af_alg 0x40f71262 af_alg_async_cb +EXPORT_SYMBOL_GPL crypto/af_alg 0x4283ee67 af_alg_sendmsg +EXPORT_SYMBOL_GPL crypto/af_alg 0x458a8a76 af_alg_free_sg +EXPORT_SYMBOL_GPL crypto/af_alg 0x47497a27 af_alg_wait_for_data +EXPORT_SYMBOL_GPL crypto/af_alg 0x675f3c99 af_alg_make_sg +EXPORT_SYMBOL_GPL crypto/af_alg 0x838e616e af_alg_count_tsgl +EXPORT_SYMBOL_GPL crypto/af_alg 0x8a3eeceb af_alg_unregister_type +EXPORT_SYMBOL_GPL crypto/af_alg 0xba5e24b5 af_alg_register_type +EXPORT_SYMBOL_GPL crypto/af_alg 0xcfa3e411 af_alg_poll +EXPORT_SYMBOL_GPL crypto/af_alg 0xdce77ee5 af_alg_free_resources +EXPORT_SYMBOL_GPL crypto/af_alg 0xe5b4d582 af_alg_pull_tsgl +EXPORT_SYMBOL_GPL crypto/af_alg 0xf31110e2 af_alg_get_rsgl +EXPORT_SYMBOL_GPL crypto/af_alg 0xfc06b1f5 af_alg_alloc_areq +EXPORT_SYMBOL_GPL crypto/asymmetric_keys/asym_tpm 0x7430f97c tpm_key_create +EXPORT_SYMBOL_GPL crypto/asymmetric_keys/asym_tpm 0xad689c30 asym_tpm_subtype +EXPORT_SYMBOL_GPL crypto/async_tx/async_memcpy 0x65512453 async_memcpy +EXPORT_SYMBOL_GPL crypto/async_tx/async_pq 0x023bc1d2 async_gen_syndrome +EXPORT_SYMBOL_GPL crypto/async_tx/async_pq 0xa961cd03 async_syndrome_val +EXPORT_SYMBOL_GPL crypto/async_tx/async_raid6_recov 0x590dcf58 async_raid6_2data_recov +EXPORT_SYMBOL_GPL crypto/async_tx/async_raid6_recov 0x976a5a95 async_raid6_datap_recov +EXPORT_SYMBOL_GPL crypto/async_tx/async_tx 0x4e266a62 async_trigger_callback +EXPORT_SYMBOL_GPL crypto/async_tx/async_tx 0x51a54a60 async_tx_submit +EXPORT_SYMBOL_GPL crypto/async_tx/async_tx 0xaddb534b __async_tx_find_channel +EXPORT_SYMBOL_GPL crypto/async_tx/async_tx 0xd49901fa async_tx_quiesce +EXPORT_SYMBOL_GPL crypto/async_tx/async_xor 0x397ace29 async_xor_val +EXPORT_SYMBOL_GPL crypto/async_tx/async_xor 0x520ecc8f async_xor +EXPORT_SYMBOL_GPL crypto/authenc 0x2479193e crypto_authenc_extractkeys +EXPORT_SYMBOL_GPL crypto/blowfish_common 0x4241b039 blowfish_setkey +EXPORT_SYMBOL_GPL crypto/cast5_generic 0x188d9d26 __cast5_decrypt +EXPORT_SYMBOL_GPL crypto/cast5_generic 0x471299e6 cast5_setkey +EXPORT_SYMBOL_GPL crypto/cast5_generic 0xef81a4af __cast5_encrypt +EXPORT_SYMBOL_GPL crypto/cast6_generic 0x0269bab5 cast6_setkey +EXPORT_SYMBOL_GPL crypto/cast6_generic 0x3dbae082 __cast6_decrypt +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 0x12157f30 cryptd_alloc_skcipher +EXPORT_SYMBOL_GPL crypto/cryptd 0x18dbd632 cryptd_skcipher_child +EXPORT_SYMBOL_GPL crypto/cryptd 0x3079e86a cryptd_skcipher_queued +EXPORT_SYMBOL_GPL crypto/cryptd 0x48c8cf5a cryptd_free_skcipher +EXPORT_SYMBOL_GPL crypto/cryptd 0x719a2a36 cryptd_aead_child +EXPORT_SYMBOL_GPL crypto/cryptd 0x723e6a2e cryptd_ahash_child +EXPORT_SYMBOL_GPL crypto/cryptd 0x73f076bd cryptd_free_ahash +EXPORT_SYMBOL_GPL crypto/cryptd 0x8c97d48b cryptd_alloc_aead +EXPORT_SYMBOL_GPL crypto/cryptd 0xa42dffc0 cryptd_alloc_ahash +EXPORT_SYMBOL_GPL crypto/cryptd 0xa6bb19c5 cryptd_aead_queued +EXPORT_SYMBOL_GPL crypto/cryptd 0xb1dc1d54 cryptd_shash_desc +EXPORT_SYMBOL_GPL crypto/cryptd 0xb8881253 cryptd_free_aead +EXPORT_SYMBOL_GPL crypto/cryptd 0xf9351a3e cryptd_ahash_queued +EXPORT_SYMBOL_GPL crypto/crypto_engine 0x17e0ecc7 crypto_finalize_aead_request +EXPORT_SYMBOL_GPL crypto/crypto_engine 0x2d246b85 crypto_finalize_skcipher_request +EXPORT_SYMBOL_GPL crypto/crypto_engine 0x3a707ab4 crypto_transfer_akcipher_request_to_engine +EXPORT_SYMBOL_GPL crypto/crypto_engine 0x3d7627f1 crypto_transfer_aead_request_to_engine +EXPORT_SYMBOL_GPL crypto/crypto_engine 0x436a8eab crypto_engine_exit +EXPORT_SYMBOL_GPL crypto/crypto_engine 0x43bc7803 crypto_finalize_hash_request +EXPORT_SYMBOL_GPL crypto/crypto_engine 0x6bdd1d94 crypto_engine_alloc_init +EXPORT_SYMBOL_GPL crypto/crypto_engine 0x89f1a957 crypto_engine_alloc_init_and_set +EXPORT_SYMBOL_GPL crypto/crypto_engine 0x906d93e4 crypto_transfer_skcipher_request_to_engine +EXPORT_SYMBOL_GPL crypto/crypto_engine 0xc354f9fd crypto_engine_start +EXPORT_SYMBOL_GPL crypto/crypto_engine 0xc5184b56 crypto_transfer_hash_request_to_engine +EXPORT_SYMBOL_GPL crypto/crypto_engine 0xd072da9f crypto_finalize_akcipher_request +EXPORT_SYMBOL_GPL crypto/crypto_engine 0xfe5a1529 crypto_engine_stop +EXPORT_SYMBOL_GPL crypto/crypto_simd 0x252b0bac simd_register_skciphers_compat +EXPORT_SYMBOL_GPL crypto/crypto_simd 0x345077d7 simd_unregister_skciphers +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 0x851c747c simd_aead_create +EXPORT_SYMBOL_GPL crypto/crypto_simd 0x88638552 simd_skcipher_create_compat +EXPORT_SYMBOL_GPL crypto/crypto_simd 0x9cbc7554 simd_register_aeads_compat +EXPORT_SYMBOL_GPL crypto/crypto_simd 0xbfd26f15 simd_aead_free +EXPORT_SYMBOL_GPL crypto/crypto_simd 0xeda0f9db simd_unregister_aeads +EXPORT_SYMBOL_GPL crypto/crypto_simd 0xefe73979 simd_skcipher_free +EXPORT_SYMBOL_GPL crypto/ecdh_generic 0x515ba532 crypto_ecdh_decode_key +EXPORT_SYMBOL_GPL crypto/ecdh_generic 0x7a395d76 crypto_ecdh_encode_key +EXPORT_SYMBOL_GPL crypto/ecdh_generic 0xd5a29505 crypto_ecdh_key_len +EXPORT_SYMBOL_GPL crypto/serpent_generic 0x4eb4c55e __serpent_encrypt +EXPORT_SYMBOL_GPL crypto/serpent_generic 0x8a8cc902 serpent_setkey +EXPORT_SYMBOL_GPL crypto/serpent_generic 0xbcc074f3 __serpent_decrypt +EXPORT_SYMBOL_GPL crypto/serpent_generic 0xd4c9681a __serpent_setkey +EXPORT_SYMBOL_GPL crypto/sm3_generic 0x0bddca87 sm3_zero_message_hash +EXPORT_SYMBOL_GPL crypto/sm4_generic 0x015cdca7 crypto_sm4_decrypt +EXPORT_SYMBOL_GPL crypto/sm4_generic 0x09a89410 crypto_sm4_expand_key +EXPORT_SYMBOL_GPL crypto/sm4_generic 0x95349250 crypto_sm4_set_key +EXPORT_SYMBOL_GPL crypto/sm4_generic 0xfb29a406 crypto_sm4_encrypt +EXPORT_SYMBOL_GPL crypto/twofish_common 0xe21244d0 twofish_setkey +EXPORT_SYMBOL_GPL crypto/twofish_common 0xe22b7787 __twofish_setkey +EXPORT_SYMBOL_GPL drivers/ata/pata_platform 0x6b243323 __pata_platform_probe +EXPORT_SYMBOL_GPL drivers/ata/pata_sis 0x78041c7d sis_info133_for_sata +EXPORT_SYMBOL_GPL drivers/auxdisplay/charlcd 0x727ea304 charlcd_poke +EXPORT_SYMBOL_GPL drivers/auxdisplay/charlcd 0x9192a401 charlcd_register +EXPORT_SYMBOL_GPL drivers/auxdisplay/charlcd 0xa2a58bbe charlcd_alloc +EXPORT_SYMBOL_GPL drivers/auxdisplay/charlcd 0xac53a91b charlcd_unregister +EXPORT_SYMBOL_GPL drivers/auxdisplay/charlcd 0xd0cc2e18 charlcd_free +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/base/regmap/regmap-i3c 0x04749140 __devm_regmap_init_i3c +EXPORT_SYMBOL_GPL drivers/base/regmap/regmap-sccb 0x4b5fac83 __regmap_init_sccb +EXPORT_SYMBOL_GPL drivers/base/regmap/regmap-sccb 0x790fc5b1 __devm_regmap_init_sccb +EXPORT_SYMBOL_GPL drivers/base/regmap/regmap-sdw 0x00ce0ff1 __regmap_init_sdw +EXPORT_SYMBOL_GPL drivers/base/regmap/regmap-sdw 0x1a9bd634 __devm_regmap_init_sdw +EXPORT_SYMBOL_GPL drivers/base/regmap/regmap-slimbus 0x60de5bce __devm_regmap_init_slimbus +EXPORT_SYMBOL_GPL drivers/base/regmap/regmap-slimbus 0xccfb6e5e __regmap_init_slimbus +EXPORT_SYMBOL_GPL drivers/base/regmap/regmap-spmi 0x07e83ea2 __devm_regmap_init_spmi_base +EXPORT_SYMBOL_GPL drivers/base/regmap/regmap-spmi 0x08213d50 __regmap_init_spmi_ext +EXPORT_SYMBOL_GPL drivers/base/regmap/regmap-spmi 0x4ab5e27a __devm_regmap_init_spmi_ext +EXPORT_SYMBOL_GPL drivers/base/regmap/regmap-spmi 0xdc1163ab __regmap_init_spmi_base +EXPORT_SYMBOL_GPL drivers/base/regmap/regmap-w1 0x71e6c667 __regmap_init_w1 +EXPORT_SYMBOL_GPL drivers/base/regmap/regmap-w1 0xa7db0a4f __devm_regmap_init_w1 +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0x071627c1 bcma_pmu_spuravoid_pllupdate +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0x0cdc9d3b __bcma_driver_register +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0x16ed5d6e bcma_find_core_unit +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0x24ddad76 bcma_core_pll_ctl +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0x356c965d bcma_chipco_regctl_maskset +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0x40b398a3 bcma_pmu_get_bus_clock +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0x440964c3 bcma_chipco_pll_write +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0x4a8024d9 bcma_chipco_b_mii_write +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0x764db90d bcma_chipco_get_alp_clock +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0x960973f7 bcma_driver_unregister +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0xa4cdfe85 bcma_chipco_pll_maskset +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0xaabd14c1 bcma_core_enable +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0xaad88357 bcma_host_pci_up +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0xb07d637a bcma_core_pci_power_save +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0xb46d5bb1 bcma_core_disable +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0xc09f81f1 bcma_chipco_gpio_control +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0xc9cdac46 bcma_chipco_gpio_outen +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0xcc1c5f40 bcma_chipco_gpio_out +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0xde4a9e9e bcma_chipco_pll_read +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0xe01b5f46 bcma_chipco_chipctl_maskset +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0xe79c8b6e bcma_core_set_clockmode +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0xeefd135a bcma_host_pci_down +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0xf6265218 bcma_host_pci_irq_ctl +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0xfd15c584 bcma_core_is_enabled +EXPORT_SYMBOL_GPL drivers/bluetooth/btbcm 0x0644a39e btbcm_setup_apple +EXPORT_SYMBOL_GPL drivers/bluetooth/btbcm 0x0b31c23f btbcm_set_bdaddr +EXPORT_SYMBOL_GPL drivers/bluetooth/btbcm 0x0fabba3c btbcm_write_pcm_int_params +EXPORT_SYMBOL_GPL drivers/bluetooth/btbcm 0x1776d410 btbcm_setup_patchram +EXPORT_SYMBOL_GPL drivers/bluetooth/btbcm 0x250e4e75 btbcm_finalize +EXPORT_SYMBOL_GPL drivers/bluetooth/btbcm 0x965c20c8 btbcm_check_bdaddr +EXPORT_SYMBOL_GPL drivers/bluetooth/btbcm 0xd6a3783b btbcm_read_pcm_int_params +EXPORT_SYMBOL_GPL drivers/bluetooth/btbcm 0xfa5bf00d btbcm_initialize +EXPORT_SYMBOL_GPL drivers/bluetooth/btintel 0x003b28ac btintel_exit_mfg +EXPORT_SYMBOL_GPL drivers/bluetooth/btintel 0x1fde6423 btintel_read_boot_params +EXPORT_SYMBOL_GPL drivers/bluetooth/btintel 0x226c403b btintel_download_firmware +EXPORT_SYMBOL_GPL drivers/bluetooth/btintel 0x2453cc15 btintel_load_ddc_config +EXPORT_SYMBOL_GPL drivers/bluetooth/btintel 0x2c3366b4 btintel_read_version +EXPORT_SYMBOL_GPL drivers/bluetooth/btintel 0x3f04cb29 btintel_secure_send +EXPORT_SYMBOL_GPL drivers/bluetooth/btintel 0x42e7bac9 btintel_version_info +EXPORT_SYMBOL_GPL drivers/bluetooth/btintel 0x43b13253 btintel_hw_error +EXPORT_SYMBOL_GPL drivers/bluetooth/btintel 0x4fad84b7 btintel_enter_mfg +EXPORT_SYMBOL_GPL drivers/bluetooth/btintel 0x573572b8 btintel_set_event_mask_mfg +EXPORT_SYMBOL_GPL drivers/bluetooth/btintel 0x592148ff btintel_set_event_mask +EXPORT_SYMBOL_GPL drivers/bluetooth/btintel 0x6ea66308 btintel_check_bdaddr +EXPORT_SYMBOL_GPL drivers/bluetooth/btintel 0x9edc3bbb btintel_set_bdaddr +EXPORT_SYMBOL_GPL drivers/bluetooth/btintel 0xb3ea1ac9 btintel_set_diag_mfg +EXPORT_SYMBOL_GPL drivers/bluetooth/btintel 0xbbdce2b2 btintel_send_intel_reset +EXPORT_SYMBOL_GPL drivers/bluetooth/btintel 0xc1036828 btintel_reset_to_bootloader +EXPORT_SYMBOL_GPL drivers/bluetooth/btintel 0xeb451b3f btintel_regmap_init +EXPORT_SYMBOL_GPL drivers/bluetooth/btintel 0xf46290bb btintel_set_diag +EXPORT_SYMBOL_GPL drivers/bluetooth/btmrvl 0x07dbe18e btmrvl_interrupt +EXPORT_SYMBOL_GPL drivers/bluetooth/btmrvl 0x1ed4d430 btmrvl_remove_card +EXPORT_SYMBOL_GPL drivers/bluetooth/btmrvl 0x1ef45d02 btmrvl_register_hdev +EXPORT_SYMBOL_GPL drivers/bluetooth/btmrvl 0x212868aa btmrvl_pscan_window_reporting +EXPORT_SYMBOL_GPL drivers/bluetooth/btmrvl 0x2e7b157d btmrvl_process_event +EXPORT_SYMBOL_GPL drivers/bluetooth/btmrvl 0x3297c828 btmrvl_enable_hs +EXPORT_SYMBOL_GPL drivers/bluetooth/btmrvl 0x33033aa3 btmrvl_send_module_cfg_cmd +EXPORT_SYMBOL_GPL drivers/bluetooth/btmrvl 0xa123b235 btmrvl_send_hscfg_cmd +EXPORT_SYMBOL_GPL drivers/bluetooth/btmrvl 0xa32c92c6 btmrvl_enable_ps +EXPORT_SYMBOL_GPL drivers/bluetooth/btmrvl 0xb3b8f5cd btmrvl_check_evtpkt +EXPORT_SYMBOL_GPL drivers/bluetooth/btmrvl 0xd5648ffa btmrvl_add_card +EXPORT_SYMBOL_GPL drivers/bluetooth/btqca 0x13dce696 qca_send_pre_shutdown_cmd +EXPORT_SYMBOL_GPL drivers/bluetooth/btqca 0x17e43f10 qca_set_bdaddr +EXPORT_SYMBOL_GPL drivers/bluetooth/btqca 0x4e99be70 qca_uart_setup +EXPORT_SYMBOL_GPL drivers/bluetooth/btqca 0x50a8a01b qca_read_soc_version +EXPORT_SYMBOL_GPL drivers/bluetooth/btqca 0xafa1a2f8 qca_set_bdaddr_rome +EXPORT_SYMBOL_GPL drivers/bluetooth/btrtl 0x404cbe32 btrtl_initialize +EXPORT_SYMBOL_GPL drivers/bluetooth/btrtl 0x60c1061b btrtl_get_uart_settings +EXPORT_SYMBOL_GPL drivers/bluetooth/btrtl 0xaf78f260 btrtl_free +EXPORT_SYMBOL_GPL drivers/bluetooth/btrtl 0xc169cae0 btrtl_download_firmware +EXPORT_SYMBOL_GPL drivers/bluetooth/btrtl 0xc30dbc98 btrtl_setup_realtek +EXPORT_SYMBOL_GPL drivers/bluetooth/btrtl 0xd658e802 btrtl_shutdown_realtek +EXPORT_SYMBOL_GPL drivers/bluetooth/hci_uart 0x306b64ad h4_recv_buf +EXPORT_SYMBOL_GPL drivers/bluetooth/hci_uart 0x39bf155a hci_uart_tx_wakeup +EXPORT_SYMBOL_GPL drivers/bluetooth/hci_uart 0xa17a7c94 hci_uart_register_device +EXPORT_SYMBOL_GPL drivers/bluetooth/hci_uart 0xe9f63741 hci_uart_unregister_device +EXPORT_SYMBOL_GPL drivers/bus/mhi/core/mhi 0x114a7d15 mhi_queue_buf +EXPORT_SYMBOL_GPL drivers/bus/mhi/core/mhi 0x138be370 mhi_force_rddm_mode +EXPORT_SYMBOL_GPL drivers/bus/mhi/core/mhi 0x1d2f4f2b mhi_pm_suspend +EXPORT_SYMBOL_GPL drivers/bus/mhi/core/mhi 0x22326ea6 mhi_device_get_sync +EXPORT_SYMBOL_GPL drivers/bus/mhi/core/mhi 0x2c576945 mhi_pm_resume +EXPORT_SYMBOL_GPL drivers/bus/mhi/core/mhi 0x3d337c1b mhi_power_down +EXPORT_SYMBOL_GPL drivers/bus/mhi/core/mhi 0x5140fa34 mhi_notify +EXPORT_SYMBOL_GPL drivers/bus/mhi/core/mhi 0x54808697 mhi_unprepare_after_power_down +EXPORT_SYMBOL_GPL drivers/bus/mhi/core/mhi 0x5c79053a mhi_device_put +EXPORT_SYMBOL_GPL drivers/bus/mhi/core/mhi 0x5eb41781 mhi_download_rddm_img +EXPORT_SYMBOL_GPL drivers/bus/mhi/core/mhi 0x6f83e41c mhi_prepare_for_power_up +EXPORT_SYMBOL_GPL drivers/bus/mhi/core/mhi 0x79077898 mhi_device_get +EXPORT_SYMBOL_GPL drivers/bus/mhi/core/mhi 0x7be5d1e7 mhi_queue_dma +EXPORT_SYMBOL_GPL drivers/bus/mhi/core/mhi 0x7e33440b mhi_register_controller +EXPORT_SYMBOL_GPL drivers/bus/mhi/core/mhi 0x872f109c mhi_unregister_controller +EXPORT_SYMBOL_GPL drivers/bus/mhi/core/mhi 0x99b80cfa mhi_prepare_for_transfer +EXPORT_SYMBOL_GPL drivers/bus/mhi/core/mhi 0x9d50ceab mhi_poll +EXPORT_SYMBOL_GPL drivers/bus/mhi/core/mhi 0xb0aa6661 mhi_async_power_up +EXPORT_SYMBOL_GPL drivers/bus/mhi/core/mhi 0xfa9cfd9b mhi_driver_unregister +EXPORT_SYMBOL_GPL drivers/bus/mhi/core/mhi 0xfb5ed98c mhi_unprepare_from_transfer +EXPORT_SYMBOL_GPL drivers/bus/mhi/core/mhi 0xfbd5b13c mhi_queue_skb +EXPORT_SYMBOL_GPL drivers/bus/mhi/core/mhi 0xfca6ae0c __mhi_driver_register +EXPORT_SYMBOL_GPL drivers/bus/moxtet 0x13b4ce9c moxtet_device_write +EXPORT_SYMBOL_GPL drivers/bus/moxtet 0x1c6c225e moxtet_device_written +EXPORT_SYMBOL_GPL drivers/bus/moxtet 0x89e81e8d __moxtet_register_driver +EXPORT_SYMBOL_GPL drivers/bus/moxtet 0xa24cc73b moxtet_device_read +EXPORT_SYMBOL_GPL drivers/clk/meson/clk-phase 0xc37ae3f3 meson_clk_triphase_ops +EXPORT_SYMBOL_GPL drivers/clk/meson/clk-phase 0xeb820ca2 meson_clk_phase_ops +EXPORT_SYMBOL_GPL drivers/clk/meson/sclk-div 0xb1aa8b06 meson_sclk_div_ops +EXPORT_SYMBOL_GPL drivers/clk/qcom/clk-qcom 0x0000139e clk_alpha_pll_ops +EXPORT_SYMBOL_GPL drivers/clk/qcom/clk-qcom 0x072a0cc3 qcom_cc_probe +EXPORT_SYMBOL_GPL drivers/clk/qcom/clk-qcom 0x08f0cc30 clk_is_enabled_regmap +EXPORT_SYMBOL_GPL drivers/clk/qcom/clk-qcom 0x0d10c3c4 clk_enable_regmap +EXPORT_SYMBOL_GPL drivers/clk/qcom/clk-qcom 0x0d678ab9 qcom_reset_ops +EXPORT_SYMBOL_GPL drivers/clk/qcom/clk-qcom 0x0e5f8a53 clk_pll_sr2_ops +EXPORT_SYMBOL_GPL drivers/clk/qcom/clk-qcom 0x0e98da3d clk_pll_vote_ops +EXPORT_SYMBOL_GPL drivers/clk/qcom/clk-qcom 0x17d44071 clk_alpha_pll_hwfsm_ops +EXPORT_SYMBOL_GPL drivers/clk/qcom/clk-qcom 0x1987883d clk_alpha_pll_fixed_lucid_ops +EXPORT_SYMBOL_GPL drivers/clk/qcom/clk-qcom 0x272f3204 clk_alpha_pll_fixed_ops +EXPORT_SYMBOL_GPL drivers/clk/qcom/clk-qcom 0x2a9c7452 clk_rcg_lcc_ops +EXPORT_SYMBOL_GPL drivers/clk/qcom/clk-qcom 0x2b0d957d clk_pixel_ops +EXPORT_SYMBOL_GPL drivers/clk/qcom/clk-qcom 0x2cae96b3 clk_regmap_div_ops +EXPORT_SYMBOL_GPL drivers/clk/qcom/clk-qcom 0x30bbf987 clk_rcg2_shared_ops +EXPORT_SYMBOL_GPL drivers/clk/qcom/clk-qcom 0x310b6341 clk_regmap_mux_closest_ops +EXPORT_SYMBOL_GPL drivers/clk/qcom/clk-qcom 0x3747af55 clk_rcg_bypass2_ops +EXPORT_SYMBOL_GPL drivers/clk/qcom/clk-qcom 0x395868a1 qcom_find_freq_floor +EXPORT_SYMBOL_GPL drivers/clk/qcom/clk-qcom 0x3b15a709 clk_alpha_pll_configure +EXPORT_SYMBOL_GPL drivers/clk/qcom/clk-qcom 0x3dfc2dc5 clk_branch_simple_ops +EXPORT_SYMBOL_GPL drivers/clk/qcom/clk-qcom 0x405d394a clk_alpha_pll_postdiv_ops +EXPORT_SYMBOL_GPL drivers/clk/qcom/clk-qcom 0x418e9cfd clk_pll_ops +EXPORT_SYMBOL_GPL drivers/clk/qcom/clk-qcom 0x4b0ed6da clk_ops_hfpll +EXPORT_SYMBOL_GPL drivers/clk/qcom/clk-qcom 0x5111f2ad clk_rcg2_ops +EXPORT_SYMBOL_GPL drivers/clk/qcom/clk-qcom 0x520df3b7 clk_rcg_esc_ops +EXPORT_SYMBOL_GPL drivers/clk/qcom/clk-qcom 0x57172323 clk_byte_ops +EXPORT_SYMBOL_GPL drivers/clk/qcom/clk-qcom 0x57d26870 devm_clk_register_regmap +EXPORT_SYMBOL_GPL drivers/clk/qcom/clk-qcom 0x5e6abb22 mux_div_set_src_div +EXPORT_SYMBOL_GPL drivers/clk/qcom/clk-qcom 0x615dbb77 clk_branch2_ops +EXPORT_SYMBOL_GPL drivers/clk/qcom/clk-qcom 0x631939a9 clk_branch2_aon_ops +EXPORT_SYMBOL_GPL drivers/clk/qcom/clk-qcom 0x63ee9aa4 clk_alpha_pll_fixed_fabia_ops +EXPORT_SYMBOL_GPL drivers/clk/qcom/clk-qcom 0x66922845 clk_branch_ops +EXPORT_SYMBOL_GPL drivers/clk/qcom/clk-qcom 0x68199825 clk_disable_regmap +EXPORT_SYMBOL_GPL drivers/clk/qcom/clk-qcom 0x6af41b8b qcom_pll_set_fsm_mode +EXPORT_SYMBOL_GPL drivers/clk/qcom/clk-qcom 0x6c069db2 qcom_find_src_index +EXPORT_SYMBOL_GPL drivers/clk/qcom/clk-qcom 0x7019378d clk_pll_configure_sr_hpm_lp +EXPORT_SYMBOL_GPL drivers/clk/qcom/clk-qcom 0x766e9f87 clk_regmap_div_ro_ops +EXPORT_SYMBOL_GPL drivers/clk/qcom/clk-qcom 0x787e8234 qcom_find_freq +EXPORT_SYMBOL_GPL drivers/clk/qcom/clk-qcom 0x78b81ea0 clk_rcg2_floor_ops +EXPORT_SYMBOL_GPL drivers/clk/qcom/clk-qcom 0x7e66fd9e clk_regmap_mux_div_ops +EXPORT_SYMBOL_GPL drivers/clk/qcom/clk-qcom 0x8b55eac4 clk_dyn_rcg_ops +EXPORT_SYMBOL_GPL drivers/clk/qcom/clk-qcom 0x91c41c9f clk_edp_pixel_ops +EXPORT_SYMBOL_GPL drivers/clk/qcom/clk-qcom 0x97488818 clk_rcg_pixel_ops +EXPORT_SYMBOL_GPL drivers/clk/qcom/clk-qcom 0x9c8854a1 clk_alpha_pll_lucid_ops +EXPORT_SYMBOL_GPL drivers/clk/qcom/clk-qcom 0x9d909edd clk_gfx3d_ops +EXPORT_SYMBOL_GPL drivers/clk/qcom/clk-qcom 0x9dc41abb krait_div2_clk_ops +EXPORT_SYMBOL_GPL drivers/clk/qcom/clk-qcom 0x9e33f365 clk_trion_pll_postdiv_ops +EXPORT_SYMBOL_GPL drivers/clk/qcom/clk-qcom 0x9f241baa clk_rcg_ops +EXPORT_SYMBOL_GPL drivers/clk/qcom/clk-qcom 0xa6f08f9a clk_trion_fixed_pll_ops +EXPORT_SYMBOL_GPL drivers/clk/qcom/clk-qcom 0xaa403ee8 clk_alpha_pll_huayra_ops +EXPORT_SYMBOL_GPL drivers/clk/qcom/clk-qcom 0xadc2751b clk_alpha_pll_postdiv_fabia_ops +EXPORT_SYMBOL_GPL drivers/clk/qcom/clk-qcom 0xba961aa7 clk_dp_ops +EXPORT_SYMBOL_GPL drivers/clk/qcom/clk-qcom 0xbd67274e qcom_cc_register_board_clk +EXPORT_SYMBOL_GPL drivers/clk/qcom/clk-qcom 0xc037091a krait_mux_clk_ops +EXPORT_SYMBOL_GPL drivers/clk/qcom/clk-qcom 0xc128f691 qcom_cc_probe_by_index +EXPORT_SYMBOL_GPL drivers/clk/qcom/clk-qcom 0xc150d434 clk_alpha_pll_postdiv_ro_ops +EXPORT_SYMBOL_GPL drivers/clk/qcom/clk-qcom 0xc5bdfa11 clk_byte2_ops +EXPORT_SYMBOL_GPL drivers/clk/qcom/clk-qcom 0xc6a05db2 clk_fabia_pll_configure +EXPORT_SYMBOL_GPL drivers/clk/qcom/clk-qcom 0xca3e4076 qcom_cc_really_probe +EXPORT_SYMBOL_GPL drivers/clk/qcom/clk-qcom 0xce340fb8 clk_alpha_pll_regs +EXPORT_SYMBOL_GPL drivers/clk/qcom/clk-qcom 0xcf422970 clk_rcg_bypass_ops +EXPORT_SYMBOL_GPL drivers/clk/qcom/clk-qcom 0xd3135b41 qcom_cc_register_rcg_dfs +EXPORT_SYMBOL_GPL drivers/clk/qcom/clk-qcom 0xd7ab6782 clk_alpha_pll_postdiv_lucid_ops +EXPORT_SYMBOL_GPL drivers/clk/qcom/clk-qcom 0xd8d92954 clk_lucid_pll_configure +EXPORT_SYMBOL_GPL drivers/clk/qcom/clk-qcom 0xe302111d qcom_cc_register_sleep_clk +EXPORT_SYMBOL_GPL drivers/clk/qcom/clk-qcom 0xe6e14638 clk_alpha_pll_fabia_ops +EXPORT_SYMBOL_GPL drivers/clk/qcom/clk-qcom 0xe816a036 clk_pll_configure_sr +EXPORT_SYMBOL_GPL drivers/clk/qcom/clk-qcom 0xe9976209 qcom_cc_map +EXPORT_SYMBOL_GPL drivers/counter/counter 0x01aab51b counter_count_direction_str +EXPORT_SYMBOL_GPL drivers/counter/counter 0x227894bc counter_signal_enum_read +EXPORT_SYMBOL_GPL drivers/counter/counter 0x25072124 counter_signal_enum_write +EXPORT_SYMBOL_GPL drivers/counter/counter 0x31846fa2 devm_counter_unregister +EXPORT_SYMBOL_GPL drivers/counter/counter 0x71c5ce8d counter_count_enum_available_read +EXPORT_SYMBOL_GPL drivers/counter/counter 0x824d9c82 counter_signal_enum_available_read +EXPORT_SYMBOL_GPL drivers/counter/counter 0x8ec534db counter_unregister +EXPORT_SYMBOL_GPL drivers/counter/counter 0x94383453 devm_counter_register +EXPORT_SYMBOL_GPL drivers/counter/counter 0xa99c4cac counter_device_enum_available_read +EXPORT_SYMBOL_GPL drivers/counter/counter 0xb0874da0 counter_count_enum_write +EXPORT_SYMBOL_GPL drivers/counter/counter 0xb4d131ec counter_device_enum_write +EXPORT_SYMBOL_GPL drivers/counter/counter 0xb889e1b5 counter_count_enum_read +EXPORT_SYMBOL_GPL drivers/counter/counter 0xe67f5106 counter_register +EXPORT_SYMBOL_GPL drivers/counter/counter 0xee526d0f counter_count_mode_str +EXPORT_SYMBOL_GPL drivers/counter/counter 0xfb1ed2bb counter_device_enum_read +EXPORT_SYMBOL_GPL drivers/crypto/omap-crypto 0x5c2673e4 omap_crypto_cleanup +EXPORT_SYMBOL_GPL drivers/crypto/omap-crypto 0xd9009a51 omap_crypto_align_sg +EXPORT_SYMBOL_GPL drivers/dax/device_dax 0xc952d06f dev_dax_probe +EXPORT_SYMBOL_GPL drivers/dma/dw-edma/dw-edma 0x5c0971cf dw_edma_remove +EXPORT_SYMBOL_GPL drivers/dma/dw-edma/dw-edma 0xfcf5b5fa dw_edma_probe +EXPORT_SYMBOL_GPL drivers/dma/dw/dw_dmac_core 0x347d415d idma32_dma_remove +EXPORT_SYMBOL_GPL drivers/dma/dw/dw_dmac_core 0x5489008f do_dw_dma_disable +EXPORT_SYMBOL_GPL drivers/dma/dw/dw_dmac_core 0x54896492 do_dw_dma_enable +EXPORT_SYMBOL_GPL drivers/dma/dw/dw_dmac_core 0x893e2a4d dw_dma_filter +EXPORT_SYMBOL_GPL drivers/dma/dw/dw_dmac_core 0x92c2c4df dw_dma_remove +EXPORT_SYMBOL_GPL drivers/dma/dw/dw_dmac_core 0xec217374 idma32_dma_probe +EXPORT_SYMBOL_GPL drivers/dma/dw/dw_dmac_core 0xeff396d1 dw_dma_probe +EXPORT_SYMBOL_GPL drivers/dma/fsl-edma-common 0x03f2afe9 fsl_edma_slave_config +EXPORT_SYMBOL_GPL drivers/dma/fsl-edma-common 0x145daac9 fsl_edma_setup_regs +EXPORT_SYMBOL_GPL drivers/dma/fsl-edma-common 0x3bd90df6 fsl_edma_disable_request +EXPORT_SYMBOL_GPL drivers/dma/fsl-edma-common 0x48f43627 fsl_edma_free_desc +EXPORT_SYMBOL_GPL drivers/dma/fsl-edma-common 0x5f461662 fsl_edma_tx_status +EXPORT_SYMBOL_GPL drivers/dma/fsl-edma-common 0x637d9ccb fsl_edma_prep_slave_sg +EXPORT_SYMBOL_GPL drivers/dma/fsl-edma-common 0x7df3cf58 fsl_edma_alloc_chan_resources +EXPORT_SYMBOL_GPL drivers/dma/fsl-edma-common 0x8005a331 fsl_edma_cleanup_vchan +EXPORT_SYMBOL_GPL drivers/dma/fsl-edma-common 0x882f8772 fsl_edma_chan_mux +EXPORT_SYMBOL_GPL drivers/dma/fsl-edma-common 0xb78da44e fsl_edma_prep_dma_cyclic +EXPORT_SYMBOL_GPL drivers/dma/fsl-edma-common 0xbbdc15ab fsl_edma_xfer_desc +EXPORT_SYMBOL_GPL drivers/dma/fsl-edma-common 0xc21a448a fsl_edma_terminate_all +EXPORT_SYMBOL_GPL drivers/dma/fsl-edma-common 0xc5b9fc0e fsl_edma_resume +EXPORT_SYMBOL_GPL drivers/dma/fsl-edma-common 0xcc16f176 fsl_edma_issue_pending +EXPORT_SYMBOL_GPL drivers/dma/fsl-edma-common 0xccab3665 fsl_edma_free_chan_resources +EXPORT_SYMBOL_GPL drivers/dma/fsl-edma-common 0xff4c6d87 fsl_edma_pause +EXPORT_SYMBOL_GPL drivers/dma/qcom/hdma_mgmt 0xb07d6e2a hidma_mgmt_init_sys +EXPORT_SYMBOL_GPL drivers/dma/qcom/hdma_mgmt 0xfac755e7 hidma_mgmt_setup +EXPORT_SYMBOL_GPL drivers/firewire/firewire-core 0xe86fb5c7 fw_card_release +EXPORT_SYMBOL_GPL drivers/firmware/arm_scpi 0xe53b48ee get_scpi_ops +EXPORT_SYMBOL_GPL drivers/fpga/altera-pr-ip-core 0x99f88f5a alt_pr_register +EXPORT_SYMBOL_GPL drivers/fpga/altera-pr-ip-core 0xe2ccfcb5 alt_pr_unregister +EXPORT_SYMBOL_GPL drivers/fpga/dfl 0x10af98d4 dfl_fpga_cdev_release_port +EXPORT_SYMBOL_GPL drivers/fpga/dfl 0x29ddc944 dfl_fpga_dev_ops_register +EXPORT_SYMBOL_GPL drivers/fpga/dfl 0x5416bdd5 dfl_fpga_feature_devs_remove +EXPORT_SYMBOL_GPL drivers/fpga/dfl 0x55e5d820 dfl_fpga_dev_feature_uinit +EXPORT_SYMBOL_GPL drivers/fpga/dfl 0x602a81ba dfl_fpga_feature_devs_enumerate +EXPORT_SYMBOL_GPL drivers/fpga/dfl 0x60788b9a dfl_fpga_cdev_config_ports_vf +EXPORT_SYMBOL_GPL drivers/fpga/dfl 0x77869a47 dfl_fpga_enum_info_alloc +EXPORT_SYMBOL_GPL drivers/fpga/dfl 0x77e7895a dfl_fpga_dev_feature_init +EXPORT_SYMBOL_GPL drivers/fpga/dfl 0x7b3d8836 dfl_fpga_check_port_id +EXPORT_SYMBOL_GPL drivers/fpga/dfl 0x95f12298 __dfl_fpga_cdev_find_port +EXPORT_SYMBOL_GPL drivers/fpga/dfl 0x9c5e3e07 dfl_fpga_enum_info_free +EXPORT_SYMBOL_GPL drivers/fpga/dfl 0x9eb60291 dfl_fpga_cdev_config_ports_pf +EXPORT_SYMBOL_GPL drivers/fpga/dfl 0xa1d81a93 dfl_fpga_port_ops_add +EXPORT_SYMBOL_GPL drivers/fpga/dfl 0xbc63ba48 dfl_fpga_enum_info_add_dfl +EXPORT_SYMBOL_GPL drivers/fpga/dfl 0xc063cdfb dfl_fpga_port_ops_put +EXPORT_SYMBOL_GPL drivers/fpga/dfl 0xcfcda864 dfl_fpga_port_ops_get +EXPORT_SYMBOL_GPL drivers/fpga/dfl 0xd7bcae42 dfl_fpga_port_ops_del +EXPORT_SYMBOL_GPL drivers/fpga/dfl 0xec19934a dfl_fpga_cdev_assign_port +EXPORT_SYMBOL_GPL drivers/fpga/dfl 0xf9100c69 dfl_fpga_dev_ops_unregister +EXPORT_SYMBOL_GPL drivers/fpga/fpga-bridge 0x0633c4b9 fpga_bridges_enable +EXPORT_SYMBOL_GPL drivers/fpga/fpga-bridge 0x07d2f2cf fpga_bridge_disable +EXPORT_SYMBOL_GPL drivers/fpga/fpga-bridge 0x0b2b884c fpga_bridges_put +EXPORT_SYMBOL_GPL drivers/fpga/fpga-bridge 0x12a1acff of_fpga_bridge_get +EXPORT_SYMBOL_GPL drivers/fpga/fpga-bridge 0x2c8167cf fpga_bridges_disable +EXPORT_SYMBOL_GPL drivers/fpga/fpga-bridge 0x2d29c024 of_fpga_bridge_get_to_list +EXPORT_SYMBOL_GPL drivers/fpga/fpga-bridge 0x4c652714 fpga_bridge_put +EXPORT_SYMBOL_GPL drivers/fpga/fpga-bridge 0x653aeb52 fpga_bridge_get_to_list +EXPORT_SYMBOL_GPL drivers/fpga/fpga-bridge 0x81043018 fpga_bridge_enable +EXPORT_SYMBOL_GPL drivers/fpga/fpga-bridge 0x906236be fpga_bridge_unregister +EXPORT_SYMBOL_GPL drivers/fpga/fpga-bridge 0x942388d7 fpga_bridge_get +EXPORT_SYMBOL_GPL drivers/fpga/fpga-bridge 0x9cc9a890 fpga_bridge_free +EXPORT_SYMBOL_GPL drivers/fpga/fpga-bridge 0x9ee84554 fpga_bridge_create +EXPORT_SYMBOL_GPL drivers/fpga/fpga-bridge 0xa1a0ca85 devm_fpga_bridge_create +EXPORT_SYMBOL_GPL drivers/fpga/fpga-bridge 0xb9f45dd3 fpga_bridge_register +EXPORT_SYMBOL_GPL drivers/fpga/fpga-mgr 0x2fcba202 fpga_mgr_free +EXPORT_SYMBOL_GPL drivers/fpga/fpga-mgr 0x2ff5f77b fpga_mgr_unlock +EXPORT_SYMBOL_GPL drivers/fpga/fpga-mgr 0x5685a725 of_fpga_mgr_get +EXPORT_SYMBOL_GPL drivers/fpga/fpga-mgr 0x68f4be3c fpga_image_info_free +EXPORT_SYMBOL_GPL drivers/fpga/fpga-mgr 0x6d8c2858 fpga_mgr_put +EXPORT_SYMBOL_GPL drivers/fpga/fpga-mgr 0x6de674d8 fpga_mgr_lock +EXPORT_SYMBOL_GPL drivers/fpga/fpga-mgr 0x7a0b38c2 fpga_mgr_get +EXPORT_SYMBOL_GPL drivers/fpga/fpga-mgr 0x89d166a8 fpga_mgr_unregister +EXPORT_SYMBOL_GPL drivers/fpga/fpga-mgr 0xa029ebd1 fpga_mgr_load +EXPORT_SYMBOL_GPL drivers/fpga/fpga-mgr 0xb57e0955 devm_fpga_mgr_create +EXPORT_SYMBOL_GPL drivers/fpga/fpga-mgr 0xcc4114b4 fpga_mgr_register +EXPORT_SYMBOL_GPL drivers/fpga/fpga-mgr 0xe776e68e fpga_mgr_create +EXPORT_SYMBOL_GPL drivers/fpga/fpga-mgr 0xf0cb0e61 fpga_image_info_alloc +EXPORT_SYMBOL_GPL drivers/fpga/fpga-region 0x12dd357e fpga_region_class_find +EXPORT_SYMBOL_GPL drivers/fpga/fpga-region 0x1c8b08b5 devm_fpga_region_create +EXPORT_SYMBOL_GPL drivers/fpga/fpga-region 0x6d7d8428 fpga_region_unregister +EXPORT_SYMBOL_GPL drivers/fpga/fpga-region 0x6f0c901c fpga_region_free +EXPORT_SYMBOL_GPL drivers/fpga/fpga-region 0xa0d68e69 fpga_region_program_fpga +EXPORT_SYMBOL_GPL drivers/fpga/fpga-region 0xcbbfd57f fpga_region_create +EXPORT_SYMBOL_GPL drivers/fpga/fpga-region 0xd7b7ae79 fpga_region_register +EXPORT_SYMBOL_GPL drivers/fsi/fsi-core 0x0fee74f4 fsi_device_read +EXPORT_SYMBOL_GPL drivers/fsi/fsi-core 0x1942d718 fsi_master_register +EXPORT_SYMBOL_GPL drivers/fsi/fsi-core 0x3a93847e fsi_slave_claim_range +EXPORT_SYMBOL_GPL drivers/fsi/fsi-core 0x50ba72aa fsi_driver_unregister +EXPORT_SYMBOL_GPL drivers/fsi/fsi-core 0x5621c9c9 fsi_get_new_minor +EXPORT_SYMBOL_GPL drivers/fsi/fsi-core 0x5a57d574 fsi_free_minor +EXPORT_SYMBOL_GPL drivers/fsi/fsi-core 0x60a97912 fsi_slave_write +EXPORT_SYMBOL_GPL drivers/fsi/fsi-core 0x99a4490c fsi_bus_type +EXPORT_SYMBOL_GPL drivers/fsi/fsi-core 0x9e7dc3e4 fsi_master_rescan +EXPORT_SYMBOL_GPL drivers/fsi/fsi-core 0xa4962831 fsi_device_write +EXPORT_SYMBOL_GPL drivers/fsi/fsi-core 0xb39b7c76 fsi_cdev_type +EXPORT_SYMBOL_GPL drivers/fsi/fsi-core 0xc79dc49a fsi_master_unregister +EXPORT_SYMBOL_GPL drivers/fsi/fsi-core 0xcbc1c7af fsi_driver_register +EXPORT_SYMBOL_GPL drivers/fsi/fsi-core 0xce22aee2 fsi_slave_release_range +EXPORT_SYMBOL_GPL drivers/fsi/fsi-core 0xe4ac7aa2 fsi_slave_read +EXPORT_SYMBOL_GPL drivers/fsi/fsi-occ 0xfc342fe1 fsi_occ_submit +EXPORT_SYMBOL_GPL drivers/fsi/fsi-sbefifo 0x85efc1a9 sbefifo_submit +EXPORT_SYMBOL_GPL drivers/fsi/fsi-sbefifo 0x993d7188 sbefifo_parse_status +EXPORT_SYMBOL_GPL drivers/gnss/gnss 0x2473f68b gnss_register_device +EXPORT_SYMBOL_GPL drivers/gnss/gnss 0x3b6e3312 gnss_deregister_device +EXPORT_SYMBOL_GPL drivers/gnss/gnss 0x4a9518c0 gnss_put_device +EXPORT_SYMBOL_GPL drivers/gnss/gnss 0x968dd9e4 gnss_allocate_device +EXPORT_SYMBOL_GPL drivers/gnss/gnss 0xf3938388 gnss_insert_raw +EXPORT_SYMBOL_GPL drivers/gnss/gnss-serial 0x23ef3517 gnss_serial_register +EXPORT_SYMBOL_GPL drivers/gnss/gnss-serial 0x48eb89f6 gnss_serial_allocate +EXPORT_SYMBOL_GPL drivers/gnss/gnss-serial 0x8b551d06 gnss_serial_deregister +EXPORT_SYMBOL_GPL drivers/gnss/gnss-serial 0x945893a7 gnss_serial_pm_ops +EXPORT_SYMBOL_GPL drivers/gnss/gnss-serial 0xab5e38c3 gnss_serial_free +EXPORT_SYMBOL_GPL drivers/gpio/gpio-aspeed 0x30bcde86 aspeed_gpio_copro_release_gpio +EXPORT_SYMBOL_GPL drivers/gpio/gpio-aspeed 0x5dcbe46c aspeed_gpio_copro_set_ops +EXPORT_SYMBOL_GPL drivers/gpio/gpio-aspeed 0xe97cadc1 aspeed_gpio_copro_grab_gpio +EXPORT_SYMBOL_GPL drivers/gpio/gpio-max730x 0x342e4ea4 __max730x_remove +EXPORT_SYMBOL_GPL drivers/gpio/gpio-max730x 0xd87136e6 __max730x_probe +EXPORT_SYMBOL_GPL drivers/gpu/drm/bridge/analogix/analogix_dp 0x039e84ff analogix_dp_start_crc +EXPORT_SYMBOL_GPL drivers/gpu/drm/bridge/analogix/analogix_dp 0x12e73372 analogix_dp_bind +EXPORT_SYMBOL_GPL drivers/gpu/drm/bridge/analogix/analogix_dp 0x1dab8116 analogix_dp_probe +EXPORT_SYMBOL_GPL drivers/gpu/drm/bridge/analogix/analogix_dp 0x2fcb7582 analogix_dp_suspend +EXPORT_SYMBOL_GPL drivers/gpu/drm/bridge/analogix/analogix_dp 0x44398a2f analogix_dp_stop_crc +EXPORT_SYMBOL_GPL drivers/gpu/drm/bridge/analogix/analogix_dp 0x8ff58c66 analogix_dp_unbind +EXPORT_SYMBOL_GPL drivers/gpu/drm/bridge/analogix/analogix_dp 0x95fda7e6 analogix_dp_resume +EXPORT_SYMBOL_GPL drivers/gpu/drm/bridge/analogix/analogix_dp 0xe4978c9d anx_dp_aux_transfer +EXPORT_SYMBOL_GPL drivers/gpu/drm/bridge/analogix/analogix_dp 0xe5a39999 analogix_dp_remove +EXPORT_SYMBOL_GPL drivers/gpu/drm/bridge/synopsys/dw-hdmi 0x09340e05 dw_hdmi_set_channel_count +EXPORT_SYMBOL_GPL drivers/gpu/drm/bridge/synopsys/dw-hdmi 0x094f6fc5 dw_hdmi_phy_i2c_set_addr +EXPORT_SYMBOL_GPL drivers/gpu/drm/bridge/synopsys/dw-hdmi 0x1461e227 dw_hdmi_set_channel_status +EXPORT_SYMBOL_GPL drivers/gpu/drm/bridge/synopsys/dw-hdmi 0x157e02b6 dw_hdmi_phy_reset +EXPORT_SYMBOL_GPL drivers/gpu/drm/bridge/synopsys/dw-hdmi 0x2d1c0e80 dw_hdmi_setup_rx_sense +EXPORT_SYMBOL_GPL drivers/gpu/drm/bridge/synopsys/dw-hdmi 0x2fac9436 dw_hdmi_set_channel_allocation +EXPORT_SYMBOL_GPL drivers/gpu/drm/bridge/synopsys/dw-hdmi 0x316212a8 dw_hdmi_unbind +EXPORT_SYMBOL_GPL drivers/gpu/drm/bridge/synopsys/dw-hdmi 0x42926f4a dw_hdmi_resume +EXPORT_SYMBOL_GPL drivers/gpu/drm/bridge/synopsys/dw-hdmi 0x4a9b174f dw_hdmi_remove +EXPORT_SYMBOL_GPL drivers/gpu/drm/bridge/synopsys/dw-hdmi 0x6712b5a7 dw_hdmi_phy_gen2_txpwron +EXPORT_SYMBOL_GPL drivers/gpu/drm/bridge/synopsys/dw-hdmi 0x7d8a3aee dw_hdmi_phy_i2c_write +EXPORT_SYMBOL_GPL drivers/gpu/drm/bridge/synopsys/dw-hdmi 0x822671f9 dw_hdmi_set_high_tmds_clock_ratio +EXPORT_SYMBOL_GPL drivers/gpu/drm/bridge/synopsys/dw-hdmi 0x8dba346a dw_hdmi_set_plugged_cb +EXPORT_SYMBOL_GPL drivers/gpu/drm/bridge/synopsys/dw-hdmi 0x8dcd6f43 dw_hdmi_set_sample_rate +EXPORT_SYMBOL_GPL drivers/gpu/drm/bridge/synopsys/dw-hdmi 0x9b44a60b dw_hdmi_phy_gen2_pddq +EXPORT_SYMBOL_GPL drivers/gpu/drm/bridge/synopsys/dw-hdmi 0xce27012a dw_hdmi_audio_disable +EXPORT_SYMBOL_GPL drivers/gpu/drm/bridge/synopsys/dw-hdmi 0xd30fc9a2 dw_hdmi_probe +EXPORT_SYMBOL_GPL drivers/gpu/drm/bridge/synopsys/dw-hdmi 0xd6968220 dw_hdmi_phy_setup_hpd +EXPORT_SYMBOL_GPL drivers/gpu/drm/bridge/synopsys/dw-hdmi 0xd8fe547b dw_hdmi_audio_enable +EXPORT_SYMBOL_GPL drivers/gpu/drm/bridge/synopsys/dw-hdmi 0xdafa1790 dw_hdmi_phy_read_hpd +EXPORT_SYMBOL_GPL drivers/gpu/drm/bridge/synopsys/dw-hdmi 0xe6f00f82 dw_hdmi_bind +EXPORT_SYMBOL_GPL drivers/gpu/drm/bridge/synopsys/dw-hdmi 0xf5922009 dw_hdmi_phy_update_hpd +EXPORT_SYMBOL_GPL drivers/gpu/drm/bridge/synopsys/dw-mipi-dsi 0x0d667204 dw_mipi_dsi_unbind +EXPORT_SYMBOL_GPL drivers/gpu/drm/bridge/synopsys/dw-mipi-dsi 0x41361ae4 dw_mipi_dsi_set_slave +EXPORT_SYMBOL_GPL drivers/gpu/drm/bridge/synopsys/dw-mipi-dsi 0x42ac3b2e dw_mipi_dsi_remove +EXPORT_SYMBOL_GPL drivers/gpu/drm/bridge/synopsys/dw-mipi-dsi 0x76138d0c dw_mipi_dsi_probe +EXPORT_SYMBOL_GPL drivers/gpu/drm/bridge/synopsys/dw-mipi-dsi 0x8f096008 dw_mipi_dsi_bind +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm 0x01b30024 drm_bridge_hpd_enable +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm 0x089f1ea6 drm_of_lvds_get_dual_link_pixel_order +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm 0x1d6ec267 drm_display_mode_to_videomode +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm 0x2b48f3d2 drm_gem_cma_prime_import_sg_table +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm 0x2f0bc21b drm_gem_cma_mmap +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm 0x3007e2fe drm_of_component_match_add +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm 0x40e49a82 drm_gem_shmem_prime_import_sg_table +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm 0x40f55c2f drm_gem_cma_free_object +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm 0x41740567 drm_gem_cma_prime_vunmap +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm 0x439ee9f7 drm_bridge_hpd_notify +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm 0x4baf5b34 drm_do_get_edid +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm 0x53e51f9c drm_gem_shmem_get_sg_table +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm 0x55e04cc0 drm_hdcp_check_ksvs_revoked +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm 0x5710de05 drm_gem_cma_dumb_create_internal +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm 0x5d2ca929 drm_class_device_unregister +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm 0x5d64d295 drm_gem_cma_vm_ops +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm 0x6050a8ad drm_gem_shmem_dumb_create +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm 0x68b7858d drm_display_mode_from_videomode +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm 0x77f42476 of_get_drm_display_mode +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm 0x8c35c05d drm_gem_cma_prime_vmap +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm 0x8d5073cc drm_bridge_hpd_disable +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm 0x922c12e9 drm_gem_cma_prime_mmap +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm 0xa5198970 drm_crtc_add_crc_entry +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm 0xad885165 drm_bus_flags_from_videomode +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm 0xafaccaf7 drm_class_device_register +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm 0xb0bfbffb drm_of_encoder_active_endpoint +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm 0xb5d48a3c drm_gem_shmem_free_object +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm 0xbcf8c65e drmm_kstrdup +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm 0xc32b7174 drm_gem_cma_create +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm 0xc556a69f drm_gem_shmem_get_pages_sgt +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm 0xc7ef701e drm_bridge_detect +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm 0xc9f7ddc1 drm_gem_shmem_mmap +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm 0xd38268e3 drm_gem_dumb_map_offset +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm 0xde6cd4c1 drm_gem_shmem_create +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm 0xeb2b0341 drm_gem_cma_dumb_create +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm 0xec8a5974 drm_bridge_get_edid +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm 0xf40f8873 drm_of_find_panel_or_bridge +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm 0xf5cad8c1 drm_bridge_get_modes +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm 0xf81d71af drm_gem_cma_prime_get_sg_table +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm 0xff8de3dd drm_get_unmapped_area +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm_kms_helper 0x04ce94cb drm_bridge_connector_disable_hpd +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm_kms_helper 0x0af4c65e drm_gem_fb_get_obj +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm_kms_helper 0x2fe65871 drm_fb_cma_get_gem_obj +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm_kms_helper 0x374c7f9d drm_gem_fb_init_with_funcs +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm_kms_helper 0x7ceca4a9 drm_gem_fb_prepare_fb +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm_kms_helper 0x83ae2f8a drm_gem_fb_create_with_funcs +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm_kms_helper 0xa8c23823 drm_gem_fb_create_with_dirty +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm_kms_helper 0xc5f9c41b drm_gem_fb_afbc_init +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm_kms_helper 0xcdf9f7c2 drm_bridge_connector_init +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm_kms_helper 0xced009f7 drm_fb_cma_get_gem_addr +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm_kms_helper 0xdd18f5a3 drm_bridge_connector_enable_hpd +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm_kms_helper 0xe1a32a93 drm_gem_fb_create +EXPORT_SYMBOL_GPL drivers/gpu/drm/imx/imxdrm 0x0f087f0f ipu_planes_assign_pre +EXPORT_SYMBOL_GPL drivers/gpu/drm/imx/imxdrm 0x29ef026d ipu_plane_disable_deferred +EXPORT_SYMBOL_GPL drivers/gpu/drm/imx/imxdrm 0x36d1ef33 imx_drm_connector_destroy +EXPORT_SYMBOL_GPL drivers/gpu/drm/imx/imxdrm 0xe2206125 imx_drm_encoder_parse_of +EXPORT_SYMBOL_GPL drivers/gpu/drm/mcde/mcde_drm 0x2a155c30 mcde_display_init +EXPORT_SYMBOL_GPL drivers/gpu/drm/meson/meson-drm 0x2c73cfcf meson_venc_hdmi_venc_repeat +EXPORT_SYMBOL_GPL drivers/gpu/drm/meson/meson-drm 0x5681254b meson_venc_hdmi_mode_set +EXPORT_SYMBOL_GPL drivers/gpu/drm/meson/meson-drm 0xab5bee2f meson_venc_hdmi_supported_vic +EXPORT_SYMBOL_GPL drivers/gpu/drm/meson/meson-drm 0xdea0ab5c meson_vclk_dmt_supported_freq +EXPORT_SYMBOL_GPL drivers/gpu/drm/meson/meson-drm 0xeacd01e6 meson_vclk_vic_supported_freq +EXPORT_SYMBOL_GPL drivers/gpu/drm/meson/meson-drm 0xec6914f6 meson_vclk_setup +EXPORT_SYMBOL_GPL drivers/gpu/drm/meson/meson-drm 0xfd34888c meson_venc_hdmi_supported_mode +EXPORT_SYMBOL_GPL drivers/gpu/drm/pl111/pl111_drm 0xbed03519 pl111_versatile_init +EXPORT_SYMBOL_GPL drivers/gpu/drm/rcar-du/rcar_cmm 0x23380939 rcar_cmm_disable +EXPORT_SYMBOL_GPL drivers/gpu/drm/rcar-du/rcar_cmm 0x6f6e306e rcar_cmm_setup +EXPORT_SYMBOL_GPL drivers/gpu/drm/rcar-du/rcar_cmm 0xc425d345 rcar_cmm_init +EXPORT_SYMBOL_GPL drivers/gpu/drm/rcar-du/rcar_cmm 0xe782e1e0 rcar_cmm_enable +EXPORT_SYMBOL_GPL drivers/gpu/drm/rcar-du/rcar_lvds 0x0080aaf5 rcar_lvds_clk_disable +EXPORT_SYMBOL_GPL drivers/gpu/drm/rcar-du/rcar_lvds 0x94d60aa6 rcar_lvds_clk_enable +EXPORT_SYMBOL_GPL drivers/gpu/drm/rcar-du/rcar_lvds 0xb3536470 rcar_lvds_dual_link +EXPORT_SYMBOL_GPL drivers/gpu/drm/rockchip/rockchipdrm 0xd21660e6 vop_component_ops +EXPORT_SYMBOL_GPL drivers/gpu/drm/rockchip/rockchipdrm 0xed8a5d68 rockchip_rgb_init +EXPORT_SYMBOL_GPL drivers/gpu/drm/rockchip/rockchipdrm 0xfead7585 rockchip_rgb_fini +EXPORT_SYMBOL_GPL drivers/gpu/drm/ttm/ttm 0x28612ef9 ttm_dma_populate +EXPORT_SYMBOL_GPL drivers/gpu/drm/ttm/ttm 0x4239b169 ttm_dma_page_alloc_debugfs +EXPORT_SYMBOL_GPL drivers/gpu/drm/ttm/ttm 0x69425652 ttm_dma_unpopulate +EXPORT_SYMBOL_GPL drivers/gpu/ipu-v3/imx-ipu-v3 0x050f0d7b ipu_di_adjust_videomode +EXPORT_SYMBOL_GPL drivers/gpu/ipu-v3/imx-ipu-v3 0x07036df2 ipu_ic_calc_csc +EXPORT_SYMBOL_GPL drivers/gpu/ipu-v3/imx-ipu-v3 0x0728116a ipu_csi_disable +EXPORT_SYMBOL_GPL drivers/gpu/ipu-v3/imx-ipu-v3 0x0e42bd95 ipu_csi_set_dest +EXPORT_SYMBOL_GPL drivers/gpu/ipu-v3/imx-ipu-v3 0x0e792e13 ipu_cpmem_set_axi_id +EXPORT_SYMBOL_GPL drivers/gpu/ipu-v3/imx-ipu-v3 0x100fcb01 ipu_module_enable +EXPORT_SYMBOL_GPL drivers/gpu/ipu-v3/imx-ipu-v3 0x10239e1b ipu_cpmem_set_yuv_planar_full +EXPORT_SYMBOL_GPL drivers/gpu/ipu-v3/imx-ipu-v3 0x118160e1 ipu_ic_enable +EXPORT_SYMBOL_GPL drivers/gpu/ipu-v3/imx-ipu-v3 0x12d63077 ipu_image_convert_prepare +EXPORT_SYMBOL_GPL drivers/gpu/ipu-v3/imx-ipu-v3 0x13952dfe ipu_dmfc_enable_channel +EXPORT_SYMBOL_GPL drivers/gpu/ipu-v3/imx-ipu-v3 0x15ec2ba5 ipu_di_put +EXPORT_SYMBOL_GPL drivers/gpu/ipu-v3/imx-ipu-v3 0x16c7df08 ipu_ic_get +EXPORT_SYMBOL_GPL drivers/gpu/ipu-v3/imx-ipu-v3 0x172d4c2b ipu_cpmem_get_burstsize +EXPORT_SYMBOL_GPL drivers/gpu/ipu-v3/imx-ipu-v3 0x18730251 ipu_rot_mode_to_degrees +EXPORT_SYMBOL_GPL drivers/gpu/ipu-v3/imx-ipu-v3 0x189ebe66 ipu_smfc_get +EXPORT_SYMBOL_GPL drivers/gpu/ipu-v3/imx-ipu-v3 0x18aa0dcd ipu_image_convert_abort +EXPORT_SYMBOL_GPL drivers/gpu/ipu-v3/imx-ipu-v3 0x1e913d9f ipu_csi_get_window +EXPORT_SYMBOL_GPL drivers/gpu/ipu-v3/imx-ipu-v3 0x20d224ff ipu_cpmem_set_burstsize +EXPORT_SYMBOL_GPL drivers/gpu/ipu-v3/imx-ipu-v3 0x20e09f6f ipu_csi_set_mipi_datatype +EXPORT_SYMBOL_GPL drivers/gpu/ipu-v3/imx-ipu-v3 0x2424c9a6 ipu_csi_is_interlaced +EXPORT_SYMBOL_GPL drivers/gpu/ipu-v3/imx-ipu-v3 0x271d0049 ipu_fsu_link +EXPORT_SYMBOL_GPL drivers/gpu/ipu-v3/imx-ipu-v3 0x27eec2de ipu_image_convert +EXPORT_SYMBOL_GPL drivers/gpu/ipu-v3/imx-ipu-v3 0x2cf7ed72 ipu_dc_init_sync +EXPORT_SYMBOL_GPL drivers/gpu/ipu-v3/imx-ipu-v3 0x2d4e5577 ipu_cpmem_set_stride +EXPORT_SYMBOL_GPL drivers/gpu/ipu-v3/imx-ipu-v3 0x2e825a67 ipu_smfc_set_watermark +EXPORT_SYMBOL_GPL drivers/gpu/ipu-v3/imx-ipu-v3 0x2f3264ee ipu_prg_disable +EXPORT_SYMBOL_GPL drivers/gpu/ipu-v3/imx-ipu-v3 0x2f92d651 ipu_ic_task_enable +EXPORT_SYMBOL_GPL drivers/gpu/ipu-v3/imx-ipu-v3 0x3020d65c ipu_prg_max_active_channels +EXPORT_SYMBOL_GPL drivers/gpu/ipu-v3/imx-ipu-v3 0x3166aec7 ipu_dmfc_disable_channel +EXPORT_SYMBOL_GPL drivers/gpu/ipu-v3/imx-ipu-v3 0x32ba810b ipu_cpmem_set_buffer +EXPORT_SYMBOL_GPL drivers/gpu/ipu-v3/imx-ipu-v3 0x331a867a ipu_idmac_channel_busy +EXPORT_SYMBOL_GPL drivers/gpu/ipu-v3/imx-ipu-v3 0x34b6550c ipu_set_ic_src_mux +EXPORT_SYMBOL_GPL drivers/gpu/ipu-v3/imx-ipu-v3 0x35f71032 ipu_csi_get +EXPORT_SYMBOL_GPL drivers/gpu/ipu-v3/imx-ipu-v3 0x3c467922 ipu_get_num +EXPORT_SYMBOL_GPL drivers/gpu/ipu-v3/imx-ipu-v3 0x3d8f18f6 __ipu_ic_calc_csc +EXPORT_SYMBOL_GPL drivers/gpu/ipu-v3/imx-ipu-v3 0x3e86ea72 ipu_di_get_num +EXPORT_SYMBOL_GPL drivers/gpu/ipu-v3/imx-ipu-v3 0x418a282f ipu_drm_fourcc_to_colorspace +EXPORT_SYMBOL_GPL drivers/gpu/ipu-v3/imx-ipu-v3 0x42d3d500 ipu_image_convert_unprepare +EXPORT_SYMBOL_GPL drivers/gpu/ipu-v3/imx-ipu-v3 0x4325d425 ipu_idmac_link +EXPORT_SYMBOL_GPL drivers/gpu/ipu-v3/imx-ipu-v3 0x485e5373 ipu_cpmem_set_resolution +EXPORT_SYMBOL_GPL drivers/gpu/ipu-v3/imx-ipu-v3 0x4917f47a ipu_ic_dump +EXPORT_SYMBOL_GPL drivers/gpu/ipu-v3/imx-ipu-v3 0x498b4c7b ipu_image_convert_enum_format +EXPORT_SYMBOL_GPL drivers/gpu/ipu-v3/imx-ipu-v3 0x4c179b49 ipu_dp_put +EXPORT_SYMBOL_GPL drivers/gpu/ipu-v3/imx-ipu-v3 0x4d2a7876 ipu_dp_disable +EXPORT_SYMBOL_GPL drivers/gpu/ipu-v3/imx-ipu-v3 0x4f07c77c ipu_cpmem_set_yuv_interleaved +EXPORT_SYMBOL_GPL drivers/gpu/ipu-v3/imx-ipu-v3 0x51475e87 ipu_dmfc_put +EXPORT_SYMBOL_GPL drivers/gpu/ipu-v3/imx-ipu-v3 0x527f3b94 ipu_smfc_set_burstsize +EXPORT_SYMBOL_GPL drivers/gpu/ipu-v3/imx-ipu-v3 0x53de277c ipu_di_enable +EXPORT_SYMBOL_GPL drivers/gpu/ipu-v3/imx-ipu-v3 0x55716d7d ipu_idmac_channel_irq +EXPORT_SYMBOL_GPL drivers/gpu/ipu-v3/imx-ipu-v3 0x55767280 ipu_vdi_set_motion +EXPORT_SYMBOL_GPL drivers/gpu/ipu-v3/imx-ipu-v3 0x580d2f81 ipu_vdi_put +EXPORT_SYMBOL_GPL drivers/gpu/ipu-v3/imx-ipu-v3 0x5b15aea8 ipu_dp_disable_channel +EXPORT_SYMBOL_GPL drivers/gpu/ipu-v3/imx-ipu-v3 0x5b66c3a8 ipu_cpmem_dump +EXPORT_SYMBOL_GPL drivers/gpu/ipu-v3/imx-ipu-v3 0x5cae270a ipu_vdi_unsetup +EXPORT_SYMBOL_GPL drivers/gpu/ipu-v3/imx-ipu-v3 0x5ed7d3a2 ipu_vdi_get +EXPORT_SYMBOL_GPL drivers/gpu/ipu-v3/imx-ipu-v3 0x5efe54cf ipu_cpmem_set_format_passthrough +EXPORT_SYMBOL_GPL drivers/gpu/ipu-v3/imx-ipu-v3 0x60bdf2ec ipu_csi_put +EXPORT_SYMBOL_GPL drivers/gpu/ipu-v3/imx-ipu-v3 0x623722e2 ipu_ic_task_disable +EXPORT_SYMBOL_GPL drivers/gpu/ipu-v3/imx-ipu-v3 0x63593ec7 ipu_csi_init_interface +EXPORT_SYMBOL_GPL drivers/gpu/ipu-v3/imx-ipu-v3 0x6590a64b ipu_set_csi_src_mux +EXPORT_SYMBOL_GPL drivers/gpu/ipu-v3/imx-ipu-v3 0x66e729d2 ipu_mbus_code_to_colorspace +EXPORT_SYMBOL_GPL drivers/gpu/ipu-v3/imx-ipu-v3 0x7068e939 ipu_dc_put +EXPORT_SYMBOL_GPL drivers/gpu/ipu-v3/imx-ipu-v3 0x72b47741 ipu_cpmem_set_block_mode +EXPORT_SYMBOL_GPL drivers/gpu/ipu-v3/imx-ipu-v3 0x734c6a9b ipu_idmac_select_buffer +EXPORT_SYMBOL_GPL drivers/gpu/ipu-v3/imx-ipu-v3 0x74b69821 ipu_idmac_lock_enable +EXPORT_SYMBOL_GPL drivers/gpu/ipu-v3/imx-ipu-v3 0x770f412d ipu_module_disable +EXPORT_SYMBOL_GPL drivers/gpu/ipu-v3/imx-ipu-v3 0x77387d7e ipu_prg_enable +EXPORT_SYMBOL_GPL drivers/gpu/ipu-v3/imx-ipu-v3 0x77effe13 ipu_dp_get +EXPORT_SYMBOL_GPL drivers/gpu/ipu-v3/imx-ipu-v3 0x7935ba21 ipu_idmac_put +EXPORT_SYMBOL_GPL drivers/gpu/ipu-v3/imx-ipu-v3 0x7fb84c89 ipu_idmac_enable_watermark +EXPORT_SYMBOL_GPL drivers/gpu/ipu-v3/imx-ipu-v3 0x818d6f12 ipu_cpmem_skip_odd_chroma_rows +EXPORT_SYMBOL_GPL drivers/gpu/ipu-v3/imx-ipu-v3 0x8497c7d4 ipu_degrees_to_rot_mode +EXPORT_SYMBOL_GPL drivers/gpu/ipu-v3/imx-ipu-v3 0x84b72135 ipu_prg_channel_configure_pending +EXPORT_SYMBOL_GPL drivers/gpu/ipu-v3/imx-ipu-v3 0x84ce9427 ipu_dc_disable +EXPORT_SYMBOL_GPL drivers/gpu/ipu-v3/imx-ipu-v3 0x87d652ad ipu_di_get +EXPORT_SYMBOL_GPL drivers/gpu/ipu-v3/imx-ipu-v3 0x886c35aa ipu_smfc_map_channel +EXPORT_SYMBOL_GPL drivers/gpu/ipu-v3/imx-ipu-v3 0x89098eba ipu_idmac_get_current_buffer +EXPORT_SYMBOL_GPL drivers/gpu/ipu-v3/imx-ipu-v3 0x899d1b10 ipu_prg_channel_configure +EXPORT_SYMBOL_GPL drivers/gpu/ipu-v3/imx-ipu-v3 0x8a9458d2 ipu_image_convert_verify +EXPORT_SYMBOL_GPL drivers/gpu/ipu-v3/imx-ipu-v3 0x8eb22643 ipu_dp_set_global_alpha +EXPORT_SYMBOL_GPL drivers/gpu/ipu-v3/imx-ipu-v3 0x8ece82bd ipu_pixelformat_is_planar +EXPORT_SYMBOL_GPL drivers/gpu/ipu-v3/imx-ipu-v3 0x8f86efa7 ipu_prg_present +EXPORT_SYMBOL_GPL drivers/gpu/ipu-v3/imx-ipu-v3 0x9058e289 ipu_smfc_put +EXPORT_SYMBOL_GPL drivers/gpu/ipu-v3/imx-ipu-v3 0x906d44d0 ipu_cpmem_set_format_rgb +EXPORT_SYMBOL_GPL drivers/gpu/ipu-v3/imx-ipu-v3 0x91ce1a04 ipu_dp_set_window_pos +EXPORT_SYMBOL_GPL drivers/gpu/ipu-v3/imx-ipu-v3 0x91e3070b ipu_idmac_enable_channel +EXPORT_SYMBOL_GPL drivers/gpu/ipu-v3/imx-ipu-v3 0x92595703 ipu_cpmem_zero +EXPORT_SYMBOL_GPL drivers/gpu/ipu-v3/imx-ipu-v3 0x94dda4e1 ipu_image_convert_sync +EXPORT_SYMBOL_GPL drivers/gpu/ipu-v3/imx-ipu-v3 0x951a09d5 ipu_csi_enable +EXPORT_SYMBOL_GPL drivers/gpu/ipu-v3/imx-ipu-v3 0x97f08d2f ipu_ic_task_init +EXPORT_SYMBOL_GPL drivers/gpu/ipu-v3/imx-ipu-v3 0x9f38e177 ipu_dp_enable_channel +EXPORT_SYMBOL_GPL drivers/gpu/ipu-v3/imx-ipu-v3 0x9f7838dc ipu_idmac_get +EXPORT_SYMBOL_GPL drivers/gpu/ipu-v3/imx-ipu-v3 0xa0ed8bd8 ipu_dc_get +EXPORT_SYMBOL_GPL drivers/gpu/ipu-v3/imx-ipu-v3 0xa13b70a5 ipu_dmfc_get +EXPORT_SYMBOL_GPL drivers/gpu/ipu-v3/imx-ipu-v3 0xa1e35df1 ipu_idmac_disable_channel +EXPORT_SYMBOL_GPL drivers/gpu/ipu-v3/imx-ipu-v3 0xa4b0cabd ipu_dc_disable_channel +EXPORT_SYMBOL_GPL drivers/gpu/ipu-v3/imx-ipu-v3 0xa516e861 ipu_idmac_wait_busy +EXPORT_SYMBOL_GPL drivers/gpu/ipu-v3/imx-ipu-v3 0xa60b144b ipu_csi_set_window +EXPORT_SYMBOL_GPL drivers/gpu/ipu-v3/imx-ipu-v3 0xa6daa1cb ipu_image_convert_queue +EXPORT_SYMBOL_GPL drivers/gpu/ipu-v3/imx-ipu-v3 0xa77bf9bb ipu_srm_dp_update +EXPORT_SYMBOL_GPL drivers/gpu/ipu-v3/imx-ipu-v3 0xa7f8d25e ipu_dump +EXPORT_SYMBOL_GPL drivers/gpu/ipu-v3/imx-ipu-v3 0xa8adc101 ipu_pixelformat_to_colorspace +EXPORT_SYMBOL_GPL drivers/gpu/ipu-v3/imx-ipu-v3 0xa96882d8 ipu_ic_disable +EXPORT_SYMBOL_GPL drivers/gpu/ipu-v3/imx-ipu-v3 0xabb76ec1 ipu_ic_task_idma_init +EXPORT_SYMBOL_GPL drivers/gpu/ipu-v3/imx-ipu-v3 0xac55b01a ipu_cpmem_set_high_priority +EXPORT_SYMBOL_GPL drivers/gpu/ipu-v3/imx-ipu-v3 0xb1ee1f33 ipu_dp_enable +EXPORT_SYMBOL_GPL drivers/gpu/ipu-v3/imx-ipu-v3 0xb30a977f ipu_cpmem_set_fmt +EXPORT_SYMBOL_GPL drivers/gpu/ipu-v3/imx-ipu-v3 0xba2a4164 ipu_cpmem_set_uv_offset +EXPORT_SYMBOL_GPL drivers/gpu/ipu-v3/imx-ipu-v3 0xba458b8f ipu_csi_set_test_generator +EXPORT_SYMBOL_GPL drivers/gpu/ipu-v3/imx-ipu-v3 0xbf983ba6 ipu_vdi_set_field_order +EXPORT_SYMBOL_GPL drivers/gpu/ipu-v3/imx-ipu-v3 0xc065feff ipu_cpmem_set_rotation +EXPORT_SYMBOL_GPL drivers/gpu/ipu-v3/imx-ipu-v3 0xc3c2cdb0 ipu_smfc_disable +EXPORT_SYMBOL_GPL drivers/gpu/ipu-v3/imx-ipu-v3 0xc4af2e81 ipu_dmfc_config_wait4eot +EXPORT_SYMBOL_GPL drivers/gpu/ipu-v3/imx-ipu-v3 0xc4b15642 ipu_csi_set_skip_smfc +EXPORT_SYMBOL_GPL drivers/gpu/ipu-v3/imx-ipu-v3 0xc603fac7 ipu_image_convert_adjust +EXPORT_SYMBOL_GPL drivers/gpu/ipu-v3/imx-ipu-v3 0xc6675aa9 ipu_csi_dump +EXPORT_SYMBOL_GPL drivers/gpu/ipu-v3/imx-ipu-v3 0xc677177d ipu_smfc_enable +EXPORT_SYMBOL_GPL drivers/gpu/ipu-v3/imx-ipu-v3 0xc97e7a0f ipu_di_disable +EXPORT_SYMBOL_GPL drivers/gpu/ipu-v3/imx-ipu-v3 0xc9ae2977 ipu_fsu_unlink +EXPORT_SYMBOL_GPL drivers/gpu/ipu-v3/imx-ipu-v3 0xca48c8eb ipu_prg_channel_disable +EXPORT_SYMBOL_GPL drivers/gpu/ipu-v3/imx-ipu-v3 0xcbea3eec ipu_di_init_sync_panel +EXPORT_SYMBOL_GPL drivers/gpu/ipu-v3/imx-ipu-v3 0xcd67a578 ipu_cpmem_set_image +EXPORT_SYMBOL_GPL drivers/gpu/ipu-v3/imx-ipu-v3 0xcd7fbaa4 ipu_ic_task_graphics_init +EXPORT_SYMBOL_GPL drivers/gpu/ipu-v3/imx-ipu-v3 0xcdb9982c ipu_idmac_buffer_is_ready +EXPORT_SYMBOL_GPL drivers/gpu/ipu-v3/imx-ipu-v3 0xce10db35 ipu_stride_to_bytes +EXPORT_SYMBOL_GPL drivers/gpu/ipu-v3/imx-ipu-v3 0xd6c155a8 ipu_dc_enable +EXPORT_SYMBOL_GPL drivers/gpu/ipu-v3/imx-ipu-v3 0xd8f285f0 ipu_vdi_setup +EXPORT_SYMBOL_GPL drivers/gpu/ipu-v3/imx-ipu-v3 0xddaf7274 ipu_idmac_clear_buffer +EXPORT_SYMBOL_GPL drivers/gpu/ipu-v3/imx-ipu-v3 0xdeaac188 ipu_idmac_unlink +EXPORT_SYMBOL_GPL drivers/gpu/ipu-v3/imx-ipu-v3 0xe300a959 ipu_dp_setup_channel +EXPORT_SYMBOL_GPL drivers/gpu/ipu-v3/imx-ipu-v3 0xe6243c52 ipu_dc_enable_channel +EXPORT_SYMBOL_GPL drivers/gpu/ipu-v3/imx-ipu-v3 0xe94c0fe8 ipu_map_irq +EXPORT_SYMBOL_GPL drivers/gpu/ipu-v3/imx-ipu-v3 0xeb9dd385 ipu_cpmem_interlaced_scan +EXPORT_SYMBOL_GPL drivers/gpu/ipu-v3/imx-ipu-v3 0xed66febf ipu_idmac_set_double_buffer +EXPORT_SYMBOL_GPL drivers/gpu/ipu-v3/imx-ipu-v3 0xeea12b31 ipu_vdi_enable +EXPORT_SYMBOL_GPL drivers/gpu/ipu-v3/imx-ipu-v3 0xf1440dc1 ipu_ic_put +EXPORT_SYMBOL_GPL drivers/gpu/ipu-v3/imx-ipu-v3 0xf1abac7e ipu_csi_set_downsize +EXPORT_SYMBOL_GPL drivers/gpu/ipu-v3/imx-ipu-v3 0xf541df2d ipu_vdi_disable +EXPORT_SYMBOL_GPL drivers/gpu/ipu-v3/imx-ipu-v3 0xfaee9b74 ipu_prg_format_supported +EXPORT_SYMBOL_GPL drivers/greybus/greybus 0x0491cc29 greybus_deregister_driver +EXPORT_SYMBOL_GPL drivers/greybus/greybus 0x12678914 gb_connection_disable_rx +EXPORT_SYMBOL_GPL drivers/greybus/greybus 0x15d1942f greybus_disabled +EXPORT_SYMBOL_GPL drivers/greybus/greybus 0x1bc557f9 gb_hd_cport_reserve +EXPORT_SYMBOL_GPL drivers/greybus/greybus 0x1be03444 gb_operation_request_send +EXPORT_SYMBOL_GPL drivers/greybus/greybus 0x2386957a gb_hd_output +EXPORT_SYMBOL_GPL drivers/greybus/greybus 0x29f7da7f __tracepoint_gb_hd_in +EXPORT_SYMBOL_GPL drivers/greybus/greybus 0x2d4cd9b7 gb_connection_create_flags +EXPORT_SYMBOL_GPL drivers/greybus/greybus 0x2dd6ee4c gb_debugfs_get +EXPORT_SYMBOL_GPL drivers/greybus/greybus 0x2e87f79c gb_connection_enable +EXPORT_SYMBOL_GPL drivers/greybus/greybus 0x3668b935 gb_operation_get +EXPORT_SYMBOL_GPL drivers/greybus/greybus 0x38b89571 __tracepoint_gb_hd_create +EXPORT_SYMBOL_GPL drivers/greybus/greybus 0x3d0f3f95 greybus_register_driver +EXPORT_SYMBOL_GPL drivers/greybus/greybus 0x422aba3d gb_operation_result +EXPORT_SYMBOL_GPL drivers/greybus/greybus 0x4affade0 greybus_data_rcvd +EXPORT_SYMBOL_GPL drivers/greybus/greybus 0x50517685 __tracepoint_gb_message_submit +EXPORT_SYMBOL_GPL drivers/greybus/greybus 0x554d1ff5 gb_connection_disable +EXPORT_SYMBOL_GPL drivers/greybus/greybus 0x55a5dfaa gb_operation_response_alloc +EXPORT_SYMBOL_GPL drivers/greybus/greybus 0x5952e031 gb_connection_create_offloaded +EXPORT_SYMBOL_GPL drivers/greybus/greybus 0x65c8e343 greybus_message_sent +EXPORT_SYMBOL_GPL drivers/greybus/greybus 0x703ea2a0 gb_connection_latency_tag_disable +EXPORT_SYMBOL_GPL drivers/greybus/greybus 0x71558a3e gb_operation_cancel +EXPORT_SYMBOL_GPL drivers/greybus/greybus 0x7234cd8f gb_interface_request_mode_switch +EXPORT_SYMBOL_GPL drivers/greybus/greybus 0x75c9730a __tracepoint_gb_hd_add +EXPORT_SYMBOL_GPL drivers/greybus/greybus 0x764aa392 gb_operation_sync_timeout +EXPORT_SYMBOL_GPL drivers/greybus/greybus 0x79251187 gb_operation_get_payload_size_max +EXPORT_SYMBOL_GPL drivers/greybus/greybus 0x7f8b7457 gb_operation_put +EXPORT_SYMBOL_GPL drivers/greybus/greybus 0x816d01e1 gb_operation_create_flags +EXPORT_SYMBOL_GPL drivers/greybus/greybus 0x8b0c6307 __tracepoint_gb_hd_del +EXPORT_SYMBOL_GPL drivers/greybus/greybus 0xa9cba84d gb_operation_unidirectional_timeout +EXPORT_SYMBOL_GPL drivers/greybus/greybus 0xab167917 gb_connection_latency_tag_enable +EXPORT_SYMBOL_GPL drivers/greybus/greybus 0xb3faabfe gb_connection_disable_forced +EXPORT_SYMBOL_GPL drivers/greybus/greybus 0xb50dcf7c gb_hd_shutdown +EXPORT_SYMBOL_GPL drivers/greybus/greybus 0xb6d1c0ea gb_svc_intf_set_power_mode +EXPORT_SYMBOL_GPL drivers/greybus/greybus 0xba3672fb gb_hd_del +EXPORT_SYMBOL_GPL drivers/greybus/greybus 0xc41b2d26 gb_hd_add +EXPORT_SYMBOL_GPL drivers/greybus/greybus 0xc6e820bd gb_connection_create +EXPORT_SYMBOL_GPL drivers/greybus/greybus 0xcb550b9a gb_operation_request_send_sync_timeout +EXPORT_SYMBOL_GPL drivers/greybus/greybus 0xd6763434 gb_connection_destroy +EXPORT_SYMBOL_GPL drivers/greybus/greybus 0xdc638493 gb_hd_put +EXPORT_SYMBOL_GPL drivers/greybus/greybus 0xf46c4e18 gb_connection_enable_tx +EXPORT_SYMBOL_GPL drivers/greybus/greybus 0xf7420506 gb_hd_create +EXPORT_SYMBOL_GPL drivers/greybus/greybus 0xfcd391a8 __tracepoint_gb_hd_release +EXPORT_SYMBOL_GPL drivers/greybus/greybus 0xff420bd1 gb_hd_cport_release_reserved +EXPORT_SYMBOL_GPL drivers/hid/hid 0x04ed0eaa hid_ignore +EXPORT_SYMBOL_GPL drivers/hid/hid 0x05495392 hid_debug +EXPORT_SYMBOL_GPL drivers/hid/hid 0x08343e1b hid_register_report +EXPORT_SYMBOL_GPL drivers/hid/hid 0x0b0275bd hidinput_connect +EXPORT_SYMBOL_GPL drivers/hid/hid 0x0eeffd81 hidinput_count_leds +EXPORT_SYMBOL_GPL drivers/hid/hid 0x161f8602 hidinput_calc_abs_res +EXPORT_SYMBOL_GPL drivers/hid/hid 0x18544001 hid_compare_device_paths +EXPORT_SYMBOL_GPL drivers/hid/hid 0x196b1f00 hid_debug_event +EXPORT_SYMBOL_GPL drivers/hid/hid 0x19d52f1f hid_quirks_exit +EXPORT_SYMBOL_GPL drivers/hid/hid 0x22c1e02b hid_hw_stop +EXPORT_SYMBOL_GPL drivers/hid/hid 0x348e80a4 hid_hw_start +EXPORT_SYMBOL_GPL drivers/hid/hid 0x355366f4 hid_lookup_quirk +EXPORT_SYMBOL_GPL drivers/hid/hid 0x359375bf hid_dump_device +EXPORT_SYMBOL_GPL drivers/hid/hid 0x42538c59 hidraw_connect +EXPORT_SYMBOL_GPL drivers/hid/hid 0x4a812896 hid_output_report +EXPORT_SYMBOL_GPL drivers/hid/hid 0x4d7eb30c hid_allocate_device +EXPORT_SYMBOL_GPL drivers/hid/hid 0x4df361b8 hid_check_keys_pressed +EXPORT_SYMBOL_GPL drivers/hid/hid 0x5576b2bb hid_resolv_usage +EXPORT_SYMBOL_GPL drivers/hid/hid 0x55afec74 hid_parse_report +EXPORT_SYMBOL_GPL drivers/hid/hid 0x6153b6eb hidraw_report_event +EXPORT_SYMBOL_GPL drivers/hid/hid 0x6207c225 hid_report_raw_event +EXPORT_SYMBOL_GPL drivers/hid/hid 0x66637e96 __hid_register_driver +EXPORT_SYMBOL_GPL drivers/hid/hid 0x72dcbc73 hidinput_find_field +EXPORT_SYMBOL_GPL drivers/hid/hid 0x77aa5ff8 __hid_request +EXPORT_SYMBOL_GPL drivers/hid/hid 0x7d1130e1 hid_validate_values +EXPORT_SYMBOL_GPL drivers/hid/hid 0x860b34a9 hid_alloc_report_buf +EXPORT_SYMBOL_GPL drivers/hid/hid 0x8b13a8b8 hid_snto32 +EXPORT_SYMBOL_GPL drivers/hid/hid 0x8b2d4533 hid_disconnect +EXPORT_SYMBOL_GPL drivers/hid/hid 0x8b9fac7f hid_input_report +EXPORT_SYMBOL_GPL drivers/hid/hid 0x8df8dcbc hidinput_report_event +EXPORT_SYMBOL_GPL drivers/hid/hid 0x98b7af48 hid_destroy_device +EXPORT_SYMBOL_GPL drivers/hid/hid 0x98de9a63 hid_open_report +EXPORT_SYMBOL_GPL drivers/hid/hid 0x9c1c1a27 hidraw_disconnect +EXPORT_SYMBOL_GPL drivers/hid/hid 0x9eb39a6c hid_setup_resolution_multiplier +EXPORT_SYMBOL_GPL drivers/hid/hid 0xa38fd81c hidinput_disconnect +EXPORT_SYMBOL_GPL drivers/hid/hid 0xa54945f5 hid_add_device +EXPORT_SYMBOL_GPL drivers/hid/hid 0xc444f185 hid_dump_field +EXPORT_SYMBOL_GPL drivers/hid/hid 0xca9de2dd hid_dump_report +EXPORT_SYMBOL_GPL drivers/hid/hid 0xce206833 hid_unregister_driver +EXPORT_SYMBOL_GPL drivers/hid/hid 0xce3a0e53 hid_match_device +EXPORT_SYMBOL_GPL drivers/hid/hid 0xcee322c7 hid_connect +EXPORT_SYMBOL_GPL drivers/hid/hid 0xd0938bda hid_dump_input +EXPORT_SYMBOL_GPL drivers/hid/hid 0xd2a015e9 hid_hw_close +EXPORT_SYMBOL_GPL drivers/hid/hid 0xda05dabf hid_set_field +EXPORT_SYMBOL_GPL drivers/hid/hid 0xe4de26a8 hid_hw_open +EXPORT_SYMBOL_GPL drivers/hid/hid 0xf4a63a7b hidinput_get_led_field +EXPORT_SYMBOL_GPL drivers/hid/hid 0xf6ef30fa hid_field_extract +EXPORT_SYMBOL_GPL drivers/hid/hid 0xfa355613 hid_quirks_init +EXPORT_SYMBOL_GPL drivers/hid/hid-roccat 0x18db56c4 roccat_connect +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-common 0x003e1a40 roccat_common2_device_init_struct +EXPORT_SYMBOL_GPL drivers/hid/hid-roccat-common 0x28d66dd3 roccat_common2_send +EXPORT_SYMBOL_GPL drivers/hid/hid-roccat-common 0x61fcbee1 roccat_common2_sysfs_read +EXPORT_SYMBOL_GPL drivers/hid/hid-roccat-common 0x7d862b4c roccat_common2_sysfs_write +EXPORT_SYMBOL_GPL drivers/hid/hid-roccat-common 0xdc0bad60 roccat_common2_receive +EXPORT_SYMBOL_GPL drivers/hid/hid-roccat-common 0xe0371e59 roccat_common2_send_with_status +EXPORT_SYMBOL_GPL drivers/hid/hid-sensor-hub 0x0d31fc77 sensor_hub_input_get_attribute_info +EXPORT_SYMBOL_GPL drivers/hid/hid-sensor-hub 0x46dcfbb0 sensor_hub_device_open +EXPORT_SYMBOL_GPL drivers/hid/hid-sensor-hub 0x750cab8e sensor_hub_get_feature +EXPORT_SYMBOL_GPL drivers/hid/hid-sensor-hub 0x79d9fe70 hid_sensor_get_usage_index +EXPORT_SYMBOL_GPL drivers/hid/hid-sensor-hub 0x839e465b sensor_hub_remove_callback +EXPORT_SYMBOL_GPL drivers/hid/hid-sensor-hub 0xb8b092c4 sensor_hub_set_feature +EXPORT_SYMBOL_GPL drivers/hid/hid-sensor-hub 0xba1cb7fc sensor_hub_device_close +EXPORT_SYMBOL_GPL drivers/hid/hid-sensor-hub 0xdd7593da sensor_hub_input_attr_get_raw_value +EXPORT_SYMBOL_GPL drivers/hid/hid-sensor-hub 0xf833fe70 sensor_hub_register_callback +EXPORT_SYMBOL_GPL drivers/hid/i2c-hid/i2c-hid 0x75ac5014 i2c_hid_ll_driver +EXPORT_SYMBOL_GPL drivers/hid/uhid 0xb092ffcc uhid_hid_driver +EXPORT_SYMBOL_GPL drivers/hid/usbhid/usbhid 0xcb72e1c2 usb_hid_driver +EXPORT_SYMBOL_GPL drivers/hid/usbhid/usbhid 0xcf07ffbb hiddev_hid_event +EXPORT_SYMBOL_GPL drivers/hsi/hsi 0x0525f19a hsi_port_unregister_clients +EXPORT_SYMBOL_GPL drivers/hsi/hsi 0x243b630e hsi_unregister_controller +EXPORT_SYMBOL_GPL drivers/hsi/hsi 0x4ac24057 hsi_register_client_driver +EXPORT_SYMBOL_GPL drivers/hsi/hsi 0x5210a5bf hsi_board_list +EXPORT_SYMBOL_GPL drivers/hsi/hsi 0x60789775 hsi_alloc_controller +EXPORT_SYMBOL_GPL drivers/hsi/hsi 0x6b48b81c hsi_unregister_port_event +EXPORT_SYMBOL_GPL drivers/hsi/hsi 0x72a08952 hsi_alloc_msg +EXPORT_SYMBOL_GPL drivers/hsi/hsi 0x8d26cc76 hsi_new_client +EXPORT_SYMBOL_GPL drivers/hsi/hsi 0x9b72b4cf hsi_release_port +EXPORT_SYMBOL_GPL drivers/hsi/hsi 0xab0f6df0 hsi_async +EXPORT_SYMBOL_GPL drivers/hsi/hsi 0xb067a865 hsi_event +EXPORT_SYMBOL_GPL drivers/hsi/hsi 0xcdb382b1 hsi_free_msg +EXPORT_SYMBOL_GPL drivers/hsi/hsi 0xdc4bc3c5 hsi_claim_port +EXPORT_SYMBOL_GPL drivers/hsi/hsi 0xe2dfff7a hsi_add_clients_from_dt +EXPORT_SYMBOL_GPL drivers/hsi/hsi 0xe847e37a hsi_register_controller +EXPORT_SYMBOL_GPL drivers/hsi/hsi 0xea847d15 hsi_remove_client +EXPORT_SYMBOL_GPL drivers/hsi/hsi 0xfe09cdc7 hsi_get_channel_id_by_name +EXPORT_SYMBOL_GPL drivers/hsi/hsi 0xfe9e7cb6 hsi_register_port_event +EXPORT_SYMBOL_GPL drivers/hsi/hsi 0xff43aea7 hsi_put_controller +EXPORT_SYMBOL_GPL drivers/hwmon/adt7x10 0x2ba31840 adt7x10_probe +EXPORT_SYMBOL_GPL drivers/hwmon/adt7x10 0x5737ca80 adt7x10_dev_pm_ops +EXPORT_SYMBOL_GPL drivers/hwmon/adt7x10 0x88ce993e adt7x10_remove +EXPORT_SYMBOL_GPL drivers/hwmon/ltc2947-core 0x0206e797 ltc2947_pm_ops +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/pmbus/pmbus_core 0x08153b71 pmbus_update_fan +EXPORT_SYMBOL_GPL drivers/hwmon/pmbus/pmbus_core 0x2cad6cb7 pmbus_clear_faults +EXPORT_SYMBOL_GPL drivers/hwmon/pmbus/pmbus_core 0x3e0f008c pmbus_write_byte_data +EXPORT_SYMBOL_GPL drivers/hwmon/pmbus/pmbus_core 0x45c1523b pmbus_do_probe +EXPORT_SYMBOL_GPL drivers/hwmon/pmbus/pmbus_core 0x4e061aee pmbus_get_fan_rate_device +EXPORT_SYMBOL_GPL drivers/hwmon/pmbus/pmbus_core 0x52df7b72 pmbus_get_fan_rate_cached +EXPORT_SYMBOL_GPL drivers/hwmon/pmbus/pmbus_core 0x725286d5 pmbus_read_word_data +EXPORT_SYMBOL_GPL drivers/hwmon/pmbus/pmbus_core 0x822b41a4 pmbus_clear_cache +EXPORT_SYMBOL_GPL drivers/hwmon/pmbus/pmbus_core 0x922f333d pmbus_get_debugfs_dir +EXPORT_SYMBOL_GPL drivers/hwmon/pmbus/pmbus_core 0x98eee8ad pmbus_regulator_ops +EXPORT_SYMBOL_GPL drivers/hwmon/pmbus/pmbus_core 0x9fe6a28e pmbus_write_word_data +EXPORT_SYMBOL_GPL drivers/hwmon/pmbus/pmbus_core 0xa1a01521 pmbus_check_byte_register +EXPORT_SYMBOL_GPL drivers/hwmon/pmbus/pmbus_core 0xb9556138 pmbus_update_byte_data +EXPORT_SYMBOL_GPL drivers/hwmon/pmbus/pmbus_core 0xbaabc70f pmbus_do_remove +EXPORT_SYMBOL_GPL drivers/hwmon/pmbus/pmbus_core 0xbe75f9a4 pmbus_read_byte_data +EXPORT_SYMBOL_GPL drivers/hwmon/pmbus/pmbus_core 0xd5fd8c4e pmbus_check_word_register +EXPORT_SYMBOL_GPL drivers/hwmon/pmbus/pmbus_core 0xe1443f3b pmbus_set_page +EXPORT_SYMBOL_GPL drivers/hwmon/pmbus/pmbus_core 0xf60e0b15 pmbus_write_byte +EXPORT_SYMBOL_GPL drivers/hwmon/pmbus/pmbus_core 0xfec61a13 pmbus_get_driver_info +EXPORT_SYMBOL_GPL drivers/hwtracing/intel_th/intel_th 0x10f7c92e intel_th_trace_enable +EXPORT_SYMBOL_GPL drivers/hwtracing/intel_th/intel_th 0x20b89f11 intel_th_free +EXPORT_SYMBOL_GPL drivers/hwtracing/intel_th/intel_th 0x4c34b526 intel_th_alloc +EXPORT_SYMBOL_GPL drivers/hwtracing/intel_th/intel_th 0x527d013b intel_th_trace_switch +EXPORT_SYMBOL_GPL drivers/hwtracing/intel_th/intel_th 0x8e9f8cf7 intel_th_output_enable +EXPORT_SYMBOL_GPL drivers/hwtracing/intel_th/intel_th 0x8f9315f2 intel_th_driver_register +EXPORT_SYMBOL_GPL drivers/hwtracing/intel_th/intel_th 0xcbd61dd9 intel_th_set_output +EXPORT_SYMBOL_GPL drivers/hwtracing/intel_th/intel_th 0xdb7db5a7 intel_th_trace_disable +EXPORT_SYMBOL_GPL drivers/hwtracing/intel_th/intel_th 0xfe70e551 intel_th_driver_unregister +EXPORT_SYMBOL_GPL drivers/hwtracing/intel_th/intel_th_msu 0x19bfd36b intel_th_msc_window_unlock +EXPORT_SYMBOL_GPL drivers/hwtracing/intel_th/intel_th_msu 0x5e0513ac intel_th_msu_buffer_register +EXPORT_SYMBOL_GPL drivers/hwtracing/intel_th/intel_th_msu 0x9e12d5e0 intel_th_msu_buffer_unregister +EXPORT_SYMBOL_GPL drivers/hwtracing/stm/stm_core 0x02f91e00 stm_source_unregister_device +EXPORT_SYMBOL_GPL drivers/hwtracing/stm/stm_core 0x0a381a1c stm_source_write +EXPORT_SYMBOL_GPL drivers/hwtracing/stm/stm_core 0x194880af stm_data_write +EXPORT_SYMBOL_GPL drivers/hwtracing/stm/stm_core 0x375a415f to_pdrv_policy_node +EXPORT_SYMBOL_GPL drivers/hwtracing/stm/stm_core 0x3ce46ae9 stm_source_register_device +EXPORT_SYMBOL_GPL drivers/hwtracing/stm/stm_core 0x540e47f8 stm_register_device +EXPORT_SYMBOL_GPL drivers/hwtracing/stm/stm_core 0xbfbd6e13 stm_unregister_device +EXPORT_SYMBOL_GPL drivers/hwtracing/stm/stm_core 0xc04b9dc1 stm_register_protocol +EXPORT_SYMBOL_GPL drivers/hwtracing/stm/stm_core 0xd9338d9b stm_unregister_protocol +EXPORT_SYMBOL_GPL drivers/i2c/i2c-mux 0x71f3cd94 i2c_mux_del_adapters +EXPORT_SYMBOL_GPL drivers/i2c/i2c-mux 0x9d343b40 i2c_mux_alloc +EXPORT_SYMBOL_GPL drivers/i2c/i2c-mux 0xbf6a7cb8 i2c_mux_add_adapter +EXPORT_SYMBOL_GPL drivers/i2c/i2c-mux 0xc369aff8 i2c_root_adapter +EXPORT_SYMBOL_GPL drivers/i2c/i2c-smbus 0x72d21fd2 i2c_handle_smbus_alert +EXPORT_SYMBOL_GPL drivers/i2c/i2c-smbus 0x9cef18b7 i2c_register_spd +EXPORT_SYMBOL_GPL drivers/i3c/i3c 0x0a54f033 i3c_generic_ibi_recycle_slot +EXPORT_SYMBOL_GPL drivers/i3c/i3c 0x16654e4a i3c_device_match_id +EXPORT_SYMBOL_GPL drivers/i3c/i3c 0x2765efa9 i3c_device_do_priv_xfers +EXPORT_SYMBOL_GPL drivers/i3c/i3c 0x2c043c38 i3c_master_defslvs_locked +EXPORT_SYMBOL_GPL drivers/i3c/i3c 0x315bc4dc i3c_driver_unregister +EXPORT_SYMBOL_GPL drivers/i3c/i3c 0x576eee9f i3c_generic_ibi_get_free_slot +EXPORT_SYMBOL_GPL drivers/i3c/i3c 0x57fc5629 i3c_master_do_daa +EXPORT_SYMBOL_GPL drivers/i3c/i3c 0x6012fe7c i3c_master_set_info +EXPORT_SYMBOL_GPL drivers/i3c/i3c 0x61a57b8d i3c_master_get_free_addr +EXPORT_SYMBOL_GPL drivers/i3c/i3c 0x68d01f1f i3c_generic_ibi_alloc_pool +EXPORT_SYMBOL_GPL drivers/i3c/i3c 0x76fe3e05 i3c_generic_ibi_free_pool +EXPORT_SYMBOL_GPL drivers/i3c/i3c 0x83d95a9f i3c_device_get_info +EXPORT_SYMBOL_GPL drivers/i3c/i3c 0x88420132 i3c_device_disable_ibi +EXPORT_SYMBOL_GPL drivers/i3c/i3c 0x8ad4b111 i3c_master_add_i3c_dev_locked +EXPORT_SYMBOL_GPL drivers/i3c/i3c 0x9206fa53 i3c_master_disec_locked +EXPORT_SYMBOL_GPL drivers/i3c/i3c 0x9cea333a i3c_master_unregister +EXPORT_SYMBOL_GPL drivers/i3c/i3c 0xa74a659a i3c_master_queue_ibi +EXPORT_SYMBOL_GPL drivers/i3c/i3c 0xb2fb2c4a i3c_master_entdaa_locked +EXPORT_SYMBOL_GPL drivers/i3c/i3c 0xb6d60f93 dev_to_i3cdev +EXPORT_SYMBOL_GPL drivers/i3c/i3c 0xbbe039d9 i3c_device_free_ibi +EXPORT_SYMBOL_GPL drivers/i3c/i3c 0xc5fd8d8e i3c_master_register +EXPORT_SYMBOL_GPL drivers/i3c/i3c 0xd16ae543 i3cdev_to_dev +EXPORT_SYMBOL_GPL drivers/i3c/i3c 0xd5036bbf i3c_master_enec_locked +EXPORT_SYMBOL_GPL drivers/i3c/i3c 0xe5ee5d01 i3c_driver_register_with_owner +EXPORT_SYMBOL_GPL drivers/i3c/i3c 0xeae6b640 i3c_device_request_ibi +EXPORT_SYMBOL_GPL drivers/i3c/i3c 0xf91792a1 i3c_device_enable_ibi +EXPORT_SYMBOL_GPL drivers/iio/accel/adxl372 0x692445fb adxl372_readable_noinc_reg +EXPORT_SYMBOL_GPL drivers/iio/accel/adxl372 0xf68e67bd adxl372_probe +EXPORT_SYMBOL_GPL drivers/iio/accel/bmc150-accel-core 0x47dfcbb4 bmc150_accel_pm_ops +EXPORT_SYMBOL_GPL drivers/iio/accel/bmc150-accel-core 0x5e7019a2 bmc150_regmap_conf +EXPORT_SYMBOL_GPL drivers/iio/accel/bmc150-accel-core 0x7ce60e75 bmc150_accel_core_probe +EXPORT_SYMBOL_GPL drivers/iio/accel/bmc150-accel-core 0xa17d4eed bmc150_accel_core_remove +EXPORT_SYMBOL_GPL drivers/iio/accel/mma7455_core 0x24a22176 mma7455_core_probe +EXPORT_SYMBOL_GPL drivers/iio/accel/mma7455_core 0x2bc464a8 mma7455_core_regmap +EXPORT_SYMBOL_GPL drivers/iio/accel/mma7455_core 0xcd705420 mma7455_core_remove +EXPORT_SYMBOL_GPL drivers/iio/adc/ad7091r-base 0xf2e02cd6 ad7091r_probe +EXPORT_SYMBOL_GPL drivers/iio/adc/ad7091r-base 0xf9720a35 ad7091r_regmap_config +EXPORT_SYMBOL_GPL drivers/iio/adc/ad7606 0x4e2771d8 ad7606_probe +EXPORT_SYMBOL_GPL drivers/iio/adc/ad7606 0x5ae86d40 ad7606_pm_ops +EXPORT_SYMBOL_GPL drivers/iio/adc/ad_sigma_delta 0x1d5e4638 ad_sd_init +EXPORT_SYMBOL_GPL drivers/iio/adc/ad_sigma_delta 0x29ca2681 ad_sd_calibrate +EXPORT_SYMBOL_GPL drivers/iio/adc/ad_sigma_delta 0x629f67f5 ad_sd_set_comm +EXPORT_SYMBOL_GPL drivers/iio/adc/ad_sigma_delta 0x6dca9d20 ad_sd_cleanup_buffer_and_trigger +EXPORT_SYMBOL_GPL drivers/iio/adc/ad_sigma_delta 0xc0100d3f ad_sd_calibrate_all +EXPORT_SYMBOL_GPL drivers/iio/adc/ad_sigma_delta 0xc4728e35 ad_sd_reset +EXPORT_SYMBOL_GPL drivers/iio/adc/ad_sigma_delta 0xce6eecf7 ad_sd_validate_trigger +EXPORT_SYMBOL_GPL drivers/iio/adc/ad_sigma_delta 0xd20dcbdd ad_sigma_delta_single_conversion +EXPORT_SYMBOL_GPL drivers/iio/adc/ad_sigma_delta 0xd8d79955 ad_sd_read_reg +EXPORT_SYMBOL_GPL drivers/iio/adc/ad_sigma_delta 0xdb406df0 ad_sd_setup_buffer_and_trigger +EXPORT_SYMBOL_GPL drivers/iio/adc/ad_sigma_delta 0xed095173 ad_sd_write_reg +EXPORT_SYMBOL_GPL drivers/iio/adc/adi-axi-adc 0x3e62f259 devm_adi_axi_adc_conv_register +EXPORT_SYMBOL_GPL drivers/iio/adc/adi-axi-adc 0xa82594dd adi_axi_adc_conv_priv +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 0x7a711aef iio_channel_start_all_cb +EXPORT_SYMBOL_GPL drivers/iio/buffer/industrialio-buffer-cb 0xb0009008 iio_channel_cb_get_channels +EXPORT_SYMBOL_GPL drivers/iio/buffer/industrialio-buffer-cb 0xb2a006e6 iio_channel_cb_get_iio_dev +EXPORT_SYMBOL_GPL drivers/iio/buffer/industrialio-buffer-cb 0xb2c87bdb iio_channel_get_all_cb +EXPORT_SYMBOL_GPL drivers/iio/buffer/industrialio-buffer-cb 0xfff2647d iio_channel_cb_set_buffer_watermark +EXPORT_SYMBOL_GPL drivers/iio/buffer/industrialio-buffer-dma 0x021abd00 iio_dma_buffer_block_list_abort +EXPORT_SYMBOL_GPL drivers/iio/buffer/industrialio-buffer-dma 0x169b8502 iio_dma_buffer_disable +EXPORT_SYMBOL_GPL drivers/iio/buffer/industrialio-buffer-dma 0x2dd89407 iio_dma_buffer_set_bytes_per_datum +EXPORT_SYMBOL_GPL drivers/iio/buffer/industrialio-buffer-dma 0x53a4817d iio_dma_buffer_block_done +EXPORT_SYMBOL_GPL drivers/iio/buffer/industrialio-buffer-dma 0x65f6297c iio_dma_buffer_request_update +EXPORT_SYMBOL_GPL drivers/iio/buffer/industrialio-buffer-dma 0x7e4862cb iio_dma_buffer_set_length +EXPORT_SYMBOL_GPL drivers/iio/buffer/industrialio-buffer-dma 0x87d3e8bb iio_dma_buffer_data_available +EXPORT_SYMBOL_GPL drivers/iio/buffer/industrialio-buffer-dma 0xa0c737ce iio_dma_buffer_read +EXPORT_SYMBOL_GPL drivers/iio/buffer/industrialio-buffer-dma 0xa560da31 iio_dma_buffer_init +EXPORT_SYMBOL_GPL drivers/iio/buffer/industrialio-buffer-dma 0xd6898749 iio_dma_buffer_release +EXPORT_SYMBOL_GPL drivers/iio/buffer/industrialio-buffer-dma 0xeb89c098 iio_dma_buffer_exit +EXPORT_SYMBOL_GPL drivers/iio/buffer/industrialio-buffer-dma 0xfb0f1da2 iio_dma_buffer_enable +EXPORT_SYMBOL_GPL drivers/iio/buffer/industrialio-buffer-dmaengine 0xaa61fa59 iio_dmaengine_buffer_free +EXPORT_SYMBOL_GPL drivers/iio/buffer/industrialio-buffer-dmaengine 0xf4f3b470 devm_iio_dmaengine_buffer_alloc +EXPORT_SYMBOL_GPL drivers/iio/buffer/industrialio-hw-consumer 0x08d2b4ff devm_iio_hw_consumer_alloc +EXPORT_SYMBOL_GPL drivers/iio/buffer/industrialio-hw-consumer 0x3391543d iio_hw_consumer_disable +EXPORT_SYMBOL_GPL drivers/iio/buffer/industrialio-hw-consumer 0x5977e36a 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-triggered-buffer 0x68dfe163 devm_iio_triggered_buffer_setup +EXPORT_SYMBOL_GPL drivers/iio/chemical/bme680_core 0x476aecb8 bme680_core_probe +EXPORT_SYMBOL_GPL drivers/iio/common/cros_ec_sensors/cros_ec_sensors_core 0x19344ce3 cros_ec_sensors_read_lpc +EXPORT_SYMBOL_GPL drivers/iio/common/cros_ec_sensors/cros_ec_sensors_core 0x231de574 cros_ec_sensors_ext_info +EXPORT_SYMBOL_GPL drivers/iio/common/cros_ec_sensors/cros_ec_sensors_core 0x621649fc cros_ec_sensor_fifo_attributes +EXPORT_SYMBOL_GPL drivers/iio/common/cros_ec_sensors/cros_ec_sensors_core 0x6562788a cros_ec_motion_send_host_cmd +EXPORT_SYMBOL_GPL drivers/iio/common/cros_ec_sensors/cros_ec_sensors_core 0x7f85d318 cros_ec_sensors_core_init +EXPORT_SYMBOL_GPL drivers/iio/common/cros_ec_sensors/cros_ec_sensors_core 0x8bad12ec cros_ec_sensors_read_cmd +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 0x9b2afb5c cros_ec_sensors_core_read +EXPORT_SYMBOL_GPL drivers/iio/common/cros_ec_sensors/cros_ec_sensors_core 0xb167c9ee cros_ec_sensors_core_write +EXPORT_SYMBOL_GPL drivers/iio/common/cros_ec_sensors/cros_ec_sensors_core 0xe9dc339b cros_ec_sensors_push_data +EXPORT_SYMBOL_GPL drivers/iio/common/cros_ec_sensors/cros_ec_sensors_core 0xf5966ac2 cros_ec_sensors_core_read_avail +EXPORT_SYMBOL_GPL drivers/iio/dac/ad5592r-base 0x49c09e37 ad5592r_probe +EXPORT_SYMBOL_GPL drivers/iio/dac/ad5592r-base 0xe05b79ad ad5592r_remove +EXPORT_SYMBOL_GPL drivers/iio/dac/ad5686 0x3bb18cda ad5686_remove +EXPORT_SYMBOL_GPL drivers/iio/dac/ad5686 0xc0fb662a ad5686_probe +EXPORT_SYMBOL_GPL drivers/iio/gyro/bmg160_core 0x13ae8f98 bmg160_core_remove +EXPORT_SYMBOL_GPL drivers/iio/gyro/bmg160_core 0x26a85acc bmg160_pm_ops +EXPORT_SYMBOL_GPL drivers/iio/gyro/bmg160_core 0x89c315ab bmg160_core_probe +EXPORT_SYMBOL_GPL drivers/iio/gyro/fxas21002c_core 0x1669075c fxas21002c_pm_ops +EXPORT_SYMBOL_GPL drivers/iio/gyro/fxas21002c_core 0x74e2d7ae fxas21002c_core_remove +EXPORT_SYMBOL_GPL drivers/iio/gyro/fxas21002c_core 0xe1cfd344 fxas21002c_core_probe +EXPORT_SYMBOL_GPL drivers/iio/imu/adis_lib 0x1e0268c3 adis_remove_trigger +EXPORT_SYMBOL_GPL drivers/iio/imu/adis_lib 0x2b8fc234 adis_update_scan_mode +EXPORT_SYMBOL_GPL drivers/iio/imu/adis_lib 0x2f445dda adis_cleanup_buffer_and_trigger +EXPORT_SYMBOL_GPL drivers/iio/imu/adis_lib 0x3da72b11 adis_init +EXPORT_SYMBOL_GPL drivers/iio/imu/adis_lib 0x45c19fcd __adis_initial_startup +EXPORT_SYMBOL_GPL drivers/iio/imu/adis_lib 0x4ea12f7b __adis_read_reg +EXPORT_SYMBOL_GPL drivers/iio/imu/adis_lib 0x56502267 devm_adis_probe_trigger +EXPORT_SYMBOL_GPL drivers/iio/imu/adis_lib 0x5d5b173f __adis_write_reg +EXPORT_SYMBOL_GPL drivers/iio/imu/adis_lib 0x88ecfc5e adis_single_conversion +EXPORT_SYMBOL_GPL drivers/iio/imu/adis_lib 0x954f6a8e devm_adis_setup_buffer_and_trigger +EXPORT_SYMBOL_GPL drivers/iio/imu/adis_lib 0xc06e9906 adis_setup_buffer_and_trigger +EXPORT_SYMBOL_GPL drivers/iio/imu/adis_lib 0xd205b22e __adis_reset +EXPORT_SYMBOL_GPL drivers/iio/imu/adis_lib 0xf3b462b5 adis_probe_trigger +EXPORT_SYMBOL_GPL drivers/iio/imu/adis_lib 0xf7d0ac92 __adis_check_status +EXPORT_SYMBOL_GPL drivers/iio/imu/adis_lib 0xf8be9721 __adis_update_bits_base +EXPORT_SYMBOL_GPL drivers/iio/imu/bmi160/bmi160_core 0x0d8b555f bmi160_core_probe +EXPORT_SYMBOL_GPL drivers/iio/imu/fxos8700_core 0xab3fd5ec fxos8700_core_probe +EXPORT_SYMBOL_GPL drivers/iio/imu/inv_mpu6050/inv-mpu6050 0x5a313dd0 inv_mpu_core_probe +EXPORT_SYMBOL_GPL drivers/iio/imu/inv_mpu6050/inv-mpu6050 0xebc9a2b2 inv_mpu_pmops +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x07f3b1c9 iio_push_to_buffers +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x0af74ac4 iio_read_channel_ext_info +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x1146180e iio_convert_raw_to_processed +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x1d64602e iio_read_channel_average_raw +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x1e200d13 iio_buffer_set_attrs +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x1e6fb40f iio_read_avail_channel_attribute +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x20ce344a iio_format_value +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x26f6b499 iio_str_to_fixpoint +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x2edcbeee iio_read_channel_processed +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x33d87096 iio_device_release_direct_mode +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x3b50b39c iio_device_attach_buffer +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x403aa7b3 iio_channel_get_all +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x5e20e671 devm_iio_channel_get +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x5ecd5639 iio_dealloc_pollfunc +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x62cd4468 iio_channel_release +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x6947da36 iio_write_channel_ext_info +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x69aaf0c4 iio_read_avail_channel_raw +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x6a629ba6 iio_write_channel_attribute +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x6d07b8f8 iio_show_mount_matrix +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x71d19d30 iio_buffer_get +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x74304ea1 __devm_iio_trigger_register +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x7bdabf5d iio_read_channel_scale +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x820947b5 iio_read_channel_offset +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x847b5ba9 __devm_iio_device_register +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x8601ebaf iio_enum_write +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x92146f8f iio_read_channel_raw +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x971f37fa iio_write_channel_raw +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x9d5a047b iio_read_max_channel_raw +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x9e710da1 iio_channel_get +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0xa2625717 iio_device_claim_direct_mode +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0xa555eb0f iio_buffer_put +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0xb9787b14 iio_map_array_register +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0xc15dd9b4 iio_enum_available_read +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0xd0b3bd1f iio_alloc_pollfunc +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0xd797bf8a devm_iio_device_alloc +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0xdcc0bbd0 iio_read_channel_attribute +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0xdf75c940 iio_get_channel_type +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0xe4b04b12 devm_iio_channel_get_all +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0xe6ecb675 iio_update_buffers +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0xeb60b6ce iio_validate_scan_mask_onehot +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0xed2a06f4 iio_channel_release_all +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0xf00909a3 iio_map_array_unregister +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0xf4d3456a iio_enum_read +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0xf7709035 iio_get_channel_ext_info_count +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0xffc65d89 devm_iio_trigger_alloc +EXPORT_SYMBOL_GPL drivers/iio/magnetometer/rm3100-core 0x01191fa0 rm3100_common_probe +EXPORT_SYMBOL_GPL drivers/iio/magnetometer/rm3100-core 0x0a1424e0 rm3100_volatile_table +EXPORT_SYMBOL_GPL drivers/iio/magnetometer/rm3100-core 0xaa911f08 rm3100_readable_table +EXPORT_SYMBOL_GPL drivers/iio/magnetometer/rm3100-core 0xcc7209be rm3100_writable_table +EXPORT_SYMBOL_GPL drivers/iio/pressure/mpl115 0xdb14fd84 mpl115_probe +EXPORT_SYMBOL_GPL drivers/iio/pressure/zpa2326 0x1cb8b50b zpa2326_remove +EXPORT_SYMBOL_GPL drivers/iio/pressure/zpa2326 0x2c11c52b zpa2326_isreg_readable +EXPORT_SYMBOL_GPL drivers/iio/pressure/zpa2326 0x3cc08de9 zpa2326_isreg_precious +EXPORT_SYMBOL_GPL drivers/iio/pressure/zpa2326 0x4b93a6d1 zpa2326_isreg_writeable +EXPORT_SYMBOL_GPL drivers/iio/pressure/zpa2326 0xa738e511 zpa2326_probe +EXPORT_SYMBOL_GPL drivers/iio/pressure/zpa2326 0xe5a4aafa zpa2326_pm_ops +EXPORT_SYMBOL_GPL drivers/infiniband/core/ib_core 0xdbd019c4 ib_wq +EXPORT_SYMBOL_GPL drivers/infiniband/ulp/rtrs/rtrs-core 0x215477f6 rtrs_iu_post_rdma_write_imm +EXPORT_SYMBOL_GPL drivers/infiniband/ulp/rtrs/rtrs-core 0x27b09878 rtrs_stop_hb +EXPORT_SYMBOL_GPL drivers/infiniband/ulp/rtrs/rtrs-core 0x3746373e rtrs_post_recv_empty +EXPORT_SYMBOL_GPL drivers/infiniband/ulp/rtrs/rtrs-core 0x374f265a rtrs_cq_qp_create +EXPORT_SYMBOL_GPL drivers/infiniband/ulp/rtrs/rtrs-core 0x3f786173 rtrs_send_hb_ack +EXPORT_SYMBOL_GPL drivers/infiniband/ulp/rtrs/rtrs-core 0x5c3c226e rtrs_iu_free +EXPORT_SYMBOL_GPL drivers/infiniband/ulp/rtrs/rtrs-core 0x5eab4f3f rtrs_init_hb +EXPORT_SYMBOL_GPL drivers/infiniband/ulp/rtrs/rtrs-core 0x93d35479 rtrs_iu_alloc +EXPORT_SYMBOL_GPL drivers/infiniband/ulp/rtrs/rtrs-core 0xa787248a rtrs_iu_post_send +EXPORT_SYMBOL_GPL drivers/infiniband/ulp/rtrs/rtrs-core 0xc2a06fd8 rtrs_iu_post_recv +EXPORT_SYMBOL_GPL drivers/infiniband/ulp/rtrs/rtrs-core 0xd55b10e2 rtrs_start_hb +EXPORT_SYMBOL_GPL drivers/infiniband/ulp/rtrs/rtrs-core 0xf161245a rtrs_cq_qp_destroy +EXPORT_SYMBOL_GPL drivers/infiniband/ulp/rtrs/rtrs-core 0xf237df68 rtrs_post_rdma_write_imm_empty +EXPORT_SYMBOL_GPL drivers/input/ff-memless 0x60869895 input_ff_create_memless +EXPORT_SYMBOL_GPL drivers/input/matrix-keymap 0xab9c89fe matrix_keypad_parse_properties +EXPORT_SYMBOL_GPL drivers/input/misc/adxl34x 0x49a4fcbd adxl34x_remove +EXPORT_SYMBOL_GPL drivers/input/misc/adxl34x 0x66535a18 adxl34x_suspend +EXPORT_SYMBOL_GPL drivers/input/misc/adxl34x 0x87eebea8 adxl34x_probe +EXPORT_SYMBOL_GPL drivers/input/misc/adxl34x 0xe4586827 adxl34x_resume +EXPORT_SYMBOL_GPL drivers/input/rmi4/rmi_core 0x01c3f461 rmi_2d_sensor_of_probe +EXPORT_SYMBOL_GPL drivers/input/rmi4/rmi_core 0x0cb8ff31 rmi_register_transport_device +EXPORT_SYMBOL_GPL drivers/input/rmi4/rmi_core 0x1f3d69b6 rmi_2d_sensor_rel_report +EXPORT_SYMBOL_GPL drivers/input/rmi4/rmi_core 0x30302543 rmi_driver_suspend +EXPORT_SYMBOL_GPL drivers/input/rmi4/rmi_core 0x3a40fff8 rmi_2d_sensor_abs_report +EXPORT_SYMBOL_GPL drivers/input/rmi4/rmi_core 0x4613c4d8 rmi_2d_sensor_abs_process +EXPORT_SYMBOL_GPL drivers/input/rmi4/rmi_core 0x6a45aee2 rmi_set_attn_data +EXPORT_SYMBOL_GPL drivers/input/rmi4/rmi_core 0x7812b1cb rmi_driver_resume +EXPORT_SYMBOL_GPL drivers/input/rmi4/rmi_core 0x7e26097f rmi_2d_sensor_configure_input +EXPORT_SYMBOL_GPL drivers/input/rmi4/rmi_core 0x90f3eb88 rmi_unregister_function_handler +EXPORT_SYMBOL_GPL drivers/input/rmi4/rmi_core 0xb6a9d72e __rmi_register_function_handler +EXPORT_SYMBOL_GPL drivers/input/rmi4/rmi_core 0xb9e844b0 rmi_dbg +EXPORT_SYMBOL_GPL drivers/input/rmi4/rmi_core 0xd6a1f49f rmi_of_property_read_u32 +EXPORT_SYMBOL_GPL drivers/input/touchscreen/cyttsp4_core 0x0fd63805 cyttsp4_remove +EXPORT_SYMBOL_GPL drivers/input/touchscreen/cyttsp4_core 0x496d7e1c cyttsp4_pm_ops +EXPORT_SYMBOL_GPL drivers/input/touchscreen/cyttsp4_core 0xda397124 cyttsp4_probe +EXPORT_SYMBOL_GPL drivers/input/touchscreen/cyttsp_core 0x686f624a cyttsp_probe +EXPORT_SYMBOL_GPL drivers/input/touchscreen/cyttsp_core 0xe59061ba cyttsp_pm_ops +EXPORT_SYMBOL_GPL drivers/input/touchscreen/cyttsp_i2c_common 0x1e160fa7 cyttsp_i2c_write_block_data +EXPORT_SYMBOL_GPL drivers/input/touchscreen/cyttsp_i2c_common 0x630cffbd cyttsp_i2c_read_block_data +EXPORT_SYMBOL_GPL drivers/input/touchscreen/tsc200x-core 0x59e31e2b tsc200x_regmap_config +EXPORT_SYMBOL_GPL drivers/input/touchscreen/tsc200x-core 0x9f859a5e tsc200x_probe +EXPORT_SYMBOL_GPL drivers/input/touchscreen/tsc200x-core 0xa8e86578 tsc200x_remove +EXPORT_SYMBOL_GPL drivers/input/touchscreen/tsc200x-core 0xd3d0f1f0 tsc200x_pm_ops +EXPORT_SYMBOL_GPL drivers/input/touchscreen/wm97xx-ts 0x058d457a wm9712_codec +EXPORT_SYMBOL_GPL drivers/input/touchscreen/wm97xx-ts 0x08f273f8 wm97xx_unregister_mach_ops +EXPORT_SYMBOL_GPL drivers/input/touchscreen/wm97xx-ts 0x16eeffb8 wm97xx_reg_write +EXPORT_SYMBOL_GPL drivers/input/touchscreen/wm97xx-ts 0x18335820 wm9705_codec +EXPORT_SYMBOL_GPL drivers/input/touchscreen/wm97xx-ts 0x3a191fbf wm97xx_reg_read +EXPORT_SYMBOL_GPL drivers/input/touchscreen/wm97xx-ts 0x4af71f3b wm97xx_set_gpio +EXPORT_SYMBOL_GPL drivers/input/touchscreen/wm97xx-ts 0x5481992e wm97xx_set_suspend_mode +EXPORT_SYMBOL_GPL drivers/input/touchscreen/wm97xx-ts 0x590878ad wm97xx_register_mach_ops +EXPORT_SYMBOL_GPL drivers/input/touchscreen/wm97xx-ts 0x6d0affdc wm97xx_read_aux_adc +EXPORT_SYMBOL_GPL drivers/input/touchscreen/wm97xx-ts 0xc92745e4 wm9713_codec +EXPORT_SYMBOL_GPL drivers/input/touchscreen/wm97xx-ts 0xcf60a5b9 wm97xx_config_gpio +EXPORT_SYMBOL_GPL drivers/input/touchscreen/wm97xx-ts 0xedbc4bc5 wm97xx_get_gpio +EXPORT_SYMBOL_GPL drivers/interconnect/qcom/icc-smd-rpm 0x81e513ad qcom_icc_rpm_smd_available +EXPORT_SYMBOL_GPL drivers/interconnect/qcom/icc-smd-rpm 0xe8dbdc6c qcom_icc_rpm_smd_send +EXPORT_SYMBOL_GPL drivers/ipack/ipack 0x2ee5a5c4 ipack_driver_register +EXPORT_SYMBOL_GPL drivers/ipack/ipack 0x3434b719 ipack_get_device +EXPORT_SYMBOL_GPL drivers/ipack/ipack 0x443e5f4b ipack_driver_unregister +EXPORT_SYMBOL_GPL drivers/ipack/ipack 0x5482886b ipack_put_device +EXPORT_SYMBOL_GPL drivers/ipack/ipack 0x5740edf7 ipack_bus_unregister +EXPORT_SYMBOL_GPL drivers/ipack/ipack 0x75434671 ipack_bus_register +EXPORT_SYMBOL_GPL drivers/ipack/ipack 0xc0d7eceb ipack_device_add +EXPORT_SYMBOL_GPL drivers/ipack/ipack 0xed94ab97 ipack_device_del +EXPORT_SYMBOL_GPL drivers/ipack/ipack 0xff8df990 ipack_device_init +EXPORT_SYMBOL_GPL drivers/leds/led-class-flash 0x83ab9f6d devm_led_classdev_flash_register_ext +EXPORT_SYMBOL_GPL drivers/leds/led-class-flash 0x90e31152 led_set_flash_brightness +EXPORT_SYMBOL_GPL drivers/leds/led-class-flash 0x92a44d45 devm_led_classdev_flash_unregister +EXPORT_SYMBOL_GPL drivers/leds/led-class-flash 0xa42018f2 led_classdev_flash_register_ext +EXPORT_SYMBOL_GPL drivers/leds/led-class-flash 0xb6ae59a2 led_classdev_flash_unregister +EXPORT_SYMBOL_GPL drivers/leds/led-class-flash 0xcaef0d11 led_get_flash_fault +EXPORT_SYMBOL_GPL drivers/leds/led-class-flash 0xd14b0d6e led_update_flash_brightness +EXPORT_SYMBOL_GPL drivers/leds/led-class-flash 0xf93671c2 led_set_flash_timeout +EXPORT_SYMBOL_GPL drivers/leds/leds-lp55xx-common 0x015c0f96 lp55xx_of_populate_pdata +EXPORT_SYMBOL_GPL drivers/leds/leds-lp55xx-common 0x07c730b7 lp55xx_is_extclk_used +EXPORT_SYMBOL_GPL drivers/leds/leds-lp55xx-common 0x2bef0c5e lp55xx_read +EXPORT_SYMBOL_GPL drivers/leds/leds-lp55xx-common 0x4c76aff0 lp55xx_init_device +EXPORT_SYMBOL_GPL drivers/leds/leds-lp55xx-common 0x6bea0f38 lp55xx_unregister_leds +EXPORT_SYMBOL_GPL drivers/leds/leds-lp55xx-common 0x85872d42 lp55xx_unregister_sysfs +EXPORT_SYMBOL_GPL drivers/leds/leds-lp55xx-common 0xa6f3210b lp55xx_write +EXPORT_SYMBOL_GPL drivers/leds/leds-lp55xx-common 0xb24f5efb lp55xx_deinit_device +EXPORT_SYMBOL_GPL drivers/leds/leds-lp55xx-common 0xc48e0e42 lp55xx_register_leds +EXPORT_SYMBOL_GPL drivers/leds/leds-lp55xx-common 0xd6a6fc3c lp55xx_register_sysfs +EXPORT_SYMBOL_GPL drivers/leds/leds-lp55xx-common 0xfe13ec25 lp55xx_update_bits +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 0x00af95a1 __tracepoint_bcache_btree_set_root +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0x06d94b0a __tracepoint_bcache_gc_start +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0x157aa73e __tracepoint_bcache_gc_copy +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0x19a50641 __tracepoint_bcache_journal_full +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0x19acd14e __tracepoint_bcache_journal_entry_full +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0x1e382318 __tracepoint_bcache_btree_node_split +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0x24935482 __tracepoint_bcache_bypass_sequential +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0x28991160 __tracepoint_bcache_read_retry +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0x29ef0066 __tracepoint_bcache_btree_gc_coalesce +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0x2cd1be34 __tracepoint_bcache_request_start +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0x3ae1afd1 __tracepoint_bcache_journal_write +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0x4f0216b8 __tracepoint_bcache_btree_node_compact +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0x56bd5947 __tracepoint_bcache_gc_copy_collision +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0x5cb0a24a __tracepoint_bcache_bypass_congested +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0x65835607 __tracepoint_bcache_btree_write +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0x68b2f180 __tracepoint_bcache_btree_cache_cannibalize +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0x7baca7fe __tracepoint_bcache_btree_read +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0x95286aa1 __tracepoint_bcache_invalidate +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0x9cedcd57 __tracepoint_bcache_alloc_fail +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0xa60fcee9 __tracepoint_bcache_read +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0xafae4e81 __tracepoint_bcache_btree_node_alloc_fail +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0xb4b03b2e __tracepoint_bcache_request_end +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0xb7500cb5 __tracepoint_bcache_gc_end +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0xc1fd1dbc __tracepoint_bcache_btree_insert_key +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0xd4cd3c1a __tracepoint_bcache_writeback +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0xe278bd6d __tracepoint_bcache_cache_insert +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0xe68d70a9 __tracepoint_bcache_write +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0xee926d8f __tracepoint_bcache_writeback_collision +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0xf30b9aa6 __tracepoint_bcache_journal_replay_key +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0xf438022f __tracepoint_bcache_btree_node_alloc +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0xfbd03183 __tracepoint_bcache_btree_node_free +EXPORT_SYMBOL_GPL drivers/md/dm-bio-prison 0x020c9c41 dm_cell_lock_promote_v2 +EXPORT_SYMBOL_GPL drivers/md/dm-bio-prison 0x04873773 dm_cell_put_v2 +EXPORT_SYMBOL_GPL drivers/md/dm-bio-prison 0x17dd39d6 dm_deferred_set_create +EXPORT_SYMBOL_GPL drivers/md/dm-bio-prison 0x1a4fad04 dm_bio_detain +EXPORT_SYMBOL_GPL drivers/md/dm-bio-prison 0x2eb01e04 dm_deferred_set_destroy +EXPORT_SYMBOL_GPL drivers/md/dm-bio-prison 0x3a488a02 dm_cell_quiesce_v2 +EXPORT_SYMBOL_GPL drivers/md/dm-bio-prison 0x5bbbedf5 dm_cell_visit_release +EXPORT_SYMBOL_GPL drivers/md/dm-bio-prison 0x5ea8755a dm_cell_release +EXPORT_SYMBOL_GPL drivers/md/dm-bio-prison 0x6008a3ef dm_cell_error +EXPORT_SYMBOL_GPL drivers/md/dm-bio-prison 0x6791a44e dm_deferred_entry_dec +EXPORT_SYMBOL_GPL drivers/md/dm-bio-prison 0x6c97b575 dm_cell_unlock_v2 +EXPORT_SYMBOL_GPL drivers/md/dm-bio-prison 0x753e20b2 dm_bio_prison_create +EXPORT_SYMBOL_GPL drivers/md/dm-bio-prison 0x92497947 dm_cell_release_no_holder +EXPORT_SYMBOL_GPL drivers/md/dm-bio-prison 0x92db9fc9 dm_get_cell +EXPORT_SYMBOL_GPL drivers/md/dm-bio-prison 0xa87b72e3 dm_cell_promote_or_release +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 0xb88600fc dm_cell_get_v2 +EXPORT_SYMBOL_GPL drivers/md/dm-bio-prison 0xb9879d88 dm_cell_lock_v2 +EXPORT_SYMBOL_GPL drivers/md/dm-bio-prison 0xca2e3a88 dm_deferred_entry_inc +EXPORT_SYMBOL_GPL drivers/md/dm-bio-prison 0xd99e003d dm_bio_prison_create_v2 +EXPORT_SYMBOL_GPL drivers/md/dm-bio-prison 0xdc5ac12f dm_bio_prison_alloc_cell +EXPORT_SYMBOL_GPL drivers/md/dm-bio-prison 0xdc97cfb5 dm_bio_prison_free_cell_v2 +EXPORT_SYMBOL_GPL drivers/md/dm-bio-prison 0xe5c5b81f dm_bio_prison_alloc_cell_v2 +EXPORT_SYMBOL_GPL drivers/md/dm-bio-prison 0xf1f9d213 dm_bio_prison_free_cell +EXPORT_SYMBOL_GPL drivers/md/dm-bufio 0x0ad0dc4f dm_bufio_mark_buffer_dirty +EXPORT_SYMBOL_GPL drivers/md/dm-bufio 0x111ab12a dm_bufio_mark_partial_buffer_dirty +EXPORT_SYMBOL_GPL drivers/md/dm-bufio 0x1b1b9b93 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 0x6aebce95 dm_bufio_issue_discard +EXPORT_SYMBOL_GPL drivers/md/dm-bufio 0x6d3f57bd dm_bufio_get_client +EXPORT_SYMBOL_GPL drivers/md/dm-bufio 0x72f07bf4 dm_bufio_set_minimum_buffers +EXPORT_SYMBOL_GPL drivers/md/dm-bufio 0x74dcd98c dm_bufio_get_aux_data +EXPORT_SYMBOL_GPL drivers/md/dm-bufio 0x7c381a76 dm_bufio_get_block_size +EXPORT_SYMBOL_GPL drivers/md/dm-bufio 0x867e87eb dm_bufio_get_dm_io_client +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 0xb2438d54 dm_bufio_release_move +EXPORT_SYMBOL_GPL drivers/md/dm-bufio 0xc0d7df85 dm_bufio_new +EXPORT_SYMBOL_GPL drivers/md/dm-bufio 0xc90df7e5 dm_bufio_prefetch +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 0x03bb93e0 dm_cache_policy_get_name +EXPORT_SYMBOL_GPL drivers/md/dm-cache 0x0d873cb8 dm_cache_policy_unregister +EXPORT_SYMBOL_GPL drivers/md/dm-cache 0x0efbca4c btracker_promotion_already_present +EXPORT_SYMBOL_GPL drivers/md/dm-cache 0x408c30a9 dm_cache_policy_register +EXPORT_SYMBOL_GPL drivers/md/dm-cache 0x5730f8ae dm_cache_policy_create +EXPORT_SYMBOL_GPL drivers/md/dm-cache 0x5adc2807 btracker_destroy +EXPORT_SYMBOL_GPL drivers/md/dm-cache 0x5b3dc349 dm_cache_policy_get_version +EXPORT_SYMBOL_GPL drivers/md/dm-cache 0x5de611a9 btracker_nr_writebacks_queued +EXPORT_SYMBOL_GPL drivers/md/dm-cache 0x87bee547 btracker_queue +EXPORT_SYMBOL_GPL drivers/md/dm-cache 0x8f647e48 dm_cache_policy_get_hint_size +EXPORT_SYMBOL_GPL drivers/md/dm-cache 0x90136207 dm_cache_policy_destroy +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 0xbf1a2968 btracker_create +EXPORT_SYMBOL_GPL drivers/md/dm-cache 0xccfe6409 btracker_nr_demotions_queued +EXPORT_SYMBOL_GPL drivers/md/dm-multipath 0xc4156947 dm_unregister_path_selector +EXPORT_SYMBOL_GPL drivers/md/dm-multipath 0xea7fbbe4 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 0x2b0090ac 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 0x57e16c3e dm_rh_get_state +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 0x90a545e4 dm_rh_bio_to_region +EXPORT_SYMBOL_GPL drivers/md/dm-region-hash 0x9ffd96c7 dm_region_hash_create +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 0xd4fb5a49 dm_rh_dirty_log +EXPORT_SYMBOL_GPL drivers/md/dm-region-hash 0xd8aa4284 dm_rh_region_context +EXPORT_SYMBOL_GPL drivers/md/dm-region-hash 0xdd11af95 dm_rh_mark_nosync +EXPORT_SYMBOL_GPL drivers/md/dm-region-hash 0xf1ab1b6d 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 0x09cc81fa dm_btree_cursor_skip +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x0a7e77f3 dm_btree_cursor_end +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x0b25f6bc dm_array_resize +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x0b36102c dm_array_empty +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x0be67537 dm_btree_walk +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x0e198232 dm_btree_insert +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x10e6ccea dm_bitset_clear_bit +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x16af9071 dm_array_set_value +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x1e3f728d dm_block_data +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x23ebd5fb dm_bitset_set_bit +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x2417c5c4 dm_btree_empty +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x29c25d50 dm_bm_write_lock_zero +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x2adee13f dm_btree_cursor_next +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 0x34d45c77 dm_btree_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 0x36a34e58 dm_array_cursor_get_value +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x36b84cda dm_array_del +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x3a797d19 dm_btree_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 0x432b8178 dm_array_cursor_begin +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x4557b425 dm_bitset_test_bit +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x46af8087 dm_bm_read_lock +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x48d1c7dc dm_btree_find_lowest_key +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x48e323be dm_bm_unlock +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x49081644 dm_btree_remove +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x4a4cb558 dm_btree_insert_notify +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x5475ba9e dm_block_location +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x55f98e63 dm_tm_open_with_sm +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x63b0c22d dm_bitset_flush +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x64976f82 dm_tm_shadow_block +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x688d422d dm_bm_block_size +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x6af8a872 dm_array_info_init +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x6bb4bf8f dm_array_cursor_next +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x6e1e3821 dm_array_walk +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x6f2fe3c4 dm_btree_remove_leaves +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 0x7485935a dm_btree_lookup +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x764567c8 dm_btree_find_highest_key +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 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 0x885b0024 dm_array_new +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x89783bda dm_array_cursor_end +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x8a56150c dm_tm_read_lock +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 0x97263968 dm_bitset_resize +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x98db2687 dm_bitset_cursor_end +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 0x9e98460e dm_bitset_empty +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0xa2ea5542 dm_bitset_del +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0xa3cc1157 dm_btree_cursor_begin +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0xa433adbc dm_bm_write_lock +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0xa51fbedc dm_bitset_new +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0xa7083b63 dm_sm_disk_create +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0xaab0ef04 dm_bitset_cursor_skip +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0xb6949944 dm_array_get_value +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0xb8dbd4e1 dm_sm_disk_open +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0xbb461fb7 dm_bitset_cursor_begin +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0xbbb5df05 dm_array_cursor_skip +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0xc248bde2 dm_disk_bitset_init +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0xcedfc878 dm_bitset_cursor_get_value +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0xd163cade dm_tm_commit +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0xd6367ed7 dm_tm_create_with_sm +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0xd6711a58 dm_bitset_cursor_next +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0xe781f874 dm_tm_dec +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0xf398644f dm_btree_lookup_next +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0xf3e25192 dm_bm_checksum +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0xf456e224 dm_block_manager_create +EXPORT_SYMBOL_GPL drivers/media/cec/core/cec 0x1c5e6d84 cec_notifier_conn_register +EXPORT_SYMBOL_GPL drivers/media/cec/core/cec 0x2c47a9d5 cec_fill_conn_info_from_drm +EXPORT_SYMBOL_GPL drivers/media/cec/core/cec 0x31165cba cec_unregister_adapter +EXPORT_SYMBOL_GPL drivers/media/cec/core/cec 0x35cdb70f cec_register_adapter +EXPORT_SYMBOL_GPL drivers/media/cec/core/cec 0x40d03c9b cec_queue_pin_hpd_event +EXPORT_SYMBOL_GPL drivers/media/cec/core/cec 0x4682672e cec_queue_pin_5v_event +EXPORT_SYMBOL_GPL drivers/media/cec/core/cec 0x5a90039c cec_received_msg_ts +EXPORT_SYMBOL_GPL drivers/media/cec/core/cec 0x5e7d0fe9 cec_delete_adapter +EXPORT_SYMBOL_GPL drivers/media/cec/core/cec 0x8095f560 cec_s_phys_addr_from_edid +EXPORT_SYMBOL_GPL drivers/media/cec/core/cec 0x8a348847 cec_notifier_cec_adap_register +EXPORT_SYMBOL_GPL drivers/media/cec/core/cec 0x985d230e cec_notifier_cec_adap_unregister +EXPORT_SYMBOL_GPL drivers/media/cec/core/cec 0xa01fbb6b cec_notifier_set_phys_addr +EXPORT_SYMBOL_GPL drivers/media/cec/core/cec 0xa493b086 cec_queue_pin_cec_event +EXPORT_SYMBOL_GPL drivers/media/cec/core/cec 0xaee236c6 cec_notifier_conn_unregister +EXPORT_SYMBOL_GPL drivers/media/cec/core/cec 0xb28ac971 cec_notifier_parse_hdmi_phandle +EXPORT_SYMBOL_GPL drivers/media/cec/core/cec 0xb4d437e7 cec_allocate_adapter +EXPORT_SYMBOL_GPL drivers/media/cec/core/cec 0xb61eaebb cec_s_phys_addr +EXPORT_SYMBOL_GPL drivers/media/cec/core/cec 0xbdb5e4bc cec_s_log_addrs +EXPORT_SYMBOL_GPL drivers/media/cec/core/cec 0xbe4de675 cec_get_edid_phys_addr +EXPORT_SYMBOL_GPL drivers/media/cec/core/cec 0xc4b70408 cec_transmit_done_ts +EXPORT_SYMBOL_GPL drivers/media/cec/core/cec 0xd365d7d2 cec_transmit_attempt_done_ts +EXPORT_SYMBOL_GPL drivers/media/cec/core/cec 0xe3b9596d cec_s_conn_info +EXPORT_SYMBOL_GPL drivers/media/cec/core/cec 0xf8c99364 cec_notifier_set_phys_addr_from_edid +EXPORT_SYMBOL_GPL drivers/media/cec/core/cec 0xf9c118b1 cec_transmit_msg +EXPORT_SYMBOL_GPL drivers/media/common/b2c2/b2c2-flexcop 0x66c0289a b2c2_flexcop_debug +EXPORT_SYMBOL_GPL drivers/media/common/saa7146/saa7146 0x0460cddb saa7146_vmalloc_build_pgtable +EXPORT_SYMBOL_GPL drivers/media/common/saa7146/saa7146 0x0d2a21ab saa7146_pgtable_free +EXPORT_SYMBOL_GPL drivers/media/common/saa7146/saa7146 0x150870eb saa7146_pgtable_alloc +EXPORT_SYMBOL_GPL drivers/media/common/saa7146/saa7146 0x40410195 saa7146_pgtable_build_single +EXPORT_SYMBOL_GPL drivers/media/common/saa7146/saa7146 0x4cc86a70 saa7146_vfree_destroy_pgtable +EXPORT_SYMBOL_GPL drivers/media/common/saa7146/saa7146 0x58c1fff6 saa7146_register_extension +EXPORT_SYMBOL_GPL drivers/media/common/saa7146/saa7146 0x5d41b1e0 saa7146_wait_for_debi_done +EXPORT_SYMBOL_GPL drivers/media/common/saa7146/saa7146 0x7ff08275 saa7146_setgpio +EXPORT_SYMBOL_GPL drivers/media/common/saa7146/saa7146 0xc87e4779 saa7146_i2c_adapter_prepare +EXPORT_SYMBOL_GPL drivers/media/common/saa7146/saa7146 0xe3cd9b5c saa7146_debug +EXPORT_SYMBOL_GPL drivers/media/common/saa7146/saa7146 0xf566ec26 saa7146_unregister_extension +EXPORT_SYMBOL_GPL drivers/media/common/saa7146/saa7146_vv 0x1c0e1884 saa7146_vv_init +EXPORT_SYMBOL_GPL drivers/media/common/saa7146/saa7146_vv 0x4acfde12 saa7146_unregister_device +EXPORT_SYMBOL_GPL drivers/media/common/saa7146/saa7146_vv 0x5f1b4208 saa7146_set_hps_source_and_sync +EXPORT_SYMBOL_GPL drivers/media/common/saa7146/saa7146_vv 0x8e1e1882 saa7146_register_device +EXPORT_SYMBOL_GPL drivers/media/common/saa7146/saa7146_vv 0x92402640 saa7146_start_preview +EXPORT_SYMBOL_GPL drivers/media/common/saa7146/saa7146_vv 0xc87816a4 saa7146_vv_release +EXPORT_SYMBOL_GPL drivers/media/common/saa7146/saa7146_vv 0xea9d385c saa7146_stop_preview +EXPORT_SYMBOL_GPL drivers/media/common/siano/smsmdtv 0x07152cc8 smscore_register_device +EXPORT_SYMBOL_GPL drivers/media/common/siano/smsmdtv 0x147e8d4f smscore_unregister_device +EXPORT_SYMBOL_GPL drivers/media/common/siano/smsmdtv 0x1fbc4253 sms_board_led_feedback +EXPORT_SYMBOL_GPL drivers/media/common/siano/smsmdtv 0x21e36bf2 smscore_registry_getmode +EXPORT_SYMBOL_GPL drivers/media/common/siano/smsmdtv 0x27a6e89f smscore_register_client +EXPORT_SYMBOL_GPL drivers/media/common/siano/smsmdtv 0x299a9810 smscore_get_device_mode +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 0x45284ae9 smsendian_handle_rx_message +EXPORT_SYMBOL_GPL drivers/media/common/siano/smsmdtv 0x63222b29 smsclient_sendrequest +EXPORT_SYMBOL_GPL drivers/media/common/siano/smsmdtv 0x74ee9098 sms_board_load_modules +EXPORT_SYMBOL_GPL drivers/media/common/siano/smsmdtv 0x74f813fa smscore_set_board_id +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 0x88f6dcd8 smscore_get_board_id +EXPORT_SYMBOL_GPL drivers/media/common/siano/smsmdtv 0x9e2cdaac sms_board_event +EXPORT_SYMBOL_GPL drivers/media/common/siano/smsmdtv 0xa0ab78d4 sms_board_lna_control +EXPORT_SYMBOL_GPL drivers/media/common/siano/smsmdtv 0xa7513985 smscore_start_device +EXPORT_SYMBOL_GPL drivers/media/common/siano/smsmdtv 0xba98a51d smscore_onresponse +EXPORT_SYMBOL_GPL drivers/media/common/siano/smsmdtv 0xbbdb5c42 smscore_unregister_client +EXPORT_SYMBOL_GPL drivers/media/common/siano/smsmdtv 0xda3cbdfe smscore_getbuffer +EXPORT_SYMBOL_GPL drivers/media/common/siano/smsmdtv 0xe5c1e148 smscore_register_hotplug +EXPORT_SYMBOL_GPL drivers/media/common/siano/smsmdtv 0xe694fd9a smscore_putbuffer +EXPORT_SYMBOL_GPL drivers/media/common/siano/smsmdtv 0xec8d22e6 sms_board_power +EXPORT_SYMBOL_GPL drivers/media/common/siano/smsmdtv 0xf07cb4b5 sms_board_setup +EXPORT_SYMBOL_GPL drivers/media/common/siano/smsmdtv 0xf8f8fa44 smscore_unregister_hotplug +EXPORT_SYMBOL_GPL drivers/media/common/v4l2-tpg/v4l2-tpg 0x03005a48 tpg_alloc +EXPORT_SYMBOL_GPL drivers/media/common/v4l2-tpg/v4l2-tpg 0x040dc7cd tpg_aspect_strings +EXPORT_SYMBOL_GPL drivers/media/common/v4l2-tpg/v4l2-tpg 0x4d1d285c tpg_init +EXPORT_SYMBOL_GPL drivers/media/common/v4l2-tpg/v4l2-tpg 0x517e7ccd tpg_fill_plane_buffer +EXPORT_SYMBOL_GPL drivers/media/common/v4l2-tpg/v4l2-tpg 0x579c6308 tpg_gen_text +EXPORT_SYMBOL_GPL drivers/media/common/v4l2-tpg/v4l2-tpg 0x6026aaf0 tpg_log_status +EXPORT_SYMBOL_GPL drivers/media/common/v4l2-tpg/v4l2-tpg 0x6960e899 tpg_s_crop_compose +EXPORT_SYMBOL_GPL drivers/media/common/v4l2-tpg/v4l2-tpg 0x756516e7 tpg_s_fourcc +EXPORT_SYMBOL_GPL drivers/media/common/v4l2-tpg/v4l2-tpg 0x7a5d8c0b tpg_update_mv_step +EXPORT_SYMBOL_GPL drivers/media/common/v4l2-tpg/v4l2-tpg 0x86b4ddf7 tpg_reset_source +EXPORT_SYMBOL_GPL drivers/media/common/v4l2-tpg/v4l2-tpg 0x975a1e29 tpg_g_interleaved_plane +EXPORT_SYMBOL_GPL drivers/media/common/v4l2-tpg/v4l2-tpg 0xaa5503d9 tpg_set_font +EXPORT_SYMBOL_GPL drivers/media/common/v4l2-tpg/v4l2-tpg 0xc6110b6e tpg_free +EXPORT_SYMBOL_GPL drivers/media/common/v4l2-tpg/v4l2-tpg 0xc6808be7 tpg_calc_text_basep +EXPORT_SYMBOL_GPL drivers/media/common/v4l2-tpg/v4l2-tpg 0xce8159bb tpg_pattern_strings +EXPORT_SYMBOL_GPL drivers/media/common/v4l2-tpg/v4l2-tpg 0xf65c5e46 tpg_fillbuffer +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-common 0x07cddf6e vb2_buffer_done +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-common 0x0aa6af5e __tracepoint_vb2_buf_queue +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-common 0x16f67eef __tracepoint_vb2_qbuf +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-common 0x317abd2a vb2_queue_error +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-common 0x339ee1fa vb2_request_buffer_cnt +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-common 0x36d3a516 vb2_discard_done +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-common 0x571f48d9 vb2_request_object_is_buffer +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-common 0x5b4834ee vb2_mmap +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-common 0x688713ce vb2_plane_vaddr +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-common 0x6a1c03b6 vb2_core_streamoff +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-common 0x74e66504 vb2_wait_for_all_buffers +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-common 0x75e846c7 vb2_core_streamon +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-common 0x7bd83bde vb2_core_qbuf +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-common 0x7cdede6e vb2_thread_start +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-common 0x7eeeee2e __tracepoint_vb2_buf_done +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-common 0x83190105 vb2_plane_cookie +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-common 0x83261f1d vb2_core_queue_release +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-common 0x850bad5d vb2_core_expbuf +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-common 0x8b76984f vb2_write +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-common 0xabadd835 vb2_thread_stop +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-common 0xb00a14ea vb2_core_queue_init +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-common 0xbbc76424 vb2_core_prepare_buf +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-common 0xbd2420e8 vb2_core_create_bufs +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-common 0xc4b5b5a5 vb2_core_poll +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-common 0xc7dfecd6 vb2_read +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-common 0xd4c14f85 vb2_core_dqbuf +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-common 0xd8192224 __tracepoint_vb2_dqbuf +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-common 0xf1ea49eb vb2_core_querybuf +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-common 0xf75242b1 vb2_core_reqbufs +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-dma-contig 0xb3d2bcae vb2_dma_contig_set_max_seg_size +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-dma-contig 0xb680d839 vb2_dma_contig_memops +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-dma-sg 0xef6e3b6f vb2_dma_sg_memops +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-memops 0x5aa11d49 vb2_common_vm_ops +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-v4l2 0x0a2d1657 vb2_ioctl_streamoff +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-v4l2 0x0d3ea15d vb2_fop_read +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-v4l2 0x16194e5c vb2_ioctl_reqbufs +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-v4l2 0x1aba2ee8 vb2_request_validate +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-v4l2 0x20927eac vb2_fop_write +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-v4l2 0x27ac4fc7 vb2_request_queue +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-v4l2 0x36f7ed38 vb2_fop_mmap +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-v4l2 0x39824bf0 vb2_fop_poll +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-v4l2 0x446461aa vb2_streamon +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-v4l2 0x455872f7 vb2_queue_init +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-v4l2 0x4eb34820 vb2_expbuf +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-v4l2 0x6627f650 vb2_prepare_buf +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-v4l2 0x66a22751 vb2_reqbufs +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-v4l2 0x69ecbef3 _vb2_fop_release +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-v4l2 0x6aadb894 vb2_ops_wait_prepare +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-v4l2 0x77494360 vb2_poll +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-v4l2 0x80a985c2 vb2_ioctl_dqbuf +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-v4l2 0x93edd72b vb2_ioctl_expbuf +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-v4l2 0x96dcbaed vb2_ioctl_prepare_buf +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-v4l2 0x993f1968 vb2_fop_release +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-v4l2 0xacffe97b vb2_create_bufs +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-v4l2 0xb1159416 vb2_ioctl_querybuf +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-v4l2 0xb212336f vb2_dqbuf +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-v4l2 0xc6b80197 vb2_ioctl_streamon +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-v4l2 0xc83496de vb2_streamoff +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-v4l2 0xd000b885 vb2_ops_wait_finish +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-v4l2 0xdf07e58d vb2_qbuf +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-v4l2 0xe32573b6 vb2_ioctl_qbuf +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-v4l2 0xea14b562 vb2_queue_release +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-v4l2 0xf66f00e5 vb2_find_timestamp +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-v4l2 0xfcdfa81b vb2_ioctl_create_bufs +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-vmalloc 0xa43f68cf vb2_vmalloc_memops +EXPORT_SYMBOL_GPL drivers/media/dvb-core/dvb-core 0x69a38d8f dvb_module_release +EXPORT_SYMBOL_GPL drivers/media/dvb-core/dvb-core 0xbd870310 dvb_create_media_graph +EXPORT_SYMBOL_GPL drivers/media/dvb-core/dvb-core 0xc696ffee dvb_module_probe +EXPORT_SYMBOL_GPL drivers/media/dvb-frontends/as102_fe 0xbe28d27e as102_attach +EXPORT_SYMBOL_GPL drivers/media/dvb-frontends/cx24117 0xd2893253 cx24117_attach +EXPORT_SYMBOL_GPL drivers/media/dvb-frontends/gp8psk-fe 0x9820cec9 gp8psk_fe_attach +EXPORT_SYMBOL_GPL drivers/media/dvb-frontends/mxl5xx 0x5fb4b0f9 mxl5xx_attach +EXPORT_SYMBOL_GPL drivers/media/dvb-frontends/stv0910 0xd94d47a7 stv0910_attach +EXPORT_SYMBOL_GPL drivers/media/dvb-frontends/stv6111 0x52ea9941 stv6111_attach +EXPORT_SYMBOL_GPL drivers/media/dvb-frontends/tda18271c2dd 0xf2093c42 tda18271c2dd_attach +EXPORT_SYMBOL_GPL drivers/media/i2c/aptina-pll 0xd8974c4f aptina_pll_calculate +EXPORT_SYMBOL_GPL drivers/media/i2c/smiapp-pll 0x2290d9fa smiapp_pll_calculate +EXPORT_SYMBOL_GPL drivers/media/mc/mc 0x02e583ce media_request_object_unbind +EXPORT_SYMBOL_GPL drivers/media/mc/mc 0x08ac9b67 __media_remove_intf_link +EXPORT_SYMBOL_GPL drivers/media/mc/mc 0x09804e97 media_graph_walk_next +EXPORT_SYMBOL_GPL drivers/media/mc/mc 0x0d56ba34 media_pipeline_start +EXPORT_SYMBOL_GPL drivers/media/mc/mc 0x10462c8f media_devnode_create +EXPORT_SYMBOL_GPL drivers/media/mc/mc 0x1110566b media_device_unregister +EXPORT_SYMBOL_GPL drivers/media/mc/mc 0x19b086ab media_request_object_bind +EXPORT_SYMBOL_GPL drivers/media/mc/mc 0x1f6575d4 media_entity_remote_pad +EXPORT_SYMBOL_GPL drivers/media/mc/mc 0x1fe1a96a __media_pipeline_stop +EXPORT_SYMBOL_GPL drivers/media/mc/mc 0x2260082d __media_device_usb_init +EXPORT_SYMBOL_GPL drivers/media/mc/mc 0x2d2d4d7b media_create_pad_link +EXPORT_SYMBOL_GPL drivers/media/mc/mc 0x308d4f91 media_device_pci_init +EXPORT_SYMBOL_GPL drivers/media/mc/mc 0x34547905 media_entity_get_fwnode_pad +EXPORT_SYMBOL_GPL drivers/media/mc/mc 0x3871dc59 __media_entity_setup_link +EXPORT_SYMBOL_GPL drivers/media/mc/mc 0x3f71521b media_get_pad_index +EXPORT_SYMBOL_GPL drivers/media/mc/mc 0x49047edc media_entity_setup_link +EXPORT_SYMBOL_GPL drivers/media/mc/mc 0x496a8d16 media_device_cleanup +EXPORT_SYMBOL_GPL drivers/media/mc/mc 0x4bcd890e media_graph_walk_init +EXPORT_SYMBOL_GPL drivers/media/mc/mc 0x4e389558 media_device_register_entity +EXPORT_SYMBOL_GPL drivers/media/mc/mc 0x4eba8525 media_device_init +EXPORT_SYMBOL_GPL drivers/media/mc/mc 0x50d089ac media_device_unregister_entity +EXPORT_SYMBOL_GPL drivers/media/mc/mc 0x51c2041a media_graph_walk_cleanup +EXPORT_SYMBOL_GPL drivers/media/mc/mc 0x535f9c69 media_device_unregister_entity_notify +EXPORT_SYMBOL_GPL drivers/media/mc/mc 0x5a61da5e media_request_object_init +EXPORT_SYMBOL_GPL drivers/media/mc/mc 0x5d608075 media_remove_intf_links +EXPORT_SYMBOL_GPL drivers/media/mc/mc 0x5f3bda58 media_device_delete +EXPORT_SYMBOL_GPL drivers/media/mc/mc 0x5f89256b media_pipeline_stop +EXPORT_SYMBOL_GPL drivers/media/mc/mc 0x65cfd190 media_create_pad_links +EXPORT_SYMBOL_GPL drivers/media/mc/mc 0x693c00b0 media_request_get_by_fd +EXPORT_SYMBOL_GPL drivers/media/mc/mc 0x78faab17 media_request_object_complete +EXPORT_SYMBOL_GPL drivers/media/mc/mc 0x7febc37d media_remove_intf_link +EXPORT_SYMBOL_GPL drivers/media/mc/mc 0x8b3ce321 __media_entity_remove_links +EXPORT_SYMBOL_GPL drivers/media/mc/mc 0x9670ae2b media_device_register_entity_notify +EXPORT_SYMBOL_GPL drivers/media/mc/mc 0xa0333bd3 __media_remove_intf_links +EXPORT_SYMBOL_GPL drivers/media/mc/mc 0xaa7a308a media_entity_pads_init +EXPORT_SYMBOL_GPL drivers/media/mc/mc 0xafb2f283 media_create_intf_link +EXPORT_SYMBOL_GPL drivers/media/mc/mc 0xba7e3f3b media_entity_remove_links +EXPORT_SYMBOL_GPL drivers/media/mc/mc 0xbad576e5 __media_device_register +EXPORT_SYMBOL_GPL drivers/media/mc/mc 0xbe20da9b __media_pipeline_start +EXPORT_SYMBOL_GPL drivers/media/mc/mc 0xcc8a0b5f media_devnode_remove +EXPORT_SYMBOL_GPL drivers/media/mc/mc 0xccb9656d media_graph_walk_start +EXPORT_SYMBOL_GPL drivers/media/mc/mc 0xd30bc623 media_request_object_find +EXPORT_SYMBOL_GPL drivers/media/mc/mc 0xd40bac79 media_request_object_put +EXPORT_SYMBOL_GPL drivers/media/mc/mc 0xdc581289 __media_entity_enum_init +EXPORT_SYMBOL_GPL drivers/media/mc/mc 0xe4594dd9 media_device_usb_allocate +EXPORT_SYMBOL_GPL drivers/media/mc/mc 0xe5ceecd6 media_entity_enum_cleanup +EXPORT_SYMBOL_GPL drivers/media/mc/mc 0xe8c558b1 media_entity_find_link +EXPORT_SYMBOL_GPL drivers/media/mc/mc 0xff284e21 media_request_put +EXPORT_SYMBOL_GPL drivers/media/pci/cx88/cx88xx 0x9beb0f7e cx88_setup_xc3028 +EXPORT_SYMBOL_GPL drivers/media/pci/mantis/mantis_core 0x013ecc3f mantis_stream_control +EXPORT_SYMBOL_GPL drivers/media/pci/mantis/mantis_core 0x02851843 mantis_pci_exit +EXPORT_SYMBOL_GPL drivers/media/pci/mantis/mantis_core 0x10d5ce6f mantis_dvb_exit +EXPORT_SYMBOL_GPL drivers/media/pci/mantis/mantis_core 0x296bd654 mantis_dma_init +EXPORT_SYMBOL_GPL drivers/media/pci/mantis/mantis_core 0x3f0c9fd3 mantis_uart_init +EXPORT_SYMBOL_GPL drivers/media/pci/mantis/mantis_core 0x50291c50 mantis_frontend_soft_reset +EXPORT_SYMBOL_GPL drivers/media/pci/mantis/mantis_core 0x613f5aa0 mantis_i2c_exit +EXPORT_SYMBOL_GPL drivers/media/pci/mantis/mantis_core 0x68bf5a84 mantis_input_init +EXPORT_SYMBOL_GPL drivers/media/pci/mantis/mantis_core 0x7cb01efb mantis_ca_exit +EXPORT_SYMBOL_GPL drivers/media/pci/mantis/mantis_core 0x844f2aec mantis_ca_init +EXPORT_SYMBOL_GPL drivers/media/pci/mantis/mantis_core 0x8d00182c mantis_pci_init +EXPORT_SYMBOL_GPL drivers/media/pci/mantis/mantis_core 0x8dcd30c1 mantis_dma_exit +EXPORT_SYMBOL_GPL drivers/media/pci/mantis/mantis_core 0x92a33c92 mantis_get_mac +EXPORT_SYMBOL_GPL drivers/media/pci/mantis/mantis_core 0xb47328fa mantis_dvb_init +EXPORT_SYMBOL_GPL drivers/media/pci/mantis/mantis_core 0xb5c0e496 mantis_frontend_power +EXPORT_SYMBOL_GPL drivers/media/pci/mantis/mantis_core 0xb9e4e121 mantis_gpio_set_bits +EXPORT_SYMBOL_GPL drivers/media/pci/mantis/mantis_core 0xc599bc35 mantis_i2c_init +EXPORT_SYMBOL_GPL drivers/media/pci/mantis/mantis_core 0xc6e941a2 mantis_uart_exit +EXPORT_SYMBOL_GPL drivers/media/pci/mantis/mantis_core 0xc7d77442 mantis_input_exit +EXPORT_SYMBOL_GPL drivers/media/pci/saa7134/saa7134 0x02bed082 saa7134_s_tuner +EXPORT_SYMBOL_GPL drivers/media/pci/saa7134/saa7134 0x24b3f3f5 saa7134_querystd +EXPORT_SYMBOL_GPL drivers/media/pci/saa7134/saa7134 0x30bb1b1c saa7134_ts_queue_setup +EXPORT_SYMBOL_GPL drivers/media/pci/saa7134/saa7134 0x517063fc saa7134_ts_qops +EXPORT_SYMBOL_GPL drivers/media/pci/saa7134/saa7134 0x54a9eb4e saa7134_vb2_buffer_queue +EXPORT_SYMBOL_GPL drivers/media/pci/saa7134/saa7134 0x67e63cd7 saa7134_querycap +EXPORT_SYMBOL_GPL drivers/media/pci/saa7134/saa7134 0x6a2985af saa7134_stop_streaming +EXPORT_SYMBOL_GPL drivers/media/pci/saa7134/saa7134 0x6bc0ab35 saa7134_ts_buffer_prepare +EXPORT_SYMBOL_GPL drivers/media/pci/saa7134/saa7134 0x88eeec69 saa7134_s_std +EXPORT_SYMBOL_GPL drivers/media/pci/saa7134/saa7134 0x8ae9a0b6 saa7134_ts_stop_streaming +EXPORT_SYMBOL_GPL drivers/media/pci/saa7134/saa7134 0xa0c0659b saa7134_g_frequency +EXPORT_SYMBOL_GPL drivers/media/pci/saa7134/saa7134 0xa3f2b9c2 saa7134_ts_buffer_init +EXPORT_SYMBOL_GPL drivers/media/pci/saa7134/saa7134 0xab00f19e saa7134_g_std +EXPORT_SYMBOL_GPL drivers/media/pci/saa7134/saa7134 0xada9f35f saa7134_ts_start_streaming +EXPORT_SYMBOL_GPL drivers/media/pci/saa7134/saa7134 0xaf0fca9b saa7134_g_input +EXPORT_SYMBOL_GPL drivers/media/pci/saa7134/saa7134 0xba76f287 saa7134_s_input +EXPORT_SYMBOL_GPL drivers/media/pci/saa7134/saa7134 0xd3ad4273 saa7134_g_tuner +EXPORT_SYMBOL_GPL drivers/media/pci/saa7134/saa7134 0xdd6984c7 saa7134_s_frequency +EXPORT_SYMBOL_GPL drivers/media/pci/saa7134/saa7134 0xfa3dd619 saa7134_enum_input +EXPORT_SYMBOL_GPL drivers/media/pci/ttpci/budget-core 0x03791366 ttpci_budget_irq10_handler +EXPORT_SYMBOL_GPL drivers/media/pci/ttpci/budget-core 0x1323e053 ttpci_budget_debiwrite +EXPORT_SYMBOL_GPL drivers/media/pci/ttpci/budget-core 0x1ddecc25 ttpci_budget_init +EXPORT_SYMBOL_GPL drivers/media/pci/ttpci/budget-core 0x6a7a1a86 ttpci_budget_set_video_port +EXPORT_SYMBOL_GPL drivers/media/pci/ttpci/budget-core 0x6e9dd93e ttpci_budget_debiread +EXPORT_SYMBOL_GPL drivers/media/pci/ttpci/budget-core 0x7948c222 budget_debug +EXPORT_SYMBOL_GPL drivers/media/pci/ttpci/budget-core 0x7bfa2318 ttpci_budget_deinit +EXPORT_SYMBOL_GPL drivers/media/pci/ttpci/budget-core 0xfec18c28 ttpci_budget_init_hooks +EXPORT_SYMBOL_GPL drivers/media/platform/marvell-ccic/mcam-core 0x5e9bd03d mccic_shutdown +EXPORT_SYMBOL_GPL drivers/media/platform/marvell-ccic/mcam-core 0x7ad1477e mccic_resume +EXPORT_SYMBOL_GPL drivers/media/platform/marvell-ccic/mcam-core 0x7ae91674 mccic_register +EXPORT_SYMBOL_GPL drivers/media/platform/marvell-ccic/mcam-core 0x8e6eac81 mccic_irq +EXPORT_SYMBOL_GPL drivers/media/platform/marvell-ccic/mcam-core 0xf2a0464b mccic_suspend +EXPORT_SYMBOL_GPL drivers/media/platform/mtk-vpu/mtk-vpu 0x012d21e1 vpu_load_firmware +EXPORT_SYMBOL_GPL drivers/media/platform/mtk-vpu/mtk-vpu 0x21c1b49d vpu_wdt_reg_handler +EXPORT_SYMBOL_GPL drivers/media/platform/mtk-vpu/mtk-vpu 0x27605308 vpu_ipi_register +EXPORT_SYMBOL_GPL drivers/media/platform/mtk-vpu/mtk-vpu 0x3dd19dfe vpu_get_vdec_hw_capa +EXPORT_SYMBOL_GPL drivers/media/platform/mtk-vpu/mtk-vpu 0x50e188a1 vpu_get_venc_hw_capa +EXPORT_SYMBOL_GPL drivers/media/platform/mtk-vpu/mtk-vpu 0x5328fb4b vpu_mapping_dm_addr +EXPORT_SYMBOL_GPL drivers/media/platform/mtk-vpu/mtk-vpu 0x8f7a72c1 vpu_ipi_send +EXPORT_SYMBOL_GPL drivers/media/platform/mtk-vpu/mtk-vpu 0xf2a776ce vpu_get_plat_device +EXPORT_SYMBOL_GPL drivers/media/platform/rcar-fcp 0x3d858696 rcar_fcp_put +EXPORT_SYMBOL_GPL drivers/media/platform/rcar-fcp 0x4ad5d888 rcar_fcp_enable +EXPORT_SYMBOL_GPL drivers/media/platform/rcar-fcp 0x5fe6f6e8 rcar_fcp_disable +EXPORT_SYMBOL_GPL drivers/media/platform/rcar-fcp 0x9877c29f rcar_fcp_get +EXPORT_SYMBOL_GPL drivers/media/platform/rcar-fcp 0xcfc33728 rcar_fcp_get_device +EXPORT_SYMBOL_GPL drivers/media/platform/vsp1/vsp1 0x094c099e vsp1_du_atomic_begin +EXPORT_SYMBOL_GPL drivers/media/platform/vsp1/vsp1 0x1b059e67 vsp1_du_atomic_update +EXPORT_SYMBOL_GPL drivers/media/platform/vsp1/vsp1 0x3d105611 vsp1_du_init +EXPORT_SYMBOL_GPL drivers/media/platform/vsp1/vsp1 0x44b0be59 vsp1_du_setup_lif +EXPORT_SYMBOL_GPL drivers/media/platform/vsp1/vsp1 0x942994e0 vsp1_du_atomic_flush +EXPORT_SYMBOL_GPL drivers/media/platform/vsp1/vsp1 0xaaf3b5f7 vsp1_du_unmap_sg +EXPORT_SYMBOL_GPL drivers/media/platform/vsp1/vsp1 0xec886f33 vsp1_du_map_sg +EXPORT_SYMBOL_GPL drivers/media/platform/xilinx/xilinx-video 0x011de74d xvip_clr_and_set +EXPORT_SYMBOL_GPL drivers/media/platform/xilinx/xilinx-video 0x3c7eb685 xvip_set_format_size +EXPORT_SYMBOL_GPL drivers/media/platform/xilinx/xilinx-video 0x3cde9d63 xvip_clr_or_set +EXPORT_SYMBOL_GPL drivers/media/platform/xilinx/xilinx-video 0x60e11b5e xvip_cleanup_resources +EXPORT_SYMBOL_GPL drivers/media/platform/xilinx/xilinx-video 0x6164abb8 xvip_of_get_format +EXPORT_SYMBOL_GPL drivers/media/platform/xilinx/xilinx-video 0xb67940fb xvip_get_format_by_fourcc +EXPORT_SYMBOL_GPL drivers/media/platform/xilinx/xilinx-video 0xb69fb10d xvip_enum_frame_size +EXPORT_SYMBOL_GPL drivers/media/platform/xilinx/xilinx-video 0xbd4668b8 xvip_init_resources +EXPORT_SYMBOL_GPL drivers/media/platform/xilinx/xilinx-video 0xe08e6063 xvip_get_format_by_code +EXPORT_SYMBOL_GPL drivers/media/platform/xilinx/xilinx-video 0xe839643f xvip_enum_mbus_code +EXPORT_SYMBOL_GPL drivers/media/platform/xilinx/xilinx-vtc 0x3c16a6b1 xvtc_generator_stop +EXPORT_SYMBOL_GPL drivers/media/platform/xilinx/xilinx-vtc 0x47d7900b xvtc_generator_start +EXPORT_SYMBOL_GPL drivers/media/platform/xilinx/xilinx-vtc 0xa8a0f912 xvtc_put +EXPORT_SYMBOL_GPL drivers/media/platform/xilinx/xilinx-vtc 0xf479685c xvtc_of_get +EXPORT_SYMBOL_GPL drivers/media/radio/shark2 0x4a1593c9 radio_tea5777_init +EXPORT_SYMBOL_GPL drivers/media/radio/shark2 0x6a091077 radio_tea5777_exit +EXPORT_SYMBOL_GPL drivers/media/radio/si470x/radio-si470x-common 0x1651a1f6 si470x_ctrl_ops +EXPORT_SYMBOL_GPL drivers/media/radio/si470x/radio-si470x-common 0xa66dab5e si470x_set_freq +EXPORT_SYMBOL_GPL drivers/media/radio/si470x/radio-si470x-common 0xaf18c51d si470x_start +EXPORT_SYMBOL_GPL drivers/media/radio/si470x/radio-si470x-common 0xbf62b5cd si470x_stop +EXPORT_SYMBOL_GPL drivers/media/radio/si470x/radio-si470x-common 0xdcca4c90 si470x_viddev_template +EXPORT_SYMBOL_GPL drivers/media/rc/rc-core 0x048ad3fe rc_g_keycode_from_table +EXPORT_SYMBOL_GPL drivers/media/rc/rc-core 0x167efcf8 ir_raw_event_store +EXPORT_SYMBOL_GPL drivers/media/rc/rc-core 0x22f9cd9a rc_keydown +EXPORT_SYMBOL_GPL drivers/media/rc/rc-core 0x24d074ad ir_raw_event_store_with_timeout +EXPORT_SYMBOL_GPL drivers/media/rc/rc-core 0x3ec92b18 rc_keydown_notimeout +EXPORT_SYMBOL_GPL drivers/media/rc/rc-core 0x52a6e729 rc_map_register +EXPORT_SYMBOL_GPL drivers/media/rc/rc-core 0x5603b6d6 ir_raw_event_store_edge +EXPORT_SYMBOL_GPL drivers/media/rc/rc-core 0x5d69a430 devm_rc_register_device +EXPORT_SYMBOL_GPL drivers/media/rc/rc-core 0x7b6c4e75 rc_register_device +EXPORT_SYMBOL_GPL drivers/media/rc/rc-core 0x870b4266 rc_map_unregister +EXPORT_SYMBOL_GPL drivers/media/rc/rc-core 0x98b93143 rc_allocate_device +EXPORT_SYMBOL_GPL drivers/media/rc/rc-core 0xa0bfc91d ir_raw_event_set_idle +EXPORT_SYMBOL_GPL drivers/media/rc/rc-core 0xa4891b8d rc_unregister_device +EXPORT_SYMBOL_GPL drivers/media/rc/rc-core 0xa558047c devm_rc_allocate_device +EXPORT_SYMBOL_GPL drivers/media/rc/rc-core 0xb99459e4 ir_raw_event_store_with_filter +EXPORT_SYMBOL_GPL drivers/media/rc/rc-core 0xc4036c86 rc_repeat +EXPORT_SYMBOL_GPL drivers/media/rc/rc-core 0xda9bc85a ir_lirc_scancode_event +EXPORT_SYMBOL_GPL drivers/media/rc/rc-core 0xdfdd49c0 rc_free_device +EXPORT_SYMBOL_GPL drivers/media/rc/rc-core 0xf2331fc0 ir_raw_event_handle +EXPORT_SYMBOL_GPL drivers/media/rc/rc-core 0xf628509b rc_keyup +EXPORT_SYMBOL_GPL drivers/media/rc/rc-core 0xfd5960f2 rc_map_get +EXPORT_SYMBOL_GPL drivers/media/tuners/mt2063 0x3d89ee1b mt2063_attach +EXPORT_SYMBOL_GPL drivers/media/tuners/mt20xx 0x751b7a38 microtune_attach +EXPORT_SYMBOL_GPL drivers/media/tuners/mxl5007t 0x45a1f744 mxl5007t_attach +EXPORT_SYMBOL_GPL drivers/media/tuners/r820t 0x0938ee72 r820t_attach +EXPORT_SYMBOL_GPL drivers/media/tuners/tda18271 0x4d347695 tda18271_attach +EXPORT_SYMBOL_GPL drivers/media/tuners/tda827x 0x3f4bd935 tda827x_attach +EXPORT_SYMBOL_GPL drivers/media/tuners/tda8290 0x139a081e tda829x_attach +EXPORT_SYMBOL_GPL drivers/media/tuners/tda8290 0xa17db3a7 tda829x_probe +EXPORT_SYMBOL_GPL drivers/media/tuners/tda9887 0x99299ced tda9887_attach +EXPORT_SYMBOL_GPL drivers/media/tuners/tea5761 0x282aeb91 tea5761_attach +EXPORT_SYMBOL_GPL drivers/media/tuners/tea5761 0x5471cfc1 tea5761_autodetection +EXPORT_SYMBOL_GPL drivers/media/tuners/tea5767 0x3e50ad45 tea5767_autodetection +EXPORT_SYMBOL_GPL drivers/media/tuners/tea5767 0xcf0d46eb tea5767_attach +EXPORT_SYMBOL_GPL drivers/media/tuners/tuner-simple 0x020f70b1 simple_tuner_attach +EXPORT_SYMBOL_GPL drivers/media/usb/cx231xx/cx231xx 0x017ea7c7 cx231xx_tuner_callback +EXPORT_SYMBOL_GPL drivers/media/usb/cx231xx/cx231xx 0x04a3cf87 cx231xx_send_gpio_cmd +EXPORT_SYMBOL_GPL drivers/media/usb/cx231xx/cx231xx 0x17a81b46 cx231xx_unmute_audio +EXPORT_SYMBOL_GPL drivers/media/usb/cx231xx/cx231xx 0x25122324 cx231xx_init_vbi_isoc +EXPORT_SYMBOL_GPL drivers/media/usb/cx231xx/cx231xx 0x2747be11 cx231xx_enable656 +EXPORT_SYMBOL_GPL drivers/media/usb/cx231xx/cx231xx 0x47797c4d is_fw_load +EXPORT_SYMBOL_GPL drivers/media/usb/cx231xx/cx231xx 0x5a6c6a71 cx231xx_uninit_bulk +EXPORT_SYMBOL_GPL drivers/media/usb/cx231xx/cx231xx 0x5fad6b2e cx231xx_uninit_vbi_isoc +EXPORT_SYMBOL_GPL drivers/media/usb/cx231xx/cx231xx 0x641c43b9 cx231xx_init_isoc +EXPORT_SYMBOL_GPL drivers/media/usb/cx231xx/cx231xx 0x7b24816c cx231xx_set_mode +EXPORT_SYMBOL_GPL drivers/media/usb/cx231xx/cx231xx 0x7daa26ec cx231xx_uninit_isoc +EXPORT_SYMBOL_GPL drivers/media/usb/cx231xx/cx231xx 0x8e5195b7 cx231xx_set_alt_setting +EXPORT_SYMBOL_GPL drivers/media/usb/cx231xx/cx231xx 0x991e7d63 cx231xx_enable_i2c_port_3 +EXPORT_SYMBOL_GPL drivers/media/usb/cx231xx/cx231xx 0xc7e9fac3 cx231xx_init_bulk +EXPORT_SYMBOL_GPL drivers/media/usb/cx231xx/cx231xx 0xd52d8c08 cx231xx_send_usb_command +EXPORT_SYMBOL_GPL drivers/media/usb/cx231xx/cx231xx 0xd811bbd9 cx231xx_get_i2c_adap +EXPORT_SYMBOL_GPL drivers/media/usb/cx231xx/cx231xx 0xd8f88b97 cx231xx_capture_start +EXPORT_SYMBOL_GPL drivers/media/usb/cx231xx/cx231xx 0xde889419 cx231xx_dev_init +EXPORT_SYMBOL_GPL drivers/media/usb/cx231xx/cx231xx 0xdfffd3eb cx231xx_disable656 +EXPORT_SYMBOL_GPL drivers/media/usb/cx231xx/cx231xx 0xe14ba996 cx231xx_dev_uninit +EXPORT_SYMBOL_GPL drivers/media/usb/cx231xx/cx231xx 0xf4f7c6ce cx231xx_demod_reset +EXPORT_SYMBOL_GPL drivers/media/usb/dvb-usb-v2/mxl111sf-demod 0xab7daa44 mxl111sf_demod_attach +EXPORT_SYMBOL_GPL drivers/media/usb/dvb-usb-v2/mxl111sf-tuner 0xf83df39d mxl111sf_tuner_attach +EXPORT_SYMBOL_GPL drivers/media/usb/em28xx/em28xx 0x0e5254ae em28xx_init_camera +EXPORT_SYMBOL_GPL drivers/media/usb/em28xx/em28xx 0x1db6c41d em28xx_audio_setup +EXPORT_SYMBOL_GPL drivers/media/usb/em28xx/em28xx 0x267a4cc7 em28xx_audio_analog_set +EXPORT_SYMBOL_GPL drivers/media/usb/em28xx/em28xx 0x39857d92 em28xx_write_reg +EXPORT_SYMBOL_GPL drivers/media/usb/em28xx/em28xx 0x4066172e em28xx_gpio_set +EXPORT_SYMBOL_GPL drivers/media/usb/em28xx/em28xx 0x4ed8ef3e em28xx_read_ac97 +EXPORT_SYMBOL_GPL drivers/media/usb/em28xx/em28xx 0x58c6866a em28xx_uninit_usb_xfer +EXPORT_SYMBOL_GPL drivers/media/usb/em28xx/em28xx 0x6c7b8910 em28xx_setup_xc3028 +EXPORT_SYMBOL_GPL drivers/media/usb/em28xx/em28xx 0x721f7cc7 em28xx_free_device +EXPORT_SYMBOL_GPL drivers/media/usb/em28xx/em28xx 0x7c5d5359 em28xx_stop_urbs +EXPORT_SYMBOL_GPL drivers/media/usb/em28xx/em28xx 0x7f4a9adc em28xx_toggle_reg_bits +EXPORT_SYMBOL_GPL drivers/media/usb/em28xx/em28xx 0x7fc8652c em28xx_tuner_callback +EXPORT_SYMBOL_GPL drivers/media/usb/em28xx/em28xx 0x8dcfb58e em28xx_write_ac97 +EXPORT_SYMBOL_GPL drivers/media/usb/em28xx/em28xx 0x8f367fe2 em28xx_write_regs +EXPORT_SYMBOL_GPL drivers/media/usb/em28xx/em28xx 0x921d7c65 em28xx_boards +EXPORT_SYMBOL_GPL drivers/media/usb/em28xx/em28xx 0xabb3d0bf em28xx_init_usb_xfer +EXPORT_SYMBOL_GPL drivers/media/usb/em28xx/em28xx 0xd03ed9fd em28xx_find_led +EXPORT_SYMBOL_GPL drivers/media/usb/em28xx/em28xx 0xe6169ed9 em28xx_write_reg_bits +EXPORT_SYMBOL_GPL drivers/media/usb/em28xx/em28xx 0xec21aa66 em28xx_alloc_urbs +EXPORT_SYMBOL_GPL drivers/media/usb/em28xx/em28xx 0xef706bb8 em28xx_read_reg +EXPORT_SYMBOL_GPL drivers/media/usb/em28xx/em28xx 0xf5ee100b em28xx_set_mode +EXPORT_SYMBOL_GPL drivers/media/usb/tm6000/tm6000 0x04363441 tm6000_set_audio_bitrate +EXPORT_SYMBOL_GPL drivers/media/usb/tm6000/tm6000 0x2309a6d6 tm6000_xc5000_callback +EXPORT_SYMBOL_GPL drivers/media/usb/tm6000/tm6000 0x2af731ba tm6000_set_reg_mask +EXPORT_SYMBOL_GPL drivers/media/usb/tm6000/tm6000 0x89b611dd tm6000_debug +EXPORT_SYMBOL_GPL drivers/media/usb/tm6000/tm6000 0x8f1a805b tm6000_get_reg +EXPORT_SYMBOL_GPL drivers/media/usb/tm6000/tm6000 0xd893455b tm6000_set_reg +EXPORT_SYMBOL_GPL drivers/media/usb/tm6000/tm6000 0xdff8e89d tm6000_tuner_callback +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 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 0xef15cc44 v4l2_hdmi_rx_colorimetry +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 0x512bb2a7 v4l2_flash_release +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-flash-led-class 0x901235a4 v4l2_flash_init +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-flash-led-class 0xa70e0ed3 v4l2_flash_indicator_init +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-fwnode 0x33f16736 v4l2_fwnode_endpoint_free +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-fwnode 0x3682acea v4l2_fwnode_endpoint_parse +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-fwnode 0x3f18ee73 v4l2_fwnode_connector_add_link +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-fwnode 0x400031b0 v4l2_fwnode_put_link +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-fwnode 0x40572fd3 v4l2_async_notifier_parse_fwnode_sensor_common +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-fwnode 0x612ddce5 v4l2_fwnode_connector_free +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-fwnode 0x6a95645c v4l2_async_notifier_parse_fwnode_endpoints +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-fwnode 0xba43d78a v4l2_fwnode_endpoint_alloc_parse +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-fwnode 0xbae0ee17 v4l2_fwnode_device_parse +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-fwnode 0xd0465f58 v4l2_async_notifier_parse_fwnode_endpoints_by_port +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-fwnode 0xd48ff69e v4l2_async_register_subdev_sensor_common +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-fwnode 0xd9b29b2d v4l2_fwnode_parse_link +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-fwnode 0xe7e3c28e v4l2_fwnode_connector_parse +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-h264 0x8468300b v4l2_h264_init_reflist_builder +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-h264 0xa003c02f v4l2_h264_build_b_ref_lists +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-h264 0xae38bf6d v4l2_h264_build_p_ref_list +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0x00713ac9 v4l2_m2m_buf_copy_metadata +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0x033b2696 v4l2_m2m_decoder_cmd +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0x049c9eed v4l2_m2m_ioctl_streamon +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0x04aaa9a0 v4l2_m2m_ioctl_decoder_cmd +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0x07d11b3c v4l2_m2m_buf_queue +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0x0b597df2 v4l2_m2m_ioctl_stateless_decoder_cmd +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0x0c3ad5ea v4l2_m2m_ioctl_prepare_buf +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0x143a84bc v4l2_m2m_try_schedule +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0x152647a7 v4l2_m2m_prepare_buf +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0x25be22d1 v4l2_m2m_streamoff +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0x283c9779 v4l2_m2m_dqbuf +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0x2b92d515 v4l2_m2m_encoder_cmd +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0x416d7cff v4l2_m2m_register_media_controller +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0x44a42f36 v4l2_m2m_last_buf +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0x5eaf98f6 v4l2_m2m_ioctl_create_bufs +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0x6de6000a v4l2_m2m_ioctl_encoder_cmd +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0x72d286da v4l2_m2m_ctx_init +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0x730f2eae v4l2_m2m_init +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0x739bf14d v4l2_m2m_ioctl_reqbufs +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0x73b4ca66 v4l2_m2m_buf_remove_by_idx +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0x81075cf3 v4l2_m2m_ctx_release +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0x81ccc8de v4l2_m2m_update_start_streaming_state +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0x884f7dac v4l2_m2m_expbuf +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0x886f25cb v4l2_m2m_streamon +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0x8df409c0 v4l2_m2m_ioctl_querybuf +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0x8f8c16b2 v4l2_m2m_fop_poll +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0x9c84e7fc v4l2_m2m_ioctl_dqbuf +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0xa2262fe7 v4l2_m2m_ioctl_qbuf +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0xa519d24b v4l2_m2m_ioctl_stateless_try_decoder_cmd +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0xb879c3ab v4l2_m2m_buf_remove +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0xba3faaea v4l2_m2m_ioctl_streamoff +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0xbaf3e6bf v4l2_m2m_last_buffer_done +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0xc018528e v4l2_m2m_fop_mmap +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0xc2ea192a v4l2_m2m_querybuf +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0xc6fca5ad v4l2_m2m_release +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0xd4b25b0a v4l2_m2m_poll +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0xe1b32761 v4l2_m2m_ioctl_try_decoder_cmd +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0xe215d7c6 v4l2_m2m_request_queue +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0xe8936675 v4l2_m2m_next_buf +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0xee07f271 v4l2_m2m_update_stop_streaming_state +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0xf13ff84d v4l2_m2m_unregister_media_controller +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0xf15e8a1b v4l2_m2m_reqbufs +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0xf1754fa1 v4l2_m2m_ioctl_try_encoder_cmd +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0xf54dc3f9 v4l2_m2m_create_bufs +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0xf8b1d784 v4l2_m2m_qbuf +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0xf9387566 v4l2_m2m_ioctl_expbuf +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0xfef65ec1 v4l2_m2m_buf_remove_by_buf +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0x0fd5603a videobuf_stop +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0x144b8583 videobuf_queue_core_init +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0x1831f342 videobuf_poll_stream +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0x1c186936 videobuf_dqbuf +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0x1ee8e63a videobuf_mmap_setup +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0x3faa6bda videobuf_queue_is_busy +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0x4bcaac0a videobuf_querybuf +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0x50c9b886 videobuf_mmap_mapper +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0x56bdc29b videobuf_streamoff +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0x5fcab3aa videobuf_reqbufs +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0x6103ef23 videobuf_iolock +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0x7b1a7f63 videobuf_alloc_vb +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0x823847f8 videobuf_waiton +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0xbd7959b8 videobuf_read_stream +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0xc36e7420 videobuf_queue_cancel +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0xca992835 videobuf_mmap_free +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0xe0789a40 videobuf_queue_to_vaddr +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0xe4489f71 __videobuf_mmap_setup +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0xedfb859a videobuf_next_field +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0xee30bde1 videobuf_qbuf +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0xee7cffbd videobuf_streamon +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0xf789b83e videobuf_read_stop +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0xf8018295 videobuf_read_start +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0xfee92390 videobuf_read_one +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-dma-sg 0x07bd11f2 videobuf_dma_free +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-dma-sg 0xa825c75b videobuf_sg_alloc +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-dma-sg 0xb196d896 videobuf_queue_sg_init +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-dma-sg 0xc2b5b4d0 videobuf_to_dma +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-dma-sg 0xfddd0f36 videobuf_dma_unmap +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-vmalloc 0x08630360 videobuf_to_vmalloc +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-vmalloc 0x690da344 videobuf_queue_vmalloc_init +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-vmalloc 0x9bf5140d videobuf_vmalloc_free +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x00b1711e v4l2_async_notifier_add_i2c_subdev +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x06525893 v4l2_fh_init +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x0a938afc v4l2_device_set_name +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x0b83a615 v4l2_pipeline_link_notify +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x0d427a5d v4l2_pipeline_pm_get +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x0d43fdd3 v4l2_async_notifier_cleanup +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x1259465f v4l2_i2c_subdev_addr +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x14ff3fea v4l2_create_fwnode_links +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x178a4812 __tracepoint_vb2_v4l2_buf_done +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x1ca50856 v4l2_device_register_subdev +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x1efd364b v4l2_ctrl_request_hdl_find +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x1f8ebffd v4l2_spi_new_subdev +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x2159cd19 v4l2_ctrl_request_hdl_ctrl_find +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x25a0b77f __tracepoint_vb2_v4l2_buf_queue +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x30166870 v4l2_fh_open +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x30aa18e8 v4l_enable_media_source +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x30d7ba6b __v4l2_device_register_subdev_nodes +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x30ef8d00 v4l2_event_queue_fh +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x36358a10 v4l2_event_subdev_unsubscribe +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x3a483f24 v4l2_event_dequeue +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x41a8f3d7 v4l2_device_register +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x46d00bbb v4l2_i2c_new_subdev +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x4c2476fc v4l2_device_put +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x50d65b11 v4l2_subdev_free_pad_config +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x52307df5 v4l2_subdev_alloc_pad_config +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x5528950e v4l2_device_disconnect +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x58bee392 v4l2_i2c_subdev_set_name +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x5b5a4613 v4l2_pipeline_pm_put +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x61817752 __tracepoint_vb2_v4l2_dqbuf +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x6366a29f v4l2_mc_create_media_graph +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x6724b61b v4l2_device_unregister +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x6e8adbf5 v4l2_async_notifier_add_devname_subdev +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x6e9acc41 v4l2_fill_pixfmt_mp +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x79a80bbf v4l2_event_unsubscribe_all +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x7bbf2e6a v4l2_fh_is_singular +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x869c7461 v4l2_async_notifier_add_fwnode_remote_subdev +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x8c24e269 v4l2_async_notifier_add_fwnode_subdev +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x8d67f917 v4l2_event_unsubscribe +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x8e4875f1 v4l2_event_subscribe +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x9341b23d v4l_disable_media_source +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x961c4d58 v4l2_device_unregister_subdev +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x9db3c901 v4l2_fh_exit +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x9fef35ac v4l2_apply_frmsize_constraints +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0xa2be3ef1 v4l2_create_fwnode_links_to_pad +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0xa81f3443 v4l2_subdev_link_validate_default +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0xa8e9a888 v4l2_subdev_notify_event +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0xa912df69 v4l2_g_parm_cap +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0xad37f190 __v4l2_ctrl_handler_setup +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0xb1cde960 v4l2_i2c_subdev_init +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0xb4f46da5 v4l2_fh_release +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0xb6dd35cd v4l2_s_parm_cap +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0xb7e3154e v4l2_event_queue +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0xbb089405 v4l2_fh_add +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0xbbfa523c v4l2_subdev_get_fwnode_pad_1_to_1 +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0xbc46cae1 v4l_vb2q_enable_media_source +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0xbe47d44a v4l2_event_pending +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0xcc501597 v4l2_fill_pixfmt +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0xcdb47000 v4l2_spi_subdev_init +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0xceab3984 v4l2_subdev_link_validate +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0xd2e923a9 v4l2_src_change_event_subscribe +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0xe0259e74 v4l2_fh_del +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0xe8770199 __tracepoint_vb2_v4l2_qbuf +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0xef2a8947 v4l2_async_notifier_add_subdev +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0xf2a353ac v4l2_i2c_tuner_addrs +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0xf3e0756a v4l2_i2c_new_subdev_board +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0xf5ef842e v4l_bound_align_image +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0xf6fc8aa0 v4l2_src_change_event_subdev_subscribe +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0xff76573f __v4l2_find_nearest_size +EXPORT_SYMBOL_GPL drivers/memory/pl353-smc 0x27ed2092 pl353_smc_set_ecc_mode +EXPORT_SYMBOL_GPL drivers/memory/pl353-smc 0x2eec2ab2 pl353_smc_ecc_is_busy +EXPORT_SYMBOL_GPL drivers/memory/pl353-smc 0x31112d75 pl353_smc_get_nand_int_status_raw +EXPORT_SYMBOL_GPL drivers/memory/pl353-smc 0x80ef3725 pl353_smc_set_ecc_pg_size +EXPORT_SYMBOL_GPL drivers/memory/pl353-smc 0x84eeb67e pl353_smc_set_buswidth +EXPORT_SYMBOL_GPL drivers/memory/pl353-smc 0xc00d163f pl353_smc_set_cycles +EXPORT_SYMBOL_GPL drivers/memory/pl353-smc 0xc37aa3c1 pl353_smc_clr_nand_int +EXPORT_SYMBOL_GPL drivers/memory/pl353-smc 0xe2603369 pl353_smc_get_ecc_val +EXPORT_SYMBOL_GPL drivers/mfd/88pm80x 0x1eece955 pm80x_regmap_config +EXPORT_SYMBOL_GPL drivers/mfd/88pm80x 0x3559a279 pm80x_init +EXPORT_SYMBOL_GPL drivers/mfd/88pm80x 0x7a1d8e38 pm80x_pm_ops +EXPORT_SYMBOL_GPL drivers/mfd/88pm80x 0xd99fd720 pm80x_deinit +EXPORT_SYMBOL_GPL drivers/mfd/da9150-core 0x8212552f da9150_set_bits +EXPORT_SYMBOL_GPL drivers/mfd/da9150-core 0x9d744ad0 da9150_bulk_read +EXPORT_SYMBOL_GPL drivers/mfd/da9150-core 0xa36fea1a da9150_write_qif +EXPORT_SYMBOL_GPL drivers/mfd/da9150-core 0xaebcf082 da9150_read_qif +EXPORT_SYMBOL_GPL drivers/mfd/da9150-core 0xb4a212c3 da9150_reg_read +EXPORT_SYMBOL_GPL drivers/mfd/da9150-core 0xb9365641 da9150_reg_write +EXPORT_SYMBOL_GPL drivers/mfd/da9150-core 0xcdc3373d da9150_bulk_write +EXPORT_SYMBOL_GPL drivers/mfd/gateworks-gsc 0xa142a524 gsc_read +EXPORT_SYMBOL_GPL drivers/mfd/gateworks-gsc 0xb7abd1c4 gsc_write +EXPORT_SYMBOL_GPL drivers/mfd/iqs62x 0x22a28670 iqs62x_events +EXPORT_SYMBOL_GPL drivers/mfd/kempld-core 0x40f17fbc kempld_write32 +EXPORT_SYMBOL_GPL drivers/mfd/kempld-core 0x564777ce kempld_write8 +EXPORT_SYMBOL_GPL drivers/mfd/kempld-core 0x6c5551bf kempld_read16 +EXPORT_SYMBOL_GPL drivers/mfd/kempld-core 0x86cb96e7 kempld_write16 +EXPORT_SYMBOL_GPL drivers/mfd/kempld-core 0x96494608 kempld_read32 +EXPORT_SYMBOL_GPL drivers/mfd/kempld-core 0x9cd08eb8 kempld_release_mutex +EXPORT_SYMBOL_GPL drivers/mfd/kempld-core 0xbd243b9d kempld_read8 +EXPORT_SYMBOL_GPL drivers/mfd/kempld-core 0xcb1a6be3 kempld_get_mutex +EXPORT_SYMBOL_GPL drivers/mfd/lm3533-core 0x1e8e24a0 lm3533_update +EXPORT_SYMBOL_GPL drivers/mfd/lm3533-core 0x6a93a669 lm3533_read +EXPORT_SYMBOL_GPL drivers/mfd/lm3533-core 0x7bd5d95e lm3533_write +EXPORT_SYMBOL_GPL drivers/mfd/lm3533-ctrlbank 0x2553579d lm3533_ctrlbank_get_pwm +EXPORT_SYMBOL_GPL drivers/mfd/lm3533-ctrlbank 0x5d27caac lm3533_ctrlbank_set_pwm +EXPORT_SYMBOL_GPL drivers/mfd/lm3533-ctrlbank 0x6d046dc4 lm3533_ctrlbank_get_brightness +EXPORT_SYMBOL_GPL drivers/mfd/lm3533-ctrlbank 0x793fc391 lm3533_ctrlbank_set_max_current +EXPORT_SYMBOL_GPL drivers/mfd/lm3533-ctrlbank 0xad4a81a4 lm3533_ctrlbank_set_brightness +EXPORT_SYMBOL_GPL drivers/mfd/lm3533-ctrlbank 0xe3be7896 lm3533_ctrlbank_disable +EXPORT_SYMBOL_GPL drivers/mfd/lm3533-ctrlbank 0xed9af6ff lm3533_ctrlbank_enable +EXPORT_SYMBOL_GPL drivers/mfd/lp3943 0x91527253 lp3943_read_byte +EXPORT_SYMBOL_GPL drivers/mfd/lp3943 0xcf6ca454 lp3943_update_bits +EXPORT_SYMBOL_GPL drivers/mfd/lp3943 0xd26837c5 lp3943_write_byte +EXPORT_SYMBOL_GPL drivers/mfd/madera 0x05113c80 cs47l92_32bit_spi_regmap +EXPORT_SYMBOL_GPL drivers/mfd/madera 0x051ce0c0 cs47l92_16bit_spi_regmap +EXPORT_SYMBOL_GPL drivers/mfd/madera 0x0f379262 madera_of_match +EXPORT_SYMBOL_GPL drivers/mfd/madera 0x1837cbb5 cs47l35_16bit_spi_regmap +EXPORT_SYMBOL_GPL drivers/mfd/madera 0x183a17f5 cs47l35_32bit_spi_regmap +EXPORT_SYMBOL_GPL drivers/mfd/madera 0x2a4550cd cs47l85_16bit_spi_regmap +EXPORT_SYMBOL_GPL drivers/mfd/madera 0x2a488c8d cs47l85_32bit_spi_regmap +EXPORT_SYMBOL_GPL drivers/mfd/madera 0x3290277d cs47l90_16bit_i2c_regmap +EXPORT_SYMBOL_GPL drivers/mfd/madera 0x329dfb3d cs47l90_32bit_i2c_regmap +EXPORT_SYMBOL_GPL drivers/mfd/madera 0x4624218c cs47l92_16bit_i2c_regmap +EXPORT_SYMBOL_GPL drivers/mfd/madera 0x4629fdcc cs47l92_32bit_i2c_regmap +EXPORT_SYMBOL_GPL drivers/mfd/madera 0x53c33b08 cs47l35_patch +EXPORT_SYMBOL_GPL drivers/mfd/madera 0x5b02d6b9 cs47l35_32bit_i2c_regmap +EXPORT_SYMBOL_GPL drivers/mfd/madera 0x5b0f0af9 cs47l35_16bit_i2c_regmap +EXPORT_SYMBOL_GPL drivers/mfd/madera 0x69704dc1 cs47l85_32bit_i2c_regmap +EXPORT_SYMBOL_GPL drivers/mfd/madera 0x697d9181 cs47l85_16bit_i2c_regmap +EXPORT_SYMBOL_GPL drivers/mfd/madera 0x71a53a71 cs47l90_32bit_spi_regmap +EXPORT_SYMBOL_GPL drivers/mfd/madera 0x71a8e631 cs47l90_16bit_spi_regmap +EXPORT_SYMBOL_GPL drivers/mfd/madera 0x75256157 cs47l85_patch +EXPORT_SYMBOL_GPL drivers/mfd/madera 0x8f763860 madera_dev_init +EXPORT_SYMBOL_GPL drivers/mfd/madera 0x91c17c75 cs47l15_16bit_i2c_regmap +EXPORT_SYMBOL_GPL drivers/mfd/madera 0x91cca035 cs47l15_32bit_i2c_regmap +EXPORT_SYMBOL_GPL drivers/mfd/madera 0x99d53061 cs47l90_patch +EXPORT_SYMBOL_GPL drivers/mfd/madera 0x9d9ee38e cs47l15_patch +EXPORT_SYMBOL_GPL drivers/mfd/madera 0xa5e92916 cs47l92_patch +EXPORT_SYMBOL_GPL drivers/mfd/madera 0xbb834675 madera_dev_exit +EXPORT_SYMBOL_GPL drivers/mfd/madera 0xd2f46179 cs47l15_32bit_spi_regmap +EXPORT_SYMBOL_GPL drivers/mfd/madera 0xd2f9bd39 cs47l15_16bit_spi_regmap +EXPORT_SYMBOL_GPL drivers/mfd/madera 0xebe384cb madera_name_from_type +EXPORT_SYMBOL_GPL drivers/mfd/madera 0xf510ba15 madera_pm_ops +EXPORT_SYMBOL_GPL drivers/mfd/mc13xxx-core 0x12799c4b mc13xxx_common_exit +EXPORT_SYMBOL_GPL drivers/mfd/mc13xxx-core 0x29dd1f51 mc13xxx_variant_mc34708 +EXPORT_SYMBOL_GPL drivers/mfd/mc13xxx-core 0x3bd2ea39 mc13xxx_variant_mc13783 +EXPORT_SYMBOL_GPL drivers/mfd/mc13xxx-core 0x7b68a119 mc13xxx_variant_mc13892 +EXPORT_SYMBOL_GPL drivers/mfd/mc13xxx-core 0xc621ca57 mc13xxx_common_init +EXPORT_SYMBOL_GPL drivers/mfd/mc13xxx-core 0xfb14f46c mc13xxx_adc_do_conversion +EXPORT_SYMBOL_GPL drivers/mfd/motorola-cpcap 0xa226dbe8 cpcap_sense_virq +EXPORT_SYMBOL_GPL drivers/mfd/pcf50633 0x139da078 pcf50633_write_block +EXPORT_SYMBOL_GPL drivers/mfd/pcf50633 0x16a47ea7 pcf50633_irq_mask +EXPORT_SYMBOL_GPL drivers/mfd/pcf50633 0x31fb4a77 pcf50633_reg_write +EXPORT_SYMBOL_GPL drivers/mfd/pcf50633 0x3e993aa7 pcf50633_reg_set_bit_mask +EXPORT_SYMBOL_GPL drivers/mfd/pcf50633 0x514ee9a9 pcf50633_irq_unmask +EXPORT_SYMBOL_GPL drivers/mfd/pcf50633 0x5b67144d pcf50633_irq_mask_get +EXPORT_SYMBOL_GPL drivers/mfd/pcf50633 0x5f79c3f0 pcf50633_register_irq +EXPORT_SYMBOL_GPL drivers/mfd/pcf50633 0x910ca002 pcf50633_reg_clear_bits +EXPORT_SYMBOL_GPL drivers/mfd/pcf50633 0xbb8acbda pcf50633_free_irq +EXPORT_SYMBOL_GPL drivers/mfd/pcf50633 0xbddfc024 pcf50633_read_block +EXPORT_SYMBOL_GPL drivers/mfd/pcf50633 0xe2ba6216 pcf50633_reg_read +EXPORT_SYMBOL_GPL drivers/mfd/pcf50633-adc 0x7b2105e1 pcf50633_adc_async_read +EXPORT_SYMBOL_GPL drivers/mfd/pcf50633-adc 0xf0a94017 pcf50633_adc_sync_read +EXPORT_SYMBOL_GPL drivers/mfd/pcf50633-gpio 0x30b89f3a pcf50633_gpio_power_supply_set +EXPORT_SYMBOL_GPL drivers/mfd/pcf50633-gpio 0x59029ae9 pcf50633_gpio_invert_get +EXPORT_SYMBOL_GPL drivers/mfd/pcf50633-gpio 0x733e8f5e pcf50633_gpio_invert_set +EXPORT_SYMBOL_GPL drivers/mfd/pcf50633-gpio 0x7b550fc5 pcf50633_gpio_set +EXPORT_SYMBOL_GPL drivers/mfd/pcf50633-gpio 0x7eb5066d pcf50633_gpio_get +EXPORT_SYMBOL_GPL drivers/mfd/rave-sp 0xabea57ea devm_rave_sp_register_event_notifier +EXPORT_SYMBOL_GPL drivers/mfd/rave-sp 0xeecaf484 rave_sp_exec +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 0x056eae41 devm_regmap_init_si476x +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0x11852e37 si476x_core_cmd_am_tune_freq +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0x18554fe2 si476x_core_is_a_secondary_tuner +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0x1df5ed2d si476x_core_has_am +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0x2965e447 si476x_core_cmd_agc_status +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0x356772a1 si476x_core_cmd_func_info +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0x3d6a9e22 si476x_core_cmd_fm_phase_diversity +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0x49974868 si476x_core_cmd_power_up +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0x54382b30 si476x_core_cmd_fm_rds_status +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0x6001689b si476x_core_cmd_am_seek_start +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0x6fa71f61 si476x_core_cmd_intb_pin_cfg +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0x75d412e0 si476x_core_stop +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0x7f5f99f2 si476x_core_cmd_set_property +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0x8202f184 si476x_core_cmd_ic_link_gpo_ctl_pin_cfg +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0x84233c20 si476x_core_is_in_am_receiver_mode +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0x8ca09753 si476x_core_cmd_fm_tune_freq +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0xa14667c0 si476x_core_cmd_fm_phase_div_status +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0xa80cf8b4 si476x_core_cmd_fm_rds_blockcount +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0xb40c5a2a si476x_core_cmd_am_rsq_status +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0xb5f3e536 si476x_core_cmd_am_acf_status +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0xb794ed78 si476x_core_cmd_get_property +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0xbd63235c si476x_core_cmd_fm_seek_start +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0xc212968a si476x_core_cmd_dig_audio_pin_cfg +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0xc47279eb si476x_core_cmd_zif_pin_cfg +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0xc6e14624 si476x_core_cmd_fm_acf_status +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0xcbb17063 si476x_core_has_diversity +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0xcbf9acb0 si476x_core_i2c_xfer +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0xd245ab9f si476x_core_is_powered_up +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0xd966ff6e si476x_core_start +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0xdb027e34 si476x_core_set_power_state +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0xdf77e5dd si476x_core_cmd_power_down +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0xf1216350 si476x_core_is_a_primary_tuner +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0xf14fc2c4 si476x_core_cmd_ana_audio_pin_cfg +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0xfc8fc621 si476x_core_cmd_fm_rsq_status +EXPORT_SYMBOL_GPL drivers/mfd/ssbi 0xd69c4e6c ssbi_write +EXPORT_SYMBOL_GPL drivers/mfd/ssbi 0xe2e16424 ssbi_read +EXPORT_SYMBOL_GPL drivers/mfd/stmfx 0x261c1b33 stmfx_function_disable +EXPORT_SYMBOL_GPL drivers/mfd/stmfx 0x533380d6 stmfx_function_enable +EXPORT_SYMBOL_GPL drivers/mfd/ti_am335x_tscadc 0x636bcbb7 am335x_tsc_se_set_once +EXPORT_SYMBOL_GPL drivers/mfd/ti_am335x_tscadc 0x66aff403 am335x_tsc_se_clr +EXPORT_SYMBOL_GPL drivers/mfd/ti_am335x_tscadc 0x7711aa48 am335x_tsc_se_set_cache +EXPORT_SYMBOL_GPL drivers/mfd/ti_am335x_tscadc 0x99ff82ca am335x_tsc_se_adc_done +EXPORT_SYMBOL_GPL drivers/mfd/tps65218 0x1a11ec1b tps65218_reg_write +EXPORT_SYMBOL_GPL drivers/mfd/tps65218 0x6f25d964 tps65218_set_bits +EXPORT_SYMBOL_GPL drivers/mfd/tps65218 0xbb466320 tps65218_clear_bits +EXPORT_SYMBOL_GPL drivers/mfd/ucb1400_core 0x6dc8b147 ucb1400_adc_read +EXPORT_SYMBOL_GPL drivers/misc/cardreader/alcor_pci 0x062d95ca alcor_read8 +EXPORT_SYMBOL_GPL drivers/misc/cardreader/alcor_pci 0x53c61183 alcor_write32 +EXPORT_SYMBOL_GPL drivers/misc/cardreader/alcor_pci 0xad137f38 alcor_read32be +EXPORT_SYMBOL_GPL drivers/misc/cardreader/alcor_pci 0xb2c72ac8 alcor_read32 +EXPORT_SYMBOL_GPL drivers/misc/cardreader/alcor_pci 0xcc76fd4c alcor_write32be +EXPORT_SYMBOL_GPL drivers/misc/cardreader/alcor_pci 0xdc3289b5 alcor_write8 +EXPORT_SYMBOL_GPL drivers/misc/cardreader/alcor_pci 0xfd69ad46 alcor_write16 +EXPORT_SYMBOL_GPL drivers/misc/cardreader/rtsx_pci 0x0c44ae72 rtsx_pci_card_pull_ctl_enable +EXPORT_SYMBOL_GPL drivers/misc/cardreader/rtsx_pci 0x0c4b0b93 rtsx_pci_read_ppbuf +EXPORT_SYMBOL_GPL drivers/misc/cardreader/rtsx_pci 0x24efede4 rtsx_pci_add_cmd +EXPORT_SYMBOL_GPL drivers/misc/cardreader/rtsx_pci 0x2a30c8c7 rtsx_pci_complete_unfinished_transfer +EXPORT_SYMBOL_GPL drivers/misc/cardreader/rtsx_pci 0x39dba8c8 rtsx_pci_card_power_off +EXPORT_SYMBOL_GPL drivers/misc/cardreader/rtsx_pci 0x472f4ecc rtsx_pci_read_register +EXPORT_SYMBOL_GPL drivers/misc/cardreader/rtsx_pci 0x587747cf rtsx_pci_stop_cmd +EXPORT_SYMBOL_GPL drivers/misc/cardreader/rtsx_pci 0x5f6a0f0c rtsx_pci_transfer_data +EXPORT_SYMBOL_GPL drivers/misc/cardreader/rtsx_pci 0x6267d4b2 rtsx_pci_dma_unmap_sg +EXPORT_SYMBOL_GPL drivers/misc/cardreader/rtsx_pci 0x6c81b963 rtsx_pci_card_pull_ctl_disable +EXPORT_SYMBOL_GPL drivers/misc/cardreader/rtsx_pci 0x85cdb390 rtsx_pci_card_exclusive_check +EXPORT_SYMBOL_GPL drivers/misc/cardreader/rtsx_pci 0x87f133f3 rtsx_pci_write_ppbuf +EXPORT_SYMBOL_GPL drivers/misc/cardreader/rtsx_pci 0x9c065870 rtsx_pci_dma_map_sg +EXPORT_SYMBOL_GPL drivers/misc/cardreader/rtsx_pci 0xadae69a7 rtsx_pci_dma_transfer +EXPORT_SYMBOL_GPL drivers/misc/cardreader/rtsx_pci 0xaffe5c64 rtsx_pci_card_power_on +EXPORT_SYMBOL_GPL drivers/misc/cardreader/rtsx_pci 0xb3efbcd0 rtsx_pci_read_phy_register +EXPORT_SYMBOL_GPL drivers/misc/cardreader/rtsx_pci 0xbf622554 rtsx_pci_send_cmd_no_wait +EXPORT_SYMBOL_GPL drivers/misc/cardreader/rtsx_pci 0xd5a169be rtsx_pci_card_exist +EXPORT_SYMBOL_GPL drivers/misc/cardreader/rtsx_pci 0xdc5c4243 rtsx_pci_send_cmd +EXPORT_SYMBOL_GPL drivers/misc/cardreader/rtsx_pci 0xe6e60199 rtsx_pci_start_run +EXPORT_SYMBOL_GPL drivers/misc/cardreader/rtsx_pci 0xe7089459 rtsx_pci_write_phy_register +EXPORT_SYMBOL_GPL drivers/misc/cardreader/rtsx_pci 0xe75e1cc1 rtsx_pci_switch_clock +EXPORT_SYMBOL_GPL drivers/misc/cardreader/rtsx_pci 0xe82ede62 rtsx_pci_write_register +EXPORT_SYMBOL_GPL drivers/misc/cardreader/rtsx_pci 0xfaabdc78 rtsx_pci_switch_output_voltage +EXPORT_SYMBOL_GPL drivers/misc/cardreader/rtsx_usb 0x002aeac3 rtsx_usb_write_ppbuf +EXPORT_SYMBOL_GPL drivers/misc/cardreader/rtsx_usb 0x01dcdf13 rtsx_usb_read_register +EXPORT_SYMBOL_GPL drivers/misc/cardreader/rtsx_usb 0x10689be7 rtsx_usb_get_card_status +EXPORT_SYMBOL_GPL drivers/misc/cardreader/rtsx_usb 0x17b12c5c rtsx_usb_send_cmd +EXPORT_SYMBOL_GPL drivers/misc/cardreader/rtsx_usb 0x290037f1 rtsx_usb_get_rsp +EXPORT_SYMBOL_GPL drivers/misc/cardreader/rtsx_usb 0x5cd10ef3 rtsx_usb_add_cmd +EXPORT_SYMBOL_GPL drivers/misc/cardreader/rtsx_usb 0x73fcc5c0 rtsx_usb_ep0_write_register +EXPORT_SYMBOL_GPL drivers/misc/cardreader/rtsx_usb 0x9dcc773a rtsx_usb_switch_clock +EXPORT_SYMBOL_GPL drivers/misc/cardreader/rtsx_usb 0xabd5a94b rtsx_usb_ep0_read_register +EXPORT_SYMBOL_GPL drivers/misc/cardreader/rtsx_usb 0xcaf807d0 rtsx_usb_write_register +EXPORT_SYMBOL_GPL drivers/misc/cardreader/rtsx_usb 0xe3aef8dc rtsx_usb_card_exclusive_check +EXPORT_SYMBOL_GPL drivers/misc/cardreader/rtsx_usb 0xf45e5c68 rtsx_usb_transfer_data +EXPORT_SYMBOL_GPL drivers/misc/cardreader/rtsx_usb 0xf60e7a5e rtsx_usb_read_ppbuf +EXPORT_SYMBOL_GPL drivers/misc/cb710/cb710 0x0f27cb18 cb710_pci_update_config_reg +EXPORT_SYMBOL_GPL drivers/misc/cb710/cb710 0x66d51b07 cb710_set_irq_handler +EXPORT_SYMBOL_GPL drivers/misc/cb710/cb710 0x7f5a5dea cb710_sg_dwiter_read_next_block +EXPORT_SYMBOL_GPL drivers/misc/cb710/cb710 0xa28730c2 cb710_sg_dwiter_write_next_block +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 0x016c9ed8 enclosure_for_each_device +EXPORT_SYMBOL_GPL drivers/misc/enclosure 0x346f1765 enclosure_component_alloc +EXPORT_SYMBOL_GPL drivers/misc/enclosure 0x69237ae2 enclosure_remove_device +EXPORT_SYMBOL_GPL drivers/misc/enclosure 0x6fb7ca94 enclosure_unregister +EXPORT_SYMBOL_GPL drivers/misc/enclosure 0x8bcd16e9 enclosure_component_register +EXPORT_SYMBOL_GPL drivers/misc/enclosure 0x8ea87bc7 enclosure_register +EXPORT_SYMBOL_GPL drivers/misc/enclosure 0xb86e950b enclosure_add_device +EXPORT_SYMBOL_GPL drivers/misc/enclosure 0xba8e0530 enclosure_find +EXPORT_SYMBOL_GPL drivers/misc/lis3lv02d/lis3lv02d 0x0bb15869 lis3_dev +EXPORT_SYMBOL_GPL drivers/misc/lis3lv02d/lis3lv02d 0x3062965b lis3lv02d_joystick_enable +EXPORT_SYMBOL_GPL drivers/misc/lis3lv02d/lis3lv02d 0x44289af2 lis3lv02d_init_dt +EXPORT_SYMBOL_GPL drivers/misc/lis3lv02d/lis3lv02d 0x9663d09d lis3lv02d_poweron +EXPORT_SYMBOL_GPL drivers/misc/lis3lv02d/lis3lv02d 0xa3affdfd lis3lv02d_joystick_disable +EXPORT_SYMBOL_GPL drivers/misc/lis3lv02d/lis3lv02d 0xaf9827ed lis3lv02d_init_device +EXPORT_SYMBOL_GPL drivers/misc/lis3lv02d/lis3lv02d 0xf8f5ad2e lis3lv02d_poweroff +EXPORT_SYMBOL_GPL drivers/misc/lis3lv02d/lis3lv02d 0xfd72a2f3 lis3lv02d_remove_fs +EXPORT_SYMBOL_GPL drivers/misc/ti-st/st_drv 0x091fbd7e st_register +EXPORT_SYMBOL_GPL drivers/misc/ti-st/st_drv 0xa31892ca st_unregister +EXPORT_SYMBOL_GPL drivers/misc/uacce/uacce 0x12899426 uacce_remove +EXPORT_SYMBOL_GPL drivers/misc/uacce/uacce 0x6723d9b7 uacce_alloc +EXPORT_SYMBOL_GPL drivers/misc/uacce/uacce 0xd235afff uacce_register +EXPORT_SYMBOL_GPL drivers/mmc/host/dw_mmc-pltfm 0x7277f678 dw_mci_pltfm_register +EXPORT_SYMBOL_GPL drivers/mmc/host/dw_mmc-pltfm 0x7a1842ff dw_mci_pltfm_pmops +EXPORT_SYMBOL_GPL drivers/mmc/host/dw_mmc-pltfm 0x940bf891 dw_mci_pltfm_remove +EXPORT_SYMBOL_GPL drivers/mmc/host/renesas_sdhi_core 0x973f538d renesas_sdhi_probe +EXPORT_SYMBOL_GPL drivers/mmc/host/renesas_sdhi_core 0xaf38a9b0 renesas_sdhi_remove +EXPORT_SYMBOL_GPL drivers/mmc/host/tmio_mmc_core 0x0f739337 tmio_mmc_host_runtime_suspend +EXPORT_SYMBOL_GPL drivers/mmc/host/tmio_mmc_core 0x378f2335 tmio_mmc_irq +EXPORT_SYMBOL_GPL drivers/mmc/host/tmio_mmc_core 0x3d7c106d tmio_mmc_host_runtime_resume +EXPORT_SYMBOL_GPL drivers/mmc/host/tmio_mmc_core 0x3f1e2b7a tmio_mmc_host_alloc +EXPORT_SYMBOL_GPL drivers/mmc/host/tmio_mmc_core 0x604b18c7 tmio_mmc_host_probe +EXPORT_SYMBOL_GPL drivers/mmc/host/tmio_mmc_core 0x6d16467e tmio_mmc_enable_mmc_irqs +EXPORT_SYMBOL_GPL drivers/mmc/host/tmio_mmc_core 0x924507de tmio_mmc_disable_mmc_irqs +EXPORT_SYMBOL_GPL drivers/mmc/host/tmio_mmc_core 0xb81c7286 tmio_mmc_do_data_irq +EXPORT_SYMBOL_GPL drivers/mmc/host/tmio_mmc_core 0xc067e5b6 tmio_mmc_host_free +EXPORT_SYMBOL_GPL drivers/mmc/host/tmio_mmc_core 0xc49a65d7 tmio_mmc_host_remove +EXPORT_SYMBOL_GPL drivers/most/most_core 0x02dd5d20 most_register_configfs_subsys +EXPORT_SYMBOL_GPL drivers/most/most_core 0x046632a1 most_submit_mbo +EXPORT_SYMBOL_GPL drivers/most/most_core 0x25c5c093 most_deregister_component +EXPORT_SYMBOL_GPL drivers/most/most_core 0x4f21151a most_start_channel +EXPORT_SYMBOL_GPL drivers/most/most_core 0x72fd0efe most_get_mbo +EXPORT_SYMBOL_GPL drivers/most/most_core 0x7b1f83aa most_deregister_interface +EXPORT_SYMBOL_GPL drivers/most/most_core 0x9021e16c most_register_interface +EXPORT_SYMBOL_GPL drivers/most/most_core 0x9b2bc572 most_register_component +EXPORT_SYMBOL_GPL drivers/most/most_core 0xaff2397a most_stop_enqueue +EXPORT_SYMBOL_GPL drivers/most/most_core 0xb5023b1d channel_has_mbo +EXPORT_SYMBOL_GPL drivers/most/most_core 0xc252160c most_resume_enqueue +EXPORT_SYMBOL_GPL drivers/most/most_core 0xdf7e10a3 most_deregister_configfs_subsys +EXPORT_SYMBOL_GPL drivers/most/most_core 0xe39c3be3 most_put_mbo +EXPORT_SYMBOL_GPL drivers/most/most_core 0xf1318904 most_stop_channel +EXPORT_SYMBOL_GPL drivers/mtd/chips/cfi_cmdset_0001 0x5f94b9b0 cfi_cmdset_0200 +EXPORT_SYMBOL_GPL drivers/mtd/chips/cfi_cmdset_0001 0x9da3b9ce cfi_cmdset_0001 +EXPORT_SYMBOL_GPL drivers/mtd/chips/cfi_cmdset_0001 0xa28a9c26 cfi_cmdset_0003 +EXPORT_SYMBOL_GPL drivers/mtd/chips/cfi_cmdset_0002 0x4ee7c154 cfi_cmdset_0701 +EXPORT_SYMBOL_GPL drivers/mtd/chips/cfi_cmdset_0002 0xbd1e0ed2 cfi_cmdset_0002 +EXPORT_SYMBOL_GPL drivers/mtd/chips/cfi_cmdset_0002 0xc34c4502 cfi_cmdset_0006 +EXPORT_SYMBOL_GPL drivers/mtd/chips/cfi_cmdset_0020 0x2cd96855 cfi_cmdset_0020 +EXPORT_SYMBOL_GPL drivers/mtd/chips/cfi_util 0x20c4a897 cfi_qry_present +EXPORT_SYMBOL_GPL drivers/mtd/chips/cfi_util 0x86f64086 cfi_qry_mode_on +EXPORT_SYMBOL_GPL drivers/mtd/chips/cfi_util 0x9db4598a cfi_qry_mode_off +EXPORT_SYMBOL_GPL drivers/mtd/hyperbus/hyperbus-core 0x5403c400 hyperbus_unregister_device +EXPORT_SYMBOL_GPL drivers/mtd/hyperbus/hyperbus-core 0xe2882614 hyperbus_register_device +EXPORT_SYMBOL_GPL drivers/mtd/nand/onenand/onenand 0x1d003a59 onenand_release +EXPORT_SYMBOL_GPL drivers/mtd/nand/onenand/onenand 0xe0577f76 onenand_scan +EXPORT_SYMBOL_GPL drivers/mtd/nand/raw/brcmnand/brcmnand 0x597ad476 brcmnand_pm_ops +EXPORT_SYMBOL_GPL drivers/mtd/nand/raw/brcmnand/brcmnand 0x9e694e09 brcmnand_remove +EXPORT_SYMBOL_GPL drivers/mtd/nand/raw/brcmnand/brcmnand 0xceaefa50 brcmnand_probe +EXPORT_SYMBOL_GPL drivers/mtd/nand/raw/denali 0x681f2095 denali_chip_init +EXPORT_SYMBOL_GPL drivers/mtd/nand/raw/sm_common 0xefb8f1fe sm_register_device +EXPORT_SYMBOL_GPL drivers/mtd/spi-nor/spi-nor 0x09688d2f spi_nor_scan +EXPORT_SYMBOL_GPL drivers/mtd/spi-nor/spi-nor 0xe2c093fa spi_nor_restore +EXPORT_SYMBOL_GPL drivers/mtd/ubi/ubi 0x06eccb9d ubi_leb_map +EXPORT_SYMBOL_GPL drivers/mtd/ubi/ubi 0x12243de1 ubi_open_volume +EXPORT_SYMBOL_GPL drivers/mtd/ubi/ubi 0x23550bf0 ubi_leb_unmap +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 0x594d64fb ubi_close_volume +EXPORT_SYMBOL_GPL drivers/mtd/ubi/ubi 0x66011ab6 ubi_get_device_info +EXPORT_SYMBOL_GPL drivers/mtd/ubi/ubi 0x6dcb5ee8 ubi_open_volume_nm +EXPORT_SYMBOL_GPL drivers/mtd/ubi/ubi 0x7d919dcf ubi_get_volume_info +EXPORT_SYMBOL_GPL drivers/mtd/ubi/ubi 0x85a8ee76 ubi_unregister_volume_notifier +EXPORT_SYMBOL_GPL drivers/mtd/ubi/ubi 0x8acefaaf ubi_do_get_device_info +EXPORT_SYMBOL_GPL drivers/mtd/ubi/ubi 0xb56dbdb4 ubi_leb_write +EXPORT_SYMBOL_GPL drivers/mtd/ubi/ubi 0xb809ccf0 ubi_leb_read_sg +EXPORT_SYMBOL_GPL drivers/mtd/ubi/ubi 0xc74a856c ubi_leb_read +EXPORT_SYMBOL_GPL drivers/mtd/ubi/ubi 0xd59bfd3e ubi_leb_change +EXPORT_SYMBOL_GPL drivers/mtd/ubi/ubi 0xe2887ec3 ubi_is_mapped +EXPORT_SYMBOL_GPL drivers/mtd/ubi/ubi 0xf5ee9ba8 ubi_register_volume_notifier +EXPORT_SYMBOL_GPL drivers/mtd/ubi/ubi 0xfe28ab0c ubi_open_volume_path +EXPORT_SYMBOL_GPL drivers/mtd/ubi/ubi 0xff5f361b ubi_leb_erase +EXPORT_SYMBOL_GPL drivers/mux/mux-core 0x0d9b8e96 mux_chip_alloc +EXPORT_SYMBOL_GPL drivers/mux/mux-core 0x1387c743 mux_control_try_select +EXPORT_SYMBOL_GPL drivers/mux/mux-core 0x30100da3 mux_control_get +EXPORT_SYMBOL_GPL drivers/mux/mux-core 0x38c769ef mux_chip_register +EXPORT_SYMBOL_GPL drivers/mux/mux-core 0x427f4c8d mux_chip_unregister +EXPORT_SYMBOL_GPL drivers/mux/mux-core 0x45358e2f mux_control_put +EXPORT_SYMBOL_GPL drivers/mux/mux-core 0x4f70ef3f devm_mux_chip_register +EXPORT_SYMBOL_GPL drivers/mux/mux-core 0x619bb89d mux_control_select +EXPORT_SYMBOL_GPL drivers/mux/mux-core 0x66869d91 mux_control_deselect +EXPORT_SYMBOL_GPL drivers/mux/mux-core 0x8f7203c4 mux_control_states +EXPORT_SYMBOL_GPL drivers/mux/mux-core 0x97aadb04 mux_chip_free +EXPORT_SYMBOL_GPL drivers/mux/mux-core 0xddc4a6da devm_mux_chip_alloc +EXPORT_SYMBOL_GPL drivers/mux/mux-core 0xe6891732 devm_mux_control_get +EXPORT_SYMBOL_GPL drivers/net/arcnet/arcnet 0x41c2a784 devm_arcnet_led_init +EXPORT_SYMBOL_GPL drivers/net/arcnet/arcnet 0xaccb4349 arcnet_led_event +EXPORT_SYMBOL_GPL drivers/net/bareudp 0x1068b92a bareudp_dev_create +EXPORT_SYMBOL_GPL drivers/net/can/c_can/c_can 0x024cda9b unregister_c_can_dev +EXPORT_SYMBOL_GPL drivers/net/can/c_can/c_can 0x429722a5 c_can_power_down +EXPORT_SYMBOL_GPL drivers/net/can/c_can/c_can 0x4a9017f2 free_c_can_dev +EXPORT_SYMBOL_GPL drivers/net/can/c_can/c_can 0x7b102b42 c_can_power_up +EXPORT_SYMBOL_GPL drivers/net/can/c_can/c_can 0xa9a4d2f1 register_c_can_dev +EXPORT_SYMBOL_GPL drivers/net/can/c_can/c_can 0xea0d3c87 alloc_c_can_dev +EXPORT_SYMBOL_GPL drivers/net/can/can-dev 0x123b1b0a can_bus_off +EXPORT_SYMBOL_GPL drivers/net/can/can-dev 0x16081ffb can_dlc2len +EXPORT_SYMBOL_GPL drivers/net/can/can-dev 0x20086742 alloc_canfd_skb +EXPORT_SYMBOL_GPL drivers/net/can/can-dev 0x20b4249d can_put_echo_skb +EXPORT_SYMBOL_GPL drivers/net/can/can-dev 0x30ab151a can_rx_offload_add_timestamp +EXPORT_SYMBOL_GPL drivers/net/can/can-dev 0x3b3a8a9e free_candev +EXPORT_SYMBOL_GPL drivers/net/can/can-dev 0x3de4ba28 close_candev +EXPORT_SYMBOL_GPL drivers/net/can/can-dev 0x3e02ac7d can_rx_offload_enable +EXPORT_SYMBOL_GPL drivers/net/can/can-dev 0x4151054a can_rx_offload_irq_offload_fifo +EXPORT_SYMBOL_GPL drivers/net/can/can-dev 0x73c16630 can_change_mtu +EXPORT_SYMBOL_GPL drivers/net/can/can-dev 0x7634bb16 register_candev +EXPORT_SYMBOL_GPL drivers/net/can/can-dev 0x7879d4bf safe_candev_priv +EXPORT_SYMBOL_GPL drivers/net/can/can-dev 0x8762619a can_len2dlc +EXPORT_SYMBOL_GPL drivers/net/can/can-dev 0x8a79dc22 alloc_can_err_skb +EXPORT_SYMBOL_GPL drivers/net/can/can-dev 0x8b3ac088 can_rx_offload_irq_offload_timestamp +EXPORT_SYMBOL_GPL drivers/net/can/can-dev 0x8c78a9a1 can_change_state +EXPORT_SYMBOL_GPL drivers/net/can/can-dev 0x8e748504 unregister_candev +EXPORT_SYMBOL_GPL drivers/net/can/can-dev 0x9240ba3a can_get_echo_skb +EXPORT_SYMBOL_GPL drivers/net/can/can-dev 0x92a40677 can_free_echo_skb +EXPORT_SYMBOL_GPL drivers/net/can/can-dev 0xa60f2b1d can_rx_offload_del +EXPORT_SYMBOL_GPL drivers/net/can/can-dev 0xa6f83a59 of_can_transceiver +EXPORT_SYMBOL_GPL drivers/net/can/can-dev 0xadbc5a3c can_rx_offload_add_fifo +EXPORT_SYMBOL_GPL drivers/net/can/can-dev 0xd5e7ae2c alloc_can_skb +EXPORT_SYMBOL_GPL drivers/net/can/can-dev 0xdcd2f4d9 can_rx_offload_get_echo_skb +EXPORT_SYMBOL_GPL drivers/net/can/can-dev 0xdfcf0583 can_rx_offload_queue_tail +EXPORT_SYMBOL_GPL drivers/net/can/can-dev 0xe384edf6 open_candev +EXPORT_SYMBOL_GPL drivers/net/can/can-dev 0xe85000e2 alloc_candev_mqs +EXPORT_SYMBOL_GPL drivers/net/can/can-dev 0xfe2b8fe8 can_rx_offload_queue_sorted +EXPORT_SYMBOL_GPL drivers/net/can/cc770/cc770 0x37d8f3a1 register_cc770dev +EXPORT_SYMBOL_GPL drivers/net/can/cc770/cc770 0x43087649 free_cc770dev +EXPORT_SYMBOL_GPL drivers/net/can/cc770/cc770 0x85796450 unregister_cc770dev +EXPORT_SYMBOL_GPL drivers/net/can/cc770/cc770 0xbb23c0e1 alloc_cc770dev +EXPORT_SYMBOL_GPL drivers/net/can/m_can/m_can 0x042de483 m_can_class_suspend +EXPORT_SYMBOL_GPL drivers/net/can/m_can/m_can 0x0c6891af m_can_class_allocate_dev +EXPORT_SYMBOL_GPL drivers/net/can/m_can/m_can 0x13d0aa37 m_can_class_register +EXPORT_SYMBOL_GPL drivers/net/can/m_can/m_can 0x145e1187 m_can_class_resume +EXPORT_SYMBOL_GPL drivers/net/can/m_can/m_can 0x6687fa0e m_can_class_unregister +EXPORT_SYMBOL_GPL drivers/net/can/m_can/m_can 0x8bbec601 m_can_class_get_clocks +EXPORT_SYMBOL_GPL drivers/net/can/m_can/m_can 0x8d6e57f6 m_can_class_free_dev +EXPORT_SYMBOL_GPL drivers/net/can/m_can/m_can 0xd15b42d7 m_can_init_ram +EXPORT_SYMBOL_GPL drivers/net/can/sja1000/sja1000 0x49ebd0d2 sja1000_interrupt +EXPORT_SYMBOL_GPL drivers/net/can/sja1000/sja1000 0xa9148394 unregister_sja1000dev +EXPORT_SYMBOL_GPL drivers/net/can/sja1000/sja1000 0xc1ad9db5 free_sja1000dev +EXPORT_SYMBOL_GPL drivers/net/can/sja1000/sja1000 0xcad8e72e register_sja1000dev +EXPORT_SYMBOL_GPL drivers/net/can/sja1000/sja1000 0xed0f4bf4 alloc_sja1000dev +EXPORT_SYMBOL_GPL drivers/net/dsa/lan9303-core 0x9691810d lan9303_indirect_phy_ops +EXPORT_SYMBOL_GPL drivers/net/dsa/microchip/ksz_common 0x1254b18d ksz_port_vlan_prepare +EXPORT_SYMBOL_GPL drivers/net/dsa/microchip/ksz_common 0x1917fc4e ksz_phy_write16 +EXPORT_SYMBOL_GPL drivers/net/dsa/microchip/ksz_common 0x2949ecd6 ksz_update_port_member +EXPORT_SYMBOL_GPL drivers/net/dsa/microchip/ksz_common 0x40f6cff0 ksz_port_fdb_dump +EXPORT_SYMBOL_GPL drivers/net/dsa/microchip/ksz_common 0x54cd2149 ksz_port_bridge_join +EXPORT_SYMBOL_GPL drivers/net/dsa/microchip/ksz_common 0x575a2220 ksz_init_mib_timer +EXPORT_SYMBOL_GPL drivers/net/dsa/microchip/ksz_common 0x5deb2611 ksz_port_mdb_add +EXPORT_SYMBOL_GPL drivers/net/dsa/microchip/ksz_common 0x65141132 ksz_port_fast_age +EXPORT_SYMBOL_GPL drivers/net/dsa/microchip/ksz_common 0x662a9be5 ksz_sset_count +EXPORT_SYMBOL_GPL drivers/net/dsa/microchip/ksz_common 0x769a94e0 ksz_adjust_link +EXPORT_SYMBOL_GPL drivers/net/dsa/microchip/ksz_common 0x93b70094 ksz_port_mdb_del +EXPORT_SYMBOL_GPL drivers/net/dsa/microchip/ksz_common 0xc3bbfeca ksz_port_mdb_prepare +EXPORT_SYMBOL_GPL drivers/net/dsa/microchip/ksz_common 0xe31248f5 ksz_port_bridge_leave +EXPORT_SYMBOL_GPL drivers/net/dsa/microchip/ksz_common 0xe35ce208 ksz_get_ethtool_stats +EXPORT_SYMBOL_GPL drivers/net/dsa/microchip/ksz_common 0xea23609f ksz_disable_port +EXPORT_SYMBOL_GPL drivers/net/dsa/microchip/ksz_common 0xfac193b8 ksz_enable_port +EXPORT_SYMBOL_GPL drivers/net/dsa/microchip/ksz_common 0xfe725b03 ksz_phy_read16 +EXPORT_SYMBOL_GPL drivers/net/dsa/realtek-smi 0x0593b14d realtek_smi_write_reg_noack +EXPORT_SYMBOL_GPL drivers/net/dsa/realtek-smi 0x0f815a8a rtl8366rb_variant +EXPORT_SYMBOL_GPL drivers/net/dsa/realtek-smi 0x1d7c807e rtl8366_get_ethtool_stats +EXPORT_SYMBOL_GPL drivers/net/dsa/realtek-smi 0x29cd66de rtl8366_get_strings +EXPORT_SYMBOL_GPL drivers/net/dsa/realtek-smi 0x6c791216 rtl8366_enable_vlan +EXPORT_SYMBOL_GPL drivers/net/dsa/realtek-smi 0x6df938ba rtl8366_vlan_add +EXPORT_SYMBOL_GPL drivers/net/dsa/realtek-smi 0x72efcbb9 rtl8366_enable_vlan4k +EXPORT_SYMBOL_GPL drivers/net/dsa/realtek-smi 0x85018f06 rtl8366_set_vlan +EXPORT_SYMBOL_GPL drivers/net/dsa/realtek-smi 0x90f6251c rtl8366_vlan_prepare +EXPORT_SYMBOL_GPL drivers/net/dsa/realtek-smi 0x9d974fe8 rtl8366_mc_is_used +EXPORT_SYMBOL_GPL drivers/net/dsa/realtek-smi 0xa1914ccf rtl8366_reset_vlan +EXPORT_SYMBOL_GPL drivers/net/dsa/realtek-smi 0xa4f0961e rtl8366_get_sset_count +EXPORT_SYMBOL_GPL drivers/net/dsa/realtek-smi 0xb823235f rtl8366_init_vlan +EXPORT_SYMBOL_GPL drivers/net/dsa/realtek-smi 0xea1604e2 rtl8366_vlan_filtering +EXPORT_SYMBOL_GPL drivers/net/dsa/realtek-smi 0xf0e51333 rtl8366_vlan_del +EXPORT_SYMBOL_GPL drivers/net/dsa/realtek-smi 0xf753e567 rtl8366_set_pvid +EXPORT_SYMBOL_GPL drivers/net/ethernet/arc/arc_emac 0x85342bb3 arc_emac_remove +EXPORT_SYMBOL_GPL drivers/net/ethernet/arc/arc_emac 0xdec7fead arc_emac_probe +EXPORT_SYMBOL_GPL drivers/net/ethernet/freescale/enetc/fsl-enetc-mdio 0x325987b4 enetc_hw_alloc +EXPORT_SYMBOL_GPL drivers/net/ethernet/freescale/enetc/fsl-enetc-mdio 0x94ada153 enetc_mdio_write +EXPORT_SYMBOL_GPL drivers/net/ethernet/freescale/enetc/fsl-enetc-mdio 0xd5a29c2f enetc_mdio_read +EXPORT_SYMBOL_GPL drivers/net/ethernet/freescale/enetc/fsl-enetc-mdio 0xf68ac32d enetc_mdio_lock +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x015db2b0 mlx4_buf_alloc +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x01677e19 mlx4_buf_write_mtt +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x020001e9 mlx4_set_vf_vlan +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x080cdb6d mlx4_set_vf_rate +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x0817e62a mlx4_get_counter_stats +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x0874ae97 mlx4_unregister_interface +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x0934a7af mlx4_mr_hw_change_access +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x0d1709bc mlx4_multicast_promisc_add +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x136bd6fa mlx4_multicast_attach +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x13bebef9 mlx4_srq_arm +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x168a5065 mlx4_mr_hw_write_mpt +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x1f7384dc mlx4_mr_rereg_mem_write +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x225f52f8 mlx4_qp_remove +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x22baecd2 mlx4_update_qp +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x26ffe913 mlx4_set_vf_spoofchk +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x2c792852 mlx4_unicast_promisc_add +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x2d7580e9 mlx4_cq_alloc +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x2eb71aa8 mlx4_map_sw_to_hw_steering_mode +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x2eed28a2 mlx4_flow_attach +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x3070dd48 mlx4_get_active_ports +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x310620db mlx4_get_protocol_dev +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x339eb4c9 mlx4_mw_alloc +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x3c24e37a mlx4_vf_smi_enabled +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x3e821722 mlx4_unicast_attach +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x3eb3b843 mlx4_config_roce_v2_port +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x4296da78 mlx4_multicast_promisc_remove +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x43153806 mlx4_mr_free +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x457aeba2 mlx4_qp_free +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x46f4376c mlx4_unicast_detach +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x4a3dbdbc mlx4_get_slave_default_vlan +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x4d463300 mlx4_get_devlink_port +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x4efe26b5 mlx4_srq_lookup +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x523aee63 mlx4_get_vf_stats +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x55379e9a mlx4_xrcd_alloc +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x55d7b9c6 mlx4_mr_hw_put_mpt +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x5651ffc1 mlx4_flow_steer_promisc_add +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x56d2f365 mlx4_wol_write +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x59656498 mlx4_set_vf_link_state +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x597ef4f6 mlx4_replace_zero_macs +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x5b333b06 mlx4_flow_steer_promisc_remove +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x5c9d922e mlx4_bf_free +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x6070909a mlx4_register_interface +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x645feee1 mlx4_get_vf_config +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x64e25bd8 __mlx4_cmd +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x6c164a30 mlx4_db_free +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x70ba120c mlx4_find_cached_vlan +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x74b2b33d mlx4_cq_free +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x74b88386 mlx4_mw_enable +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x769df6ec mlx4_set_vf_mac +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x772c5d9d mlx4_pd_alloc +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x773e6a09 mlx4_config_vxlan_port +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x782f2b2a mlx4_counter_free +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x7b12e802 mlx4_INIT_PORT +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x7c3ddeb3 mlx4_vf_get_enable_smi_admin +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x7e6e437c __mlx4_replace_mac +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x814c507c mlx4_flow_detach +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x816f06a6 mlx4_alloc_hwq_res +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x85748099 mlx4_qp_release_range +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x869161d2 mlx4_multicast_detach +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x8a83c0b5 mlx4_read_clock +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x8faaf084 mlx4_mr_enable +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x9114d90a mlx4_srq_query +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x937f042a mlx4_alloc_cmd_mailbox +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x95bbd6d0 mlx4_port_map_set +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x9b84dc6a mlx4_mr_alloc +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x9c70e2c2 mlx4_get_base_gid_ix +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x9d41ec39 mlx4_unbond +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x9dedee43 mlx4_mw_free +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x9f20f525 mlx4_phys_to_slaves_pport +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xa03f3b89 __mlx4_unregister_mac +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xa201048b mlx4_register_mac +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xa2c94d3f mlx4_counter_alloc +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xa389feac mlx4_bf_alloc +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xa4af1207 mlx4_hw_rule_sz +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xa52218e9 mlx4_CLOSE_PORT +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xa5866ba2 mlx4_get_internal_clock_params +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xa8b2b4ac mlx4_ACCESS_PTYS_REG +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xad5d4886 mlx4_SYNC_TPT +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xb661b24b mlx4_config_dev_retrieval +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xb91d39ff mlx4_uar_alloc +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xbcc60bea mlx4_set_admin_guid +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xbe32facb mlx4_mtt_addr +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xc03fa088 __mlx4_register_mac +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xc18cd150 mlx4_cq_resize +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xc5f6f621 mlx4_register_vlan +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xc77f7e4f mlx4_unicast_promisc_remove +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xc85c345a mlx4_qp_to_ready +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xc8b7f8a6 mlx4_get_base_qpn +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xc9bc898c mlx4_mr_rereg_mem_cleanup +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xc9e16ee2 mlx4_mtt_init +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xca379824 mlx4_wol_read +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xcb902cd1 mlx4_srq_free +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xcc90e3fa mlx4_qp_query +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xd2f06e21 mlx4_srq_alloc +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xd3546a96 mlx4_xrcd_free +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xd3d4850b mlx4_mtt_cleanup +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xd5ed84bc mlx4_free_cmd_mailbox +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xd6206f58 mlx4_cq_modify +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xd66693f8 mlx4_pd_free +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xdb93d187 mlx4_get_default_counter_index +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xdf52794d mlx4_unregister_vlan +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xe1ab2b2f mlx4_get_admin_guid +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xe21d09a5 mlx4_slave_convert_port +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xe2953379 mlx4_phys_to_slave_port +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xe5f979f6 mlx4_qp_reserve_range +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xe6ae15be mlx4_free_hwq_res +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xe7af43a4 mlx4_qp_alloc +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xe930f03e mlx4_find_cached_mac +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xeacb273f mlx4_map_sw_to_hw_steering_id +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xf020dd24 mlx4_unregister_mac +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xf0b31a6b mlx4_qp_modify +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xf0c2cf71 mlx4_write_mtt +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xf8422531 mlx4_mr_hw_change_pd +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xf963872a mlx4_bond +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xf9b36d4a mlx4_buf_free +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xfbfeba55 mlx4_phys_to_slaves_pport_actv +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xfcdb13b3 mlx4_FLOW_STEERING_IB_UC_QP_RANGE +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xfce8bbe6 mlx4_uar_free +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xfd4ba548 mlx4_vf_set_enable_smi_admin +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xfd94f57e mlx4_mr_hw_get_mpt +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xff5575fe mlx4_db_alloc +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x047f9bab mlx5_modify_nic_vport_mac_list +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 0x11e4f82e mlx5_db_alloc +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x14d1fc7d mlx5_dm_sw_icm_alloc +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x167c69de mlx5_query_nic_vport_mac_address +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x1c6a7e12 mlx5_query_nic_vport_qkey_viol_cntr +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x244ad82e mlx5_set_port_admin_status +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x2869404d mlx5_nic_vport_query_local_lb +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x2d690832 mlx5_query_port_vl_hw_cap +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x2e79a790 mlx5_query_port_link_width_oper +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x384f0adc mlx5_query_port_wol +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x3c10c190 mlx5_query_hca_vport_node_guid +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x409e6937 mlx5_query_port_max_mtu +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x4132e5a3 mlx5_query_mac_address +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x45208b71 mlx5_query_nic_vport_mtu +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x45562c8e mlx5_eswitch_get_total_vports +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x4773ee10 mlx5_accel_esp_create_xfrm +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x4c85b689 mlx5_query_nic_vport_system_image_guid +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x52b5f0e7 mlx5_modify_nic_vport_promisc +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x53ff1bea mlx5_set_port_tc_group +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x54460dd8 mlx5_query_nic_vport_node_guid +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x5d9a2380 mlx5_accel_esp_destroy_xfrm +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x643ea2fa mlx5_query_hca_vport_context +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x647eaee0 mlx5_eswitch_mode +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x6a5c06e8 mlx5_query_port_pfc +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x6a60df0e mlx5_query_hca_vport_pkey +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x70dbd27c mlx5_core_access_reg +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x77a9f111 mlx5_dm_sw_icm_dealloc +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x78b14c5c mlx5_set_port_wol +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x820695a5 mlx5_core_modify_hca_vport_context +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x85a2858c mlx5_accel_ipsec_device_caps +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x88c6f414 mlx5_set_port_tc_bw_alloc +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x8ae40bfe mlx5_query_nic_system_image_guid +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x8e06fe4c mlx5_frag_buf_alloc_node +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x91023685 mlx5_buf_free +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x98a8e0be mlx5_query_port_prio_tc +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x98fae4f9 mlx5_nic_vport_update_local_lb +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xa11ac172 mlx5_frag_buf_free +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xa75f49d6 mlx5_fill_page_array +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xaa0bb250 mlx5_query_port_tc_bw_alloc +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xaef5079b mlx5_query_port_tc_group +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xaf4969dc mlx5_nic_vport_enable_roce +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xb18e89c3 mlx5_nic_vport_affiliate_multiport +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xb47405f5 mlx5_core_query_sq_state +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xb7b36fe3 mlx5_db_free +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xb98620c4 mlx5_query_min_inline +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xbc16b3fd mlx5_query_port_oper_mtu +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xbc9e508b mlx5_core_query_ib_ppcnt +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xbe048063 mlx5_set_port_mtu +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xc6e895e8 mlx5_core_reserved_gids_count +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xc8e2fb7e mlx5_toggle_port_link +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xced54d48 mlx5_query_hca_vport_system_image_guid +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xd098de0b mlx5_query_hca_vport_gid +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xd0c9daa8 mlx5_set_port_pause +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xd6013a09 mlx5_modify_nic_vport_vlans +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xdc2c09ee mlx5_modify_port_ets_rate_limit +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xddb99271 mlx5_nic_vport_unaffiliate_multiport +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xdf78e6fe mlx5_query_port_pause +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xe1002be7 mlx5_query_port_ets_rate_limit +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xe26a6115 mlx5_set_port_prio_tc +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xe38ba5bb mlx5_core_query_vport_counter +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xe49fda63 mlx5_set_port_caps +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xe7e6cb69 mlx5_query_module_eeprom +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xeabfe58b mlx5_query_port_ptys +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xecd9027b mlx5_modify_nic_vport_mac_address +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xed27f91e mlx5_db_alloc_node +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xf03be2a6 mlx5_query_port_admin_status +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xf282ad09 mlx5_query_nic_vport_promisc +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xf783d34f mlx5_set_port_pfc +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xf9b3ffe1 mlx5_modify_nic_vport_mtu +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xfa5746e2 mlx5_query_nic_vport_min_inline +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xffb606f3 mlx5_query_nic_vport_mac_list +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xffbda035 mlx5_accel_esp_modify_xfrm +EXPORT_SYMBOL_GPL drivers/net/ethernet/microchip/encx24j600-regmap 0x08ec1397 devm_regmap_init_encx24j600 +EXPORT_SYMBOL_GPL drivers/net/ethernet/microchip/encx24j600-regmap 0x2695f52f regmap_encx24j600_spi_write +EXPORT_SYMBOL_GPL drivers/net/ethernet/microchip/encx24j600-regmap 0x4be2f862 regmap_encx24j600_spi_read +EXPORT_SYMBOL_GPL drivers/net/ethernet/mscc/mscc_ocelot_common 0x43fd66d7 ocelot_cls_flower_stats +EXPORT_SYMBOL_GPL drivers/net/ethernet/mscc/mscc_ocelot_common 0x49c75d75 ocelot_cls_flower_replace +EXPORT_SYMBOL_GPL drivers/net/ethernet/mscc/mscc_ocelot_common 0xdc8d230c ocelot_cls_flower_destroy +EXPORT_SYMBOL_GPL drivers/net/ethernet/qualcomm/qca_7k_common 0x0b28a9ad qcafrm_create_footer +EXPORT_SYMBOL_GPL drivers/net/ethernet/qualcomm/qca_7k_common 0x2b6ddf3f qcafrm_fsm_decode +EXPORT_SYMBOL_GPL drivers/net/ethernet/qualcomm/qca_7k_common 0x41da0375 qcafrm_create_header +EXPORT_SYMBOL_GPL drivers/net/ethernet/stmicro/stmmac/stmmac 0x158a9352 stmmac_resume +EXPORT_SYMBOL_GPL drivers/net/ethernet/stmicro/stmmac/stmmac 0x3be03ac9 stmmac_dvr_probe +EXPORT_SYMBOL_GPL drivers/net/ethernet/stmicro/stmmac/stmmac 0x7d879cae stmmac_dvr_remove +EXPORT_SYMBOL_GPL drivers/net/ethernet/stmicro/stmmac/stmmac 0x92d778bb stmmac_get_mac_addr +EXPORT_SYMBOL_GPL drivers/net/ethernet/stmicro/stmmac/stmmac 0xb75576f9 stmmac_suspend +EXPORT_SYMBOL_GPL drivers/net/ethernet/stmicro/stmmac/stmmac 0xd1cc24db stmmac_set_mac_addr +EXPORT_SYMBOL_GPL drivers/net/ethernet/stmicro/stmmac/stmmac-platform 0x2b163e58 stmmac_get_platform_resources +EXPORT_SYMBOL_GPL drivers/net/ethernet/stmicro/stmmac/stmmac-platform 0x2f1f4992 stmmac_pltfr_remove +EXPORT_SYMBOL_GPL drivers/net/ethernet/stmicro/stmmac/stmmac-platform 0x38edbe8c stmmac_pltfr_pm_ops +EXPORT_SYMBOL_GPL drivers/net/ethernet/stmicro/stmmac/stmmac-platform 0x4575df10 stmmac_probe_config_dt +EXPORT_SYMBOL_GPL drivers/net/ethernet/stmicro/stmmac/stmmac-platform 0xee891161 stmmac_remove_config_dt +EXPORT_SYMBOL_GPL drivers/net/ethernet/wiznet/w5100 0x49c30ecb w5100_pm_ops +EXPORT_SYMBOL_GPL drivers/net/ethernet/wiznet/w5100 0xbfe2a329 w5100_probe +EXPORT_SYMBOL_GPL drivers/net/ethernet/wiznet/w5100 0xc70af533 w5100_ops_priv +EXPORT_SYMBOL_GPL drivers/net/ethernet/wiznet/w5100 0xd877f7da w5100_remove +EXPORT_SYMBOL_GPL drivers/net/geneve 0xb95b0f73 geneve_dev_create_fb +EXPORT_SYMBOL_GPL drivers/net/ipvlan/ipvlan 0x0d988018 ipvlan_link_delete +EXPORT_SYMBOL_GPL drivers/net/ipvlan/ipvlan 0x56134f2f ipvlan_link_setup +EXPORT_SYMBOL_GPL drivers/net/ipvlan/ipvlan 0x67d15f2b ipvlan_link_new +EXPORT_SYMBOL_GPL drivers/net/ipvlan/ipvlan 0x7b2e37f7 ipvlan_link_register +EXPORT_SYMBOL_GPL drivers/net/ipvlan/ipvlan 0x8dc0bc28 ipvlan_count_rx +EXPORT_SYMBOL_GPL drivers/net/macsec 0xe257d6f1 macsec_pn_wrapped +EXPORT_SYMBOL_GPL drivers/net/macvlan 0x1c302a22 macvlan_common_setup +EXPORT_SYMBOL_GPL drivers/net/macvlan 0x5c79ac83 macvlan_dellink +EXPORT_SYMBOL_GPL drivers/net/macvlan 0xdc6b4ac8 macvlan_common_newlink +EXPORT_SYMBOL_GPL drivers/net/macvlan 0xf4a43120 macvlan_link_register +EXPORT_SYMBOL_GPL drivers/net/net_failover 0xb495edb9 net_failover_create +EXPORT_SYMBOL_GPL drivers/net/net_failover 0xbaf9edb8 net_failover_destroy +EXPORT_SYMBOL_GPL drivers/net/phy/bcm-phy-lib 0x05e1216c bcm_phy_config_intr +EXPORT_SYMBOL_GPL drivers/net/phy/bcm-phy-lib 0x0c3a1cce __bcm_phy_write_rdb +EXPORT_SYMBOL_GPL drivers/net/phy/bcm-phy-lib 0x0da985d0 bcm_phy_write_rdb +EXPORT_SYMBOL_GPL drivers/net/phy/bcm-phy-lib 0x137771d7 bcm_phy_read_exp +EXPORT_SYMBOL_GPL drivers/net/phy/bcm-phy-lib 0x139ede17 __bcm_phy_read_exp +EXPORT_SYMBOL_GPL drivers/net/phy/bcm-phy-lib 0x15792b3f bcm_phy_write_misc +EXPORT_SYMBOL_GPL drivers/net/phy/bcm-phy-lib 0x19aa62d9 bcm_phy_get_sset_count +EXPORT_SYMBOL_GPL drivers/net/phy/bcm-phy-lib 0x23342bf0 bcm_phy_cable_test_start_rdb +EXPORT_SYMBOL_GPL drivers/net/phy/bcm-phy-lib 0x2ef16be3 bcm_phy_get_strings +EXPORT_SYMBOL_GPL drivers/net/phy/bcm-phy-lib 0x3029b97f bcm_phy_downshift_get +EXPORT_SYMBOL_GPL drivers/net/phy/bcm-phy-lib 0x3558cb08 bcm_phy_cable_test_get_status_rdb +EXPORT_SYMBOL_GPL drivers/net/phy/bcm-phy-lib 0x456da8bb bcm_phy_enable_jumbo +EXPORT_SYMBOL_GPL drivers/net/phy/bcm-phy-lib 0x527333c8 __bcm_phy_modify_exp +EXPORT_SYMBOL_GPL drivers/net/phy/bcm-phy-lib 0x57d1ecef bcm_phy_cable_test_start +EXPORT_SYMBOL_GPL drivers/net/phy/bcm-phy-lib 0x71b66c7c bcm_phy_downshift_set +EXPORT_SYMBOL_GPL drivers/net/phy/bcm-phy-lib 0x71e1a975 bcm_phy_modify_exp +EXPORT_SYMBOL_GPL drivers/net/phy/bcm-phy-lib 0x795227b3 bcm_phy_enable_apd +EXPORT_SYMBOL_GPL drivers/net/phy/bcm-phy-lib 0x883a3fad bcm_phy_28nm_a0b0_afe_config_init +EXPORT_SYMBOL_GPL drivers/net/phy/bcm-phy-lib 0x963093eb bcm_phy_get_stats +EXPORT_SYMBOL_GPL drivers/net/phy/bcm-phy-lib 0x9a2d7194 bcm_phy_write_exp +EXPORT_SYMBOL_GPL drivers/net/phy/bcm-phy-lib 0x9bbee88a __bcm_phy_write_exp +EXPORT_SYMBOL_GPL drivers/net/phy/bcm-phy-lib 0x9e2b80f9 bcm_phy_read_shadow +EXPORT_SYMBOL_GPL drivers/net/phy/bcm-phy-lib 0x9fef5cd6 bcm_phy_set_eee +EXPORT_SYMBOL_GPL drivers/net/phy/bcm-phy-lib 0xa12c5d33 bcm_phy_write_shadow +EXPORT_SYMBOL_GPL drivers/net/phy/bcm-phy-lib 0xa92a82e8 bcm_phy_read_misc +EXPORT_SYMBOL_GPL drivers/net/phy/bcm-phy-lib 0xb42fdb02 bcm54xx_auxctl_read +EXPORT_SYMBOL_GPL drivers/net/phy/bcm-phy-lib 0xbb84dc76 bcm_phy_cable_test_get_status +EXPORT_SYMBOL_GPL drivers/net/phy/bcm-phy-lib 0xc08d4e8b bcm_phy_ack_intr +EXPORT_SYMBOL_GPL drivers/net/phy/bcm-phy-lib 0xc2fb988b bcm_phy_modify_rdb +EXPORT_SYMBOL_GPL drivers/net/phy/bcm-phy-lib 0xd31de99a bcm_phy_read_rdb +EXPORT_SYMBOL_GPL drivers/net/phy/bcm-phy-lib 0xd3f4465a __bcm_phy_read_rdb +EXPORT_SYMBOL_GPL drivers/net/phy/bcm-phy-lib 0xe1690236 __bcm_phy_modify_rdb +EXPORT_SYMBOL_GPL drivers/net/phy/bcm-phy-lib 0xfbc9dc0e bcm_phy_r_rc_cal_reset +EXPORT_SYMBOL_GPL drivers/net/phy/mdio-i2c 0x13b864ce mdio_i2c_alloc +EXPORT_SYMBOL_GPL drivers/net/phy/mdio-mux 0x6318757f mdio_mux_uninit +EXPORT_SYMBOL_GPL drivers/net/phy/mdio-mux 0x6d5d351d mdio_mux_init +EXPORT_SYMBOL_GPL drivers/net/phy/mdio-xpcs 0x1b5494a6 mdio_xpcs_get_ops +EXPORT_SYMBOL_GPL drivers/net/phy/phylink 0x08213956 phylink_ethtool_get_wol +EXPORT_SYMBOL_GPL drivers/net/phy/phylink 0x1162b00e phylink_ethtool_ksettings_get +EXPORT_SYMBOL_GPL drivers/net/phy/phylink 0x12135396 phylink_mac_change +EXPORT_SYMBOL_GPL drivers/net/phy/phylink 0x15c4e3e2 phylink_ethtool_set_pauseparam +EXPORT_SYMBOL_GPL drivers/net/phy/phylink 0x2c8e28ee phylink_ethtool_get_eee +EXPORT_SYMBOL_GPL drivers/net/phy/phylink 0x57727285 phylink_ethtool_set_eee +EXPORT_SYMBOL_GPL drivers/net/phy/phylink 0x5fb6b35f phylink_helper_basex_speed +EXPORT_SYMBOL_GPL drivers/net/phy/phylink 0x62104126 phylink_ethtool_set_wol +EXPORT_SYMBOL_GPL drivers/net/phy/phylink 0x686c96d6 phylink_create +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 0x86ff345f phylink_ethtool_ksettings_set +EXPORT_SYMBOL_GPL drivers/net/phy/phylink 0x911fcd6c phylink_start +EXPORT_SYMBOL_GPL drivers/net/phy/phylink 0x983276da phylink_disconnect_phy +EXPORT_SYMBOL_GPL drivers/net/phy/phylink 0x9f5b6912 phylink_mii_c22_pcs_set_advertisement +EXPORT_SYMBOL_GPL drivers/net/phy/phylink 0xc1d15a4c phylink_set_port_modes +EXPORT_SYMBOL_GPL drivers/net/phy/phylink 0xc8b02eb2 phylink_of_phy_connect +EXPORT_SYMBOL_GPL drivers/net/phy/phylink 0xdcb0a2c0 phylink_stop +EXPORT_SYMBOL_GPL drivers/net/phy/phylink 0xde66f4a7 phylink_mii_ioctl +EXPORT_SYMBOL_GPL drivers/net/phy/phylink 0xe9777a80 phylink_add_pcs +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 0xf3a23f9e phylink_mii_c22_pcs_get_state +EXPORT_SYMBOL_GPL drivers/net/phy/phylink 0xf3e36894 phylink_connect_phy +EXPORT_SYMBOL_GPL drivers/net/phy/phylink 0xf64cfa29 phylink_mii_c45_pcs_get_state +EXPORT_SYMBOL_GPL drivers/net/phy/phylink 0xf8fe5642 phylink_ethtool_get_pauseparam +EXPORT_SYMBOL_GPL drivers/net/phy/phylink 0xfe8293f5 phylink_mii_c22_pcs_an_restart +EXPORT_SYMBOL_GPL drivers/net/tap 0x2f1ec46d tap_handle_frame +EXPORT_SYMBOL_GPL drivers/net/tap 0x453af902 tap_get_ptr_ring +EXPORT_SYMBOL_GPL drivers/net/tap 0x72c1af08 tap_del_queues +EXPORT_SYMBOL_GPL drivers/net/tap 0x86c49b88 tap_get_minor +EXPORT_SYMBOL_GPL drivers/net/tap 0x8a86522a tap_get_socket +EXPORT_SYMBOL_GPL drivers/net/tap 0xbaca75dc tap_create_cdev +EXPORT_SYMBOL_GPL drivers/net/tap 0xbe3ab312 tap_destroy_cdev +EXPORT_SYMBOL_GPL drivers/net/tap 0xce5469d2 tap_queue_resize +EXPORT_SYMBOL_GPL drivers/net/tap 0xf40fb211 tap_free_minor +EXPORT_SYMBOL_GPL drivers/net/usb/cdc_ether 0x122168c9 usbnet_cdc_unbind +EXPORT_SYMBOL_GPL drivers/net/usb/cdc_ether 0x787c882b usbnet_cdc_status +EXPORT_SYMBOL_GPL drivers/net/usb/cdc_ether 0xa1ad24ad usbnet_ether_cdc_bind +EXPORT_SYMBOL_GPL drivers/net/usb/cdc_ether 0xed815fa1 usbnet_generic_cdc_bind +EXPORT_SYMBOL_GPL drivers/net/usb/cdc_ether 0xf4120c2b usbnet_cdc_bind +EXPORT_SYMBOL_GPL drivers/net/usb/cdc_ncm 0x2d6b2d58 cdc_ncm_unbind +EXPORT_SYMBOL_GPL drivers/net/usb/cdc_ncm 0x44ae3257 cdc_ncm_rx_verify_nth32 +EXPORT_SYMBOL_GPL drivers/net/usb/cdc_ncm 0x4787e81d cdc_ncm_fill_tx_frame +EXPORT_SYMBOL_GPL drivers/net/usb/cdc_ncm 0x5830d73f cdc_ncm_bind_common +EXPORT_SYMBOL_GPL drivers/net/usb/cdc_ncm 0x88dd8c1a cdc_ncm_rx_verify_ndp32 +EXPORT_SYMBOL_GPL drivers/net/usb/cdc_ncm 0x94519d58 cdc_ncm_change_mtu +EXPORT_SYMBOL_GPL drivers/net/usb/cdc_ncm 0x97cf2968 cdc_ncm_select_altsetting +EXPORT_SYMBOL_GPL drivers/net/usb/cdc_ncm 0xc4a9907a cdc_ncm_rx_verify_ndp16 +EXPORT_SYMBOL_GPL drivers/net/usb/cdc_ncm 0xd1de3f06 cdc_ncm_rx_fixup +EXPORT_SYMBOL_GPL drivers/net/usb/cdc_ncm 0xd8a204a6 cdc_ncm_rx_verify_nth16 +EXPORT_SYMBOL_GPL drivers/net/usb/cdc_ncm 0xe78f6428 cdc_ncm_tx_fixup +EXPORT_SYMBOL_GPL drivers/net/usb/rndis_host 0x2c5f901e generic_rndis_bind +EXPORT_SYMBOL_GPL drivers/net/usb/rndis_host 0x5d641932 rndis_command +EXPORT_SYMBOL_GPL drivers/net/usb/rndis_host 0x70da0e4c rndis_tx_fixup +EXPORT_SYMBOL_GPL drivers/net/usb/rndis_host 0x7b148cea rndis_status +EXPORT_SYMBOL_GPL drivers/net/usb/rndis_host 0xc044bd38 rndis_rx_fixup +EXPORT_SYMBOL_GPL drivers/net/usb/rndis_host 0xea56fdc9 rndis_unbind +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0x08340c27 usbnet_get_ethernet_addr +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0x0cdbfc08 usbnet_set_link_ksettings +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0x0db16710 usbnet_get_stats64 +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0x24f4aa7e usbnet_write_cmd_nopm +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0x3018da0a usbnet_read_cmd +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0x35ada161 usbnet_skb_return +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0x3cb94d55 usbnet_stop +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0x5870b31a usbnet_purge_paused_rxq +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0x594da315 usbnet_pause_rx +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0x5c9b358b usbnet_status_start +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0x64230a50 usbnet_probe +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0x6a53b676 usbnet_start_xmit +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0x7615f007 usbnet_read_cmd_nopm +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0x7b407eeb usbnet_suspend +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0x7dfeeed0 usbnet_unlink_rx_urbs +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0x8c7036bc usbnet_tx_timeout +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0x9f67a7c8 usbnet_nway_reset +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0xa36ce044 usbnet_get_endpoints +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0xaebc3cc5 usbnet_status_stop +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0xaf48ab8d usbnet_open +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0xb382f1d6 usbnet_update_max_qlen +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0xb8176aff usbnet_get_link +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0xc3068fb0 usbnet_resume +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0xc6de9bae usbnet_disconnect +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0xca10cf2a usbnet_write_cmd +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0xcbccfa69 usbnet_defer_kevent +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0xcc3c817e usbnet_get_link_ksettings +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0xe09a3ab5 usbnet_write_cmd_async +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0xe27a0551 usbnet_set_msglevel +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0xe6f44a4d usbnet_get_drvinfo +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0xf2f1f410 usbnet_get_msglevel +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0xf46a2a5f usbnet_resume_rx +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0xf6373863 usbnet_change_mtu +EXPORT_SYMBOL_GPL drivers/net/vxlan 0x0ad6fdd4 vxlan_fdb_clear_offload +EXPORT_SYMBOL_GPL drivers/net/vxlan 0x129c5953 vxlan_dev_create +EXPORT_SYMBOL_GPL drivers/net/vxlan 0x9135f908 vxlan_fdb_replay +EXPORT_SYMBOL_GPL drivers/net/vxlan 0xc96bef87 vxlan_fdb_find_uc +EXPORT_SYMBOL_GPL drivers/net/wimax/i2400m/i2400m 0x07ca7d94 i2400m_dev_reset_handle +EXPORT_SYMBOL_GPL drivers/net/wimax/i2400m/i2400m 0x170c0385 i2400m_cmd_enter_powersave +EXPORT_SYMBOL_GPL drivers/net/wimax/i2400m/i2400m 0x32c71ece i2400m_release +EXPORT_SYMBOL_GPL drivers/net/wimax/i2400m/i2400m 0x3f1189ac i2400m_rx +EXPORT_SYMBOL_GPL drivers/net/wimax/i2400m/i2400m 0x53328eb8 i2400m_setup +EXPORT_SYMBOL_GPL drivers/net/wimax/i2400m/i2400m 0x59641a39 i2400m_netdev_setup +EXPORT_SYMBOL_GPL drivers/net/wimax/i2400m/i2400m 0x5ef7efeb i2400m_is_boot_barker +EXPORT_SYMBOL_GPL drivers/net/wimax/i2400m/i2400m 0x67e59381 i2400m_tx_msg_sent +EXPORT_SYMBOL_GPL drivers/net/wimax/i2400m/i2400m 0x927b3815 i2400m_init +EXPORT_SYMBOL_GPL drivers/net/wimax/i2400m/i2400m 0x9628bd36 i2400m_dev_bootstrap +EXPORT_SYMBOL_GPL drivers/net/wimax/i2400m/i2400m 0x9f59d9e0 i2400m_error_recovery +EXPORT_SYMBOL_GPL drivers/net/wimax/i2400m/i2400m 0xb00b793c i2400m_bm_cmd_prepare +EXPORT_SYMBOL_GPL drivers/net/wimax/i2400m/i2400m 0xb7938b4f i2400m_reset +EXPORT_SYMBOL_GPL drivers/net/wimax/i2400m/i2400m 0xbf5d300d i2400m_pre_reset +EXPORT_SYMBOL_GPL drivers/net/wimax/i2400m/i2400m 0xd06b202e i2400m_tx_msg_get +EXPORT_SYMBOL_GPL drivers/net/wimax/i2400m/i2400m 0xd5d89ffe i2400m_tx +EXPORT_SYMBOL_GPL drivers/net/wimax/i2400m/i2400m 0xd6598d5f i2400m_post_reset +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/ipw2x00/libipw 0x6b8147ca libipw_rx_any +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x3e441079 _il_grab_nic_access +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x45550261 il_prep_station +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x9b6671a8 il_dealloc_bcast_stations +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x9d32b203 il_mac_tx_last_beacon +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlegacy/iwlegacy 0xbef1e2f4 il_remove_station +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0x0136f35c iwl_read_prph +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0x0189c36f iwl_wait_notification +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0x09008b10 iwl_write8 +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0x092f2cdf iwl_parse_eeprom_data +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0x0dfc0b31 __iwl_crit +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0x12c944ab iwl_read_prph_no_grab +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0x1787e6e2 iwl_fw_lookup_notif_ver +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0x18dc8720 iwl_fw_dbg_collect +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0x1c48129a iwl_dump_desc_assert +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0x20710bdf iwl_init_paging +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0x28096ed6 iwl_phy_db_init +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0x2c0f571f iwl_init_notification_wait +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0x2c6dbb56 iwl_fw_dbg_read_d3_debug_data +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0x2ddba083 iwl_dbg_tlv_time_point +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0x323553d2 iwl_clear_bits_prph +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0x35033c81 iwl_phy_db_free +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0x3d8d0176 iwl_set_soc_latency +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0x446ad571 iwl_write_prph64_no_grab +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0x4544dc25 iwl_force_nmi +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0x4d7344f0 iwl_poll_direct_bit +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0x4e72a36d __iwl_dbg +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0x524eb292 iwl_trans_send_cmd +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0x5335d385 iwl_get_cmd_string +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0x5c52e109 iwl_opmode_deregister +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0x5ef4a44d iwl_notification_wait +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0x67fa858f __iwl_err +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0x6a901161 iwl_fw_dbg_error_collect +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0x6e0cffa6 iwl_parse_nvm_data +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0x71b0ad6e iwl_fw_error_print_fseq_regs +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0x7434fb4b iwl_fw_lookup_cmd_ver +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0x776221bf iwl_send_phy_db_data +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0x7923c6ef iwl_get_nvm +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0x794f1af8 iwl_finish_nic_init +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0x7cec750f iwl_write_prph +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0x7df6c2db iwl_poll_bit +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0x818c3cf0 iwl_write_direct32 +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0x85ea4b7e iwl_parse_nvm_mcc_info +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0x90cfd3ea iwl_read_eeprom +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0x91b6ecd0 iwl_write32 +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0x927eceba iwl_read_direct32 +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0x93160e9e iwl_abort_notification_waits +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0x9d8eae9a iwl_set_bits_mask_prph +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0xa0a4ab27 iwl_fw_runtime_init +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0xa606d60b iwl_dbg_tlv_del_timers +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0xa9f05394 iwlwifi_mod_params +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0xaed4cae4 __iwl_warn +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0xb1e39cb3 iwl_remove_notification +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0xb2a99317 iwl_fw_dbg_collect_trig +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0xbdf5b895 iwl_read32 +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0xc68e4edb iwl_write64 +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0xce0c6460 iwl_phy_db_set_section +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0xcfccfafb iwl_fw_runtime_suspend +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0xd2260442 iwl_write_prph_no_grab +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0xd2ff473d iwl_cmd_groups_verify_sorted +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0xd43ac9b6 iwl_get_shared_mem_conf +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0xd6b49efb iwl_write_direct64 +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0xddc40535 iwl_read_external_nvm +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0xde20999f iwl_opmode_register +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0xdec9e66d iwl_notification_wait_init +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0xe0b3c7e2 iwl_set_bits_prph +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0xe539ad40 iwl_fw_runtime_resume +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0xe9e1ecb1 iwl_fw_start_dbg_conf +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0xea1b26fc iwl_nvm_fixups +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0xea8b9b12 iwl_fw_dbg_collect_desc +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0xecbd7399 iwl_fw_dbg_stop_restart_recording +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0xedf1541d __iwl_info +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0xf00bc937 iwl_free_fw_paging +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0xf60b17ab iwl_fw_dbg_stop_sync +EXPORT_SYMBOL_GPL drivers/net/wireless/intersil/p54/p54common 0x3757e186 p54_register_common +EXPORT_SYMBOL_GPL drivers/net/wireless/intersil/p54/p54common 0x4e579943 p54_unregister_common +EXPORT_SYMBOL_GPL drivers/net/wireless/intersil/p54/p54common 0x67b1b711 p54_parse_firmware +EXPORT_SYMBOL_GPL drivers/net/wireless/intersil/p54/p54common 0x9eb5b5b4 p54_free_skb +EXPORT_SYMBOL_GPL drivers/net/wireless/intersil/p54/p54common 0xcb487403 p54_rx +EXPORT_SYMBOL_GPL drivers/net/wireless/intersil/p54/p54common 0xd23c28bc p54_parse_eeprom +EXPORT_SYMBOL_GPL drivers/net/wireless/intersil/p54/p54common 0xd8cdfdb8 p54_init_common +EXPORT_SYMBOL_GPL drivers/net/wireless/intersil/p54/p54common 0xdbb0ac36 p54_read_eeprom +EXPORT_SYMBOL_GPL drivers/net/wireless/intersil/p54/p54common 0xf5b52922 p54_free_common +EXPORT_SYMBOL_GPL drivers/net/wireless/marvell/libertas/libertas 0x0768fef9 lbs_queue_event +EXPORT_SYMBOL_GPL drivers/net/wireless/marvell/libertas/libertas 0x46ae05ae lbs_notify_command_response +EXPORT_SYMBOL_GPL drivers/net/wireless/marvell/libertas/libertas 0x514a3b95 lbs_start_card +EXPORT_SYMBOL_GPL drivers/net/wireless/marvell/libertas/libertas 0x5de282b7 lbs_resume +EXPORT_SYMBOL_GPL drivers/net/wireless/marvell/libertas/libertas 0x5fdf38b8 lbs_disablemesh +EXPORT_SYMBOL_GPL drivers/net/wireless/marvell/libertas/libertas 0x7aa94d78 lbs_remove_card +EXPORT_SYMBOL_GPL drivers/net/wireless/marvell/libertas/libertas 0x81391cf5 lbs_add_card +EXPORT_SYMBOL_GPL drivers/net/wireless/marvell/libertas/libertas 0x88efdc34 lbs_host_sleep_cfg +EXPORT_SYMBOL_GPL drivers/net/wireless/marvell/libertas/libertas 0x8a46e995 lbs_stop_card +EXPORT_SYMBOL_GPL drivers/net/wireless/marvell/libertas/libertas 0x8b0fe6e5 lbs_suspend +EXPORT_SYMBOL_GPL drivers/net/wireless/marvell/libertas/libertas 0x91b9362c lbs_host_to_card_done +EXPORT_SYMBOL_GPL drivers/net/wireless/marvell/libertas/libertas 0x94ae0945 lbs_get_firmware +EXPORT_SYMBOL_GPL drivers/net/wireless/marvell/libertas/libertas 0x9dfbfcb8 lbs_send_tx_feedback +EXPORT_SYMBOL_GPL drivers/net/wireless/marvell/libertas/libertas 0xa9c1b6a4 __lbs_cmd +EXPORT_SYMBOL_GPL drivers/net/wireless/marvell/libertas/libertas 0xab532136 lbs_process_rxed_packet +EXPORT_SYMBOL_GPL drivers/net/wireless/marvell/libertas/libertas 0xb130c491 lbs_get_firmware_async +EXPORT_SYMBOL_GPL drivers/net/wireless/marvell/libertas/libertas 0xdb1cc668 lbs_cmd_copyback +EXPORT_SYMBOL_GPL drivers/net/wireless/marvell/libertas/libertas 0xf64277de lbs_debug +EXPORT_SYMBOL_GPL drivers/net/wireless/marvell/libertas_tf/libertas_tf 0x1cafa057 __lbtf_cmd +EXPORT_SYMBOL_GPL drivers/net/wireless/marvell/libertas_tf/libertas_tf 0x3f58a2e6 lbtf_send_tx_feedback +EXPORT_SYMBOL_GPL drivers/net/wireless/marvell/libertas_tf/libertas_tf 0x4152e88c lbtf_cmd_copyback +EXPORT_SYMBOL_GPL drivers/net/wireless/marvell/libertas_tf/libertas_tf 0x67e1683d lbtf_cmd_response_rx +EXPORT_SYMBOL_GPL drivers/net/wireless/marvell/libertas_tf/libertas_tf 0xa63521e4 lbtf_bcn_sent +EXPORT_SYMBOL_GPL drivers/net/wireless/marvell/libertas_tf/libertas_tf 0xc386b69c lbtf_rx +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 0xdb5ce121 lbtf_add_card +EXPORT_SYMBOL_GPL drivers/net/wireless/marvell/libertas_tf/libertas_tf 0xe6e79af8 lbtf_remove_card +EXPORT_SYMBOL_GPL drivers/net/wireless/marvell/mwifiex/mwifiex 0x02a817e5 mwifiex_remove_card +EXPORT_SYMBOL_GPL drivers/net/wireless/marvell/mwifiex/mwifiex 0x1b319b86 mwifiex_process_sleep_confirm_resp +EXPORT_SYMBOL_GPL drivers/net/wireless/marvell/mwifiex/mwifiex 0x1ce065a0 mwifiex_process_hs_config +EXPORT_SYMBOL_GPL drivers/net/wireless/marvell/mwifiex/mwifiex 0x2a615c78 mwifiex_enable_hs +EXPORT_SYMBOL_GPL drivers/net/wireless/marvell/mwifiex/mwifiex 0x2d268e66 mwifiex_multi_chan_resync +EXPORT_SYMBOL_GPL drivers/net/wireless/marvell/mwifiex/mwifiex 0x2d9b1216 mwifiex_dnld_fw +EXPORT_SYMBOL_GPL drivers/net/wireless/marvell/mwifiex/mwifiex 0x34a3e3a5 mwifiex_deauthenticate_all +EXPORT_SYMBOL_GPL drivers/net/wireless/marvell/mwifiex/mwifiex 0x3616d3cd mwifiex_add_virtual_intf +EXPORT_SYMBOL_GPL drivers/net/wireless/marvell/mwifiex/mwifiex 0x3ec457f1 _mwifiex_dbg +EXPORT_SYMBOL_GPL drivers/net/wireless/marvell/mwifiex/mwifiex 0x3ed4e8d8 mwifiex_drv_info_dump +EXPORT_SYMBOL_GPL drivers/net/wireless/marvell/mwifiex/mwifiex 0x4b557444 mwifiex_upload_device_dump +EXPORT_SYMBOL_GPL drivers/net/wireless/marvell/mwifiex/mwifiex 0x4f555d43 mwifiex_main_process +EXPORT_SYMBOL_GPL drivers/net/wireless/marvell/mwifiex/mwifiex 0x4f67e78a mwifiex_init_shutdown_fw +EXPORT_SYMBOL_GPL drivers/net/wireless/marvell/mwifiex/mwifiex 0x52baf56e mwifiex_queue_main_work +EXPORT_SYMBOL_GPL drivers/net/wireless/marvell/mwifiex/mwifiex 0x5cf45c6d mwifiex_del_virtual_intf +EXPORT_SYMBOL_GPL drivers/net/wireless/marvell/mwifiex/mwifiex 0x620f98a9 mwifiex_shutdown_sw +EXPORT_SYMBOL_GPL drivers/net/wireless/marvell/mwifiex/mwifiex 0x68530805 mwifiex_disable_auto_ds +EXPORT_SYMBOL_GPL drivers/net/wireless/marvell/mwifiex/mwifiex 0x69e3eacc mwifiex_handle_rx_packet +EXPORT_SYMBOL_GPL drivers/net/wireless/marvell/mwifiex/mwifiex 0xac95bc8a mwifiex_prepare_fw_dump_info +EXPORT_SYMBOL_GPL drivers/net/wireless/marvell/mwifiex/mwifiex 0xbbc34563 mwifiex_reinit_sw +EXPORT_SYMBOL_GPL drivers/net/wireless/marvell/mwifiex/mwifiex 0xbc7bb4fc mwifiex_add_card +EXPORT_SYMBOL_GPL drivers/net/wireless/marvell/mwifiex/mwifiex 0xd4dad9f3 mwifiex_alloc_dma_align_buf +EXPORT_SYMBOL_GPL drivers/net/wireless/marvell/mwifiex/mwifiex 0xe735031f mwifiex_fw_dump_event +EXPORT_SYMBOL_GPL drivers/net/wireless/marvell/mwifiex/mwifiex 0xf1941a14 mwifiex_cancel_hs +EXPORT_SYMBOL_GPL drivers/net/wireless/marvell/mwifiex/mwifiex 0xff2b0746 mwifiex_write_data_complete +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0x0710af34 mt76_pci_disable_aspm +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0x0a48569d mt76_sta_state +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0x209bf366 mt76_sta_pre_rcu_remove +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0x23f67d1c mt76_set_tim +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0x2bb95622 mt76_alloc_phy +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0x2fa2fd00 mt76_alloc_device +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0x320584cb mt76_rx +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0x3a0d777d __mt76_sta_remove +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0x3a9204a1 mt76_tx_status_unlock +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0x3b02e023 __mt76_poll +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0x4140510c mt76_unregister_phy +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0x50bd021a mt76_get_antenna +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0x5313ab9b mt76_has_tx_pending +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0x568ad2c2 mt76_txq_schedule +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0x5790a0f1 __mt76_poll_msec +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0x59f68ca6 mt76_put_txwi +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0x64fb8cd0 mt76_tx_complete_skb +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0x68178517 mt76_release_buffered_frames +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0x6efe7f1d mt76_tx_status_skb_done +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0x71054ff6 mt76_stop_tx_queues +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0x71eba764 mt76_eeprom_override +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0x77041cfe mt76_rx_aggr_start +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0x7bc5b666 mt76_tx_status_lock +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0x7cc14dca mt76_get_txpower +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0x7f98ab71 mt76_eeprom_init +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0x879bc384 mt76_rx_aggr_stop +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0x887367da __tracepoint_dev_irq +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0x88e80254 mt76_set_irq_mask +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0x8e526112 mt76_sw_scan +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0x8eeda6bd mt76_set_channel +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0x91998b55 mt76_tx_status_check +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0x98622546 mt76_tx_status_skb_get +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0x9906fc1b mt76_csa_check +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0xa3dd32e8 mt76_get_min_avg_rssi +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0xa556faaa __tracepoint_mac_txdone +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0xaa22b626 mt76_queues_read +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0xabb79078 mt76_txq_remove +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0xae3fc7ac mt76_txq_init +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0xb35953c1 mt76_wake_tx_queue +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0xb53336c4 mt76_mmio_init +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0xb6d3a0d3 mt76_txq_schedule_all +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0xbb2ec2a4 mt76_free_device +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0xbd8ca68c mt76_mcu_rx_event +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0xbf67ada1 mt76_register_debugfs +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0xc5634a8a mt76_update_survey +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0xc6634315 mt76_ac_to_hwq +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0xcbdf1cd2 mt76_get_rate +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0xd1a6bc1f mt76_unregister_device +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0xd7121a9e mt76_get_survey +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0xdcb4b617 mt76_seq_puts_array +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0xdfc64cc6 mt76_csa_finish +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0xe003c955 mt76_insert_ccmp_hdr +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0xe40b66ef mt76_wcid_alloc +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0xe4dbb97e mt76_dma_cleanup +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0xed76b948 mt76_mcu_get_response +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0xef88f2d5 mt76_tx_status_skb_add +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0xf29cf013 mt76_register_device +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0xf63229ab mt76_mcu_msg_alloc +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0xf63280b8 mt76_sw_scan_complete +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0xf64a7758 mt76_dma_attach +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0xf72fd0a6 mt76_register_phy +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0xf915a0d4 mt76_set_stream_caps +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0xf97ac005 mt76_tx +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0xfcf25ce6 mt76_rx_poll_complete +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76-usb 0x047bdd52 mt76u_vendor_request +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76-usb 0x0615ce84 mt76u_resume_rx +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76-usb 0x2427132b mt76u_stop_tx +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76-usb 0x5324a503 mt76u_stop_rx +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76-usb 0x5be45812 mt76u_queues_deinit +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76-usb 0x80b7163b mt76u_alloc_queues +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76-usb 0x92c6c679 mt76u_skb_dma_info +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76-usb 0x9faea5f1 mt76u_deinit +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76-usb 0xb1d3040d mt76u_alloc_mcu_queue +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76-usb 0xdd872856 mt76u_init +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76-usb 0xfe6734cc mt76u_single_wr +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt7615/mt7615-common 0x05584649 mt7615_phy_init +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt7615/mt7615-common 0x057c4d49 mt7615_rates +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt7615/mt7615-common 0x1201ef1d mt7615_mcu_del_wtbl_all +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt7615/mt7615-common 0x1d731ede mt7615_ops +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt7615/mt7615-common 0x1e31feba mt7615_unregister_ext_phy +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt7615/mt7615-common 0x23ff5d43 mt7615_mac_sta_remove +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt7615/mt7615-common 0x2acbcfa1 mt7615_firmware_own +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt7615/mt7615-common 0x2c526aa8 mt7615_mcu_exit +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt7615/mt7615-common 0x2f271b03 mt7615_mac_sta_add +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt7615/mt7615-common 0x3057244c mt7615_mcu_set_hif_suspend +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt7615/mt7615-common 0x331c9ce7 mt7615_mac_init +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt7615/mt7615-common 0x33f054f9 mt7615_mac_write_txwi +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt7615/mt7615-common 0x3f4562a1 mt7615_mcu_msg_send +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt7615/mt7615-common 0x4680acdb mt7615_mac_set_rates +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt7615/mt7615-common 0x59b074a6 mt7615_mcu_set_eeprom +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt7615/mt7615-common 0x7d6dbad7 mt7615_mcu_wait_response +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt7615/mt7615-common 0x7f0804bd __mt7663_load_firmware +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt7615/mt7615-common 0x8426a693 mt7615_mcu_fill_msg +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt7615/mt7615-common 0x86abf763 mt7615_eeprom_init +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt7615/mt7615-common 0x87746799 mt7615_init_debugfs +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt7615/mt7615-common 0x88fec5cb mt7615_update_channel +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt7615/mt7615-common 0x8b51bdaa mt7615_register_ext_phy +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt7615/mt7615-common 0x91ff4af0 mt7615_queue_rx_skb +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt7615/mt7615-common 0x966273f6 mt7615_check_offload_capability +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt7615/mt7615-common 0x9c8fa55d mt7615_txp_skb_unmap +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt7615/mt7615-common 0xa372567f mt7615_mac_sta_poll +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt7615/mt7615-common 0xbadada68 mt7615_mcu_restart +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt7615/mt7615-common 0xce028274 mt7615_init_device +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt7615/mt7615-common 0xd8bc156d mt7615_dma_reset +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt7615/mt7615-common 0xdb1a9d62 mt7615_mcu_init +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt7615/mt7615-common 0xdd6175de mt7615_mac_wtbl_update_pk +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt7615/mt7615-common 0xe0adde7d mt7615_mac_wtbl_update_key +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt7615/mt7615-common 0xe2f391d0 mt7615_init_txpower +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt7615/mt7615-common 0xe70d7935 mt7615_wait_for_mcu_init +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt7615/mt7615-common 0xf8791575 mt7615_mac_wtbl_update_cipher +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt7615/mt7615-common 0xfb50eeb2 mt7615_driver_own +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt7615/mt7615-common 0xfd886bd9 mt7615_sta_ps +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x0/mt76x0-common 0x59111fa9 mt76x0_init_hardware +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x0/mt76x0-common 0x809de2c3 mt76x0_phy_calibrate +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x0/mt76x0-common 0x8d9bda43 mt76x0_config +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x0/mt76x0-common 0xd568f046 mt76x0_register_device +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x0/mt76x0-common 0xedd25ad7 mt76x0_mac_stop +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x0/mt76x0-common 0xf1771fcc mt76x0_chip_onoff +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0x01882dba mt76x02_phy_set_txdac +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0x041b5af3 mt76x02_init_agc_gain +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0x0462ce68 mt76x02_add_rate_power_offset +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0x094b1802 mt76x02_eeprom_copy +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0x0d163299 mt76x02_dfs_init_params +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0x0d4023ec mt76x02_get_max_rate_power +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0x0e4b742b mt76x02_ampdu_action +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0x19dbf45a mt76x02_update_channel +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0x1bf53831 mt76x02_set_coverage_class +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0x1c839d02 mt76x02_rx_poll_complete +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0x1ebb98e5 mt76x02_update_beacon_iter +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0x228b39c8 mt76x02_add_interface +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0x2a875626 mt76x02_set_ethtool_fwver +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0x2c02fed8 mt76x02_init_device +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0x2ece562f mt76x02_mac_reset_counters +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0x35d2834d mt76x02_limit_rate_power +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0x4043f1d4 mt76x02_enqueue_buffered_bc +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0x4365cafc mt76x02_eeprom_parse_hw_cap +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0x47be0fa1 mt76x02_init_debugfs +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0x490aaf34 mt76x02_configure_filter +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0x496e5e15 mt76x02_get_efuse_data +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0x4a49bed1 mt76x02_edcca_init +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0x4fef645d mt76x02_set_tx_ackto +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0x5287e397 mt76x02_dma_init +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0x52fa8eb5 mt76x02_conf_tx +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0x53c7514a mt76x02_reconfig_complete +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0x5857b9fe mt76x02_sta_rate_tbl_update +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0x5938711d mt76x02_phy_set_bw +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0x5986050a mt76x02_set_rts_threshold +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0x5a6f4a5b mt76x02_bss_info_changed +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0x5ac1b656 mt76x02_mcu_calibrate +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0x5bd84fd5 mt76x02_rates +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0x64204291 mt76x02_sta_ps +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0x6535c016 mt76x02_sta_add +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0x77c8cc15 mt76x02_phy_adjust_vga_gain +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0x7ac0b5e9 mt76x02_mac_setaddr +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0x7b2c8773 mt76x02_config_mac_addr_list +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0x7c82e0cd mt76x02_sw_scan_complete +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0x7cbc71c6 mt76x02_init_beacon_config +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0x802e6b32 mt76x02_phy_dfs_adjust_agc +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0x83c8c857 mt76x02_sta_remove +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0x878b4b2f mt76x02_mac_start +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0x88b7a904 mt76x02_mcu_set_radio_state +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0x890bdc26 mt76x02_phy_set_rxpath +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0x91d5b9ee mt76x02_irq_handler +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0x94d8f465 mt76x02_phy_set_txpower +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0x98e596b9 mt76x02_set_key +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0x9a7888d0 mt76x02_remove_hdr_pad +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0x9ee6c236 mt76x02_dma_cleanup +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0xa5c8dd3e mt76x02_tx_prepare_skb +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0xb229970b mt76x02_mac_wcid_setup +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0xb2c29af9 mt76x02_remove_interface +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0xb34f307c mt76x02_mac_cc_reset +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0xc09cc321 mt76x02e_init_beacon_config +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0xc226dd7f mt76x02_tx_complete_skb +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0xc4202700 mt76x02_tx_status_data +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0xc9ee99eb mt76x02_mac_shared_key_setup +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0xcbe47b86 mt76x02_get_lna_gain +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0xcd26b588 mt76x02_mac_set_beacon +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0xd52ea001 mt76x02_phy_set_band +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0xd5c10f94 mt76x02_tx_set_txpwr_auto +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0xda5b6b7d mt76x02_get_rx_gain +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0xde7b3e47 mt76x02_mcu_function_select +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0xe39847b9 mt76x02_mac_write_txwi +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0xe49d6188 mt76x02_queue_rx_skb +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0xe5bc88cb mt76x02_mcu_msg_send +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0xee0085b3 mt76x02_resync_beacon_timer +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0xf2d40fb5 mt76x02_tx +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0xf3d9e141 mt76x02_dma_disable +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0xffd0831e mt76x02_mcu_cleanup +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0xffd7714e mt76x02_ext_pa_enabled +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-usb 0x1b774d25 mt76x02u_mcu_fw_send_data +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-usb 0x4f3b1b61 mt76x02u_mac_start +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-usb 0x777200ae mt76x02u_tx_prepare_skb +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-usb 0xcaa0108c mt76x02u_init_mcu +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-usb 0xe9731668 mt76x02u_tx_complete_skb +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-usb 0xe9ea0cf4 mt76x02u_exit_beacon_config +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-usb 0xf3e2fa53 mt76x02u_init_beacon_config +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-usb 0xf46b5770 mt76x02u_mcu_fw_reset +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x2/mt76x2-common 0x02e3d25e mt76x2_get_power_info +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x2/mt76x2-common 0x1150f534 mt76x2_reset_wlan +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x2/mt76x2-common 0x19532b20 mt76x2_eeprom_init +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x2/mt76x2-common 0x21493db1 mt76x2_mcu_tssi_comp +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x2/mt76x2-common 0x31110648 mt76x2_get_rate_power +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x2/mt76x2-common 0x345771b1 mt76x2_mcu_load_cr +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x2/mt76x2-common 0x40163096 mt76x2_apply_gain_adj +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x2/mt76x2-common 0x4693ef57 mt76x2_read_rx_gain +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x2/mt76x2-common 0x51680611 mt76x2_init_txpower +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x2/mt76x2-common 0x57398055 mt76_write_mac_initvals +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x2/mt76x2-common 0x98b66737 mt76x2_phy_set_txpower +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x2/mt76x2-common 0x9bcde688 mt76x2_mcu_init_gain +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x2/mt76x2-common 0xa17e12ef mt76x2_phy_set_txpower_regs +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x2/mt76x2-common 0xaa6989c8 mt76x2_get_temp_comp +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x2/mt76x2-common 0xc2836781 mt76x2_configure_tx_delay +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x2/mt76x2-common 0xd052e7a4 mt76x2_mac_stop +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x2/mt76x2-common 0xd86181e2 mt76x2_phy_update_channel_gain +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x2/mt76x2-common 0xf261e126 mt76x2_phy_tssi_compensate +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x2/mt76x2-common 0xf6f70285 mt76x2_mcu_set_channel +EXPORT_SYMBOL_GPL drivers/net/wireless/quantenna/qtnfmac/qtnfmac 0x03d1317f qtnf_classify_skb +EXPORT_SYMBOL_GPL drivers/net/wireless/quantenna/qtnfmac/qtnfmac 0x04434e7b qtnf_core_attach +EXPORT_SYMBOL_GPL drivers/net/wireless/quantenna/qtnfmac/qtnfmac 0x25039408 qtnf_update_tx_stats +EXPORT_SYMBOL_GPL drivers/net/wireless/quantenna/qtnfmac/qtnfmac 0x2a22064f qtnf_update_rx_stats +EXPORT_SYMBOL_GPL drivers/net/wireless/quantenna/qtnfmac/qtnfmac 0x2cc79cbe qtnf_trans_handle_rx_ctl_packet +EXPORT_SYMBOL_GPL drivers/net/wireless/quantenna/qtnfmac/qtnfmac 0x31fab83c qtnf_chipid_to_string +EXPORT_SYMBOL_GPL drivers/net/wireless/quantenna/qtnfmac/qtnfmac 0x3372ec30 qtnf_get_debugfs_dir +EXPORT_SYMBOL_GPL drivers/net/wireless/quantenna/qtnfmac/qtnfmac 0x4e156d6a qtnf_wake_all_queues +EXPORT_SYMBOL_GPL drivers/net/wireless/quantenna/qtnfmac/qtnfmac 0x983ca27b qtnf_core_detach +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2800lib 0x04f6ea78 rt2800_sta_add +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2800lib 0x152b468e rt2800_wait_wpdma_ready +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2800lib 0x17d51843 rt2800_check_firmware +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2800lib 0x194e3e4b rt2800_txdone_nostatus +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2800lib 0x1a773cd0 rt2800_get_txwi_rxwi_size +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2800lib 0x2458d778 rt2800_vco_calibration +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2800lib 0x269f601e rt2800_config_pairwise_key +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2800lib 0x32100115 rt2800_reset_tuner +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2800lib 0x42648470 rt2800_process_rxwi +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2800lib 0x45429cf1 rt2800_link_tuner +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2800lib 0x48db2ae0 rt2800_conf_tx +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2800lib 0x48f516d5 rt2800_write_tx_data +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2800lib 0x4aa0cfea rt2800_config_ant +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2800lib 0x4c80ea77 rt2800_txstatus_timeout +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2800lib 0x572275c2 rt2800_pre_reset_hw +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2800lib 0x5d356bbb rt2800_probe_hw +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2800lib 0x5e40985d rt2800_get_survey +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2800lib 0x6087ec95 rt2800_gain_calibration +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2800lib 0x60c97be4 rt2800_load_firmware +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2800lib 0x714e61f0 rt2800_efuse_detect +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2800lib 0x765ccfe4 rt2800_config_shared_key +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2800lib 0x7976daa2 rt2800_watchdog +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2800lib 0x7aa94756 rt2800_rfkill_poll +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2800lib 0x7b9516ca rt2800_get_tsf +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2800lib 0x8fb4e9fa rt2800_config +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2800lib 0x94847840 rt2800_set_rts_threshold +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2800lib 0x96822bee rt2800_disable_radio +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2800lib 0xb5afa51d rt2800_config_erp +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2800lib 0xb62d05ac rt2800_mcu_request +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2800lib 0xc17d8cc9 rt2800_get_key_seq +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2800lib 0xc49d880f rt2800_enable_radio +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2800lib 0xc59c4679 rt2800_clear_beacon +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2800lib 0xcb7091b0 rt2800_txstatus_pending +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2800lib 0xced339a0 rt2800_wait_csr_ready +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2800lib 0xcfd19ebe rt2800_txdone_entry +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2800lib 0xd730d6e8 rt2800_write_beacon +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2800lib 0xe1fcf47b rt2800_txdone +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2800lib 0xea582f61 rt2800_sta_remove +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2800lib 0xea6b291f rt2800_link_stats +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2800lib 0xef632395 rt2800_disable_wpdma +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2800lib 0xf325edbd rt2800_read_eeprom_efuse +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2800lib 0xfc3d756c rt2800_config_intf +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2800lib 0xfd992d67 rt2800_ampdu_action +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2800lib 0xffba39bc rt2800_config_filter +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2800mmio 0x092c8580 rt2800mmio_get_txwi +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2800mmio 0x0fad1430 rt2800mmio_pretbtt_tasklet +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2800mmio 0x16359b8b rt2800mmio_probe_hw +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2800mmio 0x1b1a5296 rt2800mmio_init_registers +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2800mmio 0x2505789d rt2800mmio_tbtt_tasklet +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2800mmio 0x35a80ad0 rt2800mmio_kick_queue +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2800mmio 0x3a385ab8 rt2800mmio_init_queues +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2800mmio 0x3d3000ef rt2800mmio_clear_entry +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2800mmio 0x4e4a2508 rt2800mmio_flush_queue +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2800mmio 0x524b8d02 rt2800mmio_toggle_irq +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2800mmio 0x5fa4db64 rt2800mmio_interrupt +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2800mmio 0x607c9b66 rt2800mmio_enable_radio +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2800mmio 0x65214d74 rt2800mmio_fill_rxdone +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2800mmio 0x909dabdf rt2800mmio_write_tx_desc +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2800mmio 0x92c0bcd1 rt2800mmio_rxdone_tasklet +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2800mmio 0xb6cee498 rt2800mmio_stop_queue +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2800mmio 0xc6a1455e rt2800mmio_autowake_tasklet +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2800mmio 0xc8e277ba rt2800mmio_get_dma_done +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2800mmio 0xd0f0708b rt2800mmio_queue_init +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2800mmio 0xe28f94c7 rt2800mmio_txstatus_tasklet +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2800mmio 0xecc6134d rt2800mmio_get_entry_state +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2800mmio 0xf0bd382b rt2800mmio_start_queue +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00lib 0x015556f4 rt2x00mac_remove_interface +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00lib 0x06e5fb67 rt2x00mac_configure_filter +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00lib 0x0beec6bb rt2x00lib_dmastart +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00lib 0x10cf5efd rt2x00queue_get_entry +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00lib 0x11cae5d6 rt2x00queue_flush_queues +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00lib 0x14244e45 rt2x00queue_start_queues +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00lib 0x25e44803 rt2x00mac_get_stats +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00lib 0x2c4081ed rt2x00mac_add_interface +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00lib 0x354596be rt2x00mac_sw_scan_start +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00lib 0x44a3c82f rt2x00mac_tx_frames_pending +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00lib 0x5ae7879c rt2x00lib_rxdone +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00lib 0x5b7ca977 rt2x00mac_stop +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00lib 0x5c8e0d3a rt2x00lib_beacondone +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00lib 0x68f089cd rt2x00queue_stop_queue +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00lib 0x698451a0 rt2x00mac_conf_tx +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00lib 0x6bd128f5 rt2x00queue_map_txskb +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00lib 0x7006ccba rt2x00lib_get_bssidx +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00lib 0x76146903 rt2x00mac_reconfig_complete +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00lib 0x7764e352 rt2x00lib_resume +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00lib 0x79dfdea9 rt2x00lib_remove_dev +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00lib 0x8700ae76 rt2x00lib_pretbtt +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00lib 0x89ca9c01 rt2x00queue_for_each_entry +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00lib 0x8dc76e09 rt2x00mac_bss_info_changed +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00lib 0x92927900 rt2x00mac_set_antenna +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00lib 0x98fb087d rt2x00lib_dmadone +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00lib 0x9bad1727 rt2x00lib_probe_dev +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00lib 0x9efacdc2 rt2x00lib_txdone_nomatch +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00lib 0xa833bb77 rt2x00mac_tx +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00lib 0xa91a2e73 rt2x00queue_stop_queues +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00lib 0xb158526a rt2x00queue_flush_queue +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00lib 0xb40178dd rt2x00mac_start +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00lib 0xc1441335 rt2x00lib_suspend +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00lib 0xc558477d rt2x00mac_get_antenna +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00lib 0xc759ac5a rt2x00mac_rfkill_poll +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00lib 0xc9a771d5 rt2x00mac_get_ringparam +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00lib 0xcf152cc0 rt2x00mac_sw_scan_complete +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00lib 0xd55d29d7 rt2x00mac_set_tim +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00lib 0xd7e0f08d rt2x00mac_flush +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00lib 0xd975e640 rt2x00queue_unpause_queue +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00lib 0xd9d7559f rt2x00lib_set_mac_address +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00lib 0xdd0467ef rt2x00queue_pause_queue +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00lib 0xe4099fc3 rt2x00lib_txdone_noinfo +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00lib 0xe42538a5 rt2x00mac_config +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00lib 0xeb62a33d rt2x00queue_start_queue +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00lib 0xf5b4ada7 rt2x00lib_txdone +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00lib 0xf611aec8 rt2x00mac_set_key +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00lib 0xf7ee1daa rt2x00queue_unmap_skb +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00mmio 0x0415778b rt2x00mmio_initialize +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00mmio 0x1d2ee21b rt2x00mmio_uninitialize +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00mmio 0x45506991 rt2x00mmio_rxdone +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00mmio 0xad9cdb4a rt2x00mmio_flush_queue +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00mmio 0xc91c1074 rt2x00mmio_regbusy_read +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00pci 0x231994eb rt2x00pci_resume +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00pci 0x5b3a0d0a rt2x00pci_remove +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00pci 0x6ce6ed25 rt2x00pci_probe +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00pci 0x9a0e9665 rt2x00pci_suspend +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00usb 0x1176cc0d rt2x00usb_suspend +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00usb 0x12d332bb rt2x00usb_watchdog +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00usb 0x24f09ba1 rt2x00usb_kick_queue +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00usb 0x27ec0ceb rt2x00usb_uninitialize +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00usb 0x40975422 rt2x00usb_resume +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00usb 0x44eb156d rt2x00usb_disconnect +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00usb 0x4a7a104c rt2x00usb_register_read_async +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00usb 0x4fde10e2 rt2x00usb_vendor_request_buff +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00usb 0x77a4a217 rt2x00usb_probe +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00usb 0x81aee57f rt2x00usb_vendor_request +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00usb 0x81b70855 rt2x00usb_regbusy_read +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00usb 0x8c1cfad2 rt2x00usb_clear_entry +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00usb 0xab8d9d2b rt2x00usb_vendor_req_buff_lock +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00usb 0xb1039a2d rt2x00usb_disable_radio +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00usb 0xd9d3ed0b rt2x00usb_initialize +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00usb 0xda52fd26 rt2x00usb_flush_queue +EXPORT_SYMBOL_GPL drivers/net/wireless/realtek/rtlwifi/rtl8192c/rtl8192c-common 0x00fe4748 rtl92c_set_p2p_ps_offload_cmd +EXPORT_SYMBOL_GPL drivers/net/wireless/realtek/rtlwifi/rtl8192c/rtl8192c-common 0x6e814e10 dm_writepowerindex +EXPORT_SYMBOL_GPL drivers/net/wireless/realtek/rtlwifi/rtl8192c/rtl8192c-common 0x847d83b7 dm_restorepowerindex +EXPORT_SYMBOL_GPL drivers/net/wireless/realtek/rtlwifi/rtl8192c/rtl8192c-common 0xe5956f2e dm_savepowerindex +EXPORT_SYMBOL_GPL drivers/net/wireless/realtek/rtlwifi/rtl8723com/rtl8723-common 0x0cf8f383 rtl8723_phy_query_bb_reg +EXPORT_SYMBOL_GPL drivers/net/wireless/realtek/rtlwifi/rtl8723com/rtl8723-common 0x369a2894 rtl8723_phy_path_a_fill_iqk_matrix +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 0x42ac69de rtl8723_phy_save_mac_registers +EXPORT_SYMBOL_GPL drivers/net/wireless/realtek/rtlwifi/rtl8723com/rtl8723-common 0x46876738 rtl8723_phy_mac_setting_calibration +EXPORT_SYMBOL_GPL drivers/net/wireless/realtek/rtlwifi/rtl8723com/rtl8723-common 0x485e0105 rtl8723_dm_init_dynamic_txpower +EXPORT_SYMBOL_GPL drivers/net/wireless/realtek/rtlwifi/rtl8723com/rtl8723-common 0x4a4424c1 rtl8723_phy_set_bb_reg +EXPORT_SYMBOL_GPL drivers/net/wireless/realtek/rtlwifi/rtl8723com/rtl8723-common 0x4ae048b5 rtl8723_phy_path_adda_on +EXPORT_SYMBOL_GPL drivers/net/wireless/realtek/rtlwifi/rtl8723com/rtl8723-common 0x4c08b60e rtl8723_fw_free_to_go +EXPORT_SYMBOL_GPL drivers/net/wireless/realtek/rtlwifi/rtl8723com/rtl8723-common 0x5af9de5e rtl8723_cmd_send_packet +EXPORT_SYMBOL_GPL drivers/net/wireless/realtek/rtlwifi/rtl8723com/rtl8723-common 0x6d98506e rtl8723_dm_init_dynamic_bb_powersaving +EXPORT_SYMBOL_GPL drivers/net/wireless/realtek/rtlwifi/rtl8723com/rtl8723-common 0x78596194 rtl8723_phy_rf_serial_write +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 0x8bf1fc47 rtl8723ae_firmware_selfreset +EXPORT_SYMBOL_GPL drivers/net/wireless/realtek/rtlwifi/rtl8723com/rtl8723-common 0x95e258a8 rtl8723_phy_init_bb_rf_reg_def +EXPORT_SYMBOL_GPL drivers/net/wireless/realtek/rtlwifi/rtl8723com/rtl8723-common 0x978d83f8 rtl8723_save_adda_registers +EXPORT_SYMBOL_GPL drivers/net/wireless/realtek/rtlwifi/rtl8723com/rtl8723-common 0x9fb8c83e rtl8723_phy_pi_mode_switch +EXPORT_SYMBOL_GPL drivers/net/wireless/realtek/rtlwifi/rtl8723com/rtl8723-common 0xa8d3b179 rtl8723_phy_reload_mac_registers +EXPORT_SYMBOL_GPL drivers/net/wireless/realtek/rtlwifi/rtl8723com/rtl8723-common 0xab41f6af rtl8723_phy_txpwr_idx_to_dbm +EXPORT_SYMBOL_GPL drivers/net/wireless/realtek/rtlwifi/rtl8723com/rtl8723-common 0xae46864b rtl8723_phy_rf_serial_read +EXPORT_SYMBOL_GPL drivers/net/wireless/realtek/rtlwifi/rtl8723com/rtl8723-common 0xb6dfe406 rtl8723_download_fw +EXPORT_SYMBOL_GPL drivers/net/wireless/realtek/rtlwifi/rtl8723com/rtl8723-common 0xbb4ec9f6 rtl8723_enable_fw_download +EXPORT_SYMBOL_GPL drivers/net/wireless/realtek/rtlwifi/rtl8723com/rtl8723-common 0xbc6df7dc rtl8723_write_fw +EXPORT_SYMBOL_GPL drivers/net/wireless/realtek/rtlwifi/rtl8723com/rtl8723-common 0xddc4b45e rtl8723be_firmware_selfreset +EXPORT_SYMBOL_GPL drivers/net/wireless/realtek/rtlwifi/rtl8723com/rtl8723-common 0xe5bdc13d rtl8723_phy_reload_adda_registers +EXPORT_SYMBOL_GPL drivers/net/wireless/realtek/rtlwifi/rtl8723com/rtl8723-common 0xee596723 rtl8723_phy_path_a_standby +EXPORT_SYMBOL_GPL drivers/net/wireless/realtek/rtlwifi/rtl8723com/rtl8723-common 0xef87f5cf rtl8723_dm_init_edca_turbo +EXPORT_SYMBOL_GPL drivers/net/wireless/realtek/rtlwifi/rtlwifi 0x0cc20085 rtl_action_proc +EXPORT_SYMBOL_GPL drivers/net/wireless/realtek/rtlwifi/rtlwifi 0x0eafe540 rtl_efuse_ops_init +EXPORT_SYMBOL_GPL drivers/net/wireless/realtek/rtlwifi/rtlwifi 0x16d96f8d rtl_tx_ackqueue +EXPORT_SYMBOL_GPL drivers/net/wireless/realtek/rtlwifi/rtlwifi 0x18f1a95c rtl_deinit_deferred_work +EXPORT_SYMBOL_GPL drivers/net/wireless/realtek/rtlwifi/rtlwifi 0x1db72b39 rtl_deinit_core +EXPORT_SYMBOL_GPL drivers/net/wireless/realtek/rtlwifi/rtlwifi 0x26e284cc rtl_get_hwinfo +EXPORT_SYMBOL_GPL drivers/net/wireless/realtek/rtlwifi/rtlwifi 0x2921a4d4 rtl_btc_status_false +EXPORT_SYMBOL_GPL drivers/net/wireless/realtek/rtlwifi/rtlwifi 0x2aa10523 rtl_get_hal_edca_param +EXPORT_SYMBOL_GPL drivers/net/wireless/realtek/rtlwifi/rtlwifi 0x2d5c4d41 rtl_p2p_info +EXPORT_SYMBOL_GPL drivers/net/wireless/realtek/rtlwifi/rtlwifi 0x2e5382f9 rtl_fill_dummy +EXPORT_SYMBOL_GPL drivers/net/wireless/realtek/rtlwifi/rtlwifi 0x37b993b4 rtl_global_var +EXPORT_SYMBOL_GPL drivers/net/wireless/realtek/rtlwifi/rtlwifi 0x5064bb36 rtl_recognize_peer +EXPORT_SYMBOL_GPL drivers/net/wireless/realtek/rtlwifi/rtlwifi 0x539613ea rtl_tx_report_handler +EXPORT_SYMBOL_GPL drivers/net/wireless/realtek/rtlwifi/rtlwifi 0x66f61853 rtl_is_special_data +EXPORT_SYMBOL_GPL drivers/net/wireless/realtek/rtlwifi/rtlwifi 0x833bd856 rtl_lps_leave +EXPORT_SYMBOL_GPL drivers/net/wireless/realtek/rtlwifi/rtlwifi 0x8d69fc76 rtl_fw_page_write +EXPORT_SYMBOL_GPL drivers/net/wireless/realtek/rtlwifi/rtlwifi 0x97b493ba rtl_init_core +EXPORT_SYMBOL_GPL drivers/net/wireless/realtek/rtlwifi/rtlwifi 0x97e05663 rtl_tid_to_ac +EXPORT_SYMBOL_GPL drivers/net/wireless/realtek/rtlwifi/rtlwifi 0x9c499a5a rtl_fw_block_write +EXPORT_SYMBOL_GPL drivers/net/wireless/realtek/rtlwifi/rtlwifi 0xa1358bf8 rtl_deinit_rfkill +EXPORT_SYMBOL_GPL drivers/net/wireless/realtek/rtlwifi/rtlwifi 0xa6e8fc26 rtl_set_tx_report +EXPORT_SYMBOL_GPL drivers/net/wireless/realtek/rtlwifi/rtlwifi 0xb0f3bb56 rtl_ips_nic_on +EXPORT_SYMBOL_GPL drivers/net/wireless/realtek/rtlwifi/rtlwifi 0xbaf12c9d rtl_swlps_beacon +EXPORT_SYMBOL_GPL drivers/net/wireless/realtek/rtlwifi/rtlwifi 0xc036134d rtl_lps_enter +EXPORT_SYMBOL_GPL drivers/net/wireless/realtek/rtlwifi/rtlwifi 0xc4af27a8 read_efuse_byte +EXPORT_SYMBOL_GPL drivers/net/wireless/realtek/rtlwifi/rtlwifi 0xc8b07477 rtl_init_rx_config +EXPORT_SYMBOL_GPL drivers/net/wireless/realtek/rtlwifi/rtlwifi 0xc90f7c42 rtl_ops +EXPORT_SYMBOL_GPL drivers/net/wireless/realtek/rtlwifi/rtlwifi 0xd72c1b8b rtl_beacon_statistic +EXPORT_SYMBOL_GPL drivers/net/wireless/realtek/rtlwifi/rtlwifi 0xeb519a36 rtl_tx_mgmt_proc +EXPORT_SYMBOL_GPL drivers/net/wireless/realtek/rtlwifi/rtlwifi 0xf8ff6add rtl_lps_change_work_callback +EXPORT_SYMBOL_GPL drivers/net/wireless/rsi/rsi_91x 0x0938ad3f rsi_hal_device_init +EXPORT_SYMBOL_GPL drivers/net/wireless/rsi/rsi_91x 0x0f5c3ce9 rsi_zone_enabled +EXPORT_SYMBOL_GPL drivers/net/wireless/rsi/rsi_91x 0x40454fcb rsi_mac80211_detach +EXPORT_SYMBOL_GPL drivers/net/wireless/rsi/rsi_91x 0x4d7ccf4d rsi_read_pkt +EXPORT_SYMBOL_GPL drivers/net/wireless/rsi/rsi_91x 0x896b05c9 rsi_91x_init +EXPORT_SYMBOL_GPL drivers/net/wireless/rsi/rsi_91x 0xa7e802ad rsi_91x_deinit +EXPORT_SYMBOL_GPL drivers/net/wireless/rsi/rsi_91x 0xcd173710 rsi_dbg +EXPORT_SYMBOL_GPL drivers/net/wireless/st/cw1200/cw1200_core 0x61bc90fb cw1200_core_release +EXPORT_SYMBOL_GPL drivers/net/wireless/st/cw1200/cw1200_core 0xb23a06b8 cw1200_can_suspend +EXPORT_SYMBOL_GPL drivers/net/wireless/st/cw1200/cw1200_core 0xbaceea13 cw1200_core_probe +EXPORT_SYMBOL_GPL drivers/net/wireless/st/cw1200/cw1200_core 0xff024a36 cw1200_irq_handler +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wl1251/wl1251 0x07c0ddd6 wl1251_alloc_hw +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wl1251/wl1251 0x50c21141 wl1251_init_ieee80211 +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wl1251/wl1251 0xc7eeed33 wl1251_free_hw +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x0132e671 wlcore_event_dummy_packet +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x02bfe874 wl1271_acx_set_ht_capabilities +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x06d27e78 wl1271_acx_sleep_auth +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x06d3b27e wl12xx_debug_level +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x0c27b748 wl12xx_cmd_build_probe_req +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x10e0e83c wlcore_event_sched_scan_completed +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x17e0787d wlcore_boot_upload_firmware +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x1bd26266 wl12xx_acx_mem_cfg +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x1e623aeb wlcore_event_roc_complete +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x20351125 wlcore_get_native_channel_type +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x207f7d46 wlcore_event_soft_gemini_sense +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x243babc3 wlcore_event_rssi_trigger +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x25d64899 wlcore_synchronize_interrupts +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x263f93e7 wlcore_event_channel_switch +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x28a91b2c wl1271_debugfs_update_stats +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x323af510 wlcore_scan_sched_scan_ssid_list +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x39fe4611 wlcore_set_key +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x3e60c6fc wlcore_enable_interrupts +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x479e2680 wl1271_tx_min_rate_get +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x5065b8f5 wl1271_cmd_send +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x52f96fef wlcore_set_scan_chan_params +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x5e63610b wlcore_translate_addr +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x6b950a47 wlcore_scan_sched_scan_results +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x71feacf8 wlcore_cmd_generic_cfg +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x75035acb wl1271_tx_flush +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x77688b55 wlcore_disable_interrupts +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x7bb8246f wlcore_alloc_hw +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x814fa8e8 wl1271_acx_pm_config +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x84099a7b wlcore_event_beacon_loss +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x8c7c163a wlcore_event_max_tx_failure +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x9b254f2f wlcore_event_ba_rx_constraint +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x9b47da24 wlcore_disable_interrupts_nosync +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0xa0898c41 wlcore_boot_run_firmware +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0xa3cf477d wl1271_cmd_data_path +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0xb407b362 wl1271_acx_init_mem_config +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0xc1db71fa wl1271_format_buffer +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0xc265bab4 wl1271_cmd_test +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0xccf294c3 wl1271_cmd_configure +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0xcda26207 wlcore_probe +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0xd8ec2acc wlcore_event_inactive_sta +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0xdaebe774 wlcore_set_partition +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0xdaebf0bb wlcore_free_hw +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0xe9620b13 wlcore_remove +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0xfbfa42ea wlcore_cmd_wait_for_event_or_timeout +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0xfc887f86 wlcore_event_fw_logger +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0xff5924ac wlcore_boot_upload_nvs +EXPORT_SYMBOL_GPL drivers/nfc/nfcmrvl/nfcmrvl 0x54a7fa73 nfcmrvl_parse_dt +EXPORT_SYMBOL_GPL drivers/nfc/nfcmrvl/nfcmrvl 0x825fc9e7 nfcmrvl_nci_unregister_dev +EXPORT_SYMBOL_GPL drivers/nfc/nfcmrvl/nfcmrvl 0xe0170f8c nfcmrvl_nci_recv_frame +EXPORT_SYMBOL_GPL drivers/nfc/nfcmrvl/nfcmrvl 0xe8af330c nfcmrvl_nci_register_dev +EXPORT_SYMBOL_GPL drivers/nfc/pn533/pn533 0x35fe8c14 pn533_finalize_setup +EXPORT_SYMBOL_GPL drivers/nfc/pn533/pn533 0x3f57d366 pn53x_common_init +EXPORT_SYMBOL_GPL drivers/nfc/pn533/pn533 0x71038192 pn53x_register_nfc +EXPORT_SYMBOL_GPL drivers/nfc/pn533/pn533 0x79dbe9d8 pn533_rx_frame_is_cmd_response +EXPORT_SYMBOL_GPL drivers/nfc/pn533/pn533 0x7c33edb9 pn53x_unregister_nfc +EXPORT_SYMBOL_GPL drivers/nfc/pn533/pn533 0x91278ca8 pn532_i2c_nfc_alloc +EXPORT_SYMBOL_GPL drivers/nfc/pn533/pn533 0xdecfd339 pn533_rx_frame_is_ack +EXPORT_SYMBOL_GPL drivers/nfc/pn533/pn533 0xe62e1423 pn53x_common_clean +EXPORT_SYMBOL_GPL drivers/nfc/st-nci/st-nci 0x2aac8661 st_nci_hci_load_session +EXPORT_SYMBOL_GPL drivers/nfc/st-nci/st-nci 0x4075c043 st_nci_hci_cmd_received +EXPORT_SYMBOL_GPL drivers/nfc/st-nci/st-nci 0x44fb5414 st_nci_enable_se +EXPORT_SYMBOL_GPL drivers/nfc/st-nci/st-nci 0x477c98ac st_nci_hci_event_received +EXPORT_SYMBOL_GPL drivers/nfc/st-nci/st-nci 0x5eb2e947 st_nci_remove +EXPORT_SYMBOL_GPL drivers/nfc/st-nci/st-nci 0x67b090c1 st_nci_discover_se +EXPORT_SYMBOL_GPL drivers/nfc/st-nci/st-nci 0x79a67e7d st_nci_disable_se +EXPORT_SYMBOL_GPL drivers/nfc/st-nci/st-nci 0x9dc7d7f7 st_nci_probe +EXPORT_SYMBOL_GPL drivers/nfc/st95hf/st95hf 0x50cd1c7d st95hf_spi_send +EXPORT_SYMBOL_GPL drivers/nfc/st95hf/st95hf 0x6c073c62 st95hf_spi_recv_echo_res +EXPORT_SYMBOL_GPL drivers/nfc/st95hf/st95hf 0x917a9c2c st95hf_spi_recv_response +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 0x82e6c13d ntb_transport_qp_num +EXPORT_SYMBOL_GPL drivers/ntb/ntb_transport 0x8b8de60a ntb_transport_register_client +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 0xd40e7a02 ntb_transport_rx_enqueue +EXPORT_SYMBOL_GPL drivers/ntb/ntb_transport 0xdaa67d42 ntb_transport_create_queue +EXPORT_SYMBOL_GPL drivers/ntb/ntb_transport 0xeccd8c24 ntb_transport_unregister_client +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/nvdimm/nd_virtio 0x73aa4499 async_pmem_flush +EXPORT_SYMBOL_GPL drivers/nvdimm/nd_virtio 0x961d7432 virtio_pmem_host_ack +EXPORT_SYMBOL_GPL drivers/nvme/host/nvme-core 0x0e07983f nvme_stop_ctrl +EXPORT_SYMBOL_GPL drivers/nvme/host/nvme-core 0x14a9c539 nvme_sync_queues +EXPORT_SYMBOL_GPL drivers/nvme/host/nvme-core 0x1848ad2d nvme_alloc_request +EXPORT_SYMBOL_GPL drivers/nvme/host/nvme-core 0x19876274 __tracepoint_nvme_sq +EXPORT_SYMBOL_GPL drivers/nvme/host/nvme-core 0x1a5fc14a nvme_setup_cmd +EXPORT_SYMBOL_GPL drivers/nvme/host/nvme-core 0x1f65bec2 nvme_start_queues +EXPORT_SYMBOL_GPL drivers/nvme/host/nvme-core 0x257eca54 nvme_init_ctrl +EXPORT_SYMBOL_GPL drivers/nvme/host/nvme-core 0x32b35397 nvme_cleanup_cmd +EXPORT_SYMBOL_GPL drivers/nvme/host/nvme-core 0x361337f9 nvme_delete_ctrl +EXPORT_SYMBOL_GPL drivers/nvme/host/nvme-core 0x40a1a232 nvme_shutdown_ctrl +EXPORT_SYMBOL_GPL drivers/nvme/host/nvme-core 0x45e68bad nvme_get_features +EXPORT_SYMBOL_GPL drivers/nvme/host/nvme-core 0x49224181 nvme_reset_wq +EXPORT_SYMBOL_GPL drivers/nvme/host/nvme-core 0x4d56ad2f nvme_uninit_ctrl +EXPORT_SYMBOL_GPL drivers/nvme/host/nvme-core 0x539cc6b7 nvme_reset_ctrl +EXPORT_SYMBOL_GPL drivers/nvme/host/nvme-core 0x5c5e367e nvme_enable_ctrl +EXPORT_SYMBOL_GPL drivers/nvme/host/nvme-core 0x6404a17c nvme_start_ctrl +EXPORT_SYMBOL_GPL drivers/nvme/host/nvme-core 0x64b62862 nvme_wq +EXPORT_SYMBOL_GPL drivers/nvme/host/nvme-core 0x66ca02c4 __nvme_submit_sync_cmd +EXPORT_SYMBOL_GPL drivers/nvme/host/nvme-core 0x70b302e8 nvme_try_sched_reset +EXPORT_SYMBOL_GPL drivers/nvme/host/nvme-core 0x7dade8ee nvme_set_queue_count +EXPORT_SYMBOL_GPL drivers/nvme/host/nvme-core 0x7ee9d543 nvme_change_ctrl_state +EXPORT_SYMBOL_GPL drivers/nvme/host/nvme-core 0x813cf212 nvme_io_timeout +EXPORT_SYMBOL_GPL drivers/nvme/host/nvme-core 0x8ab19397 nvme_sec_submit +EXPORT_SYMBOL_GPL drivers/nvme/host/nvme-core 0x93b0b7bd nvme_set_features +EXPORT_SYMBOL_GPL drivers/nvme/host/nvme-core 0x94409cee nvme_complete_async_event +EXPORT_SYMBOL_GPL drivers/nvme/host/nvme-core 0x948f655f nvme_wait_reset +EXPORT_SYMBOL_GPL drivers/nvme/host/nvme-core 0x9b34400f nvme_stop_queues +EXPORT_SYMBOL_GPL drivers/nvme/host/nvme-core 0xa04607db nvme_wait_freeze_timeout +EXPORT_SYMBOL_GPL drivers/nvme/host/nvme-core 0xa67d5b66 nvme_stop_keep_alive +EXPORT_SYMBOL_GPL drivers/nvme/host/nvme-core 0xaa0fe72c nvme_complete_rq +EXPORT_SYMBOL_GPL drivers/nvme/host/nvme-core 0xaba9c633 nvme_wait_freeze +EXPORT_SYMBOL_GPL drivers/nvme/host/nvme-core 0xadd9ca22 nvme_cancel_request +EXPORT_SYMBOL_GPL drivers/nvme/host/nvme-core 0xb0ed0347 nvme_kill_queues +EXPORT_SYMBOL_GPL drivers/nvme/host/nvme-core 0xb4ad6bc9 nvme_start_freeze +EXPORT_SYMBOL_GPL drivers/nvme/host/nvme-core 0xc54fa3fd nvme_reset_ctrl_sync +EXPORT_SYMBOL_GPL drivers/nvme/host/nvme-core 0xd10e3e2d nvme_disable_ctrl +EXPORT_SYMBOL_GPL drivers/nvme/host/nvme-core 0xd16fcd76 nvme_unfreeze +EXPORT_SYMBOL_GPL drivers/nvme/host/nvme-core 0xd45434ee admin_timeout +EXPORT_SYMBOL_GPL drivers/nvme/host/nvme-core 0xd58bbbcb nvme_delete_wq +EXPORT_SYMBOL_GPL drivers/nvme/host/nvme-core 0xe0139fea nvme_init_identify +EXPORT_SYMBOL_GPL drivers/nvme/host/nvme-core 0xe659fac4 nvme_remove_namespaces +EXPORT_SYMBOL_GPL drivers/nvme/host/nvme-core 0xef0b900b nvme_submit_sync_cmd +EXPORT_SYMBOL_GPL drivers/nvme/host/nvme-core 0xf8292d05 nvme_sync_io_queues +EXPORT_SYMBOL_GPL drivers/nvme/host/nvme-fabrics 0x288a3346 nvmf_connect_io_queue +EXPORT_SYMBOL_GPL drivers/nvme/host/nvme-fabrics 0x3f4ce82e nvmf_reg_write32 +EXPORT_SYMBOL_GPL drivers/nvme/host/nvme-fabrics 0x3fea7ab6 nvmf_reg_read32 +EXPORT_SYMBOL_GPL drivers/nvme/host/nvme-fabrics 0x4e28f845 nvmf_ip_options_match +EXPORT_SYMBOL_GPL drivers/nvme/host/nvme-fabrics 0x5e6da3a8 nvmf_connect_admin_queue +EXPORT_SYMBOL_GPL drivers/nvme/host/nvme-fabrics 0x999b6ecf nvmf_free_options +EXPORT_SYMBOL_GPL drivers/nvme/host/nvme-fabrics 0x9e4be8b1 nvmf_should_reconnect +EXPORT_SYMBOL_GPL drivers/nvme/host/nvme-fabrics 0xbb19d6d1 __nvmf_check_ready +EXPORT_SYMBOL_GPL drivers/nvme/host/nvme-fabrics 0xcf11fb37 nvmf_get_address +EXPORT_SYMBOL_GPL drivers/nvme/host/nvme-fabrics 0xd41eb4e6 nvmf_fail_nonready_command +EXPORT_SYMBOL_GPL drivers/nvme/host/nvme-fabrics 0xda41457f nvmf_register_transport +EXPORT_SYMBOL_GPL drivers/nvme/host/nvme-fabrics 0xf77c8898 nvmf_reg_read64 +EXPORT_SYMBOL_GPL drivers/nvme/host/nvme-fabrics 0xf8fdd3b7 nvmf_unregister_transport +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 0x8a9cf5a7 nvme_fc_set_remoteport_devloss +EXPORT_SYMBOL_GPL drivers/nvme/host/nvme-fc 0x96445818 nvme_fc_register_localport +EXPORT_SYMBOL_GPL drivers/nvme/host/nvme-fc 0xbb0e18a6 nvme_fc_rcv_ls_req +EXPORT_SYMBOL_GPL drivers/nvme/host/nvme-fc 0xfca9dc99 nvme_fc_unregister_remoteport +EXPORT_SYMBOL_GPL drivers/nvme/target/nvmet 0x18756c48 nvmet_req_alloc_sgls +EXPORT_SYMBOL_GPL drivers/nvme/target/nvmet 0x23cbdaae nvmet_sq_destroy +EXPORT_SYMBOL_GPL drivers/nvme/target/nvmet 0x3b6a4715 nvmet_check_transfer_len +EXPORT_SYMBOL_GPL drivers/nvme/target/nvmet 0x4c649e19 nvmet_unregister_transport +EXPORT_SYMBOL_GPL drivers/nvme/target/nvmet 0x5589ee70 nvmet_req_complete +EXPORT_SYMBOL_GPL drivers/nvme/target/nvmet 0x68dacf99 nvmet_register_transport +EXPORT_SYMBOL_GPL drivers/nvme/target/nvmet 0x6a3ea255 nvmet_req_free_sgls +EXPORT_SYMBOL_GPL drivers/nvme/target/nvmet 0x83053966 nvmet_req_init +EXPORT_SYMBOL_GPL drivers/nvme/target/nvmet 0x9b213a09 nvmet_ctrl_fatal_error +EXPORT_SYMBOL_GPL drivers/nvme/target/nvmet 0xb5c0fe94 nvmet_sq_init +EXPORT_SYMBOL_GPL drivers/nvme/target/nvmet 0xfe69e4e5 nvmet_req_uninit +EXPORT_SYMBOL_GPL drivers/nvme/target/nvmet-fc 0x0b98123d nvmet_fc_rcv_ls_req +EXPORT_SYMBOL_GPL drivers/nvme/target/nvmet-fc 0x1048b92a nvmet_fc_rcv_fcp_req +EXPORT_SYMBOL_GPL drivers/nvme/target/nvmet-fc 0x48c14093 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 0x7fa5302a nvmet_fc_rcv_fcp_abort +EXPORT_SYMBOL_GPL drivers/nvme/target/nvmet-fc 0x9ef76d99 nvmet_fc_unregister_targetport +EXPORT_SYMBOL_GPL drivers/pci/switch/switchtec 0xadae4e08 switchtec_class +EXPORT_SYMBOL_GPL drivers/phy/qualcomm/phy-qcom-ufs 0x019d785a get_ufs_qcom_phy +EXPORT_SYMBOL_GPL drivers/phy/qualcomm/phy-qcom-ufs 0x07d9d00d ufs_qcom_phy_save_controller_version +EXPORT_SYMBOL_GPL drivers/phy/qualcomm/phy-qcom-ufs 0x4720a474 ufs_qcom_phy_init_vregulators +EXPORT_SYMBOL_GPL drivers/phy/qualcomm/phy-qcom-ufs 0x4a906c2e ufs_qcom_phy_calibrate +EXPORT_SYMBOL_GPL drivers/phy/qualcomm/phy-qcom-ufs 0x68958d72 ufs_qcom_phy_power_off +EXPORT_SYMBOL_GPL drivers/phy/qualcomm/phy-qcom-ufs 0x6c86ca1c ufs_qcom_phy_set_tx_lane_enable +EXPORT_SYMBOL_GPL drivers/phy/qualcomm/phy-qcom-ufs 0x7e922a49 ufs_qcom_phy_power_on +EXPORT_SYMBOL_GPL drivers/phy/qualcomm/phy-qcom-ufs 0xe48e5bff ufs_qcom_phy_generic_probe +EXPORT_SYMBOL_GPL drivers/phy/qualcomm/phy-qcom-ufs 0xfd68c5f7 ufs_qcom_phy_init_clks +EXPORT_SYMBOL_GPL drivers/phy/ti/phy-omap-control 0x825cd20e omap_control_phy_power +EXPORT_SYMBOL_GPL drivers/phy/ti/phy-omap-control 0xd0e30436 omap_control_pcie_pcs +EXPORT_SYMBOL_GPL drivers/phy/ti/phy-omap-control 0xf3056ac0 omap_control_usb_set_mode +EXPORT_SYMBOL_GPL drivers/phy/ti/phy-omap-usb2 0x00d48f33 omap_usb2_set_comparator +EXPORT_SYMBOL_GPL drivers/pinctrl/pinctrl-mcp23s08 0x22884700 mcp23s08_probe_one +EXPORT_SYMBOL_GPL drivers/pinctrl/pinctrl-mcp23s08 0x44018e07 mcp23x17_regmap +EXPORT_SYMBOL_GPL drivers/pinctrl/pinctrl-mcp23s08 0x747a2ae8 mcp23x08_regmap +EXPORT_SYMBOL_GPL drivers/platform/chrome/cros-ec-sensorhub 0xb094b9da cros_ec_sensorhub_register_push_data +EXPORT_SYMBOL_GPL drivers/platform/chrome/cros-ec-sensorhub 0xe735e724 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/power/reset/reboot-mode 0x2bd113eb devm_reboot_mode_unregister +EXPORT_SYMBOL_GPL drivers/power/reset/reboot-mode 0x2bdad6b1 devm_reboot_mode_register +EXPORT_SYMBOL_GPL drivers/power/reset/reboot-mode 0xa99188b6 reboot_mode_unregister +EXPORT_SYMBOL_GPL drivers/power/reset/reboot-mode 0xec683db7 reboot_mode_register +EXPORT_SYMBOL_GPL drivers/power/supply/bq27xxx_battery 0x17f0e293 bq27xxx_battery_setup +EXPORT_SYMBOL_GPL drivers/power/supply/bq27xxx_battery 0x5c527bc8 bq27xxx_battery_teardown +EXPORT_SYMBOL_GPL drivers/power/supply/bq27xxx_battery 0x7ea7d125 bq27xxx_battery_update +EXPORT_SYMBOL_GPL drivers/power/supply/pcf50633-charger 0x569adb01 pcf50633_mbc_usb_curlim_set +EXPORT_SYMBOL_GPL drivers/power/supply/pcf50633-charger 0x86fdd458 pcf50633_mbc_get_status +EXPORT_SYMBOL_GPL drivers/power/supply/pcf50633-charger 0xa1277570 pcf50633_mbc_get_usb_online_status +EXPORT_SYMBOL_GPL drivers/ptp/ptp-qoriq 0x174c1f9e ptp_qoriq_settime +EXPORT_SYMBOL_GPL drivers/ptp/ptp-qoriq 0x2eae82b0 ptp_qoriq_isr +EXPORT_SYMBOL_GPL drivers/ptp/ptp-qoriq 0x3474ff51 ptp_qoriq_init +EXPORT_SYMBOL_GPL drivers/ptp/ptp-qoriq 0x43a72fd5 extts_clean_up +EXPORT_SYMBOL_GPL drivers/ptp/ptp-qoriq 0x5370a351 ptp_qoriq_free +EXPORT_SYMBOL_GPL drivers/ptp/ptp-qoriq 0x7e3a12a6 ptp_qoriq_enable +EXPORT_SYMBOL_GPL drivers/ptp/ptp-qoriq 0xa5525acb ptp_qoriq_adjtime +EXPORT_SYMBOL_GPL drivers/ptp/ptp-qoriq 0xcd9a0b5c ptp_qoriq_adjfine +EXPORT_SYMBOL_GPL drivers/ptp/ptp-qoriq 0xe5eeca60 ptp_qoriq_gettime +EXPORT_SYMBOL_GPL drivers/regulator/mc13xxx-regulator-core 0x0b1bd5ef mc13xxx_fixed_regulator_ops +EXPORT_SYMBOL_GPL drivers/regulator/mc13xxx-regulator-core 0x22022635 mc13xxx_fixed_regulator_set_voltage +EXPORT_SYMBOL_GPL drivers/regulator/mc13xxx-regulator-core 0x318de88e mc13xxx_get_num_regulators_dt +EXPORT_SYMBOL_GPL drivers/regulator/mc13xxx-regulator-core 0x7b0298a2 mc13xxx_regulator_ops +EXPORT_SYMBOL_GPL drivers/regulator/mc13xxx-regulator-core 0xb75d71cb mc13xxx_parse_regulators_dt +EXPORT_SYMBOL_GPL drivers/regulator/wm8350-regulator 0x3daa8e61 wm8350_dcdc_set_slot +EXPORT_SYMBOL_GPL drivers/regulator/wm8350-regulator 0x4daf87cf wm8350_ldo_set_slot +EXPORT_SYMBOL_GPL drivers/regulator/wm8350-regulator 0x5f1a383d wm8350_isink_set_flash +EXPORT_SYMBOL_GPL drivers/regulator/wm8350-regulator 0x6683aec7 wm8350_register_regulator +EXPORT_SYMBOL_GPL drivers/regulator/wm8350-regulator 0x9006f9cb wm8350_dcdc25_set_mode +EXPORT_SYMBOL_GPL drivers/regulator/wm8350-regulator 0xd7054e85 wm8350_register_led +EXPORT_SYMBOL_GPL drivers/regulator/wm8400-regulator 0x99f5aec8 wm8400_register_regulator +EXPORT_SYMBOL_GPL drivers/remoteproc/mtk_scp 0x72683408 scp_get_vdec_hw_capa +EXPORT_SYMBOL_GPL drivers/remoteproc/mtk_scp 0x75a7a69c scp_get_venc_hw_capa +EXPORT_SYMBOL_GPL drivers/remoteproc/mtk_scp 0x81d82ada scp_put +EXPORT_SYMBOL_GPL drivers/remoteproc/mtk_scp 0x8e816802 scp_get_rproc +EXPORT_SYMBOL_GPL drivers/remoteproc/mtk_scp 0x96a0eca8 scp_get +EXPORT_SYMBOL_GPL drivers/remoteproc/mtk_scp 0xdf3f12a3 scp_mapping_dm_addr +EXPORT_SYMBOL_GPL drivers/remoteproc/mtk_scp 0xf796fcfc scp_get_device +EXPORT_SYMBOL_GPL drivers/remoteproc/mtk_scp_ipi 0x09313652 scp_memcpy_aligned +EXPORT_SYMBOL_GPL drivers/remoteproc/mtk_scp_ipi 0x27ca4236 scp_ipi_unregister +EXPORT_SYMBOL_GPL drivers/remoteproc/mtk_scp_ipi 0x9fe5a579 scp_ipi_unlock +EXPORT_SYMBOL_GPL drivers/remoteproc/mtk_scp_ipi 0xdfcd3f3c scp_ipi_lock +EXPORT_SYMBOL_GPL drivers/remoteproc/mtk_scp_ipi 0xe0f9dbe4 scp_ipi_send +EXPORT_SYMBOL_GPL drivers/remoteproc/mtk_scp_ipi 0xf8ba1c03 scp_ipi_register +EXPORT_SYMBOL_GPL drivers/remoteproc/qcom_common 0x19773869 qcom_remove_smd_subdev +EXPORT_SYMBOL_GPL drivers/remoteproc/qcom_common 0x1e479e00 qcom_register_dump_segments +EXPORT_SYMBOL_GPL drivers/remoteproc/qcom_common 0x2d3e50fc qcom_add_smd_subdev +EXPORT_SYMBOL_GPL drivers/remoteproc/qcom_common 0x31bfd40e qcom_unregister_ssr_notifier +EXPORT_SYMBOL_GPL drivers/remoteproc/qcom_common 0x86a84622 qcom_register_ssr_notifier +EXPORT_SYMBOL_GPL drivers/remoteproc/qcom_common 0x8e953505 qcom_remove_ssr_subdev +EXPORT_SYMBOL_GPL drivers/remoteproc/qcom_common 0xb7034307 qcom_add_glink_subdev +EXPORT_SYMBOL_GPL drivers/remoteproc/qcom_common 0xe0a2f0cc qcom_remove_glink_subdev +EXPORT_SYMBOL_GPL drivers/remoteproc/qcom_common 0xfb157265 qcom_add_ssr_subdev +EXPORT_SYMBOL_GPL drivers/remoteproc/qcom_q6v5 0x3ae8f574 qcom_q6v5_panic +EXPORT_SYMBOL_GPL drivers/remoteproc/qcom_q6v5 0xc225221d qcom_q6v5_request_stop +EXPORT_SYMBOL_GPL drivers/remoteproc/qcom_q6v5 0xd4f4c0ed qcom_q6v5_unprepare +EXPORT_SYMBOL_GPL drivers/remoteproc/qcom_q6v5 0xdb44d848 qcom_q6v5_init +EXPORT_SYMBOL_GPL drivers/remoteproc/qcom_q6v5 0xe1e7b78c qcom_q6v5_wait_for_start +EXPORT_SYMBOL_GPL drivers/remoteproc/qcom_q6v5 0xe9fe439b qcom_q6v5_prepare +EXPORT_SYMBOL_GPL drivers/remoteproc/qcom_q6v5_ipa_notify 0x78106ee6 qcom_add_ipa_notify_subdev +EXPORT_SYMBOL_GPL drivers/remoteproc/qcom_q6v5_ipa_notify 0xe57a8506 qcom_remove_ipa_notify_subdev +EXPORT_SYMBOL_GPL drivers/remoteproc/qcom_q6v5_mss 0x095d7ab2 qcom_deregister_ipa_notify +EXPORT_SYMBOL_GPL drivers/remoteproc/qcom_q6v5_mss 0xfe1a028d qcom_register_ipa_notify +EXPORT_SYMBOL_GPL drivers/remoteproc/qcom_sysmon 0x0077f833 qcom_add_sysmon_subdev +EXPORT_SYMBOL_GPL drivers/remoteproc/qcom_sysmon 0xa881c6fc qcom_remove_sysmon_subdev +EXPORT_SYMBOL_GPL drivers/rpmsg/mtk_rpmsg 0x16411de7 mtk_rpmsg_create_rproc_subdev +EXPORT_SYMBOL_GPL drivers/rpmsg/mtk_rpmsg 0x86903274 mtk_rpmsg_destroy_rproc_subdev +EXPORT_SYMBOL_GPL drivers/rpmsg/qcom_glink 0x149236da qcom_glink_native_remove +EXPORT_SYMBOL_GPL drivers/rpmsg/qcom_glink 0xaa7319b8 qcom_glink_native_probe +EXPORT_SYMBOL_GPL drivers/rpmsg/qcom_glink 0xf14f5684 qcom_glink_ssr_notify +EXPORT_SYMBOL_GPL drivers/rpmsg/qcom_glink 0xfd2d5a1d qcom_glink_native_unregister +EXPORT_SYMBOL_GPL drivers/rpmsg/qcom_glink_smem 0x72dd75d9 qcom_glink_smem_unregister +EXPORT_SYMBOL_GPL drivers/rpmsg/qcom_glink_smem 0xd8e7d7b0 qcom_glink_smem_register +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x0611f6f0 cxgbi_ep_connect +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x06a4ad31 cxgbi_sock_rcv_wr_ack +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x07209365 cxgbi_device_find_by_netdev +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x07a9f1a7 cxgbi_set_conn_param +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x0c1271a1 cxgbi_sock_skb_entail +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x11e24a2a cxgbi_sock_purge_wr_queue +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x179cb677 cxgbi_create_session +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x22f766b5 cxgbi_ep_poll +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x2956da85 cxgbi_get_conn_stats +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x2e82b5d1 cxgbi_parse_pdu_itt +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x38610fa2 cxgbi_conn_pdu_ready +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x38cef9f7 cxgbi_ep_disconnect +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x3b96c75f cxgbi_device_unregister +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x4b5719b1 cxgbi_get_ep_param +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x54b335b7 cxgbi_conn_xmit_pdu +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x5691d2b6 cxgbi_device_portmap_create +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x5d73fc78 cxgbi_sock_closed +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x7811a6ad cxgbi_sock_check_wr_invariants +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x786f0a22 cxgbi_sock_rcv_peer_close +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x7fdb6004 cxgbi_device_unregister_all +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x88bc524e cxgbi_conn_alloc_pdu +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x8bd94f93 cxgbi_iscsi_cleanup +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x9758471e cxgbi_hbas_add +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x9c9e386f cxgbi_device_portmap_cleanup +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x9da734fd cxgbi_bind_conn +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x9dade062 cxgbi_sock_fail_act_open +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0xa59d6db5 cxgbi_cleanup_task +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0xbe91b975 cxgbi_get_host_param +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0xbec8627f cxgbi_ddp_ppm_setup +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0xc011af75 cxgbi_ddp_set_one_ppod +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0xc12c45a5 cxgbi_device_find_by_lldev +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0xc3813bad cxgbi_sock_select_mss +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0xc7366acd cxgbi_device_find_by_netdev_rcu +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0xd449f509 cxgbi_create_conn +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0xda658388 cxgbi_sock_act_open_req_arp_failure +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0xda6d29cf cxgbi_sock_established +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0xda777848 cxgbi_destroy_session +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0xdf8c2476 cxgbi_sock_rcv_abort_rpl +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0xe8727aef cxgbi_sock_free_cpl_skbs +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0xeaad0b39 cxgbi_set_host_param +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0xeb87a59d cxgbi_sock_rcv_close_conn_rpl +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0xef346615 cxgbi_attr_is_visible +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0xf22c0619 cxgbi_hbas_remove +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0xf2cb9b9d cxgbi_conn_init_pdu +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0xf325cc55 cxgbi_device_register +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0xf3f0282f cxgbi_conn_tx_open +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0xfdd540c1 cxgbi_iscsi_init +EXPORT_SYMBOL_GPL drivers/scsi/fcoe/libfcoe 0x0d0a4158 fcoe_get_lesb +EXPORT_SYMBOL_GPL drivers/scsi/fcoe/libfcoe 0x1342a4dd fcoe_start_io +EXPORT_SYMBOL_GPL drivers/scsi/fcoe/libfcoe 0x1c5eba1f fcoe_link_speed_update +EXPORT_SYMBOL_GPL drivers/scsi/fcoe/libfcoe 0x1dee6222 fcoe_ctlr_device_delete +EXPORT_SYMBOL_GPL drivers/scsi/fcoe/libfcoe 0x28221e4b fcoe_libfc_config +EXPORT_SYMBOL_GPL drivers/scsi/fcoe/libfcoe 0x2e0c499e fcoe_fcf_device_add +EXPORT_SYMBOL_GPL drivers/scsi/fcoe/libfcoe 0x352a6101 fcoe_get_paged_crc_eof +EXPORT_SYMBOL_GPL drivers/scsi/fcoe/libfcoe 0x454f6893 fcoe_check_wait_queue +EXPORT_SYMBOL_GPL drivers/scsi/fcoe/libfcoe 0x4e7b1769 fcoe_clean_pending_queue +EXPORT_SYMBOL_GPL drivers/scsi/fcoe/libfcoe 0x5391b564 fcoe_validate_vport_create +EXPORT_SYMBOL_GPL drivers/scsi/fcoe/libfcoe 0x53d41277 fcoe_get_wwn +EXPORT_SYMBOL_GPL drivers/scsi/fcoe/libfcoe 0x740554e7 fcoe_fcf_device_delete +EXPORT_SYMBOL_GPL drivers/scsi/fcoe/libfcoe 0x7a95e938 __fcoe_get_lesb +EXPORT_SYMBOL_GPL drivers/scsi/fcoe/libfcoe 0xbac58840 fcoe_queue_timer +EXPORT_SYMBOL_GPL drivers/scsi/fcoe/libfcoe 0xc78db367 fcoe_ctlr_device_add +EXPORT_SYMBOL_GPL drivers/scsi/fcoe/libfcoe 0xdd944534 fcoe_wwn_from_mac +EXPORT_SYMBOL_GPL drivers/scsi/fcoe/libfcoe 0xf167cb7a fcoe_wwn_to_str +EXPORT_SYMBOL_GPL drivers/scsi/fcoe/libfcoe 0xf4a44d28 fcoe_fc_crc +EXPORT_SYMBOL_GPL drivers/scsi/fcoe/libfcoe 0xfc30fb23 fcoe_ctlr_get_lesb +EXPORT_SYMBOL_GPL drivers/scsi/fdomain 0x060ed51c fdomain_create +EXPORT_SYMBOL_GPL drivers/scsi/fdomain 0x20ff7e26 fdomain_destroy +EXPORT_SYMBOL_GPL drivers/scsi/iscsi_boot_sysfs 0x0d29ce2c iscsi_boot_create_ethernet +EXPORT_SYMBOL_GPL drivers/scsi/iscsi_boot_sysfs 0x25d46100 iscsi_boot_create_acpitbl +EXPORT_SYMBOL_GPL drivers/scsi/iscsi_boot_sysfs 0x2a307f13 iscsi_boot_destroy_kset +EXPORT_SYMBOL_GPL drivers/scsi/iscsi_boot_sysfs 0x2c57cbfc iscsi_boot_create_target +EXPORT_SYMBOL_GPL drivers/scsi/iscsi_boot_sysfs 0x872ea125 iscsi_boot_create_initiator +EXPORT_SYMBOL_GPL drivers/scsi/iscsi_boot_sysfs 0xaeccb26f iscsi_boot_create_host_kset +EXPORT_SYMBOL_GPL drivers/scsi/iscsi_boot_sysfs 0xb2b54bff iscsi_boot_create_kset +EXPORT_SYMBOL_GPL drivers/scsi/libfc/libfc 0xf15aa126 fc_seq_els_rsp_send +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x0639dc19 iscsi_requeue_task +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x0889e77e iscsi_conn_stop +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x11d563cc iscsi_session_setup +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x12b2ad06 iscsi_switch_str_param +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x1d7a6898 iscsi_session_get_param +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x28dcc778 iscsi_conn_setup +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x2d3de99b iscsi_eh_cmd_timed_out +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x3b19983a iscsi_session_recovery_timedout +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x3bef2f73 iscsi_pool_init +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x3d17efa1 iscsi_verify_itt +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x472d2d2d iscsi_put_task +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x4fe73fc0 iscsi_complete_pdu +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x5054fad6 iscsi_eh_abort +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x54169001 iscsi_suspend_tx +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x61d23dbf iscsi_itt_to_task +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x6540ac5b iscsi_session_teardown +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x6793bf46 iscsi_set_param +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x70a52594 iscsi_queuecommand +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x72652cee iscsi_conn_teardown +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x77c1f9e5 iscsi_itt_to_ctask +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x87185474 __iscsi_get_task +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x875ba286 iscsi_conn_start +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x8d303b1b iscsi_pool_free +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x8ffa681b iscsi_eh_session_reset +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x930779ab iscsi_prep_data_out_pdu +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0xa46a0735 iscsi_host_add +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0xa5edd16f iscsi_suspend_queue +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0xaf0f2d69 iscsi_host_set_param +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0xbbf7d981 iscsi_update_cmdsn +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0xc0ec6f55 iscsi_host_alloc +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0xc19cf8cf iscsi_conn_queue_work +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0xc1edb50d __iscsi_put_task +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0xc3f66a6d iscsi_eh_recover_target +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0xc4455ac9 iscsi_session_failure +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0xc5fa7c84 iscsi_complete_scsi_task +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0xc650558f iscsi_conn_failure +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0xcdafffd1 iscsi_conn_send_pdu +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0xd15eb283 iscsi_conn_bind +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0xd7dc3e36 __iscsi_complete_pdu +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0xea03a0ff iscsi_host_get_param +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0xeab9cbd5 iscsi_conn_get_addr_param +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0xed6eb780 iscsi_host_remove +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0xf2a0be8d iscsi_eh_device_reset +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0xf4b31c81 iscsi_target_alloc +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0xf4dab445 iscsi_conn_get_param +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0xfce790b6 iscsi_host_free +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi_tcp 0x29ba84c1 iscsi_tcp_hdr_recv_prep +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi_tcp 0x5ba510b8 iscsi_tcp_conn_setup +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi_tcp 0x6741c032 iscsi_tcp_conn_get_stats +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi_tcp 0x67dd59d7 iscsi_tcp_dgst_header +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi_tcp 0x6fc35b49 iscsi_tcp_segment_done +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi_tcp 0x742965b4 iscsi_tcp_conn_teardown +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi_tcp 0x785ed32f iscsi_tcp_segment_unmap +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi_tcp 0x87a0548a iscsi_tcp_recv_skb +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi_tcp 0x939fb113 iscsi_tcp_r2tpool_free +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi_tcp 0x98fcbf95 iscsi_tcp_set_max_r2t +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi_tcp 0x9b6c3554 iscsi_tcp_r2tpool_alloc +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi_tcp 0xad14ce75 iscsi_tcp_task_xmit +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi_tcp 0xb1db34bc iscsi_tcp_task_init +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi_tcp 0xb612637c iscsi_tcp_cleanup_task +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi_tcp 0xeb8e52a0 iscsi_segment_init_linear +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi_tcp 0xf9409797 iscsi_segment_seek_sg +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi_tcp 0xfa9c1d20 iscsi_tcp_recv_segment_is_hdr +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0x00b27cc2 sas_queuecommand +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0x016de947 sas_get_local_phy +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0x01b947bf sas_eh_device_reset_handler +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0x16ecc21c sas_change_queue_depth +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0x1d3ad1a5 sas_phy_reset +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0x2eaefd80 sas_bios_param +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0x34ea915e sas_slave_configure +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0x3c2737eb sas_alloc_slow_task +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0x3fa520ac sas_request_addr +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0x4f74128e sas_drain_work +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0x5a5b277c sas_domain_attach_transport +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0x620deadc sas_task_abort +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0x6c8cb5dc sas_unregister_ha +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0x81dca250 sas_ioctl +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0xac6774fc sas_eh_abort_handler +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0xac832322 sas_target_alloc +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0xac9b44b0 sas_alloc_task +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0xb1ae6839 dev_attr_phy_event_threshold +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0xbb2618f6 sas_ata_schedule_reset +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0xc52f2670 sas_free_task +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0xcccce4be sas_ssp_task_response +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0xd00db1b8 sas_register_ha +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0xd918a5a1 sas_target_destroy +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0xfe2078d7 sas_eh_target_reset_handler +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x163b63e1 iscsi_lookup_endpoint +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x18c06ab5 iscsi_host_for_each_session +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x191ccaad __tracepoint_iscsi_dbg_sw_tcp +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x243ae2b2 iscsi_is_session_dev +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x2673e46e iscsi_create_session +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x2af2e177 iscsi_create_conn +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x3169c061 iscsi_offload_mesg +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x34b2e5e5 iscsi_session_chkready +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x36252fbb iscsi_post_host_event +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x3e1c4e54 iscsi_alloc_session +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x3efb20df iscsi_destroy_conn +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x44afea42 iscsi_create_iface +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x48aa514c iscsi_block_scsi_eh +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x4b03063d iscsi_destroy_endpoint +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x530eccb3 iscsi_session_event +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x57dbd4bb iscsi_conn_login_event +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x59f4624a iscsi_recv_pdu +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x5bcd0cfb iscsi_dbg_trace +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x5d9d2b2c __tracepoint_iscsi_dbg_eh +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x60719892 iscsi_add_session +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x6520fec2 __tracepoint_iscsi_dbg_session +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x68afbef5 iscsi_register_transport +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x699fe53e iscsi_get_discovery_parent_name +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x6cc36596 iscsi_find_flashnode_sess +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x74016a5b iscsi_unblock_session +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x77df07ac iscsi_remove_session +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x7cd7d6be __tracepoint_iscsi_dbg_conn +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x7d13ca39 iscsi_block_session +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x7f12b0cf iscsi_conn_error_event +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x84a005f1 iscsi_get_router_state_name +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x85a2bcc2 __tracepoint_iscsi_dbg_tcp +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x89ba9b42 iscsi_create_flashnode_conn +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x8b33429c iscsi_is_session_online +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x8bf1cd7a iscsi_ping_comp_event +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x926fd1af iscsi_create_flashnode_sess +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x94ccb1b5 iscsi_destroy_iface +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x962392af iscsi_create_endpoint +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x9f78fbf3 iscsi_unregister_transport +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0xa08ce630 iscsi_find_flashnode_conn +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0xae99d33a iscsi_get_port_state_name +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0xb4f2e4bf iscsi_get_port_speed_name +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0xbc071179 iscsi_get_ipaddress_state_name +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0xbf3882ac iscsi_flashnode_bus_match +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0xc1eb3a1e iscsi_destroy_flashnode_sess +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0xcd7de7ff iscsi_free_session +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0xd8ba4f2a iscsi_scan_finished +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0xe9c5a5f1 iscsi_destroy_all_flashnode +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_sas 0x4a216009 sas_is_tlr_enabled +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_sas 0x4d545e7c sas_disable_tlr +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_sas 0x85caebe4 sas_tlr_supported +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_sas 0xd34bca3b sas_enable_tlr +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_spi 0x0ef06974 spi_populate_ppr_msg +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_spi 0x8b100b02 spi_populate_tag_msg +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_spi 0xa0c71dac spi_populate_sync_msg +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_spi 0xcffa2aff spi_populate_width_msg +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_srp 0x0f94ce3c srp_attach_transport +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_srp 0x11f774c3 srp_remove_host +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_srp 0x1902178a srp_tmo_valid +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_srp 0x77078edc srp_rport_del +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_srp 0x99342093 srp_stop_rport_timers +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_srp 0xd726df0b srp_release_transport +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_srp 0xd77d09f4 srp_rport_add +EXPORT_SYMBOL_GPL drivers/scsi/ufs/ufshcd-core 0x13dc22da ufshcd_link_recovery +EXPORT_SYMBOL_GPL drivers/scsi/ufs/ufshcd-core 0x26ce20dd ufshcd_uic_hibern8_exit +EXPORT_SYMBOL_GPL drivers/scsi/ufs/ufshcd-core 0x385841cd ufshcd_dme_get_attr +EXPORT_SYMBOL_GPL drivers/scsi/ufs/ufshcd-core 0x5d588c32 ufshcd_update_reg_hist +EXPORT_SYMBOL_GPL drivers/scsi/ufs/ufshcd-core 0x6c25c88f ufshcd_dump_regs +EXPORT_SYMBOL_GPL drivers/scsi/ufs/ufshcd-core 0x723b1abf ufshcd_delay_us +EXPORT_SYMBOL_GPL drivers/scsi/ufs/ufshcd-core 0x8562088e ufshcd_hold +EXPORT_SYMBOL_GPL drivers/scsi/ufs/ufshcd-core 0x94011662 ufshcd_hba_enable +EXPORT_SYMBOL_GPL drivers/scsi/ufs/ufshcd-core 0x99a1467e ufshcd_dme_set_attr +EXPORT_SYMBOL_GPL drivers/scsi/ufs/ufshcd-core 0xa50aad55 ufshcd_auto_hibern8_update +EXPORT_SYMBOL_GPL drivers/scsi/ufs/ufshcd-core 0xa8e3faeb ufshcd_dealloc_host +EXPORT_SYMBOL_GPL drivers/scsi/ufs/ufshcd-core 0xc56d0e48 ufshcd_remove +EXPORT_SYMBOL_GPL drivers/scsi/ufs/ufshcd-core 0xc79b41de ufshcd_init +EXPORT_SYMBOL_GPL drivers/scsi/ufs/ufshcd-core 0xda2c7f67 ufshcd_fixup_dev_quirks +EXPORT_SYMBOL_GPL drivers/scsi/ufs/ufshcd-core 0xef45ffb4 ufshcd_make_hba_operational +EXPORT_SYMBOL_GPL drivers/scsi/ufs/ufshcd-core 0xf53f1680 ufshcd_config_pwr_mode +EXPORT_SYMBOL_GPL drivers/scsi/ufs/ufshcd-core 0xf5491b2e ufshcd_release +EXPORT_SYMBOL_GPL drivers/scsi/ufs/ufshcd-pltfrm 0x2494ea60 ufshcd_pltfrm_resume +EXPORT_SYMBOL_GPL drivers/scsi/ufs/ufshcd-pltfrm 0x468a212a ufshcd_pltfrm_suspend +EXPORT_SYMBOL_GPL drivers/scsi/ufs/ufshcd-pltfrm 0x7839419e ufshcd_pltfrm_runtime_idle +EXPORT_SYMBOL_GPL drivers/scsi/ufs/ufshcd-pltfrm 0xa62c7a23 ufshcd_pltfrm_runtime_resume +EXPORT_SYMBOL_GPL drivers/scsi/ufs/ufshcd-pltfrm 0xa9dd8990 ufshcd_pltfrm_runtime_suspend +EXPORT_SYMBOL_GPL drivers/scsi/ufs/ufshcd-pltfrm 0xc7a18523 ufshcd_pltfrm_init +EXPORT_SYMBOL_GPL drivers/scsi/ufs/ufshcd-pltfrm 0xf3fa0bdd ufshcd_pltfrm_shutdown +EXPORT_SYMBOL_GPL drivers/scsi/ufs/ufshcd-pltfrm 0xff85cd6b ufshcd_get_pwr_dev_param +EXPORT_SYMBOL_GPL drivers/siox/siox-core 0x126b3cc6 siox_device_connected +EXPORT_SYMBOL_GPL drivers/siox/siox-core 0xb81b6067 __siox_driver_register +EXPORT_SYMBOL_GPL drivers/siox/siox-core 0xcfdf3158 siox_master_unregister +EXPORT_SYMBOL_GPL drivers/siox/siox-core 0xe6fcfc4f siox_device_synced +EXPORT_SYMBOL_GPL drivers/siox/siox-core 0xea5a20fa siox_master_register +EXPORT_SYMBOL_GPL drivers/siox/siox-core 0xf8a2d0ad siox_master_alloc +EXPORT_SYMBOL_GPL drivers/slimbus/slimbus 0x0a7ca7e3 slim_writeb +EXPORT_SYMBOL_GPL drivers/slimbus/slimbus 0x0d88c248 slim_stream_allocate +EXPORT_SYMBOL_GPL drivers/slimbus/slimbus 0x0f915d28 slim_driver_unregister +EXPORT_SYMBOL_GPL drivers/slimbus/slimbus 0x25849ecf slim_unregister_controller +EXPORT_SYMBOL_GPL drivers/slimbus/slimbus 0x2a031886 slim_read +EXPORT_SYMBOL_GPL drivers/slimbus/slimbus 0x49351959 slim_msg_response +EXPORT_SYMBOL_GPL drivers/slimbus/slimbus 0x530eb37d slim_readb +EXPORT_SYMBOL_GPL drivers/slimbus/slimbus 0x683dbb87 slim_stream_disable +EXPORT_SYMBOL_GPL drivers/slimbus/slimbus 0x6bbeae2f slim_xfer_msg +EXPORT_SYMBOL_GPL drivers/slimbus/slimbus 0x6be8d7bc slim_stream_prepare +EXPORT_SYMBOL_GPL drivers/slimbus/slimbus 0x7509a71b __slim_driver_register +EXPORT_SYMBOL_GPL drivers/slimbus/slimbus 0x891a9959 slim_do_transfer +EXPORT_SYMBOL_GPL drivers/slimbus/slimbus 0x94a7e037 slim_get_logical_addr +EXPORT_SYMBOL_GPL drivers/slimbus/slimbus 0x9a8d2523 slim_get_device +EXPORT_SYMBOL_GPL drivers/slimbus/slimbus 0x9f091481 slim_alloc_txn_tid +EXPORT_SYMBOL_GPL drivers/slimbus/slimbus 0x9f1340d6 slim_device_report_present +EXPORT_SYMBOL_GPL drivers/slimbus/slimbus 0xa3681b1e slim_free_txn_tid +EXPORT_SYMBOL_GPL drivers/slimbus/slimbus 0xa3e86c4b of_slim_get_device +EXPORT_SYMBOL_GPL drivers/slimbus/slimbus 0xae2ac7da slim_report_absent +EXPORT_SYMBOL_GPL drivers/slimbus/slimbus 0xbe52339c slim_stream_free +EXPORT_SYMBOL_GPL drivers/slimbus/slimbus 0xc5493d0b slim_ctrl_clk_pause +EXPORT_SYMBOL_GPL drivers/slimbus/slimbus 0xcde23c33 slim_register_controller +EXPORT_SYMBOL_GPL drivers/slimbus/slimbus 0xddf8c6de slimbus_bus +EXPORT_SYMBOL_GPL drivers/slimbus/slimbus 0xdf3963ed slim_stream_unprepare +EXPORT_SYMBOL_GPL drivers/slimbus/slimbus 0xebd0a4d2 slim_write +EXPORT_SYMBOL_GPL drivers/slimbus/slimbus 0xff2d3d29 slim_stream_enable +EXPORT_SYMBOL_GPL drivers/soc/amlogic/meson-canvas 0x494128eb meson_canvas_alloc +EXPORT_SYMBOL_GPL drivers/soc/amlogic/meson-canvas 0x673c5a86 meson_canvas_config +EXPORT_SYMBOL_GPL drivers/soc/amlogic/meson-canvas 0xec698368 meson_canvas_get +EXPORT_SYMBOL_GPL drivers/soc/amlogic/meson-canvas 0xfbd79150 meson_canvas_free +EXPORT_SYMBOL_GPL drivers/soc/qcom/apr 0x1cb94a8a apr_driver_unregister +EXPORT_SYMBOL_GPL drivers/soc/qcom/apr 0x302556c2 __apr_driver_register +EXPORT_SYMBOL_GPL drivers/soc/qcom/apr 0x89fa1bcd apr_send_pkt +EXPORT_SYMBOL_GPL drivers/soc/qcom/apr 0x8fb161b1 aprbus +EXPORT_SYMBOL_GPL drivers/soc/qcom/llcc-qcom 0x06285798 llcc_slice_deactivate +EXPORT_SYMBOL_GPL drivers/soc/qcom/llcc-qcom 0x09afc16e llcc_slice_activate +EXPORT_SYMBOL_GPL drivers/soc/qcom/llcc-qcom 0x14f99b76 llcc_get_slice_id +EXPORT_SYMBOL_GPL drivers/soc/qcom/llcc-qcom 0x2027e82d llcc_slice_getd +EXPORT_SYMBOL_GPL drivers/soc/qcom/llcc-qcom 0x62ff6e92 llcc_slice_putd +EXPORT_SYMBOL_GPL drivers/soc/qcom/llcc-qcom 0xdffee709 llcc_get_slice_size +EXPORT_SYMBOL_GPL drivers/soc/qcom/mdt_loader 0x06485fbd qcom_mdt_load_no_init +EXPORT_SYMBOL_GPL drivers/soc/qcom/mdt_loader 0x42f47788 qcom_mdt_read_metadata +EXPORT_SYMBOL_GPL drivers/soc/qcom/mdt_loader 0x45e1cd7c qcom_mdt_get_size +EXPORT_SYMBOL_GPL drivers/soc/qcom/mdt_loader 0x7f0cc249 qcom_mdt_load +EXPORT_SYMBOL_GPL drivers/soundwire/soundwire-bus 0x02a3ec02 sdw_unregister_driver +EXPORT_SYMBOL_GPL drivers/soundwire/soundwire-bus 0x5cf2af4d __sdw_register_driver +EXPORT_SYMBOL_GPL drivers/soundwire/soundwire-bus 0xcce76e4c sdw_bus_type +EXPORT_SYMBOL_GPL drivers/spi/spi-bitbang 0x3fa77c19 spi_bitbang_start +EXPORT_SYMBOL_GPL drivers/spi/spi-bitbang 0x65eff853 spi_bitbang_setup +EXPORT_SYMBOL_GPL drivers/spi/spi-bitbang 0x85c9d00c spi_bitbang_setup_transfer +EXPORT_SYMBOL_GPL drivers/spi/spi-bitbang 0x9b8adee1 spi_bitbang_cleanup +EXPORT_SYMBOL_GPL drivers/spi/spi-bitbang 0x9d6349fb spi_bitbang_init +EXPORT_SYMBOL_GPL drivers/spi/spi-bitbang 0xb83df82b spi_bitbang_stop +EXPORT_SYMBOL_GPL drivers/spi/spi-dw 0x1ec59623 dw_spi_resume_host +EXPORT_SYMBOL_GPL drivers/spi/spi-dw 0x31569341 dw_spi_update_cr0 +EXPORT_SYMBOL_GPL drivers/spi/spi-dw 0x340f9205 dw_spi_add_host +EXPORT_SYMBOL_GPL drivers/spi/spi-dw 0x546c6711 dw_spi_suspend_host +EXPORT_SYMBOL_GPL drivers/spi/spi-dw 0x6cbe85ca dw_spi_dma_setup_mfld +EXPORT_SYMBOL_GPL drivers/spi/spi-dw 0x7b9c3bcf dw_spi_dma_setup_generic +EXPORT_SYMBOL_GPL drivers/spi/spi-dw 0x9e335093 dw_spi_remove_host +EXPORT_SYMBOL_GPL drivers/spi/spi-dw 0xd60c9d74 dw_spi_set_cs +EXPORT_SYMBOL_GPL drivers/spi/spi-dw 0xf4bd221a dw_spi_update_cr0_v1_01a +EXPORT_SYMBOL_GPL drivers/spi/spi-loopback-test 0x04028505 spi_test_run_test +EXPORT_SYMBOL_GPL drivers/spi/spi-loopback-test 0x4e9b5076 spi_test_execute_msg +EXPORT_SYMBOL_GPL drivers/spi/spi-loopback-test 0xf29cd9cb spi_test_run_tests +EXPORT_SYMBOL_GPL drivers/spmi/spmi 0x1f39a231 spmi_register_write +EXPORT_SYMBOL_GPL drivers/spmi/spmi 0x2a540013 spmi_command_shutdown +EXPORT_SYMBOL_GPL drivers/spmi/spmi 0x2c7fb669 __spmi_driver_register +EXPORT_SYMBOL_GPL drivers/spmi/spmi 0x30638616 spmi_command_wakeup +EXPORT_SYMBOL_GPL drivers/spmi/spmi 0x38d1a7ad spmi_device_add +EXPORT_SYMBOL_GPL drivers/spmi/spmi 0x3f39ab79 spmi_register_read +EXPORT_SYMBOL_GPL drivers/spmi/spmi 0x4db1c35f spmi_command_reset +EXPORT_SYMBOL_GPL drivers/spmi/spmi 0x65386f71 spmi_ext_register_writel +EXPORT_SYMBOL_GPL drivers/spmi/spmi 0x9809bed0 spmi_controller_alloc +EXPORT_SYMBOL_GPL drivers/spmi/spmi 0xa5777bd5 spmi_controller_remove +EXPORT_SYMBOL_GPL drivers/spmi/spmi 0xb93dd67a spmi_ext_register_read +EXPORT_SYMBOL_GPL drivers/spmi/spmi 0xd2c24d68 spmi_device_remove +EXPORT_SYMBOL_GPL drivers/spmi/spmi 0xd47d0bfb spmi_device_alloc +EXPORT_SYMBOL_GPL drivers/spmi/spmi 0xd63c7044 spmi_ext_register_readl +EXPORT_SYMBOL_GPL drivers/spmi/spmi 0xda6a212c spmi_ext_register_write +EXPORT_SYMBOL_GPL drivers/spmi/spmi 0xdef97b35 spmi_controller_add +EXPORT_SYMBOL_GPL drivers/spmi/spmi 0xf8ce0e5b spmi_command_sleep +EXPORT_SYMBOL_GPL drivers/spmi/spmi 0xffaf33a3 spmi_register_zero_write +EXPORT_SYMBOL_GPL drivers/ssb/ssb 0x8e515c9c ssb_pmu_spuravoid_pllupdate +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x03a8c9a0 comedi_dev_put +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x066ea28c comedi_driver_unregister +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x0c99d5a9 comedi_alloc_subdevices +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x0cd330f4 range_unknown +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x18e7b062 comedi_buf_read_alloc +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x21102f87 range_0_32mA +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x2f0ad9d3 range_bipolar5 +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x37e817ac comedi_set_spriv_auto_free +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x39ea6c48 comedi_timeout +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x3e5eb517 comedi_request_region +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x4236eaaf range_4_20mA +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x4241217e comedi_buf_read_free +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x4fe634f3 range_bipolar2_5 +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x59ba4bc8 comedi_load_firmware +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x5f3e3d73 comedi_handle_events +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x62ac8e3a comedi_event +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x6d04cb0e comedi_nsamples_left +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x76700aa1 comedi_buf_read_samples +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x8113872c range_unipolar10 +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x8505d7ca __comedi_request_region +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x8b0182f4 comedi_bytes_per_scan +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x933315e8 comedi_bytes_per_scan_cmd +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x93596989 comedi_auto_config +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x95e94a39 comedi_is_subdevice_running +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x9b14fb27 comedi_dio_insn_config +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0xabba6e9c comedi_alloc_spriv +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0xaffa6bdf comedi_check_chanlist +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0xb66628e2 comedi_buf_write_samples +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0xb679cebc range_0_20mA +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0xbb52fc7f range_bipolar10 +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0xbdbe75c6 range_unipolar2_5 +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0xc5d204a4 comedi_buf_read_n_available +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0xc68f1001 comedi_auto_unconfig +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0xcd3bda6d comedi_buf_write_alloc +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0xcd8c3a73 comedi_alloc_devpriv +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0xcf41e9a7 comedi_dev_get_from_minor +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0xcf578aff comedi_readback_insn_read +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0xdb2044b2 range_unipolar5 +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0xe0ab3aa7 comedi_legacy_detach +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0xe7533d83 comedi_nscans_left +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0xf127ad16 comedi_inc_scan_progress +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0xf62b76bd comedi_set_hw_dev +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0xf7a3ba14 comedi_dio_update_state +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0xf8947f13 comedi_alloc_subdev_readback +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0xfce8f02d comedi_driver_register +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0xfe6aca5c comedi_buf_write_free +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi_pci 0x3593591a comedi_pci_auto_config +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi_pci 0x3a6b3e5c comedi_pci_disable +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi_pci 0x46194960 comedi_pci_driver_unregister +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi_pci 0x549d39a9 comedi_pci_detach +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi_pci 0xaa8edf6e comedi_pci_auto_unconfig +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi_pci 0xb1fdb406 comedi_pci_driver_register +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi_pci 0xdd0e0590 comedi_to_pci_dev +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi_pci 0xecc9fa80 comedi_pci_enable +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi_usb 0x209474fd comedi_usb_auto_unconfig +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi_usb 0x3d4594e3 comedi_to_usb_interface +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi_usb 0x447af281 comedi_usb_auto_config +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi_usb 0x751e999b comedi_to_usb_dev +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi_usb 0xbaa0f9e2 comedi_usb_driver_unregister +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi_usb 0xf90fd590 comedi_usb_driver_register +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/addi_watchdog 0x7691ea0e addi_watchdog_init +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/addi_watchdog 0x79f4a6cf addi_watchdog_reset +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/amplc_dio200_common 0x01033972 amplc_dio200_set_enhance +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/amplc_dio200_common 0x6e810a8a amplc_dio200_common_attach +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/amplc_pc236_common 0x1b4ee2ba amplc_pc236_common_attach +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/comedi_8254 0x20231525 comedi_8254_init +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/comedi_8254 0x249f2389 comedi_8254_write +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/comedi_8254 0x3198cfaf comedi_8254_cascade_ns_to_timer +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/comedi_8254 0x3fd874f2 comedi_8254_set_mode +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/comedi_8254 0x49999f4f comedi_8254_load +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/comedi_8254 0x4fd2a4d8 comedi_8254_status +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/comedi_8254 0x729924bd comedi_8254_read +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/comedi_8254 0x74b643e3 comedi_8254_ns_to_timer +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/comedi_8254 0x9a7b444c comedi_8254_subdevice_init +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/comedi_8254 0xaaad6e6c comedi_8254_mm_init +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/comedi_8254 0xbc27868a comedi_8254_set_busy +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/comedi_8254 0xbcf3dc81 comedi_8254_pacer_enable +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/comedi_8254 0xfa4c2878 comedi_8254_update_divisors +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/comedi_8255 0x0cd566cf subdev_8255_mm_init +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/comedi_8255 0x380ef6e0 subdev_8255_regbase +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/comedi_8255 0xa5e259df subdev_8255_init +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/das08 0xf482e6d8 das08_common_attach +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/mite 0x03740843 mite_done +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/mite 0x12e99e39 mite_dma_arm +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/mite 0x3abb119d mite_detach +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/mite 0x472bf6a7 mite_ack_linkc +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/mite 0x4ce2e109 mite_attach +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/mite 0x513149c9 mite_prep_dma +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/mite 0x53eb74a4 mite_init_ring_descriptors +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/mite 0x5404de42 mite_request_channel +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/mite 0x65a38b2a mite_bytes_in_transit +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/mite 0x7113e2c2 mite_alloc_ring +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/mite 0x747cf855 mite_dma_disarm +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/mite 0x79920eef mite_request_channel_in_range +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/mite 0x7a6e7b08 mite_free_ring +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/mite 0x99146232 mite_sync_dma +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/mite 0xbd87c168 mite_release_channel +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/mite 0xe2788ad5 mite_buf_change +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/ni_labpc_common 0x71ebf305 labpc_common_detach +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/ni_labpc_common 0xf6f4cfa3 labpc_common_attach +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/ni_routing 0x076bc308 ni_find_route_source +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/ni_routing 0x0921123e ni_lookup_route_register +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/ni_routing 0x1facf7f8 ni_is_cmd_dest +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/ni_routing 0x64443d67 ni_get_valid_routes +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/ni_routing 0x6c18c54e ni_count_valid_routes +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/ni_routing 0x85e75c94 ni_assign_device_routes +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/ni_routing 0x863a306d ni_sort_device_routes +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/ni_routing 0x8ab47ba4 ni_route_set_has_source +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/ni_routing 0x8f0f0901 ni_find_route_set +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/ni_routing 0xb3e302a3 ni_route_to_register +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/ni_tio 0x26d0fd85 ni_tio_set_gate_src +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/ni_tio 0x2c701cde ni_tio_arm +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/ni_tio 0x362eeebe ni_tio_set_bits +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/ni_tio 0x3869f185 ni_tio_read +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/ni_tio 0x498070dc ni_tio_unset_routing +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/ni_tio 0x52f15e76 ni_tio_init_counter +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/ni_tio 0x6dbf31c4 ni_tio_insn_write +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/ni_tio 0x7b61728c ni_tio_set_routing +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/ni_tio 0x85540fc9 ni_tio_insn_read +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/ni_tio 0x8a54bf3f ni_tio_insn_config +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/ni_tio 0x8ea653ba ni_gpct_device_destroy +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/ni_tio 0xdbb2da9d ni_tio_set_gate_src_raw +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/ni_tio 0xddeb17d9 ni_tio_get_routing +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/ni_tio 0xea415f8f ni_gpct_device_construct +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/ni_tio 0xf2914d37 ni_tio_write +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/ni_tio 0xf9e1366b ni_tio_get_soft_copy +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/ni_tiocmd 0x23effcea ni_tio_cancel +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/ni_tiocmd 0x6250061a ni_tio_handle_interrupt +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/ni_tiocmd 0x8c1b3c1f ni_tio_cmdtest +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/ni_tiocmd 0x931f7586 ni_tio_acknowledge +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/ni_tiocmd 0x984ede7d ni_tio_cmd +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/ni_tiocmd 0xc38bb863 ni_tio_set_mite_channel +EXPORT_SYMBOL_GPL drivers/staging/comedi/kcomedilib/kcomedilib 0x0602af8d comedi_dio_config +EXPORT_SYMBOL_GPL drivers/staging/comedi/kcomedilib/kcomedilib 0x2b2a3152 comedi_close +EXPORT_SYMBOL_GPL drivers/staging/comedi/kcomedilib/kcomedilib 0x65c90d03 comedi_get_n_channels +EXPORT_SYMBOL_GPL drivers/staging/comedi/kcomedilib/kcomedilib 0x889dbdbc comedi_open +EXPORT_SYMBOL_GPL drivers/staging/comedi/kcomedilib/kcomedilib 0xae25db15 comedi_dio_bitfield2 +EXPORT_SYMBOL_GPL drivers/staging/comedi/kcomedilib/kcomedilib 0xeb62da8c comedi_find_subdevice_by_type +EXPORT_SYMBOL_GPL drivers/staging/comedi/kcomedilib/kcomedilib 0xf090b82a comedi_dio_get_config +EXPORT_SYMBOL_GPL drivers/staging/fieldbus/anybuss/anybuss_core 0x098b589a anybuss_recv_msg +EXPORT_SYMBOL_GPL drivers/staging/fieldbus/anybuss/anybuss_core 0x31976645 anybuss_read_fbctrl +EXPORT_SYMBOL_GPL drivers/staging/fieldbus/anybuss/anybuss_core 0x4765e966 anybuss_client_driver_register +EXPORT_SYMBOL_GPL drivers/staging/fieldbus/anybuss/anybuss_core 0x4cecc479 anybuss_send_msg +EXPORT_SYMBOL_GPL drivers/staging/fieldbus/anybuss/anybuss_core 0x56c73a99 anybuss_client_driver_unregister +EXPORT_SYMBOL_GPL drivers/staging/fieldbus/anybuss/anybuss_core 0x5c4cd3b6 anybuss_write_input +EXPORT_SYMBOL_GPL drivers/staging/fieldbus/anybuss/anybuss_core 0x7a2faab2 anybuss_host_common_probe +EXPORT_SYMBOL_GPL drivers/staging/fieldbus/anybuss/anybuss_core 0x85093eac anybuss_start_init +EXPORT_SYMBOL_GPL drivers/staging/fieldbus/anybuss/anybuss_core 0x986cd6cd anybuss_read_output +EXPORT_SYMBOL_GPL drivers/staging/fieldbus/anybuss/anybuss_core 0x99343da3 anybuss_send_ext +EXPORT_SYMBOL_GPL drivers/staging/fieldbus/anybuss/anybuss_core 0xab30c445 anybuss_set_power +EXPORT_SYMBOL_GPL drivers/staging/fieldbus/anybuss/anybuss_core 0xe74254ff anybuss_finish_init +EXPORT_SYMBOL_GPL drivers/staging/fieldbus/anybuss/anybuss_core 0xe8f2fbb9 devm_anybuss_host_common_probe +EXPORT_SYMBOL_GPL drivers/staging/fieldbus/anybuss/anybuss_core 0xfce879ad anybuss_host_common_remove +EXPORT_SYMBOL_GPL drivers/staging/fieldbus/fieldbus_dev 0x1f03c38b fieldbus_dev_area_updated +EXPORT_SYMBOL_GPL drivers/staging/fieldbus/fieldbus_dev 0x27aa7e38 fieldbus_dev_register +EXPORT_SYMBOL_GPL drivers/staging/fieldbus/fieldbus_dev 0x3ad70b5f fieldbus_dev_unregister +EXPORT_SYMBOL_GPL drivers/staging/fieldbus/fieldbus_dev 0xa69a7f81 fieldbus_dev_online_changed +EXPORT_SYMBOL_GPL drivers/staging/greybus/gb-audio-apbridgea 0x064e26ba gb_audio_apbridgea_shutdown_rx +EXPORT_SYMBOL_GPL drivers/staging/greybus/gb-audio-apbridgea 0x1543d217 gb_audio_apbridgea_unregister_cport +EXPORT_SYMBOL_GPL drivers/staging/greybus/gb-audio-apbridgea 0x1b77c886 gb_audio_apbridgea_set_tx_data_size +EXPORT_SYMBOL_GPL drivers/staging/greybus/gb-audio-apbridgea 0x2c157153 gb_audio_apbridgea_set_rx_data_size +EXPORT_SYMBOL_GPL drivers/staging/greybus/gb-audio-apbridgea 0x41a02f2b gb_audio_apbridgea_set_config +EXPORT_SYMBOL_GPL drivers/staging/greybus/gb-audio-apbridgea 0x56f344fa gb_audio_apbridgea_shutdown_tx +EXPORT_SYMBOL_GPL drivers/staging/greybus/gb-audio-apbridgea 0x666452c1 gb_audio_apbridgea_start_tx +EXPORT_SYMBOL_GPL drivers/staging/greybus/gb-audio-apbridgea 0xafdb8f94 gb_audio_apbridgea_stop_rx +EXPORT_SYMBOL_GPL drivers/staging/greybus/gb-audio-apbridgea 0xbbe42217 gb_audio_apbridgea_prepare_rx +EXPORT_SYMBOL_GPL drivers/staging/greybus/gb-audio-apbridgea 0xc5791ab2 gb_audio_apbridgea_start_rx +EXPORT_SYMBOL_GPL drivers/staging/greybus/gb-audio-apbridgea 0xe07da1a8 gb_audio_apbridgea_register_cport +EXPORT_SYMBOL_GPL drivers/staging/greybus/gb-audio-apbridgea 0xeb594057 gb_audio_apbridgea_prepare_tx +EXPORT_SYMBOL_GPL drivers/staging/greybus/gb-audio-apbridgea 0xff66edd4 gb_audio_apbridgea_stop_tx +EXPORT_SYMBOL_GPL drivers/staging/greybus/gb-audio-gb 0x107f6d96 gb_audio_gb_set_tx_data_size +EXPORT_SYMBOL_GPL drivers/staging/greybus/gb-audio-gb 0x127b82a7 gb_audio_gb_get_control +EXPORT_SYMBOL_GPL drivers/staging/greybus/gb-audio-gb 0x181f961b gb_audio_gb_enable_widget +EXPORT_SYMBOL_GPL drivers/staging/greybus/gb-audio-gb 0x33aa3c99 gb_audio_gb_activate_rx +EXPORT_SYMBOL_GPL drivers/staging/greybus/gb-audio-gb 0x5e167236 gb_audio_gb_deactivate_tx +EXPORT_SYMBOL_GPL drivers/staging/greybus/gb-audio-gb 0x78c44151 gb_audio_gb_disable_widget +EXPORT_SYMBOL_GPL drivers/staging/greybus/gb-audio-gb 0x85ae137c gb_audio_gb_get_topology +EXPORT_SYMBOL_GPL drivers/staging/greybus/gb-audio-gb 0x9a9d73f0 gb_audio_gb_get_pcm +EXPORT_SYMBOL_GPL drivers/staging/greybus/gb-audio-gb 0x9d7343ae gb_audio_gb_activate_tx +EXPORT_SYMBOL_GPL drivers/staging/greybus/gb-audio-gb 0xacf54283 gb_audio_gb_set_control +EXPORT_SYMBOL_GPL drivers/staging/greybus/gb-audio-gb 0xad96705c gb_audio_gb_set_rx_data_size +EXPORT_SYMBOL_GPL drivers/staging/greybus/gb-audio-gb 0xdd01b0f2 gb_audio_gb_set_pcm +EXPORT_SYMBOL_GPL drivers/staging/greybus/gb-audio-gb 0xf0cf0d01 gb_audio_gb_deactivate_rx +EXPORT_SYMBOL_GPL drivers/staging/greybus/gb-audio-manager 0x19e9e6b1 gb_audio_manager_remove_all +EXPORT_SYMBOL_GPL drivers/staging/greybus/gb-audio-manager 0x32e6391e gb_audio_manager_remove +EXPORT_SYMBOL_GPL drivers/staging/greybus/gb-audio-manager 0x5a108b0f gb_audio_manager_add +EXPORT_SYMBOL_GPL drivers/staging/greybus/gb-audio-manager 0x7475baf1 gb_audio_manager_get_module +EXPORT_SYMBOL_GPL drivers/staging/greybus/gb-audio-manager 0x79eef2f8 gb_audio_manager_dump_all +EXPORT_SYMBOL_GPL drivers/staging/greybus/gb-audio-manager 0xaeac8ca2 gb_audio_manager_dump_module +EXPORT_SYMBOL_GPL drivers/staging/greybus/gb-audio-manager 0xe25476aa gb_audio_manager_put_module +EXPORT_SYMBOL_GPL drivers/staging/greybus/gb-gbphy 0x0bbf5859 gb_gbphy_deregister_driver +EXPORT_SYMBOL_GPL drivers/staging/greybus/gb-gbphy 0xb855924f gb_gbphy_register_driver +EXPORT_SYMBOL_GPL drivers/staging/greybus/gb-spilib 0xc0859c6c gb_spilib_master_exit +EXPORT_SYMBOL_GPL drivers/staging/greybus/gb-spilib 0xf4af1bb1 gb_spilib_master_init +EXPORT_SYMBOL_GPL drivers/staging/iio/addac/adt7316 0xc274562d adt7316_pm_ops +EXPORT_SYMBOL_GPL drivers/staging/media/meson/vdec/meson-vdec 0x08a48c36 amvdec_src_change +EXPORT_SYMBOL_GPL drivers/staging/media/meson/vdec/meson-vdec 0x0fb5ea3f amvdec_read_parser +EXPORT_SYMBOL_GPL drivers/staging/media/meson/vdec/meson-vdec 0x115655e9 amvdec_am21c_body_size +EXPORT_SYMBOL_GPL drivers/staging/media/meson/vdec/meson-vdec 0x1379f053 codec_hevc_setup_decode_head +EXPORT_SYMBOL_GPL drivers/staging/media/meson/vdec/meson-vdec 0x18dce4f6 amvdec_add_ts +EXPORT_SYMBOL_GPL drivers/staging/media/meson/vdec/meson-vdec 0x1cb1e6d9 amvdec_am21c_size +EXPORT_SYMBOL_GPL drivers/staging/media/meson/vdec/meson-vdec 0x231928ef amvdec_write_parser +EXPORT_SYMBOL_GPL drivers/staging/media/meson/vdec/meson-vdec 0x3689cf9a amvdec_remove_ts +EXPORT_SYMBOL_GPL drivers/staging/media/meson/vdec/meson-vdec 0x3b82576b codec_hevc_free_mmu_headers +EXPORT_SYMBOL_GPL drivers/staging/media/meson/vdec/meson-vdec 0x45e30951 amvdec_set_par_from_dar +EXPORT_SYMBOL_GPL drivers/staging/media/meson/vdec/meson-vdec 0x4f39b2bf codec_hevc_setup_buffers +EXPORT_SYMBOL_GPL drivers/staging/media/meson/vdec/meson-vdec 0x5caa1126 amvdec_set_canvases +EXPORT_SYMBOL_GPL drivers/staging/media/meson/vdec/meson-vdec 0x5def270a amvdec_abort +EXPORT_SYMBOL_GPL drivers/staging/media/meson/vdec/meson-vdec 0x5ff35ee8 amvdec_am21c_head_size +EXPORT_SYMBOL_GPL drivers/staging/media/meson/vdec/meson-vdec 0x7b9232a3 amvdec_dst_buf_done +EXPORT_SYMBOL_GPL drivers/staging/media/meson/vdec/meson-vdec 0x84f399cb amvdec_read_dos +EXPORT_SYMBOL_GPL drivers/staging/media/meson/vdec/meson-vdec 0x8e36dd77 amvdec_write_dos_bits +EXPORT_SYMBOL_GPL drivers/staging/media/meson/vdec/meson-vdec 0xa4c300b5 amvdec_get_output_size +EXPORT_SYMBOL_GPL drivers/staging/media/meson/vdec/meson-vdec 0xc556fffe amvdec_write_dos +EXPORT_SYMBOL_GPL drivers/staging/media/meson/vdec/meson-vdec 0xd02790a4 amvdec_clear_dos_bits +EXPORT_SYMBOL_GPL drivers/staging/media/meson/vdec/meson-vdec 0xe21ba354 codec_hevc_fill_mmu_map +EXPORT_SYMBOL_GPL drivers/staging/media/meson/vdec/meson-vdec 0xef857c30 amvdec_dst_buf_done_offset +EXPORT_SYMBOL_GPL drivers/staging/media/meson/vdec/meson-vdec 0xf95f8fb4 amvdec_dst_buf_done_idx +EXPORT_SYMBOL_GPL drivers/staging/media/meson/vdec/meson-vdec 0xfd86fc70 codec_hevc_free_fbc_buffers +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0x0d4904b0 spk_var_show +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0x0d698821 synth_current +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0x0eee79b8 spk_ttyio_synth_probe +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0x12b696d0 spk_serial_synth_probe +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0x15317655 spk_ttyio_ops +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0x1e39eb14 synth_putws +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0x2e7e21d7 speakup_event +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0x39a8351f spk_synth_get_index +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0x3c983adf spk_var_store +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0x41a160e5 synth_buffer_empty +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0x4449e1dd synth_buffer_clear +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0x466f5eb7 synth_putwc +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0x4862702e spk_serial_io_ops +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0x76d40046 synth_buffer_skip_nonlatin1 +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0x7c9b9f54 spk_ttyio_synth_immediate +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0x8181ceec speakup_info +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0x84dad068 synth_buffer_getc +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0x8c82dfca synth_request_region +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0x8e50055a spk_stop_serial_interrupt +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0x8fe0db01 synth_putwc_s +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0x995a8549 spk_synth_is_alive_restart +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0x9a3ff700 spk_do_catch_up_unicode +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0xaadb0612 synth_buffer_peek +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0xae7d6424 spk_ttyio_release +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0xbbd15a51 speakup_start_ttys +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0xbc2f692d synth_remove +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0xc319c604 synth_putws_s +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0xc3512881 spk_synth_flush +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0xd8fd86cf synth_release_region +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0xdfa57e56 synth_add +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0xe194d0ef synth_printf +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0xe5dc1e81 spk_synth_is_alive_nop +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0xe7cd4558 spk_serial_release +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0xf86eaa9f spk_do_catch_up +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0xfd189eef spk_get_var +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0xfd447b60 spk_serial_synth_immediate +EXPORT_SYMBOL_GPL drivers/staging/wilc1000/wilc1000 0x1912afd6 chip_wakeup +EXPORT_SYMBOL_GPL drivers/staging/wilc1000/wilc1000 0x247ab918 wilc_handle_isr +EXPORT_SYMBOL_GPL drivers/staging/wilc1000/wilc1000 0x4b2284ec host_wakeup_notify +EXPORT_SYMBOL_GPL drivers/staging/wilc1000/wilc1000 0x506dc4c7 chip_allow_sleep +EXPORT_SYMBOL_GPL drivers/staging/wilc1000/wilc1000 0x54eab82d wilc_cfg80211_init +EXPORT_SYMBOL_GPL drivers/staging/wilc1000/wilc1000 0xa8394619 wilc_netdev_cleanup +EXPORT_SYMBOL_GPL drivers/staging/wilc1000/wilc1000 0xd7625d33 host_sleep_notify +EXPORT_SYMBOL_GPL drivers/tee/tee 0x009ebcde tee_shm_free +EXPORT_SYMBOL_GPL drivers/tee/tee 0x00b00383 tee_client_close_session +EXPORT_SYMBOL_GPL drivers/tee/tee 0x0cf3779a tee_client_get_version +EXPORT_SYMBOL_GPL drivers/tee/tee 0x1042b2e4 tee_shm_pool_free +EXPORT_SYMBOL_GPL drivers/tee/tee 0x1be24e43 tee_bus_type +EXPORT_SYMBOL_GPL drivers/tee/tee 0x2936fa0b tee_device_alloc +EXPORT_SYMBOL_GPL drivers/tee/tee 0x2f0cd45f tee_shm_pool_mgr_alloc_res_mem +EXPORT_SYMBOL_GPL drivers/tee/tee 0x36776a27 tee_shm_get_from_id +EXPORT_SYMBOL_GPL drivers/tee/tee 0x3c8361e6 tee_shm_get_va +EXPORT_SYMBOL_GPL drivers/tee/tee 0x4792d1e6 tee_device_unregister +EXPORT_SYMBOL_GPL drivers/tee/tee 0x52ccb4af tee_client_invoke_func +EXPORT_SYMBOL_GPL drivers/tee/tee 0x5c4749b1 tee_shm_va2pa +EXPORT_SYMBOL_GPL drivers/tee/tee 0x652b889f tee_get_drvdata +EXPORT_SYMBOL_GPL drivers/tee/tee 0x78fdcc0c tee_shm_pool_alloc +EXPORT_SYMBOL_GPL drivers/tee/tee 0x85fd9922 tee_session_calc_client_uuid +EXPORT_SYMBOL_GPL drivers/tee/tee 0x9de0a29b tee_client_close_context +EXPORT_SYMBOL_GPL drivers/tee/tee 0xa228cc54 tee_shm_put +EXPORT_SYMBOL_GPL drivers/tee/tee 0xb6f1ca14 tee_shm_pool_alloc_res_mem +EXPORT_SYMBOL_GPL drivers/tee/tee 0xb99b2fd0 tee_device_register +EXPORT_SYMBOL_GPL drivers/tee/tee 0xc3026816 tee_client_open_session +EXPORT_SYMBOL_GPL drivers/tee/tee 0xcba3ee5a tee_shm_pa2va +EXPORT_SYMBOL_GPL drivers/tee/tee 0xdc74e855 tee_client_open_context +EXPORT_SYMBOL_GPL drivers/tee/tee 0xe0574c1c tee_shm_alloc +EXPORT_SYMBOL_GPL drivers/tee/tee 0xf04f7e85 tee_shm_register +EXPORT_SYMBOL_GPL drivers/tee/tee 0xf6258e68 tee_shm_get_pa +EXPORT_SYMBOL_GPL drivers/thunderbolt/thunderbolt 0x004f2c8a tb_xdomain_type +EXPORT_SYMBOL_GPL drivers/thunderbolt/thunderbolt 0x01d23ee1 tb_property_create_dir +EXPORT_SYMBOL_GPL drivers/thunderbolt/thunderbolt 0x103018db tb_register_service_driver +EXPORT_SYMBOL_GPL drivers/thunderbolt/thunderbolt 0x1d1590ff tb_ring_alloc_rx +EXPORT_SYMBOL_GPL drivers/thunderbolt/thunderbolt 0x21a31526 tb_unregister_protocol_handler +EXPORT_SYMBOL_GPL drivers/thunderbolt/thunderbolt 0x2acb7a66 __tb_ring_enqueue +EXPORT_SYMBOL_GPL drivers/thunderbolt/thunderbolt 0x36521060 tb_register_protocol_handler +EXPORT_SYMBOL_GPL drivers/thunderbolt/thunderbolt 0x393b4f2f tb_property_free_dir +EXPORT_SYMBOL_GPL drivers/thunderbolt/thunderbolt 0x3e365c98 tb_ring_stop +EXPORT_SYMBOL_GPL drivers/thunderbolt/thunderbolt 0x52201411 tb_ring_poll +EXPORT_SYMBOL_GPL drivers/thunderbolt/thunderbolt 0x5781b009 tb_ring_start +EXPORT_SYMBOL_GPL drivers/thunderbolt/thunderbolt 0x603249ed tb_unregister_property_dir +EXPORT_SYMBOL_GPL drivers/thunderbolt/thunderbolt 0x613106c0 tb_xdomain_enable_paths +EXPORT_SYMBOL_GPL drivers/thunderbolt/thunderbolt 0x658e3d97 tb_property_add_immediate +EXPORT_SYMBOL_GPL drivers/thunderbolt/thunderbolt 0x68c0d720 tb_xdomain_disable_paths +EXPORT_SYMBOL_GPL drivers/thunderbolt/thunderbolt 0x6ceee74b tb_property_remove +EXPORT_SYMBOL_GPL drivers/thunderbolt/thunderbolt 0x78a1d499 tb_ring_poll_complete +EXPORT_SYMBOL_GPL drivers/thunderbolt/thunderbolt 0x7bc447d9 tb_xdomain_request +EXPORT_SYMBOL_GPL drivers/thunderbolt/thunderbolt 0x7de7c37e tb_xdomain_find_by_uuid +EXPORT_SYMBOL_GPL drivers/thunderbolt/thunderbolt 0x86166e8c tb_property_get_next +EXPORT_SYMBOL_GPL drivers/thunderbolt/thunderbolt 0x8b62f95e tb_property_add_dir +EXPORT_SYMBOL_GPL drivers/thunderbolt/thunderbolt 0x9fefce0c tb_ring_free +EXPORT_SYMBOL_GPL drivers/thunderbolt/thunderbolt 0xb7c7cdce tb_property_add_text +EXPORT_SYMBOL_GPL drivers/thunderbolt/thunderbolt 0xc64da6ae tb_property_find +EXPORT_SYMBOL_GPL drivers/thunderbolt/thunderbolt 0xe2697cd4 tb_property_add_data +EXPORT_SYMBOL_GPL drivers/thunderbolt/thunderbolt 0xe4a00660 tb_ring_alloc_tx +EXPORT_SYMBOL_GPL drivers/thunderbolt/thunderbolt 0xee10c6bf tb_service_type +EXPORT_SYMBOL_GPL drivers/thunderbolt/thunderbolt 0xf1cfd1ff tb_register_property_dir +EXPORT_SYMBOL_GPL drivers/thunderbolt/thunderbolt 0xf2a5743b tb_xdomain_response +EXPORT_SYMBOL_GPL drivers/thunderbolt/thunderbolt 0xf6012b32 tb_unregister_service_driver +EXPORT_SYMBOL_GPL drivers/thunderbolt/thunderbolt 0xf67702aa tb_xdomain_find_by_route +EXPORT_SYMBOL_GPL drivers/tty/n_tracesink 0x8a422e5e n_tracesink_datadrain +EXPORT_SYMBOL_GPL drivers/uio/uio 0x27896466 uio_event_notify +EXPORT_SYMBOL_GPL drivers/uio/uio 0xb0ac1cba __uio_register_device +EXPORT_SYMBOL_GPL drivers/uio/uio 0xb4551539 __devm_uio_register_device +EXPORT_SYMBOL_GPL drivers/uio/uio 0xe6a83e26 uio_unregister_device +EXPORT_SYMBOL_GPL drivers/usb/atm/usbatm 0x0f3a3883 usbatm_usb_probe +EXPORT_SYMBOL_GPL drivers/usb/atm/usbatm 0xd69a6b32 usbatm_usb_disconnect +EXPORT_SYMBOL_GPL drivers/usb/chipidea/ci_hdrc 0x6029d702 ci_hdrc_add_device +EXPORT_SYMBOL_GPL drivers/usb/chipidea/ci_hdrc 0xa44e4c59 hw_phymode_configure +EXPORT_SYMBOL_GPL drivers/usb/chipidea/ci_hdrc 0xdc64a6c4 ci_hdrc_remove_device +EXPORT_SYMBOL_GPL drivers/usb/chipidea/usbmisc_imx 0x567d755d imx_usbmisc_hsic_set_clk +EXPORT_SYMBOL_GPL drivers/usb/chipidea/usbmisc_imx 0x6f384856 imx_usbmisc_hsic_set_connect +EXPORT_SYMBOL_GPL drivers/usb/chipidea/usbmisc_imx 0x8d37a3f6 imx_usbmisc_set_wakeup +EXPORT_SYMBOL_GPL drivers/usb/chipidea/usbmisc_imx 0xd4dcee7d imx_usbmisc_charger_detection +EXPORT_SYMBOL_GPL drivers/usb/chipidea/usbmisc_imx 0xdfce3620 imx_usbmisc_init_post +EXPORT_SYMBOL_GPL drivers/usb/chipidea/usbmisc_imx 0xe507485e imx_usbmisc_init +EXPORT_SYMBOL_GPL drivers/usb/common/ulpi 0x6cb86c9f __ulpi_register_driver +EXPORT_SYMBOL_GPL drivers/usb/common/ulpi 0xa685fd7c ulpi_write +EXPORT_SYMBOL_GPL drivers/usb/common/ulpi 0xa96e0996 ulpi_read +EXPORT_SYMBOL_GPL drivers/usb/common/ulpi 0xaf4bd2bb ulpi_unregister_driver +EXPORT_SYMBOL_GPL drivers/usb/common/ulpi 0xc86659e8 ulpi_register_interface +EXPORT_SYMBOL_GPL drivers/usb/common/ulpi 0xe9e0254e ulpi_unregister_interface +EXPORT_SYMBOL_GPL drivers/usb/gadget/function/u_audio 0x00c3fcf9 u_audio_start_playback +EXPORT_SYMBOL_GPL drivers/usb/gadget/function/u_audio 0x129ba656 u_audio_stop_playback +EXPORT_SYMBOL_GPL drivers/usb/gadget/function/u_audio 0x3d95fc1e u_audio_stop_capture +EXPORT_SYMBOL_GPL drivers/usb/gadget/function/u_audio 0xb451f2e8 g_audio_setup +EXPORT_SYMBOL_GPL drivers/usb/gadget/function/u_audio 0xb8e75632 g_audio_cleanup +EXPORT_SYMBOL_GPL drivers/usb/gadget/function/u_audio 0xd2260347 u_audio_start_capture +EXPORT_SYMBOL_GPL drivers/usb/gadget/function/u_ether 0x022ab52b gether_connect +EXPORT_SYMBOL_GPL drivers/usb/gadget/function/u_ether 0x0bcd14b2 gether_set_gadget +EXPORT_SYMBOL_GPL drivers/usb/gadget/function/u_ether 0x0d905836 gether_get_host_addr_u8 +EXPORT_SYMBOL_GPL drivers/usb/gadget/function/u_ether 0x1736d3ff gether_setup_name +EXPORT_SYMBOL_GPL drivers/usb/gadget/function/u_ether 0x4f024242 gether_get_host_addr_cdc +EXPORT_SYMBOL_GPL drivers/usb/gadget/function/u_ether 0x56bfe199 gether_setup_name_default +EXPORT_SYMBOL_GPL drivers/usb/gadget/function/u_ether 0x60760238 gether_set_dev_addr +EXPORT_SYMBOL_GPL drivers/usb/gadget/function/u_ether 0x6702fc34 gether_get_dev_addr +EXPORT_SYMBOL_GPL drivers/usb/gadget/function/u_ether 0x83c79a28 gether_set_host_addr +EXPORT_SYMBOL_GPL drivers/usb/gadget/function/u_ether 0x8822eb36 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 0xbbfe623d gether_get_qmult +EXPORT_SYMBOL_GPL drivers/usb/gadget/function/u_ether 0xc1ef9ecc gether_set_qmult +EXPORT_SYMBOL_GPL drivers/usb/gadget/function/u_ether 0xcc40e230 gether_register_netdev +EXPORT_SYMBOL_GPL drivers/usb/gadget/function/u_ether 0xce6a68d8 gether_disconnect +EXPORT_SYMBOL_GPL drivers/usb/gadget/function/u_ether 0xf959c8db gether_get_ifname +EXPORT_SYMBOL_GPL drivers/usb/gadget/function/u_serial 0x12748ad4 gserial_suspend +EXPORT_SYMBOL_GPL drivers/usb/gadget/function/u_serial 0x33bfdca2 gserial_alloc_line +EXPORT_SYMBOL_GPL drivers/usb/gadget/function/u_serial 0x3b6d50f6 gserial_connect +EXPORT_SYMBOL_GPL drivers/usb/gadget/function/u_serial 0x3ce8fbcf gserial_disconnect +EXPORT_SYMBOL_GPL drivers/usb/gadget/function/u_serial 0x4a3df9d0 gs_alloc_req +EXPORT_SYMBOL_GPL drivers/usb/gadget/function/u_serial 0x60ea48a0 gs_free_req +EXPORT_SYMBOL_GPL drivers/usb/gadget/function/u_serial 0x6d6739af gserial_resume +EXPORT_SYMBOL_GPL drivers/usb/gadget/function/u_serial 0x77dbf841 gserial_get_console +EXPORT_SYMBOL_GPL drivers/usb/gadget/function/u_serial 0xa18ee0bd gserial_set_console +EXPORT_SYMBOL_GPL drivers/usb/gadget/function/u_serial 0xb6652875 gserial_free_line +EXPORT_SYMBOL_GPL drivers/usb/gadget/function/u_serial 0xe89dc424 gserial_alloc_line_no_console +EXPORT_SYMBOL_GPL drivers/usb/gadget/function/usb_f_fs 0x1603a82e ffs_name_dev +EXPORT_SYMBOL_GPL drivers/usb/gadget/function/usb_f_fs 0x3df5db03 ffs_lock +EXPORT_SYMBOL_GPL drivers/usb/gadget/function/usb_f_fs 0x98baa4b3 ffs_single_dev +EXPORT_SYMBOL_GPL drivers/usb/gadget/function/usb_f_mass_storage 0x060ae916 fsg_store_ro +EXPORT_SYMBOL_GPL drivers/usb/gadget/function/usb_f_mass_storage 0x07cb8f23 fsg_store_cdrom +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 0x1581c4cc fsg_store_file +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 0x19bab260 fsg_store_nofua +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 0x2933ee1d fsg_ss_bulk_in_desc +EXPORT_SYMBOL_GPL drivers/usb/gadget/function/usb_f_mass_storage 0x32a22877 fsg_common_remove_lun +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 0x3c6e1b04 fsg_show_removable +EXPORT_SYMBOL_GPL drivers/usb/gadget/function/usb_f_mass_storage 0x403d2da1 fsg_lun_open +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 0x56344daf fsg_hs_bulk_out_desc +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 0x6b44239d fsg_store_removable +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 0x857b6dc2 fsg_hs_function +EXPORT_SYMBOL_GPL drivers/usb/gadget/function/usb_f_mass_storage 0x87f2491b fsg_store_inquiry_string +EXPORT_SYMBOL_GPL drivers/usb/gadget/function/usb_f_mass_storage 0x8c0c7f95 fsg_show_nofua +EXPORT_SYMBOL_GPL drivers/usb/gadget/function/usb_f_mass_storage 0x914a3990 fsg_common_set_cdev +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 0xa5cae92f fsg_ss_bulk_out_comp_desc +EXPORT_SYMBOL_GPL drivers/usb/gadget/function/usb_f_mass_storage 0xa5e4a93a fsg_show_ro +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 0xab6c68ac fsg_config_from_params +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 0xb8d45031 fsg_show_file +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 0xe65b1ff5 fsg_lun_fsync_sub +EXPORT_SYMBOL_GPL drivers/usb/gadget/function/usb_f_mass_storage 0xf1952f2a fsg_show_cdrom +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 0xf534e1bf fsg_show_inquiry_string +EXPORT_SYMBOL_GPL drivers/usb/gadget/function/usb_f_mass_storage 0xfcae2f43 fsg_lun_close +EXPORT_SYMBOL_GPL drivers/usb/gadget/function/usb_f_rndis 0x000041d3 rndis_signal_connect +EXPORT_SYMBOL_GPL drivers/usb/gadget/function/usb_f_rndis 0x01f793aa rndis_set_param_dev +EXPORT_SYMBOL_GPL drivers/usb/gadget/function/usb_f_rndis 0x126b3a58 rndis_signal_disconnect +EXPORT_SYMBOL_GPL drivers/usb/gadget/function/usb_f_rndis 0x3d6d51cd rndis_get_next_response +EXPORT_SYMBOL_GPL drivers/usb/gadget/function/usb_f_rndis 0x51a9eb3d rndis_set_param_medium +EXPORT_SYMBOL_GPL drivers/usb/gadget/function/usb_f_rndis 0x5444a42a rndis_msg_parser +EXPORT_SYMBOL_GPL drivers/usb/gadget/function/usb_f_rndis 0x60559afb rndis_register +EXPORT_SYMBOL_GPL drivers/usb/gadget/function/usb_f_rndis 0x6dc8e38d rndis_borrow_net +EXPORT_SYMBOL_GPL drivers/usb/gadget/function/usb_f_rndis 0x8c6c4d76 rndis_add_hdr +EXPORT_SYMBOL_GPL drivers/usb/gadget/function/usb_f_rndis 0x93f3c7bf rndis_rm_hdr +EXPORT_SYMBOL_GPL drivers/usb/gadget/function/usb_f_rndis 0x9fce1c8d rndis_set_param_vendor +EXPORT_SYMBOL_GPL drivers/usb/gadget/function/usb_f_rndis 0xc1ff3041 rndis_free_response +EXPORT_SYMBOL_GPL drivers/usb/gadget/function/usb_f_rndis 0xc5ce71b5 rndis_uninit +EXPORT_SYMBOL_GPL drivers/usb/gadget/function/usb_f_rndis 0xee2ba1c1 rndis_deregister +EXPORT_SYMBOL_GPL drivers/usb/gadget/function/usb_f_rndis 0xf1876a22 rndis_set_host_mac +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0x01795e01 usb_otg_descriptor_alloc +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0x02bd1963 usb_string_id +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0x0c589aba usb_validate_langid +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0x0cb7e477 usb_ep_autoconfig_release +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0x119f0f56 usb_gstrings_attach +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0x128a6325 usb_ep_autoconfig_reset +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0x245ab9e0 usb_add_function +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0x2741fedc usb_function_deactivate +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0x2e09263f usb_copy_descriptors +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0x321ee4b8 usb_assign_descriptors +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0x32be0e1e usb_put_function +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0x4beb505d usb_gadget_get_string +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0x4ff195ab usb_get_function_instance +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0x539a8130 usb_composite_overwrite_options +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0x562376de usb_string_ids_n +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0x5c58422f usb_ep_autoconfig_ss +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0x6408948a usb_remove_function +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0x7883e9a3 unregister_gadget_item +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0x7bf49719 usb_composite_unregister +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0x7e23ce61 usb_add_config_only +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0x836c31c0 usb_function_register +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0x8564ac03 usb_free_all_descriptors +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0x86a0c462 usb_string_ids_tab +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0x89ee70db config_ep_by_speed +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0x8c678442 usb_ep_autoconfig +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0x8da994d6 usb_function_unregister +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0x982cb36d alloc_ep_req +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0x9a1ff7c8 usb_interface_id +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0xa0c15aa8 usb_add_config +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0xa20b8c4b usb_function_activate +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0xb90e6881 usb_get_function +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0xbcca1f87 usb_composite_probe +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0xc79a56ff usb_put_function_instance +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0xd2ea2134 usb_descriptor_fillbuf +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0xdada31d8 config_ep_by_speed_and_alt +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0xe0cfa325 usb_composite_setup_continue +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0xf474a207 usb_gadget_config_buf +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0xfd50aac2 usb_otg_descriptor_init +EXPORT_SYMBOL_GPL drivers/usb/gadget/udc/snps_udc_core 0x0509cc1b udc_enable_dev_setup_interrupts +EXPORT_SYMBOL_GPL drivers/usb/gadget/udc/snps_udc_core 0x074a115d udc_mask_unused_interrupts +EXPORT_SYMBOL_GPL drivers/usb/gadget/udc/snps_udc_core 0x19189102 free_dma_pools +EXPORT_SYMBOL_GPL drivers/usb/gadget/udc/snps_udc_core 0x3787d92a gadget_release +EXPORT_SYMBOL_GPL drivers/usb/gadget/udc/snps_udc_core 0x4d9ebd5f udc_probe +EXPORT_SYMBOL_GPL drivers/usb/gadget/udc/snps_udc_core 0x5d01d078 udc_irq +EXPORT_SYMBOL_GPL drivers/usb/gadget/udc/snps_udc_core 0x9901ea39 init_dma_pools +EXPORT_SYMBOL_GPL drivers/usb/gadget/udc/snps_udc_core 0xbbeb91ed udc_basic_init +EXPORT_SYMBOL_GPL drivers/usb/gadget/udc/snps_udc_core 0xd8e4278a udc_remove +EXPORT_SYMBOL_GPL drivers/usb/gadget/udc/snps_udc_core 0xf4e1eeb9 empty_req_queue +EXPORT_SYMBOL_GPL drivers/usb/host/xhci-pci-renesas 0x463191e0 renesas_xhci_check_request_fw +EXPORT_SYMBOL_GPL drivers/usb/host/xhci-pci-renesas 0x8563f41b renesas_xhci_pci_exit +EXPORT_SYMBOL_GPL drivers/usb/misc/ezusb 0x4faf9b8a ezusb_fx1_set_reset +EXPORT_SYMBOL_GPL drivers/usb/misc/ezusb 0xb4397673 ezusb_fx1_ihex_firmware_download +EXPORT_SYMBOL_GPL drivers/usb/misc/ftdi-elan 0x3c0d857c usb_ftdi_elan_edset_single +EXPORT_SYMBOL_GPL drivers/usb/misc/ftdi-elan 0x5cbec5d0 usb_ftdi_elan_read_pcimem +EXPORT_SYMBOL_GPL drivers/usb/misc/ftdi-elan 0x61333a74 usb_ftdi_elan_edset_flush +EXPORT_SYMBOL_GPL drivers/usb/misc/ftdi-elan 0x6656a14f usb_ftdi_elan_edset_empty +EXPORT_SYMBOL_GPL drivers/usb/misc/ftdi-elan 0x72bd469c usb_ftdi_elan_edset_output +EXPORT_SYMBOL_GPL drivers/usb/misc/ftdi-elan 0x97a590b4 usb_ftdi_elan_write_pcimem +EXPORT_SYMBOL_GPL drivers/usb/misc/ftdi-elan 0x98638913 ftdi_elan_gone_away +EXPORT_SYMBOL_GPL drivers/usb/misc/ftdi-elan 0x9d915616 usb_ftdi_elan_edset_setup +EXPORT_SYMBOL_GPL drivers/usb/misc/ftdi-elan 0xca25f343 usb_ftdi_elan_edset_input +EXPORT_SYMBOL_GPL drivers/usb/phy/phy-am335x-control 0x40c5be4b am335x_get_phy_control +EXPORT_SYMBOL_GPL drivers/usb/phy/phy-isp1301 0x38126c43 isp1301_get_client +EXPORT_SYMBOL_GPL drivers/usb/serial/usb_wwan 0x351eeb82 usb_wwan_port_probe +EXPORT_SYMBOL_GPL drivers/usb/serial/usbserial 0x061860ed usb_serial_deregister_drivers +EXPORT_SYMBOL_GPL drivers/usb/serial/usbserial 0x0be5e6bd usb_serial_register_drivers +EXPORT_SYMBOL_GPL drivers/usb/serial/usbserial 0x26e2b9fc usb_serial_generic_write_bulk_callback +EXPORT_SYMBOL_GPL drivers/usb/serial/usbserial 0x2bc9eaab usb_serial_handle_sysrq_char +EXPORT_SYMBOL_GPL drivers/usb/serial/usbserial 0x3229d17b usb_serial_handle_break +EXPORT_SYMBOL_GPL drivers/usb/serial/usbserial 0x3911617d usb_serial_generic_tiocmiwait +EXPORT_SYMBOL_GPL drivers/usb/serial/usbserial 0x40b5a043 usb_serial_generic_get_icount +EXPORT_SYMBOL_GPL drivers/usb/serial/usbserial 0x4e2e9d52 usb_serial_generic_resume +EXPORT_SYMBOL_GPL drivers/usb/serial/usbserial 0x6245d053 usb_serial_port_softint +EXPORT_SYMBOL_GPL drivers/usb/serial/usbserial 0x8451a5e8 usb_serial_generic_wait_until_sent +EXPORT_SYMBOL_GPL drivers/usb/serial/usbserial 0x8615b641 usb_serial_generic_submit_read_urbs +EXPORT_SYMBOL_GPL drivers/usb/serial/usbserial 0x956d3fe7 usb_serial_handle_dcd_change +EXPORT_SYMBOL_GPL drivers/usb/serial/usbserial 0x9739d893 usb_serial_generic_open +EXPORT_SYMBOL_GPL drivers/usb/serial/usbserial 0xa6806cb6 usb_serial_generic_close +EXPORT_SYMBOL_GPL drivers/usb/serial/usbserial 0xb6878de7 usb_serial_generic_chars_in_buffer +EXPORT_SYMBOL_GPL drivers/usb/serial/usbserial 0xc703122d usb_serial_generic_process_read_urb +EXPORT_SYMBOL_GPL drivers/usb/serial/usbserial 0xcb0c6096 usb_serial_generic_write_start +EXPORT_SYMBOL_GPL drivers/usb/serial/usbserial 0xcd3d76d3 usb_serial_generic_write +EXPORT_SYMBOL_GPL drivers/usb/serial/usbserial 0xdb11ff72 usb_serial_generic_unthrottle +EXPORT_SYMBOL_GPL drivers/usb/serial/usbserial 0xdeb23507 usb_serial_generic_read_bulk_callback +EXPORT_SYMBOL_GPL drivers/usb/serial/usbserial 0xfac86206 usb_serial_generic_throttle +EXPORT_SYMBOL_GPL drivers/usb/typec/altmodes/typec_displayport 0xb12881f4 dp_altmode_probe +EXPORT_SYMBOL_GPL drivers/usb/typec/altmodes/typec_displayport 0xef8c9049 dp_altmode_remove +EXPORT_SYMBOL_GPL drivers/usb/typec/tcpm/tcpci 0x6f497a3c tcpci_irq +EXPORT_SYMBOL_GPL drivers/usb/typec/tcpm/tcpci 0x9d93cf79 tcpci_register_port +EXPORT_SYMBOL_GPL drivers/usb/typec/tcpm/tcpci 0xc529e32e tcpci_unregister_port +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 0xaea4824f 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 0xea220941 tcpm_tcpc_reset +EXPORT_SYMBOL_GPL drivers/usb/typec/typec 0x03608f2a typec_cable_set_identity +EXPORT_SYMBOL_GPL drivers/usb/typec/typec 0x0826fb6a typec_switch_put +EXPORT_SYMBOL_GPL drivers/usb/typec/typec 0x09462b12 typec_altmode_get_partner +EXPORT_SYMBOL_GPL drivers/usb/typec/typec 0x143a2b2b typec_altmode_notify +EXPORT_SYMBOL_GPL drivers/usb/typec/typec 0x1b90ac2b typec_unregister_plug +EXPORT_SYMBOL_GPL drivers/usb/typec/typec 0x1eda6ef9 typec_plug_register_altmode +EXPORT_SYMBOL_GPL drivers/usb/typec/typec 0x21e5ea3f typec_mux_register +EXPORT_SYMBOL_GPL drivers/usb/typec/typec 0x2c4b45c2 typec_cable_is_active +EXPORT_SYMBOL_GPL drivers/usb/typec/typec 0x2d1e301d typec_find_power_role +EXPORT_SYMBOL_GPL drivers/usb/typec/typec 0x310b4efd typec_altmode_vdm +EXPORT_SYMBOL_GPL drivers/usb/typec/typec 0x33fd62de typec_set_pwr_opmode +EXPORT_SYMBOL_GPL drivers/usb/typec/typec 0x35e212e6 typec_partner_register_altmode +EXPORT_SYMBOL_GPL drivers/usb/typec/typec 0x36852716 typec_set_orientation +EXPORT_SYMBOL_GPL drivers/usb/typec/typec 0x413bf06f typec_altmode_put_plug +EXPORT_SYMBOL_GPL drivers/usb/typec/typec 0x4216f4d7 typec_switch_set_drvdata +EXPORT_SYMBOL_GPL drivers/usb/typec/typec 0x426285ea typec_unregister_cable +EXPORT_SYMBOL_GPL drivers/usb/typec/typec 0x493159cc typec_partner_set_identity +EXPORT_SYMBOL_GPL drivers/usb/typec/typec 0x4aaf4de5 typec_cable_put +EXPORT_SYMBOL_GPL drivers/usb/typec/typec 0x4c1ccf19 typec_port_register_altmode +EXPORT_SYMBOL_GPL drivers/usb/typec/typec 0x54c93810 typec_set_mode +EXPORT_SYMBOL_GPL drivers/usb/typec/typec 0x5869adb2 typec_get_orientation +EXPORT_SYMBOL_GPL drivers/usb/typec/typec 0x5ac3a632 typec_set_vconn_role +EXPORT_SYMBOL_GPL drivers/usb/typec/typec 0x5f2c6469 typec_set_data_role +EXPORT_SYMBOL_GPL drivers/usb/typec/typec 0x614740d9 typec_register_partner +EXPORT_SYMBOL_GPL drivers/usb/typec/typec 0x6b5d3b96 typec_match_altmode +EXPORT_SYMBOL_GPL drivers/usb/typec/typec 0x6eb38360 typec_altmode_enter +EXPORT_SYMBOL_GPL drivers/usb/typec/typec 0x734a9c4d typec_get_drvdata +EXPORT_SYMBOL_GPL drivers/usb/typec/typec 0x797c310d typec_altmode_exit +EXPORT_SYMBOL_GPL drivers/usb/typec/typec 0x7e2998e7 typec_set_pwr_role +EXPORT_SYMBOL_GPL drivers/usb/typec/typec 0x85d65bc3 typec_altmode2port +EXPORT_SYMBOL_GPL drivers/usb/typec/typec 0x8f6ca37e typec_altmode_get_plug +EXPORT_SYMBOL_GPL drivers/usb/typec/typec 0x9049491e typec_find_port_data_role +EXPORT_SYMBOL_GPL drivers/usb/typec/typec 0x927d6a40 typec_mux_unregister +EXPORT_SYMBOL_GPL drivers/usb/typec/typec 0x9c8fff21 typec_register_port +EXPORT_SYMBOL_GPL drivers/usb/typec/typec 0x9cad8da6 typec_unregister_partner +EXPORT_SYMBOL_GPL drivers/usb/typec/typec 0xa254de98 typec_find_orientation +EXPORT_SYMBOL_GPL drivers/usb/typec/typec 0xab2de116 typec_switch_set +EXPORT_SYMBOL_GPL drivers/usb/typec/typec 0xb385fa58 typec_altmode_attention +EXPORT_SYMBOL_GPL drivers/usb/typec/typec 0xb3884dd3 __typec_altmode_register_driver +EXPORT_SYMBOL_GPL drivers/usb/typec/typec 0xb4c51620 typec_altmode_unregister_driver +EXPORT_SYMBOL_GPL drivers/usb/typec/typec 0xbc720f14 typec_switch_unregister +EXPORT_SYMBOL_GPL drivers/usb/typec/typec 0xc293f191 fwnode_typec_mux_get +EXPORT_SYMBOL_GPL drivers/usb/typec/typec 0xcfbeb489 fwnode_typec_switch_get +EXPORT_SYMBOL_GPL drivers/usb/typec/typec 0xd05debc9 typec_mux_set_drvdata +EXPORT_SYMBOL_GPL drivers/usb/typec/typec 0xd1cd5039 typec_switch_register +EXPORT_SYMBOL_GPL drivers/usb/typec/typec 0xd36dd447 typec_switch_get_drvdata +EXPORT_SYMBOL_GPL drivers/usb/typec/typec 0xd8d9e77d typec_unregister_altmode +EXPORT_SYMBOL_GPL drivers/usb/typec/typec 0xda0a9c4c typec_unregister_port +EXPORT_SYMBOL_GPL drivers/usb/typec/typec 0xde83e38a typec_cable_get +EXPORT_SYMBOL_GPL drivers/usb/typec/typec 0xe2c3b700 typec_register_cable +EXPORT_SYMBOL_GPL drivers/usb/typec/typec 0xe77e44fb typec_altmode_update_active +EXPORT_SYMBOL_GPL drivers/usb/typec/typec 0xeaf69047 typec_mux_put +EXPORT_SYMBOL_GPL drivers/usb/typec/typec 0xeafc1eb8 typec_find_port_power_role +EXPORT_SYMBOL_GPL drivers/usb/typec/typec 0xed7f2bfe typec_mux_set +EXPORT_SYMBOL_GPL drivers/usb/typec/typec 0xee19f4b1 typec_register_plug +EXPORT_SYMBOL_GPL drivers/usb/typec/typec 0xef16cad3 typec_mux_get_drvdata +EXPORT_SYMBOL_GPL drivers/usb/typec/ucsi/typec_ucsi 0x1493ecea ucsi_set_drvdata +EXPORT_SYMBOL_GPL drivers/usb/typec/ucsi/typec_ucsi 0x34157e02 ucsi_get_drvdata +EXPORT_SYMBOL_GPL drivers/usb/typec/ucsi/typec_ucsi 0x4e44281b ucsi_unregister +EXPORT_SYMBOL_GPL drivers/usb/typec/ucsi/typec_ucsi 0x6a78057f ucsi_create +EXPORT_SYMBOL_GPL drivers/usb/typec/ucsi/typec_ucsi 0x6dc3b786 ucsi_init +EXPORT_SYMBOL_GPL drivers/usb/typec/ucsi/typec_ucsi 0x878ebf09 ucsi_connector_change +EXPORT_SYMBOL_GPL drivers/usb/typec/ucsi/typec_ucsi 0x89911bfb ucsi_send_command +EXPORT_SYMBOL_GPL drivers/usb/typec/ucsi/typec_ucsi 0xbea36a89 ucsi_register +EXPORT_SYMBOL_GPL drivers/usb/typec/ucsi/typec_ucsi 0xd3b34a43 ucsi_resume +EXPORT_SYMBOL_GPL drivers/usb/typec/ucsi/typec_ucsi 0xe4967951 ucsi_destroy +EXPORT_SYMBOL_GPL drivers/usb/usbip/usbip-core 0x14053ebd usbip_alloc_iso_desc_pdu +EXPORT_SYMBOL_GPL drivers/usb/usbip/usbip-core 0x66682158 usbip_recv +EXPORT_SYMBOL_GPL drivers/usb/usbip/usbip-core 0x73c66484 usbip_event_add +EXPORT_SYMBOL_GPL drivers/usb/usbip/usbip-core 0x78b72f44 usbip_debug_flag +EXPORT_SYMBOL_GPL drivers/usb/usbip/usbip-core 0x7bffa7db usbip_start_eh +EXPORT_SYMBOL_GPL drivers/usb/usbip/usbip-core 0x7f94d370 usbip_stop_eh +EXPORT_SYMBOL_GPL drivers/usb/usbip/usbip-core 0x88c5eaef dev_attr_usbip_debug +EXPORT_SYMBOL_GPL drivers/usb/usbip/usbip-core 0xa10fa573 usbip_in_eh +EXPORT_SYMBOL_GPL drivers/usb/usbip/usbip-core 0xa1410c89 usbip_event_happened +EXPORT_SYMBOL_GPL drivers/usb/usbip/usbip-core 0xaa065199 usbip_pack_pdu +EXPORT_SYMBOL_GPL drivers/usb/usbip/usbip-core 0xada50e72 usbip_pad_iso +EXPORT_SYMBOL_GPL drivers/usb/usbip/usbip-core 0xadb2f7a9 usbip_dump_urb +EXPORT_SYMBOL_GPL drivers/usb/usbip/usbip-core 0xb53bba77 usbip_recv_xbuff +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 0xed575e42 usbip_recv_iso +EXPORT_SYMBOL_GPL drivers/vdpa/vdpa 0x04d938ca __vdpa_alloc_device +EXPORT_SYMBOL_GPL drivers/vdpa/vdpa 0x1109b2dd __vdpa_register_driver +EXPORT_SYMBOL_GPL drivers/vdpa/vdpa 0x5906ec47 vdpa_unregister_driver +EXPORT_SYMBOL_GPL drivers/vdpa/vdpa 0x6ad54a43 vdpa_register_device +EXPORT_SYMBOL_GPL drivers/vdpa/vdpa 0x8b805b89 vdpa_unregister_device +EXPORT_SYMBOL_GPL drivers/vfio/mdev/mdev 0xb9dac391 mdev_bus_type +EXPORT_SYMBOL_GPL drivers/vfio/platform/vfio-platform-base 0x358474b0 vfio_platform_remove_common +EXPORT_SYMBOL_GPL drivers/vfio/platform/vfio-platform-base 0x7736ebfa vfio_platform_probe_common +EXPORT_SYMBOL_GPL drivers/vfio/platform/vfio-platform-base 0xe79beece vfio_platform_unregister_reset +EXPORT_SYMBOL_GPL drivers/vfio/platform/vfio-platform-base 0xfb01be17 __vfio_platform_register_reset +EXPORT_SYMBOL_GPL drivers/vfio/vfio 0x3567743b vfio_external_user_iommu_id +EXPORT_SYMBOL_GPL drivers/vfio/vfio 0x43c84d35 vfio_group_get_external_user +EXPORT_SYMBOL_GPL drivers/vfio/vfio 0x44b83e00 vfio_info_cap_add +EXPORT_SYMBOL_GPL drivers/vfio/vfio 0x4d17c766 vfio_del_group_dev +EXPORT_SYMBOL_GPL drivers/vfio/vfio 0x51ddbe9d vfio_register_iommu_driver +EXPORT_SYMBOL_GPL drivers/vfio/vfio 0x57d2c63b vfio_external_group_match_file +EXPORT_SYMBOL_GPL drivers/vfio/vfio 0x5b35c4f9 vfio_group_set_kvm +EXPORT_SYMBOL_GPL drivers/vfio/vfio 0x6801ef20 vfio_add_group_dev +EXPORT_SYMBOL_GPL drivers/vfio/vfio 0x76581380 vfio_iommu_group_put +EXPORT_SYMBOL_GPL drivers/vfio/vfio 0x94de8f96 vfio_unregister_iommu_driver +EXPORT_SYMBOL_GPL drivers/vfio/vfio 0x95258207 vfio_device_data +EXPORT_SYMBOL_GPL drivers/vfio/vfio 0x969c73d9 vfio_device_put +EXPORT_SYMBOL_GPL drivers/vfio/vfio 0xa4b8a730 vfio_device_get_from_dev +EXPORT_SYMBOL_GPL drivers/vfio/vfio 0xb12a9a9b vfio_iommu_group_get +EXPORT_SYMBOL_GPL drivers/vfio/vfio 0xc1d989c5 vfio_external_check_extension +EXPORT_SYMBOL_GPL drivers/vfio/vfio 0xc4913442 vfio_group_put_external_user +EXPORT_SYMBOL_GPL drivers/vfio/vfio 0xd3177d79 vfio_group_get_external_user_from_dev +EXPORT_SYMBOL_GPL drivers/vfio/vfio_virqfd 0x074b52b6 vfio_virqfd_enable +EXPORT_SYMBOL_GPL drivers/vfio/vfio_virqfd 0xa6951a3e vfio_virqfd_disable +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x0098dd11 vhost_poll_start +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x00e44d94 vhost_enqueue_msg +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x06312784 vhost_vq_access_ok +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x137070a8 vhost_log_access_ok +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x15e5b151 vhost_init_device_iotlb +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x3d0caeb1 vhost_poll_queue +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x4820bb2b vhost_signal +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x487788b9 vhost_add_used_and_signal_n +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x556619d3 vhost_vq_avail_empty +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x56772c50 vhost_add_used_and_signal +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x61551b97 vhost_work_flush +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x61daaf13 vhost_dequeue_msg +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x61e59109 vhost_chr_read_iter +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x6584b83b vhost_poll_flush +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x7862c08c vhost_get_vq_desc +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x7cc60ca9 vhost_dev_init +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x81c18733 vhost_new_msg +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x824e178f vhost_add_used_n +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x873ccd3c vhost_disable_notify +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x88712b8d vhost_discard_vq_desc +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x9b8351a1 vhost_vq_init_access +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0xa7016d09 vhost_dev_ioctl +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0xa909cfc5 vhost_work_init +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0xae329d4d vhost_has_work +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0xb0f43a29 vhost_exceeds_weight +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0xb1f86d45 vhost_dev_check_owner +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0xb38568e5 vhost_dev_set_owner +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0xc40f9ba5 vhost_vq_is_setup +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0xca0d8b84 vhost_dev_cleanup +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0xd45b1dab vhost_dev_reset_owner +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0xd5d657ed vhost_vring_ioctl +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0xdc6b71b3 vhost_poll_init +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0xdf9c9cfc vhost_enable_notify +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0xe2791824 vhost_poll_stop +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0xe5ac0e73 vhost_add_used +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0xe6751334 vq_meta_prefetch +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0xe6faff6e vhost_work_queue +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0xf268fcc8 vhost_log_write +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0xfd2b3e45 vhost_dev_reset_owner_prepare +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0xff31a11e vhost_dev_has_owner +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0xffcf903a vhost_dev_stop +EXPORT_SYMBOL_GPL drivers/vhost/vhost_iotlb 0x38ff875f vhost_iotlb_add_range +EXPORT_SYMBOL_GPL drivers/vhost/vhost_iotlb 0x514d0e6a vhost_iotlb_itree_first +EXPORT_SYMBOL_GPL drivers/vhost/vhost_iotlb 0x5f4e5249 vhost_iotlb_reset +EXPORT_SYMBOL_GPL drivers/vhost/vhost_iotlb 0x6bec0e66 vhost_iotlb_del_range +EXPORT_SYMBOL_GPL drivers/vhost/vhost_iotlb 0x7579334f vhost_iotlb_itree_next +EXPORT_SYMBOL_GPL drivers/vhost/vhost_iotlb 0xa24517eb vhost_iotlb_free +EXPORT_SYMBOL_GPL drivers/vhost/vhost_iotlb 0xad111707 vhost_iotlb_map_free +EXPORT_SYMBOL_GPL drivers/vhost/vhost_iotlb 0xc577832d vhost_iotlb_alloc +EXPORT_SYMBOL_GPL drivers/video/backlight/ili9320 0x428c0030 ili9320_resume +EXPORT_SYMBOL_GPL drivers/video/backlight/ili9320 0x66c7f96e ili9320_suspend +EXPORT_SYMBOL_GPL drivers/video/backlight/ili9320 0x6984523c ili9320_write +EXPORT_SYMBOL_GPL drivers/video/backlight/ili9320 0xa622de3a ili9320_shutdown +EXPORT_SYMBOL_GPL drivers/video/backlight/ili9320 0xccb9baef ili9320_write_regs +EXPORT_SYMBOL_GPL drivers/video/backlight/ili9320 0xe724b86f ili9320_probe_spi +EXPORT_SYMBOL_GPL drivers/video/backlight/ili9320 0xeeb73b61 ili9320_remove +EXPORT_SYMBOL_GPL drivers/video/fbdev/core/fb_ddc 0x8f30c2c9 fb_ddc_read +EXPORT_SYMBOL_GPL drivers/video/fbdev/core/fb_sys_fops 0x29e67204 fb_sys_read +EXPORT_SYMBOL_GPL drivers/video/fbdev/core/fb_sys_fops 0x2ae1d2af fb_sys_write +EXPORT_SYMBOL_GPL drivers/video/fbdev/omap2/omapfb/dss/omapdss 0x14c3611e omapdss_of_find_source_for_first_ep +EXPORT_SYMBOL_GPL drivers/video/fbdev/omap2/omapfb/dss/omapdss 0x2c835784 omapdss_of_get_first_endpoint +EXPORT_SYMBOL_GPL drivers/video/fbdev/omap2/omapfb/dss/omapdss 0xae8aec1c omapdss_of_get_next_port +EXPORT_SYMBOL_GPL drivers/video/fbdev/omap2/omapfb/dss/omapdss 0xe0268e4f omapdss_of_get_next_endpoint +EXPORT_SYMBOL_GPL drivers/video/fbdev/sis/sisfb 0xdd4f98f2 sis_free_new +EXPORT_SYMBOL_GPL drivers/video/fbdev/sis/sisfb 0xf5c8206d sis_malloc_new +EXPORT_SYMBOL_GPL drivers/w1/wire 0x13682374 w1_touch_block +EXPORT_SYMBOL_GPL drivers/w1/wire 0x165d89af w1_reset_resume_command +EXPORT_SYMBOL_GPL drivers/w1/wire 0x1dbbe091 w1_touch_bit +EXPORT_SYMBOL_GPL drivers/w1/wire 0x1e27503a w1_next_pullup +EXPORT_SYMBOL_GPL drivers/w1/wire 0x20235829 w1_read_block +EXPORT_SYMBOL_GPL drivers/w1/wire 0x322c992f w1_read_8 +EXPORT_SYMBOL_GPL drivers/w1/wire 0x34119e57 w1_write_8 +EXPORT_SYMBOL_GPL drivers/w1/wire 0x425827d5 w1_write_block +EXPORT_SYMBOL_GPL drivers/w1/wire 0x63757e92 w1_calc_crc8 +EXPORT_SYMBOL_GPL drivers/w1/wire 0x946b60a4 w1_reset_select_slave +EXPORT_SYMBOL_GPL drivers/w1/wire 0x952de10c w1_triplet +EXPORT_SYMBOL_GPL drivers/w1/wire 0xdaf69600 w1_reset_bus +EXPORT_SYMBOL_GPL fs/dlm/dlm 0x4b62826c dlm_unlock +EXPORT_SYMBOL_GPL fs/dlm/dlm 0x647d6170 dlm_lock +EXPORT_SYMBOL_GPL fs/dlm/dlm 0x69e9340b dlm_posix_get +EXPORT_SYMBOL_GPL fs/dlm/dlm 0xa49fe256 dlm_posix_lock +EXPORT_SYMBOL_GPL fs/dlm/dlm 0xada0734f dlm_posix_unlock +EXPORT_SYMBOL_GPL fs/dlm/dlm 0xcd224e1d dlm_new_lockspace +EXPORT_SYMBOL_GPL fs/dlm/dlm 0xcf9f3328 dlm_release_lockspace +EXPORT_SYMBOL_GPL fs/fscache/fscache 0x092cf98e fscache_object_sleep_till_congested +EXPORT_SYMBOL_GPL fs/lockd/lockd 0x1730d1f8 lockd_down +EXPORT_SYMBOL_GPL fs/lockd/lockd 0x3486e1ef nlmclnt_proc +EXPORT_SYMBOL_GPL fs/lockd/lockd 0x6241bf94 nlmclnt_done +EXPORT_SYMBOL_GPL fs/lockd/lockd 0x71e7b8b8 nlmsvc_unlock_all_by_sb +EXPORT_SYMBOL_GPL fs/lockd/lockd 0x77e35ccc nlmsvc_unlock_all_by_ip +EXPORT_SYMBOL_GPL fs/lockd/lockd 0x88d19b28 lockd_up +EXPORT_SYMBOL_GPL fs/lockd/lockd 0xd10c5e35 nlmclnt_init +EXPORT_SYMBOL_GPL fs/lockd/lockd 0xe8fc7700 nlmsvc_ops +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x02135f90 nfs_alloc_server +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x0294c6a2 nfs_callback_nr_threads +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x0381a95d nfs_permission +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x041b89cc nfs_probe_fsinfo +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x049f220f nfs_init_cinfo +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x0bcc81aa nfs_init_commit +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x0c892e09 nfs_link +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x0dff3fc3 nfs_open +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x10962bc2 nfs_auth_info_match +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x10a1ba40 nfs_writeback_update_inode +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x157bfc2c nfs_umount_begin +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x15d204b4 nfs_symlink +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x1604dba7 nfs_lookup +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x16bcfd6f nfs_mark_client_ready +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x1b012281 put_nfs_open_context +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x1d0ae7e5 nfs_try_get_tree +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x1d77ec23 nfs_initiate_pgio +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x1ec349e8 nfs_show_path +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x1eda497d __tracepoint_nfs_fsync_enter +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x22d795a8 _nfs_display_fhandle_hash +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x243b442e nfs_retry_commit +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x262d0650 nfs_generic_pg_test +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x265797db alloc_nfs_open_context +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x26884ff7 nfs_alloc_fhandle +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x2935406a nfs_init_client +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x2944015d nfs_mknod +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x2b2c454c nfs_create_server +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x2b7494d4 nfs_sync_inode +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x2c915bd4 register_nfs_version +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x2cc51639 nfs4_fs_type +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x2d54151a nfs_post_op_update_inode +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x2e9edc2d nfs_server_insert_lists +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x365fb1e2 nfs_unlink +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x3924fb04 nfs_initiate_commit +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x39e05ac3 nfs_idmap_cache_timeout +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x3cb466f8 nfs_async_iocounter_wait +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x3d08a137 nfs_get_client +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x3de32055 nfs_free_inode +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x3e1791a9 nfs_pgheader_init +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x3ee0f5f2 nfs_post_op_update_inode_force_wcc +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x3f2690f2 nfs_check_flags +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x3fd4229f nfs_release_request +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x3ff046f7 nfs_filemap_write_and_wait_range +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x40739385 nfs_wait_bit_killable +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x4233f398 nfs_lock +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x42f2c81f nfs4_client_id_uniquifier +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x42f55a03 nfs_client_init_status +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x47629405 nfs_commit_free +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x49d7f50c nfs_clear_inode +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x49fa32f7 nfs_pageio_init_read +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x4bd83180 nfs_show_stats +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x4cb9e001 recover_lost_locks +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x4f7a406b nfs_setsecurity +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x51892d61 nfs_callback_set_tcpport +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x51a7c77b nfs_invalidate_atime +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x5588fed9 nfs_rename +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x57418302 nfs_wait_client_init_complete +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x584b8482 nfs_inc_attr_generation_counter +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x5b3cf9b4 nfs_do_submount +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x5b5073d1 nfs_init_server_rpcclient +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x5e2aa127 nfs_commitdata_release +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x5ec2d3a0 nfs_refresh_inode +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x5f755ff6 nfs_fhget +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x6121fc5d nfs_pgio_header_alloc +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x62191b74 nfs_file_write +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x62f7dd77 nfs_atomic_open +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x62f867f3 nfs_fscache_open_file +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x63e14e3c __tracepoint_nfs_fsync_exit +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x65f78094 nfs_show_devname +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x669ac405 nfs_add_or_obtain +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x68774dff nfs_fs_type +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x6bc80710 nfs4_label_alloc +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x716477b5 nfs_file_llseek +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x74c8a58f nfs_file_release +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x7695a0eb nfs_dentry_operations +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x78a1209f nfs_get_lock_context +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x7b063182 nfs_file_operations +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x7b2dbd4e nfs_sops +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x7ba85419 nfs_file_set_open_context +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x7ebf4ace __tracepoint_nfs_xdr_status +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x809fdab4 nfs4_dentry_operations +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x81cfffdb nfs_scan_commit_list +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x832e8f0b nfs_alloc_fattr +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x866d7beb nfs_pgio_current_mirror +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x87f7e360 nfs_mkdir +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x8b8db64e nfs_flock +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x8d915e60 nfs_put_client +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x8e9c864e nfs_statfs +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x907ffd07 nfs_submount +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x90a5530f nfsiod_workqueue +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x91d1fe52 max_session_slots +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x92717911 nfs_zap_acl_cache +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x927751a0 nfs_commit_inode +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x92d73897 nfs_request_add_commit_list_locked +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x986078ef nfs_client_for_each_server +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x98b0ece8 nfs_init_timeout_values +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x99090e96 nfs_pageio_resend +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x991f5571 nfs_request_add_commit_list +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x9a3a96d4 nfs_alloc_inode +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x9c1f77f3 nfs_sb_active +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x9ce1c2f3 nfs_put_lock_context +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x9efeb9f1 nfs_show_options +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xa05ca625 nfs_fattr_init +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xa30e7723 nfs_access_zap_cache +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xa8e9e1ae send_implementation_id +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xa99d2aa3 nfs_wb_all +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xaaa14361 nfs_dreq_bytes_left +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xaafd4acc max_session_cb_slots +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xadbe2909 nfs_server_remove_lists +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xb3bced8f nfs_generic_pgio +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xb3cf6f20 nfs_pageio_init_write +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xb464d1ff nfs_request_remove_commit_list +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xb5cc08e6 nfs_file_fsync +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xb6151bd2 nfs_free_client +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xb66e110d get_nfs_open_context +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xb7b3928f nfs_may_open +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xba283318 nfs_free_server +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xba8db680 nfs_commitdata_alloc +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xbd2f28fa nfs_create_rpc_client +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xc0434d15 nfs_set_verifier +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xc09487ba nfs_alloc_client +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xc2f4b51e nfs_sb_deactive +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xc3a2be67 nfs_net_id +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xc4cfd9f4 nfs_pageio_reset_write_mds +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xc5d80137 nfs_getattr +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xc7178c1e nfs_instantiate +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xcb1324a7 nfs_file_mmap +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xcba8a673 unregister_nfs_version +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xd8f01192 nfs_clone_server +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xd95461ae nfs_pageio_reset_read_mds +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xda9e5e94 nfs_rmdir +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xdae9b5d7 nfs4_disable_idmapping +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xdc880666 nfs_create +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xde8a93b7 nfs_server_copy_userdata +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xdf319f57 nfs_setattr +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xe1c20145 nfs_drop_inode +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xe44479b5 nfs_path +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xe7700835 nfs_wait_on_request +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xe8a111cc nfs_client_init_is_complete +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xe956e819 nfs_inode_attach_open_context +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xe9890741 nfs_write_inode +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xea767c0e nfs_access_set_mask +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xeeef5506 nfs_setattr_update_inode +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xf162792b nfs_access_add_cache +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xf725f492 nfs_force_lookup_revalidate +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xf83c952c nfs_pgio_header_free +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xf859ccee nfs_clear_verifier_delegated +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xf90cda4a nfs_kill_super +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xf92c5e76 nfs_close_context +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xfa923884 nfs_revalidate_inode +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xfc619abd _nfs_display_fhandle +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xfcddfd52 nfs_reconfigure +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xff1266e8 nfs_file_read +EXPORT_SYMBOL_GPL fs/nfs/nfsv3 0xf2ab6d6a nfs3_set_ds_client +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x02a3ebf7 pnfs_generic_pg_test +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x04617f1b pnfs_generic_pg_check_layout +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x054bef45 layoutstats_timer +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x07cfffa5 nfs4_put_deviceid_node +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x0daa50f3 nfs4_schedule_migration_recovery +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x10b451d7 pnfs_write_done_resend_to_mds +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x15d7df93 nfs4_find_or_create_ds_client +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x1b70c51d pnfs_nfs_generic_sync +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x1c69fb94 nfs4_schedule_lease_recovery +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x1df727d2 pnfs_generic_scan_commit_lists +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x1eecfe32 pnfs_register_layoutdriver +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x1fa71f16 nfs4_schedule_session_recovery +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x2b03ec0b __tracepoint_ff_layout_write_error +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x2fdf9e93 pnfs_alloc_commit_array +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x30af4ffd pnfs_update_layout +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x316f0e1e nfs4_decode_mp_ds_addr +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x36751a61 __tracepoint_pnfs_mds_fallback_pg_init_write +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x39bf87ce nfs4_sequence_done +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x3c9a11b3 pnfs_generic_pg_init_write +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x3e73f10c __tracepoint_pnfs_mds_fallback_pg_init_read +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x40f508c5 nfs4_set_ds_client +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x467108e5 pnfs_generic_commit_pagelist +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x47a45c65 nfs4_setup_sequence +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x47ee00f6 pnfs_generic_sync +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x4bc75893 pnfs_destroy_layout +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x4fa13f47 pnfs_error_mark_layout_for_return +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x5205f7ed __tracepoint_pnfs_mds_fallback_write_done +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x567bda72 pnfs_generic_pg_check_range +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x5a9ee86d pnfs_generic_pg_readpages +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x61ca74ef pnfs_generic_ds_cinfo_release_lseg +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x61e15f85 pnfs_generic_clear_request_commit +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x649c7479 nfs4_delete_deviceid +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x66b82f8b pnfs_add_commit_array +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x69d3558d pnfs_generic_rw_release +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x6e16b52a __tracepoint_pnfs_mds_fallback_read_pagelist +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x70988e38 nfs4_mark_deviceid_available +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x71ae0fa3 nfs41_sequence_done +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x72ccff1e pnfs_generic_pg_init_read +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x74279e80 pnfs_read_done_resend_to_mds +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x74742c9d nfs4_pnfs_ds_connect +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x76956e9f pnfs_set_lo_fail +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x81b3a5e5 pnfs_free_commit_array +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x88316150 pnfs_generic_search_commit_reqs +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x8ce0928f nfs4_schedule_lease_moved_recovery +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x8d0f79f8 nfs4_init_deviceid_node +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x8fb96aa4 pnfs_generic_ds_cinfo_destroy +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x9d162943 __tracepoint_ff_layout_commit_error +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x9f455ec0 pnfs_layout_mark_request_commit +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xa02df320 nfs_map_string_to_numeric +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xa1dfaf01 pnfs_generic_write_commit_done +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xa27a131b nfs42_ssc_open +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xa6e28866 pnfs_generic_prepare_to_resend_writes +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xa803e14b nfs4_pnfs_ds_add +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xa9f61e1f pnfs_ld_read_done +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xab512f68 nfs_remove_bad_delegation +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xad1a49bf nfs4_proc_getdeviceinfo +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xb282183f pnfs_generic_pg_cleanup +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xb4895436 __tracepoint_nfs4_pnfs_write +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xb85de48c __tracepoint_pnfs_mds_fallback_read_done +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xbb6057ac pnfs_layoutcommit_inode +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xbbd4d53b pnfs_set_layoutcommit +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xbc09a84d pnfs_generic_layout_insert_lseg +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xbc53bace nfs42_proc_layouterror +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xbea9f14a nfs4_pnfs_ds_put +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xbf9ad974 pnfs_read_resend_pnfs +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xc151e45f __tracepoint_pnfs_mds_fallback_write_pagelist +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xc2f66a3d nfs4_mark_deviceid_unavailable +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xc5d3c23a nfs4_test_session_trunk +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xcac9675a __tracepoint_nfs4_pnfs_read +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xd6b95892 pnfs_generic_pg_writepages +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xd8112141 pnfs_put_lseg +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xd834ac21 nfs42_ssc_close +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xde5fb5fe __tracepoint_ff_layout_read_error +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xdf0255db nfs4_test_deviceid_unavailable +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xdf950618 nfs4_find_get_deviceid +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xe1eca9bd __tracepoint_pnfs_mds_fallback_pg_get_mirror_count +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xe33cd884 pnfs_unregister_layoutdriver +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xe5a7264c __tracepoint_nfs4_pnfs_commit_ds +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xed15fb41 nfs4_print_deviceid +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xf0855be7 pnfs_report_layoutstat +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xf0a4218f nfs4_init_ds_session +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xf10d7036 pnfs_generic_recover_commit_reqs +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xf7801360 nfs41_maxgetdevinfo_overhead +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xf8d0a1f0 pnfs_ld_write_done +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xf963334c nfs4_schedule_stateid_recovery +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xf999267e pnfs_generic_commit_release +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xfb75093f nfs4_set_rw_stateid +EXPORT_SYMBOL_GPL fs/nfs_common/grace 0x0fbfc1d0 opens_in_grace +EXPORT_SYMBOL_GPL fs/nfs_common/grace 0x1fe1e1ad locks_end_grace +EXPORT_SYMBOL_GPL fs/nfs_common/grace 0x953ef589 locks_in_grace +EXPORT_SYMBOL_GPL fs/nfs_common/grace 0x9a1bcdd2 locks_start_grace +EXPORT_SYMBOL_GPL fs/nfs_common/nfs_acl 0xa96e90ce nfsacl_decode +EXPORT_SYMBOL_GPL fs/nfs_common/nfs_acl 0xbe384399 nfsacl_encode +EXPORT_SYMBOL_GPL fs/nfsd/nfsd 0x5b388f0f inter_copy_offload_enable +EXPORT_SYMBOL_GPL fs/ocfs2/cluster/ocfs2_nodemanager 0x1b89c6ee o2hb_fill_node_map +EXPORT_SYMBOL_GPL fs/ocfs2/cluster/ocfs2_nodemanager 0x1c0c8ab2 o2hb_register_callback +EXPORT_SYMBOL_GPL fs/ocfs2/cluster/ocfs2_nodemanager 0x1cb231d0 mlog_not_bits +EXPORT_SYMBOL_GPL fs/ocfs2/cluster/ocfs2_nodemanager 0x24a57318 o2nm_get_node_by_ip +EXPORT_SYMBOL_GPL fs/ocfs2/cluster/ocfs2_nodemanager 0x24bd5be4 o2nm_node_put +EXPORT_SYMBOL_GPL fs/ocfs2/cluster/ocfs2_nodemanager 0x2ac8084c o2nm_node_get +EXPORT_SYMBOL_GPL fs/ocfs2/cluster/ocfs2_nodemanager 0x364f639b o2net_send_message_vec +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 0x687f6251 mlog_and_bits +EXPORT_SYMBOL_GPL fs/ocfs2/cluster/ocfs2_nodemanager 0x6a0c3847 __mlog_printk +EXPORT_SYMBOL_GPL fs/ocfs2/cluster/ocfs2_nodemanager 0x9220e7e7 o2hb_unregister_callback +EXPORT_SYMBOL_GPL fs/ocfs2/cluster/ocfs2_nodemanager 0xa87bc9e7 o2nm_configured_node_map +EXPORT_SYMBOL_GPL fs/ocfs2/cluster/ocfs2_nodemanager 0xb28c1670 o2nm_get_node_by_num +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 0xebf874e2 o2hb_setup_callback +EXPORT_SYMBOL_GPL fs/ocfs2/cluster/ocfs2_nodemanager 0xf1a5611d o2net_unregister_handler_list +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 0x3f25d1aa dlm_unregister_domain +EXPORT_SYMBOL_GPL fs/ocfs2/dlm/ocfs2_dlm 0x47b29631 dlmunlock +EXPORT_SYMBOL_GPL fs/ocfs2/dlm/ocfs2_dlm 0x647d3af4 dlm_register_domain +EXPORT_SYMBOL_GPL fs/ocfs2/dlm/ocfs2_dlm 0x7a1211f8 dlm_setup_eviction_cb +EXPORT_SYMBOL_GPL fs/ocfs2/dlm/ocfs2_dlm 0xce9fe90f dlm_print_one_lock +EXPORT_SYMBOL_GPL fs/ocfs2/dlm/ocfs2_dlm 0xd417c66b dlm_register_eviction_cb +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 0xe27318f4 dlmlock +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 0x6f378537 ocfs2_kset +EXPORT_SYMBOL_GPL fs/ocfs2/ocfs2_stackglue 0x76f40744 ocfs2_dlm_lvb +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 0xb794aaa1 ocfs2_plock +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 0xc7b1ba10 ocfs2_stack_glue_register +EXPORT_SYMBOL_GPL fs/ocfs2/ocfs2_stackglue 0xc9fae756 ocfs2_cluster_connect +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 0xd9fd2736 ocfs2_stack_glue_unregister +EXPORT_SYMBOL_GPL fs/pstore/pstore_blk 0x43cc3d4b pstore_blk_get_config +EXPORT_SYMBOL_GPL fs/pstore/pstore_blk 0x941c79d7 unregister_pstore_blk +EXPORT_SYMBOL_GPL fs/pstore/pstore_blk 0xb32bf368 register_pstore_blk +EXPORT_SYMBOL_GPL fs/pstore/pstore_blk 0xb542cba5 unregister_pstore_device +EXPORT_SYMBOL_GPL fs/pstore/pstore_blk 0xf31bbdd5 register_pstore_device +EXPORT_SYMBOL_GPL fs/pstore/pstore_zone 0x3210c549 unregister_pstore_zone +EXPORT_SYMBOL_GPL fs/pstore/pstore_zone 0x9e9eaec1 register_pstore_zone +EXPORT_SYMBOL_GPL kernel/torture 0x1b2fca48 torture_must_stop_irq +EXPORT_SYMBOL_GPL kernel/torture 0x1be7d8be torture_onoff_failures +EXPORT_SYMBOL_GPL kernel/torture 0x3e9619f5 torture_onoff_stats +EXPORT_SYMBOL_GPL kernel/torture 0x3ff9be11 torture_online +EXPORT_SYMBOL_GPL kernel/torture 0x447d9c95 torture_offline +EXPORT_SYMBOL_GPL kernel/torture 0x4c7529bd torture_shutdown_absorb +EXPORT_SYMBOL_GPL kernel/torture 0x52665f8b torture_random +EXPORT_SYMBOL_GPL kernel/torture 0x5a12a7da torture_stutter_init +EXPORT_SYMBOL_GPL kernel/torture 0x679d9e50 torture_must_stop +EXPORT_SYMBOL_GPL kernel/torture 0x688e6a64 torture_cleanup_end +EXPORT_SYMBOL_GPL kernel/torture 0x6c3ff11a torture_init_begin +EXPORT_SYMBOL_GPL kernel/torture 0x8b0e1d2f torture_shuffle_init +EXPORT_SYMBOL_GPL kernel/torture 0x9e026750 _torture_stop_kthread +EXPORT_SYMBOL_GPL kernel/torture 0xbbfa9300 torture_shuffle_task_register +EXPORT_SYMBOL_GPL kernel/torture 0xc67a49d4 torture_cleanup_begin +EXPORT_SYMBOL_GPL kernel/torture 0xc94a93e3 torture_onoff_init +EXPORT_SYMBOL_GPL kernel/torture 0xdbc5277a torture_shutdown_init +EXPORT_SYMBOL_GPL kernel/torture 0xe2430307 stutter_wait +EXPORT_SYMBOL_GPL kernel/torture 0xe6989fd3 torture_init_end +EXPORT_SYMBOL_GPL kernel/torture 0xf6d34fb5 torture_kthread_stopping +EXPORT_SYMBOL_GPL kernel/torture 0xfe0c0dcd _torture_create_kthread +EXPORT_SYMBOL_GPL lib/842/842_compress 0xcf048a91 sw842_compress +EXPORT_SYMBOL_GPL lib/842/842_decompress 0xa4adedf1 sw842_decompress +EXPORT_SYMBOL_GPL lib/crc4 0x696b3a5a crc4 +EXPORT_SYMBOL_GPL lib/crc64 0x955ee96c crc64_be +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 0x39e8fa4b poly1305_update_generic +EXPORT_SYMBOL_GPL lib/crypto/libpoly1305 0x4370baea poly1305_init_generic +EXPORT_SYMBOL_GPL lib/crypto/libpoly1305 0x4a833012 poly1305_final_generic +EXPORT_SYMBOL_GPL lib/notifier-error-inject 0x4e70c4e4 notifier_err_inject_init +EXPORT_SYMBOL_GPL lib/notifier-error-inject 0x514a6250 notifier_err_inject_dir +EXPORT_SYMBOL_GPL lib/raid6/raid6_pq 0x021957e1 raid6_datap_recov +EXPORT_SYMBOL_GPL lib/raid6/raid6_pq 0x0f8a2742 raid6_2data_recov +EXPORT_SYMBOL_GPL lib/raid6/raid6_pq 0xd4cb6873 raid6_call +EXPORT_SYMBOL_GPL net/6lowpan/6lowpan 0x2c738736 lowpan_header_decompress +EXPORT_SYMBOL_GPL net/6lowpan/6lowpan 0x9867a9f6 lowpan_header_compress +EXPORT_SYMBOL_GPL net/802/garp 0x10bb36bb garp_uninit_applicant +EXPORT_SYMBOL_GPL net/802/garp 0x12288a81 garp_init_applicant +EXPORT_SYMBOL_GPL net/802/garp 0x3f1b2966 garp_unregister_application +EXPORT_SYMBOL_GPL net/802/garp 0x5ddc76b6 garp_request_leave +EXPORT_SYMBOL_GPL net/802/garp 0x89de74c3 garp_register_application +EXPORT_SYMBOL_GPL net/802/garp 0xbfbcab45 garp_request_join +EXPORT_SYMBOL_GPL net/802/mrp 0x61413f0b mrp_unregister_application +EXPORT_SYMBOL_GPL net/802/mrp 0x773fd73c mrp_init_applicant +EXPORT_SYMBOL_GPL net/802/mrp 0x9aad90bd mrp_register_application +EXPORT_SYMBOL_GPL net/802/mrp 0xc38d0ca1 mrp_uninit_applicant +EXPORT_SYMBOL_GPL net/802/mrp 0xf3de0f39 mrp_request_leave +EXPORT_SYMBOL_GPL net/802/mrp 0xfb73c3a3 mrp_request_join +EXPORT_SYMBOL_GPL net/802/stp 0x06be369d stp_proto_unregister +EXPORT_SYMBOL_GPL net/802/stp 0xba365793 stp_proto_register +EXPORT_SYMBOL_GPL net/9p/9pnet 0x40510df2 p9_client_xattrcreate +EXPORT_SYMBOL_GPL net/9p/9pnet 0xd121c0e9 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 0xa4b6772f 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/bluetooth/bluetooth 0x32b84c6b l2cap_chan_set_defaults +EXPORT_SYMBOL_GPL net/bluetooth/bluetooth 0x3d0b6a7c bt_debugfs +EXPORT_SYMBOL_GPL net/bluetooth/bluetooth 0x8224e077 l2cap_add_psm +EXPORT_SYMBOL_GPL net/bluetooth/bluetooth 0x8be454c9 l2cap_chan_del +EXPORT_SYMBOL_GPL net/bluetooth/bluetooth 0x937c1f67 l2cap_chan_list +EXPORT_SYMBOL_GPL net/bluetooth/bluetooth 0xb9ddbc53 l2cap_chan_connect +EXPORT_SYMBOL_GPL net/bluetooth/bluetooth 0xe0fe0a38 l2cap_chan_put +EXPORT_SYMBOL_GPL net/bluetooth/bluetooth 0xe9983338 l2cap_chan_send +EXPORT_SYMBOL_GPL net/bluetooth/bluetooth 0xfb09d7f2 l2cap_chan_create +EXPORT_SYMBOL_GPL net/bluetooth/hidp/hidp 0xdf7c95c5 hidp_hid_driver +EXPORT_SYMBOL_GPL net/bridge/bridge 0x148f888a br_port_flag_is_set +EXPORT_SYMBOL_GPL net/bridge/bridge 0x1ca1312c br_multicast_has_querier_adjacent +EXPORT_SYMBOL_GPL net/bridge/bridge 0x2d79f47a br_multicast_list_adjacent +EXPORT_SYMBOL_GPL net/bridge/bridge 0x54c92a9b br_handle_frame_finish +EXPORT_SYMBOL_GPL net/bridge/bridge 0x55e0eccd br_multicast_enabled +EXPORT_SYMBOL_GPL net/bridge/bridge 0x5cde1c5d br_dev_queue_push_xmit +EXPORT_SYMBOL_GPL net/bridge/bridge 0x63b6c4e4 br_multicast_router +EXPORT_SYMBOL_GPL net/bridge/bridge 0x6f829f74 br_vlan_enabled +EXPORT_SYMBOL_GPL net/bridge/bridge 0x7619305f br_fdb_clear_offload +EXPORT_SYMBOL_GPL net/bridge/bridge 0x8bf47ec2 br_vlan_get_pvid_rcu +EXPORT_SYMBOL_GPL net/bridge/bridge 0x8cf7621a br_vlan_get_pvid +EXPORT_SYMBOL_GPL net/bridge/bridge 0x92f3441c nf_br_ops +EXPORT_SYMBOL_GPL net/bridge/bridge 0x92f86cd9 br_vlan_get_info +EXPORT_SYMBOL_GPL net/bridge/bridge 0xb5a5e0bb br_vlan_get_proto +EXPORT_SYMBOL_GPL net/bridge/bridge 0xc5e37951 br_fdb_find_port +EXPORT_SYMBOL_GPL net/bridge/bridge 0xe0f99e32 br_forward_finish +EXPORT_SYMBOL_GPL net/bridge/bridge 0xf60ce72e br_multicast_has_querier_anywhere +EXPORT_SYMBOL_GPL net/bridge/bridge 0xffe46e75 br_forward +EXPORT_SYMBOL_GPL net/core/failover 0x55d7b8ce failover_register +EXPORT_SYMBOL_GPL net/core/failover 0x69eb657f failover_slave_unregister +EXPORT_SYMBOL_GPL net/core/failover 0x9cbd66b4 failover_unregister +EXPORT_SYMBOL_GPL net/dccp/dccp 0x0bbef4ad dccp_child_process +EXPORT_SYMBOL_GPL net/dccp/dccp 0x0cbce1fb dccp_send_sync +EXPORT_SYMBOL_GPL net/dccp/dccp 0x182ec2bf dccp_ackvec_parsed_add +EXPORT_SYMBOL_GPL net/dccp/dccp 0x194fd83a dccp_getsockopt +EXPORT_SYMBOL_GPL net/dccp/dccp 0x1bac1f11 dccp_shutdown +EXPORT_SYMBOL_GPL net/dccp/dccp 0x49ab1410 dccp_recvmsg +EXPORT_SYMBOL_GPL net/dccp/dccp 0x4cdd391d dccp_feat_list_purge +EXPORT_SYMBOL_GPL net/dccp/dccp 0x4dc2eb19 dccp_set_state +EXPORT_SYMBOL_GPL net/dccp/dccp 0x53357bee dccp_ioctl +EXPORT_SYMBOL_GPL net/dccp/dccp 0x59814a84 dccp_statistics +EXPORT_SYMBOL_GPL net/dccp/dccp 0x616166cc dccp_connect +EXPORT_SYMBOL_GPL net/dccp/dccp 0x624ca371 dccp_sync_mss +EXPORT_SYMBOL_GPL net/dccp/dccp 0x626560d6 dccp_close +EXPORT_SYMBOL_GPL net/dccp/dccp 0x643f0862 dccp_feat_signal_nn_change +EXPORT_SYMBOL_GPL net/dccp/dccp 0x65ae2f49 dccp_setsockopt +EXPORT_SYMBOL_GPL net/dccp/dccp 0x699938fc dccp_rcv_state_process +EXPORT_SYMBOL_GPL net/dccp/dccp 0x6d5a52f4 dccp_poll +EXPORT_SYMBOL_GPL net/dccp/dccp 0x78927920 dccp_done +EXPORT_SYMBOL_GPL net/dccp/dccp 0x80993155 dccp_timestamp +EXPORT_SYMBOL_GPL net/dccp/dccp 0x86be7924 dccp_packet_name +EXPORT_SYMBOL_GPL net/dccp/dccp 0x88c9214e dccp_sendmsg +EXPORT_SYMBOL_GPL net/dccp/dccp 0x8ddac9e2 dccp_init_sock +EXPORT_SYMBOL_GPL net/dccp/dccp 0x9598d24d dccp_ackvec_parsed_cleanup +EXPORT_SYMBOL_GPL net/dccp/dccp 0x967ebec9 dccp_destroy_sock +EXPORT_SYMBOL_GPL net/dccp/dccp 0xa43e19f0 dccp_death_row +EXPORT_SYMBOL_GPL net/dccp/dccp 0xaa573966 dccp_make_response +EXPORT_SYMBOL_GPL net/dccp/dccp 0xabe35283 dccp_disconnect +EXPORT_SYMBOL_GPL net/dccp/dccp 0xb1d1f746 dccp_insert_option +EXPORT_SYMBOL_GPL net/dccp/dccp 0xb6e12234 dccp_reqsk_send_ack +EXPORT_SYMBOL_GPL net/dccp/dccp 0xc6097b9b dccp_rcv_established +EXPORT_SYMBOL_GPL net/dccp/dccp 0xc6fd0c89 dccp_send_ack +EXPORT_SYMBOL_GPL net/dccp/dccp 0xc8737f4b dccp_parse_options +EXPORT_SYMBOL_GPL net/dccp/dccp 0xcd021e7d dccp_feat_nn_get +EXPORT_SYMBOL_GPL net/dccp/dccp 0xd9219ffa dccp_reqsk_init +EXPORT_SYMBOL_GPL net/dccp/dccp 0xd993040f dccp_ctl_make_reset +EXPORT_SYMBOL_GPL net/dccp/dccp 0xda9419f7 dccp_check_req +EXPORT_SYMBOL_GPL net/dccp/dccp 0xe2a21d80 dccp_create_openreq_child +EXPORT_SYMBOL_GPL net/dccp/dccp 0xf0784aa7 dccp_orphan_count +EXPORT_SYMBOL_GPL net/dccp/dccp 0xf4aa65e1 inet_dccp_listen +EXPORT_SYMBOL_GPL net/dccp/dccp 0xf55ef99b dccp_hashinfo +EXPORT_SYMBOL_GPL net/dccp/dccp_ipv4 0x1b0348b0 dccp_v4_send_check +EXPORT_SYMBOL_GPL net/dccp/dccp_ipv4 0x1b9d8e59 dccp_invalid_packet +EXPORT_SYMBOL_GPL net/dccp/dccp_ipv4 0x56cfed54 dccp_v4_connect +EXPORT_SYMBOL_GPL net/dccp/dccp_ipv4 0x913c6e5d dccp_v4_conn_request +EXPORT_SYMBOL_GPL net/dccp/dccp_ipv4 0xa4b6d420 dccp_v4_request_recv_sock +EXPORT_SYMBOL_GPL net/dccp/dccp_ipv4 0xccf6cac5 dccp_v4_do_rcv +EXPORT_SYMBOL_GPL net/dsa/dsa_core 0x15c1c2f5 dsa_switch_resume +EXPORT_SYMBOL_GPL net/dsa/dsa_core 0x163f31ae dsa_register_switch +EXPORT_SYMBOL_GPL net/dsa/dsa_core 0x2f7d209c dsa_port_phylink_mac_change +EXPORT_SYMBOL_GPL net/dsa/dsa_core 0x3b373c7b dsa_devlink_param_get +EXPORT_SYMBOL_GPL net/dsa/dsa_core 0x4151eede dsa_devlink_resource_occ_get_unregister +EXPORT_SYMBOL_GPL net/dsa/dsa_core 0x5539d3c9 dsa_devlink_params_unregister +EXPORT_SYMBOL_GPL net/dsa/dsa_core 0x56bf32bb dsa_port_get_phy_sset_count +EXPORT_SYMBOL_GPL net/dsa/dsa_core 0x572fbfd1 dsa_devlink_resource_occ_get_register +EXPORT_SYMBOL_GPL net/dsa/dsa_core 0x5c5bb8ee unregister_dsa_notifier +EXPORT_SYMBOL_GPL net/dsa/dsa_core 0x69757c73 dsa_devlink_resource_register +EXPORT_SYMBOL_GPL net/dsa/dsa_core 0x6c90de98 dsa_dev_to_net_device +EXPORT_SYMBOL_GPL net/dsa/dsa_core 0x713f4038 dsa_switch_find +EXPORT_SYMBOL_GPL net/dsa/dsa_core 0x75962f0a dsa_port_from_netdev +EXPORT_SYMBOL_GPL net/dsa/dsa_core 0x83fae1b4 dsa_switch_suspend +EXPORT_SYMBOL_GPL net/dsa/dsa_core 0xa15fa6df dsa_devlink_params_register +EXPORT_SYMBOL_GPL net/dsa/dsa_core 0xa6f75a34 dsa_devlink_resources_unregister +EXPORT_SYMBOL_GPL net/dsa/dsa_core 0xb53515ad dsa_port_get_phy_strings +EXPORT_SYMBOL_GPL net/dsa/dsa_core 0xb536f53a dsa_enqueue_skb +EXPORT_SYMBOL_GPL net/dsa/dsa_core 0xc2a2f81b dsa_devlink_param_set +EXPORT_SYMBOL_GPL net/dsa/dsa_core 0xcf0a7e39 dsa_unregister_switch +EXPORT_SYMBOL_GPL net/dsa/dsa_core 0xdabed27a call_dsa_notifiers +EXPORT_SYMBOL_GPL net/dsa/dsa_core 0xeca1ea82 dsa_tag_drivers_unregister +EXPORT_SYMBOL_GPL net/dsa/dsa_core 0xef2ffd9e dsa_port_get_ethtool_phy_stats +EXPORT_SYMBOL_GPL net/dsa/dsa_core 0xf457205c dsa_tag_drivers_register +EXPORT_SYMBOL_GPL net/dsa/dsa_core 0xf86039e0 register_dsa_notifier +EXPORT_SYMBOL_GPL net/dsa/tag_8021q 0x043a2575 dsa_8021q_xmit +EXPORT_SYMBOL_GPL net/dsa/tag_8021q 0x0d7250f5 dsa_8021q_rx_vid_subvlan +EXPORT_SYMBOL_GPL net/dsa/tag_8021q 0x2e28b5d9 dsa_8021q_crosschip_bridge_leave +EXPORT_SYMBOL_GPL net/dsa/tag_8021q 0x415e894e dsa_8021q_rx_subvlan +EXPORT_SYMBOL_GPL net/dsa/tag_8021q 0x417d1fed dsa_8021q_rx_switch_id +EXPORT_SYMBOL_GPL net/dsa/tag_8021q 0x6aa9fc20 dsa_8021q_tx_vid +EXPORT_SYMBOL_GPL net/dsa/tag_8021q 0x9b7a89b6 dsa_port_setup_8021q_tagging +EXPORT_SYMBOL_GPL net/dsa/tag_8021q 0x9e59271d dsa_8021q_rx_source_port +EXPORT_SYMBOL_GPL net/dsa/tag_8021q 0xde5ffc8e dsa_8021q_crosschip_bridge_join +EXPORT_SYMBOL_GPL net/dsa/tag_8021q 0xf13e1803 vid_is_dsa_8021q +EXPORT_SYMBOL_GPL net/dsa/tag_8021q 0xf6d87f98 dsa_8021q_rx_vid +EXPORT_SYMBOL_GPL net/ieee802154/ieee802154 0x16a4423b ieee802154_hdr_pull +EXPORT_SYMBOL_GPL net/ieee802154/ieee802154 0x6fd6638f ieee802154_hdr_push +EXPORT_SYMBOL_GPL net/ieee802154/ieee802154 0x74231d37 ieee802154_hdr_peek +EXPORT_SYMBOL_GPL net/ieee802154/ieee802154 0x87e2553b ieee802154_max_payload +EXPORT_SYMBOL_GPL net/ieee802154/ieee802154 0xa1c96a0a ieee802154_hdr_peek_addrs +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 0xad48c1e7 ife_decode +EXPORT_SYMBOL_GPL net/ife/ife 0xe7888e98 ife_tlv_meta_encode +EXPORT_SYMBOL_GPL net/ife/ife 0xfc1ebe11 ife_encode +EXPORT_SYMBOL_GPL net/ipv4/esp4 0x4163fe64 esp_input_done2 +EXPORT_SYMBOL_GPL net/ipv4/esp4 0xa7df356e esp_output_head +EXPORT_SYMBOL_GPL net/ipv4/esp4 0xd8b9b19e esp_output_tail +EXPORT_SYMBOL_GPL net/ipv4/gre 0xae09b8d9 gre_del_protocol +EXPORT_SYMBOL_GPL net/ipv4/gre 0xb433f41d gre_add_protocol +EXPORT_SYMBOL_GPL net/ipv4/inet_diag 0x3fe0f9df inet_diag_bc_sk +EXPORT_SYMBOL_GPL net/ipv4/inet_diag 0x52aa069b inet_sk_diag_fill +EXPORT_SYMBOL_GPL net/ipv4/inet_diag 0x56443aa7 inet_diag_dump_one_icsk +EXPORT_SYMBOL_GPL net/ipv4/inet_diag 0xc5eef8ac inet_diag_msg_attrs_fill +EXPORT_SYMBOL_GPL net/ipv4/inet_diag 0xd1b71d15 inet_diag_unregister +EXPORT_SYMBOL_GPL net/ipv4/inet_diag 0xdfd9fdc0 inet_diag_register +EXPORT_SYMBOL_GPL net/ipv4/inet_diag 0xe5b16d18 inet_diag_msg_common_fill +EXPORT_SYMBOL_GPL net/ipv4/inet_diag 0xfa5e908e inet_diag_dump_icsk +EXPORT_SYMBOL_GPL net/ipv4/inet_diag 0xfe3c3c01 inet_diag_find_one_icsk +EXPORT_SYMBOL_GPL net/ipv4/ip_gre 0xc68f9fd1 gretap_fb_dev_create +EXPORT_SYMBOL_GPL net/ipv4/ip_tunnel 0x32c33ce8 ip_tunnel_change_mtu +EXPORT_SYMBOL_GPL net/ipv4/ip_tunnel 0x4a815c1b ip_tunnel_lookup +EXPORT_SYMBOL_GPL net/ipv4/ip_tunnel 0x5b63a888 ip_tunnel_encap_setup +EXPORT_SYMBOL_GPL net/ipv4/ip_tunnel 0x636cab47 ip_tunnel_dellink +EXPORT_SYMBOL_GPL net/ipv4/ip_tunnel 0x6fab00bd __ip_tunnel_change_mtu +EXPORT_SYMBOL_GPL net/ipv4/ip_tunnel 0x77403a75 ip_tunnel_xmit +EXPORT_SYMBOL_GPL net/ipv4/ip_tunnel 0x817edc08 ip_md_tunnel_xmit +EXPORT_SYMBOL_GPL net/ipv4/ip_tunnel 0x97e994a9 ip_tunnel_ioctl +EXPORT_SYMBOL_GPL net/ipv4/ip_tunnel 0x9e704f90 ip_tunnel_setup +EXPORT_SYMBOL_GPL net/ipv4/ip_tunnel 0xa76aa402 ip_tunnel_newlink +EXPORT_SYMBOL_GPL net/ipv4/ip_tunnel 0xb18fc938 ip_tunnel_uninit +EXPORT_SYMBOL_GPL net/ipv4/ip_tunnel 0xe3ff2c44 ip_tunnel_changelink +EXPORT_SYMBOL_GPL net/ipv4/ip_tunnel 0xe9b28725 ip_tunnel_delete_nets +EXPORT_SYMBOL_GPL net/ipv4/ip_tunnel 0xebd60870 ip_tunnel_ctl +EXPORT_SYMBOL_GPL net/ipv4/ip_tunnel 0xf6dd6501 ip_tunnel_rcv +EXPORT_SYMBOL_GPL net/ipv4/ip_tunnel 0xfb416920 ip_tunnel_init_net +EXPORT_SYMBOL_GPL net/ipv4/ip_tunnel 0xff33db68 ip_tunnel_init +EXPORT_SYMBOL_GPL net/ipv4/netfilter/arp_tables 0x270ae131 arpt_alloc_initial_table +EXPORT_SYMBOL_GPL net/ipv4/netfilter/ip_tables 0x250f251b ipt_alloc_initial_table +EXPORT_SYMBOL_GPL net/ipv4/netfilter/nf_defrag_ipv4 0xc9912d6f nf_defrag_ipv4_enable +EXPORT_SYMBOL_GPL net/ipv4/netfilter/nf_dup_ipv4 0x3a754a7c nf_dup_ipv4 +EXPORT_SYMBOL_GPL net/ipv4/netfilter/nf_reject_ipv4 0x644d149f nf_reject_iphdr_put +EXPORT_SYMBOL_GPL net/ipv4/netfilter/nf_reject_ipv4 0xb086339b nf_send_unreach +EXPORT_SYMBOL_GPL net/ipv4/netfilter/nf_reject_ipv4 0xcaa1a395 nf_send_reset +EXPORT_SYMBOL_GPL net/ipv4/netfilter/nf_reject_ipv4 0xea227e01 nf_reject_ip_tcphdr_put +EXPORT_SYMBOL_GPL net/ipv4/netfilter/nf_reject_ipv4 0xf1690118 nf_reject_ip_tcphdr_get +EXPORT_SYMBOL_GPL net/ipv4/netfilter/nf_socket_ipv4 0x9d053563 nf_sk_lookup_slow_v4 +EXPORT_SYMBOL_GPL net/ipv4/netfilter/nf_tproxy_ipv4 0x50b6f50b nf_tproxy_laddr4 +EXPORT_SYMBOL_GPL net/ipv4/netfilter/nf_tproxy_ipv4 0xd1865df6 nf_tproxy_get_sock_v4 +EXPORT_SYMBOL_GPL net/ipv4/netfilter/nf_tproxy_ipv4 0xe33a8caa nf_tproxy_handle_time_wait4 +EXPORT_SYMBOL_GPL net/ipv4/netfilter/nft_fib_ipv4 0xc88d9d89 nft_fib4_eval_type +EXPORT_SYMBOL_GPL net/ipv4/netfilter/nft_fib_ipv4 0xcd6713ce nft_fib4_eval +EXPORT_SYMBOL_GPL net/ipv4/tcp_vegas 0x35e34eb1 tcp_vegas_pkts_acked +EXPORT_SYMBOL_GPL net/ipv4/tcp_vegas 0x45479583 tcp_vegas_cwnd_event +EXPORT_SYMBOL_GPL net/ipv4/tcp_vegas 0x765b7499 tcp_vegas_state +EXPORT_SYMBOL_GPL net/ipv4/tcp_vegas 0xaadc21f2 tcp_vegas_get_info +EXPORT_SYMBOL_GPL net/ipv4/tcp_vegas 0xc7070f49 tcp_vegas_init +EXPORT_SYMBOL_GPL net/ipv4/udp_tunnel 0x140658b0 udp_tunnel_sock_release +EXPORT_SYMBOL_GPL net/ipv4/udp_tunnel 0x1571802c udp_tunnel_notify_add_rx_port +EXPORT_SYMBOL_GPL net/ipv4/udp_tunnel 0x37d8e189 udp_tunnel_notify_del_rx_port +EXPORT_SYMBOL_GPL net/ipv4/udp_tunnel 0x73a61989 udp_tunnel_drop_rx_port +EXPORT_SYMBOL_GPL net/ipv4/udp_tunnel 0xc3fc4a18 setup_udp_tunnel_sock +EXPORT_SYMBOL_GPL net/ipv4/udp_tunnel 0xe0ae29d3 udp_tun_rx_dst +EXPORT_SYMBOL_GPL net/ipv4/udp_tunnel 0xfa71309e udp_tunnel_xmit_skb +EXPORT_SYMBOL_GPL net/ipv4/udp_tunnel 0xfda8dfaa udp_tunnel_push_rx_port +EXPORT_SYMBOL_GPL net/ipv6/esp6 0x5f6fdae9 esp6_output_head +EXPORT_SYMBOL_GPL net/ipv6/esp6 0x705fccb2 esp6_output_tail +EXPORT_SYMBOL_GPL net/ipv6/esp6 0xc283c678 esp6_input_done2 +EXPORT_SYMBOL_GPL net/ipv6/ip6_tunnel 0xb14d180d ip6_tnl_encap_setup +EXPORT_SYMBOL_GPL net/ipv6/ip6_tunnel 0xc923aeb0 ip6_tnl_xmit_ctl +EXPORT_SYMBOL_GPL net/ipv6/ip6_tunnel 0xf9aa2719 ip6_tnl_rcv_ctl +EXPORT_SYMBOL_GPL net/ipv6/ip6_udp_tunnel 0xd727d438 udp_sock_create6 +EXPORT_SYMBOL_GPL net/ipv6/ip6_udp_tunnel 0xf6073934 udp_tunnel6_xmit_skb +EXPORT_SYMBOL_GPL net/ipv6/netfilter/ip6_tables 0x8bddae60 ip6t_alloc_initial_table +EXPORT_SYMBOL_GPL net/ipv6/netfilter/nf_defrag_ipv6 0x491839d0 nf_defrag_ipv6_enable +EXPORT_SYMBOL_GPL net/ipv6/netfilter/nf_defrag_ipv6 0xbfee2b82 nf_ct_frag6_gather +EXPORT_SYMBOL_GPL net/ipv6/netfilter/nf_dup_ipv6 0x9301a61d nf_dup_ipv6 +EXPORT_SYMBOL_GPL net/ipv6/netfilter/nf_reject_ipv6 0x03707d52 nf_reject_ip6_tcphdr_put +EXPORT_SYMBOL_GPL net/ipv6/netfilter/nf_reject_ipv6 0x5c1e289b nf_reject_ip6hdr_put +EXPORT_SYMBOL_GPL net/ipv6/netfilter/nf_reject_ipv6 0xc9f6ff8b nf_send_reset6 +EXPORT_SYMBOL_GPL net/ipv6/netfilter/nf_reject_ipv6 0xed10a3c7 nf_reject_ip6_tcphdr_get +EXPORT_SYMBOL_GPL net/ipv6/netfilter/nf_reject_ipv6 0xf26c6bfe nf_send_unreach6 +EXPORT_SYMBOL_GPL net/ipv6/netfilter/nf_socket_ipv6 0x1a62940a nf_sk_lookup_slow_v6 +EXPORT_SYMBOL_GPL net/ipv6/netfilter/nf_tproxy_ipv6 0x710eda37 nf_tproxy_handle_time_wait6 +EXPORT_SYMBOL_GPL net/ipv6/netfilter/nf_tproxy_ipv6 0x7c22cf20 nf_tproxy_laddr6 +EXPORT_SYMBOL_GPL net/ipv6/netfilter/nf_tproxy_ipv6 0x94ed7583 nf_tproxy_get_sock_v6 +EXPORT_SYMBOL_GPL net/ipv6/netfilter/nft_fib_ipv6 0xd77f9809 nft_fib6_eval +EXPORT_SYMBOL_GPL net/ipv6/netfilter/nft_fib_ipv6 0xde996049 nft_fib6_eval_type +EXPORT_SYMBOL_GPL net/l2tp/l2tp_core 0x0c5e578e l2tp_session_delete +EXPORT_SYMBOL_GPL net/l2tp/l2tp_core 0x25e35d84 l2tp_tunnel_delete +EXPORT_SYMBOL_GPL net/l2tp/l2tp_core 0x33cfc5e9 l2tp_tunnel_get_session +EXPORT_SYMBOL_GPL net/l2tp/l2tp_core 0x4fbd8f66 l2tp_session_set_header_len +EXPORT_SYMBOL_GPL net/l2tp/l2tp_core 0x5b5b15c9 l2tp_session_create +EXPORT_SYMBOL_GPL net/l2tp/l2tp_core 0x5b89aaff l2tp_session_register +EXPORT_SYMBOL_GPL net/l2tp/l2tp_core 0x87d1af7d l2tp_tunnel_get_nth +EXPORT_SYMBOL_GPL net/l2tp/l2tp_core 0xa1a5fb4a l2tp_session_free +EXPORT_SYMBOL_GPL net/l2tp/l2tp_core 0xac2fff0c l2tp_tunnel_register +EXPORT_SYMBOL_GPL net/l2tp/l2tp_core 0xaf8ca9b5 l2tp_tunnel_create +EXPORT_SYMBOL_GPL net/l2tp/l2tp_core 0xb63b3199 __l2tp_session_unhash +EXPORT_SYMBOL_GPL net/l2tp/l2tp_core 0xc5ef4b1a l2tp_tunnel_get +EXPORT_SYMBOL_GPL net/l2tp/l2tp_core 0xcafb4a11 l2tp_session_get +EXPORT_SYMBOL_GPL net/l2tp/l2tp_core 0xd3bd6701 l2tp_session_get_by_ifname +EXPORT_SYMBOL_GPL net/l2tp/l2tp_core 0xde7d1f4b l2tp_xmit_skb +EXPORT_SYMBOL_GPL net/l2tp/l2tp_core 0xe83f9179 l2tp_udp_encap_recv +EXPORT_SYMBOL_GPL net/l2tp/l2tp_core 0xfdcf931f l2tp_session_get_nth +EXPORT_SYMBOL_GPL net/l2tp/l2tp_netlink 0x15b40bd6 l2tp_nl_register_ops +EXPORT_SYMBOL_GPL net/l2tp/l2tp_netlink 0x337f2432 l2tp_nl_unregister_ops +EXPORT_SYMBOL_GPL net/mac80211/mac80211 0x05ebe71e ieee80211_calc_rx_airtime +EXPORT_SYMBOL_GPL net/mac80211/mac80211 0x08797a6b ieee80211_iter_chan_contexts_atomic +EXPORT_SYMBOL_GPL net/mac80211/mac80211 0x0cbec9e0 ieee80211_gtk_rekey_notify +EXPORT_SYMBOL_GPL net/mac80211/mac80211 0x10b0cb74 ieee80211_gtk_rekey_add +EXPORT_SYMBOL_GPL net/mac80211/mac80211 0x2c1777a5 ieee80211_calc_tx_airtime +EXPORT_SYMBOL_GPL net/mac80211/mac80211 0x2f8c69ec ieee80211_find_sta_by_ifaddr +EXPORT_SYMBOL_GPL net/mac80211/mac80211 0x3c625425 ieee80211_ready_on_channel +EXPORT_SYMBOL_GPL net/mac80211/mac80211 0x434de27b ieee80211_remain_on_channel_expired +EXPORT_SYMBOL_GPL net/mac80211/mac80211 0x5250cf98 ieee80211_tkip_add_iv +EXPORT_SYMBOL_GPL net/mac80211/mac80211 0x653c9ece ieee80211_vif_to_wdev +EXPORT_SYMBOL_GPL net/mac80211/mac80211 0x6d565503 ieee80211_update_mu_groups +EXPORT_SYMBOL_GPL net/mac80211/mac80211 0x6f8a2dc9 ieee80211_ave_rssi +EXPORT_SYMBOL_GPL net/mac80211/mac80211 0x76ede13d ieee80211_iterate_stations_atomic +EXPORT_SYMBOL_GPL net/mac80211/mac80211 0x7a4b382f ieee80211_iterate_active_interfaces_rtnl +EXPORT_SYMBOL_GPL net/mac80211/mac80211 0x88abeaea wdev_to_ieee80211_vif +EXPORT_SYMBOL_GPL net/mac80211/mac80211 0x9427cd0c ieee80211_request_smps +EXPORT_SYMBOL_GPL net/mac80211/mac80211 0xa1247034 ieee80211_remove_key +EXPORT_SYMBOL_GPL net/mac80211/mac80211 0xc1ea2629 ieee80211_iterate_active_interfaces_atomic +EXPORT_SYMBOL_GPL net/mac80211/mac80211 0xd45e6240 ieee80211_iterate_interfaces +EXPORT_SYMBOL_GPL net/mac80211/mac80211 0xd8e09da4 ieee80211_set_key_rx_seq +EXPORT_SYMBOL_GPL net/mac80211/mac80211 0xde49a65b ieee80211_resume_disconnect +EXPORT_SYMBOL_GPL net/mpls/mpls_router 0x04c0906d mpls_pkt_too_big +EXPORT_SYMBOL_GPL net/mpls/mpls_router 0x19f9b26e mpls_output_possible +EXPORT_SYMBOL_GPL net/mpls/mpls_router 0x29ab9b8c mpls_dev_mtu +EXPORT_SYMBOL_GPL net/mpls/mpls_router 0x662cc51c nla_put_labels +EXPORT_SYMBOL_GPL net/mpls/mpls_router 0xe413b0a4 nla_get_labels +EXPORT_SYMBOL_GPL net/mpls/mpls_router 0xe852c3e5 mpls_stats_inc_outucastpkts +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0x22d966c6 ip_set_range_to_cidr +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0x2d1ae9a1 ip_set_put_extensions +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0x397f6231 ip_set_free +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0x4115611b ip_set_type_register +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0x45d0f4c4 ip_set_name_byindex +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0x48221467 ip_set_match_extensions +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0x53e22da2 ip_set_type_unregister +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0x6344eaf6 ip_set_alloc +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0x63556705 ip_set_put_flags +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0x6c6c18f5 ip_set_elem_len +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0x7676e318 ip_set_extensions +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0x7924b6de ip_set_hostmask_map +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0x7fbfdad3 ip_set_get_extensions +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0x81fff2d1 ip_set_netmask_map +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0x83486926 ip_set_get_ip6_port +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0x9b784978 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 0xb80177cb ip_set_init_comment +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0xbbd22d8e ip_set_get_ip4_port +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0xbc8d0b08 ip_set_nfnl_get_byindex +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0xbe6a955c ip_set_get_byname +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0xc00166f5 ip_set_nfnl_put +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0xd2cdcae2 ip_set_put_byindex +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0xe0fe9e2f ip_set_del +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0xea644565 ip_set_add +EXPORT_SYMBOL_GPL net/netfilter/ipvs/ip_vs 0x11a721d8 register_ip_vs_pe +EXPORT_SYMBOL_GPL net/netfilter/ipvs/ip_vs 0x187bb487 ip_vs_conn_in_get_proto +EXPORT_SYMBOL_GPL net/netfilter/ipvs/ip_vs 0x7727869a unregister_ip_vs_pe +EXPORT_SYMBOL_GPL net/netfilter/ipvs/ip_vs 0xb9506aeb ip_vs_conn_out_get_proto +EXPORT_SYMBOL_GPL net/netfilter/nf_conncount 0x1159f176 nf_conncount_init +EXPORT_SYMBOL_GPL net/netfilter/nf_conncount 0x268a4802 nf_conncount_cache_free +EXPORT_SYMBOL_GPL net/netfilter/nf_conncount 0x2d28c80f nf_conncount_destroy +EXPORT_SYMBOL_GPL net/netfilter/nf_conncount 0x57907b12 nf_conncount_gc_list +EXPORT_SYMBOL_GPL net/netfilter/nf_conncount 0x64b5a367 nf_conncount_count +EXPORT_SYMBOL_GPL net/netfilter/nf_conncount 0xbe03a217 nf_conncount_list_init +EXPORT_SYMBOL_GPL net/netfilter/nf_conncount 0xda0078da nf_conncount_add +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x00aa7b02 nf_nat_helper_register +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x03200174 nf_ct_untimeout +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x04d749ac nf_ct_expect_unregister_notifier +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x0bc00f80 nf_nat_helper_try_module_get +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x0c2fafad nf_ct_expect_register_notifier +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x0de79b04 nf_conntrack_helpers_unregister +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x0f8d5467 nf_ct_iterate_cleanup_net +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x187c3363 nf_connlabels_get +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x19bf7e3d nf_ct_get_id +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x19f4bb0d nf_ct_helper_expectfn_register +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x1c2b85fd nf_ct_timeout_put_hook +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x289c3714 nf_ct_alloc_hashtable +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x289f0744 nf_ct_helper_expectfn_find_by_symbol +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x28eff409 nf_conntrack_hash +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x30251f28 nf_ct_unconfirmed_destroy +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x324ffdc2 nf_nat_helper_put +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x368cff32 nf_ct_gre_keymap_add +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x38045a97 nf_ct_l4proto_find +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x38baf4e5 nf_conntrack_tuple_taken +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x396290bb nf_ct_tcp_seqadj_set +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x398667b4 nf_confirm +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x40de3b75 nf_ct_remove_expect +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x43ab5544 nf_ct_destroy_timeout +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x456db603 nf_ct_seqadj_init +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x473e385d nf_conntrack_lock +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x48dcf152 nf_conntrack_helpers_register +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x4b1e5cd5 nf_ct_bridge_register +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x4d834234 nf_ct_expect_iterate_net +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x4dfe7f40 nf_ct_seq_offset +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x4ea258d2 nf_conntrack_expect_lock +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x509b3983 __nf_ct_refresh_acct +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x559afe3c nf_ct_netns_put +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x5b178982 nf_ct_bridge_unregister +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x5e2d5fa3 nf_conntrack_eventmask_report +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x5fe90b3b __nf_conntrack_confirm +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x633cb87b nf_ct_seq_adjust +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x646669c8 nf_conntrack_helper_try_module_get +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x693c3961 nf_ct_helper_hash +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x6c6cb433 nf_ct_helper_expectfn_find_by_name +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x6d476614 nf_conntrack_helper_unregister +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x730fc529 __nf_ct_try_assign_helper +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x77370b4c nf_conntrack_in +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x79e75792 nf_conntrack_alter_reply +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x7da80b2e nf_ct_port_nla_policy +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x8040e0b2 nf_ct_helper_ext_add +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x828a96bc nf_ct_delete +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x85a41f6e nf_ct_tmpl_alloc +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x865d7a19 nf_ct_helper_expectfn_unregister +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x8beec4b1 nf_conntrack_unregister_notifier +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x8c6e11f4 nf_conntrack_locks +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x8d0ab1db nf_ct_extend_register +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x8d0fe62c nf_ct_helper_log +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x8e26207e nf_ct_expect_related_report +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x8ffe7e89 nf_conntrack_htable_size +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x9413af87 nf_ct_netns_get +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x946cfd62 nf_ct_kill_acct +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x96bd9bb2 __nf_conntrack_helper_find +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x981073b2 nf_l4proto_log_invalid +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x9ab34121 nf_ct_seqadj_set +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x9ae268e3 nf_ct_port_tuple_to_nlattr +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xa04191eb nf_nat_helper_unregister +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xa056c0de nf_connlabels_put +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xa616c16f nf_conntrack_hash_check_insert +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xa7ec8540 nf_conntrack_alloc +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xaaa73c36 nf_ct_expect_put +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xaca32e71 nf_ct_remove_expectations +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xaf72c158 nf_ct_timeout_find_get_hook +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xafbd6cf5 nf_ct_port_nlattr_to_tuple +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xb21dc517 nf_ct_l4proto_log_invalid +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xb44b784f nf_ct_expect_init +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xb8989d40 nf_connlabels_replace +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xb89d22b3 nf_conntrack_register_notifier +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xbf15022f nf_ct_iterate_destroy +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xc18ac88d nf_ct_expect_hsize +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xc40f284c nf_ct_helper_hsize +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xc74581af nf_ct_gre_keymap_destroy +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xc9629da4 nf_conntrack_free +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xcbd6ec41 nf_ct_unlink_expect_report +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xcd6aa3a5 nf_conntrack_find_get +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xcd8d0840 nf_ct_acct_add +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xd3546631 nf_ct_deliver_cached_events +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xd42401c1 nf_ct_extend_unregister +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xd505c3e0 nf_ct_port_nlattr_tuple_size +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xd5b423aa nf_ct_unexpect_related +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xda105178 nf_ct_expect_iterate_destroy +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xddeb5628 nf_conntrack_helper_put +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xe3235788 nf_ct_expect_alloc +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xe56ae0f4 nf_ct_tmpl_free +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xe66c51c3 nf_ct_get_tuplepr +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xeaf97ec6 nf_ct_set_timeout +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xec70e433 nf_conntrack_helper_register +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xec8beba6 nf_ct_expect_hash +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xecefd497 __nf_ct_expect_find +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xef53028d nf_ct_expect_find_get +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xf38bcdf3 nf_conntrack_max +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xfd795377 nf_ct_helper_init +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xfe731af8 nf_ct_invert_tuple +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_amanda 0x0c75e463 nf_nat_amanda_hook +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_broadcast 0x23a59c36 nf_conntrack_broadcast_help +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_ftp 0x93d14e3a nf_nat_ftp_hook +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_h323 0x0061788f get_h225_addr +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_h323 0x0b49056b set_h245_addr_hook +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_h323 0x55e2e80b set_sig_addr_hook +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_h323 0x8a46dc1a nat_t120_hook +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_h323 0x8c85940f set_ras_addr_hook +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_h323 0xc0501ec2 nat_q931_hook +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_h323 0xc3a0fd96 nat_h245_hook +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_h323 0xd2a82256 set_h225_addr_hook +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_h323 0xd829c464 nat_rtp_rtcp_hook +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_h323 0xdd974912 nat_callforwarding_hook +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_irc 0x907b8fc5 nf_nat_irc_hook +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_pptp 0x10a29288 nf_nat_pptp_hook_inbound +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_pptp 0x64dca2aa nf_nat_pptp_hook_expectfn +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_pptp 0xa381c1c5 nf_nat_pptp_hook_exp_gre +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_pptp 0xe5d55180 nf_nat_pptp_hook_outbound +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_sip 0x478c5ed9 nf_nat_sip_hooks +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_sip 0x50363775 ct_sip_parse_address_param +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_sip 0x82448a67 ct_sip_parse_request +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_sip 0xa92d611a ct_sip_parse_header_uri +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_sip 0xb8929e21 ct_sip_parse_numerical_param +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_sip 0xc8f5dc4f ct_sip_get_header +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_sip 0xe0df59d4 ct_sip_get_sdp_header +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_snmp 0x6cd78879 nf_nat_snmp_hook +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_tftp 0xc0aeba09 nf_nat_tftp_hook +EXPORT_SYMBOL_GPL net/netfilter/nf_dup_netdev 0x569c4bcc nf_fwd_netdev_egress +EXPORT_SYMBOL_GPL net/netfilter/nf_dup_netdev 0x64775a1b nft_fwd_dup_netdev_offload +EXPORT_SYMBOL_GPL net/netfilter/nf_dup_netdev 0x8f3dc4ca nf_dup_netdev_egress +EXPORT_SYMBOL_GPL net/netfilter/nf_flow_table 0x0f1ab428 nf_flow_offload_ipv6_hook +EXPORT_SYMBOL_GPL net/netfilter/nf_flow_table 0x122531a0 flow_offload_alloc +EXPORT_SYMBOL_GPL net/netfilter/nf_flow_table 0x21d0ea0f nf_flow_table_init +EXPORT_SYMBOL_GPL net/netfilter/nf_flow_table 0x23bd3ae8 flow_offload_add +EXPORT_SYMBOL_GPL net/netfilter/nf_flow_table 0x4ddbc618 flow_offload_free +EXPORT_SYMBOL_GPL net/netfilter/nf_flow_table 0x524e44f9 nf_flow_table_free +EXPORT_SYMBOL_GPL net/netfilter/nf_flow_table 0x669795f3 nf_flow_offload_ip_hook +EXPORT_SYMBOL_GPL net/netfilter/nf_flow_table 0x672de878 nf_flow_table_offload_setup +EXPORT_SYMBOL_GPL net/netfilter/nf_flow_table 0x874497e1 nf_flow_table_cleanup +EXPORT_SYMBOL_GPL net/netfilter/nf_flow_table 0x8b409f8b flow_offload_refresh +EXPORT_SYMBOL_GPL net/netfilter/nf_flow_table 0x9b7405a7 flow_offload_lookup +EXPORT_SYMBOL_GPL net/netfilter/nf_flow_table 0xa34889cf nf_flow_rule_route_ipv6 +EXPORT_SYMBOL_GPL net/netfilter/nf_flow_table 0xab7163e2 nf_flow_rule_route_ipv4 +EXPORT_SYMBOL_GPL net/netfilter/nf_flow_table 0xb2be35f0 flow_offload_teardown +EXPORT_SYMBOL_GPL net/netfilter/nf_flow_table 0xd0428d3b nf_flow_dnat_port +EXPORT_SYMBOL_GPL net/netfilter/nf_flow_table 0xdd7a229a nf_flow_snat_port +EXPORT_SYMBOL_GPL net/netfilter/nf_flow_table 0xf85c7661 flow_offload_route_init +EXPORT_SYMBOL_GPL net/netfilter/nf_log_common 0x9d91a877 nf_log_l2packet +EXPORT_SYMBOL_GPL net/netfilter/nf_log_common 0x9f6ac0b2 nf_log_dump_udp_header +EXPORT_SYMBOL_GPL net/netfilter/nf_log_common 0xb8cec9ff nf_log_dump_packet_common +EXPORT_SYMBOL_GPL net/netfilter/nf_log_common 0xbe433b96 nf_log_dump_vlan +EXPORT_SYMBOL_GPL net/netfilter/nf_log_common 0xce4f3a2b nf_log_dump_sk_uid_gid +EXPORT_SYMBOL_GPL net/netfilter/nf_log_common 0xf8392706 nf_log_dump_tcp_header +EXPORT_SYMBOL_GPL net/netfilter/nf_nat 0x247c1cbb nf_nat_ipv4_register_fn +EXPORT_SYMBOL_GPL net/netfilter/nf_nat 0x3bc17c49 nf_nat_masquerade_inet_register_notifiers +EXPORT_SYMBOL_GPL net/netfilter/nf_nat 0x3cbc2554 nf_nat_alloc_null_binding +EXPORT_SYMBOL_GPL net/netfilter/nf_nat 0x63bfb6c1 nf_nat_packet +EXPORT_SYMBOL_GPL net/netfilter/nf_nat 0x6890e742 nf_nat_icmp_reply_translation +EXPORT_SYMBOL_GPL net/netfilter/nf_nat 0x71e38e69 nf_nat_ipv4_unregister_fn +EXPORT_SYMBOL_GPL net/netfilter/nf_nat 0x755117f6 nf_nat_redirect_ipv4 +EXPORT_SYMBOL_GPL net/netfilter/nf_nat 0x7ff301b4 nf_nat_inet_register_fn +EXPORT_SYMBOL_GPL net/netfilter/nf_nat 0x809bba1b nf_nat_icmpv6_reply_translation +EXPORT_SYMBOL_GPL net/netfilter/nf_nat 0x8767b382 nf_nat_ipv6_unregister_fn +EXPORT_SYMBOL_GPL net/netfilter/nf_nat 0x957da5f0 nf_nat_inet_unregister_fn +EXPORT_SYMBOL_GPL net/netfilter/nf_nat 0xa3a259fc nf_nat_redirect_ipv6 +EXPORT_SYMBOL_GPL net/netfilter/nf_nat 0xb07716d1 nf_ct_nat_ext_add +EXPORT_SYMBOL_GPL net/netfilter/nf_nat 0xc4ee2ea8 nf_nat_inet_fn +EXPORT_SYMBOL_GPL net/netfilter/nf_nat 0xcf3ee9a9 nf_nat_masquerade_ipv6 +EXPORT_SYMBOL_GPL net/netfilter/nf_nat 0xd9c25654 nf_nat_masquerade_inet_unregister_notifiers +EXPORT_SYMBOL_GPL net/netfilter/nf_nat 0xe7591ede nf_nat_ipv6_register_fn +EXPORT_SYMBOL_GPL net/netfilter/nf_nat 0xfc67606a nf_nat_masquerade_ipv4 +EXPORT_SYMBOL_GPL net/netfilter/nf_synproxy_core 0x066bd847 nf_synproxy_ipv6_fini +EXPORT_SYMBOL_GPL net/netfilter/nf_synproxy_core 0x19731ac3 nf_synproxy_ipv4_fini +EXPORT_SYMBOL_GPL net/netfilter/nf_synproxy_core 0x1f099794 synproxy_init_timestamp_cookie +EXPORT_SYMBOL_GPL net/netfilter/nf_synproxy_core 0x4bcbc282 nf_synproxy_ipv6_init +EXPORT_SYMBOL_GPL net/netfilter/nf_synproxy_core 0x4fe6a004 synproxy_recv_client_ack_ipv6 +EXPORT_SYMBOL_GPL net/netfilter/nf_synproxy_core 0x54d30006 nf_synproxy_ipv4_init +EXPORT_SYMBOL_GPL net/netfilter/nf_synproxy_core 0x5619d179 synproxy_send_client_synack_ipv6 +EXPORT_SYMBOL_GPL net/netfilter/nf_synproxy_core 0x6babfc89 ipv6_synproxy_hook +EXPORT_SYMBOL_GPL net/netfilter/nf_synproxy_core 0xac742c3c ipv4_synproxy_hook +EXPORT_SYMBOL_GPL net/netfilter/nf_synproxy_core 0xc40d6ce6 synproxy_recv_client_ack +EXPORT_SYMBOL_GPL net/netfilter/nf_synproxy_core 0xc832f538 synproxy_parse_options +EXPORT_SYMBOL_GPL net/netfilter/nf_synproxy_core 0xca9fc082 synproxy_net_id +EXPORT_SYMBOL_GPL net/netfilter/nf_synproxy_core 0xe91f3458 synproxy_send_client_synack +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0x06641fd4 nft_unregister_chain_type +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0x1b244432 nft_set_elem_destroy +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0x1c1a1531 nft_chain_validate_hooks +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0x1e6b75a3 nft_parse_register +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0x2c2ee0f8 nft_chain_validate_dependency +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0x3251d762 nf_tables_trans_destroy_flush_work +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0x3430e297 nf_tables_deactivate_flowtable +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0x34887161 nft_meta_set_init +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0x3e3a55bb nft_unregister_expr +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0x44c89904 nft_meta_set_validate +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0x4cf44ed0 nft_validate_register_store +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0x502eed3d nft_meta_policy +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0x514d4eff nft_dump_register +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0x593eb564 nft_register_expr +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0x5bc8573f nf_tables_deactivate_set +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0x77c15342 nft_data_release +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0x77cab9e5 nft_meta_get_eval +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0x85430a76 nft_validate_register_load +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0x9aa6232a nft_data_dump +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0x9b3544d6 nft_obj_notify +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0x9d23ad47 nf_tables_bind_set +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0x9d5966dd nft_obj_lookup +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0x9f8e1b08 nft_register_flowtable_type +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0xa9ffc821 nft_trace_enabled +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0xb2c528cd nft_unregister_obj +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0xc1226154 nft_register_chain_type +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0xc859186e nft_meta_get_init +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0xcfc47d82 nft_unregister_flowtable_type +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0xd37bc144 nft_set_lookup_global +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0xd42a1be5 nft_register_obj +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0xda5fb300 nft_flowtable_lookup +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0xdb07dcec nft_meta_set_destroy +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0xdd72940f nft_chain_validate +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0xde57b5f5 nft_parse_u32_check +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0xe26aea41 nft_meta_set_eval +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0xe76f1cb7 nft_do_chain +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0xecaf6b28 nft_meta_set_dump +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0xf7a791a3 __nft_release_basechain +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0xf81696c7 nft_data_init +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0xf8c35c97 nf_tables_destroy_set +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0xfcb2c71e nft_meta_get_dump +EXPORT_SYMBOL_GPL net/netfilter/nfnetlink 0x07ebac29 nfnetlink_send +EXPORT_SYMBOL_GPL net/netfilter/nfnetlink 0x0da81fa5 nfnetlink_has_listeners +EXPORT_SYMBOL_GPL net/netfilter/nfnetlink 0x5ce3b588 nfnl_lock +EXPORT_SYMBOL_GPL net/netfilter/nfnetlink 0xb0c2ec8d nfnetlink_subsys_register +EXPORT_SYMBOL_GPL net/netfilter/nfnetlink 0xb64ec335 nfnetlink_set_err +EXPORT_SYMBOL_GPL net/netfilter/nfnetlink 0xc1482f1f nfnetlink_unicast +EXPORT_SYMBOL_GPL net/netfilter/nfnetlink 0xdb065657 nfnl_unlock +EXPORT_SYMBOL_GPL net/netfilter/nfnetlink 0xe15745a0 nfnetlink_subsys_unregister +EXPORT_SYMBOL_GPL net/netfilter/nfnetlink_acct 0x3a10d2e1 nfnl_acct_overquota +EXPORT_SYMBOL_GPL net/netfilter/nfnetlink_acct 0x461f8805 nfnl_acct_update +EXPORT_SYMBOL_GPL net/netfilter/nfnetlink_acct 0x5974872a nfnl_acct_find_get +EXPORT_SYMBOL_GPL net/netfilter/nfnetlink_acct 0xbecf5d14 nfnl_acct_put +EXPORT_SYMBOL_GPL net/netfilter/nfnetlink_osf 0x1b5844be nf_osf_match +EXPORT_SYMBOL_GPL net/netfilter/nfnetlink_osf 0x35eff5e0 nf_osf_fingers +EXPORT_SYMBOL_GPL net/netfilter/nfnetlink_osf 0xeae0c592 nf_osf_find +EXPORT_SYMBOL_GPL net/netfilter/nft_fib 0x63e409b2 nft_fib_store_result +EXPORT_SYMBOL_GPL net/netfilter/nft_fib 0x69ad5b6d nft_fib_validate +EXPORT_SYMBOL_GPL net/netfilter/nft_fib 0xa3d2765d nft_fib_dump +EXPORT_SYMBOL_GPL net/netfilter/nft_fib 0xadb9e1e5 nft_fib_init +EXPORT_SYMBOL_GPL net/netfilter/nft_reject 0x105b07e2 nft_reject_policy +EXPORT_SYMBOL_GPL net/netfilter/nft_reject 0x1de558c1 nft_reject_icmpv6_code +EXPORT_SYMBOL_GPL net/netfilter/nft_reject 0x402c2bd7 nft_reject_dump +EXPORT_SYMBOL_GPL net/netfilter/nft_reject 0x47d1f11f nft_reject_validate +EXPORT_SYMBOL_GPL net/netfilter/nft_reject 0x86b39e1b nft_reject_init +EXPORT_SYMBOL_GPL net/netfilter/nft_reject 0xe2c84666 nft_reject_icmp_code +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0x10cc5cb2 xt_proto_init +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0x168e9cd9 xt_replace_table +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0x24c8e482 xt_copy_counters_from_user +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0x359624ab xt_match_to_user +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0x36f36bc9 xt_unregister_table +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0x3f1ef70a xt_tee_enabled +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0x50d971e4 xt_check_match +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0x5920093d xt_register_table +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0x5c2af3e8 xt_target_to_user +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0x63670fc9 xt_request_find_target +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0x6583a3d1 xt_table_unlock +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0x70c5a559 xt_find_table_lock +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 0x8112d1d1 xt_check_target +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0x868aaa55 xt_proto_fini +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0x8a2fb195 xt_request_find_table_lock +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0x9c995c69 xt_percpu_counter_alloc +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0xb473ce7d xt_request_find_match +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0xbfacb837 xt_percpu_counter_free +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0xcaab645a xt_hook_ops_alloc +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0xddf68fc6 xt_find_revision +EXPORT_SYMBOL_GPL net/netfilter/xt_RATEEST 0x5f795976 xt_rateest_put +EXPORT_SYMBOL_GPL net/netfilter/xt_RATEEST 0x8640d90f xt_rateest_lookup +EXPORT_SYMBOL_GPL net/nfc/nci/nci_spi 0x3953fc5c nci_spi_send +EXPORT_SYMBOL_GPL net/nfc/nci/nci_spi 0x78d0e1b3 nci_spi_allocate_spi +EXPORT_SYMBOL_GPL net/nfc/nci/nci_spi 0x9125defc nci_spi_read +EXPORT_SYMBOL_GPL net/nfc/nci/nci_uart 0x103a45ce nci_uart_unregister +EXPORT_SYMBOL_GPL net/nfc/nci/nci_uart 0x9cbd119e nci_uart_set_config +EXPORT_SYMBOL_GPL net/nfc/nci/nci_uart 0xe37e37f7 nci_uart_register +EXPORT_SYMBOL_GPL net/nsh/nsh 0x5a8c64b1 nsh_pop +EXPORT_SYMBOL_GPL net/nsh/nsh 0xfebdc51b nsh_push +EXPORT_SYMBOL_GPL net/openvswitch/openvswitch 0x087f6fd4 ovs_netdev_link +EXPORT_SYMBOL_GPL net/openvswitch/openvswitch 0x37b3ff8c ovs_vport_ops_unregister +EXPORT_SYMBOL_GPL net/openvswitch/openvswitch 0xc8b2b21a __ovs_vport_ops_register +EXPORT_SYMBOL_GPL net/openvswitch/openvswitch 0xcee60906 ovs_netdev_tunnel_destroy +EXPORT_SYMBOL_GPL net/openvswitch/openvswitch 0xedbc50cd ovs_vport_free +EXPORT_SYMBOL_GPL net/openvswitch/openvswitch 0xf3a580f2 ovs_vport_alloc +EXPORT_SYMBOL_GPL net/psample/psample 0x2947d47f psample_group_take +EXPORT_SYMBOL_GPL net/psample/psample 0x44417724 psample_group_put +EXPORT_SYMBOL_GPL net/psample/psample 0x6b27a322 psample_sample_packet +EXPORT_SYMBOL_GPL net/psample/psample 0xe7562a76 psample_group_get +EXPORT_SYMBOL_GPL net/qrtr/ns 0x636a2832 qrtr_ns_init +EXPORT_SYMBOL_GPL net/qrtr/ns 0x8d25501f qrtr_ns_remove +EXPORT_SYMBOL_GPL net/qrtr/qrtr 0x435f31a6 qrtr_endpoint_register +EXPORT_SYMBOL_GPL net/qrtr/qrtr 0xb4a700fa qrtr_endpoint_post +EXPORT_SYMBOL_GPL net/qrtr/qrtr 0xc5cb462b qrtr_endpoint_unregister +EXPORT_SYMBOL_GPL net/rds/rds 0x00a467af rds_wq +EXPORT_SYMBOL_GPL net/rds/rds 0x0bcd66c3 rds_send_ping +EXPORT_SYMBOL_GPL net/rds/rds 0x1186a743 rds_connect_path_complete +EXPORT_SYMBOL_GPL net/rds/rds 0x15539e93 rds_message_put +EXPORT_SYMBOL_GPL net/rds/rds 0x1a145a7b rds_conn_create +EXPORT_SYMBOL_GPL net/rds/rds 0x1d3ecf6a rds_cong_map_updated +EXPORT_SYMBOL_GPL net/rds/rds 0x23ab9d1c rds_trans_unregister +EXPORT_SYMBOL_GPL net/rds/rds 0x266dd073 rds_inc_path_init +EXPORT_SYMBOL_GPL net/rds/rds 0x2b0d543c rds_message_add_extension +EXPORT_SYMBOL_GPL net/rds/rds 0x2f91493c rds_conn_destroy +EXPORT_SYMBOL_GPL net/rds/rds 0x36087aa4 rds_stats +EXPORT_SYMBOL_GPL net/rds/rds 0x38dc27a6 rds_info_deregister_func +EXPORT_SYMBOL_GPL net/rds/rds 0x3f140c89 rds_inc_put +EXPORT_SYMBOL_GPL net/rds/rds 0x45a4781e rds_addr_cmp +EXPORT_SYMBOL_GPL net/rds/rds 0x48c25e30 rds_inc_init +EXPORT_SYMBOL_GPL net/rds/rds 0x54d288f6 rds_rdma_send_complete +EXPORT_SYMBOL_GPL net/rds/rds 0x553cca99 rds_send_drop_acked +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 0x6c8ab26b rds_trans_register +EXPORT_SYMBOL_GPL net/rds/rds 0x71d208be rds_send_path_drop_acked +EXPORT_SYMBOL_GPL net/rds/rds 0x7992ecf3 rds_message_unmapped +EXPORT_SYMBOL_GPL net/rds/rds 0x7b399e66 rds_page_remainder_alloc +EXPORT_SYMBOL_GPL net/rds/rds 0x7e85edda rds_send_path_reset +EXPORT_SYMBOL_GPL net/rds/rds 0x80388f2f rds_for_each_conn_info +EXPORT_SYMBOL_GPL net/rds/rds 0x862dbfae rds_info_register_func +EXPORT_SYMBOL_GPL net/rds/rds 0x868a014e rds_conn_connect_if_down +EXPORT_SYMBOL_GPL net/rds/rds 0x8bd3c88a rds_recv_incoming +EXPORT_SYMBOL_GPL net/rds/rds 0x9136e870 rds_atomic_send_complete +EXPORT_SYMBOL_GPL net/rds/rds 0x9cd98b51 rds_connect_complete +EXPORT_SYMBOL_GPL net/rds/rds 0x9d3f55b3 rds_conn_create_outgoing +EXPORT_SYMBOL_GPL net/rds/rds 0xc2dab779 rds_info_copy +EXPORT_SYMBOL_GPL net/rds/rds 0xc9a87281 rds_message_addref +EXPORT_SYMBOL_GPL net/rds/rds 0xcb17c9e2 rds_conn_drop +EXPORT_SYMBOL_GPL net/rds/rds 0xcef3266e rds_send_xmit +EXPORT_SYMBOL_GPL net/rds/rds 0xcf676f78 rds_conn_path_connect_if_down +EXPORT_SYMBOL_GPL net/rds/rds 0xdfc07c4b rds_conn_path_drop +EXPORT_SYMBOL_GPL net/rds/rds 0xf4c257e8 rds_stats_info_copy +EXPORT_SYMBOL_GPL net/sched/sch_pie 0x65685428 pie_process_dequeue +EXPORT_SYMBOL_GPL net/sched/sch_pie 0x6ce9b467 pie_calculate_probability +EXPORT_SYMBOL_GPL net/sched/sch_pie 0xb40eeca5 pie_drop_early +EXPORT_SYMBOL_GPL net/sched/sch_taprio 0x7db7d103 taprio_offload_free +EXPORT_SYMBOL_GPL net/sched/sch_taprio 0xd765a904 taprio_offload_get +EXPORT_SYMBOL_GPL net/sctp/sctp 0x687be569 sctp_for_each_transport +EXPORT_SYMBOL_GPL net/sctp/sctp 0x6c17144d sctp_transport_lookup_process +EXPORT_SYMBOL_GPL net/sctp/sctp 0x7423af74 sctp_for_each_endpoint +EXPORT_SYMBOL_GPL net/sctp/sctp 0xf177cc38 sctp_get_sctp_info +EXPORT_SYMBOL_GPL net/smc/smc 0x0f51f477 smcd_handle_irq +EXPORT_SYMBOL_GPL net/smc/smc 0x24ebcc09 smcd_unregister_dev +EXPORT_SYMBOL_GPL net/smc/smc 0x2a5f735a smcd_register_dev +EXPORT_SYMBOL_GPL net/smc/smc 0x3c3b980b smc_proto6 +EXPORT_SYMBOL_GPL net/smc/smc 0x60120a67 smcd_handle_event +EXPORT_SYMBOL_GPL net/smc/smc 0x751db42c smcd_alloc_dev +EXPORT_SYMBOL_GPL net/smc/smc 0x91fc4ab8 smcd_free_dev +EXPORT_SYMBOL_GPL net/smc/smc 0xaf1b4ad4 smc_unhash_sk +EXPORT_SYMBOL_GPL net/smc/smc 0xbc306f68 smc_hash_sk +EXPORT_SYMBOL_GPL net/smc/smc 0xc3c21f73 smc_proto +EXPORT_SYMBOL_GPL net/sunrpc/auth_gss/auth_rpcgss 0x2c1a8ac3 svcauth_gss_register_pseudoflavor +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 0x6355ef6f svcauth_gss_flavor +EXPORT_SYMBOL_GPL net/sunrpc/auth_gss/auth_rpcgss 0xb6ddda85 gss_mech_unregister +EXPORT_SYMBOL_GPL net/sunrpc/auth_gss/auth_rpcgss 0xd7673035 g_verify_token_header +EXPORT_SYMBOL_GPL net/sunrpc/auth_gss/auth_rpcgss 0xfd0989e8 gss_mech_register +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x00090fce xdr_inline_decode +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x0015758d rpc_proc_register +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x013e2cb2 rpc_queue_upcall +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x01b0a9e3 svc_drop +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x0333fecc sunrpc_init_cache_detail +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x033fe468 rpc_malloc +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x04fbf8c9 rpc_add_pipe_dir_object +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x059bc38e svc_proc_register +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x05a0cb3c svc_recv +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 0x07aa7d3f xprt_free +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x0b84fea0 rpc_wake_up_status +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x0c28008b rpc_init_wait_queue +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x0d692ede rpc_max_bc_payload +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x0e27ae31 rpc_task_release_transport +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x0eec57d4 xprt_get +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x12dc4090 bc_svc_process +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x15d29e45 rpc_prepare_reply_pages +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x16a48e03 svc_wake_up +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x171fba4f svc_xprt_do_enqueue +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x17a5bd6a rpc_max_payload +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x1807e7d1 rpc_init_priority_wait_queue +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x199f756f rpc_create +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x1abde638 rpc_sleep_on_priority_timeout +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x1e119a79 rpcauth_get_pseudoflavor +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x1e2cd9da svc_xprt_init +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x1fc8863a __rpc_wait_for_completion_task +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x1fe637d9 xprt_unregister_transport +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x2180ca96 rpc_d_lookup_sb +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x2258e190 rpc_force_rebind +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x22a4e904 svc_xprt_names +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x22e10f20 svc_unreg_xprt_class +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x2408cbe5 xdr_encode_array2 +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x24e6b400 rpc_clnt_test_and_add_xprt +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x25c5811c rpc_call_sync +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x2657c8c0 svc_rpcb_cleanup +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x2727535f xprt_wait_for_buffer_space +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x27407fae svc_bind +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x27e8d28a xdr_stream_pos +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x2919b156 xdr_decode_string_inplace +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x2cf31397 svc_max_payload +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x2cf86ab0 rpc_switch_client_transport +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x2f8ebbe0 rpc_ntop +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x31a89d59 rpc_debug +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x3217664b cache_seq_start_rcu +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x32ba77e3 sunrpc_cache_update +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x32c84843 xdr_buf_subsegment +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x33226f62 rpc_call_null +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x33bffdef rpcauth_stringify_acceptor +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x3458082d svc_xprt_enqueue +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x34914b33 rpc_setbufsize +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x34d6ad2a rpc_restart_call +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x354f1f9e rpc_restart_call_prepare +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x37cc0595 rpc_pipe_generic_upcall +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x37e636ac svc_set_num_threads +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x386b44a8 svc_generic_init_request +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x387e1639 rpc_pipefs_notifier_register +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x38b66f59 rpc_sleep_on_priority +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x38d55d05 gssd_running +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x395b25c5 rpc_set_connect_timeout +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x3bc95e2a rpc_count_iostats +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x3bdd0aae xdr_stream_decode_opaque +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x3d09ab0a svc_reserve +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x3d29b73b xdr_enter_page +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x3db6d2d6 svc_addsock +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x3f9a2b0b rpcauth_get_gssinfo +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x3fedd997 svc_create_xprt +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x408cf3cb xdr_write_pages +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x40ae5fa9 rpc_sleep_on_timeout +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x412450d1 rpc_wake_up_next +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x41563059 rpc_unlink +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x423a7efb sunrpc_destroy_cache_detail +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x44495a77 rpc_exit +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x44681ffc rpcb_getport_async +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x453efa54 svc_pool_map +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x455ce8e7 rpc_proc_unregister +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x456202de rpc_num_bc_slots +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x45a98743 xprt_write_space +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x46828aa1 rpc_net_ns +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x468a1af8 sunrpc_cache_lookup_rcu +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x46ce395e xdr_set_scratch_buffer +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x4a717cd3 xprt_put +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x4a8ae44e rpc_mkpipe_dentry +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x4afedab1 xprtiod_workqueue +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x4be516ed svc_fill_write_vector +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 0x4ec5dfba svc_set_num_threads_sync +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x4efe9f32 rpc_destroy_pipe_data +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x4fd55ca5 xdr_stream_decode_opaque_dup +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x52f0540f xprt_force_disconnect +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x53445f68 nlm_debug +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x5455d06f rpc_find_or_alloc_pipe_dir_object +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x551b86b9 rpc_put_task_async +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x551f8707 svcauth_unix_set_client +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x571621f8 xdr_stream_decode_string +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x572260e3 rpc_machine_cred +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x58223381 rpc_clnt_iterate_for_each_xprt +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x58579a70 xprt_unpin_rqst +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x58b211b4 rpc_peeraddr +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x5a2353f5 cache_seq_next_rcu +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x5a45ba31 svc_auth_unregister +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x5ae73860 rpc_localaddr +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x5aea42e7 xprt_reconnect_delay +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x5af2dc6f rpc_clnt_xprt_switch_add_xprt +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x5b89a9ad rpc_free +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x5d8d6f7a svc_reg_xprt_class +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x5de8f71d sunrpc_cache_pipe_upcall +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x5f58a985 unix_domain_find +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x5fc21d08 rpc_uaddr2sockaddr +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x5fff6cca rpc_wake_up_first +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x60348825 rpc_bind_new_program +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x60f01b35 xdr_process_buf +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x61e08396 svc_seq_show +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x63e89a03 rpcauth_register +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x664b47b3 svc_xprt_put +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x68ca2e24 svc_rqst_alloc +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x6b10360f xdr_init_decode +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x6b9c36d3 svc_create_pooled +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x6c2713fa rpcauth_wrap_req_encode +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x6c540a33 cache_check +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x6cf33e67 rpc_pton +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x6cf346e1 sunrpc_cache_unhash +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x6e165443 read_bytes_from_xdr_buf +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x6e719423 xdr_init_decode_pages +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x6eaeeeda rpc_clnt_swap_deactivate +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x6fae4cd8 svc_create +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x71a3d603 svc_prepare_thread +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x71d0df3f auth_domain_lookup +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x71fa908a cache_flush +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x7305be4a rpc_shutdown_client +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x7320bc7e rpcauth_unwrap_resp_decode +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x751f7899 xdr_reserve_space +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x7650f8cb put_rpccred +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x773db297 cache_unregister_net +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x775541e2 xdr_buf_trim +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x7be75c88 rpc_wake_up_queued_task +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x7bf4583e rpc_clnt_xprt_switch_put +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x7de53067 rpc_init_rtt +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x7de5d7b3 svc_auth_register +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x7f0727f7 rpc_clone_client_set_auth +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x7f883e1c svc_rqst_free +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x8000a98f xprt_request_get_cong +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x809e2b21 xprt_alloc +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x80be86a8 cache_create_net +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x8562ba4e rpc_clnt_show_stats +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x86cab51f xprt_alloc_slot +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x89318d0c rpc_call_start +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x898f515d xprt_release_rqst_cong +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x89e6240d rpc_mkpipe_data +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x8a7ae671 xprt_reserve_xprt_cong +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x8aab66c0 sunrpc_cache_unregister_pipefs +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x8b652118 xprt_destroy_backchannel +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x8d3f00b1 xdr_stream_decode_string_dup +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x8db5d3e4 rpcauth_lookup_credcache +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x8db683dc svc_rpcb_setup +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x8e9016af rpcauth_init_credcache +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x8fdb57a9 rpc_clnt_swap_activate +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x9224516d rpc_wake_up +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x935f3701 auth_domain_find +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x9675197b xdr_decode_word +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x980b5200 rpc_clnt_setup_test_and_add_xprt +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x9aec5eeb xprt_register_transport +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x9d6d3746 _copy_from_pages +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x9fc8b6b5 svc_set_client +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xa030a3b9 svc_return_autherr +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xa04ebd20 xdr_commit_encode +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xa13acdb8 svc_pool_map_put +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xa252a22b rpc_run_task +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xa2c203e1 rpc_remove_pipe_dir_object +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xa606d07e rpcauth_destroy_credcache +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xa754bf71 rpc_put_task +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xa94e1b95 csum_partial_copy_to_xdr +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xaf3e3d17 xdr_encode_word +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xaf5bf6ef nfs_debug +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xaff2ed7a xprt_free_slot +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xb25f4e23 rpcauth_init_cred +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xb312d0c4 svc_pool_map_get +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xb3e566df xprt_wake_pending_tasks +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xb51a3724 rpc_pipefs_notifier_unregister +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xb5413e40 rpc_put_sb_net +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xb6a8e6eb xdr_inline_pages +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xb6ec1cc5 svc_generic_rpcbind_set +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xb88bb93d rpc_killall_tasks +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xb96c57e5 xprt_update_rtt +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xbbd74781 xprt_release_xprt_cong +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xbbe7064b svc_authenticate +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xbc66b2ed svc_close_xprt +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xbc69fac8 cache_purge +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xbc8ed0c9 xprt_wait_for_reply_request_def +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xbd9296bb rpc_clone_client +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xbe860685 svc_destroy +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xbf9d1b96 nfsd_debug +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xbfeb3908 rpc_sleep_on +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xc0cb762a cache_register_net +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xc12435e3 rpc_calc_rto +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xc169d947 rpc_destroy_wait_queue +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xc1f41c6a rpc_clnt_xprt_switch_has_addr +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xc2cba13e rpc_release_client +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xc3373f13 rpc_clnt_add_xprt +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xc3d98cdc rpcauth_unregister +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xc897d031 svc_process +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xc8e96dea qword_addhex +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xca11e9ba rpc_call_async +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xca85a477 svcauth_unix_purge +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xcb08673c xdr_terminate_string +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xcc28a469 xprt_release_xprt +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xcd0a80af rpc_init_pipe_dir_object +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xce50e880 xprt_setup_backchannel +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xce678a59 xdr_decode_netobj +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xcee467f3 xprt_load_transport +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xd1b68127 svc_exit_thread +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xd3cd93b5 rpc_init_pipe_dir_head +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xd3fe646a rpcauth_lookupcred +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xd56b3d14 sunrpc_cache_pipe_upcall_timeout +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xd607d4f1 cache_seq_stop_rcu +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xd760fe42 sunrpc_cache_register_pipefs +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xd82cd302 xprt_reserve_xprt +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xd89925a2 rpc_peeraddr2str +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xdedc2edd rpc_delay +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xdf4e7a31 xprt_wait_for_reply_request_rtt +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xdf9d80d0 rpc_alloc_iostats +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xdfd3e7f8 svc_age_temp_xprts_now +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xe1f3c997 rpc_get_sb_net +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xe3be3b8b svc_fill_symlink_pathname +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xe525008a svc_rpcbind_set_version +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xe5919cb1 xdr_encode_opaque +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xe5cf5ad7 svc_alien_sock +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xe713a55b rpc_count_iostats_metrics +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xe7d532e6 xprt_adjust_cwnd +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xe8ae33ea xprt_pin_rqst +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xe95c348f rpc_free_iostats +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xe97f4ce5 qword_get +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xec99b6d8 xdr_shift_buf +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xeca34bef rpcauth_create +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xed091955 svc_print_addr +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xedcf6be4 qword_add +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xee0916b8 rpc_task_timeout +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xee575ac5 xprt_reconnect_backoff +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xeeacab69 rpc_update_rtt +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xf062da3d svc_proc_unregister +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xf070c895 svc_shutdown_net +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xf0e8513b svc_sock_update_bufs +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xf14f1abd xprt_disconnect_done +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xf1dab42e xdr_read_pages +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xf1e715f2 svc_xprt_copy_addrs +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xf5fd71e8 xdr_init_encode +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xf6bc5af1 svc_encode_read_payload +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xf734831c xdr_decode_array2 +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xf73b2d72 xprt_complete_rqst +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xf9ae2cc8 write_bytes_to_xdr_buf +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xf9e31487 cache_destroy_net +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xfc0426b0 xprt_lookup_rqst +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xfc66a908 svc_find_xprt +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xfec7d6bd xdr_buf_from_iov +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xffbf9166 auth_domain_put +EXPORT_SYMBOL_GPL net/tls/tls 0x52bef311 tls_encrypt_skb +EXPORT_SYMBOL_GPL net/tls/tls 0xde3613d3 tls_device_sk_destruct +EXPORT_SYMBOL_GPL net/tls/tls 0xf77aade1 tls_offload_tx_resync_request +EXPORT_SYMBOL_GPL net/tls/tls 0xf987a698 tls_validate_xmit_skb +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 0x083ab1e0 virtio_transport_stream_rcvhiwat +EXPORT_SYMBOL_GPL net/vmw_vsock/vmw_vsock_virtio_transport_common 0x0a8ff554 virtio_transport_stream_has_data +EXPORT_SYMBOL_GPL net/vmw_vsock/vmw_vsock_virtio_transport_common 0x0b966434 virtio_transport_recv_pkt +EXPORT_SYMBOL_GPL net/vmw_vsock/vmw_vsock_virtio_transport_common 0x107f59ae virtio_transport_dgram_bind +EXPORT_SYMBOL_GPL net/vmw_vsock/vmw_vsock_virtio_transport_common 0x1280c762 virtio_transport_notify_buffer_size +EXPORT_SYMBOL_GPL net/vmw_vsock/vmw_vsock_virtio_transport_common 0x1cbe7ee5 virtio_transport_notify_poll_out +EXPORT_SYMBOL_GPL net/vmw_vsock/vmw_vsock_virtio_transport_common 0x1f80f125 virtio_transport_get_credit +EXPORT_SYMBOL_GPL net/vmw_vsock/vmw_vsock_virtio_transport_common 0x1fa89381 virtio_transport_notify_recv_post_dequeue +EXPORT_SYMBOL_GPL net/vmw_vsock/vmw_vsock_virtio_transport_common 0x1ff94a5d virtio_transport_do_socket_init +EXPORT_SYMBOL_GPL net/vmw_vsock/vmw_vsock_virtio_transport_common 0x23e5174e virtio_transport_stream_dequeue +EXPORT_SYMBOL_GPL net/vmw_vsock/vmw_vsock_virtio_transport_common 0x40fec95d virtio_transport_notify_poll_in +EXPORT_SYMBOL_GPL net/vmw_vsock/vmw_vsock_virtio_transport_common 0x4710803e virtio_transport_notify_send_init +EXPORT_SYMBOL_GPL net/vmw_vsock/vmw_vsock_virtio_transport_common 0x5b8be8f3 virtio_transport_notify_send_pre_block +EXPORT_SYMBOL_GPL net/vmw_vsock/vmw_vsock_virtio_transport_common 0x65a0d945 virtio_transport_free_pkt +EXPORT_SYMBOL_GPL net/vmw_vsock/vmw_vsock_virtio_transport_common 0x6740d00d virtio_transport_connect +EXPORT_SYMBOL_GPL net/vmw_vsock/vmw_vsock_virtio_transport_common 0x75a8ea8a virtio_transport_shutdown +EXPORT_SYMBOL_GPL net/vmw_vsock/vmw_vsock_virtio_transport_common 0x7a282394 virtio_transport_put_credit +EXPORT_SYMBOL_GPL net/vmw_vsock/vmw_vsock_virtio_transport_common 0x825a7259 virtio_transport_notify_recv_init +EXPORT_SYMBOL_GPL net/vmw_vsock/vmw_vsock_virtio_transport_common 0x8730f82c virtio_transport_dgram_dequeue +EXPORT_SYMBOL_GPL net/vmw_vsock/vmw_vsock_virtio_transport_common 0x8d25564d virtio_transport_destruct +EXPORT_SYMBOL_GPL net/vmw_vsock/vmw_vsock_virtio_transport_common 0x96b511c7 virtio_transport_deliver_tap_pkt +EXPORT_SYMBOL_GPL net/vmw_vsock/vmw_vsock_virtio_transport_common 0x9f7deba1 virtio_transport_stream_enqueue +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 0xc72c814e virtio_transport_stream_has_space +EXPORT_SYMBOL_GPL net/vmw_vsock/vmw_vsock_virtio_transport_common 0xc864a40d virtio_transport_notify_send_post_enqueue +EXPORT_SYMBOL_GPL net/vmw_vsock/vmw_vsock_virtio_transport_common 0xcd722d2d virtio_transport_notify_recv_pre_block +EXPORT_SYMBOL_GPL net/vmw_vsock/vmw_vsock_virtio_transport_common 0xd21f21dc virtio_transport_notify_recv_pre_dequeue +EXPORT_SYMBOL_GPL net/vmw_vsock/vmw_vsock_virtio_transport_common 0xee98a3b5 virtio_transport_stream_is_active +EXPORT_SYMBOL_GPL net/vmw_vsock/vmw_vsock_virtio_transport_common 0xf03fe9f0 virtio_transport_inc_tx_pkt +EXPORT_SYMBOL_GPL net/vmw_vsock/vmw_vsock_virtio_transport_common 0xf4fa0761 virtio_transport_dgram_enqueue +EXPORT_SYMBOL_GPL net/vmw_vsock/vmw_vsock_virtio_transport_common 0xf598eb5e virtio_transport_release +EXPORT_SYMBOL_GPL net/vmw_vsock/vmw_vsock_virtio_transport_common 0xfa11ab48 virtio_transport_notify_send_pre_enqueue +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0x19616564 vsock_add_tap +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0x2663cb64 vsock_addr_equals_addr +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0x284e07d8 vsock_bind_table +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0x2aee6827 vsock_stream_has_data +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0x311d92d1 vsock_remove_tap +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0x44420515 vsock_table_lock +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0x48162f39 vsock_remove_sock +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0x499ce891 vsock_assign_transport +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0x600406a1 vsock_create_connected +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0x73879664 vsock_addr_init +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0x74e91915 vsock_addr_cast +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0x751ff010 vsock_addr_unbind +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0x79f1af5f vsock_find_connected_socket +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0x90aa8549 vsock_find_cid +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0x9977e78c vsock_core_unregister +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0x9bb6fd09 vsock_connected_table +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0xa07ce4bb vsock_add_pending +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0xa9440e94 vsock_insert_connected +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0xaa3a3d3b vsock_deliver_tap +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0xac65fde0 vsock_remove_pending +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0xbd0f699d vsock_addr_bound +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0xcb54f62f vsock_remove_bound +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0xce8ade95 vsock_enqueue_accept +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0xd95ac116 vsock_addr_validate +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0xd983631e vsock_core_get_transport +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0xe1f78c6a vsock_find_bound_socket +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0xe6316d4e vsock_core_register +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0xee0a3475 vsock_remove_connected +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0xf36b3edf vsock_stream_has_space +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0xf7021272 vsock_for_each_connected_socket +EXPORT_SYMBOL_GPL net/wimax/wimax 0x0b36b412 wimax_state_get +EXPORT_SYMBOL_GPL net/wimax/wimax 0x1c2c662b wimax_dev_init +EXPORT_SYMBOL_GPL net/wimax/wimax 0x33d66596 wimax_state_change +EXPORT_SYMBOL_GPL net/wimax/wimax 0x4895812c wimax_msg +EXPORT_SYMBOL_GPL net/wimax/wimax 0x4fb3d646 wimax_msg_len +EXPORT_SYMBOL_GPL net/wimax/wimax 0x76e6af98 wimax_dev_rm +EXPORT_SYMBOL_GPL net/wimax/wimax 0x7b373205 wimax_msg_data_len +EXPORT_SYMBOL_GPL net/wimax/wimax 0x94523f16 wimax_report_rfkill_sw +EXPORT_SYMBOL_GPL net/wimax/wimax 0xaadf2512 wimax_report_rfkill_hw +EXPORT_SYMBOL_GPL net/wimax/wimax 0xacea2fac wimax_dev_add +EXPORT_SYMBOL_GPL net/wimax/wimax 0xc557d281 wimax_msg_alloc +EXPORT_SYMBOL_GPL net/wimax/wimax 0xde77bee8 wimax_msg_data +EXPORT_SYMBOL_GPL net/wimax/wimax 0xf3b8745d wimax_msg_send +EXPORT_SYMBOL_GPL net/wireless/cfg80211 0x41822da3 cfg80211_wext_giwname +EXPORT_SYMBOL_GPL net/wireless/cfg80211 0x45b07a12 cfg80211_wext_giwfrag +EXPORT_SYMBOL_GPL net/wireless/cfg80211 0x4f2f8a30 cfg80211_wext_giwscan +EXPORT_SYMBOL_GPL net/wireless/cfg80211 0x5838012e cfg80211_wext_giwmode +EXPORT_SYMBOL_GPL net/wireless/cfg80211 0x64cdb045 cfg80211_shutdown_all_interfaces +EXPORT_SYMBOL_GPL net/wireless/cfg80211 0x69c621fb cfg80211_vendor_cmd_reply +EXPORT_SYMBOL_GPL net/wireless/cfg80211 0x765b18a8 cfg80211_wext_giwrts +EXPORT_SYMBOL_GPL net/wireless/cfg80211 0x811e6a74 cfg80211_wext_giwrange +EXPORT_SYMBOL_GPL net/wireless/cfg80211 0x9003dd3e cfg80211_wext_giwretry +EXPORT_SYMBOL_GPL net/wireless/cfg80211 0xa652f752 cfg80211_wext_siwfrag +EXPORT_SYMBOL_GPL net/wireless/cfg80211 0xaa42a0c1 cfg80211_wext_siwscan +EXPORT_SYMBOL_GPL net/wireless/cfg80211 0xb4681984 cfg80211_wext_siwmode +EXPORT_SYMBOL_GPL net/wireless/cfg80211 0xd89d9c87 cfg80211_vendor_cmd_get_sender +EXPORT_SYMBOL_GPL net/wireless/cfg80211 0xe309ec10 cfg80211_pmsr_report +EXPORT_SYMBOL_GPL net/wireless/cfg80211 0xf7dd4a20 cfg80211_wext_siwrts +EXPORT_SYMBOL_GPL net/wireless/cfg80211 0xff861dc3 cfg80211_pmsr_complete +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 0x04cc8ac2 ipcomp_destroy +EXPORT_SYMBOL_GPL net/xfrm/xfrm_ipcomp 0xa1e0a3e0 ipcomp_output +EXPORT_SYMBOL_GPL net/xfrm/xfrm_ipcomp 0xab73010c ipcomp_input +EXPORT_SYMBOL_GPL net/xfrm/xfrm_ipcomp 0xde106d46 ipcomp_init_state +EXPORT_SYMBOL_GPL sound/core/seq/snd-seq 0xadb51cff snd_seq_client_ioctl_unlock +EXPORT_SYMBOL_GPL sound/core/seq/snd-seq 0xe50413d7 snd_seq_client_ioctl_lock +EXPORT_SYMBOL_GPL sound/core/snd-seq-device 0xe1c16dec snd_seq_driver_unregister +EXPORT_SYMBOL_GPL sound/core/snd-seq-device 0xeaca3d90 __snd_seq_driver_register +EXPORT_SYMBOL_GPL sound/firewire/snd-firewire-lib 0x02a41789 amdtp_am824_set_pcm_position +EXPORT_SYMBOL_GPL sound/firewire/snd-firewire-lib 0x14372258 amdtp_am824_add_pcm_hw_constraints +EXPORT_SYMBOL_GPL sound/firewire/snd-firewire-lib 0x32f938cd amdtp_domain_start +EXPORT_SYMBOL_GPL sound/firewire/snd-firewire-lib 0x48284f17 amdtp_am824_set_midi_position +EXPORT_SYMBOL_GPL sound/firewire/snd-firewire-lib 0x637f17e3 amdtp_domain_stream_pcm_ack +EXPORT_SYMBOL_GPL sound/firewire/snd-firewire-lib 0x6fddf618 amdtp_domain_stop +EXPORT_SYMBOL_GPL sound/firewire/snd-firewire-lib 0x8587f574 amdtp_domain_stream_pcm_pointer +EXPORT_SYMBOL_GPL sound/firewire/snd-firewire-lib 0x87abfc5a amdtp_am824_init +EXPORT_SYMBOL_GPL sound/firewire/snd-firewire-lib 0x937af3d5 amdtp_am824_midi_trigger +EXPORT_SYMBOL_GPL sound/firewire/snd-firewire-lib 0xc8a6b1c5 amdtp_domain_destroy +EXPORT_SYMBOL_GPL sound/firewire/snd-firewire-lib 0xd08ef93e amdtp_am824_set_parameters +EXPORT_SYMBOL_GPL sound/firewire/snd-firewire-lib 0xd7c0b1d9 amdtp_domain_add_stream +EXPORT_SYMBOL_GPL sound/firewire/snd-firewire-lib 0xe8746453 amdtp_domain_init +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0x02352656 snd_hdac_dsp_prepare +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0x043661a5 snd_hdac_stream_stop +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0x0a5d1782 snd_hdac_bus_alloc_stream_pages +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0x0ab885b0 snd_hdac_power_up_pm +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0x0d932936 snd_hdac_bus_stop_cmd_io +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0x1059e1ff snd_hdac_stream_setup +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0x11aba1a0 snd_hdac_power_down_pm +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0x135525a0 snd_hdac_stream_cleanup +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0x13b483c0 snd_hdac_display_power +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0x14512f19 snd_hdac_device_unregister +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0x182b5459 snd_hdac_bus_update_rirb +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0x18902dcf snd_hdac_regmap_update_raw +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0x1d4ac4c0 snd_hdac_query_supported_pcm +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0x215216a7 snd_hdac_device_register +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0x24c773cc snd_hdac_get_sub_nodes +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0x262570fc snd_hdac_regmap_read_raw +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0x26d62ba2 snd_hdac_stream_start +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0x2b613509 snd_hdac_stream_set_params +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0x2df561b1 snd_hdac_get_stream_stripe_ctl +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0x2dfa82eb snd_hdac_codec_write +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0x30e785ee snd_hdac_dsp_trigger +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0x32e553c3 hdac_get_device_id +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0x36d3cadf snd_hdac_bus_free_stream_pages +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0x38cc712b snd_hdac_stream_sync +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0x3bbf83f1 snd_hdac_bus_init +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0x3bd544c2 snd_hdac_get_active_channels +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0x3d5448f2 snd_hdac_get_connections +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0x3ea05b67 snd_hdac_bus_send_cmd +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0x41cda32b snd_hdac_channel_allocation +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0x42a8f88d snd_hdac_refresh_widgets +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0x454b1bcd snd_hdac_add_chmap_ctls +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0x45bb91a9 snd_hdac_bus_enter_link_reset +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0x49254094 snd_hdac_stream_init +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0x4bf1a205 snd_hdac_stream_setup_periods +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0x4c7ec4b6 snd_hdac_get_ch_alloc_from_ca +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0x59771f0a snd_hdac_regmap_sync +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0x5c07cb49 snd_hdac_calc_stream_format +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0x5ce2d0f9 snd_hdac_bus_exec_verb_unlocked +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0x5ec454b3 snd_hdac_setup_channel_mapping +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0x5f565637 snd_hdac_check_power_state +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0x5f6f84fa snd_hdac_bus_exit_link_reset +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0x62f45cc8 snd_hdac_regmap_exit +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0x67bfe791 snd_hdac_spk_to_chmap +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0x67f91430 snd_hdac_power_up +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0x697be1dd snd_hdac_bus_init_cmd_io +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0x6fc1ce21 snd_hdac_device_init +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0x71aa40de snd_hdac_bus_exit +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0x71c7abef snd_hdac_acomp_get_eld +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0x7510e9a4 _snd_hdac_read_parm +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0x758a265a snd_hdac_stream_clear +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0x76233b4b snd_hda_bus_type +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0x766c8b9f snd_hdac_stream_timecounter_init +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0x77c754a8 snd_hdac_chmap_to_spk_mask +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0x80b5758a snd_hdac_get_stream +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0x81816556 snd_hdac_bus_reset_link +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0x88287291 snd_hdac_acomp_exit +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0x885cb50b snd_hdac_device_set_chip_name +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0x8c2908cc snd_hdac_read +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0x915f408d snd_hdac_read_parm_uncached +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0x9a8e1877 snd_array_free +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0x9b79eab7 snd_hdac_sync_power_state +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0x9cba4561 snd_hdac_stream_assign +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0x9d2b17c4 snd_hdac_stream_sync_trigger +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0xb188ca31 snd_hdac_register_chmap_ops +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0xb73b31a7 snd_hdac_bus_handle_stream_irq +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0xb88f75a4 snd_hdac_regmap_add_vendor_verb +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0xbde9e789 snd_hdac_set_codec_wakeup +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0xbe7dd7dc snd_array_new +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0xc9263df8 snd_hdac_codec_read +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0xc9ca4dc0 snd_hdac_dsp_cleanup +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0xcdfae11e snd_hdac_regmap_write_raw +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0xd0f305a8 snd_hdac_is_supported_format +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0xd5610e77 snd_hdac_bus_parse_capabilities +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0xd57aa253 snd_hdac_codec_modalias +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0xd622c005 snd_hdac_regmap_update_raw_once +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0xdded7e93 snd_hdac_bus_get_response +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0xde87fd0f snd_hdac_acomp_register_notifier +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0xe08eaf9a snd_hdac_stream_release +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0xe0e197e2 snd_hdac_sync_audio_rate +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0xe19c9817 snd_hdac_override_parm +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0xe44af26f snd_hdac_regmap_init +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0xe4e07754 snd_hdac_print_channel_allocation +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0xe6b6bb9a snd_hdac_power_down +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0xe6c3b8e6 snd_hdac_bus_stop_chip +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0xecb566f5 snd_hdac_acomp_init +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0xeedda50e snd_hdac_device_exit +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0xf6b4632f snd_hdac_bus_init_chip +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0xf94a04c8 snd_hdac_stream_reset +EXPORT_SYMBOL_GPL sound/hda/snd-intel-dspcfg 0x080c546d snd_intel_dsp_driver_probe +EXPORT_SYMBOL_GPL sound/i2c/other/snd-ak4113 0x0e450eb0 snd_ak4113_reinit +EXPORT_SYMBOL_GPL sound/i2c/other/snd-ak4113 0x89a0401e snd_ak4113_check_rate_and_errors +EXPORT_SYMBOL_GPL sound/i2c/other/snd-ak4113 0xcd0bb7cf snd_ak4113_external_rate +EXPORT_SYMBOL_GPL sound/i2c/other/snd-ak4113 0xd6951426 snd_ak4113_create +EXPORT_SYMBOL_GPL sound/i2c/other/snd-ak4113 0xdd33b6e5 snd_ak4113_reg_write +EXPORT_SYMBOL_GPL sound/i2c/other/snd-ak4113 0xe7e7d459 snd_ak4113_build +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x006a8ad1 snd_hda_sync_vmaster_hook +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x01227485 snd_hda_mixer_amp_switch_put +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x028c00ea snd_hda_jack_pin_sense +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x03930991 snd_hda_jack_tbl_get_mst +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x0676f5ac snd_hda_get_input_pin_attr +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x06a24e7f azx_codec_configure +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x0b5600cc snd_hda_jack_set_gating_jack +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x0d28c740 snd_hda_codec_amp_init_stereo +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x0deec9ee snd_hda_multi_out_analog_cleanup +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x0ee8e068 __snd_hda_codec_cleanup_stream +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x10cbd941 snd_hda_codec_eapd_power_filter +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x129a8120 snd_hda_codec_setup_stream +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x16559fd5 azx_probe_codecs +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x171bd632 snd_hda_apply_pincfgs +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x17cdae23 snd_hda_codec_pcm_new +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x18b58b38 snd_hda_jack_tbl_get_from_tag +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x1acfde6d is_jack_detectable +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x1ad9e7d0 __hda_codec_driver_register +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x1b2076c0 snd_hda_set_vmaster_tlv +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x1ccfc8c6 snd_hda_mixer_amp_volume_put +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x1d263d02 snd_hda_enum_helper_info +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x1d9e3371 snd_hda_get_dev_select +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x2639a20e snd_hda_add_imux_item +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x27e3aa53 snd_hda_get_pin_label +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x2bbc5021 snd_hda_multi_out_dig_cleanup +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x2c53fd32 snd_hda_get_int_hint +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x31b670e0 snd_hda_add_nid +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x3542fa83 azx_get_pos_posbuf +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x38c67bed snd_hda_set_dev_select +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x38ce402b azx_interrupt +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x3bc85963 snd_hda_multi_out_analog_open +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x3d483dc7 snd_hda_jack_detect_enable_callback_mst +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x3dc0499a snd_hda_spdif_out_of_nid +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x3e113df6 snd_hda_ctl_add +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x3eb7ae5e snd_hda_codec_device_new +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x418e9607 snd_hda_enable_beep_device +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x42e6cfb6 snd_hda_detach_beep_device +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x4599b3e3 snd_hda_codec_amp_update +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x46626554 snd_hda_get_bool_hint +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x4792cc84 snd_hda_mixer_amp_switch_info +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x48fb58e3 snd_hda_spdif_ctls_assign +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x4c49f111 snd_hda_jack_add_kctls +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x4fbdef54 snd_hda_jack_add_kctl_mst +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x4fdb512c snd_hda_codec_set_pincfg +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x5653c657 snd_hda_load_patch +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x56554111 azx_stop_all_streams +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x5999daff snd_hda_set_power_save +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x5a7f70c7 snd_hda_mixer_amp_volume_info +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x5cd20800 snd_hda_pick_pin_fixup +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x5d57fff2 snd_hda_codec_load_dsp_trigger +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x66f39c48 snd_hda_codec_cleanup +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x693c1486 snd_hda_multi_out_analog_prepare +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x6c1df4db snd_hda_pick_fixup +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x6c81e9c0 snd_hda_create_spdif_share_sw +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x6d5227cf snd_hda_mixer_amp_tlv +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x6e324c82 snd_hda_create_dig_out_ctls +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x6e8593c9 azx_get_position +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x6f010d4d snd_hda_codec_load_dsp_cleanup +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x6f95a7a8 azx_init_chip +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x7018ed20 snd_hda_jack_detect_enable +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x70742c2a __snd_hda_add_vmaster +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x70d1789f snd_hda_check_amp_caps +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x75207a1c snd_hda_codec_pcm_put +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x78523d57 hda_get_autocfg_input_label +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x7c5b7ad8 snd_hda_add_verbs +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x7e33d5f9 snd_hda_find_mixer_ctl +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x7fa4dfe8 azx_get_pos_lpib +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x7fdd638f snd_hda_jack_report_sync +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x80823cac snd_hda_multi_out_dig_open +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x839d28bb snd_hda_codec_set_power_to_all +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x848d65b1 query_amp_caps +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x85b496f5 snd_hda_get_hint +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x8a644e5f snd_hda_mixer_amp_volume_get +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x8d2c7b7d azx_init_streams +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x8f76fa2d snd_hda_codec_update_widgets +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x94d36d17 snd_hda_create_spdif_in_ctls +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x96f1ed5b snd_hda_codec_get_pin_target +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x971da50e snd_hda_jack_unsol_event +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x9789f21c snd_hda_mixer_amp_switch_get +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x97b8b044 snd_hda_mixer_amp_switch_get_beep +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xa119c76d snd_hda_get_default_vref +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xa4b8d7a0 snd_hda_codec_configure +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xa78fc852 snd_hda_mixer_amp_switch_put_beep +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xaa7f7cc6 snd_hda_parse_pin_defcfg +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xaae6e4e2 snd_hda_get_num_devices +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xabf86097 snd_hda_sequence_write +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xb1502fb7 snd_hda_shutup_pins +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xb2808ec1 snd_hda_codec_amp_init +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xb415a5b9 snd_hda_jack_detect_state_mst +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xbc723f58 snd_hda_codec_get_pincfg +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xbe4a10f6 snd_hda_add_vmaster_hook +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xc8cc7cc2 _snd_hda_set_pin_ctl +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xcafbac1b azx_bus_init +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xcc83b9c5 snd_hda_input_mux_info +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xcd021c29 snd_hda_codec_load_dsp_prepare +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xcde17b71 snd_hda_spdif_ctls_unassign +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xd11b94bf snd_hda_codec_set_pin_target +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xd22a5aae snd_hda_override_amp_caps +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xd48c35a6 snd_hda_attach_beep_device +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xd61683c6 hda_codec_driver_unregister +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xd7fe7536 azx_free_streams +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xd9245d89 snd_hda_unlock_devices +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xda76b005 snd_hda_add_new_ctls +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xda7de6f0 snd_hda_jack_set_dirty_all +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xdecfaf3c snd_hda_override_conn_list +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xe118de5d snd_pcm_2_1_chmaps +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xe227eebd snd_hda_codec_new +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xe3d55519 snd_hda_get_conn_list +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xe69bd00a snd_hda_multi_out_dig_close +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xe8a656c9 snd_hda_codec_parse_pcms +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xe9289b78 snd_hda_get_conn_index +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xe97d6bb9 snd_hda_lock_devices +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xea42ed94 azx_stop_chip +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xebdc92a6 snd_hda_apply_verbs +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xec3e53f5 snd_hda_jack_poll_all +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xeda3a721 snd_print_pcm_bits +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xeda9d279 snd_hda_check_amp_list_power +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xeec3baed snd_hda_codec_build_controls +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xf26a8782 snd_hda_codec_prepare +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xf3c54265 snd_hda_codec_amp_stereo +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xf5590668 snd_hda_multi_out_dig_prepare +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xf98f86d6 snd_hda_input_mux_put +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xfc1e3753 snd_hda_get_connections +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xfdce51f6 snd_hda_codec_set_name +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xfe82976e snd_hda_apply_fixup +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xff117422 snd_hda_correct_pin_ctl +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec-generic 0x022e2af6 snd_hda_gen_stream_pm +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec-generic 0x2e556934 snd_hda_gen_add_mute_led_cdev +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec-generic 0x3263a051 snd_hda_gen_spec_init +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec-generic 0x330bcc60 snd_hda_gen_update_outputs +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec-generic 0x34b08d63 snd_hda_gen_reboot_notify +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec-generic 0x3eb711ad snd_hda_gen_path_power_filter +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec-generic 0x4bda795e snd_hda_get_path_idx +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec-generic 0x4ee2d239 snd_hda_gen_build_controls +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec-generic 0x64f47e59 snd_hda_gen_fix_pin_power +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec-generic 0x6611d855 snd_hda_gen_free +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec-generic 0x67e98c8c snd_hda_gen_check_power_status +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec-generic 0x6f19192a snd_hda_add_new_path +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec-generic 0x71c9f8a6 snd_hda_gen_hp_automute +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec-generic 0x76dc6871 hda_main_out_badness +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec-generic 0x8093ed59 snd_hda_gen_add_kctl +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec-generic 0x86d75a40 snd_hda_gen_mic_autoswitch +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec-generic 0x871a6e44 hda_extra_out_badness +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec-generic 0xaabb87c1 snd_hda_gen_parse_auto_config +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec-generic 0xbac3b79a snd_hda_get_path_from_idx +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec-generic 0xc36c0b02 snd_hda_gen_init +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec-generic 0xdd43210b snd_hda_gen_add_micmute_led_cdev +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec-generic 0xe9c95f45 snd_hda_gen_build_pcms +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec-generic 0xf1ef0a85 snd_hda_activate_path +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec-generic 0xf751ed84 snd_hda_gen_line_automute +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-adau-utils 0xae620be9 adau_calc_pll_cfg +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-adau1761 0x33e91b19 adau1761_regmap_config +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-adau1761 0xc86f6921 adau1761_probe +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-adau17x1 0x4c9890e8 adau17x1_set_micbias_voltage +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-adau17x1 0x5507a5d4 adau17x1_volatile_register +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-adau17x1 0x590b4643 adau17x1_remove +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-adau17x1 0x617021af adau17x1_dai_ops +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-adau17x1 0x68e1f7d3 adau17x1_add_routes +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-adau17x1 0x6ec29dd2 adau17x1_resume +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-adau17x1 0x7fad3742 adau17x1_add_widgets +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-adau17x1 0xccc949ff adau17x1_probe +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-adau17x1 0xddc265c4 adau17x1_precious_register +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-adau17x1 0xde6feaca adau17x1_readable_register +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-adau7118 0x63fa01c3 adau7118_probe +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-arizona 0x0276f746 arizona_lhpf2_mode +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-arizona 0x15e4de83 arizona_isrc_fsl +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-arizona 0x1aa67a54 arizona_voice_trigger_switch +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-arizona 0x1aaec448 arizona_lhpf_coeff_put +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-arizona 0x25c2216c arizona_in_vd_ramp +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-arizona 0x336891bc arizona_dvfs_up +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-arizona 0x339eeddb arizona_lhpf1_mode +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-arizona 0x33df8b47 arizona_dvfs_sysclk_ev +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-arizona 0x3e15838b arizona_adsp2_rate_controls +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-arizona 0x4058fa2f arizona_anc_input_src +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-arizona 0x441540ac arizona_in_vi_ramp +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-arizona 0x46277216 arizona_rate_val +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-arizona 0x4a97ac48 arizona_simple_dai_ops +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-arizona 0x4b124909 arizona_set_fll +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-arizona 0x54f89f98 arizona_set_sysclk +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-arizona 0x56182599 arizona_init_dvfs +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-arizona 0x60625448 arizona_clk_ev +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-arizona 0x61a6c27c arizona_lhpf4_mode +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-arizona 0x69102a20 arizona_sample_rate_text +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-arizona 0x6a6f21f7 arizona_set_fll_refclk +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-arizona 0x7276580d arizona_eq_coeff_put +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-arizona 0x729a5ef3 arizona_mixer_values +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-arizona 0x73e86820 arizona_init_dai +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-arizona 0x7641c8c5 arizona_anc_ev +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-arizona 0x766fe847 arizona_init_spk_irqs +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-arizona 0x7b06bf71 arizona_free_spk_irqs +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-arizona 0x7f26f273 arizona_mixer_texts +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-arizona 0x7fcb929a arizona_sample_rate_val_to_name +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-arizona 0x838e7dce arizona_init_gpio +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-arizona 0x889cd150 arizona_out_ev +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-arizona 0x8d4307a9 arizona_input_analog +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-arizona 0x8e0b91fe arizona_init_common +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-arizona 0x8e759c95 arizona_isrc_fsh +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-arizona 0x997fbb02 arizona_init_vol_limit +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-arizona 0xa1326320 arizona_dvfs_down +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-arizona 0xa401fcf2 arizona_lhpf3_mode +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-arizona 0xab4d845c arizona_rate_text +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-arizona 0xabde323d arizona_init_spk +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-arizona 0xaff898fb arizona_output_anc_src +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-arizona 0xba53e42c arizona_out_vd_ramp +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-arizona 0xbc141289 arizona_asrc_rate1 +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-arizona 0xbc743880 arizona_in_dmic_osr +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-arizona 0xbefe91a9 arizona_of_get_audio_pdata +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-arizona 0xc7979475 arizona_dai_ops +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-arizona 0xc84825c0 arizona_hp_ev +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-arizona 0xc9c29637 arizona_mixer_tlv +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-arizona 0xd0dc3aaa arizona_ng_hold +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-arizona 0xdb8485ec arizona_out_vi_ramp +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-arizona 0xdfe804b8 arizona_sample_rate_val +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-arizona 0xe15034b8 arizona_in_ev +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-arizona 0xe28b1b3f arizona_anc_ng_enum +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-arizona 0xec72c858 arizona_in_hpf_cut_enum +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-arizona 0xf7c236cb arizona_set_output_mode +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-arizona 0xfbc7ae20 arizona_init_mono +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-arizona 0xff5a9f17 arizona_init_fll +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-cs4271 0x5f021b5a cs4271_regmap_config +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-cs4271 0x7d05786f cs4271_dt_ids +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-cs4271 0xb8dc0758 cs4271_probe +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-cs42l51 0x375ad98c cs42l51_of_match +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-cs42l51 0x773c3997 cs42l51_suspend +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-cs42l51 0x7e4f6218 cs42l51_resume +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-cs42l51 0x8305e603 cs42l51_regmap +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-cs42l51 0x8bb31fab cs42l51_remove +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-cs42l51 0xe2002184 cs42l51_probe +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-cs42xx8 0x0245c4f2 cs42xx8_of_match +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-cs42xx8 0x64abaf37 cs42xx8_pm +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-cs42xx8 0x7cac7292 cs42888_data +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-cs42xx8 0xb40accc0 cs42xx8_regmap_config +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-cs42xx8 0xcaec9e2a cs42xx8_probe +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-cs42xx8 0xcd3794c9 cs42448_data +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-da7219 0x6ef71817 da7219_aad_init +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-da7219 0x945e5d74 da7219_aad_jack_det +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-da7219 0xbee4fad5 da7219_aad_exit +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-es8328 0x0ea946e9 es8328_probe +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-es8328 0xce883aca es8328_regmap_config +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-hdmi-codec 0xc49041b0 hdmi_codec_set_jack_detect +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-max98090 0x59e03e1e max98090_mic_detect +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-max98095 0xcfbd29f7 max98095_jack_detect +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-nau8824 0x56eb038f nau8824_enable_jack_detect +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-pcm1789-codec 0x5e69792e pcm1789_regmap_config +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-pcm1789-codec 0x5eb2f707 pcm1789_common_init +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-pcm1789-codec 0x9669df35 pcm1789_common_exit +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-pcm179x-codec 0x59d9d506 pcm179x_regmap_config +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-pcm179x-codec 0x76df7b37 pcm179x_common_init +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-pcm186x 0x184860c9 pcm186x_regmap +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-pcm186x 0x952a6e0b pcm186x_probe +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-pcm3168a 0x952f85ff pcm3168a_probe +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-pcm3168a 0xcc73e24e pcm3168a_regmap +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-pcm3168a 0xd170485e pcm3168a_remove +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-pcm3168a 0xd96a27ee pcm3168a_pm_ops +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-pcm512x 0x51509b9e pcm512x_probe +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-pcm512x 0x69e8c549 pcm512x_regmap +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-pcm512x 0xd5762276 pcm512x_remove +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-pcm512x 0xd9df9994 pcm512x_pm_ops +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-rl6231 0x5dc92cdf rl6231_pll_calc +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-rl6231 0x70617a04 rl6231_get_clk_info +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-rl6231 0x8d7fa148 rl6231_get_pre_div +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-rl6231 0xdba4502f rl6231_calc_dmic_clk +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-rt5514-spi 0x554467a3 rt5514_spi_burst_read +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-rt5514-spi 0xbb4583f6 rt5514_spi_burst_write +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-rt5645 0x4f7df114 rt5645_set_jack_detect +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-rt5645 0xf72b3a68 rt5645_sel_asrc_clk_src +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-rt5663 0x49d83952 rt5663_sel_asrc_clk_src +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-rt5682 0x0447acc4 rt5682_reset +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-rt5682 0x0783d676 rt5682_sel_asrc_clk_src +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-rt5682 0x110746ee rt5682_apply_patch_list +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-rt5682 0x11d3b2f5 rt5682_aif1_dai_ops +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-rt5682 0x159cca71 rt5682_volatile_register +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-rt5682 0x28730696 rt5682_supply_names +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-rt5682 0x608ddefc rt5682_parse_dt +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-rt5682 0x623b7480 rt5682_headset_detect +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-rt5682 0x7afe9445 rt5682_soc_component_dev +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-rt5682 0x91079df2 rt5682_jack_detect_handler +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-rt5682 0xa7ce1e47 rt5682_readable_register +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-rt5682 0xb897de56 rt5682_reg +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-rt5682 0xbf781f7b rt5682_calibrate +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-rt5682 0xfae409f6 rt5682_aif2_dai_ops +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-sigmadsp 0x26552c7f sigmadsp_setup +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-sigmadsp 0x587f5625 sigmadsp_reset +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-sigmadsp 0x65236c20 sigmadsp_attach +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-sigmadsp 0x81471bef devm_sigmadsp_init +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-sigmadsp 0xa91ae198 sigmadsp_restrict_params +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-sigmadsp-i2c 0xbf9d063f devm_sigmadsp_init_i2c +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-sigmadsp-regmap 0xd779ac38 devm_sigmadsp_init_regmap +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-ssm2602 0xdc3a92e9 ssm2602_regmap_config +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-ssm2602 0xdccd82ad ssm2602_probe +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-tlv320aic32x4 0xfebe4e88 aic32x4_register_clocks +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-ts3a227e 0xe2c3384d ts3a227e_enable_jack_detect +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-wm-adsp 0x02ccd307 wm_adsp_compr_get_caps +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-wm-adsp 0x0422fee7 wm_adsp_compr_handle_irq +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-wm-adsp 0x1201226f wm_adsp_write_ctl +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-wm-adsp 0x1cc203f3 wm_adsp_compr_copy +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-wm-adsp 0x2c6bda48 wm_adsp2_set_dspclk +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-wm-adsp 0x3c92eeba wm_adsp2_preloader_get +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-wm-adsp 0x42ed0e12 wm_adsp2_component_probe +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-wm-adsp 0x46118ee1 wm_adsp_event +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-wm-adsp 0x47ae8689 wm_adsp2_preloader_put +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-wm-adsp 0x4aee222b wm_adsp_compr_set_params +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-wm-adsp 0x4e57a0f1 wm_adsp_compr_trigger +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-wm-adsp 0x52c16479 wm_halo_wdt_expire +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-wm-adsp 0x5d808113 wm_adsp1_event +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-wm-adsp 0x80895f7e wm_adsp1_init +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-wm-adsp 0x84dbde2c wm_adsp2_component_remove +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-wm-adsp 0x853f93ff wm_adsp_compr_open +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-wm-adsp 0x914bf202 wm_adsp_fw_put +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-wm-adsp 0x9d911ce3 wm_adsp_read_ctl +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-wm-adsp 0xa9277f81 wm_adsp_fw_enum +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-wm-adsp 0xaa8e2cfd wm_halo_init +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-wm-adsp 0xab0dc7c2 wm_adsp_compr_pointer +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-wm-adsp 0xc22cc808 wm_adsp_compr_free +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-wm-adsp 0xc56d2bda wm_adsp2_remove +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-wm-adsp 0xce065340 wm_adsp2_init +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-wm-adsp 0xdd3c79ef wm_adsp2_bus_error +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-wm-adsp 0xea38ee07 wm_halo_bus_error +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-wm-adsp 0xea779a31 wm_adsp_fw_get +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-wm-adsp 0xf65d3af9 wm_adsp_early_event +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-wm-hubs 0x1254ac50 wm_hubs_hpl_mux +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-wm-hubs 0x2b88cfbb wm_hubs_hpr_mux +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-wm-hubs 0x5cd7eb9b wm_hubs_dcs_done +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-wm-hubs 0x757206d5 wm_hubs_spkmix_tlv +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-wm-hubs 0x78084eb2 wm_hubs_vmid_ena +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-wm-hubs 0x88c9f9e3 wm_hubs_update_class_w +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-wm-hubs 0x926cac29 wm_hubs_handle_analogue_pdata +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-wm-hubs 0xe15198fe wm_hubs_add_analogue_controls +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-wm-hubs 0xe2ba9748 wm_hubs_set_bias_level +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-wm-hubs 0xfa5b6a66 wm_hubs_add_analogue_routes +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-wm8804 0x165ff978 wm8804_regmap_config +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-wm8804 0x6a1cd770 wm8804_pm +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-wm8804 0x7a814602 wm8804_probe +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-wm8804 0xfdccb7dd wm8804_remove +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-wm8903 0x1b31165c wm8903_mic_detect +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-wm8962 0xa2f1cef0 wm8962_mic_detect +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-wm8994 0x83a03f3a wm8994_mic_detect +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-wm8994 0xb3e307bc wm8958_mic_detect +EXPORT_SYMBOL_GPL sound/soc/fsl/snd-soc-fsl-asrc 0x8a4a30c7 fsl_asrc_component +EXPORT_SYMBOL_GPL sound/soc/fsl/snd-soc-fsl-easrc 0xa2307070 fsl_easrc_get_dma_channel +EXPORT_SYMBOL_GPL sound/soc/fsl/snd-soc-imx-audmux 0x30693bb7 imx_audmux_v1_configure_port +EXPORT_SYMBOL_GPL sound/soc/fsl/snd-soc-imx-audmux 0x58631dab imx_audmux_v2_configure_port +EXPORT_SYMBOL_GPL sound/soc/generic/snd-soc-simple-card-utils 0x072cc77c asoc_simple_parse_widgets +EXPORT_SYMBOL_GPL sound/soc/generic/snd-soc-simple-card-utils 0x0f647be7 asoc_simple_shutdown +EXPORT_SYMBOL_GPL sound/soc/generic/snd-soc-simple-card-utils 0x34663147 asoc_simple_canonicalize_cpu +EXPORT_SYMBOL_GPL sound/soc/generic/snd-soc-simple-card-utils 0x3e4b1ef8 asoc_simple_parse_pin_switches +EXPORT_SYMBOL_GPL sound/soc/generic/snd-soc-simple-card-utils 0x5695a4b9 asoc_simple_startup +EXPORT_SYMBOL_GPL sound/soc/generic/snd-soc-simple-card-utils 0x6dad266a asoc_simple_clean_reference +EXPORT_SYMBOL_GPL sound/soc/generic/snd-soc-simple-card-utils 0x85854fab asoc_simple_set_dailink_name +EXPORT_SYMBOL_GPL sound/soc/generic/snd-soc-simple-card-utils 0x95b7f9b7 asoc_simple_init_priv +EXPORT_SYMBOL_GPL sound/soc/generic/snd-soc-simple-card-utils 0x9ffd661a asoc_simple_parse_routing +EXPORT_SYMBOL_GPL sound/soc/generic/snd-soc-simple-card-utils 0xaba5807d asoc_simple_parse_daifmt +EXPORT_SYMBOL_GPL sound/soc/generic/snd-soc-simple-card-utils 0xd054588d asoc_simple_hw_params +EXPORT_SYMBOL_GPL sound/soc/generic/snd-soc-simple-card-utils 0xdadbbfbe asoc_simple_parse_convert +EXPORT_SYMBOL_GPL sound/soc/generic/snd-soc-simple-card-utils 0xe506b1ba asoc_simple_canonicalize_platform +EXPORT_SYMBOL_GPL sound/soc/generic/snd-soc-simple-card-utils 0xe8864985 asoc_simple_dai_init +EXPORT_SYMBOL_GPL sound/soc/generic/snd-soc-simple-card-utils 0xe939b88d asoc_simple_parse_card_name +EXPORT_SYMBOL_GPL sound/soc/generic/snd-soc-simple-card-utils 0xea55fb73 asoc_simple_init_jack +EXPORT_SYMBOL_GPL sound/soc/generic/snd-soc-simple-card-utils 0xeb9b83ee asoc_simple_parse_clk +EXPORT_SYMBOL_GPL sound/soc/generic/snd-soc-simple-card-utils 0xf0365543 asoc_simple_be_hw_params_fixup +EXPORT_SYMBOL_GPL sound/soc/generic/snd-soc-simple-card-utils 0xf3bafb75 asoc_simple_convert_fixup +EXPORT_SYMBOL_GPL sound/soc/mediatek/common/snd-soc-mtk-common 0x1293210a mtk_afe_fe_ops +EXPORT_SYMBOL_GPL sound/soc/mediatek/common/snd-soc-mtk-common 0x1917fd69 mtk_memif_set_rate_substream +EXPORT_SYMBOL_GPL sound/soc/mediatek/common/snd-soc-mtk-common 0x3473ecee mtk_memif_set_format +EXPORT_SYMBOL_GPL sound/soc/mediatek/common/snd-soc-mtk-common 0x36eebdd6 mtk_afe_pcm_pointer +EXPORT_SYMBOL_GPL sound/soc/mediatek/common/snd-soc-mtk-common 0x4579d681 mtk_afe_combine_sub_dai +EXPORT_SYMBOL_GPL sound/soc/mediatek/common/snd-soc-mtk-common 0x4d82fca8 mtk_memif_set_addr +EXPORT_SYMBOL_GPL sound/soc/mediatek/common/snd-soc-mtk-common 0x52cff116 mtk_afe_pcm_platform +EXPORT_SYMBOL_GPL sound/soc/mediatek/common/snd-soc-mtk-common 0x54a4a144 mtk_afe_pcm_new +EXPORT_SYMBOL_GPL sound/soc/mediatek/common/snd-soc-mtk-common 0x5b5e11ea mtk_memif_set_rate +EXPORT_SYMBOL_GPL sound/soc/mediatek/common/snd-soc-mtk-common 0x73034f7b mtk_memif_set_enable +EXPORT_SYMBOL_GPL sound/soc/mediatek/common/snd-soc-mtk-common 0x77360e40 mtk_dynamic_irq_release +EXPORT_SYMBOL_GPL sound/soc/mediatek/common/snd-soc-mtk-common 0x88a19cdc mtk_afe_fe_hw_free +EXPORT_SYMBOL_GPL sound/soc/mediatek/common/snd-soc-mtk-common 0x8c79725e mtk_afe_suspend +EXPORT_SYMBOL_GPL sound/soc/mediatek/common/snd-soc-mtk-common 0x901f5c6d mtk_afe_fe_startup +EXPORT_SYMBOL_GPL sound/soc/mediatek/common/snd-soc-mtk-common 0x960eb624 mtk_afe_add_sub_dai_control +EXPORT_SYMBOL_GPL sound/soc/mediatek/common/snd-soc-mtk-common 0x9ca9aaab mtk_afe_fe_shutdown +EXPORT_SYMBOL_GPL sound/soc/mediatek/common/snd-soc-mtk-common 0xabf4ede0 mtk_afe_fe_prepare +EXPORT_SYMBOL_GPL sound/soc/mediatek/common/snd-soc-mtk-common 0xaf1418c8 mtk_memif_set_disable +EXPORT_SYMBOL_GPL sound/soc/mediatek/common/snd-soc-mtk-common 0xb5c3aad8 mtk_afe_resume +EXPORT_SYMBOL_GPL sound/soc/mediatek/common/snd-soc-mtk-common 0xcfe43792 mtk_dynamic_irq_acquire +EXPORT_SYMBOL_GPL sound/soc/mediatek/common/snd-soc-mtk-common 0xd4074d04 mtk_memif_set_channel +EXPORT_SYMBOL_GPL sound/soc/mediatek/common/snd-soc-mtk-common 0xd6ff983c mtk_afe_fe_trigger +EXPORT_SYMBOL_GPL sound/soc/mediatek/common/snd-soc-mtk-common 0xf8397058 mtk_afe_fe_hw_params +EXPORT_SYMBOL_GPL sound/soc/mediatek/common/snd-soc-mtk-common 0xff8b02b8 mtk_memif_set_pbuf_size +EXPORT_SYMBOL_GPL sound/soc/meson/snd-soc-meson-axg-fifo 0x02484fbf g12a_fifo_pcm_hw_params +EXPORT_SYMBOL_GPL sound/soc/meson/snd-soc-meson-axg-fifo 0x70799420 axg_fifo_pcm_hw_free +EXPORT_SYMBOL_GPL sound/soc/meson/snd-soc-meson-axg-fifo 0xa6ccecaf axg_fifo_pcm_open +EXPORT_SYMBOL_GPL sound/soc/meson/snd-soc-meson-axg-fifo 0xa9bcea99 axg_fifo_pcm_hw_params +EXPORT_SYMBOL_GPL sound/soc/meson/snd-soc-meson-axg-fifo 0xb9169867 axg_fifo_pcm_trigger +EXPORT_SYMBOL_GPL sound/soc/meson/snd-soc-meson-axg-fifo 0xe3e8a3d3 axg_fifo_probe +EXPORT_SYMBOL_GPL sound/soc/meson/snd-soc-meson-axg-fifo 0xe9834c0d axg_fifo_pcm_close +EXPORT_SYMBOL_GPL sound/soc/meson/snd-soc-meson-axg-fifo 0xf382965f axg_fifo_pcm_pointer +EXPORT_SYMBOL_GPL sound/soc/meson/snd-soc-meson-axg-fifo 0xfe2d933e axg_fifo_pcm_new +EXPORT_SYMBOL_GPL sound/soc/meson/snd-soc-meson-axg-tdm-formatter 0x107aecaa axg_tdm_formatter_event +EXPORT_SYMBOL_GPL sound/soc/meson/snd-soc-meson-axg-tdm-formatter 0x2db27767 axg_tdm_stream_stop +EXPORT_SYMBOL_GPL sound/soc/meson/snd-soc-meson-axg-tdm-formatter 0x679cd72f axg_tdm_stream_free +EXPORT_SYMBOL_GPL sound/soc/meson/snd-soc-meson-axg-tdm-formatter 0x9734c838 axg_tdm_stream_start +EXPORT_SYMBOL_GPL sound/soc/meson/snd-soc-meson-axg-tdm-formatter 0xb711a93e axg_tdm_stream_alloc +EXPORT_SYMBOL_GPL sound/soc/meson/snd-soc-meson-axg-tdm-formatter 0xc9c5a3a8 axg_tdm_formatter_probe +EXPORT_SYMBOL_GPL sound/soc/meson/snd-soc-meson-axg-tdm-formatter 0xeaf1cae4 axg_tdm_formatter_set_channel_masks +EXPORT_SYMBOL_GPL sound/soc/meson/snd-soc-meson-axg-tdm-interface 0xb1f4248e axg_tdm_set_tdm_slots +EXPORT_SYMBOL_GPL sound/soc/meson/snd-soc-meson-card-utils 0x3d190c6e meson_card_reallocate_links +EXPORT_SYMBOL_GPL sound/soc/meson/snd-soc-meson-card-utils 0x497ab048 meson_card_i2s_set_sysclk +EXPORT_SYMBOL_GPL sound/soc/meson/snd-soc-meson-card-utils 0x6818697a meson_card_parse_dai +EXPORT_SYMBOL_GPL sound/soc/meson/snd-soc-meson-card-utils 0x90c7ac56 meson_card_remove +EXPORT_SYMBOL_GPL sound/soc/meson/snd-soc-meson-card-utils 0xa161a623 meson_card_set_fe_link +EXPORT_SYMBOL_GPL sound/soc/meson/snd-soc-meson-card-utils 0xa207c7ce meson_card_probe +EXPORT_SYMBOL_GPL sound/soc/meson/snd-soc-meson-card-utils 0xcebd285c meson_card_set_be_link +EXPORT_SYMBOL_GPL sound/soc/meson/snd-soc-meson-card-utils 0xd808406f meson_card_parse_daifmt +EXPORT_SYMBOL_GPL sound/soc/meson/snd-soc-meson-codec-glue 0x0d9ef9fa meson_codec_glue_input_dai_remove +EXPORT_SYMBOL_GPL sound/soc/meson/snd-soc-meson-codec-glue 0x5c646967 meson_codec_glue_input_hw_params +EXPORT_SYMBOL_GPL sound/soc/meson/snd-soc-meson-codec-glue 0x757cd745 meson_codec_glue_input_get_data +EXPORT_SYMBOL_GPL sound/soc/meson/snd-soc-meson-codec-glue 0xbb1ce73d meson_codec_glue_output_startup +EXPORT_SYMBOL_GPL sound/soc/meson/snd-soc-meson-codec-glue 0xbc9a4057 meson_codec_glue_input_dai_probe +EXPORT_SYMBOL_GPL sound/soc/meson/snd-soc-meson-codec-glue 0xbee23f4b meson_codec_glue_input_set_fmt +EXPORT_SYMBOL_GPL sound/soc/qcom/qdsp6/q6adm 0x04e52732 q6adm_open +EXPORT_SYMBOL_GPL sound/soc/qcom/qdsp6/q6adm 0x28421460 q6adm_get_copp_id +EXPORT_SYMBOL_GPL sound/soc/qcom/qdsp6/q6adm 0x4d32cf32 q6adm_close +EXPORT_SYMBOL_GPL sound/soc/qcom/qdsp6/q6adm 0x79301e6f q6adm_matrix_map +EXPORT_SYMBOL_GPL sound/soc/qcom/qdsp6/q6afe 0x369b6eeb q6afe_port_put +EXPORT_SYMBOL_GPL sound/soc/qcom/qdsp6/q6afe 0x3997e13a q6afe_is_rx_port +EXPORT_SYMBOL_GPL sound/soc/qcom/qdsp6/q6afe 0x3b16d6e7 q6afe_port_stop +EXPORT_SYMBOL_GPL sound/soc/qcom/qdsp6/q6afe 0x47955a83 q6afe_port_get_from_id +EXPORT_SYMBOL_GPL sound/soc/qcom/qdsp6/q6afe 0x498d993b q6afe_get_port_id +EXPORT_SYMBOL_GPL sound/soc/qcom/qdsp6/q6afe 0x5332304f q6afe_slim_port_prepare +EXPORT_SYMBOL_GPL sound/soc/qcom/qdsp6/q6afe 0x7df60063 q6afe_port_set_sysclk +EXPORT_SYMBOL_GPL sound/soc/qcom/qdsp6/q6afe 0xae809786 q6afe_hdmi_port_prepare +EXPORT_SYMBOL_GPL sound/soc/qcom/qdsp6/q6afe 0xd4523c59 q6afe_i2s_port_prepare +EXPORT_SYMBOL_GPL sound/soc/qcom/qdsp6/q6afe 0xe45246a8 q6afe_port_start +EXPORT_SYMBOL_GPL sound/soc/qcom/qdsp6/q6afe 0xfaf22370 q6afe_tdm_port_prepare +EXPORT_SYMBOL_GPL sound/soc/qcom/qdsp6/q6asm 0x01d71b3d q6asm_stream_media_format_block_wma_v9 +EXPORT_SYMBOL_GPL sound/soc/qcom/qdsp6/q6asm 0x151ae9d4 q6asm_cmd +EXPORT_SYMBOL_GPL sound/soc/qcom/qdsp6/q6asm 0x40299233 q6asm_run +EXPORT_SYMBOL_GPL sound/soc/qcom/qdsp6/q6asm 0x5382edf1 q6asm_open_read +EXPORT_SYMBOL_GPL sound/soc/qcom/qdsp6/q6asm 0x689e402d q6asm_stream_media_format_block_alac +EXPORT_SYMBOL_GPL sound/soc/qcom/qdsp6/q6asm 0x68db31e2 q6asm_unmap_memory_regions +EXPORT_SYMBOL_GPL sound/soc/qcom/qdsp6/q6asm 0x6eb89e95 q6asm_media_format_block_multi_ch_pcm +EXPORT_SYMBOL_GPL sound/soc/qcom/qdsp6/q6asm 0x720ce413 q6asm_stream_media_format_block_flac +EXPORT_SYMBOL_GPL sound/soc/qcom/qdsp6/q6asm 0x7353d9dd q6asm_cmd_nowait +EXPORT_SYMBOL_GPL sound/soc/qcom/qdsp6/q6asm 0x857330c9 q6asm_write_async +EXPORT_SYMBOL_GPL sound/soc/qcom/qdsp6/q6asm 0xa06e9828 q6asm_stream_media_format_block_ape +EXPORT_SYMBOL_GPL sound/soc/qcom/qdsp6/q6asm 0xb4f98cb3 q6asm_map_memory_regions +EXPORT_SYMBOL_GPL sound/soc/qcom/qdsp6/q6asm 0xc5a116a4 q6asm_get_session_id +EXPORT_SYMBOL_GPL sound/soc/qcom/qdsp6/q6asm 0xcc4952e4 q6asm_audio_client_free +EXPORT_SYMBOL_GPL sound/soc/qcom/qdsp6/q6asm 0xd599e50f q6asm_enc_cfg_blk_pcm_format_support +EXPORT_SYMBOL_GPL sound/soc/qcom/qdsp6/q6asm 0xdbedfcd9 q6asm_run_nowait +EXPORT_SYMBOL_GPL sound/soc/qcom/qdsp6/q6asm 0xe060c0a1 q6asm_read +EXPORT_SYMBOL_GPL sound/soc/qcom/qdsp6/q6asm 0xe1531577 q6asm_open_write +EXPORT_SYMBOL_GPL sound/soc/qcom/qdsp6/q6asm 0xf0973788 q6asm_audio_client_alloc +EXPORT_SYMBOL_GPL sound/soc/qcom/qdsp6/q6asm 0xf40aaabe q6asm_stream_media_format_block_wma_v10 +EXPORT_SYMBOL_GPL sound/soc/qcom/qdsp6/q6core 0x7e52e977 q6core_is_adsp_ready +EXPORT_SYMBOL_GPL sound/soc/qcom/qdsp6/q6core 0x9b02ea0d q6core_get_svc_api_info +EXPORT_SYMBOL_GPL sound/soc/qcom/qdsp6/q6dsp-common 0x17142e58 q6dsp_map_channels +EXPORT_SYMBOL_GPL sound/soc/qcom/qdsp6/q6routing 0x5b75f756 q6routing_stream_open +EXPORT_SYMBOL_GPL sound/soc/qcom/qdsp6/q6routing 0xa7a64259 q6routing_stream_close +EXPORT_SYMBOL_GPL sound/soc/qcom/snd-soc-lpass-cpu 0x05be590c asoc_qcom_lpass_cpu_platform_remove +EXPORT_SYMBOL_GPL sound/soc/qcom/snd-soc-lpass-cpu 0x078c746c asoc_qcom_lpass_cpu_dai_probe +EXPORT_SYMBOL_GPL sound/soc/qcom/snd-soc-lpass-cpu 0x64b81f06 asoc_qcom_lpass_cpu_platform_probe +EXPORT_SYMBOL_GPL sound/soc/qcom/snd-soc-lpass-cpu 0xd4872a9b asoc_qcom_lpass_cpu_dai_ops +EXPORT_SYMBOL_GPL sound/soc/qcom/snd-soc-lpass-platform 0x78482eab asoc_qcom_lpass_platform_register +EXPORT_SYMBOL_GPL sound/soc/rockchip/snd-soc-rockchip-pcm 0xce76f9a2 rockchip_pcm_platform_register +EXPORT_SYMBOL_GPL sound/soc/samsung/snd-soc-idma 0x14e9ba13 idma_reg_addr_init +EXPORT_SYMBOL_GPL sound/soc/samsung/snd-soc-s3c-dma 0x2ea45d47 samsung_asoc_dma_platform_register +EXPORT_SYMBOL_GPL sound/soc/sof/snd-sof 0x06df4720 snd_sof_debugfs_io_item +EXPORT_SYMBOL_GPL sound/soc/sof/snd-sof 0x21ce51f1 snd_sof_free_debug +EXPORT_SYMBOL_GPL sound/soc/sof/snd-sof 0xbe6ec49b snd_sof_dbg_init +EXPORT_SYMBOL_GPL sound/soc/sof/snd-sof 0xf855a03f snd_sof_debugfs_buf_item +EXPORT_SYMBOL_GPL sound/soc/ti/snd-soc-omap-mcbsp 0x6e7eae98 omap_mcbsp_st_add_controls +EXPORT_SYMBOL_GPL sound/soc/ti/snd-soc-ti-edma 0x91e2dde0 edma_pcm_platform_register +EXPORT_SYMBOL_GPL sound/soc/ti/snd-soc-ti-sdma 0x6e73e215 sdma_pcm_platform_register +EXPORT_SYMBOL_GPL sound/soc/ti/snd-soc-ti-udma 0xf4e6cf2a udma_pcm_platform_register +EXPORT_SYMBOL_GPL sound/soc/uniphier/snd-soc-uniphier-aio-cpu 0x26b351b8 uniphier_aiodma_soc_register_platform +EXPORT_SYMBOL_GPL sound/soc/uniphier/snd-soc-uniphier-aio-cpu 0x2a9e411b uniphier_aio_remove +EXPORT_SYMBOL_GPL sound/soc/uniphier/snd-soc-uniphier-aio-cpu 0x2bdc8f3a uniphier_aio_probe +EXPORT_SYMBOL_GPL sound/soc/uniphier/snd-soc-uniphier-aio-cpu 0x33f2125c uniphier_aio_dai_probe +EXPORT_SYMBOL_GPL sound/soc/uniphier/snd-soc-uniphier-aio-cpu 0x9ac34820 uniphier_aio_dai_remove +EXPORT_SYMBOL_GPL sound/soc/uniphier/snd-soc-uniphier-aio-cpu 0xd241b709 uniphier_aio_spdif_ops +EXPORT_SYMBOL_GPL sound/soc/uniphier/snd-soc-uniphier-aio-cpu 0xf35f4e75 uniphier_aio_i2s_ops +EXPORT_SYMBOL_GPL sound/usb/line6/snd-usb-line6 0x00074551 line6_init_midi +EXPORT_SYMBOL_GPL sound/usb/line6/snd-usb-line6 0x0b8df19d line6_send_raw_message_async +EXPORT_SYMBOL_GPL sound/usb/line6/snd-usb-line6 0x156e0fd7 line6_version_request_async +EXPORT_SYMBOL_GPL sound/usb/line6/snd-usb-line6 0x202a1b1b line6_midi_id +EXPORT_SYMBOL_GPL sound/usb/line6/snd-usb-line6 0x2662e5f5 line6_alloc_sysex_buffer +EXPORT_SYMBOL_GPL sound/usb/line6/snd-usb-line6 0x3e5d6f6a line6_pcm_acquire +EXPORT_SYMBOL_GPL sound/usb/line6/snd-usb-line6 0x4f64c5d6 line6_resume +EXPORT_SYMBOL_GPL sound/usb/line6/snd-usb-line6 0x684a8ae7 line6_suspend +EXPORT_SYMBOL_GPL sound/usb/line6/snd-usb-line6 0x706e0e9b line6_probe +EXPORT_SYMBOL_GPL sound/usb/line6/snd-usb-line6 0x71cb701f line6_init_pcm +EXPORT_SYMBOL_GPL sound/usb/line6/snd-usb-line6 0x72e56f13 line6_send_sysex_message +EXPORT_SYMBOL_GPL sound/usb/line6/snd-usb-line6 0x7de87c37 line6_read_data +EXPORT_SYMBOL_GPL sound/usb/line6/snd-usb-line6 0x801e64d8 line6_disconnect +EXPORT_SYMBOL_GPL sound/usb/line6/snd-usb-line6 0x93c2652b line6_pcm_release +EXPORT_SYMBOL_GPL sound/usb/line6/snd-usb-line6 0xadb99693 line6_write_data +EXPORT_SYMBOL_GPL sound/usb/line6/snd-usb-line6 0xf7aa0eed line6_read_serial_number +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 0x002ee959 get_current_tty +EXPORT_SYMBOL_GPL vmlinux 0x0038a13d platform_get_irq +EXPORT_SYMBOL_GPL vmlinux 0x003d0cf9 usb_gadget_vbus_connect +EXPORT_SYMBOL_GPL vmlinux 0x00446bc1 bus_get_device_klist +EXPORT_SYMBOL_GPL vmlinux 0x00513f58 get_timespec64 +EXPORT_SYMBOL_GPL vmlinux 0x00541e85 ata_sff_drain_fifo +EXPORT_SYMBOL_GPL vmlinux 0x0055e120 usb_gadget_frame_number +EXPORT_SYMBOL_GPL vmlinux 0x00632780 work_busy +EXPORT_SYMBOL_GPL vmlinux 0x006726da serial8250_em485_destroy +EXPORT_SYMBOL_GPL vmlinux 0x006b585f devm_mdiobus_alloc_size +EXPORT_SYMBOL_GPL vmlinux 0x006c58d9 gpiod_direction_input +EXPORT_SYMBOL_GPL vmlinux 0x006c5ca9 platform_device_unregister +EXPORT_SYMBOL_GPL vmlinux 0x006ffe23 edac_get_sysfs_subsys +EXPORT_SYMBOL_GPL vmlinux 0x007ef64b sk_attach_filter +EXPORT_SYMBOL_GPL vmlinux 0x008ce1d1 vchan_init +EXPORT_SYMBOL_GPL vmlinux 0x00a4a7a0 phy_save_page +EXPORT_SYMBOL_GPL vmlinux 0x00d4e586 percpu_up_write +EXPORT_SYMBOL_GPL vmlinux 0x00ed35fd wm831x_regmap_config +EXPORT_SYMBOL_GPL vmlinux 0x00eff019 phy_create_lookup +EXPORT_SYMBOL_GPL vmlinux 0x00f2095a snd_soc_dapm_new_controls +EXPORT_SYMBOL_GPL vmlinux 0x00f91524 gpiochip_irq_map +EXPORT_SYMBOL_GPL vmlinux 0x01087715 iommu_sva_bind_device +EXPORT_SYMBOL_GPL vmlinux 0x0111d90f iommu_detach_device +EXPORT_SYMBOL_GPL vmlinux 0x0116eaa3 usb_disable_autosuspend +EXPORT_SYMBOL_GPL vmlinux 0x0125d36c virtqueue_add_outbuf +EXPORT_SYMBOL_GPL vmlinux 0x0125f4f4 fwnode_get_phy_mode +EXPORT_SYMBOL_GPL vmlinux 0x0128b907 xhci_gen_setup +EXPORT_SYMBOL_GPL vmlinux 0x01306559 cpufreq_generic_init +EXPORT_SYMBOL_GPL vmlinux 0x01350889 devlink_dpipe_table_register +EXPORT_SYMBOL_GPL vmlinux 0x0150dcf4 max8997_bulk_write +EXPORT_SYMBOL_GPL vmlinux 0x015c68d4 ata_do_set_mode +EXPORT_SYMBOL_GPL vmlinux 0x0170cb6c efivar_work +EXPORT_SYMBOL_GPL vmlinux 0x017360d4 tpm_transmit_cmd +EXPORT_SYMBOL_GPL vmlinux 0x018278fc tty_find_polling_driver +EXPORT_SYMBOL_GPL vmlinux 0x0183f196 wm8997_aod +EXPORT_SYMBOL_GPL vmlinux 0x01866a57 ezx_pcap_set_bits +EXPORT_SYMBOL_GPL vmlinux 0x018b3ff1 sdhci_add_host +EXPORT_SYMBOL_GPL vmlinux 0x01a34d3f omap_iommu_save_ctx +EXPORT_SYMBOL_GPL vmlinux 0x01b12bfb usb_ep_free_request +EXPORT_SYMBOL_GPL vmlinux 0x01c0e85d pci_generic_config_read32 +EXPORT_SYMBOL_GPL vmlinux 0x01c6cb0c cpu_cluster_pm_enter +EXPORT_SYMBOL_GPL vmlinux 0x01d747f5 percpu_ref_exit +EXPORT_SYMBOL_GPL vmlinux 0x01e1a8de kgdb_breakpoint +EXPORT_SYMBOL_GPL vmlinux 0x01f4cac4 mmc_pwrseq_register +EXPORT_SYMBOL_GPL vmlinux 0x020be0c3 pwm_request +EXPORT_SYMBOL_GPL vmlinux 0x021ac74f crypto_stats_akcipher_encrypt +EXPORT_SYMBOL_GPL vmlinux 0x021e2405 md_new_event +EXPORT_SYMBOL_GPL vmlinux 0x0225578b irq_domain_free_fwnode +EXPORT_SYMBOL_GPL vmlinux 0x02328c76 snd_soc_of_put_dai_link_codecs +EXPORT_SYMBOL_GPL vmlinux 0x02394899 play_idle_precise +EXPORT_SYMBOL_GPL vmlinux 0x024bc558 of_pm_clk_add_clk +EXPORT_SYMBOL_GPL vmlinux 0x024db336 iommu_detach_group +EXPORT_SYMBOL_GPL vmlinux 0x02560e9f fuse_dev_operations +EXPORT_SYMBOL_GPL vmlinux 0x02581a03 sata_pmp_qc_defer_cmd_switch +EXPORT_SYMBOL_GPL vmlinux 0x02657cc4 mtk_mmsys_ddp_disconnect +EXPORT_SYMBOL_GPL vmlinux 0x0265d3ce pci_reset_function_locked +EXPORT_SYMBOL_GPL vmlinux 0x026f3380 btree_lookup +EXPORT_SYMBOL_GPL vmlinux 0x0277ae54 crypto_hash_walk_first +EXPORT_SYMBOL_GPL vmlinux 0x0283441c usb_role_switch_find_by_fwnode +EXPORT_SYMBOL_GPL vmlinux 0x02853fd0 ata_sas_queuecmd +EXPORT_SYMBOL_GPL vmlinux 0x028bfb5e inode_dax +EXPORT_SYMBOL_GPL vmlinux 0x02b24cd3 __tracepoint_cpu_idle +EXPORT_SYMBOL_GPL vmlinux 0x02b5fe52 spi_write_then_read +EXPORT_SYMBOL_GPL vmlinux 0x02bab495 ehci_resume +EXPORT_SYMBOL_GPL vmlinux 0x02ea61a6 dax_flush +EXPORT_SYMBOL_GPL vmlinux 0x02fc6431 fwnode_property_match_string +EXPORT_SYMBOL_GPL vmlinux 0x02fea672 noop_set_page_dirty +EXPORT_SYMBOL_GPL vmlinux 0x0312b3b0 reset_controller_add_lookup +EXPORT_SYMBOL_GPL vmlinux 0x03164d73 dw_pcie_find_capability +EXPORT_SYMBOL_GPL vmlinux 0x031fe17e fwnode_property_read_string_array +EXPORT_SYMBOL_GPL vmlinux 0x0321cdbf of_alias_get_highest_id +EXPORT_SYMBOL_GPL vmlinux 0x03315f0c btree_destroy +EXPORT_SYMBOL_GPL vmlinux 0x03372453 force_irqthreads +EXPORT_SYMBOL_GPL vmlinux 0x033832c7 usb_amd_hang_symptom_quirk +EXPORT_SYMBOL_GPL vmlinux 0x033c6695 dev_pm_qos_remove_request +EXPORT_SYMBOL_GPL vmlinux 0x0343bdf1 __i2c_board_list +EXPORT_SYMBOL_GPL vmlinux 0x0349e160 of_hwspin_lock_get_id_byname +EXPORT_SYMBOL_GPL vmlinux 0x036d8e9b klist_add_tail +EXPORT_SYMBOL_GPL vmlinux 0x036f6643 pci_cfg_access_unlock +EXPORT_SYMBOL_GPL vmlinux 0x03746d47 usb_reset_endpoint +EXPORT_SYMBOL_GPL vmlinux 0x0375ad90 rio_unregister_scan +EXPORT_SYMBOL_GPL vmlinux 0x03798181 usb_kill_urb +EXPORT_SYMBOL_GPL vmlinux 0x037e2186 spi_busnum_to_master +EXPORT_SYMBOL_GPL vmlinux 0x037f2b90 serdev_device_remove +EXPORT_SYMBOL_GPL vmlinux 0x037fc60e usb_phy_generic_register +EXPORT_SYMBOL_GPL vmlinux 0x03952887 ktime_add_safe +EXPORT_SYMBOL_GPL vmlinux 0x039d8bd6 sock_zerocopy_put +EXPORT_SYMBOL_GPL vmlinux 0x03a2d958 perf_pmu_migrate_context +EXPORT_SYMBOL_GPL vmlinux 0x03bddb24 regulator_set_mode +EXPORT_SYMBOL_GPL vmlinux 0x03d7892b dmaengine_desc_set_metadata_len +EXPORT_SYMBOL_GPL vmlinux 0x03f50b09 dev_pm_enable_wake_irq +EXPORT_SYMBOL_GPL vmlinux 0x03f86c2f snd_soc_component_disable_pin_unlocked +EXPORT_SYMBOL_GPL vmlinux 0x03f94125 rdev_get_dev +EXPORT_SYMBOL_GPL vmlinux 0x0408c536 blk_mq_make_request +EXPORT_SYMBOL_GPL vmlinux 0x040ba2d3 iommu_attach_group +EXPORT_SYMBOL_GPL vmlinux 0x04127caa of_genpd_add_provider_onecell +EXPORT_SYMBOL_GPL vmlinux 0x041c71fa shmem_read_mapping_page_gfp +EXPORT_SYMBOL_GPL vmlinux 0x041f9cc8 __devm_regmap_init +EXPORT_SYMBOL_GPL vmlinux 0x042613c4 genphy_c45_restart_aneg +EXPORT_SYMBOL_GPL vmlinux 0x0456995b sysfs_unbreak_active_protection +EXPORT_SYMBOL_GPL vmlinux 0x046106bb iommu_aux_get_pasid +EXPORT_SYMBOL_GPL vmlinux 0x0465a073 regmap_reg_in_ranges +EXPORT_SYMBOL_GPL vmlinux 0x046f359e of_overlay_notifier_register +EXPORT_SYMBOL_GPL vmlinux 0x0473a014 pinctrl_dev_get_devname +EXPORT_SYMBOL_GPL vmlinux 0x047abefa dm_internal_suspend_fast +EXPORT_SYMBOL_GPL vmlinux 0x047f9c54 ata_sff_exec_command +EXPORT_SYMBOL_GPL vmlinux 0x04898a00 xdp_rxq_info_unreg_mem_model +EXPORT_SYMBOL_GPL vmlinux 0x048b5f8d twl4030_audio_get_mclk +EXPORT_SYMBOL_GPL vmlinux 0x048b71af mddev_suspend +EXPORT_SYMBOL_GPL vmlinux 0x048bfb1c pci_epc_put +EXPORT_SYMBOL_GPL vmlinux 0x04917a59 snd_soc_new_ac97_component +EXPORT_SYMBOL_GPL vmlinux 0x0492e898 arizona_set_irq_wake +EXPORT_SYMBOL_GPL vmlinux 0x04a6f637 crypto_larval_kill +EXPORT_SYMBOL_GPL vmlinux 0x04a7f6e6 devm_pci_epc_destroy +EXPORT_SYMBOL_GPL vmlinux 0x04ae4635 trace_handle_return +EXPORT_SYMBOL_GPL vmlinux 0x04b3affa mmc_switch +EXPORT_SYMBOL_GPL vmlinux 0x04c2229f tcp_sendmsg_locked +EXPORT_SYMBOL_GPL vmlinux 0x04c2b30d espintcp_queue_out +EXPORT_SYMBOL_GPL vmlinux 0x04c4f603 mpi_get_buffer +EXPORT_SYMBOL_GPL vmlinux 0x04d25697 hwspin_lock_get_id +EXPORT_SYMBOL_GPL vmlinux 0x04d77138 pm_genpd_opp_to_performance_state +EXPORT_SYMBOL_GPL vmlinux 0x04dc754a mtd_get_user_prot_info +EXPORT_SYMBOL_GPL vmlinux 0x04e1b99f snd_pcm_std_chmaps +EXPORT_SYMBOL_GPL vmlinux 0x04f0e8e4 gpiod_get_raw_value_cansleep +EXPORT_SYMBOL_GPL vmlinux 0x0506f636 anon_inode_getfile +EXPORT_SYMBOL_GPL vmlinux 0x05114120 devlink_params_register +EXPORT_SYMBOL_GPL vmlinux 0x05152554 nf_hook_entries_insert_raw +EXPORT_SYMBOL_GPL vmlinux 0x052c9aed ktime_get_real_fast_ns +EXPORT_SYMBOL_GPL vmlinux 0x052ef62d usb_choose_configuration +EXPORT_SYMBOL_GPL vmlinux 0x052f3181 fuse_send_init +EXPORT_SYMBOL_GPL vmlinux 0x05332c81 led_update_brightness +EXPORT_SYMBOL_GPL vmlinux 0x054bf778 snd_soc_info_enum_double +EXPORT_SYMBOL_GPL vmlinux 0x054e550b kernel_halt +EXPORT_SYMBOL_GPL vmlinux 0x05523b80 crypto_remove_spawns +EXPORT_SYMBOL_GPL vmlinux 0x055d3241 pci_find_ht_capability +EXPORT_SYMBOL_GPL vmlinux 0x055fab44 serdev_device_open +EXPORT_SYMBOL_GPL vmlinux 0x05610897 of_changeset_destroy +EXPORT_SYMBOL_GPL vmlinux 0x056713e9 pwm_set_chip_data +EXPORT_SYMBOL_GPL vmlinux 0x0569895f regmap_multi_reg_write_bypassed +EXPORT_SYMBOL_GPL vmlinux 0x0575db47 ata_sas_port_stop +EXPORT_SYMBOL_GPL vmlinux 0x058b582a vt_get_leds +EXPORT_SYMBOL_GPL vmlinux 0x059a70f5 netdev_rx_handler_register +EXPORT_SYMBOL_GPL vmlinux 0x05a69dbf usb_unlocked_disable_lpm +EXPORT_SYMBOL_GPL vmlinux 0x05a75fbd crypto_spawn_tfm +EXPORT_SYMBOL_GPL vmlinux 0x05b7e6fa snd_soc_resume +EXPORT_SYMBOL_GPL vmlinux 0x05c8787a pinctrl_dev_get_drvdata +EXPORT_SYMBOL_GPL vmlinux 0x05d775cf gpiod_get_index_optional +EXPORT_SYMBOL_GPL vmlinux 0x05ea243b skb_segment +EXPORT_SYMBOL_GPL vmlinux 0x05fb3c03 crypto_register_templates +EXPORT_SYMBOL_GPL vmlinux 0x05fb4217 pci_epc_destroy +EXPORT_SYMBOL_GPL vmlinux 0x05fd5a13 ip6_datagram_release_cb +EXPORT_SYMBOL_GPL vmlinux 0x06122337 atomic_notifier_chain_unregister +EXPORT_SYMBOL_GPL vmlinux 0x06159839 amba_device_alloc +EXPORT_SYMBOL_GPL vmlinux 0x0618b310 put_pid_ns +EXPORT_SYMBOL_GPL vmlinux 0x06209f49 phy_lookup_setting +EXPORT_SYMBOL_GPL vmlinux 0x0625deae mdiobus_modify +EXPORT_SYMBOL_GPL vmlinux 0x0626da5f od_unregister_powersave_bias_handler +EXPORT_SYMBOL_GPL vmlinux 0x063654ad pci_epf_free_space +EXPORT_SYMBOL_GPL vmlinux 0x064db9a5 mark_mounts_for_expiry +EXPORT_SYMBOL_GPL vmlinux 0x0650bb65 input_ff_erase +EXPORT_SYMBOL_GPL vmlinux 0x0660ede1 mbox_send_message +EXPORT_SYMBOL_GPL vmlinux 0x06658ade rt_mutex_destroy +EXPORT_SYMBOL_GPL vmlinux 0x0668fa64 ata_qc_get_active +EXPORT_SYMBOL_GPL vmlinux 0x066be2c9 sk_detach_filter +EXPORT_SYMBOL_GPL vmlinux 0x067f4308 skb_splice_bits +EXPORT_SYMBOL_GPL vmlinux 0x0689637c pci_epc_mem_init +EXPORT_SYMBOL_GPL vmlinux 0x0692f80c free_vm_area +EXPORT_SYMBOL_GPL vmlinux 0x06acdf9d devm_regulator_get_exclusive +EXPORT_SYMBOL_GPL vmlinux 0x06b53bd2 memalloc_socks_key +EXPORT_SYMBOL_GPL vmlinux 0x06b5a5b0 pci_disable_sriov +EXPORT_SYMBOL_GPL vmlinux 0x06cca30b ring_buffer_record_off +EXPORT_SYMBOL_GPL vmlinux 0x06e1ec1f pinmux_generic_get_function_count +EXPORT_SYMBOL_GPL vmlinux 0x06e92aea nl_table_lock +EXPORT_SYMBOL_GPL vmlinux 0x06ec03e2 irq_setup_alt_chip +EXPORT_SYMBOL_GPL vmlinux 0x0705b4ab msi_desc_to_pci_sysdata +EXPORT_SYMBOL_GPL vmlinux 0x070f9df3 regcache_mark_dirty +EXPORT_SYMBOL_GPL vmlinux 0x07242d92 put_dax +EXPORT_SYMBOL_GPL vmlinux 0x0729cd54 devlink_reload_enable +EXPORT_SYMBOL_GPL vmlinux 0x072a7ca6 snd_soc_limit_volume +EXPORT_SYMBOL_GPL vmlinux 0x0738e920 crypto_alloc_skcipher +EXPORT_SYMBOL_GPL vmlinux 0x07476cd9 fib_info_nh_uses_dev +EXPORT_SYMBOL_GPL vmlinux 0x07618377 security_path_truncate +EXPORT_SYMBOL_GPL vmlinux 0x076356e7 sfp_may_have_phy +EXPORT_SYMBOL_GPL vmlinux 0x07646cee ata_tf_to_fis +EXPORT_SYMBOL_GPL vmlinux 0x0764fb00 cpufreq_unregister_governor +EXPORT_SYMBOL_GPL vmlinux 0x076fc079 ip6_update_pmtu +EXPORT_SYMBOL_GPL vmlinux 0x0771d6d1 usb_unpoison_urb +EXPORT_SYMBOL_GPL vmlinux 0x077fa2f0 handle_mm_fault +EXPORT_SYMBOL_GPL vmlinux 0x079b3a27 regulator_get_bypass_regmap +EXPORT_SYMBOL_GPL vmlinux 0x07a547f2 serial8250_init_port +EXPORT_SYMBOL_GPL vmlinux 0x07b21f85 kdb_get_kbd_char +EXPORT_SYMBOL_GPL vmlinux 0x07b52e38 rtnl_unregister +EXPORT_SYMBOL_GPL vmlinux 0x07b9e56c rockchip_pcie_init_port +EXPORT_SYMBOL_GPL vmlinux 0x07bd95b0 snd_ac97_reset +EXPORT_SYMBOL_GPL vmlinux 0x07be6905 net_inc_egress_queue +EXPORT_SYMBOL_GPL vmlinux 0x07bf29cd get_cached_msi_msg +EXPORT_SYMBOL_GPL vmlinux 0x07c40968 rtnl_link_unregister +EXPORT_SYMBOL_GPL vmlinux 0x07d02594 extcon_sync +EXPORT_SYMBOL_GPL vmlinux 0x07f031b1 usb_phy_set_charger_state +EXPORT_SYMBOL_GPL vmlinux 0x07f159f4 spi_mem_supports_op +EXPORT_SYMBOL_GPL vmlinux 0x07f87733 gpiochip_unlock_as_irq +EXPORT_SYMBOL_GPL vmlinux 0x07fa055e scmi_protocol_unregister +EXPORT_SYMBOL_GPL vmlinux 0x07fb2a73 trace_define_field +EXPORT_SYMBOL_GPL vmlinux 0x08033ed7 ata_msleep +EXPORT_SYMBOL_GPL vmlinux 0x08135613 dax_write_cache +EXPORT_SYMBOL_GPL vmlinux 0x0828d609 mc146818_get_time +EXPORT_SYMBOL_GPL vmlinux 0x0838015b cdrom_multisession +EXPORT_SYMBOL_GPL vmlinux 0x086f1bb5 devfreq_event_get_event +EXPORT_SYMBOL_GPL vmlinux 0x087f5dc5 wm831x_of_match +EXPORT_SYMBOL_GPL vmlinux 0x08aeed7f sbitmap_queue_init_node +EXPORT_SYMBOL_GPL vmlinux 0x08c73234 __tracepoint_rpm_suspend +EXPORT_SYMBOL_GPL vmlinux 0x08c8a21e cpuidle_register_device +EXPORT_SYMBOL_GPL vmlinux 0x08d3bf02 trace_vprintk +EXPORT_SYMBOL_GPL vmlinux 0x08e6df51 usb_get_intf +EXPORT_SYMBOL_GPL vmlinux 0x08e94300 __tracepoint_br_fdb_update +EXPORT_SYMBOL_GPL vmlinux 0x08fada32 devlink_region_snapshot_id_put +EXPORT_SYMBOL_GPL vmlinux 0x0905f63c rio_request_inb_dbell +EXPORT_SYMBOL_GPL vmlinux 0x091eb9b4 round_jiffies +EXPORT_SYMBOL_GPL vmlinux 0x0926e4dd cpufreq_freq_attr_scaling_boost_freqs +EXPORT_SYMBOL_GPL vmlinux 0x092803f2 fib_nl_delrule +EXPORT_SYMBOL_GPL vmlinux 0x092a43fb driver_find +EXPORT_SYMBOL_GPL vmlinux 0x092fd517 of_reset_control_array_get +EXPORT_SYMBOL_GPL vmlinux 0x09492220 musb_mailbox +EXPORT_SYMBOL_GPL vmlinux 0x094fb1a4 i2c_generic_scl_recovery +EXPORT_SYMBOL_GPL vmlinux 0x0956b414 idr_alloc_u32 +EXPORT_SYMBOL_GPL vmlinux 0x09615a9c ip_route_output_key_hash +EXPORT_SYMBOL_GPL vmlinux 0x09860d58 regulator_set_voltage_rdev +EXPORT_SYMBOL_GPL vmlinux 0x09968a2a virtqueue_get_buf_ctx +EXPORT_SYMBOL_GPL vmlinux 0x099e694d snd_pcm_stop_xrun +EXPORT_SYMBOL_GPL vmlinux 0x09a38632 of_reserved_mem_lookup +EXPORT_SYMBOL_GPL vmlinux 0x09b53e14 interval_tree_remove +EXPORT_SYMBOL_GPL vmlinux 0x09c70e26 fsl8250_handle_irq +EXPORT_SYMBOL_GPL vmlinux 0x09c94ca7 irq_create_mapping_affinity +EXPORT_SYMBOL_GPL vmlinux 0x09d71719 fat_update_time +EXPORT_SYMBOL_GPL vmlinux 0x09e913c1 snd_pcm_alt_chmaps +EXPORT_SYMBOL_GPL vmlinux 0x0a033a00 serial8250_rpm_get_tx +EXPORT_SYMBOL_GPL vmlinux 0x0a1227c0 pm_clk_add +EXPORT_SYMBOL_GPL vmlinux 0x0a24514a dev_pm_opp_find_level_exact +EXPORT_SYMBOL_GPL vmlinux 0x0a27c995 of_pci_address_to_resource +EXPORT_SYMBOL_GPL vmlinux 0x0a372e40 trace_array_printk +EXPORT_SYMBOL_GPL vmlinux 0x0a425c27 snd_soc_of_get_slot_mask +EXPORT_SYMBOL_GPL vmlinux 0x0a4450d3 bd_link_disk_holder +EXPORT_SYMBOL_GPL vmlinux 0x0a462484 alloc_empty_file +EXPORT_SYMBOL_GPL vmlinux 0x0a51e7d4 lwtunnel_fill_encap +EXPORT_SYMBOL_GPL vmlinux 0x0a6add2a dev_pm_opp_find_freq_ceil +EXPORT_SYMBOL_GPL vmlinux 0x0a6c4041 cn_netlink_send +EXPORT_SYMBOL_GPL vmlinux 0x0a6ce1cc sfp_select_interface +EXPORT_SYMBOL_GPL vmlinux 0x0a6d7a53 nd_cmd_in_size +EXPORT_SYMBOL_GPL vmlinux 0x0a7251f8 peernet2id_alloc +EXPORT_SYMBOL_GPL vmlinux 0x0a8c3b4b usb_ep_set_halt +EXPORT_SYMBOL_GPL vmlinux 0x0a940519 stmpe_set_bits +EXPORT_SYMBOL_GPL vmlinux 0x0aa67382 sock_prot_inuse_add +EXPORT_SYMBOL_GPL vmlinux 0x0aa8e681 sysfs_create_link +EXPORT_SYMBOL_GPL vmlinux 0x0aa9de56 bpf_trace_run5 +EXPORT_SYMBOL_GPL vmlinux 0x0aaa149f pwmchip_add_with_polarity +EXPORT_SYMBOL_GPL vmlinux 0x0aad4a09 device_property_read_u8_array +EXPORT_SYMBOL_GPL vmlinux 0x0ab9368b iterate_mounts +EXPORT_SYMBOL_GPL vmlinux 0x0abc3d93 rht_bucket_nested_insert +EXPORT_SYMBOL_GPL vmlinux 0x0abc47e4 device_link_remove +EXPORT_SYMBOL_GPL vmlinux 0x0ac26bc8 pm_runtime_barrier +EXPORT_SYMBOL_GPL vmlinux 0x0ac67d9c to_nd_region +EXPORT_SYMBOL_GPL vmlinux 0x0aca469c dw_pcie_ep_init_notify +EXPORT_SYMBOL_GPL vmlinux 0x0acfe2e7 usb_ep_set_wedge +EXPORT_SYMBOL_GPL vmlinux 0x0ae1c777 pinctrl_select_state +EXPORT_SYMBOL_GPL vmlinux 0x0aedfce8 __hwspin_unlock +EXPORT_SYMBOL_GPL vmlinux 0x0b07abe2 unshare_fs_struct +EXPORT_SYMBOL_GPL vmlinux 0x0b18a00e ip6_sk_dst_lookup_flow +EXPORT_SYMBOL_GPL vmlinux 0x0b1bb9f9 synchronize_rcu_tasks +EXPORT_SYMBOL_GPL vmlinux 0x0b2970fe klist_iter_init +EXPORT_SYMBOL_GPL vmlinux 0x0b2db2d5 remove_resource +EXPORT_SYMBOL_GPL vmlinux 0x0b33916e mtd_unlock +EXPORT_SYMBOL_GPL vmlinux 0x0b3b2be7 shash_no_setkey +EXPORT_SYMBOL_GPL vmlinux 0x0b4a8834 musb_writeb +EXPORT_SYMBOL_GPL vmlinux 0x0b6f1dda snd_soc_card_get_kcontrol +EXPORT_SYMBOL_GPL vmlinux 0x0b6f24ab tcp_sendpage_locked +EXPORT_SYMBOL_GPL vmlinux 0x0b779201 sysfs_unmerge_group +EXPORT_SYMBOL_GPL vmlinux 0x0b7a2a10 __fscrypt_prepare_link +EXPORT_SYMBOL_GPL vmlinux 0x0b811cea add_page_wait_queue +EXPORT_SYMBOL_GPL vmlinux 0x0b8eee00 scsi_dh_activate +EXPORT_SYMBOL_GPL vmlinux 0x0b91180b ata_cable_sata +EXPORT_SYMBOL_GPL vmlinux 0x0ba53b59 mbox_chan_txdone +EXPORT_SYMBOL_GPL vmlinux 0x0bb028d4 hisi_clk_register_fixed_factor +EXPORT_SYMBOL_GPL vmlinux 0x0bb64f9b tty_buffer_set_limit +EXPORT_SYMBOL_GPL vmlinux 0x0bc2d2f4 snd_soc_dapm_mixer_update_power +EXPORT_SYMBOL_GPL vmlinux 0x0bccbbaa ahci_host_activate +EXPORT_SYMBOL_GPL vmlinux 0x0bd7227e nand_cleanup +EXPORT_SYMBOL_GPL vmlinux 0x0bdc870c virtio_max_dma_size +EXPORT_SYMBOL_GPL vmlinux 0x0c149636 ata_sff_qc_fill_rtf +EXPORT_SYMBOL_GPL vmlinux 0x0c29eabc cgrp_dfl_root +EXPORT_SYMBOL_GPL vmlinux 0x0c303f52 bch_encode +EXPORT_SYMBOL_GPL vmlinux 0x0c32ff8a edac_pci_alloc_index +EXPORT_SYMBOL_GPL vmlinux 0x0c501031 strp_data_ready +EXPORT_SYMBOL_GPL vmlinux 0x0c5483ba cpts_register +EXPORT_SYMBOL_GPL vmlinux 0x0c820f79 virtio_check_driver_offered_feature +EXPORT_SYMBOL_GPL vmlinux 0x0c821b71 xfrm_state_afinfo_get_rcu +EXPORT_SYMBOL_GPL vmlinux 0x0c94eb79 gpiod_put_array +EXPORT_SYMBOL_GPL vmlinux 0x0ca23a1f edac_mc_add_mc_with_groups +EXPORT_SYMBOL_GPL vmlinux 0x0cca504f led_classdev_resume +EXPORT_SYMBOL_GPL vmlinux 0x0cd35449 tpm_calc_ordinal_duration +EXPORT_SYMBOL_GPL vmlinux 0x0ce48a4b nvdimm_volatile_region_create +EXPORT_SYMBOL_GPL vmlinux 0x0cece210 iommu_unregister_device_fault_handler +EXPORT_SYMBOL_GPL vmlinux 0x0cedc9f0 usb_control_msg +EXPORT_SYMBOL_GPL vmlinux 0x0cfad8ec blkdev_report_zones +EXPORT_SYMBOL_GPL vmlinux 0x0d06189b clk_mux_determine_rate_flags +EXPORT_SYMBOL_GPL vmlinux 0x0d0a4c4f of_dma_configure +EXPORT_SYMBOL_GPL vmlinux 0x0d2c3d60 regulator_list_voltage_table +EXPORT_SYMBOL_GPL vmlinux 0x0d35ffd6 wbc_attach_and_unlock_inode +EXPORT_SYMBOL_GPL vmlinux 0x0d3e3481 bch_free +EXPORT_SYMBOL_GPL vmlinux 0x0d459213 work_on_cpu_safe +EXPORT_SYMBOL_GPL vmlinux 0x0d4961de nf_log_buf_open +EXPORT_SYMBOL_GPL vmlinux 0x0d5a5939 cpu_topology +EXPORT_SYMBOL_GPL vmlinux 0x0d794932 rio_release_inb_dbell +EXPORT_SYMBOL_GPL vmlinux 0x0d90d784 usb_ep_fifo_flush +EXPORT_SYMBOL_GPL vmlinux 0x0da2bf09 param_ops_bool_enable_only +EXPORT_SYMBOL_GPL vmlinux 0x0dbfa56b serdev_device_set_parity +EXPORT_SYMBOL_GPL vmlinux 0x0dc03110 devres_find +EXPORT_SYMBOL_GPL vmlinux 0x0dc373ab wm5110_aod +EXPORT_SYMBOL_GPL vmlinux 0x0dcb3ee8 divider_recalc_rate +EXPORT_SYMBOL_GPL vmlinux 0x0ddb1cd7 llist_reverse_order +EXPORT_SYMBOL_GPL vmlinux 0x0ded77fe ata_sas_tport_delete +EXPORT_SYMBOL_GPL vmlinux 0x0dfcaf7e mtk_eint_find_irq +EXPORT_SYMBOL_GPL vmlinux 0x0e0c81f5 __module_address +EXPORT_SYMBOL_GPL vmlinux 0x0e100e48 i2c_detect_slave_mode +EXPORT_SYMBOL_GPL vmlinux 0x0e174709 of_thermal_is_trip_valid +EXPORT_SYMBOL_GPL vmlinux 0x0e45652d pm_generic_runtime_suspend +EXPORT_SYMBOL_GPL vmlinux 0x0e4b2468 crypto_register_acomp +EXPORT_SYMBOL_GPL vmlinux 0x0e512a3f fb_deferred_io_fsync +EXPORT_SYMBOL_GPL vmlinux 0x0e63c0e8 of_dma_simple_xlate +EXPORT_SYMBOL_GPL vmlinux 0x0e6660f7 pci_epf_bind +EXPORT_SYMBOL_GPL vmlinux 0x0e69a351 iommu_domain_set_attr +EXPORT_SYMBOL_GPL vmlinux 0x0e6d0aa1 irq_domain_set_hwirq_and_chip +EXPORT_SYMBOL_GPL vmlinux 0x0e764cc1 iomap_migrate_page +EXPORT_SYMBOL_GPL vmlinux 0x0e7a8a75 pci_disable_ats +EXPORT_SYMBOL_GPL vmlinux 0x0e7c45ab iomap_seek_data +EXPORT_SYMBOL_GPL vmlinux 0x0e8145be uart_set_options +EXPORT_SYMBOL_GPL vmlinux 0x0e848a64 PageHuge +EXPORT_SYMBOL_GPL vmlinux 0x0e8a574a cpuacct_cgrp_subsys_on_dfl_key +EXPORT_SYMBOL_GPL vmlinux 0x0e93ed8c mtk_pinconf_bias_disable_set_rev1 +EXPORT_SYMBOL_GPL vmlinux 0x0e9c5976 __crypto_alloc_tfm +EXPORT_SYMBOL_GPL vmlinux 0x0eb9ba08 sg_scsi_ioctl +EXPORT_SYMBOL_GPL vmlinux 0x0eba037f ehci_suspend +EXPORT_SYMBOL_GPL vmlinux 0x0ec5f935 of_mm_gpiochip_remove +EXPORT_SYMBOL_GPL vmlinux 0x0ec6a16a edac_mc_handle_error +EXPORT_SYMBOL_GPL vmlinux 0x0ec96ab7 dma_buf_get +EXPORT_SYMBOL_GPL vmlinux 0x0ecb9999 of_nvmem_device_get +EXPORT_SYMBOL_GPL vmlinux 0x0ece0a18 __xas_next +EXPORT_SYMBOL_GPL vmlinux 0x0ed8a36d snd_soc_free_ac97_component +EXPORT_SYMBOL_GPL vmlinux 0x0eea314d devlink_trap_policers_unregister +EXPORT_SYMBOL_GPL vmlinux 0x0eeb5417 __kprobe_event_gen_cmd_start +EXPORT_SYMBOL_GPL vmlinux 0x0efd147d virtqueue_get_buf +EXPORT_SYMBOL_GPL vmlinux 0x0f119bc9 devfreq_event_disable_edev +EXPORT_SYMBOL_GPL vmlinux 0x0f14303e device_remove_bin_file +EXPORT_SYMBOL_GPL vmlinux 0x0f180070 ring_buffer_free_read_page +EXPORT_SYMBOL_GPL vmlinux 0x0f1e0c3c mmu_interval_notifier_insert_locked +EXPORT_SYMBOL_GPL vmlinux 0x0f2da3dc rdma_cgrp_subsys_on_dfl_key +EXPORT_SYMBOL_GPL vmlinux 0x0f305849 pm_generic_runtime_resume +EXPORT_SYMBOL_GPL vmlinux 0x0f3861d3 bio_iov_iter_get_pages +EXPORT_SYMBOL_GPL vmlinux 0x0f578220 udp4_lib_lookup +EXPORT_SYMBOL_GPL vmlinux 0x0f596f0b i2c_dw_configure_master +EXPORT_SYMBOL_GPL vmlinux 0x0f61e26a pci_intx +EXPORT_SYMBOL_GPL vmlinux 0x0f67e1b7 clk_hw_get_name +EXPORT_SYMBOL_GPL vmlinux 0x0f6f5ffe sk_psock_init +EXPORT_SYMBOL_GPL vmlinux 0x0f79a258 crypto_dequeue_request +EXPORT_SYMBOL_GPL vmlinux 0x0f7ca236 dmi_memdev_name +EXPORT_SYMBOL_GPL vmlinux 0x0f819920 of_cpufreq_cooling_register +EXPORT_SYMBOL_GPL vmlinux 0x0f8ab7fd skb_mpls_push +EXPORT_SYMBOL_GPL vmlinux 0x0f8ff89f crypto_alloc_akcipher +EXPORT_SYMBOL_GPL vmlinux 0x0f9e3c9b dma_resv_wait_timeout_rcu +EXPORT_SYMBOL_GPL vmlinux 0x0f9fdccc gadget_find_ep_by_name +EXPORT_SYMBOL_GPL vmlinux 0x0fa4676e __kthread_init_worker +EXPORT_SYMBOL_GPL vmlinux 0x0fc2480b of_clk_get_parent_count +EXPORT_SYMBOL_GPL vmlinux 0x0fc4608b irq_chip_set_type_parent +EXPORT_SYMBOL_GPL vmlinux 0x0fcbe164 amba_device_put +EXPORT_SYMBOL_GPL vmlinux 0x0fcd1c5b fsnotify_find_mark +EXPORT_SYMBOL_GPL vmlinux 0x0fd96c07 icc_set_bw +EXPORT_SYMBOL_GPL vmlinux 0x0fe397c5 dm_start_time_ns_from_clone +EXPORT_SYMBOL_GPL vmlinux 0x100359e4 stop_machine +EXPORT_SYMBOL_GPL vmlinux 0x100ab093 __tracepoint_powernv_throttle +EXPORT_SYMBOL_GPL vmlinux 0x10138352 tracing_on +EXPORT_SYMBOL_GPL vmlinux 0x102c9331 mtk_pinconf_bias_disable_get_rev1 +EXPORT_SYMBOL_GPL vmlinux 0x1034e29f devm_platform_ioremap_resource_byname +EXPORT_SYMBOL_GPL vmlinux 0x1043cac3 queue_work_node +EXPORT_SYMBOL_GPL vmlinux 0x105caa0e edac_pci_create_generic_ctl +EXPORT_SYMBOL_GPL vmlinux 0x1062aa27 power_supply_batinfo_ocv2cap +EXPORT_SYMBOL_GPL vmlinux 0x106ad9e1 software_node_unregister_node_group +EXPORT_SYMBOL_GPL vmlinux 0x107b72c0 scsi_queue_work +EXPORT_SYMBOL_GPL vmlinux 0x1081a735 pci_epc_remove_epf +EXPORT_SYMBOL_GPL vmlinux 0x1094b398 dev_pm_opp_of_find_icc_paths +EXPORT_SYMBOL_GPL vmlinux 0x10b0d725 dma_buf_put +EXPORT_SYMBOL_GPL vmlinux 0x10c2e75a kmsg_dump_register +EXPORT_SYMBOL_GPL vmlinux 0x10e523f3 mmc_regulator_get_supply +EXPORT_SYMBOL_GPL vmlinux 0x10e94711 devm_thermal_zone_of_sensor_register +EXPORT_SYMBOL_GPL vmlinux 0x10ecc52c usb_amd_quirk_pll_enable +EXPORT_SYMBOL_GPL vmlinux 0x10f17a1e crypto_stats_skcipher_encrypt +EXPORT_SYMBOL_GPL vmlinux 0x10f2e942 class_for_each_device +EXPORT_SYMBOL_GPL vmlinux 0x110105d9 serdev_controller_add +EXPORT_SYMBOL_GPL vmlinux 0x1104c4d5 trace_seq_puts +EXPORT_SYMBOL_GPL vmlinux 0x11091291 nand_extract_bits +EXPORT_SYMBOL_GPL vmlinux 0x110aa94a pwm_request_from_chip +EXPORT_SYMBOL_GPL vmlinux 0x1111cd8b device_get_child_node_count +EXPORT_SYMBOL_GPL vmlinux 0x112360f5 wm8350_device_init +EXPORT_SYMBOL_GPL vmlinux 0x113b21f8 device_find_child +EXPORT_SYMBOL_GPL vmlinux 0x11526c9a meson_clk_pll_ops +EXPORT_SYMBOL_GPL vmlinux 0x11884eaf of_pinctrl_get +EXPORT_SYMBOL_GPL vmlinux 0x118b73bf devm_get_free_pages +EXPORT_SYMBOL_GPL vmlinux 0x119d8411 snd_soc_put_xr_sx +EXPORT_SYMBOL_GPL vmlinux 0x119e0963 usb_phy_roothub_resume +EXPORT_SYMBOL_GPL vmlinux 0x11a2e0ac crypto_dh_key_len +EXPORT_SYMBOL_GPL vmlinux 0x11a68c0f device_get_phy_mode +EXPORT_SYMBOL_GPL vmlinux 0x11a9a19b tpm2_probe +EXPORT_SYMBOL_GPL vmlinux 0x11b5d221 lwtunnel_get_encap_size +EXPORT_SYMBOL_GPL vmlinux 0x11b5f217 balloon_page_list_dequeue +EXPORT_SYMBOL_GPL vmlinux 0x11bc8922 platform_device_register_full +EXPORT_SYMBOL_GPL vmlinux 0x11be8ab9 sysfs_add_link_to_group +EXPORT_SYMBOL_GPL vmlinux 0x11c23240 crypto_attr_u32 +EXPORT_SYMBOL_GPL vmlinux 0x11c37782 power_supply_register +EXPORT_SYMBOL_GPL vmlinux 0x11ccab4c of_pci_range_parser_init +EXPORT_SYMBOL_GPL vmlinux 0x11cec30c devlink_param_driverinit_value_set +EXPORT_SYMBOL_GPL vmlinux 0x11d7589e add_hwgenerator_randomness +EXPORT_SYMBOL_GPL vmlinux 0x11d98d54 __class_register +EXPORT_SYMBOL_GPL vmlinux 0x11def8b5 amba_ahb_device_add +EXPORT_SYMBOL_GPL vmlinux 0x11df0e75 devlink_fmsg_binary_pair_nest_start +EXPORT_SYMBOL_GPL vmlinux 0x11dfa3e1 usb_add_gadget_udc +EXPORT_SYMBOL_GPL vmlinux 0x11ed0003 to_software_node +EXPORT_SYMBOL_GPL vmlinux 0x12093267 get_user_pages_fast_only +EXPORT_SYMBOL_GPL vmlinux 0x1212efab reset_control_get_count +EXPORT_SYMBOL_GPL vmlinux 0x121d958a unregister_die_notifier +EXPORT_SYMBOL_GPL vmlinux 0x1234e483 get_cpu_iowait_time_us +EXPORT_SYMBOL_GPL vmlinux 0x12470df7 ata_sff_hsm_move +EXPORT_SYMBOL_GPL vmlinux 0x124f0858 ata_host_alloc_pinfo +EXPORT_SYMBOL_GPL vmlinux 0x1268f357 resume_device_irqs +EXPORT_SYMBOL_GPL vmlinux 0x127d8bc6 devlink_port_type_clear +EXPORT_SYMBOL_GPL vmlinux 0x128622c4 ohci_restart +EXPORT_SYMBOL_GPL vmlinux 0x129334ae sfp_parse_support +EXPORT_SYMBOL_GPL vmlinux 0x12982d8d snd_dmaengine_pcm_prepare_slave_config +EXPORT_SYMBOL_GPL vmlinux 0x12b88c78 vfs_submount +EXPORT_SYMBOL_GPL vmlinux 0x12bd331c sdio_unregister_driver +EXPORT_SYMBOL_GPL vmlinux 0x12c30e07 ata_sas_port_init +EXPORT_SYMBOL_GPL vmlinux 0x12d02a2b sysfs_groups_change_owner +EXPORT_SYMBOL_GPL vmlinux 0x12d6754e __iptunnel_pull_header +EXPORT_SYMBOL_GPL vmlinux 0x12e59262 pktgen_xfrm_outer_mode_output +EXPORT_SYMBOL_GPL vmlinux 0x12f78d57 crypto_unregister_shashes +EXPORT_SYMBOL_GPL vmlinux 0x131a5ed7 regmap_del_irq_chip +EXPORT_SYMBOL_GPL vmlinux 0x131db64a system_long_wq +EXPORT_SYMBOL_GPL vmlinux 0x132c1ba7 crypto_unregister_rngs +EXPORT_SYMBOL_GPL vmlinux 0x133969d7 __trace_printk +EXPORT_SYMBOL_GPL vmlinux 0x133b51c5 gpmc_omap_onenand_set_timings +EXPORT_SYMBOL_GPL vmlinux 0x1360c5a3 hwmon_device_register_with_groups +EXPORT_SYMBOL_GPL vmlinux 0x136209db power_supply_reg_notifier +EXPORT_SYMBOL_GPL vmlinux 0x137e2312 __tracepoint_xdp_bulk_tx +EXPORT_SYMBOL_GPL vmlinux 0x137e9270 sk_msg_return +EXPORT_SYMBOL_GPL vmlinux 0x1381d4f3 net_cls_cgrp_subsys_enabled_key +EXPORT_SYMBOL_GPL vmlinux 0x13889036 inet_ehash_locks_alloc +EXPORT_SYMBOL_GPL vmlinux 0x138e0957 dax_write_cache_enabled +EXPORT_SYMBOL_GPL vmlinux 0x139a3f2b devm_gpiod_get_array_optional +EXPORT_SYMBOL_GPL vmlinux 0x139e1d51 usb_autopm_get_interface +EXPORT_SYMBOL_GPL vmlinux 0x13a1fd40 usb_get_maximum_speed +EXPORT_SYMBOL_GPL vmlinux 0x13b6c3fc security_kernel_post_read_file +EXPORT_SYMBOL_GPL vmlinux 0x13befbfe handle_bad_irq +EXPORT_SYMBOL_GPL vmlinux 0x13c339d1 __fl6_sock_lookup +EXPORT_SYMBOL_GPL vmlinux 0x13c683cf skcipher_walk_aead_decrypt +EXPORT_SYMBOL_GPL vmlinux 0x13e3b531 component_master_add_with_match +EXPORT_SYMBOL_GPL vmlinux 0x13ed8784 sdev_evt_alloc +EXPORT_SYMBOL_GPL vmlinux 0x1403ad09 cpufreq_add_update_util_hook +EXPORT_SYMBOL_GPL vmlinux 0x1406b8ec fixed_phy_register_with_gpiod +EXPORT_SYMBOL_GPL vmlinux 0x14073607 pwm_get_chip_data +EXPORT_SYMBOL_GPL vmlinux 0x141064d5 kmsg_dump_get_line +EXPORT_SYMBOL_GPL vmlinux 0x14137157 devm_of_pwm_get +EXPORT_SYMBOL_GPL vmlinux 0x141f07eb fb_deferred_io_cleanup +EXPORT_SYMBOL_GPL vmlinux 0x141f38bf ktime_get_raw_fast_ns +EXPORT_SYMBOL_GPL vmlinux 0x142050f6 ohci_hub_control +EXPORT_SYMBOL_GPL vmlinux 0x1429130b dev_coredumpv +EXPORT_SYMBOL_GPL vmlinux 0x142f0ef0 virtqueue_add_inbuf +EXPORT_SYMBOL_GPL vmlinux 0x143603c7 pcie_flr +EXPORT_SYMBOL_GPL vmlinux 0x1448de99 ata_sff_busy_sleep +EXPORT_SYMBOL_GPL vmlinux 0x145c4038 __vfs_removexattr_noperm +EXPORT_SYMBOL_GPL vmlinux 0x145d6355 fsnotify_add_mark +EXPORT_SYMBOL_GPL vmlinux 0x1468efe8 inet6_destroy_sock +EXPORT_SYMBOL_GPL vmlinux 0x146a4a0b spi_new_device +EXPORT_SYMBOL_GPL vmlinux 0x148e1b7d mtk_pinconf_bias_disable_set +EXPORT_SYMBOL_GPL vmlinux 0x148eec0e get_dcookie +EXPORT_SYMBOL_GPL vmlinux 0x14a3a86b mbox_controller_unregister +EXPORT_SYMBOL_GPL vmlinux 0x14a6893a regmap_write +EXPORT_SYMBOL_GPL vmlinux 0x14a98a21 cpu_cgrp_subsys_enabled_key +EXPORT_SYMBOL_GPL vmlinux 0x14ab78a1 xfrm_audit_state_replay +EXPORT_SYMBOL_GPL vmlinux 0x14b0fc04 scsi_bus_type +EXPORT_SYMBOL_GPL vmlinux 0x14b5bea7 snd_dmaengine_pcm_open +EXPORT_SYMBOL_GPL vmlinux 0x14b657cf disk_part_iter_exit +EXPORT_SYMBOL_GPL vmlinux 0x14b80be3 dw_pcie_ep_init +EXPORT_SYMBOL_GPL vmlinux 0x14c2872d xas_pause +EXPORT_SYMBOL_GPL vmlinux 0x14c2cc09 sdio_claim_host +EXPORT_SYMBOL_GPL vmlinux 0x14cb9d46 virtio_break_device +EXPORT_SYMBOL_GPL vmlinux 0x14d01690 clk_mux_index_to_val +EXPORT_SYMBOL_GPL vmlinux 0x14d5eff9 ulpi_viewport_access_ops +EXPORT_SYMBOL_GPL vmlinux 0x14d6e8cb mtd_del_partition +EXPORT_SYMBOL_GPL vmlinux 0x14e45db1 rio_mport_read_config_8 +EXPORT_SYMBOL_GPL vmlinux 0x14f87e42 gpiochip_irqchip_add_key +EXPORT_SYMBOL_GPL vmlinux 0x14fbb687 crypto_unregister_shash +EXPORT_SYMBOL_GPL vmlinux 0x1518c3bb ata_common_sdev_attrs +EXPORT_SYMBOL_GPL vmlinux 0x151f5104 uhci_reset_hc +EXPORT_SYMBOL_GPL vmlinux 0x153b60a6 klist_del +EXPORT_SYMBOL_GPL vmlinux 0x1548baff i2c_adapter_type +EXPORT_SYMBOL_GPL vmlinux 0x15510a89 devlink_fmsg_binary_put +EXPORT_SYMBOL_GPL vmlinux 0x15535749 debugfs_create_x32 +EXPORT_SYMBOL_GPL vmlinux 0x15605518 pinctrl_remove_gpio_range +EXPORT_SYMBOL_GPL vmlinux 0x15874c14 usb_gadget_disconnect +EXPORT_SYMBOL_GPL vmlinux 0x158a7495 mtk_eint_do_init +EXPORT_SYMBOL_GPL vmlinux 0x15922ef4 iommu_map +EXPORT_SYMBOL_GPL vmlinux 0x15925744 ping_seq_next +EXPORT_SYMBOL_GPL vmlinux 0x159987c4 usb_hub_clear_tt_buffer +EXPORT_SYMBOL_GPL vmlinux 0x159b00a6 vfs_kern_mount +EXPORT_SYMBOL_GPL vmlinux 0x15a5f817 tpm_get_timeouts +EXPORT_SYMBOL_GPL vmlinux 0x15b06044 __xas_prev +EXPORT_SYMBOL_GPL vmlinux 0x15b88f8d set_cpus_allowed_ptr +EXPORT_SYMBOL_GPL vmlinux 0x15bb80b2 sdhci_resume_host +EXPORT_SYMBOL_GPL vmlinux 0x15cb861b devm_kmalloc +EXPORT_SYMBOL_GPL vmlinux 0x15d2330a snd_soc_component_nc_pin +EXPORT_SYMBOL_GPL vmlinux 0x15f3d3cf sysfs_create_link_nowarn +EXPORT_SYMBOL_GPL vmlinux 0x1603bc93 ata_dummy_port_ops +EXPORT_SYMBOL_GPL vmlinux 0x160aa535 regulator_bulk_set_supply_names +EXPORT_SYMBOL_GPL vmlinux 0x161cff73 sdhci_set_data_timeout_irq +EXPORT_SYMBOL_GPL vmlinux 0x162103b9 usb_gadget_wakeup +EXPORT_SYMBOL_GPL vmlinux 0x162773a4 iptunnel_xmit +EXPORT_SYMBOL_GPL vmlinux 0x162f559b crypto_ahash_walk_first +EXPORT_SYMBOL_GPL vmlinux 0x163a01dd devm_snd_soc_register_component +EXPORT_SYMBOL_GPL vmlinux 0x1641ba25 iommu_map_atomic +EXPORT_SYMBOL_GPL vmlinux 0x165786df blk_queue_max_zone_append_sectors +EXPORT_SYMBOL_GPL vmlinux 0x1657e63d ehci_adjust_port_wakeup_flags +EXPORT_SYMBOL_GPL vmlinux 0x1676ccc0 blkcg_policy_unregister +EXPORT_SYMBOL_GPL vmlinux 0x16814d5c snd_soc_dai_compr_pointer +EXPORT_SYMBOL_GPL vmlinux 0x168abe2e pci_enable_pasid +EXPORT_SYMBOL_GPL vmlinux 0x1690b503 usb_role_switch_get_drvdata +EXPORT_SYMBOL_GPL vmlinux 0x1695087c blk_insert_cloned_request +EXPORT_SYMBOL_GPL vmlinux 0x16977af7 noop_backing_dev_info +EXPORT_SYMBOL_GPL vmlinux 0x16998a4a devm_regulator_bulk_get +EXPORT_SYMBOL_GPL vmlinux 0x16a21f2f clockevent_delta2ns +EXPORT_SYMBOL_GPL vmlinux 0x16cb4249 sock_diag_unregister_inet_compat +EXPORT_SYMBOL_GPL vmlinux 0x16d1727e cpufreq_driver_resolve_freq +EXPORT_SYMBOL_GPL vmlinux 0x16d9f9ff pci_remap_cfgspace +EXPORT_SYMBOL_GPL vmlinux 0x16da1f88 devlink_fmsg_u32_put +EXPORT_SYMBOL_GPL vmlinux 0x16eb2bc6 ipv6_bpf_stub +EXPORT_SYMBOL_GPL vmlinux 0x16f5a704 pm_runtime_enable +EXPORT_SYMBOL_GPL vmlinux 0x1700b15a tcp_done +EXPORT_SYMBOL_GPL vmlinux 0x170cc36c put_timespec64 +EXPORT_SYMBOL_GPL vmlinux 0x172cfd6e of_console_check +EXPORT_SYMBOL_GPL vmlinux 0x172f4032 bpf_trace_run7 +EXPORT_SYMBOL_GPL vmlinux 0x17420aad devfreq_event_is_enabled +EXPORT_SYMBOL_GPL vmlinux 0x17429048 ipv4_sk_update_pmtu +EXPORT_SYMBOL_GPL vmlinux 0x175486f3 pinconf_generic_dt_subnode_to_map +EXPORT_SYMBOL_GPL vmlinux 0x17558eb7 devm_rtc_device_register +EXPORT_SYMBOL_GPL vmlinux 0x1755f5ab rt_mutex_lock_interruptible +EXPORT_SYMBOL_GPL vmlinux 0x176031a7 devlink_fmsg_string_put +EXPORT_SYMBOL_GPL vmlinux 0x1769a99f pci_ecam_free +EXPORT_SYMBOL_GPL vmlinux 0x176afc80 pwm_get +EXPORT_SYMBOL_GPL vmlinux 0x177243bd spi_replace_transfers +EXPORT_SYMBOL_GPL vmlinux 0x177a0633 arch_set_freq_scale +EXPORT_SYMBOL_GPL vmlinux 0x177b8c32 wm5102_i2c_regmap +EXPORT_SYMBOL_GPL vmlinux 0x177c338d twl_get_version +EXPORT_SYMBOL_GPL vmlinux 0x1789a3bf __netpoll_setup +EXPORT_SYMBOL_GPL vmlinux 0x179a4e10 cpuidle_get_driver +EXPORT_SYMBOL_GPL vmlinux 0x17a2ce33 devm_hwrng_unregister +EXPORT_SYMBOL_GPL vmlinux 0x17b00be5 bsg_setup_queue +EXPORT_SYMBOL_GPL vmlinux 0x17b05fcc netdev_rx_handler_unregister +EXPORT_SYMBOL_GPL vmlinux 0x17c40289 nanddev_bbt_set_block_status +EXPORT_SYMBOL_GPL vmlinux 0x17f1b7a1 ip_tunnel_get_stats64 +EXPORT_SYMBOL_GPL vmlinux 0x17f41dfa __pm_runtime_idle +EXPORT_SYMBOL_GPL vmlinux 0x18008c59 ring_buffer_resize +EXPORT_SYMBOL_GPL vmlinux 0x1807409f extcon_register_notifier +EXPORT_SYMBOL_GPL vmlinux 0x180c752b __put_task_struct +EXPORT_SYMBOL_GPL vmlinux 0x180d0bc3 spi_mem_get_name +EXPORT_SYMBOL_GPL vmlinux 0x181382e1 usb_set_interface +EXPORT_SYMBOL_GPL vmlinux 0x181efcd3 bus_register_notifier +EXPORT_SYMBOL_GPL vmlinux 0x1827389f crypto_unregister_akcipher +EXPORT_SYMBOL_GPL vmlinux 0x182df653 crypto_stats_kpp_generate_public_key +EXPORT_SYMBOL_GPL vmlinux 0x1839b703 verify_signature +EXPORT_SYMBOL_GPL vmlinux 0x184d8d5e ata_dev_disable +EXPORT_SYMBOL_GPL vmlinux 0x185b77f4 crypto_register_template +EXPORT_SYMBOL_GPL vmlinux 0x185b8d7b scsi_target_unblock +EXPORT_SYMBOL_GPL vmlinux 0x18615d35 efivar_supports_writes +EXPORT_SYMBOL_GPL vmlinux 0x18649e48 sk_msg_clone +EXPORT_SYMBOL_GPL vmlinux 0x1868b658 sk_psock_drop +EXPORT_SYMBOL_GPL vmlinux 0x189fc5c7 ata_cable_unknown +EXPORT_SYMBOL_GPL vmlinux 0x18a9d391 da9055_regmap_config +EXPORT_SYMBOL_GPL vmlinux 0x18c44c02 devm_usb_get_phy +EXPORT_SYMBOL_GPL vmlinux 0x18d59344 to_of_pinfo +EXPORT_SYMBOL_GPL vmlinux 0x18ddfa86 hrtimer_init +EXPORT_SYMBOL_GPL vmlinux 0x18e4f8aa swphy_read_reg +EXPORT_SYMBOL_GPL vmlinux 0x18f0149c devlink_trap_groups_unregister +EXPORT_SYMBOL_GPL vmlinux 0x18f2ec3e ping_rcv +EXPORT_SYMBOL_GPL vmlinux 0x18f80d74 snd_soc_dapm_kcontrol_dapm +EXPORT_SYMBOL_GPL vmlinux 0x18f92f21 crypto_lookup_template +EXPORT_SYMBOL_GPL vmlinux 0x18fb2caf cpus_read_unlock +EXPORT_SYMBOL_GPL vmlinux 0x18fde180 devm_request_pci_bus_resources +EXPORT_SYMBOL_GPL vmlinux 0x1912902d irq_domain_get_irq_data +EXPORT_SYMBOL_GPL vmlinux 0x19178ed7 debugfs_create_x64 +EXPORT_SYMBOL_GPL vmlinux 0x1918b57c is_nvdimm_sync +EXPORT_SYMBOL_GPL vmlinux 0x191bc334 usb_hcd_is_primary_hcd +EXPORT_SYMBOL_GPL vmlinux 0x1921431b meson_clk_pcie_pll_ops +EXPORT_SYMBOL_GPL vmlinux 0x19244dcd i2c_add_numbered_adapter +EXPORT_SYMBOL_GPL vmlinux 0x1924e171 tty_release_struct +EXPORT_SYMBOL_GPL vmlinux 0x19385a86 bd_unlink_disk_holder +EXPORT_SYMBOL_GPL vmlinux 0x193fc42e dev_pm_opp_remove_table +EXPORT_SYMBOL_GPL vmlinux 0x194132fa zs_huge_class_size +EXPORT_SYMBOL_GPL vmlinux 0x1946daa2 ip6_sk_update_pmtu +EXPORT_SYMBOL_GPL vmlinux 0x19686072 crypto_register_aeads +EXPORT_SYMBOL_GPL vmlinux 0x196efb1b virtio_device_freeze +EXPORT_SYMBOL_GPL vmlinux 0x19757471 ata_bmdma_setup +EXPORT_SYMBOL_GPL vmlinux 0x197b404d usb_unanchor_urb +EXPORT_SYMBOL_GPL vmlinux 0x199228a9 __rio_local_read_config_16 +EXPORT_SYMBOL_GPL vmlinux 0x19942a54 xfrm_output_resume +EXPORT_SYMBOL_GPL vmlinux 0x1999a2ff led_set_brightness_sync +EXPORT_SYMBOL_GPL vmlinux 0x19a304ba usb_disabled +EXPORT_SYMBOL_GPL vmlinux 0x19a60963 dev_pm_opp_free_cpufreq_table +EXPORT_SYMBOL_GPL vmlinux 0x19ac088b __irq_domain_alloc_fwnode +EXPORT_SYMBOL_GPL vmlinux 0x19ae166e fwnode_find_reference +EXPORT_SYMBOL_GPL vmlinux 0x19b7b9d6 pci_ioremap_wc_bar +EXPORT_SYMBOL_GPL vmlinux 0x19c005f3 xfrm_audit_state_delete +EXPORT_SYMBOL_GPL vmlinux 0x19c00dff posix_acl_default_xattr_handler +EXPORT_SYMBOL_GPL vmlinux 0x19c20269 soc_device_unregister +EXPORT_SYMBOL_GPL vmlinux 0x19cb409e iommu_domain_get_attr +EXPORT_SYMBOL_GPL vmlinux 0x19d5124d cpufreq_policy_transition_delay_us +EXPORT_SYMBOL_GPL vmlinux 0x19e4f9e4 dev_pm_opp_put_clkname +EXPORT_SYMBOL_GPL vmlinux 0x19e81304 btree_alloc +EXPORT_SYMBOL_GPL vmlinux 0x19f03c18 wm8350_reg_lock +EXPORT_SYMBOL_GPL vmlinux 0x19f462ab kfree_call_rcu +EXPORT_SYMBOL_GPL vmlinux 0x1a080c11 crypto_ahash_finup +EXPORT_SYMBOL_GPL vmlinux 0x1a10c32b crypto_ft_tab +EXPORT_SYMBOL_GPL vmlinux 0x1a146ec3 usb_ep_type_string +EXPORT_SYMBOL_GPL vmlinux 0x1a267fa8 bch_init +EXPORT_SYMBOL_GPL vmlinux 0x1a317c36 led_stop_software_blink +EXPORT_SYMBOL_GPL vmlinux 0x1a39fea0 iommu_fwspec_free +EXPORT_SYMBOL_GPL vmlinux 0x1a42534f ip6_input +EXPORT_SYMBOL_GPL vmlinux 0x1a4c85d0 __regmap_init_i2c +EXPORT_SYMBOL_GPL vmlinux 0x1a546773 snd_soc_component_init_regmap +EXPORT_SYMBOL_GPL vmlinux 0x1a5cb1e6 bsg_unregister_queue +EXPORT_SYMBOL_GPL vmlinux 0x1a6bf28f fsnotify_get_cookie +EXPORT_SYMBOL_GPL vmlinux 0x1a6e3707 __clk_mux_determine_rate_closest +EXPORT_SYMBOL_GPL vmlinux 0x1a70eefb vfs_test_lock +EXPORT_SYMBOL_GPL vmlinux 0x1a77903a of_alias_get_alias_list +EXPORT_SYMBOL_GPL vmlinux 0x1a7d6f6e device_add_groups +EXPORT_SYMBOL_GPL vmlinux 0x1a8a5638 tty_port_link_device +EXPORT_SYMBOL_GPL vmlinux 0x1a8d0b05 regulator_desc_list_voltage_linear_range +EXPORT_SYMBOL_GPL vmlinux 0x1a98db98 scsi_schedule_eh +EXPORT_SYMBOL_GPL vmlinux 0x1aa4a8fa each_symbol_section +EXPORT_SYMBOL_GPL vmlinux 0x1aa546d5 usb_get_from_anchor +EXPORT_SYMBOL_GPL vmlinux 0x1ab92cb9 crypto_alloc_aead +EXPORT_SYMBOL_GPL vmlinux 0x1ac458a1 public_key_signature_free +EXPORT_SYMBOL_GPL vmlinux 0x1ac9f2c0 ti_cm_get_macid +EXPORT_SYMBOL_GPL vmlinux 0x1acab41d bsg_job_get +EXPORT_SYMBOL_GPL vmlinux 0x1ad12bcf regmap_raw_read +EXPORT_SYMBOL_GPL vmlinux 0x1aef8b98 syscon_regmap_lookup_by_phandle +EXPORT_SYMBOL_GPL vmlinux 0x1af177a1 __pm_relax +EXPORT_SYMBOL_GPL vmlinux 0x1af267f8 int_pow +EXPORT_SYMBOL_GPL vmlinux 0x1afa4cd7 iptunnel_metadata_reply +EXPORT_SYMBOL_GPL vmlinux 0x1afb764c rio_unmap_inb_region +EXPORT_SYMBOL_GPL vmlinux 0x1afee123 snd_soc_link_compr_startup +EXPORT_SYMBOL_GPL vmlinux 0x1b11ad02 attribute_container_register +EXPORT_SYMBOL_GPL vmlinux 0x1b146f4e crypto_alloc_acomp +EXPORT_SYMBOL_GPL vmlinux 0x1b19bbee unregister_kretprobe +EXPORT_SYMBOL_GPL vmlinux 0x1b3beb34 of_property_read_string +EXPORT_SYMBOL_GPL vmlinux 0x1b41525e rio_mport_write_config_16 +EXPORT_SYMBOL_GPL vmlinux 0x1b5059ce ata_id_xfermask +EXPORT_SYMBOL_GPL vmlinux 0x1b5c19e6 device_set_wakeup_enable +EXPORT_SYMBOL_GPL vmlinux 0x1b5d3445 clk_hw_unregister +EXPORT_SYMBOL_GPL vmlinux 0x1b78f65c hisi_reset_init +EXPORT_SYMBOL_GPL vmlinux 0x1b7d9be4 devm_hwmon_device_unregister +EXPORT_SYMBOL_GPL vmlinux 0x1b82f2ff ip6_dst_lookup_tunnel +EXPORT_SYMBOL_GPL vmlinux 0x1b8822d8 pinctrl_gpio_direction_output +EXPORT_SYMBOL_GPL vmlinux 0x1b8e411f __phy_modify +EXPORT_SYMBOL_GPL vmlinux 0x1b92e41d inet_putpeer +EXPORT_SYMBOL_GPL vmlinux 0x1b92f1b7 snd_soc_dai_set_tristate +EXPORT_SYMBOL_GPL vmlinux 0x1b965ee8 firmware_kobj +EXPORT_SYMBOL_GPL vmlinux 0x1b9a26c2 blk_mq_force_complete_rq +EXPORT_SYMBOL_GPL vmlinux 0x1b9ac1b0 irq_domain_free_irqs_parent +EXPORT_SYMBOL_GPL vmlinux 0x1ba5a8c4 subsys_find_device_by_id +EXPORT_SYMBOL_GPL vmlinux 0x1ba5c74d dma_buf_dynamic_attach +EXPORT_SYMBOL_GPL vmlinux 0x1baa55d5 meson_clk_pll_ro_ops +EXPORT_SYMBOL_GPL vmlinux 0x1badc0f9 nvdimm_kobj +EXPORT_SYMBOL_GPL vmlinux 0x1bc0e098 shash_ahash_digest +EXPORT_SYMBOL_GPL vmlinux 0x1bc40a8d gpmc_omap_get_nand_ops +EXPORT_SYMBOL_GPL vmlinux 0x1bc5eebe pinctrl_gpio_direction_input +EXPORT_SYMBOL_GPL vmlinux 0x1bd4b6da nanddev_bbt_update +EXPORT_SYMBOL_GPL vmlinux 0x1be555ac led_trigger_read +EXPORT_SYMBOL_GPL vmlinux 0x1bee4974 sg_alloc_table_chained +EXPORT_SYMBOL_GPL vmlinux 0x1c0415a3 __inet_lookup_listener +EXPORT_SYMBOL_GPL vmlinux 0x1c0bc793 blk_queue_flag_test_and_set +EXPORT_SYMBOL_GPL vmlinux 0x1c1ca8bb snd_card_add_dev_attr +EXPORT_SYMBOL_GPL vmlinux 0x1c20f052 dev_pm_opp_get_max_volt_latency +EXPORT_SYMBOL_GPL vmlinux 0x1c22de25 arm_iommu_attach_device +EXPORT_SYMBOL_GPL vmlinux 0x1c3a0461 wb_writeout_inc +EXPORT_SYMBOL_GPL vmlinux 0x1c3f6715 pinctrl_pm_select_sleep_state +EXPORT_SYMBOL_GPL vmlinux 0x1c41e792 __fat_fs_error +EXPORT_SYMBOL_GPL vmlinux 0x1c54951e mtk_pinconf_bias_set_combo +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 0x1c6b95f0 apply_to_existing_page_range +EXPORT_SYMBOL_GPL vmlinux 0x1c75e1e0 fsnotify_init_mark +EXPORT_SYMBOL_GPL vmlinux 0x1c798d9f for_each_kernel_tracepoint +EXPORT_SYMBOL_GPL vmlinux 0x1c7dc659 blkdev_read_iter +EXPORT_SYMBOL_GPL vmlinux 0x1c80d27d btree_geo128 +EXPORT_SYMBOL_GPL vmlinux 0x1c87a811 __round_jiffies_up +EXPORT_SYMBOL_GPL vmlinux 0x1c8a426d shash_register_instance +EXPORT_SYMBOL_GPL vmlinux 0x1c8ed286 blk_queue_can_use_dma_map_merging +EXPORT_SYMBOL_GPL vmlinux 0x1ca331e1 usb_debug_root +EXPORT_SYMBOL_GPL vmlinux 0x1ca9107d ata_pci_device_resume +EXPORT_SYMBOL_GPL vmlinux 0x1cae0a13 dm_get_table_device +EXPORT_SYMBOL_GPL vmlinux 0x1cbd92b0 cpu_mitigations_off +EXPORT_SYMBOL_GPL vmlinux 0x1cc297a5 screen_glyph_unicode +EXPORT_SYMBOL_GPL vmlinux 0x1cccb6ee badblocks_init +EXPORT_SYMBOL_GPL vmlinux 0x1ccd5560 uprobe_register_refctr +EXPORT_SYMBOL_GPL vmlinux 0x1cd429b3 ip6_push_pending_frames +EXPORT_SYMBOL_GPL vmlinux 0x1cd6d0c3 add_disk_randomness +EXPORT_SYMBOL_GPL vmlinux 0x1cdf4efb copy_from_kernel_nofault +EXPORT_SYMBOL_GPL vmlinux 0x1ce5e2a3 skcipher_register_instance +EXPORT_SYMBOL_GPL vmlinux 0x1cf604b6 phy_restore_page +EXPORT_SYMBOL_GPL vmlinux 0x1cfe4101 clkdev_hw_create +EXPORT_SYMBOL_GPL vmlinux 0x1d0655cb amba_ahb_device_add_res +EXPORT_SYMBOL_GPL vmlinux 0x1d0aadc4 phy_pm_runtime_get +EXPORT_SYMBOL_GPL vmlinux 0x1d0b2a8f devlink_param_value_changed +EXPORT_SYMBOL_GPL vmlinux 0x1d222ced irq_get_irqchip_state +EXPORT_SYMBOL_GPL vmlinux 0x1d29b9e1 decode_rs8 +EXPORT_SYMBOL_GPL vmlinux 0x1d328b6f sm501_misc_control +EXPORT_SYMBOL_GPL vmlinux 0x1d380fa9 dma_max_mapping_size +EXPORT_SYMBOL_GPL vmlinux 0x1d398bbc ethnl_cable_test_alloc +EXPORT_SYMBOL_GPL vmlinux 0x1d3b451c sdev_evt_send_simple +EXPORT_SYMBOL_GPL vmlinux 0x1d459f5f phy_driver_is_genphy_10g +EXPORT_SYMBOL_GPL vmlinux 0x1d4f8979 devlink_dpipe_action_put +EXPORT_SYMBOL_GPL vmlinux 0x1d55c5ab mpc8xxx_spi_tx_buf_u8 +EXPORT_SYMBOL_GPL vmlinux 0x1d5938b5 cpufreq_driver_target +EXPORT_SYMBOL_GPL vmlinux 0x1d5e286d fat_dir_empty +EXPORT_SYMBOL_GPL vmlinux 0x1d5ea299 devm_of_phy_get +EXPORT_SYMBOL_GPL vmlinux 0x1d61982f lwtstate_free +EXPORT_SYMBOL_GPL vmlinux 0x1d61e7e1 clk_register_gate +EXPORT_SYMBOL_GPL vmlinux 0x1d6e573b fwnode_graph_get_remote_port_parent +EXPORT_SYMBOL_GPL vmlinux 0x1d72dc15 security_inode_permission +EXPORT_SYMBOL_GPL vmlinux 0x1d77b0f8 unix_socket_table +EXPORT_SYMBOL_GPL vmlinux 0x1d81aeb1 ata_link_next +EXPORT_SYMBOL_GPL vmlinux 0x1d879c36 usb_put_hcd +EXPORT_SYMBOL_GPL vmlinux 0x1d94a218 dmi_memdev_handle +EXPORT_SYMBOL_GPL vmlinux 0x1da44a62 spi_get_next_queued_message +EXPORT_SYMBOL_GPL vmlinux 0x1dc170a5 mmc_pwrseq_unregister +EXPORT_SYMBOL_GPL vmlinux 0x1dcac90c snd_soc_dai_link_set_capabilities +EXPORT_SYMBOL_GPL vmlinux 0x1e05365b to_nd_desc +EXPORT_SYMBOL_GPL vmlinux 0x1e0670c6 reset_control_release +EXPORT_SYMBOL_GPL vmlinux 0x1e1299ab mmc_get_ext_csd +EXPORT_SYMBOL_GPL vmlinux 0x1e22ec93 of_clk_add_provider +EXPORT_SYMBOL_GPL vmlinux 0x1e2decb6 mtd_write_oob +EXPORT_SYMBOL_GPL vmlinux 0x1e47f1c1 pci_restore_msi_state +EXPORT_SYMBOL_GPL vmlinux 0x1e535de4 list_lru_walk_one +EXPORT_SYMBOL_GPL vmlinux 0x1e5c0b09 usb_get_dev +EXPORT_SYMBOL_GPL vmlinux 0x1e7ab2d4 mmc_cmdq_enable +EXPORT_SYMBOL_GPL vmlinux 0x1e7bbcb3 kernel_restart +EXPORT_SYMBOL_GPL vmlinux 0x1e7d6157 freezer_cgrp_subsys_enabled_key +EXPORT_SYMBOL_GPL vmlinux 0x1e856845 fwnode_get_next_available_child_node +EXPORT_SYMBOL_GPL vmlinux 0x1e892566 inet6_csk_addr2sockaddr +EXPORT_SYMBOL_GPL vmlinux 0x1e8fac8e wireless_nlevent_flush +EXPORT_SYMBOL_GPL vmlinux 0x1e944099 desc_to_gpio +EXPORT_SYMBOL_GPL vmlinux 0x1eb2cbb9 blk_revalidate_disk_zones +EXPORT_SYMBOL_GPL vmlinux 0x1eb9516e round_jiffies_relative +EXPORT_SYMBOL_GPL vmlinux 0x1ebf6c2a pci_power_names +EXPORT_SYMBOL_GPL vmlinux 0x1ed105f3 pci_try_reset_function +EXPORT_SYMBOL_GPL vmlinux 0x1ed82dd1 pcie_bus_configure_settings +EXPORT_SYMBOL_GPL vmlinux 0x1ee46cad user_update +EXPORT_SYMBOL_GPL vmlinux 0x1ee9b0fd cpufreq_cooling_unregister +EXPORT_SYMBOL_GPL vmlinux 0x1ef18d95 phy_optional_get +EXPORT_SYMBOL_GPL vmlinux 0x1f059117 gpiochip_set_nested_irqchip +EXPORT_SYMBOL_GPL vmlinux 0x1f0cb5bf pm_power_off_prepare +EXPORT_SYMBOL_GPL vmlinux 0x1f13874b thermal_cooling_device_register +EXPORT_SYMBOL_GPL vmlinux 0x1f13dab6 mnt_want_write_file +EXPORT_SYMBOL_GPL vmlinux 0x1f21ea2b usb_udc_vbus_handler +EXPORT_SYMBOL_GPL vmlinux 0x1f23fce2 adp5520_set_bits +EXPORT_SYMBOL_GPL vmlinux 0x1f35f398 pci_host_probe +EXPORT_SYMBOL_GPL vmlinux 0x1f4037ad ata_wait_register +EXPORT_SYMBOL_GPL vmlinux 0x1f43268b blkdev_ioctl +EXPORT_SYMBOL_GPL vmlinux 0x1f438ec2 mtd_read_fact_prot_reg +EXPORT_SYMBOL_GPL vmlinux 0x1f449588 mctrl_gpio_disable_ms +EXPORT_SYMBOL_GPL vmlinux 0x1f4f5259 rio_bus_type +EXPORT_SYMBOL_GPL vmlinux 0x1f54b3ee inet_hashinfo_init +EXPORT_SYMBOL_GPL vmlinux 0x1f563160 bpf_offload_dev_priv +EXPORT_SYMBOL_GPL vmlinux 0x1f5f096f hwmon_device_register_with_info +EXPORT_SYMBOL_GPL vmlinux 0x1f5fc4a5 cpu_latency_qos_request_active +EXPORT_SYMBOL_GPL vmlinux 0x1f65a452 vfs_lock_file +EXPORT_SYMBOL_GPL vmlinux 0x1f75d79d find_extend_vma +EXPORT_SYMBOL_GPL vmlinux 0x1f774f46 cpuset_cgrp_subsys_enabled_key +EXPORT_SYMBOL_GPL vmlinux 0x1f7c99b0 devlink_port_param_value_changed +EXPORT_SYMBOL_GPL vmlinux 0x1f7f8604 elv_rqhash_del +EXPORT_SYMBOL_GPL vmlinux 0x1f8544b8 panic_timeout +EXPORT_SYMBOL_GPL vmlinux 0x1f884194 trace_array_set_clr_event +EXPORT_SYMBOL_GPL vmlinux 0x1f913398 usb_get_status +EXPORT_SYMBOL_GPL vmlinux 0x1f95d0a4 balloon_page_list_enqueue +EXPORT_SYMBOL_GPL vmlinux 0x1f9a4d96 serial8250_request_dma +EXPORT_SYMBOL_GPL vmlinux 0x1f9ea409 scmi_driver_unregister +EXPORT_SYMBOL_GPL vmlinux 0x1fa1d95c sha256_zero_message_hash +EXPORT_SYMBOL_GPL vmlinux 0x1fca0b38 housekeeping_overridden +EXPORT_SYMBOL_GPL vmlinux 0x1fe6e504 gpiod_add_hogs +EXPORT_SYMBOL_GPL vmlinux 0x1feaf6a4 dma_resv_test_signaled_rcu +EXPORT_SYMBOL_GPL vmlinux 0x1fef0f63 usb_gen_phy_init +EXPORT_SYMBOL_GPL vmlinux 0x201c6979 sdio_readl +EXPORT_SYMBOL_GPL vmlinux 0x201f8e17 dev_pm_opp_is_turbo +EXPORT_SYMBOL_GPL vmlinux 0x203582f6 ip6_redirect +EXPORT_SYMBOL_GPL vmlinux 0x20382a1e fl6_merge_options +EXPORT_SYMBOL_GPL vmlinux 0x203dcf5d virtqueue_kick +EXPORT_SYMBOL_GPL vmlinux 0x2045ba33 debugfs_create_atomic_t +EXPORT_SYMBOL_GPL vmlinux 0x205ff7fb irq_chip_unmask_parent +EXPORT_SYMBOL_GPL vmlinux 0x2061276d snd_soc_of_parse_node_prefix +EXPORT_SYMBOL_GPL vmlinux 0x2061be8c rio_register_driver +EXPORT_SYMBOL_GPL vmlinux 0x206412fe lp8788_read_byte +EXPORT_SYMBOL_GPL vmlinux 0x206963f2 pl08x_filter_id +EXPORT_SYMBOL_GPL vmlinux 0x20735303 iommu_sva_bind_gpasid +EXPORT_SYMBOL_GPL vmlinux 0x207d9517 sdhci_set_power_and_bus_voltage +EXPORT_SYMBOL_GPL vmlinux 0x207ddbed sdhci_cqe_irq +EXPORT_SYMBOL_GPL vmlinux 0x20835a9f __xdp_release_frame +EXPORT_SYMBOL_GPL vmlinux 0x20863981 fwnode_usb_role_switch_get +EXPORT_SYMBOL_GPL vmlinux 0x208a7e1d crypto_skcipher_encrypt +EXPORT_SYMBOL_GPL vmlinux 0x2090b572 fwnode_handle_get +EXPORT_SYMBOL_GPL vmlinux 0x209cc91b xhci_mtk_sch_init +EXPORT_SYMBOL_GPL vmlinux 0x20a39baa regcache_sync +EXPORT_SYMBOL_GPL vmlinux 0x20a9c874 usb_reset_device +EXPORT_SYMBOL_GPL vmlinux 0x20ae6a37 fwnode_gpiod_get_index +EXPORT_SYMBOL_GPL vmlinux 0x20c93d72 ipv4_update_pmtu +EXPORT_SYMBOL_GPL vmlinux 0x20e8a137 genphy_c45_read_pma +EXPORT_SYMBOL_GPL vmlinux 0x20f0a8ac fuse_file_poll +EXPORT_SYMBOL_GPL vmlinux 0x20f17786 devlink_region_create +EXPORT_SYMBOL_GPL vmlinux 0x211bd635 rio_unlock_device +EXPORT_SYMBOL_GPL vmlinux 0x2125cee4 nf_queue_nf_hook_drop +EXPORT_SYMBOL_GPL vmlinux 0x21494650 mvebu_mbus_get_dram_win_info +EXPORT_SYMBOL_GPL vmlinux 0x214af47d edac_device_add_device +EXPORT_SYMBOL_GPL vmlinux 0x21562a1d raw_v4_hashinfo +EXPORT_SYMBOL_GPL vmlinux 0x2159d9d1 crypto_alloc_kpp +EXPORT_SYMBOL_GPL vmlinux 0x21630a28 usb_gadget_unmap_request +EXPORT_SYMBOL_GPL vmlinux 0x21652b54 crypto_register_aead +EXPORT_SYMBOL_GPL vmlinux 0x216de4e1 rcu_get_gp_kthreads_prio +EXPORT_SYMBOL_GPL vmlinux 0x21726652 pernet_ops_rwsem +EXPORT_SYMBOL_GPL vmlinux 0x21758cb0 debugfs_create_u64 +EXPORT_SYMBOL_GPL vmlinux 0x2178add0 rio_map_outb_region +EXPORT_SYMBOL_GPL vmlinux 0x21998bbd device_remove_properties +EXPORT_SYMBOL_GPL vmlinux 0x219f6d8a devm_gpiod_get_index_optional +EXPORT_SYMBOL_GPL vmlinux 0x21a563da clk_get_accuracy +EXPORT_SYMBOL_GPL vmlinux 0x21ac8b77 iommu_group_get_by_id +EXPORT_SYMBOL_GPL vmlinux 0x21ad2d4a tcp_leave_memory_pressure +EXPORT_SYMBOL_GPL vmlinux 0x21c7c003 phy_modify +EXPORT_SYMBOL_GPL vmlinux 0x21cd536a crypto_put_default_null_skcipher +EXPORT_SYMBOL_GPL vmlinux 0x21de20fa usb_free_urb +EXPORT_SYMBOL_GPL vmlinux 0x21e184d7 spi_mem_driver_register_with_owner +EXPORT_SYMBOL_GPL vmlinux 0x2211a4c0 blk_op_str +EXPORT_SYMBOL_GPL vmlinux 0x221562f8 ata_pci_remove_one +EXPORT_SYMBOL_GPL vmlinux 0x22279a69 gpiochip_add_pin_range +EXPORT_SYMBOL_GPL vmlinux 0x22334303 rio_mport_write_config_32 +EXPORT_SYMBOL_GPL vmlinux 0x223e52cf crypto_register_acomps +EXPORT_SYMBOL_GPL vmlinux 0x22441c07 fib_add_nexthop +EXPORT_SYMBOL_GPL vmlinux 0x22447352 xfrm_audit_state_replay_overflow +EXPORT_SYMBOL_GPL vmlinux 0x2244ec8f crypto_register_shash +EXPORT_SYMBOL_GPL vmlinux 0x22450ac2 of_clk_parent_fill +EXPORT_SYMBOL_GPL vmlinux 0x22512956 snd_soc_get_enum_double +EXPORT_SYMBOL_GPL vmlinux 0x22539502 do_unbind_con_driver +EXPORT_SYMBOL_GPL vmlinux 0x2255499d xfrm_audit_state_notfound +EXPORT_SYMBOL_GPL vmlinux 0x2261b1d1 pci_bus_add_device +EXPORT_SYMBOL_GPL vmlinux 0x22648c02 __tracepoint_neigh_event_send_done +EXPORT_SYMBOL_GPL vmlinux 0x22718ad7 alloc_dax +EXPORT_SYMBOL_GPL vmlinux 0x2281c5f8 dev_attr_em_message +EXPORT_SYMBOL_GPL vmlinux 0x2281d58a ata_bmdma_stop +EXPORT_SYMBOL_GPL vmlinux 0x228dde81 snd_soc_put_volsw_range +EXPORT_SYMBOL_GPL vmlinux 0x22994cb5 ata_platform_remove_one +EXPORT_SYMBOL_GPL vmlinux 0x22a52ab9 tracepoint_probe_unregister +EXPORT_SYMBOL_GPL vmlinux 0x22b945ca __generic_fsdax_supported +EXPORT_SYMBOL_GPL vmlinux 0x22bbac51 pinmux_generic_add_function +EXPORT_SYMBOL_GPL vmlinux 0x22c4f3aa i2c_new_client_device +EXPORT_SYMBOL_GPL vmlinux 0x22d03d42 extcon_register_notifier_all +EXPORT_SYMBOL_GPL vmlinux 0x22d13148 rtc_class_open +EXPORT_SYMBOL_GPL vmlinux 0x22d65a13 mddev_resume +EXPORT_SYMBOL_GPL vmlinux 0x22d9409b iomap_sort_ioends +EXPORT_SYMBOL_GPL vmlinux 0x22d95e60 debugfs_rename +EXPORT_SYMBOL_GPL vmlinux 0x22ecd77b sdhci_pltfm_unregister +EXPORT_SYMBOL_GPL vmlinux 0x22fcef0b __page_file_index +EXPORT_SYMBOL_GPL vmlinux 0x22fd4d1e regmap_can_raw_write +EXPORT_SYMBOL_GPL vmlinux 0x230b0809 snd_soc_find_dai_with_mutex +EXPORT_SYMBOL_GPL vmlinux 0x230c7cc8 nanddev_bbt_cleanup +EXPORT_SYMBOL_GPL vmlinux 0x230e7e76 device_wakeup_enable +EXPORT_SYMBOL_GPL vmlinux 0x23176e76 devm_kstrdup +EXPORT_SYMBOL_GPL vmlinux 0x23277fe0 xdp_convert_zc_to_xdp_frame +EXPORT_SYMBOL_GPL vmlinux 0x2331537c io_cgrp_subsys +EXPORT_SYMBOL_GPL vmlinux 0x23412816 rtc_tm_to_ktime +EXPORT_SYMBOL_GPL vmlinux 0x23450042 inet_unhash +EXPORT_SYMBOL_GPL vmlinux 0x234cf416 devlink_fmsg_string_pair_put +EXPORT_SYMBOL_GPL vmlinux 0x236aac84 __ip6_datagram_connect +EXPORT_SYMBOL_GPL vmlinux 0x237e42b4 snd_soc_add_dai_controls +EXPORT_SYMBOL_GPL vmlinux 0x23864ce7 cpuset_mem_spread_node +EXPORT_SYMBOL_GPL vmlinux 0x238b9070 sysfs_remove_link +EXPORT_SYMBOL_GPL vmlinux 0x2393609b pwm_apply_state +EXPORT_SYMBOL_GPL vmlinux 0x23950433 efivar_variable_is_removable +EXPORT_SYMBOL_GPL vmlinux 0x2396c7f0 clk_set_parent +EXPORT_SYMBOL_GPL vmlinux 0x239a5e4f of_get_regulator_init_data +EXPORT_SYMBOL_GPL vmlinux 0x23a91887 ahci_platform_enable_resources +EXPORT_SYMBOL_GPL vmlinux 0x23ab6934 clk_hw_register_fixed_factor +EXPORT_SYMBOL_GPL vmlinux 0x23aeed5e of_irq_parse_and_map_pci +EXPORT_SYMBOL_GPL vmlinux 0x23d88a63 regmap_exit +EXPORT_SYMBOL_GPL vmlinux 0x23f47769 blk_register_queue +EXPORT_SYMBOL_GPL vmlinux 0x23fcd86b __get_mtd_device +EXPORT_SYMBOL_GPL vmlinux 0x2400c6a4 devfreq_event_reset_event +EXPORT_SYMBOL_GPL vmlinux 0x241f6fb6 dev_pm_qos_add_request +EXPORT_SYMBOL_GPL vmlinux 0x2429bfbe mtd_lock_user_prot_reg +EXPORT_SYMBOL_GPL vmlinux 0x2436e871 platform_irq_count +EXPORT_SYMBOL_GPL vmlinux 0x2437ed1c ohci_hub_status_data +EXPORT_SYMBOL_GPL vmlinux 0x243ae467 icc_get +EXPORT_SYMBOL_GPL vmlinux 0x243f0b4b crypto_check_attr_type +EXPORT_SYMBOL_GPL vmlinux 0x243fce48 da903x_reads +EXPORT_SYMBOL_GPL vmlinux 0x24521aab spi_get_device_id +EXPORT_SYMBOL_GPL vmlinux 0x2459ceab devlink_dpipe_entry_ctx_prepare +EXPORT_SYMBOL_GPL vmlinux 0x245af8c6 get_task_pid +EXPORT_SYMBOL_GPL vmlinux 0x246eacec kill_pid_usb_asyncio +EXPORT_SYMBOL_GPL vmlinux 0x2476eeca bpf_prog_inc_not_zero +EXPORT_SYMBOL_GPL vmlinux 0x247ef831 kdb_unregister +EXPORT_SYMBOL_GPL vmlinux 0x248a811c bpf_prog_put +EXPORT_SYMBOL_GPL vmlinux 0x24aa1f87 regmap_get_reg_stride +EXPORT_SYMBOL_GPL vmlinux 0x24ab2800 pci_sriov_configure_simple +EXPORT_SYMBOL_GPL vmlinux 0x24ad11db wakeup_sources_read_unlock +EXPORT_SYMBOL_GPL vmlinux 0x24af7540 dev_pm_opp_register_set_opp_helper +EXPORT_SYMBOL_GPL vmlinux 0x24b88a23 lwtunnel_build_state +EXPORT_SYMBOL_GPL vmlinux 0x24d5e8ef pm_clk_init +EXPORT_SYMBOL_GPL vmlinux 0x24da0093 rcu_inkernel_boot_has_ended +EXPORT_SYMBOL_GPL vmlinux 0x24dcec46 ethnl_cable_test_pulse +EXPORT_SYMBOL_GPL vmlinux 0x24eb7e32 leds_list +EXPORT_SYMBOL_GPL vmlinux 0x24ed46d9 mbox_request_channel_byname +EXPORT_SYMBOL_GPL vmlinux 0x24f39c39 reset_control_reset +EXPORT_SYMBOL_GPL vmlinux 0x24f63dcf ata_xfer_mask2mode +EXPORT_SYMBOL_GPL vmlinux 0x24fc367d relay_open +EXPORT_SYMBOL_GPL vmlinux 0x25106820 of_find_spi_device_by_node +EXPORT_SYMBOL_GPL vmlinux 0x252afcaa fib_nl_newrule +EXPORT_SYMBOL_GPL vmlinux 0x25379e73 clk_set_min_rate +EXPORT_SYMBOL_GPL vmlinux 0x2541a979 snd_soc_calc_frame_size +EXPORT_SYMBOL_GPL vmlinux 0x255a935e i2c_probe_func_quick_read +EXPORT_SYMBOL_GPL vmlinux 0x25674109 fat_remove_entries +EXPORT_SYMBOL_GPL vmlinux 0x2570c63b pci_stop_and_remove_bus_device_locked +EXPORT_SYMBOL_GPL vmlinux 0x2578889a perf_event_refresh +EXPORT_SYMBOL_GPL vmlinux 0x257d5fee wakeup_source_remove +EXPORT_SYMBOL_GPL vmlinux 0x2592fc6c console_printk +EXPORT_SYMBOL_GPL vmlinux 0x25aff6cd pci_user_write_config_byte +EXPORT_SYMBOL_GPL vmlinux 0x25b8fa54 regulator_set_voltage_time_sel +EXPORT_SYMBOL_GPL vmlinux 0x25ba4c6d iommu_unmap_fast +EXPORT_SYMBOL_GPL vmlinux 0x25bf961f snd_soc_dapm_new_widgets +EXPORT_SYMBOL_GPL vmlinux 0x25c50bda ata_cable_40wire +EXPORT_SYMBOL_GPL vmlinux 0x25d6f188 firmware_request_cache +EXPORT_SYMBOL_GPL vmlinux 0x25d713b1 spi_unregister_device +EXPORT_SYMBOL_GPL vmlinux 0x25d9600e sdhci_cqe_disable +EXPORT_SYMBOL_GPL vmlinux 0x25ee6401 serdev_device_write_buf +EXPORT_SYMBOL_GPL vmlinux 0x25fbb2d5 led_set_brightness_nosleep +EXPORT_SYMBOL_GPL vmlinux 0x260470cd devm_fwnode_pwm_get +EXPORT_SYMBOL_GPL vmlinux 0x260759e6 devlink_alloc +EXPORT_SYMBOL_GPL vmlinux 0x26242ae0 device_remove_file +EXPORT_SYMBOL_GPL vmlinux 0x2638586b xas_init_marks +EXPORT_SYMBOL_GPL vmlinux 0x26465d06 serial8250_em485_stop_tx +EXPORT_SYMBOL_GPL vmlinux 0x264a07ed request_firmware_direct +EXPORT_SYMBOL_GPL vmlinux 0x264d715d regulator_get_mode +EXPORT_SYMBOL_GPL vmlinux 0x2651d3da bpf_offload_dev_netdev_register +EXPORT_SYMBOL_GPL vmlinux 0x26520970 vm_memory_committed +EXPORT_SYMBOL_GPL vmlinux 0x265319ff pci_epc_get_msi +EXPORT_SYMBOL_GPL vmlinux 0x265bbef9 kexec_crash_loaded +EXPORT_SYMBOL_GPL vmlinux 0x265eaa64 regulator_set_soft_start_regmap +EXPORT_SYMBOL_GPL vmlinux 0x266373f2 ahci_handle_port_intr +EXPORT_SYMBOL_GPL vmlinux 0x267028b5 ping_bind +EXPORT_SYMBOL_GPL vmlinux 0x2673d4ec clk_hw_set_parent +EXPORT_SYMBOL_GPL vmlinux 0x2679b030 rtc_update_irq +EXPORT_SYMBOL_GPL vmlinux 0x267df662 smp_call_on_cpu +EXPORT_SYMBOL_GPL vmlinux 0x26801149 clk_hw_get_parent +EXPORT_SYMBOL_GPL vmlinux 0x268069a0 dst_cache_get_ip4 +EXPORT_SYMBOL_GPL vmlinux 0x26964306 pinctrl_add_gpio_ranges +EXPORT_SYMBOL_GPL vmlinux 0x26ab4755 put_old_itimerspec32 +EXPORT_SYMBOL_GPL vmlinux 0x26aeba90 extcon_dev_register +EXPORT_SYMBOL_GPL vmlinux 0x26bcc52b disk_has_partitions +EXPORT_SYMBOL_GPL vmlinux 0x26c171d2 elv_rqhash_add +EXPORT_SYMBOL_GPL vmlinux 0x26c547c0 bL_switcher_register_notifier +EXPORT_SYMBOL_GPL vmlinux 0x26c90ea4 scsi_eh_get_sense +EXPORT_SYMBOL_GPL vmlinux 0x26ed2186 register_vmap_purge_notifier +EXPORT_SYMBOL_GPL vmlinux 0x27100013 mtd_add_partition +EXPORT_SYMBOL_GPL vmlinux 0x27247a96 regulator_set_current_limit_regmap +EXPORT_SYMBOL_GPL vmlinux 0x272e9d77 hisi_reset_exit +EXPORT_SYMBOL_GPL vmlinux 0x2734197f musb_readb +EXPORT_SYMBOL_GPL vmlinux 0x273fc84c pinmux_generic_remove_function +EXPORT_SYMBOL_GPL vmlinux 0x2742e86d gov_attr_set_get +EXPORT_SYMBOL_GPL vmlinux 0x274cf5e1 __clk_get_flags +EXPORT_SYMBOL_GPL vmlinux 0x274dd1a3 sg_free_table_chained +EXPORT_SYMBOL_GPL vmlinux 0x275e25f6 yield_to +EXPORT_SYMBOL_GPL vmlinux 0x276ad1e3 metadata_dst_alloc_percpu +EXPORT_SYMBOL_GPL vmlinux 0x276e74a3 ata_pci_bmdma_prepare_host +EXPORT_SYMBOL_GPL vmlinux 0x2784a088 device_create_file +EXPORT_SYMBOL_GPL vmlinux 0x278cc47f fscrypt_ioctl_add_key +EXPORT_SYMBOL_GPL vmlinux 0x279b0a1d switchdev_handle_port_obj_add +EXPORT_SYMBOL_GPL vmlinux 0x27a67258 fuse_direct_io +EXPORT_SYMBOL_GPL vmlinux 0x27ac5c1d tcp_register_ulp +EXPORT_SYMBOL_GPL vmlinux 0x27b0754c securityfs_remove +EXPORT_SYMBOL_GPL vmlinux 0x27b35376 generic_device_group +EXPORT_SYMBOL_GPL vmlinux 0x27f4f029 ftrace_set_global_filter +EXPORT_SYMBOL_GPL vmlinux 0x27f849cb devm_hwmon_device_register_with_info +EXPORT_SYMBOL_GPL vmlinux 0x27fa66e1 nr_free_buffer_pages +EXPORT_SYMBOL_GPL vmlinux 0x2803753c hwspin_lock_request_specific +EXPORT_SYMBOL_GPL vmlinux 0x280bad38 kobject_create_and_add +EXPORT_SYMBOL_GPL vmlinux 0x280c9bdb tty_port_register_device_attr +EXPORT_SYMBOL_GPL vmlinux 0x2821af0f clk_hw_get_flags +EXPORT_SYMBOL_GPL vmlinux 0x282b7d57 xas_clear_mark +EXPORT_SYMBOL_GPL vmlinux 0x282cdabc usb_led_activity +EXPORT_SYMBOL_GPL vmlinux 0x282ea83f pci_epc_get_features +EXPORT_SYMBOL_GPL vmlinux 0x28324646 fat_get_dotdot_entry +EXPORT_SYMBOL_GPL vmlinux 0x2837c4de perf_event_pause +EXPORT_SYMBOL_GPL vmlinux 0x283bd528 virtio_finalize_features +EXPORT_SYMBOL_GPL vmlinux 0x2864abc9 klist_node_attached +EXPORT_SYMBOL_GPL vmlinux 0x286cc647 async_synchronize_cookie_domain +EXPORT_SYMBOL_GPL vmlinux 0x28712861 shmem_truncate_range +EXPORT_SYMBOL_GPL vmlinux 0x2880fb30 gpiochip_populate_parent_fwspec_fourcell +EXPORT_SYMBOL_GPL vmlinux 0x2882d40e usb_role_switch_unregister +EXPORT_SYMBOL_GPL vmlinux 0x288ebaf8 pci_num_vf +EXPORT_SYMBOL_GPL vmlinux 0x28a7db63 nd_fletcher64 +EXPORT_SYMBOL_GPL vmlinux 0x28aa560f nvdimm_security_setup_events +EXPORT_SYMBOL_GPL vmlinux 0x28aa6a67 call_rcu +EXPORT_SYMBOL_GPL vmlinux 0x28ab4fb9 pinctrl_gpio_free +EXPORT_SYMBOL_GPL vmlinux 0x28ac72fb devres_get +EXPORT_SYMBOL_GPL vmlinux 0x28b030d2 of_overlay_notifier_unregister +EXPORT_SYMBOL_GPL vmlinux 0x28b31554 efivar_entry_add +EXPORT_SYMBOL_GPL vmlinux 0x28b4a2c7 genphy_c45_read_mdix +EXPORT_SYMBOL_GPL vmlinux 0x28be0b91 crypto_cipher_decrypt_one +EXPORT_SYMBOL_GPL vmlinux 0x28c41eff crypto_stats_decompress +EXPORT_SYMBOL_GPL vmlinux 0x28c8dd6a devlink_port_params_register +EXPORT_SYMBOL_GPL vmlinux 0x28cc12e2 blk_mq_freeze_queue +EXPORT_SYMBOL_GPL vmlinux 0x28d66ce7 dev_pm_genpd_set_performance_state +EXPORT_SYMBOL_GPL vmlinux 0x28df81ed ip_fib_metrics_init +EXPORT_SYMBOL_GPL vmlinux 0x28e5b39a of_genpd_remove_subdomain +EXPORT_SYMBOL_GPL vmlinux 0x29277ca6 usb_hcd_poll_rh_status +EXPORT_SYMBOL_GPL vmlinux 0x292841ce skb_morph +EXPORT_SYMBOL_GPL vmlinux 0x292a86e0 regmap_bulk_read +EXPORT_SYMBOL_GPL vmlinux 0x29344faf devm_phy_create +EXPORT_SYMBOL_GPL vmlinux 0x2938e78e call_switchdev_blocking_notifiers +EXPORT_SYMBOL_GPL vmlinux 0x294bc862 sock_diag_register +EXPORT_SYMBOL_GPL vmlinux 0x295385f7 crypto_alloc_ahash +EXPORT_SYMBOL_GPL vmlinux 0x2956a858 devlink_is_reload_failed +EXPORT_SYMBOL_GPL vmlinux 0x295a2670 clk_regmap_divider_ro_ops +EXPORT_SYMBOL_GPL vmlinux 0x295b982a hisi_clk_register_fixed_rate +EXPORT_SYMBOL_GPL vmlinux 0x299529f0 pwm_adjust_config +EXPORT_SYMBOL_GPL vmlinux 0x299fe1bb iomap_dio_iopoll +EXPORT_SYMBOL_GPL vmlinux 0x29cc7382 pci_ioremap_bar +EXPORT_SYMBOL_GPL vmlinux 0x29ceb64b iommu_get_domain_for_dev +EXPORT_SYMBOL_GPL vmlinux 0x29cf2470 rdma_cgrp_subsys_enabled_key +EXPORT_SYMBOL_GPL vmlinux 0x29dc9936 find_get_pid +EXPORT_SYMBOL_GPL vmlinux 0x29e200ad devlink_dpipe_table_counter_enabled +EXPORT_SYMBOL_GPL vmlinux 0x29eba37f current_is_async +EXPORT_SYMBOL_GPL vmlinux 0x29f6ff2c trace_get_event_file +EXPORT_SYMBOL_GPL vmlinux 0x2a03f01e __bio_try_merge_page +EXPORT_SYMBOL_GPL vmlinux 0x2a0a40fa mdio_bus_init +EXPORT_SYMBOL_GPL vmlinux 0x2a2a8084 crypto_unregister_ahashes +EXPORT_SYMBOL_GPL vmlinux 0x2a2aea17 clk_fixed_rate_ops +EXPORT_SYMBOL_GPL vmlinux 0x2a2d3a82 cpufreq_freq_transition_end +EXPORT_SYMBOL_GPL vmlinux 0x2a62cb3a ring_buffer_overrun_cpu +EXPORT_SYMBOL_GPL vmlinux 0x2a678a13 __suspend_report_result +EXPORT_SYMBOL_GPL vmlinux 0x2a6b0a45 spi_mem_driver_unregister +EXPORT_SYMBOL_GPL vmlinux 0x2a7de8bc udp6_lib_lookup +EXPORT_SYMBOL_GPL vmlinux 0x2aadad1a efi_capsule_update +EXPORT_SYMBOL_GPL vmlinux 0x2ac08d37 dapm_pinctrl_event +EXPORT_SYMBOL_GPL vmlinux 0x2acd9cb7 phy_configure +EXPORT_SYMBOL_GPL vmlinux 0x2acf5c91 pci_epc_add_epf +EXPORT_SYMBOL_GPL vmlinux 0x2ae00b4c pm_generic_resume_noirq +EXPORT_SYMBOL_GPL vmlinux 0x2ae8d03a ata_sas_sync_probe +EXPORT_SYMBOL_GPL vmlinux 0x2af3a55a ata_sas_port_destroy +EXPORT_SYMBOL_GPL vmlinux 0x2b0b6420 bio_associate_blkg +EXPORT_SYMBOL_GPL vmlinux 0x2b199f78 da903x_read +EXPORT_SYMBOL_GPL vmlinux 0x2b20c7eb snd_soc_dapm_get_volsw +EXPORT_SYMBOL_GPL vmlinux 0x2b246076 page_mkclean +EXPORT_SYMBOL_GPL vmlinux 0x2b26b548 crypto_ahash_digest +EXPORT_SYMBOL_GPL vmlinux 0x2b3633ff led_trigger_set_default +EXPORT_SYMBOL_GPL vmlinux 0x2b4509dd devlink_health_reporter_state_update +EXPORT_SYMBOL_GPL vmlinux 0x2b552745 skb_defer_rx_timestamp +EXPORT_SYMBOL_GPL vmlinux 0x2b6150fb power_supply_temp2resist_simple +EXPORT_SYMBOL_GPL vmlinux 0x2b70d910 usb_enable_lpm +EXPORT_SYMBOL_GPL vmlinux 0x2b77566e ata_std_postreset +EXPORT_SYMBOL_GPL vmlinux 0x2b84d71b mbox_chan_received_data +EXPORT_SYMBOL_GPL vmlinux 0x2b952517 clk_has_parent +EXPORT_SYMBOL_GPL vmlinux 0x2b9c46eb __mmc_send_status +EXPORT_SYMBOL_GPL vmlinux 0x2bb7e46e virtqueue_get_used_addr +EXPORT_SYMBOL_GPL vmlinux 0x2bbb047f bus_rescan_devices +EXPORT_SYMBOL_GPL vmlinux 0x2bdc8064 snd_soc_dpcm_runtime_update +EXPORT_SYMBOL_GPL vmlinux 0x2be5030f copy_to_user_nofault +EXPORT_SYMBOL_GPL vmlinux 0x2bf3781c devlink_dpipe_entry_ctx_close +EXPORT_SYMBOL_GPL vmlinux 0x2bf37cd4 snd_soc_put_volsw +EXPORT_SYMBOL_GPL vmlinux 0x2c0c6fcf __mnt_is_readonly +EXPORT_SYMBOL_GPL vmlinux 0x2c1e02d8 cpts_create +EXPORT_SYMBOL_GPL vmlinux 0x2c208607 power_supply_is_system_supplied +EXPORT_SYMBOL_GPL vmlinux 0x2c2490e7 con_debug_enter +EXPORT_SYMBOL_GPL vmlinux 0x2c3054f9 net_inc_ingress_queue +EXPORT_SYMBOL_GPL vmlinux 0x2c4be286 skb_complete_tx_timestamp +EXPORT_SYMBOL_GPL vmlinux 0x2c568dcd snd_soc_put_volsw_sx +EXPORT_SYMBOL_GPL vmlinux 0x2c66ac85 devlink_info_serial_number_put +EXPORT_SYMBOL_GPL vmlinux 0x2c7760d5 nand_read_oob_op +EXPORT_SYMBOL_GPL vmlinux 0x2c79fe0f sdio_f0_writeb +EXPORT_SYMBOL_GPL vmlinux 0x2c7db04a crypto_alloc_sync_skcipher +EXPORT_SYMBOL_GPL vmlinux 0x2c7db649 irq_dispose_mapping +EXPORT_SYMBOL_GPL vmlinux 0x2c80b225 cpts_tx_timestamp +EXPORT_SYMBOL_GPL vmlinux 0x2c8659a1 spi_slave_abort +EXPORT_SYMBOL_GPL vmlinux 0x2c8dd6b8 edac_mem_types +EXPORT_SYMBOL_GPL vmlinux 0x2c97f8a2 of_reconfig_notifier_register +EXPORT_SYMBOL_GPL vmlinux 0x2ca3cf3d blk_trace_startstop +EXPORT_SYMBOL_GPL vmlinux 0x2cab21ce kthread_func +EXPORT_SYMBOL_GPL vmlinux 0x2cbe7ecf mtd_panic_write +EXPORT_SYMBOL_GPL vmlinux 0x2cea32ee unregister_oldmem_pfn_is_ram +EXPORT_SYMBOL_GPL vmlinux 0x2ced2f57 rio_mport_write_config_8 +EXPORT_SYMBOL_GPL vmlinux 0x2cf1a888 regulator_put +EXPORT_SYMBOL_GPL vmlinux 0x2cf6046e task_cgroup_path +EXPORT_SYMBOL_GPL vmlinux 0x2d0c0d04 inet_hash +EXPORT_SYMBOL_GPL vmlinux 0x2d1b02d2 usermodehelper_read_lock_wait +EXPORT_SYMBOL_GPL vmlinux 0x2d282e90 __blkdev_driver_ioctl +EXPORT_SYMBOL_GPL vmlinux 0x2d2dd36f kobj_ns_grab_current +EXPORT_SYMBOL_GPL vmlinux 0x2d31552e debugfs_create_u32 +EXPORT_SYMBOL_GPL vmlinux 0x2d368c4c nand_subop_get_addr_start_off +EXPORT_SYMBOL_GPL vmlinux 0x2d41e6f5 __trace_puts +EXPORT_SYMBOL_GPL vmlinux 0x2d59048e debugfs_attr_write +EXPORT_SYMBOL_GPL vmlinux 0x2d7447b6 mmc_regulator_set_vqmmc +EXPORT_SYMBOL_GPL vmlinux 0x2d79f7de snd_soc_jack_report +EXPORT_SYMBOL_GPL vmlinux 0x2d81fc16 relay_subbufs_consumed +EXPORT_SYMBOL_GPL vmlinux 0x2d898d5e bpf_trace_run12 +EXPORT_SYMBOL_GPL vmlinux 0x2d8bb027 scsi_dh_set_params +EXPORT_SYMBOL_GPL vmlinux 0x2d9f8cd9 fwnode_get_parent +EXPORT_SYMBOL_GPL vmlinux 0x2daa2177 x509_free_certificate +EXPORT_SYMBOL_GPL vmlinux 0x2dab4f59 skb_partial_csum_set +EXPORT_SYMBOL_GPL vmlinux 0x2db67d4a owl_sps_set_pg +EXPORT_SYMBOL_GPL vmlinux 0x2e028ae6 rcutorture_get_gp_data +EXPORT_SYMBOL_GPL vmlinux 0x2e2360b1 ftrace_set_global_notrace +EXPORT_SYMBOL_GPL vmlinux 0x2e256870 shash_free_singlespawn_instance +EXPORT_SYMBOL_GPL vmlinux 0x2e2f1259 of_pci_find_child_device +EXPORT_SYMBOL_GPL vmlinux 0x2e30509c percpu_ref_switch_to_atomic +EXPORT_SYMBOL_GPL vmlinux 0x2e4261f6 snmp_get_cpu_field64 +EXPORT_SYMBOL_GPL vmlinux 0x2e968c56 __netpoll_cleanup +EXPORT_SYMBOL_GPL vmlinux 0x2e9fcb72 register_mtd_blktrans +EXPORT_SYMBOL_GPL vmlinux 0x2eb26f91 crypto_stats_aead_encrypt +EXPORT_SYMBOL_GPL vmlinux 0x2eb51783 max8997_write_reg +EXPORT_SYMBOL_GPL vmlinux 0x2eb931d9 do_unregister_con_driver +EXPORT_SYMBOL_GPL vmlinux 0x2eba7d3d led_blink_set_oneshot +EXPORT_SYMBOL_GPL vmlinux 0x2ebe3135 cpu_is_hotpluggable +EXPORT_SYMBOL_GPL vmlinux 0x2ec2b77c tty_ldisc_receive_buf +EXPORT_SYMBOL_GPL vmlinux 0x2ed53f64 tpm_tis_resume +EXPORT_SYMBOL_GPL vmlinux 0x2edd1042 addrconf_prefix_rcv_add_addr +EXPORT_SYMBOL_GPL vmlinux 0x2ef2a0a1 xfrm_audit_policy_delete +EXPORT_SYMBOL_GPL vmlinux 0x2ef4a0e9 i2c_new_ancillary_device +EXPORT_SYMBOL_GPL vmlinux 0x2efbc76a ehci_hub_control +EXPORT_SYMBOL_GPL vmlinux 0x2efc648b perf_aux_output_begin +EXPORT_SYMBOL_GPL vmlinux 0x2f02a72c dev_pm_opp_put +EXPORT_SYMBOL_GPL vmlinux 0x2f04a96d ip_valid_fib_dump_req +EXPORT_SYMBOL_GPL vmlinux 0x2f0d9053 usb_otg_state_string +EXPORT_SYMBOL_GPL vmlinux 0x2f103765 usb_deregister +EXPORT_SYMBOL_GPL vmlinux 0x2f1726c7 serdev_device_write_room +EXPORT_SYMBOL_GPL vmlinux 0x2f1e3985 regmap_bulk_write +EXPORT_SYMBOL_GPL vmlinux 0x2f4113a2 dcookie_register +EXPORT_SYMBOL_GPL vmlinux 0x2f4f2eab rtnl_put_cacheinfo +EXPORT_SYMBOL_GPL vmlinux 0x2f50781f crypto_alg_extsize +EXPORT_SYMBOL_GPL vmlinux 0x2f55ac1c blk_steal_bios +EXPORT_SYMBOL_GPL vmlinux 0x2f5c1223 __tracepoint_neigh_cleanup_and_release +EXPORT_SYMBOL_GPL vmlinux 0x2f63e634 usb_poison_anchored_urbs +EXPORT_SYMBOL_GPL vmlinux 0x2f6f3286 simple_attr_write +EXPORT_SYMBOL_GPL vmlinux 0x2f86840c trace_seq_path +EXPORT_SYMBOL_GPL vmlinux 0x2f895416 vbin_printf +EXPORT_SYMBOL_GPL vmlinux 0x2fade0be synth_event_add_field +EXPORT_SYMBOL_GPL vmlinux 0x2fb40455 dev_attr_em_message_type +EXPORT_SYMBOL_GPL vmlinux 0x2fbf4d71 mtk_pinconf_adv_drive_get +EXPORT_SYMBOL_GPL vmlinux 0x2fda81b8 of_irq_to_resource_table +EXPORT_SYMBOL_GPL vmlinux 0x2fe183df extcon_find_edev_by_node +EXPORT_SYMBOL_GPL vmlinux 0x2fe39490 uart_insert_char +EXPORT_SYMBOL_GPL vmlinux 0x2fea39ef reset_simple_ops +EXPORT_SYMBOL_GPL vmlinux 0x2ff27c63 blk_mq_sched_mark_restart_hctx +EXPORT_SYMBOL_GPL vmlinux 0x300952fa of_changeset_action +EXPORT_SYMBOL_GPL vmlinux 0x301551a5 rio_request_inb_pwrite +EXPORT_SYMBOL_GPL vmlinux 0x3015b8b8 devm_ioremap_uc +EXPORT_SYMBOL_GPL vmlinux 0x301b942d spi_mem_dirmap_write +EXPORT_SYMBOL_GPL vmlinux 0x302d0cce dma_buf_pin +EXPORT_SYMBOL_GPL vmlinux 0x3031408e pm_clk_destroy +EXPORT_SYMBOL_GPL vmlinux 0x3035d8c3 __of_phy_provider_register +EXPORT_SYMBOL_GPL vmlinux 0x30366e64 __skb_get_hash_symmetric +EXPORT_SYMBOL_GPL vmlinux 0x30395757 of_regulator_match +EXPORT_SYMBOL_GPL vmlinux 0x304c79d5 snd_soc_dapm_enable_pin_unlocked +EXPORT_SYMBOL_GPL vmlinux 0x3061cfce ring_buffer_entries_cpu +EXPORT_SYMBOL_GPL vmlinux 0x3069809a __tracepoint_xhci_dbg_quirks +EXPORT_SYMBOL_GPL vmlinux 0x30741085 sched_trace_rd_span +EXPORT_SYMBOL_GPL vmlinux 0x309b899c devm_clk_hw_unregister +EXPORT_SYMBOL_GPL vmlinux 0x309d1eca sdhci_pltfm_resume +EXPORT_SYMBOL_GPL vmlinux 0x30a03a20 pm_clk_add_notifier +EXPORT_SYMBOL_GPL vmlinux 0x30a2b5f5 cpuacct_cgrp_subsys_enabled_key +EXPORT_SYMBOL_GPL vmlinux 0x30b1826a wm831x_bulk_read +EXPORT_SYMBOL_GPL vmlinux 0x30b67305 snd_soc_dpcm_be_can_update +EXPORT_SYMBOL_GPL vmlinux 0x30bd8cbf kernel_read_file_from_path +EXPORT_SYMBOL_GPL vmlinux 0x30c2c046 thermal_zone_get_slope +EXPORT_SYMBOL_GPL vmlinux 0x30d4a1a5 fat_truncate_time +EXPORT_SYMBOL_GPL vmlinux 0x30fc8e76 tc3589x_reg_read +EXPORT_SYMBOL_GPL vmlinux 0x310006ea mmu_interval_read_begin +EXPORT_SYMBOL_GPL vmlinux 0x310c3293 i2c_recover_bus +EXPORT_SYMBOL_GPL vmlinux 0x310c9216 pci_iomap_wc_range +EXPORT_SYMBOL_GPL vmlinux 0x31266931 con_debug_leave +EXPORT_SYMBOL_GPL vmlinux 0x3133703d regulator_bulk_unregister_supply_alias +EXPORT_SYMBOL_GPL vmlinux 0x313b9743 snd_soc_dai_get_channel_map +EXPORT_SYMBOL_GPL vmlinux 0x314d5984 dev_pm_opp_put_opp_table +EXPORT_SYMBOL_GPL vmlinux 0x3153be77 platform_device_add_data +EXPORT_SYMBOL_GPL vmlinux 0x316bddcb fib_nexthop_info +EXPORT_SYMBOL_GPL vmlinux 0x31773020 dw_pcie_ep_linkup +EXPORT_SYMBOL_GPL vmlinux 0x31800ec6 rio_free_net +EXPORT_SYMBOL_GPL vmlinux 0x3192d768 cpufreq_remove_update_util_hook +EXPORT_SYMBOL_GPL vmlinux 0x31a82046 crypto_register_algs +EXPORT_SYMBOL_GPL vmlinux 0x31a95e8b ring_buffer_record_enable_cpu +EXPORT_SYMBOL_GPL vmlinux 0x31af0cb7 tcp_ca_get_key_by_name +EXPORT_SYMBOL_GPL vmlinux 0x31bf3a8f vfs_write +EXPORT_SYMBOL_GPL vmlinux 0x31c1f2e4 gpiochip_get_desc +EXPORT_SYMBOL_GPL vmlinux 0x31c7970f pciserial_suspend_ports +EXPORT_SYMBOL_GPL vmlinux 0x31c8d814 sata_port_ops +EXPORT_SYMBOL_GPL vmlinux 0x31ce2caa regulator_map_voltage_pickable_linear_range +EXPORT_SYMBOL_GPL vmlinux 0x31dc098a rio_local_set_device_id +EXPORT_SYMBOL_GPL vmlinux 0x31dc18ce blk_queue_max_discard_segments +EXPORT_SYMBOL_GPL vmlinux 0x31f01563 nf_hook_entries_delete_raw +EXPORT_SYMBOL_GPL vmlinux 0x31f1e120 get_net_ns_by_pid +EXPORT_SYMBOL_GPL vmlinux 0x3224b2a9 mpi_read_raw_from_sgl +EXPORT_SYMBOL_GPL vmlinux 0x323349b0 ata_sff_queue_pio_task +EXPORT_SYMBOL_GPL vmlinux 0x3243ae3f crypto_stats_kpp_compute_shared_secret +EXPORT_SYMBOL_GPL vmlinux 0x324763db anon_transport_class_unregister +EXPORT_SYMBOL_GPL vmlinux 0x324ab73f snd_soc_dai_compr_get_params +EXPORT_SYMBOL_GPL vmlinux 0x324c4ed4 genpd_dev_pm_attach_by_id +EXPORT_SYMBOL_GPL vmlinux 0x32586a95 uart_handle_dcd_change +EXPORT_SYMBOL_GPL vmlinux 0x32652b80 nand_read_page_op +EXPORT_SYMBOL_GPL vmlinux 0x327459c1 snd_soc_dapm_kcontrol_widget +EXPORT_SYMBOL_GPL vmlinux 0x32825a0f scsi_dh_attached_handler_name +EXPORT_SYMBOL_GPL vmlinux 0x32829219 sdhci_start_tuning +EXPORT_SYMBOL_GPL vmlinux 0x328d200e ata_scsi_slave_config +EXPORT_SYMBOL_GPL vmlinux 0x329126fa ata_sff_dma_pause +EXPORT_SYMBOL_GPL vmlinux 0x32a16a39 perf_pmu_unregister +EXPORT_SYMBOL_GPL vmlinux 0x32ab06cc irq_percpu_is_enabled +EXPORT_SYMBOL_GPL vmlinux 0x32b2c954 pm_clk_runtime_resume +EXPORT_SYMBOL_GPL vmlinux 0x32c3cb4e class_compat_register +EXPORT_SYMBOL_GPL vmlinux 0x32ce5f4f srcu_batches_completed +EXPORT_SYMBOL_GPL vmlinux 0x32e8bb44 hwmon_device_register +EXPORT_SYMBOL_GPL vmlinux 0x32ebe436 phy_exit +EXPORT_SYMBOL_GPL vmlinux 0x32f17652 sk_msg_zerocopy_from_iter +EXPORT_SYMBOL_GPL vmlinux 0x32fe9bf7 pci_bus_max_busnr +EXPORT_SYMBOL_GPL vmlinux 0x33010b06 sec_irq_init +EXPORT_SYMBOL_GPL vmlinux 0x331e446f phy_restart_aneg +EXPORT_SYMBOL_GPL vmlinux 0x3335ae32 freq_qos_update_request +EXPORT_SYMBOL_GPL vmlinux 0x3337d0b1 regulator_map_voltage_iterate +EXPORT_SYMBOL_GPL vmlinux 0x335bc82f edac_mc_find_csrow_by_page +EXPORT_SYMBOL_GPL vmlinux 0x335c570f enable_percpu_irq +EXPORT_SYMBOL_GPL vmlinux 0x336332c7 xdp_rxq_info_reg +EXPORT_SYMBOL_GPL vmlinux 0x336dbb55 omap_iommu_restore_ctx +EXPORT_SYMBOL_GPL vmlinux 0x339e4ae6 __ata_change_queue_depth +EXPORT_SYMBOL_GPL vmlinux 0x33ac819e iommu_device_link +EXPORT_SYMBOL_GPL vmlinux 0x33c806d9 ata_sas_port_alloc +EXPORT_SYMBOL_GPL vmlinux 0x33cd2cd6 cpu_latency_qos_update_request +EXPORT_SYMBOL_GPL vmlinux 0x33e9e0a2 atomic_notifier_chain_register +EXPORT_SYMBOL_GPL vmlinux 0x33efc8c8 trace_clock_local +EXPORT_SYMBOL_GPL vmlinux 0x341215b2 ata_bmdma_port_intr +EXPORT_SYMBOL_GPL vmlinux 0x34170aec max8997_read_reg +EXPORT_SYMBOL_GPL vmlinux 0x3427cd1b dma_buf_fd +EXPORT_SYMBOL_GPL vmlinux 0x34339fea extcon_set_property_sync +EXPORT_SYMBOL_GPL vmlinux 0x34341baa blk_mq_unquiesce_queue +EXPORT_SYMBOL_GPL vmlinux 0x34407691 crypto_has_ahash +EXPORT_SYMBOL_GPL vmlinux 0x344ed12f regulator_sync_voltage +EXPORT_SYMBOL_GPL vmlinux 0x34592ddc pci_find_next_capability +EXPORT_SYMBOL_GPL vmlinux 0x3461ba36 usb_bus_idr +EXPORT_SYMBOL_GPL vmlinux 0x346408f0 bpf_prog_create +EXPORT_SYMBOL_GPL vmlinux 0x34908579 sbitmap_finish_wait +EXPORT_SYMBOL_GPL vmlinux 0x34a3e17c bus_find_device +EXPORT_SYMBOL_GPL vmlinux 0x34a84df3 __tracepoint_detach_device_from_domain +EXPORT_SYMBOL_GPL vmlinux 0x34a938ed pinctrl_pm_select_default_state +EXPORT_SYMBOL_GPL vmlinux 0x34ac50a4 visitorl +EXPORT_SYMBOL_GPL vmlinux 0x34b10c06 pinctrl_generic_get_group_pins +EXPORT_SYMBOL_GPL vmlinux 0x34b4a0a7 gpiod_set_array_value +EXPORT_SYMBOL_GPL vmlinux 0x34b9bdd8 regulator_bulk_free +EXPORT_SYMBOL_GPL vmlinux 0x34dc4cd7 sfp_add_phy +EXPORT_SYMBOL_GPL vmlinux 0x34dcc478 tty_port_install +EXPORT_SYMBOL_GPL vmlinux 0x34ee0891 __netpoll_free +EXPORT_SYMBOL_GPL vmlinux 0x34f362b0 netdev_is_rx_handler_busy +EXPORT_SYMBOL_GPL vmlinux 0x35146448 device_remove_file_self +EXPORT_SYMBOL_GPL vmlinux 0x351bb970 dapm_regulator_event +EXPORT_SYMBOL_GPL vmlinux 0x352b3813 maxim_charger_calc_reg_current +EXPORT_SYMBOL_GPL vmlinux 0x352ec68b bpf_offload_dev_destroy +EXPORT_SYMBOL_GPL vmlinux 0x3532abfb usb_hcd_start_port_resume +EXPORT_SYMBOL_GPL vmlinux 0x35367100 regulator_is_supported_voltage +EXPORT_SYMBOL_GPL vmlinux 0x353ca0fc snd_soc_dai_set_clkdiv +EXPORT_SYMBOL_GPL vmlinux 0x3545a74e unregister_hw_breakpoint +EXPORT_SYMBOL_GPL vmlinux 0x35660542 blkg_prfill_rwstat +EXPORT_SYMBOL_GPL vmlinux 0x3582d33c mtk_pinconf_drive_set_rev1 +EXPORT_SYMBOL_GPL vmlinux 0x358ae053 root_device_unregister +EXPORT_SYMBOL_GPL vmlinux 0x358b4df6 sdio_get_host_pm_caps +EXPORT_SYMBOL_GPL vmlinux 0x358ff60f twl_get_hfclk_rate +EXPORT_SYMBOL_GPL vmlinux 0x3591c8ed devlink_dpipe_table_resource_set +EXPORT_SYMBOL_GPL vmlinux 0x35996de4 em_register_perf_domain +EXPORT_SYMBOL_GPL vmlinux 0x35997736 regulator_register_notifier +EXPORT_SYMBOL_GPL vmlinux 0x35a05df4 vfs_cancel_lock +EXPORT_SYMBOL_GPL vmlinux 0x35a97172 inet_csk_clone_lock +EXPORT_SYMBOL_GPL vmlinux 0x35c5d72f snd_soc_dpcm_can_be_free_stop +EXPORT_SYMBOL_GPL vmlinux 0x35d74f9a cpu_device_create +EXPORT_SYMBOL_GPL vmlinux 0x35df4b61 __devm_pci_epc_create +EXPORT_SYMBOL_GPL vmlinux 0x35fb47ce regmap_update_bits_base +EXPORT_SYMBOL_GPL vmlinux 0x36075bb5 iommu_group_register_notifier +EXPORT_SYMBOL_GPL vmlinux 0x3610cd58 tcp_get_info +EXPORT_SYMBOL_GPL vmlinux 0x36242943 switchdev_deferred_process +EXPORT_SYMBOL_GPL vmlinux 0x362de961 rhashtable_free_and_destroy +EXPORT_SYMBOL_GPL vmlinux 0x3634a39f of_get_pci_domain_nr +EXPORT_SYMBOL_GPL vmlinux 0x3649dccf nf_ct_hook +EXPORT_SYMBOL_GPL vmlinux 0x3652fb26 vfs_setlease +EXPORT_SYMBOL_GPL vmlinux 0x3656d215 crypto_unregister_alg +EXPORT_SYMBOL_GPL vmlinux 0x366f056a pci_device_is_present +EXPORT_SYMBOL_GPL vmlinux 0x367099e1 pm_relax +EXPORT_SYMBOL_GPL vmlinux 0x3685c08f ata_ncq_sdev_attrs +EXPORT_SYMBOL_GPL vmlinux 0x369fcd70 tracing_snapshot +EXPORT_SYMBOL_GPL vmlinux 0x36a42cbe fscrypt_get_symlink +EXPORT_SYMBOL_GPL vmlinux 0x36b5f6a3 edac_pci_del_device +EXPORT_SYMBOL_GPL vmlinux 0x36ba6382 rio_local_get_device_id +EXPORT_SYMBOL_GPL vmlinux 0x36c2f8f0 snd_soc_get_volsw_sx +EXPORT_SYMBOL_GPL vmlinux 0x36d68595 account_locked_vm +EXPORT_SYMBOL_GPL vmlinux 0x36dddc3b badblocks_store +EXPORT_SYMBOL_GPL vmlinux 0x36e1db4d xhci_resume +EXPORT_SYMBOL_GPL vmlinux 0x36ec8a8a nvmem_device_cell_read +EXPORT_SYMBOL_GPL vmlinux 0x36fc4aa0 synth_event_add_val +EXPORT_SYMBOL_GPL vmlinux 0x370088b6 of_dma_router_register +EXPORT_SYMBOL_GPL vmlinux 0x371887a1 dev_pm_clear_wake_irq +EXPORT_SYMBOL_GPL vmlinux 0x37218576 rdev_set_badblocks +EXPORT_SYMBOL_GPL vmlinux 0x37495f22 regmap_fields_read +EXPORT_SYMBOL_GPL vmlinux 0x374c53e1 ata_get_cmd_descript +EXPORT_SYMBOL_GPL vmlinux 0x37580af1 sdio_claim_irq +EXPORT_SYMBOL_GPL vmlinux 0x37595cb3 meson_clk_mpll_ops +EXPORT_SYMBOL_GPL vmlinux 0x376f35be kobject_uevent +EXPORT_SYMBOL_GPL vmlinux 0x377bbcbc pm_suspend_target_state +EXPORT_SYMBOL_GPL vmlinux 0x37964211 mmu_notifier_get_locked +EXPORT_SYMBOL_GPL vmlinux 0x379b221e of_css +EXPORT_SYMBOL_GPL vmlinux 0x37a3590e devm_led_trigger_register +EXPORT_SYMBOL_GPL vmlinux 0x37b0466b mtk_smi_larb_get +EXPORT_SYMBOL_GPL vmlinux 0x37b45607 mmput +EXPORT_SYMBOL_GPL vmlinux 0x37c1ec41 __irq_set_handler +EXPORT_SYMBOL_GPL vmlinux 0x37d5d635 fuse_dev_install +EXPORT_SYMBOL_GPL vmlinux 0x37d78f85 scsi_eh_ready_devs +EXPORT_SYMBOL_GPL vmlinux 0x37ebd50c dm_suspended +EXPORT_SYMBOL_GPL vmlinux 0x3814935d to_nvdimm +EXPORT_SYMBOL_GPL vmlinux 0x381c8f63 fat_detach +EXPORT_SYMBOL_GPL vmlinux 0x382dfde0 usb_hcd_platform_shutdown +EXPORT_SYMBOL_GPL vmlinux 0x38374815 clear_selection +EXPORT_SYMBOL_GPL vmlinux 0x3850cb98 regmap_parse_val +EXPORT_SYMBOL_GPL vmlinux 0x385e1e49 pci_remove_root_bus +EXPORT_SYMBOL_GPL vmlinux 0x386740b8 devlink_port_unregister +EXPORT_SYMBOL_GPL vmlinux 0x3873fb58 mbox_flush +EXPORT_SYMBOL_GPL vmlinux 0x387a1762 snd_soc_dai_compr_set_metadata +EXPORT_SYMBOL_GPL vmlinux 0x388a7022 snd_soc_dai_compr_get_metadata +EXPORT_SYMBOL_GPL vmlinux 0x389a5a28 pm_generic_restore_noirq +EXPORT_SYMBOL_GPL vmlinux 0x38a9c2c7 input_ff_effect_from_user +EXPORT_SYMBOL_GPL vmlinux 0x38aa1397 gpiod_add_lookup_table +EXPORT_SYMBOL_GPL vmlinux 0x38aa4657 xas_nomem +EXPORT_SYMBOL_GPL vmlinux 0x38c0c9e4 btree_update +EXPORT_SYMBOL_GPL vmlinux 0x38c5b0f0 __phy_modify_mmd_changed +EXPORT_SYMBOL_GPL vmlinux 0x38d1aa41 of_property_read_variable_u16_array +EXPORT_SYMBOL_GPL vmlinux 0x38d64028 trace_seq_vprintf +EXPORT_SYMBOL_GPL vmlinux 0x38de2e69 proc_create_net_single_write +EXPORT_SYMBOL_GPL vmlinux 0x38e227f9 bus_set_iommu +EXPORT_SYMBOL_GPL vmlinux 0x38e4a11a devlink_port_attrs_pci_vf_set +EXPORT_SYMBOL_GPL vmlinux 0x38e5bc5a clk_set_rate_range +EXPORT_SYMBOL_GPL vmlinux 0x39174654 alarm_start +EXPORT_SYMBOL_GPL vmlinux 0x3917e4fd tpm_put_ops +EXPORT_SYMBOL_GPL vmlinux 0x39190532 mtd_ooblayout_get_eccbytes +EXPORT_SYMBOL_GPL vmlinux 0x39292118 crypto_stats_ahash_final +EXPORT_SYMBOL_GPL vmlinux 0x394855eb ip6_route_output_flags +EXPORT_SYMBOL_GPL vmlinux 0x394c5efe rtc_nvmem_register +EXPORT_SYMBOL_GPL vmlinux 0x395fb1c0 crypto_default_rng +EXPORT_SYMBOL_GPL vmlinux 0x39632a80 tty_encode_baud_rate +EXPORT_SYMBOL_GPL vmlinux 0x3966d003 pci_load_and_free_saved_state +EXPORT_SYMBOL_GPL vmlinux 0x3968f5fb blkcg_activate_policy +EXPORT_SYMBOL_GPL vmlinux 0x39805c0b iommu_present +EXPORT_SYMBOL_GPL vmlinux 0x39828022 i2c_unregister_device +EXPORT_SYMBOL_GPL vmlinux 0x3982ff2c virtqueue_enable_cb +EXPORT_SYMBOL_GPL vmlinux 0x3989128b usb_hcd_unmap_urb_for_dma +EXPORT_SYMBOL_GPL vmlinux 0x39934f48 dm_noflush_suspending +EXPORT_SYMBOL_GPL vmlinux 0x39a125dc bpf_prog_inc +EXPORT_SYMBOL_GPL vmlinux 0x39a7a057 snd_ctl_activate_id +EXPORT_SYMBOL_GPL vmlinux 0x39a7affc driver_deferred_probe_timeout +EXPORT_SYMBOL_GPL vmlinux 0x39a8a073 snd_soc_dapm_sync_unlocked +EXPORT_SYMBOL_GPL vmlinux 0x39df9ff2 vma_kernel_pagesize +EXPORT_SYMBOL_GPL vmlinux 0x39e61495 nf_logger_request_module +EXPORT_SYMBOL_GPL vmlinux 0x39ec25cc security_path_rmdir +EXPORT_SYMBOL_GPL vmlinux 0x39f315f8 dev_pm_set_wake_irq +EXPORT_SYMBOL_GPL vmlinux 0x39f683c9 gpiochip_populate_parent_fwspec_twocell +EXPORT_SYMBOL_GPL vmlinux 0x3a0b8863 tcp_unregister_congestion_control +EXPORT_SYMBOL_GPL vmlinux 0x3a22977f dma_buf_export +EXPORT_SYMBOL_GPL vmlinux 0x3a28f0ea devm_mbox_controller_unregister +EXPORT_SYMBOL_GPL vmlinux 0x3a2b51bb snd_soc_bytes_put +EXPORT_SYMBOL_GPL vmlinux 0x3a2e1b39 dm_report_zones_cb +EXPORT_SYMBOL_GPL vmlinux 0x3a409c23 snd_compr_stop_error +EXPORT_SYMBOL_GPL vmlinux 0x3a413aad pinctrl_utils_reserve_map +EXPORT_SYMBOL_GPL vmlinux 0x3a4e8884 snd_soc_dapm_put_pin_switch +EXPORT_SYMBOL_GPL vmlinux 0x3a4f6a32 ata_sff_interrupt +EXPORT_SYMBOL_GPL vmlinux 0x3a536bd7 ring_buffer_read_finish +EXPORT_SYMBOL_GPL vmlinux 0x3a542510 register_user_hw_breakpoint +EXPORT_SYMBOL_GPL vmlinux 0x3a547970 usb_alloc_streams +EXPORT_SYMBOL_GPL vmlinux 0x3a559c4f snd_dmaengine_pcm_close_release_chan +EXPORT_SYMBOL_GPL vmlinux 0x3a6dc43f pkcs7_get_content_data +EXPORT_SYMBOL_GPL vmlinux 0x3a727be9 dw_pcie_setup_rc +EXPORT_SYMBOL_GPL vmlinux 0x3a767203 snd_soc_set_ac97_ops_of_reset +EXPORT_SYMBOL_GPL vmlinux 0x3a777cae lwtunnel_xmit +EXPORT_SYMBOL_GPL vmlinux 0x3a79dc8d udp_cmsg_send +EXPORT_SYMBOL_GPL vmlinux 0x3a7f20bf __devm_alloc_percpu +EXPORT_SYMBOL_GPL vmlinux 0x3a8b9d53 pci_d3cold_disable +EXPORT_SYMBOL_GPL vmlinux 0x3a9b3fea aead_geniv_alloc +EXPORT_SYMBOL_GPL vmlinux 0x3a9be019 asymmetric_key_id_partial +EXPORT_SYMBOL_GPL vmlinux 0x3aab335a blk_mq_freeze_queue_wait_timeout +EXPORT_SYMBOL_GPL vmlinux 0x3ab03890 handle_level_irq +EXPORT_SYMBOL_GPL vmlinux 0x3abe2c92 of_clk_hw_onecell_get +EXPORT_SYMBOL_GPL vmlinux 0x3acd3c2c of_get_required_opp_performance_state +EXPORT_SYMBOL_GPL vmlinux 0x3acdaf22 ata_noop_qc_prep +EXPORT_SYMBOL_GPL vmlinux 0x3acdf325 twl4030_audio_enable_resource +EXPORT_SYMBOL_GPL vmlinux 0x3ad1465f pm_generic_freeze_late +EXPORT_SYMBOL_GPL vmlinux 0x3ad41fed crypto_comp_compress +EXPORT_SYMBOL_GPL vmlinux 0x3ae7645c pci_epc_get_first_free_bar +EXPORT_SYMBOL_GPL vmlinux 0x3af93218 scsi_mode_select +EXPORT_SYMBOL_GPL vmlinux 0x3afaff34 __clk_determine_rate +EXPORT_SYMBOL_GPL vmlinux 0x3b020516 simple_attr_release +EXPORT_SYMBOL_GPL vmlinux 0x3b0fa352 unregister_mtd_user +EXPORT_SYMBOL_GPL vmlinux 0x3b200952 tps65912_regmap_config +EXPORT_SYMBOL_GPL vmlinux 0x3b3577cb gpiochip_enable_irq +EXPORT_SYMBOL_GPL vmlinux 0x3b3874e2 debugfs_file_put +EXPORT_SYMBOL_GPL vmlinux 0x3b45badb sysfs_remove_file_self +EXPORT_SYMBOL_GPL vmlinux 0x3b4c240a display_timings_release +EXPORT_SYMBOL_GPL vmlinux 0x3b66cb8b ata_scsi_unlock_native_capacity +EXPORT_SYMBOL_GPL vmlinux 0x3b7015c4 set_task_ioprio +EXPORT_SYMBOL_GPL vmlinux 0x3b71354f transport_class_unregister +EXPORT_SYMBOL_GPL vmlinux 0x3b84c05b pcie_port_find_device +EXPORT_SYMBOL_GPL vmlinux 0x3b907396 pinconf_generic_dt_free_map +EXPORT_SYMBOL_GPL vmlinux 0x3b9a52dc stmpe_disable +EXPORT_SYMBOL_GPL vmlinux 0x3ba26281 __atomic_notifier_call_chain +EXPORT_SYMBOL_GPL vmlinux 0x3ba4dd19 ahci_stop_engine +EXPORT_SYMBOL_GPL vmlinux 0x3bc043ee inet6_lookup_listener +EXPORT_SYMBOL_GPL vmlinux 0x3bc52e79 regmap_field_alloc +EXPORT_SYMBOL_GPL vmlinux 0x3bc6589f crypto_unregister_ahash +EXPORT_SYMBOL_GPL vmlinux 0x3bc9d4a6 ip6_datagram_connect_v6_only +EXPORT_SYMBOL_GPL vmlinux 0x3bcaeb16 md_find_rdev_rcu +EXPORT_SYMBOL_GPL vmlinux 0x3bd22361 of_property_read_variable_u8_array +EXPORT_SYMBOL_GPL vmlinux 0x3bd3032c bpf_trace_run4 +EXPORT_SYMBOL_GPL vmlinux 0x3bd67b14 tty_register_device_attr +EXPORT_SYMBOL_GPL vmlinux 0x3bdb5d28 alg_test +EXPORT_SYMBOL_GPL vmlinux 0x3be4c236 ata_pci_device_do_suspend +EXPORT_SYMBOL_GPL vmlinux 0x3bf02f1b ftrace_set_filter_ip +EXPORT_SYMBOL_GPL vmlinux 0x3bf17755 mpi_read_buffer +EXPORT_SYMBOL_GPL vmlinux 0x3c0400d5 software_node_fwnode +EXPORT_SYMBOL_GPL vmlinux 0x3c1b8984 uprobe_unregister +EXPORT_SYMBOL_GPL vmlinux 0x3c1c3725 rcu_fwd_progress_check +EXPORT_SYMBOL_GPL vmlinux 0x3c2b68f7 of_changeset_apply +EXPORT_SYMBOL_GPL vmlinux 0x3c3d88cc wm831x_reg_read +EXPORT_SYMBOL_GPL vmlinux 0x3c406445 icc_node_create +EXPORT_SYMBOL_GPL vmlinux 0x3c498d81 nvdimm_clear_poison +EXPORT_SYMBOL_GPL vmlinux 0x3c4f7c49 cm_notify_event +EXPORT_SYMBOL_GPL vmlinux 0x3c651f33 rhashtable_insert_slow +EXPORT_SYMBOL_GPL vmlinux 0x3c66bbf5 ping_common_sendmsg +EXPORT_SYMBOL_GPL vmlinux 0x3c681dc4 ring_buffer_record_disable +EXPORT_SYMBOL_GPL vmlinux 0x3c72724e usb_wait_anchor_empty_timeout +EXPORT_SYMBOL_GPL vmlinux 0x3c735b5c irq_chip_ack_parent +EXPORT_SYMBOL_GPL vmlinux 0x3c8902fe clk_hw_get_parent_by_index +EXPORT_SYMBOL_GPL vmlinux 0x3cb03bb2 debugfs_remove +EXPORT_SYMBOL_GPL vmlinux 0x3cb1d35d netlink_remove_tap +EXPORT_SYMBOL_GPL vmlinux 0x3cb70bf7 debugfs_print_regs32 +EXPORT_SYMBOL_GPL vmlinux 0x3cba80f5 da9052_disable_irq +EXPORT_SYMBOL_GPL vmlinux 0x3cc12632 dst_cache_get_ip6 +EXPORT_SYMBOL_GPL vmlinux 0x3ccb9fd4 vfs_getxattr +EXPORT_SYMBOL_GPL vmlinux 0x3ccf8240 aead_init_geniv +EXPORT_SYMBOL_GPL vmlinux 0x3cd06035 add_input_randomness +EXPORT_SYMBOL_GPL vmlinux 0x3cd6e603 device_property_read_u32_array +EXPORT_SYMBOL_GPL vmlinux 0x3cd8042a genphy_c45_an_config_aneg +EXPORT_SYMBOL_GPL vmlinux 0x3ce6b819 irq_domain_reset_irq_data +EXPORT_SYMBOL_GPL vmlinux 0x3ce9813b pm_genpd_add_device +EXPORT_SYMBOL_GPL vmlinux 0x3ced04e7 __hwspin_lock_timeout +EXPORT_SYMBOL_GPL vmlinux 0x3d05a985 nd_cmd_out_size +EXPORT_SYMBOL_GPL vmlinux 0x3d0721fd gpiod_set_debounce +EXPORT_SYMBOL_GPL vmlinux 0x3d15a09e of_mpc8xxx_spi_probe +EXPORT_SYMBOL_GPL vmlinux 0x3d1eda71 sock_zerocopy_callback +EXPORT_SYMBOL_GPL vmlinux 0x3d22a206 nand_gpio_waitrdy +EXPORT_SYMBOL_GPL vmlinux 0x3d24d090 badblocks_check +EXPORT_SYMBOL_GPL vmlinux 0x3d331f4b __phy_modify_mmd +EXPORT_SYMBOL_GPL vmlinux 0x3d388324 dpm_resume_end +EXPORT_SYMBOL_GPL vmlinux 0x3d49fc73 __tracepoint_napi_poll +EXPORT_SYMBOL_GPL vmlinux 0x3d4db9b0 powercap_unregister_control_type +EXPORT_SYMBOL_GPL vmlinux 0x3d510a7b rcu_jiffies_till_stall_check +EXPORT_SYMBOL_GPL vmlinux 0x3d5b5003 __set_page_dirty +EXPORT_SYMBOL_GPL vmlinux 0x3d6fce3f __pci_epc_create +EXPORT_SYMBOL_GPL vmlinux 0x3d70d509 crypto_skcipher_setkey +EXPORT_SYMBOL_GPL vmlinux 0x3d79ad09 __srcu_read_lock +EXPORT_SYMBOL_GPL vmlinux 0x3d7f3a23 ata_sff_wait_ready +EXPORT_SYMBOL_GPL vmlinux 0x3d907fe3 device_set_wakeup_capable +EXPORT_SYMBOL_GPL vmlinux 0x3d9532e3 __inet_twsk_schedule +EXPORT_SYMBOL_GPL vmlinux 0x3daca1f5 sm501_set_clock +EXPORT_SYMBOL_GPL vmlinux 0x3db357a2 pci_set_pcie_reset_state +EXPORT_SYMBOL_GPL vmlinux 0x3dc526a9 arizona_of_match +EXPORT_SYMBOL_GPL vmlinux 0x3dca2fa1 __pm_runtime_disable +EXPORT_SYMBOL_GPL vmlinux 0x3ddb8066 __devm_regmap_init_mmio_clk +EXPORT_SYMBOL_GPL vmlinux 0x3de9cae1 crypto_remove_final +EXPORT_SYMBOL_GPL vmlinux 0x3deb53ff cpts_misc_interrupt +EXPORT_SYMBOL_GPL vmlinux 0x3deb6203 skcipher_walk_aead_encrypt +EXPORT_SYMBOL_GPL vmlinux 0x3df044eb of_pci_parse_bus_range +EXPORT_SYMBOL_GPL vmlinux 0x3e01d69a mtk_eint_do_suspend +EXPORT_SYMBOL_GPL vmlinux 0x3e1a525b usb_gadget_set_state +EXPORT_SYMBOL_GPL vmlinux 0x3e31d9c3 net_prio_cgrp_subsys_enabled_key +EXPORT_SYMBOL_GPL vmlinux 0x3e4a5761 get_device +EXPORT_SYMBOL_GPL vmlinux 0x3e54c78d debugfs_create_ulong +EXPORT_SYMBOL_GPL vmlinux 0x3e5f5622 sbitmap_queue_clear +EXPORT_SYMBOL_GPL vmlinux 0x3e7080cb mpi_read_from_buffer +EXPORT_SYMBOL_GPL vmlinux 0x3e725b5a crypto_grab_aead +EXPORT_SYMBOL_GPL vmlinux 0x3e7dde13 nanddev_markbad +EXPORT_SYMBOL_GPL vmlinux 0x3e7e7c2a raw_seq_stop +EXPORT_SYMBOL_GPL vmlinux 0x3e961c0b __efivar_entry_get +EXPORT_SYMBOL_GPL vmlinux 0x3ea8edac spi_mem_dirmap_read +EXPORT_SYMBOL_GPL vmlinux 0x3ebe172d tpm_get_random +EXPORT_SYMBOL_GPL vmlinux 0x3ef051c8 crypto_inc +EXPORT_SYMBOL_GPL vmlinux 0x3efd1889 dax_direct_access +EXPORT_SYMBOL_GPL vmlinux 0x3efec558 dax_region_put +EXPORT_SYMBOL_GPL vmlinux 0x3f060887 __ioread32_copy +EXPORT_SYMBOL_GPL vmlinux 0x3f06518e alloc_dax_region +EXPORT_SYMBOL_GPL vmlinux 0x3f267ba3 snd_compress_deregister +EXPORT_SYMBOL_GPL vmlinux 0x3f2a3b64 bpf_trace_run9 +EXPORT_SYMBOL_GPL vmlinux 0x3f4632cd phy_10gbit_features +EXPORT_SYMBOL_GPL vmlinux 0x3f84bcd7 dax_alive +EXPORT_SYMBOL_GPL vmlinux 0x3f89c7cb regulator_suspend_enable +EXPORT_SYMBOL_GPL vmlinux 0x3f8ab72e devlink_fmsg_bool_put +EXPORT_SYMBOL_GPL vmlinux 0x3f937a0a dma_buf_vmap +EXPORT_SYMBOL_GPL vmlinux 0x3fad6104 scsi_get_vpd_page +EXPORT_SYMBOL_GPL vmlinux 0x3fb42a5c pinctrl_parse_index_with_args +EXPORT_SYMBOL_GPL vmlinux 0x3fdce254 iomap_readpage +EXPORT_SYMBOL_GPL vmlinux 0x3fe4ab9d serial8250_read_char +EXPORT_SYMBOL_GPL vmlinux 0x3fe6c346 devlink_fmsg_binary_pair_put +EXPORT_SYMBOL_GPL vmlinux 0x3fea029c hisi_clk_register_gate +EXPORT_SYMBOL_GPL vmlinux 0x3ff7e1f6 pci_assign_unassigned_bridge_resources +EXPORT_SYMBOL_GPL vmlinux 0x3ff8de54 irq_chip_request_resources_parent +EXPORT_SYMBOL_GPL vmlinux 0x3ffa4472 platform_device_add +EXPORT_SYMBOL_GPL vmlinux 0x3ffdacf3 timerqueue_iterate_next +EXPORT_SYMBOL_GPL vmlinux 0x400df957 clk_hw_get_num_parents +EXPORT_SYMBOL_GPL vmlinux 0x401a8bff snd_soc_put_strobe +EXPORT_SYMBOL_GPL vmlinux 0x40233d56 device_property_present +EXPORT_SYMBOL_GPL vmlinux 0x403f9529 gpio_request_one +EXPORT_SYMBOL_GPL vmlinux 0x4065d168 pm_print_active_wakeup_sources +EXPORT_SYMBOL_GPL vmlinux 0x406c4cb1 hrtimer_resolution +EXPORT_SYMBOL_GPL vmlinux 0x406c7c88 input_ff_upload +EXPORT_SYMBOL_GPL vmlinux 0x4071b517 out_of_line_wait_on_bit_timeout +EXPORT_SYMBOL_GPL vmlinux 0x4099f919 tun_ptr_free +EXPORT_SYMBOL_GPL vmlinux 0x40a024c3 platform_bus_type +EXPORT_SYMBOL_GPL vmlinux 0x40db41dc tps6586x_reads +EXPORT_SYMBOL_GPL vmlinux 0x40f0683e reset_control_put +EXPORT_SYMBOL_GPL vmlinux 0x40f719c2 sysfs_change_owner +EXPORT_SYMBOL_GPL vmlinux 0x40f8b94e ring_buffer_iter_dropped +EXPORT_SYMBOL_GPL vmlinux 0x40f8bd4e klist_add_before +EXPORT_SYMBOL_GPL vmlinux 0x40f9edaa nd_tbl +EXPORT_SYMBOL_GPL vmlinux 0x4100a662 clk_get_scaled_duty_cycle +EXPORT_SYMBOL_GPL vmlinux 0x4103f8d8 dev_pm_opp_set_rate +EXPORT_SYMBOL_GPL vmlinux 0x41093d9c kobj_sysfs_ops +EXPORT_SYMBOL_GPL vmlinux 0x41138e33 regulator_bulk_disable +EXPORT_SYMBOL_GPL vmlinux 0x41151773 kstrdup_quotable_cmdline +EXPORT_SYMBOL_GPL vmlinux 0x41173988 snd_soc_bytes_get +EXPORT_SYMBOL_GPL vmlinux 0x412bc681 ring_buffer_empty_cpu +EXPORT_SYMBOL_GPL vmlinux 0x413594a3 __spi_alloc_controller +EXPORT_SYMBOL_GPL vmlinux 0x413bf953 sock_diag_register_inet_compat +EXPORT_SYMBOL_GPL vmlinux 0x414394d6 nanddev_isbad +EXPORT_SYMBOL_GPL vmlinux 0x414538e6 synth_event_add_field_str +EXPORT_SYMBOL_GPL vmlinux 0x414d119a videomode_from_timings +EXPORT_SYMBOL_GPL vmlinux 0x41695d40 snd_soc_jack_notifier_unregister +EXPORT_SYMBOL_GPL vmlinux 0x416c2f50 __tracepoint_wbc_writepage +EXPORT_SYMBOL_GPL vmlinux 0x417779f0 smpboot_register_percpu_thread +EXPORT_SYMBOL_GPL vmlinux 0x4178978a iomap_page_mkwrite +EXPORT_SYMBOL_GPL vmlinux 0x41814cb8 dirty_writeback_interval +EXPORT_SYMBOL_GPL vmlinux 0x4190661d blk_abort_request +EXPORT_SYMBOL_GPL vmlinux 0x4195a20e sk_msg_return_zero +EXPORT_SYMBOL_GPL vmlinux 0x419998c0 da903x_set_bits +EXPORT_SYMBOL_GPL vmlinux 0x419e6c16 rio_unmap_outb_region +EXPORT_SYMBOL_GPL vmlinux 0x419e7efd sfp_module_stop +EXPORT_SYMBOL_GPL vmlinux 0x41c30f3a trace_seq_bprintf +EXPORT_SYMBOL_GPL vmlinux 0x41c8a88e of_device_request_module +EXPORT_SYMBOL_GPL vmlinux 0x41ea7510 srcu_notifier_call_chain +EXPORT_SYMBOL_GPL vmlinux 0x41ed3cec eventfd_ctx_remove_wait_queue +EXPORT_SYMBOL_GPL vmlinux 0x41eefae3 shash_ahash_finup +EXPORT_SYMBOL_GPL vmlinux 0x42041512 i2c_get_dma_safe_msg_buf +EXPORT_SYMBOL_GPL vmlinux 0x4205ad24 cancel_work_sync +EXPORT_SYMBOL_GPL vmlinux 0x420f3d01 nvmem_unregister_notifier +EXPORT_SYMBOL_GPL vmlinux 0x42214614 __ftrace_vbprintk +EXPORT_SYMBOL_GPL vmlinux 0x42284663 kthread_cancel_work_sync +EXPORT_SYMBOL_GPL vmlinux 0x4238262c kobject_uevent_env +EXPORT_SYMBOL_GPL vmlinux 0x423c8024 usb_alloc_urb +EXPORT_SYMBOL_GPL vmlinux 0x42408ab6 devm_of_platform_depopulate +EXPORT_SYMBOL_GPL vmlinux 0x424128d6 nand_write_data_op +EXPORT_SYMBOL_GPL vmlinux 0x42538d49 ata_scsi_dma_need_drain +EXPORT_SYMBOL_GPL vmlinux 0x4255a41a regmap_register_patch +EXPORT_SYMBOL_GPL vmlinux 0x42635d55 pm_suspend_global_flags +EXPORT_SYMBOL_GPL vmlinux 0x426a6f10 ping_hash +EXPORT_SYMBOL_GPL vmlinux 0x427d8174 omap_iommu_domain_activate +EXPORT_SYMBOL_GPL vmlinux 0x428219cc snd_soc_component_enable_pin +EXPORT_SYMBOL_GPL vmlinux 0x42825ce2 rcu_scheduler_active +EXPORT_SYMBOL_GPL vmlinux 0x4287eacc sk_msg_free +EXPORT_SYMBOL_GPL vmlinux 0x42887525 sbitmap_queue_min_shallow_depth +EXPORT_SYMBOL_GPL vmlinux 0x429bb5f2 dev_pm_opp_get_max_clock_latency +EXPORT_SYMBOL_GPL vmlinux 0x429eaa80 device_rename +EXPORT_SYMBOL_GPL vmlinux 0x42aadcce clk_register_divider_table +EXPORT_SYMBOL_GPL vmlinux 0x42ad912e subsys_interface_unregister +EXPORT_SYMBOL_GPL vmlinux 0x42b68edf ata_dev_pair +EXPORT_SYMBOL_GPL vmlinux 0x42b81ef7 dw_pcie_host_deinit +EXPORT_SYMBOL_GPL vmlinux 0x42c53471 perf_event_read_value +EXPORT_SYMBOL_GPL vmlinux 0x42d05ec4 sdhci_enable_v4_mode +EXPORT_SYMBOL_GPL vmlinux 0x42d3bdf5 devm_clk_bulk_get_optional +EXPORT_SYMBOL_GPL vmlinux 0x42e445f6 clk_mux_val_to_index +EXPORT_SYMBOL_GPL vmlinux 0x42e8c5fc led_trigger_unregister +EXPORT_SYMBOL_GPL vmlinux 0x42e9d0da ring_buffer_unlock_commit +EXPORT_SYMBOL_GPL vmlinux 0x42e9dfa7 irq_get_domain_generic_chip +EXPORT_SYMBOL_GPL vmlinux 0x42efb127 nvmem_del_cell_lookups +EXPORT_SYMBOL_GPL vmlinux 0x42f728aa mctrl_gpio_get_outputs +EXPORT_SYMBOL_GPL vmlinux 0x42fa74c5 serdev_device_write +EXPORT_SYMBOL_GPL vmlinux 0x42fac154 snd_soc_lookup_component +EXPORT_SYMBOL_GPL vmlinux 0x4308e8f7 __usb_create_hcd +EXPORT_SYMBOL_GPL vmlinux 0x4315313b snd_soc_link_compr_shutdown +EXPORT_SYMBOL_GPL vmlinux 0x43159aa7 tcp_rate_check_app_limited +EXPORT_SYMBOL_GPL vmlinux 0x43190a8d pci_epc_linkup +EXPORT_SYMBOL_GPL vmlinux 0x432a9914 debugfs_create_regset32 +EXPORT_SYMBOL_GPL vmlinux 0x433f82be regmap_get_val_endian +EXPORT_SYMBOL_GPL vmlinux 0x434a3555 sysfs_remove_link_from_group +EXPORT_SYMBOL_GPL vmlinux 0x435b053d sysfs_remove_files +EXPORT_SYMBOL_GPL vmlinux 0x436bb1e3 sk_msg_memcopy_from_iter +EXPORT_SYMBOL_GPL vmlinux 0x437a9d46 pm_runtime_force_suspend +EXPORT_SYMBOL_GPL vmlinux 0x437eb1df ipv6_mod_enabled +EXPORT_SYMBOL_GPL vmlinux 0x438fb36b irq_domain_simple_ops +EXPORT_SYMBOL_GPL vmlinux 0x439a760a ahci_platform_enable_phys +EXPORT_SYMBOL_GPL vmlinux 0x43a74ec2 crypto_stats_akcipher_verify +EXPORT_SYMBOL_GPL vmlinux 0x43aa319e lease_register_notifier +EXPORT_SYMBOL_GPL vmlinux 0x43b4c9d4 cpufreq_dbs_governor_limits +EXPORT_SYMBOL_GPL vmlinux 0x43c6eb2b firmware_request_platform +EXPORT_SYMBOL_GPL vmlinux 0x43cdb530 ata_sff_tf_load +EXPORT_SYMBOL_GPL vmlinux 0x43ce20e5 device_init_wakeup +EXPORT_SYMBOL_GPL vmlinux 0x43de4f24 smp_call_function_single_async +EXPORT_SYMBOL_GPL vmlinux 0x43e8a6f8 fwnode_remove_software_node +EXPORT_SYMBOL_GPL vmlinux 0x43f56e82 ata_xfer_mode2shift +EXPORT_SYMBOL_GPL vmlinux 0x43f81957 clk_round_rate +EXPORT_SYMBOL_GPL vmlinux 0x44006dcf bpf_map_put +EXPORT_SYMBOL_GPL vmlinux 0x4407274f mtk_pinconf_bias_get_rev1 +EXPORT_SYMBOL_GPL vmlinux 0x440bbd65 skb_gso_validate_network_len +EXPORT_SYMBOL_GPL vmlinux 0x4412dd48 spi_res_add +EXPORT_SYMBOL_GPL vmlinux 0x441305fa bsg_job_done +EXPORT_SYMBOL_GPL vmlinux 0x441b6b8b dma_buf_unmap_attachment +EXPORT_SYMBOL_GPL vmlinux 0x44211b1b device_show_ulong +EXPORT_SYMBOL_GPL vmlinux 0x44272b03 ata_host_start +EXPORT_SYMBOL_GPL vmlinux 0x442d89c5 phy_10gbit_fec_features +EXPORT_SYMBOL_GPL vmlinux 0x44339406 sbitmap_queue_resize +EXPORT_SYMBOL_GPL vmlinux 0x443a786b extcon_get_state +EXPORT_SYMBOL_GPL vmlinux 0x444f1735 cpu_pm_register_notifier +EXPORT_SYMBOL_GPL vmlinux 0x44531e80 percpu_ref_kill_and_confirm +EXPORT_SYMBOL_GPL vmlinux 0x445a09c0 nvmem_device_cell_write +EXPORT_SYMBOL_GPL vmlinux 0x445e198c rio_del_device +EXPORT_SYMBOL_GPL vmlinux 0x4471c5c4 get_mtd_device_nm +EXPORT_SYMBOL_GPL vmlinux 0x4480a554 pm_genpd_remove_device +EXPORT_SYMBOL_GPL vmlinux 0x4482569b scatterwalk_copychunks +EXPORT_SYMBOL_GPL vmlinux 0x4484a5a4 wait_for_device_probe +EXPORT_SYMBOL_GPL vmlinux 0x448a1a2f trace_array_destroy +EXPORT_SYMBOL_GPL vmlinux 0x448b34c6 virtqueue_enable_cb_prepare +EXPORT_SYMBOL_GPL vmlinux 0x448c0a20 md_bitmap_copy_from_slot +EXPORT_SYMBOL_GPL vmlinux 0x44a10f7f of_property_read_string_helper +EXPORT_SYMBOL_GPL vmlinux 0x44a55ee6 alarmtimer_get_rtcdev +EXPORT_SYMBOL_GPL vmlinux 0x44a83bf9 of_reserved_mem_device_release +EXPORT_SYMBOL_GPL vmlinux 0x44ba1042 percpu_ref_resurrect +EXPORT_SYMBOL_GPL vmlinux 0x44bae227 bit_wait_timeout +EXPORT_SYMBOL_GPL vmlinux 0x44cf8cf0 blk_zone_cond_str +EXPORT_SYMBOL_GPL vmlinux 0x44d01e33 ip6_route_input_lookup +EXPORT_SYMBOL_GPL vmlinux 0x44db4006 ata_pci_sff_prepare_host +EXPORT_SYMBOL_GPL vmlinux 0x44ef5d02 irq_domain_translate_twocell +EXPORT_SYMBOL_GPL vmlinux 0x44f531ab fscrypt_show_test_dummy_encryption +EXPORT_SYMBOL_GPL vmlinux 0x450611bf iommu_dev_disable_feature +EXPORT_SYMBOL_GPL vmlinux 0x4507f4a8 cpuhp_tasks_frozen +EXPORT_SYMBOL_GPL vmlinux 0x4531717d mtk_pinconf_bias_get +EXPORT_SYMBOL_GPL vmlinux 0x45383d1e pinctrl_put +EXPORT_SYMBOL_GPL vmlinux 0x454ab7e8 cros_ec_get_sensor_count +EXPORT_SYMBOL_GPL vmlinux 0x4553354d rtnl_register_module +EXPORT_SYMBOL_GPL vmlinux 0x45558f56 clk_unregister_fixed_factor +EXPORT_SYMBOL_GPL vmlinux 0x4561f990 qcom_smem_state_unregister +EXPORT_SYMBOL_GPL vmlinux 0x4562f8e4 pkcs7_free_message +EXPORT_SYMBOL_GPL vmlinux 0x456febf4 security_path_link +EXPORT_SYMBOL_GPL vmlinux 0x457594fa crypto_alg_list +EXPORT_SYMBOL_GPL vmlinux 0x457b9860 fwnode_property_read_u16_array +EXPORT_SYMBOL_GPL vmlinux 0x457cfdca eventfd_fget +EXPORT_SYMBOL_GPL vmlinux 0x4581a423 pm_runtime_autosuspend_expiration +EXPORT_SYMBOL_GPL vmlinux 0x459b8c74 irq_domain_push_irq +EXPORT_SYMBOL_GPL vmlinux 0x459cafaa snd_soc_component_nc_pin_unlocked +EXPORT_SYMBOL_GPL vmlinux 0x45ac6c69 mtk_mmsys_ddp_connect +EXPORT_SYMBOL_GPL vmlinux 0x45b19b8a wm8998_i2c_regmap +EXPORT_SYMBOL_GPL vmlinux 0x45c8646e sdhci_abort_tuning +EXPORT_SYMBOL_GPL vmlinux 0x45d07221 region_intersects +EXPORT_SYMBOL_GPL vmlinux 0x45de73b7 devm_platform_get_and_ioremap_resource +EXPORT_SYMBOL_GPL vmlinux 0x45e30b5d mtd_is_locked +EXPORT_SYMBOL_GPL vmlinux 0x45f1bc79 __tracepoint_non_standard_event +EXPORT_SYMBOL_GPL vmlinux 0x45f6c254 __synth_event_gen_cmd_start +EXPORT_SYMBOL_GPL vmlinux 0x45ff8535 trace_seq_putc +EXPORT_SYMBOL_GPL vmlinux 0x45ff95b2 pinctrl_utils_free_map +EXPORT_SYMBOL_GPL vmlinux 0x46013233 net_dec_ingress_queue +EXPORT_SYMBOL_GPL vmlinux 0x46066e5b perf_pmu_name +EXPORT_SYMBOL_GPL vmlinux 0x461b1c23 pinctrl_count_index_with_args +EXPORT_SYMBOL_GPL vmlinux 0x46282229 pci_epc_get +EXPORT_SYMBOL_GPL vmlinux 0x463ce218 pci_generic_config_write32 +EXPORT_SYMBOL_GPL vmlinux 0x4646f671 usb_hc_died +EXPORT_SYMBOL_GPL vmlinux 0x466e5342 net_prio_cgrp_subsys_on_dfl_key +EXPORT_SYMBOL_GPL vmlinux 0x4683a8ee key_type_encrypted +EXPORT_SYMBOL_GPL vmlinux 0x4688d7ec pvclock_gtod_unregister_notifier +EXPORT_SYMBOL_GPL vmlinux 0x46897ef4 dev_pm_qos_remove_notifier +EXPORT_SYMBOL_GPL vmlinux 0x46922d1d power_supply_set_property +EXPORT_SYMBOL_GPL vmlinux 0x4695c972 lwtunnel_output +EXPORT_SYMBOL_GPL vmlinux 0x469ec80e snd_soc_tplg_component_load +EXPORT_SYMBOL_GPL vmlinux 0x46a27b9b wbc_detach_inode +EXPORT_SYMBOL_GPL vmlinux 0x46a38529 nvmem_device_get +EXPORT_SYMBOL_GPL vmlinux 0x46ae94ee snd_soc_bytes_info_ext +EXPORT_SYMBOL_GPL vmlinux 0x46b0cf3e iommu_fwspec_add_ids +EXPORT_SYMBOL_GPL vmlinux 0x46b2b599 generic_fh_to_dentry +EXPORT_SYMBOL_GPL vmlinux 0x46c06c19 klist_add_head +EXPORT_SYMBOL_GPL vmlinux 0x46c3aa51 udp6_lib_lookup_skb +EXPORT_SYMBOL_GPL vmlinux 0x46c5be22 clk_multiplier_ops +EXPORT_SYMBOL_GPL vmlinux 0x46c79be4 led_set_brightness +EXPORT_SYMBOL_GPL vmlinux 0x46c985cc tty_port_unregister_device +EXPORT_SYMBOL_GPL vmlinux 0x46cd6002 ata_bmdma_dumb_qc_prep +EXPORT_SYMBOL_GPL vmlinux 0x46dc45ee sk_free_unlock_clone +EXPORT_SYMBOL_GPL vmlinux 0x46f42be0 devlink_fmsg_u8_put +EXPORT_SYMBOL_GPL vmlinux 0x47037dc4 snd_soc_of_parse_audio_simple_widgets +EXPORT_SYMBOL_GPL vmlinux 0x471d407d subsys_dev_iter_exit +EXPORT_SYMBOL_GPL vmlinux 0x47229b5c gpio_request +EXPORT_SYMBOL_GPL vmlinux 0x472352ee dev_pm_opp_of_add_table_indexed +EXPORT_SYMBOL_GPL vmlinux 0x472f97c5 da9052_disable_irq_nosync +EXPORT_SYMBOL_GPL vmlinux 0x47317949 crypto_alg_sem +EXPORT_SYMBOL_GPL vmlinux 0x473492ae qcom_smem_state_register +EXPORT_SYMBOL_GPL vmlinux 0x475df6c7 tps6586x_writes +EXPORT_SYMBOL_GPL vmlinux 0x4761f17c register_netevent_notifier +EXPORT_SYMBOL_GPL vmlinux 0x47884890 system_power_efficient_wq +EXPORT_SYMBOL_GPL vmlinux 0x478d15eb fixed_phy_unregister +EXPORT_SYMBOL_GPL vmlinux 0x478f9712 xfrm_dev_offload_ok +EXPORT_SYMBOL_GPL vmlinux 0x47925794 idr_find +EXPORT_SYMBOL_GPL vmlinux 0x4795d890 musb_set_peripheral +EXPORT_SYMBOL_GPL vmlinux 0x479f7d4b clk_bulk_disable +EXPORT_SYMBOL_GPL vmlinux 0x47aad3b9 have_governor_per_policy +EXPORT_SYMBOL_GPL vmlinux 0x47b56647 mtk_pinconf_bias_set_rev1 +EXPORT_SYMBOL_GPL vmlinux 0x47b5d9d5 set_secondary_fwnode +EXPORT_SYMBOL_GPL vmlinux 0x47cc45b7 __rio_local_write_config_16 +EXPORT_SYMBOL_GPL vmlinux 0x47de0dc7 clk_unregister_mux +EXPORT_SYMBOL_GPL vmlinux 0x47e2ad3c mm_kobj +EXPORT_SYMBOL_GPL vmlinux 0x47e30e73 power_supply_get_property +EXPORT_SYMBOL_GPL vmlinux 0x47f24759 usb_of_has_combined_node +EXPORT_SYMBOL_GPL vmlinux 0x48020c1c irq_get_percpu_devid_partition +EXPORT_SYMBOL_GPL vmlinux 0x48335fb9 rio_add_mport_pw_handler +EXPORT_SYMBOL_GPL vmlinux 0x4837dab1 gpiochip_add_pingroup_range +EXPORT_SYMBOL_GPL vmlinux 0x48403e70 platform_add_devices +EXPORT_SYMBOL_GPL vmlinux 0x484779ef __i2c_board_lock +EXPORT_SYMBOL_GPL vmlinux 0x484be316 mm_account_pinned_pages +EXPORT_SYMBOL_GPL vmlinux 0x484cef1d clock_cooling_unregister +EXPORT_SYMBOL_GPL vmlinux 0x484d8e33 snd_soc_dapm_info_pin_switch +EXPORT_SYMBOL_GPL vmlinux 0x4854df7b dev_pm_qos_hide_latency_limit +EXPORT_SYMBOL_GPL vmlinux 0x48559503 ethnl_cable_test_finished +EXPORT_SYMBOL_GPL vmlinux 0x485cf8e6 crypto_alloc_rng +EXPORT_SYMBOL_GPL vmlinux 0x485da19a snd_soc_jack_add_pins +EXPORT_SYMBOL_GPL vmlinux 0x48713979 watchdog_register_device +EXPORT_SYMBOL_GPL vmlinux 0x4876f5bd sm501_unit_power +EXPORT_SYMBOL_GPL vmlinux 0x4891c0e1 access_process_vm +EXPORT_SYMBOL_GPL vmlinux 0x48a3d20b mctrl_gpio_get +EXPORT_SYMBOL_GPL vmlinux 0x48a855bc ahci_platform_disable_regulators +EXPORT_SYMBOL_GPL vmlinux 0x48b97f6e component_del +EXPORT_SYMBOL_GPL vmlinux 0x48caee36 tcp_get_syncookie_mss +EXPORT_SYMBOL_GPL vmlinux 0x48cfeddc regulator_set_voltage_time +EXPORT_SYMBOL_GPL vmlinux 0x48d878a6 fat_free_clusters +EXPORT_SYMBOL_GPL vmlinux 0x48da5e1b devm_hwspin_lock_request +EXPORT_SYMBOL_GPL vmlinux 0x4909cbc1 regmap_get_device +EXPORT_SYMBOL_GPL vmlinux 0x490c4c2d sdhci_end_tuning +EXPORT_SYMBOL_GPL vmlinux 0x490f1730 tcp_ca_openreq_child +EXPORT_SYMBOL_GPL vmlinux 0x49143f07 __ndisc_fill_addr_option +EXPORT_SYMBOL_GPL vmlinux 0x49257192 ahci_platform_enable_clks +EXPORT_SYMBOL_GPL vmlinux 0x492b019f ata_pci_sff_init_host +EXPORT_SYMBOL_GPL vmlinux 0x49326ef6 irq_set_affinity_notifier +EXPORT_SYMBOL_GPL vmlinux 0x4932c2fc kernfs_path_from_node +EXPORT_SYMBOL_GPL vmlinux 0x493b6c6b wm5110_patch +EXPORT_SYMBOL_GPL vmlinux 0x493e9519 of_phy_get +EXPORT_SYMBOL_GPL vmlinux 0x494186f4 __devm_create_dev_dax +EXPORT_SYMBOL_GPL vmlinux 0x495167d0 snd_soc_jack_add_zones +EXPORT_SYMBOL_GPL vmlinux 0x4951f50d scsi_internal_device_block_nowait +EXPORT_SYMBOL_GPL vmlinux 0x499043d3 crypto_init_queue +EXPORT_SYMBOL_GPL vmlinux 0x49a0cdf5 register_pernet_device +EXPORT_SYMBOL_GPL vmlinux 0x49a16268 pci_create_root_bus +EXPORT_SYMBOL_GPL vmlinux 0x49a2c9c1 cpufreq_generic_attr +EXPORT_SYMBOL_GPL vmlinux 0x49b40c48 usb_get_current_frame_number +EXPORT_SYMBOL_GPL vmlinux 0x49bf878a ata_scsi_slave_destroy +EXPORT_SYMBOL_GPL vmlinux 0x49d96707 freq_qos_remove_request +EXPORT_SYMBOL_GPL vmlinux 0x49d9f030 usb_ep_fifo_status +EXPORT_SYMBOL_GPL vmlinux 0x49dab7e9 led_classdev_suspend +EXPORT_SYMBOL_GPL vmlinux 0x49ddd367 usb_phy_generic_unregister +EXPORT_SYMBOL_GPL vmlinux 0x49e227f7 nd_region_dev +EXPORT_SYMBOL_GPL vmlinux 0x49e96999 cond_synchronize_rcu +EXPORT_SYMBOL_GPL vmlinux 0x49e97bf3 debugfs_real_fops +EXPORT_SYMBOL_GPL vmlinux 0x4a02978b thermal_add_hwmon_sysfs +EXPORT_SYMBOL_GPL vmlinux 0x4a0658ab platform_device_alloc +EXPORT_SYMBOL_GPL vmlinux 0x4a12961e xdp_return_frame_rx_napi +EXPORT_SYMBOL_GPL vmlinux 0x4a17ed66 sysrq_mask +EXPORT_SYMBOL_GPL vmlinux 0x4a210a28 strp_done +EXPORT_SYMBOL_GPL vmlinux 0x4a23c266 musb_interrupt +EXPORT_SYMBOL_GPL vmlinux 0x4a2b7b26 of_device_uevent_modalias +EXPORT_SYMBOL_GPL vmlinux 0x4a405abf fuse_dev_free +EXPORT_SYMBOL_GPL vmlinux 0x4a4e743b bus_get_kset +EXPORT_SYMBOL_GPL vmlinux 0x4a5d6d34 blk_mq_quiesce_queue_nowait +EXPORT_SYMBOL_GPL vmlinux 0x4a78c781 dmaengine_desc_get_metadata_ptr +EXPORT_SYMBOL_GPL vmlinux 0x4a7908b5 security_file_permission +EXPORT_SYMBOL_GPL vmlinux 0x4a80fe89 ncsi_unregister_dev +EXPORT_SYMBOL_GPL vmlinux 0x4a92cd04 ata_port_pbar_desc +EXPORT_SYMBOL_GPL vmlinux 0x4a94d462 cpufreq_freq_attr_scaling_available_freqs +EXPORT_SYMBOL_GPL vmlinux 0x4aa55756 iommu_group_remove_device +EXPORT_SYMBOL_GPL vmlinux 0x4aa61ffe scsi_autopm_put_device +EXPORT_SYMBOL_GPL vmlinux 0x4ab156b2 check_move_unevictable_pages +EXPORT_SYMBOL_GPL vmlinux 0x4ab3965e usb_root_hub_lost_power +EXPORT_SYMBOL_GPL vmlinux 0x4ab3a92f lp8788_write_byte +EXPORT_SYMBOL_GPL vmlinux 0x4abc570a crypto_unregister_aead +EXPORT_SYMBOL_GPL vmlinux 0x4ad1dd93 dw_pcie_wait_for_link +EXPORT_SYMBOL_GPL vmlinux 0x4ae57681 input_ff_event +EXPORT_SYMBOL_GPL vmlinux 0x4af751b5 arizona_clk32k_disable +EXPORT_SYMBOL_GPL vmlinux 0x4afd2b59 elv_register +EXPORT_SYMBOL_GPL vmlinux 0x4b16f880 sdhci_alloc_host +EXPORT_SYMBOL_GPL vmlinux 0x4b1dee61 hwspin_lock_free +EXPORT_SYMBOL_GPL vmlinux 0x4b470647 init_user_ns +EXPORT_SYMBOL_GPL vmlinux 0x4b4c5213 sfp_register_socket +EXPORT_SYMBOL_GPL vmlinux 0x4b4e49fb phy_modify_mmd +EXPORT_SYMBOL_GPL vmlinux 0x4b51f74c ata_xfer_mode2mask +EXPORT_SYMBOL_GPL vmlinux 0x4b5b65e9 device_property_read_string +EXPORT_SYMBOL_GPL vmlinux 0x4b626514 ipv6_proxy_select_ident +EXPORT_SYMBOL_GPL vmlinux 0x4b6b0936 inet_peer_base_init +EXPORT_SYMBOL_GPL vmlinux 0x4b6fe426 tcp_register_congestion_control +EXPORT_SYMBOL_GPL vmlinux 0x4b86b95b of_phy_provider_unregister +EXPORT_SYMBOL_GPL vmlinux 0x4bab36c4 nvdimm_to_bus +EXPORT_SYMBOL_GPL vmlinux 0x4bade402 scsi_flush_work +EXPORT_SYMBOL_GPL vmlinux 0x4baf54e4 snd_soc_unregister_card +EXPORT_SYMBOL_GPL vmlinux 0x4bbb2690 usb_wakeup_enabled_descendants +EXPORT_SYMBOL_GPL vmlinux 0x4bcf8866 __fscrypt_prepare_lookup +EXPORT_SYMBOL_GPL vmlinux 0x4be72da9 sysfs_remove_mount_point +EXPORT_SYMBOL_GPL vmlinux 0x4bef167d sock_prot_inuse_get +EXPORT_SYMBOL_GPL vmlinux 0x4c07591c regulator_get_voltage_sel_pickable_regmap +EXPORT_SYMBOL_GPL vmlinux 0x4c168bc7 kernel_read_file +EXPORT_SYMBOL_GPL vmlinux 0x4c314c65 kobject_move +EXPORT_SYMBOL_GPL vmlinux 0x4c589547 blk_stat_enable_accounting +EXPORT_SYMBOL_GPL vmlinux 0x4c790c32 snd_dmaengine_pcm_register +EXPORT_SYMBOL_GPL vmlinux 0x4c7ea259 skcipher_alloc_instance_simple +EXPORT_SYMBOL_GPL vmlinux 0x4c828a72 stmpe811_adc_common_init +EXPORT_SYMBOL_GPL vmlinux 0x4c8c754e devm_rtc_allocate_device +EXPORT_SYMBOL_GPL vmlinux 0x4c92dc43 dio_end_io +EXPORT_SYMBOL_GPL vmlinux 0x4ca3f0bc nand_prog_page_end_op +EXPORT_SYMBOL_GPL vmlinux 0x4cb1cf44 ftrace_set_filter +EXPORT_SYMBOL_GPL vmlinux 0x4ceae70f vchan_tx_desc_free +EXPORT_SYMBOL_GPL vmlinux 0x4ceda069 sdhci_pltfm_free +EXPORT_SYMBOL_GPL vmlinux 0x4cf17d9a hrtimer_cancel +EXPORT_SYMBOL_GPL vmlinux 0x4cf1d0da phy_led_trigger_change_speed +EXPORT_SYMBOL_GPL vmlinux 0x4cf24332 __usb_get_extra_descriptor +EXPORT_SYMBOL_GPL vmlinux 0x4d0015e2 cpu_hotplug_disable +EXPORT_SYMBOL_GPL vmlinux 0x4d09f1d4 sdhci_pltfm_suspend +EXPORT_SYMBOL_GPL vmlinux 0x4d0b0090 wm831x_reg_lock +EXPORT_SYMBOL_GPL vmlinux 0x4d1de1a2 device_attach +EXPORT_SYMBOL_GPL vmlinux 0x4d3687d9 alarm_forward +EXPORT_SYMBOL_GPL vmlinux 0x4d38f1e0 bL_switcher_unregister_notifier +EXPORT_SYMBOL_GPL vmlinux 0x4d4d7b79 blk_mq_map_queues +EXPORT_SYMBOL_GPL vmlinux 0x4d5af2ad add_swap_extent +EXPORT_SYMBOL_GPL vmlinux 0x4d5b421b rio_mport_get_efb +EXPORT_SYMBOL_GPL vmlinux 0x4d6d0bbc iommu_group_ref_get +EXPORT_SYMBOL_GPL vmlinux 0x4d6db3cd phy_init +EXPORT_SYMBOL_GPL vmlinux 0x4d75e222 usb_lock_device_for_reset +EXPORT_SYMBOL_GPL vmlinux 0x4d8110d0 register_kretprobe +EXPORT_SYMBOL_GPL vmlinux 0x4d836182 usb_gadget_unmap_request_by_dev +EXPORT_SYMBOL_GPL vmlinux 0x4d8f65bc tty_ldisc_deref +EXPORT_SYMBOL_GPL vmlinux 0x4d93c502 nand_reset +EXPORT_SYMBOL_GPL vmlinux 0x4d9a4bef nd_blk_region_to_dimm +EXPORT_SYMBOL_GPL vmlinux 0x4da3da89 rdev_get_regmap +EXPORT_SYMBOL_GPL vmlinux 0x4dae16e4 i2c_put_dma_safe_msg_buf +EXPORT_SYMBOL_GPL vmlinux 0x4db0f03a pm_runtime_forbid +EXPORT_SYMBOL_GPL vmlinux 0x4dc5c8ce device_add +EXPORT_SYMBOL_GPL vmlinux 0x4dd9d14d cn_netlink_send_mult +EXPORT_SYMBOL_GPL vmlinux 0x4ddabe4c ata_sas_port_start +EXPORT_SYMBOL_GPL vmlinux 0x4ddceccb sata_link_scr_lpm +EXPORT_SYMBOL_GPL vmlinux 0x4de17ab3 usb_state_string +EXPORT_SYMBOL_GPL vmlinux 0x4debbe1c extcon_set_property_capability +EXPORT_SYMBOL_GPL vmlinux 0x4dedf227 dw_pcie_write_dbi +EXPORT_SYMBOL_GPL vmlinux 0x4df28602 cs47l24_spi_regmap +EXPORT_SYMBOL_GPL vmlinux 0x4dfc0717 perf_event_sysfs_show +EXPORT_SYMBOL_GPL vmlinux 0x4e042a1e sbitmap_bitmap_show +EXPORT_SYMBOL_GPL vmlinux 0x4e2622ba pci_stop_root_bus +EXPORT_SYMBOL_GPL vmlinux 0x4e38419f devlink_flash_update_end_notify +EXPORT_SYMBOL_GPL vmlinux 0x4e394892 gpiod_get_array +EXPORT_SYMBOL_GPL vmlinux 0x4e44a3a1 nanddev_bbt_get_block_status +EXPORT_SYMBOL_GPL vmlinux 0x4e55000f nand_prog_page_begin_op +EXPORT_SYMBOL_GPL vmlinux 0x4e674f3d sdio_release_irq +EXPORT_SYMBOL_GPL vmlinux 0x4e6cf260 sdhci_start_signal_voltage_switch +EXPORT_SYMBOL_GPL vmlinux 0x4e729687 usb_hcd_map_urb_for_dma +EXPORT_SYMBOL_GPL vmlinux 0x4e8a6f6f pci_ats_supported +EXPORT_SYMBOL_GPL vmlinux 0x4e903d8a efivars_kobject +EXPORT_SYMBOL_GPL vmlinux 0x4ea727ad virtqueue_notify +EXPORT_SYMBOL_GPL vmlinux 0x4eac5fc1 cpu_mitigations_auto_nosmt +EXPORT_SYMBOL_GPL vmlinux 0x4eb2b889 sdhci_switch_external_dma +EXPORT_SYMBOL_GPL vmlinux 0x4ec8a47e rio_unregister_mport +EXPORT_SYMBOL_GPL vmlinux 0x4ed0feb8 fuse_request_end +EXPORT_SYMBOL_GPL vmlinux 0x4ed40532 pci_platform_power_transition +EXPORT_SYMBOL_GPL vmlinux 0x4ee37fba devm_platform_ioremap_resource +EXPORT_SYMBOL_GPL vmlinux 0x4ee59011 irq_create_fwspec_mapping +EXPORT_SYMBOL_GPL vmlinux 0x4ee85de2 extcon_get_edev_by_phandle +EXPORT_SYMBOL_GPL vmlinux 0x4ef5bcf4 perf_swevent_get_recursion_context +EXPORT_SYMBOL_GPL vmlinux 0x4f03ad66 fixed_phy_change_carrier +EXPORT_SYMBOL_GPL vmlinux 0x4f09de3e devlink_flash_update_begin_notify +EXPORT_SYMBOL_GPL vmlinux 0x4f114402 devm_pinctrl_register_and_init +EXPORT_SYMBOL_GPL vmlinux 0x4f168d70 iomap_set_page_dirty +EXPORT_SYMBOL_GPL vmlinux 0x4f179d74 crypto_unregister_kpp +EXPORT_SYMBOL_GPL vmlinux 0x4f1b7221 devlink_register +EXPORT_SYMBOL_GPL vmlinux 0x4f2a8e0f scsi_autopm_get_device +EXPORT_SYMBOL_GPL vmlinux 0x4f2da2ca debugfs_create_symlink +EXPORT_SYMBOL_GPL vmlinux 0x4f3ba219 blkg_rwstat_init +EXPORT_SYMBOL_GPL vmlinux 0x4f481b90 spi_bus_type +EXPORT_SYMBOL_GPL vmlinux 0x4f543ff9 mutex_lock_io +EXPORT_SYMBOL_GPL vmlinux 0x4f546853 get_net_ns +EXPORT_SYMBOL_GPL vmlinux 0x4f58fe84 ahci_platform_resume_host +EXPORT_SYMBOL_GPL vmlinux 0x4f6a07fe show_rcu_gp_kthreads +EXPORT_SYMBOL_GPL vmlinux 0x4f6cc1ad snd_soc_tplg_widget_bind_event +EXPORT_SYMBOL_GPL vmlinux 0x4f72a987 uart_parse_options +EXPORT_SYMBOL_GPL vmlinux 0x4f81b817 __tracepoint_br_fdb_add +EXPORT_SYMBOL_GPL vmlinux 0x4f8ca696 pci_enable_sriov +EXPORT_SYMBOL_GPL vmlinux 0x4f902f4c clk_register +EXPORT_SYMBOL_GPL vmlinux 0x4f98d766 cpu_pm_unregister_notifier +EXPORT_SYMBOL_GPL vmlinux 0x4f9b469d blk_mq_init_queue_data +EXPORT_SYMBOL_GPL vmlinux 0x4fb50784 md_allow_write +EXPORT_SYMBOL_GPL vmlinux 0x4fc9c2e8 virtio_config_changed +EXPORT_SYMBOL_GPL vmlinux 0x4fd03b82 ethnl_cable_test_fault_length +EXPORT_SYMBOL_GPL vmlinux 0x4fd893fc dequeue_signal +EXPORT_SYMBOL_GPL vmlinux 0x4fdc945d sata_deb_timing_normal +EXPORT_SYMBOL_GPL vmlinux 0x4fe1eddf unregister_netevent_notifier +EXPORT_SYMBOL_GPL vmlinux 0x4fe56011 of_pwm_get +EXPORT_SYMBOL_GPL vmlinux 0x4ffba041 d_walk +EXPORT_SYMBOL_GPL vmlinux 0x500058d3 dev_queue_xmit_nit +EXPORT_SYMBOL_GPL vmlinux 0x5011bb30 nand_reset_op +EXPORT_SYMBOL_GPL vmlinux 0x501fa272 kthread_data +EXPORT_SYMBOL_GPL vmlinux 0x5026fd19 ata_scsi_ioctl +EXPORT_SYMBOL_GPL vmlinux 0x50270e60 platform_device_register +EXPORT_SYMBOL_GPL vmlinux 0x503d6f51 spi_bus_unlock +EXPORT_SYMBOL_GPL vmlinux 0x503eeebb synth_event_add_fields +EXPORT_SYMBOL_GPL vmlinux 0x5049251d devm_power_supply_register_no_ws +EXPORT_SYMBOL_GPL vmlinux 0x505361b7 acomp_request_alloc +EXPORT_SYMBOL_GPL vmlinux 0x50575274 napi_hash_del +EXPORT_SYMBOL_GPL vmlinux 0x506ab3a9 usb_ep_queue +EXPORT_SYMBOL_GPL vmlinux 0x5078dbb7 device_connection_remove +EXPORT_SYMBOL_GPL vmlinux 0x507ebc7d fl6_update_dst +EXPORT_SYMBOL_GPL vmlinux 0x5086a19f led_trigger_register +EXPORT_SYMBOL_GPL vmlinux 0x508afef4 usb_anchor_suspend_wakeups +EXPORT_SYMBOL_GPL vmlinux 0x5091b823 ring_buffer_read_start +EXPORT_SYMBOL_GPL vmlinux 0x509c36d9 snd_soc_remove_pcm_runtime +EXPORT_SYMBOL_GPL vmlinux 0x509d5f55 clk_divider_ro_ops +EXPORT_SYMBOL_GPL vmlinux 0x50a79217 dm_bio_from_per_bio_data +EXPORT_SYMBOL_GPL vmlinux 0x50ae313c gpiod_set_array_value_cansleep +EXPORT_SYMBOL_GPL vmlinux 0x50b88f41 usb_get_gadget_udc_name +EXPORT_SYMBOL_GPL vmlinux 0x50c54bec crypto_rng_reset +EXPORT_SYMBOL_GPL vmlinux 0x50c89f23 __alloc_percpu +EXPORT_SYMBOL_GPL vmlinux 0x50df9bbb of_clk_src_onecell_get +EXPORT_SYMBOL_GPL vmlinux 0x50e7193a __i2c_first_dynamic_bus_num +EXPORT_SYMBOL_GPL vmlinux 0x50ece8e6 pin_user_pages_fast +EXPORT_SYMBOL_GPL vmlinux 0x50f048bc inet_csk_update_pmtu +EXPORT_SYMBOL_GPL vmlinux 0x50f2e60d icc_node_del +EXPORT_SYMBOL_GPL vmlinux 0x50fad434 round_jiffies_up +EXPORT_SYMBOL_GPL vmlinux 0x51058329 init_uts_ns +EXPORT_SYMBOL_GPL vmlinux 0x510b9aad serdev_device_set_flow_control +EXPORT_SYMBOL_GPL vmlinux 0x510f2de9 fib_nh_common_init +EXPORT_SYMBOL_GPL vmlinux 0x511b1f47 spi_controller_dma_unmap_mem_op_data +EXPORT_SYMBOL_GPL vmlinux 0x511c2602 ncsi_vlan_rx_add_vid +EXPORT_SYMBOL_GPL vmlinux 0x5127039d usb_of_get_interface_node +EXPORT_SYMBOL_GPL vmlinux 0x512eda46 dw8250_setup_port +EXPORT_SYMBOL_GPL vmlinux 0x5131777e musb_root_disconnect +EXPORT_SYMBOL_GPL vmlinux 0x513671ee dev_pm_qos_add_ancestor_request +EXPORT_SYMBOL_GPL vmlinux 0x51372b46 xdp_rxq_info_is_reg +EXPORT_SYMBOL_GPL vmlinux 0x51390c96 rcu_barrier_tasks_rude +EXPORT_SYMBOL_GPL vmlinux 0x514a21be nf_route +EXPORT_SYMBOL_GPL vmlinux 0x514c062d snd_soc_tplg_widget_remove +EXPORT_SYMBOL_GPL vmlinux 0x5151a79c usb_phy_get_charger_current +EXPORT_SYMBOL_GPL vmlinux 0x5156ed8d tty_ldisc_release +EXPORT_SYMBOL_GPL vmlinux 0x515ab6ec fsnotify_put_mark +EXPORT_SYMBOL_GPL vmlinux 0x515cfa95 i2c_bus_type +EXPORT_SYMBOL_GPL vmlinux 0x5169cddc of_fdt_unflatten_tree +EXPORT_SYMBOL_GPL vmlinux 0x517197ee ata_timing_compute +EXPORT_SYMBOL_GPL vmlinux 0x5174c53a fib_rule_matchall +EXPORT_SYMBOL_GPL vmlinux 0x51754009 inet_hashinfo2_init_mod +EXPORT_SYMBOL_GPL vmlinux 0x517d11bf ping_recvmsg +EXPORT_SYMBOL_GPL vmlinux 0x5185ea2e __mmu_notifier_register +EXPORT_SYMBOL_GPL vmlinux 0x51a348cc usb_role_switch_set_drvdata +EXPORT_SYMBOL_GPL vmlinux 0x51aaacfe dev_pm_domain_set +EXPORT_SYMBOL_GPL vmlinux 0x51b643fc ata_host_register +EXPORT_SYMBOL_GPL vmlinux 0x51e0028f skb_mpls_pop +EXPORT_SYMBOL_GPL vmlinux 0x51fdecf8 led_trigger_write +EXPORT_SYMBOL_GPL vmlinux 0x52060b6a spi_mem_adjust_op_size +EXPORT_SYMBOL_GPL vmlinux 0x5207184e tcp_is_ulp_esp +EXPORT_SYMBOL_GPL vmlinux 0x5224982e blk_mq_flush_busy_ctxs +EXPORT_SYMBOL_GPL vmlinux 0x52252316 clk_unregister_fixed_rate +EXPORT_SYMBOL_GPL vmlinux 0x52252778 register_virtio_device +EXPORT_SYMBOL_GPL vmlinux 0x5236497d trace_clock +EXPORT_SYMBOL_GPL vmlinux 0x523e0591 proc_get_parent_data +EXPORT_SYMBOL_GPL vmlinux 0x524368b5 dma_buf_attach +EXPORT_SYMBOL_GPL vmlinux 0x52472ea7 iomap_zero_range +EXPORT_SYMBOL_GPL vmlinux 0x52506bdd mtk_pinconf_drive_get_raw +EXPORT_SYMBOL_GPL vmlinux 0x52538470 fwnode_property_get_reference_args +EXPORT_SYMBOL_GPL vmlinux 0x526aaa1f thermal_remove_hwmon_sysfs +EXPORT_SYMBOL_GPL vmlinux 0x52775e8b spi_async +EXPORT_SYMBOL_GPL vmlinux 0x5278aaa9 ahci_platform_disable_phys +EXPORT_SYMBOL_GPL vmlinux 0x527ac4e6 virtqueue_get_vring_size +EXPORT_SYMBOL_GPL vmlinux 0x527be5df __page_mapcount +EXPORT_SYMBOL_GPL vmlinux 0x527d029c power_supply_am_i_supplied +EXPORT_SYMBOL_GPL vmlinux 0x528ccdd4 rockchip_pcie_deinit_phys +EXPORT_SYMBOL_GPL vmlinux 0x52a0479f handle_untracked_irq +EXPORT_SYMBOL_GPL vmlinux 0x52b1e3c7 pci_flags +EXPORT_SYMBOL_GPL vmlinux 0x52b3e8a1 is_hash_blacklisted +EXPORT_SYMBOL_GPL vmlinux 0x52c35e83 call_rcu_tasks_trace +EXPORT_SYMBOL_GPL vmlinux 0x52c42317 device_find_child_by_name +EXPORT_SYMBOL_GPL vmlinux 0x52d54fce devlink_info_version_stored_put +EXPORT_SYMBOL_GPL vmlinux 0x52d62726 kthread_flush_work +EXPORT_SYMBOL_GPL vmlinux 0x52d9027b ncsi_vlan_rx_kill_vid +EXPORT_SYMBOL_GPL vmlinux 0x52dd975b phy_create +EXPORT_SYMBOL_GPL vmlinux 0x52e9d20e xhci_dbg_trace +EXPORT_SYMBOL_GPL vmlinux 0x52ec9760 crypto_stats_init +EXPORT_SYMBOL_GPL vmlinux 0x52ecf7dd net_dm_hw_report +EXPORT_SYMBOL_GPL vmlinux 0x52f5ca87 iommu_group_add_device +EXPORT_SYMBOL_GPL vmlinux 0x52fa0074 usb_disable_ltm +EXPORT_SYMBOL_GPL vmlinux 0x530c9bca hwspin_lock_request +EXPORT_SYMBOL_GPL vmlinux 0x53115f61 component_unbind_all +EXPORT_SYMBOL_GPL vmlinux 0x5327b77b unix_outq_len +EXPORT_SYMBOL_GPL vmlinux 0x53365272 __regmap_init_spi +EXPORT_SYMBOL_GPL vmlinux 0x53388f73 inverse_translate +EXPORT_SYMBOL_GPL vmlinux 0x5343057b bgpio_init +EXPORT_SYMBOL_GPL vmlinux 0x534fb543 devm_nvmem_device_put +EXPORT_SYMBOL_GPL vmlinux 0x5358864e devlink_fmsg_binary_pair_nest_end +EXPORT_SYMBOL_GPL vmlinux 0x535a44e0 perf_aux_output_skip +EXPORT_SYMBOL_GPL vmlinux 0x535b5a85 pinctrl_get +EXPORT_SYMBOL_GPL vmlinux 0x536822e3 sfp_module_insert +EXPORT_SYMBOL_GPL vmlinux 0x538bc18a led_trigger_event +EXPORT_SYMBOL_GPL vmlinux 0x538d073d phy_duplex_to_str +EXPORT_SYMBOL_GPL vmlinux 0x538f2b33 skb_zerocopy_iter_dgram +EXPORT_SYMBOL_GPL vmlinux 0x53936fc2 efivars_unregister +EXPORT_SYMBOL_GPL vmlinux 0x53b46405 aead_register_instance +EXPORT_SYMBOL_GPL vmlinux 0x53b94900 phy_put +EXPORT_SYMBOL_GPL vmlinux 0x53bb3f94 of_phy_put +EXPORT_SYMBOL_GPL vmlinux 0x53bea510 crypto_alloc_base +EXPORT_SYMBOL_GPL vmlinux 0x53ca7ee8 wm831x_auxadc_read_uv +EXPORT_SYMBOL_GPL vmlinux 0x53d0acf0 __fscrypt_encrypt_symlink +EXPORT_SYMBOL_GPL vmlinux 0x53daaada fsl_mc_device_group +EXPORT_SYMBOL_GPL vmlinux 0x53e06c0c power_supply_find_ocv2cap_table +EXPORT_SYMBOL_GPL vmlinux 0x53e44378 cpuidle_enable_device +EXPORT_SYMBOL_GPL vmlinux 0x53fa3843 mtd_device_parse_register +EXPORT_SYMBOL_GPL vmlinux 0x5414c84f crypto_stats_kpp_set_secret +EXPORT_SYMBOL_GPL vmlinux 0x54172702 cci_disable_port_by_cpu +EXPORT_SYMBOL_GPL vmlinux 0x541bd60a irq_work_run +EXPORT_SYMBOL_GPL vmlinux 0x54205412 regmap_check_range_table +EXPORT_SYMBOL_GPL vmlinux 0x54255656 dax_driver_unregister +EXPORT_SYMBOL_GPL vmlinux 0x5426ccd0 crypto_stats_aead_decrypt +EXPORT_SYMBOL_GPL vmlinux 0x5435454c divider_ro_round_rate_parent +EXPORT_SYMBOL_GPL vmlinux 0x543ac025 wm8350_read_auxadc +EXPORT_SYMBOL_GPL vmlinux 0x54434d7e wm5102_spi_regmap +EXPORT_SYMBOL_GPL vmlinux 0x54465bfb devm_led_classdev_unregister +EXPORT_SYMBOL_GPL vmlinux 0x545b76f9 device_connection_find_match +EXPORT_SYMBOL_GPL vmlinux 0x54603354 mtd_ooblayout_set_databytes +EXPORT_SYMBOL_GPL vmlinux 0x54660c21 crypto_shash_update +EXPORT_SYMBOL_GPL vmlinux 0x54748b21 sk_setup_caps +EXPORT_SYMBOL_GPL vmlinux 0x548aa27a xhci_run +EXPORT_SYMBOL_GPL vmlinux 0x5491b8af raw_hash_sk +EXPORT_SYMBOL_GPL vmlinux 0x549525ef handle_nested_irq +EXPORT_SYMBOL_GPL vmlinux 0x549ce9bb class_create_file_ns +EXPORT_SYMBOL_GPL vmlinux 0x54a25da2 qcom_smem_state_put +EXPORT_SYMBOL_GPL vmlinux 0x54b7a489 pci_check_and_mask_intx +EXPORT_SYMBOL_GPL vmlinux 0x54bddbbb wakeup_sources_walk_start +EXPORT_SYMBOL_GPL vmlinux 0x54ce8396 pinctrl_select_default_state +EXPORT_SYMBOL_GPL vmlinux 0x54dc7c7d apply_to_page_range +EXPORT_SYMBOL_GPL vmlinux 0x54de0115 serial8250_rpm_get +EXPORT_SYMBOL_GPL vmlinux 0x54e9052c tracepoint_probe_register +EXPORT_SYMBOL_GPL vmlinux 0x54ebc350 fib_new_table +EXPORT_SYMBOL_GPL vmlinux 0x54f2064f report_iommu_fault +EXPORT_SYMBOL_GPL vmlinux 0x54f5fe34 devm_power_supply_register +EXPORT_SYMBOL_GPL vmlinux 0x55147501 iommu_sva_unbind_gpasid +EXPORT_SYMBOL_GPL vmlinux 0x55339365 flush_delayed_fput +EXPORT_SYMBOL_GPL vmlinux 0x553b49a4 cpufreq_get_driver_data +EXPORT_SYMBOL_GPL vmlinux 0x55417264 unregister_vt_notifier +EXPORT_SYMBOL_GPL vmlinux 0x5543a280 alloc_page_buffers +EXPORT_SYMBOL_GPL vmlinux 0x5568b5a6 sdhci_enable_clk +EXPORT_SYMBOL_GPL vmlinux 0x556e4390 clk_get_rate +EXPORT_SYMBOL_GPL vmlinux 0x55784228 regmap_irq_get_virq +EXPORT_SYMBOL_GPL vmlinux 0x5578c5fc acomp_request_free +EXPORT_SYMBOL_GPL vmlinux 0x5588a26b xdp_attachment_flags_ok +EXPORT_SYMBOL_GPL vmlinux 0x55941e16 exportfs_decode_fh +EXPORT_SYMBOL_GPL vmlinux 0x55944d4c mmu_notifier_unregister +EXPORT_SYMBOL_GPL vmlinux 0x5599bff9 l3mdev_fib_table_by_index +EXPORT_SYMBOL_GPL vmlinux 0x55a39739 crypto_hash_alg_has_setkey +EXPORT_SYMBOL_GPL vmlinux 0x55c0fb66 fuse_dev_fiq_ops +EXPORT_SYMBOL_GPL vmlinux 0x55c76a23 ksys_sync_helper +EXPORT_SYMBOL_GPL vmlinux 0x55ca9cfe thermal_zone_device_unregister +EXPORT_SYMBOL_GPL vmlinux 0x55cb5f91 pcie_update_link_speed +EXPORT_SYMBOL_GPL vmlinux 0x55eabf22 snd_soc_dai_compr_startup +EXPORT_SYMBOL_GPL vmlinux 0x55eecff4 bit_wait_io_timeout +EXPORT_SYMBOL_GPL vmlinux 0x55eeee75 gpiod_get_from_of_node +EXPORT_SYMBOL_GPL vmlinux 0x55fe6f41 inet_csk_get_port +EXPORT_SYMBOL_GPL vmlinux 0x56054c05 crypto_it_tab +EXPORT_SYMBOL_GPL vmlinux 0x56173654 pcap_set_ts_bits +EXPORT_SYMBOL_GPL vmlinux 0x561835eb init_rs_non_canonical +EXPORT_SYMBOL_GPL vmlinux 0x56256e8a orderly_poweroff +EXPORT_SYMBOL_GPL vmlinux 0x5627e408 crypto_enqueue_request_head +EXPORT_SYMBOL_GPL vmlinux 0x56310925 regulator_mode_to_status +EXPORT_SYMBOL_GPL vmlinux 0x5631c22c __blk_req_zone_write_unlock +EXPORT_SYMBOL_GPL vmlinux 0x5632e63d nand_subop_get_num_addr_cyc +EXPORT_SYMBOL_GPL vmlinux 0x5641485b tty_termios_encode_baud_rate +EXPORT_SYMBOL_GPL vmlinux 0x5653892e free_io_pgtable_ops +EXPORT_SYMBOL_GPL vmlinux 0x56588336 __udp6_lib_lookup +EXPORT_SYMBOL_GPL vmlinux 0x565cbd02 mtk_is_virt_gpio +EXPORT_SYMBOL_GPL vmlinux 0x566ea5e8 led_trigger_remove +EXPORT_SYMBOL_GPL vmlinux 0x567570a4 __sdhci_set_timeout +EXPORT_SYMBOL_GPL vmlinux 0x56848427 dma_buf_vunmap +EXPORT_SYMBOL_GPL vmlinux 0x5697582b of_alias_get_id +EXPORT_SYMBOL_GPL vmlinux 0x56a2202b sched_trace_rq_avg_irq +EXPORT_SYMBOL_GPL vmlinux 0x56a4dbbf pm_clk_remove_clk +EXPORT_SYMBOL_GPL vmlinux 0x56a6a76c net_rwsem +EXPORT_SYMBOL_GPL vmlinux 0x56ac5c7b ping_queue_rcv_skb +EXPORT_SYMBOL_GPL vmlinux 0x56b63670 lzo1x_1_compress +EXPORT_SYMBOL_GPL vmlinux 0x56c620aa mtd_write_user_prot_reg +EXPORT_SYMBOL_GPL vmlinux 0x56c7cfda synth_event_trace_end +EXPORT_SYMBOL_GPL vmlinux 0x56e42fb7 tracing_snapshot_cond +EXPORT_SYMBOL_GPL vmlinux 0x56e5cd05 iommu_domain_window_enable +EXPORT_SYMBOL_GPL vmlinux 0x56e6fc77 usb_put_dev +EXPORT_SYMBOL_GPL vmlinux 0x56e9103b cpu_pm_enter +EXPORT_SYMBOL_GPL vmlinux 0x56eed00f __blk_req_zone_write_lock +EXPORT_SYMBOL_GPL vmlinux 0x5708d983 ata_sff_port_intr +EXPORT_SYMBOL_GPL vmlinux 0x5709a363 ata_std_qc_defer +EXPORT_SYMBOL_GPL vmlinux 0x5717f730 gov_update_cpu_data +EXPORT_SYMBOL_GPL vmlinux 0x57194c54 of_get_display_timing +EXPORT_SYMBOL_GPL vmlinux 0x573b5453 ipv6_fixup_options +EXPORT_SYMBOL_GPL vmlinux 0x573ea319 mtd_kmalloc_up_to +EXPORT_SYMBOL_GPL vmlinux 0x57628d4b mbox_free_channel +EXPORT_SYMBOL_GPL vmlinux 0x5771d845 of_irq_get_byname +EXPORT_SYMBOL_GPL vmlinux 0x57773563 fat_time_unix2fat +EXPORT_SYMBOL_GPL vmlinux 0x577b04cc devm_gpiod_unhinge +EXPORT_SYMBOL_GPL vmlinux 0x578d84ba nd_blk_memremap_flags +EXPORT_SYMBOL_GPL vmlinux 0x5790e7a0 pci_unlock_rescan_remove +EXPORT_SYMBOL_GPL vmlinux 0x57912e9b ata_eh_freeze_port +EXPORT_SYMBOL_GPL vmlinux 0x579e0bf5 rtnl_unregister_all +EXPORT_SYMBOL_GPL vmlinux 0x57a231cc usb_decode_ctrl +EXPORT_SYMBOL_GPL vmlinux 0x57adf0f7 phy_resolve_aneg_pause +EXPORT_SYMBOL_GPL vmlinux 0x57b4d8de console_drivers +EXPORT_SYMBOL_GPL vmlinux 0x57c39727 kdb_register_flags +EXPORT_SYMBOL_GPL vmlinux 0x57d149ee rcuwait_wake_up +EXPORT_SYMBOL_GPL vmlinux 0x57f70547 secure_ipv4_port_ephemeral +EXPORT_SYMBOL_GPL vmlinux 0x57fde9a1 ehci_setup +EXPORT_SYMBOL_GPL vmlinux 0x57ff6bd2 em_cpu_get +EXPORT_SYMBOL_GPL vmlinux 0x58048851 thermal_zone_device_update +EXPORT_SYMBOL_GPL vmlinux 0x5830092d regulator_lock +EXPORT_SYMBOL_GPL vmlinux 0x5831e062 cpus_read_trylock +EXPORT_SYMBOL_GPL vmlinux 0x5843e3b3 __udp4_lib_lookup +EXPORT_SYMBOL_GPL vmlinux 0x584f938f wm5110_revd_irq +EXPORT_SYMBOL_GPL vmlinux 0x586010ba max8997_bulk_read +EXPORT_SYMBOL_GPL vmlinux 0x5879a27d sfp_get_module_info +EXPORT_SYMBOL_GPL vmlinux 0x587ac04d cpufreq_show_cpus +EXPORT_SYMBOL_GPL vmlinux 0x588c1064 pci_epf_create +EXPORT_SYMBOL_GPL vmlinux 0x588cbe79 pinctrl_generic_add_group +EXPORT_SYMBOL_GPL vmlinux 0x58ac0f01 gpiochip_free_own_desc +EXPORT_SYMBOL_GPL vmlinux 0x58acfc75 pci_hp_add_bridge +EXPORT_SYMBOL_GPL vmlinux 0x58ae26f7 nvdimm_cmd_mask +EXPORT_SYMBOL_GPL vmlinux 0x58b413d6 rtnl_delete_link +EXPORT_SYMBOL_GPL vmlinux 0x58b7b3e7 dev_pm_qos_expose_latency_limit +EXPORT_SYMBOL_GPL vmlinux 0x58bacb25 fib_rules_seq_read +EXPORT_SYMBOL_GPL vmlinux 0x58c0e6f1 dma_buf_detach +EXPORT_SYMBOL_GPL vmlinux 0x58c5fb95 of_reconfig_get_state_change +EXPORT_SYMBOL_GPL vmlinux 0x58c7ad31 ahci_platform_disable_clks +EXPORT_SYMBOL_GPL vmlinux 0x58d649ff lwtunnel_input +EXPORT_SYMBOL_GPL vmlinux 0x58def6ca sfp_module_remove +EXPORT_SYMBOL_GPL vmlinux 0x58e43456 dev_pm_qos_expose_flags +EXPORT_SYMBOL_GPL vmlinux 0x58ef48b8 xfrm_output +EXPORT_SYMBOL_GPL vmlinux 0x58f0308a clk_regmap_divider_ops +EXPORT_SYMBOL_GPL vmlinux 0x59084848 tun_get_socket +EXPORT_SYMBOL_GPL vmlinux 0x59405403 unregister_virtio_device +EXPORT_SYMBOL_GPL vmlinux 0x5953ddfb dev_pm_qos_update_request +EXPORT_SYMBOL_GPL vmlinux 0x59709bbe dummy_con +EXPORT_SYMBOL_GPL vmlinux 0x5975c899 bus_for_each_dev +EXPORT_SYMBOL_GPL vmlinux 0x59769a39 usb_init_urb +EXPORT_SYMBOL_GPL vmlinux 0x597d2180 put_mtd_device +EXPORT_SYMBOL_GPL vmlinux 0x5986d190 kdb_printf +EXPORT_SYMBOL_GPL vmlinux 0x598fc158 rio_get_comptag +EXPORT_SYMBOL_GPL vmlinux 0x59927da1 mtd_ooblayout_find_eccregion +EXPORT_SYMBOL_GPL vmlinux 0x59957e00 mddev_congested +EXPORT_SYMBOL_GPL vmlinux 0x599e0eb0 bpf_map_inc_not_zero +EXPORT_SYMBOL_GPL vmlinux 0x599e8ef8 _snd_pcm_stream_lock_irqsave +EXPORT_SYMBOL_GPL vmlinux 0x59a1fab8 ehci_cf_port_reset_rwsem +EXPORT_SYMBOL_GPL vmlinux 0x59a2fd93 do_take_over_console +EXPORT_SYMBOL_GPL vmlinux 0x59a9f0fc blk_ksm_register +EXPORT_SYMBOL_GPL vmlinux 0x59b5def6 clk_regmap_gate_ops +EXPORT_SYMBOL_GPL vmlinux 0x59b75ce9 __sbitmap_queue_get_shallow +EXPORT_SYMBOL_GPL vmlinux 0x59f7b725 raw_seq_next +EXPORT_SYMBOL_GPL vmlinux 0x59fde9e0 of_dma_controller_register +EXPORT_SYMBOL_GPL vmlinux 0x5a1521d7 rio_request_dma +EXPORT_SYMBOL_GPL vmlinux 0x5a1d134a rcu_momentary_dyntick_idle +EXPORT_SYMBOL_GPL vmlinux 0x5a1dd292 snd_ctl_apply_vmaster_slaves +EXPORT_SYMBOL_GPL vmlinux 0x5a28d2a3 snd_soc_component_read32 +EXPORT_SYMBOL_GPL vmlinux 0x5a3028ca rio_route_get_entry +EXPORT_SYMBOL_GPL vmlinux 0x5a395afd ata_pci_bmdma_init_one +EXPORT_SYMBOL_GPL vmlinux 0x5a49dbc9 timerqueue_del +EXPORT_SYMBOL_GPL vmlinux 0x5a532ad9 dev_pm_qos_expose_latency_tolerance +EXPORT_SYMBOL_GPL vmlinux 0x5a534b76 pci_epc_multi_mem_init +EXPORT_SYMBOL_GPL vmlinux 0x5a5f8625 wm831x_reg_write +EXPORT_SYMBOL_GPL vmlinux 0x5a607457 devm_spi_mem_dirmap_create +EXPORT_SYMBOL_GPL vmlinux 0x5a6cdb52 nf_ct_zone_dflt +EXPORT_SYMBOL_GPL vmlinux 0x5a742b18 hwspin_lock_unregister +EXPORT_SYMBOL_GPL vmlinux 0x5a76e56b sbitmap_prepare_to_wait +EXPORT_SYMBOL_GPL vmlinux 0x5a7bfe41 crypto_probing_notify +EXPORT_SYMBOL_GPL vmlinux 0x5a7f63c9 devm_thermal_of_cooling_device_register +EXPORT_SYMBOL_GPL vmlinux 0x5a893f75 perf_event_period +EXPORT_SYMBOL_GPL vmlinux 0x5a8a37d0 ahci_save_initial_config +EXPORT_SYMBOL_GPL vmlinux 0x5a9978e7 power_supply_external_power_changed +EXPORT_SYMBOL_GPL vmlinux 0x5aa2bd34 inet6_csk_xmit +EXPORT_SYMBOL_GPL vmlinux 0x5ab09745 edac_get_owner +EXPORT_SYMBOL_GPL vmlinux 0x5ac24451 unregister_kprobe +EXPORT_SYMBOL_GPL vmlinux 0x5ae6d131 snd_dmaengine_pcm_get_chan +EXPORT_SYMBOL_GPL vmlinux 0x5af8cf07 snd_soc_cnew +EXPORT_SYMBOL_GPL vmlinux 0x5b02fa6d snd_soc_add_pcm_runtime +EXPORT_SYMBOL_GPL vmlinux 0x5b1a941f mddev_init +EXPORT_SYMBOL_GPL vmlinux 0x5b21ceff ring_buffer_iter_peek +EXPORT_SYMBOL_GPL vmlinux 0x5b29ed9d __rt_mutex_init +EXPORT_SYMBOL_GPL vmlinux 0x5b2ebf4b __device_reset +EXPORT_SYMBOL_GPL vmlinux 0x5b316080 software_node_unregister_nodes +EXPORT_SYMBOL_GPL vmlinux 0x5b326054 input_class +EXPORT_SYMBOL_GPL vmlinux 0x5b32ec01 deregister_mtd_parser +EXPORT_SYMBOL_GPL vmlinux 0x5b33705c tcp_unregister_ulp +EXPORT_SYMBOL_GPL vmlinux 0x5b3ae22e relay_flush +EXPORT_SYMBOL_GPL vmlinux 0x5b485a68 pstore_unregister +EXPORT_SYMBOL_GPL vmlinux 0x5b4b1b83 ata_sff_irq_on +EXPORT_SYMBOL_GPL vmlinux 0x5b55b7dd bsg_job_put +EXPORT_SYMBOL_GPL vmlinux 0x5b5c85ab __rio_local_read_config_32 +EXPORT_SYMBOL_GPL vmlinux 0x5b639d44 mpc8xxx_spi_rx_buf_u8 +EXPORT_SYMBOL_GPL vmlinux 0x5b63dc6f regmap_fields_update_bits_base +EXPORT_SYMBOL_GPL vmlinux 0x5b6b0329 swiotlb_max_segment +EXPORT_SYMBOL_GPL vmlinux 0x5b76301c devm_regmap_del_irq_chip +EXPORT_SYMBOL_GPL vmlinux 0x5b83b88a edac_pci_handle_npe +EXPORT_SYMBOL_GPL vmlinux 0x5b96ec24 strp_init +EXPORT_SYMBOL_GPL vmlinux 0x5bbdfa26 scatterwalk_ffwd +EXPORT_SYMBOL_GPL vmlinux 0x5bcf7be1 devlink_resource_occ_get_unregister +EXPORT_SYMBOL_GPL vmlinux 0x5bd0748f crypto_del_default_rng +EXPORT_SYMBOL_GPL vmlinux 0x5bdae35b usb_phy_roothub_set_mode +EXPORT_SYMBOL_GPL vmlinux 0x5bdbac4e rcu_unexpedite_gp +EXPORT_SYMBOL_GPL vmlinux 0x5bea9237 arizona_dev_exit +EXPORT_SYMBOL_GPL vmlinux 0x5c28d561 pci_set_host_bridge_release +EXPORT_SYMBOL_GPL vmlinux 0x5c2bcd37 bpf_warn_invalid_xdp_action +EXPORT_SYMBOL_GPL vmlinux 0x5c303b83 phy_power_off +EXPORT_SYMBOL_GPL vmlinux 0x5c36743b crypto_alloc_shash +EXPORT_SYMBOL_GPL vmlinux 0x5c49a132 crypto_unregister_scomps +EXPORT_SYMBOL_GPL vmlinux 0x5c5a1b16 tick_broadcast_control +EXPORT_SYMBOL_GPL vmlinux 0x5c5a2832 sdio_retune_crc_disable +EXPORT_SYMBOL_GPL vmlinux 0x5c5da1bc gpiod_count +EXPORT_SYMBOL_GPL vmlinux 0x5c62792e ata_port_wait_eh +EXPORT_SYMBOL_GPL vmlinux 0x5c66e90c efivar_run_worker +EXPORT_SYMBOL_GPL vmlinux 0x5c724709 memory_cgrp_subsys_on_dfl_key +EXPORT_SYMBOL_GPL vmlinux 0x5c8168d0 find_symbol +EXPORT_SYMBOL_GPL vmlinux 0x5c84d1f6 mvebu_mbus_get_io_win_info +EXPORT_SYMBOL_GPL vmlinux 0x5c87061b hrtimer_sleeper_start_expires +EXPORT_SYMBOL_GPL vmlinux 0x5c94ad28 gpiod_get_value +EXPORT_SYMBOL_GPL vmlinux 0x5c9867f5 usb_driver_release_interface +EXPORT_SYMBOL_GPL vmlinux 0x5ca7df8c of_genpd_add_device +EXPORT_SYMBOL_GPL vmlinux 0x5cad8fc3 power_supply_ocv2cap_simple +EXPORT_SYMBOL_GPL vmlinux 0x5cd1b39b gpiochip_generic_request +EXPORT_SYMBOL_GPL vmlinux 0x5ce27bc4 rtc_set_alarm +EXPORT_SYMBOL_GPL vmlinux 0x5ce56700 thermal_zone_get_temp +EXPORT_SYMBOL_GPL vmlinux 0x5cf09a57 fsstack_copy_attr_all +EXPORT_SYMBOL_GPL vmlinux 0x5cfe9882 dev_pm_qos_add_notifier +EXPORT_SYMBOL_GPL vmlinux 0x5d19cf43 devm_kmemdup +EXPORT_SYMBOL_GPL vmlinux 0x5d22edc7 snd_soc_runtime_calc_hw +EXPORT_SYMBOL_GPL vmlinux 0x5d2332c1 usb_get_phy +EXPORT_SYMBOL_GPL vmlinux 0x5d26b51f __percpu_init_rwsem +EXPORT_SYMBOL_GPL vmlinux 0x5d35b43f __srcu_read_unlock +EXPORT_SYMBOL_GPL vmlinux 0x5d39ec63 regmap_reinit_cache +EXPORT_SYMBOL_GPL vmlinux 0x5d4523a4 proc_create_net_data +EXPORT_SYMBOL_GPL vmlinux 0x5d46f24c sdio_memcpy_toio +EXPORT_SYMBOL_GPL vmlinux 0x5d4996c9 dw_pcie_upconfig_setup +EXPORT_SYMBOL_GPL vmlinux 0x5d59221a ata_sas_async_probe +EXPORT_SYMBOL_GPL vmlinux 0x5d66a116 xhci_init_driver +EXPORT_SYMBOL_GPL vmlinux 0x5d68b9dd devlink_param_driverinit_value_get +EXPORT_SYMBOL_GPL vmlinux 0x5d708f99 clk_register_mux_table +EXPORT_SYMBOL_GPL vmlinux 0x5d83ba0b fb_deferred_io_init +EXPORT_SYMBOL_GPL vmlinux 0x5d8476d3 bpf_sk_storage_diag_alloc +EXPORT_SYMBOL_GPL vmlinux 0x5d9744d0 fat_attach +EXPORT_SYMBOL_GPL vmlinux 0x5d9f24b7 netlink_add_tap +EXPORT_SYMBOL_GPL vmlinux 0x5da4ab57 bio_clone_blkg_association +EXPORT_SYMBOL_GPL vmlinux 0x5da67adc zs_compact +EXPORT_SYMBOL_GPL vmlinux 0x5db1922c rq_flush_dcache_pages +EXPORT_SYMBOL_GPL vmlinux 0x5db1db64 nvdimm_bus_check_dimm_count +EXPORT_SYMBOL_GPL vmlinux 0x5dd4eac0 transport_destroy_device +EXPORT_SYMBOL_GPL vmlinux 0x5df1d1da hwspin_lock_register +EXPORT_SYMBOL_GPL vmlinux 0x5df4d073 md_stop +EXPORT_SYMBOL_GPL vmlinux 0x5df778c5 __tracepoint_kfree_skb +EXPORT_SYMBOL_GPL vmlinux 0x5dfed7bd evict_inodes +EXPORT_SYMBOL_GPL vmlinux 0x5dff6fda x509_decode_time +EXPORT_SYMBOL_GPL vmlinux 0x5e03868f fixup_user_fault +EXPORT_SYMBOL_GPL vmlinux 0x5e08ee69 nexthop_select_path +EXPORT_SYMBOL_GPL vmlinux 0x5e12ecc1 __tracepoint_rpm_return_int +EXPORT_SYMBOL_GPL vmlinux 0x5e2e8aa5 nvdimm_region_notify +EXPORT_SYMBOL_GPL vmlinux 0x5e36f666 tcp_reno_ssthresh +EXPORT_SYMBOL_GPL vmlinux 0x5e4b534d __platform_driver_probe +EXPORT_SYMBOL_GPL vmlinux 0x5e4ec6e9 irq_find_matching_fwspec +EXPORT_SYMBOL_GPL vmlinux 0x5e515be6 ktime_get_ts64 +EXPORT_SYMBOL_GPL vmlinux 0x5e51cd74 swiotlb_nr_tbl +EXPORT_SYMBOL_GPL vmlinux 0x5e61b2b1 of_dma_is_coherent +EXPORT_SYMBOL_GPL vmlinux 0x5e67b71d evm_set_key +EXPORT_SYMBOL_GPL vmlinux 0x5e7028a8 of_icc_get +EXPORT_SYMBOL_GPL vmlinux 0x5e777f32 sched_trace_rq_avg_rt +EXPORT_SYMBOL_GPL vmlinux 0x5e798ffb divider_get_val +EXPORT_SYMBOL_GPL vmlinux 0x5e7d2d40 pci_epc_mem_free_addr +EXPORT_SYMBOL_GPL vmlinux 0x5e85415b ring_buffer_consume +EXPORT_SYMBOL_GPL vmlinux 0x5e9b1ebf watchdog_init_timeout +EXPORT_SYMBOL_GPL vmlinux 0x5eb96205 arizona_pm_ops +EXPORT_SYMBOL_GPL vmlinux 0x5ec62549 ata_dev_classify +EXPORT_SYMBOL_GPL vmlinux 0x5ed289c0 mctrl_gpio_free +EXPORT_SYMBOL_GPL vmlinux 0x5ede94c3 __netif_set_xps_queue +EXPORT_SYMBOL_GPL vmlinux 0x5f021758 pci_epc_raise_irq +EXPORT_SYMBOL_GPL vmlinux 0x5f16b20d driver_attach +EXPORT_SYMBOL_GPL vmlinux 0x5f23e3fa insert_resource +EXPORT_SYMBOL_GPL vmlinux 0x5f25b050 rio_mport_get_feature +EXPORT_SYMBOL_GPL vmlinux 0x5f292af7 __blk_mq_debugfs_rq_show +EXPORT_SYMBOL_GPL vmlinux 0x5f2b49e8 efivar_entry_set +EXPORT_SYMBOL_GPL vmlinux 0x5f3fb590 hisi_clk_register_phase +EXPORT_SYMBOL_GPL vmlinux 0x5f503b01 d_exchange +EXPORT_SYMBOL_GPL vmlinux 0x5f59fd38 nvdimm_pmem_region_create +EXPORT_SYMBOL_GPL vmlinux 0x5f5a68ec disk_part_iter_next +EXPORT_SYMBOL_GPL vmlinux 0x5f5c6bd0 __vfs_setxattr_noperm +EXPORT_SYMBOL_GPL vmlinux 0x5f63c8e3 cpufreq_unregister_driver +EXPORT_SYMBOL_GPL vmlinux 0x5f6a0061 adp5520_write +EXPORT_SYMBOL_GPL vmlinux 0x5f6f1e9e dax_get_private +EXPORT_SYMBOL_GPL vmlinux 0x5f8c6564 nand_status_op +EXPORT_SYMBOL_GPL vmlinux 0x5f9e1a1a __tracepoint_neigh_event_send_dead +EXPORT_SYMBOL_GPL vmlinux 0x5f9e8ac3 snd_soc_link_compr_set_params +EXPORT_SYMBOL_GPL vmlinux 0x5fa174aa regmap_write_async +EXPORT_SYMBOL_GPL vmlinux 0x5faac1f5 wm8350_block_write +EXPORT_SYMBOL_GPL vmlinux 0x5fadc8d3 irq_domain_create_hierarchy +EXPORT_SYMBOL_GPL vmlinux 0x5fb65f06 ehci_reset +EXPORT_SYMBOL_GPL vmlinux 0x5fbc4cc0 tty_prepare_flip_string +EXPORT_SYMBOL_GPL vmlinux 0x5fc294ef usb_ep_clear_halt +EXPORT_SYMBOL_GPL vmlinux 0x5fc5e5ef phy_validate +EXPORT_SYMBOL_GPL vmlinux 0x5fe13d0b mmc_send_status +EXPORT_SYMBOL_GPL vmlinux 0x5feb2439 serdev_device_write_wakeup +EXPORT_SYMBOL_GPL vmlinux 0x5fed24d9 unregister_pernet_device +EXPORT_SYMBOL_GPL vmlinux 0x5ff3a08d regulator_map_voltage_linear +EXPORT_SYMBOL_GPL vmlinux 0x5ffc0a16 phy_10gbit_full_features +EXPORT_SYMBOL_GPL vmlinux 0x60091316 clk_notifier_register +EXPORT_SYMBOL_GPL vmlinux 0x6011be7f to_nvdimm_bus +EXPORT_SYMBOL_GPL vmlinux 0x601c16a5 nanddev_mtd_erase +EXPORT_SYMBOL_GPL vmlinux 0x6028b032 trace_array_put +EXPORT_SYMBOL_GPL vmlinux 0x602d3c6b file_ra_state_init +EXPORT_SYMBOL_GPL vmlinux 0x603605e6 call_switchdev_notifiers +EXPORT_SYMBOL_GPL vmlinux 0x603b5763 devm_thermal_add_hwmon_sysfs +EXPORT_SYMBOL_GPL vmlinux 0x603feb78 extcon_set_state +EXPORT_SYMBOL_GPL vmlinux 0x60516fba synth_event_create +EXPORT_SYMBOL_GPL vmlinux 0x6059acb8 dev_pm_opp_disable +EXPORT_SYMBOL_GPL vmlinux 0x60671345 software_node_register_nodes +EXPORT_SYMBOL_GPL vmlinux 0x6075d0c7 omap_tll_init +EXPORT_SYMBOL_GPL vmlinux 0x607c4683 devlink_info_version_fixed_put +EXPORT_SYMBOL_GPL vmlinux 0x608b6fc1 sock_zerocopy_alloc +EXPORT_SYMBOL_GPL vmlinux 0x6091797f synchronize_rcu +EXPORT_SYMBOL_GPL vmlinux 0x609b7c21 fwnode_graph_get_remote_endpoint +EXPORT_SYMBOL_GPL vmlinux 0x60a01198 bpf_trace_run6 +EXPORT_SYMBOL_GPL vmlinux 0x60a13e90 rcu_barrier +EXPORT_SYMBOL_GPL vmlinux 0x60af545e fib_rules_lookup +EXPORT_SYMBOL_GPL vmlinux 0x60c19a19 snd_soc_dai_set_fmt +EXPORT_SYMBOL_GPL vmlinux 0x60c72c67 arizona_request_irq +EXPORT_SYMBOL_GPL vmlinux 0x60dc0a3f nf_queue_entry_free +EXPORT_SYMBOL_GPL vmlinux 0x60ebc96f ring_buffer_read_prepare +EXPORT_SYMBOL_GPL vmlinux 0x60ecd33b devres_remove +EXPORT_SYMBOL_GPL vmlinux 0x60f48456 gpiod_get_raw_array_value_cansleep +EXPORT_SYMBOL_GPL vmlinux 0x611a4738 tpm2_get_cc_attrs_tbl +EXPORT_SYMBOL_GPL vmlinux 0x611e53fc regulator_set_current_limit +EXPORT_SYMBOL_GPL vmlinux 0x6129fb93 sfp_remove_phy +EXPORT_SYMBOL_GPL vmlinux 0x612bfd89 errno_to_blk_status +EXPORT_SYMBOL_GPL vmlinux 0x612dc2bf snd_soc_component_set_jack +EXPORT_SYMBOL_GPL vmlinux 0x61330367 to_nd_blk_region +EXPORT_SYMBOL_GPL vmlinux 0x61357944 bpf_prog_create_from_user +EXPORT_SYMBOL_GPL vmlinux 0x6139d243 usb_put_intf +EXPORT_SYMBOL_GPL vmlinux 0x614150ff __tracepoint_devlink_hwerr +EXPORT_SYMBOL_GPL vmlinux 0x61418f25 dev_pm_opp_add +EXPORT_SYMBOL_GPL vmlinux 0x614782f1 usb_anchor_empty +EXPORT_SYMBOL_GPL vmlinux 0x614adcb7 of_overlay_remove_all +EXPORT_SYMBOL_GPL vmlinux 0x616b30c7 kmsg_dump_rewind +EXPORT_SYMBOL_GPL vmlinux 0x6181e79f timerqueue_add +EXPORT_SYMBOL_GPL vmlinux 0x6189413f bpf_verifier_log_write +EXPORT_SYMBOL_GPL vmlinux 0x6198dfea __ring_buffer_alloc +EXPORT_SYMBOL_GPL vmlinux 0x6199ad5d crypto_has_skcipher +EXPORT_SYMBOL_GPL vmlinux 0x61a5d772 ahci_set_em_messages +EXPORT_SYMBOL_GPL vmlinux 0x61e83904 sdio_writel +EXPORT_SYMBOL_GPL vmlinux 0x61ea50b9 kern_mount +EXPORT_SYMBOL_GPL vmlinux 0x61f67c92 phy_gbit_features_array +EXPORT_SYMBOL_GPL vmlinux 0x6204292b skcipher_walk_async +EXPORT_SYMBOL_GPL vmlinux 0x620e8cfa dma_release_channel +EXPORT_SYMBOL_GPL vmlinux 0x62214b82 __dma_request_channel +EXPORT_SYMBOL_GPL vmlinux 0x622266fb ahci_kick_engine +EXPORT_SYMBOL_GPL vmlinux 0x62255def snd_compress_register +EXPORT_SYMBOL_GPL vmlinux 0x622b922f devm_kfree +EXPORT_SYMBOL_GPL vmlinux 0x622c7922 register_oom_notifier +EXPORT_SYMBOL_GPL vmlinux 0x622f9771 usb_hub_find_child +EXPORT_SYMBOL_GPL vmlinux 0x62377a7b blk_io_schedule +EXPORT_SYMBOL_GPL vmlinux 0x62417e63 md_bitmap_resize +EXPORT_SYMBOL_GPL vmlinux 0x6246a629 synchronize_rcu_tasks_trace +EXPORT_SYMBOL_GPL vmlinux 0x6257dda7 clk_rate_exclusive_get +EXPORT_SYMBOL_GPL vmlinux 0x6259d291 clk_restore_context +EXPORT_SYMBOL_GPL vmlinux 0x6269b22f pci_msi_unmask_irq +EXPORT_SYMBOL_GPL vmlinux 0x626eb64a skb_to_sgvec_nomark +EXPORT_SYMBOL_GPL vmlinux 0x627e57c3 nvm_set_chunk_meta +EXPORT_SYMBOL_GPL vmlinux 0x628dcf7c spi_controller_dma_map_mem_op_data +EXPORT_SYMBOL_GPL vmlinux 0x62932f0a snd_pcm_hw_constraint_eld +EXPORT_SYMBOL_GPL vmlinux 0x6298464d ip_local_out +EXPORT_SYMBOL_GPL vmlinux 0x62a3c47f regulator_get_current_limit_regmap +EXPORT_SYMBOL_GPL vmlinux 0x62ba1561 arm_iommu_detach_device +EXPORT_SYMBOL_GPL vmlinux 0x62bb09bf clocks_calc_mult_shift +EXPORT_SYMBOL_GPL vmlinux 0x62bf93a5 nf_ip_route +EXPORT_SYMBOL_GPL vmlinux 0x62d0e2a6 __wake_up_locked +EXPORT_SYMBOL_GPL vmlinux 0x62eae714 snd_soc_jack_get_type +EXPORT_SYMBOL_GPL vmlinux 0x63054e9b crypto_stats_compress +EXPORT_SYMBOL_GPL vmlinux 0x63150e06 clk_get_parent +EXPORT_SYMBOL_GPL vmlinux 0x63197685 s2idle_wake +EXPORT_SYMBOL_GPL vmlinux 0x631c749c bpf_prog_add +EXPORT_SYMBOL_GPL vmlinux 0x6320bb27 serdev_controller_remove +EXPORT_SYMBOL_GPL vmlinux 0x6330e2a2 regmap_async_complete +EXPORT_SYMBOL_GPL vmlinux 0x6333a38a split_page +EXPORT_SYMBOL_GPL vmlinux 0x6333cae7 of_gen_pool_get +EXPORT_SYMBOL_GPL vmlinux 0x634a4d6c crypto_hash_walk_done +EXPORT_SYMBOL_GPL vmlinux 0x63509da4 unix_inq_len +EXPORT_SYMBOL_GPL vmlinux 0x636f6efd mnt_drop_write +EXPORT_SYMBOL_GPL vmlinux 0x638a85b3 nvmem_add_cell_table +EXPORT_SYMBOL_GPL vmlinux 0x63adbf92 encode_rs8 +EXPORT_SYMBOL_GPL vmlinux 0x63b9d6ad crypto_register_scomps +EXPORT_SYMBOL_GPL vmlinux 0x63c08029 clk_bulk_unprepare +EXPORT_SYMBOL_GPL vmlinux 0x63c62d18 bus_sort_breadthfirst +EXPORT_SYMBOL_GPL vmlinux 0x63c7c006 snd_soc_dapm_get_enum_double +EXPORT_SYMBOL_GPL vmlinux 0x63d7bd2d gpiod_set_config +EXPORT_SYMBOL_GPL vmlinux 0x63e2092c spi_mem_dirmap_create +EXPORT_SYMBOL_GPL vmlinux 0x63e5e7be phy_speed_down +EXPORT_SYMBOL_GPL vmlinux 0x63ecdce7 usb_add_hcd +EXPORT_SYMBOL_GPL vmlinux 0x63f5d96b ip6_datagram_recv_ctl +EXPORT_SYMBOL_GPL vmlinux 0x63f8b988 fscrypt_ioctl_get_policy_ex +EXPORT_SYMBOL_GPL vmlinux 0x6408ad03 rio_release_dma +EXPORT_SYMBOL_GPL vmlinux 0x640d4ae3 usb_get_dr_mode +EXPORT_SYMBOL_GPL vmlinux 0x640d8786 netdev_walk_all_lower_dev_rcu +EXPORT_SYMBOL_GPL vmlinux 0x641150d1 pci_d3cold_enable +EXPORT_SYMBOL_GPL vmlinux 0x6411cce4 rio_request_inb_mbox +EXPORT_SYMBOL_GPL vmlinux 0x64243190 wm8350_set_bits +EXPORT_SYMBOL_GPL vmlinux 0x64256424 visitor32 +EXPORT_SYMBOL_GPL vmlinux 0x64320b12 snd_soc_component_exit_regmap +EXPORT_SYMBOL_GPL vmlinux 0x6436be53 i2c_adapter_depth +EXPORT_SYMBOL_GPL vmlinux 0x644047cc __udp_enqueue_schedule_skb +EXPORT_SYMBOL_GPL vmlinux 0x644bfdcf trace_print_bitmask_seq +EXPORT_SYMBOL_GPL vmlinux 0x64519d49 device_match_fwnode +EXPORT_SYMBOL_GPL vmlinux 0x646cf8a9 genphy_c45_read_lpa +EXPORT_SYMBOL_GPL vmlinux 0x646d106d iommu_iova_to_phys +EXPORT_SYMBOL_GPL vmlinux 0x647537f3 pl320_ipc_register_notifier +EXPORT_SYMBOL_GPL vmlinux 0x64925270 __dax_synchronous +EXPORT_SYMBOL_GPL vmlinux 0x6493a2df rht_bucket_nested +EXPORT_SYMBOL_GPL vmlinux 0x6499ca92 copy_from_user_nofault +EXPORT_SYMBOL_GPL vmlinux 0x64a2c7e7 meson_clk_mpll_ro_ops +EXPORT_SYMBOL_GPL vmlinux 0x64a4c4dc ata_bmdma_start +EXPORT_SYMBOL_GPL vmlinux 0x64c07d32 btree_remove +EXPORT_SYMBOL_GPL vmlinux 0x64c2022d mmc_send_tuning +EXPORT_SYMBOL_GPL vmlinux 0x64cdf082 xas_load +EXPORT_SYMBOL_GPL vmlinux 0x64cfe6ea regulator_get +EXPORT_SYMBOL_GPL vmlinux 0x64d4e120 fwnode_property_read_u32_array +EXPORT_SYMBOL_GPL vmlinux 0x64da1d6a usb_store_new_id +EXPORT_SYMBOL_GPL vmlinux 0x64dcb256 pm_generic_resume_early +EXPORT_SYMBOL_GPL vmlinux 0x64e27c4f synth_event_delete +EXPORT_SYMBOL_GPL vmlinux 0x64e593cd device_store_bool +EXPORT_SYMBOL_GPL vmlinux 0x64faf25c vprintk_default +EXPORT_SYMBOL_GPL vmlinux 0x651dbc6a blkcg_root +EXPORT_SYMBOL_GPL vmlinux 0x652010da usb_autopm_get_interface_no_resume +EXPORT_SYMBOL_GPL vmlinux 0x65302b37 governor_sysfs_ops +EXPORT_SYMBOL_GPL vmlinux 0x6531e720 devlink_net_set +EXPORT_SYMBOL_GPL vmlinux 0x653d0fd5 ata_sff_lost_interrupt +EXPORT_SYMBOL_GPL vmlinux 0x65537437 freezer_cgrp_subsys_on_dfl_key +EXPORT_SYMBOL_GPL vmlinux 0x65568258 devm_nvmem_cell_get +EXPORT_SYMBOL_GPL vmlinux 0x655d5a6f usb_create_shared_hcd +EXPORT_SYMBOL_GPL vmlinux 0x6578581c irq_domain_translate_onecell +EXPORT_SYMBOL_GPL vmlinux 0x658879c0 scsi_target_block +EXPORT_SYMBOL_GPL vmlinux 0x65ccb6f0 call_netevent_notifiers +EXPORT_SYMBOL_GPL vmlinux 0x65d56966 usb_create_hcd +EXPORT_SYMBOL_GPL vmlinux 0x65e84130 mmc_regulator_set_ocr +EXPORT_SYMBOL_GPL vmlinux 0x6600192b crypto_register_rng +EXPORT_SYMBOL_GPL vmlinux 0x661601de sprint_symbol +EXPORT_SYMBOL_GPL vmlinux 0x66287b85 pci_user_read_config_byte +EXPORT_SYMBOL_GPL vmlinux 0x6628a600 percpu_free_rwsem +EXPORT_SYMBOL_GPL vmlinux 0x66306c40 regmap_get_raw_read_max +EXPORT_SYMBOL_GPL vmlinux 0x6636c3c9 irq_set_vcpu_affinity +EXPORT_SYMBOL_GPL vmlinux 0x663bb448 devlink_fmsg_obj_nest_end +EXPORT_SYMBOL_GPL vmlinux 0x663ddcdd device_get_match_data +EXPORT_SYMBOL_GPL vmlinux 0x6646664d snd_soc_dapm_put_enum_double +EXPORT_SYMBOL_GPL vmlinux 0x6646e788 sk_msg_alloc +EXPORT_SYMBOL_GPL vmlinux 0x664c155a kgdb_unregister_io_module +EXPORT_SYMBOL_GPL vmlinux 0x664d0962 i2c_of_match_device +EXPORT_SYMBOL_GPL vmlinux 0x665e92a0 clk_set_duty_cycle +EXPORT_SYMBOL_GPL vmlinux 0x667a2803 phy_remove_lookup +EXPORT_SYMBOL_GPL vmlinux 0x667e9e57 pci_disable_pcie_error_reporting +EXPORT_SYMBOL_GPL vmlinux 0x6682eb65 crypto_req_done +EXPORT_SYMBOL_GPL vmlinux 0x6683adf4 ata_sas_slave_configure +EXPORT_SYMBOL_GPL vmlinux 0x668402aa crypto_put_default_rng +EXPORT_SYMBOL_GPL vmlinux 0x66865a72 rdev_get_drvdata +EXPORT_SYMBOL_GPL vmlinux 0x66944755 bpf_map_inc_with_uref +EXPORT_SYMBOL_GPL vmlinux 0x669594ad musb_clearw +EXPORT_SYMBOL_GPL vmlinux 0x669de806 gpiod_get_direction +EXPORT_SYMBOL_GPL vmlinux 0x66a11eb9 tty_wakeup +EXPORT_SYMBOL_GPL vmlinux 0x66b26b2b clk_hw_unregister_divider +EXPORT_SYMBOL_GPL vmlinux 0x66b39cc8 pci_vfs_assigned +EXPORT_SYMBOL_GPL vmlinux 0x66b97421 sfp_link_up +EXPORT_SYMBOL_GPL vmlinux 0x66ca7923 mtd_block_isreserved +EXPORT_SYMBOL_GPL vmlinux 0x66d87d38 symbol_put_addr +EXPORT_SYMBOL_GPL vmlinux 0x66f5fe89 tcp_orphan_count +EXPORT_SYMBOL_GPL vmlinux 0x66f60e22 stmpe_reg_read +EXPORT_SYMBOL_GPL vmlinux 0x66fc2bc0 badrange_add +EXPORT_SYMBOL_GPL vmlinux 0x670b9dbb dev_pm_qos_flags +EXPORT_SYMBOL_GPL vmlinux 0x6724ea55 crypto_cipher_encrypt_one +EXPORT_SYMBOL_GPL vmlinux 0x67262d1b device_get_named_child_node +EXPORT_SYMBOL_GPL vmlinux 0x6734e5b7 pci_disable_pasid +EXPORT_SYMBOL_GPL vmlinux 0x6735d56e tcp_ca_get_name_by_key +EXPORT_SYMBOL_GPL vmlinux 0x673698a6 devm_watchdog_register_device +EXPORT_SYMBOL_GPL vmlinux 0x673cac08 usb_enable_intel_xhci_ports +EXPORT_SYMBOL_GPL vmlinux 0x6751eb93 ahci_reset_controller +EXPORT_SYMBOL_GPL vmlinux 0x67569cdf usb_gadget_clear_selfpowered +EXPORT_SYMBOL_GPL vmlinux 0x6758f509 cgroup_path_ns +EXPORT_SYMBOL_GPL vmlinux 0x675d2182 sched_trace_cfs_rq_path +EXPORT_SYMBOL_GPL vmlinux 0x677b4967 blkdev_nr_zones +EXPORT_SYMBOL_GPL vmlinux 0x6781513c __wake_up_locked_key +EXPORT_SYMBOL_GPL vmlinux 0x678280b2 inet_twsk_alloc +EXPORT_SYMBOL_GPL vmlinux 0x678ee4b4 pci_generic_ecam_ops +EXPORT_SYMBOL_GPL vmlinux 0x67955ce6 profile_hits +EXPORT_SYMBOL_GPL vmlinux 0x67ac4d59 device_store_ulong +EXPORT_SYMBOL_GPL vmlinux 0x67ae7f1b pci_walk_bus +EXPORT_SYMBOL_GPL vmlinux 0x67c6b856 platform_find_device_by_driver +EXPORT_SYMBOL_GPL vmlinux 0x67da9f7c sha512_zero_message_hash +EXPORT_SYMBOL_GPL vmlinux 0x67e0fbd5 spi_finalize_current_message +EXPORT_SYMBOL_GPL vmlinux 0x67e4473e pci_iomap_wc +EXPORT_SYMBOL_GPL vmlinux 0x67f178a0 device_match_of_node +EXPORT_SYMBOL_GPL vmlinux 0x6813114a devm_regulator_get +EXPORT_SYMBOL_GPL vmlinux 0x68145277 fscrypt_fname_siphash +EXPORT_SYMBOL_GPL vmlinux 0x6828b9fa kthread_mod_delayed_work +EXPORT_SYMBOL_GPL vmlinux 0x682ea49e sock_diag_put_meminfo +EXPORT_SYMBOL_GPL vmlinux 0x682ff057 ring_buffer_commit_overrun_cpu +EXPORT_SYMBOL_GPL vmlinux 0x6831cf18 ata_link_offline +EXPORT_SYMBOL_GPL vmlinux 0x68334a69 ahci_start_fis_rx +EXPORT_SYMBOL_GPL vmlinux 0x683a9c0c xhci_mtk_drop_ep_quirk +EXPORT_SYMBOL_GPL vmlinux 0x6852e774 rio_dev_get +EXPORT_SYMBOL_GPL vmlinux 0x68646f6a device_show_int +EXPORT_SYMBOL_GPL vmlinux 0x68758fda nvmem_cell_write +EXPORT_SYMBOL_GPL vmlinux 0x6893f4e2 sdio_set_block_size +EXPORT_SYMBOL_GPL vmlinux 0x6894835c __tracepoint_pelt_rt_tp +EXPORT_SYMBOL_GPL vmlinux 0x68952493 rcu_note_context_switch +EXPORT_SYMBOL_GPL vmlinux 0x68968617 hvc_poll +EXPORT_SYMBOL_GPL vmlinux 0x68cf9341 i2c_dw_validate_speed +EXPORT_SYMBOL_GPL vmlinux 0x68db3671 pinctrl_unregister +EXPORT_SYMBOL_GPL vmlinux 0x68e09c9c mtk_smi_larb_put +EXPORT_SYMBOL_GPL vmlinux 0x68e1d25f bpf_trace_run10 +EXPORT_SYMBOL_GPL vmlinux 0x68f37e9f __tracepoint_neigh_update +EXPORT_SYMBOL_GPL vmlinux 0x68ff3429 pm_generic_suspend_late +EXPORT_SYMBOL_GPL vmlinux 0x690f585e phy_basic_ports_array +EXPORT_SYMBOL_GPL vmlinux 0x6913865a trace_clock_jiffies +EXPORT_SYMBOL_GPL vmlinux 0x69146ff8 arizona_free_irq +EXPORT_SYMBOL_GPL vmlinux 0x6916c7e0 rio_mport_get_physefb +EXPORT_SYMBOL_GPL vmlinux 0x691c85b6 rhashtable_walk_peek +EXPORT_SYMBOL_GPL vmlinux 0x692098e2 list_lru_del +EXPORT_SYMBOL_GPL vmlinux 0x6929039d fscrypt_file_open +EXPORT_SYMBOL_GPL vmlinux 0x6929f38e gpiochip_get_data +EXPORT_SYMBOL_GPL vmlinux 0x692a4f08 idr_alloc +EXPORT_SYMBOL_GPL vmlinux 0x692dcdb1 spi_unregister_controller +EXPORT_SYMBOL_GPL vmlinux 0x69356a0f devlink_dpipe_entry_ctx_append +EXPORT_SYMBOL_GPL vmlinux 0x6937ef61 query_asymmetric_key +EXPORT_SYMBOL_GPL vmlinux 0x693a1115 ata_dev_set_feature +EXPORT_SYMBOL_GPL vmlinux 0x693b160a pci_probe_reset_bus +EXPORT_SYMBOL_GPL vmlinux 0x6944a917 serdev_device_set_tiocm +EXPORT_SYMBOL_GPL vmlinux 0x6944d5c9 ping_seq_start +EXPORT_SYMBOL_GPL vmlinux 0x6945725e mpi_read_raw_data +EXPORT_SYMBOL_GPL vmlinux 0x6945ae89 sysfs_create_group +EXPORT_SYMBOL_GPL vmlinux 0x69484689 of_clk_hw_register +EXPORT_SYMBOL_GPL vmlinux 0x6955d023 component_master_del +EXPORT_SYMBOL_GPL vmlinux 0x6958ae23 dax_get_by_host +EXPORT_SYMBOL_GPL vmlinux 0x695b5e8a crypto_inst_setname +EXPORT_SYMBOL_GPL vmlinux 0x696f2b63 of_changeset_init +EXPORT_SYMBOL_GPL vmlinux 0x697c5d0d tracing_snapshot_alloc +EXPORT_SYMBOL_GPL vmlinux 0x69821ad0 posix_clock_unregister +EXPORT_SYMBOL_GPL vmlinux 0x698dcabc usb_block_urb +EXPORT_SYMBOL_GPL vmlinux 0x69a1619e nf_checksum +EXPORT_SYMBOL_GPL vmlinux 0x69b7559c mtd_get_unmapped_area +EXPORT_SYMBOL_GPL vmlinux 0x69c33018 dma_buf_map_attachment +EXPORT_SYMBOL_GPL vmlinux 0x69c87a51 sysfs_notify +EXPORT_SYMBOL_GPL vmlinux 0x69cefc4e power_supply_get_by_name +EXPORT_SYMBOL_GPL vmlinux 0x69e683de uuid_gen +EXPORT_SYMBOL_GPL vmlinux 0x69ee2220 linear_range_get_selector_high +EXPORT_SYMBOL_GPL vmlinux 0x69fc1e0b show_class_attr_string +EXPORT_SYMBOL_GPL vmlinux 0x6a036362 iomap_bmap +EXPORT_SYMBOL_GPL vmlinux 0x6a05b65b fb_videomode_from_videomode +EXPORT_SYMBOL_GPL vmlinux 0x6a1733eb iommu_group_unregister_notifier +EXPORT_SYMBOL_GPL vmlinux 0x6a189753 phy_modify_changed +EXPORT_SYMBOL_GPL vmlinux 0x6a241212 unregister_kretprobes +EXPORT_SYMBOL_GPL vmlinux 0x6a27dfac devlink_port_param_driverinit_value_set +EXPORT_SYMBOL_GPL vmlinux 0x6a460dc5 schedule_hrtimeout +EXPORT_SYMBOL_GPL vmlinux 0x6a465f14 component_add_typed +EXPORT_SYMBOL_GPL vmlinux 0x6a4b8caa crypto_unregister_instance +EXPORT_SYMBOL_GPL vmlinux 0x6a4f623b mmu_notifier_synchronize +EXPORT_SYMBOL_GPL vmlinux 0x6a5d3ad9 irq_domain_add_legacy +EXPORT_SYMBOL_GPL vmlinux 0x6a5e2bde __cookie_v6_init_sequence +EXPORT_SYMBOL_GPL vmlinux 0x6a61e527 invalidate_inode_pages2 +EXPORT_SYMBOL_GPL vmlinux 0x6a65d95f crypto_stats_skcipher_decrypt +EXPORT_SYMBOL_GPL vmlinux 0x6a684711 devm_regulator_bulk_unregister_supply_alias +EXPORT_SYMBOL_GPL vmlinux 0x6a7c6bc0 nvdimm_bus_register +EXPORT_SYMBOL_GPL vmlinux 0x6a8c8099 kernfs_notify +EXPORT_SYMBOL_GPL vmlinux 0x6a91041a efivar_entry_find +EXPORT_SYMBOL_GPL vmlinux 0x6aa5e412 gen_pool_avail +EXPORT_SYMBOL_GPL vmlinux 0x6ab1c8bb xas_store +EXPORT_SYMBOL_GPL vmlinux 0x6abc6cf5 snd_dmaengine_pcm_pointer +EXPORT_SYMBOL_GPL vmlinux 0x6ac3ac3d pci_epf_unbind +EXPORT_SYMBOL_GPL vmlinux 0x6ad248f9 subsys_dev_iter_next +EXPORT_SYMBOL_GPL vmlinux 0x6adc6441 raw_unhash_sk +EXPORT_SYMBOL_GPL vmlinux 0x6ae641b6 alarm_expires_remaining +EXPORT_SYMBOL_GPL vmlinux 0x6ae6fdee power_supply_put_battery_info +EXPORT_SYMBOL_GPL vmlinux 0x6aebbc78 iommu_device_sysfs_remove +EXPORT_SYMBOL_GPL vmlinux 0x6af8c6dc musb_writel +EXPORT_SYMBOL_GPL vmlinux 0x6afccb9c pci_epc_stop +EXPORT_SYMBOL_GPL vmlinux 0x6b038e2b snd_soc_dapm_sync +EXPORT_SYMBOL_GPL vmlinux 0x6b139a8f pskb_put +EXPORT_SYMBOL_GPL vmlinux 0x6b22926b irq_work_sync +EXPORT_SYMBOL_GPL vmlinux 0x6b261055 bpf_trace_run11 +EXPORT_SYMBOL_GPL vmlinux 0x6b334acc trace_seq_bitmask +EXPORT_SYMBOL_GPL vmlinux 0x6b413c9b sfp_link_down +EXPORT_SYMBOL_GPL vmlinux 0x6b6ca8f0 __pm_stay_awake +EXPORT_SYMBOL_GPL vmlinux 0x6b72e663 rhashtable_walk_stop +EXPORT_SYMBOL_GPL vmlinux 0x6b81c38b power_supply_unreg_notifier +EXPORT_SYMBOL_GPL vmlinux 0x6b82aec4 tracing_cond_snapshot_data +EXPORT_SYMBOL_GPL vmlinux 0x6b848d7c gpiod_is_active_low +EXPORT_SYMBOL_GPL vmlinux 0x6b8c62b8 l3mdev_fib_table_rcu +EXPORT_SYMBOL_GPL vmlinux 0x6b99aa96 __inet_inherit_port +EXPORT_SYMBOL_GPL vmlinux 0x6b9cb228 regmap_mmio_attach_clk +EXPORT_SYMBOL_GPL vmlinux 0x6ba8d9e4 snd_soc_dapm_ignore_suspend +EXPORT_SYMBOL_GPL vmlinux 0x6baecd44 iommu_fwspec_init +EXPORT_SYMBOL_GPL vmlinux 0x6bba83ac snd_soc_add_card_controls +EXPORT_SYMBOL_GPL vmlinux 0x6bce93d8 list_lru_walk_node +EXPORT_SYMBOL_GPL vmlinux 0x6bd1aa56 stack_trace_save +EXPORT_SYMBOL_GPL vmlinux 0x6bdaa56b device_dma_supported +EXPORT_SYMBOL_GPL vmlinux 0x6bdc7844 mmu_notifier_range_update_to_read_only +EXPORT_SYMBOL_GPL vmlinux 0x6c0573f5 mtd_read +EXPORT_SYMBOL_GPL vmlinux 0x6c14a9ea devlink_params_unregister +EXPORT_SYMBOL_GPL vmlinux 0x6c1dc8fb rtc_alarm_irq_enable +EXPORT_SYMBOL_GPL vmlinux 0x6c3f70e0 guid_gen +EXPORT_SYMBOL_GPL vmlinux 0x6c43b737 ata_sff_queue_delayed_work +EXPORT_SYMBOL_GPL vmlinux 0x6c4643a5 is_skb_forwardable +EXPORT_SYMBOL_GPL vmlinux 0x6c4b6684 reset_control_assert +EXPORT_SYMBOL_GPL vmlinux 0x6c7b76ff clk_register_fractional_divider +EXPORT_SYMBOL_GPL vmlinux 0x6c8c2f54 loop_backing_file +EXPORT_SYMBOL_GPL vmlinux 0x6c8c507f bpf_trace_run8 +EXPORT_SYMBOL_GPL vmlinux 0x6c8e070a clone_private_mount +EXPORT_SYMBOL_GPL vmlinux 0x6c91a079 locks_release_private +EXPORT_SYMBOL_GPL vmlinux 0x6c9efbfb regulator_unregister_supply_alias +EXPORT_SYMBOL_GPL vmlinux 0x6ca4bf88 async_synchronize_full_domain +EXPORT_SYMBOL_GPL vmlinux 0x6cc7a762 ata_host_put +EXPORT_SYMBOL_GPL vmlinux 0x6ceb2622 sched_trace_rq_avg_dl +EXPORT_SYMBOL_GPL vmlinux 0x6cf19c91 devm_regulator_unregister +EXPORT_SYMBOL_GPL vmlinux 0x6cfc5a02 nand_change_read_column_op +EXPORT_SYMBOL_GPL vmlinux 0x6d0ae550 pinctrl_gpio_request +EXPORT_SYMBOL_GPL vmlinux 0x6d0b8c5e percpu_ref_switch_to_atomic_sync +EXPORT_SYMBOL_GPL vmlinux 0x6d0ba1ef blk_execute_rq_nowait +EXPORT_SYMBOL_GPL vmlinux 0x6d20d150 virtqueue_kick_prepare +EXPORT_SYMBOL_GPL vmlinux 0x6d229544 iommu_page_response +EXPORT_SYMBOL_GPL vmlinux 0x6d2fc5a6 net_namespace_list +EXPORT_SYMBOL_GPL vmlinux 0x6d30ec45 bio_alloc_mddev +EXPORT_SYMBOL_GPL vmlinux 0x6d57cdee fsstack_copy_inode_size +EXPORT_SYMBOL_GPL vmlinux 0x6d5ac91b ata_pci_device_suspend +EXPORT_SYMBOL_GPL vmlinux 0x6d6fec1f ktime_mono_to_any +EXPORT_SYMBOL_GPL vmlinux 0x6d752fe8 get_device_system_crosststamp +EXPORT_SYMBOL_GPL vmlinux 0x6d7e951e rcu_exp_batches_completed +EXPORT_SYMBOL_GPL vmlinux 0x6d9ee2a0 __request_percpu_irq +EXPORT_SYMBOL_GPL vmlinux 0x6da3a3b8 crypto_aead_decrypt +EXPORT_SYMBOL_GPL vmlinux 0x6dba21fb gen_pool_get +EXPORT_SYMBOL_GPL vmlinux 0x6dbaafd3 put_old_timespec32 +EXPORT_SYMBOL_GPL vmlinux 0x6dbc489c devm_of_icc_get +EXPORT_SYMBOL_GPL vmlinux 0x6dbd33d3 dma_request_slave_channel +EXPORT_SYMBOL_GPL vmlinux 0x6ddd2c8e handle_fasteoi_nmi +EXPORT_SYMBOL_GPL vmlinux 0x6de3718e do_truncate +EXPORT_SYMBOL_GPL vmlinux 0x6dfabed1 sbitmap_add_wait_queue +EXPORT_SYMBOL_GPL vmlinux 0x6e065751 gpiod_get_array_optional +EXPORT_SYMBOL_GPL vmlinux 0x6e0902f0 devm_remove_action +EXPORT_SYMBOL_GPL vmlinux 0x6e1344c3 regmap_raw_write +EXPORT_SYMBOL_GPL vmlinux 0x6e16271a i2c_dw_prepare_clk +EXPORT_SYMBOL_GPL vmlinux 0x6e36fa41 led_classdev_unregister +EXPORT_SYMBOL_GPL vmlinux 0x6e3cf67b fuse_fill_super_common +EXPORT_SYMBOL_GPL vmlinux 0x6e3ff83a edac_device_alloc_index +EXPORT_SYMBOL_GPL vmlinux 0x6e402837 edac_device_handle_ce_count +EXPORT_SYMBOL_GPL vmlinux 0x6e4bc056 spi_res_free +EXPORT_SYMBOL_GPL vmlinux 0x6e54e428 __ip6_local_out +EXPORT_SYMBOL_GPL vmlinux 0x6e5689b6 mpc8xxx_spi_probe +EXPORT_SYMBOL_GPL vmlinux 0x6e727a40 devm_phy_destroy +EXPORT_SYMBOL_GPL vmlinux 0x6e7943ec iommu_group_id +EXPORT_SYMBOL_GPL vmlinux 0x6e89a560 regmap_irq_chip_get_base +EXPORT_SYMBOL_GPL vmlinux 0x6e8d3d48 ip6_flush_pending_frames +EXPORT_SYMBOL_GPL vmlinux 0x6e9598dc dev_pm_opp_of_remove_table +EXPORT_SYMBOL_GPL vmlinux 0x6eb4abbf snd_soc_info_volsw +EXPORT_SYMBOL_GPL vmlinux 0x6eb97d48 __raw_v6_lookup +EXPORT_SYMBOL_GPL vmlinux 0x6ebc3a16 evm_verifyxattr +EXPORT_SYMBOL_GPL vmlinux 0x6ebe366f ktime_get_mono_fast_ns +EXPORT_SYMBOL_GPL vmlinux 0x6ed1fc33 dmi_kobj +EXPORT_SYMBOL_GPL vmlinux 0x6ed32a6a __nvdimm_create +EXPORT_SYMBOL_GPL vmlinux 0x6edab4ee perf_aux_output_end +EXPORT_SYMBOL_GPL vmlinux 0x6ee83cb7 sata_link_resume +EXPORT_SYMBOL_GPL vmlinux 0x6ee89866 device_match_name +EXPORT_SYMBOL_GPL vmlinux 0x6ee8c94b sfp_get_module_eeprom +EXPORT_SYMBOL_GPL vmlinux 0x6ef6b54f ktime_get_boot_fast_ns +EXPORT_SYMBOL_GPL vmlinux 0x6f082e3a snd_soc_dapm_get_pin_status +EXPORT_SYMBOL_GPL vmlinux 0x6f12560a get_old_timespec32 +EXPORT_SYMBOL_GPL vmlinux 0x6f18b1aa phy_modify_mmd_changed +EXPORT_SYMBOL_GPL vmlinux 0x6f19e354 nd_blk_region_set_provider_data +EXPORT_SYMBOL_GPL vmlinux 0x6f375fa0 rio_release_outb_mbox +EXPORT_SYMBOL_GPL vmlinux 0x6f3cce78 of_mm_gpiochip_add_data +EXPORT_SYMBOL_GPL vmlinux 0x6f477e0c skb_append_pagefrags +EXPORT_SYMBOL_GPL vmlinux 0x6f4c5e6c snd_pcm_stream_unlock_irqrestore +EXPORT_SYMBOL_GPL vmlinux 0x6f61b69f sdhci_pltfm_register +EXPORT_SYMBOL_GPL vmlinux 0x6f6e49be irq_generic_chip_ops +EXPORT_SYMBOL_GPL vmlinux 0x6f790aab input_ff_flush +EXPORT_SYMBOL_GPL vmlinux 0x6f7a418f pci_disable_rom +EXPORT_SYMBOL_GPL vmlinux 0x6f83dc2b dma_get_any_slave_channel +EXPORT_SYMBOL_GPL vmlinux 0x6f9a8aab fsnotify_get_group +EXPORT_SYMBOL_GPL vmlinux 0x6f9e763b timecounter_read +EXPORT_SYMBOL_GPL vmlinux 0x6f9f916d sysfs_remove_file_from_group +EXPORT_SYMBOL_GPL vmlinux 0x6fa0fe86 snd_pcm_stream_lock +EXPORT_SYMBOL_GPL vmlinux 0x6fa388db scsi_check_sense +EXPORT_SYMBOL_GPL vmlinux 0x6fb03e5d rio_inb_pwrite_handler +EXPORT_SYMBOL_GPL vmlinux 0x6fb7e313 asic3_write_register +EXPORT_SYMBOL_GPL vmlinux 0x6fbe2a11 spi_sync_locked +EXPORT_SYMBOL_GPL vmlinux 0x6fc7ea87 irq_domain_xlate_twocell +EXPORT_SYMBOL_GPL vmlinux 0x6fc98af8 skb_tstamp_tx +EXPORT_SYMBOL_GPL vmlinux 0x6fcef6ab ring_buffer_reset +EXPORT_SYMBOL_GPL vmlinux 0x6fd0286f devm_regmap_add_irq_chip +EXPORT_SYMBOL_GPL vmlinux 0x6fdd9019 sysfs_remove_file_ns +EXPORT_SYMBOL_GPL vmlinux 0x6fdfb164 dm_path_uevent +EXPORT_SYMBOL_GPL vmlinux 0x6fe416b2 dev_pm_opp_put_prop_name +EXPORT_SYMBOL_GPL vmlinux 0x6fe82304 subsys_system_register +EXPORT_SYMBOL_GPL vmlinux 0x6fe9d8ce __pm_runtime_resume +EXPORT_SYMBOL_GPL vmlinux 0x6ff607b6 crypto_get_default_rng +EXPORT_SYMBOL_GPL vmlinux 0x6ffc3ed3 snd_soc_dapm_disable_pin +EXPORT_SYMBOL_GPL vmlinux 0x7002f6da devlink_dpipe_headers_unregister +EXPORT_SYMBOL_GPL vmlinux 0x7006586e iommu_get_group_resv_regions +EXPORT_SYMBOL_GPL vmlinux 0x70121e93 of_usb_host_tpl_support +EXPORT_SYMBOL_GPL vmlinux 0x701a0dc4 power_supply_changed +EXPORT_SYMBOL_GPL vmlinux 0x70205f9c i2c_handle_smbus_host_notify +EXPORT_SYMBOL_GPL vmlinux 0x7028fc6f nand_ooblayout_lp_ops +EXPORT_SYMBOL_GPL vmlinux 0x7035f895 handle_simple_irq +EXPORT_SYMBOL_GPL vmlinux 0x703afad9 irq_set_chained_handler_and_data +EXPORT_SYMBOL_GPL vmlinux 0x7042a404 gpiochip_line_is_irq +EXPORT_SYMBOL_GPL vmlinux 0x704c050d sock_zerocopy_realloc +EXPORT_SYMBOL_GPL vmlinux 0x704cd45a phy_calibrate +EXPORT_SYMBOL_GPL vmlinux 0x704de5bf kthread_cancel_delayed_work_sync +EXPORT_SYMBOL_GPL vmlinux 0x70518856 pci_find_next_ext_capability +EXPORT_SYMBOL_GPL vmlinux 0x70675070 mtd_get_device_size +EXPORT_SYMBOL_GPL vmlinux 0x7068f0ea debugfs_create_blob +EXPORT_SYMBOL_GPL vmlinux 0x7073c04f phy_10_100_features_array +EXPORT_SYMBOL_GPL vmlinux 0x7081b2cd rtc_read_time +EXPORT_SYMBOL_GPL vmlinux 0x70906b0f snd_soc_get_dai_name +EXPORT_SYMBOL_GPL vmlinux 0x70b86703 ipv6_stub +EXPORT_SYMBOL_GPL vmlinux 0x70c52dc5 nf_skb_duplicated +EXPORT_SYMBOL_GPL vmlinux 0x70c6d827 mc146818_set_time +EXPORT_SYMBOL_GPL vmlinux 0x70cd00f2 da9052_free_irq +EXPORT_SYMBOL_GPL vmlinux 0x70cf032f usb_hcd_irq +EXPORT_SYMBOL_GPL vmlinux 0x70ffc567 device_pm_wait_for_dev +EXPORT_SYMBOL_GPL vmlinux 0x710c4353 lwtunnel_cmp_encap +EXPORT_SYMBOL_GPL vmlinux 0x710c73b6 crypto_unregister_notifier +EXPORT_SYMBOL_GPL vmlinux 0x7112f25b crypto_register_instance +EXPORT_SYMBOL_GPL vmlinux 0x71202923 device_property_match_string +EXPORT_SYMBOL_GPL vmlinux 0x7127a03c amba_device_add +EXPORT_SYMBOL_GPL vmlinux 0x7128a42c da903x_update +EXPORT_SYMBOL_GPL vmlinux 0x712c6d4a pm_generic_suspend_noirq +EXPORT_SYMBOL_GPL vmlinux 0x712d3fda regulator_set_voltage_sel_pickable_regmap +EXPORT_SYMBOL_GPL vmlinux 0x71322931 nvdimm_in_overwrite +EXPORT_SYMBOL_GPL vmlinux 0x71324fee wait_on_page_writeback +EXPORT_SYMBOL_GPL vmlinux 0x71369fcd crypto_ahash_final +EXPORT_SYMBOL_GPL vmlinux 0x7140971f thermal_zone_bind_cooling_device +EXPORT_SYMBOL_GPL vmlinux 0x7144c9bb __blkg_prfill_u64 +EXPORT_SYMBOL_GPL vmlinux 0x71528c21 pid_vnr +EXPORT_SYMBOL_GPL vmlinux 0x7157c07b snd_ctl_sync_vmaster +EXPORT_SYMBOL_GPL vmlinux 0x716265c7 debugfs_initialized +EXPORT_SYMBOL_GPL vmlinux 0x71643237 sdio_writeb +EXPORT_SYMBOL_GPL vmlinux 0x71650819 add_bootloader_randomness +EXPORT_SYMBOL_GPL vmlinux 0x71720c2e mtd_ooblayout_count_eccbytes +EXPORT_SYMBOL_GPL vmlinux 0x7174a6ec irq_domain_xlate_onetwocell +EXPORT_SYMBOL_GPL vmlinux 0x71771d19 snd_soc_card_remove_dai_link +EXPORT_SYMBOL_GPL vmlinux 0x717edca1 iommu_device_unregister +EXPORT_SYMBOL_GPL vmlinux 0x71851d95 pm_schedule_suspend +EXPORT_SYMBOL_GPL vmlinux 0x718fdb59 blk_mq_free_request +EXPORT_SYMBOL_GPL vmlinux 0x719a5e41 musb_readw +EXPORT_SYMBOL_GPL vmlinux 0x719adbe4 sdhci_runtime_suspend_host +EXPORT_SYMBOL_GPL vmlinux 0x719e17ff clk_notifier_unregister +EXPORT_SYMBOL_GPL vmlinux 0x71afb9ed devfreq_cooling_unregister +EXPORT_SYMBOL_GPL vmlinux 0x71bdffd8 devfreq_event_remove_edev +EXPORT_SYMBOL_GPL vmlinux 0x71c03b86 br_ip6_fragment +EXPORT_SYMBOL_GPL vmlinux 0x71cb2661 rio_alloc_net +EXPORT_SYMBOL_GPL vmlinux 0x71ced96d platform_msi_domain_free_irqs +EXPORT_SYMBOL_GPL vmlinux 0x71d89c5d phy_start_machine +EXPORT_SYMBOL_GPL vmlinux 0x71da973e fixed_phy_set_link_update +EXPORT_SYMBOL_GPL vmlinux 0x71dc3235 do_splice_to +EXPORT_SYMBOL_GPL vmlinux 0x71f6670b __cookie_v6_check +EXPORT_SYMBOL_GPL vmlinux 0x71fa4d75 sdhci_remove_host +EXPORT_SYMBOL_GPL vmlinux 0x71fbe400 sdio_retune_hold_now +EXPORT_SYMBOL_GPL vmlinux 0x7217bc06 phy_led_triggers_unregister +EXPORT_SYMBOL_GPL vmlinux 0x72243248 devm_snd_soc_register_dai +EXPORT_SYMBOL_GPL vmlinux 0x72375a5f ahash_register_instance +EXPORT_SYMBOL_GPL vmlinux 0x72417e36 stmpe_block_read +EXPORT_SYMBOL_GPL vmlinux 0x724a01f8 dw_pcie_msi_init +EXPORT_SYMBOL_GPL vmlinux 0x724b78f0 pci_epc_set_msi +EXPORT_SYMBOL_GPL vmlinux 0x725537c3 dev_pm_opp_put_regulators +EXPORT_SYMBOL_GPL vmlinux 0x72594cf4 class_find_device +EXPORT_SYMBOL_GPL vmlinux 0x726042f5 usb_alloc_coherent +EXPORT_SYMBOL_GPL vmlinux 0x72619f75 devlink_port_register +EXPORT_SYMBOL_GPL vmlinux 0x726420ce tpm_chip_alloc +EXPORT_SYMBOL_GPL vmlinux 0x7270a5a5 of_usb_update_otg_caps +EXPORT_SYMBOL_GPL vmlinux 0x72754a20 __kthread_should_park +EXPORT_SYMBOL_GPL vmlinux 0x7278d328 all_vm_events +EXPORT_SYMBOL_GPL vmlinux 0x72aee1ad sbitmap_get +EXPORT_SYMBOL_GPL vmlinux 0x72b299e1 efi_capsule_supported +EXPORT_SYMBOL_GPL vmlinux 0x72b3947a tty_kopen +EXPORT_SYMBOL_GPL vmlinux 0x72be4ad0 __rtnl_link_unregister +EXPORT_SYMBOL_GPL vmlinux 0x72cfa0cd raw_seq_start +EXPORT_SYMBOL_GPL vmlinux 0x72de9fe6 iommu_sva_get_pasid +EXPORT_SYMBOL_GPL vmlinux 0x72f686c9 pwm_put +EXPORT_SYMBOL_GPL vmlinux 0x7313b4ac spi_delay_to_ns +EXPORT_SYMBOL_GPL vmlinux 0x731ad624 ata_bmdma_status +EXPORT_SYMBOL_GPL vmlinux 0x731e6654 serdev_device_get_tiocm +EXPORT_SYMBOL_GPL vmlinux 0x7327596d xdp_do_redirect +EXPORT_SYMBOL_GPL vmlinux 0x734db772 devm_gpio_free +EXPORT_SYMBOL_GPL vmlinux 0x734e48fc tc3589x_block_read +EXPORT_SYMBOL_GPL vmlinux 0x735c9d37 fuse_dev_release +EXPORT_SYMBOL_GPL vmlinux 0x73684978 dax_supported +EXPORT_SYMBOL_GPL vmlinux 0x73735bf5 sdhci_pltfm_pmops +EXPORT_SYMBOL_GPL vmlinux 0x73a2226e pci_cfg_access_lock +EXPORT_SYMBOL_GPL vmlinux 0x73a2aeed usb_gadget_map_request +EXPORT_SYMBOL_GPL vmlinux 0x73a39a82 mtk_pinconf_bias_get_combo +EXPORT_SYMBOL_GPL vmlinux 0x73a48b4a ata_sff_std_ports +EXPORT_SYMBOL_GPL vmlinux 0x73aa8a9f snd_soc_component_update_bits_async +EXPORT_SYMBOL_GPL vmlinux 0x73b98231 asymmetric_key_generate_id +EXPORT_SYMBOL_GPL vmlinux 0x73b9f7ce skb_segment_list +EXPORT_SYMBOL_GPL vmlinux 0x73cc8631 oiap +EXPORT_SYMBOL_GPL vmlinux 0x73dcc445 __percpu_down_read +EXPORT_SYMBOL_GPL vmlinux 0x73dcf4d4 snd_device_disconnect +EXPORT_SYMBOL_GPL vmlinux 0x73e21153 genphy_c45_an_disable_aneg +EXPORT_SYMBOL_GPL vmlinux 0x73f5f8e1 pm_runtime_set_autosuspend_delay +EXPORT_SYMBOL_GPL vmlinux 0x73f6eb26 usb_unlink_urb +EXPORT_SYMBOL_GPL vmlinux 0x741c318e phy_resolve_aneg_linkmode +EXPORT_SYMBOL_GPL vmlinux 0x7429a8d7 set_capacity_revalidate_and_notify +EXPORT_SYMBOL_GPL vmlinux 0x742f4e01 serial8250_rx_dma_flush +EXPORT_SYMBOL_GPL vmlinux 0x743a165e ata_pack_xfermask +EXPORT_SYMBOL_GPL vmlinux 0x7441ca76 ata_sff_prereset +EXPORT_SYMBOL_GPL vmlinux 0x746afb2e security_inode_mkdir +EXPORT_SYMBOL_GPL vmlinux 0x748da030 tty_port_tty_wakeup +EXPORT_SYMBOL_GPL vmlinux 0x7494cee2 cs47l24_patch +EXPORT_SYMBOL_GPL vmlinux 0x7499320c regulator_disable_deferred +EXPORT_SYMBOL_GPL vmlinux 0x74b5ea68 lcm_not_zero +EXPORT_SYMBOL_GPL vmlinux 0x74baf17a tracing_is_on +EXPORT_SYMBOL_GPL vmlinux 0x74bb08ac ata_eh_analyze_ncq_error +EXPORT_SYMBOL_GPL vmlinux 0x74d08fdd i2c_dw_adjust_bus_speed +EXPORT_SYMBOL_GPL vmlinux 0x74f54ebb virtqueue_detach_unused_buf +EXPORT_SYMBOL_GPL vmlinux 0x7501df4e xhci_suspend +EXPORT_SYMBOL_GPL vmlinux 0x75023339 pin_user_pages_fast_only +EXPORT_SYMBOL_GPL vmlinux 0x750afdc4 debugfs_create_size_t +EXPORT_SYMBOL_GPL vmlinux 0x7513b5ec __iowrite32_copy +EXPORT_SYMBOL_GPL vmlinux 0x7522f3ba irq_modify_status +EXPORT_SYMBOL_GPL vmlinux 0x7536f76f __clk_hw_register_divider +EXPORT_SYMBOL_GPL vmlinux 0x755ae3c8 trusted_tpm_send +EXPORT_SYMBOL_GPL vmlinux 0x75618d42 __clk_hw_register_gate +EXPORT_SYMBOL_GPL vmlinux 0x75673d30 phy_pm_runtime_forbid +EXPORT_SYMBOL_GPL vmlinux 0x75736dfd tps6586x_read +EXPORT_SYMBOL_GPL vmlinux 0x75747b7c sata_scr_write_flush +EXPORT_SYMBOL_GPL vmlinux 0x758a871c ip6_route_lookup +EXPORT_SYMBOL_GPL vmlinux 0x758b3d23 pci_user_read_config_dword +EXPORT_SYMBOL_GPL vmlinux 0x759139cb of_pci_check_probe_only +EXPORT_SYMBOL_GPL vmlinux 0x759abf30 __vfs_removexattr_locked +EXPORT_SYMBOL_GPL vmlinux 0x759ebd55 crypto_stats_rng_generate +EXPORT_SYMBOL_GPL vmlinux 0x759f2a95 gpiod_export_link +EXPORT_SYMBOL_GPL vmlinux 0x75b5725c regulator_set_drvdata +EXPORT_SYMBOL_GPL vmlinux 0x75bf6cc0 is_binary_blacklisted +EXPORT_SYMBOL_GPL vmlinux 0x75cbfb09 add_interrupt_randomness +EXPORT_SYMBOL_GPL vmlinux 0x75dd4ebe of_overlay_remove +EXPORT_SYMBOL_GPL vmlinux 0x75e9c735 pci_ats_disabled +EXPORT_SYMBOL_GPL vmlinux 0x75ee544a tcp_reno_cong_avoid +EXPORT_SYMBOL_GPL vmlinux 0x75f34a8c gpiod_get_optional +EXPORT_SYMBOL_GPL vmlinux 0x75fb9062 arch_timer_read_counter +EXPORT_SYMBOL_GPL vmlinux 0x760a55d3 tpm_pm_suspend +EXPORT_SYMBOL_GPL vmlinux 0x762ce588 usb_wakeup_notification +EXPORT_SYMBOL_GPL vmlinux 0x762dff47 platform_device_add_properties +EXPORT_SYMBOL_GPL vmlinux 0x763999e4 virtqueue_disable_cb +EXPORT_SYMBOL_GPL vmlinux 0x76556af9 i2c_slave_unregister +EXPORT_SYMBOL_GPL vmlinux 0x765e9897 tracing_snapshot_cond_disable +EXPORT_SYMBOL_GPL vmlinux 0x76642d35 anon_inode_getfd +EXPORT_SYMBOL_GPL vmlinux 0x7665ee72 crypto_dh_decode_key +EXPORT_SYMBOL_GPL vmlinux 0x76710a9c devm_kasprintf +EXPORT_SYMBOL_GPL vmlinux 0x7681946c unregister_pm_notifier +EXPORT_SYMBOL_GPL vmlinux 0x7683fa26 usb_hcd_unlink_urb_from_ep +EXPORT_SYMBOL_GPL vmlinux 0x76a6e332 pm_generic_restore_early +EXPORT_SYMBOL_GPL vmlinux 0x76b2d05f tpm_tis_remove +EXPORT_SYMBOL_GPL vmlinux 0x76ba54b7 mbox_request_channel +EXPORT_SYMBOL_GPL vmlinux 0x76c2fe17 rio_route_add_entry +EXPORT_SYMBOL_GPL vmlinux 0x76d9b876 clk_set_rate +EXPORT_SYMBOL_GPL vmlinux 0x76dfc27b rtnl_link_register +EXPORT_SYMBOL_GPL vmlinux 0x76e10a88 __wait_rcu_gp +EXPORT_SYMBOL_GPL vmlinux 0x76eeeb0f sha384_zero_message_hash +EXPORT_SYMBOL_GPL vmlinux 0x76f20f27 __get_task_comm +EXPORT_SYMBOL_GPL vmlinux 0x77059663 pci_scan_child_bus +EXPORT_SYMBOL_GPL vmlinux 0x771838b8 mtd_table_mutex +EXPORT_SYMBOL_GPL vmlinux 0x771eee33 nand_readid_op +EXPORT_SYMBOL_GPL vmlinux 0x7721b61f dma_need_sync +EXPORT_SYMBOL_GPL vmlinux 0x7729cbdd task_handoff_register +EXPORT_SYMBOL_GPL vmlinux 0x772e2c26 xas_set_mark +EXPORT_SYMBOL_GPL vmlinux 0x7733cc0d usb_clear_halt +EXPORT_SYMBOL_GPL vmlinux 0x773f2713 clk_hw_unregister_mux +EXPORT_SYMBOL_GPL vmlinux 0x77416637 blk_freeze_queue_start +EXPORT_SYMBOL_GPL vmlinux 0x7750cde1 of_usb_get_phy_mode +EXPORT_SYMBOL_GPL vmlinux 0x7757b51a clk_unregister +EXPORT_SYMBOL_GPL vmlinux 0x775eeb1c sbitmap_resize +EXPORT_SYMBOL_GPL vmlinux 0x7763037c usb_gadget_vbus_draw +EXPORT_SYMBOL_GPL vmlinux 0x7766e3ef bdev_disk_changed +EXPORT_SYMBOL_GPL vmlinux 0x77752d69 pinconf_generic_dump_config +EXPORT_SYMBOL_GPL vmlinux 0x777edeba vring_transport_features +EXPORT_SYMBOL_GPL vmlinux 0x77855a19 __bdev_dax_supported +EXPORT_SYMBOL_GPL vmlinux 0x7791e066 dw_pcie_read +EXPORT_SYMBOL_GPL vmlinux 0x779afca6 debugfs_attr_read +EXPORT_SYMBOL_GPL vmlinux 0x779fa1f5 regulator_register_supply_alias +EXPORT_SYMBOL_GPL vmlinux 0x77ae495d usb_speed_string +EXPORT_SYMBOL_GPL vmlinux 0x77c072b9 sched_setattr +EXPORT_SYMBOL_GPL vmlinux 0x77d7a471 crypto_unregister_scomp +EXPORT_SYMBOL_GPL vmlinux 0x77e75be3 sfp_bus_put +EXPORT_SYMBOL_GPL vmlinux 0x77fb01d1 devlink_trap_groups_register +EXPORT_SYMBOL_GPL vmlinux 0x7802c9da inet_csk_addr2sockaddr +EXPORT_SYMBOL_GPL vmlinux 0x78136748 devlink_health_reporter_create +EXPORT_SYMBOL_GPL vmlinux 0x7823f5dc sprint_OID +EXPORT_SYMBOL_GPL vmlinux 0x78259f4c snd_card_disconnect_sync +EXPORT_SYMBOL_GPL vmlinux 0x783a3e83 devlink_resources_unregister +EXPORT_SYMBOL_GPL vmlinux 0x78599204 tps6586x_write +EXPORT_SYMBOL_GPL vmlinux 0x785a93b4 si_mem_available +EXPORT_SYMBOL_GPL vmlinux 0x78852f78 snd_soc_component_read +EXPORT_SYMBOL_GPL vmlinux 0x788b0ec1 thermal_of_cooling_device_register +EXPORT_SYMBOL_GPL vmlinux 0x788bfbad ring_buffer_empty +EXPORT_SYMBOL_GPL vmlinux 0x788ce5b0 musb_set_host +EXPORT_SYMBOL_GPL vmlinux 0x788e640e crypto_stats_akcipher_decrypt +EXPORT_SYMBOL_GPL vmlinux 0x788ff330 regulator_bulk_force_disable +EXPORT_SYMBOL_GPL vmlinux 0x789b0174 snd_soc_dpcm_fe_can_update +EXPORT_SYMBOL_GPL vmlinux 0x789c73d9 rcu_cpu_stall_suppress_at_boot +EXPORT_SYMBOL_GPL vmlinux 0x78af59bc ata_bmdma_irq_clear +EXPORT_SYMBOL_GPL vmlinux 0x78c2d32a gpiod_cansleep +EXPORT_SYMBOL_GPL vmlinux 0x78ddb76b dmi_match +EXPORT_SYMBOL_GPL vmlinux 0x78e360bf of_usb_get_dr_mode_by_phy +EXPORT_SYMBOL_GPL vmlinux 0x78f2c2de otg_ulpi_create +EXPORT_SYMBOL_GPL vmlinux 0x78ffe9cc platform_msi_domain_alloc_irqs +EXPORT_SYMBOL_GPL vmlinux 0x79004cc0 devm_of_led_get +EXPORT_SYMBOL_GPL vmlinux 0x790836d2 is_current_mnt_ns +EXPORT_SYMBOL_GPL vmlinux 0x790cb206 __udp_gso_segment +EXPORT_SYMBOL_GPL vmlinux 0x790ff046 of_dma_request_slave_channel +EXPORT_SYMBOL_GPL vmlinux 0x792a3fbc transport_setup_device +EXPORT_SYMBOL_GPL vmlinux 0x793a93dc raw_v6_hashinfo +EXPORT_SYMBOL_GPL vmlinux 0x793d3105 blk_set_pm_only +EXPORT_SYMBOL_GPL vmlinux 0x7944e0fc tracing_off +EXPORT_SYMBOL_GPL vmlinux 0x79470651 devfreq_event_get_edev_by_phandle +EXPORT_SYMBOL_GPL vmlinux 0x79470a2c TSS_authhmac +EXPORT_SYMBOL_GPL vmlinux 0x794a0461 rockchip_pcie_disable_clocks +EXPORT_SYMBOL_GPL vmlinux 0x794b7271 orderly_reboot +EXPORT_SYMBOL_GPL vmlinux 0x795ad217 debugfs_file_get +EXPORT_SYMBOL_GPL vmlinux 0x795e7106 tps6586x_clr_bits +EXPORT_SYMBOL_GPL vmlinux 0x79716b1d of_prop_next_string +EXPORT_SYMBOL_GPL vmlinux 0x798c9984 cpufreq_cooling_register +EXPORT_SYMBOL_GPL vmlinux 0x79ad5c74 dapm_mark_endpoints_dirty +EXPORT_SYMBOL_GPL vmlinux 0x79b359e3 dev_pm_opp_enable +EXPORT_SYMBOL_GPL vmlinux 0x79baee7e fb_bl_default_curve +EXPORT_SYMBOL_GPL vmlinux 0x79defbe1 kthread_should_park +EXPORT_SYMBOL_GPL vmlinux 0x79e36a56 dev_pm_opp_get_of_node +EXPORT_SYMBOL_GPL vmlinux 0x79f29981 devres_add +EXPORT_SYMBOL_GPL vmlinux 0x7a008aa8 devm_serdev_device_open +EXPORT_SYMBOL_GPL vmlinux 0x7a19366b dma_get_slave_channel +EXPORT_SYMBOL_GPL vmlinux 0x7a205922 vfs_readf +EXPORT_SYMBOL_GPL vmlinux 0x7a28483c lwtunnel_encap_add_ops +EXPORT_SYMBOL_GPL vmlinux 0x7a3185d2 bpfilter_ops +EXPORT_SYMBOL_GPL vmlinux 0x7a41b9f2 usb_ep_set_maxpacket_limit +EXPORT_SYMBOL_GPL vmlinux 0x7a48d06c cpu_latency_qos_remove_request +EXPORT_SYMBOL_GPL vmlinux 0x7a5faab7 sdio_writew +EXPORT_SYMBOL_GPL vmlinux 0x7a653acf scsi_host_busy_iter +EXPORT_SYMBOL_GPL vmlinux 0x7a667b8b do_splice_from +EXPORT_SYMBOL_GPL vmlinux 0x7a679964 regmap_get_max_register +EXPORT_SYMBOL_GPL vmlinux 0x7a73e605 wm831x_isinkv_values +EXPORT_SYMBOL_GPL vmlinux 0x7a7f1396 zs_malloc +EXPORT_SYMBOL_GPL vmlinux 0x7a81541b async_synchronize_cookie +EXPORT_SYMBOL_GPL vmlinux 0x7abed5b8 regulator_suspend_disable +EXPORT_SYMBOL_GPL vmlinux 0x7ac10ad8 icst_clk_register +EXPORT_SYMBOL_GPL vmlinux 0x7ac17afd perf_event_disable +EXPORT_SYMBOL_GPL vmlinux 0x7ac1c882 of_led_get +EXPORT_SYMBOL_GPL vmlinux 0x7ac722bd phy_all_ports_features_array +EXPORT_SYMBOL_GPL vmlinux 0x7acc1163 snd_soc_dapm_put_volsw +EXPORT_SYMBOL_GPL vmlinux 0x7ad1ded1 pinctrl_register_mappings +EXPORT_SYMBOL_GPL vmlinux 0x7ad7ccff mtk_pinconf_adv_pull_set +EXPORT_SYMBOL_GPL vmlinux 0x7ae00f9c nf_nat_hook +EXPORT_SYMBOL_GPL vmlinux 0x7ae4c06f ahci_pmp_retry_srst_ops +EXPORT_SYMBOL_GPL vmlinux 0x7af38fd7 perf_tp_event +EXPORT_SYMBOL_GPL vmlinux 0x7af77093 get_pid_task +EXPORT_SYMBOL_GPL vmlinux 0x7af7b528 tpm_default_chip +EXPORT_SYMBOL_GPL vmlinux 0x7afad9eb power_supply_get_drvdata +EXPORT_SYMBOL_GPL vmlinux 0x7b178afe unlock_system_sleep +EXPORT_SYMBOL_GPL vmlinux 0x7b2b18e6 fsverity_prepare_setattr +EXPORT_SYMBOL_GPL vmlinux 0x7b3b8f6c usb_reset_configuration +EXPORT_SYMBOL_GPL vmlinux 0x7b431cdd usb_gadget_deactivate +EXPORT_SYMBOL_GPL vmlinux 0x7b5a40b7 of_pci_get_max_link_speed +EXPORT_SYMBOL_GPL vmlinux 0x7b5a4926 sha1_zero_message_hash +EXPORT_SYMBOL_GPL vmlinux 0x7b607008 sdhci_set_clock +EXPORT_SYMBOL_GPL vmlinux 0x7b64d081 gpio_to_desc +EXPORT_SYMBOL_GPL vmlinux 0x7b9793a2 get_cpu_idle_time_us +EXPORT_SYMBOL_GPL vmlinux 0x7b9a40f6 uart_handle_cts_change +EXPORT_SYMBOL_GPL vmlinux 0x7b9f85c7 crypto_aead_setauthsize +EXPORT_SYMBOL_GPL vmlinux 0x7bb43b1b usb_hub_release_port +EXPORT_SYMBOL_GPL vmlinux 0x7bbf68ad device_add_properties +EXPORT_SYMBOL_GPL vmlinux 0x7bc62c50 bio_associate_blkg_from_css +EXPORT_SYMBOL_GPL vmlinux 0x7bd5ad06 usb_add_phy_dev +EXPORT_SYMBOL_GPL vmlinux 0x7bdb46f9 devlink_free +EXPORT_SYMBOL_GPL vmlinux 0x7be2f239 usb_del_gadget_udc +EXPORT_SYMBOL_GPL vmlinux 0x7be89624 usb_gadget_giveback_request +EXPORT_SYMBOL_GPL vmlinux 0x7bea059c of_map_rid +EXPORT_SYMBOL_GPL vmlinux 0x7beb1eab spi_mem_default_supports_op +EXPORT_SYMBOL_GPL vmlinux 0x7bf3bfa0 device_wakeup_disable +EXPORT_SYMBOL_GPL vmlinux 0x7c19e144 clean_acked_data_enable +EXPORT_SYMBOL_GPL vmlinux 0x7c1ebc07 alloc_io_pgtable_ops +EXPORT_SYMBOL_GPL vmlinux 0x7c30da12 dev_pm_opp_get_voltage +EXPORT_SYMBOL_GPL vmlinux 0x7c63ff3d pm_genpd_syscore_poweron +EXPORT_SYMBOL_GPL vmlinux 0x7c7f5094 pci_speed_string +EXPORT_SYMBOL_GPL vmlinux 0x7c83a492 dev_pm_qos_update_user_latency_tolerance +EXPORT_SYMBOL_GPL vmlinux 0x7c9480cb ip6_dst_lookup_flow +EXPORT_SYMBOL_GPL vmlinux 0x7c95a0b7 pci_epf_alloc_space +EXPORT_SYMBOL_GPL vmlinux 0x7c983a5d dmi_walk +EXPORT_SYMBOL_GPL vmlinux 0x7c9a7371 clk_prepare +EXPORT_SYMBOL_GPL vmlinux 0x7c9ed189 devm_release_action +EXPORT_SYMBOL_GPL vmlinux 0x7cc53954 task_active_pid_ns +EXPORT_SYMBOL_GPL vmlinux 0x7cc6d419 led_sysfs_enable +EXPORT_SYMBOL_GPL vmlinux 0x7cd6f042 cpufreq_get_current_driver +EXPORT_SYMBOL_GPL vmlinux 0x7cdac071 pci_epf_match_device +EXPORT_SYMBOL_GPL vmlinux 0x7cddbfe7 cs47l24_irq +EXPORT_SYMBOL_GPL vmlinux 0x7ceaf0d5 generic_handle_irq +EXPORT_SYMBOL_GPL vmlinux 0x7ceb63b8 sysfs_create_files +EXPORT_SYMBOL_GPL vmlinux 0x7ceb77e9 netlink_has_listeners +EXPORT_SYMBOL_GPL vmlinux 0x7cee58da ata_host_activate +EXPORT_SYMBOL_GPL vmlinux 0x7cef5db7 devm_gpiod_get_array +EXPORT_SYMBOL_GPL vmlinux 0x7d002139 register_kretprobes +EXPORT_SYMBOL_GPL vmlinux 0x7d00c65b nd_synchronize +EXPORT_SYMBOL_GPL vmlinux 0x7d00ec6c usb_alloc_dev +EXPORT_SYMBOL_GPL vmlinux 0x7d1f2715 snd_compress_new +EXPORT_SYMBOL_GPL vmlinux 0x7d25a51c dm_disk +EXPORT_SYMBOL_GPL vmlinux 0x7d262eae ping_get_port +EXPORT_SYMBOL_GPL vmlinux 0x7d2bba4c net_ns_type_operations +EXPORT_SYMBOL_GPL vmlinux 0x7d3e7c96 sched_trace_cfs_rq_avg +EXPORT_SYMBOL_GPL vmlinux 0x7d400d6b page_reporting_register +EXPORT_SYMBOL_GPL vmlinux 0x7d59dd46 pm_wq +EXPORT_SYMBOL_GPL vmlinux 0x7d5a94a1 ata_scsi_queuecmd +EXPORT_SYMBOL_GPL vmlinux 0x7d84c039 dev_fill_metadata_dst +EXPORT_SYMBOL_GPL vmlinux 0x7d8fec6a blk_mq_pci_map_queues +EXPORT_SYMBOL_GPL vmlinux 0x7d95d26b platform_device_put +EXPORT_SYMBOL_GPL vmlinux 0x7d9d6c48 tpm_pm_resume +EXPORT_SYMBOL_GPL vmlinux 0x7d9f44da regulator_is_equal +EXPORT_SYMBOL_GPL vmlinux 0x7dbf3453 ncsi_stop_dev +EXPORT_SYMBOL_GPL vmlinux 0x7dc7b476 md_rdev_clear +EXPORT_SYMBOL_GPL vmlinux 0x7dd891d4 ethnl_cable_test_amplitude +EXPORT_SYMBOL_GPL vmlinux 0x7dda30af unregister_tracepoint_module_notifier +EXPORT_SYMBOL_GPL vmlinux 0x7deaaa67 ethnl_cable_test_result +EXPORT_SYMBOL_GPL vmlinux 0x7df755b3 regmap_read +EXPORT_SYMBOL_GPL vmlinux 0x7dfac8ba sdhci_set_bus_width +EXPORT_SYMBOL_GPL vmlinux 0x7e08d3c8 __tracepoint_remove_device_from_group +EXPORT_SYMBOL_GPL vmlinux 0x7e095653 stmpe_set_altfunc +EXPORT_SYMBOL_GPL vmlinux 0x7e0e5e58 pstore_register +EXPORT_SYMBOL_GPL vmlinux 0x7e1f7bd7 usb_phy_set_event +EXPORT_SYMBOL_GPL vmlinux 0x7e1fc5a6 paste_selection +EXPORT_SYMBOL_GPL vmlinux 0x7e2370fe mmu_notifier_register +EXPORT_SYMBOL_GPL vmlinux 0x7e2954c2 clock_cooling_register +EXPORT_SYMBOL_GPL vmlinux 0x7e36d0dd inet_csk_route_req +EXPORT_SYMBOL_GPL vmlinux 0x7e5052e2 tpmm_chip_alloc +EXPORT_SYMBOL_GPL vmlinux 0x7e5db80b pstore_name_to_type +EXPORT_SYMBOL_GPL vmlinux 0x7e6006cd power_supply_get_by_phandle +EXPORT_SYMBOL_GPL vmlinux 0x7e606130 snd_soc_calc_bclk +EXPORT_SYMBOL_GPL vmlinux 0x7e64181d usb_calc_bus_time +EXPORT_SYMBOL_GPL vmlinux 0x7e706887 virtqueue_get_vring +EXPORT_SYMBOL_GPL vmlinux 0x7e768138 __dax_driver_register +EXPORT_SYMBOL_GPL vmlinux 0x7e79b13a sbitmap_init_node +EXPORT_SYMBOL_GPL vmlinux 0x7e7e3f58 ring_buffer_reset_cpu +EXPORT_SYMBOL_GPL vmlinux 0x7e8e9b78 amba_apb_device_add_res +EXPORT_SYMBOL_GPL vmlinux 0x7e9c6ae8 tcp_enter_memory_pressure +EXPORT_SYMBOL_GPL vmlinux 0x7ea05208 crypto_unregister_aeads +EXPORT_SYMBOL_GPL vmlinux 0x7eb808d0 add_cpu +EXPORT_SYMBOL_GPL vmlinux 0x7eea6b8b pcap_adc_async +EXPORT_SYMBOL_GPL vmlinux 0x7eee5704 xdp_rxq_info_reg_mem_model +EXPORT_SYMBOL_GPL vmlinux 0x7f037e03 exportfs_encode_fh +EXPORT_SYMBOL_GPL vmlinux 0x7f072a09 snd_soc_dai_compr_shutdown +EXPORT_SYMBOL_GPL vmlinux 0x7f1850b7 switchdev_handle_port_attr_set +EXPORT_SYMBOL_GPL vmlinux 0x7f2e7dfa snd_soc_dapm_stream_stop +EXPORT_SYMBOL_GPL vmlinux 0x7f438dbe fat_sync_inode +EXPORT_SYMBOL_GPL vmlinux 0x7f48408c unregister_asymmetric_key_parser +EXPORT_SYMBOL_GPL vmlinux 0x7f4a37e6 bus_for_each_drv +EXPORT_SYMBOL_GPL vmlinux 0x7f548e64 crypto_stats_akcipher_sign +EXPORT_SYMBOL_GPL vmlinux 0x7f5a14cb icc_link_destroy +EXPORT_SYMBOL_GPL vmlinux 0x7f6404ac cdrom_read_tocentry +EXPORT_SYMBOL_GPL vmlinux 0x7f733a2f iommu_cache_invalidate +EXPORT_SYMBOL_GPL vmlinux 0x7f7c84e1 snd_soc_bytes_tlv_callback +EXPORT_SYMBOL_GPL vmlinux 0x7f7cbc64 ip_tunnel_need_metadata +EXPORT_SYMBOL_GPL vmlinux 0x7f819c74 __regmap_init_mmio_clk +EXPORT_SYMBOL_GPL vmlinux 0x7f8dd2bb bstr_printf +EXPORT_SYMBOL_GPL vmlinux 0x7f9ad0d7 __netdev_watchdog_up +EXPORT_SYMBOL_GPL vmlinux 0x7f9ee09e icc_put +EXPORT_SYMBOL_GPL vmlinux 0x7fa3eaf4 crypto_find_alg +EXPORT_SYMBOL_GPL vmlinux 0x7fa720a6 hrtimer_active +EXPORT_SYMBOL_GPL vmlinux 0x7faaa93b crypto_register_alg +EXPORT_SYMBOL_GPL vmlinux 0x7faf032c devlink_traps_register +EXPORT_SYMBOL_GPL vmlinux 0x7fafdec9 clk_fixed_factor_ops +EXPORT_SYMBOL_GPL vmlinux 0x7fb0084a of_msi_configure +EXPORT_SYMBOL_GPL vmlinux 0x7fb84aa3 ata_sff_dev_classify +EXPORT_SYMBOL_GPL vmlinux 0x7fc23190 spi_set_cs_timing +EXPORT_SYMBOL_GPL vmlinux 0x7fe54fff snd_soc_add_component_controls +EXPORT_SYMBOL_GPL vmlinux 0x7fee9dab alarm_try_to_cancel +EXPORT_SYMBOL_GPL vmlinux 0x7fefc863 lp8788_update_bits +EXPORT_SYMBOL_GPL vmlinux 0x801eb65d dev_pm_opp_of_cpumask_remove_table +EXPORT_SYMBOL_GPL vmlinux 0x803235e6 tps65217_set_bits +EXPORT_SYMBOL_GPL vmlinux 0x803658c5 of_irq_parse_raw +EXPORT_SYMBOL_GPL vmlinux 0x803ad71e pinmux_generic_get_function_groups +EXPORT_SYMBOL_GPL vmlinux 0x8041cd8f set_primary_fwnode +EXPORT_SYMBOL_GPL vmlinux 0x805667cf devlink_fmsg_u64_put +EXPORT_SYMBOL_GPL vmlinux 0x8061b697 pinmux_generic_get_function_name +EXPORT_SYMBOL_GPL vmlinux 0x80654865 irq_chip_mask_parent +EXPORT_SYMBOL_GPL vmlinux 0x80746ec6 btree_visitor +EXPORT_SYMBOL_GPL vmlinux 0x807df938 iommu_attach_device +EXPORT_SYMBOL_GPL vmlinux 0x807fdcc4 call_rcu_tasks_rude +EXPORT_SYMBOL_GPL vmlinux 0x808becfd device_connection_add +EXPORT_SYMBOL_GPL vmlinux 0x808ec1a3 crypto_alg_tested +EXPORT_SYMBOL_GPL vmlinux 0x809463f8 ata_bmdma32_port_ops +EXPORT_SYMBOL_GPL vmlinux 0x809d2f45 blk_mq_quiesce_queue +EXPORT_SYMBOL_GPL vmlinux 0x80b17b75 omap_get_plat_info +EXPORT_SYMBOL_GPL vmlinux 0x80c16542 to_nvdimm_bus_dev +EXPORT_SYMBOL_GPL vmlinux 0x80c286fd sysfs_create_file_ns +EXPORT_SYMBOL_GPL vmlinux 0x80c68137 nf_log_buf_close +EXPORT_SYMBOL_GPL vmlinux 0x80c7f891 blk_queue_required_elevator_features +EXPORT_SYMBOL_GPL vmlinux 0x80cd2917 __root_device_register +EXPORT_SYMBOL_GPL vmlinux 0x80d5e57a mpi_free +EXPORT_SYMBOL_GPL vmlinux 0x80e172c9 mtd_writev +EXPORT_SYMBOL_GPL vmlinux 0x80f0ab92 md_bitmap_load +EXPORT_SYMBOL_GPL vmlinux 0x80f60bf8 of_thermal_get_ntrips +EXPORT_SYMBOL_GPL vmlinux 0x80f7d128 __tracepoint_block_bio_remap +EXPORT_SYMBOL_GPL vmlinux 0x80fe83f8 relay_close +EXPORT_SYMBOL_GPL vmlinux 0x810004f8 __ata_ehi_push_desc +EXPORT_SYMBOL_GPL vmlinux 0x8113dc3e ahci_platform_disable_resources +EXPORT_SYMBOL_GPL vmlinux 0x8116a634 switchdev_handle_port_obj_del +EXPORT_SYMBOL_GPL vmlinux 0x811dc334 usb_unregister_notify +EXPORT_SYMBOL_GPL vmlinux 0x812073ba devm_hwspin_lock_free +EXPORT_SYMBOL_GPL vmlinux 0x812eb261 tty_port_register_device_attr_serdev +EXPORT_SYMBOL_GPL vmlinux 0x81385f0b skb_zerocopy_iter_stream +EXPORT_SYMBOL_GPL vmlinux 0x8144bc83 crypto_register_ahash +EXPORT_SYMBOL_GPL vmlinux 0x815588a6 clk_enable +EXPORT_SYMBOL_GPL vmlinux 0x815fda83 sed_ioctl +EXPORT_SYMBOL_GPL vmlinux 0x816a41ca cpufreq_update_limits +EXPORT_SYMBOL_GPL vmlinux 0x816f5675 fib4_rule_default +EXPORT_SYMBOL_GPL vmlinux 0x81915add devres_for_each_res +EXPORT_SYMBOL_GPL vmlinux 0x819c47f6 irq_create_of_mapping +EXPORT_SYMBOL_GPL vmlinux 0x819fe250 iommu_alloc_resv_region +EXPORT_SYMBOL_GPL vmlinux 0x81a4807d ksm_madvise +EXPORT_SYMBOL_GPL vmlinux 0x81a65d4a mtk_pinconf_drive_set +EXPORT_SYMBOL_GPL vmlinux 0x81a889d6 clk_hw_rate_is_protected +EXPORT_SYMBOL_GPL vmlinux 0x81ac7b0c pinctrl_find_and_add_gpio_range +EXPORT_SYMBOL_GPL vmlinux 0x81b009b6 of_pci_range_parser_one +EXPORT_SYMBOL_GPL vmlinux 0x81b03377 efivar_entry_set_safe +EXPORT_SYMBOL_GPL vmlinux 0x81ba53ee driver_unregister +EXPORT_SYMBOL_GPL vmlinux 0x81c16d4d dm_per_bio_data +EXPORT_SYMBOL_GPL vmlinux 0x81dcc59c ata_bmdma_port_start32 +EXPORT_SYMBOL_GPL vmlinux 0x81e0f76a sdev_evt_send +EXPORT_SYMBOL_GPL vmlinux 0x81e48ed7 usb_amd_pt_check_port +EXPORT_SYMBOL_GPL vmlinux 0x81f2b867 dev_pm_opp_of_register_em +EXPORT_SYMBOL_GPL vmlinux 0x81f336c2 iomap_readahead +EXPORT_SYMBOL_GPL vmlinux 0x81f6cf2f anon_transport_class_register +EXPORT_SYMBOL_GPL vmlinux 0x81fe5212 devm_pwm_put +EXPORT_SYMBOL_GPL vmlinux 0x82078467 kobject_init_and_add +EXPORT_SYMBOL_GPL vmlinux 0x821665de snd_dmaengine_pcm_pointer_no_residue +EXPORT_SYMBOL_GPL vmlinux 0x821ec7f1 clk_mux_ro_ops +EXPORT_SYMBOL_GPL vmlinux 0x82226c53 pinctrl_unregister_mappings +EXPORT_SYMBOL_GPL vmlinux 0x82279eb3 blk_ksm_destroy +EXPORT_SYMBOL_GPL vmlinux 0x822d4fd0 perf_aux_output_flag +EXPORT_SYMBOL_GPL vmlinux 0x8238940e bsg_remove_queue +EXPORT_SYMBOL_GPL vmlinux 0x82529887 fsnotify_alloc_group +EXPORT_SYMBOL_GPL vmlinux 0x827b5218 __inode_attach_wb +EXPORT_SYMBOL_GPL vmlinux 0x8292645f vfs_listxattr +EXPORT_SYMBOL_GPL vmlinux 0x829412c8 page_cache_async_readahead +EXPORT_SYMBOL_GPL vmlinux 0x8299be56 trace_put_event_file +EXPORT_SYMBOL_GPL vmlinux 0x82aa9377 kthread_use_mm +EXPORT_SYMBOL_GPL vmlinux 0x82cb7b06 dma_request_chan +EXPORT_SYMBOL_GPL vmlinux 0x82d79b51 sysctl_vfs_cache_pressure +EXPORT_SYMBOL_GPL vmlinux 0x82edf56e page_cache_readahead_unbounded +EXPORT_SYMBOL_GPL vmlinux 0x82fb7e91 arizona_of_get_type +EXPORT_SYMBOL_GPL vmlinux 0x82ff4b95 clk_hw_unregister_fixed_factor +EXPORT_SYMBOL_GPL vmlinux 0x83251af4 vfs_getxattr_alloc +EXPORT_SYMBOL_GPL vmlinux 0x832805c4 usb_hcd_unmap_urb_setup_for_dma +EXPORT_SYMBOL_GPL vmlinux 0x8339df73 klist_add_behind +EXPORT_SYMBOL_GPL vmlinux 0x833d14f4 rio_attach_device +EXPORT_SYMBOL_GPL vmlinux 0x833defc0 power_supply_register_no_ws +EXPORT_SYMBOL_GPL vmlinux 0x83465f64 rio_register_scan +EXPORT_SYMBOL_GPL vmlinux 0x8349a895 nvmem_device_put +EXPORT_SYMBOL_GPL vmlinux 0x834acc9d crypto_register_shashes +EXPORT_SYMBOL_GPL vmlinux 0x8361db5e dax_copy_to_iter +EXPORT_SYMBOL_GPL vmlinux 0x837d6ffd devm_device_remove_group +EXPORT_SYMBOL_GPL vmlinux 0x83835b50 blk_ksm_init +EXPORT_SYMBOL_GPL vmlinux 0x8385d1bd pinctrl_utils_add_map_configs +EXPORT_SYMBOL_GPL vmlinux 0x838b52b5 pm_runtime_set_memalloc_noio +EXPORT_SYMBOL_GPL vmlinux 0x8397fa54 clk_register_fixed_factor +EXPORT_SYMBOL_GPL vmlinux 0x839e5cd4 cpufreq_table_index_unsorted +EXPORT_SYMBOL_GPL vmlinux 0x83a0f84e metadata_dst_alloc +EXPORT_SYMBOL_GPL vmlinux 0x83a4e83b pci_epc_unmap_addr +EXPORT_SYMBOL_GPL vmlinux 0x83ace38c blk_mq_freeze_queue_wait +EXPORT_SYMBOL_GPL vmlinux 0x83b52220 ip6_append_data +EXPORT_SYMBOL_GPL vmlinux 0x83b896bd fuse_conn_put +EXPORT_SYMBOL_GPL vmlinux 0x83cc29cb sdhci_set_ios +EXPORT_SYMBOL_GPL vmlinux 0x83cda8cd path_noexec +EXPORT_SYMBOL_GPL vmlinux 0x8400def8 watchdog_unregister_device +EXPORT_SYMBOL_GPL vmlinux 0x84106f36 devlink_trap_ctx_priv +EXPORT_SYMBOL_GPL vmlinux 0x841a3d51 mtd_wunit_to_pairing_info +EXPORT_SYMBOL_GPL vmlinux 0x84264ced fs_umode_to_ftype +EXPORT_SYMBOL_GPL vmlinux 0x842829e7 adp5520_unregister_notifier +EXPORT_SYMBOL_GPL vmlinux 0x842ef0ed cpufreq_disable_fast_switch +EXPORT_SYMBOL_GPL vmlinux 0x84392388 akcipher_register_instance +EXPORT_SYMBOL_GPL vmlinux 0x843b9a82 get_tree_mtd +EXPORT_SYMBOL_GPL vmlinux 0x84457d84 platform_unregister_drivers +EXPORT_SYMBOL_GPL vmlinux 0x844712df perf_event_cgrp_subsys_on_dfl_key +EXPORT_SYMBOL_GPL vmlinux 0x84502a47 blk_status_to_errno +EXPORT_SYMBOL_GPL vmlinux 0x845aa3dc lpddr2_jedec_timings +EXPORT_SYMBOL_GPL vmlinux 0x845b2069 usb_show_dynids +EXPORT_SYMBOL_GPL vmlinux 0x845dbf3b scatterwalk_map_and_copy +EXPORT_SYMBOL_GPL vmlinux 0x8462cb62 atapi_cmd_type +EXPORT_SYMBOL_GPL vmlinux 0x846f956c snd_hwparams_to_dma_slave_config +EXPORT_SYMBOL_GPL vmlinux 0x8475fc0d nvdimm_has_flush +EXPORT_SYMBOL_GPL vmlinux 0x848375e1 clk_hw_register +EXPORT_SYMBOL_GPL vmlinux 0x84882f19 vfs_removexattr +EXPORT_SYMBOL_GPL vmlinux 0x84a07f12 ata_host_suspend +EXPORT_SYMBOL_GPL vmlinux 0x84a31234 snd_soc_component_write +EXPORT_SYMBOL_GPL vmlinux 0x84a8d0eb of_changeset_revert +EXPORT_SYMBOL_GPL vmlinux 0x84c7730c syscon_node_to_regmap +EXPORT_SYMBOL_GPL vmlinux 0x84d2fd4f irq_domain_associate +EXPORT_SYMBOL_GPL vmlinux 0x8506baa8 clk_unregister_gate +EXPORT_SYMBOL_GPL vmlinux 0x850bb6db devlink_health_reporter_destroy +EXPORT_SYMBOL_GPL vmlinux 0x851ca19f __clk_hw_register_mux +EXPORT_SYMBOL_GPL vmlinux 0x851e6003 usb_phy_roothub_calibrate +EXPORT_SYMBOL_GPL vmlinux 0x854585a2 kstrdup_quotable_file +EXPORT_SYMBOL_GPL vmlinux 0x85540ebc nvmem_cell_put +EXPORT_SYMBOL_GPL vmlinux 0x8574ca6c gpio_request_array +EXPORT_SYMBOL_GPL vmlinux 0x858d16db fwnode_get_nth_parent +EXPORT_SYMBOL_GPL vmlinux 0x858d6b49 dev_pm_domain_attach_by_name +EXPORT_SYMBOL_GPL vmlinux 0x859fb207 devm_regulator_get_optional +EXPORT_SYMBOL_GPL vmlinux 0x85a49dc7 pci_vpd_find_info_keyword +EXPORT_SYMBOL_GPL vmlinux 0x85a9508f ata_bmdma_port_start +EXPORT_SYMBOL_GPL vmlinux 0x85a9d552 bpf_prog_free +EXPORT_SYMBOL_GPL vmlinux 0x85aca8ec user_free_preparse +EXPORT_SYMBOL_GPL vmlinux 0x85acb812 register_kprobe +EXPORT_SYMBOL_GPL vmlinux 0x85b3f3cf inet_getpeer +EXPORT_SYMBOL_GPL vmlinux 0x85c54b61 efivar_validate +EXPORT_SYMBOL_GPL vmlinux 0x85e62c28 dbs_update +EXPORT_SYMBOL_GPL vmlinux 0x85f73f51 unregister_trace_event +EXPORT_SYMBOL_GPL vmlinux 0x85fca1f0 iommu_device_unlink +EXPORT_SYMBOL_GPL vmlinux 0x860a2eab bch_decode +EXPORT_SYMBOL_GPL vmlinux 0x862258db timecounter_init +EXPORT_SYMBOL_GPL vmlinux 0x86242dba l3mdev_master_upper_ifindex_by_index_rcu +EXPORT_SYMBOL_GPL vmlinux 0x86248ec5 __audit_log_nfcfg +EXPORT_SYMBOL_GPL vmlinux 0x8626cea3 iomap_invalidatepage +EXPORT_SYMBOL_GPL vmlinux 0x86276dc1 pinctrl_utils_add_config +EXPORT_SYMBOL_GPL vmlinux 0x862bb17b linear_range_values_in_range_array +EXPORT_SYMBOL_GPL vmlinux 0x8652e61b fib6_check_nexthop +EXPORT_SYMBOL_GPL vmlinux 0x865587a5 scsi_free_sgtables +EXPORT_SYMBOL_GPL vmlinux 0x86585a33 devlink_fmsg_obj_nest_start +EXPORT_SYMBOL_GPL vmlinux 0x8665230b percpu_ref_switch_to_percpu +EXPORT_SYMBOL_GPL vmlinux 0x8677245d unregister_switchdev_blocking_notifier +EXPORT_SYMBOL_GPL vmlinux 0x867876c8 dt_init_idle_driver +EXPORT_SYMBOL_GPL vmlinux 0x867ba5be snd_soc_dapm_del_routes +EXPORT_SYMBOL_GPL vmlinux 0x868784cb __symbol_get +EXPORT_SYMBOL_GPL vmlinux 0x86a4d24e skb_zerocopy +EXPORT_SYMBOL_GPL vmlinux 0x86b427ce clkdev_create +EXPORT_SYMBOL_GPL vmlinux 0x86c961b3 __set_dax_synchronous +EXPORT_SYMBOL_GPL vmlinux 0x86f6b99d synchronize_rcu_expedited +EXPORT_SYMBOL_GPL vmlinux 0x86f85114 net_dec_egress_queue +EXPORT_SYMBOL_GPL vmlinux 0x8704e4e0 ata_qc_complete +EXPORT_SYMBOL_GPL vmlinux 0x870c1ad1 pm_generic_poweroff_late +EXPORT_SYMBOL_GPL vmlinux 0x871f4880 device_show_bool +EXPORT_SYMBOL_GPL vmlinux 0x872f2a78 udp_abort +EXPORT_SYMBOL_GPL vmlinux 0x87306816 sata_lpm_ignore_phy_events +EXPORT_SYMBOL_GPL vmlinux 0x87403f9e crypto_stats_get +EXPORT_SYMBOL_GPL vmlinux 0x874a3f40 gpiod_set_value_cansleep +EXPORT_SYMBOL_GPL vmlinux 0x874e1feb of_fwnode_ops +EXPORT_SYMBOL_GPL vmlinux 0x876e077f reset_controller_unregister +EXPORT_SYMBOL_GPL vmlinux 0x87739aa2 cgroup_get_from_fd +EXPORT_SYMBOL_GPL vmlinux 0x877d3ac3 sbitmap_del_wait_queue +EXPORT_SYMBOL_GPL vmlinux 0x87974295 wm831x_device_shutdown +EXPORT_SYMBOL_GPL vmlinux 0x879d42a9 dev_pm_opp_get_freq +EXPORT_SYMBOL_GPL vmlinux 0x87a838a5 snd_soc_dapm_force_bias_level +EXPORT_SYMBOL_GPL vmlinux 0x87b2b34e __tracepoint_attach_device_to_domain +EXPORT_SYMBOL_GPL vmlinux 0x87b7d617 srcu_torture_stats_print +EXPORT_SYMBOL_GPL vmlinux 0x87b9db09 i2c_get_device_id +EXPORT_SYMBOL_GPL vmlinux 0x87d75019 __devm_spi_alloc_controller +EXPORT_SYMBOL_GPL vmlinux 0x87dd3251 l3mdev_link_scope_lookup +EXPORT_SYMBOL_GPL vmlinux 0x87f26d68 ahci_do_hardreset +EXPORT_SYMBOL_GPL vmlinux 0x87f44489 snd_soc_new_compress +EXPORT_SYMBOL_GPL vmlinux 0x87f6090b snd_soc_component_set_pll +EXPORT_SYMBOL_GPL vmlinux 0x8805a073 blocking_notifier_call_chain +EXPORT_SYMBOL_GPL vmlinux 0x880ef295 property_entries_dup +EXPORT_SYMBOL_GPL vmlinux 0x881a3ad2 nanddev_init +EXPORT_SYMBOL_GPL vmlinux 0x88205420 sata_link_debounce +EXPORT_SYMBOL_GPL vmlinux 0x882077d5 usb_ep_dequeue +EXPORT_SYMBOL_GPL vmlinux 0x88304846 sched_setscheduler +EXPORT_SYMBOL_GPL vmlinux 0x883ca9d7 module_mutex +EXPORT_SYMBOL_GPL vmlinux 0x8842ba61 irq_find_mapping +EXPORT_SYMBOL_GPL vmlinux 0x885528a6 ring_buffer_discard_commit +EXPORT_SYMBOL_GPL vmlinux 0x887b167e extcon_dev_unregister +EXPORT_SYMBOL_GPL vmlinux 0x887f229a devres_close_group +EXPORT_SYMBOL_GPL vmlinux 0x888593d8 led_blink_set +EXPORT_SYMBOL_GPL vmlinux 0x888a3e36 regulator_list_voltage_pickable_linear_range +EXPORT_SYMBOL_GPL vmlinux 0x888e9633 tty_buffer_space_avail +EXPORT_SYMBOL_GPL vmlinux 0x88ab6fe3 kgdb_active +EXPORT_SYMBOL_GPL vmlinux 0x88b4ae92 ring_buffer_normalize_time_stamp +EXPORT_SYMBOL_GPL vmlinux 0x88ebe5c2 of_clk_get_parent_name +EXPORT_SYMBOL_GPL vmlinux 0x88f021a6 snd_soc_find_dai +EXPORT_SYMBOL_GPL vmlinux 0x88f5503e snd_soc_component_force_enable_pin +EXPORT_SYMBOL_GPL vmlinux 0x88f58bdf security_kernel_load_data +EXPORT_SYMBOL_GPL vmlinux 0x8912157c devlink_reload_disable +EXPORT_SYMBOL_GPL vmlinux 0x891980b4 nfnl_ct_hook +EXPORT_SYMBOL_GPL vmlinux 0x8919f015 pinconf_generic_dt_node_to_map +EXPORT_SYMBOL_GPL vmlinux 0x8924eb1e rcu_force_quiescent_state +EXPORT_SYMBOL_GPL vmlinux 0x892985d2 dma_can_mmap +EXPORT_SYMBOL_GPL vmlinux 0x892c0af7 clk_hw_is_enabled +EXPORT_SYMBOL_GPL vmlinux 0x892cde1c dm_post_suspending +EXPORT_SYMBOL_GPL vmlinux 0x8931ac7d get_user_pages_fast +EXPORT_SYMBOL_GPL vmlinux 0x893abbdd devlink_fmsg_u32_pair_put +EXPORT_SYMBOL_GPL vmlinux 0x893c4f63 tty_init_termios +EXPORT_SYMBOL_GPL vmlinux 0x89462c9e device_node_to_regmap +EXPORT_SYMBOL_GPL vmlinux 0x89485687 iommu_group_put +EXPORT_SYMBOL_GPL vmlinux 0x89639a3f __strp_unpause +EXPORT_SYMBOL_GPL vmlinux 0x897fd59e kernfs_find_and_get_ns +EXPORT_SYMBOL_GPL vmlinux 0x8981aa36 pm_genpd_syscore_poweroff +EXPORT_SYMBOL_GPL vmlinux 0x898be1f1 kset_create_and_add +EXPORT_SYMBOL_GPL vmlinux 0x898f5106 ata_do_dev_read_id +EXPORT_SYMBOL_GPL vmlinux 0x899070e4 sk_msg_free_nocharge +EXPORT_SYMBOL_GPL vmlinux 0x8990b2d0 tty_port_register_device +EXPORT_SYMBOL_GPL vmlinux 0x89a1024a ethnl_cable_test_step +EXPORT_SYMBOL_GPL vmlinux 0x89ad4322 regmap_get_val_bytes +EXPORT_SYMBOL_GPL vmlinux 0x89b8f7d7 pci_epc_init_notify +EXPORT_SYMBOL_GPL vmlinux 0x89bbafc6 usb_register_notify +EXPORT_SYMBOL_GPL vmlinux 0x89bfe270 __wake_up_locked_key_bookmark +EXPORT_SYMBOL_GPL vmlinux 0x89cbedd9 fwnode_get_next_parent +EXPORT_SYMBOL_GPL vmlinux 0x89cf2406 snd_soc_lookup_component_nolocked +EXPORT_SYMBOL_GPL vmlinux 0x89d2aaa4 regmap_attach_dev +EXPORT_SYMBOL_GPL vmlinux 0x89e343ec ata_sff_wait_after_reset +EXPORT_SYMBOL_GPL vmlinux 0x8a346891 __platform_driver_register +EXPORT_SYMBOL_GPL vmlinux 0x8a3f84ba linear_range_get_selector_low +EXPORT_SYMBOL_GPL vmlinux 0x8a421f3b ata_pci_device_do_resume +EXPORT_SYMBOL_GPL vmlinux 0x8a46ca1e blk_mq_unfreeze_queue +EXPORT_SYMBOL_GPL vmlinux 0x8a4837a0 zap_vma_ptes +EXPORT_SYMBOL_GPL vmlinux 0x8a543738 da9052_request_irq +EXPORT_SYMBOL_GPL vmlinux 0x8a554a36 mpc8xxx_spi_strmode +EXPORT_SYMBOL_GPL vmlinux 0x8a5634f0 pci_bridge_secondary_bus_reset +EXPORT_SYMBOL_GPL vmlinux 0x8a62b81b sfp_upstream_stop +EXPORT_SYMBOL_GPL vmlinux 0x8a7519e0 snd_soc_component_update_bits +EXPORT_SYMBOL_GPL vmlinux 0x8a7becb8 ata_host_init +EXPORT_SYMBOL_GPL vmlinux 0x8a85e51e rio_mport_chk_dev_access +EXPORT_SYMBOL_GPL vmlinux 0x8a8642b4 regulator_is_enabled_regmap +EXPORT_SYMBOL_GPL vmlinux 0x8a93d9e6 blkdev_zone_mgmt +EXPORT_SYMBOL_GPL vmlinux 0x8aa02161 alarm_cancel +EXPORT_SYMBOL_GPL vmlinux 0x8aad89f7 exynos_get_pmu_regmap +EXPORT_SYMBOL_GPL vmlinux 0x8ab35768 cpuidle_unregister_driver +EXPORT_SYMBOL_GPL vmlinux 0x8abacc47 get_max_files +EXPORT_SYMBOL_GPL vmlinux 0x8abe83b9 wbt_enable_default +EXPORT_SYMBOL_GPL vmlinux 0x8abeff40 tc3589x_reg_write +EXPORT_SYMBOL_GPL vmlinux 0x8aed3677 ata_sff_error_handler +EXPORT_SYMBOL_GPL vmlinux 0x8af08bfd iommu_map_sg_atomic +EXPORT_SYMBOL_GPL vmlinux 0x8af6d20a xdp_return_frame +EXPORT_SYMBOL_GPL vmlinux 0x8b149c36 clk_is_match +EXPORT_SYMBOL_GPL vmlinux 0x8b178604 iommu_aux_attach_device +EXPORT_SYMBOL_GPL vmlinux 0x8b347a4c gpiochip_irqchip_add_domain +EXPORT_SYMBOL_GPL vmlinux 0x8b5103e0 iomap_releasepage +EXPORT_SYMBOL_GPL vmlinux 0x8b529ce4 nvmem_add_cell_lookups +EXPORT_SYMBOL_GPL vmlinux 0x8b5a1493 iptunnel_handle_offloads +EXPORT_SYMBOL_GPL vmlinux 0x8b616927 usb_sg_wait +EXPORT_SYMBOL_GPL vmlinux 0x8b6a3196 devm_regulator_unregister_supply_alias +EXPORT_SYMBOL_GPL vmlinux 0x8b7a1fe8 kthread_queue_work +EXPORT_SYMBOL_GPL vmlinux 0x8b7d0fb4 tty_set_ldisc +EXPORT_SYMBOL_GPL vmlinux 0x8b7f69de phy_package_leave +EXPORT_SYMBOL_GPL vmlinux 0x8b866269 snd_soc_bytes_info +EXPORT_SYMBOL_GPL vmlinux 0x8b91f7a7 nr_swap_pages +EXPORT_SYMBOL_GPL vmlinux 0x8b9341b5 snd_soc_dapm_free +EXPORT_SYMBOL_GPL vmlinux 0x8bbf1dba devm_pinctrl_register +EXPORT_SYMBOL_GPL vmlinux 0x8bdaafb6 tps65217_reg_read +EXPORT_SYMBOL_GPL vmlinux 0x8bdf34c5 fwnode_get_next_child_node +EXPORT_SYMBOL_GPL vmlinux 0x8bebfe9a irq_of_parse_and_map +EXPORT_SYMBOL_GPL vmlinux 0x8bf7d78b iomap_writepages +EXPORT_SYMBOL_GPL vmlinux 0x8c0215f2 pm_system_wakeup +EXPORT_SYMBOL_GPL vmlinux 0x8c03d20c destroy_workqueue +EXPORT_SYMBOL_GPL vmlinux 0x8c073793 crypto_register_skcipher +EXPORT_SYMBOL_GPL vmlinux 0x8c1873e1 sm501_modify_reg +EXPORT_SYMBOL_GPL vmlinux 0x8c202fcd linear_hugepage_index +EXPORT_SYMBOL_GPL vmlinux 0x8c2921e2 __tracepoint_pelt_irq_tp +EXPORT_SYMBOL_GPL vmlinux 0x8c2ad8f1 ahci_platform_init_host +EXPORT_SYMBOL_GPL vmlinux 0x8c39b9f6 uprobe_register +EXPORT_SYMBOL_GPL vmlinux 0x8c3d7cef kthread_park +EXPORT_SYMBOL_GPL vmlinux 0x8c3de2a1 serial8250_do_set_divisor +EXPORT_SYMBOL_GPL vmlinux 0x8c40e60f crypto_stats_rng_seed +EXPORT_SYMBOL_GPL vmlinux 0x8c479745 __cpuhp_state_remove_instance +EXPORT_SYMBOL_GPL vmlinux 0x8c490a00 rio_dev_put +EXPORT_SYMBOL_GPL vmlinux 0x8c743fb6 reset_control_status +EXPORT_SYMBOL_GPL vmlinux 0x8c7bd877 __tracepoint_br_fdb_external_learn_add +EXPORT_SYMBOL_GPL vmlinux 0x8c89e3b8 usb_phy_roothub_power_off +EXPORT_SYMBOL_GPL vmlinux 0x8c921433 of_genpd_remove_last +EXPORT_SYMBOL_GPL vmlinux 0x8c9ca066 of_platform_device_destroy +EXPORT_SYMBOL_GPL vmlinux 0x8ca34bc1 snd_soc_dapm_init +EXPORT_SYMBOL_GPL vmlinux 0x8ca5b844 tps65217_clear_bits +EXPORT_SYMBOL_GPL vmlinux 0x8caa0491 devres_alloc_node +EXPORT_SYMBOL_GPL vmlinux 0x8caeeeaa rhashtable_destroy +EXPORT_SYMBOL_GPL vmlinux 0x8cb8635c trace_array_get_by_name +EXPORT_SYMBOL_GPL vmlinux 0x8cc6992c devm_mbox_controller_register +EXPORT_SYMBOL_GPL vmlinux 0x8cd05e15 snd_soc_component_test_bits +EXPORT_SYMBOL_GPL vmlinux 0x8cdad47e regulator_bulk_register_supply_alias +EXPORT_SYMBOL_GPL vmlinux 0x8cfa721b efivar_entry_set_get_size +EXPORT_SYMBOL_GPL vmlinux 0x8d09a35d snd_card_rw_proc_new +EXPORT_SYMBOL_GPL vmlinux 0x8d0b6b86 badblocks_exit +EXPORT_SYMBOL_GPL vmlinux 0x8d22bb58 iommu_group_alloc +EXPORT_SYMBOL_GPL vmlinux 0x8d46f294 edac_device_free_ctl_info +EXPORT_SYMBOL_GPL vmlinux 0x8d5fd735 phy_gbit_features +EXPORT_SYMBOL_GPL vmlinux 0x8d6a8259 nand_op_parser_exec_op +EXPORT_SYMBOL_GPL vmlinux 0x8d7bc776 pkcs7_verify +EXPORT_SYMBOL_GPL vmlinux 0x8d864069 snd_pcm_rate_range_to_bits +EXPORT_SYMBOL_GPL vmlinux 0x8d867b07 usb_disable_lpm +EXPORT_SYMBOL_GPL vmlinux 0x8da18664 irq_domain_remove +EXPORT_SYMBOL_GPL vmlinux 0x8da47cf9 soc_ac97_ops +EXPORT_SYMBOL_GPL vmlinux 0x8dab2ad7 fscrypt_ioctl_remove_key_all_users +EXPORT_SYMBOL_GPL vmlinux 0x8dc11669 lpddr2_jedec_addressing_table +EXPORT_SYMBOL_GPL vmlinux 0x8dc57e7d thermal_zone_device_register +EXPORT_SYMBOL_GPL vmlinux 0x8dc89e51 setfl +EXPORT_SYMBOL_GPL vmlinux 0x8dcb9435 kill_dev_dax +EXPORT_SYMBOL_GPL vmlinux 0x8dd93b74 fsverity_file_open +EXPORT_SYMBOL_GPL vmlinux 0x8e03530c pci_destroy_slot +EXPORT_SYMBOL_GPL vmlinux 0x8e0d010b mmc_sanitize +EXPORT_SYMBOL_GPL vmlinux 0x8e1621cf fscrypt_match_name +EXPORT_SYMBOL_GPL vmlinux 0x8e228955 regulator_get_voltage +EXPORT_SYMBOL_GPL vmlinux 0x8e4b63a6 hisi_clk_register_gate_sep +EXPORT_SYMBOL_GPL vmlinux 0x8e4e69f6 balloon_page_alloc +EXPORT_SYMBOL_GPL vmlinux 0x8e4eb451 bpf_sk_storage_diag_free +EXPORT_SYMBOL_GPL vmlinux 0x8e51a3c7 dev_pm_opp_cpumask_remove_table +EXPORT_SYMBOL_GPL vmlinux 0x8e521a7d fscrypt_ioctl_get_nonce +EXPORT_SYMBOL_GPL vmlinux 0x8e6b94f7 spi_controller_suspend +EXPORT_SYMBOL_GPL vmlinux 0x8e6bb7fc ata_port_freeze +EXPORT_SYMBOL_GPL vmlinux 0x8e71dfc9 wakeup_source_register +EXPORT_SYMBOL_GPL vmlinux 0x8e754863 rio_map_inb_region +EXPORT_SYMBOL_GPL vmlinux 0x8e764e71 __vfs_setxattr_locked +EXPORT_SYMBOL_GPL vmlinux 0x8e78077e usb_for_each_dev +EXPORT_SYMBOL_GPL vmlinux 0x8e7cd981 sdhci_setup_host +EXPORT_SYMBOL_GPL vmlinux 0x8e7d6697 rio_release_outb_dbell +EXPORT_SYMBOL_GPL vmlinux 0x8e88e040 fixed_phy_register +EXPORT_SYMBOL_GPL vmlinux 0x8e8a92a0 regulator_set_voltage_sel_regmap +EXPORT_SYMBOL_GPL vmlinux 0x8e8cee63 ata_sff_thaw +EXPORT_SYMBOL_GPL vmlinux 0x8e90a5cc rio_del_mport_pw_handler +EXPORT_SYMBOL_GPL vmlinux 0x8eab6847 of_icc_xlate_onecell +EXPORT_SYMBOL_GPL vmlinux 0x8eae8dfd usb_find_common_endpoints +EXPORT_SYMBOL_GPL vmlinux 0x8eb31461 xfrm_dev_resume +EXPORT_SYMBOL_GPL vmlinux 0x8eb8afeb sock_diag_check_cookie +EXPORT_SYMBOL_GPL vmlinux 0x8ebf1260 dev_attr_unload_heads +EXPORT_SYMBOL_GPL vmlinux 0x8ec40789 pci_reset_bus +EXPORT_SYMBOL_GPL vmlinux 0x8ed93020 debugfs_create_u32_array +EXPORT_SYMBOL_GPL vmlinux 0x8ee81268 usb_anchor_urb +EXPORT_SYMBOL_GPL vmlinux 0x8eeb5b9f serial8250_rx_chars +EXPORT_SYMBOL_GPL vmlinux 0x8eee3399 dax_read_unlock +EXPORT_SYMBOL_GPL vmlinux 0x8f0748af rcu_expedite_gp +EXPORT_SYMBOL_GPL vmlinux 0x8f13411c rio_unregister_driver +EXPORT_SYMBOL_GPL vmlinux 0x8f1a8cf9 rsa_parse_pub_key +EXPORT_SYMBOL_GPL vmlinux 0x8f1c0d30 subsys_virtual_register +EXPORT_SYMBOL_GPL vmlinux 0x8f3484f2 regulator_get_optional +EXPORT_SYMBOL_GPL vmlinux 0x8f3f3d10 tpm_pcr_read +EXPORT_SYMBOL_GPL vmlinux 0x8f4399fd devm_regulator_bulk_register_supply_alias +EXPORT_SYMBOL_GPL vmlinux 0x8f6b16a9 relay_reset +EXPORT_SYMBOL_GPL vmlinux 0x8f6cee77 __round_jiffies_relative +EXPORT_SYMBOL_GPL vmlinux 0x8f725e67 probes_decode_arm_table +EXPORT_SYMBOL_GPL vmlinux 0x8f786bee fs_umode_to_dtype +EXPORT_SYMBOL_GPL vmlinux 0x8f79c4c5 __rtc_register_device +EXPORT_SYMBOL_GPL vmlinux 0x8f8a05cd extcon_get_property_capability +EXPORT_SYMBOL_GPL vmlinux 0x8f8eb34e cpufreq_dbs_governor_start +EXPORT_SYMBOL_GPL vmlinux 0x8f90c702 alloc_vm_area +EXPORT_SYMBOL_GPL vmlinux 0x8fa833a1 pci_msi_mask_irq +EXPORT_SYMBOL_GPL vmlinux 0x8fb82178 trace_event_raw_init +EXPORT_SYMBOL_GPL vmlinux 0x8fba664e iommu_domain_free +EXPORT_SYMBOL_GPL vmlinux 0x8fcff898 synchronize_srcu +EXPORT_SYMBOL_GPL vmlinux 0x8fdac80f of_dma_controller_free +EXPORT_SYMBOL_GPL vmlinux 0x8ff4c9ef dev_pm_qos_hide_flags +EXPORT_SYMBOL_GPL vmlinux 0x900c88cd sbitmap_show +EXPORT_SYMBOL_GPL vmlinux 0x901c1eba of_get_fb_videomode +EXPORT_SYMBOL_GPL vmlinux 0x901c6c99 __tracepoint_neigh_update_done +EXPORT_SYMBOL_GPL vmlinux 0x90284f96 balloon_page_enqueue +EXPORT_SYMBOL_GPL vmlinux 0x903b627c list_lru_isolate_move +EXPORT_SYMBOL_GPL vmlinux 0x90484d08 regmap_field_update_bits_base +EXPORT_SYMBOL_GPL vmlinux 0x9048b20c tcp_cong_avoid_ai +EXPORT_SYMBOL_GPL vmlinux 0x9056ad2a usb_gen_phy_shutdown +EXPORT_SYMBOL_GPL vmlinux 0x90589ae6 usb_bulk_msg +EXPORT_SYMBOL_GPL vmlinux 0x9066aea9 cn_add_callback +EXPORT_SYMBOL_GPL vmlinux 0x90688bcd devlink_info_driver_name_put +EXPORT_SYMBOL_GPL vmlinux 0x906dd327 usb_unpoison_anchored_urbs +EXPORT_SYMBOL_GPL vmlinux 0x90722761 devlink_port_params_unregister +EXPORT_SYMBOL_GPL vmlinux 0x9075994a sysfs_update_group +EXPORT_SYMBOL_GPL vmlinux 0x907f2fcd rio_request_outb_dbell +EXPORT_SYMBOL_GPL vmlinux 0x90955a3f mmu_notifier_put +EXPORT_SYMBOL_GPL vmlinux 0x90c1c070 ahci_sdev_attrs +EXPORT_SYMBOL_GPL vmlinux 0x90d61287 dm_accept_partial_bio +EXPORT_SYMBOL_GPL vmlinux 0x90d9a8cf ncsi_register_dev +EXPORT_SYMBOL_GPL vmlinux 0x90ec0b50 disable_kprobe +EXPORT_SYMBOL_GPL vmlinux 0x90ec9ec4 snd_soc_of_parse_audio_routing +EXPORT_SYMBOL_GPL vmlinux 0x90fa9325 rio_mport_initialize +EXPORT_SYMBOL_GPL vmlinux 0x910586d6 rio_mport_class +EXPORT_SYMBOL_GPL vmlinux 0x9111ff80 devlink_port_attrs_pci_pf_set +EXPORT_SYMBOL_GPL vmlinux 0x9120466e fb_deferred_io_open +EXPORT_SYMBOL_GPL vmlinux 0x91367738 sdio_writeb_readb +EXPORT_SYMBOL_GPL vmlinux 0x914e405e gpiod_get_raw_array_value +EXPORT_SYMBOL_GPL vmlinux 0x91519a16 dev_pm_opp_of_cpumask_add_table +EXPORT_SYMBOL_GPL vmlinux 0x915c2647 fork_usermode_blob +EXPORT_SYMBOL_GPL vmlinux 0x91637e86 unregister_net_sysctl_table +EXPORT_SYMBOL_GPL vmlinux 0x91731130 devm_regulator_unregister_notifier +EXPORT_SYMBOL_GPL vmlinux 0x91748d21 bus_remove_file +EXPORT_SYMBOL_GPL vmlinux 0x91938636 x509_cert_parse +EXPORT_SYMBOL_GPL vmlinux 0x91a55068 public_key_free +EXPORT_SYMBOL_GPL vmlinux 0x91c6e5b0 pcap_to_irq +EXPORT_SYMBOL_GPL vmlinux 0x91da135d __audit_inode_child +EXPORT_SYMBOL_GPL vmlinux 0x91f7582d cpufreq_register_driver +EXPORT_SYMBOL_GPL vmlinux 0x92024dda pci_slots_kset +EXPORT_SYMBOL_GPL vmlinux 0x921c96a8 pinctrl_force_default +EXPORT_SYMBOL_GPL vmlinux 0x922730c0 pm_generic_resume +EXPORT_SYMBOL_GPL vmlinux 0x924954fc __devm_regmap_init_i2c +EXPORT_SYMBOL_GPL vmlinux 0x924c46f8 zs_unmap_object +EXPORT_SYMBOL_GPL vmlinux 0x924ce40f blkcg_root_css +EXPORT_SYMBOL_GPL vmlinux 0x9259c7a6 dax_attribute_group +EXPORT_SYMBOL_GPL vmlinux 0x925ec367 clk_bulk_get_optional +EXPORT_SYMBOL_GPL vmlinux 0x9267012b efivar_entry_delete +EXPORT_SYMBOL_GPL vmlinux 0x9282f433 __tracepoint_devlink_hwmsg +EXPORT_SYMBOL_GPL vmlinux 0x9285ceb2 rhashtable_init +EXPORT_SYMBOL_GPL vmlinux 0x929745be ahci_do_softreset +EXPORT_SYMBOL_GPL vmlinux 0x929c4168 device_property_read_string_array +EXPORT_SYMBOL_GPL vmlinux 0x92a5070f hisi_clk_alloc +EXPORT_SYMBOL_GPL vmlinux 0x92b57248 flush_work +EXPORT_SYMBOL_GPL vmlinux 0x92b5bdf5 ip_route_output_flow +EXPORT_SYMBOL_GPL vmlinux 0x92cc87a6 validate_xmit_skb_list +EXPORT_SYMBOL_GPL vmlinux 0x92d1e61a rio_pw_enable +EXPORT_SYMBOL_GPL vmlinux 0x92d31cfb fixed_phy_add +EXPORT_SYMBOL_GPL vmlinux 0x92d65713 usb_driver_set_configuration +EXPORT_SYMBOL_GPL vmlinux 0x92d6d405 kernfs_put +EXPORT_SYMBOL_GPL vmlinux 0x92db8f68 do_trace_rcu_torture_read +EXPORT_SYMBOL_GPL vmlinux 0x92e807b0 crypto_unregister_acomps +EXPORT_SYMBOL_GPL vmlinux 0x92ee13fa compat_only_sysfs_link_entry_to_kobj +EXPORT_SYMBOL_GPL vmlinux 0x9314330a skb_complete_wifi_ack +EXPORT_SYMBOL_GPL vmlinux 0x93143761 devm_snd_soc_register_card +EXPORT_SYMBOL_GPL vmlinux 0x93170790 blk_fill_rwbs +EXPORT_SYMBOL_GPL vmlinux 0x9322e7b3 sdio_release_host +EXPORT_SYMBOL_GPL vmlinux 0x93255b2b ring_buffer_lock_reserve +EXPORT_SYMBOL_GPL vmlinux 0x932b42b5 tpm_is_tpm2 +EXPORT_SYMBOL_GPL vmlinux 0x932c8d7a linear_range_get_value_array +EXPORT_SYMBOL_GPL vmlinux 0x93330f95 inode_congested +EXPORT_SYMBOL_GPL vmlinux 0x933ac530 device_del +EXPORT_SYMBOL_GPL vmlinux 0x933bf7e1 snd_soc_info_volsw_range +EXPORT_SYMBOL_GPL vmlinux 0x93478487 __hwspin_trylock +EXPORT_SYMBOL_GPL vmlinux 0x934da8f0 key_set_timeout +EXPORT_SYMBOL_GPL vmlinux 0x937c911c tty_buffer_unlock_exclusive +EXPORT_SYMBOL_GPL vmlinux 0x93805369 software_node_register_node_group +EXPORT_SYMBOL_GPL vmlinux 0x9380e2bd irq_chip_set_affinity_parent +EXPORT_SYMBOL_GPL vmlinux 0x9384cd49 ata_tf_from_fis +EXPORT_SYMBOL_GPL vmlinux 0x9386cdb8 i2c_for_each_dev +EXPORT_SYMBOL_GPL vmlinux 0x93952d34 edac_pci_handle_pe +EXPORT_SYMBOL_GPL vmlinux 0x9396c787 __wake_up_locked_sync_key +EXPORT_SYMBOL_GPL vmlinux 0x93a760f1 nvdimm_badblocks_populate +EXPORT_SYMBOL_GPL vmlinux 0x93cbc96b pci_host_common_remove +EXPORT_SYMBOL_GPL vmlinux 0x93d201aa sdio_memcpy_fromio +EXPORT_SYMBOL_GPL vmlinux 0x93dd433d gpiod_get_index +EXPORT_SYMBOL_GPL vmlinux 0x93e99796 __put_mtd_device +EXPORT_SYMBOL_GPL vmlinux 0x93edef07 devlink_health_report +EXPORT_SYMBOL_GPL vmlinux 0x93f22aa7 get_cpu_device +EXPORT_SYMBOL_GPL vmlinux 0x9405860e devlink_flash_update_status_notify +EXPORT_SYMBOL_GPL vmlinux 0x941a3d4f clk_hw_unregister_fixed_rate +EXPORT_SYMBOL_GPL vmlinux 0x941f2aaa eventfd_ctx_put +EXPORT_SYMBOL_GPL vmlinux 0x9422f939 __blkg_prfill_rwstat +EXPORT_SYMBOL_GPL vmlinux 0x9425bb34 nvmem_dev_name +EXPORT_SYMBOL_GPL vmlinux 0x9430b198 trace_dump_stack +EXPORT_SYMBOL_GPL vmlinux 0x94400024 gpiochip_remove +EXPORT_SYMBOL_GPL vmlinux 0x94416986 fwnode_graph_get_port_parent +EXPORT_SYMBOL_GPL vmlinux 0x9441aa29 rtc_set_time +EXPORT_SYMBOL_GPL vmlinux 0x9450b066 md_start +EXPORT_SYMBOL_GPL vmlinux 0x945145dc soc_device_match +EXPORT_SYMBOL_GPL vmlinux 0x945a8b5b usb_sg_init +EXPORT_SYMBOL_GPL vmlinux 0x945d9eb7 mddev_init_writes_pending +EXPORT_SYMBOL_GPL vmlinux 0x946dd559 sha224_zero_message_hash +EXPORT_SYMBOL_GPL vmlinux 0x9483c301 scsi_device_from_queue +EXPORT_SYMBOL_GPL vmlinux 0x948ccdac dev_coredumpm +EXPORT_SYMBOL_GPL vmlinux 0x949b5176 devlink_region_snapshot_create +EXPORT_SYMBOL_GPL vmlinux 0x94a06a7a edac_device_del_device +EXPORT_SYMBOL_GPL vmlinux 0x94a6de24 pci_dev_run_wake +EXPORT_SYMBOL_GPL vmlinux 0x94ab1ddb debugfs_create_file +EXPORT_SYMBOL_GPL vmlinux 0x94abb745 sprint_oid +EXPORT_SYMBOL_GPL vmlinux 0x94d3078a perf_get_aux +EXPORT_SYMBOL_GPL vmlinux 0x94d6d8ad spi_controller_resume +EXPORT_SYMBOL_GPL vmlinux 0x94dc32d2 badblocks_clear +EXPORT_SYMBOL_GPL vmlinux 0x94e28f5a verify_pkcs7_signature +EXPORT_SYMBOL_GPL vmlinux 0x94f56283 raw_abort +EXPORT_SYMBOL_GPL vmlinux 0x94f67c6f dma_async_device_channel_register +EXPORT_SYMBOL_GPL vmlinux 0x9504df26 irq_wake_thread +EXPORT_SYMBOL_GPL vmlinux 0x9509a0b1 kernel_kobj +EXPORT_SYMBOL_GPL vmlinux 0x951a2773 crypto_has_alg +EXPORT_SYMBOL_GPL vmlinux 0x951d23e7 tcp_twsk_destructor +EXPORT_SYMBOL_GPL vmlinux 0x952664c5 do_exit +EXPORT_SYMBOL_GPL vmlinux 0x9532a42b usb_set_device_state +EXPORT_SYMBOL_GPL vmlinux 0x95352330 udp_destruct_sock +EXPORT_SYMBOL_GPL vmlinux 0x953e1b9e ktime_get_real_seconds +EXPORT_SYMBOL_GPL vmlinux 0x954fc624 dm_hold +EXPORT_SYMBOL_GPL vmlinux 0x955b0e2e kthread_worker_fn +EXPORT_SYMBOL_GPL vmlinux 0x956ac400 ring_buffer_dropped_events_cpu +EXPORT_SYMBOL_GPL vmlinux 0x9572e423 platform_device_add_resources +EXPORT_SYMBOL_GPL vmlinux 0x957a6e8a ata_pci_sff_activate_host +EXPORT_SYMBOL_GPL vmlinux 0x958df3ac zs_free +EXPORT_SYMBOL_GPL vmlinux 0x959a211f dst_cache_set_ip4 +EXPORT_SYMBOL_GPL vmlinux 0x959a8178 rtc_update_irq_enable +EXPORT_SYMBOL_GPL vmlinux 0x959ec5f5 call_rcu_tasks +EXPORT_SYMBOL_GPL vmlinux 0x95b82cac nl_table +EXPORT_SYMBOL_GPL vmlinux 0x95bc9078 btree_free +EXPORT_SYMBOL_GPL vmlinux 0x95e18249 mnt_want_write +EXPORT_SYMBOL_GPL vmlinux 0x95ef1ccc dmi_memdev_size +EXPORT_SYMBOL_GPL vmlinux 0x95f10843 pm_genpd_remove_subdomain +EXPORT_SYMBOL_GPL vmlinux 0x961286e0 ring_buffer_read_events_cpu +EXPORT_SYMBOL_GPL vmlinux 0x9613488b espintcp_push_skb +EXPORT_SYMBOL_GPL vmlinux 0x962b90c6 security_inode_setattr +EXPORT_SYMBOL_GPL vmlinux 0x9630728e amba_bustype +EXPORT_SYMBOL_GPL vmlinux 0x9647bf24 snd_pcm_lib_default_mmap +EXPORT_SYMBOL_GPL vmlinux 0x96554810 register_keyboard_notifier +EXPORT_SYMBOL_GPL vmlinux 0x965ba57e attribute_container_unregister +EXPORT_SYMBOL_GPL vmlinux 0x965d716b regulator_map_voltage_ascend +EXPORT_SYMBOL_GPL vmlinux 0x9660eaa0 snd_soc_register_card +EXPORT_SYMBOL_GPL vmlinux 0x967473cb ata_pio_need_iordy +EXPORT_SYMBOL_GPL vmlinux 0x968cf4d5 dummy_irq_chip +EXPORT_SYMBOL_GPL vmlinux 0x968f9a23 efivar_entry_iter_begin +EXPORT_SYMBOL_GPL vmlinux 0x96a74354 nand_deselect_target +EXPORT_SYMBOL_GPL vmlinux 0x96bce2f2 kmsg_dump_get_buffer +EXPORT_SYMBOL_GPL vmlinux 0x96ca63f5 __rht_bucket_nested +EXPORT_SYMBOL_GPL vmlinux 0x96dc45ed lwtunnel_encap_del_ops +EXPORT_SYMBOL_GPL vmlinux 0x96dce808 pinctrl_dev_get_name +EXPORT_SYMBOL_GPL vmlinux 0x96e344c9 usb_enable_autosuspend +EXPORT_SYMBOL_GPL vmlinux 0x96f82e5f mtd_ooblayout_ecc +EXPORT_SYMBOL_GPL vmlinux 0x9704a2a3 usb_role_switch_get +EXPORT_SYMBOL_GPL vmlinux 0x97084bcf cpufreq_dbs_governor_init +EXPORT_SYMBOL_GPL vmlinux 0x9714e0bb ktime_get_raw +EXPORT_SYMBOL_GPL vmlinux 0x971d61f0 hrtimer_try_to_cancel +EXPORT_SYMBOL_GPL vmlinux 0x97393658 snd_soc_tplg_widget_remove_all +EXPORT_SYMBOL_GPL vmlinux 0x974a824d dapm_kcontrol_get_value +EXPORT_SYMBOL_GPL vmlinux 0x975519c1 asymmetric_key_id_same +EXPORT_SYMBOL_GPL vmlinux 0x97641427 ping_seq_stop +EXPORT_SYMBOL_GPL vmlinux 0x9768c52b fwnode_handle_put +EXPORT_SYMBOL_GPL vmlinux 0x9783be9b usb_gadget_connect +EXPORT_SYMBOL_GPL vmlinux 0x9784bd09 sm501_find_clock +EXPORT_SYMBOL_GPL vmlinux 0x97861fc0 usb_find_interface +EXPORT_SYMBOL_GPL vmlinux 0x97b71dc9 btree_insert +EXPORT_SYMBOL_GPL vmlinux 0x97c9f34f rio_release_inb_pwrite +EXPORT_SYMBOL_GPL vmlinux 0x97ce3656 fib_rules_dump +EXPORT_SYMBOL_GPL vmlinux 0x97cf5f49 devm_spi_mem_dirmap_destroy +EXPORT_SYMBOL_GPL vmlinux 0x97d33644 __put_net +EXPORT_SYMBOL_GPL vmlinux 0x97d56612 sched_show_task +EXPORT_SYMBOL_GPL vmlinux 0x97de2b83 debug_locks_silent +EXPORT_SYMBOL_GPL vmlinux 0x97e7f902 trace_vbprintk +EXPORT_SYMBOL_GPL vmlinux 0x97ef9b0f vring_del_virtqueue +EXPORT_SYMBOL_GPL vmlinux 0x97f2b9b1 devres_destroy +EXPORT_SYMBOL_GPL vmlinux 0x98254ae0 ata_ehi_push_desc +EXPORT_SYMBOL_GPL vmlinux 0x98315ac4 regcache_cache_only +EXPORT_SYMBOL_GPL vmlinux 0x9833bc0c hvc_kick +EXPORT_SYMBOL_GPL vmlinux 0x983664a0 pm_genpd_init +EXPORT_SYMBOL_GPL vmlinux 0x983bf6a7 pm_runtime_no_callbacks +EXPORT_SYMBOL_GPL vmlinux 0x9845051e blk_mq_queue_inflight +EXPORT_SYMBOL_GPL vmlinux 0x98483039 smpboot_unregister_percpu_thread +EXPORT_SYMBOL_GPL vmlinux 0x98503a63 mpi_alloc +EXPORT_SYMBOL_GPL vmlinux 0x9851e7b6 pinctrl_register_and_init +EXPORT_SYMBOL_GPL vmlinux 0x985453e1 lease_unregister_notifier +EXPORT_SYMBOL_GPL vmlinux 0x98613c90 wm8350_reg_unlock +EXPORT_SYMBOL_GPL vmlinux 0x98643225 snd_soc_dapm_mux_update_power +EXPORT_SYMBOL_GPL vmlinux 0x98652e9d devm_pinctrl_get +EXPORT_SYMBOL_GPL vmlinux 0x986b03ee scsi_register_device_handler +EXPORT_SYMBOL_GPL vmlinux 0x986c051b __inet_lookup_established +EXPORT_SYMBOL_GPL vmlinux 0x986c6c14 sdhci_request_atomic +EXPORT_SYMBOL_GPL vmlinux 0x986e5829 find_vpid +EXPORT_SYMBOL_GPL vmlinux 0x987520e2 usb_find_common_endpoints_reverse +EXPORT_SYMBOL_GPL vmlinux 0x9879932b crypto_register_notifier +EXPORT_SYMBOL_GPL vmlinux 0x987efd5d irq_remove_generic_chip +EXPORT_SYMBOL_GPL vmlinux 0x989074ff kmsg_dump_reason_str +EXPORT_SYMBOL_GPL vmlinux 0x98937e75 iommu_set_fault_handler +EXPORT_SYMBOL_GPL vmlinux 0x98a8f3e9 nvdimm_bus_add_badrange +EXPORT_SYMBOL_GPL vmlinux 0x98c80026 wakeup_source_create +EXPORT_SYMBOL_GPL vmlinux 0x98d990f7 fib_rules_register +EXPORT_SYMBOL_GPL vmlinux 0x98e34d12 crypto_register_kpp +EXPORT_SYMBOL_GPL vmlinux 0x98e4a126 blk_poll +EXPORT_SYMBOL_GPL vmlinux 0x98e63b38 gpiod_get_array_value +EXPORT_SYMBOL_GPL vmlinux 0x98ee62b2 ring_buffer_record_disable_cpu +EXPORT_SYMBOL_GPL vmlinux 0x98f0a4a6 rt_mutex_timed_lock +EXPORT_SYMBOL_GPL vmlinux 0x98f16336 of_clk_get_from_provider +EXPORT_SYMBOL_GPL vmlinux 0x98f349ec usb_urb_ep_type_check +EXPORT_SYMBOL_GPL vmlinux 0x98fa1e20 dm_get_reserved_rq_based_ios +EXPORT_SYMBOL_GPL vmlinux 0x990a649d phy_reset +EXPORT_SYMBOL_GPL vmlinux 0x991f5472 __clocksource_update_freq_scale +EXPORT_SYMBOL_GPL vmlinux 0x99249659 __nf_ip6_route +EXPORT_SYMBOL_GPL vmlinux 0x99384613 sata_pmp_port_ops +EXPORT_SYMBOL_GPL vmlinux 0x9941b461 class_dev_iter_init +EXPORT_SYMBOL_GPL vmlinux 0x99504b9e sysfs_remove_group +EXPORT_SYMBOL_GPL vmlinux 0x995d1071 prof_on +EXPORT_SYMBOL_GPL vmlinux 0x9988ae1f pci_epf_unregister_driver +EXPORT_SYMBOL_GPL vmlinux 0x9990d847 find_module +EXPORT_SYMBOL_GPL vmlinux 0x99a825ca pci_ecam_map_bus +EXPORT_SYMBOL_GPL vmlinux 0x99b7191f dynevent_create +EXPORT_SYMBOL_GPL vmlinux 0x99c4b383 ping_unhash +EXPORT_SYMBOL_GPL vmlinux 0x99c6741c nvdimm_name +EXPORT_SYMBOL_GPL vmlinux 0x99d54feb tty_set_termios +EXPORT_SYMBOL_GPL vmlinux 0x99d65ea4 dev_pm_opp_get_level +EXPORT_SYMBOL_GPL vmlinux 0x99f2d00a sysfs_emit_at +EXPORT_SYMBOL_GPL vmlinux 0x9a048866 user_preparse +EXPORT_SYMBOL_GPL vmlinux 0x9a0e3b8a __regmap_init +EXPORT_SYMBOL_GPL vmlinux 0x9a1157a4 sock_diag_unregister +EXPORT_SYMBOL_GPL vmlinux 0x9a11a0fc crypto_attr_alg_name +EXPORT_SYMBOL_GPL vmlinux 0x9a158be4 device_for_each_child +EXPORT_SYMBOL_GPL vmlinux 0x9a1a7e55 devres_remove_group +EXPORT_SYMBOL_GPL vmlinux 0x9a1aad5f crypto_mod_put +EXPORT_SYMBOL_GPL vmlinux 0x9a4081c7 powercap_register_zone +EXPORT_SYMBOL_GPL vmlinux 0x9a40eff3 kick_process +EXPORT_SYMBOL_GPL vmlinux 0x9a5505a8 of_property_match_string +EXPORT_SYMBOL_GPL vmlinux 0x9a624f86 lochnagar_update_config +EXPORT_SYMBOL_GPL vmlinux 0x9a6a656c device_create_bin_file +EXPORT_SYMBOL_GPL vmlinux 0x9a76d5c1 gpiod_set_transitory +EXPORT_SYMBOL_GPL vmlinux 0x9a77aaae serial8250_em485_config +EXPORT_SYMBOL_GPL vmlinux 0x9a8a5b24 regmap_noinc_read +EXPORT_SYMBOL_GPL vmlinux 0x9a9d434f thermal_zone_of_sensor_unregister +EXPORT_SYMBOL_GPL vmlinux 0x9a9e699b devfreq_event_add_edev +EXPORT_SYMBOL_GPL vmlinux 0x9a9f7818 __fscrypt_prepare_symlink +EXPORT_SYMBOL_GPL vmlinux 0x9aaa6d68 clk_gate_restore_context +EXPORT_SYMBOL_GPL vmlinux 0x9ab1009d power_supply_set_battery_charged +EXPORT_SYMBOL_GPL vmlinux 0x9ab3fddf devlink_resource_size_get +EXPORT_SYMBOL_GPL vmlinux 0x9ab845bd thermal_zone_get_offset +EXPORT_SYMBOL_GPL vmlinux 0x9abc49c1 pm_generic_suspend +EXPORT_SYMBOL_GPL vmlinux 0x9abe68b5 dpm_for_each_dev +EXPORT_SYMBOL_GPL vmlinux 0x9abfb3a6 dma_get_merge_boundary +EXPORT_SYMBOL_GPL vmlinux 0x9ac05eec pinctrl_lookup_state +EXPORT_SYMBOL_GPL vmlinux 0x9ac11b74 suspend_set_ops +EXPORT_SYMBOL_GPL vmlinux 0x9ad56d2d __tracepoint_block_split +EXPORT_SYMBOL_GPL vmlinux 0x9ae6f953 replace_page_cache_page +EXPORT_SYMBOL_GPL vmlinux 0x9aeacb87 ring_buffer_iter_empty +EXPORT_SYMBOL_GPL vmlinux 0x9af07c4e __module_text_address +EXPORT_SYMBOL_GPL vmlinux 0x9afb26c6 pci_epc_get_msix +EXPORT_SYMBOL_GPL vmlinux 0x9b0749a4 of_get_named_gpio_flags +EXPORT_SYMBOL_GPL vmlinux 0x9b0b59e5 kill_mtd_super +EXPORT_SYMBOL_GPL vmlinux 0x9b145063 genpd_dev_pm_attach +EXPORT_SYMBOL_GPL vmlinux 0x9b1a00aa dev_coredumpsg +EXPORT_SYMBOL_GPL vmlinux 0x9b34b180 __rtnl_link_register +EXPORT_SYMBOL_GPL vmlinux 0x9b4d657d xfrm_audit_state_add +EXPORT_SYMBOL_GPL vmlinux 0x9b555c8c pm_suspend_default_s2idle +EXPORT_SYMBOL_GPL vmlinux 0x9b6ec967 ring_buffer_size +EXPORT_SYMBOL_GPL vmlinux 0x9b7faae1 kthread_queue_delayed_work +EXPORT_SYMBOL_GPL vmlinux 0x9b896724 devlink_param_value_str_fill +EXPORT_SYMBOL_GPL vmlinux 0x9b9071cb get_old_itimerspec32 +EXPORT_SYMBOL_GPL vmlinux 0x9b92d16e pinctrl_gpio_set_config +EXPORT_SYMBOL_GPL vmlinux 0x9b9fba46 dw_pcie_ep_init_complete +EXPORT_SYMBOL_GPL vmlinux 0x9bc393b7 devm_power_supply_get_by_phandle +EXPORT_SYMBOL_GPL vmlinux 0x9bc9d514 led_classdev_notify_brightness_hw_changed +EXPORT_SYMBOL_GPL vmlinux 0x9bcf9609 phy_check_downshift +EXPORT_SYMBOL_GPL vmlinux 0x9bd44a8a __kernel_write +EXPORT_SYMBOL_GPL vmlinux 0x9be872c6 sdhci_send_tuning +EXPORT_SYMBOL_GPL vmlinux 0x9bece81b mpi_cmp_ui +EXPORT_SYMBOL_GPL vmlinux 0x9bf273fc of_pwm_xlate_with_flags +EXPORT_SYMBOL_GPL vmlinux 0x9c1e52fe usb_disable_xhci_ports +EXPORT_SYMBOL_GPL vmlinux 0x9c1ff06d xdp_attachment_setup +EXPORT_SYMBOL_GPL vmlinux 0x9c219f81 kthread_flush_worker +EXPORT_SYMBOL_GPL vmlinux 0x9c22780c usb_queue_reset_device +EXPORT_SYMBOL_GPL vmlinux 0x9c2ef5da handle_fasteoi_irq +EXPORT_SYMBOL_GPL vmlinux 0x9c340175 mtd_ooblayout_free +EXPORT_SYMBOL_GPL vmlinux 0x9c6e2b88 posix_acl_access_xattr_handler +EXPORT_SYMBOL_GPL vmlinux 0x9c6febfc add_uevent_var +EXPORT_SYMBOL_GPL vmlinux 0x9c769977 dm_internal_resume_fast +EXPORT_SYMBOL_GPL vmlinux 0x9c803020 usb_phy_roothub_power_on +EXPORT_SYMBOL_GPL vmlinux 0x9ca480cc clk_gate_is_enabled +EXPORT_SYMBOL_GPL vmlinux 0x9ca83df2 __register_mtd_parser +EXPORT_SYMBOL_GPL vmlinux 0x9cb3b99a user_describe +EXPORT_SYMBOL_GPL vmlinux 0x9cb4e92f __sock_recv_wifi_status +EXPORT_SYMBOL_GPL vmlinux 0x9cb64c30 ethnl_cable_test_free +EXPORT_SYMBOL_GPL vmlinux 0x9cc4f70a register_pm_notifier +EXPORT_SYMBOL_GPL vmlinux 0x9cd04165 snd_soc_set_runtime_hwparams +EXPORT_SYMBOL_GPL vmlinux 0x9cdeccd1 scsi_ioctl_block_when_processing_errors +EXPORT_SYMBOL_GPL vmlinux 0x9ce4d9d3 of_thermal_get_trip_points +EXPORT_SYMBOL_GPL vmlinux 0x9cf9974c devlink_port_type_eth_set +EXPORT_SYMBOL_GPL vmlinux 0x9d09e8ae ring_buffer_event_data +EXPORT_SYMBOL_GPL vmlinux 0x9d11c092 irq_domain_alloc_irqs_parent +EXPORT_SYMBOL_GPL vmlinux 0x9d14e9fc serial8250_get_port +EXPORT_SYMBOL_GPL vmlinux 0x9d22bd98 iomap_finish_ioends +EXPORT_SYMBOL_GPL vmlinux 0x9d2b9873 sk_clone_lock +EXPORT_SYMBOL_GPL vmlinux 0x9d324570 snd_soc_set_ac97_ops +EXPORT_SYMBOL_GPL vmlinux 0x9d5835a9 class_remove_file_ns +EXPORT_SYMBOL_GPL vmlinux 0x9d684b5c sata_pmp_error_handler +EXPORT_SYMBOL_GPL vmlinux 0x9d856f4c rio_lock_device +EXPORT_SYMBOL_GPL vmlinux 0x9dba64d7 alarm_restart +EXPORT_SYMBOL_GPL vmlinux 0x9dc7c435 subsys_interface_register +EXPORT_SYMBOL_GPL vmlinux 0x9dd3eff0 register_trace_event +EXPORT_SYMBOL_GPL vmlinux 0x9dd8f662 hvc_remove +EXPORT_SYMBOL_GPL vmlinux 0x9dde519b gpiod_put +EXPORT_SYMBOL_GPL vmlinux 0x9dfdf722 gpio_free_array +EXPORT_SYMBOL_GPL vmlinux 0x9e016686 digsig_verify +EXPORT_SYMBOL_GPL vmlinux 0x9e1be662 cpufreq_enable_fast_switch +EXPORT_SYMBOL_GPL vmlinux 0x9e22cf11 spi_bus_lock +EXPORT_SYMBOL_GPL vmlinux 0x9e472f5f snmp_fold_field +EXPORT_SYMBOL_GPL vmlinux 0x9e53bac8 devlink_trap_report +EXPORT_SYMBOL_GPL vmlinux 0x9e573671 nvm_get_chunk_meta +EXPORT_SYMBOL_GPL vmlinux 0x9e65a3e1 regulator_unregister_notifier +EXPORT_SYMBOL_GPL vmlinux 0x9e65ed2b __kprobe_event_add_fields +EXPORT_SYMBOL_GPL vmlinux 0x9e77d405 udp_init_sock +EXPORT_SYMBOL_GPL vmlinux 0x9e7d0640 ftrace_set_notrace +EXPORT_SYMBOL_GPL vmlinux 0x9e84016b powercap_register_control_type +EXPORT_SYMBOL_GPL vmlinux 0x9e8c81b2 pci_common_swizzle +EXPORT_SYMBOL_GPL vmlinux 0x9e98d13f rio_route_clr_table +EXPORT_SYMBOL_GPL vmlinux 0x9ea98bd0 devm_gpiod_get_optional +EXPORT_SYMBOL_GPL vmlinux 0x9eaa840c nf_queue +EXPORT_SYMBOL_GPL vmlinux 0x9eb52803 usb_ep_disable +EXPORT_SYMBOL_GPL vmlinux 0x9ed0175a pinctrl_get_group_pins +EXPORT_SYMBOL_GPL vmlinux 0x9ed3b368 mpc8xxx_spi_rx_buf_u16 +EXPORT_SYMBOL_GPL vmlinux 0x9ed554b3 unregister_keyboard_notifier +EXPORT_SYMBOL_GPL vmlinux 0x9ee3d06e crypto_skcipher_decrypt +EXPORT_SYMBOL_GPL vmlinux 0x9ee5e40a __ktime_divns +EXPORT_SYMBOL_GPL vmlinux 0x9efb3622 direct_make_request +EXPORT_SYMBOL_GPL vmlinux 0x9f105798 snd_soc_get_pcm_runtime +EXPORT_SYMBOL_GPL vmlinux 0x9f140889 usb_anchor_resume_wakeups +EXPORT_SYMBOL_GPL vmlinux 0x9f229b03 spi_take_timestamp_pre +EXPORT_SYMBOL_GPL vmlinux 0x9f2b9f83 mtd_pairing_groups +EXPORT_SYMBOL_GPL vmlinux 0x9f3bff02 metadata_dst_free_percpu +EXPORT_SYMBOL_GPL vmlinux 0x9f3db81a scmi_protocol_register +EXPORT_SYMBOL_GPL vmlinux 0x9f5ef9e0 trace_output_call +EXPORT_SYMBOL_GPL vmlinux 0x9f69a68f sk_psock_msg_verdict +EXPORT_SYMBOL_GPL vmlinux 0x9f6bd3d1 of_pm_clk_add_clks +EXPORT_SYMBOL_GPL vmlinux 0x9f88d56e store_sampling_rate +EXPORT_SYMBOL_GPL vmlinux 0x9f8f5b09 device_register +EXPORT_SYMBOL_GPL vmlinux 0x9fa657c0 sysfs_merge_group +EXPORT_SYMBOL_GPL vmlinux 0x9fc2f37b mtd_point +EXPORT_SYMBOL_GPL vmlinux 0x9fce80db fb_notifier_call_chain +EXPORT_SYMBOL_GPL vmlinux 0x9fdb59ed devm_clk_bulk_get_all +EXPORT_SYMBOL_GPL vmlinux 0x9fe899b7 get_cpu_idle_time +EXPORT_SYMBOL_GPL vmlinux 0x9fe939e1 mpi_powm +EXPORT_SYMBOL_GPL vmlinux 0x9ff329ed stmpe_reg_write +EXPORT_SYMBOL_GPL vmlinux 0x9ffe2d50 irq_chip_set_wake_parent +EXPORT_SYMBOL_GPL vmlinux 0xa0129e77 devm_init_badblocks +EXPORT_SYMBOL_GPL vmlinux 0xa01a8d9b nd_cmd_bus_desc +EXPORT_SYMBOL_GPL vmlinux 0xa02fe141 __serdev_device_driver_register +EXPORT_SYMBOL_GPL vmlinux 0xa041245b usb_asmedia_modifyflowcontrol +EXPORT_SYMBOL_GPL vmlinux 0xa049aae6 bpf_trace_run1 +EXPORT_SYMBOL_GPL vmlinux 0xa04f945a cpus_read_lock +EXPORT_SYMBOL_GPL vmlinux 0xa05390f1 devm_hwspin_lock_register +EXPORT_SYMBOL_GPL vmlinux 0xa06e9493 nand_prog_page_op +EXPORT_SYMBOL_GPL vmlinux 0xa0756198 wakeup_source_add +EXPORT_SYMBOL_GPL vmlinux 0xa0790786 blk_mq_update_nr_hw_queues +EXPORT_SYMBOL_GPL vmlinux 0xa07da3e9 ip6_datagram_connect +EXPORT_SYMBOL_GPL vmlinux 0xa0a43d01 blk_queue_set_zoned +EXPORT_SYMBOL_GPL vmlinux 0xa0a827f4 usb_interrupt_msg +EXPORT_SYMBOL_GPL vmlinux 0xa0abd32a add_mtd_blktrans_dev +EXPORT_SYMBOL_GPL vmlinux 0xa0bb87ea usb_autopm_put_interface_async +EXPORT_SYMBOL_GPL vmlinux 0xa0ce1101 ref_module +EXPORT_SYMBOL_GPL vmlinux 0xa0e588ab mtd_get_fact_prot_info +EXPORT_SYMBOL_GPL vmlinux 0xa0ec358b rcu_read_unlock_trace_special +EXPORT_SYMBOL_GPL vmlinux 0xa0eeff41 platform_get_resource_byname +EXPORT_SYMBOL_GPL vmlinux 0xa0fe7caf devm_nvmem_device_get +EXPORT_SYMBOL_GPL vmlinux 0xa10d30d0 skcipher_walk_virt +EXPORT_SYMBOL_GPL vmlinux 0xa1142c1c wait_for_stable_page +EXPORT_SYMBOL_GPL vmlinux 0xa118603e serial8250_tx_chars +EXPORT_SYMBOL_GPL vmlinux 0xa12aa65b cpuidle_register +EXPORT_SYMBOL_GPL vmlinux 0xa14a5997 component_add +EXPORT_SYMBOL_GPL vmlinux 0xa1558a7e devm_hwspin_lock_request_specific +EXPORT_SYMBOL_GPL vmlinux 0xa1738126 fat_search_long +EXPORT_SYMBOL_GPL vmlinux 0xa1743581 nand_soft_waitrdy +EXPORT_SYMBOL_GPL vmlinux 0xa176aee6 rtnl_af_register +EXPORT_SYMBOL_GPL vmlinux 0xa183d3f4 dev_pm_opp_set_clkname +EXPORT_SYMBOL_GPL vmlinux 0xa18c218e ahci_platform_shutdown +EXPORT_SYMBOL_GPL vmlinux 0xa197eb7a tty_port_register_device_serdev +EXPORT_SYMBOL_GPL vmlinux 0xa19a2752 dw_pcie_read_dbi +EXPORT_SYMBOL_GPL vmlinux 0xa1a4bca0 rockchip_pcie_parse_dt +EXPORT_SYMBOL_GPL vmlinux 0xa1ac2219 gpiod_direction_output +EXPORT_SYMBOL_GPL vmlinux 0xa1ae6743 __mnt_drop_write +EXPORT_SYMBOL_GPL vmlinux 0xa1cbf633 nanddev_erase +EXPORT_SYMBOL_GPL vmlinux 0xa1d4b604 ndo_dflt_bridge_getlink +EXPORT_SYMBOL_GPL vmlinux 0xa1d8004a videomode_from_timing +EXPORT_SYMBOL_GPL vmlinux 0xa1e657c6 dma_buf_mmap +EXPORT_SYMBOL_GPL vmlinux 0xa1ecf90f mtd_lock +EXPORT_SYMBOL_GPL vmlinux 0xa1f1bd3a arm_check_condition +EXPORT_SYMBOL_GPL vmlinux 0xa204b04f usb_phy_roothub_suspend +EXPORT_SYMBOL_GPL vmlinux 0xa208a93d gpiod_get +EXPORT_SYMBOL_GPL vmlinux 0xa20d01ba __trace_bprintk +EXPORT_SYMBOL_GPL vmlinux 0xa21ce8f3 mtk_pinconf_adv_pull_get +EXPORT_SYMBOL_GPL vmlinux 0xa21d3600 tracing_snapshot_cond_enable +EXPORT_SYMBOL_GPL vmlinux 0xa22268a4 fwnode_property_read_string +EXPORT_SYMBOL_GPL vmlinux 0xa23b4682 regulator_set_bypass_regmap +EXPORT_SYMBOL_GPL vmlinux 0xa23f3f84 snd_soc_dapm_add_routes +EXPORT_SYMBOL_GPL vmlinux 0xa23f5339 regulator_get_current_limit +EXPORT_SYMBOL_GPL vmlinux 0xa23f684b __tracepoint_io_page_fault +EXPORT_SYMBOL_GPL vmlinux 0xa252f765 blk_req_zone_write_trylock +EXPORT_SYMBOL_GPL vmlinux 0xa25429be usb_hcd_link_urb_to_ep +EXPORT_SYMBOL_GPL vmlinux 0xa2598247 of_platform_default_populate +EXPORT_SYMBOL_GPL vmlinux 0xa25b04ef power_supply_unregister +EXPORT_SYMBOL_GPL vmlinux 0xa26d9b4f workqueue_congested +EXPORT_SYMBOL_GPL vmlinux 0xa2805034 usb_of_get_device_node +EXPORT_SYMBOL_GPL vmlinux 0xa2860b27 sock_gen_put +EXPORT_SYMBOL_GPL vmlinux 0xa286a234 snd_pcm_format_name +EXPORT_SYMBOL_GPL vmlinux 0xa295acea gpiod_set_value +EXPORT_SYMBOL_GPL vmlinux 0xa29ed50b __page_file_mapping +EXPORT_SYMBOL_GPL vmlinux 0xa2a46c20 update_time +EXPORT_SYMBOL_GPL vmlinux 0xa2a65b65 snd_soc_unregister_component +EXPORT_SYMBOL_GPL vmlinux 0xa2b8aa9d regulator_get_hardware_vsel_register +EXPORT_SYMBOL_GPL vmlinux 0xa2bc00b6 fat_scan +EXPORT_SYMBOL_GPL vmlinux 0xa2bd25da tracepoint_probe_register_prio +EXPORT_SYMBOL_GPL vmlinux 0xa2bf2393 sata_link_hardreset +EXPORT_SYMBOL_GPL vmlinux 0xa2c31b2a proc_douintvec_minmax +EXPORT_SYMBOL_GPL vmlinux 0xa2ce4d88 enable_kprobe +EXPORT_SYMBOL_GPL vmlinux 0xa2d32bf2 gpiochip_reqres_irq +EXPORT_SYMBOL_GPL vmlinux 0xa2d91be8 fwnode_count_parents +EXPORT_SYMBOL_GPL vmlinux 0xa2e1b3ef trace_printk_init_buffers +EXPORT_SYMBOL_GPL vmlinux 0xa2e1d314 snd_soc_of_get_dai_link_codecs +EXPORT_SYMBOL_GPL vmlinux 0xa2e8f1dc inet_twsk_put +EXPORT_SYMBOL_GPL vmlinux 0xa2f1dad2 device_match_any +EXPORT_SYMBOL_GPL vmlinux 0xa2f812f9 phy_10gbit_fec_features_array +EXPORT_SYMBOL_GPL vmlinux 0xa32b9a42 snd_dmaengine_pcm_refine_runtime_hwparams +EXPORT_SYMBOL_GPL vmlinux 0xa32f3d9e decode_rs16 +EXPORT_SYMBOL_GPL vmlinux 0xa333caac iomap_ioend_try_merge +EXPORT_SYMBOL_GPL vmlinux 0xa33744aa edac_stop_work +EXPORT_SYMBOL_GPL vmlinux 0xa346975c idr_remove +EXPORT_SYMBOL_GPL vmlinux 0xa348085d find_pid_ns +EXPORT_SYMBOL_GPL vmlinux 0xa359d1de snd_soc_poweroff +EXPORT_SYMBOL_GPL vmlinux 0xa371312c debugfs_create_u8 +EXPORT_SYMBOL_GPL vmlinux 0xa374f2f4 da903x_register_notifier +EXPORT_SYMBOL_GPL vmlinux 0xa37743ae pwm_capture +EXPORT_SYMBOL_GPL vmlinux 0xa3788595 pci_probe_reset_slot +EXPORT_SYMBOL_GPL vmlinux 0xa37a3f7c fat_flush_inodes +EXPORT_SYMBOL_GPL vmlinux 0xa37e54fb iommu_unmap +EXPORT_SYMBOL_GPL vmlinux 0xa38602cd drain_workqueue +EXPORT_SYMBOL_GPL vmlinux 0xa389a49a profile_event_register +EXPORT_SYMBOL_GPL vmlinux 0xa38a9f71 get_itimerspec64 +EXPORT_SYMBOL_GPL vmlinux 0xa39a2185 pm_clk_create +EXPORT_SYMBOL_GPL vmlinux 0xa39d51fe devm_usb_get_phy_by_phandle +EXPORT_SYMBOL_GPL vmlinux 0xa39f4d49 debugfs_create_bool +EXPORT_SYMBOL_GPL vmlinux 0xa3a04602 btree_geo64 +EXPORT_SYMBOL_GPL vmlinux 0xa3ac7454 bpf_sk_storage_diag_put +EXPORT_SYMBOL_GPL vmlinux 0xa3b0263c usb_hcd_pci_probe +EXPORT_SYMBOL_GPL vmlinux 0xa3b3a793 wm8400_reset_codec_reg_cache +EXPORT_SYMBOL_GPL vmlinux 0xa3b3a8a0 ata_sff_softreset +EXPORT_SYMBOL_GPL vmlinux 0xa3b958ce reset_hung_task_detector +EXPORT_SYMBOL_GPL vmlinux 0xa3be87b2 devlink_sb_register +EXPORT_SYMBOL_GPL vmlinux 0xa3cce4ee crypto_unregister_templates +EXPORT_SYMBOL_GPL vmlinux 0xa3ef2e6b inet_csk_route_child_sock +EXPORT_SYMBOL_GPL vmlinux 0xa3f12f69 __crypto_xor +EXPORT_SYMBOL_GPL vmlinux 0xa3f6f112 snd_pcm_stream_unlock +EXPORT_SYMBOL_GPL vmlinux 0xa3ffc7ad device_create +EXPORT_SYMBOL_GPL vmlinux 0xa4031b7f sfp_parse_port +EXPORT_SYMBOL_GPL vmlinux 0xa410a295 devlink_region_destroy +EXPORT_SYMBOL_GPL vmlinux 0xa4141ad5 rio_get_asm +EXPORT_SYMBOL_GPL vmlinux 0xa417356e crypto_unregister_algs +EXPORT_SYMBOL_GPL vmlinux 0xa42e09f9 dev_pm_opp_remove +EXPORT_SYMBOL_GPL vmlinux 0xa4344a34 tpm1_do_selftest +EXPORT_SYMBOL_GPL vmlinux 0xa437f057 __mmdrop +EXPORT_SYMBOL_GPL vmlinux 0xa438171a simple_attr_open +EXPORT_SYMBOL_GPL vmlinux 0xa44a1307 interval_tree_iter_first +EXPORT_SYMBOL_GPL vmlinux 0xa44fbefa __tracepoint_xdp_exception +EXPORT_SYMBOL_GPL vmlinux 0xa453b5eb __devm_regmap_init_spi +EXPORT_SYMBOL_GPL vmlinux 0xa45c7b90 stack_trace_print +EXPORT_SYMBOL_GPL vmlinux 0xa45dc275 trace_seq_putmem +EXPORT_SYMBOL_GPL vmlinux 0xa471982d dm_table_set_type +EXPORT_SYMBOL_GPL vmlinux 0xa4803679 musb_queue_resume_work +EXPORT_SYMBOL_GPL vmlinux 0xa48196c8 kdb_poll_idx +EXPORT_SYMBOL_GPL vmlinux 0xa48e004b iommu_device_register +EXPORT_SYMBOL_GPL vmlinux 0xa4ab7c1c ring_buffer_overruns +EXPORT_SYMBOL_GPL vmlinux 0xa4b07fe7 ring_buffer_change_overwrite +EXPORT_SYMBOL_GPL vmlinux 0xa4cb3f85 ata_sas_port_suspend +EXPORT_SYMBOL_GPL vmlinux 0xa4cc19b3 irq_set_affinity_hint +EXPORT_SYMBOL_GPL vmlinux 0xa4f4fa39 dev_pm_opp_of_get_sharing_cpus +EXPORT_SYMBOL_GPL vmlinux 0xa4fab2ca inet_twsk_purge +EXPORT_SYMBOL_GPL vmlinux 0xa4fe017c usb_gadget_vbus_disconnect +EXPORT_SYMBOL_GPL vmlinux 0xa50103ba pm_generic_poweroff +EXPORT_SYMBOL_GPL vmlinux 0xa508272c regmap_get_raw_write_max +EXPORT_SYMBOL_GPL vmlinux 0xa520dc1b spi_statistics_add_transfer_stats +EXPORT_SYMBOL_GPL vmlinux 0xa527536a iommu_dev_has_feature +EXPORT_SYMBOL_GPL vmlinux 0xa531471e clk_save_context +EXPORT_SYMBOL_GPL vmlinux 0xa53f0dd7 tnum_strn +EXPORT_SYMBOL_GPL vmlinux 0xa54ca9db inet_csk_listen_stop +EXPORT_SYMBOL_GPL vmlinux 0xa572b398 rtnl_af_unregister +EXPORT_SYMBOL_GPL vmlinux 0xa5820ffb devm_namespace_enable +EXPORT_SYMBOL_GPL vmlinux 0xa5a86ba6 devm_of_clk_add_hw_provider +EXPORT_SYMBOL_GPL vmlinux 0xa5b4b48a rhashtable_walk_enter +EXPORT_SYMBOL_GPL vmlinux 0xa5b75047 fat_build_inode +EXPORT_SYMBOL_GPL vmlinux 0xa5b8da0c usb_register_device_driver +EXPORT_SYMBOL_GPL vmlinux 0xa5b9abae pci_set_cacheline_size +EXPORT_SYMBOL_GPL vmlinux 0xa5bb24cd sdio_readsb +EXPORT_SYMBOL_GPL vmlinux 0xa5c0455c ata_port_desc +EXPORT_SYMBOL_GPL vmlinux 0xa5cad467 bpf_offload_dev_netdev_unregister +EXPORT_SYMBOL_GPL vmlinux 0xa5d7c388 pstore_type_to_name +EXPORT_SYMBOL_GPL vmlinux 0xa5db52f9 unregister_wide_hw_breakpoint +EXPORT_SYMBOL_GPL vmlinux 0xa5dd501d ata_host_detach +EXPORT_SYMBOL_GPL vmlinux 0xa5dfdb58 xfrm_audit_state_notfound_simple +EXPORT_SYMBOL_GPL vmlinux 0xa5e00e56 transport_add_device +EXPORT_SYMBOL_GPL vmlinux 0xa5e7936c vring_new_virtqueue +EXPORT_SYMBOL_GPL vmlinux 0xa5ed9ccd pinmux_generic_get_function +EXPORT_SYMBOL_GPL vmlinux 0xa5efbf4c async_synchronize_full +EXPORT_SYMBOL_GPL vmlinux 0xa62892c6 efivar_sysfs_list +EXPORT_SYMBOL_GPL vmlinux 0xa62cea39 ahci_init_controller +EXPORT_SYMBOL_GPL vmlinux 0xa63d935b dm_send_uevents +EXPORT_SYMBOL_GPL vmlinux 0xa6797846 usb_driver_claim_interface +EXPORT_SYMBOL_GPL vmlinux 0xa699ae2c dma_run_dependencies +EXPORT_SYMBOL_GPL vmlinux 0xa69d486c dev_pm_domain_detach +EXPORT_SYMBOL_GPL vmlinux 0xa69edba8 sdio_f0_readb +EXPORT_SYMBOL_GPL vmlinux 0xa6b21ef2 dpm_suspend_end +EXPORT_SYMBOL_GPL vmlinux 0xa6b25138 rio_set_port_lockout +EXPORT_SYMBOL_GPL vmlinux 0xa6ca9b90 __efivar_entry_iter +EXPORT_SYMBOL_GPL vmlinux 0xa6ddc2a7 xhci_mtk_add_ep_quirk +EXPORT_SYMBOL_GPL vmlinux 0xa6e1a69d kick_all_cpus_sync +EXPORT_SYMBOL_GPL vmlinux 0xa6e42c38 register_mtd_user +EXPORT_SYMBOL_GPL vmlinux 0xa6f57a89 spi_async_locked +EXPORT_SYMBOL_GPL vmlinux 0xa709c835 fib6_info_destroy_rcu +EXPORT_SYMBOL_GPL vmlinux 0xa720b102 dev_attr_link_power_management_policy +EXPORT_SYMBOL_GPL vmlinux 0xa7256123 stmpe_enable +EXPORT_SYMBOL_GPL vmlinux 0xa7310993 register_virtio_driver +EXPORT_SYMBOL_GPL vmlinux 0xa74e37b8 crypto_unregister_skciphers +EXPORT_SYMBOL_GPL vmlinux 0xa76e3b77 bsg_scsi_register_queue +EXPORT_SYMBOL_GPL vmlinux 0xa7802e2e btree_grim_visitor +EXPORT_SYMBOL_GPL vmlinux 0xa7a17870 transport_class_register +EXPORT_SYMBOL_GPL vmlinux 0xa7a4bd6b devm_led_classdev_register_ext +EXPORT_SYMBOL_GPL vmlinux 0xa7aaafde klist_iter_exit +EXPORT_SYMBOL_GPL vmlinux 0xa7b552e1 pinctrl_find_gpio_range_from_pin_nolock +EXPORT_SYMBOL_GPL vmlinux 0xa7cd6e36 pci_rescan_bus +EXPORT_SYMBOL_GPL vmlinux 0xa7d1cbd7 rhltable_init +EXPORT_SYMBOL_GPL vmlinux 0xa7d4ca8c usb_hcd_setup_local_mem +EXPORT_SYMBOL_GPL vmlinux 0xa7d5985a inet_ehash_nolisten +EXPORT_SYMBOL_GPL vmlinux 0xa7dd8482 phy_speed_up +EXPORT_SYMBOL_GPL vmlinux 0xa7f20e1a fwnode_property_read_u8_array +EXPORT_SYMBOL_GPL vmlinux 0xa7fa9d99 tpm2_get_tpm_pt +EXPORT_SYMBOL_GPL vmlinux 0xa7fc975f extcon_set_property +EXPORT_SYMBOL_GPL vmlinux 0xa8349f26 pm_genpd_add_subdomain +EXPORT_SYMBOL_GPL vmlinux 0xa844722b regulator_set_load +EXPORT_SYMBOL_GPL vmlinux 0xa84792da tps65217_reg_write +EXPORT_SYMBOL_GPL vmlinux 0xa850ff77 dev_pm_domain_attach +EXPORT_SYMBOL_GPL vmlinux 0xa851973a raw_notifier_call_chain +EXPORT_SYMBOL_GPL vmlinux 0xa8617132 pm_generic_thaw_noirq +EXPORT_SYMBOL_GPL vmlinux 0xa8727e73 devm_kstrdup_const +EXPORT_SYMBOL_GPL vmlinux 0xa8953448 unregister_ftrace_function +EXPORT_SYMBOL_GPL vmlinux 0xa89be317 gpiod_get_raw_value +EXPORT_SYMBOL_GPL vmlinux 0xa8ac29d2 nf_queue_entry_get_refs +EXPORT_SYMBOL_GPL vmlinux 0xa8b95a0d od_register_powersave_bias_handler +EXPORT_SYMBOL_GPL vmlinux 0xa8bc1596 led_colors +EXPORT_SYMBOL_GPL vmlinux 0xa8bca38d pid_nr_ns +EXPORT_SYMBOL_GPL vmlinux 0xa8cbb5a7 devfreq_event_get_edev_count +EXPORT_SYMBOL_GPL vmlinux 0xa8eea646 blk_mq_sched_request_inserted +EXPORT_SYMBOL_GPL vmlinux 0xa8f422ba __lock_page_killable +EXPORT_SYMBOL_GPL vmlinux 0xa909811a badrange_forget +EXPORT_SYMBOL_GPL vmlinux 0xa909cc25 virtio_add_status +EXPORT_SYMBOL_GPL vmlinux 0xa9101943 wm5110_spi_regmap +EXPORT_SYMBOL_GPL vmlinux 0xa912e8c3 usb_phy_roothub_alloc +EXPORT_SYMBOL_GPL vmlinux 0xa920fb64 fib_nh_common_release +EXPORT_SYMBOL_GPL vmlinux 0xa92b1d0a __clocksource_register_scale +EXPORT_SYMBOL_GPL vmlinux 0xa92b7803 power_supply_notifier +EXPORT_SYMBOL_GPL vmlinux 0xa9320d27 ktime_get_seconds +EXPORT_SYMBOL_GPL vmlinux 0xa946e614 __reset_control_get +EXPORT_SYMBOL_GPL vmlinux 0xa9524344 dma_buf_unpin +EXPORT_SYMBOL_GPL vmlinux 0xa952a157 wakeup_sources_walk_next +EXPORT_SYMBOL_GPL vmlinux 0xa966a096 ip6_dst_lookup +EXPORT_SYMBOL_GPL vmlinux 0xa9951a52 clk_regmap_mux_ops +EXPORT_SYMBOL_GPL vmlinux 0xa99ef899 devlink_fmsg_bool_pair_put +EXPORT_SYMBOL_GPL vmlinux 0xa9c5c99c irq_chip_mask_ack_parent +EXPORT_SYMBOL_GPL vmlinux 0xa9c8cbd1 mtk_pinconf_bias_set +EXPORT_SYMBOL_GPL vmlinux 0xa9e05660 io_cgrp_subsys_on_dfl_key +EXPORT_SYMBOL_GPL vmlinux 0xa9e18049 task_handoff_unregister +EXPORT_SYMBOL_GPL vmlinux 0xa9e74462 usb_ep_alloc_request +EXPORT_SYMBOL_GPL vmlinux 0xa9e81c0e led_trigger_register_simple +EXPORT_SYMBOL_GPL vmlinux 0xa9f418e8 devres_open_group +EXPORT_SYMBOL_GPL vmlinux 0xa9fb2f09 blk_req_needs_zone_write_lock +EXPORT_SYMBOL_GPL vmlinux 0xaa030902 switchdev_port_attr_set +EXPORT_SYMBOL_GPL vmlinux 0xaa194503 nd_region_provider_data +EXPORT_SYMBOL_GPL vmlinux 0xaa230f88 perf_unregister_guest_info_callbacks +EXPORT_SYMBOL_GPL vmlinux 0xaa2a72bf __iowrite64_copy +EXPORT_SYMBOL_GPL vmlinux 0xaa2c02ae clock_cooling_get_level +EXPORT_SYMBOL_GPL vmlinux 0xaa31fa11 rt_mutex_trylock +EXPORT_SYMBOL_GPL vmlinux 0xaa44acff omap_tll_disable +EXPORT_SYMBOL_GPL vmlinux 0xaa60c1c1 alloc_skb_for_msg +EXPORT_SYMBOL_GPL vmlinux 0xaa79d53b dst_cache_get +EXPORT_SYMBOL_GPL vmlinux 0xaa84ba1b usb_get_descriptor +EXPORT_SYMBOL_GPL vmlinux 0xaa88ba94 seq_buf_printf +EXPORT_SYMBOL_GPL vmlinux 0xaa922365 bpf_trace_run2 +EXPORT_SYMBOL_GPL vmlinux 0xaa99bb90 perf_pmu_register +EXPORT_SYMBOL_GPL vmlinux 0xaaa918c9 ftrace_dump +EXPORT_SYMBOL_GPL vmlinux 0xaaae3866 devm_usb_put_phy +EXPORT_SYMBOL_GPL vmlinux 0xaabc095c __hvc_resize +EXPORT_SYMBOL_GPL vmlinux 0xaada58f5 usb_get_urb +EXPORT_SYMBOL_GPL vmlinux 0xaae59262 sdio_set_host_pm_flags +EXPORT_SYMBOL_GPL vmlinux 0xaaecf75d perf_trace_buf_alloc +EXPORT_SYMBOL_GPL vmlinux 0xaaedf7ed pcie_port_bus_type +EXPORT_SYMBOL_GPL vmlinux 0xab028109 of_detach_node +EXPORT_SYMBOL_GPL vmlinux 0xab09e1a0 gpiod_set_raw_value_cansleep +EXPORT_SYMBOL_GPL vmlinux 0xab0d4708 fat_getattr +EXPORT_SYMBOL_GPL vmlinux 0xab1086c2 disk_map_sector_rcu +EXPORT_SYMBOL_GPL vmlinux 0xab129818 kset_find_obj +EXPORT_SYMBOL_GPL vmlinux 0xab1472b6 snd_soc_get_volsw_range +EXPORT_SYMBOL_GPL vmlinux 0xab1cb9eb pci_generic_config_write +EXPORT_SYMBOL_GPL vmlinux 0xab200849 serdev_device_close +EXPORT_SYMBOL_GPL vmlinux 0xab2657d1 pci_epc_mem_alloc_addr +EXPORT_SYMBOL_GPL vmlinux 0xab32ade0 pci_device_group +EXPORT_SYMBOL_GPL vmlinux 0xab49c8a7 devm_phy_optional_get +EXPORT_SYMBOL_GPL vmlinux 0xab4c9dac __tracepoint_rpm_resume +EXPORT_SYMBOL_GPL vmlinux 0xab4f4b32 bprintf +EXPORT_SYMBOL_GPL vmlinux 0xab580610 scsi_unregister_device_handler +EXPORT_SYMBOL_GPL vmlinux 0xab598920 spi_finalize_current_transfer +EXPORT_SYMBOL_GPL vmlinux 0xab5f1801 key_type_user +EXPORT_SYMBOL_GPL vmlinux 0xab703850 gpiod_to_chip +EXPORT_SYMBOL_GPL vmlinux 0xab79f396 crypto_grab_ahash +EXPORT_SYMBOL_GPL vmlinux 0xab823511 snd_soc_dai_digital_mute +EXPORT_SYMBOL_GPL vmlinux 0xab899252 irq_set_chip_and_handler_name +EXPORT_SYMBOL_GPL vmlinux 0xab8bc1a2 snd_pcm_rate_mask_intersect +EXPORT_SYMBOL_GPL vmlinux 0xab9080be xdp_attachment_query +EXPORT_SYMBOL_GPL vmlinux 0xab9665f5 dma_get_required_mask +EXPORT_SYMBOL_GPL vmlinux 0xab9bd884 perf_register_guest_info_callbacks +EXPORT_SYMBOL_GPL vmlinux 0xaba5be72 fwnode_graph_get_remote_port +EXPORT_SYMBOL_GPL vmlinux 0xabaca20f task_cls_state +EXPORT_SYMBOL_GPL vmlinux 0xabc640f3 list_lru_isolate +EXPORT_SYMBOL_GPL vmlinux 0xabc88561 snd_soc_put_enum_double +EXPORT_SYMBOL_GPL vmlinux 0xabcda29e leds_list_lock +EXPORT_SYMBOL_GPL vmlinux 0xabcf0ac5 devm_device_add_group +EXPORT_SYMBOL_GPL vmlinux 0xabcfa03b __tracepoint_block_rq_remap +EXPORT_SYMBOL_GPL vmlinux 0xabd46b7c ahci_fill_cmd_slot +EXPORT_SYMBOL_GPL vmlinux 0xabf746d9 da903x_writes +EXPORT_SYMBOL_GPL vmlinux 0xac058fb5 pin_get_name +EXPORT_SYMBOL_GPL vmlinux 0xac05efea switchdev_port_obj_add +EXPORT_SYMBOL_GPL vmlinux 0xac08c3ea pm_stay_awake +EXPORT_SYMBOL_GPL vmlinux 0xac0a8265 ata_std_prereset +EXPORT_SYMBOL_GPL vmlinux 0xac175057 irq_domain_xlate_onecell +EXPORT_SYMBOL_GPL vmlinux 0xac1fec31 __fsnotify_inode_delete +EXPORT_SYMBOL_GPL vmlinux 0xac28688e dev_pm_opp_get_suspend_opp_freq +EXPORT_SYMBOL_GPL vmlinux 0xac2a1eb5 get_mtd_device +EXPORT_SYMBOL_GPL vmlinux 0xac2cd7ea sdhci_set_power +EXPORT_SYMBOL_GPL vmlinux 0xac30c5ff da9052_adc_read_temp +EXPORT_SYMBOL_GPL vmlinux 0xac38d8b7 of_property_read_u64_index +EXPORT_SYMBOL_GPL vmlinux 0xac476c0a of_irq_to_resource +EXPORT_SYMBOL_GPL vmlinux 0xac55bcef rt_mutex_lock +EXPORT_SYMBOL_GPL vmlinux 0xac6c614d devm_usb_get_phy_by_node +EXPORT_SYMBOL_GPL vmlinux 0xac6dd543 sata_scr_read +EXPORT_SYMBOL_GPL vmlinux 0xac6dded1 ack_all_badblocks +EXPORT_SYMBOL_GPL vmlinux 0xac7dba8e init_dummy_netdev +EXPORT_SYMBOL_GPL vmlinux 0xac8ead6e device_bind_driver +EXPORT_SYMBOL_GPL vmlinux 0xac96039a ata_pci_shutdown_one +EXPORT_SYMBOL_GPL vmlinux 0xac9907ff mpc8xxx_spi_tx_buf_u16 +EXPORT_SYMBOL_GPL vmlinux 0xac9a7b44 __pm_runtime_use_autosuspend +EXPORT_SYMBOL_GPL vmlinux 0xacac68df __bio_crypt_clone +EXPORT_SYMBOL_GPL vmlinux 0xacb4d88c clk_rate_exclusive_put +EXPORT_SYMBOL_GPL vmlinux 0xacc77e9f ping_close +EXPORT_SYMBOL_GPL vmlinux 0xacc9a22d sdhci_reset_tuning +EXPORT_SYMBOL_GPL vmlinux 0xaccffd6b snd_soc_dai_set_tdm_slot +EXPORT_SYMBOL_GPL vmlinux 0xacd79fe0 tpm_chip_stop +EXPORT_SYMBOL_GPL vmlinux 0xacf7a5f1 mtd_block_isbad +EXPORT_SYMBOL_GPL vmlinux 0xacfbb397 irq_gc_mask_set_bit +EXPORT_SYMBOL_GPL vmlinux 0xad1eef19 edac_pci_free_ctl_info +EXPORT_SYMBOL_GPL vmlinux 0xad4e6259 remove_cpu +EXPORT_SYMBOL_GPL vmlinux 0xad5737fc efivar_init +EXPORT_SYMBOL_GPL vmlinux 0xad6139b7 gpiochip_is_requested +EXPORT_SYMBOL_GPL vmlinux 0xad615a0f policy_has_boost_freq +EXPORT_SYMBOL_GPL vmlinux 0xad645234 register_switchdev_notifier +EXPORT_SYMBOL_GPL vmlinux 0xad825edd mtk_hw_set_value +EXPORT_SYMBOL_GPL vmlinux 0xad84232b page_cache_sync_readahead +EXPORT_SYMBOL_GPL vmlinux 0xada38766 dst_cache_destroy +EXPORT_SYMBOL_GPL vmlinux 0xadb6e7ee virtio_config_enable +EXPORT_SYMBOL_GPL vmlinux 0xadd88fda phy_package_join +EXPORT_SYMBOL_GPL vmlinux 0xaddb68ba skcipher_walk_complete +EXPORT_SYMBOL_GPL vmlinux 0xade3e56c musb_writew +EXPORT_SYMBOL_GPL vmlinux 0xadf1a449 bpf_prog_alloc +EXPORT_SYMBOL_GPL vmlinux 0xadf9699b pci_write_msi_msg +EXPORT_SYMBOL_GPL vmlinux 0xae0c33aa xhci_mtk_sch_exit +EXPORT_SYMBOL_GPL vmlinux 0xae1b5968 relay_file_operations +EXPORT_SYMBOL_GPL vmlinux 0xae263bbb devm_gpiod_put +EXPORT_SYMBOL_GPL vmlinux 0xae2d4d20 __ftrace_vprintk +EXPORT_SYMBOL_GPL vmlinux 0xae39f80e dst_cache_init +EXPORT_SYMBOL_GPL vmlinux 0xae408443 xhci_shutdown +EXPORT_SYMBOL_GPL vmlinux 0xae422d24 sdhci_request +EXPORT_SYMBOL_GPL vmlinux 0xae4ddb79 __rio_local_write_config_32 +EXPORT_SYMBOL_GPL vmlinux 0xae69b1c1 usermodehelper_read_unlock +EXPORT_SYMBOL_GPL vmlinux 0xae6c1f0a dma_resv_get_fences_rcu +EXPORT_SYMBOL_GPL vmlinux 0xae720219 devm_spi_register_controller +EXPORT_SYMBOL_GPL vmlinux 0xae78b21f icc_disable +EXPORT_SYMBOL_GPL vmlinux 0xae7c231d mpi_cmp +EXPORT_SYMBOL_GPL vmlinux 0xae7d5eb1 nf_ipv6_ops +EXPORT_SYMBOL_GPL vmlinux 0xae8df4c0 of_devfreq_cooling_register +EXPORT_SYMBOL_GPL vmlinux 0xaeb6f0be __cpuhp_state_add_instance +EXPORT_SYMBOL_GPL vmlinux 0xaf0be1ec dev_pm_opp_find_freq_ceil_by_volt +EXPORT_SYMBOL_GPL vmlinux 0xaf201fa6 usb_ep_enable +EXPORT_SYMBOL_GPL vmlinux 0xaf251845 mmc_cmdq_disable +EXPORT_SYMBOL_GPL vmlinux 0xaf27da7c __mdiobus_modify_changed +EXPORT_SYMBOL_GPL vmlinux 0xaf2be95a ata_cable_ignore +EXPORT_SYMBOL_GPL vmlinux 0xaf348da7 cpu_pm_exit +EXPORT_SYMBOL_GPL vmlinux 0xaf376dbb ata_port_schedule_eh +EXPORT_SYMBOL_GPL vmlinux 0xaf38a9ba pci_epc_set_bar +EXPORT_SYMBOL_GPL vmlinux 0xaf4014ff usb_amd_quirk_pll_check +EXPORT_SYMBOL_GPL vmlinux 0xaf5271e7 cleanup_srcu_struct +EXPORT_SYMBOL_GPL vmlinux 0xaf5e72be usb_free_streams +EXPORT_SYMBOL_GPL vmlinux 0xaf7b8f96 genphy_c45_pma_setup_forced +EXPORT_SYMBOL_GPL vmlinux 0xaf8b18a5 phy_led_triggers_register +EXPORT_SYMBOL_GPL vmlinux 0xaf8cf51b regulator_list_voltage_linear +EXPORT_SYMBOL_GPL vmlinux 0xaf91e3e8 netdev_set_default_ethtool_ops +EXPORT_SYMBOL_GPL vmlinux 0xaf9b4a79 tty_ldisc_flush +EXPORT_SYMBOL_GPL vmlinux 0xafa2edfb pinctrl_add_gpio_range +EXPORT_SYMBOL_GPL vmlinux 0xafa47b3b devfreq_get_devfreq_by_phandle +EXPORT_SYMBOL_GPL vmlinux 0xafaf86aa vring_create_virtqueue +EXPORT_SYMBOL_GPL vmlinux 0xafb12f3d devm_extcon_dev_allocate +EXPORT_SYMBOL_GPL vmlinux 0xafcff03d fs_kobj +EXPORT_SYMBOL_GPL vmlinux 0xafd36afe xfrm_audit_policy_add +EXPORT_SYMBOL_GPL vmlinux 0xafd6390e pm_runtime_force_resume +EXPORT_SYMBOL_GPL vmlinux 0xafddd545 ata_id_c_string +EXPORT_SYMBOL_GPL vmlinux 0xaff4c499 snd_pcm_add_chmap_ctls +EXPORT_SYMBOL_GPL vmlinux 0xb0170673 pci_find_next_ht_capability +EXPORT_SYMBOL_GPL vmlinux 0xb01867c6 ahci_platform_suspend +EXPORT_SYMBOL_GPL vmlinux 0xb01c8066 tcp_slow_start +EXPORT_SYMBOL_GPL vmlinux 0xb0232477 klist_prev +EXPORT_SYMBOL_GPL vmlinux 0xb023c11d irq_chip_eoi_parent +EXPORT_SYMBOL_GPL vmlinux 0xb0269e32 soc_device_register +EXPORT_SYMBOL_GPL vmlinux 0xb0308952 sata_scr_write +EXPORT_SYMBOL_GPL vmlinux 0xb04d1f7b perf_event_cgrp_subsys_enabled_key +EXPORT_SYMBOL_GPL vmlinux 0xb059f2c0 nvdimm_bus_unregister +EXPORT_SYMBOL_GPL vmlinux 0xb05ecf46 irq_chip_set_parent_state +EXPORT_SYMBOL_GPL vmlinux 0xb0747ed2 rcu_cpu_stall_suppress +EXPORT_SYMBOL_GPL vmlinux 0xb076205b fwnode_get_named_gpiod +EXPORT_SYMBOL_GPL vmlinux 0xb077e70a clk_unprepare +EXPORT_SYMBOL_GPL vmlinux 0xb091b30c sysfs_remove_groups +EXPORT_SYMBOL_GPL vmlinux 0xb0a4f7c7 ata_bmdma_post_internal_cmd +EXPORT_SYMBOL_GPL vmlinux 0xb0b85f47 ring_buffer_iter_reset +EXPORT_SYMBOL_GPL vmlinux 0xb0c01d34 blk_mq_sched_try_insert_merge +EXPORT_SYMBOL_GPL vmlinux 0xb0df5812 tpm1_getcap +EXPORT_SYMBOL_GPL vmlinux 0xb0ef155f pm_clk_add_clk +EXPORT_SYMBOL_GPL vmlinux 0xb0f58c90 snd_soc_dai_set_bclk_ratio +EXPORT_SYMBOL_GPL vmlinux 0xb0fbb722 clk_fractional_divider_ops +EXPORT_SYMBOL_GPL vmlinux 0xb1075f35 usb_remove_phy +EXPORT_SYMBOL_GPL vmlinux 0xb10d964d devlink_fmsg_pair_nest_end +EXPORT_SYMBOL_GPL vmlinux 0xb10efc61 sysfs_rename_link_ns +EXPORT_SYMBOL_GPL vmlinux 0xb11625b9 cpu_cgrp_subsys_on_dfl_key +EXPORT_SYMBOL_GPL vmlinux 0xb11d9000 tty_dev_name_to_number +EXPORT_SYMBOL_GPL vmlinux 0xb1241cde gpiod_get_value_cansleep +EXPORT_SYMBOL_GPL vmlinux 0xb1425a3d devlink_port_param_driverinit_value_get +EXPORT_SYMBOL_GPL vmlinux 0xb1425b32 dm_table_add_target_callbacks +EXPORT_SYMBOL_GPL vmlinux 0xb162238a ahci_check_ready +EXPORT_SYMBOL_GPL vmlinux 0xb1647fc2 devlink_info_version_running_put +EXPORT_SYMBOL_GPL vmlinux 0xb16a9286 ata_sff_freeze +EXPORT_SYMBOL_GPL vmlinux 0xb16af8ce devm_extcon_dev_unregister +EXPORT_SYMBOL_GPL vmlinux 0xb172ffac efivars_sysfs_init +EXPORT_SYMBOL_GPL vmlinux 0xb17a99f0 deregister_mtd_blktrans +EXPORT_SYMBOL_GPL vmlinux 0xb17d9190 usb_sg_cancel +EXPORT_SYMBOL_GPL vmlinux 0xb18110e0 __tracepoint_arm_event +EXPORT_SYMBOL_GPL vmlinux 0xb18429eb suspend_device_irqs +EXPORT_SYMBOL_GPL vmlinux 0xb19b2167 __sock_recv_ts_and_drops +EXPORT_SYMBOL_GPL vmlinux 0xb19f0ac8 pinctrl_generic_get_group_name +EXPORT_SYMBOL_GPL vmlinux 0xb1ad7e6f devm_of_phy_provider_unregister +EXPORT_SYMBOL_GPL vmlinux 0xb1bed25d dpm_resume_start +EXPORT_SYMBOL_GPL vmlinux 0xb1cb041b led_get_default_pattern +EXPORT_SYMBOL_GPL vmlinux 0xb1cda421 fuse_conn_init +EXPORT_SYMBOL_GPL vmlinux 0xb1dabc1e unregister_ftrace_export +EXPORT_SYMBOL_GPL vmlinux 0xb1e25684 __trace_bputs +EXPORT_SYMBOL_GPL vmlinux 0xb1ebe6e2 devm_gpiochip_add_data_with_key +EXPORT_SYMBOL_GPL vmlinux 0xb1ecc46f handle_fasteoi_mask_irq +EXPORT_SYMBOL_GPL vmlinux 0xb2210d64 reset_control_deassert +EXPORT_SYMBOL_GPL vmlinux 0xb2314a50 fuse_do_open +EXPORT_SYMBOL_GPL vmlinux 0xb2405efc secure_tcp_seq +EXPORT_SYMBOL_GPL vmlinux 0xb259a6ca ata_wait_after_reset +EXPORT_SYMBOL_GPL vmlinux 0xb25ba5a1 ata_sas_tport_add +EXPORT_SYMBOL_GPL vmlinux 0xb26242ae snd_soc_dapm_new_control +EXPORT_SYMBOL_GPL vmlinux 0xb26a1add elfcorehdr_addr +EXPORT_SYMBOL_GPL vmlinux 0xb28014db wm8997_i2c_regmap +EXPORT_SYMBOL_GPL vmlinux 0xb28477af regulator_enable +EXPORT_SYMBOL_GPL vmlinux 0xb288a2e1 dev_pm_opp_put_supported_hw +EXPORT_SYMBOL_GPL vmlinux 0xb288cdac irq_domain_associate_many +EXPORT_SYMBOL_GPL vmlinux 0xb29f84bf devres_release_group +EXPORT_SYMBOL_GPL vmlinux 0xb2b5747f dw_pcie_find_ext_capability +EXPORT_SYMBOL_GPL vmlinux 0xb2bda61b usb_hcd_giveback_urb +EXPORT_SYMBOL_GPL vmlinux 0xb2c0b4c2 blkg_conf_prep +EXPORT_SYMBOL_GPL vmlinux 0xb2c1732e rcu_gp_set_torture_wait +EXPORT_SYMBOL_GPL vmlinux 0xb2c5bd5a snd_soc_of_get_dai_name +EXPORT_SYMBOL_GPL vmlinux 0xb2d32efa spi_split_transfers_maxsize +EXPORT_SYMBOL_GPL vmlinux 0xb2de4cf2 clk_gate_ops +EXPORT_SYMBOL_GPL vmlinux 0xb2e764e8 suspend_valid_only_mem +EXPORT_SYMBOL_GPL vmlinux 0xb2fadc38 clk_regmap_gate_ro_ops +EXPORT_SYMBOL_GPL vmlinux 0xb2ff407a crypto_register_scomp +EXPORT_SYMBOL_GPL vmlinux 0xb3054c9b is_transparent_hugepage +EXPORT_SYMBOL_GPL vmlinux 0xb307c909 devlink_fmsg_u64_pair_put +EXPORT_SYMBOL_GPL vmlinux 0xb31f7311 l3mdev_master_ifindex_rcu +EXPORT_SYMBOL_GPL vmlinux 0xb320e68c iommu_capable +EXPORT_SYMBOL_GPL vmlinux 0xb3380fdd dev_pm_domain_attach_by_id +EXPORT_SYMBOL_GPL vmlinux 0xb33b0856 blk_clear_pm_only +EXPORT_SYMBOL_GPL vmlinux 0xb34f4303 usb_gadget_ep_match_desc +EXPORT_SYMBOL_GPL vmlinux 0xb34f8248 snd_soc_card_add_dai_link +EXPORT_SYMBOL_GPL vmlinux 0xb35ed2b7 fsverity_cleanup_inode +EXPORT_SYMBOL_GPL vmlinux 0xb360036c usb_hcd_check_unlink_urb +EXPORT_SYMBOL_GPL vmlinux 0xb3627220 power_supply_put +EXPORT_SYMBOL_GPL vmlinux 0xb3658177 trace_event_buffer_reserve +EXPORT_SYMBOL_GPL vmlinux 0xb378559e freq_qos_add_request +EXPORT_SYMBOL_GPL vmlinux 0xb37dab97 regcache_sync_region +EXPORT_SYMBOL_GPL vmlinux 0xb37f41e9 pci_generic_config_read +EXPORT_SYMBOL_GPL vmlinux 0xb388b208 reset_controller_register +EXPORT_SYMBOL_GPL vmlinux 0xb38f778b dev_pm_disable_wake_irq +EXPORT_SYMBOL_GPL vmlinux 0xb3903d78 irq_domain_free_irqs_common +EXPORT_SYMBOL_GPL vmlinux 0xb39c7cf9 trace_seq_printf +EXPORT_SYMBOL_GPL vmlinux 0xb3b088e5 fib6_new_table +EXPORT_SYMBOL_GPL vmlinux 0xb3b41ab9 platform_get_irq_optional +EXPORT_SYMBOL_GPL vmlinux 0xb3dcee6d bus_unregister_notifier +EXPORT_SYMBOL_GPL vmlinux 0xb3e496d8 debugfs_create_x8 +EXPORT_SYMBOL_GPL vmlinux 0xb3fc8464 usb_register_dev +EXPORT_SYMBOL_GPL vmlinux 0xb3ff9f7e crypto_unregister_skcipher +EXPORT_SYMBOL_GPL vmlinux 0xb3ffcd0c devm_devfreq_event_add_edev +EXPORT_SYMBOL_GPL vmlinux 0xb40c6376 cpuset_cgrp_subsys_on_dfl_key +EXPORT_SYMBOL_GPL vmlinux 0xb41c5b2d srcu_init_notifier_head +EXPORT_SYMBOL_GPL vmlinux 0xb420f049 put_device +EXPORT_SYMBOL_GPL vmlinux 0xb423a3fc regulator_force_disable +EXPORT_SYMBOL_GPL vmlinux 0xb43ce990 dm_get_queue_limits +EXPORT_SYMBOL_GPL vmlinux 0xb43f9365 ktime_get +EXPORT_SYMBOL_GPL vmlinux 0xb44c2843 ipv6_recv_error +EXPORT_SYMBOL_GPL vmlinux 0xb44e18ea audit_enabled +EXPORT_SYMBOL_GPL vmlinux 0xb45054c6 musb_get_mode +EXPORT_SYMBOL_GPL vmlinux 0xb455de0a sdhci_dumpregs +EXPORT_SYMBOL_GPL vmlinux 0xb4562ba5 scsi_dh_attach +EXPORT_SYMBOL_GPL vmlinux 0xb4600bb5 hvc_alloc +EXPORT_SYMBOL_GPL vmlinux 0xb460ea51 tpm_send +EXPORT_SYMBOL_GPL vmlinux 0xb463e606 dw_pcie_host_init +EXPORT_SYMBOL_GPL vmlinux 0xb477c942 task_cputime_adjusted +EXPORT_SYMBOL_GPL vmlinux 0xb47b8c79 bpf_offload_dev_match +EXPORT_SYMBOL_GPL vmlinux 0xb49a5e82 rtc_initialize_alarm +EXPORT_SYMBOL_GPL vmlinux 0xb49bde4b tps80031_ext_power_req_config +EXPORT_SYMBOL_GPL vmlinux 0xb49de221 __tracepoint_sched_overutilized_tp +EXPORT_SYMBOL_GPL vmlinux 0xb49e21b1 cpufreq_dbs_governor_stop +EXPORT_SYMBOL_GPL vmlinux 0xb4a00291 power_supply_powers +EXPORT_SYMBOL_GPL vmlinux 0xb4a3a884 pm_wakeup_dev_event +EXPORT_SYMBOL_GPL vmlinux 0xb4b8da3c crypto_spawn_tfm2 +EXPORT_SYMBOL_GPL vmlinux 0xb4b97c90 pvclock_gtod_register_notifier +EXPORT_SYMBOL_GPL vmlinux 0xb4c7526a tcpv6_prot +EXPORT_SYMBOL_GPL vmlinux 0xb4d08c62 pcie_has_flr +EXPORT_SYMBOL_GPL vmlinux 0xb4e9c2ce nvdimm_has_cache +EXPORT_SYMBOL_GPL vmlinux 0xb4ea7cf7 kgdb_connected +EXPORT_SYMBOL_GPL vmlinux 0xb4eb0dac irq_domain_add_simple +EXPORT_SYMBOL_GPL vmlinux 0xb4eda0da ring_buffer_event_length +EXPORT_SYMBOL_GPL vmlinux 0xb4edad72 securityfs_create_symlink +EXPORT_SYMBOL_GPL vmlinux 0xb501b2df nd_cmd_dimm_desc +EXPORT_SYMBOL_GPL vmlinux 0xb50a562f rdev_clear_badblocks +EXPORT_SYMBOL_GPL vmlinux 0xb50d7fbf crypto_shash_digest +EXPORT_SYMBOL_GPL vmlinux 0xb51da0de snd_soc_info_xr_sx +EXPORT_SYMBOL_GPL vmlinux 0xb51fbd64 edac_op_state +EXPORT_SYMBOL_GPL vmlinux 0xb525e119 sched_trace_cfs_rq_cpu +EXPORT_SYMBOL_GPL vmlinux 0xb5394d5c sysfs_chmod_file +EXPORT_SYMBOL_GPL vmlinux 0xb54f565e md_run +EXPORT_SYMBOL_GPL vmlinux 0xb57556ff bio_disassociate_blkg +EXPORT_SYMBOL_GPL vmlinux 0xb57bf656 blkdev_write_iter +EXPORT_SYMBOL_GPL vmlinux 0xb586d33d devm_irq_setup_generic_chip +EXPORT_SYMBOL_GPL vmlinux 0xb5987cc3 devm_irq_alloc_generic_chip +EXPORT_SYMBOL_GPL vmlinux 0xb5a79ec4 kobject_rename +EXPORT_SYMBOL_GPL vmlinux 0xb5adfed3 devlink_dpipe_table_unregister +EXPORT_SYMBOL_GPL vmlinux 0xb5d5ac17 virtio_config_disable +EXPORT_SYMBOL_GPL vmlinux 0xb5d951bf gpiochip_remove_pin_ranges +EXPORT_SYMBOL_GPL vmlinux 0xb5dcd8a0 klist_init +EXPORT_SYMBOL_GPL vmlinux 0xb5ed88ce mctrl_gpio_init_noauto +EXPORT_SYMBOL_GPL vmlinux 0xb5f5cef2 nvmem_cell_read_u64 +EXPORT_SYMBOL_GPL vmlinux 0xb5fd2720 phy_power_on +EXPORT_SYMBOL_GPL vmlinux 0xb60688b9 fsverity_ioctl_enable +EXPORT_SYMBOL_GPL vmlinux 0xb61db93a sched_setscheduler_nocheck +EXPORT_SYMBOL_GPL vmlinux 0xb6261484 register_die_notifier +EXPORT_SYMBOL_GPL vmlinux 0xb6388286 of_reserved_mem_device_init_by_idx +EXPORT_SYMBOL_GPL vmlinux 0xb64cb9a8 power_supply_get_battery_info +EXPORT_SYMBOL_GPL vmlinux 0xb65e1678 devm_phy_put +EXPORT_SYMBOL_GPL vmlinux 0xb66a477b tpm_chip_unregister +EXPORT_SYMBOL_GPL vmlinux 0xb66e49b1 led_init_core +EXPORT_SYMBOL_GPL vmlinux 0xb6710124 qcom_smem_state_get +EXPORT_SYMBOL_GPL vmlinux 0xb6787346 sfp_unregister_socket +EXPORT_SYMBOL_GPL vmlinux 0xb6812ce6 regulator_map_voltage_linear_range +EXPORT_SYMBOL_GPL vmlinux 0xb6836ae3 tps6586x_irq_get_virq +EXPORT_SYMBOL_GPL vmlinux 0xb68a2d7c sdhci_suspend_host +EXPORT_SYMBOL_GPL vmlinux 0xb6a363c1 blk_mq_virtio_map_queues +EXPORT_SYMBOL_GPL vmlinux 0xb6e6d99d clk_disable +EXPORT_SYMBOL_GPL vmlinux 0xb6ed824f fsnotify_destroy_mark +EXPORT_SYMBOL_GPL vmlinux 0xb6fe8244 inet6_hash_connect +EXPORT_SYMBOL_GPL vmlinux 0xb701d07d sdio_disable_func +EXPORT_SYMBOL_GPL vmlinux 0xb705a801 genphy_c45_config_aneg +EXPORT_SYMBOL_GPL vmlinux 0xb70e86b5 relay_late_setup_files +EXPORT_SYMBOL_GPL vmlinux 0xb715b8bf dma_get_slave_caps +EXPORT_SYMBOL_GPL vmlinux 0xb72b728b crypto_unregister_template +EXPORT_SYMBOL_GPL vmlinux 0xb72e169f __rio_local_read_config_8 +EXPORT_SYMBOL_GPL vmlinux 0xb7329c06 clk_set_phase +EXPORT_SYMBOL_GPL vmlinux 0xb73667e0 devm_thermal_zone_of_sensor_unregister +EXPORT_SYMBOL_GPL vmlinux 0xb737399b usb_phy_set_charger_current +EXPORT_SYMBOL_GPL vmlinux 0xb73fb62e ohci_suspend +EXPORT_SYMBOL_GPL vmlinux 0xb7421a2c usb_unlocked_enable_lpm +EXPORT_SYMBOL_GPL vmlinux 0xb74538d2 kprobe_event_cmd_init +EXPORT_SYMBOL_GPL vmlinux 0xb7491c17 lzorle1x_1_compress +EXPORT_SYMBOL_GPL vmlinux 0xb74a14bd mtd_unpoint +EXPORT_SYMBOL_GPL vmlinux 0xb7599444 dm_internal_resume +EXPORT_SYMBOL_GPL vmlinux 0xb7645136 led_trigger_unregister_simple +EXPORT_SYMBOL_GPL vmlinux 0xb771e6b7 bL_switch_request_cb +EXPORT_SYMBOL_GPL vmlinux 0xb77db4cd software_node_find_by_name +EXPORT_SYMBOL_GPL vmlinux 0xb7a387fc synchronize_rcu_tasks_rude +EXPORT_SYMBOL_GPL vmlinux 0xb7b81fa2 ftrace_ops_set_global_filter +EXPORT_SYMBOL_GPL vmlinux 0xb7be686a blkcg_print_blkgs +EXPORT_SYMBOL_GPL vmlinux 0xb7befb99 phy_set_mode_ext +EXPORT_SYMBOL_GPL vmlinux 0xb7c69a63 unregister_vmap_purge_notifier +EXPORT_SYMBOL_GPL vmlinux 0xb7d2590b led_trigger_blink_oneshot +EXPORT_SYMBOL_GPL vmlinux 0xb7df7e94 pci_store_saved_state +EXPORT_SYMBOL_GPL vmlinux 0xb7ea57e7 snd_soc_jack_add_gpiods +EXPORT_SYMBOL_GPL vmlinux 0xb7f17185 ip_build_and_send_pkt +EXPORT_SYMBOL_GPL vmlinux 0xb7f7a873 event_triggers_call +EXPORT_SYMBOL_GPL vmlinux 0xb8082c94 addrconf_add_linklocal +EXPORT_SYMBOL_GPL vmlinux 0xb80957e5 synth_event_trace +EXPORT_SYMBOL_GPL vmlinux 0xb8212341 timecounter_cyc2time +EXPORT_SYMBOL_GPL vmlinux 0xb82566eb omap_tll_enable +EXPORT_SYMBOL_GPL vmlinux 0xb846c8e7 tty_kclose +EXPORT_SYMBOL_GPL vmlinux 0xb84a05d8 dax_copy_from_iter +EXPORT_SYMBOL_GPL vmlinux 0xb854bd8e phy_basic_t1_features +EXPORT_SYMBOL_GPL vmlinux 0xb867fd7d watchdog_set_restart_priority +EXPORT_SYMBOL_GPL vmlinux 0xb8752e4d __tracepoint_fib6_table_lookup +EXPORT_SYMBOL_GPL vmlinux 0xb8762885 icc_set_tag +EXPORT_SYMBOL_GPL vmlinux 0xb88dbfce irq_set_irqchip_state +EXPORT_SYMBOL_GPL vmlinux 0xb8a1832a clockevents_unbind_device +EXPORT_SYMBOL_GPL vmlinux 0xb8a30d26 devm_of_platform_populate +EXPORT_SYMBOL_GPL vmlinux 0xb8a6125c driver_for_each_device +EXPORT_SYMBOL_GPL vmlinux 0xb8ad147b crypto_destroy_tfm +EXPORT_SYMBOL_GPL vmlinux 0xb8b139e8 of_phandle_iterator_next +EXPORT_SYMBOL_GPL vmlinux 0xb8cd3a7f nf_logger_put +EXPORT_SYMBOL_GPL vmlinux 0xb8efabcd platform_bus +EXPORT_SYMBOL_GPL vmlinux 0xb8f6c6d9 gpiochip_lock_as_irq +EXPORT_SYMBOL_GPL vmlinux 0xb905a316 shmem_file_setup +EXPORT_SYMBOL_GPL vmlinux 0xb9084b12 devm_hwmon_device_register_with_groups +EXPORT_SYMBOL_GPL vmlinux 0xb90a1fcd rsa_parse_priv_key +EXPORT_SYMBOL_GPL vmlinux 0xb90a8f31 ata_qc_complete_multiple +EXPORT_SYMBOL_GPL vmlinux 0xb90f9f0c devlink_dpipe_headers_register +EXPORT_SYMBOL_GPL vmlinux 0xb9138620 xas_create_range +EXPORT_SYMBOL_GPL vmlinux 0xb9176155 asn1_ber_decoder +EXPORT_SYMBOL_GPL vmlinux 0xb917b6d7 return_address +EXPORT_SYMBOL_GPL vmlinux 0xb91d1b85 thermal_zone_unbind_cooling_device +EXPORT_SYMBOL_GPL vmlinux 0xb9271c67 sdhci_execute_tuning +EXPORT_SYMBOL_GPL vmlinux 0xb9368951 devlink_region_snapshot_id_get +EXPORT_SYMBOL_GPL vmlinux 0xb9370ac9 sync_page_io +EXPORT_SYMBOL_GPL vmlinux 0xb9493544 vfs_read +EXPORT_SYMBOL_GPL vmlinux 0xb94dbbcd wakeup_source_destroy +EXPORT_SYMBOL_GPL vmlinux 0xb94ea357 fib6_rule_default +EXPORT_SYMBOL_GPL vmlinux 0xb951a675 iommu_group_for_each_dev +EXPORT_SYMBOL_GPL vmlinux 0xb95559bc housekeeping_any_cpu +EXPORT_SYMBOL_GPL vmlinux 0xb9567f97 pci_epc_mem_exit +EXPORT_SYMBOL_GPL vmlinux 0xb9595e3d splice_to_pipe +EXPORT_SYMBOL_GPL vmlinux 0xb9610714 wm8350_clear_bits +EXPORT_SYMBOL_GPL vmlinux 0xb966fb6c unregister_virtio_driver +EXPORT_SYMBOL_GPL vmlinux 0xb9681621 xdp_do_flush +EXPORT_SYMBOL_GPL vmlinux 0xb9746164 regmap_add_irq_chip +EXPORT_SYMBOL_GPL vmlinux 0xb97762cd bus_create_file +EXPORT_SYMBOL_GPL vmlinux 0xb97c0083 crypto_larval_alloc +EXPORT_SYMBOL_GPL vmlinux 0xb994cac9 spi_take_timestamp_post +EXPORT_SYMBOL_GPL vmlinux 0xb99a93f5 crypto_chain +EXPORT_SYMBOL_GPL vmlinux 0xb99d3629 synth_event_cmd_init +EXPORT_SYMBOL_GPL vmlinux 0xb9a70aa5 nvdimm_provider_data +EXPORT_SYMBOL_GPL vmlinux 0xb9b462cf ping_getfrag +EXPORT_SYMBOL_GPL vmlinux 0xb9b9df41 usb_amd_dev_put +EXPORT_SYMBOL_GPL vmlinux 0xb9c40692 snd_soc_tplg_component_remove +EXPORT_SYMBOL_GPL vmlinux 0xb9c425de register_syscore_ops +EXPORT_SYMBOL_GPL vmlinux 0xb9cac776 tps6586x_set_bits +EXPORT_SYMBOL_GPL vmlinux 0xb9d025c9 llist_del_first +EXPORT_SYMBOL_GPL vmlinux 0xb9df8728 virtqueue_is_broken +EXPORT_SYMBOL_GPL vmlinux 0xb9e87b94 bL_switcher_trace_trigger +EXPORT_SYMBOL_GPL vmlinux 0xb9ee463e irq_chip_get_parent_state +EXPORT_SYMBOL_GPL vmlinux 0xba12fabd event_triggers_post_call +EXPORT_SYMBOL_GPL vmlinux 0xba268162 tty_port_tty_hangup +EXPORT_SYMBOL_GPL vmlinux 0xba2b7f64 cpufreq_generic_get +EXPORT_SYMBOL_GPL vmlinux 0xba2bd125 phy_gbit_fibre_features +EXPORT_SYMBOL_GPL vmlinux 0xba2d9c3e regulator_notifier_call_chain +EXPORT_SYMBOL_GPL vmlinux 0xba338333 pwm_free +EXPORT_SYMBOL_GPL vmlinux 0xba361d89 ahci_platform_ops +EXPORT_SYMBOL_GPL vmlinux 0xba370d6a tps65912_device_exit +EXPORT_SYMBOL_GPL vmlinux 0xba39af51 fuse_simple_background +EXPORT_SYMBOL_GPL vmlinux 0xba3b7ac3 nd_blk_region_provider_data +EXPORT_SYMBOL_GPL vmlinux 0xba4034a3 trace_event_buffer_lock_reserve +EXPORT_SYMBOL_GPL vmlinux 0xba485768 usb_hcd_pci_remove +EXPORT_SYMBOL_GPL vmlinux 0xba4e26bb mtd_ooblayout_set_eccbytes +EXPORT_SYMBOL_GPL vmlinux 0xba57e075 device_change_owner +EXPORT_SYMBOL_GPL vmlinux 0xba5c9402 cpufreq_cpu_get_raw +EXPORT_SYMBOL_GPL vmlinux 0xba70e27c phy_get +EXPORT_SYMBOL_GPL vmlinux 0xba784ee9 fscrypt_drop_inode +EXPORT_SYMBOL_GPL vmlinux 0xba858898 sata_scr_valid +EXPORT_SYMBOL_GPL vmlinux 0xba96e753 icc_nodes_remove +EXPORT_SYMBOL_GPL vmlinux 0xbab87f20 snd_soc_runtime_action +EXPORT_SYMBOL_GPL vmlinux 0xbab9a9f0 maxim_charger_currents +EXPORT_SYMBOL_GPL vmlinux 0xbac16ea3 dma_async_device_channel_unregister +EXPORT_SYMBOL_GPL vmlinux 0xbad16e30 blk_rq_unprep_clone +EXPORT_SYMBOL_GPL vmlinux 0xbad6e714 trace_event_ignore_this_pid +EXPORT_SYMBOL_GPL vmlinux 0xbadb98b7 bus_unregister +EXPORT_SYMBOL_GPL vmlinux 0xbae4b5cb kernfs_get +EXPORT_SYMBOL_GPL vmlinux 0xbae7d016 lwtunnel_state_alloc +EXPORT_SYMBOL_GPL vmlinux 0xbaf6850c fsnotify_wait_marks_destroyed +EXPORT_SYMBOL_GPL vmlinux 0xbafa1cba irq_domain_pop_irq +EXPORT_SYMBOL_GPL vmlinux 0xbafee2f4 dev_pm_put_subsys_data +EXPORT_SYMBOL_GPL vmlinux 0xbb0ab47b debug_locks +EXPORT_SYMBOL_GPL vmlinux 0xbb0b09ac ip6_local_out +EXPORT_SYMBOL_GPL vmlinux 0xbb0f3d97 snd_pcm_stream_unlock_irq +EXPORT_SYMBOL_GPL vmlinux 0xbb135277 bus_register +EXPORT_SYMBOL_GPL vmlinux 0xbb1a1f1e regulator_get_voltage_sel_regmap +EXPORT_SYMBOL_GPL vmlinux 0xbb2124ea sdhci_adma_write_desc +EXPORT_SYMBOL_GPL vmlinux 0xbb2f53b5 fwnode_graph_get_endpoint_by_id +EXPORT_SYMBOL_GPL vmlinux 0xbb4c0823 dm_put +EXPORT_SYMBOL_GPL vmlinux 0xbb4c7570 pids_cgrp_subsys_on_dfl_key +EXPORT_SYMBOL_GPL vmlinux 0xbb55ce48 pinctrl_generic_get_group +EXPORT_SYMBOL_GPL vmlinux 0xbb664670 vmf_insert_pfn_pmd_prot +EXPORT_SYMBOL_GPL vmlinux 0xbb6a3cbd devlink_fmsg_arr_pair_nest_start +EXPORT_SYMBOL_GPL vmlinux 0xbb6ab13e devm_extcon_dev_register +EXPORT_SYMBOL_GPL vmlinux 0xbb7195a5 xdp_warn +EXPORT_SYMBOL_GPL vmlinux 0xbb7af105 vga_default_device +EXPORT_SYMBOL_GPL vmlinux 0xbb902505 look_up_OID +EXPORT_SYMBOL_GPL vmlinux 0xbba74717 blkcg_deactivate_policy +EXPORT_SYMBOL_GPL vmlinux 0xbbaf9413 irq_create_direct_mapping +EXPORT_SYMBOL_GPL vmlinux 0xbbb819fb gpiod_set_consumer_name +EXPORT_SYMBOL_GPL vmlinux 0xbbb9f8da led_sysfs_disable +EXPORT_SYMBOL_GPL vmlinux 0xbbbfd043 snd_soc_dapm_get_pin_switch +EXPORT_SYMBOL_GPL vmlinux 0xbbc3f51d devm_hwspin_lock_unregister +EXPORT_SYMBOL_GPL vmlinux 0xbbcaeba3 cpufreq_cpu_get +EXPORT_SYMBOL_GPL vmlinux 0xbbcd5770 debugfs_create_dir +EXPORT_SYMBOL_GPL vmlinux 0xbbd1282a skb_mpls_update_lse +EXPORT_SYMBOL_GPL vmlinux 0xbbd9ce2a of_get_phy_mode +EXPORT_SYMBOL_GPL vmlinux 0xbbf5fcd1 blk_update_request +EXPORT_SYMBOL_GPL vmlinux 0xbbfbb384 devm_phy_package_join +EXPORT_SYMBOL_GPL vmlinux 0xbc18acaa register_wide_hw_breakpoint +EXPORT_SYMBOL_GPL vmlinux 0xbc260c3a iommu_domain_alloc +EXPORT_SYMBOL_GPL vmlinux 0xbc2e1849 blkcg_policy_register +EXPORT_SYMBOL_GPL vmlinux 0xbc40e70b snd_soc_of_parse_daifmt +EXPORT_SYMBOL_GPL vmlinux 0xbc66e9e6 regulator_disable +EXPORT_SYMBOL_GPL vmlinux 0xbc691afe genphy_c45_read_status +EXPORT_SYMBOL_GPL vmlinux 0xbc6a40e8 sdio_readw +EXPORT_SYMBOL_GPL vmlinux 0xbc6bec66 free_percpu_irq +EXPORT_SYMBOL_GPL vmlinux 0xbc95a31f of_property_read_variable_u64_array +EXPORT_SYMBOL_GPL vmlinux 0xbca1742b crypto_shash_final +EXPORT_SYMBOL_GPL vmlinux 0xbcbf1d4b pinctrl_pm_select_idle_state +EXPORT_SYMBOL_GPL vmlinux 0xbcc15e75 ktime_get_coarse_with_offset +EXPORT_SYMBOL_GPL vmlinux 0xbcc45af1 regulator_get_voltage_rdev +EXPORT_SYMBOL_GPL vmlinux 0xbcc5f4bb snd_soc_get_dai_id +EXPORT_SYMBOL_GPL vmlinux 0xbccb8f48 irq_chip_release_resources_parent +EXPORT_SYMBOL_GPL vmlinux 0xbccfd4d8 register_oldmem_pfn_is_ram +EXPORT_SYMBOL_GPL vmlinux 0xbcdd5b99 iommu_group_set_name +EXPORT_SYMBOL_GPL vmlinux 0xbcde3fa8 inet6_hash +EXPORT_SYMBOL_GPL vmlinux 0xbce0b681 snd_soc_set_dmi_name +EXPORT_SYMBOL_GPL vmlinux 0xbcf1f0e6 zs_create_pool +EXPORT_SYMBOL_GPL vmlinux 0xbcf4532e seg6_do_srh_encap +EXPORT_SYMBOL_GPL vmlinux 0xbd1698b1 platform_driver_unregister +EXPORT_SYMBOL_GPL vmlinux 0xbd229211 dma_wait_for_async_tx +EXPORT_SYMBOL_GPL vmlinux 0xbd2f55ad devm_free_pages +EXPORT_SYMBOL_GPL vmlinux 0xbd31662d thermal_cooling_device_unregister +EXPORT_SYMBOL_GPL vmlinux 0xbd3fe1e3 disable_hardirq +EXPORT_SYMBOL_GPL vmlinux 0xbd4e8b52 __sync_filesystem +EXPORT_SYMBOL_GPL vmlinux 0xbd6a95b3 nvmem_register +EXPORT_SYMBOL_GPL vmlinux 0xbd7f99dd led_compose_name +EXPORT_SYMBOL_GPL vmlinux 0xbd9c3668 pm_wakeup_ws_event +EXPORT_SYMBOL_GPL vmlinux 0xbdaf099f devm_free_percpu +EXPORT_SYMBOL_GPL vmlinux 0xbde28566 serial8250_do_shutdown +EXPORT_SYMBOL_GPL vmlinux 0xbe00222c trace_event_buffer_commit +EXPORT_SYMBOL_GPL vmlinux 0xbe071116 sock_diag_save_cookie +EXPORT_SYMBOL_GPL vmlinux 0xbe09cb28 fib_rules_unregister +EXPORT_SYMBOL_GPL vmlinux 0xbe09cd07 serial8250_set_defaults +EXPORT_SYMBOL_GPL vmlinux 0xbe0f69fc pci_user_write_config_dword +EXPORT_SYMBOL_GPL vmlinux 0xbe13eb13 wm8350_block_read +EXPORT_SYMBOL_GPL vmlinux 0xbe191c11 tpm_tis_core_init +EXPORT_SYMBOL_GPL vmlinux 0xbe2ee267 usb_hcd_resume_root_hub +EXPORT_SYMBOL_GPL vmlinux 0xbe33ef48 of_clk_set_defaults +EXPORT_SYMBOL_GPL vmlinux 0xbe40397e iommu_map_sg +EXPORT_SYMBOL_GPL vmlinux 0xbe5341fe housekeeping_affine +EXPORT_SYMBOL_GPL vmlinux 0xbe687e88 wake_up_all_idle_cpus +EXPORT_SYMBOL_GPL vmlinux 0xbe89550b serial8250_rpm_put_tx +EXPORT_SYMBOL_GPL vmlinux 0xbe96dfd8 of_reconfig_notifier_unregister +EXPORT_SYMBOL_GPL vmlinux 0xbe990334 fsnotify +EXPORT_SYMBOL_GPL vmlinux 0xbe99c3a2 sdhci_enable_sdio_irq +EXPORT_SYMBOL_GPL vmlinux 0xbe9a83d5 dw_pcie_write +EXPORT_SYMBOL_GPL vmlinux 0xbea12b3d iommu_dev_enable_feature +EXPORT_SYMBOL_GPL vmlinux 0xbea5ff1e static_key_initialized +EXPORT_SYMBOL_GPL vmlinux 0xbea60c07 snd_soc_add_component +EXPORT_SYMBOL_GPL vmlinux 0xbec0a452 snd_soc_component_async_complete +EXPORT_SYMBOL_GPL vmlinux 0xbedcf9d4 tun_get_tx_ring +EXPORT_SYMBOL_GPL vmlinux 0xbee59e37 fuse_dev_alloc +EXPORT_SYMBOL_GPL vmlinux 0xbef0fab9 virtqueue_poll +EXPORT_SYMBOL_GPL vmlinux 0xbefb53aa register_kprobes +EXPORT_SYMBOL_GPL vmlinux 0xbf041102 register_vt_notifier +EXPORT_SYMBOL_GPL vmlinux 0xbf050b21 rio_mport_read_config_32 +EXPORT_SYMBOL_GPL vmlinux 0xbf0c357c mpc8xxx_spi_rx_buf_u32 +EXPORT_SYMBOL_GPL vmlinux 0xbf1c424f rockchip_pcie_enable_clocks +EXPORT_SYMBOL_GPL vmlinux 0xbf1f5fbf devm_namespace_disable +EXPORT_SYMBOL_GPL vmlinux 0xbf335f6a blkg_lookup_slowpath +EXPORT_SYMBOL_GPL vmlinux 0xbf4eedd2 housekeeping_cpumask +EXPORT_SYMBOL_GPL vmlinux 0xbf50a9a3 mpc8xxx_spi_tx_buf_u32 +EXPORT_SYMBOL_GPL vmlinux 0xbf525dc1 icc_provider_add +EXPORT_SYMBOL_GPL vmlinux 0xbf6abbe7 housekeeping_enabled +EXPORT_SYMBOL_GPL vmlinux 0xbf7128d9 fuse_conn_get +EXPORT_SYMBOL_GPL vmlinux 0xbf7f9bce sdhci_runtime_resume_host +EXPORT_SYMBOL_GPL vmlinux 0xbf8210d9 devm_regulator_register_supply_alias +EXPORT_SYMBOL_GPL vmlinux 0xbf86bbed of_i2c_setup_smbus_alert +EXPORT_SYMBOL_GPL vmlinux 0xbfac31fb snd_dmaengine_pcm_close +EXPORT_SYMBOL_GPL vmlinux 0xbfbc5434 pciserial_resume_ports +EXPORT_SYMBOL_GPL vmlinux 0xbfc12e6a __irq_alloc_domain_generic_chips +EXPORT_SYMBOL_GPL vmlinux 0xbfc6aa55 rockchip_pcie_cfg_configuration_accesses +EXPORT_SYMBOL_GPL vmlinux 0xbfc8f6cc devm_hwrng_register +EXPORT_SYMBOL_GPL vmlinux 0xbfcd40c7 __pneigh_lookup +EXPORT_SYMBOL_GPL vmlinux 0xbfd7b111 gov_attr_set_put +EXPORT_SYMBOL_GPL vmlinux 0xbfe335d5 gov_attr_set_init +EXPORT_SYMBOL_GPL vmlinux 0xbfe5616d tick_broadcast_oneshot_control +EXPORT_SYMBOL_GPL vmlinux 0xbff65061 class_unregister +EXPORT_SYMBOL_GPL vmlinux 0xbff85f34 usb_register_driver +EXPORT_SYMBOL_GPL vmlinux 0xbffce09b rhashtable_walk_exit +EXPORT_SYMBOL_GPL vmlinux 0xc00131cf visitor64 +EXPORT_SYMBOL_GPL vmlinux 0xc006b0b5 lp8788_read_multi_bytes +EXPORT_SYMBOL_GPL vmlinux 0xc00a5816 pci_host_common_probe +EXPORT_SYMBOL_GPL vmlinux 0xc018e1a0 list_lru_add +EXPORT_SYMBOL_GPL vmlinux 0xc026b82a dma_buf_move_notify +EXPORT_SYMBOL_GPL vmlinux 0xc03c72f6 devm_gpio_request_one +EXPORT_SYMBOL_GPL vmlinux 0xc0420b23 usb_bus_idr_lock +EXPORT_SYMBOL_GPL vmlinux 0xc0429a71 snd_soc_dpcm_can_be_params +EXPORT_SYMBOL_GPL vmlinux 0xc045b1f7 register_pernet_subsys +EXPORT_SYMBOL_GPL vmlinux 0xc0583e20 edac_queue_work +EXPORT_SYMBOL_GPL vmlinux 0xc06b77b3 __cci_control_port_by_index +EXPORT_SYMBOL_GPL vmlinux 0xc06cc9fb adp5520_clr_bits +EXPORT_SYMBOL_GPL vmlinux 0xc07bf56f clk_hw_register_fractional_divider +EXPORT_SYMBOL_GPL vmlinux 0xc07c0a93 spi_delay_exec +EXPORT_SYMBOL_GPL vmlinux 0xc081c246 bL_switcher_put_enabled +EXPORT_SYMBOL_GPL vmlinux 0xc08930fb adp5520_read +EXPORT_SYMBOL_GPL vmlinux 0xc0952c38 usb_ep0_reinit +EXPORT_SYMBOL_GPL vmlinux 0xc09ea3fb pci_max_pasids +EXPORT_SYMBOL_GPL vmlinux 0xc0a96e14 rcu_gp_is_expedited +EXPORT_SYMBOL_GPL vmlinux 0xc0ae6e2b spi_mem_dirmap_destroy +EXPORT_SYMBOL_GPL vmlinux 0xc0c2cac4 n_tty_inherit_ops +EXPORT_SYMBOL_GPL vmlinux 0xc0dcb59e edac_layer_name +EXPORT_SYMBOL_GPL vmlinux 0xc0e75cec visitor128 +EXPORT_SYMBOL_GPL vmlinux 0xc0edfcf6 skb_copy_ubufs +EXPORT_SYMBOL_GPL vmlinux 0xc0ee3d5b of_prop_next_u32 +EXPORT_SYMBOL_GPL vmlinux 0xc0f0458a ip_tunnel_unneed_metadata +EXPORT_SYMBOL_GPL vmlinux 0xc0f56b2e proc_create_net_data_write +EXPORT_SYMBOL_GPL vmlinux 0xc0f9e2b3 sysfs_file_change_owner +EXPORT_SYMBOL_GPL vmlinux 0xc1023c29 noop_direct_IO +EXPORT_SYMBOL_GPL vmlinux 0xc10655da xas_get_mark +EXPORT_SYMBOL_GPL vmlinux 0xc1086e0c sysrq_toggle_support +EXPORT_SYMBOL_GPL vmlinux 0xc10fddb8 name_to_dev_t +EXPORT_SYMBOL_GPL vmlinux 0xc139a3de fwnode_get_name +EXPORT_SYMBOL_GPL vmlinux 0xc150aaec ahci_print_info +EXPORT_SYMBOL_GPL vmlinux 0xc16ae939 edac_pci_release_generic_ctl +EXPORT_SYMBOL_GPL vmlinux 0xc172134e synth_event_trace_array +EXPORT_SYMBOL_GPL vmlinux 0xc17515d7 usb_hcds_loaded +EXPORT_SYMBOL_GPL vmlinux 0xc176b9a9 ip4_datagram_release_cb +EXPORT_SYMBOL_GPL vmlinux 0xc180fd6b pm_runtime_suspended_time +EXPORT_SYMBOL_GPL vmlinux 0xc1879adb crypto_register_akcipher +EXPORT_SYMBOL_GPL vmlinux 0xc19b8560 mtd_write +EXPORT_SYMBOL_GPL vmlinux 0xc19c3a66 srcu_notifier_chain_register +EXPORT_SYMBOL_GPL vmlinux 0xc1a12a9f dev_change_net_namespace +EXPORT_SYMBOL_GPL vmlinux 0xc1a46204 blk_lld_busy +EXPORT_SYMBOL_GPL vmlinux 0xc1bfa5cc vchan_dma_desc_free_list +EXPORT_SYMBOL_GPL vmlinux 0xc1f6087d __tcp_bpf_recvmsg +EXPORT_SYMBOL_GPL vmlinux 0xc1fbb896 spi_setup +EXPORT_SYMBOL_GPL vmlinux 0xc21b3cca devices_cgrp_subsys_on_dfl_key +EXPORT_SYMBOL_GPL vmlinux 0xc21b5d33 sysfs_update_groups +EXPORT_SYMBOL_GPL vmlinux 0xc222ead3 xas_find_marked +EXPORT_SYMBOL_GPL vmlinux 0xc22a3091 vm_unmap_aliases +EXPORT_SYMBOL_GPL vmlinux 0xc22e665f mtk_eint_set_debounce +EXPORT_SYMBOL_GPL vmlinux 0xc231abb3 devm_reset_control_array_get +EXPORT_SYMBOL_GPL vmlinux 0xc2351fd3 trace_event_reg +EXPORT_SYMBOL_GPL vmlinux 0xc23a3513 subsys_dev_iter_init +EXPORT_SYMBOL_GPL vmlinux 0xc248c495 rtc_class_close +EXPORT_SYMBOL_GPL vmlinux 0xc2688271 tcp_twsk_unique +EXPORT_SYMBOL_GPL vmlinux 0xc2692173 wakeup_sources_read_lock +EXPORT_SYMBOL_GPL vmlinux 0xc270550f clk_hw_set_rate_range +EXPORT_SYMBOL_GPL vmlinux 0xc27c382e serdev_device_write_flush +EXPORT_SYMBOL_GPL vmlinux 0xc27f3bd6 __class_create +EXPORT_SYMBOL_GPL vmlinux 0xc280fb46 kdb_register +EXPORT_SYMBOL_GPL vmlinux 0xc287e18d snd_soc_card_jack_new +EXPORT_SYMBOL_GPL vmlinux 0xc289e46d cpufreq_generic_frequency_table_verify +EXPORT_SYMBOL_GPL vmlinux 0xc2976d9c dm_device_name +EXPORT_SYMBOL_GPL vmlinux 0xc2979f21 ncsi_start_dev +EXPORT_SYMBOL_GPL vmlinux 0xc2a261ec exportfs_encode_inode_fh +EXPORT_SYMBOL_GPL vmlinux 0xc2a5e44a pm_generic_poweroff_noirq +EXPORT_SYMBOL_GPL vmlinux 0xc2a814db tcp_memory_pressure +EXPORT_SYMBOL_GPL vmlinux 0xc2c79381 sdhci_cleanup_host +EXPORT_SYMBOL_GPL vmlinux 0xc2c95290 attribute_container_classdev_to_container +EXPORT_SYMBOL_GPL vmlinux 0xc2db7e18 xas_find +EXPORT_SYMBOL_GPL vmlinux 0xc2fd27ec extcon_get_extcon_dev +EXPORT_SYMBOL_GPL vmlinux 0xc3051702 dev_nit_active +EXPORT_SYMBOL_GPL vmlinux 0xc33ac9ae dma_request_chan_by_mask +EXPORT_SYMBOL_GPL vmlinux 0xc33c5071 pci_sriov_set_totalvfs +EXPORT_SYMBOL_GPL vmlinux 0xc33ceccd sched_trace_rq_cpu +EXPORT_SYMBOL_GPL vmlinux 0xc341ae6d zs_map_object +EXPORT_SYMBOL_GPL vmlinux 0xc3434c18 of_genpd_add_provider_simple +EXPORT_SYMBOL_GPL vmlinux 0xc351a642 pm_clk_runtime_suspend +EXPORT_SYMBOL_GPL vmlinux 0xc352c63a pm_genpd_remove +EXPORT_SYMBOL_GPL vmlinux 0xc35a817e phy_destroy +EXPORT_SYMBOL_GPL vmlinux 0xc36d535c tty_put_char +EXPORT_SYMBOL_GPL vmlinux 0xc370fd24 tc3589x_set_bits +EXPORT_SYMBOL_GPL vmlinux 0xc3805cd1 fs_ftype_to_dtype +EXPORT_SYMBOL_GPL vmlinux 0xc38133a0 inet6_csk_update_pmtu +EXPORT_SYMBOL_GPL vmlinux 0xc385cb58 perf_num_counters +EXPORT_SYMBOL_GPL vmlinux 0xc3903278 of_genpd_add_subdomain +EXPORT_SYMBOL_GPL vmlinux 0xc3a7d4d2 xhci_ext_cap_init +EXPORT_SYMBOL_GPL vmlinux 0xc3b5261f generic_file_buffered_read +EXPORT_SYMBOL_GPL vmlinux 0xc3c4c6cc hash_algo_name +EXPORT_SYMBOL_GPL vmlinux 0xc3c79ba3 snd_soc_component_force_enable_pin_unlocked +EXPORT_SYMBOL_GPL vmlinux 0xc3dc064c hisi_clk_init +EXPORT_SYMBOL_GPL vmlinux 0xc3de65ff ring_buffer_bytes_cpu +EXPORT_SYMBOL_GPL vmlinux 0xc3e8229e tty_standard_install +EXPORT_SYMBOL_GPL vmlinux 0xc3e8f2d0 regulator_get_init_drvdata +EXPORT_SYMBOL_GPL vmlinux 0xc3ea5305 iommu_default_passthrough +EXPORT_SYMBOL_GPL vmlinux 0xc3fceef3 blk_trace_setup +EXPORT_SYMBOL_GPL vmlinux 0xc428068d sata_deb_timing_long +EXPORT_SYMBOL_GPL vmlinux 0xc432727a regmap_multi_reg_write +EXPORT_SYMBOL_GPL vmlinux 0xc4469d98 devfreq_cooling_register +EXPORT_SYMBOL_GPL vmlinux 0xc454fc7b twl_get_type +EXPORT_SYMBOL_GPL vmlinux 0xc46ef6b9 ahci_qc_issue +EXPORT_SYMBOL_GPL vmlinux 0xc471a76a pm_clk_remove +EXPORT_SYMBOL_GPL vmlinux 0xc471c67a twl4030_audio_disable_resource +EXPORT_SYMBOL_GPL vmlinux 0xc4795576 ata_port_abort +EXPORT_SYMBOL_GPL vmlinux 0xc48b7ccf ata_mode_string +EXPORT_SYMBOL_GPL vmlinux 0xc4937fde ti_clk_is_in_standby +EXPORT_SYMBOL_GPL vmlinux 0xc4a2a662 vchan_find_desc +EXPORT_SYMBOL_GPL vmlinux 0xc4a2fcfc dev_pm_qos_hide_latency_tolerance +EXPORT_SYMBOL_GPL vmlinux 0xc4a6d260 pci_user_write_config_word +EXPORT_SYMBOL_GPL vmlinux 0xc4b4163d devm_clk_bulk_get +EXPORT_SYMBOL_GPL vmlinux 0xc4b67b0a snd_soc_runtime_set_dai_fmt +EXPORT_SYMBOL_GPL vmlinux 0xc4b6971a mtk_build_eint +EXPORT_SYMBOL_GPL vmlinux 0xc4b8bf76 phy_pm_runtime_put +EXPORT_SYMBOL_GPL vmlinux 0xc4cf2420 ring_buffer_read_page +EXPORT_SYMBOL_GPL vmlinux 0xc4ddc74c crypto_type_has_alg +EXPORT_SYMBOL_GPL vmlinux 0xc4f0da12 ktime_get_with_offset +EXPORT_SYMBOL_GPL vmlinux 0xc4f99397 __devm_of_phy_provider_register +EXPORT_SYMBOL_GPL vmlinux 0xc5045c0b class_dev_iter_next +EXPORT_SYMBOL_GPL vmlinux 0xc50a5b2d regulator_register +EXPORT_SYMBOL_GPL vmlinux 0xc5131b13 cpuidle_register_driver +EXPORT_SYMBOL_GPL vmlinux 0xc5178ff8 crypto_unregister_rng +EXPORT_SYMBOL_GPL vmlinux 0xc548c94d __clk_hw_register_fixed_rate +EXPORT_SYMBOL_GPL vmlinux 0xc5578bd2 __pci_epf_register_driver +EXPORT_SYMBOL_GPL vmlinux 0xc55ff962 phy_basic_t1_features_array +EXPORT_SYMBOL_GPL vmlinux 0xc5604800 clk_set_rate_exclusive +EXPORT_SYMBOL_GPL vmlinux 0xc569d8ce __clk_get_name +EXPORT_SYMBOL_GPL vmlinux 0xc575c737 debug_locks_off +EXPORT_SYMBOL_GPL vmlinux 0xc5777fca linear_range_get_selector_low_array +EXPORT_SYMBOL_GPL vmlinux 0xc5793196 tty_port_default_client_ops +EXPORT_SYMBOL_GPL vmlinux 0xc58a3ee6 icc_node_destroy +EXPORT_SYMBOL_GPL vmlinux 0xc5a5c678 uart_parse_earlycon +EXPORT_SYMBOL_GPL vmlinux 0xc5bcd942 crypto_aes_set_key +EXPORT_SYMBOL_GPL vmlinux 0xc5c547a2 bpf_prog_sub +EXPORT_SYMBOL_GPL vmlinux 0xc5eff032 sysfs_break_active_protection +EXPORT_SYMBOL_GPL vmlinux 0xc5f156d5 dev_fwnode +EXPORT_SYMBOL_GPL vmlinux 0xc6022992 omap_iommu_domain_deactivate +EXPORT_SYMBOL_GPL vmlinux 0xc604b04c dev_pm_opp_detach_genpd +EXPORT_SYMBOL_GPL vmlinux 0xc60cf30e regmap_noinc_write +EXPORT_SYMBOL_GPL vmlinux 0xc6161b4a vfs_truncate +EXPORT_SYMBOL_GPL vmlinux 0xc617f82c unregister_oom_notifier +EXPORT_SYMBOL_GPL vmlinux 0xc623f199 class_compat_remove_link +EXPORT_SYMBOL_GPL vmlinux 0xc62ada50 regmap_field_read +EXPORT_SYMBOL_GPL vmlinux 0xc62e76ce shmem_file_setup_with_mnt +EXPORT_SYMBOL_GPL vmlinux 0xc6336783 tty_buffer_request_room +EXPORT_SYMBOL_GPL vmlinux 0xc63b627e genphy_c45_pma_read_abilities +EXPORT_SYMBOL_GPL vmlinux 0xc64a59b4 cgroup_rstat_updated +EXPORT_SYMBOL_GPL vmlinux 0xc64bfb31 cros_ec_check_features +EXPORT_SYMBOL_GPL vmlinux 0xc654d3f4 lwtunnel_valid_encap_type +EXPORT_SYMBOL_GPL vmlinux 0xc65c1b97 i2c_slave_register +EXPORT_SYMBOL_GPL vmlinux 0xc660cec1 serdev_controller_alloc +EXPORT_SYMBOL_GPL vmlinux 0xc66b77b1 iommu_group_set_iommudata +EXPORT_SYMBOL_GPL vmlinux 0xc6779093 ring_buffer_record_enable +EXPORT_SYMBOL_GPL vmlinux 0xc67a452a tps65912_device_init +EXPORT_SYMBOL_GPL vmlinux 0xc67abd96 kthread_unuse_mm +EXPORT_SYMBOL_GPL vmlinux 0xc69b7ee5 zs_destroy_pool +EXPORT_SYMBOL_GPL vmlinux 0xc6a4a872 __clk_is_enabled +EXPORT_SYMBOL_GPL vmlinux 0xc6a57864 fuse_dev_alloc_install +EXPORT_SYMBOL_GPL vmlinux 0xc6b56a85 pci_pasid_features +EXPORT_SYMBOL_GPL vmlinux 0xc6b594e5 power_supply_set_input_current_limit_from_supplier +EXPORT_SYMBOL_GPL vmlinux 0xc6bb9899 blk_mq_bio_list_merge +EXPORT_SYMBOL_GPL vmlinux 0xc6c3bb07 sdhci_get_property +EXPORT_SYMBOL_GPL vmlinux 0xc6c3ed50 percpu_ref_reinit +EXPORT_SYMBOL_GPL vmlinux 0xc6d2d06c usb_find_alt_setting +EXPORT_SYMBOL_GPL vmlinux 0xc6d3e5ae pinctrl_generic_remove_group +EXPORT_SYMBOL_GPL vmlinux 0xc6d6a986 ping_err +EXPORT_SYMBOL_GPL vmlinux 0xc6dbfcef devm_snd_dmaengine_pcm_register +EXPORT_SYMBOL_GPL vmlinux 0xc6e2ebaa locks_alloc_lock +EXPORT_SYMBOL_GPL vmlinux 0xc6e667f1 thread_notify_head +EXPORT_SYMBOL_GPL vmlinux 0xc6e6d12a device_initialize +EXPORT_SYMBOL_GPL vmlinux 0xc6eec8f5 clk_divider_ops +EXPORT_SYMBOL_GPL vmlinux 0xc700b0fa udp4_lib_lookup_skb +EXPORT_SYMBOL_GPL vmlinux 0xc71e64a9 snmp_get_cpu_field +EXPORT_SYMBOL_GPL vmlinux 0xc732c97d spi_res_release +EXPORT_SYMBOL_GPL vmlinux 0xc732ffbb ata_pci_sff_init_one +EXPORT_SYMBOL_GPL vmlinux 0xc73a9e70 debugfs_read_file_bool +EXPORT_SYMBOL_GPL vmlinux 0xc73fe9a1 udp4_hwcsum +EXPORT_SYMBOL_GPL vmlinux 0xc7591b37 __clk_mux_determine_rate +EXPORT_SYMBOL_GPL vmlinux 0xc771f25d alarm_init +EXPORT_SYMBOL_GPL vmlinux 0xc7722886 usb_autopm_put_interface +EXPORT_SYMBOL_GPL vmlinux 0xc783e82d sb800_prefetch +EXPORT_SYMBOL_GPL vmlinux 0xc787f768 ata_std_error_handler +EXPORT_SYMBOL_GPL vmlinux 0xc79144f5 trace_seq_putmem_hex +EXPORT_SYMBOL_GPL vmlinux 0xc79c269b nvmem_cell_read_u32 +EXPORT_SYMBOL_GPL vmlinux 0xc7a00c88 pci_test_config_bits +EXPORT_SYMBOL_GPL vmlinux 0xc7a1840e llist_add_batch +EXPORT_SYMBOL_GPL vmlinux 0xc7a9db52 pinconf_generic_parse_dt_config +EXPORT_SYMBOL_GPL vmlinux 0xc7b6d83b snd_soc_jack_add_gpios +EXPORT_SYMBOL_GPL vmlinux 0xc7c372b6 find_asymmetric_key +EXPORT_SYMBOL_GPL vmlinux 0xc7eed052 scmi_driver_register +EXPORT_SYMBOL_GPL vmlinux 0xc7fa4aa9 kobj_ns_drop +EXPORT_SYMBOL_GPL vmlinux 0xc8189731 pm_generic_freeze_noirq +EXPORT_SYMBOL_GPL vmlinux 0xc81cce84 pci_reset_function +EXPORT_SYMBOL_GPL vmlinux 0xc821664a dst_cache_set_ip6 +EXPORT_SYMBOL_GPL vmlinux 0xc8269f94 snd_soc_params_to_frame_size +EXPORT_SYMBOL_GPL vmlinux 0xc82c721f klist_remove +EXPORT_SYMBOL_GPL vmlinux 0xc82f618f sata_sff_hardreset +EXPORT_SYMBOL_GPL vmlinux 0xc831dc99 pci_enable_ats +EXPORT_SYMBOL_GPL vmlinux 0xc848f1db register_ftrace_function +EXPORT_SYMBOL_GPL vmlinux 0xc8594d3d reset_control_acquire +EXPORT_SYMBOL_GPL vmlinux 0xc8789b73 unix_table_lock +EXPORT_SYMBOL_GPL vmlinux 0xc8851c66 dw_pcie_link_set_n_fts +EXPORT_SYMBOL_GPL vmlinux 0xc8a04183 nand_decode_ext_id +EXPORT_SYMBOL_GPL vmlinux 0xc8a64466 efivar_entry_size +EXPORT_SYMBOL_GPL vmlinux 0xc8b314e7 dmaengine_desc_attach_metadata +EXPORT_SYMBOL_GPL vmlinux 0xc8b498a0 of_clk_hw_simple_get +EXPORT_SYMBOL_GPL vmlinux 0xc8d9c5ce irq_gc_ack_set_bit +EXPORT_SYMBOL_GPL vmlinux 0xc8ddd5b5 kstrdup_quotable +EXPORT_SYMBOL_GPL vmlinux 0xc8eddd03 hwmon_notify_event +EXPORT_SYMBOL_GPL vmlinux 0xc8f8a458 ata_sff_data_xfer +EXPORT_SYMBOL_GPL vmlinux 0xc91277a1 kgdb_schedule_breakpoint +EXPORT_SYMBOL_GPL vmlinux 0xc9334a05 snd_soc_close_delayed_work +EXPORT_SYMBOL_GPL vmlinux 0xc9338fe7 get_task_mm +EXPORT_SYMBOL_GPL vmlinux 0xc93ee1e7 usb_phy_roothub_init +EXPORT_SYMBOL_GPL vmlinux 0xc9405618 param_set_bool_enable_only +EXPORT_SYMBOL_GPL vmlinux 0xc94f24e1 netdev_walk_all_upper_dev_rcu +EXPORT_SYMBOL_GPL vmlinux 0xc9561772 fb_destroy_modelist +EXPORT_SYMBOL_GPL vmlinux 0xc96fb674 nvmem_device_read +EXPORT_SYMBOL_GPL vmlinux 0xc97ef666 put_pid +EXPORT_SYMBOL_GPL vmlinux 0xc9827693 __bpf_call_base +EXPORT_SYMBOL_GPL vmlinux 0xc9874130 dev_pm_opp_find_freq_floor +EXPORT_SYMBOL_GPL vmlinux 0xc98cb534 regulator_get_drvdata +EXPORT_SYMBOL_GPL vmlinux 0xc98eb439 fscrypt_ioctl_remove_key +EXPORT_SYMBOL_GPL vmlinux 0xc997fc60 security_path_chmod +EXPORT_SYMBOL_GPL vmlinux 0xc9a228ce property_entries_free +EXPORT_SYMBOL_GPL vmlinux 0xc9a37a9e l3mdev_update_flow +EXPORT_SYMBOL_GPL vmlinux 0xc9a9a621 __fib_lookup +EXPORT_SYMBOL_GPL vmlinux 0xc9aa1203 hwrng_register +EXPORT_SYMBOL_GPL vmlinux 0xc9c1f42f unregister_kprobes +EXPORT_SYMBOL_GPL vmlinux 0xc9c40a25 thp_get_unmapped_area +EXPORT_SYMBOL_GPL vmlinux 0xc9d36480 regulator_set_voltage +EXPORT_SYMBOL_GPL vmlinux 0xc9d393da sbitmap_queue_wake_up +EXPORT_SYMBOL_GPL vmlinux 0xc9d6c6b5 xfrm_local_error +EXPORT_SYMBOL_GPL vmlinux 0xc9ec4e21 free_percpu +EXPORT_SYMBOL_GPL vmlinux 0xc9fb00f7 pl320_ipc_transmit +EXPORT_SYMBOL_GPL vmlinux 0xc9fd634a usb_role_switch_put +EXPORT_SYMBOL_GPL vmlinux 0xca1274c0 devm_regmap_init_vexpress_config +EXPORT_SYMBOL_GPL vmlinux 0xca235722 icc_link_create +EXPORT_SYMBOL_GPL vmlinux 0xca2397fb sdhci_set_uhs_signaling +EXPORT_SYMBOL_GPL vmlinux 0xca23eea3 of_phy_simple_xlate +EXPORT_SYMBOL_GPL vmlinux 0xca2a892e security_path_chown +EXPORT_SYMBOL_GPL vmlinux 0xca2e468c irq_chip_enable_parent +EXPORT_SYMBOL_GPL vmlinux 0xca2ec968 mm_unaccount_pinned_pages +EXPORT_SYMBOL_GPL vmlinux 0xca307a4d vfs_setxattr +EXPORT_SYMBOL_GPL vmlinux 0xca32b605 of_property_read_u64 +EXPORT_SYMBOL_GPL vmlinux 0xca3ab270 __tracepoint_map +EXPORT_SYMBOL_GPL vmlinux 0xca467318 hibernation_set_ops +EXPORT_SYMBOL_GPL vmlinux 0xca472dc8 rio_register_mport +EXPORT_SYMBOL_GPL vmlinux 0xca61103d phy_pm_runtime_allow +EXPORT_SYMBOL_GPL vmlinux 0xca65a352 edac_device_handle_ue_count +EXPORT_SYMBOL_GPL vmlinux 0xca7a6fea open_related_ns +EXPORT_SYMBOL_GPL vmlinux 0xca7d8764 kthread_freezable_should_stop +EXPORT_SYMBOL_GPL vmlinux 0xca99d65b adp5520_register_notifier +EXPORT_SYMBOL_GPL vmlinux 0xca9a1d5e ring_buffer_free +EXPORT_SYMBOL_GPL vmlinux 0xcaa7bef3 class_dev_iter_exit +EXPORT_SYMBOL_GPL vmlinux 0xcaaaf52d gpiod_set_raw_value +EXPORT_SYMBOL_GPL vmlinux 0xcaaee61d sata_std_hardreset +EXPORT_SYMBOL_GPL vmlinux 0xcab1745f snd_soc_of_parse_card_name +EXPORT_SYMBOL_GPL vmlinux 0xcabca3bc ata_ehi_clear_desc +EXPORT_SYMBOL_GPL vmlinux 0xcabe04de cpuidle_resume_and_unlock +EXPORT_SYMBOL_GPL vmlinux 0xcabe1206 list_lru_destroy +EXPORT_SYMBOL_GPL vmlinux 0xcad66dd4 crypto_cipher_setkey +EXPORT_SYMBOL_GPL vmlinux 0xcade6d41 __tracepoint_pelt_cfs_tp +EXPORT_SYMBOL_GPL vmlinux 0xcade86e1 mtk_pinconf_drive_get +EXPORT_SYMBOL_GPL vmlinux 0xcaf068e1 ip6_route_output_flags_noref +EXPORT_SYMBOL_GPL vmlinux 0xcb15eee9 sdhci_pci_get_data +EXPORT_SYMBOL_GPL vmlinux 0xcb2bfe2b nvmem_register_notifier +EXPORT_SYMBOL_GPL vmlinux 0xcb458c21 ata_sff_pause +EXPORT_SYMBOL_GPL vmlinux 0xcb4687f3 md_stop_writes +EXPORT_SYMBOL_GPL vmlinux 0xcb51d4d9 __scsi_init_queue +EXPORT_SYMBOL_GPL vmlinux 0xcb5a258e rtm_getroute_parse_ip_proto +EXPORT_SYMBOL_GPL vmlinux 0xcb717238 regulator_get_exclusive +EXPORT_SYMBOL_GPL vmlinux 0xcb7e291f ehci_init_driver +EXPORT_SYMBOL_GPL vmlinux 0xcb95bd18 sata_async_notification +EXPORT_SYMBOL_GPL vmlinux 0xcb974f4e snd_card_ref +EXPORT_SYMBOL_GPL vmlinux 0xcba16565 uart_try_toggle_sysrq +EXPORT_SYMBOL_GPL vmlinux 0xcbad1950 devm_gpio_request +EXPORT_SYMBOL_GPL vmlinux 0xcbb37823 vfs_writef +EXPORT_SYMBOL_GPL vmlinux 0xcbe56bc2 zs_get_total_pages +EXPORT_SYMBOL_GPL vmlinux 0xcbe7845d sdio_signal_irq +EXPORT_SYMBOL_GPL vmlinux 0xcc1880c3 snd_dmaengine_pcm_trigger +EXPORT_SYMBOL_GPL vmlinux 0xcc1c0683 nvdimm_blk_region_create +EXPORT_SYMBOL_GPL vmlinux 0xcc1df058 __bio_add_page +EXPORT_SYMBOL_GPL vmlinux 0xcc1e1129 blk_mq_alloc_request_hctx +EXPORT_SYMBOL_GPL vmlinux 0xcc201698 regmap_async_complete_cb +EXPORT_SYMBOL_GPL vmlinux 0xcc20ac52 hrtimer_forward +EXPORT_SYMBOL_GPL vmlinux 0xcc2dbfd8 irq_domain_check_msi_remap +EXPORT_SYMBOL_GPL vmlinux 0xcc312197 clk_mux_ops +EXPORT_SYMBOL_GPL vmlinux 0xcc39c03e nvmem_unregister +EXPORT_SYMBOL_GPL vmlinux 0xcc39ddcd nanddev_cleanup +EXPORT_SYMBOL_GPL vmlinux 0xcc3bc4a3 led_trigger_blink +EXPORT_SYMBOL_GPL vmlinux 0xcc5c7635 __devm_reset_control_get +EXPORT_SYMBOL_GPL vmlinux 0xcc72a91d ipv6_find_tlv +EXPORT_SYMBOL_GPL vmlinux 0xcc7441e5 dev_pm_opp_set_supported_hw +EXPORT_SYMBOL_GPL vmlinux 0xcc935375 walk_iomem_res_desc +EXPORT_SYMBOL_GPL vmlinux 0xcca2d205 screen_glyph +EXPORT_SYMBOL_GPL vmlinux 0xcca8891a snd_soc_pm_ops +EXPORT_SYMBOL_GPL vmlinux 0xccb9a980 devlink_resource_register +EXPORT_SYMBOL_GPL vmlinux 0xccbf1426 debugfs_create_u16 +EXPORT_SYMBOL_GPL vmlinux 0xccc6170a da9052_adc_manual_read +EXPORT_SYMBOL_GPL vmlinux 0xccc7118d hvc_instantiate +EXPORT_SYMBOL_GPL vmlinux 0xccc9fd6e __mtd_next_device +EXPORT_SYMBOL_GPL vmlinux 0xcccfb2fa sata_deb_timing_hotplug +EXPORT_SYMBOL_GPL vmlinux 0xccd0d0b6 inode_sb_list_add +EXPORT_SYMBOL_GPL vmlinux 0xccd86806 ata_id_string +EXPORT_SYMBOL_GPL vmlinux 0xcce0c7ff ata_sff_postreset +EXPORT_SYMBOL_GPL vmlinux 0xcce1cd57 __hrtimer_get_remaining +EXPORT_SYMBOL_GPL vmlinux 0xccf2ac63 pci_epc_write_header +EXPORT_SYMBOL_GPL vmlinux 0xccf52bc9 sfp_upstream_start +EXPORT_SYMBOL_GPL vmlinux 0xccfda890 crypto_aead_encrypt +EXPORT_SYMBOL_GPL vmlinux 0xcd084ab6 of_irq_parse_one +EXPORT_SYMBOL_GPL vmlinux 0xcd19bfc0 gpiochip_generic_free +EXPORT_SYMBOL_GPL vmlinux 0xcd24b427 iomap_dio_rw +EXPORT_SYMBOL_GPL vmlinux 0xcd24e146 hash_digest_size +EXPORT_SYMBOL_GPL vmlinux 0xcd3262f6 nexthop_for_each_fib6_nh +EXPORT_SYMBOL_GPL vmlinux 0xcd4371ca serial8250_em485_start_tx +EXPORT_SYMBOL_GPL vmlinux 0xcd455eaf get_governor_parent_kobj +EXPORT_SYMBOL_GPL vmlinux 0xcd4b3d12 snd_soc_suspend +EXPORT_SYMBOL_GPL vmlinux 0xcd5bbd89 del_mtd_blktrans_dev +EXPORT_SYMBOL_GPL vmlinux 0xcd5c0de7 devm_clk_hw_register +EXPORT_SYMBOL_GPL vmlinux 0xcd6d49bd serdev_device_alloc +EXPORT_SYMBOL_GPL vmlinux 0xcd6f2dc9 nf_log_buf_add +EXPORT_SYMBOL_GPL vmlinux 0xcd824f0c input_ff_create +EXPORT_SYMBOL_GPL vmlinux 0xcd91b127 system_highpri_wq +EXPORT_SYMBOL_GPL vmlinux 0xcd952233 nand_select_target +EXPORT_SYMBOL_GPL vmlinux 0xcd96b586 snd_soc_jack_notifier_register +EXPORT_SYMBOL_GPL vmlinux 0xcd974f00 rcu_all_qs +EXPORT_SYMBOL_GPL vmlinux 0xcd9856de mbox_client_txdone +EXPORT_SYMBOL_GPL vmlinux 0xcd9cd2ff wakeme_after_rcu +EXPORT_SYMBOL_GPL vmlinux 0xcda75b8d snd_soc_component_set_sysclk +EXPORT_SYMBOL_GPL vmlinux 0xcdb4a156 usb_gadget_activate +EXPORT_SYMBOL_GPL vmlinux 0xcdb6adcc ras_userspace_consumers +EXPORT_SYMBOL_GPL vmlinux 0xcdc12a9a md_do_sync +EXPORT_SYMBOL_GPL vmlinux 0xcdca3691 nr_irqs +EXPORT_SYMBOL_GPL vmlinux 0xcddfca2b efivars_register +EXPORT_SYMBOL_GPL vmlinux 0xce1980c0 dev_pm_opp_set_sharing_cpus +EXPORT_SYMBOL_GPL vmlinux 0xce1a565e dm_bio_get_target_bio_nr +EXPORT_SYMBOL_GPL vmlinux 0xce1b1043 pci_enable_pcie_error_reporting +EXPORT_SYMBOL_GPL vmlinux 0xce553d39 srcu_notifier_chain_unregister +EXPORT_SYMBOL_GPL vmlinux 0xce562fd1 sbitmap_queue_wake_all +EXPORT_SYMBOL_GPL vmlinux 0xce62230e of_hwspin_lock_get_id +EXPORT_SYMBOL_GPL vmlinux 0xce6db656 rcu_is_watching +EXPORT_SYMBOL_GPL vmlinux 0xce7f368c ata_link_online +EXPORT_SYMBOL_GPL vmlinux 0xce94511f blk_mq_debugfs_rq_show +EXPORT_SYMBOL_GPL vmlinux 0xce9834c3 serial8250_rpm_put +EXPORT_SYMBOL_GPL vmlinux 0xce9862d8 max8997_update_reg +EXPORT_SYMBOL_GPL vmlinux 0xceace1d3 strp_process +EXPORT_SYMBOL_GPL vmlinux 0xced8bea9 clk_hw_get_rate +EXPORT_SYMBOL_GPL vmlinux 0xcede3362 pci_ecam_create +EXPORT_SYMBOL_GPL vmlinux 0xcee1641c kgdb_unregister_nmi_console +EXPORT_SYMBOL_GPL vmlinux 0xcee88e7a of_overlay_fdt_apply +EXPORT_SYMBOL_GPL vmlinux 0xcef4d5b4 __alloc_percpu_gfp +EXPORT_SYMBOL_GPL vmlinux 0xcf00c26a crypto_comp_decompress +EXPORT_SYMBOL_GPL vmlinux 0xcf021029 shmem_zero_setup +EXPORT_SYMBOL_GPL vmlinux 0xcf041338 key_type_logon +EXPORT_SYMBOL_GPL vmlinux 0xcf137f71 fwnode_graph_get_next_endpoint +EXPORT_SYMBOL_GPL vmlinux 0xcf18a3db perf_trace_run_bpf_submit +EXPORT_SYMBOL_GPL vmlinux 0xcf260a58 crypto_register_rngs +EXPORT_SYMBOL_GPL vmlinux 0xcf28f55e trace_clock_global +EXPORT_SYMBOL_GPL vmlinux 0xcf432ecb rdev_get_id +EXPORT_SYMBOL_GPL vmlinux 0xcf52180e usb_submit_urb +EXPORT_SYMBOL_GPL vmlinux 0xcf54ea93 async_unregister_domain +EXPORT_SYMBOL_GPL vmlinux 0xcf750097 driver_remove_file +EXPORT_SYMBOL_GPL vmlinux 0xcf7cc9fb palmas_ext_control_req_config +EXPORT_SYMBOL_GPL vmlinux 0xcf851f7a ata_sff_tf_read +EXPORT_SYMBOL_GPL vmlinux 0xcf868a5b dev_pm_opp_find_freq_exact +EXPORT_SYMBOL_GPL vmlinux 0xcf99772e devm_add_action +EXPORT_SYMBOL_GPL vmlinux 0xcf99c391 device_release_driver +EXPORT_SYMBOL_GPL vmlinux 0xcfaf8da1 clean_acked_data_disable +EXPORT_SYMBOL_GPL vmlinux 0xcfc5108a devlink_fmsg_u8_pair_put +EXPORT_SYMBOL_GPL vmlinux 0xcfc7b4e4 rcu_barrier_tasks_trace +EXPORT_SYMBOL_GPL vmlinux 0xcfcf96fd devfreq_event_enable_edev +EXPORT_SYMBOL_GPL vmlinux 0xcfd22f72 sk_psock_tls_strp_read +EXPORT_SYMBOL_GPL vmlinux 0xcfd2816b dm_set_target_max_io_len +EXPORT_SYMBOL_GPL vmlinux 0xcfe2bb2f crypto_grab_spawn +EXPORT_SYMBOL_GPL vmlinux 0xcff31c27 posix_acl_create +EXPORT_SYMBOL_GPL vmlinux 0xcff5d7fe nand_read_data_op +EXPORT_SYMBOL_GPL vmlinux 0xd0126962 fwnode_get_named_child_node +EXPORT_SYMBOL_GPL vmlinux 0xd01d6add devlink_unregister +EXPORT_SYMBOL_GPL vmlinux 0xd02eff44 fwnode_device_is_available +EXPORT_SYMBOL_GPL vmlinux 0xd033fa08 da903x_unregister_notifier +EXPORT_SYMBOL_GPL vmlinux 0xd039709f gpiochip_generic_config +EXPORT_SYMBOL_GPL vmlinux 0xd03eaf4c schedule_hrtimeout_range +EXPORT_SYMBOL_GPL vmlinux 0xd06524ba raw_notifier_chain_unregister +EXPORT_SYMBOL_GPL vmlinux 0xd066a3a4 wbc_account_cgroup_owner +EXPORT_SYMBOL_GPL vmlinux 0xd067d3c5 system_freezable_power_efficient_wq +EXPORT_SYMBOL_GPL vmlinux 0xd068ffe7 usb_autopm_get_interface_async +EXPORT_SYMBOL_GPL vmlinux 0xd06e6e84 syscon_regmap_lookup_by_phandle_args +EXPORT_SYMBOL_GPL vmlinux 0xd09b5b71 __cpufreq_driver_target +EXPORT_SYMBOL_GPL vmlinux 0xd0b6ac3a usb_hcd_pci_pm_ops +EXPORT_SYMBOL_GPL vmlinux 0xd0c05159 emergency_restart +EXPORT_SYMBOL_GPL vmlinux 0xd0d0b837 snd_soc_dapm_nc_pin +EXPORT_SYMBOL_GPL vmlinux 0xd0da0346 fuse_kill_sb_anon +EXPORT_SYMBOL_GPL vmlinux 0xd0db0f12 run_dax +EXPORT_SYMBOL_GPL vmlinux 0xd0e98db5 class_interface_unregister +EXPORT_SYMBOL_GPL vmlinux 0xd0f85870 device_set_of_node_from_dev +EXPORT_SYMBOL_GPL vmlinux 0xd106f353 __dev_forward_skb +EXPORT_SYMBOL_GPL vmlinux 0xd112efbb sdhci_free_host +EXPORT_SYMBOL_GPL vmlinux 0xd12159a7 stack_trace_snprint +EXPORT_SYMBOL_GPL vmlinux 0xd1265325 regmap_mmio_detach_clk +EXPORT_SYMBOL_GPL vmlinux 0xd1413e07 rio_request_mport_dma +EXPORT_SYMBOL_GPL vmlinux 0xd1435f2a set_selection_kernel +EXPORT_SYMBOL_GPL vmlinux 0xd143c714 devm_clk_unregister +EXPORT_SYMBOL_GPL vmlinux 0xd14983e5 pingv6_prot +EXPORT_SYMBOL_GPL vmlinux 0xd157a697 dev_forward_skb +EXPORT_SYMBOL_GPL vmlinux 0xd1603ad3 i2c_dw_probe_master +EXPORT_SYMBOL_GPL vmlinux 0xd168bd6c pci_assign_unassigned_bus_resources +EXPORT_SYMBOL_GPL vmlinux 0xd16e8479 user_read +EXPORT_SYMBOL_GPL vmlinux 0xd17af081 synth_event_gen_cmd_array_start +EXPORT_SYMBOL_GPL vmlinux 0xd180505b edac_pci_add_device +EXPORT_SYMBOL_GPL vmlinux 0xd1855509 uart_console_device +EXPORT_SYMBOL_GPL vmlinux 0xd1992dee pm_runtime_allow +EXPORT_SYMBOL_GPL vmlinux 0xd19ce1b7 dev_pm_domain_start +EXPORT_SYMBOL_GPL vmlinux 0xd1aa2722 iomap_seek_hole +EXPORT_SYMBOL_GPL vmlinux 0xd1b69154 led_put +EXPORT_SYMBOL_GPL vmlinux 0xd1c0e562 usb_poison_urb +EXPORT_SYMBOL_GPL vmlinux 0xd1c67937 screen_pos +EXPORT_SYMBOL_GPL vmlinux 0xd1cbc23c add_timer_on +EXPORT_SYMBOL_GPL vmlinux 0xd1d1aa3d snd_soc_dapm_weak_routes +EXPORT_SYMBOL_GPL vmlinux 0xd1e0574a of_i2c_get_board_info +EXPORT_SYMBOL_GPL vmlinux 0xd1e39c2c devm_pinctrl_unregister +EXPORT_SYMBOL_GPL vmlinux 0xd1f2eee2 nf_logger_find_get +EXPORT_SYMBOL_GPL vmlinux 0xd2008431 edac_device_alloc_ctl_info +EXPORT_SYMBOL_GPL vmlinux 0xd200cb08 ata_dummy_port_info +EXPORT_SYMBOL_GPL vmlinux 0xd207bb20 serdev_device_wait_until_sent +EXPORT_SYMBOL_GPL vmlinux 0xd20bf6ba dcookie_unregister +EXPORT_SYMBOL_GPL vmlinux 0xd20e133c sdio_retune_release +EXPORT_SYMBOL_GPL vmlinux 0xd217e9e6 trace_set_clr_event +EXPORT_SYMBOL_GPL vmlinux 0xd21b61bd async_schedule_node_domain +EXPORT_SYMBOL_GPL vmlinux 0xd21cb4fc alarm_forward_now +EXPORT_SYMBOL_GPL vmlinux 0xd224ba99 wm8350_gpio_config +EXPORT_SYMBOL_GPL vmlinux 0xd22ab009 snd_soc_rtdcom_lookup +EXPORT_SYMBOL_GPL vmlinux 0xd23b52ff ata_pci_bmdma_clear_simplex +EXPORT_SYMBOL_GPL vmlinux 0xd23fc34e firmware_request_nowarn +EXPORT_SYMBOL_GPL vmlinux 0xd251ec25 usb_gadget_set_selfpowered +EXPORT_SYMBOL_GPL vmlinux 0xd260af0d ring_buffer_write +EXPORT_SYMBOL_GPL vmlinux 0xd265e6fd vchan_tx_submit +EXPORT_SYMBOL_GPL vmlinux 0xd26cc82a nand_ecc_choose_conf +EXPORT_SYMBOL_GPL vmlinux 0xd273b1b1 __round_jiffies_up_relative +EXPORT_SYMBOL_GPL vmlinux 0xd2a3b316 synchronize_srcu_expedited +EXPORT_SYMBOL_GPL vmlinux 0xd2b0fdae of_clk_add_hw_provider +EXPORT_SYMBOL_GPL vmlinux 0xd2b10a05 ata_timing_find_mode +EXPORT_SYMBOL_GPL vmlinux 0xd2bae4f3 crypto_shash_finup +EXPORT_SYMBOL_GPL vmlinux 0xd2c0e5c3 fat_alloc_new_dir +EXPORT_SYMBOL_GPL vmlinux 0xd2c636a8 gpiod_set_raw_array_value +EXPORT_SYMBOL_GPL vmlinux 0xd2dd4812 phy_basic_features +EXPORT_SYMBOL_GPL vmlinux 0xd2e682e2 usb_role_switch_register +EXPORT_SYMBOL_GPL vmlinux 0xd31197f5 sock_zerocopy_put_abort +EXPORT_SYMBOL_GPL vmlinux 0xd31a2ac5 ring_buffer_oldest_event_ts +EXPORT_SYMBOL_GPL vmlinux 0xd33ada8b cci_probed +EXPORT_SYMBOL_GPL vmlinux 0xd342202d dev_pm_opp_get_opp_count +EXPORT_SYMBOL_GPL vmlinux 0xd3470315 dev_pm_set_dedicated_wake_irq +EXPORT_SYMBOL_GPL vmlinux 0xd37717f9 wm831x_auxadc_read +EXPORT_SYMBOL_GPL vmlinux 0xd37c3b0e pinctrl_force_sleep +EXPORT_SYMBOL_GPL vmlinux 0xd3821d0f gpiochip_line_is_valid +EXPORT_SYMBOL_GPL vmlinux 0xd38e8aca efivar_entry_get +EXPORT_SYMBOL_GPL vmlinux 0xd393153b pci_get_dsn +EXPORT_SYMBOL_GPL vmlinux 0xd395770d virtqueue_add_inbuf_ctx +EXPORT_SYMBOL_GPL vmlinux 0xd39e9848 put_itimerspec64 +EXPORT_SYMBOL_GPL vmlinux 0xd39f7f2a edac_pci_alloc_ctl_info +EXPORT_SYMBOL_GPL vmlinux 0xd3a61dc5 phy_pm_runtime_put_sync +EXPORT_SYMBOL_GPL vmlinux 0xd3b92422 device_get_next_child_node +EXPORT_SYMBOL_GPL vmlinux 0xd3c55759 dax_inode +EXPORT_SYMBOL_GPL vmlinux 0xd3c672b8 nand_subop_get_data_len +EXPORT_SYMBOL_GPL vmlinux 0xd3ccfc76 i2c_client_type +EXPORT_SYMBOL_GPL vmlinux 0xd3e43257 dev_pm_opp_unregister_set_opp_helper +EXPORT_SYMBOL_GPL vmlinux 0xd3e5f901 devlink_params_unpublish +EXPORT_SYMBOL_GPL vmlinux 0xd3e8c3b7 usb_deregister_dev +EXPORT_SYMBOL_GPL vmlinux 0xd3e97c21 hugetlb_cgrp_subsys_on_dfl_key +EXPORT_SYMBOL_GPL vmlinux 0xd3f8f3f4 page_poisoning_enabled +EXPORT_SYMBOL_GPL vmlinux 0xd401a1c7 disk_part_iter_init +EXPORT_SYMBOL_GPL vmlinux 0xd4034828 system_freezable_wq +EXPORT_SYMBOL_GPL vmlinux 0xd40bde76 pinctrl_enable +EXPORT_SYMBOL_GPL vmlinux 0xd41456d6 bpf_redirect_info +EXPORT_SYMBOL_GPL vmlinux 0xd41ff2ac nand_subop_get_data_start_off +EXPORT_SYMBOL_GPL vmlinux 0xd4235392 pwmchip_add +EXPORT_SYMBOL_GPL vmlinux 0xd44a5eac kgdb_register_nmi_console +EXPORT_SYMBOL_GPL vmlinux 0xd44bb3d9 handle_fasteoi_ack_irq +EXPORT_SYMBOL_GPL vmlinux 0xd4587346 uart_get_rs485_mode +EXPORT_SYMBOL_GPL vmlinux 0xd45b1fd0 usb_altnum_to_altsetting +EXPORT_SYMBOL_GPL vmlinux 0xd4680958 rio_release_inb_mbox +EXPORT_SYMBOL_GPL vmlinux 0xd468bca8 regulator_bulk_get +EXPORT_SYMBOL_GPL vmlinux 0xd46a2767 iomap_writepage +EXPORT_SYMBOL_GPL vmlinux 0xd46dbb7e snd_dmaengine_pcm_unregister +EXPORT_SYMBOL_GPL vmlinux 0xd472adde iommu_dev_feature_enabled +EXPORT_SYMBOL_GPL vmlinux 0xd489a448 blk_mq_start_stopped_hw_queue +EXPORT_SYMBOL_GPL vmlinux 0xd48a6a86 dapm_clock_event +EXPORT_SYMBOL_GPL vmlinux 0xd4a225c9 regcache_cache_bypass +EXPORT_SYMBOL_GPL vmlinux 0xd4a3fff5 fat_fill_super +EXPORT_SYMBOL_GPL vmlinux 0xd4a97a0e snd_soc_component_enable_pin_unlocked +EXPORT_SYMBOL_GPL vmlinux 0xd4b1f866 xdp_rxq_info_unreg +EXPORT_SYMBOL_GPL vmlinux 0xd4b6157e devlink_health_reporter_recovery_done +EXPORT_SYMBOL_GPL vmlinux 0xd4c14632 system_unbound_wq +EXPORT_SYMBOL_GPL vmlinux 0xd4c31550 snd_soc_info_volsw_sx +EXPORT_SYMBOL_GPL vmlinux 0xd4c9fd18 of_phandle_iterator_init +EXPORT_SYMBOL_GPL vmlinux 0xd4dbdc46 dev_pm_opp_get_max_transition_latency +EXPORT_SYMBOL_GPL vmlinux 0xd4e59842 usb_deregister_device_driver +EXPORT_SYMBOL_GPL vmlinux 0xd4e6d7e0 linear_range_get_value +EXPORT_SYMBOL_GPL vmlinux 0xd50259c0 blk_set_queue_dying +EXPORT_SYMBOL_GPL vmlinux 0xd5181258 icc_provider_del +EXPORT_SYMBOL_GPL vmlinux 0xd5184f3a uhci_check_and_reset_hc +EXPORT_SYMBOL_GPL vmlinux 0xd5224cba sfp_bus_find_fwnode +EXPORT_SYMBOL_GPL vmlinux 0xd52a887c regulator_set_suspend_voltage +EXPORT_SYMBOL_GPL vmlinux 0xd5301b2c linear_range_get_max_value +EXPORT_SYMBOL_GPL vmlinux 0xd538e72d sdio_register_driver +EXPORT_SYMBOL_GPL vmlinux 0xd5474690 usb_role_switch_set_role +EXPORT_SYMBOL_GPL vmlinux 0xd5515b36 icc_get_name +EXPORT_SYMBOL_GPL vmlinux 0xd55ad93b iommu_group_get_iommudata +EXPORT_SYMBOL_GPL vmlinux 0xd5608567 mtd_ooblayout_count_freebytes +EXPORT_SYMBOL_GPL vmlinux 0xd5796189 devm_regmap_add_irq_chip_np +EXPORT_SYMBOL_GPL vmlinux 0xd579f205 snd_soc_dai_active +EXPORT_SYMBOL_GPL vmlinux 0xd57e98ae rio_dma_prep_xfer +EXPORT_SYMBOL_GPL vmlinux 0xd58a2384 create_signature +EXPORT_SYMBOL_GPL vmlinux 0xd5918d8d phy_pm_runtime_get_sync +EXPORT_SYMBOL_GPL vmlinux 0xd59a1587 linkmode_resolve_pause +EXPORT_SYMBOL_GPL vmlinux 0xd59effbf usb_of_get_companion_dev +EXPORT_SYMBOL_GPL vmlinux 0xd5a294be ata_slave_link_init +EXPORT_SYMBOL_GPL vmlinux 0xd5a8021f __skb_tstamp_tx +EXPORT_SYMBOL_GPL vmlinux 0xd5ac24e5 blocking_notifier_chain_register +EXPORT_SYMBOL_GPL vmlinux 0xd5ac971d serial8250_do_get_mctrl +EXPORT_SYMBOL_GPL vmlinux 0xd5b2b186 tcp_set_state +EXPORT_SYMBOL_GPL vmlinux 0xd5b5075e nvmem_cell_get +EXPORT_SYMBOL_GPL vmlinux 0xd5de9b14 regulator_bulk_enable +EXPORT_SYMBOL_GPL vmlinux 0xd5e2423f percpu_ref_init +EXPORT_SYMBOL_GPL vmlinux 0xd5ea2e9a platform_device_del +EXPORT_SYMBOL_GPL vmlinux 0xd5eb8fbd dma_buf_begin_cpu_access +EXPORT_SYMBOL_GPL vmlinux 0xd5feab53 cpts_unregister +EXPORT_SYMBOL_GPL vmlinux 0xd6001e66 ata_dev_next +EXPORT_SYMBOL_GPL vmlinux 0xd60858db unregister_pernet_subsys +EXPORT_SYMBOL_GPL vmlinux 0xd60da7d7 of_nvmem_cell_get +EXPORT_SYMBOL_GPL vmlinux 0xd6164816 blkg_rwstat_exit +EXPORT_SYMBOL_GPL vmlinux 0xd6256ed7 fat_setattr +EXPORT_SYMBOL_GPL vmlinux 0xd639ec6e devm_regmap_field_free +EXPORT_SYMBOL_GPL vmlinux 0xd63ce82a __tracepoint_cpu_frequency +EXPORT_SYMBOL_GPL vmlinux 0xd63e7643 cgroup_get_from_path +EXPORT_SYMBOL_GPL vmlinux 0xd64045b4 crypto_shoot_alg +EXPORT_SYMBOL_GPL vmlinux 0xd6471cc5 public_key_subtype +EXPORT_SYMBOL_GPL vmlinux 0xd64dd81f regulator_list_voltage +EXPORT_SYMBOL_GPL vmlinux 0xd64ed259 __memcat_p +EXPORT_SYMBOL_GPL vmlinux 0xd65398bf sdio_readb +EXPORT_SYMBOL_GPL vmlinux 0xd653b126 sched_clock +EXPORT_SYMBOL_GPL vmlinux 0xd657fee1 nvmem_cell_read_u16 +EXPORT_SYMBOL_GPL vmlinux 0xd65b28b6 __sdhci_read_caps +EXPORT_SYMBOL_GPL vmlinux 0xd670a8aa driver_find_device +EXPORT_SYMBOL_GPL vmlinux 0xd67364f7 eventfd_ctx_fdget +EXPORT_SYMBOL_GPL vmlinux 0xd673984b genphy_c45_read_link +EXPORT_SYMBOL_GPL vmlinux 0xd685045c sysfs_group_change_owner +EXPORT_SYMBOL_GPL vmlinux 0xd68f9928 usb_gadget_udc_reset +EXPORT_SYMBOL_GPL vmlinux 0xd695c28d snd_soc_jack_free_gpios +EXPORT_SYMBOL_GPL vmlinux 0xd6a8b054 iomap_swapfile_activate +EXPORT_SYMBOL_GPL vmlinux 0xd6c43f01 add_to_page_cache_lru +EXPORT_SYMBOL_GPL vmlinux 0xd6de0382 irq_gc_mask_clr_bit +EXPORT_SYMBOL_GPL vmlinux 0xd6efb33c skb_cow_data +EXPORT_SYMBOL_GPL vmlinux 0xd6fd4c27 nvmem_device_find +EXPORT_SYMBOL_GPL vmlinux 0xd71df75e regmap_add_irq_chip_np +EXPORT_SYMBOL_GPL vmlinux 0xd7285705 devm_gpiod_get +EXPORT_SYMBOL_GPL vmlinux 0xd7367b2b sdhci_cqe_enable +EXPORT_SYMBOL_GPL vmlinux 0xd7399d2a efivar_entry_iter_end +EXPORT_SYMBOL_GPL vmlinux 0xd7512036 cgroup_attach_task_all +EXPORT_SYMBOL_GPL vmlinux 0xd766e8f2 btree_init_mempool +EXPORT_SYMBOL_GPL vmlinux 0xd768e985 regulator_has_full_constraints +EXPORT_SYMBOL_GPL vmlinux 0xd76f0634 pci_pri_supported +EXPORT_SYMBOL_GPL vmlinux 0xd7744b17 usb_set_configuration +EXPORT_SYMBOL_GPL vmlinux 0xd774957d mpi_write_to_sgl +EXPORT_SYMBOL_GPL vmlinux 0xd78a2acd spi_alloc_device +EXPORT_SYMBOL_GPL vmlinux 0xd7a293d8 usb_add_gadget_udc_release +EXPORT_SYMBOL_GPL vmlinux 0xd7af3976 snd_soc_unregister_component_by_driver +EXPORT_SYMBOL_GPL vmlinux 0xd7b411cb __irq_alloc_descs +EXPORT_SYMBOL_GPL vmlinux 0xd7b4d11e serdev_device_add +EXPORT_SYMBOL_GPL vmlinux 0xd7b5550c cci_ace_get_port +EXPORT_SYMBOL_GPL vmlinux 0xd7e98719 balloon_page_dequeue +EXPORT_SYMBOL_GPL vmlinux 0xd81bbe58 rhashtable_walk_start_check +EXPORT_SYMBOL_GPL vmlinux 0xd828e92f dev_pm_opp_attach_genpd +EXPORT_SYMBOL_GPL vmlinux 0xd82bb244 skb_mpls_dec_ttl +EXPORT_SYMBOL_GPL vmlinux 0xd82e6955 ata_bmdma_qc_issue +EXPORT_SYMBOL_GPL vmlinux 0xd839ec4c usb_free_coherent +EXPORT_SYMBOL_GPL vmlinux 0xd83d5166 scsi_host_unblock +EXPORT_SYMBOL_GPL vmlinux 0xd84d35bd dax_read_lock +EXPORT_SYMBOL_GPL vmlinux 0xd866e1c6 spi_register_controller +EXPORT_SYMBOL_GPL vmlinux 0xd8680d36 snd_soc_get_xr_sx +EXPORT_SYMBOL_GPL vmlinux 0xd879c06b __platform_create_bundle +EXPORT_SYMBOL_GPL vmlinux 0xd87fc0a0 usb_amd_prefetch_quirk +EXPORT_SYMBOL_GPL vmlinux 0xd8858336 regulator_unregister +EXPORT_SYMBOL_GPL vmlinux 0xd88c87c7 bdi_dev_name +EXPORT_SYMBOL_GPL vmlinux 0xd8aa661e gpiochip_find +EXPORT_SYMBOL_GPL vmlinux 0xd8b4c9df bpf_map_inc +EXPORT_SYMBOL_GPL vmlinux 0xd8be0a91 mmc_app_cmd +EXPORT_SYMBOL_GPL vmlinux 0xd8ca9a05 usb_hcd_amd_remote_wakeup_quirk +EXPORT_SYMBOL_GPL vmlinux 0xd8d24416 hisi_clk_register_mux +EXPORT_SYMBOL_GPL vmlinux 0xd8d654ca list_lru_count_node +EXPORT_SYMBOL_GPL vmlinux 0xd8d68ab1 dmi_memdev_type +EXPORT_SYMBOL_GPL vmlinux 0xd8f4a113 fuse_do_ioctl +EXPORT_SYMBOL_GPL vmlinux 0xd8fc6e84 devm_gpiod_put_array +EXPORT_SYMBOL_GPL vmlinux 0xd8ffa4bd switchdev_port_obj_del +EXPORT_SYMBOL_GPL vmlinux 0xd9048864 ima_file_check +EXPORT_SYMBOL_GPL vmlinux 0xd9152bbb regulator_list_hardware_vsel +EXPORT_SYMBOL_GPL vmlinux 0xd91a5f54 crypto_unregister_acomp +EXPORT_SYMBOL_GPL vmlinux 0xd9290220 icc_node_add +EXPORT_SYMBOL_GPL vmlinux 0xd93165be pci_epc_map_addr +EXPORT_SYMBOL_GPL vmlinux 0xd95f1222 driver_register +EXPORT_SYMBOL_GPL vmlinux 0xd96babb4 interval_tree_iter_next +EXPORT_SYMBOL_GPL vmlinux 0xd9cdade1 blk_rq_prep_clone +EXPORT_SYMBOL_GPL vmlinux 0xd9cec6d9 devm_clk_register +EXPORT_SYMBOL_GPL vmlinux 0xd9e24457 ring_buffer_peek +EXPORT_SYMBOL_GPL vmlinux 0xd9f28744 device_get_dma_attr +EXPORT_SYMBOL_GPL vmlinux 0xd9f2adc0 snd_soc_dapm_update_dai +EXPORT_SYMBOL_GPL vmlinux 0xd9f3e65f __tracepoint_suspend_resume +EXPORT_SYMBOL_GPL vmlinux 0xd9ff2172 ezx_pcap_write +EXPORT_SYMBOL_GPL vmlinux 0xda00c8b3 pm_clk_resume +EXPORT_SYMBOL_GPL vmlinux 0xda04ac25 tty_perform_flush +EXPORT_SYMBOL_GPL vmlinux 0xda0dc10c ata_sff_dev_select +EXPORT_SYMBOL_GPL vmlinux 0xda0f197a devlink_port_attrs_set +EXPORT_SYMBOL_GPL vmlinux 0xda0f4289 ahci_port_resume +EXPORT_SYMBOL_GPL vmlinux 0xda1129c8 __tracepoint_block_unplug +EXPORT_SYMBOL_GPL vmlinux 0xda185430 iommu_sva_unbind_device +EXPORT_SYMBOL_GPL vmlinux 0xda21d865 pci_aer_clear_nonfatal_status +EXPORT_SYMBOL_GPL vmlinux 0xda320d31 sfp_module_start +EXPORT_SYMBOL_GPL vmlinux 0xda413b81 device_connection_find +EXPORT_SYMBOL_GPL vmlinux 0xda53a8e6 badblocks_set +EXPORT_SYMBOL_GPL vmlinux 0xda79e665 devm_nvmem_register +EXPORT_SYMBOL_GPL vmlinux 0xda87ef57 __fput_sync +EXPORT_SYMBOL_GPL vmlinux 0xda8cc3b9 hwrng_unregister +EXPORT_SYMBOL_GPL vmlinux 0xda938d6f __sbitmap_queue_get +EXPORT_SYMBOL_GPL vmlinux 0xda98e7c9 dev_pm_opp_get_opp_table +EXPORT_SYMBOL_GPL vmlinux 0xda9d1f16 pci_enable_rom +EXPORT_SYMBOL_GPL vmlinux 0xdaa031b8 rio_mport_read_config_16 +EXPORT_SYMBOL_GPL vmlinux 0xdab58d77 dev_get_regmap +EXPORT_SYMBOL_GPL vmlinux 0xdab5a1eb interval_tree_insert +EXPORT_SYMBOL_GPL vmlinux 0xdaf2e961 irq_chip_disable_parent +EXPORT_SYMBOL_GPL vmlinux 0xdaf4dfb3 fb_mode_option +EXPORT_SYMBOL_GPL vmlinux 0xdaf5c16e __cookie_v4_check +EXPORT_SYMBOL_GPL vmlinux 0xdaf612dc skb_pull_rcsum +EXPORT_SYMBOL_GPL vmlinux 0xdafcdc3a ktime_get_snapshot +EXPORT_SYMBOL_GPL vmlinux 0xdaff3d78 tty_get_pgrp +EXPORT_SYMBOL_GPL vmlinux 0xdb1fc9bf wm831x_set_bits +EXPORT_SYMBOL_GPL vmlinux 0xdb25da3e irq_work_queue +EXPORT_SYMBOL_GPL vmlinux 0xdb30deba virtqueue_enable_cb_delayed +EXPORT_SYMBOL_GPL vmlinux 0xdb426417 irq_set_default_host +EXPORT_SYMBOL_GPL vmlinux 0xdb63b997 ip6_datagram_send_ctl +EXPORT_SYMBOL_GPL vmlinux 0xdb765acc gpiochip_irqchip_irq_valid +EXPORT_SYMBOL_GPL vmlinux 0xdb80a247 snd_soc_dai_compr_set_params +EXPORT_SYMBOL_GPL vmlinux 0xdb8a1b3f usermodehelper_read_trylock +EXPORT_SYMBOL_GPL vmlinux 0xdba22696 software_node_register +EXPORT_SYMBOL_GPL vmlinux 0xdba530a5 sk_clear_memalloc +EXPORT_SYMBOL_GPL vmlinux 0xdbba5143 fsverity_verify_page +EXPORT_SYMBOL_GPL vmlinux 0xdbd89801 __clk_get_hw +EXPORT_SYMBOL_GPL vmlinux 0xdbddb8ef extcon_get_property +EXPORT_SYMBOL_GPL vmlinux 0xdbe03ae4 sdhci_pltfm_init +EXPORT_SYMBOL_GPL vmlinux 0xdbf7cb70 mpi_get_nbits +EXPORT_SYMBOL_GPL vmlinux 0xdc29b6db sbitmap_queue_show +EXPORT_SYMBOL_GPL vmlinux 0xdc2a7213 snd_soc_dai_compr_ack +EXPORT_SYMBOL_GPL vmlinux 0xdc2c58ce __pci_reset_function_locked +EXPORT_SYMBOL_GPL vmlinux 0xdc324b33 md_rdev_init +EXPORT_SYMBOL_GPL vmlinux 0xdc3a6757 devlink_params_publish +EXPORT_SYMBOL_GPL vmlinux 0xdc45f62e gpiod_toggle_active_low +EXPORT_SYMBOL_GPL vmlinux 0xdc50bd57 page_endio +EXPORT_SYMBOL_GPL vmlinux 0xdc51e763 blk_ksm_reprogram_all_keys +EXPORT_SYMBOL_GPL vmlinux 0xdc58c6f6 get_kernel_pages +EXPORT_SYMBOL_GPL vmlinux 0xdc6596fa irq_set_parent +EXPORT_SYMBOL_GPL vmlinux 0xdc659d6d regulator_is_enabled +EXPORT_SYMBOL_GPL vmlinux 0xdc693667 noop_invalidatepage +EXPORT_SYMBOL_GPL vmlinux 0xdc715588 pwmchip_remove +EXPORT_SYMBOL_GPL vmlinux 0xdc77acd1 crypto_grab_skcipher +EXPORT_SYMBOL_GPL vmlinux 0xdc7ce353 mv_mbus_dram_info_nooverlap +EXPORT_SYMBOL_GPL vmlinux 0xdc825d6c usb_amd_quirk_pll_disable +EXPORT_SYMBOL_GPL vmlinux 0xdc8d100d snd_soc_dai_set_channel_map +EXPORT_SYMBOL_GPL vmlinux 0xdc97af2e syscore_suspend +EXPORT_SYMBOL_GPL vmlinux 0xdc9a1041 kill_device +EXPORT_SYMBOL_GPL vmlinux 0xdc9fa232 raw_notifier_chain_register +EXPORT_SYMBOL_GPL vmlinux 0xdca28abb scsi_nl_sock +EXPORT_SYMBOL_GPL vmlinux 0xdca76116 devm_regulator_register +EXPORT_SYMBOL_GPL vmlinux 0xdcb450a3 metadata_dst_free +EXPORT_SYMBOL_GPL vmlinux 0xdcb5a6f4 crypto_aead_setkey +EXPORT_SYMBOL_GPL vmlinux 0xdccd5a0c device_unregister +EXPORT_SYMBOL_GPL vmlinux 0xdcd505bb spi_sync +EXPORT_SYMBOL_GPL vmlinux 0xdcdeaeb7 devm_gpiod_get_index +EXPORT_SYMBOL_GPL vmlinux 0xdce6135d inet_csk_reqsk_queue_hash_add +EXPORT_SYMBOL_GPL vmlinux 0xdcef1645 mtd_blktrans_cease_background +EXPORT_SYMBOL_GPL vmlinux 0xdcf005f8 tracepoint_srcu +EXPORT_SYMBOL_GPL vmlinux 0xdd03116c crypto_shash_setkey +EXPORT_SYMBOL_GPL vmlinux 0xdd060504 kernel_read_file_from_fd +EXPORT_SYMBOL_GPL vmlinux 0xdd0762df set_worker_desc +EXPORT_SYMBOL_GPL vmlinux 0xdd127a06 gpiod_set_raw_array_value_cansleep +EXPORT_SYMBOL_GPL vmlinux 0xdd21316c nvmem_del_cell_table +EXPORT_SYMBOL_GPL vmlinux 0xdd23117b netdev_walk_all_lower_dev +EXPORT_SYMBOL_GPL vmlinux 0xdd2480b9 mmc_abort_tuning +EXPORT_SYMBOL_GPL vmlinux 0xdd27bb1f devm_reset_controller_register +EXPORT_SYMBOL_GPL vmlinux 0xdd391eff profile_event_unregister +EXPORT_SYMBOL_GPL vmlinux 0xdd4ab49a serial8250_clear_and_reinit_fifos +EXPORT_SYMBOL_GPL vmlinux 0xdd4e01aa devm_regmap_field_alloc +EXPORT_SYMBOL_GPL vmlinux 0xdd626ee3 fuse_len_args +EXPORT_SYMBOL_GPL vmlinux 0xdd769f9e synth_event_trace_start +EXPORT_SYMBOL_GPL vmlinux 0xdd79dc3e __tcp_send_ack +EXPORT_SYMBOL_GPL vmlinux 0xdd7aaceb debugfs_create_file_unsafe +EXPORT_SYMBOL_GPL vmlinux 0xdd85063c lpddr2_jedec_min_tck +EXPORT_SYMBOL_GPL vmlinux 0xdd8e2868 serial8250_do_set_mctrl +EXPORT_SYMBOL_GPL vmlinux 0xdd930cec pingv6_ops +EXPORT_SYMBOL_GPL vmlinux 0xdd970521 usb_autopm_put_interface_no_suspend +EXPORT_SYMBOL_GPL vmlinux 0xdda1a2b9 __fscrypt_prepare_rename +EXPORT_SYMBOL_GPL vmlinux 0xddae3d4d ata_sff_check_status +EXPORT_SYMBOL_GPL vmlinux 0xddb414ad crypto_drop_spawn +EXPORT_SYMBOL_GPL vmlinux 0xddbeeecc pci_lock_rescan_remove +EXPORT_SYMBOL_GPL vmlinux 0xddc036e5 debugfs_create_file_size +EXPORT_SYMBOL_GPL vmlinux 0xddd5ddfa usb_phy_gen_create_phy +EXPORT_SYMBOL_GPL vmlinux 0xddd6a7be devices_cgrp_subsys_enabled_key +EXPORT_SYMBOL_GPL vmlinux 0xddeb46fc snd_soc_register_component +EXPORT_SYMBOL_GPL vmlinux 0xde037b6c da903x_clr_bits +EXPORT_SYMBOL_GPL vmlinux 0xde0a5d78 ata_sas_scsi_ioctl +EXPORT_SYMBOL_GPL vmlinux 0xde0f6403 fib_table_lookup +EXPORT_SYMBOL_GPL vmlinux 0xde19fe93 skb_gso_validate_mac_len +EXPORT_SYMBOL_GPL vmlinux 0xde219c23 blk_queue_write_cache +EXPORT_SYMBOL_GPL vmlinux 0xde25f88c __tracepoint_add_device_to_group +EXPORT_SYMBOL_GPL vmlinux 0xde384afb regmap_irq_get_domain +EXPORT_SYMBOL_GPL vmlinux 0xde5baa88 virtqueue_add_sgs +EXPORT_SYMBOL_GPL vmlinux 0xde6f1851 TSS_checkhmac1 +EXPORT_SYMBOL_GPL vmlinux 0xde6f9fc1 proc_mkdir_data +EXPORT_SYMBOL_GPL vmlinux 0xde73b82f device_match_devt +EXPORT_SYMBOL_GPL vmlinux 0xde82a7cf component_bind_all +EXPORT_SYMBOL_GPL vmlinux 0xde889126 tty_mode_ioctl +EXPORT_SYMBOL_GPL vmlinux 0xde8b05be crypto_grab_akcipher +EXPORT_SYMBOL_GPL vmlinux 0xde962166 sock_inuse_get +EXPORT_SYMBOL_GPL vmlinux 0xde96676a snd_soc_component_disable_pin +EXPORT_SYMBOL_GPL vmlinux 0xde98a7ae pinctrl_register +EXPORT_SYMBOL_GPL vmlinux 0xdea660c1 bio_release_pages +EXPORT_SYMBOL_GPL vmlinux 0xdea9919b kmsg_dump_unregister +EXPORT_SYMBOL_GPL vmlinux 0xdeafdeb6 of_irq_find_parent +EXPORT_SYMBOL_GPL vmlinux 0xdeb020ae __vring_new_virtqueue +EXPORT_SYMBOL_GPL vmlinux 0xdebe9240 inet_csk_listen_start +EXPORT_SYMBOL_GPL vmlinux 0xdecf5889 ipv6_opt_accepted +EXPORT_SYMBOL_GPL vmlinux 0xded53b49 device_property_read_u64_array +EXPORT_SYMBOL_GPL vmlinux 0xdef24a6b bpf_prog_get_type_dev +EXPORT_SYMBOL_GPL vmlinux 0xdeffa0a7 edac_raw_mc_handle_error +EXPORT_SYMBOL_GPL vmlinux 0xdf0f75c6 eventfd_signal +EXPORT_SYMBOL_GPL vmlinux 0xdf255dcf memory_cgrp_subsys_enabled_key +EXPORT_SYMBOL_GPL vmlinux 0xdf283031 devres_release +EXPORT_SYMBOL_GPL vmlinux 0xdf37ff4a regulator_set_active_discharge_regmap +EXPORT_SYMBOL_GPL vmlinux 0xdf3df475 snd_soc_dapm_force_enable_pin +EXPORT_SYMBOL_GPL vmlinux 0xdf49a57a ata_sff_data_xfer32 +EXPORT_SYMBOL_GPL vmlinux 0xdf7dc158 devlink_port_type_ib_set +EXPORT_SYMBOL_GPL vmlinux 0xdf7fa33b __tracepoint_tcp_send_reset +EXPORT_SYMBOL_GPL vmlinux 0xdf8b667d nand_erase_op +EXPORT_SYMBOL_GPL vmlinux 0xdf913fe5 regulator_enable_regmap +EXPORT_SYMBOL_GPL vmlinux 0xdf9208c0 alloc_workqueue +EXPORT_SYMBOL_GPL vmlinux 0xdfab5c0b snd_soc_dai_set_pll +EXPORT_SYMBOL_GPL vmlinux 0xdfad9cde sdhci_calc_clk +EXPORT_SYMBOL_GPL vmlinux 0xdfafd37b inet_twsk_hashdance +EXPORT_SYMBOL_GPL vmlinux 0xdfbfd6c8 tty_ldisc_ref +EXPORT_SYMBOL_GPL vmlinux 0xdfc03cd7 __wake_up_sync +EXPORT_SYMBOL_GPL vmlinux 0xdfc2c6ad __irq_domain_add +EXPORT_SYMBOL_GPL vmlinux 0xdfcb6c90 mctrl_gpio_set +EXPORT_SYMBOL_GPL vmlinux 0xdfd776e6 clockevents_config_and_register +EXPORT_SYMBOL_GPL vmlinux 0xdfe89166 powercap_unregister_zone +EXPORT_SYMBOL_GPL vmlinux 0xdff6529b crypto_shash_tfm_digest +EXPORT_SYMBOL_GPL vmlinux 0xdff7a0d1 usb_ifnum_to_if +EXPORT_SYMBOL_GPL vmlinux 0xe0016151 pci_parse_request_of_pci_ranges +EXPORT_SYMBOL_GPL vmlinux 0xe00c556d devm_device_remove_groups +EXPORT_SYMBOL_GPL vmlinux 0xe035dd82 nvdimm_flush +EXPORT_SYMBOL_GPL vmlinux 0xe045831a usb_add_phy +EXPORT_SYMBOL_GPL vmlinux 0xe04e99d7 btree_merge +EXPORT_SYMBOL_GPL vmlinux 0xe05e2f85 nexthop_free_rcu +EXPORT_SYMBOL_GPL vmlinux 0xe065ceeb i2c_parse_fw_timings +EXPORT_SYMBOL_GPL vmlinux 0xe071d05d zs_pool_stats +EXPORT_SYMBOL_GPL vmlinux 0xe0777dc5 cpuidle_get_cpu_driver +EXPORT_SYMBOL_GPL vmlinux 0xe07a9087 crypto_register_skciphers +EXPORT_SYMBOL_GPL vmlinux 0xe082c3eb ata_bmdma_qc_prep +EXPORT_SYMBOL_GPL vmlinux 0xe0900611 mtd_device_unregister +EXPORT_SYMBOL_GPL vmlinux 0xe0989cfd __rio_local_write_config_8 +EXPORT_SYMBOL_GPL vmlinux 0xe0b1c103 clk_set_max_rate +EXPORT_SYMBOL_GPL vmlinux 0xe0c99ae3 class_destroy +EXPORT_SYMBOL_GPL vmlinux 0xe0d1b363 ata_sas_port_resume +EXPORT_SYMBOL_GPL vmlinux 0xe0d903f3 gpiochip_request_own_desc +EXPORT_SYMBOL_GPL vmlinux 0xe0e51197 rio_enable_rx_tx_port +EXPORT_SYMBOL_GPL vmlinux 0xe103875a mtd_block_markbad +EXPORT_SYMBOL_GPL vmlinux 0xe1234eba simple_attr_read +EXPORT_SYMBOL_GPL vmlinux 0xe126360f fsnotify_parent +EXPORT_SYMBOL_GPL vmlinux 0xe126553f __tracepoint_unmap +EXPORT_SYMBOL_GPL vmlinux 0xe1265de1 input_ff_destroy +EXPORT_SYMBOL_GPL vmlinux 0xe12eff31 serial8250_do_set_ldisc +EXPORT_SYMBOL_GPL vmlinux 0xe139b001 perf_event_addr_filters_sync +EXPORT_SYMBOL_GPL vmlinux 0xe14c76e7 devm_regulator_put +EXPORT_SYMBOL_GPL vmlinux 0xe14ce4b0 blk_add_driver_data +EXPORT_SYMBOL_GPL vmlinux 0xe1502545 __tracepoint_neigh_timer_handler +EXPORT_SYMBOL_GPL vmlinux 0xe157123c register_net_sysctl +EXPORT_SYMBOL_GPL vmlinux 0xe1653a54 software_node_unregister +EXPORT_SYMBOL_GPL vmlinux 0xe1775ee7 dm_get_reserved_bio_based_ios +EXPORT_SYMBOL_GPL vmlinux 0xe180e5ec devlink_trap_policers_register +EXPORT_SYMBOL_GPL vmlinux 0xe1840a3e sdhci_pltfm_clk_get_max_clock +EXPORT_SYMBOL_GPL vmlinux 0xe1871bf8 wm8350_reg_write +EXPORT_SYMBOL_GPL vmlinux 0xe18960ba nvmem_device_write +EXPORT_SYMBOL_GPL vmlinux 0xe18d51c8 arizona_dev_init +EXPORT_SYMBOL_GPL vmlinux 0xe196dadd cpuidle_unregister +EXPORT_SYMBOL_GPL vmlinux 0xe1bd6c99 rio_init_mports +EXPORT_SYMBOL_GPL vmlinux 0xe1be1048 nand_ooblayout_sp_ops +EXPORT_SYMBOL_GPL vmlinux 0xe1c3b0ad devm_gpiod_get_from_of_node +EXPORT_SYMBOL_GPL vmlinux 0xe1c63523 blk_ksm_get_slot_idx +EXPORT_SYMBOL_GPL vmlinux 0xe1cad266 icc_enable +EXPORT_SYMBOL_GPL vmlinux 0xe1cb1fec gpiod_export +EXPORT_SYMBOL_GPL vmlinux 0xe1cf566b skcipher_walk_done +EXPORT_SYMBOL_GPL vmlinux 0xe1cfa261 __tracepoint_fdb_delete +EXPORT_SYMBOL_GPL vmlinux 0xe1d00099 fscrypt_ioctl_get_key_status +EXPORT_SYMBOL_GPL vmlinux 0xe1ea77b8 fuse_get_unique +EXPORT_SYMBOL_GPL vmlinux 0xe1ef2ba5 crypto_mod_get +EXPORT_SYMBOL_GPL vmlinux 0xe1f11bd9 posix_clock_register +EXPORT_SYMBOL_GPL vmlinux 0xe206f5f3 snd_soc_get_volsw +EXPORT_SYMBOL_GPL vmlinux 0xe208c5d6 rtnl_get_net_ns_capable +EXPORT_SYMBOL_GPL vmlinux 0xe2262584 regulator_disable_regmap +EXPORT_SYMBOL_GPL vmlinux 0xe22c01b4 fsnotify_put_group +EXPORT_SYMBOL_GPL vmlinux 0xe233762a input_event_from_user +EXPORT_SYMBOL_GPL vmlinux 0xe2352d5a security_path_symlink +EXPORT_SYMBOL_GPL vmlinux 0xe23aff22 badblocks_show +EXPORT_SYMBOL_GPL vmlinux 0xe23cdd55 sk_set_peek_off +EXPORT_SYMBOL_GPL vmlinux 0xe25351c2 ptp_classify_raw +EXPORT_SYMBOL_GPL vmlinux 0xe25438f5 usb_hcd_end_port_resume +EXPORT_SYMBOL_GPL vmlinux 0xe25b8673 driver_create_file +EXPORT_SYMBOL_GPL vmlinux 0xe2717792 dax_zero_page_range +EXPORT_SYMBOL_GPL vmlinux 0xe285dd3b phy_select_page +EXPORT_SYMBOL_GPL vmlinux 0xe28c6363 irq_create_strict_mappings +EXPORT_SYMBOL_GPL vmlinux 0xe28faf95 fuse_free_conn +EXPORT_SYMBOL_GPL vmlinux 0xe29625bd fwnode_property_read_u64_array +EXPORT_SYMBOL_GPL vmlinux 0xe2a356ec pinctrl_utils_add_map_mux +EXPORT_SYMBOL_GPL vmlinux 0xe2b3207a unregister_switchdev_notifier +EXPORT_SYMBOL_GPL vmlinux 0xe2b858b1 pci_add_dynid +EXPORT_SYMBOL_GPL vmlinux 0xe2c5f4ea snd_dmaengine_pcm_request_channel +EXPORT_SYMBOL_GPL vmlinux 0xe2cba341 sysfs_add_file_to_group +EXPORT_SYMBOL_GPL vmlinux 0xe2d8b8b6 tps6586x_get_version +EXPORT_SYMBOL_GPL vmlinux 0xe2e9b915 stmpe_block_write +EXPORT_SYMBOL_GPL vmlinux 0xe2ef60de device_destroy +EXPORT_SYMBOL_GPL vmlinux 0xe2fd79e1 sdhci_reset +EXPORT_SYMBOL_GPL vmlinux 0xe3043ff9 request_any_context_irq +EXPORT_SYMBOL_GPL vmlinux 0xe3052ab0 edac_mc_del_mc +EXPORT_SYMBOL_GPL vmlinux 0xe3073583 is_software_node +EXPORT_SYMBOL_GPL vmlinux 0xe30aeeba snd_dmaengine_pcm_open_request_chan +EXPORT_SYMBOL_GPL vmlinux 0xe30b50d4 clk_hw_round_rate +EXPORT_SYMBOL_GPL vmlinux 0xe30f60a3 ata_scsi_port_error_handler +EXPORT_SYMBOL_GPL vmlinux 0xe331e165 cpuidle_disable_device +EXPORT_SYMBOL_GPL vmlinux 0xe33368d9 of_get_videomode +EXPORT_SYMBOL_GPL vmlinux 0xe351240d cpufreq_driver_fast_switch +EXPORT_SYMBOL_GPL vmlinux 0xe363d452 fwnode_graph_get_remote_node +EXPORT_SYMBOL_GPL vmlinux 0xe3746620 clk_hw_is_prepared +EXPORT_SYMBOL_GPL vmlinux 0xe3863555 of_dma_xlate_by_chan_id +EXPORT_SYMBOL_GPL vmlinux 0xe38a351e skb_send_sock_locked +EXPORT_SYMBOL_GPL vmlinux 0xe393aa63 scsi_host_complete_all_commands +EXPORT_SYMBOL_GPL vmlinux 0xe3988901 tty_buffer_lock_exclusive +EXPORT_SYMBOL_GPL vmlinux 0xe39d0794 usb_phy_roothub_exit +EXPORT_SYMBOL_GPL vmlinux 0xe3b09712 kprobe_event_delete +EXPORT_SYMBOL_GPL vmlinux 0xe3bffa49 clockevents_register_device +EXPORT_SYMBOL_GPL vmlinux 0xe3c1d355 ohci_init_driver +EXPORT_SYMBOL_GPL vmlinux 0xe3d5c9db tpm_chip_start +EXPORT_SYMBOL_GPL vmlinux 0xe3dbee49 pci_bus_resource_n +EXPORT_SYMBOL_GPL vmlinux 0xe3f0e5d2 ahci_start_engine +EXPORT_SYMBOL_GPL vmlinux 0xe3f7321b bpf_offload_dev_create +EXPORT_SYMBOL_GPL vmlinux 0xe401d61f gpiochip_line_is_persistent +EXPORT_SYMBOL_GPL vmlinux 0xe402a6ef ohci_setup +EXPORT_SYMBOL_GPL vmlinux 0xe406e2b1 iommu_device_sysfs_add +EXPORT_SYMBOL_GPL vmlinux 0xe40bb23e devlink_health_reporter_priv +EXPORT_SYMBOL_GPL vmlinux 0xe4101006 device_move +EXPORT_SYMBOL_GPL vmlinux 0xe4105210 device_store_int +EXPORT_SYMBOL_GPL vmlinux 0xe41c1079 skb_clone_tx_timestamp +EXPORT_SYMBOL_GPL vmlinux 0xe4298c01 mtk_pinconf_bias_disable_get +EXPORT_SYMBOL_GPL vmlinux 0xe4309905 syscore_resume +EXPORT_SYMBOL_GPL vmlinux 0xe4369a2d led_set_brightness_nopm +EXPORT_SYMBOL_GPL vmlinux 0xe4440b08 usb_gadget_map_request_by_dev +EXPORT_SYMBOL_GPL vmlinux 0xe454cc63 devlink_sb_unregister +EXPORT_SYMBOL_GPL vmlinux 0xe45d33b4 genphy_c45_check_and_restart_aneg +EXPORT_SYMBOL_GPL vmlinux 0xe45ee856 bpf_trace_run3 +EXPORT_SYMBOL_GPL vmlinux 0xe46332fe br_fdb_test_addr_hook +EXPORT_SYMBOL_GPL vmlinux 0xe46ba8fc of_genpd_parse_idle_states +EXPORT_SYMBOL_GPL vmlinux 0xe476231a init_pid_ns +EXPORT_SYMBOL_GPL vmlinux 0xe47c0914 securityfs_create_file +EXPORT_SYMBOL_GPL vmlinux 0xe4817f1a pci_epc_set_msix +EXPORT_SYMBOL_GPL vmlinux 0xe4844367 blk_mq_sched_try_merge +EXPORT_SYMBOL_GPL vmlinux 0xe48ad1fa of_device_modalias +EXPORT_SYMBOL_GPL vmlinux 0xe48fc882 pci_find_ext_capability +EXPORT_SYMBOL_GPL vmlinux 0xe4954950 fanout_mutex +EXPORT_SYMBOL_GPL vmlinux 0xe4971ade tracing_alloc_snapshot +EXPORT_SYMBOL_GPL vmlinux 0xe4b064f9 pcie_link_speed +EXPORT_SYMBOL_GPL vmlinux 0xe4b0dbef inet_ctl_sock_create +EXPORT_SYMBOL_GPL vmlinux 0xe4b818c3 phy_speed_to_str +EXPORT_SYMBOL_GPL vmlinux 0xe4c2c66c rtc_ktime_to_tm +EXPORT_SYMBOL_GPL vmlinux 0xe4c9f178 btree_get_prev +EXPORT_SYMBOL_GPL vmlinux 0xe4e48b12 swphy_validate_state +EXPORT_SYMBOL_GPL vmlinux 0xe52acaa7 gpiochip_relres_irq +EXPORT_SYMBOL_GPL vmlinux 0xe531c3cd decrypt_blob +EXPORT_SYMBOL_GPL vmlinux 0xe53595d1 md_find_rdev_nr_rcu +EXPORT_SYMBOL_GPL vmlinux 0xe54164ec phy_driver_is_genphy +EXPORT_SYMBOL_GPL vmlinux 0xe5444926 crypto_enqueue_request +EXPORT_SYMBOL_GPL vmlinux 0xe54efcab of_pci_dma_range_parser_init +EXPORT_SYMBOL_GPL vmlinux 0xe5502be4 da9052_regmap_config +EXPORT_SYMBOL_GPL vmlinux 0xe5558d6f devlink_net +EXPORT_SYMBOL_GPL vmlinux 0xe57b993d init_srcu_struct +EXPORT_SYMBOL_GPL vmlinux 0xe5883bd9 class_compat_unregister +EXPORT_SYMBOL_GPL vmlinux 0xe5906f2a pci_load_saved_state +EXPORT_SYMBOL_GPL vmlinux 0xe5909cb4 virtio_device_restore +EXPORT_SYMBOL_GPL vmlinux 0xe591518c spi_mem_exec_op +EXPORT_SYMBOL_GPL vmlinux 0xe597a5d7 of_get_dma_window +EXPORT_SYMBOL_GPL vmlinux 0xe59efb0e musb_clearb +EXPORT_SYMBOL_GPL vmlinux 0xe5b32c12 blkg_conf_finish +EXPORT_SYMBOL_GPL vmlinux 0xe5b93279 usb_hcd_pci_shutdown +EXPORT_SYMBOL_GPL vmlinux 0xe5cb1943 hisi_clk_register_divider +EXPORT_SYMBOL_GPL vmlinux 0xe5d7409c alarm_start_relative +EXPORT_SYMBOL_GPL vmlinux 0xe5d9cb1d snd_soc_get_strobe +EXPORT_SYMBOL_GPL vmlinux 0xe5fca093 device_create_with_groups +EXPORT_SYMBOL_GPL vmlinux 0xe6034a0b devm_devfreq_event_remove_edev +EXPORT_SYMBOL_GPL vmlinux 0xe6054040 pci_epf_destroy +EXPORT_SYMBOL_GPL vmlinux 0xe61e3075 mtd_ooblayout_get_databytes +EXPORT_SYMBOL_GPL vmlinux 0xe6261a38 ata_cable_80wire +EXPORT_SYMBOL_GPL vmlinux 0xe628bb9f phy_fibre_port_array +EXPORT_SYMBOL_GPL vmlinux 0xe62a3a85 da903x_write +EXPORT_SYMBOL_GPL vmlinux 0xe630773f __raw_v4_lookup +EXPORT_SYMBOL_GPL vmlinux 0xe639be46 usb_get_hcd +EXPORT_SYMBOL_GPL vmlinux 0xe6512462 ata_bmdma_error_handler +EXPORT_SYMBOL_GPL vmlinux 0xe65c18b1 fsverity_ioctl_measure +EXPORT_SYMBOL_GPL vmlinux 0xe65dc828 pm_generic_thaw_early +EXPORT_SYMBOL_GPL vmlinux 0xe66b1d0e iommu_report_device_fault +EXPORT_SYMBOL_GPL vmlinux 0xe66e9406 elv_unregister +EXPORT_SYMBOL_GPL vmlinux 0xe671a610 devm_nvdimm_memremap +EXPORT_SYMBOL_GPL vmlinux 0xe6790345 of_modalias_node +EXPORT_SYMBOL_GPL vmlinux 0xe6a257f1 divider_round_rate_parent +EXPORT_SYMBOL_GPL vmlinux 0xe6a3ae9c serdev_device_set_baudrate +EXPORT_SYMBOL_GPL vmlinux 0xe6a6eced call_srcu +EXPORT_SYMBOL_GPL vmlinux 0xe6d4cda0 generic_fh_to_parent +EXPORT_SYMBOL_GPL vmlinux 0xe6d6fed4 rockchip_pcie_get_phys +EXPORT_SYMBOL_GPL vmlinux 0xe6d81d31 hrtimer_start_range_ns +EXPORT_SYMBOL_GPL vmlinux 0xe6e3203d of_devfreq_cooling_register_power +EXPORT_SYMBOL_GPL vmlinux 0xe6e40502 rcu_get_gp_seq +EXPORT_SYMBOL_GPL vmlinux 0xe6f00e48 nanddev_bbt_init +EXPORT_SYMBOL_GPL vmlinux 0xe6fe1ebc pinctrl_generic_get_group_count +EXPORT_SYMBOL_GPL vmlinux 0xe70dc445 of_property_count_elems_of_size +EXPORT_SYMBOL_GPL vmlinux 0xe712f1ea iommu_register_device_fault_handler +EXPORT_SYMBOL_GPL vmlinux 0xe722721e dev_set_name +EXPORT_SYMBOL_GPL vmlinux 0xe7269fc1 encrypt_blob +EXPORT_SYMBOL_GPL vmlinux 0xe72ce54b sysfs_create_groups +EXPORT_SYMBOL_GPL vmlinux 0xe7460f1c securityfs_create_dir +EXPORT_SYMBOL_GPL vmlinux 0xe747297d xas_find_conflict +EXPORT_SYMBOL_GPL vmlinux 0xe753b68d devlink_fmsg_arr_pair_nest_end +EXPORT_SYMBOL_GPL vmlinux 0xe75625fb cpu_bit_bitmap +EXPORT_SYMBOL_GPL vmlinux 0xe75e69d1 fuse_abort_conn +EXPORT_SYMBOL_GPL vmlinux 0xe7610a07 cpufreq_freq_transition_begin +EXPORT_SYMBOL_GPL vmlinux 0xe76673fb dev_pm_opp_set_prop_name +EXPORT_SYMBOL_GPL vmlinux 0xe769232e sprint_symbol_no_offset +EXPORT_SYMBOL_GPL vmlinux 0xe775b60a sbitmap_any_bit_set +EXPORT_SYMBOL_GPL vmlinux 0xe77c0f4e wm8997_irq +EXPORT_SYMBOL_GPL vmlinux 0xe781c3ce page_reporting_unregister +EXPORT_SYMBOL_GPL vmlinux 0xe783e261 sysfs_emit +EXPORT_SYMBOL_GPL vmlinux 0xe792fb80 blk_rq_err_bytes +EXPORT_SYMBOL_GPL vmlinux 0xe7b69af5 ipv4_redirect +EXPORT_SYMBOL_GPL vmlinux 0xe7bcc24c inet6_sk_rebuild_header +EXPORT_SYMBOL_GPL vmlinux 0xe7c04497 clk_register_fixed_rate +EXPORT_SYMBOL_GPL vmlinux 0xe7c0cf02 security_file_ioctl +EXPORT_SYMBOL_GPL vmlinux 0xe7cded8c pkcs7_validate_trust +EXPORT_SYMBOL_GPL vmlinux 0xe7d0ca87 i2c_new_smbus_alert_device +EXPORT_SYMBOL_GPL vmlinux 0xe7d556b8 snd_soc_dapm_force_enable_pin_unlocked +EXPORT_SYMBOL_GPL vmlinux 0xe7d6d2d4 filter_match_preds +EXPORT_SYMBOL_GPL vmlinux 0xe7eee3d5 __cookie_v4_init_sequence +EXPORT_SYMBOL_GPL vmlinux 0xe7ffe877 pcpu_base_addr +EXPORT_SYMBOL_GPL vmlinux 0xe809cffb ring_buffer_time_stamp +EXPORT_SYMBOL_GPL vmlinux 0xe818b32b ata_bmdma_interrupt +EXPORT_SYMBOL_GPL vmlinux 0xe81ddad6 tracing_generic_entry_update +EXPORT_SYMBOL_GPL vmlinux 0xe81f0cd6 balloon_aops +EXPORT_SYMBOL_GPL vmlinux 0xe81f17bd validate_xmit_xfrm +EXPORT_SYMBOL_GPL vmlinux 0xe84f6e5c pciserial_remove_ports +EXPORT_SYMBOL_GPL vmlinux 0xe852f819 pm_runtime_irq_safe +EXPORT_SYMBOL_GPL vmlinux 0xe85a9fd3 cpu_cluster_pm_exit +EXPORT_SYMBOL_GPL vmlinux 0xe862c4b7 dpm_suspend_start +EXPORT_SYMBOL_GPL vmlinux 0xe8695574 snd_device_initialize +EXPORT_SYMBOL_GPL vmlinux 0xe88c89a4 devm_mdiobus_free +EXPORT_SYMBOL_GPL vmlinux 0xe8adaf29 mbox_client_peek_data +EXPORT_SYMBOL_GPL vmlinux 0xe8b0f3c1 iommu_group_get +EXPORT_SYMBOL_GPL vmlinux 0xe8c563aa ip6_pol_route +EXPORT_SYMBOL_GPL vmlinux 0xe8e99841 usb_hub_claim_port +EXPORT_SYMBOL_GPL vmlinux 0xe8fe6919 aead_exit_geniv +EXPORT_SYMBOL_GPL vmlinux 0xe904af98 tc3589x_block_write +EXPORT_SYMBOL_GPL vmlinux 0xe90dd344 gpiod_to_irq +EXPORT_SYMBOL_GPL vmlinux 0xe911440f usb_string +EXPORT_SYMBOL_GPL vmlinux 0xe91614e0 pm_runtime_get_if_active +EXPORT_SYMBOL_GPL vmlinux 0xe91aea4b led_classdev_register_ext +EXPORT_SYMBOL_GPL vmlinux 0xe92b815d devfreq_event_set_event +EXPORT_SYMBOL_GPL vmlinux 0xe9348a86 usb_put_phy +EXPORT_SYMBOL_GPL vmlinux 0xe93e49c3 devres_free +EXPORT_SYMBOL_GPL vmlinux 0xe9545fcc fwnode_create_software_node +EXPORT_SYMBOL_GPL vmlinux 0xe956a75c pl320_ipc_unregister_notifier +EXPORT_SYMBOL_GPL vmlinux 0xe95f94bc inet_send_prepare +EXPORT_SYMBOL_GPL vmlinux 0xe96baabb rio_add_net +EXPORT_SYMBOL_GPL vmlinux 0xe96cc89a ata_std_bios_param +EXPORT_SYMBOL_GPL vmlinux 0xe97fb94f device_for_each_child_reverse +EXPORT_SYMBOL_GPL vmlinux 0xe9828d5b arizona_clk32k_enable +EXPORT_SYMBOL_GPL vmlinux 0xe98b4017 watchdog_notify_pretimeout +EXPORT_SYMBOL_GPL vmlinux 0xe9914eb8 relay_buf_full +EXPORT_SYMBOL_GPL vmlinux 0xe9952056 pci_epc_clear_bar +EXPORT_SYMBOL_GPL vmlinux 0xe9a7d971 pcie_aspm_enabled +EXPORT_SYMBOL_GPL vmlinux 0xe9a7fe16 nvmem_cell_read +EXPORT_SYMBOL_GPL vmlinux 0xe9adab17 _proc_mkdir +EXPORT_SYMBOL_GPL vmlinux 0xe9af484b mmu_interval_notifier_insert +EXPORT_SYMBOL_GPL vmlinux 0xe9b18d6c __pm_runtime_set_status +EXPORT_SYMBOL_GPL vmlinux 0xe9b2855d serial8250_release_dma +EXPORT_SYMBOL_GPL vmlinux 0xe9b349fc arm_iommu_create_mapping +EXPORT_SYMBOL_GPL vmlinux 0xe9c00825 ata_scsi_change_queue_depth +EXPORT_SYMBOL_GPL vmlinux 0xe9c616de cpu_latency_qos_add_request +EXPORT_SYMBOL_GPL vmlinux 0xe9caef0a rio_dma_prep_slave_sg +EXPORT_SYMBOL_GPL vmlinux 0xe9d1b7cf irq_to_pcap +EXPORT_SYMBOL_GPL vmlinux 0xe9d26bc5 __tracepoint_block_bio_complete +EXPORT_SYMBOL_GPL vmlinux 0xe9d3a9e9 pci_user_read_config_word +EXPORT_SYMBOL_GPL vmlinux 0xe9d4dd33 netlink_strict_get_check +EXPORT_SYMBOL_GPL vmlinux 0xe9d7cefd __cci_control_port_by_device +EXPORT_SYMBOL_GPL vmlinux 0xe9dd40a7 ahci_reset_em +EXPORT_SYMBOL_GPL vmlinux 0xea124bd1 gcd +EXPORT_SYMBOL_GPL vmlinux 0xea1bb291 bL_switcher_get_enabled +EXPORT_SYMBOL_GPL vmlinux 0xea1f6e0e hugetlb_cgrp_subsys_enabled_key +EXPORT_SYMBOL_GPL vmlinux 0xea28d80f wm5110_i2c_regmap +EXPORT_SYMBOL_GPL vmlinux 0xea36593f crypto_grab_shash +EXPORT_SYMBOL_GPL vmlinux 0xea38036f ring_buffer_entries +EXPORT_SYMBOL_GPL vmlinux 0xea4a09cb mod_delayed_work_on +EXPORT_SYMBOL_GPL vmlinux 0xea50dad3 ahci_ignore_sss +EXPORT_SYMBOL_GPL vmlinux 0xea576634 dmaengine_unmap_put +EXPORT_SYMBOL_GPL vmlinux 0xea595211 crypto_ahash_setkey +EXPORT_SYMBOL_GPL vmlinux 0xea5e9c5a scsi_internal_device_unblock_nowait +EXPORT_SYMBOL_GPL vmlinux 0xea82953a perf_event_release_kernel +EXPORT_SYMBOL_GPL vmlinux 0xea852ef2 proc_create_net_single +EXPORT_SYMBOL_GPL vmlinux 0xeaa4b693 bpf_prog_select_runtime +EXPORT_SYMBOL_GPL vmlinux 0xead54924 mctrl_gpio_to_gpiod +EXPORT_SYMBOL_GPL vmlinux 0xeae0f496 clean_acked_data_flush +EXPORT_SYMBOL_GPL vmlinux 0xeaf2caf0 hrtimer_init_sleeper +EXPORT_SYMBOL_GPL vmlinux 0xeaf4d850 power_supply_class +EXPORT_SYMBOL_GPL vmlinux 0xeafe07b8 clk_bulk_prepare +EXPORT_SYMBOL_GPL vmlinux 0xeb12e0cb xfrm_dev_state_add +EXPORT_SYMBOL_GPL vmlinux 0xeb1d63fe nand_wait_ready +EXPORT_SYMBOL_GPL vmlinux 0xeb2f825c init_rs_gfp +EXPORT_SYMBOL_GPL vmlinux 0xeb354273 synth_event_add_next_val +EXPORT_SYMBOL_GPL vmlinux 0xeb3c8d73 wm5110_irq +EXPORT_SYMBOL_GPL vmlinux 0xeb3eb997 rio_get_device +EXPORT_SYMBOL_GPL vmlinux 0xeb417877 da9052_enable_irq +EXPORT_SYMBOL_GPL vmlinux 0xeb50b050 xdp_rxq_info_unused +EXPORT_SYMBOL_GPL vmlinux 0xeb6aaf36 kernel_read_file_from_path_initns +EXPORT_SYMBOL_GPL vmlinux 0xeb711ae7 snd_soc_params_to_bclk +EXPORT_SYMBOL_GPL vmlinux 0xeb7659b5 rtc_read_alarm +EXPORT_SYMBOL_GPL vmlinux 0xeb874d34 platform_get_irq_byname_optional +EXPORT_SYMBOL_GPL vmlinux 0xeb912962 do_xdp_generic +EXPORT_SYMBOL_GPL vmlinux 0xeb9abbee ata_sff_queue_work +EXPORT_SYMBOL_GPL vmlinux 0xeb9fd52d extcon_unregister_notifier +EXPORT_SYMBOL_GPL vmlinux 0xeba6fc4b skb_scrub_packet +EXPORT_SYMBOL_GPL vmlinux 0xebad716b snd_soc_dapm_disable_pin_unlocked +EXPORT_SYMBOL_GPL vmlinux 0xebb468ad blk_trace_remove +EXPORT_SYMBOL_GPL vmlinux 0xebb50601 css_next_descendant_pre +EXPORT_SYMBOL_GPL vmlinux 0xebbbc037 cpu_subsys +EXPORT_SYMBOL_GPL vmlinux 0xebbe1622 io_cgrp_subsys_enabled_key +EXPORT_SYMBOL_GPL vmlinux 0xebc3f0c3 mtd_pairing_info_to_wunit +EXPORT_SYMBOL_GPL vmlinux 0xebc9a09f lock_system_sleep +EXPORT_SYMBOL_GPL vmlinux 0xebd4cc11 mctrl_gpio_enable_ms +EXPORT_SYMBOL_GPL vmlinux 0xebd907aa regmap_field_free +EXPORT_SYMBOL_GPL vmlinux 0xebe248ef snd_soc_debugfs_root +EXPORT_SYMBOL_GPL vmlinux 0xebee6eb0 regulator_get_error_flags +EXPORT_SYMBOL_GPL vmlinux 0xebf0d8df of_get_display_timings +EXPORT_SYMBOL_GPL vmlinux 0xec0f707e amba_apb_device_add +EXPORT_SYMBOL_GPL vmlinux 0xec0f8740 edac_mod_work +EXPORT_SYMBOL_GPL vmlinux 0xec182742 percpu_down_write +EXPORT_SYMBOL_GPL vmlinux 0xec3cbc9e tpm_pcr_extend +EXPORT_SYMBOL_GPL vmlinux 0xec442d17 sk_msg_free_partial +EXPORT_SYMBOL_GPL vmlinux 0xec56ad88 wbt_disable_default +EXPORT_SYMBOL_GPL vmlinux 0xec68ba70 clk_bulk_enable +EXPORT_SYMBOL_GPL vmlinux 0xec766113 devm_extcon_dev_free +EXPORT_SYMBOL_GPL vmlinux 0xec774acb cpufreq_frequency_table_verify +EXPORT_SYMBOL_GPL vmlinux 0xec7f6c08 ata_std_sched_eh +EXPORT_SYMBOL_GPL vmlinux 0xec8466a8 pkcs7_parse_message +EXPORT_SYMBOL_GPL vmlinux 0xecab90f9 list_lru_count_one +EXPORT_SYMBOL_GPL vmlinux 0xecb2e49f virtqueue_get_avail_addr +EXPORT_SYMBOL_GPL vmlinux 0xecc9d8f3 mtk_pinconf_drive_get_rev1 +EXPORT_SYMBOL_GPL vmlinux 0xecda4204 regulator_count_voltages +EXPORT_SYMBOL_GPL vmlinux 0xece143de transport_remove_device +EXPORT_SYMBOL_GPL vmlinux 0xece48c85 usb_mon_register +EXPORT_SYMBOL_GPL vmlinux 0xed15b2af scsi_host_block +EXPORT_SYMBOL_GPL vmlinux 0xed1be95f snd_ctl_get_preferred_subdevice +EXPORT_SYMBOL_GPL vmlinux 0xed1ffbdd strp_unpause +EXPORT_SYMBOL_GPL vmlinux 0xed33528f device_link_del +EXPORT_SYMBOL_GPL vmlinux 0xed344146 mcpm_is_available +EXPORT_SYMBOL_GPL vmlinux 0xed38c848 __tracepoint_rpm_idle +EXPORT_SYMBOL_GPL vmlinux 0xed390e8a perf_event_create_kernel_counter +EXPORT_SYMBOL_GPL vmlinux 0xed39673e blockdev_superblock +EXPORT_SYMBOL_GPL vmlinux 0xed519c49 sk_set_memalloc +EXPORT_SYMBOL_GPL vmlinux 0xed5f7137 led_trigger_rename_static +EXPORT_SYMBOL_GPL vmlinux 0xed754c81 fscrypt_set_test_dummy_encryption +EXPORT_SYMBOL_GPL vmlinux 0xed77864d of_platform_depopulate +EXPORT_SYMBOL_GPL vmlinux 0xed8bbe99 __tracepoint_pelt_dl_tp +EXPORT_SYMBOL_GPL vmlinux 0xed8fa7ee nanddev_isreserved +EXPORT_SYMBOL_GPL vmlinux 0xed941afd blk_mq_rdma_map_queues +EXPORT_SYMBOL_GPL vmlinux 0xeda04e24 clk_register_hisi_phase +EXPORT_SYMBOL_GPL vmlinux 0xedb1e9eb led_trigger_set +EXPORT_SYMBOL_GPL vmlinux 0xedb1f361 sdio_align_size +EXPORT_SYMBOL_GPL vmlinux 0xedd4b63b nexthop_find_by_id +EXPORT_SYMBOL_GPL vmlinux 0xedecef79 tcp_bpf_sendmsg_redir +EXPORT_SYMBOL_GPL vmlinux 0xedefc416 iomap_file_unshare +EXPORT_SYMBOL_GPL vmlinux 0xedf70ad6 usb_match_one_id +EXPORT_SYMBOL_GPL vmlinux 0xedf9e70c clk_hw_get_parent_index +EXPORT_SYMBOL_GPL vmlinux 0xedfc3d7f gpiod_get_array_value_cansleep +EXPORT_SYMBOL_GPL vmlinux 0xee077e52 gpiochip_irq_domain_deactivate +EXPORT_SYMBOL_GPL vmlinux 0xee38ef57 register_switchdev_blocking_notifier +EXPORT_SYMBOL_GPL vmlinux 0xee3f03a5 pci_ioremap_io +EXPORT_SYMBOL_GPL vmlinux 0xee3f8561 __pm_runtime_suspend +EXPORT_SYMBOL_GPL vmlinux 0xee58c5a0 iommu_domain_window_disable +EXPORT_SYMBOL_GPL vmlinux 0xee5dcf3a regmap_test_bits +EXPORT_SYMBOL_GPL vmlinux 0xee5e3ed5 get_kernel_page +EXPORT_SYMBOL_GPL vmlinux 0xee6b71c4 syscon_regmap_lookup_by_compatible +EXPORT_SYMBOL_GPL vmlinux 0xee772015 devm_pinctrl_put +EXPORT_SYMBOL_GPL vmlinux 0xee85746e snd_soc_dai_action +EXPORT_SYMBOL_GPL vmlinux 0xee870586 snd_soc_dapm_enable_pin +EXPORT_SYMBOL_GPL vmlinux 0xee8a9719 devm_pwm_get +EXPORT_SYMBOL_GPL vmlinux 0xeea292b9 fib_alias_hw_flags_set +EXPORT_SYMBOL_GPL vmlinux 0xeeab725d device_reprobe +EXPORT_SYMBOL_GPL vmlinux 0xeeb3de6a ahci_platform_suspend_host +EXPORT_SYMBOL_GPL vmlinux 0xeec4c43f snd_device_get_state +EXPORT_SYMBOL_GPL vmlinux 0xeed4f800 __sock_recv_timestamp +EXPORT_SYMBOL_GPL vmlinux 0xeedd987e phy_10gbit_features_array +EXPORT_SYMBOL_GPL vmlinux 0xeedfcec3 task_work_run +EXPORT_SYMBOL_GPL vmlinux 0xeefc5638 seg6_do_srh_inline +EXPORT_SYMBOL_GPL vmlinux 0xef011ec9 crypto_get_default_null_skcipher +EXPORT_SYMBOL_GPL vmlinux 0xef1b2f6b ata_host_resume +EXPORT_SYMBOL_GPL vmlinux 0xef256426 iomap_truncate_page +EXPORT_SYMBOL_GPL vmlinux 0xef29fcdd clk_bulk_put +EXPORT_SYMBOL_GPL vmlinux 0xef30d34d cpufreq_dbs_governor_exit +EXPORT_SYMBOL_GPL vmlinux 0xef464c28 getboottime64 +EXPORT_SYMBOL_GPL vmlinux 0xef5972fc nanddev_mtd_max_bad_blocks +EXPORT_SYMBOL_GPL vmlinux 0xef65f2de regulator_list_voltage_linear_range +EXPORT_SYMBOL_GPL vmlinux 0xef6c3f70 round_jiffies_up_relative +EXPORT_SYMBOL_GPL vmlinux 0xef70eb7e ring_buffer_iter_advance +EXPORT_SYMBOL_GPL vmlinux 0xef78ea04 gpiochip_line_is_open_source +EXPORT_SYMBOL_GPL vmlinux 0xef824117 thermal_zone_get_zone_by_name +EXPORT_SYMBOL_GPL vmlinux 0xef83eed1 usb_unlink_anchored_urbs +EXPORT_SYMBOL_GPL vmlinux 0xef9047f9 tty_ldisc_ref_wait +EXPORT_SYMBOL_GPL vmlinux 0xefa2c27d register_tracepoint_module_notifier +EXPORT_SYMBOL_GPL vmlinux 0xefa686ac gpiochip_add_data_with_key +EXPORT_SYMBOL_GPL vmlinux 0xefaace6e mv_mbus_dram_info +EXPORT_SYMBOL_GPL vmlinux 0xefb5f8de genphy_c45_aneg_done +EXPORT_SYMBOL_GPL vmlinux 0xefcd6a6f power_supply_property_is_writeable +EXPORT_SYMBOL_GPL vmlinux 0xefce9e1f serial8250_handle_irq +EXPORT_SYMBOL_GPL vmlinux 0xefd41698 ata_pci_bmdma_init +EXPORT_SYMBOL_GPL vmlinux 0xefe76471 i2c_match_id +EXPORT_SYMBOL_GPL vmlinux 0xefeafcf1 edac_has_mcs +EXPORT_SYMBOL_GPL vmlinux 0xf01fc866 edac_mc_alloc +EXPORT_SYMBOL_GPL vmlinux 0xf02150de get_net_ns_by_fd +EXPORT_SYMBOL_GPL vmlinux 0xf02ab551 uart_console_write +EXPORT_SYMBOL_GPL vmlinux 0xf039fbe3 pciserial_init_ports +EXPORT_SYMBOL_GPL vmlinux 0xf05842db edac_mc_free +EXPORT_SYMBOL_GPL vmlinux 0xf05f2afa platform_get_irq_byname +EXPORT_SYMBOL_GPL vmlinux 0xf0880153 irq_alloc_generic_chip +EXPORT_SYMBOL_GPL vmlinux 0xf0910075 sfp_bus_del_upstream +EXPORT_SYMBOL_GPL vmlinux 0xf09bbe0f __trace_note_message +EXPORT_SYMBOL_GPL vmlinux 0xf0a06e05 debugfs_write_file_bool +EXPORT_SYMBOL_GPL vmlinux 0xf0ab6426 usb_gadget_unregister_driver +EXPORT_SYMBOL_GPL vmlinux 0xf0c70957 efivar_entry_remove +EXPORT_SYMBOL_GPL vmlinux 0xf0cf363b device_remove_groups +EXPORT_SYMBOL_GPL vmlinux 0xf0defc09 platform_get_resource +EXPORT_SYMBOL_GPL vmlinux 0xf0e00ef2 gpiod_unexport +EXPORT_SYMBOL_GPL vmlinux 0xf0e80c57 pci_sriov_get_totalvfs +EXPORT_SYMBOL_GPL vmlinux 0xf0f6088a iomap_is_partially_uptodate +EXPORT_SYMBOL_GPL vmlinux 0xf0f852d2 ehci_handshake +EXPORT_SYMBOL_GPL vmlinux 0xf0f95e51 musb_readl +EXPORT_SYMBOL_GPL vmlinux 0xf0fae899 pci_cfg_access_trylock +EXPORT_SYMBOL_GPL vmlinux 0xf10bc887 dev_pm_get_subsys_data +EXPORT_SYMBOL_GPL vmlinux 0xf126f385 debugfs_create_devm_seqfile +EXPORT_SYMBOL_GPL vmlinux 0xf1361941 pci_vpd_find_tag +EXPORT_SYMBOL_GPL vmlinux 0xf142cbef tcp_abort +EXPORT_SYMBOL_GPL vmlinux 0xf15f408d irq_setup_generic_chip +EXPORT_SYMBOL_GPL vmlinux 0xf16e2502 of_property_read_u32_index +EXPORT_SYMBOL_GPL vmlinux 0xf184d189 kernel_power_off +EXPORT_SYMBOL_GPL vmlinux 0xf19739e2 cpts_rx_timestamp +EXPORT_SYMBOL_GPL vmlinux 0xf1a43789 usb_remove_hcd +EXPORT_SYMBOL_GPL vmlinux 0xf1b31314 delayacct_on +EXPORT_SYMBOL_GPL vmlinux 0xf1cc538f ahci_error_handler +EXPORT_SYMBOL_GPL vmlinux 0xf1d82523 devlink_traps_unregister +EXPORT_SYMBOL_GPL vmlinux 0xf1e6721f ipv6_dup_options +EXPORT_SYMBOL_GPL vmlinux 0xf1e8e565 ima_file_hash +EXPORT_SYMBOL_GPL vmlinux 0xf1fae6a3 asic3_read_register +EXPORT_SYMBOL_GPL vmlinux 0xf1fc382a of_icc_get_by_index +EXPORT_SYMBOL_GPL vmlinux 0xf207f720 regulator_get_linear_step +EXPORT_SYMBOL_GPL vmlinux 0xf20ce2ca pinctrl_find_gpio_range_from_pin +EXPORT_SYMBOL_GPL vmlinux 0xf20cec77 thermal_zone_of_get_sensor_id +EXPORT_SYMBOL_GPL vmlinux 0xf21e1f9b disable_percpu_irq +EXPORT_SYMBOL_GPL vmlinux 0xf22557d8 devm_phy_get +EXPORT_SYMBOL_GPL vmlinux 0xf2272275 __list_lru_init +EXPORT_SYMBOL_GPL vmlinux 0xf243e27a dev_pm_opp_init_cpufreq_table +EXPORT_SYMBOL_GPL vmlinux 0xf245a608 ip_route_output_tunnel +EXPORT_SYMBOL_GPL vmlinux 0xf2527a0b bio_trim +EXPORT_SYMBOL_GPL vmlinux 0xf254ac4b nf_checksum_partial +EXPORT_SYMBOL_GPL vmlinux 0xf25b2745 gpiod_direction_output_raw +EXPORT_SYMBOL_GPL vmlinux 0xf262b9e2 evm_inode_init_security +EXPORT_SYMBOL_GPL vmlinux 0xf265c367 wm831x_reg_unlock +EXPORT_SYMBOL_GPL vmlinux 0xf2670990 crypto_stats_ahash_update +EXPORT_SYMBOL_GPL vmlinux 0xf26c179d free_fib_info +EXPORT_SYMBOL_GPL vmlinux 0xf27108a4 vc_scrolldelta_helper +EXPORT_SYMBOL_GPL vmlinux 0xf279c625 pm_generic_freeze +EXPORT_SYMBOL_GPL vmlinux 0xf286fd66 gen10g_config_aneg +EXPORT_SYMBOL_GPL vmlinux 0xf2967796 ring_buffer_record_on +EXPORT_SYMBOL_GPL vmlinux 0xf2c03251 cpts_release +EXPORT_SYMBOL_GPL vmlinux 0xf2cddd33 cpuidle_unregister_device +EXPORT_SYMBOL_GPL vmlinux 0xf2d6b0ff sbitmap_get_shallow +EXPORT_SYMBOL_GPL vmlinux 0xf2e92a06 skb_zerocopy_headlen +EXPORT_SYMBOL_GPL vmlinux 0xf2ee5293 gpiochip_irq_domain_activate +EXPORT_SYMBOL_GPL vmlinux 0xf2f75798 spi_res_alloc +EXPORT_SYMBOL_GPL vmlinux 0xf30a5502 cpufreq_enable_boost_support +EXPORT_SYMBOL_GPL vmlinux 0xf30fda27 lzo1x_decompress_safe +EXPORT_SYMBOL_GPL vmlinux 0xf311e156 key_being_used_for +EXPORT_SYMBOL_GPL vmlinux 0xf31632e0 ezx_pcap_read +EXPORT_SYMBOL_GPL vmlinux 0xf318a38f relay_switch_subbuf +EXPORT_SYMBOL_GPL vmlinux 0xf31a13ef dm_get_md +EXPORT_SYMBOL_GPL vmlinux 0xf31b3fd1 workqueue_set_max_active +EXPORT_SYMBOL_GPL vmlinux 0xf3222c7c class_compat_create_link +EXPORT_SYMBOL_GPL vmlinux 0xf331236f btree_geo32 +EXPORT_SYMBOL_GPL vmlinux 0xf342fd5d freq_qos_remove_notifier +EXPORT_SYMBOL_GPL vmlinux 0xf3435ffc serial8250_do_startup +EXPORT_SYMBOL_GPL vmlinux 0xf3522e96 __account_locked_vm +EXPORT_SYMBOL_GPL vmlinux 0xf361ea84 transport_configure_device +EXPORT_SYMBOL_GPL vmlinux 0xf36818ed mbox_controller_register +EXPORT_SYMBOL_GPL vmlinux 0xf369166c snd_dmaengine_pcm_set_config_from_dai_data +EXPORT_SYMBOL_GPL vmlinux 0xf373e398 net_ns_get_ownership +EXPORT_SYMBOL_GPL vmlinux 0xf3808cb1 get_state_synchronize_rcu +EXPORT_SYMBOL_GPL vmlinux 0xf398585b serial8250_modem_status +EXPORT_SYMBOL_GPL vmlinux 0xf3a38226 fsverity_verify_bio +EXPORT_SYMBOL_GPL vmlinux 0xf3aea110 devm_otg_ulpi_create +EXPORT_SYMBOL_GPL vmlinux 0xf3b2bc71 dev_pm_opp_get_sharing_cpus +EXPORT_SYMBOL_GPL vmlinux 0xf3b451ca kdb_poll_funcs +EXPORT_SYMBOL_GPL vmlinux 0xf3b7afa9 ahci_platform_resume +EXPORT_SYMBOL_GPL vmlinux 0xf3bc2445 pci_check_and_unmask_intx +EXPORT_SYMBOL_GPL vmlinux 0xf3f1ac0a regcache_drop_region +EXPORT_SYMBOL_GPL vmlinux 0xf3fe9e4a ahci_platform_get_resources +EXPORT_SYMBOL_GPL vmlinux 0xf401383c extcon_set_state_sync +EXPORT_SYMBOL_GPL vmlinux 0xf402cc7d crypto_alg_mod_lookup +EXPORT_SYMBOL_GPL vmlinux 0xf405b2b9 snd_soc_dai_set_sysclk +EXPORT_SYMBOL_GPL vmlinux 0xf40ca263 usb_enable_ltm +EXPORT_SYMBOL_GPL vmlinux 0xf4149109 iomap_file_buffered_write +EXPORT_SYMBOL_GPL vmlinux 0xf41adc3b __efivar_entry_delete +EXPORT_SYMBOL_GPL vmlinux 0xf420af08 ahci_ops +EXPORT_SYMBOL_GPL vmlinux 0xf436af57 strp_stop +EXPORT_SYMBOL_GPL vmlinux 0xf448ea4a vfs_fallocate +EXPORT_SYMBOL_GPL vmlinux 0xf458c7e0 rt_mutex_unlock +EXPORT_SYMBOL_GPL vmlinux 0xf4689d50 linkmode_set_pause +EXPORT_SYMBOL_GPL vmlinux 0xf47de486 usb_kill_anchored_urbs +EXPORT_SYMBOL_GPL vmlinux 0xf485d7a6 ring_buffer_swap_cpu +EXPORT_SYMBOL_GPL vmlinux 0xf48ceebd net_cls_cgrp_subsys_on_dfl_key +EXPORT_SYMBOL_GPL vmlinux 0xf49c680a fsverity_enqueue_verify_work +EXPORT_SYMBOL_GPL vmlinux 0xf4a2af17 nand_change_write_column_op +EXPORT_SYMBOL_GPL vmlinux 0xf4a52f97 pci_epc_start +EXPORT_SYMBOL_GPL vmlinux 0xf4a9b5e6 tpm2_flush_context +EXPORT_SYMBOL_GPL vmlinux 0xf4af237f mtk_eint_do_resume +EXPORT_SYMBOL_GPL vmlinux 0xf4af35c2 rcu_gp_is_normal +EXPORT_SYMBOL_GPL vmlinux 0xf4b02dba ata_sff_port_ops +EXPORT_SYMBOL_GPL vmlinux 0xf4b15b14 regmap_raw_write_async +EXPORT_SYMBOL_GPL vmlinux 0xf4d4a383 dm_internal_suspend_noflush +EXPORT_SYMBOL_GPL vmlinux 0xf4da71b3 public_key_verify_signature +EXPORT_SYMBOL_GPL vmlinux 0xf4dd1641 debugfs_create_x16 +EXPORT_SYMBOL_GPL vmlinux 0xf4deec39 of_platform_populate +EXPORT_SYMBOL_GPL vmlinux 0xf4f69d1f clk_hw_unregister_gate +EXPORT_SYMBOL_GPL vmlinux 0xf4f9c73d usb_gadget_probe_driver +EXPORT_SYMBOL_GPL vmlinux 0xf4fc8ec1 xfrm_audit_state_icvfail +EXPORT_SYMBOL_GPL vmlinux 0xf510b64c thermal_zone_of_sensor_register +EXPORT_SYMBOL_GPL vmlinux 0xf5156924 crypto_create_tfm +EXPORT_SYMBOL_GPL vmlinux 0xf52e14e9 snmp_fold_field64 +EXPORT_SYMBOL_GPL vmlinux 0xf548a526 strp_check_rcv +EXPORT_SYMBOL_GPL vmlinux 0xf54a1038 spi_add_device +EXPORT_SYMBOL_GPL vmlinux 0xf54bbf52 invalidate_inode_pages2_range +EXPORT_SYMBOL_GPL vmlinux 0xf54bd49b lcm +EXPORT_SYMBOL_GPL vmlinux 0xf552b5a5 mtk_hw_get_value +EXPORT_SYMBOL_GPL vmlinux 0xf553318d cpuidle_pause_and_lock +EXPORT_SYMBOL_GPL vmlinux 0xf56d69cd mtk_pinconf_adv_drive_set +EXPORT_SYMBOL_GPL vmlinux 0xf57c9bb6 tpm_chip_register +EXPORT_SYMBOL_GPL vmlinux 0xf57db0af gpiochip_line_is_open_drain +EXPORT_SYMBOL_GPL vmlinux 0xf58adce1 ata_bmdma_port_ops +EXPORT_SYMBOL_GPL vmlinux 0xf5a3ba99 linear_range_values_in_range +EXPORT_SYMBOL_GPL vmlinux 0xf5a691cd invalidate_bh_lrus +EXPORT_SYMBOL_GPL vmlinux 0xf5b7e6e7 __wake_up_sync_key +EXPORT_SYMBOL_GPL vmlinux 0xf5bf7415 device_link_add +EXPORT_SYMBOL_GPL vmlinux 0xf5c5b555 unix_peer_get +EXPORT_SYMBOL_GPL vmlinux 0xf5caf580 thermal_notify_framework +EXPORT_SYMBOL_GPL vmlinux 0xf5d7eb5a register_ftrace_export +EXPORT_SYMBOL_GPL vmlinux 0xf5da923e eventfd_ctx_fileget +EXPORT_SYMBOL_GPL vmlinux 0xf5e57d52 snd_soc_component_get_pin_status +EXPORT_SYMBOL_GPL vmlinux 0xf5f370e0 async_schedule_node +EXPORT_SYMBOL_GPL vmlinux 0xf5f8d817 ipv4_sk_redirect +EXPORT_SYMBOL_GPL vmlinux 0xf61baa65 pids_cgrp_subsys_enabled_key +EXPORT_SYMBOL_GPL vmlinux 0xf62b7e37 srcutorture_get_gp_data +EXPORT_SYMBOL_GPL vmlinux 0xf65461f8 lwtunnel_valid_encap_type_attr +EXPORT_SYMBOL_GPL vmlinux 0xf663ee2f pcap_adc_sync +EXPORT_SYMBOL_GPL vmlinux 0xf66716e6 dev_attr_sw_activity +EXPORT_SYMBOL_GPL vmlinux 0xf6767db0 security_kernel_read_file +EXPORT_SYMBOL_GPL vmlinux 0xf69d3e6d mtk_pinconf_drive_set_raw +EXPORT_SYMBOL_GPL vmlinux 0xf6b0d62c snd_soc_of_parse_tdm_slot +EXPORT_SYMBOL_GPL vmlinux 0xf6bd4b33 icc_std_aggregate +EXPORT_SYMBOL_GPL vmlinux 0xf6c8dc62 cpu_hotplug_enable +EXPORT_SYMBOL_GPL vmlinux 0xf6cf809a ip6_sk_redirect +EXPORT_SYMBOL_GPL vmlinux 0xf6d91d5b dev_pm_opp_of_get_opp_desc_node +EXPORT_SYMBOL_GPL vmlinux 0xf6e4f666 extcon_dev_free +EXPORT_SYMBOL_GPL vmlinux 0xf6e874f5 ata_timing_merge +EXPORT_SYMBOL_GPL vmlinux 0xf6e97182 pci_create_slot +EXPORT_SYMBOL_GPL vmlinux 0xf6f16c56 rcu_barrier_tasks +EXPORT_SYMBOL_GPL vmlinux 0xf723c4d8 sfp_bus_add_upstream +EXPORT_SYMBOL_GPL vmlinux 0xf730fb4a qcom_smem_state_update_bits +EXPORT_SYMBOL_GPL vmlinux 0xf7455c16 input_event_to_user +EXPORT_SYMBOL_GPL vmlinux 0xf749debc md5_zero_message_hash +EXPORT_SYMBOL_GPL vmlinux 0xf75b297a crypto_alloc_tfm +EXPORT_SYMBOL_GPL vmlinux 0xf767fbce virtqueue_get_desc_addr +EXPORT_SYMBOL_GPL vmlinux 0xf76b0a59 read_current_timer +EXPORT_SYMBOL_GPL vmlinux 0xf7739c18 mddev_unlock +EXPORT_SYMBOL_GPL vmlinux 0xf77a02a4 mtd_read_user_prot_reg +EXPORT_SYMBOL_GPL vmlinux 0xf78a1103 mmu_interval_notifier_remove +EXPORT_SYMBOL_GPL vmlinux 0xf791ac2f devm_device_add_groups +EXPORT_SYMBOL_GPL vmlinux 0xf797c386 dev_attr_ncq_prio_enable +EXPORT_SYMBOL_GPL vmlinux 0xf7985568 irq_get_irq_data +EXPORT_SYMBOL_GPL vmlinux 0xf7b23041 devm_i2c_new_dummy_device +EXPORT_SYMBOL_GPL vmlinux 0xf7bc95b0 devlink_fmsg_pair_nest_start +EXPORT_SYMBOL_GPL vmlinux 0xf7be0886 devlink_resource_occ_get_register +EXPORT_SYMBOL_GPL vmlinux 0xf7d961d8 clk_hw_unregister_composite +EXPORT_SYMBOL_GPL vmlinux 0xf7e6e57e xfrm_state_mtu +EXPORT_SYMBOL_GPL vmlinux 0xf7ed3d2b debugfs_lookup +EXPORT_SYMBOL_GPL vmlinux 0xf7ed7354 fwnode_connection_find_match +EXPORT_SYMBOL_GPL vmlinux 0xf8120b31 extcon_get_edev_name +EXPORT_SYMBOL_GPL vmlinux 0xf8254ea0 snd_ctl_add_vmaster_hook +EXPORT_SYMBOL_GPL vmlinux 0xf827ceec md_kick_rdev_from_array +EXPORT_SYMBOL_GPL vmlinux 0xf82f16b3 execute_in_process_context +EXPORT_SYMBOL_GPL vmlinux 0xf82f3657 work_on_cpu +EXPORT_SYMBOL_GPL vmlinux 0xf834c26d housekeeping_test_cpu +EXPORT_SYMBOL_GPL vmlinux 0xf83666ed class_interface_register +EXPORT_SYMBOL_GPL vmlinux 0xf83fe927 rio_mport_send_doorbell +EXPORT_SYMBOL_GPL vmlinux 0xf84ed30c phy_gbit_all_ports_features +EXPORT_SYMBOL_GPL vmlinux 0xf85a9204 tcp_reno_undo_cwnd +EXPORT_SYMBOL_GPL vmlinux 0xf8731bf6 clk_regmap_mux_ro_ops +EXPORT_SYMBOL_GPL vmlinux 0xf880cf6b sk_psock_destroy +EXPORT_SYMBOL_GPL vmlinux 0xf88a2706 of_address_to_resource +EXPORT_SYMBOL_GPL vmlinux 0xf893b6f4 mnt_clone_write +EXPORT_SYMBOL_GPL vmlinux 0xf89a9b38 inet6_lookup +EXPORT_SYMBOL_GPL vmlinux 0xf8ca876c ahci_dev_classify +EXPORT_SYMBOL_GPL vmlinux 0xf8d778eb fwnode_property_present +EXPORT_SYMBOL_GPL vmlinux 0xf8df098b extcon_unregister_notifier_all +EXPORT_SYMBOL_GPL vmlinux 0xf8ebfacf pci_ignore_hotplug +EXPORT_SYMBOL_GPL vmlinux 0xf8ed6b61 of_clk_del_provider +EXPORT_SYMBOL_GPL vmlinux 0xf8f164b6 __platform_register_drivers +EXPORT_SYMBOL_GPL vmlinux 0xf8f3a0fb ata_ratelimit +EXPORT_SYMBOL_GPL vmlinux 0xf932015f __raw_notifier_call_chain +EXPORT_SYMBOL_GPL vmlinux 0xf941c58e attribute_container_find_class_device +EXPORT_SYMBOL_GPL vmlinux 0xf95322f4 kthread_parkme +EXPORT_SYMBOL_GPL vmlinux 0xf9646e69 srcu_barrier +EXPORT_SYMBOL_GPL vmlinux 0xf977b9a8 bpf_prog_destroy +EXPORT_SYMBOL_GPL vmlinux 0xf97eb399 usb_match_id +EXPORT_SYMBOL_GPL vmlinux 0xf984d6e8 snd_soc_dpcm_get_substream +EXPORT_SYMBOL_GPL vmlinux 0xf992dbad blkg_rwstat_recursive_sum +EXPORT_SYMBOL_GPL vmlinux 0xf99d7274 sdio_retune_crc_enable +EXPORT_SYMBOL_GPL vmlinux 0xf9a054b5 __round_jiffies +EXPORT_SYMBOL_GPL vmlinux 0xf9acb7c4 dev_pm_opp_set_regulators +EXPORT_SYMBOL_GPL vmlinux 0xf9b033fa cpufreq_register_governor +EXPORT_SYMBOL_GPL vmlinux 0xf9d129df klist_iter_init_node +EXPORT_SYMBOL_GPL vmlinux 0xf9fbacfd perf_event_enable +EXPORT_SYMBOL_GPL vmlinux 0xfa03858a sram_exec_copy +EXPORT_SYMBOL_GPL vmlinux 0xfa195881 register_asymmetric_key_parser +EXPORT_SYMBOL_GPL vmlinux 0xfa1eb910 unregister_syscore_ops +EXPORT_SYMBOL_GPL vmlinux 0xfa237673 skcipher_walk_atomise +EXPORT_SYMBOL_GPL vmlinux 0xfa353cf9 mtd_erase +EXPORT_SYMBOL_GPL vmlinux 0xfa40c5be key_type_trusted +EXPORT_SYMBOL_GPL vmlinux 0xfa45bf93 tcp_set_keepalive +EXPORT_SYMBOL_GPL vmlinux 0xfa53b386 bpf_event_output +EXPORT_SYMBOL_GPL vmlinux 0xfa57f1d7 task_user_regset_view +EXPORT_SYMBOL_GPL vmlinux 0xfa585613 dw_pcie_link_set_max_speed +EXPORT_SYMBOL_GPL vmlinux 0xfa690589 netdev_cmd_to_name +EXPORT_SYMBOL_GPL vmlinux 0xfa6e06cb regulator_set_pull_down_regmap +EXPORT_SYMBOL_GPL vmlinux 0xfa784e6d blk_mq_sched_free_hctx_data +EXPORT_SYMBOL_GPL vmlinux 0xfa82f473 klist_next +EXPORT_SYMBOL_GPL vmlinux 0xfa84e0c8 tty_save_termios +EXPORT_SYMBOL_GPL vmlinux 0xfa8fa0bc fib6_get_table +EXPORT_SYMBOL_GPL vmlinux 0xfaa2df99 snd_soc_dapm_nc_pin_unlocked +EXPORT_SYMBOL_GPL vmlinux 0xfab30dc0 mdio_bus_exit +EXPORT_SYMBOL_GPL vmlinux 0xfab49246 kgdb_register_io_module +EXPORT_SYMBOL_GPL vmlinux 0xfab53ed9 pinctrl_gpio_can_use_line +EXPORT_SYMBOL_GPL vmlinux 0xfab7e450 ahci_platform_enable_regulators +EXPORT_SYMBOL_GPL vmlinux 0xfaba0007 wakeup_source_unregister +EXPORT_SYMBOL_GPL vmlinux 0xfaba248a usb_scuttle_anchored_urbs +EXPORT_SYMBOL_GPL vmlinux 0xfac295f4 ping_init_sock +EXPORT_SYMBOL_GPL vmlinux 0xfacbc24b perf_event_update_userpage +EXPORT_SYMBOL_GPL vmlinux 0xfad9c827 kill_dax +EXPORT_SYMBOL_GPL vmlinux 0xfae222e1 sysfs_create_bin_file +EXPORT_SYMBOL_GPL vmlinux 0xfae8c59e iommu_aux_detach_device +EXPORT_SYMBOL_GPL vmlinux 0xfaeee479 irqchip_fwnode_ops +EXPORT_SYMBOL_GPL vmlinux 0xfb06a6a9 kobject_get_path +EXPORT_SYMBOL_GPL vmlinux 0xfb24d4ab blocking_notifier_chain_unregister +EXPORT_SYMBOL_GPL vmlinux 0xfb32b30f ring_buffer_read_prepare_sync +EXPORT_SYMBOL_GPL vmlinux 0xfb4550f8 rhashtable_walk_next +EXPORT_SYMBOL_GPL vmlinux 0xfb4eef69 modify_user_hw_breakpoint +EXPORT_SYMBOL_GPL vmlinux 0xfb51f520 gen_pool_size +EXPORT_SYMBOL_GPL vmlinux 0xfb654e34 of_property_read_variable_u32_array +EXPORT_SYMBOL_GPL vmlinux 0xfb6ca832 cpufreq_frequency_table_get_index +EXPORT_SYMBOL_GPL vmlinux 0xfb6eedf9 power_group_name +EXPORT_SYMBOL_GPL vmlinux 0xfb789ef7 gpiochip_disable_irq +EXPORT_SYMBOL_GPL vmlinux 0xfb7a4a7f btree_last +EXPORT_SYMBOL_GPL vmlinux 0xfb90a168 find_mci_by_dev +EXPORT_SYMBOL_GPL vmlinux 0xfb9a60d6 null_dailink_component +EXPORT_SYMBOL_GPL vmlinux 0xfb9be93d gpiochip_irq_unmap +EXPORT_SYMBOL_GPL vmlinux 0xfb9eac1f mctrl_gpio_init +EXPORT_SYMBOL_GPL vmlinux 0xfba4f00b rio_request_outb_mbox +EXPORT_SYMBOL_GPL vmlinux 0xfbbd41ca no_action +EXPORT_SYMBOL_GPL vmlinux 0xfbc0c934 tpm_try_get_ops +EXPORT_SYMBOL_GPL vmlinux 0xfbc2e559 skb_consume_udp +EXPORT_SYMBOL_GPL vmlinux 0xfbc6e4ed security_inode_create +EXPORT_SYMBOL_GPL vmlinux 0xfbd0ffcf wm8350_reg_read +EXPORT_SYMBOL_GPL vmlinux 0xfbe97943 user_destroy +EXPORT_SYMBOL_GPL vmlinux 0xfbfb512c wm8997_patch +EXPORT_SYMBOL_GPL vmlinux 0xfc014cb6 smp_call_function_any +EXPORT_SYMBOL_GPL vmlinux 0xfc03d97a page_is_ram +EXPORT_SYMBOL_GPL vmlinux 0xfc14bb2e dm_get_dev_t +EXPORT_SYMBOL_GPL vmlinux 0xfc19123a do_tcp_sendpages +EXPORT_SYMBOL_GPL vmlinux 0xfc19bc45 crypto_dh_encode_key +EXPORT_SYMBOL_GPL vmlinux 0xfc270e2f of_irq_get +EXPORT_SYMBOL_GPL vmlinux 0xfc3973d8 __tracepoint_mc_event +EXPORT_SYMBOL_GPL vmlinux 0xfc427810 snd_pcm_stream_lock_irq +EXPORT_SYMBOL_GPL vmlinux 0xfc49da22 efivar_entry_iter +EXPORT_SYMBOL_GPL vmlinux 0xfc4e9284 sdio_enable_func +EXPORT_SYMBOL_GPL vmlinux 0xfc646627 ohci_resume +EXPORT_SYMBOL_GPL vmlinux 0xfc6bf5f0 blk_queue_rq_timeout +EXPORT_SYMBOL_GPL vmlinux 0xfc6f5012 __spi_register_driver +EXPORT_SYMBOL_GPL vmlinux 0xfc711797 i2c_new_dummy_device +EXPORT_SYMBOL_GPL vmlinux 0xfce659b2 devm_fwnode_gpiod_get_index +EXPORT_SYMBOL_GPL vmlinux 0xfcf538ca sock_diag_destroy +EXPORT_SYMBOL_GPL vmlinux 0xfcfa3d84 __of_reset_control_get +EXPORT_SYMBOL_GPL vmlinux 0xfd040770 __blocking_notifier_call_chain +EXPORT_SYMBOL_GPL vmlinux 0xfd3aea9a fat_add_entries +EXPORT_SYMBOL_GPL vmlinux 0xfd3c0216 pci_status_get_and_clear_errors +EXPORT_SYMBOL_GPL vmlinux 0xfd4dba7d freq_qos_add_notifier +EXPORT_SYMBOL_GPL vmlinux 0xfd502833 snd_soc_dai_compr_trigger +EXPORT_SYMBOL_GPL vmlinux 0xfd544b19 badrange_init +EXPORT_SYMBOL_GPL vmlinux 0xfd581da1 free_rs +EXPORT_SYMBOL_GPL vmlinux 0xfd593963 skb_to_sgvec +EXPORT_SYMBOL_GPL vmlinux 0xfd620754 regulator_unlock +EXPORT_SYMBOL_GPL vmlinux 0xfd6e4186 sk_msg_trim +EXPORT_SYMBOL_GPL vmlinux 0xfd847a5c sysfs_create_mount_point +EXPORT_SYMBOL_GPL vmlinux 0xfd86798d arm_iommu_release_mapping +EXPORT_SYMBOL_GPL vmlinux 0xfd920a32 fuse_sync_release +EXPORT_SYMBOL_GPL vmlinux 0xfdb31afd of_reserved_mem_device_init_by_name +EXPORT_SYMBOL_GPL vmlinux 0xfdbacb14 dev_pm_opp_remove_all_dynamic +EXPORT_SYMBOL_GPL vmlinux 0xfdbd7a17 crypto_get_attr_type +EXPORT_SYMBOL_GPL vmlinux 0xfdc1cbb2 device_property_read_u16_array +EXPORT_SYMBOL_GPL vmlinux 0xfdce4c1b tps6586x_update +EXPORT_SYMBOL_GPL vmlinux 0xfdd33cd2 of_resolve_phandles +EXPORT_SYMBOL_GPL vmlinux 0xfdd76398 pm_clk_suspend +EXPORT_SYMBOL_GPL vmlinux 0xfdda48a9 regulator_allow_bypass +EXPORT_SYMBOL_GPL vmlinux 0xfddd34f0 key_type_asymmetric +EXPORT_SYMBOL_GPL vmlinux 0xfde0c5f1 dma_buf_end_cpu_access +EXPORT_SYMBOL_GPL vmlinux 0xfde9022f ata_link_abort +EXPORT_SYMBOL_GPL vmlinux 0xfdf1921f dev_pm_opp_of_add_table +EXPORT_SYMBOL_GPL vmlinux 0xfdf637af dm_table_device_name +EXPORT_SYMBOL_GPL vmlinux 0xfdfac3bf sdio_writesb +EXPORT_SYMBOL_GPL vmlinux 0xfdfb677d dpcm_be_dai_trigger +EXPORT_SYMBOL_GPL vmlinux 0xfe0bbbd2 atomic_notifier_call_chain +EXPORT_SYMBOL_GPL vmlinux 0xfe269e99 inet_hash_connect +EXPORT_SYMBOL_GPL vmlinux 0xfe29d810 trace_seq_to_user +EXPORT_SYMBOL_GPL vmlinux 0xfe2d0ffc hwmon_device_unregister +EXPORT_SYMBOL_GPL vmlinux 0xfe3c76e0 i2c_new_scanned_device +EXPORT_SYMBOL_GPL vmlinux 0xfe476039 ktime_get_resolution_ns +EXPORT_SYMBOL_GPL vmlinux 0xfe48eecb __tracepoint_pelt_se_tp +EXPORT_SYMBOL_GPL vmlinux 0xfe4b8a8a pci_msi_create_irq_domain +EXPORT_SYMBOL_GPL vmlinux 0xfe4e0dec __sdhci_add_host +EXPORT_SYMBOL_GPL vmlinux 0xfe5006b3 devlink_dpipe_match_put +EXPORT_SYMBOL_GPL vmlinux 0xfe85706e devm_of_phy_get_by_index +EXPORT_SYMBOL_GPL vmlinux 0xfe8cdb84 ring_buffer_alloc_read_page +EXPORT_SYMBOL_GPL vmlinux 0xfe990052 gpio_free +EXPORT_SYMBOL_GPL vmlinux 0xfebd8446 __devm_irq_alloc_descs +EXPORT_SYMBOL_GPL vmlinux 0xfec3bf84 icst_clk_setup +EXPORT_SYMBOL_GPL vmlinux 0xfed11ed1 usb_mon_deregister +EXPORT_SYMBOL_GPL vmlinux 0xfed2096b __srcu_notifier_call_chain +EXPORT_SYMBOL_GPL vmlinux 0xfef67ace btree_init +EXPORT_SYMBOL_GPL vmlinux 0xff05fa13 vring_interrupt +EXPORT_SYMBOL_GPL vmlinux 0xff0cba7e cpufreq_cpu_put +EXPORT_SYMBOL_GPL vmlinux 0xff291ecf clk_unregister_divider +EXPORT_SYMBOL_GPL vmlinux 0xff42c374 usb_role_switch_get_role +EXPORT_SYMBOL_GPL vmlinux 0xff4aac2b sdhci_set_power_noreg +EXPORT_SYMBOL_GPL vmlinux 0xff5a8cfe cn_del_callback +EXPORT_SYMBOL_GPL vmlinux 0xff81487d gpiod_remove_lookup_table +EXPORT_SYMBOL_GPL vmlinux 0xff818303 shash_ahash_update +EXPORT_SYMBOL_GPL vmlinux 0xff827a47 sysfs_remove_bin_file +EXPORT_SYMBOL_GPL vmlinux 0xff997408 ata_host_alloc +EXPORT_SYMBOL_GPL vmlinux 0xff9a2ba2 sata_set_spd +EXPORT_SYMBOL_GPL vmlinux 0xffa4a7b2 of_genpd_del_provider +EXPORT_SYMBOL_GPL vmlinux 0xffa70459 devprop_gpiochip_set_names +EXPORT_SYMBOL_GPL vmlinux 0xffa917e6 of_pci_get_devfn +EXPORT_SYMBOL_GPL vmlinux 0xffaa9804 ahci_shost_attrs +EXPORT_SYMBOL_GPL vmlinux 0xffaade30 pci_disable_pri +EXPORT_SYMBOL_GPL vmlinux 0xffab7802 rio_add_device +EXPORT_SYMBOL_GPL vmlinux 0xffae8e8b nsecs_to_jiffies +EXPORT_SYMBOL_GPL vmlinux 0xffb4130a devm_regulator_register_notifier +EXPORT_SYMBOL_GPL vmlinux 0xffbf642f pm_generic_restore +EXPORT_SYMBOL_GPL vmlinux 0xffc029c3 ata_sff_qc_issue +EXPORT_SYMBOL_GPL vmlinux 0xffcde967 iomap_fiemap +EXPORT_SYMBOL_GPL vmlinux 0xffcf5371 of_clk_src_simple_get +EXPORT_SYMBOL_GPL vmlinux 0xffd1123f save_stack_trace +EXPORT_SYMBOL_GPL vmlinux 0xffda7c99 pm_generic_thaw +EXPORT_SYMBOL_GPL vmlinux 0xffde8382 crypto_register_ahashes +EXPORT_SYMBOL_GPL vmlinux 0xffded404 snd_soc_unregister_dai +EXPORT_SYMBOL_GPL vmlinux 0xffea3510 kthread_unpark +EXPORT_SYMBOL_GPL vmlinux 0xfff03a63 mtd_read_oob +FIRMWARE_LOADER_PRIVATE EXPORT_SYMBOL_GPL 0xd3ae7756 fw_fallback_config vmlinux +LTC2497 EXPORT_SYMBOL 0xa80922a7 ltc2497core_probe drivers/iio/adc/ltc2497-core +LTC2497 EXPORT_SYMBOL 0xe8c0fdc4 ltc2497core_remove drivers/iio/adc/ltc2497-core +MCB EXPORT_SYMBOL_GPL 0x0a72ae76 mcb_get_resource drivers/mcb/mcb +MCB EXPORT_SYMBOL_GPL 0x3426fd01 mcb_unregister_driver drivers/mcb/mcb +MCB EXPORT_SYMBOL_GPL 0x3f042fe5 mcb_request_mem drivers/mcb/mcb +MCB EXPORT_SYMBOL_GPL 0x5bac5846 chameleon_parse_cells drivers/mcb/mcb +MCB EXPORT_SYMBOL_GPL 0x708adb9b mcb_bus_put drivers/mcb/mcb +MCB EXPORT_SYMBOL_GPL 0x7277b37a __mcb_register_driver drivers/mcb/mcb +MCB EXPORT_SYMBOL_GPL 0x8f023f26 mcb_alloc_dev drivers/mcb/mcb +MCB EXPORT_SYMBOL_GPL 0xb25f0ba6 mcb_bus_add_devices drivers/mcb/mcb +MCB EXPORT_SYMBOL_GPL 0xd49a2928 mcb_bus_get drivers/mcb/mcb +MCB EXPORT_SYMBOL_GPL 0xd97bb125 mcb_device_register drivers/mcb/mcb +MCB EXPORT_SYMBOL_GPL 0xe0c8e7e0 mcb_alloc_bus drivers/mcb/mcb +MCB EXPORT_SYMBOL_GPL 0xeb2c8905 mcb_release_mem drivers/mcb/mcb +MCB EXPORT_SYMBOL_GPL 0xef154ad0 mcb_free_dev drivers/mcb/mcb +MCB EXPORT_SYMBOL_GPL 0xefe6ba6f mcb_release_bus drivers/mcb/mcb +MCB EXPORT_SYMBOL_GPL 0xf66aeb11 mcb_get_irq drivers/mcb/mcb +USB_STORAGE EXPORT_SYMBOL_GPL 0x0a28db4a fill_inquiry_response drivers/usb/storage/usb-storage +USB_STORAGE EXPORT_SYMBOL_GPL 0x0ffba323 usb_stor_bulk_transfer_sg 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 0x1c511586 usb_stor_bulk_srb drivers/usb/storage/usb-storage +USB_STORAGE EXPORT_SYMBOL_GPL 0x21560762 usb_stor_reset_resume drivers/usb/storage/usb-storage +USB_STORAGE EXPORT_SYMBOL_GPL 0x3090671e usb_stor_probe1 drivers/usb/storage/usb-storage +USB_STORAGE EXPORT_SYMBOL_GPL 0x346a2a2f usb_stor_CB_transport drivers/usb/storage/usb-storage +USB_STORAGE EXPORT_SYMBOL_GPL 0x34dd3a6f usb_stor_transparent_scsi_command drivers/usb/storage/usb-storage +USB_STORAGE EXPORT_SYMBOL_GPL 0x4ce9c7c0 usb_stor_Bulk_reset drivers/usb/storage/usb-storage +USB_STORAGE EXPORT_SYMBOL_GPL 0x531ecedc usb_stor_control_msg drivers/usb/storage/usb-storage +USB_STORAGE EXPORT_SYMBOL_GPL 0x5f785333 usb_stor_post_reset drivers/usb/storage/usb-storage +USB_STORAGE EXPORT_SYMBOL_GPL 0x728a8f9e usb_stor_disconnect drivers/usb/storage/usb-storage +USB_STORAGE EXPORT_SYMBOL_GPL 0x762d2c4e usb_stor_clear_halt drivers/usb/storage/usb-storage +USB_STORAGE EXPORT_SYMBOL_GPL 0x7e96598a usb_stor_resume drivers/usb/storage/usb-storage +USB_STORAGE EXPORT_SYMBOL_GPL 0x827b26c7 usb_stor_bulk_transfer_buf drivers/usb/storage/usb-storage +USB_STORAGE EXPORT_SYMBOL_GPL 0x83e3b2ed usb_stor_pre_reset drivers/usb/storage/usb-storage +USB_STORAGE EXPORT_SYMBOL_GPL 0x84bad80e usb_stor_suspend drivers/usb/storage/usb-storage +USB_STORAGE EXPORT_SYMBOL_GPL 0x91ea1e51 usb_stor_set_xfer_buf drivers/usb/storage/usb-storage +USB_STORAGE EXPORT_SYMBOL_GPL 0xb62c2d8b usb_stor_adjust_quirks drivers/usb/storage/usb-storage +USB_STORAGE EXPORT_SYMBOL_GPL 0xbf786449 usb_stor_CB_reset drivers/usb/storage/usb-storage +USB_STORAGE EXPORT_SYMBOL_GPL 0xd18f12e8 usb_stor_probe2 drivers/usb/storage/usb-storage +USB_STORAGE EXPORT_SYMBOL_GPL 0xe67e814e usb_stor_ctrl_transfer drivers/usb/storage/usb-storage +USB_STORAGE EXPORT_SYMBOL_GPL 0xf797f32f usb_stor_Bulk_transport drivers/usb/storage/usb-storage +USB_STORAGE EXPORT_SYMBOL_GPL 0xf807f49e usb_stor_host_template_init drivers/usb/storage/usb-storage +USB_STORAGE EXPORT_SYMBOL_GPL 0xfe4e3652 usb_stor_access_xfer_buf drivers/usb/storage/usb-storage --- linux-azure-5.8-5.8.0.orig/debian.master/abi/5.8.0-50.56/armhf/generic-lpae.compiler +++ linux-azure-5.8-5.8.0/debian.master/abi/5.8.0-50.56/armhf/generic-lpae.compiler @@ -0,0 +1 @@ +GCC: (Ubuntu 10.2.0-13ubuntu1) 10.2.0 --- linux-azure-5.8-5.8.0.orig/debian.master/abi/5.8.0-50.56/armhf/generic-lpae.modules +++ linux-azure-5.8-5.8.0/debian.master/abi/5.8.0-50.56/armhf/generic-lpae.modules @@ -0,0 +1,6070 @@ +3w-9xxx +3w-sas +3w-xxxx +6lowpan +6pack +8021q +8139cp +8139too +8250_aspeed_vuart +8250_dw +8250_exar +8250_men_mcb +8250_omap +8250_uniphier +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_rdma +9pnet_virtio +a100u2w +a3d +a53-pll +a8293 +aacraid +aat2870-regulator +aat2870_bl +ab3100 +ab3100-otp +abp060mg +acard-ahci +acecad +acenic +acp_audio_dma +act8865-regulator +act8945a +act8945a-regulator +act8945a_charger +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 +ad5064 +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 +ad5770r +ad5791 +ad5820 +ad5933 +ad7091r-base +ad7091r5 +ad7124 +ad714x +ad714x-i2c +ad714x-spi +ad7150 +ad7192 +ad7266 +ad7280a +ad7291 +ad7292 +ad7298 +ad7303 +ad7314 +ad7414 +ad7418 +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 +ad9389b +ad9467 +ad9523 +ad9832 +ad9834 +ad_sigma_delta +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 +ade7854 +ade7854-i2c +ade7854-spi +adf4350 +adf4371 +adf7242 +adfs +adi +adi-axi-adc +adiantum +adin +adis16080 +adis16130 +adis16136 +adis16201 +adis16203 +adis16209 +adis16240 +adis16260 +adis16400 +adis16460 +adis16475 +adis16480 +adis_lib +adjd_s311 +adl_pci6208 +adl_pci7x3x +adl_pci8164 +adl_pci9111 +adl_pci9118 +adm1021 +adm1025 +adm1026 +adm1029 +adm1031 +adm1177 +adm1275 +adm8211 +adm9240 +adp1653 +adp5061 +adp5520-keys +adp5520_bl +adp5588-keys +adp5589-keys +adp8860_bl +adp8870_bl +adq12b +ads7828 +ads7846 +ads7871 +adt7310 +adt7316 +adt7316-i2c +adt7316-spi +adt7410 +adt7411 +adt7462 +adt7470 +adt7475 +adt7x10 +adummy +adutux +adux1020 +adv7170 +adv7175 +adv7180 +adv7183 +adv7343 +adv7393 +adv748x +adv7511_drm +adv7604 +adv7842 +adv_pci1710 +adv_pci1720 +adv_pci1723 +adv_pci1724 +adv_pci1760 +adv_pci_dio +advansys +adxl34x +adxl34x-i2c +adxl34x-spi +adxl372 +adxl372_i2c +adxl372_spi +adxrs450 +aegis128 +aes-arm +aes-arm-bs +aes-arm-ce +aes_ti +af9013 +af9033 +af_alg +af_key +af_packet_diag +afe4403 +afe4404 +affs +afs +ah4 +ah6 +ahci +ahci_ceva +ahci_dm816 +ahci_mtk +ahci_mvebu +ahci_qoriq +aic79xx +aic7xxx +aic94xx +aio_aio12_8 +aio_iiro_16 +aiptek +aircable +airspy +ak7375 +ak881x +ak8974 +ak8975 +al3010 +al3320a +alcor +alcor_pci +algif_aead +algif_hash +algif_rng +algif_skcipher +alim7101_wdt +altera-ci +altera-cvp +altera-freeze-bridge +altera-msgdma +altera-pr-ip-core +altera-pr-ip-core-plat +altera-ps-spi +altera-stapl +altera_jtaguart +altera_ps2 +altera_tse +altera_uart +alx +am2315 +am35x +am53c974 +amba-pl010 +ambakmi +amc6821 +amd +amd5536udc_pci +amd8111e +amdgpu +amlogic-gxl-crypto +amlogic_thermal +amplc_dio200 +amplc_dio200_common +amplc_dio200_pci +amplc_pc236 +amplc_pc236_common +amplc_pc263 +amplc_pci224 +amplc_pci230 +amplc_pci236 +amplc_pci263 +ams-iaq-core +ams369fg06 +analog +analogix-anx6345 +analogix-anx78xx +analogix_dp +ansi_cprng +anubis +anybuss_core +ao-cec +ao-cec-g12a +aoe +apbps2 +apcs-msm8916 +apds9300 +apds9802als +apds990x +apds9960 +apple-mfi-fastcharge +appledisplay +appletalk +appletouch +applicom +apr +aptina-pll +aqc111 +aquantia +ar1021_i2c +ar5523 +ar7part +ar9331 +arasan-nand-controller +arc-rawmode +arc-rimi +arc4 +arc_emac +arc_ps2 +arc_uart +arcmsr +arcnet +arcpgu +arcx-anybus +arcxcnn_bl +arizona-haptics +arizona-i2c +arizona-ldo1 +arizona-micsupp +arizona-spi +ark3116 +arkfb +arm_mhu +arm_scpi +arm_smc_wdt +armada +armada-37xx-cpufreq +armada-37xx-rwtm-mailbox +armada-8k-cpufreq +armada_37xx_wdt +arp_tables +arpt_mangle +arptable_filter +artpec6_crypto +as102_fe +as370-hwmon +as3711-regulator +as3711_bl +as3722-regulator +as3935 +as5011 +asc7621 +ascot2e +ashmem_linux +asix +aspeed-lpc-ctrl +aspeed-lpc-snoop +aspeed-p2a-ctrl +aspeed-pwm-tacho +aspeed-smc +aspeed-vhub +aspeed-video +aspeed_adc +aspeed_gfx +ast +asym_tpm +async_memcpy +async_pq +async_raid6_recov +async_tx +async_xor +at24 +at25 +at76c50x-usb +at803x +at86rf230 +ata_generic +ata_piix +atbm8830 +aten +ath +ath10k_core +ath10k_pci +ath10k_sdio +ath10k_snoc +ath10k_usb +ath11k +ath3k +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 +atlas-ezo-sensor +atlas-sensor +atm +atmel +atmel-ecc +atmel-flexcom +atmel-hlcdc +atmel-hlcdc-dc +atmel-i2c +atmel-sha204a +atmel_captouch +atmel_mxt_ts +atmel_pci +atmtcp +atp870u +atusb +atxp1 +aty128fb +atyfb +au0828 +au8522_common +au8522_decoder +au8522_dig +aufs +auo-pixcir-ts +auth_rpcgss +authenc +authencesn +autofs4 +avmfritz +ax25 +ax88179_178a +ax88796 +ax88796b +axg-audio +axi-fan-control +axis-fifo +axp20x +axp20x-i2c +axp20x-pek +axp20x-regulator +axp20x_ac_power +axp20x_adc +axp20x_battery +axp20x_usb_power +axp288_adc +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 +bL_switcher_dummy_if +bam_dma +bareudp +batman-adv +baycom_epp +baycom_par +baycom_ser_fdx +baycom_ser_hdx +bcache +bcm-keypad +bcm-phy-lib +bcm-sf2 +bcm203x +bcm3510 +bcm47xxsflash +bcm54140 +bcm590xx +bcm590xx-regulator +bcm5974 +bcm63138_nand +bcm6368_nand +bcm63xx_uart +bcm7xxx +bcm87xx +bcma +bcmsysport +bd6107 +bd70528-charger +bd70528-regulator +bd70528_wdt +bd71828-regulator +bd718x7-regulator +bd9571mwv +bd9571mwv-regulator +bd99954-charger +bdc +be2iscsi +be2net +befs +bel-pfe +belkin_sa +berlin2-adc +bfa +bfq +bfs +bfusb +bh1750 +bh1770glc +bh1780 +binder_linux +binfmt_misc +blake2b_generic +blake2s_generic +block2mtd +blocklayoutdriver +blowfish_common +blowfish_generic +bluetooth +bluetooth_6lowpan +bma150 +bma220_spi +bma400_core +bma400_i2c +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 +bmi160_core +bmi160_i2c +bmi160_spi +bmp280 +bmp280-i2c +bmp280-spi +bna +bnep +bnx2 +bnx2fc +bnx2i +bnx2x +bnxt_en +bochs-drm +bonding +bpa10x +bpck +bpck6 +bpfilter +bpqether +bq2415x_charger +bq24190_charger +bq24257_charger +bq24735-charger +bq25890_charger +bq27xxx_battery +bq27xxx_battery_hdq +bq27xxx_battery_i2c +br2684 +br_netfilter +brcmfmac +brcmnand +brcmsmac +brcmstb_nand +brcmutil +brd +bridge +broadcom +bsd_comp +bt-bmc +bt819 +bt856 +bt866 +bt878 +btbcm +btcoexist +btintel +btmrvl +btmrvl_sdio +btmtksdio +btmtkuart +btqca +btqcomsmd +btrfs +btrsi +btrtl +btsdio +bttv +btusb +bu21013_ts +bu21029_ts +budget +budget-av +budget-ci +budget-core +budget-patch +c67x00 +c6xdigio +c_can +c_can_pci +c_can_platform +ca8210 +cachefiles +cadence-nand-controller +cadence-quadspi +cadence_wdt +cafe_ccic +cafe_nand +caif +caif_hsi +caif_serial +caif_socket +caif_usb +caif_virtio +camcc-sdm845 +camellia_generic +can +can-bcm +can-dev +can-gw +can-j1939 +can-raw +cap11xx +capmode +capsule-loader +carl9170 +carminefb +cassini +cast5_generic +cast6_generic +cast_common +catc +cb710 +cb710-mmc +cb_pcidas +cb_pcidas64 +cb_pcidda +cb_pcimdas +cb_pcimdda +cc10001_adc +cc2520 +cc770 +cc770_isa +cc770_platform +ccm +ccree +ccs811 +cctrng +cdc-acm +cdc-phonet +cdc-wdm +cdc_eem +cdc_ether +cdc_mbim +cdc_ncm +cdc_subset +cdns-csi2rx +cdns-csi2tx +cdns-dphy +cdns-dsi +cdns-pltfrm +cdns3 +cec +ceph +cfb +cfg80211 +cfi_cmdset_0001 +cfi_cmdset_0002 +cfi_cmdset_0020 +cfi_probe +cfi_util +cfspi_slave +ch +ch341 +ch7006 +ch9200 +chacha-neon +chacha20poly1305 +chacha_generic +chaoskey +charlcd +chcr +chipone_icn8318 +chnl_net +chrontel-ch7033 +ci_hdrc +ci_hdrc_imx +ci_hdrc_msm +ci_hdrc_pci +ci_hdrc_tegra +ci_hdrc_usb2 +cicada +cifs +cirrus +cirrusfb +clip +clk-bd718x7 +clk-cdce706 +clk-cdce925 +clk-cs2000-cp +clk-exynos-audss +clk-hi3519 +clk-hi655x +clk-lochnagar +clk-max77686 +clk-max9485 +clk-palmas +clk-phase +clk-pwm +clk-qcom +clk-rk808 +clk-rpm +clk-s2mps11 +clk-scmi +clk-scpi +clk-si514 +clk-si5341 +clk-si5351 +clk-si544 +clk-si570 +clk-smd-rpm +clk-spmi-pmic-div +clk-twl6040 +clk-versaclock5 +clk-wm831x +cls_basic +cls_bpf +cls_cgroup +cls_flow +cls_flower +cls_fw +cls_matchall +cls_route +cls_rsvp +cls_rsvp6 +cls_tcindex +cls_u32 +cm109 +cm32181 +cm3232 +cm3323 +cm3605 +cm36651 +cma3000_d0x +cma3000_d0x_i2c +cmac +cmtp +cnic +cobra +coda +colibri-vf50-ts +com20020 +com20020-pci +com90io +com90xx +comedi +comedi_8254 +comedi_8255 +comedi_bond +comedi_parport +comedi_pci +comedi_test +comedi_usb +comm +contec_pci_dio +cordic +core +cortina +counter +cp210x +cpcap-adc +cpcap-battery +cpcap-charger +cpcap-pwrbutton +cpcap-regulator +cpia2 +cppi41 +cqhci +cramfs +crc-itu-t +crc32-arm-ce +crc32_generic +crc4 +crc64 +crc7 +crc8 +crct10dif-arm-ce +crg-hi3516cv300 +crg-hi3798cv200 +cros-ec-cec +cros-ec-sensorhub +cros_ec +cros_ec_accel_legacy +cros_ec_baro +cros_ec_chardev +cros_ec_debugfs +cros_ec_dev +cros_ec_i2c +cros_ec_keyb +cros_ec_lid_angle +cros_ec_light_prox +cros_ec_lightbar +cros_ec_rpmsg +cros_ec_sensors +cros_ec_sensors_core +cros_ec_spi +cros_ec_sysfs +cros_ec_typec +cros_ec_vbc +cros_usbpd-charger +cros_usbpd_logger +cros_usbpd_notify +cryptd +crypto_engine +crypto_safexcel +crypto_simd +crypto_user +cryptoloop +cs3308 +cs5345 +cs53l32a +cs89x0 +csiostor +curve25519-generic +curve25519-neon +cuse +cw1200_core +cw1200_wlan_sdio +cw1200_wlan_spi +cw2015_battery +cx18 +cx18-alsa +cx22700 +cx22702 +cx231xx +cx231xx-alsa +cx231xx-dvb +cx2341x +cx23885 +cx24110 +cx24113 +cx24116 +cx24117 +cx24120 +cx24123 +cx25821 +cx25821-alsa +cx25840 +cx82310_eth +cx88-alsa +cx88-blackbird +cx88-dvb +cx88-vp3054-i2c +cx8800 +cx8802 +cx88xx +cxacru +cxd2099 +cxd2820r +cxd2841er +cxd2880 +cxd2880-spi +cxgb +cxgb3 +cxgb3i +cxgb4 +cxgb4i +cxgb4vf +cxgbit +cy8ctma140 +cy8ctmg110_ts +cyapatp +cyber2000fb +cyberjack +cyclades +cypress_cy7c63 +cypress_firmware +cypress_m8 +cytherm +cyttsp4_core +cyttsp4_i2c +cyttsp4_spi +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-thermal +da9062_wdt +da9063-regulator +da9063_onkey +da9063_wdt +da9150-charger +da9150-core +da9150-fg +da9150-gpadc +da9210-regulator +da9211-regulator +dac02 +daqboard2000 +das08 +das08_isa +das08_pci +das16 +das16m1 +das1800 +das6402 +das800 +davicom +db9 +dc395x +dccp +dccp_diag +dccp_ipv4 +dccp_ipv6 +ddbridge +ddbridge-dummy-fe +de2104x +decnet +defxx +denali +denali_dt +denali_pci +des_generic +designware_i2s +device_dax +dfl +dfl-afu +dfl-fme +dfl-fme-br +dfl-fme-mgr +dfl-fme-region +dfl-pci +dht11 +diag +dib0070 +dib0090 +dib3000mb +dib3000mc +dib7000m +dib7000p +dib8000 +dib9000 +dibx000_common +digi_acceleport +digicolor-usart +diskonchip +dispcc-sc7180 +dispcc-sdm845 +display-connector +dl2k +dlci +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-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 +dm9000 +dm9601 +dmard06 +dmard09 +dmard10 +dme1737 +dmfe +dmi-sysfs +dmm32at +dmx3191d +dn_rtmsg +dnet +dove_thermal +dp83640 +dp83822 +dp83848 +dp83867 +dp83869 +dp83tc811 +dpot-dac +dps310 +drbd +drivetemp +drm +drm_kms_helper +drm_mipi_dbi +drm_ttm_helper +drm_vram_helper +drv260x +drv2665 +drv2667 +drx39xyj +drxd +drxk +ds1621 +ds1682 +ds1803 +ds1wm +ds2482 +ds2490 +ds2760_battery +ds2780_battery +ds2781_battery +ds2782_battery +ds3000 +ds4424 +ds620 +dsa_core +dsbr100 +dst +dst_ca +dstr +dt2801 +dt2811 +dt2814 +dt2815 +dt2817 +dt282x +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-axi-dmac-platform +dw-edma +dw-edma-pcie +dw-hdmi +dw-hdmi-ahb-audio +dw-hdmi-cec +dw-hdmi-i2s-audio +dw-i3c-master +dw-mipi-dsi +dw9714 +dw9807-vcm +dw_dmac +dw_dmac_core +dw_dmac_pci +dw_hdmi-imx +dw_mipi_dsi-stm +dw_mmc +dw_mmc-bluefield +dw_mmc-exynos +dw_mmc-hi3798cv200 +dw_mmc-k3 +dw_mmc-pci +dw_mmc-pltfm +dw_mmc-rockchip +dw_wdt +dwc-xlgmac +dwc3 +dwc3-exynos +dwc3-haps +dwc3-meson-g12a +dwc3-of-simple +dwc3-omap +dwc3-qcom +dwmac-dwc-qos-eth +dwmac-generic +dwmac-ipq806x +dwmac-mediatek +dwmac-meson +dwmac-meson8b +dwmac-qcom-ethqos +dwmac-rk +dyna_pci10xx +dynapro +e100 +e1000 +e1000e +e3x0-button +e4000 +earth-pt1 +earth-pt3 +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 +ecc +ecdh_generic +echainiv +echo +ecrdsa_generic +edt-ft5x06 +ee1004 +eeprom +eeprom_93cx6 +eeprom_93xx46 +eeti_ts +efi-pstore +efi_test +efibc +efs +egalax_ts +egalax_ts_serial +ehci-fsl +ehci-npcm7xx +ehci-omap +ehset +ektf2127 +elan_i2c +elants_i2c +elo +em28xx +em28xx-alsa +em28xx-dvb +em28xx-rc +em28xx-v4l +em_canid +em_cmp +em_ipset +em_ipt +em_meta +em_nbyte +em_text +em_u32 +emac_rockchip +emc1403 +emc2103 +emc6w201 +emi26 +emi62 +emif +empeg +ems_pci +ems_usb +emu10k1-gp +ena +enc28j60 +enclosure +encx24j600 +encx24j600-regmap +eni +enic +envelope-detector +epat +epia +epic100 +eql +erofs +esas2r +esd_usb2 +esp4 +esp4_offload +esp6 +esp6_offload +esp_scsi +essiv +et1011c +et131x +et8ek8 +ethoc +etnaviv +evbug +exc3000 +exfat +extcon-adc-jack +extcon-arizona +extcon-fsa9480 +extcon-gpio +extcon-max14577 +extcon-max3355 +extcon-max77693 +extcon-max77843 +extcon-max8997 +extcon-palmas +extcon-ptn5150 +extcon-qcom-spmi-misc +extcon-rt8973a +extcon-sm5502 +extcon-usb-gpio +extcon-usbc-cros-ec +exynos-gsc +exynos-lpass +exynos-rng +exynos-trng +exynos5422-dmc +exynos_adc +exynosdrm +ezusb +f2fs +f71805f +f71882fg +f75375s +f81232 +f81534 +f81601 +failover +fakelb +fan53555 +farsync +fastrpc +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_sys_fops +fb_tinylcd +fb_tls8204 +fb_uc1611 +fb_uc1701 +fb_upd161704 +fb_watterott +fbtft +fc0011 +fc0012 +fc0013 +fc2580 +fcoe +fcrypt +fdomain +fdomain_pci +fdp +fdp_i2c +fealnx +ff-memless +fieldbus_dev +firedtv +firewire-core +firewire-net +firewire-ohci +firewire-sbp2 +firewire-serial +fit2 +fit3 +fl512 +flexcan +fm10k +fm801-gp +fm_drv +forcedeth +fore_200e +fotg210-hcd +fotg210-udc +fou +fou6 +fpga-bridge +fpga-mgr +fpga-region +freevxfs +friq +frpw +fscache +fsi-core +fsi-master-aspeed +fsi-master-ast-cf +fsi-master-gpio +fsi-master-hub +fsi-occ +fsi-sbefifo +fsi-scom +fsia6b +fsl-dcu-drm +fsl-edma +fsl-edma-common +fsl-enetc +fsl-enetc-mdio +fsl-enetc-ptp +fsl-enetc-vf +fsl-mph-dr-of +fsl-qdma +fsl_linflexuart +fsl_lpuart +fsl_pq_mdio +fsl_ucc_hdlc +ftdi-elan +ftdi_sio +ftgmac100 +ftl +ftm-quaddec +ftmac100 +ftsteutates +ftwdt010_wdt +fujitsu_ts +fusb302 +fxas21002c_core +fxas21002c_i2c +fxas21002c_spi +fxos8700_core +fxos8700_i2c +fxos8700_spi +g450_pll +g760a +g762 +g_acm_ms +g_audio +g_cdc +g_dbgp +g_ether +g_ffs +g_hid +g_mass_storage +g_midi +g_multi +g_ncm +g_nokia +g_printer +g_serial +g_webcam +g_zero +gadgetfs +gamecon +gameport +garmin_gps +garp +gateworks-gsc +gb-audio-apbridgea +gb-audio-gb +gb-audio-manager +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 +gcc-apq8084 +gcc-ipq4019 +gcc-ipq6018 +gcc-ipq806x +gcc-ipq8074 +gcc-mdm9615 +gcc-msm8660 +gcc-msm8916 +gcc-msm8939 +gcc-msm8960 +gcc-msm8974 +gcc-msm8994 +gcc-msm8996 +gcc-msm8998 +gcc-qcs404 +gcc-sc7180 +gcc-sdm660 +gcc-sdm845 +gcc-sm8150 +gcc-sm8250 +gdmtty +gdmulte +gdth +gemini +gen_probe +generic +generic-adc-battery +generic_bl +genet +geneve +gf2k +gfs2 +ghash-arm-ce +gianfar_driver +gl518sm +gl520sm +gl620a +gluebi +gm12u320 +gnss +gnss-mtk +gnss-serial +gnss-sirf +gnss-ubx +go7007 +go7007-loader +go7007-usb +goku_udc +goodix +gp2ap002 +gp2ap020a00f +gp8psk-fe +gpio +gpio-74x164 +gpio-74xx-mmio +gpio-adnp +gpio-adp5520 +gpio-adp5588 +gpio-aggregator +gpio-altera +gpio-amd-fch +gpio-arizona +gpio-aspeed +gpio-bd70528 +gpio-bd71828 +gpio-bd9571mwv +gpio-beeper +gpio-cadence +gpio-charger +gpio-da9052 +gpio-da9055 +gpio-dln2 +gpio-dwapb +gpio-exar +gpio-fan +gpio-grgpio +gpio-gw-pld +gpio-hlwd +gpio-ir-recv +gpio-ir-tx +gpio-janz-ttl +gpio-kempld +gpio-logicvc +gpio-lp3943 +gpio-lp873x +gpio-lp87565 +gpio-madera +gpio-max3191x +gpio-max7300 +gpio-max7301 +gpio-max730x +gpio-max732x +gpio-max77620 +gpio-max77650 +gpio-mb86s7x +gpio-mc33880 +gpio-menz127 +gpio-moxtet +gpio-pca953x +gpio-pcf857x +gpio-pci-idio-16 +gpio-pcie-idio-24 +gpio-pisosr +gpio-rcar +gpio-rdc321x +gpio-regulator +gpio-sama5d2-piobu +gpio-siox +gpio-syscon +gpio-tpic2810 +gpio-tps65086 +gpio-tps65218 +gpio-tps65912 +gpio-tqmx86 +gpio-ucb1400 +gpio-uniphier +gpio-vibra +gpio-viperboard +gpio-wcd934x +gpio-wm831x +gpio-wm8350 +gpio-wm8994 +gpio-xra1403 +gpio_backlight +gpio_decoder +gpio_keys +gpio_keys_polled +gpio_mouse +gpio_wdt +gpu-sched +gpucc-msm8998 +gpucc-sc7180 +gpucc-sdm845 +gr_udc +grace +grcan +gre +greybus +grip +grip_mp +gs1662 +gs_fpga +gs_usb +gsc-hwmon +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 +gtco +gtp +guillemot +gunze +gve +habanalabs +hackrf +hamachi +hampshire +hantro-vpu +hanwang +hci +hci_nokia +hci_uart +hci_vhci +hclge +hclgevf +hd3ss3220 +hd44780 +hdc100x +hdlc +hdlc_cisco +hdlc_fr +hdlc_ppp +hdlc_raw +hdlc_raw_eth +hdlc_x25 +hdlcd +hdlcdrv +hdma +hdma_mgmt +hdpvr +he +helene +hexium_gemini +hexium_orion +hfcmulti +hfcpci +hfcsusb +hfpll +hfs +hfsplus +hi311x +hi3660-mailbox +hi556 +hi6210-i2s +hi6220-mailbox +hi6220_reset +hi6421-pmic-core +hi6421-regulator +hi6421v530-regulator +hi655x-pmic +hi655x-regulator +hi8435 +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-ezkey +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-icade +hid-ite +hid-jabra +hid-kensington +hid-keytouch +hid-kye +hid-lcpower +hid-led +hid-lenovo +hid-lg-g15 +hid-logitech +hid-logitech-dj +hid-logitech-hidpp +hid-macally +hid-magicmouse +hid-maltron +hid-mcp2221 +hid-mf +hid-microsoft +hid-monterey +hid-multitouch +hid-nti +hid-ntrig +hid-ortek +hid-penmount +hid-petalynx +hid-picolcd +hid-pl +hid-plantronics +hid-primax +hid-prodikeys +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-sensor-accel-3d +hid-sensor-als +hid-sensor-custom +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-sjoy +hid-sony +hid-speedlink +hid-steam +hid-steelseries +hid-sunplus +hid-tivo +hid-tmff +hid-topseed +hid-twinhan +hid-u2fzero +hid-uclogic +hid-udraw-ps3 +hid-viewsonic +hid-waltop +hid-wiimote +hid-xinmo +hid-zpff +hid-zydacron +hideep +hidp +highbank-cpufreq +highbank_l2_edac +highbank_mc_edac +hih6130 +hip04_eth +hisi-rng +hisi-sfc +hisi504_nand +hisi_femac +hisi_powerkey +hisi_thermal +hix5hd2_gmac +hmc425a +hmc5843_core +hmc5843_i2c +hmc5843_spi +hmc6352 +hms-profinet +hnae +hnae3 +hns_dsaf +hns_enet_drv +hns_mdio +hopper +horus3a +hostap +hostap_pci +hostap_plx +hp03 +hp206c +hpfs +hpilo +hpsa +hptiop +hsi +hsi_char +hso +hsr +ht16k33 +htc-pasic3 +hts221 +hts221_i2c +hts221_spi +htu21 +huawei_cdc_ncm +hwmon-vid +hx711 +hx8357 +hx8357d +hyperbus-core +i2400m +i2400m-usb +i2c-algo-bit +i2c-algo-pca +i2c-ali1535 +i2c-ali1563 +i2c-ali15x3 +i2c-amd756 +i2c-amd8111 +i2c-arb-gpio-challenge +i2c-aspeed +i2c-axxia +i2c-cbus-gpio +i2c-cros-ec-tunnel +i2c-demux-pinctrl +i2c-designware-pci +i2c-diolan-u2c +i2c-dln2 +i2c-emev2 +i2c-exynos5 +i2c-fsi +i2c-gpio +i2c-hid +i2c-hix5hd2 +i2c-i801 +i2c-isch +i2c-kempld +i2c-matroxfb +i2c-meson +i2c-mt65xx +i2c-mux +i2c-mux-gpio +i2c-mux-gpmux +i2c-mux-ltc4306 +i2c-mux-mlxcpld +i2c-mux-pca9541 +i2c-mux-pca954x +i2c-mux-pinctrl +i2c-mux-reg +i2c-mv64xxx +i2c-nforce2 +i2c-nomadik +i2c-npcm7xx +i2c-nvidia-gpu +i2c-ocores +i2c-owl +i2c-parport +i2c-pca-platform +i2c-piix4 +i2c-pxa +i2c-qcom-cci +i2c-qcom-geni +i2c-qup +i2c-rcar +i2c-riic +i2c-rk3x +i2c-robotfuzz-osif +i2c-sh_mobile +i2c-simtec +i2c-sis5595 +i2c-sis630 +i2c-sis96x +i2c-slave-eeprom +i2c-smbus +i2c-stub +i2c-taos-evm +i2c-tiny-usb +i2c-versatile +i2c-via +i2c-viapro +i2c-viperboard +i2c-xiic +i3c +i3c-master-cdns +i40e +i40iw +i5k_amb +i6300esb +i740fb +iavf +ib_cm +ib_core +ib_ipoib +ib_iser +ib_isert +ib_mthca +ib_srp +ib_srpt +ib_umad +ib_uverbs +ibm-cffps +ibmaem +ibmpex +icc-osm-l3 +icc-smd-rpm +ice +ice40-spi +icp10100 +icp_multi +icplus +ics932s401 +idma64 +idmouse +idt77252 +idt_89hpesx +idt_gen2 +idt_gen3 +idtcps +ieee802154 +ieee802154_6lowpan +ieee802154_socket +ifb +ifcvf +ife +ifi_canfd +iforce +iforce-serio +iforce-usb +igb +igbvf +igc +igorplugusb +iguanair +ii_pci20kc +iio-mux +iio-rescale +iio-trig-hrtimer +iio-trig-interrupt +iio-trig-loop +iio-trig-sysfs +iio_dummy +iio_hwmon +ila +ili210x +ili9225 +ili922x +ili9320 +ili9341 +ili9486 +img-ascii-lcd +img-i2s-in +img-i2s-out +img-parallel-out +img-spdif-in +img-spdif-out +imm +imon +imon_raw +impa7 +ims-pcu +imx-ipu-v3 +imx-ldb +imx-tve +imx214 +imx219 +imx258 +imx274 +imx290 +imx319 +imx355 +imx6ul_tsc +imxdrm +ina209 +ina2xx +ina2xx-adc +ina3221 +industrialio +industrialio-buffer-cb +industrialio-buffer-dma +industrialio-buffer-dmaengine +industrialio-configfs +industrialio-hw-consumer +industrialio-sw-device +industrialio-sw-trigger +industrialio-triggered-buffer +industrialio-triggered-event +inet_diag +inexio +inftl +initio +input-leds +input-polldev +inspur-ipsps +int51x1 +intel-xway +intel_th +intel_th_gth +intel_th_msu +intel_th_msu_sink +intel_th_pci +intel_th_pti +intel_th_sth +intel_vr_nor +interact +inv-mpu6050 +inv-mpu6050-i2c +inv-mpu6050-spi +io_edgeport +io_ti +iowarrior +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_wlc +ip_vs_wrr +ip_vti +ipack +ipaq +ipcomp +ipcomp6 +iphase +ipheth +ipip +ipmb_dev_int +ipmi_devintf +ipmi_msghandler +ipmi_poweroff +ipmi_si +ipmi_ssif +ipmi_watchdog +ipoctal +ipr +iproc_nand +ips +ipt_CLUSTERIP +ipt_ECN +ipt_REJECT +ipt_SYNPROXY +ipt_ah +ipt_rpfilter +iptable_filter +iptable_mangle +iptable_nat +iptable_raw +iptable_security +ipvlan +ipvtap +ipw +ipw2100 +ipw2200 +iqs269a +iqs5xx +iqs620at-temp +iqs621-als +iqs624-pos +iqs62x +iqs62x-keys +ir-hix5hd2 +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-rx51 +ir-sanyo-decoder +ir-sharp-decoder +ir-sony-decoder +ir-spi +ir-usb +ir-xmp-decoder +ir35221 +ir38064 +irps5401 +irq-madera +irqbypass +iscsi_boot_sysfs +iscsi_target_mod +iscsi_tcp +isdnhdlc +isicom +isight_firmware +isl29003 +isl29018 +isl29020 +isl29028 +isl29125 +isl29501 +isl6271a-regulator +isl6405 +isl6421 +isl6423 +isl68137 +isl9305 +isofs +isp116x-hcd +isp1704_charger +isp1760 +it87 +it913x +itd1000 +itg3200 +iuu_phoenix +ivtv +ivtv-alsa +ivtvfb +iw_cm +iw_cxgb4 +iwl3945 +iwl4965 +iwldvm +iwlegacy +iwlmvm +iwlwifi +ix2505v +ixgb +ixgbe +ixgbevf +janz-cmodio +janz-ican3 +jc42 +jedec_probe +jffs2 +jfs +jmb38x_ms +jme +joydev +joydump +jr3_pci +jsa1212 +jsm +k3dma +kafs +kalmia +kaweth +kbic +kbtab +kcm +kcomedilib +kcs_bmc +kcs_bmc_aspeed +kcs_bmc_npcm7xx +ke_counter +kempld-core +kempld_wdt +kernelcapi +keyspan +keyspan_pda +keyspan_remote +keywrap +kfifo_buf +khazad +kheaders +kl5kusb105 +kmx61 +kobil_sct +komeda +kpc2000 +kpc2000_i2c +kpc2000_spi +kpc_dma +kpss-xcc +krait-cc +ks0108 +ks0127 +ks7010 +ks8842 +ks8851 +ks8851_mll +ksz8795 +ksz8795_spi +ksz884x +ksz9477 +ksz9477_i2c +ksz9477_spi +ksz_common +ktti +kvaser_pci +kvaser_pciefd +kvaser_usb +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 +l4f00242t03 +l64781 +lan743x +lan78xx +lan9303-core +lan9303_i2c +lan9303_mdio +lanai +lantiq_gswip +lapb +lapbether +lattice-ecp3-config +lcc-ipq806x +lcc-mdm9615 +lcc-msm8960 +lcd +ldusb +lec +led-class-flash +led_bl +leds-88pm860x +leds-aat1290 +leds-adp5520 +leds-an30259a +leds-as3645a +leds-aw2013 +leds-bcm6328 +leds-bcm6358 +leds-bd2802 +leds-blinkm +leds-cpcap +leds-cr0014114 +leds-da903x +leds-da9052 +leds-dac124s085 +leds-el15203000 +leds-gpio +leds-is31fl319x +leds-is31fl32xx +leds-ktd2692 +leds-lm3530 +leds-lm3532 +leds-lm3533 +leds-lm355x +leds-lm3601x +leds-lm36274 +leds-lm3642 +leds-lm3692x +leds-lm3697 +leds-lp3944 +leds-lp3952 +leds-lp5521 +leds-lp5523 +leds-lp5562 +leds-lp55xx-common +leds-lp8501 +leds-lp8788 +leds-lp8860 +leds-lt3593 +leds-max77650 +leds-max77693 +leds-max8997 +leds-mc13783 +leds-menf21bmc +leds-mlxreg +leds-mt6323 +leds-ns2 +leds-pca9532 +leds-pca955x +leds-pca963x +leds-pm8058 +leds-pwm +leds-regulator +leds-sgm3140 +leds-spi-byte +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-gpio +ledtrig-heartbeat +ledtrig-netdev +ledtrig-oneshot +ledtrig-pattern +ledtrig-timer +ledtrig-transient +ledtrig-usbport +lego_ev3_battery +legousbtower +lg-vl600 +lg2160 +lgdt3305 +lgdt3306a +lgdt330x +lgs8gl5 +lgs8gxx +lib80211 +lib80211_crypt_ccmp +lib80211_crypt_tkip +lib80211_crypt_wep +libarc4 +libblake2s +libblake2s-generic +libceph +libchacha +libchacha20poly1305 +libcomposite +libcrc32c +libcurve25519 +libcurve25519-generic +libcxgb +libcxgbi +libdes +libertas +libertas_sdio +libertas_spi +libertas_tf +libertas_tf_usb +libfc +libfcoe +libipw +libiscsi +libiscsi_tcp +libpoly1305 +libsas +lightning +lima +lineage-pem +linear +lis3lv02d +lis3lv02d_i2c +lis3lv02d_spi +lkkbd +ll_temac +llc +llc2 +llcc-qcom +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 +lochnagar-hwmon +lochnagar-regulator +lockd +lp +lp3943 +lp3971 +lp3972 +lp855x_bl +lp8727_charger +lp872x +lp873x +lp873x-regulator +lp8755 +lp87565 +lp87565-regulator +lp8788-buck +lp8788-charger +lp8788-ldo +lp8788_adc +lp8788_bl +lpasscc-sdm845 +lpc_ich +lpc_sch +lpddr2_nvm +lpddr_cmds +lpfc +lru_cache +lrw +lt3651-charger +ltc1660 +ltc2471 +ltc2485 +ltc2496 +ltc2497 +ltc2497-core +ltc2632 +ltc2941-battery-gauge +ltc2945 +ltc2947-core +ltc2947-i2c +ltc2947-spi +ltc2978 +ltc2983 +ltc2990 +ltc3589 +ltc3676 +ltc3815 +ltc4151 +ltc4215 +ltc4222 +ltc4245 +ltc4260 +ltc4261 +ltr501 +ltv350qv +lv0104cs +lv5207lp +lvds-codec +lvstest +lxt +lz4 +lz4hc +lz4hc_compress +m2m-deinterlace +m52790 +m5mols +m62332 +m88ds3103 +m88rs2000 +m88rs6000t +mISDN_core +mISDN_dsp +mISDNinfineon +mISDNipac +mISDNisar +m_can +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 +macb +macb_pci +machxo2-spi +macmodes +macsec +macvlan +macvtap +madera +madera-i2c +madera-spi +mag3110 +magellan +mailbox-altera +mailbox-test +mali-dp +mantis +mantis_core +map_absent +map_ram +map_rom +marvell +marvell-cesa +marvell10g +marvell_nand +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 +max11801_ts +max1241 +max1363 +max14577-regulator +max14577_charger +max14656_charger_detector +max1586 +max16064 +max16065 +max1619 +max16601 +max1668 +max17040_battery +max17042_battery +max1721x_battery +max197 +max20730 +max20751 +max2165 +max2175 +max30100 +max30102 +max3100 +max31722 +max31730 +max31785 +max31790 +max31856 +max3420_udc +max3421-hcd +max34440 +max44000 +max44009 +max517 +max5432 +max5481 +max5487 +max5821 +max63xx_wdt +max6621 +max6639 +max6642 +max6650 +max6697 +max6875 +max7359_keypad +max77620-regulator +max77620_thermal +max77620_wdt +max77650 +max77650-charger +max77650-onkey +max77650-regulator +max77686-regulator +max77693-haptic +max77693-regulator +max77693_charger +max77802-regulator +max77826-regulator +max8649 +max8660 +max8688 +max8903_charger +max8907 +max8907-regulator +max8925-regulator +max8925_bl +max8925_onkey +max8925_power +max8952 +max8973-regulator +max8997-regulator +max8997_charger +max8997_haptic +max8998 +max8998_charger +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 +mc44s803 +mcam-core +mcb +mcb-lpc +mcb-pci +mcba_usb +mcde_drm +mceusb +mchp23k256 +mcp16502 +mcp251x +mcp3021 +mcp320x +mcp3422 +mcp3911 +mcp4018 +mcp41010 +mcp4131 +mcp4531 +mcp4725 +mcp4922 +mcr20a +mcs5000_ts +mcs7830 +mcs_touchkey +mct_u232 +md-cluster +md4 +mdc800 +mdev +mdio +mdio-aspeed +mdio-bcm-unimac +mdio-bitbang +mdio-gpio +mdio-hisi-femac +mdio-i2c +mdio-ipq4019 +mdio-ipq8064 +mdio-mscc-miim +mdio-mux +mdio-mux-gpio +mdio-mux-meson-g12a +mdio-mux-mmioreg +mdio-mux-multiplexer +mdio-mvusb +mdio-xpcs +mdt_loader +me4000 +me_daq +mediatek +mediatek-cpufreq +mediatek-drm +mediatek-drm-hdmi +megachips-stdpxxxx-ge-b850v3-fw +megaraid +megaraid_mbox +megaraid_mm +megaraid_sas +melfas_mip4 +memstick +men_z135_uart +men_z188_adc +mena21_wdt +menf21bmc +menf21bmc_hwmon +menf21bmc_wdt +menz69_wdt +meson-canvas +meson-drm +meson-gx-mmc +meson-gxl +meson-ir +meson-mx-sdhc +meson-mx-sdio +meson-rng +meson-vdec +meson_dw_hdmi +meson_gxbb_wdt +meson_nand +meson_saradc +meson_wdt +metro-usb +metronomefb +mf6x4 +mgag200 +mhi +mi0283qt +michael_mic +micrel +microchip +microchip_t1 +microread +microread_i2c +microtek +mii +milbeaut-hdmac +milbeaut-xdmac +milbeaut_usio +minix +mip6 +mite +mk712 +mkiss +ml86v7667 +mlx4_core +mlx4_en +mlx4_ib +mlx5_core +mlx5_ib +mlx90614 +mlx90632 +mlx_wdt +mlxfw +mlxreg-fan +mlxreg-hotplug +mlxreg-io +mlxsw_core +mlxsw_i2c +mlxsw_minimal +mlxsw_pci +mlxsw_spectrum +mlxsw_switchib +mlxsw_switchx2 +mma7455_core +mma7455_i2c +mma7455_spi +mma7660 +mma8450 +mma8452 +mma9551 +mma9551_core +mma9553 +mmc35240 +mmc_spi +mmcc-apq8084 +mmcc-msm8960 +mmcc-msm8974 +mmcc-msm8996 +mmcc-msm8998 +mms114 +mn88443x +mn88472 +mn88473 +mos7720 +mos7840 +most_cdev +most_core +most_dim2 +most_i2c +most_net +most_sound +most_usb +most_video +motorola-cpcap +moxa +moxtet +mp2629 +mp2629_adc +mp2629_charger +mp5416 +mp8859 +mp886x +mpc624 +mpl115 +mpl115_i2c +mpl115_spi +mpl3115 +mpls_gso +mpls_iptunnel +mpls_router +mpoa +mpq7920 +mpr121_touchkey +mpt3sas +mptbase +mptctl +mptfc +mptlan +mptsas +mptscsih +mptspi +mpu3050 +mrf24j40 +mrp +ms5611_core +ms5611_i2c +ms5611_spi +ms5637 +ms_block +ms_sensors_i2c +mscc +mscc_ocelot_common +msdos +msi001 +msi2500 +msm +msp3400 +mspro_block +mss-sc7180 +mt2060 +mt2063 +mt20xx +mt2131 +mt2266 +mt312 +mt352 +mt6311-regulator +mt6323-regulator +mt6358-regulator +mt6360-core +mt6380-regulator +mt6397 +mt6397-regulator +mt6577_auxadc +mt6797-mt6351 +mt7530 +mt76 +mt76-usb +mt7601u +mt7603e +mt7615-common +mt7615e +mt7663u +mt76x0-common +mt76x02-lib +mt76x02-usb +mt76x0e +mt76x0u +mt76x2-common +mt76x2e +mt76x2u +mt7915e +mt8183-da7219-max98357 +mt8183-mt6358-ts3a227-max98357 +mt9m001 +mt9m032 +mt9m111 +mt9p031 +mt9t001 +mt9t112 +mt9v011 +mt9v032 +mt9v111 +mtd_dataflash +mtdoops +mtdpstore +mtdram +mtdswap +mtip32xx +mtk-btcvsd +mtk-cir +mtk-cmdq-helper +mtk-cmdq-mailbox +mtk-cqdma +mtk-crypto +mtk-hsdma +mtk-pmic-keys +mtk-pmic-wrap +mtk-rng +mtk-sd +mtk-uart-apdma +mtk-vpu +mtk_ecc +mtk_nand +mtk_rpmsg +mtk_scp +mtk_scp_ipi +mtk_thermal +mtk_wdt +mtouch +mtu3 +multipath +multiq3 +musb_dsps +mux-adg792a +mux-adgs1408 +mux-core +mux-gpio +mux-mmio +mv643xx_eth +mv88e6060 +mv88e6xxx +mv_u3d_core +mv_udc +mvmdio +mvneta +mvpp2 +mvsas +mvsdio +mvumi +mwifiex +mwifiex_pcie +mwifiex_sdio +mwifiex_usb +mwl8k +mxb +mxc4005 +mxc6255 +mxic_nand +mxl111sf-demod +mxl111sf-tuner +mxl301rf +mxl5005s +mxl5007t +mxl5xx +mxser +mxsfb +mxuport +myrb +myri10ge +myrs +n_gsm +n_hdlc +n_tracerouter +n_tracesink +nandsim +national +natsemi +nau7802 +navman +nb8800 +nbd +nbpfaxi +nci +nci_spi +nci_uart +nct6683 +nct6775 +nct7802 +nct7904 +nd_blk +nd_btt +nd_pmem +nd_virtio +ne2k-pci +neofb +net1080 +net2272 +net2280 +net_failover +netconsole +netdevsim +netjet +netlink_diag +netrom +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_flow_table_ipv4 +nf_flow_table_ipv6 +nf_log_arp +nf_log_bridge +nf_log_common +nf_log_ipv4 +nf_log_ipv6 +nf_log_netdev +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 +nfnetlink +nfnetlink_acct +nfnetlink_cthelper +nfnetlink_cttimeout +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_counter +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_objref +nft_osf +nft_queue +nft_quota +nft_redir +nft_reject +nft_reject_bridge +nft_reject_inet +nft_reject_ipv4 +nft_reject_ipv6 +nft_socket +nft_synproxy +nft_tproxy +nft_tunnel +nft_xfrm +nftl +ngene +nhc_dest +nhc_fragment +nhc_hop +nhc_ipv6 +nhc_mobility +nhc_routing +nhc_udp +nhpoly1305 +nhpoly1305-neon +ni_6527 +ni_65xx +ni_660x +ni_670x +ni_at_a2150 +ni_at_ao +ni_atmio +ni_atmio16d +ni_labpc +ni_labpc_common +ni_labpc_pci +ni_pcidio +ni_pcimio +ni_routing +ni_tio +ni_tiocmd +ni_usb6501 +nicstar +nilfs2 +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 +noa1305 +noon010pc30 +nosy +notifier-error-inject +nouveau +nozomi +npcm-rng +npcm750-pwm-fan +npcm_adc +nps_enet +ns +ns558 +ns83820 +nsh +nsp32 +ntb +ntb_hw_idt +ntb_hw_switchtec +ntb_netdev +ntb_perf +ntb_pingpong +ntb_tool +ntb_transport +ntc_thermistor +ntfs +null_blk +nvidiafb +nvme +nvme-core +nvme-fabrics +nvme-fc +nvme-loop +nvme-rdma +nvme-tcp +nvmem-rave-sp-eeprom +nvmem-reboot-mode +nvmem-rockchip-otp +nvmem-uniphier-efuse +nvmem_meson_mx_efuse +nvmem_qcom-spmi-sdam +nvmem_qfprom +nvmem_rockchip_efuse +nvmet +nvmet-fc +nvmet-rdma +nvmet-tcp +nwl-dsi +nxp-nci +nxp-nci_i2c +nxp-ptn3460 +nxp-tja11xx +nxt200x +nxt6000 +objagg +ocelot_vsc7514 +ocfb +ocfs2 +ocfs2_dlm +ocfs2_dlmfs +ocfs2_nodemanager +ocfs2_stack_o2cb +ocfs2_stack_user +ocfs2_stackglue +ocmem +ocrdma +of-fpga-region +of_mmc_spi +of_pmem +of_xilinx_wdt +ofb +omap +omap-aes-driver +omap-crypto +omap-des +omap-mailbox +omap-ocp2scp +omap-rng +omap-sham +omap2430 +omap2fb +omap4-keypad +omap_hdq +omap_hwspinlock +omap_remoteproc +omap_wdt +omapdss +omfs +omninet +on20 +on26 +onenand +opencores-kbd +openvswitch +oprofile +opt3001 +optee +optee-rng +opticon +option +or51132 +or51211 +orangefs +orinoco +orinoco_nortel +orinoco_plx +orinoco_tmd +orinoco_usb +orion_nand +orion_wdt +oti6858 +otm3225a +ov13858 +ov2640 +ov2659 +ov2680 +ov2685 +ov2740 +ov5640 +ov5645 +ov5647 +ov5670 +ov5675 +ov5695 +ov6650 +ov7251 +ov7640 +ov7670 +ov772x +ov7740 +ov8856 +ov9640 +ov9650 +overlay +owl-dma +owl-mmc +oxu210hp-hcd +p54common +p54pci +p54spi +p54usb +p8022 +pa12203001 +palmas-pwrbutton +palmas-regulator +palmas_gpadc +pandora_bl +panel +panel-arm-versatile +panel-asus-z00t-tm5p5-n35596 +panel-boe-himax8279d +panel-boe-tv101wum-nl6 +panel-elida-kd35t133 +panel-feixin-k101-im2ba02 +panel-feiyang-fy07024di26a30d +panel-ilitek-ili9322 +panel-ilitek-ili9881c +panel-innolux-p079zca +panel-jdi-lt070me05000 +panel-kingdisplay-kd097d04 +panel-leadtek-ltk050h3146w +panel-leadtek-ltk500hd1829 +panel-lg-lb035q02 +panel-lg-lg4573 +panel-lvds +panel-nec-nl8048hl11 +panel-novatek-nt35510 +panel-novatek-nt39016 +panel-olimex-lcd-olinuxino +panel-orisetech-otm8009a +panel-osd-osd101t2587-53ts +panel-panasonic-vvx10f034n00 +panel-raspberrypi-touchscreen +panel-raydium-rm67191 +panel-raydium-rm68200 +panel-rocktech-jh057n00900 +panel-ronbo-rb070d30 +panel-samsung-ld9040 +panel-samsung-s6d16d0 +panel-samsung-s6e3ha2 +panel-samsung-s6e63j0x03 +panel-samsung-s6e63m0 +panel-samsung-s6e88a0-ams452ef01 +panel-samsung-s6e8aa0 +panel-seiko-43wvf1g +panel-sharp-lq101r1sx01 +panel-sharp-ls037v7dw01 +panel-sharp-ls043t1le01 +panel-simple +panel-sitronix-st7701 +panel-sitronix-st7789v +panel-sony-acx424akp +panel-sony-acx565akm +panel-tpo-td028ttec1 +panel-tpo-td043mtea1 +panel-tpo-tpg110 +panel-truly-nt35597 +panel-visionox-rm69299 +panel-xinpeng-xpp055c272 +panfrost +parade-ps8622 +parade-ps8640 +parallel-display +paride +parkbd +parman +parport +parport_ax88796 +parport_pc +parport_serial +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_of_platform +pata_oldpiix +pata_opti +pata_optidma +pata_pdc2027x +pata_pdc202xx_old +pata_piccolo +pata_platform +pata_radisys +pata_rdc +pata_rz1000 +pata_sch +pata_serverworks +pata_sil680 +pata_sis +pata_sl82c105 +pata_triflex +pata_via +pbias-regulator +pblk +pc300too +pc87360 +pc87427 +pcap-regulator +pcap_keys +pcap_ts +pcbc +pcd +pcf50633 +pcf50633-adc +pcf50633-backlight +pcf50633-charger +pcf50633-gpio +pcf50633-input +pcf50633-regulator +pcf8574_keypad +pcf8591 +pch_udc +pci +pci-pf-stub +pci-stub +pci200syn +pcie-rockchip-host +pcips2 +pcl711 +pcl724 +pcl726 +pcl730 +pcl812 +pcl816 +pcl818 +pcm3724 +pcmad +pcmda12 +pcmmio +pcmuio +pcnet32 +pcrypt +pcwd_pci +pcwd_usb +pd +pda_power +pdc_adma +pdr_interface +peak_pci +peak_pciefd +peak_usb +pegasus +pegasus_notetaker +penmount +pf +pfuze100-regulator +pg +phantom +phonet +phram +phy-am335x +phy-am335x-control +phy-armada38x-comphy +phy-bcm-kona-usb2 +phy-berlin-sata +phy-berlin-usb +phy-cadence-salvo +phy-cadence-sierra +phy-cadence-torrent +phy-cpcap-usb +phy-dm816x-usb +phy-exynos-usb2 +phy-exynos5-usbdrd +phy-fsl-imx8-mipi-dphy +phy-fsl-imx8mq-usb +phy-gpio-vbus-usb +phy-hix5hd2-sata +phy-isp1301 +phy-mapphone-mdm6600 +phy-meson-g12a-usb2 +phy-meson-g12a-usb3-pcie +phy-meson-gxl-usb2 +phy-meson8b-usb2 +phy-mtk-tphy +phy-mtk-ufs +phy-mtk-xsphy +phy-mvebu-a3700-comphy +phy-mvebu-a3700-utmi +phy-mvebu-cp110-comphy +phy-ocelot-serdes +phy-omap-control +phy-omap-usb2 +phy-pxa-28nm-hsic +phy-pxa-28nm-usb2 +phy-qcom-apq8064-sata +phy-qcom-ipq4019-usb +phy-qcom-ipq806x-sata +phy-qcom-pcie2 +phy-qcom-qmp +phy-qcom-qusb2 +phy-qcom-snps-femto-v2 +phy-qcom-ufs +phy-qcom-ufs-qmp-14nm +phy-qcom-usb-hs +phy-qcom-usb-hs-28nm +phy-qcom-usb-hsic +phy-qcom-usb-ss +phy-rcar-gen2 +phy-rcar-gen3-pcie +phy-rcar-gen3-usb2 +phy-rcar-gen3-usb3 +phy-rockchip-dp +phy-rockchip-dphy-rx0 +phy-rockchip-emmc +phy-rockchip-inno-dsidphy +phy-rockchip-inno-hdmi +phy-rockchip-inno-usb2 +phy-rockchip-pcie +phy-rockchip-typec +phy-rockchip-usb +phy-tahvo +phy-ti-pipe3 +phy-tusb1210 +phy-twl4030-usb +phy-twl6030-usb +phy-uniphier-pcie +phy-uniphier-usb2 +phy-uniphier-usb3hs +phy-uniphier-usb3ss +phylink +physmap +pi3usb30532 +pi433 +pinctrl-apq8064 +pinctrl-apq8084 +pinctrl-axp209 +pinctrl-da9062 +pinctrl-ipq4019 +pinctrl-ipq6018 +pinctrl-ipq8064 +pinctrl-ipq8074 +pinctrl-lochnagar +pinctrl-madera +pinctrl-max77620 +pinctrl-mcp23s08 +pinctrl-mcp23s08_i2c +pinctrl-mcp23s08_spi +pinctrl-mdm9615 +pinctrl-msm8660 +pinctrl-msm8916 +pinctrl-msm8960 +pinctrl-msm8976 +pinctrl-msm8994 +pinctrl-msm8996 +pinctrl-msm8998 +pinctrl-msm8x74 +pinctrl-qcs404 +pinctrl-rk805 +pinctrl-sc7180 +pinctrl-sdm660 +pinctrl-sdm845 +pinctrl-sm8150 +pinctrl-sm8250 +pinctrl-spmi-gpio +pinctrl-spmi-mpp +pinctrl-ssbi-gpio +pinctrl-ssbi-mpp +pinctrl-stmfx +ping +pistachio-internal-dac +pixcir_i2c_ts +pkcs7_test_key +pkcs8_key_parser +pktcdvd +pktgen +pl111_drm +pl172 +pl2303 +pl330 +pl353-smc +plat-ram +plat_nand +platform_lcd +platform_mhu +plip +plusb +pluto2 +plx_dma +plx_pci +pm-notifier-error-inject +pm2fb +pm3fb +pm80xx +pm8916_wdt +pm8941-pwrkey +pm8xxx-vibrator +pmbus +pmbus_core +pmc551 +pmcraid +pmic8xxx-keypad +pmic8xxx-pwrkey +pms7003 +pn532_uart +pn533 +pn533_i2c +pn533_usb +pn544 +pn544_i2c +pn_pep +poly1305-arm +poly1305_generic +port100 +powermate +powr1220 +ppa +ppdev +ppp_async +ppp_deflate +ppp_mppe +ppp_synctty +pppoatm +pppoe +pppox +pps-gpio +pps-ldisc +pps_parport +pptp +pretimeout_panic +prism2_usb +ps2-gpio +ps2mult +psample +psmouse +psnap +pstore_blk +pstore_zone +psxpad-spi +pt +ptp-qoriq +ptp_clockmatrix +ptp_idt82p33 +ptp_ines +pulse8-cec +pulsedlight-lidar-lite-v2 +pv88060-regulator +pv88080-regulator +pv88090-regulator +pvpanic +pvrusb2 +pwc +pwm-atmel-hlcdc +pwm-beeper +pwm-berlin +pwm-cros-ec +pwm-fan +pwm-fsl-ftm +pwm-hibvt +pwm-iqs620a +pwm-ir-tx +pwm-lp3943 +pwm-mediatek +pwm-meson +pwm-mtk-disp +pwm-omap-dmtimer +pwm-pca9685 +pwm-rcar +pwm-regulator +pwm-renesas-tpu +pwm-rockchip +pwm-samsung +pwm-twl +pwm-twl-led +pwm-vibra +pwm_bl +pwrseq_emmc +pwrseq_sd8787 +pwrseq_simple +pxa168_eth +pxa27x_udc +pxe1610 +pxrc +q6adm +q6afe +q6afe-dai +q6asm +q6asm-dai +q6core +q6dsp-common +q6routing +q6sstop-qcs404 +qca8k +qca_7k_common +qcaspi +qcauart +qcaux +qcom-apcs-ipc-mailbox +qcom-coincell +qcom-cpr +qcom-cpufreq-hw +qcom-cpufreq-nvmem +qcom-emac +qcom-geni-se +qcom-pm8xxx +qcom-pm8xxx-xoadc +qcom-pon +qcom-rng +qcom-spmi-adc5 +qcom-spmi-iadc +qcom-spmi-pmic +qcom-spmi-temp-alarm +qcom-spmi-vadc +qcom-vadc-common +qcom-wdt +qcom-wled +qcom_aoss +qcom_common +qcom_edac +qcom_geni_serial +qcom_glink +qcom_glink_rpm +qcom_glink_smem +qcom_gsbi +qcom_hwspinlock +qcom_nandc +qcom_q6v5 +qcom_q6v5_adsp +qcom_q6v5_ipa_notify +qcom_q6v5_mss +qcom_q6v5_pas +qcom_q6v5_wcss +qcom_rpm +qcom_rpm-regulator +qcom_smbb +qcom_smd +qcom_smd-regulator +qcom_spmi-regulator +qcom_sysmon +qcom_tsens +qcrypto +qcserial +qed +qede +qedf +qedi +qinfo_probe +qla1280 +qla2xxx +qla3xxx +qla4xxx +qlcnic +qlge +qm1d1b0004 +qm1d1c0042 +qmi_helpers +qmi_wwan +qnoc-msm8916 +qnoc-msm8974 +qnoc-qcs404 +qnx4 +qnx6 +qrtr +qrtr-mhi +qrtr-smd +qrtr-tun +qsemi +qt1010 +qt1050 +qt1070 +qt2160 +qtnfmac +qtnfmac_pcie +quatech2 +quota_tree +quota_v1 +quota_v2 +qxl +r592 +r6040 +r8152 +r8169 +r8188eu +r8192e_pci +r8192u_usb +r820t +r852 +r8712u +r8723bs +r8a66597-hcd +r8a66597-udc +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-si476x +radio-tea5764 +radio-usb-si4713 +radio-wl1273 +raid0 +raid1 +raid10 +raid456 +raid6_pq +raid_class +rainshadow-cec +ravb +rave-sp +rave-sp-backlight +rave-sp-pwrbutton +rave-sp-wdt +raw +raw_diag +raw_gadget +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-behold +rc-behold-columbus +rc-budget-ci-old +rc-cec +rc-cinergy +rc-cinergy-1400 +rc-core +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-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-kworld-315u +rc-kworld-pc150u +rc-kworld-plus-tv-analog +rc-leadtek-y04g0051 +rc-lme2510 +rc-loopback +rc-manli +rc-medion-x10 +rc-medion-x10-digitainer +rc-medion-x10-or2x +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-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-tango +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-dvd +rc-zx-irdec +rc5t583-regulator +rcar-csi2 +rcar-dmac +rcar-du-drm +rcar-fcp +rcar-gyroadc +rcar-vin +rcar_can +rcar_canfd +rcar_cmm +rcar_drif +rcar_dw_hdmi +rcar_fdp1 +rcar_gen3_thermal +rcar_jpu +rcar_lvds +rcar_thermal +rcuperf +rdc321x-southbridge +rdma_cm +rdma_ucm +rds +rds_rdma +rds_tcp +realtek +realtek-smi +reboot-mode +redboot +redrat3 +regmap-i3c +regmap-sccb +regmap-sdw +regmap-slimbus +regmap-spmi +regmap-w1 +regulator-haptic +reiserfs +renesas-ceu +renesas_sdhi_core +renesas_sdhi_internal_dmac +renesas_sdhi_sys_dmac +renesas_usb3 +renesas_usbhs +renesas_wdt +repaper +reset-hi3660 +reset-meson-audio-arb +reset-qcom-pdc +reset-scmi +reset-ti-syscon +reset-uniphier +reset-uniphier-glue +resistive-adc-touch +retu-mfd +retu-pwrbutton +retu_wdt +rfc1051 +rfc1201 +rfcomm +rfd77402 +rfd_ftl +rfkill-gpio +rio-scan +rio_cm +rio_mport_cdev +rionet +rivafb +rj54n1cb0c +rk3399_dmc +rk805-pwrkey +rk808 +rk808-regulator +rk_crypto +rm3100-core +rm3100-i2c +rm3100-spi +rmd128 +rmd160 +rmd256 +rmd320 +rmi_core +rmi_i2c +rmi_smbus +rmi_spi +rmnet +rmobile-reset +rmtfs_mem +rn5t618 +rn5t618-adc +rn5t618-regulator +rn5t618_wdt +rnbd-client +rnbd-server +rndis_host +rndis_wlan +rockchip +rockchip-dfi +rockchip-io-domain +rockchip-isp1 +rockchip-rga +rockchip-vdec +rockchip_saradc +rockchip_thermal +rockchipdrm +rocker +rocket +rohm-bd70528 +rohm-bd71828 +rohm-bd718x7 +rohm-regulator +rohm_bu21023 +romfs +rose +rotary_encoder +rp2 +rpcrdma +rpcsec_gss_krb5 +rpmpd +rpmsg_char +rpmsg_core +rpr0521 +rsi_91x +rsi_sdio +rsi_usb +rsxx +rt2400pci +rt2500pci +rt2500usb +rt2800lib +rt2800mmio +rt2800pci +rt2800usb +rt2x00lib +rt2x00mmio +rt2x00pci +rt2x00usb +rt5033 +rt5033-regulator +rt5033_battery +rt61pci +rt73usb +rt9455_charger +rtc-88pm80x +rtc-88pm860x +rtc-ab-b5ze-s3 +rtc-ab-eoz9 +rtc-ab3100 +rtc-abx80x +rtc-armada38x +rtc-as3722 +rtc-aspeed +rtc-bd70528 +rtc-bq32k +rtc-bq4802 +rtc-cadence +rtc-cmos +rtc-cpcap +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-hid-sensor-time +rtc-hym8563 +rtc-isl12022 +rtc-isl12026 +rtc-isl1208 +rtc-lp8788 +rtc-m41t80 +rtc-m41t93 +rtc-m41t94 +rtc-m48t35 +rtc-m48t59 +rtc-m48t86 +rtc-max6900 +rtc-max6902 +rtc-max6916 +rtc-max77686 +rtc-max8907 +rtc-max8925 +rtc-max8997 +rtc-max8998 +rtc-mc13xxx +rtc-mcp795 +rtc-meson +rtc-meson-vrtc +rtc-msm6242 +rtc-mt2712 +rtc-mt6397 +rtc-mt7622 +rtc-palmas +rtc-pcap +rtc-pcf2123 +rtc-pcf2127 +rtc-pcf50633 +rtc-pcf85063 +rtc-pcf8523 +rtc-pcf85363 +rtc-pcf8563 +rtc-pcf8583 +rtc-pl030 +rtc-pm8xxx +rtc-r7301 +rtc-r9701 +rtc-rc5t583 +rtc-rc5t619 +rtc-rk808 +rtc-rp5c01 +rtc-rs5c348 +rtc-rs5c372 +rtc-rv3028 +rtc-rv3029c2 +rtc-rv8803 +rtc-rx4581 +rtc-rx6110 +rtc-rx8010 +rtc-rx8025 +rtc-rx8581 +rtc-s35390a +rtc-s5m +rtc-sd3078 +rtc-sh +rtc-stk17ta8 +rtc-tps6586x +rtc-tps65910 +rtc-tps80031 +rtc-v3020 +rtc-wm831x +rtc-wm8350 +rtc-x1205 +rtc-zynqmp +rtd520 +rti800 +rti802 +rtl2830 +rtl2832 +rtl2832_sdr +rtl8150 +rtl8187 +rtl8188ee +rtl818x_pci +rtl8192c-common +rtl8192ce +rtl8192cu +rtl8192de +rtl8192ee +rtl8192se +rtl8723-common +rtl8723ae +rtl8723be +rtl8821ae +rtl8xxxu +rtl_pci +rtl_usb +rtllib +rtllib_crypt_ccmp +rtllib_crypt_tkip +rtllib_crypt_wep +rtlwifi +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_8822b +rtw88_8822be +rtw88_8822c +rtw88_8822ce +rtw88_core +rtw88_pci +rx51_battery +rxrpc +rza_wdt +s1d13xxxfb +s2250 +s2255drv +s2io +s2mpa01 +s2mps11 +s3c2410_wdt +s3fb +s3fwrn5 +s3fwrn5_i2c +s526 +s5c73m3 +s5h1409 +s5h1411 +s5h1420 +s5h1432 +s5k4ecgx +s5k5baf +s5k6a3 +s5k6aa +s5m8767 +s5p-cec +s5p-g2d +s5p-jpeg +s5p-mfc +s5p-sss +s626 +s6sy761 +s921 +saa6588 +saa6752hs +saa7110 +saa7115 +saa7127 +saa7134 +saa7134-alsa +saa7134-dvb +saa7134-empress +saa7134-go7007 +saa7146 +saa7146_vv +saa7164 +saa717x +saa7185 +saa7706h +safe_serial +salsa20_generic +sample-trace-array +samsung-keypad +samsung-sxgbe +samsung_tty +sata_dwc_460ex +sata_inic162x +sata_mv +sata_nv +sata_promise +sata_qstor +sata_rcar +sata_sil +sata_sil24 +sata_sis +sata_svw +sata_sx4 +sata_uli +sata_via +sata_vsc +savagefb +sbp_target +sbs-battery +sbs-charger +sbs-manager +sc16is7xx +sc92031 +sca3000 +sch5627 +sch5636 +sch56xx-common +sch_atm +sch_cake +sch_cbq +sch_cbs +sch_choke +sch_codel +sch_drr +sch_dsmark +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_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 +sclk-div +scmi-cpufreq +scmi-hwmon +scmi_pm_domain +scpi-cpufreq +scpi-hwmon +scpi_pm_domain +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-cadence +sdhci-dove +sdhci-milbeaut +sdhci-msm +sdhci-of-arasan +sdhci-of-aspeed +sdhci-of-at91 +sdhci-of-dwcmshc +sdhci-omap +sdhci-pci +sdhci-pxav3 +sdhci-s3c +sdhci-xenon-driver +sdhci_am654 +sdhci_f_sdh30 +sdio_uart +seed +sensorhub +serial_ir +serio_raw +sermouse +serpent_generic +serport +ses +sf-pdma +sfc +sfc-falcon +sfp +sgi_w1 +sgp30 +sh-sci +sh_eth +sh_mmcif +sh_mobile_lcdcfb +sha1-arm +sha1-arm-ce +sha1-arm-neon +sha2-arm-ce +sha256-arm +sha3_generic +sha512-arm +shark2 +sharpslpart +shiftfs +sht15 +sht21 +sht3x +shtc1 +si1133 +si1145 +si2157 +si2165 +si2168 +si21xx +si4713 +si476x-core +si7005 +si7020 +sidewinder +sierra +sierra_net +sifive +sii902x +sii9234 +sil-sii8620 +sil164 +silead +simple-bridge +siox-bus-gpio +siox-core +sir_ir +sirf-audio-codec +sis190 +sis5595 +sis900 +sis_i2c +sisfb +sisusbvga +sit +sja1000 +sja1000_isa +sja1000_platform +sja1105 +skfp +skge +sky2 +sky81452 +sky81452-backlight +sky81452-regulator +sl811-hcd +slcan +slg51000-regulator +slicoss +slim-qcom-ctrl +slim-qcom-ngd-ctrl +slimbus +slip +slram +sm3_generic +sm4_generic +sm501fb +sm712fb +sm750fb +sm_common +sm_ftl +smartpqi +smb347-charger +smc +smc911x +smc91x +smc_diag +smd-rpm +smem +smiapp +smiapp-pll +smipcie +smm665 +smp2p +smsc +smsc47b397 +smsc47m1 +smsc47m192 +smsc75xx +smsc911x +smsc9420 +smsc95xx +smscufx +smsdvb +smsm +smsmdtv +smssdio +smsusb +snd-aaci +snd-ac97-codec +snd-ad1889 +snd-ak4113 +snd-ak4114 +snd-ak4xxx-adda +snd-ali5451 +snd-aloop +snd-als300 +snd-atiixp +snd-atiixp-modem +snd-au8810 +snd-au8820 +snd-au8830 +snd-aw2 +snd-azt3328 +snd-bcd2000 +snd-bebob +snd-bt87x +snd-ca0106 +snd-cmipci +snd-cs4281 +snd-cs46xx +snd-cs8427 +snd-ctxfi +snd-darla20 +snd-darla24 +snd-dice +snd-dummy +snd-echo3g +snd-emu10k1 +snd-emu10k1-synth +snd-emu10k1x +snd-emux-synth +snd-ens1370 +snd-ens1371 +snd-es1938 +snd-es1968 +snd-fireface +snd-firewire-digi00x +snd-firewire-lib +snd-firewire-motu +snd-firewire-tascam +snd-fireworks +snd-fm801 +snd-gina20 +snd-gina24 +snd-hda-codec +snd-hda-codec-analog +snd-hda-codec-ca0110 +snd-hda-codec-ca0132 +snd-hda-codec-cirrus +snd-hda-codec-cmedia +snd-hda-codec-conexant +snd-hda-codec-generic +snd-hda-codec-hdmi +snd-hda-codec-idt +snd-hda-codec-realtek +snd-hda-codec-si3054 +snd-hda-codec-via +snd-hda-core +snd-hda-intel +snd-hdsp +snd-hdspm +snd-hrtimer +snd-hwdep +snd-i2c +snd-ice1712 +snd-ice1724 +snd-ice17xx-ak4xxx +snd-indigo +snd-indigodj +snd-indigodjx +snd-indigoio +snd-indigoiox +snd-intel-dspcfg +snd-intel8x0 +snd-intel8x0m +snd-isight +snd-korg1212 +snd-layla20 +snd-layla24 +snd-lola +snd-maestro3 +snd-mia +snd-mixart +snd-mixer-oss +snd-mona +snd-mpu401 +snd-mpu401-uart +snd-mtpav +snd-mts64 +snd-nm256 +snd-opl3-lib +snd-opl3-synth +snd-oxfw +snd-oxygen +snd-oxygen-lib +snd-pcxhr +snd-portman2x4 +snd-pt2258 +snd-rawmidi +snd-riptide +snd-rme32 +snd-rme96 +snd-rme9652 +snd-seq +snd-seq-device +snd-seq-dummy +snd-seq-midi +snd-seq-midi-emul +snd-seq-midi-event +snd-seq-virmidi +snd-serial-u16550 +snd-soc-63xx +snd-soc-ac97 +snd-soc-acp-da7219mx98357-mach +snd-soc-acp-rt5645-mach +snd-soc-adau-utils +snd-soc-adau1701 +snd-soc-adau1761 +snd-soc-adau1761-i2c +snd-soc-adau1761-spi +snd-soc-adau17x1 +snd-soc-adau7002 +snd-soc-adau7118 +snd-soc-adau7118-hw +snd-soc-adau7118-i2c +snd-soc-ak4104 +snd-soc-ak4118 +snd-soc-ak4458 +snd-soc-ak4554 +snd-soc-ak4613 +snd-soc-ak4642 +snd-soc-ak5386 +snd-soc-ak5558 +snd-soc-alc5623 +snd-soc-apq8016-sbc +snd-soc-apq8096 +snd-soc-arizona +snd-soc-armada-370-db +snd-soc-arndale +snd-soc-audio-graph-card +snd-soc-bd28623 +snd-soc-bt-sco +snd-soc-cpcap +snd-soc-cros-ec-codec +snd-soc-cs35l32 +snd-soc-cs35l33 +snd-soc-cs35l34 +snd-soc-cs35l35 +snd-soc-cs35l36 +snd-soc-cs4265 +snd-soc-cs4270 +snd-soc-cs4271 +snd-soc-cs4271-i2c +snd-soc-cs4271-spi +snd-soc-cs42l42 +snd-soc-cs42l51 +snd-soc-cs42l51-i2c +snd-soc-cs42l52 +snd-soc-cs42l56 +snd-soc-cs42l73 +snd-soc-cs42xx8 +snd-soc-cs42xx8-i2c +snd-soc-cs43130 +snd-soc-cs4341 +snd-soc-cs4349 +snd-soc-cs53l30 +snd-soc-cx2072x +snd-soc-da7213 +snd-soc-da7219 +snd-soc-davinci-mcasp +snd-soc-dmic +snd-soc-es7134 +snd-soc-es7241 +snd-soc-es8316 +snd-soc-es8328 +snd-soc-es8328-i2c +snd-soc-es8328-spi +snd-soc-fsi +snd-soc-fsl-asrc +snd-soc-fsl-audmix +snd-soc-fsl-easrc +snd-soc-fsl-esai +snd-soc-fsl-micfil +snd-soc-fsl-mqs +snd-soc-fsl-sai +snd-soc-fsl-spdif +snd-soc-fsl-ssi +snd-soc-gtm601 +snd-soc-hdmi-codec +snd-soc-i2s +snd-soc-idma +snd-soc-imx-audmux +snd-soc-inno-rk3036 +snd-soc-kirkwood +snd-soc-lochnagar-sc +snd-soc-lpass-apq8016 +snd-soc-lpass-cpu +snd-soc-lpass-ipq806x +snd-soc-lpass-platform +snd-soc-max9759 +snd-soc-max98088 +snd-soc-max98090 +snd-soc-max98095 +snd-soc-max98357a +snd-soc-max98373 +snd-soc-max98390 +snd-soc-max98504 +snd-soc-max9860 +snd-soc-max9867 +snd-soc-max98927 +snd-soc-meson-aiu +snd-soc-meson-axg-fifo +snd-soc-meson-axg-frddr +snd-soc-meson-axg-pdm +snd-soc-meson-axg-sound-card +snd-soc-meson-axg-spdifin +snd-soc-meson-axg-spdifout +snd-soc-meson-axg-tdm-formatter +snd-soc-meson-axg-tdm-interface +snd-soc-meson-axg-tdmin +snd-soc-meson-axg-tdmout +snd-soc-meson-axg-toddr +snd-soc-meson-card-utils +snd-soc-meson-codec-glue +snd-soc-meson-g12a-toacodec +snd-soc-meson-g12a-tohdmitx +snd-soc-meson-gx-sound-card +snd-soc-meson-t9015 +snd-soc-mikroe-proto +snd-soc-msm8916-analog +snd-soc-msm8916-digital +snd-soc-mt6351 +snd-soc-mt6358 +snd-soc-mt6660 +snd-soc-mt6797-afe +snd-soc-mt8183-afe +snd-soc-mtk-common +snd-soc-nau8540 +snd-soc-nau8810 +snd-soc-nau8822 +snd-soc-nau8824 +snd-soc-odroid +snd-soc-omap-mcbsp +snd-soc-pcm +snd-soc-pcm1681 +snd-soc-pcm1789-codec +snd-soc-pcm1789-i2c +snd-soc-pcm179x-codec +snd-soc-pcm179x-i2c +snd-soc-pcm179x-spi +snd-soc-pcm186x +snd-soc-pcm186x-i2c +snd-soc-pcm186x-spi +snd-soc-pcm3060 +snd-soc-pcm3060-i2c +snd-soc-pcm3060-spi +snd-soc-pcm3168a +snd-soc-pcm3168a-i2c +snd-soc-pcm3168a-spi +snd-soc-pcm512x +snd-soc-pcm512x-i2c +snd-soc-pcm512x-spi +snd-soc-qcom-common +snd-soc-rcar +snd-soc-rk3288-hdmi-analog +snd-soc-rk3328 +snd-soc-rk3399-gru-sound +snd-soc-rl6231 +snd-soc-rockchip-i2s +snd-soc-rockchip-max98090 +snd-soc-rockchip-pcm +snd-soc-rockchip-pdm +snd-soc-rockchip-rt5645 +snd-soc-rockchip-spdif +snd-soc-rt1308-sdw +snd-soc-rt5514 +snd-soc-rt5514-spi +snd-soc-rt5616 +snd-soc-rt5631 +snd-soc-rt5645 +snd-soc-rt5663 +snd-soc-rt5682 +snd-soc-rt5682-sdw +snd-soc-rt700 +snd-soc-rt711 +snd-soc-rt715 +snd-soc-s3c-dma +snd-soc-samsung-spdif +snd-soc-sdm845 +snd-soc-sgtl5000 +snd-soc-si476x +snd-soc-sigmadsp +snd-soc-sigmadsp-i2c +snd-soc-sigmadsp-regmap +snd-soc-simple-amplifier +snd-soc-simple-card +snd-soc-simple-card-utils +snd-soc-smdk-spdif +snd-soc-smdk-wm8994 +snd-soc-smdk-wm8994pcm +snd-soc-snow +snd-soc-spdif-rx +snd-soc-spdif-tx +snd-soc-ssm2305 +snd-soc-ssm2602 +snd-soc-ssm2602-i2c +snd-soc-ssm2602-spi +snd-soc-ssm4567 +snd-soc-sta32x +snd-soc-sta350 +snd-soc-sti-sas +snd-soc-storm +snd-soc-tas2552 +snd-soc-tas2562 +snd-soc-tas2770 +snd-soc-tas5086 +snd-soc-tas571x +snd-soc-tas5720 +snd-soc-tas6424 +snd-soc-tda7419 +snd-soc-tfa9879 +snd-soc-ti-edma +snd-soc-ti-sdma +snd-soc-ti-udma +snd-soc-tlv320adcx140 +snd-soc-tlv320aic23 +snd-soc-tlv320aic23-i2c +snd-soc-tlv320aic23-spi +snd-soc-tlv320aic31xx +snd-soc-tlv320aic32x4 +snd-soc-tlv320aic32x4-i2c +snd-soc-tlv320aic32x4-spi +snd-soc-tlv320aic3x +snd-soc-tm2-wm5110 +snd-soc-tpa6130a2 +snd-soc-ts3a227e +snd-soc-tscs42xx +snd-soc-tscs454 +snd-soc-uda1334 +snd-soc-uniphier-aio-cpu +snd-soc-uniphier-aio-ld11 +snd-soc-uniphier-aio-pxs2 +snd-soc-uniphier-evea +snd-soc-wcd9335 +snd-soc-wcd934x +snd-soc-wm-adsp +snd-soc-wm-hubs +snd-soc-wm5110 +snd-soc-wm8510 +snd-soc-wm8523 +snd-soc-wm8524 +snd-soc-wm8580 +snd-soc-wm8711 +snd-soc-wm8728 +snd-soc-wm8731 +snd-soc-wm8737 +snd-soc-wm8741 +snd-soc-wm8750 +snd-soc-wm8753 +snd-soc-wm8770 +snd-soc-wm8776 +snd-soc-wm8782 +snd-soc-wm8804 +snd-soc-wm8804-i2c +snd-soc-wm8804-spi +snd-soc-wm8903 +snd-soc-wm8904 +snd-soc-wm8960 +snd-soc-wm8962 +snd-soc-wm8974 +snd-soc-wm8978 +snd-soc-wm8985 +snd-soc-wm8994 +snd-soc-wsa881x +snd-soc-xlnx-formatter-pcm +snd-soc-xlnx-i2s +snd-soc-xlnx-spdif +snd-soc-xtfpga-i2s +snd-soc-zl38060 +snd-soc-zx-aud96p22 +snd-sof +snd-sof-of +snd-sof-pci +snd-sonicvibes +snd-trident +snd-ua101 +snd-usb-6fire +snd-usb-audio +snd-usb-caiaq +snd-usb-hiface +snd-usb-line6 +snd-usb-pod +snd-usb-podhd +snd-usb-toneport +snd-usb-variax +snd-usbmidi-lib +snd-util-mem +snd-via82xx +snd-via82xx-modem +snd-virmidi +snd-virtuoso +snd-vx-lib +snd-vx222 +snd-ymfpci +sni_ave +snic +snps_udc_core +snps_udc_plat +socinfo +softdog +softing +solo6x10 +solos-pci +sony-btf-mpx +soundwire-bus +soundwire-qcom +sp2 +sp805_wdt +sp8870 +sp887x +spaceball +spaceorb +sparse-keymap +spcp8x5 +speakup +speakup_acntsa +speakup_apollo +speakup_audptr +speakup_bns +speakup_decext +speakup_dectlk +speakup_dummy +speakup_ltlk +speakup_soft +speakup_spkout +speakup_txprt +speedfax +speedtch +spi-altera +spi-amd +spi-armada-3700 +spi-axi-spi-engine +spi-bitbang +spi-butterfly +spi-cadence +spi-dln2 +spi-dw +spi-dw-mmio +spi-dw-pci +spi-fsi +spi-geni-qcom +spi-gpio +spi-lm70llp +spi-loopback-test +spi-meson-spicc +spi-meson-spifc +spi-mt65xx +spi-mtk-nor +spi-mux +spi-mxic +spi-nor +spi-npcm-fiu +spi-npcm-pspi +spi-nxp-fspi +spi-oc-tiny +spi-orion +spi-pl022 +spi-pxa2xx-pci +spi-pxa2xx-platform +spi-qcom-qspi +spi-qup +spi-rockchip +spi-rspi +spi-s3c64xx +spi-sc18is602 +spi-sh-hspi +spi-sh-msiof +spi-sifive +spi-slave-mt27xx +spi-slave-system-control +spi-slave-time +spi-ti-qspi +spi-tle62x0 +spi-uniphier +spi-xcomm +spi-zynqmp-gqspi +spi_ks8995 +spidev +spinand +spmi +spmi-pmic-arb +sprd_serial +sps30 +sr030pc30 +sr9700 +sr9800 +srf04 +srf08 +ssb +ssbi +ssd1307fb +ssfdc +ssp_accel_sensor +ssp_gyro_sensor +ssp_iio +sst25l +sstfb +ssu100 +st +st-asc +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_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 +stkwebcam +stm-drm +stm_console +stm_core +stm_ftrace +stm_heartbeat +stm_p_basic +stm_p_sys-t +stmfts +stmfx +stmmac +stmmac-pci +stmmac-platform +stmpe-adc +stmpe-keypad +stmpe-ts +stowaway +stp +stpmic1 +stpmic1_onkey +stpmic1_regulator +stpmic1_wdt +streamzap +streebog_generic +stts751 +stv0288 +stv0297 +stv0299 +stv0367 +stv0900 +stv090x +stv0910 +stv6110 +stv6110x +stv6111 +sundance +sungem +sungem_phy +sunhme +suni +sunkbd +sunrpc +sur40 +surface3_spi +svgalib +switchtec +sx8 +sx8654 +sx9310 +sx9500 +sy8106a-regulator +sy8824x +sym53c8xx +symbolserial +synaptics_i2c +synaptics_usb +synclink_gt +synclinkmp +syscon-reboot-mode +syscopyarea +sysfillrect +sysimgblt +sysv +t5403 +tag_8021q +tag_ar9331 +tag_brcm +tag_dsa +tag_edsa +tag_gswip +tag_ksz +tag_lan9303 +tag_mtk +tag_ocelot +tag_qca +tag_sja1105 +tag_trailer +tap +target_core_file +target_core_iblock +target_core_mod +target_core_pscsi +target_core_user +tc-dwc-g210 +tc-dwc-g210-pci +tc-dwc-g210-pltfrm +tc358743 +tc358764 +tc358767 +tc358768 +tc3589x-keypad +tc654 +tc74 +tc90522 +tca6416-keypad +tca8418_keypad +tcan4x5x +tcm_fc +tcm_loop +tcm_qla2xxx +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_rt1711h +tcpm +tcrypt +tcs3414 +tcs3472 +tda10021 +tda10023 +tda10048 +tda1004x +tda10071 +tda10086 +tda18212 +tda18218 +tda18250 +tda18271 +tda18271c2dd +tda1997x +tda665x +tda7432 +tda8083 +tda8261 +tda826x +tda827x +tda8290 +tda9840 +tda9887 +tda9950 +tda998x +tdfxfb +tdo24m +tea +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-kprobes +test_blackhole_dev +test_bpf +test_power +tg3 +tgr192 +thc63lvd1024 +thermal-generic-adc +thermal_mmio +thmc50 +ths7303 +ths8200 +thunderbolt +thunderbolt-net +ti-adc081c +ti-adc0832 +ti-adc084s021 +ti-adc108s102 +ti-adc12138 +ti-adc128s052 +ti-adc161s626 +ti-ads1015 +ti-ads124s08 +ti-ads7950 +ti-ads8344 +ti-ads8688 +ti-cal +ti-csc +ti-dac082s085 +ti-dac5571 +ti-dac7311 +ti-dac7612 +ti-lmu +ti-sc +ti-sn65dsi86 +ti-soc-thermal +ti-tfp410 +ti-tlc4541 +ti-tpd12s015 +ti-vpdma +ti-vpe +ti_am335x_adc +ti_am335x_tsc +ti_am335x_tscadc +ti_cpsw_new +ti_edac +ti_hecc +ti_usb_3410_5052 +tidss +tifm_7xx1 +tifm_core +tifm_ms +tifm_sd +tilcdc +timeriomem-rng +tipc +tlan +tls +tlv320aic23b +tm2-touchkey +tm6000 +tm6000-alsa +tm6000-dvb +tmdc +tmio_mmc +tmio_mmc_core +tmio_nand +tmiofb +tmp006 +tmp007 +tmp102 +tmp103 +tmp108 +tmp401 +tmp421 +tmp513 +torture +toshsd +touchit213 +touchright +touchwin +tpci200 +tpl0102 +tpm_ftpm_tee +tpm_i2c_atmel +tpm_i2c_infineon +tpm_i2c_nuvoton +tpm_key_parser +tpm_st33zp24 +tpm_st33zp24_i2c +tpm_st33zp24_spi +tpm_tis_spi +tpm_vtpm_proxy +tps40422 +tps51632-regulator +tps53679 +tps6105x +tps6105x-regulator +tps62360-regulator +tps65010 +tps65023-regulator +tps6507x +tps6507x-regulator +tps6507x-ts +tps65086 +tps65086-regulator +tps65090-charger +tps65090-regulator +tps65132-regulator +tps65217_bl +tps65217_charger +tps65218 +tps65218-pwrbutton +tps65218-regulator +tps6524x-regulator +tps6586x-regulator +tps65910-regulator +tps65912-regulator +tps6598x +tps80031-regulator +tqmx86 +trace-printk +trancevibrator +trf7970a +tridentfb +ts2020 +ts_bm +ts_fsm +ts_kmp +tsc2004 +tsc2005 +tsc2007 +tsc200x-core +tsc40 +tsi568 +tsi57x +tsi721_mport +tsl2550 +tsl2563 +tsl2583 +tsl2772 +tsl4531 +tsys01 +tsys02d +ttm +ttpci-eeprom +ttusb_dec +ttusbdecfe +ttusbir +ttynull +tua6100 +tua9001 +tulip +tuner +tuner-simple +tuner-types +tuner-xc2028 +tunnel4 +tunnel6 +turbografx +turingcc-qcs404 +turris-mox-rwtm +tusb6010 +tvaudio +tve200_drm +tveeprom +tvp514x +tvp5150 +tvp7002 +tw2804 +tw5864 +tw68 +tw686x +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_common +twofish_generic +typec +typec_displayport +typec_nvidia +typec_ucsi +typhoon +u132-hcd +uPD60620 +u_audio +u_ether +u_serial +uacce +uartlite +uas +ubi +ubifs +ubuntu-host +ucan +ucb1400_core +ucb1400_ts +ucc_uart +ucd9000 +ucd9200 +ucs1002_power +ucsi_ccg +uda1342 +udc-xilinx +udf +udl +udlfb +udp_diag +udp_tunnel +ueagle-atm +ufs +ufs-hisi +ufs-mediatek +ufshcd-core +ufshcd-dwc +ufshcd-pci +ufshcd-pltfrm +uhid +uio +uio_aec +uio_cif +uio_dmem_genirq +uio_mf624 +uio_netx +uio_pci_generic +uio_pdrv_genirq +uio_pruss +uio_sercos3 +uleds +uli526x +ulpi +umem +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 +uniphier-mdmac +uniphier-regulator +uniphier-sd +uniphier-xdmac +uniphier_thermal +uniphier_wdt +unix_diag +upd64031a +upd64083 +upd78f0730 +us5182d +usb-conn-gpio +usb-dmac +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_midi +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_uac1 +usb_f_uac1_legacy +usb_f_uac2 +usb_f_uvc +usb_wwan +usbatm +usbdux +usbduxfast +usbduxsigma +usbhid +usbip-core +usbip-host +usbip-vudc +usbkbd +usblcd +usblp +usbmisc_imx +usbmon +usbmouse +usbnet +usbserial +usbsevseg +usbtest +usbtmc +usbtouchscreen +usbtv +usbvision +usdhi6rol0 +userio +userspace-consumer +ushc +uss720 +uvcvideo +uvesafb +v4l2-dv-timings +v4l2-flash-led-class +v4l2-fwnode +v4l2-h264 +v4l2-mem2mem +v4l2-tpg +vcan +vcnl3020 +vcnl4000 +vcnl4035 +vctrl-regulator +vdpa +vdpa_sim +veml6030 +veml6070 +ves1820 +ves1x93 +veth +vexpress-hwmon +vexpress-regulator +vexpress-spc-cpufreq +vf610_adc +vf610_dac +vfio +vfio-amba +vfio-pci +vfio-platform +vfio-platform-amdxgbe +vfio-platform-base +vfio-platform-calxedaxgmac +vfio_iommu_type1 +vfio_mdev +vfio_virqfd +vgastate +vgem +vgg2432a4 +vhci-hcd +vhost +vhost_iotlb +vhost_net +vhost_scsi +vhost_vdpa +vhost_vsock +via-rhine +via-sdmmc +via-velocity +via686a +vicodec +video-i2c +video-mux +videobuf-core +videobuf-dma-sg +videobuf-vmalloc +videobuf2-common +videobuf2-dma-contig +videobuf2-dma-sg +videobuf2-dvb +videobuf2-memops +videobuf2-v4l2 +videobuf2-vmalloc +videocc-sc7180 +videocc-sdm845 +videodev +vim2m +vimc +viperboard +viperboard_adc +virt_wifi +virtio-gpu +virtio-rng +virtio_blk +virtio_crypto +virtio_input +virtio_net +virtio_pmem +virtio_rpmsg_bus +virtio_scsi +virtio_vdpa +virtiofs +virtual +visor +vitesse +vitesse-vsc73xx-core +vitesse-vsc73xx-platform +vitesse-vsc73xx-spi +vivid +vkms +vl53l0x-i2c +vl6180 +vmac +vme_fake +vme_tsi148 +vme_user +vme_vmivme7805 +vmk80xx +vmw_pvrdma +vmw_vsock_virtio_transport +vmw_vsock_virtio_transport_common +vmxnet3 +vp27smpx +vport-geneve +vport-gre +vport-vxlan +vpx3220 +vqmmc-ipq4019-regulator +vrf +vringh +vs6624 +vsock +vsock_diag +vsock_loopback +vsockmon +vsp1 +vsxxxaa +vt1211 +vt6655_stage +vt6656_stage +vt8231 +vt8623fb +vub300 +vx855 +vxcan +vxge +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 +w83773g +w83781d +w83791d +w83792d +w83793 +w83795 +w83l785ts +w83l786ng +wacom +wacom_i2c +wacom_serial4 +wacom_w8001 +walkera0701 +wanxl +warrior +wcd934x +wcn36xx +wcnss_ctrl +wd719x +wdt87xx_i2c +wdt_pci +wfx +whiteheat +wil6210 +wilc1000 +wilc1000-sdio +wilc1000-spi +wimax +winbond-840 +wire +wireguard +wishbone-serial +wl1251 +wl1251_sdio +wl1251_spi +wl1273-core +wl12xx +wl18xx +wlcore +wlcore_sdio +wlcore_spi +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 +wm97xx-ts +wp512 +x25 +x25_asy +x_tables +xbox_remote +xc4000 +xc5000 +xcbc +xdpe12284 +xfrm4_tunnel +xfrm6_tunnel +xfrm_algo +xfrm_interface +xfrm_ipcomp +xfrm_user +xfs +xgmac +xhci-histb +xhci-mtk +xhci-pci +xhci-pci-renesas +xhci-plat-hcd +xilinx-pr-decoupler +xilinx-spi +xilinx-tpg +xilinx-video +xilinx-vtc +xilinx-xadc +xilinx_emac +xilinx_gmii2rgmii +xilinx_sdfec +xilinx_uartps +xillybus_core +xillybus_of +xillybus_pcie +xlnx_vcu +xor +xor-neon +xpad +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 +yealink +yellowfin +yurex +z3fold +zaurus +zd1201 +zd1211rw +zd1301 +zd1301_demod +zet6223 +zforce_ts +zhenhua +ziirave_wdt +zl10036 +zl10039 +zl10353 +zl6100 +zonefs +zopt2201 +zpa2326 +zpa2326_i2c +zpa2326_spi +zr364xx +zram +zstd +zx-tdm --- linux-azure-5.8-5.8.0.orig/debian.master/abi/5.8.0-50.56/armhf/generic-lpae.retpoline +++ linux-azure-5.8-5.8.0/debian.master/abi/5.8.0-50.56/armhf/generic-lpae.retpoline @@ -0,0 +1 @@ +# RETPOLINE NOT ENABLED --- linux-azure-5.8-5.8.0.orig/debian.master/abi/5.8.0-50.56/armhf/generic.compiler +++ linux-azure-5.8-5.8.0/debian.master/abi/5.8.0-50.56/armhf/generic.compiler @@ -0,0 +1 @@ +GCC: (Ubuntu 10.2.0-13ubuntu1) 10.2.0 --- linux-azure-5.8-5.8.0.orig/debian.master/abi/5.8.0-50.56/armhf/generic.modules +++ linux-azure-5.8-5.8.0/debian.master/abi/5.8.0-50.56/armhf/generic.modules @@ -0,0 +1,6211 @@ +3w-9xxx +3w-sas +3w-xxxx +6lowpan +6pack +8021q +8139cp +8139too +8250_aspeed_vuart +8250_dw +8250_exar +8250_men_mcb +8250_omap +8250_uniphier +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_rdma +9pnet_virtio +a100u2w +a3d +a53-pll +a8293 +aacraid +aat2870-regulator +aat2870_bl +ab3100 +ab3100-otp +abp060mg +acard-ahci +acecad +acenic +acp_audio_dma +act8865-regulator +act8945a +act8945a-regulator +act8945a_charger +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 +ad5064 +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 +ad5770r +ad5791 +ad5820 +ad5933 +ad7091r-base +ad7091r5 +ad7124 +ad714x +ad714x-i2c +ad714x-spi +ad7150 +ad7192 +ad7266 +ad7280a +ad7291 +ad7292 +ad7298 +ad7303 +ad7314 +ad7414 +ad7418 +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 +ad9389b +ad9467 +ad9523 +ad9832 +ad9834 +ad_sigma_delta +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 +ade7854 +ade7854-i2c +ade7854-spi +adf4350 +adf4371 +adf7242 +adfs +adi +adi-axi-adc +adiantum +adin +adis16080 +adis16130 +adis16136 +adis16201 +adis16203 +adis16209 +adis16240 +adis16260 +adis16400 +adis16460 +adis16475 +adis16480 +adis_lib +adjd_s311 +adl_pci6208 +adl_pci7x3x +adl_pci8164 +adl_pci9111 +adl_pci9118 +adm1021 +adm1025 +adm1026 +adm1029 +adm1031 +adm1177 +adm1275 +adm8211 +adm9240 +adp1653 +adp5061 +adp5520-keys +adp5520_bl +adp5588-keys +adp5589-keys +adp8860_bl +adp8870_bl +adq12b +ads7828 +ads7846 +ads7871 +adt7310 +adt7316 +adt7316-i2c +adt7316-spi +adt7410 +adt7411 +adt7462 +adt7470 +adt7475 +adt7x10 +adummy +adutux +adux1020 +adv7170 +adv7175 +adv7180 +adv7183 +adv7343 +adv7393 +adv748x +adv7511_drm +adv7604 +adv7842 +adv_pci1710 +adv_pci1720 +adv_pci1723 +adv_pci1724 +adv_pci1760 +adv_pci_dio +advansys +adxl34x +adxl34x-i2c +adxl34x-spi +adxl372 +adxl372_i2c +adxl372_spi +adxrs450 +aegis128 +aes-arm +aes-arm-bs +aes-arm-ce +aes_ti +af9013 +af9033 +af_alg +af_key +af_packet_diag +afe4403 +afe4404 +affs +afs +ah4 +ah6 +ahci +ahci_ceva +ahci_dm816 +ahci_mtk +ahci_mvebu +ahci_qoriq +ahci_tegra +aic79xx +aic7xxx +aic94xx +aio_aio12_8 +aio_iiro_16 +aiptek +aircable +airspy +ak7375 +ak881x +ak8974 +ak8975 +al3010 +al3320a +alcor +alcor_pci +algif_aead +algif_hash +algif_rng +algif_skcipher +alim7101_wdt +altera-ci +altera-cvp +altera-freeze-bridge +altera-msgdma +altera-pr-ip-core +altera-pr-ip-core-plat +altera-ps-spi +altera-stapl +altera_jtaguart +altera_ps2 +altera_tse +altera_uart +alx +am2315 +am35x +am53c974 +amba-pl010 +ambakmi +amc6821 +amd +amd5536udc_pci +amd8111e +amdgpu +amlogic-gxl-crypto +amlogic_thermal +amplc_dio200 +amplc_dio200_common +amplc_dio200_pci +amplc_pc236 +amplc_pc236_common +amplc_pc263 +amplc_pci224 +amplc_pci230 +amplc_pci236 +amplc_pci263 +ams-iaq-core +ams369fg06 +analog +analogix-anx6345 +analogix-anx78xx +analogix_dp +anatop-regulator +ansi_cprng +anubis +anybuss_core +ao-cec +ao-cec-g12a +aoe +apbps2 +apcs-msm8916 +apds9300 +apds9802als +apds990x +apds9960 +apple-mfi-fastcharge +appledisplay +appletalk +appletouch +applicom +apr +aptina-pll +aqc111 +aquantia +ar1021_i2c +ar5523 +ar7part +ar9331 +arasan-nand-controller +arc-rawmode +arc-rimi +arc4 +arc_emac +arc_ps2 +arc_uart +arcmsr +arcnet +arcpgu +arcx-anybus +arcxcnn_bl +arizona-haptics +arizona-i2c +arizona-ldo1 +arizona-micsupp +arizona-spi +ark3116 +arkfb +arm_mhu +arm_scpi +arm_smc_wdt +armada +armada-37xx-cpufreq +armada-37xx-rwtm-mailbox +armada-8k-cpufreq +armada_37xx_wdt +arp_tables +arpt_mangle +arptable_filter +artpec6_crypto +as102_fe +as370-hwmon +as3711-regulator +as3711_bl +as3722-regulator +as3935 +as5011 +asc7621 +ascot2e +ashmem_linux +asix +aspeed-lpc-ctrl +aspeed-lpc-snoop +aspeed-p2a-ctrl +aspeed-pwm-tacho +aspeed-smc +aspeed-vhub +aspeed-video +aspeed_adc +aspeed_gfx +ast +asym_tpm +async_memcpy +async_pq +async_raid6_recov +async_tx +async_xor +at24 +at25 +at76c50x-usb +at803x +at86rf230 +ata_generic +ata_piix +atbm8830 +aten +ath +ath10k_core +ath10k_pci +ath10k_sdio +ath10k_snoc +ath10k_usb +ath11k +ath3k +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 +atlas-ezo-sensor +atlas-sensor +atm +atmel +atmel-ecc +atmel-flexcom +atmel-hlcdc +atmel-hlcdc-dc +atmel-i2c +atmel-sha204a +atmel_captouch +atmel_mxt_ts +atmel_pci +atmtcp +atp870u +atusb +atxp1 +aty128fb +atyfb +au0828 +au8522_common +au8522_decoder +au8522_dig +aufs +auo-pixcir-ts +auth_rpcgss +authenc +authencesn +autofs4 +avmfritz +ax25 +ax88179_178a +ax88796 +ax88796b +axg-audio +axi-fan-control +axis-fifo +axp20x +axp20x-i2c +axp20x-pek +axp20x-regulator +axp20x_ac_power +axp20x_adc +axp20x_battery +axp20x_usb_power +axp288_adc +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 +bL_switcher_dummy_if +bam_dma +bareudp +batman-adv +baycom_epp +baycom_par +baycom_ser_fdx +baycom_ser_hdx +bcache +bcm-keypad +bcm-phy-lib +bcm-sf2 +bcm203x +bcm3510 +bcm47xxsflash +bcm54140 +bcm590xx +bcm590xx-regulator +bcm5974 +bcm63138_nand +bcm6368_nand +bcm63xx_uart +bcm7xxx +bcm87xx +bcma +bcmsysport +bd6107 +bd70528-charger +bd70528-regulator +bd70528_wdt +bd71828-regulator +bd718x7-regulator +bd9571mwv +bd9571mwv-regulator +bd99954-charger +bdc +be2iscsi +be2net +befs +bel-pfe +belkin_sa +berlin2-adc +bfa +bfq +bfs +bfusb +bh1750 +bh1770glc +bh1780 +binder_linux +binfmt_misc +blake2b_generic +blake2s_generic +block2mtd +blocklayoutdriver +blowfish_common +blowfish_generic +bluetooth +bluetooth_6lowpan +bma150 +bma220_spi +bma400_core +bma400_i2c +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 +bmi160_core +bmi160_i2c +bmi160_spi +bmp280 +bmp280-i2c +bmp280-spi +bna +bnep +bnx2 +bnx2fc +bnx2i +bnx2x +bnxt_en +bochs-drm +bonding +bpa10x +bpck +bpck6 +bpfilter +bpqether +bq2415x_charger +bq24190_charger +bq24257_charger +bq24735-charger +bq25890_charger +bq27xxx_battery +bq27xxx_battery_hdq +bq27xxx_battery_i2c +br2684 +br_netfilter +brcmfmac +brcmnand +brcmsmac +brcmstb_nand +brcmutil +brd +bridge +broadcom +bsd_comp +bt-bmc +bt819 +bt856 +bt866 +bt878 +btbcm +btcoexist +btintel +btmrvl +btmrvl_sdio +btmtksdio +btmtkuart +btqca +btqcomsmd +btrfs +btrsi +btrtl +btsdio +bttv +btusb +bu21013_ts +bu21029_ts +budget +budget-av +budget-ci +budget-core +budget-patch +c67x00 +c6xdigio +c_can +c_can_pci +c_can_platform +ca8210 +caam +caam_jr +caamalg_desc +caamhash_desc +cachefiles +cadence-nand-controller +cadence-quadspi +cadence_wdt +cafe_ccic +cafe_nand +caif +caif_hsi +caif_serial +caif_socket +caif_usb +caif_virtio +camcc-sdm845 +camellia_generic +can +can-bcm +can-dev +can-gw +can-j1939 +can-raw +cap11xx +capmode +capsule-loader +carl9170 +carminefb +cassini +cast5_generic +cast6_generic +cast_common +catc +cb710 +cb710-mmc +cb_pcidas +cb_pcidas64 +cb_pcidda +cb_pcimdas +cb_pcimdda +cc10001_adc +cc2520 +cc770 +cc770_isa +cc770_platform +ccm +ccree +ccs811 +cctrng +cdc-acm +cdc-phonet +cdc-wdm +cdc_eem +cdc_ether +cdc_mbim +cdc_ncm +cdc_subset +cdns-csi2rx +cdns-csi2tx +cdns-dphy +cdns-dsi +cdns-pltfrm +cdns3 +cdns3-imx +cec +ceph +cfb +cfg80211 +cfi_cmdset_0001 +cfi_cmdset_0002 +cfi_cmdset_0020 +cfi_probe +cfi_util +cfspi_slave +ch +ch341 +ch7006 +ch9200 +chacha-neon +chacha20poly1305 +chacha_generic +chaoskey +charlcd +chcr +chipone_icn8318 +chnl_net +chrontel-ch7033 +ci_hdrc +ci_hdrc_imx +ci_hdrc_msm +ci_hdrc_pci +ci_hdrc_tegra +ci_hdrc_usb2 +cicada +cifs +cirrus +cirrusfb +clip +clk-bd718x7 +clk-cdce706 +clk-cdce925 +clk-cs2000-cp +clk-exynos-audss +clk-hi3519 +clk-hi655x +clk-lochnagar +clk-max77686 +clk-max9485 +clk-palmas +clk-phase +clk-pwm +clk-qcom +clk-rk808 +clk-rpm +clk-s2mps11 +clk-scmi +clk-scpi +clk-si514 +clk-si5341 +clk-si5351 +clk-si544 +clk-si570 +clk-smd-rpm +clk-spmi-pmic-div +clk-twl6040 +clk-versaclock5 +clk-wm831x +cls_basic +cls_bpf +cls_cgroup +cls_flow +cls_flower +cls_fw +cls_matchall +cls_route +cls_rsvp +cls_rsvp6 +cls_tcindex +cls_u32 +cm109 +cm32181 +cm3232 +cm3323 +cm3605 +cm36651 +cma3000_d0x +cma3000_d0x_i2c +cmac +cmt_speech +cmtp +cnic +cobra +coda +coda-vpu +colibri-vf50-ts +com20020 +com20020-pci +com90io +com90xx +comedi +comedi_8254 +comedi_8255 +comedi_bond +comedi_parport +comedi_pci +comedi_test +comedi_usb +comm +contec_pci_dio +cordic +core +cortina +counter +cp210x +cpcap-adc +cpcap-battery +cpcap-charger +cpcap-pwrbutton +cpcap-regulator +cpia2 +cppi41 +cramfs +crc-itu-t +crc32-arm-ce +crc32_generic +crc4 +crc64 +crc7 +crc8 +crct10dif-arm-ce +crg-hi3516cv300 +crg-hi3798cv200 +cros-ec-cec +cros-ec-sensorhub +cros_ec +cros_ec_accel_legacy +cros_ec_baro +cros_ec_chardev +cros_ec_debugfs +cros_ec_dev +cros_ec_i2c +cros_ec_keyb +cros_ec_lid_angle +cros_ec_light_prox +cros_ec_lightbar +cros_ec_rpmsg +cros_ec_sensors +cros_ec_sensors_core +cros_ec_spi +cros_ec_sysfs +cros_ec_typec +cros_ec_vbc +cros_usbpd-charger +cros_usbpd_logger +cros_usbpd_notify +cryptd +crypto_engine +crypto_safexcel +crypto_simd +crypto_user +cryptoloop +cs3308 +cs5345 +cs53l32a +cs89x0 +csiostor +curve25519-generic +curve25519-neon +cuse +cw1200_core +cw1200_wlan_sdio +cw1200_wlan_spi +cw2015_battery +cx18 +cx18-alsa +cx22700 +cx22702 +cx231xx +cx231xx-alsa +cx231xx-dvb +cx2341x +cx23885 +cx24110 +cx24113 +cx24116 +cx24117 +cx24120 +cx24123 +cx25821 +cx25821-alsa +cx25840 +cx82310_eth +cx88-alsa +cx88-blackbird +cx88-dvb +cx88-vp3054-i2c +cx8800 +cx8802 +cx88xx +cxacru +cxd2099 +cxd2820r +cxd2841er +cxd2880 +cxd2880-spi +cxgb +cxgb3 +cxgb3i +cxgb4 +cxgb4i +cxgb4vf +cxgbit +cy8ctma140 +cy8ctmg110_ts +cyapatp +cyber2000fb +cyberjack +cyclades +cypress_cy7c63 +cypress_firmware +cypress_m8 +cytherm +cyttsp4_core +cyttsp4_i2c +cyttsp4_spi +cyttsp_core +cyttsp_i2c +cyttsp_i2c_common +cyttsp_spi +da280 +da311 +da8xx-fb +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-thermal +da9062_wdt +da9063-regulator +da9063_onkey +da9063_wdt +da9150-charger +da9150-core +da9150-fg +da9150-gpadc +da9210-regulator +da9211-regulator +dac02 +daqboard2000 +das08 +das08_isa +das08_pci +das16 +das16m1 +das1800 +das6402 +das800 +davicom +db9 +dc395x +dccp +dccp_diag +dccp_ipv4 +dccp_ipv6 +ddbridge +ddbridge-dummy-fe +de2104x +decnet +defxx +denali +denali_dt +denali_pci +des_generic +designware_i2s +dfl +dfl-afu +dfl-fme +dfl-fme-br +dfl-fme-mgr +dfl-fme-region +dfl-pci +dht11 +diag +dib0070 +dib0090 +dib3000mb +dib3000mc +dib7000m +dib7000p +dib8000 +dib9000 +dibx000_common +digi_acceleport +digicolor-usart +diskonchip +dispcc-sc7180 +dispcc-sdm845 +display-connector +dl2k +dlci +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-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 +dm9000 +dm9601 +dmard06 +dmard09 +dmard10 +dme1737 +dmfe +dmi-sysfs +dmm32at +dmx3191d +dn_rtmsg +dnet +dove_thermal +dp83640 +dp83822 +dp83848 +dp83867 +dp83869 +dp83tc811 +dpot-dac +dps310 +drbd +drivetemp +drm +drm_kms_helper +drm_mipi_dbi +drm_ttm_helper +drm_vram_helper +drv260x +drv2665 +drv2667 +drx39xyj +drxd +drxk +ds1621 +ds1682 +ds1803 +ds1wm +ds2482 +ds2490 +ds2760_battery +ds2780_battery +ds2781_battery +ds2782_battery +ds3000 +ds4424 +ds620 +dsa_core +dsbr100 +dst +dst_ca +dstr +dt2801 +dt2811 +dt2814 +dt2815 +dt2817 +dt282x +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-axi-dmac-platform +dw-edma +dw-edma-pcie +dw-hdmi +dw-hdmi-ahb-audio +dw-hdmi-cec +dw-hdmi-i2s-audio +dw-i3c-master +dw-mipi-dsi +dw9714 +dw9807-vcm +dw_dmac +dw_dmac_core +dw_dmac_pci +dw_hdmi-imx +dw_mipi_dsi-stm +dw_mmc +dw_mmc-bluefield +dw_mmc-exynos +dw_mmc-hi3798cv200 +dw_mmc-k3 +dw_mmc-pci +dw_mmc-pltfm +dw_mmc-rockchip +dw_wdt +dwc-xlgmac +dwc3 +dwc3-exynos +dwc3-haps +dwc3-meson-g12a +dwc3-of-simple +dwc3-omap +dwc3-qcom +dwmac-dwc-qos-eth +dwmac-generic +dwmac-imx +dwmac-ipq806x +dwmac-mediatek +dwmac-meson +dwmac-meson8b +dwmac-qcom-ethqos +dwmac-rk +dyna_pci10xx +dynapro +e100 +e1000 +e1000e +e3x0-button +e4000 +earth-pt1 +earth-pt3 +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 +ecc +ecdh_generic +echainiv +echo +ecrdsa_generic +edt-ft5x06 +ee1004 +eeprom +eeprom_93cx6 +eeprom_93xx46 +eeti_ts +efi-pstore +efi_test +efibc +efs +egalax_ts +egalax_ts_serial +ehci-fsl +ehci-mxc +ehci-npcm7xx +ehci-omap +ehci-tegra +ehset +ektf2127 +elan_i2c +elants_i2c +elo +em28xx +em28xx-alsa +em28xx-dvb +em28xx-rc +em28xx-v4l +em_canid +em_cmp +em_ipset +em_ipt +em_meta +em_nbyte +em_text +em_u32 +emac_rockchip +emc1403 +emc2103 +emc6w201 +emi26 +emi62 +emif +empeg +ems_pci +ems_usb +emu10k1-gp +ena +enc28j60 +enclosure +encx24j600 +encx24j600-regmap +eni +enic +envelope-detector +epat +epia +epic100 +eql +erofs +error +esas2r +esd_usb2 +esp4 +esp4_offload +esp6 +esp6_offload +esp_scsi +essiv +et1011c +et131x +et8ek8 +ethoc +etnaviv +evbug +exc3000 +exfat +extcon-adc-jack +extcon-arizona +extcon-fsa9480 +extcon-gpio +extcon-max14577 +extcon-max3355 +extcon-max77693 +extcon-max77843 +extcon-max8997 +extcon-palmas +extcon-ptn5150 +extcon-qcom-spmi-misc +extcon-rt8973a +extcon-sm5502 +extcon-usb-gpio +extcon-usbc-cros-ec +exynos-gsc +exynos-lpass +exynos-rng +exynos-trng +exynos5422-dmc +exynos_adc +exynosdrm +ezusb +f2fs +f71805f +f71882fg +f75375s +f81232 +f81534 +f81601 +failover +fakelb +fan53555 +farsync +fastrpc +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_sys_fops +fb_tinylcd +fb_tls8204 +fb_uc1611 +fb_uc1701 +fb_upd161704 +fb_watterott +fbtft +fc0011 +fc0012 +fc0013 +fc2580 +fcoe +fcrypt +fdomain +fdomain_pci +fdp +fdp_i2c +fealnx +ff-memless +fieldbus_dev +firedtv +firewire-core +firewire-net +firewire-ohci +firewire-sbp2 +firewire-serial +fit2 +fit3 +fl512 +flexcan +fm10k +fm801-gp +fm_drv +forcedeth +fore_200e +fotg210-hcd +fotg210-udc +fou +fou6 +fpga-bridge +fpga-mgr +fpga-region +freevxfs +friq +frpw +fscache +fsi-core +fsi-master-aspeed +fsi-master-ast-cf +fsi-master-gpio +fsi-master-hub +fsi-occ +fsi-sbefifo +fsi-scom +fsia6b +fsl-dcu-drm +fsl-edma +fsl-edma-common +fsl-enetc +fsl-enetc-mdio +fsl-enetc-ptp +fsl-enetc-vf +fsl-mph-dr-of +fsl-qdma +fsl_imx8_ddr_perf +fsl_linflexuart +fsl_lpuart +fsl_pq_mdio +fsl_ucc_hdlc +fsl_usb2_udc +ftdi-elan +ftdi_sio +ftgmac100 +ftl +ftm-quaddec +ftmac100 +ftsteutates +ftwdt010_wdt +fujitsu_ts +fusb300_udc +fusb302 +fxas21002c_core +fxas21002c_i2c +fxas21002c_spi +fxos8700_core +fxos8700_i2c +fxos8700_spi +g450_pll +g760a +g762 +g_acm_ms +g_audio +g_cdc +g_dbgp +g_ether +g_ffs +g_hid +g_mass_storage +g_midi +g_multi +g_ncm +g_nokia +g_printer +g_serial +g_webcam +g_zero +gadgetfs +gamecon +gameport +garmin_gps +garp +gateworks-gsc +gb-audio-apbridgea +gb-audio-gb +gb-audio-manager +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 +gcc-apq8084 +gcc-ipq4019 +gcc-ipq6018 +gcc-ipq806x +gcc-ipq8074 +gcc-mdm9615 +gcc-msm8660 +gcc-msm8916 +gcc-msm8939 +gcc-msm8960 +gcc-msm8974 +gcc-msm8994 +gcc-msm8996 +gcc-msm8998 +gcc-qcs404 +gcc-sc7180 +gcc-sdm660 +gcc-sdm845 +gcc-sm8150 +gcc-sm8250 +gdmtty +gdmulte +gdth +gemini +gen_probe +generic +generic-adc-battery +generic_bl +genet +geneve +gf2k +gfs2 +ghash-arm-ce +gianfar_driver +gl518sm +gl520sm +gl620a +gluebi +gm12u320 +gnss +gnss-mtk +gnss-serial +gnss-sirf +gnss-ubx +go7007 +go7007-loader +go7007-usb +goku_udc +goodix +gp2ap002 +gp2ap020a00f +gp8psk-fe +gpio +gpio-74x164 +gpio-74xx-mmio +gpio-adnp +gpio-adp5520 +gpio-adp5588 +gpio-aggregator +gpio-altera +gpio-amd-fch +gpio-arizona +gpio-aspeed +gpio-bd70528 +gpio-bd71828 +gpio-bd9571mwv +gpio-beeper +gpio-cadence +gpio-charger +gpio-da9052 +gpio-da9055 +gpio-dln2 +gpio-dwapb +gpio-exar +gpio-fan +gpio-grgpio +gpio-gw-pld +gpio-hlwd +gpio-ir-recv +gpio-ir-tx +gpio-janz-ttl +gpio-kempld +gpio-logicvc +gpio-lp3943 +gpio-lp873x +gpio-lp87565 +gpio-madera +gpio-max3191x +gpio-max7300 +gpio-max7301 +gpio-max730x +gpio-max732x +gpio-max77620 +gpio-max77650 +gpio-mb86s7x +gpio-mc33880 +gpio-menz127 +gpio-moxtet +gpio-pca953x +gpio-pcf857x +gpio-pci-idio-16 +gpio-pcie-idio-24 +gpio-pisosr +gpio-rcar +gpio-rdc321x +gpio-regulator +gpio-sama5d2-piobu +gpio-siox +gpio-syscon +gpio-tpic2810 +gpio-tps65086 +gpio-tps65218 +gpio-tps65912 +gpio-tqmx86 +gpio-ts4800 +gpio-ts4900 +gpio-ucb1400 +gpio-uniphier +gpio-vibra +gpio-viperboard +gpio-wcd934x +gpio-wm831x +gpio-wm8350 +gpio-wm8994 +gpio-xra1403 +gpio_backlight +gpio_decoder +gpio_keys +gpio_keys_polled +gpio_mouse +gpio_wdt +gpmi_nand +gpu-sched +gpucc-msm8998 +gpucc-sc7180 +gpucc-sdm845 +gr_udc +grace +grcan +gre +greybus +grip +grip_mp +gs1662 +gs_fpga +gs_usb +gsc-hwmon +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 +gtco +gtp +guillemot +gunze +gve +habanalabs +hackrf +hamachi +hampshire +hantro-vpu +hanwang +hci +hci_nokia +hci_uart +hci_vhci +hclge +hclgevf +hd3ss3220 +hd44780 +hdc100x +hdlc +hdlc_cisco +hdlc_fr +hdlc_ppp +hdlc_raw +hdlc_raw_eth +hdlc_x25 +hdlcd +hdlcdrv +hdma +hdma_mgmt +hdpvr +he +helene +hexium_gemini +hexium_orion +hfcmulti +hfcpci +hfcsusb +hfpll +hfs +hfsplus +hi311x +hi3660-mailbox +hi556 +hi6210-i2s +hi6220-mailbox +hi6220_reset +hi6421-pmic-core +hi6421-regulator +hi6421v530-regulator +hi655x-pmic +hi655x-regulator +hi8435 +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-ezkey +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-icade +hid-ite +hid-jabra +hid-kensington +hid-keytouch +hid-kye +hid-lcpower +hid-led +hid-lenovo +hid-lg-g15 +hid-logitech +hid-logitech-dj +hid-logitech-hidpp +hid-macally +hid-magicmouse +hid-maltron +hid-mcp2221 +hid-mf +hid-microsoft +hid-monterey +hid-multitouch +hid-nti +hid-ntrig +hid-ortek +hid-penmount +hid-petalynx +hid-picolcd +hid-pl +hid-plantronics +hid-primax +hid-prodikeys +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-sensor-accel-3d +hid-sensor-als +hid-sensor-custom +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-sjoy +hid-sony +hid-speedlink +hid-steam +hid-steelseries +hid-sunplus +hid-tivo +hid-tmff +hid-topseed +hid-twinhan +hid-u2fzero +hid-uclogic +hid-udraw-ps3 +hid-viewsonic +hid-waltop +hid-wiimote +hid-xinmo +hid-zpff +hid-zydacron +hideep +hidp +hifn_795x +highbank-cpufreq +highbank_l2_edac +highbank_mc_edac +hih6130 +hip04_eth +hisi-rng +hisi-sfc +hisi504_nand +hisi_femac +hisi_powerkey +hisi_thermal +hix5hd2_gmac +hmc425a +hmc5843_core +hmc5843_i2c +hmc5843_spi +hmc6352 +hms-profinet +hnae +hnae3 +hns_dsaf +hns_enet_drv +hns_mdio +hopper +horus3a +host1x +hostap +hostap_pci +hostap_plx +hp03 +hp206c +hpfs +hpilo +hpsa +hptiop +hsi +hsi_char +hso +hsr +ht16k33 +htc-pasic3 +hts221 +hts221_i2c +hts221_spi +htu21 +huawei_cdc_ncm +hwmon-vid +hx711 +hx8357 +hx8357d +hyperbus-core +i2400m +i2400m-usb +i2c-algo-bit +i2c-algo-pca +i2c-ali1535 +i2c-ali1563 +i2c-ali15x3 +i2c-amd756 +i2c-amd8111 +i2c-arb-gpio-challenge +i2c-aspeed +i2c-cbus-gpio +i2c-cros-ec-tunnel +i2c-demux-pinctrl +i2c-designware-pci +i2c-diolan-u2c +i2c-dln2 +i2c-emev2 +i2c-exynos5 +i2c-fsi +i2c-gpio +i2c-hid +i2c-hix5hd2 +i2c-i801 +i2c-imx-lpi2c +i2c-isch +i2c-kempld +i2c-matroxfb +i2c-meson +i2c-mt65xx +i2c-mux +i2c-mux-gpio +i2c-mux-gpmux +i2c-mux-ltc4306 +i2c-mux-mlxcpld +i2c-mux-pca9541 +i2c-mux-pca954x +i2c-mux-pinctrl +i2c-mux-reg +i2c-mv64xxx +i2c-nforce2 +i2c-nomadik +i2c-npcm7xx +i2c-nvidia-gpu +i2c-ocores +i2c-owl +i2c-parport +i2c-pca-platform +i2c-piix4 +i2c-pxa +i2c-qcom-cci +i2c-qcom-geni +i2c-qup +i2c-rcar +i2c-riic +i2c-rk3x +i2c-robotfuzz-osif +i2c-sh_mobile +i2c-simtec +i2c-sis5595 +i2c-sis630 +i2c-sis96x +i2c-slave-eeprom +i2c-smbus +i2c-stub +i2c-taos-evm +i2c-tegra +i2c-tegra-bpmp +i2c-tiny-usb +i2c-versatile +i2c-via +i2c-viapro +i2c-viperboard +i2c-xiic +i3c +i3c-master-cdns +i40e +i40iw +i5k_amb +i6300esb +i740fb +iavf +ib_cm +ib_core +ib_ipoib +ib_iser +ib_isert +ib_mthca +ib_srp +ib_srpt +ib_umad +ib_uverbs +ibm-cffps +ibmaem +ibmpex +icc-osm-l3 +icc-smd-rpm +ice +ice40-spi +icp10100 +icp_multi +icplus +ics932s401 +idma64 +idmouse +idt77252 +idt_89hpesx +idt_gen2 +idt_gen3 +idtcps +ieee802154 +ieee802154_6lowpan +ieee802154_socket +ifb +ifcvf +ife +ifi_canfd +iforce +iforce-serio +iforce-usb +igb +igbvf +igc +igorplugusb +iguanair +ii_pci20kc +iio-mux +iio-rescale +iio-trig-hrtimer +iio-trig-interrupt +iio-trig-loop +iio-trig-sysfs +iio_dummy +iio_hwmon +ila +ili210x +ili9225 +ili922x +ili9320 +ili9341 +ili9486 +img-ascii-lcd +img-i2s-in +img-i2s-out +img-parallel-out +img-spdif-in +img-spdif-out +imm +imon +imon_raw +impa7 +ims-pcu +imx-bus +imx-cpufreq-dt +imx-dma +imx-dsp +imx-interconnect +imx-ipu-v3 +imx-ldb +imx-mailbox +imx-media-common +imx-pxp +imx-sdma +imx-tve +imx-vdoa +imx21-hcd +imx214 +imx219 +imx258 +imx274 +imx290 +imx2_wdt +imx319 +imx355 +imx6-media +imx6-media-csi +imx6-mipi-csi2 +imx6q-cpufreq +imx6ul_tsc +imx7-media-csi +imx7-mipi-csis +imx7d_adc +imx7ulp_wdt +imx8m-ddrc +imx8mm-interconnect +imx8mm_thermal +imx8mn-interconnect +imx8mq-interconnect +imx_keypad +imx_rproc +imx_sc_key +imx_sc_thermal +imx_sc_wdt +imx_thermal +imxdrm +imxfb +ina209 +ina2xx +ina2xx-adc +ina3221 +industrialio +industrialio-buffer-cb +industrialio-buffer-dma +industrialio-buffer-dmaengine +industrialio-configfs +industrialio-hw-consumer +industrialio-sw-device +industrialio-sw-trigger +industrialio-triggered-buffer +industrialio-triggered-event +inet_diag +inexio +inftl +initio +input-leds +input-polldev +inspur-ipsps +int51x1 +intel-xway +intel_th +intel_th_gth +intel_th_msu +intel_th_msu_sink +intel_th_pci +intel_th_pti +intel_th_sth +intel_vr_nor +interact +inv-mpu6050 +inv-mpu6050-i2c +inv-mpu6050-spi +io_edgeport +io_ti +iova +iowarrior +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_wlc +ip_vs_wrr +ip_vti +ipack +ipaq +ipcomp +ipcomp6 +iphase +ipheth +ipip +ipmb_dev_int +ipmi_devintf +ipmi_msghandler +ipmi_poweroff +ipmi_si +ipmi_ssif +ipmi_watchdog +ipoctal +ipr +iproc_nand +ips +ipt_CLUSTERIP +ipt_ECN +ipt_REJECT +ipt_SYNPROXY +ipt_ah +ipt_rpfilter +iptable_filter +iptable_mangle +iptable_nat +iptable_raw +iptable_security +ipvlan +ipvtap +ipw +ipw2100 +ipw2200 +iqs269a +iqs5xx +iqs620at-temp +iqs621-als +iqs624-pos +iqs62x +iqs62x-keys +ir-hix5hd2 +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-rx51 +ir-sanyo-decoder +ir-sharp-decoder +ir-sony-decoder +ir-spi +ir-usb +ir-xmp-decoder +ir35221 +ir38064 +irps5401 +irq-madera +irq-ts4800 +irqbypass +iscsi_boot_sysfs +iscsi_target_mod +iscsi_tcp +isdnhdlc +isicom +isight_firmware +isl29003 +isl29018 +isl29020 +isl29028 +isl29125 +isl29501 +isl6271a-regulator +isl6405 +isl6421 +isl6423 +isl68137 +isl9305 +isofs +isp116x-hcd +isp1704_charger +isp1760 +it87 +it913x +itd1000 +itg3200 +iuu_phoenix +ivtv +ivtv-alsa +ivtvfb +iw_cm +iw_cxgb4 +iwl3945 +iwl4965 +iwldvm +iwlegacy +iwlmvm +iwlwifi +ix2505v +ixgb +ixgbe +ixgbevf +janz-cmodio +janz-ican3 +jc42 +jedec_probe +jffs2 +jfs +jmb38x_ms +jme +joydev +joydump +jr3_pci +jsa1212 +jsm +k3dma +kafs +kalmia +kaweth +kbic +kbtab +kcm +kcomedilib +kcs_bmc +kcs_bmc_aspeed +kcs_bmc_npcm7xx +ke_counter +kempld-core +kempld_wdt +kernelcapi +keyspan +keyspan_pda +keyspan_remote +keywrap +kfifo_buf +khazad +kheaders +kl5kusb105 +kmx61 +kobil_sct +komeda +kpc2000 +kpc2000_i2c +kpc2000_spi +kpc_dma +kpss-xcc +krait-cc +ks0108 +ks0127 +ks7010 +ks8842 +ks8851 +ks8851_mll +ksz8795 +ksz8795_spi +ksz884x +ksz9477 +ksz9477_i2c +ksz9477_spi +ksz_common +ktti +kvaser_pci +kvaser_pciefd +kvaser_usb +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 +l4f00242t03 +l64781 +lan743x +lan78xx +lan9303-core +lan9303_i2c +lan9303_mdio +lanai +lantiq_gswip +lapb +lapbether +lattice-ecp3-config +lcc-ipq806x +lcc-mdm9615 +lcc-msm8960 +lcd +ldusb +lec +led-class-flash +led_bl +leds-88pm860x +leds-aat1290 +leds-adp5520 +leds-an30259a +leds-as3645a +leds-aw2013 +leds-bcm6328 +leds-bcm6358 +leds-bd2802 +leds-blinkm +leds-cpcap +leds-cr0014114 +leds-da903x +leds-da9052 +leds-dac124s085 +leds-el15203000 +leds-gpio +leds-is31fl319x +leds-is31fl32xx +leds-ktd2692 +leds-lm3530 +leds-lm3532 +leds-lm3533 +leds-lm355x +leds-lm3601x +leds-lm36274 +leds-lm3642 +leds-lm3692x +leds-lm3697 +leds-lp3944 +leds-lp3952 +leds-lp5521 +leds-lp5523 +leds-lp5562 +leds-lp55xx-common +leds-lp8501 +leds-lp8788 +leds-lp8860 +leds-lt3593 +leds-max77650 +leds-max77693 +leds-max8997 +leds-mc13783 +leds-menf21bmc +leds-mlxreg +leds-mt6323 +leds-ns2 +leds-pca9532 +leds-pca955x +leds-pca963x +leds-pm8058 +leds-pwm +leds-regulator +leds-sgm3140 +leds-spi-byte +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-gpio +ledtrig-heartbeat +ledtrig-netdev +ledtrig-oneshot +ledtrig-pattern +ledtrig-timer +ledtrig-transient +ledtrig-usbport +lego_ev3_battery +legousbtower +lg-vl600 +lg2160 +lgdt3305 +lgdt3306a +lgdt330x +lgs8gl5 +lgs8gxx +lib80211 +lib80211_crypt_ccmp +lib80211_crypt_tkip +lib80211_crypt_wep +libarc4 +libblake2s +libblake2s-generic +libceph +libchacha +libchacha20poly1305 +libcomposite +libcrc32c +libcurve25519 +libcurve25519-generic +libcxgb +libcxgbi +libdes +libertas +libertas_sdio +libertas_spi +libertas_tf +libertas_tf_usb +libfc +libfcoe +libipw +libiscsi +libiscsi_tcp +libpoly1305 +libsas +lightning +lima +lineage-pem +linear +lis3lv02d +lis3lv02d_i2c +lis3lv02d_spi +lkkbd +ll_temac +llc +llc2 +llcc-qcom +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 +lochnagar-hwmon +lochnagar-regulator +lockd +lp +lp3943 +lp3971 +lp3972 +lp855x_bl +lp8727_charger +lp872x +lp873x +lp873x-regulator +lp8755 +lp87565 +lp87565-regulator +lp8788-buck +lp8788-charger +lp8788-ldo +lp8788_adc +lp8788_bl +lpasscc-sdm845 +lpc_ich +lpc_sch +lpddr2_nvm +lpddr_cmds +lpfc +lru_cache +lrw +lt3651-charger +ltc1660 +ltc2471 +ltc2485 +ltc2496 +ltc2497 +ltc2497-core +ltc2632 +ltc2941-battery-gauge +ltc2945 +ltc2947-core +ltc2947-i2c +ltc2947-spi +ltc2978 +ltc2983 +ltc2990 +ltc3589 +ltc3676 +ltc3815 +ltc4151 +ltc4215 +ltc4222 +ltc4245 +ltc4260 +ltc4261 +ltr501 +ltv350qv +lv0104cs +lv5207lp +lvds-codec +lvstest +lxt +lz4 +lz4hc +lz4hc_compress +m2m-deinterlace +m52790 +m5mols +m62332 +m88ds3103 +m88rs2000 +m88rs6000t +mISDN_core +mISDN_dsp +mISDNinfineon +mISDNipac +mISDNisar +m_can +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 +macb +macb_pci +machxo2-spi +macmodes +macsec +macvlan +macvtap +madera +madera-i2c +madera-spi +mag3110 +magellan +mailbox-altera +mailbox-test +mali-dp +mantis +mantis_core +map_absent +map_ram +map_rom +marvell +marvell-cesa +marvell10g +marvell_nand +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 +max11801_ts +max1241 +max1363 +max14577-regulator +max14577_charger +max14656_charger_detector +max1586 +max16064 +max16065 +max1619 +max16601 +max1668 +max17040_battery +max17042_battery +max1721x_battery +max197 +max20730 +max20751 +max2165 +max2175 +max30100 +max30102 +max3100 +max31722 +max31730 +max31785 +max31790 +max31856 +max3420_udc +max3421-hcd +max34440 +max44000 +max44009 +max517 +max5432 +max5481 +max5487 +max5821 +max63xx_wdt +max6621 +max6639 +max6642 +max6650 +max6697 +max6875 +max7359_keypad +max77620-regulator +max77620_thermal +max77620_wdt +max77650 +max77650-charger +max77650-onkey +max77650-regulator +max77686-regulator +max77693-haptic +max77693-regulator +max77693_charger +max77802-regulator +max77826-regulator +max8649 +max8660 +max8688 +max8903_charger +max8907 +max8907-regulator +max8925-regulator +max8925_bl +max8925_onkey +max8925_power +max8952 +max8973-regulator +max8997-regulator +max8997_charger +max8997_haptic +max8998 +max8998_charger +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 +mc44s803 +mcam-core +mcb +mcb-lpc +mcb-pci +mcba_usb +mcde_drm +mceusb +mchp23k256 +mcp16502 +mcp251x +mcp3021 +mcp320x +mcp3422 +mcp3911 +mcp4018 +mcp41010 +mcp4131 +mcp4531 +mcp4725 +mcp4922 +mcr20a +mcs5000_ts +mcs7830 +mcs_touchkey +mct_u232 +md-cluster +md4 +mdc800 +mdev +mdio +mdio-aspeed +mdio-bcm-unimac +mdio-bitbang +mdio-gpio +mdio-hisi-femac +mdio-i2c +mdio-ipq4019 +mdio-ipq8064 +mdio-mscc-miim +mdio-mux +mdio-mux-gpio +mdio-mux-meson-g12a +mdio-mux-mmioreg +mdio-mux-multiplexer +mdio-mvusb +mdio-xpcs +mdt_loader +me4000 +me_daq +mediatek +mediatek-cpufreq +mediatek-drm +mediatek-drm-hdmi +megachips-stdpxxxx-ge-b850v3-fw +megaraid +megaraid_mbox +megaraid_mm +megaraid_sas +melfas_mip4 +memstick +men_z135_uart +men_z188_adc +mena21_wdt +menf21bmc +menf21bmc_hwmon +menf21bmc_wdt +menz69_wdt +meson-canvas +meson-drm +meson-gx-mmc +meson-gxl +meson-ir +meson-mx-sdhc +meson-mx-sdio +meson-rng +meson-vdec +meson_dw_hdmi +meson_gxbb_wdt +meson_nand +meson_saradc +meson_wdt +metro-usb +metronomefb +mf6x4 +mgag200 +mhi +mi0283qt +michael_mic +micrel +microchip +microchip_t1 +microread +microread_i2c +microtek +mii +milbeaut-hdmac +milbeaut-xdmac +milbeaut_usio +minix +mip6 +mite +mk712 +mkiss +ml86v7667 +mlx4_core +mlx4_en +mlx4_ib +mlx5_core +mlx5_ib +mlx90614 +mlx90632 +mlx_wdt +mlxfw +mlxreg-fan +mlxreg-hotplug +mlxreg-io +mlxsw_core +mlxsw_i2c +mlxsw_minimal +mlxsw_pci +mlxsw_spectrum +mlxsw_switchib +mlxsw_switchx2 +mma7455_core +mma7455_i2c +mma7455_spi +mma7660 +mma8450 +mma8452 +mma9551 +mma9551_core +mma9553 +mmc35240 +mmc_spi +mmcc-apq8084 +mmcc-msm8960 +mmcc-msm8974 +mmcc-msm8996 +mmcc-msm8998 +mms114 +mn88443x +mn88472 +mn88473 +mos7720 +mos7840 +most_cdev +most_core +most_dim2 +most_i2c +most_net +most_sound +most_usb +most_video +motorola-cpcap +moxa +moxtet +mp2629 +mp2629_adc +mp2629_charger +mp5416 +mp8859 +mp886x +mpc624 +mpl115 +mpl115_i2c +mpl115_spi +mpl3115 +mpls_gso +mpls_iptunnel +mpls_router +mpoa +mpq7920 +mpr121_touchkey +mpt3sas +mptbase +mptctl +mptfc +mptlan +mptsas +mptscsih +mptspi +mpu3050 +mrf24j40 +mrp +ms5611_core +ms5611_i2c +ms5611_spi +ms5637 +ms_block +ms_sensors_i2c +mscc +mscc_ocelot_common +msdos +msi001 +msi2500 +msm +msp3400 +mspro_block +mss-sc7180 +mt2060 +mt2063 +mt20xx +mt2131 +mt2266 +mt312 +mt352 +mt6311-regulator +mt6323-regulator +mt6358-regulator +mt6360-core +mt6380-regulator +mt6397 +mt6397-regulator +mt6577_auxadc +mt6797-mt6351 +mt7530 +mt76 +mt76-usb +mt7601u +mt7603e +mt7615-common +mt7615e +mt7663u +mt76x0-common +mt76x02-lib +mt76x02-usb +mt76x0e +mt76x0u +mt76x2-common +mt76x2e +mt76x2u +mt7915e +mt8183-da7219-max98357 +mt8183-mt6358-ts3a227-max98357 +mt9m001 +mt9m032 +mt9m111 +mt9p031 +mt9t001 +mt9t112 +mt9v011 +mt9v032 +mt9v111 +mtd_dataflash +mtdoops +mtdpstore +mtdram +mtdswap +mtip32xx +mtk-btcvsd +mtk-cir +mtk-cmdq-helper +mtk-cmdq-mailbox +mtk-cqdma +mtk-crypto +mtk-hsdma +mtk-pmic-keys +mtk-pmic-wrap +mtk-rng +mtk-sd +mtk-uart-apdma +mtk-vpu +mtk_ecc +mtk_nand +mtk_rpmsg +mtk_scp +mtk_scp_ipi +mtk_thermal +mtk_wdt +mtouch +mtu3 +multipath +multiq3 +musb_dsps +mux-adg792a +mux-adgs1408 +mux-core +mux-gpio +mux-mmio +mv643xx_eth +mv88e6060 +mv88e6xxx +mv_u3d_core +mv_udc +mvmdio +mvneta +mvpp2 +mvsas +mvsdio +mvumi +mwifiex +mwifiex_pcie +mwifiex_sdio +mwifiex_usb +mwl8k +mxb +mxc4005 +mxc6255 +mxc_nand +mxc_w1 +mxcmmc +mxic_nand +mxl111sf-demod +mxl111sf-tuner +mxl301rf +mxl5005s +mxl5007t +mxl5xx +mxser +mxsfb +mxuport +myrb +myri10ge +myrs +n_gsm +n_hdlc +n_tracerouter +n_tracesink +nandsim +national +natsemi +nau7802 +navman +nb8800 +nbd +nbpfaxi +nci +nci_spi +nci_uart +nct6683 +nct6775 +nct7802 +nct7904 +ne2k-pci +neofb +net1080 +net2272 +net2280 +net_failover +netconsole +netdevsim +netjet +netlink_diag +netrom +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_flow_table_ipv4 +nf_flow_table_ipv6 +nf_log_arp +nf_log_bridge +nf_log_common +nf_log_ipv4 +nf_log_ipv6 +nf_log_netdev +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 +nfnetlink +nfnetlink_acct +nfnetlink_cthelper +nfnetlink_cttimeout +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_counter +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_objref +nft_osf +nft_queue +nft_quota +nft_redir +nft_reject +nft_reject_bridge +nft_reject_inet +nft_reject_ipv4 +nft_reject_ipv6 +nft_socket +nft_synproxy +nft_tproxy +nft_tunnel +nft_xfrm +nftl +ngene +nhc_dest +nhc_fragment +nhc_hop +nhc_ipv6 +nhc_mobility +nhc_routing +nhc_udp +nhpoly1305 +nhpoly1305-neon +ni_6527 +ni_65xx +ni_660x +ni_670x +ni_at_a2150 +ni_at_ao +ni_atmio +ni_atmio16d +ni_labpc +ni_labpc_common +ni_labpc_pci +ni_pcidio +ni_pcimio +ni_routing +ni_tio +ni_tiocmd +ni_usb6501 +nicstar +nilfs2 +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 +noa1305 +nokia-modem +noon010pc30 +nosy +notifier-error-inject +nouveau +nozomi +npcm-rng +npcm750-pwm-fan +npcm_adc +nps_enet +ns +ns558 +ns83820 +nsh +nsp32 +ntb +ntb_hw_idt +ntb_hw_switchtec +ntb_netdev +ntb_perf +ntb_pingpong +ntb_tool +ntb_transport +ntc_thermistor +ntfs +null_blk +nvec +nvec_kbd +nvec_paz00 +nvec_power +nvec_ps2 +nvidiafb +nvme +nvme-core +nvme-fabrics +nvme-fc +nvme-loop +nvme-rdma +nvme-tcp +nvmem-imx-iim +nvmem-imx-ocotp +nvmem-imx-ocotp-scu +nvmem-rave-sp-eeprom +nvmem-reboot-mode +nvmem-rockchip-otp +nvmem-uniphier-efuse +nvmem_meson_mx_efuse +nvmem_qcom-spmi-sdam +nvmem_qfprom +nvmem_rockchip_efuse +nvmem_snvs_lpgpr +nvmet +nvmet-fc +nvmet-rdma +nvmet-tcp +nwl-dsi +nxp-nci +nxp-nci_i2c +nxp-ptn3460 +nxp-tja11xx +nxt200x +nxt6000 +objagg +ocelot_vsc7514 +ocfb +ocfs2 +ocfs2_dlm +ocfs2_dlmfs +ocfs2_nodemanager +ocfs2_stack_o2cb +ocfs2_stack_user +ocfs2_stackglue +ocmem +ocrdma +of-fpga-region +of_mmc_spi +of_xilinx_wdt +ofb +ohci-platform +omap +omap-aes-driver +omap-crypto +omap-des +omap-mailbox +omap-ocp2scp +omap-rng +omap-sham +omap-vout +omap2430 +omap2fb +omap3-isp +omap3-rom-rng +omap4-iss +omap4-keypad +omap_hdq +omap_hwspinlock +omap_remoteproc +omap_ssi +omap_wdt +omapdss +omfs +omninet +on20 +on26 +onenand +onenand_omap2 +opencores-kbd +openvswitch +oprofile +opt3001 +optee +optee-rng +opticon +option +or51132 +or51211 +orangefs +orinoco +orinoco_nortel +orinoco_plx +orinoco_tmd +orinoco_usb +orion_nand +orion_wdt +oti6858 +otm3225a +ov13858 +ov2640 +ov2659 +ov2680 +ov2685 +ov2740 +ov5640 +ov5645 +ov5647 +ov5670 +ov5675 +ov5695 +ov6650 +ov7251 +ov7640 +ov7670 +ov772x +ov7740 +ov8856 +ov9640 +ov9650 +overlay +owl-dma +owl-mmc +oxu210hp-hcd +p54common +p54pci +p54spi +p54usb +p8022 +pa12203001 +palmas-pwrbutton +palmas-regulator +palmas_gpadc +pandora_bl +panel +panel-arm-versatile +panel-asus-z00t-tm5p5-n35596 +panel-boe-himax8279d +panel-boe-tv101wum-nl6 +panel-elida-kd35t133 +panel-feixin-k101-im2ba02 +panel-feiyang-fy07024di26a30d +panel-ilitek-ili9322 +panel-ilitek-ili9881c +panel-innolux-p079zca +panel-jdi-lt070me05000 +panel-kingdisplay-kd097d04 +panel-leadtek-ltk050h3146w +panel-leadtek-ltk500hd1829 +panel-lg-lb035q02 +panel-lg-lg4573 +panel-lvds +panel-nec-nl8048hl11 +panel-novatek-nt35510 +panel-novatek-nt39016 +panel-olimex-lcd-olinuxino +panel-orisetech-otm8009a +panel-osd-osd101t2587-53ts +panel-panasonic-vvx10f034n00 +panel-raspberrypi-touchscreen +panel-raydium-rm67191 +panel-raydium-rm68200 +panel-rocktech-jh057n00900 +panel-ronbo-rb070d30 +panel-samsung-ld9040 +panel-samsung-s6d16d0 +panel-samsung-s6e3ha2 +panel-samsung-s6e63j0x03 +panel-samsung-s6e63m0 +panel-samsung-s6e88a0-ams452ef01 +panel-samsung-s6e8aa0 +panel-seiko-43wvf1g +panel-sharp-lq101r1sx01 +panel-sharp-ls037v7dw01 +panel-sharp-ls043t1le01 +panel-simple +panel-sitronix-st7701 +panel-sitronix-st7789v +panel-sony-acx424akp +panel-sony-acx565akm +panel-tpo-td028ttec1 +panel-tpo-td043mtea1 +panel-tpo-tpg110 +panel-truly-nt35597 +panel-visionox-rm69299 +panel-xinpeng-xpp055c272 +panfrost +parade-ps8622 +parade-ps8640 +parallel-display +paride +parkbd +parman +parport +parport_ax88796 +parport_pc +parport_serial +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_imx +pata_it8213 +pata_it821x +pata_jmicron +pata_legacy +pata_marvell +pata_mpiix +pata_netcell +pata_ninja32 +pata_ns87410 +pata_ns87415 +pata_of_platform +pata_oldpiix +pata_opti +pata_optidma +pata_pdc2027x +pata_pdc202xx_old +pata_piccolo +pata_platform +pata_radisys +pata_rdc +pata_rz1000 +pata_sch +pata_serverworks +pata_sil680 +pata_sis +pata_sl82c105 +pata_triflex +pata_via +pbias-regulator +pblk +pc300too +pc87360 +pc87427 +pcap-regulator +pcap_keys +pcap_ts +pcbc +pcd +pcf50633 +pcf50633-adc +pcf50633-backlight +pcf50633-charger +pcf50633-gpio +pcf50633-input +pcf50633-regulator +pcf8574_keypad +pcf8591 +pch_udc +pci +pci-pf-stub +pci-stub +pci200syn +pcie-rockchip-host +pcips2 +pcl711 +pcl724 +pcl726 +pcl730 +pcl812 +pcl816 +pcl818 +pcm3724 +pcmad +pcmda12 +pcmmio +pcmuio +pcnet32 +pcrypt +pcwd_pci +pcwd_usb +pd +pda_power +pdc_adma +pdr_interface +peak_pci +peak_pciefd +peak_usb +pegasus +pegasus_notetaker +penmount +pf +pfuze100-regulator +pg +phantom +phonet +phram +phy-am335x +phy-am335x-control +phy-armada38x-comphy +phy-bcm-kona-usb2 +phy-berlin-sata +phy-berlin-usb +phy-cadence-salvo +phy-cadence-sierra +phy-cadence-torrent +phy-cpcap-usb +phy-dm816x-usb +phy-exynos-usb2 +phy-exynos5-usbdrd +phy-fsl-imx8-mipi-dphy +phy-fsl-imx8mq-usb +phy-gpio-vbus-usb +phy-hix5hd2-sata +phy-isp1301 +phy-mapphone-mdm6600 +phy-meson-g12a-usb2 +phy-meson-g12a-usb3-pcie +phy-meson-gxl-usb2 +phy-meson8b-usb2 +phy-mtk-tphy +phy-mtk-ufs +phy-mtk-xsphy +phy-mvebu-a3700-comphy +phy-mvebu-a3700-utmi +phy-mvebu-cp110-comphy +phy-ocelot-serdes +phy-omap-control +phy-omap-usb2 +phy-pxa-28nm-hsic +phy-pxa-28nm-usb2 +phy-qcom-apq8064-sata +phy-qcom-ipq4019-usb +phy-qcom-ipq806x-sata +phy-qcom-pcie2 +phy-qcom-qmp +phy-qcom-qusb2 +phy-qcom-snps-femto-v2 +phy-qcom-ufs +phy-qcom-ufs-qmp-14nm +phy-qcom-usb-hs +phy-qcom-usb-hs-28nm +phy-qcom-usb-hsic +phy-qcom-usb-ss +phy-rcar-gen2 +phy-rcar-gen3-pcie +phy-rcar-gen3-usb2 +phy-rcar-gen3-usb3 +phy-rockchip-dp +phy-rockchip-dphy-rx0 +phy-rockchip-emmc +phy-rockchip-inno-dsidphy +phy-rockchip-inno-hdmi +phy-rockchip-inno-usb2 +phy-rockchip-pcie +phy-rockchip-typec +phy-rockchip-usb +phy-tahvo +phy-tegra-usb +phy-tegra-xusb +phy-ti-pipe3 +phy-tusb1210 +phy-twl4030-usb +phy-twl6030-usb +phy-uniphier-pcie +phy-uniphier-usb2 +phy-uniphier-usb3hs +phy-uniphier-usb3ss +phylink +physmap +pi3usb30532 +pi433 +pinctrl-apq8064 +pinctrl-apq8084 +pinctrl-axp209 +pinctrl-da9062 +pinctrl-ipq4019 +pinctrl-ipq6018 +pinctrl-ipq8064 +pinctrl-ipq8074 +pinctrl-lochnagar +pinctrl-madera +pinctrl-max77620 +pinctrl-mcp23s08 +pinctrl-mcp23s08_i2c +pinctrl-mcp23s08_spi +pinctrl-mdm9615 +pinctrl-msm8660 +pinctrl-msm8916 +pinctrl-msm8960 +pinctrl-msm8976 +pinctrl-msm8994 +pinctrl-msm8996 +pinctrl-msm8998 +pinctrl-msm8x74 +pinctrl-qcs404 +pinctrl-rk805 +pinctrl-sc7180 +pinctrl-sdm660 +pinctrl-sdm845 +pinctrl-sm8150 +pinctrl-sm8250 +pinctrl-spmi-gpio +pinctrl-spmi-mpp +pinctrl-ssbi-gpio +pinctrl-ssbi-mpp +pinctrl-stmfx +ping +pistachio-internal-dac +pixcir_i2c_ts +pkcs7_test_key +pkcs8_key_parser +pktcdvd +pktgen +pl111_drm +pl172 +pl2303 +pl330 +pl353-smc +plat-ram +plat_nand +platform_lcd +platform_mhu +plip +plusb +pluto2 +plx_dma +plx_pci +pm-notifier-error-inject +pm2fb +pm3fb +pm80xx +pm8916_wdt +pm8941-pwrkey +pm8xxx-vibrator +pmbus +pmbus_core +pmc551 +pmcraid +pmic8xxx-keypad +pmic8xxx-pwrkey +pms7003 +pn532_uart +pn533 +pn533_i2c +pn533_usb +pn544 +pn544_i2c +pn_pep +poly1305-arm +poly1305_generic +port100 +powermate +powr1220 +ppa +ppdev +ppp_async +ppp_deflate +ppp_mppe +ppp_synctty +pppoatm +pppoe +pppox +pps-gpio +pps-ldisc +pps_parport +pptp +pretimeout_panic +prism2_usb +ps2-gpio +ps2mult +psample +psmouse +psnap +pstore_blk +pstore_zone +psxpad-spi +pt +ptp-qoriq +ptp_clockmatrix +ptp_idt82p33 +ptp_ines +pulse8-cec +pulsedlight-lidar-lite-v2 +pv88060-regulator +pv88080-regulator +pv88090-regulator +pvpanic +pvrusb2 +pwc +pwm-atmel-hlcdc +pwm-beeper +pwm-berlin +pwm-cros-ec +pwm-fan +pwm-fsl-ftm +pwm-hibvt +pwm-imx-tpm +pwm-imx1 +pwm-imx27 +pwm-iqs620a +pwm-ir-tx +pwm-lp3943 +pwm-mediatek +pwm-meson +pwm-mtk-disp +pwm-omap-dmtimer +pwm-pca9685 +pwm-rcar +pwm-regulator +pwm-renesas-tpu +pwm-rockchip +pwm-samsung +pwm-tegra +pwm-tiecap +pwm-tiehrpwm +pwm-twl +pwm-twl-led +pwm-vibra +pwm_bl +pwrseq_emmc +pwrseq_sd8787 +pwrseq_simple +pxa168_eth +pxa27x_udc +pxe1610 +pxrc +q6adm +q6afe +q6afe-dai +q6asm +q6asm-dai +q6core +q6dsp-common +q6routing +q6sstop-qcs404 +qca8k +qca_7k_common +qcaspi +qcauart +qcaux +qcom-apcs-ipc-mailbox +qcom-coincell +qcom-cpr +qcom-cpufreq-hw +qcom-cpufreq-nvmem +qcom-emac +qcom-geni-se +qcom-pm8xxx +qcom-pm8xxx-xoadc +qcom-pon +qcom-rng +qcom-spmi-adc5 +qcom-spmi-iadc +qcom-spmi-pmic +qcom-spmi-temp-alarm +qcom-spmi-vadc +qcom-vadc-common +qcom-wdt +qcom-wled +qcom_aoss +qcom_common +qcom_edac +qcom_geni_serial +qcom_glink +qcom_glink_rpm +qcom_glink_smem +qcom_gsbi +qcom_hwspinlock +qcom_nandc +qcom_q6v5 +qcom_q6v5_adsp +qcom_q6v5_ipa_notify +qcom_q6v5_mss +qcom_q6v5_pas +qcom_q6v5_wcss +qcom_rpm +qcom_rpm-regulator +qcom_smbb +qcom_smd +qcom_smd-regulator +qcom_spmi-regulator +qcom_sysmon +qcom_tsens +qcrypto +qcserial +qed +qede +qedf +qedi +qinfo_probe +qla1280 +qla2xxx +qla3xxx +qla4xxx +qlcnic +qlge +qm1d1b0004 +qm1d1c0042 +qmi_helpers +qmi_wwan +qnoc-msm8916 +qnoc-msm8974 +qnoc-qcs404 +qnx4 +qnx6 +qrtr +qrtr-mhi +qrtr-smd +qrtr-tun +qsemi +qt1010 +qt1050 +qt1070 +qt2160 +qtnfmac +qtnfmac_pcie +quatech2 +quota_tree +quota_v1 +quota_v2 +qxl +r592 +r6040 +r8152 +r8169 +r8188eu +r8192e_pci +r8192u_usb +r820t +r852 +r8712u +r8723bs +r8a66597-hcd +r8a66597-udc +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-si476x +radio-tea5764 +radio-usb-si4713 +radio-wl1273 +raid0 +raid1 +raid10 +raid456 +raid6_pq +raid_class +rainshadow-cec +ravb +rave-sp +rave-sp-backlight +rave-sp-pwrbutton +rave-sp-wdt +raw +raw_diag +raw_gadget +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-behold +rc-behold-columbus +rc-budget-ci-old +rc-cec +rc-cinergy +rc-cinergy-1400 +rc-core +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-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-kworld-315u +rc-kworld-pc150u +rc-kworld-plus-tv-analog +rc-leadtek-y04g0051 +rc-lme2510 +rc-loopback +rc-manli +rc-medion-x10 +rc-medion-x10-digitainer +rc-medion-x10-or2x +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-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-tango +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-dvd +rc-zx-irdec +rc5t583-regulator +rcar-csi2 +rcar-dmac +rcar-du-drm +rcar-fcp +rcar-gyroadc +rcar-vin +rcar_can +rcar_canfd +rcar_cmm +rcar_drif +rcar_dw_hdmi +rcar_fdp1 +rcar_gen3_thermal +rcar_jpu +rcar_lvds +rcar_thermal +rcuperf +rdc321x-southbridge +rdma_cm +rdma_ucm +rds +rds_rdma +rds_tcp +realtek +realtek-smi +reboot-mode +redboot +redrat3 +regmap-ac97 +regmap-i3c +regmap-sccb +regmap-sdw +regmap-slimbus +regmap-spmi +regmap-w1 +regulator-haptic +reiserfs +renesas-ceu +renesas_sdhi_core +renesas_sdhi_internal_dmac +renesas_sdhi_sys_dmac +renesas_usb3 +renesas_usbhs +renesas_wdt +repaper +reset-hi3660 +reset-meson-audio-arb +reset-qcom-pdc +reset-scmi +reset-ti-syscon +reset-uniphier +reset-uniphier-glue +resistive-adc-touch +retu-mfd +retu-pwrbutton +retu_wdt +rfc1051 +rfc1201 +rfcomm +rfd77402 +rfd_ftl +rfkill-gpio +rio-scan +rio_cm +rio_mport_cdev +rionet +rivafb +rj54n1cb0c +rk3399_dmc +rk805-pwrkey +rk808 +rk808-regulator +rk_crypto +rm3100-core +rm3100-i2c +rm3100-spi +rmd128 +rmd160 +rmd256 +rmd320 +rmi_core +rmi_i2c +rmi_smbus +rmi_spi +rmnet +rmobile-reset +rmtfs_mem +rn5t618 +rn5t618-adc +rn5t618-regulator +rn5t618_wdt +rnbd-client +rnbd-server +rndis_host +rndis_wlan +rockchip +rockchip-dfi +rockchip-io-domain +rockchip-isp1 +rockchip-rga +rockchip-vdec +rockchip_saradc +rockchip_thermal +rockchipdrm +rocker +rocket +rohm-bd70528 +rohm-bd71828 +rohm-bd718x7 +rohm-regulator +rohm_bu21023 +romfs +rose +rotary_encoder +rp2 +rpcrdma +rpcsec_gss_krb5 +rpmpd +rpmsg_char +rpmsg_core +rpr0521 +rsi_91x +rsi_sdio +rsi_usb +rsxx +rt2400pci +rt2500pci +rt2500usb +rt2800lib +rt2800mmio +rt2800pci +rt2800usb +rt2x00lib +rt2x00mmio +rt2x00pci +rt2x00usb +rt5033 +rt5033-regulator +rt5033_battery +rt61pci +rt73usb +rt9455_charger +rtc-88pm80x +rtc-88pm860x +rtc-ab-b5ze-s3 +rtc-ab-eoz9 +rtc-ab3100 +rtc-abx80x +rtc-armada38x +rtc-as3722 +rtc-aspeed +rtc-bd70528 +rtc-bq32k +rtc-bq4802 +rtc-cadence +rtc-cmos +rtc-cpcap +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-hid-sensor-time +rtc-hym8563 +rtc-imx-sc +rtc-imxdi +rtc-isl12022 +rtc-isl12026 +rtc-isl1208 +rtc-lp8788 +rtc-m41t80 +rtc-m41t93 +rtc-m41t94 +rtc-m48t35 +rtc-m48t59 +rtc-m48t86 +rtc-max6900 +rtc-max6902 +rtc-max6916 +rtc-max77686 +rtc-max8907 +rtc-max8925 +rtc-max8997 +rtc-max8998 +rtc-mc13xxx +rtc-mcp795 +rtc-meson +rtc-meson-vrtc +rtc-msm6242 +rtc-mt2712 +rtc-mt6397 +rtc-mt7622 +rtc-mxc +rtc-mxc_v2 +rtc-palmas +rtc-pcap +rtc-pcf2123 +rtc-pcf2127 +rtc-pcf50633 +rtc-pcf85063 +rtc-pcf85363 +rtc-pcf8563 +rtc-pcf8583 +rtc-pl030 +rtc-pm8xxx +rtc-r7301 +rtc-r9701 +rtc-rc5t583 +rtc-rc5t619 +rtc-rk808 +rtc-rp5c01 +rtc-rs5c348 +rtc-rs5c372 +rtc-rv3028 +rtc-rv3029c2 +rtc-rv8803 +rtc-rx4581 +rtc-rx6110 +rtc-rx8010 +rtc-rx8025 +rtc-rx8581 +rtc-s35390a +rtc-s5m +rtc-sd3078 +rtc-sh +rtc-snvs +rtc-stk17ta8 +rtc-tegra +rtc-tps6586x +rtc-tps65910 +rtc-tps80031 +rtc-v3020 +rtc-wm831x +rtc-wm8350 +rtc-x1205 +rtc-zynqmp +rtd520 +rti800 +rti802 +rtl2830 +rtl2832 +rtl2832_sdr +rtl8150 +rtl8187 +rtl8188ee +rtl818x_pci +rtl8192c-common +rtl8192ce +rtl8192cu +rtl8192de +rtl8192ee +rtl8192se +rtl8723-common +rtl8723ae +rtl8723be +rtl8821ae +rtl8xxxu +rtl_pci +rtl_usb +rtllib +rtllib_crypt_ccmp +rtllib_crypt_tkip +rtllib_crypt_wep +rtlwifi +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_8822b +rtw88_8822be +rtw88_8822c +rtw88_8822ce +rtw88_core +rtw88_pci +rx51_battery +rxrpc +rza_wdt +s1d13xxxfb +s2250 +s2255drv +s2io +s2mpa01 +s2mps11 +s3c2410_wdt +s3fb +s3fwrn5 +s3fwrn5_i2c +s526 +s5c73m3 +s5h1409 +s5h1411 +s5h1420 +s5h1432 +s5k4ecgx +s5k5baf +s5k6a3 +s5k6aa +s5m8767 +s5p-cec +s5p-g2d +s5p-jpeg +s5p-mfc +s5p-sss +s626 +s6sy761 +s921 +saa6588 +saa6752hs +saa7110 +saa7115 +saa7127 +saa7134 +saa7134-alsa +saa7134-dvb +saa7134-empress +saa7134-go7007 +saa7146 +saa7146_vv +saa7164 +saa717x +saa7185 +saa7706h +safe_serial +sahara +salsa20_generic +sample-trace-array +samsung-keypad +samsung-sxgbe +samsung_tty +sata_dwc_460ex +sata_inic162x +sata_mv +sata_nv +sata_promise +sata_qstor +sata_rcar +sata_sil +sata_sil24 +sata_sis +sata_svw +sata_sx4 +sata_uli +sata_via +sata_vsc +savagefb +sbp_target +sbs-battery +sbs-charger +sbs-manager +sc16is7xx +sc92031 +sca3000 +sch5627 +sch5636 +sch56xx-common +sch_atm +sch_cake +sch_cbq +sch_cbs +sch_choke +sch_codel +sch_drr +sch_dsmark +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_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 +sclk-div +scmi-cpufreq +scmi-hwmon +scmi_pm_domain +scpi-cpufreq +scpi-hwmon +scpi_pm_domain +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-cadence +sdhci-dove +sdhci-milbeaut +sdhci-msm +sdhci-of-arasan +sdhci-of-aspeed +sdhci-of-at91 +sdhci-of-dwcmshc +sdhci-of-esdhc +sdhci-omap +sdhci-pci +sdhci-pxav3 +sdhci-s3c +sdhci-tegra +sdhci-xenon-driver +sdhci_am654 +sdhci_f_sdh30 +sdio_uart +seed +sensorhub +serial-tegra +serial_ir +serio_raw +sermouse +serpent_generic +serport +ses +sf-pdma +sfc +sfc-falcon +sfp +sgi_w1 +sgp30 +sh-sci +sh_eth +sh_mmcif +sh_mobile_lcdcfb +sha1-arm +sha1-arm-ce +sha1-arm-neon +sha2-arm-ce +sha256-arm +sha3_generic +sha512-arm +shark2 +sharpslpart +shiftfs +sht15 +sht21 +sht3x +shtc1 +si1133 +si1145 +si2157 +si2165 +si2168 +si21xx +si4713 +si476x-core +si7005 +si7020 +sidewinder +sierra +sierra_net +sifive +sii902x +sii9234 +sil-sii8620 +sil164 +silead +simple-bridge +siox-bus-gpio +siox-core +sir_ir +sirf-audio-codec +sis190 +sis5595 +sis900 +sis_i2c +sisfb +sisusbvga +sit +sja1000 +sja1000_isa +sja1000_platform +sja1105 +skfp +skge +sky2 +sky81452 +sky81452-backlight +sky81452-regulator +sl811-hcd +slcan +slg51000-regulator +slic_ds26522 +slicoss +slim-qcom-ctrl +slim-qcom-ngd-ctrl +slimbus +slip +slram +sm3_generic +sm4_generic +sm501fb +sm712fb +sm750fb +sm_common +sm_ftl +smartpqi +smb347-charger +smc +smc911x +smc91x +smc_diag +smd-rpm +smem +smiapp +smiapp-pll +smipcie +smm665 +smp2p +smsc +smsc47b397 +smsc47m1 +smsc47m192 +smsc75xx +smsc911x +smsc9420 +smsc95xx +smscufx +smsdvb +smsm +smsmdtv +smssdio +smsusb +snd-aaci +snd-ac97-codec +snd-ad1889 +snd-ak4113 +snd-ak4114 +snd-ak4xxx-adda +snd-aloop +snd-atiixp +snd-atiixp-modem +snd-au8810 +snd-au8820 +snd-au8830 +snd-aw2 +snd-bcd2000 +snd-bebob +snd-bt87x +snd-ca0106 +snd-cmipci +snd-cs4281 +snd-cs46xx +snd-ctxfi +snd-darla20 +snd-darla24 +snd-dice +snd-dummy +snd-echo3g +snd-ens1370 +snd-ens1371 +snd-fireface +snd-firewire-digi00x +snd-firewire-lib +snd-firewire-motu +snd-firewire-tascam +snd-fireworks +snd-fm801 +snd-gina20 +snd-gina24 +snd-hda-codec +snd-hda-codec-analog +snd-hda-codec-ca0110 +snd-hda-codec-ca0132 +snd-hda-codec-cirrus +snd-hda-codec-cmedia +snd-hda-codec-conexant +snd-hda-codec-generic +snd-hda-codec-hdmi +snd-hda-codec-idt +snd-hda-codec-realtek +snd-hda-codec-si3054 +snd-hda-codec-via +snd-hda-core +snd-hda-intel +snd-hda-tegra +snd-hdsp +snd-hdspm +snd-hrtimer +snd-hwdep +snd-i2c +snd-ice1724 +snd-ice17xx-ak4xxx +snd-indigo +snd-indigodj +snd-indigodjx +snd-indigoio +snd-indigoiox +snd-intel-dspcfg +snd-intel8x0 +snd-intel8x0m +snd-isight +snd-korg1212 +snd-layla20 +snd-layla24 +snd-lola +snd-mia +snd-mixart +snd-mixer-oss +snd-mona +snd-mpu401 +snd-mpu401-uart +snd-mtpav +snd-mts64 +snd-nm256 +snd-opl3-lib +snd-opl3-synth +snd-oxfw +snd-oxygen +snd-oxygen-lib +snd-pcxhr +snd-portman2x4 +snd-pt2258 +snd-rawmidi +snd-riptide +snd-rme32 +snd-rme96 +snd-rme9652 +snd-seq +snd-seq-device +snd-seq-dummy +snd-seq-midi +snd-seq-midi-emul +snd-seq-midi-event +snd-seq-virmidi +snd-serial-u16550 +snd-soc-63xx +snd-soc-ac97 +snd-soc-acp-da7219mx98357-mach +snd-soc-acp-rt5645-mach +snd-soc-adau-utils +snd-soc-adau1701 +snd-soc-adau1761 +snd-soc-adau1761-i2c +snd-soc-adau1761-spi +snd-soc-adau17x1 +snd-soc-adau7002 +snd-soc-adau7118 +snd-soc-adau7118-hw +snd-soc-adau7118-i2c +snd-soc-ak4104 +snd-soc-ak4118 +snd-soc-ak4458 +snd-soc-ak4554 +snd-soc-ak4613 +snd-soc-ak4642 +snd-soc-ak5386 +snd-soc-ak5558 +snd-soc-alc5623 +snd-soc-alc5632 +snd-soc-apq8016-sbc +snd-soc-apq8096 +snd-soc-arizona +snd-soc-armada-370-db +snd-soc-arndale +snd-soc-audio-graph-card +snd-soc-bd28623 +snd-soc-bt-sco +snd-soc-cpcap +snd-soc-cros-ec-codec +snd-soc-cs35l32 +snd-soc-cs35l33 +snd-soc-cs35l34 +snd-soc-cs35l35 +snd-soc-cs35l36 +snd-soc-cs4265 +snd-soc-cs4270 +snd-soc-cs4271 +snd-soc-cs4271-i2c +snd-soc-cs4271-spi +snd-soc-cs42l42 +snd-soc-cs42l51 +snd-soc-cs42l51-i2c +snd-soc-cs42l52 +snd-soc-cs42l56 +snd-soc-cs42l73 +snd-soc-cs42xx8 +snd-soc-cs42xx8-i2c +snd-soc-cs43130 +snd-soc-cs4341 +snd-soc-cs4349 +snd-soc-cs53l30 +snd-soc-cx2072x +snd-soc-da7213 +snd-soc-da7219 +snd-soc-davinci-mcasp +snd-soc-dmic +snd-soc-es7134 +snd-soc-es7241 +snd-soc-es8316 +snd-soc-es8328 +snd-soc-es8328-i2c +snd-soc-es8328-spi +snd-soc-eukrea-tlv320 +snd-soc-fsi +snd-soc-fsl-asoc-card +snd-soc-fsl-asrc +snd-soc-fsl-audmix +snd-soc-fsl-easrc +snd-soc-fsl-esai +snd-soc-fsl-micfil +snd-soc-fsl-mqs +snd-soc-fsl-sai +snd-soc-fsl-spdif +snd-soc-fsl-utils +snd-soc-gtm601 +snd-soc-hdmi-codec +snd-soc-i2s +snd-soc-idma +snd-soc-imx-audmix +snd-soc-imx-es8328 +snd-soc-imx-mc13783 +snd-soc-imx-spdif +snd-soc-imx-ssi +snd-soc-inno-rk3036 +snd-soc-kirkwood +snd-soc-lochnagar-sc +snd-soc-lpass-apq8016 +snd-soc-lpass-cpu +snd-soc-lpass-ipq806x +snd-soc-lpass-platform +snd-soc-max9759 +snd-soc-max98088 +snd-soc-max98090 +snd-soc-max98095 +snd-soc-max98357a +snd-soc-max98373 +snd-soc-max98390 +snd-soc-max98504 +snd-soc-max9860 +snd-soc-max9867 +snd-soc-max98927 +snd-soc-mc13783 +snd-soc-meson-aiu +snd-soc-meson-axg-fifo +snd-soc-meson-axg-frddr +snd-soc-meson-axg-pdm +snd-soc-meson-axg-sound-card +snd-soc-meson-axg-spdifin +snd-soc-meson-axg-spdifout +snd-soc-meson-axg-tdm-formatter +snd-soc-meson-axg-tdm-interface +snd-soc-meson-axg-tdmin +snd-soc-meson-axg-tdmout +snd-soc-meson-axg-toddr +snd-soc-meson-card-utils +snd-soc-meson-codec-glue +snd-soc-meson-g12a-toacodec +snd-soc-meson-g12a-tohdmitx +snd-soc-meson-gx-sound-card +snd-soc-meson-t9015 +snd-soc-mikroe-proto +snd-soc-msm8916-analog +snd-soc-msm8916-digital +snd-soc-mt6351 +snd-soc-mt6358 +snd-soc-mt6660 +snd-soc-mt6797-afe +snd-soc-mt8183-afe +snd-soc-mtk-common +snd-soc-nau8540 +snd-soc-nau8810 +snd-soc-nau8822 +snd-soc-nau8824 +snd-soc-odroid +snd-soc-omap-abe-twl6040 +snd-soc-omap-dmic +snd-soc-omap-mcbsp +snd-soc-omap-mcpdm +snd-soc-omap-twl4030 +snd-soc-omap3pandora +snd-soc-pcm +snd-soc-pcm1681 +snd-soc-pcm1789-codec +snd-soc-pcm1789-i2c +snd-soc-pcm179x-codec +snd-soc-pcm179x-i2c +snd-soc-pcm179x-spi +snd-soc-pcm186x +snd-soc-pcm186x-i2c +snd-soc-pcm186x-spi +snd-soc-pcm3060 +snd-soc-pcm3060-i2c +snd-soc-pcm3060-spi +snd-soc-pcm3168a +snd-soc-pcm3168a-i2c +snd-soc-pcm3168a-spi +snd-soc-pcm512x +snd-soc-pcm512x-i2c +snd-soc-pcm512x-spi +snd-soc-qcom-common +snd-soc-rcar +snd-soc-rk3288-hdmi-analog +snd-soc-rk3328 +snd-soc-rk3399-gru-sound +snd-soc-rl6231 +snd-soc-rockchip-i2s +snd-soc-rockchip-max98090 +snd-soc-rockchip-pcm +snd-soc-rockchip-pdm +snd-soc-rockchip-rt5645 +snd-soc-rockchip-spdif +snd-soc-rt1308-sdw +snd-soc-rt5514 +snd-soc-rt5514-spi +snd-soc-rt5616 +snd-soc-rt5631 +snd-soc-rt5640 +snd-soc-rt5645 +snd-soc-rt5663 +snd-soc-rt5677 +snd-soc-rt5677-spi +snd-soc-rt5682 +snd-soc-rt5682-sdw +snd-soc-rt700 +snd-soc-rt711 +snd-soc-rt715 +snd-soc-rx51 +snd-soc-s3c-dma +snd-soc-samsung-spdif +snd-soc-sdm845 +snd-soc-si476x +snd-soc-sigmadsp +snd-soc-sigmadsp-i2c +snd-soc-sigmadsp-regmap +snd-soc-simple-amplifier +snd-soc-simple-card +snd-soc-simple-card-utils +snd-soc-smdk-spdif +snd-soc-smdk-wm8994 +snd-soc-smdk-wm8994pcm +snd-soc-snow +snd-soc-spdif-rx +snd-soc-spdif-tx +snd-soc-ssm2305 +snd-soc-ssm2602 +snd-soc-ssm2602-i2c +snd-soc-ssm2602-spi +snd-soc-ssm4567 +snd-soc-sta32x +snd-soc-sta350 +snd-soc-sti-sas +snd-soc-storm +snd-soc-tas2552 +snd-soc-tas2562 +snd-soc-tas2770 +snd-soc-tas5086 +snd-soc-tas571x +snd-soc-tas5720 +snd-soc-tas6424 +snd-soc-tda7419 +snd-soc-tegra-alc5632 +snd-soc-tegra-max98090 +snd-soc-tegra-pcm +snd-soc-tegra-rt5640 +snd-soc-tegra-rt5677 +snd-soc-tegra-sgtl5000 +snd-soc-tegra-trimslice +snd-soc-tegra-utils +snd-soc-tegra-wm8753 +snd-soc-tegra-wm8903 +snd-soc-tegra-wm9712 +snd-soc-tegra20-ac97 +snd-soc-tegra20-das +snd-soc-tegra20-i2s +snd-soc-tegra20-spdif +snd-soc-tegra30-ahub +snd-soc-tegra30-i2s +snd-soc-tfa9879 +snd-soc-ti-edma +snd-soc-ti-sdma +snd-soc-ti-udma +snd-soc-tlv320adcx140 +snd-soc-tlv320aic23 +snd-soc-tlv320aic23-i2c +snd-soc-tlv320aic23-spi +snd-soc-tlv320aic31xx +snd-soc-tlv320aic32x4 +snd-soc-tlv320aic32x4-i2c +snd-soc-tlv320aic32x4-spi +snd-soc-tlv320aic3x +snd-soc-tm2-wm5110 +snd-soc-tpa6130a2 +snd-soc-ts3a227e +snd-soc-tscs42xx +snd-soc-tscs454 +snd-soc-twl4030 +snd-soc-twl6040 +snd-soc-uda1334 +snd-soc-uniphier-aio-cpu +snd-soc-uniphier-aio-ld11 +snd-soc-uniphier-aio-pxs2 +snd-soc-uniphier-evea +snd-soc-wcd9335 +snd-soc-wcd934x +snd-soc-wm-adsp +snd-soc-wm-hubs +snd-soc-wm5110 +snd-soc-wm8510 +snd-soc-wm8523 +snd-soc-wm8524 +snd-soc-wm8580 +snd-soc-wm8711 +snd-soc-wm8728 +snd-soc-wm8731 +snd-soc-wm8737 +snd-soc-wm8741 +snd-soc-wm8750 +snd-soc-wm8753 +snd-soc-wm8770 +snd-soc-wm8776 +snd-soc-wm8782 +snd-soc-wm8804 +snd-soc-wm8804-i2c +snd-soc-wm8804-spi +snd-soc-wm8903 +snd-soc-wm8904 +snd-soc-wm8960 +snd-soc-wm8962 +snd-soc-wm8974 +snd-soc-wm8978 +snd-soc-wm8985 +snd-soc-wm8994 +snd-soc-wm9712 +snd-soc-wsa881x +snd-soc-xlnx-formatter-pcm +snd-soc-xlnx-i2s +snd-soc-xlnx-spdif +snd-soc-xtfpga-i2s +snd-soc-zl38060 +snd-soc-zx-aud96p22 +snd-sof +snd-sof-of +snd-sof-pci +snd-ua101 +snd-usb-6fire +snd-usb-audio +snd-usb-caiaq +snd-usb-hiface +snd-usb-line6 +snd-usb-pod +snd-usb-podhd +snd-usb-toneport +snd-usb-variax +snd-usbmidi-lib +snd-via82xx +snd-via82xx-modem +snd-virmidi +snd-virtuoso +snd-vx-lib +snd-vx222 +snd-ymfpci +sni_ave +snic +snps_udc_core +snps_udc_plat +snvs_pwrkey +socinfo +softdog +softing +solo6x10 +solos-pci +sony-btf-mpx +soundwire-bus +soundwire-qcom +sp2 +sp805_wdt +sp8870 +sp887x +spaceball +spaceorb +sparse-keymap +spcp8x5 +speakup +speakup_acntsa +speakup_apollo +speakup_audptr +speakup_bns +speakup_decext +speakup_dectlk +speakup_dummy +speakup_ltlk +speakup_soft +speakup_spkout +speakup_txprt +speedfax +speedtch +spi-altera +spi-amd +spi-armada-3700 +spi-axi-spi-engine +spi-bitbang +spi-butterfly +spi-cadence +spi-dln2 +spi-dw +spi-dw-mmio +spi-dw-pci +spi-fsi +spi-fsl-dspi +spi-fsl-lpspi +spi-fsl-qspi +spi-geni-qcom +spi-gpio +spi-imx +spi-lm70llp +spi-loopback-test +spi-meson-spicc +spi-meson-spifc +spi-mt65xx +spi-mtk-nor +spi-mux +spi-mxic +spi-nor +spi-npcm-fiu +spi-npcm-pspi +spi-nxp-fspi +spi-oc-tiny +spi-orion +spi-pl022 +spi-pxa2xx-pci +spi-pxa2xx-platform +spi-qcom-qspi +spi-qup +spi-rockchip +spi-rspi +spi-s3c64xx +spi-sc18is602 +spi-sh-hspi +spi-sh-msiof +spi-sifive +spi-slave-mt27xx +spi-slave-system-control +spi-slave-time +spi-tegra114 +spi-tegra20-sflash +spi-tegra20-slink +spi-ti-qspi +spi-tle62x0 +spi-uniphier +spi-xcomm +spi-zynqmp-gqspi +spi_ks8995 +spidev +spinand +spmi +spmi-pmic-arb +sprd_serial +sps30 +sr030pc30 +sr9700 +sr9800 +srf04 +srf08 +ssb +ssbi +ssd1307fb +ssfdc +ssi_protocol +ssp_accel_sensor +ssp_gyro_sensor +ssp_iio +sst25l +sstfb +ssu100 +st +st-asc +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_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 +stkwebcam +stm-drm +stm_console +stm_core +stm_ftrace +stm_heartbeat +stm_p_basic +stm_p_sys-t +stmfts +stmfx +stmmac +stmmac-pci +stmmac-platform +stmpe-adc +stmpe-keypad +stmpe-ts +stowaway +stp +stpmic1 +stpmic1_onkey +stpmic1_regulator +stpmic1_wdt +streamzap +streebog_generic +stts751 +stv0288 +stv0297 +stv0299 +stv0367 +stv0900 +stv090x +stv0910 +stv6110 +stv6110x +stv6111 +sundance +sungem +sungem_phy +sunhme +suni +sunkbd +sunrpc +sur40 +surface3_spi +svgalib +switchtec +sx8 +sx8654 +sx9310 +sx9500 +sy8106a-regulator +sy8824x +sym53c8xx +symbolserial +synaptics_i2c +synaptics_usb +synclink_gt +synclinkmp +syscon-reboot-mode +syscopyarea +sysfillrect +sysimgblt +sysv +t5403 +tag_8021q +tag_ar9331 +tag_brcm +tag_dsa +tag_edsa +tag_gswip +tag_ksz +tag_lan9303 +tag_mtk +tag_ocelot +tag_qca +tag_sja1105 +tag_trailer +tap +target_core_file +target_core_iblock +target_core_mod +target_core_pscsi +target_core_user +tc-dwc-g210 +tc-dwc-g210-pci +tc-dwc-g210-pltfrm +tc358743 +tc358764 +tc358767 +tc358768 +tc3589x-keypad +tc654 +tc74 +tc90522 +tca6416-keypad +tca8418_keypad +tcan4x5x +tcm_fc +tcm_loop +tcm_qla2xxx +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_rt1711h +tcpm +tcrypt +tcs3414 +tcs3472 +tda10021 +tda10023 +tda10048 +tda1004x +tda10071 +tda10086 +tda18212 +tda18218 +tda18250 +tda18271 +tda18271c2dd +tda1997x +tda665x +tda7432 +tda8083 +tda8261 +tda826x +tda827x +tda8290 +tda9840 +tda9887 +tda9950 +tda998x +tdfxfb +tdo24m +tea +tea575x +tea5761 +tea5767 +tea6415c +tea6420 +team +team_mode_activebackup +team_mode_broadcast +team_mode_loadbalance +team_mode_random +team_mode_roundrobin +tee +tef6862 +tegra-bpmp-thermal +tegra-drm +tegra-gmi +tegra-kbc +tegra-tcu +tegra-vde +tegra-video +tegra-xudc +tegra186-cpufreq +tegra20-devfreq +tegra30-devfreq +tegra_cec +tegra_nand +tegra_wdt +tehuti +teranetics +test-kprobes +test_blackhole_dev +test_bpf +test_power +tg3 +tgr192 +thc63lvd1024 +thermal-generic-adc +thermal_mmio +thmc50 +ths7303 +ths8200 +thunderbolt +thunderbolt-net +ti-adc081c +ti-adc0832 +ti-adc084s021 +ti-adc108s102 +ti-adc12138 +ti-adc128s052 +ti-adc161s626 +ti-ads1015 +ti-ads124s08 +ti-ads7950 +ti-ads8344 +ti-ads8688 +ti-cal +ti-csc +ti-dac082s085 +ti-dac5571 +ti-dac7311 +ti-dac7612 +ti-emif-sram +ti-eqep +ti-lmu +ti-sc +ti-sn65dsi86 +ti-soc-thermal +ti-tfp410 +ti-tlc4541 +ti-tpd12s015 +ti-vpdma +ti-vpe +ti_am335x_adc +ti_am335x_tsc +ti_am335x_tscadc +ti_cpsw_new +ti_davinci_emac +ti_edac +ti_hecc +ti_usb_3410_5052 +tidss +tifm_7xx1 +tifm_core +tifm_ms +tifm_sd +tilcdc +timeriomem-rng +tipc +tlan +tls +tlv320aic23b +tm2-touchkey +tm6000 +tm6000-alsa +tm6000-dvb +tmdc +tmio_mmc +tmio_mmc_core +tmio_nand +tmiofb +tmp006 +tmp007 +tmp102 +tmp103 +tmp108 +tmp401 +tmp421 +tmp513 +torture +toshsd +touchit213 +touchright +touchwin +tpci200 +tpl0102 +tpm_ftpm_tee +tpm_i2c_atmel +tpm_i2c_infineon +tpm_i2c_nuvoton +tpm_key_parser +tpm_st33zp24 +tpm_st33zp24_i2c +tpm_st33zp24_spi +tpm_tis_spi +tpm_vtpm_proxy +tps40422 +tps51632-regulator +tps53679 +tps6105x +tps6105x-regulator +tps62360-regulator +tps65010 +tps65023-regulator +tps6507x +tps6507x-regulator +tps6507x-ts +tps65086 +tps65086-regulator +tps65090-charger +tps65090-regulator +tps65132-regulator +tps65217_bl +tps65217_charger +tps65218 +tps65218-pwrbutton +tps65218-regulator +tps6524x-regulator +tps6586x-regulator +tps65910-regulator +tps65912-regulator +tps6598x +tps80031-regulator +tqmx86 +trace-printk +trancevibrator +trf7970a +tridentfb +ts2020 +ts4800-ts +ts4800_wdt +ts_bm +ts_fsm +ts_kmp +tsc2004 +tsc2005 +tsc2007 +tsc200x-core +tsc40 +tsi568 +tsi57x +tsi721_mport +tsl2550 +tsl2563 +tsl2583 +tsl2772 +tsl4531 +tsys01 +tsys02d +ttm +ttpci-eeprom +ttusb_dec +ttusbdecfe +ttusbir +ttynull +tua6100 +tua9001 +tulip +tuner +tuner-simple +tuner-types +tuner-xc2028 +tunnel4 +tunnel6 +turbografx +turingcc-qcs404 +turris-mox-rwtm +tusb6010 +tvaudio +tve200_drm +tveeprom +tvp514x +tvp5150 +tvp7002 +tw2804 +tw5864 +tw68 +tw686x +tw9903 +tw9906 +tw9910 +twidjoy +twl4030-madc +twl4030-pwrbutton +twl4030-vibra +twl4030_charger +twl4030_keypad +twl4030_madc_battery +twl4030_wdt +twl6030-gpadc +twl6040-vibra +twofish_common +twofish_generic +typec +typec_displayport +typec_nvidia +typec_ucsi +typhoon +u132-hcd +uPD60620 +u_audio +u_ether +u_serial +uacce +uartlite +uas +ubi +ubifs +ubuntu-host +ucan +ucb1400_core +ucb1400_ts +ucc_uart +ucd9000 +ucd9200 +ucs1002_power +ucsi_ccg +uda1342 +udc-xilinx +udf +udl +udlfb +udp_diag +udp_tunnel +ueagle-atm +ufs +ufs-hisi +ufs-mediatek +ufshcd-core +ufshcd-dwc +ufshcd-pci +ufshcd-pltfrm +uhid +uio +uio_aec +uio_cif +uio_dmem_genirq +uio_mf624 +uio_netx +uio_pci_generic +uio_pdrv_genirq +uio_pruss +uio_sercos3 +uleds +uli526x +ulpi +umem +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 +uniphier-mdmac +uniphier-regulator +uniphier-sd +uniphier-xdmac +uniphier_thermal +uniphier_wdt +unix_diag +upd64031a +upd64083 +upd78f0730 +us5182d +usb-conn-gpio +usb-dmac +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_midi +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_uac1 +usb_f_uac1_legacy +usb_f_uac2 +usb_f_uvc +usb_wwan +usbatm +usbdux +usbduxfast +usbduxsigma +usbhid +usbip-core +usbip-host +usbip-vudc +usbkbd +usblcd +usblp +usbmisc_imx +usbmon +usbmouse +usbnet +usbserial +usbsevseg +usbtest +usbtmc +usbtouchscreen +usbtv +usbvision +usdhi6rol0 +userio +userspace-consumer +ushc +uss720 +uvcvideo +uvesafb +v4l2-dv-timings +v4l2-flash-led-class +v4l2-fwnode +v4l2-h264 +v4l2-jpeg +v4l2-mem2mem +v4l2-tpg +vcan +vcnl3020 +vcnl4000 +vcnl4035 +vctrl-regulator +vdpa +vdpa_sim +veml6030 +veml6070 +ves1820 +ves1x93 +veth +vexpress-hwmon +vexpress-regulator +vexpress-spc-cpufreq +vf610_adc +vf610_dac +vfio +vfio-amba +vfio-pci +vfio-platform +vfio-platform-amdxgbe +vfio-platform-base +vfio-platform-calxedaxgmac +vfio_iommu_type1 +vfio_mdev +vfio_virqfd +vgastate +vgem +vgg2432a4 +vhci-hcd +vhost +vhost_iotlb +vhost_net +vhost_scsi +vhost_vdpa +vhost_vsock +via-rhine +via-sdmmc +via-velocity +via686a +vicodec +video-i2c +video-mux +videobuf-core +videobuf-dma-sg +videobuf-vmalloc +videobuf2-common +videobuf2-dma-contig +videobuf2-dma-sg +videobuf2-dvb +videobuf2-memops +videobuf2-v4l2 +videobuf2-vmalloc +videocc-sc7180 +videocc-sdm845 +videodev +vim2m +vimc +viperboard +viperboard_adc +virt_wifi +virtio-gpu +virtio-rng +virtio_blk +virtio_crypto +virtio_input +virtio_net +virtio_rpmsg_bus +virtio_scsi +virtio_vdpa +virtiofs +virtual +visor +vitesse +vitesse-vsc73xx-core +vitesse-vsc73xx-platform +vitesse-vsc73xx-spi +vivid +vkms +vl53l0x-i2c +vl6180 +vmac +vme_fake +vme_tsi148 +vme_user +vme_vmivme7805 +vmk80xx +vmw_pvrdma +vmw_vsock_virtio_transport +vmw_vsock_virtio_transport_common +vmxnet3 +vp27smpx +vport-geneve +vport-gre +vport-vxlan +vpx3220 +vqmmc-ipq4019-regulator +vrf +vringh +vs6624 +vsock +vsock_diag +vsock_loopback +vsockmon +vsp1 +vsxxxaa +vt1211 +vt6655_stage +vt6656_stage +vt8231 +vt8623fb +vub300 +vx855 +vxcan +vxge +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 +w83773g +w83781d +w83791d +w83792d +w83793 +w83795 +w83l785ts +w83l786ng +wacom +wacom_i2c +wacom_serial4 +wacom_w8001 +walkera0701 +wanxl +warrior +wcd934x +wcn36xx +wcnss_ctrl +wd719x +wdt87xx_i2c +wdt_pci +wfx +whiteheat +wil6210 +wilc1000 +wilc1000-sdio +wilc1000-spi +wimax +winbond-840 +wire +wireguard +wishbone-serial +wkup_m3_rproc +wl1251 +wl1251_sdio +wl1251_spi +wl1273-core +wl12xx +wl18xx +wlcore +wlcore_sdio +wlcore_spi +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 +wm97xx-ts +wp512 +x25 +x25_asy +x_tables +xbox_remote +xc4000 +xc5000 +xcbc +xdpe12284 +xfrm4_tunnel +xfrm6_tunnel +xfrm_algo +xfrm_interface +xfrm_ipcomp +xfrm_user +xfs +xgmac +xhci-histb +xhci-mtk +xhci-pci +xhci-pci-renesas +xhci-plat-hcd +xhci-tegra +xilinx-pr-decoupler +xilinx-spi +xilinx-tpg +xilinx-video +xilinx-vtc +xilinx-xadc +xilinx_emac +xilinx_gmii2rgmii +xilinx_sdfec +xilinx_uartps +xillybus_core +xillybus_of +xillybus_pcie +xlnx_vcu +xor +xor-neon +xpad +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 +yealink +yellowfin +yurex +z3fold +zaurus +zd1201 +zd1211rw +zd1301 +zd1301_demod +zet6223 +zforce_ts +zhenhua +ziirave_wdt +zl10036 +zl10039 +zl10353 +zl6100 +zonefs +zopt2201 +zpa2326 +zpa2326_i2c +zpa2326_spi +zr364xx +zram +zstd +zx-tdm --- linux-azure-5.8-5.8.0.orig/debian.master/abi/5.8.0-50.56/armhf/generic.retpoline +++ linux-azure-5.8-5.8.0/debian.master/abi/5.8.0-50.56/armhf/generic.retpoline @@ -0,0 +1 @@ +# RETPOLINE NOT ENABLED --- linux-azure-5.8-5.8.0.orig/debian.master/abi/5.8.0-50.56/fwinfo +++ linux-azure-5.8-5.8.0/debian.master/abi/5.8.0-50.56/fwinfo @@ -0,0 +1,1751 @@ +firmware: 3826.arm +firmware: 3com/typhoon.bin +firmware: 6fire/dmx6fireap.ihx +firmware: 6fire/dmx6firecf.bin +firmware: 6fire/dmx6firel2.ihx +firmware: BCM2033-FW.bin +firmware: BCM2033-MD.hex +firmware: BT3CPCC.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: 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: amdgpu/arcturus_asd.bin +firmware: amdgpu/arcturus_gpu_info.bin +firmware: amdgpu/arcturus_mec.bin +firmware: amdgpu/arcturus_mec2.bin +firmware: amdgpu/arcturus_rlc.bin +firmware: amdgpu/arcturus_sdma.bin +firmware: amdgpu/arcturus_sos.bin +firmware: amdgpu/arcturus_ta.bin +firmware: amdgpu/banks_k_2_smc.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/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/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/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_gpu_info.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_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_sos.bin +firmware: amdgpu/navi12_ta.bin +firmware: amdgpu/navi14_asd.bin +firmware: amdgpu/navi14_ce.bin +firmware: amdgpu/navi14_ce_wks.bin +firmware: amdgpu/navi14_gpu_info.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/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/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/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_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/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_gpu_info.bin +firmware: amdgpu/renoir_me.bin +firmware: amdgpu/renoir_mec.bin +firmware: amdgpu/renoir_mec2.bin +firmware: amdgpu/renoir_pfp.bin +firmware: amdgpu/renoir_rlc.bin +firmware: amdgpu/renoir_sdma.bin +firmware: amdgpu/renoir_vcn.bin +firmware: amdgpu/si58_mc.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/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/vega10_acg_smc.bin +firmware: amdgpu/vega10_asd.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: ar5523.bin +firmware: asihpi/dsp5000.bin +firmware: asihpi/dsp6200.bin +firmware: asihpi/dsp6205.bin +firmware: asihpi/dsp6400.bin +firmware: asihpi/dsp6600.bin +firmware: asihpi/dsp8700.bin +firmware: asihpi/dsp8900.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: ath3k-1.fw +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: atmsar11.fw +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: bfubase.frm +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-e1h-7.13.15.0.fw +firmware: bnx2x/bnx2x-e2-7.13.15.0.fw +firmware: brcm/bcm43xx-0.fw +firmware: brcm/bcm43xx_hdr-0.fw +firmware: brcm/brcmfmac43012-sdio.bin +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/brcmfmac43430a0-sdio.bin +firmware: brcm/brcmfmac43455-sdio.bin +firmware: brcm/brcmfmac43456-sdio.bin +firmware: brcm/brcmfmac4350-pcie.bin +firmware: brcm/brcmfmac4350c2-pcie.bin +firmware: brcm/brcmfmac4354-sdio.bin +firmware: brcm/brcmfmac4356-pcie.bin +firmware: brcm/brcmfmac4356-sdio.bin +firmware: brcm/brcmfmac43569.bin +firmware: brcm/brcmfmac43570-pcie.bin +firmware: brcm/brcmfmac4358-pcie.bin +firmware: brcm/brcmfmac4359-pcie.bin +firmware: brcm/brcmfmac4359-sdio.bin +firmware: brcm/brcmfmac43602-pcie.bin +firmware: brcm/brcmfmac4364-pcie.bin +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.bin +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: cpia2/stv0672_vp4.bin +firmware: cs46xx/cwc4630 +firmware: cs46xx/cwcasync +firmware: cs46xx/cwcbinhack +firmware: cs46xx/cwcdma +firmware: cs46xx/cwcsnoop +firmware: ct2fw-3.2.5.1.bin +firmware: ctefx-desktop.bin +firmware: ctefx-r3di.bin +firmware: ctefx.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: cyzfirm.bin +firmware: daqboard2000_firmware.bin +firmware: digiface_firmware.bin +firmware: digiface_firmware_rev11.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-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_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: ea/3g_asic.fw +firmware: ea/darla20_dsp.fw +firmware: ea/darla24_dsp.fw +firmware: ea/echo3g_dsp.fw +firmware: ea/gina20_dsp.fw +firmware: ea/gina24_301_asic.fw +firmware: ea/gina24_301_dsp.fw +firmware: ea/gina24_361_asic.fw +firmware: ea/gina24_361_dsp.fw +firmware: ea/indigo_dj_dsp.fw +firmware: ea/indigo_djx_dsp.fw +firmware: ea/indigo_dsp.fw +firmware: ea/indigo_io_dsp.fw +firmware: ea/indigo_iox_dsp.fw +firmware: ea/layla20_asic.fw +firmware: ea/layla20_dsp.fw +firmware: ea/layla24_1_asic.fw +firmware: ea/layla24_2A_asic.fw +firmware: ea/layla24_2S_asic.fw +firmware: ea/layla24_dsp.fw +firmware: ea/loader_dsp.fw +firmware: ea/mia_dsp.fw +firmware: ea/mona_2_asic.fw +firmware: ea/mona_301_1_asic_48.fw +firmware: ea/mona_301_1_asic_96.fw +firmware: ea/mona_301_dsp.fw +firmware: ea/mona_361_1_asic_48.fw +firmware: ea/mona_361_1_asic_96.fw +firmware: ea/mona_361_dsp.fw +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: emu/audio_dock.fw +firmware: emu/emu0404.fw +firmware: emu/emu1010_notebook.fw +firmware: emu/emu1010b.fw +firmware: emu/hana.fw +firmware: emu/micro_dock.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: ess/maestro3_assp_kernel.fw +firmware: ess/maestro3_assp_minisrc.fw +firmware: f2255usb.bin +firmware: fm_radio.inp +firmware: fm_radio_rio.inp +firmware: fw.ram.bin +firmware: go7007/go7007fw.bin +firmware: go7007/go7007tv.bin +firmware: go7007/lr192.fw +firmware: go7007/px-m402u.fw +firmware: go7007/px-tv402u.fw +firmware: go7007/s2250-1.fw +firmware: go7007/s2250-2.fw +firmware: go7007/wis-startrek.fw +firmware: hfi1_dc8051.fw +firmware: hfi1_fabric.fw +firmware: hfi1_pcie.fw +firmware: hfi1_sbus.fw +firmware: i2400m-fw-usb-1.5.sbcf +firmware: i6050-fw-usb-1.5.sbcf +firmware: i915/bxt_dmc_ver1_07.bin +firmware: i915/bxt_guc_33.0.0.bin +firmware: i915/bxt_huc_2.0.0.bin +firmware: i915/cml_guc_33.0.0.bin +firmware: i915/cml_huc_4.0.0.bin +firmware: i915/cnl_dmc_ver1_07.bin +firmware: i915/ehl_guc_33.0.4.bin +firmware: i915/ehl_huc_9.0.0.bin +firmware: i915/glk_dmc_ver1_04.bin +firmware: i915/glk_guc_33.0.0.bin +firmware: i915/glk_huc_4.0.0.bin +firmware: i915/icl_dmc_ver1_09.bin +firmware: i915/icl_guc_33.0.0.bin +firmware: i915/icl_huc_9.0.0.bin +firmware: i915/kbl_dmc_ver1_04.bin +firmware: i915/kbl_guc_33.0.0.bin +firmware: i915/kbl_huc_4.0.0.bin +firmware: i915/skl_dmc_ver1_27.bin +firmware: i915/skl_guc_33.0.0.bin +firmware: i915/skl_huc_2.0.0.bin +firmware: i915/tgl_dmc_ver2_06.bin +firmware: i915/tgl_guc_35.2.0.bin +firmware: i915/tgl_huc_7.0.12.bin +firmware: icom_asc.bin +firmware: icom_call_setup.bin +firmware: icom_res_dce.bin +firmware: imx/sdma/sdma-imx6q.bin +firmware: imx/sdma/sdma-imx7d.bin +firmware: intel/ibt-11-5.ddc +firmware: intel/ibt-11-5.sfi +firmware: intel/ibt-12-16.ddc +firmware: intel/ibt-12-16.sfi +firmware: intel/ice/ddp/ice.pkg +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: isi4608.bin +firmware: isi4616.bin +firmware: isi608.bin +firmware: isi608em.bin +firmware: isi616em.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-56.ucode +firmware: iwlwifi-Qu-b0-jf-b0-56.ucode +firmware: iwlwifi-Qu-c0-hr-b0-56.ucode +firmware: iwlwifi-QuQnj-b0-hr-b0-56.ucode +firmware: iwlwifi-QuQnj-b0-jf-b0-56.ucode +firmware: iwlwifi-QuZ-a0-hr-b0-56.ucode +firmware: iwlwifi-QuZ-a0-jf-b0-56.ucode +firmware: iwlwifi-SoSnj-a0-gf-a0-56.ucode +firmware: iwlwifi-SoSnj-a0-gf4-a0-56.ucode +firmware: iwlwifi-cc-a0-56.ucode +firmware: iwlwifi-so-a0-gf-a0-56.ucode +firmware: iwlwifi-so-a0-hr-b0-56.ucode +firmware: iwlwifi-so-a0-jf-b0-56.ucode +firmware: iwlwifi-ty-a0-gf-a0-56.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: korg/k1212.dsp +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: me4000_firmware.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/mt7622_n9.bin +firmware: mediatek/mt7622_rom_patch.bin +firmware: mediatek/mt7622pr2h.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/mt7668pr2h.bin +firmware: mediatek/mt7915_rom_patch.bin +firmware: mediatek/mt7915_wa.bin +firmware: mediatek/mt7915_wm.bin +firmware: mellanox/mlxsw_spectrum-13.2000.2714.mfa2 +firmware: mellanox/mlxsw_spectrum2-29.2000.2714.mfa2 +firmware: mixart/miXart8.elf +firmware: mixart/miXart8.xlx +firmware: mixart/miXart8AES.xlx +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/sd8688.bin +firmware: mrvl/sd8688_helper.bin +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/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: multiface_firmware.bin +firmware: multiface_firmware_rev11.bin +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/gk20a/fecs_data.bin +firmware: nvidia/gk20a/fecs_inst.bin +firmware: nvidia/gk20a/gpccs_data.bin +firmware: nvidia/gk20a/gpccs_inst.bin +firmware: nvidia/gk20a/sw_bundle_init.bin +firmware: nvidia/gk20a/sw_ctx.bin +firmware: nvidia/gk20a/sw_method_init.bin +firmware: nvidia/gk20a/sw_nonctx.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/tegra124/vic03_ucode.bin +firmware: nvidia/tegra124/xusb.bin +firmware: nvidia/tegra186/xusb.bin +firmware: nvidia/tegra194/xusb.bin +firmware: nvidia/tegra210/xusb.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/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/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/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/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/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: pca200e.bin +firmware: pca200e_ecd.bin2 +firmware: pcxhr/dspb1222e.b56 +firmware: pcxhr/dspb1222hr.b56 +firmware: pcxhr/dspb882e.b56 +firmware: pcxhr/dspb882hr.b56 +firmware: pcxhr/dspb924.b56 +firmware: pcxhr/dspd1222.d56 +firmware: pcxhr/dspd222.d56 +firmware: pcxhr/dspd882.d56 +firmware: pcxhr/dspe882.e56 +firmware: pcxhr/dspe924.e56 +firmware: pcxhr/xlxc1222e.dat +firmware: pcxhr/xlxc1222hr.dat +firmware: pcxhr/xlxc222.dat +firmware: pcxhr/xlxc882e.dat +firmware: pcxhr/xlxc882hr.dat +firmware: pcxhr/xlxc924.dat +firmware: pcxhr/xlxint.dat +firmware: phanfw.bin +firmware: prism2_ru.fw +firmware: prism_ap_fw.bin +firmware: prism_sta_fw.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: qcom/a300_pfp.fw +firmware: qcom/a300_pm4.fw +firmware: qcom/a330_pfp.fw +firmware: qcom/a330_pm4.fw +firmware: qcom/a420_pfp.fw +firmware: qcom/a420_pm4.fw +firmware: qcom/a530_pfp.fw +firmware: qcom/a530_pm4.fw +firmware: qcom/a530_zap.b00 +firmware: qcom/a530_zap.b01 +firmware: qcom/a530_zap.b02 +firmware: qcom/a530_zap.mdt +firmware: qcom/a530v3_gpmu.fw2 +firmware: qcom/a630_gmu.bin +firmware: qcom/a630_sqe.fw +firmware: qcom/a630_zap.mbn +firmware: qed/qed_init_values_zipped-8.42.2.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: r8a779x_usb3_v1.dlmem +firmware: r8a779x_usb3_v2.dlmem +firmware: r8a779x_usb3_v3.dlmem +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: renesas_usb_fw.mem +firmware: riptide.hex +firmware: rp2.fw +firmware: rpm_firmware.bin +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_bt/rtl8723a_fw.bin +firmware: rtl_bt/rtl8723b_config.bin +firmware: rtl_bt/rtl8723b_fw.bin +firmware: rtl_bt/rtl8723bs_config.bin +firmware: rtl_bt/rtl8723bs_fw.bin +firmware: rtl_bt/rtl8723ds_config.bin +firmware: rtl_bt/rtl8723ds_fw.bin +firmware: rtl_bt/rtl8761a_config.bin +firmware: rtl_bt/rtl8761a_fw.bin +firmware: rtl_bt/rtl8821a_config.bin +firmware: rtl_bt/rtl8821a_fw.bin +firmware: rtl_bt/rtl8822b_config.bin +firmware: rtl_bt/rtl8822b_fw.bin +firmware: rtl_nic/rtl8105e-1.fw +firmware: rtl_nic/rtl8106e-1.fw +firmware: rtl_nic/rtl8106e-2.fw +firmware: rtl_nic/rtl8107e-1.fw +firmware: rtl_nic/rtl8107e-2.fw +firmware: rtl_nic/rtl8125a-3.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/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-1.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/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/rtl8192sefw.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/rtw8822b_fw.bin +firmware: rtw88/rtw8822c_fw.bin +firmware: rtw88/rtw8822c_wow_fw.bin +firmware: s5k4ecgx.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/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: vpdma-1b8.bin +firmware: vx/bd56002.boot +firmware: vx/bd563s3.boot +firmware: vx/bd563v2.boot +firmware: vx/bx_1_vp4.b56 +firmware: vx/bx_1_vxp.b56 +firmware: vx/l_1_v22.d56 +firmware: vx/l_1_vp4.d56 +firmware: vx/l_1_vx2.d56 +firmware: vx/l_1_vxp.d56 +firmware: vx/x1_1_vp4.xlx +firmware: vx/x1_1_vx2.xlx +firmware: vx/x1_1_vxp.xlx +firmware: vx/x1_2_v22.xlx +firmware: vxge/X3fw-pxe.ncf +firmware: vxge/X3fw.ncf +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: yamaha/ds1_ctrl.fw +firmware: yamaha/ds1_dsp.fw +firmware: yamaha/ds1e_ctrl.fw +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-azure-5.8-5.8.0.orig/debian.master/abi/5.8.0-50.56/ppc64el/generic +++ linux-azure-5.8-5.8.0/debian.master/abi/5.8.0-50.56/ppc64el/generic @@ -0,0 +1,23290 @@ +EXPORT_SYMBOL arch/powerpc/platforms/pseries/hvcserver 0x913f1e6d hvcs_get_partner_info +EXPORT_SYMBOL arch/powerpc/platforms/pseries/hvcserver 0xa73464c7 hvcs_register_connection +EXPORT_SYMBOL arch/powerpc/platforms/pseries/hvcserver 0xbdf97f58 hvcs_free_connection +EXPORT_SYMBOL arch/powerpc/platforms/pseries/hvcserver 0xc39c3704 hvcs_free_partner_info +EXPORT_SYMBOL crypto/ecc 0x16e410ff vli_from_be64 +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 0x9263b417 ecc_point_mult_shamir +EXPORT_SYMBOL crypto/ecc 0x92668805 vli_cmp +EXPORT_SYMBOL crypto/ecc 0x9f6efabd vli_sub +EXPORT_SYMBOL crypto/ecc 0xa76b31a2 crypto_ecdh_shared_secret +EXPORT_SYMBOL crypto/ecc 0xd6315f31 ecc_gen_privkey +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 0x37f0d238 crypto_nhpoly1305_final_helper +EXPORT_SYMBOL crypto/nhpoly1305 0x97df4ef5 crypto_nhpoly1305_final +EXPORT_SYMBOL crypto/nhpoly1305 0xb8410e2f crypto_nhpoly1305_update +EXPORT_SYMBOL crypto/nhpoly1305 0xf01fbba8 crypto_nhpoly1305_update_helper +EXPORT_SYMBOL crypto/nhpoly1305 0xfb681fe5 crypto_nhpoly1305_init +EXPORT_SYMBOL crypto/nhpoly1305 0xfce1581e crypto_nhpoly1305_setkey +EXPORT_SYMBOL crypto/sha3_generic 0x0f71ace9 crypto_sha3_update +EXPORT_SYMBOL crypto/sha3_generic 0x4f8482df crypto_sha3_init +EXPORT_SYMBOL crypto/sha3_generic 0x890c6391 crypto_sha3_final +EXPORT_SYMBOL crypto/sm3_generic 0x21cdbd99 crypto_sm3_update +EXPORT_SYMBOL crypto/sm3_generic 0xbed0b73c crypto_sm3_finup +EXPORT_SYMBOL crypto/xor 0x5b6c00e6 xor_blocks +EXPORT_SYMBOL drivers/atm/suni 0x03f8a120 suni_init +EXPORT_SYMBOL drivers/bcma/bcma 0xdf76a895 bcma_core_irq +EXPORT_SYMBOL drivers/bcma/bcma 0xec3cfdc6 bcma_core_dma_translation +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/block/paride/paride 0x086dd839 pi_read_regr +EXPORT_SYMBOL drivers/block/paride/paride 0x10a080c7 pi_write_block +EXPORT_SYMBOL drivers/block/paride/paride 0x22bdea6d pi_init +EXPORT_SYMBOL drivers/block/paride/paride 0x4267110a pi_register_driver +EXPORT_SYMBOL drivers/block/paride/paride 0x5a48ec28 pi_disconnect +EXPORT_SYMBOL drivers/block/paride/paride 0x62740999 pi_write_regr +EXPORT_SYMBOL drivers/block/paride/paride 0x691a42a4 pi_do_claimed +EXPORT_SYMBOL drivers/block/paride/paride 0x72c44ccb paride_unregister +EXPORT_SYMBOL drivers/block/paride/paride 0x94557f74 pi_read_block +EXPORT_SYMBOL drivers/block/paride/paride 0xa0164f43 paride_register +EXPORT_SYMBOL drivers/block/paride/paride 0xa8a002f1 pi_schedule_claimed +EXPORT_SYMBOL drivers/block/paride/paride 0xb21ba07d pi_unregister_driver +EXPORT_SYMBOL drivers/block/paride/paride 0xb91aadfc pi_connect +EXPORT_SYMBOL drivers/block/paride/paride 0xe07819e3 pi_release +EXPORT_SYMBOL drivers/bluetooth/btbcm 0xc98d6f4e btbcm_patchram +EXPORT_SYMBOL drivers/bluetooth/btrsi 0x83220140 rsi_bt_ops +EXPORT_SYMBOL drivers/bus/mhi/core/mhi 0x7e87439a 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 0x230094ac ipmi_smi_watchdog_pretimeout +EXPORT_SYMBOL drivers/char/ipmi/ipmi_msghandler 0x264ce83f ipmi_get_smi_info +EXPORT_SYMBOL drivers/char/ipmi/ipmi_msghandler 0x2f7a2e1c ipmi_smi_watcher_unregister +EXPORT_SYMBOL drivers/char/ipmi/ipmi_msghandler 0x31cab048 ipmi_smi_msg_received +EXPORT_SYMBOL drivers/char/ipmi/ipmi_msghandler 0x40f2b10c ipmi_alloc_smi_msg +EXPORT_SYMBOL drivers/char/ipmi/ipmi_msghandler 0x4c2054d7 ipmi_request_settime +EXPORT_SYMBOL drivers/char/ipmi/ipmi_msghandler 0x4ed2f584 ipmi_add_smi +EXPORT_SYMBOL drivers/char/ipmi/ipmi_msghandler 0x50f65edf ipmi_set_gets_events +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 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 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/ipmi/ipmi_msghandler 0xfe9b1d15 ipmi_smi_watcher_register +EXPORT_SYMBOL drivers/char/tpm/st33zp24/tpm_st33zp24 0x9a524529 st33zp24_probe +EXPORT_SYMBOL drivers/char/tpm/st33zp24/tpm_st33zp24 0xc948a5e8 st33zp24_remove +EXPORT_SYMBOL drivers/char/tpm/st33zp24/tpm_st33zp24 0xe6684aa3 st33zp24_pm_resume +EXPORT_SYMBOL drivers/char/tpm/st33zp24/tpm_st33zp24 0xebebd625 st33zp24_pm_suspend +EXPORT_SYMBOL drivers/char/xillybus/xillybus_core 0x103280a8 xillybus_init_endpoint +EXPORT_SYMBOL drivers/char/xillybus/xillybus_core 0x25978d50 xillybus_isr +EXPORT_SYMBOL drivers/char/xillybus/xillybus_core 0xe09c83d8 xillybus_endpoint_remove +EXPORT_SYMBOL drivers/char/xillybus/xillybus_core 0xfff25b6e xillybus_endpoint_discovery +EXPORT_SYMBOL drivers/crypto/atmel-i2c 0x27a0e976 atmel_i2c_send_receive +EXPORT_SYMBOL drivers/crypto/atmel-i2c 0x35701e2f atmel_i2c_enqueue +EXPORT_SYMBOL drivers/crypto/atmel-i2c 0x5a317d36 atmel_i2c_probe +EXPORT_SYMBOL drivers/crypto/atmel-i2c 0x80a11b1d atmel_i2c_init_read_cmd +EXPORT_SYMBOL drivers/crypto/atmel-i2c 0xc71ed50c atmel_i2c_init_genkey_cmd +EXPORT_SYMBOL drivers/crypto/atmel-i2c 0xf283e995 atmel_i2c_init_random_cmd +EXPORT_SYMBOL drivers/crypto/atmel-i2c 0xfaab573f atmel_i2c_init_ecdh_cmd +EXPORT_SYMBOL drivers/firewire/firewire-core 0x06ab7154 fw_card_initialize +EXPORT_SYMBOL drivers/firewire/firewire-core 0x0bc6094c fw_core_remove_descriptor +EXPORT_SYMBOL drivers/firewire/firewire-core 0x1d581be1 fw_core_handle_response +EXPORT_SYMBOL drivers/firewire/firewire-core 0x27a082af fw_send_response +EXPORT_SYMBOL drivers/firewire/firewire-core 0x2885fec5 fw_get_request_speed +EXPORT_SYMBOL drivers/firewire/firewire-core 0x32f235c1 fw_device_enable_phys_dma +EXPORT_SYMBOL drivers/firewire/firewire-core 0x37c38708 fw_iso_context_destroy +EXPORT_SYMBOL drivers/firewire/firewire-core 0x389f056b fw_send_request +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 0x58f542e3 fw_run_transaction +EXPORT_SYMBOL drivers/firewire/firewire-core 0x64d75cb2 fw_iso_buffer_init +EXPORT_SYMBOL drivers/firewire/firewire-core 0x66b4d86f fw_card_add +EXPORT_SYMBOL drivers/firewire/firewire-core 0x69b99ac9 fw_iso_context_start +EXPORT_SYMBOL drivers/firewire/firewire-core 0x6dc50487 fw_csr_string +EXPORT_SYMBOL drivers/firewire/firewire-core 0x75e70d04 fw_cancel_transaction +EXPORT_SYMBOL drivers/firewire/firewire-core 0x7f31ffc7 fw_iso_buffer_destroy +EXPORT_SYMBOL drivers/firewire/firewire-core 0x86468d44 fw_rcode_string +EXPORT_SYMBOL drivers/firewire/firewire-core 0x8751163d fw_core_handle_request +EXPORT_SYMBOL drivers/firewire/firewire-core 0x8c03bb0c fw_schedule_bus_reset +EXPORT_SYMBOL drivers/firewire/firewire-core 0x8ca1df20 fw_core_remove_address_handler +EXPORT_SYMBOL drivers/firewire/firewire-core 0x93991011 fw_core_remove_card +EXPORT_SYMBOL drivers/firewire/firewire-core 0xa7a7a6c7 fw_fill_response +EXPORT_SYMBOL drivers/firewire/firewire-core 0xa97272da fw_core_handle_bus_reset +EXPORT_SYMBOL drivers/firewire/firewire-core 0xaedf84ce fw_high_memory_region +EXPORT_SYMBOL drivers/firewire/firewire-core 0xbe9f6b86 fw_iso_context_flush_completions +EXPORT_SYMBOL drivers/firewire/firewire-core 0xc16298b2 fw_iso_context_queue_flush +EXPORT_SYMBOL drivers/firewire/firewire-core 0xcfdcf6cd fw_iso_context_stop +EXPORT_SYMBOL drivers/firewire/firewire-core 0xd3ab7d56 fw_iso_resource_manage +EXPORT_SYMBOL drivers/firewire/firewire-core 0xd496eea2 fw_core_add_address_handler +EXPORT_SYMBOL drivers/firewire/firewire-core 0xdd1f6d2a fw_bus_type +EXPORT_SYMBOL drivers/firewire/firewire-core 0xe3fde125 fw_csr_iterator_next +EXPORT_SYMBOL drivers/firewire/firewire-core 0xe586d99a fw_iso_context_queue +EXPORT_SYMBOL drivers/firewire/firewire-core 0xe80e5087 fw_csr_iterator_init +EXPORT_SYMBOL drivers/firewire/firewire-core 0xee4fde1a fw_iso_context_create +EXPORT_SYMBOL drivers/gpu/drm/drm 0x00b6090f drm_driver_legacy_fb_format +EXPORT_SYMBOL drivers/gpu/drm/drm 0x01bcd356 drm_plane_create_alpha_property +EXPORT_SYMBOL drivers/gpu/drm/drm 0x0226b49e drm_plane_cleanup +EXPORT_SYMBOL drivers/gpu/drm/drm 0x03c63897 __drm_get_edid_firmware_path +EXPORT_SYMBOL drivers/gpu/drm/drm 0x03e8a61b drm_print_regset32 +EXPORT_SYMBOL drivers/gpu/drm/drm 0x0453188a drm_connector_list_iter_next +EXPORT_SYMBOL drivers/gpu/drm/drm 0x055d9a61 drm_framebuffer_init +EXPORT_SYMBOL drivers/gpu/drm/drm 0x070b28aa drm_ht_remove_item +EXPORT_SYMBOL drivers/gpu/drm/drm 0x0712e21d drm_edid_get_monitor_name +EXPORT_SYMBOL drivers/gpu/drm/drm 0x07f88521 drm_edid_is_valid +EXPORT_SYMBOL drivers/gpu/drm/drm 0x0814cf52 drm_gem_object_init +EXPORT_SYMBOL drivers/gpu/drm/drm 0x08729f78 drm_mode_config_cleanup +EXPORT_SYMBOL drivers/gpu/drm/drm 0x0876a386 drm_prime_gem_destroy +EXPORT_SYMBOL drivers/gpu/drm/drm 0x08a1cef9 drm_crtc_from_index +EXPORT_SYMBOL drivers/gpu/drm/drm 0x08a6a23f drm_syncobj_get_fd +EXPORT_SYMBOL drivers/gpu/drm/drm 0x0967f01f drm_dev_register +EXPORT_SYMBOL drivers/gpu/drm/drm 0x09de3655 drm_client_framebuffer_delete +EXPORT_SYMBOL drivers/gpu/drm/drm 0x0a047b09 drm_mode_create_tile_group +EXPORT_SYMBOL drivers/gpu/drm/drm 0x0a72f765 drm_clflush_virt_range +EXPORT_SYMBOL drivers/gpu/drm/drm 0x0aa85a14 drm_gem_object_lookup +EXPORT_SYMBOL drivers/gpu/drm/drm 0x0b57196f drm_gem_lock_reservations +EXPORT_SYMBOL drivers/gpu/drm/drm 0x0be9c862 drm_mode_create +EXPORT_SYMBOL drivers/gpu/drm/drm 0x0d1c9204 drm_gem_private_object_init +EXPORT_SYMBOL drivers/gpu/drm/drm 0x0dc65d52 drm_property_create_bitmask +EXPORT_SYMBOL drivers/gpu/drm/drm 0x0de33a71 drm_hdcp_update_content_protection +EXPORT_SYMBOL drivers/gpu/drm/drm 0x0ded5107 drm_connector_cleanup +EXPORT_SYMBOL drivers/gpu/drm/drm 0x0dee1c9a drm_match_cea_mode +EXPORT_SYMBOL drivers/gpu/drm/drm 0x0ecbe9ed drm_modeset_lock_single_interruptible +EXPORT_SYMBOL drivers/gpu/drm/drm 0x0fd60df2 drm_get_connector_status_name +EXPORT_SYMBOL drivers/gpu/drm/drm 0x107742a9 drm_get_subpixel_order_name +EXPORT_SYMBOL drivers/gpu/drm/drm 0x1080258f drm_agp_unbind +EXPORT_SYMBOL drivers/gpu/drm/drm 0x10c62b61 __drm_printfn_debug +EXPORT_SYMBOL drivers/gpu/drm/drm 0x11c2af52 drm_connector_list_update +EXPORT_SYMBOL drivers/gpu/drm/drm 0x12f076a5 drm_gem_dmabuf_release +EXPORT_SYMBOL drivers/gpu/drm/drm 0x13e14103 drm_mode_equal_no_clocks_no_stereo +EXPORT_SYMBOL drivers/gpu/drm/drm 0x147bf5dc drm_gem_prime_handle_to_fd +EXPORT_SYMBOL drivers/gpu/drm/drm 0x156c98a5 drm_plane_init +EXPORT_SYMBOL drivers/gpu/drm/drm 0x15997e8b drm_crtc_arm_vblank_event +EXPORT_SYMBOL drivers/gpu/drm/drm 0x15b02cc7 drm_panel_prepare +EXPORT_SYMBOL drivers/gpu/drm/drm 0x15d8aa41 __drm_printfn_seq_file +EXPORT_SYMBOL drivers/gpu/drm/drm 0x164ceac9 drm_syncobj_add_point +EXPORT_SYMBOL drivers/gpu/drm/drm 0x16ac2597 drm_printf +EXPORT_SYMBOL drivers/gpu/drm/drm 0x17382a96 drm_connector_init_with_ddc +EXPORT_SYMBOL drivers/gpu/drm/drm 0x1760c7d2 drm_i2c_encoder_mode_fixup +EXPORT_SYMBOL drivers/gpu/drm/drm 0x193b9197 drm_bridge_chain_mode_set +EXPORT_SYMBOL drivers/gpu/drm/drm 0x193cb8be drm_gem_fence_array_add_implicit +EXPORT_SYMBOL drivers/gpu/drm/drm 0x1a08efa1 drm_atomic_set_crtc_for_connector +EXPORT_SYMBOL drivers/gpu/drm/drm 0x1a411479 drm_syncobj_free +EXPORT_SYMBOL drivers/gpu/drm/drm 0x1aaa6cc0 drm_event_cancel_free +EXPORT_SYMBOL drivers/gpu/drm/drm 0x1af72a83 drm_vma_node_allow +EXPORT_SYMBOL drivers/gpu/drm/drm 0x1b58f604 __devm_drm_dev_alloc +EXPORT_SYMBOL drivers/gpu/drm/drm 0x1b970b49 drm_crtc_accurate_vblank_count +EXPORT_SYMBOL drivers/gpu/drm/drm 0x1bec13b3 drm_panel_get_modes +EXPORT_SYMBOL drivers/gpu/drm/drm 0x1c144048 drm_writeback_queue_job +EXPORT_SYMBOL drivers/gpu/drm/drm 0x1cfceb06 drm_client_modeset_commit +EXPORT_SYMBOL drivers/gpu/drm/drm 0x1e712a21 drm_prime_sg_to_page_addr_arrays +EXPORT_SYMBOL drivers/gpu/drm/drm 0x1f74e86c drm_connector_attach_content_type_property +EXPORT_SYMBOL drivers/gpu/drm/drm 0x1f77846a drm_i2c_encoder_destroy +EXPORT_SYMBOL drivers/gpu/drm/drm 0x2015e82b drm_atomic_add_encoder_bridges +EXPORT_SYMBOL drivers/gpu/drm/drm 0x2039b574 drm_mode_duplicate +EXPORT_SYMBOL drivers/gpu/drm/drm 0x207f1271 drm_gem_shmem_pin +EXPORT_SYMBOL drivers/gpu/drm/drm 0x20bacd1b drm_atomic_get_new_connector_for_encoder +EXPORT_SYMBOL drivers/gpu/drm/drm 0x2183c08c drm_mm_scan_add_block +EXPORT_SYMBOL drivers/gpu/drm/drm 0x21cec992 drm_object_property_set_value +EXPORT_SYMBOL drivers/gpu/drm/drm 0x22f123ed drm_client_modeset_dpms +EXPORT_SYMBOL drivers/gpu/drm/drm 0x2532689b drm_mode_is_420 +EXPORT_SYMBOL drivers/gpu/drm/drm 0x25454da3 drm_add_edid_modes +EXPORT_SYMBOL drivers/gpu/drm/drm 0x25daad93 __drm_mm_interval_first +EXPORT_SYMBOL drivers/gpu/drm/drm 0x271cc5c6 drm_atomic_set_mode_prop_for_crtc +EXPORT_SYMBOL drivers/gpu/drm/drm 0x2754dad8 drm_mm_reserve_node +EXPORT_SYMBOL drivers/gpu/drm/drm 0x27922a47 drm_atomic_get_old_connector_for_encoder +EXPORT_SYMBOL drivers/gpu/drm/drm 0x28246519 drm_release +EXPORT_SYMBOL drivers/gpu/drm/drm 0x2856da0d drm_hdmi_avi_infoframe_from_display_mode +EXPORT_SYMBOL drivers/gpu/drm/drm 0x293c7dc0 drm_debugfs_remove_files +EXPORT_SYMBOL drivers/gpu/drm/drm 0x29f078d1 drm_mode_legacy_fb_format +EXPORT_SYMBOL drivers/gpu/drm/drm 0x29f61ed4 drm_gem_get_pages +EXPORT_SYMBOL drivers/gpu/drm/drm 0x2a962499 drm_mm_scan_init_with_range +EXPORT_SYMBOL drivers/gpu/drm/drm 0x2c535562 drm_vma_node_revoke +EXPORT_SYMBOL drivers/gpu/drm/drm 0x2d50570f drm_rect_calc_hscale +EXPORT_SYMBOL drivers/gpu/drm/drm 0x2d6937c7 drm_vma_offset_remove +EXPORT_SYMBOL drivers/gpu/drm/drm 0x2e1095b5 drm_crtc_send_vblank_event +EXPORT_SYMBOL drivers/gpu/drm/drm 0x2e7155e5 drm_plane_create_rotation_property +EXPORT_SYMBOL drivers/gpu/drm/drm 0x2ef6322c drm_gem_cma_prime_import_sg_table_vmap +EXPORT_SYMBOL drivers/gpu/drm/drm 0x2f309f43 drm_ioctl_permit +EXPORT_SYMBOL drivers/gpu/drm/drm 0x2fbbd1ef drm_mode_validate_driver +EXPORT_SYMBOL drivers/gpu/drm/drm 0x2fe6a11c drm_bridge_chain_post_disable +EXPORT_SYMBOL drivers/gpu/drm/drm 0x300643ca drm_legacy_ioremap_wc +EXPORT_SYMBOL drivers/gpu/drm/drm 0x31b8a5e3 __drm_set_edid_firmware_path +EXPORT_SYMBOL drivers/gpu/drm/drm 0x331427a1 drm_crtc_vblank_off +EXPORT_SYMBOL drivers/gpu/drm/drm 0x33942535 drm_plane_create_blend_mode_property +EXPORT_SYMBOL drivers/gpu/drm/drm 0x3503d682 drm_mode_vrefresh +EXPORT_SYMBOL drivers/gpu/drm/drm 0x35afae24 __drm_puts_seq_file +EXPORT_SYMBOL drivers/gpu/drm/drm 0x35f18af5 drm_i2c_encoder_save +EXPORT_SYMBOL drivers/gpu/drm/drm 0x3641c75a drm_gem_create_mmap_offset +EXPORT_SYMBOL drivers/gpu/drm/drm 0x378d294c drm_mode_is_420_also +EXPORT_SYMBOL drivers/gpu/drm/drm 0x379250e7 drm_flip_work_cleanup +EXPORT_SYMBOL drivers/gpu/drm/drm 0x392a63ee drm_mode_create_hdmi_colorspace_property +EXPORT_SYMBOL drivers/gpu/drm/drm 0x39b02571 drm_atomic_get_old_bridge_state +EXPORT_SYMBOL drivers/gpu/drm/drm 0x39bc1bb8 drm_master_put +EXPORT_SYMBOL drivers/gpu/drm/drm 0x3a358c68 drm_wait_one_vblank +EXPORT_SYMBOL drivers/gpu/drm/drm 0x3ba17eab drm_ht_insert_item +EXPORT_SYMBOL drivers/gpu/drm/drm 0x3c2abbb7 drm_atomic_set_mode_for_crtc +EXPORT_SYMBOL drivers/gpu/drm/drm 0x3cd9a2db drm_client_rotation +EXPORT_SYMBOL drivers/gpu/drm/drm 0x3f9bde37 drm_legacy_ioremap +EXPORT_SYMBOL drivers/gpu/drm/drm 0x404cdcd1 drm_atomic_bridge_chain_disable +EXPORT_SYMBOL drivers/gpu/drm/drm 0x40b13084 drm_framebuffer_unregister_private +EXPORT_SYMBOL drivers/gpu/drm/drm 0x40d32c1b drm_writeback_prepare_job +EXPORT_SYMBOL drivers/gpu/drm/drm 0x4137ff7c drm_state_dump +EXPORT_SYMBOL drivers/gpu/drm/drm 0x4370d5f2 drm_flip_work_init +EXPORT_SYMBOL drivers/gpu/drm/drm 0x43e08d23 drm_agp_release +EXPORT_SYMBOL drivers/gpu/drm/drm 0x44351c88 drm_i2c_encoder_restore +EXPORT_SYMBOL drivers/gpu/drm/drm 0x44404d60 drm_mode_create_dvi_i_properties +EXPORT_SYMBOL drivers/gpu/drm/drm 0x4485aab8 drm_atomic_bridge_chain_enable +EXPORT_SYMBOL drivers/gpu/drm/drm 0x4491d0d6 drm_calc_timestamping_constants +EXPORT_SYMBOL drivers/gpu/drm/drm 0x44c2bd89 drm_gem_put_pages +EXPORT_SYMBOL drivers/gpu/drm/drm 0x453ed322 drm_vma_offset_manager_destroy +EXPORT_SYMBOL drivers/gpu/drm/drm 0x460778bc drm_i2c_encoder_mode_set +EXPORT_SYMBOL drivers/gpu/drm/drm 0x469882ea drm_any_plane_has_format +EXPORT_SYMBOL drivers/gpu/drm/drm 0x46a70411 drm_send_event +EXPORT_SYMBOL drivers/gpu/drm/drm 0x474156b5 drm_mode_equal +EXPORT_SYMBOL drivers/gpu/drm/drm 0x4776754e drm_atomic_private_obj_fini +EXPORT_SYMBOL drivers/gpu/drm/drm 0x47f985aa drm_edid_duplicate +EXPORT_SYMBOL drivers/gpu/drm/drm 0x48c5595a drm_put_dev +EXPORT_SYMBOL drivers/gpu/drm/drm 0x4905ccff drm_atomic_state_init +EXPORT_SYMBOL drivers/gpu/drm/drm 0x49776978 drm_mode_create_tv_properties +EXPORT_SYMBOL drivers/gpu/drm/drm 0x49ae0751 drm_syncobj_find +EXPORT_SYMBOL drivers/gpu/drm/drm 0x49f277de drm_gem_prime_mmap +EXPORT_SYMBOL drivers/gpu/drm/drm 0x49f84154 drm_panel_remove +EXPORT_SYMBOL drivers/gpu/drm/drm 0x4a32307f drm_client_register +EXPORT_SYMBOL drivers/gpu/drm/drm 0x4b149428 drm_framebuffer_lookup +EXPORT_SYMBOL drivers/gpu/drm/drm 0x4b7ebf95 drm_mm_remove_node +EXPORT_SYMBOL drivers/gpu/drm/drm 0x4bd8ca52 drm_bridge_attach +EXPORT_SYMBOL drivers/gpu/drm/drm 0x4bdd3b6e drm_modeset_lock +EXPORT_SYMBOL drivers/gpu/drm/drm 0x4c49ea8d drm_modeset_lock_all +EXPORT_SYMBOL drivers/gpu/drm/drm 0x4c500e16 drm_display_info_set_bus_formats +EXPORT_SYMBOL drivers/gpu/drm/drm 0x4e095f11 drm_get_format_name +EXPORT_SYMBOL drivers/gpu/drm/drm 0x4eed32e5 drm_crtc_vblank_waitqueue +EXPORT_SYMBOL drivers/gpu/drm/drm 0x4f18a150 __drm_debug +EXPORT_SYMBOL drivers/gpu/drm/drm 0x4faaa3ad drm_gem_vm_open +EXPORT_SYMBOL drivers/gpu/drm/drm 0x4fb347de drm_plane_create_zpos_property +EXPORT_SYMBOL drivers/gpu/drm/drm 0x50674de7 drm_timeout_abs_to_jiffies +EXPORT_SYMBOL drivers/gpu/drm/drm 0x5072a7f8 drm_dev_init +EXPORT_SYMBOL drivers/gpu/drm/drm 0x50ec6fa9 drm_gem_shmem_get_pages +EXPORT_SYMBOL drivers/gpu/drm/drm 0x5321f9a6 drm_crtc_wait_one_vblank +EXPORT_SYMBOL drivers/gpu/drm/drm 0x53c8ffeb drm_vma_node_is_allowed +EXPORT_SYMBOL drivers/gpu/drm/drm 0x54066dce drm_atomic_get_crtc_state +EXPORT_SYMBOL drivers/gpu/drm/drm 0x54373f3a drm_connector_attach_max_bpc_property +EXPORT_SYMBOL drivers/gpu/drm/drm 0x54a7b2fd drm_mode_create_scaling_mode_property +EXPORT_SYMBOL drivers/gpu/drm/drm 0x54b19052 drm_crtc_vblank_put +EXPORT_SYMBOL drivers/gpu/drm/drm 0x54d50050 drm_ioctl +EXPORT_SYMBOL drivers/gpu/drm/drm 0x55a589e4 drm_mode_create_aspect_ratio_property +EXPORT_SYMBOL drivers/gpu/drm/drm 0x56c6e828 drm_mode_get_hv_timing +EXPORT_SYMBOL drivers/gpu/drm/drm 0x57698a50 drm_mm_takedown +EXPORT_SYMBOL drivers/gpu/drm/drm 0x57b6efe3 drm_ioctl_flags +EXPORT_SYMBOL drivers/gpu/drm/drm 0x580346f5 drm_atomic_set_crtc_for_plane +EXPORT_SYMBOL drivers/gpu/drm/drm 0x59056243 drm_mm_replace_node +EXPORT_SYMBOL drivers/gpu/drm/drm 0x598a609b drm_gem_map_attach +EXPORT_SYMBOL drivers/gpu/drm/drm 0x5ba6d7dd drm_mode_object_get +EXPORT_SYMBOL drivers/gpu/drm/drm 0x5c7a7657 of_drm_find_panel +EXPORT_SYMBOL drivers/gpu/drm/drm 0x5c8788f7 drm_property_create +EXPORT_SYMBOL drivers/gpu/drm/drm 0x5d44dc22 __drmm_add_action_or_reset +EXPORT_SYMBOL drivers/gpu/drm/drm 0x5d559068 drm_vma_offset_lookup_locked +EXPORT_SYMBOL drivers/gpu/drm/drm 0x5d9e1852 drm_clflush_pages +EXPORT_SYMBOL drivers/gpu/drm/drm 0x5e65d20a __drm_atomic_helper_set_config +EXPORT_SYMBOL drivers/gpu/drm/drm 0x5e696242 drm_agp_info +EXPORT_SYMBOL drivers/gpu/drm/drm 0x5f7985a5 drm_mm_scan_remove_block +EXPORT_SYMBOL drivers/gpu/drm/drm 0x5fadb1cf drm_prime_pages_to_sg +EXPORT_SYMBOL drivers/gpu/drm/drm 0x6003dc30 drm_syncobj_find_fence +EXPORT_SYMBOL drivers/gpu/drm/drm 0x604692c4 drm_vma_offset_manager_init +EXPORT_SYMBOL drivers/gpu/drm/drm 0x60b21f64 drm_mode_create_content_type_property +EXPORT_SYMBOL drivers/gpu/drm/drm 0x617da9b6 drm_dev_has_vblank +EXPORT_SYMBOL drivers/gpu/drm/drm 0x6190252a drm_mode_crtc_set_gamma_size +EXPORT_SYMBOL drivers/gpu/drm/drm 0x61a94a03 drmm_kfree +EXPORT_SYMBOL drivers/gpu/drm/drm 0x61fd3d29 drm_color_lut_check +EXPORT_SYMBOL drivers/gpu/drm/drm 0x62a69c27 drm_compat_ioctl +EXPORT_SYMBOL drivers/gpu/drm/drm 0x637b135a drm_crtc_enable_color_mgmt +EXPORT_SYMBOL drivers/gpu/drm/drm 0x637cac19 drm_mode_set_crtcinfo +EXPORT_SYMBOL drivers/gpu/drm/drm 0x64949e2b drm_bridge_add +EXPORT_SYMBOL drivers/gpu/drm/drm 0x6571c572 drm_set_preferred_mode +EXPORT_SYMBOL drivers/gpu/drm/drm 0x65fd4782 drm_gem_mmap_obj +EXPORT_SYMBOL drivers/gpu/drm/drm 0x66551bc7 drm_detect_monitor_audio +EXPORT_SYMBOL drivers/gpu/drm/drm 0x676fb445 drm_atomic_bridge_chain_post_disable +EXPORT_SYMBOL drivers/gpu/drm/drm 0x6863d55d drm_open +EXPORT_SYMBOL drivers/gpu/drm/drm 0x69f6a180 drm_modeset_unlock +EXPORT_SYMBOL drivers/gpu/drm/drm 0x6a06767d drm_mode_config_reset +EXPORT_SYMBOL drivers/gpu/drm/drm 0x6b04c583 drm_bridge_chain_disable +EXPORT_SYMBOL drivers/gpu/drm/drm 0x6b895946 drm_vblank_restore +EXPORT_SYMBOL drivers/gpu/drm/drm 0x6c78d53b drm_crtc_init_with_planes +EXPORT_SYMBOL drivers/gpu/drm/drm 0x6ce56a04 drm_dev_put +EXPORT_SYMBOL drivers/gpu/drm/drm 0x6d464cfc drm_gem_dmabuf_vmap +EXPORT_SYMBOL drivers/gpu/drm/drm 0x6e30ba8e drm_rect_rotate_inv +EXPORT_SYMBOL drivers/gpu/drm/drm 0x6f2d7845 drm_connector_unregister +EXPORT_SYMBOL drivers/gpu/drm/drm 0x70f18e7a drm_gem_dma_resv_wait +EXPORT_SYMBOL drivers/gpu/drm/drm 0x7118212b drm_gem_object_release +EXPORT_SYMBOL drivers/gpu/drm/drm 0x730d2fcf drm_gem_fence_array_add +EXPORT_SYMBOL drivers/gpu/drm/drm 0x73448006 drm_gem_mmap +EXPORT_SYMBOL drivers/gpu/drm/drm 0x734b726f drm_dev_printk +EXPORT_SYMBOL drivers/gpu/drm/drm 0x735ade12 drm_gem_unmap_dma_buf +EXPORT_SYMBOL drivers/gpu/drm/drm 0x7412a0a8 drm_cvt_mode +EXPORT_SYMBOL drivers/gpu/drm/drm 0x7531f533 drm_atomic_bridge_chain_check +EXPORT_SYMBOL drivers/gpu/drm/drm 0x757432aa drm_connector_attach_content_protection_property +EXPORT_SYMBOL drivers/gpu/drm/drm 0x75d95ae8 drm_atomic_state_clear +EXPORT_SYMBOL drivers/gpu/drm/drm 0x765d9377 drm_panel_attach +EXPORT_SYMBOL drivers/gpu/drm/drm 0x77c32f00 drm_mode_object_put +EXPORT_SYMBOL drivers/gpu/drm/drm 0x77f3e6df drm_client_framebuffer_create +EXPORT_SYMBOL drivers/gpu/drm/drm 0x781b5770 drm_mode_object_find +EXPORT_SYMBOL drivers/gpu/drm/drm 0x785b2978 drm_is_current_master +EXPORT_SYMBOL drivers/gpu/drm/drm 0x790baa64 drm_mode_create_dp_colorspace_property +EXPORT_SYMBOL drivers/gpu/drm/drm 0x793874a2 drm_client_modeset_commit_locked +EXPORT_SYMBOL drivers/gpu/drm/drm 0x79f8c863 drm_add_modes_noedid +EXPORT_SYMBOL drivers/gpu/drm/drm 0x7bcda837 drmm_kmalloc +EXPORT_SYMBOL drivers/gpu/drm/drm 0x7c35b475 drm_vblank_init +EXPORT_SYMBOL drivers/gpu/drm/drm 0x7cfbf290 drm_crtc_vblank_get +EXPORT_SYMBOL drivers/gpu/drm/drm 0x7e1d4217 drm_event_reserve_init_locked +EXPORT_SYMBOL drivers/gpu/drm/drm 0x7edc546f drm_mm_print +EXPORT_SYMBOL drivers/gpu/drm/drm 0x7ff94976 drm_panel_unprepare +EXPORT_SYMBOL drivers/gpu/drm/drm 0x808c78d4 drm_gem_shmem_create_with_handle +EXPORT_SYMBOL drivers/gpu/drm/drm 0x80982fa2 drm_gem_shmem_purge_locked +EXPORT_SYMBOL drivers/gpu/drm/drm 0x8108949d drm_mode_equal_no_clocks +EXPORT_SYMBOL drivers/gpu/drm/drm 0x8180e74f drm_gem_map_dma_buf +EXPORT_SYMBOL drivers/gpu/drm/drm 0x81992424 drm_edid_header_is_valid +EXPORT_SYMBOL drivers/gpu/drm/drm 0x820eeec9 drm_atomic_get_private_obj_state +EXPORT_SYMBOL drivers/gpu/drm/drm 0x82caf5cf drm_gem_object_put_unlocked +EXPORT_SYMBOL drivers/gpu/drm/drm 0x832cfd13 drm_atomic_add_affected_connectors +EXPORT_SYMBOL drivers/gpu/drm/drm 0x83620850 drm_writeback_get_out_fence +EXPORT_SYMBOL drivers/gpu/drm/drm 0x836ba18d drm_gem_free_mmap_offset +EXPORT_SYMBOL drivers/gpu/drm/drm 0x840b2199 drm_plane_create_zpos_immutable_property +EXPORT_SYMBOL drivers/gpu/drm/drm 0x849e6191 drm_atomic_private_obj_init +EXPORT_SYMBOL drivers/gpu/drm/drm 0x8563a554 drm_ht_remove +EXPORT_SYMBOL drivers/gpu/drm/drm 0x86b97758 drm_send_event_locked +EXPORT_SYMBOL drivers/gpu/drm/drm 0x871ab41a drm_rect_intersect +EXPORT_SYMBOL drivers/gpu/drm/drm 0x8734cbc6 drm_gem_unlock_reservations +EXPORT_SYMBOL drivers/gpu/drm/drm 0x8799ca99 drm_read +EXPORT_SYMBOL drivers/gpu/drm/drm 0x87e9e8ae drm_mode_set_config_internal +EXPORT_SYMBOL drivers/gpu/drm/drm 0x88400230 drm_i2c_encoder_prepare +EXPORT_SYMBOL drivers/gpu/drm/drm 0x8919cb94 drm_atomic_get_bridge_state +EXPORT_SYMBOL drivers/gpu/drm/drm 0x89331daa drm_panel_add +EXPORT_SYMBOL drivers/gpu/drm/drm 0x8949a97a drm_crtc_check_viewport +EXPORT_SYMBOL drivers/gpu/drm/drm 0x89967d5c drm_property_create_object +EXPORT_SYMBOL drivers/gpu/drm/drm 0x8a15f564 drm_ioctl_kernel +EXPORT_SYMBOL drivers/gpu/drm/drm 0x8aa01f08 drm_gem_vm_close +EXPORT_SYMBOL drivers/gpu/drm/drm 0x8aa420a8 drm_bridge_chain_mode_fixup +EXPORT_SYMBOL drivers/gpu/drm/drm 0x8c04dda5 drm_gem_prime_export +EXPORT_SYMBOL drivers/gpu/drm/drm 0x8c4ee0e9 drm_syncobj_get_handle +EXPORT_SYMBOL drivers/gpu/drm/drm 0x8c4fd37c drm_mode_set_name +EXPORT_SYMBOL drivers/gpu/drm/drm 0x8c5d64d7 drm_panel_enable +EXPORT_SYMBOL drivers/gpu/drm/drm 0x8c5e5456 drm_plane_from_index +EXPORT_SYMBOL drivers/gpu/drm/drm 0x8c6f24a2 drm_gem_handle_create +EXPORT_SYMBOL drivers/gpu/drm/drm 0x8d1d084d drm_modeset_acquire_init +EXPORT_SYMBOL drivers/gpu/drm/drm 0x8dd2392e drm_connector_attach_tv_margin_properties +EXPORT_SYMBOL drivers/gpu/drm/drm 0x8dfe4524 drm_plane_create_color_properties +EXPORT_SYMBOL drivers/gpu/drm/drm 0x8e31640c drm_panel_of_backlight +EXPORT_SYMBOL drivers/gpu/drm/drm 0x8e7f6523 drm_gem_shmem_unpin +EXPORT_SYMBOL drivers/gpu/drm/drm 0x8ea3cdb7 drm_connector_set_link_status_property +EXPORT_SYMBOL drivers/gpu/drm/drm 0x8f53e0b0 drm_gtf_mode +EXPORT_SYMBOL drivers/gpu/drm/drm 0x8fa58390 drm_framebuffer_plane_height +EXPORT_SYMBOL drivers/gpu/drm/drm 0x90a266ba drm_connector_register +EXPORT_SYMBOL drivers/gpu/drm/drm 0x912c9c20 drm_panel_init +EXPORT_SYMBOL drivers/gpu/drm/drm 0x913e2915 drm_hdmi_avi_infoframe_content_type +EXPORT_SYMBOL drivers/gpu/drm/drm 0x916f83b1 drm_hdmi_avi_infoframe_bars +EXPORT_SYMBOL drivers/gpu/drm/drm 0x917dc2ff drm_agp_enable +EXPORT_SYMBOL drivers/gpu/drm/drm 0x91a85397 drm_encoder_init +EXPORT_SYMBOL drivers/gpu/drm/drm 0x91fec1cc drm_rect_calc_vscale +EXPORT_SYMBOL drivers/gpu/drm/drm 0x9213f5c3 drm_edid_to_speaker_allocation +EXPORT_SYMBOL drivers/gpu/drm/drm 0x937787c1 drm_flip_work_queue_task +EXPORT_SYMBOL drivers/gpu/drm/drm 0x943453d2 drm_atomic_state_default_release +EXPORT_SYMBOL drivers/gpu/drm/drm 0x945b4f1f drmm_add_final_kfree +EXPORT_SYMBOL drivers/gpu/drm/drm 0x95dbc76d drm_ht_create +EXPORT_SYMBOL drivers/gpu/drm/drm 0x95ed85b8 drm_atomic_nonblocking_commit +EXPORT_SYMBOL drivers/gpu/drm/drm 0x9680a684 drm_mode_parse_command_line_for_connector +EXPORT_SYMBOL drivers/gpu/drm/drm 0x96c3de00 drm_client_init +EXPORT_SYMBOL drivers/gpu/drm/drm 0x9798d902 drm_atomic_set_fence_for_plane +EXPORT_SYMBOL drivers/gpu/drm/drm 0x982698bd drm_mode_match +EXPORT_SYMBOL drivers/gpu/drm/drm 0x983e8c55 drm_panel_disable +EXPORT_SYMBOL drivers/gpu/drm/drm 0x989e2ec4 drm_irq_install +EXPORT_SYMBOL drivers/gpu/drm/drm 0x999d944f drm_connector_update_edid_property +EXPORT_SYMBOL drivers/gpu/drm/drm 0x99fd20aa drm_rect_clip_scaled +EXPORT_SYMBOL drivers/gpu/drm/drm 0x9af53b28 drm_gem_shmem_vunmap +EXPORT_SYMBOL drivers/gpu/drm/drm 0x9b3b98e9 drm_property_create_range +EXPORT_SYMBOL drivers/gpu/drm/drm 0x9b7e33ee drm_poll +EXPORT_SYMBOL drivers/gpu/drm/drm 0x9b8a53f5 drm_ht_just_insert_please +EXPORT_SYMBOL drivers/gpu/drm/drm 0x9ba34795 drm_master_internal_acquire +EXPORT_SYMBOL drivers/gpu/drm/drm 0x9bb8d78a drm_irq_uninstall +EXPORT_SYMBOL drivers/gpu/drm/drm 0x9d18a355 drm_property_replace_blob +EXPORT_SYMBOL drivers/gpu/drm/drm 0x9e5ab0df drm_sysfs_connector_status_event +EXPORT_SYMBOL drivers/gpu/drm/drm 0x9e68dab7 drm_bridge_chain_mode_valid +EXPORT_SYMBOL drivers/gpu/drm/drm 0xa0713087 drm_ht_find_item +EXPORT_SYMBOL drivers/gpu/drm/drm 0xa0986235 drm_atomic_commit +EXPORT_SYMBOL drivers/gpu/drm/drm 0xa1323221 drm_crtc_vblank_reset +EXPORT_SYMBOL drivers/gpu/drm/drm 0xa1626727 drm_gem_shmem_vmap +EXPORT_SYMBOL drivers/gpu/drm/drm 0xa1cc02c7 drm_crtc_set_max_vblank_count +EXPORT_SYMBOL drivers/gpu/drm/drm 0xa22ac248 drm_mode_put_tile_group +EXPORT_SYMBOL drivers/gpu/drm/drm 0xa2a38c47 drm_property_destroy +EXPORT_SYMBOL drivers/gpu/drm/drm 0xa31d6eb6 drm_gem_shmem_print_info +EXPORT_SYMBOL drivers/gpu/drm/drm 0xa3adf6db drm_property_add_enum +EXPORT_SYMBOL drivers/gpu/drm/drm 0xa40a90b3 drm_legacy_ioremapfree +EXPORT_SYMBOL drivers/gpu/drm/drm 0xa577b9d3 drm_gem_create_mmap_offset_size +EXPORT_SYMBOL drivers/gpu/drm/drm 0xa58b8cb6 drm_hdmi_avi_infoframe_quant_range +EXPORT_SYMBOL drivers/gpu/drm/drm 0xa5a02601 drm_master_internal_release +EXPORT_SYMBOL drivers/gpu/drm/drm 0xa5d50400 drm_atomic_add_affected_planes +EXPORT_SYMBOL drivers/gpu/drm/drm 0xa60ed17f drm_atomic_state_alloc +EXPORT_SYMBOL drivers/gpu/drm/drm 0xa62a8b28 drm_client_modeset_probe +EXPORT_SYMBOL drivers/gpu/drm/drm 0xa63b5f8f drm_crtc_vblank_restore +EXPORT_SYMBOL drivers/gpu/drm/drm 0xa7237dd5 drm_gem_shmem_purge +EXPORT_SYMBOL drivers/gpu/drm/drm 0xa783def2 drm_i2c_encoder_init +EXPORT_SYMBOL drivers/gpu/drm/drm 0xa7dcee41 drm_release_noglobal +EXPORT_SYMBOL drivers/gpu/drm/drm 0xa82d612f drm_crtc_vblank_on +EXPORT_SYMBOL drivers/gpu/drm/drm 0xa8ad5d01 drm_detect_hdmi_monitor +EXPORT_SYMBOL drivers/gpu/drm/drm 0xaac39ff3 __drm_printfn_info +EXPORT_SYMBOL drivers/gpu/drm/drm 0xab0f611f drm_connector_attach_edid_property +EXPORT_SYMBOL drivers/gpu/drm/drm 0xab11cea7 drm_av_sync_delay +EXPORT_SYMBOL drivers/gpu/drm/drm 0xabec158d drm_agp_alloc +EXPORT_SYMBOL drivers/gpu/drm/drm 0xac24a1c2 drm_hdmi_avi_infoframe_colorspace +EXPORT_SYMBOL drivers/gpu/drm/drm 0xad4e902b drm_color_ctm_s31_32_to_qm_n +EXPORT_SYMBOL drivers/gpu/drm/drm 0xae277372 __drm_crtc_commit_free +EXPORT_SYMBOL drivers/gpu/drm/drm 0xaf136f16 drm_gtf_mode_complex +EXPORT_SYMBOL drivers/gpu/drm/drm 0xaf9fe6df drm_add_override_edid_modes +EXPORT_SYMBOL drivers/gpu/drm/drm 0xb053adda drm_rect_rotate +EXPORT_SYMBOL drivers/gpu/drm/drm 0xb0b05ff5 drm_clflush_sg +EXPORT_SYMBOL drivers/gpu/drm/drm 0xb11ac7a7 __drm_err +EXPORT_SYMBOL drivers/gpu/drm/drm 0xb141bec1 drm_bridge_remove +EXPORT_SYMBOL drivers/gpu/drm/drm 0xb196dac3 drm_handle_vblank +EXPORT_SYMBOL drivers/gpu/drm/drm 0xb299dd70 __drm_atomic_helper_disable_plane +EXPORT_SYMBOL drivers/gpu/drm/drm 0xb352a3c9 drm_mode_validate_ycbcr420 +EXPORT_SYMBOL drivers/gpu/drm/drm 0xb387c752 drm_flip_work_queue +EXPORT_SYMBOL drivers/gpu/drm/drm 0xb3dbc0a0 drm_gem_shmem_madvise +EXPORT_SYMBOL drivers/gpu/drm/drm 0xb4032484 drm_mm_insert_node_in_range +EXPORT_SYMBOL drivers/gpu/drm/drm 0xb4733ce4 drm_dev_get +EXPORT_SYMBOL drivers/gpu/drm/drm 0xb48f849a drm_property_blob_get +EXPORT_SYMBOL drivers/gpu/drm/drm 0xb4be8589 drm_gem_cma_print_info +EXPORT_SYMBOL drivers/gpu/drm/drm 0xb53796c5 drm_crtc_handle_vblank +EXPORT_SYMBOL drivers/gpu/drm/drm 0xb5423c2a drm_i2c_encoder_dpms +EXPORT_SYMBOL drivers/gpu/drm/drm 0xb593881e drm_gem_prime_import_dev +EXPORT_SYMBOL drivers/gpu/drm/drm 0xb5dd0b48 drm_agp_bind +EXPORT_SYMBOL drivers/gpu/drm/drm 0xb5e71441 drm_plane_force_disable +EXPORT_SYMBOL drivers/gpu/drm/drm 0xb6127243 drm_need_swiotlb +EXPORT_SYMBOL drivers/gpu/drm/drm 0xb6381826 drm_crtc_vblank_count_and_time +EXPORT_SYMBOL drivers/gpu/drm/drm 0xb6a979ab drm_modeset_acquire_fini +EXPORT_SYMBOL drivers/gpu/drm/drm 0xb6af5dad drm_gem_prime_import +EXPORT_SYMBOL drivers/gpu/drm/drm 0xb7404f6c drm_property_create_signed_range +EXPORT_SYMBOL drivers/gpu/drm/drm 0xb7d239f9 drm_warn_on_modeset_not_all_locked +EXPORT_SYMBOL drivers/gpu/drm/drm 0xb83580bc drm_i2c_encoder_detect +EXPORT_SYMBOL drivers/gpu/drm/drm 0xb853833f drm_mode_validate_size +EXPORT_SYMBOL drivers/gpu/drm/drm 0xb8bdb3f5 drm_puts +EXPORT_SYMBOL drivers/gpu/drm/drm 0xb9cad492 __drm_atomic_state_free +EXPORT_SYMBOL drivers/gpu/drm/drm 0xb9f56e22 drm_format_info_block_width +EXPORT_SYMBOL drivers/gpu/drm/drm 0xba00e315 drm_client_dev_hotplug +EXPORT_SYMBOL drivers/gpu/drm/drm 0xba588ae6 drm_mode_plane_set_obj_prop +EXPORT_SYMBOL drivers/gpu/drm/drm 0xba634be1 drm_bridge_chain_enable +EXPORT_SYMBOL drivers/gpu/drm/drm 0xba80b717 drm_dev_dbg +EXPORT_SYMBOL drivers/gpu/drm/drm 0xbaa92c80 drm_mode_prune_invalid +EXPORT_SYMBOL drivers/gpu/drm/drm 0xbb33ee7b drm_default_rgb_quant_range +EXPORT_SYMBOL drivers/gpu/drm/drm 0xbbb2ca43 drm_modeset_lock_all_ctx +EXPORT_SYMBOL drivers/gpu/drm/drm 0xbc395cbd drm_property_blob_put +EXPORT_SYMBOL drivers/gpu/drm/drm 0xbc4ee28e drm_mode_find_dmt +EXPORT_SYMBOL drivers/gpu/drm/drm 0xbcbab56c drm_atomic_state_default_clear +EXPORT_SYMBOL drivers/gpu/drm/drm 0xbed32b1d drm_syncobj_create +EXPORT_SYMBOL drivers/gpu/drm/drm 0xbee82566 drm_master_get +EXPORT_SYMBOL drivers/gpu/drm/drm 0xc15e0e3d drm_hdmi_infoframe_set_hdr_metadata +EXPORT_SYMBOL drivers/gpu/drm/drm 0xc2c36138 drm_mode_is_420_only +EXPORT_SYMBOL drivers/gpu/drm/drm 0xc2d1130c drm_of_component_probe +EXPORT_SYMBOL drivers/gpu/drm/drm 0xc324efb9 drm_edid_to_sad +EXPORT_SYMBOL drivers/gpu/drm/drm 0xc3a15918 drm_property_create_enum +EXPORT_SYMBOL drivers/gpu/drm/drm 0xc4b3f937 drm_get_format_info +EXPORT_SYMBOL drivers/gpu/drm/drm 0xc547bf02 drm_framebuffer_remove +EXPORT_SYMBOL drivers/gpu/drm/drm 0xc560d51d drm_of_crtc_port_mask +EXPORT_SYMBOL drivers/gpu/drm/drm 0xc5992401 __drm_puts_coredump +EXPORT_SYMBOL drivers/gpu/drm/drm 0xc7ca5110 drm_universal_plane_init +EXPORT_SYMBOL drivers/gpu/drm/drm 0xc7f0f027 drm_format_info_min_pitch +EXPORT_SYMBOL drivers/gpu/drm/drm 0xc94edd32 drm_hdmi_vendor_infoframe_from_display_mode +EXPORT_SYMBOL drivers/gpu/drm/drm 0xca8d9dcb drm_connector_init +EXPORT_SYMBOL drivers/gpu/drm/drm 0xcb2340b8 drm_rect_debug_print +EXPORT_SYMBOL drivers/gpu/drm/drm 0xcbd749d6 drm_connector_attach_encoder +EXPORT_SYMBOL drivers/gpu/drm/drm 0xcc8da789 drm_client_buffer_vmap +EXPORT_SYMBOL drivers/gpu/drm/drm 0xce62acf8 drm_gem_objects_lookup +EXPORT_SYMBOL drivers/gpu/drm/drm 0xcf11a549 drm_flip_work_allocate_task +EXPORT_SYMBOL drivers/gpu/drm/drm 0xcfa50f22 drm_mode_create_suggested_offset_properties +EXPORT_SYMBOL drivers/gpu/drm/drm 0xd0d0af39 drm_connector_set_panel_orientation_with_quirk +EXPORT_SYMBOL drivers/gpu/drm/drm 0xd1070507 drm_atomic_set_fb_for_plane +EXPORT_SYMBOL drivers/gpu/drm/drm 0xd10c0b78 drm_property_replace_global_blob +EXPORT_SYMBOL drivers/gpu/drm/drm 0xd13f9985 drm_edid_block_valid +EXPORT_SYMBOL drivers/gpu/drm/drm 0xd1f1ced6 drm_agp_free +EXPORT_SYMBOL drivers/gpu/drm/drm 0xd2ea4a9a drm_get_edid_switcheroo +EXPORT_SYMBOL drivers/gpu/drm/drm 0xd313961e drm_mode_create_from_cmdline_mode +EXPORT_SYMBOL drivers/gpu/drm/drm 0xd336315c drm_atomic_get_new_private_obj_state +EXPORT_SYMBOL drivers/gpu/drm/drm 0xd41ed600 drm_atomic_get_old_private_obj_state +EXPORT_SYMBOL drivers/gpu/drm/drm 0xd6198171 drm_gem_dmabuf_export +EXPORT_SYMBOL drivers/gpu/drm/drm 0xd680a377 drm_gem_object_free +EXPORT_SYMBOL drivers/gpu/drm/drm 0xd6b8caa8 drm_atomic_get_connector_state +EXPORT_SYMBOL drivers/gpu/drm/drm 0xd75b86b1 drmm_mode_config_init +EXPORT_SYMBOL drivers/gpu/drm/drm 0xd86b43f2 drm_atomic_normalize_zpos +EXPORT_SYMBOL drivers/gpu/drm/drm 0xd8add533 drm_connector_set_path_property +EXPORT_SYMBOL drivers/gpu/drm/drm 0xd95a4d33 drm_i2c_encoder_commit +EXPORT_SYMBOL drivers/gpu/drm/drm 0xd96b425a __drm_printfn_coredump +EXPORT_SYMBOL drivers/gpu/drm/drm 0xdaef54fa of_drm_find_bridge +EXPORT_SYMBOL drivers/gpu/drm/drm 0xdb111e97 drm_object_property_get_value +EXPORT_SYMBOL drivers/gpu/drm/drm 0xdbbfeae5 drm_dev_unplug +EXPORT_SYMBOL drivers/gpu/drm/drm 0xdbcec67d drm_modeset_backoff +EXPORT_SYMBOL drivers/gpu/drm/drm 0xdd0a2c9c drm_flip_work_commit +EXPORT_SYMBOL drivers/gpu/drm/drm 0xdd1487f3 drm_dev_unregister +EXPORT_SYMBOL drivers/gpu/drm/drm 0xdd6db383 drm_invalid_op +EXPORT_SYMBOL drivers/gpu/drm/drm 0xdd891701 drm_property_lookup_blob +EXPORT_SYMBOL drivers/gpu/drm/drm 0xdd9476f1 drm_debugfs_create_files +EXPORT_SYMBOL drivers/gpu/drm/drm 0xde0128af drm_gem_map_detach +EXPORT_SYMBOL drivers/gpu/drm/drm 0xde3a1094 drm_connector_attach_vrr_capable_property +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 0xdf7c0e75 drm_writeback_signal_completion +EXPORT_SYMBOL drivers/gpu/drm/drm 0xe00e7593 drm_gem_dmabuf_mmap +EXPORT_SYMBOL drivers/gpu/drm/drm 0xe042a62f drm_property_create_blob +EXPORT_SYMBOL drivers/gpu/drm/drm 0xe0b7a472 drm_gem_handle_delete +EXPORT_SYMBOL drivers/gpu/drm/drm 0xe11b293c drm_sysfs_hotplug_event +EXPORT_SYMBOL drivers/gpu/drm/drm 0xe12919f6 drm_bridge_chain_pre_enable +EXPORT_SYMBOL drivers/gpu/drm/drm 0xe2bbbc01 drm_event_reserve_init +EXPORT_SYMBOL drivers/gpu/drm/drm 0xe3164ed9 drm_atomic_get_new_bridge_state +EXPORT_SYMBOL drivers/gpu/drm/drm 0xe36fc0ea devm_drm_dev_init +EXPORT_SYMBOL drivers/gpu/drm/drm 0xe3aa0d8a drm_writeback_cleanup_job +EXPORT_SYMBOL drivers/gpu/drm/drm 0xe5ef102f drm_agp_acquire +EXPORT_SYMBOL drivers/gpu/drm/drm 0xe6cc6bfc drm_gem_shmem_put_pages +EXPORT_SYMBOL drivers/gpu/drm/drm 0xe6d6ce9d drm_framebuffer_plane_width +EXPORT_SYMBOL drivers/gpu/drm/drm 0xe6f80f24 drm_client_release +EXPORT_SYMBOL drivers/gpu/drm/drm 0xe7dc3bb3 drm_mode_destroy +EXPORT_SYMBOL drivers/gpu/drm/drm 0xe817eb01 __drm_printfn_err +EXPORT_SYMBOL drivers/gpu/drm/drm 0xe8a034df drm_dev_exit +EXPORT_SYMBOL drivers/gpu/drm/drm 0xea2c4ead drm_connector_set_panel_orientation +EXPORT_SYMBOL drivers/gpu/drm/drm 0xea45b1c4 drm_connector_set_vrr_capable_property +EXPORT_SYMBOL drivers/gpu/drm/drm 0xeaaf1a4c drm_encoder_cleanup +EXPORT_SYMBOL drivers/gpu/drm/drm 0xeadbf4aa drm_atomic_check_only +EXPORT_SYMBOL drivers/gpu/drm/drm 0xebebe0f9 drm_gem_object_put +EXPORT_SYMBOL drivers/gpu/drm/drm 0xec106b95 drm_mode_probed_add +EXPORT_SYMBOL drivers/gpu/drm/drm 0xec12af74 __drm_dbg +EXPORT_SYMBOL drivers/gpu/drm/drm 0xec268e85 drm_atomic_bridge_chain_pre_enable +EXPORT_SYMBOL drivers/gpu/drm/drm 0xed428b41 drm_gem_dumb_destroy +EXPORT_SYMBOL drivers/gpu/drm/drm 0xee13eecf drm_crtc_vblank_count +EXPORT_SYMBOL drivers/gpu/drm/drm 0xee2b6e2b drm_mode_get_tile_group +EXPORT_SYMBOL drivers/gpu/drm/drm 0xee5ec2ea drm_vma_offset_add +EXPORT_SYMBOL drivers/gpu/drm/drm 0xeeb08adc drm_mode_create_tv_margin_properties +EXPORT_SYMBOL drivers/gpu/drm/drm 0xeec7333b drm_connector_set_tile_property +EXPORT_SYMBOL drivers/gpu/drm/drm 0xeef14d8c drm_format_info_block_height +EXPORT_SYMBOL drivers/gpu/drm/drm 0xef39109d drm_connector_attach_scaling_mode_property +EXPORT_SYMBOL drivers/gpu/drm/drm 0xef6f82c0 drm_syncobj_replace_fence +EXPORT_SYMBOL drivers/gpu/drm/drm 0xf0517d7a drm_mm_init +EXPORT_SYMBOL drivers/gpu/drm/drm 0xf0875b60 drm_client_buffer_vunmap +EXPORT_SYMBOL drivers/gpu/drm/drm 0xf089a8f4 drm_object_attach_property +EXPORT_SYMBOL drivers/gpu/drm/drm 0xf0caa1c0 drm_probe_ddc +EXPORT_SYMBOL drivers/gpu/drm/drm 0xf1421d13 drm_mode_sort +EXPORT_SYMBOL drivers/gpu/drm/drm 0xf25366cb drm_connector_list_iter_end +EXPORT_SYMBOL drivers/gpu/drm/drm 0xf2759774 drm_modeset_unlock_all +EXPORT_SYMBOL drivers/gpu/drm/drm 0xf2843299 __drmm_add_action +EXPORT_SYMBOL drivers/gpu/drm/drm 0xf322627f drm_connector_list_iter_begin +EXPORT_SYMBOL drivers/gpu/drm/drm 0xf3b683e0 drm_panel_detach +EXPORT_SYMBOL drivers/gpu/drm/drm 0xf406e46a drm_get_connector_type_name +EXPORT_SYMBOL drivers/gpu/drm/drm 0xf62df536 drm_atomic_get_plane_state +EXPORT_SYMBOL drivers/gpu/drm/drm 0xf67460f4 drm_dev_alloc +EXPORT_SYMBOL drivers/gpu/drm/drm 0xf6879efc drm_modeset_drop_locks +EXPORT_SYMBOL drivers/gpu/drm/drm 0xf6e55a1c drm_cma_gem_create_object_default_funcs +EXPORT_SYMBOL drivers/gpu/drm/drm 0xf7840145 drm_property_create_bool +EXPORT_SYMBOL drivers/gpu/drm/drm 0xf7f823f3 drm_framebuffer_cleanup +EXPORT_SYMBOL drivers/gpu/drm/drm 0xf826786c drm_format_info +EXPORT_SYMBOL drivers/gpu/drm/drm 0xf84a9f05 drm_get_edid +EXPORT_SYMBOL drivers/gpu/drm/drm 0xf871648b drm_crtc_cleanup +EXPORT_SYMBOL drivers/gpu/drm/drm 0xf8fdfde2 drm_gem_prime_fd_to_handle +EXPORT_SYMBOL drivers/gpu/drm/drm 0xf9da27ff drm_connector_has_possible_encoder +EXPORT_SYMBOL drivers/gpu/drm/drm 0xfae5c78e drm_crtc_vblank_helper_get_vblank_timestamp +EXPORT_SYMBOL drivers/gpu/drm/drm 0xfaf05d49 drm_noop +EXPORT_SYMBOL drivers/gpu/drm/drm 0xfb3ab796 drm_gem_dmabuf_vunmap +EXPORT_SYMBOL drivers/gpu/drm/drm 0xfb4517f8 drm_modeset_lock_init +EXPORT_SYMBOL drivers/gpu/drm/drm 0xfcb362cb drm_writeback_connector_init +EXPORT_SYMBOL drivers/gpu/drm/drm 0xfd4e0190 drm_crtc_vblank_helper_get_vblank_timestamp_internal +EXPORT_SYMBOL drivers/gpu/drm/drm 0xfe04c82a drm_agp_init +EXPORT_SYMBOL drivers/gpu/drm/drm 0xfe1adbaa drm_of_find_possible_crtcs +EXPORT_SYMBOL drivers/gpu/drm/drm 0xfe8ce8af drm_dev_enter +EXPORT_SYMBOL drivers/gpu/drm/drm 0xfea31a28 drm_dev_set_unique +EXPORT_SYMBOL drivers/gpu/drm/drm 0xfed795af drm_mode_debug_printmodeline +EXPORT_SYMBOL drivers/gpu/drm/drm 0xff8de91d drm_print_bits +EXPORT_SYMBOL drivers/gpu/drm/drm 0xff90a292 drm_mode_copy +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x01a01a8a drm_fb_swab16 +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x0217280b __drm_atomic_helper_bridge_reset +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x0244aa4f drm_atomic_helper_wait_for_flip_done +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x028f03ed drm_fb_xrgb8888_to_rgb565_dstclip +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x03799e71 drm_dp_mst_topology_mgr_init +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x03a3537a drm_helper_force_disable_all +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x062b73d6 drm_dp_dual_mode_set_tmds_output +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x06c49551 drm_dp_dsc_sink_line_buf_depth +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x085fbed4 drm_scdc_write +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x0931237c __drm_atomic_helper_private_obj_duplicate_state +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x099f74b2 __drm_atomic_helper_connector_destroy_state +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x0b1dc4f4 devm_drm_panel_bridge_add +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x0b9d5020 drm_simple_display_pipe_attach_bridge +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x0b9e78c3 drm_fb_helper_fill_info +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x0d21e73c drm_fb_helper_set_suspend_unlocked +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x0d47c404 drm_atomic_helper_async_check +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x0d59d089 drm_dp_dpcd_read_link_status +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x0d95d2c2 drm_helper_move_panel_connectors_to_head +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x0e1c4d4d drm_simple_encoder_init +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x0fa8f89e drm_dp_mst_topology_mgr_destroy +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x115b5fd1 drm_fbdev_generic_setup +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x14fed492 drm_mode_config_helper_resume +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x1581a41f drm_dp_mst_atomic_check +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x1812451f drm_gem_fb_simple_display_pipe_prepare_fb +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x1a1f33bd __drm_atomic_helper_plane_destroy_state +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x1a553466 drm_dp_update_payload_part2 +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x1b60c956 __drm_atomic_helper_bridge_duplicate_state +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x1b845f16 drm_fb_helper_ioctl +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x1be1776f drm_fb_helper_hotplug_event +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x1c1e18d5 drm_self_refresh_helper_update_avg_times +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x1ee47ce2 drm_dp_atomic_find_vcpi_slots +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x2106fc56 drm_dp_downstream_id +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x23053367 drm_crtc_init +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x2387733c drm_atomic_helper_check_plane_state +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x242ce275 drm_dp_cec_set_edid +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x250b8d56 drm_dp_mst_detect_port +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x26815dbc drm_dp_link_rate_to_bw_code +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x299fff8d drm_self_refresh_helper_init +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x2a30fad0 drm_atomic_helper_commit_planes +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x2ad7a84f drm_dp_vsc_sdp_log +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x2ad93e3b drm_dp_stop_crc +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x2ae2e32a drm_atomic_helper_commit_modeset_enables +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x2bb31486 drm_dp_mst_get_port_malloc +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x2cb256ef drm_dp_cec_irq +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x30ae6629 drm_atomic_helper_commit +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x31bbff9e drm_fb_helper_fini +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x3319f039 drm_dp_start_crc +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x332df60e drm_dp_mst_atomic_enable_dsc +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x33e2a9ad drm_dp_mst_put_port_malloc +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x33ebd508 drm_atomic_helper_fake_vblank +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x3458eb2e __drm_atomic_helper_connector_state_reset +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x34cc30dd drm_atomic_helper_disable_plane +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x3572cd1c drm_atomic_helper_bridge_destroy_state +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x35c80104 drm_dp_read_desc +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x37481118 drm_fb_helper_initial_config +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x392eeb97 drm_dp_aux_register +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x3a8063f3 drm_dp_dsc_sink_supported_input_bpcs +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x3f6ca56b drm_dp_mst_get_vcpi_slots +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x3feeb952 drm_dp_dual_mode_max_tmds_clock +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x40935261 drm_lspcon_set_mode +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x42cad2e5 drm_dp_downstream_debug +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x444cfb90 drm_fb_helper_set_par +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x460b58ea drm_helper_encoder_in_use +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x46139167 drm_dp_cec_unset_edid +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x469442d4 drm_atomic_helper_damage_merged +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x46ce0ce8 drm_fb_helper_init +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x46d41b66 drm_dp_aux_unregister +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x48b62a57 drm_dp_link_train_channel_eq_delay +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x4a8571c8 drm_kms_helper_poll_enable +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x4c61e6c0 drm_fb_helper_output_poll_changed +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x4e89a7e7 __drm_atomic_helper_crtc_duplicate_state +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x4f2967c7 drm_atomic_helper_commit_modeset_disables +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x4fffb383 drm_kms_helper_poll_fini +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x50e853f1 drm_scdc_get_scrambling_status +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x516fc7b8 drm_panel_bridge_remove +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x51fd1d0d __drm_atomic_helper_crtc_state_reset +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x52062a85 drm_dp_mst_dump_topology +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x533be985 drm_simple_display_pipe_init +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x5407ae9e drm_dp_get_dual_mode_type_name +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x54ee44e8 drm_dp_update_payload_part1 +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x5510c8a7 drm_dp_dual_mode_write +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x564487ee drm_atomic_helper_connector_destroy_state +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x5713ed01 drm_helper_disable_unused_functions +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x5805688c drm_dp_remote_aux_init +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x582f248e drm_dp_get_adjust_request_pre_emphasis +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x58d8fcaa drm_dsc_pps_payload_pack +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x59760b5c drm_atomic_helper_crtc_destroy_state +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x59dc4ec8 drm_fb_memcpy +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x5a4734d1 drm_kms_helper_is_poll_worker +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x5aaf5422 __drm_atomic_helper_connector_duplicate_state +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x5ddfa125 drm_atomic_helper_wait_for_vblanks +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x5e30d14d drm_dp_mst_hpd_irq +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x5e42d572 drm_dp_send_power_updown_phy +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x5e92d414 drm_atomic_helper_connector_duplicate_state +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x5ecbf782 drm_atomic_helper_check +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x5f6f336c drm_fb_helper_sys_fillrect +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x5f7b0806 drm_panel_bridge_add_typed +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x5fc22773 drm_self_refresh_helper_alter_state +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x61f76a93 drm_atomic_helper_crtc_reset +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x63928391 drm_kms_helper_poll_disable +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x643962fa drm_dp_mst_allocate_vcpi +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x648d953b drm_dsc_dp_pps_header_init +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x64d657d5 drm_crtc_helper_set_mode +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x6615069e drm_dp_dsc_sink_max_slice_count +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x683edf56 drm_atomic_helper_crtc_duplicate_state +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x688493d2 drm_dp_get_phy_test_pattern +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x688aa35f drm_helper_hpd_irq_event +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x69f1588f drm_fb_helper_debug_leave +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x6b54142e drm_atomic_helper_dirtyfb +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x6b5c2b06 drm_atomic_helper_damage_iter_next +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x6be74894 drm_atomic_helper_check_plane_damage +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x6c7a5803 drm_atomic_helper_connector_reset +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x6d74f1c5 drm_fb_helper_setcmap +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x6da58aa2 drm_atomic_helper_commit_hw_done +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x6f8619a7 drm_dp_mst_dsc_aux_for_port +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x73011db0 drm_dp_bw_code_to_link_rate +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x73dcc79d drm_plane_enable_fb_damage_clips +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x75679674 drm_fb_helper_sys_copyarea +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x76e86174 drm_fb_memcpy_dstclip +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x79a7c775 drm_helper_resume_force_mode +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x7f245d33 __drm_atomic_helper_plane_state_reset +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x7f466779 drm_self_refresh_helper_cleanup +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x7fd538b2 drm_dp_dual_mode_read +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x80c030e5 drm_dp_cec_unregister_connector +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x80dea8fe drm_fb_helper_pan_display +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x823cb28e drm_helper_connector_dpms +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x8465f473 drm_helper_crtc_in_use +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x84a68575 drm_dp_check_act_status +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x894b1f57 drm_dp_get_adjust_request_post_cursor +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x89942117 drm_atomic_helper_legacy_gamma_set +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x89e0c7fa drm_atomic_helper_plane_duplicate_state +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x8ca2d9e4 drm_dp_calc_pbn_mode +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x8ca5388c drm_dp_mst_topology_mgr_suspend +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x8cf55c35 drm_kms_helper_hotplug_event +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x8d701329 drm_dp_clock_recovery_ok +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x8ebd9f81 drm_atomic_helper_swap_state +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x8f7cf9bf __drm_atomic_helper_plane_reset +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x8fca0f29 drm_atomic_helper_disable_all +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x9009c281 drm_dp_mst_get_edid +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x901a155e drm_fb_helper_deferred_io +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x92340566 drm_fb_xrgb8888_to_rgb565 +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x9263edc6 drm_fb_helper_unregister_fbi +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x92d6455a drm_fb_xrgb8888_to_gray8 +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x937f2354 __drm_atomic_helper_crtc_destroy_state +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x950fdec4 drm_atomic_helper_commit_planes_on_crtc +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x95336a53 drm_gem_fb_destroy +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x95587764 drm_atomic_helper_commit_cleanup_done +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x95ad4eaa drm_atomic_get_mst_topology_state +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x9a3010a7 drm_dp_mst_topology_mgr_resume +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x9a6ba452 drm_fb_helper_cfb_imageblit +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x9a84495d drm_atomic_helper_commit_tail +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x9cc1ca03 drm_atomic_helper_commit_tail_rpm +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x9d9b0619 drm_dp_cec_register_connector +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x9e5d5f47 drm_dp_mst_deallocate_vcpi +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x9e871d56 drm_panel_bridge_connector +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x9f8fa3f9 drm_atomic_helper_update_plane +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xa1fefe6a drm_dp_psr_setup_time +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xa2ade383 drm_atomic_helper_shutdown +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xa2f5c65b drm_dp_get_edid_quirks +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xa3b1b607 drm_helper_probe_single_connector_modes +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xa40d0589 drm_atomic_helper_update_legacy_modeset_state +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xa44b0e7d __drm_atomic_helper_connector_reset +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xa512c1f8 drm_dp_dpcd_write +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xa55e8506 devm_drm_panel_bridge_add_typed +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xa6ff9496 drm_dp_link_train_clock_recovery_delay +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xa77acdfa drm_dp_mst_connector_early_unregister +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xab0e7cd4 drm_fb_helper_modinit +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xab965aa1 drm_atomic_helper_check_planes +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xab9761b1 drm_scdc_set_high_tmds_clock_ratio +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xabbf80a7 drm_dp_get_vc_payload_bw +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xac3751fb drm_mode_config_helper_suspend +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xac778f89 __drm_atomic_helper_plane_duplicate_state +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xad38f248 drm_atomic_helper_page_flip +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xaed4c6ef drm_atomic_helper_prepare_planes +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xafa7f5b7 drm_dp_mst_topology_mgr_set_mst +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xafbb2251 drm_atomic_helper_disable_planes_on_crtc +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xb042546b drm_helper_mode_fill_fb_struct +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xb226f170 drm_fb_helper_sys_imageblit +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xb4e739a9 drm_dp_aux_init +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xb559c530 drm_fb_helper_check_var +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xb59af718 drm_atomic_helper_async_commit +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xb754c627 drm_panel_bridge_add +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xb79d1c38 drm_dp_mst_reset_vcpi_slots +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xb9aaa775 drm_atomic_helper_resume +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xb9f5e05a drm_fb_helper_prepare +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xbadcf485 drm_atomic_helper_wait_for_fences +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xbb705269 drm_atomic_helper_bridge_duplicate_state +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xbbc5ca98 drm_atomic_helper_plane_reset +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xbdbcc423 drm_dp_atomic_release_vcpi_slots +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xc1c412eb drm_atomic_helper_wait_for_dependencies +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xc29b10d5 drm_dp_dual_mode_detect +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xc2a4f51b drm_fb_helper_debug_enter +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xc2baa123 drm_dp_find_vcpi_slots +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xc33b11ee drm_dp_mst_connector_late_register +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xc39a0c05 drm_atomic_helper_connector_tv_reset +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xc41d1d25 drm_primary_helper_funcs +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xc552c780 drm_dp_set_phy_test_pattern +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xc588851e drm_atomic_helper_suspend +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xc5c99a79 drm_dp_get_adjust_request_voltage +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xc6476b23 drm_scdc_set_scrambling +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xc6536855 drm_atomic_helper_setup_commit +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xc682f829 drm_primary_helper_destroy +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xc6976635 drm_kms_helper_poll_init +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xc80c3393 drm_fb_helper_restore_fbdev_mode_unlocked +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xc8bb7892 drm_atomic_helper_commit_duplicated_state +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xc9d45d62 drm_fb_helper_cfb_copyarea +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xcd531601 drm_dp_mst_add_affected_dsc_crtcs +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xcdc5081f drm_fb_helper_lastclose +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xd12832c0 drm_atomic_helper_bridge_propagate_bus_fmt +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xd1634f72 drm_atomic_helper_damage_iter_init +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xd4210ac2 drm_fb_helper_sys_read +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xd5491d6c drm_dp_dpcd_read +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xd5ee5e8b drm_fb_xrgb8888_to_rgb888_dstclip +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xdbf1a584 drm_fb_helper_sys_write +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xdceaf5f5 drm_dp_mst_topology_state_funcs +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xdf560e4c drm_scdc_read +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xdf5c4060 drm_fb_helper_set_suspend +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xe02abfbb drm_dp_downstream_max_bpc +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xe0697235 drm_lspcon_get_mode +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xe111ae4a drm_atomic_helper_set_config +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xe3dcf87a drm_fb_helper_cfb_fillrect +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xe4c7f8c4 drm_dp_send_real_edid_checksum +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xe9f5a724 drm_atomic_helper_page_flip_target +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xec86451a drm_atomic_helper_plane_destroy_state +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xedcf81ce drm_dp_channel_eq_ok +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xef1f2934 drm_gem_fb_create_handle +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xf104c328 drm_helper_probe_detect +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xf1b37ebc drm_atomic_helper_duplicate_state +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xf2329e89 drm_dp_downstream_max_clock +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xf2cb121b drm_dp_dual_mode_get_tmds_output +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xf5005fd4 __drm_atomic_helper_crtc_reset +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xf7fa39fd drm_atomic_helper_cleanup_planes +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xf98e05f0 drm_fb_helper_blank +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xf99f0d5c drm_atomic_helper_check_modeset +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xfcd0ce36 drm_crtc_helper_set_config +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xfde556ca drm_fb_helper_alloc_fbi +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xfe12bcb9 drm_dsc_compute_rc_parameters +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xfec0f36b drm_atomic_helper_bridge_reset +EXPORT_SYMBOL drivers/gpu/drm/drm_mipi_dbi 0x15bf22f6 mipi_dbi_pipe_disable +EXPORT_SYMBOL drivers/gpu/drm/drm_mipi_dbi 0x26683ec4 mipi_dbi_debugfs_init +EXPORT_SYMBOL drivers/gpu/drm/drm_mipi_dbi 0x33e14975 mipi_dbi_dev_init_with_formats +EXPORT_SYMBOL drivers/gpu/drm/drm_mipi_dbi 0x3a5f948d mipi_dbi_spi_cmd_max_speed +EXPORT_SYMBOL drivers/gpu/drm/drm_mipi_dbi 0x3debb8ed mipi_dbi_pipe_update +EXPORT_SYMBOL drivers/gpu/drm/drm_mipi_dbi 0x49e0b36d mipi_dbi_buf_copy +EXPORT_SYMBOL drivers/gpu/drm/drm_mipi_dbi 0x5d0137a0 mipi_dbi_display_is_on +EXPORT_SYMBOL drivers/gpu/drm/drm_mipi_dbi 0x621c0310 mipi_dbi_dev_init +EXPORT_SYMBOL drivers/gpu/drm/drm_mipi_dbi 0x72de9088 mipi_dbi_enable_flush +EXPORT_SYMBOL drivers/gpu/drm/drm_mipi_dbi 0x793337d4 mipi_dbi_command_stackbuf +EXPORT_SYMBOL drivers/gpu/drm/drm_mipi_dbi 0x7b940470 mipi_dbi_hw_reset +EXPORT_SYMBOL drivers/gpu/drm/drm_mipi_dbi 0x8d4f2717 mipi_dbi_command_read +EXPORT_SYMBOL drivers/gpu/drm/drm_mipi_dbi 0x9dedfb1b mipi_dbi_command_buf +EXPORT_SYMBOL drivers/gpu/drm/drm_mipi_dbi 0xaf5e9152 mipi_dbi_spi_init +EXPORT_SYMBOL drivers/gpu/drm/drm_mipi_dbi 0xc7cbe87d mipi_dbi_poweron_conditional_reset +EXPORT_SYMBOL drivers/gpu/drm/drm_mipi_dbi 0xdf4872b7 mipi_dbi_spi_transfer +EXPORT_SYMBOL drivers/gpu/drm/drm_mipi_dbi 0xf3e12742 mipi_dbi_poweron_reset +EXPORT_SYMBOL drivers/gpu/drm/drm_panel_orientation_quirks 0x2e439142 drm_get_panel_orientation_quirk +EXPORT_SYMBOL drivers/gpu/drm/drm_ttm_helper 0x62a5a4c8 drm_gem_ttm_print_info +EXPORT_SYMBOL drivers/gpu/drm/drm_ttm_helper 0xc087de68 drm_gem_ttm_mmap +EXPORT_SYMBOL drivers/gpu/drm/drm_vram_helper 0x065cfab8 drm_gem_vram_unpin +EXPORT_SYMBOL drivers/gpu/drm/drm_vram_helper 0x0731c481 drm_gem_vram_driver_dumb_create +EXPORT_SYMBOL drivers/gpu/drm/drm_vram_helper 0x183350f2 drm_gem_vram_driver_dumb_mmap_offset +EXPORT_SYMBOL drivers/gpu/drm/drm_vram_helper 0x257dde6e drm_gem_vram_simple_display_pipe_prepare_fb +EXPORT_SYMBOL drivers/gpu/drm/drm_vram_helper 0x2e563d44 drm_gem_vram_kunmap +EXPORT_SYMBOL drivers/gpu/drm/drm_vram_helper 0x3fdca60b drm_gem_vram_mmap_offset +EXPORT_SYMBOL drivers/gpu/drm/drm_vram_helper 0x56cab4bc drm_gem_vram_plane_helper_prepare_fb +EXPORT_SYMBOL drivers/gpu/drm/drm_vram_helper 0x5f711bdc drm_gem_vram_create +EXPORT_SYMBOL drivers/gpu/drm/drm_vram_helper 0x70680cfc drm_gem_vram_kmap +EXPORT_SYMBOL drivers/gpu/drm/drm_vram_helper 0x7a3664f1 drm_gem_vram_put +EXPORT_SYMBOL drivers/gpu/drm/drm_vram_helper 0x8f1ab088 drm_vram_helper_release_mm +EXPORT_SYMBOL drivers/gpu/drm/drm_vram_helper 0x94932a22 drm_gem_vram_vmap +EXPORT_SYMBOL drivers/gpu/drm/drm_vram_helper 0xacb680fd drm_gem_vram_plane_helper_cleanup_fb +EXPORT_SYMBOL drivers/gpu/drm/drm_vram_helper 0xae232689 drm_gem_vram_offset +EXPORT_SYMBOL drivers/gpu/drm/drm_vram_helper 0xc57467f1 drm_gem_vram_pin +EXPORT_SYMBOL drivers/gpu/drm/drm_vram_helper 0xd80b0b4d drm_vram_helper_mode_valid +EXPORT_SYMBOL drivers/gpu/drm/drm_vram_helper 0xe37a8afe drm_gem_vram_simple_display_pipe_cleanup_fb +EXPORT_SYMBOL drivers/gpu/drm/drm_vram_helper 0xec5bd37d drm_gem_vram_vunmap +EXPORT_SYMBOL drivers/gpu/drm/drm_vram_helper 0xf6ff82b0 drm_vram_helper_alloc_mm +EXPORT_SYMBOL drivers/gpu/drm/drm_vram_helper 0xf959d5c0 drm_gem_vram_fill_create_dumb +EXPORT_SYMBOL drivers/gpu/drm/drm_vram_helper 0xffd9fc1b drm_vram_mm_debugfs_init +EXPORT_SYMBOL drivers/gpu/drm/scheduler/gpu-sched 0x10ea16a3 drm_sched_job_init +EXPORT_SYMBOL drivers/gpu/drm/scheduler/gpu-sched 0x19179e07 drm_sched_job_cleanup +EXPORT_SYMBOL drivers/gpu/drm/scheduler/gpu-sched 0x2026843f drm_sched_entity_destroy +EXPORT_SYMBOL drivers/gpu/drm/scheduler/gpu-sched 0x2176bf59 drm_sched_entity_init +EXPORT_SYMBOL drivers/gpu/drm/scheduler/gpu-sched 0x2a505c97 drm_sched_entity_push_job +EXPORT_SYMBOL drivers/gpu/drm/scheduler/gpu-sched 0x3323ddc4 drm_sched_stop +EXPORT_SYMBOL drivers/gpu/drm/scheduler/gpu-sched 0x39f8ba4f drm_sched_entity_modify_sched +EXPORT_SYMBOL drivers/gpu/drm/scheduler/gpu-sched 0x42891fd9 drm_sched_dependency_optimized +EXPORT_SYMBOL drivers/gpu/drm/scheduler/gpu-sched 0x562b7ab4 drm_sched_suspend_timeout +EXPORT_SYMBOL drivers/gpu/drm/scheduler/gpu-sched 0x5fd1d4d7 drm_sched_fini +EXPORT_SYMBOL drivers/gpu/drm/scheduler/gpu-sched 0x85a51b23 drm_sched_start +EXPORT_SYMBOL drivers/gpu/drm/scheduler/gpu-sched 0x9aed7534 drm_sched_entity_flush +EXPORT_SYMBOL drivers/gpu/drm/scheduler/gpu-sched 0xa01bf401 drm_sched_increase_karma +EXPORT_SYMBOL drivers/gpu/drm/scheduler/gpu-sched 0xa81386fc to_drm_sched_fence +EXPORT_SYMBOL drivers/gpu/drm/scheduler/gpu-sched 0xb0be14e3 drm_sched_entity_set_priority +EXPORT_SYMBOL drivers/gpu/drm/scheduler/gpu-sched 0xbecfec0b drm_sched_entity_fini +EXPORT_SYMBOL drivers/gpu/drm/scheduler/gpu-sched 0xc4bdc485 drm_sched_resubmit_jobs +EXPORT_SYMBOL drivers/gpu/drm/scheduler/gpu-sched 0xd34b18aa drm_sched_fault +EXPORT_SYMBOL drivers/gpu/drm/scheduler/gpu-sched 0xe73ef7c8 drm_sched_resume_timeout +EXPORT_SYMBOL drivers/gpu/drm/scheduler/gpu-sched 0xefe0c2ad drm_sched_pick_best +EXPORT_SYMBOL drivers/gpu/drm/scheduler/gpu-sched 0xfde2f3cd drm_sched_init +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x01224d96 ttm_bo_swapout +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x04807436 ttm_mem_global_alloc +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x04b24b1a ttm_bo_kunmap +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x07f1c66f ttm_bo_init +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x0bdaa1ac ttm_bo_dma_acc_size +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x108600b7 ttm_tt_init +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x14580072 ttm_bo_manager_func +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x16d135a2 ttm_pool_populate +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x1759e785 ttm_bo_move_to_lru_tail +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x17f5634b ttm_bo_create +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x1a830c7f ttm_pool_unpopulate +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x1cdd158c ttm_populate_and_map_pages +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x20a2e0de ttm_bo_mem_space +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x21cda2b4 ttm_bo_acc_size +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x2540732d ttm_bo_wait +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x2f12ad9c ttm_bo_move_memcpy +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x2fce546b ttm_bo_device_init +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x328c92d6 ttm_bo_eviction_valuable +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x33a5ec98 ttm_eu_backoff_reservation +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x34111ec5 ttm_tt_set_placement_caching +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x361d3b5e ttm_dma_tt_fini +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x49cac786 ttm_mem_glob +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x50eb95fb ttm_bo_mmap +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x55ef6636 ttm_agp_tt_populate +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x5dfca1a0 ttm_unmap_and_unpopulate_pages +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x6052860c ttm_round_pot +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x6071bc6c ttm_bo_pipeline_move +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x62233e32 ttm_bo_init_mm +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x64897f58 ttm_bo_unmap_virtual +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x6992de67 ttm_sg_tt_init +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x6a89746f ttm_bo_mem_compat +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x71c16545 ttm_tt_fini +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x725ef0a3 ttm_check_under_lowerlimit +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x78adfe2c ttm_bo_clean_mm +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x8505556f ttm_bo_put +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x8ebe48ba ttm_dma_tt_init +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x9148fb74 ttm_bo_move_accel_cleanup +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x91ef936a ttm_bo_evict_mm +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x932cad22 ttm_get_kernel_zone_memory_size +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x9671ad3b ttm_bo_mmap_obj +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x96ab338b ttm_io_prot +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x96ba0094 ttm_agp_tt_unpopulate +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x9a1869c7 ttm_bo_unlock_delayed_workqueue +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x9cf99dac ttm_eu_reserve_buffers +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xa0756a69 ttm_bo_validate +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xa7288d67 ttm_bo_vm_close +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xa7bd4337 ttm_bo_swapout_all +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xb79694f5 ttm_bo_glob +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xbd8c09f9 ttm_eu_fence_buffer_objects +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xc2345257 ttm_bo_init_reserved +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xc3fe8628 ttm_mem_global_free +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xc684cf88 ttm_bo_kmap +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xc82a7fcb ttm_bo_bulk_move_lru_tail +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xca78abcb ttm_bo_mem_put +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xd1424428 ttm_bo_device_release +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xd58b1a0c ttm_bo_vm_open +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xd5deec12 ttm_agp_tt_create +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xdda8b71a ttm_page_alloc_debugfs +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xe4ff64b3 ttm_bo_vm_fault_reserved +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xf0627832 ttm_bo_vm_access +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xf1124c12 ttm_bo_move_ttm +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xf92529f8 ttm_bo_vm_fault +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xfdd113e2 ttm_tt_bind +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xfe56d8ac ttm_bo_lock_delayed_workqueue +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xfe6f30ac ttm_bo_vm_reserve +EXPORT_SYMBOL drivers/hid/hid 0x15374d45 hid_bus_type +EXPORT_SYMBOL drivers/hwmon/hwmon-vid 0x2f9e7f8e vid_which_vrm +EXPORT_SYMBOL drivers/hwmon/hwmon-vid 0x446615bd vid_from_reg +EXPORT_SYMBOL drivers/i2c/algos/i2c-algo-bit 0x79140c78 i2c_bit_add_numbered_bus +EXPORT_SYMBOL drivers/i2c/algos/i2c-algo-bit 0xb29eaccf i2c_bit_add_bus +EXPORT_SYMBOL drivers/i2c/algos/i2c-algo-bit 0xbb62d355 i2c_bit_algo +EXPORT_SYMBOL drivers/i2c/algos/i2c-algo-pca 0xbbaadac5 i2c_pca_add_bus +EXPORT_SYMBOL drivers/i2c/algos/i2c-algo-pca 0xfd26ce78 i2c_pca_add_numbered_bus +EXPORT_SYMBOL drivers/i2c/busses/i2c-amd756 0x76c70831 amd756_smbus +EXPORT_SYMBOL drivers/iio/accel/bma400_core 0x69413b23 bma400_probe +EXPORT_SYMBOL drivers/iio/accel/bma400_core 0x71f71248 bma400_regmap_config +EXPORT_SYMBOL drivers/iio/accel/bma400_core 0xe87fb0bb bma400_remove +EXPORT_SYMBOL drivers/iio/accel/kxsd9 0x22f498c3 kxsd9_common_remove +EXPORT_SYMBOL drivers/iio/accel/kxsd9 0x5c38f378 kxsd9_dev_pm_ops +EXPORT_SYMBOL drivers/iio/accel/kxsd9 0x86877af5 kxsd9_common_probe +EXPORT_SYMBOL drivers/iio/accel/mma9551_core 0x014824c0 mma9551_read_version +EXPORT_SYMBOL drivers/iio/accel/mma9551_core 0x0716fac4 mma9551_read_config_word +EXPORT_SYMBOL drivers/iio/accel/mma9551_core 0x17ce81e2 mma9551_write_config_word +EXPORT_SYMBOL drivers/iio/accel/mma9551_core 0x19e1e319 mma9551_gpio_config +EXPORT_SYMBOL drivers/iio/accel/mma9551_core 0x2380d4bd mma9551_write_config_words +EXPORT_SYMBOL drivers/iio/accel/mma9551_core 0x41ef446c mma9551_read_accel_scale +EXPORT_SYMBOL drivers/iio/accel/mma9551_core 0x5a029e52 mma9551_update_config_bits +EXPORT_SYMBOL drivers/iio/accel/mma9551_core 0x6101acb4 mma9551_read_status_word +EXPORT_SYMBOL drivers/iio/accel/mma9551_core 0x9cb24468 mma9551_set_power_state +EXPORT_SYMBOL drivers/iio/accel/mma9551_core 0xbcd7fe96 mma9551_sleep +EXPORT_SYMBOL drivers/iio/accel/mma9551_core 0xd925bc57 mma9551_read_accel_chan +EXPORT_SYMBOL drivers/iio/accel/mma9551_core 0xdba5ac01 mma9551_read_config_words +EXPORT_SYMBOL drivers/iio/accel/mma9551_core 0xe640431f mma9551_read_status_words +EXPORT_SYMBOL drivers/iio/accel/mma9551_core 0xe84e5b72 mma9551_read_status_byte +EXPORT_SYMBOL drivers/iio/accel/mma9551_core 0xef237ea4 mma9551_write_config_byte +EXPORT_SYMBOL drivers/iio/accel/mma9551_core 0xf923e1a8 mma9551_read_config_byte +EXPORT_SYMBOL drivers/iio/accel/mma9551_core 0xfea40f23 mma9551_app_reset +EXPORT_SYMBOL drivers/iio/accel/mma9551_core 0xffa00534 mma9551_set_device_state +EXPORT_SYMBOL drivers/iio/accel/st_accel 0x4950e851 st_accel_common_probe +EXPORT_SYMBOL drivers/iio/accel/st_accel 0x78f8b471 st_accel_get_settings +EXPORT_SYMBOL drivers/iio/accel/st_accel 0xd12cc936 st_accel_common_remove +EXPORT_SYMBOL drivers/iio/adc/qcom-vadc-common 0x70e6eca1 qcom_vadc_decimation_from_dt +EXPORT_SYMBOL drivers/iio/adc/qcom-vadc-common 0xcae36995 qcom_vadc_scale +EXPORT_SYMBOL drivers/iio/adc/qcom-vadc-common 0xf253ae31 qcom_adc5_hw_scale +EXPORT_SYMBOL drivers/iio/buffer/industrialio-buffer-dmaengine 0x6b284a1b iio_dmaengine_buffer_alloc +EXPORT_SYMBOL drivers/iio/buffer/industrialio-triggered-buffer 0x09366eda iio_triggered_buffer_cleanup +EXPORT_SYMBOL drivers/iio/buffer/industrialio-triggered-buffer 0x185fcdee iio_triggered_buffer_setup +EXPORT_SYMBOL drivers/iio/buffer/kfifo_buf 0x0ae6d4b3 iio_kfifo_allocate +EXPORT_SYMBOL drivers/iio/buffer/kfifo_buf 0x2e0ad288 devm_iio_kfifo_allocate +EXPORT_SYMBOL drivers/iio/buffer/kfifo_buf 0xfb359eb1 iio_kfifo_free +EXPORT_SYMBOL drivers/iio/chemical/bme680_core 0xea4ce8c8 bme680_regmap_config +EXPORT_SYMBOL drivers/iio/common/hid-sensors/hid-sensor-iio-common 0x0b70486c hid_sensor_read_poll_value +EXPORT_SYMBOL drivers/iio/common/hid-sensors/hid-sensor-iio-common 0x1862ef06 hid_sensor_write_samp_freq_value +EXPORT_SYMBOL drivers/iio/common/hid-sensors/hid-sensor-iio-common 0x310222e3 hid_sensor_read_raw_hyst_value +EXPORT_SYMBOL drivers/iio/common/hid-sensors/hid-sensor-iio-common 0x4b2d282c hid_sensor_batch_mode_supported +EXPORT_SYMBOL drivers/iio/common/hid-sensors/hid-sensor-iio-common 0x698cef72 hid_sensor_set_report_latency +EXPORT_SYMBOL drivers/iio/common/hid-sensors/hid-sensor-iio-common 0x7c458479 hid_sensor_get_report_latency +EXPORT_SYMBOL drivers/iio/common/hid-sensors/hid-sensor-iio-common 0x7f7621ec hid_sensor_format_scale +EXPORT_SYMBOL drivers/iio/common/hid-sensors/hid-sensor-iio-common 0x90ab1e9e hid_sensor_write_raw_hyst_value +EXPORT_SYMBOL drivers/iio/common/hid-sensors/hid-sensor-iio-common 0xd27ef95c hid_sensor_read_samp_freq_value +EXPORT_SYMBOL drivers/iio/common/hid-sensors/hid-sensor-iio-common 0xf3e38411 hid_sensor_parse_common_attributes +EXPORT_SYMBOL drivers/iio/common/hid-sensors/hid-sensor-iio-common 0xfa2299ae hid_sensor_convert_timestamp +EXPORT_SYMBOL drivers/iio/common/hid-sensors/hid-sensor-trigger 0x3badabaf hid_sensor_pm_ops +EXPORT_SYMBOL drivers/iio/common/hid-sensors/hid-sensor-trigger 0xa87a1574 hid_sensor_power_state +EXPORT_SYMBOL drivers/iio/common/hid-sensors/hid-sensor-trigger 0xe11cef76 hid_sensor_remove_trigger +EXPORT_SYMBOL drivers/iio/common/hid-sensors/hid-sensor-trigger 0xfc1c8a84 hid_sensor_setup_trigger +EXPORT_SYMBOL drivers/iio/common/ms_sensors/ms_sensors_i2c 0x045688dd ms_sensors_read_prom_word +EXPORT_SYMBOL drivers/iio/common/ms_sensors/ms_sensors_i2c 0x2d2f5cd5 ms_sensors_reset +EXPORT_SYMBOL drivers/iio/common/ms_sensors/ms_sensors_i2c 0x31ed0d5a ms_sensors_ht_read_temperature +EXPORT_SYMBOL drivers/iio/common/ms_sensors/ms_sensors_i2c 0x42b6a050 ms_sensors_convert_and_read +EXPORT_SYMBOL drivers/iio/common/ms_sensors/ms_sensors_i2c 0x70ef2858 ms_sensors_show_battery_low +EXPORT_SYMBOL drivers/iio/common/ms_sensors/ms_sensors_i2c 0x7ef2a93d ms_sensors_ht_read_humidity +EXPORT_SYMBOL drivers/iio/common/ms_sensors/ms_sensors_i2c 0xb4814a56 ms_sensors_tp_read_prom +EXPORT_SYMBOL drivers/iio/common/ms_sensors/ms_sensors_i2c 0xbf0785af ms_sensors_show_heater +EXPORT_SYMBOL drivers/iio/common/ms_sensors/ms_sensors_i2c 0xcc133ebe ms_sensors_read_temp_and_pressure +EXPORT_SYMBOL drivers/iio/common/ms_sensors/ms_sensors_i2c 0xe0c28932 ms_sensors_write_heater +EXPORT_SYMBOL drivers/iio/common/ms_sensors/ms_sensors_i2c 0xe62ada43 ms_sensors_write_resolution +EXPORT_SYMBOL drivers/iio/common/ms_sensors/ms_sensors_i2c 0xf2894467 ms_sensors_read_serial +EXPORT_SYMBOL drivers/iio/common/ssp_sensors/sensorhub 0x02b96d29 ssp_change_delay +EXPORT_SYMBOL drivers/iio/common/ssp_sensors/sensorhub 0x132f8f62 ssp_register_consumer +EXPORT_SYMBOL drivers/iio/common/ssp_sensors/sensorhub 0x3ddfabab ssp_get_sensor_delay +EXPORT_SYMBOL drivers/iio/common/ssp_sensors/sensorhub 0x48ffdb1b ssp_disable_sensor +EXPORT_SYMBOL drivers/iio/common/ssp_sensors/sensorhub 0x7e748033 ssp_enable_sensor +EXPORT_SYMBOL drivers/iio/common/ssp_sensors/ssp_iio 0x62c3ea3c ssp_common_process_data +EXPORT_SYMBOL drivers/iio/common/ssp_sensors/ssp_iio 0xbddf3fdb ssp_common_buffer_postdisable +EXPORT_SYMBOL drivers/iio/common/ssp_sensors/ssp_iio 0xc76f2b6d ssp_common_buffer_postenable +EXPORT_SYMBOL drivers/iio/common/st_sensors/st_sensors 0x074d7047 st_sensors_trigger_handler +EXPORT_SYMBOL drivers/iio/common/st_sensors/st_sensors 0x0e2bf028 st_sensors_power_enable +EXPORT_SYMBOL drivers/iio/common/st_sensors/st_sensors 0x1aee1a67 st_sensors_validate_device +EXPORT_SYMBOL drivers/iio/common/st_sensors/st_sensors 0x1c2388c3 st_sensors_debugfs_reg_access +EXPORT_SYMBOL drivers/iio/common/st_sensors/st_sensors 0x4df1c498 st_sensors_dev_name_probe +EXPORT_SYMBOL drivers/iio/common/st_sensors/st_sensors 0x4e167ab5 st_sensors_read_info_raw +EXPORT_SYMBOL drivers/iio/common/st_sensors/st_sensors 0x78e74f5f st_sensors_verify_id +EXPORT_SYMBOL drivers/iio/common/st_sensors/st_sensors 0x7cd0f910 st_sensors_allocate_trigger +EXPORT_SYMBOL drivers/iio/common/st_sensors/st_sensors 0x81937c01 st_sensors_set_odr +EXPORT_SYMBOL drivers/iio/common/st_sensors/st_sensors 0x8f41997f st_sensors_power_disable +EXPORT_SYMBOL drivers/iio/common/st_sensors/st_sensors 0x98ac71b3 st_sensors_set_dataready_irq +EXPORT_SYMBOL drivers/iio/common/st_sensors/st_sensors 0xb4e52ebd st_sensors_deallocate_trigger +EXPORT_SYMBOL drivers/iio/common/st_sensors/st_sensors 0xb721947a st_sensors_get_settings_index +EXPORT_SYMBOL drivers/iio/common/st_sensors/st_sensors 0xbed5ba64 st_sensors_set_fullscale_by_gain +EXPORT_SYMBOL drivers/iio/common/st_sensors/st_sensors 0xc2243096 st_sensors_sysfs_sampling_frequency_avail +EXPORT_SYMBOL drivers/iio/common/st_sensors/st_sensors 0xc25c42b8 st_sensors_sysfs_scale_avail +EXPORT_SYMBOL drivers/iio/common/st_sensors/st_sensors 0xc2980432 st_sensors_set_axis_enable +EXPORT_SYMBOL drivers/iio/common/st_sensors/st_sensors 0xc7472356 st_sensors_init_sensor +EXPORT_SYMBOL drivers/iio/common/st_sensors/st_sensors 0xfba69e20 st_sensors_set_enable +EXPORT_SYMBOL drivers/iio/common/st_sensors/st_sensors_i2c 0x736ff890 st_sensors_i2c_configure +EXPORT_SYMBOL drivers/iio/common/st_sensors/st_sensors_spi 0x82ca6601 st_sensors_spi_configure +EXPORT_SYMBOL drivers/iio/gyro/mpu3050 0x1247908b mpu3050_common_probe +EXPORT_SYMBOL drivers/iio/gyro/mpu3050 0x2fa1b67a mpu3050_dev_pm_ops +EXPORT_SYMBOL drivers/iio/gyro/mpu3050 0xcabeb464 mpu3050_common_remove +EXPORT_SYMBOL drivers/iio/gyro/st_gyro 0x1fcc3336 st_gyro_common_remove +EXPORT_SYMBOL drivers/iio/gyro/st_gyro 0x3aa851e6 st_gyro_get_settings +EXPORT_SYMBOL drivers/iio/gyro/st_gyro 0x43631ac5 st_gyro_common_probe +EXPORT_SYMBOL drivers/iio/humidity/hts221 0x334562a0 hts221_pm_ops +EXPORT_SYMBOL drivers/iio/humidity/hts221 0x5fb620bc hts221_probe +EXPORT_SYMBOL drivers/iio/imu/adis_lib 0x3040566a adis_enable_irq +EXPORT_SYMBOL drivers/iio/imu/adis_lib 0x49fabf10 adis_debugfs_reg_access +EXPORT_SYMBOL drivers/iio/imu/bmi160/bmi160_core 0x6443b915 bmi160_regmap_config +EXPORT_SYMBOL drivers/iio/imu/bmi160/bmi160_core 0xca19cfae bmi160_enable_irq +EXPORT_SYMBOL drivers/iio/imu/fxos8700_core 0xf15818d6 fxos8700_regmap_config +EXPORT_SYMBOL drivers/iio/imu/st_lsm6dsx/st_lsm6dsx 0x5a11bdbc st_lsm6dsx_probe +EXPORT_SYMBOL drivers/iio/imu/st_lsm6dsx/st_lsm6dsx 0xd42ade6f st_lsm6dsx_pm_ops +EXPORT_SYMBOL drivers/iio/industrialio 0x2d6bcdcb iio_trigger_generic_data_rdy_poll +EXPORT_SYMBOL drivers/iio/industrialio 0x2f86ceeb iio_push_event +EXPORT_SYMBOL drivers/iio/industrialio 0x3f21d097 iio_triggered_buffer_postenable +EXPORT_SYMBOL drivers/iio/industrialio 0x4f7aa488 iio_device_set_clock +EXPORT_SYMBOL drivers/iio/industrialio 0x52fb5a92 iio_trigger_set_immutable +EXPORT_SYMBOL drivers/iio/industrialio 0x53faad11 iio_trigger_notify_done +EXPORT_SYMBOL drivers/iio/industrialio 0x57b6268c iio_get_time_ns +EXPORT_SYMBOL drivers/iio/industrialio 0x5d8994e0 iio_device_unregister +EXPORT_SYMBOL drivers/iio/industrialio 0x5ff3260e iio_trigger_alloc +EXPORT_SYMBOL drivers/iio/industrialio 0x69baa816 iio_buffer_init +EXPORT_SYMBOL drivers/iio/industrialio 0x780485c6 iio_trigger_poll_chained +EXPORT_SYMBOL drivers/iio/industrialio 0x7e1056d3 iio_trigger_poll +EXPORT_SYMBOL drivers/iio/industrialio 0x878f4551 iio_bus_type +EXPORT_SYMBOL drivers/iio/industrialio 0x8f0493a8 __iio_device_register +EXPORT_SYMBOL drivers/iio/industrialio 0x945b2800 iio_device_free +EXPORT_SYMBOL drivers/iio/industrialio 0x9c5c6ba1 iio_trigger_using_own +EXPORT_SYMBOL drivers/iio/industrialio 0xbe1642b9 iio_triggered_buffer_predisable +EXPORT_SYMBOL drivers/iio/industrialio 0xcbea6ecf iio_read_mount_matrix +EXPORT_SYMBOL drivers/iio/industrialio 0xdb839e67 iio_trigger_free +EXPORT_SYMBOL drivers/iio/industrialio 0xdf76bbeb iio_pollfunc_store_time +EXPORT_SYMBOL drivers/iio/industrialio 0xe3a809cb iio_device_alloc +EXPORT_SYMBOL drivers/iio/industrialio 0xe54b7b7d iio_trigger_unregister +EXPORT_SYMBOL drivers/iio/industrialio 0xeb72bdb2 iio_read_const_attr +EXPORT_SYMBOL drivers/iio/industrialio 0xf0244169 iio_get_time_res +EXPORT_SYMBOL drivers/iio/industrialio 0xf9c10199 iio_trigger_validate_own_device +EXPORT_SYMBOL drivers/iio/industrialio 0xfa5f61ea __iio_trigger_register +EXPORT_SYMBOL drivers/iio/industrialio-configfs 0x472a9cd0 iio_configfs_subsys +EXPORT_SYMBOL drivers/iio/industrialio-sw-device 0x1e3c1fed iio_sw_device_destroy +EXPORT_SYMBOL drivers/iio/industrialio-sw-device 0x7bdadcc4 iio_register_sw_device_type +EXPORT_SYMBOL drivers/iio/industrialio-sw-device 0xa35886cd iio_sw_device_create +EXPORT_SYMBOL drivers/iio/industrialio-sw-device 0xac17d881 iio_unregister_sw_device_type +EXPORT_SYMBOL drivers/iio/industrialio-sw-trigger 0x28cae629 iio_register_sw_trigger_type +EXPORT_SYMBOL drivers/iio/industrialio-sw-trigger 0x9bca694f iio_unregister_sw_trigger_type +EXPORT_SYMBOL drivers/iio/industrialio-sw-trigger 0xd9fae14b iio_sw_trigger_create +EXPORT_SYMBOL drivers/iio/industrialio-sw-trigger 0xfe92bcfa iio_sw_trigger_destroy +EXPORT_SYMBOL drivers/iio/industrialio-triggered-event 0x68d2c064 iio_triggered_event_setup +EXPORT_SYMBOL drivers/iio/industrialio-triggered-event 0xfc37377e iio_triggered_event_cleanup +EXPORT_SYMBOL drivers/iio/light/st_uvis25_core 0x662518f2 st_uvis25_pm_ops +EXPORT_SYMBOL drivers/iio/light/st_uvis25_core 0xc1ca6cb0 st_uvis25_probe +EXPORT_SYMBOL drivers/iio/magnetometer/bmc150_magn 0x3c28d10c bmc150_magn_probe +EXPORT_SYMBOL drivers/iio/magnetometer/bmc150_magn 0x6b60c65d bmc150_magn_pm_ops +EXPORT_SYMBOL drivers/iio/magnetometer/bmc150_magn 0x92b97e68 bmc150_magn_regmap_config +EXPORT_SYMBOL drivers/iio/magnetometer/bmc150_magn 0xda0ae2e4 bmc150_magn_remove +EXPORT_SYMBOL drivers/iio/magnetometer/hmc5843_core 0x0fda8a8c hmc5843_common_probe +EXPORT_SYMBOL drivers/iio/magnetometer/hmc5843_core 0x6b44a94a hmc5843_common_suspend +EXPORT_SYMBOL drivers/iio/magnetometer/hmc5843_core 0x89032a4d hmc5843_common_remove +EXPORT_SYMBOL drivers/iio/magnetometer/hmc5843_core 0xbdd6c09f hmc5843_common_resume +EXPORT_SYMBOL drivers/iio/magnetometer/st_magn 0x4439bc9a st_magn_common_probe +EXPORT_SYMBOL drivers/iio/magnetometer/st_magn 0xab5c9a47 st_magn_get_settings +EXPORT_SYMBOL drivers/iio/magnetometer/st_magn 0xe41f25f5 st_magn_common_remove +EXPORT_SYMBOL drivers/iio/pressure/bmp280 0x12fd0bd9 bmp280_regmap_config +EXPORT_SYMBOL drivers/iio/pressure/bmp280 0x719d1787 bmp280_dev_pm_ops +EXPORT_SYMBOL drivers/iio/pressure/bmp280 0xeb1d4d84 bmp280_common_probe +EXPORT_SYMBOL drivers/iio/pressure/bmp280 0xf87bd6bb bmp180_regmap_config +EXPORT_SYMBOL drivers/iio/pressure/ms5611_core 0x635eb26b ms5611_probe +EXPORT_SYMBOL drivers/iio/pressure/ms5611_core 0xa6a8b0c6 ms5611_remove +EXPORT_SYMBOL drivers/iio/pressure/st_pressure 0x6da98a0a st_press_common_remove +EXPORT_SYMBOL drivers/iio/pressure/st_pressure 0x7e9c9e3f st_press_get_settings +EXPORT_SYMBOL drivers/iio/pressure/st_pressure 0xaa90cee0 st_press_common_probe +EXPORT_SYMBOL drivers/infiniband/core/ib_cm 0x0b769392 ib_send_cm_sidr_req +EXPORT_SYMBOL drivers/infiniband/core/ib_cm 0x0fe83580 ib_send_cm_drep +EXPORT_SYMBOL drivers/infiniband/core/ib_cm 0x108f0174 ib_destroy_cm_id +EXPORT_SYMBOL drivers/infiniband/core/ib_cm 0x328669f4 ib_send_cm_rep +EXPORT_SYMBOL drivers/infiniband/core/ib_cm 0x3abc53e0 ib_create_cm_id +EXPORT_SYMBOL drivers/infiniband/core/ib_cm 0x3ac4fee0 ib_cm_listen +EXPORT_SYMBOL drivers/infiniband/core/ib_cm 0x6658e56d ib_cm_notify +EXPORT_SYMBOL drivers/infiniband/core/ib_cm 0x69824a14 ibcm_reject_msg +EXPORT_SYMBOL drivers/infiniband/core/ib_cm 0x7806ac2f ib_send_cm_sidr_rep +EXPORT_SYMBOL drivers/infiniband/core/ib_cm 0x92ed3e46 ib_cm_init_qp_attr +EXPORT_SYMBOL drivers/infiniband/core/ib_cm 0xa9a25572 ib_send_cm_dreq +EXPORT_SYMBOL drivers/infiniband/core/ib_cm 0xc0209c3f ib_send_cm_rtu +EXPORT_SYMBOL drivers/infiniband/core/ib_cm 0xc6f1e3e2 cm_class +EXPORT_SYMBOL drivers/infiniband/core/ib_cm 0xcfe63007 ib_cm_insert_listen +EXPORT_SYMBOL drivers/infiniband/core/ib_cm 0xd0af4567 ib_send_cm_mra +EXPORT_SYMBOL drivers/infiniband/core/ib_cm 0xece587d0 ib_send_cm_rej +EXPORT_SYMBOL drivers/infiniband/core/ib_cm 0xffbcf761 ib_send_cm_req +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x011c35bf rdma_dev_access_netns +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x01c17291 rdma_rw_ctx_wrs +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x020a0871 rdma_nl_register +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x0214bc26 ib_free_cq +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x02368cfb rdma_rw_ctx_destroy_signature +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x028184d3 __ib_alloc_pd +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x03437fa8 rdma_query_gid +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x06857a5f ib_device_set_netdev +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x07b5ba78 rdma_read_gid_hw_context +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x0911d4dc rdma_translate_ip +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x091af5c7 rdma_move_ah_attr +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x0b9f6029 ib_register_event_handler +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x0c609835 rdma_resolve_ip +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x0d4e0f32 rdma_move_grh_sgid_attr +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x103cca4a ib_sa_join_multicast +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x104aad3c ib_modify_device +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x12555a9d rdma_nl_put_driver_string +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x15bc51b1 roce_gid_type_mask_support +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x184621a4 ib_get_rdma_header_version +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x1888e98e ib_get_vf_stats +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x1b037462 __rdma_block_iter_start +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x1e70dfab ib_free_send_mad +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x1e8ccc80 ib_drain_rq +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x1f7a5383 ibdev_emerg +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x1fd81b7e ib_detach_mcast +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x21b0ca4e rdma_copy_src_l2_addr +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x22989a8f ib_query_port +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x22f3cf93 ib_pack +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x232f83d9 ib_query_srq +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x241e619a ib_attach_mcast +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x269c655c __ib_alloc_cq_any +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x279d853d ib_sa_unregister_client +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x2a91bb33 ib_cache_gid_type_str +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x2d9c4df8 ibdev_printk +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x2f4249b4 rdma_nl_unicast_wait +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x305e5701 rdma_addr_size_kss +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x30b65d61 ib_dealloc_device +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x3138acd8 ib_alloc_mr_integrity +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x3432af0b ib_unregister_device +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x34b98cdc ib_cancel_mad +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x3681a05d ib_find_pkey +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x3702d599 ib_free_recv_mad +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x374ab3a3 ib_map_mr_sg_pi +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x38438c62 __ib_alloc_xrcd +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x3869e8f0 ib_destroy_qp_user +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x395d1902 ib_unregister_device_queued +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x3a805e54 ib_drain_qp +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x3ac98b1c ib_mr_pool_destroy +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x3cf6c111 rdma_rw_ctx_init +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x3cfeaf9a ib_dealloc_pd_user +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x3eb43568 ib_destroy_srq_user +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x3f99e9a1 ib_check_mr_status +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x3fc2387c ib_ud_header_unpack +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x40591cec rdma_rw_ctx_post +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x40f3755e rdma_nl_multicast +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x4220a3c3 rdma_rw_ctx_signature_init +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x4230a61b ib_get_cached_port_state +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x434c5d10 zgid +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x437dd939 rdma_link_register +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x459ba037 rdma_nl_put_driver_u32_hex +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x45fb8985 rdma_nl_chk_listeners +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x46c8e7a5 rdma_read_gid_l2_fields +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x4891d590 rdma_user_mmap_entry_insert +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x49e86a0e ib_get_gids_from_rdma_hdr +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x4adf7289 rdma_query_ah +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x4e155af0 ib_response_mad +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x4e2c0705 rdma_addr_cancel +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x4e90435c ib_sa_free_multicast +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x50b282b3 ib_post_send_mad +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x516c7ec5 rdma_destroy_ah_attr +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x5236cc44 rdma_get_gid_attr +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x526835de rdma_rw_mr_factor +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x5334043a ibdev_alert +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x54deafe5 rdma_copy_ah_attr +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x54e61fdf ib_init_ah_from_mcmember +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x55276728 ib_modify_mad +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x557e5ea5 ib_mr_pool_put +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x55aa21ec ib_find_gid +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x568a0a64 rdma_user_mmap_entry_put +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x56c1ae6e ibnl_put_attr +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x5783c33c rdma_user_mmap_entry_insert_range +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x57cbcc67 rdma_restrack_set_task +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x5a42415a ib_get_cached_subnet_prefix +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x5a7a0ac3 ib_mad_kernel_rmpp_agent +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x5da13d44 ib_modify_wq +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x5e70b4b3 ib_init_ah_attr_from_path +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x5e78bf14 ib_port_register_module_stat +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x5f382e07 ib_set_client_data +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x603bc452 rdma_rw_ctx_destroy +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x613b1e2e ib_is_mad_class_rmpp +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x61d24c52 ib_rate_to_mbps +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x63b0d6f9 ib_create_ah_from_wc +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x63f4ecbe ib_dereg_mr_user +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x64b4c959 ib_unregister_event_handler +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x66088fe4 ib_advise_mr +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x6735e152 ib_cq_pool_get +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x67521643 rdma_restrack_get_byid +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x677a6cbf ib_set_vf_link_state +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x67afb0bc ib_create_qp +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x69534b0a rdma_read_gid_attr_ndev_rcu +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x6b42c31b ib_sa_guid_info_rec_query +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x6b958320 ib_ud_ip4_csum +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x6d21c0d1 rdma_link_unregister +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x6d8458a7 ib_map_mr_sg +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x6f3614b6 rdma_is_zero_gid +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x6fbbecad ibnl_put_msg +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x709f9b20 ib_modify_srq +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x73c26ba7 ib_resize_cq +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x74161cdc ib_process_cq_direct +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x75772593 ib_create_rwq_ind_table +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x75a729a0 rdma_nl_unregister +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x7722556b ib_get_device_fw_str +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x787ccc4c ib_get_mad_data_offset +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x791c7dd9 ibdev_err +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x79e9dbf3 ib_open_qp +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x7b56b034 ib_unregister_driver +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x7c2897ca ib_get_eth_speed +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x7da9f5c5 ib_unregister_mad_agent +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x7dbe5bf8 rdma_hold_gid_attr +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x7fa746b7 rdma_user_mmap_entry_get +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x802b7a9c rdma_nl_unicast +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x80d6906c ib_device_get_by_name +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x82b40943 rdma_init_netdev +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x86cef180 rdma_addr_size +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x87f25ab3 ib_get_rmpp_segment +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x8872e7fb ib_reg_user_mr +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x8e7528da __rdma_block_iter_next +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x9062671c rdma_restrack_kadd +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x90e807c7 ib_cache_gid_parse_type_str +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x92eb658a ib_modify_qp +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x9339d707 ibdev_crit +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x94136fed rdma_nl_put_driver_u64_hex +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x9480ec61 ib_alloc_mr_user +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x94d973a9 ib_get_vf_config +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x94ddf4a4 ib_cq_pool_put +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x975ff2b9 ib_sa_register_client +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x97799a8d rdma_user_mmap_entry_remove +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x989c1293 rdma_replace_ah_attr +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x9c219376 ib_destroy_cq_user +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x9c43a006 rdma_set_cq_moderation +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x9d06a80c ib_rdmacg_try_charge +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x9f1269fd ib_get_cached_pkey +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xa432baf6 ib_unpack +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xa47b1d02 ib_device_put +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xa5f5dc46 rdma_roce_rescan_device +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xa68e41a0 ib_find_exact_cached_pkey +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xa78c5a28 ib_query_pkey +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xa86c2a0f _ib_alloc_device +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xa89b2818 ibdev_warn +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xa970d878 ib_sa_get_mcmember_rec +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xa979ae33 ib_mr_pool_get +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xaaedb9ce rdma_port_get_link_layer +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xab33a80c ib_set_vf_guid +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xab4b7ba2 ib_create_qp_security +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xac26219e rdma_nl_put_driver_u32 +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xae956dce ib_rate_to_mult +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xaf5ca454 ib_dispatch_event +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xafb8f13f ib_create_srq_user +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xb27b4886 rdma_umap_priv_init +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xb36e4148 ib_sa_pack_path +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xb55ca96f rdma_restrack_count +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xb55efa16 ib_drain_sq +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xb7852a05 ib_ud_header_init +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xbb4e631f ib_unregister_client +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xbe2fc8b6 ib_create_wq +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xbe6e601f __ib_create_cq +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xbe800104 ib_modify_qp_with_udata +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xbfd054c1 ib_port_unregister_module_stat +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xc10a3faf ib_get_cached_lmc +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xc16eb4a6 ibdev_notice +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xc244b606 ib_destroy_wq +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xc35fda72 __ib_alloc_cq +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xc61e2830 ib_sa_sendonly_fullmem_support +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xc63c9b02 rdma_nl_stat_hwcounter_entry +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xc745b10c ib_register_device +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xc781a176 rdma_modify_ah +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xcf33aa77 rdma_user_mmap_entry_get_pgoff +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xd02fd82d rdma_create_user_ah +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xd1234a7c ib_init_ah_attr_from_wc +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xd500046f ib_get_vf_guid +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xd56e0a48 rdma_destroy_ah_user +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xd6636ca6 rdma_addr_size_in6 +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xd6e65d77 ib_modify_qp_is_ok +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xd8284729 ib_rdmacg_uncharge +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xd957ccb5 ib_sg_to_pages +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xda0d50ec ib_sa_cancel_query +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xdae8d685 rdma_find_gid_by_port +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xde4aef93 ib_unregister_device_and_put +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xdf315b7d ibdev_info +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xe05fa66e ib_close_qp +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xe10ebdd9 ib_create_send_mad +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xe27069f9 rdma_restrack_uadd +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xe3530b1a ib_get_net_dev_by_params +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xe3564068 ib_register_mad_agent +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xe5840ec6 ib_wc_status_msg +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xe5a78c1e ib_sa_unpack_path +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xe7b52e5f mult_to_ib_rate +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xe9e799fc ib_ud_header_pack +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xea3b46d5 rdma_put_gid_attr +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xebfefbdf ib_modify_port +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xec83d88d rdma_user_mmap_io +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xecd2f121 rdma_restrack_del +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xef53d5d7 ib_register_client +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xf32a324e ib_mr_pool_init +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xf598d65a ib_find_cached_pkey +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xf5de2db5 rdma_nl_put_driver_u64 +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xf5dedb30 rdma_node_get_transport +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xf60d38b5 rdma_create_ah +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xf6ed3334 ib_event_msg +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xf74bf3e4 rdma_restrack_get +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xf78fae1e rdma_restrack_put +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xf893d41a ib_sa_path_rec_get +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xfa1a3187 ib_sa_service_rec_query +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xfa789735 rdma_alloc_netdev +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xfa921cc4 ib_set_device_ops +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xfadd4019 rdma_find_gid +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xfb3a93e8 ib_device_get_by_netdev +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xfb43065f ib_destroy_rwq_ind_table +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xfd2b8eed ib_query_qp +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xfd59eebc ib_dealloc_xrcd +EXPORT_SYMBOL drivers/infiniband/core/ib_uverbs 0x03136cfd _uverbs_alloc +EXPORT_SYMBOL drivers/infiniband/core/ib_uverbs 0x1b54bd5d ib_copy_path_rec_from_user +EXPORT_SYMBOL drivers/infiniband/core/ib_uverbs 0x1f19fb99 flow_resources_add +EXPORT_SYMBOL drivers/infiniband/core/ib_uverbs 0x250eca7b ib_umem_odp_get +EXPORT_SYMBOL drivers/infiniband/core/ib_uverbs 0x2ac71277 ib_umem_odp_map_dma_pages +EXPORT_SYMBOL drivers/infiniband/core/ib_uverbs 0x34ddfed3 ib_umem_copy_from +EXPORT_SYMBOL drivers/infiniband/core/ib_uverbs 0x3cea6605 ib_umem_page_count +EXPORT_SYMBOL drivers/infiniband/core/ib_uverbs 0x4764d53c ib_umem_odp_alloc_child +EXPORT_SYMBOL drivers/infiniband/core/ib_uverbs 0x47e78199 ib_copy_ah_attr_to_user +EXPORT_SYMBOL drivers/infiniband/core/ib_uverbs 0x5744aa32 ib_umem_release +EXPORT_SYMBOL drivers/infiniband/core/ib_uverbs 0x5800b72f uverbs_destroy_def_handler +EXPORT_SYMBOL drivers/infiniband/core/ib_uverbs 0x61f880a5 uverbs_copy_to +EXPORT_SYMBOL drivers/infiniband/core/ib_uverbs 0x62787827 uverbs_get_flags64 +EXPORT_SYMBOL drivers/infiniband/core/ib_uverbs 0x63057f4b ib_copy_path_rec_to_user +EXPORT_SYMBOL drivers/infiniband/core/ib_uverbs 0x6834195b uverbs_fd_class +EXPORT_SYMBOL drivers/infiniband/core/ib_uverbs 0x721970f0 ib_umem_odp_unmap_dma_pages +EXPORT_SYMBOL drivers/infiniband/core/ib_uverbs 0x8106c5ce ib_umem_get +EXPORT_SYMBOL drivers/infiniband/core/ib_uverbs 0x83e2c559 ib_umem_odp_release +EXPORT_SYMBOL drivers/infiniband/core/ib_uverbs 0x8717ed0c uverbs_uobject_put +EXPORT_SYMBOL drivers/infiniband/core/ib_uverbs 0x8954fbea ib_umem_find_best_pgsz +EXPORT_SYMBOL drivers/infiniband/core/ib_uverbs 0x8b4677eb uverbs_idr_class +EXPORT_SYMBOL drivers/infiniband/core/ib_uverbs 0x8c33cf7d ib_copy_qp_attr_to_user +EXPORT_SYMBOL drivers/infiniband/core/ib_uverbs 0xa1482e00 flow_resources_alloc +EXPORT_SYMBOL drivers/infiniband/core/ib_uverbs 0xa98f2d19 ib_uverbs_get_ucontext_file +EXPORT_SYMBOL drivers/infiniband/core/ib_uverbs 0xb855072a uverbs_finalize_uobj_create +EXPORT_SYMBOL drivers/infiniband/core/ib_uverbs 0xbffdab10 ib_umem_odp_alloc_implicit +EXPORT_SYMBOL drivers/infiniband/core/ib_uverbs 0xc464ee9e uverbs_uobject_fd_release +EXPORT_SYMBOL drivers/infiniband/core/ib_uverbs 0xcf50f0ec uverbs_get_flags32 +EXPORT_SYMBOL drivers/infiniband/core/ib_uverbs 0xf0bac5dc ib_uverbs_flow_resources_free +EXPORT_SYMBOL drivers/infiniband/core/ib_uverbs 0xf8c07b22 _uverbs_get_const +EXPORT_SYMBOL drivers/infiniband/core/iw_cm 0x69cafc59 iw_cm_init_qp_attr +EXPORT_SYMBOL drivers/infiniband/core/iw_cm 0x9dc13b6b iw_cm_accept +EXPORT_SYMBOL drivers/infiniband/core/iw_cm 0x9e840dd5 iw_destroy_cm_id +EXPORT_SYMBOL drivers/infiniband/core/iw_cm 0xa4290905 iw_cm_connect +EXPORT_SYMBOL drivers/infiniband/core/iw_cm 0xb5ae6936 iw_cm_reject +EXPORT_SYMBOL drivers/infiniband/core/iw_cm 0xea2f054f iw_cm_disconnect +EXPORT_SYMBOL drivers/infiniband/core/iw_cm 0xf080c1c0 iw_cm_listen +EXPORT_SYMBOL drivers/infiniband/core/iw_cm 0xf3df871f iwcm_reject_msg +EXPORT_SYMBOL drivers/infiniband/core/iw_cm 0xf51fa9de iw_create_cm_id +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0x0358804d rdma_reject +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0x07a24c75 rdma_set_afonly +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0x0f869ac3 rdma_disconnect +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0x0fcfc643 __rdma_accept_ece +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0x18972905 rdma_iw_cm_id +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0x22bdc771 rdma_set_ib_path +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0x2a4625a9 rdma_set_service_type +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0x3edcc456 __rdma_create_id +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0x4658ad10 rdma_set_ack_timeout +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0x56b2f260 rdma_read_gids +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0x65634816 rdma_listen +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0x7137e656 __rdma_accept +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0x8585bf51 rdma_resolve_addr +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0x8d1123e9 rdma_leave_multicast +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0x907df803 rdma_event_msg +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0x993a1252 rdma_bind_addr +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0xa7fbfe98 rdma_notify +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0xb1e09fc1 rdma_create_qp +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0xbfb13926 rdma_set_reuseaddr +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0xc01c3174 rdma_resolve_route +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0xcde40ccb rdma_reject_msg +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0xe692f17a rdma_join_multicast +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0xe81c1ed8 rdma_destroy_qp +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0xe8351d89 rdma_init_qp_attr +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0xebdeb195 rdma_destroy_id +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0xebf35396 rdma_consumer_reject_data +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0xed382bd1 rdma_res_to_id +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0xf35fdff0 rdma_connect +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0xfb19fb24 rdma_get_service_id +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0xfd1ed5ad rdma_connect_ece +EXPORT_SYMBOL drivers/infiniband/ulp/rtrs/rtrs-client 0x3353fc3b rtrs_clt_put_permit +EXPORT_SYMBOL drivers/infiniband/ulp/rtrs/rtrs-client 0x501f598d rtrs_permit_to_pdu +EXPORT_SYMBOL drivers/infiniband/ulp/rtrs/rtrs-client 0x63ee4eb8 rtrs_clt_close +EXPORT_SYMBOL drivers/infiniband/ulp/rtrs/rtrs-client 0x6e4da72a rtrs_clt_get_permit +EXPORT_SYMBOL drivers/infiniband/ulp/rtrs/rtrs-client 0x7052fb6c rtrs_clt_request +EXPORT_SYMBOL drivers/infiniband/ulp/rtrs/rtrs-client 0x841c9650 rtrs_clt_query +EXPORT_SYMBOL drivers/infiniband/ulp/rtrs/rtrs-client 0xd0aaf32f rtrs_clt_open +EXPORT_SYMBOL drivers/infiniband/ulp/rtrs/rtrs-core 0x247b5187 rtrs_ib_dev_find_or_add +EXPORT_SYMBOL drivers/infiniband/ulp/rtrs/rtrs-core 0x568ad8c5 rtrs_rdma_dev_pd_init +EXPORT_SYMBOL drivers/infiniband/ulp/rtrs/rtrs-core 0x5b01e41d sockaddr_to_str +EXPORT_SYMBOL drivers/infiniband/ulp/rtrs/rtrs-core 0x7e57ef49 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 0xe3bdf7de rtrs_rdma_dev_pd_deinit +EXPORT_SYMBOL drivers/infiniband/ulp/rtrs/rtrs-server 0x02112787 rtrs_srv_get_sess_name +EXPORT_SYMBOL drivers/infiniband/ulp/rtrs/rtrs-server 0x25b101d9 rtrs_srv_open +EXPORT_SYMBOL drivers/infiniband/ulp/rtrs/rtrs-server 0xbdffabaf rtrs_srv_get_queue_depth +EXPORT_SYMBOL drivers/infiniband/ulp/rtrs/rtrs-server 0xe7133cce rtrs_srv_set_sess_priv +EXPORT_SYMBOL drivers/infiniband/ulp/rtrs/rtrs-server 0xed17d33d rtrs_srv_resp_rdma +EXPORT_SYMBOL drivers/infiniband/ulp/rtrs/rtrs-server 0xfe0d91e7 rtrs_srv_close +EXPORT_SYMBOL drivers/input/gameport/gameport 0x3f31b283 gameport_stop_polling +EXPORT_SYMBOL drivers/input/gameport/gameport 0x5b8fa0d8 gameport_unregister_driver +EXPORT_SYMBOL drivers/input/gameport/gameport 0x75f6a520 gameport_set_phys +EXPORT_SYMBOL drivers/input/gameport/gameport 0x927eb107 __gameport_register_port +EXPORT_SYMBOL drivers/input/gameport/gameport 0x9d7153e2 gameport_start_polling +EXPORT_SYMBOL drivers/input/gameport/gameport 0xbc28c51c gameport_close +EXPORT_SYMBOL drivers/input/gameport/gameport 0xc8d3934f gameport_open +EXPORT_SYMBOL drivers/input/gameport/gameport 0xd1bd3a00 __gameport_register_driver +EXPORT_SYMBOL drivers/input/gameport/gameport 0xdbc96866 gameport_unregister_port +EXPORT_SYMBOL drivers/input/input-polldev 0x0e5cef28 input_register_polled_device +EXPORT_SYMBOL drivers/input/input-polldev 0x0eb80f4e devm_input_allocate_polled_device +EXPORT_SYMBOL drivers/input/input-polldev 0xb1446723 input_unregister_polled_device +EXPORT_SYMBOL drivers/input/input-polldev 0xb94ab2ba input_free_polled_device +EXPORT_SYMBOL drivers/input/input-polldev 0xf4eb2993 input_allocate_polled_device +EXPORT_SYMBOL drivers/input/joystick/iforce/iforce 0x3df4fee3 iforce_send_packet +EXPORT_SYMBOL drivers/input/joystick/iforce/iforce 0xb037d8e4 iforce_process_packet +EXPORT_SYMBOL drivers/input/joystick/iforce/iforce 0xe9963471 iforce_init_device +EXPORT_SYMBOL drivers/input/matrix-keymap 0xca89b627 matrix_keypad_build_keymap +EXPORT_SYMBOL drivers/input/misc/ad714x 0x8dc0f314 ad714x_disable +EXPORT_SYMBOL drivers/input/misc/ad714x 0x966935f2 ad714x_probe +EXPORT_SYMBOL drivers/input/misc/ad714x 0x9c669537 ad714x_enable +EXPORT_SYMBOL drivers/input/misc/cma3000_d0x 0x3c5706f4 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 0x24bc4736 rmi_unregister_transport_device +EXPORT_SYMBOL drivers/input/sparse-keymap 0x5fb37f6c sparse_keymap_entry_from_keycode +EXPORT_SYMBOL drivers/input/sparse-keymap 0x692d0694 sparse_keymap_setup +EXPORT_SYMBOL drivers/input/sparse-keymap 0xa87ba26e sparse_keymap_report_entry +EXPORT_SYMBOL drivers/input/sparse-keymap 0xab4e8633 sparse_keymap_report_event +EXPORT_SYMBOL drivers/input/sparse-keymap 0xd3660228 sparse_keymap_entry_from_scancode +EXPORT_SYMBOL drivers/input/touchscreen/ad7879 0x2ec806d7 ad7879_pm_ops +EXPORT_SYMBOL drivers/input/touchscreen/ad7879 0xb0163668 ad7879_probe +EXPORT_SYMBOL drivers/isdn/capi/kernelcapi 0x49adec0e detach_capi_ctr +EXPORT_SYMBOL drivers/isdn/capi/kernelcapi 0x815d21da capi_ctr_handle_message +EXPORT_SYMBOL drivers/isdn/capi/kernelcapi 0xaa56e241 attach_capi_ctr +EXPORT_SYMBOL drivers/isdn/capi/kernelcapi 0xc78e092d capi_ctr_down +EXPORT_SYMBOL drivers/isdn/capi/kernelcapi 0xceea0b17 capi_ctr_ready +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 0x05829d8d mISDNipac_init +EXPORT_SYMBOL drivers/isdn/hardware/mISDN/mISDNipac 0x4d995d03 mISDNisac_init +EXPORT_SYMBOL drivers/isdn/hardware/mISDN/mISDNipac 0xe1dfc1bb mISDNipac_irq +EXPORT_SYMBOL drivers/isdn/hardware/mISDN/mISDNipac 0xfe777957 mISDNisac_irq +EXPORT_SYMBOL drivers/isdn/hardware/mISDN/mISDNisar 0x39ddfb4b mISDNisar_irq +EXPORT_SYMBOL drivers/isdn/hardware/mISDN/mISDNisar 0x5b9e79f8 mISDNisar_init +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0x03a68066 mISDN_FsmRestartTimer +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0x0eda189a bchannel_senddata +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 0x30d25b0d mISDN_FsmDelTimer +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0x313b1fde mISDN_FsmAddTimer +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0x3d6b4d2d mISDN_initdchannel +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0x43d2e2ea create_l1 +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0x4421ac68 mISDN_clear_bchannel +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0x4b3a8da8 mISDNDevName4ch +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0x50c2230c mISDN_FsmChangeState +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0x53d5fc9a bchannel_get_rxbuf +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0x588886a6 l1_event +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0x5d530e93 queue_ch_frame +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0x6047df40 mISDN_FsmInitTimer +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0x6af1f73e recv_Echannel +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0x72729be0 mISDN_unregister_Bprotocol +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0x75efa17c mISDN_unregister_device +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0x7d49fad9 recv_Dchannel_skb +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0x7ed907e4 mISDN_register_Bprotocol +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0x8db74ede mISDN_register_device +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0x95465868 mISDN_freedchannel +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0x98c29815 mISDN_initbchannel +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0x9c928457 mISDN_FsmNew +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0xa3e71137 recv_Bchannel +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0xa94b90cd get_next_dframe +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0xba4d3b57 mISDN_ctrl_bchannel +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0xc3401729 mISDN_register_clock +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 0xd72898f5 dchannel_senddata +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0xd846849c mISDN_freebchannel +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0xe630235c recv_Bchannel_skb +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0xe8f617eb mISDN_unregister_clock +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0xf29cb1db get_next_bframe +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0xf35312ca recv_Dchannel +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 0x1ad4615e ti_lmu_common_get_brt_res +EXPORT_SYMBOL drivers/leds/leds-ti-lmu-common 0x54a12ec4 ti_lmu_common_set_ramp +EXPORT_SYMBOL drivers/leds/leds-ti-lmu-common 0x94dee567 ti_lmu_common_get_ramp_params +EXPORT_SYMBOL drivers/leds/leds-ti-lmu-common 0xced72aae ti_lmu_common_set_brightness +EXPORT_SYMBOL drivers/md/dm-log 0x254d875c dm_dirty_log_destroy +EXPORT_SYMBOL drivers/md/dm-log 0x8a22524a dm_dirty_log_type_register +EXPORT_SYMBOL drivers/md/dm-log 0x8aa7c65c dm_dirty_log_create +EXPORT_SYMBOL drivers/md/dm-log 0xa96ccc25 dm_dirty_log_type_unregister +EXPORT_SYMBOL drivers/md/dm-snapshot 0x0c89f131 dm_snap_cow +EXPORT_SYMBOL drivers/md/dm-snapshot 0x47cbf0cd dm_exception_store_type_unregister +EXPORT_SYMBOL drivers/md/dm-snapshot 0x630dbaaf dm_exception_store_destroy +EXPORT_SYMBOL drivers/md/dm-snapshot 0x660dd1f2 dm_exception_store_type_register +EXPORT_SYMBOL drivers/md/dm-snapshot 0xbd6baedd dm_snap_origin +EXPORT_SYMBOL drivers/md/dm-snapshot 0xe955814a dm_exception_store_create +EXPORT_SYMBOL drivers/md/raid456 0x093c1340 raid5_set_cache_size +EXPORT_SYMBOL drivers/md/raid456 0x2fa2707b r5c_journal_mode_set +EXPORT_SYMBOL drivers/media/common/b2c2/b2c2-flexcop 0x063124f2 flexcop_dump_reg +EXPORT_SYMBOL drivers/media/common/b2c2/b2c2-flexcop 0x086a12a8 flexcop_wan_set_speed +EXPORT_SYMBOL drivers/media/common/b2c2/b2c2-flexcop 0x0eca0f32 flexcop_pass_dmx_data +EXPORT_SYMBOL drivers/media/common/b2c2/b2c2-flexcop 0x0f084ef8 flexcop_device_exit +EXPORT_SYMBOL drivers/media/common/b2c2/b2c2-flexcop 0x3eaa733c flexcop_device_kfree +EXPORT_SYMBOL drivers/media/common/b2c2/b2c2-flexcop 0x68526959 flexcop_sram_set_dest +EXPORT_SYMBOL drivers/media/common/b2c2/b2c2-flexcop 0x7241c7f8 flexcop_sram_ctrl +EXPORT_SYMBOL drivers/media/common/b2c2/b2c2-flexcop 0x7558230e flexcop_eeprom_check_mac_addr +EXPORT_SYMBOL drivers/media/common/b2c2/b2c2-flexcop 0x86203827 flexcop_i2c_request +EXPORT_SYMBOL drivers/media/common/b2c2/b2c2-flexcop 0xaae3c748 flexcop_device_kmalloc +EXPORT_SYMBOL drivers/media/common/b2c2/b2c2-flexcop 0xd062ba2d flexcop_pid_feed_control +EXPORT_SYMBOL drivers/media/common/b2c2/b2c2-flexcop 0xdeb686b8 flexcop_device_initialize +EXPORT_SYMBOL drivers/media/common/b2c2/b2c2-flexcop 0xe2c1b5a3 flexcop_pass_dmx_packets +EXPORT_SYMBOL drivers/media/common/cx2341x 0x3b2821ad cx2341x_handler_setup +EXPORT_SYMBOL drivers/media/common/cx2341x 0x55aa7c5f cx2341x_mpeg_ctrls +EXPORT_SYMBOL drivers/media/common/cx2341x 0x6990edc3 cx2341x_handler_init +EXPORT_SYMBOL drivers/media/common/cx2341x 0x87c98df2 cx2341x_handler_set_50hz +EXPORT_SYMBOL drivers/media/common/cx2341x 0x8d3a49fd cx2341x_ctrl_get_menu +EXPORT_SYMBOL drivers/media/common/cx2341x 0xb9c8f3f1 cx2341x_update +EXPORT_SYMBOL drivers/media/common/cx2341x 0xc889377e cx2341x_log_status +EXPORT_SYMBOL drivers/media/common/cx2341x 0xd287620a cx2341x_handler_set_busy +EXPORT_SYMBOL drivers/media/common/cx2341x 0xdaff62f9 cx2341x_fill_defaults +EXPORT_SYMBOL drivers/media/common/cx2341x 0xe197a5dd cx2341x_ext_ctrls +EXPORT_SYMBOL drivers/media/common/cx2341x 0xeb854f47 cx2341x_ctrl_query +EXPORT_SYMBOL drivers/media/common/cypress_firmware 0x9193c90c cypress_load_firmware +EXPORT_SYMBOL drivers/media/common/tveeprom 0x0dbf0296 tveeprom_hauppauge_analog +EXPORT_SYMBOL drivers/media/common/tveeprom 0x41088237 tveeprom_read +EXPORT_SYMBOL drivers/media/common/videobuf2/videobuf2-common 0x28d60d4b vb2_verify_memory_type +EXPORT_SYMBOL drivers/media/common/videobuf2/videobuf2-common 0xcf55588a vb2_buffer_in_use +EXPORT_SYMBOL drivers/media/common/videobuf2/videobuf2-dvb 0x1b8dfbf4 vb2_dvb_alloc_frontend +EXPORT_SYMBOL drivers/media/common/videobuf2/videobuf2-dvb 0x3dbfaa90 vb2_dvb_get_frontend +EXPORT_SYMBOL drivers/media/common/videobuf2/videobuf2-dvb 0x7778855e vb2_dvb_register_bus +EXPORT_SYMBOL drivers/media/common/videobuf2/videobuf2-dvb 0x927b1cb8 vb2_dvb_dealloc_frontends +EXPORT_SYMBOL drivers/media/common/videobuf2/videobuf2-dvb 0xcab558e9 vb2_dvb_unregister_bus +EXPORT_SYMBOL drivers/media/common/videobuf2/videobuf2-dvb 0xd2348aad vb2_dvb_find_frontend +EXPORT_SYMBOL drivers/media/common/videobuf2/videobuf2-memops 0xa21fa765 vb2_create_framevec +EXPORT_SYMBOL drivers/media/common/videobuf2/videobuf2-memops 0xccd197c7 vb2_destroy_framevec +EXPORT_SYMBOL drivers/media/common/videobuf2/videobuf2-v4l2 0xd93a1966 vb2_querybuf +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x0415d93d dvb_register_adapter +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x064fd246 dvb_ringbuffer_read_user +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x08733236 intlog10 +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x0ace710a dvb_net_init +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x13b3d9f9 dvb_ca_en50221_release +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x24080adb dvb_ca_en50221_camready_irq +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x29d58443 dvb_ringbuffer_empty +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x3b93d71a dvb_frontend_sleep_until +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x3d8830e7 dvb_ca_en50221_camchange_irq +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x3f2201f7 dvb_dmx_swfilter_204 +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x442e65b5 dvb_register_frontend +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x4502c3be dvb_ringbuffer_flush +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x472f9e7b dvb_remove_device +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x47d36a6e dvb_dmx_release +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x4c39b77e dvb_generic_open +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x4f7dd8fc dvb_frontend_detach +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x5830a49a dvb_ringbuffer_flush_spinlock_wakeup +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x5a015da7 dvb_frontend_resume +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x5f2b1d95 intlog2 +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x66a68864 dvb_ringbuffer_avail +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x66bd7694 dvb_ringbuffer_free +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x6ef5628b dvb_ringbuffer_read +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x7c850e9e dvb_dmxdev_release +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x7ce14ae7 dvb_unregister_adapter +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x7f08a73d dvb_unregister_device +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x82878c35 dvb_ringbuffer_write +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x8622911a dvb_generic_ioctl +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x8c392066 dvb_ca_en50221_init +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x8fbc3585 dvb_frontend_suspend +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0xa0f1efb2 dvb_register_device +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0xb313211f dvb_dmx_swfilter_raw +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0xb5767bda dvb_ca_en50221_frda_irq +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0xb5a3524f dvb_ringbuffer_init +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0xc8531cd2 dvb_dmx_swfilter_packets +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0xce748c8d dvb_ringbuffer_write_user +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0xd8a53bbf dvb_dmxdev_init +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0xe0668b7b dvb_dmx_init +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0xec25f0b6 dvb_dmx_swfilter +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0xef3fcd61 dvb_unregister_frontend +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0xf29e3b65 dvb_frontend_reinitialise +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0xf2e2c59b dvb_net_release +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0xf5a99eca dvb_generic_release +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0xf9e3d59b dvb_free_device +EXPORT_SYMBOL drivers/media/dvb-frontends/ascot2e 0xb696762e ascot2e_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/atbm8830 0x330c5ded atbm8830_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/au8522_common 0x07d6d1d0 au8522_init +EXPORT_SYMBOL drivers/media/dvb-frontends/au8522_common 0x1a60924c au8522_readreg +EXPORT_SYMBOL drivers/media/dvb-frontends/au8522_common 0x55e211ec au8522_sleep +EXPORT_SYMBOL drivers/media/dvb-frontends/au8522_common 0x95299e19 au8522_i2c_gate_ctrl +EXPORT_SYMBOL drivers/media/dvb-frontends/au8522_common 0x98533f1c au8522_led_ctrl +EXPORT_SYMBOL drivers/media/dvb-frontends/au8522_common 0xa374c6c6 au8522_get_state +EXPORT_SYMBOL drivers/media/dvb-frontends/au8522_common 0xb614ac2b au8522_writereg +EXPORT_SYMBOL drivers/media/dvb-frontends/au8522_common 0xbfd7d9a6 au8522_release_state +EXPORT_SYMBOL drivers/media/dvb-frontends/au8522_common 0xd68f5eaf au8522_analog_i2c_gate_ctrl +EXPORT_SYMBOL drivers/media/dvb-frontends/au8522_dig 0x9c7ce89d au8522_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/bcm3510 0x4714bef5 bcm3510_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/cx22700 0x5c967fcb cx22700_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/cx22702 0x4793d840 cx22702_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/cx24110 0x65db7e3e cx24110_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/cx24113 0x5764243b cx24113_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/cx24113 0x96de2930 cx24113_agc_callback +EXPORT_SYMBOL drivers/media/dvb-frontends/cx24116 0x12aa97b0 cx24116_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/cx24120 0xc5d9351f cx24120_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/cx24123 0x6e9282b1 cx24123_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/cx24123 0xe03dbae3 cx24123_get_tuner_i2c_adapter +EXPORT_SYMBOL drivers/media/dvb-frontends/cxd2820r 0x983b4e59 cxd2820r_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/cxd2841er 0x4f6a193c cxd2841er_attach_s +EXPORT_SYMBOL drivers/media/dvb-frontends/cxd2841er 0xeb909262 cxd2841er_attach_t_c +EXPORT_SYMBOL drivers/media/dvb-frontends/cxd2880/cxd2880 0xab3eacc1 cxd2880_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/dib0070 0x25e2fd9a dib0070_set_rf_output +EXPORT_SYMBOL drivers/media/dvb-frontends/dib0070 0x69834ab5 dib0070_ctrl_agc_filter +EXPORT_SYMBOL drivers/media/dvb-frontends/dib0070 0x7efe83ec dib0070_get_rf_output +EXPORT_SYMBOL drivers/media/dvb-frontends/dib0070 0x80dd170f dib0070_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/dib0070 0x91bc801c dib0070_wbd_offset +EXPORT_SYMBOL drivers/media/dvb-frontends/dib0090 0x0250f9a1 dib0090_update_rframp_7090 +EXPORT_SYMBOL drivers/media/dvb-frontends/dib0090 0x172c1965 dib0090_update_tuning_table_7090 +EXPORT_SYMBOL drivers/media/dvb-frontends/dib0090 0x30073a47 dib0090_get_current_gain +EXPORT_SYMBOL drivers/media/dvb-frontends/dib0090 0x4bf5ded5 dib0090_get_tune_state +EXPORT_SYMBOL drivers/media/dvb-frontends/dib0090 0x4e0fa5b6 dib0090_pwm_gain_reset +EXPORT_SYMBOL drivers/media/dvb-frontends/dib0090 0x4e96cd64 dib0090_set_dc_servo +EXPORT_SYMBOL drivers/media/dvb-frontends/dib0090 0x6e5e9439 dib0090_gain_control +EXPORT_SYMBOL drivers/media/dvb-frontends/dib0090 0x85e1912e dib0090_register +EXPORT_SYMBOL drivers/media/dvb-frontends/dib0090 0x8b96e26d dib0090_set_switch +EXPORT_SYMBOL drivers/media/dvb-frontends/dib0090 0x8cef4230 dib0090_get_wbd_target +EXPORT_SYMBOL drivers/media/dvb-frontends/dib0090 0x92dac0e2 dib0090_fw_register +EXPORT_SYMBOL drivers/media/dvb-frontends/dib0090 0x9a105caf dib0090_get_wbd_offset +EXPORT_SYMBOL drivers/media/dvb-frontends/dib0090 0xb266fbde dib0090_set_vga +EXPORT_SYMBOL drivers/media/dvb-frontends/dib0090 0xd7272416 dib0090_dcc_freq +EXPORT_SYMBOL drivers/media/dvb-frontends/dib0090 0xec162742 dib0090_set_tune_state +EXPORT_SYMBOL drivers/media/dvb-frontends/dib3000mb 0xc5b7d112 dib3000mb_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/dib3000mc 0x068c826a dib3000mc_pid_control +EXPORT_SYMBOL drivers/media/dvb-frontends/dib3000mc 0x1ff2ef38 dib3000mc_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/dib3000mc 0x5095394b dib3000mc_set_config +EXPORT_SYMBOL drivers/media/dvb-frontends/dib3000mc 0x67d0eb5c dib3000mc_get_tuner_i2c_master +EXPORT_SYMBOL drivers/media/dvb-frontends/dib3000mc 0x69164f3c dib3000mc_pid_parse +EXPORT_SYMBOL drivers/media/dvb-frontends/dib3000mc 0x7c7431a1 dib3000mc_i2c_enumeration +EXPORT_SYMBOL drivers/media/dvb-frontends/dib7000m 0x384211b3 dib7000m_pid_filter_ctrl +EXPORT_SYMBOL drivers/media/dvb-frontends/dib7000m 0x5633e9c1 dib7000m_pid_filter +EXPORT_SYMBOL drivers/media/dvb-frontends/dib7000m 0xd6bfa7e8 dib7000m_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/dib7000m 0xd896b5a1 dib7000m_get_i2c_master +EXPORT_SYMBOL drivers/media/dvb-frontends/dib7000p 0xd76727bd dib7000p_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/dib8000 0x18dd8117 dib8000_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/dib9000 0x15330f40 dib9000_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/dib9000 0x1b26404e dib9000_get_i2c_master +EXPORT_SYMBOL drivers/media/dvb-frontends/dib9000 0x302031e0 dib9000_get_tuner_interface +EXPORT_SYMBOL drivers/media/dvb-frontends/dib9000 0x40ecac49 dib9000_fw_set_component_bus_speed +EXPORT_SYMBOL drivers/media/dvb-frontends/dib9000 0x4d44c421 dib9000_set_gpio +EXPORT_SYMBOL drivers/media/dvb-frontends/dib9000 0x5253b248 dib9000_fw_pid_filter +EXPORT_SYMBOL drivers/media/dvb-frontends/dib9000 0x98a37006 dib9000_set_i2c_adapter +EXPORT_SYMBOL drivers/media/dvb-frontends/dib9000 0xa70eff49 dib9000_fw_pid_filter_ctrl +EXPORT_SYMBOL drivers/media/dvb-frontends/dib9000 0xb01179d9 dib9000_get_component_bus_interface +EXPORT_SYMBOL drivers/media/dvb-frontends/dib9000 0xbbb08525 dib9000_get_slave_frontend +EXPORT_SYMBOL drivers/media/dvb-frontends/dib9000 0xc71000ce dib9000_i2c_enumeration +EXPORT_SYMBOL drivers/media/dvb-frontends/dib9000 0xe2999f83 dib9000_set_slave_frontend +EXPORT_SYMBOL drivers/media/dvb-frontends/dib9000 0xf215fff3 dib9000_firmware_post_pll_init +EXPORT_SYMBOL drivers/media/dvb-frontends/dibx000_common 0x128c07cb dibx000_get_i2c_adapter +EXPORT_SYMBOL drivers/media/dvb-frontends/dibx000_common 0x238620de dibx000_init_i2c_master +EXPORT_SYMBOL drivers/media/dvb-frontends/dibx000_common 0x761ad49a dibx000_i2c_set_speed +EXPORT_SYMBOL drivers/media/dvb-frontends/dibx000_common 0x863f3967 dibx000_reset_i2c_master +EXPORT_SYMBOL drivers/media/dvb-frontends/dibx000_common 0xda39291f dibx000_exit_i2c_master +EXPORT_SYMBOL drivers/media/dvb-frontends/drx39xyj/drx39xyj 0xa2a70422 drx39xxj_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/drxd 0x280ac375 drxd_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/drxk 0xaae6ebdf drxk_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/ds3000 0xfb12c01a ds3000_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/dvb-pll 0x6dda3a4b dvb_pll_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/dvb_dummy_fe 0x32cc7ce1 dvb_dummy_fe_qpsk_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/dvb_dummy_fe 0x41c8ef94 dvb_dummy_fe_qam_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/dvb_dummy_fe 0x99025889 dvb_dummy_fe_ofdm_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/ec100 0x8f1494c1 ec100_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/helene 0x103fb047 helene_attach_s +EXPORT_SYMBOL drivers/media/dvb-frontends/helene 0xb3402abf helene_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/horus3a 0x8839e915 horus3a_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/isl6405 0xa6ec4b60 isl6405_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/isl6421 0x118b6102 isl6421_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/isl6423 0xd059227b isl6423_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/itd1000 0x608ebf2e itd1000_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/ix2505v 0x1914c1c0 ix2505v_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/l64781 0x1c6d3a65 l64781_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/lg2160 0x5aa01388 lg2160_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/lgdt3305 0xd01de35e lgdt3305_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/lgdt3306a 0xbd8514cb lgdt3306a_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/lgdt330x 0xbc9eb356 lgdt330x_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/lgs8gl5 0xc1fdf377 lgs8gl5_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/lgs8gxx 0x9eeeec36 lgs8gxx_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/lnbh25 0xc43377cd lnbh25_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/lnbh29 0x5b048fd8 lnbh29_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/lnbp21 0x1470d295 lnbh24_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/lnbp21 0xe9a1bdb7 lnbp21_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/lnbp22 0x24cabb08 lnbp22_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/m88ds3103 0x7aaa36b3 m88ds3103_get_agc_pwm +EXPORT_SYMBOL drivers/media/dvb-frontends/m88ds3103 0xe08f6ea8 m88ds3103_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/m88rs2000 0x7089f043 m88rs2000_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/mb86a16 0x02370b77 mb86a16_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/mb86a20s 0xcac30c83 mb86a20s_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/mt312 0x2ca81a4b mt312_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/mt352 0x5af15ced mt352_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/nxt200x 0x40a59ddb nxt200x_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/nxt6000 0xe9e470a1 nxt6000_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/or51132 0xcc827f9c or51132_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/or51211 0x5be2b6d9 or51211_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/s5h1409 0xcb59b7c9 s5h1409_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/s5h1411 0xf6475d36 s5h1411_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/s5h1420 0x3943d664 s5h1420_get_tuner_i2c_adapter +EXPORT_SYMBOL drivers/media/dvb-frontends/s5h1420 0x7a22bc91 s5h1420_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/s5h1432 0x6cff5f72 s5h1432_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/s921 0xf34977c4 s921_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/si21xx 0xa0ed62e0 si21xx_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/sp8870 0x2d6bf9b0 sp8870_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/sp887x 0xb28a5289 sp887x_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/stb0899 0xca39bfe8 stb0899_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/stb6000 0x2ef1dbf6 stb6000_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/stb6100 0x7c09048e stb6100_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/stv0288 0x29b6a383 stv0288_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/stv0297 0xc37f6c1d stv0297_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/stv0299 0x026b0645 stv0299_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/stv0367 0x0e7ce9b3 stv0367ddb_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/stv0367 0x7ee29652 stv0367ter_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/stv0367 0xcb4190ba stv0367cab_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/stv0900 0x6e3c9d5c stv0900_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/stv090x 0x82827780 stv090x_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/stv6110 0x191e80f8 stv6110_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/stv6110x 0xc7d39faa stv6110x_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/tda10021 0x76e3a9ae tda10021_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/tda10023 0x299dddbf tda10023_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/tda10048 0x6c2ef879 tda10048_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/tda1004x 0xdfe101fb tda10046_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/tda1004x 0xe0e04979 tda10045_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/tda10086 0x1c23ef66 tda10086_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/tda665x 0xd1e1535a tda665x_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/tda8083 0x2b71ceab tda8083_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/tda8261 0x1f9fc69b tda8261_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/tda826x 0x8a05350e tda826x_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/ts2020 0x42e39223 ts2020_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/tua6100 0x46eb74bf tua6100_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/ves1820 0x1874f13d ves1820_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/ves1x93 0x363c2d4a ves1x93_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/zd1301_demod 0x9a22a65a zd1301_demod_get_i2c_adapter +EXPORT_SYMBOL drivers/media/dvb-frontends/zd1301_demod 0xed190cf0 zd1301_demod_get_dvb_frontend +EXPORT_SYMBOL drivers/media/dvb-frontends/zl10036 0x439ba598 zl10036_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/zl10039 0x91a4266e zl10039_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/zl10353 0xb295a7b1 zl10353_attach +EXPORT_SYMBOL drivers/media/pci/b2c2/b2c2-flexcop-pci 0x002a0e64 flexcop_dma_control_timer_irq +EXPORT_SYMBOL drivers/media/pci/b2c2/b2c2-flexcop-pci 0x4043e75e flexcop_dma_config_timer +EXPORT_SYMBOL drivers/media/pci/b2c2/b2c2-flexcop-pci 0x54268202 flexcop_dma_control_size_irq +EXPORT_SYMBOL drivers/media/pci/b2c2/b2c2-flexcop-pci 0x54c358f9 flexcop_dma_allocate +EXPORT_SYMBOL drivers/media/pci/b2c2/b2c2-flexcop-pci 0x60dd7b1d flexcop_dma_free +EXPORT_SYMBOL drivers/media/pci/b2c2/b2c2-flexcop-pci 0x74e3432d flexcop_dma_xfer_control +EXPORT_SYMBOL drivers/media/pci/b2c2/b2c2-flexcop-pci 0xbbcf2f50 flexcop_dma_config +EXPORT_SYMBOL drivers/media/pci/bt8xx/bt878 0x35e1690a bt878_stop +EXPORT_SYMBOL drivers/media/pci/bt8xx/bt878 0x5650e69b bt878_device_control +EXPORT_SYMBOL drivers/media/pci/bt8xx/bt878 0x8f28ed5d bt878 +EXPORT_SYMBOL drivers/media/pci/bt8xx/bt878 0xc894c642 bt878_start +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 0x824bcceb bttv_get_pcidev +EXPORT_SYMBOL drivers/media/pci/bt8xx/bttv 0x8ecf4acc bttv_write_gpio +EXPORT_SYMBOL drivers/media/pci/bt8xx/bttv 0xae234f3b bttv_sub_register +EXPORT_SYMBOL drivers/media/pci/bt8xx/bttv 0xb7c7d243 bttv_sub_unregister +EXPORT_SYMBOL drivers/media/pci/bt8xx/bttv 0xbcf2d2fb bttv_read_gpio +EXPORT_SYMBOL drivers/media/pci/bt8xx/dst 0x26d4c198 dst_error_bailout +EXPORT_SYMBOL drivers/media/pci/bt8xx/dst 0x3c334182 dst_wait_dst_ready +EXPORT_SYMBOL drivers/media/pci/bt8xx/dst 0x43a983fd dst_check_sum +EXPORT_SYMBOL drivers/media/pci/bt8xx/dst 0x54493d87 write_dst +EXPORT_SYMBOL drivers/media/pci/bt8xx/dst 0x77f789c1 dst_error_recovery +EXPORT_SYMBOL drivers/media/pci/bt8xx/dst 0x7bdf7c53 read_dst +EXPORT_SYMBOL drivers/media/pci/bt8xx/dst 0xa6daf353 dst_attach +EXPORT_SYMBOL drivers/media/pci/bt8xx/dst 0xb781721a dst_pio_disable +EXPORT_SYMBOL drivers/media/pci/bt8xx/dst 0xcc5002bc dst_comm_init +EXPORT_SYMBOL drivers/media/pci/bt8xx/dst 0xf2b480f9 rdc_reset_state +EXPORT_SYMBOL drivers/media/pci/bt8xx/dst_ca 0xa8565c45 dst_ca_attach +EXPORT_SYMBOL drivers/media/pci/cx18/cx18 0x09624934 cx18_claim_stream +EXPORT_SYMBOL drivers/media/pci/cx18/cx18 0x232ff2e6 cx18_start_v4l2_encode_stream +EXPORT_SYMBOL drivers/media/pci/cx18/cx18 0x2cdea06d cx18_reset_ir_gpio +EXPORT_SYMBOL drivers/media/pci/cx18/cx18 0xa6702e6c cx18_ext_init +EXPORT_SYMBOL drivers/media/pci/cx18/cx18 0xaad6cf7f cx18_release_stream +EXPORT_SYMBOL drivers/media/pci/cx18/cx18 0xf7dcbbf9 cx18_stop_v4l2_encode_stream +EXPORT_SYMBOL drivers/media/pci/cx23885/altera-ci 0x6ff7510d altera_ci_tuner_reset +EXPORT_SYMBOL drivers/media/pci/cx23885/altera-ci 0xd0fdb6b0 altera_ci_init +EXPORT_SYMBOL drivers/media/pci/cx23885/altera-ci 0xdb3faf38 altera_ci_release +EXPORT_SYMBOL drivers/media/pci/cx23885/altera-ci 0xe66b9812 altera_ci_irq +EXPORT_SYMBOL drivers/media/pci/cx25821/cx25821 0x043dc275 cx25821_set_gpiopin_direction +EXPORT_SYMBOL drivers/media/pci/cx25821/cx25821 0x0d35e003 cx25821_sram_channel_dump_audio +EXPORT_SYMBOL drivers/media/pci/cx25821/cx25821 0x4249d44e cx25821_dev_unregister +EXPORT_SYMBOL drivers/media/pci/cx25821/cx25821 0x44b517f5 cx25821_print_irqbits +EXPORT_SYMBOL drivers/media/pci/cx25821/cx25821 0xa0749529 cx25821_sram_channel_setup_audio +EXPORT_SYMBOL drivers/media/pci/cx25821/cx25821 0xb14f575d cx25821_riscmem_alloc +EXPORT_SYMBOL drivers/media/pci/cx25821/cx25821 0xd4f5eb83 cx25821_risc_databuffer_audio +EXPORT_SYMBOL drivers/media/pci/cx25821/cx25821 0xde17cff6 cx25821_dev_get +EXPORT_SYMBOL drivers/media/pci/cx25821/cx25821 0xe9050411 cx25821_sram_channels +EXPORT_SYMBOL drivers/media/pci/cx88/cx88-vp3054-i2c 0x3ea112a9 vp3054_i2c_remove +EXPORT_SYMBOL drivers/media/pci/cx88/cx88-vp3054-i2c 0x4a707820 vp3054_i2c_probe +EXPORT_SYMBOL drivers/media/pci/cx88/cx8800 0x3cc3ae9b cx88_video_mux +EXPORT_SYMBOL drivers/media/pci/cx88/cx8800 0x64770e9c cx88_set_freq +EXPORT_SYMBOL drivers/media/pci/cx88/cx8800 0xab83a6ab cx88_querycap +EXPORT_SYMBOL drivers/media/pci/cx88/cx8800 0xf31b9574 cx88_enum_input +EXPORT_SYMBOL drivers/media/pci/cx88/cx8802 0x48c083c9 cx8802_unregister_driver +EXPORT_SYMBOL drivers/media/pci/cx88/cx8802 0x4b826d7e cx8802_buf_queue +EXPORT_SYMBOL drivers/media/pci/cx88/cx8802 0x5a944046 cx8802_cancel_buffers +EXPORT_SYMBOL drivers/media/pci/cx88/cx8802 0x6887c704 cx8802_register_driver +EXPORT_SYMBOL drivers/media/pci/cx88/cx8802 0x8d226861 cx8802_buf_prepare +EXPORT_SYMBOL drivers/media/pci/cx88/cx8802 0xa1ec013f cx8802_start_dma +EXPORT_SYMBOL drivers/media/pci/cx88/cx8802 0xcff9708b cx8802_get_driver +EXPORT_SYMBOL drivers/media/pci/cx88/cx88xx 0x1856e681 cx88_risc_databuffer +EXPORT_SYMBOL drivers/media/pci/cx88/cx88xx 0x1f38e5d8 cx88_core_get +EXPORT_SYMBOL drivers/media/pci/cx88/cx88xx 0x1f5acb10 cx88_ir_stop +EXPORT_SYMBOL drivers/media/pci/cx88/cx88xx 0x215638e4 cx88_reset +EXPORT_SYMBOL drivers/media/pci/cx88/cx88xx 0x3374055f cx88_sram_channel_setup +EXPORT_SYMBOL drivers/media/pci/cx88/cx88xx 0x4137b25b cx88_sram_channel_dump +EXPORT_SYMBOL drivers/media/pci/cx88/cx88xx 0x45ea4d93 cx88_get_stereo +EXPORT_SYMBOL drivers/media/pci/cx88/cx88xx 0x473a4ebd cx88_shutdown +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 0x77caad29 cx88_vdev_init +EXPORT_SYMBOL drivers/media/pci/cx88/cx88xx 0x79417533 cx88_core_put +EXPORT_SYMBOL drivers/media/pci/cx88/cx88xx 0x7a08109b 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 0x93f39dd8 cx88_set_tvnorm +EXPORT_SYMBOL drivers/media/pci/cx88/cx88xx 0x9439d65f cx88_core_irq +EXPORT_SYMBOL drivers/media/pci/cx88/cx88xx 0x9d979e38 cx88_set_scale +EXPORT_SYMBOL drivers/media/pci/cx88/cx88xx 0xb7d90e81 cx88_set_tvaudio +EXPORT_SYMBOL drivers/media/pci/cx88/cx88xx 0xba3b435a cx88_set_stereo +EXPORT_SYMBOL drivers/media/pci/cx88/cx88xx 0xbe334f6b cx88_risc_buffer +EXPORT_SYMBOL drivers/media/pci/cx88/cx88xx 0xc2353d1e cx88_dsp_detect_stereo_sap +EXPORT_SYMBOL drivers/media/pci/cx88/cx88xx 0xe359df4b cx88_wakeup +EXPORT_SYMBOL drivers/media/pci/cx88/cx88xx 0xf01859c3 cx88_newstation +EXPORT_SYMBOL drivers/media/pci/ddbridge/ddbridge-dummy-fe 0xcb98e967 ddbridge_dummy_fe_qam_attach +EXPORT_SYMBOL drivers/media/pci/ivtv/ivtv 0x14f67530 ivtv_debug +EXPORT_SYMBOL drivers/media/pci/ivtv/ivtv 0x31d6aeb8 ivtv_clear_irq_mask +EXPORT_SYMBOL drivers/media/pci/ivtv/ivtv 0x46102f7d ivtv_udma_setup +EXPORT_SYMBOL drivers/media/pci/ivtv/ivtv 0x5ae1d9d0 ivtv_init_on_first_open +EXPORT_SYMBOL drivers/media/pci/ivtv/ivtv 0x5ee2399a ivtv_api +EXPORT_SYMBOL drivers/media/pci/ivtv/ivtv 0x698c4c28 ivtv_set_irq_mask +EXPORT_SYMBOL drivers/media/pci/ivtv/ivtv 0x72d0340a ivtv_reset_ir_gpio +EXPORT_SYMBOL drivers/media/pci/ivtv/ivtv 0x946ccfdf ivtv_start_v4l2_encode_stream +EXPORT_SYMBOL drivers/media/pci/ivtv/ivtv 0xa15f80f8 ivtv_claim_stream +EXPORT_SYMBOL drivers/media/pci/ivtv/ivtv 0xa444e228 ivtv_release_stream +EXPORT_SYMBOL drivers/media/pci/ivtv/ivtv 0xad454bf0 ivtv_udma_prepare +EXPORT_SYMBOL drivers/media/pci/ivtv/ivtv 0xc40acfa2 ivtv_vapi +EXPORT_SYMBOL drivers/media/pci/ivtv/ivtv 0xd152d83b ivtv_stop_v4l2_encode_stream +EXPORT_SYMBOL drivers/media/pci/ivtv/ivtv 0xe4e75fb9 ivtv_ext_init +EXPORT_SYMBOL drivers/media/pci/ivtv/ivtv 0xedbf0cd7 ivtv_firmware_check +EXPORT_SYMBOL drivers/media/pci/ivtv/ivtv 0xf0597fbf ivtv_vapi_result +EXPORT_SYMBOL drivers/media/pci/ivtv/ivtv 0xf120ba40 ivtv_udma_unmap +EXPORT_SYMBOL drivers/media/pci/ivtv/ivtv 0xf610dc43 ivtv_udma_alloc +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 0x1c09b719 saa7134_dmasound_init +EXPORT_SYMBOL drivers/media/pci/saa7134/saa7134 0x1f50eff3 saa_dsp_writel +EXPORT_SYMBOL drivers/media/pci/saa7134/saa7134 0x2345f7cc saa7134_ts_register +EXPORT_SYMBOL drivers/media/pci/saa7134/saa7134 0x39f1b83f saa7134_set_dmabits +EXPORT_SYMBOL drivers/media/pci/saa7134/saa7134 0x4a608631 saa7134_pgtable_alloc +EXPORT_SYMBOL drivers/media/pci/saa7134/saa7134 0x5cfa23a4 saa7134_devlist_lock +EXPORT_SYMBOL drivers/media/pci/saa7134/saa7134 0x6dc02059 saa7134_tvaudio_setmute +EXPORT_SYMBOL drivers/media/pci/saa7134/saa7134 0x6f96eb5f saa7134_set_gpio +EXPORT_SYMBOL drivers/media/pci/saa7134/saa7134 0x710dbc9d saa7134_ts_unregister +EXPORT_SYMBOL drivers/media/pci/saa7134/saa7134 0x730c4be3 saa7134_boards +EXPORT_SYMBOL drivers/media/pci/saa7134/saa7134 0xb7c9551e saa7134_pgtable_free +EXPORT_SYMBOL drivers/media/pci/saa7134/saa7134 0xc724206b saa7134_dmasound_exit +EXPORT_SYMBOL drivers/media/pci/saa7134/saa7134 0xddd1f72f saa7134_pgtable_build +EXPORT_SYMBOL drivers/media/pci/ttpci/ttpci-eeprom 0x693e74ba ttpci_eeprom_decode_mac +EXPORT_SYMBOL drivers/media/pci/ttpci/ttpci-eeprom 0xdff88b08 ttpci_eeprom_parse_mac +EXPORT_SYMBOL drivers/media/radio/tea575x 0x3dbe70f0 snd_tea575x_init +EXPORT_SYMBOL drivers/media/radio/tea575x 0x4f2c7f96 snd_tea575x_hw_init +EXPORT_SYMBOL drivers/media/radio/tea575x 0x6b88f663 snd_tea575x_set_freq +EXPORT_SYMBOL drivers/media/radio/tea575x 0x7a32786b snd_tea575x_s_hw_freq_seek +EXPORT_SYMBOL drivers/media/radio/tea575x 0x86e9c007 snd_tea575x_g_tuner +EXPORT_SYMBOL drivers/media/radio/tea575x 0x87963b32 snd_tea575x_exit +EXPORT_SYMBOL drivers/media/radio/tea575x 0xe7ee616d snd_tea575x_enum_freq_bands +EXPORT_SYMBOL drivers/media/rc/rc-core 0x1c77399a ir_raw_handler_register +EXPORT_SYMBOL drivers/media/rc/rc-core 0x2ad91f6e ir_raw_gen_pl +EXPORT_SYMBOL drivers/media/rc/rc-core 0x3131b773 ir_raw_encode_scancode +EXPORT_SYMBOL drivers/media/rc/rc-core 0x4725eda1 ir_raw_encode_carrier +EXPORT_SYMBOL drivers/media/rc/rc-core 0x524b3ad8 ir_raw_handler_unregister +EXPORT_SYMBOL drivers/media/rc/rc-core 0x7cf52901 ir_raw_gen_manchester +EXPORT_SYMBOL drivers/media/rc/rc-core 0x9e12e343 ir_raw_gen_pd +EXPORT_SYMBOL drivers/media/tuners/fc0011 0xf94b1626 fc0011_attach +EXPORT_SYMBOL drivers/media/tuners/fc0012 0x993536c7 fc0012_attach +EXPORT_SYMBOL drivers/media/tuners/fc0013 0x8d94c79a fc0013_rc_cal_add +EXPORT_SYMBOL drivers/media/tuners/fc0013 0xa0d9af44 fc0013_attach +EXPORT_SYMBOL drivers/media/tuners/fc0013 0xf7241908 fc0013_rc_cal_reset +EXPORT_SYMBOL drivers/media/tuners/max2165 0xe458de71 max2165_attach +EXPORT_SYMBOL drivers/media/tuners/mc44s803 0xf45639bb mc44s803_attach +EXPORT_SYMBOL drivers/media/tuners/mt2060 0xc01e1d71 mt2060_attach +EXPORT_SYMBOL drivers/media/tuners/mt2131 0x8be50d8d mt2131_attach +EXPORT_SYMBOL drivers/media/tuners/mt2266 0x21578bbe mt2266_attach +EXPORT_SYMBOL drivers/media/tuners/mxl5005s 0xd5440b70 mxl5005s_attach +EXPORT_SYMBOL drivers/media/tuners/qt1010 0x06a66d6c qt1010_attach +EXPORT_SYMBOL drivers/media/tuners/tda18218 0x2774172b tda18218_attach +EXPORT_SYMBOL drivers/media/tuners/tuner-types 0x4c48939e tuners +EXPORT_SYMBOL drivers/media/tuners/tuner-types 0xc2821775 tuner_count +EXPORT_SYMBOL drivers/media/tuners/tuner-xc2028 0x3800f827 xc2028_attach +EXPORT_SYMBOL drivers/media/tuners/xc4000 0xe7e6bbd1 xc4000_attach +EXPORT_SYMBOL drivers/media/tuners/xc5000 0xe6e6a8db xc5000_attach +EXPORT_SYMBOL drivers/media/usb/cx231xx/cx231xx 0x113759b8 cx231xx_unregister_extension +EXPORT_SYMBOL drivers/media/usb/cx231xx/cx231xx 0x432bcece cx231xx_register_extension +EXPORT_SYMBOL drivers/media/usb/dvb-usb-v2/dvb_usb_v2 0x035e1b40 dvb_usbv2_probe +EXPORT_SYMBOL drivers/media/usb/dvb-usb-v2/dvb_usb_v2 0x25c32151 dvb_usbv2_suspend +EXPORT_SYMBOL drivers/media/usb/dvb-usb-v2/dvb_usb_v2 0x49587ba0 dvb_usbv2_disconnect +EXPORT_SYMBOL drivers/media/usb/dvb-usb-v2/dvb_usb_v2 0x609beaca dvb_usbv2_reset_resume +EXPORT_SYMBOL drivers/media/usb/dvb-usb-v2/dvb_usb_v2 0x762f1fe9 dvb_usbv2_generic_write_locked +EXPORT_SYMBOL drivers/media/usb/dvb-usb-v2/dvb_usb_v2 0x85885f1e dvb_usbv2_generic_rw_locked +EXPORT_SYMBOL drivers/media/usb/dvb-usb-v2/dvb_usb_v2 0xa4bf30ce dvb_usbv2_generic_rw +EXPORT_SYMBOL drivers/media/usb/dvb-usb-v2/dvb_usb_v2 0xd6896194 dvb_usbv2_resume +EXPORT_SYMBOL drivers/media/usb/dvb-usb-v2/dvb_usb_v2 0xe1538fd1 dvb_usbv2_generic_write +EXPORT_SYMBOL drivers/media/usb/dvb-usb/dvb-usb 0x625aea4e dvb_usb_device_exit +EXPORT_SYMBOL drivers/media/usb/dvb-usb/dvb-usb 0x723f9e52 usb_cypress_load_firmware +EXPORT_SYMBOL drivers/media/usb/dvb-usb/dvb-usb 0x7f2cb6ba dvb_usb_device_init +EXPORT_SYMBOL drivers/media/usb/dvb-usb/dvb-usb 0x8b6f5395 dvb_usb_get_hexline +EXPORT_SYMBOL drivers/media/usb/dvb-usb/dvb-usb 0xd10c587e dvb_usb_generic_rw +EXPORT_SYMBOL drivers/media/usb/dvb-usb/dvb-usb 0xd405dee4 dvb_usb_generic_write +EXPORT_SYMBOL drivers/media/usb/dvb-usb/dvb-usb 0xf71f9ae6 dvb_usb_nec_rc_key_to_event +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 0x7a69ffe6 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 0x01e42cf4 dibusb_read_eeprom_byte +EXPORT_SYMBOL drivers/media/usb/dvb-usb/dvb-usb-dibusb-common 0x1efe2328 dibusb2_0_power_ctrl +EXPORT_SYMBOL drivers/media/usb/dvb-usb/dvb-usb-dibusb-common 0x659416f7 dibusb_power_ctrl +EXPORT_SYMBOL drivers/media/usb/dvb-usb/dvb-usb-dibusb-common 0x66748b57 dibusb_i2c_algo +EXPORT_SYMBOL drivers/media/usb/dvb-usb/dvb-usb-dibusb-common 0x8c31ee78 dibusb_rc_query +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 0xa3ea4645 dibusb_pid_filter_ctrl +EXPORT_SYMBOL drivers/media/usb/dvb-usb/dvb-usb-dibusb-common 0xb90a340c dibusb2_0_streaming_ctrl +EXPORT_SYMBOL drivers/media/usb/dvb-usb/dvb-usb-dibusb-common 0xd100fdbe dibusb_pid_filter +EXPORT_SYMBOL drivers/media/usb/dvb-usb/dvb-usb-dibusb-common 0xfcd13adc dibusb_streaming_ctrl +EXPORT_SYMBOL drivers/media/usb/dvb-usb/dvb-usb-dibusb-mc-common 0x0a2750ad dibusb_dib3000mc_tuner_attach +EXPORT_SYMBOL drivers/media/usb/dvb-usb/dvb-usb-dibusb-mc-common 0x4bd30b4c dibusb_dib3000mc_frontend_attach +EXPORT_SYMBOL drivers/media/usb/em28xx/em28xx 0xe27dc6ec em28xx_unregister_extension +EXPORT_SYMBOL drivers/media/usb/em28xx/em28xx 0xf0bcfc3f em28xx_register_extension +EXPORT_SYMBOL drivers/media/usb/go7007/go7007 0x25ed3335 go7007_register_encoder +EXPORT_SYMBOL drivers/media/usb/go7007/go7007 0x37ff4b7a go7007_boot_encoder +EXPORT_SYMBOL drivers/media/usb/go7007/go7007 0x4ca7419a go7007_snd_remove +EXPORT_SYMBOL drivers/media/usb/go7007/go7007 0x62404ed9 go7007_alloc +EXPORT_SYMBOL drivers/media/usb/go7007/go7007 0x90b5e0f7 go7007_parse_video_stream +EXPORT_SYMBOL drivers/media/usb/go7007/go7007 0xbd5b3684 go7007_read_addr +EXPORT_SYMBOL drivers/media/usb/go7007/go7007 0xe21a8074 go7007_snd_init +EXPORT_SYMBOL drivers/media/usb/go7007/go7007 0xe414c19a go7007_update_board +EXPORT_SYMBOL drivers/media/usb/go7007/go7007 0xe7175134 go7007_read_interrupt +EXPORT_SYMBOL drivers/media/usb/gspca/gspca_main 0x00f6f8a1 gspca_dev_probe2 +EXPORT_SYMBOL drivers/media/usb/gspca/gspca_main 0x014be141 gspca_disconnect +EXPORT_SYMBOL drivers/media/usb/gspca/gspca_main 0x25a4b91e gspca_dev_probe +EXPORT_SYMBOL drivers/media/usb/gspca/gspca_main 0x55680929 gspca_resume +EXPORT_SYMBOL drivers/media/usb/gspca/gspca_main 0x9670af2c gspca_debug +EXPORT_SYMBOL drivers/media/usb/gspca/gspca_main 0xa6ce1d86 gspca_suspend +EXPORT_SYMBOL drivers/media/usb/gspca/gspca_main 0xe08b576e gspca_expo_autogain +EXPORT_SYMBOL drivers/media/usb/gspca/gspca_main 0xf855fc8e gspca_frame_add +EXPORT_SYMBOL drivers/media/usb/gspca/gspca_main 0xfee6e5cb gspca_coarse_grained_expo_autogain +EXPORT_SYMBOL drivers/media/usb/tm6000/tm6000 0x2c55a4e1 tm6000_init_digital_mode +EXPORT_SYMBOL drivers/media/usb/tm6000/tm6000 0x324eb462 tm6000_unregister_extension +EXPORT_SYMBOL drivers/media/usb/tm6000/tm6000 0x7f78a6f3 tm6000_register_extension +EXPORT_SYMBOL drivers/media/usb/ttusb-dec/ttusbdecfe 0x157536e4 ttusbdecfe_dvbs_attach +EXPORT_SYMBOL drivers/media/usb/ttusb-dec/ttusbdecfe 0x3eb2372e ttusbdecfe_dvbt_attach +EXPORT_SYMBOL drivers/media/v4l2-core/v4l2-mem2mem 0x3daad022 v4l2_m2m_get_vq +EXPORT_SYMBOL drivers/media/v4l2-core/v4l2-mem2mem 0x459e133f v4l2_m2m_get_curr_priv +EXPORT_SYMBOL drivers/media/v4l2-core/v4l2-mem2mem 0x55a0d4e0 v4l2_m2m_buf_done_and_job_finish +EXPORT_SYMBOL drivers/media/v4l2-core/v4l2-mem2mem 0x5789e1f7 v4l2_m2m_job_finish +EXPORT_SYMBOL drivers/media/v4l2-core/v4l2-mem2mem 0x87d6db60 v4l2_m2m_mmap +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x00d2e9b8 video_device_release_empty +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x02deb8c5 v4l2_ctrl_new_custom +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x0414f4d2 v4l2_ctrl_find +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 0x0e952724 v4l2_subdev_init +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x0f6f04f7 v4l2_clk_put +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 0x18f2e075 v4l2_g_ext_ctrls +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x1b994e43 v4l2_ctrl_subdev_log_status +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x1efff2dc video_device_alloc +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x20a29e51 __v4l2_ctrl_grab +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x2187dcbf __v4l2_ctrl_modify_range +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x2342f1ae v4l2_prio_open +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x28b12cc9 v4l2_format_info +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x29ad0e92 v4l2_ctrl_new_std +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x2c7011ba v4l2_ctrl_add_handler +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x2e93ca27 v4l2_async_notifier_register +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x2ece03ef v4l2_ctrl_handler_log_status +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x2fdfbfad v4l2_clk_disable +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 0x3adbd595 v4l2_field_names +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x3bdd0f94 v4l2_prio_change +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x40e7150b v4l2_query_ext_ctrl +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x43ebbcaa __v4l2_ctrl_s_ctrl_string +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x467d1b00 v4l2_ctrl_handler_free +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x485321c1 v4l2_ctrl_g_ctrl +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x523a9ab1 v4l2_async_register_subdev +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x54af510b v4l2_async_notifier_unregister +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x5576c4cc __v4l2_ctrl_s_ctrl_int64 +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x576166ab v4l2_try_ext_ctrls +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x58043a85 video_ioctl2 +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x60be1d69 video_device_release +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x61165f36 v4l2_s_ctrl +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x78e660b4 v4l2_subdev_call_wrappers +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x7c18c474 v4l2_ctrl_log_status +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x7ec28095 v4l2_clk_get +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x8106095a v4l2_prio_max +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x8280534c v4l2_ctrl_fill +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x84452c37 v4l2_ctrl_handler_setup +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x8500e9fe v4l2_ctrl_subscribe_event +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x89e3897d v4l2_ctrl_query_fill +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x8fbba459 __v4l2_clk_register_fixed +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x92666b71 v4l2_ctrl_request_setup +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x990209d9 v4l2_clk_register +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x9e018b65 v4l2_ctrl_new_std_menu_items +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xa2e484a8 video_devdata +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xa54ed2ee v4l2_ctrl_new_fwnode_properties +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xa87b3b98 v4l2_clk_enable +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xa8f7156d v4l2_querymenu +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xa9d97ab6 v4l2_s_ext_ctrls +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xaa5effe2 v4l2_ctrl_notify +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xab7c11c0 v4l2_clk_unregister +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xb027718a __v4l2_ctrl_s_ctrl +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xb15674ca v4l2_async_unregister_subdev +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xb650aa35 v4l2_ctrl_sub_ev_ops +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xb70d7a2e video_unregister_device +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xb77b0159 v4l2_prio_init +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xba475c55 v4l2_ctrl_activate +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xbc5671dc v4l_printk_ioctl +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xbe33a78e v4l2_ctrl_request_complete +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xc5b0aa25 v4l2_ctrl_poll +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xcba35bec v4l2_clk_unregister_fixed +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xcbed33fa v4l2_async_subdev_notifier_register +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xcc3f1bee v4l2_ctrl_auto_cluster +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xcda04a5b v4l2_prio_close +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xcfa8f0f8 v4l2_clk_get_rate +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xd16d9c01 v4l2_ctrl_get_int_menu +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xdc6c1416 v4l2_ctrl_g_ctrl_int64 +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xde9b3352 v4l2_ctrl_new_std_compound +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xdeeaa6bb __video_register_device +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xe0e5d974 v4l2_clk_set_rate +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xe2b92059 v4l2_video_std_construct +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xe3aa23b7 v4l2_async_notifier_init +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xec84c7ac v4l2_ctrl_new_std_menu +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xecfa3adb v4l2_ctrl_subdev_subscribe_event +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xeda21663 v4l2_ctrl_new_int_menu +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xee3195c0 v4l2_ctrl_cluster +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xee6f4c0a __v4l2_ctrl_s_ctrl_compound +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 0xf5836e93 v4l2_ctrl_handler_init_class +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xfac30291 v4l2_g_ctrl +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xfd81bfca v4l2_ctrl_radio_filter +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xff8ff964 v4l2_queryctrl +EXPORT_SYMBOL drivers/memstick/core/memstick 0x0eac5ae1 memstick_remove_host +EXPORT_SYMBOL drivers/memstick/core/memstick 0x1077e195 memstick_suspend_host +EXPORT_SYMBOL drivers/memstick/core/memstick 0x14b507d7 memstick_detect_change +EXPORT_SYMBOL drivers/memstick/core/memstick 0x233acfa4 memstick_resume_host +EXPORT_SYMBOL drivers/memstick/core/memstick 0x4a4e5778 memstick_init_req_sg +EXPORT_SYMBOL drivers/memstick/core/memstick 0x4beca9d9 memstick_alloc_host +EXPORT_SYMBOL drivers/memstick/core/memstick 0x4de53841 memstick_unregister_driver +EXPORT_SYMBOL drivers/memstick/core/memstick 0x5cdaeb31 memstick_register_driver +EXPORT_SYMBOL drivers/memstick/core/memstick 0x72b838a6 memstick_new_req +EXPORT_SYMBOL drivers/memstick/core/memstick 0x81dea5fe memstick_next_req +EXPORT_SYMBOL drivers/memstick/core/memstick 0x8b849b7e memstick_free_host +EXPORT_SYMBOL drivers/memstick/core/memstick 0xa3a06efe memstick_set_rw_addr +EXPORT_SYMBOL drivers/memstick/core/memstick 0xae50437c memstick_init_req +EXPORT_SYMBOL drivers/memstick/core/memstick 0xcd89ebe2 memstick_add_host +EXPORT_SYMBOL drivers/memstick/host/r592 0x52f1b23b memstick_debug_get_tpc_name +EXPORT_SYMBOL drivers/message/fusion/mptbase 0x054b8722 mpt_free_msg_frame +EXPORT_SYMBOL drivers/message/fusion/mptbase 0x08d0d536 mpt_get_msg_frame +EXPORT_SYMBOL drivers/message/fusion/mptbase 0x0a63e3c9 mpt_device_driver_register +EXPORT_SYMBOL drivers/message/fusion/mptbase 0x0b7f47c0 mpt_set_taskmgmt_in_progress_flag +EXPORT_SYMBOL drivers/message/fusion/mptbase 0x103ae09d mpt_send_handshake_request +EXPORT_SYMBOL drivers/message/fusion/mptbase 0x12b2b295 mpt_raid_phys_disk_pg1 +EXPORT_SYMBOL drivers/message/fusion/mptbase 0x1e07d813 mpt_GetIocState +EXPORT_SYMBOL drivers/message/fusion/mptbase 0x22d79e27 mpt_event_register +EXPORT_SYMBOL drivers/message/fusion/mptbase 0x32892357 mpt_verify_adapter +EXPORT_SYMBOL drivers/message/fusion/mptbase 0x32b4c53c mpt_raid_phys_disk_pg0 +EXPORT_SYMBOL drivers/message/fusion/mptbase 0x499c3603 mpt_config +EXPORT_SYMBOL drivers/message/fusion/mptbase 0x502108d0 mpt_fwfault_debug +EXPORT_SYMBOL drivers/message/fusion/mptbase 0x5de6e6a5 mpt_put_msg_frame +EXPORT_SYMBOL drivers/message/fusion/mptbase 0x610b257e mpt_reset_deregister +EXPORT_SYMBOL drivers/message/fusion/mptbase 0x69e9b3d2 mpt_print_ioc_summary +EXPORT_SYMBOL drivers/message/fusion/mptbase 0x74a0134a mpt_device_driver_deregister +EXPORT_SYMBOL drivers/message/fusion/mptbase 0x7a733759 mpt_put_msg_frame_hi_pri +EXPORT_SYMBOL drivers/message/fusion/mptbase 0x8e8d5cc7 mpt_reset_register +EXPORT_SYMBOL drivers/message/fusion/mptbase 0x946d1274 mpt_register +EXPORT_SYMBOL drivers/message/fusion/mptbase 0x981efe92 mpt_deregister +EXPORT_SYMBOL drivers/message/fusion/mptbase 0xa236ecb5 mpt_resume +EXPORT_SYMBOL drivers/message/fusion/mptbase 0xa7b25c37 mpt_findImVolumes +EXPORT_SYMBOL drivers/message/fusion/mptbase 0xa808683d mpt_clear_taskmgmt_in_progress_flag +EXPORT_SYMBOL drivers/message/fusion/mptbase 0xacf2b61d mpt_attach +EXPORT_SYMBOL drivers/message/fusion/mptbase 0xadb0f183 mpt_free_fw_memory +EXPORT_SYMBOL drivers/message/fusion/mptbase 0xae3552e5 mptbase_sas_persist_operation +EXPORT_SYMBOL drivers/message/fusion/mptbase 0xb06e081b mpt_HardResetHandler +EXPORT_SYMBOL drivers/message/fusion/mptbase 0xbad36ee6 mpt_suspend +EXPORT_SYMBOL drivers/message/fusion/mptbase 0xc7f817bd mpt_raid_phys_disk_get_num_paths +EXPORT_SYMBOL drivers/message/fusion/mptbase 0xcbb26cda mpt_detach +EXPORT_SYMBOL drivers/message/fusion/mptbase 0xd0277af2 mpt_alloc_fw_memory +EXPORT_SYMBOL drivers/message/fusion/mptbase 0xdd805159 ioc_list +EXPORT_SYMBOL drivers/message/fusion/mptbase 0xe0f5a88f mpt_Soft_Hard_ResetHandler +EXPORT_SYMBOL drivers/message/fusion/mptbase 0xe5c4c897 mpt_halt_firmware +EXPORT_SYMBOL drivers/message/fusion/mptbase 0xe6c1e126 mpt_event_deregister +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0x086e8164 mptscsih_qcmd +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0x0ceb5d88 mptscsih_change_queue_depth +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0x17070017 mptscsih_flush_running_cmds +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0x1c946f9c mptscsih_show_info +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0x3b4977cf mptscsih_info +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0x3cca5dd9 mptscsih_raid_id_to_num +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0x406bbe28 mptscsih_io_done +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0x4a44c408 mptscsih_suspend +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0x6a457b6d mptscsih_host_reset +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0x80a2ae46 mptscsih_host_attrs +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0x822b8889 mptscsih_shutdown +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0x822e5f73 mptscsih_scandv_complete +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0x8698017e mptscsih_abort +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0x88e2b930 mptscsih_dev_reset +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0x8d0aa378 mptscsih_resume +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0x8f7fdef6 mptscsih_ioc_reset +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0x929cca6a mptscsih_slave_configure +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0xa0c948c6 mptscsih_remove +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0xb5276aff mptscsih_get_scsi_lookup +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0xba083b02 mptscsih_taskmgmt_response_code +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0xbb1a3fb7 mptscsih_bus_reset +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0xcea512f6 mptscsih_event_process +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0xe04a12a8 mptscsih_is_phys_disk +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0xe644dea8 mptscsih_IssueTaskMgmt +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0xf0101c46 mptscsih_taskmgmt_complete +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0xf5f8b11b mptscsih_bios_param +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0xfe22951f mptscsih_slave_destroy +EXPORT_SYMBOL drivers/mfd/axp20x 0xbdc9f2aa axp20x_device_probe +EXPORT_SYMBOL drivers/mfd/axp20x 0xc20e9058 axp20x_device_remove +EXPORT_SYMBOL drivers/mfd/axp20x 0xfa7eadcc axp20x_match_device +EXPORT_SYMBOL drivers/mfd/dln2 0x505daddc dln2_unregister_event_cb +EXPORT_SYMBOL drivers/mfd/dln2 0x75f5ca85 dln2_register_event_cb +EXPORT_SYMBOL drivers/mfd/dln2 0xe12caf79 dln2_transfer +EXPORT_SYMBOL drivers/mfd/htc-pasic3 0x1dde45eb pasic3_read_register +EXPORT_SYMBOL drivers/mfd/htc-pasic3 0x706e11b6 pasic3_write_register +EXPORT_SYMBOL drivers/mfd/mc13xxx-core 0x0002381c mc13xxx_reg_write +EXPORT_SYMBOL drivers/mfd/mc13xxx-core 0x106b0726 mc13xxx_irq_request +EXPORT_SYMBOL drivers/mfd/mc13xxx-core 0x1469ab3d mc13xxx_irq_status +EXPORT_SYMBOL drivers/mfd/mc13xxx-core 0x4dbf2532 mc13xxx_get_flags +EXPORT_SYMBOL drivers/mfd/mc13xxx-core 0x91ad6f9c mc13xxx_reg_rmw +EXPORT_SYMBOL drivers/mfd/mc13xxx-core 0xb0d95ea2 mc13xxx_irq_unmask +EXPORT_SYMBOL drivers/mfd/mc13xxx-core 0xb4b480a3 mc13xxx_reg_read +EXPORT_SYMBOL drivers/mfd/mc13xxx-core 0xbd129d8d mc13xxx_irq_mask +EXPORT_SYMBOL drivers/mfd/mc13xxx-core 0xcb48a7aa mc13xxx_lock +EXPORT_SYMBOL drivers/mfd/mc13xxx-core 0xd1364bef mc13xxx_unlock +EXPORT_SYMBOL drivers/mfd/mc13xxx-core 0xfea5f5fa mc13xxx_irq_free +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 0x0af1a9c2 wm8994_regmap_config +EXPORT_SYMBOL drivers/mfd/wm8994 0x3344a0f0 wm8994_irq_init +EXPORT_SYMBOL drivers/mfd/wm8994 0x38cb125b wm8958_regmap_config +EXPORT_SYMBOL drivers/mfd/wm8994 0x46a8ea03 wm8994_irq_exit +EXPORT_SYMBOL drivers/mfd/wm8994 0x8b82b8d9 wm8994_base_regmap_config +EXPORT_SYMBOL drivers/mfd/wm8994 0xa7a91076 wm1811_regmap_config +EXPORT_SYMBOL drivers/misc/ad525x_dpot 0xd043be08 ad_dpot_remove +EXPORT_SYMBOL drivers/misc/ad525x_dpot 0xd51f314d ad_dpot_probe +EXPORT_SYMBOL drivers/misc/altera-stapl/altera-stapl 0x5bafa76e altera_init +EXPORT_SYMBOL drivers/misc/c2port/core 0x334b0c4f c2port_device_register +EXPORT_SYMBOL drivers/misc/c2port/core 0x4b10ca8d c2port_device_unregister +EXPORT_SYMBOL drivers/misc/tifm_core 0x046f4368 tifm_remove_adapter +EXPORT_SYMBOL drivers/misc/tifm_core 0x0ffb277f tifm_queue_work +EXPORT_SYMBOL drivers/misc/tifm_core 0x11a29dc6 tifm_add_adapter +EXPORT_SYMBOL drivers/misc/tifm_core 0x58715165 tifm_has_ms_pif +EXPORT_SYMBOL drivers/misc/tifm_core 0x5f352188 tifm_eject +EXPORT_SYMBOL drivers/misc/tifm_core 0x732e6d20 tifm_unmap_sg +EXPORT_SYMBOL drivers/misc/tifm_core 0x79c78a00 tifm_free_device +EXPORT_SYMBOL drivers/misc/tifm_core 0x7c918f1b tifm_unregister_driver +EXPORT_SYMBOL drivers/misc/tifm_core 0x9c8a88ab tifm_register_driver +EXPORT_SYMBOL drivers/misc/tifm_core 0xacfc6b3a tifm_alloc_device +EXPORT_SYMBOL drivers/misc/tifm_core 0xc9e0e306 tifm_alloc_adapter +EXPORT_SYMBOL drivers/misc/tifm_core 0xd3359d80 tifm_free_adapter +EXPORT_SYMBOL drivers/misc/tifm_core 0xdea7a95a tifm_map_sg +EXPORT_SYMBOL drivers/mmc/host/cqhci 0x05e6d38d cqhci_pltfm_init +EXPORT_SYMBOL drivers/mmc/host/cqhci 0x0fa5b1a8 cqhci_init +EXPORT_SYMBOL drivers/mmc/host/cqhci 0x2083bf8b cqhci_resume +EXPORT_SYMBOL drivers/mmc/host/cqhci 0x8cfe55cc cqhci_deactivate +EXPORT_SYMBOL drivers/mmc/host/cqhci 0xbe47bdda cqhci_irq +EXPORT_SYMBOL drivers/mmc/host/of_mmc_spi 0x37db20d1 mmc_spi_put_pdata +EXPORT_SYMBOL drivers/mmc/host/of_mmc_spi 0x54231223 mmc_spi_get_pdata +EXPORT_SYMBOL drivers/mtd/chips/cfi_util 0x177f014d cfi_merge_status +EXPORT_SYMBOL drivers/mtd/chips/cfi_util 0x1a118fde cfi_build_cmd_addr +EXPORT_SYMBOL drivers/mtd/chips/cfi_util 0x823ef70b cfi_fixup +EXPORT_SYMBOL drivers/mtd/chips/cfi_util 0x9d967973 cfi_build_cmd +EXPORT_SYMBOL drivers/mtd/chips/cfi_util 0xb3337157 cfi_send_gen_cmd +EXPORT_SYMBOL drivers/mtd/chips/cfi_util 0xe23edd68 cfi_varsize_frob +EXPORT_SYMBOL drivers/mtd/chips/cfi_util 0xf66176f6 cfi_read_pri +EXPORT_SYMBOL drivers/mtd/chips/cfi_util 0xff9fa623 cfi_udelay +EXPORT_SYMBOL drivers/mtd/chips/chipreg 0x5f77090c do_map_probe +EXPORT_SYMBOL drivers/mtd/chips/chipreg 0x670afd57 map_destroy +EXPORT_SYMBOL drivers/mtd/chips/chipreg 0x6f730c28 unregister_mtd_chip_driver +EXPORT_SYMBOL drivers/mtd/chips/chipreg 0x7c3c9d0d register_mtd_chip_driver +EXPORT_SYMBOL drivers/mtd/chips/gen_probe 0xdc9e16f8 mtd_do_chip_probe +EXPORT_SYMBOL drivers/mtd/lpddr/lpddr_cmds 0x7afae41f lpddr_cmdset +EXPORT_SYMBOL drivers/mtd/maps/map_funcs 0x387823f8 simple_map_init +EXPORT_SYMBOL drivers/mtd/mtd 0x1a6c4371 mtd_concat_create +EXPORT_SYMBOL drivers/mtd/mtd 0xab7c8eea mtd_concat_destroy +EXPORT_SYMBOL drivers/mtd/nand/onenand/onenand 0x08f0a8dc onenand_addr +EXPORT_SYMBOL drivers/mtd/nand/onenand/onenand 0x30608dee flexonenand_region +EXPORT_SYMBOL drivers/mtd/nand/raw/denali 0x30db096f denali_calc_ecc_bytes +EXPORT_SYMBOL drivers/mtd/nand/raw/denali 0x8cbc6bba denali_remove +EXPORT_SYMBOL drivers/mtd/nand/raw/denali 0xe85d3cae denali_init +EXPORT_SYMBOL drivers/mtd/nand/raw/nand 0x1b44e057 nand_read_oob_std +EXPORT_SYMBOL drivers/mtd/nand/raw/nand 0x1e200218 nand_write_oob_std +EXPORT_SYMBOL drivers/mtd/nand/raw/nand 0x3d661d96 nand_bch_init +EXPORT_SYMBOL drivers/mtd/nand/raw/nand 0x478d51fa nand_write_page_raw +EXPORT_SYMBOL drivers/mtd/nand/raw/nand 0x492125e7 nand_read_page_raw +EXPORT_SYMBOL drivers/mtd/nand/raw/nand 0x4d650b60 nand_bch_correct_data +EXPORT_SYMBOL drivers/mtd/nand/raw/nand 0x5b98a5c5 nand_monolithic_read_page_raw +EXPORT_SYMBOL drivers/mtd/nand/raw/nand 0x70097aa0 nand_bch_free +EXPORT_SYMBOL drivers/mtd/nand/raw/nand 0x8ecbb3b8 nand_check_erased_ecc_chunk +EXPORT_SYMBOL drivers/mtd/nand/raw/nand 0xbb27d289 nand_create_bbt +EXPORT_SYMBOL drivers/mtd/nand/raw/nand 0xca64a44e nand_scan_with_ids +EXPORT_SYMBOL drivers/mtd/nand/raw/nand 0xd4c4e7cf nand_bch_calculate_ecc +EXPORT_SYMBOL drivers/mtd/nand/raw/nand 0xe6d898e6 nand_monolithic_write_page_raw +EXPORT_SYMBOL drivers/mtd/nand/raw/nand 0xfb122c37 nand_get_set_features_notsupp +EXPORT_SYMBOL drivers/mtd/nand/raw/nand_ecc 0x53ded2d3 nand_calculate_ecc +EXPORT_SYMBOL drivers/mtd/nand/raw/nand_ecc 0xa43d1c72 __nand_correct_data +EXPORT_SYMBOL drivers/mtd/nand/raw/nand_ecc 0xb636dd73 __nand_calculate_ecc +EXPORT_SYMBOL drivers/mtd/nand/raw/nand_ecc 0xb6fb2864 nand_correct_data +EXPORT_SYMBOL drivers/net/arcnet/arcnet 0x01bf0f5e arcnet_send_packet +EXPORT_SYMBOL drivers/net/arcnet/arcnet 0x0bad7f5a arc_proto_default +EXPORT_SYMBOL drivers/net/arcnet/arcnet 0x10dcecfd arcnet_unregister_proto +EXPORT_SYMBOL drivers/net/arcnet/arcnet 0x2a3fbb48 arcnet_open +EXPORT_SYMBOL drivers/net/arcnet/arcnet 0x2fded75a arc_bcast_proto +EXPORT_SYMBOL drivers/net/arcnet/arcnet 0x49757a33 alloc_arcdev +EXPORT_SYMBOL drivers/net/arcnet/arcnet 0x55ad1715 arcnet_close +EXPORT_SYMBOL drivers/net/arcnet/arcnet 0x5f2bd7c5 arc_proto_map +EXPORT_SYMBOL drivers/net/arcnet/arcnet 0x6534792a arcnet_debug +EXPORT_SYMBOL drivers/net/arcnet/arcnet 0x6aa2bc9b arcnet_timeout +EXPORT_SYMBOL drivers/net/arcnet/arcnet 0xbc779f24 arc_raw_proto +EXPORT_SYMBOL drivers/net/arcnet/arcnet 0xecb730b0 arcnet_interrupt +EXPORT_SYMBOL drivers/net/arcnet/com20020 0x030c7e3f com20020_found +EXPORT_SYMBOL drivers/net/arcnet/com20020 0x7d5377a3 com20020_netdev_ops +EXPORT_SYMBOL drivers/net/arcnet/com20020 0xba17396d com20020_check +EXPORT_SYMBOL drivers/net/dsa/b53/b53_common 0x00c0ecad b53_phylink_mac_config +EXPORT_SYMBOL drivers/net/dsa/b53/b53_common 0x134fa2aa b53_set_mac_eee +EXPORT_SYMBOL drivers/net/dsa/b53/b53_common 0x1984994c b53_imp_vlan_setup +EXPORT_SYMBOL drivers/net/dsa/b53/b53_common 0x1d207d9c b53_fdb_del +EXPORT_SYMBOL drivers/net/dsa/b53/b53_common 0x1e71d52b b53_enable_port +EXPORT_SYMBOL drivers/net/dsa/b53/b53_common 0x28f1b54e b53_port_event +EXPORT_SYMBOL drivers/net/dsa/b53/b53_common 0x294d5cf0 b53_vlan_add +EXPORT_SYMBOL drivers/net/dsa/b53/b53_common 0x3729ef0f b53_eee_enable_set +EXPORT_SYMBOL drivers/net/dsa/b53/b53_common 0x3b3c170f b53_mdb_prepare +EXPORT_SYMBOL drivers/net/dsa/b53/b53_common 0x4925d587 b53_vlan_prepare +EXPORT_SYMBOL drivers/net/dsa/b53/b53_common 0x4bf78492 b53_brcm_hdr_setup +EXPORT_SYMBOL drivers/net/dsa/b53/b53_common 0x53f17ed6 b53_get_mac_eee +EXPORT_SYMBOL drivers/net/dsa/b53/b53_common 0x5be248d0 b53_switch_register +EXPORT_SYMBOL drivers/net/dsa/b53/b53_common 0x5db7cad7 b53_mdb_del +EXPORT_SYMBOL drivers/net/dsa/b53/b53_common 0x615eabf7 b53_switch_detect +EXPORT_SYMBOL drivers/net/dsa/b53/b53_common 0x61827761 b53_get_strings +EXPORT_SYMBOL drivers/net/dsa/b53/b53_common 0x70c0b482 b53_br_egress_floods +EXPORT_SYMBOL drivers/net/dsa/b53/b53_common 0x7232019f b53_phylink_mac_link_up +EXPORT_SYMBOL drivers/net/dsa/b53/b53_common 0x790e58c6 b53_configure_vlan +EXPORT_SYMBOL drivers/net/dsa/b53/b53_common 0x8376d3f7 b53_fdb_add +EXPORT_SYMBOL drivers/net/dsa/b53/b53_common 0x849d1c50 b53_get_sset_count +EXPORT_SYMBOL drivers/net/dsa/b53/b53_common 0x8a023d62 b53_mirror_del +EXPORT_SYMBOL drivers/net/dsa/b53/b53_common 0x99518e8a b53_br_leave +EXPORT_SYMBOL drivers/net/dsa/b53/b53_common 0x99b8680f b53_phylink_validate +EXPORT_SYMBOL drivers/net/dsa/b53/b53_common 0x99c520d7 b53_br_fast_age +EXPORT_SYMBOL drivers/net/dsa/b53/b53_common 0x9d4a6c54 b53_phylink_mac_an_restart +EXPORT_SYMBOL drivers/net/dsa/b53/b53_common 0xa52ce8ec b53_disable_port +EXPORT_SYMBOL drivers/net/dsa/b53/b53_common 0xa62d122b b53_mirror_add +EXPORT_SYMBOL drivers/net/dsa/b53/b53_common 0xb3ec460b b53_vlan_del +EXPORT_SYMBOL drivers/net/dsa/b53/b53_common 0xb80ee035 b53_br_set_stp_state +EXPORT_SYMBOL drivers/net/dsa/b53/b53_common 0xc36b23cd b53_vlan_filtering +EXPORT_SYMBOL drivers/net/dsa/b53/b53_common 0xc55586f1 b53_fdb_dump +EXPORT_SYMBOL drivers/net/dsa/b53/b53_common 0xcc786cb5 b53_get_ethtool_phy_stats +EXPORT_SYMBOL drivers/net/dsa/b53/b53_common 0xd46ea878 b53_br_join +EXPORT_SYMBOL drivers/net/dsa/b53/b53_common 0xd790bb36 b53_phylink_mac_link_state +EXPORT_SYMBOL drivers/net/dsa/b53/b53_common 0xda4f33e5 b53_mdb_add +EXPORT_SYMBOL drivers/net/dsa/b53/b53_common 0xe73feeea b53_get_tag_protocol +EXPORT_SYMBOL drivers/net/dsa/b53/b53_common 0xe8bff017 b53_switch_alloc +EXPORT_SYMBOL drivers/net/dsa/b53/b53_common 0xf2a60895 b53_get_ethtool_stats +EXPORT_SYMBOL drivers/net/dsa/b53/b53_common 0xfabe6e22 b53_eee_init +EXPORT_SYMBOL drivers/net/dsa/b53/b53_common 0xfc01dd84 b53_phylink_mac_link_down +EXPORT_SYMBOL drivers/net/dsa/b53/b53_serdes 0x05c10be3 b53_serdes_init +EXPORT_SYMBOL drivers/net/dsa/b53/b53_serdes 0x616ab0b9 b53_serdes_an_restart +EXPORT_SYMBOL drivers/net/dsa/b53/b53_serdes 0x6ba766ff b53_serdes_phylink_validate +EXPORT_SYMBOL drivers/net/dsa/b53/b53_serdes 0x7659edbc b53_serdes_config +EXPORT_SYMBOL drivers/net/dsa/b53/b53_serdes 0xcee5321c b53_serdes_link_set +EXPORT_SYMBOL drivers/net/dsa/b53/b53_serdes 0xe2f822c5 b53_serdes_link_state +EXPORT_SYMBOL drivers/net/dsa/lan9303-core 0x0759c0d9 lan9303_probe +EXPORT_SYMBOL drivers/net/dsa/lan9303-core 0xada83f40 lan9303_register_set +EXPORT_SYMBOL drivers/net/dsa/lan9303-core 0xc1b9f34b lan9303_remove +EXPORT_SYMBOL drivers/net/dsa/microchip/ksz8795 0x033be9c8 ksz8795_switch_register +EXPORT_SYMBOL drivers/net/dsa/microchip/ksz9477 0x8a7e0ca6 ksz9477_switch_register +EXPORT_SYMBOL drivers/net/dsa/microchip/ksz_common 0x4951c75d ksz_switch_alloc +EXPORT_SYMBOL drivers/net/dsa/microchip/ksz_common 0xc10f26e1 ksz_switch_register +EXPORT_SYMBOL drivers/net/dsa/microchip/ksz_common 0xce46dce9 ksz_switch_remove +EXPORT_SYMBOL drivers/net/dsa/vitesse-vsc73xx-core 0x20e55199 vsc73xx_remove +EXPORT_SYMBOL drivers/net/dsa/vitesse-vsc73xx-core 0x99d242fe vsc73xx_is_addr_valid +EXPORT_SYMBOL drivers/net/dsa/vitesse-vsc73xx-core 0xdcd0647c vsc73xx_probe +EXPORT_SYMBOL drivers/net/ethernet/8390/8390 0x119721ac ei_interrupt +EXPORT_SYMBOL drivers/net/ethernet/8390/8390 0x1d336d67 __alloc_ei_netdev +EXPORT_SYMBOL drivers/net/ethernet/8390/8390 0x470a22e6 ei_get_stats +EXPORT_SYMBOL drivers/net/ethernet/8390/8390 0x4e9025fc NS8390_init +EXPORT_SYMBOL drivers/net/ethernet/8390/8390 0x55a2f8ea ei_poll +EXPORT_SYMBOL drivers/net/ethernet/8390/8390 0x6f39bba4 ei_set_multicast_list +EXPORT_SYMBOL drivers/net/ethernet/8390/8390 0x7f7a92d4 ei_tx_timeout +EXPORT_SYMBOL drivers/net/ethernet/8390/8390 0x95a62f9a ei_netdev_ops +EXPORT_SYMBOL drivers/net/ethernet/8390/8390 0xab9f24cd ei_close +EXPORT_SYMBOL drivers/net/ethernet/8390/8390 0xce847342 ei_open +EXPORT_SYMBOL drivers/net/ethernet/8390/8390 0xeb1702c1 ei_start_xmit +EXPORT_SYMBOL drivers/net/ethernet/broadcom/cnic 0x636af174 cnic_unregister_driver +EXPORT_SYMBOL drivers/net/ethernet/broadcom/cnic 0xbca8adbb cnic_register_driver +EXPORT_SYMBOL drivers/net/ethernet/cavium/common/cavium_ptp 0x160f08c0 cavium_ptp_get +EXPORT_SYMBOL drivers/net/ethernet/cavium/common/cavium_ptp 0x3f83d211 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 0x0ecfb72c t3_l2t_send_slow +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb3/cxgb3 0x18598746 cxgb3_alloc_stid +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb3/cxgb3 0x223c5f9e cxgb3_queue_tid_release +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb3/cxgb3 0x26dec87b cxgb3_insert_tid +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb3/cxgb3 0x39d8b434 dev2t3cdev +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb3/cxgb3 0x3d4355de cxgb3_alloc_atid +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb3/cxgb3 0x4511feca cxgb3_remove_tid +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb3/cxgb3 0x6ca81c8c t3_l2t_send_event +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb3/cxgb3 0x6d7503b5 cxgb3_free_stid +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb3/cxgb3 0x6f6ab21a cxgb3_ofld_send +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb3/cxgb3 0x9a31f6c9 cxgb3_free_atid +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb3/cxgb3 0x9b3a42ea cxgb3_unregister_client +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb3/cxgb3 0xa856c6b5 t3_register_cpl_handler +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb3/cxgb3 0xb77fc1d9 cxgb3_register_client +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb3/cxgb3 0xf4b0f05f t3_l2e_free +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb3/cxgb3 0xf90b1ea7 t3_l2t_get +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0x03320990 cxgb4_immdata_send +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0x09b33f0d cxgb4_inline_tx_skb +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0x0a5970c8 cxgb4_create_server6 +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0x0db3bad5 cxgb4_flush_eq_cache +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0x1ac7bc3d cxgb4_port_chan +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0x25da78c0 cxgb4_dbfifo_count +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0x26c09b19 cxgb4_port_idx +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0x2f7f7e08 cxgb4_sync_txq_pidx +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0x3398eb12 cxgb4_get_srq_entry +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0x35ea39b0 cxgb4_l2t_send +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0x39398170 t4_cleanup_clip_tbl +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0x3f9d38a3 cxgb4_l2t_alloc_switching +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0x41cba337 cxgb4_select_ntuple +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0x505cb9c3 cxgb4_clip_get +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0x50befe98 cxgb4_ofld_send +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0x50ee5c07 cxgb4_best_aligned_mtu +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0x511950df cxgb4_iscsi_init +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0x5aec0727 cxgb4_update_root_dev_clip +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0x5d3f19dc cxgb4_remove_server +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0x5f0dca57 cxgb4_port_viid +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0x676a11a9 cxgb4_unregister_uld +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0x6929d8d0 cxgb4_bar2_sge_qregs +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0x752419ab cxgb4_crypto_send +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0x7a24393c cxgb4_check_l2t_valid +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0x7c7984db cxgb4_clip_release +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0x7c91ad00 cxgb4_write_sgl +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0x7d39849a cxgb4_remove_server_filter +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0x7e6c72ee cxgb4_alloc_sftid +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0x7e830388 cxgb4_free_stid +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0x7f8c35f8 cxgb4_reclaim_completed_tx +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0x7f959c4c cxgb4_register_uld +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0x7f96e3db cxgb4_remove_tid +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0x87cc2d0a cxgb4_create_server +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0x8c8db7c5 cxgb4_smt_alloc_switching +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0x924adcde cxgb4_alloc_stid +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0x9b9abffa cxgb4_free_atid +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0x9e660705 cxgb4_l2t_get +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0xa1659aca cxgb4_l2t_release +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0xa4ab7499 cxgb4_read_tpte +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0xb5b55ab6 cxgb4_alloc_atid +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0xb6651a5f cxgb4_map_skb +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0xc5871854 cxgb4_create_server_filter +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0xd06ee6bf cxgb4_pktgl_to_skb +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0xd4133eb2 cxgb4_ring_tx_db +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0xd69a0294 cxgb4_best_mtu +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0xed07d53b cxgb4_port_e2cchan +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0xf0f8d34e cxgb4_get_tcp_stats +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0xf1fb0fde cxgb4_smt_release +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0xf26cc345 cxgb4_read_sge_timestamp +EXPORT_SYMBOL drivers/net/ethernet/chelsio/libcxgb/libcxgb 0x049f50af cxgbi_ppm_make_ppod_hdr +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 0x26b1aa2e cxgbi_ppm_ppod_release +EXPORT_SYMBOL drivers/net/ethernet/chelsio/libcxgb/libcxgb 0x353edd41 cxgbi_ppm_ppods_reserve +EXPORT_SYMBOL drivers/net/ethernet/chelsio/libcxgb/libcxgb 0x93d9df6f cxgbi_ppm_init +EXPORT_SYMBOL drivers/net/ethernet/chelsio/libcxgb/libcxgb 0xb41d3dd1 cxgbi_ppm_release +EXPORT_SYMBOL drivers/net/ethernet/chelsio/libcxgb/libcxgb 0xe668efce cxgb_find_route6 +EXPORT_SYMBOL drivers/net/ethernet/chelsio/libcxgb/libcxgb 0xfc5a3ff3 cxgb_find_route +EXPORT_SYMBOL drivers/net/ethernet/cisco/enic/enic 0xc2723256 vnic_dev_unregister +EXPORT_SYMBOL drivers/net/ethernet/cisco/enic/enic 0xc602c946 vnic_dev_register +EXPORT_SYMBOL drivers/net/ethernet/cisco/enic/enic 0xc84cce5d vnic_dev_get_res +EXPORT_SYMBOL drivers/net/ethernet/cisco/enic/enic 0xd6a8d566 vnic_dev_get_pdev +EXPORT_SYMBOL drivers/net/ethernet/cisco/enic/enic 0xdfd10e87 vnic_dev_get_res_count +EXPORT_SYMBOL drivers/net/ethernet/cisco/enic/enic 0xfba5484a enic_api_devcmd_proxy_by_index +EXPORT_SYMBOL drivers/net/ethernet/emulex/benet/be2net 0x23ae82ce be_roce_unregister_driver +EXPORT_SYMBOL drivers/net/ethernet/emulex/benet/be2net 0x4e2e10d2 be_roce_mcc_cmd +EXPORT_SYMBOL drivers/net/ethernet/emulex/benet/be2net 0xe2376df7 be_roce_register_driver +EXPORT_SYMBOL drivers/net/ethernet/freescale/enetc/fsl-enetc-ptp 0x5431a304 enetc_phc_index +EXPORT_SYMBOL drivers/net/ethernet/intel/i40e/i40e 0x7f7e1eab i40e_unregister_client +EXPORT_SYMBOL drivers/net/ethernet/intel/i40e/i40e 0xa7ac8d0c i40e_register_client +EXPORT_SYMBOL drivers/net/ethernet/intel/iavf/iavf 0x4653f722 iavf_unregister_client +EXPORT_SYMBOL drivers/net/ethernet/intel/iavf/iavf 0xcdd212b6 iavf_register_client +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x0451442a mlx4_assign_eq +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x151c4a54 mlx4_ALLOCATE_VPP_get +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x17832b75 mlx4_SET_PORT_SCHEDULER +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x1ba514c5 set_phv_bit +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x1dea0d78 mlx4_SET_PORT_BEACON +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x2253596c mlx4_SET_PORT_general +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x24a5057e mlx4_tunnel_steer_add +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x268bbce6 mlx4_gen_pkey_eqe +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x2cf21cc5 mlx4_is_eq_shared +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x2dad8983 mlx4_get_slave_pkey_gid_tbl_len +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x314d3d60 mlx4_is_slave_active +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x3c5ccc05 mlx4_gen_port_state_change_eqe +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x3d19ea3c mlx4_get_eqs_per_port +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x3e3a2555 mlx4_SET_VPORT_QOS_set +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x4bc96206 mlx4_get_roce_gid_from_slave +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x4e73952a mlx4_get_slave_node_guid +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x685571aa mlx4_is_eq_vector_valid +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x696d9f91 mlx4_test_interrupt +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x6bd6472a mlx4_get_slave_from_roce_gid +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x799ffd03 mlx4_sync_pkey_table +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 0x89517c45 mlx4_SET_PORT_qpn_calc +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x911b8404 mlx4_get_module_info +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x972e6f97 mlx4_SET_PORT_user_mtu +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x9adba88f mlx4_SET_VPORT_QOS_get +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x9e968292 mlx4_test_async +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xa3476305 mlx4_ALLOCATE_VPP_set +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xaf110060 mlx4_release_eq +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xb2d2a305 mlx4_get_cpu_rmap +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xb3fbf99f mlx4_get_slave_port_state +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xb693cd74 mlx4_SET_PORT_fcs_check +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xbda6ef6b mlx4_SET_PORT_VXLAN +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xc8d1976a mlx4_gen_slaves_port_mgt_ev +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xd55b7454 mlx4_SET_MCAST_FLTR +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xdc27a796 mlx4_get_is_vlan_offload_disabled +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xe1f04eaa mlx4_max_tc +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xe329586d mlx4_get_parav_qkey +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xed120984 mlx4_gen_guid_change_eqe +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xef216755 set_and_calc_slave_port_state +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xf795491f mlx4_put_slave_node_guid +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xf88d50ed mlx4_query_diag_counters +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xf8fd543e get_phv_bit +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xf96450d3 mlx4_SET_PORT_user_mac +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xfa93f8aa mlx4_SET_PORT_PRIO2TC +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xff0589ce mlx4_eq_get_irq +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x06f67cac mlx5_core_query_rq +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x09f41f3e __tracepoint_mlx5_fs_del_fg +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x0c8e9e12 mlx5_cmd_init_async_ctx +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x0dd263ed __tracepoint_mlx5_fs_add_rule +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x0ead1428 mlx5_core_create_rq +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x12155356 mlx5_buf_alloc +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x1398ca70 mlx5_eswitch_uplink_get_proto_dev +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x159b7f91 mlx5_fpga_mem_write +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x17867551 mlx5_lag_query_cong_counters +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x1cab6cee mlx5_rl_is_in_range +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x1d99cd63 mlx5_fc_query +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x216d35a6 __tracepoint_mlx5_fw +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x22268cf1 mlx5_eq_update_ci +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x2291385c __tracepoint_mlx5_fs_set_fte +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x2545cc8a mlx5_packet_reformat_dealloc +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x25726c19 mlx5_packet_reformat_alloc +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x2976f03b mlx5_core_attach_mcg +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x2a836efc mlx5_nic_vport_disable_roce +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x2bcf1c8c mlx5_core_create_mkey +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x2be736f0 mlx5_create_lag_demux_flow_table +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x2c887f12 mlx5_core_modify_cq_moderation +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x2e0eb0af mlx5_qp_debugfs_init +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x2f6ee3c2 mlx5_cmd_exec_polling +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x31898f12 mlx5_eswitch_get_proto_dev +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x33d427f7 mlx5_eswitch_unregister_vport_reps +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x36573691 mlx5_cmd_cleanup +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x36d26202 mlx5_core_dealloc_transport_domain +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x38089399 mlx5_eswitch_register_vport_reps +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x3875704b mlx5_cmd_destroy_vport_lag +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x3c3fa57c mlx5_fpga_sbu_conn_destroy +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x3c6a85f9 mlx5_core_dealloc_pd +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x3e063e38 mlx5_core_destroy_tis +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x3f3943ca mlx5_core_modify_tis +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x45ce3c69 mlx5_eswitch_get_vport_metadata_for_match +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x45d49131 mlx5_core_modify_cq +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x46640cb1 mlx5_modify_header_dealloc +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x46f94adc mlx5_eq_notifier_unregister +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x47e303a8 mlx5_fpga_mem_read +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x4de3b606 mlx5_eq_create_generic +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x4dedc233 mlx5_core_create_cq +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x4e6d0c52 mlx5_destroy_flow_table +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x4fc9d2b4 mlx5_eswitch_vport_match_metadata_enabled +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x506e953c mlx5_lag_get_slave_port +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x539eeb4c mlx5_put_uars_page +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x53d34d47 mlx5_fpga_sbu_conn_create +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x5617f3f4 mlx5_eq_destroy_generic +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x6072a371 mlx5_core_destroy_rqt +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 0x62873ba8 mlx5_eq_enable +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x66c523d9 mlx5_core_create_tis +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x681b5eac __tracepoint_mlx5_fs_del_ft +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x683d46e0 mlx5_notifier_register +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x6842f808 mlx5_rl_add_rate_raw +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x690164b8 mlx5_eswitch_add_send_to_vport_rule +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x6b75f2e9 mlx5_core_destroy_cq +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x70a5ede1 mlx5_core_destroy_rq +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x7975efd2 mlx5_add_flow_rules +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x7a216fea mlx5_comp_vectors_count +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x7c02263b mlx5_fs_remove_rx_underlay_qpn +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x7c289862 mlx5_core_detach_mcg +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x7d791b41 mlx5_core_query_sq +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x7d94dbb0 mlx5_get_fdb_sub_ns +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x80537ba1 mlx5_get_uars_page +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x825cedd5 mlx5_fpga_sbu_conn_sendmsg +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x882588e2 mlx5_fc_create +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x88baf62a mlx5_notifier_unregister +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x88ec08d7 mlx5_cmd_init +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x89a2d8e6 mlx5_fs_add_rx_underlay_qpn +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x8a6593c4 mlx5_rl_add_rate +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x8b140be4 mlx5_create_auto_grouped_flow_table +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x8d010d0b mlx5_rdma_rn_get_params +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x8e9d358d mlx5_core_create_rqt +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x94d82ae9 mlx5_lag_is_active +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x9513d301 mlx5_core_roce_gid_set +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x964974c5 mlx5_vector2eqn +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x96a6e1f0 mlx5_cmd_exec +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x96eb2c99 mlx5_fc_id +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x98455882 mlx5_alloc_bfreg +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x984b3070 mlx5_qp_debugfs_cleanup +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x9850ca19 mlx5_core_alloc_transport_domain +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x9bb0ce40 mlx5_core_alloc_pd +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x9d00b8e3 mlx5_cmd_create_vport_lag +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x9d862bf5 mlx5_del_flow_rules +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x9e693c17 mlx5_core_destroy_tir +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x9e7e53e6 mlx5_eswitch_vport_rep +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xa0e0a8fd __tracepoint_mlx5_fs_add_fg +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xa13fc0f7 mlx5_core_destroy_mkey +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xa1fdcf17 mlx5_debug_qp_remove +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xa3624ec7 mlx5_fc_destroy +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xa4f4e296 mlx5_eq_get_eqe +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xa7c66379 mlx5_cmd_exec_cb +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xa8ba3273 mlx5_core_modify_rq +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xa9c65eef mlx5_comp_irq_get_affinity_mask +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xad3653cc mlx5_rl_remove_rate_raw +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xad4b8d08 mlx5_free_bfreg +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xae8807ae mlx5_core_query_cq +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xaff44a6a mlx5_cmd_free_uar +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xb02e70ae mlx5_debugfs_root +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xb61c814c mlx5_cmd_set_state +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xb6b26d16 mlx5_modify_header_alloc +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xb800685b __tracepoint_mlx5_fs_del_rule +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xb805327b mlx5_core_create_tir +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xb8848860 mlx5_rl_remove_rate +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xbb6a8098 __tracepoint_mlx5_fs_del_fte +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xbd20a4d3 mlx5_debug_qp_add +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xc10fe96f __tracepoint_mlx5_fs_add_ft +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xc481c86d mlx5_get_flow_namespace +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xc9e72878 mlx5_eswitch_get_encap_mode +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xccf1a17a mlx5_register_interface +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xcf77129b mlx5_core_create_psv +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xd335559e mlx5_core_modify_sq +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xd395186a mlx5_cmd_alloc_uar +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xd499c175 mlx5_core_query_vendor_id +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xd8242a5e mlx5_core_destroy_psv +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xd8c8e379 mlx5_lag_get_roce_netdev +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xdd00e543 mlx5_eswitch_reg_c1_loopback_enabled +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xdd25117a mlx5_fpga_get_sbu_caps +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xe33a12c7 mlx5_unregister_interface +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xe48a2d64 mlx5_eq_disable +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xe636703b mlx5_core_query_mkey +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xea99986a mlx5_eq_notifier_register +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xee38c896 mlx5_lag_is_roce +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xf2c1c4d5 mlx5_query_port_ib_proto_oper +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xf5fb7e06 mlx5_cmd_cleanup_async_ctx +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xfb0281a2 mlx5_lag_is_sriov +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxfw/mlxfw 0x2428c67a mlxfw_firmware_flash +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0x02998acf mlxsw_afa_block_append_counter +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 0x07abcc0c mlxsw_afa_block_append_trap +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0x0ad41315 mlxsw_afa_create +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0x0c9ece1e mlxsw_core_bus_device_register +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0x0ca34ccf mlxsw_core_max_ports +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0x0e2b5842 mlxsw_afa_block_append_vlan_modify +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0x0e81c09c mlxsw_afk_destroy +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0x11f5bdcf mlxsw_core_driver_unregister +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0x15801382 mlxsw_afk_key_info_put +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 0x1fc00b58 mlxsw_core_driver_register +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0x202693f0 mlxsw_afa_block_cur_set +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0x2144e399 mlxsw_afa_block_append_mirror +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0x23eddc68 mlxsw_core_cpu_port_init +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0x2c68ced3 mlxsw_core_read_frc_h +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0x2decde87 mlxsw_core_fw_flash_start +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0x2f2c4887 mlxsw_afa_block_append_qos_switch_prio +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0x35ba2254 mlxsw_afk_values_add_u32 +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0x3f123442 mlxsw_core_kvd_sizes_get +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0x41055a45 mlxsw_core_event_listener_unregister +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 0x47fd6eee mlxsw_core_fw_flash_end +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0x484489a4 mlxsw_cmd_exec +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0x4a6ed376 mlxsw_core_port_fini +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0x4dd34866 mlxsw_core_port_eth_set +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0x5150f9c1 mlxsw_core_skb_receive +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0x5cf3dd79 mlxsw_core_bus_device_unregister +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0x5ff17b5c mlxsw_afa_block_destroy +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0x615ef5fc mlxsw_afa_block_append_qos_dscp +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 0x65e16da4 mlxsw_afk_key_info_get +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0x692ac04e mlxsw_afk_create +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0x71e1d813 mlxsw_core_port_clear +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0x73cf1d7a mlxsw_core_res_get +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0x749556a2 mlxsw_afk_key_info_subset +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0x76a65e3b mlxsw_core_port_init +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0x77768221 mlxsw_core_module_max_width +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0x77d83398 mlxsw_core_read_frc_l +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0x7b4ee770 mlxsw_core_ptp_transmitted +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 0x858c30d0 mlxsw_afa_block_create +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0x8854d198 mlxsw_reg_write +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0x8ba5fa7e mlxsw_core_lag_mapping_set +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0x902c3533 mlxsw_core_schedule_dw +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0x963cfb6a mlxsw_core_resources_query +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 0x9e41f494 mlxsw_afk_encode +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0xa3d0d2b6 mlxsw_afa_block_append_fwd +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0xa571a027 mlxsw_core_trap_register +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0xa6b38156 mlxsw_core_skb_transmit +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0xa7765e88 mlxsw_reg_query +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0xa7ccb62a mlxsw_afa_block_append_qos_dsfield +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0xad4f77b3 mlxsw_core_rx_listener_register +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0xb0717797 mlxsw_afa_block_append_fid_set +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0xb2f24677 mlxsw_core_res_valid +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0xb5e762fa mlxsw_afk_values_add_buf +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 0xb730f6f4 mlxsw_core_trap_state_set +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0xba05b3b0 mlxsw_core_emad_string_tlv_enable +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0xbbbc6dc1 mlxsw_core_trap_unregister +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0xbc222a8d mlxsw_afk_clear +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0xbe82d6cc mlxsw_env_get_module_info +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0xbfb7df3c mlxsw_core_driver_priv +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0xbfd01f33 mlxsw_core_port_ib_set +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0xc9c2e4cc mlxsw_core_lag_mapping_clear +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 0xcd9a40a4 mlxsw_afa_block_append_drop +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0xd1a82f0b mlxsw_core_lag_mapping_get +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0xd252e62d mlxsw_core_skb_transmit_busy +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 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 0xdeb1dc2e mlxsw_afa_block_first_kvdl_index +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0xdeff4950 mlxsw_core_event_listener_register +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0xe16986dd mlxsw_afa_block_activity_get +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0xea06a872 mlxsw_env_get_module_eeprom +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0xecab212a mlxsw_afa_cookie_lookup +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0xed395b7f mlxsw_core_rx_listener_unregister +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0xf2ca3bae mlxsw_core_res_query_enabled +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0xf4909bea mlxsw_core_port_type_get +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0xf60de29c mlxsw_core_port_devlink_port_get +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0xf7fbba9f mlxsw_afa_block_append_qos_ecn +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0xff007c25 mlxsw_core_cpu_port_fini +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_i2c 0x235bdd82 mlxsw_i2c_driver_unregister +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_i2c 0x4f3871e9 mlxsw_i2c_driver_register +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_pci 0x9d6673e4 mlxsw_pci_driver_unregister +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_pci 0xac63becf mlxsw_pci_driver_register +EXPORT_SYMBOL drivers/net/ethernet/mscc/mscc_ocelot_common 0x02563a84 ocelot_port_writel +EXPORT_SYMBOL drivers/net/ethernet/mscc/mscc_ocelot_common 0x0a4e3d07 __ocelot_write_ix +EXPORT_SYMBOL drivers/net/ethernet/mscc/mscc_ocelot_common 0x0aa4f020 ocelot_ptp_settime64 +EXPORT_SYMBOL drivers/net/ethernet/mscc/mscc_ocelot_common 0x0b150222 ocelot_netdevice_nb +EXPORT_SYMBOL drivers/net/ethernet/mscc/mscc_ocelot_common 0x2125ea6d ocelot_port_set_maxlen +EXPORT_SYMBOL drivers/net/ethernet/mscc/mscc_ocelot_common 0x21cb5dc0 ocelot_hwstamp_set +EXPORT_SYMBOL drivers/net/ethernet/mscc/mscc_ocelot_common 0x25205369 ocelot_port_disable +EXPORT_SYMBOL drivers/net/ethernet/mscc/mscc_ocelot_common 0x289fadcd ocelot_regfields_init +EXPORT_SYMBOL drivers/net/ethernet/mscc/mscc_ocelot_common 0x2b437308 ocelot_init_port +EXPORT_SYMBOL drivers/net/ethernet/mscc/mscc_ocelot_common 0x2b727280 ocelot_bridge_stp_state_set +EXPORT_SYMBOL drivers/net/ethernet/mscc/mscc_ocelot_common 0x2c102580 ocelot_deinit_timestamp +EXPORT_SYMBOL drivers/net/ethernet/mscc/mscc_ocelot_common 0x457b750c ocelot_ptp_adjfine +EXPORT_SYMBOL drivers/net/ethernet/mscc/mscc_ocelot_common 0x4a5a4a90 ocelot_get_ts_info +EXPORT_SYMBOL drivers/net/ethernet/mscc/mscc_ocelot_common 0x4c7e4046 ocelot_fdb_dump +EXPORT_SYMBOL drivers/net/ethernet/mscc/mscc_ocelot_common 0x51b604ff ocelot_vlan_del +EXPORT_SYMBOL drivers/net/ethernet/mscc/mscc_ocelot_common 0x574655ae ocelot_ptp_gettime64 +EXPORT_SYMBOL drivers/net/ethernet/mscc/mscc_ocelot_common 0x5a4151e8 ocelot_init +EXPORT_SYMBOL drivers/net/ethernet/mscc/mscc_ocelot_common 0x614cfd87 ocelot_regmap_init +EXPORT_SYMBOL drivers/net/ethernet/mscc/mscc_ocelot_common 0x65295e0b __ocelot_rmw_ix +EXPORT_SYMBOL drivers/net/ethernet/mscc/mscc_ocelot_common 0x654ffb66 ocelot_fdb_add +EXPORT_SYMBOL drivers/net/ethernet/mscc/mscc_ocelot_common 0x673e5fc3 ocelot_port_enable +EXPORT_SYMBOL drivers/net/ethernet/mscc/mscc_ocelot_common 0x6a6c1655 ocelot_get_max_mtu +EXPORT_SYMBOL drivers/net/ethernet/mscc/mscc_ocelot_common 0x73521ae5 ocelot_chip_init +EXPORT_SYMBOL drivers/net/ethernet/mscc/mscc_ocelot_common 0x7716e9e0 ocelot_vlan_add +EXPORT_SYMBOL drivers/net/ethernet/mscc/mscc_ocelot_common 0x7c7abb3d ocelot_port_bridge_join +EXPORT_SYMBOL drivers/net/ethernet/mscc/mscc_ocelot_common 0x91506fe9 ocelot_set_ageing_time +EXPORT_SYMBOL drivers/net/ethernet/mscc/mscc_ocelot_common 0x96a61692 ocelot_get_ethtool_stats +EXPORT_SYMBOL drivers/net/ethernet/mscc/mscc_ocelot_common 0x97e009f6 ocelot_ptp_adjtime +EXPORT_SYMBOL drivers/net/ethernet/mscc/mscc_ocelot_common 0x9a892cdc ocelot_hwstamp_get +EXPORT_SYMBOL drivers/net/ethernet/mscc/mscc_ocelot_common 0x9b712175 ocelot_port_policer_add +EXPORT_SYMBOL drivers/net/ethernet/mscc/mscc_ocelot_common 0xa1301e86 ocelot_ptp_verify +EXPORT_SYMBOL drivers/net/ethernet/mscc/mscc_ocelot_common 0xa5fd376a ocelot_get_txtstamp +EXPORT_SYMBOL drivers/net/ethernet/mscc/mscc_ocelot_common 0xad4a7c51 ocelot_port_vlan_filtering +EXPORT_SYMBOL drivers/net/ethernet/mscc/mscc_ocelot_common 0xae5dc915 ocelot_port_bridge_leave +EXPORT_SYMBOL drivers/net/ethernet/mscc/mscc_ocelot_common 0xaf2bd936 ocelot_configure_cpu +EXPORT_SYMBOL drivers/net/ethernet/mscc/mscc_ocelot_common 0xbb240b0d ocelot_ptp_enable +EXPORT_SYMBOL drivers/net/ethernet/mscc/mscc_ocelot_common 0xbe589895 ocelot_init_timestamp +EXPORT_SYMBOL drivers/net/ethernet/mscc/mscc_ocelot_common 0xc4cd6a70 ocelot_fdb_del +EXPORT_SYMBOL drivers/net/ethernet/mscc/mscc_ocelot_common 0xc90039d1 ocelot_get_strings +EXPORT_SYMBOL drivers/net/ethernet/mscc/mscc_ocelot_common 0xcd0d4696 ocelot_port_add_txtstamp_skb +EXPORT_SYMBOL drivers/net/ethernet/mscc/mscc_ocelot_common 0xd0348add ocelot_switchdev_nb +EXPORT_SYMBOL drivers/net/ethernet/mscc/mscc_ocelot_common 0xd9edc8bf ocelot_probe_port +EXPORT_SYMBOL drivers/net/ethernet/mscc/mscc_ocelot_common 0xe54a91e8 ocelot_switchdev_blocking_nb +EXPORT_SYMBOL drivers/net/ethernet/mscc/mscc_ocelot_common 0xeac47be6 __ocelot_read_ix +EXPORT_SYMBOL drivers/net/ethernet/mscc/mscc_ocelot_common 0xebee4278 ocelot_adjust_link +EXPORT_SYMBOL drivers/net/ethernet/mscc/mscc_ocelot_common 0xec8a1729 ocelot_port_readl +EXPORT_SYMBOL drivers/net/ethernet/mscc/mscc_ocelot_common 0xf29291c2 ocelot_get_sset_count +EXPORT_SYMBOL drivers/net/ethernet/mscc/mscc_ocelot_common 0xf69e266c ocelot_deinit +EXPORT_SYMBOL drivers/net/ethernet/mscc/mscc_ocelot_common 0xfc496597 ocelot_port_policer_del +EXPORT_SYMBOL drivers/net/ethernet/qlogic/qed/qed 0x4219ffc5 qed_get_rdma_ops +EXPORT_SYMBOL drivers/net/ethernet/qlogic/qed/qed 0x4f264472 qed_put_iscsi_ops +EXPORT_SYMBOL drivers/net/ethernet/qlogic/qed/qed 0x86483cc3 qed_get_eth_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 0xc8bc25de qed_get_fcoe_ops +EXPORT_SYMBOL drivers/net/ethernet/qlogic/qed/qed 0xcfb6ef4b qed_get_iscsi_ops +EXPORT_SYMBOL drivers/net/ethernet/qlogic/qede/qede 0x6a036c11 qede_rdma_register_driver +EXPORT_SYMBOL drivers/net/ethernet/qlogic/qede/qede 0xb0c4f188 qede_rdma_unregister_driver +EXPORT_SYMBOL drivers/net/hamradio/hdlcdrv 0x1ef931aa hdlcdrv_transmitter +EXPORT_SYMBOL drivers/net/hamradio/hdlcdrv 0xcf2bb7d3 hdlcdrv_arbitrate +EXPORT_SYMBOL drivers/net/hamradio/hdlcdrv 0xf1b999a5 hdlcdrv_unregister +EXPORT_SYMBOL drivers/net/hamradio/hdlcdrv 0xf94a3536 hdlcdrv_register +EXPORT_SYMBOL drivers/net/hamradio/hdlcdrv 0xfeda0064 hdlcdrv_receiver +EXPORT_SYMBOL drivers/net/mdio 0x3e17f466 mdio_set_flag +EXPORT_SYMBOL drivers/net/mdio 0x60443957 mdio45_probe +EXPORT_SYMBOL drivers/net/mdio 0x63e0fee5 mdio45_links_ok +EXPORT_SYMBOL drivers/net/mdio 0x652fb0b6 mdio45_ethtool_ksettings_get_npage +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/mii 0x18010082 mii_ethtool_sset +EXPORT_SYMBOL drivers/net/mii 0x18f65397 mii_nway_restart +EXPORT_SYMBOL drivers/net/mii 0x40ef11b7 generic_mii_ioctl +EXPORT_SYMBOL drivers/net/mii 0x5b070ea7 mii_link_ok +EXPORT_SYMBOL drivers/net/mii 0x63031cf6 mii_check_link +EXPORT_SYMBOL drivers/net/mii 0x68a9e693 mii_check_gmii_support +EXPORT_SYMBOL drivers/net/mii 0xa45493b1 mii_check_media +EXPORT_SYMBOL drivers/net/mii 0xab481abd mii_ethtool_set_link_ksettings +EXPORT_SYMBOL drivers/net/mii 0xfb7da054 mii_ethtool_get_link_ksettings +EXPORT_SYMBOL drivers/net/mii 0xff1505c8 mii_ethtool_gset +EXPORT_SYMBOL drivers/net/phy/bcm-phy-lib 0x49d7cb39 bcm54xx_auxctl_write +EXPORT_SYMBOL drivers/net/phy/mdio-bitbang 0x7777df2f free_mdio_bitbang +EXPORT_SYMBOL drivers/net/phy/mdio-bitbang 0x8d4d0ea3 alloc_mdio_bitbang +EXPORT_SYMBOL drivers/net/phy/mdio-cavium 0x1e76a465 cavium_mdiobus_write +EXPORT_SYMBOL drivers/net/phy/mdio-cavium 0x2c770876 cavium_mdiobus_read +EXPORT_SYMBOL drivers/net/phy/mdio-octeon 0x8a1d5c26 octeon_mdiobus_force_mod_depencency +EXPORT_SYMBOL drivers/net/ppp/pppox 0x16460f8b pppox_ioctl +EXPORT_SYMBOL drivers/net/ppp/pppox 0xcdc8f810 pppox_unbind_sock +EXPORT_SYMBOL drivers/net/ppp/pppox 0xcddf9f78 pppox_compat_ioctl +EXPORT_SYMBOL drivers/net/ppp/pppox 0xe0ff7a18 unregister_pppox_proto +EXPORT_SYMBOL drivers/net/ppp/pppox 0xf5b8b54e register_pppox_proto +EXPORT_SYMBOL drivers/net/sungem_phy 0x7dbbb299 sungem_phy_probe +EXPORT_SYMBOL drivers/net/team/team 0x4959a3ce team_mode_register +EXPORT_SYMBOL drivers/net/team/team 0x5935d8b4 team_option_inst_set_change +EXPORT_SYMBOL drivers/net/team/team 0x634f7b72 team_mode_unregister +EXPORT_SYMBOL drivers/net/team/team 0x9690e526 team_modeop_port_enter +EXPORT_SYMBOL drivers/net/team/team 0x99038e99 team_options_unregister +EXPORT_SYMBOL drivers/net/team/team 0x9c3fa206 team_modeop_port_change_dev_addr +EXPORT_SYMBOL drivers/net/team/team 0xcff9c1dc team_options_change_check +EXPORT_SYMBOL drivers/net/team/team 0xe7ee13ec team_options_register +EXPORT_SYMBOL drivers/net/usb/usbnet 0x266373e0 usbnet_device_suggests_idle +EXPORT_SYMBOL drivers/net/usb/usbnet 0x8e3fcd14 usbnet_link_change +EXPORT_SYMBOL drivers/net/usb/usbnet 0xe388d0f5 usbnet_manage_power +EXPORT_SYMBOL drivers/net/wan/hdlc 0x2327a79f hdlc_start_xmit +EXPORT_SYMBOL drivers/net/wan/hdlc 0x38831f24 hdlc_open +EXPORT_SYMBOL drivers/net/wan/hdlc 0x67fca711 hdlc_close +EXPORT_SYMBOL drivers/net/wan/hdlc 0x792e6fe8 register_hdlc_protocol +EXPORT_SYMBOL drivers/net/wan/hdlc 0x86ab6b3e hdlc_ioctl +EXPORT_SYMBOL drivers/net/wan/hdlc 0xa86eed9d alloc_hdlcdev +EXPORT_SYMBOL drivers/net/wan/hdlc 0xe8de211f detach_hdlc_protocol +EXPORT_SYMBOL drivers/net/wan/hdlc 0xf21bc392 unregister_hdlc_protocol +EXPORT_SYMBOL drivers/net/wan/hdlc 0xf25fbe62 unregister_hdlc_device +EXPORT_SYMBOL drivers/net/wan/hdlc 0xfe286297 attach_hdlc_protocol +EXPORT_SYMBOL drivers/net/wimax/i2400m/i2400m 0x4f0e0690 i2400m_unknown_barker +EXPORT_SYMBOL drivers/net/wireless/ath/ath 0x108b188f ath_is_49ghz_allowed +EXPORT_SYMBOL drivers/net/wireless/ath/ath 0x3b98b9ce ath_hw_setbssidmask +EXPORT_SYMBOL drivers/net/wireless/ath/ath 0x3d9ac4a4 ath_is_mybeacon +EXPORT_SYMBOL drivers/net/wireless/ath/ath 0x3fb77b32 ath_key_delete +EXPORT_SYMBOL drivers/net/wireless/ath/ath 0x4571aea8 ath_is_world_regd +EXPORT_SYMBOL drivers/net/wireless/ath/ath 0x64501041 ath_key_config +EXPORT_SYMBOL drivers/net/wireless/ath/ath 0x7abd4795 ath_hw_keyreset +EXPORT_SYMBOL drivers/net/wireless/ath/ath 0x8f2a13ff ath_regd_init +EXPORT_SYMBOL drivers/net/wireless/ath/ath 0xa18f224e ath_regd_find_country_by_name +EXPORT_SYMBOL drivers/net/wireless/ath/ath 0xa679d9f6 ath_hw_cycle_counters_update +EXPORT_SYMBOL drivers/net/wireless/ath/ath 0xb6588ba6 ath_bus_type_strings +EXPORT_SYMBOL drivers/net/wireless/ath/ath 0xc0be178a ath_reg_notifier_apply +EXPORT_SYMBOL drivers/net/wireless/ath/ath 0xdd94e5ac ath_printk +EXPORT_SYMBOL drivers/net/wireless/ath/ath 0xe18d5860 ath_hw_get_listen_time +EXPORT_SYMBOL drivers/net/wireless/ath/ath 0xe2fb29ce dfs_pattern_detector_init +EXPORT_SYMBOL drivers/net/wireless/ath/ath 0xf08b651e ath_regd_get_band_ctl +EXPORT_SYMBOL drivers/net/wireless/ath/ath 0xff7ec412 ath_rxbuf_alloc +EXPORT_SYMBOL drivers/net/wireless/ath/ath10k/ath10k_core 0x00af639a ath10k_ce_completed_send_next_nolock +EXPORT_SYMBOL drivers/net/wireless/ath/ath10k/ath10k_core 0x015e5db2 ath10k_debug_mask +EXPORT_SYMBOL drivers/net/wireless/ath/ath10k/ath10k_core 0x048b2299 ath10k_core_start +EXPORT_SYMBOL drivers/net/wireless/ath/ath10k/ath10k_core 0x09496aa8 ath10k_ce_revoke_recv_next +EXPORT_SYMBOL drivers/net/wireless/ath/ath10k/ath10k_core 0x0a2ad51b ath10k_htc_tx_completion_handler +EXPORT_SYMBOL drivers/net/wireless/ath/ath10k/ath10k_core 0x0e184e10 ath10k_core_destroy +EXPORT_SYMBOL drivers/net/wireless/ath/ath10k/ath10k_core 0x0e77c296 ath10k_htt_rx_pktlog_completion_handler +EXPORT_SYMBOL drivers/net/wireless/ath/ath10k/ath10k_core 0x1805b097 ath10k_ce_alloc_rri +EXPORT_SYMBOL drivers/net/wireless/ath/ath10k/ath10k_core 0x18342f5f ath10k_mac_tx_push_pending +EXPORT_SYMBOL drivers/net/wireless/ath/ath10k/ath10k_core 0x1871370e ath10k_htc_rx_completion_handler +EXPORT_SYMBOL drivers/net/wireless/ath/ath10k/ath10k_core 0x187afcb9 ath10k_htt_hif_tx_complete +EXPORT_SYMBOL drivers/net/wireless/ath/ath10k/ath10k_core 0x19fea2b2 ath10k_ce_rx_post_buf +EXPORT_SYMBOL drivers/net/wireless/ath/ath10k/ath10k_core 0x1f62414a ath10k_core_free_board_files +EXPORT_SYMBOL drivers/net/wireless/ath/ath10k/ath10k_core 0x224b4388 ath10k_ce_enable_interrupts +EXPORT_SYMBOL drivers/net/wireless/ath/ath10k/ath10k_core 0x242ad9b2 ath10k_ce_send_nolock +EXPORT_SYMBOL drivers/net/wireless/ath/ath10k/ath10k_core 0x3e5246c9 ath10k_htc_notify_tx_completion +EXPORT_SYMBOL drivers/net/wireless/ath/ath10k/ath10k_core 0x4713ddca ath10k_htt_txrx_compl_task +EXPORT_SYMBOL drivers/net/wireless/ath/ath10k/ath10k_core 0x4968000f ath10k_core_register +EXPORT_SYMBOL drivers/net/wireless/ath/ath10k/ath10k_core 0x520f01a6 ath10k_ce_init_pipe +EXPORT_SYMBOL drivers/net/wireless/ath/ath10k/ath10k_core 0x5aaa41be ath10k_ce_deinit_pipe +EXPORT_SYMBOL drivers/net/wireless/ath/ath10k/ath10k_core 0x5b566963 ath10k_ce_dump_registers +EXPORT_SYMBOL drivers/net/wireless/ath/ath10k/ath10k_core 0x5e512c74 ath10k_ce_per_engine_service_any +EXPORT_SYMBOL drivers/net/wireless/ath/ath10k/ath10k_core 0x607871c9 ath10k_htt_t2h_msg_handler +EXPORT_SYMBOL drivers/net/wireless/ath/ath10k/ath10k_core 0x718dc0a3 ath10k_core_unregister +EXPORT_SYMBOL drivers/net/wireless/ath/ath10k/ath10k_core 0x7dc88b1d ath10k_ce_completed_recv_next_nolock +EXPORT_SYMBOL drivers/net/wireless/ath/ath10k/ath10k_core 0x7ed32599 __tracepoint_ath10k_log_dbg +EXPORT_SYMBOL drivers/net/wireless/ath/ath10k/ath10k_core 0x7f5d5248 ath10k_ce_rx_update_write_idx +EXPORT_SYMBOL drivers/net/wireless/ath/ath10k/ath10k_core 0x7f99560c ath10k_coredump_get_mem_layout +EXPORT_SYMBOL drivers/net/wireless/ath/ath10k/ath10k_core 0x82ba70d6 ath10k_ce_completed_send_next +EXPORT_SYMBOL drivers/net/wireless/ath/ath10k/ath10k_core 0x88729893 ath10k_htt_rx_hl_indication +EXPORT_SYMBOL drivers/net/wireless/ath/ath10k/ath10k_core 0x8ed0d010 ath10k_ce_cancel_send_next +EXPORT_SYMBOL drivers/net/wireless/ath/ath10k/ath10k_core 0x95415982 ath10k_print_driver_info +EXPORT_SYMBOL drivers/net/wireless/ath/ath10k/ath10k_core 0x9ca7f343 ath10k_ce_per_engine_service +EXPORT_SYMBOL drivers/net/wireless/ath/ath10k/ath10k_core 0xad674a3a ath10k_coredump_new +EXPORT_SYMBOL drivers/net/wireless/ath/ath10k/ath10k_core 0xae954cbb ath10k_ce_free_rri +EXPORT_SYMBOL drivers/net/wireless/ath/ath10k/ath10k_core 0xaf501216 ath10k_htc_process_trailer +EXPORT_SYMBOL drivers/net/wireless/ath/ath10k/ath10k_core 0xb31f21da ath10k_err +EXPORT_SYMBOL drivers/net/wireless/ath/ath10k/ath10k_core 0xb59cf3b4 ath10k_core_stop +EXPORT_SYMBOL drivers/net/wireless/ath/ath10k/ath10k_core 0xb973f10a ath10k_ce_send +EXPORT_SYMBOL drivers/net/wireless/ath/ath10k/ath10k_core 0xbba877d0 ath10k_ce_completed_recv_next +EXPORT_SYMBOL drivers/net/wireless/ath/ath10k/ath10k_core 0xbbcdc5ae ath10k_ce_alloc_pipe +EXPORT_SYMBOL drivers/net/wireless/ath/ath10k/ath10k_core 0xbf88bb03 ath10k_warn +EXPORT_SYMBOL drivers/net/wireless/ath/ath10k/ath10k_core 0xd582472f __ath10k_ce_send_revert +EXPORT_SYMBOL drivers/net/wireless/ath/ath10k/ath10k_core 0xe16c8056 ath10k_ce_disable_interrupts +EXPORT_SYMBOL drivers/net/wireless/ath/ath10k/ath10k_core 0xe2421591 ath10k_core_fetch_board_file +EXPORT_SYMBOL drivers/net/wireless/ath/ath10k/ath10k_core 0xe34581a2 ath10k_core_create +EXPORT_SYMBOL drivers/net/wireless/ath/ath10k/ath10k_core 0xe6ec7a37 __ath10k_ce_rx_num_free_bufs +EXPORT_SYMBOL drivers/net/wireless/ath/ath10k/ath10k_core 0xea34eac1 ath10k_ce_free_pipe +EXPORT_SYMBOL drivers/net/wireless/ath/ath10k/ath10k_core 0xec2f31fc ath10k_info +EXPORT_SYMBOL drivers/net/wireless/ath/ath10k/ath10k_core 0xf524b443 ath10k_ce_num_free_src_entries +EXPORT_SYMBOL drivers/net/wireless/ath/ath6kl/ath6kl_core 0x1354043d ath6kl_warn +EXPORT_SYMBOL drivers/net/wireless/ath/ath6kl/ath6kl_core 0x2edf4978 ath6kl_core_init +EXPORT_SYMBOL drivers/net/wireless/ath/ath6kl/ath6kl_core 0x3502feef ath6kl_info +EXPORT_SYMBOL drivers/net/wireless/ath/ath6kl/ath6kl_core 0x794f4d09 ath6kl_cfg80211_suspend +EXPORT_SYMBOL drivers/net/wireless/ath/ath6kl/ath6kl_core 0x80e12727 ath6kl_core_create +EXPORT_SYMBOL drivers/net/wireless/ath/ath6kl/ath6kl_core 0x86bdabc8 ath6kl_stop_txrx +EXPORT_SYMBOL drivers/net/wireless/ath/ath6kl/ath6kl_core 0x91cfb84a ath6kl_hif_rw_comp_handler +EXPORT_SYMBOL drivers/net/wireless/ath/ath6kl/ath6kl_core 0x9626b45a ath6kl_cfg80211_resume +EXPORT_SYMBOL drivers/net/wireless/ath/ath6kl/ath6kl_core 0xb101c6cc ath6kl_hif_intr_bh_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 0xc216583a ath6kl_core_rx_complete +EXPORT_SYMBOL drivers/net/wireless/ath/ath6kl/ath6kl_core 0xd2bda435 ath6kl_core_cleanup +EXPORT_SYMBOL drivers/net/wireless/ath/ath6kl/ath6kl_core 0xddfb9c9e ath6kl_read_tgt_stats +EXPORT_SYMBOL drivers/net/wireless/ath/ath6kl/ath6kl_core 0xe7d32f10 ath6kl_core_destroy +EXPORT_SYMBOL drivers/net/wireless/ath/ath6kl/ath6kl_core 0xfb924b27 ath6kl_core_tx_complete +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_common 0x17ea6499 ath9k_cmn_spectral_init_debug +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_common 0x1ccc3081 ath9k_cmn_spectral_scan_config +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_common 0x20106837 ath9k_cmn_beacon_config_sta +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_common 0x2715b97f ath9k_cmn_get_hw_crypto_keytype +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_common 0x27a56efe ath9k_cmn_debug_recv +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_common 0x31e33c26 ath9k_cmn_spectral_scan_trigger +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_common 0x37b03926 ath9k_cmn_beacon_config_ap +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_common 0x38e1fd0e ath9k_cmn_get_channel +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_common 0x42e91efe ath9k_cmn_reload_chainmask +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_common 0x456d0e18 ath9k_cmn_debug_modal_eeprom +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_common 0x6f4915ac ath9k_cmn_rx_accept +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_common 0x8f011ccb ath9k_cmn_setup_ht_cap +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_common 0x9401dd35 ath9k_cmn_update_txpow +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_common 0xa42dd542 ath9k_cmn_beacon_config_adhoc +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_common 0xaf89e927 ath9k_cmn_init_crypto +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_common 0xb76fccc7 ath9k_cmn_debug_stat_rx +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_common 0xb92b5564 ath_cmn_process_fft +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_common 0xc57f4b21 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 0xd3656970 ath9k_cmn_debug_phy_err +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_common 0xe7082d99 ath9k_cmn_debug_base_eeprom +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_common 0xe7aaeeab ath9k_cmn_init_channels_rates +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_common 0xe7adae6b ath9k_cmn_process_rate +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_common 0xefcdb88c ath9k_cmn_rx_skb_postprocess +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_common 0xfa9942ee ath9k_cmn_process_rssi +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x010afb2f ath_gen_timer_alloc +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x01fb4066 ath9k_hw_startpcureceive +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x03948806 ath9k_hw_btcoex_init_scheme +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x0bd70aae ar9003_mci_set_bt_version +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x0c59c54a ar9003_paprd_init_table +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x0f09e17b ath9k_hw_disable_interrupts +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x0f77dafc ath9k_hw_get_tsf_offset +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x11dd9919 ath9k_hw_kill_interrupts +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x11fe29c9 ath9k_hw_updatetxtriglevel +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x190d6fa7 ath9k_hw_check_nav +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x1cec9b29 ar9003_mci_cleanup +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x1d631a32 ath9k_hw_init +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x1ead4933 ath9k_hw_txstart +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x20a575f5 ath9k_hw_disable +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x213dc2f2 ath9k_hw_puttxbuf +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x22d93498 ath9k_hw_gettsf32 +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x2b4cdd68 ath9k_hw_gpio_request_in +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x2bdd9099 ath9k_hw_computetxtime +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x2c9e950b ath9k_hw_resettxqueue +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x305e7890 ath9k_hw_wait +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x308dd05f ath9k_hw_set_tx_filter +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x361bd9a8 ath9k_hw_disable_mib_counters +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x37f9a270 ath9k_hw_beaconq_setup +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x3b1e6b7f ath9k_hw_intrpend +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x3d4618dd ath9k_hw_rxprocdesc +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x3f92d864 ath9k_hw_btcoex_init_2wire +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x46df3239 ar9003_is_paprd_enabled +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x4900b489 ath9k_hw_wow_apply_pattern +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x4b00f2ca ath9k_hw_process_rxdesc_edma +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x4c2ed319 ar9003_paprd_enable +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x4db95128 ath9k_hw_numtxpending +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x5197039a ar9003_paprd_setup_gain_table +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x527016a1 ar9003_mci_state +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x5274bd5e ath9k_hw_btcoex_enable +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x54a419e0 ath9k_hw_init_btcoex_hw +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x5a07ae8e ath9k_hw_phy_disable +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x5ac0f8bb ath9k_hw_resume_interrupts +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x5e99fd06 ath9k_hw_setup_statusring +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x648feb14 ath9k_hw_getrxfilter +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x6605dfd3 ar9003_hw_bb_watchdog_check +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x6cfb0fe1 ath9k_hw_beaconinit +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x732d4c0c ath9k_hw_set_sta_beacon_timers +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x76b6412c ath9k_hw_set_txq_props +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x7a764d7d ath9k_hw_name +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x7ddc5a06 ath9k_hw_gpio_get +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x8039dd2d ath9k_hw_write_associd +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x8256213c ath9k_hw_stop_dma_queue +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x8a7729d7 ar9003_mci_get_interrupt +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x8a970a8a ath9k_hw_getchan_noise +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x8e968276 ath9k_hw_gettxbuf +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x8ffb47b3 ar9003_mci_get_next_gpm_offset +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x9370bbd0 ath9k_hw_getnf +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x9722f479 ath9k_hw_ani_monitor +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x99860a35 ath9k_hw_wow_enable +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x9a12da93 ath9k_hw_reset_calvalid +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x9af2271b ath9k_hw_btcoex_init_mci +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x9e98a230 ath9k_hw_init_global_settings +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xa07a8470 ath9k_hw_wow_wakeup +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xa1148d92 ath9k_hw_reset +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xa41e6d53 ath9k_hw_btcoex_set_weight +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xa92b3c07 ath9k_hw_putrxbuf +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xa97290cc ath9k_hw_check_alive +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xaa181991 ath9k_hw_setopmode +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xabd0df24 ath9k_hw_setantenna +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xac48ca34 ath9k_hw_set_tsfadjust +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xaf375c3e ath9k_hw_bstuck_nfcal +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xb038ade5 ath9k_hw_stopdmarecv +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xb56286ae ar9003_mci_setup +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xb583be90 ath9k_hw_btcoex_disable +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xb65c0cae ath9k_hw_gpio_free +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xb7a977c8 ath9k_hw_gettsf64 +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xb9a8dbe0 ath9k_hw_set_interrupts +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xbb020c38 ath9k_hw_get_txq_props +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xbcb22698 ath9k_hw_setuptxqueue +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xbd21d2c4 ath9k_hw_setrxfilter +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xc007f1ef ath9k_hw_btcoex_deinit +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xc0e5d1ef ath9k_hw_set_rx_bufsize +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xc2f44653 ath9k_hw_setmcastfilter +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xc3634487 ath9k_hw_loadnf +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xc372b562 ath9k_hw_set_gpio +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xc6bb11ee ath9k_hw_settsf64 +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xc810c503 ar9003_paprd_create_curve +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xc97c9f19 ath9k_hw_abortpcurecv +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xcb5661c2 ar9003_mci_send_message +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xd3707389 ath_gen_timer_free +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xd517e7f2 ath9k_hw_reset_tsf +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xd89c8190 ar9003_paprd_populate_single_table +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xd90ae053 ath9k_hw_gpio_request_out +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xda4b0cec ath9k_hw_btcoex_set_concur_txprio +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xe383ddb1 ath9k_hw_gen_timer_start +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xe3970868 ath9k_hw_abort_tx_dma +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xe5c6328d ath9k_hw_set_txpowerlimit +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xe647c3cd ath9k_hw_releasetxqueue +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xe798ac8b ath9k_hw_setrxabort +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xe845dba7 ar9003_get_pll_sqsum_dvc +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xe849c5f1 ath9k_hw_addrxbuf_edma +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xea7e523f ath9k_hw_setpower +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xec652550 ar9003_paprd_is_done +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xed30efa6 ar9003_hw_disable_phy_restart +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xee205237 ath9k_hw_deinit +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xee8f174e ath9k_hw_setuprxdesc +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xf0736dd9 ath9k_hw_gen_timer_stop +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xf6ca6f39 ar9003_hw_bb_watchdog_dbg_info +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xf704ea88 ath_gen_timer_isr +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xf7ba36f5 ath9k_hw_btcoex_init_3wire +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xfb3057ba ath9k_hw_enable_interrupts +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xfb4b5d1b ar9003_mci_send_wlan_channels +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xfe9324b6 ath9k_hw_btcoex_bt_stomp +EXPORT_SYMBOL drivers/net/wireless/atmel/atmel 0x2128c519 init_atmel_card +EXPORT_SYMBOL drivers/net/wireless/atmel/atmel 0x2fedd346 stop_atmel_card +EXPORT_SYMBOL drivers/net/wireless/atmel/atmel 0xe184730f atmel_open +EXPORT_SYMBOL drivers/net/wireless/broadcom/brcm80211/brcmutil/brcmutil 0x115c9b5e brcmu_pktq_penq +EXPORT_SYMBOL drivers/net/wireless/broadcom/brcm80211/brcmutil/brcmutil 0x136f0f71 brcmu_pkt_buf_free_skb +EXPORT_SYMBOL drivers/net/wireless/broadcom/brcm80211/brcmutil/brcmutil 0x1684be36 brcmu_pkt_buf_get_skb +EXPORT_SYMBOL drivers/net/wireless/broadcom/brcm80211/brcmutil/brcmutil 0x1906648e brcmu_boardrev_str +EXPORT_SYMBOL drivers/net/wireless/broadcom/brcm80211/brcmutil/brcmutil 0x1965a888 brcmu_pktq_pdeq_match +EXPORT_SYMBOL drivers/net/wireless/broadcom/brcm80211/brcmutil/brcmutil 0x4fe0486d brcmu_pktq_peek_tail +EXPORT_SYMBOL drivers/net/wireless/broadcom/brcm80211/brcmutil/brcmutil 0x627160a5 brcmu_pktq_pdeq +EXPORT_SYMBOL drivers/net/wireless/broadcom/brcm80211/brcmutil/brcmutil 0x77c61b61 brcmu_pktq_pdeq_tail +EXPORT_SYMBOL drivers/net/wireless/broadcom/brcm80211/brcmutil/brcmutil 0x91d2df71 brcmu_pktq_init +EXPORT_SYMBOL drivers/net/wireless/broadcom/brcm80211/brcmutil/brcmutil 0xa17c0ccf brcmu_dotrev_str +EXPORT_SYMBOL drivers/net/wireless/broadcom/brcm80211/brcmutil/brcmutil 0xa5673103 brcmu_pktq_mlen +EXPORT_SYMBOL drivers/net/wireless/broadcom/brcm80211/brcmutil/brcmutil 0xa7e21c33 brcmu_pktq_mdeq +EXPORT_SYMBOL drivers/net/wireless/broadcom/brcm80211/brcmutil/brcmutil 0xbbc48c99 brcmu_pktq_pflush +EXPORT_SYMBOL drivers/net/wireless/broadcom/brcm80211/brcmutil/brcmutil 0xd6217d91 brcmu_d11_attach +EXPORT_SYMBOL drivers/net/wireless/broadcom/brcm80211/brcmutil/brcmutil 0xded044cf brcmu_pktq_flush +EXPORT_SYMBOL drivers/net/wireless/broadcom/brcm80211/brcmutil/brcmutil 0xe6c0750f brcmu_pktq_penq_head +EXPORT_SYMBOL drivers/net/wireless/cisco/airo 0x262c9d31 init_airo_card +EXPORT_SYMBOL drivers/net/wireless/cisco/airo 0x601a8ef3 stop_airo_card +EXPORT_SYMBOL drivers/net/wireless/cisco/airo 0xfe3aae3a reset_airo_card +EXPORT_SYMBOL drivers/net/wireless/intel/ipw2x00/libipw 0x169fe507 libipw_xmit +EXPORT_SYMBOL drivers/net/wireless/intel/ipw2x00/libipw 0x23bb1360 libipw_wx_set_encodeext +EXPORT_SYMBOL drivers/net/wireless/intel/ipw2x00/libipw 0x2a1c66c5 libipw_set_geo +EXPORT_SYMBOL drivers/net/wireless/intel/ipw2x00/libipw 0x3363515c libipw_rx_mgt +EXPORT_SYMBOL drivers/net/wireless/intel/ipw2x00/libipw 0x35047eaf libipw_networks_age +EXPORT_SYMBOL drivers/net/wireless/intel/ipw2x00/libipw 0x538d3eef free_libipw +EXPORT_SYMBOL drivers/net/wireless/intel/ipw2x00/libipw 0x5a29b270 libipw_get_channel +EXPORT_SYMBOL drivers/net/wireless/intel/ipw2x00/libipw 0x68002d4b libipw_wx_set_encode +EXPORT_SYMBOL drivers/net/wireless/intel/ipw2x00/libipw 0x772e9a50 libipw_get_geo +EXPORT_SYMBOL drivers/net/wireless/intel/ipw2x00/libipw 0x77d6c621 libipw_txb_free +EXPORT_SYMBOL drivers/net/wireless/intel/ipw2x00/libipw 0x9e6fa7d4 libipw_get_channel_flags +EXPORT_SYMBOL drivers/net/wireless/intel/ipw2x00/libipw 0xa64ad502 libipw_rx +EXPORT_SYMBOL drivers/net/wireless/intel/ipw2x00/libipw 0xaebce8e7 alloc_libipw +EXPORT_SYMBOL drivers/net/wireless/intel/ipw2x00/libipw 0xbdb28e58 libipw_channel_to_index +EXPORT_SYMBOL drivers/net/wireless/intel/ipw2x00/libipw 0xc0fb1bff libipw_wx_get_encodeext +EXPORT_SYMBOL drivers/net/wireless/intel/ipw2x00/libipw 0xc163f49f libipw_freq_to_channel +EXPORT_SYMBOL drivers/net/wireless/intel/ipw2x00/libipw 0xc3a990a4 libipw_is_valid_channel +EXPORT_SYMBOL drivers/net/wireless/intel/ipw2x00/libipw 0xc61ff192 libipw_wx_get_scan +EXPORT_SYMBOL drivers/net/wireless/intel/ipw2x00/libipw 0xe28f0a20 libipw_wx_get_encode +EXPORT_SYMBOL drivers/net/wireless/intel/ipw2x00/libipw 0xf7c62ef1 libipw_channel_to_freq +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x01fd83ef il_pm_ops +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x04fa43f1 il_wr_prph +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x0631d28f il_free_geos +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x080a51f0 il_add_station_common +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x0a45bfb2 il_connection_init_rx_config +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x0be5130b il_hdl_csa +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x0c4b0130 il_tx_queue_reset +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x0e8c0d07 il_check_rxon_cmd +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x0fea4751 il_apm_stop +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x10874f97 il_get_free_ucode_key_idx +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x15f027a2 il_chswitch_done +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x15f0c3d1 il_init_geos +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x16736b62 il_send_stats_request +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x1c22a3d6 il_dbgfs_unregister +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x22f9b1d1 il_irq_handle_error +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x25eb328c il_add_beacon_time +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x266bc157 il_clear_bit +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x2868f642 il_mac_conf_tx +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x2bf7eea6 il_queue_space +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x2efea71c il_scan_cancel_timeout +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x2f3d6612 il_tx_cmd_protection +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x326ba6a0 il_full_rxon_required +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x381814bd il_cancel_scan_deferred_work +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x395ce67b il_mac_remove_interface +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x3b1bd5a5 il_set_bit +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x3f9e5f1d il_set_rate +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x408c9432 il_force_reset +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x416bd26a il_debug_level +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x41abd21f il_eeprom_free +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x41d0136b il_tx_cmd_complete +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x42a6d918 il_get_channel_info +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x468fbe67 il_write_targ_mem +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x51b9ca53 il_free_channel_map +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x534255fe il_hdl_pm_sleep +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x53c49e46 il_set_rxon_hwcrypto +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x5a0ec292 il_alloc_txq_mem +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x5ab99d0e il_send_rxon_timing +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x5b6524a5 il_send_cmd_sync +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x5cad88d9 il_get_active_dwell_time +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x5cd5f5ea il_leds_exit +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x62f5f4cb il_eeprom_query16 +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x6371edab il_cmd_queue_free +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x63727035 _il_apm_stop +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x63749a1a il_send_add_sta +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x6395e714 il_mac_sta_remove +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x67b11721 il_rx_queue_alloc +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x6f4388af il_setup_watchdog +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x70e4323c il_mac_add_interface +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x714d57ad il_hdl_error +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x726b5c21 il_send_cmd +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x736811bc il_init_scan_params +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x774721f2 il_tx_queue_init +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x7982759f il_cmd_queue_unmap +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x79b8656e il_leds_init +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x7ab7b0c4 il_setup_scan_deferred_work +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x7c00b09d il_init_channel_map +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x7fad28a8 il_send_cmd_pdu +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x88914f00 il_get_single_channel_number +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x893b6af5 il_clear_ucode_stations +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x8b649db7 il_apm_init +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x8c7ffc3b il_scan_cancel +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x8d73aa7a il_set_rxon_channel +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x8d81ad4a il_txq_update_write_ptr +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x9184de56 il_tx_queue_unmap +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x924f79c7 il_mac_bss_info_changed +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x965b80ec il_update_stats +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x99043d8d il_mac_flush +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x996c8fdf il_rx_queue_update_write_ptr +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x9b123c44 il_read_targ_mem +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x9cc714af il_bg_watchdog +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x9e4ca89a il_free_txq_mem +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x9f97fd54 il_power_initialize +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0xa16df319 il_set_tx_power +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0xa32a9c61 il_mac_reset_tsf +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0xa67179f1 _il_poll_bit +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0xaa5b8f0c il_send_bt_config +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0xaa5ef0bc il_usecs_to_beacons +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0xab2eb196 il_eeprom_init +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0xb332c31c il_mac_change_interface +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0xb35933de il_mac_config +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0xb57f2f57 il_setup_rx_scan_handlers +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0xb611dded il_power_update_mode +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0xb65510a3 il_get_cmd_string +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0xb68905a7 il_rx_queue_space +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0xb7bd33ff il_isr +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0xbd3b4f0b il_poll_bit +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0xc09c3196 il_set_rxon_ht +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0xc6cc8209 il_get_lowest_plcp +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0xc939a231 il_mac_hw_scan +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0xca42cb30 il_tx_queue_free +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0xcb37195e il_set_flags_for_band +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0xcc22819e il_hdl_spectrum_measurement +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0xd2c4631b il_send_cmd_pdu_async +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0xd7c18fe5 il_restore_stations +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0xe4400a23 il_dbgfs_register +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0xe4945434 il_eeprom_query_addr +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0xe94c1a70 il_fill_probe_req +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0xee6a4e65 il_hdl_pm_debug_stats +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0xefcb8367 il_send_lq_cmd +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0xf3550d91 il_rd_prph +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0xf4152b5f il_get_passive_dwell_time +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0xf70a693b il_bcast_addr +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0xf8c7f21d il_set_decrypted_flag +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0xffd6097f il_is_ht40_tx_allowed +EXPORT_SYMBOL drivers/net/wireless/intel/iwlwifi/iwlwifi 0x73d6904e __tracepoint_iwlwifi_dev_ucode_wrap_event +EXPORT_SYMBOL drivers/net/wireless/intel/iwlwifi/iwlwifi 0xe45aec74 __tracepoint_iwlwifi_dev_ucode_cont_event +EXPORT_SYMBOL drivers/net/wireless/intel/iwlwifi/iwlwifi 0xe76e8c18 __tracepoint_iwlwifi_dev_ucode_event +EXPORT_SYMBOL drivers/net/wireless/intersil/hostap/hostap 0x0e01be67 hostap_set_auth_algs +EXPORT_SYMBOL drivers/net/wireless/intersil/hostap/hostap 0x13abdd5a hostap_dump_tx_header +EXPORT_SYMBOL drivers/net/wireless/intersil/hostap/hostap 0x13c6450e hostap_init_data +EXPORT_SYMBOL drivers/net/wireless/intersil/hostap/hostap 0x2ad589eb hostap_master_start_xmit +EXPORT_SYMBOL drivers/net/wireless/intersil/hostap/hostap 0x3c96b27d hostap_free_data +EXPORT_SYMBOL drivers/net/wireless/intersil/hostap/hostap 0x5057bcc6 hostap_init_proc +EXPORT_SYMBOL drivers/net/wireless/intersil/hostap/hostap 0x57e4a172 hostap_get_porttype +EXPORT_SYMBOL drivers/net/wireless/intersil/hostap/hostap 0x5d641a29 hostap_remove_proc +EXPORT_SYMBOL drivers/net/wireless/intersil/hostap/hostap 0x75934c58 hostap_set_multicast_list_queue +EXPORT_SYMBOL drivers/net/wireless/intersil/hostap/hostap 0x79301a4e hostap_set_encryption +EXPORT_SYMBOL drivers/net/wireless/intersil/hostap/hostap 0x7d0a8c11 hostap_info_init +EXPORT_SYMBOL drivers/net/wireless/intersil/hostap/hostap 0x7fb75891 hostap_dump_rx_header +EXPORT_SYMBOL drivers/net/wireless/intersil/hostap/hostap 0x824550df hostap_set_word +EXPORT_SYMBOL drivers/net/wireless/intersil/hostap/hostap 0x8275dc0c hostap_setup_dev +EXPORT_SYMBOL drivers/net/wireless/intersil/hostap/hostap 0x866bf822 hostap_info_process +EXPORT_SYMBOL drivers/net/wireless/intersil/hostap/hostap 0x8973952d hostap_80211_rx +EXPORT_SYMBOL drivers/net/wireless/intersil/hostap/hostap 0x8ac3ecb8 hostap_set_hostapd +EXPORT_SYMBOL drivers/net/wireless/intersil/hostap/hostap 0x9decfb0c hostap_set_roaming +EXPORT_SYMBOL drivers/net/wireless/intersil/hostap/hostap 0x9fea75e4 hostap_init_ap_proc +EXPORT_SYMBOL drivers/net/wireless/intersil/hostap/hostap 0xa6ef81a0 hostap_set_hostapd_sta +EXPORT_SYMBOL drivers/net/wireless/intersil/hostap/hostap 0xad559b86 hostap_set_antsel +EXPORT_SYMBOL drivers/net/wireless/intersil/hostap/hostap 0xb4b77c8b hostap_80211_get_hdrlen +EXPORT_SYMBOL drivers/net/wireless/intersil/hostap/hostap 0xc1dbbc6f hostap_handle_sta_tx_exc +EXPORT_SYMBOL drivers/net/wireless/intersil/hostap/hostap 0xc27df5c6 hostap_set_string +EXPORT_SYMBOL drivers/net/wireless/intersil/hostap/hostap 0xcff84002 hostap_remove_interface +EXPORT_SYMBOL drivers/net/wireless/intersil/hostap/hostap 0xd0e3a972 hostap_add_interface +EXPORT_SYMBOL drivers/net/wireless/intersil/hostap/hostap 0xd4e51e66 hostap_check_sta_fw_version +EXPORT_SYMBOL drivers/net/wireless/intersil/hostap/hostap 0xdffa6e39 prism2_update_comms_qual +EXPORT_SYMBOL drivers/net/wireless/intersil/hostap/hostap 0xe47b7ae0 hostap_80211_ops +EXPORT_SYMBOL drivers/net/wireless/intersil/orinoco/orinoco 0x0e31e068 free_orinocodev +EXPORT_SYMBOL drivers/net/wireless/intersil/orinoco/orinoco 0x1520b1f0 orinoco_change_mtu +EXPORT_SYMBOL drivers/net/wireless/intersil/orinoco/orinoco 0x1ee703bf orinoco_down +EXPORT_SYMBOL drivers/net/wireless/intersil/orinoco/orinoco 0x39382f2b orinoco_stop +EXPORT_SYMBOL drivers/net/wireless/intersil/orinoco/orinoco 0x3fb506a0 orinoco_init +EXPORT_SYMBOL drivers/net/wireless/intersil/orinoco/orinoco 0x4631340c orinoco_if_del +EXPORT_SYMBOL drivers/net/wireless/intersil/orinoco/orinoco 0x56a560e0 orinoco_if_add +EXPORT_SYMBOL drivers/net/wireless/intersil/orinoco/orinoco 0x896371dd orinoco_open +EXPORT_SYMBOL drivers/net/wireless/intersil/orinoco/orinoco 0x9d470635 alloc_orinocodev +EXPORT_SYMBOL drivers/net/wireless/intersil/orinoco/orinoco 0xafa19808 orinoco_tx_timeout +EXPORT_SYMBOL drivers/net/wireless/intersil/orinoco/orinoco 0xbd9bded5 __orinoco_ev_info +EXPORT_SYMBOL drivers/net/wireless/intersil/orinoco/orinoco 0xc18ca13b orinoco_up +EXPORT_SYMBOL drivers/net/wireless/intersil/orinoco/orinoco 0xd43c4c05 orinoco_set_multicast_list +EXPORT_SYMBOL drivers/net/wireless/intersil/orinoco/orinoco 0xe753484e orinoco_process_xmit_skb +EXPORT_SYMBOL drivers/net/wireless/intersil/orinoco/orinoco 0xe7a4b9b5 __orinoco_ev_rx +EXPORT_SYMBOL drivers/net/wireless/intersil/orinoco/orinoco 0xe8dc0aff hermes_struct_init +EXPORT_SYMBOL drivers/net/wireless/intersil/orinoco/orinoco 0xffe27bca orinoco_interrupt +EXPORT_SYMBOL drivers/net/wireless/mediatek/mt76/mt76 0xb93a2821 mt76_wcid_key_setup +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/btcoexist/btcoexist 0xc9cf30f3 rtl_btc_get_ops_pointer +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtl8192c/rtl8192c-common 0x0522729a _rtl92c_phy_dbm_to_txpwr_idx +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtl8192c/rtl8192c-common 0x07d29e17 _rtl92c_phy_rf_serial_write +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtl8192c/rtl8192c-common 0x10b5effd _rtl92c_phy_fw_rf_serial_write +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtl8192c/rtl8192c-common 0x220ac887 rtl92c_phy_set_txpower_level +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 0x2336efbb rtl92c_phy_set_bb_reg +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtl8192c/rtl8192c-common 0x2d668ec6 rtl92c_phy_iq_calibrate +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtl8192c/rtl8192c-common 0x30c1f45d rtl92c_dm_rf_saving +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtl8192c/rtl8192c-common 0x3f7c28ab rtl92c_bt_rssi_state_change +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtl8192c/rtl8192c-common 0x45b56f72 rtl92c_fill_h2c_cmd +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtl8192c/rtl8192c-common 0x45ed0506 _rtl92c_phy_bb8192c_config_parafile +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtl8192c/rtl8192c-common 0x4ae38d75 rtl92c_dm_write_dig +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtl8192c/rtl8192c-common 0x53b9bc57 _rtl92c_phy_set_rf_sleep +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtl8192c/rtl8192c-common 0x553e6d6e rtl92c_phy_set_rfpath_switch +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtl8192c/rtl8192c-common 0x5876a32a rtl92c_phy_ap_calibrate +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtl8192c/rtl8192c-common 0x5becd0af rtl92c_dm_watchdog +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtl8192c/rtl8192c-common 0x66901d38 rtl92c_phy_set_io_cmd +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtl8192c/rtl8192c-common 0x6a8ec81f rtl92c_dm_bt_coexist +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtl8192c/rtl8192c-common 0x721fa963 rtl92c_set_fw_joinbss_report_cmd +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtl8192c/rtl8192c-common 0x77c2a54d _rtl92c_phy_rf_serial_read +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtl8192c/rtl8192c-common 0x8550bba7 rtl92ce_phy_set_rf_on +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtl8192c/rtl8192c-common 0x85b87451 rtl92c_phy_update_txpower_dbm +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtl8192c/rtl8192c-common 0x86475b13 rtl92c_phy_lc_calibrate +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtl8192c/rtl8192c-common 0x86f68b73 rtl92c_dm_init_rate_adaptive_mask +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtl8192c/rtl8192c-common 0x8a7286c9 rtl92c_set_fw_rsvdpagepkt +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtl8192c/rtl8192c-common 0x94d7ff72 rtl92c_phy_sw_chnl +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtl8192c/rtl8192c-common 0x95847892 rtl92c_phy_rf_config +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtl8192c/rtl8192c-common 0x9642fd7d _rtl92c_phy_txpwr_idx_to_dbm +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtl8192c/rtl8192c-common 0x9ec37245 _rtl92c_store_pwrindex_diffrate_offset +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtl8192c/rtl8192c-common 0xa8ca0f24 rtl92c_phy_sw_chnl_callback +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtl8192c/rtl8192c-common 0xad597e88 rtl92c_phy_set_io +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtl8192c/rtl8192c-common 0xb956f69b rtl92c_dm_init +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtl8192c/rtl8192c-common 0xbf579fe2 _rtl92c_phy_init_bb_rf_register_definition +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtl8192c/rtl8192c-common 0xc2d6eb02 rtl92c_phy_set_bw_mode +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtl8192c/rtl8192c-common 0xc881666e rtl92c_set_fw_pwrmode_cmd +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtl8192c/rtl8192c-common 0xc944d2a6 _rtl92c_phy_fw_rf_serial_read +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtl8192c/rtl8192c-common 0xe3d918ad rtl92c_download_fw +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtl8192c/rtl8192c-common 0xef404955 rtl92c_firmware_selfreset +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtl8192c/rtl8192c-common 0xf0d577aa rtl8192_phy_check_is_legal_rfpath +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtl8192c/rtl8192c-common 0xfb4b187b rtl92c_phy_query_bb_reg +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtl8192c/rtl8192c-common 0xfefcb81e rtl92c_dm_check_txpower_tracking +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtl8192c/rtl8192c-common 0xff5f3c77 rtl92c_dm_init_edca_turbo +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtl_pci 0x24e8b1ba rtl_pci_disconnect +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtl_pci 0x34b5802f rtl_pci_probe +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtl_pci 0x7374c5d0 rtl_pci_suspend +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtl_pci 0xad4764ae rtl_pci_resume +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtl_usb 0x0212b845 rtl_usb_suspend +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtl_usb 0x0ffea39b rtl_usb_resume +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtl_usb 0x128ea23e rtl_usb_probe +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtl_usb 0x997e97f2 rtl_usb_disconnect +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtlwifi 0x034bd842 efuse_power_switch +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtlwifi 0x0b038e24 channel5g_80m +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtlwifi 0x0b505fd7 rtlwifi_rate_mapping +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtlwifi 0x1b945315 rtl_addr_delay +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtlwifi 0x298df14d rtl_dm_diginit +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtlwifi 0x30a956d7 rtl_query_rxpwrpercentage +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtlwifi 0x31c4c9f8 rtl_rx_ampdu_apply +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtlwifi 0x3490b2f1 rtl_process_phyinfo +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtlwifi 0x368951d2 rtl_signal_scale_mapping +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtlwifi 0x4ec20409 rtl_ps_disable_nic +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtlwifi 0x50e49ddd rtl_bb_delay +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtlwifi 0x54824f58 channel5g +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtlwifi 0x57013ebb rtl_phy_scan_operation_backup +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtlwifi 0x693203dd rtl_init_rfkill +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtlwifi 0x82577df2 rtl_ps_enable_nic +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtlwifi 0x85a25c42 rtl_mrate_idx_to_arfr_id +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtlwifi 0x88cba431 rtl_c2hcmd_enqueue +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtlwifi 0x8ea60059 rtl_fw_cb +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtlwifi 0x8fba4ca5 rtl_cam_del_entry +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtlwifi 0x919bafcb rtl_efuse_shadow_map_update +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtlwifi 0x91aeb1d9 rtl_cam_delete_one_entry +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtlwifi 0x970096fe efuse_read_1byte +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtlwifi 0xa0ed17c7 rtl_collect_scan_list +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtlwifi 0xaac17903 rtl_cam_reset_all_entry +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtlwifi 0xae17b241 rtl_cam_empty_entry +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtlwifi 0xaf2c08e0 efuse_shadow_read +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtlwifi 0xb314b0d0 efuse_one_byte_read +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtlwifi 0xbf9b3171 rtl_cmd_send_packet +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtlwifi 0xd27f72ee rtl_cam_add_one_entry +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtlwifi 0xdd7dde4b rtl_hal_pwrseqcmdparsing +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtlwifi 0xdeeed5e5 rtl_cam_get_free_entry +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtlwifi 0xeb4c5b17 rtl_rfreg_delay +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtlwifi 0xeb6e49fd rtl_get_tcb_desc +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtlwifi 0xebedfe5f rtl_wowlan_fw_cb +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtlwifi 0xed4852d4 rtl_cam_mark_invalid +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtlwifi 0xed7c8cf2 rtl_evm_db_to_percentage +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtlwifi 0xf7aa1aeb rtl_send_smps_action +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw88/rtw88_8723d 0x8577b310 rtw8723d_hw_spec +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw88/rtw88_8822b 0x6e97c9a2 rtw8822b_hw_spec +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw88/rtw88_8822c 0x8155a29c rtw8822c_hw_spec +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw88/rtw88_core 0x09dbe643 rtw_unregister_hw +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw88/rtw88_core 0x0ce2d96e rtw_phy_config_swing_table +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw88/rtw88_core 0x19d1169f rtw_restore_reg +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw88/rtw88_core 0x1a21baf2 rtw_power_mode_change +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw88/rtw88_core 0x1b10fb6c rtw_phy_write_rf_reg_mix +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw88/rtw88_core 0x2385f7a1 rtw_bf_set_gid_table +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw88/rtw88_core 0x248a0939 rtw_phy_write_rf_reg_sipi +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw88/rtw88_core 0x2582d08f rtw_phy_pwrtrack_avg +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw88/rtw88_core 0x286a36ce rtw_coex_read_indirect_reg +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw88/rtw88_core 0x31d9b7f5 rtw_rx_fill_rx_status +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw88/rtw88_core 0x33236384 rtw_parse_tbl_bb_pg +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw88/rtw88_core 0x33b3f3c0 rtw_debug_mask +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw88/rtw88_core 0x3b86f8fd rtw_bf_cfg_csi_rate +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw88/rtw88_core 0x3cde8dc1 rtw_core_deinit +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw88/rtw88_core 0x4005d769 rtw_phy_load_tables +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 0x519c8ba9 rtw_rate_size +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw88/rtw88_core 0x58210e60 rtw_rate_section +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw88/rtw88_core 0x5e029b38 rtw_phy_pwrtrack_get_pwridx +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw88/rtw88_core 0x5f1ba0c6 rtw_coex_write_scbd +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw88/rtw88_core 0x6999ad78 rtw_phy_cfg_rf +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw88/rtw88_core 0x7122209a rtw_set_channel_mac +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw88/rtw88_core 0x7550da51 __rtw_dbg +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw88/rtw88_core 0x76e292d0 rtw_rx_stats +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw88/rtw88_core 0x7a00aec1 rtw_phy_init +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw88/rtw88_core 0x7e199af0 rtw_bf_enable_bfee_su +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw88/rtw88_core 0x804c517e rtw_phy_read_rf +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw88/rtw88_core 0x8c279b26 rtw_bf_phy_init +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw88/rtw88_core 0x96cbabb6 check_hw_ready +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw88/rtw88_core 0x97d4b912 rtw_phy_cfg_agc +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw88/rtw88_core 0x9f1ee8be rtw_chip_info_setup +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw88/rtw88_core 0xa0200976 rtw_bf_remove_bfee_mu +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw88/rtw88_core 0xa0dd2c22 rtw_bf_remove_bfee_su +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw88/rtw88_core 0xa14edba8 rtw_phy_cfg_mac +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw88/rtw88_core 0xa85be9fe rtw_tx_fill_tx_desc +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw88/rtw88_core 0xa95a0c97 rtw_read8_physical_efuse +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw88/rtw88_core 0xbc013f6e rtw_bf_enable_bfee_mu +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw88/rtw88_core 0xbd79f1e3 rtw_tx_write_data_rsvd_page_get +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw88/rtw88_core 0xbe9bdc02 rtw_parse_tbl_phy_cond +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw88/rtw88_core 0xc091f269 rtw_phy_pwrtrack_need_iqk +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw88/rtw88_core 0xc885d6a4 rtw_coex_write_indirect_reg +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw88/rtw88_core 0xcc330993 rtw_phy_cfg_bb +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw88/rtw88_core 0xda2efbfb rtw_tx_write_data_h2c_get +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw88/rtw88_core 0xda75a012 rtw_tx_report_enqueue +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw88/rtw88_core 0xda9f0498 rtw_phy_get_tx_power_index +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw88/rtw88_core 0xdd41f4cd rtw_core_init +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw88/rtw88_core 0xdd759197 rtw_phy_pwrtrack_get_delta +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw88/rtw88_core 0xddf60156 rtw_phy_pwrtrack_thermal_changed +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw88/rtw88_core 0xe1b0c970 rtw_phy_set_tx_power_level +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw88/rtw88_core 0xe29560f5 rtw_fw_c2h_cmd_rx_irqsafe +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw88/rtw88_core 0xe68bd403 rtw_ops +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw88/rtw88_core 0xeeb8d4d2 rtw_phy_read_rf_sipi +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw88/rtw88_core 0xf34249ad rtw_fw_lps_deep_mode +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw88/rtw88_core 0xf46504f4 rtw_register_hw +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw88/rtw88_core 0xf6f4a50f rtw_fw_do_iqk +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw88/rtw88_core 0xfdbb6cb4 rtw_parse_tbl_txpwr_lmt +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw88/rtw88_pci 0x0c390bd4 rtw_pm_ops +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw88/rtw88_pci 0x729a4f01 rtw_pci_shutdown +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw88/rtw88_pci 0x94a9678e rtw_pci_probe +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw88/rtw88_pci 0xd0f68ba1 rtw_pci_remove +EXPORT_SYMBOL drivers/net/wireless/rsi/rsi_91x 0x44482e2e rsi_config_wowlan +EXPORT_SYMBOL drivers/net/wireless/ti/wlcore/wlcore 0x6a362c75 wlcore_tx_complete +EXPORT_SYMBOL drivers/net/wireless/ti/wlcore/wlcore 0x8d5a7b02 wl12xx_is_dummy_packet +EXPORT_SYMBOL drivers/net/wireless/ti/wlcore/wlcore 0xa71cab8d wl1271_free_tx_id +EXPORT_SYMBOL drivers/net/wireless/ti/wlcore/wlcore 0xe12be2ae wlcore_calc_packet_alignment +EXPORT_SYMBOL drivers/nfc/fdp/fdp 0x285f6fb9 fdp_nci_remove +EXPORT_SYMBOL drivers/nfc/fdp/fdp 0x947418c4 fdp_nci_recv_frame +EXPORT_SYMBOL drivers/nfc/fdp/fdp 0xb9c94b23 fdp_nci_probe +EXPORT_SYMBOL drivers/nfc/microread/microread 0x0e8c20af microread_probe +EXPORT_SYMBOL drivers/nfc/microread/microread 0xff2521ca microread_remove +EXPORT_SYMBOL drivers/nfc/nxp-nci/nxp-nci 0x18bc5fa5 nxp_nci_fw_recv_frame +EXPORT_SYMBOL drivers/nfc/nxp-nci/nxp-nci 0x450c5735 nxp_nci_remove +EXPORT_SYMBOL drivers/nfc/nxp-nci/nxp-nci 0xc65f8540 nxp_nci_probe +EXPORT_SYMBOL drivers/nfc/pn533/pn533 0x76f4f17f pn533_recv_frame +EXPORT_SYMBOL drivers/nfc/pn544/pn544 0x0eb728ea pn544_hci_remove +EXPORT_SYMBOL drivers/nfc/pn544/pn544 0x87921d3d pn544_hci_probe +EXPORT_SYMBOL drivers/nfc/s3fwrn5/s3fwrn5 0x2446594b s3fwrn5_recv_frame +EXPORT_SYMBOL drivers/nfc/s3fwrn5/s3fwrn5 0x6391c11b s3fwrn5_remove +EXPORT_SYMBOL drivers/nfc/s3fwrn5/s3fwrn5 0xd0c4f7b8 s3fwrn5_probe +EXPORT_SYMBOL drivers/nfc/st-nci/st-nci 0x0c2e2268 ndlc_remove +EXPORT_SYMBOL drivers/nfc/st-nci/st-nci 0x15a418d7 ndlc_recv +EXPORT_SYMBOL drivers/nfc/st-nci/st-nci 0x3b0d3e92 ndlc_probe +EXPORT_SYMBOL drivers/nfc/st-nci/st-nci 0x4c364fb9 ndlc_open +EXPORT_SYMBOL drivers/nfc/st-nci/st-nci 0x7aee5bc8 st_nci_vendor_cmds_init +EXPORT_SYMBOL drivers/nfc/st-nci/st-nci 0xa03cec69 ndlc_send +EXPORT_SYMBOL drivers/nfc/st-nci/st-nci 0xa4055963 st_nci_se_deinit +EXPORT_SYMBOL drivers/nfc/st-nci/st-nci 0xaae25bd8 st_nci_se_io +EXPORT_SYMBOL drivers/nfc/st-nci/st-nci 0xe7b1c3dc st_nci_se_init +EXPORT_SYMBOL drivers/nfc/st-nci/st-nci 0xf01eadde ndlc_close +EXPORT_SYMBOL drivers/nfc/st21nfca/st21nfca_hci 0x0fc4e93d st21nfca_hci_loopback_event_received +EXPORT_SYMBOL drivers/nfc/st21nfca/st21nfca_hci 0x16de1d5b st21nfca_vendor_cmds_init +EXPORT_SYMBOL drivers/nfc/st21nfca/st21nfca_hci 0x19268d38 st21nfca_dep_deinit +EXPORT_SYMBOL drivers/nfc/st21nfca/st21nfca_hci 0x2730e8d0 st21nfca_im_send_atr_req +EXPORT_SYMBOL drivers/nfc/st21nfca/st21nfca_hci 0x31126216 st21nfca_hci_se_io +EXPORT_SYMBOL drivers/nfc/st21nfca/st21nfca_hci 0x38a8c6ed st21nfca_dep_init +EXPORT_SYMBOL drivers/nfc/st21nfca/st21nfca_hci 0x42c5fb8a st21nfca_hci_disable_se +EXPORT_SYMBOL drivers/nfc/st21nfca/st21nfca_hci 0x5b2352a3 st21nfca_connectivity_event_received +EXPORT_SYMBOL drivers/nfc/st21nfca/st21nfca_hci 0x790ab67e st21nfca_hci_discover_se +EXPORT_SYMBOL drivers/nfc/st21nfca/st21nfca_hci 0x81e9f747 st21nfca_dep_event_received +EXPORT_SYMBOL drivers/nfc/st21nfca/st21nfca_hci 0x8dbd705d st21nfca_se_deinit +EXPORT_SYMBOL drivers/nfc/st21nfca/st21nfca_hci 0x8df1ea99 st21nfca_tm_send_dep_res +EXPORT_SYMBOL drivers/nfc/st21nfca/st21nfca_hci 0x922870a7 st21nfca_apdu_reader_event_received +EXPORT_SYMBOL drivers/nfc/st21nfca/st21nfca_hci 0x9e9db375 st21nfca_hci_probe +EXPORT_SYMBOL drivers/nfc/st21nfca/st21nfca_hci 0xa6d786ea st21nfca_hci_enable_se +EXPORT_SYMBOL drivers/nfc/st21nfca/st21nfca_hci 0xafe6be43 st21nfca_hci_remove +EXPORT_SYMBOL drivers/nfc/st21nfca/st21nfca_hci 0xf1233f34 st21nfca_se_init +EXPORT_SYMBOL drivers/nfc/st21nfca/st21nfca_hci 0xfe3ebe4a st21nfca_im_send_dep_req +EXPORT_SYMBOL drivers/ntb/ntb 0x03a9c691 ntb_msi_peer_trigger +EXPORT_SYMBOL drivers/ntb/ntb 0x1121805e ntb_register_device +EXPORT_SYMBOL drivers/ntb/ntb 0x1cb65451 __ntb_register_client +EXPORT_SYMBOL drivers/ntb/ntb 0x2fea284c ntb_msg_event +EXPORT_SYMBOL drivers/ntb/ntb 0x3d287a3e ntb_unregister_device +EXPORT_SYMBOL drivers/ntb/ntb 0x487b7a46 ntb_set_ctx +EXPORT_SYMBOL drivers/ntb/ntb 0x4a269530 ntb_msi_setup_mws +EXPORT_SYMBOL drivers/ntb/ntb 0x4b0e2b48 ntb_msi_init +EXPORT_SYMBOL drivers/ntb/ntb 0x7f7b74e0 ntb_clear_ctx +EXPORT_SYMBOL drivers/ntb/ntb 0x8681b1e6 ntb_msi_peer_addr +EXPORT_SYMBOL drivers/ntb/ntb 0x889f5994 ntb_msi_clear_mws +EXPORT_SYMBOL drivers/ntb/ntb 0x99bb6a0b ntb_default_port_number +EXPORT_SYMBOL drivers/ntb/ntb 0xabb098c2 ntb_default_peer_port_idx +EXPORT_SYMBOL drivers/ntb/ntb 0xaeb86e57 ntbm_msi_request_threaded_irq +EXPORT_SYMBOL drivers/ntb/ntb 0xb63ba0fe ntbm_msi_free_irq +EXPORT_SYMBOL drivers/ntb/ntb 0xb65a74fa ntb_db_event +EXPORT_SYMBOL drivers/ntb/ntb 0xef4e2a36 ntb_default_peer_port_number +EXPORT_SYMBOL drivers/ntb/ntb 0xf1af14b3 ntb_link_event +EXPORT_SYMBOL drivers/ntb/ntb 0xfabfbcbe ntb_default_peer_port_count +EXPORT_SYMBOL drivers/ntb/ntb 0xfdc0973a ntb_unregister_client +EXPORT_SYMBOL drivers/nvdimm/nd_btt 0x12db0b5e nvdimm_namespace_detach_btt +EXPORT_SYMBOL drivers/nvdimm/nd_btt 0x15cf62ef nvdimm_namespace_attach_btt +EXPORT_SYMBOL drivers/parport/parport 0x032d0731 parport_set_timeout +EXPORT_SYMBOL drivers/parport/parport 0x0ccb1af5 parport_read +EXPORT_SYMBOL drivers/parport/parport 0x0d783df8 parport_release +EXPORT_SYMBOL drivers/parport/parport 0x1b513f07 parport_ieee1284_read_byte +EXPORT_SYMBOL drivers/parport/parport 0x2537a0c3 parport_ieee1284_epp_write_data +EXPORT_SYMBOL drivers/parport/parport 0x2678b2a9 parport_unregister_driver +EXPORT_SYMBOL drivers/parport/parport 0x333b6eb6 parport_register_port +EXPORT_SYMBOL drivers/parport/parport 0x4d2a941b parport_ieee1284_interrupt +EXPORT_SYMBOL drivers/parport/parport 0x5e3a3912 parport_irq_handler +EXPORT_SYMBOL drivers/parport/parport 0x68505163 parport_find_base +EXPORT_SYMBOL drivers/parport/parport 0x6a35e49c parport_ieee1284_epp_write_addr +EXPORT_SYMBOL drivers/parport/parport 0x76dcad51 parport_write +EXPORT_SYMBOL drivers/parport/parport 0x7d70155c parport_announce_port +EXPORT_SYMBOL drivers/parport/parport 0x83582859 parport_ieee1284_ecp_read_data +EXPORT_SYMBOL drivers/parport/parport 0x92f8a5e2 parport_del_port +EXPORT_SYMBOL drivers/parport/parport 0x934bf490 parport_ieee1284_epp_read_addr +EXPORT_SYMBOL drivers/parport/parport 0x958c5223 parport_ieee1284_ecp_write_data +EXPORT_SYMBOL drivers/parport/parport 0x95947560 parport_negotiate +EXPORT_SYMBOL drivers/parport/parport 0x973701fd parport_remove_port +EXPORT_SYMBOL drivers/parport/parport 0xa2f91a5e parport_ieee1284_read_nibble +EXPORT_SYMBOL drivers/parport/parport 0xa51fdaae parport_register_dev_model +EXPORT_SYMBOL drivers/parport/parport 0xc36f5487 __parport_register_driver +EXPORT_SYMBOL drivers/parport/parport 0xc4924d08 parport_ieee1284_write_compat +EXPORT_SYMBOL drivers/parport/parport 0xce934c37 parport_claim +EXPORT_SYMBOL drivers/parport/parport 0xd2f6a5fd parport_wait_peripheral +EXPORT_SYMBOL drivers/parport/parport 0xda8e167c parport_ieee1284_ecp_write_addr +EXPORT_SYMBOL drivers/parport/parport 0xde704371 parport_find_number +EXPORT_SYMBOL drivers/parport/parport 0xe0b8d0e3 parport_wait_event +EXPORT_SYMBOL drivers/parport/parport 0xe13a97c0 parport_put_port +EXPORT_SYMBOL drivers/parport/parport 0xebfe8993 parport_get_port +EXPORT_SYMBOL drivers/parport/parport 0xefdc7bae parport_claim_or_block +EXPORT_SYMBOL drivers/parport/parport 0xfafcfd9f parport_unregister_device +EXPORT_SYMBOL drivers/parport/parport 0xfffec483 parport_ieee1284_epp_read_data +EXPORT_SYMBOL drivers/parport/parport_pc 0x6a3ffeed parport_pc_probe_port +EXPORT_SYMBOL drivers/parport/parport_pc 0xa9009e12 parport_pc_unregister_port +EXPORT_SYMBOL drivers/regulator/rohm-regulator 0xef1c0ea7 rohm_regulator_set_dvs_levels +EXPORT_SYMBOL drivers/rpmsg/rpmsg_core 0x0af20ad1 rpmsg_poll +EXPORT_SYMBOL drivers/rpmsg/rpmsg_core 0x14fc8843 rpmsg_destroy_ept +EXPORT_SYMBOL drivers/rpmsg/rpmsg_core 0x1e3c11d8 rpmsg_sendto +EXPORT_SYMBOL drivers/rpmsg/rpmsg_core 0x3d8dc833 rpmsg_trysend +EXPORT_SYMBOL drivers/rpmsg/rpmsg_core 0x58071775 rpmsg_unregister_device +EXPORT_SYMBOL drivers/rpmsg/rpmsg_core 0x5c38e5e0 rpmsg_trysend_offchannel +EXPORT_SYMBOL drivers/rpmsg/rpmsg_core 0x69d0e403 rpmsg_send +EXPORT_SYMBOL drivers/rpmsg/rpmsg_core 0x7ffe25fe __register_rpmsg_driver +EXPORT_SYMBOL drivers/rpmsg/rpmsg_core 0x8c0d17b4 rpmsg_create_ept +EXPORT_SYMBOL drivers/rpmsg/rpmsg_core 0xb3e7b248 rpmsg_find_device +EXPORT_SYMBOL drivers/rpmsg/rpmsg_core 0xba1b0daf unregister_rpmsg_driver +EXPORT_SYMBOL drivers/rpmsg/rpmsg_core 0xbed579d3 rpmsg_send_offchannel +EXPORT_SYMBOL drivers/rpmsg/rpmsg_core 0xee6f636f rpmsg_trysendto +EXPORT_SYMBOL drivers/rpmsg/rpmsg_core 0xf8722dc2 rpmsg_register_device +EXPORT_SYMBOL drivers/rtc/rtc-ds1685 0x48d9fffc ds1685_rtc_poweroff +EXPORT_SYMBOL drivers/scsi/esp_scsi 0x4a29ab38 scsi_esp_intr +EXPORT_SYMBOL drivers/scsi/esp_scsi 0x627bb811 scsi_esp_cmd +EXPORT_SYMBOL drivers/scsi/esp_scsi 0x8473ae20 scsi_esp_register +EXPORT_SYMBOL drivers/scsi/esp_scsi 0xb53b3b17 scsi_esp_unregister +EXPORT_SYMBOL drivers/scsi/esp_scsi 0xce454164 scsi_esp_template +EXPORT_SYMBOL drivers/scsi/fcoe/libfcoe 0x1c43f39a fcoe_ctlr_recv_flogi +EXPORT_SYMBOL drivers/scsi/fcoe/libfcoe 0x295a204e fcoe_ctlr_link_down +EXPORT_SYMBOL drivers/scsi/fcoe/libfcoe 0x414c96fb fcoe_transport_attach +EXPORT_SYMBOL drivers/scsi/fcoe/libfcoe 0x6ad0d18c fcoe_ctlr_set_fip_mode +EXPORT_SYMBOL drivers/scsi/fcoe/libfcoe 0x721620d0 fcoe_ctlr_init +EXPORT_SYMBOL drivers/scsi/fcoe/libfcoe 0x8ef7a558 fcoe_ctlr_link_up +EXPORT_SYMBOL drivers/scsi/fcoe/libfcoe 0xb1d019d6 fcoe_fcf_get_selected +EXPORT_SYMBOL drivers/scsi/fcoe/libfcoe 0xb80b087c fcoe_transport_detach +EXPORT_SYMBOL drivers/scsi/fcoe/libfcoe 0xba830928 fcoe_ctlr_els_send +EXPORT_SYMBOL drivers/scsi/fcoe/libfcoe 0xd0b04455 fcoe_ctlr_destroy +EXPORT_SYMBOL drivers/scsi/fcoe/libfcoe 0xd1d30f88 fcoe_ctlr_recv +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x0bcdb78c fc_exch_mgr_reset +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x10179ae8 fc_exch_mgr_list_clone +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x114a6ab5 fc_set_rport_loss_tmo +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x2175aaf7 fc_set_mfs +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x22b90986 fc_exch_mgr_del +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x286792b8 fc_get_host_stats +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x32fd3b13 fc_get_host_port_state +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x33a55692 fc_queuecommand +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x37eec36d fc_lport_config +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x38416362 fc_rport_terminate_io +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x3e66fbc1 fc_fcp_init +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x46af4aac fc_seq_set_resp +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x518b68d0 fc_lport_destroy +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x54f826cc fc_linkdown +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x57f16ad4 fc_eh_device_reset +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x5aafa236 fc_rport_login +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x5f00cab8 fc_seq_send +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x6089f0ad fc_fc4_register_provider +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x69219e2a fc_frame_crc_check +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x71d81ac1 _fc_frame_alloc +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x720d6e33 fc_seq_assign +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x72f699b4 fc_rport_lookup +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x76f70c67 fc_eh_abort +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x7854dc04 fc_rport_recv_req +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x7f3407a7 fc_seq_start_next +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x811811e0 fc_exch_done +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x85e01831 fc_frame_alloc_fill +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x8cd59a1c fc_elsct_init +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x8f78bc04 fc_lport_reset +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x95fe85ee fc_exch_mgr_alloc +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x9aa59b5b fc_lport_iterate +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x9b9dfb2e fc_get_host_speed +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 0xa38df985 fc_lport_logo_resp +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0xa3bcccab fc_fill_reply_hdr +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0xa953ce9b libfc_vport_create +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0xb0ddd5a1 fc_rport_flush_queue +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0xb480d9e2 fc_exch_update_stats +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0xb9c352d9 fc_lport_notifier_head +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0xbcf326b2 fc_linkup +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0xbe697df8 fc_eh_host_reset +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0xbed0728d fc_lport_init +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0xc2acc65a fc_disc_init +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0xc5b6f9ec fc_exch_recv +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0xc5e821c8 fc_lport_recv +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0xc9c7fc81 fc_elsct_send +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0xcce1fd79 fc_rport_create +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0xd1e2b432 fc_fill_hdr +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0xd2d73393 fc_fabric_login +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0xd467923a fc_exch_init +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0xd55f6ee4 fc_fabric_logoff +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0xd5c987eb fc_vport_id_lookup +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0xd8d460cb fc_fcp_destroy +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0xda40ca31 fc_rport_logoff +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0xdc25a920 fc_lport_bsg_request +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0xdc47f0a8 fc_exch_mgr_add +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0xe8b7dfe2 fc_lport_flogi_resp +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0xebe46878 fc_exch_seq_send +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0xec5463a8 fc_vport_setlink +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0xed998936 fc_lport_set_local_id +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0xee812eb8 fc_slave_alloc +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0xf9d8fbfd fc_exch_mgr_free +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0xfa4667d1 fc_seq_release +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0xfcd076fc fc_fc4_deregister_provider +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0xfe5cefa8 fc_disc_config +EXPORT_SYMBOL drivers/scsi/libsas/libsas 0x10ab8c06 sas_resume_ha +EXPORT_SYMBOL drivers/scsi/libsas/libsas 0x4a8e3d34 try_test_sas_gpio_gp_bit +EXPORT_SYMBOL drivers/scsi/libsas/libsas 0xaa8e33cd sas_prep_resume_ha +EXPORT_SYMBOL drivers/scsi/libsas/libsas 0xe03c144c sas_suspend_ha +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/megaraid/megaraid_mm 0xf5d3a7a8 mraid_mm_register_adp +EXPORT_SYMBOL drivers/scsi/qla2xxx/qla2xxx 0x010f9d7a qlt_unreg_sess +EXPORT_SYMBOL drivers/scsi/qla2xxx/qla2xxx 0x020d1166 qlt_stop_phase2 +EXPORT_SYMBOL drivers/scsi/qla2xxx/qla2xxx 0x373f469a qlt_free_cmd +EXPORT_SYMBOL drivers/scsi/qla2xxx/qla2xxx 0x43de5910 qlt_rdy_to_xfer +EXPORT_SYMBOL drivers/scsi/qla2xxx/qla2xxx 0x55e58610 qlt_stop_phase1 +EXPORT_SYMBOL drivers/scsi/qla2xxx/qla2xxx 0x5d082825 qlt_lport_deregister +EXPORT_SYMBOL drivers/scsi/qla2xxx/qla2xxx 0x7d546fdc qlt_free_mcmd +EXPORT_SYMBOL drivers/scsi/qla2xxx/qla2xxx 0x9345baf3 qlt_xmit_tm_rsp +EXPORT_SYMBOL drivers/scsi/qla2xxx/qla2xxx 0x97d04ec6 qlt_xmit_response +EXPORT_SYMBOL drivers/scsi/qla2xxx/qla2xxx 0xa2ab71ab qlt_abort_cmd +EXPORT_SYMBOL drivers/scsi/qla2xxx/qla2xxx 0xdae844ae qlt_enable_vha +EXPORT_SYMBOL drivers/scsi/qla2xxx/qla2xxx 0xe6c92c76 qlt_lport_register +EXPORT_SYMBOL drivers/scsi/raid_class 0xbb88912b raid_component_add +EXPORT_SYMBOL drivers/scsi/raid_class 0xd602e9d1 raid_class_release +EXPORT_SYMBOL drivers/scsi/raid_class 0xe449a46a raid_class_attach +EXPORT_SYMBOL drivers/scsi/scsi_transport_fc 0x1a0533ab fc_vport_terminate +EXPORT_SYMBOL drivers/scsi/scsi_transport_fc 0x375f8bbd fc_get_event_number +EXPORT_SYMBOL drivers/scsi/scsi_transport_fc 0x3865f0dc fc_host_post_vendor_event +EXPORT_SYMBOL drivers/scsi/scsi_transport_fc 0x3c99f3e6 fc_remote_port_rolechg +EXPORT_SYMBOL drivers/scsi/scsi_transport_fc 0x62542f64 fc_host_fpin_rcv +EXPORT_SYMBOL drivers/scsi/scsi_transport_fc 0x69b5afc0 fc_attach_transport +EXPORT_SYMBOL drivers/scsi/scsi_transport_fc 0x6cc19d0e fc_block_scsi_eh +EXPORT_SYMBOL drivers/scsi/scsi_transport_fc 0x8eec3dd2 fc_host_post_fc_event +EXPORT_SYMBOL drivers/scsi/scsi_transport_fc 0x98ea8977 fc_host_post_event +EXPORT_SYMBOL drivers/scsi/scsi_transport_fc 0x9db04805 fc_eh_timed_out +EXPORT_SYMBOL drivers/scsi/scsi_transport_fc 0xa3edc02f scsi_is_fc_rport +EXPORT_SYMBOL drivers/scsi/scsi_transport_fc 0xb4555af1 fc_block_rport +EXPORT_SYMBOL drivers/scsi/scsi_transport_fc 0xb56c04d4 fc_remote_port_add +EXPORT_SYMBOL drivers/scsi/scsi_transport_fc 0xbb0e54f9 fc_remote_port_delete +EXPORT_SYMBOL drivers/scsi/scsi_transport_fc 0xd66758c9 fc_remove_host +EXPORT_SYMBOL drivers/scsi/scsi_transport_fc 0xe10c70b4 fc_vport_create +EXPORT_SYMBOL drivers/scsi/scsi_transport_fc 0xe455e1a6 fc_release_transport +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0x0957ef83 sas_rphy_free +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0x104d19c7 sas_read_port_mode_page +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0x24b580b5 sas_release_transport +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0x30e17a8b sas_port_mark_backlink +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0x3bd25114 sas_rphy_delete +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0x4401948f sas_port_alloc_num +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0x4b34a7f9 sas_port_delete +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0x57b93d39 sas_port_alloc +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0x5d445523 sas_remove_children +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0x5dbb34d4 scsi_is_sas_port +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0x5fe814e3 sas_phy_add +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0x60f3716a sas_rphy_add +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0x67b91653 sas_port_add_phy +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0x75ffbf4a sas_phy_delete +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0x7b3c4434 sas_port_free +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0x82f3ba36 sas_port_get_phy +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0x8f1f2ee3 scsi_is_sas_rphy +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0x9202ef54 sas_remove_host +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0xa811b2fe sas_phy_alloc +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0xad934615 scsi_is_sas_phy +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0xadcb22b2 sas_rphy_unlink +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0xbbb029cc sas_port_add +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0xc43f35a1 sas_port_delete_phy +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0xc566d3dd sas_expander_alloc +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0xdc7d222a sas_end_device_alloc +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0xe59bd712 sas_phy_free +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0xecc7a8ee sas_rphy_remove +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0xfc2ae041 sas_get_address +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0xfcb774d5 sas_attach_transport +EXPORT_SYMBOL drivers/scsi/scsi_transport_spi 0x0be2595e spi_display_xfer_agreement +EXPORT_SYMBOL drivers/scsi/scsi_transport_spi 0x3686ea09 spi_print_msg +EXPORT_SYMBOL drivers/scsi/scsi_transport_spi 0x63936ca8 spi_schedule_dv_device +EXPORT_SYMBOL drivers/scsi/scsi_transport_spi 0x6e9b9164 spi_dv_device +EXPORT_SYMBOL drivers/scsi/scsi_transport_spi 0x8a8221c4 spi_attach_transport +EXPORT_SYMBOL drivers/scsi/scsi_transport_spi 0xaa9f3241 spi_release_transport +EXPORT_SYMBOL drivers/scsi/ufs/tc-dwc-g210 0x3e016152 tc_dwc_g210_config_20_bit +EXPORT_SYMBOL drivers/scsi/ufs/tc-dwc-g210 0x55486e56 tc_dwc_g210_config_40_bit +EXPORT_SYMBOL drivers/scsi/ufs/ufshcd-core 0x4ab96b4a ufshcd_map_desc_id_to_length +EXPORT_SYMBOL drivers/scsi/ufs/ufshcd-core 0x76546b2e ufshcd_runtime_suspend +EXPORT_SYMBOL drivers/scsi/ufs/ufshcd-core 0x7ea78f8a ufshcd_shutdown +EXPORT_SYMBOL drivers/scsi/ufs/ufshcd-core 0xc4c650c1 ufshcd_system_suspend +EXPORT_SYMBOL drivers/scsi/ufs/ufshcd-core 0xcd7a30d6 ufshcd_get_local_unipro_ver +EXPORT_SYMBOL drivers/scsi/ufs/ufshcd-core 0xcf8c2520 ufshcd_alloc_host +EXPORT_SYMBOL drivers/scsi/ufs/ufshcd-core 0xd69084c4 ufshcd_runtime_resume +EXPORT_SYMBOL drivers/scsi/ufs/ufshcd-core 0xf9a0437d ufshcd_system_resume +EXPORT_SYMBOL drivers/scsi/ufs/ufshcd-core 0xfe98466c ufshcd_runtime_idle +EXPORT_SYMBOL drivers/scsi/ufs/ufshcd-dwc 0x239f273f ufshcd_dwc_link_startup_notify +EXPORT_SYMBOL drivers/scsi/ufs/ufshcd-dwc 0xa4871691 ufshcd_dwc_dme_set_attrs +EXPORT_SYMBOL drivers/soundwire/soundwire-bus 0x16d1706b sdw_prepare_stream +EXPORT_SYMBOL drivers/soundwire/soundwire-bus 0x1b2e2ab6 sdw_bus_master_add +EXPORT_SYMBOL drivers/soundwire/soundwire-bus 0x1deee061 sdw_find_row_index +EXPORT_SYMBOL drivers/soundwire/soundwire-bus 0x398cf453 sdw_stream_remove_master +EXPORT_SYMBOL drivers/soundwire/soundwire-bus 0x4cde88bf sdw_disable_stream +EXPORT_SYMBOL drivers/soundwire/soundwire-bus 0x579b72e6 sdw_stream_add_master +EXPORT_SYMBOL drivers/soundwire/soundwire-bus 0x5b27d207 sdw_handle_slave_status +EXPORT_SYMBOL drivers/soundwire/soundwire-bus 0x60e31fbb sdw_find_col_index +EXPORT_SYMBOL drivers/soundwire/soundwire-bus 0x6d7ef4b1 sdw_stream_remove_slave +EXPORT_SYMBOL drivers/soundwire/soundwire-bus 0x71891d59 sdw_deprepare_stream +EXPORT_SYMBOL drivers/soundwire/soundwire-bus 0x71f70fb9 sdw_slave_read_prop +EXPORT_SYMBOL drivers/soundwire/soundwire-bus 0x75a8db53 sdw_nread +EXPORT_SYMBOL drivers/soundwire/soundwire-bus 0x8082345f sdw_master_read_prop +EXPORT_SYMBOL drivers/soundwire/soundwire-bus 0x9e122d79 sdw_alloc_stream +EXPORT_SYMBOL drivers/soundwire/soundwire-bus 0xacb1f8e4 sdw_write +EXPORT_SYMBOL drivers/soundwire/soundwire-bus 0xadbf3854 sdw_bus_prep_clk_stop +EXPORT_SYMBOL drivers/soundwire/soundwire-bus 0xb882c4b5 sdw_read +EXPORT_SYMBOL drivers/soundwire/soundwire-bus 0xbbec2c2e sdw_enable_stream +EXPORT_SYMBOL drivers/soundwire/soundwire-bus 0xc758f1e7 sdw_bus_master_delete +EXPORT_SYMBOL drivers/soundwire/soundwire-bus 0xd251b590 sdw_clear_slave_status +EXPORT_SYMBOL drivers/soundwire/soundwire-bus 0xd40199ff sdw_stream_add_slave +EXPORT_SYMBOL drivers/soundwire/soundwire-bus 0xd6cb6aee sdw_nwrite +EXPORT_SYMBOL drivers/soundwire/soundwire-bus 0xda5bce09 sdw_release_stream +EXPORT_SYMBOL drivers/soundwire/soundwire-bus 0xe0664af0 sdw_bus_clk_stop +EXPORT_SYMBOL drivers/soundwire/soundwire-bus 0xf170c3f4 sdw_bus_exit_clk_stop +EXPORT_SYMBOL drivers/ssb/ssb 0x079b9e82 ssb_pmu_set_ldo_voltage +EXPORT_SYMBOL drivers/ssb/ssb 0x0bba4228 ssb_driver_unregister +EXPORT_SYMBOL drivers/ssb/ssb 0x0e19d7f1 ssb_bus_powerup +EXPORT_SYMBOL drivers/ssb/ssb 0x1a730216 ssb_set_devtypedata +EXPORT_SYMBOL drivers/ssb/ssb 0x22added0 ssb_clockspeed +EXPORT_SYMBOL drivers/ssb/ssb 0x2e3e4f2b ssb_pcihost_register +EXPORT_SYMBOL drivers/ssb/ssb 0x3328e9a1 ssb_device_disable +EXPORT_SYMBOL drivers/ssb/ssb 0x374a8612 ssb_chipco_gpio_control +EXPORT_SYMBOL drivers/ssb/ssb 0x45aaf07f ssb_bus_may_powerdown +EXPORT_SYMBOL drivers/ssb/ssb 0x708f834f ssb_commit_settings +EXPORT_SYMBOL drivers/ssb/ssb 0x8befcc18 ssb_dma_translation +EXPORT_SYMBOL drivers/ssb/ssb 0x977717aa ssb_bus_sdiobus_register +EXPORT_SYMBOL drivers/ssb/ssb 0x990bf2c3 ssb_bus_suspend +EXPORT_SYMBOL drivers/ssb/ssb 0xa22a7e28 ssb_bus_resume +EXPORT_SYMBOL drivers/ssb/ssb 0xcb17f1cb ssb_admatch_base +EXPORT_SYMBOL drivers/ssb/ssb 0xd1def9bc ssb_device_is_enabled +EXPORT_SYMBOL drivers/ssb/ssb 0xdc25966c ssb_pmu_set_ldo_paref +EXPORT_SYMBOL drivers/ssb/ssb 0xdeab01cc __ssb_driver_register +EXPORT_SYMBOL drivers/ssb/ssb 0xdfc7c6ef ssb_admatch_size +EXPORT_SYMBOL drivers/ssb/ssb 0xe5b6e0c4 ssb_device_enable +EXPORT_SYMBOL drivers/ssb/ssb 0xf5db6282 ssb_pcicore_dev_irqvecs_enable +EXPORT_SYMBOL drivers/ssb/ssb 0xfd63a9e6 ssb_bus_unregister +EXPORT_SYMBOL drivers/staging/fbtft/fbtft 0x04054968 fbtft_remove_common +EXPORT_SYMBOL drivers/staging/fbtft/fbtft 0x13cf7a98 fbtft_write_reg16_bus8 +EXPORT_SYMBOL drivers/staging/fbtft/fbtft 0x15610caf fbtft_write_spi +EXPORT_SYMBOL drivers/staging/fbtft/fbtft 0x1ab5a604 fbtft_read_spi +EXPORT_SYMBOL drivers/staging/fbtft/fbtft 0x24bd736c fbtft_unregister_framebuffer +EXPORT_SYMBOL drivers/staging/fbtft/fbtft 0x314de697 fbtft_dbg_hex +EXPORT_SYMBOL drivers/staging/fbtft/fbtft 0x3730bf9a fbtft_write_vmem16_bus16 +EXPORT_SYMBOL drivers/staging/fbtft/fbtft 0x44deb706 fbtft_write_vmem16_bus9 +EXPORT_SYMBOL drivers/staging/fbtft/fbtft 0x45d66a19 fbtft_write_vmem16_bus8 +EXPORT_SYMBOL drivers/staging/fbtft/fbtft 0x4d7ede77 fbtft_register_framebuffer +EXPORT_SYMBOL drivers/staging/fbtft/fbtft 0x57029888 fbtft_write_gpio8_wr +EXPORT_SYMBOL drivers/staging/fbtft/fbtft 0x5dc9c6b6 fbtft_write_gpio16_wr_latched +EXPORT_SYMBOL drivers/staging/fbtft/fbtft 0x89c6d46f fbtft_write_reg8_bus9 +EXPORT_SYMBOL drivers/staging/fbtft/fbtft 0x9294bc38 fbtft_write_buf_dc +EXPORT_SYMBOL drivers/staging/fbtft/fbtft 0x932c73a9 fbtft_init_display +EXPORT_SYMBOL drivers/staging/fbtft/fbtft 0x935fbf15 fbtft_register_backlight +EXPORT_SYMBOL drivers/staging/fbtft/fbtft 0x98e048ba fbtft_write_reg16_bus16 +EXPORT_SYMBOL drivers/staging/fbtft/fbtft 0xa2872f9d fbtft_framebuffer_alloc +EXPORT_SYMBOL drivers/staging/fbtft/fbtft 0xa9e05ec3 fbtft_write_spi_emulate_9 +EXPORT_SYMBOL drivers/staging/fbtft/fbtft 0xb0ff5e8d fbtft_write_gpio16_wr +EXPORT_SYMBOL drivers/staging/fbtft/fbtft 0xbf54710c fbtft_write_reg8_bus8 +EXPORT_SYMBOL drivers/staging/fbtft/fbtft 0xcb27f7f5 fbtft_probe_common +EXPORT_SYMBOL drivers/staging/fbtft/fbtft 0xde273c28 fbtft_unregister_backlight +EXPORT_SYMBOL drivers/staging/fbtft/fbtft 0xe525c729 fbtft_write_vmem8_bus8 +EXPORT_SYMBOL drivers/staging/fbtft/fbtft 0xf26bea88 fbtft_framebuffer_release +EXPORT_SYMBOL drivers/staging/iio/addac/adt7316 0x5bc8657c adt7316_probe +EXPORT_SYMBOL drivers/staging/iio/meter/ade7854 0x0bb36e8f ade7854_probe +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x00298d60 rtllib_wx_get_encode +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x0733d9c0 rtllib_wx_get_rts +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x0cc71835 rtllib_stop_scan +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x1659af60 rtllib_wx_get_power +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x1b68bea7 rtllib_wx_get_name +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x1bf38e73 rtllib_wx_get_wap +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x1cc17adb alloc_rtllib +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x1d4fcfcd free_rtllib +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x22166084 rt_global_debug_component +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x2483ea21 rtllib_wx_get_mode +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x33f87bcf HT_update_self_and_peer_setting +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x458d339f rtllib_EnableIntelPromiscuousMode +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x4d01754d rtllib_wx_set_wap +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x4f0ae95e notify_wx_assoc_event +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x507548cd rtllib_wx_set_scan +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x51c122fe rtllib_wx_set_rts +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x573469fe rtllib_MgntDisconnect +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x5e9076e7 rtllib_wx_get_rate +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x631ab70c rtllib_wx_set_rawtx +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x6885ee1a rtllib_wx_set_auth +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x6c58aed1 rtllib_stop_scan_syncro +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x7bc022c3 rtllib_wx_set_freq +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x7cfd4db3 rtllib_DisableIntelPromiscuousMode +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x7df3c97b rtllib_wx_set_power +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x8a27eeea rtllib_wx_set_encode +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x9142a79d rtllib_wx_get_scan +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x92f9ba7c rtllib_sta_ps_send_null_frame +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x954cf574 rtllib_wx_set_mlme +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x96430ef4 rtllib_wx_get_essid +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x9fa799b7 rtllib_wx_set_rate +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0xa326858a rtllib_rx +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0xac48c7b7 rtllib_start_send_beacons +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0xb536000b rtllib_softmac_stop_protocol +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0xb5d2495c rtllib_ps_tx_ack +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0xb8906e77 rtllib_wx_set_gen_ie +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0xbaf7cd93 rtllib_wx_get_freq +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0xbc10507b rtllib_stop_send_beacons +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0xbd5d6d70 dot11d_init +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0xc2b5f63c rtllib_wx_set_encode_ext +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0xc8fff97f rtllib_reset_queue +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0xce06c507 rtllib_start_scan_syncro +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0xcea893ff rtllib_xmit +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0xd5aeefe3 rtllib_softmac_start_protocol +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0xd8e27d94 rtllib_act_scanning +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0xdb18a818 rtllib_get_beacon +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0xde5e8c98 RemovePeerTS +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0xdf78f620 rtllib_wlan_frequencies +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0xe5b40571 rtllib_wx_set_mode +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0xed5498cc dot11d_channel_map +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0xf28e5b8e rtllib_legal_channel +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0xfde968ef rtllib_wx_set_essid +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x028a51f7 ieee80211_wx_get_encode_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x036dd299 ieee80211_softmac_stop_protocol_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x052a7f01 HTUpdateSelfAndPeerSetting +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x05cafbfa ieee80211_wx_set_encode_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x07145063 dot11d_reset +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x095a7dbd ieee80211_reset_queue_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x0d19cdbc ieee80211_rx_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x1d66a0ff ieee80211_is_shortslot_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x1e36472a ieee80211_softmac_xmit_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x2252dd80 ieee80211_rx_mgt_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x2543d14b ieee80211_wx_set_rts_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x28ff5163 ieee80211_ps_tx_ack_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x2a139f1c ieee80211_stop_queue_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x2b741720 dot11d_scan_complete +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x4336172c ieee80211_softmac_start_protocol_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x49a2e9c2 ieee80211_start_scan_syncro_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x558cfc19 ieee80211_disassociate_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x56240f3e dot11d_update_country_ie +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x56837553 ieee80211_wx_get_name_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x5891e756 ieee80211_wx_get_power_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x5fdaba6d rtl8192u_dot11d_init +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x63560d49 ieee80211_softmac_scan_syncro_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x691b6002 ieee80211_wx_get_wap_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x731ae025 ieee80211_wx_set_gen_ie_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x749631e8 ieee80211_wx_set_auth_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x75fff352 ieee80211_wx_set_power_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x7e14e0c6 notify_wx_assoc_event_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x80cda7d3 ieee80211_wpa_supplicant_ioctl_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x81b1d4e9 ieee80211_stop_scan_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x878a03a1 is_legal_channel +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x8df2f4a3 ieee80211_txb_free_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x94077256 ieee80211_wx_set_wap_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x987b1dd6 ieee80211_wx_get_freq_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x98a0ee97 ieee80211_wx_set_scan_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x98bb4ed2 ieee80211_wx_set_essid_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x994e1733 ieee80211_wx_set_rate_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0xa3a55829 to_legal_channel +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0xb5d55ad6 ieee80211_wx_get_essid_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0xb801293b ieee80211_wx_set_encode_ext_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0xb80605e6 ieee80211_wx_set_mlme_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0xba850e9d ieee80211_wx_get_mode_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0xc370a43e ieee80211_wlan_frequencies_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0xc9a6c325 ieee80211_get_beacon_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0xcd82414e ieee80211_start_send_beacons_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0xd67e8762 ieee80211_wx_set_mode_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0xd85fc31f ieee80211_wx_get_rts_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0xecac9cfa SendDisassociation_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0xecc5fb1b ieee80211_is_54g_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0xf099f3f6 ieee80211_wx_get_encode_ext_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0xf241f421 ieee80211_wake_queue_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0xf243ea87 ieee80211_wx_set_rawtx_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0xf45b6768 ieee80211_wx_get_scan_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0xf4809429 ieee80211_wx_set_freq_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0xf5b59ecc ieee80211_wx_get_rate_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0xfcf2e3e7 dot11d_get_max_tx_pwr_in_dbm +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0xfe954fb8 ieee80211_stop_send_beacons_rsl +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x0575a890 iscsit_setup_scsi_cmd +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x08884a2d iscsit_build_logout_rsp +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x1d48d300 iscsi_target_check_login_request +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x1edb4c90 iscsit_build_rsp_pdu +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x22025a1f iscsit_aborted_task +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x24b9d972 iscsit_check_dataout_hdr +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x2ba7c29b iscsi_change_param_sprintf +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x30a797c4 iscsit_register_transport +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x3f3c2a1c iscsit_sequence_cmd +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x4036a5b8 iscsit_handle_logout_cmd +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x41cba1fb iscsit_build_datain_pdu +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x44ff69a6 iscsit_logout_post_handler +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x4588fb09 iscsit_find_cmd_from_itt +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x46df5348 iscsit_process_text_cmd +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x51771859 iscsit_process_nop_out +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x52ead8b4 iscsit_build_r2ts_for_cmd +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x5b26fc2c iscsit_release_cmd +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x5e12e192 iscsit_handle_snack +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x61bf16a8 iscsit_build_task_mgt_rsp +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x63c210bd iscsit_set_unsolicited_dataout +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x69507b3e iscsit_stop_dataout_timer +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x717b9080 iscsit_cause_connection_reinstatement +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x7bbdfdaf iscsit_handle_task_mgt_cmd +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x8143c25f iscsit_immediate_queue +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x828f704c iscsit_setup_nop_out +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x86612f45 iscsit_response_queue +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x94eb7a23 iscsit_queue_rsp +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x98750b86 iscsit_find_cmd_from_itt_or_dump +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0xa21cbe68 __iscsit_check_dataout_hdr +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0xa50d5f11 iscsit_increment_maxcmdsn +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0xc00d2bf5 iscsit_setup_text_cmd +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0xc294379c iscsit_build_nopin_rsp +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0xc523e7ac iscsit_unregister_transport +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0xc6f7007d iscsit_tmr_post_handler +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0xd2d74dbe iscsit_check_dataout_payload +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0xd5ff5b93 iscsit_reject_cmd +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0xd72d4821 iscsit_process_scsi_cmd +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0xdfa8f455 iscsit_free_cmd +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0xe0faa008 iscsit_build_text_rsp +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0xee2f45e5 iscsit_add_reject +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0xf34332f0 iscsi_find_param_from_key +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0xf8f8ebc1 iscsit_get_datain_values +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0xf9fb79c3 iscsit_build_reject +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0xfb356f2a iscsit_allocate_cmd +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0xfd387832 iscsit_add_cmd_to_immediate_queue +EXPORT_SYMBOL drivers/target/target_core_mod 0x00f6a6e9 target_undepend_item +EXPORT_SYMBOL drivers/target/target_core_mod 0x04141eb4 core_allocate_nexus_loss_ua +EXPORT_SYMBOL drivers/target/target_core_mod 0x0569d62e target_submit_cmd_map_sgls +EXPORT_SYMBOL drivers/target/target_core_mod 0x0871ffd6 transport_set_vpd_ident +EXPORT_SYMBOL drivers/target/target_core_mod 0x0e215b43 target_submit_cmd +EXPORT_SYMBOL drivers/target/target_core_mod 0x142072c0 transport_set_vpd_assoc +EXPORT_SYMBOL drivers/target/target_core_mod 0x20526657 target_lun_is_rdonly +EXPORT_SYMBOL drivers/target/target_core_mod 0x218f6c66 target_complete_cmd +EXPORT_SYMBOL drivers/target/target_core_mod 0x23e2d326 target_send_busy +EXPORT_SYMBOL drivers/target/target_core_mod 0x29f7fd53 spc_emulate_report_luns +EXPORT_SYMBOL drivers/target/target_core_mod 0x2b09a5c8 target_to_linux_sector +EXPORT_SYMBOL drivers/target/target_core_mod 0x33dc06b7 __transport_register_session +EXPORT_SYMBOL drivers/target/target_core_mod 0x37adf583 transport_deregister_session_configfs +EXPORT_SYMBOL drivers/target/target_core_mod 0x3a20a9d7 transport_set_vpd_ident_type +EXPORT_SYMBOL drivers/target/target_core_mod 0x3f84dc0d target_sess_cmd_list_set_waiting +EXPORT_SYMBOL drivers/target/target_core_mod 0x402f81e4 target_remove_session +EXPORT_SYMBOL drivers/target/target_core_mod 0x4064ef75 sbc_dif_copy_prot +EXPORT_SYMBOL drivers/target/target_core_mod 0x448f2cde transport_init_session +EXPORT_SYMBOL drivers/target/target_core_mod 0x44faaebc transport_kunmap_data_sg +EXPORT_SYMBOL drivers/target/target_core_mod 0x45e4bb4e transport_register_session +EXPORT_SYMBOL drivers/target/target_core_mod 0x5046971f target_put_sess_cmd +EXPORT_SYMBOL drivers/target/target_core_mod 0x505227bc core_tpg_check_initiator_node_acl +EXPORT_SYMBOL drivers/target/target_core_mod 0x578da301 core_tmr_alloc_req +EXPORT_SYMBOL drivers/target/target_core_mod 0x5ed23bdf transport_alloc_session_tags +EXPORT_SYMBOL drivers/target/target_core_mod 0x61a10a0c core_alua_check_nonop_delay +EXPORT_SYMBOL drivers/target/target_core_mod 0x638bffb7 target_free_sgl +EXPORT_SYMBOL drivers/target/target_core_mod 0x64e0c9ca target_setup_session +EXPORT_SYMBOL drivers/target/target_core_mod 0x66eb253b sbc_get_write_same_sectors +EXPORT_SYMBOL drivers/target/target_core_mod 0x698f185e spc_emulate_evpd_83 +EXPORT_SYMBOL drivers/target/target_core_mod 0x6b0d8bcb core_tpg_set_initiator_node_queue_depth +EXPORT_SYMBOL drivers/target/target_core_mod 0x6fb41ca7 sbc_dif_verify +EXPORT_SYMBOL drivers/target/target_core_mod 0x77795a4d passthrough_attrib_attrs +EXPORT_SYMBOL drivers/target/target_core_mod 0x78f4e226 transport_backend_register +EXPORT_SYMBOL drivers/target/target_core_mod 0x7a1d0d3c target_alloc_sgl +EXPORT_SYMBOL drivers/target/target_core_mod 0x7ac8e633 target_put_nacl +EXPORT_SYMBOL drivers/target/target_core_mod 0x7dce4873 transport_generic_request_failure +EXPORT_SYMBOL drivers/target/target_core_mod 0x8262a116 target_show_cmd +EXPORT_SYMBOL drivers/target/target_core_mod 0x847ead2c sbc_attrib_attrs +EXPORT_SYMBOL drivers/target/target_core_mod 0x84e34812 target_nacl_find_deve +EXPORT_SYMBOL drivers/target/target_core_mod 0x89da225e spc_parse_cdb +EXPORT_SYMBOL drivers/target/target_core_mod 0x8b60f333 sbc_parse_cdb +EXPORT_SYMBOL drivers/target/target_core_mod 0x901c97d2 target_unregister_template +EXPORT_SYMBOL drivers/target/target_core_mod 0x90a1f637 core_tpg_deregister +EXPORT_SYMBOL drivers/target/target_core_mod 0x940bced2 core_tpg_get_initiator_node_acl +EXPORT_SYMBOL drivers/target/target_core_mod 0x9f0bb33f target_tpg_has_node_acl +EXPORT_SYMBOL drivers/target/target_core_mod 0xa1e7dbf1 transport_copy_sense_to_cmd +EXPORT_SYMBOL drivers/target/target_core_mod 0xa238c8f8 core_tpg_register +EXPORT_SYMBOL drivers/target/target_core_mod 0xa3603fcf transport_free_session +EXPORT_SYMBOL drivers/target/target_core_mod 0xacb7211e target_depend_item +EXPORT_SYMBOL drivers/target/target_core_mod 0xb190d3bd target_cmd_init_cdb +EXPORT_SYMBOL drivers/target/target_core_mod 0xb1e107f4 transport_alloc_session +EXPORT_SYMBOL drivers/target/target_core_mod 0xb22270c8 transport_wait_for_tasks +EXPORT_SYMBOL drivers/target/target_core_mod 0xb55855ab transport_generic_new_cmd +EXPORT_SYMBOL drivers/target/target_core_mod 0xb8f9621a target_complete_cmd_with_length +EXPORT_SYMBOL drivers/target/target_core_mod 0xbb30b44e transport_lookup_cmd_lun +EXPORT_SYMBOL drivers/target/target_core_mod 0xbd7190c1 transport_init_se_cmd +EXPORT_SYMBOL drivers/target/target_core_mod 0xbe797410 target_show_dynamic_sessions +EXPORT_SYMBOL drivers/target/target_core_mod 0xc2c95735 core_tpg_set_initiator_node_tag +EXPORT_SYMBOL drivers/target/target_core_mod 0xcc3ed954 target_register_template +EXPORT_SYMBOL drivers/target/target_core_mod 0xce8dbf47 passthrough_parse_cdb +EXPORT_SYMBOL drivers/target/target_core_mod 0xd07924df transport_send_check_condition_and_sense +EXPORT_SYMBOL drivers/target/target_core_mod 0xd0eaff03 target_configure_unmap_from_queue +EXPORT_SYMBOL drivers/target/target_core_mod 0xd1e907dc transport_deregister_session +EXPORT_SYMBOL drivers/target/target_core_mod 0xd21ffe57 transport_handle_cdb_direct +EXPORT_SYMBOL drivers/target/target_core_mod 0xd277f62f transport_generic_free_cmd +EXPORT_SYMBOL drivers/target/target_core_mod 0xd6146d8a target_submit_tmr +EXPORT_SYMBOL drivers/target/target_core_mod 0xe04ec2c8 target_cmd_parse_cdb +EXPORT_SYMBOL drivers/target/target_core_mod 0xe1e305b6 transport_generic_handle_tmr +EXPORT_SYMBOL drivers/target/target_core_mod 0xe30344fc transport_kmap_data_sg +EXPORT_SYMBOL drivers/target/target_core_mod 0xe5b86fa6 passthrough_pr_attrib_attrs +EXPORT_SYMBOL drivers/target/target_core_mod 0xe67eb2da target_execute_cmd +EXPORT_SYMBOL drivers/target/target_core_mod 0xefbab50f transport_lookup_tmr_lun +EXPORT_SYMBOL drivers/target/target_core_mod 0xf2a7a2ed target_backend_unregister +EXPORT_SYMBOL drivers/target/target_core_mod 0xf3c2dfe0 transport_set_vpd_proto_id +EXPORT_SYMBOL drivers/target/target_core_mod 0xf78f267a spc_emulate_inquiry_std +EXPORT_SYMBOL drivers/target/target_core_mod 0xf94c2272 target_get_sess_cmd +EXPORT_SYMBOL drivers/target/target_core_mod 0xfe37ffad target_wait_for_sess_cmds +EXPORT_SYMBOL drivers/target/target_core_mod 0xff824085 sbc_get_device_type +EXPORT_SYMBOL drivers/usb/class/cdc-wdm 0x5bd9dfa8 usb_cdc_wdm_register +EXPORT_SYMBOL drivers/usb/gadget/libcomposite 0xed6364df usb_os_desc_prepare_interf_dir +EXPORT_SYMBOL drivers/usb/host/sl811-hcd 0x559cce23 sl811h_driver +EXPORT_SYMBOL drivers/usb/serial/usb_wwan 0x11786c44 usb_wwan_resume +EXPORT_SYMBOL drivers/usb/serial/usb_wwan 0x417b9f3c usb_wwan_open +EXPORT_SYMBOL drivers/usb/serial/usb_wwan 0x500b3b16 usb_wwan_tiocmget +EXPORT_SYMBOL drivers/usb/serial/usb_wwan 0x5d6cbba1 usb_wwan_write +EXPORT_SYMBOL drivers/usb/serial/usb_wwan 0x5dc01971 usb_wwan_get_serial_info +EXPORT_SYMBOL drivers/usb/serial/usb_wwan 0xb3178729 usb_wwan_close +EXPORT_SYMBOL drivers/usb/serial/usb_wwan 0xb65f624e usb_wwan_port_remove +EXPORT_SYMBOL drivers/usb/serial/usb_wwan 0xbb62c3cb usb_wwan_set_serial_info +EXPORT_SYMBOL drivers/usb/serial/usb_wwan 0xcd116502 usb_wwan_dtr_rts +EXPORT_SYMBOL drivers/usb/serial/usb_wwan 0xd149c112 usb_wwan_chars_in_buffer +EXPORT_SYMBOL drivers/usb/serial/usb_wwan 0xe95255f7 usb_wwan_tiocmset +EXPORT_SYMBOL drivers/usb/serial/usb_wwan 0xea81a311 usb_wwan_suspend +EXPORT_SYMBOL drivers/usb/serial/usb_wwan 0xf2c5e48d usb_wwan_write_room +EXPORT_SYMBOL drivers/usb/serial/usbserial 0x48fe532e usb_serial_resume +EXPORT_SYMBOL drivers/usb/serial/usbserial 0x67563f47 usb_serial_suspend +EXPORT_SYMBOL drivers/vfio/mdev/mdev 0x0652d3cb mdev_set_drvdata +EXPORT_SYMBOL drivers/vfio/mdev/mdev 0x2e459c9f mdev_register_device +EXPORT_SYMBOL drivers/vfio/mdev/mdev 0x3da6a9f3 mdev_unregister_driver +EXPORT_SYMBOL drivers/vfio/mdev/mdev 0x4dec5796 mdev_set_iommu_device +EXPORT_SYMBOL drivers/vfio/mdev/mdev 0x5247d206 mdev_get_iommu_device +EXPORT_SYMBOL drivers/vfio/mdev/mdev 0x5ae22622 mdev_dev +EXPORT_SYMBOL drivers/vfio/mdev/mdev 0x7c329829 mdev_from_dev +EXPORT_SYMBOL drivers/vfio/mdev/mdev 0xaf44c338 mdev_parent_dev +EXPORT_SYMBOL drivers/vfio/mdev/mdev 0xb2126698 mdev_unregister_device +EXPORT_SYMBOL drivers/vfio/mdev/mdev 0xbd567709 mdev_uuid +EXPORT_SYMBOL drivers/vfio/mdev/mdev 0xbeb96f5f mdev_register_driver +EXPORT_SYMBOL drivers/vfio/mdev/mdev 0xccce5c30 mdev_get_drvdata +EXPORT_SYMBOL drivers/vhost/vhost 0x12ddc313 vhost_chr_write_iter +EXPORT_SYMBOL drivers/vhost/vhost 0x326a5d66 vhost_chr_poll +EXPORT_SYMBOL drivers/vhost/vringh 0x3b304ebb vringh_iov_push_user +EXPORT_SYMBOL drivers/vhost/vringh 0x3ecc1eea vringh_getdesc_kern +EXPORT_SYMBOL drivers/vhost/vringh 0x4311cd91 vringh_iov_pull_user +EXPORT_SYMBOL drivers/vhost/vringh 0x44d6f41b vringh_notify_enable_kern +EXPORT_SYMBOL drivers/vhost/vringh 0x4b6a6e23 vringh_iov_pull_iotlb +EXPORT_SYMBOL drivers/vhost/vringh 0x4d0529ee vringh_complete_multi_user +EXPORT_SYMBOL drivers/vhost/vringh 0x56f694fc vringh_abandon_kern +EXPORT_SYMBOL drivers/vhost/vringh 0x58bc86ac vringh_complete_user +EXPORT_SYMBOL drivers/vhost/vringh 0x5aa88061 vringh_init_user +EXPORT_SYMBOL drivers/vhost/vringh 0x5e47ee29 vringh_notify_enable_user +EXPORT_SYMBOL drivers/vhost/vringh 0x6d95262b vringh_getdesc_user +EXPORT_SYMBOL drivers/vhost/vringh 0x80ad788a vringh_notify_disable_user +EXPORT_SYMBOL drivers/vhost/vringh 0x85665842 vringh_notify_enable_iotlb +EXPORT_SYMBOL drivers/vhost/vringh 0x8701069c vringh_abandon_iotlb +EXPORT_SYMBOL drivers/vhost/vringh 0x8bfb5a2b vringh_complete_iotlb +EXPORT_SYMBOL drivers/vhost/vringh 0x8d40c6f4 vringh_getdesc_iotlb +EXPORT_SYMBOL drivers/vhost/vringh 0x8e78a074 vringh_need_notify_user +EXPORT_SYMBOL drivers/vhost/vringh 0x91b5a92c vringh_abandon_user +EXPORT_SYMBOL drivers/vhost/vringh 0x97fa07e9 vringh_iov_push_kern +EXPORT_SYMBOL drivers/vhost/vringh 0xac2d6746 vringh_init_kern +EXPORT_SYMBOL drivers/vhost/vringh 0xaf01a583 vringh_set_iotlb +EXPORT_SYMBOL drivers/vhost/vringh 0xbf4f4fbd vringh_need_notify_iotlb +EXPORT_SYMBOL drivers/vhost/vringh 0xd3a14d7d vringh_complete_kern +EXPORT_SYMBOL drivers/vhost/vringh 0xde804bb9 vringh_iov_pull_kern +EXPORT_SYMBOL drivers/vhost/vringh 0xe544457e vringh_notify_disable_iotlb +EXPORT_SYMBOL drivers/vhost/vringh 0xee1c7df3 vringh_init_iotlb +EXPORT_SYMBOL drivers/vhost/vringh 0xf1bbb2ad vringh_need_notify_kern +EXPORT_SYMBOL drivers/vhost/vringh 0xf6784994 vringh_iov_push_iotlb +EXPORT_SYMBOL drivers/vhost/vringh 0xff6e6a53 vringh_notify_disable_kern +EXPORT_SYMBOL drivers/video/backlight/lcd 0x30ecbeab lcd_device_unregister +EXPORT_SYMBOL drivers/video/backlight/lcd 0x4c0165e6 devm_lcd_device_unregister +EXPORT_SYMBOL drivers/video/backlight/lcd 0xc9353f67 lcd_device_register +EXPORT_SYMBOL drivers/video/backlight/lcd 0xe01e72ae 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 0x2a0e1e77 svga_tilefill +EXPORT_SYMBOL drivers/video/fbdev/core/svgalib 0x4ab38ef2 svga_set_default_crt_regs +EXPORT_SYMBOL drivers/video/fbdev/core/svgalib 0x6987483f svga_tilecursor +EXPORT_SYMBOL drivers/video/fbdev/core/svgalib 0x759ac5f5 svga_get_tilemax +EXPORT_SYMBOL drivers/video/fbdev/core/svgalib 0x82a64090 svga_tileblit +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 0x8ed9cdea svga_get_caps +EXPORT_SYMBOL drivers/video/fbdev/core/svgalib 0xb0ab2b2e svga_check_timings +EXPORT_SYMBOL drivers/video/fbdev/core/svgalib 0xb6ddb13d svga_settile +EXPORT_SYMBOL drivers/video/fbdev/core/svgalib 0xb76186d1 svga_tilecopy +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/syscopyarea 0x4446bf9b sys_copyarea +EXPORT_SYMBOL drivers/video/fbdev/core/sysfillrect 0x8d403713 sys_fillrect +EXPORT_SYMBOL drivers/video/fbdev/core/sysimgblt 0x1ecc06ed sys_imageblit +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 0x94a78335 cyber2000fb_attach +EXPORT_SYMBOL drivers/video/fbdev/cyber2000fb 0xb39f68d1 cyber2000fb_enable_extregs +EXPORT_SYMBOL drivers/video/fbdev/matrox/g450_pll 0x12f9420b matroxfb_g450_setpll_cond +EXPORT_SYMBOL drivers/video/fbdev/matrox/g450_pll 0x836a766e matroxfb_g450_setclk +EXPORT_SYMBOL drivers/video/fbdev/matrox/g450_pll 0x92a2485b g450_mnp2f +EXPORT_SYMBOL drivers/video/fbdev/matrox/matroxfb_DAC1064 0x022c6465 matrox_G100 +EXPORT_SYMBOL drivers/video/fbdev/matrox/matroxfb_DAC1064 0x4e6eaff8 matrox_mystique +EXPORT_SYMBOL drivers/video/fbdev/matrox/matroxfb_DAC1064 0xb5163464 DAC1064_global_init +EXPORT_SYMBOL drivers/video/fbdev/matrox/matroxfb_DAC1064 0xf1944d4c DAC1064_global_restore +EXPORT_SYMBOL drivers/video/fbdev/matrox/matroxfb_Ti3026 0xc9d0b5e3 matrox_millennium +EXPORT_SYMBOL drivers/video/fbdev/matrox/matroxfb_accel 0xb26cbc48 matrox_cfbX_init +EXPORT_SYMBOL drivers/video/fbdev/matrox/matroxfb_base 0x5db96239 matroxfb_unregister_driver +EXPORT_SYMBOL drivers/video/fbdev/matrox/matroxfb_base 0x7303b704 matroxfb_enable_irq +EXPORT_SYMBOL drivers/video/fbdev/matrox/matroxfb_base 0x82906c97 matroxfb_register_driver +EXPORT_SYMBOL drivers/video/fbdev/matrox/matroxfb_base 0xb884574a matroxfb_wait_for_sync +EXPORT_SYMBOL drivers/video/fbdev/matrox/matroxfb_g450 0x6ad8d22b matroxfb_g450_connect +EXPORT_SYMBOL drivers/video/fbdev/matrox/matroxfb_g450 0xc09bc3f5 matroxfb_g450_shutdown +EXPORT_SYMBOL drivers/video/fbdev/matrox/matroxfb_misc 0x25cf8049 matroxfb_PLL_calcclock +EXPORT_SYMBOL drivers/video/fbdev/matrox/matroxfb_misc 0x45d7b747 matroxfb_vgaHWrestore +EXPORT_SYMBOL drivers/video/fbdev/matrox/matroxfb_misc 0x572dd1f6 matroxfb_DAC_out +EXPORT_SYMBOL drivers/video/fbdev/matrox/matroxfb_misc 0xa8f518fc matroxfb_vgaHWinit +EXPORT_SYMBOL drivers/video/fbdev/matrox/matroxfb_misc 0xcdc90c64 matroxfb_var2my +EXPORT_SYMBOL drivers/video/fbdev/matrox/matroxfb_misc 0xf66565b2 matroxfb_read_pins +EXPORT_SYMBOL drivers/video/fbdev/matrox/matroxfb_misc 0xfe0554b4 matroxfb_DAC_in +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/w1/slaves/w1_ds2780 0x5de0ba04 w1_ds2780_io +EXPORT_SYMBOL drivers/w1/slaves/w1_ds2780 0xe3e9582f w1_ds2780_eeprom_cmd +EXPORT_SYMBOL drivers/w1/slaves/w1_ds2781 0xcd7186cb w1_ds2781_eeprom_cmd +EXPORT_SYMBOL drivers/w1/slaves/w1_ds2781 0xdccb6021 w1_ds2781_io +EXPORT_SYMBOL drivers/w1/wire 0x09a5c989 w1_unregister_family +EXPORT_SYMBOL drivers/w1/wire 0x2ad602c0 w1_register_family +EXPORT_SYMBOL drivers/w1/wire 0xd1b67535 w1_add_master_device +EXPORT_SYMBOL drivers/w1/wire 0xf626bdd5 w1_remove_master_device +EXPORT_SYMBOL drivers/watchdog/bd70528_wdt 0x124fb5a0 bd70528_wdt_unlock +EXPORT_SYMBOL drivers/watchdog/bd70528_wdt 0x30c16dbc bd70528_wdt_lock +EXPORT_SYMBOL drivers/watchdog/bd70528_wdt 0xe86081aa bd70528_wdt_set +EXPORT_SYMBOL fs/fscache/fscache 0x14b11fef __fscache_alloc_page +EXPORT_SYMBOL fs/fscache/fscache 0x1859c9f2 __fscache_wait_on_invalidate +EXPORT_SYMBOL fs/fscache/fscache 0x18713ed2 fscache_object_init +EXPORT_SYMBOL fs/fscache/fscache 0x187d4115 fscache_mark_page_cached +EXPORT_SYMBOL fs/fscache/fscache 0x1b333d78 __fscache_acquire_cookie +EXPORT_SYMBOL fs/fscache/fscache 0x1ce441fa fscache_io_error +EXPORT_SYMBOL fs/fscache/fscache 0x25060731 fscache_add_cache +EXPORT_SYMBOL fs/fscache/fscache 0x2f177afd fscache_check_aux +EXPORT_SYMBOL fs/fscache/fscache 0x38364417 fscache_op_complete +EXPORT_SYMBOL fs/fscache/fscache 0x3e055965 __fscache_register_netfs +EXPORT_SYMBOL fs/fscache/fscache 0x44c38d41 fscache_mark_pages_cached +EXPORT_SYMBOL fs/fscache/fscache 0x47c9a46f fscache_object_mark_killed +EXPORT_SYMBOL fs/fscache/fscache 0x524441ff __fscache_enable_cookie +EXPORT_SYMBOL fs/fscache/fscache 0x5263c34e __fscache_wait_on_page_write +EXPORT_SYMBOL fs/fscache/fscache 0x52dce117 __fscache_attr_changed +EXPORT_SYMBOL fs/fscache/fscache 0x642178b0 __fscache_relinquish_cookie +EXPORT_SYMBOL fs/fscache/fscache 0x65794820 __fscache_uncache_page +EXPORT_SYMBOL fs/fscache/fscache 0x74530ecd fscache_op_debug_id +EXPORT_SYMBOL fs/fscache/fscache 0x78998ba7 __fscache_update_cookie +EXPORT_SYMBOL fs/fscache/fscache 0x7e2d0c59 __fscache_maybe_release_page +EXPORT_SYMBOL fs/fscache/fscache 0x7e9b0979 __fscache_readpages_cancel +EXPORT_SYMBOL fs/fscache/fscache 0x88450aa5 fscache_enqueue_operation +EXPORT_SYMBOL fs/fscache/fscache 0x91e99abf fscache_withdraw_cache +EXPORT_SYMBOL fs/fscache/fscache 0x99a58ddd __fscache_invalidate +EXPORT_SYMBOL fs/fscache/fscache 0x9f9d19f0 __fscache_read_or_alloc_pages +EXPORT_SYMBOL fs/fscache/fscache 0xa0adf2ee fscache_object_retrying_stale +EXPORT_SYMBOL fs/fscache/fscache 0xad00d42a fscache_object_lookup_negative +EXPORT_SYMBOL fs/fscache/fscache 0xb6af2133 fscache_init_cache +EXPORT_SYMBOL fs/fscache/fscache 0xc0ca3713 __fscache_read_or_alloc_page +EXPORT_SYMBOL fs/fscache/fscache 0xc1a99984 __fscache_check_consistency +EXPORT_SYMBOL fs/fscache/fscache 0xc22ddd1a fscache_cache_cleared_wq +EXPORT_SYMBOL fs/fscache/fscache 0xc2bb52e3 __fscache_check_page_write +EXPORT_SYMBOL fs/fscache/fscache 0xc7ccc64f __fscache_unregister_netfs +EXPORT_SYMBOL fs/fscache/fscache 0xda8645b3 fscache_object_destroy +EXPORT_SYMBOL fs/fscache/fscache 0xddc47e66 __fscache_disable_cookie +EXPORT_SYMBOL fs/fscache/fscache 0xe01fabda fscache_fsdef_index +EXPORT_SYMBOL fs/fscache/fscache 0xee7f3222 fscache_put_operation +EXPORT_SYMBOL fs/fscache/fscache 0xeefe64c6 fscache_obtained_object +EXPORT_SYMBOL fs/fscache/fscache 0xf2053264 __fscache_uncache_all_inode_pages +EXPORT_SYMBOL fs/fscache/fscache 0xf554aa6f __fscache_write_page +EXPORT_SYMBOL fs/fscache/fscache 0xf8c336b6 fscache_operation_init +EXPORT_SYMBOL fs/ocfs2/cluster/ocfs2_nodemanager 0xbfd7d7a2 o2hb_global_heartbeat_active +EXPORT_SYMBOL fs/quota/quota_tree 0x2f4b48c6 qtree_release_dquot +EXPORT_SYMBOL fs/quota/quota_tree 0x80061dfd qtree_read_dquot +EXPORT_SYMBOL fs/quota/quota_tree 0x98237375 qtree_get_next_id +EXPORT_SYMBOL fs/quota/quota_tree 0xaf7fc186 qtree_delete_dquot +EXPORT_SYMBOL fs/quota/quota_tree 0xc0a5402a qtree_write_dquot +EXPORT_SYMBOL fs/quota/quota_tree 0xed6ea629 qtree_entry_unused +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 0xaa8106bc crc8_populate_msb +EXPORT_SYMBOL lib/crc8 0xc3cd034d crc8_populate_lsb +EXPORT_SYMBOL lib/crc8 0xe2aae5cc crc8 +EXPORT_SYMBOL lib/crypto/libarc4 0x2bb32ad1 arc4_setkey +EXPORT_SYMBOL lib/crypto/libarc4 0xcd47fcc4 arc4_crypt +EXPORT_SYMBOL lib/crypto/libblake2s 0x7bcc24fd blake2s256_hmac +EXPORT_SYMBOL lib/crypto/libblake2s 0xa3cefaa0 blake2s_update +EXPORT_SYMBOL lib/crypto/libblake2s 0xadae6df8 blake2s_final +EXPORT_SYMBOL lib/crypto/libblake2s-generic 0x755f4ba3 blake2s_compress_generic +EXPORT_SYMBOL lib/crypto/libchacha 0xcec122d7 chacha_crypt_generic +EXPORT_SYMBOL lib/crypto/libchacha20poly1305 0x147c3f2e chacha20poly1305_encrypt +EXPORT_SYMBOL lib/crypto/libchacha20poly1305 0x1c679fe2 chacha20poly1305_decrypt +EXPORT_SYMBOL lib/crypto/libchacha20poly1305 0x37b34b92 chacha20poly1305_encrypt_sg_inplace +EXPORT_SYMBOL lib/crypto/libchacha20poly1305 0x5b19e187 chacha20poly1305_decrypt_sg_inplace +EXPORT_SYMBOL lib/crypto/libchacha20poly1305 0xbaf4d923 xchacha20poly1305_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 0x4dba97c6 poly1305_core_setkey +EXPORT_SYMBOL lib/crypto/libpoly1305 0xbcb90cb3 poly1305_core_emit +EXPORT_SYMBOL lib/libcrc32c 0x89a0cd52 crc32c_impl +EXPORT_SYMBOL lib/libcrc32c 0xb15b4109 crc32c +EXPORT_SYMBOL lib/lru_cache 0x0641307b lc_destroy +EXPORT_SYMBOL lib/lru_cache 0x098d2ed9 lc_try_get +EXPORT_SYMBOL lib/lru_cache 0x2d47ac83 lc_committed +EXPORT_SYMBOL lib/lru_cache 0x2f3dcecb lc_index_of +EXPORT_SYMBOL lib/lru_cache 0x4522d82a lc_reset +EXPORT_SYMBOL lib/lru_cache 0x4cf5f5a8 lc_is_used +EXPORT_SYMBOL lib/lru_cache 0x5752f31b lc_del +EXPORT_SYMBOL lib/lru_cache 0x7257beee lc_element_by_index +EXPORT_SYMBOL lib/lru_cache 0x7515ef06 lc_seq_printf_stats +EXPORT_SYMBOL lib/lru_cache 0x9134feb7 lc_get +EXPORT_SYMBOL lib/lru_cache 0xb672aa97 lc_create +EXPORT_SYMBOL lib/lru_cache 0xbfbe53d5 lc_get_cumulative +EXPORT_SYMBOL lib/lru_cache 0xc3a98c1d lc_try_lock +EXPORT_SYMBOL lib/lru_cache 0xcc979a91 lc_set +EXPORT_SYMBOL lib/lru_cache 0xe53a26f2 lc_seq_dump_details +EXPORT_SYMBOL lib/lru_cache 0xefec290a lc_find +EXPORT_SYMBOL lib/lru_cache 0xfd525ec7 lc_put +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 0xc8e3332b raid6_gflog +EXPORT_SYMBOL lib/raid6/raid6_pq 0xcc4ee841 raid6_gfexi +EXPORT_SYMBOL lib/raid6/raid6_pq 0xd91319d6 raid6_gfmul +EXPORT_SYMBOL lib/raid6/raid6_pq 0xefc78e77 raid6_empty_zero_page +EXPORT_SYMBOL net/6lowpan/6lowpan 0x190980e2 lowpan_nhc_del +EXPORT_SYMBOL net/6lowpan/6lowpan 0x37f0882e lowpan_register_netdevice +EXPORT_SYMBOL net/6lowpan/6lowpan 0x62359d2e lowpan_unregister_netdev +EXPORT_SYMBOL net/6lowpan/6lowpan 0x9eb92f9f lowpan_register_netdev +EXPORT_SYMBOL net/6lowpan/6lowpan 0xb29643b0 lowpan_unregister_netdevice +EXPORT_SYMBOL net/6lowpan/6lowpan 0xe1024896 lowpan_nhc_add +EXPORT_SYMBOL net/802/p8022 0x21e1d9bc register_8022_client +EXPORT_SYMBOL net/802/p8022 0xf03d949b unregister_8022_client +EXPORT_SYMBOL net/802/psnap 0x5cc51604 register_snap_client +EXPORT_SYMBOL net/802/psnap 0xaffe4caf unregister_snap_client +EXPORT_SYMBOL net/9p/9pnet 0x021cb0eb p9_client_cb +EXPORT_SYMBOL net/9p/9pnet 0x0fadcbeb p9_client_create_dotl +EXPORT_SYMBOL net/9p/9pnet 0x1084f97c v9fs_register_trans +EXPORT_SYMBOL net/9p/9pnet 0x16ef64d2 v9fs_unregister_trans +EXPORT_SYMBOL net/9p/9pnet 0x18bab12d p9_is_proto_dotl +EXPORT_SYMBOL net/9p/9pnet 0x1ed10be5 p9_client_getlock_dotl +EXPORT_SYMBOL net/9p/9pnet 0x20523f72 p9_client_fcreate +EXPORT_SYMBOL net/9p/9pnet 0x22e7034b p9_is_proto_dotu +EXPORT_SYMBOL net/9p/9pnet 0x2bbb298e p9_release_pages +EXPORT_SYMBOL net/9p/9pnet 0x325fc12b p9_client_setattr +EXPORT_SYMBOL net/9p/9pnet 0x32889a0c p9_client_attach +EXPORT_SYMBOL net/9p/9pnet 0x3789a7dc p9_client_walk +EXPORT_SYMBOL net/9p/9pnet 0x37fa9f38 p9_client_read_once +EXPORT_SYMBOL net/9p/9pnet 0x3d73a797 p9_errstr2errno +EXPORT_SYMBOL net/9p/9pnet 0x4c538ea2 v9fs_get_default_trans +EXPORT_SYMBOL net/9p/9pnet 0x566b5275 p9_client_rename +EXPORT_SYMBOL net/9p/9pnet 0x5cd6f5f4 p9_client_unlinkat +EXPORT_SYMBOL net/9p/9pnet 0x6820f3bf p9_client_symlink +EXPORT_SYMBOL net/9p/9pnet 0x6cc3cc43 p9_tag_lookup +EXPORT_SYMBOL net/9p/9pnet 0x6e46cb0f p9_client_readdir +EXPORT_SYMBOL net/9p/9pnet 0x6f8d746b p9dirent_read +EXPORT_SYMBOL net/9p/9pnet 0x73e898f2 p9_client_statfs +EXPORT_SYMBOL net/9p/9pnet 0x904d62af p9_client_begin_disconnect +EXPORT_SYMBOL net/9p/9pnet 0x9057d007 p9_client_mknod_dotl +EXPORT_SYMBOL net/9p/9pnet 0x939bdb96 p9_client_readlink +EXPORT_SYMBOL net/9p/9pnet 0x94313ee5 p9_client_write +EXPORT_SYMBOL net/9p/9pnet 0x954215ca p9_client_wstat +EXPORT_SYMBOL net/9p/9pnet 0x984c5e73 p9_fcall_fini +EXPORT_SYMBOL net/9p/9pnet 0x9b390aa1 p9_client_disconnect +EXPORT_SYMBOL net/9p/9pnet 0xa5255fea p9_client_stat +EXPORT_SYMBOL net/9p/9pnet 0xa78c4d73 p9_client_lock_dotl +EXPORT_SYMBOL net/9p/9pnet 0xb0023f63 p9_client_create +EXPORT_SYMBOL net/9p/9pnet 0xb2d4263a p9_client_read +EXPORT_SYMBOL net/9p/9pnet 0xb331edf2 p9_client_mkdir_dotl +EXPORT_SYMBOL net/9p/9pnet 0xb6b55293 p9_client_remove +EXPORT_SYMBOL net/9p/9pnet 0xb79f25fd p9_parse_header +EXPORT_SYMBOL net/9p/9pnet 0xb8be2d20 p9_client_clunk +EXPORT_SYMBOL net/9p/9pnet 0xc06560c5 v9fs_get_trans_by_name +EXPORT_SYMBOL net/9p/9pnet 0xc57400ed p9_show_client_options +EXPORT_SYMBOL net/9p/9pnet 0xce00d612 p9stat_read +EXPORT_SYMBOL net/9p/9pnet 0xce65245e p9_client_getattr_dotl +EXPORT_SYMBOL net/9p/9pnet 0xd2a5bd17 p9_client_renameat +EXPORT_SYMBOL net/9p/9pnet 0xd384c683 p9stat_free +EXPORT_SYMBOL net/9p/9pnet 0xdb4de3d1 p9_client_fsync +EXPORT_SYMBOL net/9p/9pnet 0xe58a3360 p9_error_init +EXPORT_SYMBOL net/9p/9pnet 0xebefc314 p9_client_open +EXPORT_SYMBOL net/9p/9pnet 0xf41a88ee p9_client_link +EXPORT_SYMBOL net/9p/9pnet 0xf5a666a6 p9_client_destroy +EXPORT_SYMBOL net/9p/9pnet 0xfb019d3e p9_req_put +EXPORT_SYMBOL net/appletalk/appletalk 0x0f9ea136 atrtr_get_dev +EXPORT_SYMBOL net/appletalk/appletalk 0x19e1270a alloc_ltalkdev +EXPORT_SYMBOL net/appletalk/appletalk 0x4b59d404 aarp_send_ddp +EXPORT_SYMBOL net/appletalk/appletalk 0xd83e2121 atalk_find_dev_addr +EXPORT_SYMBOL net/atm/atm 0x01b9fb70 atm_dev_lookup +EXPORT_SYMBOL net/atm/atm 0x1f387491 atm_dev_signal_change +EXPORT_SYMBOL net/atm/atm 0x2876ed17 atm_init_aal5 +EXPORT_SYMBOL net/atm/atm 0x2cc2d52d vcc_hash +EXPORT_SYMBOL net/atm/atm 0x32d28427 atm_dev_release_vccs +EXPORT_SYMBOL net/atm/atm 0x33f77abd atm_dev_register +EXPORT_SYMBOL net/atm/atm 0x4443d399 atm_proc_root +EXPORT_SYMBOL net/atm/atm 0x59c34ff0 vcc_release_async +EXPORT_SYMBOL net/atm/atm 0x653fe6a6 vcc_insert_socket +EXPORT_SYMBOL net/atm/atm 0x7b32a79e atm_charge +EXPORT_SYMBOL net/atm/atm 0x9246240d atm_alloc_charge +EXPORT_SYMBOL net/atm/atm 0x9feaf287 sonet_subtract_stats +EXPORT_SYMBOL net/atm/atm 0xaa024146 sonet_copy_stats +EXPORT_SYMBOL net/atm/atm 0xca87b453 vcc_sklist_lock +EXPORT_SYMBOL net/atm/atm 0xd2e299a5 vcc_process_recv_queue +EXPORT_SYMBOL net/atm/atm 0xd3e7dba8 deregister_atm_ioctl +EXPORT_SYMBOL net/atm/atm 0xd5873d34 register_atm_ioctl +EXPORT_SYMBOL net/atm/atm 0xeb0fa5db atm_dev_deregister +EXPORT_SYMBOL net/atm/atm 0xf49bc67a atm_pcr_goal +EXPORT_SYMBOL net/ax25/ax25 0x0a1bd0c2 ax25_linkfail_register +EXPORT_SYMBOL net/ax25/ax25 0x14cecd59 ax25_display_timer +EXPORT_SYMBOL net/ax25/ax25 0x242852b9 ax25_uid_policy +EXPORT_SYMBOL net/ax25/ax25 0x33417859 ax25_find_cb +EXPORT_SYMBOL net/ax25/ax25 0x4502c65a asc2ax +EXPORT_SYMBOL net/ax25/ax25 0x53dea1ff ax2asc +EXPORT_SYMBOL net/ax25/ax25 0x64f8f62f ax25_listen_release +EXPORT_SYMBOL net/ax25/ax25 0x8ede9e26 ax25_protocol_release +EXPORT_SYMBOL net/ax25/ax25 0xb9bb09bd ax25_listen_register +EXPORT_SYMBOL net/ax25/ax25 0xc0347de9 ax25_ip_xmit +EXPORT_SYMBOL net/ax25/ax25 0xc1444946 ax25cmp +EXPORT_SYMBOL net/ax25/ax25 0xc4c8e3a2 ax25_header_ops +EXPORT_SYMBOL net/ax25/ax25 0xd05d3c14 ax25_send_frame +EXPORT_SYMBOL net/ax25/ax25 0xd43ecbf1 null_ax25_address +EXPORT_SYMBOL net/ax25/ax25 0xdabb5c28 ax25_linkfail_release +EXPORT_SYMBOL net/ax25/ax25 0xee02e420 ax25_findbyuid +EXPORT_SYMBOL net/bluetooth/bluetooth 0x02aa9932 bt_procfs_init +EXPORT_SYMBOL net/bluetooth/bluetooth 0x0718b8b7 bt_info +EXPORT_SYMBOL net/bluetooth/bluetooth 0x183ebf0d l2cap_register_user +EXPORT_SYMBOL net/bluetooth/bluetooth 0x214e4265 bt_warn +EXPORT_SYMBOL net/bluetooth/bluetooth 0x267f8c8d hci_mgmt_chan_unregister +EXPORT_SYMBOL net/bluetooth/bluetooth 0x33652e8b l2cap_chan_close +EXPORT_SYMBOL net/bluetooth/bluetooth 0x35c3cc74 bt_sock_ioctl +EXPORT_SYMBOL net/bluetooth/bluetooth 0x3a9a92b5 l2cap_is_socket +EXPORT_SYMBOL net/bluetooth/bluetooth 0x3ed54e77 hci_reset_dev +EXPORT_SYMBOL net/bluetooth/bluetooth 0x41cd6990 hci_free_dev +EXPORT_SYMBOL net/bluetooth/bluetooth 0x44192097 bt_sock_register +EXPORT_SYMBOL net/bluetooth/bluetooth 0x47906ba0 __hci_cmd_sync_ev +EXPORT_SYMBOL net/bluetooth/bluetooth 0x47e65f66 bt_accept_enqueue +EXPORT_SYMBOL net/bluetooth/bluetooth 0x4dc8ff7d hci_mgmt_chan_register +EXPORT_SYMBOL net/bluetooth/bluetooth 0x537053b0 hci_unregister_dev +EXPORT_SYMBOL net/bluetooth/bluetooth 0x585671cb hci_conn_switch_role +EXPORT_SYMBOL net/bluetooth/bluetooth 0x65eda3af bt_accept_unlink +EXPORT_SYMBOL net/bluetooth/bluetooth 0x668ed2ba hci_set_hw_info +EXPORT_SYMBOL net/bluetooth/bluetooth 0x68581f4a bt_sock_poll +EXPORT_SYMBOL net/bluetooth/bluetooth 0x68b4f235 hci_recv_frame +EXPORT_SYMBOL net/bluetooth/bluetooth 0x6a3db34c hci_suspend_dev +EXPORT_SYMBOL net/bluetooth/bluetooth 0x6bafbbce hci_get_route +EXPORT_SYMBOL net/bluetooth/bluetooth 0x6f22557b hci_conn_security +EXPORT_SYMBOL net/bluetooth/bluetooth 0x6f48c9bd hci_resume_dev +EXPORT_SYMBOL net/bluetooth/bluetooth 0x74f9919d l2cap_conn_put +EXPORT_SYMBOL net/bluetooth/bluetooth 0x7aad008b bt_to_errno +EXPORT_SYMBOL net/bluetooth/bluetooth 0x7b33ad94 bt_sock_stream_recvmsg +EXPORT_SYMBOL net/bluetooth/bluetooth 0x7b5ce5c3 baswap +EXPORT_SYMBOL net/bluetooth/bluetooth 0x7b8c32f1 bt_err +EXPORT_SYMBOL net/bluetooth/bluetooth 0x7e8e3379 l2cap_conn_get +EXPORT_SYMBOL net/bluetooth/bluetooth 0x82c8a9eb bt_sock_wait_state +EXPORT_SYMBOL net/bluetooth/bluetooth 0x88eb9415 bt_procfs_cleanup +EXPORT_SYMBOL net/bluetooth/bluetooth 0x8fea24bd bt_sock_unregister +EXPORT_SYMBOL net/bluetooth/bluetooth 0x9359bccc hci_unregister_cb +EXPORT_SYMBOL net/bluetooth/bluetooth 0xac9c0523 __hci_cmd_sync +EXPORT_SYMBOL net/bluetooth/bluetooth 0xae291363 bt_accept_dequeue +EXPORT_SYMBOL net/bluetooth/bluetooth 0xae4f8850 hci_register_dev +EXPORT_SYMBOL net/bluetooth/bluetooth 0xaf952628 bt_sock_reclassify_lock +EXPORT_SYMBOL net/bluetooth/bluetooth 0xb7ef3e00 hci_recv_diag +EXPORT_SYMBOL net/bluetooth/bluetooth 0xc650c05d hci_alloc_dev +EXPORT_SYMBOL net/bluetooth/bluetooth 0xcff772a9 bt_sock_wait_ready +EXPORT_SYMBOL net/bluetooth/bluetooth 0xd39db175 l2cap_unregister_user +EXPORT_SYMBOL net/bluetooth/bluetooth 0xd60d8703 bt_sock_unlink +EXPORT_SYMBOL net/bluetooth/bluetooth 0xd70c7d46 hci_conn_check_secure +EXPORT_SYMBOL net/bluetooth/bluetooth 0xd7613212 bt_err_ratelimited +EXPORT_SYMBOL net/bluetooth/bluetooth 0xd8cd5f87 __hci_cmd_send +EXPORT_SYMBOL net/bluetooth/bluetooth 0xddacccf6 bt_warn_ratelimited +EXPORT_SYMBOL net/bluetooth/bluetooth 0xeb4f7ce1 bt_sock_recvmsg +EXPORT_SYMBOL net/bluetooth/bluetooth 0xf2091875 hci_cmd_sync +EXPORT_SYMBOL net/bluetooth/bluetooth 0xf24bede1 bt_sock_link +EXPORT_SYMBOL net/bluetooth/bluetooth 0xf35c50fe hci_register_cb +EXPORT_SYMBOL net/bluetooth/bluetooth 0xffa7d720 hci_set_fw_info +EXPORT_SYMBOL net/bridge/netfilter/ebtables 0x2baebc0c ebt_unregister_table +EXPORT_SYMBOL net/bridge/netfilter/ebtables 0x43a7faa4 ebt_register_table +EXPORT_SYMBOL net/bridge/netfilter/ebtables 0x892d4624 ebt_do_table +EXPORT_SYMBOL net/caif/caif 0x1446b60a caif_client_register_refcnt +EXPORT_SYMBOL net/caif/caif 0x2a09f713 cfpkt_fromnative +EXPORT_SYMBOL net/caif/caif 0x31e739da caif_connect_client +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 0x63298fb6 get_cfcnfg +EXPORT_SYMBOL net/caif/caif 0x7067d470 cfcnfg_add_phy_layer +EXPORT_SYMBOL net/caif/caif 0x839ddb7b cfcnfg_set_phy_state +EXPORT_SYMBOL net/caif/caif 0x9e3e305d cfpkt_set_prio +EXPORT_SYMBOL net/caif/caif 0xb57b7c4d caif_disconnect_client +EXPORT_SYMBOL net/caif/caif 0xb7b6874e caif_free_client +EXPORT_SYMBOL net/caif/caif 0xdf08fba1 caif_enroll_dev +EXPORT_SYMBOL net/can/can 0x1a68c739 can_proto_unregister +EXPORT_SYMBOL net/can/can 0x2e7cb270 can_rx_register +EXPORT_SYMBOL net/can/can 0x915426e8 can_sock_destruct +EXPORT_SYMBOL net/can/can 0x98cb15f9 can_send +EXPORT_SYMBOL net/can/can 0xb201206f can_proto_register +EXPORT_SYMBOL net/can/can 0xe6a2c9e2 can_rx_unregister +EXPORT_SYMBOL net/ceph/libceph 0x005c8ea2 osd_req_op_extent_osd_data_bvecs +EXPORT_SYMBOL net/ceph/libceph 0x094cec41 ceph_monc_open_session +EXPORT_SYMBOL net/ceph/libceph 0x0a6098c8 ceph_msg_dump +EXPORT_SYMBOL net/ceph/libceph 0x10b443d8 ceph_osdc_cancel_request +EXPORT_SYMBOL net/ceph/libceph 0x12dd80f4 ceph_auth_add_authorizer_challenge +EXPORT_SYMBOL net/ceph/libceph 0x1546c158 osd_req_op_extent_osd_data_bio +EXPORT_SYMBOL net/ceph/libceph 0x165b1948 ceph_pagelist_free_reserve +EXPORT_SYMBOL net/ceph/libceph 0x17498e6a ceph_release_page_vector +EXPORT_SYMBOL net/ceph/libceph 0x1aa50e83 ceph_pg_poolid_by_name +EXPORT_SYMBOL net/ceph/libceph 0x1c420e15 ceph_reset_client_addr +EXPORT_SYMBOL net/ceph/libceph 0x2087719e ceph_oid_copy +EXPORT_SYMBOL net/ceph/libceph 0x2101cbc9 ceph_oid_destroy +EXPORT_SYMBOL net/ceph/libceph 0x225290a7 ceph_cls_break_lock +EXPORT_SYMBOL net/ceph/libceph 0x28c1f046 ceph_con_init +EXPORT_SYMBOL net/ceph/libceph 0x2a983d26 ceph_pagelist_release +EXPORT_SYMBOL net/ceph/libceph 0x334c4a4f ceph_msg_get +EXPORT_SYMBOL net/ceph/libceph 0x335588a1 ceph_print_client_options +EXPORT_SYMBOL net/ceph/libceph 0x350e8633 ceph_compare_options +EXPORT_SYMBOL net/ceph/libceph 0x35d34b9b ceph_destroy_client +EXPORT_SYMBOL net/ceph/libceph 0x384bb098 ceph_copy_from_page_vector +EXPORT_SYMBOL net/ceph/libceph 0x38f2d94e ceph_file_to_extents +EXPORT_SYMBOL net/ceph/libceph 0x3c8d7111 ceph_get_num_objects +EXPORT_SYMBOL net/ceph/libceph 0x3ff154a4 ceph_copy_to_page_vector +EXPORT_SYMBOL net/ceph/libceph 0x417a9131 ceph_oloc_destroy +EXPORT_SYMBOL net/ceph/libceph 0x466b85b8 libceph_compatible +EXPORT_SYMBOL net/ceph/libceph 0x476bcfea ceph_auth_verify_authorizer_reply +EXPORT_SYMBOL net/ceph/libceph 0x47790a45 ceph_osdc_call +EXPORT_SYMBOL net/ceph/libceph 0x4848b0bf ceph_msg_put +EXPORT_SYMBOL net/ceph/libceph 0x4afa6f25 ceph_auth_invalidate_authorizer +EXPORT_SYMBOL net/ceph/libceph 0x4c16bc63 osd_req_op_extent_dup_last +EXPORT_SYMBOL net/ceph/libceph 0x4c9ca4e2 ceph_monc_stop +EXPORT_SYMBOL net/ceph/libceph 0x4d021bc3 ceph_osdc_list_watchers +EXPORT_SYMBOL net/ceph/libceph 0x4efebcc1 ceph_osdc_copy_from +EXPORT_SYMBOL net/ceph/libceph 0x50a181df ceph_auth_update_authorizer +EXPORT_SYMBOL net/ceph/libceph 0x57baf885 ceph_str_hash +EXPORT_SYMBOL net/ceph/libceph 0x599adfcf ceph_pg_to_acting_primary +EXPORT_SYMBOL net/ceph/libceph 0x5aeeee62 ceph_oid_aprintf +EXPORT_SYMBOL net/ceph/libceph 0x5f730d61 ceph_auth_is_authenticated +EXPORT_SYMBOL net/ceph/libceph 0x6293743d osd_req_op_cls_request_data_bvecs +EXPORT_SYMBOL net/ceph/libceph 0x6304a3a2 osd_req_op_init +EXPORT_SYMBOL net/ceph/libceph 0x63492334 ceph_monc_blacklist_add +EXPORT_SYMBOL net/ceph/libceph 0x63758856 ceph_str_hash_name +EXPORT_SYMBOL net/ceph/libceph 0x67f0f036 osd_req_op_cls_request_data_pagelist +EXPORT_SYMBOL net/ceph/libceph 0x6972452c ceph_messenger_init +EXPORT_SYMBOL net/ceph/libceph 0x6a7a38a0 ceph_pr_addr +EXPORT_SYMBOL net/ceph/libceph 0x6ab038c0 ceph_messenger_fini +EXPORT_SYMBOL net/ceph/libceph 0x6b662f51 ceph_osdc_maybe_request_map +EXPORT_SYMBOL net/ceph/libceph 0x6ea82a28 ceph_osdc_put_request +EXPORT_SYMBOL net/ceph/libceph 0x7358e4c4 ceph_alloc_options +EXPORT_SYMBOL net/ceph/libceph 0x7a12bd42 ceph_osdc_watch +EXPORT_SYMBOL net/ceph/libceph 0x7c1e23f8 ceph_check_fsid +EXPORT_SYMBOL net/ceph/libceph 0x86f632a5 osd_req_op_cls_init +EXPORT_SYMBOL net/ceph/libceph 0x86fca7e4 ceph_put_snap_context +EXPORT_SYMBOL net/ceph/libceph 0x89a84963 ceph_msg_data_add_pagelist +EXPORT_SYMBOL net/ceph/libceph 0x8a8bd1aa ceph_monc_validate_auth +EXPORT_SYMBOL net/ceph/libceph 0x8d225b37 ceph_monc_init +EXPORT_SYMBOL net/ceph/libceph 0x8e03c1d8 ceph_osdc_notify +EXPORT_SYMBOL net/ceph/libceph 0x8f1f117f osd_req_op_raw_data_in_pages +EXPORT_SYMBOL net/ceph/libceph 0x983379a5 ceph_cls_assert_locked +EXPORT_SYMBOL net/ceph/libceph 0x9907e78f ceph_cls_set_cookie +EXPORT_SYMBOL net/ceph/libceph 0x9b1510b3 ceph_osdc_new_request +EXPORT_SYMBOL net/ceph/libceph 0x9bc6b539 ceph_find_or_create_string +EXPORT_SYMBOL net/ceph/libceph 0x9bd2790e ceph_cls_lock_info +EXPORT_SYMBOL net/ceph/libceph 0x9ca95932 ceph_create_snap_context +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 0xa0864f2a osd_req_op_extent_init +EXPORT_SYMBOL net/ceph/libceph 0xa0bc47de ceph_pg_pool_name_by_id +EXPORT_SYMBOL net/ceph/libceph 0xa1a7d3c7 ceph_osdc_abort_requests +EXPORT_SYMBOL net/ceph/libceph 0xa241b4e8 ceph_osdc_update_epoch_barrier +EXPORT_SYMBOL net/ceph/libceph 0xa41f4784 ceph_object_locator_to_pg +EXPORT_SYMBOL net/ceph/libceph 0xa606d69e ceph_con_open +EXPORT_SYMBOL net/ceph/libceph 0xa66244ed ceph_alloc_page_vector +EXPORT_SYMBOL net/ceph/libceph 0xa698f998 ceph_free_lockers +EXPORT_SYMBOL net/ceph/libceph 0xa8bfc1eb ceph_cls_unlock +EXPORT_SYMBOL net/ceph/libceph 0xaa586b73 osd_req_op_cls_request_data_pages +EXPORT_SYMBOL net/ceph/libceph 0xab1f4850 osd_req_op_cls_response_data_pages +EXPORT_SYMBOL net/ceph/libceph 0xac672c88 ceph_osdc_unwatch +EXPORT_SYMBOL net/ceph/libceph 0xad703657 ceph_auth_destroy_authorizer +EXPORT_SYMBOL net/ceph/libceph 0xafb8a407 ceph_msgr_flush +EXPORT_SYMBOL net/ceph/libceph 0xb0865544 ceph_osdc_flush_notifies +EXPORT_SYMBOL net/ceph/libceph 0xb0e72adf ceph_monc_got_map +EXPORT_SYMBOL net/ceph/libceph 0xb0fc2468 ceph_osdc_clear_abort_err +EXPORT_SYMBOL net/ceph/libceph 0xb3cd7ee4 ceph_copy_user_to_page_vector +EXPORT_SYMBOL net/ceph/libceph 0xb54676fa ceph_msg_type_name +EXPORT_SYMBOL net/ceph/libceph 0xb72c162e ceph_buffer_release +EXPORT_SYMBOL net/ceph/libceph 0xb739fbf9 osd_req_op_xattr_init +EXPORT_SYMBOL net/ceph/libceph 0xbc370a4c ceph_msg_data_add_pages +EXPORT_SYMBOL net/ceph/libceph 0xbd2f79ae ceph_oloc_copy +EXPORT_SYMBOL net/ceph/libceph 0xbd8c1313 ceph_destroy_options +EXPORT_SYMBOL net/ceph/libceph 0xbe2fb501 ceph_msg_data_add_bio +EXPORT_SYMBOL net/ceph/libceph 0xbe3879aa ceph_get_snap_context +EXPORT_SYMBOL net/ceph/libceph 0xbef0cb53 osd_req_op_extent_update +EXPORT_SYMBOL net/ceph/libceph 0xbfa04e06 ceph_msg_new2 +EXPORT_SYMBOL net/ceph/libceph 0xc355da50 ceph_parse_param +EXPORT_SYMBOL net/ceph/libceph 0xc366bfa1 ceph_pagelist_truncate +EXPORT_SYMBOL net/ceph/libceph 0xc6eb015a ceph_osdc_alloc_messages +EXPORT_SYMBOL net/ceph/libceph 0xc75b8310 ceph_wait_for_latest_osdmap +EXPORT_SYMBOL net/ceph/libceph 0xc77b28b7 ceph_con_send +EXPORT_SYMBOL net/ceph/libceph 0xc8c46513 osd_req_op_extent_osd_data +EXPORT_SYMBOL net/ceph/libceph 0xc8e06434 ceph_osdc_alloc_request +EXPORT_SYMBOL net/ceph/libceph 0xca80437b ceph_extent_to_file +EXPORT_SYMBOL net/ceph/libceph 0xcb8d9546 osd_req_op_extent_osd_data_pagelist +EXPORT_SYMBOL net/ceph/libceph 0xcc762aa6 ceph_con_keepalive +EXPORT_SYMBOL net/ceph/libceph 0xce33e4e9 ceph_msg_data_add_bvecs +EXPORT_SYMBOL net/ceph/libceph 0xcf610a67 __ceph_open_session +EXPORT_SYMBOL net/ceph/libceph 0xd0bc3705 osd_req_op_extent_osd_data_pages +EXPORT_SYMBOL net/ceph/libceph 0xd2373cf2 ceph_monc_want_map +EXPORT_SYMBOL net/ceph/libceph 0xd25788db ceph_osdc_start_request +EXPORT_SYMBOL net/ceph/libceph 0xd4162db4 ceph_client_addr +EXPORT_SYMBOL net/ceph/libceph 0xd4eb7735 ceph_decode_entity_addr +EXPORT_SYMBOL net/ceph/libceph 0xd5abb841 ceph_monc_renew_subs +EXPORT_SYMBOL net/ceph/libceph 0xd707e50a ceph_client_gid +EXPORT_SYMBOL net/ceph/libceph 0xdbf79865 ceph_zero_page_vector_range +EXPORT_SYMBOL net/ceph/libceph 0xde631d3e ceph_create_client +EXPORT_SYMBOL net/ceph/libceph 0xdf6ef4a1 ceph_oid_printf +EXPORT_SYMBOL net/ceph/libceph 0xdfc091f9 ceph_entity_type_name +EXPORT_SYMBOL net/ceph/libceph 0xe1d42a86 ceph_put_page_vector +EXPORT_SYMBOL net/ceph/libceph 0xe30d509b ceph_open_session +EXPORT_SYMBOL net/ceph/libceph 0xe59e2fb0 ceph_monc_get_version_async +EXPORT_SYMBOL net/ceph/libceph 0xe61a68c4 osd_req_op_extent_osd_data_bvec_pos +EXPORT_SYMBOL net/ceph/libceph 0xe76e7226 ceph_pagelist_alloc +EXPORT_SYMBOL net/ceph/libceph 0xe97c43bf ceph_monc_wait_osdmap +EXPORT_SYMBOL net/ceph/libceph 0xeae64a72 ceph_con_close +EXPORT_SYMBOL net/ceph/libceph 0xeaeaca3c ceph_pg_pool_flags +EXPORT_SYMBOL net/ceph/libceph 0xeb3f17b5 ceph_monc_do_statfs +EXPORT_SYMBOL net/ceph/libceph 0xeb7d3715 ceph_osdc_notify_ack +EXPORT_SYMBOL net/ceph/libceph 0xebed59da ceph_cls_lock +EXPORT_SYMBOL net/ceph/libceph 0xee120c03 ceph_release_string +EXPORT_SYMBOL net/ceph/libceph 0xeec3661a osd_req_op_alloc_hint_init +EXPORT_SYMBOL net/ceph/libceph 0xeef6cfa3 ceph_iterate_extents +EXPORT_SYMBOL net/ceph/libceph 0xef4f3678 ceph_msg_new +EXPORT_SYMBOL net/ceph/libceph 0xefaf3d78 ceph_osdc_sync +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 0xf0df268f ceph_auth_create_authorizer +EXPORT_SYMBOL net/ceph/libceph 0xf456088a ceph_osdc_get_request +EXPORT_SYMBOL net/ceph/libceph 0xf458fe9e ceph_osdc_wait_request +EXPORT_SYMBOL net/ceph/libceph 0xfe095ae4 ceph_monc_get_version +EXPORT_SYMBOL net/ceph/libceph 0xff789c44 ceph_parse_mon_ips +EXPORT_SYMBOL net/dccp/dccp_ipv4 0x7003f0f4 dccp_syn_ack_timeout +EXPORT_SYMBOL net/dccp/dccp_ipv4 0xb05e6456 dccp_req_err +EXPORT_SYMBOL net/dsa/dsa_core 0xa613b63e dsa_port_vid_add +EXPORT_SYMBOL net/dsa/dsa_core 0xe6849cb0 dsa_port_vid_del +EXPORT_SYMBOL net/ieee802154/ieee802154 0x08de36f0 wpan_phy_unregister +EXPORT_SYMBOL net/ieee802154/ieee802154 0x14ced4f0 wpan_phy_register +EXPORT_SYMBOL net/ieee802154/ieee802154 0x403e591b wpan_phy_for_each +EXPORT_SYMBOL net/ieee802154/ieee802154 0x49550afb wpan_phy_new +EXPORT_SYMBOL net/ieee802154/ieee802154 0x55777197 wpan_phy_find +EXPORT_SYMBOL net/ieee802154/ieee802154 0xeef26b8c wpan_phy_free +EXPORT_SYMBOL net/ipv4/fou 0x16ed57fb __fou_build_header +EXPORT_SYMBOL net/ipv4/fou 0x1757d1a4 fou_encap_hlen +EXPORT_SYMBOL net/ipv4/fou 0xa453b1e2 __gue_build_header +EXPORT_SYMBOL net/ipv4/fou 0xf13914b3 gue_encap_hlen +EXPORT_SYMBOL net/ipv4/gre 0x66be238a gre_parse_header +EXPORT_SYMBOL net/ipv4/ip_tunnel 0x0563134f ip_tunnel_get_link_net +EXPORT_SYMBOL net/ipv4/ip_tunnel 0x4b593ded ip_tunnel_encap_add_ops +EXPORT_SYMBOL net/ipv4/ip_tunnel 0x5707b988 ip_tunnel_get_iflink +EXPORT_SYMBOL net/ipv4/ip_tunnel 0x92399b8a ip_tunnel_encap_del_ops +EXPORT_SYMBOL net/ipv4/netfilter/arp_tables 0x7bf4f3e6 arpt_register_table +EXPORT_SYMBOL net/ipv4/netfilter/arp_tables 0x7e47dec7 arpt_unregister_table +EXPORT_SYMBOL net/ipv4/netfilter/arp_tables 0x9a28dba1 arpt_do_table +EXPORT_SYMBOL net/ipv4/netfilter/ip_tables 0x25b53c94 ipt_unregister_table +EXPORT_SYMBOL net/ipv4/netfilter/ip_tables 0xb4970e62 ipt_do_table +EXPORT_SYMBOL net/ipv4/netfilter/ip_tables 0xc894dc3f ipt_register_table +EXPORT_SYMBOL net/ipv4/netfilter/ip_tables 0xdf573a0b ipt_unregister_table_pre_exit +EXPORT_SYMBOL net/ipv4/netfilter/ip_tables 0xe2166ead ipt_unregister_table_exit +EXPORT_SYMBOL net/ipv4/tunnel4 0x240bae28 xfrm4_tunnel_deregister +EXPORT_SYMBOL net/ipv4/tunnel4 0x70ac7b34 xfrm4_tunnel_register +EXPORT_SYMBOL net/ipv4/udp_tunnel 0x35148221 udp_sock_create4 +EXPORT_SYMBOL net/ipv6/ip6_tunnel 0x1ba65853 ip6_tnl_xmit +EXPORT_SYMBOL net/ipv6/ip6_tunnel 0x78f4830e ip6_tnl_get_cap +EXPORT_SYMBOL net/ipv6/ip6_tunnel 0x9b046fd2 ip6_tnl_get_link_net +EXPORT_SYMBOL net/ipv6/ip6_tunnel 0xa2d86dc5 ip6_tnl_get_iflink +EXPORT_SYMBOL net/ipv6/ip6_tunnel 0xa7c6f4d5 ip6_tnl_rcv +EXPORT_SYMBOL net/ipv6/ip6_tunnel 0xd543caa3 ip6_tnl_encap_add_ops +EXPORT_SYMBOL net/ipv6/ip6_tunnel 0xe842f00a ip6_tnl_parse_tlv_enc_lim +EXPORT_SYMBOL net/ipv6/ip6_tunnel 0xe90156fd ip6_tnl_change_mtu +EXPORT_SYMBOL net/ipv6/ip6_tunnel 0xf982eb22 ip6_tnl_encap_del_ops +EXPORT_SYMBOL net/ipv6/netfilter/ip6_tables 0x32987971 ip6t_unregister_table_exit +EXPORT_SYMBOL net/ipv6/netfilter/ip6_tables 0x670beeb2 ip6t_unregister_table_pre_exit +EXPORT_SYMBOL net/ipv6/netfilter/ip6_tables 0x8968cd7f ip6t_do_table +EXPORT_SYMBOL net/ipv6/netfilter/ip6_tables 0xb16f245c ip6t_unregister_table +EXPORT_SYMBOL net/ipv6/netfilter/ip6_tables 0xcffdbbe5 ip6t_register_table +EXPORT_SYMBOL net/ipv6/tunnel6 0x1d10a4c9 xfrm6_tunnel_deregister +EXPORT_SYMBOL net/ipv6/tunnel6 0xc96eb538 xfrm6_tunnel_register +EXPORT_SYMBOL net/ipv6/xfrm6_tunnel 0x1d94b6cb xfrm6_tunnel_alloc_spi +EXPORT_SYMBOL net/ipv6/xfrm6_tunnel 0x21dd615c xfrm6_tunnel_spi_lookup +EXPORT_SYMBOL net/l2tp/l2tp_core 0x5a0587b6 l2tp_tunnel_free +EXPORT_SYMBOL net/l2tp/l2tp_core 0xefdd7f5b l2tp_recv_common +EXPORT_SYMBOL net/l2tp/l2tp_ip 0xc609d58c l2tp_ioctl +EXPORT_SYMBOL net/lapb/lapb 0x228ddb53 lapb_register +EXPORT_SYMBOL net/lapb/lapb 0x236bc761 lapb_getparms +EXPORT_SYMBOL net/lapb/lapb 0x4151c17f lapb_data_received +EXPORT_SYMBOL net/lapb/lapb 0x801b2fc9 lapb_connect_request +EXPORT_SYMBOL net/lapb/lapb 0xa60cee69 lapb_setparms +EXPORT_SYMBOL net/lapb/lapb 0xab917a56 lapb_data_request +EXPORT_SYMBOL net/lapb/lapb 0xf3131b26 lapb_disconnect_request +EXPORT_SYMBOL net/lapb/lapb 0xfe192964 lapb_unregister +EXPORT_SYMBOL net/llc/llc 0x32b7456a llc_sap_find +EXPORT_SYMBOL net/llc/llc 0x360852a8 llc_sap_close +EXPORT_SYMBOL net/llc/llc 0x38b92846 llc_remove_pack +EXPORT_SYMBOL net/llc/llc 0x52d7b2fd llc_sap_list +EXPORT_SYMBOL net/llc/llc 0x5bf9be3a llc_build_and_send_ui_pkt +EXPORT_SYMBOL net/llc/llc 0x86476068 llc_sap_open +EXPORT_SYMBOL net/llc/llc 0x9872036d llc_add_pack +EXPORT_SYMBOL net/llc/llc 0x98f6ae9b llc_set_station_handler +EXPORT_SYMBOL net/llc/llc 0x99aa3fe7 llc_mac_hdr_init +EXPORT_SYMBOL net/mac80211/mac80211 0x0609317f ieee80211_txq_airtime_check +EXPORT_SYMBOL net/mac80211/mac80211 0x063f5308 ieee80211_get_tkip_p1k_iv +EXPORT_SYMBOL net/mac80211/mac80211 0x07fff8af ieee80211_ctstoself_get +EXPORT_SYMBOL net/mac80211/mac80211 0x12344f6e ieee80211_probereq_get +EXPORT_SYMBOL net/mac80211/mac80211 0x16d37ad5 ieee80211_csa_finish +EXPORT_SYMBOL net/mac80211/mac80211 0x183dcd3b ieee80211_get_key_rx_seq +EXPORT_SYMBOL net/mac80211/mac80211 0x1919cba3 ieee80211_tx_dequeue +EXPORT_SYMBOL net/mac80211/mac80211 0x19f37f0d ieee80211_update_p2p_noa +EXPORT_SYMBOL net/mac80211/mac80211 0x1a66fc17 ieee80211_get_tkip_rx_p1k +EXPORT_SYMBOL net/mac80211/mac80211 0x1aca222c ieee80211_cqm_rssi_notify +EXPORT_SYMBOL net/mac80211/mac80211 0x1e9a716f ieee80211_wake_queue +EXPORT_SYMBOL net/mac80211/mac80211 0x206c9fa2 ieee80211_connection_loss +EXPORT_SYMBOL net/mac80211/mac80211 0x2259a756 ieee80211_csa_is_complete +EXPORT_SYMBOL net/mac80211/mac80211 0x229f4ec4 ieee80211_sched_scan_stopped +EXPORT_SYMBOL net/mac80211/mac80211 0x23407c60 ieee80211_nan_func_terminated +EXPORT_SYMBOL net/mac80211/mac80211 0x237197c9 ieee80211_rx_napi +EXPORT_SYMBOL net/mac80211/mac80211 0x24627345 ieee80211_sta_block_awake +EXPORT_SYMBOL net/mac80211/mac80211 0x254f3e67 ieee80211_stop_rx_ba_session +EXPORT_SYMBOL net/mac80211/mac80211 0x28b92e9f ieee80211_stop_tx_ba_session +EXPORT_SYMBOL net/mac80211/mac80211 0x2e5575b4 ieee80211_rts_duration +EXPORT_SYMBOL net/mac80211/mac80211 0x3883e821 ieee80211_tx_status_ext +EXPORT_SYMBOL net/mac80211/mac80211 0x3b2d8391 ieee80211_send_eosp_nullfunc +EXPORT_SYMBOL net/mac80211/mac80211 0x3c42cfea ieee80211_restart_hw +EXPORT_SYMBOL net/mac80211/mac80211 0x49ae1330 __ieee80211_schedule_txq +EXPORT_SYMBOL net/mac80211/mac80211 0x4b77196a ieee80211_sta_register_airtime +EXPORT_SYMBOL net/mac80211/mac80211 0x58ff2af8 ieee80211_iter_keys_rcu +EXPORT_SYMBOL net/mac80211/mac80211 0x5a7940ff ieee80211_proberesp_get +EXPORT_SYMBOL net/mac80211/mac80211 0x5c273968 ieee80211_disable_rssi_reports +EXPORT_SYMBOL net/mac80211/mac80211 0x5ef0f704 __ieee80211_get_assoc_led_name +EXPORT_SYMBOL net/mac80211/mac80211 0x5f9a84e5 ieee80211_beacon_get_template +EXPORT_SYMBOL net/mac80211/mac80211 0x60a30e1e ieee80211_tx_rate_update +EXPORT_SYMBOL net/mac80211/mac80211 0x60e5ccf9 __ieee80211_get_rx_led_name +EXPORT_SYMBOL net/mac80211/mac80211 0x62006424 ieee80211_rx_irqsafe +EXPORT_SYMBOL net/mac80211/mac80211 0x66b5b0d8 ieee80211_nullfunc_get +EXPORT_SYMBOL net/mac80211/mac80211 0x6ad558ae ieee80211_reserve_tid +EXPORT_SYMBOL net/mac80211/mac80211 0x6dfdf3ad ieee80211_tx_status_8023 +EXPORT_SYMBOL net/mac80211/mac80211 0x6f94ed4e ieee80211_get_buffered_bc +EXPORT_SYMBOL net/mac80211/mac80211 0x6f9c8e79 ieee80211_sta_uapsd_trigger +EXPORT_SYMBOL net/mac80211/mac80211 0x6ff96daa ieee80211_beacon_get_tim +EXPORT_SYMBOL net/mac80211/mac80211 0x733c05df ieee80211_generic_frame_duration +EXPORT_SYMBOL net/mac80211/mac80211 0x73614815 ieee80211_stop_tx_ba_cb_irqsafe +EXPORT_SYMBOL net/mac80211/mac80211 0x73e1f338 ieee80211_csa_update_counter +EXPORT_SYMBOL net/mac80211/mac80211 0x751647bf ieee80211_stop_queues +EXPORT_SYMBOL net/mac80211/mac80211 0x7e6ad95a ieee80211_chswitch_done +EXPORT_SYMBOL net/mac80211/mac80211 0x8150dcb9 ieee80211_pspoll_get +EXPORT_SYMBOL net/mac80211/mac80211 0x82763add ieee80211_sched_scan_results +EXPORT_SYMBOL net/mac80211/mac80211 0x8696a641 ieee80211_cqm_beacon_loss_notify +EXPORT_SYMBOL net/mac80211/mac80211 0x8776206c ieee80211_stop_queue +EXPORT_SYMBOL net/mac80211/mac80211 0x88a6a739 ieee80211_report_wowlan_wakeup +EXPORT_SYMBOL net/mac80211/mac80211 0x8be1bdf2 __ieee80211_get_radio_led_name +EXPORT_SYMBOL net/mac80211/mac80211 0x8c6d14c3 __ieee80211_get_tx_led_name +EXPORT_SYMBOL net/mac80211/mac80211 0x8dbb114b ieee80211_rts_get +EXPORT_SYMBOL net/mac80211/mac80211 0x8ea05e2e ieee80211_next_txq +EXPORT_SYMBOL net/mac80211/mac80211 0x908c08b9 __ieee80211_create_tpt_led_trigger +EXPORT_SYMBOL net/mac80211/mac80211 0x964d7e21 ieee80211_get_tx_rates +EXPORT_SYMBOL net/mac80211/mac80211 0x991a0ca0 ieee80211_parse_p2p_noa +EXPORT_SYMBOL net/mac80211/mac80211 0x997d3fc1 ieee80211_queue_delayed_work +EXPORT_SYMBOL net/mac80211/mac80211 0x9b1bf407 ieee80211_txq_schedule_start +EXPORT_SYMBOL net/mac80211/mac80211 0x9b6e34e6 ieee80211_set_hw_80211_encap +EXPORT_SYMBOL net/mac80211/mac80211 0x9b92be24 ieee80211_nan_func_match +EXPORT_SYMBOL net/mac80211/mac80211 0x9d58ec25 ieee80211_alloc_hw_nm +EXPORT_SYMBOL net/mac80211/mac80211 0x9fa82eb1 ieee80211_register_hw +EXPORT_SYMBOL net/mac80211/mac80211 0xa21829e8 ieee80211_free_txskb +EXPORT_SYMBOL net/mac80211/mac80211 0xa3fdb324 ieee80211_tx_prepare_skb +EXPORT_SYMBOL net/mac80211/mac80211 0xa5d818eb ieee80211_ctstoself_duration +EXPORT_SYMBOL net/mac80211/mac80211 0xade4e601 ieee80211_sta_pspoll +EXPORT_SYMBOL net/mac80211/mac80211 0xaeb35ba2 ieee80211_unregister_hw +EXPORT_SYMBOL net/mac80211/mac80211 0xaf8a09b8 ieee80211_tdls_oper_request +EXPORT_SYMBOL net/mac80211/mac80211 0xb6c5fb4f ieee80211_tx_status +EXPORT_SYMBOL net/mac80211/mac80211 0xb7f4b07c ieee80211_rx_ba_timer_expired +EXPORT_SYMBOL net/mac80211/mac80211 0xb8493cbe ieee80211_tx_status_irqsafe +EXPORT_SYMBOL net/mac80211/mac80211 0xb851dacb wiphy_to_ieee80211_hw +EXPORT_SYMBOL net/mac80211/mac80211 0xbf8af257 ieee80211_iter_keys +EXPORT_SYMBOL net/mac80211/mac80211 0xc0eef019 ieee80211_start_tx_ba_session +EXPORT_SYMBOL net/mac80211/mac80211 0xc4764773 ieee80211_wake_queues +EXPORT_SYMBOL net/mac80211/mac80211 0xc598aee4 ieee80211_sta_set_buffered +EXPORT_SYMBOL net/mac80211/mac80211 0xcb28315a ieee80211_radar_detected +EXPORT_SYMBOL net/mac80211/mac80211 0xcb6f11e0 ieee80211_queue_work +EXPORT_SYMBOL net/mac80211/mac80211 0xcd8c4119 ieee80211_free_hw +EXPORT_SYMBOL net/mac80211/mac80211 0xce771e07 ieee80211_manage_rx_ba_offl +EXPORT_SYMBOL net/mac80211/mac80211 0xd3bfb2c4 ieee80211_ap_probereq_get +EXPORT_SYMBOL net/mac80211/mac80211 0xd48397a0 ieee80211_mark_rx_ba_filtered_frames +EXPORT_SYMBOL net/mac80211/mac80211 0xda17c484 ieee80211_find_sta +EXPORT_SYMBOL net/mac80211/mac80211 0xdcbd5762 ieee80211_get_tkip_p2k +EXPORT_SYMBOL net/mac80211/mac80211 0xddbef1dd ieee80211_unreserve_tid +EXPORT_SYMBOL net/mac80211/mac80211 0xdfa9c5b6 ieee80211_sta_ps_transition +EXPORT_SYMBOL net/mac80211/mac80211 0xdfb1d104 ieee80211_txq_get_depth +EXPORT_SYMBOL net/mac80211/mac80211 0xe1fe7509 ieee80211_send_bar +EXPORT_SYMBOL net/mac80211/mac80211 0xe2fef652 ieee80211_beacon_loss +EXPORT_SYMBOL net/mac80211/mac80211 0xe5af4f71 ieee80211_txq_may_transmit +EXPORT_SYMBOL net/mac80211/mac80211 0xea074ab9 ieee80211_csa_set_counter +EXPORT_SYMBOL net/mac80211/mac80211 0xea4a6f42 ieee80211_enable_rssi_reports +EXPORT_SYMBOL net/mac80211/mac80211 0xec32f2d9 ieee80211_report_low_ack +EXPORT_SYMBOL net/mac80211/mac80211 0xec9e44cf ieee80211_rate_control_unregister +EXPORT_SYMBOL net/mac80211/mac80211 0xee576809 ieee80211_scan_completed +EXPORT_SYMBOL net/mac80211/mac80211 0xf47b0dcd ieee80211_sta_eosp +EXPORT_SYMBOL net/mac80211/mac80211 0xf5e24f81 ieee80211_start_tx_ba_cb_irqsafe +EXPORT_SYMBOL net/mac80211/mac80211 0xf8859569 ieee80211_queue_stopped +EXPORT_SYMBOL net/mac80211/mac80211 0xfd972f78 rate_control_set_rates +EXPORT_SYMBOL net/mac80211/mac80211 0xfda920a6 ieee80211_rate_control_register +EXPORT_SYMBOL net/mac802154/mac802154 0x44df43c8 ieee802154_rx_irqsafe +EXPORT_SYMBOL net/mac802154/mac802154 0x58e3dd6f ieee802154_stop_queue +EXPORT_SYMBOL net/mac802154/mac802154 0x641a7fb1 ieee802154_wake_queue +EXPORT_SYMBOL net/mac802154/mac802154 0x6e1bf5da ieee802154_alloc_hw +EXPORT_SYMBOL net/mac802154/mac802154 0x7c3b519f ieee802154_register_hw +EXPORT_SYMBOL net/mac802154/mac802154 0xca854bf5 ieee802154_xmit_complete +EXPORT_SYMBOL net/mac802154/mac802154 0xd640692d ieee802154_free_hw +EXPORT_SYMBOL net/mac802154/mac802154 0xf0c83fcf ieee802154_unregister_hw +EXPORT_SYMBOL net/netfilter/ipvs/ip_vs 0x12429acd unregister_ip_vs_scheduler +EXPORT_SYMBOL net/netfilter/ipvs/ip_vs 0x19baf9b3 ip_vs_scheduler_err +EXPORT_SYMBOL net/netfilter/ipvs/ip_vs 0x5803eab9 register_ip_vs_app_inc +EXPORT_SYMBOL net/netfilter/ipvs/ip_vs 0x58c44a4e ip_vs_conn_new +EXPORT_SYMBOL net/netfilter/ipvs/ip_vs 0x5f53d6d5 ip_vs_tcp_conn_listen +EXPORT_SYMBOL net/netfilter/ipvs/ip_vs 0x61f56666 ip_vs_nfct_expect_related +EXPORT_SYMBOL net/netfilter/ipvs/ip_vs 0x8f05497a ip_vs_conn_put +EXPORT_SYMBOL net/netfilter/ipvs/ip_vs 0x94d1a46a register_ip_vs_app +EXPORT_SYMBOL net/netfilter/ipvs/ip_vs 0xad8e13b0 ip_vs_conn_in_get +EXPORT_SYMBOL net/netfilter/ipvs/ip_vs 0xb6c6fbe6 register_ip_vs_scheduler +EXPORT_SYMBOL net/netfilter/ipvs/ip_vs 0xc2d0ba5c ip_vs_new_conn_out +EXPORT_SYMBOL net/netfilter/ipvs/ip_vs 0xc7d7a544 ip_vs_proto_get +EXPORT_SYMBOL net/netfilter/ipvs/ip_vs 0xd831a1a2 ip_vs_proto_name +EXPORT_SYMBOL net/netfilter/ipvs/ip_vs 0xe6c11042 unregister_ip_vs_app +EXPORT_SYMBOL net/netfilter/ipvs/ip_vs 0xeb6af155 ip_vs_conn_out_get +EXPORT_SYMBOL net/netfilter/ipvs/ip_vs 0xfacbe1b5 ip_vs_proto_data_get +EXPORT_SYMBOL net/netfilter/nf_conntrack 0xe2d6f1f8 nf_ct_ext_add +EXPORT_SYMBOL net/netfilter/nf_conntrack_pptp 0xf2a36612 pptp_msg_name +EXPORT_SYMBOL net/netfilter/nf_nat 0x0f84fa28 __nf_nat_mangle_tcp_packet +EXPORT_SYMBOL net/netfilter/nf_nat 0x14b7f4d1 nf_nat_follow_master +EXPORT_SYMBOL net/netfilter/nf_nat 0x278510f4 nf_xfrm_me_harder +EXPORT_SYMBOL net/netfilter/nf_nat 0x4e213670 nf_nat_mangle_udp_packet +EXPORT_SYMBOL net/netfilter/nf_nat 0xbf2719ab nf_nat_setup_info +EXPORT_SYMBOL net/netfilter/nft_fib 0xe8203072 nft_fib_policy +EXPORT_SYMBOL net/netfilter/x_tables 0x0bc2b440 xt_register_target +EXPORT_SYMBOL net/netfilter/x_tables 0x0d7f5fcd xt_alloc_entry_offsets +EXPORT_SYMBOL net/netfilter/x_tables 0x25479349 xt_unregister_matches +EXPORT_SYMBOL net/netfilter/x_tables 0x38122088 xt_unregister_target +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 0x4db20a39 xt_unregister_targets +EXPORT_SYMBOL net/netfilter/x_tables 0x50873741 xt_compat_init_offsets +EXPORT_SYMBOL net/netfilter/x_tables 0x58887e0f xt_register_matches +EXPORT_SYMBOL net/netfilter/x_tables 0x727f271a xt_find_match +EXPORT_SYMBOL net/netfilter/x_tables 0x977fd4bf xt_alloc_table_info +EXPORT_SYMBOL net/netfilter/x_tables 0x9cd689f3 xt_unregister_match +EXPORT_SYMBOL net/netfilter/x_tables 0x9fca6d25 xt_table_get_private_protected +EXPORT_SYMBOL net/netfilter/x_tables 0xa25fc115 xt_compat_check_entry_offsets +EXPORT_SYMBOL net/netfilter/x_tables 0xc30f1f94 xt_register_match +EXPORT_SYMBOL net/netfilter/x_tables 0xcb3e91cc xt_counters_alloc +EXPORT_SYMBOL net/netfilter/x_tables 0xd2702171 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 0xfef779fa xt_find_jump_offset +EXPORT_SYMBOL net/nfc/hci/hci 0x105d1da6 nfc_hci_unregister_device +EXPORT_SYMBOL net/nfc/hci/hci 0x1113a5bc nfc_hci_set_param +EXPORT_SYMBOL net/nfc/hci/hci 0x14ddb86b nfc_hci_disconnect_all_gates +EXPORT_SYMBOL net/nfc/hci/hci 0x1b00ef4c nfc_llc_stop +EXPORT_SYMBOL net/nfc/hci/hci 0x1e5768d9 nfc_hci_get_param +EXPORT_SYMBOL net/nfc/hci/hci 0x25a6c14e nfc_hci_send_event +EXPORT_SYMBOL net/nfc/hci/hci 0x33b19743 nfc_llc_start +EXPORT_SYMBOL net/nfc/hci/hci 0x36c10334 nfc_hci_reset_pipes_per_host +EXPORT_SYMBOL net/nfc/hci/hci 0x556b2cf2 nfc_hci_recv_frame +EXPORT_SYMBOL net/nfc/hci/hci 0x5df6e4e6 nfc_hci_allocate_device +EXPORT_SYMBOL net/nfc/hci/hci 0x5f251381 nfc_hci_get_clientdata +EXPORT_SYMBOL net/nfc/hci/hci 0x74fe3670 nfc_hci_result_to_errno +EXPORT_SYMBOL net/nfc/hci/hci 0x76e458fc nfc_hci_set_clientdata +EXPORT_SYMBOL net/nfc/hci/hci 0xa4350184 nfc_hci_send_cmd +EXPORT_SYMBOL net/nfc/hci/hci 0xa9f8ac09 nfc_hci_send_cmd_async +EXPORT_SYMBOL net/nfc/hci/hci 0xb08faf8f nfc_hci_target_discovered +EXPORT_SYMBOL net/nfc/hci/hci 0xb4a21b28 nfc_hci_disconnect_gate +EXPORT_SYMBOL net/nfc/hci/hci 0xc487da4b nfc_hci_connect_gate +EXPORT_SYMBOL net/nfc/hci/hci 0xcf2d53cf nfc_hci_register_device +EXPORT_SYMBOL net/nfc/hci/hci 0xdd231c55 nfc_hci_sak_to_protocol +EXPORT_SYMBOL net/nfc/hci/hci 0xeabafdd5 nfc_hci_free_device +EXPORT_SYMBOL net/nfc/hci/hci 0xec42ac2a nfc_hci_driver_failure +EXPORT_SYMBOL net/nfc/hci/hci 0xf389f783 nfc_hci_reset_pipes +EXPORT_SYMBOL net/nfc/nci/nci 0x0171bf13 nci_set_config +EXPORT_SYMBOL net/nfc/nci/nci 0x16ce1601 nci_send_data +EXPORT_SYMBOL net/nfc/nci/nci 0x27109fcd nci_core_reset +EXPORT_SYMBOL net/nfc/nci/nci 0x3fc1ae96 nci_hci_send_event +EXPORT_SYMBOL net/nfc/nci/nci 0x4861a81a nci_req_complete +EXPORT_SYMBOL net/nfc/nci/nci 0x4b6a2b16 nci_hci_open_pipe +EXPORT_SYMBOL net/nfc/nci/nci 0x4b86a7e5 nci_hci_clear_all_pipes +EXPORT_SYMBOL net/nfc/nci/nci 0x57b42f06 nci_nfcee_discover +EXPORT_SYMBOL net/nfc/nci/nci 0x59839228 nci_core_conn_close +EXPORT_SYMBOL net/nfc/nci/nci 0x6d03ea77 nci_prop_cmd +EXPORT_SYMBOL net/nfc/nci/nci 0x722c9419 nci_hci_set_param +EXPORT_SYMBOL net/nfc/nci/nci 0x735ba23a nci_core_conn_create +EXPORT_SYMBOL net/nfc/nci/nci 0x75d5f929 nci_core_init +EXPORT_SYMBOL net/nfc/nci/nci 0x8aafc8d2 nci_send_frame +EXPORT_SYMBOL net/nfc/nci/nci 0x8c60b7eb nci_send_cmd +EXPORT_SYMBOL net/nfc/nci/nci 0x922494a9 nci_recv_frame +EXPORT_SYMBOL net/nfc/nci/nci 0x974c7b4d nci_core_cmd +EXPORT_SYMBOL net/nfc/nci/nci 0xaa7567e6 nci_hci_dev_session_init +EXPORT_SYMBOL net/nfc/nci/nci 0xb2745949 nci_free_device +EXPORT_SYMBOL net/nfc/nci/nci 0xba490602 nci_to_errno +EXPORT_SYMBOL net/nfc/nci/nci 0xc5985d9f nci_hci_get_param +EXPORT_SYMBOL net/nfc/nci/nci 0xcb138a94 nci_hci_send_cmd +EXPORT_SYMBOL net/nfc/nci/nci 0xd542bd7e nci_register_device +EXPORT_SYMBOL net/nfc/nci/nci 0xd5c8cc3a nci_nfcc_loopback +EXPORT_SYMBOL net/nfc/nci/nci 0xe870fbda nci_unregister_device +EXPORT_SYMBOL net/nfc/nci/nci 0xf39455ef nci_allocate_device +EXPORT_SYMBOL net/nfc/nci/nci 0xf654c7e9 nci_hci_connect_gate +EXPORT_SYMBOL net/nfc/nci/nci 0xf6ee770c nci_conn_max_data_pkt_payload_size +EXPORT_SYMBOL net/nfc/nci/nci 0xf789349c nci_nfcee_mode_set +EXPORT_SYMBOL net/nfc/nci/nci 0xfff28a44 nci_get_conn_info_by_dest_type_params +EXPORT_SYMBOL net/nfc/nfc 0x09a8e8b6 nfc_allocate_device +EXPORT_SYMBOL net/nfc/nfc 0x0a088938 nfc_tm_deactivated +EXPORT_SYMBOL net/nfc/nfc 0x0bfb76b3 nfc_vendor_cmd_reply +EXPORT_SYMBOL net/nfc/nfc 0x1e79dfaf nfc_target_lost +EXPORT_SYMBOL net/nfc/nfc 0x26f5fcd7 nfc_get_local_general_bytes +EXPORT_SYMBOL net/nfc/nfc 0x50e66717 nfc_tm_data_received +EXPORT_SYMBOL net/nfc/nfc 0x6cd74145 nfc_register_device +EXPORT_SYMBOL net/nfc/nfc 0x70f90911 nfc_remove_se +EXPORT_SYMBOL net/nfc/nfc 0x72865ceb nfc_se_connectivity +EXPORT_SYMBOL net/nfc/nfc 0x75a142cc nfc_class +EXPORT_SYMBOL net/nfc/nfc 0x760d96c8 nfc_dep_link_is_up +EXPORT_SYMBOL net/nfc/nfc 0x84e111fd nfc_proto_unregister +EXPORT_SYMBOL net/nfc/nfc 0x89435d44 nfc_set_remote_general_bytes +EXPORT_SYMBOL net/nfc/nfc 0xa1f9fa46 nfc_driver_failure +EXPORT_SYMBOL net/nfc/nfc 0xb69bc9a0 nfc_add_se +EXPORT_SYMBOL net/nfc/nfc 0xc3164720 nfc_alloc_recv_skb +EXPORT_SYMBOL net/nfc/nfc 0xc6179f46 nfc_tm_activated +EXPORT_SYMBOL net/nfc/nfc 0xc8e67023 nfc_proto_register +EXPORT_SYMBOL net/nfc/nfc 0xcf08a5c7 __nfc_alloc_vendor_cmd_reply_skb +EXPORT_SYMBOL net/nfc/nfc 0xcf93a1c7 nfc_fw_download_done +EXPORT_SYMBOL net/nfc/nfc 0xe4368533 nfc_targets_found +EXPORT_SYMBOL net/nfc/nfc 0xf10d40bb nfc_se_transaction +EXPORT_SYMBOL net/nfc/nfc 0xf81e9774 nfc_find_se +EXPORT_SYMBOL net/nfc/nfc 0xf92de71a nfc_send_to_raw_sock +EXPORT_SYMBOL net/nfc/nfc 0xfbcbd85b nfc_unregister_device +EXPORT_SYMBOL net/nfc/nfc_digital 0x1acadf82 nfc_digital_allocate_device +EXPORT_SYMBOL net/nfc/nfc_digital 0x27a303ed nfc_digital_register_device +EXPORT_SYMBOL net/nfc/nfc_digital 0x938c6f8e nfc_digital_free_device +EXPORT_SYMBOL net/nfc/nfc_digital 0xfb85f598 nfc_digital_unregister_device +EXPORT_SYMBOL net/phonet/phonet 0x0825ab91 pn_skb_send +EXPORT_SYMBOL net/phonet/phonet 0x0b63fbca pn_sock_unhash +EXPORT_SYMBOL net/phonet/phonet 0x4584cf25 pn_sock_hash +EXPORT_SYMBOL net/phonet/phonet 0x5ebfb058 pn_sock_get_port +EXPORT_SYMBOL net/phonet/phonet 0x7aa8052e phonet_proto_register +EXPORT_SYMBOL net/phonet/phonet 0xbbc42dbc phonet_stream_ops +EXPORT_SYMBOL net/phonet/phonet 0xe5bb2327 phonet_proto_unregister +EXPORT_SYMBOL net/phonet/phonet 0xff3aada9 phonet_header_ops +EXPORT_SYMBOL net/rxrpc/rxrpc 0x051e3e39 rxrpc_get_null_key +EXPORT_SYMBOL net/rxrpc/rxrpc 0x163aaa14 rxrpc_kernel_abort_call +EXPORT_SYMBOL net/rxrpc/rxrpc 0x31bf3ca3 rxrpc_debug_id +EXPORT_SYMBOL net/rxrpc/rxrpc 0x38c23bf3 rxrpc_kernel_begin_call +EXPORT_SYMBOL net/rxrpc/rxrpc 0x4b7962b2 rxrpc_kernel_set_max_life +EXPORT_SYMBOL net/rxrpc/rxrpc 0x58f78252 rxrpc_kernel_check_life +EXPORT_SYMBOL net/rxrpc/rxrpc 0x5addfa0d rxrpc_get_server_data_key +EXPORT_SYMBOL net/rxrpc/rxrpc 0x601e63b3 key_type_rxrpc +EXPORT_SYMBOL net/rxrpc/rxrpc 0x64f2182b rxrpc_kernel_recv_data +EXPORT_SYMBOL net/rxrpc/rxrpc 0x65b481c7 rxrpc_kernel_charge_accept +EXPORT_SYMBOL net/rxrpc/rxrpc 0x7df536e1 rxrpc_kernel_get_reply_time +EXPORT_SYMBOL net/rxrpc/rxrpc 0x81cc6b1c rxrpc_kernel_get_srtt +EXPORT_SYMBOL net/rxrpc/rxrpc 0xafe1f646 rxrpc_kernel_get_peer +EXPORT_SYMBOL net/rxrpc/rxrpc 0xb26fda55 rxrpc_kernel_end_call +EXPORT_SYMBOL net/rxrpc/rxrpc 0xb6921aa5 rxrpc_sock_set_min_security_level +EXPORT_SYMBOL net/rxrpc/rxrpc 0xe8aa7258 rxrpc_kernel_set_tx_length +EXPORT_SYMBOL net/rxrpc/rxrpc 0xf6614133 rxrpc_kernel_get_epoch +EXPORT_SYMBOL net/rxrpc/rxrpc 0xf830b812 rxrpc_kernel_send_data +EXPORT_SYMBOL net/rxrpc/rxrpc 0xfe81f94f rxrpc_kernel_new_call_notification +EXPORT_SYMBOL net/sctp/sctp 0x9d537184 sctp_do_peeloff +EXPORT_SYMBOL net/sunrpc/auth_gss/auth_rpcgss 0x7062bc84 gss_mech_put +EXPORT_SYMBOL net/sunrpc/auth_gss/auth_rpcgss 0x717b97bf gss_mech_get +EXPORT_SYMBOL net/sunrpc/auth_gss/auth_rpcgss 0xb70d2618 gss_pseudoflavor_to_service +EXPORT_SYMBOL net/sunrpc/sunrpc 0x05b4e999 xdr_restrict_buflen +EXPORT_SYMBOL net/sunrpc/sunrpc 0xb74a5063 xdr_truncate_encode +EXPORT_SYMBOL net/sunrpc/sunrpc 0xe4281258 svc_pool_stats_open +EXPORT_SYMBOL net/tipc/tipc 0x17d35d96 tipc_sk_fill_sock_diag +EXPORT_SYMBOL net/tipc/tipc 0x6d1242bf tipc_dump_start +EXPORT_SYMBOL net/tipc/tipc 0x833cdf94 tipc_nl_sk_walk +EXPORT_SYMBOL net/tipc/tipc 0xebce2f14 tipc_dump_done +EXPORT_SYMBOL net/tls/tls 0x7900defb tls_get_record +EXPORT_SYMBOL net/wimax/wimax 0x8416d286 wimax_reset +EXPORT_SYMBOL net/wimax/wimax 0xaa9f4d42 wimax_rfkill +EXPORT_SYMBOL net/wireless/cfg80211 0x00be655c cfg80211_scan_done +EXPORT_SYMBOL net/wireless/cfg80211 0x026bf16f ieee80211_get_num_supported_channels +EXPORT_SYMBOL net/wireless/cfg80211 0x036d7834 __cfg80211_alloc_reply_skb +EXPORT_SYMBOL net/wireless/cfg80211 0x05b13ef2 regulatory_hint +EXPORT_SYMBOL net/wireless/cfg80211 0x09df3f06 cfg80211_remain_on_channel_expired +EXPORT_SYMBOL net/wireless/cfg80211 0x0bc8c542 cfg80211_inform_bss_frame_data +EXPORT_SYMBOL net/wireless/cfg80211 0x0c5d4ed5 cfg80211_roamed +EXPORT_SYMBOL net/wireless/cfg80211 0x0d0f3ad6 cfg80211_cac_event +EXPORT_SYMBOL net/wireless/cfg80211 0x0e9f498f cfg80211_new_sta +EXPORT_SYMBOL net/wireless/cfg80211 0x117aca91 cfg80211_merge_profile +EXPORT_SYMBOL net/wireless/cfg80211 0x15a37cf3 cfg80211_calculate_bitrate +EXPORT_SYMBOL net/wireless/cfg80211 0x1879fcbd bridge_tunnel_header +EXPORT_SYMBOL net/wireless/cfg80211 0x18b53545 cfg80211_chandef_create +EXPORT_SYMBOL net/wireless/cfg80211 0x19596909 wiphy_apply_custom_regulatory +EXPORT_SYMBOL net/wireless/cfg80211 0x1a87d69d cfg80211_probe_status +EXPORT_SYMBOL net/wireless/cfg80211 0x1ce2497f reg_query_regdb_wmm +EXPORT_SYMBOL net/wireless/cfg80211 0x1e2bf9b6 wiphy_free +EXPORT_SYMBOL net/wireless/cfg80211 0x1fd03eeb cfg80211_gtk_rekey_notify +EXPORT_SYMBOL net/wireless/cfg80211 0x2505a8ba regulatory_pre_cac_allowed +EXPORT_SYMBOL net/wireless/cfg80211 0x275269b3 ieee80211_ie_split_ric +EXPORT_SYMBOL net/wireless/cfg80211 0x28446f90 ieee80211_get_response_rate +EXPORT_SYMBOL net/wireless/cfg80211 0x298b49dd wiphy_rfkill_stop_polling +EXPORT_SYMBOL net/wireless/cfg80211 0x35b59312 cfg80211_control_port_tx_status +EXPORT_SYMBOL net/wireless/cfg80211 0x3717335a cfg80211_sched_scan_stopped +EXPORT_SYMBOL net/wireless/cfg80211 0x37afae21 cfg80211_nan_match +EXPORT_SYMBOL net/wireless/cfg80211 0x3a5df08a cfg80211_get_bss +EXPORT_SYMBOL net/wireless/cfg80211 0x3bd8aaa1 ieee80211_operating_class_to_band +EXPORT_SYMBOL net/wireless/cfg80211 0x3e129d8c cfg80211_tx_mgmt_expired +EXPORT_SYMBOL net/wireless/cfg80211 0x43f5efcf cfg80211_sinfo_alloc_tid_stats +EXPORT_SYMBOL net/wireless/cfg80211 0x45201fd6 cfg80211_report_obss_beacon_khz +EXPORT_SYMBOL net/wireless/cfg80211 0x45a7da97 cfg80211_sched_scan_stopped_rtnl +EXPORT_SYMBOL net/wireless/cfg80211 0x46312808 ieee80211_radiotap_iterator_next +EXPORT_SYMBOL net/wireless/cfg80211 0x4868cc97 cfg80211_unlink_bss +EXPORT_SYMBOL net/wireless/cfg80211 0x497ca955 cfg80211_cqm_rssi_notify +EXPORT_SYMBOL net/wireless/cfg80211 0x4e02804f wiphy_rfkill_start_polling +EXPORT_SYMBOL net/wireless/cfg80211 0x5193aca6 cfg80211_get_station +EXPORT_SYMBOL net/wireless/cfg80211 0x58e9b817 cfg80211_abandon_assoc +EXPORT_SYMBOL net/wireless/cfg80211 0x5d702538 wiphy_new_nm +EXPORT_SYMBOL net/wireless/cfg80211 0x5f06333a wiphy_read_of_freq_limits +EXPORT_SYMBOL net/wireless/cfg80211 0x5f280c08 cfg80211_chandef_dfs_required +EXPORT_SYMBOL net/wireless/cfg80211 0x659f3d30 __cfg80211_alloc_event_skb +EXPORT_SYMBOL net/wireless/cfg80211 0x66c7be6d cfg80211_ch_switch_notify +EXPORT_SYMBOL net/wireless/cfg80211 0x672aa3bc cfg80211_rx_control_port +EXPORT_SYMBOL net/wireless/cfg80211 0x67d86dcd ieee80211_chandef_to_operating_class +EXPORT_SYMBOL net/wireless/cfg80211 0x68600c40 ieee80211_mandatory_rates +EXPORT_SYMBOL net/wireless/cfg80211 0x6992c8bf cfg80211_external_auth_request +EXPORT_SYMBOL net/wireless/cfg80211 0x69964852 cfg80211_del_sta_sinfo +EXPORT_SYMBOL net/wireless/cfg80211 0x69b18f43 rfc1042_header +EXPORT_SYMBOL net/wireless/cfg80211 0x6bedf402 ieee80211_freq_khz_to_channel +EXPORT_SYMBOL net/wireless/cfg80211 0x723cc1df cfg80211_mgmt_tx_status +EXPORT_SYMBOL net/wireless/cfg80211 0x79b82a71 cfg80211_find_vendor_elem +EXPORT_SYMBOL net/wireless/cfg80211 0x7bd21dae __cfg80211_send_event_skb +EXPORT_SYMBOL net/wireless/cfg80211 0x7c3ac925 ieee80211_get_vht_max_nss +EXPORT_SYMBOL net/wireless/cfg80211 0x7ef39823 ieee80211_hdrlen +EXPORT_SYMBOL net/wireless/cfg80211 0x7fbfc3e6 cfg80211_sched_scan_results +EXPORT_SYMBOL net/wireless/cfg80211 0x81a471d6 cfg80211_chandef_valid +EXPORT_SYMBOL net/wireless/cfg80211 0x82943b50 cfg80211_ref_bss +EXPORT_SYMBOL net/wireless/cfg80211 0x8342678f cfg80211_rx_assoc_resp +EXPORT_SYMBOL net/wireless/cfg80211 0x887772ed cfg80211_reg_can_beacon +EXPORT_SYMBOL net/wireless/cfg80211 0x8b9aca7a cfg80211_stop_iface +EXPORT_SYMBOL net/wireless/cfg80211 0x8d02fc07 cfg80211_conn_failed +EXPORT_SYMBOL net/wireless/cfg80211 0x8e4d1ac0 cfg80211_unregister_wdev +EXPORT_SYMBOL net/wireless/cfg80211 0x8eb79f24 cfg80211_iter_combinations +EXPORT_SYMBOL net/wireless/cfg80211 0x8fa02936 cfg80211_free_nan_func +EXPORT_SYMBOL net/wireless/cfg80211 0x9a65a3ed cfg80211_rx_mlme_mgmt +EXPORT_SYMBOL net/wireless/cfg80211 0x9c638c15 cfg80211_chandef_usable +EXPORT_SYMBOL net/wireless/cfg80211 0x9d6cba30 cfg80211_find_elem_match +EXPORT_SYMBOL net/wireless/cfg80211 0x9e148704 cfg80211_report_wowlan_wakeup +EXPORT_SYMBOL net/wireless/cfg80211 0xa1e6441e ieee80211_amsdu_to_8023s +EXPORT_SYMBOL net/wireless/cfg80211 0xa2807db1 regulatory_set_wiphy_regd_sync_rtnl +EXPORT_SYMBOL net/wireless/cfg80211 0xa51e831c cfg80211_ch_switch_started_notify +EXPORT_SYMBOL net/wireless/cfg80211 0xac97a207 ieee80211_radiotap_iterator_init +EXPORT_SYMBOL net/wireless/cfg80211 0xaccfc2b6 cfg80211_iftype_allowed +EXPORT_SYMBOL net/wireless/cfg80211 0xad873233 cfg80211_send_layer2_update +EXPORT_SYMBOL net/wireless/cfg80211 0xaec9afe4 cfg80211_connect_done +EXPORT_SYMBOL net/wireless/cfg80211 0xafe8b001 ieee80211_channel_to_freq_khz +EXPORT_SYMBOL net/wireless/cfg80211 0xb288f98f cfg80211_ibss_joined +EXPORT_SYMBOL net/wireless/cfg80211 0xb5e07fff cfg80211_get_drvinfo +EXPORT_SYMBOL net/wireless/cfg80211 0xb8aa85fa cfg80211_cqm_pktloss_notify +EXPORT_SYMBOL net/wireless/cfg80211 0xbe2cda2d cfg80211_bss_iter +EXPORT_SYMBOL net/wireless/cfg80211 0xbf735d86 cfg80211_assoc_timeout +EXPORT_SYMBOL net/wireless/cfg80211 0xc45e3a29 cfg80211_check_station_change +EXPORT_SYMBOL net/wireless/cfg80211 0xc4c796fd ieee80211_data_to_8023_exthdr +EXPORT_SYMBOL net/wireless/cfg80211 0xc52408ac cfg80211_michael_mic_failure +EXPORT_SYMBOL net/wireless/cfg80211 0xc5349dff wiphy_register +EXPORT_SYMBOL net/wireless/cfg80211 0xc87dbae2 cfg80211_pmksa_candidate_notify +EXPORT_SYMBOL net/wireless/cfg80211 0xc968d62f cfg80211_nan_func_terminated +EXPORT_SYMBOL net/wireless/cfg80211 0xca2618ba cfg80211_crit_proto_stopped +EXPORT_SYMBOL net/wireless/cfg80211 0xca47902b cfg80211_rx_unprot_mlme_mgmt +EXPORT_SYMBOL net/wireless/cfg80211 0xcac80dba cfg80211_notify_new_peer_candidate +EXPORT_SYMBOL net/wireless/cfg80211 0xcc1a7c48 cfg80211_is_element_inherited +EXPORT_SYMBOL net/wireless/cfg80211 0xcfb1b548 cfg80211_tx_mlme_mgmt +EXPORT_SYMBOL net/wireless/cfg80211 0xd0115abb cfg80211_update_owe_info_event +EXPORT_SYMBOL net/wireless/cfg80211 0xd0cb108c cfg80211_radar_event +EXPORT_SYMBOL net/wireless/cfg80211 0xd4fa5a26 cfg80211_cqm_txe_notify +EXPORT_SYMBOL net/wireless/cfg80211 0xd56d55f3 ieee80211_get_mesh_hdrlen +EXPORT_SYMBOL net/wireless/cfg80211 0xd572fc24 ieee80211_get_channel_khz +EXPORT_SYMBOL net/wireless/cfg80211 0xd7207b9b cfg80211_check_combinations +EXPORT_SYMBOL net/wireless/cfg80211 0xda493fc9 cfg80211_rx_mgmt_khz +EXPORT_SYMBOL net/wireless/cfg80211 0xdba126c1 reg_initiator_name +EXPORT_SYMBOL net/wireless/cfg80211 0xdf575262 cfg80211_reg_can_beacon_relax +EXPORT_SYMBOL net/wireless/cfg80211 0xe24c4a66 cfg80211_disconnected +EXPORT_SYMBOL net/wireless/cfg80211 0xe6b2f44f cfg80211_classify8021d +EXPORT_SYMBOL net/wireless/cfg80211 0xea1e02fe cfg80211_port_authorized +EXPORT_SYMBOL net/wireless/cfg80211 0xebb59472 cfg80211_ready_on_channel +EXPORT_SYMBOL net/wireless/cfg80211 0xedaf4ddf cfg80211_put_bss +EXPORT_SYMBOL net/wireless/cfg80211 0xee08c0e2 cfg80211_sta_opmode_change_notify +EXPORT_SYMBOL net/wireless/cfg80211 0xee4f7ff8 wiphy_unregister +EXPORT_SYMBOL net/wireless/cfg80211 0xee93b98f regulatory_set_wiphy_regd +EXPORT_SYMBOL net/wireless/cfg80211 0xeff4c762 cfg80211_cqm_beacon_loss_notify +EXPORT_SYMBOL net/wireless/cfg80211 0xf079eeb8 ieee80211_get_hdrlen_from_skb +EXPORT_SYMBOL net/wireless/cfg80211 0xf10b0ed2 cfg80211_rx_spurious_frame +EXPORT_SYMBOL net/wireless/cfg80211 0xf13308ca cfg80211_ft_event +EXPORT_SYMBOL net/wireless/cfg80211 0xf34adb6e cfg80211_auth_timeout +EXPORT_SYMBOL net/wireless/cfg80211 0xf5596d89 cfg80211_get_p2p_attr +EXPORT_SYMBOL net/wireless/cfg80211 0xf7502511 freq_reg_info +EXPORT_SYMBOL net/wireless/cfg80211 0xf8f0c52a cfg80211_tdls_oper_request +EXPORT_SYMBOL net/wireless/cfg80211 0xfae8514f cfg80211_chandef_compatible +EXPORT_SYMBOL net/wireless/cfg80211 0xfb37cc9b wiphy_rfkill_set_hw_state +EXPORT_SYMBOL net/wireless/cfg80211 0xfb7cc63d cfg80211_inform_bss_data +EXPORT_SYMBOL net/wireless/cfg80211 0xfdb224da cfg80211_rx_unexpected_4addr_frame +EXPORT_SYMBOL net/wireless/cfg80211 0xff0c113a ieee80211_bss_get_elem +EXPORT_SYMBOL net/wireless/lib80211 0x0beed819 lib80211_crypt_info_free +EXPORT_SYMBOL net/wireless/lib80211 0x57626674 lib80211_unregister_crypto_ops +EXPORT_SYMBOL net/wireless/lib80211 0x735ecd17 lib80211_get_crypto_ops +EXPORT_SYMBOL net/wireless/lib80211 0xc4f44451 lib80211_crypt_delayed_deinit +EXPORT_SYMBOL net/wireless/lib80211 0xc6243416 lib80211_crypt_info_init +EXPORT_SYMBOL net/wireless/lib80211 0xd8bb161a lib80211_register_crypto_ops +EXPORT_SYMBOL sound/ac97_bus 0xffa7575f ac97_bus_type +EXPORT_SYMBOL sound/core/oss/snd-mixer-oss 0xdcfe5a96 snd_mixer_oss_ioctl_card +EXPORT_SYMBOL sound/core/seq/snd-seq 0x1a724fcc snd_seq_kernel_client_ctl +EXPORT_SYMBOL sound/core/seq/snd-seq 0x1e3d9781 snd_seq_kernel_client_write_poll +EXPORT_SYMBOL sound/core/seq/snd-seq 0x3061c52d snd_use_lock_sync_helper +EXPORT_SYMBOL sound/core/seq/snd-seq 0x3fb4d161 snd_seq_kernel_client_dispatch +EXPORT_SYMBOL sound/core/seq/snd-seq 0x545bf7a2 snd_seq_event_port_attach +EXPORT_SYMBOL sound/core/seq/snd-seq 0x6bb71038 snd_seq_delete_kernel_client +EXPORT_SYMBOL sound/core/seq/snd-seq 0x6d98b88a snd_seq_kernel_client_enqueue +EXPORT_SYMBOL sound/core/seq/snd-seq 0x7ac2f329 snd_seq_expand_var_event +EXPORT_SYMBOL sound/core/seq/snd-seq 0x7b8699eb snd_seq_event_port_detach +EXPORT_SYMBOL sound/core/seq/snd-seq 0xb8e448a0 snd_seq_set_queue_tempo +EXPORT_SYMBOL sound/core/seq/snd-seq 0xe934da1d snd_seq_dump_var_event +EXPORT_SYMBOL sound/core/seq/snd-seq 0xf9e1cc6d snd_seq_create_kernel_client +EXPORT_SYMBOL sound/core/seq/snd-seq-midi-emul 0x6ea09972 snd_midi_channel_alloc_set +EXPORT_SYMBOL sound/core/seq/snd-seq-midi-emul 0x833a3e07 snd_midi_channel_set_clear +EXPORT_SYMBOL sound/core/seq/snd-seq-midi-emul 0xb9948d2c snd_midi_channel_free_set +EXPORT_SYMBOL sound/core/seq/snd-seq-midi-emul 0xf912f0c8 snd_midi_process_event +EXPORT_SYMBOL sound/core/seq/snd-seq-midi-event 0x072d978b snd_midi_event_new +EXPORT_SYMBOL sound/core/seq/snd-seq-midi-event 0x13a17752 snd_midi_event_reset_encode +EXPORT_SYMBOL sound/core/seq/snd-seq-midi-event 0x2eed26bf snd_midi_event_no_status +EXPORT_SYMBOL sound/core/seq/snd-seq-midi-event 0x4d5ca523 snd_midi_event_decode +EXPORT_SYMBOL sound/core/seq/snd-seq-midi-event 0x592f6e9b snd_midi_event_free +EXPORT_SYMBOL sound/core/seq/snd-seq-midi-event 0xddcf2191 snd_midi_event_encode_byte +EXPORT_SYMBOL sound/core/seq/snd-seq-midi-event 0xe60fb228 snd_midi_event_reset_decode +EXPORT_SYMBOL sound/core/seq/snd-seq-virmidi 0x329354b0 snd_virmidi_new +EXPORT_SYMBOL sound/core/snd 0x01224e13 snd_card_set_id +EXPORT_SYMBOL sound/core/snd 0x16060cdf snd_info_create_module_entry +EXPORT_SYMBOL sound/core/snd 0x18b7122a snd_unregister_device +EXPORT_SYMBOL sound/core/snd 0x18e1683f snd_dma_program +EXPORT_SYMBOL sound/core/snd 0x191e88cf snd_dma_pointer +EXPORT_SYMBOL sound/core/snd 0x198788b4 snd_lookup_oss_minor_data +EXPORT_SYMBOL sound/core/snd 0x24a94b26 snd_info_get_line +EXPORT_SYMBOL sound/core/snd 0x342a2354 copy_to_user_fromio +EXPORT_SYMBOL sound/core/snd 0x3971b4df snd_ecards_limit +EXPORT_SYMBOL sound/core/snd 0x423ffe31 snd_ctl_remove +EXPORT_SYMBOL sound/core/snd 0x491dc93a snd_unregister_oss_device +EXPORT_SYMBOL sound/core/snd 0x4a3ea5c0 snd_request_card +EXPORT_SYMBOL sound/core/snd 0x4e30f98d snd_component_add +EXPORT_SYMBOL sound/core/snd 0x4f0a3c61 snd_card_register +EXPORT_SYMBOL sound/core/snd 0x4f7d7d28 snd_info_free_entry +EXPORT_SYMBOL sound/core/snd 0x53187557 snd_info_create_card_entry +EXPORT_SYMBOL sound/core/snd 0x534141d1 snd_ctl_register_ioctl_compat +EXPORT_SYMBOL sound/core/snd 0x5ae4437d snd_ctl_make_virtual_master +EXPORT_SYMBOL sound/core/snd 0x5d41a3a8 snd_ctl_notify +EXPORT_SYMBOL sound/core/snd 0x5dff82ae snd_card_free +EXPORT_SYMBOL sound/core/snd 0x604e187a _snd_ctl_add_slave +EXPORT_SYMBOL sound/core/snd 0x6b4a1c9f snd_ctl_register_ioctl +EXPORT_SYMBOL sound/core/snd 0x6bafd769 snd_jack_report +EXPORT_SYMBOL sound/core/snd 0x6e83e58f snd_register_device +EXPORT_SYMBOL sound/core/snd 0x70791c73 snd_power_wait +EXPORT_SYMBOL sound/core/snd 0x70c15ac1 snd_dma_disable +EXPORT_SYMBOL sound/core/snd 0x73076315 snd_pci_quirk_lookup_id +EXPORT_SYMBOL sound/core/snd 0x76cd49eb snd_register_oss_device +EXPORT_SYMBOL sound/core/snd 0x776c3183 snd_ctl_boolean_mono_info +EXPORT_SYMBOL sound/core/snd 0x80180582 snd_jack_new +EXPORT_SYMBOL sound/core/snd 0x80ee9141 snd_jack_add_new_kctl +EXPORT_SYMBOL sound/core/snd 0x827a8e7b snd_device_free +EXPORT_SYMBOL sound/core/snd 0x85c4d1a7 snd_device_register +EXPORT_SYMBOL sound/core/snd 0x879628c2 snd_card_file_remove +EXPORT_SYMBOL sound/core/snd 0x8df3789f snd_oss_info_register +EXPORT_SYMBOL sound/core/snd 0x8f595b11 snd_major +EXPORT_SYMBOL sound/core/snd 0x9bbe1a03 snd_ctl_free_one +EXPORT_SYMBOL sound/core/snd 0x9df29cb1 snd_device_new +EXPORT_SYMBOL sound/core/snd 0x9e6d79f8 snd_info_get_str +EXPORT_SYMBOL sound/core/snd 0xa57f9169 snd_ctl_remove_id +EXPORT_SYMBOL sound/core/snd 0xa6e1332a snd_card_free_when_closed +EXPORT_SYMBOL sound/core/snd 0xa8d9bd82 snd_ctl_boolean_stereo_info +EXPORT_SYMBOL sound/core/snd 0xacac6ae8 snd_ctl_new1 +EXPORT_SYMBOL sound/core/snd 0xb2e5ae4a snd_lookup_minor_data +EXPORT_SYMBOL sound/core/snd 0xb74d7035 snd_seq_root +EXPORT_SYMBOL sound/core/snd 0xbec5d4cf snd_card_new +EXPORT_SYMBOL sound/core/snd 0xbf056700 snd_card_file_add +EXPORT_SYMBOL sound/core/snd 0xbfe18431 snd_mixer_oss_notify_callback +EXPORT_SYMBOL sound/core/snd 0xc21d61f4 snd_jack_set_key +EXPORT_SYMBOL sound/core/snd 0xc40295de snd_ctl_replace +EXPORT_SYMBOL sound/core/snd 0xc5a6d10b release_and_free_resource +EXPORT_SYMBOL sound/core/snd 0xcc6a729f snd_ctl_enum_info +EXPORT_SYMBOL sound/core/snd 0xda6bbdd0 snd_ctl_find_id +EXPORT_SYMBOL sound/core/snd 0xddd97b06 snd_ctl_find_numid +EXPORT_SYMBOL sound/core/snd 0xe2e21b88 snd_info_register +EXPORT_SYMBOL sound/core/snd 0xe5a5f8ff snd_ctl_unregister_ioctl +EXPORT_SYMBOL sound/core/snd 0xe962b947 snd_pci_quirk_lookup +EXPORT_SYMBOL sound/core/snd 0xeb55307f snd_ctl_rename_id +EXPORT_SYMBOL sound/core/snd 0xedd9b3cf snd_card_disconnect +EXPORT_SYMBOL sound/core/snd 0xef1ad02c snd_ctl_add +EXPORT_SYMBOL sound/core/snd 0xf220c5a6 snd_ctl_unregister_ioctl_compat +EXPORT_SYMBOL sound/core/snd 0xf77a9614 snd_jack_set_parent +EXPORT_SYMBOL sound/core/snd 0xfffd89db copy_from_user_toio +EXPORT_SYMBOL sound/core/snd-hwdep 0x1b3ccde2 snd_hwdep_new +EXPORT_SYMBOL sound/core/snd-pcm 0x0283dfe3 _snd_pcm_hw_params_any +EXPORT_SYMBOL sound/core/snd-pcm 0x04cda566 snd_interval_refine +EXPORT_SYMBOL sound/core/snd-pcm 0x08743c3f __snd_pcm_lib_xfer +EXPORT_SYMBOL sound/core/snd-pcm 0x11eba48e snd_pcm_create_iec958_consumer_hw_params +EXPORT_SYMBOL sound/core/snd-pcm 0x12fbd229 snd_pcm_release_substream +EXPORT_SYMBOL sound/core/snd-pcm 0x1422b458 snd_pcm_hw_constraint_msbits +EXPORT_SYMBOL sound/core/snd-pcm 0x15cbce33 snd_pcm_new_internal +EXPORT_SYMBOL sound/core/snd-pcm 0x19c0e3c4 snd_pcm_hw_constraint_pow2 +EXPORT_SYMBOL sound/core/snd-pcm 0x1d027e4b snd_pcm_format_signed +EXPORT_SYMBOL sound/core/snd-pcm 0x286044d7 snd_pcm_set_managed_buffer_all +EXPORT_SYMBOL sound/core/snd-pcm 0x306c209f snd_pcm_open_substream +EXPORT_SYMBOL sound/core/snd-pcm 0x3796bdcc snd_pcm_format_little_endian +EXPORT_SYMBOL sound/core/snd-pcm 0x39228760 snd_pcm_lib_preallocate_pages +EXPORT_SYMBOL sound/core/snd-pcm 0x39bf9301 _snd_pcm_hw_param_setempty +EXPORT_SYMBOL sound/core/snd-pcm 0x3fdf68b2 snd_pcm_lib_get_vmalloc_page +EXPORT_SYMBOL sound/core/snd-pcm 0x422e264c snd_pcm_hw_param_last +EXPORT_SYMBOL sound/core/snd-pcm 0x4f816e9b snd_pcm_format_big_endian +EXPORT_SYMBOL sound/core/snd-pcm 0x503bd137 snd_interval_ranges +EXPORT_SYMBOL sound/core/snd-pcm 0x51e0198f snd_pcm_lib_free_vmalloc_buffer +EXPORT_SYMBOL sound/core/snd-pcm 0x52e3e4a5 snd_pcm_hw_param_value +EXPORT_SYMBOL sound/core/snd-pcm 0x595f3cba snd_pcm_lib_preallocate_free_for_all +EXPORT_SYMBOL sound/core/snd-pcm 0x5c3d6873 snd_pcm_stop +EXPORT_SYMBOL sound/core/snd-pcm 0x5e7f4920 snd_pcm_format_set_silence +EXPORT_SYMBOL sound/core/snd-pcm 0x61df7752 snd_pcm_create_iec958_consumer +EXPORT_SYMBOL sound/core/snd-pcm 0x650f8603 snd_pcm_format_silence_64 +EXPORT_SYMBOL sound/core/snd-pcm 0x68a24153 snd_pcm_format_physical_width +EXPORT_SYMBOL sound/core/snd-pcm 0x69255f54 snd_pcm_hw_limit_rates +EXPORT_SYMBOL sound/core/snd-pcm 0x6ef8fcd8 snd_pcm_format_linear +EXPORT_SYMBOL sound/core/snd-pcm 0x74d966e0 snd_pcm_hw_constraint_mask64 +EXPORT_SYMBOL sound/core/snd-pcm 0x7940a072 snd_pcm_hw_constraint_ratdens +EXPORT_SYMBOL sound/core/snd-pcm 0x7b52aa96 _snd_pcm_lib_alloc_vmalloc_buffer +EXPORT_SYMBOL sound/core/snd-pcm 0x7e21d72e snd_dma_free_pages +EXPORT_SYMBOL sound/core/snd-pcm 0x812b9200 snd_pcm_new_stream +EXPORT_SYMBOL sound/core/snd-pcm 0x82869682 snd_pcm_set_sync +EXPORT_SYMBOL sound/core/snd-pcm 0x834dc955 snd_pcm_format_size +EXPORT_SYMBOL sound/core/snd-pcm 0x8592b2b9 snd_pcm_kernel_ioctl +EXPORT_SYMBOL sound/core/snd-pcm 0x87c4e233 snd_pcm_suspend_all +EXPORT_SYMBOL sound/core/snd-pcm 0x88c5aae1 snd_pcm_lib_mmap_iomem +EXPORT_SYMBOL sound/core/snd-pcm 0x8da507e0 snd_pcm_new +EXPORT_SYMBOL sound/core/snd-pcm 0x91a7c969 snd_pcm_hw_constraint_step +EXPORT_SYMBOL sound/core/snd-pcm 0x94098ff8 snd_interval_list +EXPORT_SYMBOL sound/core/snd-pcm 0x9523e3d0 snd_pcm_hw_refine +EXPORT_SYMBOL sound/core/snd-pcm 0x98a89a8b snd_pcm_hw_constraint_list +EXPORT_SYMBOL sound/core/snd-pcm 0x99f0ec77 snd_pcm_lib_ioctl +EXPORT_SYMBOL sound/core/snd-pcm 0x9cea575d snd_dma_alloc_pages_fallback +EXPORT_SYMBOL sound/core/snd-pcm 0xa61aa028 snd_pcm_format_unsigned +EXPORT_SYMBOL sound/core/snd-pcm 0xa8d61af4 snd_pcm_mmap_data +EXPORT_SYMBOL sound/core/snd-pcm 0xaafa5128 snd_pcm_lib_preallocate_pages_for_all +EXPORT_SYMBOL sound/core/snd-pcm 0xac437f7b snd_interval_ratnum +EXPORT_SYMBOL sound/core/snd-pcm 0xb04250e7 snd_pcm_hw_param_first +EXPORT_SYMBOL sound/core/snd-pcm 0xb6fcecaa snd_pcm_hw_constraint_integer +EXPORT_SYMBOL sound/core/snd-pcm 0xb7f6be6f snd_pcm_lib_malloc_pages +EXPORT_SYMBOL sound/core/snd-pcm 0xb9638db4 snd_pcm_rate_to_rate_bit +EXPORT_SYMBOL sound/core/snd-pcm 0xb9d3d356 snd_pcm_period_elapsed +EXPORT_SYMBOL sound/core/snd-pcm 0xbd614c56 snd_pcm_set_ops +EXPORT_SYMBOL sound/core/snd-pcm 0xbfa7e8e0 snd_pcm_set_managed_buffer +EXPORT_SYMBOL sound/core/snd-pcm 0xc05c8d1e snd_pcm_lib_free_pages +EXPORT_SYMBOL sound/core/snd-pcm 0xd607d159 snd_pcm_hw_rule_add +EXPORT_SYMBOL sound/core/snd-pcm 0xe56a9336 snd_pcm_format_width +EXPORT_SYMBOL sound/core/snd-pcm 0xe6856a06 snd_pcm_hw_constraint_ratnums +EXPORT_SYMBOL sound/core/snd-pcm 0xe75e9579 snd_pcm_hw_rule_noresample +EXPORT_SYMBOL sound/core/snd-pcm 0xef9817d9 snd_dma_alloc_pages +EXPORT_SYMBOL sound/core/snd-pcm 0xf6e30604 snd_pcm_hw_constraint_minmax +EXPORT_SYMBOL sound/core/snd-pcm 0xf87a806c snd_pcm_hw_constraint_ranges +EXPORT_SYMBOL sound/core/snd-pcm 0xff6104d0 snd_pcm_rate_bit_to_rate +EXPORT_SYMBOL sound/core/snd-rawmidi 0x007afdf3 snd_rawmidi_new +EXPORT_SYMBOL sound/core/snd-rawmidi 0x0e75059f snd_rawmidi_drain_input +EXPORT_SYMBOL sound/core/snd-rawmidi 0x14a0e6c3 snd_rawmidi_input_params +EXPORT_SYMBOL sound/core/snd-rawmidi 0x19344ecf snd_rawmidi_transmit_peek +EXPORT_SYMBOL sound/core/snd-rawmidi 0x1b31ce32 snd_rawmidi_kernel_open +EXPORT_SYMBOL sound/core/snd-rawmidi 0x2a0f379c snd_rawmidi_transmit +EXPORT_SYMBOL sound/core/snd-rawmidi 0x3d1a02a9 snd_rawmidi_receive +EXPORT_SYMBOL sound/core/snd-rawmidi 0x4e74ace5 snd_rawmidi_drop_output +EXPORT_SYMBOL sound/core/snd-rawmidi 0x551381d7 snd_rawmidi_kernel_write +EXPORT_SYMBOL sound/core/snd-rawmidi 0x55d80811 snd_rawmidi_kernel_read +EXPORT_SYMBOL sound/core/snd-rawmidi 0x661f234b snd_rawmidi_output_params +EXPORT_SYMBOL sound/core/snd-rawmidi 0x77e94ab3 snd_rawmidi_transmit_ack +EXPORT_SYMBOL sound/core/snd-rawmidi 0x8f6f602c snd_rawmidi_drain_output +EXPORT_SYMBOL sound/core/snd-rawmidi 0x9259236b snd_rawmidi_set_ops +EXPORT_SYMBOL sound/core/snd-rawmidi 0x9c3353cf snd_rawmidi_info_select +EXPORT_SYMBOL sound/core/snd-rawmidi 0xa97033a7 snd_rawmidi_proceed +EXPORT_SYMBOL sound/core/snd-rawmidi 0xcd0b1af9 __snd_rawmidi_transmit_ack +EXPORT_SYMBOL sound/core/snd-rawmidi 0xe0ca4604 snd_rawmidi_transmit_empty +EXPORT_SYMBOL sound/core/snd-rawmidi 0xf9048bf1 __snd_rawmidi_transmit_peek +EXPORT_SYMBOL sound/core/snd-rawmidi 0xff4c6f5f snd_rawmidi_kernel_release +EXPORT_SYMBOL sound/core/snd-seq-device 0x091def1c snd_seq_autoload_exit +EXPORT_SYMBOL sound/core/snd-seq-device 0x370a0736 snd_seq_autoload_init +EXPORT_SYMBOL sound/core/snd-seq-device 0x6339b6d0 snd_seq_device_load_drivers +EXPORT_SYMBOL sound/core/snd-seq-device 0x814e29fc snd_seq_device_new +EXPORT_SYMBOL sound/core/snd-timer 0x0476e571 snd_timer_resolution +EXPORT_SYMBOL sound/core/snd-timer 0x0fa60294 snd_timer_new +EXPORT_SYMBOL sound/core/snd-timer 0x44d19c5e snd_timer_pause +EXPORT_SYMBOL sound/core/snd-timer 0x6ae0f42a snd_timer_start +EXPORT_SYMBOL sound/core/snd-timer 0x7debad71 snd_timer_notify +EXPORT_SYMBOL sound/core/snd-timer 0x7e0f799e snd_timer_continue +EXPORT_SYMBOL sound/core/snd-timer 0x811e54e4 snd_timer_instance_new +EXPORT_SYMBOL sound/core/snd-timer 0x9b2de70f snd_timer_close +EXPORT_SYMBOL sound/core/snd-timer 0xaad6433b snd_timer_open +EXPORT_SYMBOL sound/core/snd-timer 0xd6cafcee snd_timer_global_new +EXPORT_SYMBOL sound/core/snd-timer 0xe1e63468 snd_timer_global_register +EXPORT_SYMBOL sound/core/snd-timer 0xe4945150 snd_timer_interrupt +EXPORT_SYMBOL sound/core/snd-timer 0xe53aa468 snd_timer_stop +EXPORT_SYMBOL sound/core/snd-timer 0xe9519c26 snd_timer_global_free +EXPORT_SYMBOL sound/core/snd-timer 0xf2e47b5f snd_timer_instance_free +EXPORT_SYMBOL sound/drivers/mpu401/snd-mpu401-uart 0x566d26d6 snd_mpu401_uart_new +EXPORT_SYMBOL sound/drivers/mpu401/snd-mpu401-uart 0x6d629c59 snd_mpu401_uart_interrupt_tx +EXPORT_SYMBOL sound/drivers/mpu401/snd-mpu401-uart 0xc0fec227 snd_mpu401_uart_interrupt +EXPORT_SYMBOL sound/drivers/opl3/snd-opl3-lib 0x05060a19 snd_opl3_regmap +EXPORT_SYMBOL sound/drivers/opl3/snd-opl3-lib 0x0ef1239d snd_opl3_create +EXPORT_SYMBOL sound/drivers/opl3/snd-opl3-lib 0x15f356e3 snd_opl3_new +EXPORT_SYMBOL sound/drivers/opl3/snd-opl3-lib 0x96b269a3 snd_opl3_init +EXPORT_SYMBOL sound/drivers/opl3/snd-opl3-lib 0x98aaf608 snd_opl3_load_patch +EXPORT_SYMBOL sound/drivers/opl3/snd-opl3-lib 0xa437c5a6 snd_opl3_interrupt +EXPORT_SYMBOL sound/drivers/opl3/snd-opl3-lib 0xc2c88200 snd_opl3_timer_new +EXPORT_SYMBOL sound/drivers/opl3/snd-opl3-lib 0xd6b08747 snd_opl3_reset +EXPORT_SYMBOL sound/drivers/opl3/snd-opl3-lib 0xe66622ba snd_opl3_find_patch +EXPORT_SYMBOL sound/drivers/opl3/snd-opl3-lib 0xec0a2aab snd_opl3_hwdep_new +EXPORT_SYMBOL sound/drivers/vx/snd-vx-lib 0x10755027 snd_vx_suspend +EXPORT_SYMBOL sound/drivers/vx/snd-vx-lib 0x17ef2bd4 snd_vx_resume +EXPORT_SYMBOL sound/drivers/vx/snd-vx-lib 0x18199774 snd_vx_load_boot_image +EXPORT_SYMBOL sound/drivers/vx/snd-vx-lib 0x226138b0 snd_vx_threaded_irq_handler +EXPORT_SYMBOL sound/drivers/vx/snd-vx-lib 0x2ed06eb1 snd_vx_create +EXPORT_SYMBOL sound/drivers/vx/snd-vx-lib 0x620b0a11 snd_vx_dsp_boot +EXPORT_SYMBOL sound/drivers/vx/snd-vx-lib 0xcb54081f snd_vx_free_firmware +EXPORT_SYMBOL sound/drivers/vx/snd-vx-lib 0xdc6c48c7 snd_vx_dsp_load +EXPORT_SYMBOL sound/drivers/vx/snd-vx-lib 0xeb38a791 snd_vx_check_reg_bit +EXPORT_SYMBOL sound/drivers/vx/snd-vx-lib 0xec1e9abb snd_vx_setup_firmware +EXPORT_SYMBOL sound/drivers/vx/snd-vx-lib 0xf1f04d23 snd_vx_irq_handler +EXPORT_SYMBOL sound/firewire/snd-firewire-lib 0x0149c410 fw_iso_resources_init +EXPORT_SYMBOL sound/firewire/snd-firewire-lib 0x0312afb9 amdtp_stream_pcm_prepare +EXPORT_SYMBOL sound/firewire/snd-firewire-lib 0x0cf65bed amdtp_stream_pcm_abort +EXPORT_SYMBOL sound/firewire/snd-firewire-lib 0x18abfe72 avc_general_get_plug_info +EXPORT_SYMBOL sound/firewire/snd-firewire-lib 0x1943453a amdtp_stream_add_pcm_hw_constraints +EXPORT_SYMBOL sound/firewire/snd-firewire-lib 0x20254e45 amdtp_syt_intervals +EXPORT_SYMBOL sound/firewire/snd-firewire-lib 0x282841be amdtp_stream_set_parameters +EXPORT_SYMBOL sound/firewire/snd-firewire-lib 0x2a02e578 fcp_bus_reset +EXPORT_SYMBOL sound/firewire/snd-firewire-lib 0x31352ea2 amdtp_stream_destroy +EXPORT_SYMBOL sound/firewire/snd-firewire-lib 0x3a797783 cmp_connection_break +EXPORT_SYMBOL sound/firewire/snd-firewire-lib 0x53ca18e8 amdtp_rate_table +EXPORT_SYMBOL sound/firewire/snd-firewire-lib 0x5b156d71 cmp_connection_release +EXPORT_SYMBOL sound/firewire/snd-firewire-lib 0x5c7ab615 fw_iso_resources_update +EXPORT_SYMBOL sound/firewire/snd-firewire-lib 0x63c881cd cmp_connection_check_used +EXPORT_SYMBOL sound/firewire/snd-firewire-lib 0x65eb4c42 fw_iso_resources_allocate +EXPORT_SYMBOL sound/firewire/snd-firewire-lib 0x75da5dda fcp_avc_transaction +EXPORT_SYMBOL sound/firewire/snd-firewire-lib 0x7a1fa990 snd_fw_transaction +EXPORT_SYMBOL sound/firewire/snd-firewire-lib 0x7adc3287 fw_iso_resources_destroy +EXPORT_SYMBOL sound/firewire/snd-firewire-lib 0x8c2d2ce4 fw_iso_resources_free +EXPORT_SYMBOL sound/firewire/snd-firewire-lib 0x93385ce4 avc_general_get_sig_fmt +EXPORT_SYMBOL sound/firewire/snd-firewire-lib 0x9ad08eef amdtp_stream_update +EXPORT_SYMBOL sound/firewire/snd-firewire-lib 0xaa00d11f amdtp_stream_get_max_payload +EXPORT_SYMBOL sound/firewire/snd-firewire-lib 0xad93c283 cmp_connection_init +EXPORT_SYMBOL sound/firewire/snd-firewire-lib 0xb05bba4f cmp_connection_update +EXPORT_SYMBOL sound/firewire/snd-firewire-lib 0xc2fc6256 snd_fw_schedule_registration +EXPORT_SYMBOL sound/firewire/snd-firewire-lib 0xc7197c28 avc_general_set_sig_fmt +EXPORT_SYMBOL sound/firewire/snd-firewire-lib 0xc813c755 cmp_connection_establish +EXPORT_SYMBOL sound/firewire/snd-firewire-lib 0xe26a1588 cmp_connection_destroy +EXPORT_SYMBOL sound/firewire/snd-firewire-lib 0xe423aa40 amdtp_stream_init +EXPORT_SYMBOL sound/firewire/snd-firewire-lib 0xec3c68c1 iso_packets_buffer_destroy +EXPORT_SYMBOL sound/firewire/snd-firewire-lib 0xf3171501 iso_packets_buffer_init +EXPORT_SYMBOL sound/firewire/snd-firewire-lib 0xf3e0b5fd cmp_connection_reserve +EXPORT_SYMBOL sound/i2c/other/snd-ak4113 0x0c9d3a9f snd_ak4113_resume +EXPORT_SYMBOL sound/i2c/other/snd-ak4113 0xf0ae7e14 snd_ak4113_suspend +EXPORT_SYMBOL sound/i2c/other/snd-ak4114 0x29b7e083 snd_ak4114_external_rate +EXPORT_SYMBOL sound/i2c/other/snd-ak4114 0x338c6fe8 snd_ak4114_check_rate_and_errors +EXPORT_SYMBOL sound/i2c/other/snd-ak4114 0x68910f62 snd_ak4114_suspend +EXPORT_SYMBOL sound/i2c/other/snd-ak4114 0x8c008014 snd_ak4114_create +EXPORT_SYMBOL sound/i2c/other/snd-ak4114 0xb2682671 snd_ak4114_reinit +EXPORT_SYMBOL sound/i2c/other/snd-ak4114 0xbd17f8ea snd_ak4114_reg_write +EXPORT_SYMBOL sound/i2c/other/snd-ak4114 0xecf0a429 snd_ak4114_build +EXPORT_SYMBOL sound/i2c/other/snd-ak4114 0xed0de9f1 snd_ak4114_resume +EXPORT_SYMBOL sound/i2c/other/snd-ak4xxx-adda 0x2ab0cb24 snd_akm4xxx_build_controls +EXPORT_SYMBOL sound/i2c/other/snd-ak4xxx-adda 0x64bcb475 snd_akm4xxx_write +EXPORT_SYMBOL sound/i2c/other/snd-ak4xxx-adda 0xb562be30 snd_akm4xxx_init +EXPORT_SYMBOL sound/i2c/other/snd-ak4xxx-adda 0xd4ab6172 snd_akm4xxx_reset +EXPORT_SYMBOL sound/i2c/other/snd-pt2258 0x1b397a81 snd_pt2258_reset +EXPORT_SYMBOL sound/i2c/other/snd-pt2258 0xf9f23e6f snd_pt2258_build_controls +EXPORT_SYMBOL sound/i2c/snd-i2c 0x05bc6d41 snd_i2c_readbytes +EXPORT_SYMBOL sound/i2c/snd-i2c 0x5129b8fe snd_i2c_bus_create +EXPORT_SYMBOL sound/i2c/snd-i2c 0x9203d261 snd_i2c_sendbytes +EXPORT_SYMBOL sound/i2c/snd-i2c 0xad44c42b snd_i2c_device_create +EXPORT_SYMBOL sound/i2c/snd-i2c 0xe8338459 snd_i2c_probeaddr +EXPORT_SYMBOL sound/i2c/snd-i2c 0xf8c20b04 snd_i2c_device_free +EXPORT_SYMBOL sound/isa/sb/snd-sb-common 0x2a116922 snd_sbmixer_write +EXPORT_SYMBOL sound/isa/sb/snd-sb-common 0x4c7c803f snd_sbmixer_add_ctl +EXPORT_SYMBOL sound/isa/sb/snd-sb-common 0x533ce877 snd_sbdsp_create +EXPORT_SYMBOL sound/isa/sb/snd-sb-common 0x7063f78e snd_sbmixer_new +EXPORT_SYMBOL sound/isa/sb/snd-sb-common 0x752d3b66 snd_sbdsp_reset +EXPORT_SYMBOL sound/isa/sb/snd-sb-common 0x878bff70 snd_sbdsp_get_byte +EXPORT_SYMBOL sound/isa/sb/snd-sb-common 0x89947c18 snd_sbdsp_command +EXPORT_SYMBOL sound/isa/sb/snd-sb-common 0x96bbb27c snd_sbmixer_suspend +EXPORT_SYMBOL sound/isa/sb/snd-sb-common 0xdae3cf75 snd_sbmixer_resume +EXPORT_SYMBOL sound/isa/sb/snd-sb-common 0xedb8d1f6 snd_sbmixer_read +EXPORT_SYMBOL sound/pci/ac97/snd-ac97-codec 0x061de001 snd_ac97_pcm_assign +EXPORT_SYMBOL sound/pci/ac97/snd-ac97-codec 0x17bf717c snd_ac97_write +EXPORT_SYMBOL sound/pci/ac97/snd-ac97-codec 0x370beae2 snd_ac97_get_short_name +EXPORT_SYMBOL sound/pci/ac97/snd-ac97-codec 0x3843bfa3 snd_ac97_bus +EXPORT_SYMBOL sound/pci/ac97/snd-ac97-codec 0x38dc0d2a snd_ac97_mixer +EXPORT_SYMBOL sound/pci/ac97/snd-ac97-codec 0x3a93a983 snd_ac97_pcm_close +EXPORT_SYMBOL sound/pci/ac97/snd-ac97-codec 0x45a65c27 snd_ac97_update_bits +EXPORT_SYMBOL sound/pci/ac97/snd-ac97-codec 0x4f9bcbb4 snd_ac97_pcm_double_rate_rules +EXPORT_SYMBOL sound/pci/ac97/snd-ac97-codec 0x567c7fd2 snd_ac97_read +EXPORT_SYMBOL sound/pci/ac97/snd-ac97-codec 0x5e05f0d0 snd_ac97_write_cache +EXPORT_SYMBOL sound/pci/ac97/snd-ac97-codec 0x81a3f489 snd_ac97_pcm_open +EXPORT_SYMBOL sound/pci/ac97/snd-ac97-codec 0x9a9d2ae3 snd_ac97_resume +EXPORT_SYMBOL sound/pci/ac97/snd-ac97-codec 0xb8f2e167 snd_ac97_tune_hardware +EXPORT_SYMBOL sound/pci/ac97/snd-ac97-codec 0xc00504d3 snd_ac97_suspend +EXPORT_SYMBOL sound/pci/ac97/snd-ac97-codec 0xca840622 snd_ac97_set_rate +EXPORT_SYMBOL sound/pci/ac97/snd-ac97-codec 0xdee43646 snd_ac97_update +EXPORT_SYMBOL sound/pci/ac97/snd-ac97-codec 0xe090a7ea snd_ac97_update_power +EXPORT_SYMBOL sound/pci/ice1712/snd-ice17xx-ak4xxx 0x0615dc06 snd_ice1712_akm4xxx_free +EXPORT_SYMBOL sound/pci/ice1712/snd-ice17xx-ak4xxx 0x0890a1e1 snd_ice1712_akm4xxx_build_controls +EXPORT_SYMBOL sound/pci/ice1712/snd-ice17xx-ak4xxx 0xb9d19920 snd_ice1712_akm4xxx_init +EXPORT_SYMBOL sound/pci/oxygen/snd-oxygen-lib 0x011feb52 oxygen_pci_pm +EXPORT_SYMBOL sound/pci/oxygen/snd-oxygen-lib 0x0915e403 oxygen_write_uart +EXPORT_SYMBOL sound/pci/oxygen/snd-oxygen-lib 0x1b8b2451 oxygen_read_ac97 +EXPORT_SYMBOL sound/pci/oxygen/snd-oxygen-lib 0x2d28921f oxygen_read32 +EXPORT_SYMBOL sound/pci/oxygen/snd-oxygen-lib 0x395586b0 oxygen_write16 +EXPORT_SYMBOL sound/pci/oxygen/snd-oxygen-lib 0x3edf116a oxygen_write32_masked +EXPORT_SYMBOL sound/pci/oxygen/snd-oxygen-lib 0x430968f5 oxygen_write8 +EXPORT_SYMBOL sound/pci/oxygen/snd-oxygen-lib 0x4c5121cd oxygen_write_spi +EXPORT_SYMBOL sound/pci/oxygen/snd-oxygen-lib 0x52366359 oxygen_reset_uart +EXPORT_SYMBOL sound/pci/oxygen/snd-oxygen-lib 0x555bd4ea oxygen_read16 +EXPORT_SYMBOL sound/pci/oxygen/snd-oxygen-lib 0x8f361759 oxygen_update_dac_routing +EXPORT_SYMBOL sound/pci/oxygen/snd-oxygen-lib 0xa2b59e7c oxygen_write_ac97 +EXPORT_SYMBOL sound/pci/oxygen/snd-oxygen-lib 0xa6ab9d55 oxygen_pci_probe +EXPORT_SYMBOL sound/pci/oxygen/snd-oxygen-lib 0xb14b9771 oxygen_write_ac97_masked +EXPORT_SYMBOL sound/pci/oxygen/snd-oxygen-lib 0xbe5d725f oxygen_read8 +EXPORT_SYMBOL sound/pci/oxygen/snd-oxygen-lib 0xc2c441a5 oxygen_pci_remove +EXPORT_SYMBOL sound/pci/oxygen/snd-oxygen-lib 0xc6c0708b oxygen_pci_shutdown +EXPORT_SYMBOL sound/pci/oxygen/snd-oxygen-lib 0xc9febbfb oxygen_write16_masked +EXPORT_SYMBOL sound/pci/oxygen/snd-oxygen-lib 0xcec2a8b9 oxygen_write_i2c +EXPORT_SYMBOL sound/pci/oxygen/snd-oxygen-lib 0xd21ff104 oxygen_write8_masked +EXPORT_SYMBOL sound/pci/oxygen/snd-oxygen-lib 0xeb20f7ed oxygen_write32 +EXPORT_SYMBOL sound/soc/amd/acp_audio_dma 0xea74f232 bt_uart_enable +EXPORT_SYMBOL sound/soc/codecs/snd-soc-pcm3060 0x22881b42 pcm3060_regmap +EXPORT_SYMBOL sound/soc/codecs/snd-soc-pcm3060 0x3416bb21 pcm3060_probe +EXPORT_SYMBOL sound/soc/codecs/snd-soc-rt715 0xed2acb24 hda_to_sdw +EXPORT_SYMBOL sound/soc/codecs/snd-soc-tlv320aic23 0x438077d3 tlv320aic23_regmap +EXPORT_SYMBOL sound/soc/codecs/snd-soc-tlv320aic23 0xa626bfdb tlv320aic23_probe +EXPORT_SYMBOL sound/soc/codecs/snd-soc-tlv320aic32x4 0x054884f2 aic32x4_remove +EXPORT_SYMBOL sound/soc/codecs/snd-soc-tlv320aic32x4 0x206ed4a2 aic32x4_regmap_config +EXPORT_SYMBOL sound/soc/codecs/snd-soc-tlv320aic32x4 0xce0aeaa5 aic32x4_probe +EXPORT_SYMBOL sound/soc/snd-soc-core 0xcd86d45b snd_soc_alloc_ac97_component +EXPORT_SYMBOL sound/soc/sof/snd-sof 0x0a7c5b18 sof_fw_ready +EXPORT_SYMBOL sound/soc/sof/snd-sof 0x114516c2 snd_sof_suspend +EXPORT_SYMBOL sound/soc/sof/snd-sof 0x143ece66 snd_sof_complete +EXPORT_SYMBOL sound/soc/sof/snd-sof 0x17293320 snd_sof_trace_notify_for_error +EXPORT_SYMBOL sound/soc/sof/snd-sof 0x19fa3b3d snd_sof_run_firmware +EXPORT_SYMBOL sound/soc/sof/snd-sof 0x1b3d5bc8 snd_sof_dsp_update_bits64_unlocked +EXPORT_SYMBOL sound/soc/sof/snd-sof 0x1d22a5ea sof_ipc_tx_message_no_pm +EXPORT_SYMBOL sound/soc/sof/snd-sof 0x2376feab snd_sof_ipc_free +EXPORT_SYMBOL sound/soc/sof/snd-sof 0x23f5b402 snd_sof_fw_unload +EXPORT_SYMBOL sound/soc/sof/snd-sof 0x292d9582 snd_sof_load_topology +EXPORT_SYMBOL sound/soc/sof/snd-sof 0x2ab3ad32 sof_mailbox_write +EXPORT_SYMBOL sound/soc/sof/snd-sof 0x2c3c1cc3 snd_sof_ipc_set_get_comp_data +EXPORT_SYMBOL sound/soc/sof/snd-sof 0x36e65ec7 snd_sof_fw_parse_ext_data +EXPORT_SYMBOL sound/soc/sof/snd-sof 0x37ff4780 snd_sof_prepare +EXPORT_SYMBOL sound/soc/sof/snd-sof 0x3ac24184 snd_sof_pci_update_bits +EXPORT_SYMBOL sound/soc/sof/snd-sof 0x3b47e4f9 sof_mailbox_read +EXPORT_SYMBOL sound/soc/sof/snd-sof 0x4530659c snd_sof_resume +EXPORT_SYMBOL sound/soc/sof/snd-sof 0x47901328 snd_sof_handle_fw_exception +EXPORT_SYMBOL sound/soc/sof/snd-sof 0x4921f318 snd_sof_get_status +EXPORT_SYMBOL sound/soc/sof/snd-sof 0x52bd4111 sof_block_read +EXPORT_SYMBOL sound/soc/sof/snd-sof 0x57947a88 snd_sof_ipc_msgs_rx +EXPORT_SYMBOL sound/soc/sof/snd-sof 0x5c29e9ee sof_machine_unregister +EXPORT_SYMBOL sound/soc/sof/snd-sof 0x5f794197 snd_sof_device_remove +EXPORT_SYMBOL sound/soc/sof/snd-sof 0x64190439 sof_io_write64 +EXPORT_SYMBOL sound/soc/sof/snd-sof 0x6d0f5753 snd_sof_device_probe +EXPORT_SYMBOL sound/soc/sof/snd-sof 0x6d69c54d snd_sof_release_trace +EXPORT_SYMBOL sound/soc/sof/snd-sof 0x779dd965 snd_sof_runtime_resume +EXPORT_SYMBOL sound/soc/sof/snd-sof 0x7d12a183 snd_sof_load_firmware_memcpy +EXPORT_SYMBOL sound/soc/sof/snd-sof 0x834f7178 snd_sof_free_trace +EXPORT_SYMBOL sound/soc/sof/snd-sof 0x89ac8226 sof_block_write +EXPORT_SYMBOL sound/soc/sof/snd-sof 0x8be3e6ca snd_sof_dsp_only_d0i3_compatible_stream_active +EXPORT_SYMBOL sound/soc/sof/snd-sof 0x8ece3453 sof_machine_check +EXPORT_SYMBOL sound/soc/sof/snd-sof 0x92cc9450 sof_io_read64 +EXPORT_SYMBOL sound/soc/sof/snd-sof 0x957cda82 snd_sof_dsp_panic +EXPORT_SYMBOL sound/soc/sof/snd-sof 0x98853efe snd_sof_dsp_update_bits_unlocked +EXPORT_SYMBOL sound/soc/sof/snd-sof 0x9de97ea4 snd_sof_init_trace +EXPORT_SYMBOL sound/soc/sof/snd-sof 0xacb164aa snd_sof_ipc_init +EXPORT_SYMBOL sound/soc/sof/snd-sof 0xad391ef7 sof_machine_register +EXPORT_SYMBOL sound/soc/sof/snd-sof 0xad5f825b snd_sof_ipc_stream_posn +EXPORT_SYMBOL sound/soc/sof/snd-sof 0xaf39e5d8 snd_sof_ipc_valid +EXPORT_SYMBOL sound/soc/sof/snd-sof 0xafacbaa6 snd_sof_load_firmware_raw +EXPORT_SYMBOL sound/soc/sof/snd-sof 0xb39bfac1 snd_sof_create_page_table +EXPORT_SYMBOL sound/soc/sof/snd-sof 0xb83af2b5 snd_sof_load_firmware +EXPORT_SYMBOL sound/soc/sof/snd-sof 0xb902c433 snd_sof_dsp_update_bits_forced +EXPORT_SYMBOL sound/soc/sof/snd-sof 0xc6c11889 snd_sof_parse_module_memcpy +EXPORT_SYMBOL sound/soc/sof/snd-sof 0xc8170b5b snd_sof_ipc_reply +EXPORT_SYMBOL sound/soc/sof/snd-sof 0xccff2b91 snd_sof_dsp_update_bits64 +EXPORT_SYMBOL sound/soc/sof/snd-sof 0xcfdc5f98 sof_ipc_tx_message +EXPORT_SYMBOL sound/soc/sof/snd-sof 0xd516f1c6 snd_sof_runtime_suspend +EXPORT_SYMBOL sound/soc/sof/snd-sof 0xdc097acb snd_sof_runtime_idle +EXPORT_SYMBOL sound/soc/sof/snd-sof 0xe87c3584 snd_sof_pcm_period_elapsed +EXPORT_SYMBOL sound/soc/sof/snd-sof 0xeac99303 sof_io_write +EXPORT_SYMBOL sound/soc/sof/snd-sof 0xeedd3a40 snd_sof_dsp_mailbox_init +EXPORT_SYMBOL sound/soc/sof/snd-sof 0xf25c9c7e sof_io_read +EXPORT_SYMBOL sound/soc/sof/snd-sof 0xf8fd13fa snd_sof_dsp_update_bits +EXPORT_SYMBOL sound/soundcore 0x1a623012 register_sound_special +EXPORT_SYMBOL sound/soundcore 0x6dd11b53 register_sound_special_device +EXPORT_SYMBOL sound/soundcore 0x7afc9d8a unregister_sound_mixer +EXPORT_SYMBOL sound/soundcore 0x99c95fa5 unregister_sound_special +EXPORT_SYMBOL sound/soundcore 0xc024c3ed register_sound_mixer +EXPORT_SYMBOL sound/soundcore 0xc5b22a79 sound_class +EXPORT_SYMBOL sound/soundcore 0xcc04222c register_sound_dsp +EXPORT_SYMBOL sound/soundcore 0xcd083b10 unregister_sound_dsp +EXPORT_SYMBOL sound/usb/snd-usbmidi-lib 0x16756dc0 snd_usbmidi_input_start +EXPORT_SYMBOL sound/usb/snd-usbmidi-lib 0x63343b1d snd_usbmidi_input_stop +EXPORT_SYMBOL sound/usb/snd-usbmidi-lib 0xb2af19e1 snd_usbmidi_resume +EXPORT_SYMBOL sound/usb/snd-usbmidi-lib 0xbed43a41 snd_usbmidi_suspend +EXPORT_SYMBOL sound/usb/snd-usbmidi-lib 0xd9d2bb03 snd_usbmidi_disconnect +EXPORT_SYMBOL sound/usb/snd-usbmidi-lib 0xe9ccb4ec __snd_usbmidi_create +EXPORT_SYMBOL vmlinux 0x000fb304 sockfd_lookup +EXPORT_SYMBOL vmlinux 0x001d84ab page_frag_alloc +EXPORT_SYMBOL vmlinux 0x002ea681 freeze_bdev +EXPORT_SYMBOL vmlinux 0x003a7a96 h_ipi_redirect +EXPORT_SYMBOL vmlinux 0x00401cb7 mutex_unlock +EXPORT_SYMBOL vmlinux 0x004929ad ip_options_rcv_srr +EXPORT_SYMBOL vmlinux 0x0058f89c eth_prepare_mac_addr_change +EXPORT_SYMBOL vmlinux 0x009249fe gen_pool_virt_to_phys +EXPORT_SYMBOL vmlinux 0x00aae6c2 seq_lseek +EXPORT_SYMBOL vmlinux 0x00aaeb91 sk_mc_loop +EXPORT_SYMBOL vmlinux 0x00b4e615 posix_acl_equiv_mode +EXPORT_SYMBOL vmlinux 0x00ba6914 cdrom_mode_select +EXPORT_SYMBOL vmlinux 0x00c2f9b2 config_item_get_unless_zero +EXPORT_SYMBOL vmlinux 0x00c82055 nlmsg_notify +EXPORT_SYMBOL vmlinux 0x00d7e722 vme_lm_count +EXPORT_SYMBOL vmlinux 0x01000e51 schedule +EXPORT_SYMBOL vmlinux 0x011a0e10 __xfrm_state_destroy +EXPORT_SYMBOL vmlinux 0x0129844a __destroy_inode +EXPORT_SYMBOL vmlinux 0x0129c4f8 par_io_data_set +EXPORT_SYMBOL vmlinux 0x012a97fc xor_altivec_4 +EXPORT_SYMBOL vmlinux 0x0136d576 input_get_timestamp +EXPORT_SYMBOL vmlinux 0x0140c525 gen_pool_create +EXPORT_SYMBOL vmlinux 0x0147812c kblockd_mod_delayed_work_on +EXPORT_SYMBOL vmlinux 0x01553371 vm_brk_flags +EXPORT_SYMBOL vmlinux 0x015af7f4 system_state +EXPORT_SYMBOL vmlinux 0x01633c4d neigh_app_ns +EXPORT_SYMBOL vmlinux 0x01757935 rdmacg_register_device +EXPORT_SYMBOL vmlinux 0x017584e9 of_parse_phandle_with_fixed_args +EXPORT_SYMBOL vmlinux 0x017de3d5 nr_cpu_ids +EXPORT_SYMBOL vmlinux 0x018574a1 mb_cache_entry_delete +EXPORT_SYMBOL vmlinux 0x0188cd88 vme_alloc_consistent +EXPORT_SYMBOL vmlinux 0x01921587 jbd2_journal_invalidatepage +EXPORT_SYMBOL vmlinux 0x01982074 xa_set_mark +EXPORT_SYMBOL vmlinux 0x0198ec12 eth_validate_addr +EXPORT_SYMBOL vmlinux 0x01ac373b zero_fill_bio_iter +EXPORT_SYMBOL vmlinux 0x01bf55fc paddr_vmcoreinfo_note +EXPORT_SYMBOL vmlinux 0x01c203a7 __netdev_alloc_skb +EXPORT_SYMBOL vmlinux 0x01cf4434 __skb_ext_del +EXPORT_SYMBOL vmlinux 0x01ddd9c5 netdev_notice +EXPORT_SYMBOL vmlinux 0x01e3e32a d_make_root +EXPORT_SYMBOL vmlinux 0x01f7e45b __cleancache_invalidate_inode +EXPORT_SYMBOL vmlinux 0x01fa63f7 of_phy_connect +EXPORT_SYMBOL vmlinux 0x01fd8d2a sg_miter_start +EXPORT_SYMBOL vmlinux 0x02005ee5 mipi_dsi_dcs_enter_sleep_mode +EXPORT_SYMBOL vmlinux 0x02012c1a ip_mc_check_igmp +EXPORT_SYMBOL vmlinux 0x020aa393 __pci_register_driver +EXPORT_SYMBOL vmlinux 0x020dbf27 bitmap_alloc +EXPORT_SYMBOL vmlinux 0x02124474 ip_send_check +EXPORT_SYMBOL vmlinux 0x0228925f iowrite64_hi_lo +EXPORT_SYMBOL vmlinux 0x0245c633 fscrypt_get_encryption_info +EXPORT_SYMBOL vmlinux 0x024e21fc unregister_sysctl_table +EXPORT_SYMBOL vmlinux 0x025483b1 set_current_groups +EXPORT_SYMBOL vmlinux 0x0256651d xfrm_policy_register_afinfo +EXPORT_SYMBOL vmlinux 0x025aafd0 ww_mutex_lock +EXPORT_SYMBOL vmlinux 0x0265d724 import_iovec +EXPORT_SYMBOL vmlinux 0x0274dc2b netif_get_num_default_rss_queues +EXPORT_SYMBOL vmlinux 0x0289dca8 pci_iomap_range +EXPORT_SYMBOL vmlinux 0x028f2f19 scsi_eh_prep_cmnd +EXPORT_SYMBOL vmlinux 0x0296695f refcount_warn_saturate +EXPORT_SYMBOL vmlinux 0x02a18c74 nf_conntrack_destroy +EXPORT_SYMBOL vmlinux 0x02a19810 kernel_bind +EXPORT_SYMBOL vmlinux 0x02b124ec of_phy_deregister_fixed_link +EXPORT_SYMBOL vmlinux 0x02b3a92d try_wait_for_completion +EXPORT_SYMBOL vmlinux 0x02b8ab42 sg_copy_to_buffer +EXPORT_SYMBOL vmlinux 0x02c065f8 ucc_set_qe_mux_mii_mng +EXPORT_SYMBOL vmlinux 0x02d99ff5 fscrypt_has_permitted_context +EXPORT_SYMBOL vmlinux 0x02df136f dm_register_target +EXPORT_SYMBOL vmlinux 0x02df50b0 jiffies +EXPORT_SYMBOL vmlinux 0x02ea111e scsi_driverbyte_string +EXPORT_SYMBOL vmlinux 0x02efedcc ipv6_chk_custom_prefix +EXPORT_SYMBOL vmlinux 0x0303985d dev_uc_sync_multiple +EXPORT_SYMBOL vmlinux 0x030b9c6e flow_block_cb_alloc +EXPORT_SYMBOL vmlinux 0x0318e4f3 posix_test_lock +EXPORT_SYMBOL vmlinux 0x03281db3 vme_register_driver +EXPORT_SYMBOL vmlinux 0x03301b1c abx500_remove_ops +EXPORT_SYMBOL vmlinux 0x0334da4e scsi_command_size_tbl +EXPORT_SYMBOL vmlinux 0x0337aaa8 inode_init_always +EXPORT_SYMBOL vmlinux 0x034a04ca register_framebuffer +EXPORT_SYMBOL vmlinux 0x0362ee1f genl_notify +EXPORT_SYMBOL vmlinux 0x0366307a console_suspend_enabled +EXPORT_SYMBOL vmlinux 0x037a0cba kfree +EXPORT_SYMBOL vmlinux 0x03815f35 ledtrig_disk_activity +EXPORT_SYMBOL vmlinux 0x0385f70c iov_iter_kvec +EXPORT_SYMBOL vmlinux 0x038678e4 msi_bitmap_alloc_hwirqs +EXPORT_SYMBOL vmlinux 0x0397edd5 fb_edid_to_monspecs +EXPORT_SYMBOL vmlinux 0x03994fcb abx500_startup_irq_enabled +EXPORT_SYMBOL vmlinux 0x03b77104 inet_rtx_syn_ack +EXPORT_SYMBOL vmlinux 0x03bcd5a6 loop_register_transfer +EXPORT_SYMBOL vmlinux 0x03c3d33a tcf_em_register +EXPORT_SYMBOL vmlinux 0x03dc6b7d vfs_fsync +EXPORT_SYMBOL vmlinux 0x03e59816 __getblk_gfp +EXPORT_SYMBOL vmlinux 0x03e62097 d_instantiate_new +EXPORT_SYMBOL vmlinux 0x03fd2571 vm_unmap_ram +EXPORT_SYMBOL vmlinux 0x04064e4e __skb_gso_segment +EXPORT_SYMBOL vmlinux 0x041253b4 of_cpu_node_to_id +EXPORT_SYMBOL vmlinux 0x04482cdb __refrigerator +EXPORT_SYMBOL vmlinux 0x044ce70b pci_iounmap +EXPORT_SYMBOL vmlinux 0x045b4cad sg_miter_skip +EXPORT_SYMBOL vmlinux 0x0464dfe8 vio_find_node +EXPORT_SYMBOL vmlinux 0x04707b3b thaw_super +EXPORT_SYMBOL vmlinux 0x0476d02b ipv6_chk_prefix +EXPORT_SYMBOL vmlinux 0x047ff9fd key_validate +EXPORT_SYMBOL vmlinux 0x04863e28 hdmi_audio_infoframe_pack_only +EXPORT_SYMBOL vmlinux 0x04889f05 block_is_partially_uptodate +EXPORT_SYMBOL vmlinux 0x04ab9223 scsi_host_put +EXPORT_SYMBOL vmlinux 0x04adaa66 get_watch_queue +EXPORT_SYMBOL vmlinux 0x04c5fcbd mr_fill_mroute +EXPORT_SYMBOL vmlinux 0x04c875f0 phy_init_eee +EXPORT_SYMBOL vmlinux 0x04d51a8d ppp_dev_name +EXPORT_SYMBOL vmlinux 0x04e0865c __cgroup_bpf_run_filter_skb +EXPORT_SYMBOL vmlinux 0x04ea56f9 _kstrtol +EXPORT_SYMBOL vmlinux 0x04ea5d10 ksize +EXPORT_SYMBOL vmlinux 0x04f158be cpu_sibling_map +EXPORT_SYMBOL vmlinux 0x04f8c0ce d_prune_aliases +EXPORT_SYMBOL vmlinux 0x04fc2a10 put_cmsg_scm_timestamping +EXPORT_SYMBOL vmlinux 0x04fe0a83 blkdev_issue_zeroout +EXPORT_SYMBOL vmlinux 0x05043438 powerpc_debugfs_root +EXPORT_SYMBOL vmlinux 0x05110bba tso_build_data +EXPORT_SYMBOL vmlinux 0x0512e2ea path_has_submounts +EXPORT_SYMBOL vmlinux 0x05186ca4 flush_icache_range +EXPORT_SYMBOL vmlinux 0x05188575 vfs_get_link +EXPORT_SYMBOL vmlinux 0x0518ee89 scsi_command_normalize_sense +EXPORT_SYMBOL vmlinux 0x0519b917 tty_port_tty_set +EXPORT_SYMBOL vmlinux 0x051c9b89 simple_nosetlease +EXPORT_SYMBOL vmlinux 0x05240ee7 percpu_counter_batch +EXPORT_SYMBOL vmlinux 0x0527beba netdev_lower_get_next +EXPORT_SYMBOL vmlinux 0x0530dede _raw_write_trylock +EXPORT_SYMBOL vmlinux 0x0536955d __breadahead_gfp +EXPORT_SYMBOL vmlinux 0x0537a459 input_mt_init_slots +EXPORT_SYMBOL vmlinux 0x0540a9e9 simple_empty +EXPORT_SYMBOL vmlinux 0x054496b4 schedule_timeout_interruptible +EXPORT_SYMBOL vmlinux 0x05489180 find_lock_entry +EXPORT_SYMBOL vmlinux 0x05519d30 refcount_dec_and_lock_irqsave +EXPORT_SYMBOL vmlinux 0x0558c60f jbd2_journal_errno +EXPORT_SYMBOL vmlinux 0x056d360d pci_ep_cfs_add_epf_group +EXPORT_SYMBOL vmlinux 0x056fd00f skb_set_owner_w +EXPORT_SYMBOL vmlinux 0x05a03903 remap_vmalloc_range_partial +EXPORT_SYMBOL vmlinux 0x05a8f8ff input_set_abs_params +EXPORT_SYMBOL vmlinux 0x05acc4a2 __phy_write_mmd +EXPORT_SYMBOL vmlinux 0x05aee050 flush_signals +EXPORT_SYMBOL vmlinux 0x05c81fec generic_file_readonly_mmap +EXPORT_SYMBOL vmlinux 0x05d0486b bdev_stack_limits +EXPORT_SYMBOL vmlinux 0x06073fa8 file_remove_privs +EXPORT_SYMBOL vmlinux 0x060ac106 bdi_put +EXPORT_SYMBOL vmlinux 0x061651be strcat +EXPORT_SYMBOL vmlinux 0x061cba75 netdev_class_remove_file_ns +EXPORT_SYMBOL vmlinux 0x062ae01d vme_dma_request +EXPORT_SYMBOL vmlinux 0x063295e9 ip_sock_set_recverr +EXPORT_SYMBOL vmlinux 0x0634100a bitmap_parselist_user +EXPORT_SYMBOL vmlinux 0x0641dc18 component_match_add_typed +EXPORT_SYMBOL vmlinux 0x065246b8 frame_vector_create +EXPORT_SYMBOL vmlinux 0x065a8b7d kernel_sendpage_locked +EXPORT_SYMBOL vmlinux 0x0689e114 dput +EXPORT_SYMBOL vmlinux 0x06a86bc1 iowrite16 +EXPORT_SYMBOL vmlinux 0x06b2f8c6 tty_vhangup +EXPORT_SYMBOL vmlinux 0x06b63bcd copy_page_to_iter +EXPORT_SYMBOL vmlinux 0x06c47b43 skb_try_coalesce +EXPORT_SYMBOL vmlinux 0x06c8f2de slhc_compress +EXPORT_SYMBOL vmlinux 0x06c9d7d5 pci_release_region +EXPORT_SYMBOL vmlinux 0x06e2fc9c mr_mfc_seq_idx +EXPORT_SYMBOL vmlinux 0x06e3b569 pci_clear_master +EXPORT_SYMBOL vmlinux 0x06fa3bed posix_acl_to_xattr +EXPORT_SYMBOL vmlinux 0x07011f9d __xfrm_state_delete +EXPORT_SYMBOL vmlinux 0x0720eda9 input_handler_for_each_handle +EXPORT_SYMBOL vmlinux 0x0729722b fbcon_rotate_cw +EXPORT_SYMBOL vmlinux 0x072f901c vme_master_rmw +EXPORT_SYMBOL vmlinux 0x07378681 tcf_exts_terse_dump +EXPORT_SYMBOL vmlinux 0x074e9213 down_killable +EXPORT_SYMBOL vmlinux 0x075165c1 netdev_upper_dev_link +EXPORT_SYMBOL vmlinux 0x0758a0fb ip6_fraglist_init +EXPORT_SYMBOL vmlinux 0x075baad1 request_firmware_nowait +EXPORT_SYMBOL vmlinux 0x076479e7 __debugger_fault_handler +EXPORT_SYMBOL vmlinux 0x07685711 skb_find_text +EXPORT_SYMBOL vmlinux 0x0776f1c3 devm_clk_get_optional +EXPORT_SYMBOL vmlinux 0x077e23f5 devm_extcon_unregister_notifier +EXPORT_SYMBOL vmlinux 0x07a890c8 fb_alloc_cmap +EXPORT_SYMBOL vmlinux 0x07bd15ac __debugger_sstep +EXPORT_SYMBOL vmlinux 0x07be4eea starget_for_each_device +EXPORT_SYMBOL vmlinux 0x07cc4a5d printk_timed_ratelimit +EXPORT_SYMBOL vmlinux 0x07e3ffdd mipi_dsi_dcs_write_buffer +EXPORT_SYMBOL vmlinux 0x07f57478 pci_unmap_iospace +EXPORT_SYMBOL vmlinux 0x07f59e04 kmem_cache_destroy +EXPORT_SYMBOL vmlinux 0x07fe813d pcie_get_readrq +EXPORT_SYMBOL vmlinux 0x0805f2c8 ecryptfs_get_auth_tok_key +EXPORT_SYMBOL vmlinux 0x080a54fe sock_no_getname +EXPORT_SYMBOL vmlinux 0x0822b040 param_get_byte +EXPORT_SYMBOL vmlinux 0x08249512 iwe_stream_add_point +EXPORT_SYMBOL vmlinux 0x082a3c85 pci_enable_device_mem +EXPORT_SYMBOL vmlinux 0x082ba8f4 phy_set_asym_pause +EXPORT_SYMBOL vmlinux 0x082c3213 pci_root_buses +EXPORT_SYMBOL vmlinux 0x08344a95 inet_shutdown +EXPORT_SYMBOL vmlinux 0x0839b69e inet_listen +EXPORT_SYMBOL vmlinux 0x083eb21c rfkill_unregister +EXPORT_SYMBOL vmlinux 0x08531476 pci_unregister_driver +EXPORT_SYMBOL vmlinux 0x085ae84d f_setown +EXPORT_SYMBOL vmlinux 0x086ad6f4 __xfrm_init_state +EXPORT_SYMBOL vmlinux 0x08713a94 kernel_sock_ip_overhead +EXPORT_SYMBOL vmlinux 0x0873489d uart_update_timeout +EXPORT_SYMBOL vmlinux 0x0882a449 security_xfrm_policy_alloc +EXPORT_SYMBOL vmlinux 0x08b3ff4c input_register_device +EXPORT_SYMBOL vmlinux 0x08b4dae1 mmc_of_parse +EXPORT_SYMBOL vmlinux 0x08c1d68c vfs_dup_fs_context +EXPORT_SYMBOL vmlinux 0x08e5502f generic_listxattr +EXPORT_SYMBOL vmlinux 0x08f25bf6 sock_set_keepalive +EXPORT_SYMBOL vmlinux 0x090a1582 d_tmpfile +EXPORT_SYMBOL vmlinux 0x091015b8 blk_queue_io_min +EXPORT_SYMBOL vmlinux 0x0915491a tty_port_free_xmit_buf +EXPORT_SYMBOL vmlinux 0x092491b5 xfrm_input +EXPORT_SYMBOL vmlinux 0x09376deb refresh_frequency_limits +EXPORT_SYMBOL vmlinux 0x0943dc1f sock_common_setsockopt +EXPORT_SYMBOL vmlinux 0x09769037 dmt_modes +EXPORT_SYMBOL vmlinux 0x098b71c6 fb_dealloc_cmap +EXPORT_SYMBOL vmlinux 0x098cc86e ipv6_dev_get_saddr +EXPORT_SYMBOL vmlinux 0x09987417 __d_lookup_done +EXPORT_SYMBOL vmlinux 0x09a1fe62 ip_frag_next +EXPORT_SYMBOL vmlinux 0x09c8eb55 font_vga_8x16 +EXPORT_SYMBOL vmlinux 0x09d44df9 in_lock_functions +EXPORT_SYMBOL vmlinux 0x0a10deee proc_create_single_data +EXPORT_SYMBOL vmlinux 0x0a292872 reservation_seqcount_class +EXPORT_SYMBOL vmlinux 0x0a471030 tcp_rx_skb_cache_key +EXPORT_SYMBOL vmlinux 0x0a4787e0 netdev_adjacent_change_abort +EXPORT_SYMBOL vmlinux 0x0a4bd5d3 device_match_acpi_dev +EXPORT_SYMBOL vmlinux 0x0a54e602 security_path_mkdir +EXPORT_SYMBOL vmlinux 0x0a56e3bb block_truncate_page +EXPORT_SYMBOL vmlinux 0x0a5d3209 tcp_seq_start +EXPORT_SYMBOL vmlinux 0x0a644032 bio_integrity_trim +EXPORT_SYMBOL vmlinux 0x0a770832 register_memory_notifier +EXPORT_SYMBOL vmlinux 0x0a9cd5e3 inet_confirm_addr +EXPORT_SYMBOL vmlinux 0x0aa1016f flow_block_cb_setup_simple +EXPORT_SYMBOL vmlinux 0x0aa10c64 proto_unregister +EXPORT_SYMBOL vmlinux 0x0aa309cf synchronize_hardirq +EXPORT_SYMBOL vmlinux 0x0aa7ba62 __skb_free_datagram_locked +EXPORT_SYMBOL vmlinux 0x0aaa1901 sock_release +EXPORT_SYMBOL vmlinux 0x0aaccc92 pci_remap_iospace +EXPORT_SYMBOL vmlinux 0x0acf7679 dma_issue_pending_all +EXPORT_SYMBOL vmlinux 0x0adbb86f inet_frag_destroy +EXPORT_SYMBOL vmlinux 0x0ae5e19e pagevec_lookup_range +EXPORT_SYMBOL vmlinux 0x0ae6e6a1 get_disk_and_module +EXPORT_SYMBOL vmlinux 0x0b014e5e add_to_pipe +EXPORT_SYMBOL vmlinux 0x0b04b81c security_binder_transaction +EXPORT_SYMBOL vmlinux 0x0b09865d __netlink_kernel_create +EXPORT_SYMBOL vmlinux 0x0b144a9a bdget +EXPORT_SYMBOL vmlinux 0x0b1601eb set_nlink +EXPORT_SYMBOL vmlinux 0x0b1beb31 vmalloc_32_user +EXPORT_SYMBOL vmlinux 0x0b2cb334 psched_ratecfg_precompute +EXPORT_SYMBOL vmlinux 0x0b2e1ec7 h_get_mpp +EXPORT_SYMBOL vmlinux 0x0b3cdce5 tty_register_device +EXPORT_SYMBOL vmlinux 0x0b4bc87f vfs_ioc_fssetxattr_check +EXPORT_SYMBOL vmlinux 0x0b5254cc key_move +EXPORT_SYMBOL vmlinux 0x0b6a0fa9 sock_diag_put_filterinfo +EXPORT_SYMBOL vmlinux 0x0b6ae7e6 dma_resv_reserve_shared +EXPORT_SYMBOL vmlinux 0x0b70143f inet_proto_csum_replace16 +EXPORT_SYMBOL vmlinux 0x0b742fd7 simple_strtol +EXPORT_SYMBOL vmlinux 0x0b8549e9 blk_queue_logical_block_size +EXPORT_SYMBOL vmlinux 0x0b8a6338 neigh_proc_dointvec_jiffies +EXPORT_SYMBOL vmlinux 0x0ba293f0 devm_devfreq_unregister_notifier +EXPORT_SYMBOL vmlinux 0x0bc477a2 irq_set_irq_type +EXPORT_SYMBOL vmlinux 0x0bcf3a81 compat_ipv6_getsockopt +EXPORT_SYMBOL vmlinux 0x0bd18062 user_path_at_empty +EXPORT_SYMBOL vmlinux 0x0bd3264b vfs_unlink +EXPORT_SYMBOL vmlinux 0x0bec2981 scsi_print_command +EXPORT_SYMBOL vmlinux 0x0bf36885 do_wait_intr +EXPORT_SYMBOL vmlinux 0x0c04a8a4 mr_table_alloc +EXPORT_SYMBOL vmlinux 0x0c06745b __frontswap_test +EXPORT_SYMBOL vmlinux 0x0c0f79af ZSTD_getDictID_fromFrame +EXPORT_SYMBOL vmlinux 0x0c121503 locks_mandatory_area +EXPORT_SYMBOL vmlinux 0x0c25ec48 secure_tcpv6_seq +EXPORT_SYMBOL vmlinux 0x0c3d40b8 __sk_dst_check +EXPORT_SYMBOL vmlinux 0x0c5c461f pci_enable_device +EXPORT_SYMBOL vmlinux 0x0c6bdc3f vme_master_read +EXPORT_SYMBOL vmlinux 0x0c7f6b5f tcp_fastopen_defer_connect +EXPORT_SYMBOL vmlinux 0x0c88f224 phy_stop +EXPORT_SYMBOL vmlinux 0x0ca814c0 __ip_select_ident +EXPORT_SYMBOL vmlinux 0x0cb0601a node_states +EXPORT_SYMBOL vmlinux 0x0cb12092 xa_destroy +EXPORT_SYMBOL vmlinux 0x0cb264a1 security_lock_kernel_down +EXPORT_SYMBOL vmlinux 0x0cc4b4b6 crc_ccitt_false +EXPORT_SYMBOL vmlinux 0x0ce19729 mb_cache_entry_touch +EXPORT_SYMBOL vmlinux 0x0ce4f617 jbd2_journal_destroy +EXPORT_SYMBOL vmlinux 0x0ce91c6f fs_param_is_path +EXPORT_SYMBOL vmlinux 0x0cfdd5ad vga_set_legacy_decoding +EXPORT_SYMBOL vmlinux 0x0d07f543 get_anon_bdev +EXPORT_SYMBOL vmlinux 0x0d08f02d tty_port_block_til_ready +EXPORT_SYMBOL vmlinux 0x0d1f31d3 tty_insert_flip_string_fixed_flag +EXPORT_SYMBOL vmlinux 0x0d267d46 sock_setsockopt +EXPORT_SYMBOL vmlinux 0x0d26f64b config_item_put +EXPORT_SYMBOL vmlinux 0x0d2ca20f ucc_fast_get_qe_cr_subblock +EXPORT_SYMBOL vmlinux 0x0d2cadc5 bio_integrity_prep +EXPORT_SYMBOL vmlinux 0x0d38ed73 inet6_add_offload +EXPORT_SYMBOL vmlinux 0x0d49b93f __debugger_ipi +EXPORT_SYMBOL vmlinux 0x0d542439 __ipv6_addr_type +EXPORT_SYMBOL vmlinux 0x0d61eeee __bitmap_subset +EXPORT_SYMBOL vmlinux 0x0d90fd14 param_get_uint +EXPORT_SYMBOL vmlinux 0x0daf9529 abx500_get_register_interruptible +EXPORT_SYMBOL vmlinux 0x0dc52a83 truncate_inode_pages +EXPORT_SYMBOL vmlinux 0x0df0bd6b nf_log_unregister +EXPORT_SYMBOL vmlinux 0x0dfe5b49 pci_match_id +EXPORT_SYMBOL vmlinux 0x0e00932e __icmp_send +EXPORT_SYMBOL vmlinux 0x0e17678a siphash_4u64 +EXPORT_SYMBOL vmlinux 0x0e199692 vfs_iocb_iter_read +EXPORT_SYMBOL vmlinux 0x0e27a2dd ZSTD_initCCtx +EXPORT_SYMBOL vmlinux 0x0e2c43eb mutex_lock_killable +EXPORT_SYMBOL vmlinux 0x0e2d1f5a path_put +EXPORT_SYMBOL vmlinux 0x0e3fa44b fs_param_is_blob +EXPORT_SYMBOL vmlinux 0x0e5a757f of_get_cpu_node +EXPORT_SYMBOL vmlinux 0x0e68f0ef kmem_cache_create +EXPORT_SYMBOL vmlinux 0x0e74ad2d utf8ncursor +EXPORT_SYMBOL vmlinux 0x0e75af61 blk_mq_complete_request +EXPORT_SYMBOL vmlinux 0x0e79ffbb jbd2_journal_flush +EXPORT_SYMBOL vmlinux 0x0e81747f mmc_can_erase +EXPORT_SYMBOL vmlinux 0x0e8d4904 inet_csk_delete_keepalive_timer +EXPORT_SYMBOL vmlinux 0x0e8f30f6 _raw_write_lock_irq +EXPORT_SYMBOL vmlinux 0x0e9d6dee ndo_dflt_fdb_dump +EXPORT_SYMBOL vmlinux 0x0ea5ea27 bioset_init +EXPORT_SYMBOL vmlinux 0x0eb43449 of_get_cpu_state_node +EXPORT_SYMBOL vmlinux 0x0ebb3577 nf_hook_slow_list +EXPORT_SYMBOL vmlinux 0x0ec17278 init_net +EXPORT_SYMBOL vmlinux 0x0ec5babe vme_dma_free +EXPORT_SYMBOL vmlinux 0x0ed3134a __hw_addr_sync_dev +EXPORT_SYMBOL vmlinux 0x0ed99403 param_get_int +EXPORT_SYMBOL vmlinux 0x0ee6d5c2 dmam_pool_create +EXPORT_SYMBOL vmlinux 0x0ef1a058 skb_seq_read +EXPORT_SYMBOL vmlinux 0x0ef445f2 netpoll_poll_dev +EXPORT_SYMBOL vmlinux 0x0f078f94 skb_add_rx_frag +EXPORT_SYMBOL vmlinux 0x0f09cc34 schedule_timeout_killable +EXPORT_SYMBOL vmlinux 0x0f24fb92 nd_integrity_init +EXPORT_SYMBOL vmlinux 0x0f32cb8a of_get_i2c_adapter_by_node +EXPORT_SYMBOL vmlinux 0x0f33f769 pci_msix_vec_count +EXPORT_SYMBOL vmlinux 0x0f3f81cb xfrm_policy_unregister_afinfo +EXPORT_SYMBOL vmlinux 0x0f4f3d40 vio_h_cop_sync +EXPORT_SYMBOL vmlinux 0x0f5108c5 pci_msi_vec_count +EXPORT_SYMBOL vmlinux 0x0f5ad093 cpumask_next_and +EXPORT_SYMBOL vmlinux 0x0f66de39 dev_addr_del +EXPORT_SYMBOL vmlinux 0x0f86f560 kthread_delayed_work_timer_fn +EXPORT_SYMBOL vmlinux 0x0f89ce1c dma_fence_signal_locked +EXPORT_SYMBOL vmlinux 0x0f8ed230 migrate_vma_setup +EXPORT_SYMBOL vmlinux 0x0fab1ab0 hdmi_spd_infoframe_pack +EXPORT_SYMBOL vmlinux 0x0faef0ed __tasklet_schedule +EXPORT_SYMBOL vmlinux 0x0fb2f8a4 mktime64 +EXPORT_SYMBOL vmlinux 0x0fd4b188 block_write_begin +EXPORT_SYMBOL vmlinux 0x0fd902db mb_cache_entry_create +EXPORT_SYMBOL vmlinux 0x0fda6b0a sock_kfree_s +EXPORT_SYMBOL vmlinux 0x0fec9ec6 fscrypt_encrypt_block_inplace +EXPORT_SYMBOL vmlinux 0x0feda9ea pskb_trim_rcsum_slow +EXPORT_SYMBOL vmlinux 0x0fff5afc time64_to_tm +EXPORT_SYMBOL vmlinux 0x100fbe69 vm_zone_stat +EXPORT_SYMBOL vmlinux 0x1011ca6d security_path_rename +EXPORT_SYMBOL vmlinux 0x101f971d flow_rule_alloc +EXPORT_SYMBOL vmlinux 0x102471f1 vfs_dedupe_file_range +EXPORT_SYMBOL vmlinux 0x1025009a cpm_muram_alloc_fixed +EXPORT_SYMBOL vmlinux 0x102936ec qe_clock_source +EXPORT_SYMBOL vmlinux 0x1032f0b7 seg6_hmac_info_add +EXPORT_SYMBOL vmlinux 0x1035c7c2 __release_region +EXPORT_SYMBOL vmlinux 0x104196b3 srp_rport_get +EXPORT_SYMBOL vmlinux 0x104281ab mmc_start_request +EXPORT_SYMBOL vmlinux 0x10471a0f __scm_destroy +EXPORT_SYMBOL vmlinux 0x10477f17 dev_change_flags +EXPORT_SYMBOL vmlinux 0x1057a279 bsearch +EXPORT_SYMBOL vmlinux 0x105939ee simple_fill_super +EXPORT_SYMBOL vmlinux 0x1068004b gf128mul_bbe +EXPORT_SYMBOL vmlinux 0x106843b3 inet_proto_csum_replace_by_diff +EXPORT_SYMBOL vmlinux 0x107e5878 zlib_inflateEnd +EXPORT_SYMBOL vmlinux 0x107ea5f9 rproc_vq_interrupt +EXPORT_SYMBOL vmlinux 0x109bd0bc vfio_pin_pages +EXPORT_SYMBOL vmlinux 0x10aeb678 pci_stop_and_remove_bus_device +EXPORT_SYMBOL vmlinux 0x10b29f2d backlight_device_unregister +EXPORT_SYMBOL vmlinux 0x10c0911a dquot_quota_sync +EXPORT_SYMBOL vmlinux 0x10c3f57e __gnet_stats_copy_queue +EXPORT_SYMBOL vmlinux 0x10cc9123 sk_stream_wait_memory +EXPORT_SYMBOL vmlinux 0x10d133f3 send_sig +EXPORT_SYMBOL vmlinux 0x10d9f885 scsi_sense_desc_find +EXPORT_SYMBOL vmlinux 0x10e0f124 __pud_index_size +EXPORT_SYMBOL vmlinux 0x11089ac7 _ctype +EXPORT_SYMBOL vmlinux 0x110e75e1 skb_copy_and_csum_datagram_msg +EXPORT_SYMBOL vmlinux 0x111fa7c9 qe_pin_set_dedicated +EXPORT_SYMBOL vmlinux 0x114566f6 bio_split +EXPORT_SYMBOL vmlinux 0x114d3135 bdevname +EXPORT_SYMBOL vmlinux 0x1163f0a7 blk_max_low_pfn +EXPORT_SYMBOL vmlinux 0x116627c9 ioremap_prot +EXPORT_SYMBOL vmlinux 0x117093be qdisc_class_hash_init +EXPORT_SYMBOL vmlinux 0x1170a124 dqput +EXPORT_SYMBOL vmlinux 0x11742212 rproc_add_subdev +EXPORT_SYMBOL vmlinux 0x117972a8 configfs_unregister_group +EXPORT_SYMBOL vmlinux 0x1182d83a cpuidle_disable +EXPORT_SYMBOL vmlinux 0x118310d5 __page_symlink +EXPORT_SYMBOL vmlinux 0x11aee01f vme_register_bridge +EXPORT_SYMBOL vmlinux 0x11be0b05 sdev_enable_disk_events +EXPORT_SYMBOL vmlinux 0x11c91fa1 md_set_array_sectors +EXPORT_SYMBOL vmlinux 0x11c9bed7 ip6_err_gen_icmpv6_unreach +EXPORT_SYMBOL vmlinux 0x11ca566b xfrm_stateonly_find +EXPORT_SYMBOL vmlinux 0x11e0ec41 dm_read_arg +EXPORT_SYMBOL vmlinux 0x11e30762 chacha_block_generic +EXPORT_SYMBOL vmlinux 0x11e64484 __inode_add_bytes +EXPORT_SYMBOL vmlinux 0x11f3b353 submit_bh +EXPORT_SYMBOL vmlinux 0x11f47d8c utf8_strncmp +EXPORT_SYMBOL vmlinux 0x11f7543f gro_find_complete_by_type +EXPORT_SYMBOL vmlinux 0x11f7ed4c hex_to_bin +EXPORT_SYMBOL vmlinux 0x11fb6638 pci_scan_root_bus_bridge +EXPORT_SYMBOL vmlinux 0x11ffdfee ucc_slow_stop_tx +EXPORT_SYMBOL vmlinux 0x120b336a __rb_insert_augmented +EXPORT_SYMBOL vmlinux 0x1220f3ca rproc_free +EXPORT_SYMBOL vmlinux 0x1237b07b iget_failed +EXPORT_SYMBOL vmlinux 0x123fd199 rproc_mem_entry_init +EXPORT_SYMBOL vmlinux 0x125a7e9b simple_rmdir +EXPORT_SYMBOL vmlinux 0x1277c53d filemap_map_pages +EXPORT_SYMBOL vmlinux 0x1278221d ZSTD_compressBegin_usingCDict +EXPORT_SYMBOL vmlinux 0x129884a5 tcp_filter +EXPORT_SYMBOL vmlinux 0x12a38747 usleep_range +EXPORT_SYMBOL vmlinux 0x12a607c7 cred_fscmp +EXPORT_SYMBOL vmlinux 0x12ae4b36 security_inode_getsecctx +EXPORT_SYMBOL vmlinux 0x12b10cf1 dma_direct_sync_single_for_cpu +EXPORT_SYMBOL vmlinux 0x12cabc89 siphash_2u64 +EXPORT_SYMBOL vmlinux 0x12caf9e4 dma_find_channel +EXPORT_SYMBOL vmlinux 0x12dc172c mr_vif_seq_idx +EXPORT_SYMBOL vmlinux 0x12e5ef0c rtas_set_power_level +EXPORT_SYMBOL vmlinux 0x12ec94a2 mmc_retune_pause +EXPORT_SYMBOL vmlinux 0x12f6f69c fb_videomode_to_var +EXPORT_SYMBOL vmlinux 0x13110126 request_resource +EXPORT_SYMBOL vmlinux 0x131eef45 jbd2_journal_start +EXPORT_SYMBOL vmlinux 0x13243d4b wl1251_get_platform_data +EXPORT_SYMBOL vmlinux 0x133eed38 gen_pool_dma_zalloc_algo +EXPORT_SYMBOL vmlinux 0x134c77db agp_free_memory +EXPORT_SYMBOL vmlinux 0x134cdd34 inet_frag_rbtree_purge +EXPORT_SYMBOL vmlinux 0x136fb7ac inet_csk_reset_keepalive_timer +EXPORT_SYMBOL vmlinux 0x137f3c6a __cpuhp_remove_state_cpuslocked +EXPORT_SYMBOL vmlinux 0x139f2189 __kfifo_alloc +EXPORT_SYMBOL vmlinux 0x13c3b9e6 console_start +EXPORT_SYMBOL vmlinux 0x13d0adf7 __kfifo_out +EXPORT_SYMBOL vmlinux 0x13e1b2d5 current_stack_frame +EXPORT_SYMBOL vmlinux 0x13f53da6 CMO_PageSize +EXPORT_SYMBOL vmlinux 0x14007bbb cookie_timestamp_decode +EXPORT_SYMBOL vmlinux 0x1443009a param_get_ulong +EXPORT_SYMBOL vmlinux 0x1447da2d flow_rule_match_eth_addrs +EXPORT_SYMBOL vmlinux 0x144d5996 mdiobus_register_device +EXPORT_SYMBOL vmlinux 0x145991b9 dev_get_by_name_rcu +EXPORT_SYMBOL vmlinux 0x145dd8f8 mdio_device_create +EXPORT_SYMBOL vmlinux 0x14605535 dma_fence_context_alloc +EXPORT_SYMBOL vmlinux 0x146289b7 crc16_table +EXPORT_SYMBOL vmlinux 0x147358a2 simple_getattr +EXPORT_SYMBOL vmlinux 0x1474919d fscrypt_fname_alloc_buffer +EXPORT_SYMBOL vmlinux 0x1476b654 get_user_pages_remote +EXPORT_SYMBOL vmlinux 0x14782d99 nvdimm_bus_unlock +EXPORT_SYMBOL vmlinux 0x147e0857 gen_pool_dma_alloc_algo +EXPORT_SYMBOL vmlinux 0x148d2cf4 dev_uc_add +EXPORT_SYMBOL vmlinux 0x149cd278 tcp_tx_delay_enabled +EXPORT_SYMBOL vmlinux 0x14a2b413 gen_pool_first_fit_order_align +EXPORT_SYMBOL vmlinux 0x14a48739 skb_store_bits +EXPORT_SYMBOL vmlinux 0x14c75633 input_free_device +EXPORT_SYMBOL vmlinux 0x14fb2365 cmdline_parts_set +EXPORT_SYMBOL vmlinux 0x15012d7f crypto_sha256_update +EXPORT_SYMBOL vmlinux 0x15054429 inet6_csk_route_req +EXPORT_SYMBOL vmlinux 0x150e09ee scsi_mode_sense +EXPORT_SYMBOL vmlinux 0x150e4951 kmem_cache_free_bulk +EXPORT_SYMBOL vmlinux 0x150e5f1e __register_chrdev +EXPORT_SYMBOL vmlinux 0x151f4898 schedule_timeout_uninterruptible +EXPORT_SYMBOL vmlinux 0x15222561 netdev_adjacent_change_commit +EXPORT_SYMBOL vmlinux 0x15251af6 sk_alloc +EXPORT_SYMBOL vmlinux 0x1526b301 unix_tot_inflight +EXPORT_SYMBOL vmlinux 0x154c6338 dm_kcopyd_client_destroy +EXPORT_SYMBOL vmlinux 0x154ed8c7 of_phy_register_fixed_link +EXPORT_SYMBOL vmlinux 0x155196cc mmc_alloc_host +EXPORT_SYMBOL vmlinux 0x155be7cb icmp_ndo_send +EXPORT_SYMBOL vmlinux 0x156f1638 vfs_setpos +EXPORT_SYMBOL vmlinux 0x15708eb7 of_phy_get_and_connect +EXPORT_SYMBOL vmlinux 0x15885382 clean_bdev_aliases +EXPORT_SYMBOL vmlinux 0x15afe806 pci_claim_resource +EXPORT_SYMBOL vmlinux 0x15bafe29 unregister_md_cluster_operations +EXPORT_SYMBOL vmlinux 0x15bed7a5 LZ4_decompress_safe_partial +EXPORT_SYMBOL vmlinux 0x15cf4dff block_invalidatepage +EXPORT_SYMBOL vmlinux 0x15d215f2 __vfs_getxattr +EXPORT_SYMBOL vmlinux 0x15d4670c udp_push_pending_frames +EXPORT_SYMBOL vmlinux 0x15dd7f6b __i2c_transfer +EXPORT_SYMBOL vmlinux 0x15e3ac4a dev_get_by_napi_id +EXPORT_SYMBOL vmlinux 0x15e99cf2 netif_napi_del +EXPORT_SYMBOL vmlinux 0x16090000 dm_mq_kick_requeue_list +EXPORT_SYMBOL vmlinux 0x160bd45c rtas_token +EXPORT_SYMBOL vmlinux 0x1610a337 ip_sock_set_pktinfo +EXPORT_SYMBOL vmlinux 0x16196c43 xfrm_policy_alloc +EXPORT_SYMBOL vmlinux 0x1627085c key_put +EXPORT_SYMBOL vmlinux 0x16286538 iowrite64be_lo_hi +EXPORT_SYMBOL vmlinux 0x162893fd hashlen_string +EXPORT_SYMBOL vmlinux 0x16316a10 ZSTD_getFrameContentSize +EXPORT_SYMBOL vmlinux 0x16596ec8 __bio_clone_fast +EXPORT_SYMBOL vmlinux 0x166a37c6 xfrm_replay_seqhi +EXPORT_SYMBOL vmlinux 0x167c5967 print_hex_dump +EXPORT_SYMBOL vmlinux 0x16850e3e dma_dummy_ops +EXPORT_SYMBOL vmlinux 0x168a311c inetpeer_invalidate_tree +EXPORT_SYMBOL vmlinux 0x169938c1 __sysfs_match_string +EXPORT_SYMBOL vmlinux 0x16a61e19 __serio_register_port +EXPORT_SYMBOL vmlinux 0x16ba4d6f bio_alloc_bioset +EXPORT_SYMBOL vmlinux 0x16c140fe tcp_have_smc +EXPORT_SYMBOL vmlinux 0x16ca73b2 PDE_DATA +EXPORT_SYMBOL vmlinux 0x16e297c3 bit_wait +EXPORT_SYMBOL vmlinux 0x16e9cb06 ww_mutex_unlock +EXPORT_SYMBOL vmlinux 0x16f1f688 sk_free +EXPORT_SYMBOL vmlinux 0x1730f498 proc_remove +EXPORT_SYMBOL vmlinux 0x1736c80b of_find_device_by_node +EXPORT_SYMBOL vmlinux 0x17648396 dev_base_lock +EXPORT_SYMBOL vmlinux 0x176f30c7 jbd2_journal_clear_err +EXPORT_SYMBOL vmlinux 0x17868c8c request_key_rcu +EXPORT_SYMBOL vmlinux 0x178c4894 qe_upload_firmware +EXPORT_SYMBOL vmlinux 0x179cfb3d sock_rfree +EXPORT_SYMBOL vmlinux 0x17d39dfc setattr_prepare +EXPORT_SYMBOL vmlinux 0x17ec7a3f tcf_unregister_action +EXPORT_SYMBOL vmlinux 0x17ef3544 swake_up_one +EXPORT_SYMBOL vmlinux 0x17f341a0 i8042_lock_chip +EXPORT_SYMBOL vmlinux 0x18028487 backlight_device_get_by_type +EXPORT_SYMBOL vmlinux 0x18255c0d __init_rwsem +EXPORT_SYMBOL vmlinux 0x18325522 __netlink_ns_capable +EXPORT_SYMBOL vmlinux 0x18345b8e __bitmap_replace +EXPORT_SYMBOL vmlinux 0x1834ca8a qdisc_create_dflt +EXPORT_SYMBOL vmlinux 0x185a116c __xa_insert +EXPORT_SYMBOL vmlinux 0x1876c61c vfs_statfs +EXPORT_SYMBOL vmlinux 0x187884a8 cpm_muram_free +EXPORT_SYMBOL vmlinux 0x18862518 xsk_umem_complete_tx +EXPORT_SYMBOL vmlinux 0x188ea314 jiffies_to_timespec64 +EXPORT_SYMBOL vmlinux 0x189ad495 inode_io_list_del +EXPORT_SYMBOL vmlinux 0x18a9999b file_update_time +EXPORT_SYMBOL vmlinux 0x18b445ac try_to_free_buffers +EXPORT_SYMBOL vmlinux 0x18c8cfab __register_binfmt +EXPORT_SYMBOL vmlinux 0x18e60984 __do_once_start +EXPORT_SYMBOL vmlinux 0x18efd028 hdmi_drm_infoframe_unpack_only +EXPORT_SYMBOL vmlinux 0x18f523e6 pps_unregister_source +EXPORT_SYMBOL vmlinux 0x190f3601 dquot_load_quota_sb +EXPORT_SYMBOL vmlinux 0x192918bb register_netdev +EXPORT_SYMBOL vmlinux 0x194c2d76 km_state_notify +EXPORT_SYMBOL vmlinux 0x19567d06 vfio_info_cap_shift +EXPORT_SYMBOL vmlinux 0x196a5a99 radix_tree_tag_get +EXPORT_SYMBOL vmlinux 0x196c72da shrink_dcache_sb +EXPORT_SYMBOL vmlinux 0x1984d421 out_of_line_wait_on_bit +EXPORT_SYMBOL vmlinux 0x198620d7 security_add_mnt_opt +EXPORT_SYMBOL vmlinux 0x199ed0cd net_disable_timestamp +EXPORT_SYMBOL vmlinux 0x19b16b34 up_read +EXPORT_SYMBOL vmlinux 0x19bd383b security_secmark_refcount_dec +EXPORT_SYMBOL vmlinux 0x19c179be mr_vif_seq_next +EXPORT_SYMBOL vmlinux 0x19d68628 xa_get_mark +EXPORT_SYMBOL vmlinux 0x1a04293c cdrom_ioctl +EXPORT_SYMBOL vmlinux 0x1a044096 kmem_cache_free +EXPORT_SYMBOL vmlinux 0x1a0563a8 jbd2_journal_restart +EXPORT_SYMBOL vmlinux 0x1a0963f6 register_qdisc +EXPORT_SYMBOL vmlinux 0x1a107de2 ZSTD_compressCCtx +EXPORT_SYMBOL vmlinux 0x1a1bac9c ZSTD_decompressDCtx +EXPORT_SYMBOL vmlinux 0x1a1f941e iput +EXPORT_SYMBOL vmlinux 0x1a343cfb update_devfreq +EXPORT_SYMBOL vmlinux 0x1a5611b7 nonseekable_open +EXPORT_SYMBOL vmlinux 0x1a57de25 bio_integrity_alloc +EXPORT_SYMBOL vmlinux 0x1a62dbef of_mdiobus_child_is_phy +EXPORT_SYMBOL vmlinux 0x1a6458c7 __hw_addr_unsync_dev +EXPORT_SYMBOL vmlinux 0x1a77e3ee security_dentry_create_files_as +EXPORT_SYMBOL vmlinux 0x1a949779 __tracepoint_dma_fence_emit +EXPORT_SYMBOL vmlinux 0x1a9a433c prandom_u32_state +EXPORT_SYMBOL vmlinux 0x1a9e4456 vc_cons +EXPORT_SYMBOL vmlinux 0x1aa2b3f1 tlbie_capable +EXPORT_SYMBOL vmlinux 0x1aa85fb6 md_integrity_register +EXPORT_SYMBOL vmlinux 0x1aa9fba0 vfio_dma_rw +EXPORT_SYMBOL vmlinux 0x1ac5d3cb strcspn +EXPORT_SYMBOL vmlinux 0x1ac95696 phy_attach_direct +EXPORT_SYMBOL vmlinux 0x1ae5692e d_find_alias +EXPORT_SYMBOL vmlinux 0x1af62a99 panic_notifier_list +EXPORT_SYMBOL vmlinux 0x1b015d25 bitmap_parselist +EXPORT_SYMBOL vmlinux 0x1b132009 rename_lock +EXPORT_SYMBOL vmlinux 0x1b151dcd udp_ioctl +EXPORT_SYMBOL vmlinux 0x1b235223 devfreq_unregister_opp_notifier +EXPORT_SYMBOL vmlinux 0x1b3088d3 dquot_quota_on_mount +EXPORT_SYMBOL vmlinux 0x1b31aa71 bfifo_qdisc_ops +EXPORT_SYMBOL vmlinux 0x1b625d33 enable_kernel_vsx +EXPORT_SYMBOL vmlinux 0x1b6314fd in_aton +EXPORT_SYMBOL vmlinux 0x1b6a844c xp_set_rxq_info +EXPORT_SYMBOL vmlinux 0x1b6c41d3 empty_aops +EXPORT_SYMBOL vmlinux 0x1b700d37 put_vaddr_frames +EXPORT_SYMBOL vmlinux 0x1b777357 rdmacg_unregister_device +EXPORT_SYMBOL vmlinux 0x1b855173 of_get_compatible_child +EXPORT_SYMBOL vmlinux 0x1b8b95ad i8042_unlock_chip +EXPORT_SYMBOL vmlinux 0x1ba44b23 agp_put_bridge +EXPORT_SYMBOL vmlinux 0x1ba59527 __kmalloc_node +EXPORT_SYMBOL vmlinux 0x1baae9d6 dma_fence_init +EXPORT_SYMBOL vmlinux 0x1bb21efa vlan_vids_add_by_dev +EXPORT_SYMBOL vmlinux 0x1bb32eb4 __tty_insert_flip_char +EXPORT_SYMBOL vmlinux 0x1bbc675e ether_setup +EXPORT_SYMBOL vmlinux 0x1bcda492 ethtool_op_get_ts_info +EXPORT_SYMBOL vmlinux 0x1bd59dbe vme_free_consistent +EXPORT_SYMBOL vmlinux 0x1bd8b5e8 km_query +EXPORT_SYMBOL vmlinux 0x1be6529d try_lookup_one_len +EXPORT_SYMBOL vmlinux 0x1bfa6bb2 sync_inode +EXPORT_SYMBOL vmlinux 0x1c07b2c5 tty_check_change +EXPORT_SYMBOL vmlinux 0x1c07d11f kobject_get_unless_zero +EXPORT_SYMBOL vmlinux 0x1c0fbd16 sock_no_bind +EXPORT_SYMBOL vmlinux 0x1c13cf1d cdev_set_parent +EXPORT_SYMBOL vmlinux 0x1c338147 vm_numa_stat +EXPORT_SYMBOL vmlinux 0x1c36fa97 proc_dointvec_userhz_jiffies +EXPORT_SYMBOL vmlinux 0x1c3c7fdd dev_pm_opp_register_notifier +EXPORT_SYMBOL vmlinux 0x1c3d050b tcp_timewait_state_process +EXPORT_SYMBOL vmlinux 0x1c3e02e4 memcmp +EXPORT_SYMBOL vmlinux 0x1c497fee sget_fc +EXPORT_SYMBOL vmlinux 0x1c4a24f9 fscrypt_decrypt_bio +EXPORT_SYMBOL vmlinux 0x1c4ebe62 jbd2_complete_transaction +EXPORT_SYMBOL vmlinux 0x1c500a3a mount_nodev +EXPORT_SYMBOL vmlinux 0x1c5a7e34 flow_rule_match_icmp +EXPORT_SYMBOL vmlinux 0x1c5db1ab may_umount_tree +EXPORT_SYMBOL vmlinux 0x1c636713 vm_mmap +EXPORT_SYMBOL vmlinux 0x1c7b7d91 unregister_nls +EXPORT_SYMBOL vmlinux 0x1c7cfdb1 __init_swait_queue_head +EXPORT_SYMBOL vmlinux 0x1c855ff1 radix__flush_tlb_page +EXPORT_SYMBOL vmlinux 0x1c916448 __dev_kfree_skb_irq +EXPORT_SYMBOL vmlinux 0x1c9c8058 __SetPageMovable +EXPORT_SYMBOL vmlinux 0x1ca1b1be radix_tree_delete +EXPORT_SYMBOL vmlinux 0x1ca65fa3 dquot_reclaim_space_nodirty +EXPORT_SYMBOL vmlinux 0x1cb2c6d8 kvasprintf +EXPORT_SYMBOL vmlinux 0x1cd1fc12 kill_pgrp +EXPORT_SYMBOL vmlinux 0x1cdbd5a6 flow_block_cb_decref +EXPORT_SYMBOL vmlinux 0x1cde0a51 wait_for_completion_killable +EXPORT_SYMBOL vmlinux 0x1d07e365 memdup_user_nul +EXPORT_SYMBOL vmlinux 0x1d12998b pneigh_enqueue +EXPORT_SYMBOL vmlinux 0x1d2d6d15 wait_iff_congested +EXPORT_SYMBOL vmlinux 0x1d37a65f phy_attached_info +EXPORT_SYMBOL vmlinux 0x1d41afcb remap_vmalloc_range +EXPORT_SYMBOL vmlinux 0x1d5f9555 frame_vector_destroy +EXPORT_SYMBOL vmlinux 0x1d669a8b __percpu_counter_sum +EXPORT_SYMBOL vmlinux 0x1d66b4e5 ucc_fast_dump_regs +EXPORT_SYMBOL vmlinux 0x1d6ad35c padata_alloc_shell +EXPORT_SYMBOL vmlinux 0x1d6f44bb ata_port_printk +EXPORT_SYMBOL vmlinux 0x1d8edd01 dma_fence_wait_timeout +EXPORT_SYMBOL vmlinux 0x1dc6c93b lookup_user_key +EXPORT_SYMBOL vmlinux 0x1dcbcba7 uart_write_wakeup +EXPORT_SYMBOL vmlinux 0x1dce7441 arp_create +EXPORT_SYMBOL vmlinux 0x1dd571e6 fb_copy_cmap +EXPORT_SYMBOL vmlinux 0x1ddce34f __put_cred +EXPORT_SYMBOL vmlinux 0x1ddd643c flow_hash_from_keys +EXPORT_SYMBOL vmlinux 0x1de4ccb2 get_sg_io_hdr +EXPORT_SYMBOL vmlinux 0x1dec7dbf jbd2_journal_init_jbd_inode +EXPORT_SYMBOL vmlinux 0x1df63e88 ZSTD_compressBegin +EXPORT_SYMBOL vmlinux 0x1df66309 t10_pi_type3_crc +EXPORT_SYMBOL vmlinux 0x1dfddab3 __bswapdi2 +EXPORT_SYMBOL vmlinux 0x1e0a0c24 mod_timer_pending +EXPORT_SYMBOL vmlinux 0x1e1992cc __memset64 +EXPORT_SYMBOL vmlinux 0x1e1e140e ns_to_timespec64 +EXPORT_SYMBOL vmlinux 0x1e1e1a6c i2c_del_driver +EXPORT_SYMBOL vmlinux 0x1e220181 dump_emit +EXPORT_SYMBOL vmlinux 0x1e2559ff bio_clone_fast +EXPORT_SYMBOL vmlinux 0x1e3cd618 flow_rule_match_ct +EXPORT_SYMBOL vmlinux 0x1e4cc7a6 qdisc_hash_add +EXPORT_SYMBOL vmlinux 0x1e62643b skb_flow_dissector_init +EXPORT_SYMBOL vmlinux 0x1e6341a4 pci_dev_get +EXPORT_SYMBOL vmlinux 0x1e6d26a8 strstr +EXPORT_SYMBOL vmlinux 0x1e7f5f05 blk_queue_stack_limits +EXPORT_SYMBOL vmlinux 0x1e875885 add_wait_queue +EXPORT_SYMBOL vmlinux 0x1e9edfb7 seq_hlist_start_head_rcu +EXPORT_SYMBOL vmlinux 0x1edb69d6 ktime_get_raw_ts64 +EXPORT_SYMBOL vmlinux 0x1eeaf344 nvdimm_bus_lock +EXPORT_SYMBOL vmlinux 0x1efed63a dev_disable_lro +EXPORT_SYMBOL vmlinux 0x1f03912b ZSTD_flushStream +EXPORT_SYMBOL vmlinux 0x1f218ce9 ip_tunnel_metadata_cnt +EXPORT_SYMBOL vmlinux 0x1f337a6d path_is_under +EXPORT_SYMBOL vmlinux 0x1f37ffdd scm_fp_dup +EXPORT_SYMBOL vmlinux 0x1f4881c9 __ip_options_compile +EXPORT_SYMBOL vmlinux 0x1f4e0c0a copy_page_from_iter +EXPORT_SYMBOL vmlinux 0x1f79ac56 ipv6_chk_addr_and_flags +EXPORT_SYMBOL vmlinux 0x1f8db806 eth_header_parse_protocol +EXPORT_SYMBOL vmlinux 0x1f8ff0e4 tcp_sock_set_keepcnt +EXPORT_SYMBOL vmlinux 0x1fa99e4b dns_query +EXPORT_SYMBOL vmlinux 0x1fbd16da ip_tos2prio +EXPORT_SYMBOL vmlinux 0x1fc7f849 hmm_range_fault +EXPORT_SYMBOL vmlinux 0x1fd07fff kdb_grepping_flag +EXPORT_SYMBOL vmlinux 0x1fd2df9a agp_generic_alloc_page +EXPORT_SYMBOL vmlinux 0x1fdd815d key_payload_reserve +EXPORT_SYMBOL vmlinux 0x1fe912f1 netdev_alloc_frag +EXPORT_SYMBOL vmlinux 0x1fedcf41 bio_put +EXPORT_SYMBOL vmlinux 0x1feee096 mutex_lock +EXPORT_SYMBOL vmlinux 0x20000329 simple_strtoul +EXPORT_SYMBOL vmlinux 0x200b2041 in6addr_any +EXPORT_SYMBOL vmlinux 0x2017f17d get_tree_keyed +EXPORT_SYMBOL vmlinux 0x2018715e mmput_async +EXPORT_SYMBOL vmlinux 0x201f8d0a rdmacg_uncharge +EXPORT_SYMBOL vmlinux 0x202ac8db dma_free_attrs +EXPORT_SYMBOL vmlinux 0x20482769 register_gifconf +EXPORT_SYMBOL vmlinux 0x204af5b5 netlbl_audit_start +EXPORT_SYMBOL vmlinux 0x204c19f5 tcp_alloc_md5sig_pool +EXPORT_SYMBOL vmlinux 0x204c5067 scsi_dev_info_add_list +EXPORT_SYMBOL vmlinux 0x2072ee9b request_threaded_irq +EXPORT_SYMBOL vmlinux 0x20745ac5 vga_con +EXPORT_SYMBOL vmlinux 0x207cd780 fifo_set_limit +EXPORT_SYMBOL vmlinux 0x20a10e80 setup_new_exec +EXPORT_SYMBOL vmlinux 0x20a789ac irq_set_chip_data +EXPORT_SYMBOL vmlinux 0x20b51ac5 pci_bus_set_ops +EXPORT_SYMBOL vmlinux 0x20b582f4 input_set_timestamp +EXPORT_SYMBOL vmlinux 0x20d65e40 fb_find_nearest_mode +EXPORT_SYMBOL vmlinux 0x20fff6ec ZSTD_DStreamInSize +EXPORT_SYMBOL vmlinux 0x21012f5c wireless_spy_update +EXPORT_SYMBOL vmlinux 0x21059cd7 audit_log_task_context +EXPORT_SYMBOL vmlinux 0x210dc7f0 __ip_dev_find +EXPORT_SYMBOL vmlinux 0x213a738d memregion_alloc +EXPORT_SYMBOL vmlinux 0x213e4965 ps2_is_keyboard_id +EXPORT_SYMBOL vmlinux 0x21537694 down_read_interruptible +EXPORT_SYMBOL vmlinux 0x21539caf sched_autogroup_detach +EXPORT_SYMBOL vmlinux 0x215a8ec8 slhc_init +EXPORT_SYMBOL vmlinux 0x215addb9 inc_zone_page_state +EXPORT_SYMBOL vmlinux 0x216d4eb4 set_user_nice +EXPORT_SYMBOL vmlinux 0x2176590a is_nd_pfn +EXPORT_SYMBOL vmlinux 0x218e600b pci_add_resource_offset +EXPORT_SYMBOL vmlinux 0x21901e91 ethtool_notify +EXPORT_SYMBOL vmlinux 0x21a1ec87 blk_queue_max_segments +EXPORT_SYMBOL vmlinux 0x21b60242 bit_waitqueue +EXPORT_SYMBOL vmlinux 0x21b69f7d send_sig_mceerr +EXPORT_SYMBOL vmlinux 0x21bb62e4 radix__flush_tlb_mm +EXPORT_SYMBOL vmlinux 0x21bbd43b ilookup +EXPORT_SYMBOL vmlinux 0x21bd6291 km_new_mapping +EXPORT_SYMBOL vmlinux 0x21bdb523 errseq_check_and_advance +EXPORT_SYMBOL vmlinux 0x21be37e1 hdmi_avi_infoframe_check +EXPORT_SYMBOL vmlinux 0x21ca0927 module_layout +EXPORT_SYMBOL vmlinux 0x21e13cb3 inet_peer_xrlim_allow +EXPORT_SYMBOL vmlinux 0x21e44216 dev_change_carrier +EXPORT_SYMBOL vmlinux 0x21e5b30b sdev_disable_disk_events +EXPORT_SYMBOL vmlinux 0x21f477ce tcp_setsockopt +EXPORT_SYMBOL vmlinux 0x2211861b kvmppc_hv_find_lock_hpte +EXPORT_SYMBOL vmlinux 0x2212ae95 xfrm6_protocol_deregister +EXPORT_SYMBOL vmlinux 0x2212bba1 vfs_get_fsid +EXPORT_SYMBOL vmlinux 0x221e0b7e mipi_dsi_dcs_set_display_on +EXPORT_SYMBOL vmlinux 0x2222efd3 jbd2_journal_load +EXPORT_SYMBOL vmlinux 0x222e7ce2 sysfs_streq +EXPORT_SYMBOL vmlinux 0x223bef75 proto_register +EXPORT_SYMBOL vmlinux 0x22625189 devm_of_clk_del_provider +EXPORT_SYMBOL vmlinux 0x2276db98 kstrtoint +EXPORT_SYMBOL vmlinux 0x2284d9a3 locks_copy_conflock +EXPORT_SYMBOL vmlinux 0x22854e5d generic_file_write_iter +EXPORT_SYMBOL vmlinux 0x22863370 mmc_wait_for_req_done +EXPORT_SYMBOL vmlinux 0x22907072 dquot_set_dqinfo +EXPORT_SYMBOL vmlinux 0x22908e91 fscrypt_encrypt_pagecache_blocks +EXPORT_SYMBOL vmlinux 0x229e6c01 tcp_ioctl +EXPORT_SYMBOL vmlinux 0x22a09b89 mipi_dsi_dcs_write +EXPORT_SYMBOL vmlinux 0x22a54cd1 simple_transaction_read +EXPORT_SYMBOL vmlinux 0x22b325d5 kd_mksound +EXPORT_SYMBOL vmlinux 0x22e737a1 serio_interrupt +EXPORT_SYMBOL vmlinux 0x230e941e fb_show_logo +EXPORT_SYMBOL vmlinux 0x23246910 key_alloc +EXPORT_SYMBOL vmlinux 0x232652ea put_cmsg_scm_timestamping64 +EXPORT_SYMBOL vmlinux 0x2328c0f6 param_ops_byte +EXPORT_SYMBOL vmlinux 0x2337373e fs_context_for_mount +EXPORT_SYMBOL vmlinux 0x233917d1 mac_vmode_to_var +EXPORT_SYMBOL vmlinux 0x234ce145 splice_direct_to_actor +EXPORT_SYMBOL vmlinux 0x23619cff jiffies_64 +EXPORT_SYMBOL vmlinux 0x2382414d from_kprojid_munged +EXPORT_SYMBOL vmlinux 0x2388c29b set_page_dirty +EXPORT_SYMBOL vmlinux 0x238b099f mipi_dsi_packet_format_is_short +EXPORT_SYMBOL vmlinux 0x23931203 unix_detach_fds +EXPORT_SYMBOL vmlinux 0x23b5b617 mempool_create +EXPORT_SYMBOL vmlinux 0x23b9d6e2 mangle_path +EXPORT_SYMBOL vmlinux 0x23c80935 blk_mq_start_stopped_hw_queues +EXPORT_SYMBOL vmlinux 0x23c9891c kstrtoint_from_user +EXPORT_SYMBOL vmlinux 0x23daa989 mipi_dsi_create_packet +EXPORT_SYMBOL vmlinux 0x23ee13fd mb_cache_entry_find_first +EXPORT_SYMBOL vmlinux 0x23fd1d94 __skb_checksum_complete_head +EXPORT_SYMBOL vmlinux 0x23fd3028 vmalloc_node +EXPORT_SYMBOL vmlinux 0x2419f245 rproc_elf_load_segments +EXPORT_SYMBOL vmlinux 0x24212d86 __frontswap_invalidate_page +EXPORT_SYMBOL vmlinux 0x24231cf8 sg_miter_stop +EXPORT_SYMBOL vmlinux 0x243442d2 blk_queue_max_segment_size +EXPORT_SYMBOL vmlinux 0x24428be5 strncpy_from_user +EXPORT_SYMBOL vmlinux 0x2447a23a __dev_getfirstbyhwtype +EXPORT_SYMBOL vmlinux 0x2457e1c7 bio_integrity_add_page +EXPORT_SYMBOL vmlinux 0x2459bbcc console_set_on_cmdline +EXPORT_SYMBOL vmlinux 0x2469047f __ClearPageMovable +EXPORT_SYMBOL vmlinux 0x2473f47e dm_table_get_size +EXPORT_SYMBOL vmlinux 0x2484adc3 __kfifo_to_user_r +EXPORT_SYMBOL vmlinux 0x24870a6c devm_clk_release_clkdev +EXPORT_SYMBOL vmlinux 0x24ce2023 validate_sp +EXPORT_SYMBOL vmlinux 0x24d273d1 add_timer +EXPORT_SYMBOL vmlinux 0x24dfaf10 follow_down +EXPORT_SYMBOL vmlinux 0x24fe3cc2 begin_new_exec +EXPORT_SYMBOL vmlinux 0x250242d7 dquot_file_open +EXPORT_SYMBOL vmlinux 0x25154776 tcp_v4_md5_hash_skb +EXPORT_SYMBOL vmlinux 0x2524ba17 ZSTD_getCParams +EXPORT_SYMBOL vmlinux 0x25277497 rfkill_register +EXPORT_SYMBOL vmlinux 0x253c9cc2 kobject_put +EXPORT_SYMBOL vmlinux 0x25469f60 eeh_dev_release +EXPORT_SYMBOL vmlinux 0x254c9287 ioremap +EXPORT_SYMBOL vmlinux 0x256aee42 kfree_skb_list +EXPORT_SYMBOL vmlinux 0x2570a138 reservation_seqcount_string +EXPORT_SYMBOL vmlinux 0x25753c3e blk_mq_start_request +EXPORT_SYMBOL vmlinux 0x25820c64 fs_overflowuid +EXPORT_SYMBOL vmlinux 0x25825b86 pci_find_next_bus +EXPORT_SYMBOL vmlinux 0x25861675 abx500_register_ops +EXPORT_SYMBOL vmlinux 0x258aa956 notify_change +EXPORT_SYMBOL vmlinux 0x258d2f76 net_dim_get_tx_moderation +EXPORT_SYMBOL vmlinux 0x2592a303 netdev_crit +EXPORT_SYMBOL vmlinux 0x2598614d sock_alloc_file +EXPORT_SYMBOL vmlinux 0x25988607 padata_do_parallel +EXPORT_SYMBOL vmlinux 0x25b67337 __wait_on_buffer +EXPORT_SYMBOL vmlinux 0x25b99929 pci_free_irq +EXPORT_SYMBOL vmlinux 0x25c420e1 param_get_bool +EXPORT_SYMBOL vmlinux 0x25d05e3d genphy_soft_reset +EXPORT_SYMBOL vmlinux 0x25d25d7c __phy_resume +EXPORT_SYMBOL vmlinux 0x25e58a09 hdmi_avi_infoframe_init +EXPORT_SYMBOL vmlinux 0x25e9d4bd resource_list_free +EXPORT_SYMBOL vmlinux 0x25ee2879 __d_drop +EXPORT_SYMBOL vmlinux 0x25f731f6 fscrypt_zeroout_range +EXPORT_SYMBOL vmlinux 0x25fe5a24 security_inode_setsecctx +EXPORT_SYMBOL vmlinux 0x260a095a __sg_alloc_table +EXPORT_SYMBOL vmlinux 0x2616f0a0 inc_nlink +EXPORT_SYMBOL vmlinux 0x2628c52d radix__flush_tlb_range +EXPORT_SYMBOL vmlinux 0x263beb75 ecryptfs_get_versions +EXPORT_SYMBOL vmlinux 0x263c3152 bcmp +EXPORT_SYMBOL vmlinux 0x265181df tcp_initialize_rcv_mss +EXPORT_SYMBOL vmlinux 0x265e6848 mr_mfc_find_any_parent +EXPORT_SYMBOL vmlinux 0x267c0c5f abort_creds +EXPORT_SYMBOL vmlinux 0x2688ec10 bitmap_zalloc +EXPORT_SYMBOL vmlinux 0x26b27bd1 tcp_v4_destroy_sock +EXPORT_SYMBOL vmlinux 0x26bad923 dm_unregister_target +EXPORT_SYMBOL vmlinux 0x26d24cb8 vm_event_states +EXPORT_SYMBOL vmlinux 0x26ddba8e d_exact_alias +EXPORT_SYMBOL vmlinux 0x26e298e0 unregister_memory_notifier +EXPORT_SYMBOL vmlinux 0x26f8f0b8 iowrite16be +EXPORT_SYMBOL vmlinux 0x27012e68 of_device_is_compatible +EXPORT_SYMBOL vmlinux 0x27125d23 agp_allocate_memory +EXPORT_SYMBOL vmlinux 0x27288612 flow_rule_match_cvlan +EXPORT_SYMBOL vmlinux 0x272a8933 udp_memory_allocated +EXPORT_SYMBOL vmlinux 0x2733eaf7 scsi_dev_info_list_add_keyed +EXPORT_SYMBOL vmlinux 0x27479d14 param_free_charp +EXPORT_SYMBOL vmlinux 0x2755bea5 rtc_add_groups +EXPORT_SYMBOL vmlinux 0x275dfee4 ucc_slow_free +EXPORT_SYMBOL vmlinux 0x275f3d49 hdmi_vendor_infoframe_check +EXPORT_SYMBOL vmlinux 0x27639220 blk_verify_command +EXPORT_SYMBOL vmlinux 0x27756bc8 scsi_sanitize_inquiry_string +EXPORT_SYMBOL vmlinux 0x277ecee1 down_write +EXPORT_SYMBOL vmlinux 0x2782b393 xfrm_state_walk_init +EXPORT_SYMBOL vmlinux 0x27864d57 memparse +EXPORT_SYMBOL vmlinux 0x279be432 ZSTD_copyCCtx +EXPORT_SYMBOL vmlinux 0x27aee792 input_register_handle +EXPORT_SYMBOL vmlinux 0x27bbf221 disable_irq_nosync +EXPORT_SYMBOL vmlinux 0x27c74610 devm_input_allocate_device +EXPORT_SYMBOL vmlinux 0x27c9a93a sock_gettstamp +EXPORT_SYMBOL vmlinux 0x27cb3237 d_add +EXPORT_SYMBOL vmlinux 0x27cdca93 pci_add_resource +EXPORT_SYMBOL vmlinux 0x27d1c0a9 twl6040_set_pll +EXPORT_SYMBOL vmlinux 0x27d558b1 configfs_unregister_default_group +EXPORT_SYMBOL vmlinux 0x27e200ab vme_slot_num +EXPORT_SYMBOL vmlinux 0x27e2e488 md_check_recovery +EXPORT_SYMBOL vmlinux 0x27ee90f7 xfrm_state_free +EXPORT_SYMBOL vmlinux 0x280ae827 pci_disable_link_state +EXPORT_SYMBOL vmlinux 0x280c2e8e pci_bus_add_devices +EXPORT_SYMBOL vmlinux 0x281823c5 __kfifo_out_peek +EXPORT_SYMBOL vmlinux 0x282e8827 from_kuid_munged +EXPORT_SYMBOL vmlinux 0x2833f577 ZSTD_compressBegin_advanced +EXPORT_SYMBOL vmlinux 0x286820c2 dev_mc_del_global +EXPORT_SYMBOL vmlinux 0x2875a315 utf32_to_utf8 +EXPORT_SYMBOL vmlinux 0x287c90f1 pnv_cxl_ioda_msi_setup +EXPORT_SYMBOL vmlinux 0x288817cb agp_bind_memory +EXPORT_SYMBOL vmlinux 0x288da5f5 ns_capable_noaudit +EXPORT_SYMBOL vmlinux 0x289f5dd7 flow_rule_match_enc_control +EXPORT_SYMBOL vmlinux 0x28cf118e sk_dst_check +EXPORT_SYMBOL vmlinux 0x28d89512 inet_rcv_saddr_equal +EXPORT_SYMBOL vmlinux 0x28e11362 vme_register_error_handler +EXPORT_SYMBOL vmlinux 0x28f38c35 tty_throttle +EXPORT_SYMBOL vmlinux 0x28fce057 xp_dma_sync_for_cpu_slow +EXPORT_SYMBOL vmlinux 0x2914ea2d ZSTD_compressBlock +EXPORT_SYMBOL vmlinux 0x291c4fda pcie_bandwidth_available +EXPORT_SYMBOL vmlinux 0x291eeb6f xfrm_register_type +EXPORT_SYMBOL vmlinux 0x2933c082 set_page_dirty_lock +EXPORT_SYMBOL vmlinux 0x294b9ea1 on_each_cpu +EXPORT_SYMBOL vmlinux 0x29559eb2 vmf_insert_mixed +EXPORT_SYMBOL vmlinux 0x29754ea7 unpin_user_pages +EXPORT_SYMBOL vmlinux 0x29789c83 sock_set_reuseaddr +EXPORT_SYMBOL vmlinux 0x297aa422 pci_irq_get_affinity +EXPORT_SYMBOL vmlinux 0x2983a4cd mod_node_page_state +EXPORT_SYMBOL vmlinux 0x29caf8d3 dcb_ieee_getapp_default_prio_mask +EXPORT_SYMBOL vmlinux 0x29d1a768 xattr_full_name +EXPORT_SYMBOL vmlinux 0x29e1e204 hdmi_audio_infoframe_pack +EXPORT_SYMBOL vmlinux 0x29f6a715 watchdog_register_governor +EXPORT_SYMBOL vmlinux 0x29fb7b50 mdio_bus_type +EXPORT_SYMBOL vmlinux 0x29fdf1c6 iov_iter_gap_alignment +EXPORT_SYMBOL vmlinux 0x2a030457 tcp_set_rcvlowat +EXPORT_SYMBOL vmlinux 0x2a074ad1 tcp_md5_do_del +EXPORT_SYMBOL vmlinux 0x2a146a9d compat_tcp_setsockopt +EXPORT_SYMBOL vmlinux 0x2a22dd97 fb_validate_mode +EXPORT_SYMBOL vmlinux 0x2a303d4d check_signature +EXPORT_SYMBOL vmlinux 0x2a3ed3b6 skb_copy_expand +EXPORT_SYMBOL vmlinux 0x2a461d21 fb_find_mode +EXPORT_SYMBOL vmlinux 0x2a575fa4 netdev_rx_csum_fault +EXPORT_SYMBOL vmlinux 0x2a7a6815 mdiobus_scan +EXPORT_SYMBOL vmlinux 0x2a7c8a8c mmc_gpiod_request_cd_irq +EXPORT_SYMBOL vmlinux 0x2a7d1363 get_mem_cgroup_from_page +EXPORT_SYMBOL vmlinux 0x2a970d98 in6_dev_finish_destroy +EXPORT_SYMBOL vmlinux 0x2a9a3905 vme_master_get +EXPORT_SYMBOL vmlinux 0x2ab0eeca seq_path +EXPORT_SYMBOL vmlinux 0x2ababb88 tc_setup_cb_replace +EXPORT_SYMBOL vmlinux 0x2ac28d5f devm_nvmem_unregister +EXPORT_SYMBOL vmlinux 0x2ac69f7d of_get_ibm_chip_id +EXPORT_SYMBOL vmlinux 0x2ac99977 skb_flow_dissect_tunnel_info +EXPORT_SYMBOL vmlinux 0x2ae515b9 blk_rq_append_bio +EXPORT_SYMBOL vmlinux 0x2af71b21 i2c_smbus_read_i2c_block_data +EXPORT_SYMBOL vmlinux 0x2b05ed22 blk_post_runtime_resume +EXPORT_SYMBOL vmlinux 0x2b68bd2f del_timer +EXPORT_SYMBOL vmlinux 0x2b999689 skb_flow_dissect_meta +EXPORT_SYMBOL vmlinux 0x2b9da7a4 genl_lock +EXPORT_SYMBOL vmlinux 0x2baccefc nd_pfn_validate +EXPORT_SYMBOL vmlinux 0x2bbea7bb jbd2_journal_try_to_free_buffers +EXPORT_SYMBOL vmlinux 0x2bdbfebd kernel_getsockname +EXPORT_SYMBOL vmlinux 0x2bef1196 skb_mac_gso_segment +EXPORT_SYMBOL vmlinux 0x2bf668eb uart_get_baud_rate +EXPORT_SYMBOL vmlinux 0x2c0d4657 netpoll_poll_enable +EXPORT_SYMBOL vmlinux 0x2c0e261f fs_context_for_reconfigure +EXPORT_SYMBOL vmlinux 0x2c12b3da unix_attach_fds +EXPORT_SYMBOL vmlinux 0x2c256e1f input_scancode_to_scalar +EXPORT_SYMBOL vmlinux 0x2c355d9f devm_pci_alloc_host_bridge +EXPORT_SYMBOL vmlinux 0x2c40842f devm_devfreq_register_notifier +EXPORT_SYMBOL vmlinux 0x2c6ec4e4 qdisc_put_unlocked +EXPORT_SYMBOL vmlinux 0x2c76492a qdisc_class_hash_grow +EXPORT_SYMBOL vmlinux 0x2c7b1fca down_timeout +EXPORT_SYMBOL vmlinux 0x2c81ba83 sb_set_blocksize +EXPORT_SYMBOL vmlinux 0x2c9cdbaa skb_copy_bits +EXPORT_SYMBOL vmlinux 0x2ca95490 pci_pme_capable +EXPORT_SYMBOL vmlinux 0x2cc875fd xmon +EXPORT_SYMBOL vmlinux 0x2ccd059a dim_on_top +EXPORT_SYMBOL vmlinux 0x2cd6e790 vlan_filter_push_vids +EXPORT_SYMBOL vmlinux 0x2ce2c4e0 cdrom_dummy_generic_packet +EXPORT_SYMBOL vmlinux 0x2ce40b7e vfs_get_tree +EXPORT_SYMBOL vmlinux 0x2cf14b15 ucc_fast_disable +EXPORT_SYMBOL vmlinux 0x2cf29b55 generic_shutdown_super +EXPORT_SYMBOL vmlinux 0x2cf73cb7 kstrtoll_from_user +EXPORT_SYMBOL vmlinux 0x2cfeb6aa vm_map_pages +EXPORT_SYMBOL vmlinux 0x2d140a58 genl_unlock +EXPORT_SYMBOL vmlinux 0x2d192c70 sg_zero_buffer +EXPORT_SYMBOL vmlinux 0x2d26fa22 flow_block_cb_priv +EXPORT_SYMBOL vmlinux 0x2d2838f6 netif_set_real_num_rx_queues +EXPORT_SYMBOL vmlinux 0x2d291460 xfrm_policy_walk +EXPORT_SYMBOL vmlinux 0x2d30596c from_kqid_munged +EXPORT_SYMBOL vmlinux 0x2d3385d3 system_wq +EXPORT_SYMBOL vmlinux 0x2d39b0a7 kstrdup +EXPORT_SYMBOL vmlinux 0x2d4c773a hdmi_spd_infoframe_init +EXPORT_SYMBOL vmlinux 0x2d50ea83 security_inode_listsecurity +EXPORT_SYMBOL vmlinux 0x2d53b229 devfreq_add_governor +EXPORT_SYMBOL vmlinux 0x2d54726a page_symlink +EXPORT_SYMBOL vmlinux 0x2d7ec8a1 pci_disable_msix +EXPORT_SYMBOL vmlinux 0x2d94a8ce xp_dma_map +EXPORT_SYMBOL vmlinux 0x2d994605 security_inode_copy_up_xattr +EXPORT_SYMBOL vmlinux 0x2d99f913 serial8250_set_isa_configurator +EXPORT_SYMBOL vmlinux 0x2da3b7ef phy_get_pause +EXPORT_SYMBOL vmlinux 0x2db2d286 get_tz_trend +EXPORT_SYMBOL vmlinux 0x2db3bc61 check_zeroed_user +EXPORT_SYMBOL vmlinux 0x2dbcb0f3 backlight_device_get_by_name +EXPORT_SYMBOL vmlinux 0x2dc4e156 prepare_to_wait +EXPORT_SYMBOL vmlinux 0x2dcdea36 chip_to_vas_id +EXPORT_SYMBOL vmlinux 0x2dce19f1 __wait_on_bit +EXPORT_SYMBOL vmlinux 0x2de1341e __mdiobus_write +EXPORT_SYMBOL vmlinux 0x2df400e1 devfreq_update_interval +EXPORT_SYMBOL vmlinux 0x2dfa56e2 mipi_dsi_dcs_exit_sleep_mode +EXPORT_SYMBOL vmlinux 0x2dfd940e __block_write_begin +EXPORT_SYMBOL vmlinux 0x2e02d4e7 __sk_mem_schedule +EXPORT_SYMBOL vmlinux 0x2e1511ed super_setup_bdi +EXPORT_SYMBOL vmlinux 0x2e1ca751 clk_put +EXPORT_SYMBOL vmlinux 0x2e2b40d2 strncat +EXPORT_SYMBOL vmlinux 0x2e4d1b83 seq_file_path +EXPORT_SYMBOL vmlinux 0x2e51fe66 ps2_sendbyte +EXPORT_SYMBOL vmlinux 0x2e55c659 devm_pci_remap_cfgspace +EXPORT_SYMBOL vmlinux 0x2e5ed88c skb_checksum_help +EXPORT_SYMBOL vmlinux 0x2e5fe036 __skb_ext_put +EXPORT_SYMBOL vmlinux 0x2e68f1ed phy_device_free +EXPORT_SYMBOL vmlinux 0x2e716211 sock_no_sendpage_locked +EXPORT_SYMBOL vmlinux 0x2e7b83c5 param_set_ulong +EXPORT_SYMBOL vmlinux 0x2e8dd0d4 __napi_alloc_skb +EXPORT_SYMBOL vmlinux 0x2e8e1c7e phy_modify_paged +EXPORT_SYMBOL vmlinux 0x2eaf3cbb bio_advance +EXPORT_SYMBOL vmlinux 0x2ec6bba0 errseq_set +EXPORT_SYMBOL vmlinux 0x2edbeaf7 hex2bin +EXPORT_SYMBOL vmlinux 0x2edc8827 fb_get_mode +EXPORT_SYMBOL vmlinux 0x2ee4c2b1 hdmi_avi_infoframe_pack_only +EXPORT_SYMBOL vmlinux 0x2ef3eb61 flow_block_cb_free +EXPORT_SYMBOL vmlinux 0x2efcebab security_sctp_sk_clone +EXPORT_SYMBOL vmlinux 0x2f000c44 __percpu_counter_compare +EXPORT_SYMBOL vmlinux 0x2f03fc4b security_secmark_refcount_inc +EXPORT_SYMBOL vmlinux 0x2f17e69b inode_add_bytes +EXPORT_SYMBOL vmlinux 0x2f1c1779 block_page_mkwrite +EXPORT_SYMBOL vmlinux 0x2f1d8c46 nf_register_net_hooks +EXPORT_SYMBOL vmlinux 0x2f2e91b2 security_ib_alloc_security +EXPORT_SYMBOL vmlinux 0x2f3f460a param_set_ushort +EXPORT_SYMBOL vmlinux 0x2f70b7e3 pcim_iomap_regions +EXPORT_SYMBOL vmlinux 0x2f74f93f get_acl +EXPORT_SYMBOL vmlinux 0x2f7754a8 dma_pool_free +EXPORT_SYMBOL vmlinux 0x2f77d7a3 agp_backend_acquire +EXPORT_SYMBOL vmlinux 0x2f79f2d5 pcibios_fixup_bus +EXPORT_SYMBOL vmlinux 0x2f7c5910 pagecache_get_page +EXPORT_SYMBOL vmlinux 0x2f7cefc4 udp6_set_csum +EXPORT_SYMBOL vmlinux 0x2f8264bd gtm_get_timer16 +EXPORT_SYMBOL vmlinux 0x2f902be2 xfrm_init_state +EXPORT_SYMBOL vmlinux 0x2f95fc0b kmem_cache_alloc +EXPORT_SYMBOL vmlinux 0x2fa58ef8 udp_lib_getsockopt +EXPORT_SYMBOL vmlinux 0x2fa8dc2b mmc_gpio_set_cd_wake +EXPORT_SYMBOL vmlinux 0x2fae96de rtas_data_buf_lock +EXPORT_SYMBOL vmlinux 0x2fb6de5d add_device_randomness +EXPORT_SYMBOL vmlinux 0x2fc78fcc xa_erase +EXPORT_SYMBOL vmlinux 0x2fd6df09 mmc_is_req_done +EXPORT_SYMBOL vmlinux 0x2fe252cc unregister_inet6addr_notifier +EXPORT_SYMBOL vmlinux 0x2fe29272 netpoll_send_udp +EXPORT_SYMBOL vmlinux 0x2ffbd009 netdev_port_same_parent_id +EXPORT_SYMBOL vmlinux 0x2fff9ae8 simple_dentry_operations +EXPORT_SYMBOL vmlinux 0x30200ba6 flow_rule_match_ipv4_addrs +EXPORT_SYMBOL vmlinux 0x302bbe40 from_kuid +EXPORT_SYMBOL vmlinux 0x305de526 tcp_disconnect +EXPORT_SYMBOL vmlinux 0x3065a276 netdev_state_change +EXPORT_SYMBOL vmlinux 0x306ef6be of_create_pci_dev +EXPORT_SYMBOL vmlinux 0x306fac2f tc_cleanup_flow_action +EXPORT_SYMBOL vmlinux 0x30711bb5 file_fdatawait_range +EXPORT_SYMBOL vmlinux 0x3095b22c scsi_cmd_ioctl +EXPORT_SYMBOL vmlinux 0x3096be16 names_cachep +EXPORT_SYMBOL vmlinux 0x30987a04 skb_dequeue +EXPORT_SYMBOL vmlinux 0x309e1122 cdev_device_del +EXPORT_SYMBOL vmlinux 0x30a64cb0 nf_log_packet +EXPORT_SYMBOL vmlinux 0x30a80826 __kfifo_from_user +EXPORT_SYMBOL vmlinux 0x30acfde9 hsiphash_2u32 +EXPORT_SYMBOL vmlinux 0x30af45a1 ZSTD_initCStream +EXPORT_SYMBOL vmlinux 0x30afb88e make_kuid +EXPORT_SYMBOL vmlinux 0x30b8b35c cpu_to_chip_id +EXPORT_SYMBOL vmlinux 0x30cfb12d jbd2_journal_begin_ordered_truncate +EXPORT_SYMBOL vmlinux 0x30d93ffa napi_schedule_prep +EXPORT_SYMBOL vmlinux 0x30e2c2ca free_netdev +EXPORT_SYMBOL vmlinux 0x30eca092 truncate_inode_pages_final +EXPORT_SYMBOL vmlinux 0x3102d70b frontswap_curr_pages +EXPORT_SYMBOL vmlinux 0x31052f35 skb_checksum_setup +EXPORT_SYMBOL vmlinux 0x31154f2f mmc_command_done +EXPORT_SYMBOL vmlinux 0x3123e8d9 dm_table_get_md +EXPORT_SYMBOL vmlinux 0x3126a9e8 siphash_1u64 +EXPORT_SYMBOL vmlinux 0x3145216f pci_dev_present +EXPORT_SYMBOL vmlinux 0x31494f0c tcf_idr_create_from_flags +EXPORT_SYMBOL vmlinux 0x314a84e1 dma_sync_wait +EXPORT_SYMBOL vmlinux 0x315992df param_ops_bint +EXPORT_SYMBOL vmlinux 0x315ee652 wait_on_page_bit +EXPORT_SYMBOL vmlinux 0x317f818a param_set_int +EXPORT_SYMBOL vmlinux 0x31898075 genl_register_family +EXPORT_SYMBOL vmlinux 0x318a402f lookup_one_len +EXPORT_SYMBOL vmlinux 0x318c1922 vme_init_bridge +EXPORT_SYMBOL vmlinux 0x318cafa4 filemap_fdatawait_range_keep_errors +EXPORT_SYMBOL vmlinux 0x319855fa nf_log_unbind_pf +EXPORT_SYMBOL vmlinux 0x31aece02 agp_alloc_bridge +EXPORT_SYMBOL vmlinux 0x31b600ae filemap_fdatawrite +EXPORT_SYMBOL vmlinux 0x31b88f58 i2c_smbus_read_byte +EXPORT_SYMBOL vmlinux 0x31baf13b sock_no_sendmsg +EXPORT_SYMBOL vmlinux 0x31cd5a7e _dev_emerg +EXPORT_SYMBOL vmlinux 0x31e06c6c xfrm_policy_bysel_ctx +EXPORT_SYMBOL vmlinux 0x31e76104 tcp_read_sock +EXPORT_SYMBOL vmlinux 0x31fc64f0 kernel_listen +EXPORT_SYMBOL vmlinux 0x3211691c skb_copy_datagram_iter +EXPORT_SYMBOL vmlinux 0x3217c3a3 __memset32 +EXPORT_SYMBOL vmlinux 0x322e794c fb_set_suspend +EXPORT_SYMBOL vmlinux 0x32394d4b qe_issue_cmd +EXPORT_SYMBOL vmlinux 0x3242ee23 inode_newsize_ok +EXPORT_SYMBOL vmlinux 0x324c4784 clk_add_alias +EXPORT_SYMBOL vmlinux 0x327c84bf vme_lm_attach +EXPORT_SYMBOL vmlinux 0x3283e6b0 prandom_seed_full_state +EXPORT_SYMBOL vmlinux 0x32a46757 nobh_writepage +EXPORT_SYMBOL vmlinux 0x32b0fa60 noop_llseek +EXPORT_SYMBOL vmlinux 0x32b7d5b2 lockref_put_not_zero +EXPORT_SYMBOL vmlinux 0x32bf5cf3 __cleancache_invalidate_page +EXPORT_SYMBOL vmlinux 0x32c22433 scsi_register_driver +EXPORT_SYMBOL vmlinux 0x32ce3777 radix_tree_preload +EXPORT_SYMBOL vmlinux 0x32dc8eeb phy_queue_state_machine +EXPORT_SYMBOL vmlinux 0x32f916e1 nobh_truncate_page +EXPORT_SYMBOL vmlinux 0x3303fe3b simple_transaction_release +EXPORT_SYMBOL vmlinux 0x330d5019 km_policy_notify +EXPORT_SYMBOL vmlinux 0x3312f51c netdev_adjacent_change_prepare +EXPORT_SYMBOL vmlinux 0x3338c33d sk_ns_capable +EXPORT_SYMBOL vmlinux 0x333c15b4 writeback_inodes_sb +EXPORT_SYMBOL vmlinux 0x333caa66 inet_frag_find +EXPORT_SYMBOL vmlinux 0x3351723a dev_set_promiscuity +EXPORT_SYMBOL vmlinux 0x3367366f kill_anon_super +EXPORT_SYMBOL vmlinux 0x33730db9 serial8250_register_8250_port +EXPORT_SYMBOL vmlinux 0x33736a1d __genradix_ptr_alloc +EXPORT_SYMBOL vmlinux 0x337a3330 seq_printf +EXPORT_SYMBOL vmlinux 0x337b3213 devm_register_netdev +EXPORT_SYMBOL vmlinux 0x339c27a1 rproc_of_resm_mem_entry_init +EXPORT_SYMBOL vmlinux 0x33a28cb8 phy_modify_paged_changed +EXPORT_SYMBOL vmlinux 0x33a48cf0 update_region +EXPORT_SYMBOL vmlinux 0x33b84f74 copy_page +EXPORT_SYMBOL vmlinux 0x33b93e88 poll_initwait +EXPORT_SYMBOL vmlinux 0x33ca3f3f tcp_sock_set_keepidle +EXPORT_SYMBOL vmlinux 0x33e5d084 tcp_simple_retransmit +EXPORT_SYMBOL vmlinux 0x33ef191d of_device_is_available +EXPORT_SYMBOL vmlinux 0x33f0768c cpufreq_quick_get_max +EXPORT_SYMBOL vmlinux 0x33f2be23 genphy_read_mmd_unsupported +EXPORT_SYMBOL vmlinux 0x33f619ca page_pool_create +EXPORT_SYMBOL vmlinux 0x33fcf44a __kfifo_out_r +EXPORT_SYMBOL vmlinux 0x341772e8 config_item_init_type_name +EXPORT_SYMBOL vmlinux 0x342bf728 seq_dentry +EXPORT_SYMBOL vmlinux 0x343de388 mdiobus_alloc_size +EXPORT_SYMBOL vmlinux 0x3448a04c da903x_query_status +EXPORT_SYMBOL vmlinux 0x345c8916 strict_msr_control +EXPORT_SYMBOL vmlinux 0x345f31ec backlight_force_update +EXPORT_SYMBOL vmlinux 0x345fac57 path_get +EXPORT_SYMBOL vmlinux 0x3463aabe netdev_change_features +EXPORT_SYMBOL vmlinux 0x346c157e _copy_from_iter_full_nocache +EXPORT_SYMBOL vmlinux 0x3473b9b2 sock_alloc_send_pskb +EXPORT_SYMBOL vmlinux 0x348dae59 of_find_mipi_dsi_device_by_node +EXPORT_SYMBOL vmlinux 0x349cba85 strchr +EXPORT_SYMBOL vmlinux 0x34a1aaf8 nf_unregister_sockopt +EXPORT_SYMBOL vmlinux 0x34b2bf71 vfs_create_mount +EXPORT_SYMBOL vmlinux 0x34c850c2 udp_poll +EXPORT_SYMBOL vmlinux 0x34e1b60a vfs_getattr_nosec +EXPORT_SYMBOL vmlinux 0x34f3437e devfreq_monitor_stop +EXPORT_SYMBOL vmlinux 0x34f3484e security_tun_dev_attach_queue +EXPORT_SYMBOL vmlinux 0x350cd016 read_cache_page +EXPORT_SYMBOL vmlinux 0x351066b7 pm860x_page_bulk_read +EXPORT_SYMBOL vmlinux 0x35154961 jbd2_journal_inode_ranged_wait +EXPORT_SYMBOL vmlinux 0x3517383e register_reboot_notifier +EXPORT_SYMBOL vmlinux 0x35257e6c epapr_hypercall_start +EXPORT_SYMBOL vmlinux 0x352bb201 xa_store +EXPORT_SYMBOL vmlinux 0x3534ba58 dquot_commit +EXPORT_SYMBOL vmlinux 0x3539f11b match_strlcpy +EXPORT_SYMBOL vmlinux 0x35445dea component_match_add_release +EXPORT_SYMBOL vmlinux 0x3561f365 flow_indr_block_cb_alloc +EXPORT_SYMBOL vmlinux 0x356461c8 rtc_time64_to_tm +EXPORT_SYMBOL vmlinux 0x3573e0d0 radix_tree_lookup_slot +EXPORT_SYMBOL vmlinux 0x35763bd5 free_buffer_head +EXPORT_SYMBOL vmlinux 0x35767f72 km_report +EXPORT_SYMBOL vmlinux 0x3579b343 inet_frag_reasm_finish +EXPORT_SYMBOL vmlinux 0x357adc86 netpoll_setup +EXPORT_SYMBOL vmlinux 0x359bd0b8 md_bitmap_start_sync +EXPORT_SYMBOL vmlinux 0x35a88f28 zlib_inflateInit2 +EXPORT_SYMBOL vmlinux 0x35be5a72 udp_lib_setsockopt +EXPORT_SYMBOL vmlinux 0x35c32767 xor_altivec_2 +EXPORT_SYMBOL vmlinux 0x35d6f8d6 scmd_printk +EXPORT_SYMBOL vmlinux 0x35dbabc3 touchscreen_parse_properties +EXPORT_SYMBOL vmlinux 0x35dcc14f iget_locked +EXPORT_SYMBOL vmlinux 0x35f7e7cd blk_integrity_merge_bio +EXPORT_SYMBOL vmlinux 0x36022418 __bforget +EXPORT_SYMBOL vmlinux 0x3613be1a param_ops_int +EXPORT_SYMBOL vmlinux 0x362ef408 _copy_from_user +EXPORT_SYMBOL vmlinux 0x3635160d __register_nls +EXPORT_SYMBOL vmlinux 0x364057b3 udp_lib_unhash +EXPORT_SYMBOL vmlinux 0x364cf427 linkwatch_fire_event +EXPORT_SYMBOL vmlinux 0x364d1586 neigh_ifdown +EXPORT_SYMBOL vmlinux 0x3651477c configfs_register_subsystem +EXPORT_SYMBOL vmlinux 0x365acda7 set_normalized_timespec64 +EXPORT_SYMBOL vmlinux 0x365e7911 kstrdup_const +EXPORT_SYMBOL vmlinux 0x366cfc60 of_graph_get_port_by_id +EXPORT_SYMBOL vmlinux 0x3678f173 jbd2_journal_free_reserved +EXPORT_SYMBOL vmlinux 0x367d24b0 blk_mq_unique_tag +EXPORT_SYMBOL vmlinux 0x368a69ef mmc_can_gpio_ro +EXPORT_SYMBOL vmlinux 0x36b5acb3 skb_append +EXPORT_SYMBOL vmlinux 0x36c262b3 param_set_charp +EXPORT_SYMBOL vmlinux 0x36c7d2fe dma_fence_default_wait +EXPORT_SYMBOL vmlinux 0x36ccdba2 nf_log_bind_pf +EXPORT_SYMBOL vmlinux 0x36d438f7 compat_ip_getsockopt +EXPORT_SYMBOL vmlinux 0x36da6272 napi_complete_done +EXPORT_SYMBOL vmlinux 0x36e257c2 security_inode_copy_up +EXPORT_SYMBOL vmlinux 0x36eaafe2 __cpu_active_mask +EXPORT_SYMBOL vmlinux 0x36ee66ff pcie_capability_write_dword +EXPORT_SYMBOL vmlinux 0x36f18f57 fddi_type_trans +EXPORT_SYMBOL vmlinux 0x36fda5bf mark_buffer_dirty +EXPORT_SYMBOL vmlinux 0x371d2130 check_legacy_ioport +EXPORT_SYMBOL vmlinux 0x371e7041 dentry_open +EXPORT_SYMBOL vmlinux 0x371e7f3a ZSTD_initCDict +EXPORT_SYMBOL vmlinux 0x3737d9a9 ZSTD_DStreamWorkspaceBound +EXPORT_SYMBOL vmlinux 0x37383edd rtas_get_power_level +EXPORT_SYMBOL vmlinux 0x3744cf36 vmalloc_to_pfn +EXPORT_SYMBOL vmlinux 0x37519524 proc_mkdir_mode +EXPORT_SYMBOL vmlinux 0x3755f990 gf128mul_init_64k_bbe +EXPORT_SYMBOL vmlinux 0x376a597a netif_device_attach +EXPORT_SYMBOL vmlinux 0x37746fde ZSTD_initDStream +EXPORT_SYMBOL vmlinux 0x377e7953 inet_del_protocol +EXPORT_SYMBOL vmlinux 0x378006c6 sk_stop_timer +EXPORT_SYMBOL vmlinux 0x3781a741 jbd2__journal_restart +EXPORT_SYMBOL vmlinux 0x37af3190 dm_table_run_md_queue_async +EXPORT_SYMBOL vmlinux 0x37b8b39e screen_info +EXPORT_SYMBOL vmlinux 0x37befc70 jiffies_to_msecs +EXPORT_SYMBOL vmlinux 0x37c55f68 netdev_notify_peers +EXPORT_SYMBOL vmlinux 0x37d66eac netdev_txq_to_tc +EXPORT_SYMBOL vmlinux 0x37dfc36f audit_log +EXPORT_SYMBOL vmlinux 0x38026cb6 complete +EXPORT_SYMBOL vmlinux 0x380fc03b phy_remove_link_mode +EXPORT_SYMBOL vmlinux 0x381a798a setup_max_cpus +EXPORT_SYMBOL vmlinux 0x38271794 kill_block_super +EXPORT_SYMBOL vmlinux 0x385d1c9a generic_splice_sendpage +EXPORT_SYMBOL vmlinux 0x38869d88 kstat +EXPORT_SYMBOL vmlinux 0x388a24c7 pci_select_bars +EXPORT_SYMBOL vmlinux 0x3890a49f __skb_pad +EXPORT_SYMBOL vmlinux 0x389134e9 d_find_any_alias +EXPORT_SYMBOL vmlinux 0x3891ffc8 ecryptfs_fill_auth_tok +EXPORT_SYMBOL vmlinux 0x389617b0 LZ4_decompress_fast_continue +EXPORT_SYMBOL vmlinux 0x38a4a0ef devfreq_monitor_resume +EXPORT_SYMBOL vmlinux 0x38a597ee bioset_integrity_create +EXPORT_SYMBOL vmlinux 0x38a71b7e pci_free_resource_list +EXPORT_SYMBOL vmlinux 0x38a9f7c5 in6addr_loopback +EXPORT_SYMBOL vmlinux 0x38c2d146 __break_lease +EXPORT_SYMBOL vmlinux 0x38e6eba3 pci_wake_from_d3 +EXPORT_SYMBOL vmlinux 0x38fa3049 xsk_umem_consume_tx_done +EXPORT_SYMBOL vmlinux 0x38fb9933 tty_std_termios +EXPORT_SYMBOL vmlinux 0x3914e2c3 adjust_managed_page_count +EXPORT_SYMBOL vmlinux 0x391de354 uart_add_one_port +EXPORT_SYMBOL vmlinux 0x39292656 security_sk_classify_flow +EXPORT_SYMBOL vmlinux 0x3939f8f0 rfkill_pause_polling +EXPORT_SYMBOL vmlinux 0x39461d6a in_egroup_p +EXPORT_SYMBOL vmlinux 0x394a1e11 phy_sfp_attach +EXPORT_SYMBOL vmlinux 0x3955fcf6 __kfifo_in_r +EXPORT_SYMBOL vmlinux 0x395e268d tcp_sock_set_quickack +EXPORT_SYMBOL vmlinux 0x396bddc2 __scsi_add_device +EXPORT_SYMBOL vmlinux 0x396f6f4a pnv_pci_get_phb_node +EXPORT_SYMBOL vmlinux 0x3981051b phy_ethtool_nway_reset +EXPORT_SYMBOL vmlinux 0x398123bb netdev_printk +EXPORT_SYMBOL vmlinux 0x3985901c kthread_create_worker +EXPORT_SYMBOL vmlinux 0x39991865 icmp_global_allow +EXPORT_SYMBOL vmlinux 0x399ad043 __kfifo_dma_out_finish_r +EXPORT_SYMBOL vmlinux 0x399e999d padata_alloc_possible +EXPORT_SYMBOL vmlinux 0x39b5219f netif_carrier_off +EXPORT_SYMBOL vmlinux 0x39b52d19 __bitmap_and +EXPORT_SYMBOL vmlinux 0x39b8b584 tcf_action_set_ctrlact +EXPORT_SYMBOL vmlinux 0x39c1d9e1 vm_map_ram +EXPORT_SYMBOL vmlinux 0x39d67aa9 scsi_block_when_processing_errors +EXPORT_SYMBOL vmlinux 0x39dcf851 vfs_create +EXPORT_SYMBOL vmlinux 0x39f9e18c dma_fence_wait_any_timeout +EXPORT_SYMBOL vmlinux 0x3a0a8ea4 give_up_console +EXPORT_SYMBOL vmlinux 0x3a13f54a sgl_alloc +EXPORT_SYMBOL vmlinux 0x3a2f6702 sg_alloc_table +EXPORT_SYMBOL vmlinux 0x3a32b784 invalidate_bdev +EXPORT_SYMBOL vmlinux 0x3a3c6467 unregister_fib_notifier +EXPORT_SYMBOL vmlinux 0x3a4ea9af simple_setattr +EXPORT_SYMBOL vmlinux 0x3a4f9d28 rng_is_initialized +EXPORT_SYMBOL vmlinux 0x3a7412d1 ps2_handle_response +EXPORT_SYMBOL vmlinux 0x3a80a53e mach_pseries +EXPORT_SYMBOL vmlinux 0x3a875620 __xa_store +EXPORT_SYMBOL vmlinux 0x3a929e5b param_get_charp +EXPORT_SYMBOL vmlinux 0x3ab6a909 napi_gro_receive +EXPORT_SYMBOL vmlinux 0x3ab7b1cc scsi_set_sense_field_pointer +EXPORT_SYMBOL vmlinux 0x3ad14716 scsi_vpd_lun_id +EXPORT_SYMBOL vmlinux 0x3ad53080 kthread_blkcg +EXPORT_SYMBOL vmlinux 0x3b1507a2 blk_pre_runtime_resume +EXPORT_SYMBOL vmlinux 0x3b1a27ef _copy_to_iter +EXPORT_SYMBOL vmlinux 0x3b1c46e0 filemap_check_errors +EXPORT_SYMBOL vmlinux 0x3b321462 LZ4_setStreamDecode +EXPORT_SYMBOL vmlinux 0x3b3a7ef8 pci_scan_single_device +EXPORT_SYMBOL vmlinux 0x3b3d390f iterate_fd +EXPORT_SYMBOL vmlinux 0x3b42124e agp_generic_type_to_mask_type +EXPORT_SYMBOL vmlinux 0x3b492f64 dev_add_offload +EXPORT_SYMBOL vmlinux 0x3b5c7450 sock_set_sndtimeo +EXPORT_SYMBOL vmlinux 0x3b644591 __bitmap_shift_left +EXPORT_SYMBOL vmlinux 0x3b687c00 __sock_create +EXPORT_SYMBOL vmlinux 0x3b6d4343 jbd2_journal_get_create_access +EXPORT_SYMBOL vmlinux 0x3b6d4b06 __skb_recv_udp +EXPORT_SYMBOL vmlinux 0x3b878d0f of_iomap +EXPORT_SYMBOL vmlinux 0x3b9d41e4 dma_mmap_attrs +EXPORT_SYMBOL vmlinux 0x3ba6f6eb kernel_write +EXPORT_SYMBOL vmlinux 0x3bb4fff0 ipv6_dev_mc_inc +EXPORT_SYMBOL vmlinux 0x3bbed9a5 register_sysctl_paths +EXPORT_SYMBOL vmlinux 0x3bde326e dquot_load_quota_inode +EXPORT_SYMBOL vmlinux 0x3bdebfda phy_init_hw +EXPORT_SYMBOL vmlinux 0x3be7643e security_xfrm_policy_free +EXPORT_SYMBOL vmlinux 0x3bf73a07 netdev_master_upper_dev_link +EXPORT_SYMBOL vmlinux 0x3bfb09fa gen_pool_has_addr +EXPORT_SYMBOL vmlinux 0x3bfd86b5 d_obtain_alias +EXPORT_SYMBOL vmlinux 0x3c185c61 page_put_link +EXPORT_SYMBOL vmlinux 0x3c23f05b skb_ensure_writable +EXPORT_SYMBOL vmlinux 0x3c2dc8ca mmc_set_blocklen +EXPORT_SYMBOL vmlinux 0x3c320569 udp_flush_pending_frames +EXPORT_SYMBOL vmlinux 0x3c3215c4 qe_immr +EXPORT_SYMBOL vmlinux 0x3c39bab5 vlan_vid_del +EXPORT_SYMBOL vmlinux 0x3c3b8345 tty_register_ldisc +EXPORT_SYMBOL vmlinux 0x3c3fce39 __local_bh_enable_ip +EXPORT_SYMBOL vmlinux 0x3c3ff9fd sprintf +EXPORT_SYMBOL vmlinux 0x3c457453 ioread64_lo_hi +EXPORT_SYMBOL vmlinux 0x3c6919ee devm_extcon_unregister_notifier_all +EXPORT_SYMBOL vmlinux 0x3c79900b pnv_pci_get_npu_dev +EXPORT_SYMBOL vmlinux 0x3c80c06c kstrtoull +EXPORT_SYMBOL vmlinux 0x3c81723c __kfree_skb +EXPORT_SYMBOL vmlinux 0x3c8a01f8 netlink_ns_capable +EXPORT_SYMBOL vmlinux 0x3c96e202 agp_generic_alloc_by_type +EXPORT_SYMBOL vmlinux 0x3c9f4bc7 blk_rq_map_user_iov +EXPORT_SYMBOL vmlinux 0x3cb0576c dev_mc_del +EXPORT_SYMBOL vmlinux 0x3cb37157 xps_rxqs_needed +EXPORT_SYMBOL vmlinux 0x3ce4ca6f disable_irq +EXPORT_SYMBOL vmlinux 0x3d042e1b migrate_page_move_mapping +EXPORT_SYMBOL vmlinux 0x3d0ab325 xfrm6_find_1stfragopt +EXPORT_SYMBOL vmlinux 0x3d296153 pci_set_power_state +EXPORT_SYMBOL vmlinux 0x3d3804c1 pcie_relaxed_ordering_enabled +EXPORT_SYMBOL vmlinux 0x3d56e7b3 utf8_unload +EXPORT_SYMBOL vmlinux 0x3d5c8064 pcim_iomap_table +EXPORT_SYMBOL vmlinux 0x3d769dca insert_inode_locked +EXPORT_SYMBOL vmlinux 0x3d86dd8d skb_copy_and_csum_bits +EXPORT_SYMBOL vmlinux 0x3dad9978 cancel_delayed_work +EXPORT_SYMBOL vmlinux 0x3dc2c571 param_ops_ullong +EXPORT_SYMBOL vmlinux 0x3dcb88a0 irq_set_handler_data +EXPORT_SYMBOL vmlinux 0x3dcc3ae2 param_set_bint +EXPORT_SYMBOL vmlinux 0x3dfb86b9 resource_list_create_entry +EXPORT_SYMBOL vmlinux 0x3dfc8791 mipi_dsi_set_maximum_return_packet_size +EXPORT_SYMBOL vmlinux 0x3dfc897c seq_hlist_start_head +EXPORT_SYMBOL vmlinux 0x3e046dd2 scsi_print_result +EXPORT_SYMBOL vmlinux 0x3e087be0 __vio_register_driver +EXPORT_SYMBOL vmlinux 0x3e09c4e8 sock_recv_errqueue +EXPORT_SYMBOL vmlinux 0x3e16386f netlink_rcv_skb +EXPORT_SYMBOL vmlinux 0x3e26df5d ppp_channel_index +EXPORT_SYMBOL vmlinux 0x3e2b0ba6 groups_alloc +EXPORT_SYMBOL vmlinux 0x3e2f8392 flow_rule_match_enc_ipv4_addrs +EXPORT_SYMBOL vmlinux 0x3e34e4b7 seg6_hmac_net_init +EXPORT_SYMBOL vmlinux 0x3e7b090c fb_firmware_edid +EXPORT_SYMBOL vmlinux 0x3e80702d rps_may_expire_flow +EXPORT_SYMBOL vmlinux 0x3e821a89 simple_dir_inode_operations +EXPORT_SYMBOL vmlinux 0x3e866331 param_get_invbool +EXPORT_SYMBOL vmlinux 0x3e8e829a mipi_dsi_device_register_full +EXPORT_SYMBOL vmlinux 0x3e9110fa __hw_addr_unsync +EXPORT_SYMBOL vmlinux 0x3e98aa3b i2c_smbus_write_i2c_block_data +EXPORT_SYMBOL vmlinux 0x3eae1912 vga_put +EXPORT_SYMBOL vmlinux 0x3eb60a2c configfs_undepend_item +EXPORT_SYMBOL vmlinux 0x3ec2690b may_umount +EXPORT_SYMBOL vmlinux 0x3ecaca83 netdev_bonding_info_change +EXPORT_SYMBOL vmlinux 0x3ee0f484 netdev_refcnt_read +EXPORT_SYMBOL vmlinux 0x3eeb5a58 generic_file_splice_read +EXPORT_SYMBOL vmlinux 0x3eed8d60 dev_get_by_index_rcu +EXPORT_SYMBOL vmlinux 0x3efe1703 phy_unregister_fixup_for_id +EXPORT_SYMBOL vmlinux 0x3f0546a8 ioread32_rep +EXPORT_SYMBOL vmlinux 0x3f0890de generic_file_llseek +EXPORT_SYMBOL vmlinux 0x3f0eabd2 xxh64_update +EXPORT_SYMBOL vmlinux 0x3f13b226 scsi_print_sense +EXPORT_SYMBOL vmlinux 0x3f1d0b85 mdiobus_read +EXPORT_SYMBOL vmlinux 0x3f2080e4 datagram_poll +EXPORT_SYMBOL vmlinux 0x3f2c52ff mipi_dsi_turn_on_peripheral +EXPORT_SYMBOL vmlinux 0x3f35a4c0 skb_prepare_seq_read +EXPORT_SYMBOL vmlinux 0x3f377cc0 param_ops_ulong +EXPORT_SYMBOL vmlinux 0x3f406a3b enable_kernel_altivec +EXPORT_SYMBOL vmlinux 0x3f4547a7 put_unused_fd +EXPORT_SYMBOL vmlinux 0x3f529261 of_match_device +EXPORT_SYMBOL vmlinux 0x3f60ea23 devfreq_add_device +EXPORT_SYMBOL vmlinux 0x3f7d378c down_write_killable +EXPORT_SYMBOL vmlinux 0x3f89071b security_ib_pkey_access +EXPORT_SYMBOL vmlinux 0x3fb277f6 security_sock_rcv_skb +EXPORT_SYMBOL vmlinux 0x3fb7377a scsi_host_lookup +EXPORT_SYMBOL vmlinux 0x3fbf3c89 vme_slave_set +EXPORT_SYMBOL vmlinux 0x3fd78f3b register_chrdev_region +EXPORT_SYMBOL vmlinux 0x3fda0c6f irq_set_chip +EXPORT_SYMBOL vmlinux 0x3fe2ccbe memweight +EXPORT_SYMBOL vmlinux 0x400245a5 inode_init_once +EXPORT_SYMBOL vmlinux 0x40239507 ppp_register_net_channel +EXPORT_SYMBOL vmlinux 0x40244496 inet_frags_init +EXPORT_SYMBOL vmlinux 0x40390b2e dev_uc_del +EXPORT_SYMBOL vmlinux 0x403d6de7 sync_filesystem +EXPORT_SYMBOL vmlinux 0x4045090b simple_symlink_inode_operations +EXPORT_SYMBOL vmlinux 0x405b6e05 srp_parse_tmo +EXPORT_SYMBOL vmlinux 0x4079c8cc skb_udp_tunnel_segment +EXPORT_SYMBOL vmlinux 0x4080372f kiocb_set_cancel_fn +EXPORT_SYMBOL vmlinux 0x40973662 sysctl_udp_mem +EXPORT_SYMBOL vmlinux 0x409ef099 i8042_install_filter +EXPORT_SYMBOL vmlinux 0x40a3a15f netpoll_poll_disable +EXPORT_SYMBOL vmlinux 0x40a9b349 vzalloc +EXPORT_SYMBOL vmlinux 0x40b20ada mmc_get_card +EXPORT_SYMBOL vmlinux 0x40b61a55 pci_find_resource +EXPORT_SYMBOL vmlinux 0x40c01704 get_user_pages_locked +EXPORT_SYMBOL vmlinux 0x40c7247c si_meminfo +EXPORT_SYMBOL vmlinux 0x40cda813 inet_csk_accept +EXPORT_SYMBOL vmlinux 0x40d04664 console_trylock +EXPORT_SYMBOL vmlinux 0x40d59096 unregister_restart_handler +EXPORT_SYMBOL vmlinux 0x40d84a37 ZSTD_getFrameParams +EXPORT_SYMBOL vmlinux 0x40dc6b2b nvm_dev_dma_alloc +EXPORT_SYMBOL vmlinux 0x40f97abf skb_flow_get_icmp_tci +EXPORT_SYMBOL vmlinux 0x40ff46db dev_get_by_index +EXPORT_SYMBOL vmlinux 0x4116385f inet_unregister_protosw +EXPORT_SYMBOL vmlinux 0x411991b0 of_device_alloc +EXPORT_SYMBOL vmlinux 0x412ea812 vme_irq_request +EXPORT_SYMBOL vmlinux 0x413de712 pci_ep_cfs_remove_epc_group +EXPORT_SYMBOL vmlinux 0x41482d8b strndup_user +EXPORT_SYMBOL vmlinux 0x4166ce58 to_nd_pfn +EXPORT_SYMBOL vmlinux 0x41809ddf kthread_destroy_worker +EXPORT_SYMBOL vmlinux 0x41823e84 locks_delete_block +EXPORT_SYMBOL vmlinux 0x4188d439 neigh_rand_reach_time +EXPORT_SYMBOL vmlinux 0x418a473a fscrypt_free_inode +EXPORT_SYMBOL vmlinux 0x418ba995 skb_clone +EXPORT_SYMBOL vmlinux 0x4192ab12 unlock_page +EXPORT_SYMBOL vmlinux 0x41990414 input_get_keycode +EXPORT_SYMBOL vmlinux 0x41ae718a __percpu_counter_init +EXPORT_SYMBOL vmlinux 0x41e9b7b5 skb_copy +EXPORT_SYMBOL vmlinux 0x41e9e85e serial8250_do_pm +EXPORT_SYMBOL vmlinux 0x41f44026 xfrm_policy_delete +EXPORT_SYMBOL vmlinux 0x4209afcc ps2_init +EXPORT_SYMBOL vmlinux 0x420fa3d3 serio_unregister_driver +EXPORT_SYMBOL vmlinux 0x42160169 flush_workqueue +EXPORT_SYMBOL vmlinux 0x421eff56 dev_set_mtu +EXPORT_SYMBOL vmlinux 0x421fbd21 security_inode_invalidate_secctx +EXPORT_SYMBOL vmlinux 0x422737e5 inet_csk_reqsk_queue_drop +EXPORT_SYMBOL vmlinux 0x4230a8d7 sg_nents_for_len +EXPORT_SYMBOL vmlinux 0x423dc597 keyring_alloc +EXPORT_SYMBOL vmlinux 0x4248ae3c single_task_running +EXPORT_SYMBOL vmlinux 0x424bedb0 ndisc_mc_map +EXPORT_SYMBOL vmlinux 0x424d3620 zlib_inflateIncomp +EXPORT_SYMBOL vmlinux 0x42595e58 vgacon_text_force +EXPORT_SYMBOL vmlinux 0x42680815 pci_get_device +EXPORT_SYMBOL vmlinux 0x427028be mfd_remove_devices +EXPORT_SYMBOL vmlinux 0x42775f37 sock_queue_err_skb +EXPORT_SYMBOL vmlinux 0x429cc3db __blkdev_issue_zeroout +EXPORT_SYMBOL vmlinux 0x42ee8cec seq_vprintf +EXPORT_SYMBOL vmlinux 0x42f030bd dma_fence_chain_find_seqno +EXPORT_SYMBOL vmlinux 0x42f1b900 fb_pad_unaligned_buffer +EXPORT_SYMBOL vmlinux 0x42f86420 revalidate_disk +EXPORT_SYMBOL vmlinux 0x4302d0eb free_pages +EXPORT_SYMBOL vmlinux 0x430ecc96 ZSTD_initCStream_usingCDict +EXPORT_SYMBOL vmlinux 0x4340ee26 skb_headers_offset_update +EXPORT_SYMBOL vmlinux 0x4351577a fb_parse_edid +EXPORT_SYMBOL vmlinux 0x43535dab d_obtain_root +EXPORT_SYMBOL vmlinux 0x436a14d1 generic_setlease +EXPORT_SYMBOL vmlinux 0x436d9fce devm_nvmem_cell_put +EXPORT_SYMBOL vmlinux 0x437a0d6d __sock_tx_timestamp +EXPORT_SYMBOL vmlinux 0x438610bd security_tun_dev_alloc_security +EXPORT_SYMBOL vmlinux 0x4391d5f0 ip_defrag +EXPORT_SYMBOL vmlinux 0x43a4938f vm_get_page_prot +EXPORT_SYMBOL vmlinux 0x43a58776 __inc_zone_page_state +EXPORT_SYMBOL vmlinux 0x43af86d5 vlan_dev_vlan_proto +EXPORT_SYMBOL vmlinux 0x43b00c00 md_write_end +EXPORT_SYMBOL vmlinux 0x43c82edf wait_for_completion_io_timeout +EXPORT_SYMBOL vmlinux 0x43d00b17 dev_uc_unsync +EXPORT_SYMBOL vmlinux 0x43f83ec7 sock_no_shutdown +EXPORT_SYMBOL vmlinux 0x441e33bf elv_rb_former_request +EXPORT_SYMBOL vmlinux 0x44367769 eth_header_parse +EXPORT_SYMBOL vmlinux 0x443e6e31 tty_do_resize +EXPORT_SYMBOL vmlinux 0x44469a76 crc_ccitt_false_table +EXPORT_SYMBOL vmlinux 0x44617403 con_is_bound +EXPORT_SYMBOL vmlinux 0x4462d35e cpufreq_get_hw_max_freq +EXPORT_SYMBOL vmlinux 0x446b6ce3 mdio_driver_unregister +EXPORT_SYMBOL vmlinux 0x447d8853 scsi_host_alloc +EXPORT_SYMBOL vmlinux 0x4488bc8a prepare_to_wait_event +EXPORT_SYMBOL vmlinux 0x44967c11 unlock_two_nondirectories +EXPORT_SYMBOL vmlinux 0x44a6e90a irq_cpu_rmap_add +EXPORT_SYMBOL vmlinux 0x44b60884 mipi_dsi_dcs_soft_reset +EXPORT_SYMBOL vmlinux 0x44d92019 page_pool_destroy +EXPORT_SYMBOL vmlinux 0x44db7f21 buffer_migrate_page +EXPORT_SYMBOL vmlinux 0x44e03d3a gen_pool_dma_zalloc +EXPORT_SYMBOL vmlinux 0x44e9a829 match_token +EXPORT_SYMBOL vmlinux 0x44feb517 param_get_short +EXPORT_SYMBOL vmlinux 0x45006cee default_red +EXPORT_SYMBOL vmlinux 0x450bd37e __pmd_index_size +EXPORT_SYMBOL vmlinux 0x450d640b dma_fence_enable_sw_signaling +EXPORT_SYMBOL vmlinux 0x450fe255 xfrm_state_unregister_afinfo +EXPORT_SYMBOL vmlinux 0x4513e23a rdmacg_try_charge +EXPORT_SYMBOL vmlinux 0x4519b75e unlock_new_inode +EXPORT_SYMBOL vmlinux 0x452287df gen_pool_best_fit +EXPORT_SYMBOL vmlinux 0x4526e111 __netif_schedule +EXPORT_SYMBOL vmlinux 0x452ba683 ipv6_ext_hdr +EXPORT_SYMBOL vmlinux 0x453c8403 pci_msi_enabled +EXPORT_SYMBOL vmlinux 0x454187d7 generic_ro_fops +EXPORT_SYMBOL vmlinux 0x4543531b ipv6_flowlabel_exclusive +EXPORT_SYMBOL vmlinux 0x45436b70 pci_release_regions +EXPORT_SYMBOL vmlinux 0x45465c58 inet_addr_type +EXPORT_SYMBOL vmlinux 0x45535485 xxh32_update +EXPORT_SYMBOL vmlinux 0x456fc864 wireless_send_event +EXPORT_SYMBOL vmlinux 0x4578f528 __kfifo_to_user +EXPORT_SYMBOL vmlinux 0x4586cbe7 __xfrm_decode_session +EXPORT_SYMBOL vmlinux 0x45899fa8 override_creds +EXPORT_SYMBOL vmlinux 0x45a977b6 current_in_userns +EXPORT_SYMBOL vmlinux 0x45a9f9fd neigh_resolve_output +EXPORT_SYMBOL vmlinux 0x45c1c6ee scsi_is_target_device +EXPORT_SYMBOL vmlinux 0x45e4c0c9 netlink_unicast +EXPORT_SYMBOL vmlinux 0x46001d34 percpu_counter_add_batch +EXPORT_SYMBOL vmlinux 0x46045dd7 kstrtou8 +EXPORT_SYMBOL vmlinux 0x460b4f4f xfrm_lookup_with_ifid +EXPORT_SYMBOL vmlinux 0x4612c59d down_trylock +EXPORT_SYMBOL vmlinux 0x461ac773 kstrtol_from_user +EXPORT_SYMBOL vmlinux 0x461d16ca sg_nents +EXPORT_SYMBOL vmlinux 0x461ebfa0 __copy_tofrom_user +EXPORT_SYMBOL vmlinux 0x462a02fe dquot_transfer +EXPORT_SYMBOL vmlinux 0x465d590e xfrm_policy_destroy +EXPORT_SYMBOL vmlinux 0x466c14a7 __delay +EXPORT_SYMBOL vmlinux 0x466f70cf input_setup_polling +EXPORT_SYMBOL vmlinux 0x4674ec42 __pgd_val_bits +EXPORT_SYMBOL vmlinux 0x4678ff1b phy_request_interrupt +EXPORT_SYMBOL vmlinux 0x467df16d netdev_rss_key_fill +EXPORT_SYMBOL vmlinux 0x46826c5b pci_clear_mwi +EXPORT_SYMBOL vmlinux 0x468d6eba dev_getfirstbyhwtype +EXPORT_SYMBOL vmlinux 0x46911fab pci_iomap +EXPORT_SYMBOL vmlinux 0x469a6ec7 tcp_parse_md5sig_option +EXPORT_SYMBOL vmlinux 0x46c39dfc ip6mr_rule_default +EXPORT_SYMBOL vmlinux 0x46c47fb6 __node_distance +EXPORT_SYMBOL vmlinux 0x46d7dda3 filp_close +EXPORT_SYMBOL vmlinux 0x46ea12ef tso_count_descs +EXPORT_SYMBOL vmlinux 0x46f9f2b5 xa_find_after +EXPORT_SYMBOL vmlinux 0x471a76f0 jbd2_journal_blocks_per_page +EXPORT_SYMBOL vmlinux 0x471d07cc kill_fasync +EXPORT_SYMBOL vmlinux 0x471dd77a tcp_seq_stop +EXPORT_SYMBOL vmlinux 0x474b2951 devm_pci_remap_iospace +EXPORT_SYMBOL vmlinux 0x4752a38c ___pskb_trim +EXPORT_SYMBOL vmlinux 0x475a91d4 ata_scsi_cmd_error_handler +EXPORT_SYMBOL vmlinux 0x475a9dbe vme_irq_free +EXPORT_SYMBOL vmlinux 0x47709e42 free_anon_bdev +EXPORT_SYMBOL vmlinux 0x4779610a xfrm6_rcv_tnl +EXPORT_SYMBOL vmlinux 0x47939e0d __tasklet_hi_schedule +EXPORT_SYMBOL vmlinux 0x479c3c86 find_next_zero_bit +EXPORT_SYMBOL vmlinux 0x47a0cdcb mb_cache_entry_find_next +EXPORT_SYMBOL vmlinux 0x47b657fe devm_of_iomap +EXPORT_SYMBOL vmlinux 0x47bc06d5 file_path +EXPORT_SYMBOL vmlinux 0x47bdd3d6 giveup_altivec +EXPORT_SYMBOL vmlinux 0x47c48af3 store_fp_state +EXPORT_SYMBOL vmlinux 0x47c65bfc unregister_inet6addr_validator_notifier +EXPORT_SYMBOL vmlinux 0x47ed3b60 vlan_uses_dev +EXPORT_SYMBOL vmlinux 0x47ed64ab mdio_device_free +EXPORT_SYMBOL vmlinux 0x47f97552 dev_pick_tx_zero +EXPORT_SYMBOL vmlinux 0x4815b58a scsi_unblock_requests +EXPORT_SYMBOL vmlinux 0x48250e2a ping_prot +EXPORT_SYMBOL vmlinux 0x48285709 jbd2_journal_clear_features +EXPORT_SYMBOL vmlinux 0x4829a47e memcpy +EXPORT_SYMBOL vmlinux 0x4829cf6b fscrypt_enqueue_decrypt_work +EXPORT_SYMBOL vmlinux 0x483781ea phy_aneg_done +EXPORT_SYMBOL vmlinux 0x4841bdee strnchr +EXPORT_SYMBOL vmlinux 0x4848cfb1 phy_mipi_dphy_get_default_config +EXPORT_SYMBOL vmlinux 0x484f247c md_check_no_bitmap +EXPORT_SYMBOL vmlinux 0x484f6edf ktime_get_coarse_real_ts64 +EXPORT_SYMBOL vmlinux 0x4852f87d tso_build_hdr +EXPORT_SYMBOL vmlinux 0x4853a34d genphy_check_and_restart_aneg +EXPORT_SYMBOL vmlinux 0x4854d735 __put_page +EXPORT_SYMBOL vmlinux 0x485821bc sock_no_socketpair +EXPORT_SYMBOL vmlinux 0x4859b8bb rtc_year_days +EXPORT_SYMBOL vmlinux 0x486c17db __xa_erase +EXPORT_SYMBOL vmlinux 0x4871d75d clk_hw_register_clkdev +EXPORT_SYMBOL vmlinux 0x487dfdd7 filemap_range_has_page +EXPORT_SYMBOL vmlinux 0x488d5a85 iov_iter_bvec +EXPORT_SYMBOL vmlinux 0x489a1077 vga_client_register +EXPORT_SYMBOL vmlinux 0x489f6e0b rdma_dim +EXPORT_SYMBOL vmlinux 0x489ff1c5 generic_file_read_iter +EXPORT_SYMBOL vmlinux 0x48a81d7e vfio_group_pin_pages +EXPORT_SYMBOL vmlinux 0x48a91171 string_get_size +EXPORT_SYMBOL vmlinux 0x48b99a13 vme_lm_free +EXPORT_SYMBOL vmlinux 0x48c42d2b __nla_put +EXPORT_SYMBOL vmlinux 0x48caa4d4 generic_pipe_buf_get +EXPORT_SYMBOL vmlinux 0x48dc545c posix_acl_chmod +EXPORT_SYMBOL vmlinux 0x48e1e982 __test_set_page_writeback +EXPORT_SYMBOL vmlinux 0x48e457d6 devfreq_register_notifier +EXPORT_SYMBOL vmlinux 0x48eb96f5 vfio_unregister_notifier +EXPORT_SYMBOL vmlinux 0x48fc2d87 vme_slave_request +EXPORT_SYMBOL vmlinux 0x4902a9ef inet6_unregister_protosw +EXPORT_SYMBOL vmlinux 0x49045426 icmp_err_convert +EXPORT_SYMBOL vmlinux 0x4919287f input_grab_device +EXPORT_SYMBOL vmlinux 0x4920cf94 nd_device_unregister +EXPORT_SYMBOL vmlinux 0x492ab731 textsearch_prepare +EXPORT_SYMBOL vmlinux 0x4955f5f0 file_write_and_wait_range +EXPORT_SYMBOL vmlinux 0x495fe4c4 md_wait_for_blocked_rdev +EXPORT_SYMBOL vmlinux 0x49616259 bio_uninit +EXPORT_SYMBOL vmlinux 0x497747a0 tcp_v4_connect +EXPORT_SYMBOL vmlinux 0x498e9128 ZSTD_findDecompressedSize +EXPORT_SYMBOL vmlinux 0x4994725d mroute6_is_socket +EXPORT_SYMBOL vmlinux 0x499bfc6d __per_cpu_offset +EXPORT_SYMBOL vmlinux 0x499f0ecf nd_sb_checksum +EXPORT_SYMBOL vmlinux 0x49b84ea2 kernel_sendmsg +EXPORT_SYMBOL vmlinux 0x49ba8d02 giveup_fpu +EXPORT_SYMBOL vmlinux 0x49d13081 dev_queue_xmit +EXPORT_SYMBOL vmlinux 0x49d19fb8 reuseport_alloc +EXPORT_SYMBOL vmlinux 0x49ea3f70 touch_buffer +EXPORT_SYMBOL vmlinux 0x49ed86a0 ZSTD_endStream +EXPORT_SYMBOL vmlinux 0x4a151f53 input_allocate_device +EXPORT_SYMBOL vmlinux 0x4a2f25d7 vme_new_dma_list +EXPORT_SYMBOL vmlinux 0x4a3465ee write_one_page +EXPORT_SYMBOL vmlinux 0x4a453f53 iowrite32 +EXPORT_SYMBOL vmlinux 0x4a49e4b8 vme_bus_num +EXPORT_SYMBOL vmlinux 0x4a55c8ea ioremap_wc +EXPORT_SYMBOL vmlinux 0x4a56685d get_bitmap_from_slot +EXPORT_SYMBOL vmlinux 0x4a5c717d md_finish_reshape +EXPORT_SYMBOL vmlinux 0x4a7748fc nvm_submit_io +EXPORT_SYMBOL vmlinux 0x4a952eaf __breadahead +EXPORT_SYMBOL vmlinux 0x4a956fcb xfrm_spd_getinfo +EXPORT_SYMBOL vmlinux 0x4a96a8eb xxh32_digest +EXPORT_SYMBOL vmlinux 0x4aa072f6 devm_devfreq_register_opp_notifier +EXPORT_SYMBOL vmlinux 0x4ab8e6e1 qdisc_warn_nonwc +EXPORT_SYMBOL vmlinux 0x4ad2a57a opal_event_request +EXPORT_SYMBOL vmlinux 0x4ad337ce del_random_ready_callback +EXPORT_SYMBOL vmlinux 0x4ad4fb31 udp_lib_rehash +EXPORT_SYMBOL vmlinux 0x4ada11fe sock_set_reuseport +EXPORT_SYMBOL vmlinux 0x4aea463f crc32_le_shift +EXPORT_SYMBOL vmlinux 0x4aeb47a9 tty_port_alloc_xmit_buf +EXPORT_SYMBOL vmlinux 0x4afc714a ip_sock_set_mtu_discover +EXPORT_SYMBOL vmlinux 0x4b085dbf agp3_generic_configure +EXPORT_SYMBOL vmlinux 0x4b117a94 twl6040_reg_read +EXPORT_SYMBOL vmlinux 0x4b193d2e tcf_exts_dump +EXPORT_SYMBOL vmlinux 0x4b272f8a page_readlink +EXPORT_SYMBOL vmlinux 0x4b2c0682 param_ops_string +EXPORT_SYMBOL vmlinux 0x4b41457d fget_raw +EXPORT_SYMBOL vmlinux 0x4b4274f6 kthread_associate_blkcg +EXPORT_SYMBOL vmlinux 0x4b45a20e skb_get_hash_perturb +EXPORT_SYMBOL vmlinux 0x4b51ca91 genphy_loopback +EXPORT_SYMBOL vmlinux 0x4b5fd49e dm_kcopyd_do_callback +EXPORT_SYMBOL vmlinux 0x4b62975f mipi_dsi_host_register +EXPORT_SYMBOL vmlinux 0x4b743ec5 __frontswap_store +EXPORT_SYMBOL vmlinux 0x4b75e6dc tcf_action_update_stats +EXPORT_SYMBOL vmlinux 0x4b82ac12 blk_mq_kick_requeue_list +EXPORT_SYMBOL vmlinux 0x4b8966fa max8998_write_reg +EXPORT_SYMBOL vmlinux 0x4b8d5ce1 pci_disable_link_state_locked +EXPORT_SYMBOL vmlinux 0x4bafa094 generic_file_open +EXPORT_SYMBOL vmlinux 0x4bdfe751 netif_set_xps_queue +EXPORT_SYMBOL vmlinux 0x4bef1c67 empty_name +EXPORT_SYMBOL vmlinux 0x4c01bdb4 dma_alloc_attrs +EXPORT_SYMBOL vmlinux 0x4c11435a _raw_read_lock_bh +EXPORT_SYMBOL vmlinux 0x4c32e99a blk_queue_alignment_offset +EXPORT_SYMBOL vmlinux 0x4c38d4e0 utf8_strncasecmp_folded +EXPORT_SYMBOL vmlinux 0x4c416eb9 LZ4_decompress_fast +EXPORT_SYMBOL vmlinux 0x4c455679 elv_rb_find +EXPORT_SYMBOL vmlinux 0x4c4b50c7 bdev_dax_pgoff +EXPORT_SYMBOL vmlinux 0x4c555a37 xfrm_input_unregister_afinfo +EXPORT_SYMBOL vmlinux 0x4c74436b nf_ct_get_tuple_skb +EXPORT_SYMBOL vmlinux 0x4c775015 inet6_del_protocol +EXPORT_SYMBOL vmlinux 0x4c78a63f __scsi_device_lookup_by_target +EXPORT_SYMBOL vmlinux 0x4c7cd2fe scsi_test_unit_ready +EXPORT_SYMBOL vmlinux 0x4c84678c cpufreq_get_policy +EXPORT_SYMBOL vmlinux 0x4c9ca944 cpumask_next +EXPORT_SYMBOL vmlinux 0x4cb1dc89 n_tty_ioctl_helper +EXPORT_SYMBOL vmlinux 0x4cb30a15 sock_alloc_send_skb +EXPORT_SYMBOL vmlinux 0x4cba441d iwe_stream_add_event +EXPORT_SYMBOL vmlinux 0x4cc37985 alloc_etherdev_mqs +EXPORT_SYMBOL vmlinux 0x4cc6534b cpu_l2_cache_map +EXPORT_SYMBOL vmlinux 0x4ccf1f9a blk_queue_segment_boundary +EXPORT_SYMBOL vmlinux 0x4cd885e7 napi_get_frags +EXPORT_SYMBOL vmlinux 0x4ce19248 vme_bus_error_handler +EXPORT_SYMBOL vmlinux 0x4cedaff1 of_graph_get_endpoint_by_regs +EXPORT_SYMBOL vmlinux 0x4d2e51d2 dev_pick_tx_cpu_id +EXPORT_SYMBOL vmlinux 0x4d3640b5 inet_put_port +EXPORT_SYMBOL vmlinux 0x4d38ce7f dev_get_flags +EXPORT_SYMBOL vmlinux 0x4d3c7f7b pm_vt_switch_unregister +EXPORT_SYMBOL vmlinux 0x4d4a91ad phy_get_eee_err +EXPORT_SYMBOL vmlinux 0x4d5ba891 kern_path +EXPORT_SYMBOL vmlinux 0x4d5e13f3 tcp_mss_to_mtu +EXPORT_SYMBOL vmlinux 0x4d65cbd5 csum_ipv6_magic +EXPORT_SYMBOL vmlinux 0x4d6ae35f rps_sock_flow_table +EXPORT_SYMBOL vmlinux 0x4d8e9751 bdi_register +EXPORT_SYMBOL vmlinux 0x4d9120db pcie_print_link_status +EXPORT_SYMBOL vmlinux 0x4d924f20 memremap +EXPORT_SYMBOL vmlinux 0x4d9b652b rb_erase +EXPORT_SYMBOL vmlinux 0x4dc35e2d tcp_getsockopt +EXPORT_SYMBOL vmlinux 0x4ddf9117 dquot_drop +EXPORT_SYMBOL vmlinux 0x4de0c95f deactivate_super +EXPORT_SYMBOL vmlinux 0x4de9beac file_ns_capable +EXPORT_SYMBOL vmlinux 0x4df02057 crc32_be +EXPORT_SYMBOL vmlinux 0x4df15a2e skb_free_datagram +EXPORT_SYMBOL vmlinux 0x4df2ea84 gen_estimator_read +EXPORT_SYMBOL vmlinux 0x4e0c5ddc elv_rb_del +EXPORT_SYMBOL vmlinux 0x4e11c879 param_ops_ushort +EXPORT_SYMBOL vmlinux 0x4e1702f3 keyring_clear +EXPORT_SYMBOL vmlinux 0x4e22133b flow_rule_match_enc_ports +EXPORT_SYMBOL vmlinux 0x4e3567f7 match_int +EXPORT_SYMBOL vmlinux 0x4e4b97ae __skb_recv_datagram +EXPORT_SYMBOL vmlinux 0x4e547048 __kmalloc_node_track_caller +EXPORT_SYMBOL vmlinux 0x4e5597c8 ps2_handle_ack +EXPORT_SYMBOL vmlinux 0x4e68e9be rb_next_postorder +EXPORT_SYMBOL vmlinux 0x4e6bef07 mmc_cqe_post_req +EXPORT_SYMBOL vmlinux 0x4e6e8ea7 fg_console +EXPORT_SYMBOL vmlinux 0x4e749978 cont_write_begin +EXPORT_SYMBOL vmlinux 0x4e8eaf83 lock_two_nondirectories +EXPORT_SYMBOL vmlinux 0x4e928363 ip6tun_encaps +EXPORT_SYMBOL vmlinux 0x4e936fbb inet_add_offload +EXPORT_SYMBOL vmlinux 0x4ea42f61 mmc_wait_for_req +EXPORT_SYMBOL vmlinux 0x4ea7d7e9 netdev_class_create_file_ns +EXPORT_SYMBOL vmlinux 0x4eada8f7 security_secid_to_secctx +EXPORT_SYMBOL vmlinux 0x4eb7ae3d hvc_get_chars +EXPORT_SYMBOL vmlinux 0x4ebbbc53 blk_stack_limits +EXPORT_SYMBOL vmlinux 0x4ebe3d69 mipi_dsi_dcs_get_pixel_format +EXPORT_SYMBOL vmlinux 0x4ec54e78 bitmap_to_arr32 +EXPORT_SYMBOL vmlinux 0x4eea7d04 simple_write_begin +EXPORT_SYMBOL vmlinux 0x4eefbbf5 __sock_queue_rcv_skb +EXPORT_SYMBOL vmlinux 0x4ef740aa inet_stream_ops +EXPORT_SYMBOL vmlinux 0x4ef96045 nla_put +EXPORT_SYMBOL vmlinux 0x4efabf22 register_key_type +EXPORT_SYMBOL vmlinux 0x4f074253 xfrm_state_delete_tunnel +EXPORT_SYMBOL vmlinux 0x4f188419 __dev_remove_pack +EXPORT_SYMBOL vmlinux 0x4f1cd128 security_tun_dev_create +EXPORT_SYMBOL vmlinux 0x4f2250ba rtc_tm_to_time64 +EXPORT_SYMBOL vmlinux 0x4f3dc3a9 freeze_super +EXPORT_SYMBOL vmlinux 0x4f474e97 dma_set_coherent_mask +EXPORT_SYMBOL vmlinux 0x4f4d78c5 LZ4_compress_default +EXPORT_SYMBOL vmlinux 0x4f51d815 netpoll_cleanup +EXPORT_SYMBOL vmlinux 0x4f586bfe dump_page +EXPORT_SYMBOL vmlinux 0x4f91c0b2 pnv_cxl_release_hwirq_ranges +EXPORT_SYMBOL vmlinux 0x4f92d50f mdiobus_unregister_device +EXPORT_SYMBOL vmlinux 0x4f9b3168 netpoll_send_skb +EXPORT_SYMBOL vmlinux 0x4fa65563 gen_pool_destroy +EXPORT_SYMBOL vmlinux 0x4fba5666 dev_pm_opp_unregister_notifier +EXPORT_SYMBOL vmlinux 0x4fc08c63 cdrom_mode_sense +EXPORT_SYMBOL vmlinux 0x4fc97115 fsl_lbc_ctrl_dev +EXPORT_SYMBOL vmlinux 0x4fdb02ef neigh_xmit +EXPORT_SYMBOL vmlinux 0x4fdee897 i8042_command +EXPORT_SYMBOL vmlinux 0x4fe139f2 scsi_scan_host +EXPORT_SYMBOL vmlinux 0x4ff1555a d_delete +EXPORT_SYMBOL vmlinux 0x50085cc5 md_flush_request +EXPORT_SYMBOL vmlinux 0x50097088 security_tun_dev_free_security +EXPORT_SYMBOL vmlinux 0x5009afae __xfrm_route_forward +EXPORT_SYMBOL vmlinux 0x5009c71d glob_match +EXPORT_SYMBOL vmlinux 0x5012b0c9 compat_sock_common_getsockopt +EXPORT_SYMBOL vmlinux 0x501f3398 skb_copy_datagram_from_iter +EXPORT_SYMBOL vmlinux 0x502b5af2 neigh_direct_output +EXPORT_SYMBOL vmlinux 0x503bb2f3 __generic_file_fsync +EXPORT_SYMBOL vmlinux 0x503ec202 t10_pi_type1_crc +EXPORT_SYMBOL vmlinux 0x50624917 sha1_init +EXPORT_SYMBOL vmlinux 0x506adf7d fs_param_is_blockdev +EXPORT_SYMBOL vmlinux 0x506dff1a __genradix_free +EXPORT_SYMBOL vmlinux 0x50741e5e ps2_cmd_aborted +EXPORT_SYMBOL vmlinux 0x5079c9d7 __pte_index_size +EXPORT_SYMBOL vmlinux 0x5081dc96 proc_create_seq_private +EXPORT_SYMBOL vmlinux 0x50a4698c fb_videomode_to_modelist +EXPORT_SYMBOL vmlinux 0x50acdc04 phy_attached_print +EXPORT_SYMBOL vmlinux 0x50b6c7d4 rtnl_unicast +EXPORT_SYMBOL vmlinux 0x50b73ce2 rfkill_find_type +EXPORT_SYMBOL vmlinux 0x50ba804e get_task_exe_file +EXPORT_SYMBOL vmlinux 0x50be748d security_ib_free_security +EXPORT_SYMBOL vmlinux 0x50cdc5d7 blk_mq_end_request +EXPORT_SYMBOL vmlinux 0x50d400e6 scsi_alloc_sgtables +EXPORT_SYMBOL vmlinux 0x50e3f7a4 phy_start_aneg +EXPORT_SYMBOL vmlinux 0x50ee776d vlan_vids_del_by_dev +EXPORT_SYMBOL vmlinux 0x50f91491 __genradix_ptr +EXPORT_SYMBOL vmlinux 0x5115b554 neigh_seq_start +EXPORT_SYMBOL vmlinux 0x511cb2ad nf_unregister_net_hooks +EXPORT_SYMBOL vmlinux 0x51365fd5 udp_gro_complete +EXPORT_SYMBOL vmlinux 0x5152b518 blk_integrity_merge_rq +EXPORT_SYMBOL vmlinux 0x51546d70 fbcon_rotate_ccw +EXPORT_SYMBOL vmlinux 0x5158388d alloc_buffer_head +EXPORT_SYMBOL vmlinux 0x51641162 opal_unlock_from_suspend +EXPORT_SYMBOL vmlinux 0x5165f599 pci_irq_vector +EXPORT_SYMBOL vmlinux 0x516ba41b msi_desc_to_pci_dev +EXPORT_SYMBOL vmlinux 0x517dd473 key_link +EXPORT_SYMBOL vmlinux 0x517de507 __skb_checksum +EXPORT_SYMBOL vmlinux 0x519b1a0b blk_queue_physical_block_size +EXPORT_SYMBOL vmlinux 0x51a8080d remove_arg_zero +EXPORT_SYMBOL vmlinux 0x51b146fe task_work_add +EXPORT_SYMBOL vmlinux 0x51bc2874 skb_recv_datagram +EXPORT_SYMBOL vmlinux 0x51c7c6c7 devfreq_remove_device +EXPORT_SYMBOL vmlinux 0x51cbfe96 vfs_get_super +EXPORT_SYMBOL vmlinux 0x51dc6181 pci_bus_write_config_byte +EXPORT_SYMBOL vmlinux 0x51e40daa generic_block_fiemap +EXPORT_SYMBOL vmlinux 0x52230c54 security_unix_may_send +EXPORT_SYMBOL vmlinux 0x5242a6a0 ip_fraglist_init +EXPORT_SYMBOL vmlinux 0x5250b987 pci_dev_driver +EXPORT_SYMBOL vmlinux 0x526eef2c hdmi_vendor_infoframe_pack +EXPORT_SYMBOL vmlinux 0x52735e53 cdrom_check_events +EXPORT_SYMBOL vmlinux 0x52844e20 dev_load +EXPORT_SYMBOL vmlinux 0x52983a4f vme_master_write +EXPORT_SYMBOL vmlinux 0x529c738d inet_csk_clear_xmit_timers +EXPORT_SYMBOL vmlinux 0x52a0920f pmem_should_map_pages +EXPORT_SYMBOL vmlinux 0x52a3cf49 phy_set_max_speed +EXPORT_SYMBOL vmlinux 0x52ae0094 tcp_sendpage +EXPORT_SYMBOL vmlinux 0x52c6460b mmc_can_gpio_cd +EXPORT_SYMBOL vmlinux 0x52c77d91 skb_push +EXPORT_SYMBOL vmlinux 0x52d717da xz_dec_init +EXPORT_SYMBOL vmlinux 0x52e7e82f scsi_remove_host +EXPORT_SYMBOL vmlinux 0x52ecbc75 crc_ccitt +EXPORT_SYMBOL vmlinux 0x52fa8f3f finalize_exec +EXPORT_SYMBOL vmlinux 0x53085627 ps2_begin_command +EXPORT_SYMBOL vmlinux 0x5308e350 __vmalloc_start +EXPORT_SYMBOL vmlinux 0x530b1e98 pm_suspend +EXPORT_SYMBOL vmlinux 0x532ff7c2 devm_devfreq_unregister_opp_notifier +EXPORT_SYMBOL vmlinux 0x533206b5 sort_r +EXPORT_SYMBOL vmlinux 0x533c05d3 devm_release_resource +EXPORT_SYMBOL vmlinux 0x53864c5e napi_gro_flush +EXPORT_SYMBOL vmlinux 0x53a48751 blk_rq_map_integrity_sg +EXPORT_SYMBOL vmlinux 0x53acb1e3 fbcon_set_tileops +EXPORT_SYMBOL vmlinux 0x53cca19c __sk_backlog_rcv +EXPORT_SYMBOL vmlinux 0x53f8f8b9 bd_start_claiming +EXPORT_SYMBOL vmlinux 0x53fa36d1 ZSTD_decompressBlock +EXPORT_SYMBOL vmlinux 0x540d7d64 find_vma +EXPORT_SYMBOL vmlinux 0x5412c7c7 up +EXPORT_SYMBOL vmlinux 0x54245b39 kstrtoull_from_user +EXPORT_SYMBOL vmlinux 0x54389eb7 devfreq_recommended_opp +EXPORT_SYMBOL vmlinux 0x543ef284 seq_hlist_start +EXPORT_SYMBOL vmlinux 0x546c909c mdiobus_unregister +EXPORT_SYMBOL vmlinux 0x547a05df __nla_put_64bit +EXPORT_SYMBOL vmlinux 0x549e6531 tcp_v4_send_check +EXPORT_SYMBOL vmlinux 0x54a0ed34 init_on_alloc +EXPORT_SYMBOL vmlinux 0x54a2cea7 register_nexthop_notifier +EXPORT_SYMBOL vmlinux 0x54a9db5f _kstrtoul +EXPORT_SYMBOL vmlinux 0x54aa1daa bprm_change_interp +EXPORT_SYMBOL vmlinux 0x54ca10d1 kernel_recvmsg +EXPORT_SYMBOL vmlinux 0x54d76408 pps_event +EXPORT_SYMBOL vmlinux 0x54e3d5fd __pmd_frag_nr +EXPORT_SYMBOL vmlinux 0x54e6fcdd net_enable_timestamp +EXPORT_SYMBOL vmlinux 0x54f3af49 phy_start_cable_test_tdr +EXPORT_SYMBOL vmlinux 0x54fdd030 inet6_register_protosw +EXPORT_SYMBOL vmlinux 0x5506b8f7 netlbl_bitmap_setbit +EXPORT_SYMBOL vmlinux 0x5517c099 eth_header_cache_update +EXPORT_SYMBOL vmlinux 0x551bd071 __rb_erase_color +EXPORT_SYMBOL vmlinux 0x55258365 tc_setup_cb_reoffload +EXPORT_SYMBOL vmlinux 0x5526e602 softnet_data +EXPORT_SYMBOL vmlinux 0x554abbdc key_reject_and_link +EXPORT_SYMBOL vmlinux 0x554ae3a4 irq_poll_sched +EXPORT_SYMBOL vmlinux 0x554c9ab1 fscrypt_decrypt_pagecache_blocks +EXPORT_SYMBOL vmlinux 0x55686530 __arch_clear_user +EXPORT_SYMBOL vmlinux 0x556b5d62 __kfifo_dma_in_prepare_r +EXPORT_SYMBOL vmlinux 0x5570c5e3 sget +EXPORT_SYMBOL vmlinux 0x558b281d aes_expandkey +EXPORT_SYMBOL vmlinux 0x5590674f cfb_fillrect +EXPORT_SYMBOL vmlinux 0x559ab72f of_root +EXPORT_SYMBOL vmlinux 0x559d07b9 nvm_unregister +EXPORT_SYMBOL vmlinux 0x55b6fdd3 proc_mkdir +EXPORT_SYMBOL vmlinux 0x55c5aa5d d_invalidate +EXPORT_SYMBOL vmlinux 0x55c6de7f proc_create_data +EXPORT_SYMBOL vmlinux 0x55de532f sock_bindtoindex +EXPORT_SYMBOL vmlinux 0x55e31703 ethtool_convert_link_mode_to_legacy_u32 +EXPORT_SYMBOL vmlinux 0x55e4aa08 lookup_bdev +EXPORT_SYMBOL vmlinux 0x55e5ee64 radix_tree_delete_item +EXPORT_SYMBOL vmlinux 0x55f35fc8 of_find_backlight_by_node +EXPORT_SYMBOL vmlinux 0x55f87feb ppp_input_error +EXPORT_SYMBOL vmlinux 0x560baa26 netdev_master_upper_dev_get_rcu +EXPORT_SYMBOL vmlinux 0x560cc472 input_set_min_poll_interval +EXPORT_SYMBOL vmlinux 0x5622a122 ipv6_dev_mc_dec +EXPORT_SYMBOL vmlinux 0x562e9776 fsl_lbc_find +EXPORT_SYMBOL vmlinux 0x5635a60a vmalloc_user +EXPORT_SYMBOL vmlinux 0x56466e42 ZSTD_CStreamInSize +EXPORT_SYMBOL vmlinux 0x56470118 __warn_printk +EXPORT_SYMBOL vmlinux 0x5651b2d0 tty_port_tty_get +EXPORT_SYMBOL vmlinux 0x565af885 pci_get_class +EXPORT_SYMBOL vmlinux 0x565b5324 blk_mq_init_queue +EXPORT_SYMBOL vmlinux 0x565c2c94 vfs_ioctl +EXPORT_SYMBOL vmlinux 0x565f80ec md_bitmap_close_sync +EXPORT_SYMBOL vmlinux 0x56643abc rproc_elf_get_boot_addr +EXPORT_SYMBOL vmlinux 0x5665fe4c neigh_sysctl_unregister +EXPORT_SYMBOL vmlinux 0x56802ae8 rps_cpu_mask +EXPORT_SYMBOL vmlinux 0x568d732e devm_of_find_backlight +EXPORT_SYMBOL vmlinux 0x56a32296 pci_alloc_irq_vectors_affinity +EXPORT_SYMBOL vmlinux 0x56aa7c6f iov_iter_pipe +EXPORT_SYMBOL vmlinux 0x56ac2a7c _atomic_dec_and_lock_irqsave +EXPORT_SYMBOL vmlinux 0x56c2b95b rtas_progress +EXPORT_SYMBOL vmlinux 0x56c8799d scsi_kunmap_atomic_sg +EXPORT_SYMBOL vmlinux 0x56c8be38 tcf_idr_create +EXPORT_SYMBOL vmlinux 0x56f30d80 __alloc_disk_node +EXPORT_SYMBOL vmlinux 0x56f6c7de lockref_get_not_zero +EXPORT_SYMBOL vmlinux 0x56fad7bd should_remove_suid +EXPORT_SYMBOL vmlinux 0x57066053 inet6_add_protocol +EXPORT_SYMBOL vmlinux 0x572ae748 dma_fence_chain_ops +EXPORT_SYMBOL vmlinux 0x574c2e74 bitmap_release_region +EXPORT_SYMBOL vmlinux 0x57517630 dst_cow_metrics_generic +EXPORT_SYMBOL vmlinux 0x57518f3a is_bad_inode +EXPORT_SYMBOL vmlinux 0x5754a545 __tracepoint_kfree +EXPORT_SYMBOL vmlinux 0x5755873f generic_iommu_put_resv_regions +EXPORT_SYMBOL vmlinux 0x57575f08 dmaengine_put +EXPORT_SYMBOL vmlinux 0x575eb919 gnet_stats_copy_rate_est +EXPORT_SYMBOL vmlinux 0x576029c3 migrate_vma_finalize +EXPORT_SYMBOL vmlinux 0x5763f4c3 tcp_conn_request +EXPORT_SYMBOL vmlinux 0x57674fd7 __sw_hweight16 +EXPORT_SYMBOL vmlinux 0x576e11a5 fscrypt_free_bounce_page +EXPORT_SYMBOL vmlinux 0x5775955a generic_block_bmap +EXPORT_SYMBOL vmlinux 0x57769dcb nf_setsockopt +EXPORT_SYMBOL vmlinux 0x577c2bc5 tty_write_room +EXPORT_SYMBOL vmlinux 0x577d2300 md_bitmap_update_sb +EXPORT_SYMBOL vmlinux 0x578a1876 tun_xdp_to_ptr +EXPORT_SYMBOL vmlinux 0x578a408b ZSTD_initDCtx +EXPORT_SYMBOL vmlinux 0x5792f848 strlcpy +EXPORT_SYMBOL vmlinux 0x57b445e2 bio_copy_data +EXPORT_SYMBOL vmlinux 0x57c922b7 d_move +EXPORT_SYMBOL vmlinux 0x57c9f1fd ip_sock_set_freebind +EXPORT_SYMBOL vmlinux 0x57ca893d __skb_vlan_pop +EXPORT_SYMBOL vmlinux 0x57eec13a config_item_set_name +EXPORT_SYMBOL vmlinux 0x57f38cdc qe_get_firmware_info +EXPORT_SYMBOL vmlinux 0x581108ac kthread_create_worker_on_cpu +EXPORT_SYMBOL vmlinux 0x5814ac4f __page_frag_cache_drain +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 0x583f99ed blk_rq_init +EXPORT_SYMBOL vmlinux 0x5857b225 ioread16_rep +EXPORT_SYMBOL vmlinux 0x58689a76 pcie_set_readrq +EXPORT_SYMBOL vmlinux 0x586a1d32 tcf_get_next_proto +EXPORT_SYMBOL vmlinux 0x587b892e qe_get_num_of_risc +EXPORT_SYMBOL vmlinux 0x58a99a8f to_ndd +EXPORT_SYMBOL vmlinux 0x58acf24b mdiobus_register_board_info +EXPORT_SYMBOL vmlinux 0x58adb05c get_vaddr_frames +EXPORT_SYMBOL vmlinux 0x58b4645c dev_close_many +EXPORT_SYMBOL vmlinux 0x58b73bc7 match_wildcard +EXPORT_SYMBOL vmlinux 0x58d11396 find_inode_nowait +EXPORT_SYMBOL vmlinux 0x58e1de0d padata_free +EXPORT_SYMBOL vmlinux 0x58e3306d bit_wait_io +EXPORT_SYMBOL vmlinux 0x58e690da call_usermodehelper_setup +EXPORT_SYMBOL vmlinux 0x59017cab xsk_set_rx_need_wakeup +EXPORT_SYMBOL vmlinux 0x5907b9b5 nla_append +EXPORT_SYMBOL vmlinux 0x5912bb06 fs_context_for_submount +EXPORT_SYMBOL vmlinux 0x591352a7 framebuffer_alloc +EXPORT_SYMBOL vmlinux 0x5915dbe0 netdev_unbind_sb_channel +EXPORT_SYMBOL vmlinux 0x591ef143 account_page_redirty +EXPORT_SYMBOL vmlinux 0x5929e3a0 tcf_em_tree_validate +EXPORT_SYMBOL vmlinux 0x593faa09 set_device_ro +EXPORT_SYMBOL vmlinux 0x594bf15b ioport_map +EXPORT_SYMBOL vmlinux 0x594d6fa6 ppp_unit_number +EXPORT_SYMBOL vmlinux 0x594f1ae2 nvm_unregister_tgt_type +EXPORT_SYMBOL vmlinux 0x594f9100 rproc_del +EXPORT_SYMBOL vmlinux 0x59588850 vsscanf +EXPORT_SYMBOL vmlinux 0x595a1198 cdev_add +EXPORT_SYMBOL vmlinux 0x595d0946 empty_zero_page +EXPORT_SYMBOL vmlinux 0x59849b65 twl6040_get_vibralr_status +EXPORT_SYMBOL vmlinux 0x5988f4f3 generic_key_instantiate +EXPORT_SYMBOL vmlinux 0x59894fa7 down_write_trylock +EXPORT_SYMBOL vmlinux 0x59986d14 framebuffer_release +EXPORT_SYMBOL vmlinux 0x599b4888 qe_setbrg +EXPORT_SYMBOL vmlinux 0x599fb41c kvmalloc_node +EXPORT_SYMBOL vmlinux 0x59a2f0ee packing +EXPORT_SYMBOL vmlinux 0x59a8c8f4 xfrm_alloc_spi +EXPORT_SYMBOL vmlinux 0x59b3f0ce mutex_trylock +EXPORT_SYMBOL vmlinux 0x59b4ac3e tcp_memory_allocated +EXPORT_SYMBOL vmlinux 0x59bb1524 nd_dax_probe +EXPORT_SYMBOL vmlinux 0x59bc59ac napi_consume_skb +EXPORT_SYMBOL vmlinux 0x59c79741 dst_dev_put +EXPORT_SYMBOL vmlinux 0x59cc6d08 mipi_dsi_dcs_nop +EXPORT_SYMBOL vmlinux 0x59ea2be1 skb_orphan_partial +EXPORT_SYMBOL vmlinux 0x5a025f7b arch_local_irq_restore +EXPORT_SYMBOL vmlinux 0x5a032030 gtm_put_timer16 +EXPORT_SYMBOL vmlinux 0x5a088923 up_write +EXPORT_SYMBOL vmlinux 0x5a0b73d0 zlib_deflateInit2 +EXPORT_SYMBOL vmlinux 0x5a382433 param_set_byte +EXPORT_SYMBOL vmlinux 0x5a44f8cb __crypto_memneq +EXPORT_SYMBOL vmlinux 0x5a49ccb6 i2c_put_adapter +EXPORT_SYMBOL vmlinux 0x5a4d313e gf128mul_4k_lle +EXPORT_SYMBOL vmlinux 0x5a85cec6 mipi_dsi_generic_write +EXPORT_SYMBOL vmlinux 0x5a8ae15a ZSTD_initDDict +EXPORT_SYMBOL vmlinux 0x5a921311 strncmp +EXPORT_SYMBOL vmlinux 0x5a9503b1 compat_import_iovec +EXPORT_SYMBOL vmlinux 0x5a9598d8 __ip_queue_xmit +EXPORT_SYMBOL vmlinux 0x5a9b8c4c __netlink_dump_start +EXPORT_SYMBOL vmlinux 0x5a9f1d63 memmove +EXPORT_SYMBOL vmlinux 0x5aa75a73 __hw_addr_ref_sync_dev +EXPORT_SYMBOL vmlinux 0x5acddfe0 clear_nlink +EXPORT_SYMBOL vmlinux 0x5ade21fa dst_release_immediate +EXPORT_SYMBOL vmlinux 0x5b002914 blkdev_issue_write_same +EXPORT_SYMBOL vmlinux 0x5b03d7bd rproc_coredump_add_custom_segment +EXPORT_SYMBOL vmlinux 0x5b2659b3 input_mt_drop_unused +EXPORT_SYMBOL vmlinux 0x5b36d5dd utf8agemax +EXPORT_SYMBOL vmlinux 0x5b43f1f1 rtas_service_present +EXPORT_SYMBOL vmlinux 0x5b4690d4 __inet6_lookup_established +EXPORT_SYMBOL vmlinux 0x5b56860c vm_munmap +EXPORT_SYMBOL vmlinux 0x5b5becf8 pci_ep_cfs_add_epc_group +EXPORT_SYMBOL vmlinux 0x5b760467 proc_do_large_bitmap +EXPORT_SYMBOL vmlinux 0x5b7fa48e truncate_setsize +EXPORT_SYMBOL vmlinux 0x5b87f60a ethtool_rx_flow_rule_destroy +EXPORT_SYMBOL vmlinux 0x5b9218b8 mipi_dsi_dcs_set_page_address +EXPORT_SYMBOL vmlinux 0x5b9828c5 dma_spin_lock +EXPORT_SYMBOL vmlinux 0x5b9bcff6 nf_log_set +EXPORT_SYMBOL vmlinux 0x5bb89fbf __nd_driver_register +EXPORT_SYMBOL vmlinux 0x5bc92e85 LZ4_compress_destSize +EXPORT_SYMBOL vmlinux 0x5bd4ff88 flow_action_cookie_create +EXPORT_SYMBOL vmlinux 0x5be63c5b crc32c_csum_stub +EXPORT_SYMBOL vmlinux 0x5c00d810 ZSTD_CDictWorkspaceBound +EXPORT_SYMBOL vmlinux 0x5c065ae2 nd_device_register +EXPORT_SYMBOL vmlinux 0x5c18d8c2 gnet_stats_copy_basic +EXPORT_SYMBOL vmlinux 0x5c227d92 tty_set_operations +EXPORT_SYMBOL vmlinux 0x5c29b698 flow_rule_match_enc_ip +EXPORT_SYMBOL vmlinux 0x5c2d943c configfs_depend_item_unlocked +EXPORT_SYMBOL vmlinux 0x5c37f319 _raw_spin_unlock_irqrestore +EXPORT_SYMBOL vmlinux 0x5c3c1770 tcp_req_err +EXPORT_SYMBOL vmlinux 0x5c3ddaf7 init_task +EXPORT_SYMBOL vmlinux 0x5c4265f6 blk_unregister_region +EXPORT_SYMBOL vmlinux 0x5c462d5e agp_generic_remove_memory +EXPORT_SYMBOL vmlinux 0x5c470ca4 inet_bind +EXPORT_SYMBOL vmlinux 0x5c4810ce nobh_write_begin +EXPORT_SYMBOL vmlinux 0x5c4d3c6c request_firmware +EXPORT_SYMBOL vmlinux 0x5c653721 ipv4_specific +EXPORT_SYMBOL vmlinux 0x5c93048e compat_tcp_getsockopt +EXPORT_SYMBOL vmlinux 0x5c9ce062 iterate_supers_type +EXPORT_SYMBOL vmlinux 0x5cbd6adb vfs_dedupe_file_range_one +EXPORT_SYMBOL vmlinux 0x5cc6305a security_binder_set_context_mgr +EXPORT_SYMBOL vmlinux 0x5cd1db21 invalidate_mapping_pages +EXPORT_SYMBOL vmlinux 0x5ce162c0 register_filesystem +EXPORT_SYMBOL vmlinux 0x5ce9ab90 blk_mq_stop_hw_queue +EXPORT_SYMBOL vmlinux 0x5ceb752d nvm_dev_dma_free +EXPORT_SYMBOL vmlinux 0x5cf2162b ptp_cancel_worker_sync +EXPORT_SYMBOL vmlinux 0x5cf53ce2 input_free_minor +EXPORT_SYMBOL vmlinux 0x5cf58f72 ipv6_sock_mc_join +EXPORT_SYMBOL vmlinux 0x5cfb4c45 bio_copy_data_iter +EXPORT_SYMBOL vmlinux 0x5d0c7307 seq_put_decimal_ull +EXPORT_SYMBOL vmlinux 0x5d2636be __invalidate_device +EXPORT_SYMBOL vmlinux 0x5d27d802 textsearch_destroy +EXPORT_SYMBOL vmlinux 0x5d49aabc init_wait_var_entry +EXPORT_SYMBOL vmlinux 0x5d78a8f6 vm_node_stat +EXPORT_SYMBOL vmlinux 0x5d830297 get_random_bytes_arch +EXPORT_SYMBOL vmlinux 0x5d8dfc41 __blkdev_issue_discard +EXPORT_SYMBOL vmlinux 0x5da3a214 d_set_fallthru +EXPORT_SYMBOL vmlinux 0x5dbaeb9d jbd2__journal_start +EXPORT_SYMBOL vmlinux 0x5dd78780 genphy_config_eee_advert +EXPORT_SYMBOL vmlinux 0x5df49be6 radix_tree_gang_lookup +EXPORT_SYMBOL vmlinux 0x5dffb495 ZSTD_decompress_usingDDict +EXPORT_SYMBOL vmlinux 0x5e0ccb9f sha1_transform +EXPORT_SYMBOL vmlinux 0x5e1cb16a put_watch_queue +EXPORT_SYMBOL vmlinux 0x5e1dd6b7 register_netdevice_notifier_net +EXPORT_SYMBOL vmlinux 0x5e289a35 backlight_device_register +EXPORT_SYMBOL vmlinux 0x5e2adad7 netlink_set_err +EXPORT_SYMBOL vmlinux 0x5e333bc4 register_cdrom +EXPORT_SYMBOL vmlinux 0x5e373fb4 gf128mul_64k_bbe +EXPORT_SYMBOL vmlinux 0x5e433882 uart_resume_port +EXPORT_SYMBOL vmlinux 0x5e66e35e phy_register_fixup_for_id +EXPORT_SYMBOL vmlinux 0x5e76d858 sock_wmalloc +EXPORT_SYMBOL vmlinux 0x5e8c4912 stop_tty +EXPORT_SYMBOL vmlinux 0x5e95b1cd current_umask +EXPORT_SYMBOL vmlinux 0x5eaa083f gnet_stats_start_copy +EXPORT_SYMBOL vmlinux 0x5eb24829 dm_shift_arg +EXPORT_SYMBOL vmlinux 0x5ec4aee6 put_sg_io_hdr +EXPORT_SYMBOL vmlinux 0x5ed040b0 pm_set_vt_switch +EXPORT_SYMBOL vmlinux 0x5ed040cd mipi_dsi_dcs_set_tear_scanline +EXPORT_SYMBOL vmlinux 0x5ed2969e string_escape_mem_ascii +EXPORT_SYMBOL vmlinux 0x5ed90adc int_to_scsilun +EXPORT_SYMBOL vmlinux 0x5ed97273 user_path_create +EXPORT_SYMBOL vmlinux 0x5eddb914 lockref_put_return +EXPORT_SYMBOL vmlinux 0x5ee16721 flow_get_u32_src +EXPORT_SYMBOL vmlinux 0x5ee3cc83 dma_direct_unmap_sg +EXPORT_SYMBOL vmlinux 0x5eff99a8 pci_request_selected_regions_exclusive +EXPORT_SYMBOL vmlinux 0x5f014700 agp_enable +EXPORT_SYMBOL vmlinux 0x5f027688 blk_integrity_compare +EXPORT_SYMBOL vmlinux 0x5f02df26 __tcp_md5_do_lookup +EXPORT_SYMBOL vmlinux 0x5f098b2a in6addr_interfacelocal_allrouters +EXPORT_SYMBOL vmlinux 0x5f1c6712 clear_wb_congested +EXPORT_SYMBOL vmlinux 0x5f250a79 netif_rx_ni +EXPORT_SYMBOL vmlinux 0x5f498d29 _dev_info +EXPORT_SYMBOL vmlinux 0x5f5668e3 dump_align +EXPORT_SYMBOL vmlinux 0x5f5acdd4 crypto_sha512_update +EXPORT_SYMBOL vmlinux 0x5f5b4fcb mdio_device_remove +EXPORT_SYMBOL vmlinux 0x5f6b889c rproc_va_to_pa +EXPORT_SYMBOL vmlinux 0x5f70a557 register_shrinker +EXPORT_SYMBOL vmlinux 0x5f7b68e6 bmap +EXPORT_SYMBOL vmlinux 0x5f7d0abb md_register_thread +EXPORT_SYMBOL vmlinux 0x5f8a2728 isa_io_base +EXPORT_SYMBOL vmlinux 0x5fa848b8 poll_freewait +EXPORT_SYMBOL vmlinux 0x5fa961aa ptp_find_pin +EXPORT_SYMBOL vmlinux 0x5fb516f8 xa_find +EXPORT_SYMBOL vmlinux 0x5fb951bf ipv6_push_frag_opts +EXPORT_SYMBOL vmlinux 0x5fbed86e xfrm_find_acq +EXPORT_SYMBOL vmlinux 0x5fc65fda forget_all_cached_acls +EXPORT_SYMBOL vmlinux 0x5fc72f0e alloc_pages_exact +EXPORT_SYMBOL vmlinux 0x5fcda7bd ptp_clock_unregister +EXPORT_SYMBOL vmlinux 0x5fd93472 netdev_upper_get_next_dev_rcu +EXPORT_SYMBOL vmlinux 0x6004858d LZ4_compress_fast +EXPORT_SYMBOL vmlinux 0x6005c351 zpool_has_pool +EXPORT_SYMBOL vmlinux 0x600683d3 do_unblank_screen +EXPORT_SYMBOL vmlinux 0x6016531a gen_pool_set_algo +EXPORT_SYMBOL vmlinux 0x6018c9ea __nla_reserve +EXPORT_SYMBOL vmlinux 0x601f665f dm_io_client_create +EXPORT_SYMBOL vmlinux 0x60324ccc security_inode_notifysecctx +EXPORT_SYMBOL vmlinux 0x60351b98 __nla_validate +EXPORT_SYMBOL vmlinux 0x60352082 register_inet6addr_notifier +EXPORT_SYMBOL vmlinux 0x603d5f3e request_firmware_into_buf +EXPORT_SYMBOL vmlinux 0x6050bd22 mipi_dsi_dcs_set_pixel_format +EXPORT_SYMBOL vmlinux 0x605790dc fiemap_fill_next_extent +EXPORT_SYMBOL vmlinux 0x605c415c bio_free_pages +EXPORT_SYMBOL vmlinux 0x60626a96 kset_register +EXPORT_SYMBOL vmlinux 0x6075d025 udp_seq_ops +EXPORT_SYMBOL vmlinux 0x6091b333 unregister_chrdev_region +EXPORT_SYMBOL vmlinux 0x609b2853 hdmi_infoframe_pack +EXPORT_SYMBOL vmlinux 0x609bcd98 in6_pton +EXPORT_SYMBOL vmlinux 0x609eb2c0 generic_file_direct_write +EXPORT_SYMBOL vmlinux 0x609f1c7e synchronize_net +EXPORT_SYMBOL vmlinux 0x60cd0ab7 ip_setsockopt +EXPORT_SYMBOL vmlinux 0x60cec2a4 simple_open +EXPORT_SYMBOL vmlinux 0x60d8ab30 vme_lm_get +EXPORT_SYMBOL vmlinux 0x60fadfff phy_attach +EXPORT_SYMBOL vmlinux 0x611c8add nd_pfn_probe +EXPORT_SYMBOL vmlinux 0x6121bd54 dql_init +EXPORT_SYMBOL vmlinux 0x6125be99 make_kprojid +EXPORT_SYMBOL vmlinux 0x6128b5fc __printk_ratelimit +EXPORT_SYMBOL vmlinux 0x613ba6b7 vio_unregister_driver +EXPORT_SYMBOL vmlinux 0x615375c2 pm8606_osc_enable +EXPORT_SYMBOL vmlinux 0x61577694 ZSTD_compressEnd +EXPORT_SYMBOL vmlinux 0x615911d7 __bitmap_set +EXPORT_SYMBOL vmlinux 0x6160b320 complete_and_exit +EXPORT_SYMBOL vmlinux 0x6179b973 rproc_elf_sanity_check +EXPORT_SYMBOL vmlinux 0x618911fc numa_node +EXPORT_SYMBOL vmlinux 0x618c797f submit_bio_wait +EXPORT_SYMBOL vmlinux 0x6199fa46 qdisc_watchdog_init +EXPORT_SYMBOL vmlinux 0x619cb7dd simple_read_from_buffer +EXPORT_SYMBOL vmlinux 0x61ad5f6e config_group_init_type_name +EXPORT_SYMBOL vmlinux 0x61ad9487 dquot_disable +EXPORT_SYMBOL vmlinux 0x61b7b126 simple_strtoull +EXPORT_SYMBOL vmlinux 0x61bc505b blk_mq_delay_run_hw_queues +EXPORT_SYMBOL vmlinux 0x61e272c9 sha256_final +EXPORT_SYMBOL vmlinux 0x61ea189b fb_pad_aligned_buffer +EXPORT_SYMBOL vmlinux 0x61efbe87 md_write_start +EXPORT_SYMBOL vmlinux 0x61f82589 pci_bus_size_bridges +EXPORT_SYMBOL vmlinux 0x620129ca blk_queue_max_hw_sectors +EXPORT_SYMBOL vmlinux 0x62067f88 dcb_ieee_getapp_mask +EXPORT_SYMBOL vmlinux 0x6214aef2 cpufreq_unregister_notifier +EXPORT_SYMBOL vmlinux 0x621a4824 i2c_verify_client +EXPORT_SYMBOL vmlinux 0x6228c21f smp_call_function_single +EXPORT_SYMBOL vmlinux 0x6233affd bdev_read_only +EXPORT_SYMBOL vmlinux 0x623d1aab get_mm_exe_file +EXPORT_SYMBOL vmlinux 0x624cf24e flow_rule_match_meta +EXPORT_SYMBOL vmlinux 0x6262ac74 tcf_exts_validate +EXPORT_SYMBOL vmlinux 0x62652225 page_cache_next_miss +EXPORT_SYMBOL vmlinux 0x62737e1d sock_unregister +EXPORT_SYMBOL vmlinux 0x62792022 vfs_ioc_setflags_prepare +EXPORT_SYMBOL vmlinux 0x6280f5d8 radix_tree_tag_clear +EXPORT_SYMBOL vmlinux 0x62849ac7 dev_valid_name +EXPORT_SYMBOL vmlinux 0x629091b0 pci_remove_bus +EXPORT_SYMBOL vmlinux 0x6294019e abx500_event_registers_startup_state_get +EXPORT_SYMBOL vmlinux 0x62ab28c3 agp_create_memory +EXPORT_SYMBOL vmlinux 0x62bad830 iov_iter_discard +EXPORT_SYMBOL vmlinux 0x62bf6edf utf8agemin +EXPORT_SYMBOL vmlinux 0x62cff736 kernel_connect +EXPORT_SYMBOL vmlinux 0x62e65164 nf_ip6_checksum +EXPORT_SYMBOL vmlinux 0x630e4e44 phy_find_first +EXPORT_SYMBOL vmlinux 0x630fbd3c pci_free_host_bridge +EXPORT_SYMBOL vmlinux 0x63187451 pcie_aspm_support_enabled +EXPORT_SYMBOL vmlinux 0x631d06aa cpu_rmap_put +EXPORT_SYMBOL vmlinux 0x6351e974 unregister_shrinker +EXPORT_SYMBOL vmlinux 0x63541632 fbcon_set_rotate +EXPORT_SYMBOL vmlinux 0x635f3023 put_ipc_ns +EXPORT_SYMBOL vmlinux 0x635ff76d LZ4_saveDict +EXPORT_SYMBOL vmlinux 0x636dce68 bdi_alloc +EXPORT_SYMBOL vmlinux 0x636e29cf agp_collect_device_status +EXPORT_SYMBOL vmlinux 0x63732b27 generic_file_llseek_size +EXPORT_SYMBOL vmlinux 0x63a58370 flow_action_cookie_destroy +EXPORT_SYMBOL vmlinux 0x63a7c28c bitmap_find_free_region +EXPORT_SYMBOL vmlinux 0x63bffd8e neigh_proc_dointvec +EXPORT_SYMBOL vmlinux 0x63c4d61f __bitmap_weight +EXPORT_SYMBOL vmlinux 0x63d0c4a2 textsearch_register +EXPORT_SYMBOL vmlinux 0x63d8e39f unlock_buffer +EXPORT_SYMBOL vmlinux 0x63eb9355 panic_blink +EXPORT_SYMBOL vmlinux 0x63f4eeed __nlmsg_put +EXPORT_SYMBOL vmlinux 0x6405dcd3 slhc_toss +EXPORT_SYMBOL vmlinux 0x640ee666 zpool_unregister_driver +EXPORT_SYMBOL vmlinux 0x6411a8c6 in_dev_finish_destroy +EXPORT_SYMBOL vmlinux 0x64127b67 bitmap_find_next_zero_area_off +EXPORT_SYMBOL vmlinux 0x643d0d19 __cancel_dirty_page +EXPORT_SYMBOL vmlinux 0x643d9ba1 groups_free +EXPORT_SYMBOL vmlinux 0x644917e9 __quota_error +EXPORT_SYMBOL vmlinux 0x647256da decrementer_clockevent +EXPORT_SYMBOL vmlinux 0x6472ca42 locks_lock_inode_wait +EXPORT_SYMBOL vmlinux 0x64746e0a skb_queue_tail +EXPORT_SYMBOL vmlinux 0x6481ffe0 hsiphash_1u32 +EXPORT_SYMBOL vmlinux 0x64831cb8 xa_extract +EXPORT_SYMBOL vmlinux 0x64899e28 netpoll_parse_options +EXPORT_SYMBOL vmlinux 0x648eb59d gc_inflight_list +EXPORT_SYMBOL vmlinux 0x64999478 congestion_wait +EXPORT_SYMBOL vmlinux 0x64a9c928 default_blu +EXPORT_SYMBOL vmlinux 0x64bbc288 string_unescape +EXPORT_SYMBOL vmlinux 0x64d23467 refcount_dec_and_mutex_lock +EXPORT_SYMBOL vmlinux 0x64fbcdbe input_reset_device +EXPORT_SYMBOL vmlinux 0x6503c157 ip_cmsg_recv_offset +EXPORT_SYMBOL vmlinux 0x650cb973 of_graph_get_port_parent +EXPORT_SYMBOL vmlinux 0x6513a3fa fb_get_color_depth +EXPORT_SYMBOL vmlinux 0x651627f5 xsk_umem_uses_need_wakeup +EXPORT_SYMBOL vmlinux 0x651a4139 test_taint +EXPORT_SYMBOL vmlinux 0x652032cb mac_pton +EXPORT_SYMBOL vmlinux 0x65264bd6 security_socket_getpeersec_dgram +EXPORT_SYMBOL vmlinux 0x652ce9aa nla_memcmp +EXPORT_SYMBOL vmlinux 0x653866ba find_get_pages_contig +EXPORT_SYMBOL vmlinux 0x653f5829 mmc_register_driver +EXPORT_SYMBOL vmlinux 0x65408378 zlib_inflate_blob +EXPORT_SYMBOL vmlinux 0x65464c16 clkdev_drop +EXPORT_SYMBOL vmlinux 0x655f9ea9 dev_loopback_xmit +EXPORT_SYMBOL vmlinux 0x656c1a0e string_escape_mem +EXPORT_SYMBOL vmlinux 0x656e4a6e snprintf +EXPORT_SYMBOL vmlinux 0x656ec463 of_dev_put +EXPORT_SYMBOL vmlinux 0x657b9994 radix_tree_next_chunk +EXPORT_SYMBOL vmlinux 0x658ce1a8 xxh64_reset +EXPORT_SYMBOL vmlinux 0x659ded26 xfrm_flush_gc +EXPORT_SYMBOL vmlinux 0x65b0a29f sock_set_rcvbuf +EXPORT_SYMBOL vmlinux 0x65bb58a2 _raw_read_trylock +EXPORT_SYMBOL vmlinux 0x65ca2c70 scsi_remove_device +EXPORT_SYMBOL vmlinux 0x65cf8831 ZSTD_decompress_usingDict +EXPORT_SYMBOL vmlinux 0x65d47359 dev_get_port_parent_id +EXPORT_SYMBOL vmlinux 0x65d9e877 cpufreq_register_notifier +EXPORT_SYMBOL vmlinux 0x65dadf95 from_kgid +EXPORT_SYMBOL vmlinux 0x65dccf13 xz_dec_end +EXPORT_SYMBOL vmlinux 0x65e0d6d7 memory_read_from_buffer +EXPORT_SYMBOL vmlinux 0x660010e4 qdisc_offload_dump_helper +EXPORT_SYMBOL vmlinux 0x6618ce63 tcf_action_dump_1 +EXPORT_SYMBOL vmlinux 0x6627e1a3 gnet_stats_finish_copy +EXPORT_SYMBOL vmlinux 0x662a92d2 elv_rb_add +EXPORT_SYMBOL vmlinux 0x6643ab9a rproc_coredump_add_segment +EXPORT_SYMBOL vmlinux 0x666863dc par_io_config_pin +EXPORT_SYMBOL vmlinux 0x6673f96d xxh32_reset +EXPORT_SYMBOL vmlinux 0x66781043 dev_set_mac_address +EXPORT_SYMBOL vmlinux 0x6691c86f seq_read_iter +EXPORT_SYMBOL vmlinux 0x66b4cc41 kmemdup +EXPORT_SYMBOL vmlinux 0x66c637ac inet_addr_type_table +EXPORT_SYMBOL vmlinux 0x66d29e23 nla_put_64bit +EXPORT_SYMBOL vmlinux 0x66d2b1e2 vfs_getattr +EXPORT_SYMBOL vmlinux 0x66d2ebec nla_reserve_64bit +EXPORT_SYMBOL vmlinux 0x66e9fdc0 dma_supported +EXPORT_SYMBOL vmlinux 0x66ef7a72 input_mt_report_pointer_emulation +EXPORT_SYMBOL vmlinux 0x6716072d tcf_idr_search +EXPORT_SYMBOL vmlinux 0x6732b889 pci_request_irq +EXPORT_SYMBOL vmlinux 0x673f815e agp_bridges +EXPORT_SYMBOL vmlinux 0x67412d2f ucc_slow_enable +EXPORT_SYMBOL vmlinux 0x674183f1 netlink_ack +EXPORT_SYMBOL vmlinux 0x6749d53f hdmi_vendor_infoframe_init +EXPORT_SYMBOL vmlinux 0x674de079 scsi_is_host_device +EXPORT_SYMBOL vmlinux 0x677c107a pci_bus_read_config_dword +EXPORT_SYMBOL vmlinux 0x678b96ec dma_pool_alloc +EXPORT_SYMBOL vmlinux 0x678ce5b4 neigh_connected_output +EXPORT_SYMBOL vmlinux 0x67975e3d dump_skip +EXPORT_SYMBOL vmlinux 0x6798d67b csum_and_copy_from_iter +EXPORT_SYMBOL vmlinux 0x67b0ca64 registered_fb +EXPORT_SYMBOL vmlinux 0x67b4d751 vio_register_device_node +EXPORT_SYMBOL vmlinux 0x67b78eb3 seq_hlist_next_rcu +EXPORT_SYMBOL vmlinux 0x67ccf2a1 devm_memremap +EXPORT_SYMBOL vmlinux 0x67e11612 ptp_find_pin_unlocked +EXPORT_SYMBOL vmlinux 0x67f3d52d prepare_to_wait_exclusive +EXPORT_SYMBOL vmlinux 0x67f4562b jbd2_journal_inode_ranged_write +EXPORT_SYMBOL vmlinux 0x67f468e7 bpf_stats_enabled_key +EXPORT_SYMBOL vmlinux 0x67f49f20 netlink_broadcast_filtered +EXPORT_SYMBOL vmlinux 0x67f79b80 vm_iomap_memory +EXPORT_SYMBOL vmlinux 0x67f9f0df d_alloc_parallel +EXPORT_SYMBOL vmlinux 0x67fc472c gen_pool_dma_alloc_align +EXPORT_SYMBOL vmlinux 0x680470b6 dev_mc_add +EXPORT_SYMBOL vmlinux 0x6805b0b3 pci_resize_resource +EXPORT_SYMBOL vmlinux 0x680d22f2 d_alloc_anon +EXPORT_SYMBOL vmlinux 0x681a421c mpage_readahead +EXPORT_SYMBOL vmlinux 0x681d7dda flow_indr_dev_setup_offload +EXPORT_SYMBOL vmlinux 0x68366782 cfb_imageblit +EXPORT_SYMBOL vmlinux 0x683a9560 __gnet_stats_copy_basic +EXPORT_SYMBOL vmlinux 0x683d229b param_ops_short +EXPORT_SYMBOL vmlinux 0x683e7542 alloc_fcdev +EXPORT_SYMBOL vmlinux 0x684320f4 blk_mq_init_allocated_queue +EXPORT_SYMBOL vmlinux 0x684bf856 padata_free_shell +EXPORT_SYMBOL vmlinux 0x685687b0 idr_replace +EXPORT_SYMBOL vmlinux 0x6857ce2b xfrm_state_lookup +EXPORT_SYMBOL vmlinux 0x685e31ca groups_sort +EXPORT_SYMBOL vmlinux 0x68651dec simple_get_link +EXPORT_SYMBOL vmlinux 0x686818bb down_read +EXPORT_SYMBOL vmlinux 0x6872b10c __mdiobus_read +EXPORT_SYMBOL vmlinux 0x687b6a16 kdbgetsymval +EXPORT_SYMBOL vmlinux 0x689f4e90 lock_rename +EXPORT_SYMBOL vmlinux 0x68a90b51 get_default_font +EXPORT_SYMBOL vmlinux 0x68ac750d devm_iounmap +EXPORT_SYMBOL vmlinux 0x68b89b82 get_user_pages +EXPORT_SYMBOL vmlinux 0x68cc8fd2 kern_unmount_array +EXPORT_SYMBOL vmlinux 0x6909440b __pgd_table_size +EXPORT_SYMBOL vmlinux 0x691e6386 skb_abort_seq_read +EXPORT_SYMBOL vmlinux 0x69277927 vif_device_init +EXPORT_SYMBOL vmlinux 0x69493b1a kstrtos16 +EXPORT_SYMBOL vmlinux 0x694d3f85 dma_direct_map_resource +EXPORT_SYMBOL vmlinux 0x69585523 __ksize +EXPORT_SYMBOL vmlinux 0x695a594e handle_edge_irq +EXPORT_SYMBOL vmlinux 0x69668826 netdev_increment_features +EXPORT_SYMBOL vmlinux 0x6971447a rtc_month_days +EXPORT_SYMBOL vmlinux 0x698b7af3 read_cache_pages +EXPORT_SYMBOL vmlinux 0x698b7c1f sock_no_mmap +EXPORT_SYMBOL vmlinux 0x698df264 key_instantiate_and_link +EXPORT_SYMBOL vmlinux 0x69ad2f20 kstrtouint +EXPORT_SYMBOL vmlinux 0x69bb8a67 of_find_i2c_device_by_node +EXPORT_SYMBOL vmlinux 0x69d5bfd1 dma_fence_array_create +EXPORT_SYMBOL vmlinux 0x69d8a649 __tracepoint_spi_transfer_stop +EXPORT_SYMBOL vmlinux 0x69dd3b5b crc32_le +EXPORT_SYMBOL vmlinux 0x69de8757 vme_check_window +EXPORT_SYMBOL vmlinux 0x69f9d0ee dm_kobject_release +EXPORT_SYMBOL vmlinux 0x6a03751f sgl_free_order +EXPORT_SYMBOL vmlinux 0x6a037cf1 mempool_kfree +EXPORT_SYMBOL vmlinux 0x6a071f9c scsi_verify_blk_ioctl +EXPORT_SYMBOL vmlinux 0x6a0dbd95 gro_cells_init +EXPORT_SYMBOL vmlinux 0x6a129206 set_binfmt +EXPORT_SYMBOL vmlinux 0x6a19fb67 netdev_boot_setup_check +EXPORT_SYMBOL vmlinux 0x6a27e1a9 skb_copy_and_hash_datagram_iter +EXPORT_SYMBOL vmlinux 0x6a293c76 security_d_instantiate +EXPORT_SYMBOL vmlinux 0x6a2dd6e2 agp_bridge +EXPORT_SYMBOL vmlinux 0x6a3dd027 vlan_dev_vlan_id +EXPORT_SYMBOL vmlinux 0x6a5cb5ee __get_free_pages +EXPORT_SYMBOL vmlinux 0x6a5ecb18 unregister_module_notifier +EXPORT_SYMBOL vmlinux 0x6a5fa363 sigprocmask +EXPORT_SYMBOL vmlinux 0x6a6b5ba9 mr_table_dump +EXPORT_SYMBOL vmlinux 0x6aa11aa6 sgl_free_n_order +EXPORT_SYMBOL vmlinux 0x6ab487c4 blk_limits_io_opt +EXPORT_SYMBOL vmlinux 0x6abff51f of_graph_parse_endpoint +EXPORT_SYMBOL vmlinux 0x6ac7c74c fc_mount +EXPORT_SYMBOL vmlinux 0x6ade6454 trace_print_array_seq +EXPORT_SYMBOL vmlinux 0x6ae2ae36 mdio_driver_register +EXPORT_SYMBOL vmlinux 0x6ae3158d dcb_setapp +EXPORT_SYMBOL vmlinux 0x6aeefac4 zlib_deflateReset +EXPORT_SYMBOL vmlinux 0x6af8aaf8 find_inode_by_ino_rcu +EXPORT_SYMBOL vmlinux 0x6b00a747 of_graph_get_remote_port +EXPORT_SYMBOL vmlinux 0x6b2dc060 dump_stack +EXPORT_SYMBOL vmlinux 0x6b55acd0 rtnl_lock_killable +EXPORT_SYMBOL vmlinux 0x6b640864 nla_strlcpy +EXPORT_SYMBOL vmlinux 0x6b853d06 ns_to_kernel_old_timeval +EXPORT_SYMBOL vmlinux 0x6b8878aa tcp_md5_do_add +EXPORT_SYMBOL vmlinux 0x6b89618f uart_get_divisor +EXPORT_SYMBOL vmlinux 0x6b8bf149 netif_receive_skb_list +EXPORT_SYMBOL vmlinux 0x6b95486f has_capability +EXPORT_SYMBOL vmlinux 0x6bab9d59 blk_queue_max_discard_sectors +EXPORT_SYMBOL vmlinux 0x6bc3fbc0 __unregister_chrdev +EXPORT_SYMBOL vmlinux 0x6bcde848 kmem_cache_alloc_node +EXPORT_SYMBOL vmlinux 0x6bd72c7e set_security_override_from_ctx +EXPORT_SYMBOL vmlinux 0x6bdfe2b0 genphy_c37_read_status +EXPORT_SYMBOL vmlinux 0x6bf99481 inet_sendmsg +EXPORT_SYMBOL vmlinux 0x6c002aa5 blk_mq_tag_to_rq +EXPORT_SYMBOL vmlinux 0x6c28be5a vfio_info_add_capability +EXPORT_SYMBOL vmlinux 0x6c2a20a8 is_nvdimm_bus_locked +EXPORT_SYMBOL vmlinux 0x6c35ec65 __filemap_set_wb_err +EXPORT_SYMBOL vmlinux 0x6c386996 phy_start_cable_test +EXPORT_SYMBOL vmlinux 0x6c59c029 vlan_for_each +EXPORT_SYMBOL vmlinux 0x6c5aaa98 dev_uc_init +EXPORT_SYMBOL vmlinux 0x6c5dae23 scsi_kmap_atomic_sg +EXPORT_SYMBOL vmlinux 0x6c61ce70 num_registered_fb +EXPORT_SYMBOL vmlinux 0x6c632ea9 filemap_write_and_wait_range +EXPORT_SYMBOL vmlinux 0x6c7f1c34 migrate_page_states +EXPORT_SYMBOL vmlinux 0x6c88e6b0 __genphy_config_aneg +EXPORT_SYMBOL vmlinux 0x6c8e3cc6 __mod_zone_page_state +EXPORT_SYMBOL vmlinux 0x6c9cab8c kfree_skb +EXPORT_SYMBOL vmlinux 0x6cb46525 netlbl_catmap_walk +EXPORT_SYMBOL vmlinux 0x6cca57f9 vio_cmo_set_dev_desired +EXPORT_SYMBOL vmlinux 0x6cce71d4 config_group_find_item +EXPORT_SYMBOL vmlinux 0x6cd8030c lease_get_mtime +EXPORT_SYMBOL vmlinux 0x6cf0d67d qe_get_num_of_snums +EXPORT_SYMBOL vmlinux 0x6d11b57f mmc_can_discard +EXPORT_SYMBOL vmlinux 0x6d294e43 clock_t_to_jiffies +EXPORT_SYMBOL vmlinux 0x6d38974a blkdev_compat_ptr_ioctl +EXPORT_SYMBOL vmlinux 0x6d48d8a8 pci_bus_write_config_dword +EXPORT_SYMBOL vmlinux 0x6d58f69e agp3_generic_sizes +EXPORT_SYMBOL vmlinux 0x6d769e28 is_nd_dax +EXPORT_SYMBOL vmlinux 0x6d7c7dcc bitmap_cut +EXPORT_SYMBOL vmlinux 0x6da3400d __serio_register_driver +EXPORT_SYMBOL vmlinux 0x6dbd09ef page_zero_new_buffers +EXPORT_SYMBOL vmlinux 0x6dbfcd89 dev_change_proto_down_generic +EXPORT_SYMBOL vmlinux 0x6dcdec64 blk_mq_init_sq_queue +EXPORT_SYMBOL vmlinux 0x6dcf857f uuid_null +EXPORT_SYMBOL vmlinux 0x6dd77dfd dev_vprintk_emit +EXPORT_SYMBOL vmlinux 0x6df1aaf1 kernel_sigaction +EXPORT_SYMBOL vmlinux 0x6e0ed9b5 radix__local_flush_tlb_page +EXPORT_SYMBOL vmlinux 0x6e2366b7 devm_clk_put +EXPORT_SYMBOL vmlinux 0x6e286604 hdmi_drm_infoframe_pack +EXPORT_SYMBOL vmlinux 0x6e2a768e rfkill_alloc +EXPORT_SYMBOL vmlinux 0x6e2aba16 pci_get_slot +EXPORT_SYMBOL vmlinux 0x6e3c4ee2 devm_extcon_register_notifier_all +EXPORT_SYMBOL vmlinux 0x6e539355 input_mt_assign_slots +EXPORT_SYMBOL vmlinux 0x6e576599 __skb_wait_for_more_packets +EXPORT_SYMBOL vmlinux 0x6e5b8651 xz_dec_run +EXPORT_SYMBOL vmlinux 0x6e656c73 __skb_get_hash +EXPORT_SYMBOL vmlinux 0x6e66b4b9 xsk_set_tx_need_wakeup +EXPORT_SYMBOL vmlinux 0x6e720ff2 rtnl_unlock +EXPORT_SYMBOL vmlinux 0x6e7257a2 blk_integrity_unregister +EXPORT_SYMBOL vmlinux 0x6e9a448d __pte_frag_nr +EXPORT_SYMBOL vmlinux 0x6e9dd606 __symbol_put +EXPORT_SYMBOL vmlinux 0x6ea9363b force_sig +EXPORT_SYMBOL vmlinux 0x6eb78836 tso_start +EXPORT_SYMBOL vmlinux 0x6ec0fa3e call_fib_notifier +EXPORT_SYMBOL vmlinux 0x6ed8a5fc hdmi_drm_infoframe_check +EXPORT_SYMBOL vmlinux 0x6edab7c7 radix__flush_all_mm +EXPORT_SYMBOL vmlinux 0x6edfae9e genphy_read_lpa +EXPORT_SYMBOL vmlinux 0x6ee1c0f7 vfs_fadvise +EXPORT_SYMBOL vmlinux 0x6ee2a3fb qdisc_offload_graft_helper +EXPORT_SYMBOL vmlinux 0x6ee63f54 fs_param_is_fd +EXPORT_SYMBOL vmlinux 0x6eff7acc __ethtool_get_link_ksettings +EXPORT_SYMBOL vmlinux 0x6f08b1c6 mempool_exit +EXPORT_SYMBOL vmlinux 0x6f108f8c input_unregister_handler +EXPORT_SYMBOL vmlinux 0x6f1283ee idr_for_each +EXPORT_SYMBOL vmlinux 0x6f2c59f4 tcp_select_initial_window +EXPORT_SYMBOL vmlinux 0x6f3ebb4a inet6_getname +EXPORT_SYMBOL vmlinux 0x6f4a372e of_find_matching_node_and_match +EXPORT_SYMBOL vmlinux 0x6f547f35 generic_pipe_buf_try_steal +EXPORT_SYMBOL vmlinux 0x6f6abfb9 tty_port_hangup +EXPORT_SYMBOL vmlinux 0x6f75b518 xfrm_dst_ifdown +EXPORT_SYMBOL vmlinux 0x6f8f674a bpf_dispatcher_xdp_func +EXPORT_SYMBOL vmlinux 0x6f93d7f2 send_sig_info +EXPORT_SYMBOL vmlinux 0x6fb49676 queue_rcu_work +EXPORT_SYMBOL vmlinux 0x6fb60740 ip4_datagram_connect +EXPORT_SYMBOL vmlinux 0x6fcb87a1 touch_softlockup_watchdog +EXPORT_SYMBOL vmlinux 0x6fd9c35a __clzdi2 +EXPORT_SYMBOL vmlinux 0x70002fe8 siphash_1u32 +EXPORT_SYMBOL vmlinux 0x700b8e16 inet_dev_addr_type +EXPORT_SYMBOL vmlinux 0x701a437c dev_uc_add_excl +EXPORT_SYMBOL vmlinux 0x701c74cf __pagevec_release +EXPORT_SYMBOL vmlinux 0x70221f76 skb_vlan_push +EXPORT_SYMBOL vmlinux 0x70291607 iter_file_splice_write +EXPORT_SYMBOL vmlinux 0x7032bf35 clear_user_page +EXPORT_SYMBOL vmlinux 0x704115b3 qe_usb_clock_set +EXPORT_SYMBOL vmlinux 0x704599b2 tty_port_raise_dtr_rts +EXPORT_SYMBOL vmlinux 0x7054a3e4 request_dma +EXPORT_SYMBOL vmlinux 0x705ad9f4 ppc_md +EXPORT_SYMBOL vmlinux 0x7071a4f2 cmdline_parts_free +EXPORT_SYMBOL vmlinux 0x707ede5a twl6040_get_pll +EXPORT_SYMBOL vmlinux 0x707f30ed tcp_v4_do_rcv +EXPORT_SYMBOL vmlinux 0x709abafc scsi_partsize +EXPORT_SYMBOL vmlinux 0x70ae98e0 edac_mc_find +EXPORT_SYMBOL vmlinux 0x70ced1b5 key_unlink +EXPORT_SYMBOL vmlinux 0x70d3a44e tcp_sock_set_keepintvl +EXPORT_SYMBOL vmlinux 0x710929e9 wait_for_completion_killable_timeout +EXPORT_SYMBOL vmlinux 0x710d25a3 blkdev_get_by_dev +EXPORT_SYMBOL vmlinux 0x7122a0f7 i2c_transfer_buffer_flags +EXPORT_SYMBOL vmlinux 0x7129e5f8 hex_asc +EXPORT_SYMBOL vmlinux 0x7131bf58 tty_termios_hw_change +EXPORT_SYMBOL vmlinux 0x71380ac8 cpumask_next_wrap +EXPORT_SYMBOL vmlinux 0x71660688 page_pool_release_page +EXPORT_SYMBOL vmlinux 0x7171121c overflowgid +EXPORT_SYMBOL vmlinux 0x717e2495 pci_read_vpd +EXPORT_SYMBOL vmlinux 0x717fb2d6 tty_devnum +EXPORT_SYMBOL vmlinux 0x7184610e copy_string_kernel +EXPORT_SYMBOL vmlinux 0x718b3ce4 xfrm_sad_getinfo +EXPORT_SYMBOL vmlinux 0x7199f832 cpumask_any_and_distribute +EXPORT_SYMBOL vmlinux 0x719ebe2b jbd2_log_start_commit +EXPORT_SYMBOL vmlinux 0x71a50dbc register_blkdev +EXPORT_SYMBOL vmlinux 0x71a672ef dmam_pool_destroy +EXPORT_SYMBOL vmlinux 0x71af2793 udp6_csum_init +EXPORT_SYMBOL vmlinux 0x71b68751 misc_deregister +EXPORT_SYMBOL vmlinux 0x71b73f79 dquot_resume +EXPORT_SYMBOL vmlinux 0x71e21ed1 filemap_fdatawait_keep_errors +EXPORT_SYMBOL vmlinux 0x71e31d2b pagecache_write_end +EXPORT_SYMBOL vmlinux 0x71ea327f vmf_insert_mixed_mkwrite +EXPORT_SYMBOL vmlinux 0x71f3ba0a skb_page_frag_refill +EXPORT_SYMBOL vmlinux 0x71ff57c6 xfrm_lookup_route +EXPORT_SYMBOL vmlinux 0x72036d3c phy_sfp_probe +EXPORT_SYMBOL vmlinux 0x720b40e2 page_cache_prev_miss +EXPORT_SYMBOL vmlinux 0x720ba770 dev_get_phys_port_id +EXPORT_SYMBOL vmlinux 0x72155518 rtnetlink_put_metrics +EXPORT_SYMBOL vmlinux 0x72223839 ipv6_select_ident +EXPORT_SYMBOL vmlinux 0x7241a4d8 devm_memunmap +EXPORT_SYMBOL vmlinux 0x7248a106 __post_watch_notification +EXPORT_SYMBOL vmlinux 0x724b02b0 configfs_register_default_group +EXPORT_SYMBOL vmlinux 0x724ba45e abx500_get_register_page_interruptible +EXPORT_SYMBOL vmlinux 0x724ddac7 utf8version_is_supported +EXPORT_SYMBOL vmlinux 0x72608c0e do_uaccess_flush +EXPORT_SYMBOL vmlinux 0x7261ed94 tcp_mmap +EXPORT_SYMBOL vmlinux 0x727dac3c blk_mq_alloc_tag_set +EXPORT_SYMBOL vmlinux 0x7283ec4f blk_dump_rq_flags +EXPORT_SYMBOL vmlinux 0x728b18d9 iptun_encaps +EXPORT_SYMBOL vmlinux 0x72a12ca2 udp_pre_connect +EXPORT_SYMBOL vmlinux 0x72b1ef08 inet_gso_segment +EXPORT_SYMBOL vmlinux 0x72b243d4 free_dma +EXPORT_SYMBOL vmlinux 0x72b43c4f tty_driver_kref_put +EXPORT_SYMBOL vmlinux 0x72b9d287 default_grn +EXPORT_SYMBOL vmlinux 0x72bebfcf mipi_dsi_generic_read +EXPORT_SYMBOL vmlinux 0x72c98139 __arch_hweight64 +EXPORT_SYMBOL vmlinux 0x72ca1059 __cleancache_get_page +EXPORT_SYMBOL vmlinux 0x72d29a16 __get_hash_from_flowi6 +EXPORT_SYMBOL vmlinux 0x72d66d47 pci_set_mwi +EXPORT_SYMBOL vmlinux 0x72ea7b2d scsi_device_type +EXPORT_SYMBOL vmlinux 0x72f7d688 dev_queue_xmit_accel +EXPORT_SYMBOL vmlinux 0x7315a4e9 twl6030_mmc_card_detect_config +EXPORT_SYMBOL vmlinux 0x7316dc48 eth_platform_get_mac_address +EXPORT_SYMBOL vmlinux 0x731a747a pci_io_base +EXPORT_SYMBOL vmlinux 0x732ea3dc sock_kzfree_s +EXPORT_SYMBOL vmlinux 0x734e83f6 mipi_dsi_dcs_get_display_brightness +EXPORT_SYMBOL vmlinux 0x7355f151 __bread_gfp +EXPORT_SYMBOL vmlinux 0x7358a55b dma_direct_map_page +EXPORT_SYMBOL vmlinux 0x7367f085 __devm_request_region +EXPORT_SYMBOL vmlinux 0x73744cc2 dcb_ieee_setapp +EXPORT_SYMBOL vmlinux 0x73776ba4 vio_unregister_device +EXPORT_SYMBOL vmlinux 0x73785cb8 nd_btt_version +EXPORT_SYMBOL vmlinux 0x737b60cc tcp_enter_cwr +EXPORT_SYMBOL vmlinux 0x7380dffa argv_split +EXPORT_SYMBOL vmlinux 0x7397ca8b nf_register_sockopt +EXPORT_SYMBOL vmlinux 0x73a70361 pci_find_parent_resource +EXPORT_SYMBOL vmlinux 0x73abb180 alloc_contig_range +EXPORT_SYMBOL vmlinux 0x73c5736c rproc_coredump_set_elf_info +EXPORT_SYMBOL vmlinux 0x73d5f058 generic_remap_file_range_prep +EXPORT_SYMBOL vmlinux 0x73dde483 tcp_sock_set_nodelay +EXPORT_SYMBOL vmlinux 0x73e10f47 tty_flip_buffer_push +EXPORT_SYMBOL vmlinux 0x73e7c161 iov_iter_copy_from_user_atomic +EXPORT_SYMBOL vmlinux 0x73ef0977 flow_rule_match_vlan +EXPORT_SYMBOL vmlinux 0x740228c7 abx500_get_chip_id +EXPORT_SYMBOL vmlinux 0x7408b98f pipe_lock +EXPORT_SYMBOL vmlinux 0x7410aba2 strreplace +EXPORT_SYMBOL vmlinux 0x7412ed5b kvfree_sensitive +EXPORT_SYMBOL vmlinux 0x742578a5 wait_for_random_bytes +EXPORT_SYMBOL vmlinux 0x742be432 stream_open +EXPORT_SYMBOL vmlinux 0x7439fd86 radix_tree_lookup +EXPORT_SYMBOL vmlinux 0x7446b3f2 __sk_mem_raise_allocated +EXPORT_SYMBOL vmlinux 0x7453d3e8 security_release_secctx +EXPORT_SYMBOL vmlinux 0x745de4e0 blk_mq_queue_stopped +EXPORT_SYMBOL vmlinux 0x746641a3 serio_close +EXPORT_SYMBOL vmlinux 0x74725e69 ZSTD_compressContinue +EXPORT_SYMBOL vmlinux 0x74852e84 devm_ioport_unmap +EXPORT_SYMBOL vmlinux 0x748bde38 blk_queue_max_write_same_sectors +EXPORT_SYMBOL vmlinux 0x7496bd1c arp_send +EXPORT_SYMBOL vmlinux 0x749849d8 LZ4_loadDict +EXPORT_SYMBOL vmlinux 0x74b2f3f9 tcf_block_get +EXPORT_SYMBOL vmlinux 0x74c134b9 __sw_hweight32 +EXPORT_SYMBOL vmlinux 0x74c18454 gen_replace_estimator +EXPORT_SYMBOL vmlinux 0x74dd9684 nd_btt_arena_is_valid +EXPORT_SYMBOL vmlinux 0x74e5ff1a udpv6_encap_enable +EXPORT_SYMBOL vmlinux 0x74f1cd69 __cpu_present_mask +EXPORT_SYMBOL vmlinux 0x750e89be page_get_link +EXPORT_SYMBOL vmlinux 0x751183e4 jbd2_journal_force_commit +EXPORT_SYMBOL vmlinux 0x7513eb34 param_get_ushort +EXPORT_SYMBOL vmlinux 0x7518dafc of_find_mipi_dsi_host_by_node +EXPORT_SYMBOL vmlinux 0x751a9073 genphy_read_status +EXPORT_SYMBOL vmlinux 0x752fd55e bio_endio +EXPORT_SYMBOL vmlinux 0x7538b132 agp_off +EXPORT_SYMBOL vmlinux 0x75431c3e gro_cells_receive +EXPORT_SYMBOL vmlinux 0x754eeda5 bio_list_copy_data +EXPORT_SYMBOL vmlinux 0x755d28fe __cgroup_bpf_run_filter_sock_addr +EXPORT_SYMBOL vmlinux 0x75759b08 seq_open +EXPORT_SYMBOL vmlinux 0x757f088f cpm_muram_offset +EXPORT_SYMBOL vmlinux 0x7581a6da inet_csk_reqsk_queue_drop_and_put +EXPORT_SYMBOL vmlinux 0x75825253 __dev_kfree_skb_any +EXPORT_SYMBOL vmlinux 0x75859b2f dev_addr_init +EXPORT_SYMBOL vmlinux 0x758dc1ed phy_driver_register +EXPORT_SYMBOL vmlinux 0x759e1810 security_binder_transfer_file +EXPORT_SYMBOL vmlinux 0x75a79927 unpin_user_page +EXPORT_SYMBOL vmlinux 0x75a88fd1 skb_flow_dissect_ct +EXPORT_SYMBOL vmlinux 0x75aa6ca1 __kernel_virt_start +EXPORT_SYMBOL vmlinux 0x75bda77a seq_hlist_next +EXPORT_SYMBOL vmlinux 0x75c9c3fd netif_rx +EXPORT_SYMBOL vmlinux 0x75cc8617 srp_rport_put +EXPORT_SYMBOL vmlinux 0x75d0deb9 nsecs_to_jiffies64 +EXPORT_SYMBOL vmlinux 0x75d36313 sk_page_frag_refill +EXPORT_SYMBOL vmlinux 0x75d499dd vmcore_add_device_dump +EXPORT_SYMBOL vmlinux 0x75d86cb6 of_get_next_cpu_node +EXPORT_SYMBOL vmlinux 0x75dc505b netif_napi_add +EXPORT_SYMBOL vmlinux 0x75de1b23 tty_port_close_start +EXPORT_SYMBOL vmlinux 0x75e2074f get_super +EXPORT_SYMBOL vmlinux 0x75f9d347 ilookup5_nowait +EXPORT_SYMBOL vmlinux 0x760a0f4f yield +EXPORT_SYMBOL vmlinux 0x760a7b7c nf_log_trace +EXPORT_SYMBOL vmlinux 0x7617451f pci_try_set_mwi +EXPORT_SYMBOL vmlinux 0x7624249e dim_park_tired +EXPORT_SYMBOL vmlinux 0x763ba3ad ioread64be_hi_lo +EXPORT_SYMBOL vmlinux 0x76449210 inet_twsk_deschedule_put +EXPORT_SYMBOL vmlinux 0x7647726c handle_sysrq +EXPORT_SYMBOL vmlinux 0x7648d06f param_get_ullong +EXPORT_SYMBOL vmlinux 0x76564e32 neigh_for_each +EXPORT_SYMBOL vmlinux 0x76598b52 fib_notifier_ops_register +EXPORT_SYMBOL vmlinux 0x765ff474 crc_t10dif_generic +EXPORT_SYMBOL vmlinux 0x766a0927 mempool_alloc_pages +EXPORT_SYMBOL vmlinux 0x767aeb21 pci_get_domain_bus_and_slot +EXPORT_SYMBOL vmlinux 0x76877540 secure_tcpv6_ts_off +EXPORT_SYMBOL vmlinux 0x768e9f5e vio_disable_interrupts +EXPORT_SYMBOL vmlinux 0x769f6e64 errseq_check +EXPORT_SYMBOL vmlinux 0x76a28e0c devm_clk_get +EXPORT_SYMBOL vmlinux 0x76ad6a53 netdev_next_lower_dev_rcu +EXPORT_SYMBOL vmlinux 0x76bc82f1 tcf_classify +EXPORT_SYMBOL vmlinux 0x76c512ea generic_writepages +EXPORT_SYMBOL vmlinux 0x76d3cd60 laptop_mode +EXPORT_SYMBOL vmlinux 0x76d451c4 add_taint +EXPORT_SYMBOL vmlinux 0x76dbed95 _dev_crit +EXPORT_SYMBOL vmlinux 0x76e51edb tcp_recvmsg +EXPORT_SYMBOL vmlinux 0x76eb0c4b mr_mfc_find_parent +EXPORT_SYMBOL vmlinux 0x76eca60d skb_checksum_trimmed +EXPORT_SYMBOL vmlinux 0x76f2f13e __f_setown +EXPORT_SYMBOL vmlinux 0x7702eecc tcf_block_put_ext +EXPORT_SYMBOL vmlinux 0x7713c9a5 rtnl_configure_link +EXPORT_SYMBOL vmlinux 0x77234d37 downgrade_write +EXPORT_SYMBOL vmlinux 0x772b9d9d neigh_event_ns +EXPORT_SYMBOL vmlinux 0x7732159c free_irq_cpu_rmap +EXPORT_SYMBOL vmlinux 0x77358855 iomem_resource +EXPORT_SYMBOL vmlinux 0x773fa409 __kfifo_dma_in_finish_r +EXPORT_SYMBOL vmlinux 0x775af728 tcp_md5_hash_skb_data +EXPORT_SYMBOL vmlinux 0x776afead dquot_free_inode +EXPORT_SYMBOL vmlinux 0x77752733 complete_request_key +EXPORT_SYMBOL vmlinux 0x779a18af kstrtoll +EXPORT_SYMBOL vmlinux 0x779e6fe2 __skb_checksum_complete +EXPORT_SYMBOL vmlinux 0x77b5729a agp_generic_destroy_page +EXPORT_SYMBOL vmlinux 0x77ba03e6 register_netdevice_notifier_dev_net +EXPORT_SYMBOL vmlinux 0x77bc13a0 strim +EXPORT_SYMBOL vmlinux 0x77dcdf2f __dynamic_dev_dbg +EXPORT_SYMBOL vmlinux 0x77e6bd0d pci_bus_assign_resources +EXPORT_SYMBOL vmlinux 0x77e9eb37 aes_encrypt +EXPORT_SYMBOL vmlinux 0x77fee50d register_sysctl_table +EXPORT_SYMBOL vmlinux 0x78045597 max8925_bulk_write +EXPORT_SYMBOL vmlinux 0x7807f0f8 schedule_timeout_idle +EXPORT_SYMBOL vmlinux 0x7824cd9b neigh_proc_dointvec_ms_jiffies +EXPORT_SYMBOL vmlinux 0x7834defd vfio_group_unpin_pages +EXPORT_SYMBOL vmlinux 0x783a52f6 phy_detach +EXPORT_SYMBOL vmlinux 0x783a6172 blk_put_request +EXPORT_SYMBOL vmlinux 0x783ab6e7 vfs_iocb_iter_write +EXPORT_SYMBOL vmlinux 0x7846af3e __kfifo_len_r +EXPORT_SYMBOL vmlinux 0x78792186 tcp_rcv_state_process +EXPORT_SYMBOL vmlinux 0x7880c781 dm_kcopyd_prepare_callback +EXPORT_SYMBOL vmlinux 0x78851d2f _outsb +EXPORT_SYMBOL vmlinux 0x789affb1 frontswap_tmem_exclusive_gets +EXPORT_SYMBOL vmlinux 0x78a0603c rawv6_mh_filter_unregister +EXPORT_SYMBOL vmlinux 0x78a16f48 aes_decrypt +EXPORT_SYMBOL vmlinux 0x78a261e5 rawv6_mh_filter_register +EXPORT_SYMBOL vmlinux 0x78a9e905 _numa_mem_ +EXPORT_SYMBOL vmlinux 0x78df6bd7 no_pci_devices +EXPORT_SYMBOL vmlinux 0x78e6cd1d flow_rule_match_mpls +EXPORT_SYMBOL vmlinux 0x78f631c7 zpool_register_driver +EXPORT_SYMBOL vmlinux 0x790a993d fscrypt_inherit_context +EXPORT_SYMBOL vmlinux 0x790c1b9a dma_async_device_unregister +EXPORT_SYMBOL vmlinux 0x791c43c1 address_space_init_once +EXPORT_SYMBOL vmlinux 0x791f91ef mmc_can_secure_erase_trim +EXPORT_SYMBOL vmlinux 0x79459965 no_llseek +EXPORT_SYMBOL vmlinux 0x795deb56 sk_stream_wait_close +EXPORT_SYMBOL vmlinux 0x79658b57 ptp_schedule_worker +EXPORT_SYMBOL vmlinux 0x796adc81 devm_extcon_register_notifier +EXPORT_SYMBOL vmlinux 0x79739c3c utf8nagemin +EXPORT_SYMBOL vmlinux 0x7984eefc key_update +EXPORT_SYMBOL vmlinux 0x7986c237 get_user_pages_unlocked +EXPORT_SYMBOL vmlinux 0x799993ae agp_generic_insert_memory +EXPORT_SYMBOL vmlinux 0x799c693a mmc_calc_max_discard +EXPORT_SYMBOL vmlinux 0x79a33f85 vme_get_size +EXPORT_SYMBOL vmlinux 0x79aa04a2 get_random_bytes +EXPORT_SYMBOL vmlinux 0x79beb9cb jbd2_journal_force_commit_nested +EXPORT_SYMBOL vmlinux 0x79d48f00 vmf_insert_mixed_prot +EXPORT_SYMBOL vmlinux 0x79d96d53 fb_prepare_logo +EXPORT_SYMBOL vmlinux 0x79ee3960 is_subdir +EXPORT_SYMBOL vmlinux 0x79f9771a inet_csk_complete_hashdance +EXPORT_SYMBOL vmlinux 0x79fa3a9e max8925_reg_write +EXPORT_SYMBOL vmlinux 0x7a09a064 seg6_hmac_compute +EXPORT_SYMBOL vmlinux 0x7a0ac122 netdev_pick_tx +EXPORT_SYMBOL vmlinux 0x7a11bfc1 netlink_broadcast +EXPORT_SYMBOL vmlinux 0x7a1bcd59 gf128mul_x8_ble +EXPORT_SYMBOL vmlinux 0x7a1bce64 inet_sock_destruct +EXPORT_SYMBOL vmlinux 0x7a3c317f devm_ioremap +EXPORT_SYMBOL vmlinux 0x7a4497db kzfree +EXPORT_SYMBOL vmlinux 0x7a5e2236 dev_get_stats +EXPORT_SYMBOL vmlinux 0x7a6199c4 set_blocksize +EXPORT_SYMBOL vmlinux 0x7a6443f3 pcim_iounmap +EXPORT_SYMBOL vmlinux 0x7a6bc658 xfrm_unregister_km +EXPORT_SYMBOL vmlinux 0x7a6f7029 dst_discard_out +EXPORT_SYMBOL vmlinux 0x7a71741f __xa_cmpxchg +EXPORT_SYMBOL vmlinux 0x7a7de0d6 mempool_init_node +EXPORT_SYMBOL vmlinux 0x7a88d96c pci_setup_cardbus +EXPORT_SYMBOL vmlinux 0x7a95e5ae do_settimeofday64 +EXPORT_SYMBOL vmlinux 0x7a968137 ucc_slow_restart_tx +EXPORT_SYMBOL vmlinux 0x7a9b37e8 blk_start_plug +EXPORT_SYMBOL vmlinux 0x7aa1756e kvfree +EXPORT_SYMBOL vmlinux 0x7ab19647 cdc_parse_cdc_header +EXPORT_SYMBOL vmlinux 0x7ab1b651 generic_file_fsync +EXPORT_SYMBOL vmlinux 0x7ab51f92 km_state_expired +EXPORT_SYMBOL vmlinux 0x7ab5f8c3 _insw_ns +EXPORT_SYMBOL vmlinux 0x7ab6b18c pfifo_qdisc_ops +EXPORT_SYMBOL vmlinux 0x7ab88a45 system_freezing_cnt +EXPORT_SYMBOL vmlinux 0x7aba86db node_to_cpumask_map +EXPORT_SYMBOL vmlinux 0x7ad050b9 qid_lt +EXPORT_SYMBOL vmlinux 0x7adc0fbf rb_replace_node_rcu +EXPORT_SYMBOL vmlinux 0x7ae5d317 qe_get_snum +EXPORT_SYMBOL vmlinux 0x7ae82f11 netlbl_calipso_ops_register +EXPORT_SYMBOL vmlinux 0x7aee3fef phy_connect_direct +EXPORT_SYMBOL vmlinux 0x7b0192da kstrtou16 +EXPORT_SYMBOL vmlinux 0x7b07a553 udp_set_csum +EXPORT_SYMBOL vmlinux 0x7b094854 dquot_writeback_dquots +EXPORT_SYMBOL vmlinux 0x7b0bfdbb xfrm_input_register_afinfo +EXPORT_SYMBOL vmlinux 0x7b1c19af blk_queue_split +EXPORT_SYMBOL vmlinux 0x7b2c7226 uaccess_flush_key +EXPORT_SYMBOL vmlinux 0x7b41ece9 phy_device_remove +EXPORT_SYMBOL vmlinux 0x7b5b8f31 sha256_update +EXPORT_SYMBOL vmlinux 0x7b63dee3 devm_register_reboot_notifier +EXPORT_SYMBOL vmlinux 0x7b951fe3 scsi_scan_target +EXPORT_SYMBOL vmlinux 0x7ba7a198 dev_pre_changeaddr_notify +EXPORT_SYMBOL vmlinux 0x7bbccd05 nr_node_ids +EXPORT_SYMBOL vmlinux 0x7bd8f50d radix_tree_gang_lookup_tag +EXPORT_SYMBOL vmlinux 0x7be49c45 skb_put +EXPORT_SYMBOL vmlinux 0x7c003aef _raw_read_lock_irq +EXPORT_SYMBOL vmlinux 0x7c173634 __bitmap_complement +EXPORT_SYMBOL vmlinux 0x7c1c193a i2c_verify_adapter +EXPORT_SYMBOL vmlinux 0x7c42bc8d security_tun_dev_attach +EXPORT_SYMBOL vmlinux 0x7c46233a cpufreq_quick_get +EXPORT_SYMBOL vmlinux 0x7c4f5633 devfreq_update_status +EXPORT_SYMBOL vmlinux 0x7c5a7fad __dst_destroy_metrics_generic +EXPORT_SYMBOL vmlinux 0x7c61c3c5 rt_dst_alloc +EXPORT_SYMBOL vmlinux 0x7c63a098 radix_tree_insert +EXPORT_SYMBOL vmlinux 0x7c729781 unregister_netdevice_queue +EXPORT_SYMBOL vmlinux 0x7c78c07b agp_generic_alloc_pages +EXPORT_SYMBOL vmlinux 0x7c87366b of_node_put +EXPORT_SYMBOL vmlinux 0x7c8c999c kset_unregister +EXPORT_SYMBOL vmlinux 0x7c8fd0bc tcf_exts_num_actions +EXPORT_SYMBOL vmlinux 0x7c9291d1 csum_partial_copy_generic +EXPORT_SYMBOL vmlinux 0x7c9ca58f __sg_page_iter_next +EXPORT_SYMBOL vmlinux 0x7c9f3f99 iov_iter_zero +EXPORT_SYMBOL vmlinux 0x7cb1aea1 devlink_dpipe_header_ethernet +EXPORT_SYMBOL vmlinux 0x7cc6c2ed proc_symlink +EXPORT_SYMBOL vmlinux 0x7cd46330 __tracepoint_dma_fence_enable_signal +EXPORT_SYMBOL vmlinux 0x7cdddd7b mntget +EXPORT_SYMBOL vmlinux 0x7ce18c9f from_kqid +EXPORT_SYMBOL vmlinux 0x7cf35220 vme_master_free +EXPORT_SYMBOL vmlinux 0x7cfe368d net_dim_get_def_tx_moderation +EXPORT_SYMBOL vmlinux 0x7cfe837a hdmi_infoframe_log +EXPORT_SYMBOL vmlinux 0x7d02d1e8 dqget +EXPORT_SYMBOL vmlinux 0x7d07dc49 d_set_d_op +EXPORT_SYMBOL vmlinux 0x7d0db45c jiffies_to_clock_t +EXPORT_SYMBOL vmlinux 0x7d1ccae5 kfree_skb_partial +EXPORT_SYMBOL vmlinux 0x7d3975ba sock_sendmsg +EXPORT_SYMBOL vmlinux 0x7d3e7ec3 unregister_cdrom +EXPORT_SYMBOL vmlinux 0x7d48e782 __dquot_free_space +EXPORT_SYMBOL vmlinux 0x7d4aa871 _copy_from_iter +EXPORT_SYMBOL vmlinux 0x7d4b176a netlbl_catmap_setbit +EXPORT_SYMBOL vmlinux 0x7d57725d iterate_dir +EXPORT_SYMBOL vmlinux 0x7d5e1008 __crc32c_le_shift +EXPORT_SYMBOL vmlinux 0x7d95e138 uart_register_driver +EXPORT_SYMBOL vmlinux 0x7dad35d7 phy_reset_after_clk_enable +EXPORT_SYMBOL vmlinux 0x7daece67 quota_send_warning +EXPORT_SYMBOL vmlinux 0x7dafdaec __vfs_removexattr +EXPORT_SYMBOL vmlinux 0x7db9edb1 pcix_get_mmrbc +EXPORT_SYMBOL vmlinux 0x7dc37a85 input_mt_report_finger_count +EXPORT_SYMBOL vmlinux 0x7dc97879 rtas_get_error_log_max +EXPORT_SYMBOL vmlinux 0x7dcb4ea9 tcf_register_action +EXPORT_SYMBOL vmlinux 0x7dcfdcd2 bioset_init_from_src +EXPORT_SYMBOL vmlinux 0x7dd40dda d_hash_and_lookup +EXPORT_SYMBOL vmlinux 0x7de02a60 devm_get_clk_from_child +EXPORT_SYMBOL vmlinux 0x7deff673 dm_consume_args +EXPORT_SYMBOL vmlinux 0x7dfc8277 isa_mem_base +EXPORT_SYMBOL vmlinux 0x7e0f59f9 of_find_node_by_name +EXPORT_SYMBOL vmlinux 0x7e2b3259 vfs_iter_write +EXPORT_SYMBOL vmlinux 0x7e2d6436 ida_free +EXPORT_SYMBOL vmlinux 0x7e3191f6 try_to_del_timer_sync +EXPORT_SYMBOL vmlinux 0x7e62611a phys_mem_access_prot +EXPORT_SYMBOL vmlinux 0x7e72a735 lease_modify +EXPORT_SYMBOL vmlinux 0x7e884f27 abx500_mask_and_set_register_interruptible +EXPORT_SYMBOL vmlinux 0x7e8ca999 neigh_seq_next +EXPORT_SYMBOL vmlinux 0x7e957050 ipv6_mc_check_icmpv6 +EXPORT_SYMBOL vmlinux 0x7e980509 pci_scan_bus +EXPORT_SYMBOL vmlinux 0x7ead302f phy_validate_pause +EXPORT_SYMBOL vmlinux 0x7ebc057e elv_rb_latter_request +EXPORT_SYMBOL vmlinux 0x7ee09a80 tcp_prot +EXPORT_SYMBOL vmlinux 0x7ee706d5 __alloc_pages_nodemask +EXPORT_SYMBOL vmlinux 0x7ef4897a twl6040_set_bits +EXPORT_SYMBOL vmlinux 0x7f02188f __msecs_to_jiffies +EXPORT_SYMBOL vmlinux 0x7f03b6a9 crc_ccitt_table +EXPORT_SYMBOL vmlinux 0x7f0df65b skb_dump +EXPORT_SYMBOL vmlinux 0x7f24de73 jiffies_to_usecs +EXPORT_SYMBOL vmlinux 0x7f52071a net_dim +EXPORT_SYMBOL vmlinux 0x7f588576 device_add_disk_no_queue_reg +EXPORT_SYMBOL vmlinux 0x7f5aecf5 sock_no_sendpage +EXPORT_SYMBOL vmlinux 0x7f5b4fe4 sg_free_table +EXPORT_SYMBOL vmlinux 0x7f6b4f62 sock_dequeue_err_skb +EXPORT_SYMBOL vmlinux 0x7f6bf8c8 blk_queue_chunk_sectors +EXPORT_SYMBOL vmlinux 0x7f71575c devm_devfreq_add_device +EXPORT_SYMBOL vmlinux 0x7f71fb97 xa_load +EXPORT_SYMBOL vmlinux 0x7f7f7bb4 irq_poll_disable +EXPORT_SYMBOL vmlinux 0x7f89426c scsi_report_opcode +EXPORT_SYMBOL vmlinux 0x7f93b06d devm_rproc_alloc +EXPORT_SYMBOL vmlinux 0x7fa05eae flow_rule_match_ports +EXPORT_SYMBOL vmlinux 0x7fcd7454 devm_ioremap_wc +EXPORT_SYMBOL vmlinux 0x7fcf70a5 fb_set_var +EXPORT_SYMBOL vmlinux 0x7fd14bdc textsearch_unregister +EXPORT_SYMBOL vmlinux 0x7fe32873 rb_replace_node +EXPORT_SYMBOL vmlinux 0x7fed255f of_graph_get_next_endpoint +EXPORT_SYMBOL vmlinux 0x8013ee37 put_disk +EXPORT_SYMBOL vmlinux 0x802541ca ucc_of_parse_tdm +EXPORT_SYMBOL vmlinux 0x80377dfb reuseport_detach_prog +EXPORT_SYMBOL vmlinux 0x803ddbb6 __posix_acl_create +EXPORT_SYMBOL vmlinux 0x803de3fd irq_domain_set_info +EXPORT_SYMBOL vmlinux 0x803f8ab9 fs_param_is_enum +EXPORT_SYMBOL vmlinux 0x8052cece flow_rule_match_basic +EXPORT_SYMBOL vmlinux 0x805ba707 xp_free +EXPORT_SYMBOL vmlinux 0x80734ace mmc_sw_reset +EXPORT_SYMBOL vmlinux 0x80771902 scsi_print_sense_hdr +EXPORT_SYMBOL vmlinux 0x80804ceb ethtool_virtdev_set_link_ksettings +EXPORT_SYMBOL vmlinux 0x80850722 cdev_alloc +EXPORT_SYMBOL vmlinux 0x809712ff hdmi_avi_infoframe_pack +EXPORT_SYMBOL vmlinux 0x809e2504 scsi_device_put +EXPORT_SYMBOL vmlinux 0x80ad1d6d remove_watch_from_object +EXPORT_SYMBOL vmlinux 0x80c07d26 of_match_node +EXPORT_SYMBOL vmlinux 0x80ca5026 _bin2bcd +EXPORT_SYMBOL vmlinux 0x80d68d3e fb_register_client +EXPORT_SYMBOL vmlinux 0x80e9c4e2 qdisc_watchdog_init_clockid +EXPORT_SYMBOL vmlinux 0x80fa8d0a dev_remove_offload +EXPORT_SYMBOL vmlinux 0x80fd2ff9 icmpv6_ndo_send +EXPORT_SYMBOL vmlinux 0x8112b3d2 scsi_build_sense_buffer +EXPORT_SYMBOL vmlinux 0x8115ad89 ip_getsockopt +EXPORT_SYMBOL vmlinux 0x811674ce prepare_to_swait_event +EXPORT_SYMBOL vmlinux 0x81188c30 match_string +EXPORT_SYMBOL vmlinux 0x811a93b4 netdev_name_node_alt_create +EXPORT_SYMBOL vmlinux 0x81265879 kernel_param_lock +EXPORT_SYMBOL vmlinux 0x81326bdc ilookup5 +EXPORT_SYMBOL vmlinux 0x8132d512 fbcon_rotate_ud +EXPORT_SYMBOL vmlinux 0x814bdc13 dma_async_tx_descriptor_init +EXPORT_SYMBOL vmlinux 0x814eebc4 md_reload_sb +EXPORT_SYMBOL vmlinux 0x81533963 sysfs_format_mac +EXPORT_SYMBOL vmlinux 0x81553ca4 scsi_track_queue_full +EXPORT_SYMBOL vmlinux 0x815a8f12 dquot_alloc +EXPORT_SYMBOL vmlinux 0x815b5dd4 match_octal +EXPORT_SYMBOL vmlinux 0x815fbdfb pci_bus_claim_resources +EXPORT_SYMBOL vmlinux 0x816347c6 agp_device_command +EXPORT_SYMBOL vmlinux 0x818416e1 scsi_set_sense_information +EXPORT_SYMBOL vmlinux 0x8184e569 ip6_dst_alloc +EXPORT_SYMBOL vmlinux 0x818edf97 cpm_muram_alloc +EXPORT_SYMBOL vmlinux 0x8191c4f6 pcie_capability_read_word +EXPORT_SYMBOL vmlinux 0x8192696e __neigh_create +EXPORT_SYMBOL vmlinux 0x81a07f4e _atomic_dec_and_lock +EXPORT_SYMBOL vmlinux 0x81bb2bf1 filemap_page_mkwrite +EXPORT_SYMBOL vmlinux 0x81c0a84f rtas_set_indicator +EXPORT_SYMBOL vmlinux 0x81cd0153 param_set_ullong +EXPORT_SYMBOL vmlinux 0x81d2ca71 get_tree_single_reconf +EXPORT_SYMBOL vmlinux 0x81db6ebb xz_dec_reset +EXPORT_SYMBOL vmlinux 0x81e4892f giveup_all +EXPORT_SYMBOL vmlinux 0x82072614 tasklet_kill +EXPORT_SYMBOL vmlinux 0x82082530 io_uring_get_socket +EXPORT_SYMBOL vmlinux 0x8209262b fs_param_is_bool +EXPORT_SYMBOL vmlinux 0x820c0980 blk_mq_tagset_busy_iter +EXPORT_SYMBOL vmlinux 0x821559d6 __vmalloc_end +EXPORT_SYMBOL vmlinux 0x821b98e0 netif_device_detach +EXPORT_SYMBOL vmlinux 0x821f9a64 set_cached_acl +EXPORT_SYMBOL vmlinux 0x8227ab82 nd_region_to_nstype +EXPORT_SYMBOL vmlinux 0x8238939f udp_skb_destructor +EXPORT_SYMBOL vmlinux 0x82394b7d bdput +EXPORT_SYMBOL vmlinux 0x823d876e tcp_ld_RTO_revert +EXPORT_SYMBOL vmlinux 0x823f7837 devm_clk_hw_register_clkdev +EXPORT_SYMBOL vmlinux 0x8266e180 nf_unregister_net_hook +EXPORT_SYMBOL vmlinux 0x827c99c0 bd_abort_claiming +EXPORT_SYMBOL vmlinux 0x828062b1 __frontswap_init +EXPORT_SYMBOL vmlinux 0x829674e1 pci_unmap_rom +EXPORT_SYMBOL vmlinux 0x829823e0 free_inode_nonrcu +EXPORT_SYMBOL vmlinux 0x82c87ad5 nr_online_nodes +EXPORT_SYMBOL vmlinux 0x830a8203 inet_proto_csum_replace4 +EXPORT_SYMBOL vmlinux 0x832690ff phy_do_ioctl +EXPORT_SYMBOL vmlinux 0x83296e60 pci_request_regions +EXPORT_SYMBOL vmlinux 0x834658ac cmxgcr_lock +EXPORT_SYMBOL vmlinux 0x834e5921 jbd2_trans_will_send_data_barrier +EXPORT_SYMBOL vmlinux 0x83581089 gf128mul_init_4k_lle +EXPORT_SYMBOL vmlinux 0x8382952e abx500_set_register_interruptible +EXPORT_SYMBOL vmlinux 0x8389d2cd set_anon_super_fc +EXPORT_SYMBOL vmlinux 0x838d2bc8 siphash_3u32 +EXPORT_SYMBOL vmlinux 0x838f0b22 unregister_mii_tstamp_controller +EXPORT_SYMBOL vmlinux 0x83ba312a pnv_cxl_release_hwirqs +EXPORT_SYMBOL vmlinux 0x83c52fba xfrm4_protocol_init +EXPORT_SYMBOL vmlinux 0x83c91007 take_dentry_name_snapshot +EXPORT_SYMBOL vmlinux 0x83e1dc93 blk_rq_map_user +EXPORT_SYMBOL vmlinux 0x83f59a2a skb_csum_hwoffload_help +EXPORT_SYMBOL vmlinux 0x83f711fe key_revoke +EXPORT_SYMBOL vmlinux 0x83f9521c cpumask_any_but +EXPORT_SYMBOL vmlinux 0x840342c6 sgl_free +EXPORT_SYMBOL vmlinux 0x84069096 pci_set_master +EXPORT_SYMBOL vmlinux 0x840c6680 dev_change_proto_down +EXPORT_SYMBOL vmlinux 0x840c9078 eth_header +EXPORT_SYMBOL vmlinux 0x84156834 __next_node_in +EXPORT_SYMBOL vmlinux 0x84158a95 xsk_clear_tx_need_wakeup +EXPORT_SYMBOL vmlinux 0x8475cfd3 dcbnl_ieee_notify +EXPORT_SYMBOL vmlinux 0x847e5432 phy_mii_ioctl +EXPORT_SYMBOL vmlinux 0x8489e24a netdev_lower_get_next_private_rcu +EXPORT_SYMBOL vmlinux 0x848d372e iowrite8 +EXPORT_SYMBOL vmlinux 0x848f09ab dev_addr_add +EXPORT_SYMBOL vmlinux 0x849fe807 csum_and_copy_from_user +EXPORT_SYMBOL vmlinux 0x84bd69bf dq_data_lock +EXPORT_SYMBOL vmlinux 0x84c2644e tty_chars_in_buffer +EXPORT_SYMBOL vmlinux 0x84c4fb44 of_scan_pci_bridge +EXPORT_SYMBOL vmlinux 0x84f31275 of_n_addr_cells +EXPORT_SYMBOL vmlinux 0x84f3c134 proc_doulongvec_minmax +EXPORT_SYMBOL vmlinux 0x85238dab devm_pci_remap_cfg_resource +EXPORT_SYMBOL vmlinux 0x85248886 simple_rename +EXPORT_SYMBOL vmlinux 0x85250ccc xa_store_range +EXPORT_SYMBOL vmlinux 0x852ef292 dquot_acquire +EXPORT_SYMBOL vmlinux 0x853ba9f8 mipi_dsi_dcs_set_column_address +EXPORT_SYMBOL vmlinux 0x85670f1d rtnl_is_locked +EXPORT_SYMBOL vmlinux 0x8577a116 sb_min_blocksize +EXPORT_SYMBOL vmlinux 0x857f423a alloc_pages_current +EXPORT_SYMBOL vmlinux 0x8587c1ad input_close_device +EXPORT_SYMBOL vmlinux 0x8591d7d5 ledtrig_mtd_activity +EXPORT_SYMBOL vmlinux 0x8596ccad d_add_ci +EXPORT_SYMBOL vmlinux 0x8597c05f invalidate_inode_buffers +EXPORT_SYMBOL vmlinux 0x8597eb47 plpar_hcall +EXPORT_SYMBOL vmlinux 0x85b3efa3 tcf_exts_change +EXPORT_SYMBOL vmlinux 0x85b4cf2f utf8nlen +EXPORT_SYMBOL vmlinux 0x85b5e625 rfkill_set_states +EXPORT_SYMBOL vmlinux 0x85bd1608 __request_region +EXPORT_SYMBOL vmlinux 0x85df9b6c strsep +EXPORT_SYMBOL vmlinux 0x85efc7e0 zero_pfn +EXPORT_SYMBOL vmlinux 0x85f4ee33 skb_trim +EXPORT_SYMBOL vmlinux 0x85fbc931 slhc_uncompress +EXPORT_SYMBOL vmlinux 0x860d31a5 __sk_queue_drop_skb +EXPORT_SYMBOL vmlinux 0x8623ae49 pci_alloc_dev +EXPORT_SYMBOL vmlinux 0x862c859c nvdimm_revalidate_disk +EXPORT_SYMBOL vmlinux 0x86329fe7 passthru_features_check +EXPORT_SYMBOL vmlinux 0x86332725 __stack_chk_fail +EXPORT_SYMBOL vmlinux 0x863a276a color_table +EXPORT_SYMBOL vmlinux 0x863e696d fs_param_is_u64 +EXPORT_SYMBOL vmlinux 0x864185d2 ip_tunnel_parse_protocol +EXPORT_SYMBOL vmlinux 0x8645b255 cdev_device_add +EXPORT_SYMBOL vmlinux 0x864ccceb start_tty +EXPORT_SYMBOL vmlinux 0x865029ac __hw_addr_sync +EXPORT_SYMBOL vmlinux 0x8658f079 security_task_getsecid +EXPORT_SYMBOL vmlinux 0x866f3c8b writeback_inodes_sb_nr +EXPORT_SYMBOL vmlinux 0x86811a5b sync_inode_metadata +EXPORT_SYMBOL vmlinux 0x868acba5 get_options +EXPORT_SYMBOL vmlinux 0x86a303af sock_efree +EXPORT_SYMBOL vmlinux 0x86b1026f proc_douintvec +EXPORT_SYMBOL vmlinux 0x86b25850 down_read_killable +EXPORT_SYMBOL vmlinux 0x86b942f0 seq_put_decimal_ll +EXPORT_SYMBOL vmlinux 0x86c8c740 nvm_submit_io_sync +EXPORT_SYMBOL vmlinux 0x86d52ba5 lookup_constant +EXPORT_SYMBOL vmlinux 0x86d8e8d4 udplite_prot +EXPORT_SYMBOL vmlinux 0x86db1cbb rtas_flash_term_hook +EXPORT_SYMBOL vmlinux 0x86e7f09a get_unmapped_area +EXPORT_SYMBOL vmlinux 0x86fb9b05 bitmap_parse_user +EXPORT_SYMBOL vmlinux 0x870fa095 ab3100_event_register +EXPORT_SYMBOL vmlinux 0x87248715 write_cache_pages +EXPORT_SYMBOL vmlinux 0x872a5283 gen_pool_dma_zalloc_align +EXPORT_SYMBOL vmlinux 0x87363516 pci_disable_msi +EXPORT_SYMBOL vmlinux 0x873a53ea __arch_hweight8 +EXPORT_SYMBOL vmlinux 0x8756c914 do_wait_intr_irq +EXPORT_SYMBOL vmlinux 0x87583752 scsi_get_device_flags_keyed +EXPORT_SYMBOL vmlinux 0x8759f064 max8925_set_bits +EXPORT_SYMBOL vmlinux 0x875f372f blk_sync_queue +EXPORT_SYMBOL vmlinux 0x87735d63 ip_route_input_noref +EXPORT_SYMBOL vmlinux 0x878469bd ZSTD_decompressStream +EXPORT_SYMBOL vmlinux 0x87907ca7 security_path_unlink +EXPORT_SYMBOL vmlinux 0x8795a49f pci_reenable_device +EXPORT_SYMBOL vmlinux 0x87ace775 __inet_stream_connect +EXPORT_SYMBOL vmlinux 0x87b74291 dev_printk_emit +EXPORT_SYMBOL vmlinux 0x87b8798d sg_next +EXPORT_SYMBOL vmlinux 0x87b8b9c7 __put_user_ns +EXPORT_SYMBOL vmlinux 0x87b8daff do_splice_direct +EXPORT_SYMBOL vmlinux 0x87cd33d0 always_delete_dentry +EXPORT_SYMBOL vmlinux 0x87d94451 bio_reset +EXPORT_SYMBOL vmlinux 0x87e33ac1 fiemap_prep +EXPORT_SYMBOL vmlinux 0x87fce47a __free_pages +EXPORT_SYMBOL vmlinux 0x88005fbf md_bitmap_end_sync +EXPORT_SYMBOL vmlinux 0x881343e5 input_set_max_poll_interval +EXPORT_SYMBOL vmlinux 0x881bad5e phy_mipi_dphy_config_validate +EXPORT_SYMBOL vmlinux 0x882010de scsi_block_requests +EXPORT_SYMBOL vmlinux 0x8822704d dcb_ieee_getapp_prio_dscp_mask_map +EXPORT_SYMBOL vmlinux 0x88242877 ethtool_op_get_link +EXPORT_SYMBOL vmlinux 0x8827b55c pm860x_reg_write +EXPORT_SYMBOL vmlinux 0x882a9c54 of_find_all_nodes +EXPORT_SYMBOL vmlinux 0x884a7af9 d_splice_alias +EXPORT_SYMBOL vmlinux 0x88614d64 netdev_bind_sb_channel_queue +EXPORT_SYMBOL vmlinux 0x8861f901 sync_file_create +EXPORT_SYMBOL vmlinux 0x88822d38 unregister_blocking_lsm_notifier +EXPORT_SYMBOL vmlinux 0x8883c3e9 mount_subtree +EXPORT_SYMBOL vmlinux 0x8888f005 netdev_get_xmit_slave +EXPORT_SYMBOL vmlinux 0x8888f1fe xxh32 +EXPORT_SYMBOL vmlinux 0x88993295 dma_fence_match_context +EXPORT_SYMBOL vmlinux 0x889e3f89 lock_sock_fast +EXPORT_SYMBOL vmlinux 0x889f59a2 sock_no_linger +EXPORT_SYMBOL vmlinux 0x88abb78b ZSTD_insertBlock +EXPORT_SYMBOL vmlinux 0x88ad0595 seg6_hmac_info_del +EXPORT_SYMBOL vmlinux 0x88af2dbd inet6_ioctl +EXPORT_SYMBOL vmlinux 0x88b8a469 __skb_warn_lro_forwarding +EXPORT_SYMBOL vmlinux 0x88bf96b9 atomic_dec_and_mutex_lock +EXPORT_SYMBOL vmlinux 0x88cd2cd1 consume_skb +EXPORT_SYMBOL vmlinux 0x88cfe105 key_invalidate +EXPORT_SYMBOL vmlinux 0x88db9f48 __check_object_size +EXPORT_SYMBOL vmlinux 0x88de2810 pcie_get_mps +EXPORT_SYMBOL vmlinux 0x88e1d0f0 page_frag_free +EXPORT_SYMBOL vmlinux 0x88ed9638 xfrm_find_acq_byseq +EXPORT_SYMBOL vmlinux 0x88ee4872 input_enable_softrepeat +EXPORT_SYMBOL vmlinux 0x88ef547c gnet_stats_copy_app +EXPORT_SYMBOL vmlinux 0x88f11a5a __neigh_event_send +EXPORT_SYMBOL vmlinux 0x88ff3cd0 gen_pool_free_owner +EXPORT_SYMBOL vmlinux 0x890158bf tcf_action_check_ctrlact +EXPORT_SYMBOL vmlinux 0x891290f1 register_mii_tstamp_controller +EXPORT_SYMBOL vmlinux 0x895396d0 dev_mc_sync_multiple +EXPORT_SYMBOL vmlinux 0x895577b0 numa_cpu_lookup_table +EXPORT_SYMBOL vmlinux 0x89645323 fs_param_is_string +EXPORT_SYMBOL vmlinux 0x89797060 _raw_read_lock +EXPORT_SYMBOL vmlinux 0x89898459 kvm_irq_bypass +EXPORT_SYMBOL vmlinux 0x89a259e3 migrate_page +EXPORT_SYMBOL vmlinux 0x89a5f4cb __do_once_done +EXPORT_SYMBOL vmlinux 0x89be8a9f show_init_ipc_ns +EXPORT_SYMBOL vmlinux 0x89d7a609 xfrm_state_walk +EXPORT_SYMBOL vmlinux 0x89f18afc done_path_create +EXPORT_SYMBOL vmlinux 0x89f73648 put_cmsg +EXPORT_SYMBOL vmlinux 0x89feaf92 __irq_regs +EXPORT_SYMBOL vmlinux 0x8a1f5a18 release_sock +EXPORT_SYMBOL vmlinux 0x8a2304ce blk_queue_update_dma_pad +EXPORT_SYMBOL vmlinux 0x8a3abaf8 alloc_fddidev +EXPORT_SYMBOL vmlinux 0x8a3cd206 crypto_sha512_finup +EXPORT_SYMBOL vmlinux 0x8a4560d3 trace_raw_output_prep +EXPORT_SYMBOL vmlinux 0x8a47043d LZ4_decompress_safe_continue +EXPORT_SYMBOL vmlinux 0x8a4799bd sk_common_release +EXPORT_SYMBOL vmlinux 0x8a490c90 rfkill_set_sw_state +EXPORT_SYMBOL vmlinux 0x8a4d4379 security_dentry_init_security +EXPORT_SYMBOL vmlinux 0x8a510cd4 iw_handler_set_spy +EXPORT_SYMBOL vmlinux 0x8a54050b __pud_cache_index +EXPORT_SYMBOL vmlinux 0x8a596ffb dma_virt_ops +EXPORT_SYMBOL vmlinux 0x8a5b5b1c pcie_capability_clear_and_set_word +EXPORT_SYMBOL vmlinux 0x8a63f9d9 finish_no_open +EXPORT_SYMBOL vmlinux 0x8a66178d secpath_set +EXPORT_SYMBOL vmlinux 0x8a6af65c kstrtoul_from_user +EXPORT_SYMBOL vmlinux 0x8a6e22a5 tcp_close +EXPORT_SYMBOL vmlinux 0x8a73c194 simple_write_end +EXPORT_SYMBOL vmlinux 0x8a79e14c inet_reqsk_alloc +EXPORT_SYMBOL vmlinux 0x8a7d1c31 high_memory +EXPORT_SYMBOL vmlinux 0x8a8a6c8c mac_find_mode +EXPORT_SYMBOL vmlinux 0x8a948f27 __nla_parse +EXPORT_SYMBOL vmlinux 0x8a954f5f nf_register_net_hook +EXPORT_SYMBOL vmlinux 0x8a994d93 paca_ptrs +EXPORT_SYMBOL vmlinux 0x8a99a016 mempool_free_slab +EXPORT_SYMBOL vmlinux 0x8aa9345b md_cluster_ops +EXPORT_SYMBOL vmlinux 0x8ab5b6da unregister_netdev +EXPORT_SYMBOL vmlinux 0x8ac3334b net_dim_get_def_rx_moderation +EXPORT_SYMBOL vmlinux 0x8ac3bb12 dma_fence_get_stub +EXPORT_SYMBOL vmlinux 0x8ac743de sg_copy_buffer +EXPORT_SYMBOL vmlinux 0x8ace0386 page_pool_alloc_pages +EXPORT_SYMBOL vmlinux 0x8ad2099e tag_pages_for_writeback +EXPORT_SYMBOL vmlinux 0x8ad39905 dma_fence_remove_callback +EXPORT_SYMBOL vmlinux 0x8ad5c5bb jbd2_journal_dirty_metadata +EXPORT_SYMBOL vmlinux 0x8b0088d1 LZ4_decompress_safe_usingDict +EXPORT_SYMBOL vmlinux 0x8b09e65e blk_integrity_register +EXPORT_SYMBOL vmlinux 0x8b1a4042 __ip_mc_dec_group +EXPORT_SYMBOL vmlinux 0x8b3995e4 con_copy_unimap +EXPORT_SYMBOL vmlinux 0x8b618d08 overflowuid +EXPORT_SYMBOL vmlinux 0x8b6cbf3b __dquot_transfer +EXPORT_SYMBOL vmlinux 0x8b728e9d vm_insert_pages +EXPORT_SYMBOL vmlinux 0x8b7950e8 set_groups +EXPORT_SYMBOL vmlinux 0x8b79e0d8 phy_print_status +EXPORT_SYMBOL vmlinux 0x8b8059bd in_group_p +EXPORT_SYMBOL vmlinux 0x8b8246a1 md_bitmap_unplug +EXPORT_SYMBOL vmlinux 0x8b8b24cf __inode_sub_bytes +EXPORT_SYMBOL vmlinux 0x8b910be2 errseq_sample +EXPORT_SYMBOL vmlinux 0x8b95ba41 dma_fence_signal +EXPORT_SYMBOL vmlinux 0x8b9ea582 ZSTD_copyDCtx +EXPORT_SYMBOL vmlinux 0x8ba70ed9 kernel_sock_shutdown +EXPORT_SYMBOL vmlinux 0x8bd53a83 skb_ext_add +EXPORT_SYMBOL vmlinux 0x8bdece97 eth_mac_addr +EXPORT_SYMBOL vmlinux 0x8be189ab ucc_slow_disable +EXPORT_SYMBOL vmlinux 0x8bf1d407 scsi_register_interface +EXPORT_SYMBOL vmlinux 0x8c0a8167 noop_fsync +EXPORT_SYMBOL vmlinux 0x8c194453 block_read_full_page +EXPORT_SYMBOL vmlinux 0x8c25f082 i2c_smbus_write_byte +EXPORT_SYMBOL vmlinux 0x8c4117d1 security_sctp_assoc_request +EXPORT_SYMBOL vmlinux 0x8c491c7d dmaengine_get_unmap_data +EXPORT_SYMBOL vmlinux 0x8c678ac3 icmpv6_send +EXPORT_SYMBOL vmlinux 0x8c6bf651 flow_block_cb_is_busy +EXPORT_SYMBOL vmlinux 0x8c6ce08b jbd2_journal_lock_updates +EXPORT_SYMBOL vmlinux 0x8c7c6548 keyring_search +EXPORT_SYMBOL vmlinux 0x8c8e5243 memcg_sockets_enabled_key +EXPORT_SYMBOL vmlinux 0x8c8ef817 __napi_schedule +EXPORT_SYMBOL vmlinux 0x8c9309ee dma_pool_create +EXPORT_SYMBOL vmlinux 0x8c93f5ca input_mt_sync_frame +EXPORT_SYMBOL vmlinux 0x8c96113f dump_truncate +EXPORT_SYMBOL vmlinux 0x8c9bff9c __cleancache_put_page +EXPORT_SYMBOL vmlinux 0x8cb8f736 netdev_set_sb_channel +EXPORT_SYMBOL vmlinux 0x8cc53d20 __par_io_config_pin +EXPORT_SYMBOL vmlinux 0x8cc79cab iowrite16_rep +EXPORT_SYMBOL vmlinux 0x8ccaed63 pm860x_reg_read +EXPORT_SYMBOL vmlinux 0x8cd56a4b dquot_quota_off +EXPORT_SYMBOL vmlinux 0x8cf52e0f sock_no_sendmsg_locked +EXPORT_SYMBOL vmlinux 0x8d0aef6d __mutex_init +EXPORT_SYMBOL vmlinux 0x8d0c0c5f ns_capable +EXPORT_SYMBOL vmlinux 0x8d2753bc radix_tree_gang_lookup_tag_slot +EXPORT_SYMBOL vmlinux 0x8d28ae56 genphy_suspend +EXPORT_SYMBOL vmlinux 0x8d322f5b xfrm_register_km +EXPORT_SYMBOL vmlinux 0x8d36f784 single_release +EXPORT_SYMBOL vmlinux 0x8d51c686 unregister_binfmt +EXPORT_SYMBOL vmlinux 0x8d55bb8a qid_eq +EXPORT_SYMBOL vmlinux 0x8d6131f5 dquot_destroy +EXPORT_SYMBOL vmlinux 0x8d73278e hex_asc_upper +EXPORT_SYMBOL vmlinux 0x8d827e91 skb_vlan_pop +EXPORT_SYMBOL vmlinux 0x8d9ce724 trace_print_hex_dump_seq +EXPORT_SYMBOL vmlinux 0x8dbb180e fget +EXPORT_SYMBOL vmlinux 0x8dc7504b mipi_dsi_compression_mode +EXPORT_SYMBOL vmlinux 0x8dcd7796 mdiobus_write_nested +EXPORT_SYMBOL vmlinux 0x8ddd8aad schedule_timeout +EXPORT_SYMBOL vmlinux 0x8de30b61 generic_make_request +EXPORT_SYMBOL vmlinux 0x8deb38ab iov_iter_get_pages_alloc +EXPORT_SYMBOL vmlinux 0x8df1bf74 cgroup_bpf_enabled_key +EXPORT_SYMBOL vmlinux 0x8df4afd9 qe_put_snum +EXPORT_SYMBOL vmlinux 0x8df92f66 memchr_inv +EXPORT_SYMBOL vmlinux 0x8df9dd10 guid_null +EXPORT_SYMBOL vmlinux 0x8dfa7a71 cookie_ecn_ok +EXPORT_SYMBOL vmlinux 0x8e148f49 gnet_stats_copy_basic_hw +EXPORT_SYMBOL vmlinux 0x8e1d2dc0 bio_integrity_clone +EXPORT_SYMBOL vmlinux 0x8e20f00c nf_ip_checksum +EXPORT_SYMBOL vmlinux 0x8e2e206e mmc_gpiod_request_cd +EXPORT_SYMBOL vmlinux 0x8e33d1be nobh_write_end +EXPORT_SYMBOL vmlinux 0x8e4c60a3 cpm_muram_dma +EXPORT_SYMBOL vmlinux 0x8e63eac9 logfc +EXPORT_SYMBOL vmlinux 0x8e687213 proc_set_user +EXPORT_SYMBOL vmlinux 0x8e6bdc94 locks_init_lock +EXPORT_SYMBOL vmlinux 0x8e859bc5 dev_alloc_name +EXPORT_SYMBOL vmlinux 0x8e8c0172 tcp_peek_len +EXPORT_SYMBOL vmlinux 0x8e93bd24 security_secctx_to_secid +EXPORT_SYMBOL vmlinux 0x8e97cbda irq_stat +EXPORT_SYMBOL vmlinux 0x8ea15ad3 iov_iter_fault_in_readable +EXPORT_SYMBOL vmlinux 0x8eb2a6f1 pci_back_from_sleep +EXPORT_SYMBOL vmlinux 0x8eb681a0 udp_sendmsg +EXPORT_SYMBOL vmlinux 0x8ebfa049 disk_end_io_acct +EXPORT_SYMBOL vmlinux 0x8ec04552 _raw_spin_trylock_bh +EXPORT_SYMBOL vmlinux 0x8edbf7df __ip_mc_inc_group +EXPORT_SYMBOL vmlinux 0x8edf3e8c inet6_register_icmp_sender +EXPORT_SYMBOL vmlinux 0x8ef6a5dc dm_kcopyd_copy +EXPORT_SYMBOL vmlinux 0x8ef71102 build_skb +EXPORT_SYMBOL vmlinux 0x8f01afd6 twl6030_interrupt_mask +EXPORT_SYMBOL vmlinux 0x8f1a6868 vfs_mknod +EXPORT_SYMBOL vmlinux 0x8f5ffb52 neigh_parms_release +EXPORT_SYMBOL vmlinux 0x8f62f3d2 delete_from_page_cache +EXPORT_SYMBOL vmlinux 0x8f68da79 __cpu_online_mask +EXPORT_SYMBOL vmlinux 0x8f6d91ae twl6040_get_sysclk +EXPORT_SYMBOL vmlinux 0x8f73ffe7 dma_direct_map_sg +EXPORT_SYMBOL vmlinux 0x8f7c6b99 pci_save_state +EXPORT_SYMBOL vmlinux 0x8f996a30 ethtool_convert_legacy_u32_to_link_mode +EXPORT_SYMBOL vmlinux 0x8fda23da lock_page_memcg +EXPORT_SYMBOL vmlinux 0x8ff89ed0 seg6_hmac_exit +EXPORT_SYMBOL vmlinux 0x8ffbdba9 blk_limits_io_min +EXPORT_SYMBOL vmlinux 0x8ffbe8b4 kmem_cache_alloc_node_trace +EXPORT_SYMBOL vmlinux 0x9008bf74 __devm_release_region +EXPORT_SYMBOL vmlinux 0x9010b37f compat_nf_setsockopt +EXPORT_SYMBOL vmlinux 0x9023361b proc_dointvec_minmax +EXPORT_SYMBOL vmlinux 0x902d8722 vme_slave_get +EXPORT_SYMBOL vmlinux 0x9044c637 would_dump +EXPORT_SYMBOL vmlinux 0x9054ee54 ethtool_intersect_link_masks +EXPORT_SYMBOL vmlinux 0x905695ab sg_copy_from_buffer +EXPORT_SYMBOL vmlinux 0x90576ec4 vmemdup_user +EXPORT_SYMBOL vmlinux 0x906c823d ipv6_skip_exthdr +EXPORT_SYMBOL vmlinux 0x90735686 netif_schedule_queue +EXPORT_SYMBOL vmlinux 0x907ae61b alloc_netdev_mqs +EXPORT_SYMBOL vmlinux 0x9091d76b pcibus_to_node +EXPORT_SYMBOL vmlinux 0x9099b41e tcf_block_netif_keep_dst +EXPORT_SYMBOL vmlinux 0x90ab3180 skb_coalesce_rx_frag +EXPORT_SYMBOL vmlinux 0x90c2953c generic_write_end +EXPORT_SYMBOL vmlinux 0x90c73313 __block_write_full_page +EXPORT_SYMBOL vmlinux 0x90d538e9 mark_buffer_dirty_inode +EXPORT_SYMBOL vmlinux 0x90ee3380 twl6030_mmc_card_detect +EXPORT_SYMBOL vmlinux 0x90ee582f uart_unregister_driver +EXPORT_SYMBOL vmlinux 0x9100278f xfrm_state_alloc +EXPORT_SYMBOL vmlinux 0x910145cd tcp_poll +EXPORT_SYMBOL vmlinux 0x91045b31 phy_ethtool_ksettings_set +EXPORT_SYMBOL vmlinux 0x91101687 __sock_cmsg_send +EXPORT_SYMBOL vmlinux 0x912557ce rtas_busy_delay +EXPORT_SYMBOL vmlinux 0x9144eb77 ip_check_defrag +EXPORT_SYMBOL vmlinux 0x9147a4ab generic_update_time +EXPORT_SYMBOL vmlinux 0x914a4b68 __zerocopy_sg_from_iter +EXPORT_SYMBOL vmlinux 0x915ad5c3 nvdimm_namespace_capacity +EXPORT_SYMBOL vmlinux 0x915e1208 tb_ticks_per_usec +EXPORT_SYMBOL vmlinux 0x9160847d pci_domain_nr +EXPORT_SYMBOL vmlinux 0x9166fada strncpy +EXPORT_SYMBOL vmlinux 0x9168c033 rtas_get_sensor +EXPORT_SYMBOL vmlinux 0x9175c1d3 ipv6_mc_check_mld +EXPORT_SYMBOL vmlinux 0x918e576c key_task_permission +EXPORT_SYMBOL vmlinux 0x9195fe8e skb_kill_datagram +EXPORT_SYMBOL vmlinux 0x919c58f3 __clzsi2 +EXPORT_SYMBOL vmlinux 0x919d1163 tty_termios_baud_rate +EXPORT_SYMBOL vmlinux 0x91a7b1da qdisc_class_hash_remove +EXPORT_SYMBOL vmlinux 0x91cbe897 security_old_inode_init_security +EXPORT_SYMBOL vmlinux 0x91e49704 watchdog_unregister_governor +EXPORT_SYMBOL vmlinux 0x91fc64a4 qdisc_reset +EXPORT_SYMBOL vmlinux 0x92123440 kern_path_create +EXPORT_SYMBOL vmlinux 0x92150359 xfrm_dev_state_flush +EXPORT_SYMBOL vmlinux 0x922edd16 sk_wait_data +EXPORT_SYMBOL vmlinux 0x922f45a6 __bitmap_clear +EXPORT_SYMBOL vmlinux 0x923b1276 dmaengine_get +EXPORT_SYMBOL vmlinux 0x924e9e4a pci_write_config_word +EXPORT_SYMBOL vmlinux 0x9250c312 xfrm_policy_byid +EXPORT_SYMBOL vmlinux 0x9251f0d2 wait_for_completion +EXPORT_SYMBOL vmlinux 0x92536a99 of_mdio_find_bus +EXPORT_SYMBOL vmlinux 0x9258c776 hdmi_vendor_infoframe_pack_only +EXPORT_SYMBOL vmlinux 0x9276bb86 rtc_add_group +EXPORT_SYMBOL vmlinux 0x9291cd3b memdup_user +EXPORT_SYMBOL vmlinux 0x92abe166 param_array_ops +EXPORT_SYMBOL vmlinux 0x92b9b180 slash_name +EXPORT_SYMBOL vmlinux 0x92c42d6e flow_block_cb_incref +EXPORT_SYMBOL vmlinux 0x92c5efdf flow_rule_match_ip +EXPORT_SYMBOL vmlinux 0x92c755bb flow_rule_match_enc_keyid +EXPORT_SYMBOL vmlinux 0x92d3d263 fifo_create_dflt +EXPORT_SYMBOL vmlinux 0x92d895cd agp_generic_free_by_type +EXPORT_SYMBOL vmlinux 0x92ec510d jiffies64_to_msecs +EXPORT_SYMBOL vmlinux 0x92fa5abb vme_lm_detach +EXPORT_SYMBOL vmlinux 0x93022ba6 __scsi_format_command +EXPORT_SYMBOL vmlinux 0x9303ba32 tty_port_destroy +EXPORT_SYMBOL vmlinux 0x9305bf68 find_next_and_bit +EXPORT_SYMBOL vmlinux 0x9305f8e6 cpufreq_get +EXPORT_SYMBOL vmlinux 0x930780f7 register_md_personality +EXPORT_SYMBOL vmlinux 0x93261483 file_modified +EXPORT_SYMBOL vmlinux 0x932c631e node_data +EXPORT_SYMBOL vmlinux 0x934e72e9 __tracepoint_kmalloc +EXPORT_SYMBOL vmlinux 0x935ef6df unregister_md_personality +EXPORT_SYMBOL vmlinux 0x9369335e serio_unregister_port +EXPORT_SYMBOL vmlinux 0x937733e3 qid_valid +EXPORT_SYMBOL vmlinux 0x93880dad pci_find_bus +EXPORT_SYMBOL vmlinux 0x93a10be6 put_fs_context +EXPORT_SYMBOL vmlinux 0x93a6e0b2 io_schedule +EXPORT_SYMBOL vmlinux 0x93a8d88a __module_get +EXPORT_SYMBOL vmlinux 0x93b3fc74 register_dcbevent_notifier +EXPORT_SYMBOL vmlinux 0x93c1992f nla_put_nohdr +EXPORT_SYMBOL vmlinux 0x93cae0cc skb_vlan_untag +EXPORT_SYMBOL vmlinux 0x93d269dc skb_clone_sk +EXPORT_SYMBOL vmlinux 0x93db216b ip_mc_inc_group +EXPORT_SYMBOL vmlinux 0x93f3ea71 page_pool_put_page +EXPORT_SYMBOL vmlinux 0x93f41378 md_bitmap_endwrite +EXPORT_SYMBOL vmlinux 0x93f89148 unlock_page_memcg +EXPORT_SYMBOL vmlinux 0x93f8cce9 pci_wait_for_pending_transaction +EXPORT_SYMBOL vmlinux 0x9415a65f cdrom_open +EXPORT_SYMBOL vmlinux 0x9428f816 dim_turn +EXPORT_SYMBOL vmlinux 0x942b8618 sock_set_priority +EXPORT_SYMBOL vmlinux 0x9438adc2 seq_pad +EXPORT_SYMBOL vmlinux 0x943dc80f csum_and_copy_to_user +EXPORT_SYMBOL vmlinux 0x943f1aeb mmc_card_is_blockaddr +EXPORT_SYMBOL vmlinux 0x94408e04 flow_rule_match_tcp +EXPORT_SYMBOL vmlinux 0x94421260 tcp_release_cb +EXPORT_SYMBOL vmlinux 0x944375db _totalram_pages +EXPORT_SYMBOL vmlinux 0x944a564d is_console_locked +EXPORT_SYMBOL vmlinux 0x94667988 trace_print_flags_seq +EXPORT_SYMBOL vmlinux 0x9489e920 i2c_add_adapter +EXPORT_SYMBOL vmlinux 0x94961283 vunmap +EXPORT_SYMBOL vmlinux 0x94a5fd84 proc_dointvec_jiffies +EXPORT_SYMBOL vmlinux 0x94abf841 sg_miter_next +EXPORT_SYMBOL vmlinux 0x94bf03ca utf8_to_utf32 +EXPORT_SYMBOL vmlinux 0x94d8c5ea phy_read_paged +EXPORT_SYMBOL vmlinux 0x94e481cf ZSTD_adjustCParams +EXPORT_SYMBOL vmlinux 0x94f042ed jbd2_journal_unlock_updates +EXPORT_SYMBOL vmlinux 0x9508948a xfrm_parse_spi +EXPORT_SYMBOL vmlinux 0x9514151a _mcount +EXPORT_SYMBOL vmlinux 0x951adce5 register_md_cluster_operations +EXPORT_SYMBOL vmlinux 0x9545af6d tasklet_init +EXPORT_SYMBOL vmlinux 0x954f099c idr_preload +EXPORT_SYMBOL vmlinux 0x956c90f1 vfs_statx_fd +EXPORT_SYMBOL vmlinux 0x95722936 ucc_fast_transmit_on_demand +EXPORT_SYMBOL vmlinux 0x957e1fff __splice_from_pipe +EXPORT_SYMBOL vmlinux 0x95874001 elevator_alloc +EXPORT_SYMBOL vmlinux 0x95888e7c thaw_bdev +EXPORT_SYMBOL vmlinux 0x95a43960 phy_ethtool_get_eee +EXPORT_SYMBOL vmlinux 0x95c6c48a qe_pin_set_gpio +EXPORT_SYMBOL vmlinux 0x95c77bcc inode_needs_sync +EXPORT_SYMBOL vmlinux 0x95df4d59 netdev_lower_state_changed +EXPORT_SYMBOL vmlinux 0x95fafd40 tc_setup_cb_destroy +EXPORT_SYMBOL vmlinux 0x95fcd441 __nla_put_nohdr +EXPORT_SYMBOL vmlinux 0x9600711a config_item_get +EXPORT_SYMBOL vmlinux 0x96021c21 setattr_copy +EXPORT_SYMBOL vmlinux 0x961b0eb3 blk_queue_dma_alignment +EXPORT_SYMBOL vmlinux 0x96234a08 of_platform_bus_probe +EXPORT_SYMBOL vmlinux 0x962c4977 clkdev_add +EXPORT_SYMBOL vmlinux 0x962f3c86 tcf_classify_ingress +EXPORT_SYMBOL vmlinux 0x9631f354 clk_bulk_get +EXPORT_SYMBOL vmlinux 0x9637d578 inet_frags_fini +EXPORT_SYMBOL vmlinux 0x96416fcd mipi_dsi_device_unregister +EXPORT_SYMBOL vmlinux 0x9659d589 nd_dev_to_uuid +EXPORT_SYMBOL vmlinux 0x967e267c rproc_boot +EXPORT_SYMBOL vmlinux 0x96848186 scnprintf +EXPORT_SYMBOL vmlinux 0x969987fc lockref_get_not_dead +EXPORT_SYMBOL vmlinux 0x969f154d trace_seq_hex_dump +EXPORT_SYMBOL vmlinux 0x96b29254 strncasecmp +EXPORT_SYMBOL vmlinux 0x96b6f210 add_random_ready_callback +EXPORT_SYMBOL vmlinux 0x96ba35a6 pci_disable_device +EXPORT_SYMBOL vmlinux 0x96ba778d fb_blank +EXPORT_SYMBOL vmlinux 0x96c17136 fb_var_to_videomode +EXPORT_SYMBOL vmlinux 0x96caf74d msi_bitmap_free_hwirqs +EXPORT_SYMBOL vmlinux 0x96cbf20f serio_bus +EXPORT_SYMBOL vmlinux 0x96cd2b04 scsi_sense_key_string +EXPORT_SYMBOL vmlinux 0x96f2a9d5 single_open +EXPORT_SYMBOL vmlinux 0x96f449c6 set_anon_super +EXPORT_SYMBOL vmlinux 0x96fab350 dim_park_on_top +EXPORT_SYMBOL vmlinux 0x97149b10 dec_zone_page_state +EXPORT_SYMBOL vmlinux 0x971e3fd7 del_gendisk +EXPORT_SYMBOL vmlinux 0x971ec27c hvc_put_chars +EXPORT_SYMBOL vmlinux 0x9722e406 wake_up_process +EXPORT_SYMBOL vmlinux 0x973c09e5 __pgd_index_size +EXPORT_SYMBOL vmlinux 0x9746eb89 ZSTD_decompressBegin_usingDict +EXPORT_SYMBOL vmlinux 0x97627c07 scsi_cmd_blk_ioctl +EXPORT_SYMBOL vmlinux 0x9790b2b0 rt6_lookup +EXPORT_SYMBOL vmlinux 0x97934ecf del_timer_sync +EXPORT_SYMBOL vmlinux 0x9793cc34 param_get_long +EXPORT_SYMBOL vmlinux 0x97999817 rfkill_set_hw_state +EXPORT_SYMBOL vmlinux 0x97a3734b blkdev_get_by_path +EXPORT_SYMBOL vmlinux 0x97a4114f vfs_link +EXPORT_SYMBOL vmlinux 0x97a57333 crc_t10dif_update +EXPORT_SYMBOL vmlinux 0x97aad49b input_flush_device +EXPORT_SYMBOL vmlinux 0x97adb487 utf8s_to_utf16s +EXPORT_SYMBOL vmlinux 0x97b09320 sock_i_uid +EXPORT_SYMBOL vmlinux 0x97bdfa60 scsi_dev_info_remove_list +EXPORT_SYMBOL vmlinux 0x97c0e025 devm_mfd_add_devices +EXPORT_SYMBOL vmlinux 0x97c5521c pci_find_capability +EXPORT_SYMBOL vmlinux 0x97c85529 _dev_warn +EXPORT_SYMBOL vmlinux 0x97d5403a pci_read_config_byte +EXPORT_SYMBOL vmlinux 0x97de0921 __page_cache_alloc +EXPORT_SYMBOL vmlinux 0x97e64f04 write_dirty_buffer +EXPORT_SYMBOL vmlinux 0x97e9dcfc follow_pfn +EXPORT_SYMBOL vmlinux 0x97eb3f6d param_ops_bool +EXPORT_SYMBOL vmlinux 0x97f03d6f vio_cmo_entitlement_update +EXPORT_SYMBOL vmlinux 0x982571f4 eth_commit_mac_addr_change +EXPORT_SYMBOL vmlinux 0x9829fc11 __kfifo_out_peek_r +EXPORT_SYMBOL vmlinux 0x9832b2f9 __i2c_smbus_xfer +EXPORT_SYMBOL vmlinux 0x98358c66 compat_nf_getsockopt +EXPORT_SYMBOL vmlinux 0x98553720 blk_rq_count_integrity_sg +EXPORT_SYMBOL vmlinux 0x985b14fd percpu_counter_set +EXPORT_SYMBOL vmlinux 0x9869f6ba pps_register_source +EXPORT_SYMBOL vmlinux 0x987d398e tcp_create_openreq_child +EXPORT_SYMBOL vmlinux 0x989760a6 i2c_smbus_read_i2c_block_data_or_emulated +EXPORT_SYMBOL vmlinux 0x98aff406 mmc_wait_for_cmd +EXPORT_SYMBOL vmlinux 0x98c89ade security_xfrm_state_alloc +EXPORT_SYMBOL vmlinux 0x98cf60b3 strlen +EXPORT_SYMBOL vmlinux 0x98e508ef ignore_console_lock_warning +EXPORT_SYMBOL vmlinux 0x98e8bd7b cdev_del +EXPORT_SYMBOL vmlinux 0x98eb14fd tty_lock +EXPORT_SYMBOL vmlinux 0x9905a500 pci_prepare_to_sleep +EXPORT_SYMBOL vmlinux 0x9937d0d0 dquot_commit_info +EXPORT_SYMBOL vmlinux 0x9939eba0 backlight_unregister_notifier +EXPORT_SYMBOL vmlinux 0x99432bee of_graph_get_remote_node +EXPORT_SYMBOL vmlinux 0x99517682 udp_encap_enable +EXPORT_SYMBOL vmlinux 0x995539b0 netdev_lower_get_first_private_rcu +EXPORT_SYMBOL vmlinux 0x995cd0d3 qdisc_hash_del +EXPORT_SYMBOL vmlinux 0x99622c0a dev_add_pack +EXPORT_SYMBOL vmlinux 0x9979edfc lock_sock_nested +EXPORT_SYMBOL vmlinux 0x997ff4d5 seq_puts +EXPORT_SYMBOL vmlinux 0x9988f554 sock_no_getsockopt +EXPORT_SYMBOL vmlinux 0x9995ce9d dm_kcopyd_zero +EXPORT_SYMBOL vmlinux 0x999e8297 vfree +EXPORT_SYMBOL vmlinux 0x99adbd59 d_alloc_name +EXPORT_SYMBOL vmlinux 0x99afe916 _raw_write_unlock_bh +EXPORT_SYMBOL vmlinux 0x99c9bf38 of_node_name_eq +EXPORT_SYMBOL vmlinux 0x99d472b1 net_dim_get_rx_moderation +EXPORT_SYMBOL vmlinux 0x99daa9bf try_offline_node +EXPORT_SYMBOL vmlinux 0x99f41c7d unregister_netdevice_notifier_dev_net +EXPORT_SYMBOL vmlinux 0x99f646a2 blk_queue_max_write_zeroes_sectors +EXPORT_SYMBOL vmlinux 0x9a06aa6d tcf_action_exec +EXPORT_SYMBOL vmlinux 0x9a0728dd netlink_kernel_release +EXPORT_SYMBOL vmlinux 0x9a0c3a18 vme_unregister_error_handler +EXPORT_SYMBOL vmlinux 0x9a19ec50 make_flow_keys_digest +EXPORT_SYMBOL vmlinux 0x9a1dfd65 strpbrk +EXPORT_SYMBOL vmlinux 0x9a20e2fd inet_accept +EXPORT_SYMBOL vmlinux 0x9a23efdd gnet_stats_start_copy_compat +EXPORT_SYMBOL vmlinux 0x9a583306 netlbl_bitmap_walk +EXPORT_SYMBOL vmlinux 0x9a5a0e27 __mark_inode_dirty +EXPORT_SYMBOL vmlinux 0x9a5efbfb truncate_pagecache_range +EXPORT_SYMBOL vmlinux 0x9a73b032 ZSTD_initDStream_usingDDict +EXPORT_SYMBOL vmlinux 0x9a87a33f do_clone_file_range +EXPORT_SYMBOL vmlinux 0x9a87bfe2 md_bitmap_cond_end_sync +EXPORT_SYMBOL vmlinux 0x9a8c5bfa vga_get +EXPORT_SYMBOL vmlinux 0x9a94233e PageMovable +EXPORT_SYMBOL vmlinux 0x9a94b808 of_get_mac_address +EXPORT_SYMBOL vmlinux 0x9a9ff337 phy_support_sym_pause +EXPORT_SYMBOL vmlinux 0x9aa569ca dev_trans_start +EXPORT_SYMBOL vmlinux 0x9aaeefce sysctl_nf_log_all_netns +EXPORT_SYMBOL vmlinux 0x9abc9214 devm_request_any_context_irq +EXPORT_SYMBOL vmlinux 0x9ac5074c dma_resv_add_excl_fence +EXPORT_SYMBOL vmlinux 0x9ac99786 devm_gen_pool_create +EXPORT_SYMBOL vmlinux 0x9acde112 gtm_ack_timer16 +EXPORT_SYMBOL vmlinux 0x9aea6fa1 build_skb_around +EXPORT_SYMBOL vmlinux 0x9aea8f42 jbd2_journal_set_features +EXPORT_SYMBOL vmlinux 0x9aff0a3f param_set_bool +EXPORT_SYMBOL vmlinux 0x9b02c08f __dev_get_by_flags +EXPORT_SYMBOL vmlinux 0x9b0aff98 xfrm6_rcv +EXPORT_SYMBOL vmlinux 0x9b0c0d6e __alloc_skb +EXPORT_SYMBOL vmlinux 0x9b2560b9 gf128mul_init_4k_bbe +EXPORT_SYMBOL vmlinux 0x9b33e0d7 unregister_dcbevent_notifier +EXPORT_SYMBOL vmlinux 0x9b420478 utf8_strncasecmp +EXPORT_SYMBOL vmlinux 0x9b461a0d bio_init +EXPORT_SYMBOL vmlinux 0x9b4754c8 pm_vt_switch_required +EXPORT_SYMBOL vmlinux 0x9b496b21 posix_acl_alloc +EXPORT_SYMBOL vmlinux 0x9b4f6a14 brioctl_set +EXPORT_SYMBOL vmlinux 0x9b5b080f neigh_lookup +EXPORT_SYMBOL vmlinux 0x9b5b524f jbd2_journal_init_inode +EXPORT_SYMBOL vmlinux 0x9b66d8cf ip_sock_set_tos +EXPORT_SYMBOL vmlinux 0x9b86ad3e get_super_exclusive_thawed +EXPORT_SYMBOL vmlinux 0x9b8dcb34 jbd2_journal_set_triggers +EXPORT_SYMBOL vmlinux 0x9b9d1c8d udp_sk_rx_dst_set +EXPORT_SYMBOL vmlinux 0x9bbaeedf file_check_and_advance_wb_err +EXPORT_SYMBOL vmlinux 0x9bc4b0e4 napi_disable +EXPORT_SYMBOL vmlinux 0x9bc6d74f __ip4_datagram_connect +EXPORT_SYMBOL vmlinux 0x9bc8979a __cleancache_init_fs +EXPORT_SYMBOL vmlinux 0x9bc8a832 __debugger_break_match +EXPORT_SYMBOL vmlinux 0x9bf5c2f7 sock_wfree +EXPORT_SYMBOL vmlinux 0x9bfaae60 phy_drivers_unregister +EXPORT_SYMBOL vmlinux 0x9c0cd019 ppp_output_wakeup +EXPORT_SYMBOL vmlinux 0x9c1eea39 scsi_device_get +EXPORT_SYMBOL vmlinux 0x9c4661dc sk_send_sigurg +EXPORT_SYMBOL vmlinux 0x9c57e2cf blk_execute_rq +EXPORT_SYMBOL vmlinux 0x9c5a7f66 dev_mc_add_global +EXPORT_SYMBOL vmlinux 0x9c6e6125 mmc_hw_reset +EXPORT_SYMBOL vmlinux 0x9c7f9a38 agp_alloc_page_array +EXPORT_SYMBOL vmlinux 0x9c8942df noop_qdisc +EXPORT_SYMBOL vmlinux 0x9c8b51a3 grab_cache_page_write_begin +EXPORT_SYMBOL vmlinux 0x9c942adc vprintk_emit +EXPORT_SYMBOL vmlinux 0x9c96efc7 cfb_copyarea +EXPORT_SYMBOL vmlinux 0x9cab34a6 rfkill_set_led_trigger_name +EXPORT_SYMBOL vmlinux 0x9cabaea1 open_with_fake_path +EXPORT_SYMBOL vmlinux 0x9cca87a6 pci_bus_read_config_byte +EXPORT_SYMBOL vmlinux 0x9ccf7171 vme_dma_pci_attribute +EXPORT_SYMBOL vmlinux 0x9cdfb3f7 sysctl_fb_tunnels_only_for_init_net +EXPORT_SYMBOL vmlinux 0x9cf353e4 scsi_compat_ioctl +EXPORT_SYMBOL vmlinux 0x9cf776f9 tty_kref_put +EXPORT_SYMBOL vmlinux 0x9d05ac75 srp_timed_out +EXPORT_SYMBOL vmlinux 0x9d0d6206 unregister_netdevice_notifier +EXPORT_SYMBOL vmlinux 0x9d14983a ppc_enable_pmcs +EXPORT_SYMBOL vmlinux 0x9d1642b4 kobject_set_name +EXPORT_SYMBOL vmlinux 0x9d17ce01 drop_nlink +EXPORT_SYMBOL vmlinux 0x9d2535dd mark_buffer_async_write +EXPORT_SYMBOL vmlinux 0x9d2e7707 unregister_sysrq_key +EXPORT_SYMBOL vmlinux 0x9d3f282d pnv_cxl_alloc_hwirqs +EXPORT_SYMBOL vmlinux 0x9d4b8997 inode_permission +EXPORT_SYMBOL vmlinux 0x9d557d5a rtas +EXPORT_SYMBOL vmlinux 0x9d7ce8dd _raw_spin_trylock +EXPORT_SYMBOL vmlinux 0x9d96a9b0 mmu_hash_ops +EXPORT_SYMBOL vmlinux 0x9d97ab2c audit_log_object_context +EXPORT_SYMBOL vmlinux 0x9d9ad7a1 sk_filter_trim_cap +EXPORT_SYMBOL vmlinux 0x9d9e4c17 seg6_hmac_net_exit +EXPORT_SYMBOL vmlinux 0x9d9e8732 of_get_next_parent +EXPORT_SYMBOL vmlinux 0x9da4745c netdev_info +EXPORT_SYMBOL vmlinux 0x9da53049 from_kprojid +EXPORT_SYMBOL vmlinux 0x9db16840 __xfrm_policy_check +EXPORT_SYMBOL vmlinux 0x9dc31817 sk_capable +EXPORT_SYMBOL vmlinux 0x9dc4a1d4 blackhole_netdev +EXPORT_SYMBOL vmlinux 0x9dd069ed max8925_reg_read +EXPORT_SYMBOL vmlinux 0x9dd8dd57 load_fp_state +EXPORT_SYMBOL vmlinux 0x9de706b5 mempool_destroy +EXPORT_SYMBOL vmlinux 0x9e0c711d vzalloc_node +EXPORT_SYMBOL vmlinux 0x9e0fa5ae hsiphash_3u32 +EXPORT_SYMBOL vmlinux 0x9e13f6f6 gf128mul_lle +EXPORT_SYMBOL vmlinux 0x9e2b4773 rtnl_create_link +EXPORT_SYMBOL vmlinux 0x9e354b96 xfrm_policy_walk_done +EXPORT_SYMBOL vmlinux 0x9e39d397 timer_interrupt +EXPORT_SYMBOL vmlinux 0x9e3b4bc7 vm_insert_page +EXPORT_SYMBOL vmlinux 0x9e481d8c set_posix_acl +EXPORT_SYMBOL vmlinux 0x9e4cc556 of_device_register +EXPORT_SYMBOL vmlinux 0x9e4faeef dm_io_client_destroy +EXPORT_SYMBOL vmlinux 0x9e558dff scsi_change_queue_depth +EXPORT_SYMBOL vmlinux 0x9e61bb05 set_freezable +EXPORT_SYMBOL vmlinux 0x9e6ce293 sock_pfree +EXPORT_SYMBOL vmlinux 0x9e6dea68 t10_pi_type3_ip +EXPORT_SYMBOL vmlinux 0x9e887859 end_buffer_read_sync +EXPORT_SYMBOL vmlinux 0x9e97375d rtas_busy_delay_time +EXPORT_SYMBOL vmlinux 0x9e98994e mark_page_accessed +EXPORT_SYMBOL vmlinux 0x9e9e6fa3 memory_cgrp_subsys +EXPORT_SYMBOL vmlinux 0x9e9eab95 devcgroup_check_permission +EXPORT_SYMBOL vmlinux 0x9e9fdd9d memunmap +EXPORT_SYMBOL vmlinux 0x9ea4c825 sock_i_ino +EXPORT_SYMBOL vmlinux 0x9ea53d7f vsnprintf +EXPORT_SYMBOL vmlinux 0x9eacf8a5 kstrndup +EXPORT_SYMBOL vmlinux 0x9eb658c5 __vlan_find_dev_deep_rcu +EXPORT_SYMBOL vmlinux 0x9ec0e639 twl6030_interrupt_unmask +EXPORT_SYMBOL vmlinux 0x9ec6ca96 ktime_get_real_ts64 +EXPORT_SYMBOL vmlinux 0x9ec7174f unregister_tcf_proto_ops +EXPORT_SYMBOL vmlinux 0x9ed1767a dquot_scan_active +EXPORT_SYMBOL vmlinux 0x9ed978de vme_lm_set +EXPORT_SYMBOL vmlinux 0x9f05b0f7 dma_direct_unmap_page +EXPORT_SYMBOL vmlinux 0x9f2631ad bdi_set_max_ratio +EXPORT_SYMBOL vmlinux 0x9f2eb8d7 mfd_add_devices +EXPORT_SYMBOL vmlinux 0x9f3f16f9 __scsi_iterate_devices +EXPORT_SYMBOL vmlinux 0x9f42eac0 bio_chain +EXPORT_SYMBOL vmlinux 0x9f46ced8 __sw_hweight64 +EXPORT_SYMBOL vmlinux 0x9f4f9c3e __tracepoint_kmem_cache_alloc_node +EXPORT_SYMBOL vmlinux 0x9f50b770 keyring_restrict +EXPORT_SYMBOL vmlinux 0x9f54ead7 gro_cells_destroy +EXPORT_SYMBOL vmlinux 0x9f608504 scsi_device_resume +EXPORT_SYMBOL vmlinux 0x9f65c857 ZSTD_checkCParams +EXPORT_SYMBOL vmlinux 0x9f78ada5 jbd2_journal_abort +EXPORT_SYMBOL vmlinux 0x9f78eea6 phy_start +EXPORT_SYMBOL vmlinux 0x9f84d7c1 vlan_vid_add +EXPORT_SYMBOL vmlinux 0x9f8bd1db kthread_bind +EXPORT_SYMBOL vmlinux 0x9f8e7b6a dev_graft_qdisc +EXPORT_SYMBOL vmlinux 0x9f954abc of_find_compatible_node +EXPORT_SYMBOL vmlinux 0x9f984513 strrchr +EXPORT_SYMBOL vmlinux 0x9f9dc969 lookup_one_len_unlocked +EXPORT_SYMBOL vmlinux 0x9fa6c43e dm_put_table_device +EXPORT_SYMBOL vmlinux 0x9fa7184a cancel_delayed_work_sync +EXPORT_SYMBOL vmlinux 0x9fb1d0ed uuid_is_valid +EXPORT_SYMBOL vmlinux 0x9fc4a01c jbd2_journal_start_commit +EXPORT_SYMBOL vmlinux 0x9fc7f822 i2c_del_adapter +EXPORT_SYMBOL vmlinux 0x9fdecc31 unregister_netdevice_many +EXPORT_SYMBOL vmlinux 0x9fe807b7 scsi_vpd_tpg_id +EXPORT_SYMBOL vmlinux 0x9feed7ce timer_reduce +EXPORT_SYMBOL vmlinux 0x9ffa3a75 netdev_max_backlog +EXPORT_SYMBOL vmlinux 0xa0262284 radix_tree_iter_delete +EXPORT_SYMBOL vmlinux 0xa02ad23b dev_set_allmulti +EXPORT_SYMBOL vmlinux 0xa03216ba neigh_changeaddr +EXPORT_SYMBOL vmlinux 0xa03ccec2 mmc_flush_cache +EXPORT_SYMBOL vmlinux 0xa0436e98 in6addr_linklocal_allnodes +EXPORT_SYMBOL vmlinux 0xa057df8f twl_set_regcache_bypass +EXPORT_SYMBOL vmlinux 0xa06893e9 tcp_shutdown +EXPORT_SYMBOL vmlinux 0xa07a37f0 memchr +EXPORT_SYMBOL vmlinux 0xa08135fd __blk_mq_end_request +EXPORT_SYMBOL vmlinux 0xa08357ac _dev_alert +EXPORT_SYMBOL vmlinux 0xa084749a __bitmap_or +EXPORT_SYMBOL vmlinux 0xa0850031 mod_zone_page_state +EXPORT_SYMBOL vmlinux 0xa095e02e generic_check_addressable +EXPORT_SYMBOL vmlinux 0xa0ae1e73 siphash_3u64 +EXPORT_SYMBOL vmlinux 0xa0af1bc5 key_type_keyring +EXPORT_SYMBOL vmlinux 0xa0b04675 vmalloc_32 +EXPORT_SYMBOL vmlinux 0xa0bdc21a dev_activate +EXPORT_SYMBOL vmlinux 0xa0ce9240 from_kgid_munged +EXPORT_SYMBOL vmlinux 0xa0cee43e jbd2_journal_wipe +EXPORT_SYMBOL vmlinux 0xa0dad88e netdev_adjacent_get_private +EXPORT_SYMBOL vmlinux 0xa0e82e20 neigh_table_init +EXPORT_SYMBOL vmlinux 0xa0eae826 smp_call_function +EXPORT_SYMBOL vmlinux 0xa0ebd14c sysctl_tcp_mem +EXPORT_SYMBOL vmlinux 0xa0fbac79 wake_up_bit +EXPORT_SYMBOL vmlinux 0xa108eb4d sysctl_optmem_max +EXPORT_SYMBOL vmlinux 0xa120d33c tty_unregister_ldisc +EXPORT_SYMBOL vmlinux 0xa1248f93 simple_pin_fs +EXPORT_SYMBOL vmlinux 0xa13f8bcd genphy_restart_aneg +EXPORT_SYMBOL vmlinux 0xa1417d88 netif_stacked_transfer_operstate +EXPORT_SYMBOL vmlinux 0xa15319ca udp_seq_start +EXPORT_SYMBOL vmlinux 0xa155c071 ZSTD_compressBegin_usingDict +EXPORT_SYMBOL vmlinux 0xa17171c4 napi_gro_frags +EXPORT_SYMBOL vmlinux 0xa171fef8 vfs_clone_file_range +EXPORT_SYMBOL vmlinux 0xa18063cb input_event +EXPORT_SYMBOL vmlinux 0xa190d418 ps2_command +EXPORT_SYMBOL vmlinux 0xa1a0fb8d pmem_sector_size +EXPORT_SYMBOL vmlinux 0xa1bb266f nf_hooks_needed +EXPORT_SYMBOL vmlinux 0xa1c76e0a _cond_resched +EXPORT_SYMBOL vmlinux 0xa1c8cd93 pci_set_vpd_size +EXPORT_SYMBOL vmlinux 0xa1d55512 security_socket_socketpair +EXPORT_SYMBOL vmlinux 0xa1eaa2cd mempool_init +EXPORT_SYMBOL vmlinux 0xa1eb44bb dma_fence_chain_init +EXPORT_SYMBOL vmlinux 0xa2060911 inet_current_timestamp +EXPORT_SYMBOL vmlinux 0xa20c37cb bpf_prog_get_type_path +EXPORT_SYMBOL vmlinux 0xa20da50f dentry_path_raw +EXPORT_SYMBOL vmlinux 0xa212aead tcp_add_backlog +EXPORT_SYMBOL vmlinux 0xa2179258 of_clk_get +EXPORT_SYMBOL vmlinux 0xa21b29c5 xfrm_unregister_type +EXPORT_SYMBOL vmlinux 0xa2379497 scsi_free_host_dev +EXPORT_SYMBOL vmlinux 0xa23d1329 mmc_cqe_request_done +EXPORT_SYMBOL vmlinux 0xa244278f inode_set_flags +EXPORT_SYMBOL vmlinux 0xa24f23d8 __request_module +EXPORT_SYMBOL vmlinux 0xa2578209 twl6040_clear_bits +EXPORT_SYMBOL vmlinux 0xa25b90ab utf8byte +EXPORT_SYMBOL vmlinux 0xa263892b fscrypt_fname_free_buffer +EXPORT_SYMBOL vmlinux 0xa26d05b6 of_pci_range_to_resource +EXPORT_SYMBOL vmlinux 0xa274da89 nd_device_notify +EXPORT_SYMBOL vmlinux 0xa27a4bcb pfifo_fast_ops +EXPORT_SYMBOL vmlinux 0xa28cfcc0 gen_estimator_active +EXPORT_SYMBOL vmlinux 0xa2b7f8a4 tcp_connect +EXPORT_SYMBOL vmlinux 0xa2bbed37 crash_shutdown_register +EXPORT_SYMBOL vmlinux 0xa2dcdba1 inet_get_local_port_range +EXPORT_SYMBOL vmlinux 0xa2ebae1e generic_read_dir +EXPORT_SYMBOL vmlinux 0xa2fc8767 tty_schedule_flip +EXPORT_SYMBOL vmlinux 0xa301b29d d_lookup +EXPORT_SYMBOL vmlinux 0xa30478a9 devfreq_suspend_device +EXPORT_SYMBOL vmlinux 0xa3083f54 xfrm6_protocol_register +EXPORT_SYMBOL vmlinux 0xa30f61c4 xdp_get_umem_from_qid +EXPORT_SYMBOL vmlinux 0xa31ea249 i2c_smbus_write_block_data +EXPORT_SYMBOL vmlinux 0xa32acc3d jbd2_journal_init_dev +EXPORT_SYMBOL vmlinux 0xa3331df4 __remove_inode_hash +EXPORT_SYMBOL vmlinux 0xa34ea576 trace_print_hex_seq +EXPORT_SYMBOL vmlinux 0xa35c99e7 clk_get +EXPORT_SYMBOL vmlinux 0xa36803ec sock_create_kern +EXPORT_SYMBOL vmlinux 0xa382ea0a agp_generic_free_gatt_table +EXPORT_SYMBOL vmlinux 0xa382ff4e dma_cache_sync +EXPORT_SYMBOL vmlinux 0xa38e691a ioremap_bot +EXPORT_SYMBOL vmlinux 0xa39039f7 input_release_device +EXPORT_SYMBOL vmlinux 0xa396ca34 vfs_copy_file_range +EXPORT_SYMBOL vmlinux 0xa39b4cf2 udelay +EXPORT_SYMBOL vmlinux 0xa3af8df4 genphy_resume +EXPORT_SYMBOL vmlinux 0xa3b79f02 of_node_to_nid +EXPORT_SYMBOL vmlinux 0xa3c2fb94 machine_id +EXPORT_SYMBOL vmlinux 0xa3e11f9c udp_disconnect +EXPORT_SYMBOL vmlinux 0xa3fd437d get_thermal_instance +EXPORT_SYMBOL vmlinux 0xa3fea172 sha224_final +EXPORT_SYMBOL vmlinux 0xa4076933 xfrm_state_register_afinfo +EXPORT_SYMBOL vmlinux 0xa4077b49 xfrm4_rcv +EXPORT_SYMBOL vmlinux 0xa430f73e pcie_capability_clear_and_set_dword +EXPORT_SYMBOL vmlinux 0xa4364cfa __scsi_execute +EXPORT_SYMBOL vmlinux 0xa43ddea5 nvm_register_tgt_type +EXPORT_SYMBOL vmlinux 0xa472e1ff alloc_skb_with_frags +EXPORT_SYMBOL vmlinux 0xa49a9b46 mempool_alloc +EXPORT_SYMBOL vmlinux 0xa4a6b386 radix__local_flush_tlb_mm +EXPORT_SYMBOL vmlinux 0xa4b1352e ndo_dflt_fdb_add +EXPORT_SYMBOL vmlinux 0xa4b29443 __skb_gro_checksum_complete +EXPORT_SYMBOL vmlinux 0xa4b94fea iowrite8_rep +EXPORT_SYMBOL vmlinux 0xa4be4285 jbd2_journal_revoke +EXPORT_SYMBOL vmlinux 0xa4c8127c ZSTD_maxCLevel +EXPORT_SYMBOL vmlinux 0xa4d21896 mmc_cqe_start_req +EXPORT_SYMBOL vmlinux 0xa4d4f0e6 global_cache_flush +EXPORT_SYMBOL vmlinux 0xa4efc940 kmem_cache_size +EXPORT_SYMBOL vmlinux 0xa4fa639d scsicam_bios_param +EXPORT_SYMBOL vmlinux 0xa5038fbe register_quota_format +EXPORT_SYMBOL vmlinux 0xa5056338 __hsiphash_aligned +EXPORT_SYMBOL vmlinux 0xa509a42d skb_checksum +EXPORT_SYMBOL vmlinux 0xa50ed6ea user_revoke +EXPORT_SYMBOL vmlinux 0xa51aed96 fib_default_rule_add +EXPORT_SYMBOL vmlinux 0xa528b018 param_set_long +EXPORT_SYMBOL vmlinux 0xa54c574a devfreq_monitor_suspend +EXPORT_SYMBOL vmlinux 0xa5526619 rb_insert_color +EXPORT_SYMBOL vmlinux 0xa556bdd9 peernet2id +EXPORT_SYMBOL vmlinux 0xa5683f26 pnv_phb_to_cxl_mode +EXPORT_SYMBOL vmlinux 0xa56dd919 of_node_name_prefix +EXPORT_SYMBOL vmlinux 0xa58be376 make_kgid +EXPORT_SYMBOL vmlinux 0xa5956abe ioread64_hi_lo +EXPORT_SYMBOL vmlinux 0xa59b6362 make_bad_inode +EXPORT_SYMBOL vmlinux 0xa59ebc72 nvm_register +EXPORT_SYMBOL vmlinux 0xa5aa59f2 dma_direct_sync_sg_for_cpu +EXPORT_SYMBOL vmlinux 0xa5ac3e33 ZSTD_DCtxWorkspaceBound +EXPORT_SYMBOL vmlinux 0xa5b42645 mmc_set_data_timeout +EXPORT_SYMBOL vmlinux 0xa5ba02e8 devfreq_register_opp_notifier +EXPORT_SYMBOL vmlinux 0xa5bc1661 ptp_clock_event +EXPORT_SYMBOL vmlinux 0xa60a1de3 filp_open +EXPORT_SYMBOL vmlinux 0xa610e984 devfreq_monitor_start +EXPORT_SYMBOL vmlinux 0xa61ced89 qdisc_put_rtab +EXPORT_SYMBOL vmlinux 0xa61f2b9e simple_transaction_set +EXPORT_SYMBOL vmlinux 0xa648245a blk_get_queue +EXPORT_SYMBOL vmlinux 0xa6579f21 __pud_val_bits +EXPORT_SYMBOL vmlinux 0xa65972b8 _memcpy_toio +EXPORT_SYMBOL vmlinux 0xa6718463 genl_unregister_family +EXPORT_SYMBOL vmlinux 0xa6794981 add_watch_to_object +EXPORT_SYMBOL vmlinux 0xa681fe88 generate_random_uuid +EXPORT_SYMBOL vmlinux 0xa6841fb6 tun_ptr_to_xdp +EXPORT_SYMBOL vmlinux 0xa6be1fa2 tcp_time_wait +EXPORT_SYMBOL vmlinux 0xa6d13599 crypto_sha1_update +EXPORT_SYMBOL vmlinux 0xa6d314a4 pci_enable_atomic_ops_to_root +EXPORT_SYMBOL vmlinux 0xa6d40b77 tty_register_driver +EXPORT_SYMBOL vmlinux 0xa6d44df6 scsi_is_sdev_device +EXPORT_SYMBOL vmlinux 0xa6f56e89 blk_mq_tagset_wait_completed_request +EXPORT_SYMBOL vmlinux 0xa7180e0e md_write_inc +EXPORT_SYMBOL vmlinux 0xa720187c prepare_to_swait_exclusive +EXPORT_SYMBOL vmlinux 0xa72c90c0 __sb_start_write +EXPORT_SYMBOL vmlinux 0xa72df4f5 netif_carrier_on +EXPORT_SYMBOL vmlinux 0xa7319910 vlan_dev_real_dev +EXPORT_SYMBOL vmlinux 0xa74c2576 tcp_sock_set_cork +EXPORT_SYMBOL vmlinux 0xa74c9877 refcount_dec_and_rtnl_lock +EXPORT_SYMBOL vmlinux 0xa75180bc of_get_property +EXPORT_SYMBOL vmlinux 0xa754aa6d vmf_insert_pfn +EXPORT_SYMBOL vmlinux 0xa7590fd7 security_sctp_bind_connect +EXPORT_SYMBOL vmlinux 0xa75b3706 pseries_enable_reloc_on_exc +EXPORT_SYMBOL vmlinux 0xa77b1ed6 __wait_on_bit_lock +EXPORT_SYMBOL vmlinux 0xa77bfd29 register_inet6addr_validator_notifier +EXPORT_SYMBOL vmlinux 0xa786ee39 __sync_dirty_buffer +EXPORT_SYMBOL vmlinux 0xa79bff2d hpage_shift +EXPORT_SYMBOL vmlinux 0xa7b679fc get_tree_bdev +EXPORT_SYMBOL vmlinux 0xa7bf5443 vme_dma_list_add +EXPORT_SYMBOL vmlinux 0xa7e38f12 flow_keys_basic_dissector +EXPORT_SYMBOL vmlinux 0xa7eedcc4 call_usermodehelper +EXPORT_SYMBOL vmlinux 0xa7f108ca end_buffer_write_sync +EXPORT_SYMBOL vmlinux 0xa7f424f2 dst_alloc +EXPORT_SYMBOL vmlinux 0xa7fba791 dma_resv_init +EXPORT_SYMBOL vmlinux 0xa80afc1e generic_cont_expand_simple +EXPORT_SYMBOL vmlinux 0xa8306b78 scaled_ppm_to_ppb +EXPORT_SYMBOL vmlinux 0xa843805a get_unused_fd_flags +EXPORT_SYMBOL vmlinux 0xa84a1f50 ata_link_printk +EXPORT_SYMBOL vmlinux 0xa84b816d __seq_open_private +EXPORT_SYMBOL vmlinux 0xa84ce9e0 crypto_aes_inv_sbox +EXPORT_SYMBOL vmlinux 0xa8694ecd kblockd_schedule_work +EXPORT_SYMBOL vmlinux 0xa8896319 __xa_clear_mark +EXPORT_SYMBOL vmlinux 0xa88b869e mmc_gpio_get_ro +EXPORT_SYMBOL vmlinux 0xa89b2577 try_to_release_page +EXPORT_SYMBOL vmlinux 0xa89c91b0 phy_set_sym_pause +EXPORT_SYMBOL vmlinux 0xa8b85d7f skb_pull +EXPORT_SYMBOL vmlinux 0xa8bb2674 scsi_device_lookup +EXPORT_SYMBOL vmlinux 0xa8be6a8b genlmsg_multicast_allns +EXPORT_SYMBOL vmlinux 0xa8caa845 clk_bulk_put_all +EXPORT_SYMBOL vmlinux 0xa8d483ff cdrom_get_last_written +EXPORT_SYMBOL vmlinux 0xa8dd0373 genphy_read_status_fixed +EXPORT_SYMBOL vmlinux 0xa8f6c843 ip_frag_ecn_table +EXPORT_SYMBOL vmlinux 0xa90ca0de flush_rcu_work +EXPORT_SYMBOL vmlinux 0xa916b694 strnlen +EXPORT_SYMBOL vmlinux 0xa917779c proc_create +EXPORT_SYMBOL vmlinux 0xa9255668 dget_parent +EXPORT_SYMBOL vmlinux 0xa934bc4b flow_get_u32_dst +EXPORT_SYMBOL vmlinux 0xa965ca81 reciprocal_value +EXPORT_SYMBOL vmlinux 0xa97463c9 __siphash_aligned +EXPORT_SYMBOL vmlinux 0xa9761286 mipi_dsi_host_unregister +EXPORT_SYMBOL vmlinux 0xa9829999 pcie_get_speed_cap +EXPORT_SYMBOL vmlinux 0xa9860389 flow_rule_match_ipv6_addrs +EXPORT_SYMBOL vmlinux 0xa99b39c2 prandom_bytes +EXPORT_SYMBOL vmlinux 0xa9bd3649 cdrom_get_media_event +EXPORT_SYMBOL vmlinux 0xa9bf2c4b pci_request_selected_regions +EXPORT_SYMBOL vmlinux 0xa9c8827a tcp_splice_read +EXPORT_SYMBOL vmlinux 0xa9c9300c nf_reinject +EXPORT_SYMBOL vmlinux 0xa9d2164a nf_log_register +EXPORT_SYMBOL vmlinux 0xa9dffce5 mempool_free +EXPORT_SYMBOL vmlinux 0xa9ecbf6b pci_enable_wake +EXPORT_SYMBOL vmlinux 0xa9f15c4f free_cgroup_ns +EXPORT_SYMBOL vmlinux 0xa9f169dc fib_notifier_ops_unregister +EXPORT_SYMBOL vmlinux 0xa9f4267a nd_namespace_blk_validate +EXPORT_SYMBOL vmlinux 0xa9f52ac9 no_seek_end_llseek +EXPORT_SYMBOL vmlinux 0xaa078558 simple_statfs +EXPORT_SYMBOL vmlinux 0xaa0a042a tcf_generic_walker +EXPORT_SYMBOL vmlinux 0xaa173779 memcg_kmem_enabled_key +EXPORT_SYMBOL vmlinux 0xaa19db62 dcache_readdir +EXPORT_SYMBOL vmlinux 0xaa299718 genphy_setup_forced +EXPORT_SYMBOL vmlinux 0xaa3f6f04 radix__flush_tlb_kernel_range +EXPORT_SYMBOL vmlinux 0xaa5ae19c input_set_keycode +EXPORT_SYMBOL vmlinux 0xaa6e4df5 _raw_write_lock_irqsave +EXPORT_SYMBOL vmlinux 0xaa6f23ad rfkill_get_led_trigger_name +EXPORT_SYMBOL vmlinux 0xaa7d3842 sock_edemux +EXPORT_SYMBOL vmlinux 0xaa9179c4 ida_alloc_range +EXPORT_SYMBOL vmlinux 0xaa9afeb1 twl6040_reg_write +EXPORT_SYMBOL vmlinux 0xaaa4b9bc hchacha_block_generic +EXPORT_SYMBOL vmlinux 0xaaaa68eb scsi_ioctl +EXPORT_SYMBOL vmlinux 0xaab13aef of_count_phandle_with_args +EXPORT_SYMBOL vmlinux 0xaab2ee91 complete_all +EXPORT_SYMBOL vmlinux 0xaad0ae78 __bitmap_shift_right +EXPORT_SYMBOL vmlinux 0xaad45f7c security_binder_transfer_binder +EXPORT_SYMBOL vmlinux 0xaad6d92f rfkill_init_sw_state +EXPORT_SYMBOL vmlinux 0xaad8c7d6 default_wake_function +EXPORT_SYMBOL vmlinux 0xaaf9ce19 vlan_filter_drop_vids +EXPORT_SYMBOL vmlinux 0xaafdc258 strcasecmp +EXPORT_SYMBOL vmlinux 0xab002636 mmc_unregister_driver +EXPORT_SYMBOL vmlinux 0xab20efeb __fs_parse +EXPORT_SYMBOL vmlinux 0xab2881ee dev_mc_flush +EXPORT_SYMBOL vmlinux 0xab3697e4 irq_poll_init +EXPORT_SYMBOL vmlinux 0xab3b75ea vme_dma_pattern_attribute +EXPORT_SYMBOL vmlinux 0xab3d0ad9 mount_single +EXPORT_SYMBOL vmlinux 0xab4703b6 ip_do_fragment +EXPORT_SYMBOL vmlinux 0xab63baa5 unregister_inetaddr_validator_notifier +EXPORT_SYMBOL vmlinux 0xab65e4ab request_key_tag +EXPORT_SYMBOL vmlinux 0xab781570 fb_get_options +EXPORT_SYMBOL vmlinux 0xab8180ce blk_mq_delay_kick_requeue_list +EXPORT_SYMBOL vmlinux 0xab895ba7 ppp_register_compressor +EXPORT_SYMBOL vmlinux 0xab8bfe28 inode_nohighmem +EXPORT_SYMBOL vmlinux 0xabca5ff2 flow_block_cb_lookup +EXPORT_SYMBOL vmlinux 0xabebeb3e genphy_write_mmd_unsupported +EXPORT_SYMBOL vmlinux 0xabecc8b8 mdio_device_reset +EXPORT_SYMBOL vmlinux 0xabf32f29 utf16s_to_utf8s +EXPORT_SYMBOL vmlinux 0xac046800 reuseport_select_sock +EXPORT_SYMBOL vmlinux 0xac1a55be unregister_reboot_notifier +EXPORT_SYMBOL vmlinux 0xac26b820 _raw_write_lock +EXPORT_SYMBOL vmlinux 0xac3037a4 inet_csk_destroy_sock +EXPORT_SYMBOL vmlinux 0xac3201b0 udp_flow_hashrnd +EXPORT_SYMBOL vmlinux 0xac36ddac pci_add_new_bus +EXPORT_SYMBOL vmlinux 0xac430423 __pmd_val_bits +EXPORT_SYMBOL vmlinux 0xac4a2ed9 put_disk_and_module +EXPORT_SYMBOL vmlinux 0xac5cda11 inet_stream_connect +EXPORT_SYMBOL vmlinux 0xac5dec63 dev_mc_sync +EXPORT_SYMBOL vmlinux 0xac5fcec0 in4_pton +EXPORT_SYMBOL vmlinux 0xac7b09b2 phy_device_create +EXPORT_SYMBOL vmlinux 0xac8597d5 mb_cache_entry_get +EXPORT_SYMBOL vmlinux 0xac8eb85d __dev_set_mtu +EXPORT_SYMBOL vmlinux 0xac9037ef phy_suspend +EXPORT_SYMBOL vmlinux 0xac94e86b vsprintf +EXPORT_SYMBOL vmlinux 0xac970ac9 sock_queue_rcv_skb +EXPORT_SYMBOL vmlinux 0xacab29b7 seq_hlist_start_percpu +EXPORT_SYMBOL vmlinux 0xaccf12da dquot_quotactl_sysfile_ops +EXPORT_SYMBOL vmlinux 0xaccfaf85 dev_set_group +EXPORT_SYMBOL vmlinux 0xacd7ba01 i8042_remove_filter +EXPORT_SYMBOL vmlinux 0xacd81eb3 jbd2_inode_cache +EXPORT_SYMBOL vmlinux 0xace18748 blk_pre_runtime_suspend +EXPORT_SYMBOL vmlinux 0xacf4d843 match_strdup +EXPORT_SYMBOL vmlinux 0xacf649bf audit_log_task_info +EXPORT_SYMBOL vmlinux 0xad0413d4 match_hex +EXPORT_SYMBOL vmlinux 0xad042977 scsi_get_host_dev +EXPORT_SYMBOL vmlinux 0xad08267e dev_get_by_name +EXPORT_SYMBOL vmlinux 0xad32be50 device_get_mac_address +EXPORT_SYMBOL vmlinux 0xad50cebb i8253_lock +EXPORT_SYMBOL vmlinux 0xad5564be mmc_erase_group_aligned +EXPORT_SYMBOL vmlinux 0xad5dc535 seq_putc +EXPORT_SYMBOL vmlinux 0xad73041f autoremove_wake_function +EXPORT_SYMBOL vmlinux 0xad78c5da dmam_alloc_attrs +EXPORT_SYMBOL vmlinux 0xad7b1ef3 page_mapped +EXPORT_SYMBOL vmlinux 0xad84bef8 dm_table_event +EXPORT_SYMBOL vmlinux 0xad995dac netdev_stats_to_stats64 +EXPORT_SYMBOL vmlinux 0xad9aeee6 vfio_unpin_pages +EXPORT_SYMBOL vmlinux 0xadbeed61 mipi_dsi_packet_format_is_long +EXPORT_SYMBOL vmlinux 0xadc044b7 vfio_set_irqs_validate_and_prepare +EXPORT_SYMBOL vmlinux 0xadc5269a scsi_remove_target +EXPORT_SYMBOL vmlinux 0xadcba50b ZSTD_findFrameCompressedSize +EXPORT_SYMBOL vmlinux 0xadd9d043 flush_dcache_icache_page +EXPORT_SYMBOL vmlinux 0xadfdfcef __bitmap_andnot +EXPORT_SYMBOL vmlinux 0xae04012c __vmalloc +EXPORT_SYMBOL vmlinux 0xae1081ba capable_wrt_inode_uidgid +EXPORT_SYMBOL vmlinux 0xae11adc9 phy_write_mmd +EXPORT_SYMBOL vmlinux 0xae149cf4 security_sk_clone +EXPORT_SYMBOL vmlinux 0xae2515f8 blk_mq_start_hw_queues +EXPORT_SYMBOL vmlinux 0xae316c11 icmpv6_err_convert +EXPORT_SYMBOL vmlinux 0xae31cea2 iov_iter_get_pages +EXPORT_SYMBOL vmlinux 0xae323679 pcim_iomap +EXPORT_SYMBOL vmlinux 0xae3c7d75 kthread_create_on_node +EXPORT_SYMBOL vmlinux 0xae443424 xfrm4_rcv_encap +EXPORT_SYMBOL vmlinux 0xae4a40ff qdisc_watchdog_schedule_range_ns +EXPORT_SYMBOL vmlinux 0xae4c8439 __pte_table_size +EXPORT_SYMBOL vmlinux 0xae545f06 _raw_write_unlock_irqrestore +EXPORT_SYMBOL vmlinux 0xae69527f forget_cached_acl +EXPORT_SYMBOL vmlinux 0xae8bf23f blk_queue_virt_boundary +EXPORT_SYMBOL vmlinux 0xae94df5c tc_setup_cb_call +EXPORT_SYMBOL vmlinux 0xaea2e288 _copy_from_iter_full +EXPORT_SYMBOL vmlinux 0xaeac049a generate_random_guid +EXPORT_SYMBOL vmlinux 0xaeacb681 compat_ptr_ioctl +EXPORT_SYMBOL vmlinux 0xaeb2e831 scsi_device_set_state +EXPORT_SYMBOL vmlinux 0xaeb71553 mpage_writepages +EXPORT_SYMBOL vmlinux 0xaed2f8b8 devm_request_threaded_irq +EXPORT_SYMBOL vmlinux 0xaeef8a52 end_page_writeback +EXPORT_SYMBOL vmlinux 0xaefaf0e6 pci_bus_type +EXPORT_SYMBOL vmlinux 0xaf063510 _raw_spin_lock_bh +EXPORT_SYMBOL vmlinux 0xaf1d188c simple_release_fs +EXPORT_SYMBOL vmlinux 0xaf2f6d20 tty_port_lower_dtr_rts +EXPORT_SYMBOL vmlinux 0xaf30c520 mipi_dsi_picture_parameter_set +EXPORT_SYMBOL vmlinux 0xaf39643b serio_reconnect +EXPORT_SYMBOL vmlinux 0xaf3dd7dc scsi_logging_level +EXPORT_SYMBOL vmlinux 0xaf4386f0 tcp_v4_md5_lookup +EXPORT_SYMBOL vmlinux 0xaf4bcf12 sk_stream_error +EXPORT_SYMBOL vmlinux 0xaf731a31 tcp_enter_quickack_mode +EXPORT_SYMBOL vmlinux 0xafa2ab2f scsi_device_lookup_by_target +EXPORT_SYMBOL vmlinux 0xafc06bcd wait_for_completion_io +EXPORT_SYMBOL vmlinux 0xafc281c0 phy_resume +EXPORT_SYMBOL vmlinux 0xafdea114 open_exec +EXPORT_SYMBOL vmlinux 0xafe22d9f fsync_bdev +EXPORT_SYMBOL vmlinux 0xafe8ec9b clkdev_hw_alloc +EXPORT_SYMBOL vmlinux 0xafee55b9 __brelse +EXPORT_SYMBOL vmlinux 0xaff7f6c1 __debugger_bpt +EXPORT_SYMBOL vmlinux 0xaff9ba07 of_get_next_available_child +EXPORT_SYMBOL vmlinux 0xb00026a0 security_sb_remount +EXPORT_SYMBOL vmlinux 0xb0087b64 xfrm_unregister_type_offload +EXPORT_SYMBOL vmlinux 0xb01bebf9 xfrm_get_acqseq +EXPORT_SYMBOL vmlinux 0xb01d3e0e genphy_aneg_done +EXPORT_SYMBOL vmlinux 0xb022f4c0 pci_request_region +EXPORT_SYMBOL vmlinux 0xb027e011 blk_queue_bounce_limit +EXPORT_SYMBOL vmlinux 0xb02952a1 ipmi_platform_add +EXPORT_SYMBOL vmlinux 0xb02aed12 mdiobus_read_nested +EXPORT_SYMBOL vmlinux 0xb0327441 crypto_sha256_finup +EXPORT_SYMBOL vmlinux 0xb038fabc blk_queue_flag_clear +EXPORT_SYMBOL vmlinux 0xb05fc310 sysctl_rmem_max +EXPORT_SYMBOL vmlinux 0xb06463e9 wait_for_key_construction +EXPORT_SYMBOL vmlinux 0xb06a859f md_handle_request +EXPORT_SYMBOL vmlinux 0xb06a925b pneigh_lookup +EXPORT_SYMBOL vmlinux 0xb072634d param_get_string +EXPORT_SYMBOL vmlinux 0xb072cd6e import_single_range +EXPORT_SYMBOL vmlinux 0xb09b938a unregister_nexthop_notifier +EXPORT_SYMBOL vmlinux 0xb0a0da0c rational_best_approximation +EXPORT_SYMBOL vmlinux 0xb0acb998 vlan_ioctl_set +EXPORT_SYMBOL vmlinux 0xb0aed408 ZSTD_compressStream +EXPORT_SYMBOL vmlinux 0xb0cc13d9 no_seek_end_llseek_size +EXPORT_SYMBOL vmlinux 0xb0d44662 agp_backend_release +EXPORT_SYMBOL vmlinux 0xb0e10781 get_option +EXPORT_SYMBOL vmlinux 0xb0f314b4 __scsi_print_sense +EXPORT_SYMBOL vmlinux 0xb0f389ee utf8_normalize +EXPORT_SYMBOL vmlinux 0xb0fbdc48 path_nosuid +EXPORT_SYMBOL vmlinux 0xb10e7df4 __kfifo_dma_in_prepare +EXPORT_SYMBOL vmlinux 0xb1199f37 clear_inode +EXPORT_SYMBOL vmlinux 0xb12cbacb fb_unregister_client +EXPORT_SYMBOL vmlinux 0xb131ff34 pagecache_write_begin +EXPORT_SYMBOL vmlinux 0xb1472688 csum_and_copy_to_iter +EXPORT_SYMBOL vmlinux 0xb147a855 dql_reset +EXPORT_SYMBOL vmlinux 0xb14ab1ef hdmi_audio_infoframe_init +EXPORT_SYMBOL vmlinux 0xb14fc46a find_next_clump8 +EXPORT_SYMBOL vmlinux 0xb15bd8fa tb_ticks_per_sec +EXPORT_SYMBOL vmlinux 0xb16900ad cmdline_parts_parse +EXPORT_SYMBOL vmlinux 0xb1726a5b netlink_capable +EXPORT_SYMBOL vmlinux 0xb18231b3 security_unix_stream_connect +EXPORT_SYMBOL vmlinux 0xb19d55df fsl_upm_run_pattern +EXPORT_SYMBOL vmlinux 0xb1a5ab8c on_each_cpu_cond +EXPORT_SYMBOL vmlinux 0xb1bc0a27 truncate_pagecache +EXPORT_SYMBOL vmlinux 0xb1c3a01a oops_in_progress +EXPORT_SYMBOL vmlinux 0xb1c5c64e gtm_set_exact_timer16 +EXPORT_SYMBOL vmlinux 0xb1ddf995 jiffies_64_to_clock_t +EXPORT_SYMBOL vmlinux 0xb1e12d81 krealloc +EXPORT_SYMBOL vmlinux 0xb1ee4f18 tty_unthrottle +EXPORT_SYMBOL vmlinux 0xb1ee7ec2 request_key_with_auxdata +EXPORT_SYMBOL vmlinux 0xb1f9284a max8925_bulk_read +EXPORT_SYMBOL vmlinux 0xb1fd26f0 pci_bus_read_dev_vendor_id +EXPORT_SYMBOL vmlinux 0xb2181378 inet_sk_rx_dst_set +EXPORT_SYMBOL vmlinux 0xb2217db7 seg6_hmac_validate_skb +EXPORT_SYMBOL vmlinux 0xb227ce5a blk_mq_delay_run_hw_queue +EXPORT_SYMBOL vmlinux 0xb22e16d5 radix_tree_maybe_preload +EXPORT_SYMBOL vmlinux 0xb2477455 zap_page_range +EXPORT_SYMBOL vmlinux 0xb2642d40 of_node_get +EXPORT_SYMBOL vmlinux 0xb2737014 xp_alloc +EXPORT_SYMBOL vmlinux 0xb2a10c95 profile_pc +EXPORT_SYMBOL vmlinux 0xb2a1b096 ip_generic_getfrag +EXPORT_SYMBOL vmlinux 0xb2a991a8 vfio_register_notifier +EXPORT_SYMBOL vmlinux 0xb2acc4cd __msr_check_and_clear +EXPORT_SYMBOL vmlinux 0xb2acd9e5 free_bucket_spinlocks +EXPORT_SYMBOL vmlinux 0xb2e49221 mdiobus_setup_mdiodev_from_board_info +EXPORT_SYMBOL vmlinux 0xb2ee9e8c scsi_dma_unmap +EXPORT_SYMBOL vmlinux 0xb2f35c6a xxh64 +EXPORT_SYMBOL vmlinux 0xb2f88066 locks_free_lock +EXPORT_SYMBOL vmlinux 0xb2fcb56d queue_delayed_work_on +EXPORT_SYMBOL vmlinux 0xb308c97d wait_woken +EXPORT_SYMBOL vmlinux 0xb30b9822 vme_master_set +EXPORT_SYMBOL vmlinux 0xb30f0e63 kill_pid +EXPORT_SYMBOL vmlinux 0xb320cc0e sg_init_one +EXPORT_SYMBOL vmlinux 0xb32733fe unregister_filesystem +EXPORT_SYMBOL vmlinux 0xb328549d __nla_reserve_nohdr +EXPORT_SYMBOL vmlinux 0xb342a8b7 call_usermodehelper_exec +EXPORT_SYMBOL vmlinux 0xb350f6f2 dqstats +EXPORT_SYMBOL vmlinux 0xb359409c insert_inode_locked4 +EXPORT_SYMBOL vmlinux 0xb35aadbb tcp_sync_mss +EXPORT_SYMBOL vmlinux 0xb35ddc60 __sb_end_write +EXPORT_SYMBOL vmlinux 0xb3682877 dst_release +EXPORT_SYMBOL vmlinux 0xb3687850 out_of_line_wait_on_bit_lock +EXPORT_SYMBOL vmlinux 0xb3724287 xsk_clear_rx_need_wakeup +EXPORT_SYMBOL vmlinux 0xb37354fe inetdev_by_index +EXPORT_SYMBOL vmlinux 0xb37955a6 mr_rtm_dumproute +EXPORT_SYMBOL vmlinux 0xb37dfa4e seq_read +EXPORT_SYMBOL vmlinux 0xb37fcdb7 inet_add_protocol +EXPORT_SYMBOL vmlinux 0xb39290ba pcix_get_max_mmrbc +EXPORT_SYMBOL vmlinux 0xb396c97f netdev_set_tc_queue +EXPORT_SYMBOL vmlinux 0xb3a72e64 inet_sk_rebuild_header +EXPORT_SYMBOL vmlinux 0xb3ab61a4 dcb_ieee_getapp_dscp_prio_mask_map +EXPORT_SYMBOL vmlinux 0xb3bd68cc security_secmark_relabel_packet +EXPORT_SYMBOL vmlinux 0xb3c46f44 __sk_mem_reduce_allocated +EXPORT_SYMBOL vmlinux 0xb3c65ca5 shrink_dcache_parent +EXPORT_SYMBOL vmlinux 0xb3cff973 fput +EXPORT_SYMBOL vmlinux 0xb3d2c76d scsi_hostbyte_string +EXPORT_SYMBOL vmlinux 0xb3f548ad kmemdup_nul +EXPORT_SYMBOL vmlinux 0xb3f7646e kthread_should_stop +EXPORT_SYMBOL vmlinux 0xb407075e inet_getname +EXPORT_SYMBOL vmlinux 0xb417f082 kstrtos8_from_user +EXPORT_SYMBOL vmlinux 0xb41acc1a disk_start_io_acct +EXPORT_SYMBOL vmlinux 0xb423dba1 console_blanked +EXPORT_SYMBOL vmlinux 0xb43dfb1c kmem_cache_shrink +EXPORT_SYMBOL vmlinux 0xb4424b2b proc_doulongvec_ms_jiffies_minmax +EXPORT_SYMBOL vmlinux 0xb44478a6 qe_pin_free +EXPORT_SYMBOL vmlinux 0xb444a6ce qdisc_tree_reduce_backlog +EXPORT_SYMBOL vmlinux 0xb44ad4b3 _copy_to_user +EXPORT_SYMBOL vmlinux 0xb44e9775 sock_common_recvmsg +EXPORT_SYMBOL vmlinux 0xb450a000 pci_fixup_cardbus +EXPORT_SYMBOL vmlinux 0xb4563355 of_parse_phandle +EXPORT_SYMBOL vmlinux 0xb45dedd5 fb_set_cmap +EXPORT_SYMBOL vmlinux 0xb45ee61d ioc_lookup_icq +EXPORT_SYMBOL vmlinux 0xb462d8bf scsi_host_get +EXPORT_SYMBOL vmlinux 0xb473e2c2 lockref_get +EXPORT_SYMBOL vmlinux 0xb47be20e pseries_disable_reloc_on_exc +EXPORT_SYMBOL vmlinux 0xb48d4d22 security_sb_eat_lsm_opts +EXPORT_SYMBOL vmlinux 0xb4985beb ZSTD_resetCStream +EXPORT_SYMBOL vmlinux 0xb49efdbe dev_deactivate +EXPORT_SYMBOL vmlinux 0xb4a23239 kernel_read +EXPORT_SYMBOL vmlinux 0xb4a261e6 __napi_schedule_irqoff +EXPORT_SYMBOL vmlinux 0xb4e71f58 vfs_fsync_range +EXPORT_SYMBOL vmlinux 0xb4ec218d load_nls +EXPORT_SYMBOL vmlinux 0xb4ee00bf rtnl_notify +EXPORT_SYMBOL vmlinux 0xb4f13d2a abort +EXPORT_SYMBOL vmlinux 0xb4f88ed7 create_empty_buffers +EXPORT_SYMBOL vmlinux 0xb51b7c5b __sg_alloc_table_from_pages +EXPORT_SYMBOL vmlinux 0xb527330c udp_seq_stop +EXPORT_SYMBOL vmlinux 0xb539b516 dma_fence_array_ops +EXPORT_SYMBOL vmlinux 0xb540bc02 kmem_cache_create_usercopy +EXPORT_SYMBOL vmlinux 0xb5457895 end_buffer_async_write +EXPORT_SYMBOL vmlinux 0xb555f9f3 gtm_get_specific_timer16 +EXPORT_SYMBOL vmlinux 0xb56b0a4d tcp_child_process +EXPORT_SYMBOL vmlinux 0xb5733fb5 generic_error_remove_page +EXPORT_SYMBOL vmlinux 0xb57343c2 frontswap_shrink +EXPORT_SYMBOL vmlinux 0xb5794d19 nmi_panic +EXPORT_SYMBOL vmlinux 0xb57a86d0 inode_sub_bytes +EXPORT_SYMBOL vmlinux 0xb57c14b4 try_module_get +EXPORT_SYMBOL vmlinux 0xb587a4f6 xfrm_trans_queue_net +EXPORT_SYMBOL vmlinux 0xb58aeaab kernel_cpustat +EXPORT_SYMBOL vmlinux 0xb59fbde2 iov_iter_single_seg_count +EXPORT_SYMBOL vmlinux 0xb5a459dc unregister_blkdev +EXPORT_SYMBOL vmlinux 0xb5aa7165 dma_pool_destroy +EXPORT_SYMBOL vmlinux 0xb5b63ee1 submit_bio +EXPORT_SYMBOL vmlinux 0xb5d758cd eth_header_cache +EXPORT_SYMBOL vmlinux 0xb5dd0c5b i2c_smbus_write_word_data +EXPORT_SYMBOL vmlinux 0xb5e04829 tcp_v4_syn_recv_sock +EXPORT_SYMBOL vmlinux 0xb5e73116 flush_delayed_work +EXPORT_SYMBOL vmlinux 0xb5ef2f96 audit_log_start +EXPORT_SYMBOL vmlinux 0xb5fc68db max8998_bulk_write +EXPORT_SYMBOL vmlinux 0xb633f115 irq_poll_enable +EXPORT_SYMBOL vmlinux 0xb651f625 unregister_console +EXPORT_SYMBOL vmlinux 0xb678366f int_sqrt +EXPORT_SYMBOL vmlinux 0xb67baae2 nla_reserve +EXPORT_SYMBOL vmlinux 0xb67c9280 utf8cursor +EXPORT_SYMBOL vmlinux 0xb67caf65 ucc_fast_enable +EXPORT_SYMBOL vmlinux 0xb67fec0e uuid_parse +EXPORT_SYMBOL vmlinux 0xb68437c5 dquot_set_dqblk +EXPORT_SYMBOL vmlinux 0xb6936ffe _bcd2bin +EXPORT_SYMBOL vmlinux 0xb69a855a dm_get_device +EXPORT_SYMBOL vmlinux 0xb6a68816 find_last_bit +EXPORT_SYMBOL vmlinux 0xb6acaa13 phy_sfp_detach +EXPORT_SYMBOL vmlinux 0xb6c549ee rc5t583_ext_power_req_config +EXPORT_SYMBOL vmlinux 0xb6caf102 fs_lookup_param +EXPORT_SYMBOL vmlinux 0xb6e18921 mutex_trylock_recursive +EXPORT_SYMBOL vmlinux 0xb6eec6d7 netif_tx_stop_all_queues +EXPORT_SYMBOL vmlinux 0xb6f165c7 mdio_find_bus +EXPORT_SYMBOL vmlinux 0xb720e1ab mem_section +EXPORT_SYMBOL vmlinux 0xb727187c iget5_locked +EXPORT_SYMBOL vmlinux 0xb73da602 udp_gro_receive +EXPORT_SYMBOL vmlinux 0xb74859a6 console_stop +EXPORT_SYMBOL vmlinux 0xb74df581 bh_uptodate_or_lock +EXPORT_SYMBOL vmlinux 0xb7503c13 vme_lm_request +EXPORT_SYMBOL vmlinux 0xb7688155 ucc_slow_init +EXPORT_SYMBOL vmlinux 0xb77a32b7 tty_port_carrier_raised +EXPORT_SYMBOL vmlinux 0xb78881f3 pci_write_vpd +EXPORT_SYMBOL vmlinux 0xb7893ca6 inet6_bind +EXPORT_SYMBOL vmlinux 0xb78debe3 LZ4_decompress_fast_usingDict +EXPORT_SYMBOL vmlinux 0xb7a7ec83 ip6_route_me_harder +EXPORT_SYMBOL vmlinux 0xb7aa71e7 of_io_request_and_map +EXPORT_SYMBOL vmlinux 0xb7b3bf41 compat_sock_common_setsockopt +EXPORT_SYMBOL vmlinux 0xb7bb4984 padata_start +EXPORT_SYMBOL vmlinux 0xb7bc6adc seqno_fence_ops +EXPORT_SYMBOL vmlinux 0xb7c0f443 sort +EXPORT_SYMBOL vmlinux 0xb7c12eb3 seq_escape_mem_ascii +EXPORT_SYMBOL vmlinux 0xb7c36211 mipi_dsi_dcs_set_tear_on +EXPORT_SYMBOL vmlinux 0xb7c54ae2 md_integrity_add_rdev +EXPORT_SYMBOL vmlinux 0xb7c6db70 sysctl_max_skb_frags +EXPORT_SYMBOL vmlinux 0xb7d2ef3d gen_pool_dma_alloc +EXPORT_SYMBOL vmlinux 0xb7d9d8d5 pci_request_regions_exclusive +EXPORT_SYMBOL vmlinux 0xb7e81644 eth_get_headlen +EXPORT_SYMBOL vmlinux 0xb80922c6 flow_rule_match_enc_opts +EXPORT_SYMBOL vmlinux 0xb824767a pin_user_pages_remote +EXPORT_SYMBOL vmlinux 0xb83129db ZSTD_decompressContinue +EXPORT_SYMBOL vmlinux 0xb868ac5c register_sysrq_key +EXPORT_SYMBOL vmlinux 0xb869602b ll_rw_block +EXPORT_SYMBOL vmlinux 0xb86af85c pci_restore_state +EXPORT_SYMBOL vmlinux 0xb874f27b call_fib_notifiers +EXPORT_SYMBOL vmlinux 0xb88daac7 inet_del_offload +EXPORT_SYMBOL vmlinux 0xb8983942 cad_pid +EXPORT_SYMBOL vmlinux 0xb89b6e6b guid_parse +EXPORT_SYMBOL vmlinux 0xb8a6c2c0 dup_iter +EXPORT_SYMBOL vmlinux 0xb8ac602f input_mt_get_slot_by_key +EXPORT_SYMBOL vmlinux 0xb8b043f2 kfree_link +EXPORT_SYMBOL vmlinux 0xb8b23c11 udp_lib_get_port +EXPORT_SYMBOL vmlinux 0xb8b59f1a agp_generic_enable +EXPORT_SYMBOL vmlinux 0xb8b9f817 kmalloc_order_trace +EXPORT_SYMBOL vmlinux 0xb8d14a59 ip_frag_init +EXPORT_SYMBOL vmlinux 0xb8df94b6 bio_add_page +EXPORT_SYMBOL vmlinux 0xb8e6afed netdev_upper_dev_unlink +EXPORT_SYMBOL vmlinux 0xb8f06343 mini_qdisc_pair_swap +EXPORT_SYMBOL vmlinux 0xb9056bb6 remove_conflicting_framebuffers +EXPORT_SYMBOL vmlinux 0xb907513f unpoison_memory +EXPORT_SYMBOL vmlinux 0xb9089f69 pci_enable_msi +EXPORT_SYMBOL vmlinux 0xb911bb58 minmax_running_max +EXPORT_SYMBOL vmlinux 0xb9120c2e write_inode_now +EXPORT_SYMBOL vmlinux 0xb94050dc inet_recvmsg +EXPORT_SYMBOL vmlinux 0xb94339c4 qdisc_put_stab +EXPORT_SYMBOL vmlinux 0xb94eea17 reuseport_detach_sock +EXPORT_SYMBOL vmlinux 0xb96d04f8 dev_printk +EXPORT_SYMBOL vmlinux 0xb97220ff bitmap_parse +EXPORT_SYMBOL vmlinux 0xb98b2b8d generic_permission +EXPORT_SYMBOL vmlinux 0xb9a939fb blk_register_region +EXPORT_SYMBOL vmlinux 0xb9ad876a inet_register_protosw +EXPORT_SYMBOL vmlinux 0xb9ce0d9c proc_create_mount_point +EXPORT_SYMBOL vmlinux 0xb9dd8e6d dev_get_phys_port_name +EXPORT_SYMBOL vmlinux 0xb9e80e35 security_skb_classify_flow +EXPORT_SYMBOL vmlinux 0xb9e8e2cc in6addr_sitelocal_allrouters +EXPORT_SYMBOL vmlinux 0xba0f20e5 vfs_path_lookup +EXPORT_SYMBOL vmlinux 0xba1008c8 __crc32c_le +EXPORT_SYMBOL vmlinux 0xba1cca46 blk_queue_update_dma_alignment +EXPORT_SYMBOL vmlinux 0xba4645ae __blockdev_direct_IO +EXPORT_SYMBOL vmlinux 0xba497f13 loops_per_jiffy +EXPORT_SYMBOL vmlinux 0xba52274a mini_qdisc_pair_init +EXPORT_SYMBOL vmlinux 0xba5d2f65 __pskb_pull_tail +EXPORT_SYMBOL vmlinux 0xba66765b mipi_dsi_detach +EXPORT_SYMBOL vmlinux 0xba676cb6 __inet_hash +EXPORT_SYMBOL vmlinux 0xba691c85 _insb +EXPORT_SYMBOL vmlinux 0xba6d129a __sk_mem_reclaim +EXPORT_SYMBOL vmlinux 0xba707a78 qe_get_brg_clk +EXPORT_SYMBOL vmlinux 0xba8e40ed eth_gro_complete +EXPORT_SYMBOL vmlinux 0xbaa47deb ps2_drain +EXPORT_SYMBOL vmlinux 0xbab93782 redirty_page_for_writepage +EXPORT_SYMBOL vmlinux 0xbabe30a2 tcf_chain_put_by_act +EXPORT_SYMBOL vmlinux 0xbacf07b5 tcf_em_tree_dump +EXPORT_SYMBOL vmlinux 0xbadcaade blk_set_default_limits +EXPORT_SYMBOL vmlinux 0xbaffff96 ZSTD_CStreamWorkspaceBound +EXPORT_SYMBOL vmlinux 0xbb0540aa zlib_inflateReset +EXPORT_SYMBOL vmlinux 0xbb070a24 ab3100_event_unregister +EXPORT_SYMBOL vmlinux 0xbb188e0f get_cached_acl +EXPORT_SYMBOL vmlinux 0xbb24f607 init_cdrom_command +EXPORT_SYMBOL vmlinux 0xbb2c3b41 iunique +EXPORT_SYMBOL vmlinux 0xbb2d13b8 tty_wait_until_sent +EXPORT_SYMBOL vmlinux 0xbb35675b __bitmap_intersects +EXPORT_SYMBOL vmlinux 0xbb3ceb70 ip_options_compile +EXPORT_SYMBOL vmlinux 0xbb3e9e90 __pmd_table_size +EXPORT_SYMBOL vmlinux 0xbb4f4766 simple_write_to_buffer +EXPORT_SYMBOL vmlinux 0xbb531588 get_vm_area +EXPORT_SYMBOL vmlinux 0xbb6e4a23 udp_prot +EXPORT_SYMBOL vmlinux 0xbb739039 dev_close +EXPORT_SYMBOL vmlinux 0xbb7b414e gtm_stop_timer16 +EXPORT_SYMBOL vmlinux 0xbb7faa9f xfrm_policy_insert +EXPORT_SYMBOL vmlinux 0xbb85be73 mipi_dsi_attach +EXPORT_SYMBOL vmlinux 0xbb9a3e21 of_translate_dma_address +EXPORT_SYMBOL vmlinux 0xbbaa79d5 add_to_page_cache_locked +EXPORT_SYMBOL vmlinux 0xbbbeba7c mnt_drop_write_file +EXPORT_SYMBOL vmlinux 0xbbc641af tcf_exts_dump_stats +EXPORT_SYMBOL vmlinux 0xbbe80fdb kmalloc_order +EXPORT_SYMBOL vmlinux 0xbbedc7a4 load_nls_default +EXPORT_SYMBOL vmlinux 0xbbfa722a kernel_sendmsg_locked +EXPORT_SYMBOL vmlinux 0xbbffa52f fscrypt_ioctl_get_policy +EXPORT_SYMBOL vmlinux 0xbc0ebf32 vio_enable_interrupts +EXPORT_SYMBOL vmlinux 0xbc25f7cc free_contig_range +EXPORT_SYMBOL vmlinux 0xbc316de4 tty_termios_input_baud_rate +EXPORT_SYMBOL vmlinux 0xbc487e47 pagevec_lookup_range_nr_tag +EXPORT_SYMBOL vmlinux 0xbc4f40b9 sk_stream_kill_queues +EXPORT_SYMBOL vmlinux 0xbc76a6e1 init_special_inode +EXPORT_SYMBOL vmlinux 0xbc7f7774 serio_rescan +EXPORT_SYMBOL vmlinux 0xbc82f009 nf_unregister_queue_handler +EXPORT_SYMBOL vmlinux 0xbc853fd1 thermal_zone_device_critical +EXPORT_SYMBOL vmlinux 0xbc982b06 eeh_subsystem_flags +EXPORT_SYMBOL vmlinux 0xbcab6ee6 sscanf +EXPORT_SYMBOL vmlinux 0xbcad0c22 gen_new_estimator +EXPORT_SYMBOL vmlinux 0xbcbdf60f kstrtos8 +EXPORT_SYMBOL vmlinux 0xbcc15019 param_set_copystring +EXPORT_SYMBOL vmlinux 0xbcc308bb strnlen_user +EXPORT_SYMBOL vmlinux 0xbcf150f9 xor_altivec_5 +EXPORT_SYMBOL vmlinux 0xbcf1c986 vme_dma_list_free +EXPORT_SYMBOL vmlinux 0xbcfdf9d7 pci_release_selected_regions +EXPORT_SYMBOL vmlinux 0xbd462b55 __kfifo_init +EXPORT_SYMBOL vmlinux 0xbd504a75 I_BDEV +EXPORT_SYMBOL vmlinux 0xbd6841d4 crc16 +EXPORT_SYMBOL vmlinux 0xbd6bd56f __qdisc_calculate_pkt_len +EXPORT_SYMBOL vmlinux 0xbd6c6c65 mount_bdev +EXPORT_SYMBOL vmlinux 0xbd6f5135 padata_do_serial +EXPORT_SYMBOL vmlinux 0xbd808a48 bd_finish_claiming +EXPORT_SYMBOL vmlinux 0xbd812598 __skb_flow_get_ports +EXPORT_SYMBOL vmlinux 0xbd8519dd devm_rproc_add +EXPORT_SYMBOL vmlinux 0xbd9121b5 sock_no_recvmsg +EXPORT_SYMBOL vmlinux 0xbd9b9979 module_refcount +EXPORT_SYMBOL vmlinux 0xbda68195 scsi_add_host_with_dma +EXPORT_SYMBOL vmlinux 0xbdae1466 tty_unregister_device +EXPORT_SYMBOL vmlinux 0xbdb3a1c1 md_reap_sync_thread +EXPORT_SYMBOL vmlinux 0xbdb8a4bc set_create_files_as +EXPORT_SYMBOL vmlinux 0xbdc697ce xp_raw_get_dma +EXPORT_SYMBOL vmlinux 0xbdd10e22 vfs_rename +EXPORT_SYMBOL vmlinux 0xbdd13358 udp6_seq_ops +EXPORT_SYMBOL vmlinux 0xbde43b05 sock_bind_add +EXPORT_SYMBOL vmlinux 0xbde62c78 kill_litter_super +EXPORT_SYMBOL vmlinux 0xbdf2fc3b frontswap_register_ops +EXPORT_SYMBOL vmlinux 0xbe135ad8 sock_recvmsg +EXPORT_SYMBOL vmlinux 0xbe2db514 par_io_of_config +EXPORT_SYMBOL vmlinux 0xbe30335d cleancache_register_ops +EXPORT_SYMBOL vmlinux 0xbe496199 __generic_file_write_iter +EXPORT_SYMBOL vmlinux 0xbe4eb6ed secure_dccpv6_sequence_number +EXPORT_SYMBOL vmlinux 0xbe56018d mipi_dsi_dcs_set_display_off +EXPORT_SYMBOL vmlinux 0xbe59656f devm_alloc_etherdev_mqs +EXPORT_SYMBOL vmlinux 0xbe5a24e9 xxh32_copy_state +EXPORT_SYMBOL vmlinux 0xbe651b50 of_graph_get_endpoint_count +EXPORT_SYMBOL vmlinux 0xbe69148c rt_dst_clone +EXPORT_SYMBOL vmlinux 0xbe9ceeba dev_mc_add_excl +EXPORT_SYMBOL vmlinux 0xbea2457b __tty_alloc_driver +EXPORT_SYMBOL vmlinux 0xbeab6643 get_fs_type +EXPORT_SYMBOL vmlinux 0xbeae43c8 inode_init_owner +EXPORT_SYMBOL vmlinux 0xbeb506a2 fb_class +EXPORT_SYMBOL vmlinux 0xbed463a2 qdisc_watchdog_cancel +EXPORT_SYMBOL vmlinux 0xbee2bebf device_add_disk +EXPORT_SYMBOL vmlinux 0xbee5da01 phy_do_ioctl_running +EXPORT_SYMBOL vmlinux 0xbef43296 console_conditional_schedule +EXPORT_SYMBOL vmlinux 0xbf0209c7 md_bitmap_startwrite +EXPORT_SYMBOL vmlinux 0xbf1a4921 of_find_node_with_property +EXPORT_SYMBOL vmlinux 0xbf2408cd tcp_hashinfo +EXPORT_SYMBOL vmlinux 0xbf3d3efd bdgrab +EXPORT_SYMBOL vmlinux 0xbf420f2a read_cache_page_gfp +EXPORT_SYMBOL vmlinux 0xbf42fc52 locks_remove_posix +EXPORT_SYMBOL vmlinux 0xbf445c3d dev_getbyhwaddr_rcu +EXPORT_SYMBOL vmlinux 0xbf46c6ab pm860x_set_bits +EXPORT_SYMBOL vmlinux 0xbf48779c tcf_chain_get_by_act +EXPORT_SYMBOL vmlinux 0xbf49a5b5 pci_assign_resource +EXPORT_SYMBOL vmlinux 0xbf596f45 _insl_ns +EXPORT_SYMBOL vmlinux 0xbf59c419 posix_acl_init +EXPORT_SYMBOL vmlinux 0xbf9bcc8d __cap_empty_set +EXPORT_SYMBOL vmlinux 0xbfa98cba xfrm4_protocol_register +EXPORT_SYMBOL vmlinux 0xbfb8b0b7 _raw_read_lock_irqsave +EXPORT_SYMBOL vmlinux 0xbfc177bc iowrite32_rep +EXPORT_SYMBOL vmlinux 0xbfc99287 ppp_register_channel +EXPORT_SYMBOL vmlinux 0xbfcc7677 dquot_claim_space_nodirty +EXPORT_SYMBOL vmlinux 0xbfce5342 vmemmap +EXPORT_SYMBOL vmlinux 0xbfd62076 __task_pid_nr_ns +EXPORT_SYMBOL vmlinux 0xbfee3ad5 loop_unregister_transfer +EXPORT_SYMBOL vmlinux 0xbff8182c plpar_hcall_norets +EXPORT_SYMBOL vmlinux 0xbffa45b1 dm_put_device +EXPORT_SYMBOL vmlinux 0xc025016c flow_keys_dissector +EXPORT_SYMBOL vmlinux 0xc054ca84 serio_open +EXPORT_SYMBOL vmlinux 0xc05d92cd i2c_smbus_read_word_data +EXPORT_SYMBOL vmlinux 0xc0705b3a jbd2_journal_ack_err +EXPORT_SYMBOL vmlinux 0xc071d6ea radix__flush_pmd_tlb_range +EXPORT_SYMBOL vmlinux 0xc0732d30 __cpuhp_setup_state_cpuslocked +EXPORT_SYMBOL vmlinux 0xc0763484 rfkill_blocked +EXPORT_SYMBOL vmlinux 0xc07b0863 fb_destroy_modedb +EXPORT_SYMBOL vmlinux 0xc07fb161 pci_read_config_dword +EXPORT_SYMBOL vmlinux 0xc0804995 super_setup_bdi_name +EXPORT_SYMBOL vmlinux 0xc09146f4 blk_mq_alloc_request +EXPORT_SYMBOL vmlinux 0xc096e23d hdmi_drm_infoframe_init +EXPORT_SYMBOL vmlinux 0xc0a3bc17 wait_on_page_bit_killable +EXPORT_SYMBOL vmlinux 0xc0a3d105 find_next_bit +EXPORT_SYMBOL vmlinux 0xc0b0c573 arp_tbl +EXPORT_SYMBOL vmlinux 0xc0b17b0c mmc_gpio_set_cd_isr +EXPORT_SYMBOL vmlinux 0xc0b2664d devlink_dpipe_header_ipv4 +EXPORT_SYMBOL vmlinux 0xc0b346d8 opal_nx_coproc_init +EXPORT_SYMBOL vmlinux 0xc0b4508a inet_frag_kill +EXPORT_SYMBOL vmlinux 0xc0bca0f1 ZSTD_nextSrcSizeToDecompress +EXPORT_SYMBOL vmlinux 0xc0d5feee vfs_statx +EXPORT_SYMBOL vmlinux 0xc0d6c120 sock_enable_timestamps +EXPORT_SYMBOL vmlinux 0xc0d6d78f __var_waitqueue +EXPORT_SYMBOL vmlinux 0xc0dae143 netdev_has_upper_dev +EXPORT_SYMBOL vmlinux 0xc0edc54f pnv_pci_get_gpu_dev +EXPORT_SYMBOL vmlinux 0xc0f99c7d tcp_v4_mtu_reduced +EXPORT_SYMBOL vmlinux 0xc0ff12fb nla_strdup +EXPORT_SYMBOL vmlinux 0xc10cb7f6 flow_rule_match_control +EXPORT_SYMBOL vmlinux 0xc1179daa kstrtou8_from_user +EXPORT_SYMBOL vmlinux 0xc121f372 scsi_dma_map +EXPORT_SYMBOL vmlinux 0xc1328cee start_thread +EXPORT_SYMBOL vmlinux 0xc14bd4d2 ip_ct_attach +EXPORT_SYMBOL vmlinux 0xc1514a3b free_irq +EXPORT_SYMBOL vmlinux 0xc16410b9 ZSTD_getDictID_fromDDict +EXPORT_SYMBOL vmlinux 0xc16be39d iter_div_u64_rem +EXPORT_SYMBOL vmlinux 0xc16cf182 prepare_kernel_cred +EXPORT_SYMBOL vmlinux 0xc17b4642 netdev_emerg +EXPORT_SYMBOL vmlinux 0xc17c2077 vfs_iter_read +EXPORT_SYMBOL vmlinux 0xc1a08216 pcie_get_width_cap +EXPORT_SYMBOL vmlinux 0xc1b49cc4 put_devmap_managed_page +EXPORT_SYMBOL vmlinux 0xc1b4c514 tcf_idrinfo_destroy +EXPORT_SYMBOL vmlinux 0xc1ba027a mmc_gpiod_request_ro +EXPORT_SYMBOL vmlinux 0xc1ce2bd1 gen_pool_fixed_alloc +EXPORT_SYMBOL vmlinux 0xc1d8cfaf __fdget +EXPORT_SYMBOL vmlinux 0xc1e17318 __dec_node_page_state +EXPORT_SYMBOL vmlinux 0xc1e35e7f __xfrm_dst_lookup +EXPORT_SYMBOL vmlinux 0xc1f3a94d crypto_sha1_finup +EXPORT_SYMBOL vmlinux 0xc21f99d2 inet_protos +EXPORT_SYMBOL vmlinux 0xc2283884 xfrm_state_flush +EXPORT_SYMBOL vmlinux 0xc2296d2d fasync_helper +EXPORT_SYMBOL vmlinux 0xc22b1dca blk_post_runtime_suspend +EXPORT_SYMBOL vmlinux 0xc22b9f44 unix_destruct_scm +EXPORT_SYMBOL vmlinux 0xc2415877 __insert_inode_hash +EXPORT_SYMBOL vmlinux 0xc2421c00 cdrom_release +EXPORT_SYMBOL vmlinux 0xc2424641 agp3_generic_cleanup +EXPORT_SYMBOL vmlinux 0xc243ebd1 sock_alloc +EXPORT_SYMBOL vmlinux 0xc2540fdd dcb_ieee_delapp +EXPORT_SYMBOL vmlinux 0xc25cc8b4 generic_delete_inode +EXPORT_SYMBOL vmlinux 0xc266aaff param_ops_invbool +EXPORT_SYMBOL vmlinux 0xc267960e utf8_validate +EXPORT_SYMBOL vmlinux 0xc27f46a3 simple_unlink +EXPORT_SYMBOL vmlinux 0xc2951c66 jbd2_journal_release_jbd_inode +EXPORT_SYMBOL vmlinux 0xc29bf967 strspn +EXPORT_SYMBOL vmlinux 0xc29e8c67 pcix_set_mmrbc +EXPORT_SYMBOL vmlinux 0xc2ac9155 register_console +EXPORT_SYMBOL vmlinux 0xc2b88074 __set_page_dirty_buffers +EXPORT_SYMBOL vmlinux 0xc2bfbbc1 unregister_mii_timestamper +EXPORT_SYMBOL vmlinux 0xc2cafe94 __lock_buffer +EXPORT_SYMBOL vmlinux 0xc2d6b570 kobject_add +EXPORT_SYMBOL vmlinux 0xc2dd2007 netdev_lower_get_next_private +EXPORT_SYMBOL vmlinux 0xc2e587d1 reset_devices +EXPORT_SYMBOL vmlinux 0xc2ee3ec9 pm860x_page_reg_write +EXPORT_SYMBOL vmlinux 0xc2eeab4f file_open_root +EXPORT_SYMBOL vmlinux 0xc300e390 new_inode +EXPORT_SYMBOL vmlinux 0xc310b981 strnstr +EXPORT_SYMBOL vmlinux 0xc3198435 mfd_cell_disable +EXPORT_SYMBOL vmlinux 0xc31db0ce is_vmalloc_addr +EXPORT_SYMBOL vmlinux 0xc3295535 jbd2_journal_extend +EXPORT_SYMBOL vmlinux 0xc32bf17f mmc_release_host +EXPORT_SYMBOL vmlinux 0xc32c71af register_inetaddr_validator_notifier +EXPORT_SYMBOL vmlinux 0xc344300a d_instantiate +EXPORT_SYMBOL vmlinux 0xc35910af input_mt_report_slot_state +EXPORT_SYMBOL vmlinux 0xc3719533 __udp_disconnect +EXPORT_SYMBOL vmlinux 0xc3776e0f pm860x_bulk_write +EXPORT_SYMBOL vmlinux 0xc37d16f2 ip_mc_join_group +EXPORT_SYMBOL vmlinux 0xc37f9c6e cpufreq_update_policy +EXPORT_SYMBOL vmlinux 0xc383f277 iov_iter_revert +EXPORT_SYMBOL vmlinux 0xc38c83b8 mod_timer +EXPORT_SYMBOL vmlinux 0xc3a4eac4 tty_port_close +EXPORT_SYMBOL vmlinux 0xc3c37185 cpu_rmap_update +EXPORT_SYMBOL vmlinux 0xc3dfb215 follow_up +EXPORT_SYMBOL vmlinux 0xc3e2dd35 dquot_alloc_inode +EXPORT_SYMBOL vmlinux 0xc3e799fb dev_remove_pack +EXPORT_SYMBOL vmlinux 0xc3fed6c7 simple_recursive_removal +EXPORT_SYMBOL vmlinux 0xc404551a _dev_err +EXPORT_SYMBOL vmlinux 0xc407b7b6 of_translate_address +EXPORT_SYMBOL vmlinux 0xc4125a79 bdget_disk +EXPORT_SYMBOL vmlinux 0xc414b658 ata_std_end_eh +EXPORT_SYMBOL vmlinux 0xc41bc980 iwe_stream_add_value +EXPORT_SYMBOL vmlinux 0xc41bf3f5 dma_direct_sync_sg_for_device +EXPORT_SYMBOL vmlinux 0xc41c10f5 ip_tunnel_header_ops +EXPORT_SYMBOL vmlinux 0xc4212ab9 qdisc_class_hash_insert +EXPORT_SYMBOL vmlinux 0xc4708199 cpm_muram_addr +EXPORT_SYMBOL vmlinux 0xc4777aa9 __ctzsi2 +EXPORT_SYMBOL vmlinux 0xc47bbbfe block_write_end +EXPORT_SYMBOL vmlinux 0xc47cdf9c _raw_write_lock_bh +EXPORT_SYMBOL vmlinux 0xc48aef06 tcp_check_req +EXPORT_SYMBOL vmlinux 0xc4924017 input_match_device_id +EXPORT_SYMBOL vmlinux 0xc49ba0a2 follow_pte_pmd +EXPORT_SYMBOL vmlinux 0xc49ec17f blk_mq_free_tag_set +EXPORT_SYMBOL vmlinux 0xc4a216b5 vme_dma_list_exec +EXPORT_SYMBOL vmlinux 0xc4ae915e arch_touch_nmi_watchdog +EXPORT_SYMBOL vmlinux 0xc4bcd455 lru_cache_add +EXPORT_SYMBOL vmlinux 0xc4be0497 dma_resv_add_shared_fence +EXPORT_SYMBOL vmlinux 0xc4c7adfd dev_open +EXPORT_SYMBOL vmlinux 0xc4dcc35f blkdev_get +EXPORT_SYMBOL vmlinux 0xc4ebc2a4 tcf_idr_check_alloc +EXPORT_SYMBOL vmlinux 0xc4efaea3 agp_generic_alloc_user +EXPORT_SYMBOL vmlinux 0xc50e8050 __ps2_command +EXPORT_SYMBOL vmlinux 0xc515aba6 qe_pin_request +EXPORT_SYMBOL vmlinux 0xc5366502 iov_iter_alignment +EXPORT_SYMBOL vmlinux 0xc5534d64 ioread16 +EXPORT_SYMBOL vmlinux 0xc560da9b of_find_backlight +EXPORT_SYMBOL vmlinux 0xc563068e refcount_dec_and_lock +EXPORT_SYMBOL vmlinux 0xc5734a41 netdev_set_num_tc +EXPORT_SYMBOL vmlinux 0xc5850110 printk +EXPORT_SYMBOL vmlinux 0xc5987e29 md_bitmap_sync_with_cluster +EXPORT_SYMBOL vmlinux 0xc599a772 security_xfrm_state_delete +EXPORT_SYMBOL vmlinux 0xc5a396fd udplite_table +EXPORT_SYMBOL vmlinux 0xc5b6f236 queue_work_on +EXPORT_SYMBOL vmlinux 0xc5b72bfb jbd2_transaction_committed +EXPORT_SYMBOL vmlinux 0xc5ba4a13 phy_read_mmd +EXPORT_SYMBOL vmlinux 0xc5d9c46c agp_try_unsupported_boot +EXPORT_SYMBOL vmlinux 0xc5dba500 of_dev_get +EXPORT_SYMBOL vmlinux 0xc5df50a3 pps_lookup_dev +EXPORT_SYMBOL vmlinux 0xc5e19179 compat_ip_setsockopt +EXPORT_SYMBOL vmlinux 0xc5e5543d of_graph_get_remote_endpoint +EXPORT_SYMBOL vmlinux 0xc5e5573a frame_vector_to_pages +EXPORT_SYMBOL vmlinux 0xc5e74216 release_resource +EXPORT_SYMBOL vmlinux 0xc5f7e801 sg_last +EXPORT_SYMBOL vmlinux 0xc6055c9e kvasprintf_const +EXPORT_SYMBOL vmlinux 0xc60d0620 __num_online_cpus +EXPORT_SYMBOL vmlinux 0xc61b8087 idr_destroy +EXPORT_SYMBOL vmlinux 0xc61ca65e iowrite64be_hi_lo +EXPORT_SYMBOL vmlinux 0xc631580a console_unlock +EXPORT_SYMBOL vmlinux 0xc633d82d phy_unregister_fixup +EXPORT_SYMBOL vmlinux 0xc6369552 sync_file_get_fence +EXPORT_SYMBOL vmlinux 0xc64cb86f __close_fd_get_file +EXPORT_SYMBOL vmlinux 0xc65d41ec get_task_cred +EXPORT_SYMBOL vmlinux 0xc65e4e97 secure_dccp_sequence_number +EXPORT_SYMBOL vmlinux 0xc664b528 mempool_create_node +EXPORT_SYMBOL vmlinux 0xc666a132 crc_t10dif +EXPORT_SYMBOL vmlinux 0xc66a8304 cpu_rmap_add +EXPORT_SYMBOL vmlinux 0xc66d919f dm_table_get_mode +EXPORT_SYMBOL vmlinux 0xc66f99b4 tcf_exts_destroy +EXPORT_SYMBOL vmlinux 0xc671fc42 blk_mq_stop_hw_queues +EXPORT_SYMBOL vmlinux 0xc679335d fqdir_init +EXPORT_SYMBOL vmlinux 0xc67a0d0e devm_ioremap_resource +EXPORT_SYMBOL vmlinux 0xc6867cab mdiobus_write +EXPORT_SYMBOL vmlinux 0xc69a0032 tty_port_close_end +EXPORT_SYMBOL vmlinux 0xc69aca15 netdev_err +EXPORT_SYMBOL vmlinux 0xc6b92f45 input_inject_event +EXPORT_SYMBOL vmlinux 0xc6c5e7f6 sock_register +EXPORT_SYMBOL vmlinux 0xc6ca6bb8 netdev_lower_dev_get_private +EXPORT_SYMBOL vmlinux 0xc6cb465a __kfifo_max_r +EXPORT_SYMBOL vmlinux 0xc6cbbc89 capable +EXPORT_SYMBOL vmlinux 0xc6cf0f12 i2c_smbus_write_byte_data +EXPORT_SYMBOL vmlinux 0xc6d09aa9 release_firmware +EXPORT_SYMBOL vmlinux 0xc6d5002c check_disk_change +EXPORT_SYMBOL vmlinux 0xc6d6af46 ppc_pci_io +EXPORT_SYMBOL vmlinux 0xc6dabd2e mmc_erase +EXPORT_SYMBOL vmlinux 0xc6e644b4 ip6_dst_hoplimit +EXPORT_SYMBOL vmlinux 0xc6ee651f remove_proc_subtree +EXPORT_SYMBOL vmlinux 0xc6f46339 init_timer_key +EXPORT_SYMBOL vmlinux 0xc7040bf5 ucc_tdm_init +EXPORT_SYMBOL vmlinux 0xc71e70f5 __tcf_em_tree_match +EXPORT_SYMBOL vmlinux 0xc7208c3a serial8250_resume_port +EXPORT_SYMBOL vmlinux 0xc72a7fa9 __phy_read_mmd +EXPORT_SYMBOL vmlinux 0xc72e2e0c phy_write_paged +EXPORT_SYMBOL vmlinux 0xc781bd9f rfkill_resume_polling +EXPORT_SYMBOL vmlinux 0xc78532a1 iw_handler_get_thrspy +EXPORT_SYMBOL vmlinux 0xc7856a3d inet6addr_notifier_call_chain +EXPORT_SYMBOL vmlinux 0xc78c5ca9 __skb_try_recv_datagram +EXPORT_SYMBOL vmlinux 0xc797a1ef phy_register_fixup +EXPORT_SYMBOL vmlinux 0xc79bcd36 dm_vcalloc +EXPORT_SYMBOL vmlinux 0xc7a4fbed rtnl_lock +EXPORT_SYMBOL vmlinux 0xc7a50957 scsi_target_quiesce +EXPORT_SYMBOL vmlinux 0xc7aa31a3 d_instantiate_anon +EXPORT_SYMBOL vmlinux 0xc7c1107a LZ4_decompress_safe +EXPORT_SYMBOL vmlinux 0xc7d094b5 dm_read_arg_group +EXPORT_SYMBOL vmlinux 0xc7d0e385 single_open_size +EXPORT_SYMBOL vmlinux 0xc7d5099c xfrm_state_insert +EXPORT_SYMBOL vmlinux 0xc7d95ead unregister_quota_format +EXPORT_SYMBOL vmlinux 0xc7e4b414 __scm_send +EXPORT_SYMBOL vmlinux 0xc7f484b1 ida_destroy +EXPORT_SYMBOL vmlinux 0xc7f7c9e2 pci_ep_cfs_remove_epf_group +EXPORT_SYMBOL vmlinux 0xc80e850e dquot_initialize +EXPORT_SYMBOL vmlinux 0xc81e91a8 napi_busy_loop +EXPORT_SYMBOL vmlinux 0xc8376c67 vga_tryget +EXPORT_SYMBOL vmlinux 0xc8453b66 flush_all_to_thread +EXPORT_SYMBOL vmlinux 0xc8464280 input_set_poll_interval +EXPORT_SYMBOL vmlinux 0xc84a0a7e seq_hlist_start_rcu +EXPORT_SYMBOL vmlinux 0xc84f8a40 alloc_pages_vma +EXPORT_SYMBOL vmlinux 0xc85150a1 max8998_read_reg +EXPORT_SYMBOL vmlinux 0xc851b1d2 skb_copy_header +EXPORT_SYMBOL vmlinux 0xc855e634 jbd2_journal_get_write_access +EXPORT_SYMBOL vmlinux 0xc858a614 nla_reserve_nohdr +EXPORT_SYMBOL vmlinux 0xc872fd85 in6addr_interfacelocal_allnodes +EXPORT_SYMBOL vmlinux 0xc8827b75 sysctl_vals +EXPORT_SYMBOL vmlinux 0xc88ac2aa textsearch_find_continuous +EXPORT_SYMBOL vmlinux 0xc890c008 zlib_deflateEnd +EXPORT_SYMBOL vmlinux 0xc89253f3 blk_pm_runtime_init +EXPORT_SYMBOL vmlinux 0xc8a91f5b cpumask_local_spread +EXPORT_SYMBOL vmlinux 0xc8c14e0b pci_lost_interrupt +EXPORT_SYMBOL vmlinux 0xc8da4ade fwnode_get_mac_address +EXPORT_SYMBOL vmlinux 0xc8e16f9a pcim_iounmap_regions +EXPORT_SYMBOL vmlinux 0xc8f5a95a wait_for_completion_interruptible_timeout +EXPORT_SYMBOL vmlinux 0xc8f73d6e phy_connect +EXPORT_SYMBOL vmlinux 0xc9020f15 tcp_mtup_init +EXPORT_SYMBOL vmlinux 0xc90f950b input_open_device +EXPORT_SYMBOL vmlinux 0xc920bc72 tcf_get_next_chain +EXPORT_SYMBOL vmlinux 0xc92d7371 xsk_umem_consume_tx +EXPORT_SYMBOL vmlinux 0xc93168c2 fscrypt_ioctl_set_policy +EXPORT_SYMBOL vmlinux 0xc9355c4f d_alloc +EXPORT_SYMBOL vmlinux 0xc93df9ec mark_info_dirty +EXPORT_SYMBOL vmlinux 0xc949f341 ethtool_rx_flow_rule_create +EXPORT_SYMBOL vmlinux 0xc95322fa init_pseudo +EXPORT_SYMBOL vmlinux 0xc9587b3e bd_set_size +EXPORT_SYMBOL vmlinux 0xc95ca9d0 pnv_cxl_alloc_hwirq_ranges +EXPORT_SYMBOL vmlinux 0xc9634df9 in6addr_linklocal_allrouters +EXPORT_SYMBOL vmlinux 0xc972449f mempool_alloc_slab +EXPORT_SYMBOL vmlinux 0xc97d7443 wait_for_completion_timeout +EXPORT_SYMBOL vmlinux 0xc9822234 clk_register_clkdev +EXPORT_SYMBOL vmlinux 0xc9912d90 sock_no_listen +EXPORT_SYMBOL vmlinux 0xc99e2a55 twl_rev +EXPORT_SYMBOL vmlinux 0xc9b1664c vme_irq_generate +EXPORT_SYMBOL vmlinux 0xc9ba26d3 pci_scan_bridge +EXPORT_SYMBOL vmlinux 0xc9d3687a pci_enable_ptm +EXPORT_SYMBOL vmlinux 0xc9d92cc9 mr_mfc_find_any +EXPORT_SYMBOL vmlinux 0xc9dbc779 thermal_cdev_update +EXPORT_SYMBOL vmlinux 0xc9dc3d79 __pte_frag_size_shift +EXPORT_SYMBOL vmlinux 0xc9df055a xfrm_policy_walk_init +EXPORT_SYMBOL vmlinux 0xc9efd045 neigh_lookup_nodev +EXPORT_SYMBOL vmlinux 0xca08bdc5 neigh_seq_stop +EXPORT_SYMBOL vmlinux 0xca15413f ZSTD_resetDStream +EXPORT_SYMBOL vmlinux 0xca1ea2c7 blk_set_stacking_limits +EXPORT_SYMBOL vmlinux 0xca21ebd3 bitmap_free +EXPORT_SYMBOL vmlinux 0xca3b28c6 store_vr_state +EXPORT_SYMBOL vmlinux 0xca3c7bec pci_bus_read_config_word +EXPORT_SYMBOL vmlinux 0xca431c05 wake_bit_function +EXPORT_SYMBOL vmlinux 0xca8048f4 dma_direct_sync_single_for_device +EXPORT_SYMBOL vmlinux 0xca9360b5 rb_next +EXPORT_SYMBOL vmlinux 0xca9494ef simple_link +EXPORT_SYMBOL vmlinux 0xcab26424 dm_io +EXPORT_SYMBOL vmlinux 0xcacb23a4 __neigh_for_each_release +EXPORT_SYMBOL vmlinux 0xcadfb9bb unregister_netdevice_notifier_net +EXPORT_SYMBOL vmlinux 0xcae42a2e inet_dgram_ops +EXPORT_SYMBOL vmlinux 0xcaed32f0 param_ops_long +EXPORT_SYMBOL vmlinux 0xcaf2c603 scsi_sd_pm_domain +EXPORT_SYMBOL vmlinux 0xcaf457e4 fscrypt_put_encryption_info +EXPORT_SYMBOL vmlinux 0xcafae30b register_fib_notifier +EXPORT_SYMBOL vmlinux 0xcb0288ea ledtrig_cpu +EXPORT_SYMBOL vmlinux 0xcb168a91 lookup_positive_unlocked +EXPORT_SYMBOL vmlinux 0xcb2ea0b5 finish_wait +EXPORT_SYMBOL vmlinux 0xcb3ae215 call_blocking_lsm_notifier +EXPORT_SYMBOL vmlinux 0xcb3c8a7d ___ratelimit +EXPORT_SYMBOL vmlinux 0xcb4d2685 dquot_release +EXPORT_SYMBOL vmlinux 0xcb528e09 seq_escape +EXPORT_SYMBOL vmlinux 0xcb575c8a skb_dequeue_tail +EXPORT_SYMBOL vmlinux 0xcb626662 mmc_cqe_recovery +EXPORT_SYMBOL vmlinux 0xcb690d3a free_task +EXPORT_SYMBOL vmlinux 0xcb6f4ce1 dmaenginem_async_device_register +EXPORT_SYMBOL vmlinux 0xcb7bbc0d mmc_add_host +EXPORT_SYMBOL vmlinux 0xcb7c80ef kobject_del +EXPORT_SYMBOL vmlinux 0xcb87c452 security_inet_conn_request +EXPORT_SYMBOL vmlinux 0xcba4abe3 list_sort +EXPORT_SYMBOL vmlinux 0xcbc3b94e eeh_check_failure +EXPORT_SYMBOL vmlinux 0xcbc88a23 ZSTD_isFrame +EXPORT_SYMBOL vmlinux 0xcbd4898c fortify_panic +EXPORT_SYMBOL vmlinux 0xcbfb33e4 init_opal_dev +EXPORT_SYMBOL vmlinux 0xcc043609 pci_get_subsys +EXPORT_SYMBOL vmlinux 0xcc093dd9 inode_set_bytes +EXPORT_SYMBOL vmlinux 0xcc17504d _raw_read_unlock_irqrestore +EXPORT_SYMBOL vmlinux 0xcc2031d2 nvmem_get_mac_address +EXPORT_SYMBOL vmlinux 0xcc248d26 serial8250_suspend_port +EXPORT_SYMBOL vmlinux 0xcc293cfe ipmr_rule_default +EXPORT_SYMBOL vmlinux 0xcc328a5c reservation_ww_class +EXPORT_SYMBOL vmlinux 0xcc445ceb __sg_page_iter_dma_next +EXPORT_SYMBOL vmlinux 0xcc4c08c8 of_parse_phandle_with_args_map +EXPORT_SYMBOL vmlinux 0xcc5005fe msleep_interruptible +EXPORT_SYMBOL vmlinux 0xcc5d22d9 can_do_mlock +EXPORT_SYMBOL vmlinux 0xcc608ddc mini_qdisc_pair_block_init +EXPORT_SYMBOL vmlinux 0xcc626c2c completion_done +EXPORT_SYMBOL vmlinux 0xcc672934 page_mapping +EXPORT_SYMBOL vmlinux 0xcc6922c6 agp_find_bridge +EXPORT_SYMBOL vmlinux 0xcc7b5a90 dec_node_page_state +EXPORT_SYMBOL vmlinux 0xccb08746 mmc_retune_timer_stop +EXPORT_SYMBOL vmlinux 0xccb6a90c rproc_add +EXPORT_SYMBOL vmlinux 0xccb6eac8 dma_fence_free +EXPORT_SYMBOL vmlinux 0xccc21f5e input_get_new_minor +EXPORT_SYMBOL vmlinux 0xccc758d8 nla_policy_len +EXPORT_SYMBOL vmlinux 0xccd3a767 neigh_destroy +EXPORT_SYMBOL vmlinux 0xccd411cf of_mdiobus_register +EXPORT_SYMBOL vmlinux 0xccd4c999 __sg_page_iter_start +EXPORT_SYMBOL vmlinux 0xccec39df vio_get_attribute +EXPORT_SYMBOL vmlinux 0xccef37e4 ZSTD_DStreamOutSize +EXPORT_SYMBOL vmlinux 0xccfb9e07 dst_default_metrics +EXPORT_SYMBOL vmlinux 0xccfba4bd __mdiobus_register +EXPORT_SYMBOL vmlinux 0xccfd2ebc scsi_dev_info_list_del_keyed +EXPORT_SYMBOL vmlinux 0xcd0529c7 _raw_spin_lock_irq +EXPORT_SYMBOL vmlinux 0xcd125800 phy_disconnect +EXPORT_SYMBOL vmlinux 0xcd279169 nla_find +EXPORT_SYMBOL vmlinux 0xcd285a75 put_tty_driver +EXPORT_SYMBOL vmlinux 0xcd2bc1cf inet_csk_prepare_forced_close +EXPORT_SYMBOL vmlinux 0xcd2feea3 dst_init +EXPORT_SYMBOL vmlinux 0xcd3fc6c2 simple_readpage +EXPORT_SYMBOL vmlinux 0xcd619583 kern_unmount +EXPORT_SYMBOL vmlinux 0xcd6e448d input_register_handler +EXPORT_SYMBOL vmlinux 0xcd86c87f __cond_resched_lock +EXPORT_SYMBOL vmlinux 0xcdae5503 generic_fillattr +EXPORT_SYMBOL vmlinux 0xcdc0349c add_wait_queue_exclusive +EXPORT_SYMBOL vmlinux 0xcdc39c9e security_ismaclabel +EXPORT_SYMBOL vmlinux 0xcdc3aa77 xfrm_state_lookup_byspi +EXPORT_SYMBOL vmlinux 0xcdd623dd block_commit_write +EXPORT_SYMBOL vmlinux 0xcdda265b iov_iter_for_each_range +EXPORT_SYMBOL vmlinux 0xcde77bcc free_opal_dev +EXPORT_SYMBOL vmlinux 0xcdfe851e disk_stack_limits +EXPORT_SYMBOL vmlinux 0xce068064 reuseport_attach_prog +EXPORT_SYMBOL vmlinux 0xce18bbe1 fsl_lbc_addr +EXPORT_SYMBOL vmlinux 0xce1b3190 srp_start_tl_fail_timers +EXPORT_SYMBOL vmlinux 0xce2840e7 irq_set_irq_wake +EXPORT_SYMBOL vmlinux 0xce2edbbe mnt_set_expiry +EXPORT_SYMBOL vmlinux 0xce36f634 fwnode_graph_parse_endpoint +EXPORT_SYMBOL vmlinux 0xce382712 ihold +EXPORT_SYMBOL vmlinux 0xce3864eb ZSTD_compress_usingDict +EXPORT_SYMBOL vmlinux 0xce3f6acb get_cached_acl_rcu +EXPORT_SYMBOL vmlinux 0xce479bb2 nf_log_unset +EXPORT_SYMBOL vmlinux 0xce4cdb8e fb_find_best_mode +EXPORT_SYMBOL vmlinux 0xce4e47b6 __kfifo_skip_r +EXPORT_SYMBOL vmlinux 0xce50e5de ZSTD_compress_usingCDict +EXPORT_SYMBOL vmlinux 0xce5ac24f zlib_inflate_workspacesize +EXPORT_SYMBOL vmlinux 0xce731b34 ucc_slow_get_qe_cr_subblock +EXPORT_SYMBOL vmlinux 0xce7bfe70 vm_brk +EXPORT_SYMBOL vmlinux 0xce807151 idr_get_next +EXPORT_SYMBOL vmlinux 0xce95395b ip6_fraglist_prepare +EXPORT_SYMBOL vmlinux 0xce99f918 default_llseek +EXPORT_SYMBOL vmlinux 0xce9a031e generic_parse_monolithic +EXPORT_SYMBOL vmlinux 0xce9e8ced mdio_device_register +EXPORT_SYMBOL vmlinux 0xcea486ec clkdev_alloc +EXPORT_SYMBOL vmlinux 0xceab0311 strchrnul +EXPORT_SYMBOL vmlinux 0xceada8ee bio_add_pc_page +EXPORT_SYMBOL vmlinux 0xceb49179 netdev_features_change +EXPORT_SYMBOL vmlinux 0xcec766f1 __memset16 +EXPORT_SYMBOL vmlinux 0xcecac727 input_mt_destroy_slots +EXPORT_SYMBOL vmlinux 0xcee20106 ip_fraglist_prepare +EXPORT_SYMBOL vmlinux 0xceec8abd __mb_cache_entry_free +EXPORT_SYMBOL vmlinux 0xceee44a2 devm_backlight_device_register +EXPORT_SYMBOL vmlinux 0xcefcd99a serial8250_unregister_port +EXPORT_SYMBOL vmlinux 0xcf000c7e hdmi_infoframe_check +EXPORT_SYMBOL vmlinux 0xcf039ee0 netif_skb_features +EXPORT_SYMBOL vmlinux 0xcf0b57e5 blk_set_runtime_active +EXPORT_SYMBOL vmlinux 0xcf1c6ca3 cmdline_parts_find +EXPORT_SYMBOL vmlinux 0xcf34c7a5 flow_indr_dev_unregister +EXPORT_SYMBOL vmlinux 0xcf3501a1 dquot_mark_dquot_dirty +EXPORT_SYMBOL vmlinux 0xcf429b70 do_SAK +EXPORT_SYMBOL vmlinux 0xcf56ba5a kmalloc_caches +EXPORT_SYMBOL vmlinux 0xcf5e4174 ptp_clock_register +EXPORT_SYMBOL vmlinux 0xcf6d95ce sync_dirty_buffer +EXPORT_SYMBOL vmlinux 0xcf70b14f inet_select_addr +EXPORT_SYMBOL vmlinux 0xcf782c88 nvdimm_namespace_locked +EXPORT_SYMBOL vmlinux 0xcf7df006 mmc_run_bkops +EXPORT_SYMBOL vmlinux 0xcf9b558d touchscreen_set_mt_pos +EXPORT_SYMBOL vmlinux 0xcfa1a158 scsi_report_device_reset +EXPORT_SYMBOL vmlinux 0xcfb60316 clk_bulk_get_all +EXPORT_SYMBOL vmlinux 0xcfd4d81a devm_free_irq +EXPORT_SYMBOL vmlinux 0xd042475c qdisc_get_rtab +EXPORT_SYMBOL vmlinux 0xd04c1a64 sysctl_devconf_inherit_init_net +EXPORT_SYMBOL vmlinux 0xd0654aba woken_wake_function +EXPORT_SYMBOL vmlinux 0xd06aa014 vfs_mkobj +EXPORT_SYMBOL vmlinux 0xd06b53a5 cdev_init +EXPORT_SYMBOL vmlinux 0xd080d870 configfs_unregister_subsystem +EXPORT_SYMBOL vmlinux 0xd0a091cf jbd2_journal_update_sb_errno +EXPORT_SYMBOL vmlinux 0xd0a91bab skip_spaces +EXPORT_SYMBOL vmlinux 0xd0b1fa40 pci_bus_find_capability +EXPORT_SYMBOL vmlinux 0xd0bbf597 rproc_get_by_phandle +EXPORT_SYMBOL vmlinux 0xd0bd487b hdmi_drm_infoframe_pack_only +EXPORT_SYMBOL vmlinux 0xd0fcdb05 sg_alloc_table_from_pages +EXPORT_SYMBOL vmlinux 0xd0fe7a9f xfrm_user_policy +EXPORT_SYMBOL vmlinux 0xd0fe8d51 sg_pcopy_from_buffer +EXPORT_SYMBOL vmlinux 0xd0fef3b2 agp_free_key +EXPORT_SYMBOL vmlinux 0xd10ecc07 to_nd_dax +EXPORT_SYMBOL vmlinux 0xd1262886 rtas_data_buf +EXPORT_SYMBOL vmlinux 0xd1428d83 pci_read_config_word +EXPORT_SYMBOL vmlinux 0xd143524c rproc_get_by_child +EXPORT_SYMBOL vmlinux 0xd149f32a __cleancache_invalidate_fs +EXPORT_SYMBOL vmlinux 0xd1784a15 ww_mutex_lock_interruptible +EXPORT_SYMBOL vmlinux 0xd1816f32 frontswap_writethrough +EXPORT_SYMBOL vmlinux 0xd1afa41c eth_gro_receive +EXPORT_SYMBOL vmlinux 0xd1b10e0c __tracepoint_kmalloc_node +EXPORT_SYMBOL vmlinux 0xd1c52033 vfs_parse_fs_string +EXPORT_SYMBOL vmlinux 0xd1d87e92 scsi_mlreturn_string +EXPORT_SYMBOL vmlinux 0xd1d9ab4b nosteal_pipe_buf_ops +EXPORT_SYMBOL vmlinux 0xd1f17bc0 blk_alloc_queue +EXPORT_SYMBOL vmlinux 0xd1f95220 cpufreq_generic_suspend +EXPORT_SYMBOL vmlinux 0xd1fac222 devm_request_resource +EXPORT_SYMBOL vmlinux 0xd21c5139 iowrite64_lo_hi +EXPORT_SYMBOL vmlinux 0xd2445389 pci_fixup_device +EXPORT_SYMBOL vmlinux 0xd25d4f74 console_blank_hook +EXPORT_SYMBOL vmlinux 0xd262dfcb vscnprintf +EXPORT_SYMBOL vmlinux 0xd27b25dd blk_check_plugged +EXPORT_SYMBOL vmlinux 0xd27e75c3 gnet_stats_copy_queue +EXPORT_SYMBOL vmlinux 0xd2ac8ebe twl6040_power +EXPORT_SYMBOL vmlinux 0xd2af04a6 register_mii_timestamper +EXPORT_SYMBOL vmlinux 0xd2b19ac2 sock_no_connect +EXPORT_SYMBOL vmlinux 0xd2b78955 rproc_add_carveout +EXPORT_SYMBOL vmlinux 0xd2c99738 __kmalloc_track_caller +EXPORT_SYMBOL vmlinux 0xd2da1048 register_netdevice_notifier +EXPORT_SYMBOL vmlinux 0xd2e2a9d0 hdmi_spd_infoframe_pack_only +EXPORT_SYMBOL vmlinux 0xd2eb1bc2 blk_set_queue_depth +EXPORT_SYMBOL vmlinux 0xd30cca5b phy_mac_interrupt +EXPORT_SYMBOL vmlinux 0xd319593f vc_resize +EXPORT_SYMBOL vmlinux 0xd31ccb06 of_machine_is_compatible +EXPORT_SYMBOL vmlinux 0xd336b74a pcim_iomap_regions_request_all +EXPORT_SYMBOL vmlinux 0xd33c32bd mutex_is_locked +EXPORT_SYMBOL vmlinux 0xd34050e6 __module_put_and_exit +EXPORT_SYMBOL vmlinux 0xd350d199 __cgroup_bpf_run_filter_sock_ops +EXPORT_SYMBOL vmlinux 0xd3565463 posix_lock_file +EXPORT_SYMBOL vmlinux 0xd356e781 of_graph_get_remote_port_parent +EXPORT_SYMBOL vmlinux 0xd35a6d31 mempool_kmalloc +EXPORT_SYMBOL vmlinux 0xd35f99b8 xfrm6_rcv_spi +EXPORT_SYMBOL vmlinux 0xd36dc10c get_random_u32 +EXPORT_SYMBOL vmlinux 0xd36e3d59 prandom_bytes_state +EXPORT_SYMBOL vmlinux 0xd371d866 param_set_invbool +EXPORT_SYMBOL vmlinux 0xd3802fa6 mr_dump +EXPORT_SYMBOL vmlinux 0xd3865caf pagevec_lookup_range_tag +EXPORT_SYMBOL vmlinux 0xd3a75eef nf_ct_attach +EXPORT_SYMBOL vmlinux 0xd3af7b22 i2c_get_adapter +EXPORT_SYMBOL vmlinux 0xd3b18983 of_n_size_cells +EXPORT_SYMBOL vmlinux 0xd3b99e47 __frontswap_load +EXPORT_SYMBOL vmlinux 0xd3bbe51c __xa_alloc +EXPORT_SYMBOL vmlinux 0xd3c9fac2 phy_drivers_register +EXPORT_SYMBOL vmlinux 0xd3de33ed rps_needed +EXPORT_SYMBOL vmlinux 0xd3eaf1ed devlink_dpipe_entry_clear +EXPORT_SYMBOL vmlinux 0xd3f7574d seq_release +EXPORT_SYMBOL vmlinux 0xd4049396 eth_type_trans +EXPORT_SYMBOL vmlinux 0xd406d266 fb_mode_is_equal +EXPORT_SYMBOL vmlinux 0xd4264e51 nf_getsockopt +EXPORT_SYMBOL vmlinux 0xd45cc6ca bin2hex +EXPORT_SYMBOL vmlinux 0xd467dcce sk_reset_timer +EXPORT_SYMBOL vmlinux 0xd470dc0a alloc_anon_inode +EXPORT_SYMBOL vmlinux 0xd477a318 tcf_em_tree_destroy +EXPORT_SYMBOL vmlinux 0xd47b595e fb_pan_display +EXPORT_SYMBOL vmlinux 0xd47c9661 get_ipc_ns_exported +EXPORT_SYMBOL vmlinux 0xd47f1d65 __dev_direct_xmit +EXPORT_SYMBOL vmlinux 0xd4828232 skb_queue_purge +EXPORT_SYMBOL vmlinux 0xd489e45e dcache_dir_lseek +EXPORT_SYMBOL vmlinux 0xd48fdeef dql_completed +EXPORT_SYMBOL vmlinux 0xd4b8d60f mmc_free_host +EXPORT_SYMBOL vmlinux 0xd4ba43e2 xfrm_trans_queue +EXPORT_SYMBOL vmlinux 0xd4bb4a82 inet6addr_validator_notifier_call_chain +EXPORT_SYMBOL vmlinux 0xd4cb44a7 zerocopy_sg_from_iter +EXPORT_SYMBOL vmlinux 0xd4cbb2e9 pcim_pin_device +EXPORT_SYMBOL vmlinux 0xd4d4e57d d_rehash +EXPORT_SYMBOL vmlinux 0xd4d7c068 fsl_upm_find +EXPORT_SYMBOL vmlinux 0xd4f46b63 security_inode_init_security +EXPORT_SYMBOL vmlinux 0xd4fa5a87 __kfifo_dma_out_prepare +EXPORT_SYMBOL vmlinux 0xd4fd0ec2 radix_tree_tag_set +EXPORT_SYMBOL vmlinux 0xd4ff3e64 tty_name +EXPORT_SYMBOL vmlinux 0xd5047232 mmc_retune_release +EXPORT_SYMBOL vmlinux 0xd512ff8d netdev_update_features +EXPORT_SYMBOL vmlinux 0xd515212f sync_mapping_buffers +EXPORT_SYMBOL vmlinux 0xd5263820 mb_cache_destroy +EXPORT_SYMBOL vmlinux 0xd5334afd pci_scan_slot +EXPORT_SYMBOL vmlinux 0xd5513115 input_alloc_absinfo +EXPORT_SYMBOL vmlinux 0xd561406b seq_release_private +EXPORT_SYMBOL vmlinux 0xd567cb78 phy_device_register +EXPORT_SYMBOL vmlinux 0xd56a9f34 pskb_extract +EXPORT_SYMBOL vmlinux 0xd59a559d sched_autogroup_create_attach +EXPORT_SYMBOL vmlinux 0xd5b12f7d radix_tree_replace_slot +EXPORT_SYMBOL vmlinux 0xd5b3d0d5 xxh64_copy_state +EXPORT_SYMBOL vmlinux 0xd5b3e942 blk_mq_start_hw_queue +EXPORT_SYMBOL vmlinux 0xd5b7a9a3 d_drop +EXPORT_SYMBOL vmlinux 0xd5be130e cpu_core_map +EXPORT_SYMBOL vmlinux 0xd5cffad4 i2c_transfer +EXPORT_SYMBOL vmlinux 0xd5e5d5dc kernel_param_unlock +EXPORT_SYMBOL vmlinux 0xd5e82368 kobject_init +EXPORT_SYMBOL vmlinux 0xd5f6569e netdev_reset_tc +EXPORT_SYMBOL vmlinux 0xd5f7f6ae kernel_accept +EXPORT_SYMBOL vmlinux 0xd60736ec gf128mul_free_64k +EXPORT_SYMBOL vmlinux 0xd622abe9 mmc_remove_host +EXPORT_SYMBOL vmlinux 0xd62a753a freezing_slow_path +EXPORT_SYMBOL vmlinux 0xd63fd8d1 utf8nagemax +EXPORT_SYMBOL vmlinux 0xd672f1aa rproc_report_crash +EXPORT_SYMBOL vmlinux 0xd688716b dm_kcopyd_client_create +EXPORT_SYMBOL vmlinux 0xd68af1c9 remove_conflicting_pci_framebuffers +EXPORT_SYMBOL vmlinux 0xd68c5a1f adjust_resource +EXPORT_SYMBOL vmlinux 0xd68f86b0 dma_resv_copy_fences +EXPORT_SYMBOL vmlinux 0xd69948fb proc_dointvec +EXPORT_SYMBOL vmlinux 0xd6a91f54 twl_i2c_read +EXPORT_SYMBOL vmlinux 0xd6af0c00 fs_param_is_u32 +EXPORT_SYMBOL vmlinux 0xd6af4cae rtnl_kfree_skbs +EXPORT_SYMBOL vmlinux 0xd6bc7153 _copy_from_iter_nocache +EXPORT_SYMBOL vmlinux 0xd6c39e2d fixed_size_llseek +EXPORT_SYMBOL vmlinux 0xd6d0cf7d genlmsg_put +EXPORT_SYMBOL vmlinux 0xd6d3e0e7 inet_ioctl +EXPORT_SYMBOL vmlinux 0xd6eaaea1 full_name_hash +EXPORT_SYMBOL vmlinux 0xd6ee688f vmalloc +EXPORT_SYMBOL vmlinux 0xd6fd4053 __arch_hweight32 +EXPORT_SYMBOL vmlinux 0xd6fdb8cd blk_mq_run_hw_queues +EXPORT_SYMBOL vmlinux 0xd6fde043 is_module_sig_enforced +EXPORT_SYMBOL vmlinux 0xd70d35a1 gf128mul_4k_bbe +EXPORT_SYMBOL vmlinux 0xd7264053 agp_generic_mask_memory +EXPORT_SYMBOL vmlinux 0xd7264fa3 agp_unbind_memory +EXPORT_SYMBOL vmlinux 0xd72df77e truncate_inode_pages_range +EXPORT_SYMBOL vmlinux 0xd738ca1b phy_unregister_fixup_for_uid +EXPORT_SYMBOL vmlinux 0xd7623d9f genphy_read_abilities +EXPORT_SYMBOL vmlinux 0xd7769890 register_tcf_proto_ops +EXPORT_SYMBOL vmlinux 0xd786c0ea plpar_hcall9 +EXPORT_SYMBOL vmlinux 0xd78a6be9 buffer_check_dirty_writeback +EXPORT_SYMBOL vmlinux 0xd7b0e781 inet_gro_receive +EXPORT_SYMBOL vmlinux 0xd7b31f3a __inc_node_page_state +EXPORT_SYMBOL vmlinux 0xd7d280ad irq_poll_complete +EXPORT_SYMBOL vmlinux 0xd7d533e9 mmc_request_done +EXPORT_SYMBOL vmlinux 0xd7d6bb50 param_set_short +EXPORT_SYMBOL vmlinux 0xd7e56a4e simple_strtoll +EXPORT_SYMBOL vmlinux 0xd7fa8c94 generic_copy_file_range +EXPORT_SYMBOL vmlinux 0xd802e761 of_find_node_by_phandle +EXPORT_SYMBOL vmlinux 0xd80a0134 of_find_node_opts_by_path +EXPORT_SYMBOL vmlinux 0xd80aa56e neigh_sysctl_register +EXPORT_SYMBOL vmlinux 0xd80afd1f generic_write_checks +EXPORT_SYMBOL vmlinux 0xd829b121 skb_unlink +EXPORT_SYMBOL vmlinux 0xd83956bd nd_btt_probe +EXPORT_SYMBOL vmlinux 0xd84cd526 skb_copy_and_csum_dev +EXPORT_SYMBOL vmlinux 0xd8548b30 gen_pool_first_fit +EXPORT_SYMBOL vmlinux 0xd857fcc5 rproc_da_to_va +EXPORT_SYMBOL vmlinux 0xd85babda finish_swait +EXPORT_SYMBOL vmlinux 0xd8602b6a tun_is_xdp_frame +EXPORT_SYMBOL vmlinux 0xd87f50eb md_unregister_thread +EXPORT_SYMBOL vmlinux 0xd880b269 blk_mq_rq_cpu +EXPORT_SYMBOL vmlinux 0xd89184d2 phy_attached_info_irq +EXPORT_SYMBOL vmlinux 0xd89da37f movable_zone +EXPORT_SYMBOL vmlinux 0xd8a994eb scsi_extd_sense_format +EXPORT_SYMBOL vmlinux 0xd8aaf654 dma_get_sgtable_attrs +EXPORT_SYMBOL vmlinux 0xd8cd4f70 blk_mq_run_hw_queue +EXPORT_SYMBOL vmlinux 0xd8cd7348 blkdev_fsync +EXPORT_SYMBOL vmlinux 0xd8ce6b44 d_path +EXPORT_SYMBOL vmlinux 0xd8e8e831 pcim_enable_device +EXPORT_SYMBOL vmlinux 0xd90cb249 ZSTD_getBlockSizeMax +EXPORT_SYMBOL vmlinux 0xd916a6ad security_sb_clone_mnt_opts +EXPORT_SYMBOL vmlinux 0xd923e3bf dma_fence_add_callback +EXPORT_SYMBOL vmlinux 0xd93427b3 __alloc_bucket_spinlocks +EXPORT_SYMBOL vmlinux 0xd95c2c6e of_parse_phandle_with_args +EXPORT_SYMBOL vmlinux 0xd966b3a7 touch_atime +EXPORT_SYMBOL vmlinux 0xd9720212 blk_rq_map_kern +EXPORT_SYMBOL vmlinux 0xd985dc99 mempool_free_pages +EXPORT_SYMBOL vmlinux 0xd9885788 register_netdevice +EXPORT_SYMBOL vmlinux 0xd9ad155f rproc_shutdown +EXPORT_SYMBOL vmlinux 0xd9aed75c mmc_can_trim +EXPORT_SYMBOL vmlinux 0xd9b3423b alloc_file_pseudo +EXPORT_SYMBOL vmlinux 0xd9bac924 tty_termios_copy_hw +EXPORT_SYMBOL vmlinux 0xd9c96f26 dev_set_alias +EXPORT_SYMBOL vmlinux 0xd9cfbd24 inet_csk_init_xmit_timers +EXPORT_SYMBOL vmlinux 0xd9d8fd16 register_restart_handler +EXPORT_SYMBOL vmlinux 0xd9d952d1 crypto_aes_sbox +EXPORT_SYMBOL vmlinux 0xd9ec974c srp_reconnect_rport +EXPORT_SYMBOL vmlinux 0xd9ecd618 of_find_net_device_by_node +EXPORT_SYMBOL vmlinux 0xd9edd139 unpin_user_pages_dirty_lock +EXPORT_SYMBOL vmlinux 0xd9fc954b __dynamic_ibdev_dbg +EXPORT_SYMBOL vmlinux 0xda01508f commit_creds +EXPORT_SYMBOL vmlinux 0xda04d4b5 nd_region_acquire_lane +EXPORT_SYMBOL vmlinux 0xda06db17 fwnode_irq_get +EXPORT_SYMBOL vmlinux 0xda1c9200 pci_dev_put +EXPORT_SYMBOL vmlinux 0xda226d2f blk_cleanup_queue +EXPORT_SYMBOL vmlinux 0xda2936b2 inc_node_page_state +EXPORT_SYMBOL vmlinux 0xda3d10a8 security_tun_dev_open +EXPORT_SYMBOL vmlinux 0xda400778 pin_user_pages_locked +EXPORT_SYMBOL vmlinux 0xda5a9df0 tcf_block_get_ext +EXPORT_SYMBOL vmlinux 0xda612e4f tty_driver_flush_buffer +EXPORT_SYMBOL vmlinux 0xda6b52df mfd_cell_enable +EXPORT_SYMBOL vmlinux 0xda72a7ec ZSTD_nextInputType +EXPORT_SYMBOL vmlinux 0xda7d930d inet_release +EXPORT_SYMBOL vmlinux 0xda7eaadf blkdev_put +EXPORT_SYMBOL vmlinux 0xda82e25f sock_cmsg_send +EXPORT_SYMBOL vmlinux 0xda872864 security_locked_down +EXPORT_SYMBOL vmlinux 0xda87f85c pci_enable_msix_range +EXPORT_SYMBOL vmlinux 0xda89ea3b ip_idents_reserve +EXPORT_SYMBOL vmlinux 0xda91b362 block_write_full_page +EXPORT_SYMBOL vmlinux 0xda998aef skb_realloc_headroom +EXPORT_SYMBOL vmlinux 0xda9fc7ae kstrtobool_from_user +EXPORT_SYMBOL vmlinux 0xdaa00f8c dev_addr_flush +EXPORT_SYMBOL vmlinux 0xdaa0b460 current_time +EXPORT_SYMBOL vmlinux 0xdac4913a bitmap_allocate_region +EXPORT_SYMBOL vmlinux 0xdac545b9 lockref_get_or_lock +EXPORT_SYMBOL vmlinux 0xdae57638 hash_and_copy_to_iter +EXPORT_SYMBOL vmlinux 0xdaea0dc9 kobject_get +EXPORT_SYMBOL vmlinux 0xdb026f5b migrate_page_copy +EXPORT_SYMBOL vmlinux 0xdb0da2e9 dquot_operations +EXPORT_SYMBOL vmlinux 0xdb0f2005 padata_set_cpumask +EXPORT_SYMBOL vmlinux 0xdb37f3cf ns_capable_setid +EXPORT_SYMBOL vmlinux 0xdb42a040 set_disk_ro +EXPORT_SYMBOL vmlinux 0xdb42f839 vfs_parse_fs_param +EXPORT_SYMBOL vmlinux 0xdb5758dd md_error +EXPORT_SYMBOL vmlinux 0xdb68bbad rfkill_destroy +EXPORT_SYMBOL vmlinux 0xdb69b369 xp_dma_sync_for_device_slow +EXPORT_SYMBOL vmlinux 0xdb760f52 __kfifo_free +EXPORT_SYMBOL vmlinux 0xdb7ea2f7 dev_mc_unsync +EXPORT_SYMBOL vmlinux 0xdb89d5da __tracepoint_spi_transfer_start +EXPORT_SYMBOL vmlinux 0xdb9168a6 balance_dirty_pages_ratelimited +EXPORT_SYMBOL vmlinux 0xdbba1bd7 agp3_generic_tlbflush +EXPORT_SYMBOL vmlinux 0xdbd4fd37 pci_write_config_dword +EXPORT_SYMBOL vmlinux 0xdbd8da44 configfs_register_group +EXPORT_SYMBOL vmlinux 0xdbdf6c92 ioport_resource +EXPORT_SYMBOL vmlinux 0xdbf3110e gen_pool_first_fit_align +EXPORT_SYMBOL vmlinux 0xdbfa0017 cpu_all_bits +EXPORT_SYMBOL vmlinux 0xdc02941b can_nice +EXPORT_SYMBOL vmlinux 0xdc038fcd unlock_rename +EXPORT_SYMBOL vmlinux 0xdc14eda7 pci_pci_problems +EXPORT_SYMBOL vmlinux 0xdc3fcbc9 __sw_hweight8 +EXPORT_SYMBOL vmlinux 0xdc496b9a proc_set_size +EXPORT_SYMBOL vmlinux 0xdc49c198 reciprocal_value_adv +EXPORT_SYMBOL vmlinux 0xdc512134 backlight_register_notifier +EXPORT_SYMBOL vmlinux 0xdc517533 mntput +EXPORT_SYMBOL vmlinux 0xdc59d326 neigh_table_clear +EXPORT_SYMBOL vmlinux 0xdc5f002a of_get_next_child +EXPORT_SYMBOL vmlinux 0xdc6d859d blk_rq_unmap_user +EXPORT_SYMBOL vmlinux 0xdc8bca64 md_wakeup_thread +EXPORT_SYMBOL vmlinux 0xdc90c9ea mark_buffer_write_io_error +EXPORT_SYMBOL vmlinux 0xdc92c072 unregister_qdisc +EXPORT_SYMBOL vmlinux 0xdc9498dd down +EXPORT_SYMBOL vmlinux 0xdc94abf0 blkdev_issue_flush +EXPORT_SYMBOL vmlinux 0xdcb4e21e find_get_pages_range_tag +EXPORT_SYMBOL vmlinux 0xdcb764ad memset +EXPORT_SYMBOL vmlinux 0xdcdcc52d mipi_dsi_dcs_read +EXPORT_SYMBOL vmlinux 0xdcf4b6d0 param_set_uint +EXPORT_SYMBOL vmlinux 0xdcffb3a2 security_sock_graft +EXPORT_SYMBOL vmlinux 0xdd0c6145 drop_super +EXPORT_SYMBOL vmlinux 0xdd2c169b mb_cache_create +EXPORT_SYMBOL vmlinux 0xdd2c8519 xfrm_policy_flush +EXPORT_SYMBOL vmlinux 0xdd416e40 compat_ipv6_setsockopt +EXPORT_SYMBOL vmlinux 0xdd5038b9 phy_support_asym_pause +EXPORT_SYMBOL vmlinux 0xdd6202ad tcp_sock_set_user_timeout +EXPORT_SYMBOL vmlinux 0xdd64e639 strscpy +EXPORT_SYMBOL vmlinux 0xdd742d72 __sg_free_table +EXPORT_SYMBOL vmlinux 0xdd849d51 scsi_get_sense_info_fld +EXPORT_SYMBOL vmlinux 0xdd9eb4ff cdrom_media_changed +EXPORT_SYMBOL vmlinux 0xddb3769b lockref_mark_dead +EXPORT_SYMBOL vmlinux 0xddb97d0e filemap_fdatawait_range +EXPORT_SYMBOL vmlinux 0xddd26b4b vme_unregister_driver +EXPORT_SYMBOL vmlinux 0xde0108f9 of_read_drc_info_cell +EXPORT_SYMBOL vmlinux 0xde0ea449 of_find_property +EXPORT_SYMBOL vmlinux 0xde311995 xfrm_state_delete +EXPORT_SYMBOL vmlinux 0xde48e9ca _raw_spin_lock +EXPORT_SYMBOL vmlinux 0xde4d4ace dim_calc_stats +EXPORT_SYMBOL vmlinux 0xde67f3c1 devm_ioport_map +EXPORT_SYMBOL vmlinux 0xde706578 __dquot_alloc_space +EXPORT_SYMBOL vmlinux 0xde71bc24 iov_iter_npages +EXPORT_SYMBOL vmlinux 0xde91448c load_vr_state +EXPORT_SYMBOL vmlinux 0xde9b17ed agp3_generic_fetch_size +EXPORT_SYMBOL vmlinux 0xdebddcd5 sock_create_lite +EXPORT_SYMBOL vmlinux 0xded39a6b gen_kill_estimator +EXPORT_SYMBOL vmlinux 0xdee4a385 inet_gro_complete +EXPORT_SYMBOL vmlinux 0xdef1c412 unregister_key_type +EXPORT_SYMBOL vmlinux 0xdef1d370 rtnl_link_get_net +EXPORT_SYMBOL vmlinux 0xdef7c893 fb_match_mode +EXPORT_SYMBOL vmlinux 0xdefa959d ipv6_setsockopt +EXPORT_SYMBOL vmlinux 0xdf00b5d7 percpu_counter_destroy +EXPORT_SYMBOL vmlinux 0xdf07da33 posix_acl_valid +EXPORT_SYMBOL vmlinux 0xdf14bc24 unmap_mapping_range +EXPORT_SYMBOL vmlinux 0xdf21aa08 bh_submit_read +EXPORT_SYMBOL vmlinux 0xdf2c2742 rb_last +EXPORT_SYMBOL vmlinux 0xdf54151a of_get_address +EXPORT_SYMBOL vmlinux 0xdf54a8f7 netlink_unregister_notifier +EXPORT_SYMBOL vmlinux 0xdf6c74de scsi_eh_restore_cmnd +EXPORT_SYMBOL vmlinux 0xdf8b3a4b __dynamic_netdev_dbg +EXPORT_SYMBOL vmlinux 0xdf9250a5 scsi_rescan_device +EXPORT_SYMBOL vmlinux 0xdf929370 fs_overflowgid +EXPORT_SYMBOL vmlinux 0xdf937368 gro_find_receive_by_type +EXPORT_SYMBOL vmlinux 0xdf93b9d8 timespec64_to_jiffies +EXPORT_SYMBOL vmlinux 0xdfb7d6ba dmam_free_coherent +EXPORT_SYMBOL vmlinux 0xdfc082ec dcache_dir_open +EXPORT_SYMBOL vmlinux 0xdfc1c63b jbd2_journal_forget +EXPORT_SYMBOL vmlinux 0xdfc2d82a soft_cursor +EXPORT_SYMBOL vmlinux 0xdfc3fac0 seq_write +EXPORT_SYMBOL vmlinux 0xdfcc992c current_work +EXPORT_SYMBOL vmlinux 0xdfcfdd1e phy_advertise_supported +EXPORT_SYMBOL vmlinux 0xdfdfa9e7 utf8nfdi +EXPORT_SYMBOL vmlinux 0xdfee192e migrate_vma_pages +EXPORT_SYMBOL vmlinux 0xdff905e5 vme_slave_free +EXPORT_SYMBOL vmlinux 0xdffb744b frame_vector_to_pfns +EXPORT_SYMBOL vmlinux 0xdffc80fc vesa_modes +EXPORT_SYMBOL vmlinux 0xe01760e6 fb_get_buffer_offset +EXPORT_SYMBOL vmlinux 0xe022e639 gen_pool_alloc_algo_owner +EXPORT_SYMBOL vmlinux 0xe0285c0e devfreq_unregister_notifier +EXPORT_SYMBOL vmlinux 0xe036dcdf irq_to_desc +EXPORT_SYMBOL vmlinux 0xe03df5d8 pci_alloc_host_bridge +EXPORT_SYMBOL vmlinux 0xe03e337e __mod_node_page_state +EXPORT_SYMBOL vmlinux 0xe0541a5c netlink_net_capable +EXPORT_SYMBOL vmlinux 0xe055f1b0 netdev_has_upper_dev_all_rcu +EXPORT_SYMBOL vmlinux 0xe05e3013 serial8250_do_set_termios +EXPORT_SYMBOL vmlinux 0xe061870e dquot_get_dqblk +EXPORT_SYMBOL vmlinux 0xe06741be deactivate_locked_super +EXPORT_SYMBOL vmlinux 0xe069349f of_device_is_big_endian +EXPORT_SYMBOL vmlinux 0xe0702530 jbd2_journal_start_reserved +EXPORT_SYMBOL vmlinux 0xe07df874 __neigh_set_probe_once +EXPORT_SYMBOL vmlinux 0xe083994f xfrm_register_type_offload +EXPORT_SYMBOL vmlinux 0xe0875eb1 kstrtobool +EXPORT_SYMBOL vmlinux 0xe089edf8 pci_bus_write_config_word +EXPORT_SYMBOL vmlinux 0xe08c58a1 vga_remove_vgacon +EXPORT_SYMBOL vmlinux 0xe08e70c8 mipi_dsi_dcs_set_tear_off +EXPORT_SYMBOL vmlinux 0xe0955f76 utf8_casefold +EXPORT_SYMBOL vmlinux 0xe0a3dac1 dquot_initialize_needed +EXPORT_SYMBOL vmlinux 0xe0b13336 argv_free +EXPORT_SYMBOL vmlinux 0xe0b3bd35 __dynamic_pr_debug +EXPORT_SYMBOL vmlinux 0xe0e00c98 mem_cgroup_from_task +EXPORT_SYMBOL vmlinux 0xe0f96895 of_find_i2c_adapter_by_node +EXPORT_SYMBOL vmlinux 0xe1058bd6 netdev_has_any_upper_dev +EXPORT_SYMBOL vmlinux 0xe11ca997 ZSTD_getDictID_fromDict +EXPORT_SYMBOL vmlinux 0xe123f3d9 dma_fence_release +EXPORT_SYMBOL vmlinux 0xe12bda79 vme_dma_free_attribute +EXPORT_SYMBOL vmlinux 0xe13d5d07 kstrtou16_from_user +EXPORT_SYMBOL vmlinux 0xe143d73a generic_file_mmap +EXPORT_SYMBOL vmlinux 0xe156d4ac phy_ethtool_set_link_ksettings +EXPORT_SYMBOL vmlinux 0xe156dfc8 scsi_host_busy +EXPORT_SYMBOL vmlinux 0xe17a3c5d __skb_flow_dissect +EXPORT_SYMBOL vmlinux 0xe17e8940 rproc_alloc +EXPORT_SYMBOL vmlinux 0xe185cbef xfrm_policy_hash_rebuild +EXPORT_SYMBOL vmlinux 0xe19dd0eb filemap_fdatawrite_range +EXPORT_SYMBOL vmlinux 0xe1a4f16a secure_ipv6_port_ephemeral +EXPORT_SYMBOL vmlinux 0xe1b59ae9 __debugger +EXPORT_SYMBOL vmlinux 0xe1c2cd55 tty_insert_flip_string_flags +EXPORT_SYMBOL vmlinux 0xe1dcf64a audit_log_format +EXPORT_SYMBOL vmlinux 0xe1e7e40c rtnl_nla_parse_ifla +EXPORT_SYMBOL vmlinux 0xe1efb2d7 dma_async_device_register +EXPORT_SYMBOL vmlinux 0xe1f8deac con_is_visible +EXPORT_SYMBOL vmlinux 0xe21f18ac __genradix_iter_peek +EXPORT_SYMBOL vmlinux 0xe2274793 mdiobus_is_registered_device +EXPORT_SYMBOL vmlinux 0xe2304303 mac_map_monitor_sense +EXPORT_SYMBOL vmlinux 0xe2340b73 sock_kmalloc +EXPORT_SYMBOL vmlinux 0xe23d06d3 mmc_retune_unpause +EXPORT_SYMBOL vmlinux 0xe24170ba fuse_dequeue_forget +EXPORT_SYMBOL vmlinux 0xe25a92bb tty_hangup +EXPORT_SYMBOL vmlinux 0xe273d75d alloc_cpu_rmap +EXPORT_SYMBOL vmlinux 0xe279001d blk_mq_requeue_request +EXPORT_SYMBOL vmlinux 0xe27e460c pci_scan_root_bus +EXPORT_SYMBOL vmlinux 0xe28c75bb call_netdevice_notifiers +EXPORT_SYMBOL vmlinux 0xe28e46bc tty_port_put +EXPORT_SYMBOL vmlinux 0xe2a352f2 get_tree_nodev +EXPORT_SYMBOL vmlinux 0xe2adc96d vfs_symlink +EXPORT_SYMBOL vmlinux 0xe2b36d69 fs_bio_set +EXPORT_SYMBOL vmlinux 0xe2b92dc9 security_inet_conn_established +EXPORT_SYMBOL vmlinux 0xe2bc413b mmc_put_card +EXPORT_SYMBOL vmlinux 0xe2c735fd iov_iter_advance +EXPORT_SYMBOL vmlinux 0xe2d5255a strcmp +EXPORT_SYMBOL vmlinux 0xe2e1ec7a pin_user_pages_unlocked +EXPORT_SYMBOL vmlinux 0xe2e3fb5a finish_open +EXPORT_SYMBOL vmlinux 0xe2e651db phy_ethtool_get_wol +EXPORT_SYMBOL vmlinux 0xe2ffeef3 scsi_req_init +EXPORT_SYMBOL vmlinux 0xe3179eaf of_clk_get_by_name +EXPORT_SYMBOL vmlinux 0xe31d8a78 inode_dio_wait +EXPORT_SYMBOL vmlinux 0xe32ab4d8 xxh64_digest +EXPORT_SYMBOL vmlinux 0xe335ed29 tcp_sendmsg +EXPORT_SYMBOL vmlinux 0xe345efe2 ata_dev_printk +EXPORT_SYMBOL vmlinux 0xe3535123 redraw_screen +EXPORT_SYMBOL vmlinux 0xe355239a fbcon_set_bitops +EXPORT_SYMBOL vmlinux 0xe37f4a34 set_bh_page +EXPORT_SYMBOL vmlinux 0xe3854272 tcp_rtx_synack +EXPORT_SYMBOL vmlinux 0xe38744ac mipi_dsi_driver_unregister +EXPORT_SYMBOL vmlinux 0xe399d94d param_ops_uint +EXPORT_SYMBOL vmlinux 0xe3b3b1e0 clear_page_dirty_for_io +EXPORT_SYMBOL vmlinux 0xe3b7e8b0 of_phy_attach +EXPORT_SYMBOL vmlinux 0xe3c463b4 tcp_md5_needed +EXPORT_SYMBOL vmlinux 0xe3ec2f2b alloc_chrdev_region +EXPORT_SYMBOL vmlinux 0xe3ecb20e mpage_readpage +EXPORT_SYMBOL vmlinux 0xe3f29f70 __init_waitqueue_head +EXPORT_SYMBOL vmlinux 0xe3ff2c41 get_random_u64 +EXPORT_SYMBOL vmlinux 0xe41476d9 ZSTD_getParams +EXPORT_SYMBOL vmlinux 0xe419bc99 iowrite32be +EXPORT_SYMBOL vmlinux 0xe4329092 __ctzdi2 +EXPORT_SYMBOL vmlinux 0xe441e95a refcount_dec_not_one +EXPORT_SYMBOL vmlinux 0xe45427df of_get_parent +EXPORT_SYMBOL vmlinux 0xe4749fd0 phy_ethtool_set_wol +EXPORT_SYMBOL vmlinux 0xe484e35f ioread32 +EXPORT_SYMBOL vmlinux 0xe4888ac5 reuseport_add_sock +EXPORT_SYMBOL vmlinux 0xe48b2fab xfrm_state_walk_done +EXPORT_SYMBOL vmlinux 0xe4a3c170 pci_map_rom +EXPORT_SYMBOL vmlinux 0xe4adb908 t10_pi_type1_ip +EXPORT_SYMBOL vmlinux 0xe4bdeb8e pm8606_osc_disable +EXPORT_SYMBOL vmlinux 0xe4d9a7f7 ps2_sliced_command +EXPORT_SYMBOL vmlinux 0xe4e7cff3 tcp_sockets_allocated +EXPORT_SYMBOL vmlinux 0xe4efb700 register_sysctl +EXPORT_SYMBOL vmlinux 0xe4fe8ca1 _raw_spin_unlock_bh +EXPORT_SYMBOL vmlinux 0xe50491e6 get_mem_cgroup_from_mm +EXPORT_SYMBOL vmlinux 0xe5052c35 gtm_set_timer16 +EXPORT_SYMBOL vmlinux 0xe51bde54 memcpy_page_flushcache +EXPORT_SYMBOL vmlinux 0xe523ad75 synchronize_irq +EXPORT_SYMBOL vmlinux 0xe555812e nf_hook_slow +EXPORT_SYMBOL vmlinux 0xe56955b7 vme_master_request +EXPORT_SYMBOL vmlinux 0xe573110a scsi_eh_finish_cmd +EXPORT_SYMBOL vmlinux 0xe58090ca security_ib_endport_manage_subnet +EXPORT_SYMBOL vmlinux 0xe5860d49 netif_tx_wake_queue +EXPORT_SYMBOL vmlinux 0xe5867808 dlci_ioctl_set +EXPORT_SYMBOL vmlinux 0xe5869ebe pin_user_pages +EXPORT_SYMBOL vmlinux 0xe58a79d2 blkdev_issue_discard +EXPORT_SYMBOL vmlinux 0xe590dea3 sk_busy_loop_end +EXPORT_SYMBOL vmlinux 0xe592cb9f __cleancache_init_shared_fs +EXPORT_SYMBOL vmlinux 0xe59f742f uart_suspend_port +EXPORT_SYMBOL vmlinux 0xe5a00e19 sdev_prefix_printk +EXPORT_SYMBOL vmlinux 0xe5ad1811 tc_setup_cb_add +EXPORT_SYMBOL vmlinux 0xe5b78977 pskb_expand_head +EXPORT_SYMBOL vmlinux 0xe5bc9a53 slhc_free +EXPORT_SYMBOL vmlinux 0xe5bd7b6e vfs_tmpfile +EXPORT_SYMBOL vmlinux 0xe5bd7c64 netif_receive_skb +EXPORT_SYMBOL vmlinux 0xe5c78a99 do_blank_screen +EXPORT_SYMBOL vmlinux 0xe5cfebf1 tcp_parse_options +EXPORT_SYMBOL vmlinux 0xe5d71a61 __cpu_possible_mask +EXPORT_SYMBOL vmlinux 0xe5fcd1da of_get_child_by_name +EXPORT_SYMBOL vmlinux 0xe613a798 inet_addr_is_any +EXPORT_SYMBOL vmlinux 0xe61806be xfrm6_input_addr +EXPORT_SYMBOL vmlinux 0xe62f3bd8 ppp_input +EXPORT_SYMBOL vmlinux 0xe6402b08 genphy_update_link +EXPORT_SYMBOL vmlinux 0xe6861ca9 __tracepoint_kmem_cache_alloc +EXPORT_SYMBOL vmlinux 0xe691ac7f ZSTD_decompressBegin +EXPORT_SYMBOL vmlinux 0xe694077f gen_pool_for_each_chunk +EXPORT_SYMBOL vmlinux 0xe69aeaf3 uart_remove_one_port +EXPORT_SYMBOL vmlinux 0xe6bcd1ee ndo_dflt_fdb_del +EXPORT_SYMBOL vmlinux 0xe6bffe7f configfs_remove_default_groups +EXPORT_SYMBOL vmlinux 0xe6c9412c config_group_init +EXPORT_SYMBOL vmlinux 0xe6c9bf3f xp_can_alloc +EXPORT_SYMBOL vmlinux 0xe6cf5d78 fscrypt_decrypt_block_inplace +EXPORT_SYMBOL vmlinux 0xe6d50ac2 inode_owner_or_capable +EXPORT_SYMBOL vmlinux 0xe6ee3a0b devfreq_remove_governor +EXPORT_SYMBOL vmlinux 0xe70d1020 netdev_name_node_alt_destroy +EXPORT_SYMBOL vmlinux 0xe726d188 netdev_warn +EXPORT_SYMBOL vmlinux 0xe7324b9a utf8nfdicf +EXPORT_SYMBOL vmlinux 0xe73c880b of_mdiobus_phy_device_register +EXPORT_SYMBOL vmlinux 0xe7414e8b pnv_cxl_get_irq_count +EXPORT_SYMBOL vmlinux 0xe74c3f7c radix_tree_iter_resume +EXPORT_SYMBOL vmlinux 0xe788b1d3 pcibios_resource_to_bus +EXPORT_SYMBOL vmlinux 0xe79f526d xfrm_state_lookup_byaddr +EXPORT_SYMBOL vmlinux 0xe7c59d12 pci_find_hose_for_OF_device +EXPORT_SYMBOL vmlinux 0xe7ce7439 _memcpy_fromio +EXPORT_SYMBOL vmlinux 0xe7d4daac seq_list_next +EXPORT_SYMBOL vmlinux 0xe7da28ab tty_port_open +EXPORT_SYMBOL vmlinux 0xe7e123e3 vm_map_pages_zero +EXPORT_SYMBOL vmlinux 0xe7e27110 kernel_getpeername +EXPORT_SYMBOL vmlinux 0xe7fa5e05 serio_unregister_child_port +EXPORT_SYMBOL vmlinux 0xe800b768 pcibios_bus_to_resource +EXPORT_SYMBOL vmlinux 0xe813093e __dev_get_by_index +EXPORT_SYMBOL vmlinux 0xe82b4435 debugfs_create_automount +EXPORT_SYMBOL vmlinux 0xe8355c01 posix_acl_from_xattr +EXPORT_SYMBOL vmlinux 0xe8395dd0 dcache_dir_close +EXPORT_SYMBOL vmlinux 0xe854806b __mmc_claim_host +EXPORT_SYMBOL vmlinux 0xe854dfb6 inode_get_bytes +EXPORT_SYMBOL vmlinux 0xe878cc22 radix_tree_tagged +EXPORT_SYMBOL vmlinux 0xe8915b6c skb_queue_head +EXPORT_SYMBOL vmlinux 0xe8931089 phy_ethtool_set_eee +EXPORT_SYMBOL vmlinux 0xe89be58e md_done_sync +EXPORT_SYMBOL vmlinux 0xe8ac78ea ip_mc_leave_group +EXPORT_SYMBOL vmlinux 0xe8ca1b8f inet_frag_pull_head +EXPORT_SYMBOL vmlinux 0xe8d54c77 xa_clear_mark +EXPORT_SYMBOL vmlinux 0xe8d71d65 sock_from_file +EXPORT_SYMBOL vmlinux 0xe8f2409b sync_inodes_sb +EXPORT_SYMBOL vmlinux 0xe8f962da vfs_readlink +EXPORT_SYMBOL vmlinux 0xe9077baf blk_get_request +EXPORT_SYMBOL vmlinux 0xe914e41e strcpy +EXPORT_SYMBOL vmlinux 0xe948e9a1 ip6_frag_next +EXPORT_SYMBOL vmlinux 0xe94a9335 udp_seq_next +EXPORT_SYMBOL vmlinux 0xe953b21f get_next_ino +EXPORT_SYMBOL vmlinux 0xe9777fbb ip6_xmit +EXPORT_SYMBOL vmlinux 0xe9791def tcp_get_md5sig_pool +EXPORT_SYMBOL vmlinux 0xe97ffd7e d_genocide +EXPORT_SYMBOL vmlinux 0xe9f7149c zlib_deflate_workspacesize +EXPORT_SYMBOL vmlinux 0xe9fc8b01 gen_pool_add_owner +EXPORT_SYMBOL vmlinux 0xe9fe5295 page_symlink_inode_operations +EXPORT_SYMBOL vmlinux 0xea3c8e4e scsilun_to_int +EXPORT_SYMBOL vmlinux 0xea426e43 mempool_resize +EXPORT_SYMBOL vmlinux 0xea584087 security_cred_getsecid +EXPORT_SYMBOL vmlinux 0xea5dd955 tcf_idr_cleanup +EXPORT_SYMBOL vmlinux 0xea6f9a36 zlib_deflate_dfltcc_enabled +EXPORT_SYMBOL vmlinux 0xea75419b of_phy_find_device +EXPORT_SYMBOL vmlinux 0xea778fab sg_pcopy_to_buffer +EXPORT_SYMBOL vmlinux 0xea80392f on_each_cpu_cond_mask +EXPORT_SYMBOL vmlinux 0xea80dfe1 security_req_classify_flow +EXPORT_SYMBOL vmlinux 0xea960e6d discard_new_inode +EXPORT_SYMBOL vmlinux 0xeabc12d5 simple_transaction_get +EXPORT_SYMBOL vmlinux 0xeabf7152 tty_hung_up_p +EXPORT_SYMBOL vmlinux 0xeac45e94 backlight_device_set_brightness +EXPORT_SYMBOL vmlinux 0xead63085 igrab +EXPORT_SYMBOL vmlinux 0xeaf08ca0 inet6_offloads +EXPORT_SYMBOL vmlinux 0xeafc141f __posix_acl_chmod +EXPORT_SYMBOL vmlinux 0xeb201b91 input_unregister_device +EXPORT_SYMBOL vmlinux 0xeb22c2d7 of_get_pci_address +EXPORT_SYMBOL vmlinux 0xeb233a45 __kmalloc +EXPORT_SYMBOL vmlinux 0xeb29441a agp_generic_destroy_pages +EXPORT_SYMBOL vmlinux 0xeb36ff44 scsi_bios_ptable +EXPORT_SYMBOL vmlinux 0xeb37101c audit_log_end +EXPORT_SYMBOL vmlinux 0xeb44339a free_pages_exact +EXPORT_SYMBOL vmlinux 0xeb45652c __check_sticky +EXPORT_SYMBOL vmlinux 0xeb488b36 input_set_capability +EXPORT_SYMBOL vmlinux 0xeb5b7d03 rtnl_set_sk_err +EXPORT_SYMBOL vmlinux 0xeb6a30b1 devm_devfreq_remove_device +EXPORT_SYMBOL vmlinux 0xeb6d8a46 nvdimm_namespace_common_probe +EXPORT_SYMBOL vmlinux 0xeb855ac2 mipi_dsi_dcs_get_power_mode +EXPORT_SYMBOL vmlinux 0xeb8c7b7b cxl_use_count +EXPORT_SYMBOL vmlinux 0xeb8f2d4f __pmd_frag_size_shift +EXPORT_SYMBOL vmlinux 0xeb9a7255 mach_powernv +EXPORT_SYMBOL vmlinux 0xeb9c0015 rproc_put +EXPORT_SYMBOL vmlinux 0xeb9e913d sgl_alloc_order +EXPORT_SYMBOL vmlinux 0xeba2a1f7 rtas_indicator_present +EXPORT_SYMBOL vmlinux 0xebce084a qdisc_put +EXPORT_SYMBOL vmlinux 0xebd20d53 phy_driver_unregister +EXPORT_SYMBOL vmlinux 0xebd32cdd dma_fence_get_status +EXPORT_SYMBOL vmlinux 0xebfba86d blk_put_queue +EXPORT_SYMBOL vmlinux 0xec0537d8 __vfs_setxattr +EXPORT_SYMBOL vmlinux 0xec15717f fscrypt_fname_disk_to_usr +EXPORT_SYMBOL vmlinux 0xec2accd5 vfs_mkdir +EXPORT_SYMBOL vmlinux 0xec4d9e3a clk_get_sys +EXPORT_SYMBOL vmlinux 0xec4fb493 remove_wait_queue +EXPORT_SYMBOL vmlinux 0xec57d690 generic_perform_write +EXPORT_SYMBOL vmlinux 0xec613aa7 dquot_get_next_dqblk +EXPORT_SYMBOL vmlinux 0xec754cd1 release_pages +EXPORT_SYMBOL vmlinux 0xec86c205 default_qdisc_ops +EXPORT_SYMBOL vmlinux 0xec97ead8 __kernel_io_start +EXPORT_SYMBOL vmlinux 0xec9ec942 of_device_unregister +EXPORT_SYMBOL vmlinux 0xecb46879 security_sb_set_mnt_opts +EXPORT_SYMBOL vmlinux 0xecb5ae15 flush_dcache_page +EXPORT_SYMBOL vmlinux 0xecbb926f xor_altivec_3 +EXPORT_SYMBOL vmlinux 0xecc5dcda netpoll_print_options +EXPORT_SYMBOL vmlinux 0xece784c2 rb_first +EXPORT_SYMBOL vmlinux 0xece9516f clocksource_unregister +EXPORT_SYMBOL vmlinux 0xed39bf61 pci_bus_alloc_resource +EXPORT_SYMBOL vmlinux 0xed3dbc3f pci_choose_state +EXPORT_SYMBOL vmlinux 0xed3f3456 drop_super_exclusive +EXPORT_SYMBOL vmlinux 0xed44e9ac phy_ethtool_get_link_ksettings +EXPORT_SYMBOL vmlinux 0xed4e1694 dma_resv_fini +EXPORT_SYMBOL vmlinux 0xed6d7485 pagecache_isize_extended +EXPORT_SYMBOL vmlinux 0xed71d3b9 pci_release_resource +EXPORT_SYMBOL vmlinux 0xed7c8c37 netif_set_real_num_tx_queues +EXPORT_SYMBOL vmlinux 0xed94b3e8 __tracepoint_module_get +EXPORT_SYMBOL vmlinux 0xeda5b09d mipi_dsi_shutdown_peripheral +EXPORT_SYMBOL vmlinux 0xeda9a45e get_agp_version +EXPORT_SYMBOL vmlinux 0xedb5b8f5 unix_gc_lock +EXPORT_SYMBOL vmlinux 0xedbae65e dcb_getapp +EXPORT_SYMBOL vmlinux 0xedbaee5e nla_strcmp +EXPORT_SYMBOL vmlinux 0xedc03953 iounmap +EXPORT_SYMBOL vmlinux 0xedd95957 pcie_set_mps +EXPORT_SYMBOL vmlinux 0xedd9a61d xfrm_init_replay +EXPORT_SYMBOL vmlinux 0xedde7715 sock_wake_async +EXPORT_SYMBOL vmlinux 0xede275db try_to_writeback_inodes_sb +EXPORT_SYMBOL vmlinux 0xee02f958 __tracepoint_dma_fence_signaled +EXPORT_SYMBOL vmlinux 0xee0e0c5b nvm_end_io +EXPORT_SYMBOL vmlinux 0xee28f44a mpage_writepage +EXPORT_SYMBOL vmlinux 0xee2d0fc7 _local_bh_enable +EXPORT_SYMBOL vmlinux 0xee32c914 mmc_detect_card_removed +EXPORT_SYMBOL vmlinux 0xee342f0b inet_dgram_connect +EXPORT_SYMBOL vmlinux 0xee50bd47 to_nd_btt +EXPORT_SYMBOL vmlinux 0xee58e970 fb_add_videomode +EXPORT_SYMBOL vmlinux 0xee592dac pci_free_irq_vectors +EXPORT_SYMBOL vmlinux 0xee62290a ipv6_find_hdr +EXPORT_SYMBOL vmlinux 0xee8c436b ip_route_me_harder +EXPORT_SYMBOL vmlinux 0xee8d74d6 jiffies64_to_nsecs +EXPORT_SYMBOL vmlinux 0xee91879b rb_first_postorder +EXPORT_SYMBOL vmlinux 0xee91f8ac ip6_find_1stfragopt +EXPORT_SYMBOL vmlinux 0xeeb1affa vme_master_mmap +EXPORT_SYMBOL vmlinux 0xeeb5f049 inet_sk_set_state +EXPORT_SYMBOL vmlinux 0xeec11759 max8998_bulk_read +EXPORT_SYMBOL vmlinux 0xeececb9e flow_rule_match_enc_ipv6_addrs +EXPORT_SYMBOL vmlinux 0xeed5bcca __pud_table_size +EXPORT_SYMBOL vmlinux 0xeeec081c ppp_unregister_channel +EXPORT_SYMBOL vmlinux 0xeef52056 netif_receive_skb_core +EXPORT_SYMBOL vmlinux 0xeeffa34b xps_needed +EXPORT_SYMBOL vmlinux 0xef045ee0 con_set_default_unimap +EXPORT_SYMBOL vmlinux 0xef1ff1c8 ata_print_version +EXPORT_SYMBOL vmlinux 0xef25cfc1 generic_pipe_buf_release +EXPORT_SYMBOL vmlinux 0xef3ddd81 inet6_release +EXPORT_SYMBOL vmlinux 0xef4ec375 pcie_capability_read_dword +EXPORT_SYMBOL vmlinux 0xef4fd593 revert_creds +EXPORT_SYMBOL vmlinux 0xef589237 param_ops_charp +EXPORT_SYMBOL vmlinux 0xef71a22c wait_for_completion_interruptible +EXPORT_SYMBOL vmlinux 0xef746414 arp_xmit +EXPORT_SYMBOL vmlinux 0xefa892bc scsi_device_quiesce +EXPORT_SYMBOL vmlinux 0xefac4e8c xfrm4_protocol_deregister +EXPORT_SYMBOL vmlinux 0xefacae98 setup_arg_pages +EXPORT_SYMBOL vmlinux 0xefaf2e4f tcf_queue_work +EXPORT_SYMBOL vmlinux 0xefb4f163 mmc_of_parse_voltage +EXPORT_SYMBOL vmlinux 0xefb591e7 dev_uc_flush +EXPORT_SYMBOL vmlinux 0xefd30512 __cpuhp_setup_state +EXPORT_SYMBOL vmlinux 0xefd57393 phy_free_interrupt +EXPORT_SYMBOL vmlinux 0xefe4f679 ZSTD_CCtxWorkspaceBound +EXPORT_SYMBOL vmlinux 0xefe71870 set_security_override +EXPORT_SYMBOL vmlinux 0xefebbd40 ioread64be_lo_hi +EXPORT_SYMBOL vmlinux 0xefef3630 inc_node_state +EXPORT_SYMBOL vmlinux 0xeff608e0 kstrtos16_from_user +EXPORT_SYMBOL vmlinux 0xf0009fee put_pages_list +EXPORT_SYMBOL vmlinux 0xf008a885 seg6_hmac_init +EXPORT_SYMBOL vmlinux 0xf0225086 tty_port_init +EXPORT_SYMBOL vmlinux 0xf0303863 input_get_poll_interval +EXPORT_SYMBOL vmlinux 0xf0316f85 tcp_make_synack +EXPORT_SYMBOL vmlinux 0xf0329ad1 down_read_trylock +EXPORT_SYMBOL vmlinux 0xf0403209 pci_pme_active +EXPORT_SYMBOL vmlinux 0xf0469b42 __blk_rq_map_sg +EXPORT_SYMBOL vmlinux 0xf04af8e9 vmf_insert_pfn_prot +EXPORT_SYMBOL vmlinux 0xf057a28d nf_register_queue_handler +EXPORT_SYMBOL vmlinux 0xf057f39e neigh_update +EXPORT_SYMBOL vmlinux 0xf065f629 ioread16be +EXPORT_SYMBOL vmlinux 0xf068a095 jbd2_log_wait_commit +EXPORT_SYMBOL vmlinux 0xf0721e58 sock_common_getsockopt +EXPORT_SYMBOL vmlinux 0xf07350bd proc_dointvec_ms_jiffies +EXPORT_SYMBOL vmlinux 0xf07fe9a0 lockref_put_or_lock +EXPORT_SYMBOL vmlinux 0xf08c67de napi_alloc_frag +EXPORT_SYMBOL vmlinux 0xf08f7688 sk_stream_wait_connect +EXPORT_SYMBOL vmlinux 0xf09b5d9a get_zeroed_page +EXPORT_SYMBOL vmlinux 0xf0b55704 tcp_md5_hash_key +EXPORT_SYMBOL vmlinux 0xf102033e slhc_remember +EXPORT_SYMBOL vmlinux 0xf1064885 seg6_push_hmac +EXPORT_SYMBOL vmlinux 0xf10de535 ioread8 +EXPORT_SYMBOL vmlinux 0xf11cd6ce down_interruptible +EXPORT_SYMBOL vmlinux 0xf1222750 agp_copy_info +EXPORT_SYMBOL vmlinux 0xf1309aaa rproc_remove_subdev +EXPORT_SYMBOL vmlinux 0xf1349228 swake_up_locked +EXPORT_SYMBOL vmlinux 0xf137486c simple_lookup +EXPORT_SYMBOL vmlinux 0xf156c338 __sk_receive_skb +EXPORT_SYMBOL vmlinux 0xf169c7ec fd_install +EXPORT_SYMBOL vmlinux 0xf17f402a scsi_add_device +EXPORT_SYMBOL vmlinux 0xf195c682 fb_invert_cmaps +EXPORT_SYMBOL vmlinux 0xf1969a8e __usecs_to_jiffies +EXPORT_SYMBOL vmlinux 0xf1aa41b7 xfrm_state_update +EXPORT_SYMBOL vmlinux 0xf1c33f77 xp_dma_unmap +EXPORT_SYMBOL vmlinux 0xf1d00628 __cpuhp_remove_state +EXPORT_SYMBOL vmlinux 0xf1d18e90 _outsw_ns +EXPORT_SYMBOL vmlinux 0xf1d65856 agp_generic_create_gatt_table +EXPORT_SYMBOL vmlinux 0xf1db1704 nla_memcpy +EXPORT_SYMBOL vmlinux 0xf1dced1d vme_unregister_bridge +EXPORT_SYMBOL vmlinux 0xf1e046cc panic +EXPORT_SYMBOL vmlinux 0xf1e63929 devmap_managed_key +EXPORT_SYMBOL vmlinux 0xf1e98c74 avenrun +EXPORT_SYMBOL vmlinux 0xf1ebb504 input_unregister_handle +EXPORT_SYMBOL vmlinux 0xf208f1c3 i2c_register_driver +EXPORT_SYMBOL vmlinux 0xf21576f1 sock_create +EXPORT_SYMBOL vmlinux 0xf2215f74 blk_finish_plug +EXPORT_SYMBOL vmlinux 0xf227e7da __tracepoint_kmem_cache_free +EXPORT_SYMBOL vmlinux 0xf23818eb inet6_protos +EXPORT_SYMBOL vmlinux 0xf23fcb99 __kfifo_in +EXPORT_SYMBOL vmlinux 0xf24321bc simple_dir_operations +EXPORT_SYMBOL vmlinux 0xf251b0d4 xfrm_input_resume +EXPORT_SYMBOL vmlinux 0xf262af5d pci_write_config_byte +EXPORT_SYMBOL vmlinux 0xf2705d8b ucc_fast_init +EXPORT_SYMBOL vmlinux 0xf276d6da scsi_report_bus_reset +EXPORT_SYMBOL vmlinux 0xf280a35e phy_loopback +EXPORT_SYMBOL vmlinux 0xf280b8d3 iw_handler_set_thrspy +EXPORT_SYMBOL vmlinux 0xf283e15d __tcf_idr_release +EXPORT_SYMBOL vmlinux 0xf28404cf devlink_dpipe_header_ipv6 +EXPORT_SYMBOL vmlinux 0xf28cfee7 inet_csk_reqsk_queue_add +EXPORT_SYMBOL vmlinux 0xf2927c93 vmap +EXPORT_SYMBOL vmlinux 0xf292f5d3 tcp_seq_next +EXPORT_SYMBOL vmlinux 0xf29f8515 __kfifo_dma_out_prepare_r +EXPORT_SYMBOL vmlinux 0xf2a16b55 sock_init_data +EXPORT_SYMBOL vmlinux 0xf2ac5768 scm_detach_fds +EXPORT_SYMBOL vmlinux 0xf2c43f3f zlib_deflate +EXPORT_SYMBOL vmlinux 0xf2d0357c page_pool_update_nid +EXPORT_SYMBOL vmlinux 0xf2e5bd87 security_free_mnt_opts +EXPORT_SYMBOL vmlinux 0xf2ed4075 phy_ethtool_ksettings_get +EXPORT_SYMBOL vmlinux 0xf2f53617 memregion_free +EXPORT_SYMBOL vmlinux 0xf3107926 sha224_update +EXPORT_SYMBOL vmlinux 0xf31f1197 dquot_quota_on +EXPORT_SYMBOL vmlinux 0xf32a2c4d bio_devname +EXPORT_SYMBOL vmlinux 0xf3322d36 max8998_update_reg +EXPORT_SYMBOL vmlinux 0xf346231f seq_list_start_head +EXPORT_SYMBOL vmlinux 0xf34f3bc3 dma_fence_chain_walk +EXPORT_SYMBOL vmlinux 0xf353a698 register_module_notifier +EXPORT_SYMBOL vmlinux 0xf389fe60 __hw_addr_init +EXPORT_SYMBOL vmlinux 0xf3916987 global_cursor_default +EXPORT_SYMBOL vmlinux 0xf3a57892 release_dentry_name_snapshot +EXPORT_SYMBOL vmlinux 0xf3b1db75 bioset_exit +EXPORT_SYMBOL vmlinux 0xf3b30a06 utf8version_latest +EXPORT_SYMBOL vmlinux 0xf3c0b065 neigh_carrier_down +EXPORT_SYMBOL vmlinux 0xf3c453dc fs_param_is_s32 +EXPORT_SYMBOL vmlinux 0xf3d64969 arch_free_page +EXPORT_SYMBOL vmlinux 0xf3d8d07f inet_pton_with_scope +EXPORT_SYMBOL vmlinux 0xf3dc5753 set_wb_congested +EXPORT_SYMBOL vmlinux 0xf3e0e1df allocate_resource +EXPORT_SYMBOL vmlinux 0xf3e6402e __bitmap_equal +EXPORT_SYMBOL vmlinux 0xf3ed6b09 tcf_block_put +EXPORT_SYMBOL vmlinux 0xf41bc9e2 cdrom_number_of_slots +EXPORT_SYMBOL vmlinux 0xf425eaeb __nla_reserve_64bit +EXPORT_SYMBOL vmlinux 0xf42d64ca proc_dostring +EXPORT_SYMBOL vmlinux 0xf441ac43 ioread8_rep +EXPORT_SYMBOL vmlinux 0xf443bf3d ipv6_getsockopt +EXPORT_SYMBOL vmlinux 0xf44a904a net_ns_barrier +EXPORT_SYMBOL vmlinux 0xf465a7d2 nvm_alloc_dev +EXPORT_SYMBOL vmlinux 0xf472017a swake_up_all +EXPORT_SYMBOL vmlinux 0xf474c21c bitmap_print_to_pagebuf +EXPORT_SYMBOL vmlinux 0xf474fdcb kfree_const +EXPORT_SYMBOL vmlinux 0xf498618f pcie_capability_write_word +EXPORT_SYMBOL vmlinux 0xf4a6bc86 fscrypt_setup_filename +EXPORT_SYMBOL vmlinux 0xf4ab9e4c padata_stop +EXPORT_SYMBOL vmlinux 0xf4bdbeb9 __frontswap_invalidate_area +EXPORT_SYMBOL vmlinux 0xf4d2f66f sk_net_capable +EXPORT_SYMBOL vmlinux 0xf4d61909 clocksource_change_rating +EXPORT_SYMBOL vmlinux 0xf4db35bc stpcpy +EXPORT_SYMBOL vmlinux 0xf4ebd477 scsi_target_resume +EXPORT_SYMBOL vmlinux 0xf4f0bd99 inet_frag_queue_insert +EXPORT_SYMBOL vmlinux 0xf4f14de6 rtnl_trylock +EXPORT_SYMBOL vmlinux 0xf4fa2649 __xa_alloc_cyclic +EXPORT_SYMBOL vmlinux 0xf50eaf7d tcp_gro_complete +EXPORT_SYMBOL vmlinux 0xf515b1f6 fbcon_update_vcs +EXPORT_SYMBOL vmlinux 0xf5173506 timestamp_truncate +EXPORT_SYMBOL vmlinux 0xf520cf89 tcf_em_unregister +EXPORT_SYMBOL vmlinux 0xf5222143 _raw_spin_lock_irqsave +EXPORT_SYMBOL vmlinux 0xf53d4c26 qdisc_class_hash_destroy +EXPORT_SYMBOL vmlinux 0xf53f722e trace_print_symbols_seq +EXPORT_SYMBOL vmlinux 0xf5488fd9 idr_alloc_cyclic +EXPORT_SYMBOL vmlinux 0xf554effd km_policy_expired +EXPORT_SYMBOL vmlinux 0xf558d60b pid_task +EXPORT_SYMBOL vmlinux 0xf55b3b3d __arch_hweight16 +EXPORT_SYMBOL vmlinux 0xf567d0f4 dev_mc_init +EXPORT_SYMBOL vmlinux 0xf579a361 map_kernel_range_noflush +EXPORT_SYMBOL vmlinux 0xf586becc inet_offloads +EXPORT_SYMBOL vmlinux 0xf58f99f6 mdiobus_free +EXPORT_SYMBOL vmlinux 0xf5a20ed2 __genradix_prealloc +EXPORT_SYMBOL vmlinux 0xf5a62ecc _memset_io +EXPORT_SYMBOL vmlinux 0xf5aa0745 __dev_get_by_name +EXPORT_SYMBOL vmlinux 0xf5c4b444 memcpy_flushcache +EXPORT_SYMBOL vmlinux 0xf5d29718 tcp_sock_set_syncnt +EXPORT_SYMBOL vmlinux 0xf5daa497 tty_unlock +EXPORT_SYMBOL vmlinux 0xf5e1558d crash_shutdown_unregister +EXPORT_SYMBOL vmlinux 0xf5e53603 i2c_clients_command +EXPORT_SYMBOL vmlinux 0xf5e5a87b hdmi_infoframe_pack_only +EXPORT_SYMBOL vmlinux 0xf5e7ea40 ktime_get_coarse_ts64 +EXPORT_SYMBOL vmlinux 0xf5ebc1df __dec_zone_page_state +EXPORT_SYMBOL vmlinux 0xf60ceb15 dcbnl_cee_notify +EXPORT_SYMBOL vmlinux 0xf60de0d1 unregister_framebuffer +EXPORT_SYMBOL vmlinux 0xf6150d63 __xa_set_mark +EXPORT_SYMBOL vmlinux 0xf62c39fe ucc_slow_graceful_stop_tx +EXPORT_SYMBOL vmlinux 0xf63d2d17 dquot_get_state +EXPORT_SYMBOL vmlinux 0xf643d104 hsiphash_4u32 +EXPORT_SYMBOL vmlinux 0xf6517b05 rproc_elf_load_rsc_table +EXPORT_SYMBOL vmlinux 0xf665f74f sock_load_diag_module +EXPORT_SYMBOL vmlinux 0xf6743dc4 pipe_unlock +EXPORT_SYMBOL vmlinux 0xf681acfc hdmi_infoframe_unpack +EXPORT_SYMBOL vmlinux 0xf681d5f0 d_mark_dontcache +EXPORT_SYMBOL vmlinux 0xf68285c0 register_inetaddr_notifier +EXPORT_SYMBOL vmlinux 0xf695cb77 pci_enable_device_io +EXPORT_SYMBOL vmlinux 0xf6c85149 __set_page_dirty_nobuffers +EXPORT_SYMBOL vmlinux 0xf6caad5f sock_no_setsockopt +EXPORT_SYMBOL vmlinux 0xf6d381ec uart_match_port +EXPORT_SYMBOL vmlinux 0xf6de7bc0 of_phy_is_fixed_link +EXPORT_SYMBOL vmlinux 0xf6e10fab netdev_alert +EXPORT_SYMBOL vmlinux 0xf6e6661c mipi_dsi_driver_register_full +EXPORT_SYMBOL vmlinux 0xf6ebc03b net_ratelimit +EXPORT_SYMBOL vmlinux 0xf6f58765 inet_addr_type_dev_table +EXPORT_SYMBOL vmlinux 0xf6f806d1 seg6_hmac_info_lookup +EXPORT_SYMBOL vmlinux 0xf6fc8791 __bitmap_xor +EXPORT_SYMBOL vmlinux 0xf70be483 ptp_clock_index +EXPORT_SYMBOL vmlinux 0xf7252211 path_is_mountpoint +EXPORT_SYMBOL vmlinux 0xf72683a6 ipv6_chk_addr +EXPORT_SYMBOL vmlinux 0xf7279bd3 vfs_llseek +EXPORT_SYMBOL vmlinux 0xf738d1be register_blocking_lsm_notifier +EXPORT_SYMBOL vmlinux 0xf7584a9c find_font +EXPORT_SYMBOL vmlinux 0xf77337a1 hdmi_audio_infoframe_check +EXPORT_SYMBOL vmlinux 0xf782df0e xfrm_state_check_expire +EXPORT_SYMBOL vmlinux 0xf79991dd fqdir_exit +EXPORT_SYMBOL vmlinux 0xf7c2df39 __wake_up_bit +EXPORT_SYMBOL vmlinux 0xf7ccf9ab elv_bio_merge_ok +EXPORT_SYMBOL vmlinux 0xf811e69d scsi_eh_flush_done_q +EXPORT_SYMBOL vmlinux 0xf812cff6 memscan +EXPORT_SYMBOL vmlinux 0xf818f0f7 tcp_syn_ack_timeout +EXPORT_SYMBOL vmlinux 0xf82abc1d isa_dma_bridge_buggy +EXPORT_SYMBOL vmlinux 0xf82ec573 rb_prev +EXPORT_SYMBOL vmlinux 0xf8521539 jbd2_journal_stop +EXPORT_SYMBOL vmlinux 0xf85b3887 iw_handler_get_spy +EXPORT_SYMBOL vmlinux 0xf861c328 nd_region_release_lane +EXPORT_SYMBOL vmlinux 0xf86312e0 tc_setup_flow_action +EXPORT_SYMBOL vmlinux 0xf86bfc79 remove_proc_entry +EXPORT_SYMBOL vmlinux 0xf888ca21 sg_init_table +EXPORT_SYMBOL vmlinux 0xf8940c43 tcp_init_sock +EXPORT_SYMBOL vmlinux 0xf898a72d mr_mfc_seq_next +EXPORT_SYMBOL vmlinux 0xf8b063f2 kmem_cache_alloc_trace +EXPORT_SYMBOL vmlinux 0xf8bf8e22 ZSTD_DDictWorkspaceBound +EXPORT_SYMBOL vmlinux 0xf8d07858 bitmap_from_arr32 +EXPORT_SYMBOL vmlinux 0xf8d898d8 tcp_openreq_init_rwin +EXPORT_SYMBOL vmlinux 0xf8e1115e _outsl_ns +EXPORT_SYMBOL vmlinux 0xf8f61ebc wake_up_var +EXPORT_SYMBOL vmlinux 0xf8fbaf0c devfreq_resume_device +EXPORT_SYMBOL vmlinux 0xf915179e refcount_dec_if_one +EXPORT_SYMBOL vmlinux 0xf922e3e1 of_platform_device_create +EXPORT_SYMBOL vmlinux 0xf92ed4d3 get_tree_single +EXPORT_SYMBOL vmlinux 0xf93fd09c fb_find_mode_cvt +EXPORT_SYMBOL vmlinux 0xf943918c vme_bus_type +EXPORT_SYMBOL vmlinux 0xf94eedbc filemap_flush +EXPORT_SYMBOL vmlinux 0xf95b072f devm_kvasprintf +EXPORT_SYMBOL vmlinux 0xf96ec242 rfs_needed +EXPORT_SYMBOL vmlinux 0xf971cea8 utf8len +EXPORT_SYMBOL vmlinux 0xf9722676 twl_i2c_write +EXPORT_SYMBOL vmlinux 0xf9a482f9 msleep +EXPORT_SYMBOL vmlinux 0xf9b1cdcd smp_call_function_many +EXPORT_SYMBOL vmlinux 0xf9b516fa __pskb_copy_fclone +EXPORT_SYMBOL vmlinux 0xf9b6abed tty_unregister_driver +EXPORT_SYMBOL vmlinux 0xf9c0b663 strlcat +EXPORT_SYMBOL vmlinux 0xf9c8ec9b blk_queue_flag_set +EXPORT_SYMBOL vmlinux 0xf9cf7642 prepare_creds +EXPORT_SYMBOL vmlinux 0xf9d14091 xp_raw_get_data +EXPORT_SYMBOL vmlinux 0xf9e10de0 generic_fadvise +EXPORT_SYMBOL vmlinux 0xf9eced44 LZ4_compress_fast_continue +EXPORT_SYMBOL vmlinux 0xf9ee19ad dev_uc_sync +EXPORT_SYMBOL vmlinux 0xfa0e406a inode_insert5 +EXPORT_SYMBOL vmlinux 0xfa599bb2 netlink_register_notifier +EXPORT_SYMBOL vmlinux 0xfa852d54 ppp_unregister_compressor +EXPORT_SYMBOL vmlinux 0xfa873ad0 prandom_seed +EXPORT_SYMBOL vmlinux 0xfa8c985e csum_and_copy_from_iter_full +EXPORT_SYMBOL vmlinux 0xfa95910e unload_nls +EXPORT_SYMBOL vmlinux 0xfa9f781e security_path_mknod +EXPORT_SYMBOL vmlinux 0xfab303e8 flow_indr_dev_register +EXPORT_SYMBOL vmlinux 0xfab67519 on_each_cpu_mask +EXPORT_SYMBOL vmlinux 0xfabf9004 ipv6_sock_mc_drop +EXPORT_SYMBOL vmlinux 0xfac8865f sysctl_wmem_max +EXPORT_SYMBOL vmlinux 0xfacdd156 inet_sendpage +EXPORT_SYMBOL vmlinux 0xfadd05f1 xfrm6_rcv_encap +EXPORT_SYMBOL vmlinux 0xfaee2a0d neigh_parms_alloc +EXPORT_SYMBOL vmlinux 0xfaef2c31 remap_pfn_range +EXPORT_SYMBOL vmlinux 0xfafe3a49 md_bitmap_free +EXPORT_SYMBOL vmlinux 0xfb232c7e idr_get_next_ul +EXPORT_SYMBOL vmlinux 0xfb26280f inet6_del_offload +EXPORT_SYMBOL vmlinux 0xfb33130a dev_get_iflink +EXPORT_SYMBOL vmlinux 0xfb384d37 kasprintf +EXPORT_SYMBOL vmlinux 0xfb481954 vprintk +EXPORT_SYMBOL vmlinux 0xfb52adea scsi_set_medium_removal +EXPORT_SYMBOL vmlinux 0xfb617703 dev_lstats_read +EXPORT_SYMBOL vmlinux 0xfb6af58d recalc_sigpending +EXPORT_SYMBOL vmlinux 0xfb6c4944 __lock_page +EXPORT_SYMBOL vmlinux 0xfb8d873a init_on_free +EXPORT_SYMBOL vmlinux 0xfb95740d inet_frag_reasm_prepare +EXPORT_SYMBOL vmlinux 0xfba4a58a iov_iter_init +EXPORT_SYMBOL vmlinux 0xfba7ddd2 match_u64 +EXPORT_SYMBOL vmlinux 0xfbaaf01e console_lock +EXPORT_SYMBOL vmlinux 0xfbad3cf0 scsi_normalize_sense +EXPORT_SYMBOL vmlinux 0xfbb8a761 strscpy_pad +EXPORT_SYMBOL vmlinux 0xfbc4f89e io_schedule_timeout +EXPORT_SYMBOL vmlinux 0xfbe24d29 __fib6_flush_trees +EXPORT_SYMBOL vmlinux 0xfbeb0a02 skb_tx_error +EXPORT_SYMBOL vmlinux 0xfbeff539 posix_acl_update_mode +EXPORT_SYMBOL vmlinux 0xfbfe0e86 ucc_fast_free +EXPORT_SYMBOL vmlinux 0xfc02db50 kernel_sendpage +EXPORT_SYMBOL vmlinux 0xfc05d1a0 __find_get_block +EXPORT_SYMBOL vmlinux 0xfc3127d3 jbd2_journal_get_undo_access +EXPORT_SYMBOL vmlinux 0xfc35c7fd kthread_stop +EXPORT_SYMBOL vmlinux 0xfc399557 utf8_load +EXPORT_SYMBOL vmlinux 0xfc39e32f ioport_unmap +EXPORT_SYMBOL vmlinux 0xfc65f491 mipi_dsi_dcs_set_display_brightness +EXPORT_SYMBOL vmlinux 0xfc6ec0ff nvdimm_namespace_disk_name +EXPORT_SYMBOL vmlinux 0xfc784065 mdiobus_get_phy +EXPORT_SYMBOL vmlinux 0xfc7c0e09 follow_down_one +EXPORT_SYMBOL vmlinux 0xfc8d228a i2c_smbus_read_byte_data +EXPORT_SYMBOL vmlinux 0xfc9b5d1d touchscreen_report_pos +EXPORT_SYMBOL vmlinux 0xfc9eb8d9 rio_query_mport +EXPORT_SYMBOL vmlinux 0xfcb926cd kstrtouint_from_user +EXPORT_SYMBOL vmlinux 0xfcbcaadd md_update_sb +EXPORT_SYMBOL vmlinux 0xfcc1a585 xfrm_lookup +EXPORT_SYMBOL vmlinux 0xfcc56dbe pm860x_bulk_read +EXPORT_SYMBOL vmlinux 0xfcd1819a hdmi_spd_infoframe_check +EXPORT_SYMBOL vmlinux 0xfcdf46b6 __scsi_device_lookup +EXPORT_SYMBOL vmlinux 0xfceb83ad ps2_end_command +EXPORT_SYMBOL vmlinux 0xfcec0987 enable_irq +EXPORT_SYMBOL vmlinux 0xfced41d9 tcp_rcv_established +EXPORT_SYMBOL vmlinux 0xfd0f1acb is_nd_btt +EXPORT_SYMBOL vmlinux 0xfd14d2e7 netdev_master_upper_dev_get +EXPORT_SYMBOL vmlinux 0xfd14d3b1 rproc_elf_find_loaded_rsc_table +EXPORT_SYMBOL vmlinux 0xfd1549b3 dquot_get_next_id +EXPORT_SYMBOL vmlinux 0xfd231414 find_inode_rcu +EXPORT_SYMBOL vmlinux 0xfd34c7d3 __hw_addr_ref_unsync_dev +EXPORT_SYMBOL vmlinux 0xfd57e897 pcim_set_mwi +EXPORT_SYMBOL vmlinux 0xfd5ea356 seq_hex_dump +EXPORT_SYMBOL vmlinux 0xfd605800 of_find_node_by_type +EXPORT_SYMBOL vmlinux 0xfd67d1d4 __cgroup_bpf_run_filter_sk +EXPORT_SYMBOL vmlinux 0xfd8bd604 __starget_for_each_device +EXPORT_SYMBOL vmlinux 0xfd9d89ef jbd2_journal_check_used_features +EXPORT_SYMBOL vmlinux 0xfda9581f prandom_u32 +EXPORT_SYMBOL vmlinux 0xfdb6cedc _raw_read_unlock_bh +EXPORT_SYMBOL vmlinux 0xfdb9b629 ioread32be +EXPORT_SYMBOL vmlinux 0xfdbdfa89 vfs_rmdir +EXPORT_SYMBOL vmlinux 0xfdbe3eb4 filemap_fault +EXPORT_SYMBOL vmlinux 0xfdc4fa5d sync_blockdev +EXPORT_SYMBOL vmlinux 0xfdc767ad configfs_depend_item +EXPORT_SYMBOL vmlinux 0xfdcc8a0e fb_find_best_display +EXPORT_SYMBOL vmlinux 0xfdcccf19 get_super_thawed +EXPORT_SYMBOL vmlinux 0xfdd3b09d genphy_c37_config_aneg +EXPORT_SYMBOL vmlinux 0xfdd4216d pcibios_align_resource +EXPORT_SYMBOL vmlinux 0xfdd6bbad __wake_up +EXPORT_SYMBOL vmlinux 0xfde08cdf dev_driver_string +EXPORT_SYMBOL vmlinux 0xfded48ed enable_kernel_fp +EXPORT_SYMBOL vmlinux 0xfdeeba95 vmalloc_to_page +EXPORT_SYMBOL vmlinux 0xfdf70093 ZSTD_CStreamOutSize +EXPORT_SYMBOL vmlinux 0xfdfcdd5f __csum_partial +EXPORT_SYMBOL vmlinux 0xfdff71c1 __debugger_iabr_match +EXPORT_SYMBOL vmlinux 0xfe029963 unregister_inetaddr_notifier +EXPORT_SYMBOL vmlinux 0xfe1d2e94 key_create_or_update +EXPORT_SYMBOL vmlinux 0xfe1d9638 kmem_cache_alloc_bulk +EXPORT_SYMBOL vmlinux 0xfe252dd4 module_put +EXPORT_SYMBOL vmlinux 0xfe2a4380 mutex_lock_interruptible +EXPORT_SYMBOL vmlinux 0xfe487975 init_wait_entry +EXPORT_SYMBOL vmlinux 0xfe4a9a04 of_device_get_match_data +EXPORT_SYMBOL vmlinux 0xfe4b1f27 mmc_detect_change +EXPORT_SYMBOL vmlinux 0xfe57b1b3 tcp_v4_conn_request +EXPORT_SYMBOL vmlinux 0xfe5d4bb2 sys_tz +EXPORT_SYMBOL vmlinux 0xfe7231d4 dst_destroy +EXPORT_SYMBOL vmlinux 0xfe916dc6 hex_dump_to_buffer +EXPORT_SYMBOL vmlinux 0xfe97e522 i2c_smbus_read_block_data +EXPORT_SYMBOL vmlinux 0xfe9ffcaa vme_irq_handler +EXPORT_SYMBOL vmlinux 0xfea28d42 phy_register_fixup_for_uid +EXPORT_SYMBOL vmlinux 0xfeb5d0aa verify_spi_info +EXPORT_SYMBOL vmlinux 0xfebcb3a0 __close_fd +EXPORT_SYMBOL vmlinux 0xfec7c5db locks_copy_lock +EXPORT_SYMBOL vmlinux 0xfed75601 devm_backlight_device_unregister +EXPORT_SYMBOL vmlinux 0xfedca226 i2c_smbus_xfer +EXPORT_SYMBOL vmlinux 0xfedcdb60 seq_hlist_next_percpu +EXPORT_SYMBOL vmlinux 0xfee709d6 seq_open_private +EXPORT_SYMBOL vmlinux 0xfeebc7c4 __kfifo_from_user_r +EXPORT_SYMBOL vmlinux 0xfef86575 ip6_frag_init +EXPORT_SYMBOL vmlinux 0xfefcb98e vme_dma_vme_attribute +EXPORT_SYMBOL vmlinux 0xfeff4d3c sock_no_accept +EXPORT_SYMBOL vmlinux 0xff1765c7 rtas_call +EXPORT_SYMBOL vmlinux 0xff1e9dd8 seq_list_start +EXPORT_SYMBOL vmlinux 0xff3184d9 skb_split +EXPORT_SYMBOL vmlinux 0xff34f4c8 xfrm_if_register_cb +EXPORT_SYMBOL vmlinux 0xff401ef5 inet6_unregister_icmp_sender +EXPORT_SYMBOL vmlinux 0xff546bfa get_phy_device +EXPORT_SYMBOL vmlinux 0xff5b2816 jbd2_journal_check_available_features +EXPORT_SYMBOL vmlinux 0xff61f94b dma_set_mask +EXPORT_SYMBOL vmlinux 0xff6878cf fb_default_cmap +EXPORT_SYMBOL vmlinux 0xff8bd3b0 cur_cpu_spec +EXPORT_SYMBOL vmlinux 0xff96197c unix_get_socket +EXPORT_SYMBOL vmlinux 0xff9c4b56 ZSTD_compressBound +EXPORT_SYMBOL vmlinux 0xffafd309 _dev_notice +EXPORT_SYMBOL vmlinux 0xffc2b1df misc_register +EXPORT_SYMBOL vmlinux 0xffc6fb07 xfrm_state_add +EXPORT_SYMBOL vmlinux 0xffd5010d blk_queue_io_opt +EXPORT_SYMBOL vmlinux 0xffd97fc0 tcp_get_cookie_sock +EXPORT_SYMBOL vmlinux 0xffe1854e sock_no_ioctl +EXPORT_SYMBOL vmlinux 0xffe3e845 mmc_gpio_get_cd +EXPORT_SYMBOL vmlinux 0xffe690fd udp_table +EXPORT_SYMBOL vmlinux 0xffeedf6a delayed_work_timer_fn +EXPORT_SYMBOL_GPL arch/powerpc/kvm/kvm 0x00f93f8b kvm_read_guest_page +EXPORT_SYMBOL_GPL arch/powerpc/kvm/kvm 0x0199ece9 kvm_is_visible_gfn +EXPORT_SYMBOL_GPL arch/powerpc/kvm/kvm 0x02679963 kvmppc_xics_rm_complete +EXPORT_SYMBOL_GPL arch/powerpc/kvm/kvm 0x0386182f kvmppc_ld +EXPORT_SYMBOL_GPL arch/powerpc/kvm/kvm 0x0433d714 kvm_get_running_vcpu +EXPORT_SYMBOL_GPL arch/powerpc/kvm/kvm 0x089eaff1 vcpu_load +EXPORT_SYMBOL_GPL arch/powerpc/kvm/kvm 0x0a3fcde0 kvm_vcpu_gfn_to_pfn +EXPORT_SYMBOL_GPL arch/powerpc/kvm/kvm 0x0b8fe707 kvm_write_guest_page +EXPORT_SYMBOL_GPL arch/powerpc/kvm/kvm 0x10ec6725 kvmppc_core_queue_program +EXPORT_SYMBOL_GPL arch/powerpc/kvm/kvm 0x16b62527 kvm_vcpu_read_guest_atomic +EXPORT_SYMBOL_GPL arch/powerpc/kvm/kvm 0x199df5b7 kvmppc_xics_set_mapped +EXPORT_SYMBOL_GPL arch/powerpc/kvm/kvm 0x19cf20d1 kvmppc_set_msr +EXPORT_SYMBOL_GPL arch/powerpc/kvm/kvm 0x19e5a239 kvm_vcpu_write_guest +EXPORT_SYMBOL_GPL arch/powerpc/kvm/kvm 0x22668a1d kvm_release_page_dirty +EXPORT_SYMBOL_GPL arch/powerpc/kvm/kvm 0x23079032 kvmppc_xics_clr_mapped +EXPORT_SYMBOL_GPL arch/powerpc/kvm/kvm 0x27046576 kvm_exit +EXPORT_SYMBOL_GPL arch/powerpc/kvm/kvm 0x2a648b12 kvmppc_load_last_inst +EXPORT_SYMBOL_GPL arch/powerpc/kvm/kvm 0x2ca1d3b9 kvm_vcpu_gfn_to_hva +EXPORT_SYMBOL_GPL arch/powerpc/kvm/kvm 0x2f54a13c kvmppc_sanity_check +EXPORT_SYMBOL_GPL arch/powerpc/kvm/kvm 0x316e27fc __tracepoint_kvm_ppc_instr +EXPORT_SYMBOL_GPL arch/powerpc/kvm/kvm 0x37a6f0af kvmppc_prepare_to_enter +EXPORT_SYMBOL_GPL arch/powerpc/kvm/kvm 0x37c8ce0a kvmppc_xive_set_mapped +EXPORT_SYMBOL_GPL arch/powerpc/kvm/kvm 0x39af2ea4 kvm_vcpu_gfn_to_page +EXPORT_SYMBOL_GPL arch/powerpc/kvm/kvm 0x39fd83db halt_poll_ns_shrink +EXPORT_SYMBOL_GPL arch/powerpc/kvm/kvm 0x3e6a5dc4 gfn_to_hva_memslot +EXPORT_SYMBOL_GPL arch/powerpc/kvm/kvm 0x3f7d4027 kvm_write_guest_offset_cached +EXPORT_SYMBOL_GPL arch/powerpc/kvm/kvm 0x41b8db22 kvm_vcpu_unmap +EXPORT_SYMBOL_GPL arch/powerpc/kvm/kvm 0x485cd7f6 kvm_rebooting +EXPORT_SYMBOL_GPL arch/powerpc/kvm/kvm 0x4da2a898 kvm_read_guest_cached +EXPORT_SYMBOL_GPL arch/powerpc/kvm/kvm 0x4e3fd1b4 kvm_release_pfn_clean +EXPORT_SYMBOL_GPL arch/powerpc/kvm/kvm 0x4fbebff2 kvmppc_st +EXPORT_SYMBOL_GPL arch/powerpc/kvm/kvm 0x5163f29b kvmppc_core_queue_machine_check +EXPORT_SYMBOL_GPL arch/powerpc/kvm/kvm 0x5671156e kvm_vcpu_wake_up +EXPORT_SYMBOL_GPL arch/powerpc/kvm/kvm 0x5899d7f3 gfn_to_pfn_prot +EXPORT_SYMBOL_GPL arch/powerpc/kvm/kvm 0x595d6b6a kvmppc_core_pending_dec +EXPORT_SYMBOL_GPL arch/powerpc/kvm/kvm 0x59e640c0 halt_poll_ns +EXPORT_SYMBOL_GPL arch/powerpc/kvm/kvm 0x5c67f128 kvmppc_core_queue_inst_storage +EXPORT_SYMBOL_GPL arch/powerpc/kvm/kvm 0x5fb8848b halt_poll_ns_grow_start +EXPORT_SYMBOL_GPL arch/powerpc/kvm/kvm 0x6250d632 kvm_vcpu_map +EXPORT_SYMBOL_GPL arch/powerpc/kvm/kvm 0x63eef82c kvmppc_xive_clr_mapped +EXPORT_SYMBOL_GPL arch/powerpc/kvm/kvm 0x641dcb59 kvm_vcpu_gfn_to_memslot +EXPORT_SYMBOL_GPL arch/powerpc/kvm/kvm 0x643fe043 gfn_to_pfn_memslot +EXPORT_SYMBOL_GPL arch/powerpc/kvm/kvm 0x6892e3c3 kvm_set_pfn_accessed +EXPORT_SYMBOL_GPL arch/powerpc/kvm/kvm 0x68f78d63 kvmppc_kvm_pv +EXPORT_SYMBOL_GPL arch/powerpc/kvm/kvm 0x6b4a68a3 kvm_put_kvm_no_destroy +EXPORT_SYMBOL_GPL arch/powerpc/kvm/kvm 0x6bf6c650 mark_page_dirty +EXPORT_SYMBOL_GPL arch/powerpc/kvm/kvm 0x6c449724 vcpu_put +EXPORT_SYMBOL_GPL arch/powerpc/kvm/kvm 0x6eb4815d kvm_get_dirty_log +EXPORT_SYMBOL_GPL arch/powerpc/kvm/kvm 0x6fc145dc kvmppc_h_put_tce_indirect +EXPORT_SYMBOL_GPL arch/powerpc/kvm/kvm 0x70f7b103 kvmppc_rtas_hcall +EXPORT_SYMBOL_GPL arch/powerpc/kvm/kvm 0x711e6832 kvm_vcpu_block +EXPORT_SYMBOL_GPL arch/powerpc/kvm/kvm 0x75a4b358 gfn_to_hva +EXPORT_SYMBOL_GPL arch/powerpc/kvm/kvm 0x765002f2 kvm_write_guest_cached +EXPORT_SYMBOL_GPL arch/powerpc/kvm/kvm 0x779efc8c kvmppc_pr_ops +EXPORT_SYMBOL_GPL arch/powerpc/kvm/kvm 0x784ab476 gfn_to_page +EXPORT_SYMBOL_GPL arch/powerpc/kvm/kvm 0x7afe324e halt_poll_ns_grow +EXPORT_SYMBOL_GPL arch/powerpc/kvm/kvm 0x7c94c99a kvm_release_pfn_dirty +EXPORT_SYMBOL_GPL arch/powerpc/kvm/kvm 0x7f3e1579 kvm_read_guest_offset_cached +EXPORT_SYMBOL_GPL arch/powerpc/kvm/kvm 0x7f51204e kvm_vcpu_write_guest_page +EXPORT_SYMBOL_GPL arch/powerpc/kvm/kvm 0x820307b0 kvm_clear_guest_page +EXPORT_SYMBOL_GPL arch/powerpc/kvm/kvm 0x82ae3229 kvm_vcpu_on_spin +EXPORT_SYMBOL_GPL arch/powerpc/kvm/kvm 0x86c9518f kvmppc_handle_store +EXPORT_SYMBOL_GPL arch/powerpc/kvm/kvm 0x873d2842 __kvm_set_memory_region +EXPORT_SYMBOL_GPL arch/powerpc/kvm/kvm 0x881e6e5b kvm_debugfs_dir +EXPORT_SYMBOL_GPL arch/powerpc/kvm/kvm 0x8ea6ed70 kvmppc_xive_push_vcpu +EXPORT_SYMBOL_GPL arch/powerpc/kvm/kvm 0x8ed110b8 kvm_vcpu_mark_page_dirty +EXPORT_SYMBOL_GPL arch/powerpc/kvm/kvm 0x909d6556 kvmppc_h_logical_ci_store +EXPORT_SYMBOL_GPL arch/powerpc/kvm/kvm 0x92f416aa kvm_io_bus_write +EXPORT_SYMBOL_GPL arch/powerpc/kvm/kvm 0x935834f5 kvmppc_h_stuff_tce +EXPORT_SYMBOL_GPL arch/powerpc/kvm/kvm 0x9976ff72 kvmppc_xics_hcall +EXPORT_SYMBOL_GPL arch/powerpc/kvm/kvm 0x9f6d78fc kvm_get_pfn +EXPORT_SYMBOL_GPL arch/powerpc/kvm/kvm 0xa1c4231f kvm_set_pfn_dirty +EXPORT_SYMBOL_GPL arch/powerpc/kvm/kvm 0xa7526193 kvm_vcpu_read_guest_page +EXPORT_SYMBOL_GPL arch/powerpc/kvm/kvm 0xa8440792 kvm_gfn_to_hva_cache_init +EXPORT_SYMBOL_GPL arch/powerpc/kvm/kvm 0xab59d373 kvmppc_free_lpid +EXPORT_SYMBOL_GPL arch/powerpc/kvm/kvm 0xad65830d __gfn_to_pfn_memslot +EXPORT_SYMBOL_GPL arch/powerpc/kvm/kvm 0xb57910c3 gfn_to_memslot +EXPORT_SYMBOL_GPL arch/powerpc/kvm/kvm 0xb71765b2 kvm_set_memory_region +EXPORT_SYMBOL_GPL arch/powerpc/kvm/kvm 0xb7cf957a kvmppc_h_logical_ci_load +EXPORT_SYMBOL_GPL arch/powerpc/kvm/kvm 0xb83e6c33 kvmppc_hv_ops +EXPORT_SYMBOL_GPL arch/powerpc/kvm/kvm 0xb9fb6cfb kvm_vcpu_yield_to +EXPORT_SYMBOL_GPL arch/powerpc/kvm/kvm 0xbf322a29 kvm_vcpu_gfn_to_pfn_atomic +EXPORT_SYMBOL_GPL arch/powerpc/kvm/kvm 0xc134338c kvmppc_core_queue_dec +EXPORT_SYMBOL_GPL arch/powerpc/kvm/kvm 0xc20098ff kvm_init +EXPORT_SYMBOL_GPL arch/powerpc/kvm/kvm 0xc70e4b59 kvmppc_claim_lpid +EXPORT_SYMBOL_GPL arch/powerpc/kvm/kvm 0xc9763d99 gfn_to_pfn +EXPORT_SYMBOL_GPL arch/powerpc/kvm/kvm 0xcc44961f kvmppc_alloc_lpid +EXPORT_SYMBOL_GPL arch/powerpc/kvm/kvm 0xccbfc3ca kvm_put_kvm +EXPORT_SYMBOL_GPL arch/powerpc/kvm/kvm 0xcd50bff2 kvmppc_core_queue_data_storage +EXPORT_SYMBOL_GPL arch/powerpc/kvm/kvm 0xcd6ce12b kvm_irq_has_notifier +EXPORT_SYMBOL_GPL arch/powerpc/kvm/kvm 0xcdc8cafb kvm_read_guest +EXPORT_SYMBOL_GPL arch/powerpc/kvm/kvm 0xce38c380 kvm_clear_guest +EXPORT_SYMBOL_GPL arch/powerpc/kvm/kvm 0xcebc139b kvm_get_kvm +EXPORT_SYMBOL_GPL arch/powerpc/kvm/kvm 0xd077d93e kvmppc_emulate_mmio +EXPORT_SYMBOL_GPL arch/powerpc/kvm/kvm 0xd1135f5c kvm_write_guest +EXPORT_SYMBOL_GPL arch/powerpc/kvm/kvm 0xd42e953f kvm_flush_remote_tlbs +EXPORT_SYMBOL_GPL arch/powerpc/kvm/kvm 0xd7c496cf kvm_vcpu_destroy +EXPORT_SYMBOL_GPL arch/powerpc/kvm/kvm 0xdcb5ba79 kvmppc_handle_load +EXPORT_SYMBOL_GPL arch/powerpc/kvm/kvm 0xdd44d2c9 gfn_to_pfn_memslot_atomic +EXPORT_SYMBOL_GPL arch/powerpc/kvm/kvm 0xdd63de66 kvmppc_book3s_queue_irqprio +EXPORT_SYMBOL_GPL arch/powerpc/kvm/kvm 0xde8978d4 kvm_vcpu_kick +EXPORT_SYMBOL_GPL arch/powerpc/kvm/kvm 0xe162378f kvmppc_core_prepare_to_enter +EXPORT_SYMBOL_GPL arch/powerpc/kvm/kvm 0xe1e02bd9 kvmppc_h_put_tce +EXPORT_SYMBOL_GPL arch/powerpc/kvm/kvm 0xe2a87907 kvmppc_gpa_to_pfn +EXPORT_SYMBOL_GPL arch/powerpc/kvm/kvm 0xe3ff26ec kvm_release_page_clean +EXPORT_SYMBOL_GPL arch/powerpc/kvm/kvm 0xe71f0dd5 kvm_vcpu_read_guest +EXPORT_SYMBOL_GPL arch/powerpc/kvm/kvm 0xe804896e gfn_to_page_many_atomic +EXPORT_SYMBOL_GPL arch/powerpc/kvm/kvm 0xece04ea3 kvm_map_gfn +EXPORT_SYMBOL_GPL arch/powerpc/kvm/kvm 0xf4da3546 kvmppc_init_lpid +EXPORT_SYMBOL_GPL arch/powerpc/kvm/kvm 0xf98bb5ea kvm_unmap_gfn +EXPORT_SYMBOL_GPL arch/powerpc/kvm/kvm 0xfa62cd98 kvm_io_bus_get_dev +EXPORT_SYMBOL_GPL arch/powerpc/kvm/kvm 0xfb6a432c kvmppc_core_dequeue_dec +EXPORT_SYMBOL_GPL arch/powerpc/kvm/kvm-hv 0x36df3871 kvmhv_copy_from_guest_radix +EXPORT_SYMBOL_GPL arch/powerpc/kvm/kvm-hv 0x6b4da970 kvmhv_copy_to_guest_radix +EXPORT_SYMBOL_GPL arch/powerpc/kvm/kvm-hv 0xf8aeb0ea __kvmhv_copy_tofrom_guest_radix +EXPORT_SYMBOL_GPL arch/powerpc/kvm/kvm-pr 0x8225ec33 kvmppc_emulate_instruction +EXPORT_SYMBOL_GPL crypto/af_alg 0x00e3ef67 af_alg_free_sg +EXPORT_SYMBOL_GPL crypto/af_alg 0x06a99759 af_alg_accept +EXPORT_SYMBOL_GPL crypto/af_alg 0x1f7d2913 af_alg_release_parent +EXPORT_SYMBOL_GPL crypto/af_alg 0x21d0ec51 af_alg_register_type +EXPORT_SYMBOL_GPL crypto/af_alg 0x26ac23b2 af_alg_count_tsgl +EXPORT_SYMBOL_GPL crypto/af_alg 0x2ccf90ea af_alg_unregister_type +EXPORT_SYMBOL_GPL crypto/af_alg 0x388c885c af_alg_async_cb +EXPORT_SYMBOL_GPL crypto/af_alg 0x41a9a56b af_alg_pull_tsgl +EXPORT_SYMBOL_GPL crypto/af_alg 0x455a88a1 af_alg_wait_for_data +EXPORT_SYMBOL_GPL crypto/af_alg 0x73d44b2a af_alg_free_resources +EXPORT_SYMBOL_GPL crypto/af_alg 0x7f70f7e6 af_alg_get_rsgl +EXPORT_SYMBOL_GPL crypto/af_alg 0x8333afb0 af_alg_sendpage +EXPORT_SYMBOL_GPL crypto/af_alg 0x9900eff3 af_alg_sendmsg +EXPORT_SYMBOL_GPL crypto/af_alg 0x9e0abaab af_alg_release +EXPORT_SYMBOL_GPL crypto/af_alg 0xbbce660a af_alg_wmem_wakeup +EXPORT_SYMBOL_GPL crypto/af_alg 0xc4797b9b af_alg_poll +EXPORT_SYMBOL_GPL crypto/af_alg 0xc55b042e af_alg_make_sg +EXPORT_SYMBOL_GPL crypto/af_alg 0xd144a6da af_alg_alloc_areq +EXPORT_SYMBOL_GPL crypto/asymmetric_keys/asym_tpm 0x7430f97c tpm_key_create +EXPORT_SYMBOL_GPL crypto/asymmetric_keys/asym_tpm 0xa84067ba asym_tpm_subtype +EXPORT_SYMBOL_GPL crypto/async_tx/async_memcpy 0xdde0daf5 async_memcpy +EXPORT_SYMBOL_GPL crypto/async_tx/async_pq 0x7a734013 async_syndrome_val +EXPORT_SYMBOL_GPL crypto/async_tx/async_pq 0xc093bbce async_gen_syndrome +EXPORT_SYMBOL_GPL crypto/async_tx/async_raid6_recov 0x0faac88f async_raid6_2data_recov +EXPORT_SYMBOL_GPL crypto/async_tx/async_raid6_recov 0x8660c088 async_raid6_datap_recov +EXPORT_SYMBOL_GPL crypto/async_tx/async_tx 0x10deba9d async_trigger_callback +EXPORT_SYMBOL_GPL crypto/async_tx/async_tx 0x11bcb21a async_tx_submit +EXPORT_SYMBOL_GPL crypto/async_tx/async_tx 0x6785fa8c async_tx_quiesce +EXPORT_SYMBOL_GPL crypto/async_tx/async_tx 0xf6e0d507 __async_tx_find_channel +EXPORT_SYMBOL_GPL crypto/async_tx/async_xor 0x3602a099 async_xor +EXPORT_SYMBOL_GPL crypto/async_tx/async_xor 0xbc33974a async_xor_val +EXPORT_SYMBOL_GPL crypto/authenc 0x2479193e crypto_authenc_extractkeys +EXPORT_SYMBOL_GPL crypto/blowfish_common 0x61595e57 blowfish_setkey +EXPORT_SYMBOL_GPL crypto/cast5_generic 0x188d9d26 __cast5_decrypt +EXPORT_SYMBOL_GPL crypto/cast5_generic 0xb9a4a5fd 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 0x97e2ce39 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 0x05c2a3a2 cryptd_ahash_child +EXPORT_SYMBOL_GPL crypto/cryptd 0x05f81757 cryptd_alloc_skcipher +EXPORT_SYMBOL_GPL crypto/cryptd 0x0d4a7ec1 cryptd_alloc_ahash +EXPORT_SYMBOL_GPL crypto/cryptd 0x242bcddc cryptd_aead_queued +EXPORT_SYMBOL_GPL crypto/cryptd 0x2fdff45b cryptd_skcipher_queued +EXPORT_SYMBOL_GPL crypto/cryptd 0x344ef23b cryptd_free_ahash +EXPORT_SYMBOL_GPL crypto/cryptd 0x47d28ffa cryptd_aead_child +EXPORT_SYMBOL_GPL crypto/cryptd 0x4ca27d3a cryptd_shash_desc +EXPORT_SYMBOL_GPL crypto/cryptd 0x50832a12 cryptd_alloc_aead +EXPORT_SYMBOL_GPL crypto/cryptd 0x6fdbf0a1 cryptd_free_aead +EXPORT_SYMBOL_GPL crypto/cryptd 0x86d27608 cryptd_skcipher_child +EXPORT_SYMBOL_GPL crypto/cryptd 0xd93086bf cryptd_free_skcipher +EXPORT_SYMBOL_GPL crypto/cryptd 0xe63c29d6 cryptd_ahash_queued +EXPORT_SYMBOL_GPL crypto/crypto_engine 0x16abf95a crypto_transfer_skcipher_request_to_engine +EXPORT_SYMBOL_GPL crypto/crypto_engine 0x1ede017d crypto_engine_alloc_init +EXPORT_SYMBOL_GPL crypto/crypto_engine 0x2b0bc188 crypto_finalize_aead_request +EXPORT_SYMBOL_GPL crypto/crypto_engine 0x4654872e crypto_engine_start +EXPORT_SYMBOL_GPL crypto/crypto_engine 0x4720d918 crypto_finalize_akcipher_request +EXPORT_SYMBOL_GPL crypto/crypto_engine 0x4b46327a crypto_engine_alloc_init_and_set +EXPORT_SYMBOL_GPL crypto/crypto_engine 0x79dcc758 crypto_transfer_aead_request_to_engine +EXPORT_SYMBOL_GPL crypto/crypto_engine 0x940a5f27 crypto_engine_stop +EXPORT_SYMBOL_GPL crypto/crypto_engine 0x9983c324 crypto_finalize_hash_request +EXPORT_SYMBOL_GPL crypto/crypto_engine 0xa4f37d97 crypto_transfer_hash_request_to_engine +EXPORT_SYMBOL_GPL crypto/crypto_engine 0xc74273bc crypto_engine_exit +EXPORT_SYMBOL_GPL crypto/crypto_engine 0xf042e4c4 crypto_transfer_akcipher_request_to_engine +EXPORT_SYMBOL_GPL crypto/crypto_engine 0xf2938f55 crypto_finalize_skcipher_request +EXPORT_SYMBOL_GPL crypto/ecdh_generic 0x515ba532 crypto_ecdh_decode_key +EXPORT_SYMBOL_GPL crypto/ecdh_generic 0x7a395d76 crypto_ecdh_encode_key +EXPORT_SYMBOL_GPL crypto/ecdh_generic 0xd5a29505 crypto_ecdh_key_len +EXPORT_SYMBOL_GPL crypto/serpent_generic 0x4a06da2b serpent_setkey +EXPORT_SYMBOL_GPL crypto/serpent_generic 0x4eb4c55e __serpent_encrypt +EXPORT_SYMBOL_GPL crypto/serpent_generic 0xbcc074f3 __serpent_decrypt +EXPORT_SYMBOL_GPL crypto/serpent_generic 0xd4c9681a __serpent_setkey +EXPORT_SYMBOL_GPL crypto/sm3_generic 0x0bddca87 sm3_zero_message_hash +EXPORT_SYMBOL_GPL crypto/sm4_generic 0x09a89410 crypto_sm4_expand_key +EXPORT_SYMBOL_GPL crypto/sm4_generic 0x4ec85ee3 crypto_sm4_decrypt +EXPORT_SYMBOL_GPL crypto/sm4_generic 0x73805e98 crypto_sm4_encrypt +EXPORT_SYMBOL_GPL crypto/sm4_generic 0xe45f7d07 crypto_sm4_set_key +EXPORT_SYMBOL_GPL crypto/twofish_common 0xb97205ef twofish_setkey +EXPORT_SYMBOL_GPL crypto/twofish_common 0xe22b7787 __twofish_setkey +EXPORT_SYMBOL_GPL drivers/ata/libahci 0x1227dac4 ahci_host_activate +EXPORT_SYMBOL_GPL drivers/ata/libahci 0x22cd3813 ahci_init_controller +EXPORT_SYMBOL_GPL drivers/ata/libahci 0x29619f31 ahci_start_engine +EXPORT_SYMBOL_GPL drivers/ata/libahci 0x3687001a ahci_ops +EXPORT_SYMBOL_GPL drivers/ata/libahci 0x3caab123 ahci_reset_controller +EXPORT_SYMBOL_GPL drivers/ata/libahci 0x43baeb0c ahci_shost_attrs +EXPORT_SYMBOL_GPL drivers/ata/libahci 0x4c9269bc ahci_kick_engine +EXPORT_SYMBOL_GPL drivers/ata/libahci 0x51180873 ahci_do_hardreset +EXPORT_SYMBOL_GPL drivers/ata/libahci 0x513c83e6 ahci_error_handler +EXPORT_SYMBOL_GPL drivers/ata/libahci 0x5275a889 ahci_port_resume +EXPORT_SYMBOL_GPL drivers/ata/libahci 0x53cfdf37 ahci_start_fis_rx +EXPORT_SYMBOL_GPL drivers/ata/libahci 0x5c7be348 ahci_pmp_retry_srst_ops +EXPORT_SYMBOL_GPL drivers/ata/libahci 0x6ea19460 ahci_save_initial_config +EXPORT_SYMBOL_GPL drivers/ata/libahci 0x7b70df2f ahci_fill_cmd_slot +EXPORT_SYMBOL_GPL drivers/ata/libahci 0x8d663934 ahci_stop_engine +EXPORT_SYMBOL_GPL drivers/ata/libahci 0x909db63f ahci_print_info +EXPORT_SYMBOL_GPL drivers/ata/libahci 0x9a265c00 ahci_dev_classify +EXPORT_SYMBOL_GPL drivers/ata/libahci 0x9eff6413 ahci_set_em_messages +EXPORT_SYMBOL_GPL drivers/ata/libahci 0xa1a15290 ahci_do_softreset +EXPORT_SYMBOL_GPL drivers/ata/libahci 0xa70824ac ahci_reset_em +EXPORT_SYMBOL_GPL drivers/ata/libahci 0xa8efaa2a ahci_handle_port_intr +EXPORT_SYMBOL_GPL drivers/ata/libahci 0xd88ca71f ahci_qc_issue +EXPORT_SYMBOL_GPL drivers/ata/libahci 0xdbad9cba ahci_check_ready +EXPORT_SYMBOL_GPL drivers/ata/libahci 0xe631d2c1 ahci_sdev_attrs +EXPORT_SYMBOL_GPL drivers/ata/libahci 0xea50dad3 ahci_ignore_sss +EXPORT_SYMBOL_GPL drivers/ata/libahci_platform 0x0f717c01 ahci_platform_suspend_host +EXPORT_SYMBOL_GPL drivers/ata/libahci_platform 0x264fa585 ahci_platform_enable_resources +EXPORT_SYMBOL_GPL drivers/ata/libahci_platform 0x4d0443e1 ahci_platform_enable_phys +EXPORT_SYMBOL_GPL drivers/ata/libahci_platform 0x54965499 ahci_platform_enable_clks +EXPORT_SYMBOL_GPL drivers/ata/libahci_platform 0x68a01bd4 ahci_platform_disable_resources +EXPORT_SYMBOL_GPL drivers/ata/libahci_platform 0x76a2c8da ahci_platform_init_host +EXPORT_SYMBOL_GPL drivers/ata/libahci_platform 0x89f2e01c ahci_platform_resume +EXPORT_SYMBOL_GPL drivers/ata/libahci_platform 0xa2fce710 ahci_platform_ops +EXPORT_SYMBOL_GPL drivers/ata/libahci_platform 0xa380e84a ahci_platform_disable_regulators +EXPORT_SYMBOL_GPL drivers/ata/libahci_platform 0xbd32f3ec ahci_platform_resume_host +EXPORT_SYMBOL_GPL drivers/ata/libahci_platform 0xbfa26696 ahci_platform_enable_regulators +EXPORT_SYMBOL_GPL drivers/ata/libahci_platform 0xc7f98e24 ahci_platform_shutdown +EXPORT_SYMBOL_GPL drivers/ata/libahci_platform 0xd50d9427 ahci_platform_get_resources +EXPORT_SYMBOL_GPL drivers/ata/libahci_platform 0xe1b1275b ahci_platform_disable_clks +EXPORT_SYMBOL_GPL drivers/ata/libahci_platform 0xe403d9db ahci_platform_suspend +EXPORT_SYMBOL_GPL drivers/ata/libahci_platform 0xf8233023 ahci_platform_disable_phys +EXPORT_SYMBOL_GPL drivers/ata/pata_platform 0xaf08dfeb __pata_platform_probe +EXPORT_SYMBOL_GPL drivers/ata/pata_sis 0x78796327 sis_info133_for_sata +EXPORT_SYMBOL_GPL drivers/auxdisplay/charlcd 0x727ea304 charlcd_poke +EXPORT_SYMBOL_GPL drivers/auxdisplay/charlcd 0x9192a401 charlcd_register +EXPORT_SYMBOL_GPL drivers/auxdisplay/charlcd 0xa2a58bbe charlcd_alloc +EXPORT_SYMBOL_GPL drivers/auxdisplay/charlcd 0xac53a91b charlcd_unregister +EXPORT_SYMBOL_GPL drivers/auxdisplay/charlcd 0xd0cc2e18 charlcd_free +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/base/regmap/regmap-i3c 0xc90787fe __devm_regmap_init_i3c +EXPORT_SYMBOL_GPL drivers/base/regmap/regmap-sccb 0x283182b0 __devm_regmap_init_sccb +EXPORT_SYMBOL_GPL drivers/base/regmap/regmap-sccb 0x3530237f __regmap_init_sccb +EXPORT_SYMBOL_GPL drivers/base/regmap/regmap-sdw 0x1010072e __devm_regmap_init_sdw +EXPORT_SYMBOL_GPL drivers/base/regmap/regmap-sdw 0x39cb15f0 __regmap_init_sdw +EXPORT_SYMBOL_GPL drivers/base/regmap/regmap-slimbus 0x6e676fb6 __regmap_init_slimbus +EXPORT_SYMBOL_GPL drivers/base/regmap/regmap-slimbus 0xa8fe2f4a __devm_regmap_init_slimbus +EXPORT_SYMBOL_GPL drivers/base/regmap/regmap-spmi 0x0f5a94bb __regmap_init_spmi_base +EXPORT_SYMBOL_GPL drivers/base/regmap/regmap-spmi 0x4400f6ac __devm_regmap_init_spmi_ext +EXPORT_SYMBOL_GPL drivers/base/regmap/regmap-spmi 0x67129ef3 __regmap_init_spmi_ext +EXPORT_SYMBOL_GPL drivers/base/regmap/regmap-spmi 0xf4adcab6 __devm_regmap_init_spmi_base +EXPORT_SYMBOL_GPL drivers/base/regmap/regmap-w1 0x860cfb32 __regmap_init_w1 +EXPORT_SYMBOL_GPL drivers/base/regmap/regmap-w1 0xaae14884 __devm_regmap_init_w1 +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0x069af50b bcma_chipco_get_alp_clock +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0x0b702f3d bcma_core_disable +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0x31cc1307 bcma_chipco_regctl_maskset +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0x466ad891 bcma_driver_unregister +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0x59d423f1 bcma_chipco_pll_read +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0x5b997009 bcma_host_pci_up +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0x70793f8f bcma_chipco_gpio_out +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0x7316d9dc bcma_chipco_b_mii_write +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0x76aae660 bcma_pmu_spuravoid_pllupdate +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0x7a8fa6f8 bcma_find_core_unit +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0x8c92b455 bcma_core_pci_power_save +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0x97c1fa73 bcma_chipco_gpio_outen +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0x98aec7ec bcma_chipco_pll_maskset +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0x9da6a5d1 bcma_pmu_get_bus_clock +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0xa2c3a708 bcma_chipco_gpio_control +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0xa495b848 bcma_chipco_pll_write +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0xa628ea4c bcma_core_pll_ctl +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0xd06fc825 __bcma_driver_register +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0xd2740e42 bcma_chipco_chipctl_maskset +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0xd7fd1618 bcma_core_enable +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0xdecea183 bcma_host_pci_irq_ctl +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0xe5aab80c bcma_core_set_clockmode +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0xf2e32b7d bcma_core_is_enabled +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0xf5f19851 bcma_host_pci_down +EXPORT_SYMBOL_GPL drivers/bluetooth/btbcm 0x1d28b8ad btbcm_write_pcm_int_params +EXPORT_SYMBOL_GPL drivers/bluetooth/btbcm 0x1edb01a4 btbcm_initialize +EXPORT_SYMBOL_GPL drivers/bluetooth/btbcm 0x4fc3c0cf btbcm_set_bdaddr +EXPORT_SYMBOL_GPL drivers/bluetooth/btbcm 0x53af0eee btbcm_check_bdaddr +EXPORT_SYMBOL_GPL drivers/bluetooth/btbcm 0x5f2dec87 btbcm_setup_patchram +EXPORT_SYMBOL_GPL drivers/bluetooth/btbcm 0x986a7259 btbcm_finalize +EXPORT_SYMBOL_GPL drivers/bluetooth/btbcm 0x9d2c124a btbcm_read_pcm_int_params +EXPORT_SYMBOL_GPL drivers/bluetooth/btbcm 0xbe63af65 btbcm_setup_apple +EXPORT_SYMBOL_GPL drivers/bluetooth/btintel 0x189e912d btintel_read_version +EXPORT_SYMBOL_GPL drivers/bluetooth/btintel 0x23c69e73 btintel_hw_error +EXPORT_SYMBOL_GPL drivers/bluetooth/btintel 0x246b4596 btintel_set_diag_mfg +EXPORT_SYMBOL_GPL drivers/bluetooth/btintel 0x29bea660 btintel_load_ddc_config +EXPORT_SYMBOL_GPL drivers/bluetooth/btintel 0x2e76c124 btintel_set_bdaddr +EXPORT_SYMBOL_GPL drivers/bluetooth/btintel 0x48227523 btintel_download_firmware +EXPORT_SYMBOL_GPL drivers/bluetooth/btintel 0x51260909 btintel_set_event_mask_mfg +EXPORT_SYMBOL_GPL drivers/bluetooth/btintel 0x723b1e73 btintel_set_diag +EXPORT_SYMBOL_GPL drivers/bluetooth/btintel 0x738dec76 btintel_secure_send +EXPORT_SYMBOL_GPL drivers/bluetooth/btintel 0x87aae1d8 btintel_send_intel_reset +EXPORT_SYMBOL_GPL drivers/bluetooth/btintel 0x8fb5820f btintel_read_boot_params +EXPORT_SYMBOL_GPL drivers/bluetooth/btintel 0x91e2b081 btintel_reset_to_bootloader +EXPORT_SYMBOL_GPL drivers/bluetooth/btintel 0x9657fd6d btintel_set_event_mask +EXPORT_SYMBOL_GPL drivers/bluetooth/btintel 0xa3ba5ec7 btintel_version_info +EXPORT_SYMBOL_GPL drivers/bluetooth/btintel 0xa9cb9b32 btintel_enter_mfg +EXPORT_SYMBOL_GPL drivers/bluetooth/btintel 0xe007c1fb btintel_regmap_init +EXPORT_SYMBOL_GPL drivers/bluetooth/btintel 0xfd84ab3a btintel_check_bdaddr +EXPORT_SYMBOL_GPL drivers/bluetooth/btintel 0xfe7bace9 btintel_exit_mfg +EXPORT_SYMBOL_GPL drivers/bluetooth/btmrvl 0x1c16b435 btmrvl_register_hdev +EXPORT_SYMBOL_GPL drivers/bluetooth/btmrvl 0x1d3f236b btmrvl_remove_card +EXPORT_SYMBOL_GPL drivers/bluetooth/btmrvl 0x4e128a94 btmrvl_pscan_window_reporting +EXPORT_SYMBOL_GPL drivers/bluetooth/btmrvl 0x5c911bd1 btmrvl_send_module_cfg_cmd +EXPORT_SYMBOL_GPL drivers/bluetooth/btmrvl 0x5f1c3033 btmrvl_process_event +EXPORT_SYMBOL_GPL drivers/bluetooth/btmrvl 0x865c8106 btmrvl_send_hscfg_cmd +EXPORT_SYMBOL_GPL drivers/bluetooth/btmrvl 0x88fcfade btmrvl_add_card +EXPORT_SYMBOL_GPL drivers/bluetooth/btmrvl 0x98c572c4 btmrvl_interrupt +EXPORT_SYMBOL_GPL drivers/bluetooth/btmrvl 0xc9588be1 btmrvl_enable_ps +EXPORT_SYMBOL_GPL drivers/bluetooth/btmrvl 0xf1a6c87b btmrvl_check_evtpkt +EXPORT_SYMBOL_GPL drivers/bluetooth/btmrvl 0xf96e0fde btmrvl_enable_hs +EXPORT_SYMBOL_GPL drivers/bluetooth/btqca 0x167be432 qca_set_bdaddr +EXPORT_SYMBOL_GPL drivers/bluetooth/btqca 0x563b59b2 qca_read_soc_version +EXPORT_SYMBOL_GPL drivers/bluetooth/btqca 0x9cf7f4fd qca_set_bdaddr_rome +EXPORT_SYMBOL_GPL drivers/bluetooth/btqca 0xc6362007 qca_uart_setup +EXPORT_SYMBOL_GPL drivers/bluetooth/btqca 0xe8af0796 qca_send_pre_shutdown_cmd +EXPORT_SYMBOL_GPL drivers/bluetooth/btrtl 0x3f4e28dc btrtl_download_firmware +EXPORT_SYMBOL_GPL drivers/bluetooth/btrtl 0x7846bad3 btrtl_initialize +EXPORT_SYMBOL_GPL drivers/bluetooth/btrtl 0xa7405a91 btrtl_get_uart_settings +EXPORT_SYMBOL_GPL drivers/bluetooth/btrtl 0xaf78f260 btrtl_free +EXPORT_SYMBOL_GPL drivers/bluetooth/btrtl 0xcc49b7d0 btrtl_shutdown_realtek +EXPORT_SYMBOL_GPL drivers/bluetooth/btrtl 0xe2263b77 btrtl_setup_realtek +EXPORT_SYMBOL_GPL drivers/bluetooth/hci_uart 0x2e053019 h4_recv_buf +EXPORT_SYMBOL_GPL drivers/bluetooth/hci_uart 0x6bbdc3a9 hci_uart_unregister_device +EXPORT_SYMBOL_GPL drivers/bluetooth/hci_uart 0xf33d704d hci_uart_tx_wakeup +EXPORT_SYMBOL_GPL drivers/bluetooth/hci_uart 0xfd84dd82 hci_uart_register_device +EXPORT_SYMBOL_GPL drivers/bus/mhi/core/mhi 0x124a0378 mhi_device_get_sync +EXPORT_SYMBOL_GPL drivers/bus/mhi/core/mhi 0x4d076a44 mhi_force_rddm_mode +EXPORT_SYMBOL_GPL drivers/bus/mhi/core/mhi 0x60a469a4 mhi_queue_skb +EXPORT_SYMBOL_GPL drivers/bus/mhi/core/mhi 0x6cf7fc17 mhi_pm_suspend +EXPORT_SYMBOL_GPL drivers/bus/mhi/core/mhi 0x6e183494 mhi_unregister_controller +EXPORT_SYMBOL_GPL drivers/bus/mhi/core/mhi 0x8a059e64 mhi_pm_resume +EXPORT_SYMBOL_GPL drivers/bus/mhi/core/mhi 0x92ad06c8 mhi_notify +EXPORT_SYMBOL_GPL drivers/bus/mhi/core/mhi 0x98e34104 mhi_download_rddm_img +EXPORT_SYMBOL_GPL drivers/bus/mhi/core/mhi 0xa1a6e577 mhi_driver_unregister +EXPORT_SYMBOL_GPL drivers/bus/mhi/core/mhi 0xa1afd077 mhi_device_put +EXPORT_SYMBOL_GPL drivers/bus/mhi/core/mhi 0xa5223540 __mhi_driver_register +EXPORT_SYMBOL_GPL drivers/bus/mhi/core/mhi 0xa60eeef1 mhi_queue_buf +EXPORT_SYMBOL_GPL drivers/bus/mhi/core/mhi 0xa93ecb90 mhi_queue_dma +EXPORT_SYMBOL_GPL drivers/bus/mhi/core/mhi 0xb5744b7c mhi_device_get +EXPORT_SYMBOL_GPL drivers/bus/mhi/core/mhi 0xbf35b2df mhi_register_controller +EXPORT_SYMBOL_GPL drivers/bus/mhi/core/mhi 0xc7f80a50 mhi_prepare_for_power_up +EXPORT_SYMBOL_GPL drivers/bus/mhi/core/mhi 0xc812e7e8 mhi_prepare_for_transfer +EXPORT_SYMBOL_GPL drivers/bus/mhi/core/mhi 0xcb6524ab mhi_power_down +EXPORT_SYMBOL_GPL drivers/bus/mhi/core/mhi 0xe948a229 mhi_unprepare_from_transfer +EXPORT_SYMBOL_GPL drivers/bus/mhi/core/mhi 0xf0491ef1 mhi_async_power_up +EXPORT_SYMBOL_GPL drivers/bus/mhi/core/mhi 0xf40ec21f mhi_poll +EXPORT_SYMBOL_GPL drivers/bus/mhi/core/mhi 0xf4afd106 mhi_unprepare_after_power_down +EXPORT_SYMBOL_GPL drivers/bus/moxtet 0x2454fc7a moxtet_device_read +EXPORT_SYMBOL_GPL drivers/bus/moxtet 0x5c417169 __moxtet_register_driver +EXPORT_SYMBOL_GPL drivers/bus/moxtet 0x9f3e7810 moxtet_device_written +EXPORT_SYMBOL_GPL drivers/bus/moxtet 0xc0597b34 moxtet_device_write +EXPORT_SYMBOL_GPL drivers/counter/counter 0x01aab51b counter_count_direction_str +EXPORT_SYMBOL_GPL drivers/counter/counter 0x1d165375 counter_device_enum_write +EXPORT_SYMBOL_GPL drivers/counter/counter 0x3aedcad4 devm_counter_unregister +EXPORT_SYMBOL_GPL drivers/counter/counter 0x3e02c1d7 counter_unregister +EXPORT_SYMBOL_GPL drivers/counter/counter 0x5447016a counter_count_enum_available_read +EXPORT_SYMBOL_GPL drivers/counter/counter 0x5c2def7c counter_register +EXPORT_SYMBOL_GPL drivers/counter/counter 0x6b1817dc counter_device_enum_read +EXPORT_SYMBOL_GPL drivers/counter/counter 0x7273b4b7 devm_counter_register +EXPORT_SYMBOL_GPL drivers/counter/counter 0x91927a57 counter_count_enum_write +EXPORT_SYMBOL_GPL drivers/counter/counter 0xc5fef3d4 counter_count_enum_read +EXPORT_SYMBOL_GPL drivers/counter/counter 0xce92b4b2 counter_signal_enum_write +EXPORT_SYMBOL_GPL drivers/counter/counter 0xdf5ef795 counter_device_enum_available_read +EXPORT_SYMBOL_GPL drivers/counter/counter 0xe11d7dee counter_signal_enum_read +EXPORT_SYMBOL_GPL drivers/counter/counter 0xe31a11ea counter_signal_enum_available_read +EXPORT_SYMBOL_GPL drivers/counter/counter 0xee526d0f counter_count_mode_str +EXPORT_SYMBOL_GPL drivers/crypto/nx/nx-compress 0x4038a0cd nx842_crypto_exit +EXPORT_SYMBOL_GPL drivers/crypto/nx/nx-compress 0x6058a31b nx842_crypto_compress +EXPORT_SYMBOL_GPL drivers/crypto/nx/nx-compress 0xb9365576 nx842_crypto_decompress +EXPORT_SYMBOL_GPL drivers/crypto/nx/nx-compress 0xe2aab8d5 nx842_crypto_init +EXPORT_SYMBOL_GPL drivers/dax/device_dax 0x233f3d87 dev_dax_probe +EXPORT_SYMBOL_GPL drivers/dax/pmem/dax_pmem_core 0x33f39a11 __dax_pmem_probe +EXPORT_SYMBOL_GPL drivers/dma/dw-edma/dw-edma 0x01e59cae dw_edma_remove +EXPORT_SYMBOL_GPL drivers/dma/dw-edma/dw-edma 0x2dc0afc6 dw_edma_probe +EXPORT_SYMBOL_GPL drivers/dma/dw/dw_dmac_core 0x0223c563 dw_dma_remove +EXPORT_SYMBOL_GPL drivers/dma/dw/dw_dmac_core 0x03cec8c9 do_dw_dma_disable +EXPORT_SYMBOL_GPL drivers/dma/dw/dw_dmac_core 0x286732f0 idma32_dma_probe +EXPORT_SYMBOL_GPL drivers/dma/dw/dw_dmac_core 0x3d81438b dw_dma_filter +EXPORT_SYMBOL_GPL drivers/dma/dw/dw_dmac_core 0x9c153684 do_dw_dma_enable +EXPORT_SYMBOL_GPL drivers/dma/dw/dw_dmac_core 0xadd7a619 dw_dma_probe +EXPORT_SYMBOL_GPL drivers/dma/dw/dw_dmac_core 0xdb702f2b idma32_dma_remove +EXPORT_SYMBOL_GPL drivers/dma/fsl-edma-common 0x20485f48 fsl_edma_free_chan_resources +EXPORT_SYMBOL_GPL drivers/dma/fsl-edma-common 0x2f9f5209 fsl_edma_free_desc +EXPORT_SYMBOL_GPL drivers/dma/fsl-edma-common 0x35230f83 fsl_edma_prep_dma_cyclic +EXPORT_SYMBOL_GPL drivers/dma/fsl-edma-common 0x375e8e36 fsl_edma_alloc_chan_resources +EXPORT_SYMBOL_GPL drivers/dma/fsl-edma-common 0x414375ba fsl_edma_terminate_all +EXPORT_SYMBOL_GPL drivers/dma/fsl-edma-common 0x4c65835b fsl_edma_disable_request +EXPORT_SYMBOL_GPL drivers/dma/fsl-edma-common 0x4cfd3147 fsl_edma_setup_regs +EXPORT_SYMBOL_GPL drivers/dma/fsl-edma-common 0x54f7a1e7 fsl_edma_resume +EXPORT_SYMBOL_GPL drivers/dma/fsl-edma-common 0x5cdace9a fsl_edma_prep_slave_sg +EXPORT_SYMBOL_GPL drivers/dma/fsl-edma-common 0x6eae95fc fsl_edma_pause +EXPORT_SYMBOL_GPL drivers/dma/fsl-edma-common 0xa5583440 fsl_edma_cleanup_vchan +EXPORT_SYMBOL_GPL drivers/dma/fsl-edma-common 0xa6b943a0 fsl_edma_issue_pending +EXPORT_SYMBOL_GPL drivers/dma/fsl-edma-common 0xc65974f9 fsl_edma_xfer_desc +EXPORT_SYMBOL_GPL drivers/dma/fsl-edma-common 0xd0f6e8cc fsl_edma_chan_mux +EXPORT_SYMBOL_GPL drivers/dma/fsl-edma-common 0xdb38daee fsl_edma_tx_status +EXPORT_SYMBOL_GPL drivers/dma/fsl-edma-common 0xe60ef557 fsl_edma_slave_config +EXPORT_SYMBOL_GPL drivers/dma/qcom/hdma_mgmt 0x87f1ae81 hidma_mgmt_setup +EXPORT_SYMBOL_GPL drivers/dma/qcom/hdma_mgmt 0xc6b220ec hidma_mgmt_init_sys +EXPORT_SYMBOL_GPL drivers/dma/virt-dma 0x1e3ada1a vchan_init +EXPORT_SYMBOL_GPL drivers/dma/virt-dma 0x2ca5af73 vchan_tx_desc_free +EXPORT_SYMBOL_GPL drivers/dma/virt-dma 0x2ebe1f36 vchan_find_desc +EXPORT_SYMBOL_GPL drivers/dma/virt-dma 0x7a9ac11b vchan_dma_desc_free_list +EXPORT_SYMBOL_GPL drivers/dma/virt-dma 0x805b34c4 vchan_tx_submit +EXPORT_SYMBOL_GPL drivers/firewire/firewire-core 0xe86fb5c7 fw_card_release +EXPORT_SYMBOL_GPL drivers/fpga/altera-pr-ip-core 0x16f92201 alt_pr_register +EXPORT_SYMBOL_GPL drivers/fpga/altera-pr-ip-core 0xf257b51a alt_pr_unregister +EXPORT_SYMBOL_GPL drivers/fpga/dfl 0x0af258e5 dfl_fpga_port_ops_del +EXPORT_SYMBOL_GPL drivers/fpga/dfl 0x17cd5530 dfl_fpga_port_ops_add +EXPORT_SYMBOL_GPL drivers/fpga/dfl 0x1ff2bd73 dfl_fpga_dev_feature_init +EXPORT_SYMBOL_GPL drivers/fpga/dfl 0x296f13ca dfl_fpga_cdev_assign_port +EXPORT_SYMBOL_GPL drivers/fpga/dfl 0x324be4e2 dfl_fpga_dev_feature_uinit +EXPORT_SYMBOL_GPL drivers/fpga/dfl 0x368c0b05 dfl_fpga_cdev_config_ports_vf +EXPORT_SYMBOL_GPL drivers/fpga/dfl 0x3a037260 dfl_fpga_cdev_config_ports_pf +EXPORT_SYMBOL_GPL drivers/fpga/dfl 0x3c440e75 dfl_fpga_feature_devs_enumerate +EXPORT_SYMBOL_GPL drivers/fpga/dfl 0x4773631b dfl_fpga_dev_ops_unregister +EXPORT_SYMBOL_GPL drivers/fpga/dfl 0x4b28ad0f dfl_fpga_enum_info_free +EXPORT_SYMBOL_GPL drivers/fpga/dfl 0x74213e43 dfl_fpga_enum_info_alloc +EXPORT_SYMBOL_GPL drivers/fpga/dfl 0x771d2f7f dfl_fpga_port_ops_get +EXPORT_SYMBOL_GPL drivers/fpga/dfl 0x7c7f4a5a dfl_fpga_cdev_release_port +EXPORT_SYMBOL_GPL drivers/fpga/dfl 0x804f2d63 __dfl_fpga_cdev_find_port +EXPORT_SYMBOL_GPL drivers/fpga/dfl 0x90ccdaac dfl_fpga_port_ops_put +EXPORT_SYMBOL_GPL drivers/fpga/dfl 0xa3f9039c dfl_fpga_check_port_id +EXPORT_SYMBOL_GPL drivers/fpga/dfl 0xccd6577a dfl_fpga_dev_ops_register +EXPORT_SYMBOL_GPL drivers/fpga/dfl 0xcde5a024 dfl_fpga_feature_devs_remove +EXPORT_SYMBOL_GPL drivers/fpga/dfl 0xf6d745b0 dfl_fpga_enum_info_add_dfl +EXPORT_SYMBOL_GPL drivers/fpga/fpga-bridge 0x0249302b fpga_bridge_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 0x175e208e fpga_bridge_disable +EXPORT_SYMBOL_GPL drivers/fpga/fpga-bridge 0x2c8167cf fpga_bridges_disable +EXPORT_SYMBOL_GPL drivers/fpga/fpga-bridge 0x2f4c82b3 fpga_bridge_get +EXPORT_SYMBOL_GPL drivers/fpga/fpga-bridge 0x4e357a61 fpga_bridge_unregister +EXPORT_SYMBOL_GPL drivers/fpga/fpga-bridge 0x72b63b35 devm_fpga_bridge_create +EXPORT_SYMBOL_GPL drivers/fpga/fpga-bridge 0x7cc5d97a of_fpga_bridge_get +EXPORT_SYMBOL_GPL drivers/fpga/fpga-bridge 0x7d6b68c5 of_fpga_bridge_get_to_list +EXPORT_SYMBOL_GPL drivers/fpga/fpga-bridge 0x87ae6c2a fpga_bridge_enable +EXPORT_SYMBOL_GPL drivers/fpga/fpga-bridge 0xaca65727 fpga_bridge_create +EXPORT_SYMBOL_GPL drivers/fpga/fpga-bridge 0xb28aa1f6 fpga_bridge_register +EXPORT_SYMBOL_GPL drivers/fpga/fpga-bridge 0xd6fc48d6 fpga_bridge_get_to_list +EXPORT_SYMBOL_GPL drivers/fpga/fpga-bridge 0xf6760fc4 fpga_bridge_free +EXPORT_SYMBOL_GPL drivers/fpga/fpga-mgr 0x28ea46c3 fpga_mgr_lock +EXPORT_SYMBOL_GPL drivers/fpga/fpga-mgr 0x55418f10 of_fpga_mgr_get +EXPORT_SYMBOL_GPL drivers/fpga/fpga-mgr 0x575e2e77 fpga_mgr_unlock +EXPORT_SYMBOL_GPL drivers/fpga/fpga-mgr 0x6b456227 fpga_mgr_register +EXPORT_SYMBOL_GPL drivers/fpga/fpga-mgr 0x7f26059f fpga_mgr_create +EXPORT_SYMBOL_GPL drivers/fpga/fpga-mgr 0x8545609f fpga_mgr_put +EXPORT_SYMBOL_GPL drivers/fpga/fpga-mgr 0x8913b32d fpga_mgr_load +EXPORT_SYMBOL_GPL drivers/fpga/fpga-mgr 0xad772ba1 fpga_image_info_free +EXPORT_SYMBOL_GPL drivers/fpga/fpga-mgr 0xc414ef5e fpga_image_info_alloc +EXPORT_SYMBOL_GPL drivers/fpga/fpga-mgr 0xce776297 fpga_mgr_get +EXPORT_SYMBOL_GPL drivers/fpga/fpga-mgr 0xf3bef9c2 fpga_mgr_free +EXPORT_SYMBOL_GPL drivers/fpga/fpga-mgr 0xf9107713 devm_fpga_mgr_create +EXPORT_SYMBOL_GPL drivers/fpga/fpga-mgr 0xff822663 fpga_mgr_unregister +EXPORT_SYMBOL_GPL drivers/fpga/fpga-region 0x0d564715 fpga_region_unregister +EXPORT_SYMBOL_GPL drivers/fpga/fpga-region 0x1e71dc9e fpga_region_program_fpga +EXPORT_SYMBOL_GPL drivers/fpga/fpga-region 0x2ad478f7 fpga_region_free +EXPORT_SYMBOL_GPL drivers/fpga/fpga-region 0x7fac9b36 fpga_region_register +EXPORT_SYMBOL_GPL drivers/fpga/fpga-region 0xc76e9751 devm_fpga_region_create +EXPORT_SYMBOL_GPL drivers/fpga/fpga-region 0xc938aa9a fpga_region_class_find +EXPORT_SYMBOL_GPL drivers/fpga/fpga-region 0xdca1adb9 fpga_region_create +EXPORT_SYMBOL_GPL drivers/fsi/fsi-core 0x1e7fc9ff fsi_device_read +EXPORT_SYMBOL_GPL drivers/fsi/fsi-core 0x3a93847e fsi_slave_claim_range +EXPORT_SYMBOL_GPL drivers/fsi/fsi-core 0x4a5b52ec fsi_driver_unregister +EXPORT_SYMBOL_GPL drivers/fsi/fsi-core 0x4aaa5b07 fsi_device_write +EXPORT_SYMBOL_GPL drivers/fsi/fsi-core 0x5300ef4b fsi_master_unregister +EXPORT_SYMBOL_GPL drivers/fsi/fsi-core 0x5a57d574 fsi_free_minor +EXPORT_SYMBOL_GPL drivers/fsi/fsi-core 0x5a94a6a9 fsi_driver_register +EXPORT_SYMBOL_GPL drivers/fsi/fsi-core 0x6fc84fc4 fsi_bus_type +EXPORT_SYMBOL_GPL drivers/fsi/fsi-core 0x733413ce fsi_cdev_type +EXPORT_SYMBOL_GPL drivers/fsi/fsi-core 0x761abc24 fsi_get_new_minor +EXPORT_SYMBOL_GPL drivers/fsi/fsi-core 0x78060f23 fsi_slave_read +EXPORT_SYMBOL_GPL drivers/fsi/fsi-core 0xb82a31c1 fsi_master_register +EXPORT_SYMBOL_GPL drivers/fsi/fsi-core 0xbd0b8d79 fsi_master_rescan +EXPORT_SYMBOL_GPL drivers/fsi/fsi-core 0xce22aee2 fsi_slave_release_range +EXPORT_SYMBOL_GPL drivers/fsi/fsi-core 0xd942f235 fsi_slave_write +EXPORT_SYMBOL_GPL drivers/fsi/fsi-occ 0x83a7fc0c fsi_occ_submit +EXPORT_SYMBOL_GPL drivers/fsi/fsi-sbefifo 0x32809593 sbefifo_parse_status +EXPORT_SYMBOL_GPL drivers/fsi/fsi-sbefifo 0x88205a5b sbefifo_submit +EXPORT_SYMBOL_GPL drivers/gnss/gnss 0x3e66b88b gnss_register_device +EXPORT_SYMBOL_GPL drivers/gnss/gnss 0x8bc98d6a gnss_allocate_device +EXPORT_SYMBOL_GPL drivers/gnss/gnss 0x906d332d gnss_deregister_device +EXPORT_SYMBOL_GPL drivers/gnss/gnss 0x996c7744 gnss_put_device +EXPORT_SYMBOL_GPL drivers/gnss/gnss 0xc7d4bca2 gnss_insert_raw +EXPORT_SYMBOL_GPL drivers/gnss/gnss-serial 0x66c74632 gnss_serial_free +EXPORT_SYMBOL_GPL drivers/gnss/gnss-serial 0x6a171aaf gnss_serial_register +EXPORT_SYMBOL_GPL drivers/gnss/gnss-serial 0x70909995 gnss_serial_allocate +EXPORT_SYMBOL_GPL drivers/gnss/gnss-serial 0x7ad857f4 gnss_serial_pm_ops +EXPORT_SYMBOL_GPL drivers/gnss/gnss-serial 0xc363c998 gnss_serial_deregister +EXPORT_SYMBOL_GPL drivers/gpio/gpio-max730x 0x44248d49 __max730x_probe +EXPORT_SYMBOL_GPL drivers/gpio/gpio-max730x 0xf943270c __max730x_remove +EXPORT_SYMBOL_GPL drivers/gpu/drm/bridge/analogix/analogix_dp 0x1d8eb7ef analogix_dp_resume +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 0x416b792c analogix_dp_stop_crc +EXPORT_SYMBOL_GPL drivers/gpu/drm/bridge/analogix/analogix_dp 0x49c9f049 analogix_dp_bind +EXPORT_SYMBOL_GPL drivers/gpu/drm/bridge/analogix/analogix_dp 0x67486bd4 analogix_dp_unbind +EXPORT_SYMBOL_GPL drivers/gpu/drm/bridge/analogix/analogix_dp 0x6a09d086 analogix_dp_probe +EXPORT_SYMBOL_GPL drivers/gpu/drm/bridge/analogix/analogix_dp 0x701d1f2a analogix_dp_start_crc +EXPORT_SYMBOL_GPL drivers/gpu/drm/bridge/analogix/analogix_dp 0x7221b145 analogix_dp_suspend +EXPORT_SYMBOL_GPL drivers/gpu/drm/bridge/analogix/analogix_dp 0xe098b09a analogix_dp_remove +EXPORT_SYMBOL_GPL drivers/gpu/drm/bridge/synopsys/dw-hdmi 0x09340e05 dw_hdmi_set_channel_count +EXPORT_SYMBOL_GPL drivers/gpu/drm/bridge/synopsys/dw-hdmi 0x094f6fc5 dw_hdmi_phy_i2c_set_addr +EXPORT_SYMBOL_GPL drivers/gpu/drm/bridge/synopsys/dw-hdmi 0x1461e227 dw_hdmi_set_channel_status +EXPORT_SYMBOL_GPL drivers/gpu/drm/bridge/synopsys/dw-hdmi 0x157e02b6 dw_hdmi_phy_reset +EXPORT_SYMBOL_GPL drivers/gpu/drm/bridge/synopsys/dw-hdmi 0x2d1c0e80 dw_hdmi_setup_rx_sense +EXPORT_SYMBOL_GPL drivers/gpu/drm/bridge/synopsys/dw-hdmi 0x2fac9436 dw_hdmi_set_channel_allocation +EXPORT_SYMBOL_GPL drivers/gpu/drm/bridge/synopsys/dw-hdmi 0x316212a8 dw_hdmi_unbind +EXPORT_SYMBOL_GPL drivers/gpu/drm/bridge/synopsys/dw-hdmi 0x42926f4a dw_hdmi_resume +EXPORT_SYMBOL_GPL drivers/gpu/drm/bridge/synopsys/dw-hdmi 0x4a9b174f dw_hdmi_remove +EXPORT_SYMBOL_GPL drivers/gpu/drm/bridge/synopsys/dw-hdmi 0x6712b5a7 dw_hdmi_phy_gen2_txpwron +EXPORT_SYMBOL_GPL drivers/gpu/drm/bridge/synopsys/dw-hdmi 0x7d8a3aee dw_hdmi_phy_i2c_write +EXPORT_SYMBOL_GPL drivers/gpu/drm/bridge/synopsys/dw-hdmi 0x822671f9 dw_hdmi_set_high_tmds_clock_ratio +EXPORT_SYMBOL_GPL drivers/gpu/drm/bridge/synopsys/dw-hdmi 0x8dcd6f43 dw_hdmi_set_sample_rate +EXPORT_SYMBOL_GPL drivers/gpu/drm/bridge/synopsys/dw-hdmi 0x9b44a60b dw_hdmi_phy_gen2_pddq +EXPORT_SYMBOL_GPL drivers/gpu/drm/bridge/synopsys/dw-hdmi 0xacf04801 dw_hdmi_set_plugged_cb +EXPORT_SYMBOL_GPL drivers/gpu/drm/bridge/synopsys/dw-hdmi 0xbe042e22 dw_hdmi_probe +EXPORT_SYMBOL_GPL drivers/gpu/drm/bridge/synopsys/dw-hdmi 0xcd8c7728 dw_hdmi_bind +EXPORT_SYMBOL_GPL drivers/gpu/drm/bridge/synopsys/dw-hdmi 0xce27012a dw_hdmi_audio_disable +EXPORT_SYMBOL_GPL drivers/gpu/drm/bridge/synopsys/dw-hdmi 0xd6968220 dw_hdmi_phy_setup_hpd +EXPORT_SYMBOL_GPL drivers/gpu/drm/bridge/synopsys/dw-hdmi 0xd8fe547b dw_hdmi_audio_enable +EXPORT_SYMBOL_GPL drivers/gpu/drm/bridge/synopsys/dw-hdmi 0xdafa1790 dw_hdmi_phy_read_hpd +EXPORT_SYMBOL_GPL drivers/gpu/drm/bridge/synopsys/dw-hdmi 0xf5922009 dw_hdmi_phy_update_hpd +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm 0x056fe17c drm_hdcp_check_ksvs_revoked +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm 0x1c7708ee drm_bridge_detect +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm 0x1d2523b9 drm_gem_cma_prime_import_sg_table +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm 0x1d6ec267 drm_display_mode_to_videomode +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm 0x261d1f35 drm_do_get_edid +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm 0x2a5da420 drm_of_component_match_add +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm 0x2bb71e59 drm_class_device_register +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm 0x2f7b9299 drm_gem_shmem_get_sg_table +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm 0x2f91f5ff drm_gem_shmem_create +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm 0x327a323a drm_gem_cma_free_object +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm 0x3d587a23 drm_gem_shmem_free_object +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm 0x4a8033a9 drm_bridge_hpd_disable +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm 0x4bc38871 drm_class_device_unregister +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm 0x4de84a9f drm_gem_cma_prime_vunmap +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm 0x51b4f82f drm_bridge_get_edid +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm 0x558c1e14 drm_bridge_get_modes +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm 0x5c8be90c drm_crtc_add_crc_entry +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm 0x5da858f7 drm_gem_shmem_get_pages_sgt +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm 0x62182b13 drm_gem_cma_vm_ops +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm 0x68b7858d drm_display_mode_from_videomode +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm 0x6fb89d12 drm_gem_cma_create +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm 0x72db8a89 drm_gem_shmem_prime_import_sg_table +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm 0x80902599 drm_of_find_panel_or_bridge +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm 0x858615f4 drm_gem_dumb_map_offset +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm 0x92f6e5c3 drm_bridge_hpd_notify +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm 0x991b8976 drm_gem_cma_prime_vmap +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm 0x9a3b4cc9 drm_gem_cma_mmap +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm 0x9c5ae901 drm_gem_cma_prime_mmap +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm 0xa574b681 drm_bridge_hpd_enable +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm 0xad885165 drm_bus_flags_from_videomode +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm 0xae3eed08 of_get_drm_display_mode +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm 0xba0f0066 drm_gem_cma_dumb_create_internal +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm 0xbfa42b4c drm_of_lvds_get_dual_link_pixel_order +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm 0xc1884700 drm_gem_cma_dumb_create +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm 0xc51de66b drmm_kstrdup +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm 0xddea2886 drm_gem_cma_prime_get_sg_table +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm 0xebeaba0f drm_gem_shmem_mmap +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm 0xf73bcead drm_get_unmapped_area +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm 0xf7dd6481 drm_of_encoder_active_endpoint +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm 0xf875c6d4 drm_gem_shmem_dumb_create +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm_kms_helper 0x0e688d20 drm_gem_fb_afbc_init +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm_kms_helper 0x31dfb9b4 drm_bridge_connector_disable_hpd +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm_kms_helper 0x4d63e283 drm_gem_fb_init_with_funcs +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm_kms_helper 0x4df2f617 drm_bridge_connector_init +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm_kms_helper 0xa3756c1d drm_fb_cma_get_gem_obj +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm_kms_helper 0xb31f28fb drm_gem_fb_create_with_dirty +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm_kms_helper 0xc5d763e3 drm_gem_fb_create_with_funcs +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm_kms_helper 0xca95e4e3 drm_gem_fb_prepare_fb +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm_kms_helper 0xcfdb7006 drm_bridge_connector_enable_hpd +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm_kms_helper 0xdf80cc9f drm_gem_fb_create +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm_kms_helper 0xe5d32288 drm_gem_fb_get_obj +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm_kms_helper 0xf0016e9c drm_fb_cma_get_gem_addr +EXPORT_SYMBOL_GPL drivers/gpu/drm/ttm/ttm 0x4410dbdf ttm_dma_page_alloc_debugfs +EXPORT_SYMBOL_GPL drivers/gpu/drm/ttm/ttm 0x74470318 ttm_dma_unpopulate +EXPORT_SYMBOL_GPL drivers/gpu/drm/ttm/ttm 0x74f04a11 ttm_dma_populate +EXPORT_SYMBOL_GPL drivers/greybus/greybus 0x04a2ee7f gb_operation_get +EXPORT_SYMBOL_GPL drivers/greybus/greybus 0x058724eb gb_operation_create_flags +EXPORT_SYMBOL_GPL drivers/greybus/greybus 0x0a5322ac gb_operation_sync_timeout +EXPORT_SYMBOL_GPL drivers/greybus/greybus 0x0f13fb07 __tracepoint_gb_message_submit +EXPORT_SYMBOL_GPL drivers/greybus/greybus 0x15b64530 gb_operation_response_alloc +EXPORT_SYMBOL_GPL drivers/greybus/greybus 0x15d1942f greybus_disabled +EXPORT_SYMBOL_GPL drivers/greybus/greybus 0x16a7c09c gb_operation_request_send +EXPORT_SYMBOL_GPL drivers/greybus/greybus 0x17db1655 gb_operation_request_send_sync_timeout +EXPORT_SYMBOL_GPL drivers/greybus/greybus 0x1d056911 greybus_message_sent +EXPORT_SYMBOL_GPL drivers/greybus/greybus 0x255d2727 gb_connection_create +EXPORT_SYMBOL_GPL drivers/greybus/greybus 0x275ad1e2 gb_hd_del +EXPORT_SYMBOL_GPL drivers/greybus/greybus 0x344a04e0 gb_operation_cancel +EXPORT_SYMBOL_GPL drivers/greybus/greybus 0x39818441 gb_hd_put +EXPORT_SYMBOL_GPL drivers/greybus/greybus 0x3ac25066 gb_debugfs_get +EXPORT_SYMBOL_GPL drivers/greybus/greybus 0x3b109f2e gb_hd_create +EXPORT_SYMBOL_GPL drivers/greybus/greybus 0x3f3e729d gb_operation_result +EXPORT_SYMBOL_GPL drivers/greybus/greybus 0x41b50b3c gb_operation_unidirectional_timeout +EXPORT_SYMBOL_GPL drivers/greybus/greybus 0x4466ea39 __tracepoint_gb_hd_create +EXPORT_SYMBOL_GPL drivers/greybus/greybus 0x44e665e2 gb_hd_add +EXPORT_SYMBOL_GPL drivers/greybus/greybus 0x45f3f0cd gb_connection_enable +EXPORT_SYMBOL_GPL drivers/greybus/greybus 0x5592dd65 gb_operation_get_payload_size_max +EXPORT_SYMBOL_GPL drivers/greybus/greybus 0x5d9c0c30 gb_connection_create_offloaded +EXPORT_SYMBOL_GPL drivers/greybus/greybus 0x5fd99cef gb_interface_request_mode_switch +EXPORT_SYMBOL_GPL drivers/greybus/greybus 0x6a8c7c1d greybus_register_driver +EXPORT_SYMBOL_GPL drivers/greybus/greybus 0x79afc7df greybus_deregister_driver +EXPORT_SYMBOL_GPL drivers/greybus/greybus 0x7bf4ca10 __tracepoint_gb_hd_add +EXPORT_SYMBOL_GPL drivers/greybus/greybus 0x7f92cb1a gb_hd_output +EXPORT_SYMBOL_GPL drivers/greybus/greybus 0x83bff855 gb_svc_intf_set_power_mode +EXPORT_SYMBOL_GPL drivers/greybus/greybus 0x84a88675 __tracepoint_gb_hd_release +EXPORT_SYMBOL_GPL drivers/greybus/greybus 0x8531da1d __tracepoint_gb_hd_del +EXPORT_SYMBOL_GPL drivers/greybus/greybus 0x99dd4bf7 greybus_data_rcvd +EXPORT_SYMBOL_GPL drivers/greybus/greybus 0xa14ebdaa gb_connection_disable_rx +EXPORT_SYMBOL_GPL drivers/greybus/greybus 0xb5fb65fa gb_operation_put +EXPORT_SYMBOL_GPL drivers/greybus/greybus 0xba2055d5 gb_connection_disable +EXPORT_SYMBOL_GPL drivers/greybus/greybus 0xbccd902c gb_connection_disable_forced +EXPORT_SYMBOL_GPL drivers/greybus/greybus 0xbe5273ae gb_hd_cport_reserve +EXPORT_SYMBOL_GPL drivers/greybus/greybus 0xc3f7874a gb_hd_shutdown +EXPORT_SYMBOL_GPL drivers/greybus/greybus 0xcce4c9e9 gb_connection_destroy +EXPORT_SYMBOL_GPL drivers/greybus/greybus 0xce308090 gb_hd_cport_release_reserved +EXPORT_SYMBOL_GPL drivers/greybus/greybus 0xcfc6f277 __tracepoint_gb_hd_in +EXPORT_SYMBOL_GPL drivers/greybus/greybus 0xdc796ad8 gb_connection_latency_tag_enable +EXPORT_SYMBOL_GPL drivers/greybus/greybus 0xdd281439 gb_connection_create_flags +EXPORT_SYMBOL_GPL drivers/greybus/greybus 0xe675615a gb_connection_latency_tag_disable +EXPORT_SYMBOL_GPL drivers/greybus/greybus 0xea794d32 gb_connection_enable_tx +EXPORT_SYMBOL_GPL drivers/hid/hid 0x00a49310 hidraw_report_event +EXPORT_SYMBOL_GPL drivers/hid/hid 0x05495392 hid_debug +EXPORT_SYMBOL_GPL drivers/hid/hid 0x06da94ab hidinput_find_field +EXPORT_SYMBOL_GPL drivers/hid/hid 0x0794124f __hid_register_driver +EXPORT_SYMBOL_GPL drivers/hid/hid 0x151d5f92 hid_input_report +EXPORT_SYMBOL_GPL drivers/hid/hid 0x19d52f1f hid_quirks_exit +EXPORT_SYMBOL_GPL drivers/hid/hid 0x19edb227 hidinput_report_event +EXPORT_SYMBOL_GPL drivers/hid/hid 0x1bf3bd66 hid_hw_start +EXPORT_SYMBOL_GPL drivers/hid/hid 0x1d9ba48c hid_allocate_device +EXPORT_SYMBOL_GPL drivers/hid/hid 0x1e87758b hidinput_calc_abs_res +EXPORT_SYMBOL_GPL drivers/hid/hid 0x1f9e384c hid_hw_open +EXPORT_SYMBOL_GPL drivers/hid/hid 0x29f2fc37 hid_output_report +EXPORT_SYMBOL_GPL drivers/hid/hid 0x2e23344d hid_report_raw_event +EXPORT_SYMBOL_GPL drivers/hid/hid 0x400d83d1 __hid_request +EXPORT_SYMBOL_GPL drivers/hid/hid 0x4272b313 hidinput_count_leds +EXPORT_SYMBOL_GPL drivers/hid/hid 0x4857688c hid_dump_report +EXPORT_SYMBOL_GPL drivers/hid/hid 0x4dce1b26 hid_ignore +EXPORT_SYMBOL_GPL drivers/hid/hid 0x5ea82beb hid_open_report +EXPORT_SYMBOL_GPL drivers/hid/hid 0x63b21dd7 hid_match_device +EXPORT_SYMBOL_GPL drivers/hid/hid 0x6a9a16de hid_destroy_device +EXPORT_SYMBOL_GPL drivers/hid/hid 0x6b39bc02 hid_debug_event +EXPORT_SYMBOL_GPL drivers/hid/hid 0x6d8d888c hid_connect +EXPORT_SYMBOL_GPL drivers/hid/hid 0x71c57de1 hid_add_device +EXPORT_SYMBOL_GPL drivers/hid/hid 0x77345648 hid_field_extract +EXPORT_SYMBOL_GPL drivers/hid/hid 0x7e370fa3 hidinput_disconnect +EXPORT_SYMBOL_GPL drivers/hid/hid 0x8633d9d7 hid_dump_device +EXPORT_SYMBOL_GPL drivers/hid/hid 0x8b13a8b8 hid_snto32 +EXPORT_SYMBOL_GPL drivers/hid/hid 0x8ee2a938 hid_check_keys_pressed +EXPORT_SYMBOL_GPL drivers/hid/hid 0x915b3bae hid_parse_report +EXPORT_SYMBOL_GPL drivers/hid/hid 0x99beedbf hid_hw_close +EXPORT_SYMBOL_GPL drivers/hid/hid 0x9c1e4cdb hid_disconnect +EXPORT_SYMBOL_GPL drivers/hid/hid 0x9e110e33 hid_alloc_report_buf +EXPORT_SYMBOL_GPL drivers/hid/hid 0xa0670ee5 hidraw_connect +EXPORT_SYMBOL_GPL drivers/hid/hid 0xa68d23d7 hid_lookup_quirk +EXPORT_SYMBOL_GPL drivers/hid/hid 0xaa80f0fe hid_dump_input +EXPORT_SYMBOL_GPL drivers/hid/hid 0xaa94e556 hid_compare_device_paths +EXPORT_SYMBOL_GPL drivers/hid/hid 0xabd9afed hidraw_disconnect +EXPORT_SYMBOL_GPL drivers/hid/hid 0xb4aaa029 hidinput_connect +EXPORT_SYMBOL_GPL drivers/hid/hid 0xca4e98d9 hid_resolv_usage +EXPORT_SYMBOL_GPL drivers/hid/hid 0xde7c32e0 hid_unregister_driver +EXPORT_SYMBOL_GPL drivers/hid/hid 0xea4bf87b hid_hw_stop +EXPORT_SYMBOL_GPL drivers/hid/hid 0xea5869a8 hid_dump_field +EXPORT_SYMBOL_GPL drivers/hid/hid 0xee6b19ca hid_set_field +EXPORT_SYMBOL_GPL drivers/hid/hid 0xf03d1bdf hid_register_report +EXPORT_SYMBOL_GPL drivers/hid/hid 0xf88c05a3 hid_setup_resolution_multiplier +EXPORT_SYMBOL_GPL drivers/hid/hid 0xfa355613 hid_quirks_init +EXPORT_SYMBOL_GPL drivers/hid/hid 0xfbe88f56 hidinput_get_led_field +EXPORT_SYMBOL_GPL drivers/hid/hid 0xffc25af3 hid_validate_values +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 0xda142551 roccat_connect +EXPORT_SYMBOL_GPL drivers/hid/hid-roccat-common 0x112e0b97 roccat_common2_sysfs_write +EXPORT_SYMBOL_GPL drivers/hid/hid-roccat-common 0xab78feb5 roccat_common2_sysfs_read +EXPORT_SYMBOL_GPL drivers/hid/hid-roccat-common 0xb665d930 roccat_common2_device_init_struct +EXPORT_SYMBOL_GPL drivers/hid/hid-roccat-common 0xbdf1772c roccat_common2_receive +EXPORT_SYMBOL_GPL drivers/hid/hid-roccat-common 0xc604a361 roccat_common2_send_with_status +EXPORT_SYMBOL_GPL drivers/hid/hid-roccat-common 0xf5c202d4 roccat_common2_send +EXPORT_SYMBOL_GPL drivers/hid/hid-sensor-hub 0x47804e95 sensor_hub_remove_callback +EXPORT_SYMBOL_GPL drivers/hid/hid-sensor-hub 0x59fc8a59 sensor_hub_get_feature +EXPORT_SYMBOL_GPL drivers/hid/hid-sensor-hub 0x5a7a5843 sensor_hub_device_open +EXPORT_SYMBOL_GPL drivers/hid/hid-sensor-hub 0x65308f15 hid_sensor_get_usage_index +EXPORT_SYMBOL_GPL drivers/hid/hid-sensor-hub 0x9f28126c sensor_hub_set_feature +EXPORT_SYMBOL_GPL drivers/hid/hid-sensor-hub 0xb37205eb sensor_hub_device_close +EXPORT_SYMBOL_GPL drivers/hid/hid-sensor-hub 0xb94907e1 sensor_hub_input_get_attribute_info +EXPORT_SYMBOL_GPL drivers/hid/hid-sensor-hub 0xe50d3952 sensor_hub_register_callback +EXPORT_SYMBOL_GPL drivers/hid/hid-sensor-hub 0xe9945ab0 sensor_hub_input_attr_get_raw_value +EXPORT_SYMBOL_GPL drivers/hid/i2c-hid/i2c-hid 0xd3e899fc i2c_hid_ll_driver +EXPORT_SYMBOL_GPL drivers/hid/uhid 0x5872bf3f uhid_hid_driver +EXPORT_SYMBOL_GPL drivers/hid/usbhid/usbhid 0x760dcc20 usb_hid_driver +EXPORT_SYMBOL_GPL drivers/hid/usbhid/usbhid 0xd962850b hiddev_hid_event +EXPORT_SYMBOL_GPL drivers/hsi/hsi 0x1e3618d9 hsi_new_client +EXPORT_SYMBOL_GPL drivers/hsi/hsi 0x240148a7 hsi_port_unregister_clients +EXPORT_SYMBOL_GPL drivers/hsi/hsi 0x2ad95a29 hsi_unregister_controller +EXPORT_SYMBOL_GPL drivers/hsi/hsi 0x2e620465 hsi_register_port_event +EXPORT_SYMBOL_GPL drivers/hsi/hsi 0x3b4c5ffd hsi_release_port +EXPORT_SYMBOL_GPL drivers/hsi/hsi 0x42e73385 hsi_claim_port +EXPORT_SYMBOL_GPL drivers/hsi/hsi 0x51d29954 hsi_register_controller +EXPORT_SYMBOL_GPL drivers/hsi/hsi 0x5210a5bf hsi_board_list +EXPORT_SYMBOL_GPL drivers/hsi/hsi 0x6f40efbb hsi_register_client_driver +EXPORT_SYMBOL_GPL drivers/hsi/hsi 0x84638c13 hsi_get_channel_id_by_name +EXPORT_SYMBOL_GPL drivers/hsi/hsi 0x9b9911af hsi_put_controller +EXPORT_SYMBOL_GPL drivers/hsi/hsi 0xa0c3d7b2 hsi_alloc_controller +EXPORT_SYMBOL_GPL drivers/hsi/hsi 0xa19f6ba4 hsi_event +EXPORT_SYMBOL_GPL drivers/hsi/hsi 0xa47b1c55 hsi_unregister_port_event +EXPORT_SYMBOL_GPL drivers/hsi/hsi 0xb486ffe5 hsi_async +EXPORT_SYMBOL_GPL drivers/hsi/hsi 0xcdca1a9f hsi_add_clients_from_dt +EXPORT_SYMBOL_GPL drivers/hsi/hsi 0xd6bbf680 hsi_free_msg +EXPORT_SYMBOL_GPL drivers/hsi/hsi 0xd8bc4717 hsi_alloc_msg +EXPORT_SYMBOL_GPL drivers/hsi/hsi 0xeb57bb1c hsi_remove_client +EXPORT_SYMBOL_GPL drivers/hwmon/adt7x10 0x069d54dd adt7x10_probe +EXPORT_SYMBOL_GPL drivers/hwmon/adt7x10 0x67ed4a89 adt7x10_dev_pm_ops +EXPORT_SYMBOL_GPL drivers/hwmon/adt7x10 0xd809706d adt7x10_remove +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/ltc2947-core 0xc3e8b129 ltc2947_pm_ops +EXPORT_SYMBOL_GPL drivers/hwmon/pmbus/pmbus_core 0x0e6aa5c0 pmbus_read_word_data +EXPORT_SYMBOL_GPL drivers/hwmon/pmbus/pmbus_core 0x11990681 pmbus_clear_faults +EXPORT_SYMBOL_GPL drivers/hwmon/pmbus/pmbus_core 0x2486a9bb pmbus_write_byte +EXPORT_SYMBOL_GPL drivers/hwmon/pmbus/pmbus_core 0x36b3589a pmbus_do_probe +EXPORT_SYMBOL_GPL drivers/hwmon/pmbus/pmbus_core 0x41e41f47 pmbus_get_fan_rate_device +EXPORT_SYMBOL_GPL drivers/hwmon/pmbus/pmbus_core 0x66a08245 pmbus_check_byte_register +EXPORT_SYMBOL_GPL drivers/hwmon/pmbus/pmbus_core 0x6c400988 pmbus_update_fan +EXPORT_SYMBOL_GPL drivers/hwmon/pmbus/pmbus_core 0x7ce4c253 pmbus_get_fan_rate_cached +EXPORT_SYMBOL_GPL drivers/hwmon/pmbus/pmbus_core 0x7f8027a0 pmbus_check_word_register +EXPORT_SYMBOL_GPL drivers/hwmon/pmbus/pmbus_core 0x8f259c1a pmbus_read_byte_data +EXPORT_SYMBOL_GPL drivers/hwmon/pmbus/pmbus_core 0x959bd665 pmbus_get_driver_info +EXPORT_SYMBOL_GPL drivers/hwmon/pmbus/pmbus_core 0xa01338cc pmbus_update_byte_data +EXPORT_SYMBOL_GPL drivers/hwmon/pmbus/pmbus_core 0xa2863650 pmbus_get_debugfs_dir +EXPORT_SYMBOL_GPL drivers/hwmon/pmbus/pmbus_core 0xa9a8316f pmbus_set_page +EXPORT_SYMBOL_GPL drivers/hwmon/pmbus/pmbus_core 0xab98899e pmbus_regulator_ops +EXPORT_SYMBOL_GPL drivers/hwmon/pmbus/pmbus_core 0xb4463517 pmbus_write_word_data +EXPORT_SYMBOL_GPL drivers/hwmon/pmbus/pmbus_core 0xb7253da6 pmbus_clear_cache +EXPORT_SYMBOL_GPL drivers/hwmon/pmbus/pmbus_core 0xbf6cef3b pmbus_do_remove +EXPORT_SYMBOL_GPL drivers/hwmon/pmbus/pmbus_core 0xc7e031be pmbus_write_byte_data +EXPORT_SYMBOL_GPL drivers/hwtracing/intel_th/intel_th 0x1e04a743 intel_th_driver_unregister +EXPORT_SYMBOL_GPL drivers/hwtracing/intel_th/intel_th 0x2917de39 intel_th_free +EXPORT_SYMBOL_GPL drivers/hwtracing/intel_th/intel_th 0x6523b483 intel_th_trace_disable +EXPORT_SYMBOL_GPL drivers/hwtracing/intel_th/intel_th 0x6b6a21a7 intel_th_set_output +EXPORT_SYMBOL_GPL drivers/hwtracing/intel_th/intel_th 0x9aa9ce7a intel_th_alloc +EXPORT_SYMBOL_GPL drivers/hwtracing/intel_th/intel_th 0xb8dee87c intel_th_trace_switch +EXPORT_SYMBOL_GPL drivers/hwtracing/intel_th/intel_th 0xba22ddad intel_th_trace_enable +EXPORT_SYMBOL_GPL drivers/hwtracing/intel_th/intel_th 0xdff3e98a intel_th_output_enable +EXPORT_SYMBOL_GPL drivers/hwtracing/intel_th/intel_th 0xefc1210b intel_th_driver_register +EXPORT_SYMBOL_GPL drivers/hwtracing/intel_th/intel_th_msu 0x2c912f0a intel_th_msu_buffer_unregister +EXPORT_SYMBOL_GPL drivers/hwtracing/intel_th/intel_th_msu 0x2ea4eaa8 intel_th_msu_buffer_register +EXPORT_SYMBOL_GPL drivers/hwtracing/intel_th/intel_th_msu 0xd9b2db47 intel_th_msc_window_unlock +EXPORT_SYMBOL_GPL drivers/hwtracing/stm/stm_core 0x3bc7d96f stm_unregister_protocol +EXPORT_SYMBOL_GPL drivers/hwtracing/stm/stm_core 0x71ee612c stm_register_protocol +EXPORT_SYMBOL_GPL drivers/hwtracing/stm/stm_core 0x8ff0dcdd stm_source_unregister_device +EXPORT_SYMBOL_GPL drivers/hwtracing/stm/stm_core 0xa9fa90aa stm_source_register_device +EXPORT_SYMBOL_GPL drivers/hwtracing/stm/stm_core 0xd7632430 to_pdrv_policy_node +EXPORT_SYMBOL_GPL drivers/hwtracing/stm/stm_core 0xd80f2fbd stm_unregister_device +EXPORT_SYMBOL_GPL drivers/hwtracing/stm/stm_core 0xdf9c06f3 stm_data_write +EXPORT_SYMBOL_GPL drivers/hwtracing/stm/stm_core 0xe7bc66bf stm_source_write +EXPORT_SYMBOL_GPL drivers/hwtracing/stm/stm_core 0xf90e9127 stm_register_device +EXPORT_SYMBOL_GPL drivers/i2c/i2c-mux 0x0e54d160 i2c_root_adapter +EXPORT_SYMBOL_GPL drivers/i2c/i2c-mux 0x5b7e28d8 i2c_mux_alloc +EXPORT_SYMBOL_GPL drivers/i2c/i2c-mux 0x6453e931 i2c_mux_del_adapters +EXPORT_SYMBOL_GPL drivers/i2c/i2c-mux 0x83dc225a i2c_mux_add_adapter +EXPORT_SYMBOL_GPL drivers/i2c/i2c-smbus 0x18f32869 i2c_handle_smbus_alert +EXPORT_SYMBOL_GPL drivers/i3c/i3c 0x111dc816 i3c_master_do_daa +EXPORT_SYMBOL_GPL drivers/i3c/i3c 0x15e83b5d i3c_generic_ibi_alloc_pool +EXPORT_SYMBOL_GPL drivers/i3c/i3c 0x2b8e4d31 i3c_master_enec_locked +EXPORT_SYMBOL_GPL drivers/i3c/i3c 0x3a2baefa i3c_device_free_ibi +EXPORT_SYMBOL_GPL drivers/i3c/i3c 0x3e927158 i3c_device_enable_ibi +EXPORT_SYMBOL_GPL drivers/i3c/i3c 0x427185e2 i3c_driver_register_with_owner +EXPORT_SYMBOL_GPL drivers/i3c/i3c 0x543f06d0 i3c_driver_unregister +EXPORT_SYMBOL_GPL drivers/i3c/i3c 0x643726ed i3c_device_get_info +EXPORT_SYMBOL_GPL drivers/i3c/i3c 0x666e6fc1 i3c_device_match_id +EXPORT_SYMBOL_GPL drivers/i3c/i3c 0x6abb18dc i3c_master_defslvs_locked +EXPORT_SYMBOL_GPL drivers/i3c/i3c 0x6b72e17f i3c_device_request_ibi +EXPORT_SYMBOL_GPL drivers/i3c/i3c 0x7394fdae i3c_device_disable_ibi +EXPORT_SYMBOL_GPL drivers/i3c/i3c 0x76fe3e05 i3c_generic_ibi_free_pool +EXPORT_SYMBOL_GPL drivers/i3c/i3c 0x7fd5cd7f i3cdev_to_dev +EXPORT_SYMBOL_GPL drivers/i3c/i3c 0x7ff5f259 i3c_master_set_info +EXPORT_SYMBOL_GPL drivers/i3c/i3c 0x85284260 dev_to_i3cdev +EXPORT_SYMBOL_GPL drivers/i3c/i3c 0x8c3a1624 i3c_master_unregister +EXPORT_SYMBOL_GPL drivers/i3c/i3c 0x9d4334a8 i3c_master_queue_ibi +EXPORT_SYMBOL_GPL drivers/i3c/i3c 0xa8a15e30 i3c_master_get_free_addr +EXPORT_SYMBOL_GPL drivers/i3c/i3c 0xabf20918 i3c_generic_ibi_recycle_slot +EXPORT_SYMBOL_GPL drivers/i3c/i3c 0xb6e79869 i3c_master_register +EXPORT_SYMBOL_GPL drivers/i3c/i3c 0xb93a8c45 i3c_master_disec_locked +EXPORT_SYMBOL_GPL drivers/i3c/i3c 0xd8e8acfc i3c_generic_ibi_get_free_slot +EXPORT_SYMBOL_GPL drivers/i3c/i3c 0xe20873c2 i3c_master_add_i3c_dev_locked +EXPORT_SYMBOL_GPL drivers/i3c/i3c 0xe4eb313b i3c_master_entdaa_locked +EXPORT_SYMBOL_GPL drivers/i3c/i3c 0xf3173528 i3c_device_do_priv_xfers +EXPORT_SYMBOL_GPL drivers/iio/accel/adxl372 0x7720f68c adxl372_readable_noinc_reg +EXPORT_SYMBOL_GPL drivers/iio/accel/adxl372 0xf69ec025 adxl372_probe +EXPORT_SYMBOL_GPL drivers/iio/accel/bmc150-accel-core 0x0244bbc0 bmc150_accel_core_remove +EXPORT_SYMBOL_GPL drivers/iio/accel/bmc150-accel-core 0x36fa4300 bmc150_accel_core_probe +EXPORT_SYMBOL_GPL drivers/iio/accel/bmc150-accel-core 0x5adf8924 bmc150_regmap_conf +EXPORT_SYMBOL_GPL drivers/iio/accel/bmc150-accel-core 0x80bfb51f bmc150_accel_pm_ops +EXPORT_SYMBOL_GPL drivers/iio/accel/mma7455_core 0x27fea21d mma7455_core_regmap +EXPORT_SYMBOL_GPL drivers/iio/accel/mma7455_core 0x9c9917d7 mma7455_core_remove +EXPORT_SYMBOL_GPL drivers/iio/accel/mma7455_core 0xa45c0736 mma7455_core_probe +EXPORT_SYMBOL_GPL drivers/iio/adc/ad7091r-base 0x12c73b77 ad7091r_regmap_config +EXPORT_SYMBOL_GPL drivers/iio/adc/ad7091r-base 0x3f6ad5ed ad7091r_probe +EXPORT_SYMBOL_GPL drivers/iio/adc/ad7606 0x3e8f25c5 ad7606_pm_ops +EXPORT_SYMBOL_GPL drivers/iio/adc/ad7606 0x55aefcba ad7606_probe +EXPORT_SYMBOL_GPL drivers/iio/adc/ad_sigma_delta 0x0349c9c2 ad_sd_reset +EXPORT_SYMBOL_GPL drivers/iio/adc/ad_sigma_delta 0x1a472689 ad_sd_cleanup_buffer_and_trigger +EXPORT_SYMBOL_GPL drivers/iio/adc/ad_sigma_delta 0x1a74f90b ad_sd_init +EXPORT_SYMBOL_GPL drivers/iio/adc/ad_sigma_delta 0x47fd22d5 ad_sd_calibrate +EXPORT_SYMBOL_GPL drivers/iio/adc/ad_sigma_delta 0x689ad321 ad_sd_read_reg +EXPORT_SYMBOL_GPL drivers/iio/adc/ad_sigma_delta 0x87c4dda8 ad_sd_write_reg +EXPORT_SYMBOL_GPL drivers/iio/adc/ad_sigma_delta 0x932ccec8 ad_sd_set_comm +EXPORT_SYMBOL_GPL drivers/iio/adc/ad_sigma_delta 0x9af07108 ad_sigma_delta_single_conversion +EXPORT_SYMBOL_GPL drivers/iio/adc/ad_sigma_delta 0xa8b6309c ad_sd_validate_trigger +EXPORT_SYMBOL_GPL drivers/iio/adc/ad_sigma_delta 0xdb161c4c ad_sd_calibrate_all +EXPORT_SYMBOL_GPL drivers/iio/adc/ad_sigma_delta 0xdffaba87 ad_sd_setup_buffer_and_trigger +EXPORT_SYMBOL_GPL drivers/iio/adc/adi-axi-adc 0x41e784ba devm_adi_axi_adc_conv_register +EXPORT_SYMBOL_GPL drivers/iio/adc/adi-axi-adc 0xd4aae956 adi_axi_adc_conv_priv +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 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 0xc6038ec6 iio_channel_cb_get_iio_dev +EXPORT_SYMBOL_GPL drivers/iio/buffer/industrialio-buffer-cb 0xd22c8db3 iio_channel_cb_get_channels +EXPORT_SYMBOL_GPL drivers/iio/buffer/industrialio-buffer-cb 0xe5fe4dfc iio_channel_get_all_cb +EXPORT_SYMBOL_GPL drivers/iio/buffer/industrialio-buffer-dma 0x06ca3b45 iio_dma_buffer_enable +EXPORT_SYMBOL_GPL drivers/iio/buffer/industrialio-buffer-dma 0x23f0e841 iio_dma_buffer_exit +EXPORT_SYMBOL_GPL drivers/iio/buffer/industrialio-buffer-dma 0x29a01788 iio_dma_buffer_disable +EXPORT_SYMBOL_GPL drivers/iio/buffer/industrialio-buffer-dma 0x34c64032 iio_dma_buffer_data_available +EXPORT_SYMBOL_GPL drivers/iio/buffer/industrialio-buffer-dma 0x88c21bec iio_dma_buffer_block_list_abort +EXPORT_SYMBOL_GPL drivers/iio/buffer/industrialio-buffer-dma 0x9c0f482e iio_dma_buffer_read +EXPORT_SYMBOL_GPL drivers/iio/buffer/industrialio-buffer-dma 0xcfde952b iio_dma_buffer_set_bytes_per_datum +EXPORT_SYMBOL_GPL drivers/iio/buffer/industrialio-buffer-dma 0xe1df6bce iio_dma_buffer_init +EXPORT_SYMBOL_GPL drivers/iio/buffer/industrialio-buffer-dma 0xe47022f2 iio_dma_buffer_release +EXPORT_SYMBOL_GPL drivers/iio/buffer/industrialio-buffer-dma 0xe4a74a4b iio_dma_buffer_request_update +EXPORT_SYMBOL_GPL drivers/iio/buffer/industrialio-buffer-dma 0xe785e3e4 iio_dma_buffer_set_length +EXPORT_SYMBOL_GPL drivers/iio/buffer/industrialio-buffer-dma 0xf3c3df79 iio_dma_buffer_block_done +EXPORT_SYMBOL_GPL drivers/iio/buffer/industrialio-buffer-dmaengine 0x6ea5da69 devm_iio_dmaengine_buffer_alloc +EXPORT_SYMBOL_GPL drivers/iio/buffer/industrialio-buffer-dmaengine 0x79e67d53 iio_dmaengine_buffer_free +EXPORT_SYMBOL_GPL drivers/iio/buffer/industrialio-hw-consumer 0x093c0c6d devm_iio_hw_consumer_alloc +EXPORT_SYMBOL_GPL drivers/iio/buffer/industrialio-hw-consumer 0x3391543d iio_hw_consumer_disable +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 0xfa56c44c iio_hw_consumer_alloc +EXPORT_SYMBOL_GPL drivers/iio/buffer/industrialio-triggered-buffer 0x2a54c2f5 devm_iio_triggered_buffer_setup +EXPORT_SYMBOL_GPL drivers/iio/chemical/bme680_core 0x4ca8942f bme680_core_probe +EXPORT_SYMBOL_GPL drivers/iio/dac/ad5592r-base 0x13e69ba5 ad5592r_remove +EXPORT_SYMBOL_GPL drivers/iio/dac/ad5592r-base 0xa77f7672 ad5592r_probe +EXPORT_SYMBOL_GPL drivers/iio/dac/ad5686 0x53591500 ad5686_remove +EXPORT_SYMBOL_GPL drivers/iio/dac/ad5686 0x58d63c61 ad5686_probe +EXPORT_SYMBOL_GPL drivers/iio/gyro/bmg160_core 0x81964ddd bmg160_core_remove +EXPORT_SYMBOL_GPL drivers/iio/gyro/bmg160_core 0x87d12b82 bmg160_core_probe +EXPORT_SYMBOL_GPL drivers/iio/gyro/bmg160_core 0xae3f4cb4 bmg160_pm_ops +EXPORT_SYMBOL_GPL drivers/iio/gyro/fxas21002c_core 0x004bd49c fxas21002c_core_remove +EXPORT_SYMBOL_GPL drivers/iio/gyro/fxas21002c_core 0x0b1bcb24 fxas21002c_core_probe +EXPORT_SYMBOL_GPL drivers/iio/gyro/fxas21002c_core 0x7d2a4722 fxas21002c_pm_ops +EXPORT_SYMBOL_GPL drivers/iio/imu/adis_lib 0x1b96e9bb adis_single_conversion +EXPORT_SYMBOL_GPL drivers/iio/imu/adis_lib 0x1f508eda adis_update_scan_mode +EXPORT_SYMBOL_GPL drivers/iio/imu/adis_lib 0x2023ec33 __adis_initial_startup +EXPORT_SYMBOL_GPL drivers/iio/imu/adis_lib 0x376e1e58 adis_setup_buffer_and_trigger +EXPORT_SYMBOL_GPL drivers/iio/imu/adis_lib 0x49acd0c2 __adis_reset +EXPORT_SYMBOL_GPL drivers/iio/imu/adis_lib 0x668f01a4 adis_init +EXPORT_SYMBOL_GPL drivers/iio/imu/adis_lib 0x8009f2f1 __adis_read_reg +EXPORT_SYMBOL_GPL drivers/iio/imu/adis_lib 0x82376486 adis_cleanup_buffer_and_trigger +EXPORT_SYMBOL_GPL drivers/iio/imu/adis_lib 0x9bc9444a devm_adis_setup_buffer_and_trigger +EXPORT_SYMBOL_GPL drivers/iio/imu/adis_lib 0xa66abcae __adis_write_reg +EXPORT_SYMBOL_GPL drivers/iio/imu/adis_lib 0xaaa207b8 __adis_update_bits_base +EXPORT_SYMBOL_GPL drivers/iio/imu/adis_lib 0xbc031ea6 devm_adis_probe_trigger +EXPORT_SYMBOL_GPL drivers/iio/imu/adis_lib 0xe2bba81c adis_remove_trigger +EXPORT_SYMBOL_GPL drivers/iio/imu/adis_lib 0xec341885 __adis_check_status +EXPORT_SYMBOL_GPL drivers/iio/imu/adis_lib 0xef2128f3 adis_probe_trigger +EXPORT_SYMBOL_GPL drivers/iio/imu/bmi160/bmi160_core 0x80e3385d bmi160_core_probe +EXPORT_SYMBOL_GPL drivers/iio/imu/fxos8700_core 0xc3a8bd9a fxos8700_core_probe +EXPORT_SYMBOL_GPL drivers/iio/imu/inv_mpu6050/inv-mpu6050 0x3767f905 inv_mpu_core_probe +EXPORT_SYMBOL_GPL drivers/iio/imu/inv_mpu6050/inv-mpu6050 0x635eb4ca inv_mpu_pmops +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x01ad39a4 devm_iio_channel_get_all +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x04189dfd iio_channel_release_all +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x07273143 iio_write_channel_attribute +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x0f0c1fdd iio_buffer_get +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x18349988 iio_device_release_direct_mode +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x1fa91e24 iio_validate_scan_mask_onehot +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x23643f3f iio_map_array_register +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x242888db iio_write_channel_ext_info +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x26f6b499 iio_str_to_fixpoint +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x2888dbfe iio_get_channel_type +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x29e2f00c iio_write_channel_raw +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x2d57ace2 iio_channel_release +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x3054c95f iio_read_channel_ext_info +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x32b5ce49 iio_enum_available_read +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x38ea013e iio_read_channel_processed +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x412c4e65 iio_read_channel_raw +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x4317ae49 iio_convert_raw_to_processed +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x472420bc iio_enum_read +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x4bead50d iio_enum_write +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x4bfb4751 iio_buffer_set_attrs +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x4ca218d5 iio_read_channel_average_raw +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x4dce7dd4 iio_format_value +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x5a4f67ea iio_dealloc_pollfunc +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x5c0c63fc iio_channel_get_all +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x61ce5b25 devm_iio_trigger_alloc +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x68a5c86a devm_iio_device_alloc +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x6e1b09aa iio_read_max_channel_raw +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x7f835d0a iio_read_channel_offset +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x823bef91 iio_push_to_buffers +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x88237c46 iio_read_channel_attribute +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x8d1d8937 devm_iio_channel_get +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x8f4d6704 iio_update_buffers +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x936cdecd iio_show_mount_matrix +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x9d602659 iio_read_avail_channel_attribute +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x9e735544 __devm_iio_device_register +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0xa9a45ce4 __devm_iio_trigger_register +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0xb2d300af iio_get_channel_ext_info_count +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0xb5914dbf iio_alloc_pollfunc +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0xcc4aa74c iio_read_avail_channel_raw +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0xdcaad36f iio_channel_get +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0xec638bb5 iio_read_channel_scale +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0xee207e61 iio_buffer_put +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0xef756e3e iio_device_attach_buffer +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0xf1da115a iio_device_claim_direct_mode +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0xf638a1b7 iio_map_array_unregister +EXPORT_SYMBOL_GPL drivers/iio/magnetometer/rm3100-core 0x0a1424e0 rm3100_volatile_table +EXPORT_SYMBOL_GPL drivers/iio/magnetometer/rm3100-core 0xaa911f08 rm3100_readable_table +EXPORT_SYMBOL_GPL drivers/iio/magnetometer/rm3100-core 0xad93f6f8 rm3100_common_probe +EXPORT_SYMBOL_GPL drivers/iio/magnetometer/rm3100-core 0xcc7209be rm3100_writable_table +EXPORT_SYMBOL_GPL drivers/iio/pressure/mpl115 0x3ce5183a mpl115_probe +EXPORT_SYMBOL_GPL drivers/iio/pressure/zpa2326 0x4369a48a zpa2326_isreg_writeable +EXPORT_SYMBOL_GPL drivers/iio/pressure/zpa2326 0x66af6d72 zpa2326_isreg_readable +EXPORT_SYMBOL_GPL drivers/iio/pressure/zpa2326 0x7812ba1d zpa2326_pm_ops +EXPORT_SYMBOL_GPL drivers/iio/pressure/zpa2326 0xa9a2baee zpa2326_probe +EXPORT_SYMBOL_GPL drivers/iio/pressure/zpa2326 0xc0d5386d zpa2326_isreg_precious +EXPORT_SYMBOL_GPL drivers/iio/pressure/zpa2326 0xd93cf379 zpa2326_remove +EXPORT_SYMBOL_GPL drivers/infiniband/core/ib_core 0xdbd019c4 ib_wq +EXPORT_SYMBOL_GPL drivers/infiniband/ulp/rtrs/rtrs-core 0x03115c61 rtrs_init_hb +EXPORT_SYMBOL_GPL drivers/infiniband/ulp/rtrs/rtrs-core 0x05621cdf rtrs_iu_post_rdma_write_imm +EXPORT_SYMBOL_GPL drivers/infiniband/ulp/rtrs/rtrs-core 0x224ac629 rtrs_send_hb_ack +EXPORT_SYMBOL_GPL drivers/infiniband/ulp/rtrs/rtrs-core 0x2eacb36e rtrs_iu_alloc +EXPORT_SYMBOL_GPL drivers/infiniband/ulp/rtrs/rtrs-core 0x3288f3c4 rtrs_iu_post_send +EXPORT_SYMBOL_GPL drivers/infiniband/ulp/rtrs/rtrs-core 0x46edac56 rtrs_post_recv_empty +EXPORT_SYMBOL_GPL drivers/infiniband/ulp/rtrs/rtrs-core 0x58280e45 rtrs_cq_qp_destroy +EXPORT_SYMBOL_GPL drivers/infiniband/ulp/rtrs/rtrs-core 0x8f39ee0b rtrs_cq_qp_create +EXPORT_SYMBOL_GPL drivers/infiniband/ulp/rtrs/rtrs-core 0x97fd2455 rtrs_post_rdma_write_imm_empty +EXPORT_SYMBOL_GPL drivers/infiniband/ulp/rtrs/rtrs-core 0xb2c75201 rtrs_start_hb +EXPORT_SYMBOL_GPL drivers/infiniband/ulp/rtrs/rtrs-core 0xb4a616f4 rtrs_stop_hb +EXPORT_SYMBOL_GPL drivers/infiniband/ulp/rtrs/rtrs-core 0xd044570e rtrs_iu_post_recv +EXPORT_SYMBOL_GPL drivers/infiniband/ulp/rtrs/rtrs-core 0xe41fd8ea rtrs_iu_free +EXPORT_SYMBOL_GPL drivers/input/ff-memless 0xc76f767d input_ff_create_memless +EXPORT_SYMBOL_GPL drivers/input/matrix-keymap 0x36360ae9 matrix_keypad_parse_properties +EXPORT_SYMBOL_GPL drivers/input/misc/adxl34x 0x49a4fcbd adxl34x_remove +EXPORT_SYMBOL_GPL drivers/input/misc/adxl34x 0x66535a18 adxl34x_suspend +EXPORT_SYMBOL_GPL drivers/input/misc/adxl34x 0xe4586827 adxl34x_resume +EXPORT_SYMBOL_GPL drivers/input/misc/adxl34x 0xf2769087 adxl34x_probe +EXPORT_SYMBOL_GPL drivers/input/rmi4/rmi_core 0x39143ed5 rmi_set_attn_data +EXPORT_SYMBOL_GPL drivers/input/rmi4/rmi_core 0x48f7944d rmi_2d_sensor_abs_report +EXPORT_SYMBOL_GPL drivers/input/rmi4/rmi_core 0x4b8590b3 rmi_dbg +EXPORT_SYMBOL_GPL drivers/input/rmi4/rmi_core 0x53da48f8 rmi_2d_sensor_rel_report +EXPORT_SYMBOL_GPL drivers/input/rmi4/rmi_core 0x68d6c1a4 rmi_2d_sensor_abs_process +EXPORT_SYMBOL_GPL drivers/input/rmi4/rmi_core 0x78d8678d rmi_driver_suspend +EXPORT_SYMBOL_GPL drivers/input/rmi4/rmi_core 0x79f8a179 rmi_driver_resume +EXPORT_SYMBOL_GPL drivers/input/rmi4/rmi_core 0x8133b3c9 rmi_of_property_read_u32 +EXPORT_SYMBOL_GPL drivers/input/rmi4/rmi_core 0x94122b82 __rmi_register_function_handler +EXPORT_SYMBOL_GPL drivers/input/rmi4/rmi_core 0xa1d9da11 rmi_unregister_function_handler +EXPORT_SYMBOL_GPL drivers/input/rmi4/rmi_core 0xe4f59c9f rmi_2d_sensor_configure_input +EXPORT_SYMBOL_GPL drivers/input/rmi4/rmi_core 0xeebfadb7 rmi_2d_sensor_of_probe +EXPORT_SYMBOL_GPL drivers/input/rmi4/rmi_core 0xf9438508 rmi_register_transport_device +EXPORT_SYMBOL_GPL drivers/input/touchscreen/cyttsp4_core 0x327b872b cyttsp4_pm_ops +EXPORT_SYMBOL_GPL drivers/input/touchscreen/cyttsp4_core 0x4ee99e21 cyttsp4_probe +EXPORT_SYMBOL_GPL drivers/input/touchscreen/cyttsp4_core 0xbd95176a cyttsp4_remove +EXPORT_SYMBOL_GPL drivers/input/touchscreen/cyttsp_core 0x4242f870 cyttsp_pm_ops +EXPORT_SYMBOL_GPL drivers/input/touchscreen/cyttsp_core 0x98be4899 cyttsp_probe +EXPORT_SYMBOL_GPL drivers/input/touchscreen/cyttsp_i2c_common 0x13ef92fc cyttsp_i2c_write_block_data +EXPORT_SYMBOL_GPL drivers/input/touchscreen/cyttsp_i2c_common 0x381f014c cyttsp_i2c_read_block_data +EXPORT_SYMBOL_GPL drivers/input/touchscreen/tsc200x-core 0x0a3afb8b tsc200x_probe +EXPORT_SYMBOL_GPL drivers/input/touchscreen/tsc200x-core 0x1f20865f tsc200x_remove +EXPORT_SYMBOL_GPL drivers/input/touchscreen/tsc200x-core 0x219d46f2 tsc200x_regmap_config +EXPORT_SYMBOL_GPL drivers/input/touchscreen/tsc200x-core 0xd4d9bb84 tsc200x_pm_ops +EXPORT_SYMBOL_GPL drivers/input/touchscreen/wm97xx-ts 0x02edb6a5 wm97xx_unregister_mach_ops +EXPORT_SYMBOL_GPL drivers/input/touchscreen/wm97xx-ts 0x14cbc44a wm97xx_register_mach_ops +EXPORT_SYMBOL_GPL drivers/input/touchscreen/wm97xx-ts 0x6065cb26 wm9705_codec +EXPORT_SYMBOL_GPL drivers/input/touchscreen/wm97xx-ts 0x7ddbd67c wm9712_codec +EXPORT_SYMBOL_GPL drivers/input/touchscreen/wm97xx-ts 0x871b66ab wm97xx_set_suspend_mode +EXPORT_SYMBOL_GPL drivers/input/touchscreen/wm97xx-ts 0xb171d6e2 wm9713_codec +EXPORT_SYMBOL_GPL drivers/input/touchscreen/wm97xx-ts 0xc7536a52 wm97xx_reg_read +EXPORT_SYMBOL_GPL drivers/input/touchscreen/wm97xx-ts 0xd31ba97f wm97xx_reg_write +EXPORT_SYMBOL_GPL drivers/input/touchscreen/wm97xx-ts 0xdd7b0e9e wm97xx_get_gpio +EXPORT_SYMBOL_GPL drivers/input/touchscreen/wm97xx-ts 0xe210954e wm97xx_config_gpio +EXPORT_SYMBOL_GPL drivers/input/touchscreen/wm97xx-ts 0xf8f676f5 wm97xx_set_gpio +EXPORT_SYMBOL_GPL drivers/input/touchscreen/wm97xx-ts 0xfa49f1b6 wm97xx_read_aux_adc +EXPORT_SYMBOL_GPL drivers/ipack/ipack 0x192e7f7a ipack_device_init +EXPORT_SYMBOL_GPL drivers/ipack/ipack 0x46b56cb1 ipack_driver_unregister +EXPORT_SYMBOL_GPL drivers/ipack/ipack 0x5d100a6a ipack_bus_register +EXPORT_SYMBOL_GPL drivers/ipack/ipack 0x66afc74c ipack_device_add +EXPORT_SYMBOL_GPL drivers/ipack/ipack 0x6ea41922 ipack_driver_register +EXPORT_SYMBOL_GPL drivers/ipack/ipack 0xaf02d326 ipack_put_device +EXPORT_SYMBOL_GPL drivers/ipack/ipack 0xc43a7e0f ipack_bus_unregister +EXPORT_SYMBOL_GPL drivers/ipack/ipack 0xd2a853a0 ipack_device_del +EXPORT_SYMBOL_GPL drivers/ipack/ipack 0xf69e4d89 ipack_get_device +EXPORT_SYMBOL_GPL drivers/leds/led-class-flash 0x1b18aafe led_set_flash_timeout +EXPORT_SYMBOL_GPL drivers/leds/led-class-flash 0x44ef900f devm_led_classdev_flash_unregister +EXPORT_SYMBOL_GPL drivers/leds/led-class-flash 0x45c18813 led_classdev_flash_register_ext +EXPORT_SYMBOL_GPL drivers/leds/led-class-flash 0x626cc736 led_classdev_flash_unregister +EXPORT_SYMBOL_GPL drivers/leds/led-class-flash 0x76f2f273 led_update_flash_brightness +EXPORT_SYMBOL_GPL drivers/leds/led-class-flash 0x7f6b140e led_set_flash_brightness +EXPORT_SYMBOL_GPL drivers/leds/led-class-flash 0x9d5df67d led_get_flash_fault +EXPORT_SYMBOL_GPL drivers/leds/led-class-flash 0xa730bf80 devm_led_classdev_flash_register_ext +EXPORT_SYMBOL_GPL drivers/leds/leds-lp55xx-common 0x047424b3 lp55xx_init_device +EXPORT_SYMBOL_GPL drivers/leds/leds-lp55xx-common 0x06bbfd84 lp55xx_register_leds +EXPORT_SYMBOL_GPL drivers/leds/leds-lp55xx-common 0x093212fd lp55xx_deinit_device +EXPORT_SYMBOL_GPL drivers/leds/leds-lp55xx-common 0x1d6ae198 lp55xx_unregister_sysfs +EXPORT_SYMBOL_GPL drivers/leds/leds-lp55xx-common 0x2fa21697 lp55xx_unregister_leds +EXPORT_SYMBOL_GPL drivers/leds/leds-lp55xx-common 0x312e97b7 lp55xx_read +EXPORT_SYMBOL_GPL drivers/leds/leds-lp55xx-common 0x3584151e lp55xx_update_bits +EXPORT_SYMBOL_GPL drivers/leds/leds-lp55xx-common 0x36aba788 lp55xx_is_extclk_used +EXPORT_SYMBOL_GPL drivers/leds/leds-lp55xx-common 0xb80fb329 lp55xx_of_populate_pdata +EXPORT_SYMBOL_GPL drivers/leds/leds-lp55xx-common 0xedd14442 lp55xx_write +EXPORT_SYMBOL_GPL drivers/leds/leds-lp55xx-common 0xf097384d lp55xx_register_sysfs +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/macintosh/windfarm_core 0x0a0527be wf_register_client +EXPORT_SYMBOL_GPL drivers/macintosh/windfarm_core 0x0d4ad18f wf_get_sensor +EXPORT_SYMBOL_GPL drivers/macintosh/windfarm_core 0x0e2b2eea wf_put_control +EXPORT_SYMBOL_GPL drivers/macintosh/windfarm_core 0x594212fc wf_register_sensor +EXPORT_SYMBOL_GPL drivers/macintosh/windfarm_core 0x69ce6493 wf_unregister_control +EXPORT_SYMBOL_GPL drivers/macintosh/windfarm_core 0x75147afa wf_set_overtemp +EXPORT_SYMBOL_GPL drivers/macintosh/windfarm_core 0x873b4a5d wf_unregister_sensor +EXPORT_SYMBOL_GPL drivers/macintosh/windfarm_core 0x8e3cb372 wf_register_control +EXPORT_SYMBOL_GPL drivers/macintosh/windfarm_core 0xb9625b5b wf_put_sensor +EXPORT_SYMBOL_GPL drivers/macintosh/windfarm_core 0xbcace2a5 wf_unregister_client +EXPORT_SYMBOL_GPL drivers/macintosh/windfarm_core 0xe0f22f77 wf_get_control +EXPORT_SYMBOL_GPL drivers/macintosh/windfarm_core 0xed82a14f wf_clear_overtemp +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0x10439a81 __tracepoint_bcache_bypass_congested +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0x19a02ba6 __tracepoint_bcache_journal_entry_full +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0x24ee2a7c __tracepoint_bcache_btree_read +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0x2515e866 __tracepoint_bcache_btree_gc_coalesce +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0x2869bc82 __tracepoint_bcache_bypass_sequential +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0x40430b3f __tracepoint_bcache_writeback_collision +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0x4f0eec50 __tracepoint_bcache_btree_node_compact +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0x52cb1bd3 __tracepoint_bcache_btree_node_split +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0x5a47b147 __tracepoint_bcache_gc_copy_collision +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0x61f8a4a2 __tracepoint_bcache_btree_node_free +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0x666af686 __tracepoint_bcache_btree_write +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0x77db9ce2 __tracepoint_bcache_read_retry +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0x78c4e77b __tracepoint_bcache_cache_insert +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0x83195c57 __tracepoint_bcache_journal_full +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0x8d0e2577 __tracepoint_bcache_btree_insert_key +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0x90d77239 __tracepoint_bcache_btree_cache_cannibalize +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0x93c8b623 __tracepoint_bcache_writeback +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0x97890220 __tracepoint_bcache_btree_set_root +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0x9a530fe1 __tracepoint_bcache_write +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0xa49f3127 __tracepoint_bcache_read +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0xb19c0de4 __tracepoint_bcache_gc_start +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0xb7599baf __tracepoint_bcache_request_end +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0xb8cb3ae4 __tracepoint_bcache_btree_node_alloc +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0xc3af40d5 __tracepoint_bcache_alloc_fail +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0xca6ae723 __tracepoint_bcache_invalidate +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0xceafa6da __tracepoint_bcache_journal_write +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0xcf2b1b68 __tracepoint_bcache_gc_end +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0xd89fb73f __tracepoint_bcache_request_start +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0xed607240 __tracepoint_bcache_gc_copy +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0xefba8a85 __tracepoint_bcache_btree_node_alloc_fail +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0xf307604e __tracepoint_bcache_journal_replay_key +EXPORT_SYMBOL_GPL drivers/md/dm-bio-prison 0x0683217e dm_cell_lock_promote_v2 +EXPORT_SYMBOL_GPL drivers/md/dm-bio-prison 0x17dd39d6 dm_deferred_set_create +EXPORT_SYMBOL_GPL drivers/md/dm-bio-prison 0x1fbc89b6 dm_bio_prison_free_cell +EXPORT_SYMBOL_GPL drivers/md/dm-bio-prison 0x299fa9c7 dm_cell_put_v2 +EXPORT_SYMBOL_GPL drivers/md/dm-bio-prison 0x2eb01e04 dm_deferred_set_destroy +EXPORT_SYMBOL_GPL drivers/md/dm-bio-prison 0x3f3e1b47 dm_bio_prison_alloc_cell_v2 +EXPORT_SYMBOL_GPL drivers/md/dm-bio-prison 0x46c8ba73 dm_cell_promote_or_release +EXPORT_SYMBOL_GPL drivers/md/dm-bio-prison 0x46e5bcbb dm_cell_unlock_v2 +EXPORT_SYMBOL_GPL drivers/md/dm-bio-prison 0x55ec9eb4 dm_bio_prison_free_cell_v2 +EXPORT_SYMBOL_GPL drivers/md/dm-bio-prison 0x6791a44e dm_deferred_entry_dec +EXPORT_SYMBOL_GPL drivers/md/dm-bio-prison 0x6854242b dm_cell_error +EXPORT_SYMBOL_GPL drivers/md/dm-bio-prison 0x6b5eaf58 dm_cell_quiesce_v2 +EXPORT_SYMBOL_GPL drivers/md/dm-bio-prison 0x753e20b2 dm_bio_prison_create +EXPORT_SYMBOL_GPL drivers/md/dm-bio-prison 0x7bf036f6 dm_cell_visit_release +EXPORT_SYMBOL_GPL drivers/md/dm-bio-prison 0x8134df73 dm_bio_prison_alloc_cell +EXPORT_SYMBOL_GPL drivers/md/dm-bio-prison 0x8a518214 dm_cell_release +EXPORT_SYMBOL_GPL drivers/md/dm-bio-prison 0x93fd3cc8 dm_get_cell +EXPORT_SYMBOL_GPL drivers/md/dm-bio-prison 0x99fced5c dm_cell_lock_v2 +EXPORT_SYMBOL_GPL drivers/md/dm-bio-prison 0x9f8d27ee dm_cell_release_no_holder +EXPORT_SYMBOL_GPL drivers/md/dm-bio-prison 0xace9b57b dm_bio_prison_destroy_v2 +EXPORT_SYMBOL_GPL drivers/md/dm-bio-prison 0xade1fb53 dm_cell_get_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 0xbfa3cb55 dm_bio_detain +EXPORT_SYMBOL_GPL drivers/md/dm-bio-prison 0xca2e3a88 dm_deferred_entry_inc +EXPORT_SYMBOL_GPL drivers/md/dm-bio-prison 0xd99e003d dm_bio_prison_create_v2 +EXPORT_SYMBOL_GPL drivers/md/dm-bufio 0x0ad0dc4f dm_bufio_mark_buffer_dirty +EXPORT_SYMBOL_GPL drivers/md/dm-bufio 0x111ab12a dm_bufio_mark_partial_buffer_dirty +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 0x6aebce95 dm_bufio_issue_discard +EXPORT_SYMBOL_GPL drivers/md/dm-bufio 0x6d3f57bd dm_bufio_get_client +EXPORT_SYMBOL_GPL drivers/md/dm-bufio 0x72f07bf4 dm_bufio_set_minimum_buffers +EXPORT_SYMBOL_GPL drivers/md/dm-bufio 0x74dcd98c dm_bufio_get_aux_data +EXPORT_SYMBOL_GPL drivers/md/dm-bufio 0x7c381a76 dm_bufio_get_block_size +EXPORT_SYMBOL_GPL drivers/md/dm-bufio 0x867e87eb dm_bufio_get_dm_io_client +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 0xb2438d54 dm_bufio_release_move +EXPORT_SYMBOL_GPL drivers/md/dm-bufio 0xb2676682 dm_bufio_client_create +EXPORT_SYMBOL_GPL drivers/md/dm-bufio 0xc0d7df85 dm_bufio_new +EXPORT_SYMBOL_GPL drivers/md/dm-bufio 0xc90df7e5 dm_bufio_prefetch +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 0x106427de dm_cache_policy_unregister +EXPORT_SYMBOL_GPL drivers/md/dm-cache 0x5adc2807 btracker_destroy +EXPORT_SYMBOL_GPL drivers/md/dm-cache 0x5de611a9 btracker_nr_writebacks_queued +EXPORT_SYMBOL_GPL drivers/md/dm-cache 0x7890d535 dm_cache_policy_get_name +EXPORT_SYMBOL_GPL drivers/md/dm-cache 0x87bee547 btracker_queue +EXPORT_SYMBOL_GPL drivers/md/dm-cache 0x890723f7 dm_cache_policy_get_version +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 0xa8aa8514 dm_cache_policy_register +EXPORT_SYMBOL_GPL drivers/md/dm-cache 0xadbefda4 dm_cache_policy_destroy +EXPORT_SYMBOL_GPL drivers/md/dm-cache 0xbf1a2968 btracker_create +EXPORT_SYMBOL_GPL drivers/md/dm-cache 0xccfe6409 btracker_nr_demotions_queued +EXPORT_SYMBOL_GPL drivers/md/dm-cache 0xcf8c2590 dm_cache_policy_get_hint_size +EXPORT_SYMBOL_GPL drivers/md/dm-cache 0xe1bdae47 dm_cache_policy_create +EXPORT_SYMBOL_GPL drivers/md/dm-multipath 0x32c884df dm_register_path_selector +EXPORT_SYMBOL_GPL drivers/md/dm-multipath 0x3d5c667c dm_unregister_path_selector +EXPORT_SYMBOL_GPL drivers/md/dm-region-hash 0x01d2f9ac dm_rh_recovery_start +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 0x46fa4d16 dm_rh_delay +EXPORT_SYMBOL_GPL drivers/md/dm-region-hash 0x57e16c3e dm_rh_get_state +EXPORT_SYMBOL_GPL drivers/md/dm-region-hash 0x5f4a6e61 dm_rh_dec +EXPORT_SYMBOL_GPL drivers/md/dm-region-hash 0x7093e22f dm_rh_mark_nosync +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 0x7fa0b7db dm_rh_dirty_log +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 0xb2e387f1 dm_rh_inc_pending +EXPORT_SYMBOL_GPL drivers/md/dm-region-hash 0xbe38a431 dm_rh_recovery_prepare +EXPORT_SYMBOL_GPL drivers/md/dm-region-hash 0xc0bb8704 dm_rh_bio_to_region +EXPORT_SYMBOL_GPL drivers/md/dm-region-hash 0xd8aa4284 dm_rh_region_context +EXPORT_SYMBOL_GPL drivers/md/dm-region-hash 0xed552d2e dm_region_hash_create +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 0x09cc81fa dm_btree_cursor_skip +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x0a7e77f3 dm_btree_cursor_end +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x0b25f6bc dm_array_resize +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x0b36102c dm_array_empty +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x0be67537 dm_btree_walk +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x0e198232 dm_btree_insert +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x10e6ccea dm_bitset_clear_bit +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x16af9071 dm_array_set_value +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x1e3f728d dm_block_data +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x23ebd5fb dm_bitset_set_bit +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x2417c5c4 dm_btree_empty +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x24621ca3 dm_sm_disk_open +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x2adee13f dm_btree_cursor_next +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 0x34d45c77 dm_btree_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 0x36a34e58 dm_array_cursor_get_value +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x36b84cda dm_array_del +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x3a797d19 dm_btree_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 0x432b8178 dm_array_cursor_begin +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x4557b425 dm_bitset_test_bit +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x48d1c7dc dm_btree_find_lowest_key +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x48e323be dm_bm_unlock +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x49081644 dm_btree_remove +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x4a4cb558 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 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 0x5cf0d0bb dm_tm_create_with_sm +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x63b0c22d dm_bitset_flush +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x688d422d dm_bm_block_size +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x6af8a872 dm_array_info_init +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x6bb4bf8f dm_array_cursor_next +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x6e1e3821 dm_array_walk +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x6f2fe3c4 dm_btree_remove_leaves +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 0x7485935a dm_btree_lookup +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x7551b46e dm_tm_open_with_sm +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x764567c8 dm_btree_find_highest_key +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 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 0x885b0024 dm_array_new +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x89783bda dm_array_cursor_end +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 0x95a52abd dm_bm_is_read_only +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x97263968 dm_bitset_resize +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x98db2687 dm_bitset_cursor_end +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 0x9e98460e dm_bitset_empty +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0xa2ea5542 dm_bitset_del +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0xa3cc1157 dm_btree_cursor_begin +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0xa51fbedc dm_bitset_new +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0xa6376fd2 dm_block_manager_create +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0xaab0ef04 dm_bitset_cursor_skip +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0xb6949944 dm_array_get_value +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0xbb461fb7 dm_bitset_cursor_begin +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0xbbb5df05 dm_array_cursor_skip +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0xc248bde2 dm_disk_bitset_init +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0xcedfc878 dm_bitset_cursor_get_value +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0xd163cade dm_tm_commit +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0xd51c29f1 dm_sm_disk_create +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0xd6711a58 dm_bitset_cursor_next +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0xe781f874 dm_tm_dec +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0xf398644f dm_btree_lookup_next +EXPORT_SYMBOL_GPL drivers/media/cec/core/cec 0x0c29b7d2 cec_notifier_cec_adap_register +EXPORT_SYMBOL_GPL drivers/media/cec/core/cec 0x11cd202e cec_notifier_parse_hdmi_phandle +EXPORT_SYMBOL_GPL drivers/media/cec/core/cec 0x155cc0d3 cec_s_phys_addr_from_edid +EXPORT_SYMBOL_GPL drivers/media/cec/core/cec 0x5c2bec4b cec_unregister_adapter +EXPORT_SYMBOL_GPL drivers/media/cec/core/cec 0x64a13d06 cec_queue_pin_hpd_event +EXPORT_SYMBOL_GPL drivers/media/cec/core/cec 0x7e26c26b cec_notifier_cec_adap_unregister +EXPORT_SYMBOL_GPL drivers/media/cec/core/cec 0x87282821 cec_queue_pin_cec_event +EXPORT_SYMBOL_GPL drivers/media/cec/core/cec 0x9163a90e cec_s_log_addrs +EXPORT_SYMBOL_GPL drivers/media/cec/core/cec 0x9f076b81 cec_notifier_conn_register +EXPORT_SYMBOL_GPL drivers/media/cec/core/cec 0xa01fbb6b cec_notifier_set_phys_addr +EXPORT_SYMBOL_GPL drivers/media/cec/core/cec 0xa86436b9 cec_fill_conn_info_from_drm +EXPORT_SYMBOL_GPL drivers/media/cec/core/cec 0xaee236c6 cec_notifier_conn_unregister +EXPORT_SYMBOL_GPL drivers/media/cec/core/cec 0xb1ff4b1d cec_s_conn_info +EXPORT_SYMBOL_GPL drivers/media/cec/core/cec 0xb8947118 cec_transmit_done_ts +EXPORT_SYMBOL_GPL drivers/media/cec/core/cec 0xbbee14c1 cec_transmit_attempt_done_ts +EXPORT_SYMBOL_GPL drivers/media/cec/core/cec 0xbe4de675 cec_get_edid_phys_addr +EXPORT_SYMBOL_GPL drivers/media/cec/core/cec 0xcd54f7ee cec_queue_pin_5v_event +EXPORT_SYMBOL_GPL drivers/media/cec/core/cec 0xcd6f860d cec_received_msg_ts +EXPORT_SYMBOL_GPL drivers/media/cec/core/cec 0xce2a0b6e cec_register_adapter +EXPORT_SYMBOL_GPL drivers/media/cec/core/cec 0xd46465f4 cec_s_phys_addr +EXPORT_SYMBOL_GPL drivers/media/cec/core/cec 0xd785cf16 cec_allocate_adapter +EXPORT_SYMBOL_GPL drivers/media/cec/core/cec 0xdfa16e57 cec_transmit_msg +EXPORT_SYMBOL_GPL drivers/media/cec/core/cec 0xefd21b56 cec_delete_adapter +EXPORT_SYMBOL_GPL drivers/media/cec/core/cec 0xf8c99364 cec_notifier_set_phys_addr_from_edid +EXPORT_SYMBOL_GPL drivers/media/common/b2c2/b2c2-flexcop 0x66c0289a b2c2_flexcop_debug +EXPORT_SYMBOL_GPL drivers/media/common/saa7146/saa7146 0x2f8501f1 saa7146_wait_for_debi_done +EXPORT_SYMBOL_GPL drivers/media/common/saa7146/saa7146 0x32806d3f saa7146_pgtable_free +EXPORT_SYMBOL_GPL drivers/media/common/saa7146/saa7146 0x363472c3 saa7146_vfree_destroy_pgtable +EXPORT_SYMBOL_GPL drivers/media/common/saa7146/saa7146 0x4544a2ce saa7146_vmalloc_build_pgtable +EXPORT_SYMBOL_GPL drivers/media/common/saa7146/saa7146 0x57930f07 saa7146_i2c_adapter_prepare +EXPORT_SYMBOL_GPL drivers/media/common/saa7146/saa7146 0x96950b26 saa7146_pgtable_build_single +EXPORT_SYMBOL_GPL drivers/media/common/saa7146/saa7146 0x98b37204 saa7146_unregister_extension +EXPORT_SYMBOL_GPL drivers/media/common/saa7146/saa7146 0xb60026ed saa7146_register_extension +EXPORT_SYMBOL_GPL drivers/media/common/saa7146/saa7146 0xdcd371b6 saa7146_setgpio +EXPORT_SYMBOL_GPL drivers/media/common/saa7146/saa7146 0xe3cd9b5c saa7146_debug +EXPORT_SYMBOL_GPL drivers/media/common/saa7146/saa7146 0xea57cf6a saa7146_pgtable_alloc +EXPORT_SYMBOL_GPL drivers/media/common/saa7146/saa7146_vv 0x01bb675c saa7146_start_preview +EXPORT_SYMBOL_GPL drivers/media/common/saa7146/saa7146_vv 0x11caf3ad saa7146_register_device +EXPORT_SYMBOL_GPL drivers/media/common/saa7146/saa7146_vv 0x249bf310 saa7146_stop_preview +EXPORT_SYMBOL_GPL drivers/media/common/saa7146/saa7146_vv 0x8da8239a saa7146_vv_release +EXPORT_SYMBOL_GPL drivers/media/common/saa7146/saa7146_vv 0xc046fb35 saa7146_unregister_device +EXPORT_SYMBOL_GPL drivers/media/common/saa7146/saa7146_vv 0xca79ece6 saa7146_set_hps_source_and_sync +EXPORT_SYMBOL_GPL drivers/media/common/saa7146/saa7146_vv 0xe1784e68 saa7146_vv_init +EXPORT_SYMBOL_GPL drivers/media/common/siano/smsmdtv 0x031dae54 sms_board_setup +EXPORT_SYMBOL_GPL drivers/media/common/siano/smsmdtv 0x0c9ea8c4 smscore_get_board_id +EXPORT_SYMBOL_GPL drivers/media/common/siano/smsmdtv 0x115c8b44 smscore_set_board_id +EXPORT_SYMBOL_GPL drivers/media/common/siano/smsmdtv 0x21e36bf2 smscore_registry_getmode +EXPORT_SYMBOL_GPL drivers/media/common/siano/smsmdtv 0x2314bf9a smscore_register_device +EXPORT_SYMBOL_GPL drivers/media/common/siano/smsmdtv 0x2e4c7c99 sms_board_power +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 0x45284ae9 smsendian_handle_rx_message +EXPORT_SYMBOL_GPL drivers/media/common/siano/smsmdtv 0x53722788 sms_board_led_feedback +EXPORT_SYMBOL_GPL drivers/media/common/siano/smsmdtv 0x65e89577 sms_board_lna_control +EXPORT_SYMBOL_GPL drivers/media/common/siano/smsmdtv 0x6fa706fd smscore_register_hotplug +EXPORT_SYMBOL_GPL drivers/media/common/siano/smsmdtv 0x706901aa smscore_getbuffer +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 0x805b4a50 smscore_start_device +EXPORT_SYMBOL_GPL drivers/media/common/siano/smsmdtv 0x844539ae sms_get_board +EXPORT_SYMBOL_GPL drivers/media/common/siano/smsmdtv 0x84ef1fc4 smscore_putbuffer +EXPORT_SYMBOL_GPL drivers/media/common/siano/smsmdtv 0x98c00179 smscore_unregister_hotplug +EXPORT_SYMBOL_GPL drivers/media/common/siano/smsmdtv 0x99a81ab3 smsclient_sendrequest +EXPORT_SYMBOL_GPL drivers/media/common/siano/smsmdtv 0xbbdb5c42 smscore_unregister_client +EXPORT_SYMBOL_GPL drivers/media/common/siano/smsmdtv 0xbeb04fd9 smscore_get_device_mode +EXPORT_SYMBOL_GPL drivers/media/common/siano/smsmdtv 0xc5b3d176 smscore_unregister_device +EXPORT_SYMBOL_GPL drivers/media/common/siano/smsmdtv 0xe83bf68e smscore_onresponse +EXPORT_SYMBOL_GPL drivers/media/common/siano/smsmdtv 0xfa6d6085 smscore_register_client +EXPORT_SYMBOL_GPL drivers/media/common/siano/smsmdtv 0xfa740e6a sms_board_event +EXPORT_SYMBOL_GPL drivers/media/common/v4l2-tpg/v4l2-tpg 0x03005a48 tpg_alloc +EXPORT_SYMBOL_GPL drivers/media/common/v4l2-tpg/v4l2-tpg 0x040dc7cd tpg_aspect_strings +EXPORT_SYMBOL_GPL drivers/media/common/v4l2-tpg/v4l2-tpg 0x4d1d285c tpg_init +EXPORT_SYMBOL_GPL drivers/media/common/v4l2-tpg/v4l2-tpg 0x517e7ccd tpg_fill_plane_buffer +EXPORT_SYMBOL_GPL drivers/media/common/v4l2-tpg/v4l2-tpg 0x579c6308 tpg_gen_text +EXPORT_SYMBOL_GPL drivers/media/common/v4l2-tpg/v4l2-tpg 0x6026aaf0 tpg_log_status +EXPORT_SYMBOL_GPL drivers/media/common/v4l2-tpg/v4l2-tpg 0x6960e899 tpg_s_crop_compose +EXPORT_SYMBOL_GPL drivers/media/common/v4l2-tpg/v4l2-tpg 0x756516e7 tpg_s_fourcc +EXPORT_SYMBOL_GPL drivers/media/common/v4l2-tpg/v4l2-tpg 0x7a5d8c0b tpg_update_mv_step +EXPORT_SYMBOL_GPL drivers/media/common/v4l2-tpg/v4l2-tpg 0x86b4ddf7 tpg_reset_source +EXPORT_SYMBOL_GPL drivers/media/common/v4l2-tpg/v4l2-tpg 0x975a1e29 tpg_g_interleaved_plane +EXPORT_SYMBOL_GPL drivers/media/common/v4l2-tpg/v4l2-tpg 0xaa5503d9 tpg_set_font +EXPORT_SYMBOL_GPL drivers/media/common/v4l2-tpg/v4l2-tpg 0xc6110b6e tpg_free +EXPORT_SYMBOL_GPL drivers/media/common/v4l2-tpg/v4l2-tpg 0xc6808be7 tpg_calc_text_basep +EXPORT_SYMBOL_GPL drivers/media/common/v4l2-tpg/v4l2-tpg 0xce8159bb tpg_pattern_strings +EXPORT_SYMBOL_GPL drivers/media/common/v4l2-tpg/v4l2-tpg 0xf65c5e46 tpg_fillbuffer +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-common 0x02309166 __tracepoint_vb2_buf_done +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-common 0x08719fc4 vb2_core_queue_release +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-common 0x11961b5c vb2_core_qbuf +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-common 0x2f94a22e vb2_core_streamoff +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-common 0x3667ef79 vb2_core_prepare_buf +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-common 0x36df7ed8 vb2_wait_for_all_buffers +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-common 0x3867067a vb2_core_queue_init +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-common 0x38fa35bb vb2_plane_cookie +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-common 0x4071e8f2 vb2_mmap +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-common 0x4a28e196 vb2_request_buffer_cnt +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-common 0x5235c19c vb2_core_dqbuf +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-common 0x63b986da vb2_read +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-common 0x672d9c68 vb2_core_querybuf +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-common 0x6c178235 vb2_thread_start +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-common 0x6d0af828 vb2_core_poll +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-common 0x6eae5138 vb2_thread_stop +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-common 0x72ddb883 __tracepoint_vb2_buf_queue +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-common 0x869b4979 vb2_core_reqbufs +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-common 0x8d323b2b vb2_discard_done +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-common 0x92432b65 vb2_core_create_bufs +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-common 0x940cd4e2 vb2_plane_vaddr +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-common 0x98b294c8 vb2_write +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-common 0xaf020967 vb2_core_expbuf +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-common 0xb1ec0973 vb2_request_object_is_buffer +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-common 0xd3cf05db vb2_buffer_done +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-common 0xd6249b3e __tracepoint_vb2_dqbuf +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-common 0xd83d6bd6 vb2_core_streamon +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-common 0xf0c756e7 __tracepoint_vb2_qbuf +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-common 0xfb6ae9be vb2_queue_error +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-dma-contig 0xec6943f7 vb2_dma_contig_memops +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-dma-contig 0xed3735ae vb2_dma_contig_set_max_seg_size +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-dma-sg 0x19d7eadd vb2_dma_sg_memops +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-memops 0xe4290592 vb2_common_vm_ops +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-v4l2 0x01971adc vb2_queue_init +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-v4l2 0x05bd1760 vb2_ioctl_expbuf +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-v4l2 0x071cc91b vb2_ioctl_streamon +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-v4l2 0x11557ed4 vb2_fop_poll +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-v4l2 0x16c01986 vb2_expbuf +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-v4l2 0x280a9011 vb2_streamoff +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-v4l2 0x2beb626e vb2_ioctl_prepare_buf +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-v4l2 0x32089295 vb2_prepare_buf +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-v4l2 0x375af203 vb2_fop_read +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-v4l2 0x3f2514b4 _vb2_fop_release +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-v4l2 0x4c9cf601 vb2_dqbuf +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-v4l2 0x5b09847d vb2_queue_release +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-v4l2 0x65ac60b2 vb2_ops_wait_prepare +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-v4l2 0x65c05730 vb2_ioctl_streamoff +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-v4l2 0x6a8d3320 vb2_request_validate +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-v4l2 0x72e39df8 vb2_ioctl_reqbufs +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-v4l2 0x76c22546 vb2_ioctl_qbuf +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-v4l2 0x811989f0 vb2_ioctl_create_bufs +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-v4l2 0x9584a6cb vb2_fop_write +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-v4l2 0x983c9528 vb2_ops_wait_finish +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-v4l2 0xae0ae43c vb2_streamon +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-v4l2 0xb3dcda05 vb2_create_bufs +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-v4l2 0xb650747d vb2_ioctl_dqbuf +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-v4l2 0xb675cfd2 vb2_ioctl_querybuf +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-v4l2 0xbf0a9f8f vb2_request_queue +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-v4l2 0xc49eebdd vb2_reqbufs +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-v4l2 0xc76243af vb2_qbuf +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-v4l2 0xd76c6cf7 vb2_fop_release +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-v4l2 0xdeb9c0d9 vb2_fop_mmap +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-v4l2 0xe7e30797 vb2_find_timestamp +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-v4l2 0xf474d5d9 vb2_poll +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-vmalloc 0x81a603be vb2_vmalloc_memops +EXPORT_SYMBOL_GPL drivers/media/dvb-core/dvb-core 0x51302807 dvb_module_probe +EXPORT_SYMBOL_GPL drivers/media/dvb-core/dvb-core 0x76fbe3e0 dvb_module_release +EXPORT_SYMBOL_GPL drivers/media/dvb-core/dvb-core 0xdab0f3f3 dvb_create_media_graph +EXPORT_SYMBOL_GPL drivers/media/dvb-frontends/as102_fe 0x17e734db as102_attach +EXPORT_SYMBOL_GPL drivers/media/dvb-frontends/cx24117 0xb060f17a cx24117_attach +EXPORT_SYMBOL_GPL drivers/media/dvb-frontends/gp8psk-fe 0x8ac07964 gp8psk_fe_attach +EXPORT_SYMBOL_GPL drivers/media/dvb-frontends/mxl5xx 0x97c09f9d mxl5xx_attach +EXPORT_SYMBOL_GPL drivers/media/dvb-frontends/stv0910 0x82ba358f stv0910_attach +EXPORT_SYMBOL_GPL drivers/media/dvb-frontends/stv6111 0x82c7f16b stv6111_attach +EXPORT_SYMBOL_GPL drivers/media/dvb-frontends/tda18271c2dd 0x65eaa34c tda18271c2dd_attach +EXPORT_SYMBOL_GPL drivers/media/i2c/aptina-pll 0x1d33d46c aptina_pll_calculate +EXPORT_SYMBOL_GPL drivers/media/i2c/smiapp-pll 0x9ad1207f smiapp_pll_calculate +EXPORT_SYMBOL_GPL drivers/media/mc/mc 0x00e10d80 media_entity_pads_init +EXPORT_SYMBOL_GPL drivers/media/mc/mc 0x01197c9a media_device_pci_init +EXPORT_SYMBOL_GPL drivers/media/mc/mc 0x02dc97c2 __media_device_register +EXPORT_SYMBOL_GPL drivers/media/mc/mc 0x058c2541 media_request_object_find +EXPORT_SYMBOL_GPL drivers/media/mc/mc 0x0cf5383f __media_remove_intf_links +EXPORT_SYMBOL_GPL drivers/media/mc/mc 0x1106f3ef media_devnode_create +EXPORT_SYMBOL_GPL drivers/media/mc/mc 0x13e032e2 __media_remove_intf_link +EXPORT_SYMBOL_GPL drivers/media/mc/mc 0x1d8801e5 media_graph_walk_next +EXPORT_SYMBOL_GPL drivers/media/mc/mc 0x241f81fb media_remove_intf_links +EXPORT_SYMBOL_GPL drivers/media/mc/mc 0x2577652d media_request_get_by_fd +EXPORT_SYMBOL_GPL drivers/media/mc/mc 0x257af606 media_request_put +EXPORT_SYMBOL_GPL drivers/media/mc/mc 0x287494af media_graph_walk_start +EXPORT_SYMBOL_GPL drivers/media/mc/mc 0x34bb8a9f media_device_unregister_entity +EXPORT_SYMBOL_GPL drivers/media/mc/mc 0x430a98e8 __media_pipeline_start +EXPORT_SYMBOL_GPL drivers/media/mc/mc 0x510e1366 media_entity_setup_link +EXPORT_SYMBOL_GPL drivers/media/mc/mc 0x57b637e4 __media_pipeline_stop +EXPORT_SYMBOL_GPL drivers/media/mc/mc 0x5a467de5 media_device_unregister_entity_notify +EXPORT_SYMBOL_GPL drivers/media/mc/mc 0x5ad5a086 media_entity_remove_links +EXPORT_SYMBOL_GPL drivers/media/mc/mc 0x649e7673 media_request_object_unbind +EXPORT_SYMBOL_GPL drivers/media/mc/mc 0x68b5a014 media_create_intf_link +EXPORT_SYMBOL_GPL drivers/media/mc/mc 0x7086c079 media_device_delete +EXPORT_SYMBOL_GPL drivers/media/mc/mc 0x8c916011 media_create_pad_links +EXPORT_SYMBOL_GPL drivers/media/mc/mc 0x969f0a52 media_entity_remote_pad +EXPORT_SYMBOL_GPL drivers/media/mc/mc 0x974d3802 media_request_object_init +EXPORT_SYMBOL_GPL drivers/media/mc/mc 0x987aeb51 __media_entity_setup_link +EXPORT_SYMBOL_GPL drivers/media/mc/mc 0x9bb4d229 __media_device_usb_init +EXPORT_SYMBOL_GPL drivers/media/mc/mc 0x9f7858c5 media_request_object_bind +EXPORT_SYMBOL_GPL drivers/media/mc/mc 0xaade5fca media_get_pad_index +EXPORT_SYMBOL_GPL drivers/media/mc/mc 0xac44ad83 media_entity_find_link +EXPORT_SYMBOL_GPL drivers/media/mc/mc 0xad0a4e09 media_device_cleanup +EXPORT_SYMBOL_GPL drivers/media/mc/mc 0xae5a8b75 media_request_object_complete +EXPORT_SYMBOL_GPL drivers/media/mc/mc 0xaea0c514 media_pipeline_stop +EXPORT_SYMBOL_GPL drivers/media/mc/mc 0xaea4d60c media_remove_intf_link +EXPORT_SYMBOL_GPL drivers/media/mc/mc 0xb1cc1b29 media_graph_walk_cleanup +EXPORT_SYMBOL_GPL drivers/media/mc/mc 0xb2d4fabe __media_entity_remove_links +EXPORT_SYMBOL_GPL drivers/media/mc/mc 0xc26836d4 media_create_pad_link +EXPORT_SYMBOL_GPL drivers/media/mc/mc 0xd05558b3 media_device_init +EXPORT_SYMBOL_GPL drivers/media/mc/mc 0xd7340a81 media_devnode_remove +EXPORT_SYMBOL_GPL drivers/media/mc/mc 0xdc581289 __media_entity_enum_init +EXPORT_SYMBOL_GPL drivers/media/mc/mc 0xdcccaf8c media_device_register_entity_notify +EXPORT_SYMBOL_GPL drivers/media/mc/mc 0xdf939e42 media_entity_get_fwnode_pad +EXPORT_SYMBOL_GPL drivers/media/mc/mc 0xe4b257c8 media_graph_walk_init +EXPORT_SYMBOL_GPL drivers/media/mc/mc 0xe5ceecd6 media_entity_enum_cleanup +EXPORT_SYMBOL_GPL drivers/media/mc/mc 0xf47a9bd7 media_request_object_put +EXPORT_SYMBOL_GPL drivers/media/mc/mc 0xf4e47e14 media_pipeline_start +EXPORT_SYMBOL_GPL drivers/media/mc/mc 0xfdcde752 media_device_usb_allocate +EXPORT_SYMBOL_GPL drivers/media/mc/mc 0xfe9f7091 media_device_register_entity +EXPORT_SYMBOL_GPL drivers/media/mc/mc 0xfff34043 media_device_unregister +EXPORT_SYMBOL_GPL drivers/media/pci/cx88/cx88xx 0x9042d5fe cx88_setup_xc3028 +EXPORT_SYMBOL_GPL drivers/media/pci/mantis/mantis_core 0x039f3da8 mantis_stream_control +EXPORT_SYMBOL_GPL drivers/media/pci/mantis/mantis_core 0x1bc75a33 mantis_dma_init +EXPORT_SYMBOL_GPL drivers/media/pci/mantis/mantis_core 0x2aa2e78e mantis_input_init +EXPORT_SYMBOL_GPL drivers/media/pci/mantis/mantis_core 0x2cb6a3d3 mantis_ca_init +EXPORT_SYMBOL_GPL drivers/media/pci/mantis/mantis_core 0x3a5d4afc mantis_dvb_init +EXPORT_SYMBOL_GPL drivers/media/pci/mantis/mantis_core 0x4714373f mantis_uart_exit +EXPORT_SYMBOL_GPL drivers/media/pci/mantis/mantis_core 0x56ae07f2 mantis_i2c_init +EXPORT_SYMBOL_GPL drivers/media/pci/mantis/mantis_core 0x5e41389d mantis_frontend_power +EXPORT_SYMBOL_GPL drivers/media/pci/mantis/mantis_core 0x70304774 mantis_pci_exit +EXPORT_SYMBOL_GPL drivers/media/pci/mantis/mantis_core 0x76033511 mantis_pci_init +EXPORT_SYMBOL_GPL drivers/media/pci/mantis/mantis_core 0x82aea4b1 mantis_dvb_exit +EXPORT_SYMBOL_GPL drivers/media/pci/mantis/mantis_core 0x86258526 mantis_ca_exit +EXPORT_SYMBOL_GPL drivers/media/pci/mantis/mantis_core 0x9016e9d3 mantis_gpio_set_bits +EXPORT_SYMBOL_GPL drivers/media/pci/mantis/mantis_core 0xa334b47e mantis_dma_exit +EXPORT_SYMBOL_GPL drivers/media/pci/mantis/mantis_core 0xb4d20264 mantis_frontend_soft_reset +EXPORT_SYMBOL_GPL drivers/media/pci/mantis/mantis_core 0xbd60e50b mantis_get_mac +EXPORT_SYMBOL_GPL drivers/media/pci/mantis/mantis_core 0xcaecb114 mantis_uart_init +EXPORT_SYMBOL_GPL drivers/media/pci/mantis/mantis_core 0xee5de9bf mantis_i2c_exit +EXPORT_SYMBOL_GPL drivers/media/pci/mantis/mantis_core 0xf178b958 mantis_input_exit +EXPORT_SYMBOL_GPL drivers/media/pci/saa7134/saa7134 0x11b3f6cf saa7134_g_frequency +EXPORT_SYMBOL_GPL drivers/media/pci/saa7134/saa7134 0x1414fc52 saa7134_s_tuner +EXPORT_SYMBOL_GPL drivers/media/pci/saa7134/saa7134 0x215ea2e1 saa7134_stop_streaming +EXPORT_SYMBOL_GPL drivers/media/pci/saa7134/saa7134 0x2d4d3298 saa7134_g_input +EXPORT_SYMBOL_GPL drivers/media/pci/saa7134/saa7134 0x32b3fb19 saa7134_g_tuner +EXPORT_SYMBOL_GPL drivers/media/pci/saa7134/saa7134 0x4c31b81a saa7134_ts_buffer_prepare +EXPORT_SYMBOL_GPL drivers/media/pci/saa7134/saa7134 0x4f4510b5 saa7134_g_std +EXPORT_SYMBOL_GPL drivers/media/pci/saa7134/saa7134 0x5b91d7c8 saa7134_ts_queue_setup +EXPORT_SYMBOL_GPL drivers/media/pci/saa7134/saa7134 0x69f6da8d saa7134_ts_buffer_init +EXPORT_SYMBOL_GPL drivers/media/pci/saa7134/saa7134 0x6b1819cc saa7134_ts_start_streaming +EXPORT_SYMBOL_GPL drivers/media/pci/saa7134/saa7134 0x78826854 saa7134_s_input +EXPORT_SYMBOL_GPL drivers/media/pci/saa7134/saa7134 0x78ae2e8a saa7134_querycap +EXPORT_SYMBOL_GPL drivers/media/pci/saa7134/saa7134 0x79e8f487 saa7134_vb2_buffer_queue +EXPORT_SYMBOL_GPL drivers/media/pci/saa7134/saa7134 0x7aca3624 saa7134_enum_input +EXPORT_SYMBOL_GPL drivers/media/pci/saa7134/saa7134 0x845881b3 saa7134_s_std +EXPORT_SYMBOL_GPL drivers/media/pci/saa7134/saa7134 0x8ddd0c34 saa7134_ts_stop_streaming +EXPORT_SYMBOL_GPL drivers/media/pci/saa7134/saa7134 0xc3ec5ed0 saa7134_s_frequency +EXPORT_SYMBOL_GPL drivers/media/pci/saa7134/saa7134 0xf604d659 saa7134_querystd +EXPORT_SYMBOL_GPL drivers/media/pci/saa7134/saa7134 0xff2405bb saa7134_ts_qops +EXPORT_SYMBOL_GPL drivers/media/pci/ttpci/budget-core 0x2a7d6b7e ttpci_budget_set_video_port +EXPORT_SYMBOL_GPL drivers/media/pci/ttpci/budget-core 0x2d17af24 ttpci_budget_debiwrite +EXPORT_SYMBOL_GPL drivers/media/pci/ttpci/budget-core 0x6805f3a0 ttpci_budget_init_hooks +EXPORT_SYMBOL_GPL drivers/media/pci/ttpci/budget-core 0x7948c222 budget_debug +EXPORT_SYMBOL_GPL drivers/media/pci/ttpci/budget-core 0x7df765a2 ttpci_budget_init +EXPORT_SYMBOL_GPL drivers/media/pci/ttpci/budget-core 0xc6c852a4 ttpci_budget_deinit +EXPORT_SYMBOL_GPL drivers/media/pci/ttpci/budget-core 0xdc580278 ttpci_budget_debiread +EXPORT_SYMBOL_GPL drivers/media/pci/ttpci/budget-core 0xeb1aac0d ttpci_budget_irq10_handler +EXPORT_SYMBOL_GPL drivers/media/platform/marvell-ccic/mcam-core 0x6ef96735 mccic_shutdown +EXPORT_SYMBOL_GPL drivers/media/platform/marvell-ccic/mcam-core 0x75816838 mccic_resume +EXPORT_SYMBOL_GPL drivers/media/platform/marvell-ccic/mcam-core 0xa9ce5fd7 mccic_register +EXPORT_SYMBOL_GPL drivers/media/platform/marvell-ccic/mcam-core 0xede985c5 mccic_suspend +EXPORT_SYMBOL_GPL drivers/media/platform/marvell-ccic/mcam-core 0xfbb2e91e mccic_irq +EXPORT_SYMBOL_GPL drivers/media/platform/xilinx/xilinx-video 0x3c7eb685 xvip_set_format_size +EXPORT_SYMBOL_GPL drivers/media/platform/xilinx/xilinx-video 0x447ff21d xvip_enum_mbus_code +EXPORT_SYMBOL_GPL drivers/media/platform/xilinx/xilinx-video 0x4d047ce4 xvip_cleanup_resources +EXPORT_SYMBOL_GPL drivers/media/platform/xilinx/xilinx-video 0x700d9bcb xvip_of_get_format +EXPORT_SYMBOL_GPL drivers/media/platform/xilinx/xilinx-video 0x712a3c8a xvip_enum_frame_size +EXPORT_SYMBOL_GPL drivers/media/platform/xilinx/xilinx-video 0xb67940fb xvip_get_format_by_fourcc +EXPORT_SYMBOL_GPL drivers/media/platform/xilinx/xilinx-video 0xb8df091e xvip_clr_or_set +EXPORT_SYMBOL_GPL drivers/media/platform/xilinx/xilinx-video 0xdd2a2ddf xvip_clr_and_set +EXPORT_SYMBOL_GPL drivers/media/platform/xilinx/xilinx-video 0xe08e6063 xvip_get_format_by_code +EXPORT_SYMBOL_GPL drivers/media/platform/xilinx/xilinx-video 0xf023f000 xvip_init_resources +EXPORT_SYMBOL_GPL drivers/media/platform/xilinx/xilinx-vtc 0x3c16a6b1 xvtc_generator_stop +EXPORT_SYMBOL_GPL drivers/media/platform/xilinx/xilinx-vtc 0x47d7900b xvtc_generator_start +EXPORT_SYMBOL_GPL drivers/media/platform/xilinx/xilinx-vtc 0x7ca4328f xvtc_of_get +EXPORT_SYMBOL_GPL drivers/media/platform/xilinx/xilinx-vtc 0xa8a0f912 xvtc_put +EXPORT_SYMBOL_GPL drivers/media/radio/shark2 0xb09dce23 radio_tea5777_exit +EXPORT_SYMBOL_GPL drivers/media/radio/shark2 0xc0998a3b radio_tea5777_init +EXPORT_SYMBOL_GPL drivers/media/radio/si470x/radio-si470x-common 0x1ca6f03e si470x_start +EXPORT_SYMBOL_GPL drivers/media/radio/si470x/radio-si470x-common 0x5942a790 si470x_viddev_template +EXPORT_SYMBOL_GPL drivers/media/radio/si470x/radio-si470x-common 0x7ada2f31 si470x_set_freq +EXPORT_SYMBOL_GPL drivers/media/radio/si470x/radio-si470x-common 0xd9255094 si470x_stop +EXPORT_SYMBOL_GPL drivers/media/radio/si470x/radio-si470x-common 0xfabea79b si470x_ctrl_ops +EXPORT_SYMBOL_GPL drivers/media/rc/rc-core 0x07b60152 rc_keydown_notimeout +EXPORT_SYMBOL_GPL drivers/media/rc/rc-core 0x1d834c2a ir_raw_event_set_idle +EXPORT_SYMBOL_GPL drivers/media/rc/rc-core 0x32a9250e devm_rc_allocate_device +EXPORT_SYMBOL_GPL drivers/media/rc/rc-core 0x43b7c644 ir_raw_event_store_with_timeout +EXPORT_SYMBOL_GPL drivers/media/rc/rc-core 0x5af4c77c rc_map_unregister +EXPORT_SYMBOL_GPL drivers/media/rc/rc-core 0x63db4c15 rc_free_device +EXPORT_SYMBOL_GPL drivers/media/rc/rc-core 0x7511fd44 ir_raw_event_store_with_filter +EXPORT_SYMBOL_GPL drivers/media/rc/rc-core 0x7abef9ab rc_map_register +EXPORT_SYMBOL_GPL drivers/media/rc/rc-core 0x7e45aa17 rc_register_device +EXPORT_SYMBOL_GPL drivers/media/rc/rc-core 0x8484060c rc_map_get +EXPORT_SYMBOL_GPL drivers/media/rc/rc-core 0x891dff1b rc_unregister_device +EXPORT_SYMBOL_GPL drivers/media/rc/rc-core 0x892f26fd devm_rc_register_device +EXPORT_SYMBOL_GPL drivers/media/rc/rc-core 0x9a3f9f86 rc_allocate_device +EXPORT_SYMBOL_GPL drivers/media/rc/rc-core 0xbf0b892c ir_raw_event_store +EXPORT_SYMBOL_GPL drivers/media/rc/rc-core 0xc053e2aa ir_raw_event_store_edge +EXPORT_SYMBOL_GPL drivers/media/rc/rc-core 0xc3b38028 rc_repeat +EXPORT_SYMBOL_GPL drivers/media/rc/rc-core 0xc789cbfb ir_lirc_scancode_event +EXPORT_SYMBOL_GPL drivers/media/rc/rc-core 0xc964b616 rc_keydown +EXPORT_SYMBOL_GPL drivers/media/rc/rc-core 0xd1f0c9e9 rc_keyup +EXPORT_SYMBOL_GPL drivers/media/rc/rc-core 0xd37a5e7c rc_g_keycode_from_table +EXPORT_SYMBOL_GPL drivers/media/rc/rc-core 0xe8f45851 ir_raw_event_handle +EXPORT_SYMBOL_GPL drivers/media/tuners/mt2063 0x08f47c05 mt2063_attach +EXPORT_SYMBOL_GPL drivers/media/tuners/mt20xx 0x406c4ab8 microtune_attach +EXPORT_SYMBOL_GPL drivers/media/tuners/mxl5007t 0xdfc05f49 mxl5007t_attach +EXPORT_SYMBOL_GPL drivers/media/tuners/r820t 0x9c897f16 r820t_attach +EXPORT_SYMBOL_GPL drivers/media/tuners/tda18271 0x8d69cd40 tda18271_attach +EXPORT_SYMBOL_GPL drivers/media/tuners/tda827x 0x801a3922 tda827x_attach +EXPORT_SYMBOL_GPL drivers/media/tuners/tda8290 0xcf06bf09 tda829x_probe +EXPORT_SYMBOL_GPL drivers/media/tuners/tda8290 0xdc289487 tda829x_attach +EXPORT_SYMBOL_GPL drivers/media/tuners/tda9887 0x6537c4a1 tda9887_attach +EXPORT_SYMBOL_GPL drivers/media/tuners/tea5761 0x82abaaf5 tea5761_autodetection +EXPORT_SYMBOL_GPL drivers/media/tuners/tea5761 0xc0d16644 tea5761_attach +EXPORT_SYMBOL_GPL drivers/media/tuners/tea5767 0x60e437eb tea5767_autodetection +EXPORT_SYMBOL_GPL drivers/media/tuners/tea5767 0x6a3e2094 tea5767_attach +EXPORT_SYMBOL_GPL drivers/media/tuners/tuner-simple 0x9c960e1a simple_tuner_attach +EXPORT_SYMBOL_GPL drivers/media/usb/cx231xx/cx231xx 0x017ea7c7 cx231xx_tuner_callback +EXPORT_SYMBOL_GPL drivers/media/usb/cx231xx/cx231xx 0x04d4d933 cx231xx_get_i2c_adap +EXPORT_SYMBOL_GPL drivers/media/usb/cx231xx/cx231xx 0x07ec68a3 cx231xx_uninit_vbi_isoc +EXPORT_SYMBOL_GPL drivers/media/usb/cx231xx/cx231xx 0x0e8a6c1e cx231xx_disable656 +EXPORT_SYMBOL_GPL drivers/media/usb/cx231xx/cx231xx 0x18ef8e0b is_fw_load +EXPORT_SYMBOL_GPL drivers/media/usb/cx231xx/cx231xx 0x1904aa88 cx231xx_send_usb_command +EXPORT_SYMBOL_GPL drivers/media/usb/cx231xx/cx231xx 0x3d1310ea cx231xx_set_mode +EXPORT_SYMBOL_GPL drivers/media/usb/cx231xx/cx231xx 0x3d4a01de cx231xx_init_vbi_isoc +EXPORT_SYMBOL_GPL drivers/media/usb/cx231xx/cx231xx 0x56940643 cx231xx_dev_init +EXPORT_SYMBOL_GPL drivers/media/usb/cx231xx/cx231xx 0x5fe12641 cx231xx_enable656 +EXPORT_SYMBOL_GPL drivers/media/usb/cx231xx/cx231xx 0x6b995c2a cx231xx_dev_uninit +EXPORT_SYMBOL_GPL drivers/media/usb/cx231xx/cx231xx 0x6e5bcd9a cx231xx_set_alt_setting +EXPORT_SYMBOL_GPL drivers/media/usb/cx231xx/cx231xx 0x738b1ea3 cx231xx_uninit_isoc +EXPORT_SYMBOL_GPL drivers/media/usb/cx231xx/cx231xx 0x7b2c9fc3 cx231xx_init_isoc +EXPORT_SYMBOL_GPL drivers/media/usb/cx231xx/cx231xx 0x822226fb cx231xx_demod_reset +EXPORT_SYMBOL_GPL drivers/media/usb/cx231xx/cx231xx 0x8a0f6d70 cx231xx_capture_start +EXPORT_SYMBOL_GPL drivers/media/usb/cx231xx/cx231xx 0x969c7822 cx231xx_send_gpio_cmd +EXPORT_SYMBOL_GPL drivers/media/usb/cx231xx/cx231xx 0x97b172a9 cx231xx_enable_i2c_port_3 +EXPORT_SYMBOL_GPL drivers/media/usb/cx231xx/cx231xx 0x9a1908a1 cx231xx_unmute_audio +EXPORT_SYMBOL_GPL drivers/media/usb/cx231xx/cx231xx 0x9e5f1481 cx231xx_uninit_bulk +EXPORT_SYMBOL_GPL drivers/media/usb/cx231xx/cx231xx 0xd745a49d cx231xx_init_bulk +EXPORT_SYMBOL_GPL drivers/media/usb/dvb-usb-v2/mxl111sf-demod 0x1f0e9691 mxl111sf_demod_attach +EXPORT_SYMBOL_GPL drivers/media/usb/dvb-usb-v2/mxl111sf-tuner 0xf93a6233 mxl111sf_tuner_attach +EXPORT_SYMBOL_GPL drivers/media/usb/em28xx/em28xx 0x04b6eeed em28xx_setup_xc3028 +EXPORT_SYMBOL_GPL drivers/media/usb/em28xx/em28xx 0x090760d0 em28xx_write_reg_bits +EXPORT_SYMBOL_GPL drivers/media/usb/em28xx/em28xx 0x0c450475 em28xx_set_mode +EXPORT_SYMBOL_GPL drivers/media/usb/em28xx/em28xx 0x11cb24b0 em28xx_uninit_usb_xfer +EXPORT_SYMBOL_GPL drivers/media/usb/em28xx/em28xx 0x2531edfd em28xx_toggle_reg_bits +EXPORT_SYMBOL_GPL drivers/media/usb/em28xx/em28xx 0x3b2b69d9 em28xx_init_camera +EXPORT_SYMBOL_GPL drivers/media/usb/em28xx/em28xx 0x4fb9e4ba em28xx_gpio_set +EXPORT_SYMBOL_GPL drivers/media/usb/em28xx/em28xx 0x5d3b4262 em28xx_write_reg +EXPORT_SYMBOL_GPL drivers/media/usb/em28xx/em28xx 0x721f7cc7 em28xx_free_device +EXPORT_SYMBOL_GPL drivers/media/usb/em28xx/em28xx 0x75fcac54 em28xx_audio_setup +EXPORT_SYMBOL_GPL drivers/media/usb/em28xx/em28xx 0x7981ff84 em28xx_find_led +EXPORT_SYMBOL_GPL drivers/media/usb/em28xx/em28xx 0x7fc8652c em28xx_tuner_callback +EXPORT_SYMBOL_GPL drivers/media/usb/em28xx/em28xx 0x8e5b5bf3 em28xx_read_ac97 +EXPORT_SYMBOL_GPL drivers/media/usb/em28xx/em28xx 0x90eb670b em28xx_write_ac97 +EXPORT_SYMBOL_GPL drivers/media/usb/em28xx/em28xx 0x921d7c65 em28xx_boards +EXPORT_SYMBOL_GPL drivers/media/usb/em28xx/em28xx 0x95087e69 em28xx_read_reg +EXPORT_SYMBOL_GPL drivers/media/usb/em28xx/em28xx 0xb4a905c3 em28xx_init_usb_xfer +EXPORT_SYMBOL_GPL drivers/media/usb/em28xx/em28xx 0xc73838f2 em28xx_stop_urbs +EXPORT_SYMBOL_GPL drivers/media/usb/em28xx/em28xx 0xcc91e1cb em28xx_alloc_urbs +EXPORT_SYMBOL_GPL drivers/media/usb/em28xx/em28xx 0xd77fa2b4 em28xx_write_regs +EXPORT_SYMBOL_GPL drivers/media/usb/em28xx/em28xx 0xe04522a4 em28xx_audio_analog_set +EXPORT_SYMBOL_GPL drivers/media/usb/tm6000/tm6000 0x07af9077 tm6000_set_reg_mask +EXPORT_SYMBOL_GPL drivers/media/usb/tm6000/tm6000 0x1285e2c6 tm6000_set_audio_bitrate +EXPORT_SYMBOL_GPL drivers/media/usb/tm6000/tm6000 0x2309a6d6 tm6000_xc5000_callback +EXPORT_SYMBOL_GPL drivers/media/usb/tm6000/tm6000 0x32f70590 tm6000_get_reg +EXPORT_SYMBOL_GPL drivers/media/usb/tm6000/tm6000 0x6327fd3c tm6000_set_reg +EXPORT_SYMBOL_GPL drivers/media/usb/tm6000/tm6000 0x89b611dd tm6000_debug +EXPORT_SYMBOL_GPL drivers/media/usb/tm6000/tm6000 0xdff8e89d tm6000_tuner_callback +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 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 0xef15cc44 v4l2_hdmi_rx_colorimetry +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 0x3589426f v4l2_flash_init +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-flash-led-class 0xc0f2f493 v4l2_flash_indicator_init +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-flash-led-class 0xc32bd0cc v4l2_flash_release +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-fwnode 0x04fc4f9e v4l2_fwnode_connector_parse +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-fwnode 0x26955e1f v4l2_fwnode_connector_add_link +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-fwnode 0x29f7f46b v4l2_fwnode_device_parse +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-fwnode 0x2a18f4fa v4l2_fwnode_parse_link +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-fwnode 0x3b57b75a v4l2_fwnode_put_link +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-fwnode 0x3f7aa15e v4l2_fwnode_endpoint_free +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-fwnode 0x44bd0b36 v4l2_fwnode_endpoint_alloc_parse +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-fwnode 0x612ddce5 v4l2_fwnode_connector_free +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-fwnode 0x6343c0b3 v4l2_async_register_subdev_sensor_common +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-fwnode 0x637524e3 v4l2_async_notifier_parse_fwnode_endpoints_by_port +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-fwnode 0x9f867f1c v4l2_async_notifier_parse_fwnode_sensor_common +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-fwnode 0xaa923a8e v4l2_async_notifier_parse_fwnode_endpoints +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-fwnode 0xb44bf221 v4l2_fwnode_endpoint_parse +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0x2978dafb v4l2_m2m_next_buf +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0x2b52e588 v4l2_m2m_ioctl_prepare_buf +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0x2c0ba828 v4l2_m2m_register_media_controller +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0x3c8d0779 v4l2_m2m_decoder_cmd +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0x3e24cac2 v4l2_m2m_request_queue +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0x3eca57d6 v4l2_m2m_querybuf +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0x40352356 v4l2_m2m_ioctl_decoder_cmd +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0x5842fabe v4l2_m2m_streamoff +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0x59f0af88 v4l2_m2m_ioctl_qbuf +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0x692274a9 v4l2_m2m_buf_copy_metadata +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0x6948a6dd v4l2_m2m_buf_remove_by_buf +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0x726a9824 v4l2_m2m_buf_queue +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0x730f2eae v4l2_m2m_init +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0x741aff9a v4l2_m2m_ioctl_try_decoder_cmd +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0x78c7bf31 v4l2_m2m_fop_mmap +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0x796df4a3 v4l2_m2m_ioctl_reqbufs +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0x79986dc6 v4l2_m2m_create_bufs +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0x805423a4 v4l2_m2m_buf_remove_by_idx +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0x854f93b8 v4l2_m2m_last_buf +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0x859d8a66 v4l2_m2m_last_buffer_done +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0x867b7673 v4l2_m2m_streamon +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0x86fed799 v4l2_m2m_update_start_streaming_state +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0x8994d7b0 v4l2_m2m_expbuf +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0x8ae4a199 v4l2_m2m_ioctl_querybuf +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0x93fd375f v4l2_m2m_dqbuf +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0x9b5de0ad v4l2_m2m_try_schedule +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0x9d2d608d v4l2_m2m_poll +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0xa95fc996 v4l2_m2m_ioctl_stateless_try_decoder_cmd +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0xae976918 v4l2_m2m_ioctl_stateless_decoder_cmd +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0xb2162579 v4l2_m2m_qbuf +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0xb3917229 v4l2_m2m_prepare_buf +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0xb717f4d4 v4l2_m2m_ctx_release +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0xb89dcf5f v4l2_m2m_update_stop_streaming_state +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0xc6fca5ad v4l2_m2m_release +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0xc9b3dd7d v4l2_m2m_ioctl_try_encoder_cmd +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0xcaa3a940 v4l2_m2m_ioctl_dqbuf +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0xd4173d65 v4l2_m2m_ioctl_streamoff +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0xdb9fb820 v4l2_m2m_ioctl_streamon +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0xdfae4822 v4l2_m2m_buf_remove +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0xe01bbbf6 v4l2_m2m_ioctl_encoder_cmd +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0xe95fe7b9 v4l2_m2m_ctx_init +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0xebacbaa1 v4l2_m2m_fop_poll +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0xf13ff84d v4l2_m2m_unregister_media_controller +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0xf74944ba v4l2_m2m_ioctl_create_bufs +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0xf90f1175 v4l2_m2m_ioctl_expbuf +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0xfa50b58b v4l2_m2m_reqbufs +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0xfce3207e v4l2_m2m_encoder_cmd +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0x03042fbe videobuf_iolock +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0x0d48ada0 videobuf_next_field +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0x11682a47 videobuf_read_one +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0x1d5d9263 videobuf_streamoff +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0x2af41ee0 videobuf_read_stop +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0x2d72c8d1 videobuf_streamon +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0x3e566a2a videobuf_mmap_setup +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0x4380e30c videobuf_mmap_mapper +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0x634ef305 videobuf_querybuf +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0x6d035dde videobuf_queue_core_init +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0x75d1edfd videobuf_alloc_vb +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0x7bd80a2a videobuf_dqbuf +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0x7de9547a videobuf_mmap_free +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0x82ece47d videobuf_queue_to_vaddr +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0x83edc462 videobuf_stop +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0x8aa59a26 videobuf_qbuf +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0x8b1c876c videobuf_read_start +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0xa4035e01 videobuf_reqbufs +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0xb2224830 __videobuf_mmap_setup +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0xc72629c7 videobuf_waiton +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0xe4d80483 videobuf_queue_is_busy +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0xe7eb1568 videobuf_read_stream +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0xebeee695 videobuf_poll_stream +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0xf698a822 videobuf_queue_cancel +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-dma-sg 0x4dbcfdd4 videobuf_dma_unmap +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-dma-sg 0x4f24008e videobuf_dma_free +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-dma-sg 0x5068a532 videobuf_queue_sg_init +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-dma-sg 0x553a86d0 videobuf_sg_alloc +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-dma-sg 0x73328207 videobuf_to_dma +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-vmalloc 0x765d61dd videobuf_queue_vmalloc_init +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-vmalloc 0x8bd34788 videobuf_vmalloc_free +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-vmalloc 0x8c837c9d videobuf_to_vmalloc +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x012c7666 v4l2_event_unsubscribe_all +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x0376d903 v4l2_subdev_link_validate_default +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x0b6ccf4c v4l2_s_parm_cap +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x0c5b6310 v4l2_i2c_subdev_set_name +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x0f9dd37d v4l2_ctrl_request_hdl_find +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x1a586e77 v4l_vb2q_enable_media_source +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x1c0a3114 v4l2_event_dequeue +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x264917fe __tracepoint_vb2_v4l2_buf_queue +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x270dccc6 v4l2_subdev_get_fwnode_pad_1_to_1 +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x34b37062 v4l2_async_notifier_add_fwnode_remote_subdev +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x48c8c590 __tracepoint_vb2_v4l2_buf_done +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x4fd67de1 v4l2_device_unregister +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x50d65b11 v4l2_subdev_free_pad_config +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x52a11d12 v4l2_create_fwnode_links +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x56247d68 v4l2_spi_subdev_init +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x59730c1f v4l2_src_change_event_subdev_subscribe +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x5c4eab5d __v4l2_device_register_subdev_nodes +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x5c8bf6ae v4l2_fh_add +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x651cd402 v4l2_event_subscribe +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x6b536ad6 v4l2_pipeline_pm_get +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x6e0401b5 v4l2_fh_del +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x6e9acc41 v4l2_fill_pixfmt_mp +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x6fe5ec93 v4l2_g_parm_cap +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x707c1708 v4l2_event_pending +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x71073cb7 v4l2_i2c_subdev_addr +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x798230fb v4l2_fh_init +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x7bf8ec37 v4l2_fh_release +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x86673e8d v4l2_event_unsubscribe +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x89412e8e v4l2_subdev_link_validate +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x8fe96d7b v4l2_fh_exit +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x900c1644 __tracepoint_vb2_v4l2_qbuf +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x94ff2c1e v4l2_pipeline_link_notify +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x9880fa44 v4l2_fh_is_singular +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x999ba22c __tracepoint_vb2_v4l2_dqbuf +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x9e666d7e v4l2_device_register +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x9fef35ac v4l2_apply_frmsize_constraints +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0xa9328aa3 v4l_disable_media_source +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0xaf3263b9 v4l2_spi_new_subdev +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0xb3e35bea v4l2_subdev_notify_event +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0xbb2f2ac5 v4l2_ctrl_request_hdl_ctrl_find +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0xbcc63ee8 v4l2_event_subdev_unsubscribe +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0xbeb79a40 v4l2_i2c_new_subdev_board +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0xc803cfd0 v4l2_device_set_name +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0xcb521f73 v4l2_async_notifier_cleanup +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0xcc501597 v4l2_fill_pixfmt +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0xcc5d61f0 v4l2_async_notifier_add_i2c_subdev +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0xcf5f708f v4l2_device_put +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0xcfa5fc3e v4l2_fh_open +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0xd33ccb46 v4l2_create_fwnode_links_to_pad +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0xd3edaf97 __v4l2_ctrl_handler_setup +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0xd4ca631f v4l2_subdev_alloc_pad_config +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0xd5b68f69 v4l2_device_disconnect +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0xd7132199 v4l2_device_register_subdev +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0xd7cbd2ce v4l2_pipeline_pm_put +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0xe01e1f6b v4l2_async_notifier_add_fwnode_subdev +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0xe2822320 __v4l2_find_nearest_size +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0xe7a581b2 v4l2_device_unregister_subdev +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0xe7dcad27 v4l2_i2c_new_subdev +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0xef93da7c v4l2_compat_ioctl32 +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0xf097ca10 v4l2_i2c_subdev_init +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0xf114d8f4 v4l2_event_queue +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0xf184389d v4l2_async_notifier_add_subdev +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0xf2a353ac v4l2_i2c_tuner_addrs +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0xf39685d4 v4l2_event_queue_fh +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0xf56b4dc0 v4l2_async_notifier_add_devname_subdev +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0xf5ef842e v4l_bound_align_image +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0xf5fbd75f v4l2_src_change_event_subscribe +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0xfac7fb5c v4l_enable_media_source +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0xfbebac31 v4l2_mc_create_media_graph +EXPORT_SYMBOL_GPL drivers/mfd/88pm80x 0x082ba68a pm80x_pm_ops +EXPORT_SYMBOL_GPL drivers/mfd/88pm80x 0x7af1623f pm80x_init +EXPORT_SYMBOL_GPL drivers/mfd/88pm80x 0xd99fd720 pm80x_deinit +EXPORT_SYMBOL_GPL drivers/mfd/88pm80x 0xf49e628e pm80x_regmap_config +EXPORT_SYMBOL_GPL drivers/mfd/da9150-core 0x0bcc7391 da9150_reg_write +EXPORT_SYMBOL_GPL drivers/mfd/da9150-core 0x22f2b357 da9150_reg_read +EXPORT_SYMBOL_GPL drivers/mfd/da9150-core 0x34149c72 da9150_bulk_read +EXPORT_SYMBOL_GPL drivers/mfd/da9150-core 0x39d18b6e da9150_write_qif +EXPORT_SYMBOL_GPL drivers/mfd/da9150-core 0x6d0d5c8a da9150_read_qif +EXPORT_SYMBOL_GPL drivers/mfd/da9150-core 0xa9fb0deb da9150_set_bits +EXPORT_SYMBOL_GPL drivers/mfd/da9150-core 0xab0348d8 da9150_bulk_write +EXPORT_SYMBOL_GPL drivers/mfd/gateworks-gsc 0xa142a524 gsc_read +EXPORT_SYMBOL_GPL drivers/mfd/gateworks-gsc 0xb7abd1c4 gsc_write +EXPORT_SYMBOL_GPL drivers/mfd/iqs62x 0x22a28670 iqs62x_events +EXPORT_SYMBOL_GPL drivers/mfd/kempld-core 0x046cf1d6 kempld_write16 +EXPORT_SYMBOL_GPL drivers/mfd/kempld-core 0x33c6449f kempld_write8 +EXPORT_SYMBOL_GPL drivers/mfd/kempld-core 0x4ef3d470 kempld_read16 +EXPORT_SYMBOL_GPL drivers/mfd/kempld-core 0x567358ca kempld_read32 +EXPORT_SYMBOL_GPL drivers/mfd/kempld-core 0x5e49a659 kempld_write32 +EXPORT_SYMBOL_GPL drivers/mfd/kempld-core 0xac64415a kempld_read8 +EXPORT_SYMBOL_GPL drivers/mfd/kempld-core 0xd48adccf kempld_release_mutex +EXPORT_SYMBOL_GPL drivers/mfd/kempld-core 0xdc1b07d3 kempld_get_mutex +EXPORT_SYMBOL_GPL drivers/mfd/lm3533-core 0xcfd86d4c lm3533_read +EXPORT_SYMBOL_GPL drivers/mfd/lm3533-core 0xd8c9c527 lm3533_write +EXPORT_SYMBOL_GPL drivers/mfd/lm3533-core 0xfa585827 lm3533_update +EXPORT_SYMBOL_GPL drivers/mfd/lm3533-ctrlbank 0x1666b6d8 lm3533_ctrlbank_set_brightness +EXPORT_SYMBOL_GPL drivers/mfd/lm3533-ctrlbank 0x43762942 lm3533_ctrlbank_get_pwm +EXPORT_SYMBOL_GPL drivers/mfd/lm3533-ctrlbank 0x6952e488 lm3533_ctrlbank_set_max_current +EXPORT_SYMBOL_GPL drivers/mfd/lm3533-ctrlbank 0x8ae1f2d3 lm3533_ctrlbank_set_pwm +EXPORT_SYMBOL_GPL drivers/mfd/lm3533-ctrlbank 0xb4883b59 lm3533_ctrlbank_enable +EXPORT_SYMBOL_GPL drivers/mfd/lm3533-ctrlbank 0xbae882d2 lm3533_ctrlbank_disable +EXPORT_SYMBOL_GPL drivers/mfd/lm3533-ctrlbank 0xf4389041 lm3533_ctrlbank_get_brightness +EXPORT_SYMBOL_GPL drivers/mfd/lp3943 0x1299cf29 lp3943_read_byte +EXPORT_SYMBOL_GPL drivers/mfd/lp3943 0x4e2e0481 lp3943_update_bits +EXPORT_SYMBOL_GPL drivers/mfd/lp3943 0x6b969ece lp3943_write_byte +EXPORT_SYMBOL_GPL drivers/mfd/madera 0x0bfead91 madera_dev_init +EXPORT_SYMBOL_GPL drivers/mfd/madera 0x0f379262 madera_of_match +EXPORT_SYMBOL_GPL drivers/mfd/madera 0x1b144a10 cs47l15_32bit_i2c_regmap +EXPORT_SYMBOL_GPL drivers/mfd/madera 0x1b199650 cs47l15_16bit_i2c_regmap +EXPORT_SYMBOL_GPL drivers/mfd/madera 0x2dd6e134 cs47l85_patch +EXPORT_SYMBOL_GPL drivers/mfd/madera 0x3062198a madera_dev_exit +EXPORT_SYMBOL_GPL drivers/mfd/madera 0x4ec21be7 cs47l35_patch +EXPORT_SYMBOL_GPL drivers/mfd/madera 0x5821571c cs47l15_16bit_spi_regmap +EXPORT_SYMBOL_GPL drivers/mfd/madera 0x582c8b5c cs47l15_32bit_spi_regmap +EXPORT_SYMBOL_GPL drivers/mfd/madera 0x5e4a5ebe madera_pm_ops +EXPORT_SYMBOL_GPL drivers/mfd/madera 0x8fc40ae5 cs47l92_16bit_spi_regmap +EXPORT_SYMBOL_GPL drivers/mfd/madera 0x8fc9d6a5 cs47l92_32bit_spi_regmap +EXPORT_SYMBOL_GPL drivers/mfd/madera 0x92e2fdd0 cs47l35_32bit_spi_regmap +EXPORT_SYMBOL_GPL drivers/mfd/madera 0x92ef2190 cs47l35_16bit_spi_regmap +EXPORT_SYMBOL_GPL drivers/mfd/madera 0x96a871a9 cs47l15_patch +EXPORT_SYMBOL_GPL drivers/mfd/madera 0xa09066a8 cs47l85_32bit_spi_regmap +EXPORT_SYMBOL_GPL drivers/mfd/madera 0xa09dbae8 cs47l85_16bit_spi_regmap +EXPORT_SYMBOL_GPL drivers/mfd/madera 0xb8451118 cs47l90_32bit_i2c_regmap +EXPORT_SYMBOL_GPL drivers/mfd/madera 0xb848cd58 cs47l90_16bit_i2c_regmap +EXPORT_SYMBOL_GPL drivers/mfd/madera 0xbcc03717 cs47l90_patch +EXPORT_SYMBOL_GPL drivers/mfd/madera 0xccf117e9 cs47l92_32bit_i2c_regmap +EXPORT_SYMBOL_GPL drivers/mfd/madera 0xccfccba9 cs47l92_16bit_i2c_regmap +EXPORT_SYMBOL_GPL drivers/mfd/madera 0xd1d7e0dc cs47l35_16bit_i2c_regmap +EXPORT_SYMBOL_GPL drivers/mfd/madera 0xd1da3c9c cs47l35_32bit_i2c_regmap +EXPORT_SYMBOL_GPL drivers/mfd/madera 0xdb81a3bf cs47l92_patch +EXPORT_SYMBOL_GPL drivers/mfd/madera 0xe3a57ba4 cs47l85_16bit_i2c_regmap +EXPORT_SYMBOL_GPL drivers/mfd/madera 0xe3a8a7e4 cs47l85_32bit_i2c_regmap +EXPORT_SYMBOL_GPL drivers/mfd/madera 0xebe384cb madera_name_from_type +EXPORT_SYMBOL_GPL drivers/mfd/madera 0xfb700c14 cs47l90_16bit_spi_regmap +EXPORT_SYMBOL_GPL drivers/mfd/madera 0xfb7dd054 cs47l90_32bit_spi_regmap +EXPORT_SYMBOL_GPL drivers/mfd/mc13xxx-core 0x3efb819a mc13xxx_common_exit +EXPORT_SYMBOL_GPL drivers/mfd/mc13xxx-core 0x4429ae7e mc13xxx_adc_do_conversion +EXPORT_SYMBOL_GPL drivers/mfd/mc13xxx-core 0x71894fb9 mc13xxx_common_init +EXPORT_SYMBOL_GPL drivers/mfd/mc13xxx-core 0x84dc0219 mc13xxx_variant_mc13783 +EXPORT_SYMBOL_GPL drivers/mfd/mc13xxx-core 0x96d3f771 mc13xxx_variant_mc34708 +EXPORT_SYMBOL_GPL drivers/mfd/mc13xxx-core 0xc4664939 mc13xxx_variant_mc13892 +EXPORT_SYMBOL_GPL drivers/mfd/motorola-cpcap 0xa226dbe8 cpcap_sense_virq +EXPORT_SYMBOL_GPL drivers/mfd/pcf50633 0x2bcfe225 pcf50633_free_irq +EXPORT_SYMBOL_GPL drivers/mfd/pcf50633 0x4807a68f pcf50633_reg_clear_bits +EXPORT_SYMBOL_GPL drivers/mfd/pcf50633 0x93718ea3 pcf50633_register_irq +EXPORT_SYMBOL_GPL drivers/mfd/pcf50633 0x93826404 pcf50633_read_block +EXPORT_SYMBOL_GPL drivers/mfd/pcf50633 0xad0e0e4c pcf50633_reg_read +EXPORT_SYMBOL_GPL drivers/mfd/pcf50633 0xaf2d98dc pcf50633_irq_mask +EXPORT_SYMBOL_GPL drivers/mfd/pcf50633 0xafb4a671 pcf50633_reg_set_bit_mask +EXPORT_SYMBOL_GPL drivers/mfd/pcf50633 0xb4e0a27e pcf50633_write_block +EXPORT_SYMBOL_GPL drivers/mfd/pcf50633 0xdac44487 pcf50633_irq_mask_get +EXPORT_SYMBOL_GPL drivers/mfd/pcf50633 0xe01ffa8d pcf50633_irq_unmask +EXPORT_SYMBOL_GPL drivers/mfd/pcf50633 0xec9fa7c8 pcf50633_reg_write +EXPORT_SYMBOL_GPL drivers/mfd/pcf50633-adc 0x0c1b7fe6 pcf50633_adc_sync_read +EXPORT_SYMBOL_GPL drivers/mfd/pcf50633-adc 0xaeb043c8 pcf50633_adc_async_read +EXPORT_SYMBOL_GPL drivers/mfd/pcf50633-gpio 0x14fd3442 pcf50633_gpio_invert_set +EXPORT_SYMBOL_GPL drivers/mfd/pcf50633-gpio 0xb4730535 pcf50633_gpio_get +EXPORT_SYMBOL_GPL drivers/mfd/pcf50633-gpio 0xcda04b43 pcf50633_gpio_set +EXPORT_SYMBOL_GPL drivers/mfd/pcf50633-gpio 0xdf0236b2 pcf50633_gpio_invert_get +EXPORT_SYMBOL_GPL drivers/mfd/pcf50633-gpio 0xeea3d5c0 pcf50633_gpio_power_supply_set +EXPORT_SYMBOL_GPL drivers/mfd/rave-sp 0x186d863e devm_rave_sp_register_event_notifier +EXPORT_SYMBOL_GPL drivers/mfd/rave-sp 0x43e53ef9 rave_sp_exec +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 0x0122568c si476x_core_is_a_secondary_tuner +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0x053e5d55 si476x_core_is_in_am_receiver_mode +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0x06d9b611 si476x_core_cmd_fm_rds_blockcount +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0x071680a1 si476x_core_cmd_am_rsq_status +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0x09c3524c si476x_core_cmd_fm_tune_freq +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0x0a04496c si476x_core_is_powered_up +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0x0a07a615 si476x_core_cmd_am_tune_freq +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0x0b2fb051 si476x_core_start +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0x113e205b si476x_core_cmd_power_down +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0x19615bee si476x_core_cmd_fm_rsq_status +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0x1cb6cc20 si476x_core_cmd_dig_audio_pin_cfg +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0x2345ce14 si476x_core_cmd_fm_acf_status +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0x3ca975cd si476x_core_cmd_ic_link_gpo_ctl_pin_cfg +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0x498d0ead si476x_core_cmd_am_seek_start +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0x4c74fb37 si476x_core_cmd_agc_status +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0x4e34b7fe si476x_core_cmd_func_info +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0x559f5f5e si476x_core_cmd_intb_pin_cfg +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0x625f75fc si476x_core_cmd_power_up +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0x6e963f98 si476x_core_i2c_xfer +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0x70038080 si476x_core_set_power_state +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0x7454a7e0 si476x_core_cmd_set_property +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0x765663b4 si476x_core_cmd_fm_phase_div_status +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0x861c8e41 si476x_core_cmd_am_acf_status +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0x89c1b2cc si476x_core_is_a_primary_tuner +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0x8eeb5fa6 si476x_core_cmd_zif_pin_cfg +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0x9ada25ba si476x_core_stop +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0xa6d38872 si476x_core_cmd_fm_rds_status +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0xc73f4e40 si476x_core_has_am +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0xcc2529e1 devm_regmap_init_si476x +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0xd11550d5 si476x_core_has_diversity +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0xd42695a3 si476x_core_cmd_get_property +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0xd5df0cf7 si476x_core_cmd_fm_phase_diversity +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0xdb81d3b6 si476x_core_cmd_ana_audio_pin_cfg +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0xfce06bde si476x_core_cmd_fm_seek_start +EXPORT_SYMBOL_GPL drivers/mfd/sm501 0x1e81f537 sm501_set_clock +EXPORT_SYMBOL_GPL drivers/mfd/sm501 0x1e8a295b sm501_find_clock +EXPORT_SYMBOL_GPL drivers/mfd/sm501 0x2b3a0fa7 sm501_unit_power +EXPORT_SYMBOL_GPL drivers/mfd/sm501 0x4b989956 sm501_misc_control +EXPORT_SYMBOL_GPL drivers/mfd/sm501 0x5330290e sm501_modify_reg +EXPORT_SYMBOL_GPL drivers/mfd/stmfx 0x225bf512 stmfx_function_enable +EXPORT_SYMBOL_GPL drivers/mfd/stmfx 0xe8b3b776 stmfx_function_disable +EXPORT_SYMBOL_GPL drivers/mfd/ti_am335x_tscadc 0x03d443ca am335x_tsc_se_set_cache +EXPORT_SYMBOL_GPL drivers/mfd/ti_am335x_tscadc 0x2d57b584 am335x_tsc_se_set_once +EXPORT_SYMBOL_GPL drivers/mfd/ti_am335x_tscadc 0x4349412c am335x_tsc_se_adc_done +EXPORT_SYMBOL_GPL drivers/mfd/ti_am335x_tscadc 0xa1ee9d28 am335x_tsc_se_clr +EXPORT_SYMBOL_GPL drivers/mfd/tps65218 0x1beb88a3 tps65218_reg_write +EXPORT_SYMBOL_GPL drivers/mfd/tps65218 0xa58ff482 tps65218_clear_bits +EXPORT_SYMBOL_GPL drivers/mfd/tps65218 0xad6b658c tps65218_set_bits +EXPORT_SYMBOL_GPL drivers/mfd/ucb1400_core 0xb49e2afd ucb1400_adc_read +EXPORT_SYMBOL_GPL drivers/misc/cardreader/alcor_pci 0x288fdc03 alcor_write32 +EXPORT_SYMBOL_GPL drivers/misc/cardreader/alcor_pci 0x2c9f7394 alcor_write16 +EXPORT_SYMBOL_GPL drivers/misc/cardreader/alcor_pci 0x6eb36eb6 alcor_write8 +EXPORT_SYMBOL_GPL drivers/misc/cardreader/alcor_pci 0x95cdab89 alcor_write32be +EXPORT_SYMBOL_GPL drivers/misc/cardreader/alcor_pci 0xbfc379e9 alcor_read32 +EXPORT_SYMBOL_GPL drivers/misc/cardreader/alcor_pci 0xddfd2140 alcor_read8 +EXPORT_SYMBOL_GPL drivers/misc/cardreader/alcor_pci 0xfc91607a alcor_read32be +EXPORT_SYMBOL_GPL drivers/misc/cardreader/rtsx_pci 0x151fc4aa rtsx_pci_switch_output_voltage +EXPORT_SYMBOL_GPL drivers/misc/cardreader/rtsx_pci 0x46dbe195 rtsx_pci_transfer_data +EXPORT_SYMBOL_GPL drivers/misc/cardreader/rtsx_pci 0x4a379667 rtsx_pci_write_phy_register +EXPORT_SYMBOL_GPL drivers/misc/cardreader/rtsx_pci 0x4ad5b229 rtsx_pci_start_run +EXPORT_SYMBOL_GPL drivers/misc/cardreader/rtsx_pci 0x4b241f11 rtsx_pci_dma_transfer +EXPORT_SYMBOL_GPL drivers/misc/cardreader/rtsx_pci 0x501f5224 rtsx_pci_write_register +EXPORT_SYMBOL_GPL drivers/misc/cardreader/rtsx_pci 0x5173604f rtsx_pci_read_ppbuf +EXPORT_SYMBOL_GPL drivers/misc/cardreader/rtsx_pci 0x58c9ba09 rtsx_pci_read_phy_register +EXPORT_SYMBOL_GPL drivers/misc/cardreader/rtsx_pci 0x5be4cec6 rtsx_pci_card_power_off +EXPORT_SYMBOL_GPL drivers/misc/cardreader/rtsx_pci 0x603fbcdf rtsx_pci_send_cmd_no_wait +EXPORT_SYMBOL_GPL drivers/misc/cardreader/rtsx_pci 0x62282e8b rtsx_pci_stop_cmd +EXPORT_SYMBOL_GPL drivers/misc/cardreader/rtsx_pci 0x6d342c3f rtsx_pci_card_pull_ctl_disable +EXPORT_SYMBOL_GPL drivers/misc/cardreader/rtsx_pci 0x7bebf03f rtsx_pci_read_register +EXPORT_SYMBOL_GPL drivers/misc/cardreader/rtsx_pci 0x7e9686bb rtsx_pci_card_pull_ctl_enable +EXPORT_SYMBOL_GPL drivers/misc/cardreader/rtsx_pci 0x840756a0 rtsx_pci_switch_clock +EXPORT_SYMBOL_GPL drivers/misc/cardreader/rtsx_pci 0x84b8efb2 rtsx_pci_send_cmd +EXPORT_SYMBOL_GPL drivers/misc/cardreader/rtsx_pci 0x983ce4f7 rtsx_pci_write_ppbuf +EXPORT_SYMBOL_GPL drivers/misc/cardreader/rtsx_pci 0x9f58836a rtsx_pci_card_power_on +EXPORT_SYMBOL_GPL drivers/misc/cardreader/rtsx_pci 0xb205e256 rtsx_pci_card_exclusive_check +EXPORT_SYMBOL_GPL drivers/misc/cardreader/rtsx_pci 0xc5f6423e rtsx_pci_dma_unmap_sg +EXPORT_SYMBOL_GPL drivers/misc/cardreader/rtsx_pci 0xd6e59c42 rtsx_pci_dma_map_sg +EXPORT_SYMBOL_GPL drivers/misc/cardreader/rtsx_pci 0xdbf229f2 rtsx_pci_add_cmd +EXPORT_SYMBOL_GPL drivers/misc/cardreader/rtsx_pci 0xe8b560fa rtsx_pci_complete_unfinished_transfer +EXPORT_SYMBOL_GPL drivers/misc/cardreader/rtsx_pci 0xfd73a38e rtsx_pci_card_exist +EXPORT_SYMBOL_GPL drivers/misc/cardreader/rtsx_usb 0x0f4897e6 rtsx_usb_get_rsp +EXPORT_SYMBOL_GPL drivers/misc/cardreader/rtsx_usb 0x114c2066 rtsx_usb_write_register +EXPORT_SYMBOL_GPL drivers/misc/cardreader/rtsx_usb 0x1eb0edc5 rtsx_usb_write_ppbuf +EXPORT_SYMBOL_GPL drivers/misc/cardreader/rtsx_usb 0x3ecdc26d rtsx_usb_send_cmd +EXPORT_SYMBOL_GPL drivers/misc/cardreader/rtsx_usb 0x40190bf7 rtsx_usb_card_exclusive_check +EXPORT_SYMBOL_GPL drivers/misc/cardreader/rtsx_usb 0x4d827aa4 rtsx_usb_transfer_data +EXPORT_SYMBOL_GPL drivers/misc/cardreader/rtsx_usb 0x6cb3df10 rtsx_usb_get_card_status +EXPORT_SYMBOL_GPL drivers/misc/cardreader/rtsx_usb 0x87b8cdec rtsx_usb_ep0_write_register +EXPORT_SYMBOL_GPL drivers/misc/cardreader/rtsx_usb 0x911a7872 rtsx_usb_read_ppbuf +EXPORT_SYMBOL_GPL drivers/misc/cardreader/rtsx_usb 0x9bceed3e rtsx_usb_switch_clock +EXPORT_SYMBOL_GPL drivers/misc/cardreader/rtsx_usb 0xaad422e5 rtsx_usb_ep0_read_register +EXPORT_SYMBOL_GPL drivers/misc/cardreader/rtsx_usb 0xd40e233c rtsx_usb_read_register +EXPORT_SYMBOL_GPL drivers/misc/cardreader/rtsx_usb 0xfa3da492 rtsx_usb_add_cmd +EXPORT_SYMBOL_GPL drivers/misc/cb710/cb710 0x84821ebd cb710_pci_update_config_reg +EXPORT_SYMBOL_GPL drivers/misc/cb710/cb710 0xa3f0f907 cb710_set_irq_handler +EXPORT_SYMBOL_GPL drivers/misc/cb710/cb710 0xcbcba1cc cb710_sg_dwiter_read_next_block +EXPORT_SYMBOL_GPL drivers/misc/cb710/cb710 0xd025781b cb710_sg_dwiter_write_next_block +EXPORT_SYMBOL_GPL drivers/misc/cxl/cxl 0x02207906 cxl_pci_to_afu +EXPORT_SYMBOL_GPL drivers/misc/cxl/cxl 0x08130471 cxl_fd_release +EXPORT_SYMBOL_GPL drivers/misc/cxl/cxl 0x0cc7e7fc cxl_fd_read +EXPORT_SYMBOL_GPL drivers/misc/cxl/cxl 0x193d9f55 cxl_start_context +EXPORT_SYMBOL_GPL drivers/misc/cxl/cxl 0x26708972 cxl_fd_ioctl +EXPORT_SYMBOL_GPL drivers/misc/cxl/cxl 0x277a6542 cxl_unmap_afu_irq +EXPORT_SYMBOL_GPL drivers/misc/cxl/cxl 0x2bc18ff6 cxl_free_afu_irqs +EXPORT_SYMBOL_GPL drivers/misc/cxl/cxl 0x362db953 cxllib_get_PE_attributes +EXPORT_SYMBOL_GPL drivers/misc/cxl/cxl 0x3ac97cbe cxl_get_fd +EXPORT_SYMBOL_GPL drivers/misc/cxl/cxl 0x3b54a940 cxl_set_driver_ops +EXPORT_SYMBOL_GPL drivers/misc/cxl/cxl 0x3d231360 cxl_pci_to_cfg_record +EXPORT_SYMBOL_GPL drivers/misc/cxl/cxl 0x4a2d3d28 cxl_stop_context +EXPORT_SYMBOL_GPL drivers/misc/cxl/cxl 0x4bcdafe0 cxl_set_priv +EXPORT_SYMBOL_GPL drivers/misc/cxl/cxl 0x52a4f9e5 cxl_start_work +EXPORT_SYMBOL_GPL drivers/misc/cxl/cxl 0x67e3d9a8 cxl_get_context +EXPORT_SYMBOL_GPL drivers/misc/cxl/cxl 0x71657226 cxl_fops_get_context +EXPORT_SYMBOL_GPL drivers/misc/cxl/cxl 0x722b3b09 cxl_allocate_afu_irqs +EXPORT_SYMBOL_GPL drivers/misc/cxl/cxl 0x7974b593 cxl_read_adapter_vpd +EXPORT_SYMBOL_GPL drivers/misc/cxl/cxl 0x82d3490e cxl_fd_open +EXPORT_SYMBOL_GPL drivers/misc/cxl/cxl 0x8740bc47 cxl_psa_unmap +EXPORT_SYMBOL_GPL drivers/misc/cxl/cxl 0x891daf81 cxl_perst_reloads_same_image +EXPORT_SYMBOL_GPL drivers/misc/cxl/cxl 0x8e8a579a cxl_map_afu_irq +EXPORT_SYMBOL_GPL drivers/misc/cxl/cxl 0xa47abb73 cxl_context_events_pending +EXPORT_SYMBOL_GPL drivers/misc/cxl/cxl 0xad4373e6 cxllib_switch_phb_mode +EXPORT_SYMBOL_GPL drivers/misc/cxl/cxl 0xb81e68b9 cxllib_handle_fault +EXPORT_SYMBOL_GPL drivers/misc/cxl/cxl 0xbaf59cbb cxl_fd_mmap +EXPORT_SYMBOL_GPL drivers/misc/cxl/cxl 0xbb72e11f cxl_fd_poll +EXPORT_SYMBOL_GPL drivers/misc/cxl/cxl 0xbbaa3fb3 cxllib_set_device_dma +EXPORT_SYMBOL_GPL drivers/misc/cxl/cxl 0xccab0d2c cxl_process_element +EXPORT_SYMBOL_GPL drivers/misc/cxl/cxl 0xd26a17a5 cxl_release_context +EXPORT_SYMBOL_GPL drivers/misc/cxl/cxl 0xd7618d13 cxl_afu_reset +EXPORT_SYMBOL_GPL drivers/misc/cxl/cxl 0xd7957a82 cxllib_get_xsl_config +EXPORT_SYMBOL_GPL drivers/misc/cxl/cxl 0xd97f1200 cxl_dev_context_init +EXPORT_SYMBOL_GPL drivers/misc/cxl/cxl 0xde3c30ad cxl_psa_map +EXPORT_SYMBOL_GPL drivers/misc/cxl/cxl 0xe2256dab cxl_set_master +EXPORT_SYMBOL_GPL drivers/misc/cxl/cxl 0xee364f6e cxllib_slot_is_supported +EXPORT_SYMBOL_GPL drivers/misc/cxl/cxl 0xf37e6786 cxl_get_priv +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 0x027df09b enclosure_register +EXPORT_SYMBOL_GPL drivers/misc/enclosure 0x21929256 enclosure_component_register +EXPORT_SYMBOL_GPL drivers/misc/enclosure 0x2baffab5 enclosure_component_alloc +EXPORT_SYMBOL_GPL drivers/misc/enclosure 0x661ea703 enclosure_find +EXPORT_SYMBOL_GPL drivers/misc/enclosure 0x81e9108e enclosure_remove_device +EXPORT_SYMBOL_GPL drivers/misc/enclosure 0xb26f760d enclosure_add_device +EXPORT_SYMBOL_GPL drivers/misc/enclosure 0xe98e2034 enclosure_for_each_device +EXPORT_SYMBOL_GPL drivers/misc/enclosure 0xf5b05c8b enclosure_unregister +EXPORT_SYMBOL_GPL drivers/misc/lis3lv02d/lis3lv02d 0x148bf738 lis3_dev +EXPORT_SYMBOL_GPL drivers/misc/lis3lv02d/lis3lv02d 0x2b1aa2d0 lis3lv02d_joystick_enable +EXPORT_SYMBOL_GPL drivers/misc/lis3lv02d/lis3lv02d 0x40c6b591 lis3lv02d_init_device +EXPORT_SYMBOL_GPL drivers/misc/lis3lv02d/lis3lv02d 0x5b6e95d1 lis3lv02d_remove_fs +EXPORT_SYMBOL_GPL drivers/misc/lis3lv02d/lis3lv02d 0x8daf2643 lis3lv02d_joystick_disable +EXPORT_SYMBOL_GPL drivers/misc/lis3lv02d/lis3lv02d 0xa28b8582 lis3lv02d_poweron +EXPORT_SYMBOL_GPL drivers/misc/lis3lv02d/lis3lv02d 0xb687f9e0 lis3lv02d_poweroff +EXPORT_SYMBOL_GPL drivers/misc/lis3lv02d/lis3lv02d 0xbe665c82 lis3lv02d_init_dt +EXPORT_SYMBOL_GPL drivers/misc/ocxl/ocxl 0x041a260d ocxl_afu_irq_alloc +EXPORT_SYMBOL_GPL drivers/misc/ocxl/ocxl 0x080fe827 ocxl_afu_put +EXPORT_SYMBOL_GPL drivers/misc/ocxl/ocxl 0x0afa66b3 ocxl_afu_set_private +EXPORT_SYMBOL_GPL drivers/misc/ocxl/ocxl 0x0e9ded3e ocxl_function_close +EXPORT_SYMBOL_GPL drivers/misc/ocxl/ocxl 0x2d876dd2 ocxl_link_remove_pe +EXPORT_SYMBOL_GPL drivers/misc/ocxl/ocxl 0x3782b8f1 ocxl_context_alloc +EXPORT_SYMBOL_GPL drivers/misc/ocxl/ocxl 0x50ea30e8 ocxl_global_mmio_write64 +EXPORT_SYMBOL_GPL drivers/misc/ocxl/ocxl 0x55c4ac9c ocxl_global_mmio_set64 +EXPORT_SYMBOL_GPL drivers/misc/ocxl/ocxl 0x592287f1 ocxl_link_setup +EXPORT_SYMBOL_GPL drivers/misc/ocxl/ocxl 0x5c95626f ocxl_global_mmio_read32 +EXPORT_SYMBOL_GPL drivers/misc/ocxl/ocxl 0x5d8814ea ocxl_link_free_irq +EXPORT_SYMBOL_GPL drivers/misc/ocxl/ocxl 0x5dd667fb ocxl_function_open +EXPORT_SYMBOL_GPL drivers/misc/ocxl/ocxl 0x5dff07da ocxl_afu_irq_free +EXPORT_SYMBOL_GPL drivers/misc/ocxl/ocxl 0x5f8ce541 ocxl_config_set_TL +EXPORT_SYMBOL_GPL drivers/misc/ocxl/ocxl 0x68d821e5 ocxl_global_mmio_clear32 +EXPORT_SYMBOL_GPL drivers/misc/ocxl/ocxl 0x7734e7b0 ocxl_context_free +EXPORT_SYMBOL_GPL drivers/misc/ocxl/ocxl 0x7a1bef86 ocxl_global_mmio_read64 +EXPORT_SYMBOL_GPL drivers/misc/ocxl/ocxl 0x8034b9e8 ocxl_global_mmio_set32 +EXPORT_SYMBOL_GPL drivers/misc/ocxl/ocxl 0x851a259c ocxl_global_mmio_write32 +EXPORT_SYMBOL_GPL drivers/misc/ocxl/ocxl 0x86c7c750 ocxl_function_config +EXPORT_SYMBOL_GPL drivers/misc/ocxl/ocxl 0x920a0559 ocxl_afu_get_private +EXPORT_SYMBOL_GPL drivers/misc/ocxl/ocxl 0x9b0d8c55 ocxl_context_attach +EXPORT_SYMBOL_GPL drivers/misc/ocxl/ocxl 0x9ea4b5c4 ocxl_link_release +EXPORT_SYMBOL_GPL drivers/misc/ocxl/ocxl 0xa55be3f7 ocxl_config_read_function +EXPORT_SYMBOL_GPL drivers/misc/ocxl/ocxl 0xb4c57e2d ocxl_afu_config +EXPORT_SYMBOL_GPL drivers/misc/ocxl/ocxl 0xb7a209a7 ocxl_config_set_afu_state +EXPORT_SYMBOL_GPL drivers/misc/ocxl/ocxl 0xbaa34679 ocxl_config_read_afu +EXPORT_SYMBOL_GPL drivers/misc/ocxl/ocxl 0xbc43d9c3 ocxl_config_get_actag_info +EXPORT_SYMBOL_GPL drivers/misc/ocxl/ocxl 0xbd283491 ocxl_global_mmio_clear64 +EXPORT_SYMBOL_GPL drivers/misc/ocxl/ocxl 0xc61852d5 ocxl_function_afu_list +EXPORT_SYMBOL_GPL drivers/misc/ocxl/ocxl 0xc7c68d98 ocxl_config_terminate_pasid +EXPORT_SYMBOL_GPL drivers/misc/ocxl/ocxl 0xcca25264 ocxl_context_detach +EXPORT_SYMBOL_GPL drivers/misc/ocxl/ocxl 0xd30196e5 ocxl_config_set_afu_actag +EXPORT_SYMBOL_GPL drivers/misc/ocxl/ocxl 0xd46dcaca ocxl_irq_set_handler +EXPORT_SYMBOL_GPL drivers/misc/ocxl/ocxl 0xd5eb45d2 ocxl_afu_get +EXPORT_SYMBOL_GPL drivers/misc/ocxl/ocxl 0xebdc395f ocxl_link_irq_alloc +EXPORT_SYMBOL_GPL drivers/misc/ocxl/ocxl 0xf33eb2a1 ocxl_function_fetch_afu +EXPORT_SYMBOL_GPL drivers/misc/ocxl/ocxl 0xf793b5b6 ocxl_link_add_pe +EXPORT_SYMBOL_GPL drivers/misc/ocxl/ocxl 0xfaf71e5d ocxl_afu_irq_get_addr +EXPORT_SYMBOL_GPL drivers/misc/ocxl/ocxl 0xfbf1cc03 ocxl_config_set_actag +EXPORT_SYMBOL_GPL drivers/misc/ocxl/ocxl 0xfe195941 ocxl_config_set_afu_pasid +EXPORT_SYMBOL_GPL drivers/misc/ti-st/st_drv 0x0b52993f st_unregister +EXPORT_SYMBOL_GPL drivers/misc/ti-st/st_drv 0x518a2137 st_register +EXPORT_SYMBOL_GPL drivers/misc/uacce/uacce 0x191d57c0 uacce_register +EXPORT_SYMBOL_GPL drivers/misc/uacce/uacce 0x6d12c96c uacce_remove +EXPORT_SYMBOL_GPL drivers/misc/uacce/uacce 0xd156bfb3 uacce_alloc +EXPORT_SYMBOL_GPL drivers/mmc/host/sdhci 0x05309d4e sdhci_end_tuning +EXPORT_SYMBOL_GPL drivers/mmc/host/sdhci 0x09099a2f sdhci_start_tuning +EXPORT_SYMBOL_GPL drivers/mmc/host/sdhci 0x1e366c2b sdhci_resume_host +EXPORT_SYMBOL_GPL drivers/mmc/host/sdhci 0x216195b3 sdhci_suspend_host +EXPORT_SYMBOL_GPL drivers/mmc/host/sdhci 0x24dde967 sdhci_execute_tuning +EXPORT_SYMBOL_GPL drivers/mmc/host/sdhci 0x30151cd7 sdhci_switch_external_dma +EXPORT_SYMBOL_GPL drivers/mmc/host/sdhci 0x30aa2b51 sdhci_runtime_resume_host +EXPORT_SYMBOL_GPL drivers/mmc/host/sdhci 0x31c48e68 sdhci_cqe_enable +EXPORT_SYMBOL_GPL drivers/mmc/host/sdhci 0x345ec116 sdhci_set_data_timeout_irq +EXPORT_SYMBOL_GPL drivers/mmc/host/sdhci 0x38761ccf sdhci_alloc_host +EXPORT_SYMBOL_GPL drivers/mmc/host/sdhci 0x44b9d88a sdhci_remove_host +EXPORT_SYMBOL_GPL drivers/mmc/host/sdhci 0x56720a1b sdhci_cqe_irq +EXPORT_SYMBOL_GPL drivers/mmc/host/sdhci 0x5c20c111 sdhci_cleanup_host +EXPORT_SYMBOL_GPL drivers/mmc/host/sdhci 0x68cd7015 sdhci_send_tuning +EXPORT_SYMBOL_GPL drivers/mmc/host/sdhci 0x69c81fea sdhci_request +EXPORT_SYMBOL_GPL drivers/mmc/host/sdhci 0x6cd98a5c sdhci_calc_clk +EXPORT_SYMBOL_GPL drivers/mmc/host/sdhci 0x79cd9e88 sdhci_set_bus_width +EXPORT_SYMBOL_GPL drivers/mmc/host/sdhci 0x87ed18f0 sdhci_reset +EXPORT_SYMBOL_GPL drivers/mmc/host/sdhci 0x8850d474 sdhci_free_host +EXPORT_SYMBOL_GPL drivers/mmc/host/sdhci 0x895ada72 __sdhci_set_timeout +EXPORT_SYMBOL_GPL drivers/mmc/host/sdhci 0x8f8331f8 sdhci_enable_sdio_irq +EXPORT_SYMBOL_GPL drivers/mmc/host/sdhci 0x91490c30 sdhci_set_ios +EXPORT_SYMBOL_GPL drivers/mmc/host/sdhci 0x9bc14eed sdhci_start_signal_voltage_switch +EXPORT_SYMBOL_GPL drivers/mmc/host/sdhci 0xa494ccc4 sdhci_set_uhs_signaling +EXPORT_SYMBOL_GPL drivers/mmc/host/sdhci 0xa534d82c sdhci_adma_write_desc +EXPORT_SYMBOL_GPL drivers/mmc/host/sdhci 0xab9b7b8f sdhci_enable_v4_mode +EXPORT_SYMBOL_GPL drivers/mmc/host/sdhci 0xaca8b0cf sdhci_set_clock +EXPORT_SYMBOL_GPL drivers/mmc/host/sdhci 0xb08669ff sdhci_request_atomic +EXPORT_SYMBOL_GPL drivers/mmc/host/sdhci 0xb590f5bb sdhci_cqe_disable +EXPORT_SYMBOL_GPL drivers/mmc/host/sdhci 0xc0dae0a6 sdhci_setup_host +EXPORT_SYMBOL_GPL drivers/mmc/host/sdhci 0xc5dffb0b sdhci_abort_tuning +EXPORT_SYMBOL_GPL drivers/mmc/host/sdhci 0xc7fe62c1 sdhci_set_power_noreg +EXPORT_SYMBOL_GPL drivers/mmc/host/sdhci 0xc90a9611 __sdhci_add_host +EXPORT_SYMBOL_GPL drivers/mmc/host/sdhci 0xd20552ec sdhci_enable_clk +EXPORT_SYMBOL_GPL drivers/mmc/host/sdhci 0xdf08110d sdhci_dumpregs +EXPORT_SYMBOL_GPL drivers/mmc/host/sdhci 0xe8610c10 sdhci_reset_tuning +EXPORT_SYMBOL_GPL drivers/mmc/host/sdhci 0xeb501acb __sdhci_read_caps +EXPORT_SYMBOL_GPL drivers/mmc/host/sdhci 0xecbb957e sdhci_set_power +EXPORT_SYMBOL_GPL drivers/mmc/host/sdhci 0xed4fe6e3 sdhci_add_host +EXPORT_SYMBOL_GPL drivers/mmc/host/sdhci 0xf0fb9591 sdhci_set_power_and_bus_voltage +EXPORT_SYMBOL_GPL drivers/mmc/host/sdhci 0xfe5eaa03 sdhci_runtime_suspend_host +EXPORT_SYMBOL_GPL drivers/mmc/host/sdhci-pltfm 0x196a828b sdhci_pltfm_free +EXPORT_SYMBOL_GPL drivers/mmc/host/sdhci-pltfm 0x45edd6bc sdhci_pltfm_clk_get_max_clock +EXPORT_SYMBOL_GPL drivers/mmc/host/sdhci-pltfm 0x702d377b sdhci_pltfm_init +EXPORT_SYMBOL_GPL drivers/mmc/host/sdhci-pltfm 0x97b3e970 sdhci_pltfm_register +EXPORT_SYMBOL_GPL drivers/mmc/host/sdhci-pltfm 0x9a55e3f4 sdhci_pltfm_resume +EXPORT_SYMBOL_GPL drivers/mmc/host/sdhci-pltfm 0xa1aa44a5 sdhci_pltfm_pmops +EXPORT_SYMBOL_GPL drivers/mmc/host/sdhci-pltfm 0xa3dc1f60 sdhci_pltfm_unregister +EXPORT_SYMBOL_GPL drivers/mmc/host/sdhci-pltfm 0xaab130d1 sdhci_pltfm_suspend +EXPORT_SYMBOL_GPL drivers/mmc/host/sdhci-pltfm 0xe4fff57e sdhci_get_property +EXPORT_SYMBOL_GPL drivers/most/most_core 0x063cdce1 most_get_mbo +EXPORT_SYMBOL_GPL drivers/most/most_core 0x2cfa8647 most_resume_enqueue +EXPORT_SYMBOL_GPL drivers/most/most_core 0x4a370045 most_register_component +EXPORT_SYMBOL_GPL drivers/most/most_core 0x54e1d37f most_submit_mbo +EXPORT_SYMBOL_GPL drivers/most/most_core 0x55168655 most_deregister_interface +EXPORT_SYMBOL_GPL drivers/most/most_core 0x5c71242b most_stop_channel +EXPORT_SYMBOL_GPL drivers/most/most_core 0xa35ec106 most_register_configfs_subsys +EXPORT_SYMBOL_GPL drivers/most/most_core 0xad3f3c27 most_start_channel +EXPORT_SYMBOL_GPL drivers/most/most_core 0xb1a11772 most_register_interface +EXPORT_SYMBOL_GPL drivers/most/most_core 0xb8a1a2b6 most_deregister_component +EXPORT_SYMBOL_GPL drivers/most/most_core 0xce978a2e most_deregister_configfs_subsys +EXPORT_SYMBOL_GPL drivers/most/most_core 0xddff04ba most_put_mbo +EXPORT_SYMBOL_GPL drivers/most/most_core 0xed688338 most_stop_enqueue +EXPORT_SYMBOL_GPL drivers/most/most_core 0xee9ab9b4 channel_has_mbo +EXPORT_SYMBOL_GPL drivers/mtd/chips/cfi_cmdset_0001 0x49088a46 cfi_cmdset_0001 +EXPORT_SYMBOL_GPL drivers/mtd/chips/cfi_cmdset_0001 0x7621afae cfi_cmdset_0003 +EXPORT_SYMBOL_GPL drivers/mtd/chips/cfi_cmdset_0001 0x8b3f8a38 cfi_cmdset_0200 +EXPORT_SYMBOL_GPL drivers/mtd/chips/cfi_cmdset_0002 0x17e7768a cfi_cmdset_0006 +EXPORT_SYMBOL_GPL drivers/mtd/chips/cfi_cmdset_0002 0x69b53d5a cfi_cmdset_0002 +EXPORT_SYMBOL_GPL drivers/mtd/chips/cfi_cmdset_0002 0x9a4cf2dc cfi_cmdset_0701 +EXPORT_SYMBOL_GPL drivers/mtd/chips/cfi_cmdset_0020 0xf8725bdd cfi_cmdset_0020 +EXPORT_SYMBOL_GPL drivers/mtd/chips/cfi_util 0x027696a3 cfi_qry_mode_off +EXPORT_SYMBOL_GPL drivers/mtd/chips/cfi_util 0x7de0244a cfi_qry_present +EXPORT_SYMBOL_GPL drivers/mtd/chips/cfi_util 0xf8807261 cfi_qry_mode_on +EXPORT_SYMBOL_GPL drivers/mtd/hyperbus/hyperbus-core 0x706b6421 hyperbus_register_device +EXPORT_SYMBOL_GPL drivers/mtd/hyperbus/hyperbus-core 0xa12b9c0a hyperbus_unregister_device +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0x03cb3604 mtd_read_oob +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0x04b81294 put_mtd_device +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0x089562d2 mtd_block_isbad +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0x0d18619a mtd_writev +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0x17fbbe33 mtd_unlock +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0x1ec8788c register_mtd_user +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0x203c48ce mtd_block_markbad +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0x26149344 mtd_wunit_to_pairing_info +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0x285700d9 get_mtd_device +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0x2ad9af01 mtd_pairing_info_to_wunit +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0x2b78dc55 mtd_ooblayout_count_freebytes +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0x2bcc6528 mtd_ooblayout_free +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0x2ce6f24c mtd_device_unregister +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0x32f4b839 mtd_device_parse_register +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0x3819c229 unregister_mtd_user +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0x39490989 get_tree_mtd +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0x3e8db6a7 mtd_ooblayout_set_eccbytes +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0x3f2202f8 mtd_ooblayout_find_eccregion +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0x424ce26d __get_mtd_device +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0x4f355927 mtd_unpoint +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0x53b8d8ee mtd_get_fact_prot_info +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0x56df5564 mtd_lock_user_prot_reg +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0x58d28f05 mtd_panic_write +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0x5c913769 get_mtd_device_nm +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0x648253a7 __mtd_next_device +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0x66a77e7f mtd_write_user_prot_reg +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0x6a0bbcd4 mtd_get_device_size +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0x6bd42a65 __put_mtd_device +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0x6c097f49 mtd_point +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0x6de8c262 mtd_erase +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0x747fe0c5 mtd_kmalloc_up_to +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0x82e3b198 mtd_read_fact_prot_reg +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0x83334e9b mtd_ooblayout_set_databytes +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0x8591ecc9 mtd_ooblayout_ecc +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0x990dd382 mtd_read +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0x9a03c84a mtd_del_partition +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0x9df24d3e mtd_get_unmapped_area +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0x9f5955d9 mtd_write_oob +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0xb1bbcc54 __register_mtd_parser +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0xbd061ad7 mtd_write +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0xc06e1eb8 kill_mtd_super +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0xc6e103da mtd_ooblayout_count_eccbytes +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0xe8d8e5c5 mtd_ooblayout_get_databytes +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0xe9e2025a mtd_table_mutex +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0xf0ee2692 deregister_mtd_parser +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0xf3a0edb3 mtd_pairing_groups +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0xf716a375 mtd_get_user_prot_info +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0xfa155ca0 mtd_lock +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0xfcf212f9 mtd_block_isreserved +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0xfd5c47fe mtd_read_user_prot_reg +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0xfd82cbf9 mtd_add_partition +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0xfe2836c7 mtd_ooblayout_get_eccbytes +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0xfff740a8 mtd_is_locked +EXPORT_SYMBOL_GPL drivers/mtd/mtd_blkdevs 0x3c6bcb02 register_mtd_blktrans +EXPORT_SYMBOL_GPL drivers/mtd/mtd_blkdevs 0x9b62548c deregister_mtd_blktrans +EXPORT_SYMBOL_GPL drivers/mtd/mtd_blkdevs 0xbce55e16 del_mtd_blktrans_dev +EXPORT_SYMBOL_GPL drivers/mtd/mtd_blkdevs 0xdb4f3b16 mtd_blktrans_cease_background +EXPORT_SYMBOL_GPL drivers/mtd/mtd_blkdevs 0xe2031fe9 add_mtd_blktrans_dev +EXPORT_SYMBOL_GPL drivers/mtd/nand/nandcore 0x0071cb6c nanddev_erase +EXPORT_SYMBOL_GPL drivers/mtd/nand/nandcore 0x0ea40189 nanddev_mtd_erase +EXPORT_SYMBOL_GPL drivers/mtd/nand/nandcore 0x1471529a nanddev_mtd_max_bad_blocks +EXPORT_SYMBOL_GPL drivers/mtd/nand/nandcore 0x1a6c0ff9 nanddev_bbt_get_block_status +EXPORT_SYMBOL_GPL drivers/mtd/nand/nandcore 0x3dea9171 nanddev_markbad +EXPORT_SYMBOL_GPL drivers/mtd/nand/nandcore 0x765818cb nanddev_cleanup +EXPORT_SYMBOL_GPL drivers/mtd/nand/nandcore 0x79726cdc nanddev_isreserved +EXPORT_SYMBOL_GPL drivers/mtd/nand/nandcore 0x998bbf3a nanddev_isbad +EXPORT_SYMBOL_GPL drivers/mtd/nand/nandcore 0x9be8cd8e nanddev_bbt_cleanup +EXPORT_SYMBOL_GPL drivers/mtd/nand/nandcore 0xaa7e707c nanddev_init +EXPORT_SYMBOL_GPL drivers/mtd/nand/nandcore 0xd129aba9 nanddev_bbt_set_block_status +EXPORT_SYMBOL_GPL drivers/mtd/nand/nandcore 0xdc13da08 nanddev_bbt_update +EXPORT_SYMBOL_GPL drivers/mtd/nand/nandcore 0xe5b509d8 nanddev_bbt_init +EXPORT_SYMBOL_GPL drivers/mtd/nand/onenand/onenand 0x9ba7208f onenand_release +EXPORT_SYMBOL_GPL drivers/mtd/nand/onenand/onenand 0xc8e098b6 onenand_scan +EXPORT_SYMBOL_GPL drivers/mtd/nand/raw/denali 0x69e88b73 denali_chip_init +EXPORT_SYMBOL_GPL drivers/mtd/nand/raw/nand 0x11091291 nand_extract_bits +EXPORT_SYMBOL_GPL drivers/mtd/nand/raw/nand 0x2060e4a1 nand_decode_ext_id +EXPORT_SYMBOL_GPL drivers/mtd/nand/raw/nand 0x21006447 nand_change_read_column_op +EXPORT_SYMBOL_GPL drivers/mtd/nand/raw/nand 0x218340f8 nand_reset +EXPORT_SYMBOL_GPL drivers/mtd/nand/raw/nand 0x25b88d99 nand_erase_op +EXPORT_SYMBOL_GPL drivers/mtd/nand/raw/nand 0x26735b8a nand_soft_waitrdy +EXPORT_SYMBOL_GPL drivers/mtd/nand/raw/nand 0x26b3dc31 nand_ecc_choose_conf +EXPORT_SYMBOL_GPL drivers/mtd/nand/raw/nand 0x289f584c nand_wait_ready +EXPORT_SYMBOL_GPL drivers/mtd/nand/raw/nand 0x2bf5e6d4 nand_cleanup +EXPORT_SYMBOL_GPL drivers/mtd/nand/raw/nand 0x2d368c4c nand_subop_get_addr_start_off +EXPORT_SYMBOL_GPL drivers/mtd/nand/raw/nand 0x303ac0f3 nand_read_page_op +EXPORT_SYMBOL_GPL drivers/mtd/nand/raw/nand 0x3b82447f nand_prog_page_op +EXPORT_SYMBOL_GPL drivers/mtd/nand/raw/nand 0x45ae0c05 nand_status_op +EXPORT_SYMBOL_GPL drivers/mtd/nand/raw/nand 0x5632e63d nand_subop_get_num_addr_cyc +EXPORT_SYMBOL_GPL drivers/mtd/nand/raw/nand 0x59da1c41 nand_op_parser_exec_op +EXPORT_SYMBOL_GPL drivers/mtd/nand/raw/nand 0x6100eb36 nand_readid_op +EXPORT_SYMBOL_GPL drivers/mtd/nand/raw/nand 0x67436b89 nand_write_data_op +EXPORT_SYMBOL_GPL drivers/mtd/nand/raw/nand 0x76ee0af2 nand_prog_page_begin_op +EXPORT_SYMBOL_GPL drivers/mtd/nand/raw/nand 0x7f162c59 nand_ooblayout_lp_ops +EXPORT_SYMBOL_GPL drivers/mtd/nand/raw/nand 0x91a34768 nand_change_write_column_op +EXPORT_SYMBOL_GPL drivers/mtd/nand/raw/nand 0x966984e2 nand_deselect_target +EXPORT_SYMBOL_GPL drivers/mtd/nand/raw/nand 0x9f209998 nand_read_data_op +EXPORT_SYMBOL_GPL drivers/mtd/nand/raw/nand 0xaa63038e nand_reset_op +EXPORT_SYMBOL_GPL drivers/mtd/nand/raw/nand 0xc5475bfc nand_gpio_waitrdy +EXPORT_SYMBOL_GPL drivers/mtd/nand/raw/nand 0xd3c672b8 nand_subop_get_data_len +EXPORT_SYMBOL_GPL drivers/mtd/nand/raw/nand 0xd3cf6d3c nand_prog_page_end_op +EXPORT_SYMBOL_GPL drivers/mtd/nand/raw/nand 0xd41ff2ac nand_subop_get_data_start_off +EXPORT_SYMBOL_GPL drivers/mtd/nand/raw/nand 0xddb7332e nand_read_oob_op +EXPORT_SYMBOL_GPL drivers/mtd/nand/raw/nand 0xee80c07e nand_ooblayout_sp_ops +EXPORT_SYMBOL_GPL drivers/mtd/nand/raw/nand 0xfe779356 nand_select_target +EXPORT_SYMBOL_GPL drivers/mtd/nand/raw/sm_common 0x3e7c94f1 sm_register_device +EXPORT_SYMBOL_GPL drivers/mtd/spi-nor/spi-nor 0x39f85ae7 spi_nor_scan +EXPORT_SYMBOL_GPL drivers/mtd/spi-nor/spi-nor 0x95323366 spi_nor_restore +EXPORT_SYMBOL_GPL drivers/mtd/ubi/ubi 0x015f2be9 ubi_is_mapped +EXPORT_SYMBOL_GPL drivers/mtd/ubi/ubi 0x038ce8ab ubi_open_volume_path +EXPORT_SYMBOL_GPL drivers/mtd/ubi/ubi 0x1f4a50ce ubi_do_get_device_info +EXPORT_SYMBOL_GPL drivers/mtd/ubi/ubi 0x2f137049 ubi_leb_change +EXPORT_SYMBOL_GPL drivers/mtd/ubi/ubi 0x38e10c1d ubi_flush +EXPORT_SYMBOL_GPL drivers/mtd/ubi/ubi 0x3a48727e ubi_leb_read_sg +EXPORT_SYMBOL_GPL drivers/mtd/ubi/ubi 0x3fce3af5 ubi_leb_unmap +EXPORT_SYMBOL_GPL drivers/mtd/ubi/ubi 0x42801d20 ubi_sync +EXPORT_SYMBOL_GPL drivers/mtd/ubi/ubi 0x43f777be ubi_open_volume +EXPORT_SYMBOL_GPL drivers/mtd/ubi/ubi 0x66011ab6 ubi_get_device_info +EXPORT_SYMBOL_GPL drivers/mtd/ubi/ubi 0x6ec4934b ubi_close_volume +EXPORT_SYMBOL_GPL drivers/mtd/ubi/ubi 0x85a8ee76 ubi_unregister_volume_notifier +EXPORT_SYMBOL_GPL drivers/mtd/ubi/ubi 0x8866d685 ubi_get_volume_info +EXPORT_SYMBOL_GPL drivers/mtd/ubi/ubi 0xc206eb7e ubi_leb_map +EXPORT_SYMBOL_GPL drivers/mtd/ubi/ubi 0xc2ed36f4 ubi_leb_erase +EXPORT_SYMBOL_GPL drivers/mtd/ubi/ubi 0xc6ccbb81 ubi_open_volume_nm +EXPORT_SYMBOL_GPL drivers/mtd/ubi/ubi 0xdbf63e94 ubi_leb_write +EXPORT_SYMBOL_GPL drivers/mtd/ubi/ubi 0xe4918c9e ubi_leb_read +EXPORT_SYMBOL_GPL drivers/mtd/ubi/ubi 0xf5ee9ba8 ubi_register_volume_notifier +EXPORT_SYMBOL_GPL drivers/mux/mux-core 0x110fc86c mux_control_deselect +EXPORT_SYMBOL_GPL drivers/mux/mux-core 0x24c853cb mux_chip_alloc +EXPORT_SYMBOL_GPL drivers/mux/mux-core 0x6129ea68 mux_control_get +EXPORT_SYMBOL_GPL drivers/mux/mux-core 0x67581bb0 mux_control_select +EXPORT_SYMBOL_GPL drivers/mux/mux-core 0x6b3aa858 mux_chip_unregister +EXPORT_SYMBOL_GPL drivers/mux/mux-core 0x907a3606 mux_chip_register +EXPORT_SYMBOL_GPL drivers/mux/mux-core 0xbbfe0573 devm_mux_control_get +EXPORT_SYMBOL_GPL drivers/mux/mux-core 0xc8643afd devm_mux_chip_register +EXPORT_SYMBOL_GPL drivers/mux/mux-core 0xca6e4921 mux_chip_free +EXPORT_SYMBOL_GPL drivers/mux/mux-core 0xe3aef9c1 mux_control_try_select +EXPORT_SYMBOL_GPL drivers/mux/mux-core 0xe3c5c3e6 devm_mux_chip_alloc +EXPORT_SYMBOL_GPL drivers/mux/mux-core 0xf3cf8e0f mux_control_put +EXPORT_SYMBOL_GPL drivers/mux/mux-core 0xfc07608d mux_control_states +EXPORT_SYMBOL_GPL drivers/net/arcnet/arcnet 0x3f75a374 arcnet_led_event +EXPORT_SYMBOL_GPL drivers/net/arcnet/arcnet 0xa77ba15a devm_arcnet_led_init +EXPORT_SYMBOL_GPL drivers/net/bareudp 0xcd861c5c bareudp_dev_create +EXPORT_SYMBOL_GPL drivers/net/can/c_can/c_can 0x2c8588e1 c_can_power_up +EXPORT_SYMBOL_GPL drivers/net/can/c_can/c_can 0xa0bb5b09 alloc_c_can_dev +EXPORT_SYMBOL_GPL drivers/net/can/c_can/c_can 0xcbde9aeb unregister_c_can_dev +EXPORT_SYMBOL_GPL drivers/net/can/c_can/c_can 0xd3b35479 c_can_power_down +EXPORT_SYMBOL_GPL drivers/net/can/c_can/c_can 0xee0b034b free_c_can_dev +EXPORT_SYMBOL_GPL drivers/net/can/c_can/c_can 0xee17eddd register_c_can_dev +EXPORT_SYMBOL_GPL drivers/net/can/can-dev 0x057420e9 can_rx_offload_get_echo_skb +EXPORT_SYMBOL_GPL drivers/net/can/can-dev 0x05ab60a2 alloc_candev_mqs +EXPORT_SYMBOL_GPL drivers/net/can/can-dev 0x0b4dea7f can_free_echo_skb +EXPORT_SYMBOL_GPL drivers/net/can/can-dev 0x16081ffb can_dlc2len +EXPORT_SYMBOL_GPL drivers/net/can/can-dev 0x178d8289 can_rx_offload_enable +EXPORT_SYMBOL_GPL drivers/net/can/can-dev 0x18090a72 can_rx_offload_irq_offload_timestamp +EXPORT_SYMBOL_GPL drivers/net/can/can-dev 0x1c7f1a06 can_rx_offload_irq_offload_fifo +EXPORT_SYMBOL_GPL drivers/net/can/can-dev 0x225bfcda close_candev +EXPORT_SYMBOL_GPL drivers/net/can/can-dev 0x27bedea7 register_candev +EXPORT_SYMBOL_GPL drivers/net/can/can-dev 0x366e4d87 can_rx_offload_add_timestamp +EXPORT_SYMBOL_GPL drivers/net/can/can-dev 0x37530c2b can_change_state +EXPORT_SYMBOL_GPL drivers/net/can/can-dev 0x460478c5 alloc_canfd_skb +EXPORT_SYMBOL_GPL drivers/net/can/can-dev 0x47c0507b can_change_mtu +EXPORT_SYMBOL_GPL drivers/net/can/can-dev 0x54a539e8 can_get_echo_skb +EXPORT_SYMBOL_GPL drivers/net/can/can-dev 0x62282551 can_rx_offload_del +EXPORT_SYMBOL_GPL drivers/net/can/can-dev 0x7905a4fb free_candev +EXPORT_SYMBOL_GPL drivers/net/can/can-dev 0x7d9ad0a7 can_put_echo_skb +EXPORT_SYMBOL_GPL drivers/net/can/can-dev 0x8256aaba safe_candev_priv +EXPORT_SYMBOL_GPL drivers/net/can/can-dev 0x8762619a can_len2dlc +EXPORT_SYMBOL_GPL drivers/net/can/can-dev 0xa1e31a75 can_rx_offload_queue_sorted +EXPORT_SYMBOL_GPL drivers/net/can/can-dev 0xa352af46 of_can_transceiver +EXPORT_SYMBOL_GPL drivers/net/can/can-dev 0xaaef93f4 alloc_can_err_skb +EXPORT_SYMBOL_GPL drivers/net/can/can-dev 0xac8e9658 can_bus_off +EXPORT_SYMBOL_GPL drivers/net/can/can-dev 0xb885ee55 open_candev +EXPORT_SYMBOL_GPL drivers/net/can/can-dev 0xccceef98 unregister_candev +EXPORT_SYMBOL_GPL drivers/net/can/can-dev 0xdfc3e3f6 alloc_can_skb +EXPORT_SYMBOL_GPL drivers/net/can/can-dev 0xe34c481d can_rx_offload_queue_tail +EXPORT_SYMBOL_GPL drivers/net/can/can-dev 0xe7bfa86c can_rx_offload_add_fifo +EXPORT_SYMBOL_GPL drivers/net/can/cc770/cc770 0x40f4ff6a register_cc770dev +EXPORT_SYMBOL_GPL drivers/net/can/cc770/cc770 0x9c96f946 free_cc770dev +EXPORT_SYMBOL_GPL drivers/net/can/cc770/cc770 0xb78bbc7b alloc_cc770dev +EXPORT_SYMBOL_GPL drivers/net/can/cc770/cc770 0xca3477cd unregister_cc770dev +EXPORT_SYMBOL_GPL drivers/net/can/m_can/m_can 0x1170ec9a m_can_class_suspend +EXPORT_SYMBOL_GPL drivers/net/can/m_can/m_can 0x63ebc6b6 m_can_class_register +EXPORT_SYMBOL_GPL drivers/net/can/m_can/m_can 0xaa9e137b m_can_class_get_clocks +EXPORT_SYMBOL_GPL drivers/net/can/m_can/m_can 0xb4808117 m_can_class_free_dev +EXPORT_SYMBOL_GPL drivers/net/can/m_can/m_can 0xcb5748b5 m_can_class_resume +EXPORT_SYMBOL_GPL drivers/net/can/m_can/m_can 0xf4a98aa0 m_can_class_unregister +EXPORT_SYMBOL_GPL drivers/net/can/m_can/m_can 0xf6c2e1c6 m_can_class_allocate_dev +EXPORT_SYMBOL_GPL drivers/net/can/m_can/m_can 0xff0d7b95 m_can_init_ram +EXPORT_SYMBOL_GPL drivers/net/can/sja1000/sja1000 0x259dc905 free_sja1000dev +EXPORT_SYMBOL_GPL drivers/net/can/sja1000/sja1000 0x3f1218db alloc_sja1000dev +EXPORT_SYMBOL_GPL drivers/net/can/sja1000/sja1000 0x49ebd0d2 sja1000_interrupt +EXPORT_SYMBOL_GPL drivers/net/can/sja1000/sja1000 0xf5cfdbfc register_sja1000dev +EXPORT_SYMBOL_GPL drivers/net/can/sja1000/sja1000 0xf7ea7000 unregister_sja1000dev +EXPORT_SYMBOL_GPL drivers/net/dsa/lan9303-core 0x5abf123b lan9303_indirect_phy_ops +EXPORT_SYMBOL_GPL drivers/net/dsa/microchip/ksz_common 0x0129a3d0 ksz_phy_write16 +EXPORT_SYMBOL_GPL drivers/net/dsa/microchip/ksz_common 0x0ed1bd9a ksz_sset_count +EXPORT_SYMBOL_GPL drivers/net/dsa/microchip/ksz_common 0x12c70900 ksz_port_vlan_prepare +EXPORT_SYMBOL_GPL drivers/net/dsa/microchip/ksz_common 0x18e88001 ksz_disable_port +EXPORT_SYMBOL_GPL drivers/net/dsa/microchip/ksz_common 0x1c60eef1 ksz_port_fast_age +EXPORT_SYMBOL_GPL drivers/net/dsa/microchip/ksz_common 0x20c4362f ksz_enable_port +EXPORT_SYMBOL_GPL drivers/net/dsa/microchip/ksz_common 0x287f92c4 ksz_get_ethtool_stats +EXPORT_SYMBOL_GPL drivers/net/dsa/microchip/ksz_common 0x6aa01d36 ksz_init_mib_timer +EXPORT_SYMBOL_GPL drivers/net/dsa/microchip/ksz_common 0x707af281 ksz_port_mdb_del +EXPORT_SYMBOL_GPL drivers/net/dsa/microchip/ksz_common 0x7c7db9a9 ksz_port_fdb_dump +EXPORT_SYMBOL_GPL drivers/net/dsa/microchip/ksz_common 0x82a984a1 ksz_port_bridge_join +EXPORT_SYMBOL_GPL drivers/net/dsa/microchip/ksz_common 0x83d7b1ef ksz_port_mdb_prepare +EXPORT_SYMBOL_GPL drivers/net/dsa/microchip/ksz_common 0xc0b3509e ksz_adjust_link +EXPORT_SYMBOL_GPL drivers/net/dsa/microchip/ksz_common 0xd39df988 ksz_port_mdb_add +EXPORT_SYMBOL_GPL drivers/net/dsa/microchip/ksz_common 0xd68228cf ksz_update_port_member +EXPORT_SYMBOL_GPL drivers/net/dsa/microchip/ksz_common 0xe6de1a88 ksz_port_bridge_leave +EXPORT_SYMBOL_GPL drivers/net/dsa/microchip/ksz_common 0xf346d3a3 ksz_phy_read16 +EXPORT_SYMBOL_GPL drivers/net/dsa/realtek-smi 0x087ddcb7 rtl8366_enable_vlan +EXPORT_SYMBOL_GPL drivers/net/dsa/realtek-smi 0x1fbe323c rtl8366_vlan_add +EXPORT_SYMBOL_GPL drivers/net/dsa/realtek-smi 0x21f1aa47 rtl8366_init_vlan +EXPORT_SYMBOL_GPL drivers/net/dsa/realtek-smi 0x229ec708 rtl8366_set_vlan +EXPORT_SYMBOL_GPL drivers/net/dsa/realtek-smi 0x3889676e rtl8366_reset_vlan +EXPORT_SYMBOL_GPL drivers/net/dsa/realtek-smi 0x4879757e rtl8366_vlan_prepare +EXPORT_SYMBOL_GPL drivers/net/dsa/realtek-smi 0x528912c7 rtl8366rb_variant +EXPORT_SYMBOL_GPL drivers/net/dsa/realtek-smi 0x5fd06e4c rtl8366_set_pvid +EXPORT_SYMBOL_GPL drivers/net/dsa/realtek-smi 0x66c16d93 rtl8366_vlan_del +EXPORT_SYMBOL_GPL drivers/net/dsa/realtek-smi 0x68e66bde rtl8366_mc_is_used +EXPORT_SYMBOL_GPL drivers/net/dsa/realtek-smi 0x7dbc1f72 rtl8366_vlan_filtering +EXPORT_SYMBOL_GPL drivers/net/dsa/realtek-smi 0x826129eb rtl8366_get_strings +EXPORT_SYMBOL_GPL drivers/net/dsa/realtek-smi 0xb0daf2dc rtl8366_enable_vlan4k +EXPORT_SYMBOL_GPL drivers/net/dsa/realtek-smi 0xb37dc538 rtl8366_get_sset_count +EXPORT_SYMBOL_GPL drivers/net/dsa/realtek-smi 0xd4e4a63b rtl8366_get_ethtool_stats +EXPORT_SYMBOL_GPL drivers/net/dsa/realtek-smi 0xeb26d859 realtek_smi_write_reg_noack +EXPORT_SYMBOL_GPL drivers/net/ethernet/freescale/enetc/fsl-enetc-mdio 0x57974f0f enetc_mdio_lock +EXPORT_SYMBOL_GPL drivers/net/ethernet/freescale/enetc/fsl-enetc-mdio 0x5e371616 enetc_mdio_write +EXPORT_SYMBOL_GPL drivers/net/ethernet/freescale/enetc/fsl-enetc-mdio 0x69627758 enetc_hw_alloc +EXPORT_SYMBOL_GPL drivers/net/ethernet/freescale/enetc/fsl-enetc-mdio 0xbe4bc6f6 enetc_mdio_read +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x00ef0eaf mlx4_qp_to_ready +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x035c1859 mlx4_config_vxlan_port +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x06f2232d mlx4_xrcd_free +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x08e58dc4 mlx4_register_interface +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x0a76b2cf mlx4_unbond +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x0f57c0d1 mlx4_mw_alloc +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x11de3b31 mlx4_map_sw_to_hw_steering_id +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x130ed16b mlx4_phys_to_slaves_pport +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x13918287 mlx4_wol_read +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x14051152 mlx4_free_hwq_res +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x16e19ca2 mlx4_flow_attach +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x1855011a mlx4_cq_free +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x19e69384 mlx4_counter_free +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x1acc9e9f mlx4_vf_get_enable_smi_admin +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x1faacded mlx4_flow_detach +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x21810013 mlx4_bond +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x22eb81fc mlx4_cq_resize +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x2449976a mlx4_get_vf_stats +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x26dbaf6c mlx4_get_protocol_dev +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x2895583d mlx4_mtt_init +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x29e9ab4e mlx4_get_base_qpn +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x2bb24c07 mlx4_slave_convert_port +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x3530b6e3 mlx4_srq_query +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x35ecbf33 mlx4_counter_alloc +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x394ae2ce mlx4_vf_set_enable_smi_admin +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x3c49c737 mlx4_set_vf_rate +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x40e298a4 __mlx4_replace_mac +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x41a0cc81 mlx4_bf_alloc +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x42457ee3 mlx4_mw_enable +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x44e9fb70 mlx4_pd_free +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x452e2bc1 mlx4_mr_rereg_mem_cleanup +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x4c4aa52a mlx4_set_vf_vlan +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x4cad33bb mlx4_get_vf_config +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x51d64867 mlx4_bf_free +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x568bb794 mlx4_qp_query +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x57b485ec mlx4_get_counter_stats +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x5865db3c mlx4_find_cached_vlan +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x598fffad mlx4_update_qp +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x59ef5d94 mlx4_srq_free +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x5d110ba4 __mlx4_register_mac +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x5d5c235e mlx4_port_map_set +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x5d653a4e mlx4_mr_hw_write_mpt +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x60feb16f mlx4_multicast_attach +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x6342a087 mlx4_get_active_ports +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x691e0c4f mlx4_phys_to_slave_port +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x6a955114 mlx4_config_dev_retrieval +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x6ae18ad2 mlx4_free_cmd_mailbox +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x6ae2facc mlx4_hw_rule_sz +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x6b16f134 mlx4_flow_steer_promisc_remove +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x6b6eee07 mlx4_db_free +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x6bb7a334 mlx4_unregister_vlan +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x6c130d8e mlx4_set_admin_guid +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x743608c7 mlx4_mw_free +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x77a9df28 mlx4_pd_alloc +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x7800119b mlx4_qp_release_range +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x7903c91d mlx4_get_devlink_port +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x79242297 mlx4_set_vf_link_state +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x7a51d06f mlx4_uar_free +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x7f62bcca mlx4_buf_alloc +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x800c4218 mlx4_mr_hw_get_mpt +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x863eac0a mlx4_FLOW_STEERING_IB_UC_QP_RANGE +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x88bcf62c mlx4_srq_arm +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x891cf3cd mlx4_get_admin_guid +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x89fddbd2 mlx4_mr_alloc +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x8bf39437 mlx4_vf_smi_enabled +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x91d1bd77 mlx4_mtt_addr +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x941fa34b mlx4_CLOSE_PORT +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x965e538d mlx4_buf_write_mtt +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x99cd3f45 mlx4_qp_remove +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x9acc5b99 mlx4_cq_alloc +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x9c37e9ff mlx4_unicast_attach +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x9d6fcec9 mlx4_qp_reserve_range +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x9db7c10f mlx4_config_roce_v2_port +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x9de31334 mlx4_unicast_promisc_remove +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xa0079fe7 mlx4_uar_alloc +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xa0390170 __mlx4_unregister_mac +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xa5a93989 mlx4_ACCESS_PTYS_REG +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xa658f85c mlx4_buf_free +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xab13952f mlx4_wol_write +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xad316931 mlx4_find_cached_mac +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xaff78989 mlx4_phys_to_slaves_pport_actv +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xb036afff mlx4_qp_modify +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xb07984eb mlx4_multicast_detach +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xb1ecd2fb mlx4_mr_free +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xb2e22351 mlx4_alloc_hwq_res +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xb30c68db mlx4_cq_modify +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xb3cb9857 mlx4_SYNC_TPT +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xb5e42446 mlx4_get_default_counter_index +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xb811979c mlx4_get_slave_default_vlan +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xbb1d6ffc mlx4_unicast_promisc_add +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xbdc77f6a mlx4_write_mtt +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xbe5d071e mlx4_xrcd_alloc +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xc45693af mlx4_get_internal_clock_params +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xc7c907dc mlx4_flow_steer_promisc_add +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xc9a23b11 mlx4_mr_hw_change_pd +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xc9ba5a37 mlx4_register_mac +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xc9bd9bd5 mlx4_replace_zero_macs +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xccfa8c2a mlx4_set_vf_mac +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xce6f6830 mlx4_mr_rereg_mem_write +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xd0ede85a mlx4_get_base_gid_ix +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xd36f15a7 mlx4_register_vlan +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xda48f18a mlx4_srq_lookup +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xdb3276b4 mlx4_read_clock +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xdc082b04 mlx4_unregister_interface +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xdd21a327 mlx4_mr_hw_put_mpt +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xddbb2496 mlx4_qp_free +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xe4ac3296 mlx4_unicast_detach +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xe65295ec mlx4_db_alloc +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xe6721cd6 mlx4_set_vf_spoofchk +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xe791c469 mlx4_mr_enable +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xe9c122cb mlx4_map_sw_to_hw_steering_mode +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xe9e63e6a mlx4_multicast_promisc_add +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xeaba484c mlx4_mr_hw_change_access +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xedb290a5 mlx4_multicast_promisc_remove +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xf05eaba5 mlx4_unregister_mac +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xf18be6b6 __mlx4_cmd +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xf53fe27f mlx4_alloc_cmd_mailbox +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xf5966996 mlx4_mtt_cleanup +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xf87349ee mlx4_qp_alloc +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xf96c23e2 mlx4_INIT_PORT +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xfdf5bf4c mlx4_srq_alloc +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x021a4d53 mlx5_set_port_wol +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x054c1050 mlx5_query_port_oper_mtu +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 0x09194025 mlx5_query_port_ptys +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x0a981710 mlx5_core_access_reg +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x101231e3 mlx5_eswitch_mode +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x190914b7 mlx5_query_nic_vport_mtu +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x1f6f7e5f mlx5_query_hca_vport_pkey +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x299f4d13 mlx5_query_mac_address +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x29a52206 mlx5_modify_nic_vport_mac_list +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x31b77d79 mlx5_accel_esp_destroy_xfrm +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x363f83e4 mlx5_dm_sw_icm_dealloc +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x3c8287fd mlx5_dm_sw_icm_alloc +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x3daabd1a mlx5_query_port_prio_tc +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x421b208e mlx5_set_port_tc_bw_alloc +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x44d8f707 mlx5_accel_esp_modify_xfrm +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x4815b54e mlx5_query_port_ets_rate_limit +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x487923e7 mlx5_query_nic_system_image_guid +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x488c1215 mlx5_set_port_tc_group +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x4984fb2a mlx5_modify_nic_vport_mtu +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x5094832d mlx5_query_nic_vport_min_inline +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x527b028f mlx5_eswitch_get_total_vports +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x55b0c810 mlx5_nic_vport_query_local_lb +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x56c82f8a mlx5_core_reserved_gids_count +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x5a93006a mlx5_set_port_mtu +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x5b1960b1 mlx5_query_port_vl_hw_cap +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x5b391cca mlx5_accel_ipsec_device_caps +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x5bed204e mlx5_modify_nic_vport_promisc +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x6330c31f mlx5_core_query_ib_ppcnt +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x6800ef05 mlx5_query_nic_vport_promisc +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x6b7f2fcc mlx5_set_port_pause +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x6d579458 mlx5_accel_esp_create_xfrm +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x6dc81a6b mlx5_query_min_inline +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x7388ca8f mlx5_modify_nic_vport_vlans +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x7cc64451 mlx5_query_port_link_width_oper +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x86f52915 mlx5_query_hca_vport_system_image_guid +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x88018e59 mlx5_core_modify_hca_vport_context +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x8818e48b mlx5_set_port_pfc +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x9098bd8f mlx5_db_free +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x94e8537f mlx5_modify_nic_vport_mac_address +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x954d2ac0 mlx5_core_query_vport_counter +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x996d4651 mlx5_buf_free +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xa242c0da mlx5_frag_buf_alloc_node +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xa3b67909 mlx5_query_nic_vport_qkey_viol_cntr +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xa49fe927 mlx5_query_hca_vport_node_guid +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xa75a6ccd mlx5_query_nic_vport_mac_list +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xa75f49d6 mlx5_fill_page_array +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xab3380d8 mlx5_set_port_admin_status +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xae006c71 mlx5_db_alloc +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xafbb2d29 mlx5_core_query_sq_state +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xb1b27541 mlx5_query_module_eeprom +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xb3df3404 mlx5_query_nic_vport_node_guid +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xb4a94671 mlx5_set_port_prio_tc +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xb8f6c124 mlx5_nic_vport_update_local_lb +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xb903a36a mlx5_nic_vport_affiliate_multiport +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xbd611e1d mlx5_frag_buf_free +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xc03fd56e mlx5_query_port_wol +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xc278f9f9 mlx5_nic_vport_enable_roce +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xc34ec985 mlx5_nic_vport_unaffiliate_multiport +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xc8e57e96 mlx5_query_hca_vport_context +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xcb36e9c7 mlx5_query_port_tc_bw_alloc +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xcc2d3a00 mlx5_query_port_pause +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xd5109d3d mlx5_modify_port_ets_rate_limit +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xd80e7b80 mlx5_query_port_admin_status +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xdb4b5a10 mlx5_query_port_tc_group +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xde4f96a4 mlx5_query_nic_vport_mac_address +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xe6806fdb mlx5_query_nic_vport_system_image_guid +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xec06979c mlx5_query_port_max_mtu +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xf109c572 mlx5_toggle_port_link +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xf2dcfb58 mlx5_query_port_pfc +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xf3763f40 mlx5_db_alloc_node +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xf64fa875 mlx5_set_port_caps +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xfba79fe9 mlx5_query_hca_vport_gid +EXPORT_SYMBOL_GPL drivers/net/ethernet/microchip/encx24j600-regmap 0x0bd5673f 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_common 0x0b6e2539 ocelot_cls_flower_replace +EXPORT_SYMBOL_GPL drivers/net/ethernet/mscc/mscc_ocelot_common 0x65da5c78 ocelot_cls_flower_stats +EXPORT_SYMBOL_GPL drivers/net/ethernet/mscc/mscc_ocelot_common 0xec174ee5 ocelot_cls_flower_destroy +EXPORT_SYMBOL_GPL drivers/net/ethernet/qualcomm/qca_7k_common 0x0b28a9ad qcafrm_create_footer +EXPORT_SYMBOL_GPL drivers/net/ethernet/qualcomm/qca_7k_common 0x2b6ddf3f qcafrm_fsm_decode +EXPORT_SYMBOL_GPL drivers/net/ethernet/qualcomm/qca_7k_common 0x41da0375 qcafrm_create_header +EXPORT_SYMBOL_GPL drivers/net/ethernet/stmicro/stmmac/stmmac 0x0c11f4a7 stmmac_dvr_probe +EXPORT_SYMBOL_GPL drivers/net/ethernet/stmicro/stmmac/stmmac 0x83059902 stmmac_suspend +EXPORT_SYMBOL_GPL drivers/net/ethernet/stmicro/stmmac/stmmac 0x92d778bb stmmac_get_mac_addr +EXPORT_SYMBOL_GPL drivers/net/ethernet/stmicro/stmmac/stmmac 0x9783e4f1 stmmac_dvr_remove +EXPORT_SYMBOL_GPL drivers/net/ethernet/stmicro/stmmac/stmmac 0xa7feea52 stmmac_resume +EXPORT_SYMBOL_GPL drivers/net/ethernet/stmicro/stmmac/stmmac 0xd1cc24db stmmac_set_mac_addr +EXPORT_SYMBOL_GPL drivers/net/ethernet/stmicro/stmmac/stmmac-platform 0x59a7265b stmmac_get_platform_resources +EXPORT_SYMBOL_GPL drivers/net/ethernet/stmicro/stmmac/stmmac-platform 0x6938ad3d stmmac_pltfr_pm_ops +EXPORT_SYMBOL_GPL drivers/net/ethernet/stmicro/stmmac/stmmac-platform 0xa16a9875 stmmac_probe_config_dt +EXPORT_SYMBOL_GPL drivers/net/ethernet/stmicro/stmmac/stmmac-platform 0xbadc8ccb stmmac_pltfr_remove +EXPORT_SYMBOL_GPL drivers/net/ethernet/stmicro/stmmac/stmmac-platform 0xf54d1284 stmmac_remove_config_dt +EXPORT_SYMBOL_GPL drivers/net/ethernet/wiznet/w5100 0x3dd6a905 w5100_ops_priv +EXPORT_SYMBOL_GPL drivers/net/ethernet/wiznet/w5100 0x88f6347a w5100_remove +EXPORT_SYMBOL_GPL drivers/net/ethernet/wiznet/w5100 0xccf19c55 w5100_probe +EXPORT_SYMBOL_GPL drivers/net/ethernet/wiznet/w5100 0xefa8a48b w5100_pm_ops +EXPORT_SYMBOL_GPL drivers/net/geneve 0x7aa5ea7b geneve_dev_create_fb +EXPORT_SYMBOL_GPL drivers/net/ipvlan/ipvlan 0x3a11bc70 ipvlan_count_rx +EXPORT_SYMBOL_GPL drivers/net/ipvlan/ipvlan 0x5b458669 ipvlan_link_register +EXPORT_SYMBOL_GPL drivers/net/ipvlan/ipvlan 0x8aa10889 ipvlan_link_delete +EXPORT_SYMBOL_GPL drivers/net/ipvlan/ipvlan 0x976e6d14 ipvlan_link_new +EXPORT_SYMBOL_GPL drivers/net/ipvlan/ipvlan 0xa3fed155 ipvlan_link_setup +EXPORT_SYMBOL_GPL drivers/net/macsec 0x257bc143 macsec_pn_wrapped +EXPORT_SYMBOL_GPL drivers/net/macvlan 0x0f79a8d6 macvlan_dellink +EXPORT_SYMBOL_GPL drivers/net/macvlan 0x945db8bc macvlan_common_setup +EXPORT_SYMBOL_GPL drivers/net/macvlan 0xa84c5cc6 macvlan_link_register +EXPORT_SYMBOL_GPL drivers/net/macvlan 0xf1d4623d macvlan_common_newlink +EXPORT_SYMBOL_GPL drivers/net/net_failover 0x96c383a7 net_failover_create +EXPORT_SYMBOL_GPL drivers/net/net_failover 0xec2d533d net_failover_destroy +EXPORT_SYMBOL_GPL drivers/net/phy/bcm-phy-lib 0x06128297 bcm_phy_cable_test_get_status +EXPORT_SYMBOL_GPL drivers/net/phy/bcm-phy-lib 0x0e405be9 bcm_phy_get_stats +EXPORT_SYMBOL_GPL drivers/net/phy/bcm-phy-lib 0x106bc6f6 bcm_phy_downshift_get +EXPORT_SYMBOL_GPL drivers/net/phy/bcm-phy-lib 0x18800d46 bcm_phy_enable_apd +EXPORT_SYMBOL_GPL drivers/net/phy/bcm-phy-lib 0x240a560b bcm_phy_cable_test_start +EXPORT_SYMBOL_GPL drivers/net/phy/bcm-phy-lib 0x3e982f06 bcm_phy_enable_jumbo +EXPORT_SYMBOL_GPL drivers/net/phy/bcm-phy-lib 0x64138c3e bcm_phy_r_rc_cal_reset +EXPORT_SYMBOL_GPL drivers/net/phy/bcm-phy-lib 0x670a37b3 bcm_phy_cable_test_get_status_rdb +EXPORT_SYMBOL_GPL drivers/net/phy/bcm-phy-lib 0x736b709c bcm_phy_read_misc +EXPORT_SYMBOL_GPL drivers/net/phy/bcm-phy-lib 0x7a25e817 bcm54xx_auxctl_read +EXPORT_SYMBOL_GPL drivers/net/phy/bcm-phy-lib 0x7d3e4095 bcm_phy_cable_test_start_rdb +EXPORT_SYMBOL_GPL drivers/net/phy/bcm-phy-lib 0x8500fdfe bcm_phy_write_shadow +EXPORT_SYMBOL_GPL drivers/net/phy/bcm-phy-lib 0x886bd83d __bcm_phy_read_rdb +EXPORT_SYMBOL_GPL drivers/net/phy/bcm-phy-lib 0x8a736c7f bcm_phy_write_misc +EXPORT_SYMBOL_GPL drivers/net/phy/bcm-phy-lib 0x936c5452 bcm_phy_read_rdb +EXPORT_SYMBOL_GPL drivers/net/phy/bcm-phy-lib 0x9bac0f20 __bcm_phy_write_rdb +EXPORT_SYMBOL_GPL drivers/net/phy/bcm-phy-lib 0x9bd50bbb bcm_phy_read_shadow +EXPORT_SYMBOL_GPL drivers/net/phy/bcm-phy-lib 0x9e1ff1f6 bcm_phy_get_strings +EXPORT_SYMBOL_GPL drivers/net/phy/bcm-phy-lib 0x9f01a769 bcm_phy_config_intr +EXPORT_SYMBOL_GPL drivers/net/phy/bcm-phy-lib 0xa35e5d74 bcm_phy_ack_intr +EXPORT_SYMBOL_GPL drivers/net/phy/bcm-phy-lib 0xaa449146 __bcm_phy_modify_exp +EXPORT_SYMBOL_GPL drivers/net/phy/bcm-phy-lib 0xafe8d763 bcm_phy_modify_rdb +EXPORT_SYMBOL_GPL drivers/net/phy/bcm-phy-lib 0xb3929c75 bcm_phy_modify_exp +EXPORT_SYMBOL_GPL drivers/net/phy/bcm-phy-lib 0xb63eda50 __bcm_phy_modify_rdb +EXPORT_SYMBOL_GPL drivers/net/phy/bcm-phy-lib 0xba18eb01 bcm_phy_write_rdb +EXPORT_SYMBOL_GPL drivers/net/phy/bcm-phy-lib 0xc0cd6f7c __bcm_phy_read_exp +EXPORT_SYMBOL_GPL drivers/net/phy/bcm-phy-lib 0xca727c6d bcm_phy_write_exp +EXPORT_SYMBOL_GPL drivers/net/phy/bcm-phy-lib 0xd0d73a3a bcm_phy_downshift_set +EXPORT_SYMBOL_GPL drivers/net/phy/bcm-phy-lib 0xd18507e9 bcm_phy_set_eee +EXPORT_SYMBOL_GPL drivers/net/phy/bcm-phy-lib 0xd30bc521 bcm_phy_28nm_a0b0_afe_config_init +EXPORT_SYMBOL_GPL drivers/net/phy/bcm-phy-lib 0xdbcae313 bcm_phy_read_exp +EXPORT_SYMBOL_GPL drivers/net/phy/bcm-phy-lib 0xebc6984c __bcm_phy_write_exp +EXPORT_SYMBOL_GPL drivers/net/phy/bcm-phy-lib 0xff7fa706 bcm_phy_get_sset_count +EXPORT_SYMBOL_GPL drivers/net/phy/mdio-i2c 0x08d6bdd0 mdio_i2c_alloc +EXPORT_SYMBOL_GPL drivers/net/phy/mdio-mux 0x1b1e02cf mdio_mux_init +EXPORT_SYMBOL_GPL drivers/net/phy/mdio-mux 0x6318757f mdio_mux_uninit +EXPORT_SYMBOL_GPL drivers/net/phy/mdio-xpcs 0xe68dc152 mdio_xpcs_get_ops +EXPORT_SYMBOL_GPL drivers/net/phy/phylink 0x05fc9c2b phylink_mii_c22_pcs_set_advertisement +EXPORT_SYMBOL_GPL drivers/net/phy/phylink 0x08213956 phylink_ethtool_get_wol +EXPORT_SYMBOL_GPL drivers/net/phy/phylink 0x1162b00e phylink_ethtool_ksettings_get +EXPORT_SYMBOL_GPL drivers/net/phy/phylink 0x12135396 phylink_mac_change +EXPORT_SYMBOL_GPL drivers/net/phy/phylink 0x15c4e3e2 phylink_ethtool_set_pauseparam +EXPORT_SYMBOL_GPL drivers/net/phy/phylink 0x2c8e28ee phylink_ethtool_get_eee +EXPORT_SYMBOL_GPL drivers/net/phy/phylink 0x2d83702a phylink_connect_phy +EXPORT_SYMBOL_GPL drivers/net/phy/phylink 0x44879ba7 phylink_create +EXPORT_SYMBOL_GPL drivers/net/phy/phylink 0x5738cf57 phylink_mii_c45_pcs_get_state +EXPORT_SYMBOL_GPL drivers/net/phy/phylink 0x57727285 phylink_ethtool_set_eee +EXPORT_SYMBOL_GPL drivers/net/phy/phylink 0x5f2848aa phylink_of_phy_connect +EXPORT_SYMBOL_GPL drivers/net/phy/phylink 0x5fb6b35f phylink_helper_basex_speed +EXPORT_SYMBOL_GPL drivers/net/phy/phylink 0x62104126 phylink_ethtool_set_wol +EXPORT_SYMBOL_GPL drivers/net/phy/phylink 0x6fa426d2 phylink_ethtool_nway_reset +EXPORT_SYMBOL_GPL drivers/net/phy/phylink 0x702914c6 phylink_mii_c22_pcs_an_restart +EXPORT_SYMBOL_GPL drivers/net/phy/phylink 0x7ff96960 phylink_mii_c22_pcs_get_state +EXPORT_SYMBOL_GPL drivers/net/phy/phylink 0x825c7340 phylink_get_eee_err +EXPORT_SYMBOL_GPL drivers/net/phy/phylink 0x86ff345f phylink_ethtool_ksettings_set +EXPORT_SYMBOL_GPL drivers/net/phy/phylink 0x911fcd6c phylink_start +EXPORT_SYMBOL_GPL drivers/net/phy/phylink 0x983276da phylink_disconnect_phy +EXPORT_SYMBOL_GPL drivers/net/phy/phylink 0xc1d15a4c phylink_set_port_modes +EXPORT_SYMBOL_GPL drivers/net/phy/phylink 0xdcb0a2c0 phylink_stop +EXPORT_SYMBOL_GPL drivers/net/phy/phylink 0xde66f4a7 phylink_mii_ioctl +EXPORT_SYMBOL_GPL drivers/net/phy/phylink 0xec02ebe0 phylink_init_eee +EXPORT_SYMBOL_GPL drivers/net/phy/phylink 0xee55b545 phylink_add_pcs +EXPORT_SYMBOL_GPL drivers/net/phy/phylink 0xf3083a1d phylink_destroy +EXPORT_SYMBOL_GPL drivers/net/phy/phylink 0xf8fe5642 phylink_ethtool_get_pauseparam +EXPORT_SYMBOL_GPL drivers/net/tap 0x09f9dabd tap_destroy_cdev +EXPORT_SYMBOL_GPL drivers/net/tap 0x0fb94c67 tap_get_minor +EXPORT_SYMBOL_GPL drivers/net/tap 0x3266a046 tap_get_ptr_ring +EXPORT_SYMBOL_GPL drivers/net/tap 0x4d970e2e tap_free_minor +EXPORT_SYMBOL_GPL drivers/net/tap 0x6b9f6c3b tap_get_socket +EXPORT_SYMBOL_GPL drivers/net/tap 0xaf8a2716 tap_queue_resize +EXPORT_SYMBOL_GPL drivers/net/tap 0xb511a857 tap_create_cdev +EXPORT_SYMBOL_GPL drivers/net/tap 0xbf8ac050 tap_handle_frame +EXPORT_SYMBOL_GPL drivers/net/tap 0xd970349b tap_del_queues +EXPORT_SYMBOL_GPL drivers/net/usb/cdc_ether 0x5a97abf1 usbnet_cdc_bind +EXPORT_SYMBOL_GPL drivers/net/usb/cdc_ether 0x78b0658d usbnet_cdc_unbind +EXPORT_SYMBOL_GPL drivers/net/usb/cdc_ether 0x912d2e64 usbnet_generic_cdc_bind +EXPORT_SYMBOL_GPL drivers/net/usb/cdc_ether 0x9cc76432 usbnet_cdc_status +EXPORT_SYMBOL_GPL drivers/net/usb/cdc_ether 0xb5671b94 usbnet_ether_cdc_bind +EXPORT_SYMBOL_GPL drivers/net/usb/cdc_ncm 0x00994558 cdc_ncm_unbind +EXPORT_SYMBOL_GPL drivers/net/usb/cdc_ncm 0x2a89238f cdc_ncm_change_mtu +EXPORT_SYMBOL_GPL drivers/net/usb/cdc_ncm 0x30f905b8 cdc_ncm_rx_verify_ndp32 +EXPORT_SYMBOL_GPL drivers/net/usb/cdc_ncm 0x49e4146c cdc_ncm_rx_verify_nth32 +EXPORT_SYMBOL_GPL drivers/net/usb/cdc_ncm 0x90079348 cdc_ncm_tx_fixup +EXPORT_SYMBOL_GPL drivers/net/usb/cdc_ncm 0x92483674 cdc_ncm_rx_fixup +EXPORT_SYMBOL_GPL drivers/net/usb/cdc_ncm 0xaeec81eb cdc_ncm_select_altsetting +EXPORT_SYMBOL_GPL drivers/net/usb/cdc_ncm 0xcaefff49 cdc_ncm_bind_common +EXPORT_SYMBOL_GPL drivers/net/usb/cdc_ncm 0xcc348b0b cdc_ncm_fill_tx_frame +EXPORT_SYMBOL_GPL drivers/net/usb/cdc_ncm 0xd8046953 cdc_ncm_rx_verify_ndp16 +EXPORT_SYMBOL_GPL drivers/net/usb/cdc_ncm 0xe46ab5a1 cdc_ncm_rx_verify_nth16 +EXPORT_SYMBOL_GPL drivers/net/usb/rndis_host 0x56f5a25c generic_rndis_bind +EXPORT_SYMBOL_GPL drivers/net/usb/rndis_host 0x683829ec rndis_unbind +EXPORT_SYMBOL_GPL drivers/net/usb/rndis_host 0xa1945ece rndis_rx_fixup +EXPORT_SYMBOL_GPL drivers/net/usb/rndis_host 0xa6799dcf rndis_status +EXPORT_SYMBOL_GPL drivers/net/usb/rndis_host 0xb39c64b8 rndis_command +EXPORT_SYMBOL_GPL drivers/net/usb/rndis_host 0xd2b2f090 rndis_tx_fixup +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0x0ecb5241 usbnet_read_cmd_nopm +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0x16185a7b usbnet_get_ethernet_addr +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0x2a2828f3 usbnet_write_cmd +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0x32009084 usbnet_status_stop +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0x35e0034b usbnet_disconnect +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0x393dcc48 usbnet_status_start +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0x4bfb7593 usbnet_get_link_ksettings +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0x53721d64 usbnet_write_cmd_nopm +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0x5733a026 usbnet_pause_rx +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0x5f7066be usbnet_defer_kevent +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0x66e92b47 usbnet_stop +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0x7585f273 usbnet_read_cmd +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0x7952355e usbnet_purge_paused_rxq +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0x80f6fc32 usbnet_get_link +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0x844c4303 usbnet_open +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0x85fb17ed usbnet_unlink_rx_urbs +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0x86e461c2 usbnet_write_cmd_async +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0x87e48fa0 usbnet_get_drvinfo +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0x8909c581 usbnet_skb_return +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0x8b1c28f6 usbnet_get_msglevel +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0x8f5f864d usbnet_set_msglevel +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0x8fe3bae3 usbnet_resume_rx +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0x92213888 usbnet_change_mtu +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0x9e0516c6 usbnet_suspend +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0xa63cc778 usbnet_set_link_ksettings +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0xa85b484f usbnet_get_endpoints +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0xa95a03d7 usbnet_tx_timeout +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0xac0be119 usbnet_update_max_qlen +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0xb023094b usbnet_resume +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0xb97e5e86 usbnet_start_xmit +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0xc458ee53 usbnet_nway_reset +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0xedfce339 usbnet_probe +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0xf5334916 usbnet_get_stats64 +EXPORT_SYMBOL_GPL drivers/net/vxlan 0x1cdeb9ac vxlan_fdb_find_uc +EXPORT_SYMBOL_GPL drivers/net/vxlan 0x3007f125 vxlan_dev_create +EXPORT_SYMBOL_GPL drivers/net/vxlan 0x4440dc80 vxlan_fdb_clear_offload +EXPORT_SYMBOL_GPL drivers/net/vxlan 0xca3728b6 vxlan_fdb_replay +EXPORT_SYMBOL_GPL drivers/net/wimax/i2400m/i2400m 0x0ca49fd5 i2400m_error_recovery +EXPORT_SYMBOL_GPL drivers/net/wimax/i2400m/i2400m 0x161fe7ff i2400m_post_reset +EXPORT_SYMBOL_GPL drivers/net/wimax/i2400m/i2400m 0x16e5c7aa i2400m_rx +EXPORT_SYMBOL_GPL drivers/net/wimax/i2400m/i2400m 0x2524d732 i2400m_netdev_setup +EXPORT_SYMBOL_GPL drivers/net/wimax/i2400m/i2400m 0x31c9b8f0 i2400m_setup +EXPORT_SYMBOL_GPL drivers/net/wimax/i2400m/i2400m 0x42bac144 i2400m_init +EXPORT_SYMBOL_GPL drivers/net/wimax/i2400m/i2400m 0x4e7ff29e i2400m_tx +EXPORT_SYMBOL_GPL drivers/net/wimax/i2400m/i2400m 0x5166eded i2400m_cmd_enter_powersave +EXPORT_SYMBOL_GPL drivers/net/wimax/i2400m/i2400m 0x8eba2c45 i2400m_dev_bootstrap +EXPORT_SYMBOL_GPL drivers/net/wimax/i2400m/i2400m 0x91829f0c i2400m_tx_msg_sent +EXPORT_SYMBOL_GPL drivers/net/wimax/i2400m/i2400m 0xb00b793c i2400m_bm_cmd_prepare +EXPORT_SYMBOL_GPL drivers/net/wimax/i2400m/i2400m 0xbd812d51 i2400m_reset +EXPORT_SYMBOL_GPL drivers/net/wimax/i2400m/i2400m 0xc5035dc1 i2400m_release +EXPORT_SYMBOL_GPL drivers/net/wimax/i2400m/i2400m 0xc61adcbe i2400m_dev_reset_handle +EXPORT_SYMBOL_GPL drivers/net/wimax/i2400m/i2400m 0xc7713095 i2400m_tx_msg_get +EXPORT_SYMBOL_GPL drivers/net/wimax/i2400m/i2400m 0xe08dd311 i2400m_pre_reset +EXPORT_SYMBOL_GPL drivers/net/wimax/i2400m/i2400m 0xf1efc51c i2400m_is_boot_barker +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/ipw2x00/libipw 0xca298247 libipw_rx_any +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x422b69e2 _il_grab_nic_access +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x9eabedba il_mac_tx_last_beacon +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlegacy/iwlegacy 0xacf5240c il_dealloc_bcast_stations +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlegacy/iwlegacy 0xb30551cd il_prep_station +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlegacy/iwlegacy 0xdf3d86b3 il_remove_station +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0x07e653b3 iwl_force_nmi +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0x08cd0db4 iwl_write_prph64_no_grab +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0x0b855f79 iwl_fw_lookup_notif_ver +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0x0cbdbb13 iwl_fw_dbg_stop_restart_recording +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0x0ffbab3a iwl_fw_dbg_stop_sync +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0x106da176 iwl_set_bits_mask_prph +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0x13057f34 iwl_fw_dbg_collect_desc +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0x229d8b26 iwl_init_notification_wait +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0x239acdb7 iwl_write32 +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0x2710c362 iwl_dump_desc_assert +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0x299ff930 iwl_trans_send_cmd +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0x34af2008 iwl_fw_error_print_fseq_regs +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0x35033c81 iwl_phy_db_free +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0x35307150 iwl_notification_wait +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0x35497e5c iwl_get_cmd_string +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0x360a4081 iwl_poll_bit +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0x388c28d5 iwl_clear_bits_prph +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0x3b4f9a53 iwl_phy_db_init +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0x3e79e9ba iwl_wait_notification +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0x3edbb18b iwl_write_prph_no_grab +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0x3f7c0416 iwl_dbg_tlv_del_timers +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0x52a81027 iwl_fw_runtime_init +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0x5b0f2cc8 iwl_read32 +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0x5b1d9423 iwl_set_soc_latency +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0x5c52e109 iwl_opmode_deregister +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0x5c98dca5 iwl_write64 +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0x5ea180dd iwl_free_fw_paging +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0x5ff1d016 iwl_dbg_tlv_time_point +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0x64a4cc50 iwl_fw_dbg_error_collect +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0x64f5dd58 iwl_parse_eeprom_data +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0x66644ed2 iwl_cmd_groups_verify_sorted +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0x68730bea iwl_poll_direct_bit +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0x6e4a86d9 iwl_notification_wait_init +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0x706d4cf5 iwl_write8 +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0x724e8822 iwl_remove_notification +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0x7307e077 iwl_abort_notification_waits +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0x776221bf iwl_send_phy_db_data +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0x7eccf31e __iwl_info +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0x84d21c53 iwl_read_prph_no_grab +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0x867bbfbc iwl_fw_runtime_resume +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0x8cb865d9 iwl_read_eeprom +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0x8ce0853d iwl_fw_dbg_collect +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0x956095c1 iwl_read_direct32 +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0x97c1872e iwl_init_paging +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0x9b596072 __iwl_crit +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0x9c94c2e3 iwl_set_bits_prph +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0xa01659bf __iwl_err +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0xa2007f8b iwl_get_nvm +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0xa353df28 iwl_fw_dbg_read_d3_debug_data +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0xa6111ab9 iwl_fw_runtime_suspend +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0xa70a5b81 iwl_fw_start_dbg_conf +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0xa985d658 iwl_get_shared_mem_conf +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0xa9f05394 iwlwifi_mod_params +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0xb2989efc iwl_write_direct64 +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0xb2e2335a iwl_write_prph +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0xbad38ea9 __iwl_warn +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0xc8960089 iwl_read_external_nvm +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0xcca91a41 iwl_finish_nic_init +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0xcd914e00 iwl_fw_lookup_cmd_ver +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0xcd9a8fee iwl_write_direct32 +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0xce0c6460 iwl_phy_db_set_section +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0xd278244e iwl_fw_dbg_collect_trig +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0xe416a602 iwl_parse_nvm_mcc_info +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0xe6010603 __iwl_dbg +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0xea1b26fc iwl_nvm_fixups +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0xee5f5e55 iwl_opmode_register +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0xee63436c iwl_parse_nvm_data +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0xffb3ad60 iwl_read_prph +EXPORT_SYMBOL_GPL drivers/net/wireless/intersil/p54/p54common 0x05a675a0 p54_parse_eeprom +EXPORT_SYMBOL_GPL drivers/net/wireless/intersil/p54/p54common 0x84efd5b5 p54_parse_firmware +EXPORT_SYMBOL_GPL drivers/net/wireless/intersil/p54/p54common 0x9ef66007 p54_free_common +EXPORT_SYMBOL_GPL drivers/net/wireless/intersil/p54/p54common 0xaae585e9 p54_read_eeprom +EXPORT_SYMBOL_GPL drivers/net/wireless/intersil/p54/p54common 0xcd2d85f6 p54_register_common +EXPORT_SYMBOL_GPL drivers/net/wireless/intersil/p54/p54common 0xdc1fc799 p54_free_skb +EXPORT_SYMBOL_GPL drivers/net/wireless/intersil/p54/p54common 0xf389cd6b p54_unregister_common +EXPORT_SYMBOL_GPL drivers/net/wireless/intersil/p54/p54common 0xf5872963 p54_init_common +EXPORT_SYMBOL_GPL drivers/net/wireless/intersil/p54/p54common 0xfef45265 p54_rx +EXPORT_SYMBOL_GPL drivers/net/wireless/marvell/libertas/libertas 0x21ae93ff lbs_get_firmware +EXPORT_SYMBOL_GPL drivers/net/wireless/marvell/libertas/libertas 0x34662fad lbs_host_to_card_done +EXPORT_SYMBOL_GPL drivers/net/wireless/marvell/libertas/libertas 0x38cc76ff lbs_cmd_copyback +EXPORT_SYMBOL_GPL drivers/net/wireless/marvell/libertas/libertas 0x3c2edbd8 lbs_resume +EXPORT_SYMBOL_GPL drivers/net/wireless/marvell/libertas/libertas 0x51a1ed3d lbs_stop_card +EXPORT_SYMBOL_GPL drivers/net/wireless/marvell/libertas/libertas 0x5fdf38b8 lbs_disablemesh +EXPORT_SYMBOL_GPL drivers/net/wireless/marvell/libertas/libertas 0x6597ed2c lbs_queue_event +EXPORT_SYMBOL_GPL drivers/net/wireless/marvell/libertas/libertas 0x8e0abe9a lbs_process_rxed_packet +EXPORT_SYMBOL_GPL drivers/net/wireless/marvell/libertas/libertas 0x8fdc7991 lbs_start_card +EXPORT_SYMBOL_GPL drivers/net/wireless/marvell/libertas/libertas 0x9c857373 __lbs_cmd +EXPORT_SYMBOL_GPL drivers/net/wireless/marvell/libertas/libertas 0xb14e793d lbs_send_tx_feedback +EXPORT_SYMBOL_GPL drivers/net/wireless/marvell/libertas/libertas 0xbbfcaf25 lbs_notify_command_response +EXPORT_SYMBOL_GPL drivers/net/wireless/marvell/libertas/libertas 0xbe794337 lbs_suspend +EXPORT_SYMBOL_GPL drivers/net/wireless/marvell/libertas/libertas 0xda690df3 lbs_remove_card +EXPORT_SYMBOL_GPL drivers/net/wireless/marvell/libertas/libertas 0xe187117e lbs_add_card +EXPORT_SYMBOL_GPL drivers/net/wireless/marvell/libertas/libertas 0xed06b6eb lbs_get_firmware_async +EXPORT_SYMBOL_GPL drivers/net/wireless/marvell/libertas/libertas 0xf64277de lbs_debug +EXPORT_SYMBOL_GPL drivers/net/wireless/marvell/libertas/libertas 0xfa31286c lbs_host_sleep_cfg +EXPORT_SYMBOL_GPL drivers/net/wireless/marvell/libertas_tf/libertas_tf 0x0840e6e2 lbtf_rx +EXPORT_SYMBOL_GPL drivers/net/wireless/marvell/libertas_tf/libertas_tf 0x3623da11 lbtf_send_tx_feedback +EXPORT_SYMBOL_GPL drivers/net/wireless/marvell/libertas_tf/libertas_tf 0x472d3998 lbtf_cmd_copyback +EXPORT_SYMBOL_GPL drivers/net/wireless/marvell/libertas_tf/libertas_tf 0x66d5f845 lbtf_bcn_sent +EXPORT_SYMBOL_GPL drivers/net/wireless/marvell/libertas_tf/libertas_tf 0x95e0bb4e lbtf_cmd_response_rx +EXPORT_SYMBOL_GPL drivers/net/wireless/marvell/libertas_tf/libertas_tf 0xaad1cff7 lbtf_add_card +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 0xe02bc5be lbtf_remove_card +EXPORT_SYMBOL_GPL drivers/net/wireless/marvell/libertas_tf/libertas_tf 0xe75cb91d __lbtf_cmd +EXPORT_SYMBOL_GPL drivers/net/wireless/marvell/mwifiex/mwifiex 0x1444ad74 mwifiex_upload_device_dump +EXPORT_SYMBOL_GPL drivers/net/wireless/marvell/mwifiex/mwifiex 0x1937b6d5 mwifiex_add_virtual_intf +EXPORT_SYMBOL_GPL drivers/net/wireless/marvell/mwifiex/mwifiex 0x226c785f mwifiex_queue_main_work +EXPORT_SYMBOL_GPL drivers/net/wireless/marvell/mwifiex/mwifiex 0x3fd6b4ea mwifiex_disable_auto_ds +EXPORT_SYMBOL_GPL drivers/net/wireless/marvell/mwifiex/mwifiex 0x44c7e0ee mwifiex_process_sleep_confirm_resp +EXPORT_SYMBOL_GPL drivers/net/wireless/marvell/mwifiex/mwifiex 0x4afa25c2 _mwifiex_dbg +EXPORT_SYMBOL_GPL drivers/net/wireless/marvell/mwifiex/mwifiex 0x4ef25cfb mwifiex_shutdown_sw +EXPORT_SYMBOL_GPL drivers/net/wireless/marvell/mwifiex/mwifiex 0x57dfded9 mwifiex_init_shutdown_fw +EXPORT_SYMBOL_GPL drivers/net/wireless/marvell/mwifiex/mwifiex 0x59118407 mwifiex_main_process +EXPORT_SYMBOL_GPL drivers/net/wireless/marvell/mwifiex/mwifiex 0x67361c38 mwifiex_handle_rx_packet +EXPORT_SYMBOL_GPL drivers/net/wireless/marvell/mwifiex/mwifiex 0x7f826733 mwifiex_del_virtual_intf +EXPORT_SYMBOL_GPL drivers/net/wireless/marvell/mwifiex/mwifiex 0x82e9e776 mwifiex_remove_card +EXPORT_SYMBOL_GPL drivers/net/wireless/marvell/mwifiex/mwifiex 0x862f6933 mwifiex_process_hs_config +EXPORT_SYMBOL_GPL drivers/net/wireless/marvell/mwifiex/mwifiex 0x8a089031 mwifiex_fw_dump_event +EXPORT_SYMBOL_GPL drivers/net/wireless/marvell/mwifiex/mwifiex 0x8dcbd5a9 mwifiex_drv_info_dump +EXPORT_SYMBOL_GPL drivers/net/wireless/marvell/mwifiex/mwifiex 0xa0a8dd35 mwifiex_reinit_sw +EXPORT_SYMBOL_GPL drivers/net/wireless/marvell/mwifiex/mwifiex 0xa4ee98ec mwifiex_enable_hs +EXPORT_SYMBOL_GPL drivers/net/wireless/marvell/mwifiex/mwifiex 0xadc452bb mwifiex_prepare_fw_dump_info +EXPORT_SYMBOL_GPL drivers/net/wireless/marvell/mwifiex/mwifiex 0xb098a783 mwifiex_add_card +EXPORT_SYMBOL_GPL drivers/net/wireless/marvell/mwifiex/mwifiex 0xbb6d9472 mwifiex_cancel_hs +EXPORT_SYMBOL_GPL drivers/net/wireless/marvell/mwifiex/mwifiex 0xd31890e0 mwifiex_write_data_complete +EXPORT_SYMBOL_GPL drivers/net/wireless/marvell/mwifiex/mwifiex 0xd4dad9f3 mwifiex_alloc_dma_align_buf +EXPORT_SYMBOL_GPL drivers/net/wireless/marvell/mwifiex/mwifiex 0xdac45112 mwifiex_dnld_fw +EXPORT_SYMBOL_GPL drivers/net/wireless/marvell/mwifiex/mwifiex 0xf057f941 mwifiex_multi_chan_resync +EXPORT_SYMBOL_GPL drivers/net/wireless/marvell/mwifiex/mwifiex 0xf63395c4 mwifiex_deauthenticate_all +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0x00970930 mt76_sta_state +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0x035710cf mt76_csa_check +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0x04512b60 mt76_wake_tx_queue +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0x0a2c8e3f mt76_tx_status_unlock +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0x0b2848b4 mt76_release_buffered_frames +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0x0b7c5897 mt76_unregister_phy +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0x0df71683 mt76_rx_poll_complete +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0x0e6bfb97 mt76_update_survey +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0x1519f88e mt76_set_irq_mask +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0x1832f43b mt76_put_txwi +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0x186a4d6d mt76_get_survey +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0x1a401c0c mt76_tx_status_skb_done +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0x1c1f2e3c mt76_insert_ccmp_hdr +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0x1e622dda mt76_set_stream_caps +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0x22139e87 mt76_get_txpower +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0x2346bb3b mt76_tx_status_lock +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0x29049c0e mt76_mcu_rx_event +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0x2a128ce3 mt76_alloc_phy +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0x2e96d0e9 mt76_get_rate +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0x2ebc0c6a mt76_set_tim +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0x30e1cfb6 mt76_alloc_device +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0x44f165af mt76_tx_status_skb_get +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0x50d014b4 __mt76_poll_msec +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0x55e8bf65 mt76_register_phy +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0x583a3e69 __tracepoint_mac_txdone +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0x5ef77fd9 mt76_sw_scan_complete +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0x5ffc01e2 mt76_free_device +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0x61c29a41 mt76_register_device +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0x63f717f0 mt76_txq_remove +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0x74e30e3b mt76_pci_disable_aspm +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0x76d2ba5e mt76_rx +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0x7ae796a5 mt76_mcu_get_response +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0x83c92351 mt76_stop_tx_queues +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0x86998336 mt76_rx_aggr_start +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0x86de7b22 mt76_txq_schedule +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0x89107ca0 mt76_sta_pre_rcu_remove +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0x93656f10 mt76_dma_attach +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0x9d66a5f1 __mt76_poll +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0xa0557fe4 mt76_eeprom_override +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0xa263d8b6 __mt76_sta_remove +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0xa3388f9a mt76_sw_scan +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0xafd46747 mt76_csa_finish +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0xb2cfc692 mt76_mcu_msg_alloc +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0xb2de06c0 mt76_dma_cleanup +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0xb3f3a19b mt76_has_tx_pending +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0xc03df8d0 mt76_tx_status_check +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0xc6634315 mt76_ac_to_hwq +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0xc6d8b912 mt76_tx_status_skb_add +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0xc751b34f mt76_unregister_device +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0xca69b364 mt76_tx_complete_skb +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0xcca6075e mt76_rx_aggr_stop +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0xd01e5d32 mt76_txq_init +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0xd13a8057 mt76_get_min_avg_rssi +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0xd4e190d6 mt76_queues_read +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0xda076e95 __tracepoint_dev_irq +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0xda37c4a1 mt76_txq_schedule_all +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0xdc183395 mt76_eeprom_init +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0xe182c14f mt76_register_debugfs +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0xe40b66ef mt76_wcid_alloc +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0xe863cafe mt76_get_antenna +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0xed23ac2a mt76_mmio_init +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0xfacaa152 mt76_set_channel +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0xfb38f6c9 mt76_seq_puts_array +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0xfd4fe915 mt76_tx +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76-usb 0x101b5a04 mt76u_alloc_mcu_queue +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76-usb 0x1b3b0370 mt76u_deinit +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76-usb 0x281c0ac0 mt76u_stop_tx +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76-usb 0x479d0056 mt76u_stop_rx +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76-usb 0x5bf18cd5 mt76u_alloc_queues +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76-usb 0x5f176455 mt76u_init +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76-usb 0x6dc1b4d8 mt76u_resume_rx +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76-usb 0x7d287304 mt76u_vendor_request +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76-usb 0x8ea332ff mt76u_skb_dma_info +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76-usb 0xa97a604c mt76u_single_wr +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76-usb 0xbd0beeac mt76u_queues_deinit +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt7615/mt7615-common 0x057c4d49 mt7615_rates +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt7615/mt7615-common 0x05826563 mt7615_queue_rx_skb +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt7615/mt7615-common 0x07b3874d mt7615_init_debugfs +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt7615/mt7615-common 0x0d841f31 mt7615_mcu_restart +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt7615/mt7615-common 0x19ab4ac8 mt7615_mcu_msg_send +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt7615/mt7615-common 0x1cf3855a mt7615_mcu_exit +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt7615/mt7615-common 0x1e43f78e mt7615_init_txpower +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt7615/mt7615-common 0x20069c87 mt7615_unregister_ext_phy +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt7615/mt7615-common 0x228ed414 mt7615_mac_init +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt7615/mt7615-common 0x37cc167e mt7615_driver_own +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt7615/mt7615-common 0x4bdf5637 mt7615_wait_for_mcu_init +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt7615/mt7615-common 0x569cad0f mt7615_init_device +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt7615/mt7615-common 0x5b2d5519 mt7615_firmware_own +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt7615/mt7615-common 0x69bba9f5 __mt7663_load_firmware +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt7615/mt7615-common 0x70cab90c mt7615_mcu_wait_response +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt7615/mt7615-common 0x7e992cbb mt7615_mac_wtbl_update_pk +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt7615/mt7615-common 0x82087f80 mt7615_mcu_del_wtbl_all +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt7615/mt7615-common 0x84c31d80 mt7615_sta_ps +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt7615/mt7615-common 0x874bbb07 mt7615_mcu_set_hif_suspend +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt7615/mt7615-common 0x9137d94a mt7615_mac_wtbl_update_cipher +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt7615/mt7615-common 0x931dd52b mt7615_mac_write_txwi +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt7615/mt7615-common 0x9ae08e44 mt7615_mcu_init +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt7615/mt7615-common 0xa9c168a7 mt7615_eeprom_init +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt7615/mt7615-common 0xad844e89 mt7615_mcu_set_eeprom +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt7615/mt7615-common 0xb2023d35 mt7615_mac_sta_poll +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt7615/mt7615-common 0xb88facb2 mt7615_mac_wtbl_update_key +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt7615/mt7615-common 0xbced2ceb mt7615_register_ext_phy +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt7615/mt7615-common 0xc89a94ff mt7615_mac_set_rates +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt7615/mt7615-common 0xceb55472 mt7615_ops +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt7615/mt7615-common 0xd09c25fc mt7615_mcu_fill_msg +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt7615/mt7615-common 0xd430e8e5 mt7615_dma_reset +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt7615/mt7615-common 0xd86231fc mt7615_mac_sta_add +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt7615/mt7615-common 0xd9ebb13e mt7615_phy_init +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt7615/mt7615-common 0xdab9825e mt7615_update_channel +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt7615/mt7615-common 0xdb9af047 mt7615_check_offload_capability +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt7615/mt7615-common 0xdc9a4ebd mt7615_mac_sta_remove +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt7615/mt7615-common 0xeea24dea mt7615_txp_skb_unmap +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x0/mt76x0-common 0x107b9b02 mt76x0_mac_stop +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x0/mt76x0-common 0x1d09b284 mt76x0_register_device +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x0/mt76x0-common 0x1fcf1f29 mt76x0_chip_onoff +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x0/mt76x0-common 0x63856923 mt76x0_config +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x0/mt76x0-common 0x81a495af mt76x0_init_hardware +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x0/mt76x0-common 0xc6affa18 mt76x0_phy_calibrate +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0x008bba40 mt76x02_ext_pa_enabled +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0x02111d54 mt76x02_phy_set_bw +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0x0462ce68 mt76x02_add_rate_power_offset +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0x095d4f63 mt76x02_sta_add +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0x0d4023ec mt76x02_get_max_rate_power +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0x0d61ddd8 mt76x02_update_beacon_iter +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0x0df8471e mt76x02_dma_init +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0x0fb439c0 mt76x02_ampdu_action +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0x12877abc mt76x02_tx +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0x150c8698 mt76x02_mac_set_beacon +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0x170df291 mt76x02_sw_scan_complete +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0x1b959184 mt76x02_set_rts_threshold +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0x1d6ab0a8 mt76x02_get_efuse_data +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0x214c8705 mt76x02_mcu_msg_send +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0x2272268d mt76x02_init_device +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0x2d731f97 mt76x02_set_key +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0x2f681f7e mt76x02_set_tx_ackto +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0x35d2834d mt76x02_limit_rate_power +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0x395c20d9 mt76x02_init_agc_gain +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0x3a16c3f3 mt76x02_mcu_calibrate +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0x4642f8a5 mt76x02_init_beacon_config +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0x4f6942d1 mt76x02_get_lna_gain +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0x500b9d2a mt76x02_configure_filter +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0x5084092f mt76x02_bss_info_changed +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0x518e01a9 mt76x02_phy_adjust_vga_gain +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0x53da8f7b mt76x02_phy_set_txpower +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0x55274746 mt76x02_remove_hdr_pad +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0x56e2a747 mt76x02_tx_status_data +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0x58b2db0d mt76x02_phy_dfs_adjust_agc +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0x5aedbff2 mt76x02_enqueue_buffered_bc +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0x5bd84fd5 mt76x02_rates +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0x66791876 mt76x02_mac_reset_counters +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0x66ef4fc9 mt76x02_conf_tx +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0x67df8add mt76x02_init_debugfs +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0x683fa38e mt76x02_dma_disable +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0x693b117c mt76x02_tx_set_txpwr_auto +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0x6bc427ca mt76x02_reconfig_complete +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0x6c1a0ae7 mt76x02_remove_interface +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0x745f3f88 mt76x02_mac_start +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0x76bfe051 mt76x02_mac_write_txwi +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0x76fcb321 mt76x02_dma_cleanup +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0x779cad65 mt76x02_mac_shared_key_setup +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0x7ca8e02f mt76x02_config_mac_addr_list +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0x7eec3ab2 mt76x02_eeprom_parse_hw_cap +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0x7f889cde mt76x02_mac_setaddr +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0x8297f65d mt76x02_sta_rate_tbl_update +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0x8fe86c00 mt76x02_set_coverage_class +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0x9013077f mt76x02_mcu_cleanup +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0x91d5b9ee mt76x02_irq_handler +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0xa0e47954 mt76x02_phy_set_band +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0xa47c47b1 mt76x02_update_channel +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0xa4bf9382 mt76x02_add_interface +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0xa87bd906 mt76x02_mcu_set_radio_state +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0xaacc24a5 mt76x02_phy_set_rxpath +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0xaecc093d mt76x02_rx_poll_complete +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0xb164e1a3 mt76x02_sta_ps +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0xbade01a3 mt76x02_tx_complete_skb +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0xbddb4040 mt76x02_resync_beacon_timer +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0xbef2c33f mt76x02_mac_wcid_setup +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0xc746a31a mt76x02_sta_remove +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0xdcfbdb8e mt76x02e_init_beacon_config +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0xe10ce633 mt76x02_dfs_init_params +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0xe4de878f mt76x02_queue_rx_skb +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0xe4fc38d1 mt76x02_set_ethtool_fwver +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0xe5211596 mt76x02_tx_prepare_skb +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0xebb790e2 mt76x02_mac_cc_reset +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0xebf83ee3 mt76x02_phy_set_txdac +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0xede24ee9 mt76x02_eeprom_copy +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0xf186a61d mt76x02_edcca_init +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0xf228419d mt76x02_mcu_function_select +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0xf8d2b2ec mt76x02_get_rx_gain +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-usb 0x0f7717fd mt76x02u_init_beacon_config +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-usb 0x1a63b71a mt76x02u_init_mcu +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-usb 0x483d7ca1 mt76x02u_tx_complete_skb +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-usb 0x5e4ef605 mt76x02u_mcu_fw_send_data +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-usb 0x666e3f63 mt76x02u_tx_prepare_skb +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-usb 0x842c1314 mt76x02u_mcu_fw_reset +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-usb 0xbb6ee811 mt76x02u_mac_start +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-usb 0xd07d8bf7 mt76x02u_exit_beacon_config +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x2/mt76x2-common 0x1950dc9f mt76x2_eeprom_init +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x2/mt76x2-common 0x1cdbb31f mt76x2_mcu_load_cr +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x2/mt76x2-common 0x244e8589 mt76x2_apply_gain_adj +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x2/mt76x2-common 0x25446bf4 mt76x2_configure_tx_delay +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x2/mt76x2-common 0x296b227e mt76x2_mcu_init_gain +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x2/mt76x2-common 0x2ba74faf mt76x2_phy_set_txpower_regs +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x2/mt76x2-common 0x301e0dbc mt76x2_mcu_set_channel +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x2/mt76x2-common 0x36a27eea mt76x2_mcu_tssi_comp +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x2/mt76x2-common 0x6aa78d4d mt76x2_mac_stop +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x2/mt76x2-common 0x8e2ecf79 mt76x2_read_rx_gain +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x2/mt76x2-common 0xa34b4c0c mt76x2_get_rate_power +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x2/mt76x2-common 0xa6aa7ad5 mt76x2_phy_tssi_compensate +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x2/mt76x2-common 0xb44c7626 mt76x2_phy_set_txpower +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x2/mt76x2-common 0xb957d870 mt76x2_reset_wlan +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x2/mt76x2-common 0xc26e7517 mt76_write_mac_initvals +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x2/mt76x2-common 0xe400e236 mt76x2_phy_update_channel_gain +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x2/mt76x2-common 0xfa050856 mt76x2_init_txpower +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x2/mt76x2-common 0xfa86f7bc mt76x2_get_power_info +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x2/mt76x2-common 0xfb3ab09b mt76x2_get_temp_comp +EXPORT_SYMBOL_GPL drivers/net/wireless/quantenna/qtnfmac/qtnfmac 0x2ade9fb8 qtnf_update_rx_stats +EXPORT_SYMBOL_GPL drivers/net/wireless/quantenna/qtnfmac/qtnfmac 0x31fab83c qtnf_chipid_to_string +EXPORT_SYMBOL_GPL drivers/net/wireless/quantenna/qtnfmac/qtnfmac 0x4092df0e qtnf_get_debugfs_dir +EXPORT_SYMBOL_GPL drivers/net/wireless/quantenna/qtnfmac/qtnfmac 0x771a9068 qtnf_classify_skb +EXPORT_SYMBOL_GPL drivers/net/wireless/quantenna/qtnfmac/qtnfmac 0xa103e007 qtnf_trans_handle_rx_ctl_packet +EXPORT_SYMBOL_GPL drivers/net/wireless/quantenna/qtnfmac/qtnfmac 0xa6834b92 qtnf_wake_all_queues +EXPORT_SYMBOL_GPL drivers/net/wireless/quantenna/qtnfmac/qtnfmac 0xcef48b26 qtnf_core_attach +EXPORT_SYMBOL_GPL drivers/net/wireless/quantenna/qtnfmac/qtnfmac 0xe8c47dc9 qtnf_update_tx_stats +EXPORT_SYMBOL_GPL drivers/net/wireless/quantenna/qtnfmac/qtnfmac 0xeca4d70e qtnf_core_detach +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2800lib 0x061ed889 rt2800_wait_wpdma_ready +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2800lib 0x06b10d0e rt2800_config_filter +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2800lib 0x08f4cfbd rt2800_config_erp +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2800lib 0x107f4311 rt2800_link_tuner +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2800lib 0x19c43c07 rt2800_txstatus_timeout +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2800lib 0x214b7d99 rt2800_efuse_detect +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2800lib 0x2de49690 rt2800_link_stats +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2800lib 0x2e2c6cd2 rt2800_txstatus_pending +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2800lib 0x40cb95b0 rt2800_reset_tuner +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2800lib 0x4185f67a rt2800_clear_beacon +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2800lib 0x443fcc7f rt2800_txdone_nostatus +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2800lib 0x469ca260 rt2800_gain_calibration +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2800lib 0x4aed489c rt2800_txdone_entry +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2800lib 0x4ccb76c2 rt2800_get_survey +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2800lib 0x6540cac4 rt2800_config_ant +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2800lib 0x67ac3cca rt2800_write_tx_data +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2800lib 0x695fc468 rt2800_process_rxwi +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2800lib 0x774efbfe rt2800_sta_remove +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2800lib 0x7be813e0 rt2800_conf_tx +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2800lib 0x7d2460fa rt2800_check_firmware +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2800lib 0x7d4fe423 rt2800_load_firmware +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2800lib 0x8480c2ec rt2800_ampdu_action +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2800lib 0x8ae9c0bf rt2800_get_txwi_rxwi_size +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2800lib 0x8f0ca780 rt2800_watchdog +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2800lib 0x912abe8c rt2800_vco_calibration +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2800lib 0x9aefff77 rt2800_write_beacon +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2800lib 0xa13e2678 rt2800_set_rts_threshold +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2800lib 0xa1a1e020 rt2800_enable_radio +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2800lib 0xa2904a6d rt2800_config_shared_key +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2800lib 0xa3faa733 rt2800_sta_add +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2800lib 0xa8a2d5d4 rt2800_config_intf +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2800lib 0xaa08f3c2 rt2800_disable_wpdma +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2800lib 0xbd886917 rt2800_read_eeprom_efuse +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2800lib 0xc1e04e1c rt2800_txdone +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2800lib 0xc4ce0310 rt2800_get_key_seq +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2800lib 0xdfec5273 rt2800_config_pairwise_key +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2800lib 0xe265a68b rt2800_wait_csr_ready +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2800lib 0xe3b905fa rt2800_probe_hw +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2800lib 0xe653d2c4 rt2800_mcu_request +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2800lib 0xe6f910e8 rt2800_get_tsf +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2800lib 0xf69c5315 rt2800_disable_radio +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2800lib 0xf94da66a rt2800_rfkill_poll +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2800lib 0xfd49216c rt2800_config +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2800lib 0xff9e0b60 rt2800_pre_reset_hw +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2800mmio 0x0fad1430 rt2800mmio_pretbtt_tasklet +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2800mmio 0x10382f5c rt2800mmio_init_registers +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2800mmio 0x18133885 rt2800mmio_probe_hw +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2800mmio 0x2505789d rt2800mmio_tbtt_tasklet +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2800mmio 0x2e4d8806 rt2800mmio_flush_queue +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2800mmio 0x5fa4db64 rt2800mmio_interrupt +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2800mmio 0x737bf7dd rt2800mmio_fill_rxdone +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2800mmio 0x7ad1b5b5 rt2800mmio_clear_entry +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2800mmio 0x84728f6a rt2800mmio_kick_queue +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2800mmio 0x92c0bcd1 rt2800mmio_rxdone_tasklet +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2800mmio 0x9f579d66 rt2800mmio_start_queue +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2800mmio 0xa434777b rt2800mmio_get_entry_state +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2800mmio 0xada6f43d rt2800mmio_stop_queue +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2800mmio 0xb575b0ab rt2800mmio_toggle_irq +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2800mmio 0xbd11069f rt2800mmio_write_tx_desc +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2800mmio 0xbdaada00 rt2800mmio_init_queues +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2800mmio 0xc0c959de rt2800mmio_enable_radio +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2800mmio 0xc6a1455e rt2800mmio_autowake_tasklet +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2800mmio 0xd38b5d58 rt2800mmio_get_dma_done +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2800mmio 0xe28f94c7 rt2800mmio_txstatus_tasklet +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2800mmio 0xe41b4058 rt2800mmio_get_txwi +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2800mmio 0xea738f93 rt2800mmio_queue_init +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00lib 0x07e55194 rt2x00mac_bss_info_changed +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00lib 0x0b23e279 rt2x00mac_flush +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00lib 0x10f7cb5b rt2x00mac_rfkill_poll +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00lib 0x16b7312b rt2x00mac_set_antenna +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00lib 0x19d3dfd3 rt2x00mac_conf_tx +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00lib 0x1e22e45d rt2x00lib_txdone_nomatch +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00lib 0x237abfd2 rt2x00lib_pretbtt +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00lib 0x280f1c66 rt2x00queue_stop_queue +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00lib 0x29b98b5a rt2x00mac_reconfig_complete +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00lib 0x2c710b6e rt2x00mac_configure_filter +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00lib 0x3c7b2c0b rt2x00queue_start_queues +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00lib 0x41bce708 rt2x00mac_set_tim +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00lib 0x48fa4273 rt2x00queue_unpause_queue +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00lib 0x515bf022 rt2x00queue_flush_queue +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00lib 0x55a23b5b rt2x00mac_stop +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00lib 0x58425667 rt2x00queue_map_txskb +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00lib 0x5e049771 rt2x00queue_get_entry +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00lib 0x60da27a3 rt2x00lib_dmastart +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00lib 0x623fb391 rt2x00mac_tx +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00lib 0x636bbcf2 rt2x00queue_start_queue +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00lib 0x647820e4 rt2x00lib_set_mac_address +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00lib 0x684a10dc rt2x00lib_txdone +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00lib 0x7369434f rt2x00queue_flush_queues +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00lib 0x740f6967 rt2x00queue_unmap_skb +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00lib 0x75893224 rt2x00mac_get_antenna +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00lib 0x791c551d rt2x00mac_get_stats +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00lib 0x7ec90c2f rt2x00lib_get_bssidx +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00lib 0x834ea77a rt2x00mac_remove_interface +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00lib 0x8fa00235 rt2x00mac_sw_scan_start +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00lib 0x9019a7f1 rt2x00lib_resume +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00lib 0x926a8b0f rt2x00queue_pause_queue +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00lib 0x9721bd76 rt2x00queue_for_each_entry +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00lib 0xa7ea31b3 rt2x00lib_txdone_noinfo +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00lib 0xac6ad8b0 rt2x00lib_dmadone +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00lib 0xb5b08c53 rt2x00lib_probe_dev +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00lib 0xb6733cff rt2x00lib_suspend +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00lib 0xc5abc2b1 rt2x00mac_add_interface +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00lib 0xcb521ff6 rt2x00queue_stop_queues +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00lib 0xd2d6e3d9 rt2x00lib_remove_dev +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00lib 0xd5d50c44 rt2x00mac_start +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00lib 0xd903f989 rt2x00lib_beacondone +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00lib 0xdbc727a3 rt2x00mac_tx_frames_pending +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00lib 0xe2dac73b rt2x00lib_rxdone +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00lib 0xe940c415 rt2x00mac_get_ringparam +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00lib 0xf03aa1f6 rt2x00mac_set_key +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00lib 0xf8595f0c rt2x00mac_sw_scan_complete +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00lib 0xfe42266c rt2x00mac_config +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00mmio 0x55333540 rt2x00mmio_rxdone +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00mmio 0x595495fb rt2x00mmio_regbusy_read +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00mmio 0x873a1eba rt2x00mmio_initialize +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00mmio 0x92db7dac rt2x00mmio_flush_queue +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00mmio 0xecea88d0 rt2x00mmio_uninitialize +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00pci 0x0ce59735 rt2x00pci_suspend +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00pci 0x1d8835e6 rt2x00pci_remove +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00pci 0x517772e5 rt2x00pci_probe +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00pci 0x6a2bd995 rt2x00pci_resume +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00usb 0x005ddc35 rt2x00usb_initialize +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00usb 0x36dd49ed rt2x00usb_suspend +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00usb 0x4beea8c3 rt2x00usb_vendor_request +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00usb 0x5e0be0cd rt2x00usb_watchdog +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00usb 0x6d7e2f00 rt2x00usb_probe +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00usb 0x9484eda1 rt2x00usb_kick_queue +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00usb 0x9ef70bdc rt2x00usb_register_read_async +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00usb 0xa787952e rt2x00usb_resume +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00usb 0xa84b0d11 rt2x00usb_vendor_req_buff_lock +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00usb 0xb50fbaed rt2x00usb_regbusy_read +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00usb 0xb683e32d rt2x00usb_flush_queue +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00usb 0xcd504db2 rt2x00usb_disable_radio +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00usb 0xd8a51bfe rt2x00usb_vendor_request_buff +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00usb 0xe2f60d9c rt2x00usb_disconnect +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00usb 0xe51f9916 rt2x00usb_uninitialize +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00usb 0xf163abb2 rt2x00usb_clear_entry +EXPORT_SYMBOL_GPL drivers/net/wireless/realtek/rtlwifi/rtl8192c/rtl8192c-common 0x065da122 dm_writepowerindex +EXPORT_SYMBOL_GPL drivers/net/wireless/realtek/rtlwifi/rtl8192c/rtl8192c-common 0x30325b8e dm_restorepowerindex +EXPORT_SYMBOL_GPL drivers/net/wireless/realtek/rtlwifi/rtl8192c/rtl8192c-common 0x48e57102 dm_savepowerindex +EXPORT_SYMBOL_GPL drivers/net/wireless/realtek/rtlwifi/rtl8192c/rtl8192c-common 0x7c4dd7ee rtl92c_set_p2p_ps_offload_cmd +EXPORT_SYMBOL_GPL drivers/net/wireless/realtek/rtlwifi/rtl8723com/rtl8723-common 0x03920ef2 rtl8723_phy_init_bb_rf_reg_def +EXPORT_SYMBOL_GPL drivers/net/wireless/realtek/rtlwifi/rtl8723com/rtl8723-common 0x2d0402c8 rtl8723be_firmware_selfreset +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 0x452b8a9d rtl8723_phy_txpwr_idx_to_dbm +EXPORT_SYMBOL_GPL drivers/net/wireless/realtek/rtlwifi/rtl8723com/rtl8723-common 0x4787de69 rtl8723_phy_reload_mac_registers +EXPORT_SYMBOL_GPL drivers/net/wireless/realtek/rtlwifi/rtl8723com/rtl8723-common 0x4a26ed32 rtl8723_cmd_send_packet +EXPORT_SYMBOL_GPL drivers/net/wireless/realtek/rtlwifi/rtl8723com/rtl8723-common 0x515b8036 rtl8723_phy_set_bb_reg +EXPORT_SYMBOL_GPL drivers/net/wireless/realtek/rtlwifi/rtl8723com/rtl8723-common 0x515fc5c6 rtl8723_phy_rf_serial_read +EXPORT_SYMBOL_GPL drivers/net/wireless/realtek/rtlwifi/rtl8723com/rtl8723-common 0x6bc8af30 rtl8723_phy_query_bb_reg +EXPORT_SYMBOL_GPL drivers/net/wireless/realtek/rtlwifi/rtl8723com/rtl8723-common 0x6d9b5eae rtl8723_dm_init_dynamic_txpower +EXPORT_SYMBOL_GPL drivers/net/wireless/realtek/rtlwifi/rtl8723com/rtl8723-common 0x7fce59bb rtl8723_dm_init_dynamic_bb_powersaving +EXPORT_SYMBOL_GPL drivers/net/wireless/realtek/rtlwifi/rtl8723com/rtl8723-common 0x884388c8 rtl8723_fw_free_to_go +EXPORT_SYMBOL_GPL drivers/net/wireless/realtek/rtlwifi/rtl8723com/rtl8723-common 0x8a11c844 rtl8723_phy_rf_serial_write +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 0x8f70e90b rtl8723_write_fw +EXPORT_SYMBOL_GPL drivers/net/wireless/realtek/rtlwifi/rtl8723com/rtl8723-common 0x93b2904e rtl8723_save_adda_registers +EXPORT_SYMBOL_GPL drivers/net/wireless/realtek/rtlwifi/rtl8723com/rtl8723-common 0x9b5b2960 rtl8723_download_fw +EXPORT_SYMBOL_GPL drivers/net/wireless/realtek/rtlwifi/rtl8723com/rtl8723-common 0xae40730f rtl8723_phy_path_a_fill_iqk_matrix +EXPORT_SYMBOL_GPL drivers/net/wireless/realtek/rtlwifi/rtl8723com/rtl8723-common 0xafdc6ff5 rtl8723_phy_pi_mode_switch +EXPORT_SYMBOL_GPL drivers/net/wireless/realtek/rtlwifi/rtl8723com/rtl8723-common 0xb33cdb50 rtl8723_phy_save_mac_registers +EXPORT_SYMBOL_GPL drivers/net/wireless/realtek/rtlwifi/rtl8723com/rtl8723-common 0xb3cce81c rtl8723_phy_path_a_standby +EXPORT_SYMBOL_GPL drivers/net/wireless/realtek/rtlwifi/rtl8723com/rtl8723-common 0xb8b59eb9 rtl8723_enable_fw_download +EXPORT_SYMBOL_GPL drivers/net/wireless/realtek/rtlwifi/rtl8723com/rtl8723-common 0xc97c90de rtl8723_phy_mac_setting_calibration +EXPORT_SYMBOL_GPL drivers/net/wireless/realtek/rtlwifi/rtl8723com/rtl8723-common 0xdf4fd9c8 rtl8723_phy_path_adda_on +EXPORT_SYMBOL_GPL drivers/net/wireless/realtek/rtlwifi/rtl8723com/rtl8723-common 0xec591a60 rtl8723_phy_reload_adda_registers +EXPORT_SYMBOL_GPL drivers/net/wireless/realtek/rtlwifi/rtl8723com/rtl8723-common 0xf118ab08 rtl8723ae_firmware_selfreset +EXPORT_SYMBOL_GPL drivers/net/wireless/realtek/rtlwifi/rtl8723com/rtl8723-common 0xfc626c3d rtl8723_dm_init_edca_turbo +EXPORT_SYMBOL_GPL drivers/net/wireless/realtek/rtlwifi/rtlwifi 0x049b6c63 rtl_init_rx_config +EXPORT_SYMBOL_GPL drivers/net/wireless/realtek/rtlwifi/rtlwifi 0x0d0b6636 rtl_global_var +EXPORT_SYMBOL_GPL drivers/net/wireless/realtek/rtlwifi/rtlwifi 0x218eae74 rtl_efuse_ops_init +EXPORT_SYMBOL_GPL drivers/net/wireless/realtek/rtlwifi/rtlwifi 0x23cd9114 rtl_fw_page_write +EXPORT_SYMBOL_GPL drivers/net/wireless/realtek/rtlwifi/rtlwifi 0x2921a4d4 rtl_btc_status_false +EXPORT_SYMBOL_GPL drivers/net/wireless/realtek/rtlwifi/rtlwifi 0x29ac9da4 rtl_tx_ackqueue +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 0x2ed45710 rtl_fw_block_write +EXPORT_SYMBOL_GPL drivers/net/wireless/realtek/rtlwifi/rtlwifi 0x3f87a019 rtl_ops +EXPORT_SYMBOL_GPL drivers/net/wireless/realtek/rtlwifi/rtlwifi 0x504e85ab rtl_is_special_data +EXPORT_SYMBOL_GPL drivers/net/wireless/realtek/rtlwifi/rtlwifi 0x5268d4d3 rtl_recognize_peer +EXPORT_SYMBOL_GPL drivers/net/wireless/realtek/rtlwifi/rtlwifi 0x53c35bc8 rtl_deinit_deferred_work +EXPORT_SYMBOL_GPL drivers/net/wireless/realtek/rtlwifi/rtlwifi 0x5686a405 rtl_tx_report_handler +EXPORT_SYMBOL_GPL drivers/net/wireless/realtek/rtlwifi/rtlwifi 0x59690b78 rtl_action_proc +EXPORT_SYMBOL_GPL drivers/net/wireless/realtek/rtlwifi/rtlwifi 0x5ec1ebec rtl_get_hwinfo +EXPORT_SYMBOL_GPL drivers/net/wireless/realtek/rtlwifi/rtlwifi 0x63bd1c64 rtl_ips_nic_on +EXPORT_SYMBOL_GPL drivers/net/wireless/realtek/rtlwifi/rtlwifi 0x652a4c4d rtl_deinit_core +EXPORT_SYMBOL_GPL drivers/net/wireless/realtek/rtlwifi/rtlwifi 0x6a3cc2fd rtl_init_core +EXPORT_SYMBOL_GPL drivers/net/wireless/realtek/rtlwifi/rtlwifi 0x703793e5 rtl_get_hal_edca_param +EXPORT_SYMBOL_GPL drivers/net/wireless/realtek/rtlwifi/rtlwifi 0x96dd585c rtl_swlps_beacon +EXPORT_SYMBOL_GPL drivers/net/wireless/realtek/rtlwifi/rtlwifi 0x97e05663 rtl_tid_to_ac +EXPORT_SYMBOL_GPL drivers/net/wireless/realtek/rtlwifi/rtlwifi 0x9e5cc333 read_efuse_byte +EXPORT_SYMBOL_GPL drivers/net/wireless/realtek/rtlwifi/rtlwifi 0x9eb7762c rtl_tx_mgmt_proc +EXPORT_SYMBOL_GPL drivers/net/wireless/realtek/rtlwifi/rtlwifi 0xa7b2c7f8 rtl_lps_leave +EXPORT_SYMBOL_GPL drivers/net/wireless/realtek/rtlwifi/rtlwifi 0xcb82bfbd rtl_p2p_info +EXPORT_SYMBOL_GPL drivers/net/wireless/realtek/rtlwifi/rtlwifi 0xdc8a6e1f rtl_set_tx_report +EXPORT_SYMBOL_GPL drivers/net/wireless/realtek/rtlwifi/rtlwifi 0xe22d2bc0 rtl_lps_enter +EXPORT_SYMBOL_GPL drivers/net/wireless/realtek/rtlwifi/rtlwifi 0xebeaa6d5 rtl_beacon_statistic +EXPORT_SYMBOL_GPL drivers/net/wireless/realtek/rtlwifi/rtlwifi 0xff45d553 rtl_deinit_rfkill +EXPORT_SYMBOL_GPL drivers/net/wireless/rsi/rsi_91x 0x0f5c3ce9 rsi_zone_enabled +EXPORT_SYMBOL_GPL drivers/net/wireless/rsi/rsi_91x 0x2b7cc71e rsi_hal_device_init +EXPORT_SYMBOL_GPL drivers/net/wireless/rsi/rsi_91x 0x395962ca rsi_mac80211_detach +EXPORT_SYMBOL_GPL drivers/net/wireless/rsi/rsi_91x 0x5aab464d rsi_read_pkt +EXPORT_SYMBOL_GPL drivers/net/wireless/rsi/rsi_91x 0x71d7c2e8 rsi_91x_deinit +EXPORT_SYMBOL_GPL drivers/net/wireless/rsi/rsi_91x 0xa9e6b2eb rsi_91x_init +EXPORT_SYMBOL_GPL drivers/net/wireless/rsi/rsi_91x 0xcd173710 rsi_dbg +EXPORT_SYMBOL_GPL drivers/net/wireless/st/cw1200/cw1200_core 0x25409167 cw1200_irq_handler +EXPORT_SYMBOL_GPL drivers/net/wireless/st/cw1200/cw1200_core 0x2e2b06ce cw1200_core_release +EXPORT_SYMBOL_GPL drivers/net/wireless/st/cw1200/cw1200_core 0x665dfa00 cw1200_core_probe +EXPORT_SYMBOL_GPL drivers/net/wireless/st/cw1200/cw1200_core 0x8c5d3582 cw1200_can_suspend +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wl1251/wl1251 0x437e0331 wl1251_free_hw +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wl1251/wl1251 0x8ea06971 wl1251_alloc_hw +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wl1251/wl1251 0x9b522191 wl1251_init_ieee80211 +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x010dfbb8 wl1271_acx_set_ht_capabilities +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x01c2c2c7 wlcore_boot_upload_firmware +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x03323d07 wlcore_event_inactive_sta +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x06d3b27e wl12xx_debug_level +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x0d864ad2 wl1271_tx_min_rate_get +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x1336dc29 wlcore_alloc_hw +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x20351125 wlcore_get_native_channel_type +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x2b148eff wlcore_boot_run_firmware +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x338db1d8 wlcore_event_soft_gemini_sense +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x43678049 wlcore_event_beacon_loss +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x4a9c40bf wlcore_event_fw_logger +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x4c2f9466 wlcore_enable_interrupts +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x5747ec01 wlcore_boot_upload_nvs +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x59cff9d6 wlcore_disable_interrupts +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x5a85a095 wlcore_disable_interrupts_nosync +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x653c1340 wlcore_event_sched_scan_completed +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x69432c06 wlcore_cmd_generic_cfg +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x6e63f127 wlcore_event_dummy_packet +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x757d3524 wl12xx_cmd_build_probe_req +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x8250404e wl1271_acx_init_mem_config +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x85498cd1 wl1271_format_buffer +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x89baef42 wlcore_remove +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x8a834ba2 wlcore_cmd_wait_for_event_or_timeout +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x8afc5dc2 wlcore_synchronize_interrupts +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x8d5a543d wl1271_tx_flush +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x94287f06 wlcore_event_max_tx_failure +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x950d514c wlcore_scan_sched_scan_ssid_list +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x989492f2 wl1271_debugfs_update_stats +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x9a4235f6 wlcore_probe +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0xa3f64b6c wl1271_acx_pm_config +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0xa4fef1bd wl1271_cmd_data_path +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0xa5c611f7 wlcore_event_channel_switch +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0xace64cdb wl1271_cmd_test +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0xb0e51f97 wl1271_acx_sleep_auth +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0xb508ed8e wlcore_event_ba_rx_constraint +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0xb5f0dee5 wl12xx_acx_mem_cfg +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0xbdaf6bb7 wlcore_event_roc_complete +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0xc3f56146 wlcore_set_key +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0xcc6c204e wl1271_cmd_send +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0xd49e8dc3 wlcore_event_rssi_trigger +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0xd72a0340 wlcore_set_scan_chan_params +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0xe8622a34 wlcore_set_partition +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0xedd1e3f5 wlcore_scan_sched_scan_results +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0xf4426e11 wlcore_translate_addr +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0xf694cbbf wl1271_cmd_configure +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0xfad1e759 wlcore_free_hw +EXPORT_SYMBOL_GPL drivers/nfc/nfcmrvl/nfcmrvl 0x6362565e nfcmrvl_nci_unregister_dev +EXPORT_SYMBOL_GPL drivers/nfc/nfcmrvl/nfcmrvl 0x8ba8bac5 nfcmrvl_nci_register_dev +EXPORT_SYMBOL_GPL drivers/nfc/nfcmrvl/nfcmrvl 0xd804b4ba nfcmrvl_nci_recv_frame +EXPORT_SYMBOL_GPL drivers/nfc/nfcmrvl/nfcmrvl 0xe88c9655 nfcmrvl_parse_dt +EXPORT_SYMBOL_GPL drivers/nfc/pn533/pn533 0x00118433 pn53x_unregister_nfc +EXPORT_SYMBOL_GPL drivers/nfc/pn533/pn533 0x1047eea5 pn53x_common_clean +EXPORT_SYMBOL_GPL drivers/nfc/pn533/pn533 0x497f1512 pn533_rx_frame_is_cmd_response +EXPORT_SYMBOL_GPL drivers/nfc/pn533/pn533 0x612f0ae3 pn53x_common_init +EXPORT_SYMBOL_GPL drivers/nfc/pn533/pn533 0x954a5011 pn532_i2c_nfc_alloc +EXPORT_SYMBOL_GPL drivers/nfc/pn533/pn533 0xa1cc6244 pn533_finalize_setup +EXPORT_SYMBOL_GPL drivers/nfc/pn533/pn533 0xb510479a pn53x_register_nfc +EXPORT_SYMBOL_GPL drivers/nfc/pn533/pn533 0xdecfd339 pn533_rx_frame_is_ack +EXPORT_SYMBOL_GPL drivers/nfc/st-nci/st-nci 0x265dd91a st_nci_remove +EXPORT_SYMBOL_GPL drivers/nfc/st-nci/st-nci 0x50d3688c st_nci_hci_load_session +EXPORT_SYMBOL_GPL drivers/nfc/st-nci/st-nci 0x809a5368 st_nci_enable_se +EXPORT_SYMBOL_GPL drivers/nfc/st-nci/st-nci 0x8c52af15 st_nci_hci_event_received +EXPORT_SYMBOL_GPL drivers/nfc/st-nci/st-nci 0x9819ddc3 st_nci_probe +EXPORT_SYMBOL_GPL drivers/nfc/st-nci/st-nci 0xb5304853 st_nci_discover_se +EXPORT_SYMBOL_GPL drivers/nfc/st-nci/st-nci 0xe3e6fb58 st_nci_disable_se +EXPORT_SYMBOL_GPL drivers/nfc/st-nci/st-nci 0xf8b28111 st_nci_hci_cmd_received +EXPORT_SYMBOL_GPL drivers/nfc/st95hf/st95hf 0x4a298883 st95hf_spi_recv_response +EXPORT_SYMBOL_GPL drivers/nfc/st95hf/st95hf 0x99b5c746 st95hf_spi_recv_echo_res +EXPORT_SYMBOL_GPL drivers/nfc/st95hf/st95hf 0xef05df22 st95hf_spi_send +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 0x82e6c13d ntb_transport_qp_num +EXPORT_SYMBOL_GPL drivers/ntb/ntb_transport 0x9747050b ntb_transport_unregister_client +EXPORT_SYMBOL_GPL drivers/ntb/ntb_transport 0x9c992c8f ntb_transport_link_up +EXPORT_SYMBOL_GPL drivers/ntb/ntb_transport 0xa5cb56fd ntb_transport_register_client +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 0xd40e7a02 ntb_transport_rx_enqueue +EXPORT_SYMBOL_GPL drivers/ntb/ntb_transport 0xdb58c14a ntb_transport_create_queue +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/nvdimm/nd_virtio 0xaf2e6b94 virtio_pmem_host_ack +EXPORT_SYMBOL_GPL drivers/nvdimm/nd_virtio 0xea6ac8dc async_pmem_flush +EXPORT_SYMBOL_GPL drivers/nvme/host/nvme-core 0x0de2c5d1 nvme_stop_ctrl +EXPORT_SYMBOL_GPL drivers/nvme/host/nvme-core 0x1603d531 nvme_change_ctrl_state +EXPORT_SYMBOL_GPL drivers/nvme/host/nvme-core 0x16c27096 nvme_stop_keep_alive +EXPORT_SYMBOL_GPL drivers/nvme/host/nvme-core 0x2508f4f3 nvme_start_queues +EXPORT_SYMBOL_GPL drivers/nvme/host/nvme-core 0x2fb98f44 nvme_unfreeze +EXPORT_SYMBOL_GPL drivers/nvme/host/nvme-core 0x361064af nvme_remove_namespaces +EXPORT_SYMBOL_GPL drivers/nvme/host/nvme-core 0x3c568f40 nvme_cleanup_cmd +EXPORT_SYMBOL_GPL drivers/nvme/host/nvme-core 0x400afb9b nvme_kill_queues +EXPORT_SYMBOL_GPL drivers/nvme/host/nvme-core 0x4537ba5e nvme_uninit_ctrl +EXPORT_SYMBOL_GPL drivers/nvme/host/nvme-core 0x49224181 nvme_reset_wq +EXPORT_SYMBOL_GPL drivers/nvme/host/nvme-core 0x4bf36b3b __tracepoint_nvme_sq +EXPORT_SYMBOL_GPL drivers/nvme/host/nvme-core 0x51fba644 nvme_sync_queues +EXPORT_SYMBOL_GPL drivers/nvme/host/nvme-core 0x56b1c3f9 nvme_disable_ctrl +EXPORT_SYMBOL_GPL drivers/nvme/host/nvme-core 0x5962b769 nvme_wait_freeze +EXPORT_SYMBOL_GPL drivers/nvme/host/nvme-core 0x64b62862 nvme_wq +EXPORT_SYMBOL_GPL drivers/nvme/host/nvme-core 0x69b75b32 nvme_set_features +EXPORT_SYMBOL_GPL drivers/nvme/host/nvme-core 0x6c192255 nvme_shutdown_ctrl +EXPORT_SYMBOL_GPL drivers/nvme/host/nvme-core 0x6dc2257e nvme_alloc_request +EXPORT_SYMBOL_GPL drivers/nvme/host/nvme-core 0x7621bef2 nvme_wait_reset +EXPORT_SYMBOL_GPL drivers/nvme/host/nvme-core 0x77a1cfc0 nvme_set_queue_count +EXPORT_SYMBOL_GPL drivers/nvme/host/nvme-core 0x78f6c372 nvme_sync_io_queues +EXPORT_SYMBOL_GPL drivers/nvme/host/nvme-core 0x813cf212 nvme_io_timeout +EXPORT_SYMBOL_GPL drivers/nvme/host/nvme-core 0x832008e3 __nvme_submit_sync_cmd +EXPORT_SYMBOL_GPL drivers/nvme/host/nvme-core 0x84c6a0bc nvme_complete_rq +EXPORT_SYMBOL_GPL drivers/nvme/host/nvme-core 0x88acd382 nvme_stop_queues +EXPORT_SYMBOL_GPL drivers/nvme/host/nvme-core 0x88ae1b4d nvme_wait_freeze_timeout +EXPORT_SYMBOL_GPL drivers/nvme/host/nvme-core 0x8a9c70ed nvme_sec_submit +EXPORT_SYMBOL_GPL drivers/nvme/host/nvme-core 0x8f091733 nvme_start_freeze +EXPORT_SYMBOL_GPL drivers/nvme/host/nvme-core 0x9fa7419d nvme_cancel_request +EXPORT_SYMBOL_GPL drivers/nvme/host/nvme-core 0xa6f16ff2 nvme_try_sched_reset +EXPORT_SYMBOL_GPL drivers/nvme/host/nvme-core 0xad4e0e5e nvme_enable_ctrl +EXPORT_SYMBOL_GPL drivers/nvme/host/nvme-core 0xae5b0e2c nvme_start_ctrl +EXPORT_SYMBOL_GPL drivers/nvme/host/nvme-core 0xb0e24c0e nvme_init_ctrl +EXPORT_SYMBOL_GPL drivers/nvme/host/nvme-core 0xb77ffd9c nvme_get_features +EXPORT_SYMBOL_GPL drivers/nvme/host/nvme-core 0xbd5acaa1 nvme_submit_sync_cmd +EXPORT_SYMBOL_GPL drivers/nvme/host/nvme-core 0xc5f69ff5 nvme_setup_cmd +EXPORT_SYMBOL_GPL drivers/nvme/host/nvme-core 0xd2792418 nvme_reset_ctrl_sync +EXPORT_SYMBOL_GPL drivers/nvme/host/nvme-core 0xd45434ee admin_timeout +EXPORT_SYMBOL_GPL drivers/nvme/host/nvme-core 0xd58bbbcb nvme_delete_wq +EXPORT_SYMBOL_GPL drivers/nvme/host/nvme-core 0xe17cb97d nvme_reset_ctrl +EXPORT_SYMBOL_GPL drivers/nvme/host/nvme-core 0xf0da585c nvme_delete_ctrl +EXPORT_SYMBOL_GPL drivers/nvme/host/nvme-core 0xf0ffa911 nvme_init_identify +EXPORT_SYMBOL_GPL drivers/nvme/host/nvme-core 0xfde0defd nvme_complete_async_event +EXPORT_SYMBOL_GPL drivers/nvme/host/nvme-fabrics 0x09a7bbb8 nvmf_reg_read64 +EXPORT_SYMBOL_GPL drivers/nvme/host/nvme-fabrics 0x1c0450ab nvmf_ip_options_match +EXPORT_SYMBOL_GPL drivers/nvme/host/nvme-fabrics 0x26e9a5c0 nvmf_fail_nonready_command +EXPORT_SYMBOL_GPL drivers/nvme/host/nvme-fabrics 0x2a93250a nvmf_get_address +EXPORT_SYMBOL_GPL drivers/nvme/host/nvme-fabrics 0x79df4564 nvmf_free_options +EXPORT_SYMBOL_GPL drivers/nvme/host/nvme-fabrics 0x971f910e nvmf_should_reconnect +EXPORT_SYMBOL_GPL drivers/nvme/host/nvme-fabrics 0x980ff40b nvmf_register_transport +EXPORT_SYMBOL_GPL drivers/nvme/host/nvme-fabrics 0x9c65a64a nvmf_connect_admin_queue +EXPORT_SYMBOL_GPL drivers/nvme/host/nvme-fabrics 0x9dba268d nvmf_connect_io_queue +EXPORT_SYMBOL_GPL drivers/nvme/host/nvme-fabrics 0x9e2a9946 nvmf_reg_write32 +EXPORT_SYMBOL_GPL drivers/nvme/host/nvme-fabrics 0xac5f3252 __nvmf_check_ready +EXPORT_SYMBOL_GPL drivers/nvme/host/nvme-fabrics 0xcc873ebd nvmf_reg_read32 +EXPORT_SYMBOL_GPL drivers/nvme/host/nvme-fabrics 0xd136ac8c nvmf_unregister_transport +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 0x82b2224a 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 0xfca9dc99 nvme_fc_unregister_remoteport +EXPORT_SYMBOL_GPL drivers/nvme/target/nvmet 0x0264ffc8 nvmet_req_alloc_sgls +EXPORT_SYMBOL_GPL drivers/nvme/target/nvmet 0x284298a9 nvmet_check_transfer_len +EXPORT_SYMBOL_GPL drivers/nvme/target/nvmet 0x61effefa nvmet_sq_init +EXPORT_SYMBOL_GPL drivers/nvme/target/nvmet 0x6ff15a02 nvmet_req_uninit +EXPORT_SYMBOL_GPL drivers/nvme/target/nvmet 0xa079b5d8 nvmet_sq_destroy +EXPORT_SYMBOL_GPL drivers/nvme/target/nvmet 0xaf9e464e nvmet_req_complete +EXPORT_SYMBOL_GPL drivers/nvme/target/nvmet 0xcfb32767 nvmet_ctrl_fatal_error +EXPORT_SYMBOL_GPL drivers/nvme/target/nvmet 0xf445ad36 nvmet_req_free_sgls +EXPORT_SYMBOL_GPL drivers/nvme/target/nvmet 0xf55428d3 nvmet_req_init +EXPORT_SYMBOL_GPL drivers/nvme/target/nvmet 0xf6f53177 nvmet_unregister_transport +EXPORT_SYMBOL_GPL drivers/nvme/target/nvmet 0xf94aec3e nvmet_register_transport +EXPORT_SYMBOL_GPL drivers/nvme/target/nvmet-fc 0x0b98123d nvmet_fc_rcv_ls_req +EXPORT_SYMBOL_GPL drivers/nvme/target/nvmet-fc 0x1048b92a nvmet_fc_rcv_fcp_req +EXPORT_SYMBOL_GPL drivers/nvme/target/nvmet-fc 0x4a013682 nvmet_fc_invalidate_host +EXPORT_SYMBOL_GPL drivers/nvme/target/nvmet-fc 0x7fa5302a nvmet_fc_rcv_fcp_abort +EXPORT_SYMBOL_GPL drivers/nvme/target/nvmet-fc 0x9ef76d99 nvmet_fc_unregister_targetport +EXPORT_SYMBOL_GPL drivers/nvme/target/nvmet-fc 0xca4f64c3 nvmet_fc_register_targetport +EXPORT_SYMBOL_GPL drivers/pci/hotplug/pnv-php 0x18a29a92 pnv_php_set_slot_power_state +EXPORT_SYMBOL_GPL drivers/pci/hotplug/pnv-php 0x2fc91bee pnv_php_find_slot +EXPORT_SYMBOL_GPL drivers/pci/hotplug/rpaphp 0x01cc7086 rpaphp_slot_head +EXPORT_SYMBOL_GPL drivers/pci/hotplug/rpaphp 0x16846eca rpaphp_check_drc_props +EXPORT_SYMBOL_GPL drivers/pci/hotplug/rpaphp 0xd4bb033f rpaphp_deregister_slot +EXPORT_SYMBOL_GPL drivers/pci/hotplug/rpaphp 0xe0763d1d rpaphp_add_slot +EXPORT_SYMBOL_GPL drivers/pci/switch/switchtec 0x84924e99 switchtec_class +EXPORT_SYMBOL_GPL drivers/pinctrl/pinctrl-mcp23s08 0x1565e3a6 mcp23x17_regmap +EXPORT_SYMBOL_GPL drivers/pinctrl/pinctrl-mcp23s08 0x251e4749 mcp23x08_regmap +EXPORT_SYMBOL_GPL drivers/pinctrl/pinctrl-mcp23s08 0xd9b0faf8 mcp23s08_probe_one +EXPORT_SYMBOL_GPL drivers/power/reset/reboot-mode 0x0496ce71 reboot_mode_unregister +EXPORT_SYMBOL_GPL drivers/power/reset/reboot-mode 0x0fd283b0 devm_reboot_mode_unregister +EXPORT_SYMBOL_GPL drivers/power/reset/reboot-mode 0x3e97b5c8 reboot_mode_register +EXPORT_SYMBOL_GPL drivers/power/reset/reboot-mode 0x68bacca5 devm_reboot_mode_register +EXPORT_SYMBOL_GPL drivers/power/supply/bq27xxx_battery 0x5d4bf630 bq27xxx_battery_setup +EXPORT_SYMBOL_GPL drivers/power/supply/bq27xxx_battery 0x871676b3 bq27xxx_battery_update +EXPORT_SYMBOL_GPL drivers/power/supply/bq27xxx_battery 0xab78c90e bq27xxx_battery_teardown +EXPORT_SYMBOL_GPL drivers/power/supply/pcf50633-charger 0x12747407 pcf50633_mbc_get_usb_online_status +EXPORT_SYMBOL_GPL drivers/power/supply/pcf50633-charger 0x4847b28e pcf50633_mbc_get_status +EXPORT_SYMBOL_GPL drivers/power/supply/pcf50633-charger 0xc4bd52c8 pcf50633_mbc_usb_curlim_set +EXPORT_SYMBOL_GPL drivers/ptp/ptp-qoriq 0x2eae82b0 ptp_qoriq_isr +EXPORT_SYMBOL_GPL drivers/ptp/ptp-qoriq 0x5fa953fc extts_clean_up +EXPORT_SYMBOL_GPL drivers/ptp/ptp-qoriq 0x6101d679 ptp_qoriq_adjtime +EXPORT_SYMBOL_GPL drivers/ptp/ptp-qoriq 0x68021b62 ptp_qoriq_gettime +EXPORT_SYMBOL_GPL drivers/ptp/ptp-qoriq 0x8e1fe650 ptp_qoriq_adjfine +EXPORT_SYMBOL_GPL drivers/ptp/ptp-qoriq 0x97f2d43e ptp_qoriq_settime +EXPORT_SYMBOL_GPL drivers/ptp/ptp-qoriq 0xb135a333 ptp_qoriq_init +EXPORT_SYMBOL_GPL drivers/ptp/ptp-qoriq 0xd43ad421 ptp_qoriq_enable +EXPORT_SYMBOL_GPL drivers/ptp/ptp-qoriq 0xd8f00ef1 ptp_qoriq_free +EXPORT_SYMBOL_GPL drivers/regulator/mc13xxx-regulator-core 0x3ebfcb46 mc13xxx_parse_regulators_dt +EXPORT_SYMBOL_GPL drivers/regulator/mc13xxx-regulator-core 0x751cc0d8 mc13xxx_fixed_regulator_set_voltage +EXPORT_SYMBOL_GPL drivers/regulator/mc13xxx-regulator-core 0xaaf97c8d mc13xxx_regulator_ops +EXPORT_SYMBOL_GPL drivers/regulator/mc13xxx-regulator-core 0xfa95db1c mc13xxx_get_num_regulators_dt +EXPORT_SYMBOL_GPL drivers/regulator/mc13xxx-regulator-core 0xfd99cdb2 mc13xxx_fixed_regulator_ops +EXPORT_SYMBOL_GPL drivers/regulator/wm8350-regulator 0x151ac4c8 wm8350_ldo_set_slot +EXPORT_SYMBOL_GPL drivers/regulator/wm8350-regulator 0x4dcb9a5a wm8350_isink_set_flash +EXPORT_SYMBOL_GPL drivers/regulator/wm8350-regulator 0x58e947f5 wm8350_register_regulator +EXPORT_SYMBOL_GPL drivers/regulator/wm8350-regulator 0x766759a4 wm8350_dcdc25_set_mode +EXPORT_SYMBOL_GPL drivers/regulator/wm8350-regulator 0x878d5816 wm8350_dcdc_set_slot +EXPORT_SYMBOL_GPL drivers/regulator/wm8350-regulator 0xa1de304b wm8350_register_led +EXPORT_SYMBOL_GPL drivers/regulator/wm8400-regulator 0x338db9ca wm8400_register_regulator +EXPORT_SYMBOL_GPL drivers/rpmsg/qcom_glink 0x0691a3d2 qcom_glink_native_probe +EXPORT_SYMBOL_GPL drivers/rpmsg/qcom_glink 0x149236da qcom_glink_native_remove +EXPORT_SYMBOL_GPL drivers/rpmsg/qcom_glink 0xf14f5684 qcom_glink_ssr_notify +EXPORT_SYMBOL_GPL drivers/rpmsg/qcom_glink 0xfd2d5a1d qcom_glink_native_unregister +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x00753f17 cxgbi_destroy_session +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x020ade36 cxgbi_sock_skb_entail +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x08177769 cxgbi_sock_closed +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x0caee567 cxgbi_sock_select_mss +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x11671a66 cxgbi_set_conn_param +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x1ac20266 cxgbi_conn_init_pdu +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x1f6659f4 cxgbi_device_unregister +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x1f71c756 cxgbi_sock_established +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x24cb1728 cxgbi_iscsi_init +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x271f29b6 cxgbi_conn_pdu_ready +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x2ef82e13 cxgbi_device_find_by_netdev +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x2fab3dab cxgbi_device_find_by_lldev +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x2fe70273 cxgbi_sock_fail_act_open +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x3009a083 cxgbi_device_portmap_cleanup +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x37eb2dff cxgbi_sock_free_cpl_skbs +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x3cff1b17 cxgbi_sock_check_wr_invariants +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x42a271c9 cxgbi_bind_conn +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x4543f078 cxgbi_ep_poll +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x481ec85b cxgbi_set_host_param +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x4fb72fb5 cxgbi_device_find_by_netdev_rcu +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x507ac88d cxgbi_sock_rcv_peer_close +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x58a44e3b cxgbi_parse_pdu_itt +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x5d209cd0 cxgbi_get_host_param +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x740ae4f9 cxgbi_ep_connect +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x76588608 cxgbi_cleanup_task +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x792b46a1 cxgbi_sock_rcv_close_conn_rpl +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x793f05bc cxgbi_ep_disconnect +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x7fdb6004 cxgbi_device_unregister_all +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x874c3c87 cxgbi_hbas_add +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0xa7b4a215 cxgbi_sock_rcv_abort_rpl +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0xa8b39a0e cxgbi_device_register +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0xb5d4465e cxgbi_iscsi_cleanup +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0xb9882856 cxgbi_conn_xmit_pdu +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0xbc7b0b2d cxgbi_sock_act_open_req_arp_failure +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0xbf32e42c cxgbi_get_ep_param +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0xc011af75 cxgbi_ddp_set_one_ppod +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0xc040a7c4 cxgbi_sock_rcv_wr_ack +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0xd648c356 cxgbi_ddp_ppm_setup +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0xe4d2415d cxgbi_sock_purge_wr_queue +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0xea07500b cxgbi_create_session +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0xed89aa47 cxgbi_get_conn_stats +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0xef346615 cxgbi_attr_is_visible +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0xefb4607d cxgbi_conn_tx_open +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0xf044c338 cxgbi_create_conn +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0xf0fe475b cxgbi_hbas_remove +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0xf42177c0 cxgbi_device_portmap_create +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0xf5bcada1 cxgbi_conn_alloc_pdu +EXPORT_SYMBOL_GPL drivers/scsi/fcoe/libfcoe 0x0b6db27f fcoe_validate_vport_create +EXPORT_SYMBOL_GPL drivers/scsi/fcoe/libfcoe 0x0f98cccc fcoe_fcf_device_delete +EXPORT_SYMBOL_GPL drivers/scsi/fcoe/libfcoe 0x19cec44a fcoe_get_lesb +EXPORT_SYMBOL_GPL drivers/scsi/fcoe/libfcoe 0x22d49683 fcoe_clean_pending_queue +EXPORT_SYMBOL_GPL drivers/scsi/fcoe/libfcoe 0x26653016 fcoe_fcf_device_add +EXPORT_SYMBOL_GPL drivers/scsi/fcoe/libfcoe 0x31d0e72f fcoe_link_speed_update +EXPORT_SYMBOL_GPL drivers/scsi/fcoe/libfcoe 0x599ff903 fcoe_get_wwn +EXPORT_SYMBOL_GPL drivers/scsi/fcoe/libfcoe 0x60a14a7e fcoe_ctlr_device_add +EXPORT_SYMBOL_GPL drivers/scsi/fcoe/libfcoe 0x7a857379 __fcoe_get_lesb +EXPORT_SYMBOL_GPL drivers/scsi/fcoe/libfcoe 0x94bc211e fcoe_ctlr_device_delete +EXPORT_SYMBOL_GPL drivers/scsi/fcoe/libfcoe 0xa5794ff5 fcoe_check_wait_queue +EXPORT_SYMBOL_GPL drivers/scsi/fcoe/libfcoe 0xa8818e3c fcoe_get_paged_crc_eof +EXPORT_SYMBOL_GPL drivers/scsi/fcoe/libfcoe 0xb2b508f2 fcoe_start_io +EXPORT_SYMBOL_GPL drivers/scsi/fcoe/libfcoe 0xbac58840 fcoe_queue_timer +EXPORT_SYMBOL_GPL drivers/scsi/fcoe/libfcoe 0xc722be3b fcoe_fc_crc +EXPORT_SYMBOL_GPL drivers/scsi/fcoe/libfcoe 0xdd944534 fcoe_wwn_from_mac +EXPORT_SYMBOL_GPL drivers/scsi/fcoe/libfcoe 0xef22bd2a fcoe_libfc_config +EXPORT_SYMBOL_GPL drivers/scsi/fcoe/libfcoe 0xf167cb7a fcoe_wwn_to_str +EXPORT_SYMBOL_GPL drivers/scsi/fcoe/libfcoe 0xf2c1262b fcoe_ctlr_get_lesb +EXPORT_SYMBOL_GPL drivers/scsi/fdomain 0x0611088b fdomain_create +EXPORT_SYMBOL_GPL drivers/scsi/fdomain 0xdb65c91c fdomain_destroy +EXPORT_SYMBOL_GPL drivers/scsi/iscsi_boot_sysfs 0x00fa258f iscsi_boot_create_target +EXPORT_SYMBOL_GPL drivers/scsi/iscsi_boot_sysfs 0x4e8907cb iscsi_boot_create_ethernet +EXPORT_SYMBOL_GPL drivers/scsi/iscsi_boot_sysfs 0x73b3cd22 iscsi_boot_create_host_kset +EXPORT_SYMBOL_GPL drivers/scsi/iscsi_boot_sysfs 0xa2aba6e3 iscsi_boot_create_kset +EXPORT_SYMBOL_GPL drivers/scsi/iscsi_boot_sysfs 0xb9037637 iscsi_boot_create_initiator +EXPORT_SYMBOL_GPL drivers/scsi/iscsi_boot_sysfs 0xd73cc18d iscsi_boot_destroy_kset +EXPORT_SYMBOL_GPL drivers/scsi/iscsi_boot_sysfs 0xecf4ec68 iscsi_boot_create_acpitbl +EXPORT_SYMBOL_GPL drivers/scsi/libfc/libfc 0x48561353 fc_seq_els_rsp_send +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x04803998 iscsi_conn_start +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x0793c29a __iscsi_get_task +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x12b2ad06 iscsi_switch_str_param +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x1c7f5b01 iscsi_host_get_param +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x200e8059 iscsi_complete_pdu +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x218309dd iscsi_session_get_param +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x23f274da iscsi_eh_abort +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x2892c9c5 iscsi_conn_teardown +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x2be586c6 iscsi_verify_itt +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x3722e908 iscsi_conn_get_param +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x3bef2f73 iscsi_pool_init +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x423a0f1e iscsi_conn_setup +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x457a4799 iscsi_eh_recover_target +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x47a622d8 iscsi_eh_session_reset +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x484a3093 iscsi_conn_send_pdu +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x4ec70265 iscsi_prep_data_out_pdu +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x51ab86d6 iscsi_complete_scsi_task +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x52dbf2e4 iscsi_session_failure +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x5a2520f3 iscsi_session_teardown +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x5df1e4a8 iscsi_update_cmdsn +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x65016d58 iscsi_host_remove +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x738d2255 iscsi_host_set_param +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x73fa6098 iscsi_conn_failure +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x7f734688 iscsi_eh_device_reset +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x80611ce0 iscsi_conn_bind +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x8d303b1b iscsi_pool_free +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x914a8d45 iscsi_conn_stop +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x947c854f iscsi_host_free +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x95d2dcb3 iscsi_session_setup +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x9b37efbf iscsi_eh_cmd_timed_out +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x9bec9287 iscsi_host_alloc +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0xb20a0de7 iscsi_put_task +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0xb3faa9e5 __iscsi_put_task +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0xb52ad611 iscsi_set_param +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0xbdbdd868 iscsi_host_add +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0xc4eaa077 iscsi_queuecommand +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0xc5c5e648 __iscsi_complete_pdu +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0xd26695e1 iscsi_itt_to_task +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0xd581b862 iscsi_requeue_task +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0xde6b20c5 iscsi_session_recovery_timedout +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0xeab9cbd5 iscsi_conn_get_addr_param +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0xeca3da45 iscsi_suspend_tx +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0xf2e01dc4 iscsi_target_alloc +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0xf5c09260 iscsi_conn_queue_work +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0xf848c5ff iscsi_suspend_queue +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0xfba131be iscsi_itt_to_ctask +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi_tcp 0x04969024 iscsi_tcp_cleanup_task +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi_tcp 0x06306f89 iscsi_tcp_conn_teardown +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi_tcp 0x104b3b41 iscsi_tcp_recv_skb +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi_tcp 0x2913dd04 iscsi_tcp_r2tpool_free +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi_tcp 0x3d5766be iscsi_tcp_segment_done +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi_tcp 0x4acd3d09 iscsi_tcp_set_max_r2t +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi_tcp 0x61c3466c iscsi_segment_init_linear +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi_tcp 0x63e3c1c2 iscsi_tcp_task_init +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi_tcp 0x70c976ed iscsi_tcp_r2tpool_alloc +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi_tcp 0x993dbaa2 iscsi_tcp_segment_unmap +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi_tcp 0xa458283e iscsi_tcp_conn_get_stats +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi_tcp 0xbf527a08 iscsi_segment_seek_sg +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi_tcp 0xc8ecd2d2 iscsi_tcp_recv_segment_is_hdr +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi_tcp 0xdf9bb0e4 iscsi_tcp_dgst_header +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi_tcp 0xe4497225 iscsi_tcp_hdr_recv_prep +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi_tcp 0xf26577c1 iscsi_tcp_conn_setup +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi_tcp 0xf4cb6714 iscsi_tcp_task_xmit +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0x0262398b sas_register_ha +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0x02ae6da2 sas_ioctl +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0x0a76ec3a sas_ata_schedule_reset +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0x18641750 sas_change_queue_depth +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0x18eca20f sas_domain_attach_transport +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0x1bc133bc sas_queuecommand +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0x2a28da8e sas_slave_configure +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0x417ee2b8 sas_free_task +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0x78809f07 sas_unregister_ha +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0x7b60f0b7 sas_request_addr +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0x7b990868 sas_drain_work +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0x7fd220a0 dev_attr_phy_event_threshold +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0x8e6db9d2 sas_alloc_task +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0x8fcb9a0d sas_target_destroy +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0x927b7572 sas_target_alloc +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0x94d5eacd sas_phy_reset +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0x973d810e sas_eh_target_reset_handler +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0xa06ae399 sas_eh_device_reset_handler +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0xa4f83d9a sas_bios_param +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0xb2315af7 sas_get_local_phy +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0xbd2294fe sas_alloc_slow_task +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0xc6db6827 sas_task_abort +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0xdb5c8a40 sas_ssp_task_response +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0xe82f7aa5 sas_eh_abort_handler +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x040a8d11 iscsi_ping_comp_event +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x07e42a5c iscsi_block_session +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x13cdb418 iscsi_unblock_session +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x1739465b iscsi_session_chkready +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x19a100a7 iscsi_find_flashnode_sess +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x1bcd5430 iscsi_block_scsi_eh +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x21435464 __tracepoint_iscsi_dbg_eh +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x2505be8f iscsi_conn_error_event +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x325ed95b iscsi_session_event +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x35845780 iscsi_lookup_endpoint +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x392f3a24 iscsi_register_transport +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x3a627340 __tracepoint_iscsi_dbg_session +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x3aa6c92f iscsi_create_flashnode_conn +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x4390c7ab iscsi_add_session +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x48b5d45f iscsi_conn_login_event +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x49c41633 iscsi_destroy_all_flashnode +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x49d460ce iscsi_unregister_transport +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x4f6dc449 iscsi_find_flashnode_conn +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x56203f6b iscsi_post_host_event +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x56401577 iscsi_create_conn +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x5befe763 iscsi_free_session +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x5e194094 __tracepoint_iscsi_dbg_sw_tcp +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x699fe53e iscsi_get_discovery_parent_name +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x6acb7f59 iscsi_get_port_state_name +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x6eb08513 iscsi_flashnode_bus_match +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x79ea327e iscsi_destroy_iface +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x84a005f1 iscsi_get_router_state_name +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x84cd03c0 __tracepoint_iscsi_dbg_conn +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x84f30767 iscsi_destroy_conn +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x928b3e0f iscsi_destroy_flashnode_sess +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0xa3013263 iscsi_dbg_trace +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0xb59ca6ce iscsi_create_endpoint +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0xbc071179 iscsi_get_ipaddress_state_name +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0xbd23c9aa iscsi_offload_mesg +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0xcb32e745 iscsi_alloc_session +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0xcb50ef3f iscsi_is_session_online +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0xcb8e1a13 iscsi_is_session_dev +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0xcbc26ca7 iscsi_recv_pdu +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0xd33b5054 iscsi_destroy_endpoint +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0xdf4255f3 iscsi_create_session +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0xe416765b iscsi_create_flashnode_sess +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0xe83e3483 iscsi_get_port_speed_name +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0xe962dcb3 iscsi_host_for_each_session +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0xf9270246 iscsi_remove_session +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0xf9a3bf1b iscsi_create_iface +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0xfc820fd9 iscsi_scan_finished +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0xfdd9ab1f __tracepoint_iscsi_dbg_tcp +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_sas 0x4750bdd8 sas_is_tlr_enabled +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_sas 0x622d1a7d sas_disable_tlr +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_sas 0xdf49be27 sas_enable_tlr +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_sas 0xe99c8688 sas_tlr_supported +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 0xa36dcee2 spi_populate_tag_msg +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_spi 0xcffa2aff spi_populate_width_msg +EXPORT_SYMBOL_GPL drivers/scsi/ufs/ufshcd-core 0x0c31d5f8 ufshcd_init +EXPORT_SYMBOL_GPL drivers/scsi/ufs/ufshcd-core 0x202c2986 ufshcd_remove +EXPORT_SYMBOL_GPL drivers/scsi/ufs/ufshcd-core 0x29b9e62c ufshcd_make_hba_operational +EXPORT_SYMBOL_GPL drivers/scsi/ufs/ufshcd-core 0x2f9c348e ufshcd_fixup_dev_quirks +EXPORT_SYMBOL_GPL drivers/scsi/ufs/ufshcd-core 0x3f1fbac2 ufshcd_dme_get_attr +EXPORT_SYMBOL_GPL drivers/scsi/ufs/ufshcd-core 0x3fc7e0c6 ufshcd_link_recovery +EXPORT_SYMBOL_GPL drivers/scsi/ufs/ufshcd-core 0x5d588c32 ufshcd_update_reg_hist +EXPORT_SYMBOL_GPL drivers/scsi/ufs/ufshcd-core 0x6a24407f ufshcd_release +EXPORT_SYMBOL_GPL drivers/scsi/ufs/ufshcd-core 0x723b1abf ufshcd_delay_us +EXPORT_SYMBOL_GPL drivers/scsi/ufs/ufshcd-core 0x89782102 ufshcd_dump_regs +EXPORT_SYMBOL_GPL drivers/scsi/ufs/ufshcd-core 0x8c807f97 ufshcd_uic_hibern8_exit +EXPORT_SYMBOL_GPL drivers/scsi/ufs/ufshcd-core 0x8ebd2b6c ufshcd_auto_hibern8_update +EXPORT_SYMBOL_GPL drivers/scsi/ufs/ufshcd-core 0x99c152cc ufshcd_dme_set_attr +EXPORT_SYMBOL_GPL drivers/scsi/ufs/ufshcd-core 0xb5f1144e ufshcd_config_pwr_mode +EXPORT_SYMBOL_GPL drivers/scsi/ufs/ufshcd-core 0xb6c744d5 ufshcd_hold +EXPORT_SYMBOL_GPL drivers/scsi/ufs/ufshcd-core 0xbc371ca2 ufshcd_hba_enable +EXPORT_SYMBOL_GPL drivers/scsi/ufs/ufshcd-core 0xe10d0f36 ufshcd_dealloc_host +EXPORT_SYMBOL_GPL drivers/scsi/ufs/ufshcd-pltfrm 0x13a307bc ufshcd_pltfrm_init +EXPORT_SYMBOL_GPL drivers/scsi/ufs/ufshcd-pltfrm 0x2ed694e1 ufshcd_pltfrm_runtime_resume +EXPORT_SYMBOL_GPL drivers/scsi/ufs/ufshcd-pltfrm 0x42f4d9b0 ufshcd_pltfrm_suspend +EXPORT_SYMBOL_GPL drivers/scsi/ufs/ufshcd-pltfrm 0x7451b338 ufshcd_pltfrm_runtime_idle +EXPORT_SYMBOL_GPL drivers/scsi/ufs/ufshcd-pltfrm 0xccb06377 ufshcd_pltfrm_runtime_suspend +EXPORT_SYMBOL_GPL drivers/scsi/ufs/ufshcd-pltfrm 0xd483aa7c ufshcd_pltfrm_resume +EXPORT_SYMBOL_GPL drivers/scsi/ufs/ufshcd-pltfrm 0xdc2b1ab0 ufshcd_pltfrm_shutdown +EXPORT_SYMBOL_GPL drivers/scsi/ufs/ufshcd-pltfrm 0xff85cd6b ufshcd_get_pwr_dev_param +EXPORT_SYMBOL_GPL drivers/siox/siox-core 0x1d64a8b1 siox_master_alloc +EXPORT_SYMBOL_GPL drivers/siox/siox-core 0x3be07d40 __siox_driver_register +EXPORT_SYMBOL_GPL drivers/siox/siox-core 0x5880a0a0 siox_device_connected +EXPORT_SYMBOL_GPL drivers/siox/siox-core 0x6bd5534c siox_master_register +EXPORT_SYMBOL_GPL drivers/siox/siox-core 0x9a87f363 siox_master_unregister +EXPORT_SYMBOL_GPL drivers/siox/siox-core 0xb8a8c8ce siox_device_synced +EXPORT_SYMBOL_GPL drivers/slimbus/slimbus 0x1973805d slim_stream_allocate +EXPORT_SYMBOL_GPL drivers/slimbus/slimbus 0x2449d483 slim_report_absent +EXPORT_SYMBOL_GPL drivers/slimbus/slimbus 0x270ed124 slim_stream_enable +EXPORT_SYMBOL_GPL drivers/slimbus/slimbus 0x282f7d71 slim_get_logical_addr +EXPORT_SYMBOL_GPL drivers/slimbus/slimbus 0x3291fef6 slim_free_txn_tid +EXPORT_SYMBOL_GPL drivers/slimbus/slimbus 0x3c7d182b slim_device_report_present +EXPORT_SYMBOL_GPL drivers/slimbus/slimbus 0x3dd4b635 of_slim_get_device +EXPORT_SYMBOL_GPL drivers/slimbus/slimbus 0x4493335b slim_readb +EXPORT_SYMBOL_GPL drivers/slimbus/slimbus 0x465c057d slim_xfer_msg +EXPORT_SYMBOL_GPL drivers/slimbus/slimbus 0x7626c65a slim_stream_free +EXPORT_SYMBOL_GPL drivers/slimbus/slimbus 0x7a68f218 slim_writeb +EXPORT_SYMBOL_GPL drivers/slimbus/slimbus 0x92ad9c63 slim_msg_response +EXPORT_SYMBOL_GPL drivers/slimbus/slimbus 0x92b42ea4 slim_alloc_txn_tid +EXPORT_SYMBOL_GPL drivers/slimbus/slimbus 0x94c4135a slimbus_bus +EXPORT_SYMBOL_GPL drivers/slimbus/slimbus 0xa7879fd7 slim_do_transfer +EXPORT_SYMBOL_GPL drivers/slimbus/slimbus 0xab57c5e1 slim_stream_disable +EXPORT_SYMBOL_GPL drivers/slimbus/slimbus 0xaed4769d slim_register_controller +EXPORT_SYMBOL_GPL drivers/slimbus/slimbus 0xb973535e __slim_driver_register +EXPORT_SYMBOL_GPL drivers/slimbus/slimbus 0xc388ec8d slim_unregister_controller +EXPORT_SYMBOL_GPL drivers/slimbus/slimbus 0xc4e5c9ae slim_get_device +EXPORT_SYMBOL_GPL drivers/slimbus/slimbus 0xd1af9518 slim_write +EXPORT_SYMBOL_GPL drivers/slimbus/slimbus 0xd209654f slim_ctrl_clk_pause +EXPORT_SYMBOL_GPL drivers/slimbus/slimbus 0xd60157af slim_read +EXPORT_SYMBOL_GPL drivers/slimbus/slimbus 0xecb6fab1 slim_stream_unprepare +EXPORT_SYMBOL_GPL drivers/slimbus/slimbus 0xef00f466 slim_driver_unregister +EXPORT_SYMBOL_GPL drivers/slimbus/slimbus 0xf2e98514 slim_stream_prepare +EXPORT_SYMBOL_GPL drivers/soundwire/soundwire-bus 0x19dd9281 __sdw_register_driver +EXPORT_SYMBOL_GPL drivers/soundwire/soundwire-bus 0xd9ad44fd sdw_bus_type +EXPORT_SYMBOL_GPL drivers/soundwire/soundwire-bus 0xf91e1680 sdw_unregister_driver +EXPORT_SYMBOL_GPL drivers/spi/spi-bitbang 0x3dbf923b spi_bitbang_cleanup +EXPORT_SYMBOL_GPL drivers/spi/spi-bitbang 0x4835f2f4 spi_bitbang_setup_transfer +EXPORT_SYMBOL_GPL drivers/spi/spi-bitbang 0x4b61261e spi_bitbang_init +EXPORT_SYMBOL_GPL drivers/spi/spi-bitbang 0x80b03108 spi_bitbang_start +EXPORT_SYMBOL_GPL drivers/spi/spi-bitbang 0xb81b8fe9 spi_bitbang_stop +EXPORT_SYMBOL_GPL drivers/spi/spi-bitbang 0xdc9364c7 spi_bitbang_setup +EXPORT_SYMBOL_GPL drivers/spi/spi-dw 0x177db86f dw_spi_dma_setup_mfld +EXPORT_SYMBOL_GPL drivers/spi/spi-dw 0x18d8dedb dw_spi_add_host +EXPORT_SYMBOL_GPL drivers/spi/spi-dw 0x21869281 dw_spi_update_cr0 +EXPORT_SYMBOL_GPL drivers/spi/spi-dw 0x6ee1bc45 dw_spi_suspend_host +EXPORT_SYMBOL_GPL drivers/spi/spi-dw 0x80c52ed6 dw_spi_resume_host +EXPORT_SYMBOL_GPL drivers/spi/spi-dw 0x93d3938a dw_spi_set_cs +EXPORT_SYMBOL_GPL drivers/spi/spi-dw 0xb6a663db dw_spi_update_cr0_v1_01a +EXPORT_SYMBOL_GPL drivers/spi/spi-dw 0xdc37133f dw_spi_remove_host +EXPORT_SYMBOL_GPL drivers/spi/spi-dw 0xfd8e0e12 dw_spi_dma_setup_generic +EXPORT_SYMBOL_GPL drivers/spi/spi-loopback-test 0x55e29f98 spi_test_run_tests +EXPORT_SYMBOL_GPL drivers/spi/spi-loopback-test 0x5a3380dc spi_test_execute_msg +EXPORT_SYMBOL_GPL drivers/spi/spi-loopback-test 0x7245c800 spi_test_run_test +EXPORT_SYMBOL_GPL drivers/spmi/spmi 0x093ed872 spmi_ext_register_write +EXPORT_SYMBOL_GPL drivers/spmi/spmi 0x20060998 spmi_command_reset +EXPORT_SYMBOL_GPL drivers/spmi/spmi 0x2b8515bf spmi_command_shutdown +EXPORT_SYMBOL_GPL drivers/spmi/spmi 0x3ea0d23e spmi_ext_register_writel +EXPORT_SYMBOL_GPL drivers/spmi/spmi 0x5a2ffc47 spmi_command_sleep +EXPORT_SYMBOL_GPL drivers/spmi/spmi 0x672d6429 spmi_ext_register_readl +EXPORT_SYMBOL_GPL drivers/spmi/spmi 0x782115b0 spmi_ext_register_read +EXPORT_SYMBOL_GPL drivers/spmi/spmi 0x81ef93a8 spmi_register_zero_write +EXPORT_SYMBOL_GPL drivers/spmi/spmi 0x893a7c80 spmi_controller_add +EXPORT_SYMBOL_GPL drivers/spmi/spmi 0x99072155 spmi_command_wakeup +EXPORT_SYMBOL_GPL drivers/spmi/spmi 0x9dc09e4a spmi_controller_remove +EXPORT_SYMBOL_GPL drivers/spmi/spmi 0xb1b7a607 spmi_controller_alloc +EXPORT_SYMBOL_GPL drivers/spmi/spmi 0xc13cfb8e spmi_device_remove +EXPORT_SYMBOL_GPL drivers/spmi/spmi 0xc2957026 spmi_register_write +EXPORT_SYMBOL_GPL drivers/spmi/spmi 0xc4846b20 spmi_register_read +EXPORT_SYMBOL_GPL drivers/spmi/spmi 0xe35e78ba __spmi_driver_register +EXPORT_SYMBOL_GPL drivers/spmi/spmi 0xf024fe5f spmi_device_alloc +EXPORT_SYMBOL_GPL drivers/spmi/spmi 0xfa24d8a0 spmi_device_add +EXPORT_SYMBOL_GPL drivers/ssb/ssb 0xeb337bed ssb_pmu_spuravoid_pllupdate +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x0c719de9 comedi_driver_unregister +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x0cd330f4 range_unknown +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x12c2134b comedi_set_spriv_auto_free +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x1315e74c comedi_legacy_detach +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x21102f87 range_0_32mA +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x22439a2b comedi_nscans_left +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x2ed36f95 comedi_check_chanlist +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x2f0ad9d3 range_bipolar5 +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x309fd007 comedi_is_subdevice_running +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x311609ad comedi_driver_register +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x378b386c comedi_buf_read_n_available +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x4236eaaf range_4_20mA +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x4fe634f3 range_bipolar2_5 +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x50e0ac21 comedi_buf_read_free +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x56c4aab6 comedi_dio_insn_config +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x56e173b1 comedi_buf_read_alloc +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x5a68f463 comedi_alloc_subdevices +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x603449c8 comedi_buf_write_alloc +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x621c6a42 comedi_dev_put +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x77c21d61 comedi_event +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x78a13ca7 comedi_timeout +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x8113872c range_unipolar10 +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x83f4d495 comedi_buf_write_samples +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x84510abd comedi_alloc_devpriv +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x8690238b comedi_buf_write_free +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x87e85287 comedi_set_hw_dev +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x898b75ca comedi_handle_events +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x931dd672 comedi_alloc_subdev_readback +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0xb3e5835a comedi_bytes_per_scan +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0xb679cebc range_0_20mA +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0xb7eebc4a comedi_load_firmware +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0xbb1aea50 comedi_buf_read_samples +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0xbb52fc7f range_bipolar10 +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0xbdbe75c6 range_unipolar2_5 +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0xccef2518 comedi_auto_config +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0xcd27be07 comedi_dev_get_from_minor +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0xcec4c010 comedi_request_region +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0xd1cb81f1 comedi_bytes_per_scan_cmd +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0xd71947b2 comedi_readback_insn_read +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0xdb2044b2 range_unipolar5 +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0xdcafb8f3 comedi_alloc_spriv +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0xe236914c comedi_auto_unconfig +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0xe36b733e comedi_nsamples_left +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0xe9b532f4 comedi_dio_update_state +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0xeef98eff comedi_inc_scan_progress +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0xf3f224b7 __comedi_request_region +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi_pci 0x4b3d27d3 comedi_pci_driver_unregister +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi_pci 0x7e75fccd comedi_pci_enable +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi_pci 0x878f6272 comedi_pci_auto_config +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi_pci 0x9ac4373f comedi_pci_disable +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi_pci 0xad713010 comedi_pci_auto_unconfig +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi_pci 0xc0c08592 comedi_pci_detach +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi_pci 0xc68d406c comedi_pci_driver_register +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi_pci 0xca16811d comedi_to_pci_dev +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi_usb 0x12677228 comedi_usb_driver_unregister +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi_usb 0x1fb99607 comedi_usb_driver_register +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi_usb 0x33cbba8e comedi_usb_auto_unconfig +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi_usb 0x447126fb comedi_to_usb_interface +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi_usb 0xa138a672 comedi_to_usb_dev +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi_usb 0xe8b76b7e comedi_usb_auto_config +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/addi_watchdog 0x79f4a6cf addi_watchdog_reset +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/addi_watchdog 0xeac585d3 addi_watchdog_init +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/amplc_dio200_common 0xdf538e61 amplc_dio200_set_enhance +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/amplc_dio200_common 0xf7ffe48b amplc_dio200_common_attach +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/amplc_pc236_common 0x219e8a53 amplc_pc236_common_attach +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/comedi_8254 0x1212cb11 comedi_8254_write +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/comedi_8254 0x21b6f92c comedi_8254_cascade_ns_to_timer +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/comedi_8254 0x2261cf4f comedi_8254_set_mode +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/comedi_8254 0x4af4f186 comedi_8254_load +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/comedi_8254 0x4d29ce21 comedi_8254_read +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/comedi_8254 0x88122403 comedi_8254_set_busy +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/comedi_8254 0xc0e54502 comedi_8254_update_divisors +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/comedi_8254 0xc68c3651 comedi_8254_init +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/comedi_8254 0xd024ee44 comedi_8254_pacer_enable +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/comedi_8254 0xd46e6423 comedi_8254_ns_to_timer +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/comedi_8254 0xdd042c81 comedi_8254_mm_init +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/comedi_8254 0xe61f1ab7 comedi_8254_status +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/comedi_8254 0xee5bd371 comedi_8254_subdevice_init +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/comedi_8255 0x14235f23 subdev_8255_mm_init +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/comedi_8255 0x4c03279e subdev_8255_regbase +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/comedi_8255 0xeea64d0c subdev_8255_init +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/comedi_isadma 0x12fba874 comedi_isadma_disable +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/comedi_isadma 0x4a17474e comedi_isadma_disable_on_sample +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/comedi_isadma 0x899309d4 comedi_isadma_free +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/comedi_isadma 0x9011ecdc comedi_isadma_alloc +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/comedi_isadma 0xca784d4b comedi_isadma_set_mode +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/comedi_isadma 0xe3601f70 comedi_isadma_poll +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/comedi_isadma 0xea878430 comedi_isadma_program +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/das08 0x360d9008 das08_common_attach +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/mite 0x01c55da8 mite_attach +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/mite 0x04ab7643 mite_done +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/mite 0x203c3eba mite_bytes_in_transit +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/mite 0x26835c43 mite_release_channel +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/mite 0x307cb758 mite_buf_change +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/mite 0x35a1e4e1 mite_alloc_ring +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/mite 0x375770db mite_request_channel_in_range +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/mite 0x3cf5d177 mite_detach +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/mite 0x415b3a09 mite_sync_dma +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/mite 0x632de76c mite_dma_arm +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/mite 0x6feac1b5 mite_init_ring_descriptors +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/mite 0xc0a7accc mite_dma_disarm +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/mite 0xceb2537c mite_prep_dma +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/mite 0xe253d07c mite_request_channel +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/mite 0xe5e6fd65 mite_free_ring +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/mite 0xfcc4cad7 mite_ack_linkc +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/ni_labpc_common 0x2243a599 labpc_common_detach +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/ni_labpc_common 0x7cb4dfaa labpc_common_attach +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/ni_labpc_isadma 0x2a23ffb1 labpc_drain_dma +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/ni_labpc_isadma 0x5308e497 labpc_handle_dma_status +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/ni_labpc_isadma 0x8ea603b3 labpc_free_dma_chan +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/ni_labpc_isadma 0xc7b9f10e labpc_init_dma_chan +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/ni_labpc_isadma 0xe107fa15 labpc_setup_dma +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/ni_routing 0x076bc308 ni_find_route_source +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/ni_routing 0x0921123e ni_lookup_route_register +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/ni_routing 0x1facf7f8 ni_is_cmd_dest +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/ni_routing 0x64443d67 ni_get_valid_routes +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/ni_routing 0x6c18c54e ni_count_valid_routes +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/ni_routing 0x85e75c94 ni_assign_device_routes +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/ni_routing 0x863a306d ni_sort_device_routes +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/ni_routing 0x8ab47ba4 ni_route_set_has_source +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/ni_routing 0x8f0f0901 ni_find_route_set +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/ni_routing 0xb3e302a3 ni_route_to_register +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/ni_tio 0x13f17b1b ni_tio_arm +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/ni_tio 0x2144c7c3 ni_tio_set_gate_src_raw +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/ni_tio 0x257f6f4c ni_tio_set_gate_src +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/ni_tio 0x471967e4 ni_tio_read +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/ni_tio 0x4a4b8301 ni_tio_write +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/ni_tio 0x5b269fbd ni_gpct_device_construct +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/ni_tio 0x70eb8359 ni_tio_set_bits +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/ni_tio 0x8cca3893 ni_tio_get_soft_copy +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/ni_tio 0xc298a86a ni_tio_get_routing +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/ni_tio 0xc45548de ni_tio_insn_read +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/ni_tio 0xc5f17e00 ni_tio_set_routing +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/ni_tio 0xc7207729 ni_tio_insn_config +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/ni_tio 0xcd0d6284 ni_tio_unset_routing +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/ni_tio 0xd921b5b8 ni_tio_insn_write +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/ni_tio 0xd9e8c0e0 ni_gpct_device_destroy +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/ni_tio 0xe4f6fd38 ni_tio_init_counter +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/ni_tiocmd 0x10fcedd1 ni_tio_cancel +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/ni_tiocmd 0x32522a82 ni_tio_handle_interrupt +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/ni_tiocmd 0x7c199221 ni_tio_acknowledge +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/ni_tiocmd 0xc3b471e7 ni_tio_cmd +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/ni_tiocmd 0xc492c216 ni_tio_cmdtest +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/ni_tiocmd 0xdd56f944 ni_tio_set_mite_channel +EXPORT_SYMBOL_GPL drivers/staging/comedi/kcomedilib/kcomedilib 0x152567ff comedi_get_n_channels +EXPORT_SYMBOL_GPL drivers/staging/comedi/kcomedilib/kcomedilib 0x5866d2c9 comedi_open +EXPORT_SYMBOL_GPL drivers/staging/comedi/kcomedilib/kcomedilib 0x587f8725 comedi_find_subdevice_by_type +EXPORT_SYMBOL_GPL drivers/staging/comedi/kcomedilib/kcomedilib 0x9335a9f5 comedi_dio_bitfield2 +EXPORT_SYMBOL_GPL drivers/staging/comedi/kcomedilib/kcomedilib 0xb05cc4d7 comedi_dio_config +EXPORT_SYMBOL_GPL drivers/staging/comedi/kcomedilib/kcomedilib 0xc816f6e1 comedi_close +EXPORT_SYMBOL_GPL drivers/staging/comedi/kcomedilib/kcomedilib 0xf8e76375 comedi_dio_get_config +EXPORT_SYMBOL_GPL drivers/staging/fieldbus/anybuss/anybuss_core 0x17c06ac6 anybuss_client_driver_unregister +EXPORT_SYMBOL_GPL drivers/staging/fieldbus/anybuss/anybuss_core 0x1de48b8e anybuss_read_output +EXPORT_SYMBOL_GPL drivers/staging/fieldbus/anybuss/anybuss_core 0x1fce3349 anybuss_set_power +EXPORT_SYMBOL_GPL drivers/staging/fieldbus/anybuss/anybuss_core 0x2c1a7444 anybuss_host_common_probe +EXPORT_SYMBOL_GPL drivers/staging/fieldbus/anybuss/anybuss_core 0x305f1dff anybuss_read_fbctrl +EXPORT_SYMBOL_GPL drivers/staging/fieldbus/anybuss/anybuss_core 0x4b2759b8 devm_anybuss_host_common_probe +EXPORT_SYMBOL_GPL drivers/staging/fieldbus/anybuss/anybuss_core 0x82b9dfe9 anybuss_write_input +EXPORT_SYMBOL_GPL drivers/staging/fieldbus/anybuss/anybuss_core 0x879a5e06 anybuss_recv_msg +EXPORT_SYMBOL_GPL drivers/staging/fieldbus/anybuss/anybuss_core 0x8b3207f6 anybuss_send_msg +EXPORT_SYMBOL_GPL drivers/staging/fieldbus/anybuss/anybuss_core 0xa2ae6915 anybuss_finish_init +EXPORT_SYMBOL_GPL drivers/staging/fieldbus/anybuss/anybuss_core 0xeba70ebe anybuss_start_init +EXPORT_SYMBOL_GPL drivers/staging/fieldbus/anybuss/anybuss_core 0xf0c585ee anybuss_client_driver_register +EXPORT_SYMBOL_GPL drivers/staging/fieldbus/anybuss/anybuss_core 0xfc8d641a anybuss_send_ext +EXPORT_SYMBOL_GPL drivers/staging/fieldbus/anybuss/anybuss_core 0xfce879ad anybuss_host_common_remove +EXPORT_SYMBOL_GPL drivers/staging/fieldbus/fieldbus_dev 0x502ed92e fieldbus_dev_unregister +EXPORT_SYMBOL_GPL drivers/staging/fieldbus/fieldbus_dev 0x74ffd714 fieldbus_dev_online_changed +EXPORT_SYMBOL_GPL drivers/staging/fieldbus/fieldbus_dev 0xc294d16f fieldbus_dev_area_updated +EXPORT_SYMBOL_GPL drivers/staging/fieldbus/fieldbus_dev 0xc5643640 fieldbus_dev_register +EXPORT_SYMBOL_GPL drivers/staging/greybus/gb-audio-apbridgea 0x022bb59b gb_audio_apbridgea_stop_tx +EXPORT_SYMBOL_GPL drivers/staging/greybus/gb-audio-apbridgea 0x19868787 gb_audio_apbridgea_stop_rx +EXPORT_SYMBOL_GPL drivers/staging/greybus/gb-audio-apbridgea 0x2a45f9c1 gb_audio_apbridgea_set_config +EXPORT_SYMBOL_GPL drivers/staging/greybus/gb-audio-apbridgea 0x42e8a663 gb_audio_apbridgea_set_tx_data_size +EXPORT_SYMBOL_GPL drivers/staging/greybus/gb-audio-apbridgea 0x45625550 gb_audio_apbridgea_set_rx_data_size +EXPORT_SYMBOL_GPL drivers/staging/greybus/gb-audio-apbridgea 0x4d40a575 gb_audio_apbridgea_prepare_tx +EXPORT_SYMBOL_GPL drivers/staging/greybus/gb-audio-apbridgea 0x56ed9769 gb_audio_apbridgea_prepare_rx +EXPORT_SYMBOL_GPL drivers/staging/greybus/gb-audio-apbridgea 0x623dd7a9 gb_audio_apbridgea_unregister_cport +EXPORT_SYMBOL_GPL drivers/staging/greybus/gb-audio-apbridgea 0x7b02af8f gb_audio_apbridgea_start_rx +EXPORT_SYMBOL_GPL drivers/staging/greybus/gb-audio-apbridgea 0xae5ff668 gb_audio_apbridgea_shutdown_tx +EXPORT_SYMBOL_GPL drivers/staging/greybus/gb-audio-apbridgea 0xb5f2c474 gb_audio_apbridgea_shutdown_rx +EXPORT_SYMBOL_GPL drivers/staging/greybus/gb-audio-apbridgea 0xc95a5be0 gb_audio_apbridgea_start_tx +EXPORT_SYMBOL_GPL drivers/staging/greybus/gb-audio-apbridgea 0xdaec18fa gb_audio_apbridgea_register_cport +EXPORT_SYMBOL_GPL drivers/staging/greybus/gb-audio-gb 0x01679967 gb_audio_gb_set_control +EXPORT_SYMBOL_GPL drivers/staging/greybus/gb-audio-gb 0x09482e57 gb_audio_gb_get_pcm +EXPORT_SYMBOL_GPL drivers/staging/greybus/gb-audio-gb 0x0b0fee40 gb_audio_gb_set_rx_data_size +EXPORT_SYMBOL_GPL drivers/staging/greybus/gb-audio-gb 0x0b9115a2 gb_audio_gb_get_control +EXPORT_SYMBOL_GPL drivers/staging/greybus/gb-audio-gb 0x4be3ed1c gb_audio_gb_set_tx_data_size +EXPORT_SYMBOL_GPL drivers/staging/greybus/gb-audio-gb 0x71aac450 gb_audio_gb_disable_widget +EXPORT_SYMBOL_GPL drivers/staging/greybus/gb-audio-gb 0x93343a09 gb_audio_gb_activate_rx +EXPORT_SYMBOL_GPL drivers/staging/greybus/gb-audio-gb 0xb8aa2f22 gb_audio_gb_activate_tx +EXPORT_SYMBOL_GPL drivers/staging/greybus/gb-audio-gb 0xc61568a6 gb_audio_gb_get_topology +EXPORT_SYMBOL_GPL drivers/staging/greybus/gb-audio-gb 0xdc11b4b5 gb_audio_gb_deactivate_tx +EXPORT_SYMBOL_GPL drivers/staging/greybus/gb-audio-gb 0xed520cce gb_audio_gb_enable_widget +EXPORT_SYMBOL_GPL drivers/staging/greybus/gb-audio-gb 0xf78fa19e gb_audio_gb_deactivate_rx +EXPORT_SYMBOL_GPL drivers/staging/greybus/gb-audio-gb 0xf7e42e05 gb_audio_gb_set_pcm +EXPORT_SYMBOL_GPL drivers/staging/greybus/gb-audio-manager 0x19e9e6b1 gb_audio_manager_remove_all +EXPORT_SYMBOL_GPL drivers/staging/greybus/gb-audio-manager 0x27f4936e gb_audio_manager_put_module +EXPORT_SYMBOL_GPL drivers/staging/greybus/gb-audio-manager 0x32e6391e gb_audio_manager_remove +EXPORT_SYMBOL_GPL drivers/staging/greybus/gb-audio-manager 0x5a108b0f gb_audio_manager_add +EXPORT_SYMBOL_GPL drivers/staging/greybus/gb-audio-manager 0x79eef2f8 gb_audio_manager_dump_all +EXPORT_SYMBOL_GPL drivers/staging/greybus/gb-audio-manager 0xaeac8ca2 gb_audio_manager_dump_module +EXPORT_SYMBOL_GPL drivers/staging/greybus/gb-audio-manager 0xce262c7b gb_audio_manager_get_module +EXPORT_SYMBOL_GPL drivers/staging/greybus/gb-gbphy 0x986ab471 gb_gbphy_deregister_driver +EXPORT_SYMBOL_GPL drivers/staging/greybus/gb-gbphy 0xf7722c6c gb_gbphy_register_driver +EXPORT_SYMBOL_GPL drivers/staging/greybus/gb-spilib 0x00fd7eb8 gb_spilib_master_exit +EXPORT_SYMBOL_GPL drivers/staging/greybus/gb-spilib 0x9cd79a7b gb_spilib_master_init +EXPORT_SYMBOL_GPL drivers/staging/iio/addac/adt7316 0x3f8b5023 adt7316_pm_ops +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0x0a87ca51 synth_add +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0x0c4cc5f5 spk_do_catch_up_unicode +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0x0ef1d765 speakup_info +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0x1b4e3de6 synth_current +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0x1e39eb14 synth_putws +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0x2603ad33 spk_ttyio_synth_probe +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0x41a160e5 synth_buffer_empty +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0x4449e1dd synth_buffer_clear +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0x466f5eb7 synth_putwc +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0x4d3760d8 spk_synth_is_alive_restart +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0x4d560bac spk_synth_is_alive_nop +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0x5e2b0833 spk_var_store +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0x5e34f168 spk_serial_synth_probe +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0x696ab4d7 spk_var_show +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0x6f702722 synth_remove +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0x76d40046 synth_buffer_skip_nonlatin1 +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0x84dad068 synth_buffer_getc +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0x8c82dfca synth_request_region +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0x8e50055a spk_stop_serial_interrupt +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0x8fe0db01 synth_putwc_s +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0x93bb8a9a spk_serial_io_ops +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0x94f28768 spk_ttyio_synth_immediate +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0xaadb0612 synth_buffer_peek +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0xae7d6424 spk_ttyio_release +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0xb68cbedf spk_ttyio_ops +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0xb95b0515 spk_synth_get_index +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0xba0088e0 speakup_event +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0xbbd15a51 speakup_start_ttys +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0xbe3f0c60 spk_do_catch_up +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0xc319c604 synth_putws_s +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0xcca44049 spk_synth_flush +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0xd8fd86cf synth_release_region +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0xe194d0ef synth_printf +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0xe7cd4558 spk_serial_release +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0xfcf2b02b spk_serial_synth_immediate +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0xfd189eef spk_get_var +EXPORT_SYMBOL_GPL drivers/staging/wilc1000/wilc1000 0x38ce74f9 wilc_netdev_cleanup +EXPORT_SYMBOL_GPL drivers/staging/wilc1000/wilc1000 0x4646b1a3 wilc_cfg80211_init +EXPORT_SYMBOL_GPL drivers/staging/wilc1000/wilc1000 0x4bdf823f chip_allow_sleep +EXPORT_SYMBOL_GPL drivers/staging/wilc1000/wilc1000 0x5b7d613f host_sleep_notify +EXPORT_SYMBOL_GPL drivers/staging/wilc1000/wilc1000 0xc1ae88c2 wilc_handle_isr +EXPORT_SYMBOL_GPL drivers/staging/wilc1000/wilc1000 0xce7aae43 host_wakeup_notify +EXPORT_SYMBOL_GPL drivers/staging/wilc1000/wilc1000 0xdf16f6f4 chip_wakeup +EXPORT_SYMBOL_GPL drivers/thunderbolt/thunderbolt 0x01d23ee1 tb_property_create_dir +EXPORT_SYMBOL_GPL drivers/thunderbolt/thunderbolt 0x06d695c4 tb_service_type +EXPORT_SYMBOL_GPL drivers/thunderbolt/thunderbolt 0x23130426 tb_ring_poll +EXPORT_SYMBOL_GPL drivers/thunderbolt/thunderbolt 0x393a9c96 tb_xdomain_find_by_uuid +EXPORT_SYMBOL_GPL drivers/thunderbolt/thunderbolt 0x393b4f2f tb_property_free_dir +EXPORT_SYMBOL_GPL drivers/thunderbolt/thunderbolt 0x40f7b929 tb_xdomain_disable_paths +EXPORT_SYMBOL_GPL drivers/thunderbolt/thunderbolt 0x49a252c1 tb_register_service_driver +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 0x518a4349 tb_ring_alloc_tx +EXPORT_SYMBOL_GPL drivers/thunderbolt/thunderbolt 0x603249ed tb_unregister_property_dir +EXPORT_SYMBOL_GPL drivers/thunderbolt/thunderbolt 0x658e3d97 tb_property_add_immediate +EXPORT_SYMBOL_GPL drivers/thunderbolt/thunderbolt 0x691986fb tb_ring_alloc_rx +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 0x8b62f95e tb_property_add_dir +EXPORT_SYMBOL_GPL drivers/thunderbolt/thunderbolt 0x8dbdac15 tb_ring_start +EXPORT_SYMBOL_GPL drivers/thunderbolt/thunderbolt 0x9ea58fc1 __tb_ring_enqueue +EXPORT_SYMBOL_GPL drivers/thunderbolt/thunderbolt 0xa353bfe0 tb_xdomain_request +EXPORT_SYMBOL_GPL drivers/thunderbolt/thunderbolt 0xa3d2b403 tb_property_add_data +EXPORT_SYMBOL_GPL drivers/thunderbolt/thunderbolt 0xa49b620b tb_xdomain_response +EXPORT_SYMBOL_GPL drivers/thunderbolt/thunderbolt 0xaa875dc5 tb_unregister_service_driver +EXPORT_SYMBOL_GPL drivers/thunderbolt/thunderbolt 0xb7c7cdce tb_property_add_text +EXPORT_SYMBOL_GPL drivers/thunderbolt/thunderbolt 0xb8dc3a93 tb_xdomain_enable_paths +EXPORT_SYMBOL_GPL drivers/thunderbolt/thunderbolt 0xd7a08723 tb_ring_free +EXPORT_SYMBOL_GPL drivers/thunderbolt/thunderbolt 0xe8897ff1 tb_xdomain_type +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/thunderbolt/thunderbolt 0xf814d165 tb_ring_stop +EXPORT_SYMBOL_GPL drivers/thunderbolt/thunderbolt 0xf92b47c7 tb_xdomain_find_by_route +EXPORT_SYMBOL_GPL drivers/thunderbolt/thunderbolt 0xfe4d4058 tb_ring_poll_complete +EXPORT_SYMBOL_GPL drivers/tty/n_tracesink 0x8a422e5e n_tracesink_datadrain +EXPORT_SYMBOL_GPL drivers/uio/uio 0x0e4736ea uio_unregister_device +EXPORT_SYMBOL_GPL drivers/uio/uio 0xae8f5c8e __uio_register_device +EXPORT_SYMBOL_GPL drivers/uio/uio 0xd3f6c0d3 __devm_uio_register_device +EXPORT_SYMBOL_GPL drivers/uio/uio 0xf6bba73b uio_event_notify +EXPORT_SYMBOL_GPL drivers/usb/atm/usbatm 0x4363516f usbatm_usb_disconnect +EXPORT_SYMBOL_GPL drivers/usb/atm/usbatm 0x76320b95 usbatm_usb_probe +EXPORT_SYMBOL_GPL drivers/usb/chipidea/ci_hdrc 0xbd3b2062 ci_hdrc_add_device +EXPORT_SYMBOL_GPL drivers/usb/chipidea/ci_hdrc 0xf1561739 ci_hdrc_remove_device +EXPORT_SYMBOL_GPL drivers/usb/chipidea/ci_hdrc 0xf8dcfc29 hw_phymode_configure +EXPORT_SYMBOL_GPL drivers/usb/chipidea/usbmisc_imx 0x37737026 imx_usbmisc_set_wakeup +EXPORT_SYMBOL_GPL drivers/usb/chipidea/usbmisc_imx 0x78a93ee5 imx_usbmisc_charger_detection +EXPORT_SYMBOL_GPL drivers/usb/chipidea/usbmisc_imx 0x84c1b492 imx_usbmisc_hsic_set_connect +EXPORT_SYMBOL_GPL drivers/usb/chipidea/usbmisc_imx 0xa0f97fc6 imx_usbmisc_init +EXPORT_SYMBOL_GPL drivers/usb/chipidea/usbmisc_imx 0xa951dfbe imx_usbmisc_hsic_set_clk +EXPORT_SYMBOL_GPL drivers/usb/chipidea/usbmisc_imx 0xabb6c71b imx_usbmisc_init_post +EXPORT_SYMBOL_GPL drivers/usb/common/ulpi 0x28068082 ulpi_read +EXPORT_SYMBOL_GPL drivers/usb/common/ulpi 0x41273f4b ulpi_write +EXPORT_SYMBOL_GPL drivers/usb/common/ulpi 0x416471ab ulpi_register_interface +EXPORT_SYMBOL_GPL drivers/usb/common/ulpi 0x60866043 ulpi_unregister_interface +EXPORT_SYMBOL_GPL drivers/usb/common/ulpi 0x889670cf ulpi_unregister_driver +EXPORT_SYMBOL_GPL drivers/usb/common/ulpi 0xa503dfc1 __ulpi_register_driver +EXPORT_SYMBOL_GPL drivers/usb/gadget/function/u_audio 0x3f680502 u_audio_stop_playback +EXPORT_SYMBOL_GPL drivers/usb/gadget/function/u_audio 0x539bd020 g_audio_setup +EXPORT_SYMBOL_GPL drivers/usb/gadget/function/u_audio 0x78e08289 u_audio_start_capture +EXPORT_SYMBOL_GPL drivers/usb/gadget/function/u_audio 0x8d230c93 u_audio_stop_capture +EXPORT_SYMBOL_GPL drivers/usb/gadget/function/u_audio 0xa6a5a0bc g_audio_cleanup +EXPORT_SYMBOL_GPL drivers/usb/gadget/function/u_audio 0xc2ff3ff6 u_audio_start_playback +EXPORT_SYMBOL_GPL drivers/usb/gadget/function/u_ether 0x00430c08 gether_set_dev_addr +EXPORT_SYMBOL_GPL drivers/usb/gadget/function/u_ether 0x0938ac04 gether_get_dev_addr +EXPORT_SYMBOL_GPL drivers/usb/gadget/function/u_ether 0x2b836868 gether_connect +EXPORT_SYMBOL_GPL drivers/usb/gadget/function/u_ether 0x4c12fd6e gether_setup_name +EXPORT_SYMBOL_GPL drivers/usb/gadget/function/u_ether 0x61fc902b gether_get_host_addr +EXPORT_SYMBOL_GPL drivers/usb/gadget/function/u_ether 0x62b28922 gether_disconnect +EXPORT_SYMBOL_GPL drivers/usb/gadget/function/u_ether 0x6a17ee6b gether_set_host_addr +EXPORT_SYMBOL_GPL drivers/usb/gadget/function/u_ether 0x7f8f978b gether_set_qmult +EXPORT_SYMBOL_GPL drivers/usb/gadget/function/u_ether 0x8878cfa6 gether_cleanup +EXPORT_SYMBOL_GPL drivers/usb/gadget/function/u_ether 0xbfca6fac gether_register_netdev +EXPORT_SYMBOL_GPL drivers/usb/gadget/function/u_ether 0xc2c1db21 gether_get_host_addr_cdc +EXPORT_SYMBOL_GPL drivers/usb/gadget/function/u_ether 0xc8c98eb4 gether_get_ifname +EXPORT_SYMBOL_GPL drivers/usb/gadget/function/u_ether 0xd4bd7850 gether_setup_name_default +EXPORT_SYMBOL_GPL drivers/usb/gadget/function/u_ether 0xd5e11853 gether_get_host_addr_u8 +EXPORT_SYMBOL_GPL drivers/usb/gadget/function/u_ether 0xee10292a gether_set_gadget +EXPORT_SYMBOL_GPL drivers/usb/gadget/function/u_ether 0xf9fb6a70 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 0x4a3df9d0 gs_alloc_req +EXPORT_SYMBOL_GPL drivers/usb/gadget/function/u_serial 0x60db48f5 gserial_get_console +EXPORT_SYMBOL_GPL drivers/usb/gadget/function/u_serial 0x60ea48a0 gs_free_req +EXPORT_SYMBOL_GPL drivers/usb/gadget/function/u_serial 0x72648e8f gserial_suspend +EXPORT_SYMBOL_GPL drivers/usb/gadget/function/u_serial 0xb6652875 gserial_free_line +EXPORT_SYMBOL_GPL drivers/usb/gadget/function/u_serial 0xc0a01527 gserial_set_console +EXPORT_SYMBOL_GPL drivers/usb/gadget/function/u_serial 0xca0304e5 gserial_resume +EXPORT_SYMBOL_GPL drivers/usb/gadget/function/u_serial 0xe1c685f6 gserial_disconnect +EXPORT_SYMBOL_GPL drivers/usb/gadget/function/u_serial 0xe4d30822 gserial_connect +EXPORT_SYMBOL_GPL drivers/usb/gadget/function/u_serial 0xe89dc424 gserial_alloc_line_no_console +EXPORT_SYMBOL_GPL drivers/usb/gadget/function/usb_f_fs 0x1bd356b7 ffs_name_dev +EXPORT_SYMBOL_GPL drivers/usb/gadget/function/usb_f_fs 0x1be2e787 ffs_single_dev +EXPORT_SYMBOL_GPL drivers/usb/gadget/function/usb_f_fs 0xa496e576 ffs_lock +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 0x1899f9ff fsg_show_ro +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 0x265ba2ff fsg_store_inquiry_string +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 0x2e2dd7ee fsg_common_remove_lun +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 0x3d3865b5 fsg_store_cdrom +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 0x4dec30cd fsg_lun_fsync_sub +EXPORT_SYMBOL_GPL drivers/usb/gadget/function/usb_f_mass_storage 0x4e603fb0 fsg_lun_close +EXPORT_SYMBOL_GPL drivers/usb/gadget/function/usb_f_mass_storage 0x50209085 fsg_show_removable +EXPORT_SYMBOL_GPL drivers/usb/gadget/function/usb_f_mass_storage 0x54834a2c fsg_store_ro +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 0x671421c0 fsg_common_set_cdev +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 0x70e03495 fsg_store_nofua +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 0x857b6dc2 fsg_hs_function +EXPORT_SYMBOL_GPL drivers/usb/gadget/function/usb_f_mass_storage 0x90b59fca fsg_show_nofua +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 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 0xab6c68ac fsg_config_from_params +EXPORT_SYMBOL_GPL drivers/usb/gadget/function/usb_f_mass_storage 0xb26b7177 fsg_store_file +EXPORT_SYMBOL_GPL drivers/usb/gadget/function/usb_f_mass_storage 0xb2c2cece fsg_show_cdrom +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 0xd1a3e8e0 fsg_common_create_luns +EXPORT_SYMBOL_GPL drivers/usb/gadget/function/usb_f_mass_storage 0xd1d29ac1 fsg_show_file +EXPORT_SYMBOL_GPL drivers/usb/gadget/function/usb_f_mass_storage 0xec3b3027 fsg_show_inquiry_string +EXPORT_SYMBOL_GPL drivers/usb/gadget/function/usb_f_mass_storage 0xedc2eb0f fsg_store_removable +EXPORT_SYMBOL_GPL drivers/usb/gadget/function/usb_f_mass_storage 0xeeb7b5c7 fsg_lun_open +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_rndis 0x025334fd rndis_signal_disconnect +EXPORT_SYMBOL_GPL drivers/usb/gadget/function/usb_f_rndis 0x04f412ae rndis_set_param_medium +EXPORT_SYMBOL_GPL drivers/usb/gadget/function/usb_f_rndis 0x183bda62 rndis_deregister +EXPORT_SYMBOL_GPL drivers/usb/gadget/function/usb_f_rndis 0x5254ae84 rndis_msg_parser +EXPORT_SYMBOL_GPL drivers/usb/gadget/function/usb_f_rndis 0x591fb459 rndis_register +EXPORT_SYMBOL_GPL drivers/usb/gadget/function/usb_f_rndis 0x5e61e97c rndis_set_param_vendor +EXPORT_SYMBOL_GPL drivers/usb/gadget/function/usb_f_rndis 0x7cda0fb8 rndis_signal_connect +EXPORT_SYMBOL_GPL drivers/usb/gadget/function/usb_f_rndis 0x92f8b638 rndis_set_param_dev +EXPORT_SYMBOL_GPL drivers/usb/gadget/function/usb_f_rndis 0x972b3643 rndis_free_response +EXPORT_SYMBOL_GPL drivers/usb/gadget/function/usb_f_rndis 0xa321d288 rndis_add_hdr +EXPORT_SYMBOL_GPL drivers/usb/gadget/function/usb_f_rndis 0xa4b11b3a rndis_rm_hdr +EXPORT_SYMBOL_GPL drivers/usb/gadget/function/usb_f_rndis 0xd9bb08a3 rndis_uninit +EXPORT_SYMBOL_GPL drivers/usb/gadget/function/usb_f_rndis 0xdec473ba rndis_borrow_net +EXPORT_SYMBOL_GPL drivers/usb/gadget/function/usb_f_rndis 0xf3b5a88d rndis_set_host_mac +EXPORT_SYMBOL_GPL drivers/usb/gadget/function/usb_f_rndis 0xf5d98eb3 rndis_get_next_response +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0x0c589aba usb_validate_langid +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0x0cb7e477 usb_ep_autoconfig_release +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0x1e861933 usb_put_function +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0x2711cbb2 usb_assign_descriptors +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0x2e09263f usb_copy_descriptors +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0x2f09fc19 usb_string_id +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0x339bd354 usb_ep_autoconfig_ss +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0x34afa007 usb_free_all_descriptors +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0x4beb505d usb_gadget_get_string +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0x51c232ae usb_add_function +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0x555d43ed config_ep_by_speed_and_alt +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0x59110ac7 usb_put_function_instance +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0x5c346bd4 usb_ep_autoconfig_reset +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0x609a3ce4 usb_gstrings_attach +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0x666e68e4 usb_composite_setup_continue +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0x6709b6d6 usb_interface_id +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0x6ac7fc48 usb_function_activate +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0x788dd692 usb_otg_descriptor_init +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0x7891221f usb_get_function +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0x89165541 usb_ep_autoconfig +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0x96de3eed usb_function_register +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0x98dde9e5 usb_composite_unregister +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0xac0339db usb_function_unregister +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0xb17566dc usb_composite_probe +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0xb775db55 alloc_ep_req +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0xb83296bc config_ep_by_speed +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0xd2ea2134 usb_descriptor_fillbuf +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0xd82edd94 usb_function_deactivate +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0xdb3b333c usb_add_config +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0xdc11f3ca unregister_gadget_item +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0xdcb3a11f usb_add_config_only +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0xea1a7036 usb_get_function_instance +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0xecdecdd6 usb_composite_overwrite_options +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0xf278495e usb_string_ids_tab +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0xf45b1596 usb_string_ids_n +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0xf474a207 usb_gadget_config_buf +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0xfd86b7ca usb_otg_descriptor_alloc +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0xfda5d6d4 usb_remove_function +EXPORT_SYMBOL_GPL drivers/usb/gadget/udc/snps_udc_core 0x033aea24 udc_mask_unused_interrupts +EXPORT_SYMBOL_GPL drivers/usb/gadget/udc/snps_udc_core 0x0b20025c udc_remove +EXPORT_SYMBOL_GPL drivers/usb/gadget/udc/snps_udc_core 0x5d01d078 udc_irq +EXPORT_SYMBOL_GPL drivers/usb/gadget/udc/snps_udc_core 0x8ff2425c init_dma_pools +EXPORT_SYMBOL_GPL drivers/usb/gadget/udc/snps_udc_core 0x9a60f351 gadget_release +EXPORT_SYMBOL_GPL drivers/usb/gadget/udc/snps_udc_core 0xa541e23e free_dma_pools +EXPORT_SYMBOL_GPL drivers/usb/gadget/udc/snps_udc_core 0xcfd45fe0 udc_enable_dev_setup_interrupts +EXPORT_SYMBOL_GPL drivers/usb/gadget/udc/snps_udc_core 0xd0b31cc5 udc_probe +EXPORT_SYMBOL_GPL drivers/usb/gadget/udc/snps_udc_core 0xfb2c97e1 empty_req_queue +EXPORT_SYMBOL_GPL drivers/usb/gadget/udc/snps_udc_core 0xfe233d37 udc_basic_init +EXPORT_SYMBOL_GPL drivers/usb/gadget/udc/udc-core 0x01b12bfb usb_ep_free_request +EXPORT_SYMBOL_GPL drivers/usb/gadget/udc/udc-core 0x0a8c3b4b usb_ep_set_halt +EXPORT_SYMBOL_GPL drivers/usb/gadget/udc/udc-core 0x0acfe2e7 usb_ep_set_wedge +EXPORT_SYMBOL_GPL drivers/usb/gadget/udc/udc-core 0x0d90d784 usb_ep_fifo_flush +EXPORT_SYMBOL_GPL drivers/usb/gadget/udc/udc-core 0x0f32454e usb_gadget_probe_driver +EXPORT_SYMBOL_GPL drivers/usb/gadget/udc/udc-core 0x1a93aa04 usb_gadget_ep_match_desc +EXPORT_SYMBOL_GPL drivers/usb/gadget/udc/udc-core 0x25cba006 usb_add_gadget_udc_release +EXPORT_SYMBOL_GPL drivers/usb/gadget/udc/udc-core 0x2e00125b usb_gadget_clear_selfpowered +EXPORT_SYMBOL_GPL drivers/usb/gadget/udc/udc-core 0x2f690078 usb_gadget_vbus_connect +EXPORT_SYMBOL_GPL drivers/usb/gadget/udc/udc-core 0x38946f43 usb_gadget_activate +EXPORT_SYMBOL_GPL drivers/usb/gadget/udc/udc-core 0x3ed6715b usb_gadget_udc_reset +EXPORT_SYMBOL_GPL drivers/usb/gadget/udc/udc-core 0x42d486b1 usb_gadget_map_request +EXPORT_SYMBOL_GPL drivers/usb/gadget/udc/udc-core 0x49d9f030 usb_ep_fifo_status +EXPORT_SYMBOL_GPL drivers/usb/gadget/udc/udc-core 0x506ab3a9 usb_ep_queue +EXPORT_SYMBOL_GPL drivers/usb/gadget/udc/udc-core 0x50b88f41 usb_get_gadget_udc_name +EXPORT_SYMBOL_GPL drivers/usb/gadget/udc/udc-core 0x55262fd0 usb_gadget_vbus_draw +EXPORT_SYMBOL_GPL drivers/usb/gadget/udc/udc-core 0x56ac1ca8 usb_gadget_set_state +EXPORT_SYMBOL_GPL drivers/usb/gadget/udc/udc-core 0x5743df93 usb_del_gadget_udc +EXPORT_SYMBOL_GPL drivers/usb/gadget/udc/udc-core 0x5b035bec usb_gadget_set_selfpowered +EXPORT_SYMBOL_GPL drivers/usb/gadget/udc/udc-core 0x5fc294ef usb_ep_clear_halt +EXPORT_SYMBOL_GPL drivers/usb/gadget/udc/udc-core 0x7a41b9f2 usb_ep_set_maxpacket_limit +EXPORT_SYMBOL_GPL drivers/usb/gadget/udc/udc-core 0x7be89624 usb_gadget_giveback_request +EXPORT_SYMBOL_GPL drivers/usb/gadget/udc/udc-core 0x7fcafb7d usb_gadget_frame_number +EXPORT_SYMBOL_GPL drivers/usb/gadget/udc/udc-core 0x882077d5 usb_ep_dequeue +EXPORT_SYMBOL_GPL drivers/usb/gadget/udc/udc-core 0x8be00387 usb_gadget_wakeup +EXPORT_SYMBOL_GPL drivers/usb/gadget/udc/udc-core 0x8deaa651 usb_udc_vbus_handler +EXPORT_SYMBOL_GPL drivers/usb/gadget/udc/udc-core 0x92051424 gadget_find_ep_by_name +EXPORT_SYMBOL_GPL drivers/usb/gadget/udc/udc-core 0x9eb52803 usb_ep_disable +EXPORT_SYMBOL_GPL drivers/usb/gadget/udc/udc-core 0xa58637e5 usb_gadget_deactivate +EXPORT_SYMBOL_GPL drivers/usb/gadget/udc/udc-core 0xa9e74462 usb_ep_alloc_request +EXPORT_SYMBOL_GPL drivers/usb/gadget/udc/udc-core 0xaab8b609 usb_gadget_vbus_disconnect +EXPORT_SYMBOL_GPL drivers/usb/gadget/udc/udc-core 0xaf201fa6 usb_ep_enable +EXPORT_SYMBOL_GPL drivers/usb/gadget/udc/udc-core 0xb35380bb usb_gadget_unregister_driver +EXPORT_SYMBOL_GPL drivers/usb/gadget/udc/udc-core 0xbbcd5b4f usb_gadget_map_request_by_dev +EXPORT_SYMBOL_GPL drivers/usb/gadget/udc/udc-core 0xd73bce43 usb_gadget_disconnect +EXPORT_SYMBOL_GPL drivers/usb/gadget/udc/udc-core 0xdd62a46f usb_add_gadget_udc +EXPORT_SYMBOL_GPL drivers/usb/gadget/udc/udc-core 0xe31a1d58 usb_gadget_unmap_request_by_dev +EXPORT_SYMBOL_GPL drivers/usb/gadget/udc/udc-core 0xede51fdd usb_gadget_unmap_request +EXPORT_SYMBOL_GPL drivers/usb/gadget/udc/udc-core 0xfd740245 usb_gadget_connect +EXPORT_SYMBOL_GPL drivers/usb/host/xhci-pci-renesas 0x84a72c87 renesas_xhci_pci_exit +EXPORT_SYMBOL_GPL drivers/usb/host/xhci-pci-renesas 0x87797974 renesas_xhci_check_request_fw +EXPORT_SYMBOL_GPL drivers/usb/misc/ezusb 0x23f42075 ezusb_fx1_ihex_firmware_download +EXPORT_SYMBOL_GPL drivers/usb/misc/ezusb 0x30d728ec ezusb_fx1_set_reset +EXPORT_SYMBOL_GPL drivers/usb/misc/ftdi-elan 0x06d01d74 usb_ftdi_elan_edset_setup +EXPORT_SYMBOL_GPL drivers/usb/misc/ftdi-elan 0x127adb12 usb_ftdi_elan_edset_single +EXPORT_SYMBOL_GPL drivers/usb/misc/ftdi-elan 0x328ebad2 usb_ftdi_elan_edset_flush +EXPORT_SYMBOL_GPL drivers/usb/misc/ftdi-elan 0x3773ee0d ftdi_elan_gone_away +EXPORT_SYMBOL_GPL drivers/usb/misc/ftdi-elan 0x5d6f6f36 usb_ftdi_elan_read_pcimem +EXPORT_SYMBOL_GPL drivers/usb/misc/ftdi-elan 0x79ff9816 usb_ftdi_elan_edset_input +EXPORT_SYMBOL_GPL drivers/usb/misc/ftdi-elan 0x82045e72 usb_ftdi_elan_edset_empty +EXPORT_SYMBOL_GPL drivers/usb/misc/ftdi-elan 0xd90decd9 usb_ftdi_elan_write_pcimem +EXPORT_SYMBOL_GPL drivers/usb/misc/ftdi-elan 0xda2375c5 usb_ftdi_elan_edset_output +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 0x1ae0a976 musb_get_mode +EXPORT_SYMBOL_GPL drivers/usb/musb/musb_hdrc 0x2734197f musb_readb +EXPORT_SYMBOL_GPL drivers/usb/musb/musb_hdrc 0x2cdd5ef3 musb_queue_resume_work +EXPORT_SYMBOL_GPL drivers/usb/musb/musb_hdrc 0x49722939 musb_interrupt +EXPORT_SYMBOL_GPL drivers/usb/musb/musb_hdrc 0x51dd0839 musb_set_peripheral +EXPORT_SYMBOL_GPL drivers/usb/musb/musb_hdrc 0x669594ad musb_clearw +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 0xade3e56c musb_writew +EXPORT_SYMBOL_GPL drivers/usb/musb/musb_hdrc 0xc10f36ef musb_set_host +EXPORT_SYMBOL_GPL drivers/usb/musb/musb_hdrc 0xe59efb0e musb_clearb +EXPORT_SYMBOL_GPL drivers/usb/musb/musb_hdrc 0xee278970 musb_root_disconnect +EXPORT_SYMBOL_GPL drivers/usb/musb/musb_hdrc 0xf0f95e51 musb_readl +EXPORT_SYMBOL_GPL drivers/usb/phy/phy-generic 0x432ef72d usb_phy_generic_unregister +EXPORT_SYMBOL_GPL drivers/usb/phy/phy-generic 0x49c988db usb_gen_phy_shutdown +EXPORT_SYMBOL_GPL drivers/usb/phy/phy-generic 0x4d3b3582 usb_phy_generic_register +EXPORT_SYMBOL_GPL drivers/usb/phy/phy-generic 0x702df01d usb_gen_phy_init +EXPORT_SYMBOL_GPL drivers/usb/phy/phy-generic 0xbfee51c7 usb_phy_gen_create_phy +EXPORT_SYMBOL_GPL drivers/usb/phy/phy-isp1301 0xee52463d isp1301_get_client +EXPORT_SYMBOL_GPL drivers/usb/roles/roles 0x1690b503 usb_role_switch_get_drvdata +EXPORT_SYMBOL_GPL drivers/usb/roles/roles 0x2882d40e usb_role_switch_unregister +EXPORT_SYMBOL_GPL drivers/usb/roles/roles 0x315ebbc2 usb_role_switch_find_by_fwnode +EXPORT_SYMBOL_GPL drivers/usb/roles/roles 0x4ce06f13 usb_role_switch_get +EXPORT_SYMBOL_GPL drivers/usb/roles/roles 0x516599f0 usb_role_switch_register +EXPORT_SYMBOL_GPL drivers/usb/roles/roles 0x51a348cc usb_role_switch_set_drvdata +EXPORT_SYMBOL_GPL drivers/usb/roles/roles 0xa0e3d538 fwnode_usb_role_switch_get +EXPORT_SYMBOL_GPL drivers/usb/roles/roles 0xc9fd634a usb_role_switch_put +EXPORT_SYMBOL_GPL drivers/usb/roles/roles 0xd5474690 usb_role_switch_set_role +EXPORT_SYMBOL_GPL drivers/usb/roles/roles 0xff42c374 usb_role_switch_get_role +EXPORT_SYMBOL_GPL drivers/usb/serial/usb_wwan 0xcc4e48d2 usb_wwan_port_probe +EXPORT_SYMBOL_GPL drivers/usb/serial/usbserial 0x011e7b2d usb_serial_generic_wait_until_sent +EXPORT_SYMBOL_GPL drivers/usb/serial/usbserial 0x17268a9d usb_serial_generic_write_start +EXPORT_SYMBOL_GPL drivers/usb/serial/usbserial 0x1a190d52 usb_serial_generic_write_bulk_callback +EXPORT_SYMBOL_GPL drivers/usb/serial/usbserial 0x1ac74079 usb_serial_handle_sysrq_char +EXPORT_SYMBOL_GPL drivers/usb/serial/usbserial 0x1cf5441e usb_serial_handle_break +EXPORT_SYMBOL_GPL drivers/usb/serial/usbserial 0x23d79352 usb_serial_generic_open +EXPORT_SYMBOL_GPL drivers/usb/serial/usbserial 0x2c5d1dd0 usb_serial_generic_resume +EXPORT_SYMBOL_GPL drivers/usb/serial/usbserial 0x314eb20b usb_serial_generic_get_icount +EXPORT_SYMBOL_GPL drivers/usb/serial/usbserial 0x42d4dea7 usb_serial_generic_close +EXPORT_SYMBOL_GPL drivers/usb/serial/usbserial 0x44bd11c9 usb_serial_deregister_drivers +EXPORT_SYMBOL_GPL drivers/usb/serial/usbserial 0x57f9e101 usb_serial_generic_write +EXPORT_SYMBOL_GPL drivers/usb/serial/usbserial 0x5e038545 usb_serial_generic_unthrottle +EXPORT_SYMBOL_GPL drivers/usb/serial/usbserial 0x7676331c usb_serial_generic_read_bulk_callback +EXPORT_SYMBOL_GPL drivers/usb/serial/usbserial 0xb8f5f5f1 usb_serial_register_drivers +EXPORT_SYMBOL_GPL drivers/usb/serial/usbserial 0xc2e51d3e usb_serial_generic_process_read_urb +EXPORT_SYMBOL_GPL drivers/usb/serial/usbserial 0xc8e1ad19 usb_serial_generic_submit_read_urbs +EXPORT_SYMBOL_GPL drivers/usb/serial/usbserial 0xcc95ecfc usb_serial_handle_dcd_change +EXPORT_SYMBOL_GPL drivers/usb/serial/usbserial 0xcffa8913 usb_serial_generic_throttle +EXPORT_SYMBOL_GPL drivers/usb/serial/usbserial 0xe4d11453 usb_serial_generic_chars_in_buffer +EXPORT_SYMBOL_GPL drivers/usb/serial/usbserial 0xec67b0c6 usb_serial_port_softint +EXPORT_SYMBOL_GPL drivers/usb/serial/usbserial 0xfc16457d usb_serial_generic_tiocmiwait +EXPORT_SYMBOL_GPL drivers/usb/typec/altmodes/typec_displayport 0x03da9ccd dp_altmode_probe +EXPORT_SYMBOL_GPL drivers/usb/typec/altmodes/typec_displayport 0x8f6abe24 dp_altmode_remove +EXPORT_SYMBOL_GPL drivers/usb/typec/tcpm/tcpci 0x6f497a3c tcpci_irq +EXPORT_SYMBOL_GPL drivers/usb/typec/tcpm/tcpci 0x70345ff9 tcpci_register_port +EXPORT_SYMBOL_GPL drivers/usb/typec/tcpm/tcpci 0xc529e32e tcpci_unregister_port +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 0xb655342c tcpm_pd_receive +EXPORT_SYMBOL_GPL drivers/usb/typec/tcpm/tcpm 0xc37b9769 tcpm_cc_change +EXPORT_SYMBOL_GPL drivers/usb/typec/tcpm/tcpm 0xc7fee416 tcpm_register_port +EXPORT_SYMBOL_GPL drivers/usb/typec/tcpm/tcpm 0xceb50012 tcpm_vbus_change +EXPORT_SYMBOL_GPL drivers/usb/typec/tcpm/tcpm 0xea220941 tcpm_tcpc_reset +EXPORT_SYMBOL_GPL drivers/usb/typec/typec 0x001495fb __typec_altmode_register_driver +EXPORT_SYMBOL_GPL drivers/usb/typec/typec 0x03608f2a typec_cable_set_identity +EXPORT_SYMBOL_GPL drivers/usb/typec/typec 0x08ad5e53 typec_mux_register +EXPORT_SYMBOL_GPL drivers/usb/typec/typec 0x0c589db2 fwnode_typec_switch_get +EXPORT_SYMBOL_GPL drivers/usb/typec/typec 0x1b90ac2b typec_unregister_plug +EXPORT_SYMBOL_GPL drivers/usb/typec/typec 0x288fcb6f typec_port_register_altmode +EXPORT_SYMBOL_GPL drivers/usb/typec/typec 0x2c4b45c2 typec_cable_is_active +EXPORT_SYMBOL_GPL drivers/usb/typec/typec 0x2d1e301d typec_find_power_role +EXPORT_SYMBOL_GPL drivers/usb/typec/typec 0x33fd62de typec_set_pwr_opmode +EXPORT_SYMBOL_GPL drivers/usb/typec/typec 0x36852716 typec_set_orientation +EXPORT_SYMBOL_GPL drivers/usb/typec/typec 0x3c4e4c53 typec_altmode_unregister_driver +EXPORT_SYMBOL_GPL drivers/usb/typec/typec 0x426285ea typec_unregister_cable +EXPORT_SYMBOL_GPL drivers/usb/typec/typec 0x469ff96e typec_switch_unregister +EXPORT_SYMBOL_GPL drivers/usb/typec/typec 0x48501462 typec_match_altmode +EXPORT_SYMBOL_GPL drivers/usb/typec/typec 0x493159cc typec_partner_set_identity +EXPORT_SYMBOL_GPL drivers/usb/typec/typec 0x4aaf4de5 typec_cable_put +EXPORT_SYMBOL_GPL drivers/usb/typec/typec 0x4d0636fe typec_mux_set +EXPORT_SYMBOL_GPL drivers/usb/typec/typec 0x4f023d7e typec_switch_get_drvdata +EXPORT_SYMBOL_GPL drivers/usb/typec/typec 0x504a0f5f typec_altmode_put_plug +EXPORT_SYMBOL_GPL drivers/usb/typec/typec 0x54c93810 typec_set_mode +EXPORT_SYMBOL_GPL drivers/usb/typec/typec 0x560f3c0e typec_register_port +EXPORT_SYMBOL_GPL drivers/usb/typec/typec 0x5869adb2 typec_get_orientation +EXPORT_SYMBOL_GPL drivers/usb/typec/typec 0x59169f18 typec_altmode_notify +EXPORT_SYMBOL_GPL drivers/usb/typec/typec 0x5ac3a632 typec_set_vconn_role +EXPORT_SYMBOL_GPL drivers/usb/typec/typec 0x5f2c6469 typec_set_data_role +EXPORT_SYMBOL_GPL drivers/usb/typec/typec 0x5f357e64 typec_altmode_get_plug +EXPORT_SYMBOL_GPL drivers/usb/typec/typec 0x614740d9 typec_register_partner +EXPORT_SYMBOL_GPL drivers/usb/typec/typec 0x6d41bd13 typec_mux_unregister +EXPORT_SYMBOL_GPL drivers/usb/typec/typec 0x718746bc typec_altmode_enter +EXPORT_SYMBOL_GPL drivers/usb/typec/typec 0x734a9c4d typec_get_drvdata +EXPORT_SYMBOL_GPL drivers/usb/typec/typec 0x74319c8a typec_altmode_update_active +EXPORT_SYMBOL_GPL drivers/usb/typec/typec 0x77d7f5fb typec_mux_put +EXPORT_SYMBOL_GPL drivers/usb/typec/typec 0x7a496a8f typec_plug_register_altmode +EXPORT_SYMBOL_GPL drivers/usb/typec/typec 0x7e2998e7 typec_set_pwr_role +EXPORT_SYMBOL_GPL drivers/usb/typec/typec 0x7f10abf6 typec_altmode2port +EXPORT_SYMBOL_GPL drivers/usb/typec/typec 0x877776e8 typec_altmode_get_partner +EXPORT_SYMBOL_GPL drivers/usb/typec/typec 0x88631134 fwnode_typec_mux_get +EXPORT_SYMBOL_GPL drivers/usb/typec/typec 0x9049491e typec_find_port_data_role +EXPORT_SYMBOL_GPL drivers/usb/typec/typec 0x9cad8da6 typec_unregister_partner +EXPORT_SYMBOL_GPL drivers/usb/typec/typec 0x9f693450 typec_mux_set_drvdata +EXPORT_SYMBOL_GPL drivers/usb/typec/typec 0xa254de98 typec_find_orientation +EXPORT_SYMBOL_GPL drivers/usb/typec/typec 0xb73777a3 typec_switch_set_drvdata +EXPORT_SYMBOL_GPL drivers/usb/typec/typec 0xc4aa4adc typec_altmode_attention +EXPORT_SYMBOL_GPL drivers/usb/typec/typec 0xcb4433f2 typec_switch_set +EXPORT_SYMBOL_GPL drivers/usb/typec/typec 0xd0b95b25 typec_switch_put +EXPORT_SYMBOL_GPL drivers/usb/typec/typec 0xda0a9c4c typec_unregister_port +EXPORT_SYMBOL_GPL drivers/usb/typec/typec 0xde83e38a typec_cable_get +EXPORT_SYMBOL_GPL drivers/usb/typec/typec 0xdf879728 typec_switch_register +EXPORT_SYMBOL_GPL drivers/usb/typec/typec 0xe2c3b700 typec_register_cable +EXPORT_SYMBOL_GPL drivers/usb/typec/typec 0xe5953743 typec_unregister_altmode +EXPORT_SYMBOL_GPL drivers/usb/typec/typec 0xe8c78c61 typec_altmode_exit +EXPORT_SYMBOL_GPL drivers/usb/typec/typec 0xe99e2a1f typec_mux_get_drvdata +EXPORT_SYMBOL_GPL drivers/usb/typec/typec 0xeafc1eb8 typec_find_port_power_role +EXPORT_SYMBOL_GPL drivers/usb/typec/typec 0xeb355944 typec_altmode_vdm +EXPORT_SYMBOL_GPL drivers/usb/typec/typec 0xee19f4b1 typec_register_plug +EXPORT_SYMBOL_GPL drivers/usb/typec/typec 0xfd32774c typec_partner_register_altmode +EXPORT_SYMBOL_GPL drivers/usb/typec/ucsi/typec_ucsi 0x24d0e0c3 ucsi_create +EXPORT_SYMBOL_GPL drivers/usb/typec/ucsi/typec_ucsi 0x38683a33 ucsi_unregister +EXPORT_SYMBOL_GPL drivers/usb/typec/ucsi/typec_ucsi 0x52a39e3e ucsi_set_drvdata +EXPORT_SYMBOL_GPL drivers/usb/typec/ucsi/typec_ucsi 0x6d597e11 ucsi_register +EXPORT_SYMBOL_GPL drivers/usb/typec/ucsi/typec_ucsi 0x7aca2da2 ucsi_get_drvdata +EXPORT_SYMBOL_GPL drivers/usb/typec/ucsi/typec_ucsi 0x874a61e8 ucsi_send_command +EXPORT_SYMBOL_GPL drivers/usb/typec/ucsi/typec_ucsi 0xa7df251b ucsi_destroy +EXPORT_SYMBOL_GPL drivers/usb/typec/ucsi/typec_ucsi 0xad5aa050 ucsi_init +EXPORT_SYMBOL_GPL drivers/usb/typec/ucsi/typec_ucsi 0xcc7bd400 ucsi_connector_change +EXPORT_SYMBOL_GPL drivers/usb/typec/ucsi/typec_ucsi 0xdd2461e9 ucsi_resume +EXPORT_SYMBOL_GPL drivers/usb/usbip/usbip-core 0x02291e1c usbip_in_eh +EXPORT_SYMBOL_GPL drivers/usb/usbip/usbip-core 0x049e648e usbip_event_happened +EXPORT_SYMBOL_GPL drivers/usb/usbip/usbip-core 0x26b9ba50 dev_attr_usbip_debug +EXPORT_SYMBOL_GPL drivers/usb/usbip/usbip-core 0x341f4519 usbip_pad_iso +EXPORT_SYMBOL_GPL drivers/usb/usbip/usbip-core 0x39044be3 usbip_recv_xbuff +EXPORT_SYMBOL_GPL drivers/usb/usbip/usbip-core 0x5ec28d85 usbip_event_add +EXPORT_SYMBOL_GPL drivers/usb/usbip/usbip-core 0x78b72f44 usbip_debug_flag +EXPORT_SYMBOL_GPL drivers/usb/usbip/usbip-core 0x8145b41a usbip_recv +EXPORT_SYMBOL_GPL drivers/usb/usbip/usbip-core 0x9abeaad8 usbip_stop_eh +EXPORT_SYMBOL_GPL drivers/usb/usbip/usbip-core 0x9deb9ffe usbip_pack_pdu +EXPORT_SYMBOL_GPL drivers/usb/usbip/usbip-core 0xc07714fe usbip_start_eh +EXPORT_SYMBOL_GPL drivers/usb/usbip/usbip-core 0xc7de9153 usbip_recv_iso +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 0xf32ee92c usbip_dump_urb +EXPORT_SYMBOL_GPL drivers/usb/usbip/usbip-core 0xfa8fbda9 usbip_alloc_iso_desc_pdu +EXPORT_SYMBOL_GPL drivers/vdpa/vdpa 0x031991de vdpa_register_device +EXPORT_SYMBOL_GPL drivers/vdpa/vdpa 0x1fbc215a __vdpa_register_driver +EXPORT_SYMBOL_GPL drivers/vdpa/vdpa 0x31b0c9a9 vdpa_unregister_device +EXPORT_SYMBOL_GPL drivers/vdpa/vdpa 0xc33d470a __vdpa_alloc_device +EXPORT_SYMBOL_GPL drivers/vdpa/vdpa 0xeae1d14c vdpa_unregister_driver +EXPORT_SYMBOL_GPL drivers/vfio/mdev/mdev 0x3c55ea44 mdev_bus_type +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x069820ee vhost_vq_is_setup +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x0c472ffc vhost_dev_cleanup +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x0e6799db vhost_poll_flush +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x0f192ebd vhost_enable_notify +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x11905638 vhost_dev_check_owner +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x1e2ed2a2 vhost_add_used_and_signal +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x2be722d1 vhost_dev_has_owner +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x35498be3 vhost_work_queue +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x3df16030 vhost_vring_ioctl +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x472641cb vhost_discard_vq_desc +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x49057e01 vhost_poll_queue +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x4abf2db9 vhost_add_used +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x530b9a60 vhost_add_used_n +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x55cbbfc8 vhost_dev_stop +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x5b476afb vhost_exceeds_weight +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x62509f36 vq_meta_prefetch +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x68a5bc6e vhost_vq_init_access +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x6a8a44a3 vhost_dev_set_owner +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x6c524d03 vhost_enqueue_msg +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x6fe037d4 vhost_dev_init +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x7801cfb2 vhost_dev_ioctl +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x781482ad vhost_init_device_iotlb +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x80b9263a vhost_dequeue_msg +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x87631811 vhost_log_access_ok +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x879455be vhost_get_vq_desc +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x8b3148ce vhost_new_msg +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x924264d5 vhost_disable_notify +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x937ebe12 vhost_poll_stop +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x96ae43ae vhost_signal +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x98e3b13d vhost_work_flush +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x9c59f145 vhost_chr_read_iter +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0xa483bed3 vhost_vq_access_ok +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0xa909cfc5 vhost_work_init +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0xc62cb4cd vhost_has_work +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0xc65ea064 vhost_poll_init +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0xc848a150 vhost_dev_reset_owner +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0xd01e2211 vhost_vq_avail_empty +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0xf27d49a1 vhost_poll_start +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0xf9da9d4b vhost_add_used_and_signal_n +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0xfd0dc823 vhost_log_write +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 0x514d0e6a vhost_iotlb_itree_first +EXPORT_SYMBOL_GPL drivers/vhost/vhost_iotlb 0x5f4e5249 vhost_iotlb_reset +EXPORT_SYMBOL_GPL drivers/vhost/vhost_iotlb 0x6bec0e66 vhost_iotlb_del_range +EXPORT_SYMBOL_GPL drivers/vhost/vhost_iotlb 0x7579334f vhost_iotlb_itree_next +EXPORT_SYMBOL_GPL drivers/vhost/vhost_iotlb 0xa24517eb vhost_iotlb_free +EXPORT_SYMBOL_GPL drivers/vhost/vhost_iotlb 0xad111707 vhost_iotlb_map_free +EXPORT_SYMBOL_GPL drivers/vhost/vhost_iotlb 0xc577832d vhost_iotlb_alloc +EXPORT_SYMBOL_GPL drivers/video/backlight/ili9320 0x2e5e75bf ili9320_probe_spi +EXPORT_SYMBOL_GPL drivers/video/backlight/ili9320 0x43115eae ili9320_suspend +EXPORT_SYMBOL_GPL drivers/video/backlight/ili9320 0x795796a0 ili9320_write +EXPORT_SYMBOL_GPL drivers/video/backlight/ili9320 0x882d6960 ili9320_shutdown +EXPORT_SYMBOL_GPL drivers/video/backlight/ili9320 0xa3f51bbb ili9320_write_regs +EXPORT_SYMBOL_GPL drivers/video/backlight/ili9320 0xe4df602a ili9320_remove +EXPORT_SYMBOL_GPL drivers/video/backlight/ili9320 0xee930fb5 ili9320_resume +EXPORT_SYMBOL_GPL drivers/video/fbdev/core/fb_ddc 0x23038fed fb_ddc_read +EXPORT_SYMBOL_GPL drivers/video/fbdev/core/fb_sys_fops 0x95ce8e2d fb_sys_write +EXPORT_SYMBOL_GPL drivers/video/fbdev/core/fb_sys_fops 0xb371c793 fb_sys_read +EXPORT_SYMBOL_GPL drivers/video/fbdev/sis/sisfb 0x2d70f08d sis_free_new +EXPORT_SYMBOL_GPL drivers/video/fbdev/sis/sisfb 0x4587b6fe sis_malloc_new +EXPORT_SYMBOL_GPL drivers/w1/wire 0x2bcf0a8c w1_reset_bus +EXPORT_SYMBOL_GPL drivers/w1/wire 0x63757e92 w1_calc_crc8 +EXPORT_SYMBOL_GPL drivers/w1/wire 0x789f3fd8 w1_touch_bit +EXPORT_SYMBOL_GPL drivers/w1/wire 0x7af29ef2 w1_read_8 +EXPORT_SYMBOL_GPL drivers/w1/wire 0x817e5629 w1_reset_resume_command +EXPORT_SYMBOL_GPL drivers/w1/wire 0x88ce0245 w1_reset_select_slave +EXPORT_SYMBOL_GPL drivers/w1/wire 0x9116ca68 w1_read_block +EXPORT_SYMBOL_GPL drivers/w1/wire 0xa2f322a0 w1_write_8 +EXPORT_SYMBOL_GPL drivers/w1/wire 0xdba57cb2 w1_write_block +EXPORT_SYMBOL_GPL drivers/w1/wire 0xe8a84775 w1_triplet +EXPORT_SYMBOL_GPL drivers/w1/wire 0xf0804651 w1_next_pullup +EXPORT_SYMBOL_GPL drivers/w1/wire 0xfedbcbf3 w1_touch_block +EXPORT_SYMBOL_GPL fs/dlm/dlm 0x0a86b0e9 dlm_posix_get +EXPORT_SYMBOL_GPL fs/dlm/dlm 0x3261e673 dlm_posix_unlock +EXPORT_SYMBOL_GPL fs/dlm/dlm 0x4b62826c dlm_unlock +EXPORT_SYMBOL_GPL fs/dlm/dlm 0x647d6170 dlm_lock +EXPORT_SYMBOL_GPL fs/dlm/dlm 0x86b76a21 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/fscache/fscache 0x092cf98e fscache_object_sleep_till_congested +EXPORT_SYMBOL_GPL fs/lockd/lockd 0x1b28cbff nlmclnt_init +EXPORT_SYMBOL_GPL fs/lockd/lockd 0x351b3b06 nlmclnt_proc +EXPORT_SYMBOL_GPL fs/lockd/lockd 0x46d9a2b5 lockd_up +EXPORT_SYMBOL_GPL fs/lockd/lockd 0x4f983643 lockd_down +EXPORT_SYMBOL_GPL fs/lockd/lockd 0x5d2c1ad1 nlmclnt_done +EXPORT_SYMBOL_GPL fs/lockd/lockd 0x5f201a1f nlmsvc_ops +EXPORT_SYMBOL_GPL fs/lockd/lockd 0x77e35ccc nlmsvc_unlock_all_by_ip +EXPORT_SYMBOL_GPL fs/lockd/lockd 0x9b6859ff nlmsvc_unlock_all_by_sb +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x020d7bdf nfs_generic_pg_test +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x0294c6a2 nfs_callback_nr_threads +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x029a82fa nfs_file_read +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x04f39e2d nfs_write_inode +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x055d98b0 nfs_filemap_write_and_wait_range +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x05b5b31f nfs_alloc_server +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x094faf78 nfs_sops +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x0ac946fa nfs_alloc_inode +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x0b412a1f nfs_put_client +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x0e3deb66 nfs_revalidate_inode +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x10962bc2 nfs_auth_info_match +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x16ec472f nfs_commitdata_alloc +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x178b8501 nfs_init_client +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x19c78c5c nfs_access_zap_cache +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x1a3726e9 nfs_fs_type +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x1b93d3a3 nfs_lookup +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x1b9dd9a7 nfs_link +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x1d1759dd nfs_permission +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x203f3f23 get_nfs_open_context +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x2055557b nfs_request_add_commit_list_locked +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x20b59c64 nfs_pgheader_init +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x2108e6dc nfs_clear_inode +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x213e6b70 nfs_request_remove_commit_list +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x21b77af7 nfs_mkdir +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x22d795a8 _nfs_display_fhandle_hash +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x233d7665 nfs_force_lookup_revalidate +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x24e9b7a1 nfs_setattr_update_inode +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x253186c3 nfs_wait_client_init_complete +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x259e61fd register_nfs_version +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x26884ff7 nfs_alloc_fhandle +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x268a40ff nfs_pgio_header_alloc +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x283c1e2a nfs_probe_fsinfo +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x2b9272a4 nfs_file_operations +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x2bfd3e29 nfs_may_open +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x2eb1b245 put_nfs_open_context +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x2f539667 nfs_show_path +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x2f894911 nfs_client_for_each_server +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x30477ec3 nfs_free_server +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x318c5e3b nfs_drop_inode +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x3443b6c9 nfs_async_iocounter_wait +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x35de099f nfs_writeback_update_inode +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x39aa0a09 nfs_add_or_obtain +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x39e05ac3 nfs_idmap_cache_timeout +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x3c524be6 nfs_sb_active +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x3cb2a942 nfs_getattr +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x3f2690f2 nfs_check_flags +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x40739385 nfs_wait_bit_killable +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x40828f47 nfs_dentry_operations +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x4128171c nfs_generic_pgio +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x4179b6d5 nfs_scan_commit_list +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x42f2c81f nfs4_client_id_uniquifier +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x4385cff2 nfs_fscache_open_file +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x439515fd alloc_nfs_open_context +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x43c933f9 nfs_create_rpc_client +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x485384e6 nfs_pageio_reset_write_mds +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x4a06eff9 nfs_retry_commit +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x4a0ef3fc nfs_pageio_reset_read_mds +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x4b62c98a nfs_instantiate +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x4c27adc9 unregister_nfs_version +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x4cb9e001 recover_lost_locks +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x4e31b9c5 nfs_server_insert_lists +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x4e8e0d13 nfs_submount +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x50b26404 nfs_clear_verifier_delegated +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x51892d61 nfs_callback_set_tcpport +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x551ece22 nfs_wait_on_request +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x554ad511 nfs_setsecurity +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x55566929 nfs_show_devname +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x558e775b nfs_mark_client_ready +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x584b8482 nfs_inc_attr_generation_counter +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x5fc92258 nfs4_dentry_operations +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x604fd61b nfs_atomic_open +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x648421f8 nfs_get_lock_context +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x689e8301 nfs_file_release +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x6f55d5e2 nfs_post_op_update_inode +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x7012ed81 nfs_clone_server +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x79a1e57c nfs_init_server_rpcclient +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x7bd109ea nfs_create_server +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x7c9722ba nfs_dreq_bytes_left +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x7d0da390 nfs_server_copy_userdata +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x80f89ca4 nfs_kill_super +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x817d6187 nfs_close_context +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x82e17bcc nfs_zap_acl_cache +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x82e60ffb nfs_file_llseek +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x832e8f0b nfs_alloc_fattr +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x842d192a nfs_get_client +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x86a59fb0 __tracepoint_nfs_xdr_status +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x8baf3849 nfs_commitdata_release +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x8ccebc64 nfs_commit_free +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x8d09e1c7 nfs_reconfigure +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x8e46bf23 nfs_setattr +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x8ef76641 nfs_refresh_inode +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x901cbca0 nfs_free_inode +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x9027ec00 nfs_wb_all +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x90a5530f nfsiod_workqueue +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x91d1fe52 max_session_slots +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x95b7c96f nfs_post_op_update_inode_force_wcc +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x98a6c879 nfs_commit_inode +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x98b0ece8 nfs_init_timeout_values +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x9a638f22 nfs_statfs +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x9a9c96f5 nfs_mknod +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x9bfb9b42 __tracepoint_nfs_fsync_exit +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x9d27a8c7 nfs_request_add_commit_list +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xa05ca625 nfs_fattr_init +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xa28d5650 nfs_show_stats +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xa5b8449b nfs_server_remove_lists +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xa6801e0e nfs_file_set_open_context +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xa71cd068 nfs_access_set_mask +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xa7530d3d nfs_init_commit +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xa779c17b nfs_create +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xa8e9e1ae send_implementation_id +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xa99f0f93 __tracepoint_nfs_fsync_enter +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xa9f3f713 nfs_unlink +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xaafd4acc max_session_cb_slots +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xad416646 nfs_fhget +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xaebaf859 nfs_sync_inode +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xaeea22c9 nfs_init_cinfo +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xb009f394 nfs_symlink +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xb2b9ee2e nfs_access_add_cache +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xb3b68797 nfs_initiate_commit +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xba76a4b6 nfs_client_init_is_complete +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xbb10e8a1 nfs_client_init_status +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xbbcb86b0 nfs_put_lock_context +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xbd08218f nfs_file_fsync +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xbeb27685 nfs_sb_deactive +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xc21cd9dc nfs_path +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xc3389c5c nfs_initiate_pgio +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xc3a2be67 nfs_net_id +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xc7c28316 nfs_free_client +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xc92aabad nfs_open +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xcd791bcc nfs_do_submount +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xd03681ea nfs_show_options +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xd714f12c nfs_file_write +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xd863e303 nfs4_fs_type +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xd95829e6 nfs_try_get_tree +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xdae9b5d7 nfs4_disable_idmapping +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xe1ccf388 nfs_lock +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xe3aa3fdc nfs_pageio_init_write +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xe5ff10be nfs_invalidate_atime +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xe7c39a75 nfs_rmdir +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xe95a0867 nfs_pgio_current_mirror +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xe998adf5 nfs_inode_attach_open_context +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xec0299c7 nfs4_label_alloc +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xec65d6eb nfs_pgio_header_free +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xf2d43d18 nfs_flock +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xf418771d nfs_umount_begin +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xf43d8bcf nfs_release_request +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xf618cb59 nfs_pageio_init_read +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xf846d3fd nfs_file_mmap +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xfa42693d nfs_alloc_client +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xfc619abd _nfs_display_fhandle +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xfd0dfe2b nfs_set_verifier +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xfd141f4a nfs_rename +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xfe240f1d nfs_pageio_resend +EXPORT_SYMBOL_GPL fs/nfs/nfsv3 0xd952913e nfs3_set_ds_client +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x022dd0d8 pnfs_destroy_layout +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x0346377a nfs4_schedule_lease_moved_recovery +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x034ff364 nfs41_sequence_done +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x03cc12d8 __tracepoint_nfs4_pnfs_write +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x054bef45 layoutstats_timer +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x0661482c pnfs_generic_pg_cleanup +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x073ebc62 __tracepoint_ff_layout_commit_error +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x09664723 pnfs_put_lseg +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x09746ead pnfs_generic_search_commit_reqs +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x0ac54844 pnfs_generic_pg_init_write +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x0ed6f3a1 pnfs_register_layoutdriver +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x121133e9 __tracepoint_pnfs_mds_fallback_write_done +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x19dbab7b nfs4_pnfs_ds_put +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x1a809420 nfs4_test_deviceid_unavailable +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x1bf70efa pnfs_generic_recover_commit_reqs +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x1d652264 pnfs_update_layout +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x20071109 pnfs_generic_pg_writepages +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x24c1c2c5 nfs4_delete_deviceid +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x25543692 pnfs_generic_clear_request_commit +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x26c5dbf4 pnfs_generic_pg_init_read +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x2a11bcf5 __tracepoint_ff_layout_read_error +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x2fa3f619 pnfs_generic_layout_insert_lseg +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x3216a5fa nfs4_mark_deviceid_available +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x32d3b224 __tracepoint_nfs4_pnfs_read +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x36158ab8 nfs4_sequence_done +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x43e39799 nfs4_setup_sequence +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x5f93a9bd nfs4_schedule_migration_recovery +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x6085edbd nfs_map_string_to_numeric +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x625e6532 nfs4_put_deviceid_node +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x69d3558d pnfs_generic_rw_release +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x71402ba2 nfs4_schedule_session_recovery +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x73928666 __tracepoint_pnfs_mds_fallback_read_done +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x7b2cd947 nfs4_mark_deviceid_unavailable +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x7f1b7c5a __tracepoint_nfs4_pnfs_commit_ds +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x8007d276 pnfs_layout_mark_request_commit +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x80e7db51 __tracepoint_pnfs_mds_fallback_write_pagelist +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x8285b28c pnfs_ld_write_done +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x8412cf86 pnfs_generic_pg_readpages +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x843074ca __tracepoint_pnfs_mds_fallback_pg_init_write +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x8a90ee23 pnfs_add_commit_array +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x8aa6dba4 pnfs_generic_ds_cinfo_destroy +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x8d52c136 nfs4_set_ds_client +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x95606d71 pnfs_nfs_generic_sync +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x9cbbf1c1 pnfs_ld_read_done +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x9d5d44e6 nfs4_init_deviceid_node +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x9e76e31c nfs42_ssc_close +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xa14d3ee9 nfs4_test_session_trunk +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xa38034c8 pnfs_generic_prepare_to_resend_writes +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xa45b692f pnfs_report_layoutstat +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xa5efc117 pnfs_generic_pg_check_layout +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xaf669bff pnfs_generic_sync +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xb0f4f1ee pnfs_alloc_commit_array +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xb39b2343 nfs4_init_ds_session +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xbc257b8a __tracepoint_ff_layout_write_error +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xc4c4a792 pnfs_unregister_layoutdriver +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xc61672b5 __tracepoint_pnfs_mds_fallback_pg_init_read +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xc9b21f1f pnfs_error_mark_layout_for_return +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xc9cb69be pnfs_set_layoutcommit +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xcb22eab8 nfs42_proc_layouterror +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xcb9d927b pnfs_generic_pg_test +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xcd434019 pnfs_write_done_resend_to_mds +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xcf23de60 nfs_remove_bad_delegation +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xcfb290b5 nfs4_pnfs_ds_connect +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xd01235de pnfs_set_lo_fail +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xd47694e6 nfs4_schedule_lease_recovery +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xd53c3c22 nfs4_proc_getdeviceinfo +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xd6f6b4d9 pnfs_generic_write_commit_done +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xd8d2f8d6 nfs4_pnfs_ds_add +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xd918c5d2 pnfs_read_done_resend_to_mds +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xdc53db81 __tracepoint_pnfs_mds_fallback_read_pagelist +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xde2503cd __tracepoint_pnfs_mds_fallback_pg_get_mirror_count +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xe037f629 nfs42_ssc_open +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xe09a8fb3 pnfs_generic_ds_cinfo_release_lseg +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xe2fb26b6 pnfs_read_resend_pnfs +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xe35f7150 pnfs_free_commit_array +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xec0c5907 pnfs_generic_commit_pagelist +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xed15fb41 nfs4_print_deviceid +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xef0e57f6 pnfs_generic_scan_commit_lists +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xf1912076 pnfs_layoutcommit_inode +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xf22dca68 pnfs_generic_pg_check_range +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xf2d1a610 nfs4_find_or_create_ds_client +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xf4b04424 nfs4_schedule_stateid_recovery +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xf7801360 nfs41_maxgetdevinfo_overhead +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xf8224e33 nfs4_set_rw_stateid +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xf999267e pnfs_generic_commit_release +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xfbfec23d nfs4_find_get_deviceid +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xfe614740 nfs4_decode_mp_ds_addr +EXPORT_SYMBOL_GPL fs/nfs_common/grace 0x09b887fa opens_in_grace +EXPORT_SYMBOL_GPL fs/nfs_common/grace 0x1fe1e1ad locks_end_grace +EXPORT_SYMBOL_GPL fs/nfs_common/grace 0x30d18432 locks_in_grace +EXPORT_SYMBOL_GPL fs/nfs_common/grace 0x592d4e53 locks_start_grace +EXPORT_SYMBOL_GPL fs/nfs_common/nfs_acl 0x5fe17aa0 nfsacl_encode +EXPORT_SYMBOL_GPL fs/nfs_common/nfs_acl 0x6f6a7718 nfsacl_decode +EXPORT_SYMBOL_GPL fs/nfsd/nfsd 0x5b388f0f inter_copy_offload_enable +EXPORT_SYMBOL_GPL fs/ocfs2/cluster/ocfs2_nodemanager 0x08829659 o2hb_unregister_callback +EXPORT_SYMBOL_GPL fs/ocfs2/cluster/ocfs2_nodemanager 0x1b89c6ee o2hb_fill_node_map +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 0x7380a714 o2nm_get_node_by_num +EXPORT_SYMBOL_GPL fs/ocfs2/cluster/ocfs2_nodemanager 0x81a17396 mlog_and_bits +EXPORT_SYMBOL_GPL fs/ocfs2/cluster/ocfs2_nodemanager 0x8d324799 o2hb_register_callback +EXPORT_SYMBOL_GPL fs/ocfs2/cluster/ocfs2_nodemanager 0x9f13c3f7 o2nm_get_node_by_ip +EXPORT_SYMBOL_GPL fs/ocfs2/cluster/ocfs2_nodemanager 0xa87bc9e7 o2nm_configured_node_map +EXPORT_SYMBOL_GPL fs/ocfs2/cluster/ocfs2_nodemanager 0xaebaf60f o2nm_node_get +EXPORT_SYMBOL_GPL fs/ocfs2/cluster/ocfs2_nodemanager 0xb48e94bb o2nm_node_put +EXPORT_SYMBOL_GPL fs/ocfs2/cluster/ocfs2_nodemanager 0xb64a04cf o2hb_setup_callback +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 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 0x2a9f3e42 dlmunlock +EXPORT_SYMBOL_GPL fs/ocfs2/dlm/ocfs2_dlm 0x7a1211f8 dlm_setup_eviction_cb +EXPORT_SYMBOL_GPL fs/ocfs2/dlm/ocfs2_dlm 0x85917e3c dlm_register_domain +EXPORT_SYMBOL_GPL fs/ocfs2/dlm/ocfs2_dlm 0x8cce6596 dlm_print_one_lock +EXPORT_SYMBOL_GPL fs/ocfs2/dlm/ocfs2_dlm 0x91d820e2 dlm_unregister_domain +EXPORT_SYMBOL_GPL fs/ocfs2/dlm/ocfs2_dlm 0xd7ba575e dlm_errmsg +EXPORT_SYMBOL_GPL fs/ocfs2/dlm/ocfs2_dlm 0xd82a5f7c dlm_register_eviction_cb +EXPORT_SYMBOL_GPL fs/ocfs2/dlm/ocfs2_dlm 0xd8fa57a6 dlm_unregister_eviction_cb +EXPORT_SYMBOL_GPL fs/ocfs2/dlm/ocfs2_dlm 0xe453a29c dlmlock +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 0x76f40744 ocfs2_dlm_lvb +EXPORT_SYMBOL_GPL fs/ocfs2/ocfs2_stackglue 0x7ec674a9 ocfs2_plock +EXPORT_SYMBOL_GPL fs/ocfs2/ocfs2_stackglue 0x9507547f ocfs2_cluster_disconnect +EXPORT_SYMBOL_GPL fs/ocfs2/ocfs2_stackglue 0xa65b7e55 ocfs2_stack_glue_unregister +EXPORT_SYMBOL_GPL fs/ocfs2/ocfs2_stackglue 0xac1f1ae4 ocfs2_kset +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 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 0xd7f8e474 ocfs2_stack_glue_register +EXPORT_SYMBOL_GPL fs/ocfs2/ocfs2_stackglue 0xd806a273 ocfs2_dlm_dump_lksb +EXPORT_SYMBOL_GPL fs/pstore/pstore_blk 0x43cc3d4b pstore_blk_get_config +EXPORT_SYMBOL_GPL fs/pstore/pstore_blk 0x941c79d7 unregister_pstore_blk +EXPORT_SYMBOL_GPL fs/pstore/pstore_blk 0x96d760c6 register_pstore_device +EXPORT_SYMBOL_GPL fs/pstore/pstore_blk 0xb32bf368 register_pstore_blk +EXPORT_SYMBOL_GPL fs/pstore/pstore_blk 0xc3d2aed6 unregister_pstore_device +EXPORT_SYMBOL_GPL fs/pstore/pstore_zone 0x4055bb6e unregister_pstore_zone +EXPORT_SYMBOL_GPL fs/pstore/pstore_zone 0x53c447d5 register_pstore_zone +EXPORT_SYMBOL_GPL kernel/torture 0x1b2fca48 torture_must_stop_irq +EXPORT_SYMBOL_GPL kernel/torture 0x1be7d8be torture_onoff_failures +EXPORT_SYMBOL_GPL kernel/torture 0x3e9619f5 torture_onoff_stats +EXPORT_SYMBOL_GPL kernel/torture 0x3ff9be11 torture_online +EXPORT_SYMBOL_GPL kernel/torture 0x447d9c95 torture_offline +EXPORT_SYMBOL_GPL kernel/torture 0x4c7529bd torture_shutdown_absorb +EXPORT_SYMBOL_GPL kernel/torture 0x52665f8b torture_random +EXPORT_SYMBOL_GPL kernel/torture 0x5a12a7da torture_stutter_init +EXPORT_SYMBOL_GPL kernel/torture 0x679d9e50 torture_must_stop +EXPORT_SYMBOL_GPL kernel/torture 0x688e6a64 torture_cleanup_end +EXPORT_SYMBOL_GPL kernel/torture 0x6c3ff11a torture_init_begin +EXPORT_SYMBOL_GPL kernel/torture 0x8b0e1d2f torture_shuffle_init +EXPORT_SYMBOL_GPL kernel/torture 0xc67a49d4 torture_cleanup_begin +EXPORT_SYMBOL_GPL kernel/torture 0xc94a93e3 torture_onoff_init +EXPORT_SYMBOL_GPL kernel/torture 0xce980922 _torture_stop_kthread +EXPORT_SYMBOL_GPL kernel/torture 0xcfb60d8c _torture_create_kthread +EXPORT_SYMBOL_GPL kernel/torture 0xdbc5277a torture_shutdown_init +EXPORT_SYMBOL_GPL kernel/torture 0xe2430307 stutter_wait +EXPORT_SYMBOL_GPL kernel/torture 0xe6989fd3 torture_init_end +EXPORT_SYMBOL_GPL kernel/torture 0xf2e873e8 torture_shuffle_task_register +EXPORT_SYMBOL_GPL kernel/torture 0xf6d34fb5 torture_kthread_stopping +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/crc64 0xeaf3cb23 crc64_be +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 0xbc3b5e35 poly1305_init_generic +EXPORT_SYMBOL_GPL lib/crypto/libpoly1305 0xd7219de2 poly1305_update_generic +EXPORT_SYMBOL_GPL lib/crypto/libpoly1305 0xf3945fcd poly1305_final_generic +EXPORT_SYMBOL_GPL lib/notifier-error-inject 0x567810c9 notifier_err_inject_dir +EXPORT_SYMBOL_GPL lib/notifier-error-inject 0x591a2145 notifier_err_inject_init +EXPORT_SYMBOL_GPL lib/raid6/raid6_pq 0x1803a6ed raid6_2data_recov +EXPORT_SYMBOL_GPL lib/raid6/raid6_pq 0x2b30f429 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 0x0b303bce lowpan_header_compress +EXPORT_SYMBOL_GPL net/6lowpan/6lowpan 0xcd7a778a lowpan_header_decompress +EXPORT_SYMBOL_GPL net/802/garp 0x3619983d garp_init_applicant +EXPORT_SYMBOL_GPL net/802/garp 0x3b451e45 garp_uninit_applicant +EXPORT_SYMBOL_GPL net/802/garp 0x3f5dd408 garp_register_application +EXPORT_SYMBOL_GPL net/802/garp 0xcb83ba1e garp_request_join +EXPORT_SYMBOL_GPL net/802/garp 0xe6082a3c garp_unregister_application +EXPORT_SYMBOL_GPL net/802/garp 0xe61d79f1 garp_request_leave +EXPORT_SYMBOL_GPL net/802/mrp 0x2f60a253 mrp_register_application +EXPORT_SYMBOL_GPL net/802/mrp 0x4b7dc33e mrp_request_leave +EXPORT_SYMBOL_GPL net/802/mrp 0x79b5f7da mrp_uninit_applicant +EXPORT_SYMBOL_GPL net/802/mrp 0xeebce714 mrp_request_join +EXPORT_SYMBOL_GPL net/802/mrp 0xf9548b4d mrp_unregister_application +EXPORT_SYMBOL_GPL net/802/mrp 0xfad8100a mrp_init_applicant +EXPORT_SYMBOL_GPL net/802/stp 0xcc6d1b53 stp_proto_unregister +EXPORT_SYMBOL_GPL net/802/stp 0xff1b213b stp_proto_register +EXPORT_SYMBOL_GPL net/9p/9pnet 0x5035b4b9 p9_client_xattrwalk +EXPORT_SYMBOL_GPL net/9p/9pnet 0xec2be369 p9_client_xattrcreate +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 0x12a1cfc0 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/bluetooth/bluetooth 0x2dfc9379 l2cap_add_psm +EXPORT_SYMBOL_GPL net/bluetooth/bluetooth 0x34ccdff9 l2cap_chan_connect +EXPORT_SYMBOL_GPL net/bluetooth/bluetooth 0x9def1af8 bt_debugfs +EXPORT_SYMBOL_GPL net/bluetooth/bluetooth 0xa0cd4b68 l2cap_chan_put +EXPORT_SYMBOL_GPL net/bluetooth/bluetooth 0xa310182f l2cap_chan_list +EXPORT_SYMBOL_GPL net/bluetooth/bluetooth 0xa809b9c2 l2cap_chan_send +EXPORT_SYMBOL_GPL net/bluetooth/bluetooth 0xb45677db l2cap_chan_set_defaults +EXPORT_SYMBOL_GPL net/bluetooth/bluetooth 0xb55f35e7 l2cap_chan_create +EXPORT_SYMBOL_GPL net/bluetooth/bluetooth 0xb7f2695b l2cap_chan_del +EXPORT_SYMBOL_GPL net/bluetooth/hidp/hidp 0x7307b795 hidp_hid_driver +EXPORT_SYMBOL_GPL net/bridge/bridge 0x171916bb br_vlan_get_info +EXPORT_SYMBOL_GPL net/bridge/bridge 0x1cb5f607 br_multicast_has_querier_adjacent +EXPORT_SYMBOL_GPL net/bridge/bridge 0x2444e31b br_fdb_clear_offload +EXPORT_SYMBOL_GPL net/bridge/bridge 0x364c2378 br_forward_finish +EXPORT_SYMBOL_GPL net/bridge/bridge 0x4a249181 br_vlan_get_proto +EXPORT_SYMBOL_GPL net/bridge/bridge 0x5c57c391 br_port_flag_is_set +EXPORT_SYMBOL_GPL net/bridge/bridge 0x5e350f47 br_multicast_router +EXPORT_SYMBOL_GPL net/bridge/bridge 0x5f6ec49b br_multicast_list_adjacent +EXPORT_SYMBOL_GPL net/bridge/bridge 0x6e2bc5aa br_vlan_get_pvid +EXPORT_SYMBOL_GPL net/bridge/bridge 0x79734963 br_dev_queue_push_xmit +EXPORT_SYMBOL_GPL net/bridge/bridge 0x91826083 br_multicast_has_querier_anywhere +EXPORT_SYMBOL_GPL net/bridge/bridge 0x9bc94685 br_multicast_enabled +EXPORT_SYMBOL_GPL net/bridge/bridge 0xa408aae6 br_handle_frame_finish +EXPORT_SYMBOL_GPL net/bridge/bridge 0xac6cc464 nf_br_ops +EXPORT_SYMBOL_GPL net/bridge/bridge 0xccd27448 br_vlan_get_pvid_rcu +EXPORT_SYMBOL_GPL net/bridge/bridge 0xd2c77731 br_fdb_find_port +EXPORT_SYMBOL_GPL net/bridge/bridge 0xe0ce02c0 br_vlan_enabled +EXPORT_SYMBOL_GPL net/bridge/bridge 0xffb2fa47 br_forward +EXPORT_SYMBOL_GPL net/core/failover 0x67dc9d08 failover_slave_unregister +EXPORT_SYMBOL_GPL net/core/failover 0xacbaf4f1 failover_unregister +EXPORT_SYMBOL_GPL net/core/failover 0xc799c99f failover_register +EXPORT_SYMBOL_GPL net/dccp/dccp 0x15b016f8 dccp_parse_options +EXPORT_SYMBOL_GPL net/dccp/dccp 0x182ec2bf dccp_ackvec_parsed_add +EXPORT_SYMBOL_GPL net/dccp/dccp 0x1bfcaea9 dccp_insert_option +EXPORT_SYMBOL_GPL net/dccp/dccp 0x1c239485 dccp_setsockopt +EXPORT_SYMBOL_GPL net/dccp/dccp 0x1ecfce14 dccp_reqsk_init +EXPORT_SYMBOL_GPL net/dccp/dccp 0x29e2ef88 dccp_rcv_state_process +EXPORT_SYMBOL_GPL net/dccp/dccp 0x2a4366b2 dccp_sync_mss +EXPORT_SYMBOL_GPL net/dccp/dccp 0x2b353cb7 dccp_reqsk_send_ack +EXPORT_SYMBOL_GPL net/dccp/dccp 0x2be1cf80 dccp_destroy_sock +EXPORT_SYMBOL_GPL net/dccp/dccp 0x3736cca7 dccp_ioctl +EXPORT_SYMBOL_GPL net/dccp/dccp 0x3b8514ee dccp_recvmsg +EXPORT_SYMBOL_GPL net/dccp/dccp 0x3e9d94b7 dccp_done +EXPORT_SYMBOL_GPL net/dccp/dccp 0x3f09dd66 dccp_make_response +EXPORT_SYMBOL_GPL net/dccp/dccp 0x431852dc dccp_create_openreq_child +EXPORT_SYMBOL_GPL net/dccp/dccp 0x44cec529 dccp_ctl_make_reset +EXPORT_SYMBOL_GPL net/dccp/dccp 0x4cdd391d dccp_feat_list_purge +EXPORT_SYMBOL_GPL net/dccp/dccp 0x4dfe2337 dccp_close +EXPORT_SYMBOL_GPL net/dccp/dccp 0x4e44971a dccp_poll +EXPORT_SYMBOL_GPL net/dccp/dccp 0x4e4ba158 dccp_send_ack +EXPORT_SYMBOL_GPL net/dccp/dccp 0x50c2bbd5 dccp_orphan_count +EXPORT_SYMBOL_GPL net/dccp/dccp 0x51e575b8 dccp_check_req +EXPORT_SYMBOL_GPL net/dccp/dccp 0x5699f735 inet_dccp_listen +EXPORT_SYMBOL_GPL net/dccp/dccp 0x59814a84 dccp_statistics +EXPORT_SYMBOL_GPL net/dccp/dccp 0x65f4eedb dccp_getsockopt +EXPORT_SYMBOL_GPL net/dccp/dccp 0x731b694d dccp_set_state +EXPORT_SYMBOL_GPL net/dccp/dccp 0x7fb53395 dccp_rcv_established +EXPORT_SYMBOL_GPL net/dccp/dccp 0x80993155 dccp_timestamp +EXPORT_SYMBOL_GPL net/dccp/dccp 0x86be7924 dccp_packet_name +EXPORT_SYMBOL_GPL net/dccp/dccp 0x8bf03567 compat_dccp_setsockopt +EXPORT_SYMBOL_GPL net/dccp/dccp 0x8d75127b dccp_feat_nn_get +EXPORT_SYMBOL_GPL net/dccp/dccp 0x956f64be dccp_feat_signal_nn_change +EXPORT_SYMBOL_GPL net/dccp/dccp 0x9598d24d dccp_ackvec_parsed_cleanup +EXPORT_SYMBOL_GPL net/dccp/dccp 0x960339f4 dccp_death_row +EXPORT_SYMBOL_GPL net/dccp/dccp 0xac808b59 dccp_connect +EXPORT_SYMBOL_GPL net/dccp/dccp 0xad645e23 dccp_disconnect +EXPORT_SYMBOL_GPL net/dccp/dccp 0xb08c7b2c dccp_sendmsg +EXPORT_SYMBOL_GPL net/dccp/dccp 0xbd65b356 dccp_hashinfo +EXPORT_SYMBOL_GPL net/dccp/dccp 0xc6881180 dccp_child_process +EXPORT_SYMBOL_GPL net/dccp/dccp 0xcc75299d compat_dccp_getsockopt +EXPORT_SYMBOL_GPL net/dccp/dccp 0xd0104a9b dccp_shutdown +EXPORT_SYMBOL_GPL net/dccp/dccp 0xda94c74a dccp_send_sync +EXPORT_SYMBOL_GPL net/dccp/dccp 0xffb1c073 dccp_init_sock +EXPORT_SYMBOL_GPL net/dccp/dccp_ipv4 0x322dabc0 dccp_v4_do_rcv +EXPORT_SYMBOL_GPL net/dccp/dccp_ipv4 0x428c5f0a dccp_v4_conn_request +EXPORT_SYMBOL_GPL net/dccp/dccp_ipv4 0x7c89ce0e dccp_v4_connect +EXPORT_SYMBOL_GPL net/dccp/dccp_ipv4 0x96bb9a78 dccp_v4_send_check +EXPORT_SYMBOL_GPL net/dccp/dccp_ipv4 0x9da5035d dccp_invalid_packet +EXPORT_SYMBOL_GPL net/dccp/dccp_ipv4 0xef803a40 dccp_v4_request_recv_sock +EXPORT_SYMBOL_GPL net/dsa/dsa_core 0x00256e90 dsa_devlink_resources_unregister +EXPORT_SYMBOL_GPL net/dsa/dsa_core 0x0214c843 dsa_devlink_resource_occ_get_register +EXPORT_SYMBOL_GPL net/dsa/dsa_core 0x0a890f63 dsa_tag_drivers_register +EXPORT_SYMBOL_GPL net/dsa/dsa_core 0x101d629c dsa_port_get_phy_strings +EXPORT_SYMBOL_GPL net/dsa/dsa_core 0x3276e8d5 dsa_devlink_resource_occ_get_unregister +EXPORT_SYMBOL_GPL net/dsa/dsa_core 0x36c2ac63 dsa_devlink_params_register +EXPORT_SYMBOL_GPL net/dsa/dsa_core 0x39818214 dsa_switch_find +EXPORT_SYMBOL_GPL net/dsa/dsa_core 0x422e4b6e dsa_unregister_switch +EXPORT_SYMBOL_GPL net/dsa/dsa_core 0x45eff549 dsa_register_switch +EXPORT_SYMBOL_GPL net/dsa/dsa_core 0x4a1bc37a dsa_devlink_param_get +EXPORT_SYMBOL_GPL net/dsa/dsa_core 0x53b12c69 dsa_port_get_ethtool_phy_stats +EXPORT_SYMBOL_GPL net/dsa/dsa_core 0x5c5bb8ee unregister_dsa_notifier +EXPORT_SYMBOL_GPL net/dsa/dsa_core 0x60e7b81b dsa_enqueue_skb +EXPORT_SYMBOL_GPL net/dsa/dsa_core 0x64eade8b dsa_dev_to_net_device +EXPORT_SYMBOL_GPL net/dsa/dsa_core 0x6a6cc319 dsa_port_get_phy_sset_count +EXPORT_SYMBOL_GPL net/dsa/dsa_core 0x9760e078 dsa_devlink_param_set +EXPORT_SYMBOL_GPL net/dsa/dsa_core 0xa1a8becd dsa_port_phylink_mac_change +EXPORT_SYMBOL_GPL net/dsa/dsa_core 0xa98bf908 dsa_devlink_params_unregister +EXPORT_SYMBOL_GPL net/dsa/dsa_core 0xb8c3dbcd dsa_devlink_resource_register +EXPORT_SYMBOL_GPL net/dsa/dsa_core 0xc5b2b53d dsa_switch_suspend +EXPORT_SYMBOL_GPL net/dsa/dsa_core 0xd30bcd2b dsa_tag_drivers_unregister +EXPORT_SYMBOL_GPL net/dsa/dsa_core 0xd9617f4d call_dsa_notifiers +EXPORT_SYMBOL_GPL net/dsa/dsa_core 0xf86039e0 register_dsa_notifier +EXPORT_SYMBOL_GPL net/dsa/dsa_core 0xf87a0caf dsa_port_from_netdev +EXPORT_SYMBOL_GPL net/dsa/dsa_core 0xffaa33a5 dsa_switch_resume +EXPORT_SYMBOL_GPL net/dsa/tag_8021q 0x120f9cde dsa_8021q_rx_vid_subvlan +EXPORT_SYMBOL_GPL net/dsa/tag_8021q 0x28c61e5d dsa_port_setup_8021q_tagging +EXPORT_SYMBOL_GPL net/dsa/tag_8021q 0x415e894e dsa_8021q_rx_subvlan +EXPORT_SYMBOL_GPL net/dsa/tag_8021q 0x417d1fed dsa_8021q_rx_switch_id +EXPORT_SYMBOL_GPL net/dsa/tag_8021q 0x8d2e0959 dsa_8021q_rx_vid +EXPORT_SYMBOL_GPL net/dsa/tag_8021q 0x9e59271d dsa_8021q_rx_source_port +EXPORT_SYMBOL_GPL net/dsa/tag_8021q 0xb72fbde2 dsa_8021q_crosschip_bridge_leave +EXPORT_SYMBOL_GPL net/dsa/tag_8021q 0xde0fb9db dsa_8021q_crosschip_bridge_join +EXPORT_SYMBOL_GPL net/dsa/tag_8021q 0xe08b3dc6 dsa_8021q_tx_vid +EXPORT_SYMBOL_GPL net/dsa/tag_8021q 0xf13e1803 vid_is_dsa_8021q +EXPORT_SYMBOL_GPL net/dsa/tag_8021q 0xf96228cd dsa_8021q_xmit +EXPORT_SYMBOL_GPL net/ieee802154/ieee802154 0x0912838e ieee802154_hdr_peek +EXPORT_SYMBOL_GPL net/ieee802154/ieee802154 0x1cea2a2c ieee802154_hdr_peek_addrs +EXPORT_SYMBOL_GPL net/ieee802154/ieee802154 0x37fea30e ieee802154_hdr_pull +EXPORT_SYMBOL_GPL net/ieee802154/ieee802154 0x72fbaf87 ieee802154_hdr_push +EXPORT_SYMBOL_GPL net/ieee802154/ieee802154 0x87e2553b ieee802154_max_payload +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 0x90f5d53f ife_decode +EXPORT_SYMBOL_GPL net/ife/ife 0xa6d80392 ife_encode +EXPORT_SYMBOL_GPL net/ife/ife 0xe7888e98 ife_tlv_meta_encode +EXPORT_SYMBOL_GPL net/ipv4/esp4 0x1fbec8b8 esp_input_done2 +EXPORT_SYMBOL_GPL net/ipv4/esp4 0x3f11adec esp_output_head +EXPORT_SYMBOL_GPL net/ipv4/esp4 0x6a4cf1f7 esp_output_tail +EXPORT_SYMBOL_GPL net/ipv4/gre 0x115044be gre_del_protocol +EXPORT_SYMBOL_GPL net/ipv4/gre 0xe9882631 gre_add_protocol +EXPORT_SYMBOL_GPL net/ipv4/inet_diag 0x06030705 inet_diag_register +EXPORT_SYMBOL_GPL net/ipv4/inet_diag 0x30714644 inet_diag_msg_attrs_fill +EXPORT_SYMBOL_GPL net/ipv4/inet_diag 0x336eb92b inet_diag_bc_sk +EXPORT_SYMBOL_GPL net/ipv4/inet_diag 0x4f5b0294 inet_diag_msg_common_fill +EXPORT_SYMBOL_GPL net/ipv4/inet_diag 0x7c146321 inet_sk_diag_fill +EXPORT_SYMBOL_GPL net/ipv4/inet_diag 0x7e6e5444 inet_diag_dump_icsk +EXPORT_SYMBOL_GPL net/ipv4/inet_diag 0x8f3c3efb inet_diag_find_one_icsk +EXPORT_SYMBOL_GPL net/ipv4/inet_diag 0xb27df704 inet_diag_dump_one_icsk +EXPORT_SYMBOL_GPL net/ipv4/inet_diag 0xf87fb744 inet_diag_unregister +EXPORT_SYMBOL_GPL net/ipv4/ip_gre 0x21f97e86 gretap_fb_dev_create +EXPORT_SYMBOL_GPL net/ipv4/ip_tunnel 0x0f1fad98 ip_tunnel_uninit +EXPORT_SYMBOL_GPL net/ipv4/ip_tunnel 0x171bba95 ip_tunnel_xmit +EXPORT_SYMBOL_GPL net/ipv4/ip_tunnel 0x1d0d6d01 ip_tunnel_rcv +EXPORT_SYMBOL_GPL net/ipv4/ip_tunnel 0x2cfa125b ip_tunnel_delete_nets +EXPORT_SYMBOL_GPL net/ipv4/ip_tunnel 0x4e516e0c ip_tunnel_init_net +EXPORT_SYMBOL_GPL net/ipv4/ip_tunnel 0x57b9fbd7 ip_tunnel_dellink +EXPORT_SYMBOL_GPL net/ipv4/ip_tunnel 0x68ddf303 ip_tunnel_setup +EXPORT_SYMBOL_GPL net/ipv4/ip_tunnel 0x6e212f71 ip_tunnel_lookup +EXPORT_SYMBOL_GPL net/ipv4/ip_tunnel 0x850cd828 ip_tunnel_ctl +EXPORT_SYMBOL_GPL net/ipv4/ip_tunnel 0x91e4babe ip_tunnel_ioctl +EXPORT_SYMBOL_GPL net/ipv4/ip_tunnel 0x92ce14c3 ip_md_tunnel_xmit +EXPORT_SYMBOL_GPL net/ipv4/ip_tunnel 0xc2b099b6 ip_tunnel_encap_setup +EXPORT_SYMBOL_GPL net/ipv4/ip_tunnel 0xc48bc5d6 ip_tunnel_init +EXPORT_SYMBOL_GPL net/ipv4/ip_tunnel 0xc8448bed ip_tunnel_changelink +EXPORT_SYMBOL_GPL net/ipv4/ip_tunnel 0xdfcdc645 ip_tunnel_change_mtu +EXPORT_SYMBOL_GPL net/ipv4/ip_tunnel 0xee06f105 ip_tunnel_newlink +EXPORT_SYMBOL_GPL net/ipv4/ip_tunnel 0xf79d5b70 __ip_tunnel_change_mtu +EXPORT_SYMBOL_GPL net/ipv4/netfilter/arp_tables 0x54c11c14 arpt_alloc_initial_table +EXPORT_SYMBOL_GPL net/ipv4/netfilter/ip_tables 0x09d6faa0 ipt_alloc_initial_table +EXPORT_SYMBOL_GPL net/ipv4/netfilter/nf_defrag_ipv4 0xec22c541 nf_defrag_ipv4_enable +EXPORT_SYMBOL_GPL net/ipv4/netfilter/nf_dup_ipv4 0x3ff05ac3 nf_dup_ipv4 +EXPORT_SYMBOL_GPL net/ipv4/netfilter/nf_reject_ipv4 0x34f2c014 nf_send_reset +EXPORT_SYMBOL_GPL net/ipv4/netfilter/nf_reject_ipv4 0x938d1353 nf_reject_ip_tcphdr_get +EXPORT_SYMBOL_GPL net/ipv4/netfilter/nf_reject_ipv4 0x954ee9da nf_reject_ip_tcphdr_put +EXPORT_SYMBOL_GPL net/ipv4/netfilter/nf_reject_ipv4 0x991714af nf_reject_iphdr_put +EXPORT_SYMBOL_GPL net/ipv4/netfilter/nf_reject_ipv4 0xeb95a2c3 nf_send_unreach +EXPORT_SYMBOL_GPL net/ipv4/netfilter/nf_socket_ipv4 0x22cd6c99 nf_sk_lookup_slow_v4 +EXPORT_SYMBOL_GPL net/ipv4/netfilter/nf_tproxy_ipv4 0x163c8e07 nf_tproxy_get_sock_v4 +EXPORT_SYMBOL_GPL net/ipv4/netfilter/nf_tproxy_ipv4 0xe63c3fb0 nf_tproxy_laddr4 +EXPORT_SYMBOL_GPL net/ipv4/netfilter/nf_tproxy_ipv4 0xf11851a5 nf_tproxy_handle_time_wait4 +EXPORT_SYMBOL_GPL net/ipv4/netfilter/nft_fib_ipv4 0x02a9631a nft_fib4_eval +EXPORT_SYMBOL_GPL net/ipv4/netfilter/nft_fib_ipv4 0xb451f08c nft_fib4_eval_type +EXPORT_SYMBOL_GPL net/ipv4/tcp_vegas 0x0b745d47 tcp_vegas_cwnd_event +EXPORT_SYMBOL_GPL net/ipv4/tcp_vegas 0x2441c472 tcp_vegas_init +EXPORT_SYMBOL_GPL net/ipv4/tcp_vegas 0x3de13372 tcp_vegas_get_info +EXPORT_SYMBOL_GPL net/ipv4/tcp_vegas 0x450cbe9b tcp_vegas_pkts_acked +EXPORT_SYMBOL_GPL net/ipv4/tcp_vegas 0xeb2a5974 tcp_vegas_state +EXPORT_SYMBOL_GPL net/ipv4/udp_tunnel 0x007c2cd4 udp_tun_rx_dst +EXPORT_SYMBOL_GPL net/ipv4/udp_tunnel 0x216d999e udp_tunnel_notify_add_rx_port +EXPORT_SYMBOL_GPL net/ipv4/udp_tunnel 0x7c86a7ca udp_tunnel_push_rx_port +EXPORT_SYMBOL_GPL net/ipv4/udp_tunnel 0x902df1f7 udp_tunnel_notify_del_rx_port +EXPORT_SYMBOL_GPL net/ipv4/udp_tunnel 0x9df96d59 setup_udp_tunnel_sock +EXPORT_SYMBOL_GPL net/ipv4/udp_tunnel 0xaec55438 udp_tunnel_sock_release +EXPORT_SYMBOL_GPL net/ipv4/udp_tunnel 0xb58bd616 udp_tunnel_drop_rx_port +EXPORT_SYMBOL_GPL net/ipv4/udp_tunnel 0xd3a36521 udp_tunnel_xmit_skb +EXPORT_SYMBOL_GPL net/ipv6/esp6 0x28b0a06d esp6_output_head +EXPORT_SYMBOL_GPL net/ipv6/esp6 0x676881dd esp6_input_done2 +EXPORT_SYMBOL_GPL net/ipv6/esp6 0xad9c0ba0 esp6_output_tail +EXPORT_SYMBOL_GPL net/ipv6/ip6_tunnel 0x31cecb1c ip6_tnl_rcv_ctl +EXPORT_SYMBOL_GPL net/ipv6/ip6_tunnel 0x53420a6a ip6_tnl_encap_setup +EXPORT_SYMBOL_GPL net/ipv6/ip6_tunnel 0x633a5eb2 ip6_tnl_xmit_ctl +EXPORT_SYMBOL_GPL net/ipv6/ip6_udp_tunnel 0x9ea09dbc udp_tunnel6_xmit_skb +EXPORT_SYMBOL_GPL net/ipv6/ip6_udp_tunnel 0xe60286f3 udp_sock_create6 +EXPORT_SYMBOL_GPL net/ipv6/netfilter/ip6_tables 0x30be023a ip6t_alloc_initial_table +EXPORT_SYMBOL_GPL net/ipv6/netfilter/nf_defrag_ipv6 0x013c66b5 nf_ct_frag6_gather +EXPORT_SYMBOL_GPL net/ipv6/netfilter/nf_defrag_ipv6 0xe7bc3931 nf_defrag_ipv6_enable +EXPORT_SYMBOL_GPL net/ipv6/netfilter/nf_dup_ipv6 0x9dc6ae55 nf_dup_ipv6 +EXPORT_SYMBOL_GPL net/ipv6/netfilter/nf_reject_ipv6 0x22bd05a1 nf_send_unreach6 +EXPORT_SYMBOL_GPL net/ipv6/netfilter/nf_reject_ipv6 0x4e936df3 nf_reject_ip6_tcphdr_put +EXPORT_SYMBOL_GPL net/ipv6/netfilter/nf_reject_ipv6 0x50107eb8 nf_reject_ip6_tcphdr_get +EXPORT_SYMBOL_GPL net/ipv6/netfilter/nf_reject_ipv6 0xb112a33f nf_send_reset6 +EXPORT_SYMBOL_GPL net/ipv6/netfilter/nf_reject_ipv6 0xcb7ddd5e nf_reject_ip6hdr_put +EXPORT_SYMBOL_GPL net/ipv6/netfilter/nf_socket_ipv6 0xa5aacdf0 nf_sk_lookup_slow_v6 +EXPORT_SYMBOL_GPL net/ipv6/netfilter/nf_tproxy_ipv6 0x58418e59 nf_tproxy_laddr6 +EXPORT_SYMBOL_GPL net/ipv6/netfilter/nf_tproxy_ipv6 0x8e528ac3 nf_tproxy_handle_time_wait6 +EXPORT_SYMBOL_GPL net/ipv6/netfilter/nf_tproxy_ipv6 0xc0a9f5c1 nf_tproxy_get_sock_v6 +EXPORT_SYMBOL_GPL net/ipv6/netfilter/nft_fib_ipv6 0x6418b6e6 nft_fib6_eval +EXPORT_SYMBOL_GPL net/ipv6/netfilter/nft_fib_ipv6 0x702ddfe0 nft_fib6_eval_type +EXPORT_SYMBOL_GPL net/l2tp/l2tp_core 0x1ba0fb47 l2tp_session_create +EXPORT_SYMBOL_GPL net/l2tp/l2tp_core 0x2302c5d2 l2tp_tunnel_create +EXPORT_SYMBOL_GPL net/l2tp/l2tp_core 0x3409db84 __l2tp_session_unhash +EXPORT_SYMBOL_GPL net/l2tp/l2tp_core 0x39537c74 l2tp_session_free +EXPORT_SYMBOL_GPL net/l2tp/l2tp_core 0x41e88220 l2tp_session_get +EXPORT_SYMBOL_GPL net/l2tp/l2tp_core 0x4440e81d l2tp_session_get_nth +EXPORT_SYMBOL_GPL net/l2tp/l2tp_core 0x70c3961a l2tp_session_get_by_ifname +EXPORT_SYMBOL_GPL net/l2tp/l2tp_core 0x81872fb2 l2tp_tunnel_get_session +EXPORT_SYMBOL_GPL net/l2tp/l2tp_core 0x8b0f450e l2tp_udp_encap_recv +EXPORT_SYMBOL_GPL net/l2tp/l2tp_core 0xae0c5dc2 l2tp_tunnel_delete +EXPORT_SYMBOL_GPL net/l2tp/l2tp_core 0xbc7b54f6 l2tp_tunnel_get_nth +EXPORT_SYMBOL_GPL net/l2tp/l2tp_core 0xbd4963f3 l2tp_tunnel_get +EXPORT_SYMBOL_GPL net/l2tp/l2tp_core 0xc4df990a l2tp_tunnel_register +EXPORT_SYMBOL_GPL net/l2tp/l2tp_core 0xc5be616e l2tp_session_set_header_len +EXPORT_SYMBOL_GPL net/l2tp/l2tp_core 0xd2924ebe l2tp_session_delete +EXPORT_SYMBOL_GPL net/l2tp/l2tp_core 0xdc773520 l2tp_session_register +EXPORT_SYMBOL_GPL net/l2tp/l2tp_core 0xebceba48 l2tp_xmit_skb +EXPORT_SYMBOL_GPL net/l2tp/l2tp_netlink 0x013d1df6 l2tp_nl_register_ops +EXPORT_SYMBOL_GPL net/l2tp/l2tp_netlink 0x337f2432 l2tp_nl_unregister_ops +EXPORT_SYMBOL_GPL net/mac80211/mac80211 0x08726844 ieee80211_vif_to_wdev +EXPORT_SYMBOL_GPL net/mac80211/mac80211 0x20d0995d ieee80211_iter_chan_contexts_atomic +EXPORT_SYMBOL_GPL net/mac80211/mac80211 0x2e7b9334 ieee80211_iterate_active_interfaces_atomic +EXPORT_SYMBOL_GPL net/mac80211/mac80211 0x516caa0e ieee80211_ave_rssi +EXPORT_SYMBOL_GPL net/mac80211/mac80211 0x5250cf98 ieee80211_tkip_add_iv +EXPORT_SYMBOL_GPL net/mac80211/mac80211 0x62c87f03 ieee80211_iterate_interfaces +EXPORT_SYMBOL_GPL net/mac80211/mac80211 0x6f8d120d ieee80211_gtk_rekey_add +EXPORT_SYMBOL_GPL net/mac80211/mac80211 0x759d6887 wdev_to_ieee80211_vif +EXPORT_SYMBOL_GPL net/mac80211/mac80211 0x9e02b7ca ieee80211_gtk_rekey_notify +EXPORT_SYMBOL_GPL net/mac80211/mac80211 0xa1247034 ieee80211_remove_key +EXPORT_SYMBOL_GPL net/mac80211/mac80211 0xb3609054 ieee80211_update_mu_groups +EXPORT_SYMBOL_GPL net/mac80211/mac80211 0xc660da72 ieee80211_find_sta_by_ifaddr +EXPORT_SYMBOL_GPL net/mac80211/mac80211 0xd38d7a3f ieee80211_resume_disconnect +EXPORT_SYMBOL_GPL net/mac80211/mac80211 0xd4aea761 ieee80211_request_smps +EXPORT_SYMBOL_GPL net/mac80211/mac80211 0xd8e09da4 ieee80211_set_key_rx_seq +EXPORT_SYMBOL_GPL net/mac80211/mac80211 0xdda4bd4c ieee80211_calc_tx_airtime +EXPORT_SYMBOL_GPL net/mac80211/mac80211 0xe26099d8 ieee80211_remain_on_channel_expired +EXPORT_SYMBOL_GPL net/mac80211/mac80211 0xea20f0e0 ieee80211_iterate_active_interfaces_rtnl +EXPORT_SYMBOL_GPL net/mac80211/mac80211 0xf3d098b3 ieee80211_calc_rx_airtime +EXPORT_SYMBOL_GPL net/mac80211/mac80211 0xf5004fa4 ieee80211_ready_on_channel +EXPORT_SYMBOL_GPL net/mac80211/mac80211 0xf8034f2d ieee80211_iterate_stations_atomic +EXPORT_SYMBOL_GPL net/mpls/mpls_router 0x3aa24786 nla_put_labels +EXPORT_SYMBOL_GPL net/mpls/mpls_router 0x3aedeba7 mpls_dev_mtu +EXPORT_SYMBOL_GPL net/mpls/mpls_router 0x4e601ee3 mpls_output_possible +EXPORT_SYMBOL_GPL net/mpls/mpls_router 0xe413b0a4 nla_get_labels +EXPORT_SYMBOL_GPL net/mpls/mpls_router 0xe85ed21d mpls_stats_inc_outucastpkts +EXPORT_SYMBOL_GPL net/mpls/mpls_router 0xef43c99c mpls_pkt_too_big +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0x004255fa ip_set_name_byindex +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0x1ab3b404 ip_set_match_extensions +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0x1fbff409 ip_set_add +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0x226ef522 ip_set_type_unregister +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0x22d966c6 ip_set_range_to_cidr +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0x33b21f0e ip_set_get_extensions +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0x35df1969 ip_set_test +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0x397f6231 ip_set_free +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0x39851732 ip_set_get_ip4_port +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0x3a7b8bf8 ip_set_get_byname +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0x3a7be696 ip_set_nfnl_put +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0x5ee10805 ip_set_del +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0x6d300dbd ip_set_put_extensions +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0x7717e437 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 0x9e98722b ip_set_get_ipaddr6 +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0xa17c8e41 ip_set_get_ip6_port +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0xa293f8a6 ip_set_get_ipaddr4 +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0xad6f6d97 ip_set_init_comment +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0xc4ee6fd1 ip_set_type_register +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0xd07d5e36 ip_set_extensions +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0xd4201a96 ip_set_put_byindex +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0xd5a18910 ip_set_nfnl_get_byindex +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0xf3b4d4ae ip_set_alloc +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0xfe067209 ip_set_elem_len +EXPORT_SYMBOL_GPL net/netfilter/ipvs/ip_vs 0x24a810a2 ip_vs_conn_in_get_proto +EXPORT_SYMBOL_GPL net/netfilter/ipvs/ip_vs 0x339e4875 unregister_ip_vs_pe +EXPORT_SYMBOL_GPL net/netfilter/ipvs/ip_vs 0xd6a24e99 register_ip_vs_pe +EXPORT_SYMBOL_GPL net/netfilter/ipvs/ip_vs 0xf2686d08 ip_vs_conn_out_get_proto +EXPORT_SYMBOL_GPL net/netfilter/nf_conncount 0x0d0360bb nf_conncount_init +EXPORT_SYMBOL_GPL net/netfilter/nf_conncount 0x162e96f1 nf_conncount_cache_free +EXPORT_SYMBOL_GPL net/netfilter/nf_conncount 0x1c32e78c nf_conncount_gc_list +EXPORT_SYMBOL_GPL net/netfilter/nf_conncount 0x483f6e4d nf_conncount_destroy +EXPORT_SYMBOL_GPL net/netfilter/nf_conncount 0x8170e582 nf_conncount_add +EXPORT_SYMBOL_GPL net/netfilter/nf_conncount 0x95cc0ee6 nf_conncount_count +EXPORT_SYMBOL_GPL net/netfilter/nf_conncount 0xf2728e70 nf_conncount_list_init +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x0270ed61 nf_ct_expect_put +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x0556ebbb nf_ct_bridge_register +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x062bb524 nf_ct_unexpect_related +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x0bc00f80 nf_nat_helper_try_module_get +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x0be6f844 nf_ct_seq_offset +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x0fa1408d nf_conntrack_find_get +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x0fd53d1e nf_ct_remove_expectations +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x145a1287 __nf_conntrack_confirm +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x1879f706 nf_conntrack_helpers_unregister +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x18d36e00 nf_conntrack_helper_unregister +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x1daf81c2 nf_confirm +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x1fcab1b1 nf_ct_helper_log +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 0x2ad67f06 nf_conntrack_unregister_notifier +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x2c1a83b5 nf_conntrack_helpers_register +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x2fc4d3e8 nf_ct_helper_expectfn_find_by_name +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x2fe30c03 nf_ct_expect_alloc +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x30147cb2 nf_ct_untimeout +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x3ccc288f nf_ct_netns_put +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x3d83dd67 nf_ct_expect_iterate_net +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x3de2c0e9 nf_ct_expect_init +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x3e121477 nf_ct_seqadj_init +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x411751cb nf_ct_seq_adjust +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x4305f6cd nf_conntrack_free +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x4328646c nf_conntrack_helper_register +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x44f6e7eb nf_ct_l4proto_find +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x45adc568 nf_ct_helper_ext_add +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x4ab624b7 nf_ct_timeout_put_hook +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x4cd41872 nf_conntrack_helper_try_module_get +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x4d818d01 nf_ct_helper_expectfn_register +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x5356fe60 nf_ct_gre_keymap_add +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x5aecf798 nf_connlabels_put +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x5d482704 nf_ct_helper_init +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x62e350e6 nf_ct_expect_register_notifier +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x678afa59 nf_ct_iterate_destroy +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x693c3961 nf_ct_helper_hash +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x6ad7c97c nf_ct_iterate_cleanup_net +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x6cc5b559 nf_connlabels_replace +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x7455ee98 nf_ct_tcp_seqadj_set +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x7683d0d2 nf_ct_l4proto_log_invalid +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x77ec8410 nf_ct_expect_find_get +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x7ccd8c93 nf_ct_get_id +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x7da80b2e nf_ct_port_nla_policy +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x7fe035db nf_ct_extend_unregister +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x8531cb6e nf_ct_seqadj_set +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x86fda42f nf_conntrack_tuple_taken +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x880d218e nf_conntrack_alter_reply +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x88c4f24c nf_ct_tmpl_alloc +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x8a66c4fc nf_conntrack_expect_lock +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x8a7908b1 nf_ct_delete +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x8ffe7e89 nf_conntrack_htable_size +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x92ab349b nf_ct_netns_get +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x92ee44f1 __nf_ct_try_assign_helper +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x950d2c3d nf_conntrack_hash_check_insert +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x972a7d82 __nf_ct_expect_find +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x97671fd5 __nf_conntrack_helper_find +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x9985acc3 nf_ct_helper_expectfn_find_by_symbol +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x998b6e7f nf_ct_helper_expectfn_unregister +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x9a5759a1 nf_l4proto_log_invalid +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x9b74bda6 nf_nat_helper_unregister +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xa571f044 nf_ct_acct_add +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xa707107d nf_ct_get_tuplepr +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xa7af8fb1 nf_conntrack_register_notifier +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xaa7ba95a nf_ct_unconfirmed_destroy +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xac8408c0 nf_ct_deliver_cached_events +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xae098d0e nf_nat_helper_put +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xafbd6cf5 nf_ct_port_nlattr_to_tuple +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xb0564893 nf_conntrack_alloc +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xb623783f nf_nat_helper_register +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xbd2e0d47 nf_ct_bridge_unregister +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xbf0607e2 nf_ct_expect_unregister_notifier +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xc0955877 nf_ct_timeout_find_get_hook +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xc18ac88d nf_ct_expect_hsize +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xc40f284c nf_ct_helper_hsize +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xc57c4e62 nf_ct_destroy_timeout +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xc7626972 nf_ct_expect_related_report +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xcb0dc38a nf_ct_remove_expect +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xd2e5cd34 nf_ct_unlink_expect_report +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xd505c3e0 nf_ct_port_nlattr_tuple_size +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xd5a95f81 nf_connlabels_get +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xd9a395f3 nf_ct_extend_register +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xd9f82c66 nf_ct_expect_iterate_destroy +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xdc9efbd8 nf_ct_port_tuple_to_nlattr +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xdfd60911 nf_conntrack_in +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xe433dc35 nf_ct_tmpl_free +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xe58a05a2 nf_ct_set_timeout +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xe8460c87 nf_ct_gre_keymap_destroy +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xec8beba6 nf_ct_expect_hash +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xeda22717 __nf_ct_refresh_acct +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xee21e3c0 nf_ct_kill_acct +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xeeaa1d94 nf_conntrack_helper_put +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xeebad536 nf_conntrack_lock +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xf14af554 nf_conntrack_eventmask_report +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xf38bcdf3 nf_conntrack_max +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xfe731af8 nf_ct_invert_tuple +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xff40b965 nf_conntrack_locks +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_amanda 0xdee8520f nf_nat_amanda_hook +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_broadcast 0xd641629a nf_conntrack_broadcast_help +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_ftp 0x0452e435 nf_nat_ftp_hook +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_h323 0x3302625b nat_t120_hook +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_h323 0x3890deba set_h225_addr_hook +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_h323 0x3e7ba3aa get_h225_addr +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_h323 0x47ea0e88 nat_h245_hook +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_h323 0x7f4222f4 set_h245_addr_hook +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_h323 0x8dbb2540 nat_rtp_rtcp_hook +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_h323 0xa82fd59c nat_q931_hook +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_h323 0xa9ee79e6 set_sig_addr_hook +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_h323 0xed932cd0 nat_callforwarding_hook +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_h323 0xfc4127e2 set_ras_addr_hook +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_irc 0xa9561e8a nf_nat_irc_hook +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_pptp 0x0d667aa9 nf_nat_pptp_hook_exp_gre +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_pptp 0x6de58c15 nf_nat_pptp_hook_expectfn +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_pptp 0x6f0bab2b nf_nat_pptp_hook_outbound +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_pptp 0x79581af9 nf_nat_pptp_hook_inbound +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_sip 0x0b308bca ct_sip_parse_header_uri +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_sip 0x1f1357b7 ct_sip_parse_address_param +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_sip 0x2a10f2a5 ct_sip_get_sdp_header +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_sip 0x4d59a8c0 ct_sip_parse_request +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_sip 0x640a05b5 ct_sip_parse_numerical_param +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_sip 0x8226ea05 ct_sip_get_header +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_sip 0xc1daf05e nf_nat_sip_hooks +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_snmp 0xd70122c6 nf_nat_snmp_hook +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_tftp 0xbacf588b nf_nat_tftp_hook +EXPORT_SYMBOL_GPL net/netfilter/nf_dup_netdev 0x6e9f8a17 nft_fwd_dup_netdev_offload +EXPORT_SYMBOL_GPL net/netfilter/nf_dup_netdev 0x7ac7424d nf_dup_netdev_egress +EXPORT_SYMBOL_GPL net/netfilter/nf_dup_netdev 0xbde8b7b9 nf_fwd_netdev_egress +EXPORT_SYMBOL_GPL net/netfilter/nf_flow_table 0x09abeecc flow_offload_route_init +EXPORT_SYMBOL_GPL net/netfilter/nf_flow_table 0x13690dba nf_flow_table_cleanup +EXPORT_SYMBOL_GPL net/netfilter/nf_flow_table 0x1d2df25a flow_offload_refresh +EXPORT_SYMBOL_GPL net/netfilter/nf_flow_table 0x32b39933 flow_offload_lookup +EXPORT_SYMBOL_GPL net/netfilter/nf_flow_table 0x537e1a71 flow_offload_alloc +EXPORT_SYMBOL_GPL net/netfilter/nf_flow_table 0x550f67a4 flow_offload_free +EXPORT_SYMBOL_GPL net/netfilter/nf_flow_table 0x68154dc2 nf_flow_table_offload_setup +EXPORT_SYMBOL_GPL net/netfilter/nf_flow_table 0x69620873 nf_flow_snat_port +EXPORT_SYMBOL_GPL net/netfilter/nf_flow_table 0x6bdcea65 nf_flow_table_init +EXPORT_SYMBOL_GPL net/netfilter/nf_flow_table 0x6fc8bf70 nf_flow_offload_ip_hook +EXPORT_SYMBOL_GPL net/netfilter/nf_flow_table 0x7c7fb871 nf_flow_table_free +EXPORT_SYMBOL_GPL net/netfilter/nf_flow_table 0x8014174a flow_offload_add +EXPORT_SYMBOL_GPL net/netfilter/nf_flow_table 0x981624ad nf_flow_rule_route_ipv6 +EXPORT_SYMBOL_GPL net/netfilter/nf_flow_table 0x9e71e718 nf_flow_dnat_port +EXPORT_SYMBOL_GPL net/netfilter/nf_flow_table 0xbf56fd54 nf_flow_offload_ipv6_hook +EXPORT_SYMBOL_GPL net/netfilter/nf_flow_table 0xd2646b66 nf_flow_rule_route_ipv4 +EXPORT_SYMBOL_GPL net/netfilter/nf_flow_table 0xd8975d5d flow_offload_teardown +EXPORT_SYMBOL_GPL net/netfilter/nf_log_common 0x0e11c7b2 nf_log_dump_packet_common +EXPORT_SYMBOL_GPL net/netfilter/nf_log_common 0x6df9dbc0 nf_log_dump_sk_uid_gid +EXPORT_SYMBOL_GPL net/netfilter/nf_log_common 0x726f45be nf_log_dump_udp_header +EXPORT_SYMBOL_GPL net/netfilter/nf_log_common 0x8203de84 nf_log_dump_tcp_header +EXPORT_SYMBOL_GPL net/netfilter/nf_log_common 0xbb39e923 nf_log_l2packet +EXPORT_SYMBOL_GPL net/netfilter/nf_log_common 0xbf638c33 nf_log_dump_vlan +EXPORT_SYMBOL_GPL net/netfilter/nf_nat 0x1237a4fc nf_nat_ipv6_unregister_fn +EXPORT_SYMBOL_GPL net/netfilter/nf_nat 0x1323b72c nf_nat_inet_unregister_fn +EXPORT_SYMBOL_GPL net/netfilter/nf_nat 0x13a5f272 nf_nat_alloc_null_binding +EXPORT_SYMBOL_GPL net/netfilter/nf_nat 0x1688afe0 nf_nat_icmp_reply_translation +EXPORT_SYMBOL_GPL net/netfilter/nf_nat 0x2d1676dd nf_nat_inet_register_fn +EXPORT_SYMBOL_GPL net/netfilter/nf_nat 0x3465a8a1 nf_nat_icmpv6_reply_translation +EXPORT_SYMBOL_GPL net/netfilter/nf_nat 0x3bc17c49 nf_nat_masquerade_inet_register_notifiers +EXPORT_SYMBOL_GPL net/netfilter/nf_nat 0x60c2c1b1 nf_nat_packet +EXPORT_SYMBOL_GPL net/netfilter/nf_nat 0x6b73e27b nf_nat_redirect_ipv6 +EXPORT_SYMBOL_GPL net/netfilter/nf_nat 0x8d97beea nf_nat_ipv4_unregister_fn +EXPORT_SYMBOL_GPL net/netfilter/nf_nat 0x9133534b nf_ct_nat_ext_add +EXPORT_SYMBOL_GPL net/netfilter/nf_nat 0x91bb228e nf_nat_masquerade_ipv4 +EXPORT_SYMBOL_GPL net/netfilter/nf_nat 0x932dafc6 nf_nat_masquerade_ipv6 +EXPORT_SYMBOL_GPL net/netfilter/nf_nat 0xaecf99b2 nf_nat_inet_fn +EXPORT_SYMBOL_GPL net/netfilter/nf_nat 0xd1658638 nf_nat_ipv4_register_fn +EXPORT_SYMBOL_GPL net/netfilter/nf_nat 0xd9c25654 nf_nat_masquerade_inet_unregister_notifiers +EXPORT_SYMBOL_GPL net/netfilter/nf_nat 0xf555aeeb nf_nat_ipv6_register_fn +EXPORT_SYMBOL_GPL net/netfilter/nf_nat 0xf5a67fe2 nf_nat_redirect_ipv4 +EXPORT_SYMBOL_GPL net/netfilter/nf_synproxy_core 0x0ec5be64 nf_synproxy_ipv4_init +EXPORT_SYMBOL_GPL net/netfilter/nf_synproxy_core 0x1f099794 synproxy_init_timestamp_cookie +EXPORT_SYMBOL_GPL net/netfilter/nf_synproxy_core 0x2c495c91 synproxy_parse_options +EXPORT_SYMBOL_GPL net/netfilter/nf_synproxy_core 0x316ce35d nf_synproxy_ipv6_fini +EXPORT_SYMBOL_GPL net/netfilter/nf_synproxy_core 0x3bfb42b5 synproxy_recv_client_ack_ipv6 +EXPORT_SYMBOL_GPL net/netfilter/nf_synproxy_core 0x674a5b99 synproxy_send_client_synack_ipv6 +EXPORT_SYMBOL_GPL net/netfilter/nf_synproxy_core 0x6d92573b ipv4_synproxy_hook +EXPORT_SYMBOL_GPL net/netfilter/nf_synproxy_core 0x97830a0a nf_synproxy_ipv4_fini +EXPORT_SYMBOL_GPL net/netfilter/nf_synproxy_core 0xa48bd883 synproxy_send_client_synack +EXPORT_SYMBOL_GPL net/netfilter/nf_synproxy_core 0xa82a5733 nf_synproxy_ipv6_init +EXPORT_SYMBOL_GPL net/netfilter/nf_synproxy_core 0xca9fc082 synproxy_net_id +EXPORT_SYMBOL_GPL net/netfilter/nf_synproxy_core 0xe00ae6bf synproxy_recv_client_ack +EXPORT_SYMBOL_GPL net/netfilter/nf_synproxy_core 0xf8121af0 ipv6_synproxy_hook +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0x012bf35c nft_data_dump +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0x04d5a46d nft_dump_register +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0x07e6c0f7 nft_chain_validate +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0x08e1fcf1 nft_data_init +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0x0a2b97c6 nft_meta_get_dump +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0x0c064263 nft_register_obj +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0x0e50e07b nft_data_release +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0x0fcc6104 nft_flowtable_lookup +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0x1e6b75a3 nft_parse_register +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0x246a0323 nft_unregister_flowtable_type +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0x294bec92 nft_register_expr +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0x2e67a171 nft_unregister_expr +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0x2fc7f3a7 nft_register_flowtable_type +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0x3251d762 nf_tables_trans_destroy_flush_work +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0x39f1c166 nft_meta_set_validate +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0x502eed3d nft_meta_policy +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0x51a284a3 nft_chain_validate_hooks +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0x5e69d55a nft_do_chain +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0x6402b389 nft_trace_enabled +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0x64da9b97 nft_meta_set_destroy +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0x6592b46b nf_tables_destroy_set +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0x710a7520 nft_meta_get_eval +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0x77d2400a nft_obj_lookup +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0x798631dd nft_meta_set_dump +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0x7b9aad11 nft_validate_register_store +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0x847399cc nft_chain_validate_dependency +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0x85430a76 nft_validate_register_load +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0x8d8aef59 nft_register_chain_type +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0xab7a0423 nf_tables_deactivate_set +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0xabd614b9 nft_unregister_chain_type +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0xb327a5ae nft_obj_notify +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0xb4e618f9 nft_unregister_obj +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0xbdfb2aee nf_tables_bind_set +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0xc2f474cf nft_meta_set_eval +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0xcba85247 nf_tables_deactivate_flowtable +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0xce990331 nft_set_lookup_global +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0xd60c6231 __nft_release_basechain +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0xd7261834 nft_meta_get_init +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0xde57b5f5 nft_parse_u32_check +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0xe92a21d6 nft_set_elem_destroy +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0xfdc809ce nft_meta_set_init +EXPORT_SYMBOL_GPL net/netfilter/nfnetlink 0x56eb5d4f nfnetlink_subsys_unregister +EXPORT_SYMBOL_GPL net/netfilter/nfnetlink 0x5ce3b588 nfnl_lock +EXPORT_SYMBOL_GPL net/netfilter/nfnetlink 0x62efa936 nfnetlink_set_err +EXPORT_SYMBOL_GPL net/netfilter/nfnetlink 0xa15f8c2e nfnetlink_subsys_register +EXPORT_SYMBOL_GPL net/netfilter/nfnetlink 0xb5526b22 nfnetlink_send +EXPORT_SYMBOL_GPL net/netfilter/nfnetlink 0xc5a88e79 nfnetlink_unicast +EXPORT_SYMBOL_GPL net/netfilter/nfnetlink 0xc8b74fcc nfnetlink_has_listeners +EXPORT_SYMBOL_GPL net/netfilter/nfnetlink 0xdb065657 nfnl_unlock +EXPORT_SYMBOL_GPL net/netfilter/nfnetlink_acct 0x4a4b6820 nfnl_acct_overquota +EXPORT_SYMBOL_GPL net/netfilter/nfnetlink_acct 0xbecf5d14 nfnl_acct_put +EXPORT_SYMBOL_GPL net/netfilter/nfnetlink_acct 0xda40c434 nfnl_acct_update +EXPORT_SYMBOL_GPL net/netfilter/nfnetlink_acct 0xedff242c nfnl_acct_find_get +EXPORT_SYMBOL_GPL net/netfilter/nfnetlink_osf 0x2b5ed1b1 nf_osf_match +EXPORT_SYMBOL_GPL net/netfilter/nfnetlink_osf 0x35eff5e0 nf_osf_fingers +EXPORT_SYMBOL_GPL net/netfilter/nfnetlink_osf 0xa911775e nf_osf_find +EXPORT_SYMBOL_GPL net/netfilter/nft_fib 0x2ab0bf68 nft_fib_store_result +EXPORT_SYMBOL_GPL net/netfilter/nft_fib 0x40dd5db3 nft_fib_validate +EXPORT_SYMBOL_GPL net/netfilter/nft_fib 0xe0a0196c nft_fib_dump +EXPORT_SYMBOL_GPL net/netfilter/nft_fib 0xf01ff019 nft_fib_init +EXPORT_SYMBOL_GPL net/netfilter/nft_reject 0x09855b23 nft_reject_validate +EXPORT_SYMBOL_GPL net/netfilter/nft_reject 0x105b07e2 nft_reject_policy +EXPORT_SYMBOL_GPL net/netfilter/nft_reject 0x1de558c1 nft_reject_icmpv6_code +EXPORT_SYMBOL_GPL net/netfilter/nft_reject 0x683d966e nft_reject_init +EXPORT_SYMBOL_GPL net/netfilter/nft_reject 0x689d9b16 nft_reject_dump +EXPORT_SYMBOL_GPL net/netfilter/nft_reject 0xe2c84666 nft_reject_icmp_code +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0x04e27719 xt_compat_flush_offsets +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0x10d2df5f xt_request_find_target +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0x141d8532 xt_compat_match_offset +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0x17d37c2e xt_compat_match_from_user +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0x19b75579 xt_compat_target_to_user +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0x1a4c1f1a xt_tee_enabled +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0x1f10945f xt_request_find_table_lock +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0x24c8e482 xt_copy_counters_from_user +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0x41e4afbb xt_unregister_table +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0x4aa74a7b xt_compat_target_offset +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0x5b4fa6e9 xt_match_to_user +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0x7acb5531 xt_proto_fini +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0x7bce4603 xt_data_to_user +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0x7bfdde24 xt_table_unlock +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 0x879d2f4c xt_check_target +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0x8957a7f1 xt_register_table +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0x9b9c4ee9 xt_proto_init +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0x9c995c69 xt_percpu_counter_alloc +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0xa0331b46 xt_compat_target_from_user +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0xa7c94f1d xt_compat_lock +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0xb90c7400 xt_find_table_lock +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0xbf166984 xt_replace_table +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0xbfacb837 xt_percpu_counter_free +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0xc7fae024 xt_compat_calc_jump +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0xc9bcd90c xt_target_to_user +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0xd0a1fa92 xt_request_find_match +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0xd1e246a2 xt_compat_unlock +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0xddf68fc6 xt_find_revision +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0xe5607e93 xt_compat_match_to_user +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0xf500f065 xt_hook_ops_alloc +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0xfc4c71c1 xt_check_match +EXPORT_SYMBOL_GPL net/netfilter/xt_RATEEST 0x05ad9734 xt_rateest_lookup +EXPORT_SYMBOL_GPL net/netfilter/xt_RATEEST 0x58e364a0 xt_rateest_put +EXPORT_SYMBOL_GPL net/nfc/nci/nci_spi 0x1f1ce9a3 nci_spi_send +EXPORT_SYMBOL_GPL net/nfc/nci/nci_spi 0x913167a5 nci_spi_read +EXPORT_SYMBOL_GPL net/nfc/nci/nci_spi 0xf769e262 nci_spi_allocate_spi +EXPORT_SYMBOL_GPL net/nfc/nci/nci_uart 0x277b9afa nci_uart_unregister +EXPORT_SYMBOL_GPL net/nfc/nci/nci_uart 0x559d2c44 nci_uart_register +EXPORT_SYMBOL_GPL net/nfc/nci/nci_uart 0x6f7a0520 nci_uart_set_config +EXPORT_SYMBOL_GPL net/nsh/nsh 0x91f74cb2 nsh_push +EXPORT_SYMBOL_GPL net/nsh/nsh 0xc83d53f0 nsh_pop +EXPORT_SYMBOL_GPL net/openvswitch/openvswitch 0x02fbb454 ovs_vport_free +EXPORT_SYMBOL_GPL net/openvswitch/openvswitch 0x310d9003 ovs_vport_ops_unregister +EXPORT_SYMBOL_GPL net/openvswitch/openvswitch 0x37094cdd __ovs_vport_ops_register +EXPORT_SYMBOL_GPL net/openvswitch/openvswitch 0x5352e130 ovs_netdev_tunnel_destroy +EXPORT_SYMBOL_GPL net/openvswitch/openvswitch 0x81a977c3 ovs_netdev_link +EXPORT_SYMBOL_GPL net/openvswitch/openvswitch 0x8525d691 ovs_vport_alloc +EXPORT_SYMBOL_GPL net/psample/psample 0x63dbbe2c psample_group_take +EXPORT_SYMBOL_GPL net/psample/psample 0x6f121085 psample_group_get +EXPORT_SYMBOL_GPL net/psample/psample 0xe4ce8357 psample_group_put +EXPORT_SYMBOL_GPL net/psample/psample 0xfd161727 psample_sample_packet +EXPORT_SYMBOL_GPL net/qrtr/ns 0x636a2832 qrtr_ns_init +EXPORT_SYMBOL_GPL net/qrtr/ns 0x8d25501f qrtr_ns_remove +EXPORT_SYMBOL_GPL net/qrtr/qrtr 0x2b60a804 qrtr_endpoint_register +EXPORT_SYMBOL_GPL net/qrtr/qrtr 0xa10b33a3 qrtr_endpoint_unregister +EXPORT_SYMBOL_GPL net/qrtr/qrtr 0xc2b3950f qrtr_endpoint_post +EXPORT_SYMBOL_GPL net/rds/rds 0x00222c64 rds_for_each_conn_info +EXPORT_SYMBOL_GPL net/rds/rds 0x00a467af rds_wq +EXPORT_SYMBOL_GPL net/rds/rds 0x15de2d5f rds_inc_path_init +EXPORT_SYMBOL_GPL net/rds/rds 0x2b0d543c rds_message_add_extension +EXPORT_SYMBOL_GPL net/rds/rds 0x2b6f09c9 rds_recv_incoming +EXPORT_SYMBOL_GPL net/rds/rds 0x2c148bc3 rds_send_xmit +EXPORT_SYMBOL_GPL net/rds/rds 0x307cc949 rds_atomic_send_complete +EXPORT_SYMBOL_GPL net/rds/rds 0x312c8726 rds_trans_unregister +EXPORT_SYMBOL_GPL net/rds/rds 0x320ab255 rds_send_path_reset +EXPORT_SYMBOL_GPL net/rds/rds 0x36087aa4 rds_stats +EXPORT_SYMBOL_GPL net/rds/rds 0x3b00231b rds_conn_path_connect_if_down +EXPORT_SYMBOL_GPL net/rds/rds 0x3c99955a rds_connect_complete +EXPORT_SYMBOL_GPL net/rds/rds 0x45a4781e rds_addr_cmp +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 0x5c2def8e rds_conn_drop +EXPORT_SYMBOL_GPL net/rds/rds 0x5d8ba5ea rds_message_addref +EXPORT_SYMBOL_GPL net/rds/rds 0x63fe8f55 rds_info_deregister_func +EXPORT_SYMBOL_GPL net/rds/rds 0x76bfbf53 rds_inc_put +EXPORT_SYMBOL_GPL net/rds/rds 0x7b399e66 rds_page_remainder_alloc +EXPORT_SYMBOL_GPL net/rds/rds 0x85e4e520 rds_stats_info_copy +EXPORT_SYMBOL_GPL net/rds/rds 0x8896e49c rds_send_path_drop_acked +EXPORT_SYMBOL_GPL net/rds/rds 0xa120dc9d rds_info_register_func +EXPORT_SYMBOL_GPL net/rds/rds 0xa85ccef2 rds_inc_init +EXPORT_SYMBOL_GPL net/rds/rds 0xac24f2d2 rds_rdma_send_complete +EXPORT_SYMBOL_GPL net/rds/rds 0xbae2e39c rds_message_unmapped +EXPORT_SYMBOL_GPL net/rds/rds 0xc2dab779 rds_info_copy +EXPORT_SYMBOL_GPL net/rds/rds 0xc8c88c6d rds_conn_connect_if_down +EXPORT_SYMBOL_GPL net/rds/rds 0xce881230 rds_connect_path_complete +EXPORT_SYMBOL_GPL net/rds/rds 0xd006612e rds_trans_register +EXPORT_SYMBOL_GPL net/rds/rds 0xd136d7b0 rds_send_ping +EXPORT_SYMBOL_GPL net/rds/rds 0xdd5e42d3 rds_conn_path_drop +EXPORT_SYMBOL_GPL net/rds/rds 0xdf011dfd rds_conn_create +EXPORT_SYMBOL_GPL net/rds/rds 0xdf9aacf2 rds_conn_destroy +EXPORT_SYMBOL_GPL net/rds/rds 0xdfebdbec rds_conn_create_outgoing +EXPORT_SYMBOL_GPL net/rds/rds 0xea3ebb15 rds_send_drop_acked +EXPORT_SYMBOL_GPL net/rds/rds 0xee41973e rds_cong_map_updated +EXPORT_SYMBOL_GPL net/rds/rds 0xfeeb22df rds_message_put +EXPORT_SYMBOL_GPL net/sched/sch_pie 0x3173735a pie_process_dequeue +EXPORT_SYMBOL_GPL net/sched/sch_pie 0x6ce9b467 pie_calculate_probability +EXPORT_SYMBOL_GPL net/sched/sch_pie 0xbfba1386 pie_drop_early +EXPORT_SYMBOL_GPL net/sched/sch_taprio 0x5fc3c6ed taprio_offload_free +EXPORT_SYMBOL_GPL net/sched/sch_taprio 0xa7f08102 taprio_offload_get +EXPORT_SYMBOL_GPL net/sctp/sctp 0x1066e6a0 sctp_transport_lookup_process +EXPORT_SYMBOL_GPL net/sctp/sctp 0x59ad9719 sctp_get_sctp_info +EXPORT_SYMBOL_GPL net/sctp/sctp 0x76167110 sctp_for_each_endpoint +EXPORT_SYMBOL_GPL net/sctp/sctp 0xdae88b90 sctp_for_each_transport +EXPORT_SYMBOL_GPL net/smc/smc 0x003598cd smc_proto6 +EXPORT_SYMBOL_GPL net/smc/smc 0x4855e8cc smcd_unregister_dev +EXPORT_SYMBOL_GPL net/smc/smc 0x631bc722 smcd_alloc_dev +EXPORT_SYMBOL_GPL net/smc/smc 0x78b05f02 smcd_handle_irq +EXPORT_SYMBOL_GPL net/smc/smc 0xae60e46a smcd_register_dev +EXPORT_SYMBOL_GPL net/smc/smc 0xbdec62f6 smc_hash_sk +EXPORT_SYMBOL_GPL net/smc/smc 0xce260857 smc_proto +EXPORT_SYMBOL_GPL net/smc/smc 0xcf6e90f4 smc_unhash_sk +EXPORT_SYMBOL_GPL net/smc/smc 0xd7e10215 smcd_handle_event +EXPORT_SYMBOL_GPL net/smc/smc 0xd93c673b smcd_free_dev +EXPORT_SYMBOL_GPL net/sunrpc/auth_gss/auth_rpcgss 0x1feb7277 svcauth_gss_register_pseudoflavor +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 0x5fdb9138 svcauth_gss_flavor +EXPORT_SYMBOL_GPL net/sunrpc/auth_gss/auth_rpcgss 0xbe89ad89 gss_mech_register +EXPORT_SYMBOL_GPL net/sunrpc/auth_gss/auth_rpcgss 0xc3adb937 gss_mech_unregister +EXPORT_SYMBOL_GPL net/sunrpc/auth_gss/auth_rpcgss 0xd7673035 g_verify_token_header +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x01e98abd rpc_free +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x0203caff rpc_queue_upcall +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x0270d137 rpc_mkpipe_dentry +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x04872e79 rpc_init_pipe_dir_object +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x04b40037 xdr_set_scratch_buffer +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x05e3195f rpc_remove_pipe_dir_object +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 0x07f5e11e rpc_peeraddr +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x08df1c70 xdr_write_pages +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x09d3f89a svc_proc_unregister +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x0b07215a rpc_clnt_iterate_for_each_xprt +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x0b710b8f xdr_encode_array2 +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x0cf714b8 svc_reg_xprt_class +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x0d1c907e xprt_alloc +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x0d4e4843 svc_rqst_free +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x0de75f42 cache_purge +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x0f460d37 rpcauth_init_cred +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x0ff8e00b svc_proc_register +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x100ef289 svc_rpcb_setup +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x102a6bd2 rpc_release_client +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x103f1f12 svc_auth_register +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x1427f12e rpc_task_timeout +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x1af2097f xprt_destroy_backchannel +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x1b00f961 svc_fill_write_vector +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x1c0c502c rpc_put_sb_net +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x1e119a79 rpcauth_get_pseudoflavor +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x1eb13a94 svc_recv +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x1f2a9970 rpc_ntop +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x1fd01d04 xdr_init_encode +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x20753fb8 rpc_max_payload +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x20b66ad4 svc_create_xprt +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x21e9aadf xprt_get +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x23a314cd svc_rqst_alloc +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x24914f25 svc_process +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x25971e17 xprt_complete_rqst +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x26aea553 xprt_pin_rqst +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x2818b5a6 xdr_decode_array2 +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x2919b156 xdr_decode_string_inplace +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x2a51e781 rpcauth_lookupcred +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x2b836d70 svc_sock_update_bufs +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x2c0f2855 rpc_alloc_iostats +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x2c6efe24 rpc_init_pipe_dir_head +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x2c9399f5 rpc_count_iostats_metrics +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x2d11509d bc_svc_process +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x2d8fb276 svc_xprt_init +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x2f7bfd59 unix_domain_find +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x3031886d svc_create_pooled +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x3157e9d0 xprt_request_get_cong +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x3169dbb6 xprt_reconnect_backoff +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x31a89d59 rpc_debug +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x31c312a6 auth_domain_put +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x32090cbd sunrpc_cache_unhash +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x32d7eed5 rpc_set_connect_timeout +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x347b6b9e svc_set_num_threads_sync +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x34900bc3 rpcauth_unregister +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x34b39a7b svc_destroy +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x34c25cc9 rpc_init_wait_queue +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x3639346a cache_unregister_net +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x36fd4184 xdr_init_decode_pages +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x387e1639 rpc_pipefs_notifier_register +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x38ec8032 rpc_clnt_xprt_switch_put +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x3a3424b8 xprt_reconnect_delay +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x3b2310ad put_rpccred +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x3be0af18 rpc_count_iostats +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x3c62ba21 rpc_call_async +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x3cd9e0fd svc_shutdown_net +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x3df46c38 rpc_clnt_swap_deactivate +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x3e07eaab xprt_unregister_transport +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x3f9a2b0b rpcauth_get_gssinfo +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x4097f3bd rpc_switch_client_transport +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x4315f174 cache_destroy_net +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x44ab0b4a svc_xprt_enqueue +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x44e0b66a auth_domain_lookup +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x453efa54 svc_pool_map +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x459181a2 svc_addsock +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x45a4cbd4 xprt_release_xprt_cong +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x464a7a0c rpc_task_release_transport +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x46b2caf3 xprt_alloc_slot +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x476898dc rpcauth_wrap_req_encode +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x47bd093b svc_alien_sock +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x4852fdf1 xdr_enter_page +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x4afedab1 xprtiod_workqueue +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x4b9512b3 xprt_adjust_cwnd +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x4be04c14 rpcauth_unwrap_resp_decode +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x4c7016a7 rpc_prepare_reply_pages +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x4d6e5a92 rpc_d_lookup_sb +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x4dac77f0 xdr_encode_netobj +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x4e47adcc xdr_read_pages +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x4e8f6ca7 sunrpc_net_id +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x4fa1e1de rpc_get_sb_net +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x520585fb sunrpc_cache_lookup_rcu +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x52289c55 rpc_call_sync +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x52699f82 xdr_commit_encode +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x528f9919 rpc_put_task +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x531cc335 rpcb_getport_async +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x53445f68 nlm_debug +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x54268544 xdr_buf_trim +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x5545cae7 rpc_exit +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x5837a6f3 rpc_sleep_on +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x5971dc97 xprt_setup_backchannel +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x5a45ba31 svc_auth_unregister +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x5a6eedc2 svc_generic_init_request +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x5c477aaa __rpc_wait_for_completion_task +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x5c543c40 rpc_wake_up_status +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x60c7eb02 xdr_buf_from_iov +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x68f0fd42 rpcauth_lookup_credcache +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x6a374c14 cache_seq_start_rcu +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x6a472e69 xprt_wait_for_reply_request_rtt +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x6a708673 svcauth_unix_purge +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x6c008da9 sunrpc_cache_update +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x6c48260d svc_xprt_put +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x6c5efc3c xprt_disconnect_done +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x6d236147 sunrpc_cache_unregister_pipefs +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x6d55cb0b rpc_peeraddr2str +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x6ffe488c svc_reserve +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x701f47f7 svc_bind +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x71fa908a cache_flush +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x7218ac49 rpc_create +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x72420ac9 rpc_net_ns +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x747ec395 sunrpc_cache_pipe_upcall +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x78fe7048 xdr_stream_decode_opaque_dup +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x7a25ef74 rpc_init_priority_wait_queue +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x7a61984e rpc_wake_up +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x7b1464d4 rpc_clnt_swap_activate +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x7beba8cb xdr_stream_decode_opaque +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x7c9d2435 cache_seq_stop_rcu +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x7de53067 rpc_init_rtt +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x7e16c47f xprt_reserve_xprt_cong +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x7f2c840b rpc_max_bc_payload +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x80692639 svc_max_payload +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x80a38d12 xdr_reserve_space +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x81b25798 gssd_running +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x843f8ed2 xprt_wait_for_buffer_space +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x84dbb6d2 rpcauth_register +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x8775b2da rpc_uaddr2sockaddr +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x896cbffe read_bytes_from_xdr_buf +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x8a49f8db xdr_encode_word +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x8b1f9415 rpc_clnt_xprt_switch_has_addr +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x8b4c9a01 xprt_reserve_xprt +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x8e68a629 rpc_add_pipe_dir_object +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x8f2f5cc2 rpc_force_rebind +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x90208f94 svc_drop +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x906f75e0 rpc_pton +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x90dd1f2b rpcauth_destroy_credcache +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x9139790d rpc_delay +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x91d37fe9 rpc_proc_register +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x92751564 write_bytes_to_xdr_buf +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x9338a7eb xprt_free_slot +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x94d17f4f svc_seq_show +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x96a1ab36 rpc_run_task +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x96dd56c3 rpc_killall_tasks +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x975e0da5 xprt_put +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x98216fd0 rpc_pipe_generic_upcall +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x9881ddb6 svc_print_addr +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x99cad259 svc_close_xprt +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x9b8f670e cache_create_net +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x9cddd52c xprt_unpin_rqst +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x9ce66eef svc_rpcb_cleanup +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x9d8e9aa7 rpc_unlink +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x9e9d0ebb xprt_free +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x9f2ecb7a svc_find_xprt +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xa0cc6737 xdr_terminate_string +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xa13acdb8 svc_pool_map_put +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xa1cb928d xdr_stream_pos +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xa2e4798e rpc_sleep_on_priority_timeout +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xa60d45d7 rpc_destroy_wait_queue +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xa619f001 svc_prepare_thread +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xa69b0366 svc_xprt_do_enqueue +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xa7a1bc4f rpcauth_init_credcache +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xa8de8214 _copy_from_pages +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xa924cf07 rpc_num_bc_slots +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xaaa8e89c svc_xprt_copy_addrs +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xab656bd4 rpc_setbufsize +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xab702ba9 rpc_localaddr +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xabbfa793 svc_authenticate +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xabe64ef0 rpc_find_or_alloc_pipe_dir_object +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xac436375 rpc_restart_call_prepare +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xade8d3f0 svc_exit_thread +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xaf5bf6ef nfs_debug +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xaf72c959 sunrpc_cache_pipe_upcall_timeout +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xb0bf0a38 rpc_sleep_on_priority +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xb0db0141 rpc_mkpipe_data +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xb1312585 xprt_write_space +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xb23307b8 rpc_clone_client_set_auth +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xb312d0c4 svc_pool_map_get +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xb3662e96 svc_set_client +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xb4c182e1 rpc_shutdown_client +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xb51a3724 rpc_pipefs_notifier_unregister +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xb5899187 svc_generic_rpcbind_set +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xb648e04f rpc_wake_up_queued_task +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xb7b8d569 xdr_stream_decode_string +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xb8238001 xprt_lookup_rqst +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xb838d0f2 rpc_wake_up_next +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xb9966062 xdr_shift_buf +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xb9c11067 rpc_call_start +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xbd3f37c4 rpc_put_task_async +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xbdf9bc9a csum_partial_copy_to_xdr +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xbe006b0c rpc_clnt_show_stats +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xbf9d1b96 nfsd_debug +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xc0abac64 xprt_release_xprt +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xc0e186cb svc_return_autherr +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xc12435e3 rpc_calc_rto +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xc17d0707 svc_xprt_names +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xc3a735fd rpcauth_create +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xc439632d svc_rpcbind_set_version +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xc4c537ca sunrpc_init_cache_detail +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xc87dd302 cache_seq_next_rcu +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xc8e96dea qword_addhex +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xcaff74b4 rpc_machine_cred +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xcb4c8377 xprt_update_rtt +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xcb856fc2 cache_register_net +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xcce70d46 xprt_wait_for_reply_request_def +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xcd6b5aec rpc_destroy_pipe_data +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xce678a59 xdr_decode_netobj +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xcee467f3 xprt_load_transport +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xd18e4c94 xprt_release_rqst_cong +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xd5763839 xdr_decode_word +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xd5e41e3a xdr_inline_pages +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xd6413840 rpc_sleep_on_timeout +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xd83fc015 auth_domain_find +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xd8ac228f svc_fill_symlink_pathname +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xdad650d1 sunrpc_cache_register_pipefs +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xdba57cc5 rpcauth_stringify_acceptor +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xdcd6a1a2 xdr_buf_subsegment +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xddf450b5 svc_create +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xdf503fb9 rpc_clnt_setup_test_and_add_xprt +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xdf802968 xprt_force_disconnect +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xe02b519c svc_set_num_threads +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xe0ed1a72 svc_wake_up +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xe32aee42 xprt_wake_pending_tasks +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xe36d1594 xdr_inline_decode +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xe4cc6c6c cache_check +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xe5919cb1 xdr_encode_opaque +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xe62376fe svc_age_temp_xprts_now +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xe86b0e72 rpc_restart_call +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xe96ca246 svc_unreg_xprt_class +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xe97f4ce5 qword_get +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xe9b33f88 rpc_clnt_test_and_add_xprt +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xea1c6689 rpc_malloc +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xebcfca9b rpc_call_null +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xed1392bd rpc_proc_unregister +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xedcf6be4 qword_add +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xeeacab69 rpc_update_rtt +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xf28aeff5 rpc_clnt_add_xprt +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xf3062aea xprt_register_transport +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xf540ecd6 svcauth_unix_set_client +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xf557e28b rpc_wake_up_first +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xf55b1d47 rpc_clone_client +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xf86559e6 xdr_stream_decode_string_dup +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xf8a7a5e4 rpc_bind_new_program +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xf9a19461 xdr_init_decode +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xfa3a1e47 sunrpc_destroy_cache_detail +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xfd3cdb5b svc_encode_read_payload +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xfe09d770 xdr_process_buf +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xfe26476e rpc_free_iostats +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xff54db14 rpc_clnt_xprt_switch_add_xprt +EXPORT_SYMBOL_GPL net/tls/tls 0x6667c4d5 tls_encrypt_skb +EXPORT_SYMBOL_GPL net/tls/tls 0xa9b77f29 tls_validate_xmit_skb +EXPORT_SYMBOL_GPL net/tls/tls 0xbcc67175 tls_offload_tx_resync_request +EXPORT_SYMBOL_GPL net/tls/tls 0xfca56366 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 0x0caf46f1 virtio_transport_stream_has_data +EXPORT_SYMBOL_GPL net/vmw_vsock/vmw_vsock_virtio_transport_common 0x0e6102fc virtio_transport_notify_buffer_size +EXPORT_SYMBOL_GPL net/vmw_vsock/vmw_vsock_virtio_transport_common 0x172d3156 virtio_transport_notify_poll_in +EXPORT_SYMBOL_GPL net/vmw_vsock/vmw_vsock_virtio_transport_common 0x1e1066c6 virtio_transport_stream_has_space +EXPORT_SYMBOL_GPL net/vmw_vsock/vmw_vsock_virtio_transport_common 0x3677d5ba virtio_transport_destruct +EXPORT_SYMBOL_GPL net/vmw_vsock/vmw_vsock_virtio_transport_common 0x52b7e785 virtio_transport_stream_enqueue +EXPORT_SYMBOL_GPL net/vmw_vsock/vmw_vsock_virtio_transport_common 0x5d050131 virtio_transport_get_credit +EXPORT_SYMBOL_GPL net/vmw_vsock/vmw_vsock_virtio_transport_common 0x5ff23574 virtio_transport_connect +EXPORT_SYMBOL_GPL net/vmw_vsock/vmw_vsock_virtio_transport_common 0x63c91874 virtio_transport_notify_send_post_enqueue +EXPORT_SYMBOL_GPL net/vmw_vsock/vmw_vsock_virtio_transport_common 0x64de363d virtio_transport_notify_poll_out +EXPORT_SYMBOL_GPL net/vmw_vsock/vmw_vsock_virtio_transport_common 0x67177fa8 virtio_transport_shutdown +EXPORT_SYMBOL_GPL net/vmw_vsock/vmw_vsock_virtio_transport_common 0x6b96960c virtio_transport_dgram_bind +EXPORT_SYMBOL_GPL net/vmw_vsock/vmw_vsock_virtio_transport_common 0x764199de virtio_transport_notify_recv_post_dequeue +EXPORT_SYMBOL_GPL net/vmw_vsock/vmw_vsock_virtio_transport_common 0x77660019 virtio_transport_notify_send_pre_block +EXPORT_SYMBOL_GPL net/vmw_vsock/vmw_vsock_virtio_transport_common 0x7d11561d virtio_transport_put_credit +EXPORT_SYMBOL_GPL net/vmw_vsock/vmw_vsock_virtio_transport_common 0x7d68d35b virtio_transport_notify_send_init +EXPORT_SYMBOL_GPL net/vmw_vsock/vmw_vsock_virtio_transport_common 0x7ffa0cf7 virtio_transport_deliver_tap_pkt +EXPORT_SYMBOL_GPL net/vmw_vsock/vmw_vsock_virtio_transport_common 0x8dc358e3 virtio_transport_notify_recv_pre_block +EXPORT_SYMBOL_GPL net/vmw_vsock/vmw_vsock_virtio_transport_common 0x9af12d58 virtio_transport_notify_recv_init +EXPORT_SYMBOL_GPL net/vmw_vsock/vmw_vsock_virtio_transport_common 0x9ce54a3f virtio_transport_release +EXPORT_SYMBOL_GPL net/vmw_vsock/vmw_vsock_virtio_transport_common 0xa2687e02 virtio_transport_free_pkt +EXPORT_SYMBOL_GPL net/vmw_vsock/vmw_vsock_virtio_transport_common 0xb7349b1b virtio_transport_stream_rcvhiwat +EXPORT_SYMBOL_GPL net/vmw_vsock/vmw_vsock_virtio_transport_common 0xb984f3bb virtio_transport_recv_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 0xca841162 virtio_transport_inc_tx_pkt +EXPORT_SYMBOL_GPL net/vmw_vsock/vmw_vsock_virtio_transport_common 0xd10e098b virtio_transport_dgram_dequeue +EXPORT_SYMBOL_GPL net/vmw_vsock/vmw_vsock_virtio_transport_common 0xd87736f7 virtio_transport_dgram_enqueue +EXPORT_SYMBOL_GPL net/vmw_vsock/vmw_vsock_virtio_transport_common 0xda367f2e virtio_transport_notify_recv_pre_dequeue +EXPORT_SYMBOL_GPL net/vmw_vsock/vmw_vsock_virtio_transport_common 0xde806d9c virtio_transport_stream_is_active +EXPORT_SYMBOL_GPL net/vmw_vsock/vmw_vsock_virtio_transport_common 0xdfa99ff5 virtio_transport_stream_dequeue +EXPORT_SYMBOL_GPL net/vmw_vsock/vmw_vsock_virtio_transport_common 0xe1f39d09 virtio_transport_notify_send_pre_enqueue +EXPORT_SYMBOL_GPL net/vmw_vsock/vmw_vsock_virtio_transport_common 0xf33fb373 virtio_transport_do_socket_init +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0x109eb336 vsock_stream_has_space +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0x145106f9 vsock_find_bound_socket +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0x21eb27a3 vsock_remove_sock +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0x2663cb64 vsock_addr_equals_addr +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0x284e07d8 vsock_bind_table +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0x319a9bda vsock_core_get_transport +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0x342943c1 vsock_add_pending +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0x3ceb1b99 vsock_table_lock +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0x448d71d4 vsock_add_tap +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0x4bb589b0 vsock_remove_connected +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0x597a2403 vsock_assign_transport +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0x59d943c8 vsock_addr_cast +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0x5be78615 vsock_insert_connected +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0x6ca5b15f vsock_find_connected_socket +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0x73879664 vsock_addr_init +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0x751ff010 vsock_addr_unbind +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0x79757f8b vsock_create_connected +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0x81f5d8f4 vsock_stream_has_data +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0x90aa8549 vsock_find_cid +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0x934edd12 vsock_enqueue_accept +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0x952c3f24 vsock_remove_pending +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0x9bb6fd09 vsock_connected_table +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0x9e61f3dd vsock_for_each_connected_socket +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0xa900cec2 vsock_deliver_tap +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0xbd0f699d vsock_addr_bound +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0xbd3c1e58 vsock_core_unregister +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0xd95ac116 vsock_addr_validate +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0xe1162db0 vsock_remove_bound +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0xe7eb30ef vsock_remove_tap +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0xe83bc9c6 vsock_core_register +EXPORT_SYMBOL_GPL net/wimax/wimax 0x0910bbb8 wimax_msg_data_len +EXPORT_SYMBOL_GPL net/wimax/wimax 0x0bc35eef wimax_msg_data +EXPORT_SYMBOL_GPL net/wimax/wimax 0x37c67c84 wimax_msg +EXPORT_SYMBOL_GPL net/wimax/wimax 0x720ab3ee wimax_state_get +EXPORT_SYMBOL_GPL net/wimax/wimax 0x7e27628a wimax_report_rfkill_hw +EXPORT_SYMBOL_GPL net/wimax/wimax 0x85ea6014 wimax_msg_alloc +EXPORT_SYMBOL_GPL net/wimax/wimax 0x9d08979a wimax_dev_rm +EXPORT_SYMBOL_GPL net/wimax/wimax 0xa053e6c7 wimax_report_rfkill_sw +EXPORT_SYMBOL_GPL net/wimax/wimax 0xad389483 wimax_dev_init +EXPORT_SYMBOL_GPL net/wimax/wimax 0xccade455 wimax_dev_add +EXPORT_SYMBOL_GPL net/wimax/wimax 0xd247c780 wimax_msg_len +EXPORT_SYMBOL_GPL net/wimax/wimax 0xe6ebeb8e wimax_msg_send +EXPORT_SYMBOL_GPL net/wimax/wimax 0xf5a0c4f1 wimax_state_change +EXPORT_SYMBOL_GPL net/wireless/cfg80211 0x00b890c1 cfg80211_wext_giwrange +EXPORT_SYMBOL_GPL net/wireless/cfg80211 0x07921c6d cfg80211_vendor_cmd_get_sender +EXPORT_SYMBOL_GPL net/wireless/cfg80211 0x0c2cf3e6 cfg80211_shutdown_all_interfaces +EXPORT_SYMBOL_GPL net/wireless/cfg80211 0x24f2a2e2 cfg80211_pmsr_report +EXPORT_SYMBOL_GPL net/wireless/cfg80211 0x27cee981 cfg80211_vendor_cmd_reply +EXPORT_SYMBOL_GPL net/wireless/cfg80211 0x51ef2e9b cfg80211_wext_giwscan +EXPORT_SYMBOL_GPL net/wireless/cfg80211 0x52d8124c cfg80211_wext_giwmode +EXPORT_SYMBOL_GPL net/wireless/cfg80211 0x604f0958 cfg80211_pmsr_complete +EXPORT_SYMBOL_GPL net/wireless/cfg80211 0x83440d91 cfg80211_wext_giwrts +EXPORT_SYMBOL_GPL net/wireless/cfg80211 0x92cea3b0 cfg80211_wext_giwretry +EXPORT_SYMBOL_GPL net/wireless/cfg80211 0x9d47d675 cfg80211_wext_giwname +EXPORT_SYMBOL_GPL net/wireless/cfg80211 0xa0b45698 cfg80211_wext_siwfrag +EXPORT_SYMBOL_GPL net/wireless/cfg80211 0xb3a0f436 cfg80211_wext_giwfrag +EXPORT_SYMBOL_GPL net/wireless/cfg80211 0xd736629c cfg80211_wext_siwscan +EXPORT_SYMBOL_GPL net/wireless/cfg80211 0xd8d56448 cfg80211_wext_siwmode +EXPORT_SYMBOL_GPL net/wireless/cfg80211 0xfb7ef589 cfg80211_wext_siwrts +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 0x00ccd827 ipcomp_destroy +EXPORT_SYMBOL_GPL net/xfrm/xfrm_ipcomp 0x1b285e11 ipcomp_input +EXPORT_SYMBOL_GPL net/xfrm/xfrm_ipcomp 0x8e101fdd ipcomp_output +EXPORT_SYMBOL_GPL net/xfrm/xfrm_ipcomp 0xa59a6bb4 ipcomp_init_state +EXPORT_SYMBOL_GPL sound/ac97_bus 0x267b9e26 snd_ac97_reset +EXPORT_SYMBOL_GPL sound/core/seq/snd-seq 0xadb51cff snd_seq_client_ioctl_unlock +EXPORT_SYMBOL_GPL sound/core/seq/snd-seq 0xe50413d7 snd_seq_client_ioctl_lock +EXPORT_SYMBOL_GPL sound/core/snd 0x095304cd snd_card_disconnect_sync +EXPORT_SYMBOL_GPL sound/core/snd 0x11ba6ec1 snd_card_add_dev_attr +EXPORT_SYMBOL_GPL sound/core/snd 0x1aadecf8 snd_card_ref +EXPORT_SYMBOL_GPL sound/core/snd 0x3a9bfa84 snd_ctl_add_vmaster_hook +EXPORT_SYMBOL_GPL sound/core/snd 0x3d1ef5ef snd_ctl_get_preferred_subdevice +EXPORT_SYMBOL_GPL sound/core/snd 0x485d7163 snd_device_get_state +EXPORT_SYMBOL_GPL sound/core/snd 0x6098ee98 snd_ctl_apply_vmaster_slaves +EXPORT_SYMBOL_GPL sound/core/snd 0x7aec6417 snd_device_disconnect +EXPORT_SYMBOL_GPL sound/core/snd 0x98883137 snd_device_initialize +EXPORT_SYMBOL_GPL sound/core/snd 0x9fe1f63a snd_ctl_sync_vmaster +EXPORT_SYMBOL_GPL sound/core/snd 0xa4ddc9bf snd_card_rw_proc_new +EXPORT_SYMBOL_GPL sound/core/snd 0xb0760cb1 snd_ctl_activate_id +EXPORT_SYMBOL_GPL sound/core/snd-pcm 0x01bce4f4 _snd_pcm_stream_lock_irqsave +EXPORT_SYMBOL_GPL sound/core/snd-pcm 0x04e1b99f snd_pcm_std_chmaps +EXPORT_SYMBOL_GPL sound/core/snd-pcm 0x09e913c1 snd_pcm_alt_chmaps +EXPORT_SYMBOL_GPL sound/core/snd-pcm 0x4e211bd1 snd_pcm_stream_unlock_irqrestore +EXPORT_SYMBOL_GPL sound/core/snd-pcm 0x634cbe5b snd_pcm_stream_unlock_irq +EXPORT_SYMBOL_GPL sound/core/snd-pcm 0x6a8b3101 snd_pcm_stop_xrun +EXPORT_SYMBOL_GPL sound/core/snd-pcm 0x7d3e8e49 snd_pcm_add_chmap_ctls +EXPORT_SYMBOL_GPL sound/core/snd-pcm 0x80eb9a27 snd_pcm_stream_unlock +EXPORT_SYMBOL_GPL sound/core/snd-pcm 0x8d864069 snd_pcm_rate_range_to_bits +EXPORT_SYMBOL_GPL sound/core/snd-pcm 0xa286a234 snd_pcm_format_name +EXPORT_SYMBOL_GPL sound/core/snd-pcm 0xa73a1c5d snd_pcm_stream_lock +EXPORT_SYMBOL_GPL sound/core/snd-pcm 0xab8bc1a2 snd_pcm_rate_mask_intersect +EXPORT_SYMBOL_GPL sound/core/snd-pcm 0xbf5fd8a4 snd_pcm_stream_lock_irq +EXPORT_SYMBOL_GPL sound/core/snd-pcm 0xc98418f2 snd_pcm_hw_constraint_eld +EXPORT_SYMBOL_GPL sound/core/snd-pcm 0xf0669aa8 snd_pcm_lib_default_mmap +EXPORT_SYMBOL_GPL sound/core/snd-pcm-dmaengine 0x03f4f3b4 snd_dmaengine_pcm_trigger +EXPORT_SYMBOL_GPL sound/core/snd-pcm-dmaengine 0x181d1190 snd_dmaengine_pcm_get_chan +EXPORT_SYMBOL_GPL sound/core/snd-pcm-dmaengine 0x2fa79238 snd_dmaengine_pcm_close_release_chan +EXPORT_SYMBOL_GPL sound/core/snd-pcm-dmaengine 0x34702cff snd_dmaengine_pcm_open +EXPORT_SYMBOL_GPL sound/core/snd-pcm-dmaengine 0x3f33d50f snd_dmaengine_pcm_open_request_chan +EXPORT_SYMBOL_GPL sound/core/snd-pcm-dmaengine 0x493ad072 snd_dmaengine_pcm_pointer +EXPORT_SYMBOL_GPL sound/core/snd-pcm-dmaengine 0x5a3de512 snd_dmaengine_pcm_set_config_from_dai_data +EXPORT_SYMBOL_GPL sound/core/snd-pcm-dmaengine 0x5d6cfd0d snd_dmaengine_pcm_refine_runtime_hwparams +EXPORT_SYMBOL_GPL sound/core/snd-pcm-dmaengine 0x5fede474 snd_hwparams_to_dma_slave_config +EXPORT_SYMBOL_GPL sound/core/snd-pcm-dmaengine 0xb68f6622 snd_dmaengine_pcm_request_channel +EXPORT_SYMBOL_GPL sound/core/snd-pcm-dmaengine 0xc90cd0c5 snd_dmaengine_pcm_close +EXPORT_SYMBOL_GPL sound/core/snd-pcm-dmaengine 0xdcbce0f7 snd_dmaengine_pcm_pointer_no_residue +EXPORT_SYMBOL_GPL sound/core/snd-seq-device 0x359f862f __snd_seq_driver_register +EXPORT_SYMBOL_GPL sound/core/snd-seq-device 0x4f1e6a79 snd_seq_driver_unregister +EXPORT_SYMBOL_GPL sound/firewire/snd-firewire-lib 0x2b9eb1aa amdtp_domain_destroy +EXPORT_SYMBOL_GPL sound/firewire/snd-firewire-lib 0x3089138f amdtp_domain_stop +EXPORT_SYMBOL_GPL sound/firewire/snd-firewire-lib 0x438def97 amdtp_domain_stream_pcm_ack +EXPORT_SYMBOL_GPL sound/firewire/snd-firewire-lib 0x521c52c6 amdtp_am824_set_midi_position +EXPORT_SYMBOL_GPL sound/firewire/snd-firewire-lib 0x54785d6e amdtp_domain_stream_pcm_pointer +EXPORT_SYMBOL_GPL sound/firewire/snd-firewire-lib 0x58231055 amdtp_am824_init +EXPORT_SYMBOL_GPL sound/firewire/snd-firewire-lib 0x66ec8ce5 amdtp_am824_midi_trigger +EXPORT_SYMBOL_GPL sound/firewire/snd-firewire-lib 0x7850e2c9 amdtp_domain_start +EXPORT_SYMBOL_GPL sound/firewire/snd-firewire-lib 0x850a8186 amdtp_domain_add_stream +EXPORT_SYMBOL_GPL sound/firewire/snd-firewire-lib 0x8c287399 amdtp_am824_set_pcm_position +EXPORT_SYMBOL_GPL sound/firewire/snd-firewire-lib 0xc8c01951 amdtp_am824_add_pcm_hw_constraints +EXPORT_SYMBOL_GPL sound/firewire/snd-firewire-lib 0xf953c256 amdtp_domain_init +EXPORT_SYMBOL_GPL sound/firewire/snd-firewire-lib 0xfeb534ee amdtp_am824_set_parameters +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0x055ce5b8 snd_hdac_display_power +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0x05621a83 snd_hdac_regmap_read_raw +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0x127ffe93 snd_hdac_dsp_trigger +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0x14c79df4 snd_hdac_query_supported_pcm +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0x17af528b snd_hdac_stream_setup_periods +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0x19b765d9 snd_hda_bus_type +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0x1a9914ec snd_hdac_stream_release +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0x1d71f173 snd_hdac_dsp_cleanup +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0x1e11729b snd_hdac_bus_update_rirb +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0x23abe713 snd_hdac_stream_stop +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0x2419e2ef snd_hdac_stream_timecounter_init +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0x25c7cade snd_hdac_bus_handle_stream_irq +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0x293656cf snd_hdac_stream_sync_trigger +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0x307b7f27 snd_hdac_regmap_exit +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0x30f0a20f snd_hdac_override_parm +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0x33c9d294 snd_hdac_device_register +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0x348d068e snd_hdac_regmap_write_raw +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0x3525f3cc snd_hdac_bus_parse_capabilities +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0x362e4ccf snd_hdac_acomp_init +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0x3896bf50 snd_hdac_channel_allocation +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0x38a8cf1f snd_hdac_bus_init +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0x3bd544c2 snd_hdac_get_active_channels +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0x3ee47794 snd_hdac_get_stream +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0x42181b84 snd_hdac_codec_write +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0x4921b988 snd_hdac_get_sub_nodes +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0x4c7ec4b6 snd_hdac_get_ch_alloc_from_ca +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0x5154d5bd snd_hdac_power_down +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0x54ef7c4d snd_hdac_power_up +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0x55a0e7bd snd_hdac_bus_exit_link_reset +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0x5631a0ea snd_hdac_stream_setup +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0x5bec5209 snd_hdac_stream_start +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0x5c07cb49 snd_hdac_calc_stream_format +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0x62dca42b snd_hdac_bus_send_cmd +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0x6482813a snd_hdac_add_chmap_ctls +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0x64f44905 snd_hdac_acomp_exit +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0x67bfe791 snd_hdac_spk_to_chmap +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0x7446fb27 snd_hdac_power_down_pm +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0x74ede3c9 snd_hdac_get_connections +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0x767dc0a2 snd_hdac_read_parm_uncached +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0x77749574 snd_hdac_device_unregister +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0x77c754a8 snd_hdac_chmap_to_spk_mask +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0x7d67d6b9 snd_hdac_bus_init_cmd_io +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0x806c0a3c snd_hdac_refresh_widgets +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0x84ace708 snd_hdac_bus_free_stream_pages +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0x851f42c0 _snd_hdac_read_parm +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0x869e508a snd_hdac_bus_stop_cmd_io +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0x9a404f33 snd_hdac_setup_channel_mapping +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0x9a75761c snd_hdac_regmap_update_raw +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0x9a8e1877 snd_array_free +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0x9ca83f28 snd_hdac_sync_power_state +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0x9d946da0 snd_hdac_register_chmap_ops +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0xa0c707d5 snd_hdac_get_stream_stripe_ctl +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0xa35af9df snd_hdac_regmap_add_vendor_verb +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0xa50311e3 snd_hdac_regmap_init +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0xa790adad snd_hdac_regmap_sync +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0xa7d32bf4 snd_hdac_acomp_get_eld +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0xa809f3a3 snd_hdac_bus_stop_chip +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0xa816a1b2 snd_hdac_stream_assign +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0xaa7a448a snd_hdac_device_set_chip_name +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0xada12afb snd_hdac_regmap_update_raw_once +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0xaf7cf17b snd_hdac_stream_sync +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0xbe7dd7dc snd_array_new +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0xc21106c1 snd_hdac_bus_get_response +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0xc34c9979 snd_hdac_check_power_state +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0xc657f177 snd_hdac_bus_exec_verb_unlocked +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0xc74803d9 snd_hdac_is_supported_format +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0xc8f7ff82 snd_hdac_device_init +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0xcae25a05 snd_hdac_bus_enter_link_reset +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0xcca5ae60 snd_hdac_stream_cleanup +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0xd5248303 snd_hdac_stream_reset +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0xda6e7b9e snd_hdac_read +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0xdcd4772c snd_hdac_bus_reset_link +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0xe19e5427 snd_hdac_device_exit +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0xe2f4e556 snd_hdac_power_up_pm +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0xe3ffdf6e snd_hdac_set_codec_wakeup +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0xe462eb3b snd_hdac_stream_init +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0xe4e07754 snd_hdac_print_channel_allocation +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0xe5f32f58 snd_hdac_sync_audio_rate +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0xe61fa9bc snd_hdac_bus_init_chip +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0xe90b1a10 snd_hdac_stream_clear +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0xea02fdfd snd_hdac_dsp_prepare +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0xf27504b5 snd_hdac_bus_alloc_stream_pages +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0xf33af7af snd_hdac_codec_read +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0xf3c7101f hdac_get_device_id +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0xf5b76e40 snd_hdac_codec_modalias +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0xf700989c snd_hdac_bus_exit +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0xfe8befad snd_hdac_acomp_register_notifier +EXPORT_SYMBOL_GPL sound/hda/snd-hda-core 0xfefdf2bd snd_hdac_stream_set_params +EXPORT_SYMBOL_GPL sound/hda/snd-intel-dspcfg 0xf8f6d004 snd_intel_dsp_driver_probe +EXPORT_SYMBOL_GPL sound/i2c/other/snd-ak4113 0x2242f338 snd_ak4113_reg_write +EXPORT_SYMBOL_GPL sound/i2c/other/snd-ak4113 0x4a447d0d snd_ak4113_build +EXPORT_SYMBOL_GPL sound/i2c/other/snd-ak4113 0x5d1fca97 snd_ak4113_reinit +EXPORT_SYMBOL_GPL sound/i2c/other/snd-ak4113 0xbe540ea1 snd_ak4113_check_rate_and_errors +EXPORT_SYMBOL_GPL sound/i2c/other/snd-ak4113 0xdbd88b81 snd_ak4113_create +EXPORT_SYMBOL_GPL sound/i2c/other/snd-ak4113 0xf9b1c854 snd_ak4113_external_rate +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x0106d5d1 __hda_codec_driver_register +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x0257ce37 is_jack_detectable +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x05bcb95c snd_hda_mixer_amp_volume_get +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x05f7f680 snd_hda_jack_set_dirty_all +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x0676f5ac snd_hda_get_input_pin_attr +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x07d2b341 snd_hda_jack_tbl_get_from_tag +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x0a1df77e snd_hda_multi_out_dig_cleanup +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x0b3518ee snd_hda_apply_pincfgs +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x0b3edc54 snd_hda_codec_prepare +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x0bb083d4 snd_hda_apply_fixup +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x0e5381df snd_hda_create_dig_out_ctls +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x14a3f0a5 snd_hda_spdif_out_of_nid +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x158a2b86 snd_hda_codec_amp_init_stereo +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x15fe5569 snd_hda_mixer_amp_volume_info +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x1c054fd1 azx_probe_codecs +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x1c2bab61 snd_hda_jack_unsol_event +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x1f199c55 snd_hda_pick_pin_fixup +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x1f281506 snd_hda_unlock_devices +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x204f8cad snd_hda_shutup_pins +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x208e0479 snd_hda_input_mux_put +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x24529d9f snd_hda_correct_pin_ctl +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x267e5a37 snd_hda_lock_devices +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x27686b1d azx_get_position +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x27865d49 snd_hda_multi_out_analog_cleanup +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x2833690b snd_hda_check_amp_caps +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x2c66e513 snd_hda_jack_set_gating_jack +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x2dbf498d snd_hda_jack_add_kctls +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x319bade7 snd_hda_multi_out_analog_prepare +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x31a2c3fb snd_hda_pick_fixup +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x32e3999e snd_hda_codec_amp_stereo +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x353ce7c2 snd_hda_mixer_amp_tlv +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x35d874b4 snd_hda_load_patch +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x3793b680 snd_hda_get_conn_index +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x38ce402b azx_interrupt +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x3dde519c snd_hda_enable_beep_device +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x3fe98253 snd_hda_codec_amp_update +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x427b1514 snd_hda_enum_helper_info +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x486ccb55 snd_hda_codec_update_widgets +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x49a8ee6f azx_get_pos_lpib +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x49dbe8a2 snd_hda_mixer_amp_switch_put_beep +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x50c80494 snd_hda_get_hint +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x5173521e snd_hda_get_bool_hint +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x52376a05 snd_hda_codec_eapd_power_filter +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x556578dc __snd_hda_codec_cleanup_stream +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x56a382e0 snd_hda_jack_report_sync +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x5beac5d1 hda_get_autocfg_input_label +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x5c9ceac2 _snd_hda_set_pin_ctl +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x5db14aad snd_hda_ctl_add +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x5e0291e5 snd_hda_codec_cleanup +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x61f6e8d9 azx_stop_chip +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x64167570 azx_init_chip +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x670b9f61 snd_hda_create_spdif_share_sw +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x690e2c5e snd_hda_parse_pin_defcfg +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x6ad50d95 snd_hda_add_nid +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x6b075946 azx_stop_all_streams +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x6b1d8bd8 snd_hda_find_mixer_ctl +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x6be299b1 snd_hda_multi_out_dig_close +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x6edec642 snd_hda_codec_configure +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x7292f561 snd_hda_multi_out_dig_prepare +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x73398eb3 snd_hda_jack_add_kctl_mst +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x74077606 snd_hda_sync_vmaster_hook +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x756ab0a4 snd_hda_mixer_amp_volume_put +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x75dfa517 snd_hda_get_conn_list +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x77e3c44c snd_hda_get_dev_select +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x7a9f7deb snd_hda_sequence_write +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x7e33d708 snd_hda_detach_beep_device +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x7e9d71a8 snd_hda_codec_get_pin_target +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x7f5e93d3 snd_hda_override_amp_caps +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x80f20910 __snd_hda_add_vmaster +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x82d237dc snd_hda_set_vmaster_tlv +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x855cc8a3 azx_free_streams +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x858af40a snd_hda_codec_pcm_put +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x870be9a9 hda_codec_driver_unregister +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x873e00ff snd_hda_override_conn_list +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x882ec62d snd_hda_spdif_ctls_assign +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x8c063b15 snd_hda_codec_device_new +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x8efac0d5 snd_hda_jack_detect_enable_callback_mst +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x8f193598 snd_hda_mixer_amp_switch_put +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x91f3dbfa snd_hda_codec_pcm_new +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x91f76593 snd_hda_jack_poll_all +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x998001d2 snd_hda_codec_load_dsp_prepare +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x9d4f211a snd_hda_create_spdif_in_ctls +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xa04968dc snd_hda_codec_amp_init +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xa3fdfb83 snd_hda_codec_set_power_to_all +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xa407448e query_amp_caps +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xa96cb4b1 snd_hda_jack_detect_enable +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xac3d7332 snd_hda_jack_tbl_get_mst +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xac3f5dc5 snd_hda_set_power_save +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xb08da67f snd_hda_codec_build_controls +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xb0f24d7b snd_hda_mixer_amp_switch_get_beep +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xb2883419 snd_hda_codec_setup_stream +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xb434946f snd_hda_add_imux_item +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xb43d778f snd_hda_get_num_devices +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xb4c0aff6 snd_hda_get_connections +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xb7b271da snd_hda_get_pin_label +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xb7f71413 snd_hda_check_amp_list_power +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xbbf47cad snd_hda_add_verbs +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xbf6fa851 azx_get_pos_posbuf +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xc417d559 azx_bus_init +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xc44bc025 snd_hda_codec_set_pin_target +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xc53a5e02 snd_hda_codec_get_pincfg +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xc877a1ce snd_hda_spdif_ctls_unassign +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xcacd9cc7 snd_hda_apply_verbs +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xcc83b9c5 snd_hda_input_mux_info +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xd047025b snd_hda_multi_out_analog_open +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xd18b32aa snd_hda_add_new_ctls +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xd957f01a azx_codec_configure +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xda6890cf snd_hda_get_int_hint +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xdaf2f803 snd_hda_attach_beep_device +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xdead6c56 azx_init_streams +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xe0572332 snd_hda_get_default_vref +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xe05b1b82 snd_hda_jack_pin_sense +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xe118de5d snd_pcm_2_1_chmaps +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xe126f14f snd_hda_jack_detect_state_mst +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xe7b1c28a snd_hda_codec_parse_pcms +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xeca50cbd snd_hda_codec_load_dsp_trigger +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xeda3a721 snd_print_pcm_bits +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xef8dd055 snd_hda_mixer_amp_switch_info +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xefd78f86 snd_hda_add_vmaster_hook +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xf15284ca snd_hda_codec_set_pincfg +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xf83cdafe snd_hda_codec_load_dsp_cleanup +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xf8c4cecd snd_hda_multi_out_dig_open +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xfbd05996 snd_hda_set_dev_select +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xfcf58ee6 snd_hda_codec_set_name +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xff376a4d snd_hda_codec_new +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xffcf3c60 snd_hda_mixer_amp_switch_get +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec-generic 0x013ba09f snd_hda_gen_hp_automute +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec-generic 0x040c2adb snd_hda_gen_check_power_status +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec-generic 0x14034478 snd_hda_get_path_idx +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec-generic 0x1708f565 snd_hda_gen_free +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec-generic 0x32513590 snd_hda_gen_build_pcms +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec-generic 0x3f176f01 snd_hda_gen_reboot_notify +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec-generic 0x45130f63 snd_hda_get_path_from_idx +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec-generic 0x470e0127 snd_hda_gen_stream_pm +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec-generic 0x56d9262c snd_hda_gen_line_automute +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec-generic 0x63619c81 snd_hda_gen_fix_pin_power +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec-generic 0x76dc6871 hda_main_out_badness +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec-generic 0x871a6e44 hda_extra_out_badness +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec-generic 0x919e5ecc snd_hda_gen_init +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec-generic 0x95a152c9 snd_hda_gen_build_controls +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec-generic 0x97e158c0 snd_hda_gen_spec_init +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec-generic 0x9ccbc69b snd_hda_gen_path_power_filter +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec-generic 0xa0577f7e snd_hda_gen_add_mute_led_cdev +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec-generic 0xbe25184f snd_hda_gen_update_outputs +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec-generic 0xd1a85f06 snd_hda_gen_add_kctl +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec-generic 0xeaffec10 snd_hda_activate_path +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec-generic 0xf05f3278 snd_hda_gen_parse_auto_config +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec-generic 0xf1b05a4c snd_hda_gen_add_micmute_led_cdev +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec-generic 0xf7d29b05 snd_hda_gen_mic_autoswitch +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec-generic 0xff48c69a snd_hda_add_new_path +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-adau-utils 0xae620be9 adau_calc_pll_cfg +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-adau1761 0x1f7a81f6 adau1761_regmap_config +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-adau1761 0xae305e50 adau1761_probe +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-adau17x1 0x08d76a9b adau17x1_dai_ops +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-adau17x1 0x2d5a93cd adau17x1_readable_register +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-adau17x1 0x31577743 adau17x1_add_routes +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-adau17x1 0x3b4c8847 adau17x1_precious_register +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-adau17x1 0x52ee7543 adau17x1_add_widgets +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-adau17x1 0x550f895b adau17x1_resume +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-adau17x1 0x65dbc346 adau17x1_set_micbias_voltage +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-adau17x1 0x78b019ff adau17x1_volatile_register +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-adau17x1 0x95e9d1f0 adau17x1_remove +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-adau17x1 0xb0c78b2b adau17x1_probe +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-adau7118 0x122be459 adau7118_probe +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-cs4271 0x4cd55701 cs4271_probe +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-cs4271 0x7d05786f cs4271_dt_ids +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-cs4271 0x99ec403b cs4271_regmap_config +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-cs42l51 0x375ad98c cs42l51_of_match +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-cs42l51 0x6176cab5 cs42l51_suspend +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-cs42l51 0x8a77434d cs42l51_regmap +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-cs42l51 0x9e1ebe9a cs42l51_resume +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-cs42l51 0xc14d0533 cs42l51_remove +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-cs42l51 0xf57b4822 cs42l51_probe +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-cs42xx8 0x0245c4f2 cs42xx8_of_match +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-cs42xx8 0x17f5be9c cs42xx8_regmap_config +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-cs42xx8 0x5b804261 cs42xx8_probe +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-cs42xx8 0x7cac7292 cs42888_data +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-cs42xx8 0x97f1cb36 cs42xx8_pm +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-cs42xx8 0xcd3794c9 cs42448_data +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-da7219 0xb3bc0002 da7219_aad_exit +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-da7219 0xbe6fcc7f da7219_aad_init +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-da7219 0xead8d47a da7219_aad_jack_det +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-es8328 0x8dfa12a8 es8328_regmap_config +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-es8328 0x90641110 es8328_probe +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-hdmi-codec 0xbcc05f39 hdmi_codec_set_jack_detect +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-nau8824 0xb24a0a42 nau8824_enable_jack_detect +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-pcm1789-codec 0x15b508e3 pcm1789_common_init +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-pcm1789-codec 0x18fc69d8 pcm1789_common_exit +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-pcm1789-codec 0xfd960b72 pcm1789_regmap_config +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-pcm179x-codec 0x168e688e pcm179x_common_init +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-pcm179x-codec 0xfa26a75a pcm179x_regmap_config +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-pcm186x 0x113ac587 pcm186x_regmap +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-pcm186x 0x658a0dcb pcm186x_probe +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-pcm3168a 0x43996358 pcm3168a_probe +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-pcm3168a 0x4a19c643 pcm3168a_remove +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-pcm3168a 0x5b8224bd pcm3168a_pm_ops +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-pcm3168a 0xc6e8e556 pcm3168a_regmap +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-pcm512x 0x1a27eabd pcm512x_probe +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-pcm512x 0x4a5d8b75 pcm512x_pm_ops +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-pcm512x 0x609a6007 pcm512x_regmap +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-pcm512x 0xd77942b8 pcm512x_remove +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-rl6231 0x5dc92cdf rl6231_pll_calc +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-rl6231 0x70617a04 rl6231_get_clk_info +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-rl6231 0x8d7fa148 rl6231_get_pre_div +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-rl6231 0xdba4502f rl6231_calc_dmic_clk +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-rt5645 0x5df0dab2 rt5645_sel_asrc_clk_src +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-rt5645 0x8ae7e0a5 rt5645_set_jack_detect +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-rt5682 0x019d8158 rt5682_apply_patch_list +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-rt5682 0x03ffe924 rt5682_soc_component_dev +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-rt5682 0x25193d08 rt5682_aif1_dai_ops +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-rt5682 0x28730696 rt5682_supply_names +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-rt5682 0x495b1729 rt5682_volatile_register +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-rt5682 0x59d3d967 rt5682_jack_detect_handler +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-rt5682 0x84f4309a rt5682_parse_dt +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-rt5682 0x91d2e2bb rt5682_sel_asrc_clk_src +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-rt5682 0xa8cc469b rt5682_readable_register +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-rt5682 0xb897de56 rt5682_reg +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-rt5682 0xbc43a40b rt5682_reset +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-rt5682 0xc6c4f328 rt5682_headset_detect +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-rt5682 0xcb416ba2 rt5682_calibrate +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-rt5682 0xce2e860b rt5682_aif2_dai_ops +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-sigmadsp 0x1dd198be devm_sigmadsp_init +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-sigmadsp 0x3855bbf7 sigmadsp_reset +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-sigmadsp 0x56cb4de8 sigmadsp_attach +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-sigmadsp 0x6f14076a sigmadsp_setup +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-sigmadsp 0x7bae0006 sigmadsp_restrict_params +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-sigmadsp-i2c 0x5e958e72 devm_sigmadsp_init_i2c +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-sigmadsp-regmap 0xa7fa431b devm_sigmadsp_init_regmap +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-ssm2602 0x681a4602 ssm2602_probe +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-ssm2602 0x7fc5e0b5 ssm2602_regmap_config +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-tlv320aic32x4 0x2bad5357 aic32x4_register_clocks +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-ts3a227e 0x7d55f6a7 ts3a227e_enable_jack_detect +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-wm8804 0x3e4b962a wm8804_remove +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-wm8804 0x552dd11a wm8804_regmap_config +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-wm8804 0x89099e62 wm8804_pm +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-wm8804 0xefa8c126 wm8804_probe +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-wm8903 0x2506ee76 wm8903_mic_detect +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-wm8962 0xa45e2243 wm8962_mic_detect +EXPORT_SYMBOL_GPL sound/soc/fsl/snd-soc-fsl-asrc 0x8ecdcf3c fsl_asrc_component +EXPORT_SYMBOL_GPL sound/soc/fsl/snd-soc-fsl-easrc 0x644fa228 fsl_easrc_get_dma_channel +EXPORT_SYMBOL_GPL sound/soc/fsl/snd-soc-imx-audmux 0x30693bb7 imx_audmux_v1_configure_port +EXPORT_SYMBOL_GPL sound/soc/fsl/snd-soc-imx-audmux 0x58631dab imx_audmux_v2_configure_port +EXPORT_SYMBOL_GPL sound/soc/generic/snd-soc-simple-card-utils 0x11ff6637 asoc_simple_parse_daifmt +EXPORT_SYMBOL_GPL sound/soc/generic/snd-soc-simple-card-utils 0x238a4741 asoc_simple_clean_reference +EXPORT_SYMBOL_GPL sound/soc/generic/snd-soc-simple-card-utils 0x2b4dc60b asoc_simple_be_hw_params_fixup +EXPORT_SYMBOL_GPL sound/soc/generic/snd-soc-simple-card-utils 0x323247b9 asoc_simple_init_priv +EXPORT_SYMBOL_GPL sound/soc/generic/snd-soc-simple-card-utils 0x3344ad6e asoc_simple_init_jack +EXPORT_SYMBOL_GPL sound/soc/generic/snd-soc-simple-card-utils 0x3525e0eb asoc_simple_hw_params +EXPORT_SYMBOL_GPL sound/soc/generic/snd-soc-simple-card-utils 0x3d56697b asoc_simple_parse_convert +EXPORT_SYMBOL_GPL sound/soc/generic/snd-soc-simple-card-utils 0x3d77cbe1 asoc_simple_parse_clk +EXPORT_SYMBOL_GPL sound/soc/generic/snd-soc-simple-card-utils 0x54f31a59 asoc_simple_parse_pin_switches +EXPORT_SYMBOL_GPL sound/soc/generic/snd-soc-simple-card-utils 0x587b1ada asoc_simple_shutdown +EXPORT_SYMBOL_GPL sound/soc/generic/snd-soc-simple-card-utils 0x921af135 asoc_simple_parse_routing +EXPORT_SYMBOL_GPL sound/soc/generic/snd-soc-simple-card-utils 0xad0914ea asoc_simple_set_dailink_name +EXPORT_SYMBOL_GPL sound/soc/generic/snd-soc-simple-card-utils 0xb936a1e3 asoc_simple_parse_widgets +EXPORT_SYMBOL_GPL sound/soc/generic/snd-soc-simple-card-utils 0xd56504bc asoc_simple_dai_init +EXPORT_SYMBOL_GPL sound/soc/generic/snd-soc-simple-card-utils 0xe15cc5f3 asoc_simple_canonicalize_platform +EXPORT_SYMBOL_GPL sound/soc/generic/snd-soc-simple-card-utils 0xe970217d asoc_simple_canonicalize_cpu +EXPORT_SYMBOL_GPL sound/soc/generic/snd-soc-simple-card-utils 0xf3bafb75 asoc_simple_convert_fixup +EXPORT_SYMBOL_GPL sound/soc/generic/snd-soc-simple-card-utils 0xf55881f3 asoc_simple_startup +EXPORT_SYMBOL_GPL sound/soc/generic/snd-soc-simple-card-utils 0xfa7e321b asoc_simple_parse_card_name +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x006fbbf8 snd_soc_of_parse_card_name +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x00a8802c snd_soc_dapm_info_pin_switch +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x00c556d6 snd_soc_dapm_force_bias_level +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x02d0a3bd snd_soc_get_volsw_range +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x0370fd02 snd_soc_dapm_add_routes +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x058ba666 snd_soc_tplg_widget_remove +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x070d3ceb snd_soc_of_put_dai_link_codecs +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x07d08e1f snd_soc_dapm_mux_update_power +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x08c92072 snd_soc_dapm_sync_unlocked +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x08f16248 snd_soc_put_xr_sx +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x098275a8 snd_soc_cnew +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x0b3967f5 snd_soc_dapm_disable_pin_unlocked +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x0b819754 snd_soc_component_set_jack +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x0c668afc snd_soc_bytes_put +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x0c79f79e snd_soc_tplg_component_load +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x0d5aeee6 snd_soc_dai_set_bclk_ratio +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x0fc97ddf snd_soc_get_dai_id +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x10b22409 snd_soc_dapm_new_widgets +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x10b95397 snd_soc_info_volsw +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x113ffc30 snd_soc_card_add_dai_link +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x121c1b0e snd_soc_jack_free_gpios +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x12a00581 snd_soc_component_enable_pin_unlocked +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x14604e3c snd_soc_of_parse_node_prefix +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x1808a9a2 snd_soc_dpcm_can_be_free_stop +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x18af0ec1 snd_soc_of_get_dai_link_codecs +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x1c63c7eb snd_soc_component_update_bits_async +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x1c99fd5f snd_soc_dai_set_tristate +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x1fd41a0c snd_soc_info_volsw_sx +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x22928f97 snd_soc_component_force_enable_pin +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x2541a979 snd_soc_calc_frame_size +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x25f8f922 snd_soc_dapm_put_volsw +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x28394007 snd_soc_put_enum_double +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x2894024b snd_soc_get_pcm_runtime +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x2b51c828 snd_soc_dapm_get_enum_double +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x2b538a14 snd_soc_find_dai +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x2b8728b4 snd_soc_tplg_widget_remove_all +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x2c359ff7 snd_soc_bytes_tlv_callback +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x2e8e1e13 snd_soc_component_init_regmap +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x2ec8a265 snd_soc_runtime_set_dai_fmt +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x2f2a25d2 snd_soc_set_ac97_ops_of_reset +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x2f67968e snd_soc_set_runtime_hwparams +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x30506ef0 snd_soc_info_xr_sx +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x327ee625 snd_soc_dai_compr_pointer +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x336b2c0b snd_soc_component_nc_pin_unlocked +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x34385846 snd_soc_dai_compr_startup +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x36db3be1 snd_soc_dai_set_sysclk +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x377b89e8 snd_soc_dai_set_tdm_slot +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x37847cd4 snd_soc_dai_compr_get_metadata +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x379cf37e snd_soc_unregister_dai +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x38529ed5 snd_soc_dai_link_set_capabilities +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x3ac8f87b snd_soc_unregister_component +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x3afdd8f3 snd_soc_add_card_controls +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x3b6bc226 snd_soc_dapm_get_volsw +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x3eca2af4 snd_soc_dapm_update_dai +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x3fa2dbd2 snd_soc_dapm_disable_pin +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x3ffd22b1 snd_soc_component_get_pin_status +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x42013ea0 snd_soc_tplg_component_remove +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x431d4aa5 snd_soc_component_set_pll +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x443b2665 snd_soc_link_compr_startup +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x44c42c0e snd_soc_unregister_card +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x44eea0fc snd_soc_dapm_new_controls +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x45540838 snd_soc_dapm_mixer_update_power +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x4a7b2c41 devm_snd_soc_register_component +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x4cd4d366 snd_soc_dapm_enable_pin_unlocked +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x4f0c1857 snd_soc_runtime_calc_hw +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x503668df snd_soc_free_ac97_component +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x549716fe snd_soc_jack_add_gpiods +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x57ebd6c0 snd_soc_add_pcm_runtime +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x58ebbaa2 snd_soc_dai_compr_shutdown +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x59f07772 snd_soc_card_remove_dai_link +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x59fcb8af snd_dmaengine_pcm_unregister +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x5a3dc900 snd_soc_register_card +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x5a826355 snd_soc_component_test_bits +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x5b29c3b7 snd_soc_dai_action +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x5c423f21 snd_soc_info_volsw_range +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x5cc16eb3 devm_snd_dmaengine_pcm_register +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x5dfac0ce snd_soc_lookup_component +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x62d4ce82 snd_soc_put_volsw_sx +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x63b9eead devm_snd_soc_register_card +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x66ad2f76 snd_soc_dapm_ignore_suspend +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x681bce23 snd_soc_jack_report +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x6a7986d5 snd_soc_put_strobe +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x6b12f3de snd_dmaengine_pcm_register +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x6cf26f31 snd_soc_bytes_info +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x6e832b64 snd_soc_register_component +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x71fb3b1b snd_soc_dapm_stream_stop +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x72b03d37 snd_soc_component_read32 +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x739578bc snd_soc_dapm_get_pin_switch +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x7438f027 snd_soc_link_compr_shutdown +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x7469abca snd_soc_dapm_get_pin_status +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x76813405 snd_soc_dapm_force_enable_pin +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x776d89c6 snd_soc_get_strobe +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x7818089e snd_soc_get_volsw +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x7ae1fdf2 snd_soc_close_delayed_work +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x7c06add5 snd_soc_dapm_del_routes +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x7c4013b4 snd_soc_dpcm_be_can_update +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x7cb08304 snd_soc_bytes_get +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x7cb15524 snd_soc_component_write +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x7cd806ca snd_soc_jack_add_pins +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x7e549774 snd_soc_pm_ops +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x7e606130 snd_soc_calc_bclk +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x7fb10f7a snd_soc_dpcm_get_substream +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x7fd144a2 snd_soc_dpcm_can_be_params +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x8026418e snd_soc_component_update_bits +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x81d1a895 snd_soc_new_ac97_component +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x824e504d snd_soc_rtdcom_lookup +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x82f749e5 snd_soc_component_read +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x838fb764 snd_soc_of_get_dai_name +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x869a12dd snd_soc_add_dai_controls +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x88082ab0 snd_soc_dai_compr_set_params +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x8a2b98aa snd_soc_dapm_put_pin_switch +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x8ba997e2 snd_soc_component_async_complete +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x8cbf602b snd_soc_find_dai_with_mutex +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x9061eb84 snd_soc_of_parse_daifmt +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x912c65ff snd_soc_dapm_nc_pin_unlocked +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x922d0829 snd_soc_dapm_enable_pin +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x93848f95 snd_soc_get_volsw_sx +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x93f50dbf snd_soc_dai_compr_ack +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x94705774 snd_soc_add_component +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x948ebd77 snd_soc_dai_set_pll +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x9744fc5e snd_soc_link_compr_set_params +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x980d0003 snd_soc_get_dai_name +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x99b03909 snd_soc_put_volsw_range +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x9a9c3580 snd_soc_of_get_slot_mask +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x9b952053 snd_soc_dai_compr_get_params +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x9c426862 snd_soc_suspend +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xa155ff78 snd_soc_dai_set_clkdiv +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xa31c760d snd_soc_of_parse_audio_simple_widgets +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xa5084a40 snd_soc_card_jack_new +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xa61b2142 snd_soc_bytes_info_ext +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xa7f44d03 dapm_mark_endpoints_dirty +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xa91e5646 snd_soc_tplg_widget_bind_event +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xa9305e8c snd_soc_runtime_action +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xaac8d6bc null_dailink_component +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xabee1558 snd_soc_get_xr_sx +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xaef321c0 snd_soc_jack_notifier_register +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xb007a4bc snd_soc_of_parse_tdm_slot +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xb0449048 snd_soc_component_enable_pin +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xb071cd46 snd_soc_dapm_free +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xb359dab3 snd_soc_get_enum_double +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xb4333380 dapm_kcontrol_get_value +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xb442ba2d snd_soc_set_ac97_ops +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xb808485e snd_soc_dpcm_fe_can_update +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xb9d9f406 snd_soc_jack_add_gpios +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xbd8472ba snd_soc_component_disable_pin_unlocked +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xc3689d4f dapm_regulator_event +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xc3ed78df snd_soc_dapm_sync +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xc3f8a08b snd_soc_component_set_sysclk +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xc3f9f18d snd_soc_of_parse_audio_routing +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xc40945ce snd_soc_dapm_weak_routes +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xc4252185 snd_soc_dai_digital_mute +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xc5de889f snd_soc_dai_compr_set_metadata +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xc638fe3c snd_soc_dapm_kcontrol_dapm +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xc8269f94 snd_soc_params_to_frame_size +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xca2e3727 dapm_clock_event +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xcb0b600c snd_soc_dapm_kcontrol_widget +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xcc40af54 snd_soc_dai_set_channel_map +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xcc82c3d1 dpcm_be_dai_trigger +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xccaa11dd snd_soc_add_component_controls +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xcd18977e snd_soc_jack_get_type +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xcd2f599f snd_soc_unregister_component_by_driver +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xd10d963f snd_soc_dai_active +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xd10e3d2d snd_soc_jack_notifier_unregister +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xd13c8606 snd_soc_dai_get_channel_map +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xd5f381f9 snd_soc_limit_volume +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xd6085a41 snd_soc_card_get_kcontrol +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xd87d02d0 snd_soc_poweroff +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xdb077f8e snd_soc_put_volsw +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xdb68750a dapm_pinctrl_event +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xded2151a snd_soc_info_enum_double +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xdf3cd857 snd_soc_component_disable_pin +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xdf7cc399 snd_soc_dapm_put_enum_double +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xe09bb5ef snd_dmaengine_pcm_prepare_slave_config +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xe0b24871 snd_soc_dapm_new_control +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xe43829d9 snd_soc_component_force_enable_pin_unlocked +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xe5a1ddb1 soc_ac97_ops +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xe85e5c76 snd_soc_lookup_component_nolocked +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xe9432443 snd_soc_dapm_nc_pin +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xea5a9e94 snd_soc_dai_set_fmt +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xeb711ae7 snd_soc_params_to_bclk +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xeeec0607 snd_soc_jack_add_zones +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xf3c30eb4 snd_soc_remove_pcm_runtime +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xf7ad046d snd_soc_dapm_force_enable_pin_unlocked +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xf87517f7 snd_soc_debugfs_root +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xfb9fc11b snd_soc_dpcm_runtime_update +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xfd0438d5 snd_soc_dai_compr_trigger +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xfd1ca3f3 snd_soc_dapm_init +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xfe9db264 snd_soc_resume +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xfec6840c devm_snd_soc_register_dai +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xff50c66c snd_soc_component_nc_pin +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xffd2b3c5 snd_soc_component_exit_regmap +EXPORT_SYMBOL_GPL sound/soc/sof/snd-sof 0x0b5b4b24 snd_sof_dbg_init +EXPORT_SYMBOL_GPL sound/soc/sof/snd-sof 0x4f2b90e8 snd_sof_debugfs_buf_item +EXPORT_SYMBOL_GPL sound/soc/sof/snd-sof 0x54ac36e1 snd_sof_free_debug +EXPORT_SYMBOL_GPL sound/soc/sof/snd-sof 0xd3aebe2c snd_sof_debugfs_io_item +EXPORT_SYMBOL_GPL sound/usb/line6/snd-usb-line6 0x0fa88d46 line6_init_midi +EXPORT_SYMBOL_GPL sound/usb/line6/snd-usb-line6 0x0fe34ef0 line6_pcm_release +EXPORT_SYMBOL_GPL sound/usb/line6/snd-usb-line6 0x12b712f1 line6_pcm_acquire +EXPORT_SYMBOL_GPL sound/usb/line6/snd-usb-line6 0x1aa88989 line6_write_data +EXPORT_SYMBOL_GPL sound/usb/line6/snd-usb-line6 0x1abd41a7 line6_resume +EXPORT_SYMBOL_GPL sound/usb/line6/snd-usb-line6 0x202a1b1b line6_midi_id +EXPORT_SYMBOL_GPL sound/usb/line6/snd-usb-line6 0x2eb33e63 line6_init_pcm +EXPORT_SYMBOL_GPL sound/usb/line6/snd-usb-line6 0x45849c23 line6_alloc_sysex_buffer +EXPORT_SYMBOL_GPL sound/usb/line6/snd-usb-line6 0x690dd739 line6_read_serial_number +EXPORT_SYMBOL_GPL sound/usb/line6/snd-usb-line6 0x896fac7c line6_send_raw_message_async +EXPORT_SYMBOL_GPL sound/usb/line6/snd-usb-line6 0x948c7fe5 line6_suspend +EXPORT_SYMBOL_GPL sound/usb/line6/snd-usb-line6 0x9a5f827d line6_probe +EXPORT_SYMBOL_GPL sound/usb/line6/snd-usb-line6 0xd0cad801 line6_send_sysex_message +EXPORT_SYMBOL_GPL sound/usb/line6/snd-usb-line6 0xd87ab98f line6_version_request_async +EXPORT_SYMBOL_GPL sound/usb/line6/snd-usb-line6 0xe3f0b21b line6_disconnect +EXPORT_SYMBOL_GPL sound/usb/line6/snd-usb-line6 0xe694feaf line6_read_data +EXPORT_SYMBOL_GPL vmlinux 0x0001cf94 usb_reset_configuration +EXPORT_SYMBOL_GPL vmlinux 0x001eb0f5 inet_hash_connect +EXPORT_SYMBOL_GPL vmlinux 0x00263f0a vfs_lock_file +EXPORT_SYMBOL_GPL vmlinux 0x003cdc3b of_pci_range_parser_init +EXPORT_SYMBOL_GPL vmlinux 0x004551ef cgroup_get_from_fd +EXPORT_SYMBOL_GPL vmlinux 0x00513f58 get_timespec64 +EXPORT_SYMBOL_GPL vmlinux 0x00748817 pinctrl_dev_get_name +EXPORT_SYMBOL_GPL vmlinux 0x00764e90 dev_pm_qos_remove_notifier +EXPORT_SYMBOL_GPL vmlinux 0x007c5299 platform_get_irq_byname +EXPORT_SYMBOL_GPL vmlinux 0x00844061 xdp_rxq_info_unreg +EXPORT_SYMBOL_GPL vmlinux 0x008539f0 klp_shadow_alloc +EXPORT_SYMBOL_GPL vmlinux 0x0097c63c regmap_multi_reg_write +EXPORT_SYMBOL_GPL vmlinux 0x00bc02af tty_prepare_flip_string +EXPORT_SYMBOL_GPL vmlinux 0x00c53490 usb_amd_pt_check_port +EXPORT_SYMBOL_GPL vmlinux 0x00c9b083 blockdev_superblock +EXPORT_SYMBOL_GPL vmlinux 0x010bc467 of_get_dma_window +EXPORT_SYMBOL_GPL vmlinux 0x010c7563 input_ff_flush +EXPORT_SYMBOL_GPL vmlinux 0x0124dd30 ima_file_hash +EXPORT_SYMBOL_GPL vmlinux 0x013dc33c relay_open +EXPORT_SYMBOL_GPL vmlinux 0x0146590d __irq_domain_alloc_fwnode +EXPORT_SYMBOL_GPL vmlinux 0x0159be53 mbox_flush +EXPORT_SYMBOL_GPL vmlinux 0x0159c819 usb_bus_idr +EXPORT_SYMBOL_GPL vmlinux 0x0179fc8b iommu_sva_unbind_device +EXPORT_SYMBOL_GPL vmlinux 0x017a2ba6 i2c_new_smbus_alert_device +EXPORT_SYMBOL_GPL vmlinux 0x0183f196 wm8997_aod +EXPORT_SYMBOL_GPL vmlinux 0x01866a57 ezx_pcap_set_bits +EXPORT_SYMBOL_GPL vmlinux 0x018b6146 fuse_dev_release +EXPORT_SYMBOL_GPL vmlinux 0x01907648 klist_iter_exit +EXPORT_SYMBOL_GPL vmlinux 0x01977512 kthread_flush_work +EXPORT_SYMBOL_GPL vmlinux 0x01a0cb78 property_entries_free +EXPORT_SYMBOL_GPL vmlinux 0x01c55c3a thermal_zone_get_temp +EXPORT_SYMBOL_GPL vmlinux 0x01e1a8de kgdb_breakpoint +EXPORT_SYMBOL_GPL vmlinux 0x01e9141f genphy_c45_check_and_restart_aneg +EXPORT_SYMBOL_GPL vmlinux 0x01eda9b4 gov_attr_set_init +EXPORT_SYMBOL_GPL vmlinux 0x01ef3edd devm_device_add_groups +EXPORT_SYMBOL_GPL vmlinux 0x0202090f serial8250_tx_chars +EXPORT_SYMBOL_GPL vmlinux 0x021860c9 devfreq_event_remove_edev +EXPORT_SYMBOL_GPL vmlinux 0x021cfd31 regulator_set_voltage_sel_regmap +EXPORT_SYMBOL_GPL vmlinux 0x021d780e of_property_read_u64 +EXPORT_SYMBOL_GPL vmlinux 0x0224628a of_mm_gpiochip_add_data +EXPORT_SYMBOL_GPL vmlinux 0x02394899 play_idle_precise +EXPORT_SYMBOL_GPL vmlinux 0x02490cd0 genphy_c45_aneg_done +EXPORT_SYMBOL_GPL vmlinux 0x0249bbd5 dev_pm_domain_attach +EXPORT_SYMBOL_GPL vmlinux 0x024d13dd request_free_mem_region +EXPORT_SYMBOL_GPL vmlinux 0x025f0b77 irq_create_direct_mapping +EXPORT_SYMBOL_GPL vmlinux 0x0262c142 vfio_add_group_dev +EXPORT_SYMBOL_GPL vmlinux 0x026c5d84 usb_get_status +EXPORT_SYMBOL_GPL vmlinux 0x027208f0 hrtimer_init_sleeper +EXPORT_SYMBOL_GPL vmlinux 0x02781cbe md_new_event +EXPORT_SYMBOL_GPL vmlinux 0x02aa481e devlink_resource_occ_get_unregister +EXPORT_SYMBOL_GPL vmlinux 0x02ab4d40 radix_kvm_prefetch_workaround +EXPORT_SYMBOL_GPL vmlinux 0x02ade722 pstore_register +EXPORT_SYMBOL_GPL vmlinux 0x02afc577 devres_alloc_node +EXPORT_SYMBOL_GPL vmlinux 0x02e2edf8 nf_checksum +EXPORT_SYMBOL_GPL vmlinux 0x0312b3b0 reset_controller_add_lookup +EXPORT_SYMBOL_GPL vmlinux 0x03165183 __blocking_notifier_call_chain +EXPORT_SYMBOL_GPL vmlinux 0x0317d7ec pci_msi_mask_irq +EXPORT_SYMBOL_GPL vmlinux 0x031f2b0d iomap_fiemap +EXPORT_SYMBOL_GPL vmlinux 0x03210f95 pci_epc_mem_alloc_addr +EXPORT_SYMBOL_GPL vmlinux 0x0321cdbf of_alias_get_highest_id +EXPORT_SYMBOL_GPL vmlinux 0x03242a08 __tracepoint_pelt_se_tp +EXPORT_SYMBOL_GPL vmlinux 0x0329c7a8 ping_seq_stop +EXPORT_SYMBOL_GPL vmlinux 0x03372453 force_irqthreads +EXPORT_SYMBOL_GPL vmlinux 0x033832c7 usb_amd_hang_symptom_quirk +EXPORT_SYMBOL_GPL vmlinux 0x0343bdf1 __i2c_board_list +EXPORT_SYMBOL_GPL vmlinux 0x0345a1f6 mmu_notifier_put +EXPORT_SYMBOL_GPL vmlinux 0x03619616 clk_divider_ops +EXPORT_SYMBOL_GPL vmlinux 0x037b083c fscrypt_ioctl_remove_key_all_users +EXPORT_SYMBOL_GPL vmlinux 0x03915ecb __kthread_init_worker +EXPORT_SYMBOL_GPL vmlinux 0x03915fed devm_of_phy_get +EXPORT_SYMBOL_GPL vmlinux 0x03952887 ktime_add_safe +EXPORT_SYMBOL_GPL vmlinux 0x039eb5a1 platform_get_irq_byname_optional +EXPORT_SYMBOL_GPL vmlinux 0x03a17427 phy_resolve_aneg_pause +EXPORT_SYMBOL_GPL vmlinux 0x03ae1e57 rio_attach_device +EXPORT_SYMBOL_GPL vmlinux 0x03be23e2 ata_sff_port_intr +EXPORT_SYMBOL_GPL vmlinux 0x03c12dfe cancel_work_sync +EXPORT_SYMBOL_GPL vmlinux 0x03cc8861 ata_sff_wait_ready +EXPORT_SYMBOL_GPL vmlinux 0x03d85c0d scsi_autopm_get_device +EXPORT_SYMBOL_GPL vmlinux 0x03f22c8a dev_set_name +EXPORT_SYMBOL_GPL vmlinux 0x0402cbbf preempt_notifier_inc +EXPORT_SYMBOL_GPL vmlinux 0x04059f9e cpu_add_dev_attr_group +EXPORT_SYMBOL_GPL vmlinux 0x040f7d7f bpfilter_ops +EXPORT_SYMBOL_GPL vmlinux 0x0411c5ca __of_reset_control_get +EXPORT_SYMBOL_GPL vmlinux 0x0419e175 vbin_printf +EXPORT_SYMBOL_GPL vmlinux 0x041ca1ec pinconf_generic_dt_node_to_map +EXPORT_SYMBOL_GPL vmlinux 0x041d3ca5 pci_epc_get +EXPORT_SYMBOL_GPL vmlinux 0x041e8b10 xas_find +EXPORT_SYMBOL_GPL vmlinux 0x041ec506 unregister_kprobes +EXPORT_SYMBOL_GPL vmlinux 0x04258796 opal_flash_read +EXPORT_SYMBOL_GPL vmlinux 0x042a5cf7 driver_register +EXPORT_SYMBOL_GPL vmlinux 0x04590fdd dev_pm_opp_of_get_sharing_cpus +EXPORT_SYMBOL_GPL vmlinux 0x0459abe9 hvc_poll +EXPORT_SYMBOL_GPL vmlinux 0x0462f3e5 ipv4_sk_update_pmtu +EXPORT_SYMBOL_GPL vmlinux 0x04654e14 wm5110_i2c_regmap +EXPORT_SYMBOL_GPL vmlinux 0x0465a073 regmap_reg_in_ranges +EXPORT_SYMBOL_GPL vmlinux 0x046f359e of_overlay_notifier_register +EXPORT_SYMBOL_GPL vmlinux 0x048b5f8d twl4030_audio_get_mclk +EXPORT_SYMBOL_GPL vmlinux 0x04916036 ipv4_update_pmtu +EXPORT_SYMBOL_GPL vmlinux 0x0493c2c4 blk_trace_remove +EXPORT_SYMBOL_GPL vmlinux 0x04a022a8 usb_of_get_companion_dev +EXPORT_SYMBOL_GPL vmlinux 0x04a159b2 fat_alloc_new_dir +EXPORT_SYMBOL_GPL vmlinux 0x04c4f603 mpi_get_buffer +EXPORT_SYMBOL_GPL vmlinux 0x04cc91db dev_pm_get_subsys_data +EXPORT_SYMBOL_GPL vmlinux 0x04cec723 serial8250_do_set_divisor +EXPORT_SYMBOL_GPL vmlinux 0x04cf9bcc phy_validate +EXPORT_SYMBOL_GPL vmlinux 0x04d120bc fwnode_gpiod_get_index +EXPORT_SYMBOL_GPL vmlinux 0x04d292ff fuse_dev_alloc_install +EXPORT_SYMBOL_GPL vmlinux 0x04d3becc inet_twsk_purge +EXPORT_SYMBOL_GPL vmlinux 0x04df8fb0 virtio_config_disable +EXPORT_SYMBOL_GPL vmlinux 0x04df8fbc lzo1x_decompress_safe +EXPORT_SYMBOL_GPL vmlinux 0x04f5633b rdev_clear_badblocks +EXPORT_SYMBOL_GPL vmlinux 0x05187cb0 find_get_pid +EXPORT_SYMBOL_GPL vmlinux 0x051ae0f7 ata_sff_wait_after_reset +EXPORT_SYMBOL_GPL vmlinux 0x0521ae68 kthread_flush_worker +EXPORT_SYMBOL_GPL vmlinux 0x052c9aed ktime_get_real_fast_ns +EXPORT_SYMBOL_GPL vmlinux 0x053476a8 clk_register_fixed_factor +EXPORT_SYMBOL_GPL vmlinux 0x053622b2 vring_create_virtqueue +EXPORT_SYMBOL_GPL vmlinux 0x054e550b kernel_halt +EXPORT_SYMBOL_GPL vmlinux 0x05573be7 pinmux_generic_remove_function +EXPORT_SYMBOL_GPL vmlinux 0x0558ab4a freq_qos_update_request +EXPORT_SYMBOL_GPL vmlinux 0x0559f0ed fsnotify_add_mark +EXPORT_SYMBOL_GPL vmlinux 0x055b0238 blkg_rwstat_recursive_sum +EXPORT_SYMBOL_GPL vmlinux 0x05610897 of_changeset_destroy +EXPORT_SYMBOL_GPL vmlinux 0x056b029c of_genpd_add_device +EXPORT_SYMBOL_GPL vmlinux 0x0577af44 of_reserved_mem_lookup +EXPORT_SYMBOL_GPL vmlinux 0x057e50a3 pci_find_next_ext_capability +EXPORT_SYMBOL_GPL vmlinux 0x058b582a vt_get_leds +EXPORT_SYMBOL_GPL vmlinux 0x059733b7 ata_wait_register +EXPORT_SYMBOL_GPL vmlinux 0x0597d67f ata_std_bios_param +EXPORT_SYMBOL_GPL vmlinux 0x05aba5cf unregister_kretprobes +EXPORT_SYMBOL_GPL vmlinux 0x05acb053 skcipher_walk_atomise +EXPORT_SYMBOL_GPL vmlinux 0x05c09af3 device_property_read_u64_array +EXPORT_SYMBOL_GPL vmlinux 0x05c998f5 led_trigger_register +EXPORT_SYMBOL_GPL vmlinux 0x05d018fa kset_create_and_add +EXPORT_SYMBOL_GPL vmlinux 0x05d60ea7 divider_round_rate_parent +EXPORT_SYMBOL_GPL vmlinux 0x05e254f2 crypto_register_alg +EXPORT_SYMBOL_GPL vmlinux 0x06100262 extcon_set_state +EXPORT_SYMBOL_GPL vmlinux 0x06209f49 phy_lookup_setting +EXPORT_SYMBOL_GPL vmlinux 0x0626da5f od_unregister_powersave_bias_handler +EXPORT_SYMBOL_GPL vmlinux 0x06285d2a leds_list_lock +EXPORT_SYMBOL_GPL vmlinux 0x063e52e4 desc_to_gpio +EXPORT_SYMBOL_GPL vmlinux 0x063eb776 rio_unmap_inb_region +EXPORT_SYMBOL_GPL vmlinux 0x0643edc7 edac_pci_free_ctl_info +EXPORT_SYMBOL_GPL vmlinux 0x064517c1 devm_regulator_get_exclusive +EXPORT_SYMBOL_GPL vmlinux 0x064db9a5 mark_mounts_for_expiry +EXPORT_SYMBOL_GPL vmlinux 0x068c0b14 fscrypt_fname_siphash +EXPORT_SYMBOL_GPL vmlinux 0x068dd2a2 irq_domain_translate_twocell +EXPORT_SYMBOL_GPL vmlinux 0x06a8cb3f irq_domain_xlate_twocell +EXPORT_SYMBOL_GPL vmlinux 0x06af11cd serial8250_read_char +EXPORT_SYMBOL_GPL vmlinux 0x06b67d35 fuse_dev_operations +EXPORT_SYMBOL_GPL vmlinux 0x06cca30b ring_buffer_record_off +EXPORT_SYMBOL_GPL vmlinux 0x06cdbd02 usb_create_shared_hcd +EXPORT_SYMBOL_GPL vmlinux 0x06d8a515 pingv6_ops +EXPORT_SYMBOL_GPL vmlinux 0x06deb518 regmap_raw_write +EXPORT_SYMBOL_GPL vmlinux 0x06e40b74 class_compat_remove_link +EXPORT_SYMBOL_GPL vmlinux 0x06e43bca cdrom_multisession +EXPORT_SYMBOL_GPL vmlinux 0x06f438a1 blk_trace_startstop +EXPORT_SYMBOL_GPL vmlinux 0x070063f2 irq_set_chained_handler_and_data +EXPORT_SYMBOL_GPL vmlinux 0x070b4456 wm8400_reset_codec_reg_cache +EXPORT_SYMBOL_GPL vmlinux 0x07242d92 put_dax +EXPORT_SYMBOL_GPL vmlinux 0x07277094 ata_pci_sff_init_host +EXPORT_SYMBOL_GPL vmlinux 0x072fe103 sock_zerocopy_alloc +EXPORT_SYMBOL_GPL vmlinux 0x07398ead regulator_disable_regmap +EXPORT_SYMBOL_GPL vmlinux 0x073c8c92 bio_clone_blkg_association +EXPORT_SYMBOL_GPL vmlinux 0x074f98db synth_event_add_field +EXPORT_SYMBOL_GPL vmlinux 0x07617f98 spi_controller_resume +EXPORT_SYMBOL_GPL vmlinux 0x076356e7 sfp_may_have_phy +EXPORT_SYMBOL_GPL vmlinux 0x07646cee ata_tf_to_fis +EXPORT_SYMBOL_GPL vmlinux 0x0765c3ba kobject_get_path +EXPORT_SYMBOL_GPL vmlinux 0x076de290 static_key_slow_dec +EXPORT_SYMBOL_GPL vmlinux 0x077245af __generic_fsdax_supported +EXPORT_SYMBOL_GPL vmlinux 0x0773b56a pm_clk_add_clk +EXPORT_SYMBOL_GPL vmlinux 0x0773fb55 __fscrypt_encrypt_symlink +EXPORT_SYMBOL_GPL vmlinux 0x078d7563 pci_user_read_config_dword +EXPORT_SYMBOL_GPL vmlinux 0x07a624e7 wbc_detach_inode +EXPORT_SYMBOL_GPL vmlinux 0x07b21f85 kdb_get_kbd_char +EXPORT_SYMBOL_GPL vmlinux 0x07b33cee nf_queue_entry_free +EXPORT_SYMBOL_GPL vmlinux 0x07b52e38 rtnl_unregister +EXPORT_SYMBOL_GPL vmlinux 0x07b95d9b serdev_device_set_baudrate +EXPORT_SYMBOL_GPL vmlinux 0x07be6905 net_inc_egress_queue +EXPORT_SYMBOL_GPL vmlinux 0x07bf29cd get_cached_msi_msg +EXPORT_SYMBOL_GPL vmlinux 0x07bfd826 of_property_read_string_helper +EXPORT_SYMBOL_GPL vmlinux 0x07bfed0d usb_hub_release_port +EXPORT_SYMBOL_GPL vmlinux 0x07c04d6d of_platform_device_destroy +EXPORT_SYMBOL_GPL vmlinux 0x07c37c6b em_register_perf_domain +EXPORT_SYMBOL_GPL vmlinux 0x07dc28f3 dev_pm_set_wake_irq +EXPORT_SYMBOL_GPL vmlinux 0x07e8dfe7 tpm_chip_unregister +EXPORT_SYMBOL_GPL vmlinux 0x07ead2f6 dax_finish_sync_fault +EXPORT_SYMBOL_GPL vmlinux 0x08135613 dax_write_cache +EXPORT_SYMBOL_GPL vmlinux 0x081b52df clk_hw_rate_is_protected +EXPORT_SYMBOL_GPL vmlinux 0x0828d609 mc146818_get_time +EXPORT_SYMBOL_GPL vmlinux 0x082ef69d clk_bulk_get_optional +EXPORT_SYMBOL_GPL vmlinux 0x083e20a8 ata_sas_tport_delete +EXPORT_SYMBOL_GPL vmlinux 0x084b2abf ata_ncq_sdev_attrs +EXPORT_SYMBOL_GPL vmlinux 0x0850305f pm_genpd_opp_to_performance_state +EXPORT_SYMBOL_GPL vmlinux 0x0865cd33 __strp_unpause +EXPORT_SYMBOL_GPL vmlinux 0x0879e7bb of_icc_get_by_index +EXPORT_SYMBOL_GPL vmlinux 0x087bd533 alarm_init +EXPORT_SYMBOL_GPL vmlinux 0x087f5dc5 wm831x_of_match +EXPORT_SYMBOL_GPL vmlinux 0x08806e92 xdp_rxq_info_reg_mem_model +EXPORT_SYMBOL_GPL vmlinux 0x08903e1d inet_peer_base_init +EXPORT_SYMBOL_GPL vmlinux 0x0892bdd2 pinctrl_unregister +EXPORT_SYMBOL_GPL vmlinux 0x0897f1c1 tcp_set_state +EXPORT_SYMBOL_GPL vmlinux 0x08c427db fwnode_get_named_child_node +EXPORT_SYMBOL_GPL vmlinux 0x08d28828 spi_replace_transfers +EXPORT_SYMBOL_GPL vmlinux 0x08d3bf02 trace_vprintk +EXPORT_SYMBOL_GPL vmlinux 0x091c824a machine_power_off +EXPORT_SYMBOL_GPL vmlinux 0x091eb9b4 round_jiffies +EXPORT_SYMBOL_GPL vmlinux 0x093786cf synth_event_add_field_str +EXPORT_SYMBOL_GPL vmlinux 0x093b4b13 wm8350_reg_unlock +EXPORT_SYMBOL_GPL vmlinux 0x09403e84 cxl_afu_put +EXPORT_SYMBOL_GPL vmlinux 0x0941fa3f extcon_set_state_sync +EXPORT_SYMBOL_GPL vmlinux 0x094af376 xas_load +EXPORT_SYMBOL_GPL vmlinux 0x095b0319 blk_mq_rdma_map_queues +EXPORT_SYMBOL_GPL vmlinux 0x09670520 sk_psock_drop +EXPORT_SYMBOL_GPL vmlinux 0x09770358 devfreq_event_get_edev_by_phandle +EXPORT_SYMBOL_GPL vmlinux 0x099b8061 uhci_check_and_reset_hc +EXPORT_SYMBOL_GPL vmlinux 0x09b179e8 ata_sff_drain_fifo +EXPORT_SYMBOL_GPL vmlinux 0x09b53e14 interval_tree_remove +EXPORT_SYMBOL_GPL vmlinux 0x09be9bc1 scsi_host_block +EXPORT_SYMBOL_GPL vmlinux 0x09c5bab0 elv_unregister +EXPORT_SYMBOL_GPL vmlinux 0x09f8e93c user_update +EXPORT_SYMBOL_GPL vmlinux 0x0a13e197 __clk_hw_register_mux +EXPORT_SYMBOL_GPL vmlinux 0x0a15ca98 irq_gc_mask_set_bit +EXPORT_SYMBOL_GPL vmlinux 0x0a246472 rio_dev_get +EXPORT_SYMBOL_GPL vmlinux 0x0a4f32bb regulator_get_voltage +EXPORT_SYMBOL_GPL vmlinux 0x0a51ae5b virq_to_hw +EXPORT_SYMBOL_GPL vmlinux 0x0a57cdfa __tracepoint_rpm_suspend +EXPORT_SYMBOL_GPL vmlinux 0x0a59458c virtio_device_freeze +EXPORT_SYMBOL_GPL vmlinux 0x0a6c4041 cn_netlink_send +EXPORT_SYMBOL_GPL vmlinux 0x0a6c622c phy_speed_down +EXPORT_SYMBOL_GPL vmlinux 0x0a6ce1cc sfp_select_interface +EXPORT_SYMBOL_GPL vmlinux 0x0a7ae285 phy_get +EXPORT_SYMBOL_GPL vmlinux 0x0a85c026 bpf_trace_run3 +EXPORT_SYMBOL_GPL vmlinux 0x0a9776b6 devm_devfreq_event_remove_edev +EXPORT_SYMBOL_GPL vmlinux 0x0ab2b854 kthread_queue_delayed_work +EXPORT_SYMBOL_GPL vmlinux 0x0ac9c854 pci_bridge_secondary_bus_reset +EXPORT_SYMBOL_GPL vmlinux 0x0ae1515c gpiod_get_raw_array_value_cansleep +EXPORT_SYMBOL_GPL vmlinux 0x0aeb4e63 __xive_vm_h_ipi +EXPORT_SYMBOL_GPL vmlinux 0x0aebb197 pci_ecam_free +EXPORT_SYMBOL_GPL vmlinux 0x0af40724 iommu_alloc_resv_region +EXPORT_SYMBOL_GPL vmlinux 0x0af4798b usb_wait_anchor_empty_timeout +EXPORT_SYMBOL_GPL vmlinux 0x0b07abe2 unshare_fs_struct +EXPORT_SYMBOL_GPL vmlinux 0x0b09e040 __tracepoint_rpm_idle +EXPORT_SYMBOL_GPL vmlinux 0x0b16f3dc usb_add_phy_dev +EXPORT_SYMBOL_GPL vmlinux 0x0b18b7de __rio_local_read_config_8 +EXPORT_SYMBOL_GPL vmlinux 0x0b1bb9f9 synchronize_rcu_tasks +EXPORT_SYMBOL_GPL vmlinux 0x0b28afbb mbox_send_message +EXPORT_SYMBOL_GPL vmlinux 0x0b2d4a68 ndo_dflt_bridge_getlink +EXPORT_SYMBOL_GPL vmlinux 0x0b2db2d5 remove_resource +EXPORT_SYMBOL_GPL vmlinux 0x0b2e711e __platform_register_drivers +EXPORT_SYMBOL_GPL vmlinux 0x0b34fd11 blk_ksm_reprogram_all_keys +EXPORT_SYMBOL_GPL vmlinux 0x0b357a2b pci_restore_msi_state +EXPORT_SYMBOL_GPL vmlinux 0x0b37f774 akcipher_register_instance +EXPORT_SYMBOL_GPL vmlinux 0x0b5c0d9a pci_epf_unregister_driver +EXPORT_SYMBOL_GPL vmlinux 0x0b6d5f47 i2c_generic_scl_recovery +EXPORT_SYMBOL_GPL vmlinux 0x0b773bd8 driver_unregister +EXPORT_SYMBOL_GPL vmlinux 0x0b86a51d get_net_ns +EXPORT_SYMBOL_GPL vmlinux 0x0b8a7278 sdio_register_driver +EXPORT_SYMBOL_GPL vmlinux 0x0bba28c9 skcipher_walk_complete +EXPORT_SYMBOL_GPL vmlinux 0x0bbe35e6 __vfs_setxattr_noperm +EXPORT_SYMBOL_GPL vmlinux 0x0bc6cbcc dev_attr_sw_activity +EXPORT_SYMBOL_GPL vmlinux 0x0bc8c527 regulator_enable +EXPORT_SYMBOL_GPL vmlinux 0x0bd17662 devm_spi_register_controller +EXPORT_SYMBOL_GPL vmlinux 0x0bd19ebd task_cputime_adjusted +EXPORT_SYMBOL_GPL vmlinux 0x0bdec8de elv_rqhash_add +EXPORT_SYMBOL_GPL vmlinux 0x0be75a56 vfs_listxattr +EXPORT_SYMBOL_GPL vmlinux 0x0bfd935e reset_control_get_count +EXPORT_SYMBOL_GPL vmlinux 0x0c018ef8 iommu_aux_detach_device +EXPORT_SYMBOL_GPL vmlinux 0x0c2513b3 crypto_req_done +EXPORT_SYMBOL_GPL vmlinux 0x0c26ad27 nvdimm_cmd_mask +EXPORT_SYMBOL_GPL vmlinux 0x0c2c5802 work_busy +EXPORT_SYMBOL_GPL vmlinux 0x0c30a317 wbc_account_cgroup_owner +EXPORT_SYMBOL_GPL vmlinux 0x0c32ff8a edac_pci_alloc_index +EXPORT_SYMBOL_GPL vmlinux 0x0c402cac replay_system_reset +EXPORT_SYMBOL_GPL vmlinux 0x0c407695 usb_lock_device_for_reset +EXPORT_SYMBOL_GPL vmlinux 0x0c62c14c scsi_bus_type +EXPORT_SYMBOL_GPL vmlinux 0x0c660192 usb_asmedia_modifyflowcontrol +EXPORT_SYMBOL_GPL vmlinux 0x0c6c829c vring_transport_features +EXPORT_SYMBOL_GPL vmlinux 0x0c7beed7 iommu_dev_enable_feature +EXPORT_SYMBOL_GPL vmlinux 0x0c7d3efb of_irq_to_resource_table +EXPORT_SYMBOL_GPL vmlinux 0x0c892f93 skcipher_walk_done +EXPORT_SYMBOL_GPL vmlinux 0x0c93f0ed devm_gpio_request_one +EXPORT_SYMBOL_GPL vmlinux 0x0ca7ad48 iommu_device_register +EXPORT_SYMBOL_GPL vmlinux 0x0ca9224e cpu_device_create +EXPORT_SYMBOL_GPL vmlinux 0x0cb57c88 tcp_bpf_sendmsg_redir +EXPORT_SYMBOL_GPL vmlinux 0x0cbe3ee2 software_node_unregister +EXPORT_SYMBOL_GPL vmlinux 0x0cd0ced1 gpiochip_irqchip_irq_valid +EXPORT_SYMBOL_GPL vmlinux 0x0cd5a84a dev_pm_opp_disable +EXPORT_SYMBOL_GPL vmlinux 0x0ce3ee5a mmu_kernel_ssize +EXPORT_SYMBOL_GPL vmlinux 0x0ceac2fb dev_pm_qos_add_notifier +EXPORT_SYMBOL_GPL vmlinux 0x0cf33978 shash_ahash_digest +EXPORT_SYMBOL_GPL vmlinux 0x0d03a446 shake_page +EXPORT_SYMBOL_GPL vmlinux 0x0d0cf00c of_devfreq_cooling_register_power +EXPORT_SYMBOL_GPL vmlinux 0x0d125ab6 trace_seq_putmem +EXPORT_SYMBOL_GPL vmlinux 0x0d216653 security_kernel_read_file +EXPORT_SYMBOL_GPL vmlinux 0x0d459213 work_on_cpu_safe +EXPORT_SYMBOL_GPL vmlinux 0x0d4961de nf_log_buf_open +EXPORT_SYMBOL_GPL vmlinux 0x0d4eac7e cpufreq_dbs_governor_limits +EXPORT_SYMBOL_GPL vmlinux 0x0d64c381 pnv_pci_set_tunnel_bar +EXPORT_SYMBOL_GPL vmlinux 0x0d65589b uart_try_toggle_sysrq +EXPORT_SYMBOL_GPL vmlinux 0x0d6d8e04 pm_generic_resume_early +EXPORT_SYMBOL_GPL vmlinux 0x0d798e73 tty_encode_baud_rate +EXPORT_SYMBOL_GPL vmlinux 0x0d94b66a dw_pcie_link_set_max_speed +EXPORT_SYMBOL_GPL vmlinux 0x0dab0c2c wm8350_clear_bits +EXPORT_SYMBOL_GPL vmlinux 0x0dc180db regulator_get_voltage_sel_regmap +EXPORT_SYMBOL_GPL vmlinux 0x0dc373ab wm5110_aod +EXPORT_SYMBOL_GPL vmlinux 0x0dd340c4 gpiod_set_raw_array_value_cansleep +EXPORT_SYMBOL_GPL vmlinux 0x0ddb1cd7 llist_reverse_order +EXPORT_SYMBOL_GPL vmlinux 0x0ddc254e unregister_wide_hw_breakpoint +EXPORT_SYMBOL_GPL vmlinux 0x0ddcc244 skb_mpls_pop +EXPORT_SYMBOL_GPL vmlinux 0x0de06988 cpu_first_thread_of_core +EXPORT_SYMBOL_GPL vmlinux 0x0e1fcdf3 raw_unhash_sk +EXPORT_SYMBOL_GPL vmlinux 0x0e240e44 of_detach_node +EXPORT_SYMBOL_GPL vmlinux 0x0e27fd6c cdrom_read_tocentry +EXPORT_SYMBOL_GPL vmlinux 0x0e299cb7 bpf_prog_inc +EXPORT_SYMBOL_GPL vmlinux 0x0e2aa6a7 __rt_mutex_init +EXPORT_SYMBOL_GPL vmlinux 0x0e2d7397 device_remove_groups +EXPORT_SYMBOL_GPL vmlinux 0x0e2da4c3 subsys_dev_iter_init +EXPORT_SYMBOL_GPL vmlinux 0x0e3afd4a regmap_irq_get_domain +EXPORT_SYMBOL_GPL vmlinux 0x0e4e2eeb ata_pci_bmdma_prepare_host +EXPORT_SYMBOL_GPL vmlinux 0x0e4e47d9 lp8788_update_bits +EXPORT_SYMBOL_GPL vmlinux 0x0e521b82 btree_update +EXPORT_SYMBOL_GPL vmlinux 0x0e5a967e hvc_remove +EXPORT_SYMBOL_GPL vmlinux 0x0e88fb26 debugfs_create_x8 +EXPORT_SYMBOL_GPL vmlinux 0x0ea2a72b usb_scuttle_anchored_urbs +EXPORT_SYMBOL_GPL vmlinux 0x0ea88436 do_splice_to +EXPORT_SYMBOL_GPL vmlinux 0x0eb0bbf9 kmsg_dump_get_buffer +EXPORT_SYMBOL_GPL vmlinux 0x0ed15084 tty_port_link_device +EXPORT_SYMBOL_GPL vmlinux 0x0ede0b14 of_clk_hw_register +EXPORT_SYMBOL_GPL vmlinux 0x0ee8e400 kvmppc_h_set_xdabr +EXPORT_SYMBOL_GPL vmlinux 0x0ef3a8de device_remove_file_self +EXPORT_SYMBOL_GPL vmlinux 0x0f04132f iptunnel_handle_offloads +EXPORT_SYMBOL_GPL vmlinux 0x0f097e24 __wait_rcu_gp +EXPORT_SYMBOL_GPL vmlinux 0x0f180070 ring_buffer_free_read_page +EXPORT_SYMBOL_GPL vmlinux 0x0f1caabb mmu_interval_notifier_insert_locked +EXPORT_SYMBOL_GPL vmlinux 0x0f3add46 lp8788_read_multi_bytes +EXPORT_SYMBOL_GPL vmlinux 0x0f3c8605 bpf_offload_dev_match +EXPORT_SYMBOL_GPL vmlinux 0x0f3ce25f pkcs7_validate_trust +EXPORT_SYMBOL_GPL vmlinux 0x0f4603bf sched_trace_rq_avg_dl +EXPORT_SYMBOL_GPL vmlinux 0x0f5a58a4 ohci_setup +EXPORT_SYMBOL_GPL vmlinux 0x0f63379a ip_local_out +EXPORT_SYMBOL_GPL vmlinux 0x0f70f5dd pci_test_config_bits +EXPORT_SYMBOL_GPL vmlinux 0x0faf37d5 mbox_client_txdone +EXPORT_SYMBOL_GPL vmlinux 0x0fb625c2 crypto_unregister_alg +EXPORT_SYMBOL_GPL vmlinux 0x0fbb7344 memremap_compat_align +EXPORT_SYMBOL_GPL vmlinux 0x0fc5faeb pcibios_alloc_controller +EXPORT_SYMBOL_GPL vmlinux 0x0fc7808d tps6586x_write +EXPORT_SYMBOL_GPL vmlinux 0x0fceb11b fwnode_property_read_string +EXPORT_SYMBOL_GPL vmlinux 0x0ff8a6e1 crypto_larval_alloc +EXPORT_SYMBOL_GPL vmlinux 0x10138352 tracing_on +EXPORT_SYMBOL_GPL vmlinux 0x10305200 fwnode_get_next_parent +EXPORT_SYMBOL_GPL vmlinux 0x1040381c device_property_read_u32_array +EXPORT_SYMBOL_GPL vmlinux 0x1047ffee each_symbol_section +EXPORT_SYMBOL_GPL vmlinux 0x10541419 dev_pm_opp_remove +EXPORT_SYMBOL_GPL vmlinux 0x1062aa27 power_supply_batinfo_ocv2cap +EXPORT_SYMBOL_GPL vmlinux 0x10718202 ata_std_qc_defer +EXPORT_SYMBOL_GPL vmlinux 0x107a5907 devlink_flash_update_begin_notify +EXPORT_SYMBOL_GPL vmlinux 0x108a0acd bstr_printf +EXPORT_SYMBOL_GPL vmlinux 0x10a442ab od_register_powersave_bias_handler +EXPORT_SYMBOL_GPL vmlinux 0x10a4c9d9 cpufreq_cooling_unregister +EXPORT_SYMBOL_GPL vmlinux 0x10a5aae2 crypto_skcipher_encrypt +EXPORT_SYMBOL_GPL vmlinux 0x10ac19c1 dm_post_suspending +EXPORT_SYMBOL_GPL vmlinux 0x10c2e75a kmsg_dump_register +EXPORT_SYMBOL_GPL vmlinux 0x10cf7192 root_device_unregister +EXPORT_SYMBOL_GPL vmlinux 0x10d93867 exportfs_decode_fh +EXPORT_SYMBOL_GPL vmlinux 0x10ded967 sk_detach_filter +EXPORT_SYMBOL_GPL vmlinux 0x10e1fb72 platform_add_devices +EXPORT_SYMBOL_GPL vmlinux 0x10e7181f of_clk_get_from_provider +EXPORT_SYMBOL_GPL vmlinux 0x10e77a5a __tracepoint_pelt_dl_tp +EXPORT_SYMBOL_GPL vmlinux 0x10e99b75 devm_thermal_zone_of_sensor_unregister +EXPORT_SYMBOL_GPL vmlinux 0x10ecc52c usb_amd_quirk_pll_enable +EXPORT_SYMBOL_GPL vmlinux 0x10f54892 sched_trace_rq_cpu +EXPORT_SYMBOL_GPL vmlinux 0x10fe219a __wake_up_locked_key_bookmark +EXPORT_SYMBOL_GPL vmlinux 0x11030369 dma_can_mmap +EXPORT_SYMBOL_GPL vmlinux 0x1114011d threads_shift +EXPORT_SYMBOL_GPL vmlinux 0x11182181 devm_led_classdev_register_ext +EXPORT_SYMBOL_GPL vmlinux 0x11192a79 noop_invalidatepage +EXPORT_SYMBOL_GPL vmlinux 0x111e6dfc pnv_get_supported_cpuidle_states +EXPORT_SYMBOL_GPL vmlinux 0x114d14ad nexthop_select_path +EXPORT_SYMBOL_GPL vmlinux 0x11638a69 xive_native_alloc_vp_block +EXPORT_SYMBOL_GPL vmlinux 0x11782900 tc3589x_block_write +EXPORT_SYMBOL_GPL vmlinux 0x117aee65 dev_attr_em_message_type +EXPORT_SYMBOL_GPL vmlinux 0x11899153 rio_request_outb_dbell +EXPORT_SYMBOL_GPL vmlinux 0x118b539e blkg_rwstat_init +EXPORT_SYMBOL_GPL vmlinux 0x119e6911 devm_of_platform_populate +EXPORT_SYMBOL_GPL vmlinux 0x11a2e0ac crypto_dh_key_len +EXPORT_SYMBOL_GPL vmlinux 0x11a50148 virtqueue_is_broken +EXPORT_SYMBOL_GPL vmlinux 0x11ad2f31 regulator_is_enabled +EXPORT_SYMBOL_GPL vmlinux 0x11c23240 crypto_attr_u32 +EXPORT_SYMBOL_GPL vmlinux 0x11c7abde arizona_dev_init +EXPORT_SYMBOL_GPL vmlinux 0x11d50c04 device_show_ulong +EXPORT_SYMBOL_GPL vmlinux 0x11de24f0 dev_pm_opp_of_add_table +EXPORT_SYMBOL_GPL vmlinux 0x11df0e75 devlink_fmsg_binary_pair_nest_start +EXPORT_SYMBOL_GPL vmlinux 0x11ec4e88 usb_hcd_pci_remove +EXPORT_SYMBOL_GPL vmlinux 0x11eedcdc __tracepoint_xdp_bulk_tx +EXPORT_SYMBOL_GPL vmlinux 0x11f6e26c pcibios_map_io_space +EXPORT_SYMBOL_GPL vmlinux 0x11f76c00 crypto_stats_skcipher_decrypt +EXPORT_SYMBOL_GPL vmlinux 0x11f9052d usb_ifnum_to_if +EXPORT_SYMBOL_GPL vmlinux 0x1217d8de irq_domain_push_irq +EXPORT_SYMBOL_GPL vmlinux 0x1218ec97 of_reserved_mem_device_init_by_idx +EXPORT_SYMBOL_GPL vmlinux 0x12195ee0 skb_morph +EXPORT_SYMBOL_GPL vmlinux 0x121bd8cd strp_init +EXPORT_SYMBOL_GPL vmlinux 0x121d60dc debugfs_create_u32 +EXPORT_SYMBOL_GPL vmlinux 0x121d958a unregister_die_notifier +EXPORT_SYMBOL_GPL vmlinux 0x121dedcb pcie_has_flr +EXPORT_SYMBOL_GPL vmlinux 0x122a9b69 ata_bmdma_post_internal_cmd +EXPORT_SYMBOL_GPL vmlinux 0x1234e483 get_cpu_iowait_time_us +EXPORT_SYMBOL_GPL vmlinux 0x123b1296 eeh_pe_get_state +EXPORT_SYMBOL_GPL vmlinux 0x1251a96a proc_get_parent_data +EXPORT_SYMBOL_GPL vmlinux 0x1268f357 resume_device_irqs +EXPORT_SYMBOL_GPL vmlinux 0x126e837f pci_walk_bus +EXPORT_SYMBOL_GPL vmlinux 0x129334ae sfp_parse_support +EXPORT_SYMBOL_GPL vmlinux 0x12b125e1 pm_generic_runtime_suspend +EXPORT_SYMBOL_GPL vmlinux 0x12bbfb82 rio_map_inb_region +EXPORT_SYMBOL_GPL vmlinux 0x12c100b5 isa_bridge_pcidev +EXPORT_SYMBOL_GPL vmlinux 0x12dbc8f6 percpu_ref_switch_to_atomic_sync +EXPORT_SYMBOL_GPL vmlinux 0x12e5e54c scsi_target_unblock +EXPORT_SYMBOL_GPL vmlinux 0x12efd129 fib_nh_common_release +EXPORT_SYMBOL_GPL vmlinux 0x1317ab20 badblocks_init +EXPORT_SYMBOL_GPL vmlinux 0x131a5ed7 regmap_del_irq_chip +EXPORT_SYMBOL_GPL vmlinux 0x131db64a system_long_wq +EXPORT_SYMBOL_GPL vmlinux 0x131f4d69 usb_block_urb +EXPORT_SYMBOL_GPL vmlinux 0x133969d7 __trace_printk +EXPORT_SYMBOL_GPL vmlinux 0x1346de0c extcon_sync +EXPORT_SYMBOL_GPL vmlinux 0x134de715 sysfs_remove_file_self +EXPORT_SYMBOL_GPL vmlinux 0x13539266 hrtimer_start_range_ns +EXPORT_SYMBOL_GPL vmlinux 0x136209db power_supply_reg_notifier +EXPORT_SYMBOL_GPL vmlinux 0x136cbb36 __pci_epc_create +EXPORT_SYMBOL_GPL vmlinux 0x1376982c __wake_up_locked_key +EXPORT_SYMBOL_GPL vmlinux 0x1383e119 dm_accept_partial_bio +EXPORT_SYMBOL_GPL vmlinux 0x138e0957 dax_write_cache_enabled +EXPORT_SYMBOL_GPL vmlinux 0x13a939f6 to_nvdimm_bus +EXPORT_SYMBOL_GPL vmlinux 0x13b3b4b0 tty_wakeup +EXPORT_SYMBOL_GPL vmlinux 0x13ba3615 disk_has_partitions +EXPORT_SYMBOL_GPL vmlinux 0x13be6d32 regulator_get_linear_step +EXPORT_SYMBOL_GPL vmlinux 0x13c2947f crypto_register_acomp +EXPORT_SYMBOL_GPL vmlinux 0x13c2c3c6 bpf_sk_storage_diag_put +EXPORT_SYMBOL_GPL vmlinux 0x13c6f191 mmc_regulator_set_vqmmc +EXPORT_SYMBOL_GPL vmlinux 0x13c71c96 thermal_zone_unbind_cooling_device +EXPORT_SYMBOL_GPL vmlinux 0x13ca899a perf_trace_buf_alloc +EXPORT_SYMBOL_GPL vmlinux 0x13ce87e8 asn1_ber_decoder +EXPORT_SYMBOL_GPL vmlinux 0x13d2ca0c dev_pm_opp_cpumask_remove_table +EXPORT_SYMBOL_GPL vmlinux 0x13d444fb nexthop_find_by_id +EXPORT_SYMBOL_GPL vmlinux 0x13ed8784 sdev_evt_alloc +EXPORT_SYMBOL_GPL vmlinux 0x13f4f146 uhci_reset_hc +EXPORT_SYMBOL_GPL vmlinux 0x13f8efab ata_pci_sff_activate_host +EXPORT_SYMBOL_GPL vmlinux 0x1403ad09 cpufreq_add_update_util_hook +EXPORT_SYMBOL_GPL vmlinux 0x1410f3cf devprop_gpiochip_set_names +EXPORT_SYMBOL_GPL vmlinux 0x14160969 blk_add_driver_data +EXPORT_SYMBOL_GPL vmlinux 0x141bca15 pm_schedule_suspend +EXPORT_SYMBOL_GPL vmlinux 0x141f38bf ktime_get_raw_fast_ns +EXPORT_SYMBOL_GPL vmlinux 0x142d01d7 __tracepoint_neigh_update +EXPORT_SYMBOL_GPL vmlinux 0x142e18b1 crypto_ahash_finup +EXPORT_SYMBOL_GPL vmlinux 0x14389892 securityfs_create_symlink +EXPORT_SYMBOL_GPL vmlinux 0x14457fb9 btree_init +EXPORT_SYMBOL_GPL vmlinux 0x14516c59 led_classdev_notify_brightness_hw_changed +EXPORT_SYMBOL_GPL vmlinux 0x14615e7a sbitmap_get_shallow +EXPORT_SYMBOL_GPL vmlinux 0x14691240 cpufreq_cpu_get_raw +EXPORT_SYMBOL_GPL vmlinux 0x148ebb97 blk_ksm_init +EXPORT_SYMBOL_GPL vmlinux 0x1490596f blk_mq_init_queue_data +EXPORT_SYMBOL_GPL vmlinux 0x14b2619a __ip6_datagram_connect +EXPORT_SYMBOL_GPL vmlinux 0x14d01690 clk_mux_index_to_val +EXPORT_SYMBOL_GPL vmlinux 0x14dfbf6e debugfs_create_x32 +EXPORT_SYMBOL_GPL vmlinux 0x14ebc305 iomap_is_partially_uptodate +EXPORT_SYMBOL_GPL vmlinux 0x14ee2a62 devm_hwrng_register +EXPORT_SYMBOL_GPL vmlinux 0x15338e91 pci_num_vf +EXPORT_SYMBOL_GPL vmlinux 0x1537c7f2 opal_ipmi_recv +EXPORT_SYMBOL_GPL vmlinux 0x153b60a6 klist_del +EXPORT_SYMBOL_GPL vmlinux 0x15510a89 devlink_fmsg_binary_put +EXPORT_SYMBOL_GPL vmlinux 0x1552c709 hugetlb_cgrp_subsys_enabled_key +EXPORT_SYMBOL_GPL vmlinux 0x1553f17f devm_phy_package_join +EXPORT_SYMBOL_GPL vmlinux 0x1556d45e blk_mq_sched_try_merge +EXPORT_SYMBOL_GPL vmlinux 0x155e3eca of_css +EXPORT_SYMBOL_GPL vmlinux 0x1562ebb7 iommu_domain_window_disable +EXPORT_SYMBOL_GPL vmlinux 0x157eb3f3 percpu_down_write +EXPORT_SYMBOL_GPL vmlinux 0x158f9fb3 dw_pcie_ep_init_complete +EXPORT_SYMBOL_GPL vmlinux 0x159e032f da9052_free_irq +EXPORT_SYMBOL_GPL vmlinux 0x15a14816 blk_update_request +EXPORT_SYMBOL_GPL vmlinux 0x15a7a700 devm_hwspin_lock_free +EXPORT_SYMBOL_GPL vmlinux 0x15c21e5e nl_table_lock +EXPORT_SYMBOL_GPL vmlinux 0x15c66f45 xdp_attachment_flags_ok +EXPORT_SYMBOL_GPL vmlinux 0x15c94680 usb_sg_init +EXPORT_SYMBOL_GPL vmlinux 0x15ea2648 hwpoison_filter_flags_mask +EXPORT_SYMBOL_GPL vmlinux 0x15f7a2c8 synth_event_add_val +EXPORT_SYMBOL_GPL vmlinux 0x15febf7f devm_gpiochip_add_data_with_key +EXPORT_SYMBOL_GPL vmlinux 0x161f8fe5 ip_valid_fib_dump_req +EXPORT_SYMBOL_GPL vmlinux 0x16318359 inet6_csk_xmit +EXPORT_SYMBOL_GPL vmlinux 0x16363183 dw_pcie_find_capability +EXPORT_SYMBOL_GPL vmlinux 0x16369a27 xive_native_sync_queue +EXPORT_SYMBOL_GPL vmlinux 0x163cef4f crypto_unregister_algs +EXPORT_SYMBOL_GPL vmlinux 0x163efe14 fuse_fill_super_common +EXPORT_SYMBOL_GPL vmlinux 0x16403d67 __rio_local_write_config_8 +EXPORT_SYMBOL_GPL vmlinux 0x1674d739 fwnode_handle_get +EXPORT_SYMBOL_GPL vmlinux 0x167d74b8 eeh_iommu_group_to_pe +EXPORT_SYMBOL_GPL vmlinux 0x168d6ef4 devres_destroy +EXPORT_SYMBOL_GPL vmlinux 0x169bcc8b vfs_test_lock +EXPORT_SYMBOL_GPL vmlinux 0x16b067db ehci_handshake +EXPORT_SYMBOL_GPL vmlinux 0x16b1841a iomap_writepage +EXPORT_SYMBOL_GPL vmlinux 0x16c277ac handle_bad_irq +EXPORT_SYMBOL_GPL vmlinux 0x16c56a86 of_get_named_gpio_flags +EXPORT_SYMBOL_GPL vmlinux 0x16d2855d __wake_up_locked +EXPORT_SYMBOL_GPL vmlinux 0x16da1f88 devlink_fmsg_u32_put +EXPORT_SYMBOL_GPL vmlinux 0x16eb2186 show_class_attr_string +EXPORT_SYMBOL_GPL vmlinux 0x17022b2a cpufreq_driver_target +EXPORT_SYMBOL_GPL vmlinux 0x170cc36c put_timespec64 +EXPORT_SYMBOL_GPL vmlinux 0x1725068a device_init_wakeup +EXPORT_SYMBOL_GPL vmlinux 0x1731f6cd pnv_ocxl_map_xsl_regs +EXPORT_SYMBOL_GPL vmlinux 0x174659d6 device_pm_wait_for_dev +EXPORT_SYMBOL_GPL vmlinux 0x17528d89 idr_alloc +EXPORT_SYMBOL_GPL vmlinux 0x176031a7 devlink_fmsg_string_put +EXPORT_SYMBOL_GPL vmlinux 0x1766df2d sk_msg_free +EXPORT_SYMBOL_GPL vmlinux 0x1768ea49 irq_domain_remove +EXPORT_SYMBOL_GPL vmlinux 0x176eee9c rio_set_port_lockout +EXPORT_SYMBOL_GPL vmlinux 0x177c338d twl_get_version +EXPORT_SYMBOL_GPL vmlinux 0x1789eaae of_prop_next_u32 +EXPORT_SYMBOL_GPL vmlinux 0x178b68ff regmap_raw_write_async +EXPORT_SYMBOL_GPL vmlinux 0x179ba34b pci_disable_pri +EXPORT_SYMBOL_GPL vmlinux 0x17bd6fb5 fwnode_graph_get_port_parent +EXPORT_SYMBOL_GPL vmlinux 0x17c01e20 __nf_ip6_route +EXPORT_SYMBOL_GPL vmlinux 0x17c2cbfc hash__alloc_context_id +EXPORT_SYMBOL_GPL vmlinux 0x17cc1e34 __raw_v6_lookup +EXPORT_SYMBOL_GPL vmlinux 0x17eb6b79 dev_fill_metadata_dst +EXPORT_SYMBOL_GPL vmlinux 0x17ee56c3 free_fib_info +EXPORT_SYMBOL_GPL vmlinux 0x17ef6f4a nvdimm_volatile_region_create +EXPORT_SYMBOL_GPL vmlinux 0x17fa03b0 dev_pm_opp_of_get_opp_desc_node +EXPORT_SYMBOL_GPL vmlinux 0x18008c59 ring_buffer_resize +EXPORT_SYMBOL_GPL vmlinux 0x1802a434 led_trigger_rename_static +EXPORT_SYMBOL_GPL vmlinux 0x180b2bff iomap_swapfile_activate +EXPORT_SYMBOL_GPL vmlinux 0x180b3fe8 blkcg_policy_unregister +EXPORT_SYMBOL_GPL vmlinux 0x1827cb03 __fscrypt_prepare_lookup +EXPORT_SYMBOL_GPL vmlinux 0x1828737f devm_kfree +EXPORT_SYMBOL_GPL vmlinux 0x1837205e platform_device_put +EXPORT_SYMBOL_GPL vmlinux 0x183ef8cc scsi_ioctl_block_when_processing_errors +EXPORT_SYMBOL_GPL vmlinux 0x1843e540 cpu_bit_bitmap +EXPORT_SYMBOL_GPL vmlinux 0x1846b10a of_phy_get +EXPORT_SYMBOL_GPL vmlinux 0x18654dea trace_seq_bitmask +EXPORT_SYMBOL_GPL vmlinux 0x18728552 sprint_OID +EXPORT_SYMBOL_GPL vmlinux 0x1872e1e7 devm_pwm_get +EXPORT_SYMBOL_GPL vmlinux 0x188cdd7b __ata_change_queue_depth +EXPORT_SYMBOL_GPL vmlinux 0x189289dd napi_hash_del +EXPORT_SYMBOL_GPL vmlinux 0x189f874d powernv_get_random_long +EXPORT_SYMBOL_GPL vmlinux 0x18b3a856 dax_driver_unregister +EXPORT_SYMBOL_GPL vmlinux 0x18cab165 get_governor_parent_kobj +EXPORT_SYMBOL_GPL vmlinux 0x18d0b0c0 serial8250_em485_start_tx +EXPORT_SYMBOL_GPL vmlinux 0x18d1ad20 virtio_config_enable +EXPORT_SYMBOL_GPL vmlinux 0x18e334ed sched_setscheduler_nocheck +EXPORT_SYMBOL_GPL vmlinux 0x18e4f8aa swphy_read_reg +EXPORT_SYMBOL_GPL vmlinux 0x18fb2caf cpus_read_unlock +EXPORT_SYMBOL_GPL vmlinux 0x1901f9e4 crypto_unregister_scomps +EXPORT_SYMBOL_GPL vmlinux 0x1902178a srp_tmo_valid +EXPORT_SYMBOL_GPL vmlinux 0x1909e409 platform_unregister_drivers +EXPORT_SYMBOL_GPL vmlinux 0x191e785f led_blink_set +EXPORT_SYMBOL_GPL vmlinux 0x192fbe1e of_alias_get_id +EXPORT_SYMBOL_GPL vmlinux 0x193a4722 __tracepoint_devlink_hwerr +EXPORT_SYMBOL_GPL vmlinux 0x193dfdf6 klp_get_prev_state +EXPORT_SYMBOL_GPL vmlinux 0x196f0c8b badrange_init +EXPORT_SYMBOL_GPL vmlinux 0x198b5b40 cpu_add_dev_attr +EXPORT_SYMBOL_GPL vmlinux 0x1994fbee soc_device_match +EXPORT_SYMBOL_GPL vmlinux 0x199cb67d of_irq_parse_one +EXPORT_SYMBOL_GPL vmlinux 0x19a304ba usb_disabled +EXPORT_SYMBOL_GPL vmlinux 0x19c20269 soc_device_unregister +EXPORT_SYMBOL_GPL vmlinux 0x19c3626a tps6586x_get_version +EXPORT_SYMBOL_GPL vmlinux 0x19cfff0a __rio_local_write_config_32 +EXPORT_SYMBOL_GPL vmlinux 0x19e81304 btree_alloc +EXPORT_SYMBOL_GPL vmlinux 0x19edbeb3 pinctrl_generic_get_group_pins +EXPORT_SYMBOL_GPL vmlinux 0x19f462ab kfree_call_rcu +EXPORT_SYMBOL_GPL vmlinux 0x19f71ae9 clk_mux_val_to_index +EXPORT_SYMBOL_GPL vmlinux 0x1a051ad7 __crypto_alloc_tfm +EXPORT_SYMBOL_GPL vmlinux 0x1a0543b4 kernfs_find_and_get_ns +EXPORT_SYMBOL_GPL vmlinux 0x1a085bd0 __tracepoint_mc_event +EXPORT_SYMBOL_GPL vmlinux 0x1a10c32b crypto_ft_tab +EXPORT_SYMBOL_GPL vmlinux 0x1a11470b mm_iommu_get +EXPORT_SYMBOL_GPL vmlinux 0x1a12fb49 device_store_bool +EXPORT_SYMBOL_GPL vmlinux 0x1a146ec3 usb_ep_type_string +EXPORT_SYMBOL_GPL vmlinux 0x1a1c8bc3 dw_pcie_ep_init +EXPORT_SYMBOL_GPL vmlinux 0x1a2c1b2f agp_remove_bridge +EXPORT_SYMBOL_GPL vmlinux 0x1a3ed4e2 invalidate_inode_pages2 +EXPORT_SYMBOL_GPL vmlinux 0x1a47ea8c da9052_disable_irq +EXPORT_SYMBOL_GPL vmlinux 0x1a5b5a1b hrtimer_active +EXPORT_SYMBOL_GPL vmlinux 0x1a5e5cdb sysfs_remove_files +EXPORT_SYMBOL_GPL vmlinux 0x1a6bf28f fsnotify_get_cookie +EXPORT_SYMBOL_GPL vmlinux 0x1a77903a of_alias_get_alias_list +EXPORT_SYMBOL_GPL vmlinux 0x1a781b24 irq_domain_simple_ops +EXPORT_SYMBOL_GPL vmlinux 0x1a8abea7 dev_fwnode +EXPORT_SYMBOL_GPL vmlinux 0x1a9c20b1 xive_cleanup_irq_data +EXPORT_SYMBOL_GPL vmlinux 0x1a9cfb95 copy_mc_generic +EXPORT_SYMBOL_GPL vmlinux 0x1ac458a1 public_key_signature_free +EXPORT_SYMBOL_GPL vmlinux 0x1adae6aa mctrl_gpio_init +EXPORT_SYMBOL_GPL vmlinux 0x1ae3802f bpf_trace_run1 +EXPORT_SYMBOL_GPL vmlinux 0x1ae75cde dio_end_io +EXPORT_SYMBOL_GPL vmlinux 0x1aed98a8 rhashtable_destroy +EXPORT_SYMBOL_GPL vmlinux 0x1af267f8 int_pow +EXPORT_SYMBOL_GPL vmlinux 0x1b1214e4 devm_rtc_allocate_device +EXPORT_SYMBOL_GPL vmlinux 0x1b122ab6 tpm_pm_suspend +EXPORT_SYMBOL_GPL vmlinux 0x1b1980db rtnl_link_unregister +EXPORT_SYMBOL_GPL vmlinux 0x1b320af7 pnv_pci_get_presence_state +EXPORT_SYMBOL_GPL vmlinux 0x1b35f297 kvmppc_clear_ref_hpte +EXPORT_SYMBOL_GPL vmlinux 0x1b457436 icc_link_destroy +EXPORT_SYMBOL_GPL vmlinux 0x1b5059ce ata_id_xfermask +EXPORT_SYMBOL_GPL vmlinux 0x1b50dfc6 securityfs_create_dir +EXPORT_SYMBOL_GPL vmlinux 0x1b5338c7 encrypt_blob +EXPORT_SYMBOL_GPL vmlinux 0x1b605eb6 __sock_recv_wifi_status +EXPORT_SYMBOL_GPL vmlinux 0x1b637a5f devm_platform_ioremap_resource +EXPORT_SYMBOL_GPL vmlinux 0x1b689415 ata_sff_dev_classify +EXPORT_SYMBOL_GPL vmlinux 0x1b8822d8 pinctrl_gpio_direction_output +EXPORT_SYMBOL_GPL vmlinux 0x1b92e41d inet_putpeer +EXPORT_SYMBOL_GPL vmlinux 0x1b9664d1 __destroy_context +EXPORT_SYMBOL_GPL vmlinux 0x1b9bff8b tty_ldisc_release +EXPORT_SYMBOL_GPL vmlinux 0x1ba6f5de tcp_set_keepalive +EXPORT_SYMBOL_GPL vmlinux 0x1baab394 sdio_retune_crc_enable +EXPORT_SYMBOL_GPL vmlinux 0x1bad8403 inet_hashinfo_init +EXPORT_SYMBOL_GPL vmlinux 0x1bbd2f6a tps6586x_set_bits +EXPORT_SYMBOL_GPL vmlinux 0x1bc5eebe pinctrl_gpio_direction_input +EXPORT_SYMBOL_GPL vmlinux 0x1bc85c79 blk_mq_bio_list_merge +EXPORT_SYMBOL_GPL vmlinux 0x1bd6468e devlink_dpipe_table_resource_set +EXPORT_SYMBOL_GPL vmlinux 0x1be55ea4 sbitmap_queue_min_shallow_depth +EXPORT_SYMBOL_GPL vmlinux 0x1bee4974 sg_alloc_table_chained +EXPORT_SYMBOL_GPL vmlinux 0x1c0611a9 ata_pci_bmdma_clear_simplex +EXPORT_SYMBOL_GPL vmlinux 0x1c0f2bc7 regulator_list_voltage_linear_range +EXPORT_SYMBOL_GPL vmlinux 0x1c3a6d66 usb_control_msg +EXPORT_SYMBOL_GPL vmlinux 0x1c3eacca cpufreq_disable_fast_switch +EXPORT_SYMBOL_GPL vmlinux 0x1c4b31ea subsys_interface_register +EXPORT_SYMBOL_GPL vmlinux 0x1c4d6f9a devm_clk_bulk_get +EXPORT_SYMBOL_GPL vmlinux 0x1c4f88f5 blk_mq_free_request +EXPORT_SYMBOL_GPL vmlinux 0x1c5541bd cpufreq_boost_enabled +EXPORT_SYMBOL_GPL vmlinux 0x1c58eb63 ata_sff_error_handler +EXPORT_SYMBOL_GPL vmlinux 0x1c5b1f28 irq_free_descs +EXPORT_SYMBOL_GPL vmlinux 0x1c5fb9a0 get_net_ns_by_pid +EXPORT_SYMBOL_GPL vmlinux 0x1c5ff742 clk_get_phase +EXPORT_SYMBOL_GPL vmlinux 0x1c62e34d opal_get_sensor_data +EXPORT_SYMBOL_GPL vmlinux 0x1c67f8e8 regulator_count_voltages +EXPORT_SYMBOL_GPL vmlinux 0x1c6d9a5f tps6586x_writes +EXPORT_SYMBOL_GPL vmlinux 0x1c768907 trace_event_ignore_this_pid +EXPORT_SYMBOL_GPL vmlinux 0x1c7df74c kvm_hv_vm_activated +EXPORT_SYMBOL_GPL vmlinux 0x1c80d27d btree_geo128 +EXPORT_SYMBOL_GPL vmlinux 0x1c87a811 __round_jiffies_up +EXPORT_SYMBOL_GPL vmlinux 0x1c8bca8d emulate_vsx_store +EXPORT_SYMBOL_GPL vmlinux 0x1ca1896b dax_region_put +EXPORT_SYMBOL_GPL vmlinux 0x1ca366a2 __tracepoint_fdb_delete +EXPORT_SYMBOL_GPL vmlinux 0x1cb2b936 ahash_register_instance +EXPORT_SYMBOL_GPL vmlinux 0x1cb8203f usb_hcd_unlink_urb_from_ep +EXPORT_SYMBOL_GPL vmlinux 0x1cbd92b0 cpu_mitigations_off +EXPORT_SYMBOL_GPL vmlinux 0x1ce9ae59 of_scan_bus +EXPORT_SYMBOL_GPL vmlinux 0x1cfe4101 clkdev_hw_create +EXPORT_SYMBOL_GPL vmlinux 0x1d04aa89 shash_ahash_finup +EXPORT_SYMBOL_GPL vmlinux 0x1d077d87 __fscrypt_prepare_rename +EXPORT_SYMBOL_GPL vmlinux 0x1d222ced irq_get_irqchip_state +EXPORT_SYMBOL_GPL vmlinux 0x1d2410cb usb_put_hcd +EXPORT_SYMBOL_GPL vmlinux 0x1d270fd1 dev_pm_opp_get_opp_count +EXPORT_SYMBOL_GPL vmlinux 0x1d298fe5 skb_mpls_update_lse +EXPORT_SYMBOL_GPL vmlinux 0x1d2c86d8 crypto_cipher_decrypt_one +EXPORT_SYMBOL_GPL vmlinux 0x1d4651cd wm831x_reg_write +EXPORT_SYMBOL_GPL vmlinux 0x1d5342c8 sysfs_merge_group +EXPORT_SYMBOL_GPL vmlinux 0x1d77b0f8 unix_socket_table +EXPORT_SYMBOL_GPL vmlinux 0x1d87f4fd pci_epf_destroy +EXPORT_SYMBOL_GPL vmlinux 0x1d93b926 transport_add_device +EXPORT_SYMBOL_GPL vmlinux 0x1d978ee9 srp_rport_add +EXPORT_SYMBOL_GPL vmlinux 0x1daae9c7 virtqueue_add_inbuf_ctx +EXPORT_SYMBOL_GPL vmlinux 0x1db85d47 rtc_initialize_alarm +EXPORT_SYMBOL_GPL vmlinux 0x1dc4427b usb_create_hcd +EXPORT_SYMBOL_GPL vmlinux 0x1dddaae9 __srcu_read_lock +EXPORT_SYMBOL_GPL vmlinux 0x1ddf446f led_trigger_read +EXPORT_SYMBOL_GPL vmlinux 0x1de5941b skb_consume_udp +EXPORT_SYMBOL_GPL vmlinux 0x1df33284 opal_prd_msg +EXPORT_SYMBOL_GPL vmlinux 0x1e02c4ba cgroup_path_ns +EXPORT_SYMBOL_GPL vmlinux 0x1e0670c6 reset_control_release +EXPORT_SYMBOL_GPL vmlinux 0x1e0cf235 opal_get_sensor_data_u64 +EXPORT_SYMBOL_GPL vmlinux 0x1e580a78 md_bitmap_load +EXPORT_SYMBOL_GPL vmlinux 0x1e673ff5 devlink_port_param_value_changed +EXPORT_SYMBOL_GPL vmlinux 0x1e758291 nvmem_cell_read_u64 +EXPORT_SYMBOL_GPL vmlinux 0x1e7bbcb3 kernel_restart +EXPORT_SYMBOL_GPL vmlinux 0x1e8ab7b1 adp5520_clr_bits +EXPORT_SYMBOL_GPL vmlinux 0x1e8fac8e wireless_nlevent_flush +EXPORT_SYMBOL_GPL vmlinux 0x1e936098 tracing_snapshot_cond_disable +EXPORT_SYMBOL_GPL vmlinux 0x1ea118ac perf_pmu_register +EXPORT_SYMBOL_GPL vmlinux 0x1eb02c93 power_supply_put_battery_info +EXPORT_SYMBOL_GPL vmlinux 0x1eb4288f uart_insert_char +EXPORT_SYMBOL_GPL vmlinux 0x1eb5943d perf_event_update_userpage +EXPORT_SYMBOL_GPL vmlinux 0x1eb9516e round_jiffies_relative +EXPORT_SYMBOL_GPL vmlinux 0x1ebf6c2a pci_power_names +EXPORT_SYMBOL_GPL vmlinux 0x1ec8bafe iomap_finish_ioends +EXPORT_SYMBOL_GPL vmlinux 0x1edac5c3 xive_native_enable_vp +EXPORT_SYMBOL_GPL vmlinux 0x1ee7fa16 pci_common_swizzle +EXPORT_SYMBOL_GPL vmlinux 0x1ef7e5e8 da903x_unregister_notifier +EXPORT_SYMBOL_GPL vmlinux 0x1f050e36 pnv_pci_set_power_state +EXPORT_SYMBOL_GPL vmlinux 0x1f0cb5bf pm_power_off_prepare +EXPORT_SYMBOL_GPL vmlinux 0x1f1541c9 cpufreq_dbs_governor_exit +EXPORT_SYMBOL_GPL vmlinux 0x1f19ce7d skcipher_walk_aead_encrypt +EXPORT_SYMBOL_GPL vmlinux 0x1f1bbabe pingv6_prot +EXPORT_SYMBOL_GPL vmlinux 0x1f1dc688 blk_freeze_queue_start +EXPORT_SYMBOL_GPL vmlinux 0x1f21efe1 devfreq_event_enable_edev +EXPORT_SYMBOL_GPL vmlinux 0x1f302a8d of_gen_pool_get +EXPORT_SYMBOL_GPL vmlinux 0x1f449588 mctrl_gpio_disable_ms +EXPORT_SYMBOL_GPL vmlinux 0x1f484fd2 fuse_request_end +EXPORT_SYMBOL_GPL vmlinux 0x1f563160 bpf_offload_dev_priv +EXPORT_SYMBOL_GPL vmlinux 0x1f5d1d06 badblocks_clear +EXPORT_SYMBOL_GPL vmlinux 0x1f676ea9 tc3589x_set_bits +EXPORT_SYMBOL_GPL vmlinux 0x1f6f9444 attribute_container_classdev_to_container +EXPORT_SYMBOL_GPL vmlinux 0x1f8544b8 panic_timeout +EXPORT_SYMBOL_GPL vmlinux 0x1f9ff9a1 kvmppc_check_need_tlb_flush +EXPORT_SYMBOL_GPL vmlinux 0x1fa0790f dummy_con +EXPORT_SYMBOL_GPL vmlinux 0x1fa0c34f bio_iov_iter_get_pages +EXPORT_SYMBOL_GPL vmlinux 0x1fa1d95c sha256_zero_message_hash +EXPORT_SYMBOL_GPL vmlinux 0x1fa1efdc get_device +EXPORT_SYMBOL_GPL vmlinux 0x1fae07d7 crypto_stats_aead_encrypt +EXPORT_SYMBOL_GPL vmlinux 0x1fb48dab pci_epf_bind +EXPORT_SYMBOL_GPL vmlinux 0x1fb95f2f edac_device_alloc_ctl_info +EXPORT_SYMBOL_GPL vmlinux 0x1fbfced4 bsg_job_put +EXPORT_SYMBOL_GPL vmlinux 0x1fc18994 stmpe_set_altfunc +EXPORT_SYMBOL_GPL vmlinux 0x1fc409ba virtio_add_status +EXPORT_SYMBOL_GPL vmlinux 0x1fc4b892 fb_deferred_io_fsync +EXPORT_SYMBOL_GPL vmlinux 0x1fcbbc26 fib_table_lookup +EXPORT_SYMBOL_GPL vmlinux 0x1fcd89a8 call_switchdev_blocking_notifiers +EXPORT_SYMBOL_GPL vmlinux 0x1fdb2659 proc_douintvec_minmax +EXPORT_SYMBOL_GPL vmlinux 0x1fe6e504 gpiod_add_hogs +EXPORT_SYMBOL_GPL vmlinux 0x2004d91e __lock_page_killable +EXPORT_SYMBOL_GPL vmlinux 0x2006a3cd ack_all_badblocks +EXPORT_SYMBOL_GPL vmlinux 0x20292319 pci_cfg_access_trylock +EXPORT_SYMBOL_GPL vmlinux 0x2029a7d7 synth_event_create +EXPORT_SYMBOL_GPL vmlinux 0x202d4ed6 nvmem_cell_write +EXPORT_SYMBOL_GPL vmlinux 0x20399c0e __static_key_slow_dec_deferred +EXPORT_SYMBOL_GPL vmlinux 0x2039d216 l3mdev_fib_table_by_index +EXPORT_SYMBOL_GPL vmlinux 0x20717db8 xdp_rxq_info_reg +EXPORT_SYMBOL_GPL vmlinux 0x20733d3e blkdev_write_iter +EXPORT_SYMBOL_GPL vmlinux 0x2080954c key_set_timeout +EXPORT_SYMBOL_GPL vmlinux 0x20835a9f __xdp_release_frame +EXPORT_SYMBOL_GPL vmlinux 0x2083fbf0 rio_request_inb_mbox +EXPORT_SYMBOL_GPL vmlinux 0x20930acc clone_private_mount +EXPORT_SYMBOL_GPL vmlinux 0x2094af60 fwnode_graph_get_remote_port_parent +EXPORT_SYMBOL_GPL vmlinux 0x2095bc6d tpm_tis_core_init +EXPORT_SYMBOL_GPL vmlinux 0x20a2bc4f crypto_alloc_skcipher +EXPORT_SYMBOL_GPL vmlinux 0x20b90432 reset_controller_unregister +EXPORT_SYMBOL_GPL vmlinux 0x20c3e5d3 inet_csk_listen_stop +EXPORT_SYMBOL_GPL vmlinux 0x20ede646 genphy_c45_read_mdix +EXPORT_SYMBOL_GPL vmlinux 0x20f6b1c9 sk_msg_zerocopy_from_iter +EXPORT_SYMBOL_GPL vmlinux 0x21039a0c find_extend_vma +EXPORT_SYMBOL_GPL vmlinux 0x2107032b ethnl_cable_test_amplitude +EXPORT_SYMBOL_GPL vmlinux 0x210c900a devm_watchdog_register_device +EXPORT_SYMBOL_GPL vmlinux 0x211850f5 htab_hash_mask +EXPORT_SYMBOL_GPL vmlinux 0x211c7550 __xive_vm_h_xirr +EXPORT_SYMBOL_GPL vmlinux 0x21303a75 regmap_check_range_table +EXPORT_SYMBOL_GPL vmlinux 0x216de4e1 rcu_get_gp_kthreads_prio +EXPORT_SYMBOL_GPL vmlinux 0x2176e42a hwpoison_filter_memcg +EXPORT_SYMBOL_GPL vmlinux 0x219ff88a tracepoint_srcu +EXPORT_SYMBOL_GPL vmlinux 0x21a563da clk_get_accuracy +EXPORT_SYMBOL_GPL vmlinux 0x21ac8b77 iommu_group_get_by_id +EXPORT_SYMBOL_GPL vmlinux 0x21ad0b2a regulator_set_mode +EXPORT_SYMBOL_GPL vmlinux 0x21aeaee9 clk_hw_register_fixed_factor +EXPORT_SYMBOL_GPL vmlinux 0x21cd536a crypto_put_default_null_skcipher +EXPORT_SYMBOL_GPL vmlinux 0x21d214f3 addrconf_prefix_rcv_add_addr +EXPORT_SYMBOL_GPL vmlinux 0x21d78b12 xas_create_range +EXPORT_SYMBOL_GPL vmlinux 0x21d8f35a lwtunnel_cmp_encap +EXPORT_SYMBOL_GPL vmlinux 0x21d99717 input_ff_upload +EXPORT_SYMBOL_GPL vmlinux 0x21e480cc devm_extcon_dev_unregister +EXPORT_SYMBOL_GPL vmlinux 0x21e93321 __tracepoint_suspend_resume +EXPORT_SYMBOL_GPL vmlinux 0x2203207c clk_hw_get_parent_index +EXPORT_SYMBOL_GPL vmlinux 0x220f3485 __udp4_lib_lookup +EXPORT_SYMBOL_GPL vmlinux 0x2211a4c0 blk_op_str +EXPORT_SYMBOL_GPL vmlinux 0x221d4182 kobject_rename +EXPORT_SYMBOL_GPL vmlinux 0x221eab6d scatterwalk_copychunks +EXPORT_SYMBOL_GPL vmlinux 0x222d99d8 nf_hook_entries_delete_raw +EXPORT_SYMBOL_GPL vmlinux 0x22390efe dev_pm_opp_set_supported_hw +EXPORT_SYMBOL_GPL vmlinux 0x223f8bc5 crypto_default_rng +EXPORT_SYMBOL_GPL vmlinux 0x224f51bf nvmem_device_cell_read +EXPORT_SYMBOL_GPL vmlinux 0x225b42b2 clk_fractional_divider_ops +EXPORT_SYMBOL_GPL vmlinux 0x2271b409 devm_regulator_unregister_notifier +EXPORT_SYMBOL_GPL vmlinux 0x229b0eb9 devices_cgrp_subsys_enabled_key +EXPORT_SYMBOL_GPL vmlinux 0x22b7cdd8 max8997_write_reg +EXPORT_SYMBOL_GPL vmlinux 0x22c97f7d tpm_pcr_read +EXPORT_SYMBOL_GPL vmlinux 0x22d93291 clk_register_gate +EXPORT_SYMBOL_GPL vmlinux 0x22d9409b iomap_sort_ioends +EXPORT_SYMBOL_GPL vmlinux 0x22daf7c7 thermal_zone_get_offset +EXPORT_SYMBOL_GPL vmlinux 0x22de4d64 fwnode_graph_get_endpoint_by_id +EXPORT_SYMBOL_GPL vmlinux 0x22de4ec9 ata_pci_bmdma_init +EXPORT_SYMBOL_GPL vmlinux 0x22e6c545 pm_clk_remove_clk +EXPORT_SYMBOL_GPL vmlinux 0x22fddea5 platform_device_del +EXPORT_SYMBOL_GPL vmlinux 0x23021c65 dev_pm_opp_put_clkname +EXPORT_SYMBOL_GPL vmlinux 0x23166e05 sbitmap_add_wait_queue +EXPORT_SYMBOL_GPL vmlinux 0x2318baea devm_hwmon_device_register_with_groups +EXPORT_SYMBOL_GPL vmlinux 0x23268db1 kobj_sysfs_ops +EXPORT_SYMBOL_GPL vmlinux 0x23412816 rtc_tm_to_ktime +EXPORT_SYMBOL_GPL vmlinux 0x234cf416 devlink_fmsg_string_pair_put +EXPORT_SYMBOL_GPL vmlinux 0x2358af18 xas_init_marks +EXPORT_SYMBOL_GPL vmlinux 0x236a26ab usb_phy_roothub_suspend +EXPORT_SYMBOL_GPL vmlinux 0x23864ce7 cpuset_mem_spread_node +EXPORT_SYMBOL_GPL vmlinux 0x238b2e50 crypto_enqueue_request_head +EXPORT_SYMBOL_GPL vmlinux 0x2396c7f0 clk_set_parent +EXPORT_SYMBOL_GPL vmlinux 0x23b9d4da __tracepoint_vfio_pci_npu2_mmap +EXPORT_SYMBOL_GPL vmlinux 0x23bb75a0 __tracepoint_sched_overutilized_tp +EXPORT_SYMBOL_GPL vmlinux 0x23c95a43 trace_seq_path +EXPORT_SYMBOL_GPL vmlinux 0x23d0ab45 sata_set_spd +EXPORT_SYMBOL_GPL vmlinux 0x23e67640 sysfs_add_device_to_node +EXPORT_SYMBOL_GPL vmlinux 0x23ebb59e uprobe_register_refctr +EXPORT_SYMBOL_GPL vmlinux 0x23f1627b power_supply_get_by_name +EXPORT_SYMBOL_GPL vmlinux 0x23f6abd4 scsi_dh_attached_handler_name +EXPORT_SYMBOL_GPL vmlinux 0x2401b348 usb_enable_autosuspend +EXPORT_SYMBOL_GPL vmlinux 0x24233f4b pinctrl_put +EXPORT_SYMBOL_GPL vmlinux 0x242c1032 power_supply_get_battery_info +EXPORT_SYMBOL_GPL vmlinux 0x242eb5a9 mmu_interval_notifier_remove +EXPORT_SYMBOL_GPL vmlinux 0x243f0b4b crypto_check_attr_type +EXPORT_SYMBOL_GPL vmlinux 0x243fe250 pm_runtime_allow +EXPORT_SYMBOL_GPL vmlinux 0x2443aa68 pci_find_bus_by_node +EXPORT_SYMBOL_GPL vmlinux 0x2446f3a7 phy_modify_mmd +EXPORT_SYMBOL_GPL vmlinux 0x2458312a msi_desc_to_pci_sysdata +EXPORT_SYMBOL_GPL vmlinux 0x245e08dd devlink_params_unregister +EXPORT_SYMBOL_GPL vmlinux 0x245f5f93 of_get_display_timing +EXPORT_SYMBOL_GPL vmlinux 0x2468dfb2 rio_pw_enable +EXPORT_SYMBOL_GPL vmlinux 0x247ef831 kdb_unregister +EXPORT_SYMBOL_GPL vmlinux 0x24a52cf4 vfs_writef +EXPORT_SYMBOL_GPL vmlinux 0x24a5fa3b gpiochip_line_is_open_drain +EXPORT_SYMBOL_GPL vmlinux 0x24a66104 da903x_writes +EXPORT_SYMBOL_GPL vmlinux 0x24ad11db wakeup_sources_read_unlock +EXPORT_SYMBOL_GPL vmlinux 0x24b9f356 mmu_partition_table_set_entry +EXPORT_SYMBOL_GPL vmlinux 0x24c14aa9 mmc_abort_tuning +EXPORT_SYMBOL_GPL vmlinux 0x24c60e2b crypto_stats_get +EXPORT_SYMBOL_GPL vmlinux 0x24da0093 rcu_inkernel_boot_has_ended +EXPORT_SYMBOL_GPL vmlinux 0x24dbb340 dev_pm_qos_add_ancestor_request +EXPORT_SYMBOL_GPL vmlinux 0x24e58b8c net_rwsem +EXPORT_SYMBOL_GPL vmlinux 0x24eb7e32 leds_list +EXPORT_SYMBOL_GPL vmlinux 0x24f39c39 reset_control_reset +EXPORT_SYMBOL_GPL vmlinux 0x24f63dcf ata_xfer_mask2mode +EXPORT_SYMBOL_GPL vmlinux 0x25301bc6 arch_wb_cache_pmem +EXPORT_SYMBOL_GPL vmlinux 0x25309111 of_irq_get +EXPORT_SYMBOL_GPL vmlinux 0x25379e73 clk_set_min_rate +EXPORT_SYMBOL_GPL vmlinux 0x253dfa83 gov_attr_set_put +EXPORT_SYMBOL_GPL vmlinux 0x2548fc88 devm_phy_create +EXPORT_SYMBOL_GPL vmlinux 0x2559d24d kvmppc_h_set_dabr +EXPORT_SYMBOL_GPL vmlinux 0x257465d6 mm_iommu_lookup +EXPORT_SYMBOL_GPL vmlinux 0x257870e9 crypto_hash_walk_first +EXPORT_SYMBOL_GPL vmlinux 0x257ea4f2 spi_mem_dirmap_destroy +EXPORT_SYMBOL_GPL vmlinux 0x258920a0 edac_pci_add_device +EXPORT_SYMBOL_GPL vmlinux 0x25897796 rio_local_set_device_id +EXPORT_SYMBOL_GPL vmlinux 0x2592fc6c console_printk +EXPORT_SYMBOL_GPL vmlinux 0x259d5a7b ping_get_port +EXPORT_SYMBOL_GPL vmlinux 0x25b92703 regulator_set_pull_down_regmap +EXPORT_SYMBOL_GPL vmlinux 0x25bf2de5 iomap_releasepage +EXPORT_SYMBOL_GPL vmlinux 0x25cb68be pm_generic_thaw_early +EXPORT_SYMBOL_GPL vmlinux 0x25ccfb89 __pm_runtime_disable +EXPORT_SYMBOL_GPL vmlinux 0x25dd9836 usb_hcd_start_port_resume +EXPORT_SYMBOL_GPL vmlinux 0x25f42d5e rtc_update_irq +EXPORT_SYMBOL_GPL vmlinux 0x26273cde cgroup_rstat_updated +EXPORT_SYMBOL_GPL vmlinux 0x262830f0 of_pci_get_devfn +EXPORT_SYMBOL_GPL vmlinux 0x262ac5c3 percpu_up_write +EXPORT_SYMBOL_GPL vmlinux 0x26371aa9 pci_epc_set_msix +EXPORT_SYMBOL_GPL vmlinux 0x26520970 vm_memory_committed +EXPORT_SYMBOL_GPL vmlinux 0x2656fe58 cpu_remove_dev_attr +EXPORT_SYMBOL_GPL vmlinux 0x265bbef9 kexec_crash_loaded +EXPORT_SYMBOL_GPL vmlinux 0x26750124 tpm_pm_resume +EXPORT_SYMBOL_GPL vmlinux 0x267ade20 bpf_trace_run10 +EXPORT_SYMBOL_GPL vmlinux 0x267bdfd8 sched_smt_present +EXPORT_SYMBOL_GPL vmlinux 0x267df662 smp_call_on_cpu +EXPORT_SYMBOL_GPL vmlinux 0x26918054 freq_qos_remove_notifier +EXPORT_SYMBOL_GPL vmlinux 0x269f2163 fib_info_nh_uses_dev +EXPORT_SYMBOL_GPL vmlinux 0x26ab4755 put_old_itimerspec32 +EXPORT_SYMBOL_GPL vmlinux 0x26b1bc68 dax_inode +EXPORT_SYMBOL_GPL vmlinux 0x26bcd6c8 dma_max_mapping_size +EXPORT_SYMBOL_GPL vmlinux 0x26c01e2b uart_get_rs485_mode +EXPORT_SYMBOL_GPL vmlinux 0x26c622ee percpu_ref_switch_to_percpu +EXPORT_SYMBOL_GPL vmlinux 0x26c90ea4 scsi_eh_get_sense +EXPORT_SYMBOL_GPL vmlinux 0x26cbce2a kobject_move +EXPORT_SYMBOL_GPL vmlinux 0x26ed2186 register_vmap_purge_notifier +EXPORT_SYMBOL_GPL vmlinux 0x26f6bc98 sock_diag_save_cookie +EXPORT_SYMBOL_GPL vmlinux 0x271c2e7d device_link_del +EXPORT_SYMBOL_GPL vmlinux 0x27232340 watchdog_set_restart_priority +EXPORT_SYMBOL_GPL vmlinux 0x2725f466 dev_pm_opp_put +EXPORT_SYMBOL_GPL vmlinux 0x2741bc24 devlink_dpipe_headers_unregister +EXPORT_SYMBOL_GPL vmlinux 0x27426e00 sg_scsi_ioctl +EXPORT_SYMBOL_GPL vmlinux 0x274cf5e1 __clk_get_flags +EXPORT_SYMBOL_GPL vmlinux 0x274dd1a3 sg_free_table_chained +EXPORT_SYMBOL_GPL vmlinux 0x2758142b security_inode_create +EXPORT_SYMBOL_GPL vmlinux 0x27657645 __tracepoint_tcp_send_reset +EXPORT_SYMBOL_GPL vmlinux 0x27828dd5 l3mdev_update_flow +EXPORT_SYMBOL_GPL vmlinux 0x278a9317 clk_gate_ops +EXPORT_SYMBOL_GPL vmlinux 0x278be0cc bus_rescan_devices +EXPORT_SYMBOL_GPL vmlinux 0x279003ee freezer_cgrp_subsys_on_dfl_key +EXPORT_SYMBOL_GPL vmlinux 0x279d3a5a devlink_net +EXPORT_SYMBOL_GPL vmlinux 0x27a113a6 gpiochip_line_is_irq +EXPORT_SYMBOL_GPL vmlinux 0x27a4465f clk_mux_ops +EXPORT_SYMBOL_GPL vmlinux 0x27a6cad9 nf_checksum_partial +EXPORT_SYMBOL_GPL vmlinux 0x27b05e53 mddev_resume +EXPORT_SYMBOL_GPL vmlinux 0x27b6769d blk_mq_sched_request_inserted +EXPORT_SYMBOL_GPL vmlinux 0x27cdf72e devm_gpiod_get_array +EXPORT_SYMBOL_GPL vmlinux 0x27ce3ec0 cpu_latency_qos_request_active +EXPORT_SYMBOL_GPL vmlinux 0x27e8c841 xdp_do_redirect +EXPORT_SYMBOL_GPL vmlinux 0x27f4f029 ftrace_set_global_filter +EXPORT_SYMBOL_GPL vmlinux 0x27fa66e1 nr_free_buffer_pages +EXPORT_SYMBOL_GPL vmlinux 0x2808be99 __xive_vm_h_eoi +EXPORT_SYMBOL_GPL vmlinux 0x281de10b ethnl_cable_test_alloc +EXPORT_SYMBOL_GPL vmlinux 0x282cdabc usb_led_activity +EXPORT_SYMBOL_GPL vmlinux 0x284fe794 percpu_ref_exit +EXPORT_SYMBOL_GPL vmlinux 0x284ffe1f ata_link_offline +EXPORT_SYMBOL_GPL vmlinux 0x2859b841 fwnode_graph_get_remote_port +EXPORT_SYMBOL_GPL vmlinux 0x285ec388 platform_get_irq +EXPORT_SYMBOL_GPL vmlinux 0x2864abc9 klist_node_attached +EXPORT_SYMBOL_GPL vmlinux 0x286cc647 async_synchronize_cookie_domain +EXPORT_SYMBOL_GPL vmlinux 0x2873f05c pci_max_pasids +EXPORT_SYMBOL_GPL vmlinux 0x287ce29f pwm_request_from_chip +EXPORT_SYMBOL_GPL vmlinux 0x288410b9 rdev_set_badblocks +EXPORT_SYMBOL_GPL vmlinux 0x28886477 ipv6_stub +EXPORT_SYMBOL_GPL vmlinux 0x28a8f935 usb_anchor_suspend_wakeups +EXPORT_SYMBOL_GPL vmlinux 0x28a92693 mmu_notifier_get_locked +EXPORT_SYMBOL_GPL vmlinux 0x28aa689d skb_complete_tx_timestamp +EXPORT_SYMBOL_GPL vmlinux 0x28aa6a67 call_rcu +EXPORT_SYMBOL_GPL vmlinux 0x28ab4fb9 pinctrl_gpio_free +EXPORT_SYMBOL_GPL vmlinux 0x28b030d2 of_overlay_notifier_unregister +EXPORT_SYMBOL_GPL vmlinux 0x28b41d84 ata_std_prereset +EXPORT_SYMBOL_GPL vmlinux 0x28b533e8 balloon_page_dequeue +EXPORT_SYMBOL_GPL vmlinux 0x28ef1b13 kernfs_put +EXPORT_SYMBOL_GPL vmlinux 0x2911c76d gpiochip_get_desc +EXPORT_SYMBOL_GPL vmlinux 0x29255691 pci_epc_raise_irq +EXPORT_SYMBOL_GPL vmlinux 0x293228d6 regulator_get_drvdata +EXPORT_SYMBOL_GPL vmlinux 0x2937e8bd sata_scr_valid +EXPORT_SYMBOL_GPL vmlinux 0x293ed2d6 usb_interrupt_msg +EXPORT_SYMBOL_GPL vmlinux 0x2940032d pnv_pci_get_power_state +EXPORT_SYMBOL_GPL vmlinux 0x294b9791 rio_inb_pwrite_handler +EXPORT_SYMBOL_GPL vmlinux 0x2968c5bd crypto_larval_kill +EXPORT_SYMBOL_GPL vmlinux 0x296a3f7b skcipher_alloc_instance_simple +EXPORT_SYMBOL_GPL vmlinux 0x2986e853 iommu_tce_kill +EXPORT_SYMBOL_GPL vmlinux 0x29911887 ethnl_cable_test_result +EXPORT_SYMBOL_GPL vmlinux 0x299a076c d_exchange +EXPORT_SYMBOL_GPL vmlinux 0x29a96e78 pci_sriov_get_totalvfs +EXPORT_SYMBOL_GPL vmlinux 0x29aa48d0 radix__flush_tlb_lpid_page +EXPORT_SYMBOL_GPL vmlinux 0x29cacefb l3mdev_master_ifindex_rcu +EXPORT_SYMBOL_GPL vmlinux 0x29cdbc7b irq_domain_associate_many +EXPORT_SYMBOL_GPL vmlinux 0x29cef68a cpufreq_register_governor +EXPORT_SYMBOL_GPL vmlinux 0x29d69ff6 alarm_start +EXPORT_SYMBOL_GPL vmlinux 0x29e6d51f usb_free_coherent +EXPORT_SYMBOL_GPL vmlinux 0x29eba37f current_is_async +EXPORT_SYMBOL_GPL vmlinux 0x2a0a40fa mdio_bus_init +EXPORT_SYMBOL_GPL vmlinux 0x2a336698 opal_rtc_write +EXPORT_SYMBOL_GPL vmlinux 0x2a367dd0 devm_clk_bulk_get_optional +EXPORT_SYMBOL_GPL vmlinux 0x2a394971 bpf_event_output +EXPORT_SYMBOL_GPL vmlinux 0x2a3cd83f relay_file_operations +EXPORT_SYMBOL_GPL vmlinux 0x2a62cb3a ring_buffer_overrun_cpu +EXPORT_SYMBOL_GPL vmlinux 0x2a6659aa mnt_clone_write +EXPORT_SYMBOL_GPL vmlinux 0x2a678a13 __suspend_report_result +EXPORT_SYMBOL_GPL vmlinux 0x2a67a19f fat_dir_empty +EXPORT_SYMBOL_GPL vmlinux 0x2a775646 pinctrl_force_sleep +EXPORT_SYMBOL_GPL vmlinux 0x2a7a0163 virtio_device_restore +EXPORT_SYMBOL_GPL vmlinux 0x2aafaca8 wm5110_patch +EXPORT_SYMBOL_GPL vmlinux 0x2ab49a56 devm_regulator_unregister +EXPORT_SYMBOL_GPL vmlinux 0x2ab80a8d sbitmap_queue_wake_all +EXPORT_SYMBOL_GPL vmlinux 0x2ac7b20c init_pid_ns +EXPORT_SYMBOL_GPL vmlinux 0x2ade9be1 extcon_register_notifier_all +EXPORT_SYMBOL_GPL vmlinux 0x2ae5a7bb usb_phy_set_event +EXPORT_SYMBOL_GPL vmlinux 0x2ae6d103 ncsi_register_dev +EXPORT_SYMBOL_GPL vmlinux 0x2af3d3dd synth_event_trace +EXPORT_SYMBOL_GPL vmlinux 0x2af6c9ac skcipher_walk_virt +EXPORT_SYMBOL_GPL vmlinux 0x2b05df18 spi_take_timestamp_pre +EXPORT_SYMBOL_GPL vmlinux 0x2b0d6330 net_ns_get_ownership +EXPORT_SYMBOL_GPL vmlinux 0x2b1bae0e cpu_to_core_id +EXPORT_SYMBOL_GPL vmlinux 0x2b1fba0f xive_native_disable_queue +EXPORT_SYMBOL_GPL vmlinux 0x2b2164c8 rcu_read_unlock_trace_special +EXPORT_SYMBOL_GPL vmlinux 0x2b24963c tracepoint_probe_unregister +EXPORT_SYMBOL_GPL vmlinux 0x2b4147ed kvmppc_hcall_impl_hv_realmode +EXPORT_SYMBOL_GPL vmlinux 0x2b4509dd devlink_health_reporter_state_update +EXPORT_SYMBOL_GPL vmlinux 0x2b5c303b smp_send_reschedule +EXPORT_SYMBOL_GPL vmlinux 0x2b6150fb power_supply_temp2resist_simple +EXPORT_SYMBOL_GPL vmlinux 0x2b6d960d synth_event_cmd_init +EXPORT_SYMBOL_GPL vmlinux 0x2b8c5017 ip6_redirect +EXPORT_SYMBOL_GPL vmlinux 0x2b952517 clk_has_parent +EXPORT_SYMBOL_GPL vmlinux 0x2b9b53bc skb_defer_rx_timestamp +EXPORT_SYMBOL_GPL vmlinux 0x2bacf6d0 dev_pm_put_subsys_data +EXPORT_SYMBOL_GPL vmlinux 0x2bb8d485 get_user_pages_fast +EXPORT_SYMBOL_GPL vmlinux 0x2bb9095f radix__flush_pwc_lpid +EXPORT_SYMBOL_GPL vmlinux 0x2bc45d47 of_find_spi_device_by_node +EXPORT_SYMBOL_GPL vmlinux 0x2bd8e5e1 dax_attribute_group +EXPORT_SYMBOL_GPL vmlinux 0x2be24d4c dw_pcie_wait_for_link +EXPORT_SYMBOL_GPL vmlinux 0x2bf2b193 usb_disable_lpm +EXPORT_SYMBOL_GPL vmlinux 0x2c208607 power_supply_is_system_supplied +EXPORT_SYMBOL_GPL vmlinux 0x2c240ec9 dev_pm_qos_hide_flags +EXPORT_SYMBOL_GPL vmlinux 0x2c2ede0e ipv6_find_tlv +EXPORT_SYMBOL_GPL vmlinux 0x2c3054f9 net_inc_ingress_queue +EXPORT_SYMBOL_GPL vmlinux 0x2c3f0e0f call_switchdev_notifiers +EXPORT_SYMBOL_GPL vmlinux 0x2c43aeab dev_pm_opp_of_register_em +EXPORT_SYMBOL_GPL vmlinux 0x2c487f18 ip_route_output_flow +EXPORT_SYMBOL_GPL vmlinux 0x2c519852 regulator_get_current_limit +EXPORT_SYMBOL_GPL vmlinux 0x2c5334bd spi_split_transfers_maxsize +EXPORT_SYMBOL_GPL vmlinux 0x2c54332a debugfs_create_blob +EXPORT_SYMBOL_GPL vmlinux 0x2c5deabe nvdimm_bus_check_dimm_count +EXPORT_SYMBOL_GPL vmlinux 0x2c635527 arch_invalidate_pmem +EXPORT_SYMBOL_GPL vmlinux 0x2c66ac85 devlink_info_serial_number_put +EXPORT_SYMBOL_GPL vmlinux 0x2c6d3f22 fat_truncate_time +EXPORT_SYMBOL_GPL vmlinux 0x2c717b2f gpiod_get_value_cansleep +EXPORT_SYMBOL_GPL vmlinux 0x2c7d2c22 pci_epc_unmap_addr +EXPORT_SYMBOL_GPL vmlinux 0x2c7db649 irq_dispose_mapping +EXPORT_SYMBOL_GPL vmlinux 0x2c8dd6b8 edac_mem_types +EXPORT_SYMBOL_GPL vmlinux 0x2c97f8a2 of_reconfig_notifier_register +EXPORT_SYMBOL_GPL vmlinux 0x2c9ccfa2 tty_ldisc_ref_wait +EXPORT_SYMBOL_GPL vmlinux 0x2ca3845a debugfs_create_symlink +EXPORT_SYMBOL_GPL vmlinux 0x2ca60846 rio_release_dma +EXPORT_SYMBOL_GPL vmlinux 0x2caef975 devm_release_action +EXPORT_SYMBOL_GPL vmlinux 0x2cb339a4 of_property_read_u32_index +EXPORT_SYMBOL_GPL vmlinux 0x2cbce7bf invalidate_inode_pages2_range +EXPORT_SYMBOL_GPL vmlinux 0x2cd5df3a opal_ipmi_send +EXPORT_SYMBOL_GPL vmlinux 0x2cd88f51 kvm_hv_vm_deactivated +EXPORT_SYMBOL_GPL vmlinux 0x2cea32ee unregister_oldmem_pfn_is_ram +EXPORT_SYMBOL_GPL vmlinux 0x2ceb2648 pm_runtime_force_suspend +EXPORT_SYMBOL_GPL vmlinux 0x2ceb815a clk_hw_get_parent_by_index +EXPORT_SYMBOL_GPL vmlinux 0x2d0dae43 analyse_instr +EXPORT_SYMBOL_GPL vmlinux 0x2d1b02d2 usermodehelper_read_lock_wait +EXPORT_SYMBOL_GPL vmlinux 0x2d21471b dev_pm_opp_add +EXPORT_SYMBOL_GPL vmlinux 0x2d2dd36f kobj_ns_grab_current +EXPORT_SYMBOL_GPL vmlinux 0x2d2e0ccc crypto_skcipher_setkey +EXPORT_SYMBOL_GPL vmlinux 0x2d37ccad tps65912_regmap_config +EXPORT_SYMBOL_GPL vmlinux 0x2d3a7d0d pm_wakeup_ws_event +EXPORT_SYMBOL_GPL vmlinux 0x2d41e6f5 __trace_puts +EXPORT_SYMBOL_GPL vmlinux 0x2d653a82 devm_of_pwm_get +EXPORT_SYMBOL_GPL vmlinux 0x2d669cdb devm_regmap_del_irq_chip +EXPORT_SYMBOL_GPL vmlinux 0x2d74f60f sysfs_create_groups +EXPORT_SYMBOL_GPL vmlinux 0x2d792163 lp8788_write_byte +EXPORT_SYMBOL_GPL vmlinux 0x2d83b43f regmap_field_read +EXPORT_SYMBOL_GPL vmlinux 0x2d868c56 perf_event_sysfs_show +EXPORT_SYMBOL_GPL vmlinux 0x2d9df220 memory_cgrp_subsys_on_dfl_key +EXPORT_SYMBOL_GPL vmlinux 0x2da31e31 wm8350_reg_write +EXPORT_SYMBOL_GPL vmlinux 0x2daa2177 x509_free_certificate +EXPORT_SYMBOL_GPL vmlinux 0x2dcc0785 tun_get_socket +EXPORT_SYMBOL_GPL vmlinux 0x2de7bf18 device_property_read_u8_array +EXPORT_SYMBOL_GPL vmlinux 0x2e028ae6 rcutorture_get_gp_data +EXPORT_SYMBOL_GPL vmlinux 0x2e0a6509 evm_inode_init_security +EXPORT_SYMBOL_GPL vmlinux 0x2e16d562 dev_pm_opp_set_regulators +EXPORT_SYMBOL_GPL vmlinux 0x2e218f45 usb_for_each_dev +EXPORT_SYMBOL_GPL vmlinux 0x2e2360b1 ftrace_set_global_notrace +EXPORT_SYMBOL_GPL vmlinux 0x2e370c2e extcon_get_edev_by_phandle +EXPORT_SYMBOL_GPL vmlinux 0x2e3ab556 devm_fwnode_pwm_get +EXPORT_SYMBOL_GPL vmlinux 0x2e5178e1 devm_gpiod_put_array +EXPORT_SYMBOL_GPL vmlinux 0x2e64439d register_kretprobe +EXPORT_SYMBOL_GPL vmlinux 0x2e654837 alloc_dax +EXPORT_SYMBOL_GPL vmlinux 0x2e6f0143 mnt_drop_write +EXPORT_SYMBOL_GPL vmlinux 0x2e778603 device_for_each_child +EXPORT_SYMBOL_GPL vmlinux 0x2e8afb4f vfio_spapr_pci_eeh_open +EXPORT_SYMBOL_GPL vmlinux 0x2ea5ffd7 spi_controller_dma_map_mem_op_data +EXPORT_SYMBOL_GPL vmlinux 0x2ea9243a serial8250_rpm_put +EXPORT_SYMBOL_GPL vmlinux 0x2ebb19fd execute_in_process_context +EXPORT_SYMBOL_GPL vmlinux 0x2ebc159b mutex_lock_io +EXPORT_SYMBOL_GPL vmlinux 0x2ebc2b23 sk_msg_return_zero +EXPORT_SYMBOL_GPL vmlinux 0x2ebe3135 cpu_is_hotpluggable +EXPORT_SYMBOL_GPL vmlinux 0x2ec28364 wm831x_reg_lock +EXPORT_SYMBOL_GPL vmlinux 0x2ee1ada5 dev_pm_opp_is_turbo +EXPORT_SYMBOL_GPL vmlinux 0x2ee7eb37 ping_recvmsg +EXPORT_SYMBOL_GPL vmlinux 0x2eea4a07 sdio_readl +EXPORT_SYMBOL_GPL vmlinux 0x2efafc3b regmap_get_raw_read_max +EXPORT_SYMBOL_GPL vmlinux 0x2f0d9053 usb_otg_state_string +EXPORT_SYMBOL_GPL vmlinux 0x2f2c95c4 flush_work +EXPORT_SYMBOL_GPL vmlinux 0x2f3f0f42 unix_inq_len +EXPORT_SYMBOL_GPL vmlinux 0x2f4113a2 dcookie_register +EXPORT_SYMBOL_GPL vmlinux 0x2f43c305 mmc_app_cmd +EXPORT_SYMBOL_GPL vmlinux 0x2f49d16c crypto_unregister_ahash +EXPORT_SYMBOL_GPL vmlinux 0x2f50e8cb __tracepoint_neigh_cleanup_and_release +EXPORT_SYMBOL_GPL vmlinux 0x2f51d36a dm_send_uevents +EXPORT_SYMBOL_GPL vmlinux 0x2f598eea iomap_dio_rw +EXPORT_SYMBOL_GPL vmlinux 0x2f59f13a sysfs_create_mount_point +EXPORT_SYMBOL_GPL vmlinux 0x2f767beb crypto_shash_update +EXPORT_SYMBOL_GPL vmlinux 0x2f9e2d1c tpm_chip_stop +EXPORT_SYMBOL_GPL vmlinux 0x2f9f303e virtqueue_add_outbuf +EXPORT_SYMBOL_GPL vmlinux 0x2fa04fe2 devlink_port_params_unregister +EXPORT_SYMBOL_GPL vmlinux 0x2fb296c0 tty_buffer_set_limit +EXPORT_SYMBOL_GPL vmlinux 0x2fb4b33a memunmap_pages +EXPORT_SYMBOL_GPL vmlinux 0x2fbba4b3 shash_ahash_update +EXPORT_SYMBOL_GPL vmlinux 0x2fc0335a vfs_cancel_lock +EXPORT_SYMBOL_GPL vmlinux 0x2fc3eef3 clk_hw_is_enabled +EXPORT_SYMBOL_GPL vmlinux 0x2fe344c6 devm_gpiod_unhinge +EXPORT_SYMBOL_GPL vmlinux 0x2fe3e035 devm_gpiod_get +EXPORT_SYMBOL_GPL vmlinux 0x2ffbd18c opal_message_notifier_unregister +EXPORT_SYMBOL_GPL vmlinux 0x301832fb opal_async_get_token_interruptible +EXPORT_SYMBOL_GPL vmlinux 0x302597d2 device_remove_file +EXPORT_SYMBOL_GPL vmlinux 0x30358448 regulator_bulk_set_supply_names +EXPORT_SYMBOL_GPL vmlinux 0x30468d0b srp_attach_transport +EXPORT_SYMBOL_GPL vmlinux 0x30603719 policy_has_boost_freq +EXPORT_SYMBOL_GPL vmlinux 0x3061cfce ring_buffer_entries_cpu +EXPORT_SYMBOL_GPL vmlinux 0x30675ef8 bus_set_iommu +EXPORT_SYMBOL_GPL vmlinux 0x306f5576 pkcs7_verify +EXPORT_SYMBOL_GPL vmlinux 0x30949e9c tpmm_chip_alloc +EXPORT_SYMBOL_GPL vmlinux 0x309e8829 copro_handle_mm_fault +EXPORT_SYMBOL_GPL vmlinux 0x309fb838 usb_hcd_pci_shutdown +EXPORT_SYMBOL_GPL vmlinux 0x30bd8cbf kernel_read_file_from_path +EXPORT_SYMBOL_GPL vmlinux 0x30cd2122 pm_clk_create +EXPORT_SYMBOL_GPL vmlinux 0x30ceb038 crypto_alloc_acomp +EXPORT_SYMBOL_GPL vmlinux 0x30db458e inet6_compat_ioctl +EXPORT_SYMBOL_GPL vmlinux 0x30dc5309 serial8250_do_startup +EXPORT_SYMBOL_GPL vmlinux 0x30ec54c6 platform_device_unregister +EXPORT_SYMBOL_GPL vmlinux 0x30f3ea46 fsnotify_alloc_group +EXPORT_SYMBOL_GPL vmlinux 0x310a0792 mm_kobj +EXPORT_SYMBOL_GPL vmlinux 0x31176bad iomap_ioend_try_merge +EXPORT_SYMBOL_GPL vmlinux 0x31266931 con_debug_leave +EXPORT_SYMBOL_GPL vmlinux 0x31305069 crypto_stats_kpp_compute_shared_secret +EXPORT_SYMBOL_GPL vmlinux 0x31340286 sock_diag_unregister_inet_compat +EXPORT_SYMBOL_GPL vmlinux 0x31619abb serdev_device_get_tiocm +EXPORT_SYMBOL_GPL vmlinux 0x3163ab6b fork_usermode_blob +EXPORT_SYMBOL_GPL vmlinux 0x3175c48c regulator_is_equal +EXPORT_SYMBOL_GPL vmlinux 0x31839ad3 software_node_register_nodes +EXPORT_SYMBOL_GPL vmlinux 0x3183e8f1 __spi_register_driver +EXPORT_SYMBOL_GPL vmlinux 0x3192d768 cpufreq_remove_update_util_hook +EXPORT_SYMBOL_GPL vmlinux 0x319b79e7 tty_set_ldisc +EXPORT_SYMBOL_GPL vmlinux 0x31a95e8b ring_buffer_record_enable_cpu +EXPORT_SYMBOL_GPL vmlinux 0x31b1fb24 __rtnl_link_unregister +EXPORT_SYMBOL_GPL vmlinux 0x31b55bc5 lwtunnel_state_alloc +EXPORT_SYMBOL_GPL vmlinux 0x31bee91d of_changeset_action +EXPORT_SYMBOL_GPL vmlinux 0x31c68c01 __netpoll_free +EXPORT_SYMBOL_GPL vmlinux 0x31c7970f pciserial_suspend_ports +EXPORT_SYMBOL_GPL vmlinux 0x31d4045a rhashtable_insert_slow +EXPORT_SYMBOL_GPL vmlinux 0x31d96fd4 arizona_clk32k_enable +EXPORT_SYMBOL_GPL vmlinux 0x31e08158 ata_dev_disable +EXPORT_SYMBOL_GPL vmlinux 0x31e29bc4 inet6_hash_connect +EXPORT_SYMBOL_GPL vmlinux 0x321a3c00 rio_add_net +EXPORT_SYMBOL_GPL vmlinux 0x3224b2a9 mpi_read_raw_from_sgl +EXPORT_SYMBOL_GPL vmlinux 0x324a7606 __rtnl_link_register +EXPORT_SYMBOL_GPL vmlinux 0x325167e4 md_kick_rdev_from_array +EXPORT_SYMBOL_GPL vmlinux 0x3253db8f led_stop_software_blink +EXPORT_SYMBOL_GPL vmlinux 0x325d95f9 device_get_next_child_node +EXPORT_SYMBOL_GPL vmlinux 0x325e3e01 pci_hp_add_bridge +EXPORT_SYMBOL_GPL vmlinux 0x326cefe5 hwpoison_filter_dev_minor +EXPORT_SYMBOL_GPL vmlinux 0x32804d31 dev_pm_opp_of_cpumask_remove_table +EXPORT_SYMBOL_GPL vmlinux 0x32863013 sata_sff_hardreset +EXPORT_SYMBOL_GPL vmlinux 0x32949274 pstore_unregister +EXPORT_SYMBOL_GPL vmlinux 0x3298911b nvdimm_badblocks_populate +EXPORT_SYMBOL_GPL vmlinux 0x32ab06cc irq_percpu_is_enabled +EXPORT_SYMBOL_GPL vmlinux 0x32ab48c7 mbox_client_peek_data +EXPORT_SYMBOL_GPL vmlinux 0x32b13e5f device_initialize +EXPORT_SYMBOL_GPL vmlinux 0x32b8b077 devres_remove_group +EXPORT_SYMBOL_GPL vmlinux 0x32bc0fcf preempt_notifier_dec +EXPORT_SYMBOL_GPL vmlinux 0x32c2b200 validate_xmit_xfrm +EXPORT_SYMBOL_GPL vmlinux 0x32c3cb4e class_compat_register +EXPORT_SYMBOL_GPL vmlinux 0x32d097e0 pci_set_host_bridge_release +EXPORT_SYMBOL_GPL vmlinux 0x32e39c0c pinmux_generic_get_function_count +EXPORT_SYMBOL_GPL vmlinux 0x32e70dc2 irq_create_strict_mappings +EXPORT_SYMBOL_GPL vmlinux 0x32f33f4a ping_close +EXPORT_SYMBOL_GPL vmlinux 0x32f5be68 sock_gen_put +EXPORT_SYMBOL_GPL vmlinux 0x32fbaba4 __pm_relax +EXPORT_SYMBOL_GPL vmlinux 0x33087a60 get_slice_psize +EXPORT_SYMBOL_GPL vmlinux 0x33134396 tcp_sendpage_locked +EXPORT_SYMBOL_GPL vmlinux 0x3318d410 sfp_bus_add_upstream +EXPORT_SYMBOL_GPL vmlinux 0x33274171 ehci_hub_control +EXPORT_SYMBOL_GPL vmlinux 0x3328864a hwmon_device_unregister +EXPORT_SYMBOL_GPL vmlinux 0x333824ff usb_queue_reset_device +EXPORT_SYMBOL_GPL vmlinux 0x333eba6e to_software_node +EXPORT_SYMBOL_GPL vmlinux 0x3346372e hwmon_notify_event +EXPORT_SYMBOL_GPL vmlinux 0x335c570f enable_percpu_irq +EXPORT_SYMBOL_GPL vmlinux 0x335d2932 disk_part_iter_exit +EXPORT_SYMBOL_GPL vmlinux 0x335daffc crypto_unregister_akcipher +EXPORT_SYMBOL_GPL vmlinux 0x335f07ba regulator_set_current_limit_regmap +EXPORT_SYMBOL_GPL vmlinux 0x3365898f ata_sff_tf_read +EXPORT_SYMBOL_GPL vmlinux 0x33718e5a devlink_sb_register +EXPORT_SYMBOL_GPL vmlinux 0x33744569 __tracepoint_napi_poll +EXPORT_SYMBOL_GPL vmlinux 0x338dbe78 pci_generic_config_read32 +EXPORT_SYMBOL_GPL vmlinux 0x339166c7 remove_phb_dynamic +EXPORT_SYMBOL_GPL vmlinux 0x33a88f1f usb_autopm_get_interface_no_resume +EXPORT_SYMBOL_GPL vmlinux 0x33bc59b2 gpiochip_remove_pin_ranges +EXPORT_SYMBOL_GPL vmlinux 0x33c1cef6 devlink_reload_enable +EXPORT_SYMBOL_GPL vmlinux 0x33c6208a ata_noop_qc_prep +EXPORT_SYMBOL_GPL vmlinux 0x33cd08fd shmem_zero_setup +EXPORT_SYMBOL_GPL vmlinux 0x33d91a04 pci_epf_unbind +EXPORT_SYMBOL_GPL vmlinux 0x33efc8c8 trace_clock_local +EXPORT_SYMBOL_GPL vmlinux 0x340809bb __clk_mux_determine_rate +EXPORT_SYMBOL_GPL vmlinux 0x3426392d regulator_list_voltage_linear +EXPORT_SYMBOL_GPL vmlinux 0x342ffd08 dev_pm_opp_set_sharing_cpus +EXPORT_SYMBOL_GPL vmlinux 0x34407691 crypto_has_ahash +EXPORT_SYMBOL_GPL vmlinux 0x345ae105 irq_get_irq_data +EXPORT_SYMBOL_GPL vmlinux 0x34605a75 __inet_inherit_port +EXPORT_SYMBOL_GPL vmlinux 0x347ab653 __rtc_register_device +EXPORT_SYMBOL_GPL vmlinux 0x34836905 tty_buffer_lock_exclusive +EXPORT_SYMBOL_GPL vmlinux 0x348467cc __pm_runtime_resume +EXPORT_SYMBOL_GPL vmlinux 0x348ad3ac devm_power_supply_register_no_ws +EXPORT_SYMBOL_GPL vmlinux 0x34990200 balloon_page_list_dequeue +EXPORT_SYMBOL_GPL vmlinux 0x349a6b78 unregister_virtio_driver +EXPORT_SYMBOL_GPL vmlinux 0x349ad7cc serial8250_release_dma +EXPORT_SYMBOL_GPL vmlinux 0x34a4b71b __tracepoint_detach_device_from_domain +EXPORT_SYMBOL_GPL vmlinux 0x34bab869 look_up_OID +EXPORT_SYMBOL_GPL vmlinux 0x34c6a992 ip6_flush_pending_frames +EXPORT_SYMBOL_GPL vmlinux 0x34d3443c pm_genpd_remove_device +EXPORT_SYMBOL_GPL vmlinux 0x34d8c007 dma_buf_attach +EXPORT_SYMBOL_GPL vmlinux 0x34df20f6 gpiochip_request_own_desc +EXPORT_SYMBOL_GPL vmlinux 0x34f78c3c compat_only_sysfs_link_entry_to_kobj +EXPORT_SYMBOL_GPL vmlinux 0x34fd92bb regulator_suspend_disable +EXPORT_SYMBOL_GPL vmlinux 0x351ce8bf rdev_get_regmap +EXPORT_SYMBOL_GPL vmlinux 0x352aab93 gpiochip_populate_parent_fwspec_fourcell +EXPORT_SYMBOL_GPL vmlinux 0x352b3813 maxim_charger_calc_reg_current +EXPORT_SYMBOL_GPL vmlinux 0x352ec68b bpf_offload_dev_destroy +EXPORT_SYMBOL_GPL vmlinux 0x35357857 da9052_disable_irq_nosync +EXPORT_SYMBOL_GPL vmlinux 0x3535ef91 of_property_read_u64_index +EXPORT_SYMBOL_GPL vmlinux 0x3538c27f rtc_class_open +EXPORT_SYMBOL_GPL vmlinux 0x353ae4ef edac_pci_del_device +EXPORT_SYMBOL_GPL vmlinux 0x3544ce42 rio_release_inb_pwrite +EXPORT_SYMBOL_GPL vmlinux 0x3553eb1e tty_set_termios +EXPORT_SYMBOL_GPL vmlinux 0x355ea755 devm_clk_unregister +EXPORT_SYMBOL_GPL vmlinux 0x3567743b vfio_external_user_iommu_id +EXPORT_SYMBOL_GPL vmlinux 0x35747223 rio_release_inb_mbox +EXPORT_SYMBOL_GPL vmlinux 0x358ff60f twl_get_hfclk_rate +EXPORT_SYMBOL_GPL vmlinux 0x35a12943 fuse_abort_conn +EXPORT_SYMBOL_GPL vmlinux 0x35aa6e73 tty_port_register_device_serdev +EXPORT_SYMBOL_GPL vmlinux 0x35aed3bf pinctrl_count_index_with_args +EXPORT_SYMBOL_GPL vmlinux 0x35b092cf sk_set_memalloc +EXPORT_SYMBOL_GPL vmlinux 0x35bcb61e devm_usb_put_phy +EXPORT_SYMBOL_GPL vmlinux 0x35d7d50a devlink_port_attrs_set +EXPORT_SYMBOL_GPL vmlinux 0x35e477b0 rt_mutex_trylock +EXPORT_SYMBOL_GPL vmlinux 0x35e6568a pci_d3cold_enable +EXPORT_SYMBOL_GPL vmlinux 0x35f31c54 arch_set_freq_scale +EXPORT_SYMBOL_GPL vmlinux 0x35f91241 devlink_flash_update_end_notify +EXPORT_SYMBOL_GPL vmlinux 0x36075bb5 iommu_group_register_notifier +EXPORT_SYMBOL_GPL vmlinux 0x360c4375 page_cache_sync_readahead +EXPORT_SYMBOL_GPL vmlinux 0x360fd402 vring_new_virtqueue +EXPORT_SYMBOL_GPL vmlinux 0x3622d107 usb_unlocked_disable_lpm +EXPORT_SYMBOL_GPL vmlinux 0x3623e46f ip6_sk_dst_lookup_flow +EXPORT_SYMBOL_GPL vmlinux 0x36242943 switchdev_deferred_process +EXPORT_SYMBOL_GPL vmlinux 0x363f02a2 devm_regulator_register_supply_alias +EXPORT_SYMBOL_GPL vmlinux 0x363f9e53 mm_iommu_is_devmem +EXPORT_SYMBOL_GPL vmlinux 0x366212df vfs_submount +EXPORT_SYMBOL_GPL vmlinux 0x3680161f dev_pm_opp_set_prop_name +EXPORT_SYMBOL_GPL vmlinux 0x368ed367 pci_epc_add_epf +EXPORT_SYMBOL_GPL vmlinux 0x369185d3 regulator_map_voltage_linear +EXPORT_SYMBOL_GPL vmlinux 0x3699047c fsnotify_put_mark +EXPORT_SYMBOL_GPL vmlinux 0x369beb17 __devm_regmap_init_mmio_clk +EXPORT_SYMBOL_GPL vmlinux 0x369fcd70 tracing_snapshot +EXPORT_SYMBOL_GPL vmlinux 0x36a7d044 spi_bus_lock +EXPORT_SYMBOL_GPL vmlinux 0x36a7f1fb ipv6_opt_accepted +EXPORT_SYMBOL_GPL vmlinux 0x36b3430c devm_nvmem_register +EXPORT_SYMBOL_GPL vmlinux 0x36b70b1b srp_stop_rport_timers +EXPORT_SYMBOL_GPL vmlinux 0x36c314a0 wbt_enable_default +EXPORT_SYMBOL_GPL vmlinux 0x36d05a3b dw_pcie_write_dbi +EXPORT_SYMBOL_GPL vmlinux 0x36d45251 device_connection_remove +EXPORT_SYMBOL_GPL vmlinux 0x36d8e830 crypto_unregister_skcipher +EXPORT_SYMBOL_GPL vmlinux 0x36ea9ac6 devm_kmemdup +EXPORT_SYMBOL_GPL vmlinux 0x36ed9c9f usb_string +EXPORT_SYMBOL_GPL vmlinux 0x37056ed0 cgrp_dfl_root +EXPORT_SYMBOL_GPL vmlinux 0x37110142 sdio_f0_writeb +EXPORT_SYMBOL_GPL vmlinux 0x3743578b blkdev_nr_zones +EXPORT_SYMBOL_GPL vmlinux 0x374c53e1 ata_get_cmd_descript +EXPORT_SYMBOL_GPL vmlinux 0x3751e369 power_supply_unregister +EXPORT_SYMBOL_GPL vmlinux 0x3773e731 sata_scr_write_flush +EXPORT_SYMBOL_GPL vmlinux 0x377bbcbc pm_suspend_target_state +EXPORT_SYMBOL_GPL vmlinux 0x3787098e skb_send_sock_locked +EXPORT_SYMBOL_GPL vmlinux 0x378c315c regulator_get_voltage_rdev +EXPORT_SYMBOL_GPL vmlinux 0x379416e2 __tcp_bpf_recvmsg +EXPORT_SYMBOL_GPL vmlinux 0x37961ed4 sock_zerocopy_realloc +EXPORT_SYMBOL_GPL vmlinux 0x37a7655f __ip6_local_out +EXPORT_SYMBOL_GPL vmlinux 0x37b297c6 __tracepoint_block_bio_remap +EXPORT_SYMBOL_GPL vmlinux 0x37bd8543 devm_phy_put +EXPORT_SYMBOL_GPL vmlinux 0x37d31232 devlink_register +EXPORT_SYMBOL_GPL vmlinux 0x37d4f34b dev_pm_qos_add_request +EXPORT_SYMBOL_GPL vmlinux 0x37d5eaf0 trace_seq_vprintf +EXPORT_SYMBOL_GPL vmlinux 0x37d8ce63 mddev_congested +EXPORT_SYMBOL_GPL vmlinux 0x37ea659f add_memory +EXPORT_SYMBOL_GPL vmlinux 0x3801776b __ioread32_copy +EXPORT_SYMBOL_GPL vmlinux 0x3808facb blk_mq_force_complete_rq +EXPORT_SYMBOL_GPL vmlinux 0x3813b14d nvdimm_to_bus +EXPORT_SYMBOL_GPL vmlinux 0x382afe81 dma_request_chan_by_mask +EXPORT_SYMBOL_GPL vmlinux 0x382ec4dc sbitmap_get +EXPORT_SYMBOL_GPL vmlinux 0x38374815 clear_selection +EXPORT_SYMBOL_GPL vmlinux 0x38416945 clk_register_mux_table +EXPORT_SYMBOL_GPL vmlinux 0x3844edb2 devm_pinctrl_unregister +EXPORT_SYMBOL_GPL vmlinux 0x384c7b5f irq_domain_get_irq_data +EXPORT_SYMBOL_GPL vmlinux 0x3856377b save_stack_trace_regs +EXPORT_SYMBOL_GPL vmlinux 0x385d38db irq_find_mapping +EXPORT_SYMBOL_GPL vmlinux 0x385e99d4 power_supply_register +EXPORT_SYMBOL_GPL vmlinux 0x3866e217 nvmem_device_write +EXPORT_SYMBOL_GPL vmlinux 0x388c2af8 skb_to_sgvec_nomark +EXPORT_SYMBOL_GPL vmlinux 0x388e7f1e crypto_aead_encrypt +EXPORT_SYMBOL_GPL vmlinux 0x3893ba3a mpic_subsys +EXPORT_SYMBOL_GPL vmlinux 0x38a23a6e ip6_update_pmtu +EXPORT_SYMBOL_GPL vmlinux 0x38a39b70 extcon_unregister_notifier_all +EXPORT_SYMBOL_GPL vmlinux 0x38aa1397 gpiod_add_lookup_table +EXPORT_SYMBOL_GPL vmlinux 0x38b35d05 pci_ignore_hotplug +EXPORT_SYMBOL_GPL vmlinux 0x38c0c615 icc_set_bw +EXPORT_SYMBOL_GPL vmlinux 0x38cdc0df pm_clk_runtime_resume +EXPORT_SYMBOL_GPL vmlinux 0x38d23562 badrange_add +EXPORT_SYMBOL_GPL vmlinux 0x38df8392 platform_irq_count +EXPORT_SYMBOL_GPL vmlinux 0x38e5bc5a clk_set_rate_range +EXPORT_SYMBOL_GPL vmlinux 0x38edffc0 to_nd_region +EXPORT_SYMBOL_GPL vmlinux 0x38ee9ae6 ip4_datagram_release_cb +EXPORT_SYMBOL_GPL vmlinux 0x38fa1fbb of_reset_control_array_get +EXPORT_SYMBOL_GPL vmlinux 0x39070c9b regulator_set_drvdata +EXPORT_SYMBOL_GPL vmlinux 0x3907cf4d of_regulator_match +EXPORT_SYMBOL_GPL vmlinux 0x39110f64 blk_queue_max_zone_append_sectors +EXPORT_SYMBOL_GPL vmlinux 0x3917388d __tracepoint_wbc_writepage +EXPORT_SYMBOL_GPL vmlinux 0x39193e10 bpf_trace_run11 +EXPORT_SYMBOL_GPL vmlinux 0x39260837 dev_pm_genpd_set_performance_state +EXPORT_SYMBOL_GPL vmlinux 0x392c6bcb sysfs_add_file_to_group +EXPORT_SYMBOL_GPL vmlinux 0x393457f7 set_primary_fwnode +EXPORT_SYMBOL_GPL vmlinux 0x39516662 platform_device_add_properties +EXPORT_SYMBOL_GPL vmlinux 0x395bbb56 usb_remove_phy +EXPORT_SYMBOL_GPL vmlinux 0x396909d6 device_create +EXPORT_SYMBOL_GPL vmlinux 0x39726065 device_change_owner +EXPORT_SYMBOL_GPL vmlinux 0x3972709a lwtunnel_build_state +EXPORT_SYMBOL_GPL vmlinux 0x397bc259 crypto_grab_akcipher +EXPORT_SYMBOL_GPL vmlinux 0x397f5e10 smpboot_register_percpu_thread +EXPORT_SYMBOL_GPL vmlinux 0x398397b4 blk_mq_alloc_request_hctx +EXPORT_SYMBOL_GPL vmlinux 0x3985397a led_set_brightness_nopm +EXPORT_SYMBOL_GPL vmlinux 0x399533e0 platform_get_irq_optional +EXPORT_SYMBOL_GPL vmlinux 0x39953b21 debugfs_file_put +EXPORT_SYMBOL_GPL vmlinux 0x39a7affc driver_deferred_probe_timeout +EXPORT_SYMBOL_GPL vmlinux 0x39b4dc93 rht_bucket_nested_insert +EXPORT_SYMBOL_GPL vmlinux 0x39e61495 nf_logger_request_module +EXPORT_SYMBOL_GPL vmlinux 0x39f36e9a skcipher_walk_async +EXPORT_SYMBOL_GPL vmlinux 0x39fa9ca4 dpm_for_each_dev +EXPORT_SYMBOL_GPL vmlinux 0x3a002a13 i2c_match_id +EXPORT_SYMBOL_GPL vmlinux 0x3a02baa2 usb_altnum_to_altsetting +EXPORT_SYMBOL_GPL vmlinux 0x3a0efbbf genphy_c45_read_pma +EXPORT_SYMBOL_GPL vmlinux 0x3a128786 pci_store_saved_state +EXPORT_SYMBOL_GPL vmlinux 0x3a2e1b39 dm_report_zones_cb +EXPORT_SYMBOL_GPL vmlinux 0x3a32bb32 regulator_map_voltage_linear_range +EXPORT_SYMBOL_GPL vmlinux 0x3a450713 gpiochip_line_is_valid +EXPORT_SYMBOL_GPL vmlinux 0x3a4520c1 tpm_chip_start +EXPORT_SYMBOL_GPL vmlinux 0x3a4f6a32 ata_sff_interrupt +EXPORT_SYMBOL_GPL vmlinux 0x3a536bd7 ring_buffer_read_finish +EXPORT_SYMBOL_GPL vmlinux 0x3a579da6 pm_generic_poweroff_late +EXPORT_SYMBOL_GPL vmlinux 0x3a61280c spi_mem_adjust_op_size +EXPORT_SYMBOL_GPL vmlinux 0x3a61854f xhci_shutdown +EXPORT_SYMBOL_GPL vmlinux 0x3a7e26ed pci_find_ht_capability +EXPORT_SYMBOL_GPL vmlinux 0x3a9be019 asymmetric_key_id_partial +EXPORT_SYMBOL_GPL vmlinux 0x3aa24c4a pm_generic_thaw +EXPORT_SYMBOL_GPL vmlinux 0x3aa43d4b bio_associate_blkg_from_css +EXPORT_SYMBOL_GPL vmlinux 0x3ab5527e regulator_disable +EXPORT_SYMBOL_GPL vmlinux 0x3abd7045 crypto_unregister_aead +EXPORT_SYMBOL_GPL vmlinux 0x3ac2afa9 spi_bus_type +EXPORT_SYMBOL_GPL vmlinux 0x3acdf325 twl4030_audio_enable_resource +EXPORT_SYMBOL_GPL vmlinux 0x3ae67757 pci_user_write_config_dword +EXPORT_SYMBOL_GPL vmlinux 0x3b0310b7 bus_unregister +EXPORT_SYMBOL_GPL vmlinux 0x3b035f21 pinctrl_pm_select_default_state +EXPORT_SYMBOL_GPL vmlinux 0x3b08dcbd sk_msg_clone +EXPORT_SYMBOL_GPL vmlinux 0x3b0de930 clk_hw_unregister_mux +EXPORT_SYMBOL_GPL vmlinux 0x3b16a015 ehci_setup +EXPORT_SYMBOL_GPL vmlinux 0x3b1ee5b4 powercap_register_zone +EXPORT_SYMBOL_GPL vmlinux 0x3b4c240a display_timings_release +EXPORT_SYMBOL_GPL vmlinux 0x3b4c8082 sk_psock_msg_verdict +EXPORT_SYMBOL_GPL vmlinux 0x3b5ee099 kthread_cancel_work_sync +EXPORT_SYMBOL_GPL vmlinux 0x3b5febad edac_mc_free +EXPORT_SYMBOL_GPL vmlinux 0x3b6339aa gpiod_unexport +EXPORT_SYMBOL_GPL vmlinux 0x3b74e2d9 crypto_ahash_final +EXPORT_SYMBOL_GPL vmlinux 0x3b89905c crypto_rng_reset +EXPORT_SYMBOL_GPL vmlinux 0x3b8daeec platform_msi_domain_alloc_irqs +EXPORT_SYMBOL_GPL vmlinux 0x3b94a65a sbitmap_queue_init_node +EXPORT_SYMBOL_GPL vmlinux 0x3b95f543 klp_shadow_free +EXPORT_SYMBOL_GPL vmlinux 0x3b9adceb ata_scsi_port_error_handler +EXPORT_SYMBOL_GPL vmlinux 0x3b9e0f69 cpufreq_dbs_governor_start +EXPORT_SYMBOL_GPL vmlinux 0x3ba01b47 get_compat_sigset +EXPORT_SYMBOL_GPL vmlinux 0x3ba4609e skb_scrub_packet +EXPORT_SYMBOL_GPL vmlinux 0x3ba9c1b3 devm_device_add_group +EXPORT_SYMBOL_GPL vmlinux 0x3baf6939 i2c_dw_prepare_clk +EXPORT_SYMBOL_GPL vmlinux 0x3bb30cf7 ncsi_stop_dev +EXPORT_SYMBOL_GPL vmlinux 0x3bb55fe3 phy_resolve_aneg_linkmode +EXPORT_SYMBOL_GPL vmlinux 0x3bbd2937 gpiod_export_link +EXPORT_SYMBOL_GPL vmlinux 0x3bc94f9f regulator_set_voltage_sel_pickable_regmap +EXPORT_SYMBOL_GPL vmlinux 0x3bd9cff3 phy_modify +EXPORT_SYMBOL_GPL vmlinux 0x3bdb5d28 alg_test +EXPORT_SYMBOL_GPL vmlinux 0x3bf17755 mpi_read_buffer +EXPORT_SYMBOL_GPL vmlinux 0x3c0af187 usb_autopm_put_interface_no_suspend +EXPORT_SYMBOL_GPL vmlinux 0x3c0c5dca ip_route_output_tunnel +EXPORT_SYMBOL_GPL vmlinux 0x3c13995e class_destroy +EXPORT_SYMBOL_GPL vmlinux 0x3c15e6f4 arizona_pm_ops +EXPORT_SYMBOL_GPL vmlinux 0x3c1c3725 rcu_fwd_progress_check +EXPORT_SYMBOL_GPL vmlinux 0x3c219227 irq_chip_unmask_parent +EXPORT_SYMBOL_GPL vmlinux 0x3c2a73a6 eeh_pe_configure +EXPORT_SYMBOL_GPL vmlinux 0x3c2b68f7 of_changeset_apply +EXPORT_SYMBOL_GPL vmlinux 0x3c361bfd __regmap_init_spi +EXPORT_SYMBOL_GPL vmlinux 0x3c3db240 virtqueue_disable_cb +EXPORT_SYMBOL_GPL vmlinux 0x3c50e06d devlink_region_snapshot_id_get +EXPORT_SYMBOL_GPL vmlinux 0x3c56bad0 usb_hcd_unmap_urb_setup_for_dma +EXPORT_SYMBOL_GPL vmlinux 0x3c5a9cc4 fuse_conn_put +EXPORT_SYMBOL_GPL vmlinux 0x3c5f30ab rio_release_inb_dbell +EXPORT_SYMBOL_GPL vmlinux 0x3c602ac2 pm_runtime_irq_safe +EXPORT_SYMBOL_GPL vmlinux 0x3c681dc4 ring_buffer_record_disable +EXPORT_SYMBOL_GPL vmlinux 0x3c6f270d dev_pm_opp_get_suspend_opp_freq +EXPORT_SYMBOL_GPL vmlinux 0x3c868368 __rio_local_read_config_32 +EXPORT_SYMBOL_GPL vmlinux 0x3c901765 iomap_bmap +EXPORT_SYMBOL_GPL vmlinux 0x3c944641 posix_acl_default_xattr_handler +EXPORT_SYMBOL_GPL vmlinux 0x3c9633f2 rhashtable_walk_next +EXPORT_SYMBOL_GPL vmlinux 0x3ca61719 perf_event_create_kernel_counter +EXPORT_SYMBOL_GPL vmlinux 0x3cd06035 add_input_randomness +EXPORT_SYMBOL_GPL vmlinux 0x3cf69baf slice_get_unmapped_area +EXPORT_SYMBOL_GPL vmlinux 0x3cfb796d kvmppc_save_tm_hv +EXPORT_SYMBOL_GPL vmlinux 0x3cfca60a bio_trim +EXPORT_SYMBOL_GPL vmlinux 0x3d0c3591 xfrm_output_resume +EXPORT_SYMBOL_GPL vmlinux 0x3d1b3364 gpiochip_free_own_desc +EXPORT_SYMBOL_GPL vmlinux 0x3d25a2bb devm_regulator_put +EXPORT_SYMBOL_GPL vmlinux 0x3d299dfb static_key_enable_cpuslocked +EXPORT_SYMBOL_GPL vmlinux 0x3d2b2267 module_mutex +EXPORT_SYMBOL_GPL vmlinux 0x3d318a08 i2c_dw_validate_speed +EXPORT_SYMBOL_GPL vmlinux 0x3d37ad23 register_virtio_driver +EXPORT_SYMBOL_GPL vmlinux 0x3d37c72c edac_device_free_ctl_info +EXPORT_SYMBOL_GPL vmlinux 0x3d388324 dpm_resume_end +EXPORT_SYMBOL_GPL vmlinux 0x3d415aeb ata_sff_data_xfer +EXPORT_SYMBOL_GPL vmlinux 0x3d510a7b rcu_jiffies_till_stall_check +EXPORT_SYMBOL_GPL vmlinux 0x3d555349 blkcg_deactivate_policy +EXPORT_SYMBOL_GPL vmlinux 0x3d612305 iommu_direction_to_tce_perm +EXPORT_SYMBOL_GPL vmlinux 0x3d7a2a43 spi_mem_driver_register_with_owner +EXPORT_SYMBOL_GPL vmlinux 0x3d867dd0 raw_v4_hashinfo +EXPORT_SYMBOL_GPL vmlinux 0x3d8baf3b zs_huge_class_size +EXPORT_SYMBOL_GPL vmlinux 0x3d9143a2 usb_submit_urb +EXPORT_SYMBOL_GPL vmlinux 0x3d9a6241 tty_kclose +EXPORT_SYMBOL_GPL vmlinux 0x3db15d1b skb_zerocopy_iter_dgram +EXPORT_SYMBOL_GPL vmlinux 0x3db7cc4d __cpufreq_driver_target +EXPORT_SYMBOL_GPL vmlinux 0x3dc526a9 arizona_of_match +EXPORT_SYMBOL_GPL vmlinux 0x3dc9aa78 fwnode_graph_get_remote_node +EXPORT_SYMBOL_GPL vmlinux 0x3dcb3b6a blk_queue_rq_timeout +EXPORT_SYMBOL_GPL vmlinux 0x3dd94f5b clockevents_register_device +EXPORT_SYMBOL_GPL vmlinux 0x3dd9964a trace_array_get_by_name +EXPORT_SYMBOL_GPL vmlinux 0x3de9cae1 crypto_remove_final +EXPORT_SYMBOL_GPL vmlinux 0x3df8a56a fscrypt_show_test_dummy_encryption +EXPORT_SYMBOL_GPL vmlinux 0x3e0fbd73 rio_register_driver +EXPORT_SYMBOL_GPL vmlinux 0x3e10f7ce usb_enable_lpm +EXPORT_SYMBOL_GPL vmlinux 0x3e1c40fb mmput +EXPORT_SYMBOL_GPL vmlinux 0x3e22181e regulator_bulk_unregister_supply_alias +EXPORT_SYMBOL_GPL vmlinux 0x3e23c1e9 pm_runtime_suspended_time +EXPORT_SYMBOL_GPL vmlinux 0x3e38aa66 pnv_ocxl_get_actag +EXPORT_SYMBOL_GPL vmlinux 0x3e3bc1bd pci_add_dynid +EXPORT_SYMBOL_GPL vmlinux 0x3e45d63f tty_get_pgrp +EXPORT_SYMBOL_GPL vmlinux 0x3e472956 srcu_torture_stats_print +EXPORT_SYMBOL_GPL vmlinux 0x3e4e9191 alarm_start_relative +EXPORT_SYMBOL_GPL vmlinux 0x3e5b832d rcuwait_wake_up +EXPORT_SYMBOL_GPL vmlinux 0x3e629564 of_get_fb_videomode +EXPORT_SYMBOL_GPL vmlinux 0x3e7080cb mpi_read_from_buffer +EXPORT_SYMBOL_GPL vmlinux 0x3e82ea52 ksm_madvise +EXPORT_SYMBOL_GPL vmlinux 0x3e92744e dma_buf_detach +EXPORT_SYMBOL_GPL vmlinux 0x3eaf9ba8 perf_event_read_value +EXPORT_SYMBOL_GPL vmlinux 0x3ecdaa2b __find_linux_pte +EXPORT_SYMBOL_GPL vmlinux 0x3edcf893 i2c_adapter_type +EXPORT_SYMBOL_GPL vmlinux 0x3ef051c8 crypto_inc +EXPORT_SYMBOL_GPL vmlinux 0x3ef3f4b8 device_rename +EXPORT_SYMBOL_GPL vmlinux 0x3efbb03a ref_module +EXPORT_SYMBOL_GPL vmlinux 0x3efcab1f class_remove_file_ns +EXPORT_SYMBOL_GPL vmlinux 0x3efd1889 dax_direct_access +EXPORT_SYMBOL_GPL vmlinux 0x3f083a32 kthread_unpark +EXPORT_SYMBOL_GPL vmlinux 0x3f09982d __phy_modify_mmd_changed +EXPORT_SYMBOL_GPL vmlinux 0x3f1cfc9d wm8350_set_bits +EXPORT_SYMBOL_GPL vmlinux 0x3f26d4e0 led_trigger_event +EXPORT_SYMBOL_GPL vmlinux 0x3f2fca68 list_lru_add +EXPORT_SYMBOL_GPL vmlinux 0x3f305ffd rio_add_device +EXPORT_SYMBOL_GPL vmlinux 0x3f4632cd phy_10gbit_features +EXPORT_SYMBOL_GPL vmlinux 0x3f761e7d gpiochip_irqchip_add_key +EXPORT_SYMBOL_GPL vmlinux 0x3f84bcd7 dax_alive +EXPORT_SYMBOL_GPL vmlinux 0x3f8ab72e devlink_fmsg_bool_put +EXPORT_SYMBOL_GPL vmlinux 0x3f8f7659 rio_route_clr_table +EXPORT_SYMBOL_GPL vmlinux 0x3fa57276 of_address_to_resource +EXPORT_SYMBOL_GPL vmlinux 0x3fab0f1b debugfs_create_file_unsafe +EXPORT_SYMBOL_GPL vmlinux 0x3fcdb2df ata_std_error_handler +EXPORT_SYMBOL_GPL vmlinux 0x3fd47592 fib_rules_lookup +EXPORT_SYMBOL_GPL vmlinux 0x3fe35aea irq_bypass_unregister_consumer +EXPORT_SYMBOL_GPL vmlinux 0x3fe5fc27 subsys_system_register +EXPORT_SYMBOL_GPL vmlinux 0x3fe6c346 devlink_fmsg_binary_pair_put +EXPORT_SYMBOL_GPL vmlinux 0x3ffdacf3 timerqueue_iterate_next +EXPORT_SYMBOL_GPL vmlinux 0x4025346b ohci_suspend +EXPORT_SYMBOL_GPL vmlinux 0x402eeb4a pm_genpd_remove +EXPORT_SYMBOL_GPL vmlinux 0x4030ceec security_inode_setattr +EXPORT_SYMBOL_GPL vmlinux 0x403f9529 gpio_request_one +EXPORT_SYMBOL_GPL vmlinux 0x40440c26 page_cache_async_readahead +EXPORT_SYMBOL_GPL vmlinux 0x40458b8f spi_slave_abort +EXPORT_SYMBOL_GPL vmlinux 0x40473cd0 virtio_break_device +EXPORT_SYMBOL_GPL vmlinux 0x404bcfa7 cn_add_callback +EXPORT_SYMBOL_GPL vmlinux 0x404dca41 ethnl_cable_test_pulse +EXPORT_SYMBOL_GPL vmlinux 0x40532dee uart_handle_cts_change +EXPORT_SYMBOL_GPL vmlinux 0x4053614f crypto_register_rng +EXPORT_SYMBOL_GPL vmlinux 0x4056e4d8 crypto_find_alg +EXPORT_SYMBOL_GPL vmlinux 0x40585ed8 pcibios_finish_adding_to_bus +EXPORT_SYMBOL_GPL vmlinux 0x406062b8 devm_fwnode_gpiod_get_index +EXPORT_SYMBOL_GPL vmlinux 0x4065d168 pm_print_active_wakeup_sources +EXPORT_SYMBOL_GPL vmlinux 0x40688a83 serdev_device_write_buf +EXPORT_SYMBOL_GPL vmlinux 0x40692360 pcie_update_link_speed +EXPORT_SYMBOL_GPL vmlinux 0x406c4cb1 hrtimer_resolution +EXPORT_SYMBOL_GPL vmlinux 0x4071b517 out_of_line_wait_on_bit_timeout +EXPORT_SYMBOL_GPL vmlinux 0x407673c9 ata_bmdma_error_handler +EXPORT_SYMBOL_GPL vmlinux 0x40794d79 thermal_zone_device_unregister +EXPORT_SYMBOL_GPL vmlinux 0x4099f919 tun_ptr_free +EXPORT_SYMBOL_GPL vmlinux 0x40a3919d blk_steal_bios +EXPORT_SYMBOL_GPL vmlinux 0x40b547e8 usb_enable_ltm +EXPORT_SYMBOL_GPL vmlinux 0x40b5be99 xive_native_populate_irq_data +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 0x40fdee73 dma_release_channel +EXPORT_SYMBOL_GPL vmlinux 0x4100a662 clk_get_scaled_duty_cycle +EXPORT_SYMBOL_GPL vmlinux 0x410b0dd2 debugfs_file_get +EXPORT_SYMBOL_GPL vmlinux 0x410d29ab task_cgroup_path +EXPORT_SYMBOL_GPL vmlinux 0x411688e8 rio_mport_send_doorbell +EXPORT_SYMBOL_GPL vmlinux 0x412a588d gpiod_set_value +EXPORT_SYMBOL_GPL vmlinux 0x412bc681 ring_buffer_empty_cpu +EXPORT_SYMBOL_GPL vmlinux 0x4147c73c tpm_get_random +EXPORT_SYMBOL_GPL vmlinux 0x414cc8da sock_diag_check_cookie +EXPORT_SYMBOL_GPL vmlinux 0x414d119a videomode_from_timings +EXPORT_SYMBOL_GPL vmlinux 0x414d7aae xive_native_get_queue_state +EXPORT_SYMBOL_GPL vmlinux 0x4165efdf tcp_register_ulp +EXPORT_SYMBOL_GPL vmlinux 0x4169c698 dma_buf_export +EXPORT_SYMBOL_GPL vmlinux 0x41814cb8 dirty_writeback_interval +EXPORT_SYMBOL_GPL vmlinux 0x418873cc irq_bypass_register_producer +EXPORT_SYMBOL_GPL vmlinux 0x419e7efd sfp_module_stop +EXPORT_SYMBOL_GPL vmlinux 0x41af1c70 crypto_register_skciphers +EXPORT_SYMBOL_GPL vmlinux 0x41af58ab irq_domain_create_hierarchy +EXPORT_SYMBOL_GPL vmlinux 0x41b200f9 percpu_ref_init +EXPORT_SYMBOL_GPL vmlinux 0x41c3d188 __get_task_comm +EXPORT_SYMBOL_GPL vmlinux 0x41d4b524 gpiod_get_raw_value_cansleep +EXPORT_SYMBOL_GPL vmlinux 0x41e8f6c9 transport_class_unregister +EXPORT_SYMBOL_GPL vmlinux 0x41ed3cec eventfd_ctx_remove_wait_queue +EXPORT_SYMBOL_GPL vmlinux 0x41fc81ee syscon_node_to_regmap +EXPORT_SYMBOL_GPL vmlinux 0x42041512 i2c_get_dma_safe_msg_buf +EXPORT_SYMBOL_GPL vmlinux 0x420539e9 __blk_req_zone_write_unlock +EXPORT_SYMBOL_GPL vmlinux 0x420f3d01 nvmem_unregister_notifier +EXPORT_SYMBOL_GPL vmlinux 0x42129015 powercap_unregister_control_type +EXPORT_SYMBOL_GPL vmlinux 0x42187a4e of_pm_clk_add_clks +EXPORT_SYMBOL_GPL vmlinux 0x42214614 __ftrace_vbprintk +EXPORT_SYMBOL_GPL vmlinux 0x42424da0 dm_hold +EXPORT_SYMBOL_GPL vmlinux 0x42635d55 pm_suspend_global_flags +EXPORT_SYMBOL_GPL vmlinux 0x426c2b1c bsg_unregister_queue +EXPORT_SYMBOL_GPL vmlinux 0x426cf2dd debugfs_real_fops +EXPORT_SYMBOL_GPL vmlinux 0x42825ce2 rcu_scheduler_active +EXPORT_SYMBOL_GPL vmlinux 0x42999e70 espintcp_push_skb +EXPORT_SYMBOL_GPL vmlinux 0x42bcd5c1 tpm2_get_cc_attrs_tbl +EXPORT_SYMBOL_GPL vmlinux 0x42d63664 iommu_group_for_each_dev +EXPORT_SYMBOL_GPL vmlinux 0x42e3e744 xdp_return_frame +EXPORT_SYMBOL_GPL vmlinux 0x42e9d0da ring_buffer_unlock_commit +EXPORT_SYMBOL_GPL vmlinux 0x42ef0bc4 stop_machine +EXPORT_SYMBOL_GPL vmlinux 0x42f728aa mctrl_gpio_get_outputs +EXPORT_SYMBOL_GPL vmlinux 0x42fad91b clk_hw_unregister_gate +EXPORT_SYMBOL_GPL vmlinux 0x42ff54d4 evict_inodes +EXPORT_SYMBOL_GPL vmlinux 0x42ffafb3 perf_aux_output_skip +EXPORT_SYMBOL_GPL vmlinux 0x4304b865 cpufreq_enable_fast_switch +EXPORT_SYMBOL_GPL vmlinux 0x430b7152 cpufreq_unregister_governor +EXPORT_SYMBOL_GPL vmlinux 0x430fa2bb devres_get +EXPORT_SYMBOL_GPL vmlinux 0x431cdae9 phy_remove_lookup +EXPORT_SYMBOL_GPL vmlinux 0x432702e6 mm_iommu_mapped_inc +EXPORT_SYMBOL_GPL vmlinux 0x4329b7e8 fat_setattr +EXPORT_SYMBOL_GPL vmlinux 0x432ebfa4 crypto_get_default_null_skcipher +EXPORT_SYMBOL_GPL vmlinux 0x4331b04b class_unregister +EXPORT_SYMBOL_GPL vmlinux 0x433ae120 of_genpd_remove_subdomain +EXPORT_SYMBOL_GPL vmlinux 0x433ae21c user_preparse +EXPORT_SYMBOL_GPL vmlinux 0x433dfb9d irq_domain_translate_onecell +EXPORT_SYMBOL_GPL vmlinux 0x43468cbb regulator_unregister +EXPORT_SYMBOL_GPL vmlinux 0x4353395c driver_attach +EXPORT_SYMBOL_GPL vmlinux 0x4355cb83 clk_gate_is_enabled +EXPORT_SYMBOL_GPL vmlinux 0x43574498 security_path_chmod +EXPORT_SYMBOL_GPL vmlinux 0x4358d03b devm_mdiobus_free +EXPORT_SYMBOL_GPL vmlinux 0x4362247b aead_register_instance +EXPORT_SYMBOL_GPL vmlinux 0x43749854 fsverity_file_open +EXPORT_SYMBOL_GPL vmlinux 0x437eb1df ipv6_mod_enabled +EXPORT_SYMBOL_GPL vmlinux 0x43865b38 led_trigger_write +EXPORT_SYMBOL_GPL vmlinux 0x438f60aa device_create_bin_file +EXPORT_SYMBOL_GPL vmlinux 0x43a91e4d pm_generic_poweroff_noirq +EXPORT_SYMBOL_GPL vmlinux 0x43aa319e lease_register_notifier +EXPORT_SYMBOL_GPL vmlinux 0x43d166d5 __srcu_notifier_call_chain +EXPORT_SYMBOL_GPL vmlinux 0x43db8d0d edac_pci_create_generic_ctl +EXPORT_SYMBOL_GPL vmlinux 0x43de4f24 smp_call_function_single_async +EXPORT_SYMBOL_GPL vmlinux 0x43dfa2b5 ohci_restart +EXPORT_SYMBOL_GPL vmlinux 0x43e451f2 serdev_device_set_flow_control +EXPORT_SYMBOL_GPL vmlinux 0x43eb902d ftrace_set_notrace +EXPORT_SYMBOL_GPL vmlinux 0x43eff079 fb_bl_default_curve +EXPORT_SYMBOL_GPL vmlinux 0x43f12552 icc_get_name +EXPORT_SYMBOL_GPL vmlinux 0x43f56e82 ata_xfer_mode2shift +EXPORT_SYMBOL_GPL vmlinux 0x43f81957 clk_round_rate +EXPORT_SYMBOL_GPL vmlinux 0x4414e4dc platform_device_alloc +EXPORT_SYMBOL_GPL vmlinux 0x441f4234 __xive_vm_h_ipoll +EXPORT_SYMBOL_GPL vmlinux 0x442d89c5 phy_10gbit_fec_features +EXPORT_SYMBOL_GPL vmlinux 0x443a9c19 da903x_register_notifier +EXPORT_SYMBOL_GPL vmlinux 0x444b8849 fat_getattr +EXPORT_SYMBOL_GPL vmlinux 0x4450a2f6 rt_mutex_unlock +EXPORT_SYMBOL_GPL vmlinux 0x445a09c0 nvmem_device_cell_write +EXPORT_SYMBOL_GPL vmlinux 0x446109b6 ata_sff_pause +EXPORT_SYMBOL_GPL vmlinux 0x44688a64 dev_pm_opp_register_set_opp_helper +EXPORT_SYMBOL_GPL vmlinux 0x446d4d19 crypto_unregister_rngs +EXPORT_SYMBOL_GPL vmlinux 0x44784055 irq_chip_get_parent_state +EXPORT_SYMBOL_GPL vmlinux 0x447f237f pnv_ocxl_unmap_xsl_regs +EXPORT_SYMBOL_GPL vmlinux 0x4484a5a4 wait_for_device_probe +EXPORT_SYMBOL_GPL vmlinux 0x449211fe srp_rport_del +EXPORT_SYMBOL_GPL vmlinux 0x4499a29a __tracepoint_add_device_to_group +EXPORT_SYMBOL_GPL vmlinux 0x449d7fb2 sysfs_file_change_owner +EXPORT_SYMBOL_GPL vmlinux 0x449fa45d btree_remove +EXPORT_SYMBOL_GPL vmlinux 0x44a0a02b pci_hp_remove_devices +EXPORT_SYMBOL_GPL vmlinux 0x44a93cf4 securityfs_create_file +EXPORT_SYMBOL_GPL vmlinux 0x44add70f pci_msi_unmask_irq +EXPORT_SYMBOL_GPL vmlinux 0x44ae16f9 to_nd_blk_region +EXPORT_SYMBOL_GPL vmlinux 0x44b09de0 iommu_tce_check_ioba +EXPORT_SYMBOL_GPL vmlinux 0x44bae227 bit_wait_timeout +EXPORT_SYMBOL_GPL vmlinux 0x44c64a25 perf_event_addr_filters_sync +EXPORT_SYMBOL_GPL vmlinux 0x44cf8cf0 blk_zone_cond_str +EXPORT_SYMBOL_GPL vmlinux 0x44d9924a fixed_phy_unregister +EXPORT_SYMBOL_GPL vmlinux 0x44ec1be5 fib_nl_newrule +EXPORT_SYMBOL_GPL vmlinux 0x44f3b945 crypto_stats_kpp_generate_public_key +EXPORT_SYMBOL_GPL vmlinux 0x44f6bb34 pinmux_generic_add_function +EXPORT_SYMBOL_GPL vmlinux 0x4507f4a8 cpuhp_tasks_frozen +EXPORT_SYMBOL_GPL vmlinux 0x450efea5 pid_nr_ns +EXPORT_SYMBOL_GPL vmlinux 0x4525146e screen_pos +EXPORT_SYMBOL_GPL vmlinux 0x4531624f usb_decode_ctrl +EXPORT_SYMBOL_GPL vmlinux 0x4531ab62 copy_from_kernel_nofault +EXPORT_SYMBOL_GPL vmlinux 0x4543933d phy_power_off +EXPORT_SYMBOL_GPL vmlinux 0x45444615 pci_disable_sriov +EXPORT_SYMBOL_GPL vmlinux 0x4545bab6 usb_find_alt_setting +EXPORT_SYMBOL_GPL vmlinux 0x45558f56 clk_unregister_fixed_factor +EXPORT_SYMBOL_GPL vmlinux 0x456abca2 inet6_hash +EXPORT_SYMBOL_GPL vmlinux 0x457175b7 crypto_alloc_ahash +EXPORT_SYMBOL_GPL vmlinux 0x4574b46a tcp_ca_openreq_child +EXPORT_SYMBOL_GPL vmlinux 0x457594fa crypto_alg_list +EXPORT_SYMBOL_GPL vmlinux 0x45856a02 __percpu_init_rwsem +EXPORT_SYMBOL_GPL vmlinux 0x45accd3a phy_select_page +EXPORT_SYMBOL_GPL vmlinux 0x45b53e6c gpiod_to_irq +EXPORT_SYMBOL_GPL vmlinux 0x45c11188 platform_bus_type +EXPORT_SYMBOL_GPL vmlinux 0x45ed8cf0 ata_dummy_port_info +EXPORT_SYMBOL_GPL vmlinux 0x45f92820 spi_get_device_id +EXPORT_SYMBOL_GPL vmlinux 0x45fe9e24 seg6_do_srh_encap +EXPORT_SYMBOL_GPL vmlinux 0x46013233 net_dec_ingress_queue +EXPORT_SYMBOL_GPL vmlinux 0x460f10e4 clk_register +EXPORT_SYMBOL_GPL vmlinux 0x46181cf8 __tracepoint_non_standard_event +EXPORT_SYMBOL_GPL vmlinux 0x462b23d2 unregister_kretprobe +EXPORT_SYMBOL_GPL vmlinux 0x46457829 pinctrl_utils_add_map_mux +EXPORT_SYMBOL_GPL vmlinux 0x464cbccd __sbitmap_queue_get_shallow +EXPORT_SYMBOL_GPL vmlinux 0x464eb69d iommu_map_sg +EXPORT_SYMBOL_GPL vmlinux 0x465d9bc8 rtc_read_time +EXPORT_SYMBOL_GPL vmlinux 0x465ffa64 kobject_uevent +EXPORT_SYMBOL_GPL vmlinux 0x4669ba93 pm_runtime_autosuspend_expiration +EXPORT_SYMBOL_GPL vmlinux 0x4671c199 mbox_free_channel +EXPORT_SYMBOL_GPL vmlinux 0x468513af driver_create_file +EXPORT_SYMBOL_GPL vmlinux 0x4688d7ec pvclock_gtod_unregister_notifier +EXPORT_SYMBOL_GPL vmlinux 0x468afe91 of_device_request_module +EXPORT_SYMBOL_GPL vmlinux 0x468c8557 serial8250_em485_destroy +EXPORT_SYMBOL_GPL vmlinux 0x468eb179 kvmppc_update_dirty_map +EXPORT_SYMBOL_GPL vmlinux 0x46908857 of_usb_get_dr_mode_by_phy +EXPORT_SYMBOL_GPL vmlinux 0x46a314ac transport_remove_device +EXPORT_SYMBOL_GPL vmlinux 0x46b1a05f crypto_register_aeads +EXPORT_SYMBOL_GPL vmlinux 0x46ca54ee regmap_bulk_write +EXPORT_SYMBOL_GPL vmlinux 0x46e465de klist_init +EXPORT_SYMBOL_GPL vmlinux 0x46e91f7d netlink_remove_tap +EXPORT_SYMBOL_GPL vmlinux 0x46f42be0 devlink_fmsg_u8_put +EXPORT_SYMBOL_GPL vmlinux 0x4705c76c trace_seq_to_user +EXPORT_SYMBOL_GPL vmlinux 0x470a8535 debugfs_create_devm_seqfile +EXPORT_SYMBOL_GPL vmlinux 0x470deba2 usb_hcd_unmap_urb_for_dma +EXPORT_SYMBOL_GPL vmlinux 0x47229b5c gpio_request +EXPORT_SYMBOL_GPL vmlinux 0x4741be12 wm8350_device_init +EXPORT_SYMBOL_GPL vmlinux 0x4746ec38 of_dma_router_register +EXPORT_SYMBOL_GPL vmlinux 0x475d8f58 wm5110_spi_regmap +EXPORT_SYMBOL_GPL vmlinux 0x476167c8 remove_memory +EXPORT_SYMBOL_GPL vmlinux 0x4761f17c register_netevent_notifier +EXPORT_SYMBOL_GPL vmlinux 0x476fad97 of_get_videomode +EXPORT_SYMBOL_GPL vmlinux 0x4779f98a metadata_dst_alloc_percpu +EXPORT_SYMBOL_GPL vmlinux 0x477e3835 __platform_driver_register +EXPORT_SYMBOL_GPL vmlinux 0x477f8c22 crypto_register_shash +EXPORT_SYMBOL_GPL vmlinux 0x47884890 system_power_efficient_wq +EXPORT_SYMBOL_GPL vmlinux 0x478d396e regulator_get_mode +EXPORT_SYMBOL_GPL vmlinux 0x478f9d3f __hwspin_unlock +EXPORT_SYMBOL_GPL vmlinux 0x4792c8f4 regulator_bulk_get +EXPORT_SYMBOL_GPL vmlinux 0x479f7d4b clk_bulk_disable +EXPORT_SYMBOL_GPL vmlinux 0x47aad3b9 have_governor_per_policy +EXPORT_SYMBOL_GPL vmlinux 0x47b3c3a5 securityfs_remove +EXPORT_SYMBOL_GPL vmlinux 0x47b70978 edac_device_del_device +EXPORT_SYMBOL_GPL vmlinux 0x47cbc0e1 bpf_redirect_info +EXPORT_SYMBOL_GPL vmlinux 0x47cc5c7a rio_free_net +EXPORT_SYMBOL_GPL vmlinux 0x47d65823 irq_create_of_mapping +EXPORT_SYMBOL_GPL vmlinux 0x47de0dc7 clk_unregister_mux +EXPORT_SYMBOL_GPL vmlinux 0x47f6375d ata_sff_prereset +EXPORT_SYMBOL_GPL vmlinux 0x47f86c95 usb_init_urb +EXPORT_SYMBOL_GPL vmlinux 0x47fa7afb iommu_capable +EXPORT_SYMBOL_GPL vmlinux 0x4804453a set_secondary_fwnode +EXPORT_SYMBOL_GPL vmlinux 0x480eff40 pci_add_device_node_info +EXPORT_SYMBOL_GPL vmlinux 0x4813bf65 thermal_zone_get_zone_by_name +EXPORT_SYMBOL_GPL vmlinux 0x4816a622 devm_devfreq_event_add_edev +EXPORT_SYMBOL_GPL vmlinux 0x48202c39 gpiod_get_direction +EXPORT_SYMBOL_GPL vmlinux 0x484b1f8c gpiochip_generic_config +EXPORT_SYMBOL_GPL vmlinux 0x485436a1 rtc_alarm_irq_enable +EXPORT_SYMBOL_GPL vmlinux 0x48558e30 __audit_inode_child +EXPORT_SYMBOL_GPL vmlinux 0x485a1bac device_find_child_by_name +EXPORT_SYMBOL_GPL vmlinux 0x485e7b05 synchronize_srcu_expedited +EXPORT_SYMBOL_GPL vmlinux 0x485f99ef cpufreq_cpu_get +EXPORT_SYMBOL_GPL vmlinux 0x486858b3 gpiod_get_from_of_node +EXPORT_SYMBOL_GPL vmlinux 0x486f8227 list_lru_walk_one +EXPORT_SYMBOL_GPL vmlinux 0x48755f37 static_key_disable_cpuslocked +EXPORT_SYMBOL_GPL vmlinux 0x487ac245 usb_poison_anchored_urbs +EXPORT_SYMBOL_GPL vmlinux 0x488f2cd5 vfs_truncate +EXPORT_SYMBOL_GPL vmlinux 0x48a3d20b mctrl_gpio_get +EXPORT_SYMBOL_GPL vmlinux 0x48a9c0d4 generic_online_page +EXPORT_SYMBOL_GPL vmlinux 0x48ab2073 ata_bmdma_port_ops +EXPORT_SYMBOL_GPL vmlinux 0x48bcf1d9 wm831x_device_shutdown +EXPORT_SYMBOL_GPL vmlinux 0x48bed2e1 regmap_bulk_read +EXPORT_SYMBOL_GPL vmlinux 0x48c60ff8 netdev_walk_all_lower_dev_rcu +EXPORT_SYMBOL_GPL vmlinux 0x48d01171 __regmap_init +EXPORT_SYMBOL_GPL vmlinux 0x48df5d89 cpuidle_get_cpu_driver +EXPORT_SYMBOL_GPL vmlinux 0x48e58dd5 virtqueue_get_avail_addr +EXPORT_SYMBOL_GPL vmlinux 0x48f02155 iommu_sva_get_pasid +EXPORT_SYMBOL_GPL vmlinux 0x49383052 rhashtable_walk_peek +EXPORT_SYMBOL_GPL vmlinux 0x4939ebcd numa_map_to_online_node +EXPORT_SYMBOL_GPL vmlinux 0x493c8b85 crypto_unregister_acomp +EXPORT_SYMBOL_GPL vmlinux 0x499043d3 crypto_init_queue +EXPORT_SYMBOL_GPL vmlinux 0x49a109bc is_current_mnt_ns +EXPORT_SYMBOL_GPL vmlinux 0x49b52b9c mctrl_gpio_free +EXPORT_SYMBOL_GPL vmlinux 0x49c48cc8 ata_bmdma_start +EXPORT_SYMBOL_GPL vmlinux 0x49c93d03 spi_mem_dirmap_write +EXPORT_SYMBOL_GPL vmlinux 0x49e96999 cond_synchronize_rcu +EXPORT_SYMBOL_GPL vmlinux 0x49f3b073 irq_get_percpu_devid_partition +EXPORT_SYMBOL_GPL vmlinux 0x49f3e2cb iommu_del_device +EXPORT_SYMBOL_GPL vmlinux 0x4a026413 mm_iommu_mapped_dec +EXPORT_SYMBOL_GPL vmlinux 0x4a17ed66 sysrq_mask +EXPORT_SYMBOL_GPL vmlinux 0x4a197ecb crypto_aes_set_key +EXPORT_SYMBOL_GPL vmlinux 0x4a1f0728 edac_mc_alloc +EXPORT_SYMBOL_GPL vmlinux 0x4a24e8ed access_process_vm +EXPORT_SYMBOL_GPL vmlinux 0x4a302bf7 fwnode_graph_get_remote_endpoint +EXPORT_SYMBOL_GPL vmlinux 0x4a81d90c dax_copy_from_iter +EXPORT_SYMBOL_GPL vmlinux 0x4a87fd6c pci_epc_linkup +EXPORT_SYMBOL_GPL vmlinux 0x4a886be6 pci_host_common_remove +EXPORT_SYMBOL_GPL vmlinux 0x4a92f144 pci_user_write_config_word +EXPORT_SYMBOL_GPL vmlinux 0x4a93001d wm831x_reg_unlock +EXPORT_SYMBOL_GPL vmlinux 0x4a976cd6 spi_write_then_read +EXPORT_SYMBOL_GPL vmlinux 0x4a9e4bc6 crypto_register_ahashes +EXPORT_SYMBOL_GPL vmlinux 0x4a9ec59a regmap_async_complete +EXPORT_SYMBOL_GPL vmlinux 0x4a9f047a tm_enable +EXPORT_SYMBOL_GPL vmlinux 0x4aaa6cb7 __xas_prev +EXPORT_SYMBOL_GPL vmlinux 0x4ab5d943 blkg_prfill_rwstat +EXPORT_SYMBOL_GPL vmlinux 0x4ab9be0d dm_internal_resume_fast +EXPORT_SYMBOL_GPL vmlinux 0x4abd8e8c tps6586x_irq_get_virq +EXPORT_SYMBOL_GPL vmlinux 0x4abe4a9b of_pci_address_to_resource +EXPORT_SYMBOL_GPL vmlinux 0x4ae1320c sdio_readb +EXPORT_SYMBOL_GPL vmlinux 0x4ae3f1fb crypto_stats_init +EXPORT_SYMBOL_GPL vmlinux 0x4ae6937e pci_generic_config_read +EXPORT_SYMBOL_GPL vmlinux 0x4af44c22 of_mm_gpiochip_remove +EXPORT_SYMBOL_GPL vmlinux 0x4b3dc2ae __clk_hw_register_fixed_rate +EXPORT_SYMBOL_GPL vmlinux 0x4b459eb9 fwnode_property_present +EXPORT_SYMBOL_GPL vmlinux 0x4b483e2c gpiod_get +EXPORT_SYMBOL_GPL vmlinux 0x4b51f26c key_type_encrypted +EXPORT_SYMBOL_GPL vmlinux 0x4b51f74c ata_xfer_mode2mask +EXPORT_SYMBOL_GPL vmlinux 0x4b539014 housekeeping_affine +EXPORT_SYMBOL_GPL vmlinux 0x4b60d63a ata_host_start +EXPORT_SYMBOL_GPL vmlinux 0x4b62fda2 watchdog_init_timeout +EXPORT_SYMBOL_GPL vmlinux 0x4b6474e2 vas_init_tx_win_attr +EXPORT_SYMBOL_GPL vmlinux 0x4b693f96 iommu_page_response +EXPORT_SYMBOL_GPL vmlinux 0x4b6da28a devm_power_supply_get_by_phandle +EXPORT_SYMBOL_GPL vmlinux 0x4b9cf215 devm_nvmem_cell_get +EXPORT_SYMBOL_GPL vmlinux 0x4ba26df3 usb_reset_device +EXPORT_SYMBOL_GPL vmlinux 0x4bafbc07 device_match_fwnode +EXPORT_SYMBOL_GPL vmlinux 0x4bb905fc pci_get_dsn +EXPORT_SYMBOL_GPL vmlinux 0x4bbb4312 dma_buf_move_notify +EXPORT_SYMBOL_GPL vmlinux 0x4bcb6fac pci_slots_kset +EXPORT_SYMBOL_GPL vmlinux 0x4bd05db0 irq_of_parse_and_map +EXPORT_SYMBOL_GPL vmlinux 0x4be2e8c8 do_unbind_con_driver +EXPORT_SYMBOL_GPL vmlinux 0x4be84c44 fwnode_property_read_u64_array +EXPORT_SYMBOL_GPL vmlinux 0x4bef0884 pgtable_cache_add +EXPORT_SYMBOL_GPL vmlinux 0x4c26966c pci_epc_clear_bar +EXPORT_SYMBOL_GPL vmlinux 0x4c30af76 adp5520_read +EXPORT_SYMBOL_GPL vmlinux 0x4c3a5c61 gpiod_is_active_low +EXPORT_SYMBOL_GPL vmlinux 0x4c492093 cpuacct_cgrp_subsys_on_dfl_key +EXPORT_SYMBOL_GPL vmlinux 0x4c501f8f ata_sff_softreset +EXPORT_SYMBOL_GPL vmlinux 0x4c56ac6f bus_find_device +EXPORT_SYMBOL_GPL vmlinux 0x4c73b5bb spi_finalize_current_message +EXPORT_SYMBOL_GPL vmlinux 0x4c8a0c5a sched_trace_rd_span +EXPORT_SYMBOL_GPL vmlinux 0x4c8dcf70 ping_seq_start +EXPORT_SYMBOL_GPL vmlinux 0x4c96954f usb_unlink_urb +EXPORT_SYMBOL_GPL vmlinux 0x4cbebf13 sdio_align_size +EXPORT_SYMBOL_GPL vmlinux 0x4cc4d3e9 dev_pm_opp_put_supported_hw +EXPORT_SYMBOL_GPL vmlinux 0x4cd1b8a7 gpiod_get_array_optional +EXPORT_SYMBOL_GPL vmlinux 0x4cf194f5 pcibios_scan_phb +EXPORT_SYMBOL_GPL vmlinux 0x4d0015e2 cpu_hotplug_disable +EXPORT_SYMBOL_GPL vmlinux 0x4d00eef1 crypto_spawn_tfm +EXPORT_SYMBOL_GPL vmlinux 0x4d033020 fscrypt_ioctl_get_key_status +EXPORT_SYMBOL_GPL vmlinux 0x4d20c90f pm_genpd_add_device +EXPORT_SYMBOL_GPL vmlinux 0x4d4d7b79 blk_mq_map_queues +EXPORT_SYMBOL_GPL vmlinux 0x4d4f4a32 hvc_alloc +EXPORT_SYMBOL_GPL vmlinux 0x4d55d944 phy_restore_page +EXPORT_SYMBOL_GPL vmlinux 0x4d638618 ata_cable_40wire +EXPORT_SYMBOL_GPL vmlinux 0x4d664d6c blk_mq_freeze_queue +EXPORT_SYMBOL_GPL vmlinux 0x4d6d0bbc iommu_group_ref_get +EXPORT_SYMBOL_GPL vmlinux 0x4d7c17c9 locks_release_private +EXPORT_SYMBOL_GPL vmlinux 0x4d86460c dax_copy_to_iter +EXPORT_SYMBOL_GPL vmlinux 0x4dae16e4 i2c_put_dma_safe_msg_buf +EXPORT_SYMBOL_GPL vmlinux 0x4db15ca2 xdp_rxq_info_is_reg +EXPORT_SYMBOL_GPL vmlinux 0x4dc088ce bpf_map_inc +EXPORT_SYMBOL_GPL vmlinux 0x4dc52c09 pnv_power9_force_smt4_catch +EXPORT_SYMBOL_GPL vmlinux 0x4dcf3d09 skb_mpls_dec_ttl +EXPORT_SYMBOL_GPL vmlinux 0x4dd9d14d cn_netlink_send_mult +EXPORT_SYMBOL_GPL vmlinux 0x4de17ab3 usb_state_string +EXPORT_SYMBOL_GPL vmlinux 0x4df33477 ata_port_schedule_eh +EXPORT_SYMBOL_GPL vmlinux 0x4df9f03c serdev_device_remove +EXPORT_SYMBOL_GPL vmlinux 0x4e1195d6 pci_scan_child_bus +EXPORT_SYMBOL_GPL vmlinux 0x4e15b77b ip6_route_output_flags +EXPORT_SYMBOL_GPL vmlinux 0x4e17c613 ata_sff_queue_delayed_work +EXPORT_SYMBOL_GPL vmlinux 0x4e1f9fd2 crypto_register_ahash +EXPORT_SYMBOL_GPL vmlinux 0x4e37ff1c devlink_dpipe_table_counter_enabled +EXPORT_SYMBOL_GPL vmlinux 0x4e440465 dax_layout_busy_page +EXPORT_SYMBOL_GPL vmlinux 0x4e52ce7d kobject_uevent_env +EXPORT_SYMBOL_GPL vmlinux 0x4e53f752 of_clk_get_parent_name +EXPORT_SYMBOL_GPL vmlinux 0x4e58dc69 xhci_init_driver +EXPORT_SYMBOL_GPL vmlinux 0x4e58f23b mm_iommu_put +EXPORT_SYMBOL_GPL vmlinux 0x4e6ecc9c public_key_subtype +EXPORT_SYMBOL_GPL vmlinux 0x4e73001b regulator_register_supply_alias +EXPORT_SYMBOL_GPL vmlinux 0x4e7f2191 regmap_get_reg_stride +EXPORT_SYMBOL_GPL vmlinux 0x4e8152b5 kill_dev_dax +EXPORT_SYMBOL_GPL vmlinux 0x4e9923f8 __fib_lookup +EXPORT_SYMBOL_GPL vmlinux 0x4ea27a54 of_usb_update_otg_caps +EXPORT_SYMBOL_GPL vmlinux 0x4ea691fa phy_pm_runtime_get_sync +EXPORT_SYMBOL_GPL vmlinux 0x4eac5fc1 cpu_mitigations_auto_nosmt +EXPORT_SYMBOL_GPL vmlinux 0x4ee5a759 tty_port_register_device +EXPORT_SYMBOL_GPL vmlinux 0x4eed06f6 pwm_request +EXPORT_SYMBOL_GPL vmlinux 0x4ef2c26e kthread_mod_delayed_work +EXPORT_SYMBOL_GPL vmlinux 0x4ef5bcf4 perf_swevent_get_recursion_context +EXPORT_SYMBOL_GPL vmlinux 0x4ef80b6c rt_mutex_lock_interruptible +EXPORT_SYMBOL_GPL vmlinux 0x4f12a322 fixup_user_fault +EXPORT_SYMBOL_GPL vmlinux 0x4f296823 genphy_c45_read_status +EXPORT_SYMBOL_GPL vmlinux 0x4f39de4e __module_address +EXPORT_SYMBOL_GPL vmlinux 0x4f50f820 rio_bus_type +EXPORT_SYMBOL_GPL vmlinux 0x4f546793 usb_of_get_interface_node +EXPORT_SYMBOL_GPL vmlinux 0x4f5f22d4 pci_user_read_config_byte +EXPORT_SYMBOL_GPL vmlinux 0x4f68e266 cgroup_get_from_path +EXPORT_SYMBOL_GPL vmlinux 0x4f6a07fe show_rcu_gp_kthreads +EXPORT_SYMBOL_GPL vmlinux 0x4f72a987 uart_parse_options +EXPORT_SYMBOL_GPL vmlinux 0x4f94af4c sysfs_remove_device_from_node +EXPORT_SYMBOL_GPL vmlinux 0x4f9a4e4d wakeup_source_destroy +EXPORT_SYMBOL_GPL vmlinux 0x4fa312b2 dev_pm_domain_attach_by_name +EXPORT_SYMBOL_GPL vmlinux 0x4fa938ba dma_buf_get +EXPORT_SYMBOL_GPL vmlinux 0x4fb4e785 of_pwm_get +EXPORT_SYMBOL_GPL vmlinux 0x4fd9367f netlink_strict_get_check +EXPORT_SYMBOL_GPL vmlinux 0x4fdc945d sata_deb_timing_normal +EXPORT_SYMBOL_GPL vmlinux 0x4fe1eddf unregister_netevent_notifier +EXPORT_SYMBOL_GPL vmlinux 0x4ff56656 nvmem_device_find +EXPORT_SYMBOL_GPL vmlinux 0x4ffb21fd __devm_of_phy_provider_register +EXPORT_SYMBOL_GPL vmlinux 0x500b49af fsnotify_parent +EXPORT_SYMBOL_GPL vmlinux 0x5018ad9f icc_put +EXPORT_SYMBOL_GPL vmlinux 0x503acd6b io_cgrp_subsys +EXPORT_SYMBOL_GPL vmlinux 0x50493708 perf_trace_run_bpf_submit +EXPORT_SYMBOL_GPL vmlinux 0x504a2062 scsi_autopm_put_device +EXPORT_SYMBOL_GPL vmlinux 0x507ce77a pnv_ocxl_get_xsl_irq +EXPORT_SYMBOL_GPL vmlinux 0x507ebc7d fl6_update_dst +EXPORT_SYMBOL_GPL vmlinux 0x508377eb xive_native_free_irq +EXPORT_SYMBOL_GPL vmlinux 0x5091b823 ring_buffer_read_start +EXPORT_SYMBOL_GPL vmlinux 0x50ae6d90 dev_pm_domain_detach +EXPORT_SYMBOL_GPL vmlinux 0x50b3c3d3 mpc8xxx_spi_tx_buf_u16 +EXPORT_SYMBOL_GPL vmlinux 0x50c38eb4 wm8350_block_read +EXPORT_SYMBOL_GPL vmlinux 0x50dd1af5 blocking_notifier_chain_register +EXPORT_SYMBOL_GPL vmlinux 0x50df866e iommu_map_atomic +EXPORT_SYMBOL_GPL vmlinux 0x50e7193a __i2c_first_dynamic_bus_num +EXPORT_SYMBOL_GPL vmlinux 0x50f954bd led_set_brightness_nosleep +EXPORT_SYMBOL_GPL vmlinux 0x50fad434 round_jiffies_up +EXPORT_SYMBOL_GPL vmlinux 0x51122969 usb_deregister +EXPORT_SYMBOL_GPL vmlinux 0x5126676f devlink_param_value_changed +EXPORT_SYMBOL_GPL vmlinux 0x512dc5a6 regmap_read +EXPORT_SYMBOL_GPL vmlinux 0x512e8866 register_pernet_device +EXPORT_SYMBOL_GPL vmlinux 0x51319fd0 generic_device_group +EXPORT_SYMBOL_GPL vmlinux 0x51363070 bio_alloc_mddev +EXPORT_SYMBOL_GPL vmlinux 0x51390c96 rcu_barrier_tasks_rude +EXPORT_SYMBOL_GPL vmlinux 0x513d314a palmas_ext_control_req_config +EXPORT_SYMBOL_GPL vmlinux 0x516c419f cpufreq_dbs_governor_init +EXPORT_SYMBOL_GPL vmlinux 0x516d9665 usb_free_streams +EXPORT_SYMBOL_GPL vmlinux 0x516db604 tcp_reno_ssthresh +EXPORT_SYMBOL_GPL vmlinux 0x517be55c udp4_lib_lookup_skb +EXPORT_SYMBOL_GPL vmlinux 0x517eb165 phy_package_leave +EXPORT_SYMBOL_GPL vmlinux 0x5182c2e0 fanout_mutex +EXPORT_SYMBOL_GPL vmlinux 0x51917dcd regmap_async_complete_cb +EXPORT_SYMBOL_GPL vmlinux 0x51b65a26 rtc_lock +EXPORT_SYMBOL_GPL vmlinux 0x51c8fcb0 devm_request_pci_bus_resources +EXPORT_SYMBOL_GPL vmlinux 0x51c96198 class_interface_unregister +EXPORT_SYMBOL_GPL vmlinux 0x51e012f4 crypto_stats_decompress +EXPORT_SYMBOL_GPL vmlinux 0x51e2dcfd vfio_group_get_external_user +EXPORT_SYMBOL_GPL vmlinux 0x51f6178c crypto_stats_akcipher_sign +EXPORT_SYMBOL_GPL vmlinux 0x520cfefa regmap_raw_read +EXPORT_SYMBOL_GPL vmlinux 0x520d9907 sock_prot_inuse_get +EXPORT_SYMBOL_GPL vmlinux 0x52252316 clk_unregister_fixed_rate +EXPORT_SYMBOL_GPL vmlinux 0x52364206 of_pinctrl_get +EXPORT_SYMBOL_GPL vmlinux 0x5236497d trace_clock +EXPORT_SYMBOL_GPL vmlinux 0x526ea100 pm_runtime_force_resume +EXPORT_SYMBOL_GPL vmlinux 0x527187d0 serial8250_rx_dma_flush +EXPORT_SYMBOL_GPL vmlinux 0x528d5ca3 register_asymmetric_key_parser +EXPORT_SYMBOL_GPL vmlinux 0x52a0d909 fscrypt_drop_inode +EXPORT_SYMBOL_GPL vmlinux 0x52b1e3c7 pci_flags +EXPORT_SYMBOL_GPL vmlinux 0x52b90155 watchdog_register_device +EXPORT_SYMBOL_GPL vmlinux 0x52bd7a3d unregister_asymmetric_key_parser +EXPORT_SYMBOL_GPL vmlinux 0x52c35e83 call_rcu_tasks_trace +EXPORT_SYMBOL_GPL vmlinux 0x52c4168f clockevents_config_and_register +EXPORT_SYMBOL_GPL vmlinux 0x52d2848e devlink_resources_unregister +EXPORT_SYMBOL_GPL vmlinux 0x52d54fce devlink_info_version_stored_put +EXPORT_SYMBOL_GPL vmlinux 0x52e6af9e iterate_mounts +EXPORT_SYMBOL_GPL vmlinux 0x530e866c class_dev_iter_init +EXPORT_SYMBOL_GPL vmlinux 0x53169145 phy_modify_changed +EXPORT_SYMBOL_GPL vmlinux 0x53175a02 dev_pm_opp_remove_table +EXPORT_SYMBOL_GPL vmlinux 0x531ff40f iommu_set_fault_handler +EXPORT_SYMBOL_GPL vmlinux 0x53291f6d iommu_tce_table_put +EXPORT_SYMBOL_GPL vmlinux 0x532b90b5 kprobe_event_cmd_init +EXPORT_SYMBOL_GPL vmlinux 0x532ff3d1 pci_epc_mem_init +EXPORT_SYMBOL_GPL vmlinux 0x533593b3 peernet2id_alloc +EXPORT_SYMBOL_GPL vmlinux 0x5335dd11 atomic_notifier_call_chain +EXPORT_SYMBOL_GPL vmlinux 0x5343f1cf blk_mq_unquiesce_queue +EXPORT_SYMBOL_GPL vmlinux 0x534cb369 ip6_sk_redirect +EXPORT_SYMBOL_GPL vmlinux 0x5355fef1 crypto_alloc_shash +EXPORT_SYMBOL_GPL vmlinux 0x5358864e devlink_fmsg_binary_pair_nest_end +EXPORT_SYMBOL_GPL vmlinux 0x535d64e5 clk_hw_get_num_parents +EXPORT_SYMBOL_GPL vmlinux 0x536822e3 sfp_module_insert +EXPORT_SYMBOL_GPL vmlinux 0x53730602 pm_generic_resume +EXPORT_SYMBOL_GPL vmlinux 0x53800e32 vas_unregister_coproc_api +EXPORT_SYMBOL_GPL vmlinux 0x5381d07d pm_generic_restore +EXPORT_SYMBOL_GPL vmlinux 0x53884839 kvmhv_load_host_pmu +EXPORT_SYMBOL_GPL vmlinux 0x538d073d phy_duplex_to_str +EXPORT_SYMBOL_GPL vmlinux 0x5393e61a dma_resv_get_fences_rcu +EXPORT_SYMBOL_GPL vmlinux 0x53b07f73 sata_link_scr_lpm +EXPORT_SYMBOL_GPL vmlinux 0x53c089f5 property_entries_dup +EXPORT_SYMBOL_GPL vmlinux 0x53cac1df __tracepoint_kfree_skb +EXPORT_SYMBOL_GPL vmlinux 0x53cad47a noop_backing_dev_info +EXPORT_SYMBOL_GPL vmlinux 0x53cbfb6f clk_hw_unregister_fixed_rate +EXPORT_SYMBOL_GPL vmlinux 0x53d41655 pinctrl_find_gpio_range_from_pin_nolock +EXPORT_SYMBOL_GPL vmlinux 0x53d46aa0 set_cpus_allowed_ptr +EXPORT_SYMBOL_GPL vmlinux 0x53d57545 __tracepoint_block_rq_remap +EXPORT_SYMBOL_GPL vmlinux 0x53d9f73a sensor_group_enable +EXPORT_SYMBOL_GPL vmlinux 0x53e06c0c power_supply_find_ocv2cap_table +EXPORT_SYMBOL_GPL vmlinux 0x53ffebb6 usb_hcd_check_unlink_urb +EXPORT_SYMBOL_GPL vmlinux 0x5405cd5d regulator_map_voltage_ascend +EXPORT_SYMBOL_GPL vmlinux 0x541b3cd9 wm831x_set_bits +EXPORT_SYMBOL_GPL vmlinux 0x541bc6b4 sysfs_create_group +EXPORT_SYMBOL_GPL vmlinux 0x541bd60a irq_work_run +EXPORT_SYMBOL_GPL vmlinux 0x541e93c1 stmpe_set_bits +EXPORT_SYMBOL_GPL vmlinux 0x54215db5 visitor64 +EXPORT_SYMBOL_GPL vmlinux 0x54239ec8 devlink_trap_groups_register +EXPORT_SYMBOL_GPL vmlinux 0x542b3fdd iommu_detach_device +EXPORT_SYMBOL_GPL vmlinux 0x54455603 nvmem_cell_read_u32 +EXPORT_SYMBOL_GPL vmlinux 0x545025e5 nvmem_add_cell_table +EXPORT_SYMBOL_GPL vmlinux 0x5450c1de security_path_symlink +EXPORT_SYMBOL_GPL vmlinux 0x545ba8fd register_user_hw_breakpoint +EXPORT_SYMBOL_GPL vmlinux 0x546ae18b iomap_zero_range +EXPORT_SYMBOL_GPL vmlinux 0x546b7e5b rio_add_mport_pw_handler +EXPORT_SYMBOL_GPL vmlinux 0x546c5565 ppc_tb_freq +EXPORT_SYMBOL_GPL vmlinux 0x54782b30 fsstack_copy_attr_all +EXPORT_SYMBOL_GPL vmlinux 0x5484fd3a regmap_register_patch +EXPORT_SYMBOL_GPL vmlinux 0x5494a780 hrtimer_cancel +EXPORT_SYMBOL_GPL vmlinux 0x549525ef handle_nested_irq +EXPORT_SYMBOL_GPL vmlinux 0x54c94c89 xhci_resume +EXPORT_SYMBOL_GPL vmlinux 0x54d6d82a __udp6_lib_lookup +EXPORT_SYMBOL_GPL vmlinux 0x54f5872f eeh_pe_inject_err +EXPORT_SYMBOL_GPL vmlinux 0x55153f08 pids_cgrp_subsys_on_dfl_key +EXPORT_SYMBOL_GPL vmlinux 0x55158a80 xfrm_audit_state_replay_overflow +EXPORT_SYMBOL_GPL vmlinux 0x551a9bbd dax_writeback_mapping_range +EXPORT_SYMBOL_GPL vmlinux 0x552bb1b6 eventfd_ctx_fileget +EXPORT_SYMBOL_GPL vmlinux 0x552db29e fwnode_property_read_string_array +EXPORT_SYMBOL_GPL vmlinux 0x55339365 flush_delayed_fput +EXPORT_SYMBOL_GPL vmlinux 0x553b49a4 cpufreq_get_driver_data +EXPORT_SYMBOL_GPL vmlinux 0x55417264 unregister_vt_notifier +EXPORT_SYMBOL_GPL vmlinux 0x5549de24 blkcg_print_blkgs +EXPORT_SYMBOL_GPL vmlinux 0x555701b5 usb_disable_ltm +EXPORT_SYMBOL_GPL vmlinux 0x55576e44 pci_reset_function +EXPORT_SYMBOL_GPL vmlinux 0x556e4390 clk_get_rate +EXPORT_SYMBOL_GPL vmlinux 0x5571e4b0 iommu_tce_xchg_no_kill +EXPORT_SYMBOL_GPL vmlinux 0x55784228 regmap_irq_get_virq +EXPORT_SYMBOL_GPL vmlinux 0x5588879e kvmppc_entry_trampoline +EXPORT_SYMBOL_GPL vmlinux 0x558a791b rio_request_dma +EXPORT_SYMBOL_GPL vmlinux 0x559ca8e8 devm_regmap_add_irq_chip +EXPORT_SYMBOL_GPL vmlinux 0x559d7c1c i2c_recover_bus +EXPORT_SYMBOL_GPL vmlinux 0x55c76a23 ksys_sync_helper +EXPORT_SYMBOL_GPL vmlinux 0x55cad999 scsi_eh_ready_devs +EXPORT_SYMBOL_GPL vmlinux 0x55d277aa devm_reset_controller_register +EXPORT_SYMBOL_GPL vmlinux 0x55e44c94 list_lru_count_one +EXPORT_SYMBOL_GPL vmlinux 0x55e577cf pci_traverse_device_nodes +EXPORT_SYMBOL_GPL vmlinux 0x55eb4b8b spi_busnum_to_master +EXPORT_SYMBOL_GPL vmlinux 0x55eecff4 bit_wait_io_timeout +EXPORT_SYMBOL_GPL vmlinux 0x55f093a9 opal_write_oppanel_async +EXPORT_SYMBOL_GPL vmlinux 0x55f95ba1 regulator_get +EXPORT_SYMBOL_GPL vmlinux 0x55ffcdac anon_inode_getfile +EXPORT_SYMBOL_GPL vmlinux 0x56054c05 crypto_it_tab +EXPORT_SYMBOL_GPL vmlinux 0x56173654 pcap_set_ts_bits +EXPORT_SYMBOL_GPL vmlinux 0x561a733b usb_alloc_urb +EXPORT_SYMBOL_GPL vmlinux 0x5620596f __tracepoint_rpm_resume +EXPORT_SYMBOL_GPL vmlinux 0x56256e8a orderly_poweroff +EXPORT_SYMBOL_GPL vmlinux 0x5625e2e7 device_add_properties +EXPORT_SYMBOL_GPL vmlinux 0x562c0ebb sdio_release_host +EXPORT_SYMBOL_GPL vmlinux 0x56310925 regulator_mode_to_status +EXPORT_SYMBOL_GPL vmlinux 0x56438887 md_stop_writes +EXPORT_SYMBOL_GPL vmlinux 0x564b06c2 dev_pm_opp_put_opp_table +EXPORT_SYMBOL_GPL vmlinux 0x5663395e dmaengine_unmap_put +EXPORT_SYMBOL_GPL vmlinux 0x567de956 disk_map_sector_rcu +EXPORT_SYMBOL_GPL vmlinux 0x5688ac05 usb_reset_endpoint +EXPORT_SYMBOL_GPL vmlinux 0x568a6e01 save_stack_trace_tsk +EXPORT_SYMBOL_GPL vmlinux 0x56b8540c bdev_disk_changed +EXPORT_SYMBOL_GPL vmlinux 0x56b95f3d led_classdev_register_ext +EXPORT_SYMBOL_GPL vmlinux 0x56bf9b4b virtqueue_get_buf +EXPORT_SYMBOL_GPL vmlinux 0x5701a348 pci_epf_free_space +EXPORT_SYMBOL_GPL vmlinux 0x570f3aaa __tracepoint_powernv_throttle +EXPORT_SYMBOL_GPL vmlinux 0x57127991 device_set_of_node_from_dev +EXPORT_SYMBOL_GPL vmlinux 0x571fd231 clockevents_unbind_device +EXPORT_SYMBOL_GPL vmlinux 0x57254d7e platform_bus +EXPORT_SYMBOL_GPL vmlinux 0x5727fa62 dev_forward_skb +EXPORT_SYMBOL_GPL vmlinux 0x5736a330 mm_iommu_ua_to_hpa +EXPORT_SYMBOL_GPL vmlinux 0x573b5453 ipv6_fixup_options +EXPORT_SYMBOL_GPL vmlinux 0x574b6aa3 devlink_dpipe_entry_ctx_close +EXPORT_SYMBOL_GPL vmlinux 0x57581f2e ohci_hub_control +EXPORT_SYMBOL_GPL vmlinux 0x5775c714 unregister_kprobe +EXPORT_SYMBOL_GPL vmlinux 0x577b5b77 ip6_append_data +EXPORT_SYMBOL_GPL vmlinux 0x5790e7a0 pci_unlock_rescan_remove +EXPORT_SYMBOL_GPL vmlinux 0x57949ef0 irq_generic_chip_ops +EXPORT_SYMBOL_GPL vmlinux 0x579e0bf5 rtnl_unregister_all +EXPORT_SYMBOL_GPL vmlinux 0x57aa8a6b devm_hwspin_lock_request +EXPORT_SYMBOL_GPL vmlinux 0x57ad4be0 opal_int_eoi +EXPORT_SYMBOL_GPL vmlinux 0x57b7a635 platform_msi_domain_free_irqs +EXPORT_SYMBOL_GPL vmlinux 0x57ba663a ethnl_cable_test_fault_length +EXPORT_SYMBOL_GPL vmlinux 0x57c16ace led_trigger_blink_oneshot +EXPORT_SYMBOL_GPL vmlinux 0x57c39727 kdb_register_flags +EXPORT_SYMBOL_GPL vmlinux 0x57c6a591 sock_zerocopy_callback +EXPORT_SYMBOL_GPL vmlinux 0x57e16c42 fat_free_clusters +EXPORT_SYMBOL_GPL vmlinux 0x57f132d3 of_property_count_elems_of_size +EXPORT_SYMBOL_GPL vmlinux 0x57f6408c spi_async_locked +EXPORT_SYMBOL_GPL vmlinux 0x57f70547 secure_ipv4_port_ephemeral +EXPORT_SYMBOL_GPL vmlinux 0x57ff6bd2 em_cpu_get +EXPORT_SYMBOL_GPL vmlinux 0x5808dcfc crypto_comp_compress +EXPORT_SYMBOL_GPL vmlinux 0x580eea58 stmpe_enable +EXPORT_SYMBOL_GPL vmlinux 0x582f24bf tpm2_get_tpm_pt +EXPORT_SYMBOL_GPL vmlinux 0x5831e062 cpus_read_trylock +EXPORT_SYMBOL_GPL vmlinux 0x58373d71 fat_remove_entries +EXPORT_SYMBOL_GPL vmlinux 0x583ea2b5 rio_get_comptag +EXPORT_SYMBOL_GPL vmlinux 0x58424480 vfio_del_group_dev +EXPORT_SYMBOL_GPL vmlinux 0x584f938f wm5110_revd_irq +EXPORT_SYMBOL_GPL vmlinux 0x5864c4ff rtc_update_irq_enable +EXPORT_SYMBOL_GPL vmlinux 0x5868d272 regmap_reinit_cache +EXPORT_SYMBOL_GPL vmlinux 0x586cdea1 device_node_to_regmap +EXPORT_SYMBOL_GPL vmlinux 0x5879a27d sfp_get_module_info +EXPORT_SYMBOL_GPL vmlinux 0x587bff39 ata_sff_dma_pause +EXPORT_SYMBOL_GPL vmlinux 0x5892f832 release_pmc_hardware +EXPORT_SYMBOL_GPL vmlinux 0x589cc0cd power_supply_get_drvdata +EXPORT_SYMBOL_GPL vmlinux 0x58b00973 debugfs_lookup +EXPORT_SYMBOL_GPL vmlinux 0x58b5244d hrtimer_forward +EXPORT_SYMBOL_GPL vmlinux 0x58c19b74 regcache_sync_region +EXPORT_SYMBOL_GPL vmlinux 0x58d1c745 ata_port_freeze +EXPORT_SYMBOL_GPL vmlinux 0x58d63d40 devm_get_free_pages +EXPORT_SYMBOL_GPL vmlinux 0x58da8f0b raw_seq_stop +EXPORT_SYMBOL_GPL vmlinux 0x58def6ca sfp_module_remove +EXPORT_SYMBOL_GPL vmlinux 0x59075387 __pci_reset_function_locked +EXPORT_SYMBOL_GPL vmlinux 0x5909fc18 opal_tpo_read +EXPORT_SYMBOL_GPL vmlinux 0x593cd326 icc_disable +EXPORT_SYMBOL_GPL vmlinux 0x595388ab kobject_create_and_add +EXPORT_SYMBOL_GPL vmlinux 0x5962a985 pcibios_free_controller_deferred +EXPORT_SYMBOL_GPL vmlinux 0x5964e23a mddev_unlock +EXPORT_SYMBOL_GPL vmlinux 0x59758888 devm_init_badblocks +EXPORT_SYMBOL_GPL vmlinux 0x59855592 fib_add_nexthop +EXPORT_SYMBOL_GPL vmlinux 0x5986d190 kdb_printf +EXPORT_SYMBOL_GPL vmlinux 0x599725fb scsi_dh_set_params +EXPORT_SYMBOL_GPL vmlinux 0x59a25f6f thermal_cooling_device_unregister +EXPORT_SYMBOL_GPL vmlinux 0x59a3709d crypto_unregister_skciphers +EXPORT_SYMBOL_GPL vmlinux 0x59b2adbf input_ff_effect_from_user +EXPORT_SYMBOL_GPL vmlinux 0x59b65db9 regulator_get_exclusive +EXPORT_SYMBOL_GPL vmlinux 0x59b6dc5d badblocks_set +EXPORT_SYMBOL_GPL vmlinux 0x59be22bc kvmhv_save_guest_pmu +EXPORT_SYMBOL_GPL vmlinux 0x59d7b08d devm_irq_setup_generic_chip +EXPORT_SYMBOL_GPL vmlinux 0x59f821d3 rtc_nvmem_register +EXPORT_SYMBOL_GPL vmlinux 0x5a0aba88 pm_runtime_forbid +EXPORT_SYMBOL_GPL vmlinux 0x5a10a95d phy_led_triggers_unregister +EXPORT_SYMBOL_GPL vmlinux 0x5a10b50f cpufreq_cpu_put +EXPORT_SYMBOL_GPL vmlinux 0x5a1d134a rcu_momentary_dyntick_idle +EXPORT_SYMBOL_GPL vmlinux 0x5a226398 blkdev_report_zones +EXPORT_SYMBOL_GPL vmlinux 0x5a29c556 devfreq_event_disable_edev +EXPORT_SYMBOL_GPL vmlinux 0x5a2a09c0 __ndisc_fill_addr_option +EXPORT_SYMBOL_GPL vmlinux 0x5a48c94f inet6_lookup +EXPORT_SYMBOL_GPL vmlinux 0x5a49dbc9 timerqueue_del +EXPORT_SYMBOL_GPL vmlinux 0x5a57dc70 led_trigger_unregister_simple +EXPORT_SYMBOL_GPL vmlinux 0x5a65cd08 rhltable_init +EXPORT_SYMBOL_GPL vmlinux 0x5a6cdb52 nf_ct_zone_dflt +EXPORT_SYMBOL_GPL vmlinux 0x5a6ddb27 tcp_get_info +EXPORT_SYMBOL_GPL vmlinux 0x5a754b8e rio_mport_get_feature +EXPORT_SYMBOL_GPL vmlinux 0x5a7bfe41 crypto_probing_notify +EXPORT_SYMBOL_GPL vmlinux 0x5a919a46 clock_cooling_get_level +EXPORT_SYMBOL_GPL vmlinux 0x5ab09745 edac_get_owner +EXPORT_SYMBOL_GPL vmlinux 0x5ac2ea3f security_file_permission +EXPORT_SYMBOL_GPL vmlinux 0x5aea27db early_find_capability +EXPORT_SYMBOL_GPL vmlinux 0x5b11468e pci_epc_set_bar +EXPORT_SYMBOL_GPL vmlinux 0x5b1c73fe gpiod_direction_input +EXPORT_SYMBOL_GPL vmlinux 0x5b21549e pinmux_generic_get_function +EXPORT_SYMBOL_GPL vmlinux 0x5b21ceff ring_buffer_iter_peek +EXPORT_SYMBOL_GPL vmlinux 0x5b33fbe1 __of_phy_provider_register +EXPORT_SYMBOL_GPL vmlinux 0x5b35c4f9 vfio_group_set_kvm +EXPORT_SYMBOL_GPL vmlinux 0x5b4a0c3c platform_device_add_data +EXPORT_SYMBOL_GPL vmlinux 0x5b4d77b2 tty_port_default_client_ops +EXPORT_SYMBOL_GPL vmlinux 0x5b527659 rio_request_inb_pwrite +EXPORT_SYMBOL_GPL vmlinux 0x5b6b0329 swiotlb_max_segment +EXPORT_SYMBOL_GPL vmlinux 0x5b70c4b9 devm_gpiod_get_optional +EXPORT_SYMBOL_GPL vmlinux 0x5b797dca device_link_add +EXPORT_SYMBOL_GPL vmlinux 0x5b80bfaa __class_register +EXPORT_SYMBOL_GPL vmlinux 0x5b8bdae7 devfreq_event_add_edev +EXPORT_SYMBOL_GPL vmlinux 0x5b9dab95 led_init_core +EXPORT_SYMBOL_GPL vmlinux 0x5ba060a0 devlink_port_param_driverinit_value_get +EXPORT_SYMBOL_GPL vmlinux 0x5ba22663 pci_find_next_capability +EXPORT_SYMBOL_GPL vmlinux 0x5ba39e84 verify_pkcs7_signature +EXPORT_SYMBOL_GPL vmlinux 0x5ba8d98c thermal_zone_of_sensor_register +EXPORT_SYMBOL_GPL vmlinux 0x5bb35b42 fsl8250_handle_irq +EXPORT_SYMBOL_GPL vmlinux 0x5bb3bf56 ipv4_redirect +EXPORT_SYMBOL_GPL vmlinux 0x5bb7461f nvdimm_provider_data +EXPORT_SYMBOL_GPL vmlinux 0x5bb7d96f crypto_alg_extsize +EXPORT_SYMBOL_GPL vmlinux 0x5bbdfa26 scatterwalk_ffwd +EXPORT_SYMBOL_GPL vmlinux 0x5bd0748f crypto_del_default_rng +EXPORT_SYMBOL_GPL vmlinux 0x5bd3c261 devm_mbox_controller_register +EXPORT_SYMBOL_GPL vmlinux 0x5bdae35b usb_phy_roothub_set_mode +EXPORT_SYMBOL_GPL vmlinux 0x5bdbac4e rcu_unexpedite_gp +EXPORT_SYMBOL_GPL vmlinux 0x5bfd3ad5 devm_gpiod_get_index_optional +EXPORT_SYMBOL_GPL vmlinux 0x5bfd82a0 dma_async_device_channel_register +EXPORT_SYMBOL_GPL vmlinux 0x5c022590 pinctrl_generic_get_group_count +EXPORT_SYMBOL_GPL vmlinux 0x5c2bcd37 bpf_warn_invalid_xdp_action +EXPORT_SYMBOL_GPL vmlinux 0x5c32bd70 vma_kernel_pagesize +EXPORT_SYMBOL_GPL vmlinux 0x5c34c7ab __mmdrop +EXPORT_SYMBOL_GPL vmlinux 0x5c38c3a6 xas_store +EXPORT_SYMBOL_GPL vmlinux 0x5c3db232 iommu_attach_group +EXPORT_SYMBOL_GPL vmlinux 0x5c4234c7 bpf_trace_run2 +EXPORT_SYMBOL_GPL vmlinux 0x5c45560c pm_runtime_set_memalloc_noio +EXPORT_SYMBOL_GPL vmlinux 0x5c574940 gpiod_get_value +EXPORT_SYMBOL_GPL vmlinux 0x5c5a1b16 tick_broadcast_control +EXPORT_SYMBOL_GPL vmlinux 0x5c5c788c __reset_control_get +EXPORT_SYMBOL_GPL vmlinux 0x5c6a4037 pwm_get_chip_data +EXPORT_SYMBOL_GPL vmlinux 0x5c80ec3a rtnl_register_module +EXPORT_SYMBOL_GPL vmlinux 0x5c993e3d sfp_add_phy +EXPORT_SYMBOL_GPL vmlinux 0x5cad8fc3 power_supply_ocv2cap_simple +EXPORT_SYMBOL_GPL vmlinux 0x5cb57175 split_page +EXPORT_SYMBOL_GPL vmlinux 0x5cb99d97 kernstart_addr +EXPORT_SYMBOL_GPL vmlinux 0x5cbce2d6 nd_blk_memremap_flags +EXPORT_SYMBOL_GPL vmlinux 0x5cc07668 dw_pcie_msi_init +EXPORT_SYMBOL_GPL vmlinux 0x5cc9eea5 tcp_leave_memory_pressure +EXPORT_SYMBOL_GPL vmlinux 0x5ccdb2e2 devm_pinctrl_get +EXPORT_SYMBOL_GPL vmlinux 0x5cd02eea sata_scr_write +EXPORT_SYMBOL_GPL vmlinux 0x5cd305ed digsig_verify +EXPORT_SYMBOL_GPL vmlinux 0x5cff6946 of_prop_next_string +EXPORT_SYMBOL_GPL vmlinux 0x5d0c41b9 usb_hc_died +EXPORT_SYMBOL_GPL vmlinux 0x5d17a4ca PageHuge +EXPORT_SYMBOL_GPL vmlinux 0x5d285420 synth_event_trace_array +EXPORT_SYMBOL_GPL vmlinux 0x5d393d87 pinconf_generic_dump_config +EXPORT_SYMBOL_GPL vmlinux 0x5d538839 lwtunnel_encap_del_ops +EXPORT_SYMBOL_GPL vmlinux 0x5d5d8f09 ip6_datagram_release_cb +EXPORT_SYMBOL_GPL vmlinux 0x5d6dbea7 tracepoint_probe_register +EXPORT_SYMBOL_GPL vmlinux 0x5d8476d3 bpf_sk_storage_diag_alloc +EXPORT_SYMBOL_GPL vmlinux 0x5d85aa91 icc_set_tag +EXPORT_SYMBOL_GPL vmlinux 0x5d8d652f sysfs_chmod_file +EXPORT_SYMBOL_GPL vmlinux 0x5d914762 da9055_regmap_config +EXPORT_SYMBOL_GPL vmlinux 0x5da62805 gpiod_set_raw_array_value +EXPORT_SYMBOL_GPL vmlinux 0x5da67adc zs_compact +EXPORT_SYMBOL_GPL vmlinux 0x5db4389f cpuset_cgrp_subsys_enabled_key +EXPORT_SYMBOL_GPL vmlinux 0x5db825f3 __device_reset +EXPORT_SYMBOL_GPL vmlinux 0x5dca9bc7 dma_get_required_mask +EXPORT_SYMBOL_GPL vmlinux 0x5dcc40f2 transport_class_register +EXPORT_SYMBOL_GPL vmlinux 0x5dce2c64 vfio_device_get_from_dev +EXPORT_SYMBOL_GPL vmlinux 0x5e00aea4 ucall_norets +EXPORT_SYMBOL_GPL vmlinux 0x5e0c2ea5 device_bind_driver +EXPORT_SYMBOL_GPL vmlinux 0x5e0e0a80 bsg_remove_queue +EXPORT_SYMBOL_GPL vmlinux 0x5e0ea1ab to_nd_desc +EXPORT_SYMBOL_GPL vmlinux 0x5e0ed1d0 alloc_empty_file +EXPORT_SYMBOL_GPL vmlinux 0x5e253c39 iommu_map_sg_atomic +EXPORT_SYMBOL_GPL vmlinux 0x5e305385 __sbitmap_queue_get +EXPORT_SYMBOL_GPL vmlinux 0x5e32e733 pci_msi_create_irq_domain +EXPORT_SYMBOL_GPL vmlinux 0x5e3f2820 noop_set_page_dirty +EXPORT_SYMBOL_GPL vmlinux 0x5e49c04a da9052_enable_irq +EXPORT_SYMBOL_GPL vmlinux 0x5e515be6 ktime_get_ts64 +EXPORT_SYMBOL_GPL vmlinux 0x5e51b089 virtqueue_enable_cb +EXPORT_SYMBOL_GPL vmlinux 0x5e51cd74 swiotlb_nr_tbl +EXPORT_SYMBOL_GPL vmlinux 0x5e534e9a devm_phy_get +EXPORT_SYMBOL_GPL vmlinux 0x5e60c0db rt_mutex_destroy +EXPORT_SYMBOL_GPL vmlinux 0x5e6715e3 regulator_unregister_supply_alias +EXPORT_SYMBOL_GPL vmlinux 0x5e696a4f extcon_get_property_capability +EXPORT_SYMBOL_GPL vmlinux 0x5e7141bf __hwspin_lock_timeout +EXPORT_SYMBOL_GPL vmlinux 0x5e7618b2 ata_host_activate +EXPORT_SYMBOL_GPL vmlinux 0x5e798ffb divider_get_val +EXPORT_SYMBOL_GPL vmlinux 0x5e84122a __blkg_prfill_rwstat +EXPORT_SYMBOL_GPL vmlinux 0x5e85415b ring_buffer_consume +EXPORT_SYMBOL_GPL vmlinux 0x5ea09750 crypto_mod_get +EXPORT_SYMBOL_GPL vmlinux 0x5eb9d573 __pm_runtime_idle +EXPORT_SYMBOL_GPL vmlinux 0x5ec62549 ata_dev_classify +EXPORT_SYMBOL_GPL vmlinux 0x5ed0cff6 inet_getpeer +EXPORT_SYMBOL_GPL vmlinux 0x5ed0da6c tm_disable +EXPORT_SYMBOL_GPL vmlinux 0x5eef2267 bpf_offload_dev_netdev_register +EXPORT_SYMBOL_GPL vmlinux 0x5f0ba1e1 bsg_job_done +EXPORT_SYMBOL_GPL vmlinux 0x5f17a81b synchronize_srcu +EXPORT_SYMBOL_GPL vmlinux 0x5f23e3fa insert_resource +EXPORT_SYMBOL_GPL vmlinux 0x5f422e28 cpuidle_register_driver +EXPORT_SYMBOL_GPL vmlinux 0x5f469c52 add_swap_extent +EXPORT_SYMBOL_GPL vmlinux 0x5f51301b crypto_grab_spawn +EXPORT_SYMBOL_GPL vmlinux 0x5f5330a4 __pci_hp_initialize +EXPORT_SYMBOL_GPL vmlinux 0x5f6f1e9e dax_get_private +EXPORT_SYMBOL_GPL vmlinux 0x5f7887ad css_next_descendant_pre +EXPORT_SYMBOL_GPL vmlinux 0x5f78c18b crypto_aead_setkey +EXPORT_SYMBOL_GPL vmlinux 0x5f9d07f5 crypto_hash_alg_has_setkey +EXPORT_SYMBOL_GPL vmlinux 0x5fa49d8d iommu_group_remove_device +EXPORT_SYMBOL_GPL vmlinux 0x5fb3ebb2 alarmtimer_get_rtcdev +EXPORT_SYMBOL_GPL vmlinux 0x5fc50118 pnv_npu2_map_lpar_dev +EXPORT_SYMBOL_GPL vmlinux 0x5fc8f85f ohci_init_driver +EXPORT_SYMBOL_GPL vmlinux 0x5fd1dcc8 blk_poll +EXPORT_SYMBOL_GPL vmlinux 0x5ff84a4e dev_pm_qos_hide_latency_limit +EXPORT_SYMBOL_GPL vmlinux 0x5ff980ec sock_prot_inuse_add +EXPORT_SYMBOL_GPL vmlinux 0x5ffc0a16 phy_10gbit_full_features +EXPORT_SYMBOL_GPL vmlinux 0x6000187c opal_check_token +EXPORT_SYMBOL_GPL vmlinux 0x60004123 pm_clk_suspend +EXPORT_SYMBOL_GPL vmlinux 0x60026071 devm_nvdimm_memremap +EXPORT_SYMBOL_GPL vmlinux 0x60091316 clk_notifier_register +EXPORT_SYMBOL_GPL vmlinux 0x600cc455 mmu_slb_size +EXPORT_SYMBOL_GPL vmlinux 0x60181723 pin_user_pages_fast +EXPORT_SYMBOL_GPL vmlinux 0x60233479 __irq_domain_add +EXPORT_SYMBOL_GPL vmlinux 0x60236936 rio_mport_chk_dev_access +EXPORT_SYMBOL_GPL vmlinux 0x60295618 serial8250_get_port +EXPORT_SYMBOL_GPL vmlinux 0x6038aaaf disk_part_iter_next +EXPORT_SYMBOL_GPL vmlinux 0x603e6821 fsstack_copy_inode_size +EXPORT_SYMBOL_GPL vmlinux 0x60407642 debugfs_create_x16 +EXPORT_SYMBOL_GPL vmlinux 0x6041d6ae synth_event_gen_cmd_array_start +EXPORT_SYMBOL_GPL vmlinux 0x60456af1 wb_writeout_inc +EXPORT_SYMBOL_GPL vmlinux 0x60456b55 regmap_noinc_read +EXPORT_SYMBOL_GPL vmlinux 0x606b9ba9 devm_kstrdup_const +EXPORT_SYMBOL_GPL vmlinux 0x607c4683 devlink_info_version_fixed_put +EXPORT_SYMBOL_GPL vmlinux 0x607f5da8 pci_status_get_and_clear_errors +EXPORT_SYMBOL_GPL vmlinux 0x6081884a usb_unlink_anchored_urbs +EXPORT_SYMBOL_GPL vmlinux 0x60907d81 cpufreq_unregister_driver +EXPORT_SYMBOL_GPL vmlinux 0x6091797f synchronize_rcu +EXPORT_SYMBOL_GPL vmlinux 0x6091ac58 devres_release_group +EXPORT_SYMBOL_GPL vmlinux 0x60a13e90 rcu_barrier +EXPORT_SYMBOL_GPL vmlinux 0x60a32ea9 pm_power_off +EXPORT_SYMBOL_GPL vmlinux 0x60a634c4 vfio_info_cap_add +EXPORT_SYMBOL_GPL vmlinux 0x60d5dbb1 blk_mq_sched_try_insert_merge +EXPORT_SYMBOL_GPL vmlinux 0x60d7f010 kvmppc_add_revmap_chain +EXPORT_SYMBOL_GPL vmlinux 0x60e2b217 devfreq_event_reset_event +EXPORT_SYMBOL_GPL vmlinux 0x60e757b1 init_dummy_netdev +EXPORT_SYMBOL_GPL vmlinux 0x60ebc96f ring_buffer_read_prepare +EXPORT_SYMBOL_GPL vmlinux 0x60f1e2e7 usb_disable_xhci_ports +EXPORT_SYMBOL_GPL vmlinux 0x6129fb93 sfp_remove_phy +EXPORT_SYMBOL_GPL vmlinux 0x612bfd89 errno_to_blk_status +EXPORT_SYMBOL_GPL vmlinux 0x612e745b sdio_signal_irq +EXPORT_SYMBOL_GPL vmlinux 0x613fa461 device_add_groups +EXPORT_SYMBOL_GPL vmlinux 0x6145813f sbitmap_show +EXPORT_SYMBOL_GPL vmlinux 0x61494bc1 mddev_init +EXPORT_SYMBOL_GPL vmlinux 0x614adcb7 of_overlay_remove_all +EXPORT_SYMBOL_GPL vmlinux 0x614d6fd7 sched_trace_rq_avg_irq +EXPORT_SYMBOL_GPL vmlinux 0x6155f894 sock_diag_destroy +EXPORT_SYMBOL_GPL vmlinux 0x615f7a2a ping_queue_rcv_skb +EXPORT_SYMBOL_GPL vmlinux 0x6168433c irq_gc_ack_set_bit +EXPORT_SYMBOL_GPL vmlinux 0x616b30c7 kmsg_dump_rewind +EXPORT_SYMBOL_GPL vmlinux 0x616d58d4 vfs_getxattr +EXPORT_SYMBOL_GPL vmlinux 0x61707650 devm_thermal_zone_of_sensor_register +EXPORT_SYMBOL_GPL vmlinux 0x6171c569 serial8250_rpm_get_tx +EXPORT_SYMBOL_GPL vmlinux 0x6181e79f timerqueue_add +EXPORT_SYMBOL_GPL vmlinux 0x6196220e generic_fh_to_dentry +EXPORT_SYMBOL_GPL vmlinux 0x6198dfea __ring_buffer_alloc +EXPORT_SYMBOL_GPL vmlinux 0x6199ad5d crypto_has_skcipher +EXPORT_SYMBOL_GPL vmlinux 0x619a8194 threads_core_mask +EXPORT_SYMBOL_GPL vmlinux 0x61a9c88e sfp_register_socket +EXPORT_SYMBOL_GPL vmlinux 0x61abbd65 edac_device_add_device +EXPORT_SYMBOL_GPL vmlinux 0x61af7370 crypto_alloc_kpp +EXPORT_SYMBOL_GPL vmlinux 0x61b85971 clk_register_fixed_rate +EXPORT_SYMBOL_GPL vmlinux 0x61ba73cc trace_array_destroy +EXPORT_SYMBOL_GPL vmlinux 0x61bbbdac serial8250_rpm_put_tx +EXPORT_SYMBOL_GPL vmlinux 0x61c1ce92 switchdev_port_obj_add +EXPORT_SYMBOL_GPL vmlinux 0x61cb5ea6 register_kprobes +EXPORT_SYMBOL_GPL vmlinux 0x61f67c92 phy_gbit_features_array +EXPORT_SYMBOL_GPL vmlinux 0x61fd3d2a regulator_get_bypass_regmap +EXPORT_SYMBOL_GPL vmlinux 0x621c054e uart_handle_dcd_change +EXPORT_SYMBOL_GPL vmlinux 0x622c7922 register_oom_notifier +EXPORT_SYMBOL_GPL vmlinux 0x62377a7b blk_io_schedule +EXPORT_SYMBOL_GPL vmlinux 0x623a5f1f trace_put_event_file +EXPORT_SYMBOL_GPL vmlinux 0x6246a629 synchronize_rcu_tasks_trace +EXPORT_SYMBOL_GPL vmlinux 0x6254cff8 ehci_adjust_port_wakeup_flags +EXPORT_SYMBOL_GPL vmlinux 0x6257dda7 clk_rate_exclusive_get +EXPORT_SYMBOL_GPL vmlinux 0x6259d291 clk_restore_context +EXPORT_SYMBOL_GPL vmlinux 0x628148be _kvmppc_restore_tm_pr +EXPORT_SYMBOL_GPL vmlinux 0x628c6dc3 dev_pm_domain_start +EXPORT_SYMBOL_GPL vmlinux 0x62956bb7 d_walk +EXPORT_SYMBOL_GPL vmlinux 0x62a06963 mmc_regulator_set_ocr +EXPORT_SYMBOL_GPL vmlinux 0x62a1614c pci_epc_init_notify +EXPORT_SYMBOL_GPL vmlinux 0x62a78927 skb_partial_csum_set +EXPORT_SYMBOL_GPL vmlinux 0x62bb09bf clocks_calc_mult_shift +EXPORT_SYMBOL_GPL vmlinux 0x62bec5fd class_find_device +EXPORT_SYMBOL_GPL vmlinux 0x62c379ea __tracepoint_map +EXPORT_SYMBOL_GPL vmlinux 0x62d2aabe devm_of_phy_provider_unregister +EXPORT_SYMBOL_GPL vmlinux 0x62da4440 perf_event_disable +EXPORT_SYMBOL_GPL vmlinux 0x62dd91cb powercap_unregister_zone +EXPORT_SYMBOL_GPL vmlinux 0x62fc4cf7 skb_segment_list +EXPORT_SYMBOL_GPL vmlinux 0x63150e06 clk_get_parent +EXPORT_SYMBOL_GPL vmlinux 0x6316c8bf strp_stop +EXPORT_SYMBOL_GPL vmlinux 0x63197685 s2idle_wake +EXPORT_SYMBOL_GPL vmlinux 0x633475c7 static_key_enable +EXPORT_SYMBOL_GPL vmlinux 0x633808b4 device_match_any +EXPORT_SYMBOL_GPL vmlinux 0x63381557 icc_std_aggregate +EXPORT_SYMBOL_GPL vmlinux 0x633c6897 pm_clk_destroy +EXPORT_SYMBOL_GPL vmlinux 0x6347e9e1 of_map_rid +EXPORT_SYMBOL_GPL vmlinux 0x634e2d7c synth_event_add_next_val +EXPORT_SYMBOL_GPL vmlinux 0x6369e57d free_vm_area +EXPORT_SYMBOL_GPL vmlinux 0x6370cd8d crypto_dequeue_request +EXPORT_SYMBOL_GPL vmlinux 0x63757e9c irq_domain_pop_irq +EXPORT_SYMBOL_GPL vmlinux 0x639b91dc eeh_pe_mark_isolated +EXPORT_SYMBOL_GPL vmlinux 0x63af6ec1 vfio_virqfd_disable +EXPORT_SYMBOL_GPL vmlinux 0x63c08029 clk_bulk_unprepare +EXPORT_SYMBOL_GPL vmlinux 0x63c83203 vfs_fallocate +EXPORT_SYMBOL_GPL vmlinux 0x63d7c3eb dev_pm_qos_expose_flags +EXPORT_SYMBOL_GPL vmlinux 0x63f7fe96 pci_find_ext_capability +EXPORT_SYMBOL_GPL vmlinux 0x63fb5ff9 phy_save_page +EXPORT_SYMBOL_GPL vmlinux 0x640a3650 dev_pm_qos_hide_latency_tolerance +EXPORT_SYMBOL_GPL vmlinux 0x640c6019 perf_event_cgrp_subsys_on_dfl_key +EXPORT_SYMBOL_GPL vmlinux 0x6431f18c phy_create +EXPORT_SYMBOL_GPL vmlinux 0x643cdea2 device_remove_properties +EXPORT_SYMBOL_GPL vmlinux 0x64433065 skb_mpls_push +EXPORT_SYMBOL_GPL vmlinux 0x6443b087 pci_hp_del +EXPORT_SYMBOL_GPL vmlinux 0x644dafb3 of_property_read_variable_u16_array +EXPORT_SYMBOL_GPL vmlinux 0x645042fc tty_ldisc_ref +EXPORT_SYMBOL_GPL vmlinux 0x6452e065 key_type_user +EXPORT_SYMBOL_GPL vmlinux 0x64801327 wakeup_sources_walk_next +EXPORT_SYMBOL_GPL vmlinux 0x6483d25e dma_resv_test_signaled_rcu +EXPORT_SYMBOL_GPL vmlinux 0x6488024d serial8250_handle_irq +EXPORT_SYMBOL_GPL vmlinux 0x648b461c devm_power_supply_register +EXPORT_SYMBOL_GPL vmlinux 0x64925270 __dax_synchronous +EXPORT_SYMBOL_GPL vmlinux 0x649383c4 fsnotify_destroy_mark +EXPORT_SYMBOL_GPL vmlinux 0x6493a2df rht_bucket_nested +EXPORT_SYMBOL_GPL vmlinux 0x6496fcae __blkdev_driver_ioctl +EXPORT_SYMBOL_GPL vmlinux 0x64a9e140 mpc8xxx_spi_rx_buf_u16 +EXPORT_SYMBOL_GPL vmlinux 0x64d09ec8 __fl6_sock_lookup +EXPORT_SYMBOL_GPL vmlinux 0x64d564fe fuse_sync_release +EXPORT_SYMBOL_GPL vmlinux 0x64db2f8f i2c_add_numbered_adapter +EXPORT_SYMBOL_GPL vmlinux 0x64e27c4f synth_event_delete +EXPORT_SYMBOL_GPL vmlinux 0x64f36620 dax_flush +EXPORT_SYMBOL_GPL vmlinux 0x64f43243 usb_get_from_anchor +EXPORT_SYMBOL_GPL vmlinux 0x64faf25c vprintk_default +EXPORT_SYMBOL_GPL vmlinux 0x64fcde80 spi_new_device +EXPORT_SYMBOL_GPL vmlinux 0x650f49a4 __put_net +EXPORT_SYMBOL_GPL vmlinux 0x652b3942 attribute_container_find_class_device +EXPORT_SYMBOL_GPL vmlinux 0x652f2c25 con_debug_enter +EXPORT_SYMBOL_GPL vmlinux 0x6545435a kstrdup_quotable_file +EXPORT_SYMBOL_GPL vmlinux 0x655169d4 relay_reset +EXPORT_SYMBOL_GPL vmlinux 0x655195a2 br_fdb_test_addr_hook +EXPORT_SYMBOL_GPL vmlinux 0x655600c7 arizona_set_irq_wake +EXPORT_SYMBOL_GPL vmlinux 0x65606439 crypto_enqueue_request +EXPORT_SYMBOL_GPL vmlinux 0x6567b2b5 ata_sas_port_destroy +EXPORT_SYMBOL_GPL vmlinux 0x656ce0b6 devm_spi_mem_dirmap_create +EXPORT_SYMBOL_GPL vmlinux 0x65713ae1 fwnode_get_next_child_node +EXPORT_SYMBOL_GPL vmlinux 0x657b442b scsi_host_busy_iter +EXPORT_SYMBOL_GPL vmlinux 0x6595bdc3 pinctrl_register +EXPORT_SYMBOL_GPL vmlinux 0x65ab1fa8 dw_pcie_ep_init_notify +EXPORT_SYMBOL_GPL vmlinux 0x65ab5ecb usb_alloc_dev +EXPORT_SYMBOL_GPL vmlinux 0x65ca13ca mmc_cmdq_disable +EXPORT_SYMBOL_GPL vmlinux 0x65ccb6f0 call_netevent_notifiers +EXPORT_SYMBOL_GPL vmlinux 0x65d756b9 strp_process +EXPORT_SYMBOL_GPL vmlinux 0x65d81433 serial8250_modem_status +EXPORT_SYMBOL_GPL vmlinux 0x65eac411 raw_v6_hashinfo +EXPORT_SYMBOL_GPL vmlinux 0x65f13f91 elv_register +EXPORT_SYMBOL_GPL vmlinux 0x65f79b7a disable_kprobe +EXPORT_SYMBOL_GPL vmlinux 0x66051d5b gpiochip_line_is_persistent +EXPORT_SYMBOL_GPL vmlinux 0x6608f4bd devm_namespace_enable +EXPORT_SYMBOL_GPL vmlinux 0x660de7eb zap_vma_ptes +EXPORT_SYMBOL_GPL vmlinux 0x66143624 usb_hub_claim_port +EXPORT_SYMBOL_GPL vmlinux 0x661601de sprint_symbol +EXPORT_SYMBOL_GPL vmlinux 0x662878cc devlink_port_register +EXPORT_SYMBOL_GPL vmlinux 0x6629d042 pci_host_common_probe +EXPORT_SYMBOL_GPL vmlinux 0x663213f3 blk_queue_write_cache +EXPORT_SYMBOL_GPL vmlinux 0x6634d77c of_phy_simple_xlate +EXPORT_SYMBOL_GPL vmlinux 0x6634dc6e regmap_add_irq_chip +EXPORT_SYMBOL_GPL vmlinux 0x6636c3c9 irq_set_vcpu_affinity +EXPORT_SYMBOL_GPL vmlinux 0x663bb448 devlink_fmsg_obj_nest_end +EXPORT_SYMBOL_GPL vmlinux 0x663bdeff adp5520_unregister_notifier +EXPORT_SYMBOL_GPL vmlinux 0x663e846e __tracepoint_unmap +EXPORT_SYMBOL_GPL vmlinux 0x664562ad thermal_remove_hwmon_sysfs +EXPORT_SYMBOL_GPL vmlinux 0x664a1947 fsnotify_put_group +EXPORT_SYMBOL_GPL vmlinux 0x6656ee49 page_reporting_register +EXPORT_SYMBOL_GPL vmlinux 0x665e92a0 clk_set_duty_cycle +EXPORT_SYMBOL_GPL vmlinux 0x666573f8 usb_phy_set_charger_state +EXPORT_SYMBOL_GPL vmlinux 0x66774b62 dev_pm_opp_get_max_clock_latency +EXPORT_SYMBOL_GPL vmlinux 0x6682a9f0 debugfs_create_u16 +EXPORT_SYMBOL_GPL vmlinux 0x668402aa crypto_put_default_rng +EXPORT_SYMBOL_GPL vmlinux 0x6688e60b netdev_set_default_ethtool_ops +EXPORT_SYMBOL_GPL vmlinux 0x668f67e2 ata_std_sched_eh +EXPORT_SYMBOL_GPL vmlinux 0x6693bc90 register_kprobe +EXPORT_SYMBOL_GPL vmlinux 0x66ad39e3 __devm_reset_control_get +EXPORT_SYMBOL_GPL vmlinux 0x66afb53b unix_table_lock +EXPORT_SYMBOL_GPL vmlinux 0x66b36955 copro_calculate_slb +EXPORT_SYMBOL_GPL vmlinux 0x66b97421 sfp_link_up +EXPORT_SYMBOL_GPL vmlinux 0x66d66c93 shash_free_singlespawn_instance +EXPORT_SYMBOL_GPL vmlinux 0x66d87d38 symbol_put_addr +EXPORT_SYMBOL_GPL vmlinux 0x66eaea13 devlink_dpipe_entry_ctx_append +EXPORT_SYMBOL_GPL vmlinux 0x67002768 pci_generic_ecam_ops +EXPORT_SYMBOL_GPL vmlinux 0x6700a449 serial8250_request_dma +EXPORT_SYMBOL_GPL vmlinux 0x6735d56e tcp_ca_get_name_by_key +EXPORT_SYMBOL_GPL vmlinux 0x673efac8 usb_unlocked_enable_lpm +EXPORT_SYMBOL_GPL vmlinux 0x67436294 dma_buf_vunmap +EXPORT_SYMBOL_GPL vmlinux 0x6768dc36 devres_add +EXPORT_SYMBOL_GPL vmlinux 0x67955ce6 profile_hits +EXPORT_SYMBOL_GPL vmlinux 0x6799aa37 iomap_set_page_dirty +EXPORT_SYMBOL_GPL vmlinux 0x67aa1e05 mmc_pwrseq_register +EXPORT_SYMBOL_GPL vmlinux 0x67b013f3 ata_pci_sff_prepare_host +EXPORT_SYMBOL_GPL vmlinux 0x67d2e763 tty_release_struct +EXPORT_SYMBOL_GPL vmlinux 0x67da9f7c sha512_zero_message_hash +EXPORT_SYMBOL_GPL vmlinux 0x67eae82a pm_genpd_syscore_poweron +EXPORT_SYMBOL_GPL vmlinux 0x6813b309 phy_modify_mmd_changed +EXPORT_SYMBOL_GPL vmlinux 0x68146f66 devm_free_pages +EXPORT_SYMBOL_GPL vmlinux 0x68254ac1 ata_eh_freeze_port +EXPORT_SYMBOL_GPL vmlinux 0x682d8957 extcon_set_property_sync +EXPORT_SYMBOL_GPL vmlinux 0x682ff057 ring_buffer_commit_overrun_cpu +EXPORT_SYMBOL_GPL vmlinux 0x68463f9a genphy_c45_an_config_aneg +EXPORT_SYMBOL_GPL vmlinux 0x685c45df ata_sas_port_suspend +EXPORT_SYMBOL_GPL vmlinux 0x68774b0b of_genpd_parse_idle_states +EXPORT_SYMBOL_GPL vmlinux 0x68786f2e xive_native_configure_queue +EXPORT_SYMBOL_GPL vmlinux 0x688bda1d crypto_skcipher_decrypt +EXPORT_SYMBOL_GPL vmlinux 0x68952493 rcu_note_context_switch +EXPORT_SYMBOL_GPL vmlinux 0x68b36787 task_user_regset_view +EXPORT_SYMBOL_GPL vmlinux 0x68b83141 fib_nexthop_info +EXPORT_SYMBOL_GPL vmlinux 0x68da2e70 nf_hook_entries_insert_raw +EXPORT_SYMBOL_GPL vmlinux 0x68da6341 crypto_aead_setauthsize +EXPORT_SYMBOL_GPL vmlinux 0x68e752ad gpiod_export +EXPORT_SYMBOL_GPL vmlinux 0x68e80238 page_mkclean +EXPORT_SYMBOL_GPL vmlinux 0x68fa5153 crypto_register_template +EXPORT_SYMBOL_GPL vmlinux 0x690412d4 netdev_walk_all_upper_dev_rcu +EXPORT_SYMBOL_GPL vmlinux 0x69070a63 udp_abort +EXPORT_SYMBOL_GPL vmlinux 0x6909a38b opal_rtc_read +EXPORT_SYMBOL_GPL vmlinux 0x690f585e phy_basic_ports_array +EXPORT_SYMBOL_GPL vmlinux 0x6913865a trace_clock_jiffies +EXPORT_SYMBOL_GPL vmlinux 0x6917eb26 task_active_pid_ns +EXPORT_SYMBOL_GPL vmlinux 0x6928269b xive_native_disable_vp +EXPORT_SYMBOL_GPL vmlinux 0x694906ea sata_lpm_ignore_phy_events +EXPORT_SYMBOL_GPL vmlinux 0x6958ae23 dax_get_by_host +EXPORT_SYMBOL_GPL vmlinux 0x695e34b5 tracepoint_probe_register_prio +EXPORT_SYMBOL_GPL vmlinux 0x696a54d7 skb_cow_data +EXPORT_SYMBOL_GPL vmlinux 0x696f2b63 of_changeset_init +EXPORT_SYMBOL_GPL vmlinux 0x697a199b inet_hashinfo2_init_mod +EXPORT_SYMBOL_GPL vmlinux 0x697c5d0d tracing_snapshot_alloc +EXPORT_SYMBOL_GPL vmlinux 0x697cbbb4 threads_per_core +EXPORT_SYMBOL_GPL vmlinux 0x69957df5 mm_iommu_newdev +EXPORT_SYMBOL_GPL vmlinux 0x69a00d51 dm_noflush_suspending +EXPORT_SYMBOL_GPL vmlinux 0x69b05eea i2c_probe_func_quick_read +EXPORT_SYMBOL_GPL vmlinux 0x69b17e8f vfs_readf +EXPORT_SYMBOL_GPL vmlinux 0x69b48019 wm8350_read_auxadc +EXPORT_SYMBOL_GPL vmlinux 0x69db77e8 gpiochip_add_pin_range +EXPORT_SYMBOL_GPL vmlinux 0x69e1f309 srcu_barrier +EXPORT_SYMBOL_GPL vmlinux 0x69e683de uuid_gen +EXPORT_SYMBOL_GPL vmlinux 0x69ee2220 linear_range_get_selector_high +EXPORT_SYMBOL_GPL vmlinux 0x69fcf0bc flush_vsx_to_thread +EXPORT_SYMBOL_GPL vmlinux 0x6a05b65b fb_videomode_from_videomode +EXPORT_SYMBOL_GPL vmlinux 0x6a1733eb iommu_group_unregister_notifier +EXPORT_SYMBOL_GPL vmlinux 0x6a24a7d3 __devm_regmap_init_i2c +EXPORT_SYMBOL_GPL vmlinux 0x6a421062 memory_failure_queue +EXPORT_SYMBOL_GPL vmlinux 0x6a4274a6 thermal_zone_bind_cooling_device +EXPORT_SYMBOL_GPL vmlinux 0x6a427a90 iommu_dev_disable_feature +EXPORT_SYMBOL_GPL vmlinux 0x6a460dc5 schedule_hrtimeout +EXPORT_SYMBOL_GPL vmlinux 0x6a478129 __scsi_init_queue +EXPORT_SYMBOL_GPL vmlinux 0x6a4f623b mmu_notifier_synchronize +EXPORT_SYMBOL_GPL vmlinux 0x6a5e2bde __cookie_v6_init_sequence +EXPORT_SYMBOL_GPL vmlinux 0x6a5e5fd5 addrconf_add_linklocal +EXPORT_SYMBOL_GPL vmlinux 0x6a63f6a8 ata_bmdma_dumb_qc_prep +EXPORT_SYMBOL_GPL vmlinux 0x6a7a436e skb_splice_bits +EXPORT_SYMBOL_GPL vmlinux 0x6a8441be cpci_hp_start +EXPORT_SYMBOL_GPL vmlinux 0x6a9e6898 metadata_dst_alloc +EXPORT_SYMBOL_GPL vmlinux 0x6a9f7548 regulator_set_suspend_voltage +EXPORT_SYMBOL_GPL vmlinux 0x6aa33f54 serial8250_do_get_mctrl +EXPORT_SYMBOL_GPL vmlinux 0x6ab0ff15 devlink_health_reporter_create +EXPORT_SYMBOL_GPL vmlinux 0x6ab4260a tracing_snapshot_cond_enable +EXPORT_SYMBOL_GPL vmlinux 0x6abdee99 dev_pm_opp_put_regulators +EXPORT_SYMBOL_GPL vmlinux 0x6ad4dcff usb_of_has_combined_node +EXPORT_SYMBOL_GPL vmlinux 0x6b09364e pinctrl_remove_gpio_range +EXPORT_SYMBOL_GPL vmlinux 0x6b16f76d led_sysfs_disable +EXPORT_SYMBOL_GPL vmlinux 0x6b1d7e1d pinctrl_add_gpio_ranges +EXPORT_SYMBOL_GPL vmlinux 0x6b22926b irq_work_sync +EXPORT_SYMBOL_GPL vmlinux 0x6b2a637b set_task_ioprio +EXPORT_SYMBOL_GPL vmlinux 0x6b2cc25d clk_hw_get_flags +EXPORT_SYMBOL_GPL vmlinux 0x6b3097da led_trigger_remove +EXPORT_SYMBOL_GPL vmlinux 0x6b406ed0 virtqueue_get_desc_addr +EXPORT_SYMBOL_GPL vmlinux 0x6b413c9b sfp_link_down +EXPORT_SYMBOL_GPL vmlinux 0x6b4822fa ata_port_abort +EXPORT_SYMBOL_GPL vmlinux 0x6b660ff6 ata_host_detach +EXPORT_SYMBOL_GPL vmlinux 0x6b66b1e8 evm_verifyxattr +EXPORT_SYMBOL_GPL vmlinux 0x6b7d6338 pm_genpd_init +EXPORT_SYMBOL_GPL vmlinux 0x6b7e6c10 irq_remove_generic_chip +EXPORT_SYMBOL_GPL vmlinux 0x6b81c38b power_supply_unreg_notifier +EXPORT_SYMBOL_GPL vmlinux 0x6b81ebc2 inode_sb_list_add +EXPORT_SYMBOL_GPL vmlinux 0x6b8bcef4 switchdev_port_attr_set +EXPORT_SYMBOL_GPL vmlinux 0x6ba36c6a hwpoison_filter_flags_value +EXPORT_SYMBOL_GPL vmlinux 0x6ba7df84 sysfs_groups_change_owner +EXPORT_SYMBOL_GPL vmlinux 0x6ba8d304 pci_generic_config_write32 +EXPORT_SYMBOL_GPL vmlinux 0x6bd1aa56 stack_trace_save +EXPORT_SYMBOL_GPL vmlinux 0x6beed43e fwnode_remove_software_node +EXPORT_SYMBOL_GPL vmlinux 0x6c01d871 blk_rq_unprep_clone +EXPORT_SYMBOL_GPL vmlinux 0x6c0550ae vring_del_virtqueue +EXPORT_SYMBOL_GPL vmlinux 0x6c137c00 lwtunnel_xmit +EXPORT_SYMBOL_GPL vmlinux 0x6c243e21 debugfs_attr_read +EXPORT_SYMBOL_GPL vmlinux 0x6c3f70e0 guid_gen +EXPORT_SYMBOL_GPL vmlinux 0x6c4b6684 reset_control_assert +EXPORT_SYMBOL_GPL vmlinux 0x6c53b328 pseries_eeh_init_edev_recursive +EXPORT_SYMBOL_GPL vmlinux 0x6c57ee07 devm_regulator_get_optional +EXPORT_SYMBOL_GPL vmlinux 0x6c63a084 usb_autopm_get_interface_async +EXPORT_SYMBOL_GPL vmlinux 0x6c69c4b3 sata_pmp_qc_defer_cmd_switch +EXPORT_SYMBOL_GPL vmlinux 0x6c705ee4 kick_process +EXPORT_SYMBOL_GPL vmlinux 0x6c727a54 dev_pm_domain_attach_by_id +EXPORT_SYMBOL_GPL vmlinux 0x6c751a0d debugfs_create_ulong +EXPORT_SYMBOL_GPL vmlinux 0x6c85638c devlink_resource_size_get +EXPORT_SYMBOL_GPL vmlinux 0x6c868e3a path_noexec +EXPORT_SYMBOL_GPL vmlinux 0x6c93e885 __sock_recv_timestamp +EXPORT_SYMBOL_GPL vmlinux 0x6ca4bf88 async_synchronize_full_domain +EXPORT_SYMBOL_GPL vmlinux 0x6cb6f54d do_xdp_generic +EXPORT_SYMBOL_GPL vmlinux 0x6cbeb4a1 kgdb_register_io_module +EXPORT_SYMBOL_GPL vmlinux 0x6ccf140c vga_default_device +EXPORT_SYMBOL_GPL vmlinux 0x6ce50ccd spi_mem_driver_unregister +EXPORT_SYMBOL_GPL vmlinux 0x6ce57cdd nl_table +EXPORT_SYMBOL_GPL vmlinux 0x6d0ae550 pinctrl_gpio_request +EXPORT_SYMBOL_GPL vmlinux 0x6d25b094 gpiod_set_config +EXPORT_SYMBOL_GPL vmlinux 0x6d2fc5a6 net_namespace_list +EXPORT_SYMBOL_GPL vmlinux 0x6d6fcecb __devm_pci_epc_create +EXPORT_SYMBOL_GPL vmlinux 0x6d6fec1f ktime_mono_to_any +EXPORT_SYMBOL_GPL vmlinux 0x6d7e951e rcu_exp_batches_completed +EXPORT_SYMBOL_GPL vmlinux 0x6d8b820b tty_ldisc_flush +EXPORT_SYMBOL_GPL vmlinux 0x6d8d503d cpu_latency_qos_update_request +EXPORT_SYMBOL_GPL vmlinux 0x6d95665a power_supply_powers +EXPORT_SYMBOL_GPL vmlinux 0x6d9df151 trace_event_buffer_lock_reserve +EXPORT_SYMBOL_GPL vmlinux 0x6d9ee2a0 __request_percpu_irq +EXPORT_SYMBOL_GPL vmlinux 0x6dbaafd3 put_old_timespec32 +EXPORT_SYMBOL_GPL vmlinux 0x6dcfe5fe devlink_traps_register +EXPORT_SYMBOL_GPL vmlinux 0x6dd52a12 is_transparent_hugepage +EXPORT_SYMBOL_GPL vmlinux 0x6de72eff __nvdimm_create +EXPORT_SYMBOL_GPL vmlinux 0x6df8316f i2c_handle_smbus_host_notify +EXPORT_SYMBOL_GPL vmlinux 0x6dfc005c devlink_sb_unregister +EXPORT_SYMBOL_GPL vmlinux 0x6dfc78f1 usb_put_intf +EXPORT_SYMBOL_GPL vmlinux 0x6e05478a __pm_stay_awake +EXPORT_SYMBOL_GPL vmlinux 0x6e28ca34 pci_epc_map_addr +EXPORT_SYMBOL_GPL vmlinux 0x6e3ff83a edac_device_alloc_index +EXPORT_SYMBOL_GPL vmlinux 0x6e488e6d edac_mc_find_csrow_by_page +EXPORT_SYMBOL_GPL vmlinux 0x6e4bc056 spi_res_free +EXPORT_SYMBOL_GPL vmlinux 0x6e60939e bpf_trace_run8 +EXPORT_SYMBOL_GPL vmlinux 0x6e69b397 inet_csk_route_child_sock +EXPORT_SYMBOL_GPL vmlinux 0x6e6be62b cpufreq_dbs_governor_stop +EXPORT_SYMBOL_GPL vmlinux 0x6e6ef469 virtqueue_add_inbuf +EXPORT_SYMBOL_GPL vmlinux 0x6e779d92 device_destroy +EXPORT_SYMBOL_GPL vmlinux 0x6e7943ec iommu_group_id +EXPORT_SYMBOL_GPL vmlinux 0x6e84e676 inet6_csk_addr2sockaddr +EXPORT_SYMBOL_GPL vmlinux 0x6e89a560 regmap_irq_chip_get_base +EXPORT_SYMBOL_GPL vmlinux 0x6e9faf35 clk_hw_round_rate +EXPORT_SYMBOL_GPL vmlinux 0x6ea2982b hwspin_lock_request +EXPORT_SYMBOL_GPL vmlinux 0x6ea65d03 __netpoll_cleanup +EXPORT_SYMBOL_GPL vmlinux 0x6eab3c77 of_irq_get_byname +EXPORT_SYMBOL_GPL vmlinux 0x6eab7dd3 fat_search_long +EXPORT_SYMBOL_GPL vmlinux 0x6ebe366f ktime_get_mono_fast_ns +EXPORT_SYMBOL_GPL vmlinux 0x6ebf79d3 pm_generic_restore_noirq +EXPORT_SYMBOL_GPL vmlinux 0x6ec2b119 __trace_note_message +EXPORT_SYMBOL_GPL vmlinux 0x6ec4a89d pci_reset_bus +EXPORT_SYMBOL_GPL vmlinux 0x6ee1a2cb perf_aux_output_flag +EXPORT_SYMBOL_GPL vmlinux 0x6ee4fa33 espintcp_queue_out +EXPORT_SYMBOL_GPL vmlinux 0x6ee8c94b sfp_get_module_eeprom +EXPORT_SYMBOL_GPL vmlinux 0x6ef6b54f ktime_get_boot_fast_ns +EXPORT_SYMBOL_GPL vmlinux 0x6efcd9e5 usb_unpoison_urb +EXPORT_SYMBOL_GPL vmlinux 0x6f0088d9 xive_native_sync_source +EXPORT_SYMBOL_GPL vmlinux 0x6f105da7 do_truncate +EXPORT_SYMBOL_GPL vmlinux 0x6f12560a get_old_timespec32 +EXPORT_SYMBOL_GPL vmlinux 0x6f1d164d pinctrl_register_and_init +EXPORT_SYMBOL_GPL vmlinux 0x6f2e0ce9 dma_wait_for_async_tx +EXPORT_SYMBOL_GPL vmlinux 0x6f5c9052 alloc_page_buffers +EXPORT_SYMBOL_GPL vmlinux 0x6f858947 pci_epc_get_features +EXPORT_SYMBOL_GPL vmlinux 0x6f9e763b timecounter_read +EXPORT_SYMBOL_GPL vmlinux 0x6faa6700 rio_dma_prep_xfer +EXPORT_SYMBOL_GPL vmlinux 0x6fb76dc1 edac_mc_handle_error +EXPORT_SYMBOL_GPL vmlinux 0x6fcef6ab ring_buffer_reset +EXPORT_SYMBOL_GPL vmlinux 0x6ff607b6 crypto_get_default_rng +EXPORT_SYMBOL_GPL vmlinux 0x6ffea85b ohci_resume +EXPORT_SYMBOL_GPL vmlinux 0x7006586e iommu_get_group_resv_regions +EXPORT_SYMBOL_GPL vmlinux 0x7023d907 md_start +EXPORT_SYMBOL_GPL vmlinux 0x70268524 __xive_vm_h_cppr +EXPORT_SYMBOL_GPL vmlinux 0x70313564 tcp_rate_check_app_limited +EXPORT_SYMBOL_GPL vmlinux 0x7035dd2f debugfs_attr_write +EXPORT_SYMBOL_GPL vmlinux 0x7046dd9f __pneigh_lookup +EXPORT_SYMBOL_GPL vmlinux 0x704ae08b devm_gpiod_get_array_optional +EXPORT_SYMBOL_GPL vmlinux 0x704d62d0 usb_driver_claim_interface +EXPORT_SYMBOL_GPL vmlinux 0x704f24ae kvmppc_restore_tm_hv +EXPORT_SYMBOL_GPL vmlinux 0x7053b1b2 dma_need_sync +EXPORT_SYMBOL_GPL vmlinux 0x7067d02d iommu_domain_get_attr +EXPORT_SYMBOL_GPL vmlinux 0x70681770 xhci_ext_cap_init +EXPORT_SYMBOL_GPL vmlinux 0x70689780 rio_dma_prep_slave_sg +EXPORT_SYMBOL_GPL vmlinux 0x7073c04f phy_10_100_features_array +EXPORT_SYMBOL_GPL vmlinux 0x70742d28 extcon_get_property +EXPORT_SYMBOL_GPL vmlinux 0x70805862 iomap_invalidatepage +EXPORT_SYMBOL_GPL vmlinux 0x709254dd __tracepoint_br_fdb_update +EXPORT_SYMBOL_GPL vmlinux 0x709e9ae6 pinctrl_pm_select_idle_state +EXPORT_SYMBOL_GPL vmlinux 0x70a06d11 ata_msleep +EXPORT_SYMBOL_GPL vmlinux 0x70b06f5a usb_free_urb +EXPORT_SYMBOL_GPL vmlinux 0x70c2a531 adp5520_write +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 0x70cf1aa0 gpiochip_irq_domain_deactivate +EXPORT_SYMBOL_GPL vmlinux 0x70fb0eb7 nvdimm_has_cache +EXPORT_SYMBOL_GPL vmlinux 0x710c73b6 crypto_unregister_notifier +EXPORT_SYMBOL_GPL vmlinux 0x712037ca inet_csk_update_pmtu +EXPORT_SYMBOL_GPL vmlinux 0x7123c7ec iommu_group_add_device +EXPORT_SYMBOL_GPL vmlinux 0x7124c494 fib6_check_nexthop +EXPORT_SYMBOL_GPL vmlinux 0x7128542c put_pid +EXPORT_SYMBOL_GPL vmlinux 0x712c5fb1 ehci_suspend +EXPORT_SYMBOL_GPL vmlinux 0x71316503 kmsg_dump_get_line +EXPORT_SYMBOL_GPL vmlinux 0x714ad2f5 sock_diag_put_meminfo +EXPORT_SYMBOL_GPL vmlinux 0x714d3f69 regulator_bulk_free +EXPORT_SYMBOL_GPL vmlinux 0x71501923 handle_simple_irq +EXPORT_SYMBOL_GPL vmlinux 0x71547d9b crypto_unregister_instance +EXPORT_SYMBOL_GPL vmlinux 0x71549330 unregister_net_sysctl_table +EXPORT_SYMBOL_GPL vmlinux 0x716265c7 debugfs_initialized +EXPORT_SYMBOL_GPL vmlinux 0x71650819 add_bootloader_randomness +EXPORT_SYMBOL_GPL vmlinux 0x71852c6f thp_get_unmapped_area +EXPORT_SYMBOL_GPL vmlinux 0x7197f9e7 pci_bus_add_device +EXPORT_SYMBOL_GPL vmlinux 0x719e17ff clk_notifier_unregister +EXPORT_SYMBOL_GPL vmlinux 0x71bc9f79 pci_epc_put +EXPORT_SYMBOL_GPL vmlinux 0x71c1acfb sata_port_ops +EXPORT_SYMBOL_GPL vmlinux 0x71f6670b __cookie_v6_check +EXPORT_SYMBOL_GPL vmlinux 0x71f69a1b sock_zerocopy_put +EXPORT_SYMBOL_GPL vmlinux 0x71fb180a power_supply_get_property +EXPORT_SYMBOL_GPL vmlinux 0x722f2a55 devlink_port_attrs_pci_vf_set +EXPORT_SYMBOL_GPL vmlinux 0x7245b07e device_connection_add +EXPORT_SYMBOL_GPL vmlinux 0x725a3a09 regulator_suspend_enable +EXPORT_SYMBOL_GPL vmlinux 0x7267f4d9 ata_sff_postreset +EXPORT_SYMBOL_GPL vmlinux 0x726c3ceb ata_sff_thaw +EXPORT_SYMBOL_GPL vmlinux 0x7278d328 all_vm_events +EXPORT_SYMBOL_GPL vmlinux 0x728717d1 phy_start_machine +EXPORT_SYMBOL_GPL vmlinux 0x728cce92 sysfs_notify +EXPORT_SYMBOL_GPL vmlinux 0x72a81a1d regmap_multi_reg_write_bypassed +EXPORT_SYMBOL_GPL vmlinux 0x72ac5ae0 vfio_register_iommu_driver +EXPORT_SYMBOL_GPL vmlinux 0x72b26ff0 pm_generic_suspend_late +EXPORT_SYMBOL_GPL vmlinux 0x72cdf0ff ping_hash +EXPORT_SYMBOL_GPL vmlinux 0x72d267dc nvmem_del_cell_lookups +EXPORT_SYMBOL_GPL vmlinux 0x72d6ed16 regulator_set_voltage_time +EXPORT_SYMBOL_GPL vmlinux 0x72daee9f sk_psock_tls_strp_read +EXPORT_SYMBOL_GPL vmlinux 0x72e5ad87 devfreq_cooling_register +EXPORT_SYMBOL_GPL vmlinux 0x72e6dbb4 device_attach +EXPORT_SYMBOL_GPL vmlinux 0x72ef8560 sdio_claim_irq +EXPORT_SYMBOL_GPL vmlinux 0x72f23bc8 __tracepoint_remove_device_from_group +EXPORT_SYMBOL_GPL vmlinux 0x7313b4ac spi_delay_to_ns +EXPORT_SYMBOL_GPL vmlinux 0x735a8e5f register_pernet_subsys +EXPORT_SYMBOL_GPL vmlinux 0x7369ffc0 dm_device_name +EXPORT_SYMBOL_GPL vmlinux 0x737060e1 xdp_rxq_info_unreg_mem_model +EXPORT_SYMBOL_GPL vmlinux 0x7378ca41 xas_nomem +EXPORT_SYMBOL_GPL vmlinux 0x73a48b4a ata_sff_std_ports +EXPORT_SYMBOL_GPL vmlinux 0x73c2554f __iowrite64_copy +EXPORT_SYMBOL_GPL vmlinux 0x73cc8631 oiap +EXPORT_SYMBOL_GPL vmlinux 0x73db3d5b crypto_cipher_setkey +EXPORT_SYMBOL_GPL vmlinux 0x73e1f127 regmap_write_async +EXPORT_SYMBOL_GPL vmlinux 0x73ef4d24 spi_controller_suspend +EXPORT_SYMBOL_GPL vmlinux 0x73fe5ccc nd_region_provider_data +EXPORT_SYMBOL_GPL vmlinux 0x740ba9f3 relay_flush +EXPORT_SYMBOL_GPL vmlinux 0x74199b26 opal_leds_set_ind +EXPORT_SYMBOL_GPL vmlinux 0x741f307f hrtimer_init +EXPORT_SYMBOL_GPL vmlinux 0x743a165e ata_pack_xfermask +EXPORT_SYMBOL_GPL vmlinux 0x743f0b41 serial8250_em485_stop_tx +EXPORT_SYMBOL_GPL vmlinux 0x746df108 vfs_read +EXPORT_SYMBOL_GPL vmlinux 0x747eac2d nf_queue +EXPORT_SYMBOL_GPL vmlinux 0x747f3be4 fwnode_handle_put +EXPORT_SYMBOL_GPL vmlinux 0x749582f7 serial8250_set_defaults +EXPORT_SYMBOL_GPL vmlinux 0x74ad14d1 nexthop_for_each_fib6_nh +EXPORT_SYMBOL_GPL vmlinux 0x74b5ea68 lcm_not_zero +EXPORT_SYMBOL_GPL vmlinux 0x74baf17a tracing_is_on +EXPORT_SYMBOL_GPL vmlinux 0x74c0d59c blkcg_activate_policy +EXPORT_SYMBOL_GPL vmlinux 0x74c7bffa stack_trace_snprint +EXPORT_SYMBOL_GPL vmlinux 0x74dd409f devm_reset_control_array_get +EXPORT_SYMBOL_GPL vmlinux 0x74e6b8c8 devlink_port_type_clear +EXPORT_SYMBOL_GPL vmlinux 0x74ed644f kernfs_path_from_node +EXPORT_SYMBOL_GPL vmlinux 0x750abb1f led_get_default_pattern +EXPORT_SYMBOL_GPL vmlinux 0x75133f6e visitor128 +EXPORT_SYMBOL_GPL vmlinux 0x751d2ba4 xfrm_dev_offload_ok +EXPORT_SYMBOL_GPL vmlinux 0x75214135 kvmppc_find_table +EXPORT_SYMBOL_GPL vmlinux 0x7522f3ba irq_modify_status +EXPORT_SYMBOL_GPL vmlinux 0x753e3979 sk_msg_trim +EXPORT_SYMBOL_GPL vmlinux 0x753e8a61 devm_regmap_add_irq_chip_np +EXPORT_SYMBOL_GPL vmlinux 0x754ba823 trace_seq_puts +EXPORT_SYMBOL_GPL vmlinux 0x755840be devres_open_group +EXPORT_SYMBOL_GPL vmlinux 0x756ba6cb dw_pcie_link_set_n_fts +EXPORT_SYMBOL_GPL vmlinux 0x7573426c rio_dev_put +EXPORT_SYMBOL_GPL vmlinux 0x757cfe35 xive_native_get_vp_info +EXPORT_SYMBOL_GPL vmlinux 0x75833bd2 dma_get_any_slave_channel +EXPORT_SYMBOL_GPL vmlinux 0x759139cb of_pci_check_probe_only +EXPORT_SYMBOL_GPL vmlinux 0x759b74b2 crypto_unregister_templates +EXPORT_SYMBOL_GPL vmlinux 0x75bafeb6 regulator_get_error_flags +EXPORT_SYMBOL_GPL vmlinux 0x75cbfb09 add_interrupt_randomness +EXPORT_SYMBOL_GPL vmlinux 0x75d4e345 mmu_interval_notifier_insert +EXPORT_SYMBOL_GPL vmlinux 0x75dd4ebe of_overlay_remove +EXPORT_SYMBOL_GPL vmlinux 0x75e9c735 pci_ats_disabled +EXPORT_SYMBOL_GPL vmlinux 0x760553d9 devm_regulator_unregister_supply_alias +EXPORT_SYMBOL_GPL vmlinux 0x76104bd5 ata_sff_data_xfer32 +EXPORT_SYMBOL_GPL vmlinux 0x76201b18 inet_csk_addr2sockaddr +EXPORT_SYMBOL_GPL vmlinux 0x76433683 component_add +EXPORT_SYMBOL_GPL vmlinux 0x7646c675 badblocks_show +EXPORT_SYMBOL_GPL vmlinux 0x7665ee72 crypto_dh_decode_key +EXPORT_SYMBOL_GPL vmlinux 0x7681946c unregister_pm_notifier +EXPORT_SYMBOL_GPL vmlinux 0x7695b12d serdev_device_close +EXPORT_SYMBOL_GPL vmlinux 0x76ab7a9f wm8350_block_write +EXPORT_SYMBOL_GPL vmlinux 0x76ad4309 regulator_bulk_register_supply_alias +EXPORT_SYMBOL_GPL vmlinux 0x76ba86e9 da903x_set_bits +EXPORT_SYMBOL_GPL vmlinux 0x76c0b918 srcu_notifier_call_chain +EXPORT_SYMBOL_GPL vmlinux 0x76d9b876 clk_set_rate +EXPORT_SYMBOL_GPL vmlinux 0x76dd5ed3 devm_platform_get_and_ioremap_resource +EXPORT_SYMBOL_GPL vmlinux 0x76ecf547 fat_sync_inode +EXPORT_SYMBOL_GPL vmlinux 0x76eeeb0f sha384_zero_message_hash +EXPORT_SYMBOL_GPL vmlinux 0x76f2abe0 btree_lookup +EXPORT_SYMBOL_GPL vmlinux 0x76f56e2e ata_bmdma_port_start32 +EXPORT_SYMBOL_GPL vmlinux 0x77222306 ring_buffer_read_page +EXPORT_SYMBOL_GPL vmlinux 0x772542e9 devlink_traps_unregister +EXPORT_SYMBOL_GPL vmlinux 0x7729cbdd task_handoff_register +EXPORT_SYMBOL_GPL vmlinux 0x773806e1 wm831x_regmap_config +EXPORT_SYMBOL_GPL vmlinux 0x773f708e sysfs_remove_file_ns +EXPORT_SYMBOL_GPL vmlinux 0x77510f41 sata_scr_read +EXPORT_SYMBOL_GPL vmlinux 0x775799af dev_pm_opp_of_find_icc_paths +EXPORT_SYMBOL_GPL vmlinux 0x7757b51a clk_unregister +EXPORT_SYMBOL_GPL vmlinux 0x7769af2e ata_common_sdev_attrs +EXPORT_SYMBOL_GPL vmlinux 0x778053a3 dmaengine_desc_set_metadata_len +EXPORT_SYMBOL_GPL vmlinux 0x778f3db7 of_dma_xlate_by_chan_id +EXPORT_SYMBOL_GPL vmlinux 0x7791235d mmc_send_tuning +EXPORT_SYMBOL_GPL vmlinux 0x7791e066 dw_pcie_read +EXPORT_SYMBOL_GPL vmlinux 0x7792084a __clk_hw_register_divider +EXPORT_SYMBOL_GPL vmlinux 0x779bbccb extcon_dev_register +EXPORT_SYMBOL_GPL vmlinux 0x77a10510 ata_pci_device_do_suspend +EXPORT_SYMBOL_GPL vmlinux 0x77ae495d usb_speed_string +EXPORT_SYMBOL_GPL vmlinux 0x77bcb43e ata_sas_port_resume +EXPORT_SYMBOL_GPL vmlinux 0x77c3dfc8 crypto_mod_put +EXPORT_SYMBOL_GPL vmlinux 0x77de627d rq_flush_dcache_pages +EXPORT_SYMBOL_GPL vmlinux 0x77e75be3 sfp_bus_put +EXPORT_SYMBOL_GPL vmlinux 0x77e88876 ata_bmdma32_port_ops +EXPORT_SYMBOL_GPL vmlinux 0x77f5adbb kset_find_obj +EXPORT_SYMBOL_GPL vmlinux 0x77fa2709 tty_save_termios +EXPORT_SYMBOL_GPL vmlinux 0x77ff8434 rdma_cgrp_subsys_enabled_key +EXPORT_SYMBOL_GPL vmlinux 0x78041b8f byte_rev_table +EXPORT_SYMBOL_GPL vmlinux 0x78043c43 firmware_request_cache +EXPORT_SYMBOL_GPL vmlinux 0x7806ab4a vfio_iommu_group_get +EXPORT_SYMBOL_GPL vmlinux 0x7808277c xfrm_audit_state_delete +EXPORT_SYMBOL_GPL vmlinux 0x7814b2b3 __pm_runtime_set_status +EXPORT_SYMBOL_GPL vmlinux 0x781524fe linear_hugepage_index +EXPORT_SYMBOL_GPL vmlinux 0x781974d4 hwspin_lock_request_specific +EXPORT_SYMBOL_GPL vmlinux 0x7829071d virtio_max_dma_size +EXPORT_SYMBOL_GPL vmlinux 0x78486dae sync_page_io +EXPORT_SYMBOL_GPL vmlinux 0x785115e3 devm_extcon_dev_free +EXPORT_SYMBOL_GPL vmlinux 0x785a93b4 si_mem_available +EXPORT_SYMBOL_GPL vmlinux 0x786bdf15 ata_sas_port_start +EXPORT_SYMBOL_GPL vmlinux 0x786dc8d7 phy_driver_is_genphy_10g +EXPORT_SYMBOL_GPL vmlinux 0x7874eb53 param_set_bool_enable_only +EXPORT_SYMBOL_GPL vmlinux 0x787c882b lzo1x_1_compress +EXPORT_SYMBOL_GPL vmlinux 0x78810d92 ata_port_pbar_desc +EXPORT_SYMBOL_GPL vmlinux 0x7883cb5b pci_intx +EXPORT_SYMBOL_GPL vmlinux 0x788bfbad ring_buffer_empty +EXPORT_SYMBOL_GPL vmlinux 0x7892f786 ata_pci_bmdma_init_one +EXPORT_SYMBOL_GPL vmlinux 0x789c73d9 rcu_cpu_stall_suppress_at_boot +EXPORT_SYMBOL_GPL vmlinux 0x78ba5f6e iomap_seek_data +EXPORT_SYMBOL_GPL vmlinux 0x78bf6d66 kthread_data +EXPORT_SYMBOL_GPL vmlinux 0x78c4874b of_irq_find_parent +EXPORT_SYMBOL_GPL vmlinux 0x78cad906 iptunnel_xmit +EXPORT_SYMBOL_GPL vmlinux 0x78d2e40e xfrm_audit_state_replay +EXPORT_SYMBOL_GPL vmlinux 0x78e58a4e xive_native_has_single_escalation +EXPORT_SYMBOL_GPL vmlinux 0x78e735d9 raw_seq_start +EXPORT_SYMBOL_GPL vmlinux 0x78ecc56b trace_event_raw_init +EXPORT_SYMBOL_GPL vmlinux 0x78f72d94 ata_sff_tf_load +EXPORT_SYMBOL_GPL vmlinux 0x78fc9339 crypto_shash_digest +EXPORT_SYMBOL_GPL vmlinux 0x790e524b usb_urb_ep_type_check +EXPORT_SYMBOL_GPL vmlinux 0x79146d68 debugfs_create_u32_array +EXPORT_SYMBOL_GPL vmlinux 0x7918d817 memory_failure +EXPORT_SYMBOL_GPL vmlinux 0x79288e79 spi_add_device +EXPORT_SYMBOL_GPL vmlinux 0x792e0e9b ping_bind +EXPORT_SYMBOL_GPL vmlinux 0x7932ba30 class_dev_iter_next +EXPORT_SYMBOL_GPL vmlinux 0x793990fc sysfs_create_files +EXPORT_SYMBOL_GPL vmlinux 0x793f0c82 dev_pm_opp_unregister_set_opp_helper +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 0x794cb4c4 i2c_new_client_device +EXPORT_SYMBOL_GPL vmlinux 0x79854ffa verify_signature +EXPORT_SYMBOL_GPL vmlinux 0x7986b78a max8997_bulk_read +EXPORT_SYMBOL_GPL vmlinux 0x79a104fa usb_wakeup_notification +EXPORT_SYMBOL_GPL vmlinux 0x79a79580 clock_cooling_register +EXPORT_SYMBOL_GPL vmlinux 0x79a89274 set_online_page_callback +EXPORT_SYMBOL_GPL vmlinux 0x79b6da43 xhci_dbg_trace +EXPORT_SYMBOL_GPL vmlinux 0x79bd9a4f bd_unlink_disk_holder +EXPORT_SYMBOL_GPL vmlinux 0x79d52a77 iomap_migrate_page +EXPORT_SYMBOL_GPL vmlinux 0x79db4c29 dma_request_chan +EXPORT_SYMBOL_GPL vmlinux 0x79defbe1 kthread_should_park +EXPORT_SYMBOL_GPL vmlinux 0x79e039a0 of_get_required_opp_performance_state +EXPORT_SYMBOL_GPL vmlinux 0x79f697e4 lzorle1x_1_compress +EXPORT_SYMBOL_GPL vmlinux 0x79fc81c4 ping_common_sendmsg +EXPORT_SYMBOL_GPL vmlinux 0x79fd8be5 iommu_register_device_fault_handler +EXPORT_SYMBOL_GPL vmlinux 0x7a0b2a3b device_store_int +EXPORT_SYMBOL_GPL vmlinux 0x7a3f8fb1 ip_route_output_key_hash +EXPORT_SYMBOL_GPL vmlinux 0x7a4a86d6 device_get_dma_attr +EXPORT_SYMBOL_GPL vmlinux 0x7a69fc51 udp_cmsg_send +EXPORT_SYMBOL_GPL vmlinux 0x7a6ae1f5 sdio_writew +EXPORT_SYMBOL_GPL vmlinux 0x7a71af77 add_memory_driver_managed +EXPORT_SYMBOL_GPL vmlinux 0x7a73e605 wm831x_isinkv_values +EXPORT_SYMBOL_GPL vmlinux 0x7a81541b async_synchronize_cookie +EXPORT_SYMBOL_GPL vmlinux 0x7a83f767 fib_rules_register +EXPORT_SYMBOL_GPL vmlinux 0x7a8ff7f2 tcp_twsk_destructor +EXPORT_SYMBOL_GPL vmlinux 0x7a98f4b4 copy_from_user_nofault +EXPORT_SYMBOL_GPL vmlinux 0x7a9e4c23 software_node_register_node_group +EXPORT_SYMBOL_GPL vmlinux 0x7ab634fc devfreq_event_is_enabled +EXPORT_SYMBOL_GPL vmlinux 0x7abc4fe7 arizona_of_get_type +EXPORT_SYMBOL_GPL vmlinux 0x7abf441b ehci_cf_port_reset_rwsem +EXPORT_SYMBOL_GPL vmlinux 0x7ac1fb09 pci_enable_pasid +EXPORT_SYMBOL_GPL vmlinux 0x7ac722bd phy_all_ports_features_array +EXPORT_SYMBOL_GPL vmlinux 0x7acd81e3 regmap_get_raw_write_max +EXPORT_SYMBOL_GPL vmlinux 0x7ad1ded1 pinctrl_register_mappings +EXPORT_SYMBOL_GPL vmlinux 0x7ae3cbbf usb_unanchor_urb +EXPORT_SYMBOL_GPL vmlinux 0x7af4e58c xhci_gen_setup +EXPORT_SYMBOL_GPL vmlinux 0x7af6ab89 crypto_stats_akcipher_decrypt +EXPORT_SYMBOL_GPL vmlinux 0x7afcb7db __kprobe_event_add_fields +EXPORT_SYMBOL_GPL vmlinux 0x7b0213c3 mbox_chan_txdone +EXPORT_SYMBOL_GPL vmlinux 0x7b178afe unlock_system_sleep +EXPORT_SYMBOL_GPL vmlinux 0x7b1df89f pci_address_to_pio +EXPORT_SYMBOL_GPL vmlinux 0x7b3123b1 serial8250_em485_config +EXPORT_SYMBOL_GPL vmlinux 0x7b395a70 tpm_tis_resume +EXPORT_SYMBOL_GPL vmlinux 0x7b432604 pskb_put +EXPORT_SYMBOL_GPL vmlinux 0x7b4ff8f4 badrange_forget +EXPORT_SYMBOL_GPL vmlinux 0x7b5207c3 stmpe_reg_read +EXPORT_SYMBOL_GPL vmlinux 0x7b5a4926 sha1_zero_message_hash +EXPORT_SYMBOL_GPL vmlinux 0x7b67ac45 crypto_comp_decompress +EXPORT_SYMBOL_GPL vmlinux 0x7b783824 ppc_breakpoint_available +EXPORT_SYMBOL_GPL vmlinux 0x7b8181db of_pci_find_child_device +EXPORT_SYMBOL_GPL vmlinux 0x7b856860 cpuidle_unregister_device +EXPORT_SYMBOL_GPL vmlinux 0x7b9072d3 __fat_fs_error +EXPORT_SYMBOL_GPL vmlinux 0x7b91e06d ata_do_dev_read_id +EXPORT_SYMBOL_GPL vmlinux 0x7b94d1ce wm8350_gpio_config +EXPORT_SYMBOL_GPL vmlinux 0x7b9793a2 get_cpu_idle_time_us +EXPORT_SYMBOL_GPL vmlinux 0x7ba19838 cpuidle_unregister_driver +EXPORT_SYMBOL_GPL vmlinux 0x7bb412e3 iommu_report_device_fault +EXPORT_SYMBOL_GPL vmlinux 0x7bc22ee9 sk_msg_return +EXPORT_SYMBOL_GPL vmlinux 0x7bc74926 flush_altivec_to_thread +EXPORT_SYMBOL_GPL vmlinux 0x7beb6f9b mnt_want_write_file +EXPORT_SYMBOL_GPL vmlinux 0x7bec7f53 __tracepoint_neigh_timer_handler +EXPORT_SYMBOL_GPL vmlinux 0x7c1b4cea serial8250_do_set_mctrl +EXPORT_SYMBOL_GPL vmlinux 0x7c2b110f devlink_alloc +EXPORT_SYMBOL_GPL vmlinux 0x7c36128d fuse_free_conn +EXPORT_SYMBOL_GPL vmlinux 0x7c37bc89 pseries_ioei_notifier_list +EXPORT_SYMBOL_GPL vmlinux 0x7c3a9608 blk_execute_rq_nowait +EXPORT_SYMBOL_GPL vmlinux 0x7c4ac24e usb_register_driver +EXPORT_SYMBOL_GPL vmlinux 0x7c57421b x509_cert_parse +EXPORT_SYMBOL_GPL vmlinux 0x7c5855e2 virtqueue_get_buf_ctx +EXPORT_SYMBOL_GPL vmlinux 0x7c73a9e0 klist_add_head +EXPORT_SYMBOL_GPL vmlinux 0x7c785346 of_nvmem_cell_get +EXPORT_SYMBOL_GPL vmlinux 0x7c7f5094 pci_speed_string +EXPORT_SYMBOL_GPL vmlinux 0x7c9a7371 clk_prepare +EXPORT_SYMBOL_GPL vmlinux 0x7ca4741e sched_setattr +EXPORT_SYMBOL_GPL vmlinux 0x7ca93889 fwnode_get_next_available_child_node +EXPORT_SYMBOL_GPL vmlinux 0x7ca992dd devm_regmap_field_alloc +EXPORT_SYMBOL_GPL vmlinux 0x7cbf10ee wbc_attach_and_unlock_inode +EXPORT_SYMBOL_GPL vmlinux 0x7cc48015 pci_device_is_present +EXPORT_SYMBOL_GPL vmlinux 0x7cd6f042 cpufreq_get_current_driver +EXPORT_SYMBOL_GPL vmlinux 0x7cd7c203 sysfs_create_file_ns +EXPORT_SYMBOL_GPL vmlinux 0x7cddbfe7 cs47l24_irq +EXPORT_SYMBOL_GPL vmlinux 0x7cdfd0d8 clean_acked_data_disable +EXPORT_SYMBOL_GPL vmlinux 0x7ceaf0d5 generic_handle_irq +EXPORT_SYMBOL_GPL vmlinux 0x7ceb1f4d usb_poison_urb +EXPORT_SYMBOL_GPL vmlinux 0x7cecd9a0 add_to_page_cache_lru +EXPORT_SYMBOL_GPL vmlinux 0x7cf62ac6 ata_sff_irq_on +EXPORT_SYMBOL_GPL vmlinux 0x7d00c65b nd_synchronize +EXPORT_SYMBOL_GPL vmlinux 0x7d053ecb file_ra_state_init +EXPORT_SYMBOL_GPL vmlinux 0x7d1bb1d4 tnum_strn +EXPORT_SYMBOL_GPL vmlinux 0x7d2ca554 pci_epc_get_first_free_bar +EXPORT_SYMBOL_GPL vmlinux 0x7d3d5f89 dma_buf_fd +EXPORT_SYMBOL_GPL vmlinux 0x7d59dd46 pm_wq +EXPORT_SYMBOL_GPL vmlinux 0x7d5a0587 blk_mq_make_request +EXPORT_SYMBOL_GPL vmlinux 0x7d5d1aaa get_current_tty +EXPORT_SYMBOL_GPL vmlinux 0x7d67d738 tcp_abort +EXPORT_SYMBOL_GPL vmlinux 0x7d6b0cb2 usb_driver_release_interface +EXPORT_SYMBOL_GPL vmlinux 0x7d7ee0a2 dev_pm_qos_update_request +EXPORT_SYMBOL_GPL vmlinux 0x7d9011b5 sysfs_update_groups +EXPORT_SYMBOL_GPL vmlinux 0x7d906d20 sdio_readw +EXPORT_SYMBOL_GPL vmlinux 0x7d998c7f sk_msg_free_nocharge +EXPORT_SYMBOL_GPL vmlinux 0x7da31158 rtc_set_time +EXPORT_SYMBOL_GPL vmlinux 0x7db50ade blk_queue_can_use_dma_map_merging +EXPORT_SYMBOL_GPL vmlinux 0x7dc1f783 devm_gpiod_get_index +EXPORT_SYMBOL_GPL vmlinux 0x7dcb4e74 crypto_unregister_rng +EXPORT_SYMBOL_GPL vmlinux 0x7dccef38 ata_sas_scsi_ioctl +EXPORT_SYMBOL_GPL vmlinux 0x7dd14618 bpf_prog_add +EXPORT_SYMBOL_GPL vmlinux 0x7dda30af unregister_tracepoint_module_notifier +EXPORT_SYMBOL_GPL vmlinux 0x7ddd5fd4 idr_find +EXPORT_SYMBOL_GPL vmlinux 0x7de4dd9e dev_get_regmap +EXPORT_SYMBOL_GPL vmlinux 0x7de823cd ip6_input +EXPORT_SYMBOL_GPL vmlinux 0x7df1951e get_physical_package_id +EXPORT_SYMBOL_GPL vmlinux 0x7dff2a0c kvmhv_load_guest_pmu +EXPORT_SYMBOL_GPL vmlinux 0x7e0a9ed0 get_kernel_pages +EXPORT_SYMBOL_GPL vmlinux 0x7e13c98a clk_register_fractional_divider +EXPORT_SYMBOL_GPL vmlinux 0x7e1e1bd3 iommu_tce_check_gpa +EXPORT_SYMBOL_GPL vmlinux 0x7e1e1c44 blk_queue_flag_test_and_set +EXPORT_SYMBOL_GPL vmlinux 0x7e419b8a pinctrl_utils_add_config +EXPORT_SYMBOL_GPL vmlinux 0x7e45e5ce pci_disable_rom +EXPORT_SYMBOL_GPL vmlinux 0x7e4ea9c6 ata_bmdma_port_intr +EXPORT_SYMBOL_GPL vmlinux 0x7e5db80b pstore_name_to_type +EXPORT_SYMBOL_GPL vmlinux 0x7e64181d usb_calc_bus_time +EXPORT_SYMBOL_GPL vmlinux 0x7e7e3f58 ring_buffer_reset_cpu +EXPORT_SYMBOL_GPL vmlinux 0x7e7e974c inet6_sk_rebuild_header +EXPORT_SYMBOL_GPL vmlinux 0x7e8e4c7f regcache_cache_bypass +EXPORT_SYMBOL_GPL vmlinux 0x7e938588 __bdev_dax_supported +EXPORT_SYMBOL_GPL vmlinux 0x7eabb635 scsi_dh_activate +EXPORT_SYMBOL_GPL vmlinux 0x7eb808d0 add_cpu +EXPORT_SYMBOL_GPL vmlinux 0x7ebc3cde led_trigger_unregister +EXPORT_SYMBOL_GPL vmlinux 0x7ed0720c sbitmap_any_bit_set +EXPORT_SYMBOL_GPL vmlinux 0x7ed0d670 usb_sg_wait +EXPORT_SYMBOL_GPL vmlinux 0x7edcd385 user_read +EXPORT_SYMBOL_GPL vmlinux 0x7ede7af7 pci_rescan_bus +EXPORT_SYMBOL_GPL vmlinux 0x7eea6b8b pcap_adc_async +EXPORT_SYMBOL_GPL vmlinux 0x7eee5bfa __clocksource_update_freq_scale +EXPORT_SYMBOL_GPL vmlinux 0x7efad5c7 regmap_exit +EXPORT_SYMBOL_GPL vmlinux 0x7f0e3f96 inet_ehash_nolisten +EXPORT_SYMBOL_GPL vmlinux 0x7f152385 pci_platform_power_transition +EXPORT_SYMBOL_GPL vmlinux 0x7f16ac77 ip_fib_metrics_init +EXPORT_SYMBOL_GPL vmlinux 0x7f1ab27b i2c_adapter_depth +EXPORT_SYMBOL_GPL vmlinux 0x7f1bb688 iommu_unregister_device_fault_handler +EXPORT_SYMBOL_GPL vmlinux 0x7f226275 serdev_device_add +EXPORT_SYMBOL_GPL vmlinux 0x7f287a4c blk_rq_err_bytes +EXPORT_SYMBOL_GPL vmlinux 0x7f3e8540 rt_mutex_lock +EXPORT_SYMBOL_GPL vmlinux 0x7f4ceb4c __irq_set_handler +EXPORT_SYMBOL_GPL vmlinux 0x7f5882d3 platform_driver_unregister +EXPORT_SYMBOL_GPL vmlinux 0x7f758cff init_srcu_struct +EXPORT_SYMBOL_GPL vmlinux 0x7f7cbc64 ip_tunnel_need_metadata +EXPORT_SYMBOL_GPL vmlinux 0x7fa9b7dd to_nvdimm_bus_dev +EXPORT_SYMBOL_GPL vmlinux 0x7fad8855 pci_probe_reset_slot +EXPORT_SYMBOL_GPL vmlinux 0x7fafdec9 clk_fixed_factor_ops +EXPORT_SYMBOL_GPL vmlinux 0x7fc1dd59 devm_kasprintf +EXPORT_SYMBOL_GPL vmlinux 0x7fd28b20 simple_attr_read +EXPORT_SYMBOL_GPL vmlinux 0x7fda28a8 crypto_alloc_aead +EXPORT_SYMBOL_GPL vmlinux 0x7fe5b31e gpiod_direction_output +EXPORT_SYMBOL_GPL vmlinux 0x7fea5d53 xhci_run +EXPORT_SYMBOL_GPL vmlinux 0x7fed4cee bio_disassociate_blkg +EXPORT_SYMBOL_GPL vmlinux 0x7ff473c3 ata_sas_async_probe +EXPORT_SYMBOL_GPL vmlinux 0x7ff82d93 sdio_writesb +EXPORT_SYMBOL_GPL vmlinux 0x8011607a bpf_prog_free +EXPORT_SYMBOL_GPL vmlinux 0x801fd2cb class_dev_iter_exit +EXPORT_SYMBOL_GPL vmlinux 0x80204cf8 sata_link_debounce +EXPORT_SYMBOL_GPL vmlinux 0x802d42b7 rtnl_delete_link +EXPORT_SYMBOL_GPL vmlinux 0x80457445 sk_setup_caps +EXPORT_SYMBOL_GPL vmlinux 0x804c4e64 phy_configure +EXPORT_SYMBOL_GPL vmlinux 0x805667cf devlink_fmsg_u64_put +EXPORT_SYMBOL_GPL vmlinux 0x80768da3 init_uts_ns +EXPORT_SYMBOL_GPL vmlinux 0x807fdcc4 call_rcu_tasks_rude +EXPORT_SYMBOL_GPL vmlinux 0x808ec1a3 crypto_alg_tested +EXPORT_SYMBOL_GPL vmlinux 0x80a55b00 handle_fasteoi_irq +EXPORT_SYMBOL_GPL vmlinux 0x80c3c25e tty_standard_install +EXPORT_SYMBOL_GPL vmlinux 0x80c68137 nf_log_buf_close +EXPORT_SYMBOL_GPL vmlinux 0x80d1c5ec ata_port_wait_eh +EXPORT_SYMBOL_GPL vmlinux 0x80d5e57a mpi_free +EXPORT_SYMBOL_GPL vmlinux 0x80d84b13 devices_cgrp_subsys_on_dfl_key +EXPORT_SYMBOL_GPL vmlinux 0x80df61bd skb_tstamp_tx +EXPORT_SYMBOL_GPL vmlinux 0x80ea8e46 wm8350_reg_lock +EXPORT_SYMBOL_GPL vmlinux 0x81006070 of_device_uevent_modalias +EXPORT_SYMBOL_GPL vmlinux 0x810865ac direct_make_request +EXPORT_SYMBOL_GPL vmlinux 0x810b7060 fsnotify_init_mark +EXPORT_SYMBOL_GPL vmlinux 0x811dc334 usb_unregister_notify +EXPORT_SYMBOL_GPL vmlinux 0x81334ef5 mmc_regulator_get_supply +EXPORT_SYMBOL_GPL vmlinux 0x8141a4ad pm_runtime_get_if_active +EXPORT_SYMBOL_GPL vmlinux 0x814d1eea edac_get_sysfs_subsys +EXPORT_SYMBOL_GPL vmlinux 0x8152ebfc blk_trace_setup +EXPORT_SYMBOL_GPL vmlinux 0x815588a6 clk_enable +EXPORT_SYMBOL_GPL vmlinux 0x815fda83 sed_ioctl +EXPORT_SYMBOL_GPL vmlinux 0x81674f78 btree_grim_visitor +EXPORT_SYMBOL_GPL vmlinux 0x816a41ca cpufreq_update_limits +EXPORT_SYMBOL_GPL vmlinux 0x818713f5 dev_change_net_namespace +EXPORT_SYMBOL_GPL vmlinux 0x818bfd0d bio_release_pages +EXPORT_SYMBOL_GPL vmlinux 0x819a4c4f dm_internal_suspend_noflush +EXPORT_SYMBOL_GPL vmlinux 0x81b6b474 dax_supported +EXPORT_SYMBOL_GPL vmlinux 0x81b8d44c soc_device_register +EXPORT_SYMBOL_GPL vmlinux 0x81bc769e rio_get_asm +EXPORT_SYMBOL_GPL vmlinux 0x81cf5d77 vfs_write +EXPORT_SYMBOL_GPL vmlinux 0x81d1521a perf_tp_event +EXPORT_SYMBOL_GPL vmlinux 0x81d7c5b7 percpu_ref_kill_and_confirm +EXPORT_SYMBOL_GPL vmlinux 0x81dcce5f inode_dax +EXPORT_SYMBOL_GPL vmlinux 0x81eccb4a __sock_recv_ts_and_drops +EXPORT_SYMBOL_GPL vmlinux 0x8212f8e8 rio_request_mport_dma +EXPORT_SYMBOL_GPL vmlinux 0x82226c53 pinctrl_unregister_mappings +EXPORT_SYMBOL_GPL vmlinux 0x823b7f8d scsi_flush_work +EXPORT_SYMBOL_GPL vmlinux 0x8244e438 pci_hp_create_module_link +EXPORT_SYMBOL_GPL vmlinux 0x82524f38 simple_attr_write +EXPORT_SYMBOL_GPL vmlinux 0x8252f7d7 tcp_get_syncookie_mss +EXPORT_SYMBOL_GPL vmlinux 0x826e3354 flush_fp_to_thread +EXPORT_SYMBOL_GPL vmlinux 0x82702b9a mpc8xxx_spi_tx_buf_u32 +EXPORT_SYMBOL_GPL vmlinux 0x82716fee dm_per_bio_data +EXPORT_SYMBOL_GPL vmlinux 0x82741519 irq_domain_reset_irq_data +EXPORT_SYMBOL_GPL vmlinux 0x827ce56e user_describe +EXPORT_SYMBOL_GPL vmlinux 0x828c5626 spi_alloc_device +EXPORT_SYMBOL_GPL vmlinux 0x828f4105 register_kretprobes +EXPORT_SYMBOL_GPL vmlinux 0x828f7fea iommu_device_sysfs_remove +EXPORT_SYMBOL_GPL vmlinux 0x82a90883 virtqueue_notify +EXPORT_SYMBOL_GPL vmlinux 0x82a9b475 arizona_dev_exit +EXPORT_SYMBOL_GPL vmlinux 0x82ae7639 __ata_ehi_push_desc +EXPORT_SYMBOL_GPL vmlinux 0x82b535ac pm_wakeup_dev_event +EXPORT_SYMBOL_GPL vmlinux 0x82b81c3e nfnl_ct_hook +EXPORT_SYMBOL_GPL vmlinux 0x82cdb0b1 debugfs_create_x64 +EXPORT_SYMBOL_GPL vmlinux 0x82d79b51 sysctl_vfs_cache_pressure +EXPORT_SYMBOL_GPL vmlinux 0x82f1be33 mmu_psize_defs +EXPORT_SYMBOL_GPL vmlinux 0x82fe0760 page_endio +EXPORT_SYMBOL_GPL vmlinux 0x82ff4b95 clk_hw_unregister_fixed_factor +EXPORT_SYMBOL_GPL vmlinux 0x830f1591 get_cpu_device +EXPORT_SYMBOL_GPL vmlinux 0x8331150b usb_autopm_put_interface +EXPORT_SYMBOL_GPL vmlinux 0x83355436 crypto_spawn_tfm2 +EXPORT_SYMBOL_GPL vmlinux 0x8339df73 klist_add_behind +EXPORT_SYMBOL_GPL vmlinux 0x833b4b82 __irq_alloc_domain_generic_chips +EXPORT_SYMBOL_GPL vmlinux 0x833e693e __mmc_send_status +EXPORT_SYMBOL_GPL vmlinux 0x8346cbae skb_pull_rcsum +EXPORT_SYMBOL_GPL vmlinux 0x8349a895 nvmem_device_put +EXPORT_SYMBOL_GPL vmlinux 0x835c8cd4 spi_register_controller +EXPORT_SYMBOL_GPL vmlinux 0x836d61d0 atomic_notifier_chain_register +EXPORT_SYMBOL_GPL vmlinux 0x83743837 hash__has_transparent_hugepage +EXPORT_SYMBOL_GPL vmlinux 0x8382a0e7 icc_node_create +EXPORT_SYMBOL_GPL vmlinux 0x83ba5588 dw8250_setup_port +EXPORT_SYMBOL_GPL vmlinux 0x83bb366d crypto_lookup_template +EXPORT_SYMBOL_GPL vmlinux 0x83c464e0 ata_wait_after_reset +EXPORT_SYMBOL_GPL vmlinux 0x83d64e01 pcie_aspm_enabled +EXPORT_SYMBOL_GPL vmlinux 0x83e6cf6f iommu_device_link +EXPORT_SYMBOL_GPL vmlinux 0x83fd136d handle_mm_fault +EXPORT_SYMBOL_GPL vmlinux 0x83ff67d5 mmu_feature_keys +EXPORT_SYMBOL_GPL vmlinux 0x840f6f03 debugfs_create_u64 +EXPORT_SYMBOL_GPL vmlinux 0x84106f36 devlink_trap_ctx_priv +EXPORT_SYMBOL_GPL vmlinux 0x84191217 wakeup_source_add +EXPORT_SYMBOL_GPL vmlinux 0x84264ced fs_umode_to_ftype +EXPORT_SYMBOL_GPL vmlinux 0x8428c34d __srcu_read_unlock +EXPORT_SYMBOL_GPL vmlinux 0x8431fda2 usb_get_intf +EXPORT_SYMBOL_GPL vmlinux 0x8434d309 regulator_unlock +EXPORT_SYMBOL_GPL vmlinux 0x8437e73e md_rdev_init +EXPORT_SYMBOL_GPL vmlinux 0x843eba2e scsi_schedule_eh +EXPORT_SYMBOL_GPL vmlinux 0x84445c17 dev_pm_opp_of_add_table_indexed +EXPORT_SYMBOL_GPL vmlinux 0x8445b4fe ethnl_cable_test_free +EXPORT_SYMBOL_GPL vmlinux 0x844c2f3d vfio_spapr_pci_eeh_release +EXPORT_SYMBOL_GPL vmlinux 0x84502a47 blk_status_to_errno +EXPORT_SYMBOL_GPL vmlinux 0x8459dc56 nd_blk_region_set_provider_data +EXPORT_SYMBOL_GPL vmlinux 0x845dbf3b scatterwalk_map_and_copy +EXPORT_SYMBOL_GPL vmlinux 0x8462cb62 atapi_cmd_type +EXPORT_SYMBOL_GPL vmlinux 0x84682e5f crypto_stats_kpp_set_secret +EXPORT_SYMBOL_GPL vmlinux 0x846b6294 pci_cfg_access_lock +EXPORT_SYMBOL_GPL vmlinux 0x8479412b spi_res_add +EXPORT_SYMBOL_GPL vmlinux 0x8488f271 irqchip_fwnode_ops +EXPORT_SYMBOL_GPL vmlinux 0x84a7c170 md_stop +EXPORT_SYMBOL_GPL vmlinux 0x84a8d0eb of_changeset_revert +EXPORT_SYMBOL_GPL vmlinux 0x84df9e7e ata_ehi_push_desc +EXPORT_SYMBOL_GPL vmlinux 0x84ef27f5 synth_event_add_fields +EXPORT_SYMBOL_GPL vmlinux 0x84f0e287 fuse_conn_get +EXPORT_SYMBOL_GPL vmlinux 0x84f8cce3 iommu_dev_feature_enabled +EXPORT_SYMBOL_GPL vmlinux 0x850465c0 unix_peer_get +EXPORT_SYMBOL_GPL vmlinux 0x8505e01b irq_gc_mask_clr_bit +EXPORT_SYMBOL_GPL vmlinux 0x8506baa8 clk_unregister_gate +EXPORT_SYMBOL_GPL vmlinux 0x850bb6db devlink_health_reporter_destroy +EXPORT_SYMBOL_GPL vmlinux 0x8514bb81 key_type_logon +EXPORT_SYMBOL_GPL vmlinux 0x851e6003 usb_phy_roothub_calibrate +EXPORT_SYMBOL_GPL vmlinux 0x851faf04 devm_regulator_bulk_unregister_supply_alias +EXPORT_SYMBOL_GPL vmlinux 0x852b7a08 srcutorture_get_gp_data +EXPORT_SYMBOL_GPL vmlinux 0x852ba987 mmu_interval_read_begin +EXPORT_SYMBOL_GPL vmlinux 0x8530443c pwm_apply_state +EXPORT_SYMBOL_GPL vmlinux 0x853b9110 __kvmhv_vcpu_entry_p9 +EXPORT_SYMBOL_GPL vmlinux 0x8547fc72 fwnode_property_get_reference_args +EXPORT_SYMBOL_GPL vmlinux 0x85540ebc nvmem_cell_put +EXPORT_SYMBOL_GPL vmlinux 0x8558f8d7 fscrypt_file_open +EXPORT_SYMBOL_GPL vmlinux 0x85590eae ata_host_register +EXPORT_SYMBOL_GPL vmlinux 0x85710c77 regulator_set_bypass_regmap +EXPORT_SYMBOL_GPL vmlinux 0x85753020 virtqueue_kick +EXPORT_SYMBOL_GPL vmlinux 0x85a49dc7 pci_vpd_find_info_keyword +EXPORT_SYMBOL_GPL vmlinux 0x85b38978 percpu_ref_reinit +EXPORT_SYMBOL_GPL vmlinux 0x85b4f55e xas_set_mark +EXPORT_SYMBOL_GPL vmlinux 0x85b9177f of_dma_controller_free +EXPORT_SYMBOL_GPL vmlinux 0x85cb4f89 sdio_writeb_readb +EXPORT_SYMBOL_GPL vmlinux 0x85d1ea5c crypto_alg_mod_lookup +EXPORT_SYMBOL_GPL vmlinux 0x85e5d047 cpuidle_register_device +EXPORT_SYMBOL_GPL vmlinux 0x85ec4c23 iommu_dev_has_feature +EXPORT_SYMBOL_GPL vmlinux 0x86018d37 tpm1_getcap +EXPORT_SYMBOL_GPL vmlinux 0x860dda96 sysfs_remove_link +EXPORT_SYMBOL_GPL vmlinux 0x86121522 devm_regulator_get +EXPORT_SYMBOL_GPL vmlinux 0x861244e1 tpm_transmit_cmd +EXPORT_SYMBOL_GPL vmlinux 0x862258db timecounter_init +EXPORT_SYMBOL_GPL vmlinux 0x86248ec5 __audit_log_nfcfg +EXPORT_SYMBOL_GPL vmlinux 0x862bb17b linear_range_values_in_range_array +EXPORT_SYMBOL_GPL vmlinux 0x86350395 ftrace_set_filter +EXPORT_SYMBOL_GPL vmlinux 0x863c86dc dev_pm_enable_wake_irq +EXPORT_SYMBOL_GPL vmlinux 0x864643da rio_local_get_device_id +EXPORT_SYMBOL_GPL vmlinux 0x86585a33 devlink_fmsg_obj_nest_start +EXPORT_SYMBOL_GPL vmlinux 0x8677245d unregister_switchdev_blocking_notifier +EXPORT_SYMBOL_GPL vmlinux 0x867ba495 restore_online_page_callback +EXPORT_SYMBOL_GPL vmlinux 0x867c9318 pci_ioremap_wc_bar +EXPORT_SYMBOL_GPL vmlinux 0x868636d8 __tcp_send_ack +EXPORT_SYMBOL_GPL vmlinux 0x868784cb __symbol_get +EXPORT_SYMBOL_GPL vmlinux 0x868dd681 virtqueue_detach_unused_buf +EXPORT_SYMBOL_GPL vmlinux 0x869c0a2c ata_qc_complete_multiple +EXPORT_SYMBOL_GPL vmlinux 0x869d2633 scsi_queue_work +EXPORT_SYMBOL_GPL vmlinux 0x86ab2672 of_usb_host_tpl_support +EXPORT_SYMBOL_GPL vmlinux 0x86abc421 __synth_event_gen_cmd_start +EXPORT_SYMBOL_GPL vmlinux 0x86b427ce clkdev_create +EXPORT_SYMBOL_GPL vmlinux 0x86bd0266 of_platform_populate +EXPORT_SYMBOL_GPL vmlinux 0x86c961b3 __set_dax_synchronous +EXPORT_SYMBOL_GPL vmlinux 0x86cb472a ata_sff_hsm_move +EXPORT_SYMBOL_GPL vmlinux 0x86d9466e set_thread_tidr +EXPORT_SYMBOL_GPL vmlinux 0x86f6b99d synchronize_rcu_expedited +EXPORT_SYMBOL_GPL vmlinux 0x86f85114 net_dec_egress_queue +EXPORT_SYMBOL_GPL vmlinux 0x870d2915 pnv_ocxl_alloc_xive_irq +EXPORT_SYMBOL_GPL vmlinux 0x871e0259 dev_attr_link_power_management_policy +EXPORT_SYMBOL_GPL vmlinux 0x87284b6a __sync_filesystem +EXPORT_SYMBOL_GPL vmlinux 0x872cc674 __tracepoint_xhci_dbg_quirks +EXPORT_SYMBOL_GPL vmlinux 0x873afe1c cpu_subsys +EXPORT_SYMBOL_GPL vmlinux 0x8747d6a8 usb_enable_intel_xhci_ports +EXPORT_SYMBOL_GPL vmlinux 0x875582b7 nvmem_del_cell_table +EXPORT_SYMBOL_GPL vmlinux 0x87681d40 event_triggers_post_call +EXPORT_SYMBOL_GPL vmlinux 0x876c61c1 cpufreq_freq_attr_scaling_boost_freqs +EXPORT_SYMBOL_GPL vmlinux 0x876d55f0 synth_event_trace_start +EXPORT_SYMBOL_GPL vmlinux 0x878b9e7e dev_pm_opp_find_freq_ceil +EXPORT_SYMBOL_GPL vmlinux 0x878e349d crypto_register_akcipher +EXPORT_SYMBOL_GPL vmlinux 0x8796190b pcibios_free_controller +EXPORT_SYMBOL_GPL vmlinux 0x879787b0 arizona_free_irq +EXPORT_SYMBOL_GPL vmlinux 0x879f269e ata_scsi_unlock_native_capacity +EXPORT_SYMBOL_GPL vmlinux 0x87c4a289 led_classdev_unregister +EXPORT_SYMBOL_GPL vmlinux 0x87e46487 serdev_device_write_flush +EXPORT_SYMBOL_GPL vmlinux 0x87f20bf4 skb_gso_validate_mac_len +EXPORT_SYMBOL_GPL vmlinux 0x87f8b576 wakeup_sources_walk_start +EXPORT_SYMBOL_GPL vmlinux 0x8830082c unregister_cxl_calls +EXPORT_SYMBOL_GPL vmlinux 0x8843f131 __dax_driver_register +EXPORT_SYMBOL_GPL vmlinux 0x8849a260 ip6_dst_lookup +EXPORT_SYMBOL_GPL vmlinux 0x885528a6 ring_buffer_discard_commit +EXPORT_SYMBOL_GPL vmlinux 0x885fae40 power_supply_set_input_current_limit_from_supplier +EXPORT_SYMBOL_GPL vmlinux 0x887d616e dev_pm_opp_get_sharing_cpus +EXPORT_SYMBOL_GPL vmlinux 0x88843f36 account_locked_vm +EXPORT_SYMBOL_GPL vmlinux 0x888bde36 __inode_attach_wb +EXPORT_SYMBOL_GPL vmlinux 0x888c5be5 irq_bypass_register_consumer +EXPORT_SYMBOL_GPL vmlinux 0x88ab6fe3 kgdb_active +EXPORT_SYMBOL_GPL vmlinux 0x88aec2b4 fwnode_connection_find_match +EXPORT_SYMBOL_GPL vmlinux 0x88afea86 platform_device_add_resources +EXPORT_SYMBOL_GPL vmlinux 0x88b4ae92 ring_buffer_normalize_time_stamp +EXPORT_SYMBOL_GPL vmlinux 0x88b8991a of_property_read_string +EXPORT_SYMBOL_GPL vmlinux 0x88ca9fae hwspin_lock_get_id +EXPORT_SYMBOL_GPL vmlinux 0x88cc8080 screen_glyph +EXPORT_SYMBOL_GPL vmlinux 0x88d0e27b netdev_walk_all_lower_dev +EXPORT_SYMBOL_GPL vmlinux 0x88e9976f netdev_is_rx_handler_busy +EXPORT_SYMBOL_GPL vmlinux 0x88eafe50 devm_mdiobus_alloc_size +EXPORT_SYMBOL_GPL vmlinux 0x88f01a0d usb_add_phy +EXPORT_SYMBOL_GPL vmlinux 0x88f38e78 pci_epf_match_device +EXPORT_SYMBOL_GPL vmlinux 0x88f58bdf security_kernel_load_data +EXPORT_SYMBOL_GPL vmlinux 0x88fee029 blk_stat_enable_accounting +EXPORT_SYMBOL_GPL vmlinux 0x89066466 bus_for_each_dev +EXPORT_SYMBOL_GPL vmlinux 0x890bf244 __vring_new_virtqueue +EXPORT_SYMBOL_GPL vmlinux 0x890c27f0 bpf_prog_destroy +EXPORT_SYMBOL_GPL vmlinux 0x890f4f97 __kprobe_event_gen_cmd_start +EXPORT_SYMBOL_GPL vmlinux 0x8924eb1e rcu_force_quiescent_state +EXPORT_SYMBOL_GPL vmlinux 0x892a8b57 nvmem_register +EXPORT_SYMBOL_GPL vmlinux 0x892c7134 devlink_port_params_register +EXPORT_SYMBOL_GPL vmlinux 0x8935247d irq_domain_xlate_onetwocell +EXPORT_SYMBOL_GPL vmlinux 0x893abbdd devlink_fmsg_u32_pair_put +EXPORT_SYMBOL_GPL vmlinux 0x89485687 iommu_group_put +EXPORT_SYMBOL_GPL vmlinux 0x895589f8 sysfs_unmerge_group +EXPORT_SYMBOL_GPL vmlinux 0x895d593a synth_event_trace_end +EXPORT_SYMBOL_GPL vmlinux 0x8964424e regulator_sync_voltage +EXPORT_SYMBOL_GPL vmlinux 0x8965505b crypto_hash_walk_done +EXPORT_SYMBOL_GPL vmlinux 0x896bf1bf paste_selection +EXPORT_SYMBOL_GPL vmlinux 0x896f4a8e skb_zerocopy +EXPORT_SYMBOL_GPL vmlinux 0x8975ccb4 inet_twsk_hashdance +EXPORT_SYMBOL_GPL vmlinux 0x8996decb of_cpufreq_cooling_register +EXPORT_SYMBOL_GPL vmlinux 0x899e58dc sdio_disable_func +EXPORT_SYMBOL_GPL vmlinux 0x89ac3a87 clk_hw_unregister +EXPORT_SYMBOL_GPL vmlinux 0x89ae7aa0 rsa_parse_pub_key +EXPORT_SYMBOL_GPL vmlinux 0x89bbafc6 usb_register_notify +EXPORT_SYMBOL_GPL vmlinux 0x89c3dd9d find_vpid +EXPORT_SYMBOL_GPL vmlinux 0x89d9ec09 gpiod_set_transitory +EXPORT_SYMBOL_GPL vmlinux 0x89dc8fd3 fwnode_property_read_u32_array +EXPORT_SYMBOL_GPL vmlinux 0x89de6566 ata_sff_qc_fill_rtf +EXPORT_SYMBOL_GPL vmlinux 0x89fc820c housekeeping_overridden +EXPORT_SYMBOL_GPL vmlinux 0x8a05924f pci_epc_mem_exit +EXPORT_SYMBOL_GPL vmlinux 0x8a133ba7 dev_queue_xmit_nit +EXPORT_SYMBOL_GPL vmlinux 0x8a192738 pci_d3cold_disable +EXPORT_SYMBOL_GPL vmlinux 0x8a2f0c1d irq_set_default_host +EXPORT_SYMBOL_GPL vmlinux 0x8a3f84ba linear_range_get_selector_low +EXPORT_SYMBOL_GPL vmlinux 0x8a3fae23 dma_buf_pin +EXPORT_SYMBOL_GPL vmlinux 0x8a4510cd pci_assign_unassigned_bridge_resources +EXPORT_SYMBOL_GPL vmlinux 0x8a554a36 mpc8xxx_spi_strmode +EXPORT_SYMBOL_GPL vmlinux 0x8a62b81b sfp_upstream_stop +EXPORT_SYMBOL_GPL vmlinux 0x8a7fc0f5 sk_clear_memalloc +EXPORT_SYMBOL_GPL vmlinux 0x8a8e2bd4 dm_set_target_max_io_len +EXPORT_SYMBOL_GPL vmlinux 0x8a99db2c pinctrl_dev_get_devname +EXPORT_SYMBOL_GPL vmlinux 0x8a9dbcad opal_message_notifier_register +EXPORT_SYMBOL_GPL vmlinux 0x8aa36c9e reset_controller_register +EXPORT_SYMBOL_GPL vmlinux 0x8aa69efe kernfs_get +EXPORT_SYMBOL_GPL vmlinux 0x8ab65dae ima_file_check +EXPORT_SYMBOL_GPL vmlinux 0x8abacc47 get_max_files +EXPORT_SYMBOL_GPL vmlinux 0x8abf6bcb debugfs_create_atomic_t +EXPORT_SYMBOL_GPL vmlinux 0x8acb2a16 serial8250_rx_chars +EXPORT_SYMBOL_GPL vmlinux 0x8ae7e1d0 of_devfreq_cooling_register +EXPORT_SYMBOL_GPL vmlinux 0x8afc7612 devm_namespace_disable +EXPORT_SYMBOL_GPL vmlinux 0x8b0f7c1a regmap_attach_dev +EXPORT_SYMBOL_GPL vmlinux 0x8b149c36 clk_is_match +EXPORT_SYMBOL_GPL vmlinux 0x8b24065a sdio_readsb +EXPORT_SYMBOL_GPL vmlinux 0x8b263a03 thermal_cooling_device_register +EXPORT_SYMBOL_GPL vmlinux 0x8b2a6b49 bus_create_file +EXPORT_SYMBOL_GPL vmlinux 0x8b37331d pci_destroy_slot +EXPORT_SYMBOL_GPL vmlinux 0x8b393cf1 led_trigger_set +EXPORT_SYMBOL_GPL vmlinux 0x8b4896fa of_dma_is_coherent +EXPORT_SYMBOL_GPL vmlinux 0x8b514c52 generic_file_buffered_read +EXPORT_SYMBOL_GPL vmlinux 0x8b5d1fd1 devm_hwspin_lock_register +EXPORT_SYMBOL_GPL vmlinux 0x8b6c761a __xive_enabled +EXPORT_SYMBOL_GPL vmlinux 0x8b7c6bac gpiochip_populate_parent_fwspec_twocell +EXPORT_SYMBOL_GPL vmlinux 0x8ba0f3cc to_nvdimm +EXPORT_SYMBOL_GPL vmlinux 0x8ba7ff9f of_i2c_get_board_info +EXPORT_SYMBOL_GPL vmlinux 0x8bb6d827 class_for_each_device +EXPORT_SYMBOL_GPL vmlinux 0x8bd48868 of_clk_add_provider +EXPORT_SYMBOL_GPL vmlinux 0x8bdd1b35 pci_check_and_mask_intx +EXPORT_SYMBOL_GPL vmlinux 0x8c0215f2 pm_system_wakeup +EXPORT_SYMBOL_GPL vmlinux 0x8c03d20c destroy_workqueue +EXPORT_SYMBOL_GPL vmlinux 0x8c06308b rdev_get_drvdata +EXPORT_SYMBOL_GPL vmlinux 0x8c0df489 devm_usb_get_phy +EXPORT_SYMBOL_GPL vmlinux 0x8c3a1fa7 devm_gpiod_get_from_of_node +EXPORT_SYMBOL_GPL vmlinux 0x8c416637 of_nvmem_device_get +EXPORT_SYMBOL_GPL vmlinux 0x8c41d75d fsverity_ioctl_measure +EXPORT_SYMBOL_GPL vmlinux 0x8c479745 __cpuhp_state_remove_instance +EXPORT_SYMBOL_GPL vmlinux 0x8c50cdd3 devlink_trap_groups_unregister +EXPORT_SYMBOL_GPL vmlinux 0x8c513fff spi_controller_dma_unmap_mem_op_data +EXPORT_SYMBOL_GPL vmlinux 0x8c5c9190 crypto_unregister_shashes +EXPORT_SYMBOL_GPL vmlinux 0x8c5fde2e pnv_pci_get_slot_id +EXPORT_SYMBOL_GPL vmlinux 0x8c65981c kvmppc_host_rm_ops_hv +EXPORT_SYMBOL_GPL vmlinux 0x8c673ec4 fat_build_inode +EXPORT_SYMBOL_GPL vmlinux 0x8c678924 __percpu_down_read +EXPORT_SYMBOL_GPL vmlinux 0x8c743fb6 reset_control_status +EXPORT_SYMBOL_GPL vmlinux 0x8c77229f __tracepoint_br_fdb_external_learn_add +EXPORT_SYMBOL_GPL vmlinux 0x8c775bc6 gpiochip_is_requested +EXPORT_SYMBOL_GPL vmlinux 0x8c7a14e3 blk_mq_freeze_queue_wait_timeout +EXPORT_SYMBOL_GPL vmlinux 0x8c84a81e pinctrl_generic_remove_group +EXPORT_SYMBOL_GPL vmlinux 0x8c89e3b8 usb_phy_roothub_power_off +EXPORT_SYMBOL_GPL vmlinux 0x8c8cd8a4 wm8997_i2c_regmap +EXPORT_SYMBOL_GPL vmlinux 0x8c8e3325 devm_request_free_mem_region +EXPORT_SYMBOL_GPL vmlinux 0x8cad950d kvmppc_h_get_tce +EXPORT_SYMBOL_GPL vmlinux 0x8cb2c0ba xfrm_state_afinfo_get_rcu +EXPORT_SYMBOL_GPL vmlinux 0x8cc4ce02 blk_mq_flush_busy_ctxs +EXPORT_SYMBOL_GPL vmlinux 0x8cce5118 usb_register_device_driver +EXPORT_SYMBOL_GPL vmlinux 0x8cd94f86 pernet_ops_rwsem +EXPORT_SYMBOL_GPL vmlinux 0x8cdf2fcc fib_rules_seq_read +EXPORT_SYMBOL_GPL vmlinux 0x8cf0c64f blk_queue_max_discard_segments +EXPORT_SYMBOL_GPL vmlinux 0x8cf5fb28 posix_acl_create +EXPORT_SYMBOL_GPL vmlinux 0x8d22bb58 iommu_group_alloc +EXPORT_SYMBOL_GPL vmlinux 0x8d327e6b pci_epc_get_msix +EXPORT_SYMBOL_GPL vmlinux 0x8d4e3045 fscrypt_ioctl_add_key +EXPORT_SYMBOL_GPL vmlinux 0x8d5d737f spi_mem_get_name +EXPORT_SYMBOL_GPL vmlinux 0x8d5fd735 phy_gbit_features +EXPORT_SYMBOL_GPL vmlinux 0x8d6d4214 irq_domain_set_hwirq_and_chip +EXPORT_SYMBOL_GPL vmlinux 0x8d6dc201 ppc64_caches +EXPORT_SYMBOL_GPL vmlinux 0x8d6f0e79 dma_run_dependencies +EXPORT_SYMBOL_GPL vmlinux 0x8d7508e9 usb_get_urb +EXPORT_SYMBOL_GPL vmlinux 0x8d7767e8 pci_assign_unassigned_bus_resources +EXPORT_SYMBOL_GPL vmlinux 0x8d7e3373 hwpoison_filter_dev_major +EXPORT_SYMBOL_GPL vmlinux 0x8d7e8ddb virtqueue_poll +EXPORT_SYMBOL_GPL vmlinux 0x8d8e03e8 sec_irq_init +EXPORT_SYMBOL_GPL vmlinux 0x8dabed18 dma_get_slave_caps +EXPORT_SYMBOL_GPL vmlinux 0x8dae1af5 ncsi_unregister_dev +EXPORT_SYMBOL_GPL vmlinux 0x8db77cd9 proc_create_net_single_write +EXPORT_SYMBOL_GPL vmlinux 0x8dbf5a20 kvmppc_hv_entry_trampoline +EXPORT_SYMBOL_GPL vmlinux 0x8dc5b4b1 scsi_internal_device_unblock_nowait +EXPORT_SYMBOL_GPL vmlinux 0x8dc7db14 regulator_desc_list_voltage_linear_range +EXPORT_SYMBOL_GPL vmlinux 0x8dd457a4 spi_setup +EXPORT_SYMBOL_GPL vmlinux 0x8dd66ee4 __udp_gso_segment +EXPORT_SYMBOL_GPL vmlinux 0x8df21be0 scsi_host_unblock +EXPORT_SYMBOL_GPL vmlinux 0x8df51555 cpufreq_show_cpus +EXPORT_SYMBOL_GPL vmlinux 0x8dfd585b inet_csk_listen_start +EXPORT_SYMBOL_GPL vmlinux 0x8e008598 regmap_get_val_endian +EXPORT_SYMBOL_GPL vmlinux 0x8e0dc16e ata_bmdma_setup +EXPORT_SYMBOL_GPL vmlinux 0x8e1621cf fscrypt_match_name +EXPORT_SYMBOL_GPL vmlinux 0x8e23d58f offline_and_remove_memory +EXPORT_SYMBOL_GPL vmlinux 0x8e2df129 seg6_do_srh_inline +EXPORT_SYMBOL_GPL vmlinux 0x8e2f5317 nvdimm_region_notify +EXPORT_SYMBOL_GPL vmlinux 0x8e3e4f5a pci_epc_start +EXPORT_SYMBOL_GPL vmlinux 0x8e4eb451 bpf_sk_storage_diag_free +EXPORT_SYMBOL_GPL vmlinux 0x8e4f9415 kthread_func +EXPORT_SYMBOL_GPL vmlinux 0x8e58c26b trace_output_call +EXPORT_SYMBOL_GPL vmlinux 0x8e6d59a1 skb_to_sgvec +EXPORT_SYMBOL_GPL vmlinux 0x8e7313b0 register_trace_event +EXPORT_SYMBOL_GPL vmlinux 0x8e737d59 posix_clock_unregister +EXPORT_SYMBOL_GPL vmlinux 0x8e85ef8e stmpe_disable +EXPORT_SYMBOL_GPL vmlinux 0x8e923de0 __inet_lookup_established +EXPORT_SYMBOL_GPL vmlinux 0x8e952b63 alarm_try_to_cancel +EXPORT_SYMBOL_GPL vmlinux 0x8e9e7a6c spi_sync +EXPORT_SYMBOL_GPL vmlinux 0x8ea949da tpm_get_timeouts +EXPORT_SYMBOL_GPL vmlinux 0x8eae8dfd usb_find_common_endpoints +EXPORT_SYMBOL_GPL vmlinux 0x8eb9de2c __tracepoint_pelt_irq_tp +EXPORT_SYMBOL_GPL vmlinux 0x8ec0c74c adp5520_register_notifier +EXPORT_SYMBOL_GPL vmlinux 0x8ecd35b8 dev_pm_set_dedicated_wake_irq +EXPORT_SYMBOL_GPL vmlinux 0x8ed19e06 clk_hw_unregister_divider +EXPORT_SYMBOL_GPL vmlinux 0x8ed2dff8 usb_debug_root +EXPORT_SYMBOL_GPL vmlinux 0x8ed4764e ip6_pol_route +EXPORT_SYMBOL_GPL vmlinux 0x8ed8724d usb_bus_idr_lock +EXPORT_SYMBOL_GPL vmlinux 0x8edbe404 pci_sriov_set_totalvfs +EXPORT_SYMBOL_GPL vmlinux 0x8ee3763d devm_ioremap_uc +EXPORT_SYMBOL_GPL vmlinux 0x8ee98ade kernel_read_file +EXPORT_SYMBOL_GPL vmlinux 0x8eee3399 dax_read_unlock +EXPORT_SYMBOL_GPL vmlinux 0x8efd9c10 device_get_phy_mode +EXPORT_SYMBOL_GPL vmlinux 0x8f0748af rcu_expedite_gp +EXPORT_SYMBOL_GPL vmlinux 0x8f21792a mmc_cmdq_enable +EXPORT_SYMBOL_GPL vmlinux 0x8f35cc79 fib6_new_table +EXPORT_SYMBOL_GPL vmlinux 0x8f438305 perf_aux_output_end +EXPORT_SYMBOL_GPL vmlinux 0x8f5b5de4 fuse_dev_alloc +EXPORT_SYMBOL_GPL vmlinux 0x8f6cee77 __round_jiffies_relative +EXPORT_SYMBOL_GPL vmlinux 0x8f786bee fs_umode_to_dtype +EXPORT_SYMBOL_GPL vmlinux 0x8f877bc1 pnv_npu2_unmap_lpar_dev +EXPORT_SYMBOL_GPL vmlinux 0x8f8e79db stmpe_reg_write +EXPORT_SYMBOL_GPL vmlinux 0x8f923129 power_supply_am_i_supplied +EXPORT_SYMBOL_GPL vmlinux 0x8fb04d68 pnv_ocxl_spa_release +EXPORT_SYMBOL_GPL vmlinux 0x8fbce566 md_rdev_clear +EXPORT_SYMBOL_GPL vmlinux 0x8fc12788 software_node_unregister_node_group +EXPORT_SYMBOL_GPL vmlinux 0x8fc9e9e5 bio_associate_blkg +EXPORT_SYMBOL_GPL vmlinux 0x8fca73a3 irq_alloc_generic_chip +EXPORT_SYMBOL_GPL vmlinux 0x8fffd0c6 gpiochip_reqres_irq +EXPORT_SYMBOL_GPL vmlinux 0x900c9f74 netdev_rx_handler_register +EXPORT_SYMBOL_GPL vmlinux 0x903b627c list_lru_isolate_move +EXPORT_SYMBOL_GPL vmlinux 0x90519afb ata_qc_complete +EXPORT_SYMBOL_GPL vmlinux 0x9058f55c mm_unaccount_pinned_pages +EXPORT_SYMBOL_GPL vmlinux 0x90688bcd devlink_info_driver_name_put +EXPORT_SYMBOL_GPL vmlinux 0x908addc9 dev_pm_clear_wake_irq +EXPORT_SYMBOL_GPL vmlinux 0x909a029e of_dma_request_slave_channel +EXPORT_SYMBOL_GPL vmlinux 0x90ad66b1 software_node_unregister_nodes +EXPORT_SYMBOL_GPL vmlinux 0x90d546a5 crypto_ahash_walk_first +EXPORT_SYMBOL_GPL vmlinux 0x90e43800 fib4_rule_default +EXPORT_SYMBOL_GPL vmlinux 0x90f61df7 of_property_read_variable_u8_array +EXPORT_SYMBOL_GPL vmlinux 0x90f7e9c0 hash_page_mm +EXPORT_SYMBOL_GPL vmlinux 0x90fbe5e5 xfrm_state_mtu +EXPORT_SYMBOL_GPL vmlinux 0x910c31ca bpf_prog_select_runtime +EXPORT_SYMBOL_GPL vmlinux 0x9111c0a6 serdev_device_write +EXPORT_SYMBOL_GPL vmlinux 0x911d18ae dev_pm_opp_of_cpumask_add_table +EXPORT_SYMBOL_GPL vmlinux 0x912824ed pci_stop_and_remove_bus_device_locked +EXPORT_SYMBOL_GPL vmlinux 0x912a0bf8 hugetlb_cgrp_subsys_on_dfl_key +EXPORT_SYMBOL_GPL vmlinux 0x912da290 bpf_map_inc_with_uref +EXPORT_SYMBOL_GPL vmlinux 0x91434269 genpd_dev_pm_attach_by_id +EXPORT_SYMBOL_GPL vmlinux 0x9145616c component_master_add_with_match +EXPORT_SYMBOL_GPL vmlinux 0x914865b2 gpiochip_set_nested_irqchip +EXPORT_SYMBOL_GPL vmlinux 0x914ccbc0 unregister_ftrace_function +EXPORT_SYMBOL_GPL vmlinux 0x9158e04d machine_check_print_event_info +EXPORT_SYMBOL_GPL vmlinux 0x916cacfb usb_hcd_setup_local_mem +EXPORT_SYMBOL_GPL vmlinux 0x916f9271 devm_remove_action +EXPORT_SYMBOL_GPL vmlinux 0x918c2c01 put_device +EXPORT_SYMBOL_GPL vmlinux 0x9194a80a security_inode_mkdir +EXPORT_SYMBOL_GPL vmlinux 0x919a748c gpiod_get_index_optional +EXPORT_SYMBOL_GPL vmlinux 0x91a55068 public_key_free +EXPORT_SYMBOL_GPL vmlinux 0x91b7a84f relay_subbufs_consumed +EXPORT_SYMBOL_GPL vmlinux 0x91bd4726 dev_pm_qos_expose_latency_tolerance +EXPORT_SYMBOL_GPL vmlinux 0x91c6e5b0 pcap_to_irq +EXPORT_SYMBOL_GPL vmlinux 0x91cd32fe blk_rq_prep_clone +EXPORT_SYMBOL_GPL vmlinux 0x91d24950 net_ns_type_operations +EXPORT_SYMBOL_GPL vmlinux 0x91e43f85 do_take_over_console +EXPORT_SYMBOL_GPL vmlinux 0x91f1a7cc iommu_release_ownership +EXPORT_SYMBOL_GPL vmlinux 0x91fa0d36 ata_sff_exec_command +EXPORT_SYMBOL_GPL vmlinux 0x920cc389 visitorl +EXPORT_SYMBOL_GPL vmlinux 0x9218f010 platform_device_add +EXPORT_SYMBOL_GPL vmlinux 0x92234600 crypto_remove_spawns +EXPORT_SYMBOL_GPL vmlinux 0x92238bcb xas_find_marked +EXPORT_SYMBOL_GPL vmlinux 0x923d9dba pkcs7_parse_message +EXPORT_SYMBOL_GPL vmlinux 0x924c46f8 zs_unmap_object +EXPORT_SYMBOL_GPL vmlinux 0x924c868e gpiochip_add_pingroup_range +EXPORT_SYMBOL_GPL vmlinux 0x926742e0 fsnotify +EXPORT_SYMBOL_GPL vmlinux 0x929ee9f8 preempt_notifier_unregister +EXPORT_SYMBOL_GPL vmlinux 0x92a13e8e __wake_up_sync +EXPORT_SYMBOL_GPL vmlinux 0x92aee10d trace_event_reg +EXPORT_SYMBOL_GPL vmlinux 0x92c925fb xas_clear_mark +EXPORT_SYMBOL_GPL vmlinux 0x92d31cfb fixed_phy_add +EXPORT_SYMBOL_GPL vmlinux 0x92db8f68 do_trace_rcu_torture_read +EXPORT_SYMBOL_GPL vmlinux 0x92de2990 pci_load_saved_state +EXPORT_SYMBOL_GPL vmlinux 0x92e8e9ab fsverity_enqueue_verify_work +EXPORT_SYMBOL_GPL vmlinux 0x92f0aa28 opal_tpo_write +EXPORT_SYMBOL_GPL vmlinux 0x93170790 blk_fill_rwbs +EXPORT_SYMBOL_GPL vmlinux 0x931f82c8 firmware_request_nowarn +EXPORT_SYMBOL_GPL vmlinux 0x93255b2b ring_buffer_lock_reserve +EXPORT_SYMBOL_GPL vmlinux 0x9327c693 freq_qos_remove_request +EXPORT_SYMBOL_GPL vmlinux 0x932c8d7a linear_range_get_value_array +EXPORT_SYMBOL_GPL vmlinux 0x93304466 spi_async +EXPORT_SYMBOL_GPL vmlinux 0x934a0aee kvmppc_subcore_exit_guest +EXPORT_SYMBOL_GPL vmlinux 0x935a601d i2c_dw_adjust_bus_speed +EXPORT_SYMBOL_GPL vmlinux 0x9360b6e5 regmap_field_update_bits_base +EXPORT_SYMBOL_GPL vmlinux 0x937b25d2 gpiod_toggle_active_low +EXPORT_SYMBOL_GPL vmlinux 0x93821546 transport_setup_device +EXPORT_SYMBOL_GPL vmlinux 0x9384cd49 ata_tf_from_fis +EXPORT_SYMBOL_GPL vmlinux 0x93922111 get_compat_bpf_fprog +EXPORT_SYMBOL_GPL vmlinux 0x9394aa9f gpiochip_disable_irq +EXPORT_SYMBOL_GPL vmlinux 0x939cf277 __devm_regmap_init_spi +EXPORT_SYMBOL_GPL vmlinux 0x93abe252 tty_mode_ioctl +EXPORT_SYMBOL_GPL vmlinux 0x93bb626f of_property_read_variable_u32_array +EXPORT_SYMBOL_GPL vmlinux 0x93d10273 fwnode_get_phy_mode +EXPORT_SYMBOL_GPL vmlinux 0x93d69400 tty_port_register_device_attr +EXPORT_SYMBOL_GPL vmlinux 0x93d9648a pci_stop_root_bus +EXPORT_SYMBOL_GPL vmlinux 0x93e2fba2 gpiochip_get_data +EXPORT_SYMBOL_GPL vmlinux 0x93eb4cca __clk_mux_determine_rate_closest +EXPORT_SYMBOL_GPL vmlinux 0x93edef07 devlink_health_report +EXPORT_SYMBOL_GPL vmlinux 0x93ee0f48 vfs_removexattr +EXPORT_SYMBOL_GPL vmlinux 0x93f5eebb __regmap_init_mmio_clk +EXPORT_SYMBOL_GPL vmlinux 0x93f65e1c fat_scan +EXPORT_SYMBOL_GPL vmlinux 0x93fcd8d2 param_ops_bool_enable_only +EXPORT_SYMBOL_GPL vmlinux 0x93ffef0f __class_create +EXPORT_SYMBOL_GPL vmlinux 0x94031d71 blk_insert_cloned_request +EXPORT_SYMBOL_GPL vmlinux 0x94096ad0 fwnode_get_named_gpiod +EXPORT_SYMBOL_GPL vmlinux 0x941307dc __mnt_drop_write +EXPORT_SYMBOL_GPL vmlinux 0x941f2aaa eventfd_ctx_put +EXPORT_SYMBOL_GPL vmlinux 0x9420d656 blkdev_ioctl +EXPORT_SYMBOL_GPL vmlinux 0x9425bb34 nvmem_dev_name +EXPORT_SYMBOL_GPL vmlinux 0x94289f99 blkcg_root +EXPORT_SYMBOL_GPL vmlinux 0x942a3f42 dw_pcie_ep_linkup +EXPORT_SYMBOL_GPL vmlinux 0x9430b198 trace_dump_stack +EXPORT_SYMBOL_GPL vmlinux 0x944407bb i2c_new_ancillary_device +EXPORT_SYMBOL_GPL vmlinux 0x944be37b usb_alloc_streams +EXPORT_SYMBOL_GPL vmlinux 0x946dd559 sha224_zero_message_hash +EXPORT_SYMBOL_GPL vmlinux 0x948d07cf fib_nl_delrule +EXPORT_SYMBOL_GPL vmlinux 0x94976a1d __skb_tstamp_tx +EXPORT_SYMBOL_GPL vmlinux 0x9497787f iommu_aux_attach_device +EXPORT_SYMBOL_GPL vmlinux 0x949a1ca3 led_sysfs_enable +EXPORT_SYMBOL_GPL vmlinux 0x949b5176 devlink_region_snapshot_create +EXPORT_SYMBOL_GPL vmlinux 0x949f7342 __alloc_percpu +EXPORT_SYMBOL_GPL vmlinux 0x94b66729 skb_zerocopy_headlen +EXPORT_SYMBOL_GPL vmlinux 0x94c1b76d regulator_list_voltage +EXPORT_SYMBOL_GPL vmlinux 0x94cd3fdc iptunnel_metadata_reply +EXPORT_SYMBOL_GPL vmlinux 0x94cf04fd bus_remove_file +EXPORT_SYMBOL_GPL vmlinux 0x94d1c3dd ata_scsi_queuecmd +EXPORT_SYMBOL_GPL vmlinux 0x94d34da2 devm_extcon_dev_register +EXPORT_SYMBOL_GPL vmlinux 0x94ddce44 iomap_page_mkwrite +EXPORT_SYMBOL_GPL vmlinux 0x94eb712d nf_queue_entry_get_refs +EXPORT_SYMBOL_GPL vmlinux 0x94ef4d05 cpci_hp_stop +EXPORT_SYMBOL_GPL vmlinux 0x94f008ad usb_hub_clear_tt_buffer +EXPORT_SYMBOL_GPL vmlinux 0x94f226f9 mbox_chan_received_data +EXPORT_SYMBOL_GPL vmlinux 0x9504df26 irq_wake_thread +EXPORT_SYMBOL_GPL vmlinux 0x950a33b0 of_genpd_add_provider_simple +EXPORT_SYMBOL_GPL vmlinux 0x951a2773 crypto_has_alg +EXPORT_SYMBOL_GPL vmlinux 0x951f93bc iommu_fwspec_init +EXPORT_SYMBOL_GPL vmlinux 0x9522a629 inet_twsk_alloc +EXPORT_SYMBOL_GPL vmlinux 0x952381f7 eeh_pe_reset +EXPORT_SYMBOL_GPL vmlinux 0x95258207 vfio_device_data +EXPORT_SYMBOL_GPL vmlinux 0x952664c5 do_exit +EXPORT_SYMBOL_GPL vmlinux 0x95327967 key_type_trusted +EXPORT_SYMBOL_GPL vmlinux 0x953e1b9e ktime_get_real_seconds +EXPORT_SYMBOL_GPL vmlinux 0x953edfdf pktgen_xfrm_outer_mode_output +EXPORT_SYMBOL_GPL vmlinux 0x954d0f6d alarm_restart +EXPORT_SYMBOL_GPL vmlinux 0x955b0e2e kthread_worker_fn +EXPORT_SYMBOL_GPL vmlinux 0x956ac400 ring_buffer_dropped_events_cpu +EXPORT_SYMBOL_GPL vmlinux 0x957ce04a device_connection_find_match +EXPORT_SYMBOL_GPL vmlinux 0x9581526c xdp_rxq_info_unused +EXPORT_SYMBOL_GPL vmlinux 0x958df3ac zs_free +EXPORT_SYMBOL_GPL vmlinux 0x959ec5f5 call_rcu_tasks +EXPORT_SYMBOL_GPL vmlinux 0x95ac0299 ata_sas_port_alloc +EXPORT_SYMBOL_GPL vmlinux 0x95addb22 usb_hcd_poll_rh_status +EXPORT_SYMBOL_GPL vmlinux 0x95b6fec4 xive_native_free_vp_block +EXPORT_SYMBOL_GPL vmlinux 0x95b7efab serial8250_init_port +EXPORT_SYMBOL_GPL vmlinux 0x95bc9078 btree_free +EXPORT_SYMBOL_GPL vmlinux 0x95bd967a bpf_trace_run4 +EXPORT_SYMBOL_GPL vmlinux 0x95c5db69 tty_init_termios +EXPORT_SYMBOL_GPL vmlinux 0x95c8aa24 cpuidle_get_driver +EXPORT_SYMBOL_GPL vmlinux 0x95d316f1 usb_get_maximum_speed +EXPORT_SYMBOL_GPL vmlinux 0x95de7ecf ip6_datagram_connect_v6_only +EXPORT_SYMBOL_GPL vmlinux 0x95e44df0 sbitmap_queue_resize +EXPORT_SYMBOL_GPL vmlinux 0x95efa1db pkcs7_free_message +EXPORT_SYMBOL_GPL vmlinux 0x95f8479f __tracepoint_pelt_rt_tp +EXPORT_SYMBOL_GPL vmlinux 0x95ff00c1 tpm2_flush_context +EXPORT_SYMBOL_GPL vmlinux 0x9600ce14 scsi_free_sgtables +EXPORT_SYMBOL_GPL vmlinux 0x96049204 cpufreq_generic_init +EXPORT_SYMBOL_GPL vmlinux 0x96096169 dummy_irq_chip +EXPORT_SYMBOL_GPL vmlinux 0x961286e0 ring_buffer_read_events_cpu +EXPORT_SYMBOL_GPL vmlinux 0x9618d81b fib_rules_dump +EXPORT_SYMBOL_GPL vmlinux 0x964c29e4 phy_put +EXPORT_SYMBOL_GPL vmlinux 0x965230ce pci_user_write_config_byte +EXPORT_SYMBOL_GPL vmlinux 0x96554810 register_keyboard_notifier +EXPORT_SYMBOL_GPL vmlinux 0x9661f5b1 irq_domain_add_legacy +EXPORT_SYMBOL_GPL vmlinux 0x96693cbb edac_device_handle_ue_count +EXPORT_SYMBOL_GPL vmlinux 0x9690c873 key_type_asymmetric +EXPORT_SYMBOL_GPL vmlinux 0x969832b1 pm_clk_add +EXPORT_SYMBOL_GPL vmlinux 0x969c73d9 vfio_device_put +EXPORT_SYMBOL_GPL vmlinux 0x96a057ba cpu_feature_keys +EXPORT_SYMBOL_GPL vmlinux 0x96a26c26 __clk_hw_register_gate +EXPORT_SYMBOL_GPL vmlinux 0x96a907a4 of_irq_parse_and_map_pci +EXPORT_SYMBOL_GPL vmlinux 0x96b774a8 pm_generic_thaw_noirq +EXPORT_SYMBOL_GPL vmlinux 0x96ca0d7c devlink_dpipe_match_put +EXPORT_SYMBOL_GPL vmlinux 0x96ca63f5 __rht_bucket_nested +EXPORT_SYMBOL_GPL vmlinux 0x96cc48b9 xive_native_default_eq_shift +EXPORT_SYMBOL_GPL vmlinux 0x96cd8e48 dma_buf_unpin +EXPORT_SYMBOL_GPL vmlinux 0x96ce6811 hwmon_device_register_with_info +EXPORT_SYMBOL_GPL vmlinux 0x96e1af35 ncsi_vlan_rx_add_vid +EXPORT_SYMBOL_GPL vmlinux 0x96efe540 clk_hw_register +EXPORT_SYMBOL_GPL vmlinux 0x96f825ce gov_update_cpu_data +EXPORT_SYMBOL_GPL vmlinux 0x97053efa smp_call_function_any +EXPORT_SYMBOL_GPL vmlinux 0x970d9423 usb_remove_hcd +EXPORT_SYMBOL_GPL vmlinux 0x9714e0bb ktime_get_raw +EXPORT_SYMBOL_GPL vmlinux 0x972be6ae ip6_datagram_send_ctl +EXPORT_SYMBOL_GPL vmlinux 0x97315539 __set_page_dirty +EXPORT_SYMBOL_GPL vmlinux 0x973da60d gpiod_set_array_value +EXPORT_SYMBOL_GPL vmlinux 0x97410696 __hrtimer_get_remaining +EXPORT_SYMBOL_GPL vmlinux 0x9748c8d2 bpf_trace_run7 +EXPORT_SYMBOL_GPL vmlinux 0x974c9ec3 ipv6_dup_options +EXPORT_SYMBOL_GPL vmlinux 0x975418d6 led_compose_name +EXPORT_SYMBOL_GPL vmlinux 0x975519c1 asymmetric_key_id_same +EXPORT_SYMBOL_GPL vmlinux 0x97627d3c nvdimm_bus_add_badrange +EXPORT_SYMBOL_GPL vmlinux 0x976738f5 irq_chip_release_resources_parent +EXPORT_SYMBOL_GPL vmlinux 0x97695068 wm8350_reg_read +EXPORT_SYMBOL_GPL vmlinux 0x9777b942 driver_remove_file +EXPORT_SYMBOL_GPL vmlinux 0x977f6316 bpf_verifier_log_write +EXPORT_SYMBOL_GPL vmlinux 0x9785a2db iomap_file_unshare +EXPORT_SYMBOL_GPL vmlinux 0x97a89392 kern_mount +EXPORT_SYMBOL_GPL vmlinux 0x97af1aa3 put_pid_ns +EXPORT_SYMBOL_GPL vmlinux 0x97b2f5ee proc_create_net_single +EXPORT_SYMBOL_GPL vmlinux 0x97b3702a inode_congested +EXPORT_SYMBOL_GPL vmlinux 0x97c619c9 devfreq_get_devfreq_by_phandle +EXPORT_SYMBOL_GPL vmlinux 0x97caf7f8 led_set_brightness_sync +EXPORT_SYMBOL_GPL vmlinux 0x97de2b83 debug_locks_silent +EXPORT_SYMBOL_GPL vmlinux 0x97e7f902 trace_vbprintk +EXPORT_SYMBOL_GPL vmlinux 0x97ed7406 crypto_stats_akcipher_verify +EXPORT_SYMBOL_GPL vmlinux 0x97f9b24b iommu_add_device +EXPORT_SYMBOL_GPL vmlinux 0x980661e6 dbs_update +EXPORT_SYMBOL_GPL vmlinux 0x980a2861 bus_for_each_drv +EXPORT_SYMBOL_GPL vmlinux 0x9818da00 virtqueue_enable_cb_delayed +EXPORT_SYMBOL_GPL vmlinux 0x9828c583 gpiochip_add_data_with_key +EXPORT_SYMBOL_GPL vmlinux 0x982f3e9f gpiochip_unlock_as_irq +EXPORT_SYMBOL_GPL vmlinux 0x9833bc0c hvc_kick +EXPORT_SYMBOL_GPL vmlinux 0x983f20ba switchdev_handle_port_attr_set +EXPORT_SYMBOL_GPL vmlinux 0x983f8e2e btree_insert +EXPORT_SYMBOL_GPL vmlinux 0x9845669b usb_hcd_resume_root_hub +EXPORT_SYMBOL_GPL vmlinux 0x984592e3 __tracepoint_block_split +EXPORT_SYMBOL_GPL vmlinux 0x98503a63 mpi_alloc +EXPORT_SYMBOL_GPL vmlinux 0x985331f6 sysfs_update_group +EXPORT_SYMBOL_GPL vmlinux 0x985453e1 lease_unregister_notifier +EXPORT_SYMBOL_GPL vmlinux 0x9855a697 opal_xscom_read +EXPORT_SYMBOL_GPL vmlinux 0x98598441 crypto_shoot_alg +EXPORT_SYMBOL_GPL vmlinux 0x985d947f mbox_request_channel +EXPORT_SYMBOL_GPL vmlinux 0x9866e98e sched_trace_cfs_rq_cpu +EXPORT_SYMBOL_GPL vmlinux 0x987520e2 usb_find_common_endpoints_reverse +EXPORT_SYMBOL_GPL vmlinux 0x9879932b crypto_register_notifier +EXPORT_SYMBOL_GPL vmlinux 0x98855522 fwnode_get_nth_parent +EXPORT_SYMBOL_GPL vmlinux 0x989074ff kmsg_dump_reason_str +EXPORT_SYMBOL_GPL vmlinux 0x98a0fbc6 sysfs_create_link_nowarn +EXPORT_SYMBOL_GPL vmlinux 0x98acb5c6 spi_mem_dirmap_read +EXPORT_SYMBOL_GPL vmlinux 0x98b6d0ed crypto_unregister_aeads +EXPORT_SYMBOL_GPL vmlinux 0x98df2dac scsi_internal_device_block_nowait +EXPORT_SYMBOL_GPL vmlinux 0x98e8a79b crypto_create_tfm +EXPORT_SYMBOL_GPL vmlinux 0x98ea53f3 max8997_bulk_write +EXPORT_SYMBOL_GPL vmlinux 0x98ee62b2 ring_buffer_record_disable_cpu +EXPORT_SYMBOL_GPL vmlinux 0x98fa1e20 dm_get_reserved_rq_based_ios +EXPORT_SYMBOL_GPL vmlinux 0x99122ae3 i2c_dw_configure_master +EXPORT_SYMBOL_GPL vmlinux 0x99139a5f divider_ro_round_rate_parent +EXPORT_SYMBOL_GPL vmlinux 0x9919849e ata_pci_sff_init_one +EXPORT_SYMBOL_GPL vmlinux 0x99339a08 pinctrl_generic_get_group +EXPORT_SYMBOL_GPL vmlinux 0x9937c75f icc_get +EXPORT_SYMBOL_GPL vmlinux 0x993bd300 pci_pasid_features +EXPORT_SYMBOL_GPL vmlinux 0x9952eeb2 usb_bulk_msg +EXPORT_SYMBOL_GPL vmlinux 0x9953ab8b ata_host_put +EXPORT_SYMBOL_GPL vmlinux 0x995d1071 prof_on +EXPORT_SYMBOL_GPL vmlinux 0x9967e870 pciserial_init_ports +EXPORT_SYMBOL_GPL vmlinux 0x9979ab93 of_resolve_phandles +EXPORT_SYMBOL_GPL vmlinux 0x99895bd9 bsg_job_get +EXPORT_SYMBOL_GPL vmlinux 0x998d79d6 x509_decode_time +EXPORT_SYMBOL_GPL vmlinux 0x999d0558 trace_array_set_clr_event +EXPORT_SYMBOL_GPL vmlinux 0x99a54382 uart_console_device +EXPORT_SYMBOL_GPL vmlinux 0x99c92917 spi_res_alloc +EXPORT_SYMBOL_GPL vmlinux 0x99ebc7be tty_port_tty_wakeup +EXPORT_SYMBOL_GPL vmlinux 0x99f018c4 nvmem_cell_read +EXPORT_SYMBOL_GPL vmlinux 0x99f2d00a sysfs_emit_at +EXPORT_SYMBOL_GPL vmlinux 0x99f43c8d pci_hp_add_devices +EXPORT_SYMBOL_GPL vmlinux 0x99f8174d __pci_hp_register +EXPORT_SYMBOL_GPL vmlinux 0x9a05faac pinctrl_find_gpio_range_from_pin +EXPORT_SYMBOL_GPL vmlinux 0x9a11a0fc crypto_attr_alg_name +EXPORT_SYMBOL_GPL vmlinux 0x9a170932 user_destroy +EXPORT_SYMBOL_GPL vmlinux 0x9a1eb46f phy_optional_get +EXPORT_SYMBOL_GPL vmlinux 0x9a2527f5 rio_map_outb_region +EXPORT_SYMBOL_GPL vmlinux 0x9a26713a pci_ioremap_bar +EXPORT_SYMBOL_GPL vmlinux 0x9a3bb1fa pwmchip_add +EXPORT_SYMBOL_GPL vmlinux 0x9a3c64d3 extcon_register_notifier +EXPORT_SYMBOL_GPL vmlinux 0x9a437458 relay_switch_subbuf +EXPORT_SYMBOL_GPL vmlinux 0x9a4b0d09 pci_epc_multi_mem_init +EXPORT_SYMBOL_GPL vmlinux 0x9a89e5c7 regmap_can_raw_write +EXPORT_SYMBOL_GPL vmlinux 0x9a959e3e regulator_get_optional +EXPORT_SYMBOL_GPL vmlinux 0x9a987b1f check_move_unevictable_pages +EXPORT_SYMBOL_GPL vmlinux 0x9ac11b74 suspend_set_ops +EXPORT_SYMBOL_GPL vmlinux 0x9ac4fb5e aead_exit_geniv +EXPORT_SYMBOL_GPL vmlinux 0x9ad146e1 of_reserved_mem_device_release +EXPORT_SYMBOL_GPL vmlinux 0x9adcae53 input_ff_destroy +EXPORT_SYMBOL_GPL vmlinux 0x9adf08c3 mmu_linear_psize +EXPORT_SYMBOL_GPL vmlinux 0x9aeacb87 ring_buffer_iter_empty +EXPORT_SYMBOL_GPL vmlinux 0x9af4f033 __page_file_mapping +EXPORT_SYMBOL_GPL vmlinux 0x9af70bab acomp_request_alloc +EXPORT_SYMBOL_GPL vmlinux 0x9b1c0453 md_find_rdev_rcu +EXPORT_SYMBOL_GPL vmlinux 0x9b32cff9 ata_eh_analyze_ncq_error +EXPORT_SYMBOL_GPL vmlinux 0x9b422cfa ata_cable_sata +EXPORT_SYMBOL_GPL vmlinux 0x9b44b701 of_rescan_bus +EXPORT_SYMBOL_GPL vmlinux 0x9b555c8c pm_suspend_default_s2idle +EXPORT_SYMBOL_GPL vmlinux 0x9b5b1394 device_property_read_string_array +EXPORT_SYMBOL_GPL vmlinux 0x9b6ec967 ring_buffer_size +EXPORT_SYMBOL_GPL vmlinux 0x9b7674ff ping_unhash +EXPORT_SYMBOL_GPL vmlinux 0x9b8804e0 cpu_remove_dev_attr_group +EXPORT_SYMBOL_GPL vmlinux 0x9b896724 devlink_param_value_str_fill +EXPORT_SYMBOL_GPL vmlinux 0x9b9071cb get_old_itimerspec32 +EXPORT_SYMBOL_GPL vmlinux 0x9b92d16e pinctrl_gpio_set_config +EXPORT_SYMBOL_GPL vmlinux 0x9b99af59 bgpio_init +EXPORT_SYMBOL_GPL vmlinux 0x9ba2bb2b gpio_request_array +EXPORT_SYMBOL_GPL vmlinux 0x9ba997b7 dm_internal_resume +EXPORT_SYMBOL_GPL vmlinux 0x9baf7c7c tty_put_char +EXPORT_SYMBOL_GPL vmlinux 0x9bb09abc rio_mport_read_config_8 +EXPORT_SYMBOL_GPL vmlinux 0x9bbe023e devm_gpio_free +EXPORT_SYMBOL_GPL vmlinux 0x9bc42fbd sysfs_remove_bin_file +EXPORT_SYMBOL_GPL vmlinux 0x9bd2f0ed devm_of_platform_depopulate +EXPORT_SYMBOL_GPL vmlinux 0x9bde79bc xive_tima_os +EXPORT_SYMBOL_GPL vmlinux 0x9bece81b mpi_cmp_ui +EXPORT_SYMBOL_GPL vmlinux 0x9c0acfa6 __netpoll_setup +EXPORT_SYMBOL_GPL vmlinux 0x9c1af7f7 of_genpd_del_provider +EXPORT_SYMBOL_GPL vmlinux 0x9c3e22a5 pci_iomap_wc_range +EXPORT_SYMBOL_GPL vmlinux 0x9c405b13 pci_epc_set_msi +EXPORT_SYMBOL_GPL vmlinux 0x9c663403 arizona_clk32k_disable +EXPORT_SYMBOL_GPL vmlinux 0x9c6febfc add_uevent_var +EXPORT_SYMBOL_GPL vmlinux 0x9c713bf1 fwnode_property_read_u8_array +EXPORT_SYMBOL_GPL vmlinux 0x9c803020 usb_phy_roothub_power_on +EXPORT_SYMBOL_GPL vmlinux 0x9ca6bba0 nvdimm_blk_region_create +EXPORT_SYMBOL_GPL vmlinux 0x9caa6a8a devm_free_percpu +EXPORT_SYMBOL_GPL vmlinux 0x9cbb5083 trace_get_event_file +EXPORT_SYMBOL_GPL vmlinux 0x9cbcf111 dw_pcie_read_dbi +EXPORT_SYMBOL_GPL vmlinux 0x9cc4f70a register_pm_notifier +EXPORT_SYMBOL_GPL vmlinux 0x9cc5be0c devlink_resource_occ_get_register +EXPORT_SYMBOL_GPL vmlinux 0x9cd12f48 irq_setup_alt_chip +EXPORT_SYMBOL_GPL vmlinux 0x9ce87af6 pci_remove_root_bus +EXPORT_SYMBOL_GPL vmlinux 0x9cf37c44 __iowrite32_copy +EXPORT_SYMBOL_GPL vmlinux 0x9d09e8ae ring_buffer_event_data +EXPORT_SYMBOL_GPL vmlinux 0x9d0dbfbd ata_scsi_slave_destroy +EXPORT_SYMBOL_GPL vmlinux 0x9d211218 pinconf_generic_dt_free_map +EXPORT_SYMBOL_GPL vmlinux 0x9d2cef3e thermal_zone_of_get_sensor_id +EXPORT_SYMBOL_GPL vmlinux 0x9d3248b3 ehci_resume +EXPORT_SYMBOL_GPL vmlinux 0x9d340c7a hwrng_register +EXPORT_SYMBOL_GPL vmlinux 0x9d375071 usb_sg_cancel +EXPORT_SYMBOL_GPL vmlinux 0x9d523dcf phy_destroy +EXPORT_SYMBOL_GPL vmlinux 0x9d6cbaa1 gpio_to_desc +EXPORT_SYMBOL_GPL vmlinux 0x9d6e97e0 regulator_notifier_call_chain +EXPORT_SYMBOL_GPL vmlinux 0x9d749286 strp_check_rcv +EXPORT_SYMBOL_GPL vmlinux 0x9d79f142 subsys_find_device_by_id +EXPORT_SYMBOL_GPL vmlinux 0x9d7af179 platform_find_device_by_driver +EXPORT_SYMBOL_GPL vmlinux 0x9d7d6d13 class_interface_register +EXPORT_SYMBOL_GPL vmlinux 0x9d82e9a4 attribute_container_unregister +EXPORT_SYMBOL_GPL vmlinux 0x9dad1d65 __bio_add_page +EXPORT_SYMBOL_GPL vmlinux 0x9dad4fc6 iommu_tce_table_get +EXPORT_SYMBOL_GPL vmlinux 0x9dbe79b4 fib_nh_common_init +EXPORT_SYMBOL_GPL vmlinux 0x9dc29646 phy_exit +EXPORT_SYMBOL_GPL vmlinux 0x9dc46233 loop_backing_file +EXPORT_SYMBOL_GPL vmlinux 0x9dc8917d cpci_hp_unregister_bus +EXPORT_SYMBOL_GPL vmlinux 0x9dd08a2d handle_level_irq +EXPORT_SYMBOL_GPL vmlinux 0x9dd1c619 tty_buffer_space_avail +EXPORT_SYMBOL_GPL vmlinux 0x9de15620 sock_inuse_get +EXPORT_SYMBOL_GPL vmlinux 0x9de62a16 memory_cgrp_subsys_enabled_key +EXPORT_SYMBOL_GPL vmlinux 0x9deb340a fwnode_graph_get_next_endpoint +EXPORT_SYMBOL_GPL vmlinux 0x9df0cff4 pci_sriov_configure_simple +EXPORT_SYMBOL_GPL vmlinux 0x9df34ec7 devm_hwrng_unregister +EXPORT_SYMBOL_GPL vmlinux 0x9df58956 gen_pool_get +EXPORT_SYMBOL_GPL vmlinux 0x9e035e4e usb_deregister_dev +EXPORT_SYMBOL_GPL vmlinux 0x9e097d0b blocking_notifier_call_chain +EXPORT_SYMBOL_GPL vmlinux 0x9e1e5f47 unregister_hw_breakpoint +EXPORT_SYMBOL_GPL vmlinux 0x9e35e342 devlink_region_create +EXPORT_SYMBOL_GPL vmlinux 0x9e472f5f snmp_fold_field +EXPORT_SYMBOL_GPL vmlinux 0x9e4d9e65 gpiod_get_optional +EXPORT_SYMBOL_GPL vmlinux 0x9e4f2243 crypto_grab_shash +EXPORT_SYMBOL_GPL vmlinux 0x9e5d85c0 device_get_match_data +EXPORT_SYMBOL_GPL vmlinux 0x9e63e434 sata_async_notification +EXPORT_SYMBOL_GPL vmlinux 0x9e9f50de cpufreq_table_index_unsorted +EXPORT_SYMBOL_GPL vmlinux 0x9e9fee9e wakeup_source_remove +EXPORT_SYMBOL_GPL vmlinux 0x9ea27fb8 acomp_request_free +EXPORT_SYMBOL_GPL vmlinux 0x9eae2c58 regmap_mmio_detach_clk +EXPORT_SYMBOL_GPL vmlinux 0x9eaeaa81 gpiochip_remove +EXPORT_SYMBOL_GPL vmlinux 0x9ec1f364 kvmppc_subcore_enter_guest +EXPORT_SYMBOL_GPL vmlinux 0x9ecd7fae devm_nvmem_device_get +EXPORT_SYMBOL_GPL vmlinux 0x9ed554b3 unregister_keyboard_notifier +EXPORT_SYMBOL_GPL vmlinux 0x9ee5c701 fixed_phy_register +EXPORT_SYMBOL_GPL vmlinux 0x9ef1b5fe usb_hcd_giveback_urb +EXPORT_SYMBOL_GPL vmlinux 0x9ef44b1f regmap_mmio_attach_clk +EXPORT_SYMBOL_GPL vmlinux 0x9ef58bc5 inet_ehash_locks_alloc +EXPORT_SYMBOL_GPL vmlinux 0x9efaa688 crypto_ahash_digest +EXPORT_SYMBOL_GPL vmlinux 0x9f1d70ac mbox_request_channel_byname +EXPORT_SYMBOL_GPL vmlinux 0x9f86b75c vfs_getxattr_alloc +EXPORT_SYMBOL_GPL vmlinux 0x9f96e78e fsverity_verify_bio +EXPORT_SYMBOL_GPL vmlinux 0x9fa334cb pci_ats_supported +EXPORT_SYMBOL_GPL vmlinux 0x9fbc581d xfrm_audit_state_notfound_simple +EXPORT_SYMBOL_GPL vmlinux 0x9fbf0807 pm_generic_freeze_late +EXPORT_SYMBOL_GPL vmlinux 0x9fce80db fb_notifier_call_chain +EXPORT_SYMBOL_GPL vmlinux 0x9fce983f cpufreq_register_driver +EXPORT_SYMBOL_GPL vmlinux 0x9fe899b7 get_cpu_idle_time +EXPORT_SYMBOL_GPL vmlinux 0x9fe939e1 mpi_powm +EXPORT_SYMBOL_GPL vmlinux 0xa000bf26 pinctrl_select_default_state +EXPORT_SYMBOL_GPL vmlinux 0xa00a7a79 debugfs_write_file_bool +EXPORT_SYMBOL_GPL vmlinux 0xa01a8d9b nd_cmd_bus_desc +EXPORT_SYMBOL_GPL vmlinux 0xa03f3ac9 ehci_init_driver +EXPORT_SYMBOL_GPL vmlinux 0xa04f945a cpus_read_lock +EXPORT_SYMBOL_GPL vmlinux 0xa05337d7 metadata_dst_free +EXPORT_SYMBOL_GPL vmlinux 0xa06141a2 pwm_adjust_config +EXPORT_SYMBOL_GPL vmlinux 0xa0629643 extcon_set_property_capability +EXPORT_SYMBOL_GPL vmlinux 0xa068bf17 da9052_regmap_config +EXPORT_SYMBOL_GPL vmlinux 0xa069271a dev_pm_opp_find_freq_ceil_by_volt +EXPORT_SYMBOL_GPL vmlinux 0xa070a010 usb_match_id +EXPORT_SYMBOL_GPL vmlinux 0xa076c4e7 fat_add_entries +EXPORT_SYMBOL_GPL vmlinux 0xa080a4b0 crypto_register_templates +EXPORT_SYMBOL_GPL vmlinux 0xa081aa69 sysfs_break_active_protection +EXPORT_SYMBOL_GPL vmlinux 0xa084038c __page_file_index +EXPORT_SYMBOL_GPL vmlinux 0xa092d7aa spi_sync_locked +EXPORT_SYMBOL_GPL vmlinux 0xa0aa01c9 net_prio_cgrp_subsys_enabled_key +EXPORT_SYMBOL_GPL vmlinux 0xa0cbdc75 inet_csk_reqsk_queue_hash_add +EXPORT_SYMBOL_GPL vmlinux 0xa0d02457 regulator_register +EXPORT_SYMBOL_GPL vmlinux 0xa0d3456d nr_swap_pages +EXPORT_SYMBOL_GPL vmlinux 0xa0ee131d trace_define_field +EXPORT_SYMBOL_GPL vmlinux 0xa1022b70 dev_pm_opp_get_max_volt_latency +EXPORT_SYMBOL_GPL vmlinux 0xa10e40ac usb_kill_urb +EXPORT_SYMBOL_GPL vmlinux 0xa13068af ncsi_start_dev +EXPORT_SYMBOL_GPL vmlinux 0xa1309749 bpf_prog_alloc +EXPORT_SYMBOL_GPL vmlinux 0xa141ed51 gpiochip_lock_as_irq +EXPORT_SYMBOL_GPL vmlinux 0xa14297fd ip6_route_lookup +EXPORT_SYMBOL_GPL vmlinux 0xa142f9d6 sysfs_remove_file_from_group +EXPORT_SYMBOL_GPL vmlinux 0xa146c17e subsys_interface_unregister +EXPORT_SYMBOL_GPL vmlinux 0xa14d1a82 balloon_page_alloc +EXPORT_SYMBOL_GPL vmlinux 0xa1554027 proc_create_net_data_write +EXPORT_SYMBOL_GPL vmlinux 0xa198a9a5 dev_pm_opp_attach_genpd +EXPORT_SYMBOL_GPL vmlinux 0xa1ac35b9 get_device_system_crosststamp +EXPORT_SYMBOL_GPL vmlinux 0xa1cb2b46 simple_attr_release +EXPORT_SYMBOL_GPL vmlinux 0xa1d70a03 attribute_container_register +EXPORT_SYMBOL_GPL vmlinux 0xa1d8004a videomode_from_timing +EXPORT_SYMBOL_GPL vmlinux 0xa1e449fe dev_pm_opp_get_voltage +EXPORT_SYMBOL_GPL vmlinux 0xa1ed9c8b add_hwgenerator_randomness +EXPORT_SYMBOL_GPL vmlinux 0xa1f01216 phy_pm_runtime_put +EXPORT_SYMBOL_GPL vmlinux 0xa1fcb45a regulator_list_voltage_pickable_linear_range +EXPORT_SYMBOL_GPL vmlinux 0xa2063636 ethnl_cable_test_finished +EXPORT_SYMBOL_GPL vmlinux 0xa206df02 clk_divider_ro_ops +EXPORT_SYMBOL_GPL vmlinux 0xa20d01ba __trace_bprintk +EXPORT_SYMBOL_GPL vmlinux 0xa2214c4c __mmu_notifier_register +EXPORT_SYMBOL_GPL vmlinux 0xa226e9c7 sched_show_task +EXPORT_SYMBOL_GPL vmlinux 0xa22c065b device_property_read_string +EXPORT_SYMBOL_GPL vmlinux 0xa2303cb4 dev_pm_opp_remove_all_dynamic +EXPORT_SYMBOL_GPL vmlinux 0xa24482f1 rtc_read_alarm +EXPORT_SYMBOL_GPL vmlinux 0xa26d9b4f workqueue_congested +EXPORT_SYMBOL_GPL vmlinux 0xa2855745 sdio_set_host_pm_flags +EXPORT_SYMBOL_GPL vmlinux 0xa28b004e tty_perform_flush +EXPORT_SYMBOL_GPL vmlinux 0xa295afd5 list_lru_destroy +EXPORT_SYMBOL_GPL vmlinux 0xa298af95 xive_native_get_queue_info +EXPORT_SYMBOL_GPL vmlinux 0xa2ab2599 cxl_update_properties +EXPORT_SYMBOL_GPL vmlinux 0xa2bbaa28 pwm_set_chip_data +EXPORT_SYMBOL_GPL vmlinux 0xa2bd016d tty_kopen +EXPORT_SYMBOL_GPL vmlinux 0xa2d57ff4 blkdev_zone_mgmt +EXPORT_SYMBOL_GPL vmlinux 0xa2e1b3ef trace_printk_init_buffers +EXPORT_SYMBOL_GPL vmlinux 0xa2eb3ec1 iommu_fwspec_free +EXPORT_SYMBOL_GPL vmlinux 0xa2f6946b inverse_translate +EXPORT_SYMBOL_GPL vmlinux 0xa2f812f9 phy_10gbit_fec_features_array +EXPORT_SYMBOL_GPL vmlinux 0xa2fea9c0 kernfs_notify +EXPORT_SYMBOL_GPL vmlinux 0xa3027c02 wait_on_page_writeback +EXPORT_SYMBOL_GPL vmlinux 0xa307c9bb open_related_ns +EXPORT_SYMBOL_GPL vmlinux 0xa30f6dc0 blk_clear_pm_only +EXPORT_SYMBOL_GPL vmlinux 0xa3165da5 device_set_wakeup_capable +EXPORT_SYMBOL_GPL vmlinux 0xa321624f led_set_brightness +EXPORT_SYMBOL_GPL vmlinux 0xa3224af3 register_ftrace_function +EXPORT_SYMBOL_GPL vmlinux 0xa322f228 pci_cfg_access_unlock +EXPORT_SYMBOL_GPL vmlinux 0xa32cc266 crypto_stats_ahash_update +EXPORT_SYMBOL_GPL vmlinux 0xa32e8f85 __page_mapcount +EXPORT_SYMBOL_GPL vmlinux 0xa33079c4 pci_set_cacheline_size +EXPORT_SYMBOL_GPL vmlinux 0xa332d130 tcp_reno_undo_cwnd +EXPORT_SYMBOL_GPL vmlinux 0xa33468a0 dev_pm_opp_get_opp_table +EXPORT_SYMBOL_GPL vmlinux 0xa3356a28 trace_event_buffer_commit +EXPORT_SYMBOL_GPL vmlinux 0xa33d91a8 btree_get_prev +EXPORT_SYMBOL_GPL vmlinux 0xa35a2d94 of_usb_get_phy_mode +EXPORT_SYMBOL_GPL vmlinux 0xa36f50fb is_binary_blacklisted +EXPORT_SYMBOL_GPL vmlinux 0xa37d155d br_ip6_fragment +EXPORT_SYMBOL_GPL vmlinux 0xa37fb869 of_pci_dma_range_parser_init +EXPORT_SYMBOL_GPL vmlinux 0xa38602cd drain_workqueue +EXPORT_SYMBOL_GPL vmlinux 0xa389a49a profile_event_register +EXPORT_SYMBOL_GPL vmlinux 0xa38a9f71 get_itimerspec64 +EXPORT_SYMBOL_GPL vmlinux 0xa3a04602 btree_geo64 +EXPORT_SYMBOL_GPL vmlinux 0xa3a23521 lwtunnel_input +EXPORT_SYMBOL_GPL vmlinux 0xa3a2d9af walk_system_ram_range +EXPORT_SYMBOL_GPL vmlinux 0xa3a52296 kernel_kobj +EXPORT_SYMBOL_GPL vmlinux 0xa3a5f3aa lwtunnel_output +EXPORT_SYMBOL_GPL vmlinux 0xa3a6de75 bpf_prog_sub +EXPORT_SYMBOL_GPL vmlinux 0xa3a8376c rtnl_af_unregister +EXPORT_SYMBOL_GPL vmlinux 0xa3b56555 hpte_page_sizes +EXPORT_SYMBOL_GPL vmlinux 0xa3b958ce reset_hung_task_detector +EXPORT_SYMBOL_GPL vmlinux 0xa3da8e68 rio_unlock_device +EXPORT_SYMBOL_GPL vmlinux 0xa3e687a6 kobject_init_and_add +EXPORT_SYMBOL_GPL vmlinux 0xa3f12f69 __crypto_xor +EXPORT_SYMBOL_GPL vmlinux 0xa3f6d87c eeh_dev_check_failure +EXPORT_SYMBOL_GPL vmlinux 0xa4031b7f sfp_parse_port +EXPORT_SYMBOL_GPL vmlinux 0xa404ad85 power_supply_put +EXPORT_SYMBOL_GPL vmlinux 0xa4104a4a hwspin_lock_unregister +EXPORT_SYMBOL_GPL vmlinux 0xa410a295 devlink_region_destroy +EXPORT_SYMBOL_GPL vmlinux 0xa415a4d8 mbox_controller_unregister +EXPORT_SYMBOL_GPL vmlinux 0xa41d4574 gpiod_get_array_value +EXPORT_SYMBOL_GPL vmlinux 0xa42f79a4 __tracepoint_vfio_pci_nvgpu_mmap +EXPORT_SYMBOL_GPL vmlinux 0xa43c918f crypto_register_scomp +EXPORT_SYMBOL_GPL vmlinux 0xa44a1307 interval_tree_iter_first +EXPORT_SYMBOL_GPL vmlinux 0xa4519b61 shmem_file_setup_with_mnt +EXPORT_SYMBOL_GPL vmlinux 0xa45c7b90 stack_trace_print +EXPORT_SYMBOL_GPL vmlinux 0xa4628226 rio_mport_read_config_16 +EXPORT_SYMBOL_GPL vmlinux 0xa471982d dm_table_set_type +EXPORT_SYMBOL_GPL vmlinux 0xa47d3cc7 sysfs_rename_link_ns +EXPORT_SYMBOL_GPL vmlinux 0xa48196c8 kdb_poll_idx +EXPORT_SYMBOL_GPL vmlinux 0xa49800ce skcipher_walk_aead_decrypt +EXPORT_SYMBOL_GPL vmlinux 0xa4ab7c1c ring_buffer_overruns +EXPORT_SYMBOL_GPL vmlinux 0xa4b07fe7 ring_buffer_change_overwrite +EXPORT_SYMBOL_GPL vmlinux 0xa4c09f6b sdev_evt_send_simple +EXPORT_SYMBOL_GPL vmlinux 0xa4c29e32 clk_hw_get_name +EXPORT_SYMBOL_GPL vmlinux 0xa4d22181 sbitmap_prepare_to_wait +EXPORT_SYMBOL_GPL vmlinux 0xa4dc4486 dm_get_table_device +EXPORT_SYMBOL_GPL vmlinux 0xa4e210ce iommu_present +EXPORT_SYMBOL_GPL vmlinux 0xa4f75436 tcp_register_congestion_control +EXPORT_SYMBOL_GPL vmlinux 0xa5092428 kvm_alloc_hpt_cma +EXPORT_SYMBOL_GPL vmlinux 0xa50c359e dev_pm_opp_find_freq_floor +EXPORT_SYMBOL_GPL vmlinux 0xa516e222 divider_recalc_rate +EXPORT_SYMBOL_GPL vmlinux 0xa531471e clk_save_context +EXPORT_SYMBOL_GPL vmlinux 0xa53585a2 rio_enable_rx_tx_port +EXPORT_SYMBOL_GPL vmlinux 0xa5396c55 blkcg_policy_register +EXPORT_SYMBOL_GPL vmlinux 0xa54b0380 __module_text_address +EXPORT_SYMBOL_GPL vmlinux 0xa556c0d0 of_get_pci_domain_nr +EXPORT_SYMBOL_GPL vmlinux 0xa561c3cf devm_clk_hw_unregister +EXPORT_SYMBOL_GPL vmlinux 0xa56fb062 rio_register_mport +EXPORT_SYMBOL_GPL vmlinux 0xa57499dc fuse_do_ioctl +EXPORT_SYMBOL_GPL vmlinux 0xa57f16aa dev_pm_qos_remove_request +EXPORT_SYMBOL_GPL vmlinux 0xa591c3b9 virtio_check_driver_offered_feature +EXPORT_SYMBOL_GPL vmlinux 0xa5a260ca nd_blk_region_provider_data +EXPORT_SYMBOL_GPL vmlinux 0xa5a3fd54 xdp_attachment_query +EXPORT_SYMBOL_GPL vmlinux 0xa5b00659 ppc_proc_freq +EXPORT_SYMBOL_GPL vmlinux 0xa5b9e123 component_bind_all +EXPORT_SYMBOL_GPL vmlinux 0xa5d7c388 pstore_type_to_name +EXPORT_SYMBOL_GPL vmlinux 0xa5de7707 fs_dax_get_by_bdev +EXPORT_SYMBOL_GPL vmlinux 0xa5efbf4c async_synchronize_full +EXPORT_SYMBOL_GPL vmlinux 0xa60839bf __tracepoint_rpm_return_int +EXPORT_SYMBOL_GPL vmlinux 0xa6188156 pid_vnr +EXPORT_SYMBOL_GPL vmlinux 0xa61b4384 cpufreq_policy_transition_delay_us +EXPORT_SYMBOL_GPL vmlinux 0xa626c6b3 scsi_get_vpd_page +EXPORT_SYMBOL_GPL vmlinux 0xa62ae3ed pci_check_and_unmask_intx +EXPORT_SYMBOL_GPL vmlinux 0xa62d67f1 tpm_chip_register +EXPORT_SYMBOL_GPL vmlinux 0xa634900c regulator_set_current_limit +EXPORT_SYMBOL_GPL vmlinux 0xa65f9e40 nvmem_cell_get +EXPORT_SYMBOL_GPL vmlinux 0xa66033c5 usb_put_phy +EXPORT_SYMBOL_GPL vmlinux 0xa684bac9 srp_release_transport +EXPORT_SYMBOL_GPL vmlinux 0xa68f18e6 iommu_take_ownership +EXPORT_SYMBOL_GPL vmlinux 0xa6aaf498 netlink_add_tap +EXPORT_SYMBOL_GPL vmlinux 0xa6b06f65 ata_sff_queue_work +EXPORT_SYMBOL_GPL vmlinux 0xa6b21ef2 dpm_suspend_end +EXPORT_SYMBOL_GPL vmlinux 0xa6b7c008 vfio_group_get_external_user_from_dev +EXPORT_SYMBOL_GPL vmlinux 0xa6c2782d spi_unregister_controller +EXPORT_SYMBOL_GPL vmlinux 0xa6c648bd blk_mq_queue_inflight +EXPORT_SYMBOL_GPL vmlinux 0xa6cf5680 __tracepoint_block_unplug +EXPORT_SYMBOL_GPL vmlinux 0xa6d1e06f splpar_spin_yield +EXPORT_SYMBOL_GPL vmlinux 0xa6e1a69d kick_all_cpus_sync +EXPORT_SYMBOL_GPL vmlinux 0xa709c835 fib6_info_destroy_rcu +EXPORT_SYMBOL_GPL vmlinux 0xa71437a7 tcp_reno_cong_avoid +EXPORT_SYMBOL_GPL vmlinux 0xa719bf99 kill_device +EXPORT_SYMBOL_GPL vmlinux 0xa71d3a63 __inet_lookup_listener +EXPORT_SYMBOL_GPL vmlinux 0xa7217efd percpu_free_rwsem +EXPORT_SYMBOL_GPL vmlinux 0xa72c84ce cxl_afu_get +EXPORT_SYMBOL_GPL vmlinux 0xa72d8d1e crypto_register_acomps +EXPORT_SYMBOL_GPL vmlinux 0xa735ec92 iomap_file_buffered_write +EXPORT_SYMBOL_GPL vmlinux 0xa73f8498 tcp_unregister_ulp +EXPORT_SYMBOL_GPL vmlinux 0xa741b6e8 thermal_add_hwmon_sysfs +EXPORT_SYMBOL_GPL vmlinux 0xa74e71a8 tty_ldisc_deref +EXPORT_SYMBOL_GPL vmlinux 0xa76193ba rhashtable_walk_enter +EXPORT_SYMBOL_GPL vmlinux 0xa77651d1 dma_request_slave_channel +EXPORT_SYMBOL_GPL vmlinux 0xa782cef5 __blk_mq_debugfs_rq_show +EXPORT_SYMBOL_GPL vmlinux 0xa7a90e8e fixed_phy_change_carrier +EXPORT_SYMBOL_GPL vmlinux 0xa7ab5415 vas_register_coproc_api +EXPORT_SYMBOL_GPL vmlinux 0xa7b67ff8 dev_pm_disable_wake_irq +EXPORT_SYMBOL_GPL vmlinux 0xa7b7c248 wbt_disable_default +EXPORT_SYMBOL_GPL vmlinux 0xa7cfddff perf_event_pause +EXPORT_SYMBOL_GPL vmlinux 0xa7f1a885 blk_req_needs_zone_write_lock +EXPORT_SYMBOL_GPL vmlinux 0xa7f5f739 of_icc_get +EXPORT_SYMBOL_GPL vmlinux 0xa7f7353a posix_acl_access_xattr_handler +EXPORT_SYMBOL_GPL vmlinux 0xa7f965b6 fs_kobj +EXPORT_SYMBOL_GPL vmlinux 0xa808b51f serial8250_clear_and_reinit_fifos +EXPORT_SYMBOL_GPL vmlinux 0xa8162ccf virtqueue_get_used_addr +EXPORT_SYMBOL_GPL vmlinux 0xa81c311c devlink_port_attrs_pci_pf_set +EXPORT_SYMBOL_GPL vmlinux 0xa82b0a21 pids_cgrp_subsys_enabled_key +EXPORT_SYMBOL_GPL vmlinux 0xa82ba7be gpiod_get_raw_value +EXPORT_SYMBOL_GPL vmlinux 0xa851973a raw_notifier_call_chain +EXPORT_SYMBOL_GPL vmlinux 0xa8714829 skb_complete_wifi_ack +EXPORT_SYMBOL_GPL vmlinux 0xa87be749 genphy_c45_restart_aneg +EXPORT_SYMBOL_GPL vmlinux 0xa87f5f63 pm_genpd_syscore_poweroff +EXPORT_SYMBOL_GPL vmlinux 0xa889d2f7 dev_coredumpv +EXPORT_SYMBOL_GPL vmlinux 0xa8b75327 usb_root_hub_lost_power +EXPORT_SYMBOL_GPL vmlinux 0xa8bc1596 led_colors +EXPORT_SYMBOL_GPL vmlinux 0xa8f1bde4 pwmchip_remove +EXPORT_SYMBOL_GPL vmlinux 0xa906b4d0 nvdimm_flush +EXPORT_SYMBOL_GPL vmlinux 0xa92e2c4a devm_regulator_bulk_register_supply_alias +EXPORT_SYMBOL_GPL vmlinux 0xa9302106 pci_ecam_map_bus +EXPORT_SYMBOL_GPL vmlinux 0xa9320d27 ktime_get_seconds +EXPORT_SYMBOL_GPL vmlinux 0xa9347a64 usb_get_dr_mode +EXPORT_SYMBOL_GPL vmlinux 0xa93c9792 usb_hcd_amd_remote_wakeup_quirk +EXPORT_SYMBOL_GPL vmlinux 0xa93d60b0 iomap_readahead +EXPORT_SYMBOL_GPL vmlinux 0xa945f23c usb_get_hcd +EXPORT_SYMBOL_GPL vmlinux 0xa971f577 edac_pci_handle_pe +EXPORT_SYMBOL_GPL vmlinux 0xa98711b3 tcp_sendmsg_locked +EXPORT_SYMBOL_GPL vmlinux 0xa98e69a1 dev_coredumpm +EXPORT_SYMBOL_GPL vmlinux 0xa999327d of_console_check +EXPORT_SYMBOL_GPL vmlinux 0xa99ef899 devlink_fmsg_bool_pair_put +EXPORT_SYMBOL_GPL vmlinux 0xa9a0ee26 pnv_pci_get_device_tree +EXPORT_SYMBOL_GPL vmlinux 0xa9bdd5c1 enable_kprobe +EXPORT_SYMBOL_GPL vmlinux 0xa9ce341e usb_show_dynids +EXPORT_SYMBOL_GPL vmlinux 0xa9d4ab1f ata_sas_queuecmd +EXPORT_SYMBOL_GPL vmlinux 0xa9e18049 task_handoff_unregister +EXPORT_SYMBOL_GPL vmlinux 0xa9ec0985 blk_mq_freeze_queue_wait +EXPORT_SYMBOL_GPL vmlinux 0xaa1758c5 gen_pool_avail +EXPORT_SYMBOL_GPL vmlinux 0xaa1884a0 of_clk_set_defaults +EXPORT_SYMBOL_GPL vmlinux 0xaa1cf655 pci_dev_run_wake +EXPORT_SYMBOL_GPL vmlinux 0xaa230f88 perf_unregister_guest_info_callbacks +EXPORT_SYMBOL_GPL vmlinux 0xaa2862b9 for_each_kernel_tracepoint +EXPORT_SYMBOL_GPL vmlinux 0xaa330892 proc_create_net_data +EXPORT_SYMBOL_GPL vmlinux 0xaa3af4e4 da903x_update +EXPORT_SYMBOL_GPL vmlinux 0xaa5a5635 ptp_classify_raw +EXPORT_SYMBOL_GPL vmlinux 0xaa6a50f9 __static_key_deferred_flush +EXPORT_SYMBOL_GPL vmlinux 0xaa981b81 gov_attr_set_get +EXPORT_SYMBOL_GPL vmlinux 0xaa98d710 device_find_child +EXPORT_SYMBOL_GPL vmlinux 0xaaa50d92 irq_chip_set_type_parent +EXPORT_SYMBOL_GPL vmlinux 0xaaa918c9 ftrace_dump +EXPORT_SYMBOL_GPL vmlinux 0xaaaa5ec9 cpu_latency_qos_remove_request +EXPORT_SYMBOL_GPL vmlinux 0xaabdb8ae dmaengine_desc_get_metadata_ptr +EXPORT_SYMBOL_GPL vmlinux 0xaac693d8 gpiochip_generic_request +EXPORT_SYMBOL_GPL vmlinux 0xaadc21b4 event_triggers_call +EXPORT_SYMBOL_GPL vmlinux 0xaae866c9 pinmux_generic_get_function_groups +EXPORT_SYMBOL_GPL vmlinux 0xaaf8228f ata_bmdma_stop +EXPORT_SYMBOL_GPL vmlinux 0xab0c30f2 iomap_readpage +EXPORT_SYMBOL_GPL vmlinux 0xab1a517c regmap_fields_read +EXPORT_SYMBOL_GPL vmlinux 0xab1cdf2e inet_csk_compat_setsockopt +EXPORT_SYMBOL_GPL vmlinux 0xab2f8494 usb_autopm_get_interface +EXPORT_SYMBOL_GPL vmlinux 0xab435701 __put_task_struct +EXPORT_SYMBOL_GPL vmlinux 0xab4b0566 usb_hcd_is_primary_hcd +EXPORT_SYMBOL_GPL vmlinux 0xab6cb0ff subsys_dev_iter_exit +EXPORT_SYMBOL_GPL vmlinux 0xab6feda5 fwnode_device_is_available +EXPORT_SYMBOL_GPL vmlinux 0xab72e25f irq_chip_eoi_parent +EXPORT_SYMBOL_GPL vmlinux 0xab94d854 pinctrl_pm_select_sleep_state +EXPORT_SYMBOL_GPL vmlinux 0xab9bd884 perf_register_guest_info_callbacks +EXPORT_SYMBOL_GPL vmlinux 0xabb0b3d0 kvmppc_do_h_enter +EXPORT_SYMBOL_GPL vmlinux 0xabb81187 device_match_devt +EXPORT_SYMBOL_GPL vmlinux 0xabbd414e skb_segment +EXPORT_SYMBOL_GPL vmlinux 0xabc640f3 list_lru_isolate +EXPORT_SYMBOL_GPL vmlinux 0xabda5db6 device_move +EXPORT_SYMBOL_GPL vmlinux 0xabeda6a0 edac_pci_handle_npe +EXPORT_SYMBOL_GPL vmlinux 0xabfc0d91 wm8998_i2c_regmap +EXPORT_SYMBOL_GPL vmlinux 0xac0624b4 vfio_spapr_iommu_eeh_ioctl +EXPORT_SYMBOL_GPL vmlinux 0xac367e7b dma_get_slave_channel +EXPORT_SYMBOL_GPL vmlinux 0xac89d536 sata_link_hardreset +EXPORT_SYMBOL_GPL vmlinux 0xac8aac3f gpiochip_find +EXPORT_SYMBOL_GPL vmlinux 0xacb4d88c clk_rate_exclusive_put +EXPORT_SYMBOL_GPL vmlinux 0xacb68e38 devm_clk_bulk_get_all +EXPORT_SYMBOL_GPL vmlinux 0xacce2de3 fwnode_property_read_u16_array +EXPORT_SYMBOL_GPL vmlinux 0xace9034b devm_regulator_register +EXPORT_SYMBOL_GPL vmlinux 0xacf234f2 iommu_group_get +EXPORT_SYMBOL_GPL vmlinux 0xacf9c08f apply_to_existing_page_range +EXPORT_SYMBOL_GPL vmlinux 0xacfe997e powerpc_firmware_features +EXPORT_SYMBOL_GPL vmlinux 0xad066a20 gpiod_set_array_value_cansleep +EXPORT_SYMBOL_GPL vmlinux 0xad0ce2a1 vfs_kern_mount +EXPORT_SYMBOL_GPL vmlinux 0xad12bb7a gen_pool_size +EXPORT_SYMBOL_GPL vmlinux 0xad32d316 to_of_pinfo +EXPORT_SYMBOL_GPL vmlinux 0xad35fe33 __vfs_removexattr_locked +EXPORT_SYMBOL_GPL vmlinux 0xad4481a3 devlink_port_type_eth_set +EXPORT_SYMBOL_GPL vmlinux 0xad47f1db of_pm_clk_add_clk +EXPORT_SYMBOL_GPL vmlinux 0xad4e6259 remove_cpu +EXPORT_SYMBOL_GPL vmlinux 0xad645234 register_switchdev_notifier +EXPORT_SYMBOL_GPL vmlinux 0xad66ceac regulator_put +EXPORT_SYMBOL_GPL vmlinux 0xad6e8560 sock_diag_unregister +EXPORT_SYMBOL_GPL vmlinux 0xad705557 crypto_unregister_template +EXPORT_SYMBOL_GPL vmlinux 0xad737061 ipv6_recv_error +EXPORT_SYMBOL_GPL vmlinux 0xad7ab3b4 max8997_update_reg +EXPORT_SYMBOL_GPL vmlinux 0xad7c8915 __devm_alloc_percpu +EXPORT_SYMBOL_GPL vmlinux 0xad7ffbc4 of_hwspin_lock_get_id +EXPORT_SYMBOL_GPL vmlinux 0xad8225f6 devres_release +EXPORT_SYMBOL_GPL vmlinux 0xad83e646 pci_create_slot +EXPORT_SYMBOL_GPL vmlinux 0xad876160 of_thermal_get_trip_points +EXPORT_SYMBOL_GPL vmlinux 0xad90a4b1 pci_epc_mem_free_addr +EXPORT_SYMBOL_GPL vmlinux 0xad9d5cc4 devlink_dpipe_entry_ctx_prepare +EXPORT_SYMBOL_GPL vmlinux 0xada38766 dst_cache_destroy +EXPORT_SYMBOL_GPL vmlinux 0xadf9699b pci_write_msi_msg +EXPORT_SYMBOL_GPL vmlinux 0xae04aa24 sdio_set_block_size +EXPORT_SYMBOL_GPL vmlinux 0xae07f35f rio_route_add_entry +EXPORT_SYMBOL_GPL vmlinux 0xae11568e crypto_alloc_sync_skcipher +EXPORT_SYMBOL_GPL vmlinux 0xae241442 device_wakeup_enable +EXPORT_SYMBOL_GPL vmlinux 0xae26356d regulator_get_hardware_vsel_register +EXPORT_SYMBOL_GPL vmlinux 0xae2bf5bc nvdimm_clear_poison +EXPORT_SYMBOL_GPL vmlinux 0xae2d4d20 __ftrace_vprintk +EXPORT_SYMBOL_GPL vmlinux 0xae31d277 srp_remove_host +EXPORT_SYMBOL_GPL vmlinux 0xae39f80e dst_cache_init +EXPORT_SYMBOL_GPL vmlinux 0xae4334c1 power_supply_set_battery_charged +EXPORT_SYMBOL_GPL vmlinux 0xae43692c of_modalias_node +EXPORT_SYMBOL_GPL vmlinux 0xae442152 dawr_force_enable +EXPORT_SYMBOL_GPL vmlinux 0xae47fff7 __tracepoint_cpu_frequency +EXPORT_SYMBOL_GPL vmlinux 0xae69b1c1 usermodehelper_read_unlock +EXPORT_SYMBOL_GPL vmlinux 0xae772064 vfio_external_group_match_file +EXPORT_SYMBOL_GPL vmlinux 0xae7c231d mpi_cmp +EXPORT_SYMBOL_GPL vmlinux 0xae7d7e92 blkg_conf_prep +EXPORT_SYMBOL_GPL vmlinux 0xae87cad0 memstart_addr +EXPORT_SYMBOL_GPL vmlinux 0xae8f45d9 clk_hw_get_rate +EXPORT_SYMBOL_GPL vmlinux 0xae9569cb sk_psock_init +EXPORT_SYMBOL_GPL vmlinux 0xaea3475e crypto_stats_ahash_final +EXPORT_SYMBOL_GPL vmlinux 0xaeb1d262 bpf_trace_run12 +EXPORT_SYMBOL_GPL vmlinux 0xaeb6f0be __cpuhp_state_add_instance +EXPORT_SYMBOL_GPL vmlinux 0xaec127a5 kstrdup_quotable_cmdline +EXPORT_SYMBOL_GPL vmlinux 0xaec9921f hash_page +EXPORT_SYMBOL_GPL vmlinux 0xaecaabb8 is_xive_irq +EXPORT_SYMBOL_GPL vmlinux 0xaece37f0 power_supply_get_by_phandle +EXPORT_SYMBOL_GPL vmlinux 0xaf076aec nd_fletcher64 +EXPORT_SYMBOL_GPL vmlinux 0xaf07d84d gpiod_put +EXPORT_SYMBOL_GPL vmlinux 0xaf0c8e59 update_time +EXPORT_SYMBOL_GPL vmlinux 0xaf1ce667 virtqueue_enable_cb_prepare +EXPORT_SYMBOL_GPL vmlinux 0xaf1e10da opal_int_set_mfrr +EXPORT_SYMBOL_GPL vmlinux 0xaf1f70dd usb_driver_set_configuration +EXPORT_SYMBOL_GPL vmlinux 0xaf20a7f0 pci_epc_get_msi +EXPORT_SYMBOL_GPL vmlinux 0xaf2cbe01 usb_set_configuration +EXPORT_SYMBOL_GPL vmlinux 0xaf3ab090 nvdimm_bus_unregister +EXPORT_SYMBOL_GPL vmlinux 0xaf3cbed0 dst_cache_set_ip4 +EXPORT_SYMBOL_GPL vmlinux 0xaf4014ff usb_amd_quirk_pll_check +EXPORT_SYMBOL_GPL vmlinux 0xaf592888 platform_device_register_full +EXPORT_SYMBOL_GPL vmlinux 0xaf5d1ba8 irq_set_chip_and_handler_name +EXPORT_SYMBOL_GPL vmlinux 0xaf65a9ac get_kernel_page +EXPORT_SYMBOL_GPL vmlinux 0xaf6b625d kthread_unuse_mm +EXPORT_SYMBOL_GPL vmlinux 0xaf755fe3 genphy_c45_pma_read_abilities +EXPORT_SYMBOL_GPL vmlinux 0xaf793668 __alloc_percpu_gfp +EXPORT_SYMBOL_GPL vmlinux 0xaf82f3ae regmap_test_bits +EXPORT_SYMBOL_GPL vmlinux 0xaf88b086 regulator_set_voltage_rdev +EXPORT_SYMBOL_GPL vmlinux 0xaf9ee020 crypto_unregister_scomp +EXPORT_SYMBOL_GPL vmlinux 0xafbade9c devlink_params_unpublish +EXPORT_SYMBOL_GPL vmlinux 0xafbe6c9e kvmppc_hwrng_present +EXPORT_SYMBOL_GPL vmlinux 0xafc4f39a dev_pm_opp_set_rate +EXPORT_SYMBOL_GPL vmlinux 0xafddd545 ata_id_c_string +EXPORT_SYMBOL_GPL vmlinux 0xafdea92b rio_mport_initialize +EXPORT_SYMBOL_GPL vmlinux 0xafe93efa fwnode_get_name +EXPORT_SYMBOL_GPL vmlinux 0xb004c58d devlink_trap_report +EXPORT_SYMBOL_GPL vmlinux 0xb006ab07 pm_runtime_set_autosuspend_delay +EXPORT_SYMBOL_GPL vmlinux 0xb0125054 switchdev_port_obj_del +EXPORT_SYMBOL_GPL vmlinux 0xb02e08f2 vmalloc_to_phys +EXPORT_SYMBOL_GPL vmlinux 0xb0326b94 ata_pci_device_resume +EXPORT_SYMBOL_GPL vmlinux 0xb03fed40 fuse_simple_background +EXPORT_SYMBOL_GPL vmlinux 0xb042e3c9 irq_chip_ack_parent +EXPORT_SYMBOL_GPL vmlinux 0xb04e3b2c pinctrl_select_state +EXPORT_SYMBOL_GPL vmlinux 0xb05ed89b usb_deregister_device_driver +EXPORT_SYMBOL_GPL vmlinux 0xb06634ec opal_xscom_write +EXPORT_SYMBOL_GPL vmlinux 0xb0747ed2 rcu_cpu_stall_suppress +EXPORT_SYMBOL_GPL vmlinux 0xb077e70a clk_unprepare +EXPORT_SYMBOL_GPL vmlinux 0xb079b982 spi_mem_supports_op +EXPORT_SYMBOL_GPL vmlinux 0xb07eb779 shmem_file_setup +EXPORT_SYMBOL_GPL vmlinux 0xb081db61 rio_del_mport_pw_handler +EXPORT_SYMBOL_GPL vmlinux 0xb084f5ec nf_route +EXPORT_SYMBOL_GPL vmlinux 0xb0991af5 find_pid_ns +EXPORT_SYMBOL_GPL vmlinux 0xb0a2b20e xdp_convert_zc_to_xdp_frame +EXPORT_SYMBOL_GPL vmlinux 0xb0a4ffad adp5520_set_bits +EXPORT_SYMBOL_GPL vmlinux 0xb0b85f47 ring_buffer_iter_reset +EXPORT_SYMBOL_GPL vmlinux 0xb0bd14de sbitmap_queue_wake_up +EXPORT_SYMBOL_GPL vmlinux 0xb0d1656c gpio_free_array +EXPORT_SYMBOL_GPL vmlinux 0xb0da8b44 sk_attach_filter +EXPORT_SYMBOL_GPL vmlinux 0xb0db4833 subsys_dev_iter_next +EXPORT_SYMBOL_GPL vmlinux 0xb0e2c8e8 setfl +EXPORT_SYMBOL_GPL vmlinux 0xb0ecc0b6 pci_parse_request_of_pci_ranges +EXPORT_SYMBOL_GPL vmlinux 0xb0f73f8e __wake_up_locked_sync_key +EXPORT_SYMBOL_GPL vmlinux 0xb0fe5efe xhci_suspend +EXPORT_SYMBOL_GPL vmlinux 0xb10a71b3 gpiod_get_array_value_cansleep +EXPORT_SYMBOL_GPL vmlinux 0xb10d964d devlink_fmsg_pair_nest_end +EXPORT_SYMBOL_GPL vmlinux 0xb11d9000 tty_dev_name_to_number +EXPORT_SYMBOL_GPL vmlinux 0xb1425b32 dm_table_add_target_callbacks +EXPORT_SYMBOL_GPL vmlinux 0xb1492175 of_clk_parent_fill +EXPORT_SYMBOL_GPL vmlinux 0xb14d56eb of_genpd_add_subdomain +EXPORT_SYMBOL_GPL vmlinux 0xb151ffab is_software_node +EXPORT_SYMBOL_GPL vmlinux 0xb154e00a pci_enable_ats +EXPORT_SYMBOL_GPL vmlinux 0xb1647fc2 devlink_info_version_running_put +EXPORT_SYMBOL_GPL vmlinux 0xb17e0c1f irq_create_mapping_affinity +EXPORT_SYMBOL_GPL vmlinux 0xb1832d90 iommu_sva_bind_gpasid +EXPORT_SYMBOL_GPL vmlinux 0xb183aee5 uart_set_options +EXPORT_SYMBOL_GPL vmlinux 0xb18429eb suspend_device_irqs +EXPORT_SYMBOL_GPL vmlinux 0xb1a02942 icc_nodes_remove +EXPORT_SYMBOL_GPL vmlinux 0xb1a25719 crypto_stats_compress +EXPORT_SYMBOL_GPL vmlinux 0xb1bed25d dpm_resume_start +EXPORT_SYMBOL_GPL vmlinux 0xb1c96c4d tps6586x_clr_bits +EXPORT_SYMBOL_GPL vmlinux 0xb1cbf2f9 regulator_set_active_discharge_regmap +EXPORT_SYMBOL_GPL vmlinux 0xb1d9f10b sbitmap_queue_clear +EXPORT_SYMBOL_GPL vmlinux 0xb1dabc1e unregister_ftrace_export +EXPORT_SYMBOL_GPL vmlinux 0xb1e25684 __trace_bputs +EXPORT_SYMBOL_GPL vmlinux 0xb1e6cbc5 pci_hp_remove_module_link +EXPORT_SYMBOL_GPL vmlinux 0xb2071a66 __spi_alloc_controller +EXPORT_SYMBOL_GPL vmlinux 0xb21dfa21 generic_access_phys +EXPORT_SYMBOL_GPL vmlinux 0xb2210d64 reset_control_deassert +EXPORT_SYMBOL_GPL vmlinux 0xb225c3ea nvdimm_bus_register +EXPORT_SYMBOL_GPL vmlinux 0xb22b0a2c tpm_chip_alloc +EXPORT_SYMBOL_GPL vmlinux 0xb2405efc secure_tcp_seq +EXPORT_SYMBOL_GPL vmlinux 0xb254be96 debugfs_remove +EXPORT_SYMBOL_GPL vmlinux 0xb25603b8 devm_extcon_dev_allocate +EXPORT_SYMBOL_GPL vmlinux 0xb264dd6f bus_get_kset +EXPORT_SYMBOL_GPL vmlinux 0xb26514b2 alloc_skb_for_msg +EXPORT_SYMBOL_GPL vmlinux 0xb2668e89 pinctrl_utils_add_map_configs +EXPORT_SYMBOL_GPL vmlinux 0xb26a1add elfcorehdr_addr +EXPORT_SYMBOL_GPL vmlinux 0xb282d287 mmc_sanitize +EXPORT_SYMBOL_GPL vmlinux 0xb2952fac devlink_free +EXPORT_SYMBOL_GPL vmlinux 0xb29533ee zs_malloc +EXPORT_SYMBOL_GPL vmlinux 0xb2a111ee sfp_bus_find_fwnode +EXPORT_SYMBOL_GPL vmlinux 0xb2a1c8bf static_key_disable +EXPORT_SYMBOL_GPL vmlinux 0xb2a653fc confirm_error_lock +EXPORT_SYMBOL_GPL vmlinux 0xb2b8813d sysfs_remove_mount_point +EXPORT_SYMBOL_GPL vmlinux 0xb2bfc425 rhashtable_init +EXPORT_SYMBOL_GPL vmlinux 0xb2c1732e rcu_gp_set_torture_wait +EXPORT_SYMBOL_GPL vmlinux 0xb2dc434c shared_processor +EXPORT_SYMBOL_GPL vmlinux 0xb2e764e8 suspend_valid_only_mem +EXPORT_SYMBOL_GPL vmlinux 0xb2ed7cd4 __tracepoint_br_fdb_add +EXPORT_SYMBOL_GPL vmlinux 0xb2eef755 usb_store_new_id +EXPORT_SYMBOL_GPL vmlinux 0xb304844c __mnt_is_readonly +EXPORT_SYMBOL_GPL vmlinux 0xb307c909 devlink_fmsg_u64_pair_put +EXPORT_SYMBOL_GPL vmlinux 0xb328a756 bpf_trace_run5 +EXPORT_SYMBOL_GPL vmlinux 0xb33053d8 iommu_attach_device +EXPORT_SYMBOL_GPL vmlinux 0xb3623225 irq_setup_generic_chip +EXPORT_SYMBOL_GPL vmlinux 0xb3697565 cpuidle_enable_device +EXPORT_SYMBOL_GPL vmlinux 0xb3874151 scsi_host_complete_all_commands +EXPORT_SYMBOL_GPL vmlinux 0xb39aca9f blocking_notifier_chain_unregister +EXPORT_SYMBOL_GPL vmlinux 0xb3a90931 devm_clk_hw_register +EXPORT_SYMBOL_GPL vmlinux 0xb3da753a __devm_spi_alloc_controller +EXPORT_SYMBOL_GPL vmlinux 0xb3eab344 of_irq_to_resource +EXPORT_SYMBOL_GPL vmlinux 0xb3fdbaa2 serdev_device_open +EXPORT_SYMBOL_GPL vmlinux 0xb407c1df percpu_ref_switch_to_atomic +EXPORT_SYMBOL_GPL vmlinux 0xb41b3664 irq_chip_set_affinity_parent +EXPORT_SYMBOL_GPL vmlinux 0xb42697bb devm_led_classdev_unregister +EXPORT_SYMBOL_GPL vmlinux 0xb43af545 trace_event_buffer_reserve +EXPORT_SYMBOL_GPL vmlinux 0xb43bc2e8 of_fwnode_ops +EXPORT_SYMBOL_GPL vmlinux 0xb43f9365 ktime_get +EXPORT_SYMBOL_GPL vmlinux 0xb44e18ea audit_enabled +EXPORT_SYMBOL_GPL vmlinux 0xb44ee4aa pnv_ocxl_free_xive_irq +EXPORT_SYMBOL_GPL vmlinux 0xb47bb07f __netdev_watchdog_up +EXPORT_SYMBOL_GPL vmlinux 0xb486a212 tpm_try_get_ops +EXPORT_SYMBOL_GPL vmlinux 0xb488588e tb_to_ns +EXPORT_SYMBOL_GPL vmlinux 0xb48f0638 software_node_register +EXPORT_SYMBOL_GPL vmlinux 0xb49a41b7 usb_put_dev +EXPORT_SYMBOL_GPL vmlinux 0xb4b97c90 pvclock_gtod_register_notifier +EXPORT_SYMBOL_GPL vmlinux 0xb4bebf63 dm_get_md +EXPORT_SYMBOL_GPL vmlinux 0xb4cff9e6 of_fdt_unflatten_tree +EXPORT_SYMBOL_GPL vmlinux 0xb4e5707d device_add +EXPORT_SYMBOL_GPL vmlinux 0xb4ea7cf7 kgdb_connected +EXPORT_SYMBOL_GPL vmlinux 0xb4eda0da ring_buffer_event_length +EXPORT_SYMBOL_GPL vmlinux 0xb501b2df nd_cmd_dimm_desc +EXPORT_SYMBOL_GPL vmlinux 0xb503c439 clk_hw_set_parent +EXPORT_SYMBOL_GPL vmlinux 0xb50a59db pm_generic_runtime_resume +EXPORT_SYMBOL_GPL vmlinux 0xb51d3381 rtnl_put_cacheinfo +EXPORT_SYMBOL_GPL vmlinux 0xb51fbd64 edac_op_state +EXPORT_SYMBOL_GPL vmlinux 0xb529a1cb hwmon_device_register_with_groups +EXPORT_SYMBOL_GPL vmlinux 0xb53df2e3 rio_release_outb_dbell +EXPORT_SYMBOL_GPL vmlinux 0xb5421b83 __tracepoint_neigh_event_send_done +EXPORT_SYMBOL_GPL vmlinux 0xb5439aba l3mdev_fib_table_rcu +EXPORT_SYMBOL_GPL vmlinux 0xb55ba96e scsi_mode_select +EXPORT_SYMBOL_GPL vmlinux 0xb5784fae serdev_controller_alloc +EXPORT_SYMBOL_GPL vmlinux 0xb57acff0 crypto_register_scomps +EXPORT_SYMBOL_GPL vmlinux 0xb5aa10af atomic_notifier_chain_unregister +EXPORT_SYMBOL_GPL vmlinux 0xb5ac0ba0 da9052_request_irq +EXPORT_SYMBOL_GPL vmlinux 0xb5c93554 inet_csk_compat_getsockopt +EXPORT_SYMBOL_GPL vmlinux 0xb5cc3b2e pinctrl_parse_index_with_args +EXPORT_SYMBOL_GPL vmlinux 0xb5df288b kthread_park +EXPORT_SYMBOL_GPL vmlinux 0xb5f8c4a5 ata_host_alloc_pinfo +EXPORT_SYMBOL_GPL vmlinux 0xb6012bc5 phy_led_triggers_register +EXPORT_SYMBOL_GPL vmlinux 0xb6053fdf blk_mq_quiesce_queue +EXPORT_SYMBOL_GPL vmlinux 0xb60b5707 of_i8042_aux_irq +EXPORT_SYMBOL_GPL vmlinux 0xb61b2322 crypto_unregister_kpp +EXPORT_SYMBOL_GPL vmlinux 0xb624d149 thermal_zone_device_update +EXPORT_SYMBOL_GPL vmlinux 0xb6261484 register_die_notifier +EXPORT_SYMBOL_GPL vmlinux 0xb63f13b4 ip_tunnel_get_stats64 +EXPORT_SYMBOL_GPL vmlinux 0xb643c250 xics_wake_cpu +EXPORT_SYMBOL_GPL vmlinux 0xb6490b11 pnv_power9_force_smt4_release +EXPORT_SYMBOL_GPL vmlinux 0xb64f9964 net_cls_cgrp_subsys_on_dfl_key +EXPORT_SYMBOL_GPL vmlinux 0xb65ce27a phy_calibrate +EXPORT_SYMBOL_GPL vmlinux 0xb65e7474 device_property_match_string +EXPORT_SYMBOL_GPL vmlinux 0xb6723851 bus_register_notifier +EXPORT_SYMBOL_GPL vmlinux 0xb6787346 sfp_unregister_socket +EXPORT_SYMBOL_GPL vmlinux 0xb6888188 klp_shadow_get_or_alloc +EXPORT_SYMBOL_GPL vmlinux 0xb6a4afa9 rio_mport_read_config_32 +EXPORT_SYMBOL_GPL vmlinux 0xb6b52713 fb_deferred_io_open +EXPORT_SYMBOL_GPL vmlinux 0xb6b83982 power_supply_register_no_ws +EXPORT_SYMBOL_GPL vmlinux 0xb6c3fd6c __clk_get_hw +EXPORT_SYMBOL_GPL vmlinux 0xb6cb1cef phy_reset +EXPORT_SYMBOL_GPL vmlinux 0xb6e6d99d clk_disable +EXPORT_SYMBOL_GPL vmlinux 0xb6f22721 pci_create_root_bus +EXPORT_SYMBOL_GPL vmlinux 0xb6fbd250 rtc_class_close +EXPORT_SYMBOL_GPL vmlinux 0xb71616a5 jump_label_rate_limit +EXPORT_SYMBOL_GPL vmlinux 0xb71ca131 pci_disable_ats +EXPORT_SYMBOL_GPL vmlinux 0xb7329c06 clk_set_phase +EXPORT_SYMBOL_GPL vmlinux 0xb733ec86 cpufreq_freq_attr_scaling_available_freqs +EXPORT_SYMBOL_GPL vmlinux 0xb73713d7 nvmem_add_cell_lookups +EXPORT_SYMBOL_GPL vmlinux 0xb7373c5d pm_runtime_barrier +EXPORT_SYMBOL_GPL vmlinux 0xb7575f4b sk_clone_lock +EXPORT_SYMBOL_GPL vmlinux 0xb7775871 ping_err +EXPORT_SYMBOL_GPL vmlinux 0xb77a7ea2 blk_ksm_register +EXPORT_SYMBOL_GPL vmlinux 0xb77b9a49 clk_mux_ro_ops +EXPORT_SYMBOL_GPL vmlinux 0xb78cc0d3 crypto_chain +EXPORT_SYMBOL_GPL vmlinux 0xb790a68c trace_array_put +EXPORT_SYMBOL_GPL vmlinux 0xb79239a7 skb_append_pagefrags +EXPORT_SYMBOL_GPL vmlinux 0xb79922e9 software_node_fwnode +EXPORT_SYMBOL_GPL vmlinux 0xb7a387fc synchronize_rcu_tasks_rude +EXPORT_SYMBOL_GPL vmlinux 0xb7a4f509 get_user_pages_fast_only +EXPORT_SYMBOL_GPL vmlinux 0xb7c69a63 unregister_vmap_purge_notifier +EXPORT_SYMBOL_GPL vmlinux 0xb7d17fa0 pgtable_cache +EXPORT_SYMBOL_GPL vmlinux 0xb7fa8659 extcon_get_state +EXPORT_SYMBOL_GPL vmlinux 0xb802d90f bd_link_disk_holder +EXPORT_SYMBOL_GPL vmlinux 0xb81f89df __xas_next +EXPORT_SYMBOL_GPL vmlinux 0xb8212341 timecounter_cyc2time +EXPORT_SYMBOL_GPL vmlinux 0xb825336e badblocks_store +EXPORT_SYMBOL_GPL vmlinux 0xb82d43d3 ata_sff_lost_interrupt +EXPORT_SYMBOL_GPL vmlinux 0xb82f6e90 add_page_wait_queue +EXPORT_SYMBOL_GPL vmlinux 0xb8319fc2 sbitmap_del_wait_queue +EXPORT_SYMBOL_GPL vmlinux 0xb847585f is_hash_blacklisted +EXPORT_SYMBOL_GPL vmlinux 0xb8505e11 tps80031_ext_power_req_config +EXPORT_SYMBOL_GPL vmlinux 0xb854bd8e phy_basic_t1_features +EXPORT_SYMBOL_GPL vmlinux 0xb855bfe9 device_reprobe +EXPORT_SYMBOL_GPL vmlinux 0xb85d5e1c __iptunnel_pull_header +EXPORT_SYMBOL_GPL vmlinux 0xb86ed5ec debugfs_create_size_t +EXPORT_SYMBOL_GPL vmlinux 0xb8755719 query_asymmetric_key +EXPORT_SYMBOL_GPL vmlinux 0xb87b2f28 i2c_unregister_device +EXPORT_SYMBOL_GPL vmlinux 0xb87e4486 store_sampling_rate +EXPORT_SYMBOL_GPL vmlinux 0xb888cedc sysfs_remove_link_from_group +EXPORT_SYMBOL_GPL vmlinux 0xb88dbfce irq_set_irqchip_state +EXPORT_SYMBOL_GPL vmlinux 0xb89e69b1 jump_label_update_timeout +EXPORT_SYMBOL_GPL vmlinux 0xb8a46529 fat_get_dotdot_entry +EXPORT_SYMBOL_GPL vmlinux 0xb8a93ed9 ohci_hub_status_data +EXPORT_SYMBOL_GPL vmlinux 0xb8b026a7 regcache_sync +EXPORT_SYMBOL_GPL vmlinux 0xb8cd3a7f nf_logger_put +EXPORT_SYMBOL_GPL vmlinux 0xb8cd3e55 pinctrl_add_gpio_range +EXPORT_SYMBOL_GPL vmlinux 0xb8d54e98 fib_rule_matchall +EXPORT_SYMBOL_GPL vmlinux 0xb8ec6cb7 tty_port_install +EXPORT_SYMBOL_GPL vmlinux 0xb8edffe3 cpufreq_frequency_table_get_index +EXPORT_SYMBOL_GPL vmlinux 0xb9176847 ata_sas_port_stop +EXPORT_SYMBOL_GPL vmlinux 0xb923fa45 net_prio_cgrp_subsys_on_dfl_key +EXPORT_SYMBOL_GPL vmlinux 0xb9319ce1 rt_mutex_timed_lock +EXPORT_SYMBOL_GPL vmlinux 0xb94cd6b3 ata_sas_slave_configure +EXPORT_SYMBOL_GPL vmlinux 0xb95559bc housekeeping_any_cpu +EXPORT_SYMBOL_GPL vmlinux 0xb96354b7 rio_mport_write_config_32 +EXPORT_SYMBOL_GPL vmlinux 0xb9681621 xdp_do_flush +EXPORT_SYMBOL_GPL vmlinux 0xb9691e30 crypto_drop_spawn +EXPORT_SYMBOL_GPL vmlinux 0xb98b1c02 set_capacity_revalidate_and_notify +EXPORT_SYMBOL_GPL vmlinux 0xb995a7bb pci_hp_destroy +EXPORT_SYMBOL_GPL vmlinux 0xb99df747 xive_native_has_queue_state_support +EXPORT_SYMBOL_GPL vmlinux 0xb9a44a23 ata_std_postreset +EXPORT_SYMBOL_GPL vmlinux 0xb9a5877c of_msi_configure +EXPORT_SYMBOL_GPL vmlinux 0xb9a8eae8 usb_hcd_pci_probe +EXPORT_SYMBOL_GPL vmlinux 0xb9b9df41 usb_amd_dev_put +EXPORT_SYMBOL_GPL vmlinux 0xb9bfee1a pnv_ocxl_get_pasid_count +EXPORT_SYMBOL_GPL vmlinux 0xb9c425de register_syscore_ops +EXPORT_SYMBOL_GPL vmlinux 0xb9d025c9 llist_del_first +EXPORT_SYMBOL_GPL vmlinux 0xb9d8c630 __pm_runtime_use_autosuspend +EXPORT_SYMBOL_GPL vmlinux 0xb9ecac50 ata_scsi_change_queue_depth +EXPORT_SYMBOL_GPL vmlinux 0xb9f6cbde is_pnv_opal_msi +EXPORT_SYMBOL_GPL vmlinux 0xb9ff08db crypto_register_instance +EXPORT_SYMBOL_GPL vmlinux 0xba04c3ff device_release_driver +EXPORT_SYMBOL_GPL vmlinux 0xba0edb65 wm5102_spi_regmap +EXPORT_SYMBOL_GPL vmlinux 0xba158769 rtas_cancel_event_scan +EXPORT_SYMBOL_GPL vmlinux 0xba1c7e85 __list_lru_init +EXPORT_SYMBOL_GPL vmlinux 0xba2b7f64 cpufreq_generic_get +EXPORT_SYMBOL_GPL vmlinux 0xba2bd125 phy_gbit_fibre_features +EXPORT_SYMBOL_GPL vmlinux 0xba3ae5f3 ata_scsi_dma_need_drain +EXPORT_SYMBOL_GPL vmlinux 0xba5712c5 fsverity_prepare_setattr +EXPORT_SYMBOL_GPL vmlinux 0xba7605a1 tcp_ca_get_key_by_name +EXPORT_SYMBOL_GPL vmlinux 0xba8c19e4 tty_buffer_request_room +EXPORT_SYMBOL_GPL vmlinux 0xba8eecee rtnl_link_register +EXPORT_SYMBOL_GPL vmlinux 0xbab9a9f0 maxim_charger_currents +EXPORT_SYMBOL_GPL vmlinux 0xbad9d1d7 pci_remove_device_node_info +EXPORT_SYMBOL_GPL vmlinux 0xbaf6800d of_phy_provider_unregister +EXPORT_SYMBOL_GPL vmlinux 0xbaf6850c fsnotify_wait_marks_destroyed +EXPORT_SYMBOL_GPL vmlinux 0xbafa6beb gpiod_put_array +EXPORT_SYMBOL_GPL vmlinux 0xbb0ab47b debug_locks +EXPORT_SYMBOL_GPL vmlinux 0xbb1d1fac crypto_destroy_tfm +EXPORT_SYMBOL_GPL vmlinux 0xbb47053a extcon_dev_free +EXPORT_SYMBOL_GPL vmlinux 0xbb494709 usb_of_get_device_node +EXPORT_SYMBOL_GPL vmlinux 0xbb6242c4 mctrl_gpio_init_noauto +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 0xbb7926b4 bpf_map_put +EXPORT_SYMBOL_GPL vmlinux 0xbb895a2d power_supply_changed +EXPORT_SYMBOL_GPL vmlinux 0xbb93eee7 __hvc_resize +EXPORT_SYMBOL_GPL vmlinux 0xbb98297e rtnl_af_register +EXPORT_SYMBOL_GPL vmlinux 0xbb9b3298 usb_get_phy +EXPORT_SYMBOL_GPL vmlinux 0xbbc5f34c udp4_lib_lookup +EXPORT_SYMBOL_GPL vmlinux 0xbbc77e78 kvmppc_do_h_remove +EXPORT_SYMBOL_GPL vmlinux 0xbbd9b421 clockevent_delta2ns +EXPORT_SYMBOL_GPL vmlinux 0xbbe93d1c pci_device_group +EXPORT_SYMBOL_GPL vmlinux 0xbbeb82be bus_unregister_notifier +EXPORT_SYMBOL_GPL vmlinux 0xbbef39e8 fib_new_table +EXPORT_SYMBOL_GPL vmlinux 0xbbf671a8 spi_unregister_device +EXPORT_SYMBOL_GPL vmlinux 0xbc1fdefe regmap_get_device +EXPORT_SYMBOL_GPL vmlinux 0xbc3cf2f4 scsi_register_device_handler +EXPORT_SYMBOL_GPL vmlinux 0xbc49a320 component_del +EXPORT_SYMBOL_GPL vmlinux 0xbc4b57ea usb_choose_configuration +EXPORT_SYMBOL_GPL vmlinux 0xbc4cfb1b sysfs_group_change_owner +EXPORT_SYMBOL_GPL vmlinux 0xbc508107 usb_phy_set_charger_current +EXPORT_SYMBOL_GPL vmlinux 0xbc6a0a4e gpiochip_line_is_open_source +EXPORT_SYMBOL_GPL vmlinux 0xbc6bec66 free_percpu_irq +EXPORT_SYMBOL_GPL vmlinux 0xbc7d4580 phy_power_on +EXPORT_SYMBOL_GPL vmlinux 0xbc8c9c89 skcipher_register_instance +EXPORT_SYMBOL_GPL vmlinux 0xbc8eef2f ata_qc_get_active +EXPORT_SYMBOL_GPL vmlinux 0xbc954220 io_cgrp_subsys_enabled_key +EXPORT_SYMBOL_GPL vmlinux 0xbc990f41 crypto_stats_akcipher_encrypt +EXPORT_SYMBOL_GPL vmlinux 0xbcc15e75 ktime_get_coarse_with_offset +EXPORT_SYMBOL_GPL vmlinux 0xbccfd4d8 register_oldmem_pfn_is_ram +EXPORT_SYMBOL_GPL vmlinux 0xbcdb3381 dax_iomap_fault +EXPORT_SYMBOL_GPL vmlinux 0xbcdcd0b5 ata_link_abort +EXPORT_SYMBOL_GPL vmlinux 0xbcdd5b99 iommu_group_set_name +EXPORT_SYMBOL_GPL vmlinux 0xbce013d1 tps65912_device_init +EXPORT_SYMBOL_GPL vmlinux 0xbcf1f0e6 zs_create_pool +EXPORT_SYMBOL_GPL vmlinux 0xbd0088da perf_event_period +EXPORT_SYMBOL_GPL vmlinux 0xbd13c3b9 devm_pci_epc_destroy +EXPORT_SYMBOL_GPL vmlinux 0xbd1e4fa7 devm_rtc_device_register +EXPORT_SYMBOL_GPL vmlinux 0xbd2d8f02 klist_add_tail +EXPORT_SYMBOL_GPL vmlinux 0xbd2f9586 max8997_read_reg +EXPORT_SYMBOL_GPL vmlinux 0xbd3b662e driver_find +EXPORT_SYMBOL_GPL vmlinux 0xbd3fcbdd rdev_get_dev +EXPORT_SYMBOL_GPL vmlinux 0xbd3fe1e3 disable_hardirq +EXPORT_SYMBOL_GPL vmlinux 0xbd4a5c98 component_add_typed +EXPORT_SYMBOL_GPL vmlinux 0xbd4b74e4 memremap_pages +EXPORT_SYMBOL_GPL vmlinux 0xbd59f2be __rio_local_write_config_16 +EXPORT_SYMBOL_GPL vmlinux 0xbd6782da dm_get_queue_limits +EXPORT_SYMBOL_GPL vmlinux 0xbd6b2226 do_unregister_con_driver +EXPORT_SYMBOL_GPL vmlinux 0xbd71ba3e pci_probe_reset_bus +EXPORT_SYMBOL_GPL vmlinux 0xbd723a9d thermal_of_cooling_device_register +EXPORT_SYMBOL_GPL vmlinux 0xbd761ac7 find_module +EXPORT_SYMBOL_GPL vmlinux 0xbd76cc05 iommu_detach_group +EXPORT_SYMBOL_GPL vmlinux 0xbd777fec exportfs_encode_inode_fh +EXPORT_SYMBOL_GPL vmlinux 0xbd7a8a01 gpiod_set_value_cansleep +EXPORT_SYMBOL_GPL vmlinux 0xbd8897c3 net_dm_hw_report +EXPORT_SYMBOL_GPL vmlinux 0xbd95cb00 serdev_controller_add +EXPORT_SYMBOL_GPL vmlinux 0xbd999bb4 rio_request_inb_dbell +EXPORT_SYMBOL_GPL vmlinux 0xbd9b14cc serdev_controller_remove +EXPORT_SYMBOL_GPL vmlinux 0xbdaf77ee sdio_memcpy_fromio +EXPORT_SYMBOL_GPL vmlinux 0xbdbb8362 ata_link_next +EXPORT_SYMBOL_GPL vmlinux 0xbdbc9d2e debugfs_print_regs32 +EXPORT_SYMBOL_GPL vmlinux 0xbdc9c76d pm_stay_awake +EXPORT_SYMBOL_GPL vmlinux 0xbdd01243 dm_path_uevent +EXPORT_SYMBOL_GPL vmlinux 0xbdd75893 extcon_unregister_notifier +EXPORT_SYMBOL_GPL vmlinux 0xbe02dbf2 rio_lock_device +EXPORT_SYMBOL_GPL vmlinux 0xbe0d19ac tpm_send +EXPORT_SYMBOL_GPL vmlinux 0xbe0fbd3b bpf_prog_put +EXPORT_SYMBOL_GPL vmlinux 0xbe119212 pm_generic_resume_noirq +EXPORT_SYMBOL_GPL vmlinux 0xbe1f21f3 phy_init +EXPORT_SYMBOL_GPL vmlinux 0xbe2c94f2 of_dma_configure +EXPORT_SYMBOL_GPL vmlinux 0xbe3428ca shmem_truncate_range +EXPORT_SYMBOL_GPL vmlinux 0xbe35c52c klp_enable_patch +EXPORT_SYMBOL_GPL vmlinux 0xbe361f89 pinconf_generic_dt_subnode_to_map +EXPORT_SYMBOL_GPL vmlinux 0xbe3972f8 validate_xmit_skb_list +EXPORT_SYMBOL_GPL vmlinux 0xbe63b5e5 ata_bmdma_status +EXPORT_SYMBOL_GPL vmlinux 0xbe687e88 wake_up_all_idle_cpus +EXPORT_SYMBOL_GPL vmlinux 0xbe8137f3 proc_mkdir_data +EXPORT_SYMBOL_GPL vmlinux 0xbe851293 pci_epc_destroy +EXPORT_SYMBOL_GPL vmlinux 0xbe96dfd8 of_reconfig_notifier_unregister +EXPORT_SYMBOL_GPL vmlinux 0xbe9a83d5 dw_pcie_write +EXPORT_SYMBOL_GPL vmlinux 0xbea42aed fscrypt_ioctl_get_nonce +EXPORT_SYMBOL_GPL vmlinux 0xbea5ff1e static_key_initialized +EXPORT_SYMBOL_GPL vmlinux 0xbea63e77 klist_iter_init_node +EXPORT_SYMBOL_GPL vmlinux 0xbea93574 devm_i2c_new_dummy_device +EXPORT_SYMBOL_GPL vmlinux 0xbeb94759 alloc_vm_area +EXPORT_SYMBOL_GPL vmlinux 0xbebc66c2 ata_pci_device_suspend +EXPORT_SYMBOL_GPL vmlinux 0xbec0e6b0 register_virtio_device +EXPORT_SYMBOL_GPL vmlinux 0xbed322ce platform_device_register +EXPORT_SYMBOL_GPL vmlinux 0xbee5737d device_del +EXPORT_SYMBOL_GPL vmlinux 0xbee8e9d4 regmap_field_free +EXPORT_SYMBOL_GPL vmlinux 0xbef67ea3 fuse_conn_init +EXPORT_SYMBOL_GPL vmlinux 0xbf041102 register_vt_notifier +EXPORT_SYMBOL_GPL vmlinux 0xbf1cc04b tty_termios_encode_baud_rate +EXPORT_SYMBOL_GPL vmlinux 0xbf297bfa blkcg_root_css +EXPORT_SYMBOL_GPL vmlinux 0xbf30ed54 dm_disk +EXPORT_SYMBOL_GPL vmlinux 0xbf349b59 kvmppc_invalidate_hpte +EXPORT_SYMBOL_GPL vmlinux 0xbf3f6d99 sched_trace_cfs_rq_path +EXPORT_SYMBOL_GPL vmlinux 0xbf42536f clock_cooling_unregister +EXPORT_SYMBOL_GPL vmlinux 0xbf447ba7 regulator_unregister_notifier +EXPORT_SYMBOL_GPL vmlinux 0xbf4c7b51 irq_chip_mask_ack_parent +EXPORT_SYMBOL_GPL vmlinux 0xbf66d9be crypto_stats_rng_seed +EXPORT_SYMBOL_GPL vmlinux 0xbf6abbe7 housekeeping_enabled +EXPORT_SYMBOL_GPL vmlinux 0xbf8f0d19 mpc8xxx_spi_rx_buf_u8 +EXPORT_SYMBOL_GPL vmlinux 0xbfa6622f genphy_c45_read_link +EXPORT_SYMBOL_GPL vmlinux 0xbfba0b9b iommu_sva_bind_device +EXPORT_SYMBOL_GPL vmlinux 0xbfbb3108 i2c_get_device_id +EXPORT_SYMBOL_GPL vmlinux 0xbfbc5434 pciserial_resume_ports +EXPORT_SYMBOL_GPL vmlinux 0xbfbca9fa __tracepoint_arm_event +EXPORT_SYMBOL_GPL vmlinux 0xbfbee6bb nd_cmd_out_size +EXPORT_SYMBOL_GPL vmlinux 0xbfd4f9a4 iommu_flush_tce +EXPORT_SYMBOL_GPL vmlinux 0xbfe072fc cpci_hp_unregister_controller +EXPORT_SYMBOL_GPL vmlinux 0xbfe5616d tick_broadcast_oneshot_control +EXPORT_SYMBOL_GPL vmlinux 0xbfedf46b __fscrypt_prepare_symlink +EXPORT_SYMBOL_GPL vmlinux 0xbfef3024 blk_revalidate_disk_zones +EXPORT_SYMBOL_GPL vmlinux 0xbffde8ec compat_alloc_user_space +EXPORT_SYMBOL_GPL vmlinux 0xc0041935 component_master_del +EXPORT_SYMBOL_GPL vmlinux 0xc0130c0b edac_mc_add_mc_with_groups +EXPORT_SYMBOL_GPL vmlinux 0xc01513d0 pinctrl_get_group_pins +EXPORT_SYMBOL_GPL vmlinux 0xc03dfb17 stmpe811_adc_common_init +EXPORT_SYMBOL_GPL vmlinux 0xc0587e20 devm_pinctrl_put +EXPORT_SYMBOL_GPL vmlinux 0xc05c1819 dma_buf_put +EXPORT_SYMBOL_GPL vmlinux 0xc06355ce dm_put +EXPORT_SYMBOL_GPL vmlinux 0xc065a455 cpu_core_index_of_thread +EXPORT_SYMBOL_GPL vmlinux 0xc06d0d79 __devm_regmap_init +EXPORT_SYMBOL_GPL vmlinux 0xc07c0a93 spi_delay_exec +EXPORT_SYMBOL_GPL vmlinux 0xc0861f58 get_dcookie +EXPORT_SYMBOL_GPL vmlinux 0xc087b284 nvdimm_kobj +EXPORT_SYMBOL_GPL vmlinux 0xc089acd0 xfrm_audit_state_add +EXPORT_SYMBOL_GPL vmlinux 0xc092881d of_platform_depopulate +EXPORT_SYMBOL_GPL vmlinux 0xc0a96e14 rcu_gp_is_expedited +EXPORT_SYMBOL_GPL vmlinux 0xc0a9a680 vfio_virqfd_enable +EXPORT_SYMBOL_GPL vmlinux 0xc0b64a4f led_trigger_blink +EXPORT_SYMBOL_GPL vmlinux 0xc0dcb59e edac_layer_name +EXPORT_SYMBOL_GPL vmlinux 0xc0e44cad dev_pm_opp_find_freq_exact +EXPORT_SYMBOL_GPL vmlinux 0xc0f0458a ip_tunnel_unneed_metadata +EXPORT_SYMBOL_GPL vmlinux 0xc0f3dad1 fuse_do_open +EXPORT_SYMBOL_GPL vmlinux 0xc0f52aaf device_for_each_child_reverse +EXPORT_SYMBOL_GPL vmlinux 0xc1086e0c sysrq_toggle_support +EXPORT_SYMBOL_GPL vmlinux 0xc10fddb8 name_to_dev_t +EXPORT_SYMBOL_GPL vmlinux 0xc1304ec4 kthread_queue_work +EXPORT_SYMBOL_GPL vmlinux 0xc14ab1b8 tpm2_probe +EXPORT_SYMBOL_GPL vmlinux 0xc1510fde phy_create_lookup +EXPORT_SYMBOL_GPL vmlinux 0xc158d355 ip6_sk_update_pmtu +EXPORT_SYMBOL_GPL vmlinux 0xc16ae93a usb_set_interface +EXPORT_SYMBOL_GPL vmlinux 0xc17515d7 usb_hcds_loaded +EXPORT_SYMBOL_GPL vmlinux 0xc17a048e i2c_parse_fw_timings +EXPORT_SYMBOL_GPL vmlinux 0xc1870d68 splice_to_pipe +EXPORT_SYMBOL_GPL vmlinux 0xc19bb426 crypto_alloc_akcipher +EXPORT_SYMBOL_GPL vmlinux 0xc19c7256 perf_pmu_unregister +EXPORT_SYMBOL_GPL vmlinux 0xc19ea620 report_iommu_fault +EXPORT_SYMBOL_GPL vmlinux 0xc1d06e29 spi_mem_dirmap_create +EXPORT_SYMBOL_GPL vmlinux 0xc1d64b3c mnt_want_write +EXPORT_SYMBOL_GPL vmlinux 0xc1d989c5 vfio_external_check_extension +EXPORT_SYMBOL_GPL vmlinux 0xc1e52c74 xfrm_dev_resume +EXPORT_SYMBOL_GPL vmlinux 0xc1e90f7e pm_generic_suspend_noirq +EXPORT_SYMBOL_GPL vmlinux 0xc1ed9c89 cpu_latency_qos_add_request +EXPORT_SYMBOL_GPL vmlinux 0xc1eeef3b sdio_get_host_pm_caps +EXPORT_SYMBOL_GPL vmlinux 0xc1f05a37 generic_fh_to_parent +EXPORT_SYMBOL_GPL vmlinux 0xc1f0ab84 __hwspin_trylock +EXPORT_SYMBOL_GPL vmlinux 0xc2072c56 ata_timing_compute +EXPORT_SYMBOL_GPL vmlinux 0xc21cec6c iommu_cache_invalidate +EXPORT_SYMBOL_GPL vmlinux 0xc2261bc4 smpboot_unregister_percpu_thread +EXPORT_SYMBOL_GPL vmlinux 0xc22968e8 udp4_hwcsum +EXPORT_SYMBOL_GPL vmlinux 0xc22a3091 vm_unmap_aliases +EXPORT_SYMBOL_GPL vmlinux 0xc22d0acd tcpv6_prot +EXPORT_SYMBOL_GPL vmlinux 0xc238e5dd debugfs_create_file +EXPORT_SYMBOL_GPL vmlinux 0xc24095ed iommu_device_unregister +EXPORT_SYMBOL_GPL vmlinux 0xc245a39d pm_relax +EXPORT_SYMBOL_GPL vmlinux 0xc254e189 tps6586x_read +EXPORT_SYMBOL_GPL vmlinux 0xc2638c60 blk_mq_quiesce_queue_nowait +EXPORT_SYMBOL_GPL vmlinux 0xc267cbf0 of_get_regulator_init_data +EXPORT_SYMBOL_GPL vmlinux 0xc2692173 wakeup_sources_read_lock +EXPORT_SYMBOL_GPL vmlinux 0xc2754e9e cpuidle_unregister +EXPORT_SYMBOL_GPL vmlinux 0xc280fb46 kdb_register +EXPORT_SYMBOL_GPL vmlinux 0xc2836e23 udp_destruct_sock +EXPORT_SYMBOL_GPL vmlinux 0xc2842d7c devm_of_clk_add_hw_provider +EXPORT_SYMBOL_GPL vmlinux 0xc289e46d cpufreq_generic_frequency_table_verify +EXPORT_SYMBOL_GPL vmlinux 0xc28ac942 dev_pm_opp_get_freq +EXPORT_SYMBOL_GPL vmlinux 0xc29e30ff __rio_local_read_config_16 +EXPORT_SYMBOL_GPL vmlinux 0xc29e6d8b of_i2c_setup_smbus_alert +EXPORT_SYMBOL_GPL vmlinux 0xc2a39acb regulator_set_soft_start_regmap +EXPORT_SYMBOL_GPL vmlinux 0xc2a814db tcp_memory_pressure +EXPORT_SYMBOL_GPL vmlinux 0xc2aa338c perf_event_cgrp_subsys_enabled_key +EXPORT_SYMBOL_GPL vmlinux 0xc2b17bb8 clk_mux_determine_rate_flags +EXPORT_SYMBOL_GPL vmlinux 0xc2b3d34b pci_bus_resource_n +EXPORT_SYMBOL_GPL vmlinux 0xc2b61e40 usb_find_interface +EXPORT_SYMBOL_GPL vmlinux 0xc2bf78b9 irq_chip_set_wake_parent +EXPORT_SYMBOL_GPL vmlinux 0xc2c275ff opal_poll_events +EXPORT_SYMBOL_GPL vmlinux 0xc2dada4a dma_buf_unmap_attachment +EXPORT_SYMBOL_GPL vmlinux 0xc2f4f49e devlink_flash_update_status_notify +EXPORT_SYMBOL_GPL vmlinux 0xc303fd46 inet_ctl_sock_create +EXPORT_SYMBOL_GPL vmlinux 0xc3106fef lochnagar_update_config +EXPORT_SYMBOL_GPL vmlinux 0xc310b9f6 rio_unregister_mport +EXPORT_SYMBOL_GPL vmlinux 0xc319e155 klp_get_state +EXPORT_SYMBOL_GPL vmlinux 0xc31cfcf0 devfreq_event_set_event +EXPORT_SYMBOL_GPL vmlinux 0xc3292686 bpf_prog_create_from_user +EXPORT_SYMBOL_GPL vmlinux 0xc332fc3b virtqueue_add_sgs +EXPORT_SYMBOL_GPL vmlinux 0xc341ae6d zs_map_object +EXPORT_SYMBOL_GPL vmlinux 0xc3805cd1 fs_ftype_to_dtype +EXPORT_SYMBOL_GPL vmlinux 0xc3944258 trace_seq_putmem_hex +EXPORT_SYMBOL_GPL vmlinux 0xc3b3e57d extcon_dev_unregister +EXPORT_SYMBOL_GPL vmlinux 0xc3c4c6cc hash_algo_name +EXPORT_SYMBOL_GPL vmlinux 0xc3c69d88 powercap_register_control_type +EXPORT_SYMBOL_GPL vmlinux 0xc3cfc96d led_update_brightness +EXPORT_SYMBOL_GPL vmlinux 0xc3d44350 usb_anchor_urb +EXPORT_SYMBOL_GPL vmlinux 0xc3de65ff ring_buffer_bytes_cpu +EXPORT_SYMBOL_GPL vmlinux 0xc3e17af2 regmap_fields_update_bits_base +EXPORT_SYMBOL_GPL vmlinux 0xc3e8f2d0 regulator_get_init_drvdata +EXPORT_SYMBOL_GPL vmlinux 0xc3ea5305 iommu_default_passthrough +EXPORT_SYMBOL_GPL vmlinux 0xc3f07e11 vas_paste_crb +EXPORT_SYMBOL_GPL vmlinux 0xc402e25e dma_buf_end_cpu_access +EXPORT_SYMBOL_GPL vmlinux 0xc412fdf3 radix__flush_all_lpid +EXPORT_SYMBOL_GPL vmlinux 0xc426c51f klp_shadow_free_all +EXPORT_SYMBOL_GPL vmlinux 0xc428068d sata_deb_timing_long +EXPORT_SYMBOL_GPL vmlinux 0xc43e95e0 rtc_set_alarm +EXPORT_SYMBOL_GPL vmlinux 0xc44238b2 tps6586x_reads +EXPORT_SYMBOL_GPL vmlinux 0xc44eae24 alarm_forward +EXPORT_SYMBOL_GPL vmlinux 0xc4536aee bpf_trace_run6 +EXPORT_SYMBOL_GPL vmlinux 0xc454fc7b twl_get_type +EXPORT_SYMBOL_GPL vmlinux 0xc4550f63 gpiochip_enable_irq +EXPORT_SYMBOL_GPL vmlinux 0xc46324f6 dynevent_create +EXPORT_SYMBOL_GPL vmlinux 0xc46b5e00 btree_merge +EXPORT_SYMBOL_GPL vmlinux 0xc471c67a twl4030_audio_disable_resource +EXPORT_SYMBOL_GPL vmlinux 0xc489aa09 pci_bus_max_busnr +EXPORT_SYMBOL_GPL vmlinux 0xc48b7ccf ata_mode_string +EXPORT_SYMBOL_GPL vmlinux 0xc4913442 vfio_group_put_external_user +EXPORT_SYMBOL_GPL vmlinux 0xc4a610d6 sbitmap_finish_wait +EXPORT_SYMBOL_GPL vmlinux 0xc4a72936 trusted_tpm_send +EXPORT_SYMBOL_GPL vmlinux 0xc4b6e2a7 syscon_regmap_lookup_by_phandle +EXPORT_SYMBOL_GPL vmlinux 0xc4bebcf5 devlink_net_set +EXPORT_SYMBOL_GPL vmlinux 0xc4d47732 ipv6_proxy_select_ident +EXPORT_SYMBOL_GPL vmlinux 0xc4e7c425 irq_domain_free_fwnode +EXPORT_SYMBOL_GPL vmlinux 0xc4eafea9 iommu_domain_set_attr +EXPORT_SYMBOL_GPL vmlinux 0xc4f0da12 ktime_get_with_offset +EXPORT_SYMBOL_GPL vmlinux 0xc50e65c7 ata_cable_unknown +EXPORT_SYMBOL_GPL vmlinux 0xc517fff4 devlink_region_snapshot_id_put +EXPORT_SYMBOL_GPL vmlinux 0xc529dba5 strp_data_ready +EXPORT_SYMBOL_GPL vmlinux 0xc529f65a bpf_map_inc_not_zero +EXPORT_SYMBOL_GPL vmlinux 0xc53a9e05 lwtunnel_get_encap_size +EXPORT_SYMBOL_GPL vmlinux 0xc53e1b79 iomap_dio_iopoll +EXPORT_SYMBOL_GPL vmlinux 0xc55ff962 phy_basic_t1_features_array +EXPORT_SYMBOL_GPL vmlinux 0xc5604800 clk_set_rate_exclusive +EXPORT_SYMBOL_GPL vmlinux 0xc569d8ce __clk_get_name +EXPORT_SYMBOL_GPL vmlinux 0xc575c737 debug_locks_off +EXPORT_SYMBOL_GPL vmlinux 0xc5777fca linear_range_get_selector_low_array +EXPORT_SYMBOL_GPL vmlinux 0xc57b5ae4 device_create_with_groups +EXPORT_SYMBOL_GPL vmlinux 0xc58515d4 devm_serdev_device_open +EXPORT_SYMBOL_GPL vmlinux 0xc58574c7 irq_chip_enable_parent +EXPORT_SYMBOL_GPL vmlinux 0xc58a3ee6 icc_node_destroy +EXPORT_SYMBOL_GPL vmlinux 0xc5996c8c pkcs7_get_content_data +EXPORT_SYMBOL_GPL vmlinux 0xc59c9461 dma_buf_mmap +EXPORT_SYMBOL_GPL vmlinux 0xc5a5c678 uart_parse_earlycon +EXPORT_SYMBOL_GPL vmlinux 0xc5a90ab4 spi_mem_exec_op +EXPORT_SYMBOL_GPL vmlinux 0xc5be77b2 pci_epc_write_header +EXPORT_SYMBOL_GPL vmlinux 0xc5cb4521 pci_reset_function_locked +EXPORT_SYMBOL_GPL vmlinux 0xc5d4101a dst_cache_set_ip6 +EXPORT_SYMBOL_GPL vmlinux 0xc5e3d65f cpuset_cgrp_subsys_on_dfl_key +EXPORT_SYMBOL_GPL vmlinux 0xc5e7d3b5 ipv6_bpf_stub +EXPORT_SYMBOL_GPL vmlinux 0xc5edf41c regulator_force_disable +EXPORT_SYMBOL_GPL vmlinux 0xc5f45562 iomap_writepages +EXPORT_SYMBOL_GPL vmlinux 0xc606cd3c boot_cpuid +EXPORT_SYMBOL_GPL vmlinux 0xc60ae420 fib6_get_table +EXPORT_SYMBOL_GPL vmlinux 0xc617593d crypto_unregister_acomps +EXPORT_SYMBOL_GPL vmlinux 0xc617f82c unregister_oom_notifier +EXPORT_SYMBOL_GPL vmlinux 0xc6462a44 housekeeping_cpumask +EXPORT_SYMBOL_GPL vmlinux 0xc647272a phy_speed_up +EXPORT_SYMBOL_GPL vmlinux 0xc652bec5 __mdiobus_modify_changed +EXPORT_SYMBOL_GPL vmlinux 0xc654d3f4 lwtunnel_valid_encap_type +EXPORT_SYMBOL_GPL vmlinux 0xc65d3ce1 iommu_device_unlink +EXPORT_SYMBOL_GPL vmlinux 0xc66b77b1 iommu_group_set_iommudata +EXPORT_SYMBOL_GPL vmlinux 0xc6779093 ring_buffer_record_enable +EXPORT_SYMBOL_GPL vmlinux 0xc67899a2 devm_mbox_controller_unregister +EXPORT_SYMBOL_GPL vmlinux 0xc68aa252 __atomic_notifier_call_chain +EXPORT_SYMBOL_GPL vmlinux 0xc68afddf init_phb_dynamic +EXPORT_SYMBOL_GPL vmlinux 0xc697b0f7 nvmem_device_read +EXPORT_SYMBOL_GPL vmlinux 0xc69b7ee5 zs_destroy_pool +EXPORT_SYMBOL_GPL vmlinux 0xc6a4a872 __clk_is_enabled +EXPORT_SYMBOL_GPL vmlinux 0xc6acce3f devm_hwmon_device_unregister +EXPORT_SYMBOL_GPL vmlinux 0xc6cf11d0 vas_win_close +EXPORT_SYMBOL_GPL vmlinux 0xc6d45011 md_allow_write +EXPORT_SYMBOL_GPL vmlinux 0xc6deb3a2 ata_pci_device_do_resume +EXPORT_SYMBOL_GPL vmlinux 0xc6f47826 tc3589x_reg_read +EXPORT_SYMBOL_GPL vmlinux 0xc6f8ab0e uart_console_write +EXPORT_SYMBOL_GPL vmlinux 0xc6fcf592 gpiochip_irq_unmap +EXPORT_SYMBOL_GPL vmlinux 0xc6fdab7c ata_sff_check_status +EXPORT_SYMBOL_GPL vmlinux 0xc70ce0c6 rio_mport_get_physefb +EXPORT_SYMBOL_GPL vmlinux 0xc71e64a9 snmp_get_cpu_field +EXPORT_SYMBOL_GPL vmlinux 0xc7211edc xfrm_audit_state_icvfail +EXPORT_SYMBOL_GPL vmlinux 0xc734e392 noop_direct_IO +EXPORT_SYMBOL_GPL vmlinux 0xc7400c94 i2c_bus_type +EXPORT_SYMBOL_GPL vmlinux 0xc74143a4 dev_pm_opp_of_remove_table +EXPORT_SYMBOL_GPL vmlinux 0xc74b272d vas_tx_win_open +EXPORT_SYMBOL_GPL vmlinux 0xc75200dd wait_for_stable_page +EXPORT_SYMBOL_GPL vmlinux 0xc75cebad crypto_grab_aead +EXPORT_SYMBOL_GPL vmlinux 0xc75dfc04 vmf_insert_pfn_pmd_prot +EXPORT_SYMBOL_GPL vmlinux 0xc76fb2dc blk_register_queue +EXPORT_SYMBOL_GPL vmlinux 0xc7790278 cs47l24_spi_regmap +EXPORT_SYMBOL_GPL vmlinux 0xc77c57c9 pci_hp_add +EXPORT_SYMBOL_GPL vmlinux 0xc7896247 decrypt_blob +EXPORT_SYMBOL_GPL vmlinux 0xc7a1840e llist_add_batch +EXPORT_SYMBOL_GPL vmlinux 0xc7a9e2de dev_pm_domain_set +EXPORT_SYMBOL_GPL vmlinux 0xc7b3344e blk_queue_set_zoned +EXPORT_SYMBOL_GPL vmlinux 0xc7c5f296 regmap_parse_val +EXPORT_SYMBOL_GPL vmlinux 0xc7cef02c dev_pm_opp_get_level +EXPORT_SYMBOL_GPL vmlinux 0xc7d1eab5 tcp_done +EXPORT_SYMBOL_GPL vmlinux 0xc7d42600 devm_pinctrl_register_and_init +EXPORT_SYMBOL_GPL vmlinux 0xc7e376d4 klist_next +EXPORT_SYMBOL_GPL vmlinux 0xc7e3aaa0 rio_route_get_entry +EXPORT_SYMBOL_GPL vmlinux 0xc7e3afc6 regulator_allow_bypass +EXPORT_SYMBOL_GPL vmlinux 0xc7ebeb59 fixed_phy_register_with_gpiod +EXPORT_SYMBOL_GPL vmlinux 0xc7f0002d iommu_domain_alloc +EXPORT_SYMBOL_GPL vmlinux 0xc7fa4aa9 kobj_ns_drop +EXPORT_SYMBOL_GPL vmlinux 0xc8059f97 dw_pcie_setup_rc +EXPORT_SYMBOL_GPL vmlinux 0xc80ac5b1 of_pwm_xlate_with_flags +EXPORT_SYMBOL_GPL vmlinux 0xc820b712 clk_hw_register_fractional_divider +EXPORT_SYMBOL_GPL vmlinux 0xc82c721f klist_remove +EXPORT_SYMBOL_GPL vmlinux 0xc830e2ca fixed_phy_set_link_update +EXPORT_SYMBOL_GPL vmlinux 0xc833764a ip6_dst_lookup_flow +EXPORT_SYMBOL_GPL vmlinux 0xc83afab7 devlink_trap_policers_unregister +EXPORT_SYMBOL_GPL vmlinux 0xc84cf0ed mdiobus_modify +EXPORT_SYMBOL_GPL vmlinux 0xc84e928f __tracepoint_pelt_cfs_tp +EXPORT_SYMBOL_GPL vmlinux 0xc8594d3d reset_control_acquire +EXPORT_SYMBOL_GPL vmlinux 0xc862fada sbitmap_queue_show +EXPORT_SYMBOL_GPL vmlinux 0xc86fa402 tty_port_unregister_device +EXPORT_SYMBOL_GPL vmlinux 0xc8762fe0 pm_clk_resume +EXPORT_SYMBOL_GPL vmlinux 0xc87f2074 spi_mem_default_supports_op +EXPORT_SYMBOL_GPL vmlinux 0xc88e068f dev_nit_active +EXPORT_SYMBOL_GPL vmlinux 0xc8b88d9b __tracepoint_neigh_event_send_dead +EXPORT_SYMBOL_GPL vmlinux 0xc8cf7591 iommu_map +EXPORT_SYMBOL_GPL vmlinux 0xc8d54bd7 pm_clk_add_notifier +EXPORT_SYMBOL_GPL vmlinux 0xc8d60489 cpufreq_driver_resolve_freq +EXPORT_SYMBOL_GPL vmlinux 0xc8ddd5b5 kstrdup_quotable +EXPORT_SYMBOL_GPL vmlinux 0xc8e0bc57 iommu_domain_free +EXPORT_SYMBOL_GPL vmlinux 0xc8e96602 input_ff_create +EXPORT_SYMBOL_GPL vmlinux 0xc8efc499 sock_diag_register +EXPORT_SYMBOL_GPL vmlinux 0xc90db1e5 aead_init_geniv +EXPORT_SYMBOL_GPL vmlinux 0xc90ef84b blk_set_queue_dying +EXPORT_SYMBOL_GPL vmlinux 0xc91277a1 kgdb_schedule_breakpoint +EXPORT_SYMBOL_GPL vmlinux 0xc919bedc ata_slave_link_init +EXPORT_SYMBOL_GPL vmlinux 0xc93ee1e7 usb_phy_roothub_init +EXPORT_SYMBOL_GPL vmlinux 0xc9426f98 led_trigger_set_default +EXPORT_SYMBOL_GPL vmlinux 0xc943c741 pinctrl_utils_reserve_map +EXPORT_SYMBOL_GPL vmlinux 0xc947d8bc md_run +EXPORT_SYMBOL_GPL vmlinux 0xc9561772 fb_destroy_modelist +EXPORT_SYMBOL_GPL vmlinux 0xc95929b6 dev_attr_ncq_prio_enable +EXPORT_SYMBOL_GPL vmlinux 0xc95a7d18 dev_pm_qos_update_user_latency_tolerance +EXPORT_SYMBOL_GPL vmlinux 0xc95b6e02 kill_pid_usb_asyncio +EXPORT_SYMBOL_GPL vmlinux 0xc9641b48 visitor32 +EXPORT_SYMBOL_GPL vmlinux 0xc97961a4 tcp_unregister_congestion_control +EXPORT_SYMBOL_GPL vmlinux 0xc97cfb77 nf_ipv6_ops +EXPORT_SYMBOL_GPL vmlinux 0xc9827693 __bpf_call_base +EXPORT_SYMBOL_GPL vmlinux 0xc989073a dev_pm_opp_enable +EXPORT_SYMBOL_GPL vmlinux 0xc9928d2a static_key_slow_inc +EXPORT_SYMBOL_GPL vmlinux 0xc9a8093d rhashtable_free_and_destroy +EXPORT_SYMBOL_GPL vmlinux 0xc9c6a27a xive_native_set_queue_state +EXPORT_SYMBOL_GPL vmlinux 0xc9d9144f udp_init_sock +EXPORT_SYMBOL_GPL vmlinux 0xc9e78a23 fat_update_time +EXPORT_SYMBOL_GPL vmlinux 0xc9e9e71f udp6_lib_lookup_skb +EXPORT_SYMBOL_GPL vmlinux 0xc9ec4e21 free_percpu +EXPORT_SYMBOL_GPL vmlinux 0xc9f8833a dma_buf_vmap +EXPORT_SYMBOL_GPL vmlinux 0xca058f7f __fput_sync +EXPORT_SYMBOL_GPL vmlinux 0xca12e5f5 dma_buf_map_attachment +EXPORT_SYMBOL_GPL vmlinux 0xca1a80e1 nd_cmd_in_size +EXPORT_SYMBOL_GPL vmlinux 0xca268c04 ipv4_sk_redirect +EXPORT_SYMBOL_GPL vmlinux 0xca2f457d lwtunnel_encap_add_ops +EXPORT_SYMBOL_GPL vmlinux 0xca4b5c51 idr_remove +EXPORT_SYMBOL_GPL vmlinux 0xca4c1cf3 blk_mq_sched_mark_restart_hctx +EXPORT_SYMBOL_GPL vmlinux 0xca61ec5e gpiod_get_raw_array_value +EXPORT_SYMBOL_GPL vmlinux 0xca67cbee phy_set_mode_ext +EXPORT_SYMBOL_GPL vmlinux 0xca686860 crypto_inst_setname +EXPORT_SYMBOL_GPL vmlinux 0xca7d8764 kthread_freezable_should_stop +EXPORT_SYMBOL_GPL vmlinux 0xca7e02a8 dma_buf_begin_cpu_access +EXPORT_SYMBOL_GPL vmlinux 0xca83219c pinctrl_find_and_add_gpio_range +EXPORT_SYMBOL_GPL vmlinux 0xca939fa0 cpufreq_driver_fast_switch +EXPORT_SYMBOL_GPL vmlinux 0xca94bf41 btree_last +EXPORT_SYMBOL_GPL vmlinux 0xca9a1d5e ring_buffer_free +EXPORT_SYMBOL_GPL vmlinux 0xcaa6ea29 blkdev_read_iter +EXPORT_SYMBOL_GPL vmlinux 0xcaa9fe2c firmware_request_platform +EXPORT_SYMBOL_GPL vmlinux 0xcab6d4d6 tps65912_device_exit +EXPORT_SYMBOL_GPL vmlinux 0xcabe04de cpuidle_resume_and_unlock +EXPORT_SYMBOL_GPL vmlinux 0xcac81d6c arizona_request_irq +EXPORT_SYMBOL_GPL vmlinux 0xcac855ad tcp_enter_memory_pressure +EXPORT_SYMBOL_GPL vmlinux 0xcacde003 devlink_dpipe_action_put +EXPORT_SYMBOL_GPL vmlinux 0xcadab7df blkg_rwstat_exit +EXPORT_SYMBOL_GPL vmlinux 0xcaf54039 dm_suspended +EXPORT_SYMBOL_GPL vmlinux 0xcb093873 udp6_lib_lookup +EXPORT_SYMBOL_GPL vmlinux 0xcb0bb61b led_classdev_resume +EXPORT_SYMBOL_GPL vmlinux 0xcb15eee9 sdhci_pci_get_data +EXPORT_SYMBOL_GPL vmlinux 0xcb2bfe2b nvmem_register_notifier +EXPORT_SYMBOL_GPL vmlinux 0xcb34ccb9 ata_sas_sync_probe +EXPORT_SYMBOL_GPL vmlinux 0xcb418b85 __tracepoint_attach_device_to_domain +EXPORT_SYMBOL_GPL vmlinux 0xcb42e147 of_clk_hw_onecell_get +EXPORT_SYMBOL_GPL vmlinux 0xcb535924 vfs_setlease +EXPORT_SYMBOL_GPL vmlinux 0xcb5a258e rtm_getroute_parse_ip_proto +EXPORT_SYMBOL_GPL vmlinux 0xcb676992 serdev_device_set_parity +EXPORT_SYMBOL_GPL vmlinux 0xcb7ff09b devlink_dpipe_table_unregister +EXPORT_SYMBOL_GPL vmlinux 0xcb8d750e dev_pm_opp_set_clkname +EXPORT_SYMBOL_GPL vmlinux 0xcb965b3b perf_get_aux +EXPORT_SYMBOL_GPL vmlinux 0xcb9f7e9c fib_rules_unregister +EXPORT_SYMBOL_GPL vmlinux 0xcba17ded tty_ldisc_receive_buf +EXPORT_SYMBOL_GPL vmlinux 0xcbb76284 fuse_dev_install +EXPORT_SYMBOL_GPL vmlinux 0xcbbff6e8 crypto_alloc_base +EXPORT_SYMBOL_GPL vmlinux 0xcbd0c0b5 inet_csk_route_req +EXPORT_SYMBOL_GPL vmlinux 0xcbe56bc2 zs_get_total_pages +EXPORT_SYMBOL_GPL vmlinux 0xcbe86ad5 security_path_link +EXPORT_SYMBOL_GPL vmlinux 0xcbea3d9f gen10g_config_aneg +EXPORT_SYMBOL_GPL vmlinux 0xcc0d097b cpuidle_register +EXPORT_SYMBOL_GPL vmlinux 0xcc0f1009 power_supply_notifier +EXPORT_SYMBOL_GPL vmlinux 0xcc1be7a0 xfrm_output +EXPORT_SYMBOL_GPL vmlinux 0xcc20de18 gpiod_to_chip +EXPORT_SYMBOL_GPL vmlinux 0xcc25798c vc_scrolldelta_helper +EXPORT_SYMBOL_GPL vmlinux 0xcc2dbfd8 irq_domain_check_msi_remap +EXPORT_SYMBOL_GPL vmlinux 0xcc2e3526 dst_cache_get_ip4 +EXPORT_SYMBOL_GPL vmlinux 0xcc3984f3 rio_mport_write_config_16 +EXPORT_SYMBOL_GPL vmlinux 0xcc39c03e nvmem_unregister +EXPORT_SYMBOL_GPL vmlinux 0xcc3edd8f eeh_pe_state_mark +EXPORT_SYMBOL_GPL vmlinux 0xcc3f9746 strp_done +EXPORT_SYMBOL_GPL vmlinux 0xcc5a0014 tc3589x_reg_write +EXPORT_SYMBOL_GPL vmlinux 0xcc5da6b7 crypto_stats_rng_generate +EXPORT_SYMBOL_GPL vmlinux 0xcc5eb573 thermal_zone_get_slope +EXPORT_SYMBOL_GPL vmlinux 0xcc6857f3 clean_acked_data_enable +EXPORT_SYMBOL_GPL vmlinux 0xcc6ebdce iommu_sva_unbind_gpasid +EXPORT_SYMBOL_GPL vmlinux 0xcc72542d device_remove_bin_file +EXPORT_SYMBOL_GPL vmlinux 0xcc757d6b perf_pmu_migrate_context +EXPORT_SYMBOL_GPL vmlinux 0xcc765276 list_lru_walk_node +EXPORT_SYMBOL_GPL vmlinux 0xcc88e4d7 lp8788_read_byte +EXPORT_SYMBOL_GPL vmlinux 0xcc8ff820 regulator_set_load +EXPORT_SYMBOL_GPL vmlinux 0xcc9268fc hwpoison_filter_enable +EXPORT_SYMBOL_GPL vmlinux 0xcc935375 walk_iomem_res_desc +EXPORT_SYMBOL_GPL vmlinux 0xcca778b7 dma_async_device_channel_unregister +EXPORT_SYMBOL_GPL vmlinux 0xccad0f1c xfrm_local_error +EXPORT_SYMBOL_GPL vmlinux 0xccc3d884 sock_zerocopy_put_abort +EXPORT_SYMBOL_GPL vmlinux 0xcccfb2fa sata_deb_timing_hotplug +EXPORT_SYMBOL_GPL vmlinux 0xccd86806 ata_id_string +EXPORT_SYMBOL_GPL vmlinux 0xcce278f1 dw_pcie_upconfig_setup +EXPORT_SYMBOL_GPL vmlinux 0xccf52bc9 sfp_upstream_start +EXPORT_SYMBOL_GPL vmlinux 0xcd08789d usb_match_one_id +EXPORT_SYMBOL_GPL vmlinux 0xcd1d79b7 gpiod_get_array +EXPORT_SYMBOL_GPL vmlinux 0xcd24e146 hash_digest_size +EXPORT_SYMBOL_GPL vmlinux 0xcd29b1e0 md_do_sync +EXPORT_SYMBOL_GPL vmlinux 0xcd340b79 dw_pcie_find_ext_capability +EXPORT_SYMBOL_GPL vmlinux 0xcd4e96a0 get_task_pid +EXPORT_SYMBOL_GPL vmlinux 0xcd564312 perf_event_refresh +EXPORT_SYMBOL_GPL vmlinux 0xcd5d0500 devlink_trap_policers_register +EXPORT_SYMBOL_GPL vmlinux 0xcd5e3575 of_property_read_variable_u64_array +EXPORT_SYMBOL_GPL vmlinux 0xcd617782 devlink_params_publish +EXPORT_SYMBOL_GPL vmlinux 0xcd6f2dc9 nf_log_buf_add +EXPORT_SYMBOL_GPL vmlinux 0xcd7250b5 debugfs_create_file_size +EXPORT_SYMBOL_GPL vmlinux 0xcd7608a2 of_irq_parse_raw +EXPORT_SYMBOL_GPL vmlinux 0xcd7c45a3 tpm1_do_selftest +EXPORT_SYMBOL_GPL vmlinux 0xcd81432c sched_trace_cfs_rq_avg +EXPORT_SYMBOL_GPL vmlinux 0xcd91b127 system_highpri_wq +EXPORT_SYMBOL_GPL vmlinux 0xcd974f00 rcu_all_qs +EXPORT_SYMBOL_GPL vmlinux 0xcd9cd2ff wakeme_after_rcu +EXPORT_SYMBOL_GPL vmlinux 0xcdb6adcc ras_userspace_consumers +EXPORT_SYMBOL_GPL vmlinux 0xcdbe21da find_mci_by_dev +EXPORT_SYMBOL_GPL vmlinux 0xcdc5dc3d gpiod_set_raw_value_cansleep +EXPORT_SYMBOL_GPL vmlinux 0xcdca3691 nr_irqs +EXPORT_SYMBOL_GPL vmlinux 0xcdd1a841 xive_tima +EXPORT_SYMBOL_GPL vmlinux 0xcde17893 request_firmware_direct +EXPORT_SYMBOL_GPL vmlinux 0xcde65f43 tty_find_polling_driver +EXPORT_SYMBOL_GPL vmlinux 0xcdf9248b replace_page_cache_page +EXPORT_SYMBOL_GPL vmlinux 0xcdfb62ee crypto_grab_ahash +EXPORT_SYMBOL_GPL vmlinux 0xce1f2184 phy_pm_runtime_put_sync +EXPORT_SYMBOL_GPL vmlinux 0xce27ae5e pinctrl_generic_get_group_name +EXPORT_SYMBOL_GPL vmlinux 0xce360355 debugfs_read_file_bool +EXPORT_SYMBOL_GPL vmlinux 0xce4f90c7 tpm_put_ops +EXPORT_SYMBOL_GPL vmlinux 0xce5f974b pcie_bus_configure_settings +EXPORT_SYMBOL_GPL vmlinux 0xce6db656 rcu_is_watching +EXPORT_SYMBOL_GPL vmlinux 0xce78f3a9 regulator_list_voltage_table +EXPORT_SYMBOL_GPL vmlinux 0xce7ab4de of_genpd_remove_last +EXPORT_SYMBOL_GPL vmlinux 0xce8ae7f3 blk_set_pm_only +EXPORT_SYMBOL_GPL vmlinux 0xce93032b ata_host_init +EXPORT_SYMBOL_GPL vmlinux 0xceb1f126 mpi_read_raw_data +EXPORT_SYMBOL_GPL vmlinux 0xceb4b99c klist_prev +EXPORT_SYMBOL_GPL vmlinux 0xceb4c7c9 crypto_register_skcipher +EXPORT_SYMBOL_GPL vmlinux 0xcebcb11f kvmppc_inject_interrupt_hv +EXPORT_SYMBOL_GPL vmlinux 0xcecf6e1a edac_mc_del_mc +EXPORT_SYMBOL_GPL vmlinux 0xced2138c edac_device_handle_ce_count +EXPORT_SYMBOL_GPL vmlinux 0xced66c7a __skb_get_hash_symmetric +EXPORT_SYMBOL_GPL vmlinux 0xced73e63 sata_pmp_port_ops +EXPORT_SYMBOL_GPL vmlinux 0xcee1641c kgdb_unregister_nmi_console +EXPORT_SYMBOL_GPL vmlinux 0xcee79d1f tcp_cong_avoid_ai +EXPORT_SYMBOL_GPL vmlinux 0xcee88e7a of_overlay_fdt_apply +EXPORT_SYMBOL_GPL vmlinux 0xcef21162 mpc8xxx_spi_rx_buf_u32 +EXPORT_SYMBOL_GPL vmlinux 0xcf084676 pci_vfs_assigned +EXPORT_SYMBOL_GPL vmlinux 0xcf160269 fscrypt_get_symlink +EXPORT_SYMBOL_GPL vmlinux 0xcf1abf87 pwmchip_add_with_polarity +EXPORT_SYMBOL_GPL vmlinux 0xcf28f55e trace_clock_global +EXPORT_SYMBOL_GPL vmlinux 0xcf4e4538 tpm_pcr_extend +EXPORT_SYMBOL_GPL vmlinux 0xcf4f937e dw_pcie_host_init +EXPORT_SYMBOL_GPL vmlinux 0xcf54ea93 async_unregister_domain +EXPORT_SYMBOL_GPL vmlinux 0xcf58ab2f serdev_device_set_tiocm +EXPORT_SYMBOL_GPL vmlinux 0xcf5ee11b __tracepoint_neigh_update_done +EXPORT_SYMBOL_GPL vmlinux 0xcf6e4772 rio_get_device +EXPORT_SYMBOL_GPL vmlinux 0xcf882b36 irq_chip_request_resources_parent +EXPORT_SYMBOL_GPL vmlinux 0xcf8b5a34 get_hwpoison_page +EXPORT_SYMBOL_GPL vmlinux 0xcf8dcef4 i2c_new_scanned_device +EXPORT_SYMBOL_GPL vmlinux 0xcf969d58 phy_package_join +EXPORT_SYMBOL_GPL vmlinux 0xcfa4396b get_pid_task +EXPORT_SYMBOL_GPL vmlinux 0xcfa90fa8 ata_bmdma_qc_prep +EXPORT_SYMBOL_GPL vmlinux 0xcfae5c66 dev_pm_opp_free_cpufreq_table +EXPORT_SYMBOL_GPL vmlinux 0xcfc5108a devlink_fmsg_u8_pair_put +EXPORT_SYMBOL_GPL vmlinux 0xcfc7b4e4 rcu_barrier_tasks_trace +EXPORT_SYMBOL_GPL vmlinux 0xcfd66601 phy_pm_runtime_allow +EXPORT_SYMBOL_GPL vmlinux 0xcfded3c7 ip6_datagram_connect +EXPORT_SYMBOL_GPL vmlinux 0xcfecc12e irq_domain_add_simple +EXPORT_SYMBOL_GPL vmlinux 0xcfef1cf2 cpuacct_cgrp_subsys_enabled_key +EXPORT_SYMBOL_GPL vmlinux 0xcff6f1c2 stmpe_block_write +EXPORT_SYMBOL_GPL vmlinux 0xd00a1f4f devm_usb_get_phy_by_node +EXPORT_SYMBOL_GPL vmlinux 0xd0165e03 nf_nat_hook +EXPORT_SYMBOL_GPL vmlinux 0xd0205dcf sk_msg_free_partial +EXPORT_SYMBOL_GPL vmlinux 0xd03a43bd badblocks_exit +EXPORT_SYMBOL_GPL vmlinux 0xd03c930d pin_get_name +EXPORT_SYMBOL_GPL vmlinux 0xd03eaf4c schedule_hrtimeout_range +EXPORT_SYMBOL_GPL vmlinux 0xd0565ee4 power_supply_class +EXPORT_SYMBOL_GPL vmlinux 0xd05aba8e call_srcu +EXPORT_SYMBOL_GPL vmlinux 0xd05c3581 bdi_dev_name +EXPORT_SYMBOL_GPL vmlinux 0xd05d6699 fuse_kill_sb_anon +EXPORT_SYMBOL_GPL vmlinux 0xd06524ba raw_notifier_chain_unregister +EXPORT_SYMBOL_GPL vmlinux 0xd067d3c5 system_freezable_power_efficient_wq +EXPORT_SYMBOL_GPL vmlinux 0xd087b176 tcp_twsk_unique +EXPORT_SYMBOL_GPL vmlinux 0xd08af968 tty_port_register_device_attr_serdev +EXPORT_SYMBOL_GPL vmlinux 0xd09d6e47 rio_mport_write_config_8 +EXPORT_SYMBOL_GPL vmlinux 0xd0ae872a devm_kmalloc +EXPORT_SYMBOL_GPL vmlinux 0xd0bea361 irq_set_affinity_hint +EXPORT_SYMBOL_GPL vmlinux 0xd0c05159 emergency_restart +EXPORT_SYMBOL_GPL vmlinux 0xd0c22ef9 crypto_shash_finup +EXPORT_SYMBOL_GPL vmlinux 0xd0d745ab device_property_read_u16_array +EXPORT_SYMBOL_GPL vmlinux 0xd0db0f12 run_dax +EXPORT_SYMBOL_GPL vmlinux 0xd0eac674 of_device_modalias +EXPORT_SYMBOL_GPL vmlinux 0xd0eeaeec set_selection_kernel +EXPORT_SYMBOL_GPL vmlinux 0xd1197ef6 anon_transport_class_unregister +EXPORT_SYMBOL_GPL vmlinux 0xd129e31a of_get_display_timings +EXPORT_SYMBOL_GPL vmlinux 0xd13610ab __platform_driver_probe +EXPORT_SYMBOL_GPL vmlinux 0xd13b45c1 gpiod_get_index +EXPORT_SYMBOL_GPL vmlinux 0xd13eb606 of_reserved_mem_device_init_by_name +EXPORT_SYMBOL_GPL vmlinux 0xd15ec9d7 inet_twsk_put +EXPORT_SYMBOL_GPL vmlinux 0xd16329a0 class_create_file_ns +EXPORT_SYMBOL_GPL vmlinux 0xd164379f virtqueue_kick_prepare +EXPORT_SYMBOL_GPL vmlinux 0xd172474f mmc_switch +EXPORT_SYMBOL_GPL vmlinux 0xd188a2ac eeh_pe_set_option +EXPORT_SYMBOL_GPL vmlinux 0xd19d258c inet6_destroy_sock +EXPORT_SYMBOL_GPL vmlinux 0xd1ba8d07 tpm_default_chip +EXPORT_SYMBOL_GPL vmlinux 0xd1bc1ee7 of_reconfig_get_state_change +EXPORT_SYMBOL_GPL vmlinux 0xd1cbc23c add_timer_on +EXPORT_SYMBOL_GPL vmlinux 0xd1f2eee2 nf_logger_find_get +EXPORT_SYMBOL_GPL vmlinux 0xd2091d16 fwnode_get_parent +EXPORT_SYMBOL_GPL vmlinux 0xd20bf6ba dcookie_unregister +EXPORT_SYMBOL_GPL vmlinux 0xd216cd4b dev_pm_qos_expose_latency_limit +EXPORT_SYMBOL_GPL vmlinux 0xd217e9e6 trace_set_clr_event +EXPORT_SYMBOL_GPL vmlinux 0xd21b61bd async_schedule_node_domain +EXPORT_SYMBOL_GPL vmlinux 0xd2296121 srcu_init_notifier_head +EXPORT_SYMBOL_GPL vmlinux 0xd22a5a76 devlink_params_register +EXPORT_SYMBOL_GPL vmlinux 0xd260af0d ring_buffer_write +EXPORT_SYMBOL_GPL vmlinux 0xd2640fd4 list_lru_count_node +EXPORT_SYMBOL_GPL vmlinux 0xd26ab327 devfreq_cooling_unregister +EXPORT_SYMBOL_GPL vmlinux 0xd273b1b1 __round_jiffies_up_relative +EXPORT_SYMBOL_GPL vmlinux 0xd2794a74 hvc_instantiate +EXPORT_SYMBOL_GPL vmlinux 0xd2a472af device_connection_find +EXPORT_SYMBOL_GPL vmlinux 0xd2a81143 i2c_new_dummy_device +EXPORT_SYMBOL_GPL vmlinux 0xd2ac3e16 balloon_page_list_enqueue +EXPORT_SYMBOL_GPL vmlinux 0xd2ae0458 of_clk_del_provider +EXPORT_SYMBOL_GPL vmlinux 0xd2b10a05 ata_timing_find_mode +EXPORT_SYMBOL_GPL vmlinux 0xd2b6b8dd dma_buf_dynamic_attach +EXPORT_SYMBOL_GPL vmlinux 0xd2d8b1e9 security_inode_permission +EXPORT_SYMBOL_GPL vmlinux 0xd2dd4812 phy_basic_features +EXPORT_SYMBOL_GPL vmlinux 0xd2e9b29d security_kernel_post_read_file +EXPORT_SYMBOL_GPL vmlinux 0xd2fa1b91 ata_do_set_mode +EXPORT_SYMBOL_GPL vmlinux 0xd2fdb089 mddev_init_writes_pending +EXPORT_SYMBOL_GPL vmlinux 0xd309cb12 fib_alias_hw_flags_set +EXPORT_SYMBOL_GPL vmlinux 0xd314f5d0 ftrace_ops_set_global_filter +EXPORT_SYMBOL_GPL vmlinux 0xd3168467 devlink_dpipe_table_register +EXPORT_SYMBOL_GPL vmlinux 0xd31a2ac5 ring_buffer_oldest_event_ts +EXPORT_SYMBOL_GPL vmlinux 0xd31edd5b fscrypt_ioctl_remove_key +EXPORT_SYMBOL_GPL vmlinux 0xd327f486 sdio_retune_release +EXPORT_SYMBOL_GPL vmlinux 0xd32bca8e inet_csk_clone_lock +EXPORT_SYMBOL_GPL vmlinux 0xd339a8db spi_finalize_current_transfer +EXPORT_SYMBOL_GPL vmlinux 0xd355bd9f __clk_determine_rate +EXPORT_SYMBOL_GPL vmlinux 0xd35614fa devm_irq_alloc_generic_chip +EXPORT_SYMBOL_GPL vmlinux 0xd359c04a console_drivers +EXPORT_SYMBOL_GPL vmlinux 0xd36760ef __usb_get_extra_descriptor +EXPORT_SYMBOL_GPL vmlinux 0xd37e7650 __root_device_register +EXPORT_SYMBOL_GPL vmlinux 0xd39ce6ef pci_epc_remove_epf +EXPORT_SYMBOL_GPL vmlinux 0xd39e8406 sdio_claim_host +EXPORT_SYMBOL_GPL vmlinux 0xd39e9848 put_itimerspec64 +EXPORT_SYMBOL_GPL vmlinux 0xd3a3124c pwm_capture +EXPORT_SYMBOL_GPL vmlinux 0xd3a5e9f8 xas_pause +EXPORT_SYMBOL_GPL vmlinux 0xd3b22dbd vas_init_rx_win_attr +EXPORT_SYMBOL_GPL vmlinux 0xd3b28c01 sk_set_peek_off +EXPORT_SYMBOL_GPL vmlinux 0xd3c27ffb pci_epf_create +EXPORT_SYMBOL_GPL vmlinux 0xd3c5be7a transport_configure_device +EXPORT_SYMBOL_GPL vmlinux 0xd3c8fe5f tracing_snapshot_cond +EXPORT_SYMBOL_GPL vmlinux 0xd3e3f922 shash_no_setkey +EXPORT_SYMBOL_GPL vmlinux 0xd3ea6c2c crypto_unregister_shash +EXPORT_SYMBOL_GPL vmlinux 0xd3f1caf5 skb_clone_tx_timestamp +EXPORT_SYMBOL_GPL vmlinux 0xd3f8f3f4 page_poisoning_enabled +EXPORT_SYMBOL_GPL vmlinux 0xd4034828 system_freezable_wq +EXPORT_SYMBOL_GPL vmlinux 0xd40e955f nvdimm_name +EXPORT_SYMBOL_GPL vmlinux 0xd422fc47 gpiod_direction_output_raw +EXPORT_SYMBOL_GPL vmlinux 0xd4359deb dev_pm_qos_flags +EXPORT_SYMBOL_GPL vmlinux 0xd44a5eac kgdb_register_nmi_console +EXPORT_SYMBOL_GPL vmlinux 0xd466ab1a lwtunnel_fill_encap +EXPORT_SYMBOL_GPL vmlinux 0xd46a563f extcon_get_edev_name +EXPORT_SYMBOL_GPL vmlinux 0xd479e1aa gpiod_set_raw_value +EXPORT_SYMBOL_GPL vmlinux 0xd47e9db4 devm_thermal_add_hwmon_sysfs +EXPORT_SYMBOL_GPL vmlinux 0xd483dcde clk_multiplier_ops +EXPORT_SYMBOL_GPL vmlinux 0xd4a3b65e pnv_ocxl_spa_setup +EXPORT_SYMBOL_GPL vmlinux 0xd4b6157e devlink_health_reporter_recovery_done +EXPORT_SYMBOL_GPL vmlinux 0xd4c14632 system_unbound_wq +EXPORT_SYMBOL_GPL vmlinux 0xd4c8ed8e sbitmap_resize +EXPORT_SYMBOL_GPL vmlinux 0xd4e6d7e0 linear_range_get_value +EXPORT_SYMBOL_GPL vmlinux 0xd5067306 usb_register_dev +EXPORT_SYMBOL_GPL vmlinux 0xd5069203 pci_enable_rom +EXPORT_SYMBOL_GPL vmlinux 0xd50d2ae2 sched_trace_rq_avg_rt +EXPORT_SYMBOL_GPL vmlinux 0xd51df697 __usb_create_hcd +EXPORT_SYMBOL_GPL vmlinux 0xd52bb276 pcibios_claim_one_bus +EXPORT_SYMBOL_GPL vmlinux 0xd5301b2c linear_range_get_max_value +EXPORT_SYMBOL_GPL vmlinux 0xd54131ec regulator_get_current_limit_regmap +EXPORT_SYMBOL_GPL vmlinux 0xd55a4f2a __devm_create_dev_dax +EXPORT_SYMBOL_GPL vmlinux 0xd55ad93b iommu_group_get_iommudata +EXPORT_SYMBOL_GPL vmlinux 0xd55c30b1 sata_std_hardreset +EXPORT_SYMBOL_GPL vmlinux 0xd59a1587 linkmode_resolve_pause +EXPORT_SYMBOL_GPL vmlinux 0xd5ad2e6f mmc_send_status +EXPORT_SYMBOL_GPL vmlinux 0xd5afa49b btree_visitor +EXPORT_SYMBOL_GPL vmlinux 0xd5cc3d16 dm_bio_from_per_bio_data +EXPORT_SYMBOL_GPL vmlinux 0xd5d227f0 devm_usb_get_phy_by_phandle +EXPORT_SYMBOL_GPL vmlinux 0xd5e5253c switchdev_handle_port_obj_del +EXPORT_SYMBOL_GPL vmlinux 0xd5f724a5 debugfs_create_u8 +EXPORT_SYMBOL_GPL vmlinux 0xd5fc2755 scsi_unregister_device_handler +EXPORT_SYMBOL_GPL vmlinux 0xd62b92a4 usb_unpoison_anchored_urbs +EXPORT_SYMBOL_GPL vmlinux 0xd62fdcc7 stmpe_block_read +EXPORT_SYMBOL_GPL vmlinux 0xd64851c0 __kernel_write +EXPORT_SYMBOL_GPL vmlinux 0xd64ed259 __memcat_p +EXPORT_SYMBOL_GPL vmlinux 0xd653b126 sched_clock +EXPORT_SYMBOL_GPL vmlinux 0xd67364f7 eventfd_ctx_fdget +EXPORT_SYMBOL_GPL vmlinux 0xd679649e irq_domain_free_irqs_parent +EXPORT_SYMBOL_GPL vmlinux 0xd696d7f1 pm_clk_runtime_suspend +EXPORT_SYMBOL_GPL vmlinux 0xd6970a61 of_clk_src_onecell_get +EXPORT_SYMBOL_GPL vmlinux 0xd69be626 watchdog_unregister_device +EXPORT_SYMBOL_GPL vmlinux 0xd6a43677 opal_async_release_token +EXPORT_SYMBOL_GPL vmlinux 0xd6abdad8 regulator_enable_regmap +EXPORT_SYMBOL_GPL vmlinux 0xd6b8bfc5 dev_pm_opp_get_of_node +EXPORT_SYMBOL_GPL vmlinux 0xd6bf625a btree_init_mempool +EXPORT_SYMBOL_GPL vmlinux 0xd6cbf181 pci_epf_alloc_space +EXPORT_SYMBOL_GPL vmlinux 0xd6e6f469 tcp_orphan_count +EXPORT_SYMBOL_GPL vmlinux 0xd6e88206 transport_destroy_device +EXPORT_SYMBOL_GPL vmlinux 0xd6fa3add gpiod_set_consumer_name +EXPORT_SYMBOL_GPL vmlinux 0xd6feefa5 agp_num_entries +EXPORT_SYMBOL_GPL vmlinux 0xd70963e8 ata_dummy_port_ops +EXPORT_SYMBOL_GPL vmlinux 0xd70f08fa rio_register_scan +EXPORT_SYMBOL_GPL vmlinux 0xd712ace9 pinctrl_force_default +EXPORT_SYMBOL_GPL vmlinux 0xd715665e yield_to +EXPORT_SYMBOL_GPL vmlinux 0xd719cd70 rtnl_get_net_ns_capable +EXPORT_SYMBOL_GPL vmlinux 0xd71b312b pnv_ocxl_get_tl_cap +EXPORT_SYMBOL_GPL vmlinux 0xd7211b04 scsi_device_from_queue +EXPORT_SYMBOL_GPL vmlinux 0xd7483bd9 md_bitmap_copy_from_slot +EXPORT_SYMBOL_GPL vmlinux 0xd74a1806 iomap_seek_hole +EXPORT_SYMBOL_GPL vmlinux 0xd75167c0 nd_tbl +EXPORT_SYMBOL_GPL vmlinux 0xd75443af kvm_free_hpt_cma +EXPORT_SYMBOL_GPL vmlinux 0xd75b20aa rsa_parse_priv_key +EXPORT_SYMBOL_GPL vmlinux 0xd768e985 regulator_has_full_constraints +EXPORT_SYMBOL_GPL vmlinux 0xd76b5cac sysfs_remove_group +EXPORT_SYMBOL_GPL vmlinux 0xd76e4a35 ioremap_phb +EXPORT_SYMBOL_GPL vmlinux 0xd774957d mpi_write_to_sgl +EXPORT_SYMBOL_GPL vmlinux 0xd779fcc7 spi_get_next_queued_message +EXPORT_SYMBOL_GPL vmlinux 0xd77ba710 da903x_reads +EXPORT_SYMBOL_GPL vmlinux 0xd798c8c8 crypto_stats_skcipher_encrypt +EXPORT_SYMBOL_GPL vmlinux 0xd7a02ea2 balloon_page_enqueue +EXPORT_SYMBOL_GPL vmlinux 0xd7cc4417 sdio_release_irq +EXPORT_SYMBOL_GPL vmlinux 0xd7cc7a14 l3mdev_master_upper_ifindex_by_index_rcu +EXPORT_SYMBOL_GPL vmlinux 0xd7ce7508 irq_domain_alloc_irqs_parent +EXPORT_SYMBOL_GPL vmlinux 0xd7cea889 edac_mod_work +EXPORT_SYMBOL_GPL vmlinux 0xd7d25ba2 shmem_read_mapping_page_gfp +EXPORT_SYMBOL_GPL vmlinux 0xd7e2c427 __netif_set_xps_queue +EXPORT_SYMBOL_GPL vmlinux 0xd7ed3b4f thermal_notify_framework +EXPORT_SYMBOL_GPL vmlinux 0xd7ed8b86 find_symbol +EXPORT_SYMBOL_GPL vmlinux 0xd7fd649e bus_sort_breadthfirst +EXPORT_SYMBOL_GPL vmlinux 0xd81b87b4 serdev_device_write_wakeup +EXPORT_SYMBOL_GPL vmlinux 0xd8428f85 mmc_pwrseq_unregister +EXPORT_SYMBOL_GPL vmlinux 0xd84d35bd dax_read_lock +EXPORT_SYMBOL_GPL vmlinux 0xd8513192 cpufreq_cooling_register +EXPORT_SYMBOL_GPL vmlinux 0xd85339a1 regulator_is_enabled_regmap +EXPORT_SYMBOL_GPL vmlinux 0xd8665b45 vas_rx_win_open +EXPORT_SYMBOL_GPL vmlinux 0xd870d3a1 nvdimm_in_overwrite +EXPORT_SYMBOL_GPL vmlinux 0xd875b00b device_get_named_child_node +EXPORT_SYMBOL_GPL vmlinux 0xd87fc0a0 usb_amd_prefetch_quirk +EXPORT_SYMBOL_GPL vmlinux 0xd882b1fd regulator_map_voltage_iterate +EXPORT_SYMBOL_GPL vmlinux 0xd88d2afa pci_epc_stop +EXPORT_SYMBOL_GPL vmlinux 0xd88f1a0c nvdimm_setup_pfn +EXPORT_SYMBOL_GPL vmlinux 0xd8942643 ata_pci_shutdown_one +EXPORT_SYMBOL_GPL vmlinux 0xd8988e7b tty_register_device_attr +EXPORT_SYMBOL_GPL vmlinux 0xd899b573 devm_thermal_of_cooling_device_register +EXPORT_SYMBOL_GPL vmlinux 0xd8a98ce3 cpci_hp_register_controller +EXPORT_SYMBOL_GPL vmlinux 0xd8b16a40 clk_fixed_rate_ops +EXPORT_SYMBOL_GPL vmlinux 0xd8c0731d ata_sff_qc_issue +EXPORT_SYMBOL_GPL vmlinux 0xd8c64adc pinctrl_dev_get_drvdata +EXPORT_SYMBOL_GPL vmlinux 0xd8d95edd phy_check_downshift +EXPORT_SYMBOL_GPL vmlinux 0xd90f808b ata_scsi_ioctl +EXPORT_SYMBOL_GPL vmlinux 0xd91a6324 tps6586x_update +EXPORT_SYMBOL_GPL vmlinux 0xd91d4f4e pm_runtime_no_callbacks +EXPORT_SYMBOL_GPL vmlinux 0xd925be1e usb_get_current_frame_number +EXPORT_SYMBOL_GPL vmlinux 0xd925c8f4 genphy_c45_config_aneg +EXPORT_SYMBOL_GPL vmlinux 0xd941cf54 trace_array_printk +EXPORT_SYMBOL_GPL vmlinux 0xd94c6d4d sdio_memcpy_toio +EXPORT_SYMBOL_GPL vmlinux 0xd95408e4 nf_queue_nf_hook_drop +EXPORT_SYMBOL_GPL vmlinux 0xd96babb4 interval_tree_iter_next +EXPORT_SYMBOL_GPL vmlinux 0xd9736fdc devres_find +EXPORT_SYMBOL_GPL vmlinux 0xd97c653a irq_domain_associate +EXPORT_SYMBOL_GPL vmlinux 0xd98df72d crypto_register_aead +EXPORT_SYMBOL_GPL vmlinux 0xd99dc7b9 add_disk_randomness +EXPORT_SYMBOL_GPL vmlinux 0xd9b35d9a screen_glyph_unicode +EXPORT_SYMBOL_GPL vmlinux 0xd9bd2a03 cpuidle_disable_device +EXPORT_SYMBOL_GPL vmlinux 0xd9bffda2 devm_phy_optional_get +EXPORT_SYMBOL_GPL vmlinux 0xd9c1a31f crypto_stats_aead_decrypt +EXPORT_SYMBOL_GPL vmlinux 0xd9e05f9d fib6_rule_default +EXPORT_SYMBOL_GPL vmlinux 0xd9e24457 ring_buffer_peek +EXPORT_SYMBOL_GPL vmlinux 0xd9f54d18 of_phy_put +EXPORT_SYMBOL_GPL vmlinux 0xd9fad3dd devm_add_action +EXPORT_SYMBOL_GPL vmlinux 0xd9ff2172 ezx_pcap_write +EXPORT_SYMBOL_GPL vmlinux 0xda05ce24 pinmux_generic_get_function_name +EXPORT_SYMBOL_GPL vmlinux 0xda320d31 sfp_module_start +EXPORT_SYMBOL_GPL vmlinux 0xda447f96 __tracepoint_io_page_fault +EXPORT_SYMBOL_GPL vmlinux 0xda484429 usb_mon_register +EXPORT_SYMBOL_GPL vmlinux 0xda50fd9d devm_pinctrl_register +EXPORT_SYMBOL_GPL vmlinux 0xda5ab4e1 devm_regmap_field_free +EXPORT_SYMBOL_GPL vmlinux 0xda7d7618 pinconf_generic_parse_dt_config +EXPORT_SYMBOL_GPL vmlinux 0xda80e5fb crypto_alloc_tfm +EXPORT_SYMBOL_GPL vmlinux 0xda8e1302 software_node_find_by_name +EXPORT_SYMBOL_GPL vmlinux 0xdaa08f9f blkg_conf_finish +EXPORT_SYMBOL_GPL vmlinux 0xdaa85b39 alarm_forward_now +EXPORT_SYMBOL_GPL vmlinux 0xdab5a1eb interval_tree_insert +EXPORT_SYMBOL_GPL vmlinux 0xdac32cec skb_zerocopy_iter_stream +EXPORT_SYMBOL_GPL vmlinux 0xdac6aee7 device_show_int +EXPORT_SYMBOL_GPL vmlinux 0xdade3004 mpc8xxx_spi_probe +EXPORT_SYMBOL_GPL vmlinux 0xdaf4dfb3 fb_mode_option +EXPORT_SYMBOL_GPL vmlinux 0xdaf5c16e __cookie_v4_check +EXPORT_SYMBOL_GPL vmlinux 0xdaf8d4eb platform_get_resource_byname +EXPORT_SYMBOL_GPL vmlinux 0xdafccbee regmap_get_max_register +EXPORT_SYMBOL_GPL vmlinux 0xdafcdc3a ktime_get_snapshot +EXPORT_SYMBOL_GPL vmlinux 0xdb14eb56 regcache_mark_dirty +EXPORT_SYMBOL_GPL vmlinux 0xdb25da3e irq_work_queue +EXPORT_SYMBOL_GPL vmlinux 0xdb2908a4 devlink_port_param_driverinit_value_set +EXPORT_SYMBOL_GPL vmlinux 0xdb36a535 vfs_setxattr +EXPORT_SYMBOL_GPL vmlinux 0xdb3794ce emulate_vsx_load +EXPORT_SYMBOL_GPL vmlinux 0xdb3f25b5 __irq_alloc_descs +EXPORT_SYMBOL_GPL vmlinux 0xdb4473c8 fuse_dev_free +EXPORT_SYMBOL_GPL vmlinux 0xdb53004a sk_msg_alloc +EXPORT_SYMBOL_GPL vmlinux 0xdb53af61 init_user_ns +EXPORT_SYMBOL_GPL vmlinux 0xdb5b7333 __fscrypt_prepare_link +EXPORT_SYMBOL_GPL vmlinux 0xdb5fcf10 fwnode_create_software_node +EXPORT_SYMBOL_GPL vmlinux 0xdb61857d srcu_notifier_chain_unregister +EXPORT_SYMBOL_GPL vmlinux 0xdb8a1b3f usermodehelper_read_trylock +EXPORT_SYMBOL_GPL vmlinux 0xdb92b5eb get_dev_pagemap +EXPORT_SYMBOL_GPL vmlinux 0xdbc2e744 devm_kstrdup +EXPORT_SYMBOL_GPL vmlinux 0xdbc72ac2 xive_native_alloc_irq_on_chip +EXPORT_SYMBOL_GPL vmlinux 0xdbe2cf3d xfrm_dev_state_add +EXPORT_SYMBOL_GPL vmlinux 0xdbe8cf0b device_link_remove +EXPORT_SYMBOL_GPL vmlinux 0xdbf7cb70 mpi_get_nbits +EXPORT_SYMBOL_GPL vmlinux 0xdc092c6e hwpoison_filter +EXPORT_SYMBOL_GPL vmlinux 0xdc0b2b5b opal_flash_write +EXPORT_SYMBOL_GPL vmlinux 0xdc0e3a76 crypto_alloc_rng +EXPORT_SYMBOL_GPL vmlinux 0xdc0f1d16 crypto_register_algs +EXPORT_SYMBOL_GPL vmlinux 0xdc203eea dev_pm_opp_detach_genpd +EXPORT_SYMBOL_GPL vmlinux 0xdc34a927 __tracepoint_xdp_exception +EXPORT_SYMBOL_GPL vmlinux 0xdc45a5db edac_stop_work +EXPORT_SYMBOL_GPL vmlinux 0xdc4ad1dc apply_to_page_range +EXPORT_SYMBOL_GPL vmlinux 0xdc4ba1d4 ata_pci_remove_one +EXPORT_SYMBOL_GPL vmlinux 0xdc4c0f65 wm8997_patch +EXPORT_SYMBOL_GPL vmlinux 0xdc4ea462 unregister_pernet_device +EXPORT_SYMBOL_GPL vmlinux 0xdc531b5e blk_mq_virtio_map_queues +EXPORT_SYMBOL_GPL vmlinux 0xdc5391be serial8250_do_set_ldisc +EXPORT_SYMBOL_GPL vmlinux 0xdc6596fa irq_set_parent +EXPORT_SYMBOL_GPL vmlinux 0xdc825d6c usb_amd_quirk_pll_disable +EXPORT_SYMBOL_GPL vmlinux 0xdc950cc3 __regmap_init_i2c +EXPORT_SYMBOL_GPL vmlinux 0xdc97af2e syscore_suspend +EXPORT_SYMBOL_GPL vmlinux 0xdc9950e7 icc_link_create +EXPORT_SYMBOL_GPL vmlinux 0xdc9fa232 raw_notifier_chain_register +EXPORT_SYMBOL_GPL vmlinux 0xdca70c6e gpiochip_irq_map +EXPORT_SYMBOL_GPL vmlinux 0xdcc67227 xdp_attachment_setup +EXPORT_SYMBOL_GPL vmlinux 0xdccec5ce da903x_clr_bits +EXPORT_SYMBOL_GPL vmlinux 0xdce64657 device_dma_supported +EXPORT_SYMBOL_GPL vmlinux 0xdcece47a pm_genpd_add_subdomain +EXPORT_SYMBOL_GPL vmlinux 0xdcffc4fb netlink_has_listeners +EXPORT_SYMBOL_GPL vmlinux 0xdd021f21 usb_set_device_state +EXPORT_SYMBOL_GPL vmlinux 0xdd060504 kernel_read_file_from_fd +EXPORT_SYMBOL_GPL vmlinux 0xdd0762df set_worker_desc +EXPORT_SYMBOL_GPL vmlinux 0xdd161ae1 tracing_cond_snapshot_data +EXPORT_SYMBOL_GPL vmlinux 0xdd29400e of_thermal_is_trip_valid +EXPORT_SYMBOL_GPL vmlinux 0xdd2db446 mmc_get_ext_csd +EXPORT_SYMBOL_GPL vmlinux 0xdd391eff profile_event_unregister +EXPORT_SYMBOL_GPL vmlinux 0xdd4dd151 xfrm_audit_policy_add +EXPORT_SYMBOL_GPL vmlinux 0xdd626ee3 fuse_len_args +EXPORT_SYMBOL_GPL vmlinux 0xdd6d6c6c devm_of_icc_get +EXPORT_SYMBOL_GPL vmlinux 0xdd85fa85 led_classdev_suspend +EXPORT_SYMBOL_GPL vmlinux 0xdd8e9a2b mmu_notifier_register +EXPORT_SYMBOL_GPL vmlinux 0xdd94b810 of_clk_src_simple_get +EXPORT_SYMBOL_GPL vmlinux 0xddacc574 dst_cache_get_ip6 +EXPORT_SYMBOL_GPL vmlinux 0xddbeeecc pci_lock_rescan_remove +EXPORT_SYMBOL_GPL vmlinux 0xddc365c5 pm_generic_restore_early +EXPORT_SYMBOL_GPL vmlinux 0xdded6672 da903x_write +EXPORT_SYMBOL_GPL vmlinux 0xde0a431c edac_pci_alloc_ctl_info +EXPORT_SYMBOL_GPL vmlinux 0xde1068ae devlink_param_driverinit_value_set +EXPORT_SYMBOL_GPL vmlinux 0xde130d28 ehci_reset +EXPORT_SYMBOL_GPL vmlinux 0xde1650a1 blk_mq_unfreeze_queue +EXPORT_SYMBOL_GPL vmlinux 0xde2631b6 of_dma_simple_xlate +EXPORT_SYMBOL_GPL vmlinux 0xde3cb365 thermal_zone_device_register +EXPORT_SYMBOL_GPL vmlinux 0xde6accaf devlink_port_type_ib_set +EXPORT_SYMBOL_GPL vmlinux 0xde6f1851 TSS_checkhmac1 +EXPORT_SYMBOL_GPL vmlinux 0xde742efc crypto_cipher_encrypt_one +EXPORT_SYMBOL_GPL vmlinux 0xde75ed73 memalloc_socks_key +EXPORT_SYMBOL_GPL vmlinux 0xde79fc85 ip6_local_out +EXPORT_SYMBOL_GPL vmlinux 0xde8569dc ata_scsi_slave_config +EXPORT_SYMBOL_GPL vmlinux 0xde901311 nvm_set_chunk_meta +EXPORT_SYMBOL_GPL vmlinux 0xde972256 regmap_get_val_bytes +EXPORT_SYMBOL_GPL vmlinux 0xde999c62 devfreq_event_get_edev_count +EXPORT_SYMBOL_GPL vmlinux 0xdea9919b kmsg_dump_unregister +EXPORT_SYMBOL_GPL vmlinux 0xdeb4651f crypto_shash_tfm_digest +EXPORT_SYMBOL_GPL vmlinux 0xdedbcbb3 usb_get_dev +EXPORT_SYMBOL_GPL vmlinux 0xdee38120 wm831x_reg_read +EXPORT_SYMBOL_GPL vmlinux 0xdeff025f debugfs_rename +EXPORT_SYMBOL_GPL vmlinux 0xdeffa0a7 edac_raw_mc_handle_error +EXPORT_SYMBOL_GPL vmlinux 0xdf02c579 nvdimm_has_flush +EXPORT_SYMBOL_GPL vmlinux 0xdf0f75c6 eventfd_signal +EXPORT_SYMBOL_GPL vmlinux 0xdf1e9cfa btree_destroy +EXPORT_SYMBOL_GPL vmlinux 0xdf28ec20 do_tcp_sendpages +EXPORT_SYMBOL_GPL vmlinux 0xdf3dc4f5 pm_genpd_remove_subdomain +EXPORT_SYMBOL_GPL vmlinux 0xdf415a11 get_net_ns_by_fd +EXPORT_SYMBOL_GPL vmlinux 0xdf48fa63 usb_hcd_platform_shutdown +EXPORT_SYMBOL_GPL vmlinux 0xdf4ba9ca pm_runtime_enable +EXPORT_SYMBOL_GPL vmlinux 0xdf53d35e led_blink_set_oneshot +EXPORT_SYMBOL_GPL vmlinux 0xdf5fdf02 kthread_use_mm +EXPORT_SYMBOL_GPL vmlinux 0xdf6282e4 sk_free_unlock_clone +EXPORT_SYMBOL_GPL vmlinux 0xdf6844d0 inet_hash +EXPORT_SYMBOL_GPL vmlinux 0xdf696cd4 blk_queue_required_elevator_features +EXPORT_SYMBOL_GPL vmlinux 0xdf6aa011 debugfs_create_dir +EXPORT_SYMBOL_GPL vmlinux 0xdf8d9167 fat_fill_super +EXPORT_SYMBOL_GPL vmlinux 0xdf9208c0 alloc_workqueue +EXPORT_SYMBOL_GPL vmlinux 0xdf9f29d6 sdio_writeb +EXPORT_SYMBOL_GPL vmlinux 0xdfacf71e nvmem_device_get +EXPORT_SYMBOL_GPL vmlinux 0xdfb2e374 dmaengine_desc_attach_metadata +EXPORT_SYMBOL_GPL vmlinux 0xdfc60b43 blk_mq_debugfs_rq_show +EXPORT_SYMBOL_GPL vmlinux 0xdfcb6c90 mctrl_gpio_set +EXPORT_SYMBOL_GPL vmlinux 0xdfd104ab bpf_prog_inc_not_zero +EXPORT_SYMBOL_GPL vmlinux 0xdfdad1f9 usb_phy_roothub_resume +EXPORT_SYMBOL_GPL vmlinux 0xdff568cb klist_iter_init +EXPORT_SYMBOL_GPL vmlinux 0xdffc2987 ping_init_sock +EXPORT_SYMBOL_GPL vmlinux 0xe00593f6 genphy_c45_an_disable_aneg +EXPORT_SYMBOL_GPL vmlinux 0xe00ba953 perf_event_release_kernel +EXPORT_SYMBOL_GPL vmlinux 0xe0168e37 ata_dev_next +EXPORT_SYMBOL_GPL vmlinux 0xe016cb5d __kthread_should_park +EXPORT_SYMBOL_GPL vmlinux 0xe049f191 devm_pwm_put +EXPORT_SYMBOL_GPL vmlinux 0xe04a8d1a devm_of_phy_get_by_index +EXPORT_SYMBOL_GPL vmlinux 0xe04e23ac hwmon_device_register +EXPORT_SYMBOL_GPL vmlinux 0xe04f7008 strp_unpause +EXPORT_SYMBOL_GPL vmlinux 0xe05e2f85 nexthop_free_rcu +EXPORT_SYMBOL_GPL vmlinux 0xe06cdb7d crypto_register_kpp +EXPORT_SYMBOL_GPL vmlinux 0xe071d05d zs_pool_stats +EXPORT_SYMBOL_GPL vmlinux 0xe079a91b __vfs_setxattr_locked +EXPORT_SYMBOL_GPL vmlinux 0xe089cfcc agp_memory_reserved +EXPORT_SYMBOL_GPL vmlinux 0xe08bc8ff ata_platform_remove_one +EXPORT_SYMBOL_GPL vmlinux 0xe099c0ae gpiochip_irqchip_add_domain +EXPORT_SYMBOL_GPL vmlinux 0xe09b0f71 of_clk_hw_simple_get +EXPORT_SYMBOL_GPL vmlinux 0xe0a3f29f dm_internal_suspend_fast +EXPORT_SYMBOL_GPL vmlinux 0xe0b1c103 clk_set_max_rate +EXPORT_SYMBOL_GPL vmlinux 0xe0b5279b __pci_epf_register_driver +EXPORT_SYMBOL_GPL vmlinux 0xe0cc050e blkg_lookup_slowpath +EXPORT_SYMBOL_GPL vmlinux 0xe0d8709a regulator_map_voltage_pickable_linear_range +EXPORT_SYMBOL_GPL vmlinux 0xe0f53e28 blk_lld_busy +EXPORT_SYMBOL_GPL vmlinux 0xe0f74853 ping_rcv +EXPORT_SYMBOL_GPL vmlinux 0xe108d302 trace_seq_printf +EXPORT_SYMBOL_GPL vmlinux 0xe1126039 serdev_device_write_room +EXPORT_SYMBOL_GPL vmlinux 0xe130c850 freezer_cgrp_subsys_enabled_key +EXPORT_SYMBOL_GPL vmlinux 0xe152969a debugfs_create_regset32 +EXPORT_SYMBOL_GPL vmlinux 0xe157ed8f idr_alloc_u32 +EXPORT_SYMBOL_GPL vmlinux 0xe161b07b trace_seq_putc +EXPORT_SYMBOL_GPL vmlinux 0xe1680ebe blk_req_zone_write_trylock +EXPORT_SYMBOL_GPL vmlinux 0xe16a2510 pci_host_probe +EXPORT_SYMBOL_GPL vmlinux 0xe174e9a4 rdma_cgrp_subsys_on_dfl_key +EXPORT_SYMBOL_GPL vmlinux 0xe1775ee7 dm_get_reserved_bio_based_ios +EXPORT_SYMBOL_GPL vmlinux 0xe1798b36 register_wide_hw_breakpoint +EXPORT_SYMBOL_GPL vmlinux 0xe1a595e2 dev_attr_em_message +EXPORT_SYMBOL_GPL vmlinux 0xe1bd6c99 rio_init_mports +EXPORT_SYMBOL_GPL vmlinux 0xe1c0b8dc perf_aux_output_begin +EXPORT_SYMBOL_GPL vmlinux 0xe1c3b340 governor_sysfs_ops +EXPORT_SYMBOL_GPL vmlinux 0xe1c63523 blk_ksm_get_slot_idx +EXPORT_SYMBOL_GPL vmlinux 0xe1d24c3b hrtimer_sleeper_start_expires +EXPORT_SYMBOL_GPL vmlinux 0xe1d4005c regcache_cache_only +EXPORT_SYMBOL_GPL vmlinux 0xe2049878 __clocksource_register_scale +EXPORT_SYMBOL_GPL vmlinux 0xe20baeb3 freq_qos_add_request +EXPORT_SYMBOL_GPL vmlinux 0xe20fbdd6 tpm_calc_ordinal_duration +EXPORT_SYMBOL_GPL vmlinux 0xe2214603 dev_pm_opp_get_max_transition_latency +EXPORT_SYMBOL_GPL vmlinux 0xe2308956 dev_pm_opp_put_prop_name +EXPORT_SYMBOL_GPL vmlinux 0xe233762a input_event_from_user +EXPORT_SYMBOL_GPL vmlinux 0xe24009a2 fsnotify_find_mark +EXPORT_SYMBOL_GPL vmlinux 0xe2402213 switchdev_handle_port_obj_add +EXPORT_SYMBOL_GPL vmlinux 0xe25b9d6b task_cls_state +EXPORT_SYMBOL_GPL vmlinux 0xe263d74c pinctrl_generic_add_group +EXPORT_SYMBOL_GPL vmlinux 0xe287683a serial8250_do_shutdown +EXPORT_SYMBOL_GPL vmlinux 0xe29026e5 dm_start_time_ns_from_clone +EXPORT_SYMBOL_GPL vmlinux 0xe2931846 skb_gso_validate_network_len +EXPORT_SYMBOL_GPL vmlinux 0xe2aa0dd5 ata_sff_dev_select +EXPORT_SYMBOL_GPL vmlinux 0xe2ae82eb mmu_notifier_range_update_to_read_only +EXPORT_SYMBOL_GPL vmlinux 0xe2b3207a unregister_switchdev_notifier +EXPORT_SYMBOL_GPL vmlinux 0xe2b8e027 blk_mq_start_stopped_hw_queue +EXPORT_SYMBOL_GPL vmlinux 0xe2b98332 __platform_create_bundle +EXPORT_SYMBOL_GPL vmlinux 0xe2cd57af sdio_retune_hold_now +EXPORT_SYMBOL_GPL vmlinux 0xe2ce2b4d evm_set_key +EXPORT_SYMBOL_GPL vmlinux 0xe2dd65a6 pm_generic_freeze_noirq +EXPORT_SYMBOL_GPL vmlinux 0xe2ddecbe fwnode_count_parents +EXPORT_SYMBOL_GPL vmlinux 0xe2f28a53 sdio_writel +EXPORT_SYMBOL_GPL vmlinux 0xe3043ff9 request_any_context_irq +EXPORT_SYMBOL_GPL vmlinux 0xe31af757 regulator_set_voltage_time_sel +EXPORT_SYMBOL_GPL vmlinux 0xe323f621 md_find_rdev_nr_rcu +EXPORT_SYMBOL_GPL vmlinux 0xe3299c07 irq_get_domain_generic_chip +EXPORT_SYMBOL_GPL vmlinux 0xe34d90d9 dst_cache_get +EXPORT_SYMBOL_GPL vmlinux 0xe3533460 crypto_unregister_ahashes +EXPORT_SYMBOL_GPL vmlinux 0xe3624eec raw_seq_next +EXPORT_SYMBOL_GPL vmlinux 0xe36af055 dev_pm_opp_find_level_exact +EXPORT_SYMBOL_GPL vmlinux 0xe37e8e9f device_show_bool +EXPORT_SYMBOL_GPL vmlinux 0xe3868973 irq_find_matching_fwspec +EXPORT_SYMBOL_GPL vmlinux 0xe38b81cc tc3589x_block_read +EXPORT_SYMBOL_GPL vmlinux 0xe397caf5 seq_buf_printf +EXPORT_SYMBOL_GPL vmlinux 0xe39d0794 usb_phy_roothub_exit +EXPORT_SYMBOL_GPL vmlinux 0xe3aeaa03 freq_qos_add_notifier +EXPORT_SYMBOL_GPL vmlinux 0xe3b09712 kprobe_event_delete +EXPORT_SYMBOL_GPL vmlinux 0xe3ba8700 tcp_is_ulp_esp +EXPORT_SYMBOL_GPL vmlinux 0xe3d348b5 pci_pri_supported +EXPORT_SYMBOL_GPL vmlinux 0xe3ed80d2 pci_generic_config_write +EXPORT_SYMBOL_GPL vmlinux 0xe3f2f921 of_phandle_iterator_next +EXPORT_SYMBOL_GPL vmlinux 0xe4089576 kvmppc_set_msr_hv +EXPORT_SYMBOL_GPL vmlinux 0xe40bb23e devlink_health_reporter_priv +EXPORT_SYMBOL_GPL vmlinux 0xe4309905 syscore_resume +EXPORT_SYMBOL_GPL vmlinux 0xe4549511 component_unbind_all +EXPORT_SYMBOL_GPL vmlinux 0xe46b571a aead_geniv_alloc +EXPORT_SYMBOL_GPL vmlinux 0xe48364db __tracepoint_cpu_idle +EXPORT_SYMBOL_GPL vmlinux 0xe4971ade tracing_alloc_snapshot +EXPORT_SYMBOL_GPL vmlinux 0xe4a40aac pcibios_unmap_io_space +EXPORT_SYMBOL_GPL vmlinux 0xe4aac9ee driver_find_device +EXPORT_SYMBOL_GPL vmlinux 0xe4b064f9 pcie_link_speed +EXPORT_SYMBOL_GPL vmlinux 0xe4b818c3 phy_speed_to_str +EXPORT_SYMBOL_GPL vmlinux 0xe4c2c66c rtc_ktime_to_tm +EXPORT_SYMBOL_GPL vmlinux 0xe4e46f17 rio_unregister_driver +EXPORT_SYMBOL_GPL vmlinux 0xe4e48b12 swphy_validate_state +EXPORT_SYMBOL_GPL vmlinux 0xe4ea17e8 sysfs_remove_groups +EXPORT_SYMBOL_GPL vmlinux 0xe4ebd671 devm_clk_register +EXPORT_SYMBOL_GPL vmlinux 0xe4edb2b5 device_set_wakeup_enable +EXPORT_SYMBOL_GPL vmlinux 0xe4f7b6af thermal_zone_of_sensor_unregister +EXPORT_SYMBOL_GPL vmlinux 0xe5083c61 spi_res_release +EXPORT_SYMBOL_GPL vmlinux 0xe50a0b9b n_tty_inherit_ops +EXPORT_SYMBOL_GPL vmlinux 0xe549963f is_nvdimm_sync +EXPORT_SYMBOL_GPL vmlinux 0xe570d119 posix_clock_register +EXPORT_SYMBOL_GPL vmlinux 0xe570f8ec class_compat_create_link +EXPORT_SYMBOL_GPL vmlinux 0xe5883bd9 class_compat_unregister +EXPORT_SYMBOL_GPL vmlinux 0xe5917508 mpc8xxx_spi_tx_buf_u8 +EXPORT_SYMBOL_GPL vmlinux 0xe5939b5d ata_sff_busy_sleep +EXPORT_SYMBOL_GPL vmlinux 0xe5939b84 devm_hwspin_lock_request_specific +EXPORT_SYMBOL_GPL vmlinux 0xe598c0af nvm_get_chunk_meta +EXPORT_SYMBOL_GPL vmlinux 0xe5a12479 of_pci_parse_bus_range +EXPORT_SYMBOL_GPL vmlinux 0xe5b59203 gpiochip_irq_domain_activate +EXPORT_SYMBOL_GPL vmlinux 0xe5ba6a3c pinctrl_utils_free_map +EXPORT_SYMBOL_GPL vmlinux 0xe5c876f2 ip6_dst_lookup_tunnel +EXPORT_SYMBOL_GPL vmlinux 0xe5e68bd7 da9052_adc_manual_read +EXPORT_SYMBOL_GPL vmlinux 0xe5ec503b __i2c_board_lock +EXPORT_SYMBOL_GPL vmlinux 0xe5ef533f usb_disable_autosuspend +EXPORT_SYMBOL_GPL vmlinux 0xe5ef5b7e da9052_adc_read_temp +EXPORT_SYMBOL_GPL vmlinux 0xe60632a9 edac_queue_work +EXPORT_SYMBOL_GPL vmlinux 0xe60d1f6b of_thermal_get_ntrips +EXPORT_SYMBOL_GPL vmlinux 0xe61f4132 pm_generic_freeze +EXPORT_SYMBOL_GPL vmlinux 0xe624f566 ata_host_alloc +EXPORT_SYMBOL_GPL vmlinux 0xe6261936 regmap_add_irq_chip_np +EXPORT_SYMBOL_GPL vmlinux 0xe628bb9f phy_fibre_port_array +EXPORT_SYMBOL_GPL vmlinux 0xe63d71bb cpu_cgrp_subsys_on_dfl_key +EXPORT_SYMBOL_GPL vmlinux 0xe63fa003 ip6_datagram_recv_ctl +EXPORT_SYMBOL_GPL vmlinux 0xe64eec66 vfio_unregister_iommu_driver +EXPORT_SYMBOL_GPL vmlinux 0xe65c226c ata_host_suspend +EXPORT_SYMBOL_GPL vmlinux 0xe6658b50 usb_kill_anchored_urbs +EXPORT_SYMBOL_GPL vmlinux 0xe67703ce ata_sas_tport_add +EXPORT_SYMBOL_GPL vmlinux 0xe681f946 wm831x_bulk_read +EXPORT_SYMBOL_GPL vmlinux 0xe68625bf blk_mq_pci_map_queues +EXPORT_SYMBOL_GPL vmlinux 0xe68ae4d2 rio_unregister_scan +EXPORT_SYMBOL_GPL vmlinux 0xe69742c3 irq_domain_free_irqs_common +EXPORT_SYMBOL_GPL vmlinux 0xe69933d9 hwspin_lock_free +EXPORT_SYMBOL_GPL vmlinux 0xe6a13e7d xive_native_configure_irq +EXPORT_SYMBOL_GPL vmlinux 0xe6b1a2a8 ata_bmdma_qc_issue +EXPORT_SYMBOL_GPL vmlinux 0xe6cd1e8b sata_link_resume +EXPORT_SYMBOL_GPL vmlinux 0xe6ce1579 pin_user_pages_fast_only +EXPORT_SYMBOL_GPL vmlinux 0xe6e40502 rcu_get_gp_seq +EXPORT_SYMBOL_GPL vmlinux 0xe6f9c14b irq_domain_xlate_onecell +EXPORT_SYMBOL_GPL vmlinux 0xe70789ca __bio_try_merge_page +EXPORT_SYMBOL_GPL vmlinux 0xe70f708d clk_hw_set_rate_range +EXPORT_SYMBOL_GPL vmlinux 0xe71241ce devm_spi_mem_dirmap_destroy +EXPORT_SYMBOL_GPL vmlinux 0xe718217d usb_phy_roothub_alloc +EXPORT_SYMBOL_GPL vmlinux 0xe71fe38a trace_print_bitmask_seq +EXPORT_SYMBOL_GPL vmlinux 0xe724cb5d of_icc_xlate_onecell +EXPORT_SYMBOL_GPL vmlinux 0xe7297f63 pwm_get +EXPORT_SYMBOL_GPL vmlinux 0xe72c2f84 hwspin_lock_register +EXPORT_SYMBOL_GPL vmlinux 0xe737a3cf __tracepoint_fib6_table_lookup +EXPORT_SYMBOL_GPL vmlinux 0xe73cbed8 inet_csk_get_port +EXPORT_SYMBOL_GPL vmlinux 0xe7490564 sata_pmp_error_handler +EXPORT_SYMBOL_GPL vmlinux 0xe753b68d devlink_fmsg_arr_pair_nest_end +EXPORT_SYMBOL_GPL vmlinux 0xe769232e sprint_symbol_no_offset +EXPORT_SYMBOL_GPL vmlinux 0xe77c0f4e wm8997_irq +EXPORT_SYMBOL_GPL vmlinux 0xe783e261 sysfs_emit +EXPORT_SYMBOL_GPL vmlinux 0xe78782e9 phy_pm_runtime_get +EXPORT_SYMBOL_GPL vmlinux 0xe798efb6 regulator_bulk_force_disable +EXPORT_SYMBOL_GPL vmlinux 0xe79bf0c4 klp_shadow_get +EXPORT_SYMBOL_GPL vmlinux 0xe7a7937d ata_port_desc +EXPORT_SYMBOL_GPL vmlinux 0xe7a98a2c mm_iommu_preregistered +EXPORT_SYMBOL_GPL vmlinux 0xe7b8281a __raw_v4_lookup +EXPORT_SYMBOL_GPL vmlinux 0xe7c7e52e sdio_f0_readb +EXPORT_SYMBOL_GPL vmlinux 0xe7d0c1c1 bsg_scsi_register_queue +EXPORT_SYMBOL_GPL vmlinux 0xe7d34db2 opal_async_wait_response +EXPORT_SYMBOL_GPL vmlinux 0xe7d6d2d4 filter_match_preds +EXPORT_SYMBOL_GPL vmlinux 0xe7ed2b27 sdev_evt_send +EXPORT_SYMBOL_GPL vmlinux 0xe7eee3d5 __cookie_v4_init_sequence +EXPORT_SYMBOL_GPL vmlinux 0xe7f18b3c threads_per_subcore +EXPORT_SYMBOL_GPL vmlinux 0xe7ffe877 pcpu_base_addr +EXPORT_SYMBOL_GPL vmlinux 0xe809cffb ring_buffer_time_stamp +EXPORT_SYMBOL_GPL vmlinux 0xe8124954 nvdimm_security_setup_events +EXPORT_SYMBOL_GPL vmlinux 0xe8154c8d of_genpd_add_provider_onecell +EXPORT_SYMBOL_GPL vmlinux 0xe818b32b ata_bmdma_interrupt +EXPORT_SYMBOL_GPL vmlinux 0xe81ddad6 tracing_generic_entry_update +EXPORT_SYMBOL_GPL vmlinux 0xe83be53d mm_iommu_new +EXPORT_SYMBOL_GPL vmlinux 0xe84b9656 pci_disable_pasid +EXPORT_SYMBOL_GPL vmlinux 0xe84f6e5c pciserial_remove_ports +EXPORT_SYMBOL_GPL vmlinux 0xe862c4b7 dpm_suspend_start +EXPORT_SYMBOL_GPL vmlinux 0xe8699a1d pcie_flr +EXPORT_SYMBOL_GPL vmlinux 0xe87ab439 rio_request_outb_mbox +EXPORT_SYMBOL_GPL vmlinux 0xe87f0c52 fsverity_cleanup_inode +EXPORT_SYMBOL_GPL vmlinux 0xe8a74756 regcache_drop_region +EXPORT_SYMBOL_GPL vmlinux 0xe8b115bb clk_hw_get_parent +EXPORT_SYMBOL_GPL vmlinux 0xe8f12386 phy_driver_is_genphy +EXPORT_SYMBOL_GPL vmlinux 0xe8f20697 devm_platform_ioremap_resource_byname +EXPORT_SYMBOL_GPL vmlinux 0xe8f3c242 dm_bio_get_target_bio_nr +EXPORT_SYMBOL_GPL vmlinux 0xe909eee3 usb_anchor_empty +EXPORT_SYMBOL_GPL vmlinux 0xe93e49c3 devres_free +EXPORT_SYMBOL_GPL vmlinux 0xe942fa02 genphy_c45_read_lpa +EXPORT_SYMBOL_GPL vmlinux 0xe9506579 iommu_tce_direction +EXPORT_SYMBOL_GPL vmlinux 0xe957bf9f alarm_expires_remaining +EXPORT_SYMBOL_GPL vmlinux 0xe95f7490 regulator_register_notifier +EXPORT_SYMBOL_GPL vmlinux 0xe9605b82 device_get_child_node_count +EXPORT_SYMBOL_GPL vmlinux 0xe9769fcb fl6_merge_options +EXPORT_SYMBOL_GPL vmlinux 0xe97752b3 pinctrl_get +EXPORT_SYMBOL_GPL vmlinux 0xe991951e bus_get_device_klist +EXPORT_SYMBOL_GPL vmlinux 0xe996311e elv_rqhash_del +EXPORT_SYMBOL_GPL vmlinux 0xe9c3ba7b ata_cable_80wire +EXPORT_SYMBOL_GPL vmlinux 0xe9d1b7cf irq_to_pcap +EXPORT_SYMBOL_GPL vmlinux 0xe9d2727c fb_deferred_io_cleanup +EXPORT_SYMBOL_GPL vmlinux 0xe9d6ce4f ip6_push_pending_frames +EXPORT_SYMBOL_GPL vmlinux 0xe9e1ab85 devm_memunmap_pages +EXPORT_SYMBOL_GPL vmlinux 0xe9e54af1 icc_node_add +EXPORT_SYMBOL_GPL vmlinux 0xe9f3a188 icc_provider_del +EXPORT_SYMBOL_GPL vmlinux 0xea017114 io_cgrp_subsys_on_dfl_key +EXPORT_SYMBOL_GPL vmlinux 0xea09ef55 pwm_put +EXPORT_SYMBOL_GPL vmlinux 0xea124bd1 gcd +EXPORT_SYMBOL_GPL vmlinux 0xea214c12 ata_dev_set_feature +EXPORT_SYMBOL_GPL vmlinux 0xea38036f ring_buffer_entries +EXPORT_SYMBOL_GPL vmlinux 0xea3bcb44 __tracepoint_block_bio_complete +EXPORT_SYMBOL_GPL vmlinux 0xea430972 extcon_set_property +EXPORT_SYMBOL_GPL vmlinux 0xea589420 cpci_hp_register_bus +EXPORT_SYMBOL_GPL vmlinux 0xea638d08 __inet_twsk_schedule +EXPORT_SYMBOL_GPL vmlinux 0xea7086d1 do_splice_from +EXPORT_SYMBOL_GPL vmlinux 0xea7e60e3 gpiod_count +EXPORT_SYMBOL_GPL vmlinux 0xea88c866 copy_to_user_nofault +EXPORT_SYMBOL_GPL vmlinux 0xea918f7e irq_chip_mask_parent +EXPORT_SYMBOL_GPL vmlinux 0xea93b172 unix_outq_len +EXPORT_SYMBOL_GPL vmlinux 0xea9d624a tty_buffer_unlock_exclusive +EXPORT_SYMBOL_GPL vmlinux 0xeaa71be7 gpiochip_relres_irq +EXPORT_SYMBOL_GPL vmlinux 0xeaad3d46 usb_autopm_put_interface_async +EXPORT_SYMBOL_GPL vmlinux 0xead486fd crypto_alg_sem +EXPORT_SYMBOL_GPL vmlinux 0xead54924 mctrl_gpio_to_gpiod +EXPORT_SYMBOL_GPL vmlinux 0xead8ecfe rhashtable_walk_stop +EXPORT_SYMBOL_GPL vmlinux 0xeadf56a9 bpf_offload_dev_netdev_unregister +EXPORT_SYMBOL_GPL vmlinux 0xeadf72e1 tm_abort +EXPORT_SYMBOL_GPL vmlinux 0xeae0f496 clean_acked_data_flush +EXPORT_SYMBOL_GPL vmlinux 0xeae86586 usb_phy_get_charger_current +EXPORT_SYMBOL_GPL vmlinux 0xeaedaefc security_file_ioctl +EXPORT_SYMBOL_GPL vmlinux 0xeaf84823 inet_send_prepare +EXPORT_SYMBOL_GPL vmlinux 0xeaf9e3ee __tracepoint_devlink_hwmsg +EXPORT_SYMBOL_GPL vmlinux 0xeafe07b8 clk_bulk_prepare +EXPORT_SYMBOL_GPL vmlinux 0xeb097dcf device_unregister +EXPORT_SYMBOL_GPL vmlinux 0xeb158176 register_cxl_calls +EXPORT_SYMBOL_GPL vmlinux 0xeb16f919 blk_abort_request +EXPORT_SYMBOL_GPL vmlinux 0xeb1a4f29 opal_error_code +EXPORT_SYMBOL_GPL vmlinux 0xeb2c0229 regulator_bulk_enable +EXPORT_SYMBOL_GPL vmlinux 0xeb30b67e reserve_pmc_hardware +EXPORT_SYMBOL_GPL vmlinux 0xeb32587e usb_hub_find_child +EXPORT_SYMBOL_GPL vmlinux 0xeb3c8d73 wm5110_irq +EXPORT_SYMBOL_GPL vmlinux 0xeb45d156 scsi_check_sense +EXPORT_SYMBOL_GPL vmlinux 0xeb49f785 anon_inode_getfd +EXPORT_SYMBOL_GPL vmlinux 0xeb4cef70 vfio_iommu_group_put +EXPORT_SYMBOL_GPL vmlinux 0xeb503b28 fat_attach +EXPORT_SYMBOL_GPL vmlinux 0xeb597461 regulator_bulk_disable +EXPORT_SYMBOL_GPL vmlinux 0xeb67c88b fuse_get_unique +EXPORT_SYMBOL_GPL vmlinux 0xeb69e003 regmap_write +EXPORT_SYMBOL_GPL vmlinux 0xeb6aaf36 kernel_read_file_from_path_initns +EXPORT_SYMBOL_GPL vmlinux 0xeb7cb4fe ethnl_cable_test_step +EXPORT_SYMBOL_GPL vmlinux 0xeb7cd059 spi_statistics_add_transfer_stats +EXPORT_SYMBOL_GPL vmlinux 0xeb881f05 device_match_of_node +EXPORT_SYMBOL_GPL vmlinux 0xeb94a84a power_supply_set_property +EXPORT_SYMBOL_GPL vmlinux 0xeba39c77 ata_sff_freeze +EXPORT_SYMBOL_GPL vmlinux 0xebae5129 l3mdev_link_scope_lookup +EXPORT_SYMBOL_GPL vmlinux 0xebbc166f nf_ct_hook +EXPORT_SYMBOL_GPL vmlinux 0xebbf1aa2 pci_set_pcie_reset_state +EXPORT_SYMBOL_GPL vmlinux 0xebc6c9e8 fat_flush_inodes +EXPORT_SYMBOL_GPL vmlinux 0xebc9a09f lock_system_sleep +EXPORT_SYMBOL_GPL vmlinux 0xebd4cc11 mctrl_gpio_enable_ms +EXPORT_SYMBOL_GPL vmlinux 0xebf28a43 cleanup_srcu_struct +EXPORT_SYMBOL_GPL vmlinux 0xebf94def inet6_csk_update_pmtu +EXPORT_SYMBOL_GPL vmlinux 0xebfc68f7 virtio_finalize_features +EXPORT_SYMBOL_GPL vmlinux 0xec0e8335 __bio_crypt_clone +EXPORT_SYMBOL_GPL vmlinux 0xec104d09 metadata_dst_free_percpu +EXPORT_SYMBOL_GPL vmlinux 0xec1612ff ata_dev_pair +EXPORT_SYMBOL_GPL vmlinux 0xec20dd93 of_clk_add_hw_provider +EXPORT_SYMBOL_GPL vmlinux 0xec2293d1 ping_getfrag +EXPORT_SYMBOL_GPL vmlinux 0xec356c53 msr_check_and_set +EXPORT_SYMBOL_GPL vmlinux 0xec44d8fe nf_ip_route +EXPORT_SYMBOL_GPL vmlinux 0xec4a0099 fat_time_unix2fat +EXPORT_SYMBOL_GPL vmlinux 0xec51b3b7 unregister_trace_event +EXPORT_SYMBOL_GPL vmlinux 0xec5668f6 dax_zero_page_range +EXPORT_SYMBOL_GPL vmlinux 0xec58085a edac_pci_release_generic_ctl +EXPORT_SYMBOL_GPL vmlinux 0xec59434b of_pci_range_parser_one +EXPORT_SYMBOL_GPL vmlinux 0xec63d699 __tracepoint_vfio_pci_nvgpu_mmap_fault +EXPORT_SYMBOL_GPL vmlinux 0xec68ba70 clk_bulk_enable +EXPORT_SYMBOL_GPL vmlinux 0xec699e31 regulator_get_voltage_sel_pickable_regmap +EXPORT_SYMBOL_GPL vmlinux 0xec6a142e cm_notify_event +EXPORT_SYMBOL_GPL vmlinux 0xec6f3f4d of_hwspin_lock_get_id_byname +EXPORT_SYMBOL_GPL vmlinux 0xec72c3b1 irq_chip_disable_parent +EXPORT_SYMBOL_GPL vmlinux 0xec774acb cpufreq_frequency_table_verify +EXPORT_SYMBOL_GPL vmlinux 0xec84bfb9 opal_leds_get_ind +EXPORT_SYMBOL_GPL vmlinux 0xecaf8277 ata_ehi_clear_desc +EXPORT_SYMBOL_GPL vmlinux 0xecb4675c ip6_route_input_lookup +EXPORT_SYMBOL_GPL vmlinux 0xecb6909d virtio_config_changed +EXPORT_SYMBOL_GPL vmlinux 0xecc13485 pci_iomap_wc +EXPORT_SYMBOL_GPL vmlinux 0xeccc7df4 net_cls_cgrp_subsys_enabled_key +EXPORT_SYMBOL_GPL vmlinux 0xecf0559f simple_attr_open +EXPORT_SYMBOL_GPL vmlinux 0xecf3b489 cpufreq_freq_transition_end +EXPORT_SYMBOL_GPL vmlinux 0xed0caf1a usb_wakeup_enabled_descendants +EXPORT_SYMBOL_GPL vmlinux 0xed17d121 usb_add_hcd +EXPORT_SYMBOL_GPL vmlinux 0xed4891ae devres_close_group +EXPORT_SYMBOL_GPL vmlinux 0xed494c61 gpiod_set_debounce +EXPORT_SYMBOL_GPL vmlinux 0xed5836ce pm_generic_suspend +EXPORT_SYMBOL_GPL vmlinux 0xed5b43b7 ip6_route_output_flags_noref +EXPORT_SYMBOL_GPL vmlinux 0xed9289f3 driver_for_each_device +EXPORT_SYMBOL_GPL vmlinux 0xedafc22d virtqueue_get_vring_size +EXPORT_SYMBOL_GPL vmlinux 0xedafe851 devm_regulator_bulk_get +EXPORT_SYMBOL_GPL vmlinux 0xedbf0a62 create_signature +EXPORT_SYMBOL_GPL vmlinux 0xedd214e8 syscon_regmap_lookup_by_phandle_args +EXPORT_SYMBOL_GPL vmlinux 0xedd7dc10 inet6_lookup_listener +EXPORT_SYMBOL_GPL vmlinux 0xedd818e8 __udp_enqueue_schedule_skb +EXPORT_SYMBOL_GPL vmlinux 0xee0ce2dd __vfs_removexattr_noperm +EXPORT_SYMBOL_GPL vmlinux 0xee1a4c1d fat_detach +EXPORT_SYMBOL_GPL vmlinux 0xee38ef57 register_switchdev_blocking_notifier +EXPORT_SYMBOL_GPL vmlinux 0xee3ef75e get_task_mm +EXPORT_SYMBOL_GPL vmlinux 0xee6b71c4 syscon_regmap_lookup_by_compatible +EXPORT_SYMBOL_GPL vmlinux 0xee725f67 phy_pm_runtime_forbid +EXPORT_SYMBOL_GPL vmlinux 0xeea843d3 xdp_return_frame_rx_napi +EXPORT_SYMBOL_GPL vmlinux 0xeeb1b987 __pm_runtime_suspend +EXPORT_SYMBOL_GPL vmlinux 0xeeba29c2 usb_get_descriptor +EXPORT_SYMBOL_GPL vmlinux 0xeebf06cc pci_ecam_create +EXPORT_SYMBOL_GPL vmlinux 0xeec50af6 bsg_setup_queue +EXPORT_SYMBOL_GPL vmlinux 0xeed7a908 icc_provider_add +EXPORT_SYMBOL_GPL vmlinux 0xeedbbbe2 devlink_param_driverinit_value_get +EXPORT_SYMBOL_GPL vmlinux 0xeedd987e phy_10gbit_features_array +EXPORT_SYMBOL_GPL vmlinux 0xeedfcec3 task_work_run +EXPORT_SYMBOL_GPL vmlinux 0xeef72651 dequeue_signal +EXPORT_SYMBOL_GPL vmlinux 0xef05dd2a devm_phy_destroy +EXPORT_SYMBOL_GPL vmlinux 0xef17cf47 devres_remove +EXPORT_SYMBOL_GPL vmlinux 0xef29fcdd clk_bulk_put +EXPORT_SYMBOL_GPL vmlinux 0xef2c6250 led_trigger_register_simple +EXPORT_SYMBOL_GPL vmlinux 0xef2e6317 _proc_mkdir +EXPORT_SYMBOL_GPL vmlinux 0xef393094 nd_blk_region_to_dimm +EXPORT_SYMBOL_GPL vmlinux 0xef3db336 srcu_notifier_chain_register +EXPORT_SYMBOL_GPL vmlinux 0xef464c28 getboottime64 +EXPORT_SYMBOL_GPL vmlinux 0xef53012d sb800_prefetch +EXPORT_SYMBOL_GPL vmlinux 0xef59d51d usb_hcd_end_port_resume +EXPORT_SYMBOL_GPL vmlinux 0xef5c2d8e genpd_dev_pm_attach +EXPORT_SYMBOL_GPL vmlinux 0xef668245 pm_generic_poweroff +EXPORT_SYMBOL_GPL vmlinux 0xef6c3f70 round_jiffies_up_relative +EXPORT_SYMBOL_GPL vmlinux 0xef6d0376 opal_invalid_call +EXPORT_SYMBOL_GPL vmlinux 0xef6d8ae8 handle_fasteoi_nmi +EXPORT_SYMBOL_GPL vmlinux 0xef70eb7e ring_buffer_iter_advance +EXPORT_SYMBOL_GPL vmlinux 0xef793bba subsys_virtual_register +EXPORT_SYMBOL_GPL vmlinux 0xef8424e2 da903x_read +EXPORT_SYMBOL_GPL vmlinux 0xef870d25 devm_memremap_pages +EXPORT_SYMBOL_GPL vmlinux 0xefa2c27d register_tracepoint_module_notifier +EXPORT_SYMBOL_GPL vmlinux 0xefb57262 devlink_unregister +EXPORT_SYMBOL_GPL vmlinux 0xefb93d9e of_dma_controller_register +EXPORT_SYMBOL_GPL vmlinux 0xefbc28c1 dev_attr_unload_heads +EXPORT_SYMBOL_GPL vmlinux 0xefe3a6bb i2c_for_each_dev +EXPORT_SYMBOL_GPL vmlinux 0xefea9eb1 ata_sff_queue_pio_task +EXPORT_SYMBOL_GPL vmlinux 0xefeafcf1 edac_has_mcs +EXPORT_SYMBOL_GPL vmlinux 0xefebdde1 relay_buf_full +EXPORT_SYMBOL_GPL vmlinux 0xefee6835 alarm_cancel +EXPORT_SYMBOL_GPL vmlinux 0xeff0b14a power_supply_external_power_changed +EXPORT_SYMBOL_GPL vmlinux 0xf01628d7 alloc_dax_region +EXPORT_SYMBOL_GPL vmlinux 0xf01d1dd0 of_pci_get_max_link_speed +EXPORT_SYMBOL_GPL vmlinux 0xf020ac89 ata_host_resume +EXPORT_SYMBOL_GPL vmlinux 0xf031e78b __phy_modify_mmd +EXPORT_SYMBOL_GPL vmlinux 0xf033349c devlink_is_reload_failed +EXPORT_SYMBOL_GPL vmlinux 0xf04c99e4 mbox_controller_register +EXPORT_SYMBOL_GPL vmlinux 0xf055e628 __account_locked_vm +EXPORT_SYMBOL_GPL vmlinux 0xf05995da fuse_send_init +EXPORT_SYMBOL_GPL vmlinux 0xf0639d1b md_bitmap_resize +EXPORT_SYMBOL_GPL vmlinux 0xf0652be2 sysfs_add_link_to_group +EXPORT_SYMBOL_GPL vmlinux 0xf0804c5c fsverity_verify_page +EXPORT_SYMBOL_GPL vmlinux 0xf0835094 __blk_req_zone_write_lock +EXPORT_SYMBOL_GPL vmlinux 0xf086051a kthread_cancel_delayed_work_sync +EXPORT_SYMBOL_GPL vmlinux 0xf086dacc static_key_count +EXPORT_SYMBOL_GPL vmlinux 0xf0910075 sfp_bus_del_upstream +EXPORT_SYMBOL_GPL vmlinux 0xf099defd dma_get_merge_boundary +EXPORT_SYMBOL_GPL vmlinux 0xf0a59237 genphy_c45_pma_setup_forced +EXPORT_SYMBOL_GPL vmlinux 0xf0ae2e26 regmap_update_bits_base +EXPORT_SYMBOL_GPL vmlinux 0xf0c1f0f7 icc_node_del +EXPORT_SYMBOL_GPL vmlinux 0xf0ddf0ac devm_nvmem_device_put +EXPORT_SYMBOL_GPL vmlinux 0xf0e0847b _copy_from_iter_flushcache +EXPORT_SYMBOL_GPL vmlinux 0xf0e99c57 phy_restart_aneg +EXPORT_SYMBOL_GPL vmlinux 0xf10c715e __fsnotify_inode_delete +EXPORT_SYMBOL_GPL vmlinux 0xf11e3e91 device_match_name +EXPORT_SYMBOL_GPL vmlinux 0xf1361941 pci_vpd_find_tag +EXPORT_SYMBOL_GPL vmlinux 0xf136c667 ata_pio_need_iordy +EXPORT_SYMBOL_GPL vmlinux 0xf13c8cf1 device_wakeup_disable +EXPORT_SYMBOL_GPL vmlinux 0xf164a827 _copy_mc_to_iter +EXPORT_SYMBOL_GPL vmlinux 0xf184d189 kernel_power_off +EXPORT_SYMBOL_GPL vmlinux 0xf1a0297e badblocks_check +EXPORT_SYMBOL_GPL vmlinux 0xf1a55e53 tcp_slow_start +EXPORT_SYMBOL_GPL vmlinux 0xf1a62b6f of_i8042_kbd_irq +EXPORT_SYMBOL_GPL vmlinux 0xf1a6431a cpufreq_freq_transition_begin +EXPORT_SYMBOL_GPL vmlinux 0xf1b31314 delayacct_on +EXPORT_SYMBOL_GPL vmlinux 0xf1bef168 device_store_ulong +EXPORT_SYMBOL_GPL vmlinux 0xf1e8b409 extcon_find_edev_by_node +EXPORT_SYMBOL_GPL vmlinux 0xf1f0e41a sock_diag_register_inet_compat +EXPORT_SYMBOL_GPL vmlinux 0xf2179a22 iommu_fwspec_add_ids +EXPORT_SYMBOL_GPL vmlinux 0xf21e1f9b disable_percpu_irq +EXPORT_SYMBOL_GPL vmlinux 0xf2359a8c bpf_prog_create +EXPORT_SYMBOL_GPL vmlinux 0xf25a42e8 srcu_batches_completed +EXPORT_SYMBOL_GPL vmlinux 0xf278885a rhashtable_walk_start_check +EXPORT_SYMBOL_GPL vmlinux 0xf27acde6 xfrm_audit_policy_delete +EXPORT_SYMBOL_GPL vmlinux 0xf28a8e94 inet_unhash +EXPORT_SYMBOL_GPL vmlinux 0xf2967796 ring_buffer_record_on +EXPORT_SYMBOL_GPL vmlinux 0xf2a1461a unregister_virtio_device +EXPORT_SYMBOL_GPL vmlinux 0xf2b5850c iommu_unmap +EXPORT_SYMBOL_GPL vmlinux 0xf2c10126 security_path_rmdir +EXPORT_SYMBOL_GPL vmlinux 0xf2e348a5 bpf_offload_dev_create +EXPORT_SYMBOL_GPL vmlinux 0xf2f0b73a xive_native_get_vp_state +EXPORT_SYMBOL_GPL vmlinux 0xf2f336b8 fsverity_ioctl_enable +EXPORT_SYMBOL_GPL vmlinux 0xf2fd3083 register_net_sysctl +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 0xf319c605 vas_copy_crb +EXPORT_SYMBOL_GPL vmlinux 0xf31b3fd1 workqueue_set_max_active +EXPORT_SYMBOL_GPL vmlinux 0xf331236f btree_geo32 +EXPORT_SYMBOL_GPL vmlinux 0xf334302f bpf_trace_run9 +EXPORT_SYMBOL_GPL vmlinux 0xf338747e ata_sff_port_ops +EXPORT_SYMBOL_GPL vmlinux 0xf33b22f7 pci_enable_sriov +EXPORT_SYMBOL_GPL vmlinux 0xf3539dc2 iommu_unmap_fast +EXPORT_SYMBOL_GPL vmlinux 0xf3573885 debugfs_create_bool +EXPORT_SYMBOL_GPL vmlinux 0xf3588f5c dw_pcie_host_deinit +EXPORT_SYMBOL_GPL vmlinux 0xf35b2395 crypto_register_shashes +EXPORT_SYMBOL_GPL vmlinux 0xf3808cb1 get_state_synchronize_rcu +EXPORT_SYMBOL_GPL vmlinux 0xf387a8be security_path_chown +EXPORT_SYMBOL_GPL vmlinux 0xf3977da6 phy_led_trigger_change_speed +EXPORT_SYMBOL_GPL vmlinux 0xf398bc85 find_asymmetric_key +EXPORT_SYMBOL_GPL vmlinux 0xf3b2e524 pinctrl_enable +EXPORT_SYMBOL_GPL vmlinux 0xf3b451ca kdb_poll_funcs +EXPORT_SYMBOL_GPL vmlinux 0xf3d402cc i2c_client_type +EXPORT_SYMBOL_GPL vmlinux 0xf3db5a3c xfrm_audit_state_notfound +EXPORT_SYMBOL_GPL vmlinux 0xf3e0b26c balloon_aops +EXPORT_SYMBOL_GPL vmlinux 0xf3e917b9 eventfd_fget +EXPORT_SYMBOL_GPL vmlinux 0xf3ea0beb clk_hw_is_prepared +EXPORT_SYMBOL_GPL vmlinux 0xf401dfa0 crypto_shash_final +EXPORT_SYMBOL_GPL vmlinux 0xf4034ff7 regmap_field_alloc +EXPORT_SYMBOL_GPL vmlinux 0xf4037821 spi_bus_unlock +EXPORT_SYMBOL_GPL vmlinux 0xf41076c6 devm_hwmon_device_register_with_info +EXPORT_SYMBOL_GPL vmlinux 0xf4260e2f dma_resv_wait_timeout_rcu +EXPORT_SYMBOL_GPL vmlinux 0xf44c7d77 fuse_direct_io +EXPORT_SYMBOL_GPL vmlinux 0xf4677ac9 __blkg_prfill_u64 +EXPORT_SYMBOL_GPL vmlinux 0xf4689d50 linkmode_set_pause +EXPORT_SYMBOL_GPL vmlinux 0xf46f7c73 __wake_up_sync_key +EXPORT_SYMBOL_GPL vmlinux 0xf485d7a6 ring_buffer_swap_cpu +EXPORT_SYMBOL_GPL vmlinux 0xf48767e5 devm_hwspin_lock_unregister +EXPORT_SYMBOL_GPL vmlinux 0xf4af35c2 rcu_gp_is_normal +EXPORT_SYMBOL_GPL vmlinux 0xf4b5577d blk_ksm_destroy +EXPORT_SYMBOL_GPL vmlinux 0xf4d9d870 usb_alloc_coherent +EXPORT_SYMBOL_GPL vmlinux 0xf4da71b3 public_key_verify_signature +EXPORT_SYMBOL_GPL vmlinux 0xf4db5c9a crypto_grab_skcipher +EXPORT_SYMBOL_GPL vmlinux 0xf4e90f31 scsi_dh_attach +EXPORT_SYMBOL_GPL vmlinux 0xf4f36525 ata_bmdma_port_start +EXPORT_SYMBOL_GPL vmlinux 0xf4f51d46 input_ff_event +EXPORT_SYMBOL_GPL vmlinux 0xf4f9a317 fuse_dev_fiq_ops +EXPORT_SYMBOL_GPL vmlinux 0xf4f9ad40 __phy_modify +EXPORT_SYMBOL_GPL vmlinux 0xf5053558 usb_clear_halt +EXPORT_SYMBOL_GPL vmlinux 0xf521265a relay_late_setup_files +EXPORT_SYMBOL_GPL vmlinux 0xf53c1a81 hrtimer_try_to_cancel +EXPORT_SYMBOL_GPL vmlinux 0xf54445c2 anon_transport_class_register +EXPORT_SYMBOL_GPL vmlinux 0xf54bd49b lcm +EXPORT_SYMBOL_GPL vmlinux 0xf553318d cpuidle_pause_and_lock +EXPORT_SYMBOL_GPL vmlinux 0xf5579b7d regmap_noinc_write +EXPORT_SYMBOL_GPL vmlinux 0xf5623d0f sbitmap_bitmap_show +EXPORT_SYMBOL_GPL vmlinux 0xf565958f iommu_aux_get_pasid +EXPORT_SYMBOL_GPL vmlinux 0xf56acee1 power_supply_property_is_writeable +EXPORT_SYMBOL_GPL vmlinux 0xf57eb91a dev_coredumpsg +EXPORT_SYMBOL_GPL vmlinux 0xf5826eb9 pinctrl_lookup_state +EXPORT_SYMBOL_GPL vmlinux 0xf58518f3 pci_try_reset_function +EXPORT_SYMBOL_GPL vmlinux 0xf589b813 iommu_domain_window_enable +EXPORT_SYMBOL_GPL vmlinux 0xf59ce052 input_ff_erase +EXPORT_SYMBOL_GPL vmlinux 0xf5a3ba99 linear_range_values_in_range +EXPORT_SYMBOL_GPL vmlinux 0xf5a691cd invalidate_bh_lrus +EXPORT_SYMBOL_GPL vmlinux 0xf5bacad3 bus_register +EXPORT_SYMBOL_GPL vmlinux 0xf5c7e03c dax_iomap_rw +EXPORT_SYMBOL_GPL vmlinux 0xf5cd3243 pnv_ocxl_spa_remove_pe_from_cache +EXPORT_SYMBOL_GPL vmlinux 0xf5d10980 devlink_port_unregister +EXPORT_SYMBOL_GPL vmlinux 0xf5d7eb5a register_ftrace_export +EXPORT_SYMBOL_GPL vmlinux 0xf5f370e0 async_schedule_node +EXPORT_SYMBOL_GPL vmlinux 0xf6027db1 usb_hcd_pci_pm_ops +EXPORT_SYMBOL_GPL vmlinux 0xf60f28f2 pwm_free +EXPORT_SYMBOL_GPL vmlinux 0xf61168de devm_device_remove_group +EXPORT_SYMBOL_GPL vmlinux 0xf61ad5af kernstart_virt_addr +EXPORT_SYMBOL_GPL vmlinux 0xf621067c usb_hcd_map_urb_for_dma +EXPORT_SYMBOL_GPL vmlinux 0xf64f231d __dma_request_channel +EXPORT_SYMBOL_GPL vmlinux 0xf65461f8 lwtunnel_valid_encap_type_attr +EXPORT_SYMBOL_GPL vmlinux 0xf663ee2f pcap_adc_sync +EXPORT_SYMBOL_GPL vmlinux 0xf682aced regulator_lock +EXPORT_SYMBOL_GPL vmlinux 0xf6a09102 fscrypt_set_test_dummy_encryption +EXPORT_SYMBOL_GPL vmlinux 0xf6a28554 region_intersects +EXPORT_SYMBOL_GPL vmlinux 0xf6a7a8dc devlink_dpipe_headers_register +EXPORT_SYMBOL_GPL vmlinux 0xf6ad2d9b sysfs_unbreak_active_protection +EXPORT_SYMBOL_GPL vmlinux 0xf6bc5dd5 xas_get_mark +EXPORT_SYMBOL_GPL vmlinux 0xf6c379c5 of_clk_get_parent_count +EXPORT_SYMBOL_GPL vmlinux 0xf6c8dc62 cpu_hotplug_enable +EXPORT_SYMBOL_GPL vmlinux 0xf6e772c3 irq_bypass_unregister_producer +EXPORT_SYMBOL_GPL vmlinux 0xf6e874f5 ata_timing_merge +EXPORT_SYMBOL_GPL vmlinux 0xf6f16c56 rcu_barrier_tasks +EXPORT_SYMBOL_GPL vmlinux 0xf700184a fwnode_find_reference +EXPORT_SYMBOL_GPL vmlinux 0xf7133422 led_put +EXPORT_SYMBOL_GPL vmlinux 0xf7227029 raw_abort +EXPORT_SYMBOL_GPL vmlinux 0xf7259488 dev_pm_opp_init_cpufreq_table +EXPORT_SYMBOL_GPL vmlinux 0xf7455c16 input_event_to_user +EXPORT_SYMBOL_GPL vmlinux 0xf749debc md5_zero_message_hash +EXPORT_SYMBOL_GPL vmlinux 0xf74bb274 mod_delayed_work_on +EXPORT_SYMBOL_GPL vmlinux 0xf75ec665 sdio_unregister_driver +EXPORT_SYMBOL_GPL vmlinux 0xf79ee1ea gpiod_cansleep +EXPORT_SYMBOL_GPL vmlinux 0xf7a2687e user_free_preparse +EXPORT_SYMBOL_GPL vmlinux 0xf7a64e50 crypto_aead_decrypt +EXPORT_SYMBOL_GPL vmlinux 0xf7b97b44 sk_msg_memcopy_from_iter +EXPORT_SYMBOL_GPL vmlinux 0xf7bc95b0 devlink_fmsg_pair_nest_start +EXPORT_SYMBOL_GPL vmlinux 0xf7c2d1d9 agp_add_bridge +EXPORT_SYMBOL_GPL vmlinux 0xf7cb064d platform_get_resource +EXPORT_SYMBOL_GPL vmlinux 0xf7d961d8 clk_hw_unregister_composite +EXPORT_SYMBOL_GPL vmlinux 0xf7da2b1e tun_get_tx_ring +EXPORT_SYMBOL_GPL vmlinux 0xf7e60779 devres_for_each_res +EXPORT_SYMBOL_GPL vmlinux 0xf7f0ae8e devlink_reload_disable +EXPORT_SYMBOL_GPL vmlinux 0xf7fadb71 sched_setscheduler +EXPORT_SYMBOL_GPL vmlinux 0xf80ede9f devm_of_led_get +EXPORT_SYMBOL_GPL vmlinux 0xf82706a7 of_property_match_string +EXPORT_SYMBOL_GPL vmlinux 0xf82b1ff9 ata_link_online +EXPORT_SYMBOL_GPL vmlinux 0xf82f3657 work_on_cpu +EXPORT_SYMBOL_GPL vmlinux 0xf834c26d housekeeping_test_cpu +EXPORT_SYMBOL_GPL vmlinux 0xf84ed30c phy_gbit_all_ports_features +EXPORT_SYMBOL_GPL vmlinux 0xf84f187b rdev_get_id +EXPORT_SYMBOL_GPL vmlinux 0xf8529d7f cgroup_attach_task_all +EXPORT_SYMBOL_GPL vmlinux 0xf85f6b55 fscrypt_ioctl_get_policy_ex +EXPORT_SYMBOL_GPL vmlinux 0xf860cab5 input_class +EXPORT_SYMBOL_GPL vmlinux 0xf880cf6b sk_psock_destroy +EXPORT_SYMBOL_GPL vmlinux 0xf89a58a8 device_property_present +EXPORT_SYMBOL_GPL vmlinux 0xf89a9712 clk_register_divider_table +EXPORT_SYMBOL_GPL vmlinux 0xf8c5d32b ata_bmdma_irq_clear +EXPORT_SYMBOL_GPL vmlinux 0xf8d4c6d0 lwtstate_free +EXPORT_SYMBOL_GPL vmlinux 0xf8f3a0fb ata_ratelimit +EXPORT_SYMBOL_GPL vmlinux 0xf8fcdb0e pnv_ocxl_set_tl_conf +EXPORT_SYMBOL_GPL vmlinux 0xf900d94e sysfs_create_link +EXPORT_SYMBOL_GPL vmlinux 0xf907ffef __devm_irq_alloc_descs +EXPORT_SYMBOL_GPL vmlinux 0xf90f481e wm831x_auxadc_read_uv +EXPORT_SYMBOL_GPL vmlinux 0xf914afad skb_copy_ubufs +EXPORT_SYMBOL_GPL vmlinux 0xf9214cf6 uprobe_register +EXPORT_SYMBOL_GPL vmlinux 0xf9275ea9 watchdog_notify_pretimeout +EXPORT_SYMBOL_GPL vmlinux 0xf92d7163 devm_gpio_request +EXPORT_SYMBOL_GPL vmlinux 0xf932015f __raw_notifier_call_chain +EXPORT_SYMBOL_GPL vmlinux 0xf9361a29 wm5102_i2c_regmap +EXPORT_SYMBOL_GPL vmlinux 0xf94f9564 rio_release_outb_mbox +EXPORT_SYMBOL_GPL vmlinux 0xf95322f4 kthread_parkme +EXPORT_SYMBOL_GPL vmlinux 0xf955e9c5 bprintf +EXPORT_SYMBOL_GPL vmlinux 0xf96149d6 pci_load_and_free_saved_state +EXPORT_SYMBOL_GPL vmlinux 0xf96384ce of_get_phy_mode +EXPORT_SYMBOL_GPL vmlinux 0xf973ac3b netdev_rx_handler_unregister +EXPORT_SYMBOL_GPL vmlinux 0xf97471ef opal_i2c_request +EXPORT_SYMBOL_GPL vmlinux 0xf975a2b1 irq_create_fwspec_mapping +EXPORT_SYMBOL_GPL vmlinux 0xf989a283 iommu_iova_to_phys +EXPORT_SYMBOL_GPL vmlinux 0xf99a9789 is_skb_forwardable +EXPORT_SYMBOL_GPL vmlinux 0xf99b1daa rio_alloc_net +EXPORT_SYMBOL_GPL vmlinux 0xf9a054b5 __round_jiffies +EXPORT_SYMBOL_GPL vmlinux 0xf9c66d59 sysfs_change_owner +EXPORT_SYMBOL_GPL vmlinux 0xf9ca9f74 regulator_is_supported_voltage +EXPORT_SYMBOL_GPL vmlinux 0xfa077a52 exportfs_encode_fh +EXPORT_SYMBOL_GPL vmlinux 0xfa17a484 pm_clk_init +EXPORT_SYMBOL_GPL vmlinux 0xfa19d24f pm_clk_remove +EXPORT_SYMBOL_GPL vmlinux 0xfa1b8e46 blk_mq_sched_free_hctx_data +EXPORT_SYMBOL_GPL vmlinux 0xfa1eb910 unregister_syscore_ops +EXPORT_SYMBOL_GPL vmlinux 0xfa22c836 shash_register_instance +EXPORT_SYMBOL_GPL vmlinux 0xfa4738b4 nd_region_dev +EXPORT_SYMBOL_GPL vmlinux 0xfa64d1a0 sysfs_create_bin_file +EXPORT_SYMBOL_GPL vmlinux 0xfa666974 queue_work_node +EXPORT_SYMBOL_GPL vmlinux 0xfa690589 netdev_cmd_to_name +EXPORT_SYMBOL_GPL vmlinux 0xfa74a021 usb_ep0_reinit +EXPORT_SYMBOL_GPL vmlinux 0xfa7efd7d wakeup_source_register +EXPORT_SYMBOL_GPL vmlinux 0xfa816cda of_phandle_iterator_init +EXPORT_SYMBOL_GPL vmlinux 0xfa93de74 spi_take_timestamp_post +EXPORT_SYMBOL_GPL vmlinux 0xfab30dc0 mdio_bus_exit +EXPORT_SYMBOL_GPL vmlinux 0xfab53ed9 pinctrl_gpio_can_use_line +EXPORT_SYMBOL_GPL vmlinux 0xfab54ed5 regulator_set_voltage +EXPORT_SYMBOL_GPL vmlinux 0xfabb6aff opal_flash_erase +EXPORT_SYMBOL_GPL vmlinux 0xfac992a1 device_create_file +EXPORT_SYMBOL_GPL vmlinux 0xfad96238 spi_set_cs_timing +EXPORT_SYMBOL_GPL vmlinux 0xfad9c827 kill_dax +EXPORT_SYMBOL_GPL vmlinux 0xfaddae6b cs47l24_patch +EXPORT_SYMBOL_GPL vmlinux 0xfadf6ff1 crypto_shash_setkey +EXPORT_SYMBOL_GPL vmlinux 0xfaf0c059 cpu_cgrp_subsys_enabled_key +EXPORT_SYMBOL_GPL vmlinux 0xfaf3e1b1 pci_user_read_config_word +EXPORT_SYMBOL_GPL vmlinux 0xfafd3a50 eeh_dev_open +EXPORT_SYMBOL_GPL vmlinux 0xfafdbc5a mm_account_pinned_pages +EXPORT_SYMBOL_GPL vmlinux 0xfb15335e of_platform_default_populate +EXPORT_SYMBOL_GPL vmlinux 0xfb31a411 devfreq_event_get_event +EXPORT_SYMBOL_GPL vmlinux 0xfb32b30f ring_buffer_read_prepare_sync +EXPORT_SYMBOL_GPL vmlinux 0xfb3dfe8a page_reporting_unregister +EXPORT_SYMBOL_GPL vmlinux 0xfb459e5f rio_unmap_outb_region +EXPORT_SYMBOL_GPL vmlinux 0xfb64df53 ftrace_set_filter_ip +EXPORT_SYMBOL_GPL vmlinux 0xfb6eedf9 power_group_name +EXPORT_SYMBOL_GPL vmlinux 0xfb71ad4b pci_hp_deregister +EXPORT_SYMBOL_GPL vmlinux 0xfb738290 trace_seq_bprintf +EXPORT_SYMBOL_GPL vmlinux 0xfb7f8928 irq_set_affinity_notifier +EXPORT_SYMBOL_GPL vmlinux 0xfb885edd page_cache_readahead_unbounded +EXPORT_SYMBOL_GPL vmlinux 0xfb9231cb ip_build_and_send_pkt +EXPORT_SYMBOL_GPL vmlinux 0xfb9f5a7d devm_device_remove_groups +EXPORT_SYMBOL_GPL vmlinux 0xfba0f298 fuse_file_poll +EXPORT_SYMBOL_GPL vmlinux 0xfbbd41ca no_action +EXPORT_SYMBOL_GPL vmlinux 0xfbc447ff crypto_register_rngs +EXPORT_SYMBOL_GPL vmlinux 0xfbc5eefc fwnode_property_match_string +EXPORT_SYMBOL_GPL vmlinux 0xfbcf5add of_led_get +EXPORT_SYMBOL_GPL vmlinux 0xfbd2a167 preempt_notifier_register +EXPORT_SYMBOL_GPL vmlinux 0xfbecb0b0 copro_flush_all_slbs +EXPORT_SYMBOL_GPL vmlinux 0xfc03d97a page_is_ram +EXPORT_SYMBOL_GPL vmlinux 0xfc14bb2e dm_get_dev_t +EXPORT_SYMBOL_GPL vmlinux 0xfc1670eb fsl_mc_device_group +EXPORT_SYMBOL_GPL vmlinux 0xfc19bc45 crypto_dh_encode_key +EXPORT_SYMBOL_GPL vmlinux 0xfc201b66 sprint_oid +EXPORT_SYMBOL_GPL vmlinux 0xfc2243b2 tty_port_tty_hangup +EXPORT_SYMBOL_GPL vmlinux 0xfc234177 _kvmppc_save_tm_pr +EXPORT_SYMBOL_GPL vmlinux 0xfc2dbe88 ata_cable_ignore +EXPORT_SYMBOL_GPL vmlinux 0xfc35b531 serdev_device_alloc +EXPORT_SYMBOL_GPL vmlinux 0xfc35fd25 rio_mport_class +EXPORT_SYMBOL_GPL vmlinux 0xfc4fb26f tpm_is_tpm2 +EXPORT_SYMBOL_GPL vmlinux 0xfc5b29a6 firmware_kobj +EXPORT_SYMBOL_GPL vmlinux 0xfc5c0c04 cpufreq_generic_attr +EXPORT_SYMBOL_GPL vmlinux 0xfc5e6718 mmu_notifier_unregister +EXPORT_SYMBOL_GPL vmlinux 0xfc683b45 has_big_cores +EXPORT_SYMBOL_GPL vmlinux 0xfc77f6d0 wakeup_source_create +EXPORT_SYMBOL_GPL vmlinux 0xfc843596 clk_gate_restore_context +EXPORT_SYMBOL_GPL vmlinux 0xfc88f563 device_register +EXPORT_SYMBOL_GPL vmlinux 0xfc97a603 rio_mport_get_efb +EXPORT_SYMBOL_GPL vmlinux 0xfca8b051 rhashtable_walk_exit +EXPORT_SYMBOL_GPL vmlinux 0xfca983b8 devm_regulator_register_notifier +EXPORT_SYMBOL_GPL vmlinux 0xfcaf49b0 trace_handle_return +EXPORT_SYMBOL_GPL vmlinux 0xfcb0c269 wm831x_auxadc_read +EXPORT_SYMBOL_GPL vmlinux 0xfcc1edd3 memory_block_size_bytes +EXPORT_SYMBOL_GPL vmlinux 0xfcd156cb ata_sas_port_init +EXPORT_SYMBOL_GPL vmlinux 0xfcd60fc4 uprobe_unregister +EXPORT_SYMBOL_GPL vmlinux 0xfcde4fd2 tpm_tis_remove +EXPORT_SYMBOL_GPL vmlinux 0xfcde943a of_mpc8xxx_spi_probe +EXPORT_SYMBOL_GPL vmlinux 0xfcf0da11 regulator_list_hardware_vsel +EXPORT_SYMBOL_GPL vmlinux 0xfcf59a9c irq_chip_set_parent_state +EXPORT_SYMBOL_GPL vmlinux 0xfd16b3a1 usb_hcd_link_urb_to_ep +EXPORT_SYMBOL_GPL vmlinux 0xfd324b18 sbitmap_init_node +EXPORT_SYMBOL_GPL vmlinux 0xfd33209f sdio_enable_func +EXPORT_SYMBOL_GPL vmlinux 0xfd346c69 crypto_ahash_setkey +EXPORT_SYMBOL_GPL vmlinux 0xfd628c40 pci_find_next_ht_capability +EXPORT_SYMBOL_GPL vmlinux 0xfd6a00e4 bpf_prog_get_type_dev +EXPORT_SYMBOL_GPL vmlinux 0xfd6e36f7 nvdimm_pmem_region_create +EXPORT_SYMBOL_GPL vmlinux 0xfd780b0e icc_enable +EXPORT_SYMBOL_GPL vmlinux 0xfd7d53ed scsi_nl_sock +EXPORT_SYMBOL_GPL vmlinux 0xfd7e1b40 locks_alloc_lock +EXPORT_SYMBOL_GPL vmlinux 0xfd7faf5a wakeup_source_unregister +EXPORT_SYMBOL_GPL vmlinux 0xfd8a7ed5 extcon_get_extcon_dev +EXPORT_SYMBOL_GPL vmlinux 0xfd93bb5e scsi_target_block +EXPORT_SYMBOL_GPL vmlinux 0xfda1beea hwrng_unregister +EXPORT_SYMBOL_GPL vmlinux 0xfda4efa5 fb_deferred_io_init +EXPORT_SYMBOL_GPL vmlinux 0xfdadd316 serdev_device_wait_until_sent +EXPORT_SYMBOL_GPL vmlinux 0xfdafea24 iommu_get_domain_for_dev +EXPORT_SYMBOL_GPL vmlinux 0xfdb0086c kgdb_unregister_io_module +EXPORT_SYMBOL_GPL vmlinux 0xfdbd7a17 crypto_get_attr_type +EXPORT_SYMBOL_GPL vmlinux 0xfdc6037d gpiochip_generic_free +EXPORT_SYMBOL_GPL vmlinux 0xfded4202 list_lru_del +EXPORT_SYMBOL_GPL vmlinux 0xfdf387f6 ping_seq_next +EXPORT_SYMBOL_GPL vmlinux 0xfdf637af dm_table_device_name +EXPORT_SYMBOL_GPL vmlinux 0xfe18a10c devlink_resource_register +EXPORT_SYMBOL_GPL vmlinux 0xfe2c3286 usb_anchor_resume_wakeups +EXPORT_SYMBOL_GPL vmlinux 0xfe3aa25b unregister_pernet_subsys +EXPORT_SYMBOL_GPL vmlinux 0xfe476039 ktime_get_resolution_ns +EXPORT_SYMBOL_GPL vmlinux 0xfe5895ae handle_untracked_irq +EXPORT_SYMBOL_GPL vmlinux 0xfe670f86 nvmem_cell_read_u16 +EXPORT_SYMBOL_GPL vmlinux 0xfe69325f percpu_ref_resurrect +EXPORT_SYMBOL_GPL vmlinux 0xfe69786d i2c_dw_probe_master +EXPORT_SYMBOL_GPL vmlinux 0xfe71d1c6 crypto_type_has_alg +EXPORT_SYMBOL_GPL vmlinux 0xfe826b35 fsnotify_get_group +EXPORT_SYMBOL_GPL vmlinux 0xfe877fd5 xas_find_conflict +EXPORT_SYMBOL_GPL vmlinux 0xfe88de1f perf_event_enable +EXPORT_SYMBOL_GPL vmlinux 0xfe8cdb84 ring_buffer_alloc_read_page +EXPORT_SYMBOL_GPL vmlinux 0xfe990052 gpio_free +EXPORT_SYMBOL_GPL vmlinux 0xfe9c96dd regulator_disable_deferred +EXPORT_SYMBOL_GPL vmlinux 0xfeaa1558 opal_async_wait_response_interruptible +EXPORT_SYMBOL_GPL vmlinux 0xfecaa39a mddev_suspend +EXPORT_SYMBOL_GPL vmlinux 0xfecb0291 ncsi_vlan_rx_kill_vid +EXPORT_SYMBOL_GPL vmlinux 0xfed11ed1 usb_mon_deregister +EXPORT_SYMBOL_GPL vmlinux 0xfed9d073 iommu_device_sysfs_add +EXPORT_SYMBOL_GPL vmlinux 0xfedc7286 serial8250_rpm_get +EXPORT_SYMBOL_GPL vmlinux 0xfee045ee raw_hash_sk +EXPORT_SYMBOL_GPL vmlinux 0xfef282f7 sdio_retune_crc_disable +EXPORT_SYMBOL_GPL vmlinux 0xff05fa13 vring_interrupt +EXPORT_SYMBOL_GPL vmlinux 0xff0778ea virtqueue_get_vring +EXPORT_SYMBOL_GPL vmlinux 0xff1b5600 security_path_truncate +EXPORT_SYMBOL_GPL vmlinux 0xff291ecf clk_unregister_divider +EXPORT_SYMBOL_GPL vmlinux 0xff3d1773 devm_led_trigger_register +EXPORT_SYMBOL_GPL vmlinux 0xff3fcaae iomap_truncate_page +EXPORT_SYMBOL_GPL vmlinux 0xff49f1ca devm_gpiod_put +EXPORT_SYMBOL_GPL vmlinux 0xff5a8cfe cn_del_callback +EXPORT_SYMBOL_GPL vmlinux 0xff5d04fd blk_mq_update_nr_hw_queues +EXPORT_SYMBOL_GPL vmlinux 0xff6602f4 disk_part_iter_init +EXPORT_SYMBOL_GPL vmlinux 0xff81487d gpiod_remove_lookup_table +EXPORT_SYMBOL_GPL vmlinux 0xff884efa __serdev_device_driver_register +EXPORT_SYMBOL_GPL vmlinux 0xff8bfa84 modify_user_hw_breakpoint +EXPORT_SYMBOL_GPL vmlinux 0xff99094b i2c_of_match_device +EXPORT_SYMBOL_GPL vmlinux 0xff9ad4de relay_close +EXPORT_SYMBOL_GPL vmlinux 0xffae8e8b nsecs_to_jiffies +EXPORT_SYMBOL_GPL vmlinux 0xffc47c7a rio_del_device +EXPORT_SYMBOL_GPL vmlinux 0xffd1123f save_stack_trace +EXPORT_SYMBOL_GPL vmlinux 0xfffaba48 __dev_forward_skb +FIRMWARE_LOADER_PRIVATE EXPORT_SYMBOL_GPL 0xd3ae7756 fw_fallback_config vmlinux +LTC2497 EXPORT_SYMBOL 0x1a07dfa4 ltc2497core_probe drivers/iio/adc/ltc2497-core +LTC2497 EXPORT_SYMBOL 0x58fb6d1f ltc2497core_remove drivers/iio/adc/ltc2497-core +MCB EXPORT_SYMBOL_GPL 0x05fef2be mcb_unregister_driver drivers/mcb/mcb +MCB EXPORT_SYMBOL_GPL 0x26e8068c __mcb_register_driver drivers/mcb/mcb +MCB EXPORT_SYMBOL_GPL 0x2a92e668 mcb_get_resource drivers/mcb/mcb +MCB EXPORT_SYMBOL_GPL 0x32b1b927 mcb_alloc_bus drivers/mcb/mcb +MCB EXPORT_SYMBOL_GPL 0xa041130e mcb_bus_get drivers/mcb/mcb +MCB EXPORT_SYMBOL_GPL 0xb2361a81 mcb_release_bus drivers/mcb/mcb +MCB EXPORT_SYMBOL_GPL 0xb32bd37b mcb_alloc_dev drivers/mcb/mcb +MCB EXPORT_SYMBOL_GPL 0xb57faa85 mcb_request_mem drivers/mcb/mcb +MCB EXPORT_SYMBOL_GPL 0xbcdc147b mcb_bus_put drivers/mcb/mcb +MCB EXPORT_SYMBOL_GPL 0xde6a211b mcb_device_register drivers/mcb/mcb +MCB EXPORT_SYMBOL_GPL 0xdf9d782c chameleon_parse_cells drivers/mcb/mcb +MCB EXPORT_SYMBOL_GPL 0xeb15c0af mcb_get_irq drivers/mcb/mcb +MCB EXPORT_SYMBOL_GPL 0xeb2c8905 mcb_release_mem drivers/mcb/mcb +MCB EXPORT_SYMBOL_GPL 0xf1a00b20 mcb_bus_add_devices drivers/mcb/mcb +MCB EXPORT_SYMBOL_GPL 0xf3ae3d50 mcb_free_dev drivers/mcb/mcb +USB_STORAGE EXPORT_SYMBOL_GPL 0x1bc3edc2 usb_stor_sense_invalidCDB drivers/usb/storage/usb-storage +USB_STORAGE EXPORT_SYMBOL_GPL 0x246492e9 usb_stor_resume drivers/usb/storage/usb-storage +USB_STORAGE EXPORT_SYMBOL_GPL 0x25424190 usb_stor_adjust_quirks drivers/usb/storage/usb-storage +USB_STORAGE EXPORT_SYMBOL_GPL 0x5048813d usb_stor_pre_reset drivers/usb/storage/usb-storage +USB_STORAGE EXPORT_SYMBOL_GPL 0x52d23f6d usb_stor_set_xfer_buf drivers/usb/storage/usb-storage +USB_STORAGE EXPORT_SYMBOL_GPL 0x665f0206 usb_stor_ctrl_transfer drivers/usb/storage/usb-storage +USB_STORAGE EXPORT_SYMBOL_GPL 0x66eb0e42 usb_stor_probe1 drivers/usb/storage/usb-storage +USB_STORAGE EXPORT_SYMBOL_GPL 0x6edd9634 usb_stor_Bulk_reset drivers/usb/storage/usb-storage +USB_STORAGE EXPORT_SYMBOL_GPL 0x6efe1f90 usb_stor_control_msg drivers/usb/storage/usb-storage +USB_STORAGE EXPORT_SYMBOL_GPL 0x733f055c usb_stor_CB_reset drivers/usb/storage/usb-storage +USB_STORAGE EXPORT_SYMBOL_GPL 0x7944be52 usb_stor_CB_transport drivers/usb/storage/usb-storage +USB_STORAGE EXPORT_SYMBOL_GPL 0x7fdbc7b6 usb_stor_disconnect drivers/usb/storage/usb-storage +USB_STORAGE EXPORT_SYMBOL_GPL 0x8abef4d1 usb_stor_transparent_scsi_command drivers/usb/storage/usb-storage +USB_STORAGE EXPORT_SYMBOL_GPL 0x8e90b41f usb_stor_Bulk_transport drivers/usb/storage/usb-storage +USB_STORAGE EXPORT_SYMBOL_GPL 0x9e461a82 usb_stor_clear_halt drivers/usb/storage/usb-storage +USB_STORAGE EXPORT_SYMBOL_GPL 0xbb57d1c9 usb_stor_post_reset drivers/usb/storage/usb-storage +USB_STORAGE EXPORT_SYMBOL_GPL 0xbc5acd3f usb_stor_host_template_init drivers/usb/storage/usb-storage +USB_STORAGE EXPORT_SYMBOL_GPL 0xbd169c1e usb_stor_bulk_transfer_sg drivers/usb/storage/usb-storage +USB_STORAGE EXPORT_SYMBOL_GPL 0xc5113c0c usb_stor_access_xfer_buf drivers/usb/storage/usb-storage +USB_STORAGE EXPORT_SYMBOL_GPL 0xe0d22359 usb_stor_bulk_srb drivers/usb/storage/usb-storage +USB_STORAGE EXPORT_SYMBOL_GPL 0xe2022e64 usb_stor_probe2 drivers/usb/storage/usb-storage +USB_STORAGE EXPORT_SYMBOL_GPL 0xe8951536 usb_stor_reset_resume drivers/usb/storage/usb-storage +USB_STORAGE EXPORT_SYMBOL_GPL 0xeb1ca5e8 fill_inquiry_response drivers/usb/storage/usb-storage +USB_STORAGE EXPORT_SYMBOL_GPL 0xf54c75e9 usb_stor_bulk_transfer_buf drivers/usb/storage/usb-storage +USB_STORAGE EXPORT_SYMBOL_GPL 0xfea06f44 usb_stor_suspend drivers/usb/storage/usb-storage --- linux-azure-5.8-5.8.0.orig/debian.master/abi/5.8.0-50.56/ppc64el/generic.compiler +++ linux-azure-5.8-5.8.0/debian.master/abi/5.8.0-50.56/ppc64el/generic.compiler @@ -0,0 +1 @@ +GCC: (Ubuntu 10.2.0-13ubuntu1) 10.2.0 --- linux-azure-5.8-5.8.0.orig/debian.master/abi/5.8.0-50.56/ppc64el/generic.modules +++ linux-azure-5.8-5.8.0/debian.master/abi/5.8.0-50.56/ppc64el/generic.modules @@ -0,0 +1,5427 @@ +3c59x +3w-9xxx +3w-sas +3w-xxxx +6lowpan +6pack +8021q +8139cp +8139too +8250_aspeed_vuart +8250_dw +8250_exar +8250_men_mcb +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_rdma +9pnet_virtio +a100u2w +a3d +a8293 +aacraid +aat2870-regulator +aat2870_bl +ab3100 +ab3100-otp +abp060mg +ac97_bus +acard-ahci +acecad +acenic +acp_audio_dma +act8865-regulator +act8945a +act8945a-regulator +act8945a_charger +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 +ad5064 +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 +ad5770r +ad5791 +ad5820 +ad5933 +ad7091r-base +ad7091r5 +ad7124 +ad714x +ad714x-i2c +ad714x-spi +ad7150 +ad7192 +ad7266 +ad7280a +ad7291 +ad7292 +ad7298 +ad7303 +ad7314 +ad7414 +ad7418 +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 +ad9389b +ad9467 +ad9523 +ad9832 +ad9834 +ad_sigma_delta +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 +ade7854 +ade7854-i2c +ade7854-spi +adf4350 +adf4371 +adf7242 +adfs +adi +adi-axi-adc +adiantum +adin +adis16080 +adis16130 +adis16136 +adis16201 +adis16203 +adis16209 +adis16240 +adis16260 +adis16400 +adis16460 +adis16475 +adis16480 +adis_lib +adjd_s311 +adl_pci6208 +adl_pci7x3x +adl_pci8164 +adl_pci9111 +adl_pci9118 +adm1021 +adm1025 +adm1026 +adm1029 +adm1031 +adm1177 +adm1275 +adm8211 +adm9240 +adp1653 +adp5061 +adp5520-keys +adp5520_bl +adp5588-keys +adp5589-keys +adp8860_bl +adp8870_bl +adq12b +ads7828 +ads7846 +ads7871 +adt7310 +adt7316 +adt7316-i2c +adt7316-spi +adt7410 +adt7411 +adt7462 +adt7470 +adt7475 +adt7x10 +adummy +adutux +adux1020 +adv7170 +adv7175 +adv7180 +adv7183 +adv7343 +adv7393 +adv748x +adv7511_drm +adv7604 +adv7842 +adv_pci1710 +adv_pci1720 +adv_pci1723 +adv_pci1724 +adv_pci1760 +adv_pci_dio +advansys +adxl34x +adxl34x-i2c +adxl34x-spi +adxl372 +adxl372_i2c +adxl372_spi +adxrs450 +aegis128 +aes_ti +af9013 +af9033 +af_alg +af_key +af_packet_diag +afe4403 +afe4404 +affs +ah4 +ah6 +ahci +ahci_ceva +ahci_platform +ahci_qoriq +aic79xx +aic7xxx +aic94xx +aio_aio12_8 +aio_iiro_16 +aiptek +aircable +airo +airspy +ak7375 +ak881x +ak8974 +ak8975 +al3010 +al3320a +alcor +alcor_pci +algif_aead +algif_hash +algif_rng +algif_skcipher +alim7101_wdt +altera-ci +altera-cvp +altera-freeze-bridge +altera-msgdma +altera-pr-ip-core +altera-pr-ip-core-plat +altera-ps-spi +altera-stapl +altera_jtaguart +altera_ps2 +altera_tse +altera_uart +alx +am2315 +am53c974 +amc6821 +amd +amd5536udc_pci +amd8111e +amdgpu +amlogic-gxl-crypto +amplc_dio200 +amplc_dio200_common +amplc_dio200_pci +amplc_pc236 +amplc_pc236_common +amplc_pc263 +amplc_pci224 +amplc_pci230 +amplc_pci236 +amplc_pci263 +ams-iaq-core +ams369fg06 +analog +analogix-anx6345 +analogix-anx78xx +analogix_dp +ansi_cprng +anubis +anybuss_core +aoe +apbps2 +apds9300 +apds9802als +apds990x +apds9960 +apple-mfi-fastcharge +appledisplay +appletalk +appletouch +applicom +aptina-pll +aqc111 +aquantia +ar1021_i2c +ar5523 +ar7part +ar9331 +arasan-nand-controller +arc-rawmode +arc-rimi +arc4 +arc_ps2 +arc_uart +arcmsr +arcnet +arcpgu +arcx-anybus +arcxcnn_bl +arizona-haptics +arizona-i2c +arizona-ldo1 +arizona-micsupp +arizona-spi +ark3116 +arkfb +arp_tables +arpt_mangle +arptable_filter +as102_fe +as370-hwmon +as3711-regulator +as3711_bl +as3722-regulator +as3935 +as5011 +asc7621 +ascot2e +ashmem_linux +asix +aspeed-pwm-tacho +aspeed-video +ast +asym_tpm +async_memcpy +async_pq +async_raid6_recov +async_tx +async_xor +at24 +at25 +at76c50x-usb +at803x +at86rf230 +ata_generic +ata_piix +atbm8830 +aten +ath +ath10k_core +ath10k_pci +ath10k_sdio +ath10k_usb +ath3k +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 +atlas-ezo-sensor +atlas-sensor +atm +atmel +atmel-ecc +atmel-flexcom +atmel-hlcdc +atmel-i2c +atmel-sha204a +atmel_captouch +atmel_mxt_ts +atmel_pci +atmtcp +atp870u +atusb +atxp1 +aty128fb +atyfb +au0828 +au8522_common +au8522_decoder +au8522_dig +aufs +auo-pixcir-ts +auth_rpcgss +authenc +authencesn +autofs4 +avmfritz +ax25 +ax88179_178a +ax88796b +axi-fan-control +axis-fifo +axp20x +axp20x-i2c +axp20x-pek +axp20x-regulator +axp20x_ac_power +axp20x_adc +axp20x_battery +axp20x_usb_power +axp288_adc +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 +bareudp +batman-adv +baycom_par +baycom_ser_fdx +baycom_ser_hdx +bcache +bch +bcm-keypad +bcm-phy-lib +bcm-sf2 +bcm203x +bcm3510 +bcm54140 +bcm590xx +bcm590xx-regulator +bcm5974 +bcm7xxx +bcm87xx +bcma +bcma-hcd +bcmsysport +bd6107 +bd70528-charger +bd70528-regulator +bd70528_wdt +bd71828-regulator +bd718x7-regulator +bd9571mwv +bd9571mwv-regulator +bd99954-charger +bdc +be2iscsi +be2net +befs +bel-pfe +belkin_sa +bfa +bfq +bfs +bfusb +bh1750 +bh1770glc +bh1780 +binder_linux +binfmt_misc +blake2b_generic +blake2s_generic +block2mtd +blocklayoutdriver +blowfish_common +blowfish_generic +bluetooth +bluetooth_6lowpan +bma150 +bma220_spi +bma400_core +bma400_i2c +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 +bmi160_core +bmi160_i2c +bmi160_spi +bmp280 +bmp280-i2c +bmp280-spi +bna +bnep +bnx2 +bnx2fc +bnx2i +bnx2x +bnxt_en +bnxt_re +bochs-drm +bonding +bpa10x +bpck +bpfilter +bpqether +bq2415x_charger +bq24190_charger +bq24257_charger +bq24735-charger +bq25890_charger +bq27xxx_battery +bq27xxx_battery_hdq +bq27xxx_battery_i2c +br2684 +br_netfilter +brcmfmac +brcmsmac +brcmutil +brd +bridge +broadcom +bsd_comp +bsr +bt819 +bt856 +bt866 +bt878 +btbcm +btcoexist +btintel +btmrvl +btmrvl_sdio +btmtksdio +btmtkuart +btqca +btrfs +btrsi +btrtl +btsdio +bttv +btusb +bu21013_ts +bu21029_ts +budget +budget-av +budget-ci +budget-core +budget-patch +c67x00 +c6xdigio +c_can +c_can_pci +c_can_platform +ca8210 +cachefiles +cadence-nand-controller +cadence_wdt +cafe_ccic +cafe_nand +caif +caif_hsi +caif_serial +caif_socket +caif_usb +caif_virtio +camellia_generic +can +can-bcm +can-dev +can-gw +can-j1939 +can-raw +cap11xx +capmode +carl9170 +carminefb +cassini +cast5_generic +cast6_generic +cast_common +catc +cavium_ptp +cb710 +cb710-mmc +cb_pcidas +cb_pcidas64 +cb_pcidda +cb_pcimdas +cb_pcimdda +cc10001_adc +cc2520 +cc770 +cc770_isa +cc770_platform +ccm +ccree +ccs811 +cdc-acm +cdc-phonet +cdc-wdm +cdc_eem +cdc_ether +cdc_mbim +cdc_ncm +cdc_subset +cdns-csi2rx +cdns-csi2tx +cdns-dphy +cdns-dsi +cdns-pltfrm +cdns3 +cec +ceph +cfb +cfg80211 +cfi_cmdset_0001 +cfi_cmdset_0002 +cfi_cmdset_0020 +cfi_probe +cfi_util +cfspi_slave +ch +ch341 +ch7006 +ch9200 +chacha20poly1305 +chacha_generic +chaoskey +charlcd +chcr +chipone_icn8318 +chipreg +chnl_net +chrontel-ch7033 +ci_hdrc +ci_hdrc_imx +ci_hdrc_msm +ci_hdrc_pci +ci_hdrc_tegra +ci_hdrc_usb2 +cicada +cifs +cirrus +cirrusfb +clip +clk-bd718x7 +clk-cdce706 +clk-cdce925 +clk-cs2000-cp +clk-lochnagar +clk-max77686 +clk-max9485 +clk-palmas +clk-pwm +clk-rk808 +clk-s2mps11 +clk-si514 +clk-si5341 +clk-si5351 +clk-si544 +clk-si570 +clk-twl6040 +clk-versaclock5 +clk-wm831x +cls_basic +cls_bpf +cls_cgroup +cls_flow +cls_flower +cls_fw +cls_matchall +cls_route +cls_rsvp +cls_rsvp6 +cls_tcindex +cls_u32 +cm109 +cm32181 +cm3232 +cm3323 +cm3605 +cm36651 +cma3000_d0x +cma3000_d0x_i2c +cmac +cmdlinepart +cmm +cmtp +cnic +cobra +coda +colibri-vf50-ts +com20020 +com20020-pci +com90io +com90xx +comedi +comedi_8254 +comedi_8255 +comedi_bond +comedi_isadma +comedi_parport +comedi_pci +comedi_test +comedi_usb +comm +contec_pci_dio +cordic +core +cortina +counter +cp210x +cpc925_edac +cpcap-adc +cpcap-battery +cpcap-pwrbutton +cpcap-regulator +cpia2 +cqhci +cramfs +crc-itu-t +crc-vpmsum_test +crc32_generic +crc32c-vpmsum +crc4 +crc64 +crc7 +crc8 +crct10dif-vpmsum +cryptd +crypto_engine +crypto_safexcel +crypto_user +cryptoloop +cs3308 +cs5345 +cs53l32a +csiostor +curve25519-generic +cuse +cw1200_core +cw1200_wlan_sdio +cw1200_wlan_spi +cw2015_battery +cx18 +cx18-alsa +cx22700 +cx22702 +cx231xx +cx231xx-alsa +cx231xx-dvb +cx2341x +cx23885 +cx24110 +cx24113 +cx24116 +cx24117 +cx24120 +cx24123 +cx25821 +cx25821-alsa +cx25840 +cx82310_eth +cx88-alsa +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 +cxlflash +cy8ctma140 +cy8ctmg110_ts +cyapatp +cyber2000fb +cyberjack +cyclades +cypress_cy7c63 +cypress_firmware +cypress_m8 +cytherm +cyttsp4_core +cyttsp4_i2c +cyttsp4_spi +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-thermal +da9062_wdt +da9063-regulator +da9063_onkey +da9063_wdt +da9150-charger +da9150-core +da9150-fg +da9150-gpadc +da9210-regulator +da9211-regulator +dac02 +daqboard2000 +das08 +das08_isa +das08_pci +das16 +das16m1 +das1800 +das6402 +das800 +davicom +dax_pmem +dax_pmem_compat +dax_pmem_core +db9 +dc395x +dccp +dccp_diag +dccp_ipv4 +dccp_ipv6 +ddbridge +ddbridge-dummy-fe +de2104x +de4x5 +decnet +defxx +denali +denali_dt +denali_pci +des_generic +designware_i2s +device_dax +dfl +dfl-afu +dfl-fme +dfl-fme-br +dfl-fme-mgr +dfl-fme-region +dfl-pci +dht11 +diag +dib0070 +dib0090 +dib3000mb +dib3000mc +dib7000m +dib7000p +dib8000 +dib9000 +dibx000_common +digi_acceleport +digicolor-usart +diskonchip +display-connector +dl2k +dlci +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-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 +dmfe +dmm32at +dmx3191d +dn_rtmsg +dnet +dp83640 +dp83822 +dp83848 +dp83867 +dp83869 +dp83tc811 +dpot-dac +dps310 +drbd +drivetemp +drm +drm_kms_helper +drm_mipi_dbi +drm_panel_orientation_quirks +drm_ttm_helper +drm_vram_helper +drv260x +drv2665 +drv2667 +drx39xyj +drxd +drxk +ds1621 +ds1682 +ds1803 +ds1wm +ds2482 +ds2490 +ds2760_battery +ds2780_battery +ds2781_battery +ds2782_battery +ds3000 +ds4424 +ds620 +dsa_core +dsbr100 +dst +dst_ca +dstr +dt2801 +dt2811 +dt2814 +dt2815 +dt2817 +dt282x +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-axi-dmac-platform +dw-edma +dw-edma-pcie +dw-hdmi +dw-hdmi-ahb-audio +dw-hdmi-cec +dw-hdmi-i2s-audio +dw-i3c-master +dw9714 +dw9807-vcm +dw_dmac +dw_dmac_core +dw_dmac_pci +dw_wdt +dwc-xlgmac +dwc2_pci +dwc3 +dwc3-haps +dwc3-of-simple +dwmac-dwc-qos-eth +dwmac-generic +dyna_pci10xx +dynapro +e100 +e1000 +e1000e +e3x0-button +e4000 +earth-pt1 +earth-pt3 +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 +ecc +ecdh_generic +echainiv +echo +ecrdsa_generic +edt-ft5x06 +ee1004 +eeprom +eeprom_93cx6 +eeprom_93xx46 +eeti_ts +efa +efs +egalax_ts +egalax_ts_serial +ehci-fsl +ehci-platform +ehset +ektf2127 +elan_i2c +elants_i2c +elo +em28xx +em28xx-alsa +em28xx-dvb +em28xx-rc +em28xx-v4l +em_canid +em_cmp +em_ipset +em_ipt +em_meta +em_nbyte +em_text +em_u32 +emc1403 +emc2103 +emc6w201 +emi26 +emi62 +empeg +ems_pci +ems_usb +emu10k1-gp +ena +enc28j60 +enclosure +encx24j600 +encx24j600-regmap +eni +enic +envelope-detector +epat +epia +epic100 +eql +erofs +esas2r +esd_usb2 +esp4 +esp4_offload +esp6 +esp6_offload +esp_scsi +essiv +et1011c +et131x +et8ek8 +ethoc +evbug +exc3000 +exfat +extcon-adc-jack +extcon-arizona +extcon-fsa9480 +extcon-gpio +extcon-max14577 +extcon-max3355 +extcon-max77693 +extcon-max77843 +extcon-max8997 +extcon-palmas +extcon-ptn5150 +extcon-rt8973a +extcon-sm5502 +extcon-usb-gpio +ezusb +f2fs +f75375s +f81232 +f81534 +f81601 +failover +fakelb +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_sys_fops +fb_tinylcd +fb_tls8204 +fb_uc1611 +fb_uc1701 +fb_upd161704 +fb_watterott +fbtft +fc0011 +fc0012 +fc0013 +fc2580 +fcoe +fcrypt +fdomain +fdomain_pci +fdp +fdp_i2c +fealnx +ff-memless +fhci +fieldbus_dev +firedtv +firewire-core +firewire-net +firewire-ohci +firewire-sbp2 +firewire-serial +fit2 +fit3 +fixed +fl512 +flexcan +floppy +fm10k +fm801-gp +fm_drv +forcedeth +fore_200e +fotg210-hcd +fotg210-udc +fou +fou6 +fpga-bridge +fpga-mgr +fpga-region +freevxfs +friq +frpw +fscache +fsi-core +fsi-master-aspeed +fsi-master-gpio +fsi-master-hub +fsi-occ +fsi-sbefifo +fsi-scom +fsia6b +fsl-edma +fsl-edma-common +fsl-enetc +fsl-enetc-mdio +fsl-enetc-ptp +fsl-enetc-vf +fsl-mph-dr-of +fsl_linflexuart +fsl_lpuart +fsl_pq_mdio +fsl_ucc_hdlc +ftdi-elan +ftdi_sio +ftl +ftm-quaddec +ftsteutates +fujitsu_ts +fusb302 +fxas21002c_core +fxas21002c_i2c +fxas21002c_spi +fxos8700_core +fxos8700_i2c +fxos8700_spi +g450_pll +g760a +g762 +g_acm_ms +g_audio +g_cdc +g_dbgp +g_ether +g_ffs +g_hid +g_mass_storage +g_midi +g_ncm +g_nokia +g_printer +g_serial +g_webcam +g_zero +gadgetfs +gamecon +gameport +garmin_gps +garp +gateworks-gsc +gb-audio-apbridgea +gb-audio-gb +gb-audio-manager +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 +gdth +gemini +gen_probe +generic +generic-adc-battery +generic_bl +genet +geneve +genwqe_card +gf2k +gfs2 +gianfar_driver +gl518sm +gl520sm +gl620a +gluebi +gm12u320 +gnss +gnss-mtk +gnss-serial +gnss-sirf +gnss-ubx +go7007 +go7007-loader +go7007-usb +goku_udc +goodix +gp2ap002 +gp2ap020a00f +gp8psk-fe +gpio +gpio-74x164 +gpio-74xx-mmio +gpio-adnp +gpio-adp5520 +gpio-adp5588 +gpio-aggregator +gpio-altera +gpio-amd-fch +gpio-arizona +gpio-bd70528 +gpio-bd71828 +gpio-bd9571mwv +gpio-beeper +gpio-cadence +gpio-charger +gpio-da9052 +gpio-da9055 +gpio-dln2 +gpio-dwapb +gpio-exar +gpio-fan +gpio-grgpio +gpio-gw-pld +gpio-hlwd +gpio-ir-recv +gpio-ir-tx +gpio-janz-ttl +gpio-kempld +gpio-logicvc +gpio-lp3943 +gpio-lp873x +gpio-lp87565 +gpio-madera +gpio-max3191x +gpio-max7300 +gpio-max7301 +gpio-max730x +gpio-max732x +gpio-max77620 +gpio-max77650 +gpio-mb86s7x +gpio-mc33880 +gpio-menz127 +gpio-moxtet +gpio-pca953x +gpio-pcf857x +gpio-pci-idio-16 +gpio-pcie-idio-24 +gpio-pisosr +gpio-rdc321x +gpio-regulator +gpio-sama5d2-piobu +gpio-siox +gpio-syscon +gpio-tpic2810 +gpio-tps65086 +gpio-tps65218 +gpio-tps65912 +gpio-tqmx86 +gpio-twl4030 +gpio-twl6040 +gpio-ucb1400 +gpio-vibra +gpio-viperboard +gpio-wcd934x +gpio-wm831x +gpio-wm8350 +gpio-wm8994 +gpio-xra1403 +gpio_backlight +gpio_decoder +gpio_keys +gpio_keys_polled +gpio_mouse +gpio_wdt +gpu-sched +gr_udc +grace +grcan +gre +greybus +grip +grip_mp +gs1662 +gs_fpga +gs_usb +gsc-hwmon +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 +gtco +gtp +guillemot +gunze +gve +habanalabs +hackrf +hamachi +hampshire +hangcheck-timer +hanwang +hci +hci_nokia +hci_uart +hci_vhci +hd3ss3220 +hd44780 +hdc100x +hdlc +hdlc_cisco +hdlc_fr +hdlc_ppp +hdlc_raw +hdlc_raw_eth +hdlc_x25 +hdlcdrv +hdma +hdma_mgmt +hdpvr +he +helene +hexium_gemini +hexium_orion +hfcmulti +hfcpci +hfcsusb +hfs +hfsplus +hi311x +hi556 +hi6210-i2s +hi6421-pmic-core +hi6421-regulator +hi6421v530-regulator +hi8435 +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-ezkey +hid-gaff +hid-gembird +hid-generic +hid-gfrm +hid-glorious +hid-gt683r +hid-gyration +hid-holtek-kbd +hid-holtek-mouse +hid-holtekff +hid-icade +hid-ite +hid-jabra +hid-kensington +hid-keytouch +hid-kye +hid-lcpower +hid-led +hid-lenovo +hid-lg-g15 +hid-logitech +hid-logitech-dj +hid-logitech-hidpp +hid-macally +hid-magicmouse +hid-maltron +hid-mcp2221 +hid-mf +hid-microsoft +hid-monterey +hid-multitouch +hid-nti +hid-ntrig +hid-ortek +hid-penmount +hid-petalynx +hid-picolcd +hid-pl +hid-plantronics +hid-primax +hid-prodikeys +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-sensor-accel-3d +hid-sensor-als +hid-sensor-custom +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-sjoy +hid-sony +hid-speedlink +hid-steam +hid-steelseries +hid-sunplus +hid-tivo +hid-tmff +hid-topseed +hid-twinhan +hid-u2fzero +hid-uclogic +hid-udraw-ps3 +hid-viewsonic +hid-waltop +hid-wiimote +hid-xinmo +hid-zpff +hid-zydacron +hideep +hidp +hih6130 +hmc425a +hmc5843_core +hmc5843_i2c +hmc5843_spi +hmc6352 +hms-profinet +hopper +horus3a +hostap +hostap_pci +hostap_plx +hp03 +hp206c +hpfs +hpilo +hpsa +hptiop +hsi +hsi_char +hso +hsr +ht16k33 +htc-pasic3 +hts221 +hts221_i2c +hts221_spi +htu21 +huawei_cdc_ncm +hvcs +hvcserver +hwmon-vid +hwpoison-inject +hx711 +hx8357 +hx8357d +hyperbus-core +i2400m +i2400m-usb +i2c-algo-bit +i2c-algo-pca +i2c-ali1535 +i2c-ali1563 +i2c-ali15x3 +i2c-amd756 +i2c-amd8111 +i2c-arb-gpio-challenge +i2c-cbus-gpio +i2c-demux-pinctrl +i2c-designware-pci +i2c-diolan-u2c +i2c-dln2 +i2c-fsi +i2c-gpio +i2c-hid +i2c-i801 +i2c-isch +i2c-kempld +i2c-matroxfb +i2c-mpc +i2c-mux +i2c-mux-gpio +i2c-mux-gpmux +i2c-mux-ltc4306 +i2c-mux-mlxcpld +i2c-mux-pca9541 +i2c-mux-pca954x +i2c-mux-pinctrl +i2c-mux-reg +i2c-nforce2 +i2c-nvidia-gpu +i2c-ocores +i2c-parport +i2c-pca-platform +i2c-piix4 +i2c-rk3x +i2c-robotfuzz-osif +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-xiic +i3c +i3c-master-cdns +i40e +i40iw +i5k_amb +i6300esb +i740fb +iavf +ib_cm +ib_core +ib_ipoib +ib_iser +ib_isert +ib_mthca +ib_srp +ib_srpt +ib_umad +ib_uverbs +ibm-cffps +ibmaem +ibmpex +ibmpowernv +ibmveth +ibmvfc +ibmvmc +ibmvnic +ibmvscsi +ibmvscsis +ice +ice40-spi +icom +icp +icp10100 +icp_multi +icplus +ics932s401 +ideapad_slidebar +idma64 +idmouse +idt77252 +idt_89hpesx +idt_gen2 +idt_gen3 +idtcps +ieee802154 +ieee802154_6lowpan +ieee802154_socket +ifb +ifcvf +ife +ifi_canfd +iforce +iforce-serio +iforce-usb +igb +igbvf +igc +igorplugusb +iguanair +ii_pci20kc +iio-mux +iio-rescale +iio-trig-hrtimer +iio-trig-interrupt +iio-trig-loop +iio-trig-sysfs +iio_dummy +iio_hwmon +ila +ili210x +ili9225 +ili922x +ili9320 +ili9341 +ili9486 +img-ascii-lcd +img-i2s-in +img-i2s-out +img-parallel-out +img-spdif-in +img-spdif-out +imm +imon +imon_raw +ims-pcu +imx214 +imx219 +imx258 +imx274 +imx290 +imx319 +imx355 +imx6ul_tsc +ina209 +ina2xx +ina2xx-adc +ina3221 +industrialio +industrialio-buffer-cb +industrialio-buffer-dma +industrialio-buffer-dmaengine +industrialio-configfs +industrialio-hw-consumer +industrialio-sw-device +industrialio-sw-trigger +industrialio-triggered-buffer +industrialio-triggered-event +inet_diag +inexio +inftl +initio +input-leds +input-polldev +inspur-ipsps +int51x1 +intel-xway +intel_th +intel_th_gth +intel_th_msu +intel_th_msu_sink +intel_th_pci +intel_th_pti +intel_th_sth +intel_vr_nor +interact +inv-mpu6050 +inv-mpu6050-i2c +inv-mpu6050-spi +io_edgeport +io_ti +ionic +iowarrior +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_wlc +ip_vs_wrr +ip_vti +ipack +ipaq +ipcomp +ipcomp6 +iphase +ipheth +ipip +ipmi_devintf +ipmi_msghandler +ipmi_powernv +ipmi_poweroff +ipmi_si +ipmi_ssif +ipmi_watchdog +ipoctal +ipr +ips +ipt_CLUSTERIP +ipt_ECN +ipt_REJECT +ipt_SYNPROXY +ipt_ah +ipt_rpfilter +iptable_filter +iptable_mangle +iptable_nat +iptable_raw +iptable_security +ipvlan +ipvtap +ipw +ipw2100 +ipw2200 +iqs269a +iqs5xx +iqs620at-temp +iqs621-als +iqs624-pos +iqs62x +iqs62x-keys +ir-hix5hd2 +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-spi +ir-usb +ir-xmp-decoder +ir35221 +ir38064 +irps5401 +irq-madera +iscsi_boot_sysfs +iscsi_target_mod +iscsi_tcp +isdnhdlc +isicom +isight_firmware +isl29003 +isl29018 +isl29020 +isl29028 +isl29125 +isl29501 +isl6271a-regulator +isl6405 +isl6421 +isl6423 +isl68137 +isl9305 +isofs +isp116x-hcd +isp1704_charger +isp1760 +it913x +itd1000 +itg3200 +iuu_phoenix +ivtv +ivtv-alsa +ivtvfb +iw_cm +iw_cxgb4 +iwl3945 +iwl4965 +iwldvm +iwlegacy +iwlmvm +iwlwifi +ix2505v +ixgb +ixgbe +ixgbevf +janz-cmodio +janz-ican3 +jc42 +jedec_probe +jffs2 +jfs +jmb38x_ms +jme +joydev +joydump +jr3_pci +jsa1212 +jsm +kafs +kalmia +kaweth +kbic +kbtab +kcm +kcomedilib +ke_counter +kempld-core +kempld_wdt +kernelcapi +keyspan +keyspan_pda +keyspan_remote +keywrap +kfifo_buf +khazad +kheaders +kl5kusb105 +kmem +kmx61 +kobil_sct +komeda +kpc2000 +kpc2000_i2c +kpc2000_spi +kpc_dma +ks0108 +ks0127 +ks7010 +ks8842 +ks8851 +ks8851_mll +ksz8795 +ksz8795_spi +ksz884x +ksz9477 +ksz9477_i2c +ksz9477_spi +ksz_common +ktti +kvaser_pci +kvaser_pciefd +kvaser_usb +kvm +kvm-hv +kvm-pr +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 +l4f00242t03 +l64781 +lan743x +lan78xx +lan9303-core +lan9303_i2c +lan9303_mdio +lanai +lantiq_gswip +lapb +lapbether +lattice-ecp3-config +lcd +ldusb +lec +led-class-flash +led_bl +leds-88pm860x +leds-aat1290 +leds-adp5520 +leds-an30259a +leds-as3645a +leds-aw2013 +leds-bcm6328 +leds-bcm6358 +leds-bd2802 +leds-blinkm +leds-cpcap +leds-cr0014114 +leds-da903x +leds-da9052 +leds-dac124s085 +leds-el15203000 +leds-gpio +leds-is31fl319x +leds-is31fl32xx +leds-ktd2692 +leds-lm3530 +leds-lm3532 +leds-lm3533 +leds-lm355x +leds-lm3601x +leds-lm36274 +leds-lm3642 +leds-lm3692x +leds-lm3697 +leds-lp3944 +leds-lp3952 +leds-lp5521 +leds-lp5523 +leds-lp5562 +leds-lp55xx-common +leds-lp8501 +leds-lp8788 +leds-lp8860 +leds-lt3593 +leds-max77650 +leds-max77693 +leds-max8997 +leds-mc13783 +leds-menf21bmc +leds-mlxreg +leds-mt6323 +leds-pca9532 +leds-pca955x +leds-pca963x +leds-powernv +leds-pwm +leds-regulator +leds-sgm3140 +leds-spi-byte +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-gpio +ledtrig-heartbeat +ledtrig-netdev +ledtrig-oneshot +ledtrig-pattern +ledtrig-timer +ledtrig-transient +ledtrig-usbport +lego_ev3_battery +legousbtower +lg-vl600 +lg2160 +lgdt3305 +lgdt3306a +lgdt330x +lgs8gl5 +lgs8gxx +lib80211 +lib80211_crypt_ccmp +lib80211_crypt_tkip +lib80211_crypt_wep +libahci +libahci_platform +libarc4 +libblake2s +libblake2s-generic +libceph +libchacha +libchacha20poly1305 +libcomposite +libcrc32c +libcurve25519 +libcurve25519-generic +libcxgb +libcxgbi +libdes +libertas +libertas_sdio +libertas_spi +libertas_tf +libertas_tf_usb +libfc +libfcoe +libipw +libiscsi +libiscsi_tcp +libpoly1305 +libsas +lightning +lineage-pem +linear +liquidio +liquidio_vf +lis3lv02d +lis3lv02d_i2c +lis3lv02d_spi +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 +lochnagar-hwmon +lochnagar-regulator +lockd +lp +lp3943 +lp3971 +lp3972 +lp855x_bl +lp8727_charger +lp872x +lp873x +lp873x-regulator +lp8755 +lp87565 +lp87565-regulator +lp8788-buck +lp8788-charger +lp8788-ldo +lp8788_adc +lp8788_bl +lpc_ich +lpc_sch +lpddr_cmds +lpfc +lru_cache +lrw +lt3651-charger +ltc1660 +ltc2471 +ltc2485 +ltc2496 +ltc2497 +ltc2497-core +ltc2632 +ltc2941-battery-gauge +ltc2945 +ltc2947-core +ltc2947-i2c +ltc2947-spi +ltc2978 +ltc2983 +ltc2990 +ltc3589 +ltc3676 +ltc3815 +ltc4151 +ltc4215 +ltc4222 +ltc4245 +ltc4260 +ltc4261 +ltr501 +ltv350qv +lv0104cs +lv5207lp +lvds-codec +lvstest +lxt +lz4 +lz4hc +lz4hc_compress +m2m-deinterlace +m52790 +m5mols +m62332 +m88ds3103 +m88rs2000 +m88rs6000t +mISDN_core +mISDN_dsp +mISDNinfineon +mISDNipac +mISDNisar +m_can +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 +macsec +macvlan +macvtap +madera +madera-i2c +madera-spi +mag3110 +magellan +mailbox-altera +mailbox-test +mantis +mantis_core +map_absent +map_funcs +map_ram +map_rom +marvell +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 +max11801_ts +max1241 +max1363 +max14577-regulator +max14577_charger +max14656_charger_detector +max1586 +max16064 +max16065 +max1619 +max16601 +max1668 +max17040_battery +max17042_battery +max1721x_battery +max197 +max20730 +max20751 +max2165 +max2175 +max30100 +max30102 +max3100 +max31722 +max31730 +max31785 +max31790 +max31856 +max3420_udc +max3421-hcd +max34440 +max44000 +max44009 +max517 +max5432 +max5481 +max5487 +max5821 +max63xx_wdt +max6621 +max6639 +max6642 +max6650 +max6697 +max6875 +max7359_keypad +max77620-regulator +max77620_thermal +max77620_wdt +max77650 +max77650-charger +max77650-onkey +max77650-regulator +max77686-regulator +max77693-haptic +max77693-regulator +max77693_charger +max77802-regulator +max77826-regulator +max8649 +max8660 +max8688 +max8903_charger +max8907 +max8907-regulator +max8925-regulator +max8925_bl +max8925_onkey +max8925_power +max8952 +max8973-regulator +max8997-regulator +max8997_charger +max8997_haptic +max8998 +max8998_charger +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 +mc44s803 +mcam-core +mcb +mcb-lpc +mcb-pci +mcba_usb +mceusb +mchp23k256 +mcp16502 +mcp251x +mcp3021 +mcp320x +mcp3422 +mcp3911 +mcp4018 +mcp41010 +mcp4131 +mcp4531 +mcp4725 +mcp4922 +mcr20a +mcs5000_ts +mcs7830 +mcs_touchkey +mct_u232 +md-cluster +md4 +md5-ppc +mdc800 +mdev +mdio +mdio-bcm-unimac +mdio-bitbang +mdio-cavium +mdio-gpio +mdio-hisi-femac +mdio-i2c +mdio-ipq4019 +mdio-ipq8064 +mdio-mscc-miim +mdio-mux +mdio-mux-gpio +mdio-mux-mmioreg +mdio-mux-multiplexer +mdio-mvusb +mdio-octeon +mdio-thunder +mdio-xpcs +me4000 +me_daq +megachips-stdpxxxx-ge-b850v3-fw +megaraid +megaraid_mbox +megaraid_mm +megaraid_sas +melfas_mip4 +memory-notifier-error-inject +memstick +men_z135_uart +men_z188_adc +mena21_wdt +menf21bmc +menf21bmc_hwmon +menf21bmc_wdt +menz69_wdt +metro-usb +metronomefb +mf6x4 +mgag200 +mhi +mi0283qt +michael_mic +micrel +microchip +microchip_t1 +microread +microread_i2c +microtek +mii +minix +mip6 +mite +mk712 +mkiss +ml86v7667 +mlx4_core +mlx4_en +mlx4_ib +mlx5_core +mlx5_ib +mlx90614 +mlx90632 +mlxfw +mlxsw_core +mlxsw_i2c +mlxsw_minimal +mlxsw_pci +mlxsw_spectrum +mlxsw_switchib +mlxsw_switchx2 +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_dim2 +most_i2c +most_net +most_sound +most_usb +most_video +motorola-cpcap +moxa +moxtet +mp2629 +mp2629_adc +mp2629_charger +mp5416 +mp8859 +mp886x +mpc624 +mpl115 +mpl115_i2c +mpl115_spi +mpl3115 +mpls_gso +mpls_iptunnel +mpls_router +mpoa +mpq7920 +mpr121_touchkey +mpt3sas +mptbase +mptctl +mptfc +mptlan +mptsas +mptscsih +mptspi +mpu3050 +mrf24j40 +mrp +ms5611_core +ms5611_i2c +ms5611_spi +ms5637 +ms_block +ms_sensors_i2c +mscc +mscc_ocelot_common +msdos +msi001 +msi2500 +msp3400 +mspro_block +mt2060 +mt2063 +mt20xx +mt2131 +mt2266 +mt312 +mt352 +mt6311-regulator +mt6323-regulator +mt6358-regulator +mt6360-core +mt6397 +mt6397-regulator +mt7530 +mt76 +mt76-usb +mt7601u +mt7603e +mt7615-common +mt7615e +mt7663u +mt76x0-common +mt76x02-lib +mt76x02-usb +mt76x0e +mt76x0u +mt76x2-common +mt76x2e +mt76x2u +mt7915e +mt9m001 +mt9m032 +mt9m111 +mt9p031 +mt9t001 +mt9t112 +mt9v011 +mt9v032 +mt9v111 +mtd +mtd_blkdevs +mtd_dataflash +mtdblock +mtdblock_ro +mtdoops +mtdpstore +mtdram +mtdswap +mtip32xx +mtk-pmic-keys +mtk-sd +mtouch +multipath +multiq3 +musb_hdrc +mux-adg792a +mux-adgs1408 +mux-core +mux-gpio +mux-mmio +mv88e6060 +mv88e6xxx +mv_u3d_core +mv_udc +mvmdio +mvsas +mvumi +mwifiex +mwifiex_pcie +mwifiex_sdio +mwifiex_usb +mwl8k +mxb +mxc4005 +mxc6255 +mxic_nand +mxl111sf-demod +mxl111sf-tuner +mxl301rf +mxl5005s +mxl5007t +mxl5xx +mxser +mxsfb +mxuport +myrb +myri10ge +myrs +n5pf +n_gsm +n_hdlc +n_tracerouter +n_tracesink +nand +nand_ecc +nandcore +nandsim +national +natsemi +nau7802 +navman +nb8800 +nbd +nci +nci_spi +nci_uart +nct7802 +nct7904 +nd_blk +nd_btt +nd_pmem +nd_virtio +ne2k-pci +neofb +net1080 +net2272 +net2280 +net_failover +netconsole +netdevsim +netjet +netlink_diag +netrom +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_flow_table_ipv4 +nf_flow_table_ipv6 +nf_log_arp +nf_log_bridge +nf_log_common +nf_log_ipv4 +nf_log_ipv6 +nf_log_netdev +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 +nfnetlink +nfnetlink_acct +nfnetlink_cthelper +nfnetlink_cttimeout +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_counter +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_objref +nft_osf +nft_queue +nft_quota +nft_redir +nft_reject +nft_reject_bridge +nft_reject_inet +nft_reject_ipv4 +nft_reject_ipv6 +nft_socket +nft_synproxy +nft_tproxy +nft_tunnel +nft_xfrm +nftl +ngene +nhc_dest +nhc_fragment +nhc_hop +nhc_ipv6 +nhc_mobility +nhc_routing +nhc_udp +nhpoly1305 +ni_6527 +ni_65xx +ni_660x +ni_670x +ni_at_a2150 +ni_at_ao +ni_atmio +ni_atmio16d +ni_labpc +ni_labpc_common +ni_labpc_isadma +ni_labpc_pci +ni_pcidio +ni_pcimio +ni_routing +ni_tio +ni_tiocmd +ni_usb6501 +nicpf +nicstar +nicvf +nilfs2 +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 +noa1305 +noon010pc30 +nosy +notifier-error-inject +nouveau +nozomi +npcm750-pwm-fan +nps_enet +ns +ns558 +ns83820 +nsh +ntb +ntb_hw_idt +ntb_hw_switchtec +ntb_netdev +ntb_perf +ntb_pingpong +ntb_tool +ntb_transport +ntc_thermistor +ntfs +null_blk +nvidiafb +nvme +nvme-core +nvme-fabrics +nvme-fc +nvme-loop +nvme-rdma +nvme-tcp +nvmem-rave-sp-eeprom +nvmem-reboot-mode +nvmem_qcom-spmi-sdam +nvmet +nvmet-fc +nvmet-rdma +nvmet-tcp +nwl-dsi +nx-compress +nx-compress-powernv +nx-compress-pseries +nxp-nci +nxp-nci_i2c +nxp-ptn3460 +nxp-tja11xx +nxt200x +nxt6000 +objagg +ocelot_vsc7514 +ocfb +ocfs2 +ocfs2_dlm +ocfs2_dlmfs +ocfs2_nodemanager +ocfs2_stack_o2cb +ocfs2_stack_user +ocfs2_stackglue +ocrdma +ocxl +of-fpga-region +of_mmc_spi +of_pmem +of_xilinx_wdt +ofb +ofpart +ohci-platform +omap4-keypad +omfs +omninet +on20 +on26 +onenand +opal-prd +opencores-kbd +openvswitch +oprofile +opt3001 +opticon +option +or51132 +or51211 +orangefs +orinoco +orinoco_nortel +orinoco_plx +orinoco_tmd +orinoco_usb +oti6858 +otm3225a +ov13858 +ov2640 +ov2659 +ov2680 +ov2685 +ov2740 +ov5640 +ov5645 +ov5647 +ov5670 +ov5675 +ov5695 +ov6650 +ov7251 +ov7640 +ov7670 +ov772x +ov7740 +ov8856 +ov9640 +ov9650 +overlay +oxu210hp-hcd +p54common +p54pci +p54spi +p54usb +p8022 +pa12203001 +palmas-pwrbutton +palmas-regulator +palmas_gpadc +pandora_bl +panel +panel-arm-versatile +panel-asus-z00t-tm5p5-n35596 +panel-boe-himax8279d +panel-boe-tv101wum-nl6 +panel-elida-kd35t133 +panel-feixin-k101-im2ba02 +panel-feiyang-fy07024di26a30d +panel-ilitek-ili9322 +panel-ilitek-ili9881c +panel-innolux-p079zca +panel-jdi-lt070me05000 +panel-kingdisplay-kd097d04 +panel-leadtek-ltk050h3146w +panel-leadtek-ltk500hd1829 +panel-lg-lb035q02 +panel-lg-lg4573 +panel-lvds +panel-nec-nl8048hl11 +panel-novatek-nt35510 +panel-novatek-nt39016 +panel-olimex-lcd-olinuxino +panel-orisetech-otm8009a +panel-osd-osd101t2587-53ts +panel-panasonic-vvx10f034n00 +panel-raspberrypi-touchscreen +panel-raydium-rm67191 +panel-raydium-rm68200 +panel-rocktech-jh057n00900 +panel-ronbo-rb070d30 +panel-samsung-ld9040 +panel-samsung-s6d16d0 +panel-samsung-s6e3ha2 +panel-samsung-s6e63j0x03 +panel-samsung-s6e63m0 +panel-samsung-s6e88a0-ams452ef01 +panel-samsung-s6e8aa0 +panel-seiko-43wvf1g +panel-sharp-lq101r1sx01 +panel-sharp-ls037v7dw01 +panel-sharp-ls043t1le01 +panel-simple +panel-sitronix-st7701 +panel-sitronix-st7789v +panel-sony-acx424akp +panel-sony-acx565akm +panel-tpo-td028ttec1 +panel-tpo-td043mtea1 +panel-tpo-tpg110 +panel-truly-nt35597 +panel-visionox-rm69299 +panel-xinpeng-xpp055c272 +papr_scm +parade-ps8622 +parade-ps8640 +paride +parkbd +parman +parport +parport_ax88796 +parport_pc +parport_serial +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_of_platform +pata_oldpiix +pata_opti +pata_optidma +pata_pdc2027x +pata_pdc202xx_old +pata_piccolo +pata_platform +pata_radisys +pata_rdc +pata_rz1000 +pata_sch +pata_serverworks +pata_sil680 +pata_sis +pata_sl82c105 +pata_triflex +pata_via +pblk +pc300too +pcap-regulator +pcap_keys +pcap_ts +pcbc +pcd +pcf50633 +pcf50633-adc +pcf50633-backlight +pcf50633-charger +pcf50633-gpio +pcf50633-input +pcf50633-regulator +pcf8574_keypad +pcf8591 +pch_udc +pci +pci-pf-stub +pci-stub +pci200syn +pcips2 +pcl711 +pcl724 +pcl726 +pcl730 +pcl812 +pcl816 +pcl818 +pcm3724 +pcmad +pcmda12 +pcmmio +pcmuio +pcnet32 +pcrypt +pcspkr +pcwd_pci +pcwd_usb +pd +pda_power +pdc_adma +peak_pci +peak_pciefd +peak_usb +pegasus +pegasus_notetaker +penmount +pf +pfuze100-regulator +pg +phantom +phonet +phram +phy-bcm-kona-usb2 +phy-cadence-salvo +phy-cadence-sierra +phy-cadence-torrent +phy-cpcap-usb +phy-exynos-usb2 +phy-fsl-imx8-mipi-dphy +phy-fsl-imx8mq-usb +phy-generic +phy-gpio-vbus-usb +phy-isp1301 +phy-mapphone-mdm6600 +phy-ocelot-serdes +phy-pxa-28nm-hsic +phy-pxa-28nm-usb2 +phy-qcom-usb-hs +phy-qcom-usb-hsic +phy-tahvo +phy-tusb1210 +phylink +physmap +pi3usb30532 +pi433 +pinctrl-axp209 +pinctrl-da9062 +pinctrl-lochnagar +pinctrl-madera +pinctrl-max77620 +pinctrl-mcp23s08 +pinctrl-mcp23s08_i2c +pinctrl-mcp23s08_spi +pinctrl-rk805 +pinctrl-stmfx +ping +pistachio-internal-dac +pixcir_i2c_ts +pkcs7_test_key +pkcs8_key_parser +pktcdvd +pktgen +pl2303 +plat-ram +plat_nand +platform_lcd +platform_mhu +plip +plusb +pluto2 +plx_dma +plx_pci +pm-notifier-error-inject +pm2fb +pm3fb +pm80xx +pmbus +pmbus_core +pmc551 +pmcraid +pms7003 +pn532_uart +pn533 +pn533_i2c +pn533_usb +pn544 +pn544_i2c +pn_pep +pnv-php +poly1305_generic +port100 +powermate +powernv-op-panel +powernv-rng +powernv_flash +powr1220 +ppa +ppdev +ppp_async +ppp_deflate +ppp_mppe +ppp_synctty +pppoatm +pppoe +pppox +pps-gpio +pps-ldisc +pps_parport +pptp +pretimeout_panic +prism2_usb +ps2-gpio +ps2mult +psample +pseries-rng +pseries_energy +psmouse +psnap +pstore_blk +pstore_zone +psxpad-spi +pt +ptp-qoriq +ptp_clockmatrix +ptp_idt82p33 +ptp_ines +pulse8-cec +pulsedlight-lidar-lite-v2 +pv88060-regulator +pv88080-regulator +pv88090-regulator +pvpanic +pvrusb2 +pwc +pwm-atmel-hlcdc +pwm-beeper +pwm-fan +pwm-fsl-ftm +pwm-iqs620a +pwm-ir-tx +pwm-lp3943 +pwm-pca9685 +pwm-regulator +pwm-twl +pwm-twl-led +pwm-vibra +pwm_bl +pwrseq_emmc +pwrseq_sd8787 +pwrseq_simple +pxa27x_udc +pxe1610 +pxrc +qca8k +qca_7k_common +qcaspi +qcauart +qcaux +qcom-cpr +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 +qinfo_probe +qla1280 +qla2xxx +qla3xxx +qla4xxx +qlcnic +qlge +qm1d1b0004 +qm1d1c0042 +qmi_wwan +qnx4 +qnx6 +qrtr +qrtr-mhi +qrtr-smd +qrtr-tun +qsemi +qt1010 +qt1050 +qt1070 +qt2160 +qtnfmac +qtnfmac_pcie +quatech2 +quota_tree +quota_v1 +quota_v2 +qxl +r592 +r6040 +r8152 +r8169 +r8188eu +r8192e_pci +r8192u_usb +r820t +r852 +r8712u +r8723bs +r8a66597-hcd +r8a66597-udc +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-si476x +radio-tea5764 +radio-usb-si4713 +radio-wl1273 +raid0 +raid1 +raid10 +raid456 +raid6_pq +raid_class +rainshadow-cec +ramoops +rave-sp +rave-sp-backlight +rave-sp-pwrbutton +rave-sp-wdt +raw +raw_diag +raw_gadget +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-behold +rc-behold-columbus +rc-budget-ci-old +rc-cec +rc-cinergy +rc-cinergy-1400 +rc-core +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-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-kworld-315u +rc-kworld-pc150u +rc-kworld-plus-tv-analog +rc-leadtek-y04g0051 +rc-lme2510 +rc-loopback +rc-manli +rc-medion-x10 +rc-medion-x10-digitainer +rc-medion-x10-or2x +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-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-tango +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-dvd +rc-zx-irdec +rc5t583-regulator +rcar_dw_hdmi +rcuperf +rdc321x-southbridge +rdma_cm +rdma_rxe +rdma_ucm +rds +rds_rdma +rds_tcp +realtek +realtek-smi +reboot-mode +redboot +redrat3 +reed_solomon +regmap-i3c +regmap-sccb +regmap-sdw +regmap-slimbus +regmap-spmi +regmap-w1 +regulator-haptic +reiserfs +repaper +reset-ti-syscon +resistive-adc-touch +retu-mfd +retu-pwrbutton +retu_wdt +rfc1051 +rfc1201 +rfcomm +rfd77402 +rfd_ftl +rfkill-gpio +rio-scan +rio_cm +rio_mport_cdev +rionet +rivafb +rj54n1cb0c +rk805-pwrkey +rk808 +rk808-regulator +rm3100-core +rm3100-i2c +rm3100-spi +rmd128 +rmd160 +rmd256 +rmd320 +rmi_core +rmi_i2c +rmi_smbus +rmi_spi +rmnet +rn5t618 +rn5t618-adc +rn5t618-regulator +rn5t618_wdt +rnbd-client +rnbd-server +rndis_host +rndis_wlan +rockchip +rocker +rocket +rohm-bd70528 +rohm-bd71828 +rohm-bd718x7 +rohm-regulator +rohm_bu21023 +roles +romfs +rose +rotary_encoder +rp2 +rpadlpar_io +rpaphp +rpcrdma +rpcsec_gss_krb5 +rpmsg_char +rpmsg_core +rpr0521 +rsi_91x +rsi_sdio +rsi_usb +rsxx +rt2400pci +rt2500pci +rt2500usb +rt2800lib +rt2800mmio +rt2800pci +rt2800usb +rt2x00lib +rt2x00mmio +rt2x00pci +rt2x00usb +rt5033 +rt5033-regulator +rt5033_battery +rt61pci +rt73usb +rt9455_charger +rtas_flash +rtc-88pm80x +rtc-88pm860x +rtc-ab-b5ze-s3 +rtc-ab-eoz9 +rtc-ab3100 +rtc-abx80x +rtc-as3722 +rtc-bd70528 +rtc-bq32k +rtc-bq4802 +rtc-cadence +rtc-cmos +rtc-cpcap +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-hid-sensor-time +rtc-hym8563 +rtc-isl12022 +rtc-isl12026 +rtc-isl1208 +rtc-lp8788 +rtc-m41t80 +rtc-m41t93 +rtc-m41t94 +rtc-m48t35 +rtc-m48t59 +rtc-m48t86 +rtc-max6900 +rtc-max6902 +rtc-max6916 +rtc-max77686 +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-r7301 +rtc-r9701 +rtc-rc5t583 +rtc-rc5t619 +rtc-rk808 +rtc-rp5c01 +rtc-rs5c348 +rtc-rs5c372 +rtc-rv3028 +rtc-rv3029c2 +rtc-rv8803 +rtc-rx4581 +rtc-rx6110 +rtc-rx8010 +rtc-rx8025 +rtc-rx8581 +rtc-s35390a +rtc-s5m +rtc-sd3078 +rtc-stk17ta8 +rtc-tps6586x +rtc-tps65910 +rtc-tps80031 +rtc-twl +rtc-v3020 +rtc-wm831x +rtc-wm8350 +rtc-x1205 +rtc-zynqmp +rtc_cmos_setup +rtd520 +rti800 +rti802 +rtl2830 +rtl2832 +rtl2832_sdr +rtl8150 +rtl8187 +rtl8188ee +rtl818x_pci +rtl8192c-common +rtl8192ce +rtl8192cu +rtl8192de +rtl8192ee +rtl8192se +rtl8723-common +rtl8723ae +rtl8723be +rtl8821ae +rtl8xxxu +rtl_pci +rtl_usb +rtllib +rtllib_crypt_ccmp +rtllib_crypt_tkip +rtllib_crypt_wep +rtlwifi +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_8822b +rtw88_8822be +rtw88_8822c +rtw88_8822ce +rtw88_core +rtw88_pci +rx51_battery +rxrpc +s1d13xxxfb +s2250 +s2255drv +s2io +s2mpa01 +s2mps11 +s3fb +s3fwrn5 +s3fwrn5_i2c +s526 +s5c73m3 +s5h1409 +s5h1411 +s5h1420 +s5h1432 +s5k4ecgx +s5k5baf +s5k6a3 +s5k6aa +s5m8767 +s626 +s6sy761 +s921 +saa6588 +saa6752hs +saa7110 +saa7115 +saa7127 +saa7134 +saa7134-alsa +saa7134-dvb +saa7134-empress +saa7134-go7007 +saa7146 +saa7146_vv +saa7164 +saa717x +saa7185 +saa7706h +safe_serial +salsa20_generic +sample-trace-array +samsung-keypad +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 +sbp_target +sbs-battery +sbs-charger +sbs-manager +sc16is7xx +sc92031 +sca3000 +scanlog +sch_atm +sch_cake +sch_cbq +sch_cbs +sch_choke +sch_codel +sch_drr +sch_dsmark +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_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 +sctp +sctp_diag +sd_adc_modulator +sdhci +sdhci-cadence +sdhci-milbeaut +sdhci-of-arasan +sdhci-of-aspeed +sdhci-of-at91 +sdhci-of-dwcmshc +sdhci-of-esdhc +sdhci-of-hlwd +sdhci-omap +sdhci-pci +sdhci-pltfm +sdhci-xenon-driver +sdhci_am654 +sdhci_f_sdh30 +sdio_uart +seed +sensorhub +serial_ir +serio_raw +sermouse +serpent_generic +serport +ses +sf-pdma +sfc +sfc-falcon +sfp +sgi_w1 +sgp30 +sha1-powerpc +sha3_generic +shark2 +shiftfs +sht15 +sht21 +sht3x +shtc1 +si1133 +si1145 +si2157 +si2165 +si2168 +si21xx +si4713 +si476x-core +si7005 +si7020 +sidewinder +sierra +sierra_net +sifive +sii902x +sii9234 +sil-sii8620 +sil164 +silead +simple-bridge +siox-bus-gpio +siox-core +sir_ir +sirf-audio-codec +sis190 +sis5595 +sis900 +sis_i2c +sisfb +sisusbvga +sit +siw +sja1000 +sja1000_isa +sja1000_platform +sja1105 +skd +skfp +skge +sky2 +sky81452 +sky81452-backlight +sky81452-regulator +sl811-hcd +slcan +slg51000-regulator +slicoss +slim-qcom-ctrl +slimbus +slip +slram +sm3_generic +sm4_generic +sm501 +sm501fb +sm712fb +sm750fb +sm_common +sm_ftl +smartpqi +smb347-charger +smc +smc_diag +smiapp +smiapp-pll +smipcie +smm665 +smsc +smsc47m192 +smsc75xx +smsc911x +smsc9420 +smsc95xx +smscufx +smsdvb +smsmdtv +smssdio +smsusb +snd +snd-ac97-codec +snd-ad1889 +snd-ak4113 +snd-ak4114 +snd-ak4xxx-adda +snd-aloop +snd-als4000 +snd-atiixp +snd-atiixp-modem +snd-au8810 +snd-au8820 +snd-au8830 +snd-aw2 +snd-bcd2000 +snd-bebob +snd-bt87x +snd-ca0106 +snd-cmipci +snd-cs4281 +snd-cs46xx +snd-ctxfi +snd-darla20 +snd-darla24 +snd-dice +snd-dummy +snd-echo3g +snd-ens1370 +snd-ens1371 +snd-fireface +snd-firewire-digi00x +snd-firewire-lib +snd-firewire-motu +snd-firewire-tascam +snd-fireworks +snd-fm801 +snd-gina20 +snd-gina24 +snd-hda-codec +snd-hda-codec-analog +snd-hda-codec-ca0110 +snd-hda-codec-ca0132 +snd-hda-codec-cirrus +snd-hda-codec-cmedia +snd-hda-codec-conexant +snd-hda-codec-generic +snd-hda-codec-hdmi +snd-hda-codec-idt +snd-hda-codec-realtek +snd-hda-codec-si3054 +snd-hda-codec-via +snd-hda-core +snd-hda-intel +snd-hdsp +snd-hdspm +snd-hrtimer +snd-hwdep +snd-i2c +snd-ice1724 +snd-ice17xx-ak4xxx +snd-indigo +snd-indigodj +snd-indigodjx +snd-indigoio +snd-indigoiox +snd-intel-dspcfg +snd-intel8x0 +snd-intel8x0m +snd-isight +snd-korg1212 +snd-layla20 +snd-layla24 +snd-lola +snd-lx6464es +snd-mia +snd-mixart +snd-mixer-oss +snd-mona +snd-mpu401 +snd-mpu401-uart +snd-mtpav +snd-mts64 +snd-nm256 +snd-opl3-lib +snd-opl3-synth +snd-oxfw +snd-oxygen +snd-oxygen-lib +snd-pcm +snd-pcm-dmaengine +snd-pcxhr +snd-portman2x4 +snd-pt2258 +snd-rawmidi +snd-riptide +snd-rme32 +snd-rme96 +snd-rme9652 +snd-sb-common +snd-seq +snd-seq-device +snd-seq-dummy +snd-seq-midi +snd-seq-midi-emul +snd-seq-midi-event +snd-seq-virmidi +snd-serial-u16550 +snd-soc-63xx +snd-soc-ac97 +snd-soc-acp-da7219mx98357-mach +snd-soc-acp-rt5645-mach +snd-soc-adau-utils +snd-soc-adau1701 +snd-soc-adau1761 +snd-soc-adau1761-i2c +snd-soc-adau1761-spi +snd-soc-adau17x1 +snd-soc-adau7002 +snd-soc-adau7118 +snd-soc-adau7118-hw +snd-soc-adau7118-i2c +snd-soc-ak4104 +snd-soc-ak4118 +snd-soc-ak4458 +snd-soc-ak4554 +snd-soc-ak4613 +snd-soc-ak4642 +snd-soc-ak5386 +snd-soc-ak5558 +snd-soc-alc5623 +snd-soc-audio-graph-card +snd-soc-bd28623 +snd-soc-bt-sco +snd-soc-core +snd-soc-cpcap +snd-soc-cs35l32 +snd-soc-cs35l33 +snd-soc-cs35l34 +snd-soc-cs35l35 +snd-soc-cs35l36 +snd-soc-cs4265 +snd-soc-cs4270 +snd-soc-cs4271 +snd-soc-cs4271-i2c +snd-soc-cs4271-spi +snd-soc-cs42l42 +snd-soc-cs42l51 +snd-soc-cs42l51-i2c +snd-soc-cs42l52 +snd-soc-cs42l56 +snd-soc-cs42l73 +snd-soc-cs42xx8 +snd-soc-cs42xx8-i2c +snd-soc-cs43130 +snd-soc-cs4341 +snd-soc-cs4349 +snd-soc-cs53l30 +snd-soc-cx2072x +snd-soc-da7213 +snd-soc-da7219 +snd-soc-dmic +snd-soc-es7134 +snd-soc-es7241 +snd-soc-es8316 +snd-soc-es8328 +snd-soc-es8328-i2c +snd-soc-es8328-spi +snd-soc-fsl-asrc +snd-soc-fsl-audmix +snd-soc-fsl-easrc +snd-soc-fsl-esai +snd-soc-fsl-micfil +snd-soc-fsl-mqs +snd-soc-fsl-sai +snd-soc-fsl-spdif +snd-soc-fsl-ssi +snd-soc-gtm601 +snd-soc-hdmi-codec +snd-soc-imx-audmux +snd-soc-inno-rk3036 +snd-soc-lochnagar-sc +snd-soc-max9759 +snd-soc-max98088 +snd-soc-max98357a +snd-soc-max98373 +snd-soc-max98390 +snd-soc-max98504 +snd-soc-max9860 +snd-soc-max9867 +snd-soc-max98927 +snd-soc-mikroe-proto +snd-soc-msm8916-analog +snd-soc-msm8916-digital +snd-soc-mt6351 +snd-soc-mt6358 +snd-soc-mt6660 +snd-soc-nau8540 +snd-soc-nau8810 +snd-soc-nau8822 +snd-soc-nau8824 +snd-soc-pcm1681 +snd-soc-pcm1789-codec +snd-soc-pcm1789-i2c +snd-soc-pcm179x-codec +snd-soc-pcm179x-i2c +snd-soc-pcm179x-spi +snd-soc-pcm186x +snd-soc-pcm186x-i2c +snd-soc-pcm186x-spi +snd-soc-pcm3060 +snd-soc-pcm3060-i2c +snd-soc-pcm3060-spi +snd-soc-pcm3168a +snd-soc-pcm3168a-i2c +snd-soc-pcm3168a-spi +snd-soc-pcm512x +snd-soc-pcm512x-i2c +snd-soc-pcm512x-spi +snd-soc-rk3328 +snd-soc-rl6231 +snd-soc-rt1308-sdw +snd-soc-rt5616 +snd-soc-rt5631 +snd-soc-rt5645 +snd-soc-rt5682 +snd-soc-rt5682-sdw +snd-soc-rt700 +snd-soc-rt711 +snd-soc-rt715 +snd-soc-sgtl5000 +snd-soc-si476x +snd-soc-sigmadsp +snd-soc-sigmadsp-i2c +snd-soc-sigmadsp-regmap +snd-soc-simple-amplifier +snd-soc-simple-card +snd-soc-simple-card-utils +snd-soc-spdif-rx +snd-soc-spdif-tx +snd-soc-ssm2305 +snd-soc-ssm2602 +snd-soc-ssm2602-i2c +snd-soc-ssm2602-spi +snd-soc-ssm4567 +snd-soc-sta32x +snd-soc-sta350 +snd-soc-sti-sas +snd-soc-tas2552 +snd-soc-tas2562 +snd-soc-tas2770 +snd-soc-tas5086 +snd-soc-tas571x +snd-soc-tas5720 +snd-soc-tas6424 +snd-soc-tda7419 +snd-soc-tfa9879 +snd-soc-tlv320adcx140 +snd-soc-tlv320aic23 +snd-soc-tlv320aic23-i2c +snd-soc-tlv320aic23-spi +snd-soc-tlv320aic31xx +snd-soc-tlv320aic32x4 +snd-soc-tlv320aic32x4-i2c +snd-soc-tlv320aic32x4-spi +snd-soc-tlv320aic3x +snd-soc-tpa6130a2 +snd-soc-ts3a227e +snd-soc-tscs42xx +snd-soc-tscs454 +snd-soc-uda1334 +snd-soc-wcd9335 +snd-soc-wcd934x +snd-soc-wm8510 +snd-soc-wm8523 +snd-soc-wm8524 +snd-soc-wm8580 +snd-soc-wm8711 +snd-soc-wm8728 +snd-soc-wm8731 +snd-soc-wm8737 +snd-soc-wm8741 +snd-soc-wm8750 +snd-soc-wm8753 +snd-soc-wm8770 +snd-soc-wm8776 +snd-soc-wm8782 +snd-soc-wm8804 +snd-soc-wm8804-i2c +snd-soc-wm8804-spi +snd-soc-wm8903 +snd-soc-wm8904 +snd-soc-wm8960 +snd-soc-wm8962 +snd-soc-wm8974 +snd-soc-wm8978 +snd-soc-wm8985 +snd-soc-wsa881x +snd-soc-xlnx-formatter-pcm +snd-soc-xlnx-i2s +snd-soc-xlnx-spdif +snd-soc-xtfpga-i2s +snd-soc-zl38060 +snd-soc-zx-aud96p22 +snd-sof +snd-sof-of +snd-sof-pci +snd-timer +snd-ua101 +snd-usb-6fire +snd-usb-audio +snd-usb-caiaq +snd-usb-hiface +snd-usb-line6 +snd-usb-pod +snd-usb-podhd +snd-usb-toneport +snd-usb-usx2y +snd-usb-variax +snd-usbmidi-lib +snd-via82xx +snd-via82xx-modem +snd-virmidi +snd-virtuoso +snd-vx-lib +snd-vx222 +snd-ymfpci +snic +snps_udc_core +snps_udc_plat +softdog +softing +solo6x10 +solos-pci +sony-btf-mpx +soundcore +soundwire-bus +soundwire-qcom +sp2 +sp8870 +sp887x +spaceball +spaceorb +sparse-keymap +spcp8x5 +speakup +speakup_acntsa +speakup_apollo +speakup_audptr +speakup_bns +speakup_decext +speakup_dectlk +speakup_dummy +speakup_ltlk +speakup_soft +speakup_spkout +speakup_txprt +speedfax +speedtch +spi-altera +spi-amd +spi-axi-spi-engine +spi-bitbang +spi-butterfly +spi-cadence +spi-dln2 +spi-dw +spi-dw-mmio +spi-dw-pci +spi-fsi +spi-gpio +spi-lm70llp +spi-loopback-test +spi-mux +spi-mxic +spi-nor +spi-nxp-fspi +spi-oc-tiny +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 +sr030pc30 +sr9700 +sr9800 +srf04 +srf08 +ssb +ssb-hcd +ssd1307fb +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_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 +stkwebcam +stm_console +stm_core +stm_ftrace +stm_heartbeat +stm_p_basic +stm_p_sys-t +stmfts +stmfx +stmmac +stmmac-pci +stmmac-platform +stmpe-adc +stmpe-keypad +stmpe-ts +stowaway +stp +stpmic1 +stpmic1_onkey +stpmic1_regulator +stpmic1_wdt +streamzap +streebog_generic +stts751 +stv0288 +stv0297 +stv0299 +stv0367 +stv0900 +stv090x +stv0910 +stv6110 +stv6110x +stv6111 +sundance +sungem +sungem_phy +sunhme +suni +sunkbd +sunrpc +sur40 +surface3_spi +svgalib +switchtec +sx8 +sx8654 +sx9310 +sx9500 +sy8106a-regulator +sy8824x +sym53c8xx +symbolserial +synaptics_i2c +synaptics_usb +synclink +synclink_gt +synclinkmp +syscon-reboot-mode +syscopyarea +sysfillrect +sysimgblt +sysv +t5403 +tag_8021q +tag_ar9331 +tag_brcm +tag_dsa +tag_edsa +tag_gswip +tag_ksz +tag_lan9303 +tag_mtk +tag_ocelot +tag_qca +tag_sja1105 +tag_trailer +tap +target_core_file +target_core_iblock +target_core_mod +target_core_pscsi +target_core_user +tc-dwc-g210 +tc-dwc-g210-pci +tc-dwc-g210-pltfrm +tc358743 +tc358764 +tc358767 +tc358768 +tc3589x-keypad +tc654 +tc74 +tc90522 +tca6416-keypad +tca8418_keypad +tcan4x5x +tcm_fc +tcm_loop +tcm_qla2xxx +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_rt1711h +tcpm +tcrypt +tcs3414 +tcs3472 +tda10021 +tda10023 +tda10048 +tda1004x +tda10071 +tda10086 +tda18212 +tda18218 +tda18250 +tda18271 +tda18271c2dd +tda1997x +tda665x +tda7432 +tda8083 +tda8261 +tda826x +tda827x +tda8290 +tda9840 +tda9887 +tda9950 +tda998x +tdfxfb +tdo24m +tea +tea575x +tea5761 +tea5767 +tea6415c +tea6420 +team +team_mode_activebackup +team_mode_broadcast +team_mode_loadbalance +team_mode_random +team_mode_roundrobin +tef6862 +tehuti +teranetics +test_blackhole_dev +test_bpf +test_power +tg3 +tgr192 +thc63lvd1024 +thermal-generic-adc +thermal_mmio +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-ads124s08 +ti-ads7950 +ti-ads8344 +ti-ads8688 +ti-dac082s085 +ti-dac5571 +ti-dac7311 +ti-dac7612 +ti-lmu +ti-sn65dsi86 +ti-tfp410 +ti-tlc4541 +ti-tpd12s015 +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 +tls +tlv320aic23b +tm2-touchkey +tm6000 +tm6000-alsa +tm6000-dvb +tmdc +tmp006 +tmp007 +tmp102 +tmp103 +tmp108 +tmp401 +tmp421 +tmp513 +torture +toshsd +touchit213 +touchright +touchwin +tpci200 +tpl0102 +tpm_atmel +tpm_key_parser +tpm_st33zp24 +tpm_st33zp24_i2c +tpm_st33zp24_spi +tpm_tis_spi +tpm_vtpm_proxy +tps40422 +tps51632-regulator +tps53679 +tps6105x +tps6105x-regulator +tps62360-regulator +tps65010 +tps65023-regulator +tps6507x +tps6507x-regulator +tps6507x-ts +tps65086 +tps65086-regulator +tps65090-charger +tps65090-regulator +tps65132-regulator +tps65218 +tps65218-pwrbutton +tps65218-regulator +tps6524x-regulator +tps6586x-regulator +tps65910-regulator +tps65912-regulator +tps6598x +tps80031-regulator +tqmx86 +trace-printk +trancevibrator +trf7970a +tridentfb +ts2020 +ts_bm +ts_fsm +ts_kmp +tsc2004 +tsc2005 +tsc2007 +tsc200x-core +tsc40 +tsi568 +tsi57x +tsl2550 +tsl2563 +tsl2583 +tsl2772 +tsl4531 +tsys01 +tsys02d +ttm +ttpci-eeprom +ttusb_dec +ttusbdecfe +ttusbir +ttynull +tua6100 +tua9001 +tulip +tuner +tuner-simple +tuner-types +tuner-xc2028 +tunnel4 +tunnel6 +turbografx +tvaudio +tveeprom +tvp514x +tvp5150 +tvp7002 +tw2804 +tw5864 +tw68 +tw686x +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_common +twofish_generic +typec +typec_displayport +typec_nvidia +typec_ucsi +typhoon +u132-hcd +uPD60620 +u_audio +u_ether +u_serial +uacce +uartlite +uas +ubi +ubifs +ubuntu-host +ucan +ucb1400_core +ucb1400_ts +ucc_uart +ucd9000 +ucd9200 +ucs1002_power +ucsi_ccg +uda1342 +udc-core +udc-xilinx +udf +udl +udlfb +udp_diag +udp_tunnel +ueagle-atm +ufs +ufshcd-core +ufshcd-dwc +ufshcd-pci +ufshcd-pltfrm +uhid +uio +uio_aec +uio_cif +uio_dmem_genirq +uio_fsl_elbc_gpcm +uio_mf624 +uio_netx +uio_pci_generic +uio_pdrv_genirq +uio_pruss +uio_sercos3 +uleds +uli526x +ulpi +umem +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_midi +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_uac1 +usb_f_uac1_legacy +usb_f_uac2 +usb_f_uvc +usb_wwan +usbatm +usbdux +usbduxfast +usbduxsigma +usbhid +usbip-core +usbip-host +usbip-vudc +usbkbd +usblcd +usblp +usbmisc_imx +usbmon +usbmouse +usbnet +usbserial +usbsevseg +usbtest +usbtmc +usbtouchscreen +usbtv +usbvision +usdhi6rol0 +userio +userspace-consumer +ushc +uss720 +uvcvideo +uvesafb +v4l2-dv-timings +v4l2-flash-led-class +v4l2-fwnode +v4l2-mem2mem +v4l2-tpg +vcan +vcnl3020 +vcnl4000 +vcnl4035 +vctrl-regulator +vdpa +vdpa_sim +veml6030 +veml6070 +ves1820 +ves1x93 +veth +vf610_adc +vf610_dac +vfio_mdev +vga16fb +vgastate +vgem +vgg2432a4 +vhci-hcd +vhost +vhost_iotlb +vhost_net +vhost_scsi +vhost_vdpa +vhost_vsock +via-rhine +via-sdmmc +via-velocity +via686a +vicodec +video-i2c +video-mux +videobuf-core +videobuf-dma-sg +videobuf-vmalloc +videobuf2-common +videobuf2-dma-contig +videobuf2-dma-sg +videobuf2-dvb +videobuf2-memops +videobuf2-v4l2 +videobuf2-vmalloc +videodev +vim2m +vimc +viperboard +viperboard_adc +virt-dma +virt_wifi +virtio-gpu +virtio-rng +virtio_blk +virtio_crypto +virtio_input +virtio_net +virtio_pmem +virtio_rpmsg_bus +virtio_scsi +virtio_vdpa +virtiofs +virtual +visor +vitesse +vitesse-vsc73xx-core +vitesse-vsc73xx-platform +vitesse-vsc73xx-spi +vivid +vkms +vl53l0x-i2c +vl6180 +vmac +vme_fake +vme_tsi148 +vme_user +vme_vmivme7805 +vmk80xx +vmw_vsock_virtio_transport +vmw_vsock_virtio_transport_common +vmx-crypto +vp27smpx +vport-geneve +vport-gre +vport-vxlan +vpx3220 +vrf +vringh +vs6624 +vsock +vsock_diag +vsock_loopback +vsockmon +vsxxxaa +vt6655_stage +vt6656_stage +vt8231 +vt8623fb +vub300 +vx855 +vxcan +vxge +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 +w83773g +w83781d +w83791d +w83792d +w83793 +w83795 +w83l785ts +w83l786ng +wacom +wacom_i2c +wacom_serial4 +wacom_w8001 +walkera0701 +wanxl +warrior +wbsd +wcd934x +wcn36xx +wd719x +wdrtas +wdt87xx_i2c +wdt_pci +wfx +whiteheat +wil6210 +wilc1000 +wilc1000-sdio +wilc1000-spi +wimax +winbond-840 +windfarm_core +wire +wireguard +wishbone-serial +wl1251 +wl1251_sdio +wl1251_spi +wl1273-core +wl12xx +wl18xx +wlcore +wlcore_sdio +wlcore_spi +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 +wm97xx-ts +wp512 +x25 +x25_asy +x_tables +xbox_remote +xc4000 +xc5000 +xcbc +xdpe12284 +xfrm4_tunnel +xfrm6_tunnel +xfrm_algo +xfrm_interface +xfrm_ipcomp +xfrm_user +xfs +xhci-pci +xhci-pci-renesas +xhci-plat-hcd +xilinx-pr-decoupler +xilinx-spi +xilinx-tpg +xilinx-video +xilinx-vtc +xilinx-xadc +xilinx_emac +xilinx_gmii2rgmii +xilinx_ps2 +xilinx_sdfec +xilinx_uartps +xillybus_core +xillybus_of +xillybus_pcie +xlnx_vcu +xor +xpad +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 +yealink +yellowfin +yurex +z3fold +zaurus +zavl +zcommon +zd1201 +zd1211rw +zd1301 +zd1301_demod +zet6223 +zforce_ts +zfs +zhenhua +ziirave_wdt +zl10036 +zl10039 +zl10353 +zl6100 +zlua +znvpair +zonefs +zopt2201 +zpa2326 +zpa2326_i2c +zpa2326_spi +zr364xx +zram +zstd +zunicode +zx-tdm --- linux-azure-5.8-5.8.0.orig/debian.master/abi/5.8.0-50.56/ppc64el/generic.retpoline +++ linux-azure-5.8-5.8.0/debian.master/abi/5.8.0-50.56/ppc64el/generic.retpoline @@ -0,0 +1 @@ +# RETPOLINE NOT ENABLED --- linux-azure-5.8-5.8.0.orig/debian.master/abi/5.8.0-50.56/s390x/generic +++ linux-azure-5.8-5.8.0/debian.master/abi/5.8.0-50.56/s390x/generic @@ -0,0 +1,13059 @@ +EXPORT_SYMBOL crypto/ecc 0x16e410ff vli_from_be64 +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 0x9263b417 ecc_point_mult_shamir +EXPORT_SYMBOL crypto/ecc 0x92668805 vli_cmp +EXPORT_SYMBOL crypto/ecc 0x9f6efabd vli_sub +EXPORT_SYMBOL crypto/ecc 0xa76b31a2 crypto_ecdh_shared_secret +EXPORT_SYMBOL crypto/ecc 0xd6315f31 ecc_gen_privkey +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 0x05d9de98 crypto_nhpoly1305_setkey +EXPORT_SYMBOL crypto/nhpoly1305 0x73f47ae6 crypto_nhpoly1305_final +EXPORT_SYMBOL crypto/nhpoly1305 0x7811a918 crypto_nhpoly1305_update +EXPORT_SYMBOL crypto/nhpoly1305 0x8370a931 crypto_nhpoly1305_final_helper +EXPORT_SYMBOL crypto/nhpoly1305 0xd2f04c0e crypto_nhpoly1305_init +EXPORT_SYMBOL crypto/nhpoly1305 0xec1cb070 crypto_nhpoly1305_update_helper +EXPORT_SYMBOL crypto/sha3_generic 0x540afe95 crypto_sha3_final +EXPORT_SYMBOL crypto/sha3_generic 0x5b74cb29 crypto_sha3_update +EXPORT_SYMBOL crypto/sha3_generic 0xf1ff5ea9 crypto_sha3_init +EXPORT_SYMBOL crypto/sm3_generic 0x1870479c crypto_sm3_update +EXPORT_SYMBOL crypto/sm3_generic 0xe46caea0 crypto_sm3_finup +EXPORT_SYMBOL crypto/xor 0x5b6c00e6 xor_blocks +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/gpu/drm/drm 0x022fe008 drm_gem_dumb_destroy +EXPORT_SYMBOL drivers/gpu/drm/drm 0x02fab4c5 drm_connector_register +EXPORT_SYMBOL drivers/gpu/drm/drm 0x03156232 __drm_get_edid_firmware_path +EXPORT_SYMBOL drivers/gpu/drm/drm 0x03c7cc76 drm_invalid_op +EXPORT_SYMBOL drivers/gpu/drm/drm 0x05454327 drm_mode_crtc_set_gamma_size +EXPORT_SYMBOL drivers/gpu/drm/drm 0x07081932 drm_probe_ddc +EXPORT_SYMBOL drivers/gpu/drm/drm 0x070b28aa drm_ht_remove_item +EXPORT_SYMBOL drivers/gpu/drm/drm 0x0712e21d drm_edid_get_monitor_name +EXPORT_SYMBOL drivers/gpu/drm/drm 0x0719309a drm_panel_unprepare +EXPORT_SYMBOL drivers/gpu/drm/drm 0x072fb602 drm_legacy_ioremapfree +EXPORT_SYMBOL drivers/gpu/drm/drm 0x07358a75 drm_gem_shmem_vunmap +EXPORT_SYMBOL drivers/gpu/drm/drm 0x07ecad05 drm_encoder_init +EXPORT_SYMBOL drivers/gpu/drm/drm 0x07f88521 drm_edid_is_valid +EXPORT_SYMBOL drivers/gpu/drm/drm 0x08a996b3 drm_gem_shmem_get_pages +EXPORT_SYMBOL drivers/gpu/drm/drm 0x091e112e drm_plane_create_zpos_property +EXPORT_SYMBOL drivers/gpu/drm/drm 0x0a72f765 drm_clflush_virt_range +EXPORT_SYMBOL drivers/gpu/drm/drm 0x0bc0ab08 drm_atomic_normalize_zpos +EXPORT_SYMBOL drivers/gpu/drm/drm 0x0c9c3d4b drm_atomic_set_crtc_for_connector +EXPORT_SYMBOL drivers/gpu/drm/drm 0x0d481339 drm_hdmi_avi_infoframe_bars +EXPORT_SYMBOL drivers/gpu/drm/drm 0x0d5621e3 drm_mode_create_suggested_offset_properties +EXPORT_SYMBOL drivers/gpu/drm/drm 0x0dee1c9a drm_match_cea_mode +EXPORT_SYMBOL drivers/gpu/drm/drm 0x0e28b663 drm_mode_create_from_cmdline_mode +EXPORT_SYMBOL drivers/gpu/drm/drm 0x0ecd5d24 drm_gtf_mode +EXPORT_SYMBOL drivers/gpu/drm/drm 0x0ee311a5 drm_atomic_bridge_chain_disable +EXPORT_SYMBOL drivers/gpu/drm/drm 0x0f0f456f drm_vma_offset_manager_destroy +EXPORT_SYMBOL drivers/gpu/drm/drm 0x0f852145 drm_release_noglobal +EXPORT_SYMBOL drivers/gpu/drm/drm 0x0fd60df2 drm_get_connector_status_name +EXPORT_SYMBOL drivers/gpu/drm/drm 0x10058e44 drm_mode_create_aspect_ratio_property +EXPORT_SYMBOL drivers/gpu/drm/drm 0x10487b1c drm_mode_object_put +EXPORT_SYMBOL drivers/gpu/drm/drm 0x107742a9 drm_get_subpixel_order_name +EXPORT_SYMBOL drivers/gpu/drm/drm 0x10c62b61 __drm_printfn_debug +EXPORT_SYMBOL drivers/gpu/drm/drm 0x1155b97d drm_framebuffer_remove +EXPORT_SYMBOL drivers/gpu/drm/drm 0x1161e9e0 drm_syncobj_create +EXPORT_SYMBOL drivers/gpu/drm/drm 0x11944c55 drm_atomic_set_fence_for_plane +EXPORT_SYMBOL drivers/gpu/drm/drm 0x128fc1a4 drm_atomic_state_init +EXPORT_SYMBOL drivers/gpu/drm/drm 0x132e7bfe drm_vma_offset_lookup_locked +EXPORT_SYMBOL drivers/gpu/drm/drm 0x13e14103 drm_mode_equal_no_clocks_no_stereo +EXPORT_SYMBOL drivers/gpu/drm/drm 0x14a0383e drm_client_register +EXPORT_SYMBOL drivers/gpu/drm/drm 0x1557022c drm_gem_dmabuf_release +EXPORT_SYMBOL drivers/gpu/drm/drm 0x15d8aa41 __drm_printfn_seq_file +EXPORT_SYMBOL drivers/gpu/drm/drm 0x16ac2597 drm_printf +EXPORT_SYMBOL drivers/gpu/drm/drm 0x172597f7 drm_gem_map_attach +EXPORT_SYMBOL drivers/gpu/drm/drm 0x17a9f07f drm_gem_mmap +EXPORT_SYMBOL drivers/gpu/drm/drm 0x186255d5 drm_clflush_pages +EXPORT_SYMBOL drivers/gpu/drm/drm 0x18d9e6a1 drm_connector_set_tile_property +EXPORT_SYMBOL drivers/gpu/drm/drm 0x1a310ace drm_bridge_add +EXPORT_SYMBOL drivers/gpu/drm/drm 0x1a411479 drm_syncobj_free +EXPORT_SYMBOL drivers/gpu/drm/drm 0x1abdc77e drm_dev_unregister +EXPORT_SYMBOL drivers/gpu/drm/drm 0x1adcfcf4 drm_crtc_check_viewport +EXPORT_SYMBOL drivers/gpu/drm/drm 0x1b132945 drm_hdmi_avi_infoframe_from_display_mode +EXPORT_SYMBOL drivers/gpu/drm/drm 0x1ca32c8f drm_writeback_queue_job +EXPORT_SYMBOL drivers/gpu/drm/drm 0x1da20406 drm_i2c_encoder_dpms +EXPORT_SYMBOL drivers/gpu/drm/drm 0x1efa8be9 drm_syncobj_get_handle +EXPORT_SYMBOL drivers/gpu/drm/drm 0x1f302c23 drm_crtc_vblank_helper_get_vblank_timestamp +EXPORT_SYMBOL drivers/gpu/drm/drm 0x2155ff4d drm_modeset_lock_single_interruptible +EXPORT_SYMBOL drivers/gpu/drm/drm 0x2183c08c drm_mm_scan_add_block +EXPORT_SYMBOL drivers/gpu/drm/drm 0x23ede52b drm_mode_config_reset +EXPORT_SYMBOL drivers/gpu/drm/drm 0x243bb9fd drm_vblank_init +EXPORT_SYMBOL drivers/gpu/drm/drm 0x24ca578b drm_crtc_vblank_helper_get_vblank_timestamp_internal +EXPORT_SYMBOL drivers/gpu/drm/drm 0x2532689b drm_mode_is_420 +EXPORT_SYMBOL drivers/gpu/drm/drm 0x258a5b9e drm_connector_set_link_status_property +EXPORT_SYMBOL drivers/gpu/drm/drm 0x25daad93 __drm_mm_interval_first +EXPORT_SYMBOL drivers/gpu/drm/drm 0x271f0a22 drm_syncobj_add_point +EXPORT_SYMBOL drivers/gpu/drm/drm 0x272529b9 drm_bridge_chain_mode_valid +EXPORT_SYMBOL drivers/gpu/drm/drm 0x2754dad8 drm_mm_reserve_node +EXPORT_SYMBOL drivers/gpu/drm/drm 0x275ce71b drm_send_event_locked +EXPORT_SYMBOL drivers/gpu/drm/drm 0x28872458 drm_panel_remove +EXPORT_SYMBOL drivers/gpu/drm/drm 0x28c86af2 drm_framebuffer_lookup +EXPORT_SYMBOL drivers/gpu/drm/drm 0x28f30434 drm_plane_create_alpha_property +EXPORT_SYMBOL drivers/gpu/drm/drm 0x29f078d1 drm_mode_legacy_fb_format +EXPORT_SYMBOL drivers/gpu/drm/drm 0x2a6048f2 drm_client_rotation +EXPORT_SYMBOL drivers/gpu/drm/drm 0x2a962499 drm_mm_scan_init_with_range +EXPORT_SYMBOL drivers/gpu/drm/drm 0x2af3314d drm_is_current_master +EXPORT_SYMBOL drivers/gpu/drm/drm 0x2b627997 drm_i2c_encoder_save +EXPORT_SYMBOL drivers/gpu/drm/drm 0x2bc9b9f8 drm_atomic_state_default_clear +EXPORT_SYMBOL drivers/gpu/drm/drm 0x2d50570f drm_rect_calc_hscale +EXPORT_SYMBOL drivers/gpu/drm/drm 0x2f97d8b2 drm_crtc_send_vblank_event +EXPORT_SYMBOL drivers/gpu/drm/drm 0x2fe74cd2 drm_crtc_handle_vblank +EXPORT_SYMBOL drivers/gpu/drm/drm 0x3018bf6a drm_property_create_enum +EXPORT_SYMBOL drivers/gpu/drm/drm 0x304013a1 drm_crtc_vblank_restore +EXPORT_SYMBOL drivers/gpu/drm/drm 0x305c6548 drm_atomic_private_obj_init +EXPORT_SYMBOL drivers/gpu/drm/drm 0x315bc43e drm_gem_unlock_reservations +EXPORT_SYMBOL drivers/gpu/drm/drm 0x318476b5 drm_mode_object_get +EXPORT_SYMBOL drivers/gpu/drm/drm 0x31b8a5e3 __drm_set_edid_firmware_path +EXPORT_SYMBOL drivers/gpu/drm/drm 0x323d7ab5 drm_gem_prime_import_dev +EXPORT_SYMBOL drivers/gpu/drm/drm 0x32df2e21 drm_hdcp_update_content_protection +EXPORT_SYMBOL drivers/gpu/drm/drm 0x34144df7 drm_wait_one_vblank +EXPORT_SYMBOL drivers/gpu/drm/drm 0x34f9444a drm_atomic_check_only +EXPORT_SYMBOL drivers/gpu/drm/drm 0x34fc058d drm_bridge_chain_pre_enable +EXPORT_SYMBOL drivers/gpu/drm/drm 0x3503d682 drm_mode_vrefresh +EXPORT_SYMBOL drivers/gpu/drm/drm 0x35742b4b drm_plane_create_color_properties +EXPORT_SYMBOL drivers/gpu/drm/drm 0x35afae24 __drm_puts_seq_file +EXPORT_SYMBOL drivers/gpu/drm/drm 0x36ddec95 drm_atomic_set_mode_prop_for_crtc +EXPORT_SYMBOL drivers/gpu/drm/drm 0x3768f844 drm_object_attach_property +EXPORT_SYMBOL drivers/gpu/drm/drm 0x378d294c drm_mode_is_420_also +EXPORT_SYMBOL drivers/gpu/drm/drm 0x38804f60 drm_vma_offset_manager_init +EXPORT_SYMBOL drivers/gpu/drm/drm 0x397f3ea7 drm_flip_work_init +EXPORT_SYMBOL drivers/gpu/drm/drm 0x39f8aae2 drm_dev_alloc +EXPORT_SYMBOL drivers/gpu/drm/drm 0x3a0a37f5 drm_property_create_bool +EXPORT_SYMBOL drivers/gpu/drm/drm 0x3a9c8386 drm_send_event +EXPORT_SYMBOL drivers/gpu/drm/drm 0x3ba17eab drm_ht_insert_item +EXPORT_SYMBOL drivers/gpu/drm/drm 0x3bf13853 drm_master_put +EXPORT_SYMBOL drivers/gpu/drm/drm 0x3cc3ac54 drm_framebuffer_unregister_private +EXPORT_SYMBOL drivers/gpu/drm/drm 0x3dc04c21 drm_mode_plane_set_obj_prop +EXPORT_SYMBOL drivers/gpu/drm/drm 0x3dc69544 drm_property_lookup_blob +EXPORT_SYMBOL drivers/gpu/drm/drm 0x3eeba81f drm_get_edid +EXPORT_SYMBOL drivers/gpu/drm/drm 0x3f389eac drm_gem_shmem_create_with_handle +EXPORT_SYMBOL drivers/gpu/drm/drm 0x3fbf3c5f drm_gem_shmem_unpin +EXPORT_SYMBOL drivers/gpu/drm/drm 0x403b0458 drm_dev_enter +EXPORT_SYMBOL drivers/gpu/drm/drm 0x40b0e48b drm_client_dev_hotplug +EXPORT_SYMBOL drivers/gpu/drm/drm 0x41ddd285 drm_any_plane_has_format +EXPORT_SYMBOL drivers/gpu/drm/drm 0x4302691a drm_event_reserve_init_locked +EXPORT_SYMBOL drivers/gpu/drm/drm 0x4326ab44 drm_gem_shmem_purge +EXPORT_SYMBOL drivers/gpu/drm/drm 0x4347d8d5 drm_dev_get +EXPORT_SYMBOL drivers/gpu/drm/drm 0x4365579f drm_warn_on_modeset_not_all_locked +EXPORT_SYMBOL drivers/gpu/drm/drm 0x43674f9e drm_atomic_bridge_chain_post_disable +EXPORT_SYMBOL drivers/gpu/drm/drm 0x43748907 drm_client_framebuffer_create +EXPORT_SYMBOL drivers/gpu/drm/drm 0x4423f170 drm_panel_add +EXPORT_SYMBOL drivers/gpu/drm/drm 0x4611a90d drm_gem_handle_create +EXPORT_SYMBOL drivers/gpu/drm/drm 0x46b9dcfc drm_atomic_set_mode_for_crtc +EXPORT_SYMBOL drivers/gpu/drm/drm 0x46ff6354 drm_connector_list_iter_next +EXPORT_SYMBOL drivers/gpu/drm/drm 0x474156b5 drm_mode_equal +EXPORT_SYMBOL drivers/gpu/drm/drm 0x4744d973 drm_bridge_chain_mode_set +EXPORT_SYMBOL drivers/gpu/drm/drm 0x47831126 drm_hdmi_infoframe_set_hdr_metadata +EXPORT_SYMBOL drivers/gpu/drm/drm 0x47a8f266 drm_add_edid_modes +EXPORT_SYMBOL drivers/gpu/drm/drm 0x47f985aa drm_edid_duplicate +EXPORT_SYMBOL drivers/gpu/drm/drm 0x484036de drm_connector_attach_vrr_capable_property +EXPORT_SYMBOL drivers/gpu/drm/drm 0x48527c3e drm_mode_validate_driver +EXPORT_SYMBOL drivers/gpu/drm/drm 0x48ce9350 drm_writeback_signal_completion +EXPORT_SYMBOL drivers/gpu/drm/drm 0x492992c1 drm_dev_unplug +EXPORT_SYMBOL drivers/gpu/drm/drm 0x4951cdc9 drm_writeback_connector_init +EXPORT_SYMBOL drivers/gpu/drm/drm 0x49dedc82 drm_gem_prime_handle_to_fd +EXPORT_SYMBOL drivers/gpu/drm/drm 0x4a2b3424 drm_gem_create_mmap_offset +EXPORT_SYMBOL drivers/gpu/drm/drm 0x4a887555 drm_modeset_backoff +EXPORT_SYMBOL drivers/gpu/drm/drm 0x4a8c0666 drm_connector_attach_tv_margin_properties +EXPORT_SYMBOL drivers/gpu/drm/drm 0x4ac44834 __drm_atomic_helper_disable_plane +EXPORT_SYMBOL drivers/gpu/drm/drm 0x4b7ebf95 drm_mm_remove_node +EXPORT_SYMBOL drivers/gpu/drm/drm 0x4c2cbc64 drm_mode_put_tile_group +EXPORT_SYMBOL drivers/gpu/drm/drm 0x4c500e16 drm_display_info_set_bus_formats +EXPORT_SYMBOL drivers/gpu/drm/drm 0x4cd22ae3 drm_plane_init +EXPORT_SYMBOL drivers/gpu/drm/drm 0x4d05cfde drm_connector_attach_content_protection_property +EXPORT_SYMBOL drivers/gpu/drm/drm 0x4d59685a drm_connector_init_with_ddc +EXPORT_SYMBOL drivers/gpu/drm/drm 0x4e095f11 drm_get_format_name +EXPORT_SYMBOL drivers/gpu/drm/drm 0x4e7a2eaa drm_atomic_get_private_obj_state +EXPORT_SYMBOL drivers/gpu/drm/drm 0x4eb411f8 drm_modeset_unlock_all +EXPORT_SYMBOL drivers/gpu/drm/drm 0x4efd6854 drm_gem_shmem_print_info +EXPORT_SYMBOL drivers/gpu/drm/drm 0x4f1248cd drm_atomic_commit +EXPORT_SYMBOL drivers/gpu/drm/drm 0x4f18a150 __drm_debug +EXPORT_SYMBOL drivers/gpu/drm/drm 0x50674de7 drm_timeout_abs_to_jiffies +EXPORT_SYMBOL drivers/gpu/drm/drm 0x506c998d drm_dev_set_unique +EXPORT_SYMBOL drivers/gpu/drm/drm 0x50e61d93 drm_i2c_encoder_restore +EXPORT_SYMBOL drivers/gpu/drm/drm 0x52ea4819 drm_atomic_nonblocking_commit +EXPORT_SYMBOL drivers/gpu/drm/drm 0x538b7ee5 drm_connector_cleanup +EXPORT_SYMBOL drivers/gpu/drm/drm 0x5432d2ba drm_mode_set_config_internal +EXPORT_SYMBOL drivers/gpu/drm/drm 0x55074423 drm_universal_plane_init +EXPORT_SYMBOL drivers/gpu/drm/drm 0x55420ed8 drm_gem_object_init +EXPORT_SYMBOL drivers/gpu/drm/drm 0x55fc9dde drm_client_release +EXPORT_SYMBOL drivers/gpu/drm/drm 0x56445ab1 drm_color_lut_check +EXPORT_SYMBOL drivers/gpu/drm/drm 0x569440c1 drm_atomic_get_new_bridge_state +EXPORT_SYMBOL drivers/gpu/drm/drm 0x56a94b11 drm_connector_list_iter_end +EXPORT_SYMBOL drivers/gpu/drm/drm 0x56c658f6 drm_atomic_get_plane_state +EXPORT_SYMBOL drivers/gpu/drm/drm 0x56c6e828 drm_mode_get_hv_timing +EXPORT_SYMBOL drivers/gpu/drm/drm 0x5728d6be drm_bridge_attach +EXPORT_SYMBOL drivers/gpu/drm/drm 0x57698a50 drm_mm_takedown +EXPORT_SYMBOL drivers/gpu/drm/drm 0x57b6efe3 drm_ioctl_flags +EXPORT_SYMBOL drivers/gpu/drm/drm 0x57b98d40 drm_client_framebuffer_delete +EXPORT_SYMBOL drivers/gpu/drm/drm 0x57fc8908 drm_gem_create_mmap_offset_size +EXPORT_SYMBOL drivers/gpu/drm/drm 0x583f7ad2 drm_put_dev +EXPORT_SYMBOL drivers/gpu/drm/drm 0x58b902ce drm_print_regset32 +EXPORT_SYMBOL drivers/gpu/drm/drm 0x58e9412d drm_i2c_encoder_detect +EXPORT_SYMBOL drivers/gpu/drm/drm 0x59056243 drm_mm_replace_node +EXPORT_SYMBOL drivers/gpu/drm/drm 0x59521a88 drmm_mode_config_init +EXPORT_SYMBOL drivers/gpu/drm/drm 0x59d0cfd7 drm_gem_object_put_unlocked +EXPORT_SYMBOL drivers/gpu/drm/drm 0x5a1c11ea drm_compat_ioctl +EXPORT_SYMBOL drivers/gpu/drm/drm 0x5a4705ed drm_vma_offset_add +EXPORT_SYMBOL drivers/gpu/drm/drm 0x5a5ed873 drm_dev_register +EXPORT_SYMBOL drivers/gpu/drm/drm 0x5c01abed drmm_add_final_kfree +EXPORT_SYMBOL drivers/gpu/drm/drm 0x5c1e857c drm_connector_unregister +EXPORT_SYMBOL drivers/gpu/drm/drm 0x5e02ffca drm_av_sync_delay +EXPORT_SYMBOL drivers/gpu/drm/drm 0x5e462931 drm_vma_offset_remove +EXPORT_SYMBOL drivers/gpu/drm/drm 0x5e7ee466 drm_gem_lock_reservations +EXPORT_SYMBOL drivers/gpu/drm/drm 0x5f4c8274 drm_prime_pages_to_sg +EXPORT_SYMBOL drivers/gpu/drm/drm 0x5f7985a5 drm_mm_scan_remove_block +EXPORT_SYMBOL drivers/gpu/drm/drm 0x5f9d998e drm_connector_set_path_property +EXPORT_SYMBOL drivers/gpu/drm/drm 0x62193f58 drm_gem_dmabuf_export +EXPORT_SYMBOL drivers/gpu/drm/drm 0x62434654 drm_modeset_unlock +EXPORT_SYMBOL drivers/gpu/drm/drm 0x62e0b8f4 drm_crtc_vblank_count +EXPORT_SYMBOL drivers/gpu/drm/drm 0x62e4dfc0 drm_framebuffer_plane_height +EXPORT_SYMBOL drivers/gpu/drm/drm 0x637cac19 drm_mode_set_crtcinfo +EXPORT_SYMBOL drivers/gpu/drm/drm 0x6391d526 drm_event_cancel_free +EXPORT_SYMBOL drivers/gpu/drm/drm 0x63a228ff drm_object_property_get_value +EXPORT_SYMBOL drivers/gpu/drm/drm 0x63f0ab41 drm_connector_list_iter_begin +EXPORT_SYMBOL drivers/gpu/drm/drm 0x63fb93bb drm_crtc_vblank_put +EXPORT_SYMBOL drivers/gpu/drm/drm 0x648ad6cc drm_connector_attach_encoder +EXPORT_SYMBOL drivers/gpu/drm/drm 0x66551bc7 drm_detect_monitor_audio +EXPORT_SYMBOL drivers/gpu/drm/drm 0x6747fcba drm_writeback_get_out_fence +EXPORT_SYMBOL drivers/gpu/drm/drm 0x6805d8d6 drm_client_modeset_probe +EXPORT_SYMBOL drivers/gpu/drm/drm 0x68187ca3 drm_calc_timestamping_constants +EXPORT_SYMBOL drivers/gpu/drm/drm 0x686204d9 drm_modeset_drop_locks +EXPORT_SYMBOL drivers/gpu/drm/drm 0x688da1c2 drm_state_dump +EXPORT_SYMBOL drivers/gpu/drm/drm 0x68c0b8c6 drm_panel_init +EXPORT_SYMBOL drivers/gpu/drm/drm 0x6b032354 drm_master_get +EXPORT_SYMBOL drivers/gpu/drm/drm 0x6b29c1b8 drm_gem_unmap_dma_buf +EXPORT_SYMBOL drivers/gpu/drm/drm 0x6ce1055a drm_i2c_encoder_mode_fixup +EXPORT_SYMBOL drivers/gpu/drm/drm 0x6de47884 drm_atomic_add_affected_connectors +EXPORT_SYMBOL drivers/gpu/drm/drm 0x6e30ba8e drm_rect_rotate_inv +EXPORT_SYMBOL drivers/gpu/drm/drm 0x6f32ca59 drm_mode_validate_ycbcr420 +EXPORT_SYMBOL drivers/gpu/drm/drm 0x7062d653 drm_gem_map_detach +EXPORT_SYMBOL drivers/gpu/drm/drm 0x708ea7d0 drm_ioctl_kernel +EXPORT_SYMBOL drivers/gpu/drm/drm 0x71ae093d drm_plane_force_disable +EXPORT_SYMBOL drivers/gpu/drm/drm 0x722ff37e drm_gem_object_release +EXPORT_SYMBOL drivers/gpu/drm/drm 0x72d77cb0 drm_panel_enable +EXPORT_SYMBOL drivers/gpu/drm/drm 0x72e9b363 drm_gem_free_mmap_offset +EXPORT_SYMBOL drivers/gpu/drm/drm 0x72ffc2ac drm_atomic_set_fb_for_plane +EXPORT_SYMBOL drivers/gpu/drm/drm 0x74966539 drm_mode_create_dp_colorspace_property +EXPORT_SYMBOL drivers/gpu/drm/drm 0x74d5d4bb drm_property_replace_global_blob +EXPORT_SYMBOL drivers/gpu/drm/drm 0x76101b39 drm_atomic_state_clear +EXPORT_SYMBOL drivers/gpu/drm/drm 0x7624e930 drm_gem_vm_open +EXPORT_SYMBOL drivers/gpu/drm/drm 0x7760a072 drm_client_modeset_dpms +EXPORT_SYMBOL drivers/gpu/drm/drm 0x790fe167 drm_panel_detach +EXPORT_SYMBOL drivers/gpu/drm/drm 0x7ac97dd6 drm_dev_init +EXPORT_SYMBOL drivers/gpu/drm/drm 0x7b536928 drm_crtc_vblank_count_and_time +EXPORT_SYMBOL drivers/gpu/drm/drm 0x7c25d0b2 drm_syncobj_find +EXPORT_SYMBOL drivers/gpu/drm/drm 0x7cebd129 drm_connector_list_update +EXPORT_SYMBOL drivers/gpu/drm/drm 0x7d38fa52 drm_hdmi_avi_infoframe_quant_range +EXPORT_SYMBOL drivers/gpu/drm/drm 0x7d47bd08 drm_property_create_object +EXPORT_SYMBOL drivers/gpu/drm/drm 0x7edc546f drm_mm_print +EXPORT_SYMBOL drivers/gpu/drm/drm 0x7fce0953 drm_gem_prime_export +EXPORT_SYMBOL drivers/gpu/drm/drm 0x801e0fed drm_crtc_enable_color_mgmt +EXPORT_SYMBOL drivers/gpu/drm/drm 0x8108949d drm_mode_equal_no_clocks +EXPORT_SYMBOL drivers/gpu/drm/drm 0x81992424 drm_edid_header_is_valid +EXPORT_SYMBOL drivers/gpu/drm/drm 0x826c7f70 drm_crtc_vblank_waitqueue +EXPORT_SYMBOL drivers/gpu/drm/drm 0x8514203c drm_open +EXPORT_SYMBOL drivers/gpu/drm/drm 0x854ce2dd drm_crtc_arm_vblank_event +EXPORT_SYMBOL drivers/gpu/drm/drm 0x8563a554 drm_ht_remove +EXPORT_SYMBOL drivers/gpu/drm/drm 0x871ab41a drm_rect_intersect +EXPORT_SYMBOL drivers/gpu/drm/drm 0x893c4c0e drm_modeset_lock_all +EXPORT_SYMBOL drivers/gpu/drm/drm 0x8a274d16 drm_gem_dma_resv_wait +EXPORT_SYMBOL drivers/gpu/drm/drm 0x8c322b69 drm_atomic_get_old_bridge_state +EXPORT_SYMBOL drivers/gpu/drm/drm 0x8c4fd37c drm_mode_set_name +EXPORT_SYMBOL drivers/gpu/drm/drm 0x8d308586 drm_modeset_acquire_fini +EXPORT_SYMBOL drivers/gpu/drm/drm 0x8d3d9aa1 drm_bridge_chain_enable +EXPORT_SYMBOL drivers/gpu/drm/drm 0x8d513863 drm_poll +EXPORT_SYMBOL drivers/gpu/drm/drm 0x8d7ca65d drm_gem_get_pages +EXPORT_SYMBOL drivers/gpu/drm/drm 0x8da5a7b7 __devm_drm_dev_alloc +EXPORT_SYMBOL drivers/gpu/drm/drm 0x8ea5f210 drm_property_blob_put +EXPORT_SYMBOL drivers/gpu/drm/drm 0x8ef9b53c drm_atomic_private_obj_fini +EXPORT_SYMBOL drivers/gpu/drm/drm 0x90de1c1a drm_i2c_encoder_mode_set +EXPORT_SYMBOL drivers/gpu/drm/drm 0x916f2452 drm_client_buffer_vmap +EXPORT_SYMBOL drivers/gpu/drm/drm 0x91774ddf drm_debugfs_create_files +EXPORT_SYMBOL drivers/gpu/drm/drm 0x91af0dd4 drm_gem_prime_fd_to_handle +EXPORT_SYMBOL drivers/gpu/drm/drm 0x91fec1cc drm_rect_calc_vscale +EXPORT_SYMBOL drivers/gpu/drm/drm 0x9213f5c3 drm_edid_to_speaker_allocation +EXPORT_SYMBOL drivers/gpu/drm/drm 0x92fa7611 drm_writeback_cleanup_job +EXPORT_SYMBOL drivers/gpu/drm/drm 0x9373a490 drm_mode_get_tile_group +EXPORT_SYMBOL drivers/gpu/drm/drm 0x937514cb drm_framebuffer_cleanup +EXPORT_SYMBOL drivers/gpu/drm/drm 0x93a55fc0 drm_release +EXPORT_SYMBOL drivers/gpu/drm/drm 0x949fd06f drm_gem_put_pages +EXPORT_SYMBOL drivers/gpu/drm/drm 0x95255591 __drmm_add_action +EXPORT_SYMBOL drivers/gpu/drm/drm 0x955d9f87 drm_client_init +EXPORT_SYMBOL drivers/gpu/drm/drm 0x95dbc76d drm_ht_create +EXPORT_SYMBOL drivers/gpu/drm/drm 0x972bb54d drm_property_create +EXPORT_SYMBOL drivers/gpu/drm/drm 0x977ddaf1 drm_syncobj_get_fd +EXPORT_SYMBOL drivers/gpu/drm/drm 0x978020d2 drm_client_modeset_commit_locked +EXPORT_SYMBOL drivers/gpu/drm/drm 0x97aa8c87 drm_mode_create_tile_group +EXPORT_SYMBOL drivers/gpu/drm/drm 0x9812be5b drm_connector_set_panel_orientation +EXPORT_SYMBOL drivers/gpu/drm/drm 0x982698bd drm_mode_match +EXPORT_SYMBOL drivers/gpu/drm/drm 0x9866f707 drm_master_internal_acquire +EXPORT_SYMBOL drivers/gpu/drm/drm 0x988f5bf4 drm_mode_object_find +EXPORT_SYMBOL drivers/gpu/drm/drm 0x995b355a drm_ioctl +EXPORT_SYMBOL drivers/gpu/drm/drm 0x99fd20aa drm_rect_clip_scaled +EXPORT_SYMBOL drivers/gpu/drm/drm 0x9a0ab703 drm_flip_work_queue_task +EXPORT_SYMBOL drivers/gpu/drm/drm 0x9a11b45d drm_plane_create_rotation_property +EXPORT_SYMBOL drivers/gpu/drm/drm 0x9a187ee9 drm_mode_probed_add +EXPORT_SYMBOL drivers/gpu/drm/drm 0x9a695e38 drm_gem_dmabuf_vunmap +EXPORT_SYMBOL drivers/gpu/drm/drm 0x9b8a53f5 drm_ht_just_insert_please +EXPORT_SYMBOL drivers/gpu/drm/drm 0x9c679271 drm_syncobj_replace_fence +EXPORT_SYMBOL drivers/gpu/drm/drm 0x9defb652 drm_client_modeset_commit +EXPORT_SYMBOL drivers/gpu/drm/drm 0x9e7cd2ee drm_atomic_add_affected_planes +EXPORT_SYMBOL drivers/gpu/drm/drm 0x9ea8fa60 drm_flip_work_commit +EXPORT_SYMBOL drivers/gpu/drm/drm 0x9ee88b9a drm_atomic_add_encoder_bridges +EXPORT_SYMBOL drivers/gpu/drm/drm 0x9ef506c6 drm_gem_shmem_put_pages +EXPORT_SYMBOL drivers/gpu/drm/drm 0x9fef63c0 drm_crtc_accurate_vblank_count +EXPORT_SYMBOL drivers/gpu/drm/drm 0xa002fd9a drm_connector_attach_max_bpc_property +EXPORT_SYMBOL drivers/gpu/drm/drm 0xa0713087 drm_ht_find_item +EXPORT_SYMBOL drivers/gpu/drm/drm 0xa2954581 drm_property_blob_get +EXPORT_SYMBOL drivers/gpu/drm/drm 0xa3015425 __drmm_add_action_or_reset +EXPORT_SYMBOL drivers/gpu/drm/drm 0xa30b79c5 drm_atomic_get_old_connector_for_encoder +EXPORT_SYMBOL drivers/gpu/drm/drm 0xa4239e99 drm_atomic_get_new_connector_for_encoder +EXPORT_SYMBOL drivers/gpu/drm/drm 0xa461d651 drm_connector_init +EXPORT_SYMBOL drivers/gpu/drm/drm 0xa469a797 drm_mode_create_hdmi_colorspace_property +EXPORT_SYMBOL drivers/gpu/drm/drm 0xa606ba58 drm_gem_vm_close +EXPORT_SYMBOL drivers/gpu/drm/drm 0xa659502e drmm_kmalloc +EXPORT_SYMBOL drivers/gpu/drm/drm 0xa715c009 drm_connector_attach_scaling_mode_property +EXPORT_SYMBOL drivers/gpu/drm/drm 0xa829174e drm_mode_create_tv_margin_properties +EXPORT_SYMBOL drivers/gpu/drm/drm 0xa8ad5d01 drm_detect_hdmi_monitor +EXPORT_SYMBOL drivers/gpu/drm/drm 0xa8c08831 drm_gem_fence_array_add +EXPORT_SYMBOL drivers/gpu/drm/drm 0xa948efb2 drm_property_destroy +EXPORT_SYMBOL drivers/gpu/drm/drm 0xa957482b drm_gem_handle_delete +EXPORT_SYMBOL drivers/gpu/drm/drm 0xa9f514a8 drm_gem_object_put +EXPORT_SYMBOL drivers/gpu/drm/drm 0xaac39ff3 __drm_printfn_info +EXPORT_SYMBOL drivers/gpu/drm/drm 0xabc8ce44 drm_crtc_cleanup +EXPORT_SYMBOL drivers/gpu/drm/drm 0xabc9b195 drm_atomic_get_bridge_state +EXPORT_SYMBOL drivers/gpu/drm/drm 0xabd8ebc7 drm_gtf_mode_complex +EXPORT_SYMBOL drivers/gpu/drm/drm 0xac0abab4 drm_gem_map_dma_buf +EXPORT_SYMBOL drivers/gpu/drm/drm 0xac33cec4 drm_sysfs_hotplug_event +EXPORT_SYMBOL drivers/gpu/drm/drm 0xac3825bb drm_mode_create_content_type_property +EXPORT_SYMBOL drivers/gpu/drm/drm 0xac5252c5 drm_crtc_vblank_off +EXPORT_SYMBOL drivers/gpu/drm/drm 0xace69d00 drm_ioctl_permit +EXPORT_SYMBOL drivers/gpu/drm/drm 0xad4e902b drm_color_ctm_s31_32_to_qm_n +EXPORT_SYMBOL drivers/gpu/drm/drm 0xad75518d drm_connector_attach_edid_property +EXPORT_SYMBOL drivers/gpu/drm/drm 0xad86bf29 drm_property_add_enum +EXPORT_SYMBOL drivers/gpu/drm/drm 0xae277372 __drm_crtc_commit_free +EXPORT_SYMBOL drivers/gpu/drm/drm 0xaf777bb8 drm_mode_create_dvi_i_properties +EXPORT_SYMBOL drivers/gpu/drm/drm 0xafe1ee18 drm_add_override_edid_modes +EXPORT_SYMBOL drivers/gpu/drm/drm 0xafe51fea drm_flip_work_cleanup +EXPORT_SYMBOL drivers/gpu/drm/drm 0xb052b7c8 drm_mode_prune_invalid +EXPORT_SYMBOL drivers/gpu/drm/drm 0xb053adda drm_rect_rotate +EXPORT_SYMBOL drivers/gpu/drm/drm 0xb0909974 drm_irq_install +EXPORT_SYMBOL drivers/gpu/drm/drm 0xb0b05ff5 drm_clflush_sg +EXPORT_SYMBOL drivers/gpu/drm/drm 0xb0be6b0f drm_encoder_cleanup +EXPORT_SYMBOL drivers/gpu/drm/drm 0xb11ac7a7 __drm_err +EXPORT_SYMBOL drivers/gpu/drm/drm 0xb234afc2 drm_hdmi_avi_infoframe_colorspace +EXPORT_SYMBOL drivers/gpu/drm/drm 0xb28bcd98 drm_atomic_get_new_private_obj_state +EXPORT_SYMBOL drivers/gpu/drm/drm 0xb2de40e0 drm_panel_prepare +EXPORT_SYMBOL drivers/gpu/drm/drm 0xb4032484 drm_mm_insert_node_in_range +EXPORT_SYMBOL drivers/gpu/drm/drm 0xb434a2fc drm_gem_shmem_vmap +EXPORT_SYMBOL drivers/gpu/drm/drm 0xb4b28e53 drm_modeset_lock_all_ctx +EXPORT_SYMBOL drivers/gpu/drm/drm 0xb4bb226c drm_dev_put +EXPORT_SYMBOL drivers/gpu/drm/drm 0xb4f24bd8 drm_gem_dmabuf_mmap +EXPORT_SYMBOL drivers/gpu/drm/drm 0xb51d7719 drm_bridge_chain_mode_fixup +EXPORT_SYMBOL drivers/gpu/drm/drm 0xb5a32ac4 drm_atomic_get_old_private_obj_state +EXPORT_SYMBOL drivers/gpu/drm/drm 0xb6127243 drm_need_swiotlb +EXPORT_SYMBOL drivers/gpu/drm/drm 0xb6f5f5b3 drm_atomic_bridge_chain_pre_enable +EXPORT_SYMBOL drivers/gpu/drm/drm 0xb853833f drm_mode_validate_size +EXPORT_SYMBOL drivers/gpu/drm/drm 0xb8bdb3f5 drm_puts +EXPORT_SYMBOL drivers/gpu/drm/drm 0xb8df57fc drm_vblank_restore +EXPORT_SYMBOL drivers/gpu/drm/drm 0xb9cad492 __drm_atomic_state_free +EXPORT_SYMBOL drivers/gpu/drm/drm 0xb9f56e22 drm_format_info_block_width +EXPORT_SYMBOL drivers/gpu/drm/drm 0xba7348c5 drm_event_reserve_init +EXPORT_SYMBOL drivers/gpu/drm/drm 0xbb20a5b9 drm_crtc_vblank_on +EXPORT_SYMBOL drivers/gpu/drm/drm 0xbb33ee7b drm_default_rgb_quant_range +EXPORT_SYMBOL drivers/gpu/drm/drm 0xbb83cbd0 drm_master_internal_release +EXPORT_SYMBOL drivers/gpu/drm/drm 0xbbe32c24 drm_sysfs_connector_status_event +EXPORT_SYMBOL drivers/gpu/drm/drm 0xbd3446fa __drm_atomic_helper_set_config +EXPORT_SYMBOL drivers/gpu/drm/drm 0xbe4e95b0 drm_property_create_blob +EXPORT_SYMBOL drivers/gpu/drm/drm 0xbf17a320 drm_crtc_vblank_reset +EXPORT_SYMBOL drivers/gpu/drm/drm 0xc03a08c0 drm_mode_create_scaling_mode_property +EXPORT_SYMBOL drivers/gpu/drm/drm 0xc0bee958 drm_framebuffer_plane_width +EXPORT_SYMBOL drivers/gpu/drm/drm 0xc0c509a9 drm_atomic_state_default_release +EXPORT_SYMBOL drivers/gpu/drm/drm 0xc15f3852 drm_property_replace_blob +EXPORT_SYMBOL drivers/gpu/drm/drm 0xc1bb492f drm_cvt_mode +EXPORT_SYMBOL drivers/gpu/drm/drm 0xc2c36138 drm_mode_is_420_only +EXPORT_SYMBOL drivers/gpu/drm/drm 0xc2eefb89 drm_gem_shmem_purge_locked +EXPORT_SYMBOL drivers/gpu/drm/drm 0xc324efb9 drm_edid_to_sad +EXPORT_SYMBOL drivers/gpu/drm/drm 0xc461c729 drm_connector_attach_content_type_property +EXPORT_SYMBOL drivers/gpu/drm/drm 0xc596a44a drm_atomic_get_crtc_state +EXPORT_SYMBOL drivers/gpu/drm/drm 0xc5992401 __drm_puts_coredump +EXPORT_SYMBOL drivers/gpu/drm/drm 0xc6a8eb32 drm_driver_legacy_fb_format +EXPORT_SYMBOL drivers/gpu/drm/drm 0xc74d4a21 drm_bridge_chain_post_disable +EXPORT_SYMBOL drivers/gpu/drm/drm 0xc7a58466 drm_i2c_encoder_init +EXPORT_SYMBOL drivers/gpu/drm/drm 0xc7f0f027 drm_format_info_min_pitch +EXPORT_SYMBOL drivers/gpu/drm/drm 0xc83a33fe drm_legacy_ioremap_wc +EXPORT_SYMBOL drivers/gpu/drm/drm 0xc8b58bbc drm_get_edid_switcheroo +EXPORT_SYMBOL drivers/gpu/drm/drm 0xc9096ee3 drm_dev_dbg +EXPORT_SYMBOL drivers/gpu/drm/drm 0xc9112745 drm_prime_gem_destroy +EXPORT_SYMBOL drivers/gpu/drm/drm 0xc985d5db drm_property_create_range +EXPORT_SYMBOL drivers/gpu/drm/drm 0xca0cf84d drm_panel_disable +EXPORT_SYMBOL drivers/gpu/drm/drm 0xca499f88 drm_gem_mmap_obj +EXPORT_SYMBOL drivers/gpu/drm/drm 0xca987bff drm_connector_has_possible_encoder +EXPORT_SYMBOL drivers/gpu/drm/drm 0xcb2340b8 drm_rect_debug_print +EXPORT_SYMBOL drivers/gpu/drm/drm 0xcc4e65d5 drm_gem_shmem_pin +EXPORT_SYMBOL drivers/gpu/drm/drm 0xce0b1791 drm_i2c_encoder_commit +EXPORT_SYMBOL drivers/gpu/drm/drm 0xcec6a474 drm_gem_shmem_madvise +EXPORT_SYMBOL drivers/gpu/drm/drm 0xcf11a549 drm_flip_work_allocate_task +EXPORT_SYMBOL drivers/gpu/drm/drm 0xcf616c6e drm_irq_uninstall +EXPORT_SYMBOL drivers/gpu/drm/drm 0xcf77d7c0 drm_legacy_ioremap +EXPORT_SYMBOL drivers/gpu/drm/drm 0xd00940ef drm_mode_find_dmt +EXPORT_SYMBOL drivers/gpu/drm/drm 0xd13f9985 drm_edid_block_valid +EXPORT_SYMBOL drivers/gpu/drm/drm 0xd2136f37 drm_read +EXPORT_SYMBOL drivers/gpu/drm/drm 0xd26ca35b drm_modeset_lock_init +EXPORT_SYMBOL drivers/gpu/drm/drm 0xd29d7517 drm_atomic_state_alloc +EXPORT_SYMBOL drivers/gpu/drm/drm 0xd2e95765 drm_dev_printk +EXPORT_SYMBOL drivers/gpu/drm/drm 0xd3bc8bc3 drm_add_modes_noedid +EXPORT_SYMBOL drivers/gpu/drm/drm 0xd48c86a0 drm_property_create_signed_range +EXPORT_SYMBOL drivers/gpu/drm/drm 0xd4b60131 drm_crtc_set_max_vblank_count +EXPORT_SYMBOL drivers/gpu/drm/drm 0xd5495492 drm_gem_prime_mmap +EXPORT_SYMBOL drivers/gpu/drm/drm 0xd5637bdd drm_gem_objects_lookup +EXPORT_SYMBOL drivers/gpu/drm/drm 0xd5c9e896 drm_crtc_init_with_planes +EXPORT_SYMBOL drivers/gpu/drm/drm 0xd60c4cda drm_gem_object_lookup +EXPORT_SYMBOL drivers/gpu/drm/drm 0xd680a377 drm_gem_object_free +EXPORT_SYMBOL drivers/gpu/drm/drm 0xd682e965 drmm_kfree +EXPORT_SYMBOL drivers/gpu/drm/drm 0xd6a2e4d1 drm_gem_prime_import +EXPORT_SYMBOL drivers/gpu/drm/drm 0xd833845d drm_hdmi_avi_infoframe_content_type +EXPORT_SYMBOL drivers/gpu/drm/drm 0xd8558897 drm_dev_has_vblank +EXPORT_SYMBOL drivers/gpu/drm/drm 0xd87e7542 drm_plane_from_index +EXPORT_SYMBOL drivers/gpu/drm/drm 0xd96b425a __drm_printfn_coredump +EXPORT_SYMBOL drivers/gpu/drm/drm 0xdaf5599d drm_handle_vblank +EXPORT_SYMBOL drivers/gpu/drm/drm 0xdb6241d5 drm_atomic_get_connector_state +EXPORT_SYMBOL drivers/gpu/drm/drm 0xdc3e83bd drm_i2c_encoder_destroy +EXPORT_SYMBOL drivers/gpu/drm/drm 0xdc64c9a3 drm_hdmi_vendor_infoframe_from_display_mode +EXPORT_SYMBOL drivers/gpu/drm/drm 0xdd3afee9 drm_connector_set_vrr_capable_property +EXPORT_SYMBOL drivers/gpu/drm/drm 0xde185ba8 drm_vma_node_is_allowed +EXPORT_SYMBOL drivers/gpu/drm/drm 0xde425812 drm_panel_get_modes +EXPORT_SYMBOL drivers/gpu/drm/drm 0xde909cd3 drm_plane_create_zpos_immutable_property +EXPORT_SYMBOL drivers/gpu/drm/drm 0xdee0fb74 drm_modeset_lock +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 0xdfb98857 drm_mode_parse_command_line_for_connector +EXPORT_SYMBOL drivers/gpu/drm/drm 0xe1595d70 drm_debugfs_remove_files +EXPORT_SYMBOL drivers/gpu/drm/drm 0xe3d94eb3 drm_mode_destroy +EXPORT_SYMBOL drivers/gpu/drm/drm 0xe407db3d drm_mode_create +EXPORT_SYMBOL drivers/gpu/drm/drm 0xe454876d drm_atomic_bridge_chain_check +EXPORT_SYMBOL drivers/gpu/drm/drm 0xe68316a6 drm_crtc_vblank_get +EXPORT_SYMBOL drivers/gpu/drm/drm 0xe68a657c drm_noop +EXPORT_SYMBOL drivers/gpu/drm/drm 0xe79b453e drm_bridge_remove +EXPORT_SYMBOL drivers/gpu/drm/drm 0xe817eb01 __drm_printfn_err +EXPORT_SYMBOL drivers/gpu/drm/drm 0xe8a034df drm_dev_exit +EXPORT_SYMBOL drivers/gpu/drm/drm 0xe9310283 drm_set_preferred_mode +EXPORT_SYMBOL drivers/gpu/drm/drm 0xe9b5f452 drm_writeback_prepare_job +EXPORT_SYMBOL drivers/gpu/drm/drm 0xea063233 drm_plane_cleanup +EXPORT_SYMBOL drivers/gpu/drm/drm 0xea433c93 drm_gem_fence_array_add_implicit +EXPORT_SYMBOL drivers/gpu/drm/drm 0xeafd07a9 drm_get_format_info +EXPORT_SYMBOL drivers/gpu/drm/drm 0xec12af74 __drm_dbg +EXPORT_SYMBOL drivers/gpu/drm/drm 0xed18e23d drm_crtc_wait_one_vblank +EXPORT_SYMBOL drivers/gpu/drm/drm 0xeda315e3 drm_i2c_encoder_prepare +EXPORT_SYMBOL drivers/gpu/drm/drm 0xee10f14b drm_syncobj_find_fence +EXPORT_SYMBOL drivers/gpu/drm/drm 0xee22c9c8 drm_atomic_bridge_chain_enable +EXPORT_SYMBOL drivers/gpu/drm/drm 0xeef14d8c drm_format_info_block_height +EXPORT_SYMBOL drivers/gpu/drm/drm 0xf0517d7a drm_mm_init +EXPORT_SYMBOL drivers/gpu/drm/drm 0xf0ec7133 drm_mode_create_tv_properties +EXPORT_SYMBOL drivers/gpu/drm/drm 0xf1371d97 drm_panel_attach +EXPORT_SYMBOL drivers/gpu/drm/drm 0xf1421d13 drm_mode_sort +EXPORT_SYMBOL drivers/gpu/drm/drm 0xf1dd6836 drm_property_create_bitmask +EXPORT_SYMBOL drivers/gpu/drm/drm 0xf28ed338 drm_atomic_set_crtc_for_plane +EXPORT_SYMBOL drivers/gpu/drm/drm 0xf33280c3 drm_object_property_set_value +EXPORT_SYMBOL drivers/gpu/drm/drm 0xf375a81a drm_connector_update_edid_property +EXPORT_SYMBOL drivers/gpu/drm/drm 0xf37b323c drm_modeset_acquire_init +EXPORT_SYMBOL drivers/gpu/drm/drm 0xf406e46a drm_get_connector_type_name +EXPORT_SYMBOL drivers/gpu/drm/drm 0xf64077ac drm_mode_config_cleanup +EXPORT_SYMBOL drivers/gpu/drm/drm 0xf753c380 drm_gem_private_object_init +EXPORT_SYMBOL drivers/gpu/drm/drm 0xf826786c drm_format_info +EXPORT_SYMBOL drivers/gpu/drm/drm 0xf9ca3b24 drm_crtc_from_index +EXPORT_SYMBOL drivers/gpu/drm/drm 0xfa3f8754 drm_vma_node_allow +EXPORT_SYMBOL drivers/gpu/drm/drm 0xfa7cd4d2 devm_drm_dev_init +EXPORT_SYMBOL drivers/gpu/drm/drm 0xfadc02ca drm_connector_set_panel_orientation_with_quirk +EXPORT_SYMBOL drivers/gpu/drm/drm 0xfb084119 drm_bridge_chain_disable +EXPORT_SYMBOL drivers/gpu/drm/drm 0xfb3bc572 drm_gem_dmabuf_vmap +EXPORT_SYMBOL drivers/gpu/drm/drm 0xfbcddb5f drm_framebuffer_init +EXPORT_SYMBOL drivers/gpu/drm/drm 0xfc994406 drm_vma_node_revoke +EXPORT_SYMBOL drivers/gpu/drm/drm 0xfcc0e044 drm_client_buffer_vunmap +EXPORT_SYMBOL drivers/gpu/drm/drm 0xfd0de52d drm_flip_work_queue +EXPORT_SYMBOL drivers/gpu/drm/drm 0xfd3600fb drm_prime_sg_to_page_addr_arrays +EXPORT_SYMBOL drivers/gpu/drm/drm 0xfdd6c6a8 drm_mode_duplicate +EXPORT_SYMBOL drivers/gpu/drm/drm 0xfe0dfedd drm_plane_create_blend_mode_property +EXPORT_SYMBOL drivers/gpu/drm/drm 0xfed795af drm_mode_debug_printmodeline +EXPORT_SYMBOL drivers/gpu/drm/drm 0xff8de91d drm_print_bits +EXPORT_SYMBOL drivers/gpu/drm/drm 0xff90a292 drm_mode_copy +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x013e4805 drm_fb_helper_set_par +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x01a01a8a drm_fb_swab16 +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x028bf31a drm_panel_bridge_add +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x028f03ed drm_fb_xrgb8888_to_rgb565_dstclip +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x05af763d drm_dp_dpcd_read_link_status +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x06c49551 drm_dp_dsc_sink_line_buf_depth +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x0767fc17 drm_atomic_helper_commit_cleanup_done +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x0781625e drm_kms_helper_poll_enable +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x084424c2 drm_scdc_set_high_tmds_clock_ratio +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x08bb8d3d drm_gem_fb_simple_display_pipe_prepare_fb +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x0b6dcd5b drm_fb_helper_alloc_fbi +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x0b87aca0 drm_kms_helper_hotplug_event +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x0b923351 drm_fb_helper_debug_enter +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x0efff27f drm_dp_remote_aux_init +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x0f0c1f12 drm_atomic_helper_commit_tail +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x0f8c1d13 drm_dp_mst_topology_state_funcs +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x0fdb9036 drm_dp_vsc_sdp_log +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x11826ddd drm_crtc_init +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x141cc8e9 drm_dp_mst_allocate_vcpi +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x157ca4c9 drm_dp_mst_hpd_irq +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x18bfc9d7 drm_dp_dual_mode_set_tmds_output +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x18ca2145 drm_fb_helper_sys_read +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x193cd958 devm_drm_panel_bridge_add +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x19705bfe drm_fb_helper_hotplug_event +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x1b58a134 drm_fb_helper_check_var +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x1bc13d2e drm_atomic_helper_wait_for_dependencies +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x1c283df0 __drm_atomic_helper_plane_state_reset +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x1ca72601 drm_self_refresh_helper_cleanup +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x1e629dcc drm_atomic_helper_page_flip_target +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x21a4b9b1 drm_atomic_helper_swap_state +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x24adbe37 drm_dp_mst_atomic_check +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x25b7d779 drm_helper_probe_detect +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x26815dbc drm_dp_link_rate_to_bw_code +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x2772565c drm_atomic_helper_fake_vblank +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x2bd22112 drm_atomic_helper_bridge_reset +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x2d4a1942 drm_dp_get_phy_test_pattern +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x2f6847fa drm_fb_helper_initial_config +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x339ad3c7 drm_atomic_helper_commit_modeset_enables +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x34c3511f drm_atomic_helper_duplicate_state +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x35f392d9 drm_dp_downstream_id +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x3604e9b1 drm_atomic_helper_disable_planes_on_crtc +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x38b47b84 drm_primary_helper_funcs +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x39de7326 drm_dp_start_crc +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x3a479bb4 drm_atomic_helper_prepare_planes +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x3a8063f3 drm_dp_dsc_sink_supported_input_bpcs +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x3b22da7f drm_kms_helper_poll_disable +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x3b721b36 drm_dp_update_payload_part1 +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x3c48465a drm_plane_enable_fb_damage_clips +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x3d391e5a drm_fb_helper_cfb_imageblit +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x3d3c55f8 drm_atomic_helper_suspend +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x3d55bdcd drm_atomic_helper_update_plane +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x3dcf0245 drm_dp_mst_connector_early_unregister +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x3dd2790f drm_atomic_helper_commit_planes +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x3ded6430 drm_helper_disable_unused_functions +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x3f917bd1 drm_simple_encoder_init +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x41e4fd7d drm_kms_helper_poll_init +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x428ee0fe drm_atomic_helper_check_modeset +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x42941f6c devm_drm_panel_bridge_add_typed +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x43052b81 drm_fb_helper_deferred_io +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x43e55a48 drm_atomic_helper_plane_duplicate_state +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x44ab4f28 drm_simple_display_pipe_attach_bridge +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x489d4a63 __drm_atomic_helper_connector_state_reset +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x48a73e9b drm_atomic_helper_page_flip +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x48b62a57 drm_dp_link_train_channel_eq_delay +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x4959b9bb drm_fbdev_generic_setup +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x49d168cd drm_dp_mst_topology_mgr_destroy +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x4a3e6000 drm_atomic_helper_connector_tv_reset +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x4cb88f30 drm_atomic_helper_bridge_duplicate_state +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x4def44f4 drm_atomic_helper_disable_plane +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x4e346319 drm_helper_mode_fill_fb_struct +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x508ab4da drm_fb_helper_prepare +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x50abea2e __drm_atomic_helper_bridge_duplicate_state +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x5137c15a drm_helper_hpd_irq_event +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x53bb7a75 drm_helper_probe_single_connector_modes +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x5407ae9e drm_dp_get_dual_mode_type_name +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x548d0df1 drm_dp_mst_topology_mgr_init +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x55819276 drm_atomic_helper_commit_hw_done +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x5704cf34 drm_dp_downstream_debug +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x582f248e drm_dp_get_adjust_request_pre_emphasis +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x58714a95 __drm_atomic_helper_connector_reset +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x58d8fcaa drm_dsc_pps_payload_pack +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x59dc4ec8 drm_fb_memcpy +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x5a4734d1 drm_kms_helper_is_poll_worker +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x5c499607 drm_atomic_helper_wait_for_vblanks +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x5f67b6dd drm_fb_helper_cfb_copyarea +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x5fbafad6 drm_fb_helper_setcmap +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x619dd289 drm_atomic_helper_damage_merged +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x61c2a312 drm_atomic_helper_dirtyfb +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x632b216c drm_kms_helper_poll_fini +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x641e6d20 drm_fb_helper_sys_fillrect +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x648d953b drm_dsc_dp_pps_header_init +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x6615069e drm_dp_dsc_sink_max_slice_count +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x663d692a drm_fb_helper_unregister_fbi +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x6775dd2d drm_panel_bridge_add_typed +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x67e85f68 drm_helper_encoder_in_use +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x68793796 drm_scdc_get_scrambling_status +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x6a47b438 drm_dp_mst_get_edid +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x6b5c2b06 drm_atomic_helper_damage_iter_next +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x6bcb06d3 drm_self_refresh_helper_alter_state +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x6c945fc8 drm_lspcon_set_mode +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x6e9d00e2 drm_atomic_helper_disable_all +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x704acece drm_dp_find_vcpi_slots +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x7062f7c2 drm_dp_send_power_updown_phy +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x70d531d3 drm_fb_helper_init +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x73011db0 drm_dp_bw_code_to_link_rate +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x73ae8703 drm_atomic_helper_setup_commit +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x741d6c5b drm_gem_fb_destroy +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x75403e50 drm_dp_mst_dsc_aux_for_port +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x75feed9f __drm_atomic_helper_bridge_reset +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x76e86174 drm_fb_memcpy_dstclip +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x798583f3 drm_dp_mst_deallocate_vcpi +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x7b0819fc drm_crtc_helper_set_mode +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x7beb6153 drm_helper_crtc_in_use +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x7c0a4edd drm_dp_mst_connector_late_register +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x7d95dfae drm_dp_dual_mode_read +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x7e247090 drm_atomic_helper_check_plane_state +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x828de959 drm_helper_force_disable_all +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x82c4734d drm_fb_helper_pan_display +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x830a89fc drm_fb_helper_fill_info +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x849dcc53 drm_dp_mst_topology_mgr_set_mst +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x865d02f9 drm_panel_bridge_remove +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x873c2b25 drm_atomic_helper_set_config +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x87f2302b drm_atomic_helper_cleanup_planes +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x880a237d drm_helper_connector_dpms +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x88187ea0 drm_dp_set_phy_test_pattern +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x881c592e drm_dp_send_real_edid_checksum +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x890772ea drm_dp_mst_topology_mgr_suspend +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x894b1f57 drm_dp_get_adjust_request_post_cursor +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x89e44d40 drm_dp_mst_get_vcpi_slots +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x8ca2d9e4 drm_dp_calc_pbn_mode +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x8d4e59b1 drm_dp_dual_mode_max_tmds_clock +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x8d701329 drm_dp_clock_recovery_ok +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x8fbacdc3 drm_atomic_helper_async_commit +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x922bd0a3 drm_dp_aux_unregister +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x92340566 drm_fb_xrgb8888_to_rgb565 +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x92d6455a drm_fb_xrgb8888_to_gray8 +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x937757e9 drm_scdc_set_scrambling +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x950c47ca drm_dp_mst_get_port_malloc +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x959075fd drm_dp_atomic_release_vcpi_slots +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x9642a1bc drm_atomic_helper_connector_reset +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x982b9dc3 drm_dp_stop_crc +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x99ed340f drm_dp_mst_add_affected_dsc_crtcs +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x9a08aa42 drm_dp_dpcd_write +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x9a52b12e __drm_atomic_helper_plane_reset +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x9bb2ef98 drm_dp_mst_put_port_malloc +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x9bb32d57 drm_atomic_helper_crtc_duplicate_state +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xa16dd318 drm_atomic_helper_bridge_destroy_state +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xa1fefe6a drm_dp_psr_setup_time +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xa2f5c65b drm_dp_get_edid_quirks +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xa39aad75 __drm_atomic_helper_crtc_reset +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xa46e9a06 drm_dp_read_desc +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xa5403a09 drm_atomic_helper_connector_duplicate_state +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xa5a61d76 drm_fb_helper_sys_imageblit +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xa6ff9496 drm_dp_link_train_clock_recovery_delay +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xa8e5cb5f drm_dp_dual_mode_write +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xab0e7cd4 drm_fb_helper_modinit +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xabbf80a7 drm_dp_get_vc_payload_bw +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xac3eec9d drm_atomic_helper_commit_tail_rpm +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xafbb4244 drm_atomic_helper_commit_duplicated_state +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xafd9b334 drm_fb_helper_set_suspend +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xb2649960 drm_fb_helper_set_suspend_unlocked +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xb32d6921 drm_dp_update_payload_part2 +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xb401473b drm_lspcon_get_mode +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xb61b6e36 drm_atomic_helper_commit_planes_on_crtc +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xb7b5fa30 drm_fb_helper_sys_write +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xb804e29b drm_dp_aux_init +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xbbe7aa6a drm_scdc_write +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xbc3a973c drm_fb_helper_lastclose +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xbd9c4544 drm_dp_mst_dump_topology +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xbfab936a drm_atomic_helper_damage_iter_init +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xc0020308 drm_dp_dual_mode_get_tmds_output +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xc0164d44 drm_helper_resume_force_mode +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xc0d51a51 drm_dp_mst_topology_mgr_resume +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xc14c9103 __drm_atomic_helper_private_obj_duplicate_state +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xc3b43a66 drm_atomic_helper_check +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xc426cfab drm_fb_helper_cfb_fillrect +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xc4999910 drm_atomic_helper_check_planes +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xc5c99a79 drm_dp_get_adjust_request_voltage +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xc84e4510 drm_dp_check_act_status +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xc892b665 drm_atomic_helper_wait_for_fences +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xc946488d __drm_atomic_helper_connector_destroy_state +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xcb02f26a drm_primary_helper_destroy +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xcb20a96c drm_dp_mst_atomic_enable_dsc +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xcbf00679 drm_atomic_helper_commit +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xcc86997a drm_atomic_helper_async_check +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xd041beaf drm_atomic_helper_legacy_gamma_set +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xd10f1adc drm_crtc_helper_set_config +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xd13eda44 drm_dp_dpcd_read +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xd180c755 drm_dp_mst_detect_port +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xd22b1ae8 drm_atomic_helper_plane_reset +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xd3851587 drm_atomic_helper_shutdown +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xd4913dd9 drm_atomic_get_mst_topology_state +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xd5ee5e8b drm_fb_xrgb8888_to_rgb888_dstclip +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xd729e3ae drm_fb_helper_fini +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xd85ef509 __drm_atomic_helper_plane_destroy_state +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xda3eba0f drm_fb_helper_restore_fbdev_mode_unlocked +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xdbf1778c __drm_atomic_helper_crtc_duplicate_state +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xdcc707e4 drm_self_refresh_helper_update_avg_times +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xdeaa25c9 drm_atomic_helper_wait_for_flip_done +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xe02abfbb drm_dp_downstream_max_bpc +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xe0e16815 drm_gem_fb_create_handle +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xe42cb1db drm_panel_bridge_connector +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xe4a7acbd drm_atomic_helper_update_legacy_modeset_state +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xe4f876b2 drm_dp_aux_register +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xe64cc46d drm_fb_helper_output_poll_changed +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xe6a441d5 drm_atomic_helper_bridge_propagate_bus_fmt +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xe6d73302 drm_atomic_helper_crtc_destroy_state +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xe6f173ce drm_dp_dual_mode_detect +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xe84254a2 __drm_atomic_helper_crtc_state_reset +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xe9357097 drm_atomic_helper_connector_destroy_state +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xeabc6214 drm_fb_helper_blank +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xeb43bdc1 drm_dp_mst_reset_vcpi_slots +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xeb7bc123 drm_mode_config_helper_suspend +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xedcf81ce drm_dp_channel_eq_ok +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xedee1e7d drm_atomic_helper_commit_modeset_disables +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xee154679 drm_dp_atomic_find_vcpi_slots +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xeec2811c drm_atomic_helper_plane_destroy_state +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xf1375fb9 drm_mode_config_helper_resume +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xf2329e89 drm_dp_downstream_max_clock +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xf3af578e drm_fb_helper_debug_leave +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xf583d280 __drm_atomic_helper_crtc_destroy_state +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xf66b0c63 drm_self_refresh_helper_init +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xf673a7df drm_atomic_helper_crtc_reset +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xf6a69fe8 drm_simple_display_pipe_init +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xf7cb5533 __drm_atomic_helper_connector_duplicate_state +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xf84eeaa6 __drm_atomic_helper_plane_duplicate_state +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xfa0c637f drm_atomic_helper_resume +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xfa8283e0 drm_helper_move_panel_connectors_to_head +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xfd94be23 drm_fb_helper_ioctl +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xfe12bcb9 drm_dsc_compute_rc_parameters +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xff3881c3 drm_scdc_read +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xff5f1456 drm_fb_helper_sys_copyarea +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xfffdd0b0 drm_atomic_helper_check_plane_damage +EXPORT_SYMBOL drivers/gpu/drm/drm_panel_orientation_quirks 0x2e439142 drm_get_panel_orientation_quirk +EXPORT_SYMBOL drivers/gpu/drm/drm_ttm_helper 0x06390286 drm_gem_ttm_print_info +EXPORT_SYMBOL drivers/gpu/drm/drm_ttm_helper 0xd53a2674 drm_gem_ttm_mmap +EXPORT_SYMBOL drivers/gpu/drm/drm_vram_helper 0x098766fe drm_vram_helper_release_mm +EXPORT_SYMBOL drivers/gpu/drm/drm_vram_helper 0x2d1e2f69 drm_gem_vram_pin +EXPORT_SYMBOL drivers/gpu/drm/drm_vram_helper 0x3fd245d0 drm_gem_vram_vunmap +EXPORT_SYMBOL drivers/gpu/drm/drm_vram_helper 0x53c2fad2 drm_gem_vram_simple_display_pipe_cleanup_fb +EXPORT_SYMBOL drivers/gpu/drm/drm_vram_helper 0x56ad84fe drm_gem_vram_put +EXPORT_SYMBOL drivers/gpu/drm/drm_vram_helper 0x65532c6b drm_gem_vram_kunmap +EXPORT_SYMBOL drivers/gpu/drm/drm_vram_helper 0x6a0acc2c drm_vram_helper_mode_valid +EXPORT_SYMBOL drivers/gpu/drm/drm_vram_helper 0x70712eb5 drm_vram_mm_debugfs_init +EXPORT_SYMBOL drivers/gpu/drm/drm_vram_helper 0xad21bfa7 drm_gem_vram_fill_create_dumb +EXPORT_SYMBOL drivers/gpu/drm/drm_vram_helper 0xb2019b77 drm_gem_vram_simple_display_pipe_prepare_fb +EXPORT_SYMBOL drivers/gpu/drm/drm_vram_helper 0xb9e28eb7 drm_gem_vram_mmap_offset +EXPORT_SYMBOL drivers/gpu/drm/drm_vram_helper 0xd507909b drm_vram_helper_alloc_mm +EXPORT_SYMBOL drivers/gpu/drm/drm_vram_helper 0xd7c4d951 drm_gem_vram_offset +EXPORT_SYMBOL drivers/gpu/drm/drm_vram_helper 0xdf235e70 drm_gem_vram_plane_helper_cleanup_fb +EXPORT_SYMBOL drivers/gpu/drm/drm_vram_helper 0xdf452412 drm_gem_vram_create +EXPORT_SYMBOL drivers/gpu/drm/drm_vram_helper 0xe1f3b558 drm_gem_vram_vmap +EXPORT_SYMBOL drivers/gpu/drm/drm_vram_helper 0xe41f3756 drm_gem_vram_driver_dumb_create +EXPORT_SYMBOL drivers/gpu/drm/drm_vram_helper 0xe510e058 drm_gem_vram_kmap +EXPORT_SYMBOL drivers/gpu/drm/drm_vram_helper 0xed42df31 drm_gem_vram_driver_dumb_mmap_offset +EXPORT_SYMBOL drivers/gpu/drm/drm_vram_helper 0xeebc0c83 drm_gem_vram_unpin +EXPORT_SYMBOL drivers/gpu/drm/drm_vram_helper 0xf8114dd4 drm_gem_vram_plane_helper_prepare_fb +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x023caa5e ttm_tt_set_placement_caching +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x03072b09 ttm_bo_vm_open +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x0b2b6758 ttm_bo_kunmap +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x0fe20036 ttm_bo_vm_reserve +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x165bee99 ttm_bo_device_release +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x18abb1a9 ttm_page_alloc_debugfs +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x19c7153a ttm_eu_fence_buffer_objects +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x19e9a822 ttm_bo_mem_put +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x208503ef ttm_bo_dma_acc_size +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x23453b70 ttm_bo_evict_mm +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x23ba47c3 ttm_bo_unlock_delayed_workqueue +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x3b186596 ttm_bo_mmap +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x3cfdd0b9 ttm_bo_mem_space +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x4720151b ttm_bo_unmap_virtual +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x49da53c5 ttm_bo_clean_mm +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x4e87adc8 ttm_eu_reserve_buffers +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x50444687 ttm_check_under_lowerlimit +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x50e86cff ttm_bo_eviction_valuable +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x50ead1d1 ttm_bo_glob +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x53586c2a ttm_mem_global_free +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x538a7565 ttm_bo_mmap_obj +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x573845a6 ttm_bo_put +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x59ca1276 ttm_bo_wait +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x5f12cd04 ttm_pool_populate +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x6131e259 ttm_bo_init +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x678b4d22 ttm_mem_glob +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x6a89746f ttm_bo_mem_compat +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x6cf16c67 ttm_tt_bind +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x6eda5558 ttm_tt_init +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x7270fee7 ttm_bo_move_ttm +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x780af539 ttm_bo_init_reserved +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x7c37b05a ttm_bo_lock_delayed_workqueue +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x81b7e1f0 ttm_bo_acc_size +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x8912555f ttm_bo_init_mm +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x894a8e43 ttm_sg_tt_init +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x8cfca670 ttm_bo_kmap +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x9005f56c ttm_bo_pipeline_move +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x90eb460f ttm_bo_vm_close +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x92dc7a2e ttm_populate_and_map_pages +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x96ab338b ttm_io_prot +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x9ddd7433 ttm_bo_validate +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xac0e50d1 ttm_round_pot +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xad8aa2fe ttm_bo_create +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xaec81554 ttm_bo_move_memcpy +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xb2f44eb0 ttm_tt_fini +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xbb0b22bd ttm_bo_manager_func +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xbb8a7b55 ttm_bo_move_to_lru_tail +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xc2cd6ba3 ttm_dma_tt_init +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xc50233c0 ttm_bo_swapout +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xcc0d3f6f ttm_bo_vm_fault +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xd5f89a28 ttm_bo_vm_access +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xd8dfb063 ttm_get_kernel_zone_memory_size +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xdb18789f ttm_bo_move_accel_cleanup +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xdb5f6c76 ttm_bo_vm_fault_reserved +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xe0152e87 ttm_bo_bulk_move_lru_tail +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xe9f3f026 ttm_bo_device_init +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xeee1f1cb ttm_pool_unpopulate +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xef3fd541 ttm_bo_swapout_all +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xf454151c ttm_eu_backoff_reservation +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xf5702e56 ttm_unmap_and_unpopulate_pages +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xff305b88 ttm_mem_global_alloc +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xff98d118 ttm_dma_tt_fini +EXPORT_SYMBOL drivers/i2c/algos/i2c-algo-bit 0x075b7a6f i2c_bit_add_numbered_bus +EXPORT_SYMBOL drivers/i2c/algos/i2c-algo-bit 0x3329617e i2c_bit_algo +EXPORT_SYMBOL drivers/i2c/algos/i2c-algo-bit 0x86220243 i2c_bit_add_bus +EXPORT_SYMBOL drivers/i2c/i2c-core 0x0b42265e i2c_smbus_read_word_data +EXPORT_SYMBOL drivers/i2c/i2c-core 0x0fd76db1 i2c_smbus_read_byte +EXPORT_SYMBOL drivers/i2c/i2c-core 0x15e83a50 i2c_smbus_write_word_data +EXPORT_SYMBOL drivers/i2c/i2c-core 0x16135780 __i2c_transfer +EXPORT_SYMBOL drivers/i2c/i2c-core 0x1dbddee1 i2c_del_adapter +EXPORT_SYMBOL drivers/i2c/i2c-core 0x3e9c7a51 i2c_verify_client +EXPORT_SYMBOL drivers/i2c/i2c-core 0x42571725 i2c_smbus_write_block_data +EXPORT_SYMBOL drivers/i2c/i2c-core 0x4a3a38a3 i2c_smbus_read_i2c_block_data +EXPORT_SYMBOL drivers/i2c/i2c-core 0x6fd55aec __i2c_smbus_xfer +EXPORT_SYMBOL drivers/i2c/i2c-core 0x77545c6f i2c_add_adapter +EXPORT_SYMBOL drivers/i2c/i2c-core 0x789872e2 i2c_smbus_write_byte +EXPORT_SYMBOL drivers/i2c/i2c-core 0x7ff564aa i2c_transfer_buffer_flags +EXPORT_SYMBOL drivers/i2c/i2c-core 0x91be2be3 i2c_smbus_read_byte_data +EXPORT_SYMBOL drivers/i2c/i2c-core 0x931f4a91 i2c_smbus_read_block_data +EXPORT_SYMBOL drivers/i2c/i2c-core 0x9449ffb3 i2c_smbus_xfer +EXPORT_SYMBOL drivers/i2c/i2c-core 0x961fc00b i2c_put_adapter +EXPORT_SYMBOL drivers/i2c/i2c-core 0xa4e86666 i2c_smbus_write_i2c_block_data +EXPORT_SYMBOL drivers/i2c/i2c-core 0xac706b42 i2c_transfer +EXPORT_SYMBOL drivers/i2c/i2c-core 0xbfd7a51a i2c_register_driver +EXPORT_SYMBOL drivers/i2c/i2c-core 0xc5c8c37d i2c_verify_adapter +EXPORT_SYMBOL drivers/i2c/i2c-core 0xdd8d06a2 i2c_smbus_write_byte_data +EXPORT_SYMBOL drivers/i2c/i2c-core 0xe0acfed3 i2c_clients_command +EXPORT_SYMBOL drivers/i2c/i2c-core 0xf358fbbd i2c_del_driver +EXPORT_SYMBOL drivers/i2c/i2c-core 0xf73ae846 i2c_smbus_read_i2c_block_data_or_emulated +EXPORT_SYMBOL drivers/i2c/i2c-core 0xf979c766 i2c_get_adapter +EXPORT_SYMBOL drivers/infiniband/core/ib_cm 0x048afe81 ib_send_cm_drep +EXPORT_SYMBOL drivers/infiniband/core/ib_cm 0x09fe84b4 ib_send_cm_sidr_req +EXPORT_SYMBOL drivers/infiniband/core/ib_cm 0x1a7a610c ib_send_cm_rej +EXPORT_SYMBOL drivers/infiniband/core/ib_cm 0x3049d63f ib_send_cm_req +EXPORT_SYMBOL drivers/infiniband/core/ib_cm 0x319cb063 ib_send_cm_sidr_rep +EXPORT_SYMBOL drivers/infiniband/core/ib_cm 0x4cd2bafb ib_cm_notify +EXPORT_SYMBOL drivers/infiniband/core/ib_cm 0x4fa3409a ib_destroy_cm_id +EXPORT_SYMBOL drivers/infiniband/core/ib_cm 0x5c5ae421 ib_cm_listen +EXPORT_SYMBOL drivers/infiniband/core/ib_cm 0x69824a14 ibcm_reject_msg +EXPORT_SYMBOL drivers/infiniband/core/ib_cm 0x69dabcb2 ib_send_cm_dreq +EXPORT_SYMBOL drivers/infiniband/core/ib_cm 0x6bbd4de6 ib_cm_init_qp_attr +EXPORT_SYMBOL drivers/infiniband/core/ib_cm 0x851f60b3 ib_send_cm_mra +EXPORT_SYMBOL drivers/infiniband/core/ib_cm 0x8902f2cf ib_cm_insert_listen +EXPORT_SYMBOL drivers/infiniband/core/ib_cm 0x8f589807 ib_send_cm_rtu +EXPORT_SYMBOL drivers/infiniband/core/ib_cm 0xc469ee86 cm_class +EXPORT_SYMBOL drivers/infiniband/core/ib_cm 0xd8198bed ib_send_cm_rep +EXPORT_SYMBOL drivers/infiniband/core/ib_cm 0xdf53ee6a ib_create_cm_id +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x0042be40 __ib_alloc_pd +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x02b06b87 rdma_rw_ctx_init +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x03ddab0c ibnl_put_attr +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x03e5b6a5 ib_create_send_mad +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x043ea8a1 ib_create_srq_user +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x061c46ba ib_device_get_by_netdev +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x0641abb0 rdma_read_gid_l2_fields +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x06830b9a ib_pack +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x08a6fcb5 rdma_query_gid +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x0922bc08 rdma_restrack_get_byid +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x0b0a0ac3 rdma_destroy_ah_attr +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x0d130de3 rdma_set_cq_moderation +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x0d4e6e4d ib_process_cq_direct +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x0de40857 rdma_nl_unicast_wait +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x0e8836c1 ib_unregister_mad_agent +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x0e97f4d9 rdma_user_mmap_entry_put +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x11331b66 rdma_copy_ah_attr +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x11f81227 ib_init_ah_from_mcmember +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x15589682 rdma_nl_unicast +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x15e67d2a ib_destroy_qp_user +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x166bb9be ib_create_rwq_ind_table +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x18de1cd9 rdma_alloc_netdev +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x1a32de87 rdma_find_gid +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x1ad691e4 rdma_nl_multicast +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x1b037462 __rdma_block_iter_start +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x1b343b48 ib_set_vf_link_state +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x1b9be8e5 rdma_nl_register +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x1cdcd48d ib_register_mad_agent +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x1d2bf2a9 ib_reg_user_mr +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x1dad3c18 ib_sa_path_rec_get +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x1dff998b ib_mr_pool_destroy +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x1e50871d rdma_link_unregister +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x206e00b9 ibnl_put_msg +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x215adeb3 ib_modify_device +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x21999985 __ib_alloc_xrcd +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x28ed06e2 __ib_alloc_cq +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x291e0d0f ib_rdmacg_try_charge +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x2a91bb33 ib_cache_gid_type_str +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x2e65cac6 rdma_resolve_ip +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x2f595c8f ib_rdmacg_uncharge +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x305e5701 rdma_addr_size_kss +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x32a252ea rdma_find_gid_by_port +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x32f0dc8f ib_query_qp +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x346160a8 ibdev_emerg +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x36ead4f4 rdma_umap_priv_init +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x388c1eb1 rdma_rw_ctx_post +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x38af13a2 ib_init_ah_attr_from_wc +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x38e15e59 ib_device_put +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x3b008791 rdma_put_gid_attr +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x3b60db52 rdma_user_mmap_entry_get_pgoff +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x3dbc5600 rdma_user_mmap_entry_insert_range +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x3ef1054d rdma_read_gid_attr_ndev_rcu +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x3fc2387c ib_ud_header_unpack +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x4043676c ib_create_qp_security +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x408291e3 ibdev_err +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x42654fc9 ib_get_vf_stats +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x43453b24 rdma_move_ah_attr +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x434c5d10 zgid +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x43febb12 ib_modify_srq +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x44f27c86 ib_mr_pool_init +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x44ff9032 ib_advise_mr +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x45fb8985 rdma_nl_chk_listeners +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x48e1736f ib_destroy_rwq_ind_table +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x4abf5601 ib_query_srq +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x4c70c99d ibdev_printk +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 0x4f685306 rdma_modify_ah +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x52908f38 rdma_move_grh_sgid_attr +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x5410a775 ib_set_device_ops +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x54c1125a rdma_restrack_uadd +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x558be951 rdma_restrack_kadd +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x55ef333c ib_destroy_wq +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x56a75b87 ib_unregister_device_queued +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x5843a2b3 ib_find_gid +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x5905d448 ib_port_register_module_stat +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x596f4204 rdma_translate_ip +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x5b44cb48 ib_dealloc_device +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x5b726302 ib_attach_mcast +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x5b9aaf6f ib_drain_rq +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x5bbda5f4 rdma_rw_ctx_signature_init +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x5e5bdcc7 ib_modify_qp_with_udata +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x613b1e2e ib_is_mad_class_rmpp +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x61d24c52 ib_rate_to_mbps +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x61d65010 ibdev_crit +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x6673b677 ib_modify_mad +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x696f57e4 ib_check_mr_status +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x6ac9a018 rdma_user_mmap_entry_insert +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x6b958320 ib_ud_ip4_csum +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x6d4f3993 ib_sa_register_client +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x6e15b60e ib_modify_qp +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x6e668226 rdma_destroy_ah_user +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x6ef9a173 rdma_rw_ctx_destroy_signature +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x6f3614b6 rdma_is_zero_gid +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x6f548b1c ib_get_cached_lmc +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x71b38988 ib_dealloc_pd_user +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x75a729a0 rdma_nl_unregister +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x762d3481 ib_drain_qp +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x774a67e8 rdma_nl_put_driver_string +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x77d7e69f ib_get_net_dev_by_params +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x78000e04 rdma_port_get_link_layer +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x787ccc4c ib_get_mad_data_offset +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x7891a3c4 ib_mr_pool_get +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x78dc962f rdma_nl_stat_hwcounter_entry +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x790929d7 rdma_create_user_ah +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x7b56b034 ib_unregister_driver +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x7b6ba674 ib_dereg_mr_user +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x7cdc931a ib_drain_sq +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x7cec7da7 rdma_restrack_del +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x7cf55be2 ib_create_qp +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x7e1fc00a ib_device_set_netdev +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x7f3cf0b0 rdma_nl_put_driver_u64 +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x8192ab3a ib_open_qp +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x820b0fd9 ib_sa_unregister_client +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x83d53b7f ib_alloc_mr_integrity +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x85f55189 ib_alloc_mr_user +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x8661d3da ib_cancel_mad +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x86689a6c ib_get_rmpp_segment +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x8684a80b ib_dealloc_xrcd +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x86cef180 rdma_addr_size +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x89625fb3 __ib_create_cq +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x8b0f55ad ib_init_ah_attr_from_path +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x8ba14821 ib_modify_port +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x8d3631b5 ib_register_client +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x8d67b636 ib_detach_mcast +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x8e7528da __rdma_block_iter_next +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x90e807c7 ib_cache_gid_parse_type_str +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x933a4d47 rdma_query_ah +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x9467d240 rdma_read_gid_hw_context +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x963d13c5 ib_free_send_mad +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x963e234e rdma_user_mmap_entry_get +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x9714e65c ib_free_cq +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x99095ae7 ib_register_device +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x990dfaeb rdma_get_gid_attr +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x9a2f26bd ib_post_send_mad +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x9b827235 rdma_copy_src_l2_addr +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x9c1ab55b ibdev_warn +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x9ca91077 ib_get_cached_subnet_prefix +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x9cb7d55a rdma_rw_ctx_destroy +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x9f1a92c3 ib_register_event_handler +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xa0c66f56 ib_device_get_by_name +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xa2b9032e ib_sa_sendonly_fullmem_support +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xa2da66e6 ib_unregister_event_handler +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xa9b978d0 ib_unregister_device_and_put +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xaab0baed __ib_alloc_cq_any +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xab2e5714 ib_find_exact_cached_pkey +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xac8980f3 ib_map_mr_sg +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xac917a50 ib_cq_pool_get +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xae956dce ib_rate_to_mult +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xaf0a196f ib_mad_kernel_rmpp_agent +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xaf7b61a6 ib_get_cached_pkey +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xb000d631 ib_get_gids_from_rdma_hdr +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xb0059fe0 ib_close_qp +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xb36e4148 ib_sa_pack_path +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xb3889d55 ib_get_vf_guid +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xb5277458 ib_modify_wq +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xb7852a05 ib_ud_header_init +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xb7b2e5e8 ib_dispatch_event +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xb8532324 ib_unregister_device +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xbc225789 _ib_alloc_device +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xbc429fd9 rdma_link_register +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xc0e7d3b2 ib_query_port +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xc186d0b9 rdma_dev_access_netns +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xc1d7c7a9 ib_create_ah_from_wc +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xc3b76c1a ib_get_cached_port_state +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xc4dd0641 rdma_nl_put_driver_u64_hex +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xc80499e7 ib_query_pkey +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xca99d162 ib_map_mr_sg_pi +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xcae86014 rdma_nl_put_driver_u32_hex +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xccbc82b5 ib_find_pkey +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xcef42e9e rdma_restrack_get +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xd2a723ba ib_cq_pool_put +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xd38482d8 ib_resize_cq +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xd6636ca6 rdma_addr_size_in6 +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xd6e65d77 ib_modify_qp_is_ok +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xd7acd3da rdma_user_mmap_entry_remove +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xda0d50ec ib_sa_cancel_query +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xe0628c64 ibdev_notice +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xe1e28a51 ib_sa_service_rec_query +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xe1e3b430 ib_sa_get_mcmember_rec +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xe2c95db8 ib_get_device_fw_str +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xe4d26e34 ib_sa_guid_info_rec_query +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xe571d160 roce_gid_type_mask_support +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xe5840ec6 ib_wc_status_msg +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xe5a78c1e ib_sa_unpack_path +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xe67295c4 rdma_rw_mr_factor +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xe6a1091b ib_sg_to_pages +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xe76e1c94 ib_destroy_cq_user +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xe7825b42 rdma_hold_gid_attr +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xe7b52e5f mult_to_ib_rate +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xe8950a4a rdma_user_mmap_io +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xe8bb0960 ib_destroy_srq_user +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xe995ab56 ib_create_wq +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xe9ceb556 ib_get_rdma_header_version +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xe9d6104a ib_unregister_client +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xe9e799fc ib_ud_header_pack +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xeb18b6b3 rdma_restrack_set_task +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xeb490b94 rdma_create_ah +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xec171e81 rdma_replace_ah_attr +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xec226e7e ib_set_client_data +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xee2a4eda ib_sa_join_multicast +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xeebebe09 rdma_addr_cancel +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xefc74070 rdma_init_netdev +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xf2a0eb8e ib_get_eth_speed +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xf2b51445 ibdev_alert +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xf30522e5 rdma_restrack_put +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xf4d8458d rdma_restrack_count +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xf4db11bc ib_set_vf_guid +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xf52c5919 ib_find_cached_pkey +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 0xf70e20e2 ib_port_unregister_module_stat +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xf82e04b4 ibdev_info +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xf861bcb8 ib_get_vf_config +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xf93525f2 rdma_nl_put_driver_u32 +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xf96fc9de ib_unpack +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xfacd8485 rdma_rw_ctx_wrs +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xfcb51b92 rdma_roce_rescan_device +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xfdfbf645 ib_free_recv_mad +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xfe670760 ib_mr_pool_put +EXPORT_SYMBOL drivers/infiniband/core/ib_uverbs 0x00a214a2 ib_umem_copy_from +EXPORT_SYMBOL drivers/infiniband/core/ib_uverbs 0x0198a964 uverbs_fd_class +EXPORT_SYMBOL drivers/infiniband/core/ib_uverbs 0x03d03afc uverbs_get_flags64 +EXPORT_SYMBOL drivers/infiniband/core/ib_uverbs 0x0e5d0605 _uverbs_get_const +EXPORT_SYMBOL drivers/infiniband/core/ib_uverbs 0x1b54bd5d ib_copy_path_rec_from_user +EXPORT_SYMBOL drivers/infiniband/core/ib_uverbs 0x1de0b9f4 ib_umem_odp_map_dma_pages +EXPORT_SYMBOL drivers/infiniband/core/ib_uverbs 0x2fa8195c ib_uverbs_flow_resources_free +EXPORT_SYMBOL drivers/infiniband/core/ib_uverbs 0x31504861 ib_copy_qp_attr_to_user +EXPORT_SYMBOL drivers/infiniband/core/ib_uverbs 0x31b4da22 ib_umem_odp_unmap_dma_pages +EXPORT_SYMBOL drivers/infiniband/core/ib_uverbs 0x3d49f666 uverbs_idr_class +EXPORT_SYMBOL drivers/infiniband/core/ib_uverbs 0x44a05ef3 ib_umem_find_best_pgsz +EXPORT_SYMBOL drivers/infiniband/core/ib_uverbs 0x5328de12 ib_umem_odp_alloc_implicit +EXPORT_SYMBOL drivers/infiniband/core/ib_uverbs 0x5aebd955 uverbs_uobject_fd_release +EXPORT_SYMBOL drivers/infiniband/core/ib_uverbs 0x63057f4b ib_copy_path_rec_to_user +EXPORT_SYMBOL drivers/infiniband/core/ib_uverbs 0x72bcc78e uverbs_copy_to +EXPORT_SYMBOL drivers/infiniband/core/ib_uverbs 0x771f44cb ib_copy_ah_attr_to_user +EXPORT_SYMBOL drivers/infiniband/core/ib_uverbs 0x84e5ce12 ib_umem_get +EXPORT_SYMBOL drivers/infiniband/core/ib_uverbs 0x883787bf ib_umem_odp_release +EXPORT_SYMBOL drivers/infiniband/core/ib_uverbs 0x8d7c9a33 _uverbs_alloc +EXPORT_SYMBOL drivers/infiniband/core/ib_uverbs 0x9954545a ib_umem_page_count +EXPORT_SYMBOL drivers/infiniband/core/ib_uverbs 0xa22d0d40 flow_resources_add +EXPORT_SYMBOL drivers/infiniband/core/ib_uverbs 0xa86a5af1 uverbs_get_flags32 +EXPORT_SYMBOL drivers/infiniband/core/ib_uverbs 0xba263183 ib_uverbs_get_ucontext_file +EXPORT_SYMBOL drivers/infiniband/core/ib_uverbs 0xd9f75f6c uverbs_uobject_put +EXPORT_SYMBOL drivers/infiniband/core/ib_uverbs 0xe0250817 uverbs_destroy_def_handler +EXPORT_SYMBOL drivers/infiniband/core/ib_uverbs 0xe0745c3d flow_resources_alloc +EXPORT_SYMBOL drivers/infiniband/core/ib_uverbs 0xe765c4dc ib_umem_release +EXPORT_SYMBOL drivers/infiniband/core/ib_uverbs 0xf108dcdf ib_umem_odp_alloc_child +EXPORT_SYMBOL drivers/infiniband/core/ib_uverbs 0xfadf3f34 uverbs_finalize_uobj_create +EXPORT_SYMBOL drivers/infiniband/core/ib_uverbs 0xff6c8182 ib_umem_odp_get +EXPORT_SYMBOL drivers/infiniband/core/iw_cm 0x0bd1a8cc iw_destroy_cm_id +EXPORT_SYMBOL drivers/infiniband/core/iw_cm 0x7f74d28f iw_cm_init_qp_attr +EXPORT_SYMBOL drivers/infiniband/core/iw_cm 0x940806e7 iw_cm_disconnect +EXPORT_SYMBOL drivers/infiniband/core/iw_cm 0x9e97a49c iw_cm_listen +EXPORT_SYMBOL drivers/infiniband/core/iw_cm 0xbe1f2a50 iw_cm_accept +EXPORT_SYMBOL drivers/infiniband/core/iw_cm 0xd2166ffc iw_create_cm_id +EXPORT_SYMBOL drivers/infiniband/core/iw_cm 0xd66258d9 iw_cm_reject +EXPORT_SYMBOL drivers/infiniband/core/iw_cm 0xdfc07416 iw_cm_connect +EXPORT_SYMBOL drivers/infiniband/core/iw_cm 0xf3df871f iwcm_reject_msg +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0x1f8dcd02 rdma_destroy_qp +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0x23dbcb74 rdma_create_qp +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0x281c4a06 rdma_set_afonly +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0x357c95ae rdma_join_multicast +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0x4ee9493f rdma_set_service_type +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0x4f55eec2 rdma_disconnect +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0x59d070b8 rdma_res_to_id +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0x629d392f __rdma_accept_ece +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0x63e4f700 rdma_iw_cm_id +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0x66f857ce rdma_listen +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0x699337c1 rdma_resolve_route +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0x77a1e8d1 rdma_get_service_id +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0x7fe0d580 rdma_set_ack_timeout +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0x9057839c rdma_destroy_id +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0x907df803 rdma_event_msg +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0x934505f9 rdma_read_gids +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0xa04db322 rdma_init_qp_attr +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0xa0c7bf15 __rdma_create_id +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0xab63be54 rdma_resolve_addr +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0xab674f20 rdma_bind_addr +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0xb05ba247 __rdma_accept +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0xb0b14dc2 rdma_reject +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0xbc59c9b4 rdma_notify +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0xc31e45f0 rdma_consumer_reject_data +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0xd0aa2d13 rdma_set_ib_path +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0xd546fbbd rdma_leave_multicast +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0xd7f2daa2 rdma_connect_ece +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0xe8883017 rdma_set_reuseaddr +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0xf4f1ef3c rdma_connect +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0xf5d09f45 rdma_reject_msg +EXPORT_SYMBOL drivers/infiniband/ulp/rtrs/rtrs-client 0x315c9e00 rtrs_clt_query +EXPORT_SYMBOL drivers/infiniband/ulp/rtrs/rtrs-client 0x501f598d rtrs_permit_to_pdu +EXPORT_SYMBOL drivers/infiniband/ulp/rtrs/rtrs-client 0x593386e8 rtrs_clt_request +EXPORT_SYMBOL drivers/infiniband/ulp/rtrs/rtrs-client 0x68f680fb rtrs_clt_put_permit +EXPORT_SYMBOL drivers/infiniband/ulp/rtrs/rtrs-client 0x8249e3e5 rtrs_clt_get_permit +EXPORT_SYMBOL drivers/infiniband/ulp/rtrs/rtrs-client 0xe6b26e3a rtrs_clt_close +EXPORT_SYMBOL drivers/infiniband/ulp/rtrs/rtrs-client 0xf65bb765 rtrs_clt_open +EXPORT_SYMBOL drivers/infiniband/ulp/rtrs/rtrs-core 0x17c1e961 rtrs_rdma_dev_pd_deinit +EXPORT_SYMBOL drivers/infiniband/ulp/rtrs/rtrs-core 0x99b7caed sockaddr_to_str +EXPORT_SYMBOL drivers/infiniband/ulp/rtrs/rtrs-core 0xa82964c4 rtrs_ib_dev_find_or_add +EXPORT_SYMBOL drivers/infiniband/ulp/rtrs/rtrs-core 0xc28750dd rtrs_addr_to_sockaddr +EXPORT_SYMBOL drivers/infiniband/ulp/rtrs/rtrs-core 0xd420b49f rtrs_ib_dev_put +EXPORT_SYMBOL drivers/infiniband/ulp/rtrs/rtrs-core 0xeea1fadf rtrs_rdma_dev_pd_init +EXPORT_SYMBOL drivers/infiniband/ulp/rtrs/rtrs-server 0x020249ff rtrs_srv_set_sess_priv +EXPORT_SYMBOL drivers/infiniband/ulp/rtrs/rtrs-server 0x2690b33d rtrs_srv_close +EXPORT_SYMBOL drivers/infiniband/ulp/rtrs/rtrs-server 0x418fa39a rtrs_srv_resp_rdma +EXPORT_SYMBOL drivers/infiniband/ulp/rtrs/rtrs-server 0x96b846f9 rtrs_srv_get_sess_name +EXPORT_SYMBOL drivers/infiniband/ulp/rtrs/rtrs-server 0xbd82b279 rtrs_srv_get_queue_depth +EXPORT_SYMBOL drivers/infiniband/ulp/rtrs/rtrs-server 0xd29bfd82 rtrs_srv_open +EXPORT_SYMBOL drivers/md/dm-log 0x521e7605 dm_dirty_log_type_register +EXPORT_SYMBOL drivers/md/dm-log 0x741fa05e dm_dirty_log_create +EXPORT_SYMBOL drivers/md/dm-log 0xaec4f5e0 dm_dirty_log_type_unregister +EXPORT_SYMBOL drivers/md/dm-log 0xc6ed3eef dm_dirty_log_destroy +EXPORT_SYMBOL drivers/md/dm-snapshot 0x0440be99 dm_snap_origin +EXPORT_SYMBOL drivers/md/dm-snapshot 0x5cca94c6 dm_exception_store_destroy +EXPORT_SYMBOL drivers/md/dm-snapshot 0x7cf9d2d4 dm_exception_store_type_register +EXPORT_SYMBOL drivers/md/dm-snapshot 0x9440523d dm_exception_store_type_unregister +EXPORT_SYMBOL drivers/md/dm-snapshot 0xbf916881 dm_exception_store_create +EXPORT_SYMBOL drivers/md/dm-snapshot 0xfce60171 dm_snap_cow +EXPORT_SYMBOL drivers/md/raid456 0x69a22a29 r5c_journal_mode_set +EXPORT_SYMBOL drivers/md/raid456 0xc5a0f540 raid5_set_cache_size +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x05ea3801 mlx4_query_diag_counters +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x06d7d8e6 mlx4_sync_pkey_table +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x0c5a1b81 mlx4_SET_PORT_user_mac +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x133868bb mlx4_SET_PORT_VXLAN +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x14dac13d mlx4_gen_pkey_eqe +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x17e397ca mlx4_SET_PORT_fcs_check +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x1cc616f7 mlx4_test_interrupt +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x237234b1 mlx4_max_tc +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x25d81b99 mlx4_tunnel_steer_add +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x3bd5146c mlx4_is_eq_shared +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x45060482 mlx4_get_parav_qkey +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x4e210377 mlx4_SET_VPORT_QOS_set +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x58484fa4 mlx4_get_slave_pkey_gid_tbl_len +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x5985beaf mlx4_get_slave_from_roce_gid +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x5c8d9087 mlx4_assign_eq +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x5f1a8b23 mlx4_test_async +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x63f57d15 mlx4_get_roce_gid_from_slave +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x700a4092 mlx4_release_eq +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x7186a473 mlx4_get_module_info +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x75bac9c0 mlx4_get_slave_node_guid +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x777c450f mlx4_SET_PORT_BEACON +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x77c38190 mlx4_SET_PORT_qpn_calc +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x793f8a83 set_and_calc_slave_port_state +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x7b499f71 mlx4_SET_PORT_PRIO2TC +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x7d56f2a8 mlx4_SET_PORT_user_mtu +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 0x80b897de mlx4_gen_port_state_change_eqe +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x87515327 mlx4_SET_PORT_SCHEDULER +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x9003d625 mlx4_is_eq_vector_valid +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xa05a96e0 get_phv_bit +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xa1bd6209 mlx4_gen_guid_change_eqe +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xa6d2eac2 mlx4_get_is_vlan_offload_disabled +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xa9e5b52d mlx4_get_eqs_per_port +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xaea45b5b set_phv_bit +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xb2c54ee7 mlx4_gen_slaves_port_mgt_ev +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xb945ef86 mlx4_SET_PORT_general +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xbc9cc9d5 mlx4_ALLOCATE_VPP_get +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xbf4a1b4c mlx4_SET_VPORT_QOS_get +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xcb500ff4 mlx4_get_cpu_rmap +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xd37fe5cb mlx4_get_slave_port_state +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xd8351e10 mlx4_ALLOCATE_VPP_set +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xda025857 mlx4_is_slave_active +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xdb71e340 mlx4_eq_get_irq +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xe038781b mlx4_put_slave_node_guid +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xfa892239 mlx4_SET_MCAST_FLTR +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x04f65a2b mlx5_put_uars_page +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x0cf0305c mlx5_lag_is_roce +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x0ebffb54 mlx5_eswitch_get_encap_mode +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x0edda129 mlx5_core_destroy_rq +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x0eeef3b6 mlx5_core_modify_rq +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x0fe5ac09 mlx5_core_alloc_pd +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x11327591 mlx5_get_flow_namespace +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x122678b7 mlx5_cmd_cleanup_async_ctx +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x1352fb9e mlx5_rl_add_rate +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x171fe180 mlx5_core_dealloc_transport_domain +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x18098536 mlx5_core_destroy_cq +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x1f564045 mlx5_qp_debugfs_init +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x237b5ed4 mlx5_eq_enable +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x25585fd1 mlx5_core_detach_mcg +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x255b4a7d mlx5_fc_create +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x27fa4d63 __tracepoint_mlx5_fs_del_fg +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x2919c1b4 mlx5_eswitch_uplink_get_proto_dev +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x2995239e mlx5_core_modify_cq +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x29b42c28 mlx5_core_modify_sq +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x29f9e9a0 mlx5_buf_alloc +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x2daa095a mlx5_fs_add_rx_underlay_qpn +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x2f4cc0c2 mlx5_cmd_set_state +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x31b80635 mlx5_core_attach_mcg +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x32705594 __tracepoint_mlx5_fs_del_rule +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x3703f1e7 mlx5_lag_query_cong_counters +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x37651b47 __tracepoint_mlx5_fs_set_fte +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x398d70af mlx5_cmd_free_uar +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x3a68676d mlx5_rl_add_rate_raw +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x3e960390 __tracepoint_mlx5_fw +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x410242eb mlx5_free_bfreg +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x4398b24f mlx5_notifier_unregister +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x44d08db2 mlx5_rdma_rn_get_params +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x45be063a mlx5_cmd_alloc_uar +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x46150cf1 __tracepoint_mlx5_fs_del_ft +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x4bcafd8b mlx5_core_alloc_transport_domain +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x4c87744b mlx5_lag_get_slave_port +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x505ef76c mlx5_core_destroy_psv +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x519c75e3 mlx5_lag_get_roce_netdev +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x52463827 mlx5_core_create_rqt +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x5264e44f mlx5_debug_qp_remove +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x538ceae0 mlx5_fc_query +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x5486d133 mlx5_core_destroy_tir +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x54fa5d09 mlx5_rl_is_in_range +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x577e8895 mlx5_alloc_bfreg +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x598f51c6 mlx5_fpga_mem_read +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x5d409015 mlx5_modify_header_dealloc +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x5ec265cb mlx5_core_roce_gid_set +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x60d1dc5f mlx5_eq_notifier_register +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 0x6217b907 mlx5_fpga_sbu_conn_sendmsg +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x662d7472 mlx5_core_destroy_tis +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x66b4a2ea mlx5_query_port_ib_proto_oper +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x672561cd mlx5_nic_vport_disable_roce +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x68733666 mlx5_register_interface +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x6b9de483 mlx5_fs_remove_rx_underlay_qpn +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x6ff67bac mlx5_eswitch_vport_match_metadata_enabled +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x72b8310e mlx5_fpga_mem_write +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x757c2e75 mlx5_eswitch_vport_rep +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x7746710c mlx5_fpga_sbu_conn_create +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x79d41e03 mlx5_core_destroy_mkey +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x7a380575 mlx5_eq_get_eqe +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x7a3d20d6 mlx5_core_modify_tis +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x7b3c64f4 mlx5_core_modify_cq_moderation +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x82ca4deb mlx5_get_uars_page +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x87a25e22 __tracepoint_mlx5_fs_add_rule +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x8819a17f mlx5_eq_update_ci +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x8994164f mlx5_core_create_cq +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x8d18ba63 mlx5_qp_debugfs_cleanup +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x8e80d016 mlx5_eq_notifier_unregister +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x8eeefaa0 __tracepoint_mlx5_fs_add_fg +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x8fc0d3a1 mlx5_comp_irq_get_affinity_mask +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x9045587b mlx5_unregister_interface +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x907ba16b mlx5_core_query_mkey +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x90fa1b5a mlx5_cmd_init +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x91192eec mlx5_core_destroy_rqt +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x936877d4 mlx5_eq_disable +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x9420a3d1 mlx5_fpga_get_sbu_caps +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x96eb2c99 mlx5_fc_id +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x9ad696e1 mlx5_core_query_rq +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x9c7a6fff mlx5_fc_destroy +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x9d519848 mlx5_modify_header_alloc +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x9db2085c mlx5_lag_is_sriov +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x9f8f836d mlx5_eq_destroy_generic +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x9fb9a915 mlx5_create_auto_grouped_flow_table +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xa35213c2 mlx5_core_create_tis +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xa432f187 mlx5_packet_reformat_alloc +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xa4399ac4 mlx5_debugfs_root +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xa44a0667 mlx5_eswitch_get_vport_metadata_for_match +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xa5c61698 mlx5_packet_reformat_dealloc +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xa63fe82b mlx5_core_query_vendor_id +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xa6fc1de8 mlx5_get_fdb_sub_ns +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xa7a84f04 mlx5_create_lag_demux_flow_table +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xa81ea03d mlx5_eq_create_generic +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xa99debbb mlx5_destroy_flow_table +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xaa95f949 mlx5_cmd_cleanup +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xabf88278 mlx5_eswitch_unregister_vport_reps +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xae9ea383 __tracepoint_mlx5_fs_del_fte +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xb0453040 mlx5_core_query_cq +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xb060140f mlx5_cmd_create_vport_lag +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xb3d5b147 mlx5_del_flow_rules +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xb4c2f75e mlx5_core_create_tir +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xb527f1c2 mlx5_eswitch_register_vport_reps +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xb73ec30d mlx5_notifier_register +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xbd77b843 mlx5_eswitch_add_send_to_vport_rule +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xbd8c497f mlx5_core_query_sq +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xc03ccb79 mlx5_cmd_destroy_vport_lag +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xc1a95e45 mlx5_cmd_init_async_ctx +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xc1bf58d1 mlx5_core_dealloc_pd +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xc23bfa01 mlx5_rl_remove_rate +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xc3698796 mlx5_comp_vectors_count +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xc8bdc932 mlx5_lag_is_active +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xcb9bac83 mlx5_cmd_exec_cb +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xcdd4cfa9 mlx5_cmd_exec_polling +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xd1dbd448 mlx5_fpga_sbu_conn_destroy +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xd267211a mlx5_eswitch_get_proto_dev +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xd5d9deba mlx5_rl_remove_rate_raw +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xd9f3ae4d mlx5_debug_qp_add +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xdb259d7a mlx5_core_create_mkey +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xde20e9d6 mlx5_add_flow_rules +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xe067bf5e mlx5_core_create_rq +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xeb0c4532 mlx5_core_create_psv +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xef01bb32 __tracepoint_mlx5_fs_add_ft +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xf19fc92f mlx5_vector2eqn +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xf425a87f mlx5_cmd_exec +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xf4eeb309 mlx5_eswitch_reg_c1_loopback_enabled +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxfw/mlxfw 0x4979f7b1 mlxfw_firmware_flash +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0x02998acf mlxsw_afa_block_append_counter +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 0x07abcc0c mlxsw_afa_block_append_trap +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0x080a2223 mlxsw_core_skb_receive +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0x0ca34ccf mlxsw_core_max_ports +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0x0dd8caa3 mlxsw_reg_trans_write +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0x0e2b5842 mlxsw_afa_block_append_vlan_modify +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0x0e81c09c mlxsw_afk_destroy +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0x1013fdeb mlxsw_core_skb_transmit +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0x15801382 mlxsw_afk_key_info_put +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0x16e52101 mlxsw_core_trap_register +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0x19fa5852 mlxsw_core_flush_owq +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 0x2949d4f4 mlxsw_afa_block_append_mirror +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0x2c68ced3 mlxsw_core_read_frc_h +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0x2decde87 mlxsw_core_fw_flash_start +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0x2f2c4887 mlxsw_afa_block_append_qos_switch_prio +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0x359b640f mlxsw_core_port_devlink_port_get +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0x35ba2254 mlxsw_afk_values_add_u32 +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0x3f123442 mlxsw_core_kvd_sizes_get +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0x41055a45 mlxsw_core_event_listener_unregister +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 0x47fd6eee mlxsw_core_fw_flash_end +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0x4a6ed376 mlxsw_core_port_fini +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0x4e2424ee mlxsw_reg_trans_query +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0x5cf3dd79 mlxsw_core_bus_device_unregister +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0x5ff17b5c mlxsw_afa_block_destroy +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0x615ef5fc mlxsw_afa_block_append_qos_dscp +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0x618a30ab mlxsw_afa_block_commit +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0x632314f1 mlxsw_cmd_exec +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0x63874d4c mlxsw_core_port_driver_priv +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0x63dcc3bc mlxsw_core_rx_listener_register +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0x65e16da4 mlxsw_afk_key_info_get +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0x692ac04e mlxsw_afk_create +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0x6d92a28c mlxsw_core_ptp_transmitted +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0x71e1d813 mlxsw_core_port_clear +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0x73cf1d7a mlxsw_core_res_get +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0x749556a2 mlxsw_afk_key_info_subset +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0x76a65e3b mlxsw_core_port_init +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0x77768221 mlxsw_core_module_max_width +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0x77d83398 mlxsw_core_read_frc_l +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0x7a0cc78a mlxsw_core_driver_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 0x858c30d0 mlxsw_afa_block_create +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0x8854d198 mlxsw_reg_write +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0x8ba5fa7e mlxsw_core_lag_mapping_set +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0x902c3533 mlxsw_core_schedule_dw +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0x95830263 mlxsw_core_bus_device_register +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0x9636e030 mlxsw_core_trap_unregister +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0x963cfb6a mlxsw_core_resources_query +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 0x9d560fb2 mlxsw_env_get_module_eeprom +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0x9e41f494 mlxsw_afk_encode +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0x9fc75941 mlxsw_core_rx_listener_unregister +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0xa3d0d2b6 mlxsw_afa_block_append_fwd +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0xa7765e88 mlxsw_reg_query +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0xa7ccb62a mlxsw_afa_block_append_qos_dsfield +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0xb0717797 mlxsw_afa_block_append_fid_set +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0xb2f24677 mlxsw_core_res_valid +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0xb5e762fa mlxsw_afk_values_add_buf +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 0xba05b3b0 mlxsw_core_emad_string_tlv_enable +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0xbc222a8d mlxsw_afk_clear +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0xbe82d6cc mlxsw_env_get_module_info +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0xbfb7df3c mlxsw_core_driver_priv +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0xbfd01f33 mlxsw_core_port_ib_set +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0xc9c2e4cc mlxsw_core_lag_mapping_clear +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 0xcd9a40a4 mlxsw_afa_block_append_drop +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0xd1a82f0b mlxsw_core_lag_mapping_get +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0xd252e62d mlxsw_core_skb_transmit_busy +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 0xd9f711ae mlxsw_afa_block_append_mcrouter +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0xdc415cf1 mlxsw_afa_block_continue +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0xdd42671b mlxsw_core_trap_state_set +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 0xdeff4950 mlxsw_core_event_listener_register +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0xe16986dd mlxsw_afa_block_activity_get +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0xe17363c1 mlxsw_core_driver_unregister +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0xe62829f0 mlxsw_core_port_eth_set +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0xecab212a mlxsw_afa_cookie_lookup +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0xf2ca3bae mlxsw_core_res_query_enabled +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0xf4909bea mlxsw_core_port_type_get +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0xf7fbba9f mlxsw_afa_block_append_qos_ecn +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0xff007c25 mlxsw_core_cpu_port_fini +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0xff73b1a0 mlxsw_afa_create +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_pci 0x76d26420 mlxsw_pci_driver_register +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_pci 0xfd5333c5 mlxsw_pci_driver_unregister +EXPORT_SYMBOL drivers/net/phy/bcm-phy-lib 0xee6392b0 bcm54xx_auxctl_write +EXPORT_SYMBOL drivers/net/phy/libphy 0x00bab013 phy_get_pause +EXPORT_SYMBOL drivers/net/phy/libphy 0x03c65bd6 phy_sfp_probe +EXPORT_SYMBOL drivers/net/phy/libphy 0x04238c40 phy_ethtool_ksettings_set +EXPORT_SYMBOL drivers/net/phy/libphy 0x043d7f0e phy_set_asym_pause +EXPORT_SYMBOL drivers/net/phy/libphy 0x05c3c713 phy_ethtool_set_eee +EXPORT_SYMBOL drivers/net/phy/libphy 0x07737059 phy_device_register +EXPORT_SYMBOL drivers/net/phy/libphy 0x09150ee2 mdiobus_write +EXPORT_SYMBOL drivers/net/phy/libphy 0x0a1bad96 mdio_device_register +EXPORT_SYMBOL drivers/net/phy/libphy 0x0f365856 mdio_find_bus +EXPORT_SYMBOL drivers/net/phy/libphy 0x12521402 phy_modify_paged_changed +EXPORT_SYMBOL drivers/net/phy/libphy 0x13224df4 phy_write_mmd +EXPORT_SYMBOL drivers/net/phy/libphy 0x14f69f7a mdio_driver_register +EXPORT_SYMBOL drivers/net/phy/libphy 0x166d8053 mdio_driver_unregister +EXPORT_SYMBOL drivers/net/phy/libphy 0x1aab34fd mdiobus_unregister_device +EXPORT_SYMBOL drivers/net/phy/libphy 0x1eb4e22e __phy_write_mmd +EXPORT_SYMBOL drivers/net/phy/libphy 0x240119ac phy_start +EXPORT_SYMBOL drivers/net/phy/libphy 0x26b112ef phy_do_ioctl_running +EXPORT_SYMBOL drivers/net/phy/libphy 0x2762c8ae genphy_c37_read_status +EXPORT_SYMBOL drivers/net/phy/libphy 0x2b3a2704 phy_start_aneg +EXPORT_SYMBOL drivers/net/phy/libphy 0x2f0372f4 phy_set_max_speed +EXPORT_SYMBOL drivers/net/phy/libphy 0x314db1a0 genphy_soft_reset +EXPORT_SYMBOL drivers/net/phy/libphy 0x3392bd99 phy_register_fixup +EXPORT_SYMBOL drivers/net/phy/libphy 0x36c34323 phy_ethtool_get_wol +EXPORT_SYMBOL drivers/net/phy/libphy 0x3918c923 phy_attach_direct +EXPORT_SYMBOL drivers/net/phy/libphy 0x394a1e11 phy_sfp_attach +EXPORT_SYMBOL drivers/net/phy/libphy 0x3c0e6eda mdiobus_read +EXPORT_SYMBOL drivers/net/phy/libphy 0x3cb8d4d4 genphy_aneg_done +EXPORT_SYMBOL drivers/net/phy/libphy 0x3e17202c phy_attached_print +EXPORT_SYMBOL drivers/net/phy/libphy 0x3efe1703 phy_unregister_fixup_for_id +EXPORT_SYMBOL drivers/net/phy/libphy 0x40e1104e phy_device_remove +EXPORT_SYMBOL drivers/net/phy/libphy 0x412e8ba6 phy_attach +EXPORT_SYMBOL drivers/net/phy/libphy 0x42a48633 phy_init_hw +EXPORT_SYMBOL drivers/net/phy/libphy 0x43328b0d phy_attached_info_irq +EXPORT_SYMBOL drivers/net/phy/libphy 0x46fcf8fa mdiobus_get_phy +EXPORT_SYMBOL drivers/net/phy/libphy 0x544fd95f mdio_device_free +EXPORT_SYMBOL drivers/net/phy/libphy 0x569d42e8 phy_start_cable_test +EXPORT_SYMBOL drivers/net/phy/libphy 0x587759e0 phy_request_interrupt +EXPORT_SYMBOL drivers/net/phy/libphy 0x58e819de genphy_suspend +EXPORT_SYMBOL drivers/net/phy/libphy 0x5a1f619a phy_support_asym_pause +EXPORT_SYMBOL drivers/net/phy/libphy 0x5a957144 mdiobus_is_registered_device +EXPORT_SYMBOL drivers/net/phy/libphy 0x5b4efa2e genphy_read_abilities +EXPORT_SYMBOL drivers/net/phy/libphy 0x5bcfff37 __phy_resume +EXPORT_SYMBOL drivers/net/phy/libphy 0x5cc08528 phy_mac_interrupt +EXPORT_SYMBOL drivers/net/phy/libphy 0x603b222e phy_reset_after_clk_enable +EXPORT_SYMBOL drivers/net/phy/libphy 0x62ceae7b phy_attached_info +EXPORT_SYMBOL drivers/net/phy/libphy 0x6d8445cb mdiobus_register_device +EXPORT_SYMBOL drivers/net/phy/libphy 0x709d4c51 phy_write_paged +EXPORT_SYMBOL drivers/net/phy/libphy 0x70a54a14 genphy_restart_aneg +EXPORT_SYMBOL drivers/net/phy/libphy 0x770287a0 phy_read_paged +EXPORT_SYMBOL drivers/net/phy/libphy 0x778e8c63 phy_drivers_register +EXPORT_SYMBOL drivers/net/phy/libphy 0x78194d57 genphy_read_mmd_unsupported +EXPORT_SYMBOL drivers/net/phy/libphy 0x7bafa7ca phy_queue_state_machine +EXPORT_SYMBOL drivers/net/phy/libphy 0x7e485b34 phy_connect +EXPORT_SYMBOL drivers/net/phy/libphy 0x7e4d9307 get_phy_device +EXPORT_SYMBOL drivers/net/phy/libphy 0x7e8d0289 mdio_device_remove +EXPORT_SYMBOL drivers/net/phy/libphy 0x87578734 phy_device_free +EXPORT_SYMBOL drivers/net/phy/libphy 0x8a4559ae mdio_bus_type +EXPORT_SYMBOL drivers/net/phy/libphy 0x8baae68d phy_find_first +EXPORT_SYMBOL drivers/net/phy/libphy 0x8bb33256 phy_set_sym_pause +EXPORT_SYMBOL drivers/net/phy/libphy 0x8ddcc471 phy_free_interrupt +EXPORT_SYMBOL drivers/net/phy/libphy 0x8ef1aaab phy_ethtool_get_eee +EXPORT_SYMBOL drivers/net/phy/libphy 0x900f785d phy_advertise_supported +EXPORT_SYMBOL drivers/net/phy/libphy 0x90924d59 genphy_read_status_fixed +EXPORT_SYMBOL drivers/net/phy/libphy 0x91f31fff phy_disconnect +EXPORT_SYMBOL drivers/net/phy/libphy 0x95d47bfe mdiobus_alloc_size +EXPORT_SYMBOL drivers/net/phy/libphy 0x99277dc1 __phy_read_mmd +EXPORT_SYMBOL drivers/net/phy/libphy 0x99d32bc4 phy_ethtool_set_wol +EXPORT_SYMBOL drivers/net/phy/libphy 0x9c8f10a8 genphy_write_mmd_unsupported +EXPORT_SYMBOL drivers/net/phy/libphy 0x9eb1a6c7 phy_driver_unregister +EXPORT_SYMBOL drivers/net/phy/libphy 0x9fada7ff phy_ethtool_nway_reset +EXPORT_SYMBOL drivers/net/phy/libphy 0x9fd3afca phy_mii_ioctl +EXPORT_SYMBOL drivers/net/phy/libphy 0xa2a83675 phy_ethtool_get_link_ksettings +EXPORT_SYMBOL drivers/net/phy/libphy 0xa304a521 genphy_config_eee_advert +EXPORT_SYMBOL drivers/net/phy/libphy 0xa3fd0898 genphy_check_and_restart_aneg +EXPORT_SYMBOL drivers/net/phy/libphy 0xa4ce4561 phy_do_ioctl +EXPORT_SYMBOL drivers/net/phy/libphy 0xa5c592f2 mdiobus_free +EXPORT_SYMBOL drivers/net/phy/libphy 0xa8fb7368 phy_start_cable_test_tdr +EXPORT_SYMBOL drivers/net/phy/libphy 0xa934c1cd phy_register_fixup_for_id +EXPORT_SYMBOL drivers/net/phy/libphy 0xaa5f8443 genphy_setup_forced +EXPORT_SYMBOL drivers/net/phy/libphy 0xabd60d57 phy_ethtool_ksettings_get +EXPORT_SYMBOL drivers/net/phy/libphy 0xae33d1f3 phy_device_create +EXPORT_SYMBOL drivers/net/phy/libphy 0xaff09bf3 mdio_device_reset +EXPORT_SYMBOL drivers/net/phy/libphy 0xb1ee8d1f phy_suspend +EXPORT_SYMBOL drivers/net/phy/libphy 0xb2b4a7ea genphy_read_status +EXPORT_SYMBOL drivers/net/phy/libphy 0xb6acaa13 phy_sfp_detach +EXPORT_SYMBOL drivers/net/phy/libphy 0xb8c08897 phy_resume +EXPORT_SYMBOL drivers/net/phy/libphy 0xbb9a1551 phy_get_eee_err +EXPORT_SYMBOL drivers/net/phy/libphy 0xbc1aa232 mdiobus_read_nested +EXPORT_SYMBOL drivers/net/phy/libphy 0xbf649681 genphy_loopback +EXPORT_SYMBOL drivers/net/phy/libphy 0xc42a6398 mdiobus_write_nested +EXPORT_SYMBOL drivers/net/phy/libphy 0xc633d82d phy_unregister_fixup +EXPORT_SYMBOL drivers/net/phy/libphy 0xc666fcf5 phy_register_fixup_for_uid +EXPORT_SYMBOL drivers/net/phy/libphy 0xc8e403cf __mdiobus_read +EXPORT_SYMBOL drivers/net/phy/libphy 0xcf4cb231 mdiobus_unregister +EXPORT_SYMBOL drivers/net/phy/libphy 0xd1bd1f87 phy_connect_direct +EXPORT_SYMBOL drivers/net/phy/libphy 0xd430e837 phy_validate_pause +EXPORT_SYMBOL drivers/net/phy/libphy 0xd4313778 phy_aneg_done +EXPORT_SYMBOL drivers/net/phy/libphy 0xd4b67174 phy_ethtool_set_link_ksettings +EXPORT_SYMBOL drivers/net/phy/libphy 0xd4e6c69f phy_print_status +EXPORT_SYMBOL drivers/net/phy/libphy 0xd6ee7a46 mdio_device_create +EXPORT_SYMBOL drivers/net/phy/libphy 0xd738ca1b phy_unregister_fixup_for_uid +EXPORT_SYMBOL drivers/net/phy/libphy 0xdbeaadf7 phy_remove_link_mode +EXPORT_SYMBOL drivers/net/phy/libphy 0xdbfb178a phy_stop +EXPORT_SYMBOL drivers/net/phy/libphy 0xdcd73abb __mdiobus_register +EXPORT_SYMBOL drivers/net/phy/libphy 0xddf17c91 genphy_resume +EXPORT_SYMBOL drivers/net/phy/libphy 0xe172c5b4 phy_loopback +EXPORT_SYMBOL drivers/net/phy/libphy 0xe2d6a265 mdiobus_scan +EXPORT_SYMBOL drivers/net/phy/libphy 0xe3f9ff81 __mdiobus_write +EXPORT_SYMBOL drivers/net/phy/libphy 0xe4d5a6ec phy_driver_register +EXPORT_SYMBOL drivers/net/phy/libphy 0xe7e7982a genphy_read_lpa +EXPORT_SYMBOL drivers/net/phy/libphy 0xe86f7b97 phy_detach +EXPORT_SYMBOL drivers/net/phy/libphy 0xea58562e phy_init_eee +EXPORT_SYMBOL drivers/net/phy/libphy 0xebec87ba phy_drivers_unregister +EXPORT_SYMBOL drivers/net/phy/libphy 0xed34df7b genphy_c37_config_aneg +EXPORT_SYMBOL drivers/net/phy/libphy 0xeed878cc phy_read_mmd +EXPORT_SYMBOL drivers/net/phy/libphy 0xf00cab14 genphy_update_link +EXPORT_SYMBOL drivers/net/phy/libphy 0xf113b501 phy_modify_paged +EXPORT_SYMBOL drivers/net/phy/libphy 0xf28e4533 phy_support_sym_pause +EXPORT_SYMBOL drivers/net/phy/libphy 0xf6622219 __genphy_config_aneg +EXPORT_SYMBOL drivers/net/team/team 0x083fbebb team_modeop_port_enter +EXPORT_SYMBOL drivers/net/team/team 0x2f1107dc team_mode_register +EXPORT_SYMBOL drivers/net/team/team 0x4489a0aa team_options_change_check +EXPORT_SYMBOL drivers/net/team/team 0x8173784c team_mode_unregister +EXPORT_SYMBOL drivers/net/team/team 0xa1d05945 team_options_unregister +EXPORT_SYMBOL drivers/net/team/team 0xd26f1566 team_options_register +EXPORT_SYMBOL drivers/net/team/team 0xdc118d62 team_option_inst_set_change +EXPORT_SYMBOL drivers/net/team/team 0xf722e2bd team_modeop_port_change_dev_addr +EXPORT_SYMBOL drivers/pps/pps_core 0x0091a814 pps_event +EXPORT_SYMBOL drivers/pps/pps_core 0x06797a4c pps_register_source +EXPORT_SYMBOL drivers/pps/pps_core 0x59dbae47 pps_lookup_dev +EXPORT_SYMBOL drivers/pps/pps_core 0x8177aba0 pps_unregister_source +EXPORT_SYMBOL drivers/ptp/ptp 0x04acff7e ptp_clock_register +EXPORT_SYMBOL drivers/ptp/ptp 0x0db98a54 ptp_find_pin_unlocked +EXPORT_SYMBOL drivers/ptp/ptp 0x48cace62 ptp_find_pin +EXPORT_SYMBOL drivers/ptp/ptp 0x58e79785 ptp_clock_unregister +EXPORT_SYMBOL drivers/ptp/ptp 0x72bfdb0a ptp_clock_event +EXPORT_SYMBOL drivers/ptp/ptp 0x901b4d52 ptp_clock_index +EXPORT_SYMBOL drivers/ptp/ptp 0xa8306b78 scaled_ppm_to_ppb +EXPORT_SYMBOL drivers/ptp/ptp 0xa9b3422a ptp_cancel_worker_sync +EXPORT_SYMBOL drivers/ptp/ptp 0xfb60cc65 ptp_schedule_worker +EXPORT_SYMBOL drivers/s390/block/dasd_mod 0x005b51d5 dasd_default_erp_postaction +EXPORT_SYMBOL drivers/s390/block/dasd_mod 0x04d60bb7 dasd_add_request_head +EXPORT_SYMBOL drivers/s390/block/dasd_mod 0x0e1ecc11 dasd_fmalloc_request +EXPORT_SYMBOL drivers/s390/block/dasd_mod 0x0e362dc3 dasd_schedule_block_bh +EXPORT_SYMBOL drivers/s390/block/dasd_mod 0x127c187b dasd_sleep_on_interruptible +EXPORT_SYMBOL drivers/s390/block/dasd_mod 0x147d5d3f dasd_int_handler +EXPORT_SYMBOL drivers/s390/block/dasd_mod 0x16f279cc dasd_debug_area +EXPORT_SYMBOL drivers/s390/block/dasd_mod 0x28a58f1f dasd_smalloc_request +EXPORT_SYMBOL drivers/s390/block/dasd_mod 0x2c83190a dasd_set_feature +EXPORT_SYMBOL drivers/s390/block/dasd_mod 0x30f0f7f4 dasd_block_set_timer +EXPORT_SYMBOL drivers/s390/block/dasd_mod 0x494d240d dasd_add_request_tail +EXPORT_SYMBOL drivers/s390/block/dasd_mod 0x49af335d dasd_term_IO +EXPORT_SYMBOL drivers/s390/block/dasd_mod 0x4e92f73f dasd_diag_discipline_pointer +EXPORT_SYMBOL drivers/s390/block/dasd_mod 0x50ad7914 dasd_ffree_request +EXPORT_SYMBOL drivers/s390/block/dasd_mod 0x52342614 dasd_device_set_timer +EXPORT_SYMBOL drivers/s390/block/dasd_mod 0xa871893a dasd_reload_device +EXPORT_SYMBOL drivers/s390/block/dasd_mod 0xa99c06d8 dasd_log_sense +EXPORT_SYMBOL drivers/s390/block/dasd_mod 0xb164b980 dasd_start_IO +EXPORT_SYMBOL drivers/s390/block/dasd_mod 0xb4dcb5de dasd_sleep_on_queue +EXPORT_SYMBOL drivers/s390/block/dasd_mod 0xc134caac dasd_sleep_on_queue_interruptible +EXPORT_SYMBOL drivers/s390/block/dasd_mod 0xc6c5fb63 dasd_sleep_on_immediatly +EXPORT_SYMBOL drivers/s390/block/dasd_mod 0xc985b251 dasd_device_clear_timer +EXPORT_SYMBOL drivers/s390/block/dasd_mod 0xc9ec70d0 dasd_sfree_request +EXPORT_SYMBOL drivers/s390/block/dasd_mod 0xcad72eae dasd_kick_device +EXPORT_SYMBOL drivers/s390/block/dasd_mod 0xd00a0b23 dasd_sleep_on +EXPORT_SYMBOL drivers/s390/block/dasd_mod 0xd089a167 dasd_schedule_requeue +EXPORT_SYMBOL drivers/s390/block/dasd_mod 0xd1574105 dasd_block_clear_timer +EXPORT_SYMBOL drivers/s390/block/dasd_mod 0xd8b55dc4 dasd_eer_write +EXPORT_SYMBOL drivers/s390/block/dasd_mod 0xdfd43eb9 dasd_free_erp_request +EXPORT_SYMBOL drivers/s390/block/dasd_mod 0xe6cc2508 dasd_alloc_erp_request +EXPORT_SYMBOL drivers/s390/block/dasd_mod 0xedf3061b dasd_schedule_device_bh +EXPORT_SYMBOL drivers/s390/block/dasd_mod 0xf0f15f58 dasd_set_target_state +EXPORT_SYMBOL drivers/s390/block/dasd_mod 0xf33debdf dasd_enable_device +EXPORT_SYMBOL drivers/s390/block/dasd_mod 0xf55a7737 dasd_default_erp_action +EXPORT_SYMBOL drivers/s390/block/dasd_mod 0xfd6f8011 dasd_log_sense_dbf +EXPORT_SYMBOL drivers/s390/char/hmcdrv 0x08e57a2c hmcdrv_ftp_do +EXPORT_SYMBOL drivers/s390/char/hmcdrv 0x3198b5cb hmcdrv_ftp_startup +EXPORT_SYMBOL drivers/s390/char/hmcdrv 0x83a6e87f hmcdrv_ftp_probe +EXPORT_SYMBOL drivers/s390/char/hmcdrv 0xba68949c hmcdrv_ftp_shutdown +EXPORT_SYMBOL drivers/s390/char/tape 0x00c9d342 tape_std_mtbsf +EXPORT_SYMBOL drivers/s390/char/tape 0x02429c23 tape_std_mterase +EXPORT_SYMBOL drivers/s390/char/tape 0x193ba8d4 tape_do_io_interruptible +EXPORT_SYMBOL drivers/s390/char/tape 0x1df19bcd tape_core_dbf +EXPORT_SYMBOL drivers/s390/char/tape 0x2546c415 tape_state_verbose +EXPORT_SYMBOL drivers/s390/char/tape 0x25fd45aa tape_std_unassign +EXPORT_SYMBOL drivers/s390/char/tape 0x27a4e3c6 tape_std_mtbsfm +EXPORT_SYMBOL drivers/s390/char/tape 0x345f7124 tape_std_mtcompression +EXPORT_SYMBOL drivers/s390/char/tape 0x3835f2f3 tape_std_mtsetblk +EXPORT_SYMBOL drivers/s390/char/tape 0x3ddecd03 tape_std_mtunload +EXPORT_SYMBOL drivers/s390/char/tape 0x49b65437 tape_alloc_request +EXPORT_SYMBOL drivers/s390/char/tape 0x515ffb0d tape_std_mtfsf +EXPORT_SYMBOL drivers/s390/char/tape 0x5d9447bb tape_std_display +EXPORT_SYMBOL drivers/s390/char/tape 0x5ede9675 tape_std_mtrew +EXPORT_SYMBOL drivers/s390/char/tape 0x6016743b tape_med_state_set +EXPORT_SYMBOL drivers/s390/char/tape 0x64dc4646 tape_dump_sense_dbf +EXPORT_SYMBOL drivers/s390/char/tape 0x66deb66c tape_op_verbose +EXPORT_SYMBOL drivers/s390/char/tape 0x6798936e tape_std_mtoffl +EXPORT_SYMBOL drivers/s390/char/tape 0x71d676c2 tape_state_set +EXPORT_SYMBOL drivers/s390/char/tape 0x8a03e425 tape_do_io +EXPORT_SYMBOL drivers/s390/char/tape 0x90e1fd27 tape_std_mtload +EXPORT_SYMBOL drivers/s390/char/tape 0x92294590 tape_get_device +EXPORT_SYMBOL drivers/s390/char/tape 0x98b40bf5 tape_generic_online +EXPORT_SYMBOL drivers/s390/char/tape 0x9ca8955f tape_std_mtreten +EXPORT_SYMBOL drivers/s390/char/tape 0x9e1449ba tape_std_mtbsr +EXPORT_SYMBOL drivers/s390/char/tape 0xa5597c0d tape_std_process_eov +EXPORT_SYMBOL drivers/s390/char/tape 0xaea1f852 tape_std_read_block +EXPORT_SYMBOL drivers/s390/char/tape 0xaf3f813d tape_std_mtweof +EXPORT_SYMBOL drivers/s390/char/tape 0xb5cf2500 tape_generic_offline +EXPORT_SYMBOL drivers/s390/char/tape 0xb944dc5d tape_std_write_block +EXPORT_SYMBOL drivers/s390/char/tape 0xbe7e3399 tape_cancel_io +EXPORT_SYMBOL drivers/s390/char/tape 0xc019889e tape_do_io_async +EXPORT_SYMBOL drivers/s390/char/tape 0xc19629ef tape_std_mtfsfm +EXPORT_SYMBOL drivers/s390/char/tape 0xc5785116 tape_generic_probe +EXPORT_SYMBOL drivers/s390/char/tape 0xc871c37b tape_mtop +EXPORT_SYMBOL drivers/s390/char/tape 0xca1fb81a tape_std_mteom +EXPORT_SYMBOL drivers/s390/char/tape 0xccbc4f97 tape_std_mtreset +EXPORT_SYMBOL drivers/s390/char/tape 0xcf8261f5 tape_std_mtfsr +EXPORT_SYMBOL drivers/s390/char/tape 0xe3978a1e tape_std_assign +EXPORT_SYMBOL drivers/s390/char/tape 0xe5ca0d17 tape_std_read_backward +EXPORT_SYMBOL drivers/s390/char/tape 0xef9f42ce tape_std_mtnop +EXPORT_SYMBOL drivers/s390/char/tape 0xefe0127f tape_generic_remove +EXPORT_SYMBOL drivers/s390/char/tape 0xf38bcbda tape_std_read_block_id +EXPORT_SYMBOL drivers/s390/char/tape 0xf6f2fcb9 tape_generic_pm_suspend +EXPORT_SYMBOL drivers/s390/char/tape 0xf9475727 tape_free_request +EXPORT_SYMBOL drivers/s390/char/tape 0xff679e0c tape_put_device +EXPORT_SYMBOL drivers/s390/char/tape_34xx 0x0afff710 tape_34xx_dbf +EXPORT_SYMBOL drivers/s390/char/tape_3590 0xc7220142 tape_3590_dbf +EXPORT_SYMBOL drivers/s390/char/tape_class 0x9f7d3c94 register_tape_dev +EXPORT_SYMBOL drivers/s390/char/tape_class 0xbffa0d49 unregister_tape_dev +EXPORT_SYMBOL drivers/s390/cio/ccwgroup 0x13849998 ccwgroup_set_online +EXPORT_SYMBOL drivers/s390/cio/ccwgroup 0x1d738521 ccwgroup_probe_ccwdev +EXPORT_SYMBOL drivers/s390/cio/ccwgroup 0x43bb7f9f ccwgroup_remove_ccwdev +EXPORT_SYMBOL drivers/s390/cio/ccwgroup 0x48900364 ccwgroup_driver_register +EXPORT_SYMBOL drivers/s390/cio/ccwgroup 0x5ebf04a1 ccwgroup_create_dev +EXPORT_SYMBOL drivers/s390/cio/ccwgroup 0x93985792 ccwgroup_driver_unregister +EXPORT_SYMBOL drivers/s390/cio/ccwgroup 0xcd6e5c39 ccwgroup_set_offline +EXPORT_SYMBOL drivers/s390/cio/ccwgroup 0xe4c77a9d dev_is_ccwgroup +EXPORT_SYMBOL drivers/s390/cio/qdio 0x288b429b qdio_get_next_buffers +EXPORT_SYMBOL drivers/s390/cio/qdio 0xa5053f2d qdio_stop_irq +EXPORT_SYMBOL drivers/s390/cio/qdio 0xabe7cd23 qdio_start_irq +EXPORT_SYMBOL drivers/s390/cio/vfio_ccw 0x7b591170 __tracepoint_vfio_ccw_fsm_async_request +EXPORT_SYMBOL drivers/s390/cio/vfio_ccw 0x907b9e79 __tracepoint_vfio_ccw_chp_event +EXPORT_SYMBOL drivers/s390/cio/vfio_ccw 0xbf79ad6b __tracepoint_vfio_ccw_fsm_event +EXPORT_SYMBOL drivers/s390/cio/vfio_ccw 0xf32da969 __tracepoint_vfio_ccw_fsm_io_request +EXPORT_SYMBOL drivers/s390/crypto/pkey 0xa2396123 pkey_keyblob2pkey +EXPORT_SYMBOL drivers/s390/crypto/zcrypt 0x06d23eca zcrypt_queue_alloc +EXPORT_SYMBOL drivers/s390/crypto/zcrypt 0x0f717bb5 cca_check_secaescipherkey +EXPORT_SYMBOL drivers/s390/crypto/zcrypt 0x170d6b33 cca_sec2protkey +EXPORT_SYMBOL drivers/s390/crypto/zcrypt 0x2274ccb9 zcrypt_queue_unregister +EXPORT_SYMBOL drivers/s390/crypto/zcrypt 0x271b6d43 zcrypt_card_alloc +EXPORT_SYMBOL drivers/s390/crypto/zcrypt 0x274ee02a ep11_findcard2 +EXPORT_SYMBOL drivers/s390/crypto/zcrypt 0x2be1f6aa ep11_key2protkey +EXPORT_SYMBOL drivers/s390/crypto/zcrypt 0x2dc30fe9 cca_findcard +EXPORT_SYMBOL drivers/s390/crypto/zcrypt 0x437855d4 zcrypt_queue_put +EXPORT_SYMBOL drivers/s390/crypto/zcrypt 0x47c5a451 cca_findcard2 +EXPORT_SYMBOL drivers/s390/crypto/zcrypt 0x4aad03c0 cca_gencipherkey +EXPORT_SYMBOL drivers/s390/crypto/zcrypt 0x4bb8a363 __tracepoint_s390_zcrypt_rep +EXPORT_SYMBOL drivers/s390/crypto/zcrypt 0x52a39222 __tracepoint_s390_zcrypt_req +EXPORT_SYMBOL drivers/s390/crypto/zcrypt 0x547280f5 zcrypt_msgtype +EXPORT_SYMBOL drivers/s390/crypto/zcrypt 0x5e050fdf cca_genseckey +EXPORT_SYMBOL drivers/s390/crypto/zcrypt 0x5eaa99ae zcrypt_send_cprb +EXPORT_SYMBOL drivers/s390/crypto/zcrypt 0x63dd2934 cca_check_secaeskeytoken +EXPORT_SYMBOL drivers/s390/crypto/zcrypt 0x67cedaeb zcrypt_rescan_req +EXPORT_SYMBOL drivers/s390/crypto/zcrypt 0x6b78f8e7 zcrypt_card_unregister +EXPORT_SYMBOL drivers/s390/crypto/zcrypt 0x73262971 zcrypt_card_register +EXPORT_SYMBOL drivers/s390/crypto/zcrypt 0x7dd52fc2 ep11_clr2keyblob +EXPORT_SYMBOL drivers/s390/crypto/zcrypt 0x9032dd84 zcrypt_device_status_mask_ext +EXPORT_SYMBOL drivers/s390/crypto/zcrypt 0x9992a66f cca_clr2seckey +EXPORT_SYMBOL drivers/s390/crypto/zcrypt 0x9baaa676 zcrypt_card_put +EXPORT_SYMBOL drivers/s390/crypto/zcrypt 0x9d0890f7 zcrypt_card_get +EXPORT_SYMBOL drivers/s390/crypto/zcrypt 0xa54284be zcrypt_device_status_ext +EXPORT_SYMBOL drivers/s390/crypto/zcrypt 0xa979625d zcrypt_card_free +EXPORT_SYMBOL drivers/s390/crypto/zcrypt 0xb282926b cca_get_info +EXPORT_SYMBOL drivers/s390/crypto/zcrypt 0xb53b5b93 zcrypt_queue_free +EXPORT_SYMBOL drivers/s390/crypto/zcrypt 0xbfacc9a3 zcrypt_queue_register +EXPORT_SYMBOL drivers/s390/crypto/zcrypt 0xc0c976b6 ep11_get_domain_info +EXPORT_SYMBOL drivers/s390/crypto/zcrypt 0xc20af440 cca_query_crypto_facility +EXPORT_SYMBOL drivers/s390/crypto/zcrypt 0xc23843b6 ep11_genaeskey +EXPORT_SYMBOL drivers/s390/crypto/zcrypt 0xc3ee9fa0 cca_cipher2protkey +EXPORT_SYMBOL drivers/s390/crypto/zcrypt 0xc6a8cdd0 ep11_check_aeskeyblob +EXPORT_SYMBOL drivers/s390/crypto/zcrypt 0xd13cb570 zcrypt_queue_get +EXPORT_SYMBOL drivers/s390/crypto/zcrypt 0xea54d73e cca_clr2cipherkey +EXPORT_SYMBOL drivers/s390/crypto/zcrypt 0xee077284 ep11_get_card_info +EXPORT_SYMBOL drivers/s390/crypto/zcrypt 0xfa128312 zcrypt_send_ep11_cprb +EXPORT_SYMBOL drivers/s390/net/ctcm 0x40b3051a ctc_mpc_dealloc_ch +EXPORT_SYMBOL drivers/s390/net/ctcm 0x56f42138 ctc_mpc_alloc_channel +EXPORT_SYMBOL drivers/s390/net/ctcm 0x812fa936 ctc_mpc_establish_connectivity +EXPORT_SYMBOL drivers/s390/net/ctcm 0xf5440dc6 ctc_mpc_flow_control +EXPORT_SYMBOL drivers/s390/net/fsm 0x28d3cbe9 fsm_settimer +EXPORT_SYMBOL drivers/s390/net/fsm 0x30ab97c9 fsm_modtimer +EXPORT_SYMBOL drivers/s390/net/fsm 0x39209ed5 kfree_fsm +EXPORT_SYMBOL drivers/s390/net/fsm 0x4947f4b3 fsm_deltimer +EXPORT_SYMBOL drivers/s390/net/fsm 0x5bbdc3d4 init_fsm +EXPORT_SYMBOL drivers/s390/net/fsm 0x75223679 fsm_getstate_str +EXPORT_SYMBOL drivers/s390/net/fsm 0xe8ae8e7a fsm_addtimer +EXPORT_SYMBOL drivers/s390/net/qeth_l2 0x19edbc36 qeth_osn_register +EXPORT_SYMBOL drivers/s390/net/qeth_l2 0x24fe7de1 qeth_osn_assist +EXPORT_SYMBOL drivers/s390/net/qeth_l2 0xe379f1f0 qeth_osn_deregister +EXPORT_SYMBOL drivers/scsi/fcoe/libfcoe 0x1d5dac25 fcoe_ctlr_els_send +EXPORT_SYMBOL drivers/scsi/fcoe/libfcoe 0x2c7972c4 fcoe_ctlr_recv +EXPORT_SYMBOL drivers/scsi/fcoe/libfcoe 0x33eb6da4 fcoe_fcf_get_selected +EXPORT_SYMBOL drivers/scsi/fcoe/libfcoe 0x4164c469 fcoe_ctlr_set_fip_mode +EXPORT_SYMBOL drivers/scsi/fcoe/libfcoe 0x750140bb fcoe_ctlr_link_up +EXPORT_SYMBOL drivers/scsi/fcoe/libfcoe 0x84aaa3d6 fcoe_transport_detach +EXPORT_SYMBOL drivers/scsi/fcoe/libfcoe 0xa7ac53c1 fcoe_ctlr_link_down +EXPORT_SYMBOL drivers/scsi/fcoe/libfcoe 0xb6e1b174 fcoe_ctlr_recv_flogi +EXPORT_SYMBOL drivers/scsi/fcoe/libfcoe 0xdd0fd38c fcoe_ctlr_init +EXPORT_SYMBOL drivers/scsi/fcoe/libfcoe 0xfd600e2d fcoe_ctlr_destroy +EXPORT_SYMBOL drivers/scsi/fcoe/libfcoe 0xff8e2f27 fcoe_transport_attach +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x0142c131 fc_lport_iterate +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x02d571a6 fc_lport_bsg_request +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x077d4752 fc_lport_config +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x08bc9215 fc_frame_alloc_fill +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x0d4056bf fc_exch_mgr_free +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x19144fa2 fc_exch_seq_send +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x19a7224e fc_exch_update_stats +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x1b3c2c97 fc_disc_config +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x1ff49f19 fc_exch_mgr_add +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x22b90986 fc_exch_mgr_del +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x242a3af9 fc_fabric_login +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x2745a56b fc_get_host_speed +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x29697e73 fc_get_host_port_state +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x2aa4b92b fc_exch_init +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x30ad64fe fc_get_host_stats +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x33d7d2ce fc_queuecommand +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x3a566574 fc_set_mfs +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x42c5680c fc_slave_alloc +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x46af4aac fc_seq_set_resp +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x4a2a1e71 fc_fcp_destroy +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x4b7440da fc_vport_setlink +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x5fd835df fc_lport_recv +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x63f40b3f fc_exch_mgr_list_clone +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x64452333 fc_exch_recv +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x66003b59 fc_seq_send +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x69219e2a fc_frame_crc_check +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x6c99ebc9 fc_rport_login +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x6ca49c94 fc_fc4_deregister_provider +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x73521667 fc_exch_mgr_alloc +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x739a8f76 fc_fc4_register_provider +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x77a22add fc_lport_destroy +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x7f3407a7 fc_seq_start_next +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x811811e0 fc_exch_done +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x8a93678e fc_lport_set_local_id +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x96d97619 fc_set_rport_loss_tmo +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x9d50ed7e fc_rport_destroy +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x9e06c5ee fc_linkdown +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0xa1bcd198 fc_cpu_mask +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0xa1d64f12 fc_eh_host_reset +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0xa388b361 fc_lport_reset +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0xa38df985 fc_lport_logo_resp +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0xa3bcccab fc_fill_reply_hdr +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0xaa862ae5 fc_seq_assign +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0xab41c2c3 fc_eh_abort +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0xab782307 libfc_vport_create +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0xb0ddd5a1 fc_rport_flush_queue +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0xb1d2c7f9 fc_elsct_send +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0xb3ee2aa1 fc_linkup +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0xb4c3a22c fc_exch_mgr_reset +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0xc3653d4e fc_fabric_logoff +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0xc55aa038 fc_rport_lookup +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0xcf72649f fc_rport_terminate_io +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0xd1e2b432 fc_fill_hdr +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0xd70acde3 fc_fcp_init +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0xd7e26a77 fc_vport_id_lookup +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0xda5df33c fc_disc_init +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0xdb315f85 fc_lport_notifier_head +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0xdfb1f54d _fc_frame_alloc +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0xe7e6531e fc_lport_init +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0xe8b7dfe2 fc_lport_flogi_resp +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0xe95efdbf fc_rport_logoff +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0xe9a123ad fc_eh_device_reset +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0xeccebbc5 fc_elsct_init +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0xf8a96a1e fc_rport_recv_req +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0xf9cfc747 fc_rport_create +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0xfa4667d1 fc_seq_release +EXPORT_SYMBOL drivers/scsi/libsas/libsas 0x4a8e3d34 try_test_sas_gpio_gp_bit +EXPORT_SYMBOL drivers/scsi/libsas/libsas 0x541d7fe8 sas_prep_resume_ha +EXPORT_SYMBOL drivers/scsi/libsas/libsas 0x980d7e0e sas_suspend_ha +EXPORT_SYMBOL drivers/scsi/libsas/libsas 0xf32d1917 sas_resume_ha +EXPORT_SYMBOL drivers/scsi/raid_class 0x216bb618 raid_component_add +EXPORT_SYMBOL drivers/scsi/raid_class 0x6ab3fdf7 raid_class_release +EXPORT_SYMBOL drivers/scsi/raid_class 0xaaeb04cb raid_class_attach +EXPORT_SYMBOL drivers/scsi/scsi_transport_fc 0x098a98ca fc_release_transport +EXPORT_SYMBOL drivers/scsi/scsi_transport_fc 0x0edcf8d1 fc_remove_host +EXPORT_SYMBOL drivers/scsi/scsi_transport_fc 0x22a98f41 fc_block_scsi_eh +EXPORT_SYMBOL drivers/scsi/scsi_transport_fc 0x375f8bbd fc_get_event_number +EXPORT_SYMBOL drivers/scsi/scsi_transport_fc 0x3c38020b fc_host_post_vendor_event +EXPORT_SYMBOL drivers/scsi/scsi_transport_fc 0x405ed148 fc_attach_transport +EXPORT_SYMBOL drivers/scsi/scsi_transport_fc 0x4d2020b8 scsi_is_fc_rport +EXPORT_SYMBOL drivers/scsi/scsi_transport_fc 0x743841e0 fc_eh_timed_out +EXPORT_SYMBOL drivers/scsi/scsi_transport_fc 0x9ae0db8b fc_host_fpin_rcv +EXPORT_SYMBOL drivers/scsi/scsi_transport_fc 0xb5301e5b fc_vport_terminate +EXPORT_SYMBOL drivers/scsi/scsi_transport_fc 0xb62851c6 fc_remote_port_delete +EXPORT_SYMBOL drivers/scsi/scsi_transport_fc 0xc16439f4 fc_remote_port_add +EXPORT_SYMBOL drivers/scsi/scsi_transport_fc 0xc6356923 fc_block_rport +EXPORT_SYMBOL drivers/scsi/scsi_transport_fc 0xd00db939 fc_host_post_event +EXPORT_SYMBOL drivers/scsi/scsi_transport_fc 0xd4eca79a fc_remote_port_rolechg +EXPORT_SYMBOL drivers/scsi/scsi_transport_fc 0xe49f7f69 fc_vport_create +EXPORT_SYMBOL drivers/scsi/scsi_transport_fc 0xe7bb1bc3 fc_host_post_fc_event +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0x0080e74d sas_release_transport +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0x07676ea0 sas_remove_host +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0x0de73715 sas_port_add +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0x1667ab98 sas_phy_free +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0x1c4a68d5 scsi_is_sas_phy +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0x1d330fc5 sas_attach_transport +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0x288dde03 sas_phy_add +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0x328690bb sas_remove_children +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0x435ad5a9 sas_rphy_unlink +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0x43f98636 scsi_is_sas_rphy +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0x44e2f246 sas_end_device_alloc +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0x64506b19 sas_rphy_delete +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0x72de9c27 sas_expander_alloc +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0x7cc1f1ef sas_port_get_phy +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0x81380413 sas_port_delete +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0x88c0ba26 sas_rphy_remove +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0x88c48040 scsi_is_sas_port +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0x927f4fe3 sas_phy_alloc +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0xab378e71 sas_rphy_add +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0xab6a76c7 sas_port_delete_phy +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0xb1a199e5 sas_port_alloc_num +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0xb61a3709 sas_port_alloc +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0xb90f5386 sas_read_port_mode_page +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0xbab51aea sas_port_add_phy +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0xcbcd839a sas_port_free +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0xce05fa49 sas_get_address +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0xd3e3f2d6 sas_phy_delete +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0xd4a32f48 sas_port_mark_backlink +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0xe009f628 sas_rphy_free +EXPORT_SYMBOL drivers/scsi/scsi_transport_spi 0x1c489e47 spi_dv_device +EXPORT_SYMBOL drivers/scsi/scsi_transport_spi 0x3686ea09 spi_print_msg +EXPORT_SYMBOL drivers/scsi/scsi_transport_spi 0x44ba0038 spi_display_xfer_agreement +EXPORT_SYMBOL drivers/scsi/scsi_transport_spi 0x8214276f spi_attach_transport +EXPORT_SYMBOL drivers/scsi/scsi_transport_spi 0xa19edf46 spi_release_transport +EXPORT_SYMBOL drivers/scsi/scsi_transport_spi 0xa8228cdb spi_schedule_dv_device +EXPORT_SYMBOL drivers/scsi/scsi_transport_srp 0x0806797d srp_reconnect_rport +EXPORT_SYMBOL drivers/scsi/scsi_transport_srp 0x0e833ca3 srp_rport_put +EXPORT_SYMBOL drivers/scsi/scsi_transport_srp 0x405b6e05 srp_parse_tmo +EXPORT_SYMBOL drivers/scsi/scsi_transport_srp 0x5e87768f srp_rport_get +EXPORT_SYMBOL drivers/scsi/scsi_transport_srp 0xbd77a44a srp_timed_out +EXPORT_SYMBOL drivers/scsi/scsi_transport_srp 0xf30f1a37 srp_start_tl_fail_timers +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x0a85286a iscsit_reject_cmd +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x0d429295 iscsit_build_datain_pdu +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x0f51cdb1 iscsi_target_check_login_request +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x16b1a5bf iscsit_cause_connection_reinstatement +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x1c0d70a2 iscsit_free_cmd +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x235ca019 iscsit_immediate_queue +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x300ecafd iscsit_aborted_task +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x346ee623 iscsit_build_nopin_rsp +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x42b0e89c iscsit_release_cmd +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x4730d71d iscsit_find_cmd_from_itt +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x4db24407 iscsit_queue_rsp +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x5d8f9740 iscsit_build_rsp_pdu +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x5eb82ca4 iscsit_response_queue +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x602ca2d6 iscsit_increment_maxcmdsn +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x617d7725 iscsit_build_r2ts_for_cmd +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x65570b99 iscsit_register_transport +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x657e6301 iscsit_setup_nop_out +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x6c2918f7 iscsit_unregister_transport +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x6f7eb8f4 iscsit_setup_scsi_cmd +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x7585a5db iscsit_handle_task_mgt_cmd +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x85474a74 iscsit_handle_snack +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x8c85a5fe iscsit_setup_text_cmd +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0xa745252a iscsit_process_text_cmd +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0xa77938d0 iscsi_change_param_sprintf +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0xa980c96f iscsit_stop_dataout_timer +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0xabc8cfaa iscsit_get_datain_values +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0xb0f5ab4b iscsit_allocate_cmd +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0xbb779c07 iscsit_build_logout_rsp +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0xbd155e4d iscsit_process_scsi_cmd +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0xc00e4bab iscsit_build_reject +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0xcaad3678 iscsit_process_nop_out +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0xcf21b804 iscsit_check_dataout_hdr +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0xd2bc39d2 iscsit_sequence_cmd +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0xd68370b3 iscsit_handle_logout_cmd +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0xe0297d34 iscsit_build_task_mgt_rsp +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0xe319460b iscsit_build_text_rsp +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0xe352a1c1 iscsit_tmr_post_handler +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0xe368d288 iscsit_add_cmd_to_immediate_queue +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0xe421dc24 iscsit_find_cmd_from_itt_or_dump +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0xe5fcb5ba iscsit_set_unsolicited_dataout +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0xf34332f0 iscsi_find_param_from_key +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0xf5d38bd9 iscsit_logout_post_handler +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0xf82883ab iscsit_check_dataout_payload +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0xfb7ed918 __iscsit_check_dataout_hdr +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0xff9fde97 iscsit_add_reject +EXPORT_SYMBOL drivers/target/target_core_mod 0x00b215f2 spc_emulate_report_luns +EXPORT_SYMBOL drivers/target/target_core_mod 0x01972836 target_submit_cmd_map_sgls +EXPORT_SYMBOL drivers/target/target_core_mod 0x035ed83b target_send_busy +EXPORT_SYMBOL drivers/target/target_core_mod 0x067efa73 core_tpg_set_initiator_node_tag +EXPORT_SYMBOL drivers/target/target_core_mod 0x085e9a8b transport_handle_cdb_direct +EXPORT_SYMBOL drivers/target/target_core_mod 0x0871ffd6 transport_set_vpd_ident +EXPORT_SYMBOL drivers/target/target_core_mod 0x0ac138ee target_cmd_init_cdb +EXPORT_SYMBOL drivers/target/target_core_mod 0x137c6c8c sbc_dif_copy_prot +EXPORT_SYMBOL drivers/target/target_core_mod 0x142072c0 transport_set_vpd_assoc +EXPORT_SYMBOL drivers/target/target_core_mod 0x14783dea transport_backend_register +EXPORT_SYMBOL drivers/target/target_core_mod 0x1802ea10 target_lun_is_rdonly +EXPORT_SYMBOL drivers/target/target_core_mod 0x188ac452 spc_parse_cdb +EXPORT_SYMBOL drivers/target/target_core_mod 0x2399eff6 target_wait_for_sess_cmds +EXPORT_SYMBOL drivers/target/target_core_mod 0x27158122 target_show_cmd +EXPORT_SYMBOL drivers/target/target_core_mod 0x28815d67 core_tpg_check_initiator_node_acl +EXPORT_SYMBOL drivers/target/target_core_mod 0x2b5b02af target_unregister_template +EXPORT_SYMBOL drivers/target/target_core_mod 0x2f18a601 passthrough_pr_attrib_attrs +EXPORT_SYMBOL drivers/target/target_core_mod 0x328b627a target_configure_unmap_from_queue +EXPORT_SYMBOL drivers/target/target_core_mod 0x350221dc core_allocate_nexus_loss_ua +EXPORT_SYMBOL drivers/target/target_core_mod 0x3592bfe9 passthrough_attrib_attrs +EXPORT_SYMBOL drivers/target/target_core_mod 0x38e258b8 transport_init_se_cmd +EXPORT_SYMBOL drivers/target/target_core_mod 0x39047946 __transport_register_session +EXPORT_SYMBOL drivers/target/target_core_mod 0x3a20a9d7 transport_set_vpd_ident_type +EXPORT_SYMBOL drivers/target/target_core_mod 0x3d25de6e transport_register_session +EXPORT_SYMBOL drivers/target/target_core_mod 0x3d8949ac spc_emulate_inquiry_std +EXPORT_SYMBOL drivers/target/target_core_mod 0x3f19a807 transport_generic_handle_tmr +EXPORT_SYMBOL drivers/target/target_core_mod 0x45ed48fa transport_wait_for_tasks +EXPORT_SYMBOL drivers/target/target_core_mod 0x473eb1e1 transport_kmap_data_sg +EXPORT_SYMBOL drivers/target/target_core_mod 0x4c1e8eec target_submit_tmr +EXPORT_SYMBOL drivers/target/target_core_mod 0x4fa85cf6 transport_send_check_condition_and_sense +EXPORT_SYMBOL drivers/target/target_core_mod 0x52acd8c6 sbc_parse_cdb +EXPORT_SYMBOL drivers/target/target_core_mod 0x54bb68b3 transport_alloc_session_tags +EXPORT_SYMBOL drivers/target/target_core_mod 0x5dff803c target_complete_cmd_with_length +EXPORT_SYMBOL drivers/target/target_core_mod 0x5eabc512 target_complete_cmd +EXPORT_SYMBOL drivers/target/target_core_mod 0x60361f96 passthrough_parse_cdb +EXPORT_SYMBOL drivers/target/target_core_mod 0x62ef3f87 transport_init_session +EXPORT_SYMBOL drivers/target/target_core_mod 0x638bffb7 target_free_sgl +EXPORT_SYMBOL drivers/target/target_core_mod 0x63a9e760 transport_generic_request_failure +EXPORT_SYMBOL drivers/target/target_core_mod 0x65f01726 target_submit_cmd +EXPORT_SYMBOL drivers/target/target_core_mod 0x6e3a94a1 transport_generic_free_cmd +EXPORT_SYMBOL drivers/target/target_core_mod 0x724814fc transport_alloc_session +EXPORT_SYMBOL drivers/target/target_core_mod 0x7967452f transport_lookup_cmd_lun +EXPORT_SYMBOL drivers/target/target_core_mod 0x7a1d0d3c target_alloc_sgl +EXPORT_SYMBOL drivers/target/target_core_mod 0x7c67ce07 transport_kunmap_data_sg +EXPORT_SYMBOL drivers/target/target_core_mod 0x7de993df transport_lookup_tmr_lun +EXPORT_SYMBOL drivers/target/target_core_mod 0x82ddc6bd core_tpg_deregister +EXPORT_SYMBOL drivers/target/target_core_mod 0x8ca909cd transport_free_session +EXPORT_SYMBOL drivers/target/target_core_mod 0x8d17b3a0 target_register_template +EXPORT_SYMBOL drivers/target/target_core_mod 0x90d37339 core_tmr_alloc_req +EXPORT_SYMBOL drivers/target/target_core_mod 0x94faf4e0 target_tpg_has_node_acl +EXPORT_SYMBOL drivers/target/target_core_mod 0x962ebed9 target_to_linux_sector +EXPORT_SYMBOL drivers/target/target_core_mod 0x99739889 sbc_dif_verify +EXPORT_SYMBOL drivers/target/target_core_mod 0x9c4264b1 core_tpg_get_initiator_node_acl +EXPORT_SYMBOL drivers/target/target_core_mod 0xa8c85f84 sbc_attrib_attrs +EXPORT_SYMBOL drivers/target/target_core_mod 0xaaa713f8 target_put_sess_cmd +EXPORT_SYMBOL drivers/target/target_core_mod 0xb2da6a3d target_execute_cmd +EXPORT_SYMBOL drivers/target/target_core_mod 0xbbf318ce target_sess_cmd_list_set_waiting +EXPORT_SYMBOL drivers/target/target_core_mod 0xbc19f6c6 spc_emulate_evpd_83 +EXPORT_SYMBOL drivers/target/target_core_mod 0xbeace007 sbc_get_device_type +EXPORT_SYMBOL drivers/target/target_core_mod 0xc135a389 target_show_dynamic_sessions +EXPORT_SYMBOL drivers/target/target_core_mod 0xc89a12fb target_get_sess_cmd +EXPORT_SYMBOL drivers/target/target_core_mod 0xca378e51 transport_deregister_session +EXPORT_SYMBOL drivers/target/target_core_mod 0xcda02c1b transport_copy_sense_to_cmd +EXPORT_SYMBOL drivers/target/target_core_mod 0xcde69ace core_tpg_register +EXPORT_SYMBOL drivers/target/target_core_mod 0xd13490ad target_put_nacl +EXPORT_SYMBOL drivers/target/target_core_mod 0xd27b5eb7 transport_generic_new_cmd +EXPORT_SYMBOL drivers/target/target_core_mod 0xd6b2542a target_cmd_parse_cdb +EXPORT_SYMBOL drivers/target/target_core_mod 0xdea1af02 target_depend_item +EXPORT_SYMBOL drivers/target/target_core_mod 0xdf433219 target_backend_unregister +EXPORT_SYMBOL drivers/target/target_core_mod 0xe0885da5 target_setup_session +EXPORT_SYMBOL drivers/target/target_core_mod 0xe08b2716 sbc_get_write_same_sectors +EXPORT_SYMBOL drivers/target/target_core_mod 0xe42db80d target_undepend_item +EXPORT_SYMBOL drivers/target/target_core_mod 0xe99fbd4a core_alua_check_nonop_delay +EXPORT_SYMBOL drivers/target/target_core_mod 0xeb46069c target_nacl_find_deve +EXPORT_SYMBOL drivers/target/target_core_mod 0xeb97b723 target_remove_session +EXPORT_SYMBOL drivers/target/target_core_mod 0xf3c2dfe0 transport_set_vpd_proto_id +EXPORT_SYMBOL drivers/target/target_core_mod 0xfb61eb6b core_tpg_set_initiator_node_queue_depth +EXPORT_SYMBOL drivers/target/target_core_mod 0xff1a456b transport_deregister_session_configfs +EXPORT_SYMBOL drivers/tty/serial/serial_core 0x10cac30e uart_unregister_driver +EXPORT_SYMBOL drivers/tty/serial/serial_core 0x13832af4 uart_update_timeout +EXPORT_SYMBOL drivers/tty/serial/serial_core 0x3741579d uart_add_one_port +EXPORT_SYMBOL drivers/tty/serial/serial_core 0x46a47b55 uart_match_port +EXPORT_SYMBOL drivers/tty/serial/serial_core 0x62bf8705 uart_register_driver +EXPORT_SYMBOL drivers/tty/serial/serial_core 0x63fb7513 uart_remove_one_port +EXPORT_SYMBOL drivers/tty/serial/serial_core 0x6bd48dca uart_get_divisor +EXPORT_SYMBOL drivers/tty/serial/serial_core 0x8d727129 uart_write_wakeup +EXPORT_SYMBOL drivers/tty/serial/serial_core 0x97dc2f9c uart_get_baud_rate +EXPORT_SYMBOL drivers/tty/serial/serial_core 0xb78cf6a3 uart_suspend_port +EXPORT_SYMBOL drivers/tty/serial/serial_core 0xc26da26e uart_resume_port +EXPORT_SYMBOL drivers/vfio/mdev/mdev 0x109651a6 mdev_parent_dev +EXPORT_SYMBOL drivers/vfio/mdev/mdev 0x2aee8f05 mdev_set_drvdata +EXPORT_SYMBOL drivers/vfio/mdev/mdev 0x40819e32 mdev_set_iommu_device +EXPORT_SYMBOL drivers/vfio/mdev/mdev 0x5f4499df mdev_unregister_driver +EXPORT_SYMBOL drivers/vfio/mdev/mdev 0x67a224a3 mdev_uuid +EXPORT_SYMBOL drivers/vfio/mdev/mdev 0x69d89652 mdev_get_iommu_device +EXPORT_SYMBOL drivers/vfio/mdev/mdev 0x7eccc49d mdev_register_device +EXPORT_SYMBOL drivers/vfio/mdev/mdev 0x7ed2e9d8 mdev_get_drvdata +EXPORT_SYMBOL drivers/vfio/mdev/mdev 0x8083ca2a mdev_dev +EXPORT_SYMBOL drivers/vfio/mdev/mdev 0xd8d0a895 mdev_register_driver +EXPORT_SYMBOL drivers/vfio/mdev/mdev 0xf5728612 mdev_from_dev +EXPORT_SYMBOL drivers/vfio/mdev/mdev 0xfa150c62 mdev_unregister_device +EXPORT_SYMBOL drivers/vfio/vfio 0x3b1a6d99 vfio_register_notifier +EXPORT_SYMBOL drivers/vfio/vfio 0x4232a0c3 vfio_info_cap_shift +EXPORT_SYMBOL drivers/vfio/vfio 0x48a81d7e vfio_group_pin_pages +EXPORT_SYMBOL drivers/vfio/vfio 0x704e3d8c vfio_unpin_pages +EXPORT_SYMBOL drivers/vfio/vfio 0x7834defd vfio_group_unpin_pages +EXPORT_SYMBOL drivers/vfio/vfio 0xa0174901 vfio_dma_rw +EXPORT_SYMBOL drivers/vfio/vfio 0xaf8a4a7f vfio_set_irqs_validate_and_prepare +EXPORT_SYMBOL drivers/vfio/vfio 0xc634c850 vfio_unregister_notifier +EXPORT_SYMBOL drivers/vfio/vfio 0xe60c76f5 vfio_pin_pages +EXPORT_SYMBOL drivers/vfio/vfio 0xf3411eb8 vfio_info_add_capability +EXPORT_SYMBOL drivers/vhost/vhost 0x9a633fb4 vhost_chr_write_iter +EXPORT_SYMBOL drivers/vhost/vhost 0xf8bd5cdf vhost_chr_poll +EXPORT_SYMBOL drivers/video/fbdev/core/cfbcopyarea 0x9729188e cfb_copyarea +EXPORT_SYMBOL drivers/video/fbdev/core/cfbfillrect 0x4c45eb37 cfb_fillrect +EXPORT_SYMBOL drivers/video/fbdev/core/cfbimgblt 0xff06d677 cfb_imageblit +EXPORT_SYMBOL drivers/video/fbdev/core/syscopyarea 0x7b4a348d sys_copyarea +EXPORT_SYMBOL drivers/video/fbdev/core/sysfillrect 0xa026c734 sys_fillrect +EXPORT_SYMBOL drivers/video/fbdev/core/sysimgblt 0x21231777 sys_imageblit +EXPORT_SYMBOL fs/fscache/fscache 0x084c306d __fscache_disable_cookie +EXPORT_SYMBOL fs/fscache/fscache 0x0b6309e1 __fscache_acquire_cookie +EXPORT_SYMBOL fs/fscache/fscache 0x0d84e559 __fscache_invalidate +EXPORT_SYMBOL fs/fscache/fscache 0x12585cb9 fscache_op_complete +EXPORT_SYMBOL fs/fscache/fscache 0x14f892f2 __fscache_wait_on_invalidate +EXPORT_SYMBOL fs/fscache/fscache 0x1898ac2f fscache_mark_page_cached +EXPORT_SYMBOL fs/fscache/fscache 0x18ad33a4 fscache_add_cache +EXPORT_SYMBOL fs/fscache/fscache 0x1bd09a9c fscache_put_operation +EXPORT_SYMBOL fs/fscache/fscache 0x2966f850 fscache_fsdef_index +EXPORT_SYMBOL fs/fscache/fscache 0x2dc531d2 fscache_withdraw_cache +EXPORT_SYMBOL fs/fscache/fscache 0x3eeda2d9 __fscache_wait_on_page_write +EXPORT_SYMBOL fs/fscache/fscache 0x445369d6 fscache_operation_init +EXPORT_SYMBOL fs/fscache/fscache 0x471801f1 __fscache_attr_changed +EXPORT_SYMBOL fs/fscache/fscache 0x4a5b7afe __fscache_update_cookie +EXPORT_SYMBOL fs/fscache/fscache 0x5f06d1dd fscache_object_lookup_negative +EXPORT_SYMBOL fs/fscache/fscache 0x5f5df306 __fscache_enable_cookie +EXPORT_SYMBOL fs/fscache/fscache 0x6246d450 fscache_init_cache +EXPORT_SYMBOL fs/fscache/fscache 0x6388864c __fscache_check_page_write +EXPORT_SYMBOL fs/fscache/fscache 0x64509f03 fscache_check_aux +EXPORT_SYMBOL fs/fscache/fscache 0x656a28bf __fscache_relinquish_cookie +EXPORT_SYMBOL fs/fscache/fscache 0x65b2adec __fscache_maybe_release_page +EXPORT_SYMBOL fs/fscache/fscache 0x696efb1a __fscache_unregister_netfs +EXPORT_SYMBOL fs/fscache/fscache 0x6993526a fscache_mark_pages_cached +EXPORT_SYMBOL fs/fscache/fscache 0x6a13d68e __fscache_read_or_alloc_page +EXPORT_SYMBOL fs/fscache/fscache 0x6bd5b22a fscache_enqueue_operation +EXPORT_SYMBOL fs/fscache/fscache 0x6ee432ae __fscache_register_netfs +EXPORT_SYMBOL fs/fscache/fscache 0x74530ecd fscache_op_debug_id +EXPORT_SYMBOL fs/fscache/fscache 0x8ad533c0 __fscache_readpages_cancel +EXPORT_SYMBOL fs/fscache/fscache 0x8c8f3b02 __fscache_read_or_alloc_pages +EXPORT_SYMBOL fs/fscache/fscache 0x9031a12a __fscache_alloc_page +EXPORT_SYMBOL fs/fscache/fscache 0x91e4f96c __fscache_uncache_all_inode_pages +EXPORT_SYMBOL fs/fscache/fscache 0x94dd7e4a fscache_object_init +EXPORT_SYMBOL fs/fscache/fscache 0xb60cb708 __fscache_uncache_page +EXPORT_SYMBOL fs/fscache/fscache 0xc42e637c __fscache_write_page +EXPORT_SYMBOL fs/fscache/fscache 0xcbb860ae fscache_io_error +EXPORT_SYMBOL fs/fscache/fscache 0xd5348360 fscache_cache_cleared_wq +EXPORT_SYMBOL fs/fscache/fscache 0xdf22bf4d __fscache_check_consistency +EXPORT_SYMBOL fs/fscache/fscache 0xdf79ea2f fscache_object_destroy +EXPORT_SYMBOL fs/fscache/fscache 0xe7c07e3d fscache_object_mark_killed +EXPORT_SYMBOL fs/fscache/fscache 0xeac14fe9 fscache_object_retrying_stale +EXPORT_SYMBOL fs/fscache/fscache 0xedb192de fscache_obtained_object +EXPORT_SYMBOL fs/ocfs2/cluster/ocfs2_nodemanager 0xbfd7d7a2 o2hb_global_heartbeat_active +EXPORT_SYMBOL fs/quota/quota_tree 0x374717e7 qtree_get_next_id +EXPORT_SYMBOL fs/quota/quota_tree 0x4dbfc894 qtree_delete_dquot +EXPORT_SYMBOL fs/quota/quota_tree 0x71aa9a43 qtree_write_dquot +EXPORT_SYMBOL fs/quota/quota_tree 0xc077d025 qtree_read_dquot +EXPORT_SYMBOL fs/quota/quota_tree 0xc1c7597c qtree_entry_unused +EXPORT_SYMBOL fs/quota/quota_tree 0xc50155e7 qtree_release_dquot +EXPORT_SYMBOL lib/crc-itu-t 0xd819a524 crc_itu_t_table +EXPORT_SYMBOL lib/crc-itu-t 0xdf59602c crc_itu_t +EXPORT_SYMBOL lib/crc7 0x65aaf037 crc7_be_syndrome_table +EXPORT_SYMBOL lib/crc7 0xc440541c crc7_be +EXPORT_SYMBOL lib/crc8 0xaa8106bc crc8_populate_msb +EXPORT_SYMBOL lib/crc8 0xc3cd034d crc8_populate_lsb +EXPORT_SYMBOL lib/crc8 0xfa0da958 crc8 +EXPORT_SYMBOL lib/crypto/libarc4 0x2bb32ad1 arc4_setkey +EXPORT_SYMBOL lib/crypto/libarc4 0xcd47fcc4 arc4_crypt +EXPORT_SYMBOL lib/crypto/libblake2s 0x2fd09944 blake2s_update +EXPORT_SYMBOL lib/crypto/libblake2s 0x8da0a315 blake2s256_hmac +EXPORT_SYMBOL lib/crypto/libblake2s 0xadae6df8 blake2s_final +EXPORT_SYMBOL lib/crypto/libblake2s-generic 0xa6e9c670 blake2s_compress_generic +EXPORT_SYMBOL lib/crypto/libchacha 0xcec122d7 chacha_crypt_generic +EXPORT_SYMBOL lib/crypto/libchacha20poly1305 0x09315bb1 xchacha20poly1305_decrypt +EXPORT_SYMBOL lib/crypto/libchacha20poly1305 0x35142bf2 xchacha20poly1305_encrypt +EXPORT_SYMBOL lib/crypto/libchacha20poly1305 0x5cff4121 chacha20poly1305_decrypt +EXPORT_SYMBOL lib/crypto/libchacha20poly1305 0x637307c6 chacha20poly1305_encrypt +EXPORT_SYMBOL lib/crypto/libchacha20poly1305 0xa3883e62 chacha20poly1305_encrypt_sg_inplace +EXPORT_SYMBOL lib/crypto/libchacha20poly1305 0xff3141e0 chacha20poly1305_decrypt_sg_inplace +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 0x4dba97c6 poly1305_core_setkey +EXPORT_SYMBOL lib/crypto/libpoly1305 0xbcb90cb3 poly1305_core_emit +EXPORT_SYMBOL lib/libcrc32c 0x89a0cd52 crc32c_impl +EXPORT_SYMBOL lib/libcrc32c 0xb15b4109 crc32c +EXPORT_SYMBOL lib/lru_cache 0x0f6f0fdb lc_index_of +EXPORT_SYMBOL lib/lru_cache 0x17641dea lc_seq_printf_stats +EXPORT_SYMBOL lib/lru_cache 0x17c6b1e1 lc_del +EXPORT_SYMBOL lib/lru_cache 0x23db7180 lc_seq_dump_details +EXPORT_SYMBOL lib/lru_cache 0x52857213 lc_element_by_index +EXPORT_SYMBOL lib/lru_cache 0x6f1d0c3b lc_try_lock +EXPORT_SYMBOL lib/lru_cache 0x7869961b lc_set +EXPORT_SYMBOL lib/lru_cache 0x79c87149 lc_get +EXPORT_SYMBOL lib/lru_cache 0x88713f97 lc_create +EXPORT_SYMBOL lib/lru_cache 0x955d4873 lc_committed +EXPORT_SYMBOL lib/lru_cache 0xbbc7a78d lc_put +EXPORT_SYMBOL lib/lru_cache 0xc1a43316 lc_get_cumulative +EXPORT_SYMBOL lib/lru_cache 0xc3a4ca05 lc_destroy +EXPORT_SYMBOL lib/lru_cache 0xe4a98afa lc_try_get +EXPORT_SYMBOL lib/lru_cache 0xebae3022 lc_reset +EXPORT_SYMBOL lib/lru_cache 0xff3f1db8 lc_find +EXPORT_SYMBOL lib/lru_cache 0xffb12208 lc_is_used +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 0x0f3dcf29 LZ4_loadDictHC +EXPORT_SYMBOL lib/lz4/lz4hc_compress 0x7f7bbb7e LZ4_saveDictHC +EXPORT_SYMBOL lib/lz4/lz4hc_compress 0xddf86133 LZ4_compress_HC +EXPORT_SYMBOL lib/lz4/lz4hc_compress 0xe06ae6d6 LZ4_compress_HC_continue +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 0x38e157a7 objagg_create +EXPORT_SYMBOL lib/objagg 0x3c58e78f objagg_hints_put +EXPORT_SYMBOL lib/objagg 0x6691f29d objagg_obj_put +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 lib/zstd/zstd_compress 0x00441ef6 ZSTD_compressStream +EXPORT_SYMBOL lib/zstd/zstd_compress 0x040c92d1 ZSTD_CCtxWorkspaceBound +EXPORT_SYMBOL lib/zstd/zstd_compress 0x065b14f3 ZSTD_getBlockSizeMax +EXPORT_SYMBOL lib/zstd/zstd_compress 0x0b9a9379 ZSTD_initCCtx +EXPORT_SYMBOL lib/zstd/zstd_compress 0x17823f99 ZSTD_compress_usingCDict +EXPORT_SYMBOL lib/zstd/zstd_compress 0x1ffb27f1 ZSTD_initCStream_usingCDict +EXPORT_SYMBOL lib/zstd/zstd_compress 0x2411b496 ZSTD_CStreamOutSize +EXPORT_SYMBOL lib/zstd/zstd_compress 0x273a39e7 ZSTD_compressCCtx +EXPORT_SYMBOL lib/zstd/zstd_compress 0x35adbdc6 ZSTD_compress_usingDict +EXPORT_SYMBOL lib/zstd/zstd_compress 0x48bfae8e ZSTD_flushStream +EXPORT_SYMBOL lib/zstd/zstd_compress 0x50d289a3 ZSTD_resetCStream +EXPORT_SYMBOL lib/zstd/zstd_compress 0x515ab572 ZSTD_compressBegin +EXPORT_SYMBOL lib/zstd/zstd_compress 0x57b1012f ZSTD_compressBegin_usingDict +EXPORT_SYMBOL lib/zstd/zstd_compress 0x66a8b7ab ZSTD_CStreamInSize +EXPORT_SYMBOL lib/zstd/zstd_compress 0x785d10c3 ZSTD_endStream +EXPORT_SYMBOL lib/zstd/zstd_compress 0x84e61bae ZSTD_CDictWorkspaceBound +EXPORT_SYMBOL lib/zstd/zstd_compress 0x8f2f596d ZSTD_compressBound +EXPORT_SYMBOL lib/zstd/zstd_compress 0x97b3b7ca ZSTD_compressEnd +EXPORT_SYMBOL lib/zstd/zstd_compress 0xa4c8127c ZSTD_maxCLevel +EXPORT_SYMBOL lib/zstd/zstd_compress 0xa88b0af5 ZSTD_compressBegin_usingCDict +EXPORT_SYMBOL lib/zstd/zstd_compress 0xc2d4374c ZSTD_CStreamWorkspaceBound +EXPORT_SYMBOL lib/zstd/zstd_compress 0xc83660bd ZSTD_getParams +EXPORT_SYMBOL lib/zstd/zstd_compress 0xd1ad98e7 ZSTD_compressContinue +EXPORT_SYMBOL lib/zstd/zstd_compress 0xd967de6d ZSTD_getCParams +EXPORT_SYMBOL lib/zstd/zstd_compress 0xdc157266 ZSTD_adjustCParams +EXPORT_SYMBOL lib/zstd/zstd_compress 0xdfb596f8 ZSTD_copyCCtx +EXPORT_SYMBOL lib/zstd/zstd_compress 0xe02d4179 ZSTD_initCStream +EXPORT_SYMBOL lib/zstd/zstd_compress 0xe14f9e35 ZSTD_compressBlock +EXPORT_SYMBOL lib/zstd/zstd_compress 0xebe6a8a6 ZSTD_checkCParams +EXPORT_SYMBOL lib/zstd/zstd_compress 0xf2068346 ZSTD_initCDict +EXPORT_SYMBOL lib/zstd/zstd_compress 0xff471430 ZSTD_compressBegin_advanced +EXPORT_SYMBOL net/802/p8022 0x2a84d95c register_8022_client +EXPORT_SYMBOL net/802/p8022 0xd49d9187 unregister_8022_client +EXPORT_SYMBOL net/802/psnap 0xafba6bc6 unregister_snap_client +EXPORT_SYMBOL net/802/psnap 0xf0fc9c9d register_snap_client +EXPORT_SYMBOL net/9p/9pnet 0x00530fa1 p9_req_put +EXPORT_SYMBOL net/9p/9pnet 0x022075c6 p9_client_fcreate +EXPORT_SYMBOL net/9p/9pnet 0x087495a9 p9_client_readlink +EXPORT_SYMBOL net/9p/9pnet 0x08f1dd4a p9_client_begin_disconnect +EXPORT_SYMBOL net/9p/9pnet 0x0ccd5e47 v9fs_get_default_trans +EXPORT_SYMBOL net/9p/9pnet 0x17183707 p9_client_clunk +EXPORT_SYMBOL net/9p/9pnet 0x193d2822 p9_client_setattr +EXPORT_SYMBOL net/9p/9pnet 0x268c627b p9_client_getattr_dotl +EXPORT_SYMBOL net/9p/9pnet 0x2ed92f0f p9_client_getlock_dotl +EXPORT_SYMBOL net/9p/9pnet 0x2f800ffb p9_client_read +EXPORT_SYMBOL net/9p/9pnet 0x37f9abd8 p9_client_cb +EXPORT_SYMBOL net/9p/9pnet 0x3d73a797 p9_errstr2errno +EXPORT_SYMBOL net/9p/9pnet 0x3e5d7ded p9_client_mknod_dotl +EXPORT_SYMBOL net/9p/9pnet 0x43898b6f p9_release_pages +EXPORT_SYMBOL net/9p/9pnet 0x50ccb2f9 p9dirent_read +EXPORT_SYMBOL net/9p/9pnet 0x5102be62 p9_client_statfs +EXPORT_SYMBOL net/9p/9pnet 0x518f3d6a p9_parse_header +EXPORT_SYMBOL net/9p/9pnet 0x53054491 p9_client_attach +EXPORT_SYMBOL net/9p/9pnet 0x573b9640 p9_client_readdir +EXPORT_SYMBOL net/9p/9pnet 0x635beb34 p9_show_client_options +EXPORT_SYMBOL net/9p/9pnet 0x65bff526 v9fs_get_trans_by_name +EXPORT_SYMBOL net/9p/9pnet 0x6b3e8cb4 v9fs_register_trans +EXPORT_SYMBOL net/9p/9pnet 0x762c0e0d p9_client_rename +EXPORT_SYMBOL net/9p/9pnet 0x76eb1615 p9_client_create_dotl +EXPORT_SYMBOL net/9p/9pnet 0x797bae10 p9_client_write +EXPORT_SYMBOL net/9p/9pnet 0x79bd63f1 p9_client_destroy +EXPORT_SYMBOL net/9p/9pnet 0x82ca163a p9_client_stat +EXPORT_SYMBOL net/9p/9pnet 0x88e79193 p9_client_unlinkat +EXPORT_SYMBOL net/9p/9pnet 0x898902b6 p9_client_symlink +EXPORT_SYMBOL net/9p/9pnet 0x9dbfd05c p9_client_create +EXPORT_SYMBOL net/9p/9pnet 0xa2b37aa1 p9_client_read_once +EXPORT_SYMBOL net/9p/9pnet 0xaf71f0d4 p9_fcall_fini +EXPORT_SYMBOL net/9p/9pnet 0xb4bd5930 p9_client_wstat +EXPORT_SYMBOL net/9p/9pnet 0xb5ef6dd6 p9_tag_lookup +EXPORT_SYMBOL net/9p/9pnet 0xb5f1e093 p9stat_read +EXPORT_SYMBOL net/9p/9pnet 0xbdb007a5 p9_client_disconnect +EXPORT_SYMBOL net/9p/9pnet 0xc50e1c61 p9_is_proto_dotl +EXPORT_SYMBOL net/9p/9pnet 0xc6ae7fa1 p9_client_link +EXPORT_SYMBOL net/9p/9pnet 0xd1a8e902 p9_client_walk +EXPORT_SYMBOL net/9p/9pnet 0xd384c683 p9stat_free +EXPORT_SYMBOL net/9p/9pnet 0xd560873f v9fs_unregister_trans +EXPORT_SYMBOL net/9p/9pnet 0xd5ffc38c p9_client_renameat +EXPORT_SYMBOL net/9p/9pnet 0xd87970be p9_is_proto_dotu +EXPORT_SYMBOL net/9p/9pnet 0xe10bb2dc p9_client_fsync +EXPORT_SYMBOL net/9p/9pnet 0xe26438c0 p9_client_mkdir_dotl +EXPORT_SYMBOL net/9p/9pnet 0xe58a3360 p9_error_init +EXPORT_SYMBOL net/9p/9pnet 0xf1003fb0 p9_client_lock_dotl +EXPORT_SYMBOL net/9p/9pnet 0xf10792aa p9_client_open +EXPORT_SYMBOL net/9p/9pnet 0xfd557775 p9_client_remove +EXPORT_SYMBOL net/bridge/netfilter/ebtables 0x45a95f24 ebt_unregister_table +EXPORT_SYMBOL net/bridge/netfilter/ebtables 0x65c59ac1 ebt_register_table +EXPORT_SYMBOL net/bridge/netfilter/ebtables 0x8dc2a65f ebt_do_table +EXPORT_SYMBOL net/ceph/libceph 0x01ed2e0b osd_req_op_extent_dup_last +EXPORT_SYMBOL net/ceph/libceph 0x0470e567 ceph_parse_param +EXPORT_SYMBOL net/ceph/libceph 0x06008c63 osd_req_op_cls_request_data_bvecs +EXPORT_SYMBOL net/ceph/libceph 0x07ea7247 ceph_con_keepalive +EXPORT_SYMBOL net/ceph/libceph 0x0a06750b osd_req_op_extent_osd_data_bio +EXPORT_SYMBOL net/ceph/libceph 0x0b5cd820 ceph_messenger_init +EXPORT_SYMBOL net/ceph/libceph 0x0ce74839 ceph_pagelist_set_cursor +EXPORT_SYMBOL net/ceph/libceph 0x0ebf64a5 ceph_print_client_options +EXPORT_SYMBOL net/ceph/libceph 0x142118cb ceph_osdc_get_request +EXPORT_SYMBOL net/ceph/libceph 0x15d1d4f4 osd_req_op_extent_osd_data_bvecs +EXPORT_SYMBOL net/ceph/libceph 0x165a692b __ceph_open_session +EXPORT_SYMBOL net/ceph/libceph 0x184b5a64 ceph_osdc_clear_abort_err +EXPORT_SYMBOL net/ceph/libceph 0x18b55eac osd_req_op_cls_request_data_pages +EXPORT_SYMBOL net/ceph/libceph 0x2087719e ceph_oid_copy +EXPORT_SYMBOL net/ceph/libceph 0x2101cbc9 ceph_oid_destroy +EXPORT_SYMBOL net/ceph/libceph 0x240e1dc3 ceph_pg_to_acting_primary +EXPORT_SYMBOL net/ceph/libceph 0x25be5f0e ceph_msg_data_add_bio +EXPORT_SYMBOL net/ceph/libceph 0x26fa3666 ceph_cls_set_cookie +EXPORT_SYMBOL net/ceph/libceph 0x28cdbf3e ceph_cls_unlock +EXPORT_SYMBOL net/ceph/libceph 0x2b2bdc98 ceph_monc_get_version_async +EXPORT_SYMBOL net/ceph/libceph 0x2b8478fc ceph_monc_validate_auth +EXPORT_SYMBOL net/ceph/libceph 0x2b8e8711 ceph_cls_lock_info +EXPORT_SYMBOL net/ceph/libceph 0x2daafc46 ceph_con_close +EXPORT_SYMBOL net/ceph/libceph 0x2ef51ea0 osd_req_op_init +EXPORT_SYMBOL net/ceph/libceph 0x320bb8dc ceph_monc_init +EXPORT_SYMBOL net/ceph/libceph 0x33c0a163 ceph_copy_from_page_vector +EXPORT_SYMBOL net/ceph/libceph 0x34d23332 ceph_reset_client_addr +EXPORT_SYMBOL net/ceph/libceph 0x3524c308 ceph_find_or_create_string +EXPORT_SYMBOL net/ceph/libceph 0x35b656c2 ceph_pg_pool_name_by_id +EXPORT_SYMBOL net/ceph/libceph 0x36de6849 ceph_pg_pool_flags +EXPORT_SYMBOL net/ceph/libceph 0x3746c25c ceph_oloc_destroy +EXPORT_SYMBOL net/ceph/libceph 0x38cf07bb ceph_monc_wait_osdmap +EXPORT_SYMBOL net/ceph/libceph 0x38f2d94e ceph_file_to_extents +EXPORT_SYMBOL net/ceph/libceph 0x3933d74a ceph_compare_options +EXPORT_SYMBOL net/ceph/libceph 0x3b5ffc83 ceph_messenger_fini +EXPORT_SYMBOL net/ceph/libceph 0x3c8d7111 ceph_get_num_objects +EXPORT_SYMBOL net/ceph/libceph 0x3ed2bc65 ceph_msg_new +EXPORT_SYMBOL net/ceph/libceph 0x4037a861 ceph_parse_mon_ips +EXPORT_SYMBOL net/ceph/libceph 0x40775f59 ceph_monc_want_map +EXPORT_SYMBOL net/ceph/libceph 0x40b452a5 osd_req_op_xattr_init +EXPORT_SYMBOL net/ceph/libceph 0x40c4e3c7 ceph_zero_page_vector_range +EXPORT_SYMBOL net/ceph/libceph 0x466b85b8 libceph_compatible +EXPORT_SYMBOL net/ceph/libceph 0x4965dbd3 ceph_osdc_sync +EXPORT_SYMBOL net/ceph/libceph 0x4994fa5b osd_req_op_extent_osd_data_pages +EXPORT_SYMBOL net/ceph/libceph 0x4f6cdfc7 ceph_client_addr +EXPORT_SYMBOL net/ceph/libceph 0x51c1a041 ceph_alloc_page_vector +EXPORT_SYMBOL net/ceph/libceph 0x52e131f0 ceph_pagelist_release +EXPORT_SYMBOL net/ceph/libceph 0x57baf885 ceph_str_hash +EXPORT_SYMBOL net/ceph/libceph 0x5aeeee62 ceph_oid_aprintf +EXPORT_SYMBOL net/ceph/libceph 0x5f00c1a8 ceph_auth_update_authorizer +EXPORT_SYMBOL net/ceph/libceph 0x63758856 ceph_str_hash_name +EXPORT_SYMBOL net/ceph/libceph 0x65a7c6c0 ceph_monc_open_session +EXPORT_SYMBOL net/ceph/libceph 0x68c5fe51 ceph_osdc_flush_notifies +EXPORT_SYMBOL net/ceph/libceph 0x6904a6dd ceph_auth_is_authenticated +EXPORT_SYMBOL net/ceph/libceph 0x6a7a38a0 ceph_pr_addr +EXPORT_SYMBOL net/ceph/libceph 0x6b4f7873 osd_req_op_extent_init +EXPORT_SYMBOL net/ceph/libceph 0x6e3e471d ceph_cls_assert_locked +EXPORT_SYMBOL net/ceph/libceph 0x6f2e33ee ceph_auth_add_authorizer_challenge +EXPORT_SYMBOL net/ceph/libceph 0x6f7fd244 ceph_con_init +EXPORT_SYMBOL net/ceph/libceph 0x7358e4c4 ceph_alloc_options +EXPORT_SYMBOL net/ceph/libceph 0x76737dec ceph_osdc_alloc_messages +EXPORT_SYMBOL net/ceph/libceph 0x76a8d9ed osd_req_op_cls_init +EXPORT_SYMBOL net/ceph/libceph 0x7790a91c ceph_pagelist_append +EXPORT_SYMBOL net/ceph/libceph 0x7faed640 ceph_monc_renew_subs +EXPORT_SYMBOL net/ceph/libceph 0x80492064 ceph_osdc_copy_from +EXPORT_SYMBOL net/ceph/libceph 0x80789169 ceph_monc_get_version +EXPORT_SYMBOL net/ceph/libceph 0x81d82bea ceph_pagelist_truncate +EXPORT_SYMBOL net/ceph/libceph 0x831d4627 ceph_cls_lock +EXPORT_SYMBOL net/ceph/libceph 0x8375650f ceph_pagelist_reserve +EXPORT_SYMBOL net/ceph/libceph 0x847347e3 osd_req_op_cls_request_data_pagelist +EXPORT_SYMBOL net/ceph/libceph 0x86fca7e4 ceph_put_snap_context +EXPORT_SYMBOL net/ceph/libceph 0x8787e481 ceph_con_send +EXPORT_SYMBOL net/ceph/libceph 0x8b73ac2a ceph_osdc_call +EXPORT_SYMBOL net/ceph/libceph 0x9203654e ceph_osdc_update_epoch_barrier +EXPORT_SYMBOL net/ceph/libceph 0x97537e7a ceph_osdc_cancel_request +EXPORT_SYMBOL net/ceph/libceph 0x97b095af ceph_open_session +EXPORT_SYMBOL net/ceph/libceph 0x984edc9e osd_req_op_extent_osd_data +EXPORT_SYMBOL net/ceph/libceph 0x999690f7 ceph_auth_invalidate_authorizer +EXPORT_SYMBOL net/ceph/libceph 0x9ca95932 ceph_create_snap_context +EXPORT_SYMBOL net/ceph/libceph 0x9e3d8d5a ceph_cls_break_lock +EXPORT_SYMBOL net/ceph/libceph 0x9fefa3cb ceph_calc_file_object_mapping +EXPORT_SYMBOL net/ceph/libceph 0xa0068e5e ceph_release_page_vector +EXPORT_SYMBOL net/ceph/libceph 0xa376f5df ceph_pagelist_alloc +EXPORT_SYMBOL net/ceph/libceph 0xa6385e99 ceph_osdc_wait_request +EXPORT_SYMBOL net/ceph/libceph 0xa698f998 ceph_free_lockers +EXPORT_SYMBOL net/ceph/libceph 0xa6f2cf83 ceph_copy_user_to_page_vector +EXPORT_SYMBOL net/ceph/libceph 0xaa7c45f2 ceph_msg_get +EXPORT_SYMBOL net/ceph/libceph 0xac99ea76 ceph_osdc_new_request +EXPORT_SYMBOL net/ceph/libceph 0xacdea2ee ceph_auth_create_authorizer +EXPORT_SYMBOL net/ceph/libceph 0xad703657 ceph_auth_destroy_authorizer +EXPORT_SYMBOL net/ceph/libceph 0xad9541ff ceph_check_fsid +EXPORT_SYMBOL net/ceph/libceph 0xaf5ac01b ceph_msg_data_add_pagelist +EXPORT_SYMBOL net/ceph/libceph 0xafb8a407 ceph_msgr_flush +EXPORT_SYMBOL net/ceph/libceph 0xb0e9066c osd_req_op_extent_osd_data_pagelist +EXPORT_SYMBOL net/ceph/libceph 0xb1fcb9eb ceph_msg_new2 +EXPORT_SYMBOL net/ceph/libceph 0xb2752300 osd_req_op_cls_response_data_pages +EXPORT_SYMBOL net/ceph/libceph 0xb42fc933 osd_req_op_extent_osd_data_bvec_pos +EXPORT_SYMBOL net/ceph/libceph 0xb54676fa ceph_msg_type_name +EXPORT_SYMBOL net/ceph/libceph 0xb57f5507 ceph_osdc_notify +EXPORT_SYMBOL net/ceph/libceph 0xb592f7fb ceph_msg_data_add_pages +EXPORT_SYMBOL net/ceph/libceph 0xb72c162e ceph_buffer_release +EXPORT_SYMBOL net/ceph/libceph 0xbc98cee2 ceph_oloc_copy +EXPORT_SYMBOL net/ceph/libceph 0xbd8c1313 ceph_destroy_options +EXPORT_SYMBOL net/ceph/libceph 0xbe3879aa ceph_get_snap_context +EXPORT_SYMBOL net/ceph/libceph 0xbe387b22 ceph_client_gid +EXPORT_SYMBOL net/ceph/libceph 0xbf09fa63 ceph_pg_poolid_by_name +EXPORT_SYMBOL net/ceph/libceph 0xbf5d88b3 ceph_osdc_watch +EXPORT_SYMBOL net/ceph/libceph 0xbfa0a955 ceph_destroy_client +EXPORT_SYMBOL net/ceph/libceph 0xc05b1acd ceph_msg_put +EXPORT_SYMBOL net/ceph/libceph 0xc29035f6 ceph_osdc_alloc_request +EXPORT_SYMBOL net/ceph/libceph 0xc6f113ea ceph_osdc_list_watchers +EXPORT_SYMBOL net/ceph/libceph 0xca80437b ceph_extent_to_file +EXPORT_SYMBOL net/ceph/libceph 0xcbf21c7e ceph_wait_for_latest_osdmap +EXPORT_SYMBOL net/ceph/libceph 0xd0395314 ceph_osdc_unwatch +EXPORT_SYMBOL net/ceph/libceph 0xd055fc0a ceph_object_locator_to_pg +EXPORT_SYMBOL net/ceph/libceph 0xd16199e0 ceph_monc_blacklist_add +EXPORT_SYMBOL net/ceph/libceph 0xd1620966 osd_req_op_raw_data_in_pages +EXPORT_SYMBOL net/ceph/libceph 0xd4eb7735 ceph_decode_entity_addr +EXPORT_SYMBOL net/ceph/libceph 0xd77b51e5 ceph_osdc_maybe_request_map +EXPORT_SYMBOL net/ceph/libceph 0xd899c07e ceph_auth_verify_authorizer_reply +EXPORT_SYMBOL net/ceph/libceph 0xd8e53d51 ceph_con_open +EXPORT_SYMBOL net/ceph/libceph 0xdd08f1ec ceph_create_client +EXPORT_SYMBOL net/ceph/libceph 0xdd3c7f3c ceph_msg_data_add_bvecs +EXPORT_SYMBOL net/ceph/libceph 0xdeddd368 ceph_pagelist_free_reserve +EXPORT_SYMBOL net/ceph/libceph 0xdf6ef4a1 ceph_oid_printf +EXPORT_SYMBOL net/ceph/libceph 0xdfc091f9 ceph_entity_type_name +EXPORT_SYMBOL net/ceph/libceph 0xe190195d ceph_msg_dump +EXPORT_SYMBOL net/ceph/libceph 0xe6500308 ceph_copy_to_page_vector +EXPORT_SYMBOL net/ceph/libceph 0xe85108a4 ceph_buffer_new +EXPORT_SYMBOL net/ceph/libceph 0xec47ed1e ceph_monc_do_statfs +EXPORT_SYMBOL net/ceph/libceph 0xed1fbadb osd_req_op_alloc_hint_init +EXPORT_SYMBOL net/ceph/libceph 0xee120c03 ceph_release_string +EXPORT_SYMBOL net/ceph/libceph 0xeef6cfa3 ceph_iterate_extents +EXPORT_SYMBOL net/ceph/libceph 0xefc3e8c3 ceph_osdc_notify_ack +EXPORT_SYMBOL net/ceph/libceph 0xf3b22dc7 ceph_osdc_start_request +EXPORT_SYMBOL net/ceph/libceph 0xf3d3845d ceph_monc_stop +EXPORT_SYMBOL net/ceph/libceph 0xf5b32a9f ceph_put_page_vector +EXPORT_SYMBOL net/ceph/libceph 0xfc7f74eb ceph_monc_got_map +EXPORT_SYMBOL net/ceph/libceph 0xfdc3ee3b osd_req_op_extent_update +EXPORT_SYMBOL net/ceph/libceph 0xfe6d8e02 ceph_osdc_abort_requests +EXPORT_SYMBOL net/ceph/libceph 0xffe2f970 ceph_osdc_put_request +EXPORT_SYMBOL net/dccp/dccp_ipv4 0x2ca7ac75 dccp_syn_ack_timeout +EXPORT_SYMBOL net/dccp/dccp_ipv4 0x95611135 dccp_req_err +EXPORT_SYMBOL net/ipv4/fou 0x3899cd11 gue_encap_hlen +EXPORT_SYMBOL net/ipv4/fou 0xada03425 __fou_build_header +EXPORT_SYMBOL net/ipv4/fou 0xdef70806 fou_encap_hlen +EXPORT_SYMBOL net/ipv4/fou 0xee235b28 __gue_build_header +EXPORT_SYMBOL net/ipv4/gre 0xccfb6d32 gre_parse_header +EXPORT_SYMBOL net/ipv4/ip_tunnel 0x5134faba ip_tunnel_get_link_net +EXPORT_SYMBOL net/ipv4/ip_tunnel 0x869ded91 ip_tunnel_encap_add_ops +EXPORT_SYMBOL net/ipv4/ip_tunnel 0x901f2972 ip_tunnel_encap_del_ops +EXPORT_SYMBOL net/ipv4/ip_tunnel 0xd8748c75 ip_tunnel_get_iflink +EXPORT_SYMBOL net/ipv4/netfilter/arp_tables 0xb416a103 arpt_register_table +EXPORT_SYMBOL net/ipv4/netfilter/arp_tables 0xba11dd78 arpt_do_table +EXPORT_SYMBOL net/ipv4/netfilter/arp_tables 0xf25f248d arpt_unregister_table +EXPORT_SYMBOL net/ipv4/netfilter/ip_tables 0x0fed458d ipt_unregister_table +EXPORT_SYMBOL net/ipv4/netfilter/ip_tables 0x15b8b6a8 ipt_do_table +EXPORT_SYMBOL net/ipv4/netfilter/ip_tables 0x1ff757be ipt_unregister_table_pre_exit +EXPORT_SYMBOL net/ipv4/netfilter/ip_tables 0x83f20c4c ipt_register_table +EXPORT_SYMBOL net/ipv4/netfilter/ip_tables 0xbc3e00ff ipt_unregister_table_exit +EXPORT_SYMBOL net/ipv4/tunnel4 0x56ccc2e4 xfrm4_tunnel_deregister +EXPORT_SYMBOL net/ipv4/tunnel4 0x6da3cada xfrm4_tunnel_register +EXPORT_SYMBOL net/ipv4/udp_tunnel 0xb5706c0d udp_sock_create4 +EXPORT_SYMBOL net/ipv6/ip6_tunnel 0x5801c5fa ip6_tnl_xmit +EXPORT_SYMBOL net/ipv6/ip6_tunnel 0x5947033c ip6_tnl_encap_del_ops +EXPORT_SYMBOL net/ipv6/ip6_tunnel 0x7debfd2b ip6_tnl_get_iflink +EXPORT_SYMBOL net/ipv6/ip6_tunnel 0x86daf34a ip6_tnl_rcv +EXPORT_SYMBOL net/ipv6/ip6_tunnel 0x93364e67 ip6_tnl_get_link_net +EXPORT_SYMBOL net/ipv6/ip6_tunnel 0xadb5b45a ip6_tnl_encap_add_ops +EXPORT_SYMBOL net/ipv6/ip6_tunnel 0xcc706448 ip6_tnl_parse_tlv_enc_lim +EXPORT_SYMBOL net/ipv6/ip6_tunnel 0xe99dbf2f ip6_tnl_get_cap +EXPORT_SYMBOL net/ipv6/ip6_tunnel 0xfc79fecd ip6_tnl_change_mtu +EXPORT_SYMBOL net/ipv6/netfilter/ip6_tables 0x1434e985 ip6t_unregister_table_pre_exit +EXPORT_SYMBOL net/ipv6/netfilter/ip6_tables 0x474ba0dd ip6t_unregister_table_exit +EXPORT_SYMBOL net/ipv6/netfilter/ip6_tables 0x849ef20e ip6t_unregister_table +EXPORT_SYMBOL net/ipv6/netfilter/ip6_tables 0xa6496fa0 ip6t_register_table +EXPORT_SYMBOL net/ipv6/netfilter/ip6_tables 0xca0a56e2 ip6t_do_table +EXPORT_SYMBOL net/ipv6/tunnel6 0x12550483 xfrm6_tunnel_deregister +EXPORT_SYMBOL net/ipv6/tunnel6 0xd02b02dc xfrm6_tunnel_register +EXPORT_SYMBOL net/ipv6/xfrm6_tunnel 0x0b61cb77 xfrm6_tunnel_spi_lookup +EXPORT_SYMBOL net/ipv6/xfrm6_tunnel 0x7b63abc8 xfrm6_tunnel_alloc_spi +EXPORT_SYMBOL net/l2tp/l2tp_core 0x8845ea1c l2tp_recv_common +EXPORT_SYMBOL net/l2tp/l2tp_core 0xc67008e8 l2tp_tunnel_free +EXPORT_SYMBOL net/l2tp/l2tp_ip 0x866090a3 l2tp_ioctl +EXPORT_SYMBOL net/llc/llc 0x104bed06 llc_sap_close +EXPORT_SYMBOL net/llc/llc 0x32994c1d llc_add_pack +EXPORT_SYMBOL net/llc/llc 0x38b92846 llc_remove_pack +EXPORT_SYMBOL net/llc/llc 0x46a18bf3 llc_sap_find +EXPORT_SYMBOL net/llc/llc 0x4d5683c1 llc_set_station_handler +EXPORT_SYMBOL net/llc/llc 0x52d7b2fd llc_sap_list +EXPORT_SYMBOL net/llc/llc 0x591cc070 llc_sap_open +EXPORT_SYMBOL net/llc/llc 0x924d07b6 llc_build_and_send_ui_pkt +EXPORT_SYMBOL net/llc/llc 0xa3e53a6b llc_mac_hdr_init +EXPORT_SYMBOL net/netfilter/ipvs/ip_vs 0x0795ce1a ip_vs_proto_data_get +EXPORT_SYMBOL net/netfilter/ipvs/ip_vs 0x0abf10cd unregister_ip_vs_scheduler +EXPORT_SYMBOL net/netfilter/ipvs/ip_vs 0x0d0b0bf9 register_ip_vs_scheduler +EXPORT_SYMBOL net/netfilter/ipvs/ip_vs 0x1a9c61d5 ip_vs_proto_get +EXPORT_SYMBOL net/netfilter/ipvs/ip_vs 0x1ff986e7 ip_vs_scheduler_err +EXPORT_SYMBOL net/netfilter/ipvs/ip_vs 0x2f0c3543 ip_vs_conn_put +EXPORT_SYMBOL net/netfilter/ipvs/ip_vs 0x37d77241 ip_vs_conn_out_get +EXPORT_SYMBOL net/netfilter/ipvs/ip_vs 0x3b0218b5 ip_vs_conn_new +EXPORT_SYMBOL net/netfilter/ipvs/ip_vs 0x3c14a3eb unregister_ip_vs_app +EXPORT_SYMBOL net/netfilter/ipvs/ip_vs 0x67d8a676 register_ip_vs_app_inc +EXPORT_SYMBOL net/netfilter/ipvs/ip_vs 0x68955154 ip_vs_tcp_conn_listen +EXPORT_SYMBOL net/netfilter/ipvs/ip_vs 0xa69ed7dc ip_vs_nfct_expect_related +EXPORT_SYMBOL net/netfilter/ipvs/ip_vs 0xc600c89e ip_vs_conn_in_get +EXPORT_SYMBOL net/netfilter/ipvs/ip_vs 0xd831a1a2 ip_vs_proto_name +EXPORT_SYMBOL net/netfilter/ipvs/ip_vs 0xed6a2313 ip_vs_new_conn_out +EXPORT_SYMBOL net/netfilter/ipvs/ip_vs 0xfc6c0cdd register_ip_vs_app +EXPORT_SYMBOL net/netfilter/nf_conntrack 0xbfb79dd4 nf_ct_ext_add +EXPORT_SYMBOL net/netfilter/nf_conntrack_pptp 0xf2a36612 pptp_msg_name +EXPORT_SYMBOL net/netfilter/nf_nat 0x097e0410 nf_nat_follow_master +EXPORT_SYMBOL net/netfilter/nf_nat 0x4ec9a7c0 __nf_nat_mangle_tcp_packet +EXPORT_SYMBOL net/netfilter/nf_nat 0xa4ee8055 nf_nat_mangle_udp_packet +EXPORT_SYMBOL net/netfilter/nf_nat 0xe587d482 nf_nat_setup_info +EXPORT_SYMBOL net/netfilter/nf_nat 0xe9d82562 nf_xfrm_me_harder +EXPORT_SYMBOL net/netfilter/nft_fib 0xe8203072 nft_fib_policy +EXPORT_SYMBOL net/netfilter/x_tables 0x001d55aa xt_register_targets +EXPORT_SYMBOL net/netfilter/x_tables 0x0d7f5fcd xt_alloc_entry_offsets +EXPORT_SYMBOL net/netfilter/x_tables 0x37941c30 xt_unregister_match +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 0x62e79f2e xt_register_match +EXPORT_SYMBOL net/netfilter/x_tables 0x74e3bfb7 xt_unregister_matches +EXPORT_SYMBOL net/netfilter/x_tables 0x75b87ba6 xt_register_target +EXPORT_SYMBOL net/netfilter/x_tables 0x9535d605 xt_unregister_targets +EXPORT_SYMBOL net/netfilter/x_tables 0x977fd4bf xt_alloc_table_info +EXPORT_SYMBOL net/netfilter/x_tables 0xa25fc115 xt_compat_check_entry_offsets +EXPORT_SYMBOL net/netfilter/x_tables 0xabc4f722 xt_find_match +EXPORT_SYMBOL net/netfilter/x_tables 0xcb3e91cc xt_counters_alloc +EXPORT_SYMBOL net/netfilter/x_tables 0xd548c390 xt_unregister_target +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 0xe32a927f xt_register_matches +EXPORT_SYMBOL net/netfilter/x_tables 0xec3a7a2c xt_table_get_private_protected +EXPORT_SYMBOL net/netfilter/x_tables 0xfef779fa xt_find_jump_offset +EXPORT_SYMBOL net/rxrpc/rxrpc 0x0d090970 rxrpc_sock_set_min_security_level +EXPORT_SYMBOL net/rxrpc/rxrpc 0x17f297d6 rxrpc_kernel_get_reply_time +EXPORT_SYMBOL net/rxrpc/rxrpc 0x2446e57c rxrpc_kernel_set_tx_length +EXPORT_SYMBOL net/rxrpc/rxrpc 0x31bf3ca3 rxrpc_debug_id +EXPORT_SYMBOL net/rxrpc/rxrpc 0x3764b2c2 rxrpc_kernel_recv_data +EXPORT_SYMBOL net/rxrpc/rxrpc 0x3820c0f0 rxrpc_kernel_get_epoch +EXPORT_SYMBOL net/rxrpc/rxrpc 0x4a3976e8 rxrpc_kernel_abort_call +EXPORT_SYMBOL net/rxrpc/rxrpc 0x50821ed0 rxrpc_kernel_get_srtt +EXPORT_SYMBOL net/rxrpc/rxrpc 0x5a5d4d79 rxrpc_get_server_data_key +EXPORT_SYMBOL net/rxrpc/rxrpc 0x61ae57bf rxrpc_get_null_key +EXPORT_SYMBOL net/rxrpc/rxrpc 0x7f5146c7 rxrpc_kernel_charge_accept +EXPORT_SYMBOL net/rxrpc/rxrpc 0xc21b42e7 rxrpc_kernel_end_call +EXPORT_SYMBOL net/rxrpc/rxrpc 0xcb62218d rxrpc_kernel_new_call_notification +EXPORT_SYMBOL net/rxrpc/rxrpc 0xd52e7078 rxrpc_kernel_set_max_life +EXPORT_SYMBOL net/rxrpc/rxrpc 0xd54072dd key_type_rxrpc +EXPORT_SYMBOL net/rxrpc/rxrpc 0xdbf55944 rxrpc_kernel_begin_call +EXPORT_SYMBOL net/rxrpc/rxrpc 0xe108d032 rxrpc_kernel_check_life +EXPORT_SYMBOL net/rxrpc/rxrpc 0xf1dbc5a0 rxrpc_kernel_send_data +EXPORT_SYMBOL net/rxrpc/rxrpc 0xf6d532c1 rxrpc_kernel_get_peer +EXPORT_SYMBOL net/sctp/sctp 0x7a7e41ec sctp_do_peeloff +EXPORT_SYMBOL net/sunrpc/auth_gss/auth_rpcgss 0x3c68b977 gss_mech_put +EXPORT_SYMBOL net/sunrpc/auth_gss/auth_rpcgss 0x808d6f5d gss_mech_get +EXPORT_SYMBOL net/sunrpc/auth_gss/auth_rpcgss 0xe9e8ceef gss_pseudoflavor_to_service +EXPORT_SYMBOL net/sunrpc/sunrpc 0x31ffc2a4 xdr_truncate_encode +EXPORT_SYMBOL net/sunrpc/sunrpc 0xbd204612 svc_pool_stats_open +EXPORT_SYMBOL net/sunrpc/sunrpc 0xc3813057 xdr_restrict_buflen +EXPORT_SYMBOL net/tipc/tipc 0x110eaf82 tipc_dump_start +EXPORT_SYMBOL net/tipc/tipc 0x79f361bb tipc_dump_done +EXPORT_SYMBOL net/tipc/tipc 0x963becbd tipc_sk_fill_sock_diag +EXPORT_SYMBOL net/tipc/tipc 0xbfecf4aa tipc_nl_sk_walk +EXPORT_SYMBOL net/tls/tls 0xcd0802b8 tls_get_record +EXPORT_SYMBOL vmlinux 0x001138b1 xfrm_state_alloc +EXPORT_SYMBOL vmlinux 0x002963a2 tcp_fastopen_defer_connect +EXPORT_SYMBOL vmlinux 0x002f6d00 arp_send +EXPORT_SYMBOL vmlinux 0x003028dc kernel_param_lock +EXPORT_SYMBOL vmlinux 0x00351a5d vlan_vids_add_by_dev +EXPORT_SYMBOL vmlinux 0x0040bcd8 netlink_unicast +EXPORT_SYMBOL vmlinux 0x005db676 ccw_device_tm_start_timeout_key +EXPORT_SYMBOL vmlinux 0x009231f9 dev_get_by_napi_id +EXPORT_SYMBOL vmlinux 0x009beae5 deactivate_super +EXPORT_SYMBOL vmlinux 0x009f9793 cdev_del +EXPORT_SYMBOL vmlinux 0x00b4e615 posix_acl_equiv_mode +EXPORT_SYMBOL vmlinux 0x00cd72e5 __debug_sprintf_exception +EXPORT_SYMBOL vmlinux 0x00cf9027 tcp_conn_request +EXPORT_SYMBOL vmlinux 0x00dc9758 hdmi_infoframe_pack_only +EXPORT_SYMBOL vmlinux 0x00e20dcf jbd2_journal_blocks_per_page +EXPORT_SYMBOL vmlinux 0x00eb1c3a radix_tree_delete +EXPORT_SYMBOL vmlinux 0x00f4a223 _ebc_toupper +EXPORT_SYMBOL vmlinux 0x00fdae31 pci_msix_vec_count +EXPORT_SYMBOL vmlinux 0x01000e51 schedule +EXPORT_SYMBOL vmlinux 0x012ee592 seq_lseek +EXPORT_SYMBOL vmlinux 0x013cd95e devm_register_netdev +EXPORT_SYMBOL vmlinux 0x014716eb hdmi_vendor_infoframe_pack_only +EXPORT_SYMBOL vmlinux 0x0147812c kblockd_mod_delayed_work_on +EXPORT_SYMBOL vmlinux 0x01553371 vm_brk_flags +EXPORT_SYMBOL vmlinux 0x015af7f4 system_state +EXPORT_SYMBOL vmlinux 0x01757935 rdmacg_register_device +EXPORT_SYMBOL vmlinux 0x017de3d5 nr_cpu_ids +EXPORT_SYMBOL vmlinux 0x0181c2b1 simple_link +EXPORT_SYMBOL vmlinux 0x018574a1 mb_cache_entry_delete +EXPORT_SYMBOL vmlinux 0x0192fe23 csum_and_copy_from_iter_full +EXPORT_SYMBOL vmlinux 0x019dd2fe elv_rb_latter_request +EXPORT_SYMBOL vmlinux 0x01aa01ca __udp_disconnect +EXPORT_SYMBOL vmlinux 0x01b0bbf9 try_to_writeback_inodes_sb +EXPORT_SYMBOL vmlinux 0x01bf55fc paddr_vmcoreinfo_note +EXPORT_SYMBOL vmlinux 0x01cdd1e2 seq_escape_mem_ascii +EXPORT_SYMBOL vmlinux 0x01d178f4 __wait_on_bit_lock +EXPORT_SYMBOL vmlinux 0x01da9ba1 scsi_partsize +EXPORT_SYMBOL vmlinux 0x01e1ec00 utf8_strncasecmp_folded +EXPORT_SYMBOL vmlinux 0x01ef6af7 page_pool_destroy +EXPORT_SYMBOL vmlinux 0x020dbf27 bitmap_alloc +EXPORT_SYMBOL vmlinux 0x02259ccb blk_mq_complete_request +EXPORT_SYMBOL vmlinux 0x0228b02f raw3270_request_add_data +EXPORT_SYMBOL vmlinux 0x022d109c tty_lock +EXPORT_SYMBOL vmlinux 0x025483b1 set_current_groups +EXPORT_SYMBOL vmlinux 0x0257a9ae down_read_trylock +EXPORT_SYMBOL vmlinux 0x026414ec xfrm_state_flush +EXPORT_SYMBOL vmlinux 0x0274dc2b netif_get_num_default_rss_queues +EXPORT_SYMBOL vmlinux 0x0286c20a bit_waitqueue +EXPORT_SYMBOL vmlinux 0x0290b895 __breadahead +EXPORT_SYMBOL vmlinux 0x02966004 wait_for_key_construction +EXPORT_SYMBOL vmlinux 0x0296695f refcount_warn_saturate +EXPORT_SYMBOL vmlinux 0x02971d92 vfs_fsync +EXPORT_SYMBOL vmlinux 0x02a18c74 nf_conntrack_destroy +EXPORT_SYMBOL vmlinux 0x02c1c33b neigh_carrier_down +EXPORT_SYMBOL vmlinux 0x02ca22a8 hex_dump_to_buffer +EXPORT_SYMBOL vmlinux 0x02ea111e scsi_driverbyte_string +EXPORT_SYMBOL vmlinux 0x02f034a1 xz_dec_run +EXPORT_SYMBOL vmlinux 0x02fa5f23 blk_mq_run_hw_queue +EXPORT_SYMBOL vmlinux 0x030c96da revert_creds +EXPORT_SYMBOL vmlinux 0x031afd27 arp_tbl +EXPORT_SYMBOL vmlinux 0x031bb834 pcie_capability_clear_and_set_word +EXPORT_SYMBOL vmlinux 0x0334da4e scsi_command_size_tbl +EXPORT_SYMBOL vmlinux 0x03597003 kernel_param_unlock +EXPORT_SYMBOL vmlinux 0x0366307a console_suspend_enabled +EXPORT_SYMBOL vmlinux 0x037a0cba kfree +EXPORT_SYMBOL vmlinux 0x0397edd5 fb_edid_to_monspecs +EXPORT_SYMBOL vmlinux 0x03d2240c add_virt_timer_periodic +EXPORT_SYMBOL vmlinux 0x03d4945c skb_copy +EXPORT_SYMBOL vmlinux 0x03d5a903 pci_find_parent_resource +EXPORT_SYMBOL vmlinux 0x03dd94b8 dst_dev_put +EXPORT_SYMBOL vmlinux 0x03f1b300 security_sctp_assoc_request +EXPORT_SYMBOL vmlinux 0x03fd2571 vm_unmap_ram +EXPORT_SYMBOL vmlinux 0x043f8514 dquot_writeback_dquots +EXPORT_SYMBOL vmlinux 0x04482cdb __refrigerator +EXPORT_SYMBOL vmlinux 0x0456ae21 __tracepoint_s390_cio_xsch +EXPORT_SYMBOL vmlinux 0x04720648 lock_sock_nested +EXPORT_SYMBOL vmlinux 0x047d4602 __sb_start_write +EXPORT_SYMBOL vmlinux 0x04822be5 d_alloc +EXPORT_SYMBOL vmlinux 0x048fc5d8 inet_addr_type_table +EXPORT_SYMBOL vmlinux 0x04b40af4 udp_set_csum +EXPORT_SYMBOL vmlinux 0x04cd721d ap_queue_init_state +EXPORT_SYMBOL vmlinux 0x04ea56f9 _kstrtol +EXPORT_SYMBOL vmlinux 0x04f73096 nf_unregister_net_hooks +EXPORT_SYMBOL vmlinux 0x050e92e2 console_stop +EXPORT_SYMBOL vmlinux 0x051b18b9 xp_alloc +EXPORT_SYMBOL vmlinux 0x051cc27b blk_register_region +EXPORT_SYMBOL vmlinux 0x052251fc sync_dirty_buffer +EXPORT_SYMBOL vmlinux 0x05235893 find_inode_nowait +EXPORT_SYMBOL vmlinux 0x05240ee7 percpu_counter_batch +EXPORT_SYMBOL vmlinux 0x05352ab7 register_framebuffer +EXPORT_SYMBOL vmlinux 0x053f5f3d __sg_alloc_table_from_pages +EXPORT_SYMBOL vmlinux 0x054496b4 schedule_timeout_interruptible +EXPORT_SYMBOL vmlinux 0x054b86ea xfrm_state_update +EXPORT_SYMBOL vmlinux 0x0563bf2a bio_clone_fast +EXPORT_SYMBOL vmlinux 0x056837b1 tcp_v4_destroy_sock +EXPORT_SYMBOL vmlinux 0x056f5cef radix_tree_tagged +EXPORT_SYMBOL vmlinux 0x05782498 unregister_nls +EXPORT_SYMBOL vmlinux 0x0583e14b pid_task +EXPORT_SYMBOL vmlinux 0x05855904 flow_rule_match_ipv4_addrs +EXPORT_SYMBOL vmlinux 0x05b35ce6 netdev_lower_get_next_private +EXPORT_SYMBOL vmlinux 0x05c398d9 page_pool_release_page +EXPORT_SYMBOL vmlinux 0x05dc4f84 md_integrity_register +EXPORT_SYMBOL vmlinux 0x05e089a9 iget5_locked +EXPORT_SYMBOL vmlinux 0x05ee6760 devm_input_allocate_device +EXPORT_SYMBOL vmlinux 0x05f89aa1 pci_read_config_word +EXPORT_SYMBOL vmlinux 0x0609c3d3 pcie_print_link_status +EXPORT_SYMBOL vmlinux 0x061651be strcat +EXPORT_SYMBOL vmlinux 0x0634100a bitmap_parselist_user +EXPORT_SYMBOL vmlinux 0x065c07c6 unregister_md_personality +EXPORT_SYMBOL vmlinux 0x065ea6e6 inet_pton_with_scope +EXPORT_SYMBOL vmlinux 0x065eea67 jbd2_journal_inode_ranged_wait +EXPORT_SYMBOL vmlinux 0x066b198c dev_get_port_parent_id +EXPORT_SYMBOL vmlinux 0x067d73b4 seqno_fence_ops +EXPORT_SYMBOL vmlinux 0x06912cac clocksource_change_rating +EXPORT_SYMBOL vmlinux 0x06a8ea95 sock_no_socketpair +EXPORT_SYMBOL vmlinux 0x06acaa98 tty_port_alloc_xmit_buf +EXPORT_SYMBOL vmlinux 0x06b7775e __scsi_iterate_devices +EXPORT_SYMBOL vmlinux 0x06ba77c2 blk_queue_flag_set +EXPORT_SYMBOL vmlinux 0x06bbf7e2 read_cache_pages +EXPORT_SYMBOL vmlinux 0x06bf03e9 pci_match_id +EXPORT_SYMBOL vmlinux 0x06e76e46 mr_mfc_find_parent +EXPORT_SYMBOL vmlinux 0x06fb28b5 bio_copy_data_iter +EXPORT_SYMBOL vmlinux 0x06fdd7cc __xa_store +EXPORT_SYMBOL vmlinux 0x07035712 dev_queue_xmit_accel +EXPORT_SYMBOL vmlinux 0x070487ec xfrm_user_policy +EXPORT_SYMBOL vmlinux 0x0711ac2e ipv6_sock_mc_drop +EXPORT_SYMBOL vmlinux 0x0711c5a1 tcp_make_synack +EXPORT_SYMBOL vmlinux 0x0721db1e nlmsg_notify +EXPORT_SYMBOL vmlinux 0x07297511 crc_t10dif_update +EXPORT_SYMBOL vmlinux 0x072d0cc1 xfrm6_rcv +EXPORT_SYMBOL vmlinux 0x07376991 mutex_lock +EXPORT_SYMBOL vmlinux 0x0762d155 finalize_exec +EXPORT_SYMBOL vmlinux 0x0769d6d0 bfifo_qdisc_ops +EXPORT_SYMBOL vmlinux 0x077c5eae unload_nls +EXPORT_SYMBOL vmlinux 0x078bc0b9 compat_ipv6_setsockopt +EXPORT_SYMBOL vmlinux 0x079820a1 inet_frag_reasm_finish +EXPORT_SYMBOL vmlinux 0x079d8572 sock_alloc_send_skb +EXPORT_SYMBOL vmlinux 0x07a890c8 fb_alloc_cmap +EXPORT_SYMBOL vmlinux 0x07b98837 alloc_skb_with_frags +EXPORT_SYMBOL vmlinux 0x07bc16fc sock_queue_rcv_skb +EXPORT_SYMBOL vmlinux 0x07beeb44 tag_pages_for_writeback +EXPORT_SYMBOL vmlinux 0x07cc4a5d printk_timed_ratelimit +EXPORT_SYMBOL vmlinux 0x07dd502a s390_arch_random_generate +EXPORT_SYMBOL vmlinux 0x07f4162a xfrm_find_acq_byseq +EXPORT_SYMBOL vmlinux 0x07f57478 pci_unmap_iospace +EXPORT_SYMBOL vmlinux 0x0802e3fc simple_dir_inode_operations +EXPORT_SYMBOL vmlinux 0x0803bb95 jbd2_journal_update_sb_errno +EXPORT_SYMBOL vmlinux 0x0805f2c8 ecryptfs_get_auth_tok_key +EXPORT_SYMBOL vmlinux 0x0823f696 mark_buffer_write_io_error +EXPORT_SYMBOL vmlinux 0x082c3213 pci_root_buses +EXPORT_SYMBOL vmlinux 0x0843ee4f unregister_key_type +EXPORT_SYMBOL vmlinux 0x08456553 match_string +EXPORT_SYMBOL vmlinux 0x084837cd con_is_bound +EXPORT_SYMBOL vmlinux 0x084af693 vfs_ioctl +EXPORT_SYMBOL vmlinux 0x08595c2c xfrm_state_delete_tunnel +EXPORT_SYMBOL vmlinux 0x0863c82d ip_frag_next +EXPORT_SYMBOL vmlinux 0x0873fe08 blk_queue_flag_clear +EXPORT_SYMBOL vmlinux 0x0877f8b0 generic_key_instantiate +EXPORT_SYMBOL vmlinux 0x0882a449 security_xfrm_policy_alloc +EXPORT_SYMBOL vmlinux 0x088625bc skb_clone +EXPORT_SYMBOL vmlinux 0x08879ef6 scsi_dma_map +EXPORT_SYMBOL vmlinux 0x088c96f6 tcp_parse_md5sig_option +EXPORT_SYMBOL vmlinux 0x088d6aef iov_iter_get_pages +EXPORT_SYMBOL vmlinux 0x08a17a41 udp_disconnect +EXPORT_SYMBOL vmlinux 0x08b0b893 skb_split +EXPORT_SYMBOL vmlinux 0x08b71be6 __ip_options_compile +EXPORT_SYMBOL vmlinux 0x08b7e9d9 __ip_mc_inc_group +EXPORT_SYMBOL vmlinux 0x08cf786b sock_wfree +EXPORT_SYMBOL vmlinux 0x08d030f9 ip_ct_attach +EXPORT_SYMBOL vmlinux 0x08db9c16 xdp_get_umem_from_qid +EXPORT_SYMBOL vmlinux 0x08e1e0cc remap_pfn_range +EXPORT_SYMBOL vmlinux 0x08fc0cf0 devm_pci_remap_iospace +EXPORT_SYMBOL vmlinux 0x0913bc76 ip_options_rcv_srr +EXPORT_SYMBOL vmlinux 0x093a4933 d_move +EXPORT_SYMBOL vmlinux 0x094ba27a pci_request_irq +EXPORT_SYMBOL vmlinux 0x094effa5 __iucv_message_receive +EXPORT_SYMBOL vmlinux 0x09552614 neigh_seq_stop +EXPORT_SYMBOL vmlinux 0x095c4d48 devm_ioremap_wc +EXPORT_SYMBOL vmlinux 0x095de968 bio_advance +EXPORT_SYMBOL vmlinux 0x095e2189 put_tty_driver +EXPORT_SYMBOL vmlinux 0x09769037 dmt_modes +EXPORT_SYMBOL vmlinux 0x098b71c6 fb_dealloc_cmap +EXPORT_SYMBOL vmlinux 0x0992bcce security_task_getsecid +EXPORT_SYMBOL vmlinux 0x09a72958 xfrm_state_add +EXPORT_SYMBOL vmlinux 0x09abcbc5 pneigh_lookup +EXPORT_SYMBOL vmlinux 0x09bd26db unregister_filesystem +EXPORT_SYMBOL vmlinux 0x09bf6fbe ZSTD_decompressDCtx +EXPORT_SYMBOL vmlinux 0x09c8eb55 font_vga_8x16 +EXPORT_SYMBOL vmlinux 0x09d44df9 in_lock_functions +EXPORT_SYMBOL vmlinux 0x09f13925 fs_param_is_fd +EXPORT_SYMBOL vmlinux 0x09f2044c kstrtou8_from_user +EXPORT_SYMBOL vmlinux 0x0a18bce0 clean_bdev_aliases +EXPORT_SYMBOL vmlinux 0x0a1dbc76 tcp_rx_skb_cache_key +EXPORT_SYMBOL vmlinux 0x0a292872 reservation_seqcount_class +EXPORT_SYMBOL vmlinux 0x0a3b7036 dma_fence_chain_find_seqno +EXPORT_SYMBOL vmlinux 0x0a3db1f0 sget +EXPORT_SYMBOL vmlinux 0x0a440419 blk_rq_count_integrity_sg +EXPORT_SYMBOL vmlinux 0x0a4fcc55 sock_no_mmap +EXPORT_SYMBOL vmlinux 0x0a6b40ec ccw_device_dma_zalloc +EXPORT_SYMBOL vmlinux 0x0a6d7670 stream_open +EXPORT_SYMBOL vmlinux 0x0a770832 register_memory_notifier +EXPORT_SYMBOL vmlinux 0x0a8077f7 generic_file_fsync +EXPORT_SYMBOL vmlinux 0x0aa309cf synchronize_hardirq +EXPORT_SYMBOL vmlinux 0x0aaccc92 pci_remap_iospace +EXPORT_SYMBOL vmlinux 0x0aacd352 __kfifo_len_r +EXPORT_SYMBOL vmlinux 0x0ac73110 dquot_alloc +EXPORT_SYMBOL vmlinux 0x0ace5f2b inet_csk_delete_keepalive_timer +EXPORT_SYMBOL vmlinux 0x0ae60c27 utf8_normalize +EXPORT_SYMBOL vmlinux 0x0aec6ff2 netdev_class_remove_file_ns +EXPORT_SYMBOL vmlinux 0x0aecb09a nvm_alloc_dev +EXPORT_SYMBOL vmlinux 0x0af47c0e dev_mc_add +EXPORT_SYMBOL vmlinux 0x0b1beb31 vmalloc_32_user +EXPORT_SYMBOL vmlinux 0x0b24bf68 unpin_user_pages +EXPORT_SYMBOL vmlinux 0x0b2cb334 psched_ratecfg_precompute +EXPORT_SYMBOL vmlinux 0x0b31fe01 inet_add_protocol +EXPORT_SYMBOL vmlinux 0x0b37b380 pci_get_domain_bus_and_slot +EXPORT_SYMBOL vmlinux 0x0b3be741 kmem_cache_destroy +EXPORT_SYMBOL vmlinux 0x0b41c2a7 drop_super +EXPORT_SYMBOL vmlinux 0x0b742fd7 simple_strtol +EXPORT_SYMBOL vmlinux 0x0b76abb2 flow_rule_match_eth_addrs +EXPORT_SYMBOL vmlinux 0x0b7e1282 fs_lookup_param +EXPORT_SYMBOL vmlinux 0x0b8c1180 dma_resv_reserve_shared +EXPORT_SYMBOL vmlinux 0x0b8d11cf swake_up_one +EXPORT_SYMBOL vmlinux 0x0b9e00ee param_set_int +EXPORT_SYMBOL vmlinux 0x0bc2f36e dquot_disable +EXPORT_SYMBOL vmlinux 0x0bc477a2 irq_set_irq_type +EXPORT_SYMBOL vmlinux 0x0bd0790a t10_pi_type3_crc +EXPORT_SYMBOL vmlinux 0x0bf835b1 d_find_any_alias +EXPORT_SYMBOL vmlinux 0x0bfa2b7d block_truncate_page +EXPORT_SYMBOL vmlinux 0x0bff426b tcp_sync_mss +EXPORT_SYMBOL vmlinux 0x0c17a68e zlib_dfltcc_support +EXPORT_SYMBOL vmlinux 0x0c193111 ccw_device_set_offline +EXPORT_SYMBOL vmlinux 0x0c1f5052 input_mt_drop_unused +EXPORT_SYMBOL vmlinux 0x0c25ec48 secure_tcpv6_seq +EXPORT_SYMBOL vmlinux 0x0c43494d tso_count_descs +EXPORT_SYMBOL vmlinux 0x0c570cf3 netlink_net_capable +EXPORT_SYMBOL vmlinux 0x0c62c27f get_vm_area +EXPORT_SYMBOL vmlinux 0x0c6ccf20 s390_isolate_bp +EXPORT_SYMBOL vmlinux 0x0c7cf7c6 zero_page_mask +EXPORT_SYMBOL vmlinux 0x0cae59a3 __neigh_create +EXPORT_SYMBOL vmlinux 0x0cb264a1 security_lock_kernel_down +EXPORT_SYMBOL vmlinux 0x0cc0f4c5 __genradix_prealloc +EXPORT_SYMBOL vmlinux 0x0cd5835b ipv6_flowlabel_exclusive +EXPORT_SYMBOL vmlinux 0x0ce19729 mb_cache_entry_touch +EXPORT_SYMBOL vmlinux 0x0ced6361 param_ops_uint +EXPORT_SYMBOL vmlinux 0x0cfe1576 skb_queue_tail +EXPORT_SYMBOL vmlinux 0x0d006499 param_ops_ulong +EXPORT_SYMBOL vmlinux 0x0d05e9ae xa_extract +EXPORT_SYMBOL vmlinux 0x0d07f543 get_anon_bdev +EXPORT_SYMBOL vmlinux 0x0d33f579 lookup_positive_unlocked +EXPORT_SYMBOL vmlinux 0x0d38f25e fscrypt_get_encryption_info +EXPORT_SYMBOL vmlinux 0x0d3c0522 nf_log_set +EXPORT_SYMBOL vmlinux 0x0d3e0e16 __xa_insert +EXPORT_SYMBOL vmlinux 0x0d41dccf locks_lock_inode_wait +EXPORT_SYMBOL vmlinux 0x0d542439 __ipv6_addr_type +EXPORT_SYMBOL vmlinux 0x0d5bf5df inet_csk_destroy_sock +EXPORT_SYMBOL vmlinux 0x0d61eeee __bitmap_subset +EXPORT_SYMBOL vmlinux 0x0d74d164 pci_resize_resource +EXPORT_SYMBOL vmlinux 0x0dbc6d8d filp_close +EXPORT_SYMBOL vmlinux 0x0dbd33c2 security_binder_set_context_mgr +EXPORT_SYMBOL vmlinux 0x0dbf5d28 tcf_block_put +EXPORT_SYMBOL vmlinux 0x0dc75a05 md_error +EXPORT_SYMBOL vmlinux 0x0dd0c391 jbd2_journal_get_undo_access +EXPORT_SYMBOL vmlinux 0x0dd2cc32 unregister_cdrom +EXPORT_SYMBOL vmlinux 0x0ded0e25 __check_sticky +EXPORT_SYMBOL vmlinux 0x0dfe8eee set_disk_ro +EXPORT_SYMBOL vmlinux 0x0e007a6d __pci_register_driver +EXPORT_SYMBOL vmlinux 0x0e17678a siphash_4u64 +EXPORT_SYMBOL vmlinux 0x0e1e6a10 neigh_app_ns +EXPORT_SYMBOL vmlinux 0x0e1ecfb7 unregister_adapter_interrupt +EXPORT_SYMBOL vmlinux 0x0e22fcbd flow_block_cb_alloc +EXPORT_SYMBOL vmlinux 0x0e39e16f empty_aops +EXPORT_SYMBOL vmlinux 0x0e40d08a sock_register +EXPORT_SYMBOL vmlinux 0x0e48da46 ip_sock_set_recverr +EXPORT_SYMBOL vmlinux 0x0e4b302f fb_prepare_logo +EXPORT_SYMBOL vmlinux 0x0e5e5d2d register_shrinker +EXPORT_SYMBOL vmlinux 0x0e67f347 __lock_buffer +EXPORT_SYMBOL vmlinux 0x0e6c5fec fb_pan_display +EXPORT_SYMBOL vmlinux 0x0e90e984 param_set_charp +EXPORT_SYMBOL vmlinux 0x0ea763c3 sclp_sync_wait +EXPORT_SYMBOL vmlinux 0x0eab56fa __kfifo_max_r +EXPORT_SYMBOL vmlinux 0x0ead1d65 gen_pool_virt_to_phys +EXPORT_SYMBOL vmlinux 0x0ee33dc2 tcp_sock_set_keepcnt +EXPORT_SYMBOL vmlinux 0x0ef9ca60 sk_common_release +EXPORT_SYMBOL vmlinux 0x0f09cc34 schedule_timeout_killable +EXPORT_SYMBOL vmlinux 0x0f2efeae inet_accept +EXPORT_SYMBOL vmlinux 0x0f59acca __kernel_fpu_end +EXPORT_SYMBOL vmlinux 0x0f6e22e8 filemap_check_errors +EXPORT_SYMBOL vmlinux 0x0f86f560 kthread_delayed_work_timer_fn +EXPORT_SYMBOL vmlinux 0x0f8db2db dcb_setapp +EXPORT_SYMBOL vmlinux 0x0f8ee51e ZSTD_resetDStream +EXPORT_SYMBOL vmlinux 0x0fa38685 tty_schedule_flip +EXPORT_SYMBOL vmlinux 0x0faef0ed __tasklet_schedule +EXPORT_SYMBOL vmlinux 0x0fb2f8a4 mktime64 +EXPORT_SYMBOL vmlinux 0x0fbd63a4 mutex_is_locked +EXPORT_SYMBOL vmlinux 0x0fd902db mb_cache_entry_create +EXPORT_SYMBOL vmlinux 0x0ffc9609 ap_recv +EXPORT_SYMBOL vmlinux 0x0fff5afc time64_to_tm +EXPORT_SYMBOL vmlinux 0x100fbe69 vm_zone_stat +EXPORT_SYMBOL vmlinux 0x10112f05 ZSTD_DStreamInSize +EXPORT_SYMBOL vmlinux 0x1013470f d_exact_alias +EXPORT_SYMBOL vmlinux 0x1013dc67 jbd2_journal_forget +EXPORT_SYMBOL vmlinux 0x101b1af7 scsi_block_requests +EXPORT_SYMBOL vmlinux 0x101ca44f netdev_unbind_sb_channel +EXPORT_SYMBOL vmlinux 0x1035c7c2 __release_region +EXPORT_SYMBOL vmlinux 0x103c2957 ip_sock_set_mtu_discover +EXPORT_SYMBOL vmlinux 0x10497616 memweight +EXPORT_SYMBOL vmlinux 0x104e47d4 idr_replace +EXPORT_SYMBOL vmlinux 0x10564f46 cdrom_get_last_written +EXPORT_SYMBOL vmlinux 0x10588a80 write_inode_now +EXPORT_SYMBOL vmlinux 0x1068004b gf128mul_bbe +EXPORT_SYMBOL vmlinux 0x107e5878 zlib_inflateEnd +EXPORT_SYMBOL vmlinux 0x10c3f57e __gnet_stats_copy_queue +EXPORT_SYMBOL vmlinux 0x10c9e0c5 vlan_vids_del_by_dev +EXPORT_SYMBOL vmlinux 0x10cea616 blk_rq_unmap_user +EXPORT_SYMBOL vmlinux 0x10d595e8 d_invalidate +EXPORT_SYMBOL vmlinux 0x10d7640d alloc_pages_vma +EXPORT_SYMBOL vmlinux 0x10d9f885 scsi_sense_desc_find +EXPORT_SYMBOL vmlinux 0x10f999e1 jbd2_journal_destroy +EXPORT_SYMBOL vmlinux 0x10fd7e58 proc_set_size +EXPORT_SYMBOL vmlinux 0x11089ac7 _ctype +EXPORT_SYMBOL vmlinux 0x113d5572 dmam_alloc_attrs +EXPORT_SYMBOL vmlinux 0x113f9189 no_seek_end_llseek +EXPORT_SYMBOL vmlinux 0x114a6825 flow_rule_match_enc_ip +EXPORT_SYMBOL vmlinux 0x115e76e4 netdev_set_tc_queue +EXPORT_SYMBOL vmlinux 0x1163f0a7 blk_max_low_pfn +EXPORT_SYMBOL vmlinux 0x116d6060 dev_uc_sync +EXPORT_SYMBOL vmlinux 0x117093be qdisc_class_hash_init +EXPORT_SYMBOL vmlinux 0x11745dcd netdev_lower_get_next +EXPORT_SYMBOL vmlinux 0x1196da18 single_release +EXPORT_SYMBOL vmlinux 0x11a13e38 kthread_create_on_node +EXPORT_SYMBOL vmlinux 0x11a4c668 inet6_offloads +EXPORT_SYMBOL vmlinux 0x11b12f28 dev_set_mtu +EXPORT_SYMBOL vmlinux 0x11bab181 user_path_at_empty +EXPORT_SYMBOL vmlinux 0x11e0ec41 dm_read_arg +EXPORT_SYMBOL vmlinux 0x11e30762 chacha_block_generic +EXPORT_SYMBOL vmlinux 0x11ea5a90 sock_kfree_s +EXPORT_SYMBOL vmlinux 0x11f0f083 kernel_cpumcf_avail +EXPORT_SYMBOL vmlinux 0x11f7ed4c hex_to_bin +EXPORT_SYMBOL vmlinux 0x11fb83cb on_each_cpu_mask +EXPORT_SYMBOL vmlinux 0x1204deb3 bioset_integrity_create +EXPORT_SYMBOL vmlinux 0x120b336a __rb_insert_augmented +EXPORT_SYMBOL vmlinux 0x120bc98c inet_shutdown +EXPORT_SYMBOL vmlinux 0x120c139f gen_pool_dma_zalloc +EXPORT_SYMBOL vmlinux 0x120ddcc2 get_tree_single_reconf +EXPORT_SYMBOL vmlinux 0x121cbf73 dm_get_device +EXPORT_SYMBOL vmlinux 0x122d7e28 netdev_printk +EXPORT_SYMBOL vmlinux 0x1239fc2d sg_copy_to_buffer +EXPORT_SYMBOL vmlinux 0x1251a12e console_mode +EXPORT_SYMBOL vmlinux 0x125b36e0 down_write_killable +EXPORT_SYMBOL vmlinux 0x12641250 get_phys_clock +EXPORT_SYMBOL vmlinux 0x128ae417 inet_ioctl +EXPORT_SYMBOL vmlinux 0x12965e48 __sk_mem_reduce_allocated +EXPORT_SYMBOL vmlinux 0x129d17a0 mark_info_dirty +EXPORT_SYMBOL vmlinux 0x12a3174d rtnl_link_get_net +EXPORT_SYMBOL vmlinux 0x12a38747 usleep_range +EXPORT_SYMBOL vmlinux 0x12bf46ea param_set_bool +EXPORT_SYMBOL vmlinux 0x12c1b63d pci_unmap_rom +EXPORT_SYMBOL vmlinux 0x12c307b2 d_splice_alias +EXPORT_SYMBOL vmlinux 0x12cabc89 siphash_2u64 +EXPORT_SYMBOL vmlinux 0x12cc5e5d xa_find +EXPORT_SYMBOL vmlinux 0x12d46445 xfrm_state_register_afinfo +EXPORT_SYMBOL vmlinux 0x12d7236c fsync_bdev +EXPORT_SYMBOL vmlinux 0x12e00a91 blk_mq_tag_to_rq +EXPORT_SYMBOL vmlinux 0x12f6f69c fb_videomode_to_var +EXPORT_SYMBOL vmlinux 0x12fa14a8 __wait_on_bit +EXPORT_SYMBOL vmlinux 0x12fe638d diag_stat_inc_norecursion +EXPORT_SYMBOL vmlinux 0x13110126 request_resource +EXPORT_SYMBOL vmlinux 0x131ee4b9 pcie_get_width_cap +EXPORT_SYMBOL vmlinux 0x132b9fdf skb_get_hash_perturb +EXPORT_SYMBOL vmlinux 0x134cdd34 inet_frag_rbtree_purge +EXPORT_SYMBOL vmlinux 0x13610162 bio_integrity_add_page +EXPORT_SYMBOL vmlinux 0x136608b2 __tracepoint_s390_cio_csch +EXPORT_SYMBOL vmlinux 0x136d755c discard_new_inode +EXPORT_SYMBOL vmlinux 0x13730361 __scsi_add_device +EXPORT_SYMBOL vmlinux 0x137f3c6a __cpuhp_remove_state_cpuslocked +EXPORT_SYMBOL vmlinux 0x1394b8c2 seq_hex_dump +EXPORT_SYMBOL vmlinux 0x13a1304d pci_enable_ptm +EXPORT_SYMBOL vmlinux 0x13d0adf7 __kfifo_out +EXPORT_SYMBOL vmlinux 0x13d478d3 netdev_master_upper_dev_get_rcu +EXPORT_SYMBOL vmlinux 0x13df985c xfrm_policy_insert +EXPORT_SYMBOL vmlinux 0x14189fce path_get +EXPORT_SYMBOL vmlinux 0x1459e7a5 map_kernel_range_noflush +EXPORT_SYMBOL vmlinux 0x14605535 dma_fence_context_alloc +EXPORT_SYMBOL vmlinux 0x146289b7 crc16_table +EXPORT_SYMBOL vmlinux 0x1469ea69 __sock_create +EXPORT_SYMBOL vmlinux 0x1473cad5 gen_pool_dma_alloc +EXPORT_SYMBOL vmlinux 0x148157ba kernel_bind +EXPORT_SYMBOL vmlinux 0x14819f76 napi_consume_skb +EXPORT_SYMBOL vmlinux 0x148ff39c vlan_dev_vlan_id +EXPORT_SYMBOL vmlinux 0x149efd09 ccw_device_clear_options +EXPORT_SYMBOL vmlinux 0x14b1bd1c nvm_register +EXPORT_SYMBOL vmlinux 0x14c5e5b3 segment_warning +EXPORT_SYMBOL vmlinux 0x14c67e3e tcp_tx_delay_enabled +EXPORT_SYMBOL vmlinux 0x14e096df security_sock_graft +EXPORT_SYMBOL vmlinux 0x14f3c444 nf_unregister_net_hook +EXPORT_SYMBOL vmlinux 0x14f41e94 scsi_print_result +EXPORT_SYMBOL vmlinux 0x14fb2365 cmdline_parts_set +EXPORT_SYMBOL vmlinux 0x15061752 sock_recv_errqueue +EXPORT_SYMBOL vmlinux 0x150983e1 ZSTD_DStreamOutSize +EXPORT_SYMBOL vmlinux 0x151f4898 schedule_timeout_uninterruptible +EXPORT_SYMBOL vmlinux 0x1526b301 unix_tot_inflight +EXPORT_SYMBOL vmlinux 0x1544fd8a devm_request_any_context_irq +EXPORT_SYMBOL vmlinux 0x154c6338 dm_kcopyd_client_destroy +EXPORT_SYMBOL vmlinux 0x156f00f3 sg_pcopy_from_buffer +EXPORT_SYMBOL vmlinux 0x1572a6db jbd2_journal_ack_err +EXPORT_SYMBOL vmlinux 0x15740b4c xfrm_stateonly_find +EXPORT_SYMBOL vmlinux 0x159328f3 tcf_exts_validate +EXPORT_SYMBOL vmlinux 0x15b6af3a dev_alert_hash +EXPORT_SYMBOL vmlinux 0x15bafe29 unregister_md_cluster_operations +EXPORT_SYMBOL vmlinux 0x15bc9ebc iput +EXPORT_SYMBOL vmlinux 0x15bed7a5 LZ4_decompress_safe_partial +EXPORT_SYMBOL vmlinux 0x15c24ad9 simple_transaction_read +EXPORT_SYMBOL vmlinux 0x15c42df8 mark_buffer_async_write +EXPORT_SYMBOL vmlinux 0x15c82c19 sock_i_ino +EXPORT_SYMBOL vmlinux 0x15d405b9 softnet_data +EXPORT_SYMBOL vmlinux 0x15ddb844 udp_lib_get_port +EXPORT_SYMBOL vmlinux 0x15f5df91 get_pgste +EXPORT_SYMBOL vmlinux 0x160a6e28 generic_pipe_buf_get +EXPORT_SYMBOL vmlinux 0x162893fd hashlen_string +EXPORT_SYMBOL vmlinux 0x1632193b balance_dirty_pages_ratelimited +EXPORT_SYMBOL vmlinux 0x163a3cd2 cpumask_next_and +EXPORT_SYMBOL vmlinux 0x1650c40d security_dentry_init_security +EXPORT_SYMBOL vmlinux 0x165cd582 __ip_mc_dec_group +EXPORT_SYMBOL vmlinux 0x166a5997 cdev_add +EXPORT_SYMBOL vmlinux 0x166c95c2 tcp_sockets_allocated +EXPORT_SYMBOL vmlinux 0x167ccc4e page_pool_put_page +EXPORT_SYMBOL vmlinux 0x167de5c1 should_remove_suid +EXPORT_SYMBOL vmlinux 0x16843bcd kthread_associate_blkcg +EXPORT_SYMBOL vmlinux 0x169f57a9 uv_info +EXPORT_SYMBOL vmlinux 0x16b048a9 scsi_remove_host +EXPORT_SYMBOL vmlinux 0x16c5465c scsi_rescan_device +EXPORT_SYMBOL vmlinux 0x16e297c3 bit_wait +EXPORT_SYMBOL vmlinux 0x16f75b90 alloc_fcdev +EXPORT_SYMBOL vmlinux 0x16fe733e mark_page_accessed +EXPORT_SYMBOL vmlinux 0x16ff56fc jbd2_journal_clear_features +EXPORT_SYMBOL vmlinux 0x17262ac3 dquot_quota_off +EXPORT_SYMBOL vmlinux 0x172647e1 security_inode_listsecurity +EXPORT_SYMBOL vmlinux 0x1736305d posix_acl_from_xattr +EXPORT_SYMBOL vmlinux 0x173cd0da tcp_ld_RTO_revert +EXPORT_SYMBOL vmlinux 0x1758d356 kmem_cache_alloc_node +EXPORT_SYMBOL vmlinux 0x176e4603 vfs_llseek +EXPORT_SYMBOL vmlinux 0x177d69b5 ipv6_chk_custom_prefix +EXPORT_SYMBOL vmlinux 0x179029e1 flow_block_cb_incref +EXPORT_SYMBOL vmlinux 0x1792472b gnet_stats_copy_rate_est +EXPORT_SYMBOL vmlinux 0x179ed368 netdev_info +EXPORT_SYMBOL vmlinux 0x17a50d50 xfrm6_protocol_register +EXPORT_SYMBOL vmlinux 0x17b6009a __mark_inode_dirty +EXPORT_SYMBOL vmlinux 0x17bf680c _dev_info +EXPORT_SYMBOL vmlinux 0x17c4cb08 unlock_new_inode +EXPORT_SYMBOL vmlinux 0x1801ad21 simple_release_fs +EXPORT_SYMBOL vmlinux 0x182112bc skb_copy_and_hash_datagram_iter +EXPORT_SYMBOL vmlinux 0x18345b8e __bitmap_replace +EXPORT_SYMBOL vmlinux 0x185d3b1e skb_copy_and_csum_bits +EXPORT_SYMBOL vmlinux 0x186ad371 done_path_create +EXPORT_SYMBOL vmlinux 0x18772fab blk_queue_split +EXPORT_SYMBOL vmlinux 0x188ea314 jiffies_to_timespec64 +EXPORT_SYMBOL vmlinux 0x1897e8be mempool_create +EXPORT_SYMBOL vmlinux 0x189b6bac memory_read_from_buffer +EXPORT_SYMBOL vmlinux 0x18ab465e dquot_get_dqblk +EXPORT_SYMBOL vmlinux 0x18b87cca sclp_deactivate +EXPORT_SYMBOL vmlinux 0x18c742fb dma_resv_copy_fences +EXPORT_SYMBOL vmlinux 0x18cf555f ap_driver_register +EXPORT_SYMBOL vmlinux 0x18cf9e95 iov_iter_init +EXPORT_SYMBOL vmlinux 0x18e60984 __do_once_start +EXPORT_SYMBOL vmlinux 0x190ad815 __tracepoint_s390_cio_stsch +EXPORT_SYMBOL vmlinux 0x192b283f path_has_submounts +EXPORT_SYMBOL vmlinux 0x1933818f sock_gettstamp +EXPORT_SYMBOL vmlinux 0x19604115 inet_csk_reqsk_queue_drop_and_put +EXPORT_SYMBOL vmlinux 0x196176a0 flow_rule_match_tcp +EXPORT_SYMBOL vmlinux 0x1976906c tcf_action_set_ctrlact +EXPORT_SYMBOL vmlinux 0x19775476 inet_frag_find +EXPORT_SYMBOL vmlinux 0x197c3287 pin_user_pages +EXPORT_SYMBOL vmlinux 0x197c5495 __sock_cmsg_send +EXPORT_SYMBOL vmlinux 0x19836085 ethtool_virtdev_set_link_ksettings +EXPORT_SYMBOL vmlinux 0x1984d421 out_of_line_wait_on_bit +EXPORT_SYMBOL vmlinux 0x198620d7 security_add_mnt_opt +EXPORT_SYMBOL vmlinux 0x198e2f7b freezing_slow_path +EXPORT_SYMBOL vmlinux 0x199ed0cd net_disable_timestamp +EXPORT_SYMBOL vmlinux 0x19bd383b security_secmark_refcount_dec +EXPORT_SYMBOL vmlinux 0x19cdb852 bd_finish_claiming +EXPORT_SYMBOL vmlinux 0x19d31484 disk_start_io_acct +EXPORT_SYMBOL vmlinux 0x19dd3a89 skb_headers_offset_update +EXPORT_SYMBOL vmlinux 0x19e324fc generic_file_read_iter +EXPORT_SYMBOL vmlinux 0x19ee5b30 ccw_device_start_key +EXPORT_SYMBOL vmlinux 0x19f50efa unlock_buffer +EXPORT_SYMBOL vmlinux 0x1a0207c8 devm_gen_pool_create +EXPORT_SYMBOL vmlinux 0x1a14dcaf elv_rb_find +EXPORT_SYMBOL vmlinux 0x1a28add2 radix_tree_iter_delete +EXPORT_SYMBOL vmlinux 0x1a5009e3 inet_csk_init_xmit_timers +EXPORT_SYMBOL vmlinux 0x1a58576e fb_firmware_edid +EXPORT_SYMBOL vmlinux 0x1a63ab0b tcp_check_req +EXPORT_SYMBOL vmlinux 0x1a6df959 may_umount_tree +EXPORT_SYMBOL vmlinux 0x1a92d133 dma_resv_fini +EXPORT_SYMBOL vmlinux 0x1a9a433c prandom_u32_state +EXPORT_SYMBOL vmlinux 0x1a9baa0a proc_create_mount_point +EXPORT_SYMBOL vmlinux 0x1acc22ca scm_fp_dup +EXPORT_SYMBOL vmlinux 0x1accfc57 kern_path_create +EXPORT_SYMBOL vmlinux 0x1ad9e976 dump_page +EXPORT_SYMBOL vmlinux 0x1ae478db tcp_select_initial_window +EXPORT_SYMBOL vmlinux 0x1b015d25 bitmap_parselist +EXPORT_SYMBOL vmlinux 0x1b0e6e83 ip_generic_getfrag +EXPORT_SYMBOL vmlinux 0x1b1f04b7 neigh_proc_dointvec_jiffies +EXPORT_SYMBOL vmlinux 0x1b6314fd in_aton +EXPORT_SYMBOL vmlinux 0x1b63e3a0 dma_set_coherent_mask +EXPORT_SYMBOL vmlinux 0x1b777357 rdmacg_unregister_device +EXPORT_SYMBOL vmlinux 0x1ba04458 sg_pcopy_to_buffer +EXPORT_SYMBOL vmlinux 0x1bb51249 tcp_have_smc +EXPORT_SYMBOL vmlinux 0x1bca589f tty_insert_flip_string_fixed_flag +EXPORT_SYMBOL vmlinux 0x1be92083 tty_port_init +EXPORT_SYMBOL vmlinux 0x1bf301c3 __wake_up +EXPORT_SYMBOL vmlinux 0x1c288077 xsk_clear_tx_need_wakeup +EXPORT_SYMBOL vmlinux 0x1c2be433 nf_log_packet +EXPORT_SYMBOL vmlinux 0x1c32054a get_tree_nodev +EXPORT_SYMBOL vmlinux 0x1c338147 vm_numa_stat +EXPORT_SYMBOL vmlinux 0x1c47aaf5 ndo_dflt_fdb_dump +EXPORT_SYMBOL vmlinux 0x1c49f426 jbd2__journal_start +EXPORT_SYMBOL vmlinux 0x1c62a1f1 md_bitmap_close_sync +EXPORT_SYMBOL vmlinux 0x1c6f2b3b dquot_resume +EXPORT_SYMBOL vmlinux 0x1c769998 inet_protos +EXPORT_SYMBOL vmlinux 0x1c80de9c ip_send_check +EXPORT_SYMBOL vmlinux 0x1c82d6b2 security_path_mkdir +EXPORT_SYMBOL vmlinux 0x1c8baa0a input_mt_init_slots +EXPORT_SYMBOL vmlinux 0x1c8f6c94 inode_newsize_ok +EXPORT_SYMBOL vmlinux 0x1ca078b5 vfs_get_tree +EXPORT_SYMBOL vmlinux 0x1cb2c6d8 kvasprintf +EXPORT_SYMBOL vmlinux 0x1cea7c32 pci_request_regions_exclusive +EXPORT_SYMBOL vmlinux 0x1cf059e3 compat_sock_common_setsockopt +EXPORT_SYMBOL vmlinux 0x1d0d7ab9 zerocopy_sg_from_iter +EXPORT_SYMBOL vmlinux 0x1d2d6d15 wait_iff_congested +EXPORT_SYMBOL vmlinux 0x1d349bed sock_release +EXPORT_SYMBOL vmlinux 0x1d3e2765 iucv_path_quiesce +EXPORT_SYMBOL vmlinux 0x1d43739b dcache_dir_close +EXPORT_SYMBOL vmlinux 0x1d449b90 dfltcc_can_deflate +EXPORT_SYMBOL vmlinux 0x1d664520 dst_destroy +EXPORT_SYMBOL vmlinux 0x1d7c2cbb neigh_sysctl_unregister +EXPORT_SYMBOL vmlinux 0x1d7e8fa6 bdev_dax_pgoff +EXPORT_SYMBOL vmlinux 0x1dadd920 __kmalloc +EXPORT_SYMBOL vmlinux 0x1dbf260c mr_dump +EXPORT_SYMBOL vmlinux 0x1dc6c93b lookup_user_key +EXPORT_SYMBOL vmlinux 0x1dcad06d d_rehash +EXPORT_SYMBOL vmlinux 0x1dd571e6 fb_copy_cmap +EXPORT_SYMBOL vmlinux 0x1dd6cee9 inet_sendmsg +EXPORT_SYMBOL vmlinux 0x1ddd643c flow_hash_from_keys +EXPORT_SYMBOL vmlinux 0x1de21a35 pci_prepare_to_sleep +EXPORT_SYMBOL vmlinux 0x1de49bda qdisc_tree_reduce_backlog +EXPORT_SYMBOL vmlinux 0x1de4ccb2 get_sg_io_hdr +EXPORT_SYMBOL vmlinux 0x1df58ca0 blkdev_get_by_dev +EXPORT_SYMBOL vmlinux 0x1df9a8c8 param_set_ushort +EXPORT_SYMBOL vmlinux 0x1dfea8f2 page_get_link +EXPORT_SYMBOL vmlinux 0x1e02ce48 fc_mount +EXPORT_SYMBOL vmlinux 0x1e0a0c24 mod_timer_pending +EXPORT_SYMBOL vmlinux 0x1e19a7a3 pci_bus_read_config_word +EXPORT_SYMBOL vmlinux 0x1e1e140e ns_to_timespec64 +EXPORT_SYMBOL vmlinux 0x1e247581 vlan_uses_dev +EXPORT_SYMBOL vmlinux 0x1e4374b3 ccw_device_set_options +EXPORT_SYMBOL vmlinux 0x1e5272b5 generic_file_mmap +EXPORT_SYMBOL vmlinux 0x1e5494ce lru_cache_add +EXPORT_SYMBOL vmlinux 0x1e5e31d1 pci_release_regions +EXPORT_SYMBOL vmlinux 0x1e6d26a8 strstr +EXPORT_SYMBOL vmlinux 0x1e705e20 downgrade_write +EXPORT_SYMBOL vmlinux 0x1e811ae0 bdevname +EXPORT_SYMBOL vmlinux 0x1e8a161a crc_t10dif_generic +EXPORT_SYMBOL vmlinux 0x1e9edfb7 seq_hlist_start_head_rcu +EXPORT_SYMBOL vmlinux 0x1eb30b94 elv_rb_del +EXPORT_SYMBOL vmlinux 0x1eb3cd3f netdev_next_lower_dev_rcu +EXPORT_SYMBOL vmlinux 0x1ebffb80 netlink_broadcast_filtered +EXPORT_SYMBOL vmlinux 0x1ecb7ae6 __free_pages +EXPORT_SYMBOL vmlinux 0x1edb69d6 ktime_get_raw_ts64 +EXPORT_SYMBOL vmlinux 0x1ede54f2 proc_do_large_bitmap +EXPORT_SYMBOL vmlinux 0x1ee2c6ad pci_bus_set_ops +EXPORT_SYMBOL vmlinux 0x1ef3d88d blk_integrity_unregister +EXPORT_SYMBOL vmlinux 0x1ef5277b fs_context_for_mount +EXPORT_SYMBOL vmlinux 0x1ef90789 netpoll_poll_dev +EXPORT_SYMBOL vmlinux 0x1f302990 pcim_iomap_regions +EXPORT_SYMBOL vmlinux 0x1f560f67 percpu_counter_set +EXPORT_SYMBOL vmlinux 0x1f57822e krealloc +EXPORT_SYMBOL vmlinux 0x1f72f161 page_symlink +EXPORT_SYMBOL vmlinux 0x1f8a1a32 lockref_put_return +EXPORT_SYMBOL vmlinux 0x1fb27078 tcw_get_tccb +EXPORT_SYMBOL vmlinux 0x1fb868d9 dquot_commit_info +EXPORT_SYMBOL vmlinux 0x1fbd16da ip_tos2prio +EXPORT_SYMBOL vmlinux 0x1fc4b84c remap_vmalloc_range +EXPORT_SYMBOL vmlinux 0x1fc95c6a fb_find_mode +EXPORT_SYMBOL vmlinux 0x1fda8755 __memset32 +EXPORT_SYMBOL vmlinux 0x1fdecca9 sock_set_reuseaddr +EXPORT_SYMBOL vmlinux 0x1fe36395 lock_sock_fast +EXPORT_SYMBOL vmlinux 0x1fe37181 dquot_get_next_dqblk +EXPORT_SYMBOL vmlinux 0x1fe912f1 netdev_alloc_frag +EXPORT_SYMBOL vmlinux 0x20000329 simple_strtoul +EXPORT_SYMBOL vmlinux 0x20006fcc pci_release_region +EXPORT_SYMBOL vmlinux 0x200b2041 in6addr_any +EXPORT_SYMBOL vmlinux 0x2011ba5e dquot_quota_on_mount +EXPORT_SYMBOL vmlinux 0x204af5b5 netlbl_audit_start +EXPORT_SYMBOL vmlinux 0x204c19f5 tcp_alloc_md5sig_pool +EXPORT_SYMBOL vmlinux 0x204c5067 scsi_dev_info_add_list +EXPORT_SYMBOL vmlinux 0x20687cd7 dma_fence_signal +EXPORT_SYMBOL vmlinux 0x2072ee9b request_threaded_irq +EXPORT_SYMBOL vmlinux 0x2075a2f9 pcibios_resource_to_bus +EXPORT_SYMBOL vmlinux 0x207a02e2 pfifo_fast_ops +EXPORT_SYMBOL vmlinux 0x20802bce iget_locked +EXPORT_SYMBOL vmlinux 0x20973b94 segment_unload +EXPORT_SYMBOL vmlinux 0x2097affd generic_permission +EXPORT_SYMBOL vmlinux 0x20a789ac irq_set_chip_data +EXPORT_SYMBOL vmlinux 0x20b00efc from_kuid_munged +EXPORT_SYMBOL vmlinux 0x20c587cc utf8nagemin +EXPORT_SYMBOL vmlinux 0x20cc4fd8 ccw_device_get_mdc +EXPORT_SYMBOL vmlinux 0x20d65e40 fb_find_nearest_mode +EXPORT_SYMBOL vmlinux 0x20ee076e itcw_add_tidaw +EXPORT_SYMBOL vmlinux 0x21059cd7 audit_log_task_context +EXPORT_SYMBOL vmlinux 0x21184749 blk_rq_map_integrity_sg +EXPORT_SYMBOL vmlinux 0x214c0fa3 vlan_vid_add +EXPORT_SYMBOL vmlinux 0x215d5234 tty_port_destroy +EXPORT_SYMBOL vmlinux 0x21698354 qdisc_watchdog_init_clockid +EXPORT_SYMBOL vmlinux 0x21715937 noop_qdisc +EXPORT_SYMBOL vmlinux 0x2183b46c xfrm_policy_destroy +EXPORT_SYMBOL vmlinux 0x2186b69f nvm_end_io +EXPORT_SYMBOL vmlinux 0x218e600b pci_add_resource_offset +EXPORT_SYMBOL vmlinux 0x2199ee07 md_write_end +EXPORT_SYMBOL vmlinux 0x21a0559d netif_skb_features +EXPORT_SYMBOL vmlinux 0x21b91b99 follow_pfn +EXPORT_SYMBOL vmlinux 0x21bdb523 errseq_check_and_advance +EXPORT_SYMBOL vmlinux 0x21be37e1 hdmi_avi_infoframe_check +EXPORT_SYMBOL vmlinux 0x21c0ea51 kernel_recvmsg +EXPORT_SYMBOL vmlinux 0x21c85e35 pci_iomap +EXPORT_SYMBOL vmlinux 0x21cb4243 kmem_cache_shrink +EXPORT_SYMBOL vmlinux 0x21e13cb3 inet_peer_xrlim_allow +EXPORT_SYMBOL vmlinux 0x2215ac80 netlbl_calipso_ops_register +EXPORT_SYMBOL vmlinux 0x2220a119 d_mark_dontcache +EXPORT_SYMBOL vmlinux 0x2223eca7 reuseport_detach_sock +EXPORT_SYMBOL vmlinux 0x222e7ce2 sysfs_streq +EXPORT_SYMBOL vmlinux 0x225d78c0 __skb_checksum_complete_head +EXPORT_SYMBOL vmlinux 0x2276db98 kstrtoint +EXPORT_SYMBOL vmlinux 0x228f89ee send_sig +EXPORT_SYMBOL vmlinux 0x229f7a26 netdev_name_node_alt_destroy +EXPORT_SYMBOL vmlinux 0x22b325d5 kd_mksound +EXPORT_SYMBOL vmlinux 0x22d3dd01 unregister_shrinker +EXPORT_SYMBOL vmlinux 0x22dd6d51 tccb_init +EXPORT_SYMBOL vmlinux 0x22f983d4 pskb_trim_rcsum_slow +EXPORT_SYMBOL vmlinux 0x23051385 __skb_try_recv_datagram +EXPORT_SYMBOL vmlinux 0x2361405c ip4_datagram_connect +EXPORT_SYMBOL vmlinux 0x236487b6 sk_capable +EXPORT_SYMBOL vmlinux 0x236c8c64 memcpy +EXPORT_SYMBOL vmlinux 0x237a2f13 __cgroup_bpf_run_filter_sock_ops +EXPORT_SYMBOL vmlinux 0x237e81b6 ww_mutex_lock +EXPORT_SYMBOL vmlinux 0x237f573b param_get_ulong +EXPORT_SYMBOL vmlinux 0x238c920b __devm_release_region +EXPORT_SYMBOL vmlinux 0x23ad6a76 get_unmapped_area +EXPORT_SYMBOL vmlinux 0x23b9d6e2 mangle_path +EXPORT_SYMBOL vmlinux 0x23bcf1fd redraw_screen +EXPORT_SYMBOL vmlinux 0x23c11526 pin_user_pages_unlocked +EXPORT_SYMBOL vmlinux 0x23df2ccd tcf_em_tree_dump +EXPORT_SYMBOL vmlinux 0x23ee13fd mb_cache_entry_find_first +EXPORT_SYMBOL vmlinux 0x23fd3028 vmalloc_node +EXPORT_SYMBOL vmlinux 0x24212d86 __frontswap_invalidate_page +EXPORT_SYMBOL vmlinux 0x242ed760 page_cache_next_miss +EXPORT_SYMBOL vmlinux 0x242f3562 irq_subclass_register +EXPORT_SYMBOL vmlinux 0x24467f38 fs_context_for_reconfigure +EXPORT_SYMBOL vmlinux 0x24587924 iucv_root +EXPORT_SYMBOL vmlinux 0x2459bbcc console_set_on_cmdline +EXPORT_SYMBOL vmlinux 0x247246ba jbd2_journal_set_features +EXPORT_SYMBOL vmlinux 0x2473f47e dm_table_get_size +EXPORT_SYMBOL vmlinux 0x247a3fe4 LZ4_decompress_fast_continue +EXPORT_SYMBOL vmlinux 0x2480d0be raw3270_start_locked +EXPORT_SYMBOL vmlinux 0x248e45b2 blk_put_request +EXPORT_SYMBOL vmlinux 0x24a4db63 tcp_simple_retransmit +EXPORT_SYMBOL vmlinux 0x24b843f9 dev_set_group +EXPORT_SYMBOL vmlinux 0x24d273d1 add_timer +EXPORT_SYMBOL vmlinux 0x24ecf783 __xfrm_state_destroy +EXPORT_SYMBOL vmlinux 0x24fe115e crypto_sha256_update +EXPORT_SYMBOL vmlinux 0x2503de17 dev_uc_del +EXPORT_SYMBOL vmlinux 0x25045fcf tty_port_tty_get +EXPORT_SYMBOL vmlinux 0x25069369 md_check_no_bitmap +EXPORT_SYMBOL vmlinux 0x250e3a1b commit_creds +EXPORT_SYMBOL vmlinux 0x252cf375 scsi_kmap_atomic_sg +EXPORT_SYMBOL vmlinux 0x2548c032 __cpu_possible_mask +EXPORT_SYMBOL vmlinux 0x256712cd xfrm_init_state +EXPORT_SYMBOL vmlinux 0x256be799 pagecache_isize_extended +EXPORT_SYMBOL vmlinux 0x2570a138 reservation_seqcount_string +EXPORT_SYMBOL vmlinux 0x2572a8cd tty_name +EXPORT_SYMBOL vmlinux 0x257c908a raw3270_add_view +EXPORT_SYMBOL vmlinux 0x25820c64 fs_overflowuid +EXPORT_SYMBOL vmlinux 0x258a13ee seg6_hmac_net_init +EXPORT_SYMBOL vmlinux 0x258d2f76 net_dim_get_tx_moderation +EXPORT_SYMBOL vmlinux 0x25997d27 xfrm_policy_bysel_ctx +EXPORT_SYMBOL vmlinux 0x259988dc param_ops_long +EXPORT_SYMBOL vmlinux 0x25af3d9e cad_pid +EXPORT_SYMBOL vmlinux 0x25b9ac6e gro_find_receive_by_type +EXPORT_SYMBOL vmlinux 0x25c96f10 zero_fill_bio_iter +EXPORT_SYMBOL vmlinux 0x25e58a09 hdmi_avi_infoframe_init +EXPORT_SYMBOL vmlinux 0x25e9d4bd resource_list_free +EXPORT_SYMBOL vmlinux 0x25ec1b28 strlen +EXPORT_SYMBOL vmlinux 0x26018797 skb_tx_error +EXPORT_SYMBOL vmlinux 0x260a095a __sg_alloc_table +EXPORT_SYMBOL vmlinux 0x262be8f4 security_inode_setsecctx +EXPORT_SYMBOL vmlinux 0x2630669c gen_pool_free_owner +EXPORT_SYMBOL vmlinux 0x263beb75 ecryptfs_get_versions +EXPORT_SYMBOL vmlinux 0x2641a1c6 diag224 +EXPORT_SYMBOL vmlinux 0x267180c7 pci_bus_assign_resources +EXPORT_SYMBOL vmlinux 0x26744044 kill_block_super +EXPORT_SYMBOL vmlinux 0x2675a973 vif_device_init +EXPORT_SYMBOL vmlinux 0x2688ec10 bitmap_zalloc +EXPORT_SYMBOL vmlinux 0x26a5b938 sclp_pci_configure +EXPORT_SYMBOL vmlinux 0x26ac1a67 pci_enable_atomic_ops_to_root +EXPORT_SYMBOL vmlinux 0x26b82096 generic_file_llseek_size +EXPORT_SYMBOL vmlinux 0x26d5e2d9 dma_direct_sync_sg_for_cpu +EXPORT_SYMBOL vmlinux 0x26e298e0 unregister_memory_notifier +EXPORT_SYMBOL vmlinux 0x26e9ad3c kbd_ioctl +EXPORT_SYMBOL vmlinux 0x2707fbf9 tcp_initialize_rcv_mss +EXPORT_SYMBOL vmlinux 0x271218ad inet_rcv_saddr_equal +EXPORT_SYMBOL vmlinux 0x2716f76c remove_arg_zero +EXPORT_SYMBOL vmlinux 0x271ec0ea unpin_user_pages_dirty_lock +EXPORT_SYMBOL vmlinux 0x272a8933 udp_memory_allocated +EXPORT_SYMBOL vmlinux 0x2733eaf7 scsi_dev_info_list_add_keyed +EXPORT_SYMBOL vmlinux 0x27418353 kstrtos16_from_user +EXPORT_SYMBOL vmlinux 0x27479d14 param_free_charp +EXPORT_SYMBOL vmlinux 0x2759a7e0 pci_bus_find_capability +EXPORT_SYMBOL vmlinux 0x275ab47b eth_get_headlen +EXPORT_SYMBOL vmlinux 0x275c24a7 kvfree_sensitive +EXPORT_SYMBOL vmlinux 0x275f3d49 hdmi_vendor_infoframe_check +EXPORT_SYMBOL vmlinux 0x27639220 blk_verify_command +EXPORT_SYMBOL vmlinux 0x27756bc8 scsi_sanitize_inquiry_string +EXPORT_SYMBOL vmlinux 0x2782b393 xfrm_state_walk_init +EXPORT_SYMBOL vmlinux 0x2785c9de simple_rmdir +EXPORT_SYMBOL vmlinux 0x27864d57 memparse +EXPORT_SYMBOL vmlinux 0x27874d97 account_page_redirty +EXPORT_SYMBOL vmlinux 0x2790eb22 ihold +EXPORT_SYMBOL vmlinux 0x27bbf221 disable_irq_nosync +EXPORT_SYMBOL vmlinux 0x27c2600f blk_mq_start_request +EXPORT_SYMBOL vmlinux 0x27cdca93 pci_add_resource +EXPORT_SYMBOL vmlinux 0x27eb9cd1 tcw_set_intrg +EXPORT_SYMBOL vmlinux 0x27ff370f config_item_set_name +EXPORT_SYMBOL vmlinux 0x2809ac8a dquot_quota_on +EXPORT_SYMBOL vmlinux 0x2813f817 security_sb_clone_mnt_opts +EXPORT_SYMBOL vmlinux 0x281823c5 __kfifo_out_peek +EXPORT_SYMBOL vmlinux 0x281e1ffe generic_block_fiemap +EXPORT_SYMBOL vmlinux 0x283b3eb7 tcf_exts_terse_dump +EXPORT_SYMBOL vmlinux 0x28568bd1 pagevec_lookup_range +EXPORT_SYMBOL vmlinux 0x2866a9f8 scsi_track_queue_full +EXPORT_SYMBOL vmlinux 0x286e5b48 generic_cont_expand_simple +EXPORT_SYMBOL vmlinux 0x2875a315 utf32_to_utf8 +EXPORT_SYMBOL vmlinux 0x288382ef _atomic_dec_and_lock_irqsave +EXPORT_SYMBOL vmlinux 0x29074392 __cgroup_bpf_run_filter_skb +EXPORT_SYMBOL vmlinux 0x291e8b4d blk_queue_max_write_zeroes_sectors +EXPORT_SYMBOL vmlinux 0x29391e7d vm_munmap +EXPORT_SYMBOL vmlinux 0x293c40e0 pci_enable_device_mem +EXPORT_SYMBOL vmlinux 0x294b9ea1 on_each_cpu +EXPORT_SYMBOL vmlinux 0x294bf33c finish_swait +EXPORT_SYMBOL vmlinux 0x2956cf37 sclp_remove_processed +EXPORT_SYMBOL vmlinux 0x295e4a8d qdisc_watchdog_cancel +EXPORT_SYMBOL vmlinux 0x29789394 empty_zero_page +EXPORT_SYMBOL vmlinux 0x2981d709 devm_pci_alloc_host_bridge +EXPORT_SYMBOL vmlinux 0x29c9c398 sock_kmalloc +EXPORT_SYMBOL vmlinux 0x29cb1eb3 inet6_bind +EXPORT_SYMBOL vmlinux 0x29d6f8f4 __inc_zone_page_state +EXPORT_SYMBOL vmlinux 0x29dfae33 nf_ct_get_tuple_skb +EXPORT_SYMBOL vmlinux 0x29ed791a gnet_stats_start_copy +EXPORT_SYMBOL vmlinux 0x2a1725eb flow_indr_dev_setup_offload +EXPORT_SYMBOL vmlinux 0x2a224da7 del_gendisk +EXPORT_SYMBOL vmlinux 0x2a41d203 dql_init +EXPORT_SYMBOL vmlinux 0x2a5c1dab blk_mq_kick_requeue_list +EXPORT_SYMBOL vmlinux 0x2a75281a netdev_emerg +EXPORT_SYMBOL vmlinux 0x2a805563 __kernel_cpumcf_end +EXPORT_SYMBOL vmlinux 0x2a834ab4 mroute6_is_socket +EXPORT_SYMBOL vmlinux 0x2a8634ba xfrm_policy_flush +EXPORT_SYMBOL vmlinux 0x2a881b2f config_group_init +EXPORT_SYMBOL vmlinux 0x2a942cdc keyring_clear +EXPORT_SYMBOL vmlinux 0x2aa429d7 neigh_sysctl_register +EXPORT_SYMBOL vmlinux 0x2ac845f6 netif_set_real_num_rx_queues +EXPORT_SYMBOL vmlinux 0x2ae726a6 sock_no_shutdown +EXPORT_SYMBOL vmlinux 0x2af3f454 ssch +EXPORT_SYMBOL vmlinux 0x2b13c1db __xa_cmpxchg +EXPORT_SYMBOL vmlinux 0x2b2a54e2 tcp_time_wait +EXPORT_SYMBOL vmlinux 0x2b457d09 kern_unmount_array +EXPORT_SYMBOL vmlinux 0x2b47a79d sock_no_sendpage_locked +EXPORT_SYMBOL vmlinux 0x2b68bd2f del_timer +EXPORT_SYMBOL vmlinux 0x2b746361 splice_direct_to_actor +EXPORT_SYMBOL vmlinux 0x2b9da7a4 genl_lock +EXPORT_SYMBOL vmlinux 0x2bb72776 security_socket_getpeersec_dgram +EXPORT_SYMBOL vmlinux 0x2bbe76f4 rps_sock_flow_table +EXPORT_SYMBOL vmlinux 0x2bd26a50 padata_do_serial +EXPORT_SYMBOL vmlinux 0x2bfa454f register_netdev +EXPORT_SYMBOL vmlinux 0x2c0cfc92 kernel_sendmsg_locked +EXPORT_SYMBOL vmlinux 0x2c0f1582 lockref_get +EXPORT_SYMBOL vmlinux 0x2c0f2fb3 mempool_alloc +EXPORT_SYMBOL vmlinux 0x2c1315e8 udplite_prot +EXPORT_SYMBOL vmlinux 0x2c1be3dd pci_save_state +EXPORT_SYMBOL vmlinux 0x2c1cf773 __init_rwsem +EXPORT_SYMBOL vmlinux 0x2c252b48 ZSTD_insertBlock +EXPORT_SYMBOL vmlinux 0x2c256e1f input_scancode_to_scalar +EXPORT_SYMBOL vmlinux 0x2c29a995 __strnlen_user +EXPORT_SYMBOL vmlinux 0x2c3d2bff skb_orphan_partial +EXPORT_SYMBOL vmlinux 0x2c596168 open_exec +EXPORT_SYMBOL vmlinux 0x2c5f555c tso_build_data +EXPORT_SYMBOL vmlinux 0x2c71aac7 nosteal_pipe_buf_ops +EXPORT_SYMBOL vmlinux 0x2c84af62 __scm_send +EXPORT_SYMBOL vmlinux 0x2c9b1dfc __xfrm_policy_check +EXPORT_SYMBOL vmlinux 0x2cb1cab2 __vfs_getxattr +EXPORT_SYMBOL vmlinux 0x2cbd23af trace_print_hex_dump_seq +EXPORT_SYMBOL vmlinux 0x2cbdef7d radix_tree_lookup +EXPORT_SYMBOL vmlinux 0x2cc1f8c7 filemap_range_has_page +EXPORT_SYMBOL vmlinux 0x2cc358fb tcp_sendmsg +EXPORT_SYMBOL vmlinux 0x2ccd059a dim_on_top +EXPORT_SYMBOL vmlinux 0x2cd63687 skb_set_owner_w +EXPORT_SYMBOL vmlinux 0x2cec656d blk_queue_io_opt +EXPORT_SYMBOL vmlinux 0x2d00da51 scsi_device_resume +EXPORT_SYMBOL vmlinux 0x2d038358 component_match_add_typed +EXPORT_SYMBOL vmlinux 0x2d0d4cc4 d_instantiate_anon +EXPORT_SYMBOL vmlinux 0x2d140a58 genl_unlock +EXPORT_SYMBOL vmlinux 0x2d30596c from_kqid_munged +EXPORT_SYMBOL vmlinux 0x2d3195e4 pci_scan_slot +EXPORT_SYMBOL vmlinux 0x2d3385d3 system_wq +EXPORT_SYMBOL vmlinux 0x2d39b0a7 kstrdup +EXPORT_SYMBOL vmlinux 0x2d3d7311 inode_init_always +EXPORT_SYMBOL vmlinux 0x2d4c773a hdmi_spd_infoframe_init +EXPORT_SYMBOL vmlinux 0x2d78f97f blk_queue_alignment_offset +EXPORT_SYMBOL vmlinux 0x2d813d95 scsi_device_lookup_by_target +EXPORT_SYMBOL vmlinux 0x2d84d54d __remove_inode_hash +EXPORT_SYMBOL vmlinux 0x2d994605 security_inode_copy_up_xattr +EXPORT_SYMBOL vmlinux 0x2d9aa7ad jbd2_journal_load +EXPORT_SYMBOL vmlinux 0x2dc35a61 __register_chrdev +EXPORT_SYMBOL vmlinux 0x2dcf57a4 rawv6_mh_filter_unregister +EXPORT_SYMBOL vmlinux 0x2e29ad73 __block_write_full_page +EXPORT_SYMBOL vmlinux 0x2e41cf9a raw_copy_in_user +EXPORT_SYMBOL vmlinux 0x2e43356b config_item_get_unless_zero +EXPORT_SYMBOL vmlinux 0x2e5aa840 jbd2_journal_get_write_access +EXPORT_SYMBOL vmlinux 0x2e5fe036 __skb_ext_put +EXPORT_SYMBOL vmlinux 0x2e75821f dquot_scan_active +EXPORT_SYMBOL vmlinux 0x2ea1ce92 filemap_fdatawait_keep_errors +EXPORT_SYMBOL vmlinux 0x2eb764db wake_up_process +EXPORT_SYMBOL vmlinux 0x2ec6bba0 errseq_set +EXPORT_SYMBOL vmlinux 0x2edcab17 ZSTD_initDStream_usingDDict +EXPORT_SYMBOL vmlinux 0x2eee7c5e eth_type_trans +EXPORT_SYMBOL vmlinux 0x2ef2baf3 netif_receive_skb +EXPORT_SYMBOL vmlinux 0x2ef5661d segment_modify_shared +EXPORT_SYMBOL vmlinux 0x2eff24e7 __pskb_pull_tail +EXPORT_SYMBOL vmlinux 0x2f03fc4b security_secmark_refcount_inc +EXPORT_SYMBOL vmlinux 0x2f2e91b2 security_ib_alloc_security +EXPORT_SYMBOL vmlinux 0x2f471b39 param_ops_ullong +EXPORT_SYMBOL vmlinux 0x2f5d1ac7 fasync_helper +EXPORT_SYMBOL vmlinux 0x2f5f715b sk_stream_wait_close +EXPORT_SYMBOL vmlinux 0x2f60d33a eth_prepare_mac_addr_change +EXPORT_SYMBOL vmlinux 0x2f7754a8 dma_pool_free +EXPORT_SYMBOL vmlinux 0x2f7a504c __fib6_flush_trees +EXPORT_SYMBOL vmlinux 0x2f7d1fdd jbd2_journal_errno +EXPORT_SYMBOL vmlinux 0x2f866c2d __generic_file_write_iter +EXPORT_SYMBOL vmlinux 0x2fa5a500 memcmp +EXPORT_SYMBOL vmlinux 0x2fb6de5d add_device_randomness +EXPORT_SYMBOL vmlinux 0x2fd716e8 security_dentry_create_files_as +EXPORT_SYMBOL vmlinux 0x2fddc106 skb_udp_tunnel_segment +EXPORT_SYMBOL vmlinux 0x2fe00e61 __getblk_gfp +EXPORT_SYMBOL vmlinux 0x2fe252cc unregister_inet6addr_notifier +EXPORT_SYMBOL vmlinux 0x2fe8f688 crypto_sha256_finup +EXPORT_SYMBOL vmlinux 0x2fedf9c5 tcp_setsockopt +EXPORT_SYMBOL vmlinux 0x2ff36ca5 sock_set_sndtimeo +EXPORT_SYMBOL vmlinux 0x2ffffb6f _ebc_tolower +EXPORT_SYMBOL vmlinux 0x30241921 tcp_sock_set_syncnt +EXPORT_SYMBOL vmlinux 0x3041d196 load_nls +EXPORT_SYMBOL vmlinux 0x30425189 __skb_warn_lro_forwarding +EXPORT_SYMBOL vmlinux 0x304a4b19 simple_empty +EXPORT_SYMBOL vmlinux 0x305dd240 tty_port_free_xmit_buf +EXPORT_SYMBOL vmlinux 0x306494b9 jbd2_journal_wipe +EXPORT_SYMBOL vmlinux 0x306828dc iov_iter_single_seg_count +EXPORT_SYMBOL vmlinux 0x306ed143 mark_buffer_dirty_inode +EXPORT_SYMBOL vmlinux 0x308683e4 pmdp_xchg_direct +EXPORT_SYMBOL vmlinux 0x3090d3f2 rtnl_set_sk_err +EXPORT_SYMBOL vmlinux 0x3096be16 names_cachep +EXPORT_SYMBOL vmlinux 0x30a18fdc in6_dev_finish_destroy +EXPORT_SYMBOL vmlinux 0x30a80826 __kfifo_from_user +EXPORT_SYMBOL vmlinux 0x30acfde9 hsiphash_2u32 +EXPORT_SYMBOL vmlinux 0x30b2b259 skb_copy_expand +EXPORT_SYMBOL vmlinux 0x30c7a2fe _copy_from_iter_full_nocache +EXPORT_SYMBOL vmlinux 0x30e1d113 scsi_test_unit_ready +EXPORT_SYMBOL vmlinux 0x30e25561 dev_mc_sync +EXPORT_SYMBOL vmlinux 0x30e74134 tty_termios_copy_hw +EXPORT_SYMBOL vmlinux 0x30e9f952 pci_clear_mwi +EXPORT_SYMBOL vmlinux 0x30ec5e50 __inc_node_page_state +EXPORT_SYMBOL vmlinux 0x3102d70b frontswap_curr_pages +EXPORT_SYMBOL vmlinux 0x3126a9e8 siphash_1u64 +EXPORT_SYMBOL vmlinux 0x31376318 ccw_device_resume +EXPORT_SYMBOL vmlinux 0x3145216f pci_dev_present +EXPORT_SYMBOL vmlinux 0x317fe148 tcf_block_get_ext +EXPORT_SYMBOL vmlinux 0x318cab6d ip_mc_join_group +EXPORT_SYMBOL vmlinux 0x31912777 netdev_notice +EXPORT_SYMBOL vmlinux 0x319243c8 ip_route_me_harder +EXPORT_SYMBOL vmlinux 0x31b6c9e8 param_set_invbool +EXPORT_SYMBOL vmlinux 0x31c53a58 pcie_port_service_unregister +EXPORT_SYMBOL vmlinux 0x31d3deb6 noop_fsync +EXPORT_SYMBOL vmlinux 0x31e7b349 key_create_or_update +EXPORT_SYMBOL vmlinux 0x31ea2f3b elevator_alloc +EXPORT_SYMBOL vmlinux 0x31eb2c96 lockref_put_not_zero +EXPORT_SYMBOL vmlinux 0x31edf249 find_inode_rcu +EXPORT_SYMBOL vmlinux 0x32074a47 input_match_device_id +EXPORT_SYMBOL vmlinux 0x3250a1bc inet_frag_queue_insert +EXPORT_SYMBOL vmlinux 0x32596f56 call_netdevice_notifiers +EXPORT_SYMBOL vmlinux 0x3275689f smp_ctl_set_bit +EXPORT_SYMBOL vmlinux 0x32816d91 register_cdrom +EXPORT_SYMBOL vmlinux 0x3283e6b0 prandom_seed_full_state +EXPORT_SYMBOL vmlinux 0x32a73ccb bpf_prog_get_type_path +EXPORT_SYMBOL vmlinux 0x32ae0796 do_wait_intr +EXPORT_SYMBOL vmlinux 0x32b359d9 tcp_release_cb +EXPORT_SYMBOL vmlinux 0x32beadcf inode_get_bytes +EXPORT_SYMBOL vmlinux 0x32c6a2d8 _ebcasc_500 +EXPORT_SYMBOL vmlinux 0x32cbe119 iptun_encaps +EXPORT_SYMBOL vmlinux 0x32ce3777 radix_tree_preload +EXPORT_SYMBOL vmlinux 0x32e060b1 blk_queue_max_write_same_sectors +EXPORT_SYMBOL vmlinux 0x32e1d60d seg6_hmac_info_del +EXPORT_SYMBOL vmlinux 0x32ee9efb netif_device_attach +EXPORT_SYMBOL vmlinux 0x33069220 __sk_mem_reclaim +EXPORT_SYMBOL vmlinux 0x33178d79 __skb_gso_segment +EXPORT_SYMBOL vmlinux 0x3319aeab pci_dev_get +EXPORT_SYMBOL vmlinux 0x331af39f register_nexthop_notifier +EXPORT_SYMBOL vmlinux 0x332c063a jbd2_journal_release_jbd_inode +EXPORT_SYMBOL vmlinux 0x33498c71 bio_add_pc_page +EXPORT_SYMBOL vmlinux 0x335d469b proc_remove +EXPORT_SYMBOL vmlinux 0x335e6c51 con_copy_unimap +EXPORT_SYMBOL vmlinux 0x33723661 rtnl_notify +EXPORT_SYMBOL vmlinux 0x33762c88 sock_rfree +EXPORT_SYMBOL vmlinux 0x338bbef8 __ndelay +EXPORT_SYMBOL vmlinux 0x338d8c8d configfs_depend_item_unlocked +EXPORT_SYMBOL vmlinux 0x339da224 inet_recvmsg +EXPORT_SYMBOL vmlinux 0x339ed741 dma_resv_add_excl_fence +EXPORT_SYMBOL vmlinux 0x33a11450 dma_fence_get_stub +EXPORT_SYMBOL vmlinux 0x33bbb126 vmemmap +EXPORT_SYMBOL vmlinux 0x33c82ff1 ipv6_chk_addr_and_flags +EXPORT_SYMBOL vmlinux 0x33cc1d38 __xfrm_route_forward +EXPORT_SYMBOL vmlinux 0x33d5306d scsi_mode_sense +EXPORT_SYMBOL vmlinux 0x33d9a01c blkdev_issue_discard +EXPORT_SYMBOL vmlinux 0x33e639ce idr_for_each +EXPORT_SYMBOL vmlinux 0x33ea3464 inet6_register_icmp_sender +EXPORT_SYMBOL vmlinux 0x33f74de3 _ascebc_500 +EXPORT_SYMBOL vmlinux 0x340ad0bc unregister_qdisc +EXPORT_SYMBOL vmlinux 0x3436c6e3 netdev_adjacent_change_commit +EXPORT_SYMBOL vmlinux 0x3439009a ccw_device_clear +EXPORT_SYMBOL vmlinux 0x3447d421 blk_get_request +EXPORT_SYMBOL vmlinux 0x34500c66 pci_try_set_mwi +EXPORT_SYMBOL vmlinux 0x3450a29f shrink_dcache_parent +EXPORT_SYMBOL vmlinux 0x3462a49f path_is_under +EXPORT_SYMBOL vmlinux 0x346d6622 blk_mq_queue_stopped +EXPORT_SYMBOL vmlinux 0x347682a4 ipv6_mc_check_mld +EXPORT_SYMBOL vmlinux 0x349071a0 do_splice_direct +EXPORT_SYMBOL vmlinux 0x3490a3cf scsi_scan_host +EXPORT_SYMBOL vmlinux 0x349ac524 __tracepoint_dma_fence_emit +EXPORT_SYMBOL vmlinux 0x349cba85 strchr +EXPORT_SYMBOL vmlinux 0x34b41f27 sock_set_keepalive +EXPORT_SYMBOL vmlinux 0x34da13ca nonseekable_open +EXPORT_SYMBOL vmlinux 0x34e2fc19 netif_schedule_queue +EXPORT_SYMBOL vmlinux 0x34f3484e security_tun_dev_attach_queue +EXPORT_SYMBOL vmlinux 0x34f497a7 ida_free +EXPORT_SYMBOL vmlinux 0x3505e3ee get_ccwdev_by_busid +EXPORT_SYMBOL vmlinux 0x350942ed fb_set_var +EXPORT_SYMBOL vmlinux 0x351101da flow_rule_match_vlan +EXPORT_SYMBOL vmlinux 0x3517383e register_reboot_notifier +EXPORT_SYMBOL vmlinux 0x351e2c4d con_is_visible +EXPORT_SYMBOL vmlinux 0x35203512 write_dirty_buffer +EXPORT_SYMBOL vmlinux 0x35249dc4 dev_err_hash +EXPORT_SYMBOL vmlinux 0x353b3369 seq_release_private +EXPORT_SYMBOL vmlinux 0x353c02e9 devm_kvasprintf +EXPORT_SYMBOL vmlinux 0x358416e6 netdev_err +EXPORT_SYMBOL vmlinux 0x3596ea06 generic_delete_inode +EXPORT_SYMBOL vmlinux 0x35977455 inet_stream_connect +EXPORT_SYMBOL vmlinux 0x359d45cf jbd2_journal_flush +EXPORT_SYMBOL vmlinux 0x35a88f28 zlib_inflateInit2 +EXPORT_SYMBOL vmlinux 0x35ae5e21 generic_file_direct_write +EXPORT_SYMBOL vmlinux 0x35d96476 simple_get_link +EXPORT_SYMBOL vmlinux 0x35ee9778 km_state_notify +EXPORT_SYMBOL vmlinux 0x3602aba9 raw3270_register_notifier +EXPORT_SYMBOL vmlinux 0x36364a58 __dev_get_by_flags +EXPORT_SYMBOL vmlinux 0x364cd5c2 security_sb_set_mnt_opts +EXPORT_SYMBOL vmlinux 0x36500338 hdmi_infoframe_log +EXPORT_SYMBOL vmlinux 0x365acda7 set_normalized_timespec64 +EXPORT_SYMBOL vmlinux 0x365e7911 kstrdup_const +EXPORT_SYMBOL vmlinux 0x3665825d blk_mq_init_queue +EXPORT_SYMBOL vmlinux 0x3666c34b sock_dequeue_err_skb +EXPORT_SYMBOL vmlinux 0x3670aa12 tty_port_open +EXPORT_SYMBOL vmlinux 0x36906159 udp_skb_destructor +EXPORT_SYMBOL vmlinux 0x3697ba64 dev_graft_qdisc +EXPORT_SYMBOL vmlinux 0x36a2f804 tcf_get_next_chain +EXPORT_SYMBOL vmlinux 0x36af802d inet_csk_complete_hashdance +EXPORT_SYMBOL vmlinux 0x36c04e67 pagevec_lookup_range_nr_tag +EXPORT_SYMBOL vmlinux 0x36d45576 pci_pme_capable +EXPORT_SYMBOL vmlinux 0x36db8edf scsi_print_command +EXPORT_SYMBOL vmlinux 0x36db9710 dma_fence_array_ops +EXPORT_SYMBOL vmlinux 0x36e74c04 devm_pci_remap_cfg_resource +EXPORT_SYMBOL vmlinux 0x370e1a76 seg6_hmac_info_lookup +EXPORT_SYMBOL vmlinux 0x371940d5 sock_set_rcvbuf +EXPORT_SYMBOL vmlinux 0x3719fba1 dma_fence_enable_sw_signaling +EXPORT_SYMBOL vmlinux 0x371fd679 blk_mq_tagset_busy_iter +EXPORT_SYMBOL vmlinux 0x3738d29d scsi_report_device_reset +EXPORT_SYMBOL vmlinux 0x373c35af vmalloc_to_page +EXPORT_SYMBOL vmlinux 0x3740b7df submit_bio_wait +EXPORT_SYMBOL vmlinux 0x3744cf36 vmalloc_to_pfn +EXPORT_SYMBOL vmlinux 0x3755f990 gf128mul_init_64k_bbe +EXPORT_SYMBOL vmlinux 0x3764a487 vfs_fsync_range +EXPORT_SYMBOL vmlinux 0x37871dd8 inet_del_offload +EXPORT_SYMBOL vmlinux 0x37af3190 dm_table_run_md_queue_async +EXPORT_SYMBOL vmlinux 0x37be8927 pci_stop_and_remove_bus_device +EXPORT_SYMBOL vmlinux 0x37befc70 jiffies_to_msecs +EXPORT_SYMBOL vmlinux 0x37e85134 configfs_undepend_item +EXPORT_SYMBOL vmlinux 0x37ff4a45 sync_inodes_sb +EXPORT_SYMBOL vmlinux 0x3800fe19 nobh_truncate_page +EXPORT_SYMBOL vmlinux 0x3814f56d __napi_schedule +EXPORT_SYMBOL vmlinux 0x381a798a setup_max_cpus +EXPORT_SYMBOL vmlinux 0x38214b08 locks_init_lock +EXPORT_SYMBOL vmlinux 0x3831dce5 pci_disable_msi +EXPORT_SYMBOL vmlinux 0x3832522f __crc32c_le_shift +EXPORT_SYMBOL vmlinux 0x3835f112 param_set_ulong +EXPORT_SYMBOL vmlinux 0x383bc37f blkdev_issue_flush +EXPORT_SYMBOL vmlinux 0x3843a98d jbd2_journal_stop +EXPORT_SYMBOL vmlinux 0x384501ff lock_page_memcg +EXPORT_SYMBOL vmlinux 0x385cc433 __fs_parse +EXPORT_SYMBOL vmlinux 0x386ce168 xfrm4_rcv_encap +EXPORT_SYMBOL vmlinux 0x38869d88 kstat +EXPORT_SYMBOL vmlinux 0x3891ffc8 ecryptfs_fill_auth_tok +EXPORT_SYMBOL vmlinux 0x38a71b7e pci_free_resource_list +EXPORT_SYMBOL vmlinux 0x38a9f7c5 in6addr_loopback +EXPORT_SYMBOL vmlinux 0x38ca010d vfs_setpos +EXPORT_SYMBOL vmlinux 0x38dfcab9 dev_uc_sync_multiple +EXPORT_SYMBOL vmlinux 0x38e92a0f __post_watch_notification +EXPORT_SYMBOL vmlinux 0x38efd6ad security_binder_transfer_file +EXPORT_SYMBOL vmlinux 0x3920e266 wait_for_completion_killable +EXPORT_SYMBOL vmlinux 0x39461d6a in_egroup_p +EXPORT_SYMBOL vmlinux 0x395bdacc debug_hex_ascii_view +EXPORT_SYMBOL vmlinux 0x3965f728 flow_indr_dev_unregister +EXPORT_SYMBOL vmlinux 0x39753219 scsi_is_host_device +EXPORT_SYMBOL vmlinux 0x3977b9ea freeze_bdev +EXPORT_SYMBOL vmlinux 0x398a935d tty_write_room +EXPORT_SYMBOL vmlinux 0x39991865 icmp_global_allow +EXPORT_SYMBOL vmlinux 0x39b52d19 __bitmap_and +EXPORT_SYMBOL vmlinux 0x39c60ac5 ZSTD_decompressBegin +EXPORT_SYMBOL vmlinux 0x39e2ce80 lookup_one_len +EXPORT_SYMBOL vmlinux 0x3a12a1a2 security_inode_copy_up +EXPORT_SYMBOL vmlinux 0x3a13f54a sgl_alloc +EXPORT_SYMBOL vmlinux 0x3a1733d0 dfltcc_inflate +EXPORT_SYMBOL vmlinux 0x3a2f6702 sg_alloc_table +EXPORT_SYMBOL vmlinux 0x3a476b07 super_setup_bdi +EXPORT_SYMBOL vmlinux 0x3a4f9d28 rng_is_initialized +EXPORT_SYMBOL vmlinux 0x3a6a1b82 kmem_cache_alloc_bulk +EXPORT_SYMBOL vmlinux 0x3a6c6881 cdrom_mode_sense +EXPORT_SYMBOL vmlinux 0x3a7cbee2 alloc_etherdev_mqs +EXPORT_SYMBOL vmlinux 0x3a8f7e2a unregister_service_level +EXPORT_SYMBOL vmlinux 0x3a98d156 netdev_set_sb_channel +EXPORT_SYMBOL vmlinux 0x3aa566ba vfs_iter_write +EXPORT_SYMBOL vmlinux 0x3aa5af36 dma_direct_sync_single_for_device +EXPORT_SYMBOL vmlinux 0x3aaf242a configfs_unregister_subsystem +EXPORT_SYMBOL vmlinux 0x3ab52888 tc_setup_cb_reoffload +EXPORT_SYMBOL vmlinux 0x3ab7b1cc scsi_set_sense_field_pointer +EXPORT_SYMBOL vmlinux 0x3ac1bd8d __breadahead_gfp +EXPORT_SYMBOL vmlinux 0x3ac8938b enable_sacf_uaccess +EXPORT_SYMBOL vmlinux 0x3adea2a2 kthread_bind +EXPORT_SYMBOL vmlinux 0x3b021a1e flow_rule_match_cvlan +EXPORT_SYMBOL vmlinux 0x3b07f53c jbd2_log_wait_commit +EXPORT_SYMBOL vmlinux 0x3b176ce7 release_dentry_name_snapshot +EXPORT_SYMBOL vmlinux 0x3b1845a1 __zerocopy_sg_from_iter +EXPORT_SYMBOL vmlinux 0x3b25fb3e devm_ioremap_resource +EXPORT_SYMBOL vmlinux 0x3b3a567b ipv6_push_frag_opts +EXPORT_SYMBOL vmlinux 0x3b3fe43f elv_rb_former_request +EXPORT_SYMBOL vmlinux 0x3b644591 __bitmap_shift_left +EXPORT_SYMBOL vmlinux 0x3b756f6a crc32_le +EXPORT_SYMBOL vmlinux 0x3b885402 __module_put_and_exit +EXPORT_SYMBOL vmlinux 0x3b9401cd __netdev_alloc_skb +EXPORT_SYMBOL vmlinux 0x3ba29ea8 unlock_page +EXPORT_SYMBOL vmlinux 0x3bbbb3f5 __sk_mem_raise_allocated +EXPORT_SYMBOL vmlinux 0x3bbd94cc __tty_alloc_driver +EXPORT_SYMBOL vmlinux 0x3be7643e security_xfrm_policy_free +EXPORT_SYMBOL vmlinux 0x3be8e31f dquot_commit +EXPORT_SYMBOL vmlinux 0x3c048089 jbd2_journal_init_inode +EXPORT_SYMBOL vmlinux 0x3c0b4eee __kfifo_skip_r +EXPORT_SYMBOL vmlinux 0x3c168d46 pcim_enable_device +EXPORT_SYMBOL vmlinux 0x3c185c61 page_put_link +EXPORT_SYMBOL vmlinux 0x3c210482 tty_insert_flip_string_flags +EXPORT_SYMBOL vmlinux 0x3c31af6a PageMovable +EXPORT_SYMBOL vmlinux 0x3c3fce39 __local_bh_enable_ip +EXPORT_SYMBOL vmlinux 0x3c3ff9fd sprintf +EXPORT_SYMBOL vmlinux 0x3c3ffcc1 migrate_page_move_mapping +EXPORT_SYMBOL vmlinux 0x3c44ba71 dma_direct_map_page +EXPORT_SYMBOL vmlinux 0x3c70e0b8 dcb_ieee_delapp +EXPORT_SYMBOL vmlinux 0x3c80c06c kstrtoull +EXPORT_SYMBOL vmlinux 0x3cae6e34 scsi_command_normalize_sense +EXPORT_SYMBOL vmlinux 0x3caf1ef1 ip_fraglist_init +EXPORT_SYMBOL vmlinux 0x3cb03209 __cleancache_invalidate_fs +EXPORT_SYMBOL vmlinux 0x3ccda202 vm_insert_page +EXPORT_SYMBOL vmlinux 0x3ce4ca6f disable_irq +EXPORT_SYMBOL vmlinux 0x3cec0e5f fbcon_rotate_cw +EXPORT_SYMBOL vmlinux 0x3cf77eb7 padata_do_parallel +EXPORT_SYMBOL vmlinux 0x3d117a60 itcw_calc_size +EXPORT_SYMBOL vmlinux 0x3d2510e2 dma_fence_wait_timeout +EXPORT_SYMBOL vmlinux 0x3d2c2e9d pci_ep_cfs_add_epc_group +EXPORT_SYMBOL vmlinux 0x3d4e5c0c blk_mq_stop_hw_queues +EXPORT_SYMBOL vmlinux 0x3d538c6e unregister_netdev +EXPORT_SYMBOL vmlinux 0x3d56e7b3 utf8_unload +EXPORT_SYMBOL vmlinux 0x3d5c5afe fb_get_buffer_offset +EXPORT_SYMBOL vmlinux 0x3d6b3755 empty_name +EXPORT_SYMBOL vmlinux 0x3d6c1913 register_fib_notifier +EXPORT_SYMBOL vmlinux 0x3d6e3b9f scsi_host_busy +EXPORT_SYMBOL vmlinux 0x3d7b4d97 mpage_writepage +EXPORT_SYMBOL vmlinux 0x3d83adb5 noop_llseek +EXPORT_SYMBOL vmlinux 0x3da3a2f1 fscrypt_decrypt_bio +EXPORT_SYMBOL vmlinux 0x3dabf271 memcg_sockets_enabled_key +EXPORT_SYMBOL vmlinux 0x3dad4dbc input_set_min_poll_interval +EXPORT_SYMBOL vmlinux 0x3dad9978 cancel_delayed_work +EXPORT_SYMBOL vmlinux 0x3db3b5a6 hdmi_avi_infoframe_pack +EXPORT_SYMBOL vmlinux 0x3dcb88a0 irq_set_handler_data +EXPORT_SYMBOL vmlinux 0x3dcc73d3 fbcon_update_vcs +EXPORT_SYMBOL vmlinux 0x3dce0fe0 vc_resize +EXPORT_SYMBOL vmlinux 0x3de3f6b6 zpool_unregister_driver +EXPORT_SYMBOL vmlinux 0x3df437f8 __neigh_set_probe_once +EXPORT_SYMBOL vmlinux 0x3dfc897c seq_hlist_start_head +EXPORT_SYMBOL vmlinux 0x3e01d2ca thaw_super +EXPORT_SYMBOL vmlinux 0x3e03bed5 pci_read_vpd +EXPORT_SYMBOL vmlinux 0x3e06c207 ap_driver_unregister +EXPORT_SYMBOL vmlinux 0x3e0b407f fb_get_mode +EXPORT_SYMBOL vmlinux 0x3e0c7852 unlock_two_nondirectories +EXPORT_SYMBOL vmlinux 0x3e144a5a dquot_initialize_needed +EXPORT_SYMBOL vmlinux 0x3e2b0ba6 groups_alloc +EXPORT_SYMBOL vmlinux 0x3e344050 consume_skb +EXPORT_SYMBOL vmlinux 0x3e3a1a46 posix_acl_update_mode +EXPORT_SYMBOL vmlinux 0x3e438c91 skb_add_rx_frag +EXPORT_SYMBOL vmlinux 0x3e62ee48 seg6_hmac_info_add +EXPORT_SYMBOL vmlinux 0x3e6caace scsi_host_get +EXPORT_SYMBOL vmlinux 0x3e732c9f reset_guest_reference_bit +EXPORT_SYMBOL vmlinux 0x3e9110fa __hw_addr_unsync +EXPORT_SYMBOL vmlinux 0x3eaa49a9 ccw_device_set_online +EXPORT_SYMBOL vmlinux 0x3eafe773 dma_virt_ops +EXPORT_SYMBOL vmlinux 0x3eb94250 itcw_add_dcw +EXPORT_SYMBOL vmlinux 0x3edc9065 devm_free_irq +EXPORT_SYMBOL vmlinux 0x3edf4c4e dev_remove_offload +EXPORT_SYMBOL vmlinux 0x3ee05f94 tcp_md5_hash_key +EXPORT_SYMBOL vmlinux 0x3ef8b53a cleancache_register_ops +EXPORT_SYMBOL vmlinux 0x3f0985a8 input_unregister_handler +EXPORT_SYMBOL vmlinux 0x3f0d85cf __sk_queue_drop_skb +EXPORT_SYMBOL vmlinux 0x3f2550b4 pci_get_device +EXPORT_SYMBOL vmlinux 0x3f3b1e2a qdisc_reset +EXPORT_SYMBOL vmlinux 0x3f4547a7 put_unused_fd +EXPORT_SYMBOL vmlinux 0x3f488f71 netlink_broadcast +EXPORT_SYMBOL vmlinux 0x3f719a76 tcp_getsockopt +EXPORT_SYMBOL vmlinux 0x3f75e0a7 inode_insert5 +EXPORT_SYMBOL vmlinux 0x3f89071b security_ib_pkey_access +EXPORT_SYMBOL vmlinux 0x3fa913da strspn +EXPORT_SYMBOL vmlinux 0x3fadb213 ZSTD_getFrameParams +EXPORT_SYMBOL vmlinux 0x3fb0b9e3 __udelay +EXPORT_SYMBOL vmlinux 0x3fd78f3b register_chrdev_region +EXPORT_SYMBOL vmlinux 0x3fe235bf nf_log_unbind_pf +EXPORT_SYMBOL vmlinux 0x4000ce1e key_move +EXPORT_SYMBOL vmlinux 0x4024c1c3 __percpu_counter_init +EXPORT_SYMBOL vmlinux 0x402a960a jiffies_64 +EXPORT_SYMBOL vmlinux 0x402e9e75 pci_irq_vector +EXPORT_SYMBOL vmlinux 0x404452ca inode_set_bytes +EXPORT_SYMBOL vmlinux 0x4064d433 dev_trans_start +EXPORT_SYMBOL vmlinux 0x406c7253 netdev_adjacent_change_abort +EXPORT_SYMBOL vmlinux 0x407cb7eb bmap +EXPORT_SYMBOL vmlinux 0x408b91b6 d_set_fallthru +EXPORT_SYMBOL vmlinux 0x40973662 sysctl_udp_mem +EXPORT_SYMBOL vmlinux 0x409873e3 tty_termios_baud_rate +EXPORT_SYMBOL vmlinux 0x40a9b349 vzalloc +EXPORT_SYMBOL vmlinux 0x40c7247c si_meminfo +EXPORT_SYMBOL vmlinux 0x40c789eb sock_wmalloc +EXPORT_SYMBOL vmlinux 0x40d04664 console_trylock +EXPORT_SYMBOL vmlinux 0x40d59096 unregister_restart_handler +EXPORT_SYMBOL vmlinux 0x40ed0c1c d_hash_and_lookup +EXPORT_SYMBOL vmlinux 0x40ee6514 xfrm_policy_alloc +EXPORT_SYMBOL vmlinux 0x40f445a1 skb_abort_seq_read +EXPORT_SYMBOL vmlinux 0x40f504fa xfrm6_protocol_deregister +EXPORT_SYMBOL vmlinux 0x40fd0123 bio_chain +EXPORT_SYMBOL vmlinux 0x4101ea38 netdev_crit +EXPORT_SYMBOL vmlinux 0x410fce7d ether_setup +EXPORT_SYMBOL vmlinux 0x411d8b98 inet_release +EXPORT_SYMBOL vmlinux 0x41482d8b strndup_user +EXPORT_SYMBOL vmlinux 0x4149b396 s390_isolate_bp_guest +EXPORT_SYMBOL vmlinux 0x415c1b36 seq_escape +EXPORT_SYMBOL vmlinux 0x41748063 ip_sock_set_freebind +EXPORT_SYMBOL vmlinux 0x41804cf1 ns_capable_noaudit +EXPORT_SYMBOL vmlinux 0x4188d439 neigh_rand_reach_time +EXPORT_SYMBOL vmlinux 0x4189af65 sock_from_file +EXPORT_SYMBOL vmlinux 0x4198ca95 __do_once_done +EXPORT_SYMBOL vmlinux 0x419f81c0 dcb_ieee_getapp_mask +EXPORT_SYMBOL vmlinux 0x41ce0ae4 blk_mq_init_allocated_queue +EXPORT_SYMBOL vmlinux 0x41da33dc __d_lookup_done +EXPORT_SYMBOL vmlinux 0x41e460b7 migrate_page_copy +EXPORT_SYMBOL vmlinux 0x41ee1ed1 sock_no_ioctl +EXPORT_SYMBOL vmlinux 0x41f9493a simple_dentry_operations +EXPORT_SYMBOL vmlinux 0x42056bdf tc_cleanup_flow_action +EXPORT_SYMBOL vmlinux 0x42083d7b pci_scan_bus +EXPORT_SYMBOL vmlinux 0x4210ff2c inet_register_protosw +EXPORT_SYMBOL vmlinux 0x42160169 flush_workqueue +EXPORT_SYMBOL vmlinux 0x4216c209 ipv6_dev_mc_dec +EXPORT_SYMBOL vmlinux 0x4230a8d7 sg_nents_for_len +EXPORT_SYMBOL vmlinux 0x4247405f dev_printk_hash +EXPORT_SYMBOL vmlinux 0x4248ae3c single_task_running +EXPORT_SYMBOL vmlinux 0x4249dabf locks_delete_block +EXPORT_SYMBOL vmlinux 0x424d3620 zlib_inflateIncomp +EXPORT_SYMBOL vmlinux 0x4272e1b7 setattr_copy +EXPORT_SYMBOL vmlinux 0x42a4ce24 __blkdev_issue_zeroout +EXPORT_SYMBOL vmlinux 0x42bd6456 input_mt_assign_slots +EXPORT_SYMBOL vmlinux 0x42f1b900 fb_pad_unaligned_buffer +EXPORT_SYMBOL vmlinux 0x42f47256 neigh_event_ns +EXPORT_SYMBOL vmlinux 0x42f76591 ccw_device_halt +EXPORT_SYMBOL vmlinux 0x42fe7bbf netdev_features_change +EXPORT_SYMBOL vmlinux 0x4302d0eb free_pages +EXPORT_SYMBOL vmlinux 0x4327f8a1 dev_get_by_name +EXPORT_SYMBOL vmlinux 0x4347ba05 ip6tun_encaps +EXPORT_SYMBOL vmlinux 0x4351577a fb_parse_edid +EXPORT_SYMBOL vmlinux 0x435477a7 sock_recvmsg +EXPORT_SYMBOL vmlinux 0x437a0d6d __sock_tx_timestamp +EXPORT_SYMBOL vmlinux 0x438610bd security_tun_dev_alloc_security +EXPORT_SYMBOL vmlinux 0x439e3615 scsi_host_alloc +EXPORT_SYMBOL vmlinux 0x43a08113 textsearch_prepare +EXPORT_SYMBOL vmlinux 0x43a4938f vm_get_page_prot +EXPORT_SYMBOL vmlinux 0x43ab16fb page_mapped +EXPORT_SYMBOL vmlinux 0x43ac9901 tcf_exts_num_actions +EXPORT_SYMBOL vmlinux 0x43bdfa20 console_irq +EXPORT_SYMBOL vmlinux 0x43c5027b sdev_enable_disk_events +EXPORT_SYMBOL vmlinux 0x43cf3bc3 dql_completed +EXPORT_SYMBOL vmlinux 0x43d03039 copy_page_to_iter +EXPORT_SYMBOL vmlinux 0x43d07c46 set_cached_acl +EXPORT_SYMBOL vmlinux 0x43d4d6fd blk_queue_max_segment_size +EXPORT_SYMBOL vmlinux 0x43dbbfaa ipv6_dev_get_saddr +EXPORT_SYMBOL vmlinux 0x43f18315 buffer_migrate_page +EXPORT_SYMBOL vmlinux 0x440d11c0 blkdev_compat_ptr_ioctl +EXPORT_SYMBOL vmlinux 0x4417f0a2 __sk_backlog_rcv +EXPORT_SYMBOL vmlinux 0x441b7618 inode_sub_bytes +EXPORT_SYMBOL vmlinux 0x442465ab pci_read_config_dword +EXPORT_SYMBOL vmlinux 0x4439fe9e remove_conflicting_pci_framebuffers +EXPORT_SYMBOL vmlinux 0x44469a76 crc_ccitt_false_table +EXPORT_SYMBOL vmlinux 0x4448c631 vm_map_pages +EXPORT_SYMBOL vmlinux 0x4485113a pci_ep_cfs_remove_epf_group +EXPORT_SYMBOL vmlinux 0x4495be77 key_payload_reserve +EXPORT_SYMBOL vmlinux 0x449acbfa jbd2_journal_free_reserved +EXPORT_SYMBOL vmlinux 0x449f41b8 netpoll_send_skb +EXPORT_SYMBOL vmlinux 0x44a03cca input_set_max_poll_interval +EXPORT_SYMBOL vmlinux 0x44a6e90a irq_cpu_rmap_add +EXPORT_SYMBOL vmlinux 0x44afacf7 inet_csk_reqsk_queue_add +EXPORT_SYMBOL vmlinux 0x44b30fb5 csch +EXPORT_SYMBOL vmlinux 0x44c9bf66 invalidate_bdev +EXPORT_SYMBOL vmlinux 0x44cba013 _copy_from_iter_full +EXPORT_SYMBOL vmlinux 0x44e57fba xfrm_policy_unregister_afinfo +EXPORT_SYMBOL vmlinux 0x44e9a829 match_token +EXPORT_SYMBOL vmlinux 0x44ecd9a3 skb_dequeue_tail +EXPORT_SYMBOL vmlinux 0x44f930bd dm_kcopyd_copy +EXPORT_SYMBOL vmlinux 0x45006cee default_red +EXPORT_SYMBOL vmlinux 0x45033668 sock_no_linger +EXPORT_SYMBOL vmlinux 0x452ba683 ipv6_ext_hdr +EXPORT_SYMBOL vmlinux 0x452d7d58 address_space_init_once +EXPORT_SYMBOL vmlinux 0x453228a9 adjust_managed_page_count +EXPORT_SYMBOL vmlinux 0x453c8087 input_close_device +EXPORT_SYMBOL vmlinux 0x453c8403 pci_msi_enabled +EXPORT_SYMBOL vmlinux 0x455716c2 param_get_uint +EXPORT_SYMBOL vmlinux 0x455ebb6b md_unregister_thread +EXPORT_SYMBOL vmlinux 0x45771bcf migrate_page +EXPORT_SYMBOL vmlinux 0x4578f528 __kfifo_to_user +EXPORT_SYMBOL vmlinux 0x458392e3 scsi_vpd_tpg_id +EXPORT_SYMBOL vmlinux 0x4592a302 page_pool_update_nid +EXPORT_SYMBOL vmlinux 0x45956d1f pci_bus_alloc_resource +EXPORT_SYMBOL vmlinux 0x45a14d6d remap_vmalloc_range_partial +EXPORT_SYMBOL vmlinux 0x45c92313 VMALLOC_END +EXPORT_SYMBOL vmlinux 0x45c9d2ba dev_change_proto_down +EXPORT_SYMBOL vmlinux 0x45cff4e7 __ip_queue_xmit +EXPORT_SYMBOL vmlinux 0x45d32db1 md_bitmap_cond_end_sync +EXPORT_SYMBOL vmlinux 0x45d39ffb page_symlink_inode_operations +EXPORT_SYMBOL vmlinux 0x45d3c773 memdup_user_nul +EXPORT_SYMBOL vmlinux 0x4603ee97 dev_getfirstbyhwtype +EXPORT_SYMBOL vmlinux 0x46045dd7 kstrtou8 +EXPORT_SYMBOL vmlinux 0x46066e5b perf_pmu_name +EXPORT_SYMBOL vmlinux 0x460c4ea7 sock_common_recvmsg +EXPORT_SYMBOL vmlinux 0x4618d801 t10_pi_type1_crc +EXPORT_SYMBOL vmlinux 0x461b2552 fscrypt_has_permitted_context +EXPORT_SYMBOL vmlinux 0x461d16ca sg_nents +EXPORT_SYMBOL vmlinux 0x461dfcf2 pci_scan_bridge +EXPORT_SYMBOL vmlinux 0x4632258d add_to_page_cache_locked +EXPORT_SYMBOL vmlinux 0x463d9a81 writeback_inodes_sb_nr +EXPORT_SYMBOL vmlinux 0x4644aa7a udp_gro_complete +EXPORT_SYMBOL vmlinux 0x4648dfc3 free_cgroup_ns +EXPORT_SYMBOL vmlinux 0x464f64b4 tcf_block_netif_keep_dst +EXPORT_SYMBOL vmlinux 0x4657b795 completion_done +EXPORT_SYMBOL vmlinux 0x4666fd7d sk_stream_error +EXPORT_SYMBOL vmlinux 0x466a59a1 get_mm_exe_file +EXPORT_SYMBOL vmlinux 0x466c14a7 __delay +EXPORT_SYMBOL vmlinux 0x467ef17d input_grab_device +EXPORT_SYMBOL vmlinux 0x4681f661 rtnl_unicast +EXPORT_SYMBOL vmlinux 0x4690c6f1 tty_driver_flush_buffer +EXPORT_SYMBOL vmlinux 0x46aaafba scsi_eh_restore_cmnd +EXPORT_SYMBOL vmlinux 0x46ba04d9 try_lookup_one_len +EXPORT_SYMBOL vmlinux 0x46cd8fce iucv_message_send +EXPORT_SYMBOL vmlinux 0x46d59f7d smp_cpu_mt_shift +EXPORT_SYMBOL vmlinux 0x46e319aa tcw_set_data +EXPORT_SYMBOL vmlinux 0x47010e6a reuseport_add_sock +EXPORT_SYMBOL vmlinux 0x470794bc get_mem_cgroup_from_page +EXPORT_SYMBOL vmlinux 0x470b7cfa mount_subtree +EXPORT_SYMBOL vmlinux 0x4717b40e vfs_get_link +EXPORT_SYMBOL vmlinux 0x471b74a1 __set_page_dirty_buffers +EXPORT_SYMBOL vmlinux 0x47279555 security_inet_conn_request +EXPORT_SYMBOL vmlinux 0x473736f7 jbd2_journal_init_jbd_inode +EXPORT_SYMBOL vmlinux 0x4737c650 unregister_console +EXPORT_SYMBOL vmlinux 0x47392e76 sclp_ocf_cpc_name_copy +EXPORT_SYMBOL vmlinux 0x47589de4 iterate_dir +EXPORT_SYMBOL vmlinux 0x47597417 tcp_rcv_established +EXPORT_SYMBOL vmlinux 0x476031fe __test_set_page_writeback +EXPORT_SYMBOL vmlinux 0x47709e42 free_anon_bdev +EXPORT_SYMBOL vmlinux 0x477902a0 register_qdisc +EXPORT_SYMBOL vmlinux 0x477e323f hdmi_drm_infoframe_pack_only +EXPORT_SYMBOL vmlinux 0x478f3665 vfs_getattr +EXPORT_SYMBOL vmlinux 0x47939e0d __tasklet_hi_schedule +EXPORT_SYMBOL vmlinux 0x479c3c86 find_next_zero_bit +EXPORT_SYMBOL vmlinux 0x47a0cdcb mb_cache_entry_find_next +EXPORT_SYMBOL vmlinux 0x47b3ca03 frontswap_register_ops +EXPORT_SYMBOL vmlinux 0x47c0e7e9 sync_filesystem +EXPORT_SYMBOL vmlinux 0x47c65bfc unregister_inet6addr_validator_notifier +EXPORT_SYMBOL vmlinux 0x47ff19a8 security_unix_stream_connect +EXPORT_SYMBOL vmlinux 0x47ff7303 file_remove_privs +EXPORT_SYMBOL vmlinux 0x480a84d4 netlink_capable +EXPORT_SYMBOL vmlinux 0x481aa15d dquot_destroy +EXPORT_SYMBOL vmlinux 0x4822445d blackhole_netdev +EXPORT_SYMBOL vmlinux 0x4823819e raw3270_buffer_address +EXPORT_SYMBOL vmlinux 0x4829cf6b fscrypt_enqueue_decrypt_work +EXPORT_SYMBOL vmlinux 0x483370e2 build_skb +EXPORT_SYMBOL vmlinux 0x483e83f2 sched_autogroup_create_attach +EXPORT_SYMBOL vmlinux 0x484f6edf ktime_get_coarse_real_ts64 +EXPORT_SYMBOL vmlinux 0x4854a167 trace_raw_output_prep +EXPORT_SYMBOL vmlinux 0x4895357b truncate_pagecache_range +EXPORT_SYMBOL vmlinux 0x489a6449 __tracepoint_s390_cio_tpi +EXPORT_SYMBOL vmlinux 0x489f6e0b rdma_dim +EXPORT_SYMBOL vmlinux 0x48a2caa8 textsearch_destroy +EXPORT_SYMBOL vmlinux 0x48a91171 string_get_size +EXPORT_SYMBOL vmlinux 0x48ac8729 free_task +EXPORT_SYMBOL vmlinux 0x48ada7be set_fs +EXPORT_SYMBOL vmlinux 0x48bb6e0c copy_string_kernel +EXPORT_SYMBOL vmlinux 0x48c42d2b __nla_put +EXPORT_SYMBOL vmlinux 0x48d82ab8 init_special_inode +EXPORT_SYMBOL vmlinux 0x48fa8391 set_pgste_bits +EXPORT_SYMBOL vmlinux 0x49045426 icmp_err_convert +EXPORT_SYMBOL vmlinux 0x490fbc30 get_super +EXPORT_SYMBOL vmlinux 0x4916e2ec xfrm_input_register_afinfo +EXPORT_SYMBOL vmlinux 0x4923dc87 pci_bus_write_config_dword +EXPORT_SYMBOL vmlinux 0x4924de97 kthread_blkcg +EXPORT_SYMBOL vmlinux 0x4936fd83 jbd2_journal_revoke +EXPORT_SYMBOL vmlinux 0x495990f3 hdmi_audio_infoframe_pack_only +EXPORT_SYMBOL vmlinux 0x49a3f57b qdisc_class_hash_grow +EXPORT_SYMBOL vmlinux 0x49aedf0f __dev_remove_pack +EXPORT_SYMBOL vmlinux 0x49b0f445 kobject_add +EXPORT_SYMBOL vmlinux 0x49beba18 inet_reqsk_alloc +EXPORT_SYMBOL vmlinux 0x49c9350a __neigh_event_send +EXPORT_SYMBOL vmlinux 0x49f6d5e5 neigh_xmit +EXPORT_SYMBOL vmlinux 0x49f90a87 mutex_lock_interruptible +EXPORT_SYMBOL vmlinux 0x4a34623a pudp_xchg_direct +EXPORT_SYMBOL vmlinux 0x4a51b06e vm_map_ram +EXPORT_SYMBOL vmlinux 0x4a6d3526 iucv_if +EXPORT_SYMBOL vmlinux 0x4a6edcfb del_random_ready_callback +EXPORT_SYMBOL vmlinux 0x4a7276a5 ccw_device_get_id +EXPORT_SYMBOL vmlinux 0x4a84a38b ip_do_fragment +EXPORT_SYMBOL vmlinux 0x4a96a8eb xxh32_digest +EXPORT_SYMBOL vmlinux 0x4a96ef82 security_sk_clone +EXPORT_SYMBOL vmlinux 0x4a97b539 blk_mq_start_hw_queue +EXPORT_SYMBOL vmlinux 0x4ac4fbde scsi_device_quiesce +EXPORT_SYMBOL vmlinux 0x4ac6d877 scsi_get_device_flags_keyed +EXPORT_SYMBOL vmlinux 0x4ac7f35b neigh_seq_start +EXPORT_SYMBOL vmlinux 0x4b1b78f0 flow_indr_block_cb_alloc +EXPORT_SYMBOL vmlinux 0x4b207471 sk_stream_wait_memory +EXPORT_SYMBOL vmlinux 0x4b2933f0 get_user_pages_locked +EXPORT_SYMBOL vmlinux 0x4b3e545f __scsi_device_lookup_by_target +EXPORT_SYMBOL vmlinux 0x4b4aea8e create_empty_buffers +EXPORT_SYMBOL vmlinux 0x4b5fd49e dm_kcopyd_do_callback +EXPORT_SYMBOL vmlinux 0x4b821323 xp_free +EXPORT_SYMBOL vmlinux 0x4b9c64d7 netdev_get_xmit_slave +EXPORT_SYMBOL vmlinux 0x4ba09c0c dquot_drop +EXPORT_SYMBOL vmlinux 0x4bb333ab md_finish_reshape +EXPORT_SYMBOL vmlinux 0x4bf21011 dev_disable_lro +EXPORT_SYMBOL vmlinux 0x4c314cd3 fqdir_exit +EXPORT_SYMBOL vmlinux 0x4c416eb9 LZ4_decompress_fast +EXPORT_SYMBOL vmlinux 0x4c48bd60 seg6_hmac_net_exit +EXPORT_SYMBOL vmlinux 0x4c4c956e nla_memcmp +EXPORT_SYMBOL vmlinux 0x4c66f54e pci_restore_state +EXPORT_SYMBOL vmlinux 0x4c688ada logfc +EXPORT_SYMBOL vmlinux 0x4c693826 vfs_mkobj +EXPORT_SYMBOL vmlinux 0x4c7cc9e4 debug_raw_view +EXPORT_SYMBOL vmlinux 0x4c7d245c mod_node_page_state +EXPORT_SYMBOL vmlinux 0x4cbcfdc0 prepare_kernel_cred +EXPORT_SYMBOL vmlinux 0x4cd31fa4 page_zero_new_buffers +EXPORT_SYMBOL vmlinux 0x4cfa49a3 dquot_file_open +EXPORT_SYMBOL vmlinux 0x4d004c45 proc_doulongvec_minmax +EXPORT_SYMBOL vmlinux 0x4d1579cb vfs_dedupe_file_range_one +EXPORT_SYMBOL vmlinux 0x4d24d218 mr_mfc_find_any_parent +EXPORT_SYMBOL vmlinux 0x4d2f17d4 param_get_charp +EXPORT_SYMBOL vmlinux 0x4d5d9e0c iov_iter_discard +EXPORT_SYMBOL vmlinux 0x4d65cbd5 csum_ipv6_magic +EXPORT_SYMBOL vmlinux 0x4d9b652b rb_erase +EXPORT_SYMBOL vmlinux 0x4dae414e vlan_dev_real_dev +EXPORT_SYMBOL vmlinux 0x4dc354af dqput +EXPORT_SYMBOL vmlinux 0x4dda726b match_strlcpy +EXPORT_SYMBOL vmlinux 0x4ddcfd48 block_write_end +EXPORT_SYMBOL vmlinux 0x4de382bd jbd2_log_start_commit +EXPORT_SYMBOL vmlinux 0x4dea1053 memchr +EXPORT_SYMBOL vmlinux 0x4df2ea84 gen_estimator_read +EXPORT_SYMBOL vmlinux 0x4dfe972c request_firmware_nowait +EXPORT_SYMBOL vmlinux 0x4e15cd41 pci_enable_device_io +EXPORT_SYMBOL vmlinux 0x4e166938 padata_alloc_shell +EXPORT_SYMBOL vmlinux 0x4e224675 blk_queue_stack_limits +EXPORT_SYMBOL vmlinux 0x4e3567f7 match_int +EXPORT_SYMBOL vmlinux 0x4e4924ea init_virt_timer +EXPORT_SYMBOL vmlinux 0x4e68e9be rb_next_postorder +EXPORT_SYMBOL vmlinux 0x4e6bbb32 kernel_sock_shutdown +EXPORT_SYMBOL vmlinux 0x4e6e8ea7 fg_console +EXPORT_SYMBOL vmlinux 0x4e898651 eth_gro_complete +EXPORT_SYMBOL vmlinux 0x4e9a37f3 inet6_del_protocol +EXPORT_SYMBOL vmlinux 0x4e9b851a gen_pool_set_algo +EXPORT_SYMBOL vmlinux 0x4ea823da kobject_put +EXPORT_SYMBOL vmlinux 0x4eada8f7 security_secid_to_secctx +EXPORT_SYMBOL vmlinux 0x4eb61247 blk_rq_map_kern +EXPORT_SYMBOL vmlinux 0x4ebbbc53 blk_stack_limits +EXPORT_SYMBOL vmlinux 0x4ec54e78 bitmap_to_arr32 +EXPORT_SYMBOL vmlinux 0x4ec5f965 pci_set_vpd_size +EXPORT_SYMBOL vmlinux 0x4ecbc75b __ip4_datagram_connect +EXPORT_SYMBOL vmlinux 0x4ed7b3b5 hex2bin +EXPORT_SYMBOL vmlinux 0x4ee6b680 __tracepoint_s390_cio_rsch +EXPORT_SYMBOL vmlinux 0x4eec9dab arch_spin_lock_wait +EXPORT_SYMBOL vmlinux 0x4ef96045 nla_put +EXPORT_SYMBOL vmlinux 0x4f15a5c3 xfrm_input_resume +EXPORT_SYMBOL vmlinux 0x4f1cd128 security_tun_dev_create +EXPORT_SYMBOL vmlinux 0x4f2cd1b5 __cpcmd +EXPORT_SYMBOL vmlinux 0x4f2fd36b xfrm_register_type +EXPORT_SYMBOL vmlinux 0x4f4535d5 rt_dst_clone +EXPORT_SYMBOL vmlinux 0x4f46a0ce inode_set_flags +EXPORT_SYMBOL vmlinux 0x4f73b6ea inet_frag_destroy +EXPORT_SYMBOL vmlinux 0x4f820320 generic_pipe_buf_release +EXPORT_SYMBOL vmlinux 0x4f962262 call_usermodehelper_setup +EXPORT_SYMBOL vmlinux 0x4f9cd74b current_time +EXPORT_SYMBOL vmlinux 0x4f9dc4a4 flow_rule_match_enc_opts +EXPORT_SYMBOL vmlinux 0x4faec757 inetpeer_invalidate_tree +EXPORT_SYMBOL vmlinux 0x4fb3f056 tcp_sock_set_quickack +EXPORT_SYMBOL vmlinux 0x4fe29905 dma_fence_remove_callback +EXPORT_SYMBOL vmlinux 0x50062a90 dev_load +EXPORT_SYMBOL vmlinux 0x50097088 security_tun_dev_free_security +EXPORT_SYMBOL vmlinux 0x5009c71d glob_match +EXPORT_SYMBOL vmlinux 0x5027cf6b dev_mc_sync_multiple +EXPORT_SYMBOL vmlinux 0x502f5fa7 __skb_free_datagram_locked +EXPORT_SYMBOL vmlinux 0x5035cbcf xa_get_mark +EXPORT_SYMBOL vmlinux 0x50360d8b ccw_device_start +EXPORT_SYMBOL vmlinux 0x50456fa9 inode_owner_or_capable +EXPORT_SYMBOL vmlinux 0x50464d75 irq_domain_set_info +EXPORT_SYMBOL vmlinux 0x504f854d tty_port_raise_dtr_rts +EXPORT_SYMBOL vmlinux 0x505424eb dst_release +EXPORT_SYMBOL vmlinux 0x5061ecaf airq_iv_free +EXPORT_SYMBOL vmlinux 0x50624917 sha1_init +EXPORT_SYMBOL vmlinux 0x506b7dfa xfrm_register_km +EXPORT_SYMBOL vmlinux 0x506dff1a __genradix_free +EXPORT_SYMBOL vmlinux 0x507b25d0 kstrndup +EXPORT_SYMBOL vmlinux 0x507d6239 lockref_get_not_dead +EXPORT_SYMBOL vmlinux 0x50a4698c fb_videomode_to_modelist +EXPORT_SYMBOL vmlinux 0x50a53fe7 __starget_for_each_device +EXPORT_SYMBOL vmlinux 0x50a9f167 udp6_csum_init +EXPORT_SYMBOL vmlinux 0x50b29185 bio_uninit +EXPORT_SYMBOL vmlinux 0x50be748d security_ib_free_security +EXPORT_SYMBOL vmlinux 0x50d348be __seq_open_private +EXPORT_SYMBOL vmlinux 0x50e0a893 lockref_get_not_zero +EXPORT_SYMBOL vmlinux 0x51152fa3 bio_integrity_clone +EXPORT_SYMBOL vmlinux 0x5143ce65 radix_tree_iter_resume +EXPORT_SYMBOL vmlinux 0x51473316 __cpu_present_mask +EXPORT_SYMBOL vmlinux 0x51641162 opal_unlock_from_suspend +EXPORT_SYMBOL vmlinux 0x51819f0a security_inet_conn_established +EXPORT_SYMBOL vmlinux 0x518bb9e6 diag204 +EXPORT_SYMBOL vmlinux 0x5191a256 seq_puts +EXPORT_SYMBOL vmlinux 0x519a9400 netdev_master_upper_dev_get +EXPORT_SYMBOL vmlinux 0x51a79301 __insert_inode_hash +EXPORT_SYMBOL vmlinux 0x51b4a7a5 gnet_stats_finish_copy +EXPORT_SYMBOL vmlinux 0x51cb42d4 arch_debugfs_dir +EXPORT_SYMBOL vmlinux 0x51cc5ebf watchdog_unregister_governor +EXPORT_SYMBOL vmlinux 0x51d46b9e netdev_port_same_parent_id +EXPORT_SYMBOL vmlinux 0x51d47244 udp_push_pending_frames +EXPORT_SYMBOL vmlinux 0x51d9add7 ip_options_compile +EXPORT_SYMBOL vmlinux 0x51f3f855 pci_dev_driver +EXPORT_SYMBOL vmlinux 0x522561b4 dev_mc_del +EXPORT_SYMBOL vmlinux 0x522c733e wait_on_page_bit +EXPORT_SYMBOL vmlinux 0x522fba1d raw3270_reset +EXPORT_SYMBOL vmlinux 0x52819990 kernel_cpumcf_alert +EXPORT_SYMBOL vmlinux 0x52881c28 simple_symlink_inode_operations +EXPORT_SYMBOL vmlinux 0x52889430 has_capability +EXPORT_SYMBOL vmlinux 0x529bd183 fput +EXPORT_SYMBOL vmlinux 0x52d717da xz_dec_init +EXPORT_SYMBOL vmlinux 0x52e069dc fscrypt_free_inode +EXPORT_SYMBOL vmlinux 0x52ed3b86 simple_transaction_get +EXPORT_SYMBOL vmlinux 0x52f12d1e _dev_alert +EXPORT_SYMBOL vmlinux 0x52fbcefd __ClearPageMovable +EXPORT_SYMBOL vmlinux 0x532f329e invalidate_inode_buffers +EXPORT_SYMBOL vmlinux 0x5333a890 kmem_cache_create_usercopy +EXPORT_SYMBOL vmlinux 0x5337fd22 fifo_create_dflt +EXPORT_SYMBOL vmlinux 0x533ab788 blk_mq_init_sq_queue +EXPORT_SYMBOL vmlinux 0x535d4814 vfs_iocb_iter_read +EXPORT_SYMBOL vmlinux 0x5361700b flow_rule_match_enc_ipv4_addrs +EXPORT_SYMBOL vmlinux 0x536c2be6 scsi_dma_unmap +EXPORT_SYMBOL vmlinux 0x53753e1b filemap_map_pages +EXPORT_SYMBOL vmlinux 0x53b3ad53 md_bitmap_update_sb +EXPORT_SYMBOL vmlinux 0x53d07a9e ccw_device_get_path_mask +EXPORT_SYMBOL vmlinux 0x53d6561a set_groups +EXPORT_SYMBOL vmlinux 0x53e7e9e1 vc_cons +EXPORT_SYMBOL vmlinux 0x540862e2 diag14 +EXPORT_SYMBOL vmlinux 0x540caa61 scsi_host_lookup +EXPORT_SYMBOL vmlinux 0x5410fc2b mod_zone_page_state +EXPORT_SYMBOL vmlinux 0x5424b33b padata_start +EXPORT_SYMBOL vmlinux 0x542c8896 __page_symlink +EXPORT_SYMBOL vmlinux 0x543ef284 seq_hlist_start +EXPORT_SYMBOL vmlinux 0x5445feab __irq_regs +EXPORT_SYMBOL vmlinux 0x54531ee2 skb_dequeue +EXPORT_SYMBOL vmlinux 0x5458f09c jbd2_journal_set_triggers +EXPORT_SYMBOL vmlinux 0x547a05df __nla_put_64bit +EXPORT_SYMBOL vmlinux 0x547a60c8 inet_frag_kill +EXPORT_SYMBOL vmlinux 0x5486d714 scsicam_bios_param +EXPORT_SYMBOL vmlinux 0x54a5e010 blk_set_queue_depth +EXPORT_SYMBOL vmlinux 0x54a7e250 generic_file_open +EXPORT_SYMBOL vmlinux 0x54a9db5f _kstrtoul +EXPORT_SYMBOL vmlinux 0x54ac7f36 inode_add_bytes +EXPORT_SYMBOL vmlinux 0x54afbb6d blk_integrity_merge_rq +EXPORT_SYMBOL vmlinux 0x54ca0e29 xfrm6_rcv_encap +EXPORT_SYMBOL vmlinux 0x54dfb6b7 padata_free +EXPORT_SYMBOL vmlinux 0x54e6fcdd net_enable_timestamp +EXPORT_SYMBOL vmlinux 0x5506b8f7 netlbl_bitmap_setbit +EXPORT_SYMBOL vmlinux 0x550e812c skb_vlan_untag +EXPORT_SYMBOL vmlinux 0x551bd071 __rb_erase_color +EXPORT_SYMBOL vmlinux 0x55300a42 simple_setattr +EXPORT_SYMBOL vmlinux 0x554a384a __siphash_aligned +EXPORT_SYMBOL vmlinux 0x554ae3a4 irq_poll_sched +EXPORT_SYMBOL vmlinux 0x554cdb8b vfs_get_fsid +EXPORT_SYMBOL vmlinux 0x5565d8cc xsk_clear_rx_need_wakeup +EXPORT_SYMBOL vmlinux 0x55792179 textsearch_unregister +EXPORT_SYMBOL vmlinux 0x557f6d48 blk_mq_requeue_request +EXPORT_SYMBOL vmlinux 0x558b281d aes_expandkey +EXPORT_SYMBOL vmlinux 0x55a3f3e0 sclp_add_request +EXPORT_SYMBOL vmlinux 0x55b69df5 skb_copy_datagram_from_iter +EXPORT_SYMBOL vmlinux 0x55c3732f nf_getsockopt +EXPORT_SYMBOL vmlinux 0x55d04ff3 tcf_classify_ingress +EXPORT_SYMBOL vmlinux 0x55d399cd inet_confirm_addr +EXPORT_SYMBOL vmlinux 0x55e31703 ethtool_convert_link_mode_to_legacy_u32 +EXPORT_SYMBOL vmlinux 0x55eccdf5 mod_virt_timer +EXPORT_SYMBOL vmlinux 0x55fbaf1d smsg_unregister_callback +EXPORT_SYMBOL vmlinux 0x561a6cf5 blk_queue_segment_boundary +EXPORT_SYMBOL vmlinux 0x561cbce2 dmam_pool_create +EXPORT_SYMBOL vmlinux 0x562b9be5 ap_test_config_ctrl_domain +EXPORT_SYMBOL vmlinux 0x5635a60a vmalloc_user +EXPORT_SYMBOL vmlinux 0x564405cb __cpu_online_mask +EXPORT_SYMBOL vmlinux 0x56470118 __warn_printk +EXPORT_SYMBOL vmlinux 0x564783e6 dev_open +EXPORT_SYMBOL vmlinux 0x565c8cfa dev_mc_add_excl +EXPORT_SYMBOL vmlinux 0x56802ae8 rps_cpu_mask +EXPORT_SYMBOL vmlinux 0x56964e7a vlan_for_each +EXPORT_SYMBOL vmlinux 0x569b9fff mdiobus_setup_mdiodev_from_board_info +EXPORT_SYMBOL vmlinux 0x56adf654 simple_recursive_removal +EXPORT_SYMBOL vmlinux 0x56c36375 xp_dma_unmap +EXPORT_SYMBOL vmlinux 0x56c3f8c1 scsi_is_target_device +EXPORT_SYMBOL vmlinux 0x56c8799d scsi_kunmap_atomic_sg +EXPORT_SYMBOL vmlinux 0x56ca422a raw3270_start +EXPORT_SYMBOL vmlinux 0x56d47bc0 ptep_xchg_lazy +EXPORT_SYMBOL vmlinux 0x56d78870 chsc +EXPORT_SYMBOL vmlinux 0x56e45750 tcp_seq_next +EXPORT_SYMBOL vmlinux 0x56f8c371 __tracepoint_kfree +EXPORT_SYMBOL vmlinux 0x57016676 xsk_umem_uses_need_wakeup +EXPORT_SYMBOL vmlinux 0x570d345e gen_pool_has_addr +EXPORT_SYMBOL vmlinux 0x57318cab eth_platform_get_mac_address +EXPORT_SYMBOL vmlinux 0x57327b3b generic_pipe_buf_try_steal +EXPORT_SYMBOL vmlinux 0x5749374b vfs_getattr_nosec +EXPORT_SYMBOL vmlinux 0x574c2e74 bitmap_release_region +EXPORT_SYMBOL vmlinux 0x576289b4 dev_change_proto_down_generic +EXPORT_SYMBOL vmlinux 0x57674fd7 __sw_hweight16 +EXPORT_SYMBOL vmlinux 0x5777690a proc_create_single_data +EXPORT_SYMBOL vmlinux 0x578a1876 tun_xdp_to_ptr +EXPORT_SYMBOL vmlinux 0x5790401d tcf_action_exec +EXPORT_SYMBOL vmlinux 0x57bba5a5 device_add_disk +EXPORT_SYMBOL vmlinux 0x57d28b71 skb_free_datagram +EXPORT_SYMBOL vmlinux 0x57ed6b39 ip6_fraglist_init +EXPORT_SYMBOL vmlinux 0x57f16392 register_sysctl_table +EXPORT_SYMBOL vmlinux 0x5818fe3c posix_acl_from_mode +EXPORT_SYMBOL vmlinux 0x581a9dc6 d_alloc_name +EXPORT_SYMBOL vmlinux 0x581f98da zlib_inflate +EXPORT_SYMBOL vmlinux 0x582b1306 inc_node_page_state +EXPORT_SYMBOL vmlinux 0x582b6275 xfrm_if_unregister_cb +EXPORT_SYMBOL vmlinux 0x588dfd38 inet_dgram_connect +EXPORT_SYMBOL vmlinux 0x58acf24b mdiobus_register_board_info +EXPORT_SYMBOL vmlinux 0x58aff5a5 I_BDEV +EXPORT_SYMBOL vmlinux 0x58b4645c dev_close_many +EXPORT_SYMBOL vmlinux 0x58b73bc7 match_wildcard +EXPORT_SYMBOL vmlinux 0x58cd1b54 string_escape_mem +EXPORT_SYMBOL vmlinux 0x58cf0bc4 xfrm_dst_ifdown +EXPORT_SYMBOL vmlinux 0x58db91b0 input_register_handler +EXPORT_SYMBOL vmlinux 0x58e3306d bit_wait_io +EXPORT_SYMBOL vmlinux 0x58f109bf vlan_dev_vlan_proto +EXPORT_SYMBOL vmlinux 0x58fe734f netdev_upper_dev_unlink +EXPORT_SYMBOL vmlinux 0x5907b9b5 nla_append +EXPORT_SYMBOL vmlinux 0x5907bb8a cdrom_dummy_generic_packet +EXPORT_SYMBOL vmlinux 0x59232eb0 skb_checksum_setup +EXPORT_SYMBOL vmlinux 0x594db168 get_ipc_ns_exported +EXPORT_SYMBOL vmlinux 0x59588850 vsscanf +EXPORT_SYMBOL vmlinux 0x598022a9 param_get_long +EXPORT_SYMBOL vmlinux 0x598bec62 tcf_chain_get_by_act +EXPORT_SYMBOL vmlinux 0x59a9d8ca param_ops_string +EXPORT_SYMBOL vmlinux 0x59add017 unlock_page_memcg +EXPORT_SYMBOL vmlinux 0x59b4ac3e tcp_memory_allocated +EXPORT_SYMBOL vmlinux 0x59c4fe75 put_cmsg +EXPORT_SYMBOL vmlinux 0x59d38788 ccw_device_start_timeout +EXPORT_SYMBOL vmlinux 0x59e8727f udp_poll +EXPORT_SYMBOL vmlinux 0x59e8f97d blk_queue_max_hw_sectors +EXPORT_SYMBOL vmlinux 0x5a0a3ac2 param_ops_short +EXPORT_SYMBOL vmlinux 0x5a0ad3ad dump_skip +EXPORT_SYMBOL vmlinux 0x5a0b73d0 zlib_deflateInit2 +EXPORT_SYMBOL vmlinux 0x5a0bd33e sock_alloc +EXPORT_SYMBOL vmlinux 0x5a10f98e del_virt_timer +EXPORT_SYMBOL vmlinux 0x5a4d313e gf128mul_4k_lle +EXPORT_SYMBOL vmlinux 0x5a5e7ea3 simple_read_from_buffer +EXPORT_SYMBOL vmlinux 0x5a7f5e67 pci_request_regions +EXPORT_SYMBOL vmlinux 0x5aa58144 ip6_route_me_harder +EXPORT_SYMBOL vmlinux 0x5aaa21e6 bio_endio +EXPORT_SYMBOL vmlinux 0x5abe761e dev_change_flags +EXPORT_SYMBOL vmlinux 0x5accc2b5 param_get_invbool +EXPORT_SYMBOL vmlinux 0x5acfc965 jbd2_journal_get_create_access +EXPORT_SYMBOL vmlinux 0x5ad033ba kmem_cache_size +EXPORT_SYMBOL vmlinux 0x5ad1abda ipmr_rule_default +EXPORT_SYMBOL vmlinux 0x5adac370 jbd2_journal_init_dev +EXPORT_SYMBOL vmlinux 0x5af413ee register_console +EXPORT_SYMBOL vmlinux 0x5afae8f0 xp_dma_sync_for_cpu_slow +EXPORT_SYMBOL vmlinux 0x5afee3fc netdev_warn +EXPORT_SYMBOL vmlinux 0x5b2894bf ipv6_mc_check_icmpv6 +EXPORT_SYMBOL vmlinux 0x5b2b28ab tcw_add_tidaw +EXPORT_SYMBOL vmlinux 0x5b36c63e filemap_write_and_wait_range +EXPORT_SYMBOL vmlinux 0x5b36d5dd utf8agemax +EXPORT_SYMBOL vmlinux 0x5b604bd1 segment_type +EXPORT_SYMBOL vmlinux 0x5b675945 vmf_insert_mixed +EXPORT_SYMBOL vmlinux 0x5bd4ff88 flow_action_cookie_create +EXPORT_SYMBOL vmlinux 0x5be63c5b crc32c_csum_stub +EXPORT_SYMBOL vmlinux 0x5be69618 ipv6_sock_mc_join +EXPORT_SYMBOL vmlinux 0x5bf7fbab flow_rule_match_meta +EXPORT_SYMBOL vmlinux 0x5c0655ee set_anon_super_fc +EXPORT_SYMBOL vmlinux 0x5c0c3a4d __dquot_alloc_space +EXPORT_SYMBOL vmlinux 0x5c2d456c utf8_strncmp +EXPORT_SYMBOL vmlinux 0x5c3345ff vfs_ioc_fssetxattr_check +EXPORT_SYMBOL vmlinux 0x5c3f6c6f param_set_short +EXPORT_SYMBOL vmlinux 0x5c4265f6 blk_unregister_region +EXPORT_SYMBOL vmlinux 0x5c51fe8d lease_modify +EXPORT_SYMBOL vmlinux 0x5c8534f7 pgste_perform_essa +EXPORT_SYMBOL vmlinux 0x5c923848 s390_epoch_delta_notifier +EXPORT_SYMBOL vmlinux 0x5c941631 param_ops_ushort +EXPORT_SYMBOL vmlinux 0x5c957d5b clear_nlink +EXPORT_SYMBOL vmlinux 0x5c98d830 register_quota_format +EXPORT_SYMBOL vmlinux 0x5ca99296 dm_unregister_target +EXPORT_SYMBOL vmlinux 0x5cc32bdc bitmap_copy_le +EXPORT_SYMBOL vmlinux 0x5cc37618 dev_addr_del +EXPORT_SYMBOL vmlinux 0x5cdaea31 posix_lock_file +EXPORT_SYMBOL vmlinux 0x5cf53ce2 input_free_minor +EXPORT_SYMBOL vmlinux 0x5d43d964 neigh_resolve_output +EXPORT_SYMBOL vmlinux 0x5d49aabc init_wait_var_entry +EXPORT_SYMBOL vmlinux 0x5d4eacbe fs_param_is_bool +EXPORT_SYMBOL vmlinux 0x5d504e51 dcbnl_cee_notify +EXPORT_SYMBOL vmlinux 0x5d614bdf ccw_device_is_multipath +EXPORT_SYMBOL vmlinux 0x5d739bcf bd_set_size +EXPORT_SYMBOL vmlinux 0x5d78a8f6 vm_node_stat +EXPORT_SYMBOL vmlinux 0x5d7dee6b strscpy_pad +EXPORT_SYMBOL vmlinux 0x5d830297 get_random_bytes_arch +EXPORT_SYMBOL vmlinux 0x5da635a1 __skb_recv_udp +EXPORT_SYMBOL vmlinux 0x5db89344 iter_file_splice_write +EXPORT_SYMBOL vmlinux 0x5dc35964 unregister_sysctl_table +EXPORT_SYMBOL vmlinux 0x5dcebdb1 pci_read_config_byte +EXPORT_SYMBOL vmlinux 0x5dd3cedf gen_pool_destroy +EXPORT_SYMBOL vmlinux 0x5de51316 scsi_block_when_processing_errors +EXPORT_SYMBOL vmlinux 0x5df756d7 __crypto_memneq +EXPORT_SYMBOL vmlinux 0x5e0ccb9f sha1_transform +EXPORT_SYMBOL vmlinux 0x5e20d0e0 gen_pool_dma_alloc_align +EXPORT_SYMBOL vmlinux 0x5e21cb82 ap_send +EXPORT_SYMBOL vmlinux 0x5e373fb4 gf128mul_64k_bbe +EXPORT_SYMBOL vmlinux 0x5e49302a dev_mc_flush +EXPORT_SYMBOL vmlinux 0x5e5b76f8 __tracepoint_kmalloc_node +EXPORT_SYMBOL vmlinux 0x5e61f774 fscrypt_encrypt_block_inplace +EXPORT_SYMBOL vmlinux 0x5e641819 tcp_seq_stop +EXPORT_SYMBOL vmlinux 0x5e694013 __vlan_find_dev_deep_rcu +EXPORT_SYMBOL vmlinux 0x5e86171d raw3270_unregister_notifier +EXPORT_SYMBOL vmlinux 0x5e88feb2 filemap_fdatawait_range_keep_errors +EXPORT_SYMBOL vmlinux 0x5e95b1cd current_umask +EXPORT_SYMBOL vmlinux 0x5e9fdfd4 class3270 +EXPORT_SYMBOL vmlinux 0x5eb24829 dm_shift_arg +EXPORT_SYMBOL vmlinux 0x5ebd7a79 proc_dointvec_userhz_jiffies +EXPORT_SYMBOL vmlinux 0x5ec37631 scsi_scan_target +EXPORT_SYMBOL vmlinux 0x5ec4aee6 put_sg_io_hdr +EXPORT_SYMBOL vmlinux 0x5ec8c4b8 __skb_get_hash +EXPORT_SYMBOL vmlinux 0x5ecd1530 idr_destroy +EXPORT_SYMBOL vmlinux 0x5ecfeec6 __per_cpu_offset +EXPORT_SYMBOL vmlinux 0x5ed040b0 pm_set_vt_switch +EXPORT_SYMBOL vmlinux 0x5ed90adc int_to_scsilun +EXPORT_SYMBOL vmlinux 0x5ee16721 flow_get_u32_src +EXPORT_SYMBOL vmlinux 0x5efe7928 truncate_inode_pages_final +EXPORT_SYMBOL vmlinux 0x5f098b2a in6addr_interfacelocal_allrouters +EXPORT_SYMBOL vmlinux 0x5f0ea28d nvm_dev_dma_free +EXPORT_SYMBOL vmlinux 0x5f1d9482 dev_driver_string +EXPORT_SYMBOL vmlinux 0x5f4f037f __sk_dst_check +EXPORT_SYMBOL vmlinux 0x5f5ff1b4 __sync_dirty_buffer +EXPORT_SYMBOL vmlinux 0x5f65b7c4 block_read_full_page +EXPORT_SYMBOL vmlinux 0x5f686e93 tcp_v4_md5_lookup +EXPORT_SYMBOL vmlinux 0x5f78002c fs_param_is_enum +EXPORT_SYMBOL vmlinux 0x5f7e6975 refcount_dec_and_lock_irqsave +EXPORT_SYMBOL vmlinux 0x5f916578 scsi_add_host_with_dma +EXPORT_SYMBOL vmlinux 0x5f98bdb6 nf_hooks_needed +EXPORT_SYMBOL vmlinux 0x5fb1c8d7 radix_tree_lookup_slot +EXPORT_SYMBOL vmlinux 0x5fca6205 jbd2_journal_dirty_metadata +EXPORT_SYMBOL vmlinux 0x5fd2298e strnstr +EXPORT_SYMBOL vmlinux 0x5fda0adb ZSTD_DDictWorkspaceBound +EXPORT_SYMBOL vmlinux 0x5ff231ed scsi_is_sdev_device +EXPORT_SYMBOL vmlinux 0x5ff4155b nf_unregister_sockopt +EXPORT_SYMBOL vmlinux 0x6005c351 zpool_has_pool +EXPORT_SYMBOL vmlinux 0x600683d3 do_unblank_screen +EXPORT_SYMBOL vmlinux 0x6018c9ea __nla_reserve +EXPORT_SYMBOL vmlinux 0x601f665f dm_io_client_create +EXPORT_SYMBOL vmlinux 0x60351b98 __nla_validate +EXPORT_SYMBOL vmlinux 0x60352082 register_inet6addr_notifier +EXPORT_SYMBOL vmlinux 0x603694e0 dev_get_phys_port_name +EXPORT_SYMBOL vmlinux 0x605720af km_policy_expired +EXPORT_SYMBOL vmlinux 0x605790dc fiemap_fill_next_extent +EXPORT_SYMBOL vmlinux 0x607ee40e generic_iommu_put_resv_regions +EXPORT_SYMBOL vmlinux 0x608d249b proc_doulongvec_ms_jiffies_minmax +EXPORT_SYMBOL vmlinux 0x6091b333 unregister_chrdev_region +EXPORT_SYMBOL vmlinux 0x6098fab0 ip_setsockopt +EXPORT_SYMBOL vmlinux 0x609bcd98 in6_pton +EXPORT_SYMBOL vmlinux 0x609f1c7e synchronize_net +EXPORT_SYMBOL vmlinux 0x60a06f4d fwnode_irq_get +EXPORT_SYMBOL vmlinux 0x60ad4db5 forget_cached_acl +EXPORT_SYMBOL vmlinux 0x60b5c8dd register_external_irq +EXPORT_SYMBOL vmlinux 0x60cd4630 compat_sock_common_getsockopt +EXPORT_SYMBOL vmlinux 0x60d2ab64 ip6mr_rule_default +EXPORT_SYMBOL vmlinux 0x60d3ceee xfrm_state_insert +EXPORT_SYMBOL vmlinux 0x60d76d86 __skb_pad +EXPORT_SYMBOL vmlinux 0x60ef30e8 ilookup5_nowait +EXPORT_SYMBOL vmlinux 0x60f9b9b2 __page_frag_cache_drain +EXPORT_SYMBOL vmlinux 0x6101ed65 nmi_panic +EXPORT_SYMBOL vmlinux 0x6107ffb5 neigh_destroy +EXPORT_SYMBOL vmlinux 0x612685a2 sock_create_lite +EXPORT_SYMBOL vmlinux 0x6128b5fc __printk_ratelimit +EXPORT_SYMBOL vmlinux 0x612cd3dc xfrm4_protocol_register +EXPORT_SYMBOL vmlinux 0x6147ab89 redirty_page_for_writepage +EXPORT_SYMBOL vmlinux 0x615911d7 __bitmap_set +EXPORT_SYMBOL vmlinux 0x616e24f0 dma_direct_unmap_sg +EXPORT_SYMBOL vmlinux 0x617172a9 dev_get_phys_port_id +EXPORT_SYMBOL vmlinux 0x6172e44b pcie_capability_read_word +EXPORT_SYMBOL vmlinux 0x6176f2ec mr_vif_seq_next +EXPORT_SYMBOL vmlinux 0x61908450 qdisc_put +EXPORT_SYMBOL vmlinux 0x61b7b126 simple_strtoull +EXPORT_SYMBOL vmlinux 0x61e272c9 sha256_final +EXPORT_SYMBOL vmlinux 0x61ea189b fb_pad_aligned_buffer +EXPORT_SYMBOL vmlinux 0x6228c21f smp_call_function_single +EXPORT_SYMBOL vmlinux 0x62350c80 d_obtain_root +EXPORT_SYMBOL vmlinux 0x623b4efd release_sock +EXPORT_SYMBOL vmlinux 0x6243834b kernel_sendmsg +EXPORT_SYMBOL vmlinux 0x624c45c1 trace_print_array_seq +EXPORT_SYMBOL vmlinux 0x62737e1d sock_unregister +EXPORT_SYMBOL vmlinux 0x627c3bc8 ip_fraglist_prepare +EXPORT_SYMBOL vmlinux 0x62849ac7 dev_valid_name +EXPORT_SYMBOL vmlinux 0x62a60c52 param_set_uint +EXPORT_SYMBOL vmlinux 0x62ad90cd jbd2_journal_force_commit +EXPORT_SYMBOL vmlinux 0x62bf6edf utf8agemin +EXPORT_SYMBOL vmlinux 0x62e03cd5 cookie_ecn_ok +EXPORT_SYMBOL vmlinux 0x630a6219 input_open_device +EXPORT_SYMBOL vmlinux 0x63187451 pcie_aspm_support_enabled +EXPORT_SYMBOL vmlinux 0x631af468 pci_ep_cfs_add_epf_group +EXPORT_SYMBOL vmlinux 0x631b8b8e sched_autogroup_detach +EXPORT_SYMBOL vmlinux 0x631d06aa cpu_rmap_put +EXPORT_SYMBOL vmlinux 0x63210000 fscrypt_put_encryption_info +EXPORT_SYMBOL vmlinux 0x634bf7e4 percpu_counter_add_batch +EXPORT_SYMBOL vmlinux 0x6356f3b1 set_security_override +EXPORT_SYMBOL vmlinux 0x6371e098 cio_irb +EXPORT_SYMBOL vmlinux 0x63a58370 flow_action_cookie_destroy +EXPORT_SYMBOL vmlinux 0x63a7c28c bitmap_find_free_region +EXPORT_SYMBOL vmlinux 0x63b5b9a4 neigh_for_each +EXPORT_SYMBOL vmlinux 0x63c06557 inet_dev_addr_type +EXPORT_SYMBOL vmlinux 0x63c4d61f __bitmap_weight +EXPORT_SYMBOL vmlinux 0x63ca173f tcp_parse_options +EXPORT_SYMBOL vmlinux 0x63cbc93b file_open_root +EXPORT_SYMBOL vmlinux 0x63d6dbd9 __tracepoint_kmem_cache_alloc_node +EXPORT_SYMBOL vmlinux 0x63eb9355 panic_blink +EXPORT_SYMBOL vmlinux 0x63eda67c dqget +EXPORT_SYMBOL vmlinux 0x64127b67 bitmap_find_next_zero_area_off +EXPORT_SYMBOL vmlinux 0x64174999 ccw_device_tm_start_key +EXPORT_SYMBOL vmlinux 0x641b01bf __xfrm_init_state +EXPORT_SYMBOL vmlinux 0x641ff753 dev_addr_flush +EXPORT_SYMBOL vmlinux 0x643d9ba1 groups_free +EXPORT_SYMBOL vmlinux 0x645b7e29 proto_register +EXPORT_SYMBOL vmlinux 0x6464c669 pci_write_config_dword +EXPORT_SYMBOL vmlinux 0x646e20df cpumask_any_and_distribute +EXPORT_SYMBOL vmlinux 0x647993c7 __sock_queue_rcv_skb +EXPORT_SYMBOL vmlinux 0x647aad94 reuseport_detach_prog +EXPORT_SYMBOL vmlinux 0x647d9eab misc_register +EXPORT_SYMBOL vmlinux 0x6481ffe0 hsiphash_1u32 +EXPORT_SYMBOL vmlinux 0x648eb59d gc_inflight_list +EXPORT_SYMBOL vmlinux 0x64999478 congestion_wait +EXPORT_SYMBOL vmlinux 0x64a9c928 default_blu +EXPORT_SYMBOL vmlinux 0x64b639a3 __tracepoint_s390_cio_hsch +EXPORT_SYMBOL vmlinux 0x64d57e69 pcie_set_readrq +EXPORT_SYMBOL vmlinux 0x64f7bf3e skb_vlan_push +EXPORT_SYMBOL vmlinux 0x64fac9ab md_bitmap_end_sync +EXPORT_SYMBOL vmlinux 0x6506828c simple_lookup +EXPORT_SYMBOL vmlinux 0x65068bc5 blk_queue_max_discard_sectors +EXPORT_SYMBOL vmlinux 0x6513a3fa fb_get_color_depth +EXPORT_SYMBOL vmlinux 0x651881c8 dquot_claim_space_nodirty +EXPORT_SYMBOL vmlinux 0x651a4139 test_taint +EXPORT_SYMBOL vmlinux 0x651b5a25 inet6_unregister_icmp_sender +EXPORT_SYMBOL vmlinux 0x652032cb mac_pton +EXPORT_SYMBOL vmlinux 0x6521a4fc __qdisc_calculate_pkt_len +EXPORT_SYMBOL vmlinux 0x6530556c sock_create_kern +EXPORT_SYMBOL vmlinux 0x6536e199 netdev_upper_get_next_dev_rcu +EXPORT_SYMBOL vmlinux 0x65408378 zlib_inflate_blob +EXPORT_SYMBOL vmlinux 0x65434d95 unregister_netdevice_queue +EXPORT_SYMBOL vmlinux 0x657aa5e7 bdi_alloc +EXPORT_SYMBOL vmlinux 0x658ce1a8 xxh64_reset +EXPORT_SYMBOL vmlinux 0x659ded26 xfrm_flush_gc +EXPORT_SYMBOL vmlinux 0x65bffccc ip_mc_leave_group +EXPORT_SYMBOL vmlinux 0x65c2f50b debugfs_create_automount +EXPORT_SYMBOL vmlinux 0x65c5502c km_new_mapping +EXPORT_SYMBOL vmlinux 0x65d92134 file_update_time +EXPORT_SYMBOL vmlinux 0x65dccf13 xz_dec_end +EXPORT_SYMBOL vmlinux 0x65f3654d pci_msi_vec_count +EXPORT_SYMBOL vmlinux 0x660c46cb get_watch_queue +EXPORT_SYMBOL vmlinux 0x660c9571 md_write_inc +EXPORT_SYMBOL vmlinux 0x660f83b8 single_open +EXPORT_SYMBOL vmlinux 0x66139486 udp_lib_unhash +EXPORT_SYMBOL vmlinux 0x66348f07 bh_submit_read +EXPORT_SYMBOL vmlinux 0x663ce72e fib_notifier_ops_unregister +EXPORT_SYMBOL vmlinux 0x6646262c cdrom_media_changed +EXPORT_SYMBOL vmlinux 0x6660fa28 mr_mfc_seq_idx +EXPORT_SYMBOL vmlinux 0x66628bf3 ip_tunnel_metadata_cnt +EXPORT_SYMBOL vmlinux 0x6673f96d xxh32_reset +EXPORT_SYMBOL vmlinux 0x66761c0c netdev_change_features +EXPORT_SYMBOL vmlinux 0x6677ebba vfs_mknod +EXPORT_SYMBOL vmlinux 0x66b56d5c tty_kref_put +EXPORT_SYMBOL vmlinux 0x66b98575 __init_waitqueue_head +EXPORT_SYMBOL vmlinux 0x66d29e23 nla_put_64bit +EXPORT_SYMBOL vmlinux 0x66d2ebec nla_reserve_64bit +EXPORT_SYMBOL vmlinux 0x66e69897 prandom_bytes_state +EXPORT_SYMBOL vmlinux 0x66ebdb20 dev_change_carrier +EXPORT_SYMBOL vmlinux 0x66eecd2d pfifo_qdisc_ops +EXPORT_SYMBOL vmlinux 0x67021245 security_old_inode_init_security +EXPORT_SYMBOL vmlinux 0x670b341f pci_back_from_sleep +EXPORT_SYMBOL vmlinux 0x672144bd strlcpy +EXPORT_SYMBOL vmlinux 0x6721e5a4 down_killable +EXPORT_SYMBOL vmlinux 0x672660a6 wait_for_completion_timeout +EXPORT_SYMBOL vmlinux 0x672d75ad __blk_rq_map_sg +EXPORT_SYMBOL vmlinux 0x672e2cec cdev_init +EXPORT_SYMBOL vmlinux 0x67372ba4 cdev_set_parent +EXPORT_SYMBOL vmlinux 0x6749d53f hdmi_vendor_infoframe_init +EXPORT_SYMBOL vmlinux 0x67641d50 dma_cache_sync +EXPORT_SYMBOL vmlinux 0x6764da8a raw3270_request_set_data +EXPORT_SYMBOL vmlinux 0x6773bcd4 vfs_copy_file_range +EXPORT_SYMBOL vmlinux 0x677c397f md_write_start +EXPORT_SYMBOL vmlinux 0x677e6d06 console_start +EXPORT_SYMBOL vmlinux 0x6785687a __next_node_in +EXPORT_SYMBOL vmlinux 0x678b96ec dma_pool_alloc +EXPORT_SYMBOL vmlinux 0x678c62eb cpu_all_bits +EXPORT_SYMBOL vmlinux 0x679b6324 vfs_fadvise +EXPORT_SYMBOL vmlinux 0x67a9f033 nf_log_bind_pf +EXPORT_SYMBOL vmlinux 0x67b27ec1 tty_std_termios +EXPORT_SYMBOL vmlinux 0x67b78eb3 seq_hlist_next_rcu +EXPORT_SYMBOL vmlinux 0x67d1101b nvm_unregister +EXPORT_SYMBOL vmlinux 0x67dbc240 cdrom_ioctl +EXPORT_SYMBOL vmlinux 0x67e6fba6 inet_csk_prepare_forced_close +EXPORT_SYMBOL vmlinux 0x67f3dd8a udp_pre_connect +EXPORT_SYMBOL vmlinux 0x67fcea98 import_iovec +EXPORT_SYMBOL vmlinux 0x68173d50 vfs_create_mount +EXPORT_SYMBOL vmlinux 0x681a1995 tcp_mss_to_mtu +EXPORT_SYMBOL vmlinux 0x681d4b31 crypto_sha512_finup +EXPORT_SYMBOL vmlinux 0x6827a14b compat_tcp_setsockopt +EXPORT_SYMBOL vmlinux 0x683a9560 __gnet_stats_copy_basic +EXPORT_SYMBOL vmlinux 0x684a18e5 wait_on_page_bit_killable +EXPORT_SYMBOL vmlinux 0x684ae04d param_set_byte +EXPORT_SYMBOL vmlinux 0x6854863e fb_class +EXPORT_SYMBOL vmlinux 0x685e31ca groups_sort +EXPORT_SYMBOL vmlinux 0x687173de ZSTD_findDecompressedSize +EXPORT_SYMBOL vmlinux 0x6893b4d6 ida_alloc_range +EXPORT_SYMBOL vmlinux 0x68a90b51 get_default_font +EXPORT_SYMBOL vmlinux 0x68b5441f skb_coalesce_rx_frag +EXPORT_SYMBOL vmlinux 0x68b97bc1 pcie_get_mps +EXPORT_SYMBOL vmlinux 0x68bd2515 pskb_extract +EXPORT_SYMBOL vmlinux 0x68cf3e93 tcf_em_unregister +EXPORT_SYMBOL vmlinux 0x68d113ed sock_no_listen +EXPORT_SYMBOL vmlinux 0x68d44952 netdev_rx_csum_fault +EXPORT_SYMBOL vmlinux 0x68d6048a sk_filter_trim_cap +EXPORT_SYMBOL vmlinux 0x68edf8e5 tcf_unregister_action +EXPORT_SYMBOL vmlinux 0x68f17ae7 set_nlink +EXPORT_SYMBOL vmlinux 0x68fe9e66 __kfifo_dma_out_prepare_r +EXPORT_SYMBOL vmlinux 0x6904dba7 ping_prot +EXPORT_SYMBOL vmlinux 0x6906c5ec remove_proc_subtree +EXPORT_SYMBOL vmlinux 0x69097457 crc32_be +EXPORT_SYMBOL vmlinux 0x6913dfe7 inet6_del_offload +EXPORT_SYMBOL vmlinux 0x6936ea22 key_revoke +EXPORT_SYMBOL vmlinux 0x69493b1a kstrtos16 +EXPORT_SYMBOL vmlinux 0x69535056 register_netdevice_notifier_net +EXPORT_SYMBOL vmlinux 0x695702c8 fs_bio_set +EXPORT_SYMBOL vmlinux 0x69668826 netdev_increment_features +EXPORT_SYMBOL vmlinux 0x6976daec down_write +EXPORT_SYMBOL vmlinux 0x6979c3d8 sock_bindtoindex +EXPORT_SYMBOL vmlinux 0x69a35121 stop_tty +EXPORT_SYMBOL vmlinux 0x69ad2f20 kstrtouint +EXPORT_SYMBOL vmlinux 0x69c05dc4 pcie_port_service_register +EXPORT_SYMBOL vmlinux 0x69cf77c8 ZSTD_getDictID_fromDict +EXPORT_SYMBOL vmlinux 0x69d85c34 gen_pool_create +EXPORT_SYMBOL vmlinux 0x69edaddb rawv6_mh_filter_register +EXPORT_SYMBOL vmlinux 0x6a03751f sgl_free_order +EXPORT_SYMBOL vmlinux 0x6a037cf1 mempool_kfree +EXPORT_SYMBOL vmlinux 0x6a12fe01 tcp_rtx_synack +EXPORT_SYMBOL vmlinux 0x6a37d074 vfs_parse_fs_string +EXPORT_SYMBOL vmlinux 0x6a3b5c2a devm_iounmap +EXPORT_SYMBOL vmlinux 0x6a4e83b7 netpoll_send_udp +EXPORT_SYMBOL vmlinux 0x6a584196 __icmp_send +EXPORT_SYMBOL vmlinux 0x6a5cb5ee __get_free_pages +EXPORT_SYMBOL vmlinux 0x6a5ecb18 unregister_module_notifier +EXPORT_SYMBOL vmlinux 0x6a5fa363 sigprocmask +EXPORT_SYMBOL vmlinux 0x6a925401 __wait_on_buffer +EXPORT_SYMBOL vmlinux 0x6a9afcda in_dev_finish_destroy +EXPORT_SYMBOL vmlinux 0x6aa11aa6 sgl_free_n_order +EXPORT_SYMBOL vmlinux 0x6ab487c4 blk_limits_io_opt +EXPORT_SYMBOL vmlinux 0x6abee1c2 unix_detach_fds +EXPORT_SYMBOL vmlinux 0x6ac08241 hash_and_copy_to_iter +EXPORT_SYMBOL vmlinux 0x6ac435c5 generic_parse_monolithic +EXPORT_SYMBOL vmlinux 0x6aeefac4 zlib_deflateReset +EXPORT_SYMBOL vmlinux 0x6b19cd03 wait_for_completion_io +EXPORT_SYMBOL vmlinux 0x6b2dc060 dump_stack +EXPORT_SYMBOL vmlinux 0x6b308e8a mnt_drop_write_file +EXPORT_SYMBOL vmlinux 0x6b3efc81 PDE_DATA +EXPORT_SYMBOL vmlinux 0x6b463ab1 dquot_get_state +EXPORT_SYMBOL vmlinux 0x6b483c72 dev_mc_del_global +EXPORT_SYMBOL vmlinux 0x6b55acd0 rtnl_lock_killable +EXPORT_SYMBOL vmlinux 0x6b6654b1 d_tmpfile +EXPORT_SYMBOL vmlinux 0x6b731c23 pcix_get_max_mmrbc +EXPORT_SYMBOL vmlinux 0x6b853d06 ns_to_kernel_old_timeval +EXPORT_SYMBOL vmlinux 0x6b8bf149 netif_receive_skb_list +EXPORT_SYMBOL vmlinux 0x6ba8dc55 input_enable_softrepeat +EXPORT_SYMBOL vmlinux 0x6bac671b __crc32c_le +EXPORT_SYMBOL vmlinux 0x6baca297 __tracepoint_s390_cio_chsc +EXPORT_SYMBOL vmlinux 0x6baf1ada tcf_exts_destroy +EXPORT_SYMBOL vmlinux 0x6bbf3f7c input_register_device +EXPORT_SYMBOL vmlinux 0x6bc3fbc0 __unregister_chrdev +EXPORT_SYMBOL vmlinux 0x6bfe1653 iucv_message_receive +EXPORT_SYMBOL vmlinux 0x6c04565e vfs_rmdir +EXPORT_SYMBOL vmlinux 0x6c257ac0 tty_termios_hw_change +EXPORT_SYMBOL vmlinux 0x6c2acdd5 kobject_get_unless_zero +EXPORT_SYMBOL vmlinux 0x6c2ede31 locks_mandatory_area +EXPORT_SYMBOL vmlinux 0x6c3bb5f6 kthread_create_worker +EXPORT_SYMBOL vmlinux 0x6c595a73 __register_nls +EXPORT_SYMBOL vmlinux 0x6c5e2663 xfrm_alloc_spi +EXPORT_SYMBOL vmlinux 0x6c60994e remove_wait_queue +EXPORT_SYMBOL vmlinux 0x6c61ce70 num_registered_fb +EXPORT_SYMBOL vmlinux 0x6c902607 blk_queue_bounce_limit +EXPORT_SYMBOL vmlinux 0x6cb46525 netlbl_catmap_walk +EXPORT_SYMBOL vmlinux 0x6cc710ff gen_pool_first_fit +EXPORT_SYMBOL vmlinux 0x6ccb48c1 sync_inode +EXPORT_SYMBOL vmlinux 0x6ccc34dd sort +EXPORT_SYMBOL vmlinux 0x6cd4087f dquot_load_quota_sb +EXPORT_SYMBOL vmlinux 0x6cd4500c follow_down +EXPORT_SYMBOL vmlinux 0x6cf62166 __tracepoint_kmem_cache_alloc +EXPORT_SYMBOL vmlinux 0x6d108924 dquot_release +EXPORT_SYMBOL vmlinux 0x6d1bde8a pci_write_vpd +EXPORT_SYMBOL vmlinux 0x6d1ea6ec strlcat +EXPORT_SYMBOL vmlinux 0x6d294e43 clock_t_to_jiffies +EXPORT_SYMBOL vmlinux 0x6d2eef2b posix_test_lock +EXPORT_SYMBOL vmlinux 0x6d340f64 tty_termios_input_baud_rate +EXPORT_SYMBOL vmlinux 0x6d35a052 __skb_flow_dissect +EXPORT_SYMBOL vmlinux 0x6d3b672d bio_devname +EXPORT_SYMBOL vmlinux 0x6d3be6f1 __percpu_counter_compare +EXPORT_SYMBOL vmlinux 0x6d55c3ad pci_free_irq +EXPORT_SYMBOL vmlinux 0x6d68f651 d_alloc_anon +EXPORT_SYMBOL vmlinux 0x6d79c5bc d_instantiate +EXPORT_SYMBOL vmlinux 0x6d7c7dcc bitmap_cut +EXPORT_SYMBOL vmlinux 0x6d939ba4 md_bitmap_unplug +EXPORT_SYMBOL vmlinux 0x6d9c5231 __netlink_kernel_create +EXPORT_SYMBOL vmlinux 0x6dab0254 idr_alloc_cyclic +EXPORT_SYMBOL vmlinux 0x6daea280 crc32_le_shift +EXPORT_SYMBOL vmlinux 0x6db9eee8 input_mt_report_finger_count +EXPORT_SYMBOL vmlinux 0x6dcf857f uuid_null +EXPORT_SYMBOL vmlinux 0x6de4b39f skb_unlink +EXPORT_SYMBOL vmlinux 0x6df1aaf1 kernel_sigaction +EXPORT_SYMBOL vmlinux 0x6e00b8cb _ebcasc +EXPORT_SYMBOL vmlinux 0x6e019034 __tracepoint_module_get +EXPORT_SYMBOL vmlinux 0x6e17cfec ndo_dflt_fdb_del +EXPORT_SYMBOL vmlinux 0x6e1ce32d blkdev_get_by_path +EXPORT_SYMBOL vmlinux 0x6e1f4424 md_wait_for_blocked_rdev +EXPORT_SYMBOL vmlinux 0x6e4f851a iov_iter_kvec +EXPORT_SYMBOL vmlinux 0x6e5cbc5a filemap_fdatawait_range +EXPORT_SYMBOL vmlinux 0x6e720ff2 rtnl_unlock +EXPORT_SYMBOL vmlinux 0x6e7e7800 tcp_recvmsg +EXPORT_SYMBOL vmlinux 0x6e89de5e mpage_readahead +EXPORT_SYMBOL vmlinux 0x6e9ad290 cpu_have_feature +EXPORT_SYMBOL vmlinux 0x6e9dd606 __symbol_put +EXPORT_SYMBOL vmlinux 0x6ea52cd6 tcp_md5_hash_skb_data +EXPORT_SYMBOL vmlinux 0x6ea9363b force_sig +EXPORT_SYMBOL vmlinux 0x6ec0fa3e call_fib_notifier +EXPORT_SYMBOL vmlinux 0x6ec11ae1 configfs_remove_default_groups +EXPORT_SYMBOL vmlinux 0x6ec99d8f skb_vlan_pop +EXPORT_SYMBOL vmlinux 0x6ecb030a key_instantiate_and_link +EXPORT_SYMBOL vmlinux 0x6ed8a5fc hdmi_drm_infoframe_check +EXPORT_SYMBOL vmlinux 0x6edd9e40 skb_push +EXPORT_SYMBOL vmlinux 0x6ef84303 kvmalloc_node +EXPORT_SYMBOL vmlinux 0x6f1dc1c0 md_reload_sb +EXPORT_SYMBOL vmlinux 0x6f1ee1a7 fscrypt_decrypt_block_inplace +EXPORT_SYMBOL vmlinux 0x6f336f4b pci_set_mwi +EXPORT_SYMBOL vmlinux 0x6f365e44 ZSTD_decompressContinue +EXPORT_SYMBOL vmlinux 0x6f514b2e skb_copy_datagram_iter +EXPORT_SYMBOL vmlinux 0x6f5ef93d memchr_inv +EXPORT_SYMBOL vmlinux 0x6f689943 ZSTD_decompressBegin_usingDict +EXPORT_SYMBOL vmlinux 0x6f8420a3 ZSTD_findFrameCompressedSize +EXPORT_SYMBOL vmlinux 0x6f8f674a bpf_dispatcher_xdp_func +EXPORT_SYMBOL vmlinux 0x6fb49676 queue_rcu_work +EXPORT_SYMBOL vmlinux 0x6fbad262 pcie_capability_write_dword +EXPORT_SYMBOL vmlinux 0x6fc2745c radix_tree_gang_lookup_tag_slot +EXPORT_SYMBOL vmlinux 0x6fd9c35a __clzdi2 +EXPORT_SYMBOL vmlinux 0x6fe5229d ethtool_op_get_ts_info +EXPORT_SYMBOL vmlinux 0x6fe9c5f6 key_validate +EXPORT_SYMBOL vmlinux 0x6fecb682 debug_register +EXPORT_SYMBOL vmlinux 0x6ff51d1e generic_file_readonly_mmap +EXPORT_SYMBOL vmlinux 0x70002fe8 siphash_1u32 +EXPORT_SYMBOL vmlinux 0x702cc045 inode_nohighmem +EXPORT_SYMBOL vmlinux 0x702f4acf udp_table +EXPORT_SYMBOL vmlinux 0x703de11b d_lookup +EXPORT_SYMBOL vmlinux 0x7071a4f2 cmdline_parts_free +EXPORT_SYMBOL vmlinux 0x70d5ed93 ida_destroy +EXPORT_SYMBOL vmlinux 0x70f8bc89 elv_bio_merge_ok +EXPORT_SYMBOL vmlinux 0x70f9c767 fbcon_set_bitops +EXPORT_SYMBOL vmlinux 0x7111cc78 kfree_skb +EXPORT_SYMBOL vmlinux 0x711fba6a vmap +EXPORT_SYMBOL vmlinux 0x7120f9bd LZ4_setStreamDecode +EXPORT_SYMBOL vmlinux 0x712135d6 proc_dostring +EXPORT_SYMBOL vmlinux 0x7129e5f8 hex_asc +EXPORT_SYMBOL vmlinux 0x7145aef0 segment_load +EXPORT_SYMBOL vmlinux 0x71466059 dma_get_sgtable_attrs +EXPORT_SYMBOL vmlinux 0x71534c0b sk_page_frag_refill +EXPORT_SYMBOL vmlinux 0x7171121c overflowgid +EXPORT_SYMBOL vmlinux 0x717da3b9 free_bucket_spinlocks +EXPORT_SYMBOL vmlinux 0x71811533 pci_clear_master +EXPORT_SYMBOL vmlinux 0x71a50dbc register_blkdev +EXPORT_SYMBOL vmlinux 0x71a672ef dmam_pool_destroy +EXPORT_SYMBOL vmlinux 0x71df609c mempool_destroy +EXPORT_SYMBOL vmlinux 0x72228441 pci_free_irq_vectors +EXPORT_SYMBOL vmlinux 0x722ae5a9 default_llseek +EXPORT_SYMBOL vmlinux 0x723cfd6c eth_header_parse +EXPORT_SYMBOL vmlinux 0x724072e7 bioset_exit +EXPORT_SYMBOL vmlinux 0x7242e96d strnchr +EXPORT_SYMBOL vmlinux 0x724ddac7 utf8version_is_supported +EXPORT_SYMBOL vmlinux 0x725b3af5 get_guest_storage_key +EXPORT_SYMBOL vmlinux 0x72618303 pcix_set_mmrbc +EXPORT_SYMBOL vmlinux 0x72727e13 unregister_binfmt +EXPORT_SYMBOL vmlinux 0x727a66cf simple_fill_super +EXPORT_SYMBOL vmlinux 0x729e4615 input_flush_device +EXPORT_SYMBOL vmlinux 0x72a21c63 jbd2_journal_abort +EXPORT_SYMBOL vmlinux 0x72a7efdb dev_printk_emit +EXPORT_SYMBOL vmlinux 0x72b9d287 default_grn +EXPORT_SYMBOL vmlinux 0x72d29a16 __get_hash_from_flowi6 +EXPORT_SYMBOL vmlinux 0x72d2a635 sg_miter_start +EXPORT_SYMBOL vmlinux 0x72e449ea __xa_set_mark +EXPORT_SYMBOL vmlinux 0x72ea7b2d scsi_device_type +EXPORT_SYMBOL vmlinux 0x72f02478 idr_get_next_ul +EXPORT_SYMBOL vmlinux 0x730b096c ap_apqn_in_matrix_owned_by_def_drv +EXPORT_SYMBOL vmlinux 0x731610d0 bio_copy_data +EXPORT_SYMBOL vmlinux 0x7323737a bdget +EXPORT_SYMBOL vmlinux 0x73382f10 skb_ext_add +EXPORT_SYMBOL vmlinux 0x7363471a vfs_path_lookup +EXPORT_SYMBOL vmlinux 0x7380dffa argv_split +EXPORT_SYMBOL vmlinux 0x73869f30 __tracepoint_s390_cio_ssch +EXPORT_SYMBOL vmlinux 0x7389706a __memset16 +EXPORT_SYMBOL vmlinux 0x73937783 register_netdevice +EXPORT_SYMBOL vmlinux 0x739bf68a seq_open_private +EXPORT_SYMBOL vmlinux 0x73abb180 alloc_contig_range +EXPORT_SYMBOL vmlinux 0x73bf20c6 _ascebc +EXPORT_SYMBOL vmlinux 0x73ce9079 kthread_destroy_worker +EXPORT_SYMBOL vmlinux 0x73d1db8a find_lock_entry +EXPORT_SYMBOL vmlinux 0x73d2070d tty_port_close_end +EXPORT_SYMBOL vmlinux 0x73d41be9 _dev_info_hash +EXPORT_SYMBOL vmlinux 0x73d82b80 blk_queue_chunk_sectors +EXPORT_SYMBOL vmlinux 0x73da1276 scsi_eh_finish_cmd +EXPORT_SYMBOL vmlinux 0x73da30c6 tcf_action_update_stats +EXPORT_SYMBOL vmlinux 0x73dc7365 file_check_and_advance_wb_err +EXPORT_SYMBOL vmlinux 0x73f05c12 request_key_rcu +EXPORT_SYMBOL vmlinux 0x7404d15f seq_file_path +EXPORT_SYMBOL vmlinux 0x7410aba2 strreplace +EXPORT_SYMBOL vmlinux 0x74119e19 dm_kcopyd_zero +EXPORT_SYMBOL vmlinux 0x741f70a9 debug_stop_all +EXPORT_SYMBOL vmlinux 0x742578a5 wait_for_random_bytes +EXPORT_SYMBOL vmlinux 0x74477ec4 seq_open +EXPORT_SYMBOL vmlinux 0x74531953 kernel_listen +EXPORT_SYMBOL vmlinux 0x7453d3e8 security_release_secctx +EXPORT_SYMBOL vmlinux 0x7470b01a tsb_init +EXPORT_SYMBOL vmlinux 0x74969b6b nf_ct_attach +EXPORT_SYMBOL vmlinux 0x749d9d8a tcp_enter_quickack_mode +EXPORT_SYMBOL vmlinux 0x74c134b9 __sw_hweight32 +EXPORT_SYMBOL vmlinux 0x74d5f91e pci_bus_write_config_byte +EXPORT_SYMBOL vmlinux 0x74d858a7 on_each_cpu_cond_mask +EXPORT_SYMBOL vmlinux 0x74e5ff1a udpv6_encap_enable +EXPORT_SYMBOL vmlinux 0x74ec5406 __xfrm_dst_lookup +EXPORT_SYMBOL vmlinux 0x74f56057 tso_build_hdr +EXPORT_SYMBOL vmlinux 0x7504903f blk_mq_delay_run_hw_queues +EXPORT_SYMBOL vmlinux 0x7505bac6 tso_start +EXPORT_SYMBOL vmlinux 0x752492fd jbd2__journal_restart +EXPORT_SYMBOL vmlinux 0x7532cc7e dev_mc_init +EXPORT_SYMBOL vmlinux 0x7534339c flow_rule_match_ipv6_addrs +EXPORT_SYMBOL vmlinux 0x75399955 __devm_request_region +EXPORT_SYMBOL vmlinux 0x75506631 sockfd_lookup +EXPORT_SYMBOL vmlinux 0x755bcb30 padata_free_shell +EXPORT_SYMBOL vmlinux 0x756aabf2 __scsi_execute +EXPORT_SYMBOL vmlinux 0x756cd753 block_is_partially_uptodate +EXPORT_SYMBOL vmlinux 0x75801393 inet_offloads +EXPORT_SYMBOL vmlinux 0x75855d0c pci_bus_claim_resources +EXPORT_SYMBOL vmlinux 0x759a0416 __memset64 +EXPORT_SYMBOL vmlinux 0x759a9f2d refcount_dec_and_mutex_lock +EXPORT_SYMBOL vmlinux 0x75ac0197 kstrtoul_from_user +EXPORT_SYMBOL vmlinux 0x75b9cf29 hsch +EXPORT_SYMBOL vmlinux 0x75bda77a seq_hlist_next +EXPORT_SYMBOL vmlinux 0x75ca3129 km_query +EXPORT_SYMBOL vmlinux 0x75d0deb9 nsecs_to_jiffies64 +EXPORT_SYMBOL vmlinux 0x75d499dd vmcore_add_device_dump +EXPORT_SYMBOL vmlinux 0x75d6331b inet_getname +EXPORT_SYMBOL vmlinux 0x75deff25 __filemap_set_wb_err +EXPORT_SYMBOL vmlinux 0x75eceda7 skb_flow_get_icmp_tci +EXPORT_SYMBOL vmlinux 0x75fcdd6f panic_notifier_list +EXPORT_SYMBOL vmlinux 0x75fe607c input_get_poll_interval +EXPORT_SYMBOL vmlinux 0x7603c379 ethtool_rx_flow_rule_destroy +EXPORT_SYMBOL vmlinux 0x760a0f4f yield +EXPORT_SYMBOL vmlinux 0x760a3eca ZSTD_decompressStream +EXPORT_SYMBOL vmlinux 0x7611aff0 neigh_direct_output +EXPORT_SYMBOL vmlinux 0x761c0975 write_cache_pages +EXPORT_SYMBOL vmlinux 0x7622f58d __netif_schedule +EXPORT_SYMBOL vmlinux 0x7624249e dim_park_tired +EXPORT_SYMBOL vmlinux 0x7644828b handle_edge_irq +EXPORT_SYMBOL vmlinux 0x7647726c handle_sysrq +EXPORT_SYMBOL vmlinux 0x765c7cb3 sclp +EXPORT_SYMBOL vmlinux 0x766a0927 mempool_alloc_pages +EXPORT_SYMBOL vmlinux 0x7671e001 xa_store_range +EXPORT_SYMBOL vmlinux 0x76758ddf __pagevec_release +EXPORT_SYMBOL vmlinux 0x769f6e64 errseq_check +EXPORT_SYMBOL vmlinux 0x76b8145b rps_may_expire_flow +EXPORT_SYMBOL vmlinux 0x76c28c42 input_set_capability +EXPORT_SYMBOL vmlinux 0x76c729b9 dquot_get_next_id +EXPORT_SYMBOL vmlinux 0x76d3cd60 laptop_mode +EXPORT_SYMBOL vmlinux 0x76d451c4 add_taint +EXPORT_SYMBOL vmlinux 0x76e1ac41 security_binder_transfer_binder +EXPORT_SYMBOL vmlinux 0x76e5403e udp6_seq_ops +EXPORT_SYMBOL vmlinux 0x77230187 neigh_changeaddr +EXPORT_SYMBOL vmlinux 0x77247c5e ap_bus_force_rescan +EXPORT_SYMBOL vmlinux 0x7732159c free_irq_cpu_rmap +EXPORT_SYMBOL vmlinux 0x77358855 iomem_resource +EXPORT_SYMBOL vmlinux 0x774b02fb kfree_skb_partial +EXPORT_SYMBOL vmlinux 0x77820677 kill_pgrp +EXPORT_SYMBOL vmlinux 0x7786a402 dma_alloc_attrs +EXPORT_SYMBOL vmlinux 0x7788bc3a vm_iomap_memory +EXPORT_SYMBOL vmlinux 0x7798a1a3 csum_and_copy_to_iter +EXPORT_SYMBOL vmlinux 0x779a18af kstrtoll +EXPORT_SYMBOL vmlinux 0x77b61a37 reuseport_attach_prog +EXPORT_SYMBOL vmlinux 0x77bc13a0 strim +EXPORT_SYMBOL vmlinux 0x77d019fb __mutex_init +EXPORT_SYMBOL vmlinux 0x77de7173 xfrm6_rcv_spi +EXPORT_SYMBOL vmlinux 0x77e9eb37 aes_encrypt +EXPORT_SYMBOL vmlinux 0x77fc9d40 radix_tree_tag_clear +EXPORT_SYMBOL vmlinux 0x7807f0f8 schedule_timeout_idle +EXPORT_SYMBOL vmlinux 0x780ff832 xp_dma_sync_for_device_slow +EXPORT_SYMBOL vmlinux 0x7815af0b xfrm_lookup_with_ifid +EXPORT_SYMBOL vmlinux 0x7817c595 raw3270_request_alloc +EXPORT_SYMBOL vmlinux 0x7819aea9 __kmalloc_node +EXPORT_SYMBOL vmlinux 0x782acba5 crc_t10dif +EXPORT_SYMBOL vmlinux 0x784d1a82 kmem_cache_create +EXPORT_SYMBOL vmlinux 0x7874e213 dev_uc_add_excl +EXPORT_SYMBOL vmlinux 0x787fed8e __kfree_skb +EXPORT_SYMBOL vmlinux 0x7880c781 dm_kcopyd_prepare_callback +EXPORT_SYMBOL vmlinux 0x788c3b7e dentry_path_raw +EXPORT_SYMBOL vmlinux 0x789affb1 frontswap_tmem_exclusive_gets +EXPORT_SYMBOL vmlinux 0x789f8541 param_ops_bool +EXPORT_SYMBOL vmlinux 0x78a0e487 udplite_table +EXPORT_SYMBOL vmlinux 0x78a16f48 aes_decrypt +EXPORT_SYMBOL vmlinux 0x78a7e026 flow_rule_match_basic +EXPORT_SYMBOL vmlinux 0x78bf7405 register_service_level +EXPORT_SYMBOL vmlinux 0x78c647c3 ww_mutex_lock_interruptible +EXPORT_SYMBOL vmlinux 0x78deaa88 dma_fence_match_context +EXPORT_SYMBOL vmlinux 0x78df6bd7 no_pci_devices +EXPORT_SYMBOL vmlinux 0x78ed7423 mempool_create_node +EXPORT_SYMBOL vmlinux 0x78ee1f93 skb_checksum +EXPORT_SYMBOL vmlinux 0x790acb90 flow_block_cb_lookup +EXPORT_SYMBOL vmlinux 0x792d7f0f down +EXPORT_SYMBOL vmlinux 0x79575a5b skb_csum_hwoffload_help +EXPORT_SYMBOL vmlinux 0x796c10f0 cont_write_begin +EXPORT_SYMBOL vmlinux 0x797b56c5 netpoll_cleanup +EXPORT_SYMBOL vmlinux 0x79904fa8 __sb_end_write +EXPORT_SYMBOL vmlinux 0x79949fe4 inet_frag_reasm_prepare +EXPORT_SYMBOL vmlinux 0x79aa04a2 get_random_bytes +EXPORT_SYMBOL vmlinux 0x79de8d15 iov_iter_alignment +EXPORT_SYMBOL vmlinux 0x79ed36b7 cdrom_release +EXPORT_SYMBOL vmlinux 0x79ff586c gen_pool_for_each_chunk +EXPORT_SYMBOL vmlinux 0x7a09a064 seg6_hmac_compute +EXPORT_SYMBOL vmlinux 0x7a1bcd59 gf128mul_x8_ble +EXPORT_SYMBOL vmlinux 0x7a1c4c24 __skb_checksum_complete +EXPORT_SYMBOL vmlinux 0x7a4497db kzfree +EXPORT_SYMBOL vmlinux 0x7a4fa208 ccw_device_dma_free +EXPORT_SYMBOL vmlinux 0x7a5d9a71 ZSTD_DStreamWorkspaceBound +EXPORT_SYMBOL vmlinux 0x7a63f89e padata_stop +EXPORT_SYMBOL vmlinux 0x7a657b47 __generic_file_fsync +EXPORT_SYMBOL vmlinux 0x7a65cd89 blk_queue_update_dma_alignment +EXPORT_SYMBOL vmlinux 0x7a7d60e6 iucv_register +EXPORT_SYMBOL vmlinux 0x7a95e5ae do_settimeofday64 +EXPORT_SYMBOL vmlinux 0x7a979099 flow_rule_match_ip +EXPORT_SYMBOL vmlinux 0x7a9b37e8 blk_start_plug +EXPORT_SYMBOL vmlinux 0x7aa1756e kvfree +EXPORT_SYMBOL vmlinux 0x7ab88a45 system_freezing_cnt +EXPORT_SYMBOL vmlinux 0x7ac4b8a5 hdmi_infoframe_unpack +EXPORT_SYMBOL vmlinux 0x7ace8939 __sk_receive_skb +EXPORT_SYMBOL vmlinux 0x7ad050b9 qid_lt +EXPORT_SYMBOL vmlinux 0x7ad5ab67 tcp_gro_complete +EXPORT_SYMBOL vmlinux 0x7adc0fbf rb_replace_node_rcu +EXPORT_SYMBOL vmlinux 0x7b0192da kstrtou16 +EXPORT_SYMBOL vmlinux 0x7b1fdf9b udp_sk_rx_dst_set +EXPORT_SYMBOL vmlinux 0x7b3343d3 __page_cache_alloc +EXPORT_SYMBOL vmlinux 0x7b5a7137 strncat +EXPORT_SYMBOL vmlinux 0x7b5ace4c gen_pool_first_fit_align +EXPORT_SYMBOL vmlinux 0x7b5b8f31 sha256_update +EXPORT_SYMBOL vmlinux 0x7b6462f9 dst_init +EXPORT_SYMBOL vmlinux 0x7b6a8047 kobject_del +EXPORT_SYMBOL vmlinux 0x7b80c85c dget_parent +EXPORT_SYMBOL vmlinux 0x7b85e020 __hw_addr_ref_sync_dev +EXPORT_SYMBOL vmlinux 0x7b86c9b9 scsi_cmd_blk_ioctl +EXPORT_SYMBOL vmlinux 0x7b98190b string_escape_mem_ascii +EXPORT_SYMBOL vmlinux 0x7badc60f proto_unregister +EXPORT_SYMBOL vmlinux 0x7bb018d2 pci_write_config_word +EXPORT_SYMBOL vmlinux 0x7bbabc84 __hsiphash_aligned +EXPORT_SYMBOL vmlinux 0x7bbccd05 nr_node_ids +EXPORT_SYMBOL vmlinux 0x7bca7d21 unregister_mii_timestamper +EXPORT_SYMBOL vmlinux 0x7bd7dfd0 ap_test_config_usage_domain +EXPORT_SYMBOL vmlinux 0x7bd8a477 __dec_zone_page_state +EXPORT_SYMBOL vmlinux 0x7be75856 pci_bus_read_dev_vendor_id +EXPORT_SYMBOL vmlinux 0x7bf1907e rtnl_kfree_skbs +EXPORT_SYMBOL vmlinux 0x7c173634 __bitmap_complement +EXPORT_SYMBOL vmlinux 0x7c1a964d sock_kzfree_s +EXPORT_SYMBOL vmlinux 0x7c385047 get_bitmap_from_slot +EXPORT_SYMBOL vmlinux 0x7c3a352d dev_addr_init +EXPORT_SYMBOL vmlinux 0x7c5d4a3a sclp_reactivate +EXPORT_SYMBOL vmlinux 0x7c70539a simple_write_begin +EXPORT_SYMBOL vmlinux 0x7c71d553 sg_miter_next +EXPORT_SYMBOL vmlinux 0x7c7add70 netpoll_poll_disable +EXPORT_SYMBOL vmlinux 0x7c8de480 tty_hung_up_p +EXPORT_SYMBOL vmlinux 0x7c9ca58f __sg_page_iter_next +EXPORT_SYMBOL vmlinux 0x7cb0c5fb ip_mc_check_igmp +EXPORT_SYMBOL vmlinux 0x7cb139a4 ipv6_chk_addr +EXPORT_SYMBOL vmlinux 0x7cb1aea1 devlink_dpipe_header_ethernet +EXPORT_SYMBOL vmlinux 0x7cc44788 dump_emit +EXPORT_SYMBOL vmlinux 0x7cd865c5 pci_find_bus +EXPORT_SYMBOL vmlinux 0x7ce18c9f from_kqid +EXPORT_SYMBOL vmlinux 0x7cf174bc make_kprojid +EXPORT_SYMBOL vmlinux 0x7cfe368d net_dim_get_def_tx_moderation +EXPORT_SYMBOL vmlinux 0x7d0db45c jiffies_to_clock_t +EXPORT_SYMBOL vmlinux 0x7d1d64ab ccw_device_tm_start_timeout +EXPORT_SYMBOL vmlinux 0x7d4b176a netlbl_catmap_setbit +EXPORT_SYMBOL vmlinux 0x7d6b5562 xfrm_state_lookup_byspi +EXPORT_SYMBOL vmlinux 0x7d73c0d8 register_netdevice_notifier_dev_net +EXPORT_SYMBOL vmlinux 0x7d806e54 __scsi_print_sense +EXPORT_SYMBOL vmlinux 0x7d99cba9 seq_put_decimal_ull +EXPORT_SYMBOL vmlinux 0x7da78dcb __vfs_removexattr +EXPORT_SYMBOL vmlinux 0x7daece67 quota_send_warning +EXPORT_SYMBOL vmlinux 0x7db71bfe inet_gro_receive +EXPORT_SYMBOL vmlinux 0x7dbeaa1d unix_get_socket +EXPORT_SYMBOL vmlinux 0x7dc1c11d inet_proto_csum_replace4 +EXPORT_SYMBOL vmlinux 0x7dc57271 napi_disable +EXPORT_SYMBOL vmlinux 0x7dd2c3ad dev_uc_add +EXPORT_SYMBOL vmlinux 0x7ddd0fe4 kobject_set_name +EXPORT_SYMBOL vmlinux 0x7deff673 dm_consume_args +EXPORT_SYMBOL vmlinux 0x7df4a3ac dma_direct_sync_single_for_cpu +EXPORT_SYMBOL vmlinux 0x7df64738 xp_set_rxq_info +EXPORT_SYMBOL vmlinux 0x7e05f738 xfrm_state_walk +EXPORT_SYMBOL vmlinux 0x7e0c2674 xfrm_trans_queue_net +EXPORT_SYMBOL vmlinux 0x7e305de4 param_get_bool +EXPORT_SYMBOL vmlinux 0x7e3191f6 try_to_del_timer_sync +EXPORT_SYMBOL vmlinux 0x7e5299c2 kthread_create_worker_on_cpu +EXPORT_SYMBOL vmlinux 0x7e597fb9 mmput_async +EXPORT_SYMBOL vmlinux 0x7e623e9b dst_release_immediate +EXPORT_SYMBOL vmlinux 0x7e6d9426 tcp_close +EXPORT_SYMBOL vmlinux 0x7e73eae1 skb_trim +EXPORT_SYMBOL vmlinux 0x7e821ba1 crc_ccitt +EXPORT_SYMBOL vmlinux 0x7e83df43 eth_header_parse_protocol +EXPORT_SYMBOL vmlinux 0x7ec4eed1 tty_throttle +EXPORT_SYMBOL vmlinux 0x7ec77546 dm_mq_kick_requeue_list +EXPORT_SYMBOL vmlinux 0x7eee7ff8 nvm_submit_io +EXPORT_SYMBOL vmlinux 0x7ef42d6f flow_rule_alloc +EXPORT_SYMBOL vmlinux 0x7ef77e7a __neigh_for_each_release +EXPORT_SYMBOL vmlinux 0x7ef784f2 rename_lock +EXPORT_SYMBOL vmlinux 0x7ef7a262 inet6_ioctl +EXPORT_SYMBOL vmlinux 0x7f01cf66 inet_gso_segment +EXPORT_SYMBOL vmlinux 0x7f02188f __msecs_to_jiffies +EXPORT_SYMBOL vmlinux 0x7f03b6a9 crc_ccitt_table +EXPORT_SYMBOL vmlinux 0x7f0942b7 dev_queue_xmit +EXPORT_SYMBOL vmlinux 0x7f24de73 jiffies_to_usecs +EXPORT_SYMBOL vmlinux 0x7f364eaf fbcon_set_rotate +EXPORT_SYMBOL vmlinux 0x7f52071a net_dim +EXPORT_SYMBOL vmlinux 0x7f543a10 sync_file_get_fence +EXPORT_SYMBOL vmlinux 0x7f5b4fe4 sg_free_table +EXPORT_SYMBOL vmlinux 0x7f698459 forget_all_cached_acls +EXPORT_SYMBOL vmlinux 0x7f7117b3 __alloc_pages_nodemask +EXPORT_SYMBOL vmlinux 0x7f7f7bb4 irq_poll_disable +EXPORT_SYMBOL vmlinux 0x7f9c34d4 get_acl +EXPORT_SYMBOL vmlinux 0x7fa2792c generic_file_write_iter +EXPORT_SYMBOL vmlinux 0x7fbaa88a pci_disable_link_state +EXPORT_SYMBOL vmlinux 0x7fc8aed7 timestamp_truncate +EXPORT_SYMBOL vmlinux 0x7fce420b security_inode_init_security +EXPORT_SYMBOL vmlinux 0x7fe32873 rb_replace_node +EXPORT_SYMBOL vmlinux 0x7ff50f05 tcp_sock_set_user_timeout +EXPORT_SYMBOL vmlinux 0x7ff62623 tcf_idr_create_from_flags +EXPORT_SYMBOL vmlinux 0x80124dae iov_iter_advance +EXPORT_SYMBOL vmlinux 0x8023005b devm_of_iomap +EXPORT_SYMBOL vmlinux 0x80318b30 sg_copy_buffer +EXPORT_SYMBOL vmlinux 0x803ddbb6 __posix_acl_create +EXPORT_SYMBOL vmlinux 0x80439815 flow_block_cb_setup_simple +EXPORT_SYMBOL vmlinux 0x805485ab __kfifo_out_r +EXPORT_SYMBOL vmlinux 0x8067a6c1 blk_alloc_queue +EXPORT_SYMBOL vmlinux 0x806f2c92 tcw_set_tccb +EXPORT_SYMBOL vmlinux 0x807db4fd tcf_block_put_ext +EXPORT_SYMBOL vmlinux 0x80835af0 ip6_frag_next +EXPORT_SYMBOL vmlinux 0x8093aeef pcie_bandwidth_available +EXPORT_SYMBOL vmlinux 0x80be3617 release_pages +EXPORT_SYMBOL vmlinux 0x80c2337d request_firmware_into_buf +EXPORT_SYMBOL vmlinux 0x80c560d5 __dev_direct_xmit +EXPORT_SYMBOL vmlinux 0x80ca5026 _bin2bcd +EXPORT_SYMBOL vmlinux 0x80d68d3e fb_register_client +EXPORT_SYMBOL vmlinux 0x80d7f717 sg_zero_buffer +EXPORT_SYMBOL vmlinux 0x80df9f7c tcp_v4_md5_hash_skb +EXPORT_SYMBOL vmlinux 0x80e1cb92 loop_register_transfer +EXPORT_SYMBOL vmlinux 0x80f58d4e dev_get_by_index_rcu +EXPORT_SYMBOL vmlinux 0x80f83c43 tty_port_block_til_ready +EXPORT_SYMBOL vmlinux 0x8112b3d2 scsi_build_sense_buffer +EXPORT_SYMBOL vmlinux 0x812739e8 simple_unlink +EXPORT_SYMBOL vmlinux 0x8128c039 smsg_register_callback +EXPORT_SYMBOL vmlinux 0x812f78eb xxh64_update +EXPORT_SYMBOL vmlinux 0x815805d4 tcf_exts_dump +EXPORT_SYMBOL vmlinux 0x815b5dd4 match_octal +EXPORT_SYMBOL vmlinux 0x81629a24 dcb_getapp +EXPORT_SYMBOL vmlinux 0x81715bcf eth_mac_addr +EXPORT_SYMBOL vmlinux 0x81776d65 deactivate_locked_super +EXPORT_SYMBOL vmlinux 0x818416e1 scsi_set_sense_information +EXPORT_SYMBOL vmlinux 0x81844c9d vmemdup_user +EXPORT_SYMBOL vmlinux 0x819f6f4f pci_scan_root_bus_bridge +EXPORT_SYMBOL vmlinux 0x81a1b7c4 iov_iter_bvec +EXPORT_SYMBOL vmlinux 0x81d3dd4e inet_select_addr +EXPORT_SYMBOL vmlinux 0x81db6ebb xz_dec_reset +EXPORT_SYMBOL vmlinux 0x81ec93b5 dcb_ieee_getapp_default_prio_mask +EXPORT_SYMBOL vmlinux 0x81fed543 pcie_get_readrq +EXPORT_SYMBOL vmlinux 0x8202fa2b input_inject_event +EXPORT_SYMBOL vmlinux 0x82072614 tasklet_kill +EXPORT_SYMBOL vmlinux 0x8217143c dma_fence_add_callback +EXPORT_SYMBOL vmlinux 0x821b8519 inet_sk_rx_dst_set +EXPORT_SYMBOL vmlinux 0x822746f3 pcim_iomap +EXPORT_SYMBOL vmlinux 0x82519608 __cleancache_init_shared_fs +EXPORT_SYMBOL vmlinux 0x825d5b6b xp_dma_map +EXPORT_SYMBOL vmlinux 0x827412c1 input_set_keycode +EXPORT_SYMBOL vmlinux 0x828062b1 __frontswap_init +EXPORT_SYMBOL vmlinux 0x82aa249d cdrom_number_of_slots +EXPORT_SYMBOL vmlinux 0x82b06d57 scsi_register_interface +EXPORT_SYMBOL vmlinux 0x82b5a8ec pci_lost_interrupt +EXPORT_SYMBOL vmlinux 0x82c2f005 kmalloc_order_trace +EXPORT_SYMBOL vmlinux 0x82c87ad5 nr_online_nodes +EXPORT_SYMBOL vmlinux 0x82cfb5ea devm_request_resource +EXPORT_SYMBOL vmlinux 0x82e15def simple_nosetlease +EXPORT_SYMBOL vmlinux 0x82e73a1d netdev_set_num_tc +EXPORT_SYMBOL vmlinux 0x830c2e35 pci_iomap_range +EXPORT_SYMBOL vmlinux 0x83128388 __tcf_em_tree_match +EXPORT_SYMBOL vmlinux 0x83244661 textsearch_register +EXPORT_SYMBOL vmlinux 0x833a7e71 kernel_sock_ip_overhead +EXPORT_SYMBOL vmlinux 0x83581089 gf128mul_init_4k_lle +EXPORT_SYMBOL vmlinux 0x8378e2a2 dma_direct_sync_sg_for_device +EXPORT_SYMBOL vmlinux 0x837b7b09 __dynamic_pr_debug +EXPORT_SYMBOL vmlinux 0x838d2bc8 siphash_3u32 +EXPORT_SYMBOL vmlinux 0x839c2252 fscrypt_inherit_context +EXPORT_SYMBOL vmlinux 0x83c52fba xfrm4_protocol_init +EXPORT_SYMBOL vmlinux 0x83c7337b skb_checksum_help +EXPORT_SYMBOL vmlinux 0x83c8fcb5 proc_dointvec_ms_jiffies +EXPORT_SYMBOL vmlinux 0x83e1438d raw3270_request_reset +EXPORT_SYMBOL vmlinux 0x83eaf2b2 wait_for_completion_io_timeout +EXPORT_SYMBOL vmlinux 0x840342c6 sgl_free +EXPORT_SYMBOL vmlinux 0x84109fa9 make_kuid +EXPORT_SYMBOL vmlinux 0x84227cf1 get_task_exe_file +EXPORT_SYMBOL vmlinux 0x8425628d pci_wake_from_d3 +EXPORT_SYMBOL vmlinux 0x843dc3e8 gnet_stats_start_copy_compat +EXPORT_SYMBOL vmlinux 0x843efed0 gen_pool_dma_zalloc_align +EXPORT_SYMBOL vmlinux 0x845c31ba get_user_pages_remote +EXPORT_SYMBOL vmlinux 0x845ed8f5 complete_and_exit +EXPORT_SYMBOL vmlinux 0x84668c0f unregister_nexthop_notifier +EXPORT_SYMBOL vmlinux 0x847bf357 ap_perms_mutex +EXPORT_SYMBOL vmlinux 0x848d22b6 finish_wait +EXPORT_SYMBOL vmlinux 0x84ae3735 fwnode_graph_parse_endpoint +EXPORT_SYMBOL vmlinux 0x84c18f4f ZSTD_decompress_usingDDict +EXPORT_SYMBOL vmlinux 0x84c66a4d __tracepoint_s390_diagnose +EXPORT_SYMBOL vmlinux 0x84d4c8cc crc16 +EXPORT_SYMBOL vmlinux 0x84d69b5a block_write_full_page +EXPORT_SYMBOL vmlinux 0x84fcf689 xfrm6_input_addr +EXPORT_SYMBOL vmlinux 0x85064e35 vfs_create +EXPORT_SYMBOL vmlinux 0x851ee2e2 fb_validate_mode +EXPORT_SYMBOL vmlinux 0x85532eb1 __tracepoint_dma_fence_enable_signal +EXPORT_SYMBOL vmlinux 0x8557d2ec dev_get_iflink +EXPORT_SYMBOL vmlinux 0x855ae16a __dst_destroy_metrics_generic +EXPORT_SYMBOL vmlinux 0x85670f1d rtnl_is_locked +EXPORT_SYMBOL vmlinux 0x856e6cb6 dma_fence_chain_walk +EXPORT_SYMBOL vmlinux 0x85929d1b rtnl_configure_link +EXPORT_SYMBOL vmlinux 0x85a3026f __wake_up_bit +EXPORT_SYMBOL vmlinux 0x85a7af2a register_md_cluster_operations +EXPORT_SYMBOL vmlinux 0x85abc85f strncmp +EXPORT_SYMBOL vmlinux 0x85bd1608 __request_region +EXPORT_SYMBOL vmlinux 0x85c9ad1f __netlink_dump_start +EXPORT_SYMBOL vmlinux 0x85d14264 trace_print_flags_seq +EXPORT_SYMBOL vmlinux 0x85d7cb53 ipv6_skip_exthdr +EXPORT_SYMBOL vmlinux 0x85df9b6c strsep +EXPORT_SYMBOL vmlinux 0x85efc7e0 zero_pfn +EXPORT_SYMBOL vmlinux 0x85eff359 skb_flow_dissect_meta +EXPORT_SYMBOL vmlinux 0x85f2b405 dev_remove_pack +EXPORT_SYMBOL vmlinux 0x86081758 writeback_inodes_sb +EXPORT_SYMBOL vmlinux 0x860b21ef simple_pin_fs +EXPORT_SYMBOL vmlinux 0x86237388 arch_read_lock_wait +EXPORT_SYMBOL vmlinux 0x863a276a color_table +EXPORT_SYMBOL vmlinux 0x864d24c1 xfrm_trans_queue +EXPORT_SYMBOL vmlinux 0x865029ac __hw_addr_sync +EXPORT_SYMBOL vmlinux 0x867af304 ip6_dst_hoplimit +EXPORT_SYMBOL vmlinux 0x86838a09 prepare_to_wait +EXPORT_SYMBOL vmlinux 0x8689d3f6 ZSTD_decompressBlock +EXPORT_SYMBOL vmlinux 0x868acba5 get_options +EXPORT_SYMBOL vmlinux 0x86b25ff7 raw3270_request_set_idal +EXPORT_SYMBOL vmlinux 0x86c4cf8d scsi_report_opcode +EXPORT_SYMBOL vmlinux 0x86c73aed _copy_from_iter_nocache +EXPORT_SYMBOL vmlinux 0x86ced7dd tcf_block_get +EXPORT_SYMBOL vmlinux 0x86d52ba5 lookup_constant +EXPORT_SYMBOL vmlinux 0x86e3b369 scsi_cmd_ioctl +EXPORT_SYMBOL vmlinux 0x86fb9b05 bitmap_parse_user +EXPORT_SYMBOL vmlinux 0x86fbce61 mutex_trylock +EXPORT_SYMBOL vmlinux 0x870bab9e utf8ncursor +EXPORT_SYMBOL vmlinux 0x870f929c sync_blockdev +EXPORT_SYMBOL vmlinux 0x8721db1f generic_read_dir +EXPORT_SYMBOL vmlinux 0x874a7442 fib_default_rule_add +EXPORT_SYMBOL vmlinux 0x874d6dcf dev_emerg_hash +EXPORT_SYMBOL vmlinux 0x8761c87b rps_needed +EXPORT_SYMBOL vmlinux 0x87638396 scsi_remove_target +EXPORT_SYMBOL vmlinux 0x877f1dc6 peernet2id +EXPORT_SYMBOL vmlinux 0x878bdd11 configfs_unregister_group +EXPORT_SYMBOL vmlinux 0x87a94858 request_firmware +EXPORT_SYMBOL vmlinux 0x87ae2605 get_tree_single +EXPORT_SYMBOL vmlinux 0x87af4bf5 dma_supported +EXPORT_SYMBOL vmlinux 0x87b8798d sg_next +EXPORT_SYMBOL vmlinux 0x87b907d4 add_to_pipe +EXPORT_SYMBOL vmlinux 0x87c9369b cdrom_mode_select +EXPORT_SYMBOL vmlinux 0x87dbe8c1 inet_add_offload +EXPORT_SYMBOL vmlinux 0x87fa1f46 blk_queue_logical_block_size +EXPORT_SYMBOL vmlinux 0x8824f429 generic_file_splice_read +EXPORT_SYMBOL vmlinux 0x8833bc7e __kfifo_dma_out_finish_r +EXPORT_SYMBOL vmlinux 0x883ef038 jbd2_trans_will_send_data_barrier +EXPORT_SYMBOL vmlinux 0x883f9805 fs_param_is_string +EXPORT_SYMBOL vmlinux 0x88405666 inet_bind +EXPORT_SYMBOL vmlinux 0x8845d89a __kmalloc_track_caller +EXPORT_SYMBOL vmlinux 0x886b1e51 kstrtos8_from_user +EXPORT_SYMBOL vmlinux 0x88822d38 unregister_blocking_lsm_notifier +EXPORT_SYMBOL vmlinux 0x889f073f input_unregister_device +EXPORT_SYMBOL vmlinux 0x88ae4153 proc_mkdir_mode +EXPORT_SYMBOL vmlinux 0x88bca366 begin_new_exec +EXPORT_SYMBOL vmlinux 0x88c00b57 dev_pick_tx_zero +EXPORT_SYMBOL vmlinux 0x88db9f48 __check_object_size +EXPORT_SYMBOL vmlinux 0x88e05482 vfs_clone_file_range +EXPORT_SYMBOL vmlinux 0x88e1d0f0 page_frag_free +EXPORT_SYMBOL vmlinux 0x890b2c1e dm_put_table_device +EXPORT_SYMBOL vmlinux 0x891038c3 call_fib_notifiers +EXPORT_SYMBOL vmlinux 0x89181ae3 __vfs_setxattr +EXPORT_SYMBOL vmlinux 0x89262ab6 pcie_relaxed_ordering_enabled +EXPORT_SYMBOL vmlinux 0x893b7e9a ipv6_chk_prefix +EXPORT_SYMBOL vmlinux 0x893eb0a1 pci_write_config_byte +EXPORT_SYMBOL vmlinux 0x8950d5df dma_set_mask +EXPORT_SYMBOL vmlinux 0x895a4204 sk_stream_kill_queues +EXPORT_SYMBOL vmlinux 0x89621b96 __genradix_iter_peek +EXPORT_SYMBOL vmlinux 0x89a95fb1 dev_vprintk_emit +EXPORT_SYMBOL vmlinux 0x89b6d62e nf_register_queue_handler +EXPORT_SYMBOL vmlinux 0x89b9a76a dma_resv_init +EXPORT_SYMBOL vmlinux 0x89bec898 bio_integrity_trim +EXPORT_SYMBOL vmlinux 0x89c39a74 netlink_rcv_skb +EXPORT_SYMBOL vmlinux 0x89c7f6cb poll_freewait +EXPORT_SYMBOL vmlinux 0x89d06f48 netdev_boot_setup_check +EXPORT_SYMBOL vmlinux 0x89ec6ecb pci_bus_read_config_byte +EXPORT_SYMBOL vmlinux 0x89edd037 sb_set_blocksize +EXPORT_SYMBOL vmlinux 0x8a3d07e5 start_tty +EXPORT_SYMBOL vmlinux 0x8a4210c7 skb_flow_dissect_tunnel_info +EXPORT_SYMBOL vmlinux 0x8a66ab61 component_match_add_release +EXPORT_SYMBOL vmlinux 0x8a7d1c31 high_memory +EXPORT_SYMBOL vmlinux 0x8a7e83c2 zpool_register_driver +EXPORT_SYMBOL vmlinux 0x8a8c4e0a udp_lib_rehash +EXPORT_SYMBOL vmlinux 0x8a948f27 __nla_parse +EXPORT_SYMBOL vmlinux 0x8a96a453 debug_sprintf_view +EXPORT_SYMBOL vmlinux 0x8a994518 skb_seq_read +EXPORT_SYMBOL vmlinux 0x8a99a016 mempool_free_slab +EXPORT_SYMBOL vmlinux 0x8ac3334b net_dim_get_def_rx_moderation +EXPORT_SYMBOL vmlinux 0x8af00d98 debug_register_mode +EXPORT_SYMBOL vmlinux 0x8afba4b6 nobh_write_end +EXPORT_SYMBOL vmlinux 0x8b0088d1 LZ4_decompress_safe_usingDict +EXPORT_SYMBOL vmlinux 0x8b3cb02f inet6_csk_route_req +EXPORT_SYMBOL vmlinux 0x8b3e6927 netdev_class_create_file_ns +EXPORT_SYMBOL vmlinux 0x8b55fd4f hdmi_spd_infoframe_pack_only +EXPORT_SYMBOL vmlinux 0x8b618d08 overflowuid +EXPORT_SYMBOL vmlinux 0x8b8059bd in_group_p +EXPORT_SYMBOL vmlinux 0x8b8bd77f neigh_seq_next +EXPORT_SYMBOL vmlinux 0x8b910be2 errseq_sample +EXPORT_SYMBOL vmlinux 0x8b9ea582 ZSTD_copyDCtx +EXPORT_SYMBOL vmlinux 0x8bac3d69 write_one_page +EXPORT_SYMBOL vmlinux 0x8bae0300 unlock_rename +EXPORT_SYMBOL vmlinux 0x8bc124de from_kgid +EXPORT_SYMBOL vmlinux 0x8bd3beca nf_log_unregister +EXPORT_SYMBOL vmlinux 0x8bf63f0b netif_set_xps_queue +EXPORT_SYMBOL vmlinux 0x8bffe234 mntput +EXPORT_SYMBOL vmlinux 0x8c0c8730 dump_align +EXPORT_SYMBOL vmlinux 0x8c0e0da5 ip6_fraglist_prepare +EXPORT_SYMBOL vmlinux 0x8c1cb972 simple_open +EXPORT_SYMBOL vmlinux 0x8c431c29 proc_create +EXPORT_SYMBOL vmlinux 0x8c5524a0 pneigh_enqueue +EXPORT_SYMBOL vmlinux 0x8c5fb6e2 mempool_init_node +EXPORT_SYMBOL vmlinux 0x8c61a1b6 get_tree_bdev +EXPORT_SYMBOL vmlinux 0x8c6592fc hdmi_avi_infoframe_pack_only +EXPORT_SYMBOL vmlinux 0x8c6bf651 flow_block_cb_is_busy +EXPORT_SYMBOL vmlinux 0x8c875be0 tcw_init +EXPORT_SYMBOL vmlinux 0x8c9e7697 generic_fillattr +EXPORT_SYMBOL vmlinux 0x8cb062a8 iucv_message_reply +EXPORT_SYMBOL vmlinux 0x8cb28711 generic_ro_fops +EXPORT_SYMBOL vmlinux 0x8cb544df __tracepoint_kmalloc +EXPORT_SYMBOL vmlinux 0x8cba889c iov_iter_revert +EXPORT_SYMBOL vmlinux 0x8cd293b5 cond_set_guest_storage_key +EXPORT_SYMBOL vmlinux 0x8cecd5b4 inode_dio_wait +EXPORT_SYMBOL vmlinux 0x8cedf314 memory_cgrp_subsys +EXPORT_SYMBOL vmlinux 0x8cf90a84 scsi_device_set_state +EXPORT_SYMBOL vmlinux 0x8cfdfc2c raw_copy_to_user +EXPORT_SYMBOL vmlinux 0x8d001091 blk_integrity_compare +EXPORT_SYMBOL vmlinux 0x8d46a251 simple_transaction_set +EXPORT_SYMBOL vmlinux 0x8d4c78f3 locks_copy_lock +EXPORT_SYMBOL vmlinux 0x8d4f38af security_skb_classify_flow +EXPORT_SYMBOL vmlinux 0x8d55bb8a qid_eq +EXPORT_SYMBOL vmlinux 0x8d73278e hex_asc_upper +EXPORT_SYMBOL vmlinux 0x8d785bb1 __cleancache_init_fs +EXPORT_SYMBOL vmlinux 0x8da1d10f brioctl_set +EXPORT_SYMBOL vmlinux 0x8daadad2 inet_dgram_ops +EXPORT_SYMBOL vmlinux 0x8db76006 netif_carrier_on +EXPORT_SYMBOL vmlinux 0x8ddd8aad schedule_timeout +EXPORT_SYMBOL vmlinux 0x8df9dd10 guid_null +EXPORT_SYMBOL vmlinux 0x8dfe7138 setup_new_exec +EXPORT_SYMBOL vmlinux 0x8dff4b79 ipv6_dev_mc_inc +EXPORT_SYMBOL vmlinux 0x8e2ca334 netif_napi_del +EXPORT_SYMBOL vmlinux 0x8e34fc8b netif_carrier_off +EXPORT_SYMBOL vmlinux 0x8e3f59ba pci_enable_device +EXPORT_SYMBOL vmlinux 0x8e59d599 pci_scan_single_device +EXPORT_SYMBOL vmlinux 0x8e5a5d60 qdisc_watchdog_schedule_range_ns +EXPORT_SYMBOL vmlinux 0x8e80e736 generic_error_remove_page +EXPORT_SYMBOL vmlinux 0x8e93bd24 security_secctx_to_secid +EXPORT_SYMBOL vmlinux 0x8e9eab61 check_zeroed_user +EXPORT_SYMBOL vmlinux 0x8ea01d44 nf_hook_slow +EXPORT_SYMBOL vmlinux 0x8eb2fe91 jbd2_journal_check_used_features +EXPORT_SYMBOL vmlinux 0x8eb5a401 xfrm_replay_seqhi +EXPORT_SYMBOL vmlinux 0x8ec7f250 dma_fence_free +EXPORT_SYMBOL vmlinux 0x8f00f894 kill_litter_super +EXPORT_SYMBOL vmlinux 0x8f43a55a file_write_and_wait_range +EXPORT_SYMBOL vmlinux 0x8f4dc669 dev_uc_init +EXPORT_SYMBOL vmlinux 0x8f636d23 kstrtol_from_user +EXPORT_SYMBOL vmlinux 0x8f6e1129 ip6_xmit +EXPORT_SYMBOL vmlinux 0x8f6f5882 sock_alloc_file +EXPORT_SYMBOL vmlinux 0x8f96fdf4 prepare_to_wait_event +EXPORT_SYMBOL vmlinux 0x8f996a30 ethtool_convert_legacy_u32_to_link_mode +EXPORT_SYMBOL vmlinux 0x8fa03af3 fuse_dequeue_forget +EXPORT_SYMBOL vmlinux 0x8fa25973 send_sig_mceerr +EXPORT_SYMBOL vmlinux 0x8fcc3bfe pci_bus_type +EXPORT_SYMBOL vmlinux 0x8ff2371d cdev_alloc +EXPORT_SYMBOL vmlinux 0x8ff89ed0 seg6_hmac_exit +EXPORT_SYMBOL vmlinux 0x8ffbdba9 blk_limits_io_min +EXPORT_SYMBOL vmlinux 0x9029cd4e bd_abort_claiming +EXPORT_SYMBOL vmlinux 0x902ec785 wait_for_completion_interruptible_timeout +EXPORT_SYMBOL vmlinux 0x9054ee54 ethtool_intersect_link_masks +EXPORT_SYMBOL vmlinux 0x9067d150 genlmsg_put +EXPORT_SYMBOL vmlinux 0x90827927 skb_try_coalesce +EXPORT_SYMBOL vmlinux 0x90a1d5d5 audit_log_start +EXPORT_SYMBOL vmlinux 0x90ab22b9 put_fs_context +EXPORT_SYMBOL vmlinux 0x90aedbe4 inode_permission +EXPORT_SYMBOL vmlinux 0x90c58f2e _dev_err +EXPORT_SYMBOL vmlinux 0x90d4cf1e skb_flow_dissect_ct +EXPORT_SYMBOL vmlinux 0x90e12690 generic_block_bmap +EXPORT_SYMBOL vmlinux 0x90f155f8 iterate_supers_type +EXPORT_SYMBOL vmlinux 0x910c7a0c alloc_pages_exact +EXPORT_SYMBOL vmlinux 0x9111a6c0 dma_direct_map_resource +EXPORT_SYMBOL vmlinux 0x9116b417 save_fpu_regs +EXPORT_SYMBOL vmlinux 0x912778e9 pci_alloc_host_bridge +EXPORT_SYMBOL vmlinux 0x913f852e qdisc_offload_dump_helper +EXPORT_SYMBOL vmlinux 0x9190eedc __dquot_transfer +EXPORT_SYMBOL vmlinux 0x919c43c7 mutex_unlock +EXPORT_SYMBOL vmlinux 0x919c58f3 __clzsi2 +EXPORT_SYMBOL vmlinux 0x91a7b1da qdisc_class_hash_remove +EXPORT_SYMBOL vmlinux 0x91b68a74 generic_write_checks +EXPORT_SYMBOL vmlinux 0x91c00dea raw3270_del_view +EXPORT_SYMBOL vmlinux 0x91e0aa6d always_delete_dentry +EXPORT_SYMBOL vmlinux 0x9201fa0d seg6_hmac_validate_skb +EXPORT_SYMBOL vmlinux 0x9208e082 kern_path +EXPORT_SYMBOL vmlinux 0x921d573d sock_create +EXPORT_SYMBOL vmlinux 0x922f45a6 __bitmap_clear +EXPORT_SYMBOL vmlinux 0x9233b953 tty_do_resize +EXPORT_SYMBOL vmlinux 0x923b17ec bio_list_copy_data +EXPORT_SYMBOL vmlinux 0x924f8a19 ww_mutex_unlock +EXPORT_SYMBOL vmlinux 0x925b8a57 truncate_setsize +EXPORT_SYMBOL vmlinux 0x9261cf69 __dev_get_by_name +EXPORT_SYMBOL vmlinux 0x926da5e3 scsi_eh_prep_cmnd +EXPORT_SYMBOL vmlinux 0x92962f90 jbd2_journal_start_reserved +EXPORT_SYMBOL vmlinux 0x92adbce4 inet_frags_init +EXPORT_SYMBOL vmlinux 0x92ce56d5 kill_pid +EXPORT_SYMBOL vmlinux 0x92d691d1 sync_mapping_buffers +EXPORT_SYMBOL vmlinux 0x92d6ea76 __kfifo_dma_in_prepare_r +EXPORT_SYMBOL vmlinux 0x92d7c4d4 pci_wait_for_pending_transaction +EXPORT_SYMBOL vmlinux 0x92ec510d jiffies64_to_msecs +EXPORT_SYMBOL vmlinux 0x92f3ceb0 __scsi_device_lookup +EXPORT_SYMBOL vmlinux 0x92ff66f4 configfs_register_subsystem +EXPORT_SYMBOL vmlinux 0x92ffd2a4 lock_rename +EXPORT_SYMBOL vmlinux 0x9305bf68 find_next_and_bit +EXPORT_SYMBOL vmlinux 0x9309f675 security_unix_may_send +EXPORT_SYMBOL vmlinux 0x932c2539 atomic_dec_and_mutex_lock +EXPORT_SYMBOL vmlinux 0x932c5948 security_sctp_bind_connect +EXPORT_SYMBOL vmlinux 0x936442a9 debug_exception_common +EXPORT_SYMBOL vmlinux 0x936b820f scsi_get_host_dev +EXPORT_SYMBOL vmlinux 0x936c1d37 skb_checksum_trimmed +EXPORT_SYMBOL vmlinux 0x937733e3 qid_valid +EXPORT_SYMBOL vmlinux 0x939fbeef __sk_mem_schedule +EXPORT_SYMBOL vmlinux 0x93a6e0b2 io_schedule +EXPORT_SYMBOL vmlinux 0x93b316cf kernel_getsockname +EXPORT_SYMBOL vmlinux 0x93b3fc74 register_dcbevent_notifier +EXPORT_SYMBOL vmlinux 0x93bfb7bd down_write_trylock +EXPORT_SYMBOL vmlinux 0x93c1992f nla_put_nohdr +EXPORT_SYMBOL vmlinux 0x93cddacf keyring_search +EXPORT_SYMBOL vmlinux 0x93dcaf4c unregister_netdevice_notifier_dev_net +EXPORT_SYMBOL vmlinux 0x9428f816 dim_turn +EXPORT_SYMBOL vmlinux 0x942a6bab input_unregister_handle +EXPORT_SYMBOL vmlinux 0x942f4c5c iucv_message_reject +EXPORT_SYMBOL vmlinux 0x9431a990 scsi_remove_device +EXPORT_SYMBOL vmlinux 0x943ba256 debug_dflt_header_fn +EXPORT_SYMBOL vmlinux 0x944375db _totalram_pages +EXPORT_SYMBOL vmlinux 0x944a564d is_console_locked +EXPORT_SYMBOL vmlinux 0x945775a5 segment_save +EXPORT_SYMBOL vmlinux 0x94596142 pci_get_subsys +EXPORT_SYMBOL vmlinux 0x9471d277 napi_gro_receive +EXPORT_SYMBOL vmlinux 0x9495ce9a scsi_device_lookup +EXPORT_SYMBOL vmlinux 0x94961283 vunmap +EXPORT_SYMBOL vmlinux 0x94b52d26 __dev_get_by_index +EXPORT_SYMBOL vmlinux 0x94bf03ca utf8_to_utf32 +EXPORT_SYMBOL vmlinux 0x94dc5ef2 update_region +EXPORT_SYMBOL vmlinux 0x94f022ed __inet_hash +EXPORT_SYMBOL vmlinux 0x94f31333 dump_fpu +EXPORT_SYMBOL vmlinux 0x950a87a4 flow_rule_match_icmp +EXPORT_SYMBOL vmlinux 0x950ad8e8 netif_receive_skb_core +EXPORT_SYMBOL vmlinux 0x950d63e7 mini_qdisc_pair_init +EXPORT_SYMBOL vmlinux 0x9514151a _mcount +EXPORT_SYMBOL vmlinux 0x951a2dfe iucv_path_accept +EXPORT_SYMBOL vmlinux 0x951f7f3d sock_alloc_send_pskb +EXPORT_SYMBOL vmlinux 0x953adc3b dma_fence_get_status +EXPORT_SYMBOL vmlinux 0x9542faf7 sclp_unregister +EXPORT_SYMBOL vmlinux 0x9545af6d tasklet_init +EXPORT_SYMBOL vmlinux 0x954cef6f init_on_alloc +EXPORT_SYMBOL vmlinux 0x954f099c idr_preload +EXPORT_SYMBOL vmlinux 0x954f1de7 ccw_driver_unregister +EXPORT_SYMBOL vmlinux 0x9562dfb6 disk_stack_limits +EXPORT_SYMBOL vmlinux 0x956c90f1 vfs_statx_fd +EXPORT_SYMBOL vmlinux 0x956efd33 framebuffer_release +EXPORT_SYMBOL vmlinux 0x9573c36d register_sysctl +EXPORT_SYMBOL vmlinux 0x9581ea62 kstrtouint_from_user +EXPORT_SYMBOL vmlinux 0x959158d7 register_key_type +EXPORT_SYMBOL vmlinux 0x95a06eb1 dma_fence_default_wait +EXPORT_SYMBOL vmlinux 0x95b38ccc resource_list_create_entry +EXPORT_SYMBOL vmlinux 0x95c94d8c xsk_umem_consume_tx_done +EXPORT_SYMBOL vmlinux 0x95ceb864 key_update +EXPORT_SYMBOL vmlinux 0x95db3712 gro_cells_init +EXPORT_SYMBOL vmlinux 0x95e63ced prot_virt_host +EXPORT_SYMBOL vmlinux 0x95f18add nf_register_net_hooks +EXPORT_SYMBOL vmlinux 0x95f55427 seq_printf +EXPORT_SYMBOL vmlinux 0x95f5a66c __napi_schedule_irqoff +EXPORT_SYMBOL vmlinux 0x95fcd441 __nla_put_nohdr +EXPORT_SYMBOL vmlinux 0x960f2ad5 scsi_free_host_dev +EXPORT_SYMBOL vmlinux 0x96326079 gnet_stats_copy_basic +EXPORT_SYMBOL vmlinux 0x9632c227 lookup_bdev +EXPORT_SYMBOL vmlinux 0x96404e39 itcw_set_data +EXPORT_SYMBOL vmlinux 0x9674236c module_refcount +EXPORT_SYMBOL vmlinux 0x96749f20 down_read_killable +EXPORT_SYMBOL vmlinux 0x968e8c38 tty_unthrottle +EXPORT_SYMBOL vmlinux 0x9690e715 fs_context_for_submount +EXPORT_SYMBOL vmlinux 0x969fbe13 flush_signals +EXPORT_SYMBOL vmlinux 0x96a55328 fifo_set_limit +EXPORT_SYMBOL vmlinux 0x96b1cc80 tty_unregister_driver +EXPORT_SYMBOL vmlinux 0x96b8352d tcp_connect +EXPORT_SYMBOL vmlinux 0x96bdcb26 __task_pid_nr_ns +EXPORT_SYMBOL vmlinux 0x96c17136 fb_var_to_videomode +EXPORT_SYMBOL vmlinux 0x96cd2b04 scsi_sense_key_string +EXPORT_SYMBOL vmlinux 0x96d20258 tcp_sock_set_nodelay +EXPORT_SYMBOL vmlinux 0x96da3e40 __module_get +EXPORT_SYMBOL vmlinux 0x96e0c1b6 iucv_bus +EXPORT_SYMBOL vmlinux 0x96fab350 dim_park_on_top +EXPORT_SYMBOL vmlinux 0x9711df72 _copy_to_iter +EXPORT_SYMBOL vmlinux 0x97228cc8 pci_enable_wake +EXPORT_SYMBOL vmlinux 0x972faf8c input_event +EXPORT_SYMBOL vmlinux 0x973427ca key_invalidate +EXPORT_SYMBOL vmlinux 0x973b6552 blk_mq_start_stopped_hw_queues +EXPORT_SYMBOL vmlinux 0x973ce4d5 xfrm_state_free +EXPORT_SYMBOL vmlinux 0x974d0924 __kernel_cpumcf_begin +EXPORT_SYMBOL vmlinux 0x97527c21 xfrm_unregister_type_offload +EXPORT_SYMBOL vmlinux 0x9757badb no_seek_end_llseek_size +EXPORT_SYMBOL vmlinux 0x976019a4 d_obtain_alias +EXPORT_SYMBOL vmlinux 0x97740bf9 tcp_md5_do_del +EXPORT_SYMBOL vmlinux 0x97934ecf del_timer_sync +EXPORT_SYMBOL vmlinux 0x97adb487 utf8s_to_utf16s +EXPORT_SYMBOL vmlinux 0x97b9b859 param_ops_int +EXPORT_SYMBOL vmlinux 0x97bdfa60 scsi_dev_info_remove_list +EXPORT_SYMBOL vmlinux 0x97c070b0 genl_notify +EXPORT_SYMBOL vmlinux 0x97eac67f wait_for_completion_killable_timeout +EXPORT_SYMBOL vmlinux 0x980f65cc xp_can_alloc +EXPORT_SYMBOL vmlinux 0x983fecc9 ndisc_mc_map +EXPORT_SYMBOL vmlinux 0x98761723 tcp_v4_conn_request +EXPORT_SYMBOL vmlinux 0x987b2a7a page_mapping +EXPORT_SYMBOL vmlinux 0x98892463 tc_setup_cb_replace +EXPORT_SYMBOL vmlinux 0x988ad4c8 jbd2_journal_lock_updates +EXPORT_SYMBOL vmlinux 0x98b5c7c2 neigh_lookup_nodev +EXPORT_SYMBOL vmlinux 0x98bf3ff2 __nlmsg_put +EXPORT_SYMBOL vmlinux 0x98c24034 tty_vhangup +EXPORT_SYMBOL vmlinux 0x98c72805 netdev_upper_dev_link +EXPORT_SYMBOL vmlinux 0x98c89ade security_xfrm_state_alloc +EXPORT_SYMBOL vmlinux 0x98ca179e pci_scan_root_bus +EXPORT_SYMBOL vmlinux 0x98d83f0a __SetPageMovable +EXPORT_SYMBOL vmlinux 0x98de1c15 snprintf +EXPORT_SYMBOL vmlinux 0x98e2be88 blk_mq_run_hw_queues +EXPORT_SYMBOL vmlinux 0x98e508ef ignore_console_lock_warning +EXPORT_SYMBOL vmlinux 0x9907e1b1 jbd2_journal_clear_err +EXPORT_SYMBOL vmlinux 0x990930bc genl_unregister_family +EXPORT_SYMBOL vmlinux 0x992548b0 sk_dst_check +EXPORT_SYMBOL vmlinux 0x992fe3a4 iov_iter_npages +EXPORT_SYMBOL vmlinux 0x9937b117 rdmacg_uncharge +EXPORT_SYMBOL vmlinux 0x993a1b7b iov_iter_copy_from_user_atomic +EXPORT_SYMBOL vmlinux 0x9942ec77 itcw_finalize +EXPORT_SYMBOL vmlinux 0x99517682 udp_encap_enable +EXPORT_SYMBOL vmlinux 0x995331aa drop_super_exclusive +EXPORT_SYMBOL vmlinux 0x9997ef37 inet_sk_set_state +EXPORT_SYMBOL vmlinux 0x999af794 mount_nodev +EXPORT_SYMBOL vmlinux 0x999e8297 vfree +EXPORT_SYMBOL vmlinux 0x99b82ff0 iov_iter_zero +EXPORT_SYMBOL vmlinux 0x99ce5a48 kset_unregister +EXPORT_SYMBOL vmlinux 0x99d472b1 net_dim_get_rx_moderation +EXPORT_SYMBOL vmlinux 0x99daa9bf try_offline_node +EXPORT_SYMBOL vmlinux 0x99f33923 compat_import_iovec +EXPORT_SYMBOL vmlinux 0x99f581a6 skb_put +EXPORT_SYMBOL vmlinux 0x99fd9da6 blk_integrity_merge_bio +EXPORT_SYMBOL vmlinux 0x9a0a0055 netpoll_print_options +EXPORT_SYMBOL vmlinux 0x9a19ec50 make_flow_keys_digest +EXPORT_SYMBOL vmlinux 0x9a1dfd65 strpbrk +EXPORT_SYMBOL vmlinux 0x9a26436a unregister_netdevice_notifier_net +EXPORT_SYMBOL vmlinux 0x9a3df2bb ethtool_op_get_link +EXPORT_SYMBOL vmlinux 0x9a4d89bb neigh_proc_dointvec_ms_jiffies +EXPORT_SYMBOL vmlinux 0x9a583306 netlbl_bitmap_walk +EXPORT_SYMBOL vmlinux 0x9a593532 dquot_load_quota_inode +EXPORT_SYMBOL vmlinux 0x9a7376bb ip_getsockopt +EXPORT_SYMBOL vmlinux 0x9a8109f9 fscrypt_ioctl_set_policy +EXPORT_SYMBOL vmlinux 0x9a906daf memscan +EXPORT_SYMBOL vmlinux 0x9a9531e7 __invalidate_device +EXPORT_SYMBOL vmlinux 0x9aaeefce sysctl_nf_log_all_netns +EXPORT_SYMBOL vmlinux 0x9ab6c6bb skb_flow_dissector_init +EXPORT_SYMBOL vmlinux 0x9ad64ecb mount_single +EXPORT_SYMBOL vmlinux 0x9aea7eff ccw_device_is_pathgroup +EXPORT_SYMBOL vmlinux 0x9aeb3209 kern_unmount +EXPORT_SYMBOL vmlinux 0x9af30b96 dquot_operations +EXPORT_SYMBOL vmlinux 0x9b2560b9 gf128mul_init_4k_bbe +EXPORT_SYMBOL vmlinux 0x9b33e0d7 unregister_dcbevent_notifier +EXPORT_SYMBOL vmlinux 0x9b3b4f99 scsi_verify_blk_ioctl +EXPORT_SYMBOL vmlinux 0x9b42ef0f dfltcc_reset +EXPORT_SYMBOL vmlinux 0x9b496b21 posix_acl_alloc +EXPORT_SYMBOL vmlinux 0x9b498082 tcp_v4_mtu_reduced +EXPORT_SYMBOL vmlinux 0x9b61f23e kbd_alloc +EXPORT_SYMBOL vmlinux 0x9b8d07aa strnlen +EXPORT_SYMBOL vmlinux 0x9b99da41 pci_request_selected_regions +EXPORT_SYMBOL vmlinux 0x9ba1bcad xfrm_dev_state_flush +EXPORT_SYMBOL vmlinux 0x9bacead3 __debug_sprintf_event +EXPORT_SYMBOL vmlinux 0x9bbc78c3 sk_stream_wait_connect +EXPORT_SYMBOL vmlinux 0x9bd09d7e pci_request_region +EXPORT_SYMBOL vmlinux 0x9bd2cd1f set_guest_storage_key +EXPORT_SYMBOL vmlinux 0x9be8d0e8 inet6_protos +EXPORT_SYMBOL vmlinux 0x9be98ef5 pipe_unlock +EXPORT_SYMBOL vmlinux 0x9becc435 pci_alloc_dev +EXPORT_SYMBOL vmlinux 0x9bfb38f8 tcf_chain_put_by_act +EXPORT_SYMBOL vmlinux 0x9bfd0338 dcache_readdir +EXPORT_SYMBOL vmlinux 0x9c0821ea vsnprintf +EXPORT_SYMBOL vmlinux 0x9c0a7bf1 register_gifconf +EXPORT_SYMBOL vmlinux 0x9c13c687 capable_wrt_inode_uidgid +EXPORT_SYMBOL vmlinux 0x9c19d5f2 netdev_lower_get_next_private_rcu +EXPORT_SYMBOL vmlinux 0x9c1ab436 dcb_ieee_setapp +EXPORT_SYMBOL vmlinux 0x9c3d5858 tcp_prot +EXPORT_SYMBOL vmlinux 0x9c8fabad raw3270_request_free +EXPORT_SYMBOL vmlinux 0x9c90fce2 tcp_add_backlog +EXPORT_SYMBOL vmlinux 0x9c939396 cred_fscmp +EXPORT_SYMBOL vmlinux 0x9cdc2f70 dev_lstats_read +EXPORT_SYMBOL vmlinux 0x9cdfb3f7 sysctl_fb_tunnels_only_for_init_net +EXPORT_SYMBOL vmlinux 0x9ce02561 scsi_print_sense_hdr +EXPORT_SYMBOL vmlinux 0x9ce38c9f free_inode_nonrcu +EXPORT_SYMBOL vmlinux 0x9d01b0a2 pci_ep_cfs_remove_epc_group +EXPORT_SYMBOL vmlinux 0x9d0684ee proc_symlink +EXPORT_SYMBOL vmlinux 0x9d0d6206 unregister_netdevice_notifier +EXPORT_SYMBOL vmlinux 0x9d2e7707 unregister_sysrq_key +EXPORT_SYMBOL vmlinux 0x9d496abb tcp_v4_do_rcv +EXPORT_SYMBOL vmlinux 0x9d509dca init_opal_dev +EXPORT_SYMBOL vmlinux 0x9d948ca7 neigh_ifdown +EXPORT_SYMBOL vmlinux 0x9d97ab2c audit_log_object_context +EXPORT_SYMBOL vmlinux 0x9d9ccd66 netif_tx_wake_queue +EXPORT_SYMBOL vmlinux 0x9dd88f43 cookie_timestamp_decode +EXPORT_SYMBOL vmlinux 0x9de7ed9f nf_ip_checksum +EXPORT_SYMBOL vmlinux 0x9df81db4 ___ratelimit +EXPORT_SYMBOL vmlinux 0x9e0a5b87 tty_flip_buffer_push +EXPORT_SYMBOL vmlinux 0x9e0c711d vzalloc_node +EXPORT_SYMBOL vmlinux 0x9e0fa5ae hsiphash_3u32 +EXPORT_SYMBOL vmlinux 0x9e13f6f6 gf128mul_lle +EXPORT_SYMBOL vmlinux 0x9e250429 dst_discard_out +EXPORT_SYMBOL vmlinux 0x9e262ab2 napi_complete_done +EXPORT_SYMBOL vmlinux 0x9e3f7be1 __xa_clear_mark +EXPORT_SYMBOL vmlinux 0x9e3ff2d5 radix_tree_gang_lookup_tag +EXPORT_SYMBOL vmlinux 0x9e4faeef dm_io_client_destroy +EXPORT_SYMBOL vmlinux 0x9e5b7244 blkdev_get +EXPORT_SYMBOL vmlinux 0x9e5dc13c skb_prepare_seq_read +EXPORT_SYMBOL vmlinux 0x9e605472 dquot_quotactl_sysfile_ops +EXPORT_SYMBOL vmlinux 0x9e61087b scsi_add_device +EXPORT_SYMBOL vmlinux 0x9e61bb05 set_freezable +EXPORT_SYMBOL vmlinux 0x9e6712a3 block_write_begin +EXPORT_SYMBOL vmlinux 0x9e8fe626 blkdev_fsync +EXPORT_SYMBOL vmlinux 0x9e9eab95 devcgroup_check_permission +EXPORT_SYMBOL vmlinux 0x9e9fdd9d memunmap +EXPORT_SYMBOL vmlinux 0x9eaee72d pci_claim_resource +EXPORT_SYMBOL vmlinux 0x9ebcf389 sock_pfree +EXPORT_SYMBOL vmlinux 0x9ec6ca96 ktime_get_real_ts64 +EXPORT_SYMBOL vmlinux 0x9ed9ec58 dev_loopback_xmit +EXPORT_SYMBOL vmlinux 0x9edff942 nvm_register_tgt_type +EXPORT_SYMBOL vmlinux 0x9ee0d01c reuseport_alloc +EXPORT_SYMBOL vmlinux 0x9ee60cfe seq_release +EXPORT_SYMBOL vmlinux 0x9ef7898e free_buffer_head +EXPORT_SYMBOL vmlinux 0x9f02463a fs_param_is_blockdev +EXPORT_SYMBOL vmlinux 0x9f0c626f filemap_flush +EXPORT_SYMBOL vmlinux 0x9f13e4e4 neigh_parms_alloc +EXPORT_SYMBOL vmlinux 0x9f1e471a netdev_pick_tx +EXPORT_SYMBOL vmlinux 0x9f24b249 inet_csk_reqsk_queue_drop +EXPORT_SYMBOL vmlinux 0x9f305300 blk_get_queue +EXPORT_SYMBOL vmlinux 0x9f46ced8 __sw_hweight64 +EXPORT_SYMBOL vmlinux 0x9f50b770 keyring_restrict +EXPORT_SYMBOL vmlinux 0x9f54ead7 gro_cells_destroy +EXPORT_SYMBOL vmlinux 0x9f5d9393 utf8nagemax +EXPORT_SYMBOL vmlinux 0x9f705c7c bdi_put +EXPORT_SYMBOL vmlinux 0x9f7f06b5 tcp_syn_ack_timeout +EXPORT_SYMBOL vmlinux 0x9f801738 pci_unregister_driver +EXPORT_SYMBOL vmlinux 0x9f86060f __ip_select_ident +EXPORT_SYMBOL vmlinux 0x9f984513 strrchr +EXPORT_SYMBOL vmlinux 0x9fa07a7a vfs_rename +EXPORT_SYMBOL vmlinux 0x9fa7184a cancel_delayed_work_sync +EXPORT_SYMBOL vmlinux 0x9fab59d4 __destroy_inode +EXPORT_SYMBOL vmlinux 0x9fb1d0ed uuid_is_valid +EXPORT_SYMBOL vmlinux 0x9fca0d05 eth_header +EXPORT_SYMBOL vmlinux 0x9fd46c24 inet_rtx_syn_ack +EXPORT_SYMBOL vmlinux 0x9fdecc31 unregister_netdevice_many +EXPORT_SYMBOL vmlinux 0x9fe2b4b8 param_get_byte +EXPORT_SYMBOL vmlinux 0x9feed7ce timer_reduce +EXPORT_SYMBOL vmlinux 0x9ff298fb tty_devnum +EXPORT_SYMBOL vmlinux 0x9ffa3a75 netdev_max_backlog +EXPORT_SYMBOL vmlinux 0xa007268a ip_defrag +EXPORT_SYMBOL vmlinux 0xa009d5fe file_fdatawait_range +EXPORT_SYMBOL vmlinux 0xa00e515d kill_anon_super +EXPORT_SYMBOL vmlinux 0xa0436e98 in6addr_linklocal_allnodes +EXPORT_SYMBOL vmlinux 0xa04f423a udp_prot +EXPORT_SYMBOL vmlinux 0xa054e8ed iucv_unregister +EXPORT_SYMBOL vmlinux 0xa06e587a release_firmware +EXPORT_SYMBOL vmlinux 0xa084749a __bitmap_or +EXPORT_SYMBOL vmlinux 0xa085a951 sock_setsockopt +EXPORT_SYMBOL vmlinux 0xa091b73a task_work_add +EXPORT_SYMBOL vmlinux 0xa095e02e generic_check_addressable +EXPORT_SYMBOL vmlinux 0xa099ee1c simple_rename +EXPORT_SYMBOL vmlinux 0xa09cf93f param_array_ops +EXPORT_SYMBOL vmlinux 0xa0a15b49 smp_call_function_many +EXPORT_SYMBOL vmlinux 0xa0ae1e73 siphash_3u64 +EXPORT_SYMBOL vmlinux 0xa0b04675 vmalloc_32 +EXPORT_SYMBOL vmlinux 0xa0b0d648 devm_alloc_etherdev_mqs +EXPORT_SYMBOL vmlinux 0xa0c31e37 jbd2_journal_begin_ordered_truncate +EXPORT_SYMBOL vmlinux 0xa0c8a7c2 km_state_expired +EXPORT_SYMBOL vmlinux 0xa0d3d560 ksize +EXPORT_SYMBOL vmlinux 0xa0dad88e netdev_adjacent_get_private +EXPORT_SYMBOL vmlinux 0xa0e123e2 pin_user_pages_remote +EXPORT_SYMBOL vmlinux 0xa0eae826 smp_call_function +EXPORT_SYMBOL vmlinux 0xa0ebd14c sysctl_tcp_mem +EXPORT_SYMBOL vmlinux 0xa0fbac79 wake_up_bit +EXPORT_SYMBOL vmlinux 0xa108eb4d sysctl_optmem_max +EXPORT_SYMBOL vmlinux 0xa10a0439 kmalloc_order +EXPORT_SYMBOL vmlinux 0xa116a645 seq_read_iter +EXPORT_SYMBOL vmlinux 0xa120d33c tty_unregister_ldisc +EXPORT_SYMBOL vmlinux 0xa1255d18 ip_sock_set_pktinfo +EXPORT_SYMBOL vmlinux 0xa126c93f __xa_alloc_cyclic +EXPORT_SYMBOL vmlinux 0xa13c9739 do_wait_intr_irq +EXPORT_SYMBOL vmlinux 0xa143bead vfs_dup_fs_context +EXPORT_SYMBOL vmlinux 0xa15b3fc1 fs_param_is_u64 +EXPORT_SYMBOL vmlinux 0xa176d6a0 flow_rule_match_enc_keyid +EXPORT_SYMBOL vmlinux 0xa1898d44 blk_sync_queue +EXPORT_SYMBOL vmlinux 0xa1913e93 nf_register_net_hook +EXPORT_SYMBOL vmlinux 0xa19cceb1 make_bad_inode +EXPORT_SYMBOL vmlinux 0xa1a01601 xfrm_register_type_offload +EXPORT_SYMBOL vmlinux 0xa1a8cc6c crc_ccitt_false +EXPORT_SYMBOL vmlinux 0xa1c76e0a _cond_resched +EXPORT_SYMBOL vmlinux 0xa1c89199 dma_pool_create +EXPORT_SYMBOL vmlinux 0xa1d01f80 ipv6_select_ident +EXPORT_SYMBOL vmlinux 0xa1d03478 flow_indr_dev_register +EXPORT_SYMBOL vmlinux 0xa1d5979b find_first_bit_inv +EXPORT_SYMBOL vmlinux 0xa1e8aa56 key_put +EXPORT_SYMBOL vmlinux 0xa1ec8f1c __kfifo_to_user_r +EXPORT_SYMBOL vmlinux 0xa1f4e674 radix_tree_tag_set +EXPORT_SYMBOL vmlinux 0xa1fee353 tcw_set_tsb +EXPORT_SYMBOL vmlinux 0xa2060911 inet_current_timestamp +EXPORT_SYMBOL vmlinux 0xa21e7f02 dec_node_page_state +EXPORT_SYMBOL vmlinux 0xa223d501 get_disk_and_module +EXPORT_SYMBOL vmlinux 0xa2254ec7 sock_no_sendpage +EXPORT_SYMBOL vmlinux 0xa227e856 mem_cgroup_from_task +EXPORT_SYMBOL vmlinux 0xa22a0a65 inet_sendpage +EXPORT_SYMBOL vmlinux 0xa24f23d8 __request_module +EXPORT_SYMBOL vmlinux 0xa25b90ab utf8byte +EXPORT_SYMBOL vmlinux 0xa263892b fscrypt_fname_free_buffer +EXPORT_SYMBOL vmlinux 0xa2662f2d eth_commit_mac_addr_change +EXPORT_SYMBOL vmlinux 0xa26837f7 touch_buffer +EXPORT_SYMBOL vmlinux 0xa26f2953 dev_set_mac_address +EXPORT_SYMBOL vmlinux 0xa2716c05 udp_sendmsg +EXPORT_SYMBOL vmlinux 0xa2745651 tcp_sendpage +EXPORT_SYMBOL vmlinux 0xa2873661 get_fs_type +EXPORT_SYMBOL vmlinux 0xa28770a6 config_item_init_type_name +EXPORT_SYMBOL vmlinux 0xa28cfcc0 gen_estimator_active +EXPORT_SYMBOL vmlinux 0xa292a73f init_task +EXPORT_SYMBOL vmlinux 0xa2b47531 tcp_v4_send_check +EXPORT_SYMBOL vmlinux 0xa2bc7b3e put_disk +EXPORT_SYMBOL vmlinux 0xa2e2fa7a input_mt_report_slot_state +EXPORT_SYMBOL vmlinux 0xa2e63172 pci_release_resource +EXPORT_SYMBOL vmlinux 0xa2e71d0c key_type_keyring +EXPORT_SYMBOL vmlinux 0xa2fc75e7 trace_print_hex_seq +EXPORT_SYMBOL vmlinux 0xa2fe17a0 jbd2_complete_transaction +EXPORT_SYMBOL vmlinux 0xa3395198 remove_proc_entry +EXPORT_SYMBOL vmlinux 0xa33f7c7c nla_strlcpy +EXPORT_SYMBOL vmlinux 0xa33fffa5 hdmi_drm_infoframe_unpack_only +EXPORT_SYMBOL vmlinux 0xa3434b3b __dev_kfree_skb_any +EXPORT_SYMBOL vmlinux 0xa35ebd80 kernel_sendpage +EXPORT_SYMBOL vmlinux 0xa37e1357 fget_raw +EXPORT_SYMBOL vmlinux 0xa39509b4 fbcon_rotate_ud +EXPORT_SYMBOL vmlinux 0xa39c203e bio_alloc_bioset +EXPORT_SYMBOL vmlinux 0xa3a5be95 memmove +EXPORT_SYMBOL vmlinux 0xa3a787b3 netlink_kernel_release +EXPORT_SYMBOL vmlinux 0xa3ad50bd vmf_insert_mixed_mkwrite +EXPORT_SYMBOL vmlinux 0xa3eb2795 nf_log_trace +EXPORT_SYMBOL vmlinux 0xa3fea172 sha224_final +EXPORT_SYMBOL vmlinux 0xa404aa56 dev_add_offload +EXPORT_SYMBOL vmlinux 0xa4051bf6 LZ4_decompress_safe_continue +EXPORT_SYMBOL vmlinux 0xa40f300e xfrm6_find_1stfragopt +EXPORT_SYMBOL vmlinux 0xa416c8e9 arch_write_lock_wait +EXPORT_SYMBOL vmlinux 0xa424f5c9 cdrom_check_events +EXPORT_SYMBOL vmlinux 0xa42af456 radix_tree_next_chunk +EXPORT_SYMBOL vmlinux 0xa43658c4 remove_watch_from_object +EXPORT_SYMBOL vmlinux 0xa43a3bf9 radix_tree_gang_lookup +EXPORT_SYMBOL vmlinux 0xa441361d framebuffer_alloc +EXPORT_SYMBOL vmlinux 0xa443812f blk_dump_rq_flags +EXPORT_SYMBOL vmlinux 0xa44b520a __scsi_format_command +EXPORT_SYMBOL vmlinux 0xa458396a bio_integrity_prep +EXPORT_SYMBOL vmlinux 0xa45c9018 vfs_link +EXPORT_SYMBOL vmlinux 0xa467ce61 grab_cache_page_write_begin +EXPORT_SYMBOL vmlinux 0xa473dcb8 from_kgid_munged +EXPORT_SYMBOL vmlinux 0xa47cf578 compat_ptr_ioctl +EXPORT_SYMBOL vmlinux 0xa48f8b28 passthru_features_check +EXPORT_SYMBOL vmlinux 0xa492ef7d tcp_read_sock +EXPORT_SYMBOL vmlinux 0xa4a94d26 find_next_bit_le +EXPORT_SYMBOL vmlinux 0xa4abaefb pcim_iounmap +EXPORT_SYMBOL vmlinux 0xa4b428e2 generic_shutdown_super +EXPORT_SYMBOL vmlinux 0xa4e188e7 strscpy +EXPORT_SYMBOL vmlinux 0xa50483fe __ksize +EXPORT_SYMBOL vmlinux 0xa519ef26 param_get_short +EXPORT_SYMBOL vmlinux 0xa51daeb2 fscrypt_free_bounce_page +EXPORT_SYMBOL vmlinux 0xa52ae5a8 radix_tree_replace_slot +EXPORT_SYMBOL vmlinux 0xa53af1ea filemap_page_mkwrite +EXPORT_SYMBOL vmlinux 0xa5526619 rb_insert_color +EXPORT_SYMBOL vmlinux 0xa5607d87 __inode_add_bytes +EXPORT_SYMBOL vmlinux 0xa57bb358 dev_activate +EXPORT_SYMBOL vmlinux 0xa57eecc7 blk_mq_unique_tag +EXPORT_SYMBOL vmlinux 0xa5808745 node_data +EXPORT_SYMBOL vmlinux 0xa59158b0 xa_load +EXPORT_SYMBOL vmlinux 0xa5a8ed0b prepare_to_swait_event +EXPORT_SYMBOL vmlinux 0xa5ad83ee dec_zone_page_state +EXPORT_SYMBOL vmlinux 0xa5bf303d bioset_init +EXPORT_SYMBOL vmlinux 0xa5d2b1cf xp_raw_get_data +EXPORT_SYMBOL vmlinux 0xa5d973c7 sg_alloc_table_from_pages +EXPORT_SYMBOL vmlinux 0xa61ced89 qdisc_put_rtab +EXPORT_SYMBOL vmlinux 0xa65cd44b inc_nlink +EXPORT_SYMBOL vmlinux 0xa66f7c29 pci_disable_device +EXPORT_SYMBOL vmlinux 0xa681fe88 generate_random_uuid +EXPORT_SYMBOL vmlinux 0xa6841fb6 tun_ptr_to_xdp +EXPORT_SYMBOL vmlinux 0xa69a310b kmalloc_caches +EXPORT_SYMBOL vmlinux 0xa6a60f8f posix_acl_to_xattr +EXPORT_SYMBOL vmlinux 0xa6ac4e14 dev_notice_hash +EXPORT_SYMBOL vmlinux 0xa6c47c5d tcp_rcv_state_process +EXPORT_SYMBOL vmlinux 0xa6d582a2 radix_tree_tag_get +EXPORT_SYMBOL vmlinux 0xa6d63ce0 proc_mkdir +EXPORT_SYMBOL vmlinux 0xa6dcb157 nf_hook_slow_list +EXPORT_SYMBOL vmlinux 0xa6e3e9b2 ccw_device_start_timeout_key +EXPORT_SYMBOL vmlinux 0xa70910f5 utf8len +EXPORT_SYMBOL vmlinux 0xa70e185e tcp_splice_read +EXPORT_SYMBOL vmlinux 0xa70ea6d7 ZSTD_DCtxWorkspaceBound +EXPORT_SYMBOL vmlinux 0xa72cd7ce pci_get_class +EXPORT_SYMBOL vmlinux 0xa73e1340 __mod_node_page_state +EXPORT_SYMBOL vmlinux 0xa7416284 get_tree_keyed +EXPORT_SYMBOL vmlinux 0xa74c9877 refcount_dec_and_rtnl_lock +EXPORT_SYMBOL vmlinux 0xa7600c59 kiocb_set_cancel_fn +EXPORT_SYMBOL vmlinux 0xa77950e0 vmf_insert_pfn_prot +EXPORT_SYMBOL vmlinux 0xa77bfd29 register_inet6addr_validator_notifier +EXPORT_SYMBOL vmlinux 0xa7a9cfe0 iucv_message_send2way +EXPORT_SYMBOL vmlinux 0xa7b88ac5 bio_add_page +EXPORT_SYMBOL vmlinux 0xa7c37528 get_mem_cgroup_from_mm +EXPORT_SYMBOL vmlinux 0xa7ca96c2 pcim_iomap_table +EXPORT_SYMBOL vmlinux 0xa7cdbdf2 down_read +EXPORT_SYMBOL vmlinux 0xa7e38f12 flow_keys_basic_dissector +EXPORT_SYMBOL vmlinux 0xa7eedcc4 call_usermodehelper +EXPORT_SYMBOL vmlinux 0xa843805a get_unused_fd_flags +EXPORT_SYMBOL vmlinux 0xa84ce9e0 crypto_aes_inv_sbox +EXPORT_SYMBOL vmlinux 0xa8694ecd kblockd_schedule_work +EXPORT_SYMBOL vmlinux 0xa87178f3 simple_write_end +EXPORT_SYMBOL vmlinux 0xa8736988 fb_set_cmap +EXPORT_SYMBOL vmlinux 0xa897812f lock_two_nondirectories +EXPORT_SYMBOL vmlinux 0xa89a8538 netif_set_real_num_tx_queues +EXPORT_SYMBOL vmlinux 0xa8d6cc71 kernel_connect +EXPORT_SYMBOL vmlinux 0xa8e42e4a __skb_flow_get_ports +EXPORT_SYMBOL vmlinux 0xa8f6c843 ip_frag_ecn_table +EXPORT_SYMBOL vmlinux 0xa90ca0de flush_rcu_work +EXPORT_SYMBOL vmlinux 0xa9193fde __set_page_dirty_nobuffers +EXPORT_SYMBOL vmlinux 0xa934bc4b flow_get_u32_dst +EXPORT_SYMBOL vmlinux 0xa965ca81 reciprocal_value +EXPORT_SYMBOL vmlinux 0xa985e06c submit_bh +EXPORT_SYMBOL vmlinux 0xa9866d10 get_user_pages +EXPORT_SYMBOL vmlinux 0xa9a74af7 pagecache_get_page +EXPORT_SYMBOL vmlinux 0xa9b1dc6c down_timeout +EXPORT_SYMBOL vmlinux 0xa9ed619a set_device_ro +EXPORT_SYMBOL vmlinux 0xa9f162f7 config_item_put +EXPORT_SYMBOL vmlinux 0xa9f82a0c d_make_root +EXPORT_SYMBOL vmlinux 0xaa0b2836 security_tun_dev_attach +EXPORT_SYMBOL vmlinux 0xaa15595f unix_destruct_scm +EXPORT_SYMBOL vmlinux 0xaa1e246a xxh32_update +EXPORT_SYMBOL vmlinux 0xaa287fb6 xfrm_policy_register_afinfo +EXPORT_SYMBOL vmlinux 0xaa2fa47e tcp_enter_cwr +EXPORT_SYMBOL vmlinux 0xaa371aaf follow_up +EXPORT_SYMBOL vmlinux 0xaa425de4 sock_bind_add +EXPORT_SYMBOL vmlinux 0xaa447bfc bd_start_claiming +EXPORT_SYMBOL vmlinux 0xaa64d48a nvm_dev_dma_alloc +EXPORT_SYMBOL vmlinux 0xaa72255c posix_acl_chmod +EXPORT_SYMBOL vmlinux 0xaa8a5716 drop_nlink +EXPORT_SYMBOL vmlinux 0xaaa4b9bc hchacha_block_generic +EXPORT_SYMBOL vmlinux 0xaaa8c9d2 ndo_dflt_fdb_add +EXPORT_SYMBOL vmlinux 0xaaad3387 ip_frag_init +EXPORT_SYMBOL vmlinux 0xaaad7e18 may_umount +EXPORT_SYMBOL vmlinux 0xaacd250b zpci_report_error +EXPORT_SYMBOL vmlinux 0xaad0ae78 __bitmap_shift_right +EXPORT_SYMBOL vmlinux 0xaad321b4 kmem_cache_alloc +EXPORT_SYMBOL vmlinux 0xaad8c7d6 default_wake_function +EXPORT_SYMBOL vmlinux 0xaae15afa __hw_addr_ref_unsync_dev +EXPORT_SYMBOL vmlinux 0xaaf3c4fe tcp_sock_set_cork +EXPORT_SYMBOL vmlinux 0xaafdc258 strcasecmp +EXPORT_SYMBOL vmlinux 0xaafef999 ip_cmsg_recv_offset +EXPORT_SYMBOL vmlinux 0xab02f8e3 iov_iter_fault_in_readable +EXPORT_SYMBOL vmlinux 0xab03ae85 __dquot_free_space +EXPORT_SYMBOL vmlinux 0xab282027 netdev_bind_sb_channel_queue +EXPORT_SYMBOL vmlinux 0xab3697e4 irq_poll_init +EXPORT_SYMBOL vmlinux 0xab3bb343 dq_data_lock +EXPORT_SYMBOL vmlinux 0xab484377 init_pseudo +EXPORT_SYMBOL vmlinux 0xab53a5fa xa_find_after +EXPORT_SYMBOL vmlinux 0xab63baa5 unregister_inetaddr_validator_notifier +EXPORT_SYMBOL vmlinux 0xab67be4d dm_io +EXPORT_SYMBOL vmlinux 0xab781570 fb_get_options +EXPORT_SYMBOL vmlinux 0xab93c86f down_read_interruptible +EXPORT_SYMBOL vmlinux 0xaba81805 xps_rxqs_needed +EXPORT_SYMBOL vmlinux 0xabac3e82 udp_gro_receive +EXPORT_SYMBOL vmlinux 0xabb24240 skb_dump +EXPORT_SYMBOL vmlinux 0xabc96858 blk_mq_alloc_tag_set +EXPORT_SYMBOL vmlinux 0xabe1431b trace_print_symbols_seq +EXPORT_SYMBOL vmlinux 0xabf32f29 utf16s_to_utf8s +EXPORT_SYMBOL vmlinux 0xac0308c0 ccw_device_tm_intrg +EXPORT_SYMBOL vmlinux 0xac1a55be unregister_reboot_notifier +EXPORT_SYMBOL vmlinux 0xac3201b0 udp_flow_hashrnd +EXPORT_SYMBOL vmlinux 0xac56b6d3 __tracepoint_s390_cio_msch +EXPORT_SYMBOL vmlinux 0xac5fcec0 in4_pton +EXPORT_SYMBOL vmlinux 0xac64c00f request_key_with_auxdata +EXPORT_SYMBOL vmlinux 0xac75158a pci_dev_put +EXPORT_SYMBOL vmlinux 0xac7b2422 pagevec_lookup_range_tag +EXPORT_SYMBOL vmlinux 0xac8597d5 mb_cache_entry_get +EXPORT_SYMBOL vmlinux 0xac8a5364 input_reset_device +EXPORT_SYMBOL vmlinux 0xac94e86b vsprintf +EXPORT_SYMBOL vmlinux 0xac96fe26 lockref_get_or_lock +EXPORT_SYMBOL vmlinux 0xac99879d key_link +EXPORT_SYMBOL vmlinux 0xacab29b7 seq_hlist_start_percpu +EXPORT_SYMBOL vmlinux 0xacd81eb3 jbd2_inode_cache +EXPORT_SYMBOL vmlinux 0xacf4d843 match_strdup +EXPORT_SYMBOL vmlinux 0xacf649bf audit_log_task_info +EXPORT_SYMBOL vmlinux 0xacffa439 xfrm_state_delete +EXPORT_SYMBOL vmlinux 0xad0413d4 match_hex +EXPORT_SYMBOL vmlinux 0xad061804 flow_rule_match_enc_ports +EXPORT_SYMBOL vmlinux 0xad4aee39 strncpy +EXPORT_SYMBOL vmlinux 0xad4af7d1 udp_seq_next +EXPORT_SYMBOL vmlinux 0xad5b72bd __percpu_counter_sum +EXPORT_SYMBOL vmlinux 0xad6c8a67 xattr_full_name +EXPORT_SYMBOL vmlinux 0xad73041f autoremove_wake_function +EXPORT_SYMBOL vmlinux 0xad84bef8 dm_table_event +EXPORT_SYMBOL vmlinux 0xad995dac netdev_stats_to_stats64 +EXPORT_SYMBOL vmlinux 0xada09ad2 dfltcc_can_inflate +EXPORT_SYMBOL vmlinux 0xada2e116 lease_get_mtime +EXPORT_SYMBOL vmlinux 0xadaffe79 fiemap_prep +EXPORT_SYMBOL vmlinux 0xadb8528b udp_ioctl +EXPORT_SYMBOL vmlinux 0xadc4a3d2 pcie_capability_read_dword +EXPORT_SYMBOL vmlinux 0xadc61559 ap_get_qdev +EXPORT_SYMBOL vmlinux 0xadc71a9f tty_port_hangup +EXPORT_SYMBOL vmlinux 0xadc819de input_setup_polling +EXPORT_SYMBOL vmlinux 0xadd139d4 rfs_needed +EXPORT_SYMBOL vmlinux 0xadd46aa7 bio_init +EXPORT_SYMBOL vmlinux 0xadeeadcf sock_set_priority +EXPORT_SYMBOL vmlinux 0xadf66fa0 simple_dir_operations +EXPORT_SYMBOL vmlinux 0xadfdfcef __bitmap_andnot +EXPORT_SYMBOL vmlinux 0xae04012c __vmalloc +EXPORT_SYMBOL vmlinux 0xae316c11 icmpv6_err_convert +EXPORT_SYMBOL vmlinux 0xae319efc radix_tree_insert +EXPORT_SYMBOL vmlinux 0xae39b1c2 proc_dointvec_jiffies +EXPORT_SYMBOL vmlinux 0xae418bd6 ap_flush_queue +EXPORT_SYMBOL vmlinux 0xae53e2e8 inet_get_local_port_range +EXPORT_SYMBOL vmlinux 0xae5fb720 vm_mmap +EXPORT_SYMBOL vmlinux 0xae78ffd7 t10_pi_type1_ip +EXPORT_SYMBOL vmlinux 0xaea8c697 inet_csk_reset_keepalive_timer +EXPORT_SYMBOL vmlinux 0xaeac049a generate_random_guid +EXPORT_SYMBOL vmlinux 0xaeca72e7 sock_no_getsockopt +EXPORT_SYMBOL vmlinux 0xaed3eea4 ethtool_rx_flow_rule_create +EXPORT_SYMBOL vmlinux 0xaf027df4 pipe_lock +EXPORT_SYMBOL vmlinux 0xaf045cec __ip_dev_find +EXPORT_SYMBOL vmlinux 0xaf0493a0 nf_log_unset +EXPORT_SYMBOL vmlinux 0xaf0ef3b5 __frontswap_load +EXPORT_SYMBOL vmlinux 0xaf1355d1 single_open_size +EXPORT_SYMBOL vmlinux 0xaf2d5975 pci_find_capability +EXPORT_SYMBOL vmlinux 0xaf38bcd4 call_usermodehelper_exec +EXPORT_SYMBOL vmlinux 0xaf3dd7dc scsi_logging_level +EXPORT_SYMBOL vmlinux 0xaf4730fd set_anon_super +EXPORT_SYMBOL vmlinux 0xaf49c682 __skb_gro_checksum_complete +EXPORT_SYMBOL vmlinux 0xaf5952d6 input_set_poll_interval +EXPORT_SYMBOL vmlinux 0xaf5d0def __bread_gfp +EXPORT_SYMBOL vmlinux 0xaf60bd0a module_layout +EXPORT_SYMBOL vmlinux 0xafa4da75 rdmacg_try_charge +EXPORT_SYMBOL vmlinux 0xafb9a7d3 d_genocide +EXPORT_SYMBOL vmlinux 0xafd3ca2d airq_iv_create +EXPORT_SYMBOL vmlinux 0xafd59300 inet6_add_protocol +EXPORT_SYMBOL vmlinux 0xafd5aabc skb_mac_gso_segment +EXPORT_SYMBOL vmlinux 0xafe09175 blk_mq_alloc_request +EXPORT_SYMBOL vmlinux 0xafe82e10 strcspn +EXPORT_SYMBOL vmlinux 0xafec09c0 disable_sacf_uaccess +EXPORT_SYMBOL vmlinux 0xaff9b717 inet_csk_clear_xmit_timers +EXPORT_SYMBOL vmlinux 0xaffc0d7d is_bad_inode +EXPORT_SYMBOL vmlinux 0xb00bc9d5 d_add +EXPORT_SYMBOL vmlinux 0xb016493d arch_spin_relax +EXPORT_SYMBOL vmlinux 0xb01ba0cf ioc_lookup_icq +EXPORT_SYMBOL vmlinux 0xb01bebf9 xfrm_get_acqseq +EXPORT_SYMBOL vmlinux 0xb0447429 generic_listxattr +EXPORT_SYMBOL vmlinux 0xb05fc310 sysctl_rmem_max +EXPORT_SYMBOL vmlinux 0xb071ffaf sg_miter_skip +EXPORT_SYMBOL vmlinux 0xb0751aa8 inet_listen +EXPORT_SYMBOL vmlinux 0xb0929080 jbd2_transaction_committed +EXPORT_SYMBOL vmlinux 0xb09af7bb dm_put_device +EXPORT_SYMBOL vmlinux 0xb09ddac2 jbd2_journal_check_available_features +EXPORT_SYMBOL vmlinux 0xb0a5e059 proc_dointvec +EXPORT_SYMBOL vmlinux 0xb0b1e8f2 __tty_insert_flip_char +EXPORT_SYMBOL vmlinux 0xb0e10781 get_option +EXPORT_SYMBOL vmlinux 0xb0eda7e7 iucv_path_sever +EXPORT_SYMBOL vmlinux 0xb0fc435b dev_set_allmulti +EXPORT_SYMBOL vmlinux 0xb1015021 sock_edemux +EXPORT_SYMBOL vmlinux 0xb10e7df4 __kfifo_dma_in_prepare +EXPORT_SYMBOL vmlinux 0xb1203bb8 ap_perms +EXPORT_SYMBOL vmlinux 0xb128ea21 cpumask_any_but +EXPORT_SYMBOL vmlinux 0xb129c0a2 fget +EXPORT_SYMBOL vmlinux 0xb12cbacb fb_unregister_client +EXPORT_SYMBOL vmlinux 0xb141ed1e finish_no_open +EXPORT_SYMBOL vmlinux 0xb14ab1ef hdmi_audio_infoframe_init +EXPORT_SYMBOL vmlinux 0xb14fc46a find_next_clump8 +EXPORT_SYMBOL vmlinux 0xb161db63 netif_device_detach +EXPORT_SYMBOL vmlinux 0xb16900ad cmdline_parts_parse +EXPORT_SYMBOL vmlinux 0xb17a194e fd_install +EXPORT_SYMBOL vmlinux 0xb18da651 nvm_submit_io_sync +EXPORT_SYMBOL vmlinux 0xb192afbc scsi_unblock_requests +EXPORT_SYMBOL vmlinux 0xb1a5ab8c on_each_cpu_cond +EXPORT_SYMBOL vmlinux 0xb1b8f0bc gen_pool_alloc_algo_owner +EXPORT_SYMBOL vmlinux 0xb1c3a01a oops_in_progress +EXPORT_SYMBOL vmlinux 0xb1caf60a xfrm_policy_byid +EXPORT_SYMBOL vmlinux 0xb1cd76bf blk_queue_physical_block_size +EXPORT_SYMBOL vmlinux 0xb1ddf995 jiffies_64_to_clock_t +EXPORT_SYMBOL vmlinux 0xb2282aad arp_xmit +EXPORT_SYMBOL vmlinux 0xb22e16d5 radix_tree_maybe_preload +EXPORT_SYMBOL vmlinux 0xb23450a0 module_put +EXPORT_SYMBOL vmlinux 0xb234c354 kbd_free +EXPORT_SYMBOL vmlinux 0xb23dc7b5 tcp_openreq_init_rwin +EXPORT_SYMBOL vmlinux 0xb26819d4 ip_tunnel_parse_protocol +EXPORT_SYMBOL vmlinux 0xb2768f32 generic_perform_write +EXPORT_SYMBOL vmlinux 0xb280da1b gnet_stats_copy_app +EXPORT_SYMBOL vmlinux 0xb2866984 iov_iter_for_each_range +EXPORT_SYMBOL vmlinux 0xb29343e4 dma_fence_array_create +EXPORT_SYMBOL vmlinux 0xb293c18f gen_pool_best_fit +EXPORT_SYMBOL vmlinux 0xb2965bae neigh_parms_release +EXPORT_SYMBOL vmlinux 0xb29f5f54 d_delete +EXPORT_SYMBOL vmlinux 0xb2a2ad2d vlan_filter_drop_vids +EXPORT_SYMBOL vmlinux 0xb2b0d772 __kfifo_dma_in_finish_r +EXPORT_SYMBOL vmlinux 0xb2b195d5 tcp_child_process +EXPORT_SYMBOL vmlinux 0xb2c1843a __skb_checksum +EXPORT_SYMBOL vmlinux 0xb2cdd966 swake_up_locked +EXPORT_SYMBOL vmlinux 0xb2d47ee9 scsi_device_put +EXPORT_SYMBOL vmlinux 0xb2d951e3 xfrm_input_unregister_afinfo +EXPORT_SYMBOL vmlinux 0xb2dece30 generic_remap_file_range_prep +EXPORT_SYMBOL vmlinux 0xb2e2a8f0 file_ns_capable +EXPORT_SYMBOL vmlinux 0xb2f5f92a tcp_mmap +EXPORT_SYMBOL vmlinux 0xb2f7f1a5 __tcf_idr_release +EXPORT_SYMBOL vmlinux 0xb2fafd17 mempool_resize +EXPORT_SYMBOL vmlinux 0xb2fcb56d queue_delayed_work_on +EXPORT_SYMBOL vmlinux 0xb308c97d wait_woken +EXPORT_SYMBOL vmlinux 0xb31223f1 input_release_device +EXPORT_SYMBOL vmlinux 0xb3198d53 debug_register_view +EXPORT_SYMBOL vmlinux 0xb31a3d8c blk_cleanup_queue +EXPORT_SYMBOL vmlinux 0xb320cc0e sg_init_one +EXPORT_SYMBOL vmlinux 0xb328549d __nla_reserve_nohdr +EXPORT_SYMBOL vmlinux 0xb3488e69 iov_iter_pipe +EXPORT_SYMBOL vmlinux 0xb352177e find_first_bit +EXPORT_SYMBOL vmlinux 0xb358e83c dquot_initialize +EXPORT_SYMBOL vmlinux 0xb36378bb pci_iomap_wc +EXPORT_SYMBOL vmlinux 0xb3687850 out_of_line_wait_on_bit_lock +EXPORT_SYMBOL vmlinux 0xb373a0ca blkdev_issue_zeroout +EXPORT_SYMBOL vmlinux 0xb39004a6 xsk_set_rx_need_wakeup +EXPORT_SYMBOL vmlinux 0xb3b28163 debug_set_level +EXPORT_SYMBOL vmlinux 0xb3bd68cc security_secmark_relabel_packet +EXPORT_SYMBOL vmlinux 0xb3c25ae6 __cgroup_bpf_run_filter_sk +EXPORT_SYMBOL vmlinux 0xb3d2c76d scsi_hostbyte_string +EXPORT_SYMBOL vmlinux 0xb3e42700 security_inode_getsecctx +EXPORT_SYMBOL vmlinux 0xb3f7646e kthread_should_stop +EXPORT_SYMBOL vmlinux 0xb3ff1f69 free_pages_exact +EXPORT_SYMBOL vmlinux 0xb4132b39 vfs_mkdir +EXPORT_SYMBOL vmlinux 0xb41f5edd qdisc_warn_nonwc +EXPORT_SYMBOL vmlinux 0xb423dba1 console_blanked +EXPORT_SYMBOL vmlinux 0xb4357a70 md_flush_request +EXPORT_SYMBOL vmlinux 0xb4601a6d mr_fill_mroute +EXPORT_SYMBOL vmlinux 0xb46ae3c2 sie64a +EXPORT_SYMBOL vmlinux 0xb48d4d22 security_sb_eat_lsm_opts +EXPORT_SYMBOL vmlinux 0xb4c35dc9 devm_request_threaded_irq +EXPORT_SYMBOL vmlinux 0xb4e035d7 fbcon_rotate_ccw +EXPORT_SYMBOL vmlinux 0xb4e17789 scm_detach_fds +EXPORT_SYMBOL vmlinux 0xb4e6d7ef put_watch_queue +EXPORT_SYMBOL vmlinux 0xb4f13d2a abort +EXPORT_SYMBOL vmlinux 0xb50cc9cb ZSTD_isFrame +EXPORT_SYMBOL vmlinux 0xb520491b ip_sock_set_tos +EXPORT_SYMBOL vmlinux 0xb534f61f __kfifo_alloc +EXPORT_SYMBOL vmlinux 0xb5395072 pcie_get_speed_cap +EXPORT_SYMBOL vmlinux 0xb5485d8e eth_header_cache_update +EXPORT_SYMBOL vmlinux 0xb55e2e68 revalidate_disk +EXPORT_SYMBOL vmlinux 0xb55f4f49 bprm_change_interp +EXPORT_SYMBOL vmlinux 0xb57343c2 frontswap_shrink +EXPORT_SYMBOL vmlinux 0xb576775f inet_del_protocol +EXPORT_SYMBOL vmlinux 0xb58aeaab kernel_cpustat +EXPORT_SYMBOL vmlinux 0xb58d685a __netlink_ns_capable +EXPORT_SYMBOL vmlinux 0xb5a459dc unregister_blkdev +EXPORT_SYMBOL vmlinux 0xb5a71646 put_disk_and_module +EXPORT_SYMBOL vmlinux 0xb5aa7165 dma_pool_destroy +EXPORT_SYMBOL vmlinux 0xb5bb75c0 dev_uc_unsync +EXPORT_SYMBOL vmlinux 0xb5c78ce1 napi_schedule_prep +EXPORT_SYMBOL vmlinux 0xb5d774a9 __inode_sub_bytes +EXPORT_SYMBOL vmlinux 0xb5e73116 flush_delayed_work +EXPORT_SYMBOL vmlinux 0xb61a957c path_is_mountpoint +EXPORT_SYMBOL vmlinux 0xb61c2c2f __splice_from_pipe +EXPORT_SYMBOL vmlinux 0xb633f115 irq_poll_enable +EXPORT_SYMBOL vmlinux 0xb63b9353 lookup_one_len_unlocked +EXPORT_SYMBOL vmlinux 0xb6400adc blk_mq_stop_hw_queue +EXPORT_SYMBOL vmlinux 0xb6574710 udp6_set_csum +EXPORT_SYMBOL vmlinux 0xb66129a4 fscrypt_decrypt_pagecache_blocks +EXPORT_SYMBOL vmlinux 0xb675093f security_d_instantiate +EXPORT_SYMBOL vmlinux 0xb676b082 blk_rq_init +EXPORT_SYMBOL vmlinux 0xb678366f int_sqrt +EXPORT_SYMBOL vmlinux 0xb67baae2 nla_reserve +EXPORT_SYMBOL vmlinux 0xb67c9280 utf8cursor +EXPORT_SYMBOL vmlinux 0xb67fec0e uuid_parse +EXPORT_SYMBOL vmlinux 0xb6936ffe _bcd2bin +EXPORT_SYMBOL vmlinux 0xb6a68816 find_last_bit +EXPORT_SYMBOL vmlinux 0xb6b0e5be finish_open +EXPORT_SYMBOL vmlinux 0xb6bcdaa5 prepare_to_wait_exclusive +EXPORT_SYMBOL vmlinux 0xb6bfb60a tty_port_close +EXPORT_SYMBOL vmlinux 0xb6c65e72 __napi_alloc_skb +EXPORT_SYMBOL vmlinux 0xb6fbeefe xxh64 +EXPORT_SYMBOL vmlinux 0xb7016a2f scsi_print_sense +EXPORT_SYMBOL vmlinux 0xb706fd3f touch_atime +EXPORT_SYMBOL vmlinux 0xb711c403 xfrm_policy_delete +EXPORT_SYMBOL vmlinux 0xb713e1ea __hw_addr_sync_dev +EXPORT_SYMBOL vmlinux 0xb733a906 keyring_alloc +EXPORT_SYMBOL vmlinux 0xb733dd4c get_cached_acl_rcu +EXPORT_SYMBOL vmlinux 0xb73b8b24 netdev_refcnt_read +EXPORT_SYMBOL vmlinux 0xb745bac7 ipv6_getsockopt +EXPORT_SYMBOL vmlinux 0xb7468d30 kernel_read +EXPORT_SYMBOL vmlinux 0xb76af94e compat_ipv6_getsockopt +EXPORT_SYMBOL vmlinux 0xb7775104 input_allocate_device +EXPORT_SYMBOL vmlinux 0xb788803a vfs_ioc_setflags_prepare +EXPORT_SYMBOL vmlinux 0xb78debe3 LZ4_decompress_fast_usingDict +EXPORT_SYMBOL vmlinux 0xb7b507ea utf8nlen +EXPORT_SYMBOL vmlinux 0xb7c2085f register_filesystem +EXPORT_SYMBOL vmlinux 0xb7c6db70 sysctl_max_skb_frags +EXPORT_SYMBOL vmlinux 0xb7ee2a2c diag26c +EXPORT_SYMBOL vmlinux 0xb80fd4de vlan_ioctl_set +EXPORT_SYMBOL vmlinux 0xb81b8cbf audit_log +EXPORT_SYMBOL vmlinux 0xb846ee32 tc_setup_cb_destroy +EXPORT_SYMBOL vmlinux 0xb8559889 nf_unregister_queue_handler +EXPORT_SYMBOL vmlinux 0xb85b91f1 dev_close +EXPORT_SYMBOL vmlinux 0xb868ac5c register_sysrq_key +EXPORT_SYMBOL vmlinux 0xb87f3f4e md_wakeup_thread +EXPORT_SYMBOL vmlinux 0xb88da5ba fib_notifier_ops_register +EXPORT_SYMBOL vmlinux 0xb88f1736 bio_reset +EXPORT_SYMBOL vmlinux 0xb89346f0 jbd2_journal_unlock_updates +EXPORT_SYMBOL vmlinux 0xb89b6e6b guid_parse +EXPORT_SYMBOL vmlinux 0xb89d5f51 sock_no_recvmsg +EXPORT_SYMBOL vmlinux 0xb8b043f2 kfree_link +EXPORT_SYMBOL vmlinux 0xb8b85315 security_path_rename +EXPORT_SYMBOL vmlinux 0xb8ba4081 skb_queue_purge +EXPORT_SYMBOL vmlinux 0xb8c8ff53 configfs_unregister_default_group +EXPORT_SYMBOL vmlinux 0xb8cb6c69 complete_all +EXPORT_SYMBOL vmlinux 0xb8d7d75e dev_get_by_name_rcu +EXPORT_SYMBOL vmlinux 0xb9056bb6 remove_conflicting_framebuffers +EXPORT_SYMBOL vmlinux 0xb906cbb0 dquot_free_inode +EXPORT_SYMBOL vmlinux 0xb906e84e netdev_reset_tc +EXPORT_SYMBOL vmlinux 0xb911bb58 minmax_running_max +EXPORT_SYMBOL vmlinux 0xb915ceca itcw_init +EXPORT_SYMBOL vmlinux 0xb928aa45 netdev_rss_key_fill +EXPORT_SYMBOL vmlinux 0xb94339c4 qdisc_put_stab +EXPORT_SYMBOL vmlinux 0xb94f4d5d __kmalloc_node_track_caller +EXPORT_SYMBOL vmlinux 0xb95417fb pci_map_rom +EXPORT_SYMBOL vmlinux 0xb97220ff bitmap_parse +EXPORT_SYMBOL vmlinux 0xb975e111 dm_kobject_release +EXPORT_SYMBOL vmlinux 0xb97bdc7a vm_insert_pages +EXPORT_SYMBOL vmlinux 0xb97c5901 tcp_shutdown +EXPORT_SYMBOL vmlinux 0xb98defbe mr_table_dump +EXPORT_SYMBOL vmlinux 0xb99f383c try_wait_for_completion +EXPORT_SYMBOL vmlinux 0xb9b9ef7b bh_uptodate_or_lock +EXPORT_SYMBOL vmlinux 0xb9d2da4d netdev_has_upper_dev +EXPORT_SYMBOL vmlinux 0xb9df5c0d ZSTD_nextSrcSizeToDecompress +EXPORT_SYMBOL vmlinux 0xb9e0a8fc dev_deactivate +EXPORT_SYMBOL vmlinux 0xb9e8e2cc in6addr_sitelocal_allrouters +EXPORT_SYMBOL vmlinux 0xba497f13 loops_per_jiffy +EXPORT_SYMBOL vmlinux 0xba63af12 elv_rb_add +EXPORT_SYMBOL vmlinux 0xba6bb978 fscrypt_zeroout_range +EXPORT_SYMBOL vmlinux 0xba73e683 param_ops_invbool +EXPORT_SYMBOL vmlinux 0xba815c0a devm_ioremap +EXPORT_SYMBOL vmlinux 0xba8590d9 jbd2_journal_try_to_free_buffers +EXPORT_SYMBOL vmlinux 0xba860115 qdisc_create_dflt +EXPORT_SYMBOL vmlinux 0xba8c3c9e inet_twsk_deschedule_put +EXPORT_SYMBOL vmlinux 0xbaa5b812 __var_waitqueue +EXPORT_SYMBOL vmlinux 0xbac70483 _dev_crit +EXPORT_SYMBOL vmlinux 0xbacb9d4c reuseport_select_sock +EXPORT_SYMBOL vmlinux 0xbacc1f97 netlink_ack +EXPORT_SYMBOL vmlinux 0xbadcaade blk_set_default_limits +EXPORT_SYMBOL vmlinux 0xbaf507c1 gen_pool_dma_alloc_algo +EXPORT_SYMBOL vmlinux 0xbb0540aa zlib_inflateReset +EXPORT_SYMBOL vmlinux 0xbb24f607 init_cdrom_command +EXPORT_SYMBOL vmlinux 0xbb35675b __bitmap_intersects +EXPORT_SYMBOL vmlinux 0xbb3f9797 scsi_device_get +EXPORT_SYMBOL vmlinux 0xbb478946 ptep_xchg_direct +EXPORT_SYMBOL vmlinux 0xbb62e23b param_get_ushort +EXPORT_SYMBOL vmlinux 0xbb62fc47 kmem_cache_alloc_node_trace +EXPORT_SYMBOL vmlinux 0xbb65eee6 poll_initwait +EXPORT_SYMBOL vmlinux 0xbb6b4316 import_single_range +EXPORT_SYMBOL vmlinux 0xbb9d0dc5 bin2hex +EXPORT_SYMBOL vmlinux 0xbbe04bca end_page_writeback +EXPORT_SYMBOL vmlinux 0xbbe16ed3 xfrm_spd_getinfo +EXPORT_SYMBOL vmlinux 0xbbe74090 csum_and_copy_from_iter +EXPORT_SYMBOL vmlinux 0xbc1dbc61 __dev_set_mtu +EXPORT_SYMBOL vmlinux 0xbc25f7cc free_contig_range +EXPORT_SYMBOL vmlinux 0xbc278c47 generic_writepages +EXPORT_SYMBOL vmlinux 0xbc2b0eda inet_gro_complete +EXPORT_SYMBOL vmlinux 0xbc5b650d tcp_set_rcvlowat +EXPORT_SYMBOL vmlinux 0xbc5f1944 truncate_pagecache +EXPORT_SYMBOL vmlinux 0xbc7b42a5 tty_hangup +EXPORT_SYMBOL vmlinux 0xbc7bede7 add_wait_queue_exclusive +EXPORT_SYMBOL vmlinux 0xbc99b11c key_reject_and_link +EXPORT_SYMBOL vmlinux 0xbcab6ee6 sscanf +EXPORT_SYMBOL vmlinux 0xbcb71c08 scsi_alloc_sgtables +EXPORT_SYMBOL vmlinux 0xbcbb976e iunique +EXPORT_SYMBOL vmlinux 0xbcbdf60f kstrtos8 +EXPORT_SYMBOL vmlinux 0xbcd999d2 tcf_idr_search +EXPORT_SYMBOL vmlinux 0xbce803d7 xfrm_init_replay +EXPORT_SYMBOL vmlinux 0xbd05c697 do_clone_file_range +EXPORT_SYMBOL vmlinux 0xbd3e3801 tcp_v4_connect +EXPORT_SYMBOL vmlinux 0xbd5357ec tcf_generic_walker +EXPORT_SYMBOL vmlinux 0xbd54e4e9 tcf_classify +EXPORT_SYMBOL vmlinux 0xbd6490fa tc_setup_cb_call +EXPORT_SYMBOL vmlinux 0xbd8a79e5 scsi_change_queue_depth +EXPORT_SYMBOL vmlinux 0xbd8d583e blk_mq_delay_kick_requeue_list +EXPORT_SYMBOL vmlinux 0xbd935f38 mempool_init +EXPORT_SYMBOL vmlinux 0xbd9a6acc proc_dointvec_minmax +EXPORT_SYMBOL vmlinux 0xbdce27bc input_mt_get_slot_by_key +EXPORT_SYMBOL vmlinux 0xbddcdd64 unix_attach_fds +EXPORT_SYMBOL vmlinux 0xbdfcb297 pci_release_selected_regions +EXPORT_SYMBOL vmlinux 0xbe2bb833 netdev_alert +EXPORT_SYMBOL vmlinux 0xbe363f59 _dev_notice +EXPORT_SYMBOL vmlinux 0xbe4eb6ed secure_dccpv6_sequence_number +EXPORT_SYMBOL vmlinux 0xbe5a24e9 xxh32_copy_state +EXPORT_SYMBOL vmlinux 0xbe61f3bd try_to_release_page +EXPORT_SYMBOL vmlinux 0xbe72514d vm_event_states +EXPORT_SYMBOL vmlinux 0xbe76bbc6 xfrm_lookup +EXPORT_SYMBOL vmlinux 0xbe8b6726 sk_alloc +EXPORT_SYMBOL vmlinux 0xbe8bf5cd _copy_from_iter +EXPORT_SYMBOL vmlinux 0xbe8ea2a5 zap_page_range +EXPORT_SYMBOL vmlinux 0xbe975025 input_set_abs_params +EXPORT_SYMBOL vmlinux 0xbebc9ab1 devm_memunmap +EXPORT_SYMBOL vmlinux 0xbef3bd9a down_trylock +EXPORT_SYMBOL vmlinux 0xbef43296 console_conditional_schedule +EXPORT_SYMBOL vmlinux 0xbef53f33 scnprintf +EXPORT_SYMBOL vmlinux 0xbf0c5112 dev_set_promiscuity +EXPORT_SYMBOL vmlinux 0xbf1ac1ff get_super_exclusive_thawed +EXPORT_SYMBOL vmlinux 0xbf1d7b5f udp_lib_getsockopt +EXPORT_SYMBOL vmlinux 0xbf216b40 posix_acl_valid +EXPORT_SYMBOL vmlinux 0xbf41ca0c unregister_mii_tstamp_controller +EXPORT_SYMBOL vmlinux 0xbf57f412 alloc_file_pseudo +EXPORT_SYMBOL vmlinux 0xbf59c419 posix_acl_init +EXPORT_SYMBOL vmlinux 0xbf828f28 ip6_find_1stfragopt +EXPORT_SYMBOL vmlinux 0xbf90062c pcie_capability_write_word +EXPORT_SYMBOL vmlinux 0xbf9bcc8d __cap_empty_set +EXPORT_SYMBOL vmlinux 0xbfa072ed icmp_ndo_send +EXPORT_SYMBOL vmlinux 0xbfee3ad5 loop_unregister_transfer +EXPORT_SYMBOL vmlinux 0xbff0e8cc skb_recv_datagram +EXPORT_SYMBOL vmlinux 0xbffe7219 xa_clear_mark +EXPORT_SYMBOL vmlinux 0xc003c637 __strncpy_from_user +EXPORT_SYMBOL vmlinux 0xc025016c flow_keys_dissector +EXPORT_SYMBOL vmlinux 0xc034b555 raw3270_start_irq +EXPORT_SYMBOL vmlinux 0xc06f0724 ZSTD_initDCtx +EXPORT_SYMBOL vmlinux 0xc0732d30 __cpuhp_setup_state_cpuslocked +EXPORT_SYMBOL vmlinux 0xc07b0863 fb_destroy_modedb +EXPORT_SYMBOL vmlinux 0xc096e23d hdmi_drm_infoframe_init +EXPORT_SYMBOL vmlinux 0xc0a3d105 find_next_bit +EXPORT_SYMBOL vmlinux 0xc0b2664d devlink_dpipe_header_ipv4 +EXPORT_SYMBOL vmlinux 0xc0d2a3bc __skb_vlan_pop +EXPORT_SYMBOL vmlinux 0xc0d5feee vfs_statx +EXPORT_SYMBOL vmlinux 0xc0e5ac87 pcim_iomap_regions_request_all +EXPORT_SYMBOL vmlinux 0xc0e5e4e6 itcw_get_tcw +EXPORT_SYMBOL vmlinux 0xc0fd237c xxh32 +EXPORT_SYMBOL vmlinux 0xc0ff12fb nla_strdup +EXPORT_SYMBOL vmlinux 0xc107cac2 generic_setlease +EXPORT_SYMBOL vmlinux 0xc120caa6 diag_stat_inc +EXPORT_SYMBOL vmlinux 0xc1288e6a cdev_device_add +EXPORT_SYMBOL vmlinux 0xc129dd34 unmap_mapping_range +EXPORT_SYMBOL vmlinux 0xc130756c nf_setsockopt +EXPORT_SYMBOL vmlinux 0xc1394dbd mod_virt_timer_periodic +EXPORT_SYMBOL vmlinux 0xc148b29f pcie_set_mps +EXPORT_SYMBOL vmlinux 0xc1497308 tcf_idrinfo_destroy +EXPORT_SYMBOL vmlinux 0xc1514a3b free_irq +EXPORT_SYMBOL vmlinux 0xc15cfe8b mark_buffer_dirty +EXPORT_SYMBOL vmlinux 0xc16410b9 ZSTD_getDictID_fromDDict +EXPORT_SYMBOL vmlinux 0xc165ec22 dump_truncate +EXPORT_SYMBOL vmlinux 0xc168d63e pci_free_host_bridge +EXPORT_SYMBOL vmlinux 0xc16be39d iter_div_u64_rem +EXPORT_SYMBOL vmlinux 0xc18a0b4d block_invalidatepage +EXPORT_SYMBOL vmlinux 0xc1a64320 __tracepoint_s390_cio_tsch +EXPORT_SYMBOL vmlinux 0xc1b775b4 skb_copy_and_csum_dev +EXPORT_SYMBOL vmlinux 0xc1cb44dc insert_inode_locked +EXPORT_SYMBOL vmlinux 0xc1cf53a4 __bforget +EXPORT_SYMBOL vmlinux 0xc1d8cfaf __fdget +EXPORT_SYMBOL vmlinux 0xc1fbe55e inet_proto_csum_replace_by_diff +EXPORT_SYMBOL vmlinux 0xc212f2ab prandom_bytes +EXPORT_SYMBOL vmlinux 0xc2336209 unix_gc_lock +EXPORT_SYMBOL vmlinux 0xc2856b23 netif_rx +EXPORT_SYMBOL vmlinux 0xc28f2c21 _dev_emerg +EXPORT_SYMBOL vmlinux 0xc2b6db74 dquot_set_dqblk +EXPORT_SYMBOL vmlinux 0xc2dfde48 padata_alloc_possible +EXPORT_SYMBOL vmlinux 0xc2e587d1 reset_devices +EXPORT_SYMBOL vmlinux 0xc2f24f87 dcache_dir_lseek +EXPORT_SYMBOL vmlinux 0xc2f547bc find_vma +EXPORT_SYMBOL vmlinux 0xc306c3a8 page_frag_alloc +EXPORT_SYMBOL vmlinux 0xc31db0ce is_vmalloc_addr +EXPORT_SYMBOL vmlinux 0xc32c71af register_inetaddr_validator_notifier +EXPORT_SYMBOL vmlinux 0xc336a985 dqstats +EXPORT_SYMBOL vmlinux 0xc34268fb tty_wait_until_sent +EXPORT_SYMBOL vmlinux 0xc34cffe2 kstrtobool_from_user +EXPORT_SYMBOL vmlinux 0xc3505b5f __mod_zone_page_state +EXPORT_SYMBOL vmlinux 0xc35e9288 devm_pci_remap_cfgspace +EXPORT_SYMBOL vmlinux 0xc363af5f sk_free +EXPORT_SYMBOL vmlinux 0xc385cb58 perf_num_counters +EXPORT_SYMBOL vmlinux 0xc38c83b8 mod_timer +EXPORT_SYMBOL vmlinux 0xc3c28946 generic_fadvise +EXPORT_SYMBOL vmlinux 0xc3c7c14e skb_page_frag_refill +EXPORT_SYMBOL vmlinux 0xc3da3f8f gnet_stats_copy_basic_hw +EXPORT_SYMBOL vmlinux 0xc3ed6881 do_SAK +EXPORT_SYMBOL vmlinux 0xc3f51725 load_nls_default +EXPORT_SYMBOL vmlinux 0xc3f89c91 netdev_lower_dev_get_private +EXPORT_SYMBOL vmlinux 0xc4212ab9 qdisc_class_hash_insert +EXPORT_SYMBOL vmlinux 0xc43f5fc0 truncate_inode_pages_range +EXPORT_SYMBOL vmlinux 0xc440a232 unregister_framebuffer +EXPORT_SYMBOL vmlinux 0xc45755de find_next_zero_bit_le +EXPORT_SYMBOL vmlinux 0xc45f88f3 nf_ip6_checksum +EXPORT_SYMBOL vmlinux 0xc470c1c6 mutex_lock_killable +EXPORT_SYMBOL vmlinux 0xc4777aa9 __ctzsi2 +EXPORT_SYMBOL vmlinux 0xc477e972 tcp_poll +EXPORT_SYMBOL vmlinux 0xc494dd4c pci_irq_get_affinity +EXPORT_SYMBOL vmlinux 0xc4ab8cd5 scsi_bios_ptable +EXPORT_SYMBOL vmlinux 0xc4eee6ad xsk_umem_consume_tx +EXPORT_SYMBOL vmlinux 0xc4effc2f free_netdev +EXPORT_SYMBOL vmlinux 0xc4f254e9 try_to_free_buffers +EXPORT_SYMBOL vmlinux 0xc4fb85aa sk_mc_loop +EXPORT_SYMBOL vmlinux 0xc4fe73e3 try_module_get +EXPORT_SYMBOL vmlinux 0xc5078337 input_free_device +EXPORT_SYMBOL vmlinux 0xc52fa09e md_bitmap_endwrite +EXPORT_SYMBOL vmlinux 0xc537c9e1 jbd2_journal_inode_ranged_write +EXPORT_SYMBOL vmlinux 0xc5521d50 sclp_register +EXPORT_SYMBOL vmlinux 0xc556a60f pci_setup_cardbus +EXPORT_SYMBOL vmlinux 0xc561f218 netdev_notify_peers +EXPORT_SYMBOL vmlinux 0xc56289b8 napi_gro_flush +EXPORT_SYMBOL vmlinux 0xc562ed27 tty_driver_kref_put +EXPORT_SYMBOL vmlinux 0xc57b41f2 ZSTD_decompress_usingDict +EXPORT_SYMBOL vmlinux 0xc57b8611 diag210 +EXPORT_SYMBOL vmlinux 0xc5850110 printk +EXPORT_SYMBOL vmlinux 0xc599a772 security_xfrm_state_delete +EXPORT_SYMBOL vmlinux 0xc599ad77 dma_fence_init +EXPORT_SYMBOL vmlinux 0xc5ad93b8 sie_exit +EXPORT_SYMBOL vmlinux 0xc5aec3fc flow_rule_match_enc_control +EXPORT_SYMBOL vmlinux 0xc5b6f236 queue_work_on +EXPORT_SYMBOL vmlinux 0xc5bd36a2 __frontswap_test +EXPORT_SYMBOL vmlinux 0xc5bead4b input_set_timestamp +EXPORT_SYMBOL vmlinux 0xc5c60881 xfrm_unregister_km +EXPORT_SYMBOL vmlinux 0xc5d3d886 default_qdisc_ops +EXPORT_SYMBOL vmlinux 0xc5d89c78 pci_alloc_irq_vectors_affinity +EXPORT_SYMBOL vmlinux 0xc5e74216 release_resource +EXPORT_SYMBOL vmlinux 0xc5ed5990 tty_register_driver +EXPORT_SYMBOL vmlinux 0xc5f7e801 sg_last +EXPORT_SYMBOL vmlinux 0xc602c30d ll_rw_block +EXPORT_SYMBOL vmlinux 0xc6055c9e kvasprintf_const +EXPORT_SYMBOL vmlinux 0xc60d0620 __num_online_cpus +EXPORT_SYMBOL vmlinux 0xc61145a4 file_path +EXPORT_SYMBOL vmlinux 0xc622ea97 stsi +EXPORT_SYMBOL vmlinux 0xc631580a console_unlock +EXPORT_SYMBOL vmlinux 0xc6505fae ip6_err_gen_icmpv6_unreach +EXPORT_SYMBOL vmlinux 0xc65e4e97 secure_dccp_sequence_number +EXPORT_SYMBOL vmlinux 0xc65f46e4 pcix_get_mmrbc +EXPORT_SYMBOL vmlinux 0xc66a8304 cpu_rmap_add +EXPORT_SYMBOL vmlinux 0xc66d919f dm_table_get_mode +EXPORT_SYMBOL vmlinux 0xc67b891e dput +EXPORT_SYMBOL vmlinux 0xc687f0bf dmam_free_coherent +EXPORT_SYMBOL vmlinux 0xc6996f36 pci_remove_bus +EXPORT_SYMBOL vmlinux 0xc6a80211 flow_rule_match_ct +EXPORT_SYMBOL vmlinux 0xc6ae4bc6 mempool_exit +EXPORT_SYMBOL vmlinux 0xc6b443e8 up +EXPORT_SYMBOL vmlinux 0xc6c26aab abort_creds +EXPORT_SYMBOL vmlinux 0xc6c3f944 seq_putc +EXPORT_SYMBOL vmlinux 0xc6cbbc89 capable +EXPORT_SYMBOL vmlinux 0xc6dcaa29 generic_splice_sendpage +EXPORT_SYMBOL vmlinux 0xc6f46339 init_timer_key +EXPORT_SYMBOL vmlinux 0xc70a1a05 d_drop +EXPORT_SYMBOL vmlinux 0xc70bca1c ip_route_input_noref +EXPORT_SYMBOL vmlinux 0xc724a253 dentry_open +EXPORT_SYMBOL vmlinux 0xc72dec40 eth_header_cache +EXPORT_SYMBOL vmlinux 0xc730a752 blk_mq_tagset_wait_completed_request +EXPORT_SYMBOL vmlinux 0xc77decf6 md_integrity_add_rdev +EXPORT_SYMBOL vmlinux 0xc7856a3d inet6addr_notifier_call_chain +EXPORT_SYMBOL vmlinux 0xc793df9b clear_inode +EXPORT_SYMBOL vmlinux 0xc79bcd36 dm_vcalloc +EXPORT_SYMBOL vmlinux 0xc79c2745 cdrom_get_media_event +EXPORT_SYMBOL vmlinux 0xc7a24d76 sysfs_format_mac +EXPORT_SYMBOL vmlinux 0xc7a44f35 inet6_unregister_protosw +EXPORT_SYMBOL vmlinux 0xc7a4fbed rtnl_lock +EXPORT_SYMBOL vmlinux 0xc7b5bc9e sdev_disable_disk_events +EXPORT_SYMBOL vmlinux 0xc7bf988a ccw_device_tm_start +EXPORT_SYMBOL vmlinux 0xc7c1011d clear_page_dirty_for_io +EXPORT_SYMBOL vmlinux 0xc7c1107a LZ4_decompress_safe +EXPORT_SYMBOL vmlinux 0xc7d094b5 dm_read_arg_group +EXPORT_SYMBOL vmlinux 0xc8021fae alloc_anon_inode +EXPORT_SYMBOL vmlinux 0xc816dad9 generic_update_time +EXPORT_SYMBOL vmlinux 0xc81e91a8 napi_busy_loop +EXPORT_SYMBOL vmlinux 0xc83f7bda kset_register +EXPORT_SYMBOL vmlinux 0xc840f71a d_find_alias +EXPORT_SYMBOL vmlinux 0xc8452545 tcp_sock_set_keepidle +EXPORT_SYMBOL vmlinux 0xc84a0a7e seq_hlist_start_rcu +EXPORT_SYMBOL vmlinux 0xc858a614 nla_reserve_nohdr +EXPORT_SYMBOL vmlinux 0xc8673a20 dev_pick_tx_cpu_id +EXPORT_SYMBOL vmlinux 0xc86a6174 __kfifo_from_user_r +EXPORT_SYMBOL vmlinux 0xc872fd85 in6addr_interfacelocal_allnodes +EXPORT_SYMBOL vmlinux 0xc8827b75 sysctl_vals +EXPORT_SYMBOL vmlinux 0xc88a8918 down_interruptible +EXPORT_SYMBOL vmlinux 0xc890c008 zlib_deflateEnd +EXPORT_SYMBOL vmlinux 0xc8943c31 get_task_cred +EXPORT_SYMBOL vmlinux 0xc8a91f5b cpumask_local_spread +EXPORT_SYMBOL vmlinux 0xc8b2afc3 __hw_addr_unsync_dev +EXPORT_SYMBOL vmlinux 0xc8ba00a5 file_modified +EXPORT_SYMBOL vmlinux 0xc8d770cc sock_cmsg_send +EXPORT_SYMBOL vmlinux 0xc9159f98 dma_fence_chain_init +EXPORT_SYMBOL vmlinux 0xc91a7738 fscrypt_fname_alloc_buffer +EXPORT_SYMBOL vmlinux 0xc93ba192 tcp_disconnect +EXPORT_SYMBOL vmlinux 0xc93d8bf9 tcf_action_check_ctrlact +EXPORT_SYMBOL vmlinux 0xc948c0d2 __scm_destroy +EXPORT_SYMBOL vmlinux 0xc94bd3c3 netpoll_setup +EXPORT_SYMBOL vmlinux 0xc94fdebf __genradix_ptr +EXPORT_SYMBOL vmlinux 0xc9634df9 in6addr_linklocal_allrouters +EXPORT_SYMBOL vmlinux 0xc972449f mempool_alloc_slab +EXPORT_SYMBOL vmlinux 0xc973079b __put_user_ns +EXPORT_SYMBOL vmlinux 0xc97f4fc0 qdisc_offload_graft_helper +EXPORT_SYMBOL vmlinux 0xc98281d4 generic_write_end +EXPORT_SYMBOL vmlinux 0xc995d564 sk_net_capable +EXPORT_SYMBOL vmlinux 0xc9b58bf1 md_bitmap_start_sync +EXPORT_SYMBOL vmlinux 0xc9c23ce1 freeze_super +EXPORT_SYMBOL vmlinux 0xc9cd64b6 sock_no_setsockopt +EXPORT_SYMBOL vmlinux 0xc9df055a xfrm_policy_walk_init +EXPORT_SYMBOL vmlinux 0xc9e57dbc xsk_umem_complete_tx +EXPORT_SYMBOL vmlinux 0xc9ecbcfd netpoll_parse_options +EXPORT_SYMBOL vmlinux 0xca07c4e2 input_register_handle +EXPORT_SYMBOL vmlinux 0xca1ea2c7 blk_set_stacking_limits +EXPORT_SYMBOL vmlinux 0xca21ebd3 bitmap_free +EXPORT_SYMBOL vmlinux 0xca2c6240 netdev_state_change +EXPORT_SYMBOL vmlinux 0xca431c05 wake_bit_function +EXPORT_SYMBOL vmlinux 0xca6bb63e netdev_lower_state_changed +EXPORT_SYMBOL vmlinux 0xca9360b5 rb_next +EXPORT_SYMBOL vmlinux 0xcaa4280f jbd2_journal_invalidatepage +EXPORT_SYMBOL vmlinux 0xcaac2820 new_inode +EXPORT_SYMBOL vmlinux 0xcab80079 add_random_ready_callback +EXPORT_SYMBOL vmlinux 0xcad93254 __dec_node_page_state +EXPORT_SYMBOL vmlinux 0xcae084a0 netdev_lower_get_first_private_rcu +EXPORT_SYMBOL vmlinux 0xcae3a07a sg_copy_from_buffer +EXPORT_SYMBOL vmlinux 0xcaeaddeb dev_base_lock +EXPORT_SYMBOL vmlinux 0xcaf2c603 scsi_sd_pm_domain +EXPORT_SYMBOL vmlinux 0xcaf636f5 device_get_mac_address +EXPORT_SYMBOL vmlinux 0xcb006f86 set_posix_acl +EXPORT_SYMBOL vmlinux 0xcb044ca5 sock_efree +EXPORT_SYMBOL vmlinux 0xcb2f6514 simple_transaction_release +EXPORT_SYMBOL vmlinux 0xcb34a6e7 hdmi_spd_infoframe_pack +EXPORT_SYMBOL vmlinux 0xcb387a65 ip6_frag_init +EXPORT_SYMBOL vmlinux 0xcb3ae215 call_blocking_lsm_notifier +EXPORT_SYMBOL vmlinux 0xcb44e3d2 __alloc_bucket_spinlocks +EXPORT_SYMBOL vmlinux 0xcb56d1b6 xa_store +EXPORT_SYMBOL vmlinux 0xcb7e520d icmpv6_ndo_send +EXPORT_SYMBOL vmlinux 0xcb99eed8 d_set_d_op +EXPORT_SYMBOL vmlinux 0xcb9d0dc3 udp_seq_start +EXPORT_SYMBOL vmlinux 0xcba4abe3 list_sort +EXPORT_SYMBOL vmlinux 0xcba755d7 blk_put_queue +EXPORT_SYMBOL vmlinux 0xcbb15b17 filemap_fdatawrite +EXPORT_SYMBOL vmlinux 0xcbd4898c fortify_panic +EXPORT_SYMBOL vmlinux 0xcbe7ff0c pagecache_write_begin +EXPORT_SYMBOL vmlinux 0xcc0386c7 netdev_name_node_alt_create +EXPORT_SYMBOL vmlinux 0xcc328a5c reservation_ww_class +EXPORT_SYMBOL vmlinux 0xcc3dd611 pci_bus_size_bridges +EXPORT_SYMBOL vmlinux 0xcc445ceb __sg_page_iter_dma_next +EXPORT_SYMBOL vmlinux 0xcc460738 insert_inode_locked4 +EXPORT_SYMBOL vmlinux 0xcc464c5c tcf_em_tree_destroy +EXPORT_SYMBOL vmlinux 0xcc4b7dc4 __find_get_block +EXPORT_SYMBOL vmlinux 0xcc5005fe msleep_interruptible +EXPORT_SYMBOL vmlinux 0xcc52d39a __quota_error +EXPORT_SYMBOL vmlinux 0xcc5c7ada param_ops_byte +EXPORT_SYMBOL vmlinux 0xcc5d22d9 can_do_mlock +EXPORT_SYMBOL vmlinux 0xcc5f017b tcp_ioctl +EXPORT_SYMBOL vmlinux 0xcc5ffdb5 build_skb_around +EXPORT_SYMBOL vmlinux 0xcc619cbb pci_disable_msix +EXPORT_SYMBOL vmlinux 0xcc833e90 kernel_write +EXPORT_SYMBOL vmlinux 0xcc92226c seq_pad +EXPORT_SYMBOL vmlinux 0xcc9f6f14 inetdev_by_index +EXPORT_SYMBOL vmlinux 0xcca94125 kstrtoint_from_user +EXPORT_SYMBOL vmlinux 0xccb491e8 bsearch +EXPORT_SYMBOL vmlinux 0xccc21f5e input_get_new_minor +EXPORT_SYMBOL vmlinux 0xccc4001d gen_pool_fixed_alloc +EXPORT_SYMBOL vmlinux 0xccc758d8 nla_policy_len +EXPORT_SYMBOL vmlinux 0xccd4c999 __sg_page_iter_start +EXPORT_SYMBOL vmlinux 0xcce7b3c7 pci_get_slot +EXPORT_SYMBOL vmlinux 0xcce8f048 igrab +EXPORT_SYMBOL vmlinux 0xcced28f8 lockref_put_or_lock +EXPORT_SYMBOL vmlinux 0xccfb9e07 dst_default_metrics +EXPORT_SYMBOL vmlinux 0xccfcfb16 neigh_table_init +EXPORT_SYMBOL vmlinux 0xccfd2ebc scsi_dev_info_list_del_keyed +EXPORT_SYMBOL vmlinux 0xcd256667 tcp_md5_needed +EXPORT_SYMBOL vmlinux 0xcd279169 nla_find +EXPORT_SYMBOL vmlinux 0xcd428c2f tcf_register_action +EXPORT_SYMBOL vmlinux 0xcd462bc0 jbd2_journal_start_commit +EXPORT_SYMBOL vmlinux 0xcd4c19db ip6_dst_alloc +EXPORT_SYMBOL vmlinux 0xcd6e6f26 register_md_personality +EXPORT_SYMBOL vmlinux 0xcd7220d6 block_page_mkwrite +EXPORT_SYMBOL vmlinux 0xcd8d6d43 blk_rq_map_user_iov +EXPORT_SYMBOL vmlinux 0xcda0546d xfrm_state_check_expire +EXPORT_SYMBOL vmlinux 0xcdc163b5 udp_lib_setsockopt +EXPORT_SYMBOL vmlinux 0xcdc39c9e security_ismaclabel +EXPORT_SYMBOL vmlinux 0xcdcdd320 dev_add_pack +EXPORT_SYMBOL vmlinux 0xcdd48129 tc_setup_flow_action +EXPORT_SYMBOL vmlinux 0xcde77bcc free_opal_dev +EXPORT_SYMBOL vmlinux 0xce0c1f34 dfltcc_deflate +EXPORT_SYMBOL vmlinux 0xce20b23e xfrm4_protocol_deregister +EXPORT_SYMBOL vmlinux 0xce2840e7 irq_set_irq_wake +EXPORT_SYMBOL vmlinux 0xce481f6a skb_store_bits +EXPORT_SYMBOL vmlinux 0xce4cdb8e fb_find_best_mode +EXPORT_SYMBOL vmlinux 0xce5ac24f zlib_inflate_workspacesize +EXPORT_SYMBOL vmlinux 0xce6fd352 nobh_write_begin +EXPORT_SYMBOL vmlinux 0xce7bfe70 vm_brk +EXPORT_SYMBOL vmlinux 0xce8b41eb mem_section +EXPORT_SYMBOL vmlinux 0xce920884 gro_cells_receive +EXPORT_SYMBOL vmlinux 0xcea1255b notify_change +EXPORT_SYMBOL vmlinux 0xceab0311 strchrnul +EXPORT_SYMBOL vmlinux 0xcebc7523 page_cache_prev_miss +EXPORT_SYMBOL vmlinux 0xceec8abd __mb_cache_entry_free +EXPORT_SYMBOL vmlinux 0xcef11951 from_kprojid +EXPORT_SYMBOL vmlinux 0xcef7a9d3 dev_printk +EXPORT_SYMBOL vmlinux 0xcf000c7e hdmi_infoframe_check +EXPORT_SYMBOL vmlinux 0xcf123ac0 vlan_vid_del +EXPORT_SYMBOL vmlinux 0xcf1c6ca3 cmdline_parts_find +EXPORT_SYMBOL vmlinux 0xcf295f6a complete_request_key +EXPORT_SYMBOL vmlinux 0xcf428306 simple_statfs +EXPORT_SYMBOL vmlinux 0xcf4b8a45 mnt_set_expiry +EXPORT_SYMBOL vmlinux 0xcf4e5ad1 follow_down_one +EXPORT_SYMBOL vmlinux 0xcf63c77b pci_add_new_bus +EXPORT_SYMBOL vmlinux 0xcf662d68 iterate_fd +EXPORT_SYMBOL vmlinux 0xcf7867ea netif_tx_stop_all_queues +EXPORT_SYMBOL vmlinux 0xcf8bf0ce dma_fence_wait_any_timeout +EXPORT_SYMBOL vmlinux 0xcf90dd35 gen_new_estimator +EXPORT_SYMBOL vmlinux 0xcfb20994 lockref_mark_dead +EXPORT_SYMBOL vmlinux 0xcfc87cde end_buffer_write_sync +EXPORT_SYMBOL vmlinux 0xcfd77343 dev_get_flags +EXPORT_SYMBOL vmlinux 0xcfe5e6f0 mpage_readpage +EXPORT_SYMBOL vmlinux 0xcffac7bc tcp_timewait_state_process +EXPORT_SYMBOL vmlinux 0xcfff636b sock_enable_timestamps +EXPORT_SYMBOL vmlinux 0xd0152d01 migrate_page_states +EXPORT_SYMBOL vmlinux 0xd0209766 rtnetlink_put_metrics +EXPORT_SYMBOL vmlinux 0xd0233cca mini_qdisc_pair_block_init +EXPORT_SYMBOL vmlinux 0xd02f2612 flow_block_cb_decref +EXPORT_SYMBOL vmlinux 0xd03f6119 take_dentry_name_snapshot +EXPORT_SYMBOL vmlinux 0xd042475c qdisc_get_rtab +EXPORT_SYMBOL vmlinux 0xd04c1a64 sysctl_devconf_inherit_init_net +EXPORT_SYMBOL vmlinux 0xd058af8f ipv6_setsockopt +EXPORT_SYMBOL vmlinux 0xd0654aba woken_wake_function +EXPORT_SYMBOL vmlinux 0xd0661fb3 vscnprintf +EXPORT_SYMBOL vmlinux 0xd06e4839 arch_spin_trylock_retry +EXPORT_SYMBOL vmlinux 0xd0770e0a tcp_sock_set_keepintvl +EXPORT_SYMBOL vmlinux 0xd0782c49 param_get_int +EXPORT_SYMBOL vmlinux 0xd07bc88c scsi_ioctl +EXPORT_SYMBOL vmlinux 0xd0859beb pci_find_next_bus +EXPORT_SYMBOL vmlinux 0xd0a91bab skip_spaces +EXPORT_SYMBOL vmlinux 0xd1277fb6 unregister_quota_format +EXPORT_SYMBOL vmlinux 0xd13cdbb3 read_cache_page +EXPORT_SYMBOL vmlinux 0xd1470ff7 kstrtou16_from_user +EXPORT_SYMBOL vmlinux 0xd1782ede fs_param_is_blob +EXPORT_SYMBOL vmlinux 0xd17de455 __kernel_fpu_begin +EXPORT_SYMBOL vmlinux 0xd1816f32 frontswap_writethrough +EXPORT_SYMBOL vmlinux 0xd1823829 rtnl_create_link +EXPORT_SYMBOL vmlinux 0xd183835f skb_pull +EXPORT_SYMBOL vmlinux 0xd1a2cf28 tc_setup_cb_add +EXPORT_SYMBOL vmlinux 0xd1b03de7 flow_rule_match_enc_ipv6_addrs +EXPORT_SYMBOL vmlinux 0xd1b4b419 tcw_get_intrg +EXPORT_SYMBOL vmlinux 0xd1d87e92 scsi_mlreturn_string +EXPORT_SYMBOL vmlinux 0xd1f152ad kstrtoll_from_user +EXPORT_SYMBOL vmlinux 0xd1fcc1f6 __frontswap_store +EXPORT_SYMBOL vmlinux 0xd221d7b5 hdmi_infoframe_pack +EXPORT_SYMBOL vmlinux 0xd229b7de soft_cursor +EXPORT_SYMBOL vmlinux 0xd236be61 neigh_update +EXPORT_SYMBOL vmlinux 0xd248b8de dma_direct_unmap_page +EXPORT_SYMBOL vmlinux 0xd25d4f74 console_blank_hook +EXPORT_SYMBOL vmlinux 0xd261244b from_kuid +EXPORT_SYMBOL vmlinux 0xd2632533 jbd2_journal_extend +EXPORT_SYMBOL vmlinux 0xd273a05e debug_unregister_view +EXPORT_SYMBOL vmlinux 0xd27b25dd blk_check_plugged +EXPORT_SYMBOL vmlinux 0xd29baf38 sock_no_sendmsg +EXPORT_SYMBOL vmlinux 0xd2ace015 blkdev_issue_write_same +EXPORT_SYMBOL vmlinux 0xd2d814fc generic_copy_file_range +EXPORT_SYMBOL vmlinux 0xd2da1048 register_netdevice_notifier +EXPORT_SYMBOL vmlinux 0xd2ed00ae __skb_recv_datagram +EXPORT_SYMBOL vmlinux 0xd316cf75 inet_sk_rebuild_header +EXPORT_SYMBOL vmlinux 0xd344e5b5 compat_nf_setsockopt +EXPORT_SYMBOL vmlinux 0xd34d2b82 scmd_printk +EXPORT_SYMBOL vmlinux 0xd3543063 memcg_kmem_enabled_key +EXPORT_SYMBOL vmlinux 0xd3561352 swake_up_all +EXPORT_SYMBOL vmlinux 0xd35a6d31 mempool_kmalloc +EXPORT_SYMBOL vmlinux 0xd35dd7f3 vprintk_emit +EXPORT_SYMBOL vmlinux 0xd366b9e7 kernel_getpeername +EXPORT_SYMBOL vmlinux 0xd36dc10c get_random_u32 +EXPORT_SYMBOL vmlinux 0xd39cb3ee open_with_fake_path +EXPORT_SYMBOL vmlinux 0xd3a73aac tty_register_device +EXPORT_SYMBOL vmlinux 0xd3ae96fa fs_param_is_path +EXPORT_SYMBOL vmlinux 0xd3af979c memdup_user +EXPORT_SYMBOL vmlinux 0xd3b25035 super_setup_bdi_name +EXPORT_SYMBOL vmlinux 0xd3eaf1ed devlink_dpipe_entry_clear +EXPORT_SYMBOL vmlinux 0xd402d8e2 thaw_bdev +EXPORT_SYMBOL vmlinux 0xd406d266 fb_mode_is_equal +EXPORT_SYMBOL vmlinux 0xd40f6f36 __jhash_string +EXPORT_SYMBOL vmlinux 0xd40f82b0 dcb_ieee_getapp_prio_dscp_mask_map +EXPORT_SYMBOL vmlinux 0xd41f5402 cpumask_next +EXPORT_SYMBOL vmlinux 0xd428147d __dynamic_ibdev_dbg +EXPORT_SYMBOL vmlinux 0xd4442037 configfs_depend_item +EXPORT_SYMBOL vmlinux 0xd458296a xfrm_lookup_route +EXPORT_SYMBOL vmlinux 0xd462d7f1 give_up_console +EXPORT_SYMBOL vmlinux 0xd46b1ad0 security_path_mknod +EXPORT_SYMBOL vmlinux 0xd46d54c0 devm_register_reboot_notifier +EXPORT_SYMBOL vmlinux 0xd48f69c8 tcw_get_tsb +EXPORT_SYMBOL vmlinux 0xd4952cc0 cpumask_next_wrap +EXPORT_SYMBOL vmlinux 0xd4a10570 fs_param_is_s32 +EXPORT_SYMBOL vmlinux 0xd4a7ea9e bdgrab +EXPORT_SYMBOL vmlinux 0xd4b01091 node_states +EXPORT_SYMBOL vmlinux 0xd4b8acb7 t10_pi_type3_ip +EXPORT_SYMBOL vmlinux 0xd4bb4a82 inet6addr_validator_notifier_call_chain +EXPORT_SYMBOL vmlinux 0xd4c8c54e dma_fence_chain_ops +EXPORT_SYMBOL vmlinux 0xd4e00731 linkwatch_fire_event +EXPORT_SYMBOL vmlinux 0xd4f88a20 inode_init_owner +EXPORT_SYMBOL vmlinux 0xd4fa5a87 __kfifo_dma_out_prepare +EXPORT_SYMBOL vmlinux 0xd518b841 register_mii_tstamp_controller +EXPORT_SYMBOL vmlinux 0xd5263820 mb_cache_destroy +EXPORT_SYMBOL vmlinux 0xd5358412 icmpv6_send +EXPORT_SYMBOL vmlinux 0xd5402a0c show_init_ipc_ns +EXPORT_SYMBOL vmlinux 0xd5545cde __close_fd +EXPORT_SYMBOL vmlinux 0xd5635a78 pci_request_selected_regions_exclusive +EXPORT_SYMBOL vmlinux 0xd59b638f simple_readpage +EXPORT_SYMBOL vmlinux 0xd59e479a xfrm_unregister_type +EXPORT_SYMBOL vmlinux 0xd5a63cd7 gen_replace_estimator +EXPORT_SYMBOL vmlinux 0xd5b3d0d5 xxh64_copy_state +EXPORT_SYMBOL vmlinux 0xd5d54ea3 vfs_symlink +EXPORT_SYMBOL vmlinux 0xd5d790f2 bdev_read_only +EXPORT_SYMBOL vmlinux 0xd5e90454 ap_domain_index +EXPORT_SYMBOL vmlinux 0xd6023be4 compat_ip_setsockopt +EXPORT_SYMBOL vmlinux 0xd60736ec gf128mul_free_64k +EXPORT_SYMBOL vmlinux 0xd607ba64 user_path_create +EXPORT_SYMBOL vmlinux 0xd61d452a pci_find_resource +EXPORT_SYMBOL vmlinux 0xd62657b1 inet_sock_destruct +EXPORT_SYMBOL vmlinux 0xd63286fa user_revoke +EXPORT_SYMBOL vmlinux 0xd652e5dd tcf_idr_create +EXPORT_SYMBOL vmlinux 0xd655bbc7 udp_seq_stop +EXPORT_SYMBOL vmlinux 0xd662ca1d qdisc_hash_del +EXPORT_SYMBOL vmlinux 0xd6632689 override_creds +EXPORT_SYMBOL vmlinux 0xd666a588 smp_ctl_clear_bit +EXPORT_SYMBOL vmlinux 0xd66be194 end_buffer_async_write +EXPORT_SYMBOL vmlinux 0xd66ca2d6 dm_table_get_md +EXPORT_SYMBOL vmlinux 0xd677f970 security_sctp_sk_clone +EXPORT_SYMBOL vmlinux 0xd6872e7b set_wb_congested +EXPORT_SYMBOL vmlinux 0xd688716b dm_kcopyd_client_create +EXPORT_SYMBOL vmlinux 0xd68a01b8 xa_erase +EXPORT_SYMBOL vmlinux 0xd68c5a1f adjust_resource +EXPORT_SYMBOL vmlinux 0xd69031bd genlmsg_multicast_allns +EXPORT_SYMBOL vmlinux 0xd69b3c98 utf8_strncasecmp +EXPORT_SYMBOL vmlinux 0xd69d0f51 kbd_ascebc +EXPORT_SYMBOL vmlinux 0xd6b6e5ed dst_cow_metrics_generic +EXPORT_SYMBOL vmlinux 0xd6cd39f1 neigh_proc_dointvec +EXPORT_SYMBOL vmlinux 0xd6e8a587 kobject_get +EXPORT_SYMBOL vmlinux 0xd6eaaea1 full_name_hash +EXPORT_SYMBOL vmlinux 0xd6ee688f vmalloc +EXPORT_SYMBOL vmlinux 0xd6f61cb2 __register_binfmt +EXPORT_SYMBOL vmlinux 0xd6f9562a pci_bus_add_devices +EXPORT_SYMBOL vmlinux 0xd6fb8f2a tcf_get_next_proto +EXPORT_SYMBOL vmlinux 0xd6fde043 is_module_sig_enforced +EXPORT_SYMBOL vmlinux 0xd707094c security_path_unlink +EXPORT_SYMBOL vmlinux 0xd707a875 dev_addr_add +EXPORT_SYMBOL vmlinux 0xd70d35a1 gf128mul_4k_bbe +EXPORT_SYMBOL vmlinux 0xd717c7d8 ipv6_find_hdr +EXPORT_SYMBOL vmlinux 0xd71941d1 page_readlink +EXPORT_SYMBOL vmlinux 0xd749261e nvmem_get_mac_address +EXPORT_SYMBOL vmlinux 0xd76dc918 inet6_release +EXPORT_SYMBOL vmlinux 0xd783a877 pci_reenable_device +EXPORT_SYMBOL vmlinux 0xd790bd5d pcim_set_mwi +EXPORT_SYMBOL vmlinux 0xd79e6a36 km_policy_notify +EXPORT_SYMBOL vmlinux 0xd7ae82df tcp_md5_do_add +EXPORT_SYMBOL vmlinux 0xd7b47bd6 rt_dst_alloc +EXPORT_SYMBOL vmlinux 0xd7c9378a end_buffer_read_sync +EXPORT_SYMBOL vmlinux 0xd7cd002a kmem_cache_free +EXPORT_SYMBOL vmlinux 0xd7d280ad irq_poll_complete +EXPORT_SYMBOL vmlinux 0xd7d9624a blk_integrity_register +EXPORT_SYMBOL vmlinux 0xd7db3b05 netif_napi_add +EXPORT_SYMBOL vmlinux 0xd7e56a4e simple_strtoll +EXPORT_SYMBOL vmlinux 0xd80840ec km_report +EXPORT_SYMBOL vmlinux 0xd81621cf raw3270_deactivate_view +EXPORT_SYMBOL vmlinux 0xd827fff3 memremap +EXPORT_SYMBOL vmlinux 0xd8294743 unregister_tcf_proto_ops +EXPORT_SYMBOL vmlinux 0xd830a53d bdi_register +EXPORT_SYMBOL vmlinux 0xd83849e2 ZSTD_getDictID_fromFrame +EXPORT_SYMBOL vmlinux 0xd83e5d90 pci_iomap_wc_range +EXPORT_SYMBOL vmlinux 0xd84c3c5f proc_create_data +EXPORT_SYMBOL vmlinux 0xd84fb196 dquot_transfer +EXPORT_SYMBOL vmlinux 0xd8602b6a tun_is_xdp_frame +EXPORT_SYMBOL vmlinux 0xd86382d1 dns_query +EXPORT_SYMBOL vmlinux 0xd89da37f movable_zone +EXPORT_SYMBOL vmlinux 0xd8a994eb scsi_extd_sense_format +EXPORT_SYMBOL vmlinux 0xd8ce3637 flow_rule_match_control +EXPORT_SYMBOL vmlinux 0xd8d9828b security_inode_invalidate_secctx +EXPORT_SYMBOL vmlinux 0xd8d9b726 arp_create +EXPORT_SYMBOL vmlinux 0xd8e74857 __blockdev_direct_IO +EXPORT_SYMBOL vmlinux 0xd8fcda72 cpcmd +EXPORT_SYMBOL vmlinux 0xd90e3db2 submit_bio +EXPORT_SYMBOL vmlinux 0xd915fba5 param_get_ullong +EXPORT_SYMBOL vmlinux 0xd9189274 put_ipc_ns +EXPORT_SYMBOL vmlinux 0xd91e7071 bioset_init_from_src +EXPORT_SYMBOL vmlinux 0xd923bf8a invalidate_mapping_pages +EXPORT_SYMBOL vmlinux 0xd926e599 __xa_erase +EXPORT_SYMBOL vmlinux 0xd94b6609 scsi_host_put +EXPORT_SYMBOL vmlinux 0xd94e277a netlink_set_err +EXPORT_SYMBOL vmlinux 0xd94f2afe inet6_add_offload +EXPORT_SYMBOL vmlinux 0xd965606f inet_frags_fini +EXPORT_SYMBOL vmlinux 0xd96de8cb __sysfs_match_string +EXPORT_SYMBOL vmlinux 0xd9773e9e mount_bdev +EXPORT_SYMBOL vmlinux 0xd9819d4a blk_execute_rq +EXPORT_SYMBOL vmlinux 0xd983e0f5 config_item_get +EXPORT_SYMBOL vmlinux 0xd985dc99 mempool_free_pages +EXPORT_SYMBOL vmlinux 0xd9b3f97d console_devno +EXPORT_SYMBOL vmlinux 0xd9ce437b request_key_tag +EXPORT_SYMBOL vmlinux 0xd9d8fd16 register_restart_handler +EXPORT_SYMBOL vmlinux 0xd9d952d1 crypto_aes_sbox +EXPORT_SYMBOL vmlinux 0xd9f315dd alloc_buffer_head +EXPORT_SYMBOL vmlinux 0xda02dc7b d_alloc_parallel +EXPORT_SYMBOL vmlinux 0xda3d10a8 security_tun_dev_open +EXPORT_SYMBOL vmlinux 0xda48e902 ap_queue_message +EXPORT_SYMBOL vmlinux 0xda72a7ec ZSTD_nextInputType +EXPORT_SYMBOL vmlinux 0xda746e26 jbd2_journal_restart +EXPORT_SYMBOL vmlinux 0xda79f13e __tcp_md5_do_lookup +EXPORT_SYMBOL vmlinux 0xda833b56 set_user_nice +EXPORT_SYMBOL vmlinux 0xda872864 security_locked_down +EXPORT_SYMBOL vmlinux 0xda89ea3b ip_idents_reserve +EXPORT_SYMBOL vmlinux 0xdaa3e3f5 irq_set_chip +EXPORT_SYMBOL vmlinux 0xdaa90d98 add_watch_to_object +EXPORT_SYMBOL vmlinux 0xdab54668 nf_log_register +EXPORT_SYMBOL vmlinux 0xdac4913a bitmap_allocate_region +EXPORT_SYMBOL vmlinux 0xdac97957 _atomic_dec_and_lock +EXPORT_SYMBOL vmlinux 0xdae162cb string_unescape +EXPORT_SYMBOL vmlinux 0xdafe57b8 skb_find_text +EXPORT_SYMBOL vmlinux 0xdb2a1813 __put_page +EXPORT_SYMBOL vmlinux 0xdb4ede98 blk_queue_io_min +EXPORT_SYMBOL vmlinux 0xdb760f52 __kfifo_free +EXPORT_SYMBOL vmlinux 0xdb7c69a0 pci_fixup_cardbus +EXPORT_SYMBOL vmlinux 0xdb9d51fd tcp_req_err +EXPORT_SYMBOL vmlinux 0xdbc5b000 device_match_acpi_dev +EXPORT_SYMBOL vmlinux 0xdbd3fb2d iov_iter_get_pages_alloc +EXPORT_SYMBOL vmlinux 0xdbdf6c92 ioport_resource +EXPORT_SYMBOL vmlinux 0xdc0c6f97 fscrypt_fname_disk_to_usr +EXPORT_SYMBOL vmlinux 0xdc14eda7 pci_pci_problems +EXPORT_SYMBOL vmlinux 0xdc1a59a2 nvm_unregister_tgt_type +EXPORT_SYMBOL vmlinux 0xdc3d2af7 tcf_exts_change +EXPORT_SYMBOL vmlinux 0xdc3fcbc9 __sw_hweight8 +EXPORT_SYMBOL vmlinux 0xdc49c198 reciprocal_value_adv +EXPORT_SYMBOL vmlinux 0xdc4fa154 bdi_set_max_ratio +EXPORT_SYMBOL vmlinux 0xdc51277f skb_queue_head +EXPORT_SYMBOL vmlinux 0xdc56ed5d locks_free_lock +EXPORT_SYMBOL vmlinux 0xdc80f44c would_dump +EXPORT_SYMBOL vmlinux 0xdca71bcd dma_direct_map_sg +EXPORT_SYMBOL vmlinux 0xdcb7e693 check_disk_change +EXPORT_SYMBOL vmlinux 0xdcfd21d3 xp_raw_get_dma +EXPORT_SYMBOL vmlinux 0xdd081e87 __dynamic_dev_dbg +EXPORT_SYMBOL vmlinux 0xdd0f6423 prepare_to_swait_exclusive +EXPORT_SYMBOL vmlinux 0xdd1cdbcb add_wait_queue +EXPORT_SYMBOL vmlinux 0xdd2c169b mb_cache_create +EXPORT_SYMBOL vmlinux 0xdd38b521 dquot_mark_dquot_dirty +EXPORT_SYMBOL vmlinux 0xdd4bffbf gen_pool_add_owner +EXPORT_SYMBOL vmlinux 0xdd60cae7 dev_uc_flush +EXPORT_SYMBOL vmlinux 0xdd69a95a starget_for_each_device +EXPORT_SYMBOL vmlinux 0xdd6f5eb0 current_in_userns +EXPORT_SYMBOL vmlinux 0xdd6f8a6e param_ops_charp +EXPORT_SYMBOL vmlinux 0xdd742d72 __sg_free_table +EXPORT_SYMBOL vmlinux 0xdd849d51 scsi_get_sense_info_fld +EXPORT_SYMBOL vmlinux 0xdda51894 netif_stacked_transfer_operstate +EXPORT_SYMBOL vmlinux 0xddab6a01 registered_fb +EXPORT_SYMBOL vmlinux 0xddaf5797 fwnode_get_mac_address +EXPORT_SYMBOL vmlinux 0xddfb80da vfs_unlink +EXPORT_SYMBOL vmlinux 0xde018ff6 sock_no_sendmsg_locked +EXPORT_SYMBOL vmlinux 0xde0bdcff memset +EXPORT_SYMBOL vmlinux 0xde10f536 proc_douintvec +EXPORT_SYMBOL vmlinux 0xde2d28f3 param_ops_bint +EXPORT_SYMBOL vmlinux 0xde30edc7 shrink_dcache_sb +EXPORT_SYMBOL vmlinux 0xde4d4ace dim_calc_stats +EXPORT_SYMBOL vmlinux 0xde639e79 param_set_copystring +EXPORT_SYMBOL vmlinux 0xde6aa47c send_sig_info +EXPORT_SYMBOL vmlinux 0xde71c142 netdev_has_any_upper_dev +EXPORT_SYMBOL vmlinux 0xde7ffbf5 can_nice +EXPORT_SYMBOL vmlinux 0xde8a415c xor_block_xc +EXPORT_SYMBOL vmlinux 0xded39a6b gen_kill_estimator +EXPORT_SYMBOL vmlinux 0xdeda2ae2 tcw_get_data +EXPORT_SYMBOL vmlinux 0xdee26594 __lock_page +EXPORT_SYMBOL vmlinux 0xdef61811 proc_set_user +EXPORT_SYMBOL vmlinux 0xdef7c893 fb_match_mode +EXPORT_SYMBOL vmlinux 0xdf2c2742 rb_last +EXPORT_SYMBOL vmlinux 0xdf4928ea dquot_acquire +EXPORT_SYMBOL vmlinux 0xdf54a8f7 netlink_unregister_notifier +EXPORT_SYMBOL vmlinux 0xdf55eda6 netdev_has_upper_dev_all_rcu +EXPORT_SYMBOL vmlinux 0xdf5ceb75 xfrm_state_lookup +EXPORT_SYMBOL vmlinux 0xdf6f6001 scsi_vpd_lun_id +EXPORT_SYMBOL vmlinux 0xdf702668 __d_drop +EXPORT_SYMBOL vmlinux 0xdf792516 security_sock_rcv_skb +EXPORT_SYMBOL vmlinux 0xdf8b6dd7 con_set_default_unimap +EXPORT_SYMBOL vmlinux 0xdf929370 fs_overflowgid +EXPORT_SYMBOL vmlinux 0xdf93b9d8 timespec64_to_jiffies +EXPORT_SYMBOL vmlinux 0xdf95bf5c read_cache_page_gfp +EXPORT_SYMBOL vmlinux 0xdf98871d airq_iv_release +EXPORT_SYMBOL vmlinux 0xdf99ff37 find_get_pages_range_tag +EXPORT_SYMBOL vmlinux 0xdfa9acca smp_cpu_mtid +EXPORT_SYMBOL vmlinux 0xdfadd3a4 crypto_sha512_update +EXPORT_SYMBOL vmlinux 0xdfb44182 filp_open +EXPORT_SYMBOL vmlinux 0xdfb95d02 input_get_timestamp +EXPORT_SYMBOL vmlinux 0xdfc01958 ns_capable +EXPORT_SYMBOL vmlinux 0xdfc90c17 netdev_adjacent_change_prepare +EXPORT_SYMBOL vmlinux 0xdfcc992c current_work +EXPORT_SYMBOL vmlinux 0xdfdfa9e7 utf8nfdi +EXPORT_SYMBOL vmlinux 0xdffc80fc vesa_modes +EXPORT_SYMBOL vmlinux 0xe0040dce sock_queue_err_skb +EXPORT_SYMBOL vmlinux 0xe0158858 dquot_quota_sync +EXPORT_SYMBOL vmlinux 0xe0241c04 raw3270_activate_view +EXPORT_SYMBOL vmlinux 0xe02f4e13 locks_copy_conflock +EXPORT_SYMBOL vmlinux 0xe03232ad tty_port_close_start +EXPORT_SYMBOL vmlinux 0xe038e2ce blkdev_put +EXPORT_SYMBOL vmlinux 0xe038e784 dma_mmap_attrs +EXPORT_SYMBOL vmlinux 0xe055aa68 dcache_dir_open +EXPORT_SYMBOL vmlinux 0xe059f75c blk_queue_dma_alignment +EXPORT_SYMBOL vmlinux 0xe07279e8 blk_mq_rq_cpu +EXPORT_SYMBOL vmlinux 0xe0875eb1 kstrtobool +EXPORT_SYMBOL vmlinux 0xe0b13336 argv_free +EXPORT_SYMBOL vmlinux 0xe0b979e2 ip_mc_inc_group +EXPORT_SYMBOL vmlinux 0xe0bc4fb2 simple_write_to_buffer +EXPORT_SYMBOL vmlinux 0xe100f6f2 tty_unregister_device +EXPORT_SYMBOL vmlinux 0xe10a2050 dev_get_by_index +EXPORT_SYMBOL vmlinux 0xe10d06b8 sb_min_blocksize +EXPORT_SYMBOL vmlinux 0xe123f3d9 dma_fence_release +EXPORT_SYMBOL vmlinux 0xe129a5b9 pcim_pin_device +EXPORT_SYMBOL vmlinux 0xe13af26f sclp_pci_deconfigure +EXPORT_SYMBOL vmlinux 0xe146d251 debug_unregister +EXPORT_SYMBOL vmlinux 0xe181eda8 sk_send_sigurg +EXPORT_SYMBOL vmlinux 0xe1a41658 d_instantiate_new +EXPORT_SYMBOL vmlinux 0xe1a4f16a secure_ipv6_port_ephemeral +EXPORT_SYMBOL vmlinux 0xe1c88c16 dev_pre_changeaddr_notify +EXPORT_SYMBOL vmlinux 0xe1d7c572 sock_set_reuseport +EXPORT_SYMBOL vmlinux 0xe1dcf64a audit_log_format +EXPORT_SYMBOL vmlinux 0xe1e7e40c rtnl_nla_parse_ifla +EXPORT_SYMBOL vmlinux 0xe1f03668 security_socket_socketpair +EXPORT_SYMBOL vmlinux 0xe2060d88 compat_nf_getsockopt +EXPORT_SYMBOL vmlinux 0xe24a60a3 security_sk_classify_flow +EXPORT_SYMBOL vmlinux 0xe251bdb2 __alloc_disk_node +EXPORT_SYMBOL vmlinux 0xe255e728 bdev_stack_limits +EXPORT_SYMBOL vmlinux 0xe273d75d alloc_cpu_rmap +EXPORT_SYMBOL vmlinux 0xe2740e56 ZSTD_getFrameContentSize +EXPORT_SYMBOL vmlinux 0xe277bbe1 skb_copy_and_csum_datagram_msg +EXPORT_SYMBOL vmlinux 0xe28da80b tccb_add_dcw +EXPORT_SYMBOL vmlinux 0xe290e9db input_mt_destroy_slots +EXPORT_SYMBOL vmlinux 0xe29d2d02 __genradix_ptr_alloc +EXPORT_SYMBOL vmlinux 0xe2ab8e8b tcp_peek_len +EXPORT_SYMBOL vmlinux 0xe2add629 tty_port_tty_set +EXPORT_SYMBOL vmlinux 0xe2b3f354 __alloc_skb +EXPORT_SYMBOL vmlinux 0xe2d5255a strcmp +EXPORT_SYMBOL vmlinux 0xe2f225c5 netdev_bonding_info_change +EXPORT_SYMBOL vmlinux 0xe2fd1870 vm_map_pages_zero +EXPORT_SYMBOL vmlinux 0xe2ffeef3 scsi_req_init +EXPORT_SYMBOL vmlinux 0xe30be315 hdmi_vendor_infoframe_pack +EXPORT_SYMBOL vmlinux 0xe320f2d6 ilookup5 +EXPORT_SYMBOL vmlinux 0xe3210f4a xfrm_state_lookup_byaddr +EXPORT_SYMBOL vmlinux 0xe32ab4d8 xxh64_digest +EXPORT_SYMBOL vmlinux 0xe347fd64 vfs_dedupe_file_range +EXPORT_SYMBOL vmlinux 0xe35fb609 kmemdup +EXPORT_SYMBOL vmlinux 0xe3844159 bio_free_pages +EXPORT_SYMBOL vmlinux 0xe3bc3b3a input_mt_report_pointer_emulation +EXPORT_SYMBOL vmlinux 0xe3d70645 raw3270_request_set_cmd +EXPORT_SYMBOL vmlinux 0xe3e8b483 sock_sendmsg +EXPORT_SYMBOL vmlinux 0xe3ec2f2b alloc_chrdev_region +EXPORT_SYMBOL vmlinux 0xe3ff2c41 get_random_u64 +EXPORT_SYMBOL vmlinux 0xe4022ac4 inet_addr_type_dev_table +EXPORT_SYMBOL vmlinux 0xe402eca3 scsi_target_quiesce +EXPORT_SYMBOL vmlinux 0xe411fee1 kobject_init +EXPORT_SYMBOL vmlinux 0xe4156f53 udp_flush_pending_frames +EXPORT_SYMBOL vmlinux 0xe4329092 __ctzdi2 +EXPORT_SYMBOL vmlinux 0xe43d9ab2 slash_name +EXPORT_SYMBOL vmlinux 0xe43de194 generic_file_llseek +EXPORT_SYMBOL vmlinux 0xe441e95a refcount_dec_not_one +EXPORT_SYMBOL vmlinux 0xe45454ec make_kgid +EXPORT_SYMBOL vmlinux 0xe45674ae flow_rule_match_mpls +EXPORT_SYMBOL vmlinux 0xe46db391 netpoll_poll_enable +EXPORT_SYMBOL vmlinux 0xe4a250b6 radix_tree_delete_item +EXPORT_SYMBOL vmlinux 0xe4a3752b follow_pte_pmd +EXPORT_SYMBOL vmlinux 0xe4a6c97d textsearch_find_continuous +EXPORT_SYMBOL vmlinux 0xe4afcdb2 pci_enable_msix_range +EXPORT_SYMBOL vmlinux 0xe4b0680d buffer_check_dirty_writeback +EXPORT_SYMBOL vmlinux 0xe4dd11d8 seq_write +EXPORT_SYMBOL vmlinux 0xe5094832 page_table_allocate_pgste +EXPORT_SYMBOL vmlinux 0xe50ae128 xa_set_mark +EXPORT_SYMBOL vmlinux 0xe521bf17 __cgroup_bpf_run_filter_sock_addr +EXPORT_SYMBOL vmlinux 0xe523ad75 synchronize_irq +EXPORT_SYMBOL vmlinux 0xe524e3e2 bcmp +EXPORT_SYMBOL vmlinux 0xe53f2d0e alloc_pages_current +EXPORT_SYMBOL vmlinux 0xe54c8479 sk_reset_timer +EXPORT_SYMBOL vmlinux 0xe5554bb1 dup_iter +EXPORT_SYMBOL vmlinux 0xe55ca574 dma_resv_add_shared_fence +EXPORT_SYMBOL vmlinux 0xe5633002 dcb_ieee_getapp_dscp_prio_mask_map +EXPORT_SYMBOL vmlinux 0xe56b0d0f stsch +EXPORT_SYMBOL vmlinux 0xe58090ca security_ib_endport_manage_subnet +EXPORT_SYMBOL vmlinux 0xe583c517 airq_iv_scan +EXPORT_SYMBOL vmlinux 0xe5867808 dlci_ioctl_set +EXPORT_SYMBOL vmlinux 0xe58ba7c0 skb_realloc_headroom +EXPORT_SYMBOL vmlinux 0xe590dea3 sk_busy_loop_end +EXPORT_SYMBOL vmlinux 0xe59c3b73 tty_chars_in_buffer +EXPORT_SYMBOL vmlinux 0xe5bf95b7 copy_page_from_iter +EXPORT_SYMBOL vmlinux 0xe5c78a99 do_blank_screen +EXPORT_SYMBOL vmlinux 0xe5de42a1 inet_put_port +EXPORT_SYMBOL vmlinux 0xe5ea6124 ZSTD_initDStream +EXPORT_SYMBOL vmlinux 0xe5eca3fb d_add_ci +EXPORT_SYMBOL vmlinux 0xe612ac77 tcp_create_openreq_child +EXPORT_SYMBOL vmlinux 0xe613a798 inet_addr_is_any +EXPORT_SYMBOL vmlinux 0xe61b7f5f register_adapter_interrupt +EXPORT_SYMBOL vmlinux 0xe61f1732 __bio_clone_fast +EXPORT_SYMBOL vmlinux 0xe641f2f5 qdisc_put_unlocked +EXPORT_SYMBOL vmlinux 0xe6576c94 simple_getattr +EXPORT_SYMBOL vmlinux 0xe6a3e2ed dquot_set_dqinfo +EXPORT_SYMBOL vmlinux 0xe6c0d77b rt6_lookup +EXPORT_SYMBOL vmlinux 0xe6c30fdf napi_gro_frags +EXPORT_SYMBOL vmlinux 0xe6c4dd71 set_blocksize +EXPORT_SYMBOL vmlinux 0xe6c6d95b skb_append +EXPORT_SYMBOL vmlinux 0xe6eed674 md_bitmap_startwrite +EXPORT_SYMBOL vmlinux 0xe6f1486d dql_reset +EXPORT_SYMBOL vmlinux 0xe713a97a irq_subclass_unregister +EXPORT_SYMBOL vmlinux 0xe7324b9a utf8nfdicf +EXPORT_SYMBOL vmlinux 0xe7394307 mr_table_alloc +EXPORT_SYMBOL vmlinux 0xe743617d datagram_poll +EXPORT_SYMBOL vmlinux 0xe75d2b95 set_security_override_from_ctx +EXPORT_SYMBOL vmlinux 0xe78d2dad config_group_find_item +EXPORT_SYMBOL vmlinux 0xe7952242 dquot_reclaim_space_nodirty +EXPORT_SYMBOL vmlinux 0xe796f19a hdmi_audio_infoframe_pack +EXPORT_SYMBOL vmlinux 0xe798236d jiffies +EXPORT_SYMBOL vmlinux 0xe7d3c4c1 __tracepoint_kmem_cache_free +EXPORT_SYMBOL vmlinux 0xe7d4daac seq_list_next +EXPORT_SYMBOL vmlinux 0xe7e7064b bio_split +EXPORT_SYMBOL vmlinux 0xe7f77d2e pcim_iounmap_regions +EXPORT_SYMBOL vmlinux 0xe7fa2b45 __cleancache_put_page +EXPORT_SYMBOL vmlinux 0xe8109520 set_page_dirty +EXPORT_SYMBOL vmlinux 0xe81a7bd5 xfrm_state_unregister_afinfo +EXPORT_SYMBOL vmlinux 0xe846eb19 __close_fd_get_file +EXPORT_SYMBOL vmlinux 0xe8812810 filemap_fdatawrite_range +EXPORT_SYMBOL vmlinux 0xe8b59502 blk_queue_update_dma_pad +EXPORT_SYMBOL vmlinux 0xe8ba125d kmemdup_nul +EXPORT_SYMBOL vmlinux 0xe8bce928 cdev_device_del +EXPORT_SYMBOL vmlinux 0xe8bdcf9d configfs_register_default_group +EXPORT_SYMBOL vmlinux 0xe8c2513b pci_enable_msi +EXPORT_SYMBOL vmlinux 0xe8cc04b7 sock_init_data +EXPORT_SYMBOL vmlinux 0xe8cec629 bio_put +EXPORT_SYMBOL vmlinux 0xe8d13ebd seq_vprintf +EXPORT_SYMBOL vmlinux 0xe8d499d1 d_prune_aliases +EXPORT_SYMBOL vmlinux 0xe8d6449b neigh_lookup +EXPORT_SYMBOL vmlinux 0xe8de8a80 dma_fence_signal_locked +EXPORT_SYMBOL vmlinux 0xe9020709 trace_seq_hex_dump +EXPORT_SYMBOL vmlinux 0xe90cf8c5 xfrm_input +EXPORT_SYMBOL vmlinux 0xe914e41e strcpy +EXPORT_SYMBOL vmlinux 0xe94b6474 seg6_push_hmac +EXPORT_SYMBOL vmlinux 0xe953b21f get_next_ino +EXPORT_SYMBOL vmlinux 0xe956bb96 xfrm4_rcv +EXPORT_SYMBOL vmlinux 0xe9a25908 jbd2_journal_start +EXPORT_SYMBOL vmlinux 0xe9c58a09 tcw_finalize +EXPORT_SYMBOL vmlinux 0xe9d57b7b __dev_getfirstbyhwtype +EXPORT_SYMBOL vmlinux 0xe9e864db kmem_cache_free_bulk +EXPORT_SYMBOL vmlinux 0xe9ec4711 tty_set_operations +EXPORT_SYMBOL vmlinux 0xe9f390f1 clear_wb_congested +EXPORT_SYMBOL vmlinux 0xe9f7149c zlib_deflate_workspacesize +EXPORT_SYMBOL vmlinux 0xea036d57 dst_alloc +EXPORT_SYMBOL vmlinux 0xea17194a dma_free_attrs +EXPORT_SYMBOL vmlinux 0xea18009e tcf_exts_dump_stats +EXPORT_SYMBOL vmlinux 0xea1b8cf5 mpage_writepages +EXPORT_SYMBOL vmlinux 0xea25a92e __dev_kfree_skb_irq +EXPORT_SYMBOL vmlinux 0xea264999 tcf_em_register +EXPORT_SYMBOL vmlinux 0xea294c7d dev_mc_add_global +EXPORT_SYMBOL vmlinux 0xea29e049 secpath_set +EXPORT_SYMBOL vmlinux 0xea3c8e4e scsilun_to_int +EXPORT_SYMBOL vmlinux 0xea3e9beb xfrm_if_register_cb +EXPORT_SYMBOL vmlinux 0xea500071 flow_block_cb_free +EXPORT_SYMBOL vmlinux 0xea6c2eef __cleancache_invalidate_page +EXPORT_SYMBOL vmlinux 0xea6f9a36 zlib_deflate_dfltcc_enabled +EXPORT_SYMBOL vmlinux 0xea80dfe1 security_req_classify_flow +EXPORT_SYMBOL vmlinux 0xea83e6c8 security_sb_remount +EXPORT_SYMBOL vmlinux 0xea872313 find_next_bit_inv +EXPORT_SYMBOL vmlinux 0xea8fa3e8 scsi_compat_ioctl +EXPORT_SYMBOL vmlinux 0xeaa442e0 qdisc_watchdog_init +EXPORT_SYMBOL vmlinux 0xeac3b1ed locks_remove_posix +EXPORT_SYMBOL vmlinux 0xeacaee7e inode_init_once +EXPORT_SYMBOL vmlinux 0xead58fb9 print_hex_dump +EXPORT_SYMBOL vmlinux 0xeadc3727 __block_write_begin +EXPORT_SYMBOL vmlinux 0xeadead63 param_set_ullong +EXPORT_SYMBOL vmlinux 0xeadeeecc padata_set_cpumask +EXPORT_SYMBOL vmlinux 0xeae7ddac delete_from_page_cache +EXPORT_SYMBOL vmlinux 0xeaf268af configfs_register_group +EXPORT_SYMBOL vmlinux 0xeaf5ebcb inode_needs_sync +EXPORT_SYMBOL vmlinux 0xeafc141f __posix_acl_chmod +EXPORT_SYMBOL vmlinux 0xeb033c87 dev_warn_hash +EXPORT_SYMBOL vmlinux 0xeb034823 netdev_update_features +EXPORT_SYMBOL vmlinux 0xeb1011de sock_no_getname +EXPORT_SYMBOL vmlinux 0xeb22a10d sock_no_connect +EXPORT_SYMBOL vmlinux 0xeb26eb45 netdev_master_upper_dev_link +EXPORT_SYMBOL vmlinux 0xeb28ac06 complete +EXPORT_SYMBOL vmlinux 0xeb2ceca0 inet6_getname +EXPORT_SYMBOL vmlinux 0xeb37101c audit_log_end +EXPORT_SYMBOL vmlinux 0xeb6aef3c mr_rtm_dumproute +EXPORT_SYMBOL vmlinux 0xeb6f43a6 blk_rq_map_user +EXPORT_SYMBOL vmlinux 0xeb8c4696 eth_gro_receive +EXPORT_SYMBOL vmlinux 0xeb966c2f register_mii_timestamper +EXPORT_SYMBOL vmlinux 0xeb9dc55b ap_owned_by_def_drv +EXPORT_SYMBOL vmlinux 0xeb9e913d sgl_alloc_order +EXPORT_SYMBOL vmlinux 0xebb7ae0c security_binder_transaction +EXPORT_SYMBOL vmlinux 0xebbf1dba strncasecmp +EXPORT_SYMBOL vmlinux 0xebc0f27f sock_common_getsockopt +EXPORT_SYMBOL vmlinux 0xebc2017b scsi_register_driver +EXPORT_SYMBOL vmlinux 0xebcb2554 raw3270_wait_queue +EXPORT_SYMBOL vmlinux 0xebd28db0 xfrm_find_acq +EXPORT_SYMBOL vmlinux 0xebe3cfe8 register_sysctl_paths +EXPORT_SYMBOL vmlinux 0xebefe4cd eth_validate_addr +EXPORT_SYMBOL vmlinux 0xebfb7207 ap_parse_mask_str +EXPORT_SYMBOL vmlinux 0xec122c83 gen_pool_first_fit_order_align +EXPORT_SYMBOL vmlinux 0xec1dbcba md_bitmap_sync_with_cluster +EXPORT_SYMBOL vmlinux 0xec237e4f xps_needed +EXPORT_SYMBOL vmlinux 0xec27c4d1 kstrtoull_from_user +EXPORT_SYMBOL vmlinux 0xec461831 fb_blank +EXPORT_SYMBOL vmlinux 0xec46cd57 dev_getbyhwaddr_rcu +EXPORT_SYMBOL vmlinux 0xec579ce6 __blkdev_issue_discard +EXPORT_SYMBOL vmlinux 0xec6113f1 up_read +EXPORT_SYMBOL vmlinux 0xec61c614 xa_destroy +EXPORT_SYMBOL vmlinux 0xec6d13b3 pmdp_xchg_lazy +EXPORT_SYMBOL vmlinux 0xec779730 tcf_idr_cleanup +EXPORT_SYMBOL vmlinux 0xec835f6e dcbnl_ieee_notify +EXPORT_SYMBOL vmlinux 0xec97d4c1 config_group_init_type_name +EXPORT_SYMBOL vmlinux 0xeca52c6e input_mt_sync_frame +EXPORT_SYMBOL vmlinux 0xecc835f1 dev_get_stats +EXPORT_SYMBOL vmlinux 0xeccb38da mr_mfc_seq_next +EXPORT_SYMBOL vmlinux 0xecd5817f __cancel_dirty_page +EXPORT_SYMBOL vmlinux 0xecd923e3 tty_port_carrier_raised +EXPORT_SYMBOL vmlinux 0xece784c2 rb_first +EXPORT_SYMBOL vmlinux 0xecef209a nobh_writepage +EXPORT_SYMBOL vmlinux 0xecf3285c __cleancache_get_page +EXPORT_SYMBOL vmlinux 0xecfc63e5 no_llseek +EXPORT_SYMBOL vmlinux 0xecfd9c31 block_commit_write +EXPORT_SYMBOL vmlinux 0xed04bbd8 sock_i_uid +EXPORT_SYMBOL vmlinux 0xed20f89b sock_common_setsockopt +EXPORT_SYMBOL vmlinux 0xed583171 pcibios_bus_to_resource +EXPORT_SYMBOL vmlinux 0xed59fbbe inet_proto_csum_replace16 +EXPORT_SYMBOL vmlinux 0xed62a108 md_done_sync +EXPORT_SYMBOL vmlinux 0xed6575cc tty_register_ldisc +EXPORT_SYMBOL vmlinux 0xed665b48 pcie_capability_clear_and_set_dword +EXPORT_SYMBOL vmlinux 0xed80af87 dev_alloc_name +EXPORT_SYMBOL vmlinux 0xeda23940 ccw_device_set_options_mask +EXPORT_SYMBOL vmlinux 0xedaba152 xfrm_policy_walk_done +EXPORT_SYMBOL vmlinux 0xedaf8b1b xfrm6_rcv_tnl +EXPORT_SYMBOL vmlinux 0xedb229a9 netdev_txq_to_tc +EXPORT_SYMBOL vmlinux 0xedb625f7 kernel_accept +EXPORT_SYMBOL vmlinux 0xedb80e91 truncate_inode_pages +EXPORT_SYMBOL vmlinux 0xedbaee5e nla_strcmp +EXPORT_SYMBOL vmlinux 0xedbeb619 blk_mq_free_tag_set +EXPORT_SYMBOL vmlinux 0xedc03953 iounmap +EXPORT_SYMBOL vmlinux 0xedc31441 md_reap_sync_thread +EXPORT_SYMBOL vmlinux 0xedc4b0df pci_assign_resource +EXPORT_SYMBOL vmlinux 0xedcf7a9c tcp_get_cookie_sock +EXPORT_SYMBOL vmlinux 0xedd29d44 blk_mq_start_hw_queues +EXPORT_SYMBOL vmlinux 0xeddb268e _dev_warn +EXPORT_SYMBOL vmlinux 0xede9d4ad d_path +EXPORT_SYMBOL vmlinux 0xedf13823 vfs_parse_fs_param +EXPORT_SYMBOL vmlinux 0xee08cada iucv_message_purge +EXPORT_SYMBOL vmlinux 0xee1825c3 pci_set_power_state +EXPORT_SYMBOL vmlinux 0xee2d0fc7 _local_bh_enable +EXPORT_SYMBOL vmlinux 0xee4af8af sock_diag_put_filterinfo +EXPORT_SYMBOL vmlinux 0xee58e970 fb_add_videomode +EXPORT_SYMBOL vmlinux 0xee596ade cpu_rmap_update +EXPORT_SYMBOL vmlinux 0xee5f44c4 tcp_mtup_init +EXPORT_SYMBOL vmlinux 0xee653b34 put_cmsg_scm_timestamping +EXPORT_SYMBOL vmlinux 0xee6dc864 netif_rx_ni +EXPORT_SYMBOL vmlinux 0xee7e4808 __inet_stream_connect +EXPORT_SYMBOL vmlinux 0xee8d74d6 jiffies64_to_nsecs +EXPORT_SYMBOL vmlinux 0xee91879b rb_first_postorder +EXPORT_SYMBOL vmlinux 0xee9db006 pci_iounmap +EXPORT_SYMBOL vmlinux 0xeeefc484 bdput +EXPORT_SYMBOL vmlinux 0xeef264cc jbd2_journal_force_commit_nested +EXPORT_SYMBOL vmlinux 0xef3f2e44 seq_read +EXPORT_SYMBOL vmlinux 0xef45d32c __kfifo_init +EXPORT_SYMBOL vmlinux 0xef494b34 ip_check_defrag +EXPORT_SYMBOL vmlinux 0xef4b3174 xfrm_state_walk_done +EXPORT_SYMBOL vmlinux 0xef7c3319 vmf_insert_pfn +EXPORT_SYMBOL vmlinux 0xef9969b0 secure_tcpv6_ts_off +EXPORT_SYMBOL vmlinux 0xefa09e53 set_page_dirty_lock +EXPORT_SYMBOL vmlinux 0xefa86e1b sock_wake_async +EXPORT_SYMBOL vmlinux 0xefaf2e4f tcf_queue_work +EXPORT_SYMBOL vmlinux 0xefc67050 __cpu_active_mask +EXPORT_SYMBOL vmlinux 0xefce9464 flow_block_cb_priv +EXPORT_SYMBOL vmlinux 0xefd30512 __cpuhp_setup_state +EXPORT_SYMBOL vmlinux 0xeff0fe4c kbd_keycode +EXPORT_SYMBOL vmlinux 0xf0009fee put_pages_list +EXPORT_SYMBOL vmlinux 0xf008a885 seg6_hmac_init +EXPORT_SYMBOL vmlinux 0xf012acae fb_set_suspend +EXPORT_SYMBOL vmlinux 0xf03427f8 up_write +EXPORT_SYMBOL vmlinux 0xf047c244 crypto_sha1_finup +EXPORT_SYMBOL vmlinux 0xf04cf205 wait_for_completion_interruptible +EXPORT_SYMBOL vmlinux 0xf05c64f8 iucv_path_connect +EXPORT_SYMBOL vmlinux 0xf0719b99 tcf_idr_check_alloc +EXPORT_SYMBOL vmlinux 0xf07f912a fb_show_logo +EXPORT_SYMBOL vmlinux 0xf0851f0d alloc_netdev_mqs +EXPORT_SYMBOL vmlinux 0xf08c67de napi_alloc_frag +EXPORT_SYMBOL vmlinux 0xf092c50f f_setown +EXPORT_SYMBOL vmlinux 0xf09ab15d sk_ns_capable +EXPORT_SYMBOL vmlinux 0xf09b5d9a get_zeroed_page +EXPORT_SYMBOL vmlinux 0xf0d867ac sock_no_bind +EXPORT_SYMBOL vmlinux 0xf0fc9aa8 sclp_cpi_set_data +EXPORT_SYMBOL vmlinux 0xf101e08d prepare_creds +EXPORT_SYMBOL vmlinux 0xf11543ff find_first_zero_bit +EXPORT_SYMBOL vmlinux 0xf1176539 set_create_files_as +EXPORT_SYMBOL vmlinux 0xf1261414 __inet6_lookup_established +EXPORT_SYMBOL vmlinux 0xf13143f2 blk_mq_end_request +EXPORT_SYMBOL vmlinux 0xf138066d genl_register_family +EXPORT_SYMBOL vmlinux 0xf15f3b41 idr_get_next +EXPORT_SYMBOL vmlinux 0xf1707b5a devm_release_resource +EXPORT_SYMBOL vmlinux 0xf1863a4b devm_memremap +EXPORT_SYMBOL vmlinux 0xf195c682 fb_invert_cmaps +EXPORT_SYMBOL vmlinux 0xf1969a8e __usecs_to_jiffies +EXPORT_SYMBOL vmlinux 0xf19e7338 unregister_external_irq +EXPORT_SYMBOL vmlinux 0xf1a7e59c nf_reinject +EXPORT_SYMBOL vmlinux 0xf1b69657 __skb_wait_for_more_packets +EXPORT_SYMBOL vmlinux 0xf1ca5aac fs_param_is_u32 +EXPORT_SYMBOL vmlinux 0xf1d00628 __cpuhp_remove_state +EXPORT_SYMBOL vmlinux 0xf1db1704 nla_memcpy +EXPORT_SYMBOL vmlinux 0xf1e046cc panic +EXPORT_SYMBOL vmlinux 0xf1e98c74 avenrun +EXPORT_SYMBOL vmlinux 0xf1ef1124 pci_choose_state +EXPORT_SYMBOL vmlinux 0xf1f591a2 ccw_device_get_ciw +EXPORT_SYMBOL vmlinux 0xf20af3d9 refcount_dec_and_lock +EXPORT_SYMBOL vmlinux 0xf20b325b md_check_recovery +EXPORT_SYMBOL vmlinux 0xf21b75cc neigh_table_clear +EXPORT_SYMBOL vmlinux 0xf2215f74 blk_finish_plug +EXPORT_SYMBOL vmlinux 0xf2231394 security_cred_getsecid +EXPORT_SYMBOL vmlinux 0xf22e602f dm_register_target +EXPORT_SYMBOL vmlinux 0xf23fcb99 __kfifo_in +EXPORT_SYMBOL vmlinux 0xf245bd51 set_bh_page +EXPORT_SYMBOL vmlinux 0xf249d081 path_put +EXPORT_SYMBOL vmlinux 0xf25c027b md_cluster_ops +EXPORT_SYMBOL vmlinux 0xf2656ffb path_nosuid +EXPORT_SYMBOL vmlinux 0xf280df4c pci_select_bars +EXPORT_SYMBOL vmlinux 0xf28404cf devlink_dpipe_header_ipv6 +EXPORT_SYMBOL vmlinux 0xf2910761 disk_end_io_acct +EXPORT_SYMBOL vmlinux 0xf2a038be setattr_prepare +EXPORT_SYMBOL vmlinux 0xf2b8a4b3 inet_csk_accept +EXPORT_SYMBOL vmlinux 0xf2c43f3f zlib_deflate +EXPORT_SYMBOL vmlinux 0xf2c608ed bio_integrity_alloc +EXPORT_SYMBOL vmlinux 0xf2e5bd87 security_free_mnt_opts +EXPORT_SYMBOL vmlinux 0xf2fd53a8 from_kprojid_munged +EXPORT_SYMBOL vmlinux 0xf2fdc747 register_tcf_proto_ops +EXPORT_SYMBOL vmlinux 0xf3107926 sha224_update +EXPORT_SYMBOL vmlinux 0xf316111b pagecache_write_end +EXPORT_SYMBOL vmlinux 0xf31c0d52 ioremap +EXPORT_SYMBOL vmlinux 0xf31e1371 xfrm_policy_walk +EXPORT_SYMBOL vmlinux 0xf3341268 __clear_user +EXPORT_SYMBOL vmlinux 0xf3440075 kthread_stop +EXPORT_SYMBOL vmlinux 0xf34581d0 pci_pme_active +EXPORT_SYMBOL vmlinux 0xf346231f seq_list_start_head +EXPORT_SYMBOL vmlinux 0xf349ef12 tty_check_change +EXPORT_SYMBOL vmlinux 0xf353a698 register_module_notifier +EXPORT_SYMBOL vmlinux 0xf353ade8 vfs_get_super +EXPORT_SYMBOL vmlinux 0xf367cc3a md_handle_request +EXPORT_SYMBOL vmlinux 0xf389fe60 __hw_addr_init +EXPORT_SYMBOL vmlinux 0xf3916987 global_cursor_default +EXPORT_SYMBOL vmlinux 0xf3b30a06 utf8version_latest +EXPORT_SYMBOL vmlinux 0xf3b74f79 __iucv_message_send +EXPORT_SYMBOL vmlinux 0xf3b8afab get_cached_acl +EXPORT_SYMBOL vmlinux 0xf3e0e1df allocate_resource +EXPORT_SYMBOL vmlinux 0xf3e6402e __bitmap_equal +EXPORT_SYMBOL vmlinux 0xf408f68e pin_user_pages_locked +EXPORT_SYMBOL vmlinux 0xf41a9d33 __xfrm_decode_session +EXPORT_SYMBOL vmlinux 0xf4201e0f gnet_stats_copy_queue +EXPORT_SYMBOL vmlinux 0xf425eaeb __nla_reserve_64bit +EXPORT_SYMBOL vmlinux 0xf4285d0b mutex_trylock_recursive +EXPORT_SYMBOL vmlinux 0xf42a3dc4 tty_port_put +EXPORT_SYMBOL vmlinux 0xf43725fb s390_arch_random_counter +EXPORT_SYMBOL vmlinux 0xf44a904a net_ns_barrier +EXPORT_SYMBOL vmlinux 0xf4546c5f blk_queue_virt_boundary +EXPORT_SYMBOL vmlinux 0xf457f5b0 unregister_fib_notifier +EXPORT_SYMBOL vmlinux 0xf474c21c bitmap_print_to_pagebuf +EXPORT_SYMBOL vmlinux 0xf474fdcb kfree_const +EXPORT_SYMBOL vmlinux 0xf49d84b8 vfs_tmpfile +EXPORT_SYMBOL vmlinux 0xf4b2b86e cgroup_bpf_enabled_key +EXPORT_SYMBOL vmlinux 0xf4b3d297 ns_capable_setid +EXPORT_SYMBOL vmlinux 0xf4b55cc4 inet6_register_protosw +EXPORT_SYMBOL vmlinux 0xf4bdbeb9 __frontswap_invalidate_area +EXPORT_SYMBOL vmlinux 0xf4cdaf94 init_net +EXPORT_SYMBOL vmlinux 0xf4d3a9d1 n_tty_ioctl_helper +EXPORT_SYMBOL vmlinux 0xf4db35bc stpcpy +EXPORT_SYMBOL vmlinux 0xf4dc0493 vfs_iter_read +EXPORT_SYMBOL vmlinux 0xf4e08eef pci_bus_write_config_word +EXPORT_SYMBOL vmlinux 0xf4f14de6 rtnl_trylock +EXPORT_SYMBOL vmlinux 0xf4f1d73f __kfifo_out_peek_r +EXPORT_SYMBOL vmlinux 0xf4fc4d9f get_user_pages_unlocked +EXPORT_SYMBOL vmlinux 0xf51de52f __skb_ext_del +EXPORT_SYMBOL vmlinux 0xf522f947 inet_unregister_protosw +EXPORT_SYMBOL vmlinux 0xf531ab51 fscrypt_ioctl_get_policy +EXPORT_SYMBOL vmlinux 0xf53d4c26 qdisc_class_hash_destroy +EXPORT_SYMBOL vmlinux 0xf542f290 raw_copy_from_user +EXPORT_SYMBOL vmlinux 0xf55059e6 page_pool_alloc_pages +EXPORT_SYMBOL vmlinux 0xf550909d utf8_validate +EXPORT_SYMBOL vmlinux 0xf550a29e blk_mq_delay_run_hw_queue +EXPORT_SYMBOL vmlinux 0xf552f3a4 dma_dummy_ops +EXPORT_SYMBOL vmlinux 0xf581b36e ilookup +EXPORT_SYMBOL vmlinux 0xf58d73b1 xfrm_sad_getinfo +EXPORT_SYMBOL vmlinux 0xf598d580 __break_lease +EXPORT_SYMBOL vmlinux 0xf59a5417 fscrypt_setup_filename +EXPORT_SYMBOL vmlinux 0xf5a54b0b raw3270_find_view +EXPORT_SYMBOL vmlinux 0xf5b06991 blk_queue_max_segments +EXPORT_SYMBOL vmlinux 0xf5e7ea40 ktime_get_coarse_ts64 +EXPORT_SYMBOL vmlinux 0xf5f2c541 __cond_resched_lock +EXPORT_SYMBOL vmlinux 0xf5f91f8f wait_for_completion +EXPORT_SYMBOL vmlinux 0xf5f96fd5 seq_dentry +EXPORT_SYMBOL vmlinux 0xf643d104 hsiphash_4u32 +EXPORT_SYMBOL vmlinux 0xf647e62e tcp_seq_start +EXPORT_SYMBOL vmlinux 0xf656431e fscrypt_encrypt_pagecache_blocks +EXPORT_SYMBOL vmlinux 0xf665f74f sock_load_diag_module +EXPORT_SYMBOL vmlinux 0xf67ae62d key_alloc +EXPORT_SYMBOL vmlinux 0xf67b2c9e xfrm_parse_spi +EXPORT_SYMBOL vmlinux 0xf680a3b4 ap_queue_init_reply +EXPORT_SYMBOL vmlinux 0xf68285c0 register_inetaddr_notifier +EXPORT_SYMBOL vmlinux 0xf683e9be tcp_hashinfo +EXPORT_SYMBOL vmlinux 0xf699f364 __cleancache_invalidate_inode +EXPORT_SYMBOL vmlinux 0xf6ae148f ap_cancel_message +EXPORT_SYMBOL vmlinux 0xf6c25147 msi_desc_to_pci_dev +EXPORT_SYMBOL vmlinux 0xf6dfbf5c iget_failed +EXPORT_SYMBOL vmlinux 0xf6eb3245 proc_create_seq_private +EXPORT_SYMBOL vmlinux 0xf6ebc03b net_ratelimit +EXPORT_SYMBOL vmlinux 0xf6f9d58d init_on_free +EXPORT_SYMBOL vmlinux 0xf6fc8791 __bitmap_xor +EXPORT_SYMBOL vmlinux 0xf7100638 sk_stop_timer +EXPORT_SYMBOL vmlinux 0xf720907a tcf_em_tree_validate +EXPORT_SYMBOL vmlinux 0xf7342be3 mr_mfc_find_any +EXPORT_SYMBOL vmlinux 0xf738d1be register_blocking_lsm_notifier +EXPORT_SYMBOL vmlinux 0xf739f061 __f_setown +EXPORT_SYMBOL vmlinux 0xf74300d7 arch_vcpu_is_preempted +EXPORT_SYMBOL vmlinux 0xf74d82c4 pci_disable_link_state_locked +EXPORT_SYMBOL vmlinux 0xf7584a9c find_font +EXPORT_SYMBOL vmlinux 0xf76a088b tcp_get_md5sig_pool +EXPORT_SYMBOL vmlinux 0xf76de5c1 pci_bus_read_config_dword +EXPORT_SYMBOL vmlinux 0xf76f042a watchdog_register_governor +EXPORT_SYMBOL vmlinux 0xf77337a1 hdmi_audio_infoframe_check +EXPORT_SYMBOL vmlinux 0xf788d0d3 __dynamic_netdev_dbg +EXPORT_SYMBOL vmlinux 0xf7a3df6d inc_zone_page_state +EXPORT_SYMBOL vmlinux 0xf7a596de ZSTD_initDDict +EXPORT_SYMBOL vmlinux 0xf7b92217 utf8_casefold +EXPORT_SYMBOL vmlinux 0xf7bb49e1 kill_fasync +EXPORT_SYMBOL vmlinux 0xf7c64b4c vfs_iocb_iter_write +EXPORT_SYMBOL vmlinux 0xf7cee613 page_pool_create +EXPORT_SYMBOL vmlinux 0xf7d54f83 skb_kill_datagram +EXPORT_SYMBOL vmlinux 0xf7d69bff __blk_mq_end_request +EXPORT_SYMBOL vmlinux 0xf7d71918 __kfifo_in_r +EXPORT_SYMBOL vmlinux 0xf7f10c32 key_unlink +EXPORT_SYMBOL vmlinux 0xf7fe820d scsi_report_bus_reset +EXPORT_SYMBOL vmlinux 0xf811e69d scsi_eh_flush_done_q +EXPORT_SYMBOL vmlinux 0xf82abc1d isa_dma_bridge_buggy +EXPORT_SYMBOL vmlinux 0xf82ec573 rb_prev +EXPORT_SYMBOL vmlinux 0xf83ba732 blk_rq_append_bio +EXPORT_SYMBOL vmlinux 0xf83d89d6 ip_tunnel_header_ops +EXPORT_SYMBOL vmlinux 0xf84bd6ee bpf_stats_enabled_key +EXPORT_SYMBOL vmlinux 0xf86edbd5 gro_find_complete_by_type +EXPORT_SYMBOL vmlinux 0xf888ca21 sg_init_table +EXPORT_SYMBOL vmlinux 0xf88be830 md_register_thread +EXPORT_SYMBOL vmlinux 0xf88e75f9 scsi_target_resume +EXPORT_SYMBOL vmlinux 0xf89b286f setup_arg_pages +EXPORT_SYMBOL vmlinux 0xf89cfde7 VMALLOC_START +EXPORT_SYMBOL vmlinux 0xf8a9352e inet_frag_pull_head +EXPORT_SYMBOL vmlinux 0xf8a9f4c3 tty_unlock +EXPORT_SYMBOL vmlinux 0xf8bf1946 security_inode_notifysecctx +EXPORT_SYMBOL vmlinux 0xf8c0f868 sock_no_accept +EXPORT_SYMBOL vmlinux 0xf8ca992d nf_register_sockopt +EXPORT_SYMBOL vmlinux 0xf8d07858 bitmap_from_arr32 +EXPORT_SYMBOL vmlinux 0xf8e54848 sync_inode_metadata +EXPORT_SYMBOL vmlinux 0xf8e71d3d key_task_permission +EXPORT_SYMBOL vmlinux 0xf8f61ebc wake_up_var +EXPORT_SYMBOL vmlinux 0xf915179e refcount_dec_if_one +EXPORT_SYMBOL vmlinux 0xf92a26b7 set_binfmt +EXPORT_SYMBOL vmlinux 0xf9387069 skb_copy_bits +EXPORT_SYMBOL vmlinux 0xf93fd09c fb_find_mode_cvt +EXPORT_SYMBOL vmlinux 0xf9500d2f sort_r +EXPORT_SYMBOL vmlinux 0xf966ab8d io_uring_get_socket +EXPORT_SYMBOL vmlinux 0xf974878f kernel_sendpage_locked +EXPORT_SYMBOL vmlinux 0xf9764e64 vmf_insert_mixed_prot +EXPORT_SYMBOL vmlinux 0xf9899157 bdget_disk +EXPORT_SYMBOL vmlinux 0xf9a482f9 msleep +EXPORT_SYMBOL vmlinux 0xf9c78929 mr_vif_seq_idx +EXPORT_SYMBOL vmlinux 0xf9d33637 sk_wait_data +EXPORT_SYMBOL vmlinux 0xf9e3d17a xfrm_policy_hash_rebuild +EXPORT_SYMBOL vmlinux 0xf9f2d4db ___pskb_trim +EXPORT_SYMBOL vmlinux 0xf9f50b92 percpu_counter_destroy +EXPORT_SYMBOL vmlinux 0xfa0548d7 clocksource_unregister +EXPORT_SYMBOL vmlinux 0xfa08f4b8 __tracepoint_dma_fence_signaled +EXPORT_SYMBOL vmlinux 0xfa0e2b12 seq_put_decimal_ll +EXPORT_SYMBOL vmlinux 0xfa13a12d dev_mc_unsync +EXPORT_SYMBOL vmlinux 0xfa56182e unpin_user_page +EXPORT_SYMBOL vmlinux 0xfa599bb2 netlink_register_notifier +EXPORT_SYMBOL vmlinux 0xfa79cfb7 compat_tcp_getsockopt +EXPORT_SYMBOL vmlinux 0xfa873ad0 prandom_seed +EXPORT_SYMBOL vmlinux 0xfa8b36b9 param_set_long +EXPORT_SYMBOL vmlinux 0xfa9076ed find_get_pages_contig +EXPORT_SYMBOL vmlinux 0xfa9cb512 cdrom_open +EXPORT_SYMBOL vmlinux 0xfabbb06d inet_stream_ops +EXPORT_SYMBOL vmlinux 0xfac13541 vlan_filter_push_vids +EXPORT_SYMBOL vmlinux 0xfac4a496 __xfrm_state_delete +EXPORT_SYMBOL vmlinux 0xfac8865f sysctl_wmem_max +EXPORT_SYMBOL vmlinux 0xfacd1039 inet_addr_type +EXPORT_SYMBOL vmlinux 0xfadd5c1d xsk_set_tx_need_wakeup +EXPORT_SYMBOL vmlinux 0xfae13c79 input_handler_for_each_handle +EXPORT_SYMBOL vmlinux 0xfaebf052 __brelse +EXPORT_SYMBOL vmlinux 0xfafd9a84 napi_get_frags +EXPORT_SYMBOL vmlinux 0xfb0e6ec1 dquot_alloc_inode +EXPORT_SYMBOL vmlinux 0xfb1cc7ca netlink_ns_capable +EXPORT_SYMBOL vmlinux 0xfb384d37 kasprintf +EXPORT_SYMBOL vmlinux 0xfb4694b4 __init_swait_queue_head +EXPORT_SYMBOL vmlinux 0xfb481954 vprintk +EXPORT_SYMBOL vmlinux 0xfb489652 find_inode_by_ino_rcu +EXPORT_SYMBOL vmlinux 0xfb58af03 tcp_init_sock +EXPORT_SYMBOL vmlinux 0xfb598d97 mini_qdisc_pair_swap +EXPORT_SYMBOL vmlinux 0xfb6af58d recalc_sigpending +EXPORT_SYMBOL vmlinux 0xfb7438f2 iov_iter_gap_alignment +EXPORT_SYMBOL vmlinux 0xfba7ddd2 match_u64 +EXPORT_SYMBOL vmlinux 0xfba80046 put_cmsg_scm_timestamping64 +EXPORT_SYMBOL vmlinux 0xfbaaf01e console_lock +EXPORT_SYMBOL vmlinux 0xfbad3cf0 scsi_normalize_sense +EXPORT_SYMBOL vmlinux 0xfbb1508c tcf_action_dump_1 +EXPORT_SYMBOL vmlinux 0xfbb4702c ccw_driver_register +EXPORT_SYMBOL vmlinux 0xfbc4f89e io_schedule_timeout +EXPORT_SYMBOL vmlinux 0xfbcf85eb skb_ensure_writable +EXPORT_SYMBOL vmlinux 0xfbd65759 param_get_string +EXPORT_SYMBOL vmlinux 0xfbeafb82 sync_file_create +EXPORT_SYMBOL vmlinux 0xfbf82c35 md_bitmap_free +EXPORT_SYMBOL vmlinux 0xfc09bf75 md_update_sb +EXPORT_SYMBOL vmlinux 0xfc0ef51a ipv4_specific +EXPORT_SYMBOL vmlinux 0xfc0fb386 sdev_prefix_printk +EXPORT_SYMBOL vmlinux 0xfc24b020 mntget +EXPORT_SYMBOL vmlinux 0xfc2e2ebd tcp_v4_syn_recv_sock +EXPORT_SYMBOL vmlinux 0xfc399557 utf8_load +EXPORT_SYMBOL vmlinux 0xfc53e7aa filemap_fault +EXPORT_SYMBOL vmlinux 0xfc65611e md_set_array_sectors +EXPORT_SYMBOL vmlinux 0xfcc4efc5 fixed_size_llseek +EXPORT_SYMBOL vmlinux 0xfcd1819a hdmi_spd_infoframe_check +EXPORT_SYMBOL vmlinux 0xfcd1b080 tty_port_lower_dtr_rts +EXPORT_SYMBOL vmlinux 0xfcd1d3ee skb_clone_sk +EXPORT_SYMBOL vmlinux 0xfcd966a4 compat_ip_getsockopt +EXPORT_SYMBOL vmlinux 0xfcec0987 enable_irq +EXPORT_SYMBOL vmlinux 0xfcf29c1b crypto_sha1_update +EXPORT_SYMBOL vmlinux 0xfcf86979 __put_cred +EXPORT_SYMBOL vmlinux 0xfd173cb0 __ethtool_get_link_ksettings +EXPORT_SYMBOL vmlinux 0xfd3a1e31 gen_pool_dma_zalloc_algo +EXPORT_SYMBOL vmlinux 0xfd4e82ad scsi_set_medium_removal +EXPORT_SYMBOL vmlinux 0xfd51a6f7 hdmi_drm_infoframe_pack +EXPORT_SYMBOL vmlinux 0xfd58c81a get_super_thawed +EXPORT_SYMBOL vmlinux 0xfd9955af dev_set_alias +EXPORT_SYMBOL vmlinux 0xfda9581f prandom_u32 +EXPORT_SYMBOL vmlinux 0xfdb4de2d mempool_free +EXPORT_SYMBOL vmlinux 0xfdb5b996 kmem_cache_alloc_trace +EXPORT_SYMBOL vmlinux 0xfdcc8a0e fb_find_best_display +EXPORT_SYMBOL vmlinux 0xfde4df25 udp_seq_ops +EXPORT_SYMBOL vmlinux 0xfdecc339 pskb_expand_head +EXPORT_SYMBOL vmlinux 0xfdf45996 lowcore_ptr +EXPORT_SYMBOL vmlinux 0xfe029963 unregister_inetaddr_notifier +EXPORT_SYMBOL vmlinux 0xfe06d10f dev_crit_hash +EXPORT_SYMBOL vmlinux 0xfe193e65 __xa_alloc +EXPORT_SYMBOL vmlinux 0xfe39ab7b is_subdir +EXPORT_SYMBOL vmlinux 0xfe3b4bd2 seq_path +EXPORT_SYMBOL vmlinux 0xfe412925 generic_make_request +EXPORT_SYMBOL vmlinux 0xfe487975 init_wait_entry +EXPORT_SYMBOL vmlinux 0xfe4ca819 inode_io_list_del +EXPORT_SYMBOL vmlinux 0xfe4faa13 qdisc_hash_add +EXPORT_SYMBOL vmlinux 0xfe5d4bb2 sys_tz +EXPORT_SYMBOL vmlinux 0xfe69fc0f pci_set_master +EXPORT_SYMBOL vmlinux 0xfe7940d5 vfs_readlink +EXPORT_SYMBOL vmlinux 0xfea190a9 input_alloc_absinfo +EXPORT_SYMBOL vmlinux 0xfeb5d0aa verify_spi_info +EXPORT_SYMBOL vmlinux 0xfedcdb60 seq_hlist_next_percpu +EXPORT_SYMBOL vmlinux 0xfeee1ba5 debug_event_common +EXPORT_SYMBOL vmlinux 0xfef29898 param_set_bint +EXPORT_SYMBOL vmlinux 0xff0c65a5 flow_rule_match_ports +EXPORT_SYMBOL vmlinux 0xff1e9dd8 seq_list_start +EXPORT_SYMBOL vmlinux 0xff1f0ae2 add_virt_timer +EXPORT_SYMBOL vmlinux 0xff2082e7 input_get_keycode +EXPORT_SYMBOL vmlinux 0xff46d2ea neigh_connected_output +EXPORT_SYMBOL vmlinux 0xff5a37f5 airq_iv_alloc +EXPORT_SYMBOL vmlinux 0xff5beed6 irq_to_desc +EXPORT_SYMBOL vmlinux 0xff6878cf fb_default_cmap +EXPORT_SYMBOL vmlinux 0xff8bc792 vfs_statfs +EXPORT_SYMBOL vmlinux 0xff9f3a13 device_add_disk_no_queue_reg +EXPORT_SYMBOL vmlinux 0xffb74164 misc_deregister +EXPORT_SYMBOL vmlinux 0xffc89bc5 sg_miter_stop +EXPORT_SYMBOL vmlinux 0xffd421e3 fqdir_init +EXPORT_SYMBOL vmlinux 0xffd4628b kfree_skb_list +EXPORT_SYMBOL vmlinux 0xffd70a42 skb_copy_header +EXPORT_SYMBOL vmlinux 0xffdffcb6 sget_fc +EXPORT_SYMBOL vmlinux 0xffe321cf __pskb_copy_fclone +EXPORT_SYMBOL vmlinux 0xffe8d934 tcp_filter +EXPORT_SYMBOL vmlinux 0xffeedf6a delayed_work_timer_fn +EXPORT_SYMBOL_GPL arch/s390/crypto/sha_common 0x183765cf s390_sha_final +EXPORT_SYMBOL_GPL arch/s390/crypto/sha_common 0x69cf4839 s390_sha_update +EXPORT_SYMBOL_GPL arch/s390/net/pnet 0xee095344 pnet_id_by_dev_port +EXPORT_SYMBOL_GPL crypto/af_alg 0x27fbd2ba af_alg_free_resources +EXPORT_SYMBOL_GPL crypto/af_alg 0x3b73b09c af_alg_accept +EXPORT_SYMBOL_GPL crypto/af_alg 0x3db6337c af_alg_alloc_areq +EXPORT_SYMBOL_GPL crypto/af_alg 0x45954b6c af_alg_release +EXPORT_SYMBOL_GPL crypto/af_alg 0x459a3f3a af_alg_get_rsgl +EXPORT_SYMBOL_GPL crypto/af_alg 0x63a82e52 af_alg_wait_for_data +EXPORT_SYMBOL_GPL crypto/af_alg 0x667a22c0 af_alg_register_type +EXPORT_SYMBOL_GPL crypto/af_alg 0x70325363 af_alg_sendmsg +EXPORT_SYMBOL_GPL crypto/af_alg 0x7419f06c af_alg_free_sg +EXPORT_SYMBOL_GPL crypto/af_alg 0x8aeec827 af_alg_sendpage +EXPORT_SYMBOL_GPL crypto/af_alg 0x8b484a9f af_alg_wmem_wakeup +EXPORT_SYMBOL_GPL crypto/af_alg 0xae2def11 af_alg_release_parent +EXPORT_SYMBOL_GPL crypto/af_alg 0xb7b42fa9 af_alg_async_cb +EXPORT_SYMBOL_GPL crypto/af_alg 0xb9cc9391 af_alg_pull_tsgl +EXPORT_SYMBOL_GPL crypto/af_alg 0xbac3a4f0 af_alg_count_tsgl +EXPORT_SYMBOL_GPL crypto/af_alg 0xbe938abf af_alg_unregister_type +EXPORT_SYMBOL_GPL crypto/af_alg 0xcdd4d53d af_alg_make_sg +EXPORT_SYMBOL_GPL crypto/af_alg 0xde93fee9 af_alg_poll +EXPORT_SYMBOL_GPL crypto/asymmetric_keys/asym_tpm 0x7430f97c tpm_key_create +EXPORT_SYMBOL_GPL crypto/asymmetric_keys/asym_tpm 0xd10dc3f2 asym_tpm_subtype +EXPORT_SYMBOL_GPL crypto/async_tx/async_memcpy 0xc9695cb0 async_memcpy +EXPORT_SYMBOL_GPL crypto/async_tx/async_pq 0x62d4c3f5 async_syndrome_val +EXPORT_SYMBOL_GPL crypto/async_tx/async_pq 0xcbcf4c45 async_gen_syndrome +EXPORT_SYMBOL_GPL crypto/async_tx/async_raid6_recov 0x18797f52 async_raid6_datap_recov +EXPORT_SYMBOL_GPL crypto/async_tx/async_raid6_recov 0xf404e5ec async_raid6_2data_recov +EXPORT_SYMBOL_GPL crypto/async_tx/async_tx 0x1d16b644 async_tx_quiesce +EXPORT_SYMBOL_GPL crypto/async_tx/async_tx 0x876f8ce1 async_trigger_callback +EXPORT_SYMBOL_GPL crypto/async_tx/async_tx 0xfcb803f4 async_tx_submit +EXPORT_SYMBOL_GPL crypto/async_tx/async_xor 0x59f893ec async_xor +EXPORT_SYMBOL_GPL crypto/async_tx/async_xor 0x868a91f0 async_xor_val +EXPORT_SYMBOL_GPL crypto/authenc 0x2479193e crypto_authenc_extractkeys +EXPORT_SYMBOL_GPL crypto/blowfish_common 0x17f97ae9 blowfish_setkey +EXPORT_SYMBOL_GPL crypto/cast5_generic 0x188d9d26 __cast5_decrypt +EXPORT_SYMBOL_GPL crypto/cast5_generic 0xef81a4af __cast5_encrypt +EXPORT_SYMBOL_GPL crypto/cast5_generic 0xfe04e8f2 cast5_setkey +EXPORT_SYMBOL_GPL crypto/cast6_generic 0x21ee63f9 cast6_setkey +EXPORT_SYMBOL_GPL crypto/cast6_generic 0x3dbae082 __cast6_decrypt +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 0x628be013 cryptd_aead_child +EXPORT_SYMBOL_GPL crypto/cryptd 0x6ad5c4fc cryptd_ahash_child +EXPORT_SYMBOL_GPL crypto/cryptd 0x6d7aced9 cryptd_free_skcipher +EXPORT_SYMBOL_GPL crypto/cryptd 0x73e47280 cryptd_skcipher_child +EXPORT_SYMBOL_GPL crypto/cryptd 0x86c878d0 cryptd_free_aead +EXPORT_SYMBOL_GPL crypto/cryptd 0x87f22c5d cryptd_alloc_skcipher +EXPORT_SYMBOL_GPL crypto/cryptd 0x8eb74d35 cryptd_shash_desc +EXPORT_SYMBOL_GPL crypto/cryptd 0x90ce5bac cryptd_alloc_aead +EXPORT_SYMBOL_GPL crypto/cryptd 0x9f96dba0 cryptd_aead_queued +EXPORT_SYMBOL_GPL crypto/cryptd 0xa009dde4 cryptd_skcipher_queued +EXPORT_SYMBOL_GPL crypto/cryptd 0xbc1b9525 cryptd_free_ahash +EXPORT_SYMBOL_GPL crypto/cryptd 0xe412801b cryptd_alloc_ahash +EXPORT_SYMBOL_GPL crypto/cryptd 0xe5ebfba6 cryptd_ahash_queued +EXPORT_SYMBOL_GPL crypto/crypto_engine 0x15413c0d crypto_transfer_hash_request_to_engine +EXPORT_SYMBOL_GPL crypto/crypto_engine 0x27372007 crypto_finalize_aead_request +EXPORT_SYMBOL_GPL crypto/crypto_engine 0x4c6a877f crypto_engine_alloc_init +EXPORT_SYMBOL_GPL crypto/crypto_engine 0x4d7a9e3b crypto_finalize_hash_request +EXPORT_SYMBOL_GPL crypto/crypto_engine 0x4eab9ede crypto_engine_start +EXPORT_SYMBOL_GPL crypto/crypto_engine 0x50fc758f crypto_engine_exit +EXPORT_SYMBOL_GPL crypto/crypto_engine 0x647fcd98 crypto_finalize_akcipher_request +EXPORT_SYMBOL_GPL crypto/crypto_engine 0x84e666c1 crypto_transfer_akcipher_request_to_engine +EXPORT_SYMBOL_GPL crypto/crypto_engine 0xc0b294a7 crypto_transfer_skcipher_request_to_engine +EXPORT_SYMBOL_GPL crypto/crypto_engine 0xc36b077a crypto_engine_stop +EXPORT_SYMBOL_GPL crypto/crypto_engine 0xf8d951c2 crypto_engine_alloc_init_and_set +EXPORT_SYMBOL_GPL crypto/crypto_engine 0xffae11fc crypto_transfer_aead_request_to_engine +EXPORT_SYMBOL_GPL crypto/crypto_engine 0xffc39077 crypto_finalize_skcipher_request +EXPORT_SYMBOL_GPL crypto/ecdh_generic 0x515ba532 crypto_ecdh_decode_key +EXPORT_SYMBOL_GPL crypto/ecdh_generic 0x7a395d76 crypto_ecdh_encode_key +EXPORT_SYMBOL_GPL crypto/ecdh_generic 0xd5a29505 crypto_ecdh_key_len +EXPORT_SYMBOL_GPL crypto/serpent_generic 0x4eb4c55e __serpent_encrypt +EXPORT_SYMBOL_GPL crypto/serpent_generic 0x5ce20f2c serpent_setkey +EXPORT_SYMBOL_GPL crypto/serpent_generic 0xbcc074f3 __serpent_decrypt +EXPORT_SYMBOL_GPL crypto/serpent_generic 0xd4c9681a __serpent_setkey +EXPORT_SYMBOL_GPL crypto/sm3_generic 0x0bddca87 sm3_zero_message_hash +EXPORT_SYMBOL_GPL crypto/sm4_generic 0x04af5f5f crypto_sm4_encrypt +EXPORT_SYMBOL_GPL crypto/sm4_generic 0x09a89410 crypto_sm4_expand_key +EXPORT_SYMBOL_GPL crypto/sm4_generic 0x3b18ebdd crypto_sm4_set_key +EXPORT_SYMBOL_GPL crypto/sm4_generic 0x7706d239 crypto_sm4_decrypt +EXPORT_SYMBOL_GPL crypto/twofish_common 0xb480d114 twofish_setkey +EXPORT_SYMBOL_GPL crypto/twofish_common 0xe22b7787 __twofish_setkey +EXPORT_SYMBOL_GPL drivers/dax/device_dax 0x645dc3da dev_dax_probe +EXPORT_SYMBOL_GPL drivers/fpga/altera-pr-ip-core 0x29d47af3 alt_pr_unregister +EXPORT_SYMBOL_GPL drivers/fpga/altera-pr-ip-core 0xe4ef4295 alt_pr_register +EXPORT_SYMBOL_GPL drivers/fpga/fpga-mgr 0x043f7bac fpga_mgr_free +EXPORT_SYMBOL_GPL drivers/fpga/fpga-mgr 0x06a2aee9 fpga_mgr_get +EXPORT_SYMBOL_GPL drivers/fpga/fpga-mgr 0x181b241b devm_fpga_mgr_create +EXPORT_SYMBOL_GPL drivers/fpga/fpga-mgr 0x1f4efd2e fpga_mgr_unlock +EXPORT_SYMBOL_GPL drivers/fpga/fpga-mgr 0x2a27fffb fpga_mgr_lock +EXPORT_SYMBOL_GPL drivers/fpga/fpga-mgr 0x37ac7c04 fpga_mgr_register +EXPORT_SYMBOL_GPL drivers/fpga/fpga-mgr 0x67b7cc47 fpga_image_info_alloc +EXPORT_SYMBOL_GPL drivers/fpga/fpga-mgr 0x7cb0d7cb of_fpga_mgr_get +EXPORT_SYMBOL_GPL drivers/fpga/fpga-mgr 0xc3ab81a5 fpga_mgr_put +EXPORT_SYMBOL_GPL drivers/fpga/fpga-mgr 0xc68cd26e fpga_mgr_load +EXPORT_SYMBOL_GPL drivers/fpga/fpga-mgr 0xc72ef50c fpga_mgr_unregister +EXPORT_SYMBOL_GPL drivers/fpga/fpga-mgr 0xdc56d6b3 fpga_mgr_create +EXPORT_SYMBOL_GPL drivers/fpga/fpga-mgr 0xe2bffd16 fpga_image_info_free +EXPORT_SYMBOL_GPL drivers/gpio/gpio-generic 0x599152fb bgpio_init +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm 0x0058ba7f drm_bridge_detect +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm 0x04bd6655 drm_get_unmapped_area +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm 0x1d91e8c2 drm_bridge_hpd_disable +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm 0x221c1d3e drm_bridge_hpd_notify +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm 0x252301a5 drm_gem_dumb_map_offset +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm 0x270031b6 drm_bridge_hpd_enable +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm 0x3684f6c6 drm_class_device_unregister +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm 0x693e8934 drmm_kstrdup +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm 0x6d220abe drm_gem_shmem_create +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm 0x79ebb42d drm_crtc_add_crc_entry +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm 0x900117c0 drm_gem_shmem_get_pages_sgt +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm 0xc094b1fc drm_gem_shmem_get_sg_table +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm 0xc274a705 drm_class_device_register +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm 0xd7d403a8 drm_hdcp_check_ksvs_revoked +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm 0xdc117d93 drm_bridge_get_edid +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm 0xe172a93f drm_gem_shmem_prime_import_sg_table +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm 0xe32af357 drm_gem_shmem_dumb_create +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm 0xf10536e7 drm_do_get_edid +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm 0xf93b24db drm_bridge_get_modes +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm 0xfbcaf27d drm_gem_shmem_free_object +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm 0xfd2f717b drm_gem_shmem_mmap +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm_kms_helper 0x41a6a9d9 drm_gem_fb_prepare_fb +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm_kms_helper 0x43525e30 drm_bridge_connector_disable_hpd +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm_kms_helper 0x545ef8cf drm_gem_fb_create +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm_kms_helper 0x782dd4ba drm_gem_fb_create_with_dirty +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm_kms_helper 0x86d6069f drm_gem_fb_create_with_funcs +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm_kms_helper 0x9447c67f drm_bridge_connector_init +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm_kms_helper 0x94f59419 drm_gem_fb_init_with_funcs +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm_kms_helper 0xa7051ef5 drm_bridge_connector_enable_hpd +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm_kms_helper 0xba0a25f8 drm_gem_fb_afbc_init +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm_kms_helper 0xfbe434f4 drm_gem_fb_get_obj +EXPORT_SYMBOL_GPL drivers/gpu/drm/ttm/ttm 0x1c0a5713 ttm_dma_populate +EXPORT_SYMBOL_GPL drivers/gpu/drm/ttm/ttm 0x25e4411b ttm_dma_page_alloc_debugfs +EXPORT_SYMBOL_GPL drivers/gpu/drm/ttm/ttm 0x8e3f3406 ttm_dma_unpopulate +EXPORT_SYMBOL_GPL drivers/hwtracing/intel_th/intel_th 0x1076728b intel_th_set_output +EXPORT_SYMBOL_GPL drivers/hwtracing/intel_th/intel_th 0x44430412 intel_th_output_enable +EXPORT_SYMBOL_GPL drivers/hwtracing/intel_th/intel_th 0x52b96b56 intel_th_trace_enable +EXPORT_SYMBOL_GPL drivers/hwtracing/intel_th/intel_th 0x57589fdc intel_th_trace_disable +EXPORT_SYMBOL_GPL drivers/hwtracing/intel_th/intel_th 0x636c8aec intel_th_driver_unregister +EXPORT_SYMBOL_GPL drivers/hwtracing/intel_th/intel_th 0x6d89219f intel_th_free +EXPORT_SYMBOL_GPL drivers/hwtracing/intel_th/intel_th 0x6dce8ead intel_th_alloc +EXPORT_SYMBOL_GPL drivers/hwtracing/intel_th/intel_th 0x93c43313 intel_th_driver_register +EXPORT_SYMBOL_GPL drivers/hwtracing/intel_th/intel_th 0xd32cce2d intel_th_trace_switch +EXPORT_SYMBOL_GPL drivers/hwtracing/intel_th/intel_th_msu 0x350b54db intel_th_msu_buffer_register +EXPORT_SYMBOL_GPL drivers/hwtracing/intel_th/intel_th_msu 0x6ae813d6 intel_th_msu_buffer_unregister +EXPORT_SYMBOL_GPL drivers/hwtracing/intel_th/intel_th_msu 0xd9a52d16 intel_th_msc_window_unlock +EXPORT_SYMBOL_GPL drivers/hwtracing/stm/stm_core 0x0069c2d0 stm_unregister_device +EXPORT_SYMBOL_GPL drivers/hwtracing/stm/stm_core 0x07efa75e stm_source_unregister_device +EXPORT_SYMBOL_GPL drivers/hwtracing/stm/stm_core 0x6f4b95e3 stm_register_protocol +EXPORT_SYMBOL_GPL drivers/hwtracing/stm/stm_core 0x8b68de6a stm_data_write +EXPORT_SYMBOL_GPL drivers/hwtracing/stm/stm_core 0x96fa215e stm_source_register_device +EXPORT_SYMBOL_GPL drivers/hwtracing/stm/stm_core 0xa826196c stm_unregister_protocol +EXPORT_SYMBOL_GPL drivers/hwtracing/stm/stm_core 0xaf197ef2 stm_source_write +EXPORT_SYMBOL_GPL drivers/hwtracing/stm/stm_core 0xbbdba905 to_pdrv_policy_node +EXPORT_SYMBOL_GPL drivers/hwtracing/stm/stm_core 0xfda4401d stm_register_device +EXPORT_SYMBOL_GPL drivers/i2c/i2c-core 0x03ade274 i2c_new_ancillary_device +EXPORT_SYMBOL_GPL drivers/i2c/i2c-core 0x12076d5c i2c_parse_fw_timings +EXPORT_SYMBOL_GPL drivers/i2c/i2c-core 0x261f11ec i2c_new_dummy_device +EXPORT_SYMBOL_GPL drivers/i2c/i2c-core 0x40998b0f i2c_new_scanned_device +EXPORT_SYMBOL_GPL drivers/i2c/i2c-core 0x42041512 i2c_get_dma_safe_msg_buf +EXPORT_SYMBOL_GPL drivers/i2c/i2c-core 0x4da5a497 i2c_recover_bus +EXPORT_SYMBOL_GPL drivers/i2c/i2c-core 0x4dae16e4 i2c_put_dma_safe_msg_buf +EXPORT_SYMBOL_GPL drivers/i2c/i2c-core 0x544f8ab0 i2c_add_numbered_adapter +EXPORT_SYMBOL_GPL drivers/i2c/i2c-core 0x5aa33a66 i2c_new_smbus_alert_device +EXPORT_SYMBOL_GPL drivers/i2c/i2c-core 0x5bc5449c i2c_get_device_id +EXPORT_SYMBOL_GPL drivers/i2c/i2c-core 0x9c794fb1 i2c_generic_scl_recovery +EXPORT_SYMBOL_GPL drivers/i2c/i2c-core 0xac7e0c86 devm_i2c_new_dummy_device +EXPORT_SYMBOL_GPL drivers/i2c/i2c-core 0xae634d27 i2c_handle_smbus_host_notify +EXPORT_SYMBOL_GPL drivers/i2c/i2c-core 0xbbeeca65 i2c_probe_func_quick_read +EXPORT_SYMBOL_GPL drivers/i2c/i2c-core 0xc088aa6b i2c_unregister_device +EXPORT_SYMBOL_GPL drivers/i2c/i2c-core 0xc72ab326 i2c_match_id +EXPORT_SYMBOL_GPL drivers/i2c/i2c-core 0xc86c3dbb i2c_new_client_device +EXPORT_SYMBOL_GPL drivers/i2c/i2c-core 0xd2cc313b i2c_adapter_depth +EXPORT_SYMBOL_GPL drivers/i2c/i2c-core 0xd5ea6e29 i2c_client_type +EXPORT_SYMBOL_GPL drivers/i2c/i2c-core 0xdbb18954 i2c_for_each_dev +EXPORT_SYMBOL_GPL drivers/i2c/i2c-core 0xead5d491 i2c_bus_type +EXPORT_SYMBOL_GPL drivers/i2c/i2c-core 0xee9ad008 i2c_adapter_type +EXPORT_SYMBOL_GPL drivers/i2c/i2c-mux 0x18b44ddb i2c_mux_del_adapters +EXPORT_SYMBOL_GPL drivers/i2c/i2c-mux 0x488157fa i2c_mux_alloc +EXPORT_SYMBOL_GPL drivers/i2c/i2c-mux 0x90be3462 i2c_mux_add_adapter +EXPORT_SYMBOL_GPL drivers/i2c/i2c-mux 0xf9fa2471 i2c_root_adapter +EXPORT_SYMBOL_GPL drivers/infiniband/core/ib_core 0xdbd019c4 ib_wq +EXPORT_SYMBOL_GPL drivers/infiniband/ulp/rtrs/rtrs-core 0x195eac5e rtrs_iu_post_send +EXPORT_SYMBOL_GPL drivers/infiniband/ulp/rtrs/rtrs-core 0x3bc80a20 rtrs_stop_hb +EXPORT_SYMBOL_GPL drivers/infiniband/ulp/rtrs/rtrs-core 0x586e78ca rtrs_iu_post_rdma_write_imm +EXPORT_SYMBOL_GPL drivers/infiniband/ulp/rtrs/rtrs-core 0x719e0649 rtrs_iu_post_recv +EXPORT_SYMBOL_GPL drivers/infiniband/ulp/rtrs/rtrs-core 0x73bd6056 rtrs_init_hb +EXPORT_SYMBOL_GPL drivers/infiniband/ulp/rtrs/rtrs-core 0x96e9ca5e rtrs_start_hb +EXPORT_SYMBOL_GPL drivers/infiniband/ulp/rtrs/rtrs-core 0xafe74a00 rtrs_iu_free +EXPORT_SYMBOL_GPL drivers/infiniband/ulp/rtrs/rtrs-core 0xb3e2eb20 rtrs_send_hb_ack +EXPORT_SYMBOL_GPL drivers/infiniband/ulp/rtrs/rtrs-core 0xbdc0ef80 rtrs_post_recv_empty +EXPORT_SYMBOL_GPL drivers/infiniband/ulp/rtrs/rtrs-core 0xc2da7ec2 rtrs_iu_alloc +EXPORT_SYMBOL_GPL drivers/infiniband/ulp/rtrs/rtrs-core 0xeaf011d4 rtrs_post_rdma_write_imm_empty +EXPORT_SYMBOL_GPL drivers/infiniband/ulp/rtrs/rtrs-core 0xf1ffaa7b rtrs_cq_qp_destroy +EXPORT_SYMBOL_GPL drivers/infiniband/ulp/rtrs/rtrs-core 0xfc860bc1 rtrs_cq_qp_create +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0x15b97715 __tracepoint_bcache_write +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0x19b88bec __tracepoint_bcache_writeback +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0x2307b422 __tracepoint_bcache_journal_full +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0x2b46c4b6 __tracepoint_bcache_btree_node_alloc_fail +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0x2b793afb __tracepoint_bcache_read +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0x2fbf8560 __tracepoint_bcache_btree_read +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0x33554606 __tracepoint_bcache_journal_entry_full +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0x414c7765 __tracepoint_bcache_btree_node_alloc +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0x5f6a4a3e __tracepoint_bcache_btree_node_free +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0x65fb81f0 __tracepoint_bcache_btree_node_compact +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0x6b1045c7 __tracepoint_bcache_btree_set_root +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0x7260fb66 __tracepoint_bcache_btree_write +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0x748968f6 __tracepoint_bcache_btree_insert_key +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0x7574c715 __tracepoint_bcache_gc_end +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0x7c8a33fe __tracepoint_bcache_read_retry +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0x96bf5dba __tracepoint_bcache_writeback_collision +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0xa353964f __tracepoint_bcache_request_end +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0xa4682eff __tracepoint_bcache_gc_start +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0xab4c5652 __tracepoint_bcache_btree_node_split +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0xb22f8879 __tracepoint_bcache_bypass_sequential +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0xbf53dc9d __tracepoint_bcache_btree_gc_coalesce +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0xc00185bc __tracepoint_bcache_gc_copy_collision +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0xc13b483f __tracepoint_bcache_invalidate +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0xc36e201d __tracepoint_bcache_gc_copy +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0xc8feefc9 __tracepoint_bcache_alloc_fail +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0xd8da0f0e __tracepoint_bcache_cache_insert +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0xd9f20dee __tracepoint_bcache_journal_replay_key +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0xe9c4d700 __tracepoint_bcache_bypass_congested +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0xee603d81 __tracepoint_bcache_journal_write +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0xf5d8bf62 __tracepoint_bcache_btree_cache_cannibalize +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0xf8502c64 __tracepoint_bcache_request_start +EXPORT_SYMBOL_GPL drivers/md/dm-bio-prison 0x0b350acc dm_bio_prison_free_cell_v2 +EXPORT_SYMBOL_GPL drivers/md/dm-bio-prison 0x107ecda9 dm_bio_prison_alloc_cell_v2 +EXPORT_SYMBOL_GPL drivers/md/dm-bio-prison 0x17dd39d6 dm_deferred_set_create +EXPORT_SYMBOL_GPL drivers/md/dm-bio-prison 0x183aa333 dm_bio_prison_alloc_cell +EXPORT_SYMBOL_GPL drivers/md/dm-bio-prison 0x2eb01e04 dm_deferred_set_destroy +EXPORT_SYMBOL_GPL drivers/md/dm-bio-prison 0x3348f04a dm_cell_visit_release +EXPORT_SYMBOL_GPL drivers/md/dm-bio-prison 0x4260981c dm_cell_release +EXPORT_SYMBOL_GPL drivers/md/dm-bio-prison 0x6791a44e dm_deferred_entry_dec +EXPORT_SYMBOL_GPL drivers/md/dm-bio-prison 0x69a25e31 dm_cell_unlock_v2 +EXPORT_SYMBOL_GPL drivers/md/dm-bio-prison 0x7184f664 dm_cell_get_v2 +EXPORT_SYMBOL_GPL drivers/md/dm-bio-prison 0x753e20b2 dm_bio_prison_create +EXPORT_SYMBOL_GPL drivers/md/dm-bio-prison 0x7ab6736b dm_cell_promote_or_release +EXPORT_SYMBOL_GPL drivers/md/dm-bio-prison 0x93b5e131 dm_cell_release_no_holder +EXPORT_SYMBOL_GPL drivers/md/dm-bio-prison 0x9cb79ecc dm_cell_quiesce_v2 +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 0xbcb22ed3 dm_bio_prison_free_cell +EXPORT_SYMBOL_GPL drivers/md/dm-bio-prison 0xca2e3a88 dm_deferred_entry_inc +EXPORT_SYMBOL_GPL drivers/md/dm-bio-prison 0xd99e003d dm_bio_prison_create_v2 +EXPORT_SYMBOL_GPL drivers/md/dm-bio-prison 0xe5090bc2 dm_cell_put_v2 +EXPORT_SYMBOL_GPL drivers/md/dm-bio-prison 0xeb923f66 dm_cell_lock_v2 +EXPORT_SYMBOL_GPL drivers/md/dm-bio-prison 0xeb97da3b dm_cell_lock_promote_v2 +EXPORT_SYMBOL_GPL drivers/md/dm-bio-prison 0xf3603fcd dm_get_cell +EXPORT_SYMBOL_GPL drivers/md/dm-bio-prison 0xf47f40cc dm_cell_error +EXPORT_SYMBOL_GPL drivers/md/dm-bio-prison 0xf86094e9 dm_bio_detain +EXPORT_SYMBOL_GPL drivers/md/dm-bufio 0x0ad0dc4f dm_bufio_mark_buffer_dirty +EXPORT_SYMBOL_GPL drivers/md/dm-bufio 0x111ab12a dm_bufio_mark_partial_buffer_dirty +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 0x6aebce95 dm_bufio_issue_discard +EXPORT_SYMBOL_GPL drivers/md/dm-bufio 0x6d3f57bd dm_bufio_get_client +EXPORT_SYMBOL_GPL drivers/md/dm-bufio 0x72f07bf4 dm_bufio_set_minimum_buffers +EXPORT_SYMBOL_GPL drivers/md/dm-bufio 0x74dcd98c dm_bufio_get_aux_data +EXPORT_SYMBOL_GPL drivers/md/dm-bufio 0x7c381a76 dm_bufio_get_block_size +EXPORT_SYMBOL_GPL drivers/md/dm-bufio 0x867e87eb dm_bufio_get_dm_io_client +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 0xb2438d54 dm_bufio_release_move +EXPORT_SYMBOL_GPL drivers/md/dm-bufio 0xc0d7df85 dm_bufio_new +EXPORT_SYMBOL_GPL drivers/md/dm-bufio 0xc90df7e5 dm_bufio_prefetch +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 0xea8bae0d dm_bufio_client_create +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 0x29cf8d44 dm_cache_policy_register +EXPORT_SYMBOL_GPL drivers/md/dm-cache 0x5adc2807 btracker_destroy +EXPORT_SYMBOL_GPL drivers/md/dm-cache 0x5de611a9 btracker_nr_writebacks_queued +EXPORT_SYMBOL_GPL drivers/md/dm-cache 0x796a703b dm_cache_policy_get_version +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 0xab4ebf05 dm_cache_policy_unregister +EXPORT_SYMBOL_GPL drivers/md/dm-cache 0xbf1a2968 btracker_create +EXPORT_SYMBOL_GPL drivers/md/dm-cache 0xccfe6409 btracker_nr_demotions_queued +EXPORT_SYMBOL_GPL drivers/md/dm-cache 0xd638ed27 dm_cache_policy_get_name +EXPORT_SYMBOL_GPL drivers/md/dm-cache 0xe1bb31c4 dm_cache_policy_create +EXPORT_SYMBOL_GPL drivers/md/dm-cache 0xe756dac6 dm_cache_policy_get_hint_size +EXPORT_SYMBOL_GPL drivers/md/dm-cache 0xe8c5320d dm_cache_policy_destroy +EXPORT_SYMBOL_GPL drivers/md/dm-multipath 0xe27de0bb dm_register_path_selector +EXPORT_SYMBOL_GPL drivers/md/dm-multipath 0xf47f1449 dm_unregister_path_selector +EXPORT_SYMBOL_GPL drivers/md/dm-region-hash 0x01d2f9ac dm_rh_recovery_start +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 0x4d489420 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 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 0xab4650b8 dm_rh_delay +EXPORT_SYMBOL_GPL drivers/md/dm-region-hash 0xbe38a431 dm_rh_recovery_prepare +EXPORT_SYMBOL_GPL drivers/md/dm-region-hash 0xc09475fc dm_rh_dirty_log +EXPORT_SYMBOL_GPL drivers/md/dm-region-hash 0xc42f973b dm_rh_bio_to_region +EXPORT_SYMBOL_GPL drivers/md/dm-region-hash 0xcdc15a6c dm_rh_inc_pending +EXPORT_SYMBOL_GPL drivers/md/dm-region-hash 0xd8aa4284 dm_rh_region_context +EXPORT_SYMBOL_GPL drivers/md/dm-region-hash 0xeae06162 dm_rh_mark_nosync +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 0x00f5a3c8 dm_bm_write_lock +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x09cc81fa dm_btree_cursor_skip +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x0a7e77f3 dm_btree_cursor_end +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x0ae4d696 dm_sm_disk_open +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x0b25f6bc dm_array_resize +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x0b36102c dm_array_empty +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x0be67537 dm_btree_walk +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x0e198232 dm_btree_insert +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x10e6ccea dm_bitset_clear_bit +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x16af9071 dm_array_set_value +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x1e3f728d dm_block_data +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x23ebd5fb dm_bitset_set_bit +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x2417c5c4 dm_btree_empty +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x2adee13f dm_btree_cursor_next +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 0x34d45c77 dm_btree_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 0x36a34e58 dm_array_cursor_get_value +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x36b84cda dm_array_del +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x3a797d19 dm_btree_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 0x432b8178 dm_array_cursor_begin +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x4557b425 dm_bitset_test_bit +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x48d1c7dc dm_btree_find_lowest_key +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x48e323be dm_bm_unlock +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x49081644 dm_btree_remove +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x4a4cb558 dm_btree_insert_notify +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x5475ba9e dm_block_location +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x63b0c22d dm_bitset_flush +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x688d422d dm_bm_block_size +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x6af8a872 dm_array_info_init +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x6bb4bf8f dm_array_cursor_next +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x6e1e3821 dm_array_walk +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x6f2fe3c4 dm_btree_remove_leaves +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 0x7485935a dm_btree_lookup +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x764567c8 dm_btree_find_highest_key +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 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 0x885b0024 dm_array_new +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x89783bda dm_array_cursor_end +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 0x97263968 dm_bitset_resize +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x98db2687 dm_bitset_cursor_end +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 0x9e98460e dm_bitset_empty +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0xa2ea5542 dm_bitset_del +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0xa3cc1157 dm_btree_cursor_begin +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0xa51fbedc dm_bitset_new +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0xa8d9df84 dm_tm_create_with_sm +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0xa9c4fc6b dm_bm_write_lock_zero +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0xaab0ef04 dm_bitset_cursor_skip +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0xb11cd6c1 dm_bm_read_lock +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0xb500e95b dm_tm_shadow_block +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0xb6949944 dm_array_get_value +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0xbb461fb7 dm_bitset_cursor_begin +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0xbbb5df05 dm_array_cursor_skip +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0xc248bde2 dm_disk_bitset_init +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0xcbba75fc dm_tm_read_lock +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0xcedfc878 dm_bitset_cursor_get_value +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0xd163cade dm_tm_commit +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0xd2d4ded2 dm_block_manager_create +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0xd6711a58 dm_bitset_cursor_next +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0xd7016b22 dm_sm_disk_create +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0xe781f874 dm_tm_dec +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0xf398644f dm_btree_lookup_next +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0xf3b16444 dm_tm_open_with_sm +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0xf551114d dm_bm_checksum +EXPORT_SYMBOL_GPL drivers/misc/ti-st/st_drv 0x0b52993f st_unregister +EXPORT_SYMBOL_GPL drivers/misc/ti-st/st_drv 0x518a2137 st_register +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x04384905 mlx4_phys_to_slave_port +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x052fa766 mlx4_db_free +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x086b21de mlx4_pd_free +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x0889a85a mlx4_config_vxlan_port +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x0a4ec7b5 mlx4_replace_zero_macs +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x0e80bb12 mlx4_counter_alloc +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x10c4449c mlx4_unbond +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x14259161 mlx4_qp_remove +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x16f8e16a mlx4_qp_release_range +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x1a01d19d mlx4_uar_alloc +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x1d33bd21 mlx4_xrcd_free +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x1d661cfa mlx4_xrcd_alloc +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x1e6652c4 mlx4_multicast_detach +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x21c7d935 mlx4_register_vlan +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x25065b66 mlx4_flow_steer_promisc_add +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x25a099a9 mlx4_mr_rereg_mem_cleanup +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x265325d1 mlx4_multicast_attach +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x28472ee7 __mlx4_unregister_mac +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x29f1a651 mlx4_config_roce_v2_port +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x2ae2dd3d __mlx4_cmd +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x2aed041a mlx4_FLOW_STEERING_IB_UC_QP_RANGE +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x2bc33cb4 mlx4_find_cached_mac +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x2d110f70 mlx4_unicast_promisc_add +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x2d3067da mlx4_get_base_qpn +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x2e606686 mlx4_hw_rule_sz +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x3609dcfd mlx4_mw_free +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x36d6432b mlx4_mr_hw_get_mpt +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x37e1d690 mlx4_cq_modify +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x38644f7a mlx4_unicast_detach +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x3a1a5225 mlx4_config_dev_retrieval +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x3e3ed7c8 mlx4_mtt_cleanup +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x40eb7be1 mlx4_set_vf_link_state +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x4659bfdf mlx4_phys_to_slaves_pport_actv +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x4a3a846c mlx4_cq_alloc +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x4a5fbb9c mlx4_get_base_gid_ix +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x4df2c700 mlx4_alloc_hwq_res +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x4f41b58d mlx4_pd_alloc +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x525dcc56 mlx4_phys_to_slaves_pport +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x533f63f9 mlx4_mr_hw_change_pd +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x58d82cb6 mlx4_map_sw_to_hw_steering_mode +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x599dc398 mlx4_mr_alloc +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x5a1de8e3 mlx4_db_alloc +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x5b3da478 mlx4_get_admin_guid +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x5bbd4d1e mlx4_free_hwq_res +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x63799089 mlx4_get_vf_stats +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x64c19f1a mlx4_wol_write +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x670817d2 mlx4_mr_enable +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x68216fa6 mlx4_qp_query +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x68a75e07 mlx4_mtt_addr +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x69151ade mlx4_qp_to_ready +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x6b5669f6 mlx4_unicast_promisc_remove +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x6ca2874b mlx4_find_cached_vlan +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x6ccf3e45 mlx4_port_map_set +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x6f471fbf mlx4_SYNC_TPT +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x6f53d28f mlx4_map_sw_to_hw_steering_id +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x6f5fc87e mlx4_free_cmd_mailbox +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x6fcdbf24 mlx4_bf_free +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x7375a40e __mlx4_register_mac +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x74920ef5 mlx4_multicast_promisc_add +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x784bcb53 mlx4_mr_hw_write_mpt +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x7bd6f616 mlx4_flow_steer_promisc_remove +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x7e5bce23 mlx4_uar_free +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x844ea104 mlx4_vf_smi_enabled +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x8a52f0b4 mlx4_vf_get_enable_smi_admin +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x8b3e2495 mlx4_read_clock +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x91600625 mlx4_set_vf_rate +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x9465b8be mlx4_flow_detach +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x94c6818d mlx4_flow_attach +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x95aacc68 mlx4_get_devlink_port +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x96b4617c mlx4_cq_resize +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x9a0cb3d9 mlx4_get_vf_config +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x9a14999b mlx4_get_active_ports +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x9a5e2ea4 mlx4_unregister_interface +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x9e7c1279 mlx4_update_qp +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x9f4b1abe mlx4_set_vf_vlan +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x9fd53a7c mlx4_write_mtt +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xa02beb64 mlx4_srq_alloc +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xa47aa04f mlx4_bond +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xaaafae8a __mlx4_replace_mac +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xabbc79cb mlx4_cq_free +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xaf68885f mlx4_qp_free +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xb37709ee mlx4_ACCESS_PTYS_REG +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xb58d97b2 mlx4_mw_enable +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xb87a89af mlx4_get_internal_clock_params +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xbf848e03 mlx4_get_counter_stats +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xc073f058 mlx4_mr_hw_put_mpt +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xc2968788 mlx4_srq_arm +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xc40c689a mlx4_srq_query +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xc4163be0 mlx4_srq_lookup +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xc7f7ebbb mlx4_mr_rereg_mem_write +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xc8f4d5a5 mlx4_set_vf_spoofchk +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xc96d6d5b mlx4_register_mac +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xcb6528a6 mlx4_get_default_counter_index +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xce2f68db mlx4_unregister_mac +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xce5467e0 mlx4_buf_write_mtt +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xce82d93c mlx4_wol_read +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xd04e8083 mlx4_mw_alloc +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xd11b8a02 mlx4_qp_modify +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xd17dc469 mlx4_mtt_init +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xd1d36e5f mlx4_buf_alloc +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xd4464016 mlx4_set_vf_mac +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xd83a2e4d mlx4_INIT_PORT +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xda0fbbf9 mlx4_qp_reserve_range +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xdad95b90 mlx4_vf_set_enable_smi_admin +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xdc5808c3 mlx4_qp_alloc +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xdd5bcd0c mlx4_CLOSE_PORT +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xe102531f mlx4_multicast_promisc_remove +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xe688031f mlx4_slave_convert_port +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xe8a31a74 mlx4_set_admin_guid +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xeadb38fd mlx4_bf_alloc +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xeeb719d9 mlx4_mr_hw_change_access +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xef8d2d40 mlx4_unregister_vlan +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xf0f064e7 mlx4_buf_free +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xf771c668 mlx4_srq_free +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xf8d41bbe mlx4_get_slave_default_vlan +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xfaeb2870 mlx4_counter_free +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xfb723104 mlx4_get_protocol_dev +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xfc0f5a66 mlx4_register_interface +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xfc159edb mlx4_alloc_cmd_mailbox +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xff216ef3 mlx4_unicast_attach +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xff41cefd mlx4_mr_free +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x05e9023f mlx5_query_port_pause +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x06087e92 mlx5_modify_nic_vport_mac_list +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 0x07b3d049 mlx5_dm_sw_icm_alloc +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x0bb33697 mlx5_set_port_wol +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x0c46330f mlx5_core_reserved_gids_count +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x12c135d9 mlx5_accel_esp_destroy_xfrm +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x13fd8607 mlx5_query_port_oper_mtu +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x1c90ae95 mlx5_query_module_eeprom +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x21a36df3 mlx5_core_query_ib_ppcnt +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x21eae97f mlx5_query_mac_address +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x22307d14 mlx5_modify_nic_vport_vlans +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x22913415 mlx5_query_nic_vport_mac_address +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x26e898ea mlx5_query_port_pfc +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x2902a3f7 mlx5_buf_free +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x2aff6bcd mlx5_accel_esp_create_xfrm +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x2b059ebe mlx5_query_hca_vport_context +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x2c5ea514 mlx5_query_port_wol +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x2c6956be mlx5_toggle_port_link +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x2f161820 mlx5_query_nic_vport_promisc +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x3aa7aa7f mlx5_modify_port_ets_rate_limit +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x3c836022 mlx5_nic_vport_query_local_lb +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x409de36c mlx5_query_port_prio_tc +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x42fe7765 mlx5_nic_vport_update_local_lb +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x4d24de60 mlx5_query_port_tc_bw_alloc +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x4f78509f mlx5_core_modify_hca_vport_context +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x50ff98dd mlx5_query_hca_vport_gid +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x584c6633 mlx5_core_access_reg +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x5d796c55 mlx5_db_free +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x5dd1216f mlx5_query_port_vl_hw_cap +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x6218ac0c mlx5_set_port_pfc +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x666caebd mlx5_query_port_link_width_oper +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x699edaaf mlx5_modify_nic_vport_mtu +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x6d6c3f85 mlx5_set_port_tc_bw_alloc +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x705474cf mlx5_query_nic_vport_min_inline +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x74abbf9b mlx5_nic_vport_affiliate_multiport +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x780f4970 mlx5_query_hca_vport_system_image_guid +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x7b91fe15 mlx5_set_port_caps +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x7e2e2801 mlx5_core_query_vport_counter +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x8239bab4 mlx5_modify_nic_vport_promisc +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x91e8d161 mlx5_query_port_max_mtu +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x93ba7813 mlx5_query_hca_vport_node_guid +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x94b32028 mlx5_query_nic_vport_mac_list +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x97644f8e mlx5_query_nic_vport_mtu +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x97ee5411 mlx5_accel_ipsec_device_caps +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x980d2113 mlx5_query_nic_vport_system_image_guid +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x9c1395f9 mlx5_query_hca_vport_pkey +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x9e5bf6e3 mlx5_set_port_tc_group +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xa2b8bcca mlx5_modify_nic_vport_mac_address +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xa44073f4 mlx5_query_port_tc_group +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xa75f49d6 mlx5_fill_page_array +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xaa2e3a96 mlx5_core_query_sq_state +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xb3026886 mlx5_frag_buf_free +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xb6cafadd mlx5_nic_vport_enable_roce +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xbe4e314b mlx5_query_nic_vport_node_guid +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xc3b0ec64 mlx5_query_port_ptys +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xc900c061 mlx5_eswitch_get_total_vports +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xca92aae1 mlx5_query_min_inline +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xcb6edf7c mlx5_db_alloc +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xcd8a78d0 mlx5_dm_sw_icm_dealloc +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xcf1cb015 mlx5_query_nic_vport_qkey_viol_cntr +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xd29a02db mlx5_query_nic_system_image_guid +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xd412c158 mlx5_nic_vport_unaffiliate_multiport +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xdbe25134 mlx5_db_alloc_node +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xdd5d96fb mlx5_query_port_admin_status +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xf1461a2a mlx5_frag_buf_alloc_node +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xf65abe2b mlx5_set_port_mtu +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xf69a14e3 mlx5_set_port_admin_status +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xf6b81951 mlx5_query_port_ets_rate_limit +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xf9cd0b79 mlx5_accel_esp_modify_xfrm +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xfb117e58 mlx5_eswitch_mode +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xfc358f7a mlx5_set_port_prio_tc +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xffda1551 mlx5_set_port_pause +EXPORT_SYMBOL_GPL drivers/net/geneve 0x7e654d3b geneve_dev_create_fb +EXPORT_SYMBOL_GPL drivers/net/ipvlan/ipvlan 0x00939c71 ipvlan_link_delete +EXPORT_SYMBOL_GPL drivers/net/ipvlan/ipvlan 0x226f230b ipvlan_count_rx +EXPORT_SYMBOL_GPL drivers/net/ipvlan/ipvlan 0x3570da0c ipvlan_link_new +EXPORT_SYMBOL_GPL drivers/net/ipvlan/ipvlan 0x9a566dc1 ipvlan_link_setup +EXPORT_SYMBOL_GPL drivers/net/ipvlan/ipvlan 0xb96b2350 ipvlan_link_register +EXPORT_SYMBOL_GPL drivers/net/macsec 0x1f9fd3d4 macsec_pn_wrapped +EXPORT_SYMBOL_GPL drivers/net/macvlan 0x080bf703 macvlan_link_register +EXPORT_SYMBOL_GPL drivers/net/macvlan 0x3875e501 macvlan_common_setup +EXPORT_SYMBOL_GPL drivers/net/macvlan 0x77978bc4 macvlan_common_newlink +EXPORT_SYMBOL_GPL drivers/net/macvlan 0x9bc30bd7 macvlan_dellink +EXPORT_SYMBOL_GPL drivers/net/net_failover 0xa6fdbeff net_failover_destroy +EXPORT_SYMBOL_GPL drivers/net/net_failover 0xe31dc653 net_failover_create +EXPORT_SYMBOL_GPL drivers/net/phy/bcm-phy-lib 0x0b1a0ea0 bcm_phy_read_misc +EXPORT_SYMBOL_GPL drivers/net/phy/bcm-phy-lib 0x10e29710 bcm_phy_modify_rdb +EXPORT_SYMBOL_GPL drivers/net/phy/bcm-phy-lib 0x1add5a79 bcm_phy_downshift_get +EXPORT_SYMBOL_GPL drivers/net/phy/bcm-phy-lib 0x30fed14b bcm_phy_downshift_set +EXPORT_SYMBOL_GPL drivers/net/phy/bcm-phy-lib 0x350ef736 bcm_phy_ack_intr +EXPORT_SYMBOL_GPL drivers/net/phy/bcm-phy-lib 0x36884bcd bcm_phy_enable_apd +EXPORT_SYMBOL_GPL drivers/net/phy/bcm-phy-lib 0x387196c3 bcm_phy_28nm_a0b0_afe_config_init +EXPORT_SYMBOL_GPL drivers/net/phy/bcm-phy-lib 0x466ce19e bcm_phy_r_rc_cal_reset +EXPORT_SYMBOL_GPL drivers/net/phy/bcm-phy-lib 0x4d6c8b8b __bcm_phy_write_rdb +EXPORT_SYMBOL_GPL drivers/net/phy/bcm-phy-lib 0x4eca542f bcm54xx_auxctl_read +EXPORT_SYMBOL_GPL drivers/net/phy/bcm-phy-lib 0x53495cb7 bcm_phy_write_rdb +EXPORT_SYMBOL_GPL drivers/net/phy/bcm-phy-lib 0x5f4fdec2 bcm_phy_enable_jumbo +EXPORT_SYMBOL_GPL drivers/net/phy/bcm-phy-lib 0x60a993cd bcm_phy_modify_exp +EXPORT_SYMBOL_GPL drivers/net/phy/bcm-phy-lib 0x6d9f5768 __bcm_phy_write_exp +EXPORT_SYMBOL_GPL drivers/net/phy/bcm-phy-lib 0x70d6cff1 bcm_phy_cable_test_get_status +EXPORT_SYMBOL_GPL drivers/net/phy/bcm-phy-lib 0x73ba8054 bcm_phy_write_exp +EXPORT_SYMBOL_GPL drivers/net/phy/bcm-phy-lib 0x80087cbb bcm_phy_get_sset_count +EXPORT_SYMBOL_GPL drivers/net/phy/bcm-phy-lib 0x84077431 bcm_phy_cable_test_start +EXPORT_SYMBOL_GPL drivers/net/phy/bcm-phy-lib 0x959a3400 bcm_phy_get_stats +EXPORT_SYMBOL_GPL drivers/net/phy/bcm-phy-lib 0xa126d56f bcm_phy_cable_test_get_status_rdb +EXPORT_SYMBOL_GPL drivers/net/phy/bcm-phy-lib 0xa1e33f2f __bcm_phy_read_exp +EXPORT_SYMBOL_GPL drivers/net/phy/bcm-phy-lib 0xa3595f3e __bcm_phy_read_rdb +EXPORT_SYMBOL_GPL drivers/net/phy/bcm-phy-lib 0xaaea1dc6 bcm_phy_get_strings +EXPORT_SYMBOL_GPL drivers/net/phy/bcm-phy-lib 0xb20e371f bcm_phy_cable_test_start_rdb +EXPORT_SYMBOL_GPL drivers/net/phy/bcm-phy-lib 0xb2c6039c bcm_phy_config_intr +EXPORT_SYMBOL_GPL drivers/net/phy/bcm-phy-lib 0xb9b6f0a4 __bcm_phy_modify_exp +EXPORT_SYMBOL_GPL drivers/net/phy/bcm-phy-lib 0xc10aadac bcm_phy_write_misc +EXPORT_SYMBOL_GPL drivers/net/phy/bcm-phy-lib 0xc9fdf479 __bcm_phy_modify_rdb +EXPORT_SYMBOL_GPL drivers/net/phy/bcm-phy-lib 0xd9836dd3 bcm_phy_read_shadow +EXPORT_SYMBOL_GPL drivers/net/phy/bcm-phy-lib 0xeb9b1750 bcm_phy_set_eee +EXPORT_SYMBOL_GPL drivers/net/phy/bcm-phy-lib 0xeecee3b1 bcm_phy_write_shadow +EXPORT_SYMBOL_GPL drivers/net/phy/bcm-phy-lib 0xfcbc2ae4 bcm_phy_read_exp +EXPORT_SYMBOL_GPL drivers/net/phy/bcm-phy-lib 0xfe064af5 bcm_phy_read_rdb +EXPORT_SYMBOL_GPL drivers/net/phy/fixed_phy 0x2f39ed62 fixed_phy_unregister +EXPORT_SYMBOL_GPL drivers/net/phy/fixed_phy 0x92d31cfb fixed_phy_add +EXPORT_SYMBOL_GPL drivers/net/phy/fixed_phy 0xada8ba9d fixed_phy_change_carrier +EXPORT_SYMBOL_GPL drivers/net/phy/fixed_phy 0xc18678cc fixed_phy_register_with_gpiod +EXPORT_SYMBOL_GPL drivers/net/phy/fixed_phy 0xcf3708e2 fixed_phy_set_link_update +EXPORT_SYMBOL_GPL drivers/net/phy/fixed_phy 0xf554c603 fixed_phy_register +EXPORT_SYMBOL_GPL drivers/net/phy/libphy 0x00e82307 phy_check_downshift +EXPORT_SYMBOL_GPL drivers/net/phy/libphy 0x06209f49 phy_lookup_setting +EXPORT_SYMBOL_GPL drivers/net/phy/libphy 0x0b26a81d devm_mdiobus_free +EXPORT_SYMBOL_GPL drivers/net/phy/libphy 0x18e4f8aa swphy_read_reg +EXPORT_SYMBOL_GPL drivers/net/phy/libphy 0x1c272a25 __phy_modify_mmd +EXPORT_SYMBOL_GPL drivers/net/phy/libphy 0x1dd7879b devm_phy_package_join +EXPORT_SYMBOL_GPL drivers/net/phy/libphy 0x22feb291 genphy_c45_aneg_done +EXPORT_SYMBOL_GPL drivers/net/phy/libphy 0x236d77ed __phy_modify +EXPORT_SYMBOL_GPL drivers/net/phy/libphy 0x2a0a40fa mdio_bus_init +EXPORT_SYMBOL_GPL drivers/net/phy/libphy 0x335841c4 phy_save_page +EXPORT_SYMBOL_GPL drivers/net/phy/libphy 0x394138ae __phy_modify_mmd_changed +EXPORT_SYMBOL_GPL drivers/net/phy/libphy 0x3ad1a99e genphy_c45_read_status +EXPORT_SYMBOL_GPL drivers/net/phy/libphy 0x3f4632cd phy_10gbit_features +EXPORT_SYMBOL_GPL drivers/net/phy/libphy 0x40ad64a5 genphy_c45_an_config_aneg +EXPORT_SYMBOL_GPL drivers/net/phy/libphy 0x442d89c5 phy_10gbit_fec_features +EXPORT_SYMBOL_GPL drivers/net/phy/libphy 0x4c106f8b phy_speed_up +EXPORT_SYMBOL_GPL drivers/net/phy/libphy 0x538d073d phy_duplex_to_str +EXPORT_SYMBOL_GPL drivers/net/phy/libphy 0x54adffb2 phy_resolve_aneg_pause +EXPORT_SYMBOL_GPL drivers/net/phy/libphy 0x55374432 genphy_c45_read_pma +EXPORT_SYMBOL_GPL drivers/net/phy/libphy 0x57f2df78 phy_modify_mmd +EXPORT_SYMBOL_GPL drivers/net/phy/libphy 0x5b84ff59 phy_select_page +EXPORT_SYMBOL_GPL drivers/net/phy/libphy 0x5bf2df8e genphy_c45_an_disable_aneg +EXPORT_SYMBOL_GPL drivers/net/phy/libphy 0x5d9916ce genphy_c45_restart_aneg +EXPORT_SYMBOL_GPL drivers/net/phy/libphy 0x5ffc0a16 phy_10gbit_full_features +EXPORT_SYMBOL_GPL drivers/net/phy/libphy 0x600c5bf2 phy_resolve_aneg_linkmode +EXPORT_SYMBOL_GPL drivers/net/phy/libphy 0x60c4f3ea phy_driver_is_genphy_10g +EXPORT_SYMBOL_GPL drivers/net/phy/libphy 0x61f67c92 phy_gbit_features_array +EXPORT_SYMBOL_GPL drivers/net/phy/libphy 0x690f585e phy_basic_ports_array +EXPORT_SYMBOL_GPL drivers/net/phy/libphy 0x7073c04f phy_10_100_features_array +EXPORT_SYMBOL_GPL drivers/net/phy/libphy 0x7ac722bd phy_all_ports_features_array +EXPORT_SYMBOL_GPL drivers/net/phy/libphy 0x8423cad9 genphy_c45_pma_read_abilities +EXPORT_SYMBOL_GPL drivers/net/phy/libphy 0x8a897436 phy_modify +EXPORT_SYMBOL_GPL drivers/net/phy/libphy 0x8d5fd735 phy_gbit_features +EXPORT_SYMBOL_GPL drivers/net/phy/libphy 0x92ceea3e genphy_c45_config_aneg +EXPORT_SYMBOL_GPL drivers/net/phy/libphy 0x993dfc81 phy_start_machine +EXPORT_SYMBOL_GPL drivers/net/phy/libphy 0x9d024e0e __mdiobus_modify_changed +EXPORT_SYMBOL_GPL drivers/net/phy/libphy 0x9dc8667a phy_restart_aneg +EXPORT_SYMBOL_GPL drivers/net/phy/libphy 0xa2f812f9 phy_10gbit_fec_features_array +EXPORT_SYMBOL_GPL drivers/net/phy/libphy 0xa9a61b87 gen10g_config_aneg +EXPORT_SYMBOL_GPL drivers/net/phy/libphy 0xab2ff055 phy_package_join +EXPORT_SYMBOL_GPL drivers/net/phy/libphy 0xacf42f03 phy_modify_mmd_changed +EXPORT_SYMBOL_GPL drivers/net/phy/libphy 0xb4ad703e phy_speed_down +EXPORT_SYMBOL_GPL drivers/net/phy/libphy 0xb854bd8e phy_basic_t1_features +EXPORT_SYMBOL_GPL drivers/net/phy/libphy 0xba2bd125 phy_gbit_fibre_features +EXPORT_SYMBOL_GPL drivers/net/phy/libphy 0xbbbcf3ee phy_package_leave +EXPORT_SYMBOL_GPL drivers/net/phy/libphy 0xbf24865d genphy_c45_read_lpa +EXPORT_SYMBOL_GPL drivers/net/phy/libphy 0xc55ff962 phy_basic_t1_features_array +EXPORT_SYMBOL_GPL drivers/net/phy/libphy 0xc57be9f4 genphy_c45_read_mdix +EXPORT_SYMBOL_GPL drivers/net/phy/libphy 0xcfcf1ca7 phy_driver_is_genphy +EXPORT_SYMBOL_GPL drivers/net/phy/libphy 0xd0dd41e2 genphy_c45_check_and_restart_aneg +EXPORT_SYMBOL_GPL drivers/net/phy/libphy 0xd2dd4812 phy_basic_features +EXPORT_SYMBOL_GPL drivers/net/phy/libphy 0xd59a1587 linkmode_resolve_pause +EXPORT_SYMBOL_GPL drivers/net/phy/libphy 0xe1d3c20f devm_mdiobus_alloc_size +EXPORT_SYMBOL_GPL drivers/net/phy/libphy 0xe431800c phy_modify_changed +EXPORT_SYMBOL_GPL drivers/net/phy/libphy 0xe4b818c3 phy_speed_to_str +EXPORT_SYMBOL_GPL drivers/net/phy/libphy 0xe4bbf725 mdiobus_modify +EXPORT_SYMBOL_GPL drivers/net/phy/libphy 0xe4e48b12 swphy_validate_state +EXPORT_SYMBOL_GPL drivers/net/phy/libphy 0xe628bb9f phy_fibre_port_array +EXPORT_SYMBOL_GPL drivers/net/phy/libphy 0xeb4e2730 genphy_c45_pma_setup_forced +EXPORT_SYMBOL_GPL drivers/net/phy/libphy 0xeedd987e phy_10gbit_features_array +EXPORT_SYMBOL_GPL drivers/net/phy/libphy 0xef32b34c phy_restore_page +EXPORT_SYMBOL_GPL drivers/net/phy/libphy 0xf3d79c2c genphy_c45_read_link +EXPORT_SYMBOL_GPL drivers/net/phy/libphy 0xf4689d50 linkmode_set_pause +EXPORT_SYMBOL_GPL drivers/net/phy/libphy 0xf84ed30c phy_gbit_all_ports_features +EXPORT_SYMBOL_GPL drivers/net/phy/libphy 0xfab30dc0 mdio_bus_exit +EXPORT_SYMBOL_GPL drivers/net/phy/mdio-i2c 0x818be13f mdio_i2c_alloc +EXPORT_SYMBOL_GPL drivers/net/phy/phylink 0x08213956 phylink_ethtool_get_wol +EXPORT_SYMBOL_GPL drivers/net/phy/phylink 0x1162b00e phylink_ethtool_ksettings_get +EXPORT_SYMBOL_GPL drivers/net/phy/phylink 0x12135396 phylink_mac_change +EXPORT_SYMBOL_GPL drivers/net/phy/phylink 0x15c4e3e2 phylink_ethtool_set_pauseparam +EXPORT_SYMBOL_GPL drivers/net/phy/phylink 0x2c8e28ee phylink_ethtool_get_eee +EXPORT_SYMBOL_GPL drivers/net/phy/phylink 0x39991c76 phylink_add_pcs +EXPORT_SYMBOL_GPL drivers/net/phy/phylink 0x57727285 phylink_ethtool_set_eee +EXPORT_SYMBOL_GPL drivers/net/phy/phylink 0x5f8cbbba phylink_connect_phy +EXPORT_SYMBOL_GPL drivers/net/phy/phylink 0x5fb6b35f phylink_helper_basex_speed +EXPORT_SYMBOL_GPL drivers/net/phy/phylink 0x62104126 phylink_ethtool_set_wol +EXPORT_SYMBOL_GPL drivers/net/phy/phylink 0x6fa426d2 phylink_ethtool_nway_reset +EXPORT_SYMBOL_GPL drivers/net/phy/phylink 0x794d6425 phylink_mii_c22_pcs_an_restart +EXPORT_SYMBOL_GPL drivers/net/phy/phylink 0x825c7340 phylink_get_eee_err +EXPORT_SYMBOL_GPL drivers/net/phy/phylink 0x86ff345f phylink_ethtool_ksettings_set +EXPORT_SYMBOL_GPL drivers/net/phy/phylink 0x911fcd6c phylink_start +EXPORT_SYMBOL_GPL drivers/net/phy/phylink 0x96d27c42 phylink_mii_c22_pcs_set_advertisement +EXPORT_SYMBOL_GPL drivers/net/phy/phylink 0x983276da phylink_disconnect_phy +EXPORT_SYMBOL_GPL drivers/net/phy/phylink 0x9b604e1a phylink_mii_c45_pcs_get_state +EXPORT_SYMBOL_GPL drivers/net/phy/phylink 0x9beeb183 phylink_create +EXPORT_SYMBOL_GPL drivers/net/phy/phylink 0xb273c9a5 phylink_mii_c22_pcs_get_state +EXPORT_SYMBOL_GPL drivers/net/phy/phylink 0xc1d15a4c phylink_set_port_modes +EXPORT_SYMBOL_GPL drivers/net/phy/phylink 0xd83fa5b2 phylink_of_phy_connect +EXPORT_SYMBOL_GPL drivers/net/phy/phylink 0xdcb0a2c0 phylink_stop +EXPORT_SYMBOL_GPL drivers/net/phy/phylink 0xde66f4a7 phylink_mii_ioctl +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 0xf8fe5642 phylink_ethtool_get_pauseparam +EXPORT_SYMBOL_GPL drivers/net/tap 0x02b7bb51 tap_del_queues +EXPORT_SYMBOL_GPL drivers/net/tap 0x0423ab65 tap_get_socket +EXPORT_SYMBOL_GPL drivers/net/tap 0x325d0990 tap_queue_resize +EXPORT_SYMBOL_GPL drivers/net/tap 0x4399a810 tap_create_cdev +EXPORT_SYMBOL_GPL drivers/net/tap 0x49518231 tap_get_minor +EXPORT_SYMBOL_GPL drivers/net/tap 0x62341724 tap_handle_frame +EXPORT_SYMBOL_GPL drivers/net/tap 0x75b8f6f4 tap_destroy_cdev +EXPORT_SYMBOL_GPL drivers/net/tap 0x82f673fc tap_free_minor +EXPORT_SYMBOL_GPL drivers/net/tap 0x8e70e41f tap_get_ptr_ring +EXPORT_SYMBOL_GPL drivers/net/vxlan 0x5f7c0c61 vxlan_fdb_replay +EXPORT_SYMBOL_GPL drivers/net/vxlan 0x7c52be90 vxlan_dev_create +EXPORT_SYMBOL_GPL drivers/net/vxlan 0x9d6f4f62 vxlan_fdb_clear_offload +EXPORT_SYMBOL_GPL drivers/net/vxlan 0xcf5bc295 vxlan_fdb_find_uc +EXPORT_SYMBOL_GPL drivers/nvme/host/nvme-core 0x17313fcf nvme_start_ctrl +EXPORT_SYMBOL_GPL drivers/nvme/host/nvme-core 0x2d443c56 nvme_set_features +EXPORT_SYMBOL_GPL drivers/nvme/host/nvme-core 0x2fa55ced nvme_sec_submit +EXPORT_SYMBOL_GPL drivers/nvme/host/nvme-core 0x333f96f0 nvme_start_freeze +EXPORT_SYMBOL_GPL drivers/nvme/host/nvme-core 0x360bdde8 nvme_submit_sync_cmd +EXPORT_SYMBOL_GPL drivers/nvme/host/nvme-core 0x461e25e0 nvme_wait_freeze +EXPORT_SYMBOL_GPL drivers/nvme/host/nvme-core 0x49224181 nvme_reset_wq +EXPORT_SYMBOL_GPL drivers/nvme/host/nvme-core 0x4a805218 nvme_set_queue_count +EXPORT_SYMBOL_GPL drivers/nvme/host/nvme-core 0x4f3223b3 nvme_sync_io_queues +EXPORT_SYMBOL_GPL drivers/nvme/host/nvme-core 0x54085d0d __tracepoint_nvme_sq +EXPORT_SYMBOL_GPL drivers/nvme/host/nvme-core 0x5a8a7143 nvme_stop_queues +EXPORT_SYMBOL_GPL drivers/nvme/host/nvme-core 0x61af2755 nvme_cancel_request +EXPORT_SYMBOL_GPL drivers/nvme/host/nvme-core 0x64b62862 nvme_wq +EXPORT_SYMBOL_GPL drivers/nvme/host/nvme-core 0x6510e63c __nvme_submit_sync_cmd +EXPORT_SYMBOL_GPL drivers/nvme/host/nvme-core 0x65e98169 nvme_alloc_request +EXPORT_SYMBOL_GPL drivers/nvme/host/nvme-core 0x6dbb7e0b nvme_disable_ctrl +EXPORT_SYMBOL_GPL drivers/nvme/host/nvme-core 0x70e31b6f nvme_wait_freeze_timeout +EXPORT_SYMBOL_GPL drivers/nvme/host/nvme-core 0x7d565fa0 nvme_uninit_ctrl +EXPORT_SYMBOL_GPL drivers/nvme/host/nvme-core 0x813cf212 nvme_io_timeout +EXPORT_SYMBOL_GPL drivers/nvme/host/nvme-core 0x913b12f1 nvme_delete_ctrl +EXPORT_SYMBOL_GPL drivers/nvme/host/nvme-core 0x9e160ba8 nvme_complete_async_event +EXPORT_SYMBOL_GPL drivers/nvme/host/nvme-core 0x9e51683b nvme_shutdown_ctrl +EXPORT_SYMBOL_GPL drivers/nvme/host/nvme-core 0x9f7cd828 nvme_enable_ctrl +EXPORT_SYMBOL_GPL drivers/nvme/host/nvme-core 0xac52670a nvme_init_ctrl +EXPORT_SYMBOL_GPL drivers/nvme/host/nvme-core 0xb4e352db nvme_sync_queues +EXPORT_SYMBOL_GPL drivers/nvme/host/nvme-core 0xc020959b nvme_stop_keep_alive +EXPORT_SYMBOL_GPL drivers/nvme/host/nvme-core 0xc1cfd55e nvme_try_sched_reset +EXPORT_SYMBOL_GPL drivers/nvme/host/nvme-core 0xc438fe9e nvme_start_queues +EXPORT_SYMBOL_GPL drivers/nvme/host/nvme-core 0xcaae4160 nvme_reset_ctrl_sync +EXPORT_SYMBOL_GPL drivers/nvme/host/nvme-core 0xd45434ee admin_timeout +EXPORT_SYMBOL_GPL drivers/nvme/host/nvme-core 0xd4d5ffdb nvme_kill_queues +EXPORT_SYMBOL_GPL drivers/nvme/host/nvme-core 0xd58bbbcb nvme_delete_wq +EXPORT_SYMBOL_GPL drivers/nvme/host/nvme-core 0xdbecd06f nvme_stop_ctrl +EXPORT_SYMBOL_GPL drivers/nvme/host/nvme-core 0xe0b1a9e8 nvme_get_features +EXPORT_SYMBOL_GPL drivers/nvme/host/nvme-core 0xe1b39376 nvme_setup_cmd +EXPORT_SYMBOL_GPL drivers/nvme/host/nvme-core 0xe20b763d nvme_init_identify +EXPORT_SYMBOL_GPL drivers/nvme/host/nvme-core 0xe41d3f4d nvme_unfreeze +EXPORT_SYMBOL_GPL drivers/nvme/host/nvme-core 0xe9b57496 nvme_change_ctrl_state +EXPORT_SYMBOL_GPL drivers/nvme/host/nvme-core 0xedb9894c nvme_wait_reset +EXPORT_SYMBOL_GPL drivers/nvme/host/nvme-core 0xf1ddb58c nvme_complete_rq +EXPORT_SYMBOL_GPL drivers/nvme/host/nvme-core 0xf57af83f nvme_remove_namespaces +EXPORT_SYMBOL_GPL drivers/nvme/host/nvme-core 0xf77f6a35 nvme_cleanup_cmd +EXPORT_SYMBOL_GPL drivers/nvme/host/nvme-core 0xf95064af nvme_reset_ctrl +EXPORT_SYMBOL_GPL drivers/nvme/host/nvme-fabrics 0x04d424b3 __nvmf_check_ready +EXPORT_SYMBOL_GPL drivers/nvme/host/nvme-fabrics 0x0cb0055b nvmf_unregister_transport +EXPORT_SYMBOL_GPL drivers/nvme/host/nvme-fabrics 0x26fa311c nvmf_connect_io_queue +EXPORT_SYMBOL_GPL drivers/nvme/host/nvme-fabrics 0x4da94cce nvmf_fail_nonready_command +EXPORT_SYMBOL_GPL drivers/nvme/host/nvme-fabrics 0x54c6d8b0 nvmf_should_reconnect +EXPORT_SYMBOL_GPL drivers/nvme/host/nvme-fabrics 0x659d66d7 nvmf_connect_admin_queue +EXPORT_SYMBOL_GPL drivers/nvme/host/nvme-fabrics 0x67722205 nvmf_reg_read32 +EXPORT_SYMBOL_GPL drivers/nvme/host/nvme-fabrics 0x71e6a977 nvmf_reg_read64 +EXPORT_SYMBOL_GPL drivers/nvme/host/nvme-fabrics 0x7418f73a nvmf_reg_write32 +EXPORT_SYMBOL_GPL drivers/nvme/host/nvme-fabrics 0x9e01bf82 nvmf_get_address +EXPORT_SYMBOL_GPL drivers/nvme/host/nvme-fabrics 0xbc8156e5 nvmf_free_options +EXPORT_SYMBOL_GPL drivers/nvme/host/nvme-fabrics 0xdebbb95f nvmf_register_transport +EXPORT_SYMBOL_GPL drivers/nvme/host/nvme-fabrics 0xeeb111e4 nvmf_ip_options_match +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 0x6a695143 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 0xfca9dc99 nvme_fc_unregister_remoteport +EXPORT_SYMBOL_GPL drivers/nvme/target/nvmet 0x0c5822b2 nvmet_req_free_sgls +EXPORT_SYMBOL_GPL drivers/nvme/target/nvmet 0x327bd42c nvmet_ctrl_fatal_error +EXPORT_SYMBOL_GPL drivers/nvme/target/nvmet 0x44ebc3ab nvmet_req_alloc_sgls +EXPORT_SYMBOL_GPL drivers/nvme/target/nvmet 0x81a5c385 nvmet_sq_init +EXPORT_SYMBOL_GPL drivers/nvme/target/nvmet 0xb3554cc7 nvmet_check_transfer_len +EXPORT_SYMBOL_GPL drivers/nvme/target/nvmet 0xbcbd2845 nvmet_sq_destroy +EXPORT_SYMBOL_GPL drivers/nvme/target/nvmet 0xc7f2cac2 nvmet_unregister_transport +EXPORT_SYMBOL_GPL drivers/nvme/target/nvmet 0xe2594b95 nvmet_req_uninit +EXPORT_SYMBOL_GPL drivers/nvme/target/nvmet 0xece2e3c5 nvmet_req_complete +EXPORT_SYMBOL_GPL drivers/nvme/target/nvmet 0xfaf7e412 nvmet_req_init +EXPORT_SYMBOL_GPL drivers/nvme/target/nvmet 0xfd2b42ac nvmet_register_transport +EXPORT_SYMBOL_GPL drivers/nvme/target/nvmet-fc 0x0b98123d nvmet_fc_rcv_ls_req +EXPORT_SYMBOL_GPL drivers/nvme/target/nvmet-fc 0x1048b92a nvmet_fc_rcv_fcp_req +EXPORT_SYMBOL_GPL drivers/nvme/target/nvmet-fc 0x231e0e06 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 0x7fa5302a nvmet_fc_rcv_fcp_abort +EXPORT_SYMBOL_GPL drivers/nvme/target/nvmet-fc 0x9ef76d99 nvmet_fc_unregister_targetport +EXPORT_SYMBOL_GPL drivers/pci/switch/switchtec 0xa393cc26 switchtec_class +EXPORT_SYMBOL_GPL drivers/s390/block/dasd_mod 0x03a67566 dasd_generic_remove +EXPORT_SYMBOL_GPL drivers/s390/block/dasd_mod 0x082bb4ba dasd_generic_shutdown +EXPORT_SYMBOL_GPL drivers/s390/block/dasd_mod 0x097d9946 dasd_generic_last_path_gone +EXPORT_SYMBOL_GPL drivers/s390/block/dasd_mod 0x19227556 dasd_nopav +EXPORT_SYMBOL_GPL drivers/s390/block/dasd_mod 0x31be6bd8 dasd_generic_space_exhaust +EXPORT_SYMBOL_GPL drivers/s390/block/dasd_mod 0x3f1886cb dasd_generic_handle_state_change +EXPORT_SYMBOL_GPL drivers/s390/block/dasd_mod 0x4941622a dasd_generic_set_online +EXPORT_SYMBOL_GPL drivers/s390/block/dasd_mod 0x5a95fab2 dasd_get_sense +EXPORT_SYMBOL_GPL drivers/s390/block/dasd_mod 0x60339ae6 dasd_generic_probe +EXPORT_SYMBOL_GPL drivers/s390/block/dasd_mod 0x6883428c dasd_generic_notify +EXPORT_SYMBOL_GPL drivers/s390/block/dasd_mod 0x6fd8f372 dasd_alloc_block +EXPORT_SYMBOL_GPL drivers/s390/block/dasd_mod 0x737ca413 dasd_device_remove_stop_bits +EXPORT_SYMBOL_GPL drivers/s390/block/dasd_mod 0x79a9fee9 dasd_generic_path_event +EXPORT_SYMBOL_GPL drivers/s390/block/dasd_mod 0x81d5c2fc dasd_flush_device_queue +EXPORT_SYMBOL_GPL drivers/s390/block/dasd_mod 0x8afe9e18 dasd_generic_space_avail +EXPORT_SYMBOL_GPL drivers/s390/block/dasd_mod 0x8b47da99 dasd_generic_restore_device +EXPORT_SYMBOL_GPL drivers/s390/block/dasd_mod 0x909962f5 dasd_generic_free_discipline +EXPORT_SYMBOL_GPL drivers/s390/block/dasd_mod 0x9c84292a dasd_generic_verify_path +EXPORT_SYMBOL_GPL drivers/s390/block/dasd_mod 0xa4c9323b dasd_generic_uc_handler +EXPORT_SYMBOL_GPL drivers/s390/block/dasd_mod 0xa682f457 dasd_wakeup_cb +EXPORT_SYMBOL_GPL drivers/s390/block/dasd_mod 0xae6bbfe7 dasd_device_is_ro +EXPORT_SYMBOL_GPL drivers/s390/block/dasd_mod 0xb38fe028 dasd_page_cache +EXPORT_SYMBOL_GPL drivers/s390/block/dasd_mod 0xbd3cb790 dasd_biodasdinfo +EXPORT_SYMBOL_GPL drivers/s390/block/dasd_mod 0xd59a1a9f dasd_device_set_stop_bits +EXPORT_SYMBOL_GPL drivers/s390/block/dasd_mod 0xdc1e4a36 dasd_generic_set_offline +EXPORT_SYMBOL_GPL drivers/s390/block/dasd_mod 0xe31b3595 dasd_generic_path_operational +EXPORT_SYMBOL_GPL drivers/s390/block/dasd_mod 0xec3ac990 dasd_generic_read_dev_chars +EXPORT_SYMBOL_GPL drivers/s390/block/dasd_mod 0xed68dfcd dasd_put_device_wake +EXPORT_SYMBOL_GPL drivers/s390/block/dasd_mod 0xf15784f5 dasd_nofcx +EXPORT_SYMBOL_GPL drivers/s390/block/dasd_mod 0xf4b0e8b2 dasd_generic_pm_freeze +EXPORT_SYMBOL_GPL drivers/s390/block/dasd_mod 0xf80301b7 dasd_free_block +EXPORT_SYMBOL_GPL drivers/s390/cio/ccwgroup 0x635ddf9e get_ccwgroupdev_by_busid +EXPORT_SYMBOL_GPL drivers/s390/cio/eadm_sch 0x85d9d140 eadm_start_aob +EXPORT_SYMBOL_GPL drivers/s390/cio/qdio 0x23c0e637 qdio_alloc_buffers +EXPORT_SYMBOL_GPL drivers/s390/cio/qdio 0x27488bbc qdio_reset_buffers +EXPORT_SYMBOL_GPL drivers/s390/cio/qdio 0x3b7f2874 qdio_establish +EXPORT_SYMBOL_GPL drivers/s390/cio/qdio 0x3ca458b3 qdio_allocate +EXPORT_SYMBOL_GPL drivers/s390/cio/qdio 0x3fe45770 qdio_shutdown +EXPORT_SYMBOL_GPL drivers/s390/cio/qdio 0x40809794 qdio_release_aob +EXPORT_SYMBOL_GPL drivers/s390/cio/qdio 0x854b27cc qdio_get_ssqd_desc +EXPORT_SYMBOL_GPL drivers/s390/cio/qdio 0x944a07cb qdio_activate +EXPORT_SYMBOL_GPL drivers/s390/cio/qdio 0xa04bb255 qdio_free_buffers +EXPORT_SYMBOL_GPL drivers/s390/cio/qdio 0xa158b0af do_QDIO +EXPORT_SYMBOL_GPL drivers/s390/cio/qdio 0xd55ffb57 qdio_free +EXPORT_SYMBOL_GPL drivers/s390/cio/qdio 0xd762fef9 qdio_inspect_queue +EXPORT_SYMBOL_GPL drivers/s390/net/qeth 0x113bdaa1 qeth_set_allowed_threads +EXPORT_SYMBOL_GPL drivers/s390/net/qeth 0x1be437a7 qeth_iqd_select_queue +EXPORT_SYMBOL_GPL drivers/s390/net/qeth 0x200205c5 qeth_set_offline +EXPORT_SYMBOL_GPL drivers/s390/net/qeth 0x20fe6043 qeth_enable_hw_features +EXPORT_SYMBOL_GPL drivers/s390/net/qeth 0x23fda318 qeth_generic_devtype +EXPORT_SYMBOL_GPL drivers/s390/net/qeth 0x24db10c0 qeth_setadp_promisc_mode +EXPORT_SYMBOL_GPL drivers/s390/net/qeth 0x2cd9e4cc qeth_core_header_cache +EXPORT_SYMBOL_GPL drivers/s390/net/qeth 0x2f38952f qeth_count_elements +EXPORT_SYMBOL_GPL drivers/s390/net/qeth 0x30804871 qeth_fix_features +EXPORT_SYMBOL_GPL drivers/s390/net/qeth 0x37b24e28 qeth_dbf +EXPORT_SYMBOL_GPL drivers/s390/net/qeth 0x3ac764e4 qeth_prepare_ipa_cmd +EXPORT_SYMBOL_GPL drivers/s390/net/qeth 0x46993451 qeth_put_cmd +EXPORT_SYMBOL_GPL drivers/s390/net/qeth 0x4c038c95 qeth_device_attr_group +EXPORT_SYMBOL_GPL drivers/s390/net/qeth 0x534d94d7 qeth_drain_output_queues +EXPORT_SYMBOL_GPL drivers/s390/net/qeth 0x548eafaf qeth_device_blkt_group +EXPORT_SYMBOL_GPL drivers/s390/net/qeth 0x61503219 qeth_trace_features +EXPORT_SYMBOL_GPL drivers/s390/net/qeth 0x66eb28d1 qeth_clear_ipacmd_list +EXPORT_SYMBOL_GPL drivers/s390/net/qeth 0x67416f4a qeth_get_stats64 +EXPORT_SYMBOL_GPL drivers/s390/net/qeth 0x6db6d5cf qeth_get_priority_queue +EXPORT_SYMBOL_GPL drivers/s390/net/qeth 0x6ddd1141 qeth_open +EXPORT_SYMBOL_GPL drivers/s390/net/qeth 0x70978059 qeth_send_simple_setassparms_prot +EXPORT_SYMBOL_GPL drivers/s390/net/qeth 0x7139fb16 qeth_features_check +EXPORT_SYMBOL_GPL drivers/s390/net/qeth 0x73ebd198 qeth_set_features +EXPORT_SYMBOL_GPL drivers/s390/net/qeth 0x74c30f69 qeth_poll +EXPORT_SYMBOL_GPL drivers/s390/net/qeth 0x7f80a850 qeth_flush_local_addrs +EXPORT_SYMBOL_GPL drivers/s390/net/qeth 0x86de3b84 qeth_vm_request_mac +EXPORT_SYMBOL_GPL drivers/s390/net/qeth 0x8ccb324f qeth_threads_running +EXPORT_SYMBOL_GPL drivers/s390/net/qeth 0x90abfb1a qeth_do_send_packet +EXPORT_SYMBOL_GPL drivers/s390/net/qeth 0x9684b0dc qeth_print_status_message +EXPORT_SYMBOL_GPL drivers/s390/net/qeth 0x99522713 qeth_setadpparms_change_macaddr +EXPORT_SYMBOL_GPL drivers/s390/net/qeth 0xa05a71e1 qeth_alloc_cmd +EXPORT_SYMBOL_GPL drivers/s390/net/qeth 0xa269d2ed qeth_qdio_clear_card +EXPORT_SYMBOL_GPL drivers/s390/net/qeth 0xa6762470 qeth_core_hardsetup_card +EXPORT_SYMBOL_GPL drivers/s390/net/qeth 0xb1e0e9be qeth_do_ioctl +EXPORT_SYMBOL_GPL drivers/s390/net/qeth 0xb511c462 qeth_send_ipa_cmd +EXPORT_SYMBOL_GPL drivers/s390/net/qeth 0xb8d0b8e0 qeth_notify_cmd +EXPORT_SYMBOL_GPL drivers/s390/net/qeth 0xb9ab2ccf qeth_stop_channel +EXPORT_SYMBOL_GPL drivers/s390/net/qeth 0xbd4e1f8c qeth_stop +EXPORT_SYMBOL_GPL drivers/s390/net/qeth 0xbf413504 qeth_dbf_longtext +EXPORT_SYMBOL_GPL drivers/s390/net/qeth 0xc25d6e2b qeth_setassparms_cb +EXPORT_SYMBOL_GPL drivers/s390/net/qeth 0xc631bde4 qeth_resize_buffer_pool +EXPORT_SYMBOL_GPL drivers/s390/net/qeth 0xca524325 qeth_tx_timeout +EXPORT_SYMBOL_GPL drivers/s390/net/qeth 0xd1bab615 qeth_setup_netdev +EXPORT_SYMBOL_GPL drivers/s390/net/qeth 0xd5f58eb0 qeth_configure_cq +EXPORT_SYMBOL_GPL drivers/s390/net/qeth 0xdab3550e qeth_clear_working_pool_list +EXPORT_SYMBOL_GPL drivers/s390/net/qeth 0xe2960000 qeth_get_diag_cmd +EXPORT_SYMBOL_GPL drivers/s390/net/qeth 0xeb0e1241 qeth_get_setassparms_cmd +EXPORT_SYMBOL_GPL drivers/s390/net/qeth 0xed621500 qeth_get_card_by_busid +EXPORT_SYMBOL_GPL drivers/s390/net/qeth 0xf2e28332 qeth_xmit +EXPORT_SYMBOL_GPL drivers/s390/net/qeth 0xf7b82dbb qeth_ipa_alloc_cmd +EXPORT_SYMBOL_GPL drivers/s390/net/qeth_l2 0x950e8b11 qeth_l2_discipline +EXPORT_SYMBOL_GPL drivers/s390/net/qeth_l3 0x5d3b05de qeth_l3_discipline +EXPORT_SYMBOL_GPL drivers/scsi/fcoe/libfcoe 0x15ccc7a5 fcoe_get_wwn +EXPORT_SYMBOL_GPL drivers/scsi/fcoe/libfcoe 0x25efbcf7 __fcoe_get_lesb +EXPORT_SYMBOL_GPL drivers/scsi/fcoe/libfcoe 0x4332d9d1 fcoe_check_wait_queue +EXPORT_SYMBOL_GPL drivers/scsi/fcoe/libfcoe 0x4ceebbe3 fcoe_link_speed_update +EXPORT_SYMBOL_GPL drivers/scsi/fcoe/libfcoe 0x5020ec31 fcoe_get_paged_crc_eof +EXPORT_SYMBOL_GPL drivers/scsi/fcoe/libfcoe 0x515f259b fcoe_start_io +EXPORT_SYMBOL_GPL drivers/scsi/fcoe/libfcoe 0x59f1f93e fcoe_ctlr_device_delete +EXPORT_SYMBOL_GPL drivers/scsi/fcoe/libfcoe 0x5a5f3b80 fcoe_fc_crc +EXPORT_SYMBOL_GPL drivers/scsi/fcoe/libfcoe 0x5ea1ed9b fcoe_validate_vport_create +EXPORT_SYMBOL_GPL drivers/scsi/fcoe/libfcoe 0x7e816589 fcoe_clean_pending_queue +EXPORT_SYMBOL_GPL drivers/scsi/fcoe/libfcoe 0x809f810c fcoe_libfc_config +EXPORT_SYMBOL_GPL drivers/scsi/fcoe/libfcoe 0x8ca62b4a fcoe_get_lesb +EXPORT_SYMBOL_GPL drivers/scsi/fcoe/libfcoe 0x920c6a5a fcoe_ctlr_get_lesb +EXPORT_SYMBOL_GPL drivers/scsi/fcoe/libfcoe 0x932a09b7 fcoe_fcf_device_delete +EXPORT_SYMBOL_GPL drivers/scsi/fcoe/libfcoe 0xb2f499c1 fcoe_ctlr_device_add +EXPORT_SYMBOL_GPL drivers/scsi/fcoe/libfcoe 0xbac58840 fcoe_queue_timer +EXPORT_SYMBOL_GPL drivers/scsi/fcoe/libfcoe 0xdd944534 fcoe_wwn_from_mac +EXPORT_SYMBOL_GPL drivers/scsi/fcoe/libfcoe 0xf167cb7a fcoe_wwn_to_str +EXPORT_SYMBOL_GPL drivers/scsi/fcoe/libfcoe 0xff6d33c9 fcoe_fcf_device_add +EXPORT_SYMBOL_GPL drivers/scsi/iscsi_boot_sysfs 0x05f64f5b iscsi_boot_create_host_kset +EXPORT_SYMBOL_GPL drivers/scsi/iscsi_boot_sysfs 0x1181b2a9 iscsi_boot_create_initiator +EXPORT_SYMBOL_GPL drivers/scsi/iscsi_boot_sysfs 0x14be77f8 iscsi_boot_create_target +EXPORT_SYMBOL_GPL drivers/scsi/iscsi_boot_sysfs 0x22814ca5 iscsi_boot_create_acpitbl +EXPORT_SYMBOL_GPL drivers/scsi/iscsi_boot_sysfs 0xab92cc66 iscsi_boot_create_ethernet +EXPORT_SYMBOL_GPL drivers/scsi/iscsi_boot_sysfs 0xbd764a54 iscsi_boot_create_kset +EXPORT_SYMBOL_GPL drivers/scsi/iscsi_boot_sysfs 0xef607b76 iscsi_boot_destroy_kset +EXPORT_SYMBOL_GPL drivers/scsi/libfc/libfc 0x48561353 fc_seq_els_rsp_send +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x00558108 iscsi_target_alloc +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x05cfe016 iscsi_update_cmdsn +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x07fbc1d8 iscsi_session_recovery_timedout +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x0d191970 iscsi_eh_session_reset +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x0e995b2a iscsi_put_task +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x0f46324e __iscsi_get_task +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x12b2ad06 iscsi_switch_str_param +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x190d7fc0 iscsi_host_set_param +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x20c41e18 iscsi_prep_data_out_pdu +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x214df46e iscsi_conn_teardown +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x242b1ea5 iscsi_session_teardown +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x2710c340 iscsi_conn_send_pdu +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x28101da8 iscsi_session_failure +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x3bef2f73 iscsi_pool_init +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x3cf6a088 iscsi_complete_pdu +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x3d99f88e iscsi_eh_abort +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x3f433619 iscsi_itt_to_ctask +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x42112138 iscsi_verify_itt +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x4bd11a9e iscsi_session_setup +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x4fb2f080 iscsi_requeue_task +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x512b8a18 iscsi_itt_to_task +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x54bc763b iscsi_queuecommand +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x56b02726 iscsi_conn_queue_work +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x6df4fd81 iscsi_conn_start +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x757b3232 iscsi_conn_failure +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x7830db3b __iscsi_put_task +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x7e49d31e iscsi_eh_recover_target +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x8745fc0d iscsi_conn_get_param +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x8c2890df iscsi_host_free +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x8d303b1b iscsi_pool_free +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0xa00cfe9c iscsi_session_get_param +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0xa5abe1c4 iscsi_host_remove +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0xa6102eb9 iscsi_host_add +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0xbf4f3f14 iscsi_set_param +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0xc01da125 iscsi_host_alloc +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0xc17f5008 __iscsi_complete_pdu +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0xcc7226ff iscsi_eh_cmd_timed_out +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0xd19ab47c iscsi_host_get_param +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0xd727133e iscsi_conn_setup +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0xdf36ea05 iscsi_suspend_queue +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0xe9eccb5c iscsi_conn_bind +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0xeab9cbd5 iscsi_conn_get_addr_param +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0xefcd03f5 iscsi_eh_device_reset +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0xf11259e9 iscsi_complete_scsi_task +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0xf4641aa1 iscsi_conn_stop +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0xfa2a1b32 iscsi_suspend_tx +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi_tcp 0x081b9fe1 iscsi_tcp_segment_unmap +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi_tcp 0x1cdc1c8a iscsi_tcp_cleanup_task +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi_tcp 0x39814554 iscsi_tcp_r2tpool_free +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi_tcp 0x42cf8b11 iscsi_tcp_hdr_recv_prep +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi_tcp 0x45927695 iscsi_tcp_conn_setup +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi_tcp 0x4e3010eb iscsi_segment_init_linear +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi_tcp 0x5ba866e4 iscsi_tcp_task_xmit +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi_tcp 0x5d7c9556 iscsi_segment_seek_sg +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi_tcp 0x6e0f3191 iscsi_tcp_dgst_header +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi_tcp 0x6fcf9a66 iscsi_tcp_conn_get_stats +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi_tcp 0x8d8673b0 iscsi_tcp_r2tpool_alloc +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi_tcp 0x8f0b7297 iscsi_tcp_task_init +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi_tcp 0x93d39541 iscsi_tcp_recv_segment_is_hdr +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi_tcp 0xae491548 iscsi_tcp_conn_teardown +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi_tcp 0xdcff8f37 iscsi_tcp_recv_skb +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi_tcp 0xf8d4ab3a iscsi_tcp_set_max_r2t +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi_tcp 0xfdb12a9a iscsi_tcp_segment_done +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0x17027d45 sas_bios_param +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0x1df52189 sas_target_alloc +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0x26f2a7ab sas_slave_configure +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0x292caa70 sas_ssp_task_response +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0x3c765191 sas_ioctl +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0x4a98a85f sas_register_ha +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0x593e8a1c sas_domain_attach_transport +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0x6795fcd9 sas_get_local_phy +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0x6be18c56 sas_alloc_slow_task +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0x80fa1a21 sas_unregister_ha +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0x8f528b7a sas_change_queue_depth +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0xb38014ba sas_target_destroy +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0xb99f7efa sas_eh_target_reset_handler +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0xbcd5308f sas_free_task +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0xbf4e8432 sas_alloc_task +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0xc9442efb sas_eh_abort_handler +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0xcf23aa8b sas_request_addr +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0xd212f1f2 sas_task_abort +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0xf23d6bf7 sas_queuecommand +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0xf26d783f dev_attr_phy_event_threshold +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0xf2e46b83 sas_phy_reset +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0xf33297a8 sas_eh_device_reset_handler +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0xfe6c164a sas_drain_work +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x02547a31 iscsi_find_flashnode_sess +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x039aa90d iscsi_conn_error_event +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x0479372d iscsi_create_session +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x06f9f148 iscsi_create_conn +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x08183fc8 iscsi_get_port_state_name +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x088814d1 iscsi_destroy_conn +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x0be23c41 iscsi_conn_login_event +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x148ae70e iscsi_recv_pdu +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x167dcd59 iscsi_post_host_event +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x1ab5619c iscsi_create_endpoint +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x2014c17a iscsi_unregister_transport +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x2647daa5 iscsi_create_flashnode_sess +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x2e013dac iscsi_remove_session +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x30c488c2 iscsi_alloc_session +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x3133dc5c __tracepoint_iscsi_dbg_session +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x3696ea8c iscsi_host_for_each_session +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x3bcbe445 iscsi_block_scsi_eh +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x3c779a58 iscsi_unblock_session +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x3f1ad3aa iscsi_dbg_trace +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x450559d6 iscsi_find_flashnode_conn +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x45ee1b8b iscsi_scan_finished +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x47867762 __tracepoint_iscsi_dbg_tcp +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x54e6db1c iscsi_is_session_dev +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x5a79c8eb iscsi_destroy_endpoint +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x675cb315 iscsi_is_session_online +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x699fe53e iscsi_get_discovery_parent_name +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x6a20d5ed iscsi_add_session +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x6c47daf7 iscsi_flashnode_bus_match +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x6cfbf6e6 iscsi_block_session +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x6eb4788f iscsi_session_event +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x7f088a38 iscsi_offload_mesg +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x7f883ac4 iscsi_ping_comp_event +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x80e50dfb iscsi_get_port_speed_name +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x84a005f1 iscsi_get_router_state_name +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x9aad90d2 iscsi_lookup_endpoint +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0xaac3519d __tracepoint_iscsi_dbg_conn +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0xaea92c90 __tracepoint_iscsi_dbg_eh +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0xb1462a2d iscsi_create_flashnode_conn +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0xb3ec07c3 iscsi_destroy_all_flashnode +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0xb4bcff86 iscsi_destroy_iface +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0xb80f5c0f iscsi_destroy_flashnode_sess +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0xbc071179 iscsi_get_ipaddress_state_name +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0xd4697d5b __tracepoint_iscsi_dbg_sw_tcp +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0xdf7700d5 iscsi_register_transport +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0xf114c5d2 iscsi_create_iface +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0xf3968170 iscsi_free_session +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0xf8505bac iscsi_session_chkready +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_sas 0xa262e5ca sas_tlr_supported +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_sas 0xafdd28fe sas_disable_tlr +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_sas 0xf25287e5 sas_is_tlr_enabled +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_sas 0xfa9dd20e sas_enable_tlr +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_spi 0x0ef06974 spi_populate_ppr_msg +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_spi 0x9e1fa4d1 spi_populate_tag_msg +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_spi 0xa0c71dac spi_populate_sync_msg +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_spi 0xcffa2aff spi_populate_width_msg +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_srp 0x0d009cac srp_stop_rport_timers +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_srp 0x1902178a srp_tmo_valid +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_srp 0x1a0317af srp_attach_transport +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_srp 0x45684d65 srp_release_transport +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_srp 0x52d6ea27 srp_rport_del +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_srp 0x965719d7 srp_remove_host +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_srp 0xa2ae0705 srp_rport_add +EXPORT_SYMBOL_GPL drivers/siox/siox-core 0x46eb4314 siox_master_unregister +EXPORT_SYMBOL_GPL drivers/siox/siox-core 0x61d24bbf __siox_driver_register +EXPORT_SYMBOL_GPL drivers/siox/siox-core 0x64080edb siox_device_synced +EXPORT_SYMBOL_GPL drivers/siox/siox-core 0x6e6e6fc0 siox_device_connected +EXPORT_SYMBOL_GPL drivers/siox/siox-core 0x82e39280 siox_master_register +EXPORT_SYMBOL_GPL drivers/siox/siox-core 0xe681ad04 siox_master_alloc +EXPORT_SYMBOL_GPL drivers/slimbus/slimbus 0x00cefb58 slim_get_device +EXPORT_SYMBOL_GPL drivers/slimbus/slimbus 0x0b6bd2b1 slim_register_controller +EXPORT_SYMBOL_GPL drivers/slimbus/slimbus 0x313dfc55 slim_read +EXPORT_SYMBOL_GPL drivers/slimbus/slimbus 0x3a3ac1d5 slim_stream_prepare +EXPORT_SYMBOL_GPL drivers/slimbus/slimbus 0x3a432b29 slim_get_logical_addr +EXPORT_SYMBOL_GPL drivers/slimbus/slimbus 0x3e99e9ce slimbus_bus +EXPORT_SYMBOL_GPL drivers/slimbus/slimbus 0x425d7f5b slim_msg_response +EXPORT_SYMBOL_GPL drivers/slimbus/slimbus 0x52a6c4d7 slim_xfer_msg +EXPORT_SYMBOL_GPL drivers/slimbus/slimbus 0x534f3570 of_slim_get_device +EXPORT_SYMBOL_GPL drivers/slimbus/slimbus 0x80805b91 slim_free_txn_tid +EXPORT_SYMBOL_GPL drivers/slimbus/slimbus 0x888c205c slim_unregister_controller +EXPORT_SYMBOL_GPL drivers/slimbus/slimbus 0xace1cdc1 slim_report_absent +EXPORT_SYMBOL_GPL drivers/slimbus/slimbus 0xae8bf0f5 slim_device_report_present +EXPORT_SYMBOL_GPL drivers/slimbus/slimbus 0xafaa7686 __slim_driver_register +EXPORT_SYMBOL_GPL drivers/slimbus/slimbus 0xb0afb5f4 slim_write +EXPORT_SYMBOL_GPL drivers/slimbus/slimbus 0xbe56d4ec slim_stream_free +EXPORT_SYMBOL_GPL drivers/slimbus/slimbus 0xc2db0db6 slim_ctrl_clk_pause +EXPORT_SYMBOL_GPL drivers/slimbus/slimbus 0xcecb62fa slim_stream_enable +EXPORT_SYMBOL_GPL drivers/slimbus/slimbus 0xd19018d7 slim_readb +EXPORT_SYMBOL_GPL drivers/slimbus/slimbus 0xd4a768ea slim_do_transfer +EXPORT_SYMBOL_GPL drivers/slimbus/slimbus 0xe5b35b3d slim_stream_unprepare +EXPORT_SYMBOL_GPL drivers/slimbus/slimbus 0xeff1cb3c slim_alloc_txn_tid +EXPORT_SYMBOL_GPL drivers/slimbus/slimbus 0xf035d88b slim_stream_allocate +EXPORT_SYMBOL_GPL drivers/slimbus/slimbus 0xf993327c slim_stream_disable +EXPORT_SYMBOL_GPL drivers/slimbus/slimbus 0xf9efa8c6 slim_writeb +EXPORT_SYMBOL_GPL drivers/slimbus/slimbus 0xffc3e47a slim_driver_unregister +EXPORT_SYMBOL_GPL drivers/tty/serial/serial_core 0x2e82fd26 uart_get_rs485_mode +EXPORT_SYMBOL_GPL drivers/tty/serial/serial_core 0x4e173df9 uart_handle_dcd_change +EXPORT_SYMBOL_GPL drivers/tty/serial/serial_core 0x7ec90f3f uart_handle_cts_change +EXPORT_SYMBOL_GPL drivers/tty/serial/serial_core 0x9096de24 uart_try_toggle_sysrq +EXPORT_SYMBOL_GPL drivers/tty/serial/serial_core 0xc836eb53 uart_insert_char +EXPORT_SYMBOL_GPL drivers/tty/serial/serial_core 0xea55b927 uart_console_device +EXPORT_SYMBOL_GPL drivers/uio/uio 0x0d4ef01e __uio_register_device +EXPORT_SYMBOL_GPL drivers/uio/uio 0x19f335ae uio_event_notify +EXPORT_SYMBOL_GPL drivers/uio/uio 0x584251f1 __devm_uio_register_device +EXPORT_SYMBOL_GPL drivers/uio/uio 0xb3b3be2d uio_unregister_device +EXPORT_SYMBOL_GPL drivers/vfio/mdev/mdev 0xd000d5d4 mdev_bus_type +EXPORT_SYMBOL_GPL drivers/vfio/vfio 0x1700d3f3 vfio_register_iommu_driver +EXPORT_SYMBOL_GPL drivers/vfio/vfio 0x32e3ce5d vfio_device_get_from_dev +EXPORT_SYMBOL_GPL drivers/vfio/vfio 0x342c0d8f vfio_add_group_dev +EXPORT_SYMBOL_GPL drivers/vfio/vfio 0x3567743b vfio_external_user_iommu_id +EXPORT_SYMBOL_GPL drivers/vfio/vfio 0x490f49cc vfio_group_get_external_user_from_dev +EXPORT_SYMBOL_GPL drivers/vfio/vfio 0x529db99e vfio_info_cap_add +EXPORT_SYMBOL_GPL drivers/vfio/vfio 0x5b35c4f9 vfio_group_set_kvm +EXPORT_SYMBOL_GPL drivers/vfio/vfio 0x95258207 vfio_device_data +EXPORT_SYMBOL_GPL drivers/vfio/vfio 0x969c73d9 vfio_device_put +EXPORT_SYMBOL_GPL drivers/vfio/vfio 0xa5f3dfcd vfio_unregister_iommu_driver +EXPORT_SYMBOL_GPL drivers/vfio/vfio 0xc1d989c5 vfio_external_check_extension +EXPORT_SYMBOL_GPL drivers/vfio/vfio 0xc4913442 vfio_group_put_external_user +EXPORT_SYMBOL_GPL drivers/vfio/vfio 0xc7bd1224 vfio_group_get_external_user +EXPORT_SYMBOL_GPL drivers/vfio/vfio 0xe59efb23 vfio_del_group_dev +EXPORT_SYMBOL_GPL drivers/vfio/vfio 0xf2130803 vfio_iommu_group_put +EXPORT_SYMBOL_GPL drivers/vfio/vfio 0xf532bf5d vfio_external_group_match_file +EXPORT_SYMBOL_GPL drivers/vfio/vfio 0xff012e9d vfio_iommu_group_get +EXPORT_SYMBOL_GPL drivers/vfio/vfio_virqfd 0x282d9fb7 vfio_virqfd_enable +EXPORT_SYMBOL_GPL drivers/vfio/vfio_virqfd 0xbef2573c vfio_virqfd_disable +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x020516e6 vhost_work_queue +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x0bfb645a vhost_disable_notify +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x17f1ef32 vhost_dequeue_msg +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x1f9c3ec7 vhost_poll_start +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x228505e1 vhost_add_used_n +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x24eb9c84 vq_meta_prefetch +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x26bda790 vhost_log_access_ok +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x26e86bef vhost_dev_set_owner +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x31876435 vhost_dev_init +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x338ab4fa vhost_add_used +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x3599fa9f vhost_new_msg +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x3afab4ce vhost_vq_is_setup +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x3d70dcf1 vhost_exceeds_weight +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x442b3d9f vhost_poll_flush +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x54bb89fa vhost_has_work +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x622d8e60 vhost_chr_read_iter +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x673b01e4 vhost_add_used_and_signal +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x6e406090 vhost_enqueue_msg +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x79a79cf2 vhost_vring_ioctl +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x7d923f00 vhost_enable_notify +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x87265c26 vhost_dev_stop +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x8886454c vhost_signal +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x8ce3dd45 vhost_dev_cleanup +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x8e494b94 vhost_discard_vq_desc +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x8f3d5c13 vhost_get_vq_desc +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x8fed13ce vhost_vq_avail_empty +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x9110e92f vhost_init_device_iotlb +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x93c81c53 vhost_work_flush +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0xa0d0923b vhost_poll_stop +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0xa909cfc5 vhost_work_init +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0xad5cbdfe vhost_add_used_and_signal_n +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0xbba7593d vhost_dev_reset_owner +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0xc0a4ead3 vhost_log_write +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0xc39ef84f vhost_vq_access_ok +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0xc64c789e vhost_poll_init +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0xd20309d5 vhost_dev_check_owner +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0xd9847026 vhost_vq_init_access +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0xdbc4fc87 vhost_poll_queue +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0xeb7df074 vhost_dev_has_owner +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0xf994d8d5 vhost_dev_ioctl +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 0x514d0e6a vhost_iotlb_itree_first +EXPORT_SYMBOL_GPL drivers/vhost/vhost_iotlb 0x5f4e5249 vhost_iotlb_reset +EXPORT_SYMBOL_GPL drivers/vhost/vhost_iotlb 0x6bec0e66 vhost_iotlb_del_range +EXPORT_SYMBOL_GPL drivers/vhost/vhost_iotlb 0x7579334f vhost_iotlb_itree_next +EXPORT_SYMBOL_GPL drivers/vhost/vhost_iotlb 0xa24517eb vhost_iotlb_free +EXPORT_SYMBOL_GPL drivers/vhost/vhost_iotlb 0xad111707 vhost_iotlb_map_free +EXPORT_SYMBOL_GPL drivers/vhost/vhost_iotlb 0xc577832d vhost_iotlb_alloc +EXPORT_SYMBOL_GPL drivers/video/fbdev/core/fb_sys_fops 0x5f99818e fb_sys_write +EXPORT_SYMBOL_GPL drivers/video/fbdev/core/fb_sys_fops 0x60b1afa7 fb_sys_read +EXPORT_SYMBOL_GPL fs/dlm/dlm 0x4a32ade5 dlm_posix_unlock +EXPORT_SYMBOL_GPL fs/dlm/dlm 0x4b62826c dlm_unlock +EXPORT_SYMBOL_GPL fs/dlm/dlm 0x647d6170 dlm_lock +EXPORT_SYMBOL_GPL fs/dlm/dlm 0x89cd9c64 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/dlm/dlm 0xf34a16f0 dlm_posix_get +EXPORT_SYMBOL_GPL fs/fscache/fscache 0x092cf98e fscache_object_sleep_till_congested +EXPORT_SYMBOL_GPL fs/lockd/lockd 0x0b82a8fa lockd_up +EXPORT_SYMBOL_GPL fs/lockd/lockd 0x352a6c5b lockd_down +EXPORT_SYMBOL_GPL fs/lockd/lockd 0x4a260a85 nlmclnt_proc +EXPORT_SYMBOL_GPL fs/lockd/lockd 0x77e35ccc nlmsvc_unlock_all_by_ip +EXPORT_SYMBOL_GPL fs/lockd/lockd 0x94d2ae5a nlmsvc_ops +EXPORT_SYMBOL_GPL fs/lockd/lockd 0xa48045cb nlmclnt_init +EXPORT_SYMBOL_GPL fs/lockd/lockd 0xadeee009 nlmclnt_done +EXPORT_SYMBOL_GPL fs/lockd/lockd 0xfb0f10a3 nlmsvc_unlock_all_by_sb +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x01f6a6b2 nfs_init_client +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x0294c6a2 nfs_callback_nr_threads +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x0a4b5ee8 nfs_instantiate +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x0a88fdcd nfs4_label_alloc +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x0ba03828 nfs_sops +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x0d86a3cf nfs_symlink +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x0e0f3fa0 nfs_post_op_update_inode +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x101a6052 nfs_create_rpc_client +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x10962bc2 nfs_auth_info_match +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x191688ae nfs_setattr +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x1c4a377a nfs_dreq_bytes_left +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x209fa247 nfs_release_request +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x22d795a8 _nfs_display_fhandle_hash +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x24d2fd9e nfs_getattr +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x25a65356 nfs_rmdir +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x26884ff7 nfs_alloc_fhandle +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x271bfeae register_nfs_version +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x27258c18 nfs_commitdata_alloc +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x2779a4bc nfs_generic_pg_test +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x2882d085 nfs_wait_on_request +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x290ccc63 nfs_set_verifier +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x2c2b96fa put_nfs_open_context +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x2c967ddb nfs_server_remove_lists +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x2d3571da nfs_file_release +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x2da296a5 nfs_pgheader_init +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x2e95525d nfs_wb_all +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x306afe15 nfs_request_add_commit_list +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x319c98d0 alloc_nfs_open_context +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x36c5660a nfs_commit_inode +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x37e3dc5b nfs_init_commit +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x37e8291e nfs_close_context +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x3801ebde nfs_fs_type +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x39e05ac3 nfs_idmap_cache_timeout +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x3a43492a nfs_zap_acl_cache +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x3a9bd1d4 nfs_refresh_inode +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x3bedc730 nfs_pageio_resend +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x3df208a3 nfs_post_op_update_inode_force_wcc +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x3f2690f2 nfs_check_flags +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x40739385 nfs_wait_bit_killable +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x424a61ec nfs_initiate_commit +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x4257b953 nfs_write_inode +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x42da3a29 nfs_init_cinfo +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x42f2c81f nfs4_client_id_uniquifier +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x439869c8 nfs_permission +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x4441b1aa nfs_unlink +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x4830cc18 nfs_submount +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x4a57b7e8 nfs_fscache_open_file +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x4b584473 nfs_setsecurity +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x4cb4fa68 nfs_sb_active +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x4cb9e001 recover_lost_locks +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x4d1c1df7 nfs_free_inode +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x4eb3d47c nfs_pageio_init_write +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x5123e3d2 nfs_file_read +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x51892d61 nfs_callback_set_tcpport +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x53ea50cf nfs_client_init_is_complete +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x53fe8616 nfs_init_server_rpcclient +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x5419d81b nfs_request_add_commit_list_locked +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x554fc862 nfs_link +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x5843d4eb nfs_put_client +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x584b8482 nfs_inc_attr_generation_counter +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x5bac9477 nfs_revalidate_inode +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x5bd8ec6d nfs_flock +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x5c3f3902 nfs_commit_free +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x5d94db4b nfs_show_options +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x5dd760df nfs_setattr_update_inode +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x5f9b2e01 nfs_free_server +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x60fc70c1 nfs4_fs_type +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x67092cf6 nfs_mknod +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x6899eb45 nfs_show_stats +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x68ae839e nfs_wait_client_init_complete +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x6a993575 nfs_mark_client_ready +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x6e600c9a nfs_pageio_reset_write_mds +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x7249b958 nfs_access_set_mask +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x75534631 nfs_filemap_write_and_wait_range +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x763e6ff2 nfs_client_init_status +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x765f9a7f nfs_access_zap_cache +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x77df89a9 nfs_alloc_server +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x787decf9 nfs_scan_commit_list +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x79330a18 nfs_fhget +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x7d8d202b nfs_try_get_tree +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x7e3c428a nfs_drop_inode +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x7f570537 nfs_server_copy_userdata +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x819c4ec6 nfs_add_or_obtain +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x82042c9a nfs_retry_commit +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x832e8f0b nfs_alloc_fattr +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x86faf467 nfs_get_lock_context +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x8a33f3aa nfs_kill_super +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x8ba2544d nfs_statfs +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x8bf46e2d nfs_show_path +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x90a5530f nfsiod_workqueue +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x90fd6575 nfs_open +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x91d1fe52 max_session_slots +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x91e4ca48 nfs_atomic_open +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x931d405e nfs_get_client +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x93e242d6 nfs_commitdata_release +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x93e54a2d nfs_reconfigure +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x9836776b nfs_mkdir +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x98b0ece8 nfs_init_timeout_values +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x9b65dba3 nfs_inode_attach_open_context +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x9ca87dad nfs_clear_verifier_delegated +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xa05ca625 nfs_fattr_init +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xa353d212 nfs_sync_inode +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xa3a62baf nfs_alloc_client +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xa4b047e9 nfs_lock +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xa549c297 nfs4_dentry_operations +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xa5984a68 nfs_path +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xa8abcded __tracepoint_nfs_xdr_status +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xa8e9e1ae send_implementation_id +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xaa4f88a3 nfs_create_server +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xaafd4acc max_session_cb_slots +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xadcf3a80 nfs_do_submount +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xaf4f2c2e get_nfs_open_context +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xb5f5c91f __tracepoint_nfs_fsync_exit +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xb82ce98d nfs_invalidate_atime +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xb97ed412 nfs_client_for_each_server +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xba73ebe3 nfs_server_insert_lists +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xbb324385 unregister_nfs_version +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xbc6b2c88 __tracepoint_nfs_fsync_enter +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xbd844409 nfs_writeback_update_inode +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xc03f295c nfs_file_llseek +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xc3a2be67 nfs_net_id +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xc5f919c5 nfs_rename +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xc63638f9 nfs_pgio_header_free +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xc8146e6e nfs_file_operations +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xc919b5f8 nfs_sb_deactive +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xc9d22144 nfs_pageio_reset_read_mds +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xca2163ab nfs_request_remove_commit_list +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xcc95f41c nfs_create +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xcf5f2359 nfs_dentry_operations +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xd1c584c7 nfs_file_set_open_context +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xd725bf30 nfs_clone_server +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xd86c3715 nfs_generic_pgio +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xd8ea8b99 nfs_clear_inode +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xdae9b5d7 nfs4_disable_idmapping +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xdb98a8e4 nfs_initiate_pgio +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xdef79212 nfs_async_iocounter_wait +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xdfb899e9 nfs_alloc_inode +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xdfc4ba61 nfs_show_devname +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xe88d2be6 nfs_umount_begin +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xeabb4863 nfs_free_client +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xeb0d68da nfs_may_open +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xeb2f1fce nfs_pgio_current_mirror +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xeb52e3ef nfs_access_add_cache +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xebd3574e nfs_pageio_init_read +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xec244944 nfs_file_fsync +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xee53b7a8 nfs_force_lookup_revalidate +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xf345d4f4 nfs_put_lock_context +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xf426f293 nfs_pgio_header_alloc +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xf4a3ee15 nfs_file_mmap +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xf537732b nfs_file_write +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xf694f7b3 nfs_probe_fsinfo +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xf81812f6 nfs_lookup +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xfc619abd _nfs_display_fhandle +EXPORT_SYMBOL_GPL fs/nfs/nfsv3 0xc771cb00 nfs3_set_ds_client +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x00b9f2b1 nfs_remove_bad_delegation +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x054bef45 layoutstats_timer +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x0694d433 nfs4_pnfs_ds_connect +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x09df3e80 nfs4_pnfs_ds_put +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x0aabce74 nfs4_set_ds_client +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x0ade27ae __tracepoint_ff_layout_read_error +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x0b7a6919 nfs41_sequence_done +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x0c93b6d8 pnfs_generic_write_commit_done +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x0d88f76d nfs4_setup_sequence +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x112614d4 nfs4_decode_mp_ds_addr +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x163831c3 __tracepoint_nfs4_pnfs_write +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x1cdde079 __tracepoint_nfs4_pnfs_read +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x208f5c30 __tracepoint_pnfs_mds_fallback_read_pagelist +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x25750fa9 nfs4_proc_getdeviceinfo +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x2b08b35c pnfs_ld_read_done +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x2bee48dc pnfs_generic_ds_cinfo_destroy +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x30813e35 pnfs_add_commit_array +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x334420d2 nfs4_set_rw_stateid +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x397fb9cf nfs4_test_session_trunk +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x39ac52fe __tracepoint_ff_layout_commit_error +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x3a4559a2 nfs4_schedule_migration_recovery +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x3b3aa1bb nfs4_find_get_deviceid +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x3c7d84cc __tracepoint_pnfs_mds_fallback_write_pagelist +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x3f1835b5 pnfs_nfs_generic_sync +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x3f5d404b nfs4_schedule_lease_moved_recovery +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x3fb14ba5 nfs4_schedule_session_recovery +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x40197054 pnfs_generic_prepare_to_resend_writes +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x40bc3c6d __tracepoint_ff_layout_write_error +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x41e4c7ce nfs4_pnfs_ds_add +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x46c9b5f2 pnfs_layout_mark_request_commit +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x4fbe517f nfs4_find_or_create_ds_client +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x5491daeb pnfs_set_lo_fail +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x55761086 pnfs_layoutcommit_inode +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x56fb590d pnfs_generic_pg_cleanup +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x57e72373 nfs42_proc_layouterror +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x5a2c71f6 pnfs_set_layoutcommit +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x5ad44c95 pnfs_generic_scan_commit_lists +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x62e3c7d1 pnfs_generic_clear_request_commit +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x67d7a2bb pnfs_destroy_layout +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x688ecc95 pnfs_generic_recover_commit_reqs +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x69d3558d pnfs_generic_rw_release +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x6d4733c4 pnfs_report_layoutstat +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x6ddf18d9 pnfs_put_lseg +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x771c61fc nfs4_mark_deviceid_available +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x78d3eac6 nfs4_put_deviceid_node +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x78ecf37b __tracepoint_pnfs_mds_fallback_pg_init_write +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x8c283870 pnfs_generic_pg_check_range +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x8c81f886 nfs4_delete_deviceid +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x8f9c00b0 nfs4_schedule_lease_recovery +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x90bf109f nfs4_init_deviceid_node +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x95d64130 pnfs_register_layoutdriver +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x96486d1d nfs42_ssc_close +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x996f01cc pnfs_generic_ds_cinfo_release_lseg +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x9fafb6ee pnfs_generic_pg_init_read +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xa319bfee __tracepoint_pnfs_mds_fallback_pg_init_read +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xa54af9ce nfs4_mark_deviceid_unavailable +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xa8422a39 pnfs_unregister_layoutdriver +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xaa14f4df pnfs_generic_pg_test +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xb15d5c09 pnfs_error_mark_layout_for_return +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xb5bbd67b pnfs_update_layout +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xb79c95b3 pnfs_generic_pg_writepages +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xb8706bd2 pnfs_generic_pg_readpages +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xba7d5ac3 pnfs_generic_pg_check_layout +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xbcf33030 pnfs_ld_write_done +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xbdcf594f nfs4_schedule_stateid_recovery +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xc3331772 nfs_map_string_to_numeric +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xc70f5842 pnfs_free_commit_array +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xc960a730 pnfs_generic_layout_insert_lseg +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xc9ca2ede pnfs_generic_search_commit_reqs +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xcd2a3183 pnfs_write_done_resend_to_mds +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xcf0b92dd pnfs_read_resend_pnfs +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xd2e83d38 nfs42_ssc_open +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xd3b7d68b nfs4_test_deviceid_unavailable +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xd3d5f1b8 nfs4_init_ds_session +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xd6ed7dda __tracepoint_pnfs_mds_fallback_write_done +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xd71f3133 pnfs_read_done_resend_to_mds +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xd787bcd3 pnfs_generic_sync +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xdc29230a __tracepoint_pnfs_mds_fallback_pg_get_mirror_count +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xdee26e2b pnfs_alloc_commit_array +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xdf05942f __tracepoint_nfs4_pnfs_commit_ds +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xe12229cf pnfs_generic_commit_pagelist +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xe3f7c0c6 pnfs_generic_pg_init_write +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xe59836c8 nfs4_sequence_done +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xed15fb41 nfs4_print_deviceid +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xee960d9f __tracepoint_pnfs_mds_fallback_read_done +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 0x1fe1e1ad locks_end_grace +EXPORT_SYMBOL_GPL fs/nfs_common/grace 0x46eb4b81 opens_in_grace +EXPORT_SYMBOL_GPL fs/nfs_common/grace 0x518062c1 locks_in_grace +EXPORT_SYMBOL_GPL fs/nfs_common/grace 0xa56fbf92 locks_start_grace +EXPORT_SYMBOL_GPL fs/nfs_common/nfs_acl 0x07529fba nfsacl_encode +EXPORT_SYMBOL_GPL fs/nfs_common/nfs_acl 0x27a02fb1 nfsacl_decode +EXPORT_SYMBOL_GPL fs/nfsd/nfsd 0x5b388f0f inter_copy_offload_enable +EXPORT_SYMBOL_GPL fs/ocfs2/cluster/ocfs2_nodemanager 0x170c6f42 o2nm_get_node_by_ip +EXPORT_SYMBOL_GPL fs/ocfs2/cluster/ocfs2_nodemanager 0x1b89c6ee o2hb_fill_node_map +EXPORT_SYMBOL_GPL fs/ocfs2/cluster/ocfs2_nodemanager 0x29309dda o2nm_node_get +EXPORT_SYMBOL_GPL fs/ocfs2/cluster/ocfs2_nodemanager 0x4857dbce o2hb_register_callback +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 0x6a0c3847 __mlog_printk +EXPORT_SYMBOL_GPL fs/ocfs2/cluster/ocfs2_nodemanager 0x81a17396 mlog_and_bits +EXPORT_SYMBOL_GPL fs/ocfs2/cluster/ocfs2_nodemanager 0x92454ce2 o2nm_node_put +EXPORT_SYMBOL_GPL fs/ocfs2/cluster/ocfs2_nodemanager 0x9a6159bf o2nm_get_node_by_num +EXPORT_SYMBOL_GPL fs/ocfs2/cluster/ocfs2_nodemanager 0xa87bc9e7 o2nm_configured_node_map +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 0xbd9616c5 o2hb_setup_callback +EXPORT_SYMBOL_GPL fs/ocfs2/cluster/ocfs2_nodemanager 0xc4d99852 o2hb_check_node_heartbeating_from_callback +EXPORT_SYMBOL_GPL fs/ocfs2/cluster/ocfs2_nodemanager 0xd83b7b8c o2hb_unregister_callback +EXPORT_SYMBOL_GPL fs/ocfs2/cluster/ocfs2_nodemanager 0xd859ac8c o2net_fill_node_map +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 0xfa83d357 o2net_send_message_vec +EXPORT_SYMBOL_GPL fs/ocfs2/cluster/ocfs2_nodemanager 0xfe1298f3 o2net_register_handler +EXPORT_SYMBOL_GPL fs/ocfs2/dlm/ocfs2_dlm 0x01de30c7 dlmunlock +EXPORT_SYMBOL_GPL fs/ocfs2/dlm/ocfs2_dlm 0x03c6213e dlm_register_domain +EXPORT_SYMBOL_GPL fs/ocfs2/dlm/ocfs2_dlm 0x1c254d45 dlmlock +EXPORT_SYMBOL_GPL fs/ocfs2/dlm/ocfs2_dlm 0x46ae14eb dlm_unregister_domain +EXPORT_SYMBOL_GPL fs/ocfs2/dlm/ocfs2_dlm 0x67daab9f dlm_print_one_lock +EXPORT_SYMBOL_GPL fs/ocfs2/dlm/ocfs2_dlm 0x7a1211f8 dlm_setup_eviction_cb +EXPORT_SYMBOL_GPL fs/ocfs2/dlm/ocfs2_dlm 0x9354f71a dlm_register_eviction_cb +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 0x3583dc6a ocfs2_stack_glue_register +EXPORT_SYMBOL_GPL fs/ocfs2/ocfs2_stackglue 0x4d3af7fa ocfs2_cluster_hangup +EXPORT_SYMBOL_GPL fs/ocfs2/ocfs2_stackglue 0x5826c759 ocfs2_plock +EXPORT_SYMBOL_GPL fs/ocfs2/ocfs2_stackglue 0x76f40744 ocfs2_dlm_lvb +EXPORT_SYMBOL_GPL fs/ocfs2/ocfs2_stackglue 0x9507547f ocfs2_cluster_disconnect +EXPORT_SYMBOL_GPL fs/ocfs2/ocfs2_stackglue 0xa0af6656 ocfs2_stack_glue_unregister +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 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 0xe61d36f0 ocfs2_kset +EXPORT_SYMBOL_GPL kernel/torture 0x1b2fca48 torture_must_stop_irq +EXPORT_SYMBOL_GPL kernel/torture 0x1be7d8be torture_onoff_failures +EXPORT_SYMBOL_GPL kernel/torture 0x1f5eac57 torture_shuffle_task_register +EXPORT_SYMBOL_GPL kernel/torture 0x3e9619f5 torture_onoff_stats +EXPORT_SYMBOL_GPL kernel/torture 0x3ff9be11 torture_online +EXPORT_SYMBOL_GPL kernel/torture 0x447d9c95 torture_offline +EXPORT_SYMBOL_GPL kernel/torture 0x4c7529bd torture_shutdown_absorb +EXPORT_SYMBOL_GPL kernel/torture 0x52665f8b torture_random +EXPORT_SYMBOL_GPL kernel/torture 0x5a12a7da torture_stutter_init +EXPORT_SYMBOL_GPL kernel/torture 0x679d9e50 torture_must_stop +EXPORT_SYMBOL_GPL kernel/torture 0x688e6a64 torture_cleanup_end +EXPORT_SYMBOL_GPL kernel/torture 0x6c3ff11a torture_init_begin +EXPORT_SYMBOL_GPL kernel/torture 0x8b0e1d2f torture_shuffle_init +EXPORT_SYMBOL_GPL kernel/torture 0xc67a49d4 torture_cleanup_begin +EXPORT_SYMBOL_GPL kernel/torture 0xc94a93e3 torture_onoff_init +EXPORT_SYMBOL_GPL kernel/torture 0xca5f4d45 _torture_stop_kthread +EXPORT_SYMBOL_GPL kernel/torture 0xdbc5277a torture_shutdown_init +EXPORT_SYMBOL_GPL kernel/torture 0xe2430307 stutter_wait +EXPORT_SYMBOL_GPL kernel/torture 0xe55038d8 _torture_create_kthread +EXPORT_SYMBOL_GPL kernel/torture 0xe6989fd3 torture_init_end +EXPORT_SYMBOL_GPL kernel/torture 0xf6d34fb5 torture_kthread_stopping +EXPORT_SYMBOL_GPL lib/842/842_compress 0xcf048a91 sw842_compress +EXPORT_SYMBOL_GPL lib/842/842_decompress 0xa4adedf1 sw842_decompress +EXPORT_SYMBOL_GPL lib/crc4 0x696b3a5a crc4 +EXPORT_SYMBOL_GPL lib/crc64 0x1b0f70f3 crc64_be +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 0xbc3b5e35 poly1305_init_generic +EXPORT_SYMBOL_GPL lib/crypto/libpoly1305 0xd7219de2 poly1305_update_generic +EXPORT_SYMBOL_GPL lib/crypto/libpoly1305 0xf3945fcd poly1305_final_generic +EXPORT_SYMBOL_GPL lib/notifier-error-inject 0x36f982dd notifier_err_inject_dir +EXPORT_SYMBOL_GPL lib/notifier-error-inject 0xad3a368b notifier_err_inject_init +EXPORT_SYMBOL_GPL lib/raid6/raid6_pq 0x18efd32f raid6_datap_recov +EXPORT_SYMBOL_GPL lib/raid6/raid6_pq 0x391d9714 raid6_call +EXPORT_SYMBOL_GPL lib/raid6/raid6_pq 0xa51bfd9f raid6_2data_recov +EXPORT_SYMBOL_GPL net/802/garp 0x209d71a3 garp_request_leave +EXPORT_SYMBOL_GPL net/802/garp 0x594b43d6 garp_register_application +EXPORT_SYMBOL_GPL net/802/garp 0x7987a275 garp_uninit_applicant +EXPORT_SYMBOL_GPL net/802/garp 0xa3baeec7 garp_unregister_application +EXPORT_SYMBOL_GPL net/802/garp 0xc34c2706 garp_request_join +EXPORT_SYMBOL_GPL net/802/garp 0xdf563337 garp_init_applicant +EXPORT_SYMBOL_GPL net/802/mrp 0x48ccc155 mrp_request_leave +EXPORT_SYMBOL_GPL net/802/mrp 0xaddfb8ca mrp_init_applicant +EXPORT_SYMBOL_GPL net/802/mrp 0xb7c7ff4b mrp_unregister_application +EXPORT_SYMBOL_GPL net/802/mrp 0xd5b71a67 mrp_uninit_applicant +EXPORT_SYMBOL_GPL net/802/mrp 0xe3614ef9 mrp_request_join +EXPORT_SYMBOL_GPL net/802/mrp 0xe9dce3b5 mrp_register_application +EXPORT_SYMBOL_GPL net/802/stp 0x209afee8 stp_proto_unregister +EXPORT_SYMBOL_GPL net/802/stp 0x8fdf6b94 stp_proto_register +EXPORT_SYMBOL_GPL net/9p/9pnet 0x7b0db75c p9_client_xattrwalk +EXPORT_SYMBOL_GPL net/9p/9pnet 0xc1877ad8 p9_client_xattrcreate +EXPORT_SYMBOL_GPL net/bridge/bridge 0x1587bb03 br_multicast_list_adjacent +EXPORT_SYMBOL_GPL net/bridge/bridge 0x20ac4b64 br_multicast_has_querier_adjacent +EXPORT_SYMBOL_GPL net/bridge/bridge 0x486f4ddf br_fdb_find_port +EXPORT_SYMBOL_GPL net/bridge/bridge 0x632e9531 br_fdb_clear_offload +EXPORT_SYMBOL_GPL net/bridge/bridge 0x6aa874e4 br_multicast_enabled +EXPORT_SYMBOL_GPL net/bridge/bridge 0x84bd9d94 br_vlan_get_pvid_rcu +EXPORT_SYMBOL_GPL net/bridge/bridge 0x8717b144 br_vlan_enabled +EXPORT_SYMBOL_GPL net/bridge/bridge 0x8bad80d3 br_vlan_get_proto +EXPORT_SYMBOL_GPL net/bridge/bridge 0x985b5b26 nf_br_ops +EXPORT_SYMBOL_GPL net/bridge/bridge 0x9b40b052 br_multicast_has_querier_anywhere +EXPORT_SYMBOL_GPL net/bridge/bridge 0xa6e04b6a br_vlan_get_pvid +EXPORT_SYMBOL_GPL net/bridge/bridge 0xa7f49f86 br_port_flag_is_set +EXPORT_SYMBOL_GPL net/bridge/bridge 0xbdcaa603 br_forward_finish +EXPORT_SYMBOL_GPL net/bridge/bridge 0xbe8d83c1 br_vlan_get_info +EXPORT_SYMBOL_GPL net/bridge/bridge 0xcddc2511 br_multicast_router +EXPORT_SYMBOL_GPL net/bridge/bridge 0xd929aeb4 br_forward +EXPORT_SYMBOL_GPL net/bridge/bridge 0xe4c4bb79 br_dev_queue_push_xmit +EXPORT_SYMBOL_GPL net/bridge/bridge 0xfc99ca64 br_handle_frame_finish +EXPORT_SYMBOL_GPL net/core/failover 0x14eb2434 failover_unregister +EXPORT_SYMBOL_GPL net/core/failover 0x9497f809 failover_register +EXPORT_SYMBOL_GPL net/core/failover 0xb58d6a2b failover_slave_unregister +EXPORT_SYMBOL_GPL net/dccp/dccp 0x01c3237e dccp_create_openreq_child +EXPORT_SYMBOL_GPL net/dccp/dccp 0x049e71be dccp_disconnect +EXPORT_SYMBOL_GPL net/dccp/dccp 0x05a4ba84 dccp_recvmsg +EXPORT_SYMBOL_GPL net/dccp/dccp 0x0b904f34 dccp_ctl_make_reset +EXPORT_SYMBOL_GPL net/dccp/dccp 0x182ec2bf dccp_ackvec_parsed_add +EXPORT_SYMBOL_GPL net/dccp/dccp 0x1af4b671 dccp_destroy_sock +EXPORT_SYMBOL_GPL net/dccp/dccp 0x1f02a714 dccp_rcv_established +EXPORT_SYMBOL_GPL net/dccp/dccp 0x2530a89e dccp_setsockopt +EXPORT_SYMBOL_GPL net/dccp/dccp 0x42c93e50 inet_dccp_listen +EXPORT_SYMBOL_GPL net/dccp/dccp 0x491993fa dccp_make_response +EXPORT_SYMBOL_GPL net/dccp/dccp 0x4cdd391d dccp_feat_list_purge +EXPORT_SYMBOL_GPL net/dccp/dccp 0x531dd5d9 dccp_reqsk_send_ack +EXPORT_SYMBOL_GPL net/dccp/dccp 0x535c843c dccp_orphan_count +EXPORT_SYMBOL_GPL net/dccp/dccp 0x53a596b7 dccp_feat_signal_nn_change +EXPORT_SYMBOL_GPL net/dccp/dccp 0x5553fa59 dccp_child_process +EXPORT_SYMBOL_GPL net/dccp/dccp 0x59814a84 dccp_statistics +EXPORT_SYMBOL_GPL net/dccp/dccp 0x5ec91da3 dccp_send_ack +EXPORT_SYMBOL_GPL net/dccp/dccp 0x68839b03 dccp_ioctl +EXPORT_SYMBOL_GPL net/dccp/dccp 0x6e9bc5d7 dccp_set_state +EXPORT_SYMBOL_GPL net/dccp/dccp 0x6ed7f20d dccp_shutdown +EXPORT_SYMBOL_GPL net/dccp/dccp 0x6f084c32 dccp_parse_options +EXPORT_SYMBOL_GPL net/dccp/dccp 0x73980af1 dccp_poll +EXPORT_SYMBOL_GPL net/dccp/dccp 0x74203431 dccp_hashinfo +EXPORT_SYMBOL_GPL net/dccp/dccp 0x80993155 dccp_timestamp +EXPORT_SYMBOL_GPL net/dccp/dccp 0x84bf3506 dccp_done +EXPORT_SYMBOL_GPL net/dccp/dccp 0x86be7924 dccp_packet_name +EXPORT_SYMBOL_GPL net/dccp/dccp 0x95069458 dccp_check_req +EXPORT_SYMBOL_GPL net/dccp/dccp 0x9598d24d dccp_ackvec_parsed_cleanup +EXPORT_SYMBOL_GPL net/dccp/dccp 0x9ab321ff compat_dccp_getsockopt +EXPORT_SYMBOL_GPL net/dccp/dccp 0x9ce40d75 dccp_getsockopt +EXPORT_SYMBOL_GPL net/dccp/dccp 0xa414109e dccp_connect +EXPORT_SYMBOL_GPL net/dccp/dccp 0xafb69c31 dccp_feat_nn_get +EXPORT_SYMBOL_GPL net/dccp/dccp 0xb78ee43e dccp_death_row +EXPORT_SYMBOL_GPL net/dccp/dccp 0xc29bde35 dccp_reqsk_init +EXPORT_SYMBOL_GPL net/dccp/dccp 0xc3e033e0 dccp_send_sync +EXPORT_SYMBOL_GPL net/dccp/dccp 0xc5656ec4 dccp_insert_option +EXPORT_SYMBOL_GPL net/dccp/dccp 0xd6245bc9 dccp_sendmsg +EXPORT_SYMBOL_GPL net/dccp/dccp 0xd6609468 compat_dccp_setsockopt +EXPORT_SYMBOL_GPL net/dccp/dccp 0xdbf4e1fe dccp_sync_mss +EXPORT_SYMBOL_GPL net/dccp/dccp 0xe38d185c dccp_rcv_state_process +EXPORT_SYMBOL_GPL net/dccp/dccp 0xf3d10747 dccp_close +EXPORT_SYMBOL_GPL net/dccp/dccp 0xfdf228c6 dccp_init_sock +EXPORT_SYMBOL_GPL net/dccp/dccp_ipv4 0x268e0ed4 dccp_v4_request_recv_sock +EXPORT_SYMBOL_GPL net/dccp/dccp_ipv4 0x3dac7f19 dccp_v4_do_rcv +EXPORT_SYMBOL_GPL net/dccp/dccp_ipv4 0x50b2cce1 dccp_v4_send_check +EXPORT_SYMBOL_GPL net/dccp/dccp_ipv4 0x55de7097 dccp_invalid_packet +EXPORT_SYMBOL_GPL net/dccp/dccp_ipv4 0x8027da67 dccp_v4_conn_request +EXPORT_SYMBOL_GPL net/dccp/dccp_ipv4 0xb79345f9 dccp_v4_connect +EXPORT_SYMBOL_GPL net/ife/ife 0x5ba91f58 ife_decode +EXPORT_SYMBOL_GPL net/ife/ife 0x6210e871 ife_tlv_meta_next +EXPORT_SYMBOL_GPL net/ife/ife 0x624d081d ife_encode +EXPORT_SYMBOL_GPL net/ife/ife 0x67db2029 ife_tlv_meta_decode +EXPORT_SYMBOL_GPL net/ife/ife 0xe7888e98 ife_tlv_meta_encode +EXPORT_SYMBOL_GPL net/ipv4/esp4 0x2f53b34d esp_output_head +EXPORT_SYMBOL_GPL net/ipv4/esp4 0xc5be4ad3 esp_output_tail +EXPORT_SYMBOL_GPL net/ipv4/esp4 0xcdd6f6a9 esp_input_done2 +EXPORT_SYMBOL_GPL net/ipv4/gre 0xc7b99a22 gre_del_protocol +EXPORT_SYMBOL_GPL net/ipv4/gre 0xf4f8ad36 gre_add_protocol +EXPORT_SYMBOL_GPL net/ipv4/inet_diag 0x2d045309 inet_diag_dump_one_icsk +EXPORT_SYMBOL_GPL net/ipv4/inet_diag 0x722970ce inet_diag_msg_attrs_fill +EXPORT_SYMBOL_GPL net/ipv4/inet_diag 0x78860cdb inet_diag_register +EXPORT_SYMBOL_GPL net/ipv4/inet_diag 0x8a185de2 inet_diag_msg_common_fill +EXPORT_SYMBOL_GPL net/ipv4/inet_diag 0xa1babb2d inet_diag_find_one_icsk +EXPORT_SYMBOL_GPL net/ipv4/inet_diag 0xad339862 inet_diag_unregister +EXPORT_SYMBOL_GPL net/ipv4/inet_diag 0xb1e1b899 inet_diag_dump_icsk +EXPORT_SYMBOL_GPL net/ipv4/inet_diag 0xdc42eb6c inet_diag_bc_sk +EXPORT_SYMBOL_GPL net/ipv4/inet_diag 0xe103e895 inet_sk_diag_fill +EXPORT_SYMBOL_GPL net/ipv4/ip_gre 0x54ad6afb gretap_fb_dev_create +EXPORT_SYMBOL_GPL net/ipv4/ip_tunnel 0x017b2e34 ip_tunnel_init_net +EXPORT_SYMBOL_GPL net/ipv4/ip_tunnel 0x1c10b221 __ip_tunnel_change_mtu +EXPORT_SYMBOL_GPL net/ipv4/ip_tunnel 0x1d8b8887 ip_tunnel_change_mtu +EXPORT_SYMBOL_GPL net/ipv4/ip_tunnel 0x37e521c4 ip_tunnel_dellink +EXPORT_SYMBOL_GPL net/ipv4/ip_tunnel 0x3b44e2ba ip_tunnel_lookup +EXPORT_SYMBOL_GPL net/ipv4/ip_tunnel 0x64ce6147 ip_tunnel_setup +EXPORT_SYMBOL_GPL net/ipv4/ip_tunnel 0x6bbd7fd1 ip_tunnel_rcv +EXPORT_SYMBOL_GPL net/ipv4/ip_tunnel 0x79a25e14 ip_tunnel_delete_nets +EXPORT_SYMBOL_GPL net/ipv4/ip_tunnel 0x7b997d80 ip_tunnel_encap_setup +EXPORT_SYMBOL_GPL net/ipv4/ip_tunnel 0x99fa3263 ip_md_tunnel_xmit +EXPORT_SYMBOL_GPL net/ipv4/ip_tunnel 0x9bc12e47 ip_tunnel_changelink +EXPORT_SYMBOL_GPL net/ipv4/ip_tunnel 0xa716acf1 ip_tunnel_ioctl +EXPORT_SYMBOL_GPL net/ipv4/ip_tunnel 0xb97261e0 ip_tunnel_newlink +EXPORT_SYMBOL_GPL net/ipv4/ip_tunnel 0xd2a05a84 ip_tunnel_xmit +EXPORT_SYMBOL_GPL net/ipv4/ip_tunnel 0xe9ca61b5 ip_tunnel_uninit +EXPORT_SYMBOL_GPL net/ipv4/ip_tunnel 0xeca8b90e ip_tunnel_ctl +EXPORT_SYMBOL_GPL net/ipv4/ip_tunnel 0xfc89e782 ip_tunnel_init +EXPORT_SYMBOL_GPL net/ipv4/netfilter/arp_tables 0xb250a0b0 arpt_alloc_initial_table +EXPORT_SYMBOL_GPL net/ipv4/netfilter/ip_tables 0x88650f27 ipt_alloc_initial_table +EXPORT_SYMBOL_GPL net/ipv4/netfilter/nf_defrag_ipv4 0x8b3fa579 nf_defrag_ipv4_enable +EXPORT_SYMBOL_GPL net/ipv4/netfilter/nf_dup_ipv4 0x20a5230b nf_dup_ipv4 +EXPORT_SYMBOL_GPL net/ipv4/netfilter/nf_reject_ipv4 0x237485c8 nf_reject_ip_tcphdr_get +EXPORT_SYMBOL_GPL net/ipv4/netfilter/nf_reject_ipv4 0x6ed8ffd7 nf_send_reset +EXPORT_SYMBOL_GPL net/ipv4/netfilter/nf_reject_ipv4 0x7bdaadb1 nf_send_unreach +EXPORT_SYMBOL_GPL net/ipv4/netfilter/nf_reject_ipv4 0x9dce1ed2 nf_reject_iphdr_put +EXPORT_SYMBOL_GPL net/ipv4/netfilter/nf_reject_ipv4 0xfb3b0f9c nf_reject_ip_tcphdr_put +EXPORT_SYMBOL_GPL net/ipv4/netfilter/nf_socket_ipv4 0x026b6247 nf_sk_lookup_slow_v4 +EXPORT_SYMBOL_GPL net/ipv4/netfilter/nf_tproxy_ipv4 0x688f06f5 nf_tproxy_handle_time_wait4 +EXPORT_SYMBOL_GPL net/ipv4/netfilter/nf_tproxy_ipv4 0xaa5a01aa nf_tproxy_get_sock_v4 +EXPORT_SYMBOL_GPL net/ipv4/netfilter/nf_tproxy_ipv4 0xcab0adf5 nf_tproxy_laddr4 +EXPORT_SYMBOL_GPL net/ipv4/netfilter/nft_fib_ipv4 0x02d41586 nft_fib4_eval_type +EXPORT_SYMBOL_GPL net/ipv4/netfilter/nft_fib_ipv4 0x230fd9bc nft_fib4_eval +EXPORT_SYMBOL_GPL net/ipv4/tcp_vegas 0x837e0458 tcp_vegas_get_info +EXPORT_SYMBOL_GPL net/ipv4/tcp_vegas 0xc0fc6be2 tcp_vegas_init +EXPORT_SYMBOL_GPL net/ipv4/tcp_vegas 0xcad3e7aa tcp_vegas_state +EXPORT_SYMBOL_GPL net/ipv4/tcp_vegas 0xcf73fff1 tcp_vegas_pkts_acked +EXPORT_SYMBOL_GPL net/ipv4/tcp_vegas 0xecda1485 tcp_vegas_cwnd_event +EXPORT_SYMBOL_GPL net/ipv4/udp_tunnel 0x07bb4691 udp_tunnel_notify_add_rx_port +EXPORT_SYMBOL_GPL net/ipv4/udp_tunnel 0x09a025f3 udp_tunnel_sock_release +EXPORT_SYMBOL_GPL net/ipv4/udp_tunnel 0x1f2766d6 udp_tunnel_notify_del_rx_port +EXPORT_SYMBOL_GPL net/ipv4/udp_tunnel 0x2ad2549a setup_udp_tunnel_sock +EXPORT_SYMBOL_GPL net/ipv4/udp_tunnel 0x6461ba42 udp_tunnel_push_rx_port +EXPORT_SYMBOL_GPL net/ipv4/udp_tunnel 0x6aedddbd udp_tunnel_drop_rx_port +EXPORT_SYMBOL_GPL net/ipv4/udp_tunnel 0x7a11a093 udp_tunnel_xmit_skb +EXPORT_SYMBOL_GPL net/ipv4/udp_tunnel 0xa9d1b809 udp_tun_rx_dst +EXPORT_SYMBOL_GPL net/ipv6/esp6 0x8798269e esp6_output_tail +EXPORT_SYMBOL_GPL net/ipv6/esp6 0x89e334c2 esp6_output_head +EXPORT_SYMBOL_GPL net/ipv6/esp6 0xa2547778 esp6_input_done2 +EXPORT_SYMBOL_GPL net/ipv6/ip6_tunnel 0x43cfecb9 ip6_tnl_xmit_ctl +EXPORT_SYMBOL_GPL net/ipv6/ip6_tunnel 0x75856b22 ip6_tnl_encap_setup +EXPORT_SYMBOL_GPL net/ipv6/ip6_tunnel 0xbf047a51 ip6_tnl_rcv_ctl +EXPORT_SYMBOL_GPL net/ipv6/ip6_udp_tunnel 0x5bb73bcd udp_tunnel6_xmit_skb +EXPORT_SYMBOL_GPL net/ipv6/ip6_udp_tunnel 0xa7f9c995 udp_sock_create6 +EXPORT_SYMBOL_GPL net/ipv6/netfilter/ip6_tables 0xf8f0709c ip6t_alloc_initial_table +EXPORT_SYMBOL_GPL net/ipv6/netfilter/nf_defrag_ipv6 0x0f55147f nf_ct_frag6_gather +EXPORT_SYMBOL_GPL net/ipv6/netfilter/nf_defrag_ipv6 0x659f070a nf_defrag_ipv6_enable +EXPORT_SYMBOL_GPL net/ipv6/netfilter/nf_dup_ipv6 0xf48b3937 nf_dup_ipv6 +EXPORT_SYMBOL_GPL net/ipv6/netfilter/nf_reject_ipv6 0x2c1d2fd3 nf_send_reset6 +EXPORT_SYMBOL_GPL net/ipv6/netfilter/nf_reject_ipv6 0x6b49c2c2 nf_reject_ip6_tcphdr_get +EXPORT_SYMBOL_GPL net/ipv6/netfilter/nf_reject_ipv6 0x863089e0 nf_send_unreach6 +EXPORT_SYMBOL_GPL net/ipv6/netfilter/nf_reject_ipv6 0xc0a1203c nf_reject_ip6_tcphdr_put +EXPORT_SYMBOL_GPL net/ipv6/netfilter/nf_reject_ipv6 0xffca172c nf_reject_ip6hdr_put +EXPORT_SYMBOL_GPL net/ipv6/netfilter/nf_socket_ipv6 0x850cc32e nf_sk_lookup_slow_v6 +EXPORT_SYMBOL_GPL net/ipv6/netfilter/nf_tproxy_ipv6 0x06bc507d nf_tproxy_get_sock_v6 +EXPORT_SYMBOL_GPL net/ipv6/netfilter/nf_tproxy_ipv6 0x33e2c0d6 nf_tproxy_handle_time_wait6 +EXPORT_SYMBOL_GPL net/ipv6/netfilter/nf_tproxy_ipv6 0x58c808d3 nf_tproxy_laddr6 +EXPORT_SYMBOL_GPL net/ipv6/netfilter/nft_fib_ipv6 0x531b8c19 nft_fib6_eval +EXPORT_SYMBOL_GPL net/ipv6/netfilter/nft_fib_ipv6 0x7966ab44 nft_fib6_eval_type +EXPORT_SYMBOL_GPL net/l2tp/l2tp_core 0x1fa49d61 l2tp_xmit_skb +EXPORT_SYMBOL_GPL net/l2tp/l2tp_core 0x2579660f l2tp_session_register +EXPORT_SYMBOL_GPL net/l2tp/l2tp_core 0x54a88f7d l2tp_tunnel_create +EXPORT_SYMBOL_GPL net/l2tp/l2tp_core 0x79e81405 l2tp_session_delete +EXPORT_SYMBOL_GPL net/l2tp/l2tp_core 0x804507c4 __l2tp_session_unhash +EXPORT_SYMBOL_GPL net/l2tp/l2tp_core 0x8141714c l2tp_tunnel_get_nth +EXPORT_SYMBOL_GPL net/l2tp/l2tp_core 0x82b5affe l2tp_session_free +EXPORT_SYMBOL_GPL net/l2tp/l2tp_core 0x87ff07a9 l2tp_session_create +EXPORT_SYMBOL_GPL net/l2tp/l2tp_core 0x931f40e1 l2tp_udp_encap_recv +EXPORT_SYMBOL_GPL net/l2tp/l2tp_core 0x97863be1 l2tp_session_get +EXPORT_SYMBOL_GPL net/l2tp/l2tp_core 0x9bf78678 l2tp_tunnel_get +EXPORT_SYMBOL_GPL net/l2tp/l2tp_core 0xa041db92 l2tp_session_get_by_ifname +EXPORT_SYMBOL_GPL net/l2tp/l2tp_core 0xb6851b1e l2tp_session_set_header_len +EXPORT_SYMBOL_GPL net/l2tp/l2tp_core 0xbe418258 l2tp_tunnel_delete +EXPORT_SYMBOL_GPL net/l2tp/l2tp_core 0xc68a3552 l2tp_tunnel_register +EXPORT_SYMBOL_GPL net/l2tp/l2tp_core 0xd1de86db l2tp_session_get_nth +EXPORT_SYMBOL_GPL net/l2tp/l2tp_core 0xf86c3dbf l2tp_tunnel_get_session +EXPORT_SYMBOL_GPL net/l2tp/l2tp_netlink 0x337f2432 l2tp_nl_unregister_ops +EXPORT_SYMBOL_GPL net/l2tp/l2tp_netlink 0xa0bef941 l2tp_nl_register_ops +EXPORT_SYMBOL_GPL net/mpls/mpls_router 0x2c69ef35 mpls_pkt_too_big +EXPORT_SYMBOL_GPL net/mpls/mpls_router 0xa70207ab mpls_stats_inc_outucastpkts +EXPORT_SYMBOL_GPL net/mpls/mpls_router 0xab7b27f5 nla_put_labels +EXPORT_SYMBOL_GPL net/mpls/mpls_router 0xe413b0a4 nla_get_labels +EXPORT_SYMBOL_GPL net/mpls/mpls_router 0xf5d2591a mpls_dev_mtu +EXPORT_SYMBOL_GPL net/mpls/mpls_router 0xfb882ed0 mpls_output_possible +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0x05094113 ip_set_nfnl_put +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0x0b2310aa ip_set_alloc +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0x12ca5206 ip_set_nfnl_get_byindex +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0x18ff88b5 ip_set_put_byindex +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0x22820fcb ip_set_type_unregister +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0x22d966c6 ip_set_range_to_cidr +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0x397f6231 ip_set_free +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0x4d9a07bc ip_set_get_ip4_port +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0x4f5f92fe ip_set_put_flags +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0x53c52af9 ip_set_add +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0x57398277 ip_set_extensions +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0x7157eb9d ip_set_get_ip6_port +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0x7749f5ad ip_set_elem_len +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 0x846a1a59 ip_set_init_comment +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 0xa39ba509 ip_set_put_extensions +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0xae6a8a49 ip_set_name_byindex +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0xc6e003bd ip_set_get_byname +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0xe0ec8a6b ip_set_type_register +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0xe32eb184 ip_set_get_extensions +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0xeb61e592 ip_set_test +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0xf966157f ip_set_match_extensions +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0xfd4f3408 ip_set_del +EXPORT_SYMBOL_GPL net/netfilter/ipvs/ip_vs 0x21b0ce96 ip_vs_conn_in_get_proto +EXPORT_SYMBOL_GPL net/netfilter/ipvs/ip_vs 0xbd9fd4ec unregister_ip_vs_pe +EXPORT_SYMBOL_GPL net/netfilter/ipvs/ip_vs 0xd3d98163 ip_vs_conn_out_get_proto +EXPORT_SYMBOL_GPL net/netfilter/ipvs/ip_vs 0xdcf39b34 register_ip_vs_pe +EXPORT_SYMBOL_GPL net/netfilter/nf_conncount 0x3f85489c nf_conncount_list_init +EXPORT_SYMBOL_GPL net/netfilter/nf_conncount 0x4af54be0 nf_conncount_cache_free +EXPORT_SYMBOL_GPL net/netfilter/nf_conncount 0x5cccb50a nf_conncount_count +EXPORT_SYMBOL_GPL net/netfilter/nf_conncount 0x719e627c nf_conncount_gc_list +EXPORT_SYMBOL_GPL net/netfilter/nf_conncount 0x73fc1ccb nf_conncount_init +EXPORT_SYMBOL_GPL net/netfilter/nf_conncount 0x8318bc78 nf_conncount_add +EXPORT_SYMBOL_GPL net/netfilter/nf_conncount 0xd2412313 nf_conncount_destroy +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x02bb1c6b nf_ct_netns_get +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x0568d754 nf_ct_seq_offset +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x06de4e20 nf_ct_helper_expectfn_find_by_name +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x084b1a5d nf_ct_expect_init +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x0bc00f80 nf_nat_helper_try_module_get +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x14183766 nf_ct_helper_expectfn_find_by_symbol +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x15b0147f nf_ct_l4proto_find +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x1996d8e4 nf_ct_extend_unregister +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x1aab99d3 __nf_ct_expect_find +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x1c9d53e8 nf_ct_expect_put +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x1e380d99 nf_conntrack_lock +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x20f56881 nf_conntrack_hash_check_insert +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x21c8c193 nf_ct_seqadj_init +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 0x29883b12 nf_conntrack_helper_put +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x2b68396d nf_ct_expect_iterate_net +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x32dd9be8 nf_ct_delete +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x361438da nf_conntrack_helpers_register +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x370fff98 __nf_conntrack_helper_find +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x3757f636 nf_ct_expect_related_report +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x3914aab4 nf_ct_unlink_expect_report +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x3c282878 nf_ct_helper_expectfn_unregister +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x4137f76c nf_ct_unexpect_related +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x43223784 nf_ct_gre_keymap_destroy +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x48824ad4 nf_ct_acct_add +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x48b37e46 nf_ct_iterate_destroy +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x4ac212fd nf_conntrack_alter_reply +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x4d0c4bb6 nf_connlabels_replace +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x4e8349a8 nf_ct_kill_acct +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x4fc214a7 __nf_ct_refresh_acct +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x52d7b354 nf_ct_tmpl_free +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x5883f3ed nf_ct_bridge_unregister +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x58b31358 nf_ct_bridge_register +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x5a237b7c __nf_conntrack_confirm +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x5c5538cb nf_ct_remove_expectations +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x5e8596a7 nf_ct_timeout_put_hook +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x5f056f2f nf_ct_set_timeout +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x611727dd nf_ct_get_tuplepr +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x68e61866 nf_ct_deliver_cached_events +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x693c3961 nf_ct_helper_hash +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x696c7bf8 nf_conntrack_helper_try_module_get +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x6b9aebc7 nf_ct_seqadj_set +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x6c8849a7 nf_ct_extend_register +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x70d58697 nf_ct_helper_init +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x73060f11 nf_conntrack_helper_unregister +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x732b43e5 nf_ct_expect_find_get +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x7717409f nf_conntrack_unregister_notifier +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x7786cedd nf_l4proto_log_invalid +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x7ca50efc nf_conntrack_eventmask_report +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x7da80b2e nf_ct_port_nla_policy +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x7f3434cb nf_nat_helper_put +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x806ad74e nf_ct_expect_unregister_notifier +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x89809775 nf_ct_l4proto_log_invalid +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x8e75032d nf_connlabels_get +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x8e81546c nf_ct_tcp_seqadj_set +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x8ffe7e89 nf_conntrack_htable_size +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x9042e362 nf_conntrack_expect_lock +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x90a15d3b nf_conntrack_helpers_unregister +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x927cf041 nf_ct_port_tuple_to_nlattr +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x93937b6c nf_conntrack_free +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x96599e08 nf_ct_iterate_cleanup_net +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x9b86651a nf_ct_helper_log +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x9b897c3c nf_ct_expect_register_notifier +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x9cd16577 nf_ct_expect_alloc +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x9d2c8c7f nf_nat_helper_register +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xa12ec2ca nf_conntrack_in +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xa2a75ff6 nf_ct_destroy_timeout +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xa44eab3e nf_connlabels_put +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xa4b09448 nf_ct_tmpl_alloc +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xaace4a54 __nf_ct_try_assign_helper +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xab72ceae nf_conntrack_tuple_taken +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xafbd6cf5 nf_ct_port_nlattr_to_tuple +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xafe44710 nf_nat_helper_unregister +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xb6b75d26 nf_ct_timeout_find_get_hook +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xb8b0f225 nf_confirm +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xb927c8d3 nf_ct_helper_ext_add +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xb9f95cb3 nf_ct_expect_iterate_destroy +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xc18ac88d nf_ct_expect_hsize +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xc40f284c nf_ct_helper_hsize +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xc7137ac1 nf_conntrack_register_notifier +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xce456083 nf_conntrack_helper_register +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xd4800b8c nf_ct_gre_keymap_add +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xd505c3e0 nf_ct_port_nlattr_tuple_size +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xd51f93c8 nf_ct_seq_adjust +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xde70936d nf_ct_netns_put +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xe3978313 nf_ct_untimeout +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xe711841f nf_ct_unconfirmed_destroy +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xec8beba6 nf_ct_expect_hash +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xed837653 nf_conntrack_find_get +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xee0b7a31 nf_conntrack_locks +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xf2c61165 nf_conntrack_alloc +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xf38bcdf3 nf_conntrack_max +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xf53ecf07 nf_ct_remove_expect +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xf73835f1 nf_ct_helper_expectfn_register +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xfb130a74 nf_ct_get_id +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xfe731af8 nf_ct_invert_tuple +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_amanda 0xa542b134 nf_nat_amanda_hook +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_broadcast 0xc3dbf1fe nf_conntrack_broadcast_help +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_ftp 0xc35c2bf9 nf_nat_ftp_hook +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_h323 0x03046069 nat_h245_hook +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_h323 0x08c330f9 nat_callforwarding_hook +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_h323 0x0a3f9811 nat_rtp_rtcp_hook +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_h323 0x2cdbea2f nat_t120_hook +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_h323 0x399fe701 set_h225_addr_hook +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_h323 0x3fd0839b get_h225_addr +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_h323 0x5392bcb9 nat_q931_hook +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_h323 0x5f21004a set_ras_addr_hook +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_h323 0x9d4c246d set_h245_addr_hook +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_h323 0xa763c356 set_sig_addr_hook +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_irc 0xe4e3302a nf_nat_irc_hook +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_pptp 0x2a203ad5 nf_nat_pptp_hook_expectfn +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_pptp 0x536e0273 nf_nat_pptp_hook_outbound +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_pptp 0x96d88cb8 nf_nat_pptp_hook_exp_gre +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_pptp 0xc9360a50 nf_nat_pptp_hook_inbound +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_sip 0x1c636c94 ct_sip_get_sdp_header +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_sip 0x31b0dd24 ct_sip_parse_header_uri +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_sip 0x3f0d54b3 nf_nat_sip_hooks +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_sip 0x732e35a3 ct_sip_get_header +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_sip 0xa5573743 ct_sip_parse_numerical_param +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_sip 0xb934fde2 ct_sip_parse_address_param +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_sip 0xc35c8010 ct_sip_parse_request +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_snmp 0xa71b24f1 nf_nat_snmp_hook +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_tftp 0x65f94e2e nf_nat_tftp_hook +EXPORT_SYMBOL_GPL net/netfilter/nf_dup_netdev 0x23f1fafa nf_fwd_netdev_egress +EXPORT_SYMBOL_GPL net/netfilter/nf_dup_netdev 0x38fee431 nf_dup_netdev_egress +EXPORT_SYMBOL_GPL net/netfilter/nf_dup_netdev 0xdf08bd93 nft_fwd_dup_netdev_offload +EXPORT_SYMBOL_GPL net/netfilter/nf_flow_table 0x1d58cb48 flow_offload_lookup +EXPORT_SYMBOL_GPL net/netfilter/nf_flow_table 0x2784aaa8 nf_flow_offload_ip_hook +EXPORT_SYMBOL_GPL net/netfilter/nf_flow_table 0x2ccb9fdc nf_flow_offload_ipv6_hook +EXPORT_SYMBOL_GPL net/netfilter/nf_flow_table 0x37b315bd nf_flow_table_cleanup +EXPORT_SYMBOL_GPL net/netfilter/nf_flow_table 0x3e824ec4 flow_offload_route_init +EXPORT_SYMBOL_GPL net/netfilter/nf_flow_table 0x50d17b9c nf_flow_snat_port +EXPORT_SYMBOL_GPL net/netfilter/nf_flow_table 0x645843a0 nf_flow_rule_route_ipv4 +EXPORT_SYMBOL_GPL net/netfilter/nf_flow_table 0x7e360281 nf_flow_table_offload_setup +EXPORT_SYMBOL_GPL net/netfilter/nf_flow_table 0x92496493 nf_flow_table_init +EXPORT_SYMBOL_GPL net/netfilter/nf_flow_table 0xb648dae1 nf_flow_rule_route_ipv6 +EXPORT_SYMBOL_GPL net/netfilter/nf_flow_table 0xc1be2782 flow_offload_free +EXPORT_SYMBOL_GPL net/netfilter/nf_flow_table 0xc5dea5ae flow_offload_teardown +EXPORT_SYMBOL_GPL net/netfilter/nf_flow_table 0xc96feb20 nf_flow_table_free +EXPORT_SYMBOL_GPL net/netfilter/nf_flow_table 0xe607eda2 nf_flow_dnat_port +EXPORT_SYMBOL_GPL net/netfilter/nf_flow_table 0xe6c870e9 flow_offload_alloc +EXPORT_SYMBOL_GPL net/netfilter/nf_flow_table 0xf4d3c2ac flow_offload_refresh +EXPORT_SYMBOL_GPL net/netfilter/nf_flow_table 0xfee2811b flow_offload_add +EXPORT_SYMBOL_GPL net/netfilter/nf_log_common 0x53fff23e nf_log_dump_vlan +EXPORT_SYMBOL_GPL net/netfilter/nf_log_common 0x728f2bf8 nf_log_dump_udp_header +EXPORT_SYMBOL_GPL net/netfilter/nf_log_common 0x8de1740c nf_log_dump_sk_uid_gid +EXPORT_SYMBOL_GPL net/netfilter/nf_log_common 0xa424ad21 nf_log_dump_packet_common +EXPORT_SYMBOL_GPL net/netfilter/nf_log_common 0xc1790bd3 nf_log_dump_tcp_header +EXPORT_SYMBOL_GPL net/netfilter/nf_log_common 0xdcc5eb94 nf_log_l2packet +EXPORT_SYMBOL_GPL net/netfilter/nf_nat 0x2334e57d nf_nat_redirect_ipv6 +EXPORT_SYMBOL_GPL net/netfilter/nf_nat 0x2eb07192 nf_nat_inet_fn +EXPORT_SYMBOL_GPL net/netfilter/nf_nat 0x333f64c4 nf_nat_inet_unregister_fn +EXPORT_SYMBOL_GPL net/netfilter/nf_nat 0x3bc17c49 nf_nat_masquerade_inet_register_notifiers +EXPORT_SYMBOL_GPL net/netfilter/nf_nat 0x3c627977 nf_nat_masquerade_ipv4 +EXPORT_SYMBOL_GPL net/netfilter/nf_nat 0x405ea0ef nf_nat_icmp_reply_translation +EXPORT_SYMBOL_GPL net/netfilter/nf_nat 0x41d34170 nf_nat_ipv4_unregister_fn +EXPORT_SYMBOL_GPL net/netfilter/nf_nat 0x53dccdce nf_nat_ipv6_register_fn +EXPORT_SYMBOL_GPL net/netfilter/nf_nat 0x5e1a5025 nf_nat_redirect_ipv4 +EXPORT_SYMBOL_GPL net/netfilter/nf_nat 0x74a7bd4e nf_nat_alloc_null_binding +EXPORT_SYMBOL_GPL net/netfilter/nf_nat 0x74bc1d0d nf_nat_masquerade_ipv6 +EXPORT_SYMBOL_GPL net/netfilter/nf_nat 0x8102b949 nf_ct_nat_ext_add +EXPORT_SYMBOL_GPL net/netfilter/nf_nat 0xab8277b5 nf_nat_inet_register_fn +EXPORT_SYMBOL_GPL net/netfilter/nf_nat 0xae096167 nf_nat_packet +EXPORT_SYMBOL_GPL net/netfilter/nf_nat 0xd4406635 nf_nat_ipv6_unregister_fn +EXPORT_SYMBOL_GPL net/netfilter/nf_nat 0xd9c25654 nf_nat_masquerade_inet_unregister_notifiers +EXPORT_SYMBOL_GPL net/netfilter/nf_nat 0xe7858e70 nf_nat_ipv4_register_fn +EXPORT_SYMBOL_GPL net/netfilter/nf_nat 0xffcc74d0 nf_nat_icmpv6_reply_translation +EXPORT_SYMBOL_GPL net/netfilter/nf_synproxy_core 0x003fa658 synproxy_send_client_synack +EXPORT_SYMBOL_GPL net/netfilter/nf_synproxy_core 0x1f099794 synproxy_init_timestamp_cookie +EXPORT_SYMBOL_GPL net/netfilter/nf_synproxy_core 0x2f511c79 synproxy_send_client_synack_ipv6 +EXPORT_SYMBOL_GPL net/netfilter/nf_synproxy_core 0x35d2336e nf_synproxy_ipv6_init +EXPORT_SYMBOL_GPL net/netfilter/nf_synproxy_core 0x6843cf6f ipv4_synproxy_hook +EXPORT_SYMBOL_GPL net/netfilter/nf_synproxy_core 0x68d8a601 nf_synproxy_ipv6_fini +EXPORT_SYMBOL_GPL net/netfilter/nf_synproxy_core 0x769f21b4 synproxy_recv_client_ack +EXPORT_SYMBOL_GPL net/netfilter/nf_synproxy_core 0x8b37132e ipv6_synproxy_hook +EXPORT_SYMBOL_GPL net/netfilter/nf_synproxy_core 0xa871ba46 nf_synproxy_ipv4_init +EXPORT_SYMBOL_GPL net/netfilter/nf_synproxy_core 0xbecd1343 synproxy_parse_options +EXPORT_SYMBOL_GPL net/netfilter/nf_synproxy_core 0xc0fbcad1 synproxy_recv_client_ack_ipv6 +EXPORT_SYMBOL_GPL net/netfilter/nf_synproxy_core 0xca9fc082 synproxy_net_id +EXPORT_SYMBOL_GPL net/netfilter/nf_synproxy_core 0xf57b2f29 nf_synproxy_ipv4_fini +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0x11c3db1e nft_meta_set_eval +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0x1b0fe719 nft_register_obj +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0x1e6b75a3 nft_parse_register +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0x20137d46 nft_chain_validate +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0x292533f0 nft_unregister_expr +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0x322615b3 nft_flowtable_lookup +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0x3251d762 nf_tables_trans_destroy_flush_work +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0x3527d089 nft_data_dump +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0x365b7555 nft_set_lookup_global +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0x41b71e65 nft_trace_enabled +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0x4a318e2d nft_unregister_chain_type +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0x4f23a16f nf_tables_deactivate_set +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0x4f86dc68 nft_do_chain +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0x502eed3d nft_meta_policy +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0x518cec23 __nft_release_basechain +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0x524bf1f9 nft_obj_lookup +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0x5965d2e5 nft_chain_validate_hooks +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0x5d98538a nft_register_expr +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0x5e42bcb5 nft_chain_validate_dependency +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0x6029c8ba nft_meta_get_dump +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0x6e67baf8 nft_meta_set_dump +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0x7a065300 nft_unregister_obj +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0x7fcb51a9 nft_data_release +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0x81a53cd0 nft_dump_register +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0x85430a76 nft_validate_register_load +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0x8ae2dc3d nft_meta_get_eval +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0x9c35d1b9 nf_tables_bind_set +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0xaf34b7a5 nft_register_flowtable_type +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0xbe670f9c nft_set_elem_destroy +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0xcc7b496d nft_meta_set_init +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0xcd6bea63 nf_tables_deactivate_flowtable +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0xcd764355 nf_tables_destroy_set +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0xd1f6e45c nft_unregister_flowtable_type +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0xd201bacc nft_meta_set_validate +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0xd463dc79 nft_meta_get_init +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0xd6327b4b nft_meta_set_destroy +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0xd68c3e5b nft_register_chain_type +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0xde57b5f5 nft_parse_u32_check +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0xf29ed280 nft_data_init +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0xf3c233f6 nft_obj_notify +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0xf736a23b nft_validate_register_store +EXPORT_SYMBOL_GPL net/netfilter/nfnetlink 0x363491d4 nfnetlink_unicast +EXPORT_SYMBOL_GPL net/netfilter/nfnetlink 0x3dee86bd nfnetlink_subsys_register +EXPORT_SYMBOL_GPL net/netfilter/nfnetlink 0x51c7a2d3 nfnetlink_subsys_unregister +EXPORT_SYMBOL_GPL net/netfilter/nfnetlink 0x5ce3b588 nfnl_lock +EXPORT_SYMBOL_GPL net/netfilter/nfnetlink 0x89bd5fe1 nfnetlink_set_err +EXPORT_SYMBOL_GPL net/netfilter/nfnetlink 0x927d96b4 nfnetlink_send +EXPORT_SYMBOL_GPL net/netfilter/nfnetlink 0xdb065657 nfnl_unlock +EXPORT_SYMBOL_GPL net/netfilter/nfnetlink 0xe792f7c0 nfnetlink_has_listeners +EXPORT_SYMBOL_GPL net/netfilter/nfnetlink_acct 0x733799ae nfnl_acct_find_get +EXPORT_SYMBOL_GPL net/netfilter/nfnetlink_acct 0x9450bf9d nfnl_acct_overquota +EXPORT_SYMBOL_GPL net/netfilter/nfnetlink_acct 0xbecf5d14 nfnl_acct_put +EXPORT_SYMBOL_GPL net/netfilter/nfnetlink_acct 0xe309234f nfnl_acct_update +EXPORT_SYMBOL_GPL net/netfilter/nfnetlink_osf 0x35eff5e0 nf_osf_fingers +EXPORT_SYMBOL_GPL net/netfilter/nfnetlink_osf 0x7a38aeab nf_osf_match +EXPORT_SYMBOL_GPL net/netfilter/nfnetlink_osf 0xb7141c92 nf_osf_find +EXPORT_SYMBOL_GPL net/netfilter/nft_fib 0x516bb4ee nft_fib_init +EXPORT_SYMBOL_GPL net/netfilter/nft_fib 0x8d8e5d3d nft_fib_dump +EXPORT_SYMBOL_GPL net/netfilter/nft_fib 0x96b81e4f nft_fib_store_result +EXPORT_SYMBOL_GPL net/netfilter/nft_fib 0xa8ddb95a nft_fib_validate +EXPORT_SYMBOL_GPL net/netfilter/nft_reject 0x105b07e2 nft_reject_policy +EXPORT_SYMBOL_GPL net/netfilter/nft_reject 0x174b781f nft_reject_validate +EXPORT_SYMBOL_GPL net/netfilter/nft_reject 0x1de558c1 nft_reject_icmpv6_code +EXPORT_SYMBOL_GPL net/netfilter/nft_reject 0x3006421e nft_reject_init +EXPORT_SYMBOL_GPL net/netfilter/nft_reject 0x5bcb1f9f nft_reject_dump +EXPORT_SYMBOL_GPL net/netfilter/nft_reject 0xe2c84666 nft_reject_icmp_code +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0x04e27719 xt_compat_flush_offsets +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0x0cc67086 xt_compat_match_to_user +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0x1420d3c1 xt_compat_match_from_user +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0x2496a9a5 xt_match_to_user +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0x24c8e482 xt_copy_counters_from_user +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0x26091bab xt_check_match +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0x396fd967 xt_register_table +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0x423ab7e1 xt_replace_table +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0x45f7684e xt_check_target +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0x5921e108 xt_table_unlock +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0x5dca6cf9 xt_request_find_target +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0x600a618b xt_hook_ops_alloc +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0x689691dd xt_target_to_user +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0x6ba07d88 xt_find_table_lock +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 0x85430402 xt_unregister_table +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0x969730d3 xt_compat_target_to_user +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0x97bdb24f xt_request_find_table_lock +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0x9c995c69 xt_percpu_counter_alloc +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0xa5a82c9c xt_proto_init +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0xa7c94f1d xt_compat_lock +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0xb8d52442 xt_compat_target_offset +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0xbfacb837 xt_percpu_counter_free +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0xc7fae024 xt_compat_calc_jump +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 0xd9a24f81 xt_request_find_match +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0xddf68fc6 xt_find_revision +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0xe03807f5 xt_compat_target_from_user +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0xe11a9d0e xt_proto_fini +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0xeac40a5e xt_compat_match_offset +EXPORT_SYMBOL_GPL net/netfilter/xt_RATEEST 0x9772adeb xt_rateest_lookup +EXPORT_SYMBOL_GPL net/netfilter/xt_RATEEST 0xb928511f xt_rateest_put +EXPORT_SYMBOL_GPL net/nsh/nsh 0x34dff809 nsh_push +EXPORT_SYMBOL_GPL net/nsh/nsh 0xdfc639ef nsh_pop +EXPORT_SYMBOL_GPL net/openvswitch/openvswitch 0x6cb2791e ovs_vport_free +EXPORT_SYMBOL_GPL net/openvswitch/openvswitch 0x74d4532a ovs_vport_ops_unregister +EXPORT_SYMBOL_GPL net/openvswitch/openvswitch 0x764f1935 ovs_netdev_tunnel_destroy +EXPORT_SYMBOL_GPL net/openvswitch/openvswitch 0x839ece7b ovs_netdev_link +EXPORT_SYMBOL_GPL net/openvswitch/openvswitch 0x998427c3 ovs_vport_alloc +EXPORT_SYMBOL_GPL net/openvswitch/openvswitch 0xe2d25732 __ovs_vport_ops_register +EXPORT_SYMBOL_GPL net/psample/psample 0x50d24ec7 psample_group_take +EXPORT_SYMBOL_GPL net/psample/psample 0x7499cddb psample_sample_packet +EXPORT_SYMBOL_GPL net/psample/psample 0x86ab9d5a psample_group_get +EXPORT_SYMBOL_GPL net/psample/psample 0x8d42282d psample_group_put +EXPORT_SYMBOL_GPL net/rds/rds 0x00a467af rds_wq +EXPORT_SYMBOL_GPL net/rds/rds 0x0c797907 rds_connect_complete +EXPORT_SYMBOL_GPL net/rds/rds 0x1a39f5d1 rds_connect_path_complete +EXPORT_SYMBOL_GPL net/rds/rds 0x1a522a6e rds_send_drop_acked +EXPORT_SYMBOL_GPL net/rds/rds 0x1b1b00a0 rds_info_register_func +EXPORT_SYMBOL_GPL net/rds/rds 0x219f096c rds_inc_init +EXPORT_SYMBOL_GPL net/rds/rds 0x2613db12 rds_conn_path_drop +EXPORT_SYMBOL_GPL net/rds/rds 0x2b0d543c rds_message_add_extension +EXPORT_SYMBOL_GPL net/rds/rds 0x36087aa4 rds_stats +EXPORT_SYMBOL_GPL net/rds/rds 0x38dc3523 rds_message_put +EXPORT_SYMBOL_GPL net/rds/rds 0x45a4781e rds_addr_cmp +EXPORT_SYMBOL_GPL net/rds/rds 0x487565d1 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 0x67906b26 rds_inc_put +EXPORT_SYMBOL_GPL net/rds/rds 0x689e29f7 rds_rdma_send_complete +EXPORT_SYMBOL_GPL net/rds/rds 0x6e5d517c rds_conn_path_connect_if_down +EXPORT_SYMBOL_GPL net/rds/rds 0x7b399e66 rds_page_remainder_alloc +EXPORT_SYMBOL_GPL net/rds/rds 0x8ad980e4 rds_message_unmapped +EXPORT_SYMBOL_GPL net/rds/rds 0x8bf3062a rds_message_addref +EXPORT_SYMBOL_GPL net/rds/rds 0x94c4feec rds_for_each_conn_info +EXPORT_SYMBOL_GPL net/rds/rds 0x9d3193f1 rds_cong_map_updated +EXPORT_SYMBOL_GPL net/rds/rds 0xacd1ee41 rds_send_xmit +EXPORT_SYMBOL_GPL net/rds/rds 0xb2b78917 rds_atomic_send_complete +EXPORT_SYMBOL_GPL net/rds/rds 0xb397596d rds_trans_register +EXPORT_SYMBOL_GPL net/rds/rds 0xbb89cad1 rds_send_ping +EXPORT_SYMBOL_GPL net/rds/rds 0xbdeff14c rds_inc_path_init +EXPORT_SYMBOL_GPL net/rds/rds 0xbe9c3c31 rds_conn_connect_if_down +EXPORT_SYMBOL_GPL net/rds/rds 0xc2dab779 rds_info_copy +EXPORT_SYMBOL_GPL net/rds/rds 0xc5626f1a rds_send_path_drop_acked +EXPORT_SYMBOL_GPL net/rds/rds 0xc6a969ec rds_conn_drop +EXPORT_SYMBOL_GPL net/rds/rds 0xde18553e rds_conn_destroy +EXPORT_SYMBOL_GPL net/rds/rds 0xe3dcd631 rds_info_deregister_func +EXPORT_SYMBOL_GPL net/rds/rds 0xe405032a rds_send_path_reset +EXPORT_SYMBOL_GPL net/rds/rds 0xef27c5b6 rds_conn_create +EXPORT_SYMBOL_GPL net/rds/rds 0xf1bbab74 rds_stats_info_copy +EXPORT_SYMBOL_GPL net/rds/rds 0xf665e1fa rds_recv_incoming +EXPORT_SYMBOL_GPL net/rds/rds 0xfec32094 rds_conn_create_outgoing +EXPORT_SYMBOL_GPL net/sched/sch_pie 0x67a99a0c pie_drop_early +EXPORT_SYMBOL_GPL net/sched/sch_pie 0x6ce9b467 pie_calculate_probability +EXPORT_SYMBOL_GPL net/sched/sch_pie 0x7692f112 pie_process_dequeue +EXPORT_SYMBOL_GPL net/sched/sch_taprio 0x3aef7c97 taprio_offload_get +EXPORT_SYMBOL_GPL net/sched/sch_taprio 0x3dff2951 taprio_offload_free +EXPORT_SYMBOL_GPL net/sctp/sctp 0x980b9d31 sctp_transport_lookup_process +EXPORT_SYMBOL_GPL net/sctp/sctp 0xdd028ca9 sctp_for_each_endpoint +EXPORT_SYMBOL_GPL net/sctp/sctp 0xe900dc3d sctp_for_each_transport +EXPORT_SYMBOL_GPL net/sctp/sctp 0xfd3e0879 sctp_get_sctp_info +EXPORT_SYMBOL_GPL net/smc/smc 0x0119f408 smcd_free_dev +EXPORT_SYMBOL_GPL net/smc/smc 0x1e2af3b0 smcd_unregister_dev +EXPORT_SYMBOL_GPL net/smc/smc 0x2945e506 smcd_register_dev +EXPORT_SYMBOL_GPL net/smc/smc 0x388049da smc_hash_sk +EXPORT_SYMBOL_GPL net/smc/smc 0x74c6fdb2 smcd_alloc_dev +EXPORT_SYMBOL_GPL net/smc/smc 0x7db5bb97 smc_unhash_sk +EXPORT_SYMBOL_GPL net/smc/smc 0x98b0b070 smcd_handle_irq +EXPORT_SYMBOL_GPL net/smc/smc 0xa7d250e2 smc_proto +EXPORT_SYMBOL_GPL net/smc/smc 0xbb572b96 smc_proto6 +EXPORT_SYMBOL_GPL net/smc/smc 0xe53c94cd smcd_handle_event +EXPORT_SYMBOL_GPL net/sunrpc/auth_gss/auth_rpcgss 0x2aade398 svcauth_gss_flavor +EXPORT_SYMBOL_GPL net/sunrpc/auth_gss/auth_rpcgss 0x38d3dce5 g_make_token_header +EXPORT_SYMBOL_GPL net/sunrpc/auth_gss/auth_rpcgss 0x3fd5701e gss_mech_unregister +EXPORT_SYMBOL_GPL net/sunrpc/auth_gss/auth_rpcgss 0x482ac5a4 g_token_size +EXPORT_SYMBOL_GPL net/sunrpc/auth_gss/auth_rpcgss 0x7f80ac11 svcauth_gss_register_pseudoflavor +EXPORT_SYMBOL_GPL net/sunrpc/auth_gss/auth_rpcgss 0xca7c0720 gss_mech_register +EXPORT_SYMBOL_GPL net/sunrpc/auth_gss/auth_rpcgss 0xd7673035 g_verify_token_header +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x0165c826 rpc_num_bc_slots +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x0247f848 rpc_proc_unregister +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x04a332da rpc_sleep_on +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x05699551 svc_rqst_alloc +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 0x065b6515 rpc_pipe_generic_upcall +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x08a8efa8 cache_unregister_net +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x08f144c6 rpc_count_iostats_metrics +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x0c28e46b svcauth_unix_set_client +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x0e1a8ed1 sunrpc_cache_unhash +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x0ec6c829 svc_proc_register +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x0f11fd75 rpc_max_bc_payload +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x0f9bf107 xprt_complete_rqst +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x111812a2 xprt_reconnect_backoff +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x11aeab65 gssd_running +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x1201b02a cache_seq_next_rcu +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x1234bf5c svc_bind +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x13918849 svc_process +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x14df6965 svc_rpcb_cleanup +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x16198a32 xprt_adjust_cwnd +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x1a081dab rpc_destroy_wait_queue +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x1e119a79 rpcauth_get_pseudoflavor +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x1e6ef871 xprt_request_get_cong +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x201bd7fd xdr_encode_array2 +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x203b3626 rpc_sleep_on_priority_timeout +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x210d6efb rpc_clnt_swap_activate +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x21d3fb42 xprt_get +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x2645ce29 svc_reserve +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x26bfc68b xdr_init_decode +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x2727889a sunrpc_cache_lookup_rcu +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x2728b54f rpcauth_destroy_credcache +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x274a71cf xprt_release_rqst_cong +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x28059602 sunrpc_init_cache_detail +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x29010159 rpc_clnt_add_xprt +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x2919b156 xdr_decode_string_inplace +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x2ba733fc rpc_max_payload +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x2d629d29 xdr_decode_array2 +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x2db13349 unix_domain_find +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x3124bd3e rpc_machine_cred +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x31a89d59 rpc_debug +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x3288d3b6 sunrpc_cache_pipe_upcall_timeout +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x332dedd0 xprt_reserve_xprt +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x334a215c rpc_call_sync +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x369899a3 rpc_sleep_on_timeout +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x372af2da rpc_bind_new_program +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x372f3c0a rpc_call_start +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x387e1639 rpc_pipefs_notifier_register +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x395a6750 rpc_uaddr2sockaddr +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x3a51dabb rpc_put_task +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x3cb561cc svc_shutdown_net +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x3cbbf7a8 xdr_process_buf +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x3eb201dd rpc_pton +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x3f2f5895 rpcb_getport_async +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x3f9a2b0b rpcauth_get_gssinfo +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x3fd91db4 rpcauth_create +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x400769b5 rpc_init_pipe_dir_object +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x4131584a svcauth_unix_purge +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x41b5e466 rpc_switch_client_transport +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x41daa635 rpc_alloc_iostats +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x4202da16 xprt_update_rtt +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x42bff6ee xprt_release_xprt +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x431dadaf rpcauth_unwrap_resp_decode +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x453efa54 svc_pool_map +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x455df96c rpc_find_or_alloc_pipe_dir_object +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x45f19771 xdr_write_pages +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x4606e573 rpc_wake_up_queued_task +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x47daa840 xprt_wait_for_reply_request_def +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x496d3ae7 svc_xprt_enqueue +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x49961bbe xprt_free +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x49bbd615 read_bytes_from_xdr_buf +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x4a004cc6 sunrpc_cache_pipe_upcall +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x4a190a1f xdr_stream_pos +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x4af2e762 rpc_add_pipe_dir_object +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x4afedab1 xprtiod_workqueue +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x4b0c964b rpc_wake_up_first +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x4d6884ac rpc_peeraddr +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x4dac77f0 xdr_encode_netobj +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x4e79ccab svc_wake_up +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x4e8f6ca7 sunrpc_net_id +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x4f50277d xdr_commit_encode +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x50109109 rpc_shutdown_client +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x501ba16a svc_fill_symlink_pathname +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x50ef6965 svc_proc_unregister +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x5108ee29 xdr_stream_decode_string_dup +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x52606593 svc_prepare_thread +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x527eaf42 rpc_clone_client +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x52e887ba sunrpc_cache_update +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x53445f68 nlm_debug +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x53af1782 rpc_get_sb_net +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x53f09353 svc_unreg_xprt_class +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x5620dd35 svc_xprt_copy_addrs +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x56c4216d rpc_count_iostats +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x584a65aa rpc_restart_call +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x590a3181 rpc_clnt_xprt_switch_put +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x5983ecc5 rpc_mkpipe_dentry +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x5a45ba31 svc_auth_unregister +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x5afd324d svc_set_num_threads +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x5c7398ab rpc_exit +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x5c9d7f43 rpc_clnt_xprt_switch_has_addr +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x604f6eb6 svc_recv +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x6188faa2 svc_encode_read_payload +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x65e94584 xprt_unpin_rqst +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x69efff95 xdr_set_scratch_buffer +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x69f7f96d xprt_write_space +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x6b5d47bf svc_xprt_do_enqueue +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x6c7246a6 svc_rqst_free +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x6e5364e3 rpc_call_async +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x6eab0eae svc_find_xprt +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x6eb306ce xdr_stream_decode_opaque +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x6ed0ef82 rpcauth_lookup_credcache +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x6ed7261b rpc_clnt_iterate_for_each_xprt +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x71fa908a cache_flush +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x730cb737 cache_purge +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x73a2828e sunrpc_cache_unregister_pipefs +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x73bf4bf9 xprt_alloc_slot +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x7572028a svc_create +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x7575d185 rpc_unlink +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x777dfd87 svc_max_payload +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x7951b0b6 xprt_unregister_transport +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x7a4fead3 rpc_call_null +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x7c591d15 xprt_lookup_rqst +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x7ddd05a9 xprt_pin_rqst +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x7de53067 rpc_init_rtt +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x7ed6eff8 xdr_enter_page +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x7ef31552 rpc_delay +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x7f96588c rpc_wake_up_next +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x84879163 xprt_put +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x85c273c9 rpc_mkpipe_data +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x85ea96f8 rpc_clone_client_set_auth +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x85efa4c6 xdr_inline_decode +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x87ebc06f svc_destroy +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x88b66ac9 svc_sock_update_bufs +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x8a06feb9 rpc_release_client +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x8a18ad60 xdr_shift_buf +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x8aa1b246 rpc_killall_tasks +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x8bc3e0ce xprt_destroy_backchannel +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x8f6b4d26 xdr_stream_decode_opaque_dup +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x907181f9 svc_age_temp_xprts_now +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x90ddb1be xprt_force_disconnect +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x91194aa8 cache_create_net +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x91ddcba4 rpcauth_unregister +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x91fde119 __rpc_wait_for_completion_task +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x9472e08a rpc_ntop +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x9546b883 rpc_clnt_swap_deactivate +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x96a09074 svc_xprt_put +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x970b82d1 rpc_clnt_xprt_switch_add_xprt +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x981b4833 put_rpccred +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x992580f2 svc_create_pooled +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x9a10d26b xprt_reserve_xprt_cong +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x9a1260c8 xdr_buf_subsegment +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x9d2ff579 svc_xprt_names +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x9e1cd4d7 xdr_buf_from_iov +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x9ed88c71 auth_domain_lookup +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x9faaaafb rpc_prepare_reply_pages +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xa007fadc cache_seq_start_rcu +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xa0fd4769 rpc_create +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xa13acdb8 svc_pool_map_put +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xa22dc281 rpc_restart_call_prepare +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xa23bdcd0 rpc_set_connect_timeout +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xa336055f xprt_free_slot +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xa36185a3 rpcauth_lookupcred +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xa4cb27d2 svc_set_client +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xa5a97820 xdr_inline_pages +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xa7aa42af rpc_setbufsize +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xa8dcaba7 svc_seq_show +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xa9eac4cc svc_xprt_init +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xaa5b1004 rpc_d_lookup_sb +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xaaf82c34 rpcauth_init_cred +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xaba28a37 rpc_free_iostats +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xabc4edc5 rpc_task_timeout +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xac978f2d rpc_run_task +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xad02d59b rpcauth_stringify_acceptor +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xadc72327 cache_destroy_net +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xae71e4d0 rpc_net_ns +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xaebbd0d3 rpc_clnt_test_and_add_xprt +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xaf5bf6ef nfs_debug +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xb07c5647 xprt_setup_backchannel +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xb1244132 bc_svc_process +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xb19d3ae8 rpc_localaddr +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xb312d0c4 svc_pool_map_get +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xb481dbb6 rpc_free +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xb51a3724 rpc_pipefs_notifier_unregister +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xb6e05c1f xprt_wait_for_reply_request_rtt +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xb6f67a76 rpc_proc_register +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xb9a61274 xdr_decode_word +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xba37f12a svc_auth_register +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xbdb2ea67 xprt_wait_for_buffer_space +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xbe050954 xprt_reconnect_delay +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xbe318352 rpc_wake_up_status +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xbf22ddb6 rpc_force_rebind +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xbf9d1b96 nfsd_debug +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xc0d94e1d svc_generic_init_request +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xc12435e3 rpc_calc_rto +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xc2cbf57f rpc_wake_up +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xc340bc7b xdr_init_encode +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xc4215af4 xprt_disconnect_done +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xc5937855 xdr_encode_word +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xc8e96dea qword_addhex +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xc93d48d2 svc_alien_sock +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xcaa9536b rpc_put_task_async +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xcab55215 xprt_wake_pending_tasks +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xcbaa203b xprt_release_xprt_cong +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xce0791f0 write_bytes_to_xdr_buf +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xce678a59 xdr_decode_netobj +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xcee467f3 xprt_load_transport +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xcf6506dd xdr_buf_trim +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xcf8e2b49 rpcauth_register +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xd0e93a82 svc_exit_thread +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xd27cdd8d sunrpc_cache_register_pipefs +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xd54c9960 rpc_malloc +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xd5aba5e0 cache_check +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xd66d58ae svc_close_xprt +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xd6a9910f rpc_init_priority_wait_queue +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xdabd1c07 rpc_init_pipe_dir_head +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xdafbb107 svc_reg_xprt_class +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xdb1ad0a8 svc_authenticate +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xdb4f42f9 auth_domain_find +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xdba6014a rpc_task_release_transport +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xdbb38236 svc_return_autherr +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xdede56a4 rpc_init_wait_queue +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xdfcd5925 auth_domain_put +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xe1aff2c9 svc_addsock +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xe205e38f rpc_clnt_show_stats +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xe2ab3816 rpc_remove_pipe_dir_object +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xe37c746b xdr_reserve_space +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xe406e38e svc_generic_rpcbind_set +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xe5919cb1 xdr_encode_opaque +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xe6240251 svc_set_num_threads_sync +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xe6904107 rpc_put_sb_net +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xe7b88dfe svc_print_addr +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xe8332c83 xdr_init_decode_pages +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xe84c880b svc_rpcbind_set_version +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xe8d8b1b5 xdr_read_pages +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xe939cb87 rpcauth_wrap_req_encode +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xe93e28af xprt_register_transport +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xe97f4ce5 qword_get +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xe9fcc65d csum_partial_copy_to_xdr +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xe9fed684 svc_rpcb_setup +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xea53877c xprt_alloc +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xecd53166 rpc_queue_upcall +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xedcf6be4 qword_add +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xeeacab69 rpc_update_rtt +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xeeaff05b _copy_from_pages +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xeec5f2d2 rpc_peeraddr2str +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xf3314ea4 cache_seq_stop_rcu +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xf3723c28 svc_create_xprt +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xf3cec5ee xdr_terminate_string +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xf682b235 rpc_clnt_setup_test_and_add_xprt +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xf6950eb4 sunrpc_destroy_cache_detail +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xf6dda11b rpc_sleep_on_priority +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xf6eefdd8 rpcauth_init_credcache +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xf825ebc3 xdr_stream_decode_string +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xf865c489 cache_register_net +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xf8caa451 svc_drop +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xf9c0437e rpc_destroy_pipe_data +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xfaf31558 svc_fill_write_vector +EXPORT_SYMBOL_GPL net/tls/tls 0x09003451 tls_device_sk_destruct +EXPORT_SYMBOL_GPL net/tls/tls 0x4c4aa979 tls_offload_tx_resync_request +EXPORT_SYMBOL_GPL net/tls/tls 0x506cfe50 tls_encrypt_skb +EXPORT_SYMBOL_GPL net/tls/tls 0xd82e9881 tls_validate_xmit_skb +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 0x17e4686d virtio_transport_notify_send_init +EXPORT_SYMBOL_GPL net/vmw_vsock/vmw_vsock_virtio_transport_common 0x18481018 virtio_transport_notify_recv_pre_block +EXPORT_SYMBOL_GPL net/vmw_vsock/vmw_vsock_virtio_transport_common 0x267b1955 virtio_transport_notify_poll_out +EXPORT_SYMBOL_GPL net/vmw_vsock/vmw_vsock_virtio_transport_common 0x2b5b53c5 virtio_transport_notify_recv_init +EXPORT_SYMBOL_GPL net/vmw_vsock/vmw_vsock_virtio_transport_common 0x2ee0cdf1 virtio_transport_shutdown +EXPORT_SYMBOL_GPL net/vmw_vsock/vmw_vsock_virtio_transport_common 0x32a54d5d virtio_transport_recv_pkt +EXPORT_SYMBOL_GPL net/vmw_vsock/vmw_vsock_virtio_transport_common 0x33abc278 virtio_transport_dgram_bind +EXPORT_SYMBOL_GPL net/vmw_vsock/vmw_vsock_virtio_transport_common 0x367f1493 virtio_transport_dgram_enqueue +EXPORT_SYMBOL_GPL net/vmw_vsock/vmw_vsock_virtio_transport_common 0x50b87a04 virtio_transport_dgram_dequeue +EXPORT_SYMBOL_GPL net/vmw_vsock/vmw_vsock_virtio_transport_common 0x50d5d099 virtio_transport_connect +EXPORT_SYMBOL_GPL net/vmw_vsock/vmw_vsock_virtio_transport_common 0x5fb9c9f6 virtio_transport_stream_has_space +EXPORT_SYMBOL_GPL net/vmw_vsock/vmw_vsock_virtio_transport_common 0x6f7d06bd virtio_transport_notify_send_post_enqueue +EXPORT_SYMBOL_GPL net/vmw_vsock/vmw_vsock_virtio_transport_common 0x817ee9d1 virtio_transport_stream_has_data +EXPORT_SYMBOL_GPL net/vmw_vsock/vmw_vsock_virtio_transport_common 0x84b51f6f virtio_transport_notify_recv_pre_dequeue +EXPORT_SYMBOL_GPL net/vmw_vsock/vmw_vsock_virtio_transport_common 0x851208ff virtio_transport_notify_send_pre_block +EXPORT_SYMBOL_GPL net/vmw_vsock/vmw_vsock_virtio_transport_common 0x8c6fe4a7 virtio_transport_stream_is_active +EXPORT_SYMBOL_GPL net/vmw_vsock/vmw_vsock_virtio_transport_common 0x8e141f4b virtio_transport_do_socket_init +EXPORT_SYMBOL_GPL net/vmw_vsock/vmw_vsock_virtio_transport_common 0x9aac5397 virtio_transport_notify_send_pre_enqueue +EXPORT_SYMBOL_GPL net/vmw_vsock/vmw_vsock_virtio_transport_common 0xa5660895 virtio_transport_stream_dequeue +EXPORT_SYMBOL_GPL net/vmw_vsock/vmw_vsock_virtio_transport_common 0xa783811b virtio_transport_notify_poll_in +EXPORT_SYMBOL_GPL net/vmw_vsock/vmw_vsock_virtio_transport_common 0xab185fb7 virtio_transport_stream_rcvhiwat +EXPORT_SYMBOL_GPL net/vmw_vsock/vmw_vsock_virtio_transport_common 0xb840cdf4 virtio_transport_deliver_tap_pkt +EXPORT_SYMBOL_GPL net/vmw_vsock/vmw_vsock_virtio_transport_common 0xb97cee30 virtio_transport_stream_enqueue +EXPORT_SYMBOL_GPL net/vmw_vsock/vmw_vsock_virtio_transport_common 0xb9d7803a virtio_transport_put_credit +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 0xc5534f3e virtio_transport_notify_recv_post_dequeue +EXPORT_SYMBOL_GPL net/vmw_vsock/vmw_vsock_virtio_transport_common 0xc7f9be5a virtio_transport_get_credit +EXPORT_SYMBOL_GPL net/vmw_vsock/vmw_vsock_virtio_transport_common 0xcbcdabe1 virtio_transport_destruct +EXPORT_SYMBOL_GPL net/vmw_vsock/vmw_vsock_virtio_transport_common 0xcc068993 virtio_transport_inc_tx_pkt +EXPORT_SYMBOL_GPL net/vmw_vsock/vmw_vsock_virtio_transport_common 0xcc2602c4 virtio_transport_notify_buffer_size +EXPORT_SYMBOL_GPL net/vmw_vsock/vmw_vsock_virtio_transport_common 0xdff464e6 virtio_transport_free_pkt +EXPORT_SYMBOL_GPL net/vmw_vsock/vmw_vsock_virtio_transport_common 0xee5f662c virtio_transport_release +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0x1322a3c2 vsock_enqueue_accept +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0x149f3c7f vsock_find_connected_socket +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0x1699e97f vsock_add_tap +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0x16d56fb0 vsock_find_bound_socket +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0x1d1a339f vsock_stream_has_space +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0x2663cb64 vsock_addr_equals_addr +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0x284e07d8 vsock_bind_table +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0x3aa11689 vsock_remove_sock +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0x43a682d7 vsock_for_each_connected_socket +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0x60ea31c7 vsock_stream_has_data +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0x6fa9d345 vsock_remove_tap +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0x73879664 vsock_addr_init +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0x751ff010 vsock_addr_unbind +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0x7e0b4374 vsock_create_connected +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0x8607f791 vsock_insert_connected +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0x870bb9b3 vsock_core_get_transport +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0x8d1d317b vsock_remove_pending +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0x8fd3835c vsock_remove_connected +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0x902f2694 vsock_assign_transport +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0x90aa8549 vsock_find_cid +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0x9bb6fd09 vsock_connected_table +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0xa0c178e5 vsock_addr_cast +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0xaab3989d vsock_remove_bound +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0xb64d00f4 vsock_table_lock +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0xbd0f699d vsock_addr_bound +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0xd14df5e0 vsock_core_register +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0xd95ac116 vsock_addr_validate +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0xdbf73eae vsock_deliver_tap +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0xdddd8e99 vsock_core_unregister +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0xfd4d9d84 vsock_add_pending +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 0x77f370e7 ipcomp_input +EXPORT_SYMBOL_GPL net/xfrm/xfrm_ipcomp 0xcf474bf2 ipcomp_output +EXPORT_SYMBOL_GPL net/xfrm/xfrm_ipcomp 0xda3a57da ipcomp_init_state +EXPORT_SYMBOL_GPL net/xfrm/xfrm_ipcomp 0xfe73253f ipcomp_destroy +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 0x001f4c4f crypto_shash_finup +EXPORT_SYMBOL_GPL vmlinux 0x00513f58 get_timespec64 +EXPORT_SYMBOL_GPL vmlinux 0x007a5770 fsnotify_add_mark +EXPORT_SYMBOL_GPL vmlinux 0x008516f9 pcie_bus_configure_settings +EXPORT_SYMBOL_GPL vmlinux 0x00b457fe iomap_invalidatepage +EXPORT_SYMBOL_GPL vmlinux 0x00c4724a gpio_to_desc +EXPORT_SYMBOL_GPL vmlinux 0x013bd439 cpci_hp_register_bus +EXPORT_SYMBOL_GPL vmlinux 0x013cb5f0 xfrm_state_afinfo_get_rcu +EXPORT_SYMBOL_GPL vmlinux 0x01413c5f css_schedule_reprobe +EXPORT_SYMBOL_GPL vmlinux 0x0158ac1a platform_get_irq +EXPORT_SYMBOL_GPL vmlinux 0x015fd5f0 __tracepoint_pelt_irq_tp +EXPORT_SYMBOL_GPL vmlinux 0x0181a417 crypto_unregister_shashes +EXPORT_SYMBOL_GPL vmlinux 0x01a44567 crypto_inst_setname +EXPORT_SYMBOL_GPL vmlinux 0x01a96c2c bio_clone_blkg_association +EXPORT_SYMBOL_GPL vmlinux 0x01aac216 iommu_aux_attach_device +EXPORT_SYMBOL_GPL vmlinux 0x01d79616 kick_process +EXPORT_SYMBOL_GPL vmlinux 0x01f88377 sbitmap_queue_min_shallow_depth +EXPORT_SYMBOL_GPL vmlinux 0x021774ad device_register +EXPORT_SYMBOL_GPL vmlinux 0x02191fde __i2c_board_lock +EXPORT_SYMBOL_GPL vmlinux 0x02394899 play_idle_precise +EXPORT_SYMBOL_GPL vmlinux 0x0251f24c pcie_port_find_device +EXPORT_SYMBOL_GPL vmlinux 0x025c1948 sk_psock_drop +EXPORT_SYMBOL_GPL vmlinux 0x027a79d9 idr_alloc_u32 +EXPORT_SYMBOL_GPL vmlinux 0x027eee0e request_firmware_direct +EXPORT_SYMBOL_GPL vmlinux 0x0293dc55 perf_event_update_userpage +EXPORT_SYMBOL_GPL vmlinux 0x029eca4c wbt_disable_default +EXPORT_SYMBOL_GPL vmlinux 0x029f25a5 gpiod_export +EXPORT_SYMBOL_GPL vmlinux 0x02d01dc3 unregister_kretprobe +EXPORT_SYMBOL_GPL vmlinux 0x02e08d12 direct_make_request +EXPORT_SYMBOL_GPL vmlinux 0x02e33f7c sched_trace_rq_cpu +EXPORT_SYMBOL_GPL vmlinux 0x02e62798 sysfs_remove_groups +EXPORT_SYMBOL_GPL vmlinux 0x02eb1f8a skcipher_walk_aead_decrypt +EXPORT_SYMBOL_GPL vmlinux 0x02ff25ef pci_intx +EXPORT_SYMBOL_GPL vmlinux 0x03135778 input_ff_erase +EXPORT_SYMBOL_GPL vmlinux 0x0314aedb ping_bind +EXPORT_SYMBOL_GPL vmlinux 0x03420d87 dm_suspended +EXPORT_SYMBOL_GPL vmlinux 0x0343bdf1 __i2c_board_list +EXPORT_SYMBOL_GPL vmlinux 0x0344e1a0 sched_setscheduler_nocheck +EXPORT_SYMBOL_GPL vmlinux 0x034dbee9 virtqueue_notify +EXPORT_SYMBOL_GPL vmlinux 0x034f7a40 device_show_int +EXPORT_SYMBOL_GPL vmlinux 0x036de383 perf_event_cgrp_subsys_enabled_key +EXPORT_SYMBOL_GPL vmlinux 0x03750c8b inet6_compat_ioctl +EXPORT_SYMBOL_GPL vmlinux 0x03952887 ktime_add_safe +EXPORT_SYMBOL_GPL vmlinux 0x03965fb3 iommu_unregister_device_fault_handler +EXPORT_SYMBOL_GPL vmlinux 0x03a86167 gmap_unmap_segment +EXPORT_SYMBOL_GPL vmlinux 0x03c12dfe cancel_work_sync +EXPORT_SYMBOL_GPL vmlinux 0x03ce7234 sched_smt_present +EXPORT_SYMBOL_GPL vmlinux 0x03d08c39 crypto_comp_decompress +EXPORT_SYMBOL_GPL vmlinux 0x03ddc20f class_dev_iter_init +EXPORT_SYMBOL_GPL vmlinux 0x03ea1c21 perf_event_create_kernel_counter +EXPORT_SYMBOL_GPL vmlinux 0x0402cbbf preempt_notifier_inc +EXPORT_SYMBOL_GPL vmlinux 0x041bdbcc mmu_interval_notifier_remove +EXPORT_SYMBOL_GPL vmlinux 0x042d9fb9 iommu_fwspec_free +EXPORT_SYMBOL_GPL vmlinux 0x0444dd97 vfs_lock_file +EXPORT_SYMBOL_GPL vmlinux 0x047391fd devlink_param_value_changed +EXPORT_SYMBOL_GPL vmlinux 0x04a6fee6 software_node_register +EXPORT_SYMBOL_GPL vmlinux 0x04bb7848 elv_unregister +EXPORT_SYMBOL_GPL vmlinux 0x04bf0092 io_cgrp_subsys_enabled_key +EXPORT_SYMBOL_GPL vmlinux 0x04c4f603 mpi_get_buffer +EXPORT_SYMBOL_GPL vmlinux 0x04ea8706 __iowrite64_copy +EXPORT_SYMBOL_GPL vmlinux 0x04f1f46c inet6_hash +EXPORT_SYMBOL_GPL vmlinux 0x04f51964 subsys_system_register +EXPORT_SYMBOL_GPL vmlinux 0x050c29ca __get_task_comm +EXPORT_SYMBOL_GPL vmlinux 0x051d660e devlink_port_param_value_changed +EXPORT_SYMBOL_GPL vmlinux 0x052c9aed ktime_get_real_fast_ns +EXPORT_SYMBOL_GPL vmlinux 0x054e550b kernel_halt +EXPORT_SYMBOL_GPL vmlinux 0x0558ddbf tun_get_socket +EXPORT_SYMBOL_GPL vmlinux 0x0558eff2 blk_mq_quiesce_queue_nowait +EXPORT_SYMBOL_GPL vmlinux 0x056a7848 kobject_uevent +EXPORT_SYMBOL_GPL vmlinux 0x0583b387 driver_register +EXPORT_SYMBOL_GPL vmlinux 0x058b582a vt_get_leds +EXPORT_SYMBOL_GPL vmlinux 0x058f9df9 s390_reset_cmma +EXPORT_SYMBOL_GPL vmlinux 0x059f3f9a file_ra_state_init +EXPORT_SYMBOL_GPL vmlinux 0x05a256b6 crypto_unregister_acomps +EXPORT_SYMBOL_GPL vmlinux 0x05a5856b __tracepoint_neigh_cleanup_and_release +EXPORT_SYMBOL_GPL vmlinux 0x05e9dc43 crypto_cipher_encrypt_one +EXPORT_SYMBOL_GPL vmlinux 0x05ed372d gmap_pmdp_invalidate +EXPORT_SYMBOL_GPL vmlinux 0x0604c1d4 fwnode_property_read_string +EXPORT_SYMBOL_GPL vmlinux 0x061a6a17 rht_bucket_nested +EXPORT_SYMBOL_GPL vmlinux 0x061b8aad user_destroy +EXPORT_SYMBOL_GPL vmlinux 0x062eb949 list_lru_destroy +EXPORT_SYMBOL_GPL vmlinux 0x064db9a5 mark_mounts_for_expiry +EXPORT_SYMBOL_GPL vmlinux 0x06945195 crypto_enqueue_request_head +EXPORT_SYMBOL_GPL vmlinux 0x0695034b dm_accept_partial_bio +EXPORT_SYMBOL_GPL vmlinux 0x06aff2c8 device_remove_file_self +EXPORT_SYMBOL_GPL vmlinux 0x06ba0ce7 trace_get_event_file +EXPORT_SYMBOL_GPL vmlinux 0x06cca30b ring_buffer_record_off +EXPORT_SYMBOL_GPL vmlinux 0x06ccdf21 crypto_larval_alloc +EXPORT_SYMBOL_GPL vmlinux 0x07242d92 put_dax +EXPORT_SYMBOL_GPL vmlinux 0x0757eede stack_trace_snprint +EXPORT_SYMBOL_GPL vmlinux 0x07694359 sk_msg_free +EXPORT_SYMBOL_GPL vmlinux 0x076f5ad1 pid_vnr +EXPORT_SYMBOL_GPL vmlinux 0x0772b375 pci_epc_get_first_free_bar +EXPORT_SYMBOL_GPL vmlinux 0x079c148a crypto_register_ahash +EXPORT_SYMBOL_GPL vmlinux 0x07b52e38 rtnl_unregister +EXPORT_SYMBOL_GPL vmlinux 0x07be6905 net_inc_egress_queue +EXPORT_SYMBOL_GPL vmlinux 0x07bf29cd get_cached_msi_msg +EXPORT_SYMBOL_GPL vmlinux 0x07cb7afb sfp_parse_port +EXPORT_SYMBOL_GPL vmlinux 0x07ccad46 __hvc_resize +EXPORT_SYMBOL_GPL vmlinux 0x07d58c0c strp_init +EXPORT_SYMBOL_GPL vmlinux 0x07fa43d6 udp6_lib_lookup_skb +EXPORT_SYMBOL_GPL vmlinux 0x080e8930 get_device +EXPORT_SYMBOL_GPL vmlinux 0x08135613 dax_write_cache +EXPORT_SYMBOL_GPL vmlinux 0x0829ce35 tcp_is_ulp_esp +EXPORT_SYMBOL_GPL vmlinux 0x083ce125 ping_err +EXPORT_SYMBOL_GPL vmlinux 0x08436119 klp_shadow_alloc +EXPORT_SYMBOL_GPL vmlinux 0x084ce4e4 iommu_sva_unbind_device +EXPORT_SYMBOL_GPL vmlinux 0x086fbe5f __wake_up_locked_key_bookmark +EXPORT_SYMBOL_GPL vmlinux 0x08748c84 iommu_device_sysfs_remove +EXPORT_SYMBOL_GPL vmlinux 0x087ec665 lwtunnel_output +EXPORT_SYMBOL_GPL vmlinux 0x08948c6f fat_detach +EXPORT_SYMBOL_GPL vmlinux 0x08ba2930 pci_debug_msg_id +EXPORT_SYMBOL_GPL vmlinux 0x08bcfbcf devres_open_group +EXPORT_SYMBOL_GPL vmlinux 0x08bdb964 xfrm_local_error +EXPORT_SYMBOL_GPL vmlinux 0x08c489ce is_hash_blacklisted +EXPORT_SYMBOL_GPL vmlinux 0x08d3bf02 trace_vprintk +EXPORT_SYMBOL_GPL vmlinux 0x08f57d7f fwnode_graph_get_remote_port +EXPORT_SYMBOL_GPL vmlinux 0x091eb9b4 round_jiffies +EXPORT_SYMBOL_GPL vmlinux 0x0940d327 relay_subbufs_consumed +EXPORT_SYMBOL_GPL vmlinux 0x09627ce9 crypto_grab_spawn +EXPORT_SYMBOL_GPL vmlinux 0x096b2418 __tracepoint_tcp_send_reset +EXPORT_SYMBOL_GPL vmlinux 0x09b53e14 interval_tree_remove +EXPORT_SYMBOL_GPL vmlinux 0x09c907b6 tty_port_register_device_attr +EXPORT_SYMBOL_GPL vmlinux 0x09d85284 irq_set_chained_handler_and_data +EXPORT_SYMBOL_GPL vmlinux 0x09e737b3 blkg_conf_prep +EXPORT_SYMBOL_GPL vmlinux 0x0a2c58e5 fsnotify_put_group +EXPORT_SYMBOL_GPL vmlinux 0x0a6c4041 cn_netlink_send +EXPORT_SYMBOL_GPL vmlinux 0x0a6ce1cc sfp_select_interface +EXPORT_SYMBOL_GPL vmlinux 0x0a7eb1c5 alarm_forward +EXPORT_SYMBOL_GPL vmlinux 0x0a848144 virtqueue_get_used_addr +EXPORT_SYMBOL_GPL vmlinux 0x0ace538f noop_set_page_dirty +EXPORT_SYMBOL_GPL vmlinux 0x0b07abe2 unshare_fs_struct +EXPORT_SYMBOL_GPL vmlinux 0x0b1bb9f9 synchronize_rcu_tasks +EXPORT_SYMBOL_GPL vmlinux 0x0b2db2d5 remove_resource +EXPORT_SYMBOL_GPL vmlinux 0x0b3aa05e ip6_pol_route +EXPORT_SYMBOL_GPL vmlinux 0x0b5dbeae bus_for_each_dev +EXPORT_SYMBOL_GPL vmlinux 0x0b68d791 sbitmap_del_wait_queue +EXPORT_SYMBOL_GPL vmlinux 0x0b6ff5dd scsi_get_vpd_page +EXPORT_SYMBOL_GPL vmlinux 0x0b74c0f3 __devm_irq_alloc_descs +EXPORT_SYMBOL_GPL vmlinux 0x0b86a51d get_net_ns +EXPORT_SYMBOL_GPL vmlinux 0x0bc5481b clock_comparator_max +EXPORT_SYMBOL_GPL vmlinux 0x0bcb2a34 skb_defer_rx_timestamp +EXPORT_SYMBOL_GPL vmlinux 0x0bee233e unix_inq_len +EXPORT_SYMBOL_GPL vmlinux 0x0c2c5802 work_busy +EXPORT_SYMBOL_GPL vmlinux 0x0c328850 skb_send_sock_locked +EXPORT_SYMBOL_GPL vmlinux 0x0c517c37 strp_stop +EXPORT_SYMBOL_GPL vmlinux 0x0c79055d dma_buf_detach +EXPORT_SYMBOL_GPL vmlinux 0x0c7c95e2 crypto_comp_compress +EXPORT_SYMBOL_GPL vmlinux 0x0c7ccce4 hvc_remove +EXPORT_SYMBOL_GPL vmlinux 0x0c7f3206 cgroup_attach_task_all +EXPORT_SYMBOL_GPL vmlinux 0x0cb604c1 pci_epc_get +EXPORT_SYMBOL_GPL vmlinux 0x0cbbbf94 crypto_register_kpp +EXPORT_SYMBOL_GPL vmlinux 0x0cbc7af5 blk_update_request +EXPORT_SYMBOL_GPL vmlinux 0x0cc934bb ip6_route_input_lookup +EXPORT_SYMBOL_GPL vmlinux 0x0cdb613f pci_user_write_config_byte +EXPORT_SYMBOL_GPL vmlinux 0x0ce9bb63 blkdev_ioctl +EXPORT_SYMBOL_GPL vmlinux 0x0d02aec8 __netpoll_setup +EXPORT_SYMBOL_GPL vmlinux 0x0d1d8d08 kvm_read_guest_page +EXPORT_SYMBOL_GPL vmlinux 0x0d1e8a00 inet_csk_listen_start +EXPORT_SYMBOL_GPL vmlinux 0x0d39af1e trace_event_raw_init +EXPORT_SYMBOL_GPL vmlinux 0x0d3cbbba dm_internal_suspend_noflush +EXPORT_SYMBOL_GPL vmlinux 0x0d413211 bpf_prog_create_from_user +EXPORT_SYMBOL_GPL vmlinux 0x0d459213 work_on_cpu_safe +EXPORT_SYMBOL_GPL vmlinux 0x0d4961de nf_log_buf_open +EXPORT_SYMBOL_GPL vmlinux 0x0d631223 debugfs_create_devm_seqfile +EXPORT_SYMBOL_GPL vmlinux 0x0d7bbce9 tty_ldisc_ref +EXPORT_SYMBOL_GPL vmlinux 0x0d9e6783 gpiod_put_array +EXPORT_SYMBOL_GPL vmlinux 0x0ddb1cd7 llist_reverse_order +EXPORT_SYMBOL_GPL vmlinux 0x0df91681 gmap_shadow_r2t +EXPORT_SYMBOL_GPL vmlinux 0x0e2ee0e7 pci_epc_start +EXPORT_SYMBOL_GPL vmlinux 0x0e31c3ca blk_mq_quiesce_queue +EXPORT_SYMBOL_GPL vmlinux 0x0e541f71 __alloc_percpu_gfp +EXPORT_SYMBOL_GPL vmlinux 0x0e5f6d2a security_path_chmod +EXPORT_SYMBOL_GPL vmlinux 0x0e6b79af static_key_disable_cpuslocked +EXPORT_SYMBOL_GPL vmlinux 0x0e7ae911 get_cpu_device +EXPORT_SYMBOL_GPL vmlinux 0x0e7f3102 add_to_page_cache_lru +EXPORT_SYMBOL_GPL vmlinux 0x0e976566 raw_abort +EXPORT_SYMBOL_GPL vmlinux 0x0ebdb0e8 put_pid +EXPORT_SYMBOL_GPL vmlinux 0x0ec4b915 register_asymmetric_key_parser +EXPORT_SYMBOL_GPL vmlinux 0x0eff5544 blkg_rwstat_init +EXPORT_SYMBOL_GPL vmlinux 0x0f180070 ring_buffer_free_read_page +EXPORT_SYMBOL_GPL vmlinux 0x0f1e69ad klist_add_head +EXPORT_SYMBOL_GPL vmlinux 0x0f1f6a9e is_transparent_hugepage +EXPORT_SYMBOL_GPL vmlinux 0x0f342cb0 crypto_shash_setkey +EXPORT_SYMBOL_GPL vmlinux 0x0f62baa6 crypto_unregister_scomps +EXPORT_SYMBOL_GPL vmlinux 0x0f7a5d4f ima_file_check +EXPORT_SYMBOL_GPL vmlinux 0x0f812799 gen_pool_size +EXPORT_SYMBOL_GPL vmlinux 0x0f90f636 dma_buf_map_attachment +EXPORT_SYMBOL_GPL vmlinux 0x0f951934 tty_register_device_attr +EXPORT_SYMBOL_GPL vmlinux 0x0f9ae7b6 dio_end_io +EXPORT_SYMBOL_GPL vmlinux 0x0fe7617c __tracepoint_suspend_resume +EXPORT_SYMBOL_GPL vmlinux 0x10074e54 pci_user_read_config_word +EXPORT_SYMBOL_GPL vmlinux 0x10138352 tracing_on +EXPORT_SYMBOL_GPL vmlinux 0x101d2142 vmf_insert_pfn_pmd_prot +EXPORT_SYMBOL_GPL vmlinux 0x102414af pci_epc_set_bar +EXPORT_SYMBOL_GPL vmlinux 0x1036f0fa ping_seq_next +EXPORT_SYMBOL_GPL vmlinux 0x1070f642 debugfs_create_u32_array +EXPORT_SYMBOL_GPL vmlinux 0x1078e33e __pci_epf_register_driver +EXPORT_SYMBOL_GPL vmlinux 0x1096f56e skb_mpls_update_lse +EXPORT_SYMBOL_GPL vmlinux 0x10bd9ee2 __vring_new_virtqueue +EXPORT_SYMBOL_GPL vmlinux 0x10c2e75a kmsg_dump_register +EXPORT_SYMBOL_GPL vmlinux 0x10d48abe __ip6_local_out +EXPORT_SYMBOL_GPL vmlinux 0x10e89fea crypto_skcipher_setkey +EXPORT_SYMBOL_GPL vmlinux 0x10ef8cf0 ping_init_sock +EXPORT_SYMBOL_GPL vmlinux 0x10fa7c35 __vfs_removexattr_noperm +EXPORT_SYMBOL_GPL vmlinux 0x113986d9 tracing_cond_snapshot_data +EXPORT_SYMBOL_GPL vmlinux 0x1143c21f device_find_child_by_name +EXPORT_SYMBOL_GPL vmlinux 0x1156e57f shash_ahash_update +EXPORT_SYMBOL_GPL vmlinux 0x11587b0c __irq_set_handler +EXPORT_SYMBOL_GPL vmlinux 0x116f033d kvm_init +EXPORT_SYMBOL_GPL vmlinux 0x1171f176 crypto_register_scomps +EXPORT_SYMBOL_GPL vmlinux 0x1182e6ab devm_gpiod_get_from_of_node +EXPORT_SYMBOL_GPL vmlinux 0x118414ff iommu_unmap +EXPORT_SYMBOL_GPL vmlinux 0x11a2e0ac crypto_dh_key_len +EXPORT_SYMBOL_GPL vmlinux 0x11b92d5d scsi_register_device_handler +EXPORT_SYMBOL_GPL vmlinux 0x11c23240 crypto_attr_u32 +EXPORT_SYMBOL_GPL vmlinux 0x11df0e75 devlink_fmsg_binary_pair_nest_start +EXPORT_SYMBOL_GPL vmlinux 0x120f7dff security_file_permission +EXPORT_SYMBOL_GPL vmlinux 0x121d958a unregister_die_notifier +EXPORT_SYMBOL_GPL vmlinux 0x1234e483 get_cpu_iowait_time_us +EXPORT_SYMBOL_GPL vmlinux 0x12705eae wbc_attach_and_unlock_inode +EXPORT_SYMBOL_GPL vmlinux 0x128ada64 blk_insert_cloned_request +EXPORT_SYMBOL_GPL vmlinux 0x12bddfb6 clockevents_register_device +EXPORT_SYMBOL_GPL vmlinux 0x12d899b6 cio_start +EXPORT_SYMBOL_GPL vmlinux 0x12dbc8f6 percpu_ref_switch_to_atomic_sync +EXPORT_SYMBOL_GPL vmlinux 0x12e0913c ipv6_find_tlv +EXPORT_SYMBOL_GPL vmlinux 0x12f54530 kthread_data +EXPORT_SYMBOL_GPL vmlinux 0x12fd3bf1 strp_done +EXPORT_SYMBOL_GPL vmlinux 0x1307f612 mddev_unlock +EXPORT_SYMBOL_GPL vmlinux 0x131c86a6 devres_add +EXPORT_SYMBOL_GPL vmlinux 0x131db64a system_long_wq +EXPORT_SYMBOL_GPL vmlinux 0x133969d7 __trace_printk +EXPORT_SYMBOL_GPL vmlinux 0x13539a67 enable_cmf +EXPORT_SYMBOL_GPL vmlinux 0x135e7ebd firmware_request_nowarn +EXPORT_SYMBOL_GPL vmlinux 0x138e0957 dax_write_cache_enabled +EXPORT_SYMBOL_GPL vmlinux 0x138f3036 scsi_ioctl_block_when_processing_errors +EXPORT_SYMBOL_GPL vmlinux 0x13bd9631 serdev_device_write_room +EXPORT_SYMBOL_GPL vmlinux 0x13ed8784 sdev_evt_alloc +EXPORT_SYMBOL_GPL vmlinux 0x1409ee06 tracing_snapshot_cond_disable +EXPORT_SYMBOL_GPL vmlinux 0x1418238a __tracepoint_cpu_frequency +EXPORT_SYMBOL_GPL vmlinux 0x141f38bf ktime_get_raw_fast_ns +EXPORT_SYMBOL_GPL vmlinux 0x142dde9b ncsi_stop_dev +EXPORT_SYMBOL_GPL vmlinux 0x1445cda1 exportfs_encode_fh +EXPORT_SYMBOL_GPL vmlinux 0x144ebe3e pci_add_dynid +EXPORT_SYMBOL_GPL vmlinux 0x144f7eba crypto_register_akcipher +EXPORT_SYMBOL_GPL vmlinux 0x14b1f289 relay_buf_full +EXPORT_SYMBOL_GPL vmlinux 0x14bc1b5d devm_free_pages +EXPORT_SYMBOL_GPL vmlinux 0x14e6773d register_net_sysctl +EXPORT_SYMBOL_GPL vmlinux 0x14f21c7b ipv6_dup_options +EXPORT_SYMBOL_GPL vmlinux 0x1527e2a0 fwnode_device_is_available +EXPORT_SYMBOL_GPL vmlinux 0x1534695a xdp_return_frame +EXPORT_SYMBOL_GPL vmlinux 0x153643d8 tty_encode_baud_rate +EXPORT_SYMBOL_GPL vmlinux 0x153b60a6 klist_del +EXPORT_SYMBOL_GPL vmlinux 0x15510a89 devlink_fmsg_binary_put +EXPORT_SYMBOL_GPL vmlinux 0x155c55dc tcp_set_state +EXPORT_SYMBOL_GPL vmlinux 0x1568b7fb tty_mode_ioctl +EXPORT_SYMBOL_GPL vmlinux 0x156cdac8 __tracepoint_kfree_skb +EXPORT_SYMBOL_GPL vmlinux 0x156d032d crypto_larval_kill +EXPORT_SYMBOL_GPL vmlinux 0x1572cf43 switchdev_port_obj_del +EXPORT_SYMBOL_GPL vmlinux 0x157bc422 s390_enable_skey +EXPORT_SYMBOL_GPL vmlinux 0x1583c63f fib_nh_common_release +EXPORT_SYMBOL_GPL vmlinux 0x158525f3 fib6_rule_default +EXPORT_SYMBOL_GPL vmlinux 0x15b2d4b0 is_skb_forwardable +EXPORT_SYMBOL_GPL vmlinux 0x15de9998 dm_put +EXPORT_SYMBOL_GPL vmlinux 0x164b1903 crypto_unregister_kpp +EXPORT_SYMBOL_GPL vmlinux 0x16656490 iommu_domain_set_attr +EXPORT_SYMBOL_GPL vmlinux 0x166d6443 __tracepoint_pelt_rt_tp +EXPORT_SYMBOL_GPL vmlinux 0x166f73f7 tpm_get_random +EXPORT_SYMBOL_GPL vmlinux 0x168287db digsig_verify +EXPORT_SYMBOL_GPL vmlinux 0x1684dc15 udp_init_sock +EXPORT_SYMBOL_GPL vmlinux 0x16b69bc8 zpci_store +EXPORT_SYMBOL_GPL vmlinux 0x16cede5c dax_finish_sync_fault +EXPORT_SYMBOL_GPL vmlinux 0x16da1f88 devlink_fmsg_u32_put +EXPORT_SYMBOL_GPL vmlinux 0x16dc952b do_xdp_generic +EXPORT_SYMBOL_GPL vmlinux 0x16deffcf blk_steal_bios +EXPORT_SYMBOL_GPL vmlinux 0x16eb83a2 sk_psock_tls_strp_read +EXPORT_SYMBOL_GPL vmlinux 0x170cc36c put_timespec64 +EXPORT_SYMBOL_GPL vmlinux 0x17149987 trace_print_bitmask_seq +EXPORT_SYMBOL_GPL vmlinux 0x1722f676 kvm_is_visible_gfn +EXPORT_SYMBOL_GPL vmlinux 0x173d16c8 ipv6_proxy_select_ident +EXPORT_SYMBOL_GPL vmlinux 0x1742104c scsi_unregister_device_handler +EXPORT_SYMBOL_GPL vmlinux 0x1748e893 fib_rules_unregister +EXPORT_SYMBOL_GPL vmlinux 0x176031a7 devlink_fmsg_string_put +EXPORT_SYMBOL_GPL vmlinux 0x176abce9 set_task_ioprio +EXPORT_SYMBOL_GPL vmlinux 0x176ceb35 pci_platform_power_transition +EXPORT_SYMBOL_GPL vmlinux 0x17701bfa devlink_resource_size_get +EXPORT_SYMBOL_GPL vmlinux 0x1779893a freq_qos_remove_request +EXPORT_SYMBOL_GPL vmlinux 0x17821687 dst_cache_set_ip6 +EXPORT_SYMBOL_GPL vmlinux 0x17836387 tun_get_tx_ring +EXPORT_SYMBOL_GPL vmlinux 0x1787c86a pci_epc_add_epf +EXPORT_SYMBOL_GPL vmlinux 0x178ebe0d blk_mq_flush_busy_ctxs +EXPORT_SYMBOL_GPL vmlinux 0x17987a72 virtio_finalize_features +EXPORT_SYMBOL_GPL vmlinux 0x17a3993f __tracepoint_block_split +EXPORT_SYMBOL_GPL vmlinux 0x17c49441 list_lru_count_node +EXPORT_SYMBOL_GPL vmlinux 0x17eb9ff1 __scsi_init_queue +EXPORT_SYMBOL_GPL vmlinux 0x17f38a15 devlink_dpipe_table_unregister +EXPORT_SYMBOL_GPL vmlinux 0x18008c59 ring_buffer_resize +EXPORT_SYMBOL_GPL vmlinux 0x182edf13 serdev_controller_alloc +EXPORT_SYMBOL_GPL vmlinux 0x184224e3 vfs_readf +EXPORT_SYMBOL_GPL vmlinux 0x18456ccd iommu_map +EXPORT_SYMBOL_GPL vmlinux 0x18710258 ip6_sk_update_pmtu +EXPORT_SYMBOL_GPL vmlinux 0x1880f2ed balloon_page_list_enqueue +EXPORT_SYMBOL_GPL vmlinux 0x18ba9b0b crypto_unregister_acomp +EXPORT_SYMBOL_GPL vmlinux 0x18dd5bc5 dma_buf_get +EXPORT_SYMBOL_GPL vmlinux 0x18de1641 ip6_input +EXPORT_SYMBOL_GPL vmlinux 0x18fb2caf cpus_read_unlock +EXPORT_SYMBOL_GPL vmlinux 0x19340165 device_get_named_child_node +EXPORT_SYMBOL_GPL vmlinux 0x193dfdf6 klp_get_prev_state +EXPORT_SYMBOL_GPL vmlinux 0x194b6d97 xdp_rxq_info_unreg +EXPORT_SYMBOL_GPL vmlinux 0x19674100 devm_gpiod_get_index_optional +EXPORT_SYMBOL_GPL vmlinux 0x196c1e22 bus_for_each_drv +EXPORT_SYMBOL_GPL vmlinux 0x197b7338 event_triggers_call +EXPORT_SYMBOL_GPL vmlinux 0x198d6da2 fscrypt_ioctl_remove_key_all_users +EXPORT_SYMBOL_GPL vmlinux 0x19941441 rhashtable_destroy +EXPORT_SYMBOL_GPL vmlinux 0x19946fde idr_find +EXPORT_SYMBOL_GPL vmlinux 0x19b7d7dc devm_gpiod_get_array_optional +EXPORT_SYMBOL_GPL vmlinux 0x19c0513e sysfs_notify +EXPORT_SYMBOL_GPL vmlinux 0x19dc1eb3 mnt_want_write +EXPORT_SYMBOL_GPL vmlinux 0x19e2f4cf debugfs_create_bool +EXPORT_SYMBOL_GPL vmlinux 0x19e475b3 __bdev_dax_supported +EXPORT_SYMBOL_GPL vmlinux 0x19e75023 nf_hook_entries_delete_raw +EXPORT_SYMBOL_GPL vmlinux 0x19f462ab kfree_call_rcu +EXPORT_SYMBOL_GPL vmlinux 0x1a10c32b crypto_ft_tab +EXPORT_SYMBOL_GPL vmlinux 0x1a1976c2 inet_ehash_locks_alloc +EXPORT_SYMBOL_GPL vmlinux 0x1a46e6a8 xdp_attachment_setup +EXPORT_SYMBOL_GPL vmlinux 0x1a5b9f4f pci_epc_linkup +EXPORT_SYMBOL_GPL vmlinux 0x1a69c911 find_module +EXPORT_SYMBOL_GPL vmlinux 0x1a6bf28f fsnotify_get_cookie +EXPORT_SYMBOL_GPL vmlinux 0x1aa2dbcc skb_gso_validate_mac_len +EXPORT_SYMBOL_GPL vmlinux 0x1ab2968c __srcu_read_lock +EXPORT_SYMBOL_GPL vmlinux 0x1ac458a1 public_key_signature_free +EXPORT_SYMBOL_GPL vmlinux 0x1acd18c8 cpuset_cgrp_subsys_on_dfl_key +EXPORT_SYMBOL_GPL vmlinux 0x1ada0770 unregister_virtio_driver +EXPORT_SYMBOL_GPL vmlinux 0x1adc9e02 gpiod_count +EXPORT_SYMBOL_GPL vmlinux 0x1af267f8 int_pow +EXPORT_SYMBOL_GPL vmlinux 0x1b012738 irq_domain_xlate_twocell +EXPORT_SYMBOL_GPL vmlinux 0x1b0946d8 idr_remove +EXPORT_SYMBOL_GPL vmlinux 0x1b1f5ad0 gpio_request_array +EXPORT_SYMBOL_GPL vmlinux 0x1b291ed8 smpboot_unregister_percpu_thread +EXPORT_SYMBOL_GPL vmlinux 0x1b4f4ffa ip_tunnel_get_stats64 +EXPORT_SYMBOL_GPL vmlinux 0x1b57d31d ccw_device_set_timeout +EXPORT_SYMBOL_GPL vmlinux 0x1b61ce6d bpf_trace_run4 +EXPORT_SYMBOL_GPL vmlinux 0x1b6c5a67 chsc_error_from_response +EXPORT_SYMBOL_GPL vmlinux 0x1b7dc297 fat_dir_empty +EXPORT_SYMBOL_GPL vmlinux 0x1b85b9a7 lwtunnel_cmp_encap +EXPORT_SYMBOL_GPL vmlinux 0x1b92e41d inet_putpeer +EXPORT_SYMBOL_GPL vmlinux 0x1ba0c4a7 evict_inodes +EXPORT_SYMBOL_GPL vmlinux 0x1bb8032d sysfs_change_owner +EXPORT_SYMBOL_GPL vmlinux 0x1bba5418 dm_internal_resume_fast +EXPORT_SYMBOL_GPL vmlinux 0x1bc7b8bd software_node_register_nodes +EXPORT_SYMBOL_GPL vmlinux 0x1bd2ab1c switchdev_handle_port_attr_set +EXPORT_SYMBOL_GPL vmlinux 0x1be50664 fscrypt_ioctl_add_key +EXPORT_SYMBOL_GPL vmlinux 0x1bee4974 sg_alloc_table_chained +EXPORT_SYMBOL_GPL vmlinux 0x1c5b1f28 irq_free_descs +EXPORT_SYMBOL_GPL vmlinux 0x1c63d275 dax_layout_busy_page +EXPORT_SYMBOL_GPL vmlinux 0x1c79cc57 vcpu_put +EXPORT_SYMBOL_GPL vmlinux 0x1c7a5db3 put_device +EXPORT_SYMBOL_GPL vmlinux 0x1c87a811 __round_jiffies_up +EXPORT_SYMBOL_GPL vmlinux 0x1ca3b129 posix_clock_register +EXPORT_SYMBOL_GPL vmlinux 0x1cab7db6 sk_free_unlock_clone +EXPORT_SYMBOL_GPL vmlinux 0x1cba4a66 alarm_start_relative +EXPORT_SYMBOL_GPL vmlinux 0x1cbab206 input_ff_create +EXPORT_SYMBOL_GPL vmlinux 0x1cbd92b0 cpu_mitigations_off +EXPORT_SYMBOL_GPL vmlinux 0x1d222ced irq_get_irqchip_state +EXPORT_SYMBOL_GPL vmlinux 0x1d370243 xas_find_marked +EXPORT_SYMBOL_GPL vmlinux 0x1d4d99a5 sock_diag_register +EXPORT_SYMBOL_GPL vmlinux 0x1d69a163 rcuwait_wake_up +EXPORT_SYMBOL_GPL vmlinux 0x1d69a4d8 balloon_page_alloc +EXPORT_SYMBOL_GPL vmlinux 0x1d77b0f8 unix_socket_table +EXPORT_SYMBOL_GPL vmlinux 0x1d7d0e0e user_describe +EXPORT_SYMBOL_GPL vmlinux 0x1d7ee21a driver_find +EXPORT_SYMBOL_GPL vmlinux 0x1d8cdb99 gmap_mprotect_notify +EXPORT_SYMBOL_GPL vmlinux 0x1dcae597 irq_domain_set_hwirq_and_chip +EXPORT_SYMBOL_GPL vmlinux 0x1dde8c36 ip6_route_output_flags +EXPORT_SYMBOL_GPL vmlinux 0x1dfa2cba blkdev_nr_zones +EXPORT_SYMBOL_GPL vmlinux 0x1dfc0023 gpiod_direction_output +EXPORT_SYMBOL_GPL vmlinux 0x1e51452f tpm_get_timeouts +EXPORT_SYMBOL_GPL vmlinux 0x1e51dabb __tracepoint_detach_device_from_domain +EXPORT_SYMBOL_GPL vmlinux 0x1e5f6f78 mmput +EXPORT_SYMBOL_GPL vmlinux 0x1e675f6b kvm_vcpu_unmap +EXPORT_SYMBOL_GPL vmlinux 0x1e7bbcb3 kernel_restart +EXPORT_SYMBOL_GPL vmlinux 0x1e8da3ba devm_kasprintf +EXPORT_SYMBOL_GPL vmlinux 0x1eb9516e round_jiffies_relative +EXPORT_SYMBOL_GPL vmlinux 0x1ebf6c2a pci_power_names +EXPORT_SYMBOL_GPL vmlinux 0x1ebfb4b0 bsg_job_get +EXPORT_SYMBOL_GPL vmlinux 0x1ec80456 perf_aux_output_begin +EXPORT_SYMBOL_GPL vmlinux 0x1edf2aaa rtnl_af_unregister +EXPORT_SYMBOL_GPL vmlinux 0x1ee0f376 uprobe_register +EXPORT_SYMBOL_GPL vmlinux 0x1f088366 gpiod_is_active_low +EXPORT_SYMBOL_GPL vmlinux 0x1f099354 ip6_route_lookup +EXPORT_SYMBOL_GPL vmlinux 0x1f0cb5bf pm_power_off_prepare +EXPORT_SYMBOL_GPL vmlinux 0x1f18b9eb nf_queue_entry_get_refs +EXPORT_SYMBOL_GPL vmlinux 0x1f1c439c sk_msg_return +EXPORT_SYMBOL_GPL vmlinux 0x1f1ea1af cio_disable_subchannel +EXPORT_SYMBOL_GPL vmlinux 0x1f245ff4 serdev_device_get_tiocm +EXPORT_SYMBOL_GPL vmlinux 0x1f376796 freq_qos_remove_notifier +EXPORT_SYMBOL_GPL vmlinux 0x1f47ba96 devm_platform_ioremap_resource +EXPORT_SYMBOL_GPL vmlinux 0x1f4cdd14 blk_queue_set_zoned +EXPORT_SYMBOL_GPL vmlinux 0x1f563160 bpf_offload_dev_priv +EXPORT_SYMBOL_GPL vmlinux 0x1f616df8 kvm_write_guest_cached +EXPORT_SYMBOL_GPL vmlinux 0x1f8544b8 panic_timeout +EXPORT_SYMBOL_GPL vmlinux 0x1f88428f trace_array_get_by_name +EXPORT_SYMBOL_GPL vmlinux 0x1fa1d95c sha256_zero_message_hash +EXPORT_SYMBOL_GPL vmlinux 0x1fa95ed1 device_get_match_data +EXPORT_SYMBOL_GPL vmlinux 0x1fa9aa5c gpiod_get_raw_array_value +EXPORT_SYMBOL_GPL vmlinux 0x1fafdde7 kobject_create_and_add +EXPORT_SYMBOL_GPL vmlinux 0x1fcaf5e3 sk_clear_memalloc +EXPORT_SYMBOL_GPL vmlinux 0x1fce1faf crypto_mod_put +EXPORT_SYMBOL_GPL vmlinux 0x1fe6e504 gpiod_add_hogs +EXPORT_SYMBOL_GPL vmlinux 0x1feec469 trace_array_printk +EXPORT_SYMBOL_GPL vmlinux 0x202a4c8a attribute_container_find_class_device +EXPORT_SYMBOL_GPL vmlinux 0x206152ce pci_cfg_access_trylock +EXPORT_SYMBOL_GPL vmlinux 0x2061970d iomap_seek_data +EXPORT_SYMBOL_GPL vmlinux 0x20674efd kvm_vcpu_gfn_to_pfn_atomic +EXPORT_SYMBOL_GPL vmlinux 0x20835a9f __xdp_release_frame +EXPORT_SYMBOL_GPL vmlinux 0x20ab45ee devm_device_remove_groups +EXPORT_SYMBOL_GPL vmlinux 0x20ba4597 sbitmap_queue_init_node +EXPORT_SYMBOL_GPL vmlinux 0x20bddb8d pci_user_read_config_dword +EXPORT_SYMBOL_GPL vmlinux 0x20ce772e class_interface_register +EXPORT_SYMBOL_GPL vmlinux 0x20d833b4 serdev_device_add +EXPORT_SYMBOL_GPL vmlinux 0x20dc59b8 kvm_get_dirty_log +EXPORT_SYMBOL_GPL vmlinux 0x20e4544b security_inode_permission +EXPORT_SYMBOL_GPL vmlinux 0x20e6f928 tnum_strn +EXPORT_SYMBOL_GPL vmlinux 0x20f5d95c bpf_trace_run5 +EXPORT_SYMBOL_GPL vmlinux 0x2122336b fsnotify_parent +EXPORT_SYMBOL_GPL vmlinux 0x214f31d6 kvm_vcpu_write_guest_page +EXPORT_SYMBOL_GPL vmlinux 0x216ae5b6 lwtunnel_encap_del_ops +EXPORT_SYMBOL_GPL vmlinux 0x216de4e1 rcu_get_gp_kthreads_prio +EXPORT_SYMBOL_GPL vmlinux 0x21779137 posix_acl_create +EXPORT_SYMBOL_GPL vmlinux 0x217d83bc tcp_twsk_unique +EXPORT_SYMBOL_GPL vmlinux 0x21a9d793 __gfn_to_pfn_memslot +EXPORT_SYMBOL_GPL vmlinux 0x21ac8b77 iommu_group_get_by_id +EXPORT_SYMBOL_GPL vmlinux 0x21baa7ac fwnode_graph_get_remote_node +EXPORT_SYMBOL_GPL vmlinux 0x21cd536a crypto_put_default_null_skcipher +EXPORT_SYMBOL_GPL vmlinux 0x21d0eaac bpf_trace_run10 +EXPORT_SYMBOL_GPL vmlinux 0x22054553 fwnode_connection_find_match +EXPORT_SYMBOL_GPL vmlinux 0x2211a4c0 blk_op_str +EXPORT_SYMBOL_GPL vmlinux 0x223fe31d register_kretprobe +EXPORT_SYMBOL_GPL vmlinux 0x2246b4dd __tracepoint_block_bio_remap +EXPORT_SYMBOL_GPL vmlinux 0x225f8171 fsstack_copy_inode_size +EXPORT_SYMBOL_GPL vmlinux 0x2280a70d device_dma_supported +EXPORT_SYMBOL_GPL vmlinux 0x229951a0 gmap_fault +EXPORT_SYMBOL_GPL vmlinux 0x22ae335f input_ff_flush +EXPORT_SYMBOL_GPL vmlinux 0x22c96790 tpmm_chip_alloc +EXPORT_SYMBOL_GPL vmlinux 0x22d290cd dma_buf_unmap_attachment +EXPORT_SYMBOL_GPL vmlinux 0x22d9409b iomap_sort_ioends +EXPORT_SYMBOL_GPL vmlinux 0x22da62bf trace_event_ignore_this_pid +EXPORT_SYMBOL_GPL vmlinux 0x22e20b10 chsc_siosl +EXPORT_SYMBOL_GPL vmlinux 0x22fd08ba cpuacct_cgrp_subsys_on_dfl_key +EXPORT_SYMBOL_GPL vmlinux 0x2326717e gfn_to_pfn_memslot +EXPORT_SYMBOL_GPL vmlinux 0x23296ab7 netdev_rx_handler_register +EXPORT_SYMBOL_GPL vmlinux 0x233f5316 sprint_oid +EXPORT_SYMBOL_GPL vmlinux 0x234cf416 devlink_fmsg_string_pair_put +EXPORT_SYMBOL_GPL vmlinux 0x2353ab2d fwnode_handle_get +EXPORT_SYMBOL_GPL vmlinux 0x23794217 blk_mq_virtio_map_queues +EXPORT_SYMBOL_GPL vmlinux 0x23864ce7 cpuset_mem_spread_node +EXPORT_SYMBOL_GPL vmlinux 0x239670f4 inode_sb_list_add +EXPORT_SYMBOL_GPL vmlinux 0x23b47611 bio_alloc_mddev +EXPORT_SYMBOL_GPL vmlinux 0x23d0b31a tty_set_ldisc +EXPORT_SYMBOL_GPL vmlinux 0x23dd8722 dax_writeback_mapping_range +EXPORT_SYMBOL_GPL vmlinux 0x241eb9f4 crypto_register_shash +EXPORT_SYMBOL_GPL vmlinux 0x24280122 sk_psock_init +EXPORT_SYMBOL_GPL vmlinux 0x24291574 pci_try_reset_function +EXPORT_SYMBOL_GPL vmlinux 0x242b9e0c devm_kstrdup_const +EXPORT_SYMBOL_GPL vmlinux 0x243f0b4b crypto_check_attr_type +EXPORT_SYMBOL_GPL vmlinux 0x2460d79f fuse_get_unique +EXPORT_SYMBOL_GPL vmlinux 0x246834fe pcie_has_flr +EXPORT_SYMBOL_GPL vmlinux 0x2474581f gmap_shadow_pgt_lookup +EXPORT_SYMBOL_GPL vmlinux 0x247a7e05 __put_task_struct +EXPORT_SYMBOL_GPL vmlinux 0x248f0ea1 hrtimer_forward +EXPORT_SYMBOL_GPL vmlinux 0x24c63e31 rt_mutex_destroy +EXPORT_SYMBOL_GPL vmlinux 0x24c6beee nr_iowait +EXPORT_SYMBOL_GPL vmlinux 0x24da0093 rcu_inkernel_boot_has_ended +EXPORT_SYMBOL_GPL vmlinux 0x24df2e71 device_remove_file +EXPORT_SYMBOL_GPL vmlinux 0x24e549b8 housekeeping_affine +EXPORT_SYMBOL_GPL vmlinux 0x25072162 handle_untracked_irq +EXPORT_SYMBOL_GPL vmlinux 0x25292902 dma_buf_dynamic_attach +EXPORT_SYMBOL_GPL vmlinux 0x25513b87 crypto_stats_akcipher_decrypt +EXPORT_SYMBOL_GPL vmlinux 0x25767607 __module_text_address +EXPORT_SYMBOL_GPL vmlinux 0x2592fc6c console_printk +EXPORT_SYMBOL_GPL vmlinux 0x259bf6ea srcu_notifier_call_chain +EXPORT_SYMBOL_GPL vmlinux 0x25b76b53 sk_psock_msg_verdict +EXPORT_SYMBOL_GPL vmlinux 0x25e583e9 l3mdev_master_upper_ifindex_by_index_rcu +EXPORT_SYMBOL_GPL vmlinux 0x25f44dae dax_copy_from_iter +EXPORT_SYMBOL_GPL vmlinux 0x25f48ee1 sk_set_peek_off +EXPORT_SYMBOL_GPL vmlinux 0x264f0a35 fuse_kill_sb_anon +EXPORT_SYMBOL_GPL vmlinux 0x26520970 vm_memory_committed +EXPORT_SYMBOL_GPL vmlinux 0x2654c19f tty_put_char +EXPORT_SYMBOL_GPL vmlinux 0x26564d18 gpiod_direction_input +EXPORT_SYMBOL_GPL vmlinux 0x265bbef9 kexec_crash_loaded +EXPORT_SYMBOL_GPL vmlinux 0x267df662 smp_call_on_cpu +EXPORT_SYMBOL_GPL vmlinux 0x26863258 dw_pcie_host_deinit +EXPORT_SYMBOL_GPL vmlinux 0x26a128bc sock_gen_put +EXPORT_SYMBOL_GPL vmlinux 0x26a38476 ipv4_redirect +EXPORT_SYMBOL_GPL vmlinux 0x26ab4755 put_old_itimerspec32 +EXPORT_SYMBOL_GPL vmlinux 0x26c622ee percpu_ref_switch_to_percpu +EXPORT_SYMBOL_GPL vmlinux 0x26c90ea4 scsi_eh_get_sense +EXPORT_SYMBOL_GPL vmlinux 0x26dcf033 scsi_flush_work +EXPORT_SYMBOL_GPL vmlinux 0x26ea97f9 blkcg_root +EXPORT_SYMBOL_GPL vmlinux 0x26ed2186 register_vmap_purge_notifier +EXPORT_SYMBOL_GPL vmlinux 0x27046576 kvm_exit +EXPORT_SYMBOL_GPL vmlinux 0x270b86d0 crypto_unregister_rngs +EXPORT_SYMBOL_GPL vmlinux 0x271d4ff4 do_splice_from +EXPORT_SYMBOL_GPL vmlinux 0x27310b65 disable_cmf +EXPORT_SYMBOL_GPL vmlinux 0x27402916 crypto_register_aead +EXPORT_SYMBOL_GPL vmlinux 0x274b73ff rt_mutex_unlock +EXPORT_SYMBOL_GPL vmlinux 0x274dd1a3 sg_free_table_chained +EXPORT_SYMBOL_GPL vmlinux 0x27545244 atomic_notifier_chain_register +EXPORT_SYMBOL_GPL vmlinux 0x2768c3ca watchdog_unregister_device +EXPORT_SYMBOL_GPL vmlinux 0x27af9ceb scsi_dh_activate +EXPORT_SYMBOL_GPL vmlinux 0x27b64afd rht_bucket_nested_insert +EXPORT_SYMBOL_GPL vmlinux 0x27c15e9d posix_acl_default_xattr_handler +EXPORT_SYMBOL_GPL vmlinux 0x27d02a13 bpf_map_inc +EXPORT_SYMBOL_GPL vmlinux 0x27ebfef3 pci_assign_unassigned_bus_resources +EXPORT_SYMBOL_GPL vmlinux 0x27f4f029 ftrace_set_global_filter +EXPORT_SYMBOL_GPL vmlinux 0x27fa66e1 nr_free_buffer_pages +EXPORT_SYMBOL_GPL vmlinux 0x28009183 gen_pool_get +EXPORT_SYMBOL_GPL vmlinux 0x28089956 device_bind_driver +EXPORT_SYMBOL_GPL vmlinux 0x280b0be7 synth_event_trace +EXPORT_SYMBOL_GPL vmlinux 0x28263053 crypto_stats_akcipher_encrypt +EXPORT_SYMBOL_GPL vmlinux 0x2826a734 __clocksource_update_freq_scale +EXPORT_SYMBOL_GPL vmlinux 0x2837dcf9 skb_segment_list +EXPORT_SYMBOL_GPL vmlinux 0x284fe794 percpu_ref_exit +EXPORT_SYMBOL_GPL vmlinux 0x2864abc9 klist_node_attached +EXPORT_SYMBOL_GPL vmlinux 0x286cc647 async_synchronize_cookie_domain +EXPORT_SYMBOL_GPL vmlinux 0x289c32fa class_compat_create_link +EXPORT_SYMBOL_GPL vmlinux 0x28a65702 iommu_present +EXPORT_SYMBOL_GPL vmlinux 0x28aa6a67 call_rcu +EXPORT_SYMBOL_GPL vmlinux 0x28b4fab4 devm_fwnode_gpiod_get_index +EXPORT_SYMBOL_GPL vmlinux 0x28d8b49a chsc_scm_info +EXPORT_SYMBOL_GPL vmlinux 0x2918c818 pci_generic_config_read32 +EXPORT_SYMBOL_GPL vmlinux 0x29252e74 __tracepoint_block_unplug +EXPORT_SYMBOL_GPL vmlinux 0x292fd5c7 n_tty_inherit_ops +EXPORT_SYMBOL_GPL vmlinux 0x2951c1d7 bpf_sk_storage_diag_put +EXPORT_SYMBOL_GPL vmlinux 0x2976b080 shash_register_instance +EXPORT_SYMBOL_GPL vmlinux 0x29c9dd8a virtqueue_get_vring +EXPORT_SYMBOL_GPL vmlinux 0x29ce0374 param_ops_bool_enable_only +EXPORT_SYMBOL_GPL vmlinux 0x29eba37f current_is_async +EXPORT_SYMBOL_GPL vmlinux 0x2a0546e6 vfs_kern_mount +EXPORT_SYMBOL_GPL vmlinux 0x2a1289a7 sbitmap_resize +EXPORT_SYMBOL_GPL vmlinux 0x2a1538ca lzo1x_decompress_safe +EXPORT_SYMBOL_GPL vmlinux 0x2a2d2e95 blk_mq_alloc_request_hctx +EXPORT_SYMBOL_GPL vmlinux 0x2a377265 pci_slots_kset +EXPORT_SYMBOL_GPL vmlinux 0x2a515321 pci_epc_get_msix +EXPORT_SYMBOL_GPL vmlinux 0x2a5d99e9 tty_standard_install +EXPORT_SYMBOL_GPL vmlinux 0x2a62cb3a ring_buffer_overrun_cpu +EXPORT_SYMBOL_GPL vmlinux 0x2a7e1ded gfn_to_pfn_memslot_atomic +EXPORT_SYMBOL_GPL vmlinux 0x2a852e86 sdev_evt_send +EXPORT_SYMBOL_GPL vmlinux 0x2a92b1db tty_port_register_device_serdev +EXPORT_SYMBOL_GPL vmlinux 0x2a96c6ed gfn_to_pfn_prot +EXPORT_SYMBOL_GPL vmlinux 0x2ae09681 irq_domain_associate +EXPORT_SYMBOL_GPL vmlinux 0x2afcc38f debugfs_create_u64 +EXPORT_SYMBOL_GPL vmlinux 0x2afd5ca6 pci_epc_map_addr +EXPORT_SYMBOL_GPL vmlinux 0x2b260a74 __tracepoint_cpu_idle +EXPORT_SYMBOL_GPL vmlinux 0x2b4509dd devlink_health_reporter_state_update +EXPORT_SYMBOL_GPL vmlinux 0x2b4540ec klp_enable_patch +EXPORT_SYMBOL_GPL vmlinux 0x2b4797e7 security_path_rmdir +EXPORT_SYMBOL_GPL vmlinux 0x2b530343 tcpv6_prot +EXPORT_SYMBOL_GPL vmlinux 0x2b66b7d1 do_tcp_sendpages +EXPORT_SYMBOL_GPL vmlinux 0x2b7bf30d gmap_shadow_page +EXPORT_SYMBOL_GPL vmlinux 0x2b83cbec pci_disable_sriov +EXPORT_SYMBOL_GPL vmlinux 0x2b8f1879 gpiochip_is_requested +EXPORT_SYMBOL_GPL vmlinux 0x2b9714c7 __skb_tstamp_tx +EXPORT_SYMBOL_GPL vmlinux 0x2bf32bc2 bio_associate_blkg +EXPORT_SYMBOL_GPL vmlinux 0x2c08357e __dev_forward_skb +EXPORT_SYMBOL_GPL vmlinux 0x2c11852a rt_mutex_timed_lock +EXPORT_SYMBOL_GPL vmlinux 0x2c258ea1 blk_mq_sched_mark_restart_hctx +EXPORT_SYMBOL_GPL vmlinux 0x2c3054f9 net_inc_ingress_queue +EXPORT_SYMBOL_GPL vmlinux 0x2c432077 fuse_do_ioctl +EXPORT_SYMBOL_GPL vmlinux 0x2c4656f4 get_user_pages_fast +EXPORT_SYMBOL_GPL vmlinux 0x2c66ac85 devlink_info_serial_number_put +EXPORT_SYMBOL_GPL vmlinux 0x2c7256dc synth_event_add_field +EXPORT_SYMBOL_GPL vmlinux 0x2c7d13e2 __ioread32_copy +EXPORT_SYMBOL_GPL vmlinux 0x2c7db649 irq_dispose_mapping +EXPORT_SYMBOL_GPL vmlinux 0x2c8f2a7d gpiochip_generic_free +EXPORT_SYMBOL_GPL vmlinux 0x2cd25b53 dm_bio_from_per_bio_data +EXPORT_SYMBOL_GPL vmlinux 0x2ce13f42 dma_buf_end_cpu_access +EXPORT_SYMBOL_GPL vmlinux 0x2ce6426c nf_queue_entry_free +EXPORT_SYMBOL_GPL vmlinux 0x2cea32ee unregister_oldmem_pfn_is_ram +EXPORT_SYMBOL_GPL vmlinux 0x2cf849da inet_csk_update_pmtu +EXPORT_SYMBOL_GPL vmlinux 0x2d092d12 crypto_unregister_instance +EXPORT_SYMBOL_GPL vmlinux 0x2d1b02d2 usermodehelper_read_lock_wait +EXPORT_SYMBOL_GPL vmlinux 0x2d2dd36f kobj_ns_grab_current +EXPORT_SYMBOL_GPL vmlinux 0x2d41e6f5 __trace_puts +EXPORT_SYMBOL_GPL vmlinux 0x2d4a4996 pcie_aspm_enabled +EXPORT_SYMBOL_GPL vmlinux 0x2d876b39 platform_get_irq_byname +EXPORT_SYMBOL_GPL vmlinux 0x2daa2177 x509_free_certificate +EXPORT_SYMBOL_GPL vmlinux 0x2daff03e crypto_spawn_tfm2 +EXPORT_SYMBOL_GPL vmlinux 0x2dd02360 splice_to_pipe +EXPORT_SYMBOL_GPL vmlinux 0x2dd3a933 cio_tm_start_key +EXPORT_SYMBOL_GPL vmlinux 0x2dd8418e __blkg_prfill_rwstat +EXPORT_SYMBOL_GPL vmlinux 0x2de4e094 mmu_notifier_get_locked +EXPORT_SYMBOL_GPL vmlinux 0x2e028ae6 rcutorture_get_gp_data +EXPORT_SYMBOL_GPL vmlinux 0x2e1d43cf lzo1x_1_compress +EXPORT_SYMBOL_GPL vmlinux 0x2e2360b1 ftrace_set_global_notrace +EXPORT_SYMBOL_GPL vmlinux 0x2e24e086 crypto_aead_setkey +EXPORT_SYMBOL_GPL vmlinux 0x2e3fa6c7 gpiochip_line_is_persistent +EXPORT_SYMBOL_GPL vmlinux 0x2e729486 decrypt_blob +EXPORT_SYMBOL_GPL vmlinux 0x2e7f0499 seq_buf_printf +EXPORT_SYMBOL_GPL vmlinux 0x2e893c40 device_property_match_string +EXPORT_SYMBOL_GPL vmlinux 0x2e8fc0df tty_perform_flush +EXPORT_SYMBOL_GPL vmlinux 0x2ea0df60 ip_route_output_key_hash +EXPORT_SYMBOL_GPL vmlinux 0x2eacd05a register_ftrace_function +EXPORT_SYMBOL_GPL vmlinux 0x2ebb19fd execute_in_process_context +EXPORT_SYMBOL_GPL vmlinux 0x2ebe3135 cpu_is_hotpluggable +EXPORT_SYMBOL_GPL vmlinux 0x2ec71b67 bus_get_kset +EXPORT_SYMBOL_GPL vmlinux 0x2ecd0fc8 devres_get +EXPORT_SYMBOL_GPL vmlinux 0x2ed8d943 blkcg_print_blkgs +EXPORT_SYMBOL_GPL vmlinux 0x2ee2ce85 fwnode_property_get_reference_args +EXPORT_SYMBOL_GPL vmlinux 0x2eec2805 tpm2_probe +EXPORT_SYMBOL_GPL vmlinux 0x2efdddcf pci_bus_resource_n +EXPORT_SYMBOL_GPL vmlinux 0x2efefc65 scsi_bus_type +EXPORT_SYMBOL_GPL vmlinux 0x2f04e090 pin_user_pages_fast +EXPORT_SYMBOL_GPL vmlinux 0x2f231259 fat_attach +EXPORT_SYMBOL_GPL vmlinux 0x2f2c95c4 flush_work +EXPORT_SYMBOL_GPL vmlinux 0x2f3f19e6 badblocks_check +EXPORT_SYMBOL_GPL vmlinux 0x2f4113a2 dcookie_register +EXPORT_SYMBOL_GPL vmlinux 0x2f4880df static_key_slow_dec +EXPORT_SYMBOL_GPL vmlinux 0x2f4f67c3 look_up_OID +EXPORT_SYMBOL_GPL vmlinux 0x2f58667c xas_load +EXPORT_SYMBOL_GPL vmlinux 0x2f663e97 rtnl_get_net_ns_capable +EXPORT_SYMBOL_GPL vmlinux 0x2fbc2c25 udp6_lib_lookup +EXPORT_SYMBOL_GPL vmlinux 0x2fe5a467 inet_csk_route_req +EXPORT_SYMBOL_GPL vmlinux 0x300d754c crypto_stats_aead_decrypt +EXPORT_SYMBOL_GPL vmlinux 0x3018481d virtqueue_enable_cb +EXPORT_SYMBOL_GPL vmlinux 0x30314959 gpiochip_relres_irq +EXPORT_SYMBOL_GPL vmlinux 0x303d7c43 rtnl_link_unregister +EXPORT_SYMBOL_GPL vmlinux 0x305a5f89 simple_attr_write +EXPORT_SYMBOL_GPL vmlinux 0x3061cfce ring_buffer_entries_cpu +EXPORT_SYMBOL_GPL vmlinux 0x306fdf92 generic_device_group +EXPORT_SYMBOL_GPL vmlinux 0x3079ce2a bus_register +EXPORT_SYMBOL_GPL vmlinux 0x3087280d dma_buf_begin_cpu_access +EXPORT_SYMBOL_GPL vmlinux 0x30aacf9d disk_has_partitions +EXPORT_SYMBOL_GPL vmlinux 0x30bd8cbf kernel_read_file_from_path +EXPORT_SYMBOL_GPL vmlinux 0x30bf1044 inet_twsk_hashdance +EXPORT_SYMBOL_GPL vmlinux 0x30d6d0f6 device_find_child +EXPORT_SYMBOL_GPL vmlinux 0x30ed911c tpm1_do_selftest +EXPORT_SYMBOL_GPL vmlinux 0x30ee341a hrtimer_cancel +EXPORT_SYMBOL_GPL vmlinux 0x31238914 kvm_vcpu_gfn_to_hva +EXPORT_SYMBOL_GPL vmlinux 0x31266931 con_debug_leave +EXPORT_SYMBOL_GPL vmlinux 0x3129f501 dma_need_sync +EXPORT_SYMBOL_GPL vmlinux 0x314e5aee pci_epf_unbind +EXPORT_SYMBOL_GPL vmlinux 0x31640ae9 gpiod_export_link +EXPORT_SYMBOL_GPL vmlinux 0x3169201f input_class +EXPORT_SYMBOL_GPL vmlinux 0x31769571 dw_pcie_read_dbi +EXPORT_SYMBOL_GPL vmlinux 0x31785f08 __tracepoint_br_fdb_add +EXPORT_SYMBOL_GPL vmlinux 0x31a95e8b ring_buffer_record_enable_cpu +EXPORT_SYMBOL_GPL vmlinux 0x31aaee69 inet_csk_route_child_sock +EXPORT_SYMBOL_GPL vmlinux 0x31c3a1d3 evm_verifyxattr +EXPORT_SYMBOL_GPL vmlinux 0x31d3337c fuse_request_end +EXPORT_SYMBOL_GPL vmlinux 0x31d3a3e3 gpiod_get_raw_array_value_cansleep +EXPORT_SYMBOL_GPL vmlinux 0x31dd2ea0 crypto_cipher_setkey +EXPORT_SYMBOL_GPL vmlinux 0x31efb53a md_allow_write +EXPORT_SYMBOL_GPL vmlinux 0x31f6cba7 trace_array_destroy +EXPORT_SYMBOL_GPL vmlinux 0x3224b2a9 mpi_read_raw_from_sgl +EXPORT_SYMBOL_GPL vmlinux 0x324e58cc fwnode_get_nth_parent +EXPORT_SYMBOL_GPL vmlinux 0x325018a8 crypto_type_has_alg +EXPORT_SYMBOL_GPL vmlinux 0x3285e516 mmu_notifier_unregister +EXPORT_SYMBOL_GPL vmlinux 0x328f46f4 pci_probe_reset_bus +EXPORT_SYMBOL_GPL vmlinux 0x3291ad4b unregister_kretprobes +EXPORT_SYMBOL_GPL vmlinux 0x32a287fe gpiod_set_value +EXPORT_SYMBOL_GPL vmlinux 0x32ab06cc irq_percpu_is_enabled +EXPORT_SYMBOL_GPL vmlinux 0x32b2c6d8 __netpoll_free +EXPORT_SYMBOL_GPL vmlinux 0x32bc0fcf preempt_notifier_dec +EXPORT_SYMBOL_GPL vmlinux 0x32c3cb4e class_compat_register +EXPORT_SYMBOL_GPL vmlinux 0x32c6c604 __tracepoint_attach_device_to_domain +EXPORT_SYMBOL_GPL vmlinux 0x32cf649f blkcg_deactivate_policy +EXPORT_SYMBOL_GPL vmlinux 0x32f367a3 virtqueue_add_inbuf_ctx +EXPORT_SYMBOL_GPL vmlinux 0x330010b6 cpuset_cgrp_subsys_enabled_key +EXPORT_SYMBOL_GPL vmlinux 0x33050a77 virtio_config_changed +EXPORT_SYMBOL_GPL vmlinux 0x330eaf98 bpf_prog_put +EXPORT_SYMBOL_GPL vmlinux 0x33230767 dm_internal_suspend_fast +EXPORT_SYMBOL_GPL vmlinux 0x334d502f blkdev_write_iter +EXPORT_SYMBOL_GPL vmlinux 0x33505b29 serdev_controller_remove +EXPORT_SYMBOL_GPL vmlinux 0x33518b39 lwtunnel_get_encap_size +EXPORT_SYMBOL_GPL vmlinux 0x335c570f enable_percpu_irq +EXPORT_SYMBOL_GPL vmlinux 0x335da3c3 devm_platform_get_and_ioremap_resource +EXPORT_SYMBOL_GPL vmlinux 0x335dd2ab __fsnotify_inode_delete +EXPORT_SYMBOL_GPL vmlinux 0x33782be5 gmap_convert_to_secure +EXPORT_SYMBOL_GPL vmlinux 0x338857ab gpiochip_generic_config +EXPORT_SYMBOL_GPL vmlinux 0x339e26a0 zpci_enable_device +EXPORT_SYMBOL_GPL vmlinux 0x33c63c34 fb_deferred_io_cleanup +EXPORT_SYMBOL_GPL vmlinux 0x33c901bd device_show_bool +EXPORT_SYMBOL_GPL vmlinux 0x33ce5deb alarm_expires_remaining +EXPORT_SYMBOL_GPL vmlinux 0x33efc8c8 trace_clock_local +EXPORT_SYMBOL_GPL vmlinux 0x3418615d iommu_dev_feature_enabled +EXPORT_SYMBOL_GPL vmlinux 0x3421ca7c __tracepoint_neigh_event_send_dead +EXPORT_SYMBOL_GPL vmlinux 0x34259deb mddev_congested +EXPORT_SYMBOL_GPL vmlinux 0x343c1cad kvm_gfn_to_hva_cache_init +EXPORT_SYMBOL_GPL vmlinux 0x34407691 crypto_has_ahash +EXPORT_SYMBOL_GPL vmlinux 0x3451868d __blkdev_driver_ioctl +EXPORT_SYMBOL_GPL vmlinux 0x34723185 pci_epc_unmap_addr +EXPORT_SYMBOL_GPL vmlinux 0x3475b847 skb_gso_validate_network_len +EXPORT_SYMBOL_GPL vmlinux 0x348c4cb4 crypto_register_rngs +EXPORT_SYMBOL_GPL vmlinux 0x349843d1 scm_irq_handler +EXPORT_SYMBOL_GPL vmlinux 0x349f10cd fscrypt_fname_siphash +EXPORT_SYMBOL_GPL vmlinux 0x34a5e980 atomic_notifier_call_chain +EXPORT_SYMBOL_GPL vmlinux 0x34d0b4ed add_swap_extent +EXPORT_SYMBOL_GPL vmlinux 0x34f0a36b devlink_traps_register +EXPORT_SYMBOL_GPL vmlinux 0x3516c4b4 sysfs_create_groups +EXPORT_SYMBOL_GPL vmlinux 0x352ec68b bpf_offload_dev_destroy +EXPORT_SYMBOL_GPL vmlinux 0x353aaa71 init_srcu_struct +EXPORT_SYMBOL_GPL vmlinux 0x353c3452 __root_device_register +EXPORT_SYMBOL_GPL vmlinux 0x353cd453 crypto_hash_alg_has_setkey +EXPORT_SYMBOL_GPL vmlinux 0x35aa6bf0 sysfs_update_groups +EXPORT_SYMBOL_GPL vmlinux 0x35b1ee39 noop_backing_dev_info +EXPORT_SYMBOL_GPL vmlinux 0x35d0d734 css_driver_register +EXPORT_SYMBOL_GPL vmlinux 0x35f85ef7 cgroup_rstat_updated +EXPORT_SYMBOL_GPL vmlinux 0x36075bb5 iommu_group_register_notifier +EXPORT_SYMBOL_GPL vmlinux 0x3607c5d7 sthyi_fill +EXPORT_SYMBOL_GPL vmlinux 0x36242943 switchdev_deferred_process +EXPORT_SYMBOL_GPL vmlinux 0x365a6d74 iommu_get_domain_for_dev +EXPORT_SYMBOL_GPL vmlinux 0x367aeb6f tpm_default_chip +EXPORT_SYMBOL_GPL vmlinux 0x368b10fd gmap_pmdp_csp +EXPORT_SYMBOL_GPL vmlinux 0x369fcd70 tracing_snapshot +EXPORT_SYMBOL_GPL vmlinux 0x36cf1ac3 kvm_flush_remote_tlbs +EXPORT_SYMBOL_GPL vmlinux 0x36f3df24 pci_user_write_config_dword +EXPORT_SYMBOL_GPL vmlinux 0x36f79b82 fwnode_gpiod_get_index +EXPORT_SYMBOL_GPL vmlinux 0x3711aa8b fwnode_graph_get_port_parent +EXPORT_SYMBOL_GPL vmlinux 0x371dd86c devlink_dpipe_headers_unregister +EXPORT_SYMBOL_GPL vmlinux 0x372aebea kernfs_find_and_get_ns +EXPORT_SYMBOL_GPL vmlinux 0x372d3517 blk_mq_unquiesce_queue +EXPORT_SYMBOL_GPL vmlinux 0x373f3bb5 debugfs_create_file_unsafe +EXPORT_SYMBOL_GPL vmlinux 0x3756d7d4 gpiod_get_value_cansleep +EXPORT_SYMBOL_GPL vmlinux 0x3757e2aa __unwind_start +EXPORT_SYMBOL_GPL vmlinux 0x377e0ebd kvm_vcpu_block +EXPORT_SYMBOL_GPL vmlinux 0x3787968c pci_generic_config_read +EXPORT_SYMBOL_GPL vmlinux 0x3788dcf6 skcipher_walk_atomise +EXPORT_SYMBOL_GPL vmlinux 0x37b4d44b crypto_register_rng +EXPORT_SYMBOL_GPL vmlinux 0x37ea659f add_memory +EXPORT_SYMBOL_GPL vmlinux 0x3801a183 free_vm_area +EXPORT_SYMBOL_GPL vmlinux 0x3807a483 blk_mq_sched_try_merge +EXPORT_SYMBOL_GPL vmlinux 0x3821cfad d_walk +EXPORT_SYMBOL_GPL vmlinux 0x38374815 clear_selection +EXPORT_SYMBOL_GPL vmlinux 0x385db95d screen_glyph +EXPORT_SYMBOL_GPL vmlinux 0x3873e4b8 raw_v6_hashinfo +EXPORT_SYMBOL_GPL vmlinux 0x3890e68c tty_port_register_device_attr_serdev +EXPORT_SYMBOL_GPL vmlinux 0x389b64a2 static_key_count +EXPORT_SYMBOL_GPL vmlinux 0x389d4295 kthread_flush_worker +EXPORT_SYMBOL_GPL vmlinux 0x38a1fad9 inet_csk_get_port +EXPORT_SYMBOL_GPL vmlinux 0x38aa1397 gpiod_add_lookup_table +EXPORT_SYMBOL_GPL vmlinux 0x38b4f881 msi_desc_to_pci_sysdata +EXPORT_SYMBOL_GPL vmlinux 0x38c9bfb0 get_task_mm +EXPORT_SYMBOL_GPL vmlinux 0x38f7e2bf ccw_device_pnso +EXPORT_SYMBOL_GPL vmlinux 0x390b2825 setfl +EXPORT_SYMBOL_GPL vmlinux 0x391ec66c init_dummy_netdev +EXPORT_SYMBOL_GPL vmlinux 0x393ffa6f asymmetric_key_generate_id +EXPORT_SYMBOL_GPL vmlinux 0x39579087 sfp_may_have_phy +EXPORT_SYMBOL_GPL vmlinux 0x3957eeb0 shmem_zero_setup +EXPORT_SYMBOL_GPL vmlinux 0x3970a1f0 kvm_s390_gisc_unregister +EXPORT_SYMBOL_GPL vmlinux 0x398d5b27 dev_set_name +EXPORT_SYMBOL_GPL vmlinux 0x39a7affc driver_deferred_probe_timeout +EXPORT_SYMBOL_GPL vmlinux 0x39ad64f5 devres_close_group +EXPORT_SYMBOL_GPL vmlinux 0x39b8cedc ip6_update_pmtu +EXPORT_SYMBOL_GPL vmlinux 0x39c757b4 vring_del_virtqueue +EXPORT_SYMBOL_GPL vmlinux 0x39ded098 rdma_cgrp_subsys_enabled_key +EXPORT_SYMBOL_GPL vmlinux 0x39e511ea bpf_prog_add +EXPORT_SYMBOL_GPL vmlinux 0x39e61495 nf_logger_request_module +EXPORT_SYMBOL_GPL vmlinux 0x39f11af1 crypto_register_aeads +EXPORT_SYMBOL_GPL vmlinux 0x39fd83db halt_poll_ns_shrink +EXPORT_SYMBOL_GPL vmlinux 0x3a287c79 __gmap_translate +EXPORT_SYMBOL_GPL vmlinux 0x3a2cad4b irq_chip_mask_ack_parent +EXPORT_SYMBOL_GPL vmlinux 0x3a2e1b39 dm_report_zones_cb +EXPORT_SYMBOL_GPL vmlinux 0x3a3f64e4 iommu_domain_alloc +EXPORT_SYMBOL_GPL vmlinux 0x3a3fc09d blk_queue_max_discard_segments +EXPORT_SYMBOL_GPL vmlinux 0x3a47f1eb ncsi_start_dev +EXPORT_SYMBOL_GPL vmlinux 0x3a536bd7 ring_buffer_read_finish +EXPORT_SYMBOL_GPL vmlinux 0x3a55981a static_key_enable_cpuslocked +EXPORT_SYMBOL_GPL vmlinux 0x3a57d09d crypto_alg_sem +EXPORT_SYMBOL_GPL vmlinux 0x3a61fce1 device_connection_find_match +EXPORT_SYMBOL_GPL vmlinux 0x3a8cdc5c __hrtimer_get_remaining +EXPORT_SYMBOL_GPL vmlinux 0x3a9be019 asymmetric_key_id_partial +EXPORT_SYMBOL_GPL vmlinux 0x3ab20728 skb_mpls_push +EXPORT_SYMBOL_GPL vmlinux 0x3b00603f iterate_mounts +EXPORT_SYMBOL_GPL vmlinux 0x3b0e1f78 to_software_node +EXPORT_SYMBOL_GPL vmlinux 0x3b2dd76c pci_epc_mem_free_addr +EXPORT_SYMBOL_GPL vmlinux 0x3b30d6cc kvm_io_bus_write +EXPORT_SYMBOL_GPL vmlinux 0x3b7f0ba4 mark_page_dirty +EXPORT_SYMBOL_GPL vmlinux 0x3b8aeeb5 fwnode_get_next_parent +EXPORT_SYMBOL_GPL vmlinux 0x3b95f543 klp_shadow_free +EXPORT_SYMBOL_GPL vmlinux 0x3b9cd6fe sched_trace_cfs_rq_avg +EXPORT_SYMBOL_GPL vmlinux 0x3ba01b47 get_compat_sigset +EXPORT_SYMBOL_GPL vmlinux 0x3ba4aa0e sock_zerocopy_alloc +EXPORT_SYMBOL_GPL vmlinux 0x3babbf4d gpiochip_generic_request +EXPORT_SYMBOL_GPL vmlinux 0x3bdb5d28 alg_test +EXPORT_SYMBOL_GPL vmlinux 0x3be395b1 sk_msg_alloc +EXPORT_SYMBOL_GPL vmlinux 0x3bef269e set_primary_fwnode +EXPORT_SYMBOL_GPL vmlinux 0x3bf17755 mpi_read_buffer +EXPORT_SYMBOL_GPL vmlinux 0x3c1c3725 rcu_fwd_progress_check +EXPORT_SYMBOL_GPL vmlinux 0x3c29310c devm_watchdog_register_device +EXPORT_SYMBOL_GPL vmlinux 0x3c340daf netlink_strict_get_check +EXPORT_SYMBOL_GPL vmlinux 0x3c681dc4 ring_buffer_record_disable +EXPORT_SYMBOL_GPL vmlinux 0x3c693875 pci_d3cold_disable +EXPORT_SYMBOL_GPL vmlinux 0x3c6d685b exportfs_encode_inode_fh +EXPORT_SYMBOL_GPL vmlinux 0x3c8f9e71 trace_event_buffer_commit +EXPORT_SYMBOL_GPL vmlinux 0x3cc60807 evm_set_key +EXPORT_SYMBOL_GPL vmlinux 0x3cce9b92 kill_dev_dax +EXPORT_SYMBOL_GPL vmlinux 0x3cd06035 add_input_randomness +EXPORT_SYMBOL_GPL vmlinux 0x3cf3be35 ping_get_port +EXPORT_SYMBOL_GPL vmlinux 0x3d006d95 iommu_domain_window_disable +EXPORT_SYMBOL_GPL vmlinux 0x3d026222 sock_zerocopy_put +EXPORT_SYMBOL_GPL vmlinux 0x3d03eff4 sfp_register_socket +EXPORT_SYMBOL_GPL vmlinux 0x3d16ee7b gpiod_to_chip +EXPORT_SYMBOL_GPL vmlinux 0x3d21c1c4 sfp_bus_add_upstream +EXPORT_SYMBOL_GPL vmlinux 0x3d337033 platform_device_register_full +EXPORT_SYMBOL_GPL vmlinux 0x3d510a7b rcu_jiffies_till_stall_check +EXPORT_SYMBOL_GPL vmlinux 0x3d521236 md_find_rdev_rcu +EXPORT_SYMBOL_GPL vmlinux 0x3d74dbbf alarm_init +EXPORT_SYMBOL_GPL vmlinux 0x3d7a7e98 crypto_stats_aead_encrypt +EXPORT_SYMBOL_GPL vmlinux 0x3d872429 gpiochip_irq_map +EXPORT_SYMBOL_GPL vmlinux 0x3d98dc10 devlink_alloc +EXPORT_SYMBOL_GPL vmlinux 0x3de41b35 bpf_offload_dev_netdev_unregister +EXPORT_SYMBOL_GPL vmlinux 0x3de9cae1 crypto_remove_final +EXPORT_SYMBOL_GPL vmlinux 0x3df13b0c srcu_barrier +EXPORT_SYMBOL_GPL vmlinux 0x3e17d157 wbt_enable_default +EXPORT_SYMBOL_GPL vmlinux 0x3e279df6 virtio_check_driver_offered_feature +EXPORT_SYMBOL_GPL vmlinux 0x3e3efaf2 ipl_info +EXPORT_SYMBOL_GPL vmlinux 0x3e52e768 bpf_trace_run1 +EXPORT_SYMBOL_GPL vmlinux 0x3e5545e8 __udp_enqueue_schedule_skb +EXPORT_SYMBOL_GPL vmlinux 0x3e5f3e18 elv_rqhash_add +EXPORT_SYMBOL_GPL vmlinux 0x3e7080cb mpi_read_from_buffer +EXPORT_SYMBOL_GPL vmlinux 0x3e8e0db1 wbc_detach_inode +EXPORT_SYMBOL_GPL vmlinux 0x3eb32993 key_type_user +EXPORT_SYMBOL_GPL vmlinux 0x3ec439ae crypto_ahash_final +EXPORT_SYMBOL_GPL vmlinux 0x3ed260aa rhashtable_walk_peek +EXPORT_SYMBOL_GPL vmlinux 0x3ee03d0f gpiochip_irq_domain_activate +EXPORT_SYMBOL_GPL vmlinux 0x3ef051c8 crypto_inc +EXPORT_SYMBOL_GPL vmlinux 0x3efd1889 dax_direct_access +EXPORT_SYMBOL_GPL vmlinux 0x3f041880 bpf_offload_dev_create +EXPORT_SYMBOL_GPL vmlinux 0x3f7d9ff4 percpu_down_write +EXPORT_SYMBOL_GPL vmlinux 0x3f83b99c __sbitmap_queue_get +EXPORT_SYMBOL_GPL vmlinux 0x3f84bcd7 dax_alive +EXPORT_SYMBOL_GPL vmlinux 0x3f8ab72e devlink_fmsg_bool_put +EXPORT_SYMBOL_GPL vmlinux 0x3fb88776 dma_buf_attach +EXPORT_SYMBOL_GPL vmlinux 0x3fba01f4 crypto_lookup_template +EXPORT_SYMBOL_GPL vmlinux 0x3fd02294 device_match_name +EXPORT_SYMBOL_GPL vmlinux 0x3fe6c346 devlink_fmsg_binary_pair_put +EXPORT_SYMBOL_GPL vmlinux 0x3fef6f19 kthread_unpark +EXPORT_SYMBOL_GPL vmlinux 0x3ffdacf3 timerqueue_iterate_next +EXPORT_SYMBOL_GPL vmlinux 0x4003c1b5 dw_pcie_upconfig_setup +EXPORT_SYMBOL_GPL vmlinux 0x400e51b2 rhashtable_free_and_destroy +EXPORT_SYMBOL_GPL vmlinux 0x402df600 devlink_flash_update_status_notify +EXPORT_SYMBOL_GPL vmlinux 0x403f9529 gpio_request_one +EXPORT_SYMBOL_GPL vmlinux 0x403fa8d5 public_key_subtype +EXPORT_SYMBOL_GPL vmlinux 0x40621ae7 __bio_crypt_clone +EXPORT_SYMBOL_GPL vmlinux 0x406abd71 cpci_hp_unregister_controller +EXPORT_SYMBOL_GPL vmlinux 0x406c4cb1 hrtimer_resolution +EXPORT_SYMBOL_GPL vmlinux 0x4071b517 out_of_line_wait_on_bit_timeout +EXPORT_SYMBOL_GPL vmlinux 0x4099f919 tun_ptr_free +EXPORT_SYMBOL_GPL vmlinux 0x40acfac9 sk_set_memalloc +EXPORT_SYMBOL_GPL vmlinux 0x40bb4f45 bus_get_device_klist +EXPORT_SYMBOL_GPL vmlinux 0x40caf48d ip6_redirect +EXPORT_SYMBOL_GPL vmlinux 0x40cc59e5 blk_rq_err_bytes +EXPORT_SYMBOL_GPL vmlinux 0x40d304ad tty_port_unregister_device +EXPORT_SYMBOL_GPL vmlinux 0x40d65412 __sock_recv_wifi_status +EXPORT_SYMBOL_GPL vmlinux 0x40f8b94e ring_buffer_iter_dropped +EXPORT_SYMBOL_GPL vmlinux 0x40f8bd4e klist_add_before +EXPORT_SYMBOL_GPL vmlinux 0x410f47ef scatterwalk_copychunks +EXPORT_SYMBOL_GPL vmlinux 0x41184169 fib4_rule_default +EXPORT_SYMBOL_GPL vmlinux 0x4122d449 debugfs_lookup +EXPORT_SYMBOL_GPL vmlinux 0x412bc681 ring_buffer_empty_cpu +EXPORT_SYMBOL_GPL vmlinux 0x416c11d9 device_property_read_string +EXPORT_SYMBOL_GPL vmlinux 0x416da7fc crypto_grab_akcipher +EXPORT_SYMBOL_GPL vmlinux 0x417d8076 dax_zero_page_range +EXPORT_SYMBOL_GPL vmlinux 0x41814cb8 dirty_writeback_interval +EXPORT_SYMBOL_GPL vmlinux 0x418a59ef tcp_enter_memory_pressure +EXPORT_SYMBOL_GPL vmlinux 0x41984d83 xas_store +EXPORT_SYMBOL_GPL vmlinux 0x419e7efd sfp_module_stop +EXPORT_SYMBOL_GPL vmlinux 0x41b200f9 percpu_ref_init +EXPORT_SYMBOL_GPL vmlinux 0x41cd74db kthread_flush_work +EXPORT_SYMBOL_GPL vmlinux 0x41d0ee9b gpiochip_line_is_valid +EXPORT_SYMBOL_GPL vmlinux 0x41d2948d property_entries_dup +EXPORT_SYMBOL_GPL vmlinux 0x41d91bbe kernfs_notify +EXPORT_SYMBOL_GPL vmlinux 0x41ed3cec eventfd_ctx_remove_wait_queue +EXPORT_SYMBOL_GPL vmlinux 0x41fb68cb copy_from_user_nofault +EXPORT_SYMBOL_GPL vmlinux 0x421158ed crypto_grab_shash +EXPORT_SYMBOL_GPL vmlinux 0x42214614 __ftrace_vbprintk +EXPORT_SYMBOL_GPL vmlinux 0x42548360 class_destroy +EXPORT_SYMBOL_GPL vmlinux 0x42825ce2 rcu_scheduler_active +EXPORT_SYMBOL_GPL vmlinux 0x42b560c8 fat_get_dotdot_entry +EXPORT_SYMBOL_GPL vmlinux 0x42bf7236 blk_trace_remove +EXPORT_SYMBOL_GPL vmlinux 0x42c3b7f2 gmap_discard +EXPORT_SYMBOL_GPL vmlinux 0x42c7b994 mmu_notifier_put +EXPORT_SYMBOL_GPL vmlinux 0x42e9d0da ring_buffer_unlock_commit +EXPORT_SYMBOL_GPL vmlinux 0x42f51902 kernfs_put +EXPORT_SYMBOL_GPL vmlinux 0x430fa18b cpu_topology +EXPORT_SYMBOL_GPL vmlinux 0x43186cd1 __devm_create_dev_dax +EXPORT_SYMBOL_GPL vmlinux 0x433745f1 platform_msi_domain_alloc_irqs +EXPORT_SYMBOL_GPL vmlinux 0x4347ccb8 __bio_add_page +EXPORT_SYMBOL_GPL vmlinux 0x437eb1df ipv6_mod_enabled +EXPORT_SYMBOL_GPL vmlinux 0x4386ffb0 cio_halt +EXPORT_SYMBOL_GPL vmlinux 0x43aa319e lease_register_notifier +EXPORT_SYMBOL_GPL vmlinux 0x43b6357a rtnl_af_register +EXPORT_SYMBOL_GPL vmlinux 0x43baf551 ip6_append_data +EXPORT_SYMBOL_GPL vmlinux 0x43c33665 isc_unregister +EXPORT_SYMBOL_GPL vmlinux 0x43de4f24 smp_call_function_single_async +EXPORT_SYMBOL_GPL vmlinux 0x43f19a43 ipv6_recv_error +EXPORT_SYMBOL_GPL vmlinux 0x440be4b9 trace_seq_putmem +EXPORT_SYMBOL_GPL vmlinux 0x4412a6ec kthread_use_mm +EXPORT_SYMBOL_GPL vmlinux 0x44178841 tracing_snapshot_cond_enable +EXPORT_SYMBOL_GPL vmlinux 0x442073c2 virtqueue_get_desc_addr +EXPORT_SYMBOL_GPL vmlinux 0x44250e16 user_update +EXPORT_SYMBOL_GPL vmlinux 0x446aa422 gpiod_set_raw_value +EXPORT_SYMBOL_GPL vmlinux 0x44784ea7 tty_buffer_lock_exclusive +EXPORT_SYMBOL_GPL vmlinux 0x4484a5a4 wait_for_device_probe +EXPORT_SYMBOL_GPL vmlinux 0x44886e75 gmap_register_pte_notifier +EXPORT_SYMBOL_GPL vmlinux 0x44957dba kthread_unuse_mm +EXPORT_SYMBOL_GPL vmlinux 0x449983f9 vfs_writef +EXPORT_SYMBOL_GPL vmlinux 0x44b08008 gpiochip_get_desc +EXPORT_SYMBOL_GPL vmlinux 0x44ba8d3f tty_buffer_set_limit +EXPORT_SYMBOL_GPL vmlinux 0x44bae227 bit_wait_timeout +EXPORT_SYMBOL_GPL vmlinux 0x44cf8cf0 blk_zone_cond_str +EXPORT_SYMBOL_GPL vmlinux 0x4507f4a8 cpuhp_tasks_frozen +EXPORT_SYMBOL_GPL vmlinux 0x450de1a9 ip4_datagram_release_cb +EXPORT_SYMBOL_GPL vmlinux 0x45145987 tpm_chip_unregister +EXPORT_SYMBOL_GPL vmlinux 0x451bf97a blk_stat_enable_accounting +EXPORT_SYMBOL_GPL vmlinux 0x4536226a debugfs_create_x16 +EXPORT_SYMBOL_GPL vmlinux 0x455a6a67 ccw_device_force_console +EXPORT_SYMBOL_GPL vmlinux 0x45651198 sock_inuse_get +EXPORT_SYMBOL_GPL vmlinux 0x457594fa crypto_alg_list +EXPORT_SYMBOL_GPL vmlinux 0x4585c2bd fsl_mc_device_group +EXPORT_SYMBOL_GPL vmlinux 0x458f9cf5 list_lru_count_one +EXPORT_SYMBOL_GPL vmlinux 0x459ce505 tcp_set_keepalive +EXPORT_SYMBOL_GPL vmlinux 0x45a05750 pci_user_write_config_word +EXPORT_SYMBOL_GPL vmlinux 0x45bebe30 xdp_attachment_query +EXPORT_SYMBOL_GPL vmlinux 0x45e19e87 tpm_pcr_read +EXPORT_SYMBOL_GPL vmlinux 0x46013233 net_dec_ingress_queue +EXPORT_SYMBOL_GPL vmlinux 0x46035f74 crypto_alloc_rng +EXPORT_SYMBOL_GPL vmlinux 0x46219d06 udp4_hwcsum +EXPORT_SYMBOL_GPL vmlinux 0x462c1c23 pci_set_host_bridge_release +EXPORT_SYMBOL_GPL vmlinux 0x463bf65d sk_msg_free_nocharge +EXPORT_SYMBOL_GPL vmlinux 0x468627a6 dw_pcie_link_set_n_fts +EXPORT_SYMBOL_GPL vmlinux 0x4688d7ec pvclock_gtod_unregister_notifier +EXPORT_SYMBOL_GPL vmlinux 0x46a757fe device_create_with_groups +EXPORT_SYMBOL_GPL vmlinux 0x46ae9bf7 sched_trace_rq_avg_rt +EXPORT_SYMBOL_GPL vmlinux 0x46c5fd49 bpf_prog_free +EXPORT_SYMBOL_GPL vmlinux 0x46cc16f2 crypto_hash_walk_first +EXPORT_SYMBOL_GPL vmlinux 0x46d0f9bf platform_get_irq_byname_optional +EXPORT_SYMBOL_GPL vmlinux 0x46e163dd virtqueue_get_vring_size +EXPORT_SYMBOL_GPL vmlinux 0x46eb55f0 platform_driver_unregister +EXPORT_SYMBOL_GPL vmlinux 0x46f42be0 devlink_fmsg_u8_put +EXPORT_SYMBOL_GPL vmlinux 0x46f47cf8 rdev_set_badblocks +EXPORT_SYMBOL_GPL vmlinux 0x47055aff fib_info_nh_uses_dev +EXPORT_SYMBOL_GPL vmlinux 0x4713cea0 virtio_max_dma_size +EXPORT_SYMBOL_GPL vmlinux 0x471bcf68 devlink_trap_policers_register +EXPORT_SYMBOL_GPL vmlinux 0x47229b5c gpio_request +EXPORT_SYMBOL_GPL vmlinux 0x4724a0f2 l3mdev_fib_table_rcu +EXPORT_SYMBOL_GPL vmlinux 0x47388826 debugfs_create_file +EXPORT_SYMBOL_GPL vmlinux 0x476167c8 remove_memory +EXPORT_SYMBOL_GPL vmlinux 0x4761f17c register_netevent_notifier +EXPORT_SYMBOL_GPL vmlinux 0x47736f1f PageHuge +EXPORT_SYMBOL_GPL vmlinux 0x47755659 percpu_free_rwsem +EXPORT_SYMBOL_GPL vmlinux 0x477f0b20 __vfs_setxattr_noperm +EXPORT_SYMBOL_GPL vmlinux 0x4783f5f1 tty_release_struct +EXPORT_SYMBOL_GPL vmlinux 0x47884890 system_power_efficient_wq +EXPORT_SYMBOL_GPL vmlinux 0x47a89953 __tracepoint_pelt_cfs_tp +EXPORT_SYMBOL_GPL vmlinux 0x47ba77ef css_sch_device_unregister +EXPORT_SYMBOL_GPL vmlinux 0x47c2f080 devm_ioremap_uc +EXPORT_SYMBOL_GPL vmlinux 0x47da2a7c ip6_route_output_flags_noref +EXPORT_SYMBOL_GPL vmlinux 0x47e59ded vfs_removexattr +EXPORT_SYMBOL_GPL vmlinux 0x47f5c623 perf_trace_buf_alloc +EXPORT_SYMBOL_GPL vmlinux 0x4800fe7a bpf_trace_run2 +EXPORT_SYMBOL_GPL vmlinux 0x4809b725 gpiod_set_array_value +EXPORT_SYMBOL_GPL vmlinux 0x4812e842 class_dev_iter_exit +EXPORT_SYMBOL_GPL vmlinux 0x48234a5a gmap_disable +EXPORT_SYMBOL_GPL vmlinux 0x4847b09f get_dcookie +EXPORT_SYMBOL_GPL vmlinux 0x485cd7f6 kvm_rebooting +EXPORT_SYMBOL_GPL vmlinux 0x48783237 freq_qos_add_notifier +EXPORT_SYMBOL_GPL vmlinux 0x48a7cab3 sysfs_create_group +EXPORT_SYMBOL_GPL vmlinux 0x48bbf525 klist_next +EXPORT_SYMBOL_GPL vmlinux 0x48e79875 tty_kopen +EXPORT_SYMBOL_GPL vmlinux 0x49242bc7 freezer_cgrp_subsys_on_dfl_key +EXPORT_SYMBOL_GPL vmlinux 0x49282775 fib_nl_newrule +EXPORT_SYMBOL_GPL vmlinux 0x4939ebcd numa_map_to_online_node +EXPORT_SYMBOL_GPL vmlinux 0x4949093d virtqueue_add_inbuf +EXPORT_SYMBOL_GPL vmlinux 0x494d4f6a gmap_shadow +EXPORT_SYMBOL_GPL vmlinux 0x4963e812 fat_truncate_time +EXPORT_SYMBOL_GPL vmlinux 0x49647479 ip6_datagram_connect +EXPORT_SYMBOL_GPL vmlinux 0x4975052c device_match_any +EXPORT_SYMBOL_GPL vmlinux 0x49755d88 pci_hp_destroy +EXPORT_SYMBOL_GPL vmlinux 0x499043d3 crypto_init_queue +EXPORT_SYMBOL_GPL vmlinux 0x499d69ba fat_alloc_new_dir +EXPORT_SYMBOL_GPL vmlinux 0x49a6e8bd gpiochip_populate_parent_fwspec_fourcell +EXPORT_SYMBOL_GPL vmlinux 0x49ca9e72 sock_diag_put_meminfo +EXPORT_SYMBOL_GPL vmlinux 0x49d4b943 preempt_notifier_unregister +EXPORT_SYMBOL_GPL vmlinux 0x49d97d9e kvm_io_bus_get_dev +EXPORT_SYMBOL_GPL vmlinux 0x49db5c64 __tracepoint_neigh_event_send_done +EXPORT_SYMBOL_GPL vmlinux 0x49dc9c0c simple_attr_read +EXPORT_SYMBOL_GPL vmlinux 0x49e96999 cond_synchronize_rcu +EXPORT_SYMBOL_GPL vmlinux 0x49ef8d6c devm_kfree +EXPORT_SYMBOL_GPL vmlinux 0x4a0b3236 iommu_group_add_device +EXPORT_SYMBOL_GPL vmlinux 0x4a0e591b __inode_attach_wb +EXPORT_SYMBOL_GPL vmlinux 0x4a0f2486 dequeue_signal +EXPORT_SYMBOL_GPL vmlinux 0x4a17ed66 sysrq_mask +EXPORT_SYMBOL_GPL vmlinux 0x4a2e1dae gfn_to_hva_memslot +EXPORT_SYMBOL_GPL vmlinux 0x4a65d001 __xas_prev +EXPORT_SYMBOL_GPL vmlinux 0x4a6d1106 devm_hwrng_register +EXPORT_SYMBOL_GPL vmlinux 0x4a6e0fb3 md_stop_writes +EXPORT_SYMBOL_GPL vmlinux 0x4abfe5d6 tcp_bpf_sendmsg_redir +EXPORT_SYMBOL_GPL vmlinux 0x4ac70ebc rdev_clear_badblocks +EXPORT_SYMBOL_GPL vmlinux 0x4aefd8bb sysfs_remove_files +EXPORT_SYMBOL_GPL vmlinux 0x4b02f6a5 pci_msi_mask_irq +EXPORT_SYMBOL_GPL vmlinux 0x4b339986 __pneigh_lookup +EXPORT_SYMBOL_GPL vmlinux 0x4b3d64a7 pci_num_vf +EXPORT_SYMBOL_GPL vmlinux 0x4b47fd11 cgrp_dfl_root +EXPORT_SYMBOL_GPL vmlinux 0x4b74a6f5 crypto_grab_ahash +EXPORT_SYMBOL_GPL vmlinux 0x4b7c03e7 iomap_writepages +EXPORT_SYMBOL_GPL vmlinux 0x4ba0da02 iommu_domain_get_attr +EXPORT_SYMBOL_GPL vmlinux 0x4ba88dcb chsc_sgib +EXPORT_SYMBOL_GPL vmlinux 0x4bb102f0 xfrm_audit_state_add +EXPORT_SYMBOL_GPL vmlinux 0x4bd162cd nvm_get_chunk_meta +EXPORT_SYMBOL_GPL vmlinux 0x4bd89c5a css_chsc_characteristics +EXPORT_SYMBOL_GPL vmlinux 0x4beae578 gpiod_get_array_optional +EXPORT_SYMBOL_GPL vmlinux 0x4bf95e4b iomap_set_page_dirty +EXPORT_SYMBOL_GPL vmlinux 0x4c0fdfca fsnotify_alloc_group +EXPORT_SYMBOL_GPL vmlinux 0x4c6a22d8 sysfs_remove_group +EXPORT_SYMBOL_GPL vmlinux 0x4ca184ff anon_transport_class_register +EXPORT_SYMBOL_GPL vmlinux 0x4cbeb61a tcp_ca_get_key_by_name +EXPORT_SYMBOL_GPL vmlinux 0x4cc3e037 irq_chip_get_parent_state +EXPORT_SYMBOL_GPL vmlinux 0x4cd7cda4 blk_mq_unfreeze_queue +EXPORT_SYMBOL_GPL vmlinux 0x4ceb3851 cio_tm_intrg +EXPORT_SYMBOL_GPL vmlinux 0x4d0015e2 cpu_hotplug_disable +EXPORT_SYMBOL_GPL vmlinux 0x4d0cda13 xfrm_state_mtu +EXPORT_SYMBOL_GPL vmlinux 0x4d1ab7d2 ip_route_output_flow +EXPORT_SYMBOL_GPL vmlinux 0x4d23a8b6 clean_acked_data_enable +EXPORT_SYMBOL_GPL vmlinux 0x4d4d7b79 blk_mq_map_queues +EXPORT_SYMBOL_GPL vmlinux 0x4d6d0bbc iommu_group_ref_get +EXPORT_SYMBOL_GPL vmlinux 0x4d7acdbb dma_buf_export +EXPORT_SYMBOL_GPL vmlinux 0x4d7c5fad css_sch_is_valid +EXPORT_SYMBOL_GPL vmlinux 0x4d91c1fd subsys_virtual_register +EXPORT_SYMBOL_GPL vmlinux 0x4daf2802 device_attach +EXPORT_SYMBOL_GPL vmlinux 0x4db8c599 iomap_dio_rw +EXPORT_SYMBOL_GPL vmlinux 0x4dd132ff skb_to_sgvec_nomark +EXPORT_SYMBOL_GPL vmlinux 0x4dd48832 irq_chip_mask_parent +EXPORT_SYMBOL_GPL vmlinux 0x4dd9d14d cn_netlink_send_mult +EXPORT_SYMBOL_GPL vmlinux 0x4dde2541 crypto_chain +EXPORT_SYMBOL_GPL vmlinux 0x4de5e6b5 component_master_add_with_match +EXPORT_SYMBOL_GPL vmlinux 0x4df59580 blk_rq_unprep_clone +EXPORT_SYMBOL_GPL vmlinux 0x4e19913a hwrng_unregister +EXPORT_SYMBOL_GPL vmlinux 0x4e3fd1b4 kvm_release_pfn_clean +EXPORT_SYMBOL_GPL vmlinux 0x4e4043ce transport_class_register +EXPORT_SYMBOL_GPL vmlinux 0x4e51b4b3 get_device_system_crosststamp +EXPORT_SYMBOL_GPL vmlinux 0x4e702d74 crypto_aead_encrypt +EXPORT_SYMBOL_GPL vmlinux 0x4e9fc425 virtqueue_kick +EXPORT_SYMBOL_GPL vmlinux 0x4eac5fc1 cpu_mitigations_auto_nosmt +EXPORT_SYMBOL_GPL vmlinux 0x4ec153c6 nr_running +EXPORT_SYMBOL_GPL vmlinux 0x4ec5f6d2 fscrypt_match_name +EXPORT_SYMBOL_GPL vmlinux 0x4ed3de6c device_store_bool +EXPORT_SYMBOL_GPL vmlinux 0x4eda64e8 blocking_notifier_chain_unregister +EXPORT_SYMBOL_GPL vmlinux 0x4ede12df bpf_map_inc_with_uref +EXPORT_SYMBOL_GPL vmlinux 0x4ee151f6 kthread_cancel_delayed_work_sync +EXPORT_SYMBOL_GPL vmlinux 0x4ef5bcf4 perf_swevent_get_recursion_context +EXPORT_SYMBOL_GPL vmlinux 0x4f2f26b4 register_pernet_subsys +EXPORT_SYMBOL_GPL vmlinux 0x4f3ea717 set_selection_kernel +EXPORT_SYMBOL_GPL vmlinux 0x4f46a0eb hrtimer_init_sleeper +EXPORT_SYMBOL_GPL vmlinux 0x4f5e2a37 fs_dax_get_by_bdev +EXPORT_SYMBOL_GPL vmlinux 0x4f6a07fe show_rcu_gp_kthreads +EXPORT_SYMBOL_GPL vmlinux 0x4f704dae ndo_dflt_bridge_getlink +EXPORT_SYMBOL_GPL vmlinux 0x4fe1eddf unregister_netevent_notifier +EXPORT_SYMBOL_GPL vmlinux 0x4ffa8877 nvm_set_chunk_meta +EXPORT_SYMBOL_GPL vmlinux 0x5018d4ad pci_cfg_access_unlock +EXPORT_SYMBOL_GPL vmlinux 0x5068868d irq_set_default_host +EXPORT_SYMBOL_GPL vmlinux 0x506bc156 iommu_domain_free +EXPORT_SYMBOL_GPL vmlinux 0x507ebc7d fl6_update_dst +EXPORT_SYMBOL_GPL vmlinux 0x5091b823 ring_buffer_read_start +EXPORT_SYMBOL_GPL vmlinux 0x509eeddd attribute_container_classdev_to_container +EXPORT_SYMBOL_GPL vmlinux 0x50a54962 sock_prot_inuse_get +EXPORT_SYMBOL_GPL vmlinux 0x50a63f93 __tracepoint_devlink_hwmsg +EXPORT_SYMBOL_GPL vmlinux 0x50ab9516 locks_release_private +EXPORT_SYMBOL_GPL vmlinux 0x50c2cf45 nf_ct_hook +EXPORT_SYMBOL_GPL vmlinux 0x50d9ce47 sched_trace_cfs_rq_path +EXPORT_SYMBOL_GPL vmlinux 0x50e67b46 xfrm_audit_policy_add +EXPORT_SYMBOL_GPL vmlinux 0x50e7193a __i2c_first_dynamic_bus_num +EXPORT_SYMBOL_GPL vmlinux 0x50f5ca92 blk_register_queue +EXPORT_SYMBOL_GPL vmlinux 0x50fad434 round_jiffies_up +EXPORT_SYMBOL_GPL vmlinux 0x512539e0 blk_queue_can_use_dma_map_merging +EXPORT_SYMBOL_GPL vmlinux 0x51390c96 rcu_barrier_tasks_rude +EXPORT_SYMBOL_GPL vmlinux 0x51518763 kvm_read_guest_offset_cached +EXPORT_SYMBOL_GPL vmlinux 0x5158f542 software_node_fwnode +EXPORT_SYMBOL_GPL vmlinux 0x517a7975 rsa_parse_pub_key +EXPORT_SYMBOL_GPL vmlinux 0x5189d5cd dev_fwnode +EXPORT_SYMBOL_GPL vmlinux 0x51d9ddc5 pci_epc_write_header +EXPORT_SYMBOL_GPL vmlinux 0x51ecba3a scsi_mode_select +EXPORT_SYMBOL_GPL vmlinux 0x520e827c __mnt_is_readonly +EXPORT_SYMBOL_GPL vmlinux 0x521118e9 update_time +EXPORT_SYMBOL_GPL vmlinux 0x52121118 __tracepoint_non_standard_event +EXPORT_SYMBOL_GPL vmlinux 0x521229f0 device_release_driver +EXPORT_SYMBOL_GPL vmlinux 0x5218d9f2 ftrace_ops_set_global_filter +EXPORT_SYMBOL_GPL vmlinux 0x5236497d trace_clock +EXPORT_SYMBOL_GPL vmlinux 0x5259e5d2 devm_gpiod_get_optional +EXPORT_SYMBOL_GPL vmlinux 0x525c79c6 ipv4_sk_redirect +EXPORT_SYMBOL_GPL vmlinux 0x525cfd33 __fib_lookup +EXPORT_SYMBOL_GPL vmlinux 0x5265bfd6 l3mdev_link_scope_lookup +EXPORT_SYMBOL_GPL vmlinux 0x5268fa8c root_device_unregister +EXPORT_SYMBOL_GPL vmlinux 0x526ab881 devm_serdev_device_open +EXPORT_SYMBOL_GPL vmlinux 0x52779576 fscrypt_file_open +EXPORT_SYMBOL_GPL vmlinux 0x5281d361 __fat_fs_error +EXPORT_SYMBOL_GPL vmlinux 0x5284fb16 blk_mq_freeze_queue_wait +EXPORT_SYMBOL_GPL vmlinux 0x52864b89 __devm_alloc_percpu +EXPORT_SYMBOL_GPL vmlinux 0x52865daa posix_clock_unregister +EXPORT_SYMBOL_GPL vmlinux 0x52a90dfc __inet_twsk_schedule +EXPORT_SYMBOL_GPL vmlinux 0x52aa2195 mddev_suspend +EXPORT_SYMBOL_GPL vmlinux 0x52abe9e1 crypto_alloc_ahash +EXPORT_SYMBOL_GPL vmlinux 0x52b1e3c7 pci_flags +EXPORT_SYMBOL_GPL vmlinux 0x52bbda02 kobject_get_path +EXPORT_SYMBOL_GPL vmlinux 0x52c35e83 call_rcu_tasks_trace +EXPORT_SYMBOL_GPL vmlinux 0x52d54fce devlink_info_version_stored_put +EXPORT_SYMBOL_GPL vmlinux 0x52e1be1d kset_find_obj +EXPORT_SYMBOL_GPL vmlinux 0x52eebcf9 pci_stop_root_bus +EXPORT_SYMBOL_GPL vmlinux 0x53146943 hvc_instantiate +EXPORT_SYMBOL_GPL vmlinux 0x532346a6 gpiod_set_config +EXPORT_SYMBOL_GPL vmlinux 0x533be612 devm_device_add_group +EXPORT_SYMBOL_GPL vmlinux 0x534d1c57 sched_setattr +EXPORT_SYMBOL_GPL vmlinux 0x5358864e devlink_fmsg_binary_pair_nest_end +EXPORT_SYMBOL_GPL vmlinux 0x5392d247 blk_mq_freeze_queue +EXPORT_SYMBOL_GPL vmlinux 0x5395ca1e kvm_vcpu_map +EXPORT_SYMBOL_GPL vmlinux 0x539e747a mnt_drop_write +EXPORT_SYMBOL_GPL vmlinux 0x53a5fe85 crypto_unregister_akcipher +EXPORT_SYMBOL_GPL vmlinux 0x53ca18b7 devlink_port_params_unregister +EXPORT_SYMBOL_GPL vmlinux 0x5418113d subsys_interface_unregister +EXPORT_SYMBOL_GPL vmlinux 0x541bd60a irq_work_run +EXPORT_SYMBOL_GPL vmlinux 0x54297303 crypto_cipher_decrypt_one +EXPORT_SYMBOL_GPL vmlinux 0x543eb1ad gpiod_set_value_cansleep +EXPORT_SYMBOL_GPL vmlinux 0x54892731 sock_zerocopy_callback +EXPORT_SYMBOL_GPL vmlinux 0x549525ef handle_nested_irq +EXPORT_SYMBOL_GPL vmlinux 0x54a8481a blk_poll +EXPORT_SYMBOL_GPL vmlinux 0x54b6aeab raw_seq_stop +EXPORT_SYMBOL_GPL vmlinux 0x54c0a529 invalidate_inode_pages2 +EXPORT_SYMBOL_GPL vmlinux 0x54ee302b ip6_sk_redirect +EXPORT_SYMBOL_GPL vmlinux 0x54feca63 device_link_add +EXPORT_SYMBOL_GPL vmlinux 0x55339365 flush_delayed_fput +EXPORT_SYMBOL_GPL vmlinux 0x5537eff9 dma_buf_unpin +EXPORT_SYMBOL_GPL vmlinux 0x55417264 unregister_vt_notifier +EXPORT_SYMBOL_GPL vmlinux 0x5564d7ec attribute_container_register +EXPORT_SYMBOL_GPL vmlinux 0x556cd102 shash_ahash_digest +EXPORT_SYMBOL_GPL vmlinux 0x558a5231 __synth_event_gen_cmd_start +EXPORT_SYMBOL_GPL vmlinux 0x55948f19 iomap_zero_range +EXPORT_SYMBOL_GPL vmlinux 0x55c22b3a srcu_init_notifier_head +EXPORT_SYMBOL_GPL vmlinux 0x55c92da1 pci_epf_bind +EXPORT_SYMBOL_GPL vmlinux 0x55e89ec2 nf_ip_route +EXPORT_SYMBOL_GPL vmlinux 0x55eecff4 bit_wait_io_timeout +EXPORT_SYMBOL_GPL vmlinux 0x55f2580b __alloc_percpu +EXPORT_SYMBOL_GPL vmlinux 0x55f91924 trace_seq_puts +EXPORT_SYMBOL_GPL vmlinux 0x56054c05 crypto_it_tab +EXPORT_SYMBOL_GPL vmlinux 0x561cf350 crypto_grab_aead +EXPORT_SYMBOL_GPL vmlinux 0x56256e8a orderly_poweroff +EXPORT_SYMBOL_GPL vmlinux 0x5641485b tty_termios_encode_baud_rate +EXPORT_SYMBOL_GPL vmlinux 0x568a31c4 skb_tstamp_tx +EXPORT_SYMBOL_GPL vmlinux 0x568b41b8 blk_mq_bio_list_merge +EXPORT_SYMBOL_GPL vmlinux 0x56982c29 tcp_sendpage_locked +EXPORT_SYMBOL_GPL vmlinux 0x569eab3b __sync_filesystem +EXPORT_SYMBOL_GPL vmlinux 0x56a24cc5 __raw_v6_lookup +EXPORT_SYMBOL_GPL vmlinux 0x56b0caed device_remove_bin_file +EXPORT_SYMBOL_GPL vmlinux 0x56b862d5 trace_array_put +EXPORT_SYMBOL_GPL vmlinux 0x56ddced8 tcp_register_ulp +EXPORT_SYMBOL_GPL vmlinux 0x5708ea86 md_start +EXPORT_SYMBOL_GPL vmlinux 0x57192f4a device_initialize +EXPORT_SYMBOL_GPL vmlinux 0x572f8272 devm_gpio_free +EXPORT_SYMBOL_GPL vmlinux 0x573b5453 ipv6_fixup_options +EXPORT_SYMBOL_GPL vmlinux 0x574747f7 devres_destroy +EXPORT_SYMBOL_GPL vmlinux 0x5761d053 synchronize_srcu_expedited +EXPORT_SYMBOL_GPL vmlinux 0x57718ea9 kvm_vcpu_mark_page_dirty +EXPORT_SYMBOL_GPL vmlinux 0x5774504a watchdog_register_device +EXPORT_SYMBOL_GPL vmlinux 0x578271d9 strp_process +EXPORT_SYMBOL_GPL vmlinux 0x578a265e page_mkclean +EXPORT_SYMBOL_GPL vmlinux 0x578eeb4d hugetlb_cgrp_subsys_enabled_key +EXPORT_SYMBOL_GPL vmlinux 0x5790e7a0 pci_unlock_rescan_remove +EXPORT_SYMBOL_GPL vmlinux 0x579e0bf5 rtnl_unregister_all +EXPORT_SYMBOL_GPL vmlinux 0x57e92e43 debugfs_create_x8 +EXPORT_SYMBOL_GPL vmlinux 0x57f70547 secure_ipv4_port_ephemeral +EXPORT_SYMBOL_GPL vmlinux 0x57f7fb12 appldata_register_ops +EXPORT_SYMBOL_GPL vmlinux 0x5809ac00 pci_debug_err_id +EXPORT_SYMBOL_GPL vmlinux 0x5831e062 cpus_read_trylock +EXPORT_SYMBOL_GPL vmlinux 0x58392769 blk_queue_required_elevator_features +EXPORT_SYMBOL_GPL vmlinux 0x583b5675 tpm_chip_alloc +EXPORT_SYMBOL_GPL vmlinux 0x5879a27d sfp_get_module_info +EXPORT_SYMBOL_GPL vmlinux 0x58836ebf simple_attr_open +EXPORT_SYMBOL_GPL vmlinux 0x58985e90 verify_pkcs7_signature +EXPORT_SYMBOL_GPL vmlinux 0x58a3ea4b pci_walk_bus +EXPORT_SYMBOL_GPL vmlinux 0x58ab2490 crypto_unregister_aeads +EXPORT_SYMBOL_GPL vmlinux 0x58b9e71c gpiod_put +EXPORT_SYMBOL_GPL vmlinux 0x58c087f3 virtqueue_get_buf +EXPORT_SYMBOL_GPL vmlinux 0x58d03a44 gpiochip_enable_irq +EXPORT_SYMBOL_GPL vmlinux 0x58def6ca sfp_module_remove +EXPORT_SYMBOL_GPL vmlinux 0x58ea8b1e inet_hash +EXPORT_SYMBOL_GPL vmlinux 0x58f33545 devres_find +EXPORT_SYMBOL_GPL vmlinux 0x58fdfee7 tty_wakeup +EXPORT_SYMBOL_GPL vmlinux 0x5901d51c vtime_account_irq_enter +EXPORT_SYMBOL_GPL vmlinux 0x592db239 bpf_offload_dev_netdev_register +EXPORT_SYMBOL_GPL vmlinux 0x59359708 gmap_shadow_r3t +EXPORT_SYMBOL_GPL vmlinux 0x5939429d debugfs_create_u32 +EXPORT_SYMBOL_GPL vmlinux 0x593dba2c devlink_resource_register +EXPORT_SYMBOL_GPL vmlinux 0x5966b232 fib_rules_lookup +EXPORT_SYMBOL_GPL vmlinux 0x598e0d36 component_unbind_all +EXPORT_SYMBOL_GPL vmlinux 0x59d1a8a0 __netpoll_cleanup +EXPORT_SYMBOL_GPL vmlinux 0x59e640c0 halt_poll_ns +EXPORT_SYMBOL_GPL vmlinux 0x59f71ece do_unregister_con_driver +EXPORT_SYMBOL_GPL vmlinux 0x59fa87b6 br_ip6_fragment +EXPORT_SYMBOL_GPL vmlinux 0x59fbab0f kvm_put_kvm_no_destroy +EXPORT_SYMBOL_GPL vmlinux 0x59ffdb89 appldata_unregister_ops +EXPORT_SYMBOL_GPL vmlinux 0x5a010924 nexthop_find_by_id +EXPORT_SYMBOL_GPL vmlinux 0x5a1d134a rcu_momentary_dyntick_idle +EXPORT_SYMBOL_GPL vmlinux 0x5a2f8b2c vfs_fallocate +EXPORT_SYMBOL_GPL vmlinux 0x5a49dbc9 timerqueue_del +EXPORT_SYMBOL_GPL vmlinux 0x5a512763 tracepoint_srcu +EXPORT_SYMBOL_GPL vmlinux 0x5a545e73 platform_find_device_by_driver +EXPORT_SYMBOL_GPL vmlinux 0x5a5b6ba2 inet_csk_clone_lock +EXPORT_SYMBOL_GPL vmlinux 0x5a5e0597 blk_mq_queue_inflight +EXPORT_SYMBOL_GPL vmlinux 0x5a5fecb3 gpiod_to_irq +EXPORT_SYMBOL_GPL vmlinux 0x5a6cdb52 nf_ct_zone_dflt +EXPORT_SYMBOL_GPL vmlinux 0x5a7bfe41 crypto_probing_notify +EXPORT_SYMBOL_GPL vmlinux 0x5a83a7d8 md_bitmap_resize +EXPORT_SYMBOL_GPL vmlinux 0x5abc74fe proc_create_net_single_write +EXPORT_SYMBOL_GPL vmlinux 0x5ad167a0 gpiochip_find +EXPORT_SYMBOL_GPL vmlinux 0x5b21ceff ring_buffer_iter_peek +EXPORT_SYMBOL_GPL vmlinux 0x5b3787d6 register_trace_event +EXPORT_SYMBOL_GPL vmlinux 0x5b6b0329 swiotlb_max_segment +EXPORT_SYMBOL_GPL vmlinux 0x5b73f9ee __page_file_index +EXPORT_SYMBOL_GPL vmlinux 0x5b97f869 pingv6_prot +EXPORT_SYMBOL_GPL vmlinux 0x5b9d7126 event_triggers_post_call +EXPORT_SYMBOL_GPL vmlinux 0x5ba63bef property_entries_free +EXPORT_SYMBOL_GPL vmlinux 0x5bb22d86 scsi_nl_sock +EXPORT_SYMBOL_GPL vmlinux 0x5bb2f872 ack_all_badblocks +EXPORT_SYMBOL_GPL vmlinux 0x5bb79ce3 devres_release +EXPORT_SYMBOL_GPL vmlinux 0x5bbdfa26 scatterwalk_ffwd +EXPORT_SYMBOL_GPL vmlinux 0x5bc74d84 driver_create_file +EXPORT_SYMBOL_GPL vmlinux 0x5bd0748f crypto_del_default_rng +EXPORT_SYMBOL_GPL vmlinux 0x5bdbac4e rcu_unexpedite_gp +EXPORT_SYMBOL_GPL vmlinux 0x5be341d3 perf_event_enable +EXPORT_SYMBOL_GPL vmlinux 0x5bfbf68e xdp_rxq_info_unused +EXPORT_SYMBOL_GPL vmlinux 0x5c0b5787 kobject_rename +EXPORT_SYMBOL_GPL vmlinux 0x5c2bcd37 bpf_warn_invalid_xdp_action +EXPORT_SYMBOL_GPL vmlinux 0x5c40ca23 pci_scan_child_bus +EXPORT_SYMBOL_GPL vmlinux 0x5c422095 vring_create_virtqueue +EXPORT_SYMBOL_GPL vmlinux 0x5c8ef198 blk_ksm_init +EXPORT_SYMBOL_GPL vmlinux 0x5cba7f85 fuse_send_init +EXPORT_SYMBOL_GPL vmlinux 0x5cbf2dff cdrom_multisession +EXPORT_SYMBOL_GPL vmlinux 0x5cc1be31 devlink_trap_policers_unregister +EXPORT_SYMBOL_GPL vmlinux 0x5cc93d57 open_related_ns +EXPORT_SYMBOL_GPL vmlinux 0x5cd48b93 pci_get_dsn +EXPORT_SYMBOL_GPL vmlinux 0x5d46f816 perf_event_refresh +EXPORT_SYMBOL_GPL vmlinux 0x5d80a74c dma_buf_mmap +EXPORT_SYMBOL_GPL vmlinux 0x5d8476d3 bpf_sk_storage_diag_alloc +EXPORT_SYMBOL_GPL vmlinux 0x5d891f88 hypervisor_kobj +EXPORT_SYMBOL_GPL vmlinux 0x5d98046c pci_epc_remove_epf +EXPORT_SYMBOL_GPL vmlinux 0x5d98e713 cgroup_path_ns +EXPORT_SYMBOL_GPL vmlinux 0x5da3bdef component_add +EXPORT_SYMBOL_GPL vmlinux 0x5da67adc zs_compact +EXPORT_SYMBOL_GPL vmlinux 0x5db89aba tty_port_link_device +EXPORT_SYMBOL_GPL vmlinux 0x5db931d3 fscrypt_set_test_dummy_encryption +EXPORT_SYMBOL_GPL vmlinux 0x5db94adb dm_get_md +EXPORT_SYMBOL_GPL vmlinux 0x5dba9d1f badblocks_exit +EXPORT_SYMBOL_GPL vmlinux 0x5dbed86d pci_find_next_ext_capability +EXPORT_SYMBOL_GPL vmlinux 0x5dd59a29 pci_epc_init_notify +EXPORT_SYMBOL_GPL vmlinux 0x5df57f91 tcp_reno_ssthresh +EXPORT_SYMBOL_GPL vmlinux 0x5dff4eaa mm_account_pinned_pages +EXPORT_SYMBOL_GPL vmlinux 0x5e173309 cpu_cgrp_subsys_on_dfl_key +EXPORT_SYMBOL_GPL vmlinux 0x5e515be6 ktime_get_ts64 +EXPORT_SYMBOL_GPL vmlinux 0x5e51cd74 swiotlb_nr_tbl +EXPORT_SYMBOL_GPL vmlinux 0x5e631f38 devlink_resources_unregister +EXPORT_SYMBOL_GPL vmlinux 0x5e85415b ring_buffer_consume +EXPORT_SYMBOL_GPL vmlinux 0x5e97c925 irq_domain_add_simple +EXPORT_SYMBOL_GPL vmlinux 0x5eae92a4 pci_hp_remove_module_link +EXPORT_SYMBOL_GPL vmlinux 0x5ecfc5e3 trace_array_set_clr_event +EXPORT_SYMBOL_GPL vmlinux 0x5f0d31c8 devlink_net +EXPORT_SYMBOL_GPL vmlinux 0x5f10901f iomap_truncate_page +EXPORT_SYMBOL_GPL vmlinux 0x5f20e343 dm_post_suspending +EXPORT_SYMBOL_GPL vmlinux 0x5f23e3fa insert_resource +EXPORT_SYMBOL_GPL vmlinux 0x5f42d3b7 fwnode_find_reference +EXPORT_SYMBOL_GPL vmlinux 0x5f6b4015 scsi_eh_ready_devs +EXPORT_SYMBOL_GPL vmlinux 0x5f6f1e9e dax_get_private +EXPORT_SYMBOL_GPL vmlinux 0x5f99c29e iommu_domain_window_enable +EXPORT_SYMBOL_GPL vmlinux 0x5f9d4c7b pci_bridge_secondary_bus_reset +EXPORT_SYMBOL_GPL vmlinux 0x5f9e69d4 kvm_vcpu_read_guest_atomic +EXPORT_SYMBOL_GPL vmlinux 0x5fb41a5a sysfs_remove_file_ns +EXPORT_SYMBOL_GPL vmlinux 0x5fb8848b halt_poll_ns_grow_start +EXPORT_SYMBOL_GPL vmlinux 0x5feb3acc scsi_queue_work +EXPORT_SYMBOL_GPL vmlinux 0x601ba3eb __tracepoint_io_page_fault +EXPORT_SYMBOL_GPL vmlinux 0x601f5d79 raw_v4_hashinfo +EXPORT_SYMBOL_GPL vmlinux 0x60228160 scsi_dh_attach +EXPORT_SYMBOL_GPL vmlinux 0x60271fd0 enable_kprobe +EXPORT_SYMBOL_GPL vmlinux 0x6029efd5 dax_flush +EXPORT_SYMBOL_GPL vmlinux 0x603f72d6 xfrm_dev_state_add +EXPORT_SYMBOL_GPL vmlinux 0x604722fd devices_cgrp_subsys_enabled_key +EXPORT_SYMBOL_GPL vmlinux 0x607c4683 devlink_info_version_fixed_put +EXPORT_SYMBOL_GPL vmlinux 0x6091797f synchronize_rcu +EXPORT_SYMBOL_GPL vmlinux 0x60a13e90 rcu_barrier +EXPORT_SYMBOL_GPL vmlinux 0x60a32ea9 pm_power_off +EXPORT_SYMBOL_GPL vmlinux 0x60ad4f8d vfs_write +EXPORT_SYMBOL_GPL vmlinux 0x60cc8958 ima_file_hash +EXPORT_SYMBOL_GPL vmlinux 0x60cc8b04 irq_create_fwspec_mapping +EXPORT_SYMBOL_GPL vmlinux 0x60ebc96f ring_buffer_read_prepare +EXPORT_SYMBOL_GPL vmlinux 0x60ed55df virtqueue_add_sgs +EXPORT_SYMBOL_GPL vmlinux 0x60fe255a relay_file_operations +EXPORT_SYMBOL_GPL vmlinux 0x6102cb38 tty_port_tty_hangup +EXPORT_SYMBOL_GPL vmlinux 0x6129fb93 sfp_remove_phy +EXPORT_SYMBOL_GPL vmlinux 0x612bfd89 errno_to_blk_status +EXPORT_SYMBOL_GPL vmlinux 0x614b00c5 class_compat_remove_link +EXPORT_SYMBOL_GPL vmlinux 0x61622a81 security_inode_create +EXPORT_SYMBOL_GPL vmlinux 0x616b30c7 kmsg_dump_rewind +EXPORT_SYMBOL_GPL vmlinux 0x6181e79f timerqueue_add +EXPORT_SYMBOL_GPL vmlinux 0x6198dfea __ring_buffer_alloc +EXPORT_SYMBOL_GPL vmlinux 0x6199ad5d crypto_has_skcipher +EXPORT_SYMBOL_GPL vmlinux 0x619e75ce inet_twsk_alloc +EXPORT_SYMBOL_GPL vmlinux 0x61c80e9d tpm_calc_ordinal_duration +EXPORT_SYMBOL_GPL vmlinux 0x61d115af pci_sriov_get_totalvfs +EXPORT_SYMBOL_GPL vmlinux 0x61d932df pci_assign_unassigned_bridge_resources +EXPORT_SYMBOL_GPL vmlinux 0x61f84b30 dw_pcie_ep_linkup +EXPORT_SYMBOL_GPL vmlinux 0x6202cf2b tty_ldisc_ref_wait +EXPORT_SYMBOL_GPL vmlinux 0x622c1e2b rtnl_put_cacheinfo +EXPORT_SYMBOL_GPL vmlinux 0x622c7922 register_oom_notifier +EXPORT_SYMBOL_GPL vmlinux 0x62377a7b blk_io_schedule +EXPORT_SYMBOL_GPL vmlinux 0x6246a629 synchronize_rcu_tasks_trace +EXPORT_SYMBOL_GPL vmlinux 0x6251b885 bpf_prog_create +EXPORT_SYMBOL_GPL vmlinux 0x628c7399 device_property_read_string_array +EXPORT_SYMBOL_GPL vmlinux 0x62a8043c virtqueue_kick_prepare +EXPORT_SYMBOL_GPL vmlinux 0x62bb09bf clocks_calc_mult_shift +EXPORT_SYMBOL_GPL vmlinux 0x62c6a4c1 crypto_spawn_tfm +EXPORT_SYMBOL_GPL vmlinux 0x62cc1328 serdev_device_write_buf +EXPORT_SYMBOL_GPL vmlinux 0x62d17755 exportfs_decode_fh +EXPORT_SYMBOL_GPL vmlinux 0x62d8750e metadata_dst_alloc_percpu +EXPORT_SYMBOL_GPL vmlinux 0x62f7999f iommu_sva_unbind_gpasid +EXPORT_SYMBOL_GPL vmlinux 0x62fd0204 xas_nomem +EXPORT_SYMBOL_GPL vmlinux 0x63167423 skcipher_walk_aead_encrypt +EXPORT_SYMBOL_GPL vmlinux 0x631ba529 software_node_unregister_node_group +EXPORT_SYMBOL_GPL vmlinux 0x63550cd6 crypto_alloc_shash +EXPORT_SYMBOL_GPL vmlinux 0x637c214b vtime_account_kernel +EXPORT_SYMBOL_GPL vmlinux 0x639b0e49 paste_selection +EXPORT_SYMBOL_GPL vmlinux 0x63b1b4a8 cdrom_read_tocentry +EXPORT_SYMBOL_GPL vmlinux 0x63de7ecf tty_port_default_client_ops +EXPORT_SYMBOL_GPL vmlinux 0x6405e224 alloc_vm_area +EXPORT_SYMBOL_GPL vmlinux 0x640ab48f for_each_kernel_tracepoint +EXPORT_SYMBOL_GPL vmlinux 0x641a6a92 access_process_vm +EXPORT_SYMBOL_GPL vmlinux 0x644cdea9 inet6_csk_addr2sockaddr +EXPORT_SYMBOL_GPL vmlinux 0x644fb370 mmu_interval_notifier_insert_locked +EXPORT_SYMBOL_GPL vmlinux 0x6472a2e7 tty_port_install +EXPORT_SYMBOL_GPL vmlinux 0x64735080 iommu_device_unlink +EXPORT_SYMBOL_GPL vmlinux 0x6479c6d1 iomap_ioend_try_merge +EXPORT_SYMBOL_GPL vmlinux 0x64925270 __dax_synchronous +EXPORT_SYMBOL_GPL vmlinux 0x64c8915a call_srcu +EXPORT_SYMBOL_GPL vmlinux 0x64d73f63 inverse_translate +EXPORT_SYMBOL_GPL vmlinux 0x64dd0bea fib_new_table +EXPORT_SYMBOL_GPL vmlinux 0x64e27c4f synth_event_delete +EXPORT_SYMBOL_GPL vmlinux 0x64ebfd97 netdev_set_default_ethtool_ops +EXPORT_SYMBOL_GPL vmlinux 0x64ecf4eb gmap_pmdp_idte_global +EXPORT_SYMBOL_GPL vmlinux 0x64f7709b netlink_add_tap +EXPORT_SYMBOL_GPL vmlinux 0x64faf25c vprintk_default +EXPORT_SYMBOL_GPL vmlinux 0x6519a677 dma_get_merge_boundary +EXPORT_SYMBOL_GPL vmlinux 0x651d2e15 devm_gpiochip_add_data_with_key +EXPORT_SYMBOL_GPL vmlinux 0x6531bd4d gpiod_get_array_value +EXPORT_SYMBOL_GPL vmlinux 0x655c35cd devm_request_pci_bus_resources +EXPORT_SYMBOL_GPL vmlinux 0x655ebc3f gpiochip_reqres_irq +EXPORT_SYMBOL_GPL vmlinux 0x659e63f8 tracepoint_probe_register +EXPORT_SYMBOL_GPL vmlinux 0x65a9339c pci_user_read_config_byte +EXPORT_SYMBOL_GPL vmlinux 0x65a957c8 fwnode_get_phy_mode +EXPORT_SYMBOL_GPL vmlinux 0x65aebfdf tcp_get_info +EXPORT_SYMBOL_GPL vmlinux 0x65ccb6f0 call_netevent_notifiers +EXPORT_SYMBOL_GPL vmlinux 0x65f0ed64 crypto_register_shashes +EXPORT_SYMBOL_GPL vmlinux 0x661601de sprint_symbol +EXPORT_SYMBOL_GPL vmlinux 0x6625c2cd blk_mq_pci_map_queues +EXPORT_SYMBOL_GPL vmlinux 0x662b93e1 devlink_register +EXPORT_SYMBOL_GPL vmlinux 0x6636c3c9 irq_set_vcpu_affinity +EXPORT_SYMBOL_GPL vmlinux 0x663bb448 devlink_fmsg_obj_nest_end +EXPORT_SYMBOL_GPL vmlinux 0x6656ee49 page_reporting_register +EXPORT_SYMBOL_GPL vmlinux 0x6657c464 bio_trim +EXPORT_SYMBOL_GPL vmlinux 0x666b755a __tracepoint_xdp_exception +EXPORT_SYMBOL_GPL vmlinux 0x668402aa crypto_put_default_rng +EXPORT_SYMBOL_GPL vmlinux 0x6691c637 subsys_dev_iter_exit +EXPORT_SYMBOL_GPL vmlinux 0x66a2b27b scsi_host_block +EXPORT_SYMBOL_GPL vmlinux 0x66a6c061 tracepoint_probe_register_prio +EXPORT_SYMBOL_GPL vmlinux 0x66b74f9d bsg_scsi_register_queue +EXPORT_SYMBOL_GPL vmlinux 0x66b97421 sfp_link_up +EXPORT_SYMBOL_GPL vmlinux 0x66ccdfb5 tcp_reno_undo_cwnd +EXPORT_SYMBOL_GPL vmlinux 0x66d87d38 symbol_put_addr +EXPORT_SYMBOL_GPL vmlinux 0x66f617e0 sync_page_io +EXPORT_SYMBOL_GPL vmlinux 0x6703a724 __netif_set_xps_queue +EXPORT_SYMBOL_GPL vmlinux 0x670ad722 iommu_group_get +EXPORT_SYMBOL_GPL vmlinux 0x6735d56e tcp_ca_get_name_by_key +EXPORT_SYMBOL_GPL vmlinux 0x675ee7a7 devlink_port_attrs_pci_pf_set +EXPORT_SYMBOL_GPL vmlinux 0x6791f57b xas_find_conflict +EXPORT_SYMBOL_GPL vmlinux 0x6792e25a __tracepoint_unmap +EXPORT_SYMBOL_GPL vmlinux 0x679392ad virtqueue_enable_cb_delayed +EXPORT_SYMBOL_GPL vmlinux 0x67955ce6 profile_hits +EXPORT_SYMBOL_GPL vmlinux 0x6797d1ca crypto_stats_ahash_update +EXPORT_SYMBOL_GPL vmlinux 0x67a8bca7 dax_attribute_group +EXPORT_SYMBOL_GPL vmlinux 0x67b710af driver_for_each_device +EXPORT_SYMBOL_GPL vmlinux 0x67ca9b08 inet_csk_addr2sockaddr +EXPORT_SYMBOL_GPL vmlinux 0x67da9f7c sha512_zero_message_hash +EXPORT_SYMBOL_GPL vmlinux 0x67e92f7a skcipher_alloc_instance_simple +EXPORT_SYMBOL_GPL vmlinux 0x67f02d00 iptunnel_handle_offloads +EXPORT_SYMBOL_GPL vmlinux 0x682aff2a skb_complete_wifi_ack +EXPORT_SYMBOL_GPL vmlinux 0x682eff49 blkg_lookup_slowpath +EXPORT_SYMBOL_GPL vmlinux 0x682ff057 ring_buffer_commit_overrun_cpu +EXPORT_SYMBOL_GPL vmlinux 0x6844f41d iommu_detach_group +EXPORT_SYMBOL_GPL vmlinux 0x68575bbe bdi_dev_name +EXPORT_SYMBOL_GPL vmlinux 0x685d09ac __kprobe_event_gen_cmd_start +EXPORT_SYMBOL_GPL vmlinux 0x6892e3c3 kvm_set_pfn_accessed +EXPORT_SYMBOL_GPL vmlinux 0x68952493 rcu_note_context_switch +EXPORT_SYMBOL_GPL vmlinux 0x68ae38ae fwnode_property_read_string_array +EXPORT_SYMBOL_GPL vmlinux 0x68ae9a5b iommu_device_register +EXPORT_SYMBOL_GPL vmlinux 0x68b34923 kmsg_dump_get_buffer +EXPORT_SYMBOL_GPL vmlinux 0x68c5cd0b debugfs_file_put +EXPORT_SYMBOL_GPL vmlinux 0x68d74ee0 iommu_dev_enable_feature +EXPORT_SYMBOL_GPL vmlinux 0x6910001f dma_can_mmap +EXPORT_SYMBOL_GPL vmlinux 0x6913865a trace_clock_jiffies +EXPORT_SYMBOL_GPL vmlinux 0x6929e0a9 fwnode_get_parent +EXPORT_SYMBOL_GPL vmlinux 0x6958ae23 dax_get_by_host +EXPORT_SYMBOL_GPL vmlinux 0x697c5d0d tracing_snapshot_alloc +EXPORT_SYMBOL_GPL vmlinux 0x69898ce9 xdp_do_redirect +EXPORT_SYMBOL_GPL vmlinux 0x698a2654 software_node_find_by_name +EXPORT_SYMBOL_GPL vmlinux 0x698baafe verify_signature +EXPORT_SYMBOL_GPL vmlinux 0x698e7e26 sbitmap_queue_clear +EXPORT_SYMBOL_GPL vmlinux 0x69d79f20 bpf_trace_run12 +EXPORT_SYMBOL_GPL vmlinux 0x69dd3696 devm_remove_action +EXPORT_SYMBOL_GPL vmlinux 0x69e45adb irq_domain_reset_irq_data +EXPORT_SYMBOL_GPL vmlinux 0x69e683de uuid_gen +EXPORT_SYMBOL_GPL vmlinux 0x69fdd27e kvm_vcpu_on_spin +EXPORT_SYMBOL_GPL vmlinux 0x6a008077 hrtimer_init +EXPORT_SYMBOL_GPL vmlinux 0x6a1733eb iommu_group_unregister_notifier +EXPORT_SYMBOL_GPL vmlinux 0x6a2a3c32 unwind_get_return_address +EXPORT_SYMBOL_GPL vmlinux 0x6a329e69 tcp_done +EXPORT_SYMBOL_GPL vmlinux 0x6a460dc5 schedule_hrtimeout +EXPORT_SYMBOL_GPL vmlinux 0x6a4f623b mmu_notifier_synchronize +EXPORT_SYMBOL_GPL vmlinux 0x6a597ad8 sk_msg_zerocopy_from_iter +EXPORT_SYMBOL_GPL vmlinux 0x6a7b0b15 blk_set_queue_dying +EXPORT_SYMBOL_GPL vmlinux 0x6a8441be cpci_hp_start +EXPORT_SYMBOL_GPL vmlinux 0x6aa622ae device_get_child_node_count +EXPORT_SYMBOL_GPL vmlinux 0x6abee30a synth_event_trace_start +EXPORT_SYMBOL_GPL vmlinux 0x6ac3c0e1 __gmap_zap +EXPORT_SYMBOL_GPL vmlinux 0x6aca7237 klist_add_tail +EXPORT_SYMBOL_GPL vmlinux 0x6adeee2f blk_req_needs_zone_write_lock +EXPORT_SYMBOL_GPL vmlinux 0x6b1c6704 fat_build_inode +EXPORT_SYMBOL_GPL vmlinux 0x6b20d30b dm_hold +EXPORT_SYMBOL_GPL vmlinux 0x6b22926b irq_work_sync +EXPORT_SYMBOL_GPL vmlinux 0x6b2b69f7 static_key_enable +EXPORT_SYMBOL_GPL vmlinux 0x6b2c0063 pernet_ops_rwsem +EXPORT_SYMBOL_GPL vmlinux 0x6b413c9b sfp_link_down +EXPORT_SYMBOL_GPL vmlinux 0x6b523d43 irq_chip_release_resources_parent +EXPORT_SYMBOL_GPL vmlinux 0x6b6430b4 __iptunnel_pull_header +EXPORT_SYMBOL_GPL vmlinux 0x6b64524c tpm2_get_tpm_pt +EXPORT_SYMBOL_GPL vmlinux 0x6b67398c cio_cancel_halt_clear +EXPORT_SYMBOL_GPL vmlinux 0x6b7da1a3 report_iommu_fault +EXPORT_SYMBOL_GPL vmlinux 0x6bc8b093 udp4_lib_lookup +EXPORT_SYMBOL_GPL vmlinux 0x6bce89df add_disk_randomness +EXPORT_SYMBOL_GPL vmlinux 0x6bd1aa56 stack_trace_save +EXPORT_SYMBOL_GPL vmlinux 0x6bdd7c2c serdev_device_write +EXPORT_SYMBOL_GPL vmlinux 0x6c04b604 uprobe_register_refctr +EXPORT_SYMBOL_GPL vmlinux 0x6c0de02b ipv4_sk_update_pmtu +EXPORT_SYMBOL_GPL vmlinux 0x6c1c72f0 irq_chip_eoi_parent +EXPORT_SYMBOL_GPL vmlinux 0x6c398272 synth_event_trace_end +EXPORT_SYMBOL_GPL vmlinux 0x6c3f70e0 guid_gen +EXPORT_SYMBOL_GPL vmlinux 0x6c3f7ca0 gfn_to_page +EXPORT_SYMBOL_GPL vmlinux 0x6c5b5bc2 cio_resume +EXPORT_SYMBOL_GPL vmlinux 0x6c69686d generic_online_page +EXPORT_SYMBOL_GPL vmlinux 0x6c89fafe security_file_ioctl +EXPORT_SYMBOL_GPL vmlinux 0x6ca4bf88 async_synchronize_full_domain +EXPORT_SYMBOL_GPL vmlinux 0x6ce8435d pci_create_slot +EXPORT_SYMBOL_GPL vmlinux 0x6d0db697 kvm_vcpu_read_guest_page +EXPORT_SYMBOL_GPL vmlinux 0x6d222bcd tpm2_get_cc_attrs_tbl +EXPORT_SYMBOL_GPL vmlinux 0x6d2fc5a6 net_namespace_list +EXPORT_SYMBOL_GPL vmlinux 0x6d5ce483 sfp_module_insert +EXPORT_SYMBOL_GPL vmlinux 0x6d624b8e platform_device_alloc +EXPORT_SYMBOL_GPL vmlinux 0x6d6fec1f ktime_mono_to_any +EXPORT_SYMBOL_GPL vmlinux 0x6d753679 fsnotify_get_group +EXPORT_SYMBOL_GPL vmlinux 0x6d7e951e rcu_exp_batches_completed +EXPORT_SYMBOL_GPL vmlinux 0x6d952e1e pci_epc_get_msi +EXPORT_SYMBOL_GPL vmlinux 0x6d9ee2a0 __request_percpu_irq +EXPORT_SYMBOL_GPL vmlinux 0x6db19d81 idr_alloc +EXPORT_SYMBOL_GPL vmlinux 0x6dbaafd3 put_old_timespec32 +EXPORT_SYMBOL_GPL vmlinux 0x6dc18811 inet6_sk_rebuild_header +EXPORT_SYMBOL_GPL vmlinux 0x6dd0eeef xdp_rxq_info_reg_mem_model +EXPORT_SYMBOL_GPL vmlinux 0x6e1991dc tpm_pm_resume +EXPORT_SYMBOL_GPL vmlinux 0x6e223907 iommu_device_link +EXPORT_SYMBOL_GPL vmlinux 0x6e5f858c fwnode_graph_get_next_endpoint +EXPORT_SYMBOL_GPL vmlinux 0x6e5fce9e clockevents_config_and_register +EXPORT_SYMBOL_GPL vmlinux 0x6e7943ec iommu_group_id +EXPORT_SYMBOL_GPL vmlinux 0x6ebe366f ktime_get_mono_fast_ns +EXPORT_SYMBOL_GPL vmlinux 0x6ec34115 dm_device_name +EXPORT_SYMBOL_GPL vmlinux 0x6ee8c94b sfp_get_module_eeprom +EXPORT_SYMBOL_GPL vmlinux 0x6ef6b54f ktime_get_boot_fast_ns +EXPORT_SYMBOL_GPL vmlinux 0x6f11538d noop_invalidatepage +EXPORT_SYMBOL_GPL vmlinux 0x6f12560a get_old_timespec32 +EXPORT_SYMBOL_GPL vmlinux 0x6f12e69a serdev_device_set_parity +EXPORT_SYMBOL_GPL vmlinux 0x6f19c13a debugfs_create_atomic_t +EXPORT_SYMBOL_GPL vmlinux 0x6f39fd5e irq_chip_ack_parent +EXPORT_SYMBOL_GPL vmlinux 0x6f63fa1d devlink_params_register +EXPORT_SYMBOL_GPL vmlinux 0x6f668ded dw_pcie_write_dbi +EXPORT_SYMBOL_GPL vmlinux 0x6f6ba456 xfrm_audit_state_icvfail +EXPORT_SYMBOL_GPL vmlinux 0x6f8c11f8 netdev_walk_all_lower_dev_rcu +EXPORT_SYMBOL_GPL vmlinux 0x6f9e763b timecounter_read +EXPORT_SYMBOL_GPL vmlinux 0x6fa89784 irq_chip_disable_parent +EXPORT_SYMBOL_GPL vmlinux 0x6fbfed92 class_interface_unregister +EXPORT_SYMBOL_GPL vmlinux 0x6fcef6ab ring_buffer_reset +EXPORT_SYMBOL_GPL vmlinux 0x6fdfa484 iomap_fiemap +EXPORT_SYMBOL_GPL vmlinux 0x6fe39f8d nf_queue +EXPORT_SYMBOL_GPL vmlinux 0x6febe676 devm_gpiod_put_array +EXPORT_SYMBOL_GPL vmlinux 0x6ff0b66c sbitmap_finish_wait +EXPORT_SYMBOL_GPL vmlinux 0x6ff607b6 crypto_get_default_rng +EXPORT_SYMBOL_GPL vmlinux 0x7006586e iommu_get_group_resv_regions +EXPORT_SYMBOL_GPL vmlinux 0x7025f5be __tcp_bpf_recvmsg +EXPORT_SYMBOL_GPL vmlinux 0x704c927e subsys_find_device_by_id +EXPORT_SYMBOL_GPL vmlinux 0x705b786d dst_cache_get_ip6 +EXPORT_SYMBOL_GPL vmlinux 0x706204ba gmap_get_enabled +EXPORT_SYMBOL_GPL vmlinux 0x706998a5 ip6_sk_dst_lookup_flow +EXPORT_SYMBOL_GPL vmlinux 0x7069a773 perf_pmu_unregister +EXPORT_SYMBOL_GPL vmlinux 0x709a8ae8 iommu_aux_detach_device +EXPORT_SYMBOL_GPL vmlinux 0x70ae73f2 netdev_walk_all_upper_dev_rcu +EXPORT_SYMBOL_GPL vmlinux 0x70c2c7ea pids_cgrp_subsys_on_dfl_key +EXPORT_SYMBOL_GPL vmlinux 0x70c4d1db raw_hash_sk +EXPORT_SYMBOL_GPL vmlinux 0x70c52dc5 nf_skb_duplicated +EXPORT_SYMBOL_GPL vmlinux 0x70db05d4 dax_region_put +EXPORT_SYMBOL_GPL vmlinux 0x70f89d53 rsa_parse_priv_key +EXPORT_SYMBOL_GPL vmlinux 0x7100962a ip6_push_pending_frames +EXPORT_SYMBOL_GPL vmlinux 0x710c73b6 crypto_unregister_notifier +EXPORT_SYMBOL_GPL vmlinux 0x712af26a devlink_port_param_driverinit_value_get +EXPORT_SYMBOL_GPL vmlinux 0x713a7ec9 dw_pcie_find_ext_capability +EXPORT_SYMBOL_GPL vmlinux 0x716265c7 debugfs_initialized +EXPORT_SYMBOL_GPL vmlinux 0x71650819 add_bootloader_randomness +EXPORT_SYMBOL_GPL vmlinux 0x716d74e4 platform_get_irq_optional +EXPORT_SYMBOL_GPL vmlinux 0x7179c31c zpci_iomap_start +EXPORT_SYMBOL_GPL vmlinux 0x71bcd9ac kthread_park +EXPORT_SYMBOL_GPL vmlinux 0x71c2f73e nf_queue_nf_hook_drop +EXPORT_SYMBOL_GPL vmlinux 0x71c43737 __kernel_write +EXPORT_SYMBOL_GPL vmlinux 0x71d70106 fwnode_count_parents +EXPORT_SYMBOL_GPL vmlinux 0x71f69a66 software_node_unregister +EXPORT_SYMBOL_GPL vmlinux 0x71fb6572 bd_unlink_disk_holder +EXPORT_SYMBOL_GPL vmlinux 0x71fe6d16 devlink_dpipe_action_put +EXPORT_SYMBOL_GPL vmlinux 0x71ff06fd fwnode_create_software_node +EXPORT_SYMBOL_GPL vmlinux 0x721cf3fe tty_port_tty_wakeup +EXPORT_SYMBOL_GPL vmlinux 0x722522b4 serdev_device_set_flow_control +EXPORT_SYMBOL_GPL vmlinux 0x72295598 transport_configure_device +EXPORT_SYMBOL_GPL vmlinux 0x722a41f1 __nf_ip6_route +EXPORT_SYMBOL_GPL vmlinux 0x72475517 serdev_device_set_tiocm +EXPORT_SYMBOL_GPL vmlinux 0x725f37a9 nf_nat_hook +EXPORT_SYMBOL_GPL vmlinux 0x726539a0 inet_hashinfo2_init_mod +EXPORT_SYMBOL_GPL vmlinux 0x7278d328 all_vm_events +EXPORT_SYMBOL_GPL vmlinux 0x72794a09 devlink_params_unpublish +EXPORT_SYMBOL_GPL vmlinux 0x72849c90 irq_domain_create_hierarchy +EXPORT_SYMBOL_GPL vmlinux 0x7290efaa netlink_remove_tap +EXPORT_SYMBOL_GPL vmlinux 0x72a33b6b virtqueue_is_broken +EXPORT_SYMBOL_GPL vmlinux 0x72bba2db debugfs_create_blob +EXPORT_SYMBOL_GPL vmlinux 0x72c07d4a fwnode_property_read_u64_array +EXPORT_SYMBOL_GPL vmlinux 0x72c1aeeb __tracepoint_map +EXPORT_SYMBOL_GPL vmlinux 0x72ea56d6 kernfs_path_from_node +EXPORT_SYMBOL_GPL vmlinux 0x72fcc3a2 eventfd_ctx_fileget +EXPORT_SYMBOL_GPL vmlinux 0x7301cb8c bsg_remove_queue +EXPORT_SYMBOL_GPL vmlinux 0x730258e9 pkcs7_verify +EXPORT_SYMBOL_GPL vmlinux 0x7309a3f4 ipv4_update_pmtu +EXPORT_SYMBOL_GPL vmlinux 0x732861c3 device_for_each_child +EXPORT_SYMBOL_GPL vmlinux 0x734dab7d do_take_over_console +EXPORT_SYMBOL_GPL vmlinux 0x7356a85d devlink_flash_update_end_notify +EXPORT_SYMBOL_GPL vmlinux 0x735b5e7c sbitmap_queue_wake_up +EXPORT_SYMBOL_GPL vmlinux 0x73771976 kvm_vcpu_yield_to +EXPORT_SYMBOL_GPL vmlinux 0x737c5286 sbitmap_get +EXPORT_SYMBOL_GPL vmlinux 0x737f793b split_page +EXPORT_SYMBOL_GPL vmlinux 0x73ad9aab fat_flush_inodes +EXPORT_SYMBOL_GPL vmlinux 0x73bc03db iomap_seek_hole +EXPORT_SYMBOL_GPL vmlinux 0x73cc8631 oiap +EXPORT_SYMBOL_GPL vmlinux 0x73d52e0e sysfs_add_file_to_group +EXPORT_SYMBOL_GPL vmlinux 0x73e575d2 devm_pci_epc_destroy +EXPORT_SYMBOL_GPL vmlinux 0x73f33a67 raw_seq_next +EXPORT_SYMBOL_GPL vmlinux 0x74100398 iommu_iova_to_phys +EXPORT_SYMBOL_GPL vmlinux 0x74129468 gmap_make_secure +EXPORT_SYMBOL_GPL vmlinux 0x7413f70b __irq_domain_add +EXPORT_SYMBOL_GPL vmlinux 0x74280da2 crypto_stats_rng_generate +EXPORT_SYMBOL_GPL vmlinux 0x74345806 switchdev_handle_port_obj_add +EXPORT_SYMBOL_GPL vmlinux 0x743a5053 blk_req_zone_write_trylock +EXPORT_SYMBOL_GPL vmlinux 0x7445c919 restore_online_page_callback +EXPORT_SYMBOL_GPL vmlinux 0x74afa368 cpci_hp_register_controller +EXPORT_SYMBOL_GPL vmlinux 0x74b5ea68 lcm_not_zero +EXPORT_SYMBOL_GPL vmlinux 0x74baf17a tracing_is_on +EXPORT_SYMBOL_GPL vmlinux 0x74cc2362 iptunnel_metadata_reply +EXPORT_SYMBOL_GPL vmlinux 0x74ceccfd bpf_trace_run6 +EXPORT_SYMBOL_GPL vmlinux 0x74d4c3ba xfrm_audit_state_replay +EXPORT_SYMBOL_GPL vmlinux 0x74d5e3c1 register_pernet_device +EXPORT_SYMBOL_GPL vmlinux 0x74d83a83 pci_enable_pcie_error_reporting +EXPORT_SYMBOL_GPL vmlinux 0x74e73871 housekeeping_overridden +EXPORT_SYMBOL_GPL vmlinux 0x74edb7f7 md_new_event +EXPORT_SYMBOL_GPL vmlinux 0x74f2c9a3 rt_mutex_trylock +EXPORT_SYMBOL_GPL vmlinux 0x7522f3ba irq_modify_status +EXPORT_SYMBOL_GPL vmlinux 0x754bad7b proc_create_net_data_write +EXPORT_SYMBOL_GPL vmlinux 0x7554b896 zs_huge_class_size +EXPORT_SYMBOL_GPL vmlinux 0x7555dfaf crypto_default_rng +EXPORT_SYMBOL_GPL vmlinux 0x7560b6dc tracing_snapshot_cond +EXPORT_SYMBOL_GPL vmlinux 0x7587a81c eventfd_fget +EXPORT_SYMBOL_GPL vmlinux 0x758b0e81 __wake_up_sync +EXPORT_SYMBOL_GPL vmlinux 0x758ee795 pci_sriov_set_totalvfs +EXPORT_SYMBOL_GPL vmlinux 0x75ba7baf ip_valid_fib_dump_req +EXPORT_SYMBOL_GPL vmlinux 0x75cbfb09 add_interrupt_randomness +EXPORT_SYMBOL_GPL vmlinux 0x75d0dd66 relay_late_setup_files +EXPORT_SYMBOL_GPL vmlinux 0x75d25e7e __tracepoint_napi_poll +EXPORT_SYMBOL_GPL vmlinux 0x75e37ea6 dma_get_required_mask +EXPORT_SYMBOL_GPL vmlinux 0x75e9c735 pci_ats_disabled +EXPORT_SYMBOL_GPL vmlinux 0x75edf7b3 copy_from_kernel_nofault +EXPORT_SYMBOL_GPL vmlinux 0x75fda9a7 irq_create_of_mapping +EXPORT_SYMBOL_GPL vmlinux 0x7612f095 firmware_request_cache +EXPORT_SYMBOL_GPL vmlinux 0x762ea557 device_match_fwnode +EXPORT_SYMBOL_GPL vmlinux 0x764e8616 tty_save_termios +EXPORT_SYMBOL_GPL vmlinux 0x764fbf8e __inet_inherit_port +EXPORT_SYMBOL_GPL vmlinux 0x7661d41d class_dev_iter_next +EXPORT_SYMBOL_GPL vmlinux 0x7665ee72 crypto_dh_decode_key +EXPORT_SYMBOL_GPL vmlinux 0x76859a94 inet6_hash_connect +EXPORT_SYMBOL_GPL vmlinux 0x7687254a skb_consume_udp +EXPORT_SYMBOL_GPL vmlinux 0x769aa96c kvm_get_kvm +EXPORT_SYMBOL_GPL vmlinux 0x76cbee3f dm_path_uevent +EXPORT_SYMBOL_GPL vmlinux 0x76dbcc11 irq_domain_simple_ops +EXPORT_SYMBOL_GPL vmlinux 0x76e0480d _proc_mkdir +EXPORT_SYMBOL_GPL vmlinux 0x76edd4ef srcu_notifier_chain_unregister +EXPORT_SYMBOL_GPL vmlinux 0x76eeeb0f sha384_zero_message_hash +EXPORT_SYMBOL_GPL vmlinux 0x76fe1444 iomap_page_mkwrite +EXPORT_SYMBOL_GPL vmlinux 0x77033ae5 devm_device_add_groups +EXPORT_SYMBOL_GPL vmlinux 0x7729cbdd task_handoff_register +EXPORT_SYMBOL_GPL vmlinux 0x773aa517 generic_fh_to_dentry +EXPORT_SYMBOL_GPL vmlinux 0x7743d252 attribute_container_unregister +EXPORT_SYMBOL_GPL vmlinux 0x7745df6e iommu_sva_bind_device +EXPORT_SYMBOL_GPL vmlinux 0x774ee064 ping_close +EXPORT_SYMBOL_GPL vmlinux 0x7762dc59 pci_hp_add +EXPORT_SYMBOL_GPL vmlinux 0x777149f1 badblocks_clear +EXPORT_SYMBOL_GPL vmlinux 0x7791e066 dw_pcie_read +EXPORT_SYMBOL_GPL vmlinux 0x7797ddc4 wb_writeout_inc +EXPORT_SYMBOL_GPL vmlinux 0x779f9389 pci_epf_destroy +EXPORT_SYMBOL_GPL vmlinux 0x77b12e30 __generic_fsdax_supported +EXPORT_SYMBOL_GPL vmlinux 0x77d8a091 alarm_restart +EXPORT_SYMBOL_GPL vmlinux 0x77e75be3 sfp_bus_put +EXPORT_SYMBOL_GPL vmlinux 0x77ecf68d memalloc_socks_key +EXPORT_SYMBOL_GPL vmlinux 0x77f5857a irq_domain_free_irqs_parent +EXPORT_SYMBOL_GPL vmlinux 0x77fe0ff8 xfrm_audit_state_replay_overflow +EXPORT_SYMBOL_GPL vmlinux 0x78041b8f byte_rev_table +EXPORT_SYMBOL_GPL vmlinux 0x78241fa6 iommu_sva_get_pasid +EXPORT_SYMBOL_GPL vmlinux 0x7826d5dd user_read +EXPORT_SYMBOL_GPL vmlinux 0x785032cb devlink_dpipe_headers_register +EXPORT_SYMBOL_GPL vmlinux 0x785a93b4 si_mem_available +EXPORT_SYMBOL_GPL vmlinux 0x788bfbad ring_buffer_empty +EXPORT_SYMBOL_GPL vmlinux 0x789c73d9 rcu_cpu_stall_suppress_at_boot +EXPORT_SYMBOL_GPL vmlinux 0x78ac359b crypto_alloc_aead +EXPORT_SYMBOL_GPL vmlinux 0x78c1ef2b fscrypt_get_symlink +EXPORT_SYMBOL_GPL vmlinux 0x78cdaa56 akcipher_register_instance +EXPORT_SYMBOL_GPL vmlinux 0x7905a5f7 dw_pcie_find_capability +EXPORT_SYMBOL_GPL vmlinux 0x791f8612 rtnl_delete_link +EXPORT_SYMBOL_GPL vmlinux 0x794133d8 raw_seq_start +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 0x7952099a perf_trace_run_bpf_submit +EXPORT_SYMBOL_GPL vmlinux 0x797f63eb freq_qos_update_request +EXPORT_SYMBOL_GPL vmlinux 0x79910a0d perf_get_aux +EXPORT_SYMBOL_GPL vmlinux 0x79ae3778 device_property_read_u16_array +EXPORT_SYMBOL_GPL vmlinux 0x79c2fd57 pcie_update_link_speed +EXPORT_SYMBOL_GPL vmlinux 0x79c4381a skcipher_walk_done +EXPORT_SYMBOL_GPL vmlinux 0x79defbe1 kthread_should_park +EXPORT_SYMBOL_GPL vmlinux 0x79e7bb6a crypto_req_done +EXPORT_SYMBOL_GPL vmlinux 0x7a08deef hwrng_register +EXPORT_SYMBOL_GPL vmlinux 0x7a167f3b rtnl_register_module +EXPORT_SYMBOL_GPL vmlinux 0x7a205d7b l3mdev_master_ifindex_rcu +EXPORT_SYMBOL_GPL vmlinux 0x7a402c71 security_path_link +EXPORT_SYMBOL_GPL vmlinux 0x7a71af77 add_memory_driver_managed +EXPORT_SYMBOL_GPL vmlinux 0x7a7dcd9f xas_find +EXPORT_SYMBOL_GPL vmlinux 0x7a81541b async_synchronize_cookie +EXPORT_SYMBOL_GPL vmlinux 0x7a86a458 seg6_do_srh_inline +EXPORT_SYMBOL_GPL vmlinux 0x7a92bc95 css_next_descendant_pre +EXPORT_SYMBOL_GPL vmlinux 0x7a92eba7 fsnotify_destroy_mark +EXPORT_SYMBOL_GPL vmlinux 0x7a9813ed dev_change_net_namespace +EXPORT_SYMBOL_GPL vmlinux 0x7afe324e halt_poll_ns_grow +EXPORT_SYMBOL_GPL vmlinux 0x7b0b1eb2 inet6_csk_xmit +EXPORT_SYMBOL_GPL vmlinux 0x7b0e4d8e device_for_each_child_reverse +EXPORT_SYMBOL_GPL vmlinux 0x7b161617 devm_device_remove_group +EXPORT_SYMBOL_GPL vmlinux 0x7b179e47 sysfs_groups_change_owner +EXPORT_SYMBOL_GPL vmlinux 0x7b5a4926 sha1_zero_message_hash +EXPORT_SYMBOL_GPL vmlinux 0x7b65df5b firmware_request_platform +EXPORT_SYMBOL_GPL vmlinux 0x7b67f358 inet6_lookup +EXPORT_SYMBOL_GPL vmlinux 0x7b93087c pci_msi_create_irq_domain +EXPORT_SYMBOL_GPL vmlinux 0x7b9793a2 get_cpu_idle_time_us +EXPORT_SYMBOL_GPL vmlinux 0x7bc5f989 __udp_gso_segment +EXPORT_SYMBOL_GPL vmlinux 0x7bdee056 dw_pcie_msi_init +EXPORT_SYMBOL_GPL vmlinux 0x7bf481ab dw_pcie_setup_rc +EXPORT_SYMBOL_GPL vmlinux 0x7c0943e4 irq_domain_free_fwnode +EXPORT_SYMBOL_GPL vmlinux 0x7c09b967 serdev_device_alloc +EXPORT_SYMBOL_GPL vmlinux 0x7c0e27d8 set_capacity_revalidate_and_notify +EXPORT_SYMBOL_GPL vmlinux 0x7c1c0e6c sfp_bus_find_fwnode +EXPORT_SYMBOL_GPL vmlinux 0x7c25e365 get_kernel_pages +EXPORT_SYMBOL_GPL vmlinux 0x7c2d392d trace_seq_bprintf +EXPORT_SYMBOL_GPL vmlinux 0x7c3378b3 pkcs7_parse_message +EXPORT_SYMBOL_GPL vmlinux 0x7c33c0d4 irq_chip_request_resources_parent +EXPORT_SYMBOL_GPL vmlinux 0x7c35e60a stop_machine +EXPORT_SYMBOL_GPL vmlinux 0x7c47ec5a blkcg_policy_unregister +EXPORT_SYMBOL_GPL vmlinux 0x7c7f5094 pci_speed_string +EXPORT_SYMBOL_GPL vmlinux 0x7c94c99a kvm_release_pfn_dirty +EXPORT_SYMBOL_GPL vmlinux 0x7ca57491 sbitmap_queue_resize +EXPORT_SYMBOL_GPL vmlinux 0x7cabd7de sysfs_add_link_to_group +EXPORT_SYMBOL_GPL vmlinux 0x7cb2d2b9 fuse_conn_init +EXPORT_SYMBOL_GPL vmlinux 0x7ccf556a ip6_datagram_connect_v6_only +EXPORT_SYMBOL_GPL vmlinux 0x7cde3f09 __trace_note_message +EXPORT_SYMBOL_GPL vmlinux 0x7ceaf0d5 generic_handle_irq +EXPORT_SYMBOL_GPL vmlinux 0x7ced73ea dw_pcie_ep_init +EXPORT_SYMBOL_GPL vmlinux 0x7cf1340e virtqueue_enable_cb_prepare +EXPORT_SYMBOL_GPL vmlinux 0x7cf39d24 device_get_phy_mode +EXPORT_SYMBOL_GPL vmlinux 0x7cf8f1d3 devm_gpiod_get_index +EXPORT_SYMBOL_GPL vmlinux 0x7d0180d8 iomap_is_partially_uptodate +EXPORT_SYMBOL_GPL vmlinux 0x7d5c3e01 devlink_traps_unregister +EXPORT_SYMBOL_GPL vmlinux 0x7d60a863 synchronize_srcu +EXPORT_SYMBOL_GPL vmlinux 0x7d6153cb __cookie_v6_init_sequence +EXPORT_SYMBOL_GPL vmlinux 0x7d7a14ee crypto_shash_digest +EXPORT_SYMBOL_GPL vmlinux 0x7d9c9acf __lock_page_killable +EXPORT_SYMBOL_GPL vmlinux 0x7d9dd40b sbitmap_show +EXPORT_SYMBOL_GPL vmlinux 0x7da1233b shash_free_singlespawn_instance +EXPORT_SYMBOL_GPL vmlinux 0x7db9a2e2 balloon_aops +EXPORT_SYMBOL_GPL vmlinux 0x7dda30af unregister_tracepoint_module_notifier +EXPORT_SYMBOL_GPL vmlinux 0x7ddb2718 __tracepoint_block_rq_remap +EXPORT_SYMBOL_GPL vmlinux 0x7dde4281 devm_gpiod_unhinge +EXPORT_SYMBOL_GPL vmlinux 0x7de6cc23 io_cgrp_subsys_on_dfl_key +EXPORT_SYMBOL_GPL vmlinux 0x7e0cb55f xdp_convert_zc_to_xdp_frame +EXPORT_SYMBOL_GPL vmlinux 0x7e2be88a inet6_lookup_listener +EXPORT_SYMBOL_GPL vmlinux 0x7e3e51de account_locked_vm +EXPORT_SYMBOL_GPL vmlinux 0x7e4caf2d xdp_attachment_flags_ok +EXPORT_SYMBOL_GPL vmlinux 0x7e7b129d init_user_ns +EXPORT_SYMBOL_GPL vmlinux 0x7e7e3f58 ring_buffer_reset_cpu +EXPORT_SYMBOL_GPL vmlinux 0x7eb66d98 pci_enable_rom +EXPORT_SYMBOL_GPL vmlinux 0x7eb808d0 add_cpu +EXPORT_SYMBOL_GPL vmlinux 0x7eb926bb crypto_stats_init +EXPORT_SYMBOL_GPL vmlinux 0x7eb9e32d tcp_reno_cong_avoid +EXPORT_SYMBOL_GPL vmlinux 0x7edfdb92 irq_set_affinity_notifier +EXPORT_SYMBOL_GPL vmlinux 0x7f04b1c5 cio_clear +EXPORT_SYMBOL_GPL vmlinux 0x7f79dd7c tcp_rate_check_app_limited +EXPORT_SYMBOL_GPL vmlinux 0x7f7cbc64 ip_tunnel_need_metadata +EXPORT_SYMBOL_GPL vmlinux 0x7f906a43 kvm_write_guest_offset_cached +EXPORT_SYMBOL_GPL vmlinux 0x7f9c234c serdev_controller_add +EXPORT_SYMBOL_GPL vmlinux 0x7fad158e devlink_trap_report +EXPORT_SYMBOL_GPL vmlinux 0x7fb5c074 devres_release_group +EXPORT_SYMBOL_GPL vmlinux 0x7fb69b88 addrconf_prefix_rcv_add_addr +EXPORT_SYMBOL_GPL vmlinux 0x8018dd30 key_type_trusted +EXPORT_SYMBOL_GPL vmlinux 0x801beb36 is_current_mnt_ns +EXPORT_SYMBOL_GPL vmlinux 0x805667cf devlink_fmsg_u64_put +EXPORT_SYMBOL_GPL vmlinux 0x807fdcc4 call_rcu_tasks_rude +EXPORT_SYMBOL_GPL vmlinux 0x808ec1a3 crypto_alg_tested +EXPORT_SYMBOL_GPL vmlinux 0x8094815e sysfs_group_change_owner +EXPORT_SYMBOL_GPL vmlinux 0x80999370 md_rdev_clear +EXPORT_SYMBOL_GPL vmlinux 0x809f824a class_unregister +EXPORT_SYMBOL_GPL vmlinux 0x80a46aa0 sysfs_remove_file_self +EXPORT_SYMBOL_GPL vmlinux 0x80b109d4 __tracepoint_pelt_se_tp +EXPORT_SYMBOL_GPL vmlinux 0x80bb0819 pci_epc_raise_irq +EXPORT_SYMBOL_GPL vmlinux 0x80c68137 nf_log_buf_close +EXPORT_SYMBOL_GPL vmlinux 0x80cec789 crypto_stats_kpp_set_secret +EXPORT_SYMBOL_GPL vmlinux 0x80d5e57a mpi_free +EXPORT_SYMBOL_GPL vmlinux 0x80f8f302 clean_acked_data_disable +EXPORT_SYMBOL_GPL vmlinux 0x80fb44b1 software_node_register_node_group +EXPORT_SYMBOL_GPL vmlinux 0x8108b685 __ip6_datagram_connect +EXPORT_SYMBOL_GPL vmlinux 0x812d7ec4 pci_epf_unregister_driver +EXPORT_SYMBOL_GPL vmlinux 0x812ea476 trace_seq_bitmask +EXPORT_SYMBOL_GPL vmlinux 0x81555ed5 xas_init_marks +EXPORT_SYMBOL_GPL vmlinux 0x815fda83 sed_ioctl +EXPORT_SYMBOL_GPL vmlinux 0x81d7c5b7 percpu_ref_kill_and_confirm +EXPORT_SYMBOL_GPL vmlinux 0x81e6e00e pci_load_saved_state +EXPORT_SYMBOL_GPL vmlinux 0x824ed2d5 md_stop +EXPORT_SYMBOL_GPL vmlinux 0x826494ed fat_fill_super +EXPORT_SYMBOL_GPL vmlinux 0x826eae76 list_lru_add +EXPORT_SYMBOL_GPL vmlinux 0x827d8cac udp_destruct_sock +EXPORT_SYMBOL_GPL vmlinux 0x8281f3fe dynevent_create +EXPORT_SYMBOL_GPL vmlinux 0x82842075 xdp_rxq_info_reg +EXPORT_SYMBOL_GPL vmlinux 0x829654bb __blocking_notifier_call_chain +EXPORT_SYMBOL_GPL vmlinux 0x82a36215 iommu_attach_group +EXPORT_SYMBOL_GPL vmlinux 0x82cc542c tpm_pcr_extend +EXPORT_SYMBOL_GPL vmlinux 0x82d79b51 sysctl_vfs_cache_pressure +EXPORT_SYMBOL_GPL vmlinux 0x82d85ca2 debugfs_create_ulong +EXPORT_SYMBOL_GPL vmlinux 0x83094746 pci_sriov_configure_simple +EXPORT_SYMBOL_GPL vmlinux 0x8318bcbb crypto_unregister_templates +EXPORT_SYMBOL_GPL vmlinux 0x83301b61 validate_xmit_xfrm +EXPORT_SYMBOL_GPL vmlinux 0x8337b47b fat_sync_inode +EXPORT_SYMBOL_GPL vmlinux 0x8339df73 klist_add_behind +EXPORT_SYMBOL_GPL vmlinux 0x8348e4f0 __tracepoint_wbc_writepage +EXPORT_SYMBOL_GPL vmlinux 0x837213bb kvm_read_guest_cached +EXPORT_SYMBOL_GPL vmlinux 0x838b788a tcp_abort +EXPORT_SYMBOL_GPL vmlinux 0x839dfdc0 sysfs_update_group +EXPORT_SYMBOL_GPL vmlinux 0x83aa84da ring_buffer_read_page +EXPORT_SYMBOL_GPL vmlinux 0x83b238f2 dm_bio_get_target_bio_nr +EXPORT_SYMBOL_GPL vmlinux 0x83bdc76f fat_getattr +EXPORT_SYMBOL_GPL vmlinux 0x83d079f5 rhashtable_init +EXPORT_SYMBOL_GPL vmlinux 0x83eec2d3 perf_aux_output_flag +EXPORT_SYMBOL_GPL vmlinux 0x83f446a6 kthread_cancel_work_sync +EXPORT_SYMBOL_GPL vmlinux 0x840cd009 gpiochip_get_data +EXPORT_SYMBOL_GPL vmlinux 0x84106f36 devlink_trap_ctx_priv +EXPORT_SYMBOL_GPL vmlinux 0x841cc59d crypto_stats_ahash_final +EXPORT_SYMBOL_GPL vmlinux 0x84264ced fs_umode_to_ftype +EXPORT_SYMBOL_GPL vmlinux 0x842a49f1 pci_generic_config_write32 +EXPORT_SYMBOL_GPL vmlinux 0x844b06eb perf_event_period +EXPORT_SYMBOL_GPL vmlinux 0x84502a47 blk_status_to_errno +EXPORT_SYMBOL_GPL vmlinux 0x84513dca check_move_unevictable_pages +EXPORT_SYMBOL_GPL vmlinux 0x845dbf3b scatterwalk_map_and_copy +EXPORT_SYMBOL_GPL vmlinux 0x846110b9 virtqueue_get_avail_addr +EXPORT_SYMBOL_GPL vmlinux 0x8468aa2a device_get_next_child_node +EXPORT_SYMBOL_GPL vmlinux 0x846fe246 unregister_net_sysctl_table +EXPORT_SYMBOL_GPL vmlinux 0x84815a68 free_fib_info +EXPORT_SYMBOL_GPL vmlinux 0x848ce259 lwtstate_free +EXPORT_SYMBOL_GPL vmlinux 0x84d9cb2d gpiod_set_transitory +EXPORT_SYMBOL_GPL vmlinux 0x850bb6db devlink_health_reporter_destroy +EXPORT_SYMBOL_GPL vmlinux 0x850c10de blkg_rwstat_recursive_sum +EXPORT_SYMBOL_GPL vmlinux 0x85162656 create_signature +EXPORT_SYMBOL_GPL vmlinux 0x85169605 sysfs_create_link_nowarn +EXPORT_SYMBOL_GPL vmlinux 0x853a250a iommu_dev_has_feature +EXPORT_SYMBOL_GPL vmlinux 0x855786cc unregister_ftrace_function +EXPORT_SYMBOL_GPL vmlinux 0x857db3b7 devm_get_free_pages +EXPORT_SYMBOL_GPL vmlinux 0x858b618d blk_mq_force_complete_rq +EXPORT_SYMBOL_GPL vmlinux 0x858e50d8 call_switchdev_blocking_notifiers +EXPORT_SYMBOL_GPL vmlinux 0x85911611 pci_epf_match_device +EXPORT_SYMBOL_GPL vmlinux 0x85a33397 pci_vfs_assigned +EXPORT_SYMBOL_GPL vmlinux 0x85a49dc7 pci_vpd_find_info_keyword +EXPORT_SYMBOL_GPL vmlinux 0x85b38978 percpu_ref_reinit +EXPORT_SYMBOL_GPL vmlinux 0x85b51667 kvm_vcpu_gfn_to_memslot +EXPORT_SYMBOL_GPL vmlinux 0x85b57743 devlink_trap_groups_unregister +EXPORT_SYMBOL_GPL vmlinux 0x85bcf9a7 __sbitmap_queue_get_shallow +EXPORT_SYMBOL_GPL vmlinux 0x85c2f118 pci_ats_supported +EXPORT_SYMBOL_GPL vmlinux 0x85d89a86 crypto_register_algs +EXPORT_SYMBOL_GPL vmlinux 0x8618dee5 fwnode_property_read_u8_array +EXPORT_SYMBOL_GPL vmlinux 0x862258db timecounter_init +EXPORT_SYMBOL_GPL vmlinux 0x86248ec5 __audit_log_nfcfg +EXPORT_SYMBOL_GPL vmlinux 0x862bf862 crypto_alloc_skcipher +EXPORT_SYMBOL_GPL vmlinux 0x864533eb device_create_bin_file +EXPORT_SYMBOL_GPL vmlinux 0x86568272 irq_domain_free_irqs_common +EXPORT_SYMBOL_GPL vmlinux 0x86585a33 devlink_fmsg_obj_nest_start +EXPORT_SYMBOL_GPL vmlinux 0x86743ac1 xfrm_audit_state_notfound +EXPORT_SYMBOL_GPL vmlinux 0x86752bc8 scsi_host_busy_iter +EXPORT_SYMBOL_GPL vmlinux 0x8677245d unregister_switchdev_blocking_notifier +EXPORT_SYMBOL_GPL vmlinux 0x868784cb __symbol_get +EXPORT_SYMBOL_GPL vmlinux 0x86b0b6ba zpci_barrier +EXPORT_SYMBOL_GPL vmlinux 0x86be4ee6 __raw_v4_lookup +EXPORT_SYMBOL_GPL vmlinux 0x86c961b3 __set_dax_synchronous +EXPORT_SYMBOL_GPL vmlinux 0x86f6b99d synchronize_rcu_expedited +EXPORT_SYMBOL_GPL vmlinux 0x86f85114 net_dec_egress_queue +EXPORT_SYMBOL_GPL vmlinux 0x86fbbad5 nf_route +EXPORT_SYMBOL_GPL vmlinux 0x8703a18a hrtimer_start_range_ns +EXPORT_SYMBOL_GPL vmlinux 0x870a8fea __udp6_lib_lookup +EXPORT_SYMBOL_GPL vmlinux 0x871418f1 pci_epc_put +EXPORT_SYMBOL_GPL vmlinux 0x871ec75c crypto_unregister_alg +EXPORT_SYMBOL_GPL vmlinux 0x87311352 gpiochip_irqchip_add_key +EXPORT_SYMBOL_GPL vmlinux 0x8743d151 iommu_sva_bind_gpasid +EXPORT_SYMBOL_GPL vmlinux 0x875992e4 sbitmap_get_shallow +EXPORT_SYMBOL_GPL vmlinux 0x87745fd1 freq_qos_add_request +EXPORT_SYMBOL_GPL vmlinux 0x8792aa8a virtio_config_enable +EXPORT_SYMBOL_GPL vmlinux 0x8792ed42 __wait_rcu_gp +EXPORT_SYMBOL_GPL vmlinux 0x87be8106 tpm_send +EXPORT_SYMBOL_GPL vmlinux 0x87c4a5fb cleanup_srcu_struct +EXPORT_SYMBOL_GPL vmlinux 0x87d06dbe md_bitmap_load +EXPORT_SYMBOL_GPL vmlinux 0x87d27573 proc_get_parent_data +EXPORT_SYMBOL_GPL vmlinux 0x87f45f6c gmap_shadow_pgt +EXPORT_SYMBOL_GPL vmlinux 0x8812eb43 dm_noflush_suspending +EXPORT_SYMBOL_GPL vmlinux 0x8852e85f dw_pcie_wait_for_link +EXPORT_SYMBOL_GPL vmlinux 0x885528a6 ring_buffer_discard_commit +EXPORT_SYMBOL_GPL vmlinux 0x886d9fc4 vfs_setlease +EXPORT_SYMBOL_GPL vmlinux 0x887a6318 skb_to_sgvec +EXPORT_SYMBOL_GPL vmlinux 0x889120af kvm_set_memory_region +EXPORT_SYMBOL_GPL vmlinux 0x88ad3a8c devlink_port_type_clear +EXPORT_SYMBOL_GPL vmlinux 0x88b4ae92 ring_buffer_normalize_time_stamp +EXPORT_SYMBOL_GPL vmlinux 0x88c8ba92 cgroup_get_from_fd +EXPORT_SYMBOL_GPL vmlinux 0x88f58bdf security_kernel_load_data +EXPORT_SYMBOL_GPL vmlinux 0x8913adab blk_mq_init_queue_data +EXPORT_SYMBOL_GPL vmlinux 0x89237aef crypto_hash_walk_done +EXPORT_SYMBOL_GPL vmlinux 0x8924eb1e rcu_force_quiescent_state +EXPORT_SYMBOL_GPL vmlinux 0x892bb843 screen_pos +EXPORT_SYMBOL_GPL vmlinux 0x893abbdd devlink_fmsg_u32_pair_put +EXPORT_SYMBOL_GPL vmlinux 0x89485687 iommu_group_put +EXPORT_SYMBOL_GPL vmlinux 0x894af7e7 pci_bus_max_busnr +EXPORT_SYMBOL_GPL vmlinux 0x89821feb netdev_is_rx_handler_busy +EXPORT_SYMBOL_GPL vmlinux 0x89981329 dm_per_bio_data +EXPORT_SYMBOL_GPL vmlinux 0x89c2b6f4 mnt_want_write_file +EXPORT_SYMBOL_GPL vmlinux 0x89c2ea7c platform_bus +EXPORT_SYMBOL_GPL vmlinux 0x89d6cab0 bsg_job_put +EXPORT_SYMBOL_GPL vmlinux 0x89e1389b fwnode_property_match_string +EXPORT_SYMBOL_GPL vmlinux 0x89ef14fd __set_page_dirty +EXPORT_SYMBOL_GPL vmlinux 0x89f1cb28 pci_host_probe +EXPORT_SYMBOL_GPL vmlinux 0x8a0a994f tty_ldisc_release +EXPORT_SYMBOL_GPL vmlinux 0x8a0fae20 crypto_create_tfm +EXPORT_SYMBOL_GPL vmlinux 0x8a16d44a rhashtable_walk_stop +EXPORT_SYMBOL_GPL vmlinux 0x8a4dba09 skcipher_register_instance +EXPORT_SYMBOL_GPL vmlinux 0x8a615a20 __kprobe_event_add_fields +EXPORT_SYMBOL_GPL vmlinux 0x8a62b81b sfp_upstream_stop +EXPORT_SYMBOL_GPL vmlinux 0x8a63bf7a gpio_free_array +EXPORT_SYMBOL_GPL vmlinux 0x8a6df8be fwnode_graph_get_endpoint_by_id +EXPORT_SYMBOL_GPL vmlinux 0x8a7214ae serdev_device_open +EXPORT_SYMBOL_GPL vmlinux 0x8a88db1f gpiod_get_array_value_cansleep +EXPORT_SYMBOL_GPL vmlinux 0x8aa0d025 fb_deferred_io_init +EXPORT_SYMBOL_GPL vmlinux 0x8aa38c42 init_pid_ns +EXPORT_SYMBOL_GPL vmlinux 0x8aa7e63a platform_bus_type +EXPORT_SYMBOL_GPL vmlinux 0x8ab04063 debugfs_rename +EXPORT_SYMBOL_GPL vmlinux 0x8abacc47 get_max_files +EXPORT_SYMBOL_GPL vmlinux 0x8ad917d2 anon_transport_class_unregister +EXPORT_SYMBOL_GPL vmlinux 0x8b0a5646 iommu_group_remove_device +EXPORT_SYMBOL_GPL vmlinux 0x8b1095d4 inode_dax +EXPORT_SYMBOL_GPL vmlinux 0x8b155800 platform_device_add +EXPORT_SYMBOL_GPL vmlinux 0x8b1641fd xas_create_range +EXPORT_SYMBOL_GPL vmlinux 0x8b2654ee task_cls_state +EXPORT_SYMBOL_GPL vmlinux 0x8b2b0fab __put_net +EXPORT_SYMBOL_GPL vmlinux 0x8b34bcae elv_rqhash_del +EXPORT_SYMBOL_GPL vmlinux 0x8b3b481e sk_msg_trim +EXPORT_SYMBOL_GPL vmlinux 0x8b440079 aead_register_instance +EXPORT_SYMBOL_GPL vmlinux 0x8b6f1d66 ping_seq_start +EXPORT_SYMBOL_GPL vmlinux 0x8b7505d3 bpf_trace_run7 +EXPORT_SYMBOL_GPL vmlinux 0x8b7fa44a __srcu_read_unlock +EXPORT_SYMBOL_GPL vmlinux 0x8b8d1600 switchdev_port_attr_set +EXPORT_SYMBOL_GPL vmlinux 0x8bb89e52 gmap_put +EXPORT_SYMBOL_GPL vmlinux 0x8bded20f zpci_load +EXPORT_SYMBOL_GPL vmlinux 0x8bfc383f irq_domain_remove +EXPORT_SYMBOL_GPL vmlinux 0x8c03d20c destroy_workqueue +EXPORT_SYMBOL_GPL vmlinux 0x8c0823c1 fwnode_graph_get_remote_port_parent +EXPORT_SYMBOL_GPL vmlinux 0x8c1ee869 dummy_irq_chip +EXPORT_SYMBOL_GPL vmlinux 0x8c479745 __cpuhp_state_remove_instance +EXPORT_SYMBOL_GPL vmlinux 0x8c522546 scsi_internal_device_unblock_nowait +EXPORT_SYMBOL_GPL vmlinux 0x8c5a112c register_kprobes +EXPORT_SYMBOL_GPL vmlinux 0x8c772c76 synth_event_gen_cmd_array_start +EXPORT_SYMBOL_GPL vmlinux 0x8c78bde0 fuse_file_poll +EXPORT_SYMBOL_GPL vmlinux 0x8ca2693d sbitmap_init_node +EXPORT_SYMBOL_GPL vmlinux 0x8cc5c232 iptunnel_xmit +EXPORT_SYMBOL_GPL vmlinux 0x8cd44e48 ip6_datagram_release_cb +EXPORT_SYMBOL_GPL vmlinux 0x8cda64bd serdev_device_wait_until_sent +EXPORT_SYMBOL_GPL vmlinux 0x8ce29d25 iommu_detach_device +EXPORT_SYMBOL_GPL vmlinux 0x8cee2460 __percpu_down_read +EXPORT_SYMBOL_GPL vmlinux 0x8d10cc98 serdev_device_set_baudrate +EXPORT_SYMBOL_GPL vmlinux 0x8d1549aa bus_register_notifier +EXPORT_SYMBOL_GPL vmlinux 0x8d154c9f trace_define_field +EXPORT_SYMBOL_GPL vmlinux 0x8d1607de pci_hp_add_bridge +EXPORT_SYMBOL_GPL vmlinux 0x8d1b6dc1 skcipher_walk_virt +EXPORT_SYMBOL_GPL vmlinux 0x8d22bb58 iommu_group_alloc +EXPORT_SYMBOL_GPL vmlinux 0x8d3330b6 cpuacct_cgrp_subsys_enabled_key +EXPORT_SYMBOL_GPL vmlinux 0x8d3e5b33 kvm_irq_has_notifier +EXPORT_SYMBOL_GPL vmlinux 0x8d448307 devlink_region_snapshot_id_put +EXPORT_SYMBOL_GPL vmlinux 0x8d466f1d device_link_del +EXPORT_SYMBOL_GPL vmlinux 0x8d7a857d bus_create_file +EXPORT_SYMBOL_GPL vmlinux 0x8d89aebb devlink_resource_occ_get_unregister +EXPORT_SYMBOL_GPL vmlinux 0x8dc57d00 devlink_is_reload_failed +EXPORT_SYMBOL_GPL vmlinux 0x8de2c0f5 md_run +EXPORT_SYMBOL_GPL vmlinux 0x8dee260a bpf_event_output +EXPORT_SYMBOL_GPL vmlinux 0x8deecee2 tcp_sendmsg_locked +EXPORT_SYMBOL_GPL vmlinux 0x8e11e289 ccw_device_get_schid +EXPORT_SYMBOL_GPL vmlinux 0x8e23d58f offline_and_remove_memory +EXPORT_SYMBOL_GPL vmlinux 0x8e25b6de platform_add_devices +EXPORT_SYMBOL_GPL vmlinux 0x8e2b80cf yield_to +EXPORT_SYMBOL_GPL vmlinux 0x8e4eb451 bpf_sk_storage_diag_free +EXPORT_SYMBOL_GPL vmlinux 0x8e574b4b device_show_ulong +EXPORT_SYMBOL_GPL vmlinux 0x8e7707fb __crypto_alloc_tfm +EXPORT_SYMBOL_GPL vmlinux 0x8e92f7c4 static_key_slow_inc +EXPORT_SYMBOL_GPL vmlinux 0x8e95654e fuse_dev_alloc_install +EXPORT_SYMBOL_GPL vmlinux 0x8ea5ec48 dma_buf_vunmap +EXPORT_SYMBOL_GPL vmlinux 0x8ec49502 fat_free_clusters +EXPORT_SYMBOL_GPL vmlinux 0x8eccea42 __fscrypt_prepare_link +EXPORT_SYMBOL_GPL vmlinux 0x8ee0cb79 __vfs_removexattr_locked +EXPORT_SYMBOL_GPL vmlinux 0x8ee78e33 devlink_port_param_driverinit_value_set +EXPORT_SYMBOL_GPL vmlinux 0x8eee3399 dax_read_unlock +EXPORT_SYMBOL_GPL vmlinux 0x8efac578 devlink_port_params_register +EXPORT_SYMBOL_GPL vmlinux 0x8f0748af rcu_expedite_gp +EXPORT_SYMBOL_GPL vmlinux 0x8f088f66 pci_enable_sriov +EXPORT_SYMBOL_GPL vmlinux 0x8f2938d8 perf_event_sysfs_show +EXPORT_SYMBOL_GPL vmlinux 0x8f38d4db dax_iomap_rw +EXPORT_SYMBOL_GPL vmlinux 0x8f3f50d8 skcipher_walk_async +EXPORT_SYMBOL_GPL vmlinux 0x8f4fb1c0 pci_device_is_present +EXPORT_SYMBOL_GPL vmlinux 0x8f5bf523 __zpci_load +EXPORT_SYMBOL_GPL vmlinux 0x8f5e9ea2 sysfs_remove_file_from_group +EXPORT_SYMBOL_GPL vmlinux 0x8f64772c dm_internal_resume +EXPORT_SYMBOL_GPL vmlinux 0x8f6cee77 __round_jiffies_relative +EXPORT_SYMBOL_GPL vmlinux 0x8f786bee fs_umode_to_dtype +EXPORT_SYMBOL_GPL vmlinux 0x8f803cfb pci_common_swizzle +EXPORT_SYMBOL_GPL vmlinux 0x8fb742a6 tty_buffer_space_avail +EXPORT_SYMBOL_GPL vmlinux 0x8fe8f775 add_page_wait_queue +EXPORT_SYMBOL_GPL vmlinux 0x900be239 ip_local_out +EXPORT_SYMBOL_GPL vmlinux 0x901cdf12 linear_hugepage_index +EXPORT_SYMBOL_GPL vmlinux 0x901df4fd crypto_stats_akcipher_sign +EXPORT_SYMBOL_GPL vmlinux 0x901f3ed5 bpf_trace_run9 +EXPORT_SYMBOL_GPL vmlinux 0x903b627c list_lru_isolate_move +EXPORT_SYMBOL_GPL vmlinux 0x9051df79 blk_mq_make_request +EXPORT_SYMBOL_GPL vmlinux 0x90680e0e crypto_register_acomp +EXPORT_SYMBOL_GPL vmlinux 0x90688bcd devlink_info_driver_name_put +EXPORT_SYMBOL_GPL vmlinux 0x9075cecd blk_add_driver_data +EXPORT_SYMBOL_GPL vmlinux 0x908c92de inet_twsk_put +EXPORT_SYMBOL_GPL vmlinux 0x90907c6a __kthread_init_worker +EXPORT_SYMBOL_GPL vmlinux 0x9095f42f net_rwsem +EXPORT_SYMBOL_GPL vmlinux 0x9099d4d9 cio_update_schib +EXPORT_SYMBOL_GPL vmlinux 0x90a1c2bc proc_douintvec_minmax +EXPORT_SYMBOL_GPL vmlinux 0x90b50576 x509_cert_parse +EXPORT_SYMBOL_GPL vmlinux 0x90eed8f0 relay_open +EXPORT_SYMBOL_GPL vmlinux 0x91320455 sbitmap_any_bit_set +EXPORT_SYMBOL_GPL vmlinux 0x914628d9 __module_address +EXPORT_SYMBOL_GPL vmlinux 0x915c6c2d xfrm_audit_state_notfound_simple +EXPORT_SYMBOL_GPL vmlinux 0x915f9ff3 unregister_kprobe +EXPORT_SYMBOL_GPL vmlinux 0x9182f728 platform_device_add_resources +EXPORT_SYMBOL_GPL vmlinux 0x918ae9aa pci_status_get_and_clear_errors +EXPORT_SYMBOL_GPL vmlinux 0x91a55068 public_key_free +EXPORT_SYMBOL_GPL vmlinux 0x91b278e3 bpf_prog_inc +EXPORT_SYMBOL_GPL vmlinux 0x91d7a077 input_ff_event +EXPORT_SYMBOL_GPL vmlinux 0x91dfebeb each_symbol_section +EXPORT_SYMBOL_GPL vmlinux 0x91eb518d klist_init +EXPORT_SYMBOL_GPL vmlinux 0x91feb424 cn_add_callback +EXPORT_SYMBOL_GPL vmlinux 0x9211b962 fuse_direct_io +EXPORT_SYMBOL_GPL vmlinux 0x9212cd56 net_ns_type_operations +EXPORT_SYMBOL_GPL vmlinux 0x9241b358 __static_key_slow_dec_deferred +EXPORT_SYMBOL_GPL vmlinux 0x924c46f8 zs_unmap_object +EXPORT_SYMBOL_GPL vmlinux 0x9258c06c wbc_account_cgroup_owner +EXPORT_SYMBOL_GPL vmlinux 0x92674fc1 page_cache_sync_readahead +EXPORT_SYMBOL_GPL vmlinux 0x9282bde1 lwtunnel_xmit +EXPORT_SYMBOL_GPL vmlinux 0x9286784a cmf_readall +EXPORT_SYMBOL_GPL vmlinux 0x928c68bc devm_kmemdup +EXPORT_SYMBOL_GPL vmlinux 0x92a8c268 kthread_queue_work +EXPORT_SYMBOL_GPL vmlinux 0x92b5bb1f tty_ldisc_receive_buf +EXPORT_SYMBOL_GPL vmlinux 0x92b782bf espintcp_queue_out +EXPORT_SYMBOL_GPL vmlinux 0x92cdf69b shmem_truncate_range +EXPORT_SYMBOL_GPL vmlinux 0x92da914d fuse_dev_free +EXPORT_SYMBOL_GPL vmlinux 0x92db8f68 do_trace_rcu_torture_read +EXPORT_SYMBOL_GPL vmlinux 0x92e8e9ab fsverity_enqueue_verify_work +EXPORT_SYMBOL_GPL vmlinux 0x92f1c767 crypto_unregister_aead +EXPORT_SYMBOL_GPL vmlinux 0x92f6c4ca pci_aer_clear_nonfatal_status +EXPORT_SYMBOL_GPL vmlinux 0x92fa9d63 trace_event_buffer_lock_reserve +EXPORT_SYMBOL_GPL vmlinux 0x930576c3 do_truncate +EXPORT_SYMBOL_GPL vmlinux 0x930eca5e bio_iov_iter_get_pages +EXPORT_SYMBOL_GPL vmlinux 0x93170790 blk_fill_rwbs +EXPORT_SYMBOL_GPL vmlinux 0x9319a80e gpiod_toggle_active_low +EXPORT_SYMBOL_GPL vmlinux 0x9321470e fwnode_get_named_child_node +EXPORT_SYMBOL_GPL vmlinux 0x93255b2b ring_buffer_lock_reserve +EXPORT_SYMBOL_GPL vmlinux 0x9353ab8d fib_table_lookup +EXPORT_SYMBOL_GPL vmlinux 0x93725986 __tracepoint_pelt_dl_tp +EXPORT_SYMBOL_GPL vmlinux 0x938e9501 wait_on_page_writeback +EXPORT_SYMBOL_GPL vmlinux 0x93922111 get_compat_bpf_fprog +EXPORT_SYMBOL_GPL vmlinux 0x93bd9d12 chp_get_sch_opm +EXPORT_SYMBOL_GPL vmlinux 0x93edef07 devlink_health_report +EXPORT_SYMBOL_GPL vmlinux 0x941f2aaa eventfd_ctx_put +EXPORT_SYMBOL_GPL vmlinux 0x942e3b9d devlink_net_set +EXPORT_SYMBOL_GPL vmlinux 0x9430b198 trace_dump_stack +EXPORT_SYMBOL_GPL vmlinux 0x94406a1a arch_make_page_accessible +EXPORT_SYMBOL_GPL vmlinux 0x946dd559 sha224_zero_message_hash +EXPORT_SYMBOL_GPL vmlinux 0x947854f2 fwnode_property_present +EXPORT_SYMBOL_GPL vmlinux 0x948547a3 skb_partial_csum_set +EXPORT_SYMBOL_GPL vmlinux 0x94943717 rhashtable_walk_enter +EXPORT_SYMBOL_GPL vmlinux 0x949b5176 devlink_region_snapshot_create +EXPORT_SYMBOL_GPL vmlinux 0x94b4ad08 blkcg_root_css +EXPORT_SYMBOL_GPL vmlinux 0x94c140f1 device_connection_add +EXPORT_SYMBOL_GPL vmlinux 0x94c52ff7 __pci_reset_function_locked +EXPORT_SYMBOL_GPL vmlinux 0x94d5501c bpf_prog_alloc +EXPORT_SYMBOL_GPL vmlinux 0x94eca8ae dst_cache_set_ip4 +EXPORT_SYMBOL_GPL vmlinux 0x94ecc155 kobject_init_and_add +EXPORT_SYMBOL_GPL vmlinux 0x94ef4d05 cpci_hp_stop +EXPORT_SYMBOL_GPL vmlinux 0x94f86601 crypto_unregister_scomp +EXPORT_SYMBOL_GPL vmlinux 0x9504df26 irq_wake_thread +EXPORT_SYMBOL_GPL vmlinux 0x950e4490 io_cgrp_subsys +EXPORT_SYMBOL_GPL vmlinux 0x951a2773 crypto_has_alg +EXPORT_SYMBOL_GPL vmlinux 0x952664c5 do_exit +EXPORT_SYMBOL_GPL vmlinux 0x953e1b9e ktime_get_real_seconds +EXPORT_SYMBOL_GPL vmlinux 0x954f3ea1 call_switchdev_notifiers +EXPORT_SYMBOL_GPL vmlinux 0x955b0e2e kthread_worker_fn +EXPORT_SYMBOL_GPL vmlinux 0x956ac400 ring_buffer_dropped_events_cpu +EXPORT_SYMBOL_GPL vmlinux 0x958df3ac zs_free +EXPORT_SYMBOL_GPL vmlinux 0x959ec5f5 call_rcu_tasks +EXPORT_SYMBOL_GPL vmlinux 0x959fde82 gpiochip_irq_domain_deactivate +EXPORT_SYMBOL_GPL vmlinux 0x95ada232 __inet_lookup_established +EXPORT_SYMBOL_GPL vmlinux 0x95bd7071 devm_free_percpu +EXPORT_SYMBOL_GPL vmlinux 0x95c24c5f ip6_local_out +EXPORT_SYMBOL_GPL vmlinux 0x95cfd8ad tcp_ca_openreq_child +EXPORT_SYMBOL_GPL vmlinux 0x95da5123 pkcs7_free_message +EXPORT_SYMBOL_GPL vmlinux 0x95f6f8e3 crypto_stats_decompress +EXPORT_SYMBOL_GPL vmlinux 0x96031395 pci_hp_create_module_link +EXPORT_SYMBOL_GPL vmlinux 0x9604d6a2 perf_event_addr_filters_sync +EXPORT_SYMBOL_GPL vmlinux 0x960675be pci_load_and_free_saved_state +EXPORT_SYMBOL_GPL vmlinux 0x960e131f sock_diag_register_inet_compat +EXPORT_SYMBOL_GPL vmlinux 0x961286e0 ring_buffer_read_events_cpu +EXPORT_SYMBOL_GPL vmlinux 0x96251a70 anon_inode_getfd +EXPORT_SYMBOL_GPL vmlinux 0x962761f6 pkcs7_get_content_data +EXPORT_SYMBOL_GPL vmlinux 0x96554810 register_keyboard_notifier +EXPORT_SYMBOL_GPL vmlinux 0x965758d0 devm_hwrng_unregister +EXPORT_SYMBOL_GPL vmlinux 0x9666f130 gmap_unregister_pte_notifier +EXPORT_SYMBOL_GPL vmlinux 0x9672989a cpci_hp_unregister_bus +EXPORT_SYMBOL_GPL vmlinux 0x96933c02 fib_alias_hw_flags_set +EXPORT_SYMBOL_GPL vmlinux 0x9695dc12 devlink_dpipe_match_put +EXPORT_SYMBOL_GPL vmlinux 0x96a3dff2 fib_rules_seq_read +EXPORT_SYMBOL_GPL vmlinux 0x96ad4eec platform_unregister_drivers +EXPORT_SYMBOL_GPL vmlinux 0x96cd212e crypto_alg_extsize +EXPORT_SYMBOL_GPL vmlinux 0x96d18b28 devm_gpio_request_one +EXPORT_SYMBOL_GPL vmlinux 0x97012521 debugfs_create_x64 +EXPORT_SYMBOL_GPL vmlinux 0x97024184 fib_rules_dump +EXPORT_SYMBOL_GPL vmlinux 0x970368ed blk_execute_rq_nowait +EXPORT_SYMBOL_GPL vmlinux 0x9705429d devlink_resource_occ_get_register +EXPORT_SYMBOL_GPL vmlinux 0x9714e0bb ktime_get_raw +EXPORT_SYMBOL_GPL vmlinux 0x974e5107 gmap_translate +EXPORT_SYMBOL_GPL vmlinux 0x975519c1 asymmetric_key_id_same +EXPORT_SYMBOL_GPL vmlinux 0x979fc133 irq_create_strict_mappings +EXPORT_SYMBOL_GPL vmlinux 0x97a408e8 component_master_del +EXPORT_SYMBOL_GPL vmlinux 0x97a61432 task_active_pid_ns +EXPORT_SYMBOL_GPL vmlinux 0x97c523e5 hrtimer_sleeper_start_expires +EXPORT_SYMBOL_GPL vmlinux 0x97de2b83 debug_locks_silent +EXPORT_SYMBOL_GPL vmlinux 0x97e7f902 trace_vbprintk +EXPORT_SYMBOL_GPL vmlinux 0x97f47822 crypto_stats_skcipher_encrypt +EXPORT_SYMBOL_GPL vmlinux 0x97fc8ed0 ip6_dst_lookup +EXPORT_SYMBOL_GPL vmlinux 0x97ff91d9 crypto_shoot_alg +EXPORT_SYMBOL_GPL vmlinux 0x98030cab handle_mm_fault +EXPORT_SYMBOL_GPL vmlinux 0x98044137 device_match_devt +EXPORT_SYMBOL_GPL vmlinux 0x981f7c9e badblocks_init +EXPORT_SYMBOL_GPL vmlinux 0x9833bc0c hvc_kick +EXPORT_SYMBOL_GPL vmlinux 0x985034b9 find_pid_ns +EXPORT_SYMBOL_GPL vmlinux 0x98503a63 mpi_alloc +EXPORT_SYMBOL_GPL vmlinux 0x985453e1 lease_unregister_notifier +EXPORT_SYMBOL_GPL vmlinux 0x9861830b housekeeping_cpumask +EXPORT_SYMBOL_GPL vmlinux 0x9879932b crypto_register_notifier +EXPORT_SYMBOL_GPL vmlinux 0x988ac130 sysfs_remove_bin_file +EXPORT_SYMBOL_GPL vmlinux 0x989074ff kmsg_dump_reason_str +EXPORT_SYMBOL_GPL vmlinux 0x98ee62b2 ring_buffer_record_disable_cpu +EXPORT_SYMBOL_GPL vmlinux 0x98fa1e20 dm_get_reserved_rq_based_ios +EXPORT_SYMBOL_GPL vmlinux 0x98fecc00 class_create_file_ns +EXPORT_SYMBOL_GPL vmlinux 0x9926af02 securityfs_create_symlink +EXPORT_SYMBOL_GPL vmlinux 0x9950511f blk_mq_sched_request_inserted +EXPORT_SYMBOL_GPL vmlinux 0x9958a24c skb_complete_tx_timestamp +EXPORT_SYMBOL_GPL vmlinux 0x995d1071 prof_on +EXPORT_SYMBOL_GPL vmlinux 0x9961c198 proc_create_net_data +EXPORT_SYMBOL_GPL vmlinux 0x996caf2b debugfs_create_symlink +EXPORT_SYMBOL_GPL vmlinux 0x997e5c91 l3mdev_fib_table_by_index +EXPORT_SYMBOL_GPL vmlinux 0x998819f5 bus_remove_file +EXPORT_SYMBOL_GPL vmlinux 0x99a15319 scsi_host_unblock +EXPORT_SYMBOL_GPL vmlinux 0x99e203df bus_unregister_notifier +EXPORT_SYMBOL_GPL vmlinux 0x99e8566c transport_add_device +EXPORT_SYMBOL_GPL vmlinux 0x99f2d00a sysfs_emit_at +EXPORT_SYMBOL_GPL vmlinux 0x9a11a0fc crypto_attr_alg_name +EXPORT_SYMBOL_GPL vmlinux 0x9a17504e kvm_vcpu_read_guest +EXPORT_SYMBOL_GPL vmlinux 0x9a1f7f01 uprobe_unregister +EXPORT_SYMBOL_GPL vmlinux 0x9a38a899 crypto_skcipher_decrypt +EXPORT_SYMBOL_GPL vmlinux 0x9a430d63 security_kernel_read_file +EXPORT_SYMBOL_GPL vmlinux 0x9a791dd3 gpiochip_irqchip_add_domain +EXPORT_SYMBOL_GPL vmlinux 0x9a8373f6 crypto_stats_skcipher_decrypt +EXPORT_SYMBOL_GPL vmlinux 0x9aa65ccc pid_nr_ns +EXPORT_SYMBOL_GPL vmlinux 0x9aaab45a ping_hash +EXPORT_SYMBOL_GPL vmlinux 0x9ab5774a crypto_stats_kpp_generate_public_key +EXPORT_SYMBOL_GPL vmlinux 0x9ac79f24 ncsi_register_dev +EXPORT_SYMBOL_GPL vmlinux 0x9ae2da16 sbitmap_add_wait_queue +EXPORT_SYMBOL_GPL vmlinux 0x9aeacb87 ring_buffer_iter_empty +EXPORT_SYMBOL_GPL vmlinux 0x9af8cbd8 ftrace_set_filter_ip +EXPORT_SYMBOL_GPL vmlinux 0x9afb253b crypto_shash_update +EXPORT_SYMBOL_GPL vmlinux 0x9b0d3882 kvm_release_page_clean +EXPORT_SYMBOL_GPL vmlinux 0x9b59be91 __udp4_lib_lookup +EXPORT_SYMBOL_GPL vmlinux 0x9b6ac7cf encrypt_blob +EXPORT_SYMBOL_GPL vmlinux 0x9b6ec967 ring_buffer_size +EXPORT_SYMBOL_GPL vmlinux 0x9b718868 pci_remove_root_bus +EXPORT_SYMBOL_GPL vmlinux 0x9b896724 devlink_param_value_str_fill +EXPORT_SYMBOL_GPL vmlinux 0x9b9071cb get_old_itimerspec32 +EXPORT_SYMBOL_GPL vmlinux 0x9bc77923 __tracepoint_neigh_update +EXPORT_SYMBOL_GPL vmlinux 0x9bece81b mpi_cmp_ui +EXPORT_SYMBOL_GPL vmlinux 0x9bf7e791 debugfs_write_file_bool +EXPORT_SYMBOL_GPL vmlinux 0x9c2063c6 devm_gpio_request +EXPORT_SYMBOL_GPL vmlinux 0x9c292f4c dax_driver_unregister +EXPORT_SYMBOL_GPL vmlinux 0x9c4fafc6 mddev_resume +EXPORT_SYMBOL_GPL vmlinux 0x9c50b8a9 debugfs_create_u8 +EXPORT_SYMBOL_GPL vmlinux 0x9c555839 crypto_register_template +EXPORT_SYMBOL_GPL vmlinux 0x9c60b14a kvm_map_gfn +EXPORT_SYMBOL_GPL vmlinux 0x9c6febfc add_uevent_var +EXPORT_SYMBOL_GPL vmlinux 0x9c86e62c s390_pci_dma_ops +EXPORT_SYMBOL_GPL vmlinux 0x9cb60538 devlink_dpipe_entry_ctx_prepare +EXPORT_SYMBOL_GPL vmlinux 0x9cb98b69 crypto_register_instance +EXPORT_SYMBOL_GPL vmlinux 0x9cc790a7 aead_exit_geniv +EXPORT_SYMBOL_GPL vmlinux 0x9cd75dba watchdog_init_timeout +EXPORT_SYMBOL_GPL vmlinux 0x9cfb6f57 aead_geniv_alloc +EXPORT_SYMBOL_GPL vmlinux 0x9cfe841c fat_remove_entries +EXPORT_SYMBOL_GPL vmlinux 0x9d06e990 blocking_notifier_call_chain +EXPORT_SYMBOL_GPL vmlinux 0x9d09e8ae ring_buffer_event_data +EXPORT_SYMBOL_GPL vmlinux 0x9d0ee937 devlink_region_create +EXPORT_SYMBOL_GPL vmlinux 0x9d3fa8f9 dw_pcie_link_set_max_speed +EXPORT_SYMBOL_GPL vmlinux 0x9d5da2df proc_create_net_single +EXPORT_SYMBOL_GPL vmlinux 0x9d6f732d relay_close +EXPORT_SYMBOL_GPL vmlinux 0x9d7a4a7b pci_reset_bus +EXPORT_SYMBOL_GPL vmlinux 0x9d8e5821 __fscrypt_encrypt_symlink +EXPORT_SYMBOL_GPL vmlinux 0x9d976aa0 fat_time_unix2fat +EXPORT_SYMBOL_GPL vmlinux 0x9da17926 scsi_schedule_eh +EXPORT_SYMBOL_GPL vmlinux 0x9dbe7c6d preempt_notifier_register +EXPORT_SYMBOL_GPL vmlinux 0x9de43cb2 pci_stop_and_remove_bus_device_locked +EXPORT_SYMBOL_GPL vmlinux 0x9de81a5d alloc_empty_file +EXPORT_SYMBOL_GPL vmlinux 0x9ded285d tty_port_register_device +EXPORT_SYMBOL_GPL vmlinux 0x9e08d700 __tracepoint_xdp_bulk_tx +EXPORT_SYMBOL_GPL vmlinux 0x9e123d7b devlink_dpipe_table_counter_enabled +EXPORT_SYMBOL_GPL vmlinux 0x9e426bac devlink_region_snapshot_id_get +EXPORT_SYMBOL_GPL vmlinux 0x9e442674 mmu_notifier_range_update_to_read_only +EXPORT_SYMBOL_GPL vmlinux 0x9e472f5f snmp_fold_field +EXPORT_SYMBOL_GPL vmlinux 0x9e650260 ftrace_set_filter +EXPORT_SYMBOL_GPL vmlinux 0x9e691c7e platform_get_resource_byname +EXPORT_SYMBOL_GPL vmlinux 0x9e7825cb ip6_datagram_send_ctl +EXPORT_SYMBOL_GPL vmlinux 0x9e8ded7a path_noexec +EXPORT_SYMBOL_GPL vmlinux 0x9e91beb2 find_vpid +EXPORT_SYMBOL_GPL vmlinux 0x9e93052b pskb_put +EXPORT_SYMBOL_GPL vmlinux 0x9ec054d5 trace_seq_putc +EXPORT_SYMBOL_GPL vmlinux 0x9ecc05f2 fsverity_ioctl_enable +EXPORT_SYMBOL_GPL vmlinux 0x9ed554b3 unregister_keyboard_notifier +EXPORT_SYMBOL_GPL vmlinux 0x9ee14bb8 zpci_disable_device +EXPORT_SYMBOL_GPL vmlinux 0x9f1ccdb9 dev_queue_xmit_nit +EXPORT_SYMBOL_GPL vmlinux 0x9f24be87 srcutorture_get_gp_data +EXPORT_SYMBOL_GPL vmlinux 0x9f36457e __tracepoint_fdb_delete +EXPORT_SYMBOL_GPL vmlinux 0x9f6d78fc kvm_get_pfn +EXPORT_SYMBOL_GPL vmlinux 0x9fc2b65c md_rdev_init +EXPORT_SYMBOL_GPL vmlinux 0x9fce80db fb_notifier_call_chain +EXPORT_SYMBOL_GPL vmlinux 0x9fe939e1 mpi_powm +EXPORT_SYMBOL_GPL vmlinux 0xa011dbf7 inet6_csk_update_pmtu +EXPORT_SYMBOL_GPL vmlinux 0xa0397277 cio_enable_subchannel +EXPORT_SYMBOL_GPL vmlinux 0xa04f945a cpus_read_lock +EXPORT_SYMBOL_GPL vmlinux 0xa05e7fea get_ccwdev_by_dev_id +EXPORT_SYMBOL_GPL vmlinux 0xa05f3b7a blkcg_policy_register +EXPORT_SYMBOL_GPL vmlinux 0xa08e3b90 page_endio +EXPORT_SYMBOL_GPL vmlinux 0xa0b9f791 gpiod_get +EXPORT_SYMBOL_GPL vmlinux 0xa0c98dde pci_msi_unmask_irq +EXPORT_SYMBOL_GPL vmlinux 0xa0d3456d nr_swap_pages +EXPORT_SYMBOL_GPL vmlinux 0xa0e46f67 metadata_dst_alloc +EXPORT_SYMBOL_GPL vmlinux 0xa0e74f9b blk_trace_setup +EXPORT_SYMBOL_GPL vmlinux 0xa0eff6af bsg_setup_queue +EXPORT_SYMBOL_GPL vmlinux 0xa0f0f394 blkg_prfill_rwstat +EXPORT_SYMBOL_GPL vmlinux 0xa0f1f3da transport_remove_device +EXPORT_SYMBOL_GPL vmlinux 0xa0fda0ce nd_tbl +EXPORT_SYMBOL_GPL vmlinux 0xa10afe0d platform_irq_count +EXPORT_SYMBOL_GPL vmlinux 0xa1651e93 rhashtable_insert_slow +EXPORT_SYMBOL_GPL vmlinux 0xa16a441e unregister_trace_event +EXPORT_SYMBOL_GPL vmlinux 0xa16dc0d1 synth_event_add_next_val +EXPORT_SYMBOL_GPL vmlinux 0xa171caa0 pci_hp_del +EXPORT_SYMBOL_GPL vmlinux 0xa1c3cfd7 __fscrypt_prepare_rename +EXPORT_SYMBOL_GPL vmlinux 0xa1c4231f kvm_set_pfn_dirty +EXPORT_SYMBOL_GPL vmlinux 0xa1cd4d9e vfs_truncate +EXPORT_SYMBOL_GPL vmlinux 0xa1dd7a34 crypto_register_alg +EXPORT_SYMBOL_GPL vmlinux 0xa20d01ba __trace_bprintk +EXPORT_SYMBOL_GPL vmlinux 0xa2187263 cgroup_get_from_path +EXPORT_SYMBOL_GPL vmlinux 0xa219da51 loop_backing_file +EXPORT_SYMBOL_GPL vmlinux 0xa26bed8e bstr_printf +EXPORT_SYMBOL_GPL vmlinux 0xa26d9b4f workqueue_congested +EXPORT_SYMBOL_GPL vmlinux 0xa272204f xdp_rxq_info_is_reg +EXPORT_SYMBOL_GPL vmlinux 0xa2ab46e4 debugfs_real_fops +EXPORT_SYMBOL_GPL vmlinux 0xa2b0377d relay_switch_subbuf +EXPORT_SYMBOL_GPL vmlinux 0xa2b57a72 dm_send_uevents +EXPORT_SYMBOL_GPL vmlinux 0xa2c3364e fat_update_time +EXPORT_SYMBOL_GPL vmlinux 0xa2d39a5e tpm_is_tpm2 +EXPORT_SYMBOL_GPL vmlinux 0xa2e1b3ef trace_printk_init_buffers +EXPORT_SYMBOL_GPL vmlinux 0xa3138213 dummy_con +EXPORT_SYMBOL_GPL vmlinux 0xa324aa4f sk_attach_filter +EXPORT_SYMBOL_GPL vmlinux 0xa326b8d8 device_create_file +EXPORT_SYMBOL_GPL vmlinux 0xa3270c0c bus_rescan_devices +EXPORT_SYMBOL_GPL vmlinux 0xa3334847 evm_inode_init_security +EXPORT_SYMBOL_GPL vmlinux 0xa339c677 balloon_page_enqueue +EXPORT_SYMBOL_GPL vmlinux 0xa33bab01 crypto_remove_spawns +EXPORT_SYMBOL_GPL vmlinux 0xa3568b2b acomp_request_alloc +EXPORT_SYMBOL_GPL vmlinux 0xa35b6265 kvm_write_guest_page +EXPORT_SYMBOL_GPL vmlinux 0xa35c7ed1 iomap_finish_ioends +EXPORT_SYMBOL_GPL vmlinux 0xa3659b5f __tracepoint_devlink_hwerr +EXPORT_SYMBOL_GPL vmlinux 0xa368a50c sysfs_create_file_ns +EXPORT_SYMBOL_GPL vmlinux 0xa38602cd drain_workqueue +EXPORT_SYMBOL_GPL vmlinux 0xa389a49a profile_event_register +EXPORT_SYMBOL_GPL vmlinux 0xa38a9f71 get_itimerspec64 +EXPORT_SYMBOL_GPL vmlinux 0xa3916a2a inet_twsk_purge +EXPORT_SYMBOL_GPL vmlinux 0xa3b8cce2 __pci_hp_initialize +EXPORT_SYMBOL_GPL vmlinux 0xa3b958ce reset_hung_task_detector +EXPORT_SYMBOL_GPL vmlinux 0xa3e424dc irq_set_chip_and_handler_name +EXPORT_SYMBOL_GPL vmlinux 0xa3ece414 freezer_cgrp_subsys_enabled_key +EXPORT_SYMBOL_GPL vmlinux 0xa3f12f69 __crypto_xor +EXPORT_SYMBOL_GPL vmlinux 0xa400e6ce driver_unregister +EXPORT_SYMBOL_GPL vmlinux 0xa410a295 devlink_region_destroy +EXPORT_SYMBOL_GPL vmlinux 0xa411bfac percpu_up_write +EXPORT_SYMBOL_GPL vmlinux 0xa42392aa crypto_stats_compress +EXPORT_SYMBOL_GPL vmlinux 0xa42a9fbb s390_reset_acc +EXPORT_SYMBOL_GPL vmlinux 0xa42dcd8f sysfs_file_change_owner +EXPORT_SYMBOL_GPL vmlinux 0xa44a1307 interval_tree_iter_first +EXPORT_SYMBOL_GPL vmlinux 0xa450cc7b pktgen_xfrm_outer_mode_output +EXPORT_SYMBOL_GPL vmlinux 0xa45c7b90 stack_trace_print +EXPORT_SYMBOL_GPL vmlinux 0xa471982d dm_table_set_type +EXPORT_SYMBOL_GPL vmlinux 0xa4ab7c1c ring_buffer_overruns +EXPORT_SYMBOL_GPL vmlinux 0xa4b07fe7 ring_buffer_change_overwrite +EXPORT_SYMBOL_GPL vmlinux 0xa4cb44de net_dm_hw_report +EXPORT_SYMBOL_GPL vmlinux 0xa4d6a41e pci_ioremap_bar +EXPORT_SYMBOL_GPL vmlinux 0xa4e50315 devres_alloc_node +EXPORT_SYMBOL_GPL vmlinux 0xa4f25856 scsi_target_unblock +EXPORT_SYMBOL_GPL vmlinux 0xa5126531 tpm_chip_stop +EXPORT_SYMBOL_GPL vmlinux 0xa515a739 irq_domain_translate_onecell +EXPORT_SYMBOL_GPL vmlinux 0xa521ff6e fsverity_verify_bio +EXPORT_SYMBOL_GPL vmlinux 0xa53b36e2 fat_add_entries +EXPORT_SYMBOL_GPL vmlinux 0xa54d7d9f security_path_chown +EXPORT_SYMBOL_GPL vmlinux 0xa5745f0c gmap_mark_unmergeable +EXPORT_SYMBOL_GPL vmlinux 0xa57d3420 unix_table_lock +EXPORT_SYMBOL_GPL vmlinux 0xa5a3f706 raw_unhash_sk +EXPORT_SYMBOL_GPL vmlinux 0xa5a7649f pci_find_ht_capability +EXPORT_SYMBOL_GPL vmlinux 0xa5bba174 net_ns_get_ownership +EXPORT_SYMBOL_GPL vmlinux 0xa5c8645b css_general_characteristics +EXPORT_SYMBOL_GPL vmlinux 0xa5c95e90 crypto_alloc_akcipher +EXPORT_SYMBOL_GPL vmlinux 0xa5ed32e0 alloc_dax +EXPORT_SYMBOL_GPL vmlinux 0xa5eee841 dma_resv_test_signaled_rcu +EXPORT_SYMBOL_GPL vmlinux 0xa5efbf4c async_synchronize_full +EXPORT_SYMBOL_GPL vmlinux 0xa5f37bce fwnode_handle_put +EXPORT_SYMBOL_GPL vmlinux 0xa61068c8 fscrypt_show_test_dummy_encryption +EXPORT_SYMBOL_GPL vmlinux 0xa62fd1ee fwnode_get_named_gpiod +EXPORT_SYMBOL_GPL vmlinux 0xa65fac73 vfs_cancel_lock +EXPORT_SYMBOL_GPL vmlinux 0xa6750e79 devlink_health_reporter_create +EXPORT_SYMBOL_GPL vmlinux 0xa6824f3f __tracepoint_br_fdb_external_learn_add +EXPORT_SYMBOL_GPL vmlinux 0xa6bdb43f iomap_migrate_page +EXPORT_SYMBOL_GPL vmlinux 0xa6d09bfc kill_pid_usb_asyncio +EXPORT_SYMBOL_GPL vmlinux 0xa6e1a69d kick_all_cpus_sync +EXPORT_SYMBOL_GPL vmlinux 0xa709c835 fib6_info_destroy_rcu +EXPORT_SYMBOL_GPL vmlinux 0xa71af192 driver_attach +EXPORT_SYMBOL_GPL vmlinux 0xa71e6088 gpiod_set_raw_array_value_cansleep +EXPORT_SYMBOL_GPL vmlinux 0xa75ee377 device_add_properties +EXPORT_SYMBOL_GPL vmlinux 0xa7e4b534 sbitmap_queue_show +EXPORT_SYMBOL_GPL vmlinux 0xa7ee8203 iommu_aux_get_pasid +EXPORT_SYMBOL_GPL vmlinux 0xa7fe2927 fscrypt_ioctl_remove_key +EXPORT_SYMBOL_GPL vmlinux 0xa800cabd skb_zerocopy_iter_dgram +EXPORT_SYMBOL_GPL vmlinux 0xa838f869 crypto_register_skcipher +EXPORT_SYMBOL_GPL vmlinux 0xa83eb0f0 rhltable_init +EXPORT_SYMBOL_GPL vmlinux 0xa84c0411 crypto_skcipher_encrypt +EXPORT_SYMBOL_GPL vmlinux 0xa851973a raw_notifier_call_chain +EXPORT_SYMBOL_GPL vmlinux 0xa85656fe debugfs_create_size_t +EXPORT_SYMBOL_GPL vmlinux 0xa858d22c ip6_dst_lookup_tunnel +EXPORT_SYMBOL_GPL vmlinux 0xa868d9da mddev_init_writes_pending +EXPORT_SYMBOL_GPL vmlinux 0xa8911559 bpf_redirect_info +EXPORT_SYMBOL_GPL vmlinux 0xa8b1d8cf platform_device_unregister +EXPORT_SYMBOL_GPL vmlinux 0xa8bd0cef module_mutex +EXPORT_SYMBOL_GPL vmlinux 0xa8d29927 rt_mutex_lock +EXPORT_SYMBOL_GPL vmlinux 0xa908382c rtnl_link_register +EXPORT_SYMBOL_GPL vmlinux 0xa91a6984 relay_reset +EXPORT_SYMBOL_GPL vmlinux 0xa9220d2c sysfs_unbreak_active_protection +EXPORT_SYMBOL_GPL vmlinux 0xa9320d27 ktime_get_seconds +EXPORT_SYMBOL_GPL vmlinux 0xa95ca257 alarm_start +EXPORT_SYMBOL_GPL vmlinux 0xa97c422e __clocksource_register_scale +EXPORT_SYMBOL_GPL vmlinux 0xa98ec453 gpiod_get_raw_value_cansleep +EXPORT_SYMBOL_GPL vmlinux 0xa9966e28 peernet2id_alloc +EXPORT_SYMBOL_GPL vmlinux 0xa99ef899 devlink_fmsg_bool_pair_put +EXPORT_SYMBOL_GPL vmlinux 0xa9b6b1d5 irq_domain_associate_many +EXPORT_SYMBOL_GPL vmlinux 0xa9c435b5 fuse_fill_super_common +EXPORT_SYMBOL_GPL vmlinux 0xa9d0ab1f trace_seq_putmem_hex +EXPORT_SYMBOL_GPL vmlinux 0xa9d3aee0 iommu_attach_device +EXPORT_SYMBOL_GPL vmlinux 0xa9e18049 task_handoff_unregister +EXPORT_SYMBOL_GPL vmlinux 0xa9ff15b9 s390_enable_sie +EXPORT_SYMBOL_GPL vmlinux 0xaa230f88 perf_unregister_guest_info_callbacks +EXPORT_SYMBOL_GPL vmlinux 0xaa25eb48 fork_usermode_blob +EXPORT_SYMBOL_GPL vmlinux 0xaa326c62 mmu_notifier_register +EXPORT_SYMBOL_GPL vmlinux 0xaa61de11 irq_stat +EXPORT_SYMBOL_GPL vmlinux 0xaa6a50f9 __static_key_deferred_flush +EXPORT_SYMBOL_GPL vmlinux 0xaa78cbcd device_set_of_node_from_dev +EXPORT_SYMBOL_GPL vmlinux 0xaa858a5c generic_file_buffered_read +EXPORT_SYMBOL_GPL vmlinux 0xaa97a81b crypto_alloc_tfm +EXPORT_SYMBOL_GPL vmlinux 0xaa9c21a5 iommu_page_response +EXPORT_SYMBOL_GPL vmlinux 0xaaa918c9 ftrace_dump +EXPORT_SYMBOL_GPL vmlinux 0xaae57c8b get_pid_task +EXPORT_SYMBOL_GPL vmlinux 0xaaea2e53 hvc_poll +EXPORT_SYMBOL_GPL vmlinux 0xaaf6d6a6 tcp_register_congestion_control +EXPORT_SYMBOL_GPL vmlinux 0xab2b6fee kvm_clear_guest +EXPORT_SYMBOL_GPL vmlinux 0xab2eba3a task_cputime_adjusted +EXPORT_SYMBOL_GPL vmlinux 0xab4c7f0d irq_domain_alloc_irqs_parent +EXPORT_SYMBOL_GPL vmlinux 0xab61c833 lwtunnel_build_state +EXPORT_SYMBOL_GPL vmlinux 0xab6b76a5 disk_part_iter_exit +EXPORT_SYMBOL_GPL vmlinux 0xab6e4bd4 get_task_pid +EXPORT_SYMBOL_GPL vmlinux 0xab6e99f2 thp_get_unmapped_area +EXPORT_SYMBOL_GPL vmlinux 0xab815c97 pci_domain_nr +EXPORT_SYMBOL_GPL vmlinux 0xab97a97d s390_handle_mcck +EXPORT_SYMBOL_GPL vmlinux 0xab992d18 query_asymmetric_key +EXPORT_SYMBOL_GPL vmlinux 0xab9bd884 perf_register_guest_info_callbacks +EXPORT_SYMBOL_GPL vmlinux 0xabac10b7 inet_getpeer +EXPORT_SYMBOL_GPL vmlinux 0xabc640f3 list_lru_isolate +EXPORT_SYMBOL_GPL vmlinux 0xabd2207f blk_mq_sched_try_insert_merge +EXPORT_SYMBOL_GPL vmlinux 0xabeed895 skb_zerocopy +EXPORT_SYMBOL_GPL vmlinux 0xabfa9c6b __rtnl_link_register +EXPORT_SYMBOL_GPL vmlinux 0xac20bf35 sock_prot_inuse_add +EXPORT_SYMBOL_GPL vmlinux 0xac2640d5 bio_release_pages +EXPORT_SYMBOL_GPL vmlinux 0xac280b77 synth_event_trace_array +EXPORT_SYMBOL_GPL vmlinux 0xac426d1d __inet_lookup_listener +EXPORT_SYMBOL_GPL vmlinux 0xac457dc3 blkg_conf_finish +EXPORT_SYMBOL_GPL vmlinux 0xac545d91 devm_gpiod_put +EXPORT_SYMBOL_GPL vmlinux 0xac5a789c trace_seq_printf +EXPORT_SYMBOL_GPL vmlinux 0xac80f69b bpf_map_inc_not_zero +EXPORT_SYMBOL_GPL vmlinux 0xacc9e72d dax_iomap_fault +EXPORT_SYMBOL_GPL vmlinux 0xacd23e6f zap_vma_ptes +EXPORT_SYMBOL_GPL vmlinux 0xace4af27 fsverity_cleanup_inode +EXPORT_SYMBOL_GPL vmlinux 0xacf01919 perf_event_disable +EXPORT_SYMBOL_GPL vmlinux 0xad1bb874 kvm_vcpu_gfn_to_page +EXPORT_SYMBOL_GPL vmlinux 0xad3b1547 gpiochip_free_own_desc +EXPORT_SYMBOL_GPL vmlinux 0xad3dfa13 lgr_info_log +EXPORT_SYMBOL_GPL vmlinux 0xad43b77e devlink_params_unregister +EXPORT_SYMBOL_GPL vmlinux 0xad4e6259 remove_cpu +EXPORT_SYMBOL_GPL vmlinux 0xad645234 register_switchdev_notifier +EXPORT_SYMBOL_GPL vmlinux 0xad9943e0 alloc_page_buffers +EXPORT_SYMBOL_GPL vmlinux 0xada38766 dst_cache_destroy +EXPORT_SYMBOL_GPL vmlinux 0xadaaa3ae diag308 +EXPORT_SYMBOL_GPL vmlinux 0xaddca446 blk_queue_flag_test_and_set +EXPORT_SYMBOL_GPL vmlinux 0xadf9699b pci_write_msi_msg +EXPORT_SYMBOL_GPL vmlinux 0xae1051b0 net_cls_cgrp_subsys_enabled_key +EXPORT_SYMBOL_GPL vmlinux 0xae17db4b irq_get_irq_data +EXPORT_SYMBOL_GPL vmlinux 0xae2d4d20 __ftrace_vprintk +EXPORT_SYMBOL_GPL vmlinux 0xae39f80e dst_cache_init +EXPORT_SYMBOL_GPL vmlinux 0xae3b3418 crypto_ahash_setkey +EXPORT_SYMBOL_GPL vmlinux 0xae3bc58b device_move +EXPORT_SYMBOL_GPL vmlinux 0xae69b1c1 usermodehelper_read_unlock +EXPORT_SYMBOL_GPL vmlinux 0xae772d50 scsi_target_block +EXPORT_SYMBOL_GPL vmlinux 0xae7c231d mpi_cmp +EXPORT_SYMBOL_GPL vmlinux 0xae85ff64 ping_queue_rcv_skb +EXPORT_SYMBOL_GPL vmlinux 0xae8d13d6 pci_store_saved_state +EXPORT_SYMBOL_GPL vmlinux 0xae9b5817 css_driver_unregister +EXPORT_SYMBOL_GPL vmlinux 0xaea1d7f2 pci_epc_get_features +EXPORT_SYMBOL_GPL vmlinux 0xaea44b66 strp_unpause +EXPORT_SYMBOL_GPL vmlinux 0xaeb6f0be __cpuhp_state_add_instance +EXPORT_SYMBOL_GPL vmlinux 0xaebc534f trace_seq_vprintf +EXPORT_SYMBOL_GPL vmlinux 0xaee0da62 fuse_abort_conn +EXPORT_SYMBOL_GPL vmlinux 0xaee7ea73 __serdev_device_driver_register +EXPORT_SYMBOL_GPL vmlinux 0xaf1156c5 inet_ehash_nolisten +EXPORT_SYMBOL_GPL vmlinux 0xaf22dcfb crypto_destroy_tfm +EXPORT_SYMBOL_GPL vmlinux 0xaf55b778 bio_disassociate_blkg +EXPORT_SYMBOL_GPL vmlinux 0xaf69b6d5 class_find_device +EXPORT_SYMBOL_GPL vmlinux 0xaf7e2381 nf_ipv6_ops +EXPORT_SYMBOL_GPL vmlinux 0xaf905c8c rhashtable_walk_next +EXPORT_SYMBOL_GPL vmlinux 0xafc8f6ec blkdev_zone_mgmt +EXPORT_SYMBOL_GPL vmlinux 0xafd48691 sbitmap_bitmap_show +EXPORT_SYMBOL_GPL vmlinux 0xafe7d7e8 crypto_ahash_digest +EXPORT_SYMBOL_GPL vmlinux 0xb010689a gpiochip_lock_as_irq +EXPORT_SYMBOL_GPL vmlinux 0xb0329f89 ip6_flush_pending_frames +EXPORT_SYMBOL_GPL vmlinux 0xb039fa46 crypto_unregister_algs +EXPORT_SYMBOL_GPL vmlinux 0xb046ff5c gpiochip_irqchip_irq_valid +EXPORT_SYMBOL_GPL vmlinux 0xb0747ed2 rcu_cpu_stall_suppress +EXPORT_SYMBOL_GPL vmlinux 0xb08a1f52 sched_trace_rq_avg_dl +EXPORT_SYMBOL_GPL vmlinux 0xb08ac84a gpiod_get_index +EXPORT_SYMBOL_GPL vmlinux 0xb08cf222 device_store_ulong +EXPORT_SYMBOL_GPL vmlinux 0xb094b70c vfs_setxattr +EXPORT_SYMBOL_GPL vmlinux 0xb0952ca0 serdev_device_remove +EXPORT_SYMBOL_GPL vmlinux 0xb0b85f47 ring_buffer_iter_reset +EXPORT_SYMBOL_GPL vmlinux 0xb0b87443 serdev_device_close +EXPORT_SYMBOL_GPL vmlinux 0xb0bea8b6 ncsi_unregister_dev +EXPORT_SYMBOL_GPL vmlinux 0xb0c77635 crypto_alg_mod_lookup +EXPORT_SYMBOL_GPL vmlinux 0xb0e8307e gpiochip_unlock_as_irq +EXPORT_SYMBOL_GPL vmlinux 0xb0eb40a0 smpboot_register_percpu_thread +EXPORT_SYMBOL_GPL vmlinux 0xb0eb923f tpm_pm_suspend +EXPORT_SYMBOL_GPL vmlinux 0xb10d964d devlink_fmsg_pair_nest_end +EXPORT_SYMBOL_GPL vmlinux 0xb115deaa iomap_file_buffered_write +EXPORT_SYMBOL_GPL vmlinux 0xb11d9000 tty_dev_name_to_number +EXPORT_SYMBOL_GPL vmlinux 0xb13dd716 pci_dev_run_wake +EXPORT_SYMBOL_GPL vmlinux 0xb1425b32 dm_table_add_target_callbacks +EXPORT_SYMBOL_GPL vmlinux 0xb14ebdd3 xas_set_mark +EXPORT_SYMBOL_GPL vmlinux 0xb15b552a sfp_parse_support +EXPORT_SYMBOL_GPL vmlinux 0xb15c2557 pci_device_group +EXPORT_SYMBOL_GPL vmlinux 0xb1647fc2 devlink_info_version_running_put +EXPORT_SYMBOL_GPL vmlinux 0xb16c4d0c set_online_page_callback +EXPORT_SYMBOL_GPL vmlinux 0xb171614e xdp_rxq_info_unreg_mem_model +EXPORT_SYMBOL_GPL vmlinux 0xb182db8a pci_check_and_mask_intx +EXPORT_SYMBOL_GPL vmlinux 0xb1981b23 ipv6_stub +EXPORT_SYMBOL_GPL vmlinux 0xb19af047 bpf_trace_run11 +EXPORT_SYMBOL_GPL vmlinux 0xb19f152e klist_iter_exit +EXPORT_SYMBOL_GPL vmlinux 0xb1c5ca42 find_symbol +EXPORT_SYMBOL_GPL vmlinux 0xb1c90e9e ptep_test_and_clear_uc +EXPORT_SYMBOL_GPL vmlinux 0xb1d0a8fc __platform_driver_register +EXPORT_SYMBOL_GPL vmlinux 0xb1dabc1e unregister_ftrace_export +EXPORT_SYMBOL_GPL vmlinux 0xb1e25684 __trace_bputs +EXPORT_SYMBOL_GPL vmlinux 0xb1e34a5e devlink_sb_register +EXPORT_SYMBOL_GPL vmlinux 0xb1ef6733 shmem_read_mapping_page_gfp +EXPORT_SYMBOL_GPL vmlinux 0xb205ed37 virtqueue_disable_cb +EXPORT_SYMBOL_GPL vmlinux 0xb21e67bd pci_epf_free_space +EXPORT_SYMBOL_GPL vmlinux 0xb22d0c57 crypto_unregister_skciphers +EXPORT_SYMBOL_GPL vmlinux 0xb2405efc secure_tcp_seq +EXPORT_SYMBOL_GPL vmlinux 0xb25b369c fuse_simple_background +EXPORT_SYMBOL_GPL vmlinux 0xb26a1add elfcorehdr_addr +EXPORT_SYMBOL_GPL vmlinux 0xb28bb602 do_unbind_con_driver +EXPORT_SYMBOL_GPL vmlinux 0xb2a0ee0a __sock_recv_timestamp +EXPORT_SYMBOL_GPL vmlinux 0xb2b324c9 fib_nl_delrule +EXPORT_SYMBOL_GPL vmlinux 0xb2c1732e rcu_gp_set_torture_wait +EXPORT_SYMBOL_GPL vmlinux 0xb2c7b818 kthread_queue_delayed_work +EXPORT_SYMBOL_GPL vmlinux 0xb307c909 devlink_fmsg_u64_pair_put +EXPORT_SYMBOL_GPL vmlinux 0xb322da17 crypto_find_alg +EXPORT_SYMBOL_GPL vmlinux 0xb38b612b crypto_shash_tfm_digest +EXPORT_SYMBOL_GPL vmlinux 0xb3b48d4d md_kick_rdev_from_array +EXPORT_SYMBOL_GPL vmlinux 0xb3b5bd0c dax_inode +EXPORT_SYMBOL_GPL vmlinux 0xb3b87020 debugfs_read_file_bool +EXPORT_SYMBOL_GPL vmlinux 0xb3c226ed tpm_chip_register +EXPORT_SYMBOL_GPL vmlinux 0xb3fa7720 apply_to_page_range +EXPORT_SYMBOL_GPL vmlinux 0xb401ba6f sysfs_create_mount_point +EXPORT_SYMBOL_GPL vmlinux 0xb407c1df percpu_ref_switch_to_atomic +EXPORT_SYMBOL_GPL vmlinux 0xb40f2227 blk_mq_sched_free_hctx_data +EXPORT_SYMBOL_GPL vmlinux 0xb42476a2 disk_map_sector_rcu +EXPORT_SYMBOL_GPL vmlinux 0xb428ee51 crypto_dequeue_request +EXPORT_SYMBOL_GPL vmlinux 0xb4293d26 pci_check_and_unmask_intx +EXPORT_SYMBOL_GPL vmlinux 0xb42bab3d klp_get_state +EXPORT_SYMBOL_GPL vmlinux 0xb43c3dbd udp_cmsg_send +EXPORT_SYMBOL_GPL vmlinux 0xb43f9365 ktime_get +EXPORT_SYMBOL_GPL vmlinux 0xb44ab713 klist_prev +EXPORT_SYMBOL_GPL vmlinux 0xb44daa64 blk_mq_rdma_map_queues +EXPORT_SYMBOL_GPL vmlinux 0xb44e18ea audit_enabled +EXPORT_SYMBOL_GPL vmlinux 0xb453595f register_virtio_device +EXPORT_SYMBOL_GPL vmlinux 0xb45ff799 fib6_new_table +EXPORT_SYMBOL_GPL vmlinux 0xb4697fd8 securityfs_remove +EXPORT_SYMBOL_GPL vmlinux 0xb46fbe0b klp_shadow_get_or_alloc +EXPORT_SYMBOL_GPL vmlinux 0xb499a5cb replace_page_cache_page +EXPORT_SYMBOL_GPL vmlinux 0xb4a428cc pci_proc_domain +EXPORT_SYMBOL_GPL vmlinux 0xb4ac6d1a sched_trace_cfs_rq_cpu +EXPORT_SYMBOL_GPL vmlinux 0xb4b97c90 pvclock_gtod_register_notifier +EXPORT_SYMBOL_GPL vmlinux 0xb4c6c37d mm_unaccount_pinned_pages +EXPORT_SYMBOL_GPL vmlinux 0xb4dd7f5d fuse_sync_release +EXPORT_SYMBOL_GPL vmlinux 0xb4eda0da ring_buffer_event_length +EXPORT_SYMBOL_GPL vmlinux 0xb4fcdead gpiochip_line_is_open_source +EXPORT_SYMBOL_GPL vmlinux 0xb5317c05 pci_disable_rom +EXPORT_SYMBOL_GPL vmlinux 0xb53dc38a __netdev_watchdog_up +EXPORT_SYMBOL_GPL vmlinux 0xb5406019 bpf_verifier_log_write +EXPORT_SYMBOL_GPL vmlinux 0xb553588c device_connection_remove +EXPORT_SYMBOL_GPL vmlinux 0xb573e699 blk_trace_startstop +EXPORT_SYMBOL_GPL vmlinux 0xb5766020 device_property_read_u32_array +EXPORT_SYMBOL_GPL vmlinux 0xb5a0c5a7 component_del +EXPORT_SYMBOL_GPL vmlinux 0xb5a76e31 blk_lld_busy +EXPORT_SYMBOL_GPL vmlinux 0xb5b74cf1 gpiochip_disable_irq +EXPORT_SYMBOL_GPL vmlinux 0xb5ba9a0b device_remove_groups +EXPORT_SYMBOL_GPL vmlinux 0xb5c10b51 pci_hp_deregister +EXPORT_SYMBOL_GPL vmlinux 0xb5cfa586 wait_for_stable_page +EXPORT_SYMBOL_GPL vmlinux 0xb5f4f62a desc_to_gpio +EXPORT_SYMBOL_GPL vmlinux 0xb5fd6adf dw_pcie_ep_init_complete +EXPORT_SYMBOL_GPL vmlinux 0xb6158be9 clone_private_mount +EXPORT_SYMBOL_GPL vmlinux 0xb6166106 devlink_param_driverinit_value_set +EXPORT_SYMBOL_GPL vmlinux 0xb6261484 register_die_notifier +EXPORT_SYMBOL_GPL vmlinux 0xb6787346 sfp_unregister_socket +EXPORT_SYMBOL_GPL vmlinux 0xb67d985d smp_call_function_any +EXPORT_SYMBOL_GPL vmlinux 0xb6adb4ba perf_aux_output_end +EXPORT_SYMBOL_GPL vmlinux 0xb6c88dd9 irq_domain_get_irq_data +EXPORT_SYMBOL_GPL vmlinux 0xb7044912 kthread_mod_delayed_work +EXPORT_SYMBOL_GPL vmlinux 0xb70a29c7 irq_chip_set_parent_state +EXPORT_SYMBOL_GPL vmlinux 0xb72f8fe2 skb_clone_tx_timestamp +EXPORT_SYMBOL_GPL vmlinux 0xb733ef26 fixup_user_fault +EXPORT_SYMBOL_GPL vmlinux 0xb7459ee8 mddev_init +EXPORT_SYMBOL_GPL vmlinux 0xb775cdb0 balloon_page_list_dequeue +EXPORT_SYMBOL_GPL vmlinux 0xb78b252a vfs_getxattr_alloc +EXPORT_SYMBOL_GPL vmlinux 0xb79bd786 nl_table +EXPORT_SYMBOL_GPL vmlinux 0xb7a387fc synchronize_rcu_tasks_rude +EXPORT_SYMBOL_GPL vmlinux 0xb7a56f2f irq_chip_enable_parent +EXPORT_SYMBOL_GPL vmlinux 0xb7c69a63 unregister_vmap_purge_notifier +EXPORT_SYMBOL_GPL vmlinux 0xb7ce37ee skb_zerocopy_iter_stream +EXPORT_SYMBOL_GPL vmlinux 0xb7da3588 unix_peer_get +EXPORT_SYMBOL_GPL vmlinux 0xb7ddc8c7 sysfs_create_files +EXPORT_SYMBOL_GPL vmlinux 0xb7ea1d01 bpf_prog_inc_not_zero +EXPORT_SYMBOL_GPL vmlinux 0xb80506b4 atomic_notifier_chain_unregister +EXPORT_SYMBOL_GPL vmlinux 0xb80f9bdb tty_buffer_unlock_exclusive +EXPORT_SYMBOL_GPL vmlinux 0xb818c945 inet_hash_connect +EXPORT_SYMBOL_GPL vmlinux 0xb8212341 timecounter_cyc2time +EXPORT_SYMBOL_GPL vmlinux 0xb83827b3 device_destroy +EXPORT_SYMBOL_GPL vmlinux 0xb8512cc5 clockevent_delta2ns +EXPORT_SYMBOL_GPL vmlinux 0xb862439c devm_gpiod_get_array +EXPORT_SYMBOL_GPL vmlinux 0xb86c90b7 l3mdev_update_flow +EXPORT_SYMBOL_GPL vmlinux 0xb86e0f71 shash_ahash_finup +EXPORT_SYMBOL_GPL vmlinux 0xb88dbfce irq_set_irqchip_state +EXPORT_SYMBOL_GPL vmlinux 0xb89e69b1 jump_label_update_timeout +EXPORT_SYMBOL_GPL vmlinux 0xb8b571f4 dw_pcie_host_init +EXPORT_SYMBOL_GPL vmlinux 0xb8cd3a7f nf_logger_put +EXPORT_SYMBOL_GPL vmlinux 0xb906b678 switchdev_port_obj_add +EXPORT_SYMBOL_GPL vmlinux 0xb912560d static_key_disable +EXPORT_SYMBOL_GPL vmlinux 0xb9398972 unregister_kprobes +EXPORT_SYMBOL_GPL vmlinux 0xb93a6a2e zpci_write_block +EXPORT_SYMBOL_GPL vmlinux 0xb95559bc housekeeping_any_cpu +EXPORT_SYMBOL_GPL vmlinux 0xb9681621 xdp_do_flush +EXPORT_SYMBOL_GPL vmlinux 0xb9701bd6 udp_abort +EXPORT_SYMBOL_GPL vmlinux 0xb980c536 pcie_port_bus_type +EXPORT_SYMBOL_GPL vmlinux 0xb982f858 blocking_notifier_chain_register +EXPORT_SYMBOL_GPL vmlinux 0xb98a055f sbitmap_queue_wake_all +EXPORT_SYMBOL_GPL vmlinux 0xb9a798df tty_prepare_flip_string +EXPORT_SYMBOL_GPL vmlinux 0xb9a9dd33 kvm_read_guest +EXPORT_SYMBOL_GPL vmlinux 0xb9c425de register_syscore_ops +EXPORT_SYMBOL_GPL vmlinux 0xb9d025c9 llist_del_first +EXPORT_SYMBOL_GPL vmlinux 0xb9df0c26 cpu_subsys +EXPORT_SYMBOL_GPL vmlinux 0xb9e152b5 kvm_s390_gisc_register +EXPORT_SYMBOL_GPL vmlinux 0xb9f87915 dm_get_table_device +EXPORT_SYMBOL_GPL vmlinux 0xba60108c sysfs_break_active_protection +EXPORT_SYMBOL_GPL vmlinux 0xba659095 pci_find_next_ht_capability +EXPORT_SYMBOL_GPL vmlinux 0xba823a37 bpfilter_ops +EXPORT_SYMBOL_GPL vmlinux 0xba8332cb mnt_clone_write +EXPORT_SYMBOL_GPL vmlinux 0xbaaa8716 fat_setattr +EXPORT_SYMBOL_GPL vmlinux 0xbab6cb6b crypto_stats_akcipher_verify +EXPORT_SYMBOL_GPL vmlinux 0xbae833ab dma_buf_move_notify +EXPORT_SYMBOL_GPL vmlinux 0xbae8efd0 tty_kclose +EXPORT_SYMBOL_GPL vmlinux 0xbaf6850c fsnotify_wait_marks_destroyed +EXPORT_SYMBOL_GPL vmlinux 0xbb05e5f9 irq_domain_add_legacy +EXPORT_SYMBOL_GPL vmlinux 0xbb0ab47b debug_locks +EXPORT_SYMBOL_GPL vmlinux 0xbb1493e3 kobj_sysfs_ops +EXPORT_SYMBOL_GPL vmlinux 0xbb2ca7cb iommu_device_unregister +EXPORT_SYMBOL_GPL vmlinux 0xbb5170c5 irq_get_percpu_devid_partition +EXPORT_SYMBOL_GPL vmlinux 0xbb6a3cbd devlink_fmsg_arr_pair_nest_start +EXPORT_SYMBOL_GPL vmlinux 0xbb7195a5 xdp_warn +EXPORT_SYMBOL_GPL vmlinux 0xbb7b3f80 chp_ssd_get_mask +EXPORT_SYMBOL_GPL vmlinux 0xbb7e1544 __cookie_v4_check +EXPORT_SYMBOL_GPL vmlinux 0xbb82b09a iommu_alloc_resv_region +EXPORT_SYMBOL_GPL vmlinux 0xbb8edc48 scm_driver_unregister +EXPORT_SYMBOL_GPL vmlinux 0xbbba7151 vring_transport_features +EXPORT_SYMBOL_GPL vmlinux 0xbbc40a71 x509_decode_time +EXPORT_SYMBOL_GPL vmlinux 0xbbd105ba __mmu_notifier_register +EXPORT_SYMBOL_GPL vmlinux 0xbc19d0e0 perf_pmu_register +EXPORT_SYMBOL_GPL vmlinux 0xbc2a7d3d tty_get_pgrp +EXPORT_SYMBOL_GPL vmlinux 0xbc46b3d1 xas_clear_mark +EXPORT_SYMBOL_GPL vmlinux 0xbc4c4bcc trace_seq_to_user +EXPORT_SYMBOL_GPL vmlinux 0xbc5cf45d input_ff_upload +EXPORT_SYMBOL_GPL vmlinux 0xbc67b872 __blkg_prfill_u64 +EXPORT_SYMBOL_GPL vmlinux 0xbc6bec66 free_percpu_irq +EXPORT_SYMBOL_GPL vmlinux 0xbc6cb6b0 __wake_up_sync_key +EXPORT_SYMBOL_GPL vmlinux 0xbc75faac fwnode_get_next_available_child_node +EXPORT_SYMBOL_GPL vmlinux 0xbca529ff blkg_rwstat_exit +EXPORT_SYMBOL_GPL vmlinux 0xbcc15e75 ktime_get_coarse_with_offset +EXPORT_SYMBOL_GPL vmlinux 0xbcc9d30c blk_mq_update_nr_hw_queues +EXPORT_SYMBOL_GPL vmlinux 0xbccd35ac tpm_chip_start +EXPORT_SYMBOL_GPL vmlinux 0xbccfd4d8 register_oldmem_pfn_is_ram +EXPORT_SYMBOL_GPL vmlinux 0xbcdd5b99 iommu_group_set_name +EXPORT_SYMBOL_GPL vmlinux 0xbce5647f sk_msg_memcopy_from_iter +EXPORT_SYMBOL_GPL vmlinux 0xbcf1f0e6 zs_create_pool +EXPORT_SYMBOL_GPL vmlinux 0xbd14362b alloc_dax_region +EXPORT_SYMBOL_GPL vmlinux 0xbd3fe1e3 disable_hardirq +EXPORT_SYMBOL_GPL vmlinux 0xbd40fb3d acomp_request_free +EXPORT_SYMBOL_GPL vmlinux 0xbd45e0b7 iomap_releasepage +EXPORT_SYMBOL_GPL vmlinux 0xbd67ba7a badblocks_store +EXPORT_SYMBOL_GPL vmlinux 0xbda21bc7 fib_rules_register +EXPORT_SYMBOL_GPL vmlinux 0xbdcc5f8f crypto_stats_rng_seed +EXPORT_SYMBOL_GPL vmlinux 0xbdf25e2b iommu_fwspec_add_ids +EXPORT_SYMBOL_GPL vmlinux 0xbe067ea7 kvm_debugfs_dir +EXPORT_SYMBOL_GPL vmlinux 0xbe4bc009 irq_create_mapping_affinity +EXPORT_SYMBOL_GPL vmlinux 0xbe687e88 wake_up_all_idle_cpus +EXPORT_SYMBOL_GPL vmlinux 0xbe9a83d5 dw_pcie_write +EXPORT_SYMBOL_GPL vmlinux 0xbea5ff1e static_key_initialized +EXPORT_SYMBOL_GPL vmlinux 0xbee01542 kstrdup_quotable_cmdline +EXPORT_SYMBOL_GPL vmlinux 0xbeec10e8 gpiod_set_raw_array_value +EXPORT_SYMBOL_GPL vmlinux 0xbef0324a blk_drop_partitions +EXPORT_SYMBOL_GPL vmlinux 0xbf041102 register_vt_notifier +EXPORT_SYMBOL_GPL vmlinux 0xbf0784ed devlink_reload_enable +EXPORT_SYMBOL_GPL vmlinux 0xbf19fb1a fl6_merge_options +EXPORT_SYMBOL_GPL vmlinux 0xbf4e88f4 __cookie_v4_init_sequence +EXPORT_SYMBOL_GPL vmlinux 0xbf6abbe7 housekeeping_enabled +EXPORT_SYMBOL_GPL vmlinux 0xbf7e1bfe platform_msi_domain_free_irqs +EXPORT_SYMBOL_GPL vmlinux 0xbf89050a srcu_notifier_chain_register +EXPORT_SYMBOL_GPL vmlinux 0xbfc0bb1b param_set_bool_enable_only +EXPORT_SYMBOL_GPL vmlinux 0xbfcd7779 xfrm_audit_state_delete +EXPORT_SYMBOL_GPL vmlinux 0xbfd81b31 fib6_check_nexthop +EXPORT_SYMBOL_GPL vmlinux 0xbfdbe0dd tcp_slow_start +EXPORT_SYMBOL_GPL vmlinux 0xbfe5616d tick_broadcast_oneshot_control +EXPORT_SYMBOL_GPL vmlinux 0xbffde8ec compat_alloc_user_space +EXPORT_SYMBOL_GPL vmlinux 0xc0019341 fsverity_verify_page +EXPORT_SYMBOL_GPL vmlinux 0xc00d43f1 pci_disable_pcie_error_reporting +EXPORT_SYMBOL_GPL vmlinux 0xc03bd2c2 devlink_flash_update_begin_notify +EXPORT_SYMBOL_GPL vmlinux 0xc0418fee napi_hash_del +EXPORT_SYMBOL_GPL vmlinux 0xc05160fe rt_mutex_lock_interruptible +EXPORT_SYMBOL_GPL vmlinux 0xc0535153 sysfs_remove_link_from_group +EXPORT_SYMBOL_GPL vmlinux 0xc08d6479 strp_check_rcv +EXPORT_SYMBOL_GPL vmlinux 0xc09eb478 component_add_typed +EXPORT_SYMBOL_GPL vmlinux 0xc0a96e14 rcu_gp_is_expedited +EXPORT_SYMBOL_GPL vmlinux 0xc0bcec49 devlink_port_attrs_pci_vf_set +EXPORT_SYMBOL_GPL vmlinux 0xc0c044a4 fsnotify_init_mark +EXPORT_SYMBOL_GPL vmlinux 0xc0e332a1 unregister_pernet_subsys +EXPORT_SYMBOL_GPL vmlinux 0xc0f0458a ip_tunnel_unneed_metadata +EXPORT_SYMBOL_GPL vmlinux 0xc0f1b9f1 badblocks_set +EXPORT_SYMBOL_GPL vmlinux 0xc1086e0c sysrq_toggle_support +EXPORT_SYMBOL_GPL vmlinux 0xc10fddb8 name_to_dev_t +EXPORT_SYMBOL_GPL vmlinux 0xc1763a3b blk_abort_request +EXPORT_SYMBOL_GPL vmlinux 0xc1779f5d gmap_remove +EXPORT_SYMBOL_GPL vmlinux 0xc184fbe3 vfs_listxattr +EXPORT_SYMBOL_GPL vmlinux 0xc185fd58 ip6_datagram_recv_ctl +EXPORT_SYMBOL_GPL vmlinux 0xc1c2c179 gpiod_set_consumer_name +EXPORT_SYMBOL_GPL vmlinux 0xc1dfe1ce device_add_groups +EXPORT_SYMBOL_GPL vmlinux 0xc1e94c0c crypto_register_acomps +EXPORT_SYMBOL_GPL vmlinux 0xc1f57cbe skb_segment +EXPORT_SYMBOL_GPL vmlinux 0xc209410d iomap_writepage +EXPORT_SYMBOL_GPL vmlinux 0xc20a866b dm_start_time_ns_from_clone +EXPORT_SYMBOL_GPL vmlinux 0xc22315ee perf_aux_output_skip +EXPORT_SYMBOL_GPL vmlinux 0xc22a3091 vm_unmap_aliases +EXPORT_SYMBOL_GPL vmlinux 0xc25d8e66 bpf_offload_dev_match +EXPORT_SYMBOL_GPL vmlinux 0xc29efb69 shash_no_setkey +EXPORT_SYMBOL_GPL vmlinux 0xc2a814db tcp_memory_pressure +EXPORT_SYMBOL_GPL vmlinux 0xc2c1c427 perf_event_cgrp_subsys_on_dfl_key +EXPORT_SYMBOL_GPL vmlinux 0xc2ca6189 sysfs_rename_link_ns +EXPORT_SYMBOL_GPL vmlinux 0xc2fcdec6 crypto_alloc_base +EXPORT_SYMBOL_GPL vmlinux 0xc30e255b ip6_dst_lookup_flow +EXPORT_SYMBOL_GPL vmlinux 0xc30ec04b devm_add_action +EXPORT_SYMBOL_GPL vmlinux 0xc341ae6d zs_map_object +EXPORT_SYMBOL_GPL vmlinux 0xc3510a78 crypto_register_ahashes +EXPORT_SYMBOL_GPL vmlinux 0xc3521202 gpiod_get_array +EXPORT_SYMBOL_GPL vmlinux 0xc37f5279 ip_fib_metrics_init +EXPORT_SYMBOL_GPL vmlinux 0xc3805cd1 fs_ftype_to_dtype +EXPORT_SYMBOL_GPL vmlinux 0xc390ebb6 dma_buf_fd +EXPORT_SYMBOL_GPL vmlinux 0xc3a7daf2 blk_set_pm_only +EXPORT_SYMBOL_GPL vmlinux 0xc3c4c6cc hash_algo_name +EXPORT_SYMBOL_GPL vmlinux 0xc3d5c7ba anon_inode_getfile +EXPORT_SYMBOL_GPL vmlinux 0xc3de65ff ring_buffer_bytes_cpu +EXPORT_SYMBOL_GPL vmlinux 0xc3e2ff26 devm_kstrdup +EXPORT_SYMBOL_GPL vmlinux 0xc3ea5305 iommu_default_passthrough +EXPORT_SYMBOL_GPL vmlinux 0xc3f1f6bd pci_epc_multi_mem_init +EXPORT_SYMBOL_GPL vmlinux 0xc40f4e07 __tracepoint_neigh_update_done +EXPORT_SYMBOL_GPL vmlinux 0xc414ec68 fanout_mutex +EXPORT_SYMBOL_GPL vmlinux 0xc41a0c51 chsc_ssqd +EXPORT_SYMBOL_GPL vmlinux 0xc426c51f klp_shadow_free_all +EXPORT_SYMBOL_GPL vmlinux 0xc438c417 __fscrypt_prepare_symlink +EXPORT_SYMBOL_GPL vmlinux 0xc4456f91 crypto_get_default_null_skcipher +EXPORT_SYMBOL_GPL vmlinux 0xc445c23f ksm_madvise +EXPORT_SYMBOL_GPL vmlinux 0xc480eb84 appldata_diag +EXPORT_SYMBOL_GPL vmlinux 0xc481715e pin_user_pages_fast_only +EXPORT_SYMBOL_GPL vmlinux 0xc4831a10 nexthop_for_each_fib6_nh +EXPORT_SYMBOL_GPL vmlinux 0xc486df48 pci_epf_create +EXPORT_SYMBOL_GPL vmlinux 0xc48731c6 bsg_job_done +EXPORT_SYMBOL_GPL vmlinux 0xc488c909 sock_diag_check_cookie +EXPORT_SYMBOL_GPL vmlinux 0xc48f7eb5 is_binary_blacklisted +EXPORT_SYMBOL_GPL vmlinux 0xc4a31146 rdma_cgrp_subsys_on_dfl_key +EXPORT_SYMBOL_GPL vmlinux 0xc4c2102a sysfs_remove_mount_point +EXPORT_SYMBOL_GPL vmlinux 0xc4c9c75a synth_event_cmd_init +EXPORT_SYMBOL_GPL vmlinux 0xc4d536b7 irq_domain_pop_irq +EXPORT_SYMBOL_GPL vmlinux 0xc4f0da12 ktime_get_with_offset +EXPORT_SYMBOL_GPL vmlinux 0xc4f3124d iommu_map_atomic +EXPORT_SYMBOL_GPL vmlinux 0xc4fa4847 device_reprobe +EXPORT_SYMBOL_GPL vmlinux 0xc50cf4d8 addrconf_add_linklocal +EXPORT_SYMBOL_GPL vmlinux 0xc513d7d9 debugfs_attr_read +EXPORT_SYMBOL_GPL vmlinux 0xc5557271 irq_domain_push_irq +EXPORT_SYMBOL_GPL vmlinux 0xc56c6e82 pci_enable_ats +EXPORT_SYMBOL_GPL vmlinux 0xc5734938 of_css +EXPORT_SYMBOL_GPL vmlinux 0xc575c737 debug_locks_off +EXPORT_SYMBOL_GPL vmlinux 0xc592da83 subsys_dev_iter_next +EXPORT_SYMBOL_GPL vmlinux 0xc59e8c30 fuse_conn_put +EXPORT_SYMBOL_GPL vmlinux 0xc5b22084 __pci_hp_register +EXPORT_SYMBOL_GPL vmlinux 0xc5ba8461 srcu_torture_stats_print +EXPORT_SYMBOL_GPL vmlinux 0xc5c36827 iommu_group_for_each_dev +EXPORT_SYMBOL_GPL vmlinux 0xc5d8ec96 virtqueue_detach_unused_buf +EXPORT_SYMBOL_GPL vmlinux 0xc617f82c unregister_oom_notifier +EXPORT_SYMBOL_GPL vmlinux 0xc63ad137 iomap_swapfile_activate +EXPORT_SYMBOL_GPL vmlinux 0xc63ce768 pci_epc_mem_alloc_addr +EXPORT_SYMBOL_GPL vmlinux 0xc644b774 gpiochip_line_is_irq +EXPORT_SYMBOL_GPL vmlinux 0xc653aaf6 bus_unregister +EXPORT_SYMBOL_GPL vmlinux 0xc654d3f4 lwtunnel_valid_encap_type +EXPORT_SYMBOL_GPL vmlinux 0xc66b77b1 iommu_group_set_iommudata +EXPORT_SYMBOL_GPL vmlinux 0xc67154cb pci_find_next_capability +EXPORT_SYMBOL_GPL vmlinux 0xc6779093 ring_buffer_record_enable +EXPORT_SYMBOL_GPL vmlinux 0xc684cfca hvc_alloc +EXPORT_SYMBOL_GPL vmlinux 0xc6917101 fuse_free_conn +EXPORT_SYMBOL_GPL vmlinux 0xc69b7ee5 zs_destroy_pool +EXPORT_SYMBOL_GPL vmlinux 0xc6a193eb blk_revalidate_disk_zones +EXPORT_SYMBOL_GPL vmlinux 0xc6a1fc61 inet_ctl_sock_create +EXPORT_SYMBOL_GPL vmlinux 0xc6bc7ebc sock_diag_unregister_inet_compat +EXPORT_SYMBOL_GPL vmlinux 0xc6bdb5e2 pci_reset_function +EXPORT_SYMBOL_GPL vmlinux 0xc6c18355 perf_event_read_value +EXPORT_SYMBOL_GPL vmlinux 0xc6d09aec sysfs_unmerge_group +EXPORT_SYMBOL_GPL vmlinux 0xc71e64a9 snmp_get_cpu_field +EXPORT_SYMBOL_GPL vmlinux 0xc728a532 kvm_write_guest +EXPORT_SYMBOL_GPL vmlinux 0xc73d7893 device_store_int +EXPORT_SYMBOL_GPL vmlinux 0xc755c93f trace_handle_return +EXPORT_SYMBOL_GPL vmlinux 0xc77f81e2 fuse_dev_fiq_ops +EXPORT_SYMBOL_GPL vmlinux 0xc78bb65d irq_create_direct_mapping +EXPORT_SYMBOL_GPL vmlinux 0xc7a1840e llist_add_batch +EXPORT_SYMBOL_GPL vmlinux 0xc7ddcf85 ncsi_vlan_rx_kill_vid +EXPORT_SYMBOL_GPL vmlinux 0xc7e903c6 udp4_lib_lookup_skb +EXPORT_SYMBOL_GPL vmlinux 0xc7eabbe9 blk_queue_write_cache +EXPORT_SYMBOL_GPL vmlinux 0xc7fa4aa9 kobj_ns_drop +EXPORT_SYMBOL_GPL vmlinux 0xc80acfca chsc_sadc +EXPORT_SYMBOL_GPL vmlinux 0xc819bbf8 get_user_pages_fast_only +EXPORT_SYMBOL_GPL vmlinux 0xc81ee3a5 iommu_set_fault_handler +EXPORT_SYMBOL_GPL vmlinux 0xc82c721f klist_remove +EXPORT_SYMBOL_GPL vmlinux 0xc83bede3 fib_nh_common_init +EXPORT_SYMBOL_GPL vmlinux 0xc84c4023 nl_table_lock +EXPORT_SYMBOL_GPL vmlinux 0xc8500d1f gpiod_cansleep +EXPORT_SYMBOL_GPL vmlinux 0xc85e35fd fwnode_property_read_u32_array +EXPORT_SYMBOL_GPL vmlinux 0xc862283e kvm_vcpu_wake_up +EXPORT_SYMBOL_GPL vmlinux 0xc863c72a sysfs_create_bin_file +EXPORT_SYMBOL_GPL vmlinux 0xc86674d2 dma_resv_get_fences_rcu +EXPORT_SYMBOL_GPL vmlinux 0xc87938f7 watchdog_set_restart_priority +EXPORT_SYMBOL_GPL vmlinux 0xc881e5e5 kset_create_and_add +EXPORT_SYMBOL_GPL vmlinux 0xc88818b2 bd_link_disk_holder +EXPORT_SYMBOL_GPL vmlinux 0xc88b1525 component_bind_all +EXPORT_SYMBOL_GPL vmlinux 0xc8a0891f blk_ksm_register +EXPORT_SYMBOL_GPL vmlinux 0xc8a6e09b inet_peer_base_init +EXPORT_SYMBOL_GPL vmlinux 0xc8cad695 gmap_pmdp_idte_local +EXPORT_SYMBOL_GPL vmlinux 0xc8ddd5b5 kstrdup_quotable +EXPORT_SYMBOL_GPL vmlinux 0xc9166858 blockdev_superblock +EXPORT_SYMBOL_GPL vmlinux 0xc92f838f fwnode_property_read_u16_array +EXPORT_SYMBOL_GPL vmlinux 0xc931f62f iomap_readpage +EXPORT_SYMBOL_GPL vmlinux 0xc93461f9 hrtimer_try_to_cancel +EXPORT_SYMBOL_GPL vmlinux 0xc935a9db class_remove_file_ns +EXPORT_SYMBOL_GPL vmlinux 0xc9561772 fb_destroy_modelist +EXPORT_SYMBOL_GPL vmlinux 0xc9827693 __bpf_call_base +EXPORT_SYMBOL_GPL vmlinux 0xc9850c9f pci_ioremap_wc_bar +EXPORT_SYMBOL_GPL vmlinux 0xc985c31e securityfs_create_dir +EXPORT_SYMBOL_GPL vmlinux 0xc985e554 transport_destroy_device +EXPORT_SYMBOL_GPL vmlinux 0xc9b3466c balloon_page_dequeue +EXPORT_SYMBOL_GPL vmlinux 0xc9b70b64 securityfs_create_file +EXPORT_SYMBOL_GPL vmlinux 0xc9cb468a __blk_mq_debugfs_rq_show +EXPORT_SYMBOL_GPL vmlinux 0xc9e22230 tcp_unregister_ulp +EXPORT_SYMBOL_GPL vmlinux 0xc9ec4e21 free_percpu +EXPORT_SYMBOL_GPL vmlinux 0xc9f2cfc9 con_debug_enter +EXPORT_SYMBOL_GPL vmlinux 0xc9f40f18 trace_event_reg +EXPORT_SYMBOL_GPL vmlinux 0xca0917b7 dev_fill_metadata_dst +EXPORT_SYMBOL_GPL vmlinux 0xca19a285 fb_deferred_io_open +EXPORT_SYMBOL_GPL vmlinux 0xca365a83 fscrypt_drop_inode +EXPORT_SYMBOL_GPL vmlinux 0xca541308 trusted_tpm_send +EXPORT_SYMBOL_GPL vmlinux 0xca574293 gpiod_unexport +EXPORT_SYMBOL_GPL vmlinux 0xca689e26 init_uts_ns +EXPORT_SYMBOL_GPL vmlinux 0xca7d8764 kthread_freezable_should_stop +EXPORT_SYMBOL_GPL vmlinux 0xca9a1d5e ring_buffer_free +EXPORT_SYMBOL_GPL vmlinux 0xcacd88a0 __tracepoint_br_fdb_update +EXPORT_SYMBOL_GPL vmlinux 0xcae19349 device_del +EXPORT_SYMBOL_GPL vmlinux 0xcb0d11b3 kern_mount +EXPORT_SYMBOL_GPL vmlinux 0xcb21bc50 __platform_driver_probe +EXPORT_SYMBOL_GPL vmlinux 0xcb5a258e rtm_getroute_parse_ip_proto +EXPORT_SYMBOL_GPL vmlinux 0xcb65087d skb_zerocopy_headlen +EXPORT_SYMBOL_GPL vmlinux 0xcb7ddb7b blk_queue_max_zone_append_sectors +EXPORT_SYMBOL_GPL vmlinux 0xcb7f305f ping_common_sendmsg +EXPORT_SYMBOL_GPL vmlinux 0xcb98764d kthread_func +EXPORT_SYMBOL_GPL vmlinux 0xcba7104c crypto_mod_get +EXPORT_SYMBOL_GPL vmlinux 0xcbbf3028 gen_pool_avail +EXPORT_SYMBOL_GPL vmlinux 0xcbd54b2f gpiod_set_debounce +EXPORT_SYMBOL_GPL vmlinux 0xcbe56bc2 zs_get_total_pages +EXPORT_SYMBOL_GPL vmlinux 0xcc2dbfd8 irq_domain_check_msi_remap +EXPORT_SYMBOL_GPL vmlinux 0xcc54f894 virtio_config_disable +EXPORT_SYMBOL_GPL vmlinux 0xcc6bfb7f irq_chip_unmask_parent +EXPORT_SYMBOL_GPL vmlinux 0xcc79fe98 dax_supported +EXPORT_SYMBOL_GPL vmlinux 0xcc935375 walk_iomem_res_desc +EXPORT_SYMBOL_GPL vmlinux 0xccd5762d devres_for_each_res +EXPORT_SYMBOL_GPL vmlinux 0xccda0a30 task_user_regset_view +EXPORT_SYMBOL_GPL vmlinux 0xcce3e804 gfn_to_memslot +EXPORT_SYMBOL_GPL vmlinux 0xccf3907f __class_register +EXPORT_SYMBOL_GPL vmlinux 0xccf52bc9 sfp_upstream_start +EXPORT_SYMBOL_GPL vmlinux 0xcd00dc25 xdp_return_frame_rx_napi +EXPORT_SYMBOL_GPL vmlinux 0xcd24e146 hash_digest_size +EXPORT_SYMBOL_GPL vmlinux 0xcd33f11c fwnode_get_next_child_node +EXPORT_SYMBOL_GPL vmlinux 0xcd3708a2 scsi_dh_set_params +EXPORT_SYMBOL_GPL vmlinux 0xcd3b50ce kmsg_dump_get_line +EXPORT_SYMBOL_GPL vmlinux 0xcd60a9b5 handle_level_irq +EXPORT_SYMBOL_GPL vmlinux 0xcd6f2dc9 nf_log_buf_add +EXPORT_SYMBOL_GPL vmlinux 0xcd91b127 system_highpri_wq +EXPORT_SYMBOL_GPL vmlinux 0xcd974f00 rcu_all_qs +EXPORT_SYMBOL_GPL vmlinux 0xcd9cd2ff wakeme_after_rcu +EXPORT_SYMBOL_GPL vmlinux 0xcdb6adcc ras_userspace_consumers +EXPORT_SYMBOL_GPL vmlinux 0xcdbe89be synth_event_add_field_str +EXPORT_SYMBOL_GPL vmlinux 0xcdca3691 nr_irqs +EXPORT_SYMBOL_GPL vmlinux 0xcdcbc129 vfs_getxattr +EXPORT_SYMBOL_GPL vmlinux 0xce064e74 fsverity_file_open +EXPORT_SYMBOL_GPL vmlinux 0xce068992 skcipher_walk_complete +EXPORT_SYMBOL_GPL vmlinux 0xce189660 shmem_file_setup_with_mnt +EXPORT_SYMBOL_GPL vmlinux 0xce3efc0a platform_device_register +EXPORT_SYMBOL_GPL vmlinux 0xce549e96 list_lru_walk_one +EXPORT_SYMBOL_GPL vmlinux 0xce6db656 rcu_is_watching +EXPORT_SYMBOL_GPL vmlinux 0xcebcec73 firmware_kobj +EXPORT_SYMBOL_GPL vmlinux 0xcecf6edb __blk_req_zone_write_lock +EXPORT_SYMBOL_GPL vmlinux 0xcee0d043 ip_build_and_send_pkt +EXPORT_SYMBOL_GPL vmlinux 0xcee2a3f6 cio_commit_config +EXPORT_SYMBOL_GPL vmlinux 0xceeae136 devlink_unregister +EXPORT_SYMBOL_GPL vmlinux 0xcf0afbfb copy_to_user_nofault +EXPORT_SYMBOL_GPL vmlinux 0xcf127b3c do_splice_to +EXPORT_SYMBOL_GPL vmlinux 0xcf28f55e trace_clock_global +EXPORT_SYMBOL_GPL vmlinux 0xcf2f9484 __percpu_init_rwsem +EXPORT_SYMBOL_GPL vmlinux 0xcf54ea93 async_unregister_domain +EXPORT_SYMBOL_GPL vmlinux 0xcf9269c6 vc_scrolldelta_helper +EXPORT_SYMBOL_GPL vmlinux 0xcf9f50ed fuse_dev_install +EXPORT_SYMBOL_GPL vmlinux 0xcfc5108a devlink_fmsg_u8_pair_put +EXPORT_SYMBOL_GPL vmlinux 0xcfc7b4e4 rcu_barrier_tasks_trace +EXPORT_SYMBOL_GPL vmlinux 0xcfd49dc8 gmap_shadow_valid +EXPORT_SYMBOL_GPL vmlinux 0xd031b589 asn1_ber_decoder +EXPORT_SYMBOL_GPL vmlinux 0xd03eaf4c schedule_hrtimeout_range +EXPORT_SYMBOL_GPL vmlinux 0xd06524ba raw_notifier_chain_unregister +EXPORT_SYMBOL_GPL vmlinux 0xd067d3c5 system_freezable_power_efficient_wq +EXPORT_SYMBOL_GPL vmlinux 0xd069ac31 pci_bus_add_device +EXPORT_SYMBOL_GPL vmlinux 0xd0711b58 device_get_dma_attr +EXPORT_SYMBOL_GPL vmlinux 0xd07190e1 kvm_get_running_vcpu +EXPORT_SYMBOL_GPL vmlinux 0xd083be63 sprint_OID +EXPORT_SYMBOL_GPL vmlinux 0xd087bf92 perf_event_release_kernel +EXPORT_SYMBOL_GPL vmlinux 0xd09288cd driver_find_device +EXPORT_SYMBOL_GPL vmlinux 0xd0c05159 emergency_restart +EXPORT_SYMBOL_GPL vmlinux 0xd0db0f12 run_dax +EXPORT_SYMBOL_GPL vmlinux 0xd0e6e114 ccw_device_get_util_str +EXPORT_SYMBOL_GPL vmlinux 0xd0f4bbb6 crypto_grab_skcipher +EXPORT_SYMBOL_GPL vmlinux 0xd0f4d3b2 alarm_forward_now +EXPORT_SYMBOL_GPL vmlinux 0xd1231e87 metadata_dst_free +EXPORT_SYMBOL_GPL vmlinux 0xd12d13a3 __class_create +EXPORT_SYMBOL_GPL vmlinux 0xd141a07b crypto_ahash_walk_first +EXPORT_SYMBOL_GPL vmlinux 0xd14d4cc2 gpiod_get_value +EXPORT_SYMBOL_GPL vmlinux 0xd159586c net_prio_cgrp_subsys_enabled_key +EXPORT_SYMBOL_GPL vmlinux 0xd174af92 blk_mq_free_request +EXPORT_SYMBOL_GPL vmlinux 0xd1816cb1 __platform_register_drivers +EXPORT_SYMBOL_GPL vmlinux 0xd18328cb handle_bad_irq +EXPORT_SYMBOL_GPL vmlinux 0xd1900d61 key_type_logon +EXPORT_SYMBOL_GPL vmlinux 0xd1901df7 user_preparse +EXPORT_SYMBOL_GPL vmlinux 0xd1a2af3a tpm1_getcap +EXPORT_SYMBOL_GPL vmlinux 0xd1a5c1a2 crypto_register_scomp +EXPORT_SYMBOL_GPL vmlinux 0xd1be0a99 proc_mkdir_data +EXPORT_SYMBOL_GPL vmlinux 0xd1cbc23c add_timer_on +EXPORT_SYMBOL_GPL vmlinux 0xd1e40fec fuse_do_open +EXPORT_SYMBOL_GPL vmlinux 0xd1f2eee2 nf_logger_find_get +EXPORT_SYMBOL_GPL vmlinux 0xd20023db devlink_free +EXPORT_SYMBOL_GPL vmlinux 0xd20bf6ba dcookie_unregister +EXPORT_SYMBOL_GPL vmlinux 0xd217e9e6 trace_set_clr_event +EXPORT_SYMBOL_GPL vmlinux 0xd21b61bd async_schedule_node_domain +EXPORT_SYMBOL_GPL vmlinux 0xd2360d82 tty_init_termios +EXPORT_SYMBOL_GPL vmlinux 0xd260af0d ring_buffer_write +EXPORT_SYMBOL_GPL vmlinux 0xd26c2074 gpiod_get_direction +EXPORT_SYMBOL_GPL vmlinux 0xd273b1b1 __round_jiffies_up_relative +EXPORT_SYMBOL_GPL vmlinux 0xd284e969 bpf_prog_sub +EXPORT_SYMBOL_GPL vmlinux 0xd286dc9f fscrypt_ioctl_get_nonce +EXPORT_SYMBOL_GPL vmlinux 0xd2c46d5c get_current_tty +EXPORT_SYMBOL_GPL vmlinux 0xd2c8ae77 tracepoint_probe_unregister +EXPORT_SYMBOL_GPL vmlinux 0xd2e79416 cpu_bit_bitmap +EXPORT_SYMBOL_GPL vmlinux 0xd2e87924 crypto_alloc_sync_skcipher +EXPORT_SYMBOL_GPL vmlinux 0xd301d7e5 iomap_file_unshare +EXPORT_SYMBOL_GPL vmlinux 0xd302f50f tpm2_flush_context +EXPORT_SYMBOL_GPL vmlinux 0xd31a2ac5 ring_buffer_oldest_event_ts +EXPORT_SYMBOL_GPL vmlinux 0xd3243ae8 mpi_read_raw_data +EXPORT_SYMBOL_GPL vmlinux 0xd32488f1 fsverity_prepare_setattr +EXPORT_SYMBOL_GPL vmlinux 0xd3423119 srcu_batches_completed +EXPORT_SYMBOL_GPL vmlinux 0xd3450324 crypto_aes_set_key +EXPORT_SYMBOL_GPL vmlinux 0xd348bd75 handle_fasteoi_nmi +EXPORT_SYMBOL_GPL vmlinux 0xd34be1da fsstack_copy_attr_all +EXPORT_SYMBOL_GPL vmlinux 0xd37aaad5 tpm_try_get_ops +EXPORT_SYMBOL_GPL vmlinux 0xd39e9848 put_itimerspec64 +EXPORT_SYMBOL_GPL vmlinux 0xd3be1a92 pci_set_pcie_reset_state +EXPORT_SYMBOL_GPL vmlinux 0xd3cb48e4 devlink_trap_groups_register +EXPORT_SYMBOL_GPL vmlinux 0xd3d0dd6a cio_start_key +EXPORT_SYMBOL_GPL vmlinux 0xd3efb072 alarm_try_to_cancel +EXPORT_SYMBOL_GPL vmlinux 0xd3f8f3f4 page_poisoning_enabled +EXPORT_SYMBOL_GPL vmlinux 0xd4034828 system_freezable_wq +EXPORT_SYMBOL_GPL vmlinux 0xd40965d0 watchdog_notify_pretimeout +EXPORT_SYMBOL_GPL vmlinux 0xd41259e7 elv_register +EXPORT_SYMBOL_GPL vmlinux 0xd4460388 crypto_alloc_acomp +EXPORT_SYMBOL_GPL vmlinux 0xd4491cc0 fwnode_get_name +EXPORT_SYMBOL_GPL vmlinux 0xd45df245 dm_set_target_max_io_len +EXPORT_SYMBOL_GPL vmlinux 0xd46a311f gpiochip_request_own_desc +EXPORT_SYMBOL_GPL vmlinux 0xd46c38ac skb_morph +EXPORT_SYMBOL_GPL vmlinux 0xd4708255 metadata_dst_free_percpu +EXPORT_SYMBOL_GPL vmlinux 0xd4914c76 iommu_fwspec_init +EXPORT_SYMBOL_GPL vmlinux 0xd4a8d24c clockevents_unbind_device +EXPORT_SYMBOL_GPL vmlinux 0xd4b6157e devlink_health_reporter_recovery_done +EXPORT_SYMBOL_GPL vmlinux 0xd4c14632 system_unbound_wq +EXPORT_SYMBOL_GPL vmlinux 0xd4d67104 fs_kobj +EXPORT_SYMBOL_GPL vmlinux 0xd4d8b36c skb_copy_ubufs +EXPORT_SYMBOL_GPL vmlinux 0xd52fbf2e gmap_map_segment +EXPORT_SYMBOL_GPL vmlinux 0xd534e4c7 mmu_interval_read_begin +EXPORT_SYMBOL_GPL vmlinux 0xd53e12c4 skb_scrub_packet +EXPORT_SYMBOL_GPL vmlinux 0xd5569b6c rhashtable_walk_start_check +EXPORT_SYMBOL_GPL vmlinux 0xd55ad93b iommu_group_get_iommudata +EXPORT_SYMBOL_GPL vmlinux 0xd55f3eee css_sched_sch_todo +EXPORT_SYMBOL_GPL vmlinux 0xd5686902 sk_clone_lock +EXPORT_SYMBOL_GPL vmlinux 0xd5ad357f __tracepoint_mc_event +EXPORT_SYMBOL_GPL vmlinux 0xd5b53332 shmem_file_setup +EXPORT_SYMBOL_GPL vmlinux 0xd5c4c650 security_path_truncate +EXPORT_SYMBOL_GPL vmlinux 0xd5c71a2e tcp_leave_memory_pressure +EXPORT_SYMBOL_GPL vmlinux 0xd60629a3 unwind_next_frame +EXPORT_SYMBOL_GPL vmlinux 0xd618e58a relay_flush +EXPORT_SYMBOL_GPL vmlinux 0xd63c3aa2 __page_file_mapping +EXPORT_SYMBOL_GPL vmlinux 0xd63ca2b4 inet_csk_listen_stop +EXPORT_SYMBOL_GPL vmlinux 0xd64ed259 __memcat_p +EXPORT_SYMBOL_GPL vmlinux 0xd653b126 sched_clock +EXPORT_SYMBOL_GPL vmlinux 0xd65cd62d nf_checksum_partial +EXPORT_SYMBOL_GPL vmlinux 0xd66e8733 crypto_ahash_finup +EXPORT_SYMBOL_GPL vmlinux 0xd67364f7 eventfd_ctx_fdget +EXPORT_SYMBOL_GPL vmlinux 0xd688846d virtqueue_poll +EXPORT_SYMBOL_GPL vmlinux 0xd6b93870 bus_set_iommu +EXPORT_SYMBOL_GPL vmlinux 0xd6f6e6b7 vcpu_load +EXPORT_SYMBOL_GPL vmlinux 0xd709a941 __skb_get_hash_symmetric +EXPORT_SYMBOL_GPL vmlinux 0xd70ec1a5 pci_destroy_slot +EXPORT_SYMBOL_GPL vmlinux 0xd714cccd crypto_shash_final +EXPORT_SYMBOL_GPL vmlinux 0xd7165ab9 ccw_device_siosl +EXPORT_SYMBOL_GPL vmlinux 0xd71688af fuse_conn_get +EXPORT_SYMBOL_GPL vmlinux 0xd75cdd2e generic_fh_to_parent +EXPORT_SYMBOL_GPL vmlinux 0xd75d2fe0 crypto_enqueue_request +EXPORT_SYMBOL_GPL vmlinux 0xd774957d mpi_write_to_sgl +EXPORT_SYMBOL_GPL vmlinux 0xd7dfded1 debugfs_create_regset32 +EXPORT_SYMBOL_GPL vmlinux 0xd7f1deeb __tcp_send_ack +EXPORT_SYMBOL_GPL vmlinux 0xd8420e3f pci_reset_function_locked +EXPORT_SYMBOL_GPL vmlinux 0xd84375f3 blkcg_activate_policy +EXPORT_SYMBOL_GPL vmlinux 0xd84d35bd dax_read_lock +EXPORT_SYMBOL_GPL vmlinux 0xd86129d6 security_inode_mkdir +EXPORT_SYMBOL_GPL vmlinux 0xd87354e3 crypto_aead_setauthsize +EXPORT_SYMBOL_GPL vmlinux 0xd88d3be7 __blk_req_zone_write_unlock +EXPORT_SYMBOL_GPL vmlinux 0xd894a048 devm_gpiod_get +EXPORT_SYMBOL_GPL vmlinux 0xd8963f58 validate_xmit_skb_list +EXPORT_SYMBOL_GPL vmlinux 0xd8b9aad5 pci_find_ext_capability +EXPORT_SYMBOL_GPL vmlinux 0xd8cce435 pkcs7_validate_trust +EXPORT_SYMBOL_GPL vmlinux 0xd8e18a5d nf_hook_entries_insert_raw +EXPORT_SYMBOL_GPL vmlinux 0xd8e99ec0 trace_put_event_file +EXPORT_SYMBOL_GPL vmlinux 0xd8e9fea9 espintcp_push_skb +EXPORT_SYMBOL_GPL vmlinux 0xd8fbb14d net_cls_cgrp_subsys_on_dfl_key +EXPORT_SYMBOL_GPL vmlinux 0xd9071733 __wake_up_locked_key +EXPORT_SYMBOL_GPL vmlinux 0xd943baa0 fat_search_long +EXPORT_SYMBOL_GPL vmlinux 0xd9463443 bus_find_device +EXPORT_SYMBOL_GPL vmlinux 0xd96babb4 interval_tree_iter_next +EXPORT_SYMBOL_GPL vmlinux 0xd96f7f52 nexthop_select_path +EXPORT_SYMBOL_GPL vmlinux 0xd9b51021 skb_pull_rcsum +EXPORT_SYMBOL_GPL vmlinux 0xd9b7fefb dma_max_mapping_size +EXPORT_SYMBOL_GPL vmlinux 0xd9c1b849 gpiochip_line_is_open_drain +EXPORT_SYMBOL_GPL vmlinux 0xd9d91ee8 pci_epc_clear_bar +EXPORT_SYMBOL_GPL vmlinux 0xd9e24457 ring_buffer_peek +EXPORT_SYMBOL_GPL vmlinux 0xd9fed72f dma_buf_pin +EXPORT_SYMBOL_GPL vmlinux 0xda320d31 sfp_module_start +EXPORT_SYMBOL_GPL vmlinux 0xda3f3e8a isc_register +EXPORT_SYMBOL_GPL vmlinux 0xda3fe12e devlink_reload_disable +EXPORT_SYMBOL_GPL vmlinux 0xda43746d debugfs_remove +EXPORT_SYMBOL_GPL vmlinux 0xda730463 cpu_device_create +EXPORT_SYMBOL_GPL vmlinux 0xda946b19 vfs_submount +EXPORT_SYMBOL_GPL vmlinux 0xdab5a1eb interval_tree_insert +EXPORT_SYMBOL_GPL vmlinux 0xdaf4dfb3 fb_mode_option +EXPORT_SYMBOL_GPL vmlinux 0xdafcdc3a ktime_get_snapshot +EXPORT_SYMBOL_GPL vmlinux 0xdb0b7594 blk_clear_pm_only +EXPORT_SYMBOL_GPL vmlinux 0xdb15ea4f blk_ksm_destroy +EXPORT_SYMBOL_GPL vmlinux 0xdb25af26 ptep_notify +EXPORT_SYMBOL_GPL vmlinux 0xdb25da3e irq_work_queue +EXPORT_SYMBOL_GPL vmlinux 0xdb29681b __account_locked_vm +EXPORT_SYMBOL_GPL vmlinux 0xdb3af81d devprop_gpiochip_set_names +EXPORT_SYMBOL_GPL vmlinux 0xdb3bb578 bpf_prog_select_runtime +EXPORT_SYMBOL_GPL vmlinux 0xdb55b321 gfn_to_pfn +EXPORT_SYMBOL_GPL vmlinux 0xdb636519 invalidate_inode_pages2_range +EXPORT_SYMBOL_GPL vmlinux 0xdb6bab57 __wake_up_locked +EXPORT_SYMBOL_GPL vmlinux 0xdb7a8b6b vma_kernel_pagesize +EXPORT_SYMBOL_GPL vmlinux 0xdb8a1b3f usermodehelper_read_trylock +EXPORT_SYMBOL_GPL vmlinux 0xdbaac91c __fl6_sock_lookup +EXPORT_SYMBOL_GPL vmlinux 0xdbd8b16a blk_mq_start_stopped_hw_queue +EXPORT_SYMBOL_GPL vmlinux 0xdbdef089 virtio_break_device +EXPORT_SYMBOL_GPL vmlinux 0xdbf29726 __tracepoint_neigh_timer_handler +EXPORT_SYMBOL_GPL vmlinux 0xdbf7cb70 mpi_get_nbits +EXPORT_SYMBOL_GPL vmlinux 0xdc31ebe9 irq_domain_xlate_onecell +EXPORT_SYMBOL_GPL vmlinux 0xdc4d19b6 gpiod_set_array_value_cansleep +EXPORT_SYMBOL_GPL vmlinux 0xdc5207ce devres_remove_group +EXPORT_SYMBOL_GPL vmlinux 0xdc69193b synth_event_add_fields +EXPORT_SYMBOL_GPL vmlinux 0xdc9b37de task_cgroup_path +EXPORT_SYMBOL_GPL vmlinux 0xdc9fa232 raw_notifier_chain_register +EXPORT_SYMBOL_GPL vmlinux 0xdcc18bc5 sk_detach_filter +EXPORT_SYMBOL_GPL vmlinux 0xdcc39999 devlink_port_type_eth_set +EXPORT_SYMBOL_GPL vmlinux 0xdcce51c7 gmap_read_table +EXPORT_SYMBOL_GPL vmlinux 0xdccff36d scsi_internal_device_block_nowait +EXPORT_SYMBOL_GPL vmlinux 0xdcd9124c lwtunnel_fill_encap +EXPORT_SYMBOL_GPL vmlinux 0xdce18876 fsverity_ioctl_measure +EXPORT_SYMBOL_GPL vmlinux 0xdce2dfe9 user_free_preparse +EXPORT_SYMBOL_GPL vmlinux 0xdcf4ec65 sfp_add_phy +EXPORT_SYMBOL_GPL vmlinux 0xdcfa2e66 virtio_add_status +EXPORT_SYMBOL_GPL vmlinux 0xdd010822 tty_ldisc_deref +EXPORT_SYMBOL_GPL vmlinux 0xdd060504 kernel_read_file_from_fd +EXPORT_SYMBOL_GPL vmlinux 0xdd0762df set_worker_desc +EXPORT_SYMBOL_GPL vmlinux 0xdd0f50fc unregister_asymmetric_key_parser +EXPORT_SYMBOL_GPL vmlinux 0xdd1701a5 devm_init_badblocks +EXPORT_SYMBOL_GPL vmlinux 0xdd36baed stack_type_name +EXPORT_SYMBOL_GPL vmlinux 0xdd391eff profile_event_unregister +EXPORT_SYMBOL_GPL vmlinux 0xdd3b76a3 bpf_trace_run8 +EXPORT_SYMBOL_GPL vmlinux 0xdd56439b crypto_register_skciphers +EXPORT_SYMBOL_GPL vmlinux 0xdd5909b0 devlink_port_unregister +EXPORT_SYMBOL_GPL vmlinux 0xdd626ee3 fuse_len_args +EXPORT_SYMBOL_GPL vmlinux 0xdd740400 bpf_prog_get_type_dev +EXPORT_SYMBOL_GPL vmlinux 0xdd7f0765 __tracepoint_powernv_throttle +EXPORT_SYMBOL_GPL vmlinux 0xddbeeecc pci_lock_rescan_remove +EXPORT_SYMBOL_GPL vmlinux 0xddc94931 __rt_mutex_init +EXPORT_SYMBOL_GPL vmlinux 0xde0e69e6 handle_simple_irq +EXPORT_SYMBOL_GPL vmlinux 0xde44c311 dma_buf_vmap +EXPORT_SYMBOL_GPL vmlinux 0xde5d2de0 md_find_rdev_nr_rcu +EXPORT_SYMBOL_GPL vmlinux 0xde612917 debugfs_file_get +EXPORT_SYMBOL_GPL vmlinux 0xde6f1851 TSS_checkhmac1 +EXPORT_SYMBOL_GPL vmlinux 0xdea9919b kmsg_dump_unregister +EXPORT_SYMBOL_GPL vmlinux 0xdeb4720b platform_device_del +EXPORT_SYMBOL_GPL vmlinux 0xdec3e1cc debugfs_create_file_size +EXPORT_SYMBOL_GPL vmlinux 0xdf0ce1e6 gmap_sync_dirty_log_pmd +EXPORT_SYMBOL_GPL vmlinux 0xdf0f75c6 eventfd_signal +EXPORT_SYMBOL_GPL vmlinux 0xdf1e31fe xas_get_mark +EXPORT_SYMBOL_GPL vmlinux 0xdf223247 __tracepoint_sched_overutilized_tp +EXPORT_SYMBOL_GPL vmlinux 0xdf2738bb cpu_cgrp_subsys_enabled_key +EXPORT_SYMBOL_GPL vmlinux 0xdf4de27b iommu_map_sg_atomic +EXPORT_SYMBOL_GPL vmlinux 0xdf5636e4 iomap_readahead +EXPORT_SYMBOL_GPL vmlinux 0xdf573742 set_cpus_allowed_ptr +EXPORT_SYMBOL_GPL vmlinux 0xdf601e87 __strp_unpause +EXPORT_SYMBOL_GPL vmlinux 0xdf7a700d kobject_move +EXPORT_SYMBOL_GPL vmlinux 0xdf9208c0 alloc_workqueue +EXPORT_SYMBOL_GPL vmlinux 0xdfe3f22e set_secondary_fwnode +EXPORT_SYMBOL_GPL vmlinux 0xdff06dad kill_device +EXPORT_SYMBOL_GPL vmlinux 0xe012fe15 sysfs_merge_group +EXPORT_SYMBOL_GPL vmlinux 0xe01a6e85 fuse_dev_alloc +EXPORT_SYMBOL_GPL vmlinux 0xe05e2f85 nexthop_free_rcu +EXPORT_SYMBOL_GPL vmlinux 0xe06388fd add_hwgenerator_randomness +EXPORT_SYMBOL_GPL vmlinux 0xe06c7e86 sched_trace_rq_avg_irq +EXPORT_SYMBOL_GPL vmlinux 0xe06eea43 xfrm_dev_resume +EXPORT_SYMBOL_GPL vmlinux 0xe071d05d zs_pool_stats +EXPORT_SYMBOL_GPL vmlinux 0xe072573f security_kernel_post_read_file +EXPORT_SYMBOL_GPL vmlinux 0xe0ac640d crypto_unregister_skcipher +EXPORT_SYMBOL_GPL vmlinux 0xe0cb1d70 get_net_ns_by_fd +EXPORT_SYMBOL_GPL vmlinux 0xe0cd42ee kvm_vcpu_gfn_to_pfn +EXPORT_SYMBOL_GPL vmlinux 0xe0d44022 gmap_shadow_sgt +EXPORT_SYMBOL_GPL vmlinux 0xe10a082c pci_disable_ats +EXPORT_SYMBOL_GPL vmlinux 0xe10a67a6 noop_direct_IO +EXPORT_SYMBOL_GPL vmlinux 0xe1233ca7 bpf_prog_destroy +EXPORT_SYMBOL_GPL vmlinux 0xe12bf765 irq_chip_set_type_parent +EXPORT_SYMBOL_GPL vmlinux 0xe1568554 scsi_dh_attached_handler_name +EXPORT_SYMBOL_GPL vmlinux 0xe166decd gfn_to_hva +EXPORT_SYMBOL_GPL vmlinux 0xe1775ee7 dm_get_reserved_bio_based_ios +EXPORT_SYMBOL_GPL vmlinux 0xe1c63523 blk_ksm_get_slot_idx +EXPORT_SYMBOL_GPL vmlinux 0xe1e8c004 gpiochip_set_nested_irqchip +EXPORT_SYMBOL_GPL vmlinux 0xe1f70387 pci_epc_destroy +EXPORT_SYMBOL_GPL vmlinux 0xe20bdede disk_part_iter_next +EXPORT_SYMBOL_GPL vmlinux 0xe20d9286 platform_get_resource +EXPORT_SYMBOL_GPL vmlinux 0xe2296705 __mmdrop +EXPORT_SYMBOL_GPL vmlinux 0xe233762a input_event_from_user +EXPORT_SYMBOL_GPL vmlinux 0xe26cb09f kernel_kobj +EXPORT_SYMBOL_GPL vmlinux 0xe2829f07 __cookie_v6_check +EXPORT_SYMBOL_GPL vmlinux 0xe29fdc52 skb_append_pagefrags +EXPORT_SYMBOL_GPL vmlinux 0xe2a2b375 crypto_unregister_rng +EXPORT_SYMBOL_GPL vmlinux 0xe2b15eef debugfs_create_dir +EXPORT_SYMBOL_GPL vmlinux 0xe2b3207a unregister_switchdev_notifier +EXPORT_SYMBOL_GPL vmlinux 0xe2dbdcac bus_sort_breadthfirst +EXPORT_SYMBOL_GPL vmlinux 0xe2fc784b serdev_device_write_flush +EXPORT_SYMBOL_GPL vmlinux 0xe3043ff9 request_any_context_irq +EXPORT_SYMBOL_GPL vmlinux 0xe307205a bprintf +EXPORT_SYMBOL_GPL vmlinux 0xe30a8a51 fat_scan +EXPORT_SYMBOL_GPL vmlinux 0xe30b1d7b trace_output_call +EXPORT_SYMBOL_GPL vmlinux 0xe317b273 list_lru_del +EXPORT_SYMBOL_GPL vmlinux 0xe32d6b13 __irq_domain_alloc_fwnode +EXPORT_SYMBOL_GPL vmlinux 0xe33d6915 ping_rcv +EXPORT_SYMBOL_GPL vmlinux 0xe395243d __srcu_notifier_call_chain +EXPORT_SYMBOL_GPL vmlinux 0xe3b09712 kprobe_event_delete +EXPORT_SYMBOL_GPL vmlinux 0xe3b3502b ping_getfrag +EXPORT_SYMBOL_GPL vmlinux 0xe3c005d3 iommu_capable +EXPORT_SYMBOL_GPL vmlinux 0xe3e0e70a rcu_read_unlock_trace_special +EXPORT_SYMBOL_GPL vmlinux 0xe3edc6b4 platform_device_add_properties +EXPORT_SYMBOL_GPL vmlinux 0xe3f7ff71 fib_add_nexthop +EXPORT_SYMBOL_GPL vmlinux 0xe40bb23e devlink_health_reporter_priv +EXPORT_SYMBOL_GPL vmlinux 0xe417bdd0 gpiochip_populate_parent_fwspec_twocell +EXPORT_SYMBOL_GPL vmlinux 0xe42b1d71 devlink_dpipe_table_register +EXPORT_SYMBOL_GPL vmlinux 0xe43f26e3 iommu_report_device_fault +EXPORT_SYMBOL_GPL vmlinux 0xe46e2d04 sock_diag_destroy +EXPORT_SYMBOL_GPL vmlinux 0xe4874aef __tracepoint_add_device_to_group +EXPORT_SYMBOL_GPL vmlinux 0xe4971ade tracing_alloc_snapshot +EXPORT_SYMBOL_GPL vmlinux 0xe4afc7bd dax_copy_to_iter +EXPORT_SYMBOL_GPL vmlinux 0xe4b064f9 pcie_link_speed +EXPORT_SYMBOL_GPL vmlinux 0xe4b90060 vfs_read +EXPORT_SYMBOL_GPL vmlinux 0xe4c4a433 debugfs_create_x32 +EXPORT_SYMBOL_GPL vmlinux 0xe5006936 security_inode_setattr +EXPORT_SYMBOL_GPL vmlinux 0xe50906af driver_remove_file +EXPORT_SYMBOL_GPL vmlinux 0xe51fd3a3 irq_domain_translate_twocell +EXPORT_SYMBOL_GPL vmlinux 0xe527e570 __page_mapcount +EXPORT_SYMBOL_GPL vmlinux 0xe53491ba devm_release_action +EXPORT_SYMBOL_GPL vmlinux 0xe54c5654 skb_mpls_pop +EXPORT_SYMBOL_GPL vmlinux 0xe55b5dbb dm_disk +EXPORT_SYMBOL_GPL vmlinux 0xe55e61f7 irq_domain_xlate_onetwocell +EXPORT_SYMBOL_GPL vmlinux 0xe57e7c41 nf_checksum +EXPORT_SYMBOL_GPL vmlinux 0xe5883bd9 class_compat_unregister +EXPORT_SYMBOL_GPL vmlinux 0xe5b3d695 netdev_rx_handler_unregister +EXPORT_SYMBOL_GPL vmlinux 0xe5c2c645 handle_fasteoi_irq +EXPORT_SYMBOL_GPL vmlinux 0xe5c7a355 sdev_evt_send_simple +EXPORT_SYMBOL_GPL vmlinux 0xe5c82ac6 devm_platform_ioremap_resource_byname +EXPORT_SYMBOL_GPL vmlinux 0xe5de6536 synth_event_add_val +EXPORT_SYMBOL_GPL vmlinux 0xe5e4b09f tcp_twsk_destructor +EXPORT_SYMBOL_GPL vmlinux 0xe5e6a3ee dev_nit_active +EXPORT_SYMBOL_GPL vmlinux 0xe5ed648d transport_class_unregister +EXPORT_SYMBOL_GPL vmlinux 0xe5f325aa ipv6_opt_accepted +EXPORT_SYMBOL_GPL vmlinux 0xe6092d5d tty_set_termios +EXPORT_SYMBOL_GPL vmlinux 0xe60a5e8d pids_cgrp_subsys_enabled_key +EXPORT_SYMBOL_GPL vmlinux 0xe60f1731 sched_setscheduler +EXPORT_SYMBOL_GPL vmlinux 0xe61740d7 virtqueue_get_buf_ctx +EXPORT_SYMBOL_GPL vmlinux 0xe618b3fa pci_epc_set_msi +EXPORT_SYMBOL_GPL vmlinux 0xe62937be scm_driver_register +EXPORT_SYMBOL_GPL vmlinux 0xe670fcce fscrypt_ioctl_get_key_status +EXPORT_SYMBOL_GPL vmlinux 0xe67436fa inet_send_prepare +EXPORT_SYMBOL_GPL vmlinux 0xe67af820 device_change_owner +EXPORT_SYMBOL_GPL vmlinux 0xe6a1cc4c klist_iter_init_node +EXPORT_SYMBOL_GPL vmlinux 0xe6b76655 fwnode_remove_software_node +EXPORT_SYMBOL_GPL vmlinux 0xe6e40502 rcu_get_gp_seq +EXPORT_SYMBOL_GPL vmlinux 0xe70e9546 pci_rescan_bus +EXPORT_SYMBOL_GPL vmlinux 0xe71e249e lwtunnel_encap_add_ops +EXPORT_SYMBOL_GPL vmlinux 0xe71fab74 get_net_ns_by_pid +EXPORT_SYMBOL_GPL vmlinux 0xe722b553 fsnotify +EXPORT_SYMBOL_GPL vmlinux 0xe72e844b __rht_bucket_nested +EXPORT_SYMBOL_GPL vmlinux 0xe7507474 kvm_put_kvm +EXPORT_SYMBOL_GPL vmlinux 0xe753b68d devlink_fmsg_arr_pair_nest_end +EXPORT_SYMBOL_GPL vmlinux 0xe75c1726 transport_setup_device +EXPORT_SYMBOL_GPL vmlinux 0xe75d4cb4 iommu_map_sg +EXPORT_SYMBOL_GPL vmlinux 0xe765bdc3 kvm_release_page_dirty +EXPORT_SYMBOL_GPL vmlinux 0xe769232e sprint_symbol_no_offset +EXPORT_SYMBOL_GPL vmlinux 0xe7833a5d blkdev_read_iter +EXPORT_SYMBOL_GPL vmlinux 0xe783e261 sysfs_emit +EXPORT_SYMBOL_GPL vmlinux 0xe79bf0c4 klp_shadow_get +EXPORT_SYMBOL_GPL vmlinux 0xe79ff4e4 device_add +EXPORT_SYMBOL_GPL vmlinux 0xe7aa099f devlink_param_driverinit_value_get +EXPORT_SYMBOL_GPL vmlinux 0xe7b718df chsc_determine_channel_path_desc +EXPORT_SYMBOL_GPL vmlinux 0xe7d0a160 inode_congested +EXPORT_SYMBOL_GPL vmlinux 0xe7d6d2d4 filter_match_preds +EXPORT_SYMBOL_GPL vmlinux 0xe7ffe877 pcpu_base_addr +EXPORT_SYMBOL_GPL vmlinux 0xe809cffb ring_buffer_time_stamp +EXPORT_SYMBOL_GPL vmlinux 0xe81a5991 xas_pause +EXPORT_SYMBOL_GPL vmlinux 0xe81ddad6 tracing_generic_entry_update +EXPORT_SYMBOL_GPL vmlinux 0xe827df03 crypto_register_templates +EXPORT_SYMBOL_GPL vmlinux 0xe8aa8c04 pci_cfg_access_lock +EXPORT_SYMBOL_GPL vmlinux 0xe8b40f33 __tracepoint_remove_device_from_group +EXPORT_SYMBOL_GPL vmlinux 0xe8d26425 ptp_classify_raw +EXPORT_SYMBOL_GPL vmlinux 0xe8e71802 virtqueue_add_outbuf +EXPORT_SYMBOL_GPL vmlinux 0xe91ba004 devlink_dpipe_table_resource_set +EXPORT_SYMBOL_GPL vmlinux 0xe93e49c3 devres_free +EXPORT_SYMBOL_GPL vmlinux 0xe94ed92a tpm_transmit_cmd +EXPORT_SYMBOL_GPL vmlinux 0xe956f135 scsi_check_sense +EXPORT_SYMBOL_GPL vmlinux 0xe958a87b seg6_do_srh_encap +EXPORT_SYMBOL_GPL vmlinux 0xe96c9e1f __kthread_should_park +EXPORT_SYMBOL_GPL vmlinux 0xe975e95a blk_freeze_queue_start +EXPORT_SYMBOL_GPL vmlinux 0xe978cdf5 sbitmap_prepare_to_wait +EXPORT_SYMBOL_GPL vmlinux 0xe984d6f2 crypto_rng_reset +EXPORT_SYMBOL_GPL vmlinux 0xe9a84f85 __platform_create_bundle +EXPORT_SYMBOL_GPL vmlinux 0xe9e9d46f pci_create_root_bus +EXPORT_SYMBOL_GPL vmlinux 0xea124bd1 gcd +EXPORT_SYMBOL_GPL vmlinux 0xea23874b pci_d3cold_enable +EXPORT_SYMBOL_GPL vmlinux 0xea2589a8 __wake_up_locked_sync_key +EXPORT_SYMBOL_GPL vmlinux 0xea291743 dst_cache_get_ip4 +EXPORT_SYMBOL_GPL vmlinux 0xea34615f nfnl_ct_hook +EXPORT_SYMBOL_GPL vmlinux 0xea38036f ring_buffer_entries +EXPORT_SYMBOL_GPL vmlinux 0xea52183e trace_event_buffer_reserve +EXPORT_SYMBOL_GPL vmlinux 0xeac7a9e9 list_lru_walk_node +EXPORT_SYMBOL_GPL vmlinux 0xead77419 vbin_printf +EXPORT_SYMBOL_GPL vmlinux 0xead80220 page_cache_async_readahead +EXPORT_SYMBOL_GPL vmlinux 0xeae0f496 clean_acked_data_flush +EXPORT_SYMBOL_GPL vmlinux 0xeae20d6b kvm_arch_crypto_clear_masks +EXPORT_SYMBOL_GPL vmlinux 0xeae5ea8b netdev_walk_all_lower_dev +EXPORT_SYMBOL_GPL vmlinux 0xeb382656 ncsi_vlan_rx_add_vid +EXPORT_SYMBOL_GPL vmlinux 0xeb398de6 kernfs_get +EXPORT_SYMBOL_GPL vmlinux 0xeb54bb49 ref_module +EXPORT_SYMBOL_GPL vmlinux 0xeb6aaf36 kernel_read_file_from_path_initns +EXPORT_SYMBOL_GPL vmlinux 0xeb7219b8 fb_deferred_io_fsync +EXPORT_SYMBOL_GPL vmlinux 0xeb73837d crypto_stats_get +EXPORT_SYMBOL_GPL vmlinux 0xeb907eeb __irq_alloc_descs +EXPORT_SYMBOL_GPL vmlinux 0xeb938634 tcp_unregister_congestion_control +EXPORT_SYMBOL_GPL vmlinux 0xebb66f48 crypto_stats_kpp_compute_shared_secret +EXPORT_SYMBOL_GPL vmlinux 0xebbae2ba platform_device_put +EXPORT_SYMBOL_GPL vmlinux 0xebd011c2 gpiochip_irq_unmap +EXPORT_SYMBOL_GPL vmlinux 0xebeab419 ping_recvmsg +EXPORT_SYMBOL_GPL vmlinux 0xec0a8cfb show_class_attr_string +EXPORT_SYMBOL_GPL vmlinux 0xec13c83c si_swapinfo +EXPORT_SYMBOL_GPL vmlinux 0xec1de755 dw_pcie_ep_init_notify +EXPORT_SYMBOL_GPL vmlinux 0xec393e51 md_do_sync +EXPORT_SYMBOL_GPL vmlinux 0xec3e7826 device_match_of_node +EXPORT_SYMBOL_GPL vmlinux 0xec480f6c tcp_get_syncookie_mss +EXPORT_SYMBOL_GPL vmlinux 0xec4f0a56 scsi_free_sgtables +EXPORT_SYMBOL_GPL vmlinux 0xec660cd3 __tracepoint_fib6_table_lookup +EXPORT_SYMBOL_GPL vmlinux 0xec7b8822 inet6_destroy_sock +EXPORT_SYMBOL_GPL vmlinux 0xece1605a __fput_sync +EXPORT_SYMBOL_GPL vmlinux 0xece38951 __fscrypt_prepare_lookup +EXPORT_SYMBOL_GPL vmlinux 0xece52418 perf_pmu_migrate_context +EXPORT_SYMBOL_GPL vmlinux 0xececead3 inet_hashinfo_init +EXPORT_SYMBOL_GPL vmlinux 0xed2243af ftrace_set_notrace +EXPORT_SYMBOL_GPL vmlinux 0xed2eff8f find_asymmetric_key +EXPORT_SYMBOL_GPL vmlinux 0xed37705d devlink_dpipe_entry_ctx_append +EXPORT_SYMBOL_GPL vmlinux 0xed48a163 __zpci_store_block +EXPORT_SYMBOL_GPL vmlinux 0xed8007df device_create +EXPORT_SYMBOL_GPL vmlinux 0xed953011 fuse_dev_operations +EXPORT_SYMBOL_GPL vmlinux 0xedb68683 pci_ignore_hotplug +EXPORT_SYMBOL_GPL vmlinux 0xedbd65ff device_rename +EXPORT_SYMBOL_GPL vmlinux 0xedc5e45d sched_show_task +EXPORT_SYMBOL_GPL vmlinux 0xede6413a aead_init_geniv +EXPORT_SYMBOL_GPL vmlinux 0xedef5344 skb_cow_data +EXPORT_SYMBOL_GPL vmlinux 0xedf55abb zs_malloc +EXPORT_SYMBOL_GPL vmlinux 0xee118c21 xfrm_dev_offload_ok +EXPORT_SYMBOL_GPL vmlinux 0xee2d4c55 fuse_dev_release +EXPORT_SYMBOL_GPL vmlinux 0xee38ef57 register_switchdev_blocking_notifier +EXPORT_SYMBOL_GPL vmlinux 0xee5ef072 dma_resv_wait_timeout_rcu +EXPORT_SYMBOL_GPL vmlinux 0xee6c633a devices_cgrp_subsys_on_dfl_key +EXPORT_SYMBOL_GPL vmlinux 0xee7d0f10 rhashtable_walk_exit +EXPORT_SYMBOL_GPL vmlinux 0xee969b0c inet_csk_compat_setsockopt +EXPORT_SYMBOL_GPL vmlinux 0xee9a3023 lwtunnel_input +EXPORT_SYMBOL_GPL vmlinux 0xee9ab4b2 security_path_symlink +EXPORT_SYMBOL_GPL vmlinux 0xeea834c0 kprobe_event_cmd_init +EXPORT_SYMBOL_GPL vmlinux 0xeeb765a2 tpm_put_ops +EXPORT_SYMBOL_GPL vmlinux 0xeebd8fff gmap_get +EXPORT_SYMBOL_GPL vmlinux 0xeec0b37a inet_csk_compat_getsockopt +EXPORT_SYMBOL_GPL vmlinux 0xeecf1627 fsnotify_put_mark +EXPORT_SYMBOL_GPL vmlinux 0xeedfcec3 task_work_run +EXPORT_SYMBOL_GPL vmlinux 0xeef5824f device_link_remove +EXPORT_SYMBOL_GPL vmlinux 0xeeffcc4e sched_trace_rd_span +EXPORT_SYMBOL_GPL vmlinux 0xeeffedbb pcie_flr +EXPORT_SYMBOL_GPL vmlinux 0xef13106c nr_threads +EXPORT_SYMBOL_GPL vmlinux 0xef181c0b gpiochip_remove +EXPORT_SYMBOL_GPL vmlinux 0xef34c21e crypto_unregister_template +EXPORT_SYMBOL_GPL vmlinux 0xef3e5727 netlink_has_listeners +EXPORT_SYMBOL_GPL vmlinux 0xef447bfe kvm_vcpu_write_guest +EXPORT_SYMBOL_GPL vmlinux 0xef464c28 getboottime64 +EXPORT_SYMBOL_GPL vmlinux 0xef6c3f70 round_jiffies_up_relative +EXPORT_SYMBOL_GPL vmlinux 0xef70eb7e ring_buffer_iter_advance +EXPORT_SYMBOL_GPL vmlinux 0xef8abe08 devlink_sb_unregister +EXPORT_SYMBOL_GPL vmlinux 0xef8c6ed1 xfrm_audit_policy_delete +EXPORT_SYMBOL_GPL vmlinux 0xefa2c27d register_tracepoint_module_notifier +EXPORT_SYMBOL_GPL vmlinux 0xefb4c963 crypto_unregister_ahashes +EXPORT_SYMBOL_GPL vmlinux 0xefc991e3 ahash_register_instance +EXPORT_SYMBOL_GPL vmlinux 0xefd1961e pingv6_ops +EXPORT_SYMBOL_GPL vmlinux 0xf000abf6 alarm_cancel +EXPORT_SYMBOL_GPL vmlinux 0xf0079bcf scsi_host_complete_all_commands +EXPORT_SYMBOL_GPL vmlinux 0xf012b334 kvm_unmap_gfn +EXPORT_SYMBOL_GPL vmlinux 0xf042253f kernel_read_file +EXPORT_SYMBOL_GPL vmlinux 0xf04f2851 sock_diag_save_cookie +EXPORT_SYMBOL_GPL vmlinux 0xf051aff3 sk_msg_clone +EXPORT_SYMBOL_GPL vmlinux 0xf053e6e7 crypto_drop_spawn +EXPORT_SYMBOL_GPL vmlinux 0xf0574346 __list_lru_init +EXPORT_SYMBOL_GPL vmlinux 0xf05e3c0c devm_kmalloc +EXPORT_SYMBOL_GPL vmlinux 0xf0910075 sfp_bus_del_upstream +EXPORT_SYMBOL_GPL vmlinux 0xf0c2f017 dst_cache_get +EXPORT_SYMBOL_GPL vmlinux 0xf0c69634 is_software_node +EXPORT_SYMBOL_GPL vmlinux 0xf0eb1ce1 fib_nexthop_info +EXPORT_SYMBOL_GPL vmlinux 0xf0ebb7fc cmf_read +EXPORT_SYMBOL_GPL vmlinux 0xf0efff25 key_type_encrypted +EXPORT_SYMBOL_GPL vmlinux 0xf0f2d8f1 software_node_unregister_nodes +EXPORT_SYMBOL_GPL vmlinux 0xf0fc9839 kvm_vcpu_destroy +EXPORT_SYMBOL_GPL vmlinux 0xf116f1da kobject_uevent_env +EXPORT_SYMBOL_GPL vmlinux 0xf11929ef subsys_interface_register +EXPORT_SYMBOL_GPL vmlinux 0xf130e47e vring_new_virtqueue +EXPORT_SYMBOL_GPL vmlinux 0xf1361941 pci_vpd_find_tag +EXPORT_SYMBOL_GPL vmlinux 0xf184d189 kernel_power_off +EXPORT_SYMBOL_GPL vmlinux 0xf18dde73 ipv6_bpf_stub +EXPORT_SYMBOL_GPL vmlinux 0xf1b31314 delayacct_on +EXPORT_SYMBOL_GPL vmlinux 0xf1d2d358 crypto_aead_decrypt +EXPORT_SYMBOL_GPL vmlinux 0xf1e0074e screen_glyph_unicode +EXPORT_SYMBOL_GPL vmlinux 0xf1e77144 tty_ldisc_flush +EXPORT_SYMBOL_GPL vmlinux 0xf1ebcc47 disk_part_iter_init +EXPORT_SYMBOL_GPL vmlinux 0xf1f86f11 d_exchange +EXPORT_SYMBOL_GPL vmlinux 0xf207acea scsi_device_from_queue +EXPORT_SYMBOL_GPL vmlinux 0xf21e1f9b disable_percpu_irq +EXPORT_SYMBOL_GPL vmlinux 0xf2368787 irqchip_fwnode_ops +EXPORT_SYMBOL_GPL vmlinux 0xf260eaf0 __kvm_set_memory_region +EXPORT_SYMBOL_GPL vmlinux 0xf27e5551 mmu_interval_notifier_insert +EXPORT_SYMBOL_GPL vmlinux 0xf29094c9 pci_probe_reset_slot +EXPORT_SYMBOL_GPL vmlinux 0xf2967796 ring_buffer_record_on +EXPORT_SYMBOL_GPL vmlinux 0xf2a5f475 sock_zerocopy_realloc +EXPORT_SYMBOL_GPL vmlinux 0xf2b33cb7 memory_cgrp_subsys_on_dfl_key +EXPORT_SYMBOL_GPL vmlinux 0xf2ccfb00 unregister_virtio_device +EXPORT_SYMBOL_GPL vmlinux 0xf2e3bc22 key_type_asymmetric +EXPORT_SYMBOL_GPL vmlinux 0xf311e156 key_being_used_for +EXPORT_SYMBOL_GPL vmlinux 0xf31b3fd1 workqueue_set_max_active +EXPORT_SYMBOL_GPL vmlinux 0xf34a926f posix_acl_access_xattr_handler +EXPORT_SYMBOL_GPL vmlinux 0xf352023f memory_cgrp_subsys_enabled_key +EXPORT_SYMBOL_GPL vmlinux 0xf352a611 cio_cancel +EXPORT_SYMBOL_GPL vmlinux 0xf353e135 gmap_create +EXPORT_SYMBOL_GPL vmlinux 0xf35abe8a __devm_pci_epc_create +EXPORT_SYMBOL_GPL vmlinux 0xf36e0ec8 kvm_clear_guest_page +EXPORT_SYMBOL_GPL vmlinux 0xf37d5905 gpiod_set_raw_value_cansleep +EXPORT_SYMBOL_GPL vmlinux 0xf3808cb1 get_state_synchronize_rcu +EXPORT_SYMBOL_GPL vmlinux 0xf39469c8 sysfs_remove_link +EXPORT_SYMBOL_GPL vmlinux 0xf4082b9b iommu_unmap_fast +EXPORT_SYMBOL_GPL vmlinux 0xf42a073b inet_csk_reqsk_queue_hash_add +EXPORT_SYMBOL_GPL vmlinux 0xf42c7a33 mm_kobj +EXPORT_SYMBOL_GPL vmlinux 0xf4605ff9 __dax_driver_register +EXPORT_SYMBOL_GPL vmlinux 0xf47c23e3 fwnode_graph_get_remote_endpoint +EXPORT_SYMBOL_GPL vmlinux 0xf47f3138 sk_msg_return_zero +EXPORT_SYMBOL_GPL vmlinux 0xf480961f devres_remove +EXPORT_SYMBOL_GPL vmlinux 0xf481aea7 serdev_device_write_wakeup +EXPORT_SYMBOL_GPL vmlinux 0xf485d7a6 ring_buffer_swap_cpu +EXPORT_SYMBOL_GPL vmlinux 0xf488a0ca bsg_unregister_queue +EXPORT_SYMBOL_GPL vmlinux 0xf48c843e debugfs_print_regs32 +EXPORT_SYMBOL_GPL vmlinux 0xf4a1f400 lwtunnel_state_alloc +EXPORT_SYMBOL_GPL vmlinux 0xf4a2397c simple_attr_release +EXPORT_SYMBOL_GPL vmlinux 0xf4af35c2 rcu_gp_is_normal +EXPORT_SYMBOL_GPL vmlinux 0xf4b5d18c devlink_port_type_ib_set +EXPORT_SYMBOL_GPL vmlinux 0xf4c52599 blk_rq_prep_clone +EXPORT_SYMBOL_GPL vmlinux 0xf4da71b3 public_key_verify_signature +EXPORT_SYMBOL_GPL vmlinux 0xf4ef4f51 pci_epc_set_msix +EXPORT_SYMBOL_GPL vmlinux 0xf5075f72 device_property_present +EXPORT_SYMBOL_GPL vmlinux 0xf5093d90 key_set_timeout +EXPORT_SYMBOL_GPL vmlinux 0xf5210a78 platform_device_add_data +EXPORT_SYMBOL_GPL vmlinux 0xf535be17 iomap_dio_iopoll +EXPORT_SYMBOL_GPL vmlinux 0xf53d9663 pci_restore_msi_state +EXPORT_SYMBOL_GPL vmlinux 0xf544d9c8 locks_alloc_lock +EXPORT_SYMBOL_GPL vmlinux 0xf5455e68 blk_mq_freeze_queue_wait_timeout +EXPORT_SYMBOL_GPL vmlinux 0xf54bd49b lcm +EXPORT_SYMBOL_GPL vmlinux 0xf568bc71 __atomic_notifier_call_chain +EXPORT_SYMBOL_GPL vmlinux 0xf585c4f7 perf_event_pause +EXPORT_SYMBOL_GPL vmlinux 0xf597a92d bio_associate_blkg_from_css +EXPORT_SYMBOL_GPL vmlinux 0xf5a691cd invalidate_bh_lrus +EXPORT_SYMBOL_GPL vmlinux 0xf5bd0fda gpiochip_add_data_with_key +EXPORT_SYMBOL_GPL vmlinux 0xf5d7eb5a register_ftrace_export +EXPORT_SYMBOL_GPL vmlinux 0xf5dbfea4 kstrdup_quotable_file +EXPORT_SYMBOL_GPL vmlinux 0xf5e8f186 ccw_device_get_chp_desc +EXPORT_SYMBOL_GPL vmlinux 0xf5edb8e9 crypto_unregister_ahash +EXPORT_SYMBOL_GPL vmlinux 0xf5f370e0 async_schedule_node +EXPORT_SYMBOL_GPL vmlinux 0xf5fdaac9 register_kprobe +EXPORT_SYMBOL_GPL vmlinux 0xf6054fbf kvm_arch_crypto_set_masks +EXPORT_SYMBOL_GPL vmlinux 0xf6298cf2 device_property_read_u8_array +EXPORT_SYMBOL_GPL vmlinux 0xf63027f3 gpiod_direction_output_raw +EXPORT_SYMBOL_GPL vmlinux 0xf63ec698 xfrm_output +EXPORT_SYMBOL_GPL vmlinux 0xf65461f8 lwtunnel_valid_encap_type_attr +EXPORT_SYMBOL_GPL vmlinux 0xf657be8f __iowrite32_copy +EXPORT_SYMBOL_GPL vmlinux 0xf6655a27 skb_splice_bits +EXPORT_SYMBOL_GPL vmlinux 0xf682afe8 __rtnl_link_unregister +EXPORT_SYMBOL_GPL vmlinux 0xf687044e gmap_enable +EXPORT_SYMBOL_GPL vmlinux 0xf694cacd pci_epc_mem_init +EXPORT_SYMBOL_GPL vmlinux 0xf69e3a25 put_pid_ns +EXPORT_SYMBOL_GPL vmlinux 0xf6b7e0a4 irq_find_mapping +EXPORT_SYMBOL_GPL vmlinux 0xf6c8dc62 cpu_hotplug_enable +EXPORT_SYMBOL_GPL vmlinux 0xf6f16c56 rcu_barrier_tasks +EXPORT_SYMBOL_GPL vmlinux 0xf6f1e250 register_kretprobes +EXPORT_SYMBOL_GPL vmlinux 0xf725c62f subsys_dev_iter_init +EXPORT_SYMBOL_GPL vmlinux 0xf7370a4f synth_event_create +EXPORT_SYMBOL_GPL vmlinux 0xf738dc92 __mnt_drop_write +EXPORT_SYMBOL_GPL vmlinux 0xf7455c16 input_event_to_user +EXPORT_SYMBOL_GPL vmlinux 0xf749debc md5_zero_message_hash +EXPORT_SYMBOL_GPL vmlinux 0xf74bb274 mod_delayed_work_on +EXPORT_SYMBOL_GPL vmlinux 0xf74e7c93 jump_label_rate_limit +EXPORT_SYMBOL_GPL vmlinux 0xf75b7a41 __pci_epc_create +EXPORT_SYMBOL_GPL vmlinux 0xf77b74df pci_set_cacheline_size +EXPORT_SYMBOL_GPL vmlinux 0xf78def39 skb_mpls_dec_ttl +EXPORT_SYMBOL_GPL vmlinux 0xf7951499 ping_seq_stop +EXPORT_SYMBOL_GPL vmlinux 0xf7a44fb2 device_property_read_u64_array +EXPORT_SYMBOL_GPL vmlinux 0xf7af0549 iommu_device_sysfs_add +EXPORT_SYMBOL_GPL vmlinux 0xf7bc95b0 devlink_fmsg_pair_nest_start +EXPORT_SYMBOL_GPL vmlinux 0xf7c3d54f bpf_trace_run3 +EXPORT_SYMBOL_GPL vmlinux 0xf7d1756f apply_to_existing_page_range +EXPORT_SYMBOL_GPL vmlinux 0xf7dddeb0 gfn_to_page_many_atomic +EXPORT_SYMBOL_GPL vmlinux 0xf7e04fa6 __bio_try_merge_page +EXPORT_SYMBOL_GPL vmlinux 0xf7e8b288 klist_iter_init +EXPORT_SYMBOL_GPL vmlinux 0xf80ee2fe gpiod_get_index_optional +EXPORT_SYMBOL_GPL vmlinux 0xf821d52d blk_ksm_reprogram_all_keys +EXPORT_SYMBOL_GPL vmlinux 0xf824f568 sock_zerocopy_put_abort +EXPORT_SYMBOL_GPL vmlinux 0xf82d7162 tty_buffer_request_room +EXPORT_SYMBOL_GPL vmlinux 0xf82f3657 work_on_cpu +EXPORT_SYMBOL_GPL vmlinux 0xf834c26d housekeeping_test_cpu +EXPORT_SYMBOL_GPL vmlinux 0xf855ccce __zpci_store +EXPORT_SYMBOL_GPL vmlinux 0xf861f527 register_virtio_driver +EXPORT_SYMBOL_GPL vmlinux 0xf869295d switchdev_handle_port_obj_del +EXPORT_SYMBOL_GPL vmlinux 0xf8754732 device_connection_find +EXPORT_SYMBOL_GPL vmlinux 0xf880cf6b sk_psock_destroy +EXPORT_SYMBOL_GPL vmlinux 0xf8b6a67c devlink_params_publish +EXPORT_SYMBOL_GPL vmlinux 0xf8be840b hrtimer_active +EXPORT_SYMBOL_GPL vmlinux 0xf8c6d5c6 unix_outq_len +EXPORT_SYMBOL_GPL vmlinux 0xf8cbc4c4 debugfs_create_u16 +EXPORT_SYMBOL_GPL vmlinux 0xf8eef63d pci_epc_stop +EXPORT_SYMBOL_GPL vmlinux 0xf8f2bfdd vfs_test_lock +EXPORT_SYMBOL_GPL vmlinux 0xf905e758 sk_setup_caps +EXPORT_SYMBOL_GPL vmlinux 0xf91ab2ed __tracepoint_arm_event +EXPORT_SYMBOL_GPL vmlinux 0xf932015f __raw_notifier_call_chain +EXPORT_SYMBOL_GPL vmlinux 0xf9361dfa dm_get_queue_limits +EXPORT_SYMBOL_GPL vmlinux 0xf95322f4 kthread_parkme +EXPORT_SYMBOL_GPL vmlinux 0xf9a0021f __xas_next +EXPORT_SYMBOL_GPL vmlinux 0xf9a054b5 __round_jiffies +EXPORT_SYMBOL_GPL vmlinux 0xf9b0336f dev_forward_skb +EXPORT_SYMBOL_GPL vmlinux 0xf9bed445 iomap_bmap +EXPORT_SYMBOL_GPL vmlinux 0xf9daa40e devlink_dpipe_entry_ctx_close +EXPORT_SYMBOL_GPL vmlinux 0xf9e936c5 device_unregister +EXPORT_SYMBOL_GPL vmlinux 0xfa18694e dma_buf_put +EXPORT_SYMBOL_GPL vmlinux 0xfa1eb910 unregister_syscore_ops +EXPORT_SYMBOL_GPL vmlinux 0xfa37e6b1 bdev_disk_changed +EXPORT_SYMBOL_GPL vmlinux 0xfa602e79 devlink_port_register +EXPORT_SYMBOL_GPL vmlinux 0xfa6276d4 sg_scsi_ioctl +EXPORT_SYMBOL_GPL vmlinux 0xfa666974 queue_work_node +EXPORT_SYMBOL_GPL vmlinux 0xfa690589 netdev_cmd_to_name +EXPORT_SYMBOL_GPL vmlinux 0xfa8683ac console_drivers +EXPORT_SYMBOL_GPL vmlinux 0xfa89d2e4 gpiod_get_raw_value +EXPORT_SYMBOL_GPL vmlinux 0xfa974d15 sysfs_chmod_file +EXPORT_SYMBOL_GPL vmlinux 0xfa9993f3 ping_unhash +EXPORT_SYMBOL_GPL vmlinux 0xfad474f7 devlink_port_attrs_set +EXPORT_SYMBOL_GPL vmlinux 0xfad9c827 kill_dax +EXPORT_SYMBOL_GPL vmlinux 0xfaea4179 md_bitmap_copy_from_slot +EXPORT_SYMBOL_GPL vmlinux 0xfaeb86ff irq_find_matching_fwspec +EXPORT_SYMBOL_GPL vmlinux 0xfafc355d strp_data_ready +EXPORT_SYMBOL_GPL vmlinux 0xfafce6a2 sock_diag_unregister +EXPORT_SYMBOL_GPL vmlinux 0xfb062e51 blkdev_report_zones +EXPORT_SYMBOL_GPL vmlinux 0xfb19f7d4 unregister_pernet_device +EXPORT_SYMBOL_GPL vmlinux 0xfb20e9fd tcp_cong_avoid_ai +EXPORT_SYMBOL_GPL vmlinux 0xfb2bb52b fsnotify_find_mark +EXPORT_SYMBOL_GPL vmlinux 0xfb2d89f3 compat_only_sysfs_link_entry_to_kobj +EXPORT_SYMBOL_GPL vmlinux 0xfb32b30f ring_buffer_read_prepare_sync +EXPORT_SYMBOL_GPL vmlinux 0xfb3dfe8a page_reporting_unregister +EXPORT_SYMBOL_GPL vmlinux 0xfb515460 fscrypt_ioctl_get_policy_ex +EXPORT_SYMBOL_GPL vmlinux 0xfb5d9620 inet_unhash +EXPORT_SYMBOL_GPL vmlinux 0xfb68989b alloc_skb_for_msg +EXPORT_SYMBOL_GPL vmlinux 0xfbb15733 blk_queue_rq_timeout +EXPORT_SYMBOL_GPL vmlinux 0xfbbd41ca no_action +EXPORT_SYMBOL_GPL vmlinux 0xfbffd601 net_prio_cgrp_subsys_on_dfl_key +EXPORT_SYMBOL_GPL vmlinux 0xfc03d97a page_is_ram +EXPORT_SYMBOL_GPL vmlinux 0xfc053f9f gpiod_get_optional +EXPORT_SYMBOL_GPL vmlinux 0xfc14bb2e dm_get_dev_t +EXPORT_SYMBOL_GPL vmlinux 0xfc16b284 fib_rule_matchall +EXPORT_SYMBOL_GPL vmlinux 0xfc19bc45 crypto_dh_encode_key +EXPORT_SYMBOL_GPL vmlinux 0xfc1c7cba get_kernel_page +EXPORT_SYMBOL_GPL vmlinux 0xfc3002c0 class_for_each_device +EXPORT_SYMBOL_GPL vmlinux 0xfc391f3b pci_generic_config_write +EXPORT_SYMBOL_GPL vmlinux 0xfc5e0ac9 xfrm_output_resume +EXPORT_SYMBOL_GPL vmlinux 0xfc762330 bpf_map_put +EXPORT_SYMBOL_GPL vmlinux 0xfc88a37c iommu_dev_disable_feature +EXPORT_SYMBOL_GPL vmlinux 0xfc8db919 mutex_lock_io +EXPORT_SYMBOL_GPL vmlinux 0xfc9ec317 crypto_alloc_kpp +EXPORT_SYMBOL_GPL vmlinux 0xfca15601 find_extend_vma +EXPORT_SYMBOL_GPL vmlinux 0xfcb7d916 blk_mq_debugfs_rq_show +EXPORT_SYMBOL_GPL vmlinux 0xfcbdeee3 perf_tp_event +EXPORT_SYMBOL_GPL vmlinux 0xfcc1edd3 memory_block_size_bytes +EXPORT_SYMBOL_GPL vmlinux 0xfcf50cbe iommu_cache_invalidate +EXPORT_SYMBOL_GPL vmlinux 0xfd2a481e lzorle1x_1_compress +EXPORT_SYMBOL_GPL vmlinux 0xfd42b023 ip_route_output_tunnel +EXPORT_SYMBOL_GPL vmlinux 0xfd60dfc0 fib6_get_table +EXPORT_SYMBOL_GPL vmlinux 0xfd8ccc73 page_cache_readahead_unbounded +EXPORT_SYMBOL_GPL vmlinux 0xfda19664 irq_chip_set_affinity_parent +EXPORT_SYMBOL_GPL vmlinux 0xfdb075d0 input_ff_destroy +EXPORT_SYMBOL_GPL vmlinux 0xfdbc75c6 find_get_pid +EXPORT_SYMBOL_GPL vmlinux 0xfdbd7a17 crypto_get_attr_type +EXPORT_SYMBOL_GPL vmlinux 0xfdd1ed7d iommu_register_device_fault_handler +EXPORT_SYMBOL_GPL vmlinux 0xfdf637af dm_table_device_name +EXPORT_SYMBOL_GPL vmlinux 0xfe2c61cf pci_epf_alloc_space +EXPORT_SYMBOL_GPL vmlinux 0xfe2e9565 __sock_recv_ts_and_drops +EXPORT_SYMBOL_GPL vmlinux 0xfe31c6a4 __tracepoint_block_bio_complete +EXPORT_SYMBOL_GPL vmlinux 0xfe39a9c6 badblocks_show +EXPORT_SYMBOL_GPL vmlinux 0xfe3b05c7 sysfs_create_link +EXPORT_SYMBOL_GPL vmlinux 0xfe3b11eb tcp_orphan_count +EXPORT_SYMBOL_GPL vmlinux 0xfe476039 ktime_get_resolution_ns +EXPORT_SYMBOL_GPL vmlinux 0xfe5574a0 pci_epc_mem_exit +EXPORT_SYMBOL_GPL vmlinux 0xfe69325f percpu_ref_resurrect +EXPORT_SYMBOL_GPL vmlinux 0xfe8cdb84 ring_buffer_alloc_read_page +EXPORT_SYMBOL_GPL vmlinux 0xfe990052 gpio_free +EXPORT_SYMBOL_GPL vmlinux 0xfed1e88e __audit_inode_child +EXPORT_SYMBOL_GPL vmlinux 0xfeddeac3 device_remove_properties +EXPORT_SYMBOL_GPL vmlinux 0xfefa2adb input_ff_effect_from_user +EXPORT_SYMBOL_GPL vmlinux 0xff05fa13 vring_interrupt +EXPORT_SYMBOL_GPL vmlinux 0xff061622 irq_chip_set_wake_parent +EXPORT_SYMBOL_GPL vmlinux 0xff13d8c6 irq_set_affinity_hint +EXPORT_SYMBOL_GPL vmlinux 0xff31e2c2 debugfs_attr_write +EXPORT_SYMBOL_GPL vmlinux 0xff403774 region_intersects +EXPORT_SYMBOL_GPL vmlinux 0xff5a8cfe cn_del_callback +EXPORT_SYMBOL_GPL vmlinux 0xff5d068e __vfs_setxattr_locked +EXPORT_SYMBOL_GPL vmlinux 0xff6f7f3d disable_kprobe +EXPORT_SYMBOL_GPL vmlinux 0xff7c07df trace_seq_path +EXPORT_SYMBOL_GPL vmlinux 0xff81487d gpiod_remove_lookup_table +EXPORT_SYMBOL_GPL vmlinux 0xff853d0a sk_msg_free_partial +EXPORT_SYMBOL_GPL vmlinux 0xff9e23d1 hugetlb_cgrp_subsys_on_dfl_key +EXPORT_SYMBOL_GPL vmlinux 0xff9e5998 crypto_unregister_shash +EXPORT_SYMBOL_GPL vmlinux 0xffa0db20 __ndisc_fill_addr_option +EXPORT_SYMBOL_GPL vmlinux 0xffae8e8b nsecs_to_jiffies +EXPORT_SYMBOL_GPL vmlinux 0xffcdc4a9 tod_clock_base +FIRMWARE_LOADER_PRIVATE EXPORT_SYMBOL_GPL 0xd3ae7756 fw_fallback_config vmlinux --- linux-azure-5.8-5.8.0.orig/debian.master/abi/5.8.0-50.56/s390x/generic.compiler +++ linux-azure-5.8-5.8.0/debian.master/abi/5.8.0-50.56/s390x/generic.compiler @@ -0,0 +1 @@ +GCC: (Ubuntu 10.2.0-13ubuntu1) 10.2.0 --- linux-azure-5.8-5.8.0.orig/debian.master/abi/5.8.0-50.56/s390x/generic.modules +++ linux-azure-5.8-5.8.0/debian.master/abi/5.8.0-50.56/s390x/generic.modules @@ -0,0 +1,993 @@ +8021q +842 +842_compress +842_decompress +9p +9pnet +9pnet_rdma +9pnet_virtio +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 +adiantum +adin +aegis128 +aes_s390 +aes_ti +af_alg +af_iucv +af_key +af_packet_diag +ah4 +ah6 +algif_aead +algif_hash +algif_rng +algif_skcipher +altera-cvp +altera-pr-ip-core +amd +amlogic-gxl-crypto +ansi_cprng +anubis +appldata_mem +appldata_net_sum +appldata_os +aquantia +arc4 +arp_tables +arpt_mangle +arptable_filter +asym_tpm +async_memcpy +async_pq +async_raid6_recov +async_tx +async_xor +aufs +auth_rpcgss +authenc +authencesn +bcache +bcm-phy-lib +bcm54140 +bcm7xxx +bcm87xx +bfq +binfmt_misc +blake2b_generic +blake2s_generic +blocklayoutdriver +blowfish_common +blowfish_generic +bochs-drm +bonding +bpfilter +br_netfilter +brd +bridge +broadcom +btrfs +cachefiles +camellia_generic +cast5_generic +cast6_generic +cast_common +ccm +ccwgroup +ceph +cfb +cfbcopyarea +cfbfillrect +cfbimgblt +ch +chacha20poly1305 +chacha_generic +chsc_sch +cicada +cifs +cls_basic +cls_bpf +cls_cgroup +cls_flow +cls_flower +cls_fw +cls_matchall +cls_route +cls_rsvp +cls_rsvp6 +cls_tcindex +cls_u32 +cmac +coda +cordic +cortina +crc-itu-t +crc32-vx_s390 +crc32_generic +crc4 +crc64 +crc7 +crc8 +cryptd +crypto_engine +crypto_user +ctcm +curve25519-generic +cuse +dasd_diag_mod +dasd_eckd_mod +dasd_fba_mod +dasd_mod +davicom +dccp +dccp_diag +dccp_ipv4 +dccp_ipv6 +dcssblk +deflate +des_generic +des_s390 +device_dax +diag +diag288_wdt +dlm +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-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 +dp83640 +dp83822 +dp83848 +dp83867 +dp83869 +dp83tc811 +drbd +drm +drm_kms_helper +drm_panel_orientation_quirks +drm_ttm_helper +drm_vram_helper +dummy +dummy_stm +dwc-xlgmac +eadm_sch +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 +ecc +ecdh_generic +echainiv +ecrdsa_generic +em_cmp +em_ipset +em_ipt +em_meta +em_nbyte +em_text +em_u32 +eql +erofs +esp4 +esp4_offload +esp6 +esp6_offload +essiv +et1011c +failover +faulty +fb_sys_fops +fcoe +fcrypt +fixed_phy +fou +fou6 +fpga-mgr +fs3270 +fscache +fsm +garp +geneve +genwqe_card +gfs2 +ghash_s390 +gpio-aggregator +gpio-bt8xx +gpio-generic +gpio-pci-idio-16 +gpio-pcie-idio-24 +grace +gre +gtp +hangcheck-timer +hmcdrv +i2c-algo-bit +i2c-core +i2c-dev +i2c-mux +i2c-stub +ib_cm +ib_core +ib_ipoib +ib_iser +ib_isert +ib_mthca +ib_srp +ib_srpt +ib_umad +ib_uverbs +icp +icplus +ifb +ife +ila +inet_diag +intel-xway +intel_th +intel_th_gth +intel_th_msu +intel_th_msu_sink +intel_th_pci +intel_th_pti +intel_th_sth +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_wlc +ip_vs_wrr +ip_vti +ipcomp +ipcomp6 +ipip +ipt_CLUSTERIP +ipt_ECN +ipt_REJECT +ipt_SYNPROXY +ipt_ah +ipt_rpfilter +iptable_filter +iptable_mangle +iptable_nat +iptable_raw +iptable_security +ipvlan +ipvtap +irqbypass +iscsi_boot_sysfs +iscsi_target_mod +iscsi_tcp +ism +isofs +iw_cm +kafs +kcm +keywrap +khazad +kheaders +kmem +kyber-iosched +l2tp_core +l2tp_debugfs +l2tp_eth +l2tp_ip +l2tp_ip6 +l2tp_netlink +lcs +libarc4 +libblake2s +libblake2s-generic +libceph +libchacha +libchacha20poly1305 +libcrc32c +libcurve25519 +libcurve25519-generic +libdes +libfc +libfcoe +libiscsi +libiscsi_tcp +libphy +libpoly1305 +libsas +linear +llc +lockd +lru_cache +lrw +lxt +lz4 +lz4_compress +lz4hc +lz4hc_compress +mac-celtic +mac-centeuro +mac-croatian +mac-cyrillic +mac-gaelic +mac-greek +mac-iceland +mac-inuit +mac-roman +mac-romanian +mac-turkish +macsec +macvlan +macvtap +marvell +marvell10g +md-cluster +md4 +mdev +mdio-i2c +memory-notifier-error-inject +mena21_wdt +michael_mic +micrel +microchip +microchip_t1 +mip6 +mlx4_core +mlx4_en +mlx4_ib +mlx5_core +mlx5_ib +mlxfw +mlxsw_core +mlxsw_pci +mlxsw_spectrum +mlxsw_switchib +mlxsw_switchx2 +monreader +monwriter +mpls_gso +mpls_iptunnel +mpls_router +mpt3sas +mrp +mscc +msdos +national +nb8800 +nbd +net_failover +netconsole +netdevsim +netiucv +netlink_diag +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_flow_table_ipv4 +nf_flow_table_ipv6 +nf_log_arp +nf_log_bridge +nf_log_common +nf_log_ipv4 +nf_log_ipv6 +nf_log_netdev +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 +nfnetlink +nfnetlink_acct +nfnetlink_cthelper +nfnetlink_cttimeout +nfnetlink_log +nfnetlink_osf +nfnetlink_queue +nfs +nfs_acl +nfs_layout_flexfiles +nfs_layout_nfsv41_files +nfsd +nfsv2 +nfsv3 +nfsv4 +nft_chain_nat +nft_compat +nft_connlimit +nft_counter +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_objref +nft_osf +nft_queue +nft_quota +nft_redir +nft_reject +nft_reject_bridge +nft_reject_inet +nft_reject_ipv4 +nft_reject_ipv6 +nft_socket +nft_synproxy +nft_tproxy +nft_tunnel +nft_xfrm +nhpoly1305 +nilfs2 +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 +notifier-error-inject +nsh +ntfs +null_blk +nvme +nvme-core +nvme-fabrics +nvme-fc +nvme-loop +nvme-rdma +nvme-tcp +nvmet +nvmet-fc +nvmet-rdma +nvmet-tcp +objagg +ocfs2 +ocfs2_dlm +ocfs2_dlmfs +ocfs2_nodemanager +ocfs2_stack_o2cb +ocfs2_stack_user +ocfs2_stackglue +ofb +openvswitch +oprofile +orangefs +overlay +p8022 +paes_s390 +parman +pblk +pcbc +pci-pf-stub +pci-stub +pcrypt +phylink +pkcs7_test_key +pkcs8_key_parser +pkey +pktgen +pnet +poly1305_generic +pps_core +pretimeout_panic +prng +psample +psnap +ptp +ptp_clockmatrix +ptp_ines +qdio +qeth +qeth_l2 +qeth_l3 +qsemi +quota_tree +quota_v1 +quota_v2 +raid0 +raid1 +raid10 +raid456 +raid6_pq +raid_class +raw_diag +rbd +rcuperf +rdma_cm +rdma_rxe +rdma_ucm +rds +rds_rdma +rds_tcp +realtek +rmd128 +rmd160 +rmd256 +rmd320 +rnbd-client +rnbd-server +rockchip +rpcrdma +rpcsec_gss_krb5 +rtrs-client +rtrs-core +rtrs-server +rxrpc +s390-trng +salsa20_generic +sample-trace-array +sch_cake +sch_cbq +sch_cbs +sch_choke +sch_codel +sch_drr +sch_dsmark +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_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 +scm_block +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 +seed +serial_core +serpent_generic +sfp +sha1_s390 +sha256_s390 +sha3_256_s390 +sha3_512_s390 +sha3_generic +sha512_s390 +sha_common +shiftfs +siox-bus-gpio +siox-core +sit +siw +slicoss +slim-qcom-ctrl +slimbus +sm3_generic +sm4_generic +smc +smc_diag +smsc +smsgiucv_app +softdog +spl +st +st_drv +ste10Xp +stm_console +stm_core +stm_ftrace +stm_heartbeat +stm_p_basic +stm_p_sys-t +stp +streebog_generic +sunrpc +switchtec +syscopyarea +sysfillrect +sysimgblt +tap +tape +tape_34xx +tape_3590 +tape_class +target_core_file +target_core_iblock +target_core_mod +target_core_pscsi +target_core_user +tcm_fc +tcm_loop +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 +tcrypt +tea +team +team_mode_activebackup +team_mode_broadcast +team_mode_loadbalance +team_mode_random +team_mode_roundrobin +teranetics +test_blackhole_dev +test_bpf +tgr192 +tipc +tls +torture +tpm_key_parser +tpm_vtpm_proxy +trace-printk +ts_bm +ts_fsm +ts_kmp +ttm +ttynull +tunnel4 +tunnel6 +twofish_common +twofish_generic +uPD60620 +uartlite +ubuntu-host +udf +udp_diag +udp_tunnel +uio +unix_diag +veth +vfio +vfio-pci +vfio_ap +vfio_ccw +vfio_iommu_type1 +vfio_mdev +vfio_virqfd +vhost +vhost_iotlb +vhost_net +vhost_scsi +vhost_vsock +virtio-gpu +virtio-rng +virtio_blk +virtio_crypto +virtio_input +virtio_net +virtio_scsi +virtiofs +vitesse +vmac +vmlogrdr +vmur +vmw_vsock_virtio_transport +vmw_vsock_virtio_transport_common +vport-geneve +vport-gre +vport-vxlan +vrf +vsock +vsock_diag +vsock_loopback +vsockmon +vxlan +wireguard +wp512 +x_tables +xcbc +xfrm4_tunnel +xfrm6_tunnel +xfrm_algo +xfrm_interface +xfrm_ipcomp +xfrm_user +xfs +xilinx_emac +xilinx_gmii2rgmii +xlnx_vcu +xor +xsk_diag +xt_AUDIT +xt_CHECKSUM +xt_CLASSIFY +xt_CONNSECMARK +xt_CT +xt_DSCP +xt_HL +xt_HMARK +xt_IDLETIMER +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 +xxhash_generic +z3fold +zavl +zcommon +zcrypt +zcrypt_cex2a +zcrypt_cex2c +zcrypt_cex4 +zfcp +zfs +zlua +znvpair +zonefs +zram +zstd +zstd_compress +zunicode --- linux-azure-5.8-5.8.0.orig/debian.master/abi/5.8.0-50.56/s390x/generic.retpoline +++ linux-azure-5.8-5.8.0/debian.master/abi/5.8.0-50.56/s390x/generic.retpoline @@ -0,0 +1 @@ +# RETPOLINE NOT ENABLED --- linux-azure-5.8-5.8.0.orig/debian.master/changelog +++ linux-azure-5.8-5.8.0/debian.master/changelog @@ -0,0 +1,17832 @@ +linux (5.8.0-51.57) groovy; urgency=medium + + * groovy/linux: 5.8.0-51.57 -proposed tracker (LP: #1923754) + + * CVE-2021-28375 + - misc: fastrpc: restrict user apps from sending kernel RPC messages + + * CVE-2021-29646 + - tipc: better validate user input in tipc_nl_retrieve_key() + + * SND_PCI_QUIRK for Clevo NH55RZQ and Intel NUC10 (LP: #1922759) + - ALSA: hda/realtek: Add quirk for Intel NUC 10 + - ALSA: hda/realtek: Add quirk for Clevo NH55RZQ + + * CVE-2021-29650 + - Revert "netfilter: x_tables: Update remaining dereference to RCU" + - Revert "netfilter: x_tables: Switch synchronization to RCU" + - netfilter: x_tables: Use correct memory barriers. + + * LRMv4: switch to signing nvidia modules via the Ubuntu Modules signing key + (LP: #1918134) + - [Packaging] dkms-build{,--nvidia-N} sync back from LRMv4 + + * CVE-2021-29266 + - vhost-vdpa: fix use-after-free of v->config_ctx + + * CVE-2021-29264 + - gianfar: fix jumbo packets+napi+rx overrun crash + + * CVE-2021-29265 + - usbip: fix stub_dev usbip_sockfd_store() races leading to gpf + + * Bcache bypasse writeback on caching device with fragmentation (LP: #1900438) + - bcache: consider the fragmentation when update the writeback rate + + * Fix implicit declaration warnings for kselftests/memfd test on newer + releases (LP: #1910323) + - selftests/memfd: Fix implicit declaration warnings + + * net/mlx5e: Add missing capability check for uplink follow (LP: #1921104) + - net/mlx5e: Add missing capability check for uplink follow + + * [UBUNUT 21.04] s390/vtime: fix increased steal time accounting + (LP: #1921498) + - s390/vtime: fix increased steal time accounting + + * Groovy update: upstream stable patchset 2021-03-30 (LP: #1921960) + - vmlinux.lds.h: add DWARF v5 sections + - debugfs: be more robust at handling improper input in debugfs_lookup() + - debugfs: do not attempt to create a new file before the filesystem is + initalized + - scsi: libsas: docs: Remove notify_ha_event() + - scsi: qla2xxx: Fix mailbox Ch erroneous error + - kdb: Make memory allocations more robust + - PCI: qcom: Use PHY_REFCLK_USE_PAD only for ipq8064 + - PCI: Decline to resize resources if boot config must be preserved + - virt: vbox: Do not use wait_event_interruptible when called from kernel + context + - bfq: Avoid false bfq queue merging + - ALSA: usb-audio: Fix PCM buffer allocation in non-vmalloc mode + - MIPS: vmlinux.lds.S: add missing PAGE_ALIGNED_DATA() section + - random: fix the RNDRESEEDCRNG ioctl + - ALSA: pcm: Call sync_stop at disconnection + - ALSA: pcm: Assure sync with the pending stop operation at suspend + - ALSA: pcm: Don't call sync_stop if it hasn't been stopped + - drm/i915/gt: One more flush for Baytrail clear residuals + - ath10k: Fix error handling in case of CE pipe init failure + - Bluetooth: btqcomsmd: Fix a resource leak in error handling paths in the + probe function + - Bluetooth: hci_uart: Fix a race for write_work scheduling + - Bluetooth: Fix initializing response id after clearing struct + - ARM: dts: exynos: correct PMIC interrupt trigger level on Artik 5 + - ARM: dts: exynos: correct PMIC interrupt trigger level on Monk + - ARM: dts: exynos: correct PMIC interrupt trigger level on Rinato + - ARM: dts: exynos: correct PMIC interrupt trigger level on Spring + - ARM: dts: exynos: correct PMIC interrupt trigger level on Arndale Octa + - ARM: dts: exynos: correct PMIC interrupt trigger level on Odroid XU3 family + - arm64: dts: exynos: correct PMIC interrupt trigger level on TM2 + - arm64: dts: exynos: correct PMIC interrupt trigger level on Espresso + - memory: mtk-smi: Fix PM usage counter unbalance in mtk_smi ops + - Bluetooth: hci_qca: Fix memleak in qca_controller_memdump + - arm64: dts: qcom: msm8916-samsung-a5u: Fix iris compatible + - net: stmmac: dwmac-meson8b: fix enabling the timing-adjustment clock + - bpf: Add bpf_patch_call_args prototype to include/linux/bpf.h + - bpf: Avoid warning when re-casting __bpf_call_base into __bpf_call_base_args + - arm64: dts: allwinner: A64: properly connect USB PHY to port 0 + - arm64: dts: allwinner: H6: properly connect USB PHY to port 0 + - arm64: dts: allwinner: Drop non-removable from SoPine/LTS SD card + - arm64: dts: allwinner: H6: Allow up to 150 MHz MMC bus frequency + - arm64: dts: allwinner: A64: Limit MMC2 bus frequency to 150 MHz + - cpufreq: brcmstb-avs-cpufreq: Free resources in error path + - cpufreq: brcmstb-avs-cpufreq: Fix resource leaks in ->remove() + - arm64: dts: rockchip: rk3328: Add clock_in_out property to gmac2phy node + - ACPICA: Fix exception code class checks + - usb: gadget: u_audio: Free requests only after callback + - arm64: dts: qcom: sdm845-db845c: Fix reset-pin of ov8856 node + - soc: ti: pm33xx: Fix some resource leak in the error handling paths of the + probe function + - staging: media: atomisp: Fix size_t format specifier in hmm_alloc() debug + statemenet + - Bluetooth: drop HCI device reference before return + - Bluetooth: Put HCI device if inquiry procedure interrupts + - memory: ti-aemif: Drop child node when jumping out loop + - ARM: dts: Configure missing thermal interrupt for 4430 + - usb: dwc2: Do not update data length if it is 0 on inbound transfers + - usb: dwc2: Abort transaction after errors with unknown reason + - usb: dwc2: Make "trimming xfer length" a debug message + - staging: rtl8723bs: wifi_regd.c: Fix incorrect number of regulatory rules + - ARM: dts: armada388-helios4: assign pinctrl to LEDs + - ARM: dts: armada388-helios4: assign pinctrl to each fan + - arm64: dts: armada-3720-turris-mox: rename u-boot mtd partition to + a53-firmware + - opp: Correct debug message in _opp_add_static_v2() + - Bluetooth: btusb: Fix memory leak in btusb_mtk_wmt_recv + - soc: qcom: ocmem: don't return NULL in of_get_ocmem + - arm64: dts: msm8916: Fix reserved and rfsa nodes unit address + - arm64: dts: meson: fix broken wifi node for Khadas VIM3L + - ARM: s3c: fix fiq for clang IAS + - ARM: at91: use proper asm syntax in pm_suspend + - ath10k: Fix suspicious RCU usage warning in + ath10k_wmi_tlv_parse_peer_stats_info() + - ath10k: Fix lockdep assertion warning in ath10k_sta_statistics + - soc: aspeed: snoop: Add clock control logic + - bpf_lru_list: Read double-checked variable once without lock + - ath9k: fix data bus crash when setting nf_override via debugfs + - ibmvnic: Set to CLOSED state even on error + - bnxt_en: reverse order of TX disable and carrier off + - xen/netback: fix spurious event detection for common event case + - net/mlx5e: Don't change interrupt moderation params when DIM is enabled + - net/mlx5e: Change interrupt moderation channel params also when channels are + closed + - net/mlx5e: Replace synchronize_rcu with synchronize_net + - net/mlx5e: kTLS, Use refcounts to free kTLS RX priv context + - net/mlx5: Disable devlink reload for multi port slave device + - net/mlx5: Disallow RoCE on multi port slave device + - net/mlx5: Disallow RoCE on lag device + - net/mlx5: Disable devlink reload for lag devices + - mac80211: fix potential overflow when multiplying to u32 integers + - libbpf: Ignore non function pointer member in struct_ops + - bpf: Fix an unitialized value in bpf_iter + - bpf, devmap: Use GFP_KERNEL for xdp bulk queue allocation + - bpf: Fix bpf_fib_lookup helper MTU check for SKB ctx + - tcp: fix SO_RCVLOWAT related hangs under mem pressure + - net: axienet: Handle deferred probe on clock properly + - cxgb4/chtls/cxgbit: Keeping the max ofld immediate data size same in cxgb4 + and ulds + - b43: N-PHY: Fix the update of coef for the PHY revision >= 3case + - bpf: Clear subreg_def for global function return values + - ibmvnic: add memory barrier to protect long term buffer + - ibmvnic: skip send_request_unmap for timeout reset + - net: dsa: felix: perform teardown in reverse order of setup + - net: phy: mscc: adding LCPLL reset to VSC8514 + - net: amd-xgbe: Reset the PHY rx data path when mailbox command timeout + - net: amd-xgbe: Fix NETDEV WATCHDOG transmit queue timeout warning + - net: amd-xgbe: Reset link when the link never comes back + - net: amd-xgbe: Fix network fluctuations when using 1G BELFUSE SFP + - net: mvneta: Remove per-cpu queue mapping for Armada 3700 + - tty: convert tty_ldisc_ops 'read()' function to take a kernel pointer + - tty: implement read_iter + - fbdev: aty: SPARC64 requires FB_ATY_CT + - drm/gma500: Fix error return code in psb_driver_load() + - gma500: clean up error handling in init + - drm/fb-helper: Add missed unlocks in setcmap_legacy() + - crypto: sun4i-ss - linearize buffers content must be kept + - crypto: sun4i-ss - fix kmap usage + - crypto: arm64/aes-ce - really hide slower algos when faster ones are enabled + - media: allegro: Fix use after free on error + - drm: rcar-du: Fix PM reference leak in rcar_cmm_enable() + - drm: rcar-du: Fix crash when using LVDS1 clock for CRTC + - drm: rcar-du: Fix the return check of of_parse_phandle and + of_find_device_by_node + - drm/amdgpu: Fix macro name _AMDGPU_TRACE_H_ in preprocessor if condition + - MIPS: c-r4k: Fix section mismatch for loongson2_sc_init + - MIPS: lantiq: Explicitly compare LTQ_EBU_PCC_ISTAT against 0 + - drm/virtio: make sure context is created in gem open + - media: ipu3-cio2: Build only for x86 + - media: i2c: ov5670: Fix PIXEL_RATE minimum value + - media: imx: Unregister csc/scaler only if registered + - media: imx: Fix csc/scaler unregister + - media: mtk-vcodec: fix error return code in vdec_vp9_decode() + - media: camss: missing error code in msm_video_register() + - media: vsp1: Fix an error handling path in the probe function + - media: em28xx: Fix use-after-free in em28xx_alloc_urbs + - media: media/pci: Fix memleak in empress_init + - media: tm6000: Fix memleak in tm6000_start_stream + - media: aspeed: fix error return code in aspeed_video_setup_video() + - ASoC: cs42l56: fix up error handling in probe + - ASoC: qcom: qdsp6: Move frontend AIFs to q6asm-dai + - evm: Fix memleak in init_desc + - crypto: bcm - Rename struct device_private to bcm_device_private + - sched/fair: Avoid stale CPU util_est value for schedutil in task dequeue + - drm/sun4i: tcon: fix inverted DCLK polarity + - media: imx7: csi: Fix regression for parallel cameras on i.MX6UL + - media: imx7: csi: Fix pad link validation + - MIPS: properly stop .eh_frame generation + - MIPS: Compare __SYNC_loongson3_war against 0 + - drm/tegra: Fix reference leak when pm_runtime_get_sync() fails + - drm/amdgpu: toggle on DF Cstate after finishing xgmi injection + - bsg: free the request before return error code + - drm/amd/display: Fix 10/12 bpc setup in DCE output bit depth reduction. + - drm/amd/display: Fix HDMI deep color output for DCE 6-11. + - media: software_node: Fix refcounts in software_node_get_next_child() + - media: lmedm04: Fix misuse of comma + - media: atomisp: Fix a buffer overflow in debug code + - media: qm1d1c0042: fix error return code in qm1d1c0042_init() + - media: cx25821: Fix a bug when reallocating some dma memory + - media: pxa_camera: declare variable when DEBUG is defined + - media: uvcvideo: Accept invalid bFormatIndex and bFrameIndex values + - sched/eas: Don't update misfit status if the task is pinned + - f2fs: compress: fix potential deadlock + - ASoC: SOF: Intel: hda: cancel D0i3 work during runtime suspend + - mtd: parser: imagetag: fix error codes in + bcm963xx_parse_imagetag_partitions() + - crypto: talitos - Work around SEC6 ERRATA (AES-CTR mode data size error) + - crypto: talitos - Fix ctr(aes) on SEC1 + - drm/nouveau: bail out of nouveau_channel_new if channel init fails + - mm: proc: Invalidate TLB after clearing soft-dirty page state + - ata: ahci_brcm: Add back regulators management + - ASoC: cpcap: fix microphone timeslot mask + - ASoC: codecs: add missing max_register in regmap config + - mtd: parsers: afs: Fix freeing the part name memory in failure + - f2fs: fix to avoid inconsistent quota data + - drm/amdgpu: Prevent shift wrapping in amdgpu_read_mask() + - f2fs: fix a wrong condition in __submit_bio + - KVM: nSVM: Don't strip host's C-bit from guest's CR3 when reading PDPTRs + - drm/mediatek: Check if fb is null + - Drivers: hv: vmbus: Avoid use-after-free in vmbus_onoffer_rescind() + - ASoC: Intel: sof_sdw: add missing TGL_HDMI quirk for Dell SKU 0A5E + - locking/lockdep: Avoid unmatched unlock + - ASoC: rt5682: Fix panic in rt5682_jack_detect_handler happening during + system shutdown + - ASoC: SOF: debug: Fix a potential issue on string buffer termination + - btrfs: clarify error returns values in __load_free_space_cache + - btrfs: fix double accounting of ordered extent for subpage case in + btrfs_invalidapge + - KVM: x86: Restore all 64 bits of DR6 and DR7 during RSM on x86-64 + - drm/lima: fix reference leak in lima_pm_busy + - drm/dp_mst: Don't cache EDIDs for physical ports + - hwrng: timeriomem - Fix cooldown period calculation + - crypto: ecdh_helper - Ensure 'len >= secret.len' in decode_key() + - nvmet-tcp: fix receive data digest calculation for multiple h2cdata PDUs + - nvmet-tcp: fix potential race of tcp socket closing accept_work + - nvmet: remove extra variable in identify ns + - nvmet: set status to 0 in case for invalid nsid + - ASoC: SOF: sof-pci-dev: add missing Up-Extreme quirk + - ima: Free IMA measurement buffer on error + - ima: Free IMA measurement buffer after kexec syscall + - ASoC: simple-card-utils: Fix device module clock + - fs/jfs: fix potential integer overflow on shift of a int + - jffs2: fix use after free in jffs2_sum_write_data() + - ubifs: Fix memleak in ubifs_init_authentication + - ubifs: replay: Fix high stack usage, again + - ubifs: Fix error return code in alloc_wbufs() + - irqchip/imx: IMX_INTMUX should not default to y, unconditionally + - smp: Process pending softirqs in flush_smp_call_function_from_idle() + - drm/amdgpu/display: remove hdcp_srm sysfs on device removal + - HSI: Fix PM usage counter unbalance in ssi_hw_init + - power: supply: cpcap: Add missing IRQF_ONESHOT to fix regression + - clk: meson: clk-pll: fix initializing the old rate (fallback) for a PLL + - clk: meson: clk-pll: make "ret" a signed integer + - clk: meson: clk-pll: propagate the error from meson_clk_pll_set_rate() + - regulator: qcom-rpmh-regulator: add pm8009-1 chip revision + - quota: Fix memory leak when handling corrupted quota file + - i2c: iproc: handle only slave interrupts which are enabled + - i2c: iproc: update slave isr mask (ISR_MASK_SLAVE) + - i2c: iproc: handle master read request + - spi: cadence-quadspi: Abort read if dummy cycles required are too many + - clk: sunxi-ng: h6: Fix CEC clock + - HID: core: detect and skip invalid inputs to snto32() + - RDMA/siw: Fix handling of zero-sized Read and Receive Queues. + - dmaengine: fsldma: Fix a resource leak in the remove function + - dmaengine: fsldma: Fix a resource leak in an error handling path of the + probe function + - dmaengine: owl-dma: Fix a resource leak in the remove function + - dmaengine: hsu: disable spurious interrupt + - mfd: bd9571mwv: Use devm_mfd_add_devices() + - power: supply: cpcap-charger: Fix missing power_supply_put() + - power: supply: cpcap-battery: Fix missing power_supply_put() + - power: supply: cpcap-charger: Fix power_supply_put on null battery pointer + - fdt: Properly handle "no-map" field in the memory region + - of/fdt: Make sure no-map does not remove already reserved regions + - RDMA/rtrs: Extend ibtrs_cq_qp_create + - RDMA/rtrs-srv: Release lock before call into close_sess + - RDMA/rtrs-srv: Use sysfs_remove_file_self for disconnect + - RDMA/rtrs-clt: Set mininum limit when create QP + - RDMA/rtrs: Call kobject_put in the failure path + - RDMA/rtrs-srv: Fix missing wr_cqe + - RDMA/rtrs-clt: Refactor the failure cases in alloc_clt + - RDMA/rtrs-srv: Init wr_cnt as 1 + - power: reset: at91-sama5d2_shdwc: fix wkupdbc mask + - rtc: s5m: select REGMAP_I2C + - dmaengine: idxd: set DMA channel to be private + - power: supply: fix sbs-charger build, needs REGMAP_I2C + - clocksource/drivers/ixp4xx: Select TIMER_OF when needed + - clocksource/drivers/mxs_timer: Add missing semicolon when DEBUG is defined + - RDMA/mlx5: Use the correct obj_id upon DEVX TIR creation + - IB/mlx5: Add mutex destroy call to cap_mask_mutex mutex + - clk: sunxi-ng: h6: Fix clock divider range on some clocks + - regulator: axp20x: Fix reference cout leak + - watch_queue: Drop references to /dev/watch_queue + - certs: Fix blacklist flag type confusion + - regulator: s5m8767: Fix reference count leak + - spi: atmel: Put allocated master before return + - regulator: s5m8767: Drop regulators OF node reference + - power: supply: axp20x_usb_power: Init work before enabling IRQs + - regulator: core: Avoid debugfs: Directory ... already present! error + - isofs: release buffer head before return + - watchdog: intel-mid_wdt: Postpone IRQ handler registration till SCU is ready + - auxdisplay: ht16k33: Fix refresh rate handling + - objtool: Fix error handling for STD/CLD warnings + - objtool: Fix ".cold" section suffix check for newer versions of GCC + - iommu: Switch gather->end to the inclusive end + - IB/umad: Return EIO in case of when device disassociated + - IB/umad: Return EPOLLERR in case of when device disassociated + - KVM: PPC: Make the VMX instruction emulation routines static + - powerpc/47x: Disable 256k page size + - powerpc/time: Enable sched clock for irqtime + - mmc: owl-mmc: Fix a resource leak in an error handling path and in the + remove function + - mmc: sdhci-sprd: Fix some resource leaks in the remove function + - mmc: usdhi6rol0: Fix a resource leak in the error handling path of the probe + - mmc: renesas_sdhi_internal_dmac: Fix DMA buffer alignment from 8 to + 128-bytes + - ARM: 9046/1: decompressor: Do not clear SCTLR.nTLSMD for ARMv7+ cores + - i2c: qcom-geni: Store DMA mapping data in geni_i2c_dev struct + - amba: Fix resource leak for drivers without .remove + - iommu: Move iotlb_sync_map out from __iommu_map + - iommu: Properly pass gfp_t in _iommu_map() to avoid atomic sleeping + - IB/mlx5: Return appropriate error code instead of ENOMEM + - IB/cm: Avoid a loop when device has 255 ports + - tracepoint: Do not fail unregistering a probe due to memory failure + - rtc: zynqmp: depend on HAS_IOMEM + - perf tools: Fix DSO filtering when not finding a map for a sampled address + - perf vendor events arm64: Fix Ampere eMag event typo + - RDMA/rxe: Fix coding error in rxe_recv.c + - RDMA/rxe: Fix coding error in rxe_rcv_mcast_pkt + - RDMA/rxe: Correct skb on loopback path + - spi: stm32: properly handle 0 byte transfer + - mfd: wm831x-auxadc: Prevent use after free in wm831x_auxadc_read_irq() + - powerpc/pseries/dlpar: handle ibm, configure-connector delay status + - powerpc/8xx: Fix software emulation interrupt + - clk: qcom: gcc-msm8998: Fix Alpha PLL type for all GPLLs + - kunit: tool: fix unit test cleanup handling + - kselftests: dmabuf-heaps: Fix Makefile's inclusion of the kernel's + usr/include dir + - RDMA/hns: Fixed wrong judgments in the goto branch + - RDMA/siw: Fix calculation of tx_valid_cpus size + - RDMA/hns: Fix type of sq_signal_bits + - RDMA/hns: Disable RQ inline by default + - clk: divider: fix initialization with parent_hw + - spi: pxa2xx: Fix the controller numbering for Wildcat Point + - powerpc/uaccess: Avoid might_fault() when user access is enabled + - powerpc/kuap: Restore AMR after replaying soft interrupts + - regulator: qcom-rpmh: fix pm8009 ldo7 + - clk: aspeed: Fix APLL calculate formula from ast2600-A2 + - regulator: bd718x7, bd71828, Fix dvs voltage levels + - nfsd: register pernet ops last, unregister first + - ceph: fix flush_snap logic after putting caps + - RDMA/hns: Fixes missing error code of CMDQ + - RDMA/ucma: Fix use-after-free bug in ucma_create_uevent + - RDMA/rtrs-srv: Fix stack-out-of-bounds + - RDMA/rtrs: Only allow addition of path to an already established session + - RDMA/rtrs-srv: fix memory leak by missing kobject free + - RDMA/rtrs-srv-sysfs: fix missing put_device + - RDMA/rtrs-srv: Do not pass a valid pointer to PTR_ERR() + - Input: sur40 - fix an error code in sur40_probe() + - perf intel-pt: Fix missing CYC processing in PSB + - perf intel-pt: Fix premature IPC + - perf intel-pt: Fix IPC with CYC threshold + - perf test: Fix unaligned access in sample parsing test + - Input: elo - fix an error code in elo_connect() + - sparc64: only select COMPAT_BINFMT_ELF if BINFMT_ELF is set + - sparc: fix led.c driver when PROC_FS is not enabled + - ARM: 9065/1: OABI compat: fix build when EPOLL is not enabled + - misc: eeprom_93xx46: Fix module alias to enable module autoprobe + - phy: rockchip-emmc: emmc_phy_init() always return 0 + - misc: eeprom_93xx46: Add module alias to avoid breaking support for non + device tree users + - PCI: rcar: Always allocate MSI addresses in 32bit space + - soundwire: cadence: fix ACK/NAK handling + - pwm: rockchip: Enable APB clock during register access while probing + - pwm: rockchip: rockchip_pwm_probe(): Remove superfluous clk_unprepare() + - pwm: rockchip: Eliminate potential race condition when probing + - VMCI: Use set_page_dirty_lock() when unregistering guest memory + - PCI: Align checking of syscall user config accessors + - mei: hbm: call mei_set_devstate() on hbm stop response + - drm/msm/dsi: Correct io_start for MSM8994 (20nm PHY) + - drm/msm/mdp5: Fix wait-for-commit for cmd panels + - drm/msm: Fix race of GPU init vs timestamp power management. + - drm/msm: Fix races managing the OOB state for timestamp vs timestamps. + - vfio/iommu_type1: Populate full dirty when detach non-pinned group + - vfio/iommu_type1: Fix some sanity checks in detach group + - ext4: fix potential htree index checksum corruption + - nvmem: core: Fix a resource leak on error in nvmem_add_cells_from_of() + - nvmem: core: skip child nodes not matching binding + - soundwire: bus: use sdw_update_no_pm when initializing a device + - soundwire: export sdw_write/read_no_pm functions + - soundwire: bus: fix confusion on device used by pm_runtime + - misc: fastrpc: fix incorrect usage of dma_map_sgtable + - regmap: sdw: use _no_pm functions in regmap_read/write + - ext: EXT4_KUNIT_TESTS should depend on EXT4_FS instead of selecting it + - mailbox: sprd: correct definition of SPRD_OUTBOX_FIFO_FULL + - PCI: pci-bridge-emul: Fix array overruns, improve safety + - i40e: Fix flow for IPv6 next header (extension header) + - i40e: Add zero-initialization of AQ command structures + - i40e: Fix overwriting flow control settings during driver loading + - i40e: Fix addition of RX filters after enabling FW LLDP agent + - i40e: Fix VFs not created + - Take mmap lock in cacheflush syscall + - i40e: Fix add TC filter for IPv6 + - octeontx2-af: Fix an off by one in rvu_dbg_qsize_write() + - vfio/type1: Use follow_pte() + - ice: report correct max number of TCs + - ice: Account for port VLAN in VF max packet size calculation + - ice: Fix state bits on LLDP mode switch + - ice: update the number of available RSS queues + - net: stmmac: fix CBS idleslope and sendslope calculation + - net/mlx4_core: Add missed mlx4_free_cmd_mailbox() + - vxlan: move debug check after netdev unregister + - wireguard: device: do not generate ICMP for non-IP packets + - wireguard: kconfig: use arm chacha even with no neon + - ocfs2: fix a use after free on error + - mm: memcontrol: fix NR_ANON_THPS accounting in charge moving + - mm/memory.c: fix potential pte_unmap_unlock pte error + - mm/hugetlb: fix potential double free in hugetlb_register_node() error path + - mm/hugetlb: suppress wrong warning info when alloc gigantic page + - mm/compaction: fix misbehaviors of fast_find_migrateblock() + - r8169: fix jumbo packet handling on RTL8168e + - arm64: Add missing ISB after invalidating TLB in __primary_switch + - i2c: brcmstb: Fix brcmstd_send_i2c_cmd condition + - i2c: exynos5: Preserve high speed master code + - mm,thp,shmem: make khugepaged obey tmpfs mount flags + - mm/rmap: fix potential pte_unmap on an not mapped pte + - proc: use kvzalloc for our kernel buffer + - scsi: bnx2fc: Fix Kconfig warning & CNIC build errors + - ide/falconide: Fix module unload + - scsi: sd: Fix Opal support + - blk-settings: align max_sectors on "logical_block_size" boundary + - soundwire: intel: fix possible crash when no device is detected + - ACPI: property: Fix fwnode string properties matching + - ACPI: configfs: add missing check after configfs_register_default_group() + - cpufreq: ACPI: Set cpuinfo.max_freq directly if max boost is known + - HID: logitech-dj: add support for keyboard events in eQUAD step 4 Gaming + - HID: wacom: Ignore attempts to overwrite the touch_max value from HID + - Input: raydium_ts_i2c - do not send zero length + - Input: xpad - add support for PowerA Enhanced Wired Controller for Xbox + Series X|S + - Input: joydev - prevent potential read overflow in ioctl + - Input: i8042 - add ASUS Zenbook Flip to noselftest list + - media: mceusb: Fix potential out-of-bounds shift + - USB: serial: option: update interface mapping for ZTE P685M + - usb: musb: Fix runtime PM race in musb_queue_resume_work + - USB: serial: ftdi_sio: fix FTX sub-integer prescaler + - USB: serial: pl2303: fix line-speed handling on newer chips + - USB: serial: mos7840: fix error code in mos7840_write() + - USB: serial: mos7720: fix error code in mos7720_write() + - phy: lantiq: rcu-usb2: wait after clock enable + - ALSA: fireface: fix to parse sync status register of latter protocol + - ALSA: hda: Add another CometLake-H PCI ID + - ALSA: hda/hdmi: Drop bogus check at closing a stream + - ALSA: hda/realtek: modify EAPD in the ALC886 + - ALSA: hda/realtek: Quirk for HP Spectre x360 14 amp setup + - MIPS: Ingenic: Disable HPTLB for D0 XBurst CPUs too + - MIPS: Support binutils configured with --enable-mips-fix-loongson3-llsc=yes + - MIPS: VDSO: Use CLANG_FLAGS instead of filtering out '--target=' + - Revert "MIPS: Octeon: Remove special handling of + CONFIG_MIPS_ELF_APPENDED_DTB=y" + - Revert "bcache: Kill btree_io_wq" + - bcache: Give btree_io_wq correct semantics again + - bcache: Move journal work to new flush wq + - Revert "drm/amd/display: Update NV1x SR latency values" + - drm/amd/display: Add FPU wrappers to dcn21_validate_bandwidth() + - drm/amd/display: Add vupdate_no_lock interrupts for DCN2.1 + - drm/amdkfd: Fix recursive lock warnings + - drm/amdgpu: Set reference clock to 100Mhz on Renoir (v2) + - drm/nouveau/kms: handle mDP connectors + - drm/modes: Switch to 64bit maths to avoid integer overflow + - drm/sched: Cancel and flush all outstanding jobs before finish. + - drm/panel: kd35t133: allow using non-continuous dsi clock + - drm/rockchip: Require the YTR modifier for AFBC + - ASoC: siu: Fix build error by a wrong const prefix + - selinux: fix inconsistency between inode_getxattr and inode_listsecurity + - erofs: initialized fields can only be observed after bit is set + - tpm_tis: Fix check_locality for correct locality acquisition + - tpm_tis: Clean up locality release + - KEYS: trusted: Fix incorrect handling of tpm_get_random() + - KEYS: trusted: Fix migratable=1 failing + - KEYS: trusted: Reserve TPM for seal and unseal operations + - btrfs: do not cleanup upper nodes in btrfs_backref_cleanup_node + - btrfs: do not warn if we can't find the reloc root when looking up backref + - btrfs: add asserts for deleting backref cache nodes + - btrfs: abort the transaction if we fail to inc ref in btrfs_copy_root + - btrfs: fix reloc root leak with 0 ref reloc roots on recovery + - btrfs: splice remaining dirty_bg's onto the transaction dirty bg list + - btrfs: handle space_info::total_bytes_pinned inside the delayed ref itself + - btrfs: account for new extents being deleted in total_bytes_pinned + - btrfs: fix extent buffer leak on failure to copy root + - drm/i915/gt: Flush before changing register state + - drm/i915/gt: Correct surface base address for renderclear + - crypto: arm64/sha - add missing module aliases + - crypto: aesni - prevent misaligned buffers on the stack + - crypto: michael_mic - fix broken misalignment handling + - crypto: sun4i-ss - checking sg length is not sufficient + - crypto: sun4i-ss - handle BigEndian for cipher + - crypto: sun4i-ss - initialize need_fallback + - soc: samsung: exynos-asv: don't defer early on not-supported SoCs + - soc: samsung: exynos-asv: handle reading revision register error + - seccomp: Add missing return in non-void function + - arm64: ptrace: Fix seccomp of traced syscall -1 (NO_SYSCALL) + - misc: rtsx: init of rts522a add OCP power off when no card is present + - drivers/misc/vmw_vmci: restrict too big queue size in qp_host_alloc_queue + - pstore: Fix typo in compression option name + - dts64: mt7622: fix slow sd card access + - arm64: dts: agilex: fix phy interface bit shift for gmac1 and gmac2 + - staging/mt7621-dma: mtk-hsdma.c->hsdma-mt7621.c + - staging: gdm724x: Fix DMA from stack + - staging: rtl8188eu: Add Edimax EW-7811UN V2 to device table + - media: ipu3-cio2: Fix mbus_code processing in cio2_subdev_set_fmt() + - media: smipcie: fix interrupt handling and IR timeout + - x86/virt: Eat faults on VMXOFF in reboot flows + - x86/reboot: Force all cpus to exit VMX root if VMX is supported + - x86/fault: Fix AMD erratum #91 errata fixup for user code + - x86/entry: Fix instrumentation annotation + - powerpc/prom: Fix "ibm,arch-vec-5-platform-support" scan + - rcu: Pull deferred rcuog wake up to rcu_eqs_enter() callers + - rcu/nocb: Perform deferred wake up before last idle's need_resched() check + - arm64: Extend workaround for erratum 1024718 to all versions of Cortex-A55 + - arm64: kexec_file: fix memory leakage in create_dtb() when fdt_open_into() + fails + - arm64: uprobe: Return EOPNOTSUPP for AARCH32 instruction probing + - arm64 module: set plt* section addresses to 0x0 + - arm64: spectre: Prevent lockdep splat on v4 mitigation enable path + - riscv: Disable KSAN_SANITIZE for vDSO + - watchdog: qcom: Remove incorrect usage of QCOM_WDT_ENABLE_IRQ + - watchdog: mei_wdt: request stop on unregister + - coresight: etm4x: Handle accesses to TRCSTALLCTLR + - mtd: spi-nor: sfdp: Fix last erase region marking + - mtd: spi-nor: sfdp: Fix wrong erase type bitmask for overlaid region + - mtd: spi-nor: core: Fix erase type discovery for overlaid region + - mtd: spi-nor: core: Add erase size check for erase command initialization + - mtd: spi-nor: hisi-sfc: Put child node np on error path + - fs/affs: release old buffer head on error path + - seq_file: document how per-entry resources are managed. + - x86: fix seq_file iteration for pat/memtype.c + - mm: memcontrol: fix swap undercounting in cgroup2 + - hugetlb: fix update_and_free_page contig page struct assumption + - hugetlb: fix copy_huge_page_from_user contig page struct assumption + - mm/vmscan: restore zone_reclaim_mode ABI + - mm, compaction: make fast_isolate_freepages() stay within zone + - nvmem: qcom-spmi-sdam: Fix uninitialized pdev pointer + - module: Ignore _GLOBAL_OFFSET_TABLE_ when warning for undefined symbols + - mmc: sdhci-esdhc-imx: fix kernel panic when remove module + - powerpc/32s: Add missing call to kuep_lock on syscall entry + - spmi: spmi-pmic-arb: Fix hw_irq overflow + - mei: me: emmitsburg workstation DID + - mei: me: add adler lake point S DID + - mei: me: add adler lake point LP DID + - gpio: pcf857x: Fix missing first interrupt + - mfd: gateworks-gsc: Fix interrupt type + - printk: fix deadlock when kernel panic + - exfat: fix shift-out-of-bounds in exfat_fill_super() + - zonefs: Fix file size of zones in full condition + - [Config] updateconfigs for KCMP + - kcmp: Support selection of SYS_kcmp without CHECKPOINT_RESTORE + - thermal: cpufreq_cooling: freq_qos_update_request() returns < 0 on error + - cpufreq: intel_pstate: Change intel_pstate_get_hwp_max() argument + - cpufreq: intel_pstate: Get per-CPU max freq via MSR_HWP_CAPABILITIES if + available + - proc: don't allow async path resolution of /proc/thread-self components + - s390/vtime: fix inline assembly clobber list + - virtio/s390: implement virtio-ccw revision 2 correctly + - um: mm: check more comprehensively for stub changes + - um: defer killing userspace on page table update failures + - irqchip/loongson-pch-msi: Use bitmap_zalloc() to allocate bitmap + - f2fs: fix out-of-repair __setattr_copy() + - f2fs: enforce the immutable flag on open files + - f2fs: flush data when enabling checkpoint back + - sparc32: fix a user-triggerable oops in clear_user() + - spi: fsl: invert spisel_boot signal on MPC8309 + - spi: spi-synquacer: fix set_cs handling + - gfs2: fix glock confusion in function signal_our_withdraw + - gfs2: Don't skip dlm unlock if glock has an lvb + - gfs2: Lock imbalance on error path in gfs2_recover_one + - gfs2: Recursive gfs2_quota_hold in gfs2_iomap_end + - dm: fix deadlock when swapping to encrypted device + - dm writecache: fix performance degradation in ssd mode + - dm writecache: return the exact table values that were set + - dm writecache: fix writing beyond end of underlying device when shrinking + - dm era: Recover committed writeset after crash + - dm era: Update in-core bitset after committing the metadata + - dm era: Verify the data block size hasn't changed + - dm era: Fix bitset memory leaks + - dm era: Use correct value size in equality function of writeset tree + - dm era: Reinitialize bitset cache before digesting a new writeset + - dm era: only resize metadata in preresume + - drm/i915: Reject 446-480MHz HDMI clock on GLK + - kgdb: fix to kill breakpoints on initmem after boot + - wireguard: selftests: test multiple parallel streams + - wireguard: queueing: get rid of per-peer ring buffers + - net: sched: fix police ext initialization + - net: qrtr: Fix memory leak in qrtr_tun_open + - ARM: dts: aspeed: Add LCLK to lpc-snoop + - ipv6: icmp6: avoid indirect call for icmpv6_send() + + * Mute/Mic-mute LEDs are not work on HP 850/840/440 G8 Laptops (LP: #1920030) + - ALSA: hda/realtek: fix mute/micmute LEDs for HP 840 G8 + - ALSA: hda/realtek: fix mute/micmute LEDs for HP 440 G8 + - ALSA: hda/realtek: fix mute/micmute LEDs for HP 850 G8 + + * Groovy update: upstream stable patchset 2021-03-19 (LP: #1920571) + - af_key: relax availability checks for skb size calculation + - regulator: core: avoid regulator_resolve_supply() race condition + - ASoC: wm_adsp: Fix control name parsing for multi-fw + - mac80211: 160MHz with extended NSS BW in CSA + - ASoC: Intel: Skylake: Zero snd_ctl_elem_value + - chtls: Fix potential resource leak + - pNFS/NFSv4: Try to return invalid layout in pnfs_layout_process() + - pNFS/NFSv4: Improve rejection of out-of-order layouts + - ALSA: hda: intel-dsp-config: add PCI id for TGL-H + - ASoC: ak4458: correct reset polarity + - ASoC: Intel: sof_sdw: set proper flags for Dell TGL-H SKU 0A5E + - iwlwifi: mvm: skip power command when unbinding vif during CSA + - iwlwifi: mvm: take mutex for calling iwl_mvm_get_sync_time() + - iwlwifi: pcie: add a NULL check in iwl_pcie_txq_unmap + - iwlwifi: pcie: fix context info memory leak + - iwlwifi: mvm: invalidate IDs of internal stations at mvm start + - iwlwifi: pcie: add rules to match Qu with Hr2 + - iwlwifi: mvm: guard against device removal in reprobe + - SUNRPC: Move simple_get_bytes and simple_get_netobj into private header + - SUNRPC: Handle 0 length opaque XDR object data properly + - i2c: mediatek: Move suspend and resume handling to NOIRQ phase + - blk-cgroup: Use cond_resched() when destroy blkgs + - regulator: Fix lockdep warning resolving supplies + - bpf: Fix verifier jmp32 pruning decision logic + - bpf: Fix verifier jsgt branch analysis on max bound + - drm/i915: Fix ICL MG PHY vswing handling + - drm/i915: Skip vswing programming for TBT + - nilfs2: make splice write available again + - squashfs: avoid out of bounds writes in decompressors + - squashfs: add more sanity checks in id lookup + - squashfs: add more sanity checks in inode lookup + - squashfs: add more sanity checks in xattr id lookup + - gpio: mxs: GPIO_MXS should not default to y unconditionally + - gpio: ep93xx: fix BUG_ON port F usage + - gpio: ep93xx: Fix single irqchip with multi gpiochips + - tracing: Do not count ftrace events in top level enable output + - tracing: Check length before giving out the filter buffer + - drm/i915: Fix overlay frontbuffer tracking + - arm/xen: Don't probe xenbus as part of an early initcall + - cgroup: fix psi monitor for root cgroup + - drm/i915/tgl+: Make sure TypeC FIA is powered up when initializing it + - drm/dp_mst: Don't report ports connected if nothing is attached to them + - dmaengine: move channel device_node deletion to driver + - soc: ti: omap-prm: Fix boot time errors for rst_map_012 bits 0 and 1 + - arm64: dts: rockchip: Fix PCIe DT properties on rk3399 + - arm64: dts: qcom: sdm845: Reserve LPASS clocks in gcc + - ARM: OMAP2+: Fix suspcious RCU usage splats for omap_enter_idle_coupled + - arm64: dts: rockchip: remove interrupt-names property from rk3399 vdec node + - platform/x86: hp-wmi: Disable tablet-mode reporting by default + - ovl: perform vfs_getxattr() with mounter creds + - cap: fix conversions on getxattr + - ovl: skip getxattr of security labels + - scsi: lpfc: Fix EEH encountering oops with NVMe traffic + - x86/split_lock: Enable the split lock feature on Sapphire Rapids and Alder + Lake CPUs + - x86/split_lock: Enable the split lock feature on another Alder Lake CPU + - nvme-pci: ignore the subsysem NQN on Phison E16 + - drm/amd/display: Fix DPCD translation for LTTPR AUX_RD_INTERVAL + - drm/amd/display: Add more Clock Sources to DCN2.1 + - drm/amd/display: Release DSC before acquiring + - drm/amd/display: Fix dc_sink kref count in emulated_link_detect + - drm/amd/display: Free atomic state after drm_atomic_commit + - drm/amd/display: Decrement refcount of dc_sink before reassignment + - riscv: virt_addr_valid must check the address belongs to linear mapping + - ARM: dts: lpc32xx: Revert set default clock rate of HCLK PLL + - kallsyms: fix nonconverging kallsyms table with lld + - ARM: ensure the signal page contains defined contents + - ARM: kexec: fix oops after TLB are invalidated + - ubsan: implement __ubsan_handle_alignment_assumption + - x86/efi: Remove EFI PGD build time checks + - lkdtm: don't move ctors to .rodata + - cgroup-v1: add disabled controller check in cgroup1_parse_param() + - mt76: dma: fix a possible memory leak in mt76_add_fragment() + - drm/vc4: hvs: Fix buffer overflow with the dlist handling + - bpf: Unbreak BPF_PROG_TYPE_KPROBE when kprobe is called via do_int3 + - bpf: Check for integer overflow when using roundup_pow_of_two() + - netfilter: xt_recent: Fix attempt to update deleted entry + - netfilter: nftables: fix possible UAF over chains from packet path in netns + - netfilter: flowtable: fix tcp and udp header checksum update + - xen/netback: avoid race in xenvif_rx_ring_slots_available() + - net: hdlc_x25: Return meaningful error code in x25_open + - net: ipa: set error code in gsi_channel_setup() + - hv_netvsc: Reset the RSC count if NVSP_STAT_FAIL in netvsc_receive() + - net: enetc: initialize the RFS and RSS memories + - selftests: txtimestamp: fix compilation issue + - net: stmmac: set TxQ mode back to DCB after disabling CBS + - ibmvnic: Clear failover_pending if unable to schedule + - netfilter: conntrack: skip identical origin tuple in same zone only + - scsi: scsi_debug: Fix a memory leak + - x86/build: Disable CET instrumentation in the kernel for 32-bit too + - net: hns3: add a check for queue_id in hclge_reset_vf_queue() + - net: hns3: add a check for tqp_index in hclge_get_ring_chain_from_mbx() + - net: hns3: add a check for index in hclge_get_rss_key() + - firmware_loader: align .builtin_fw to 8 + - drm/sun4i: tcon: set sync polarity for tcon1 channel + - drm/sun4i: dw-hdmi: always set clock rate + - drm/sun4i: Fix H6 HDMI PHY configuration + - drm/sun4i: dw-hdmi: Fix max. frequency for H6 + - clk: sunxi-ng: mp: fix parent rate change flag check + - i2c: stm32f7: fix configuration of the digital filter + - h8300: fix PREEMPTION build, TI_PRE_COUNT undefined + - scripts: set proper OpenSSL include dir also for sign-file + - rxrpc: Fix clearance of Tx/Rx ring when releasing a call + - udp: fix skb_copy_and_csum_datagram with odd segment sizes + - net: dsa: call teardown method on probe failure + - cpufreq: ACPI: Extend frequency tables to cover boost frequencies + - cpufreq: ACPI: Update arch scale-invariance max perf ratio if CPPC is not + there + - net: gro: do not keep too many GRO packets in napi->rx_list + - net: fix iteration for sctp transport seq_files + - net/vmw_vsock: fix NULL pointer dereference + - net/vmw_vsock: improve locking in vsock_connect_timeout() + - net: watchdog: hold device global xmit lock during tx disable + - bridge: mrp: Fix the usage of br_mrp_port_switchdev_set_state + - switchdev: mrp: Remove SWITCHDEV_ATTR_ID_MRP_PORT_STAT + - vsock/virtio: update credit only if socket is not closed + - vsock: fix locking in vsock_shutdown() + - net/rds: restrict iovecs length for RDS_CMSG_RDMA_ARGS + - net/qrtr: restrict user-controlled length in qrtr_tun_write_iter() + - ovl: expand warning in ovl_d_real() + - kcov, usb: only collect coverage from __usb_hcd_giveback_urb in softirq + - usb: dwc3: ulpi: fix checkpatch warning + - net: qrtr: Fix port ID for control messages + - mptcp: skip to next candidate if subflow has unacked data + - mt76: mt7915: fix endian issues + - mt76: mt7615: fix rdd mcu cmd endianness + - net: sched: incorrect Kconfig dependencies on Netfilter modules + - net: openvswitch: fix TTL decrement exception action execution + - net: bridge: Fix a warning when del bridge sysfs + - net: fix proc_fs init handling in af_packet and tls + - Xen/x86: don't bail early from clear_foreign_p2m_mapping() + - Xen/x86: also check kernel mapping in set_foreign_p2m_mapping() + - Xen/gntdev: correct dev_bus_addr handling in gntdev_map_grant_pages() + - Xen/gntdev: correct error checking in gntdev_map_grant_pages() + - xen/arm: don't ignore return errors from set_phys_to_machine + - xen-blkback: don't "handle" error by BUG() + - xen-netback: don't "handle" error by BUG() + - xen-scsiback: don't "handle" error by BUG() + - xen-blkback: fix error handling in xen_blkbk_map() + - tty: protect tty_write from odd low-level tty disciplines + - btrfs: fix backport of 2175bf57dc952 in 5.10.13 + - media: pwc: Use correct device for DMA + - HID: make arrays usage and value to be the same + - RDMA: Lift ibdev_to_node from rds to common code + - nvme-rdma: Use ibdev_to_node instead of dereferencing ->dma_device + - USB: quirks: sort quirk entries + - usb: quirks: add quirk to start video capture on ELMO L-12F document camera + reliable + - ceph: downgrade warning from mdsmap decode to debug + - ntfs: check for valid standard information attribute + - Bluetooth: btusb: Some Qualcomm Bluetooth adapters stop working + - arm64: tegra: Add power-domain for Tegra210 HDA + - hwmon: (dell-smm) Add XPS 15 L502X to fan control blacklist + - mm: unexport follow_pte_pmd + - mm: simplify follow_pte{,pmd} + - KVM: do not assume PTE is writable after follow_pfn + - mm: provide a saner PTE walking API for modules + - KVM: Use kvm_pfn_t for local PFN variable in hva_to_pfn_remapped() + - NET: usb: qmi_wwan: Adding support for Cinterion MV31 + - cxgb4: Add new T6 PCI device id 0x6092 + - kbuild: fix CONFIG_TRIM_UNUSED_KSYMS build for ppc64 + - scripts/recordmcount.pl: support big endian for ARCH sh + + * Groovy update: upstream stable patchset 2021-03-12 (LP: #1918987) + - net: fec: put child node on error path + - net: octeontx2: Make sure the buffer is 128 byte aligned + - stmmac: intel: Configure EHL PSE0 GbE and PSE1 GbE to 32 bits DMA addressing + - net: dsa: bcm_sf2: put device node before return + - net: switchdev: don't set port_obj_info->handled true when -EOPNOTSUPP + - ibmvnic: Ensure that CRQ entry read are correctly ordered + - iommu/io-pgtable-arm: Support coherency for Mali LPAE + - drm/panfrost: Support cache-coherent integrations + - arm64: dts: meson: Describe G12b GPU as coherent + - arm64: Fix kernel address detection of __is_lm_address() + - arm64: Do not pass tagged addresses to __is_lm_address() + - ARM: 9025/1: Kconfig: CPU_BIG_ENDIAN depends on !LD_IS_LLD + - iommu/vt-d: Do not use flush-queue when caching-mode is on + - phy: cpcap-usb: Fix warning for missing regulator_disable + - tools/power/x86/intel-speed-select: Set scaling_max_freq to base_frequency + - tools/power/x86/intel-speed-select: Set higher of cpuinfo_max_freq or + base_frequency + - platform/x86: touchscreen_dmi: Add swap-x-y quirk for Goodix touchscreen on + Estar Beauty HD tablet + - platform/x86: intel-vbtn: Support for tablet mode on Dell Inspiron 7352 + - locking/lockdep: Avoid noinstr warning for DEBUG_LOCKDEP + - x86: __always_inline __{rd,wr}msr() + - scsi: scsi_transport_srp: Don't block target in failfast state + - scsi: libfc: Avoid invoking response handler twice if ep is already + completed + - scsi: fnic: Fix memleak in vnic_dev_init_devcmd2 + - ALSA: hda - add Intel DG1 PCI and HDMI ids + - ALSA: hda: Add Alderlake-S PCI ID and HDMI codec vid + - ALSA: hda: Add AlderLake-P PCI ID and HDMI codec vid + - objtool: Don't add empty symbols to the rbtree + - mac80211: fix incorrect strlen of .write in debugfs + - mac80211: fix fast-rx encryption check + - scsi: ibmvfc: Set default timeout to avoid crash during migration + - i2c: tegra: Create i2c_writesl_vi() to use with VI I2C for filling TX FIFO + - udf: fix the problem that the disc content is not displayed + - nvme: check the PRINFO bit before deciding the host buffer length + - nvme-rdma: avoid request double completion for concurrent nvme_rdma_timeout + - nvme-tcp: avoid request double completion for concurrent nvme_tcp_timeout + - nvme-pci: allow use of cmb on v1.4 controllers + - nvmet: set right status on error in id-ns handler + - platform/x86: thinkpad_acpi: Add P53/73 firmware to fan_quirk_table for dual + fan control + - selftests/powerpc: Only test lwm/stmw on big endian + - drm/amd/display: Update dram_clock_change_latency for DCN2.1 + - drm/amd/display: Change function decide_dp_link_settings to avoid infinite + looping + - drm/amd/display: Use hardware sequencer functions for PG control + - objtool: Don't fail the kernel build on fatal errors + - x86/cpu: Add Lakefield, Alder Lake and Rocket Lake models to the to Intel + CPU family + - x86/cpu: Add another Alder Lake CPU to the Intel family + - kthread: Extract KTHREAD_IS_PER_CPU + - workqueue: Restrict affinity change to rescuer + - Revert "Revert "block: end bio with BLK_STS_AGAIN in case of non-mq devs and + REQ_NOWAIT"" + - ACPI: thermal: Do not call acpi_thermal_check() directly + - USB: serial: cp210x: add pid/vid for WSDA-200-USB + - USB: serial: cp210x: add new VID/PID for supporting Teraoka AD2000 + - USB: serial: option: Adding support for Cinterion MV31 + - usb: host: xhci-plat: add priv quirk for skip PHY initialization + - usb: host: xhci: mvebu: make USB 3.0 PHY optional for Armada 3720 + - USB: gadget: legacy: fix an error code in eth_bind() + - usb: gadget: aspeed: add missing of_node_put + - USB: usblp: don't call usb_set_interface if there's a single alt + - usb: renesas_usbhs: Clear pipe running flag in usbhs_pkt_pop() + - usb: dwc2: Fix endpoint direction check in ep_from_windex + - usb: dwc3: fix clock issue during resume in OTG mode + - usb: xhci-mtk: fix unreleased bandwidth data + - usb: xhci-mtk: skip dropping bandwidth of unchecked endpoints + - usb: xhci-mtk: break loop when find the endpoint to drop + - ARM: OMAP1: OSK: fix ohci-omap breakage + - arm64: dts: qcom: c630: keep both touchpad devices enabled + - arm64: dts: amlogic: meson-g12: Set FL-adj property value + - arm64: dts: rockchip: fix vopl iommu irq on px30 + - arm64: dts: rockchip: Use only supported PCIe link speed on Pinebook Pro + - ARM: dts: stm32: Connect card-detect signal on DHCOM + - ARM: dts: stm32: Disable WP on DHCOM uSD slot + - um: virtio: free vu_dev only with the contained struct device + - arm64: dts: meson: switch TFLASH_VDD_EN pin to open drain on Odroid-C4 + - r8169: work around RTL8125 UDP hw bug + - rxrpc: Fix deadlock around release of dst cached on udp tunnel + - arm64: dts: ls1046a: fix dcfg address range + - SUNRPC: Fix NFS READs that start at non-page-aligned offsets + - igc: set the default return value to -IGC_ERR_NVM in igc_write_nvm_srwr + - igc: check return value of ret_val in igc_config_fc_after_link_up + - i40e: Revert "i40e: don't report link up for a VF who hasn't enabled queues" + - ibmvnic: device remove has higher precedence over reset + - net/mlx5: Fix leak upon failure of rule creation + - net/mlx5e: Update max_opened_tc also when channels are closed + - net/mlx5e: Release skb in case of failure in tc update skb + - net: lapb: Copy the skb before sending a packet + - net: mvpp2: TCAM entry enable should be written after SRAM data + - r8169: fix WoL on shutdown if CONFIG_DEBUG_SHIRQ is set + - net: ipa: pass correct dma_handle to dma_free_coherent() + - ARM: dts: sun7i: a20: bananapro: Fix ethernet phy-mode + - nvmet-tcp: fix out-of-bounds access when receiving multiple h2cdata PDUs + - memblock: do not start bottom-up allocations with kernel_end + - ovl: fix dentry leak in ovl_get_redirect + - mac80211: fix station rate table updates on assoc + - gpiolib: free device name on error path to fix kmemleak + - fgraph: Initialize tracing_graph_pause at task creation + - tracing/kprobe: Fix to support kretprobe events on unloaded modules + - kretprobe: Avoid re-registration of the same kretprobe earlier + - tracing: Use pause-on-trace with the latency tracers + - libnvdimm/namespace: Fix visibility of namespace resource attribute + - libnvdimm/dimm: Avoid race between probe and available_slots_show() + - genirq: Prevent [devm_]irq_alloc_desc from returning irq 0 + - genirq/msi: Activate Multi-MSI early when MSI_FLAG_ACTIVATE_EARLY is set + - scripts: use pkg-config to locate libcrypto + - xhci: fix bounce buffer usage for non-sg list case + - RISC-V: Define MAXPHYSMEM_1GB only for RV32 + - cifs: report error instead of invalid when revalidating a dentry fails + - iommu: Check dev->iommu in dev_iommu_priv_get() before dereferencing it + - smb3: Fix out-of-bounds bug in SMB2_negotiate() + - smb3: fix crediting for compounding when only one request in flight + - mmc: sdhci-pltfm: Fix linking err for sdhci-brcmstb + - mmc: core: Limit retries when analyse of SDIO tuples fails + - Fix unsynchronized access to sev members through svm_register_enc_region + - drm/i915/display: Prevent double YUV range correction on HDR planes + - drm/i915: Extract intel_ddi_power_up_lanes() + - drm/i915: Power up combo PHY lanes for for HDMI as well + - drm/amd/display: Revert "Fix EDID parsing after resume from suspend" + - nvme-pci: avoid the deepest sleep state on Kingston A2000 SSDs + - KVM: SVM: Treat SVM as unsupported when running as an SEV guest + - KVM: x86: Allow guests to see MSR_IA32_TSX_CTRL even if tsx=off + - KVM: x86: fix CPUID entries returned by KVM_GET_CPUID2 ioctl + - KVM: x86: Update emulator context mode if SYSENTER xfers to 64-bit mode + - DTS: ARM: gta04: remove legacy spi-cs-high to make display work again + - ARM: dts; gta04: SPI panel chip select is active low + - ARM: footbridge: fix dc21285 PCI configuration accessors + - mm: hugetlbfs: fix cannot migrate the fallocated HugeTLB page + - mm: hugetlb: fix a race between freeing and dissolving the page + - mm: hugetlb: fix a race between isolating and freeing page + - mm: hugetlb: remove VM_BUG_ON_PAGE from page_huge_active + - mm, compaction: move high_pfn to the for loop scope + - mm: thp: fix MADV_REMOVE deadlock on shmem THP + - mm/filemap: add missing mem_cgroup_uncharge() to + __add_to_page_cache_locked() + - x86/build: Disable CET instrumentation in the kernel + - x86/debug: Fix DR6 handling + - x86/debug: Prevent data breakpoints on __per_cpu_offset + - x86/debug: Prevent data breakpoints on cpu_dr7 + - x86/apic: Add extra serialization for non-serializing MSRs + - Input: goodix - add support for Goodix GT9286 chip + - Input: xpad - sync supported devices with fork on GitHub + - Input: ili210x - implement pressure reporting for ILI251x + - md: Set prev_flush_start and flush_bio in an atomic way + - neighbour: Prevent a dead entry from updating gc_list + - net: ip_tunnel: fix mtu calculation + - udp: ipv4: manipulate network header of NATed UDP GRO fraglist + - net: dsa: mv88e6xxx: override existent unicast portvec in port_fdb_add + - net: sched: replaced invalid qdisc tree flush helper in qdisc_replace + - iwlwifi: mvm: don't send RFH_QUEUE_CONFIG_CMD with no queues + + * power off stress test will hang on the TGL machines (LP: #1919930) + - [Config] set SND_SOC_SOF_HDA_ALWAYS_ENABLE_DMI_L1 to n + + * eeh-basic.sh from powerpc in ubuntu_kernel_selftests failed with unexpected + operator on F-5.8 (LP: #1909428) + - selftests/powerpc: Make the test check in eeh-basic.sh posix compliant + + -- Stefan Bader Wed, 14 Apr 2021 15:23:21 +0200 + +linux (5.8.0-50.56) groovy; urgency=medium + + * overlayfs calls vfs_setxattr without cap_convert_nscap + - vfs: move cap_convert_nscap() call into vfs_setxattr() + + * CVE-2021-3492 + - SAUCE: shiftfs: free allocated memory in shiftfs_btrfs_ioctl_fd_replace() + error paths + - SAUCE: shiftfs: handle copy_to_user() return values correctly + + * CVE-2021-29154 + - SAUCE: bpf, x86: Validate computation of branch displacements for x86-64 + - SAUCE: bpf, x86: Validate computation of branch displacements for x86-32 + + -- Stefan Bader Mon, 12 Apr 2021 17:02:49 +0200 + +linux (5.8.0-49.55) groovy; urgency=medium + + * groovy/linux: 5.8.0-49.55 -proposed tracker (LP: #1921053) + + * selftests: bpf verifier fails after sanitize_ptr_alu fixes (LP: #1920995) + - bpf: Simplify alu_limit masking for pointer arithmetic + - bpf: Add sanity check for upper ptr_limit + - bpf, selftests: Fix up some test_verifier cases for unprivileged + + * Packaging resync (LP: #1786013) + - update dkms package versions + + * improper memcg accounting causes NULL pointer derefs (LP: #1918668) + - SAUCE: Revert "mm: memcg/slab: optimize objcg stock draining" + + * kernel: Enable CONFIG_BPF_LSM on Ubuntu (LP: #1905975) + - [Config] Enable CONFIG_BPF_LSM + + * Groovy update: upstream stable patchset 2021-03-10 (LP: #1918516) + - gpio: mvebu: fix pwm .get_state period calculation + - HID: wacom: Correct NULL dereference on AES pen proximity + - media: v4l2-subdev.h: BIT() is not available in userspace + - RDMA/vmw_pvrdma: Fix network_hdr_type reported in WC + - kernel/io_uring: cancel io_uring before task works + - io_uring: dont kill fasync under completion_lock + - objtool: Don't fail on missing symbol table + - mm/page_alloc: add a missing mm_page_alloc_zone_locked() tracepoint + - mm: fix a race on nr_swap_pages + - tools: Factor HOSTCC, HOSTLD, HOSTAR definitions + - iwlwifi: provide gso_type to GSO packets + - tty: avoid using vfs_iocb_iter_write() for redirected console writes + - ACPI: sysfs: Prefer "compatible" modalias + - kernel: kexec: remove the lock operation of system_transition_mutex + - ALSA: hda/realtek: Enable headset of ASUS B1400CEPE with ALC256 + - ALSA: hda/via: Apply the workaround generically for Clevo machines + - parisc: Enable -mlong-calls gcc option by default when !CONFIG_MODULES + - media: cec: add stm32 driver + - media: hantro: Fix reset_raw_fmt initialization + - media: rc: fix timeout handling after switch to microsecond durations + - media: rc: ite-cir: fix min_timeout calculation + - media: rc: ensure that uevent can be read directly after rc device register + - ARM: dts: tbs2910: rename MMC node aliases + - ARM: dts: ux500: Reserve memory carveouts + - ARM: dts: imx6qdl-gw52xx: fix duplicate regulator naming + - wext: fix NULL-ptr-dereference with cfg80211's lack of commit() + - ASoC: AMD Renoir - refine DMI entries for some Lenovo products + - drm/i915: Always flush the active worker before returning from the wait + - drm/i915/gt: Always try to reserve GGTT address 0x0 + - drivers/nouveau/kms/nv50-: Reject format modifiers for cursor planes + - net: usb: qmi_wwan: added support for Thales Cinterion PLSx3 modem family + - s390: uv: Fix sysfs max number of VCPUs reporting + - s390/vfio-ap: No need to disable IRQ after queue reset + - PM: hibernate: flush swap writer after marking + - x86/entry: Emit a symbol for register restoring thunk + - efi/apple-properties: Reinstate support for boolean properties + - drivers: soc: atmel: Avoid calling at91_soc_init on non AT91 SoCs + - drivers: soc: atmel: add null entry at the end of at91_soc_allowed_list[] + - btrfs: fix possible free space tree corruption with online conversion + - KVM: x86/pmu: Fix HW_REF_CPU_CYCLES event pseudo-encoding in + intel_arch_events[] + - KVM: x86/pmu: Fix UBSAN shift-out-of-bounds warning in intel_pmu_refresh() + - KVM: nVMX: Sync unsync'd vmcs02 state to vmcs12 on migration + - KVM: x86: get smi pending status correctly + - KVM: Forbid the use of tagged userspace addresses for memslots + - xen: Fix XenStore initialisation for XS_LOCAL + - leds: trigger: fix potential deadlock with libata + - arm64: dts: broadcom: Fix USB DMA address translation for Stingray + - mt7601u: fix kernel crash unplugging the device + - mt7601u: fix rx buffer refcounting + - iwlwifi: Fix IWL_SUBDEVICE_NO_160 macro to use the correct bit. + - drm/i915/gt: Clear CACHE_MODE prior to clearing residuals + - drm/i915/pmu: Don't grab wakeref when enabling events + - net/mlx5e: Fix IPSEC stats + - ARM: dts: imx6qdl-kontron-samx6i: fix pwms for lcd-backlight + - drm/nouveau/svm: fail NOUVEAU_SVM_INIT ioctl on unsupported devices + - drm/i915: Check for all subplatform bits + - drm/i915/selftest: Fix potential memory leak + - uapi: fix big endian definition of ipv6_rpl_sr_hdr + - KVM: Documentation: Fix spec for KVM_CAP_ENABLE_CAP_VM + - tee: optee: replace might_sleep with cond_resched + - xen-blkfront: allow discard-* nodes to be optional + - clk: mmp2: fix build without CONFIG_PM + - clk: qcom: gcc-sm250: Use floor ops for sdcc clks + - ARM: imx: build suspend-imx6.S with arm instruction set + - ARM: zImage: atags_to_fdt: Fix node names on added root nodes + - netfilter: nft_dynset: add timeout extension to template + - Revert "RDMA/mlx5: Fix devlink deadlock on net namespace deletion" + - xfrm: Fix oops in xfrm_replay_advance_bmp + - xfrm: fix disable_xfrm sysctl when used on xfrm interfaces + - xfrm: Fix wraparound in xfrm_policy_addr_delta() + - arm64: dts: ls1028a: fix the offset of the reset register + - ARM: dts: imx6qdl-kontron-samx6i: fix i2c_lcd/cam default status + - ARM: dts: imx6qdl-sr-som: fix some cubox-i platforms + - arm64: dts: imx8mp: Correct the gpio ranges of gpio3 + - firmware: imx: select SOC_BUS to fix firmware build + - RDMA/cxgb4: Fix the reported max_recv_sge value + - ASoC: Intel: Skylake: skl-topology: Fix OOPs ib skl_tplg_complete + - pNFS/NFSv4: Fix a layout segment leak in pnfs_layout_process() + - pNFS/NFSv4: Update the layout barrier when we schedule a layoutreturn + - iwlwifi: pcie: set LTR on more devices + - iwlwifi: pcie: use jiffies for memory read spin time limit + - iwlwifi: pcie: reschedule in long-running memory reads + - mac80211: pause TX while changing interface type + - ice: fix FDir IPv6 flexbyte + - ice: Implement flow for IPv6 next header (extension header) + - ice: update dev_addr in ice_set_mac_address even if HW filter exists + - ice: Don't allow more channels than LAN MSI-X available + - ice: Fix MSI-X vector fallback logic + - i40e: acquire VSI pointer only after VF is initialized + - igc: fix link speed advertising + - net/mlx5: Fix memory leak on flow table creation error flow + - net/mlx5e: E-switch, Fix rate calculation for overflow + - net/mlx5e: free page before return + - net/mlx5e: Reduce tc unsupported key print level + - net/mlx5e: Disable hw-tc-offload when MLX5_CLS_ACT config is disabled + - net/mlx5e: Fix CT rule + encap slow path offload and deletion + - net/mlx5e: Correctly handle changing the number of queues when the interface + is down + - net/mlx5e: Revert parameters on errors when changing trust state without + reset + - net/mlx5e: Revert parameters on errors when changing MTU and LRO state + without reset + - can: dev: prevent potential information leak in can_fill_info() + - ACPI/IORT: Do not blindly trust DMA masks from firmware + - iommu/amd: Use IVHD EFR for early initialization of IOMMU features + - iommu/vt-d: Correctly check addr alignment in qi_flush_dev_iotlb_pasid() + - nvme-multipath: Early exit if no path is available + - selftests: forwarding: Specify interface when invoking mausezahn + - rxrpc: Fix memory leak in rxrpc_lookup_local + - NFC: fix resource leak when target index is invalid + - NFC: fix possible resource leak + - ASoC: topology: Properly unregister DAI on removal + - ASoC: topology: Fix memory corruption in soc_tplg_denum_create_values() + - team: protect features update by RCU to avoid deadlock + - tcp: make TCP_USER_TIMEOUT accurate for zero window probes + - tcp: fix TLP timer not set when CA_STATE changes from DISORDER to OPEN + - ICMPv6: Add ICMPv6 Parameter Problem, code 3 definition + - IPv6: reply ICMP error if the first fragment don't include all headers + - iommu/vt-d: Gracefully handle DMAR units with no supported address widths + + * xfrm_policy.sh in net from ubuntu_kernel_selftests passed with failed sub- + cases (LP: #1909647) + - selftests: xfrm: fix test return value override issue in xfrm_policy.sh + + * CVE-2021-3347 + - futex: Remove put_futex_key() + - futex: Remove needless goto's + - futex: Replace pointless printk in fixup_owner() + - futex: Ensure the correct return value from futex_lock_pi() + - futex: Provide and use pi_state_update_owner() + - rtmutex: Remove unused argument from rt_mutex_proxy_unlock() + - futex: Use pi_state_update_owner() in put_pi_state() + - futex: Simplify fixup_pi_state_owner() + - futex: Handle faults correctly for PI futexes + + * CVE-2021-3348 + - nbd: freeze the queue while we're adding connections + + * [Regression] ubuntu_bpf failed to build on Groovy (LP: #1917609) + - SAUCE: partially revert "bpf: Zero-fill re-used per-cpu map element" + + * alsa/hda: the hdmi audio dosn't work on TGL machines (LP: #1917829) + - ALSA: hda/hdmi: let new platforms assign the pcm slot dynamically + + * Groovy update: upstream stable patchset 2021-03-05 (LP: #1917964) + - mtd: rawnand: gpmi: fix dst bit offset when extracting raw payload + - i2c: bpmp-tegra: Ignore unknown I2C_M flags + - platform/x86: i2c-multi-instantiate: Don't create platform device for + INT3515 ACPI nodes + - platform/x86: ideapad-laptop: Disable touchpad_switch for ELAN0634 + - ALSA: seq: oss: Fix missing error check in snd_seq_oss_synth_make_info() + - ALSA: hda/realtek - Limit int mic boost on Acer Aspire E5-575T + - ALSA: hda/via: Add minimum mute flag + - dm crypt: fix copy and paste bug in crypt_alloc_req_aead + - ACPI: scan: Make acpi_bus_get_device() clear return pointer on error + - btrfs: don't get an EINTR during drop_snapshot for reloc + - btrfs: do not double free backref nodes on error + - btrfs: fix lockdep splat in btrfs_recover_relocation + - btrfs: don't clear ret in btrfs_start_dirty_block_groups + - btrfs: send: fix invalid clone operations when cloning from the same file + and root + - writeback: Drop I_DIRTY_TIME_EXPIRE + - fs: fix lazytime expiration handling in __writeback_single_inode() + - pinctrl: ingenic: Fix JZ4760 support + - mmc: core: don't initialize block size from ext_csd if not present + - mmc: sdhci-of-dwcmshc: fix rpmb access + - mmc: sdhci-xenon: fix 1.8v regulator stabilization + - mmc: sdhci-brcmstb: Fix mmc timeout errors on S5 suspend + - dm: avoid filesystem lookup in dm_get_dev_t() + - dm integrity: fix a crash if "recalculate" used without "internal_hash" + - dm integrity: conditionally disable "recalculate" feature + - drm/atomic: put state on error path + - drm/syncobj: Fix use-after-free + - drm/amdgpu: remove gpu info firmware of green sardine + - drm/amd/display: DCN2X Find Secondary Pipe properly in MPO + ODM Case + - drm/i915/gt: Prevent use of engine->wa_ctx after error + - ASoC: Intel: haswell: Add missing pm_ops + - ASoC: rt711: mutex between calibration and power state changes + - SUNRPC: Handle TCP socket sends with kernel_sendpage() again + - HID: sony: select CONFIG_CRC32 + - dm integrity: select CRYPTO_SKCIPHER + - scsi: ufs: Correct the LUN used in eh_device_reset_handler() callback + - scsi: qedi: Correct max length of CHAP secret + - scsi: scsi_debug: Fix memleak in scsi_debug_init() + - scsi: sd: Suppress spurious errors when WRITE SAME is being disabled + - riscv: Fix kernel time_init() + - riscv: Fix sifive serial driver + - riscv: Enable interrupts during syscalls with M-Mode + - HID: logitech-dj: add the G602 receiver + - HID: Ignore battery for Elan touchscreen on ASUS UX550 + - clk: tegra30: Add hda clock default rates to clock driver + - ALSA: hda/tegra: fix tegra-hda on tegra30 soc + - arm64: make atomic helpers __always_inline + - xen: Fix event channel callback via INTX/GSI + - x86/xen: Add xen_no_vector_callback option to test PCI INTX delivery + - dts: phy: fix missing mdio device and probe failure of vsc8541-01 device + - riscv: defconfig: enable gpio support for HiFive Unleashed + - drm/amdgpu/psp: fix psp gfx ctrl cmds + - drm/amd/display: disable dcn10 pipe split by default + - HID: logitech-hidpp: Add product ID for MX Ergo in Bluetooth mode + - drm/amd/display: Fix to be able to stop crc calculation + - drm/nouveau/bios: fix issue shadowing expansion ROMs + - drm/nouveau/privring: ack interrupts the same way as RM + - drm/nouveau/i2c/gm200: increase width of aux semaphore owner fields + - drm/nouveau/mmu: fix vram heap sizing + - drm/nouveau/kms/nv50-: fix case where notifier buffer is at offset 0 + - io_uring: flush timeouts that should already have expired + - libperf tests: If a test fails return non-zero + - libperf tests: Fail when failing to get a tracepoint id + - RISC-V: Set current memblock limit + - RISC-V: Fix maximum allowed phsyical memory for RV32 + - pinctrl: aspeed: g6: Fix PWMG0 pinctrl setting + - pinctrl: mediatek: Fix fallback call path + - scsi: megaraid_sas: Fix MEGASAS_IOC_FIRMWARE regression + - scsi: ufs: ufshcd-pltfrm depends on HAS_IOMEM + - crypto: omap-sham - Fix link error without crypto-engine + - powerpc: Use the common INIT_DATA_SECTION macro in vmlinux.lds.S + - powerpc: Fix alignment bug within the init sections + - arm64: entry: remove redundant IRQ flag tracing + - drm/amdkfd: Fix out-of-bounds read in kdf_create_vcrat_image_cpu() + - i2c: octeon: check correct size of maximum RECV_LEN packet + - platform/x86: intel-vbtn: Drop HP Stream x360 Convertible PC 11 from allow- + list + - platform/x86: hp-wmi: Don't log a warning on HPWMI_RET_UNKNOWN_COMMAND + errors + - gpio: sifive: select IRQ_DOMAIN_HIERARCHY rather than depend on it + - selftests: net: fib_tests: remove duplicate log test + - can: dev: can_restart: fix use after free bug + - can: vxcan: vxcan_xmit: fix use after free bug + - can: peak_usb: fix use after free bugs + - perf evlist: Fix id index for heterogeneous systems + - i2c: sprd: depend on COMMON_CLK to fix compile tests + - iio: common: st_sensors: fix possible infinite loop in st_sensors_irq_thread + - iio: ad5504: Fix setting power-down state + - counter:ti-eqep: remove floor + - cifs: do not fail __smb_send_rqst if non-fatal signals are pending + - irqchip/mips-cpu: Set IPI domain parent chip + - x86/fpu: Add kernel_fpu_begin_mask() to selectively initialize state + - x86/topology: Make __max_die_per_package available unconditionally + - x86/mmx: Use KFPU_387 for MMX string operations + - proc_sysctl: fix oops caused by incorrect command parameters + - mm: memcg/slab: optimize objcg stock draining + - io_uring: fix SQPOLL IORING_OP_CLOSE cancelation state + - intel_th: pci: Add Alder Lake-S support + - intel_th: pci: Add Alder Lake CPU support + - intel_th: pci: Add Alder Lake-P support + - stm class: Fix module init return on allocation failure + - serial: mvebu-uart: fix tx lost characters at power off + - ehci: fix EHCI host controller initialization sequence + - USB: ehci: fix an interrupt calltrace error + - usb: gadget: aspeed: fix stop dma register setting. + - USB: gadget: dummy-hcd: Fix errors in port-reset handling + - usb: udc: core: Use lock when write to soft_connect + - [Config] updateconfigs for USB_BDC_PCI + - usb: bdc: Make bdc pci driver depend on BROKEN + - usb: cdns3: imx: fix writing read-only memory issue + - usb: cdns3: imx: fix can't create core device the second time issue + - xhci: make sure TRB is fully written before giving it to the controller + - xhci: tegra: Delay for disabling LFPS detector + - driver core: Extend device_is_dependent() + - x86/cpu/amd: Set __max_die_per_package on AMD + - cls_flower: call nla_ok() before nla_next() + - netfilter: rpfilter: mask ecn bits before fib lookup + - sh: dma: fix kconfig dependency for G2_DMA + - ASoC: SOF: Intel: fix page fault at probe if i915 init fails + - octeontx2-af: Fix missing check bugs in rvu_cgx.c + - net: dsa: mv88e6xxx: also read STU state in mv88e6250_g1_vtu_getnext + - sh_eth: Fix power down vs. is_opened flag ordering + - cachefiles: Drop superfluous readpages aops NULL check + - lightnvm: fix memory leak when submit fails + - skbuff: back tiny skbs with kmalloc() in __netdev_alloc_skb() too + - kasan: fix unaligned address is unhandled in kasan_remove_zero_shadow + - kasan: fix incorrect arguments passing in kasan_add_zero_shadow + - tcp: fix TCP socket rehash stats mis-accounting + - net_sched: gen_estimator: support large ewma log + - udp: mask TOS bits in udp_v4_early_demux() + - ipv6: create multicast route with RTPROT_KERNEL + - net_sched: avoid shift-out-of-bounds in tcindex_set_parms() + - net_sched: reject silly cell_log in qdisc_get_rtab() + - ipv6: set multicast flag on the multicast route + - net: mscc: ocelot: allow offloading of bridge on top of LAG + - net: Disable NETIF_F_HW_TLS_RX when RXCSUM is disabled + - net: dsa: b53: fix an off by one in checking "vlan->vid" + - tcp: do not mess with cloned skbs in tcp_add_backlog() + - tcp: fix TCP_USER_TIMEOUT with zero window + - net: core: devlink: use right genl user_ptr when handling port param get/set + - pinctrl: qcom: Allow SoCs to specify a GPIO function that's not 0 + - pinctrl: qcom: No need to read-modify-write the interrupt status + - pinctrl: qcom: Properly clear "intr_ack_high" interrupts when unmasking + - pinctrl: qcom: Don't clear pending interrupts when enabling + - tty: implement write_iter + - tty: fix up hung_up_tty_write() conversion + - drm/i915/hdcp: Get conn while content_type changed + - seq_file: add seq_read_iter + - kernfs: implement ->read_iter + - kernfs: implement ->write_iter + - kernfs: wire up ->splice_read and ->splice_write + - fs/pipe: allow sendfile() to pipe again + - Commit 9bb48c82aced ("tty: implement write_iter") converted the tty layer to + use write_iter. Fix the redirected_tty_write declaration also in n_tty and + change the comparisons to use write_iter instead of write. also in n_tty and + change the comparisons to use write_iter instead of write. + + * Enforce CONFIG_DRM_BOCHS=m (LP: #1916290) + - [Config] Enforce CONFIG_DRM_BOCHS=m + + * Groovy update: upstream stable patchset 2021-02-25 (LP: #1916960) + - btrfs: reloc: fix wrong file extent type check to avoid false ENOENT + - btrfs: prevent NULL pointer dereference in extent_io_tree_panic + - ALSA: doc: Fix reference to mixart.rst + - ASoC: AMD Renoir - add DMI entry for Lenovo ThinkPad X395 + - ASoC: dapm: remove widget from dirty list on free + - x86/hyperv: check cpu mask after interrupt has been disabled + - drm/amdgpu: add green_sardine device id (v2) + - drm/amdgpu: fix DRM_INFO flood if display core is not supported (bug 210921) + - drm/amdgpu: add Green_Sardine APU flag + - drm/amdgpu: add green_sardine support for gpu_info and ip block setting (v2) + - drm/amdgpu: add soc15 common ip block support for green_sardine (v3) + - drm/amdgpu: add new device id for Renior + - drm/i915/gt: Limit VFE threads based on GT + - drm/i915/backlight: fix CPU mode backlight takeover on LPT + - drm/bridge: sii902x: Refactor init code into separate function + - dt-bindings: display: sii902x: Add supply bindings + - tracing/kprobes: Do the notrace functions check without kprobes on ftrace + - ext4: fix bug for rename with RENAME_WHITEOUT + - cifs: check pointer before freeing + - cifs: fix interrupted close commands + - riscv: return -ENOSYS for syscall -1 + - riscv: Fixup CONFIG_GENERIC_TIME_VSYSCALL + - mips: fix Section mismatch in reference + - mips: lib: uncached: fix non-standard usage of variable 'sp' + - MIPS: boot: Fix unaligned access with CONFIG_MIPS_RAW_APPENDED_DTB + - MIPS: Fix malformed NT_FILE and NT_SIGINFO in 32bit coredumps + - MIPS: relocatable: fix possible boot hangup with KASLR enabled + - RDMA/ocrdma: Fix use after free in ocrdma_dealloc_ucontext_pd() + - ACPI: scan: Harden acpi_device_add() against device ID overflows + - xen/privcmd: allow fetching resource sizes + - compiler.h: Raise minimum version of GCC to 5.1 for arm64 + - mm/hugetlb: fix potential missing huge page size info + - mm/process_vm_access.c: include compat.h + - dm raid: fix discard limits for raid1 + - dm snapshot: flush merged data before committing metadata + - dm integrity: fix flush with external metadata device + - dm integrity: fix the maximum number of arguments + - dm crypt: use GFP_ATOMIC when allocating crypto requests from softirq + - stmmac: intel: change all EHL/TGL to auto detect phy addr + - r8152: Add Lenovo Powered USB-C Travel Hub + - btrfs: tree-checker: check if chunk item end overflows + - ext4: don't leak old mountpoint samples + - ARC: build: remove non-existing bootpImage from KBUILD_IMAGE + - ARC: build: add uImage.lzma to the top-level target + - ARC: build: add boot_targets to PHONY + - ARC: build: move symlink creation to arch/arc/Makefile to avoid race + - ARM: omap2: pmic-cpcap: fix maximum voltage to be consistent with defaults + on xt875 + - ath11k: fix crash caused by NULL rx_channel + - netfilter: ipset: fixes possible oops in mtype_resize + - btrfs: fix async discard stall + - btrfs: merge critical sections of discard lock in workfn + - btrfs: fix transaction leak and crash after RO remount caused by qgroup + rescan + - regulator: bd718x7: Add enable times + - ethernet: ucc_geth: fix definition and size of ucc_geth_tx_global_pram + - habanalabs/gaudi: retry loading TPC f/w on -EINTR + - habanalabs: register to pci shutdown callback + - habanalabs: Fix memleak in hl_device_reset + - hwmon: (pwm-fan) Ensure that calculation doesn't discard big period values + - lib/raid6: Let $(UNROLL) rules work with macOS userland + - spi: fix the divide by 0 error when calculating xfer waiting time + - arch/arc: add copy_user_page() to to fix build error on ARC + - misdn: dsp: select CONFIG_BITREVERSE + - net: ethernet: fs_enet: Add missing MODULE_LICENSE + - nvme-pci: mark Samsung PM1725a as IGNORE_DEV_SUBNQN + - nvme: avoid possible double fetch in handling CQE + - nvmet-rdma: Fix list_del corruption on queue establishment failure + - drm/amd/display: fix sysfs amdgpu_current_backlight_pwm NULL pointer issue + - drm/amdgpu: fix a GPU hang issue when remove device + - drm/amd/pm: fix the failure when change power profile for renoir + - drm/amdgpu: fix potential memory leak during navi12 deinitialization + - usb: typec: Fix copy paste error for NVIDIA alt-mode description + - iommu/vt-d: Fix lockdep splat in sva bind()/unbind() + - ACPI: scan: add stub acpi_create_platform_device() for !CONFIG_ACPI + - drm/msm: Call msm_init_vram before binding the gpu + - ARM: picoxcell: fix missing interrupt-parent properties + - poll: fix performance regression due to out-of-line __put_user() + - bpf: Simplify task_file_seq_get_next() + - bpf: Save correct stopping point in file seq iteration + - cfg80211: select CONFIG_CRC32 + - iommu/vt-d: Update domain geometry in iommu_ops.at(de)tach_dev + - net/mlx5: Fix passing zero to 'PTR_ERR' + - net/mlx5: E-Switch, fix changing vf VLANID + - mm: don't put pinned pages into the swap cache + - perf intel-pt: Fix 'CPU too large' error + - dump_common_audit_data(): fix racy accesses to ->d_name + - ASoC: meson: axg-tdm-interface: fix loopback + - ASoC: meson: axg-tdmin: fix axg skew offset + - ASoC: Intel: fix error code cnl_set_dsp_D0() + - nvmet-rdma: Fix NULL deref when setting pi_enable and traddr INADDR_ANY + - nvme: don't intialize hwmon for discovery controllers + - nvme-tcp: fix possible data corruption with bio merges + - nvme-tcp: Fix warning with CONFIG_DEBUG_PREEMPT + - NFS4: Fix use-after-free in trace_event_raw_event_nfs4_set_lock + - pNFS: We want return-on-close to complete when evicting the inode + - pNFS: Mark layout for return if return-on-close was not sent + - pNFS: Stricter ordering of layoutget and layoutreturn + - NFS: Adjust fs_context error logging + - NFS/pNFS: Don't call pnfs_free_bucket_lseg() before removing the request + - NFS/pNFS: Don't leak DS commits in pnfs_generic_retry_commit() + - NFS/pNFS: Fix a leak of the layout 'plh_outstanding' counter + - NFS: nfs_delegation_find_inode_server must first reference the superblock + - NFS: nfs_igrab_and_active must first reference the superblock + - scsi: ufs: Fix possible power drain during system suspend + - ext4: fix superblock checksum failure when setting password salt + - RDMA/restrack: Don't treat as an error allocation ID wrapping + - RDMA/usnic: Fix memleak in find_free_vf_and_create_qp_grp + - bnxt_en: Improve stats context resource accounting with RDMA driver loaded. + - RDMA/mlx5: Fix wrong free of blue flame register on error + - IB/mlx5: Fix error unwinding when set_has_smi_cap fails + - dm zoned: select CONFIG_CRC32 + - drm/i915/dsi: Use unconditional msleep for the panel_on_delay when there is + no reset-deassert MIPI-sequence + - drm/i915/icl: Fix initing the DSI DSC power refcount during HW readout + - drm/i915/gt: Restore clear-residual mitigations for Ivybridge, Baytrail + - mm, slub: consider rest of partial list if acquire_slab() fails + - iommu/vt-d: Fix unaligned addresses for intel_flush_svm_range_dev() + - net: sunrpc: interpret the return value of kstrtou32 correctly + - selftests: netfilter: Pass family parameter "-f" to conntrack tool + - dm: eliminate potential source of excessive kernel log noise + - ALSA: fireface: Fix integer overflow in transmit_midi_msg() + - ALSA: firewire-tascam: Fix integer overflow in midi_port_work() + - netfilter: conntrack: fix reading nf_conntrack_buckets + - netfilter: nf_nat: Fix memleak in nf_nat_init + - netfilter: nft_compat: remove flush counter optimization + - kbuild: enforce -Werror=return-type + - [Config] updateconfigs for KPROBE_EVENTS_ON_NOTRACE + - x86/hyperv: Initialize clockevents after LAPIC is initialized + - bpf: Fix signed_{sub,add32}_overflows type handling + - nfsd4: readdirplus shouldn't return parent of export + - bpf: Don't leak memory in bpf getsockopt when optlen == 0 + - bpf: Support PTR_TO_MEM{,_OR_NULL} register spilling + - bpf: Fix helper bpf_map_peek_elem_proto pointing to wrong callback + - net: ipa: modem: add missing SET_NETDEV_DEV() for proper sysfs links + - net: fix use-after-free when UDP GRO with shared fraglist + - udp: Prevent reuseport_select_sock from reading uninitialized socks + - netxen_nic: fix MSI/MSI-x interrupts + - net: ipv6: Validate GSO SKB before finish IPv6 processing + - tipc: fix NULL deref in tipc_link_xmit() + - mlxsw: core: Add validation of transceiver temperature thresholds + - mlxsw: core: Increase critical threshold for ASIC thermal zone + - net: mvpp2: Remove Pause and Asym_Pause support + - rndis_host: set proper input size for OID_GEN_PHYSICAL_MEDIUM request + - esp: avoid unneeded kmap_atomic call + - net: dcb: Validate netlink message in DCB handler + - net: dcb: Accept RTM_GETDCB messages carrying set-like DCB commands + - rxrpc: Call state should be read with READ_ONCE() under some circumstances + - i40e: fix potential NULL pointer dereferencing + - net: stmmac: Fixed mtu channged by cache aligned + - net: sit: unregister_netdevice on newlink's error path + - net: stmmac: fix taprio schedule configuration + - net: stmmac: fix taprio configuration when base_time is in the past + - net: avoid 32 x truesize under-estimation for tiny skbs + - rxrpc: Fix handling of an unsupported token type in rxrpc_read() + - net: stmmac: use __napi_schedule() for PREEMPT_RT + - drm/panel: otm8009a: allow using non-continuous dsi clock + - mac80211: do not drop tx nulldata packets on encrypted links + - mac80211: check if atf has been disabled in __ieee80211_schedule_txq + - net: dsa: unbind all switches from tree when DSA master unbinds + - cxgb4/chtls: Fix tid stuck due to wrong update of qid + - spi: fsl: Fix driver breakage when SPI_CS_HIGH is not set in spi->mode + - spi: cadence: cache reference clock rate during probe + - usb: ohci: Make distrust_firmware param default to false + - elfcore: fix building with clang + - spi: npcm-fiu: simplify the return expression of npcm_fiu_probe() + - spi: npcm-fiu: Disable clock in probe error path + + * CVE-2021-20239 + - net, sctp, filter: remap copy_from_user failure error + + -- Stefan Bader Wed, 24 Mar 2021 10:27:36 +0100 + +linux (5.8.0-48.54) groovy; urgency=medium + + * CVE-2020-27170 + - bpf: Fix off-by-one for area size in creating mask to left + + * CVE-2020-27171 + - bpf: Prohibit alu ops for pointer types not defining ptr_limit + + -- Kleber Sacilotto de Souza Fri, 19 Mar 2021 14:26:30 +0100 + +linux (5.8.0-47.53) groovy; urgency=medium + + * binary assembly failures with CONFIG_MODVERSIONS present (LP: #1919315) + - [Packaging] quiet (nomially) benign errors in BUILD script + + * CVE-2021-3444 + - bpf: Fix 32 bit src register truncation on div/mod + - bpf: Fix truncation handling for mod32 dst reg wrt zero + + * CVE-2021-27365 + - scsi: iscsi: Verify lengths on passthrough PDUs + - sysfs: Add sysfs_emit and sysfs_emit_at to format sysfs output + - scsi: iscsi: Ensure sysfs attributes are limited to PAGE_SIZE + + * CVE-2021-27363 // CVE-2021-27364 + - scsi: iscsi: Restrict sessions and handles to admin capabilities + + -- Stefan Bader Wed, 17 Mar 2021 10:19:07 +0100 + +linux (5.8.0-45.51) groovy; urgency=medium + + * groovy/linux: 5.8.0-45.51 -proposed tracker (LP: #1916143) + + * Please trust Canonical Livepatch Service kmod signing key (LP: #1898716) + - [Config] enable CONFIG_MODVERSIONS=y + - [Packaging] build canonical-certs.pem from branch/arch certs + - [Config] add Canonical Livepatch Service key to SYSTEM_TRUSTED_KEYS + - [Config] add ubuntu-drivers key to SYSTEM_TRUSTED_KEYS + - [Config] Allow ASM_MODVERSIONS and MODULE_REL_CRCS + + * CVE-2021-20194 + - bpf, cgroup: Fix optlen WARN_ON_ONCE toctou + - bpf, cgroup: Fix problematic bounds check + + * Missing device id for Intel TGL-H ISH [8086:43fc] in intel-ish-hid driver + (LP: #1914543) + - HID: intel-ish-hid: ipc: Add Tiger Lake H PCI device ID + + * Prevent thermal shutdown during boot process (LP: #1906168) + - thermal/core: Emit a warning if the thermal zone is updated without ops + - thermal/core: Add critical and hot ops + - thermal/drivers/acpi: Use hot and critical ops + - thermal/drivers/rcar: Remove notification usage + - thermal: int340x: Fix unexpected shutdown at critical temperature + - thermal: intel: pch: Fix unexpected shutdown at critical temperature + + * geneve overlay network on vlan interface broken with offload enabled + (LP: #1914447) + - net/mlx5e: Fix SWP offsets when vlan inserted by driver + + * Groovy update: upstream stable patchset 2021-02-11 (LP: #1915473) + - net: cdc_ncm: correct overhead in delayed_ndp_size + - net: hns3: fix the number of queues actually used by ARQ + - net: hns3: fix a phy loopback fail issue + - net: stmmac: dwmac-sun8i: Balance internal PHY resource references + - net: stmmac: dwmac-sun8i: Balance internal PHY power + - net: vlan: avoid leaks on register_vlan_dev() failures + - net/sonic: Fix some resource leaks in error handling paths + - net: ipv6: fib: flush exceptions when purging route + - tools: selftests: add test for changing routes with PTMU exceptions + - net: fix pmtu check in nopmtudisc mode + - net: ip: always refragment ip defragmented packets + - octeontx2-af: fix memory leak of lmac and lmac->name + - nexthop: Fix off-by-one error in error path + - nexthop: Unlink nexthop group entry in error path + - s390/qeth: fix L2 header access in qeth_l3_osa_features_check() + - net: dsa: lantiq_gswip: Exclude RMII from modes that report 1 GbE + - net/mlx5: Use port_num 1 instead of 0 when delete a RoCE address + - net/mlx5e: ethtool, Fix restriction of autoneg with 56G + - chtls: Fix hardware tid leak + - chtls: Remove invalid set_tcb call + - chtls: Fix panic when route to peer not configured + - chtls: Replace skb_dequeue with skb_peek + - chtls: Added a check to avoid NULL pointer dereference + - chtls: Fix chtls resources release sequence + - HID: wacom: Fix memory leakage caused by kfifo_alloc + - ARM: OMAP2+: omap_device: fix idling of devices during probe + - i2c: sprd: use a specific timeout to avoid system hang up issue + - dmaengine: dw-edma: Fix use after free in dw_edma_alloc_chunk() + - can: tcan4x5x: fix bittiming const, use common bittiming from m_can driver + - can: m_can: m_can_class_unregister(): remove erroneous m_can_clk_stop() + - can: kvaser_pciefd: select CONFIG_CRC32 + - cpufreq: powernow-k8: pass policy rather than use cpufreq_cpu_get() + - spi: stm32: FIFO threshold level - fix align packet size + - i2c: i801: Fix the i2c-mux gpiod_lookup_table not being properly terminated + - dmaengine: mediatek: mtk-hsdma: Fix a resource leak in the error handling + path of the probe function + - dmaengine: xilinx_dma: check dma_async_device_register return value + - dmaengine: xilinx_dma: fix incompatible param warning in _child_probe() + - dmaengine: xilinx_dma: fix mixed_enum_type coverity warning + - qed: select CONFIG_CRC32 + - wil6210: select CONFIG_CRC32 + - block: rsxx: select CONFIG_CRC32 + - lightnvm: select CONFIG_CRC32 + - iommu/intel: Fix memleak in intel_irq_remapping_alloc + - bpftool: Fix compilation failure for net.o with older glibc + - net/mlx5e: Fix memleak in mlx5e_create_l2_table_groups + - net/mlx5e: Fix two double free cases + - regmap: debugfs: Fix a memory leak when calling regmap_attach_dev + - wan: ds26522: select CONFIG_BITREVERSE + - regulator: qcom-rpmh-regulator: correct hfsmps515 definition + - net: mvpp2: disable force link UP during port init procedure + - KVM: arm64: Don't access PMCR_EL0 when no PMU is available + - block: fix use-after-free in disk_part_iter_next + - net: drop bogus skb with CHECKSUM_PARTIAL and offset beyond end of trimmed + packet + - regmap: debugfs: Fix a reversed if statement in regmap_debugfs_init() + - drm/panfrost: Don't corrupt the queue mutex on open/close + - scsi: ufs: Fix -Wsometimes-uninitialized warning + - btrfs: skip unnecessary searches for xattrs when logging an inode + - net: stmmac: dwmac-sun8i: Fix probe error handling + - net: stmmac: dwmac-sun8i: Balance syscon (de)initialization + - net: bareudp: add missing error handling for bareudp_link_config() + - ptp: ptp_ines: prevent build when HAS_IOMEM is not set + - chtls: Avoid unnecessary freeing of oreq pointer + - nexthop: Bounce NHA_GATEWAY in FDB nexthop groups + - net/mlx5e: In skb build skip setting mark in switchdev mode + - ionic: start queues before announcing link up + - fanotify: Fix sys_fanotify_mark() on native x86-32 + - spi: spi-geni-qcom: Fix geni_spi_isr() NULL dereference in timeout case + - i2c: mediatek: Fix apdma and i2c hand-shake timeout + - interconnect: imx: Add a missing of_node_put after of_device_is_available + - dmaengine: milbeaut-xdmac: Fix a resource leak in the error handling path of + the probe function + - arm64: mm: Fix ARCH_LOW_ADDRESS_LIMIT when !CONFIG_ZONE_DMA + - phy: dp83640: select CONFIG_CRC32 + - zonefs: select CONFIG_CRC32 + - iommu/vt-d: Fix misuse of ALIGN in qi_flush_piotlb() + - nvme-tcp: Fix possible race of io_work and direct send + - arm64: cpufeature: remove non-exist CONFIG_KVM_ARM_HOST + - drm/i915/dp: Track pm_qos per connector + - net: mvneta: fix error message when MTU too large for XDP + - selftests: fib_nexthops: Fix wrong mausezahn invocation + - block/rnbd-clt: avoid module unload race with close confirmation + - drm/panfrost: Remove unused variables in panfrost_job_close() + - tools headers UAPI: Sync linux/fscrypt.h with the kernel sources + + * Fix the video can't output through WD19TB connected on TGL's Type-C port + during cold-boot (LP: #1913372) + - drm/dp/mst: Export drm_dp_get_vc_payload_bw() + - drm/i915: Fix the MST PBN divider calculation + + * Fix regression introduced by codec PM change (LP: #1912676) + - ASoC: SOF: Intel: hda: Resume codec to do jack detection + - ASoC: SOF: Intel: hda: Modify existing helper to disable WAKEEN + - ASoC: SOF: Intel: hda: Avoid checking jack on system suspend + - ALSA: hda: Balance runtime/system PM if direct-complete is disabled + + * Restore palm ejection on multi-input devices (LP: #1913520) + - HID: multitouch: Apply MT_QUIRK_CONFIDENCE quirk for multi-input devices + + * intel-hid is not loaded on new Intel platform (LP: #1907160) + - platform/x86: intel-hid: add Rocket Lake ACPI device ID + + * Remove scary stack trace from Realtek WiFi driver (LP: #1913263) + - rtw88: reduce the log level for failure of tx report + + * Groovy update: upstream stable patchset 2021-02-05 (LP: #1914832) + - i40e: Fix Error I40E_AQ_RC_EINVAL when removing VFs + - iavf: fix double-release of rtnl_lock + - net/sched: sch_taprio: ensure to reset/destroy all child qdiscs + - net: mvpp2: Add TCAM entry to drop flow control pause frames + - net: mvpp2: prs: fix PPPoE with ipv6 packet parse + - net: systemport: set dev->max_mtu to UMAC_MAX_MTU_SIZE + - ethernet: ucc_geth: fix use-after-free in ucc_geth_remove() + - ethernet: ucc_geth: set dev->max_mtu to 1518 + - ionic: account for vlan tag len in rx buffer len + - atm: idt77252: call pci_disable_device() on error path + - net: mvpp2: Fix GoP port 3 Networking Complex Control configurations + - ibmvnic: fix login buffer memory leak + - ibmvnic: continue fatal error reset after passive init + - net: ethernet: mvneta: Fix error handling in mvneta_probe + - virtio_net: Fix recursive call to cpus_read_lock() + - net/ncsi: Use real net-device for response handler + - net: ethernet: Fix memleak in ethoc_probe + - net-sysfs: take the rtnl lock when storing xps_cpus + - net-sysfs: take the rtnl lock when accessing xps_cpus_map and num_tc + - net-sysfs: take the rtnl lock when storing xps_rxqs + - net-sysfs: take the rtnl lock when accessing xps_rxqs_map and num_tc + - net: ethernet: ti: cpts: fix ethtool output when no ptp_clock registered + - tun: fix return value when the number of iovs exceeds MAX_SKB_FRAGS + - bnxt_en: Check TQM rings for maximum supported value. + - net: mvpp2: fix pkt coalescing int-threshold configuration + - bnxt_en: Fix AER recovery. + - ipv4: Ignore ECN bits for fib lookups in fib_compute_spec_dst() + - net: sched: prevent invalid Scell_log shift count + - net: hns: fix return value check in __lb_other_process() + - erspan: fix version 1 check in gre_parse_header() + - net: hdlc_ppp: Fix issues when mod_timer is called while timer is running + - bareudp: set NETIF_F_LLTX flag + - bareudp: Fix use of incorrect min_headroom size + - vhost_net: fix ubuf refcount incorrectly when sendmsg fails + - r8169: work around power-saving bug on some chip versions + - net: dsa: lantiq_gswip: Enable GSWIP_MII_CFG_EN also for internal PHYs + - net: dsa: lantiq_gswip: Fix GSWIP_MII_CFG(p) register access + - CDC-NCM: remove "connected" log message + - ibmvnic: fix: NULL pointer dereference. + - net: usb: qmi_wwan: add Quectel EM160R-GL + - stmmac: intel: Add PCI IDs for TGL-H platform + - workqueue: Kick a worker based on the actual activation of delayed works + - scsi: ufs: Fix wrong print message in dev_err() + - scsi: ufs-pci: Fix restore from S4 for Intel controllers + - scsi: ufs-pci: Ensure UFS device is in PowerDown mode for suspend-to-disk + ->poweroff() + - scsi: ufs-pci: Fix recovery from hibernate exit errors for Intel controllers + - blk-mq: remove the BLK_MQ_REQ_INTERNAL flag + - scsi: block: Introduce BLK_MQ_REQ_PM + - scsi: ide: Do not set the RQF_PREEMPT flag for sense requests + - scsi: ide: Mark power management requests with RQF_PM instead of RQF_PREEMPT + - scsi: scsi_transport_spi: Set RQF_PM for domain validation commands + - scsi: core: Only process PM requests if rpm_status != RPM_ACTIVE + - local64.h: make mandatory + - lib/genalloc: fix the overflow when size is too big + - depmod: handle the case of /sbin/depmod without /sbin in PATH + - scsi: ufs: Clear UAC for FFU and RPMB LUNs + - kbuild: don't hardcode depmod path + - Bluetooth: revert: hci_h5: close serdev device and free hu in h5_close + - scsi: block: Remove RQF_PREEMPT and BLK_MQ_REQ_PREEMPT + - scsi: block: Do not accept any requests while suspended + - crypto: ecdh - avoid buffer overflow in ecdh_set_secret() + - crypto: asym_tpm: correct zero out potential secrets + - powerpc: Handle .text.{hot,unlikely}.* in linker script + - Staging: comedi: Return -EFAULT if copy_to_user() fails + - staging: mt7621-dma: Fix a resource leak in an error handling path + - usb: gadget: enable super speed plus + - USB: cdc-acm: blacklist another IR Droid device + - USB: cdc-wdm: Fix use after free in service_outstanding_interrupt(). + - usb: dwc3: meson-g12a: disable clk on error handling path in probe + - usb: dwc3: gadget: Clear wait flag on dequeue + - usb: dwc3: ulpi: Use VStsDone to detect PHY regs access completion + - usb: dwc3: ulpi: Replace CPU-based busyloop with Protocol-based one + - usb: dwc3: ulpi: Fix USB2.0 HS/FS/LS PHY suspend regression + - usb: chipidea: ci_hdrc_imx: add missing put_device() call in + usbmisc_get_init_data() + - USB: xhci: fix U1/U2 handling for hardware with XHCI_INTEL_HOST quirk set + - usb: usbip: vhci_hcd: protect shift size + - usb: uas: Add PNY USB Portable SSD to unusual_uas + - USB: serial: iuu_phoenix: fix DMA from stack + - USB: serial: option: add LongSung M5710 module support + - USB: serial: option: add Quectel EM160R-GL + - USB: yurex: fix control-URB timeout handling + - USB: usblp: fix DMA to stack + - ALSA: usb-audio: Fix UBSAN warnings for MIDI jacks + - usb: gadget: select CONFIG_CRC32 + - USB: Gadget: dummy-hcd: Fix shift-out-of-bounds bug + - usb: gadget: f_uac2: reset wMaxPacketSize + - usb: gadget: function: printer: Fix a memory leak for interface descriptor + - usb: gadget: u_ether: Fix MTU size mismatch with RX packet size + - USB: gadget: legacy: fix return error code in acm_ms_bind() + - usb: gadget: Fix spinlock lockup on usb_function_deactivate + - usb: gadget: configfs: Preserve function ordering after bind failure + - usb: gadget: configfs: Fix use-after-free issue with udc_name + - USB: serial: keyspan_pda: remove unused variable + - hwmon: (amd_energy) fix allocation of hwmon_channel_info config + - mm: make wait_on_page_writeback() wait for multiple pending writebacks + - x86/mm: Fix leak of pmd ptlock + - kvm: check tlbs_dirty directly + - task_work: cleanup notification modes + - x86/resctrl: Use an IPI instead of task_work_add() to update PQR_ASSOC MSR + - x86/resctrl: Don't move a task to the same resource group + - blk-iocost: fix NULL iocg deref from racing against initialization + - ALSA: hda/via: Fix runtime PM for Clevo W35xSS + - ALSA: hda/conexant: add a new hda codec CX11970 + - ALSA: hda/realtek - Fix speaker volume control on Lenovo C940 + - ALSA: hda/realtek: Add mute LED quirk for more HP laptops + - ALSA: hda/realtek: Add two "Intel Reference board" SSID in the ALC256. + - iommu/vt-d: Move intel_iommu info from struct intel_svm to struct + intel_svm_dev + - btrfs: send: fix wrong file path when there is an inode with a pending rmdir + - Revert "device property: Keep secondary firmware node secondary by type" + - dmabuf: fix use-after-free of dmabuf's file->f_inode + - arm64: link with -z norelro for LLD or aarch64-elf + - drm/i915: clear the shadow batch + - netfilter: x_tables: Update remaining dereference to RCU + - netfilter: ipset: fix shift-out-of-bounds in htable_bits() + - netfilter: xt_RATEEST: reject non-null terminated string from userspace + - netfilter: nft_dynset: report EOPNOTSUPP on missing set feature + - dmaengine: idxd: off by one in cleanup code + - x86/mtrr: Correct the range check before performing MTRR type lookups + - KVM: x86: fix shift out of bounds reported by UBSAN + - rtlwifi: rise completion at the last step of firmware callback + + * Groovy update: upstream stable patchset 2021-02-03 (LP: #1914472) + - net/sched: sch_taprio: reset child qdiscs before freeing them + - mptcp: fix security context on server socket + - ethtool: fix error paths in ethnl_set_channels() + - ethtool: fix string set id check + - md/raid10: initialize r10_bio->read_slot before use. + - drm/amd/display: Add get_dig_frontend implementation for DCEx + - io_uring: close a small race gap for files cancel + - jffs2: Allow setting rp_size to zero during remounting + - jffs2: Fix NULL pointer dereference in rp_size fs option parsing + - scsi: block: Fix a race in the runtime power management code + - mm/hugetlb: fix deadlock in hugetlb_cow error path + - mm: memmap defer init doesn't work as expected + - lib/zlib: fix inflating zlib streams on s390 + - uapi: move constants from to + - tools headers UAPI: Sync linux/const.h with the kernel headers + - cgroup: Fix memory leak when parsing multiple source parameters + - zlib: move EXPORT_SYMBOL() and MODULE_LICENSE() out of dfltcc_syms.c + - scsi: cxgb4i: Fix TLS dependency + - Bluetooth: hci_h5: close serdev device and free hu in h5_close + - fbcon: Disable accelerated scrolling + - reiserfs: add check for an invalid ih_entry_count + - misc: vmw_vmci: fix kernel info-leak by initializing dbells in + vmci_ctx_get_chkpt_doorbells() + - media: gp8psk: initialize stats at power control logic + - f2fs: fix shift-out-of-bounds in sanity_check_raw_super() + - ALSA: seq: Use bool for snd_seq_queue internal flags + - ALSA: rawmidi: Access runtime->avail always in spinlock + - bfs: don't use WARNING: string when it's just info. + - ext4: check for invalid block size early when mounting a file system + - fcntl: Fix potential deadlock in send_sig{io, urg}() + - rtc: sun6i: Fix memleak in sun6i_rtc_clk_init + - module: set MODULE_STATE_GOING state when a module fails to load + - quota: Don't overflow quota file offsets + - rtc: pl031: fix resource leak in pl031_probe + - powerpc: sysdev: add missing iounmap() on error in mpic_msgr_probe() + - i3c master: fix missing destroy_workqueue() on error in i3c_master_register + - NFSv4: Fix a pNFS layout related use-after-free race when freeing the inode + - f2fs: avoid race condition for shrinker count + - module: delay kobject uevent until after module init call + - fs/namespace.c: WARN if mnt_count has become negative + - watchdog: rti-wdt: fix reference leak in rti_wdt_probe + - um: random: Register random as hwrng-core device + - um: ubd: Submit all data segments atomically + - ceph: fix inode refcount leak when ceph_fill_inode on non-I_NEW inode fails + - drm/amd/display: updated wm table for Renoir + - tick/sched: Remove bogus boot "safety" check + - s390: always clear kernel stack backchain before calling functions + - io_uring: remove racy overflow list fast checks + - ALSA: pcm: Clear the full allocated memory at hw_params + - dm verity: skip verity work if I/O error when system is shutting down + - rtc: pcf2127: move watchdog initialisation to a separate function + - rtc: pcf2127: only use watchdog when explicitly available + - dt-bindings: rtc: add reset-source property + - kdev_t: always inline major/minor helper functions + - ALSA: hda/realtek - Modify Dell platform name + - scsi: ufs: Allow an error return value from ->device_reset() + - scsi: ufs: Re-enable WriteBooster after device reset + - RDMA/siw,rxe: Make emulated devices virtual in the device tree + - fuse: fix bad inode + - rwsem: Implement down_read_killable_nested + - rwsem: Implement down_read_interruptible + - exec: Transform exec_update_mutex into a rw_semaphore + - mwifiex: Fix possible buffer overflows in mwifiex_cmd_802_11_ad_hoc_start + + -- Stefan Bader Fri, 19 Feb 2021 10:59:43 +0100 + +linux (5.8.0-44.50) groovy; urgency=medium + + * groovy/linux: 5.8.0-44.50 -proposed tracker (LP: #1914805) + + * Packaging resync (LP: #1786013) + - update dkms package versions + - update dkms package versions + + * Introduce the new NVIDIA 460-server series and update the 460 series + (LP: #1913200) + - [Config] dkms-versions -- drop NVIDIA 435 455 and 440-server + - [Config] dkms-versions -- add the 460-server nvidia driver + + * [SRU][G/H/U/OEM-5.10] re-enable s0ix of e1000e (LP: #1910541) + - Revert "UBUNTU: SAUCE: e1000e: bump up timeout to wait when ME un-configure + ULP mode" + - e1000e: Only run S0ix flows if shutdown succeeded + - Revert "e1000e: disable s0ix entry and exit flows for ME systems" + - e1000e: Export S0ix flags to ethtool + + * suspend only works once on ThinkPad X1 Carbon gen 7 (LP: #1865570) // + [SRU][G/H/U/OEM-5.10] re-enable s0ix of e1000e (LP: #1910541) + - e1000e: bump up timeout to wait when ME un-configures ULP mode + + * Cannot probe sata disk on sata controller behind VMD: ata1.00: failed to + IDENTIFY (I/O error, err_mask=0x4) (LP: #1894778) + - PCI: vmd: Offset Client VMD MSI-X vectors + + * Enable mute and micmute LED on HP EliteBook 850 G7 (LP: #1910102) + - ALSA: hda/realtek: Enable mute and micmute LED on HP EliteBook 850 G7 + + * SYNA30B4:00 06CB:CE09 Mouse on HP EliteBook 850 G7 not working at all + (LP: #1908992) + - HID: multitouch: Enable multi-input for Synaptics pointstick/touchpad device + + * HD Audio Device PCI ID for the Intel Cometlake-R platform (LP: #1912427) + - SAUCE: ALSA: hda: Add Cometlake-R PCI ID + + * switch to an autogenerated nvidia series based core via dkms-versions + (LP: #1912803) + - [Packaging] nvidia -- use dkms-versions to define versions built + - [Packaging] update-version-dkms -- maintain flags fields + - [Config] dkms-versions -- add transitional/skip information for nvidia + packages + + * udpgro.sh in net from ubuntu_kernel_selftests seems not reflecting sub-test + result (LP: #1908499) + - selftests: fix the return value for UDP GRO test + + * [UBUNTU 21.04] vfio: pass DMA availability information to userspace + (LP: #1907421) + - vfio/type1: Refactor vfio_iommu_type1_ioctl() + - vfio iommu: Add dma available capability + + * qede: Kubernetes Internal DNS Failure due to QL41xxx NIC not supporting IPIP + tx csum offload (LP: #1909062) + - qede: fix offload for IPIP tunnel packets + + * Use DCPD to control HP DreamColor panel (LP: #1911001) + - SAUCE: drm/dp: Another HP DreamColor panel brigntness fix + + * Fix right sounds and mute/micmute LEDs for HP ZBook Fury 15/17 G7 Mobile + Workstation (LP: #1910561) + - ALSA: hda/realtek: fix right sounds and mute/micmute LEDs for HP machines + + * Ubuntu 20.04 - multicast counter is not increased in ip -s (LP: #1901842) + - net/mlx5e: Fix multicast counter not up-to-date in "ip -s" + + * eeh-basic.sh in powerpc from ubuntu_kernel_selftests timeout with 5.4 P8 / + P9 (LP: #1882503) + - selftests/powerpc/eeh: disable kselftest timeout setting for eeh-basic + + * DMI entry syntax fix for Pegatron / ByteSpeed C15B (LP: #1910639) + - Input: i8042 - unbreak Pegatron C15B + + * update ENA driver, incl. new ethtool stats (LP: #1910291) + - net: ena: ethtool: convert stat_offset to 64 bit resolution + - net: ena: ethtool: Add new device statistics + - net: ena: ethtool: add stats printing to XDP queues + - net: ena: xdp: add queue counters for xdp actions + - net: ena: Change license into format to SPDX in all files + - net: ena: Change log message to netif/dev function + - net: ena: Remove redundant print of placement policy + - net: ena: Change RSS related macros and variables names + - net: ena: Fix all static chekers' warnings + - drivers/net/ethernet: remove incorrectly formatted doc + - net: ena: Capitalize all log strings and improve code readability + + * Groovy update: upstream stable patchset 2021-01-15 (LP: #1912027) + - net: ipconfig: Avoid spurious blank lines in boot log + - x86/split-lock: Avoid returning with interrupts enabled + - exfat: Avoid allocating upcase table using kcalloc() + - soc/tegra: fuse: Fix index bug in get_process_id + - usb: mtu3: fix memory corruption in mtu3_debugfs_regset() + - USB: serial: option: add interface-number sanity check to flag handling + - USB: gadget: f_acm: add support for SuperSpeed Plus + - USB: gadget: f_midi: setup SuperSpeed Plus descriptors + - usb: gadget: f_fs: Re-use SS descriptors for SuperSpeedPlus + - USB: gadget: f_rndis: fix bitrate for SuperSpeed and above + - usb: chipidea: ci_hdrc_imx: Pass DISABLE_DEVICE_STREAMING flag to imx6ul + - ARM: dts: exynos: fix roles of USB 3.0 ports on Odroid XU + - ARM: dts: exynos: fix USB 3.0 VBUS control and over-current pins on + Exynos5410 + - ARM: dts: exynos: fix USB 3.0 pins supply being turned off on Odroid XU + - coresight: tmc-etf: Fix NULL ptr dereference in tmc_enable_etf_sink_perf() + - coresight: tmc-etr: Check if page is valid before dma_map_page() + - coresight: tmc-etr: Fix barrier packet insertion for perf buffer + - coresight: etb10: Fix possible NULL ptr dereference in etb_enable_perf() + - f2fs: fix to seek incorrect data offset in inline data file + - scsi: megaraid_sas: Check user-provided offsets + - HID: i2c-hid: add Vero K147 to descriptor override + - serial_core: Check for port state when tty is in error state + - fscrypt: remove kernel-internal constants from UAPI header + - fscrypt: rename DCACHE_ENCRYPTED_NAME to DCACHE_NOKEY_NAME + - fscrypt: add fscrypt_is_nokey_name() + - ubifs: prevent creating duplicate encrypted filenames + - ext4: prevent creating duplicate encrypted filenames + - f2fs: prevent creating duplicate encrypted filenames + - Bluetooth: Fix slab-out-of-bounds read in hci_le_direct_adv_report_evt() + - quota: Sanity-check quota file headers on load + - fs: quota: fix array-index-out-of-bounds bug by passing correct argument to + vfs_cleanup_quota_inode() + - media: msi2500: assign SPI bus number dynamically + - crypto: af_alg - avoid undefined behavior accessing salg_name + - nl80211: validate key indexes for cfg80211_registered_device + - md: fix a warning caused by a race between concurrent md_ioctl()s + - drm/gma500: fix double free of gma_connector + - drm/aspeed: Fix Kconfig warning & subsequent build errors + - drm/mcde: Fix handling of platform_get_irq() error + - drm/tve200: Fix handling of platform_get_irq() error + - arm64: dts: renesas: hihope-rzg2-ex: Drop rxc-skew-ps from ethernet-phy node + - arm64: dts: renesas: cat875: Remove rxc-skew-ps from ethernet-phy node + - soc: renesas: rmobile-sysc: Fix some leaks in rmobile_init_pm_domains() + - soc: mediatek: Check if power domains can be powered on at boot time + - arm64: dts: mediatek: mt8183: fix gce incorrect mbox-cells value + - arm64: dts: ipq6018: update the reserved-memory node + - soc: qcom: geni: More properly switch to DMA mode + - Revert "i2c: i2c-qcom-geni: Fix DMA transfer race" + - RDMA/bnxt_re: Set queue pair state when being queried + - rtc: pcf2127: fix pcf2127_nvmem_read/write() returns + - selinux: fix error initialization in inode_doinit_with_dentry() + - ARM: dts: aspeed-g6: Fix the GPIO memory size + - ARM: dts: aspeed: s2600wf: Fix VGA memory region location + - RDMA/core: Fix error return in _ib_modify_qp() + - RDMA/rxe: Compute PSN windows correctly + - x86/mm/ident_map: Check for errors from ident_pud_init() + - ARM: p2v: fix handling of LPAE translation in BE mode + - RDMA/rtrs-clt: Remove destroy_con_cq_qp in case route resolving failed + - RDMA/rtrs-clt: Missing error from rtrs_rdma_conn_established + - RDMA/rtrs-srv: Don't guard the whole __alloc_srv with srv_mutex + - x86/apic: Fix x2apic enablement without interrupt remapping + - sched/deadline: Fix sched_dl_global_validate() + - sched: Reenable interrupts in do_sched_yield() + - drm/amdgpu: fix incorrect enum type + - crypto: talitos - Endianess in current_desc_hdr() + - crypto: talitos - Fix return type of current_desc_hdr() + - crypto: inside-secure - Fix sizeof() mismatch + - ASoC: sun4i-i2s: Fix lrck_period computation for I2S justified mode + - ARM: dts: aspeed: tiogapass: Remove vuart + - drm/amdgpu: fix build_coefficients() argument + - powerpc/64: Set up a kernel stack for secondaries before cpu_restore() + - spi: img-spfi: fix reference leak in img_spfi_resume + - f2fs: call f2fs_get_meta_page_retry for nat page + - RDMA/mlx5: Fix corruption of reg_pages in mlx5_ib_rereg_user_mr() + - drm/msm/dsi_pll_10nm: restore VCO rate during restore_state + - spi: spi-mem: fix reference leak in spi_mem_access_start + - scsi: aacraid: Improve compat_ioctl handlers + - ASoC: pcm: DRAIN support reactivation + - drm/bridge: tpd12s015: Fix irq registering in tpd12s015_probe + - crypto: arm64/poly1305-neon - reorder PAC authentication with SP update + - selinux: fix inode_doinit_with_dentry() LABEL_INVALID error handling + - spi: stm32: fix reference leak in stm32_spi_resume + - x86/mce: Correct the detection of invalid notifier priorities + - drm/edid: Fix uninitialized variable in drm_cvt_modes() + - ath11k: Initialize complete alpha2 for regulatory change + - ath11k: Fix number of rules in filtered ETSI regdomain + - brcmfmac: Fix memory leak for unpaired brcmf_{alloc/free} + - arm64: dts: exynos: Include common syscon restart/poweroff for Exynos7 + - arm64: dts: exynos: Correct psci compatible used on Exynos7 + - drm/panel: simple: Add flags to boe_nv133fhm_n61 + - Bluetooth: Fix null pointer dereference in hci_event_packet() + - Bluetooth: hci_h5: fix memory leak in h5_close + - spi: stm32-qspi: fix reference leak in stm32 qspi operations + - spi: spi-ti-qspi: fix reference leak in ti_qspi_setup + - spi: mt7621: fix missing clk_disable_unprepare() on error in + mt7621_spi_probe + - spi: tegra20-slink: fix reference leak in slink ops of tegra20 + - spi: tegra20-sflash: fix reference leak in tegra_sflash_resume + - spi: tegra114: fix reference leak in tegra spi ops + - spi: bcm63xx-hsspi: fix missing clk_disable_unprepare() on error in + bcm63xx_hsspi_resume + - ASoC: qcom: common: Fix refcounting in qcom_snd_parse_of() + - mwifiex: fix mwifiex_shutdown_sw() causing sw reset failure + - selftest/bpf: Add missed ip6ip6 test back + - ASoC: wm8994: Fix PM disable depth imbalance on error + - ASoC: wm8998: Fix PM disable depth imbalance on error + - spi: sprd: fix reference leak in sprd_spi_remove + - ASoC: arizona: Fix a wrong free in wm8997_probe + - RDMa/mthca: Work around -Wenum-conversion warning + - ASoC: SOF: Intel: fix Kconfig dependency for SND_INTEL_DSP_CONFIG + - arm64: dts: ti: k3-am65*/j721e*: Fix unit address format error for dss node + - MIPS: BCM47XX: fix kconfig dependency bug for BCM47XX_BCMA + - drm/amdgpu: fix compute queue priority if num_kcq is less than 4 + - soc: ti: omap-prm: Do not check rstst bit on deassert if already deasserted + - crypto: Kconfig - CRYPTO_MANAGER_EXTRA_TESTS requires the manager + - crypto: qat - fix status check in qat_hal_put_rel_rd_xfer() + - drm/udl: Fix missing error code in udl_handle_damage() + - staging: greybus: codecs: Fix reference counter leak in error handling + - staging: gasket: interrupt: fix the missed eventfd_ctx_put() in + gasket_interrupt.c + - drm/amdkfd: Put ACPI table after using it + - media: tm6000: Fix sizeof() mismatches + - media: mtk-vcodec: add missing put_device() call in mtk_vcodec_init_dec_pm() + - media: mtk-vcodec: add missing put_device() call in + mtk_vcodec_release_dec_pm() + - media: mtk-vcodec: add missing put_device() call in mtk_vcodec_init_enc_pm() + - media: v4l2-fwnode: Return -EINVAL for invalid bus-type + - media: staging: rkisp1: cap: fix runtime PM imbalance on error + - media: cedrus: fix reference leak in cedrus_start_streaming + - media: platform: add missing put_device() call in mtk_jpeg_probe() and + mtk_jpeg_remove() + - media: venus: core: change clk enable and disable order in resume and + suspend + - media: venus: core: vote for video-mem path + - media: venus: core: vote with average bandwidth and peak bandwidth as zero + - RDMA/cma: Add missing error handling of listen_id + - ASoC: meson: fix COMPILE_TEST error + - scsi: core: Fix VPD LUN ID designator priorities + - media: venus: put dummy vote on video-mem path after last session release + - media: solo6x10: fix missing snd_card_free in error handling case + - video: fbdev: atmel_lcdfb: fix return error code in atmel_lcdfb_of_init() + - mmc: sdhci: tegra: fix wrong unit with busy_timeout + - drm/omap: dmm_tiler: fix return error code in omap_dmm_probe() + - drm/meson: Free RDMA resources after tearing down DRM + - drm/meson: Unbind all connectors on module removal + - drm/meson: dw-hdmi: Register a callback to disable the regulator + - drm/meson: dw-hdmi: Ensure that clocks are enabled before touching the TOP + registers + - iommu/vt-d: include conditionally on CONFIG_INTEL_IOMMU_SVM + - Input: ads7846 - fix race that causes missing releases + - Input: ads7846 - fix integer overflow on Rt calculation + - Input: ads7846 - fix unaligned access on 7845 + - bus: mhi: core: Remove double locking from mhi_driver_remove() + - bus: mhi: core: Fix null pointer access when parsing MHI configuration + - usb/max3421: fix return error code in max3421_probe() + - spi: mxs: fix reference leak in mxs_spi_probe + - selftests/bpf: Fix broken riscv build + - powerpc: Avoid broken GCC __attribute__((optimize)) + - powerpc/feature: Fix CPU_FTRS_ALWAYS by removing CPU_FTRS_GENERIC_32 + - ARM: dts: tacoma: Fix node vs reg mismatch for flash memory + - Revert "powerpc/pseries/hotplug-cpu: Remove double free in error path" + - mfd: htc-i2cpld: Add the missed i2c_put_adapter() in + htcpld_register_chip_i2c() + - EDAC/mce_amd: Use struct cpuinfo_x86.cpu_die_id for AMD NodeId + - scsi: ufs: Avoid to call REQ_CLKS_OFF to CLKS_OFF + - scsi: ufs: Fix clkgating on/off + - rcu: Allow rcu_irq_enter_check_tick() from NMI + - rcu,ftrace: Fix ftrace recursion + - crypto: crypto4xx - Replace bitwise OR with logical OR in crypto4xx_build_pd + - crypto: omap-aes - Fix PM disable depth imbalance in omap_aes_probe + - spi: fix resource leak for drivers without .remove callback + - drm/meson: dw-hdmi: Disable clocks on driver teardown + - drm/meson: dw-hdmi: Enable the iahb clock early enough + - PCI: Disable MSI for Pericom PCIe-USB adapter + - PCI: brcmstb: Initialize "tmp" before use + - soc: ti: knav_qmss: fix reference leak in knav_queue_probe + - soc: ti: Fix reference imbalance in knav_dma_probe + - drivers: soc: ti: knav_qmss_queue: Fix error return code in knav_queue_probe + - soc: qcom: initialize local variable + - arm64: dts: qcom: sm8250: correct compatible for sm8250-mtp + - arm64: dts: qcom: msm8916-samsung-a2015: Disable muic i2c pin bias + - Input: omap4-keypad - fix runtime PM error handling + - clk: meson: Kconfig: fix dependency for G12A + - ath11k: Fix the rx_filter flag setting for peer rssi stats + - RDMA/cxgb4: Validate the number of CQEs + - soundwire: Fix DEBUG_LOCKS_WARN_ON for uninitialized attribute + - memstick: fix a double-free bug in memstick_check + - ARM: dts: at91: sam9x60: add pincontrol for USB Host + - ARM: dts: at91: sama5d4_xplained: add pincontrol for USB Host + - ARM: dts: at91: sama5d3_xplained: add pincontrol for USB Host + - mmc: pxamci: Fix error return code in pxamci_probe + - brcmfmac: fix error return code in brcmf_cfg80211_connect() + - orinoco: Move context allocation after processing the skb + - qtnfmac: fix error return code in qtnf_pcie_probe() + - rsi: fix error return code in rsi_reset_card() + - cw1200: fix missing destroy_workqueue() on error in cw1200_init_common + - dmaengine: mv_xor_v2: Fix error return code in mv_xor_v2_probe() + - arm64: dts: qcom: sdm845: Limit ipa iommu streams + - leds: netxbig: add missing put_device() call in netxbig_leds_get_of_pdata() + - arm64: tegra: Fix DT binding for IO High Voltage entry + - RDMA/cma: Fix deadlock on &lock in rdma_cma_listen_on_all() error unwind + - media: siano: fix memory leak of debugfs members in smsdvb_hotplug + - platform/x86: mlx-platform: Remove PSU EEPROM from default platform + configuration + - platform/x86: mlx-platform: Remove PSU EEPROM from MSN274x platform + configuration + - arm64: dts: qcom: sc7180: limit IPA iommu streams + - RDMA/hns: Avoid setting loopback indicator when smac is same as dmac + - serial: 8250-mtk: Fix reference leak in mtk8250_probe + - samples: bpf: Fix lwt_len_hist reusing previous BPF map + - media: imx214: Fix stop streaming + - mips: cdmm: fix use-after-free in mips_cdmm_bus_discover + - media: max2175: fix max2175_set_csm_mode() error code + - slimbus: qcom-ngd-ctrl: Avoid sending power requests without QMI + - drm/mediatek: Use correct aliases name for ovl + - HSI: omap_ssi: Don't jump to free ID in ssi_add_controller() + - ARM: dts: Remove non-existent i2c1 from 98dx3236 + - arm64: dts: armada-3720-turris-mox: update ethernet-phy handle name + - power: supply: bq25890: Use the correct range for IILIM register + - arm64: dts: rockchip: Set dr_mode to "host" for OTG on rk3328-roc-cc + - power: supply: max17042_battery: Fix current_{avg,now} hiding with no + current sense + - power: supply: axp288_charger: Fix HP Pavilion x2 10 DMI matching + - power: supply: bq24190_charger: fix reference leak + - genirq/irqdomain: Don't try to free an interrupt that has no mapping + - arm64: dts: ls1028a: fix ENETC PTP clock input + - arm64: dts: ls1028a: fix FlexSPI clock input + - arm64: dts: freescale: sl28: combine SPI MTD partitions + - phy: tegra: xusb: Fix usb_phy device driver field + - arm64: dts: qcom: c630: Polish i2c-hid devices + - arm64: dts: qcom: c630: Fix pinctrl pins properties + - PCI: Bounds-check command-line resource alignment requests + - PCI: Fix overflow in command-line resource alignment requests + - PCI: iproc: Fix out-of-bound array accesses + - PCI: iproc: Invalidate correct PAXB inbound windows + - arm64: dts: meson: fix spi-max-frequency on Khadas VIM2 + - arm64: dts: meson-sm1: fix typo in opp table + - soc: amlogic: canvas: add missing put_device() call in meson_canvas_get() + - scsi: pm80xx: Do not sleep in atomic context + - spi: spi-fsl-dspi: Use max_native_cs instead of num_chipselect to set + SPI_MCR + - ARM: dts: at91: at91sam9rl: fix ADC triggers + - RDMA/hns: Fix 0-length sge calculation error + - RDMA/hns: Bugfix for calculation of extended sge + - platform/x86: dell-smbios-base: Fix error return code in dell_smbios_init + - media: i2c: imx219: Selection compliance fixes + - ath11k: Fix an error handling path + - ath10k: Fix the parsing error in service available event + - ath10k: Fix an error handling path + - ath10k: Release some resources in an error handling path + - SUNRPC: rpc_wake_up() should wake up tasks in the correct order + - NFSv4.2: condition READDIR's mask for security label based on LSM state + - SUNRPC: xprt_load_transport() needs to support the netid "rdma6" + - NFSv4: Fix the alignment of page data in the getdeviceinfo reply + - net: sunrpc: Fix 'snprintf' return value check in 'do_xprt_debugfs' + - lockd: don't use interval-based rebinding over TCP + - NFS: switch nfsiod to be an UNBOUND workqueue. + - selftests/seccomp: Update kernel config + - vfio-pci: Use io_remap_pfn_range() for PCI IO memory + - hwmon: (ina3221) Fix PM usage counter unbalance in ina3221_write_enable + - media: tvp5150: Fix wrong return value of tvp5150_parse_dt() + - media: saa7146: fix array overflow in vidioc_s_audio() + - powerpc/perf: Fix crash with is_sier_available when pmu is not set + - powerpc/64: Fix an EMIT_BUG_ENTRY in head_64.S + - powerpc/xmon: Fix build failure for 8xx + - powerpc/perf: Fix the PMU group constraints for threshold events in power10 + - clocksource/drivers/orion: Add missing clk_disable_unprepare() on error path + - clocksource/drivers/cadence_ttc: Fix memory leak in ttc_setup_clockevent() + - clocksource/drivers/ingenic: Fix section mismatch + - iio: hrtimer-trigger: Mark hrtimer to expire in hard interrupt context + - libbpf: Sanitise map names before pinning + - ARM: dts: at91: sam9x60ek: remove bypass property + - ARM: dts: at91: sama5d2: map securam as device + - bpf: Fix bpf_put_raw_tracepoint()'s use of __module_address() + - selftests/bpf: Fix invalid use of strncat in test_sockmap + - pinctrl: falcon: add missing put_device() call in pinctrl_falcon_probe() + - arm64: dts: rockchip: Fix UART pull-ups on rk3328 + - memstick: r592: Fix error return in r592_probe() + - MIPS: Don't round up kernel sections size for memblock_add() + - mt76: mt7915: set fops_sta_stats.owner to THIS_MODULE + - mt76: set fops_tx_stats.owner to THIS_MODULE + - net/mlx5: Properly convey driver version to firmware + - mt76: fix memory leak if device probing fails + - mt76: fix tkip configuration for mt7615/7663 devices + - ASoC: jz4740-i2s: add missed checks for clk_get() + - dm ioctl: fix error return code in target_message + - ASoC: cros_ec_codec: fix uninitialized memory read + - ASoC: qcom: fix QDSP6 dependencies, attempt #3 + - phy: renesas: rcar-gen3-usb2: disable runtime pm in case of failure + - memory: jz4780_nemc: Fix potential NULL dereference in jz4780_nemc_probe() + - clocksource/drivers/arm_arch_timer: Use stable count reader in erratum sne + - clocksource/drivers/arm_arch_timer: Correct fault programming of + CNTKCTL_EL1.EVNTI + - cpufreq: ap806: Add missing MODULE_DEVICE_TABLE + - cpufreq: highbank: Add missing MODULE_DEVICE_TABLE + - cpufreq: mediatek: Add missing MODULE_DEVICE_TABLE + - cpufreq: qcom: Add missing MODULE_DEVICE_TABLE + - cpufreq: st: Add missing MODULE_DEVICE_TABLE + - cpufreq: sun50i: Add missing MODULE_DEVICE_TABLE + - cpufreq: loongson1: Add missing MODULE_ALIAS + - cpufreq: scpi: Add missing MODULE_ALIAS + - cpufreq: vexpress-spc: Add missing MODULE_ALIAS + - Bluetooth: btusb: Add the missed release_firmware() in + btusb_mtk_setup_firmware() + - Bluetooth: btmtksdio: Add the missed release_firmware() in + mtk_setup_firmware() + - block/rnbd-clt: Dynamically alloc buffer for pathname & blk_symlink_name + - block/rnbd: fix a null pointer dereference on dev->blk_symlink_name + - Bluetooth: btusb: Fix detection of some fake CSR controllers with a + bcdDevice val of 0x0134 + - mtd: spi-nor: sst: fix BPn bits for the SST25VF064C + - mtd: spi-nor: ignore errors in spi_nor_unlock_all() + - mtd: spi-nor: atmel: remove global protection flag + - mtd: spi-nor: atmel: fix unlock_all() for AT25FS010/040 + - arm64: dts: meson: g12b: odroid-n2: fix PHY deassert timing requirements + - arm64: dts: meson: fix PHY deassert timing requirements + - ARM: dts: meson: fix PHY deassert timing requirements + - arm64: dts: meson: g12a: x96-max: fix PHY deassert timing requirements + - arm64: dts: meson: g12b: w400: fix PHY deassert timing requirements + - clk: fsl-sai: fix memory leak + - scsi: qedi: Fix missing destroy_workqueue() on error in __qedi_probe + - scsi: pm80xx: Fix error return in pm8001_pci_probe() + - scsi: iscsi: Fix inappropriate use of put_device() + - seq_buf: Avoid type mismatch for seq_buf_init + - scsi: fnic: Fix error return code in fnic_probe() + - platform/x86: mlx-platform: Fix item counter assignment for MSN2700, MSN24xx + systems + - platform/x86: mlx-platform: Fix item counter assignment for MSN2700/ComEx + system + - ARM: 9030/1: entry: omit FP emulation for UND exceptions taken in kernel + mode + - powerpc/pseries/hibernation: drop pseries_suspend_begin() from suspend ops + - powerpc/pseries/hibernation: remove redundant cacheinfo update + - powerpc/powermac: Fix low_sleep_handler with CONFIG_VMAP_STACK + - drm/mediatek: avoid dereferencing a null hdmi_phy on an error message + - ASoC: amd: change clk_get() to devm_clk_get() and add missed checks + - ASoC: max98390: Fix error codes in max98390_dsm_init() + - powerpc/mm: sanity_check_fault() should work for all, not only BOOK3S + - usb: ehci-omap: Fix PM disable depth umbalance in ehci_hcd_omap_probe + - usb: oxu210hp-hcd: Fix memory leak in oxu_create + - speakup: fix uninitialized flush_lock + - nfsd: Fix message level for normal termination + - NFSD: Fix 5 seconds delay when doing inter server copy + - nfs_common: need lock during iterate through the list + - x86/kprobes: Restore BTF if the single-stepping is cancelled + - scsi: qla2xxx: Fix N2N and NVMe connect retry failure + - platform/chrome: cros_ec_spi: Don't overwrite spi::mode + - misc: pci_endpoint_test: fix return value of error branch + - bus: fsl-mc: fix error return code in fsl_mc_object_allocate() + - s390/cio: fix use-after-free in ccw_device_destroy_console + - iwlwifi: dbg-tlv: fix old length in is_trig_data_contained() + - iwlwifi: mvm: hook up missing RX handlers + - erofs: avoid using generic_block_bmap + - can: m_can: m_can_config_endisable(): remove double clearing of clock stop + request bit + - powerpc/sstep: Emulate prefixed instructions only when CPU_FTR_ARCH_31 is + set + - powerpc/sstep: Cover new VSX instructions under CONFIG_VSX + - slimbus: qcom: fix potential NULL dereference in qcom_slim_prg_slew() + - RDMA/core: Do not indicate device ready when device enablement fails + - remoteproc: q6v5-mss: fix error handling in q6v5_pds_enable + - remoteproc: qcom: fix reference leak in adsp_start + - remoteproc: qcom: pas: fix error handling in adsp_pds_enable + - remoteproc: qcom: Fix potential NULL dereference in adsp_init_mmio() + - clk: qcom: gcc-sc7180: Use floor ops for sdcc clks + - clk: tegra: Fix duplicated SE clock entry + - mtd: rawnand: gpmi: fix reference count leak in gpmi ops + - mtd: rawnand: meson: Fix a resource leak in init + - mtd: rawnand: gpmi: Fix the random DMA timeout issue + - samples/bpf: Fix possible hang in xdpsock with multiple threads + - fs: Handle I_DONTCACHE in iput_final() instead of generic_drop_inode() + - extcon: max77693: Fix modalias string + - crypto: atmel-i2c - select CONFIG_BITREVERSE + - mac80211: don't set set TDLS STA bandwidth wider than possible + - ASoC: wm_adsp: remove "ctl" from list on error in wm_adsp_create_control() + - irqchip/alpine-msi: Fix freeing of interrupts on allocation error path + - RDMA/hns: Limit the length of data copied between kernel and userspace + - gpiolib: irq hooks: fix recursion in gpiochip_irq_unmask + - irqchip/qcom-pdc: Fix phantom irq when changing between rising/falling + - watchdog: armada_37xx: Add missing dependency on HAS_IOMEM + - watchdog: sirfsoc: Add missing dependency on HAS_IOMEM + - watchdog: sprd: remove watchdog disable from resume fail path + - watchdog: sprd: check busy bit before new loading rather than after that + - watchdog: Fix potential dereferencing of null pointer + - ubifs: Fix error return code in ubifs_init_authentication() + - um: Monitor error events in IRQ controller + - um: tty: Fix handling of close in tty lines + - um: chan_xterm: Fix fd leak + - sunrpc: fix xs_read_xdr_buf for partial pages receive + - RDMA/mlx5: Fix MR cache memory leak + - RDMA/cma: Don't overwrite sgid_attr after device is released + - nfc: s3fwrn5: Release the nfc firmware + - powerpc/perf: Fix Threshold Event Counter Multiplier width for P10 + - powerpc/ps3: use dma_mapping_error() + - mm/gup: combine put_compound_head() and unpin_user_page() + - mm/rmap: always do TTU_IGNORE_ACCESS + - sparc: fix handling of page table constructor failure + - mm/vmalloc: Fix unlock order in s_stop() + - mm/vmalloc.c: fix kasan shadow poisoning size + - mm,memory_failure: always pin the page in madvise_inject_error + - hugetlb: fix an error code in hugetlb_reserve_pages() + - mm: don't wake kswapd prematurely when watermark boosting is disabled + - proc: fix lookup in /proc/net subdirectories after setns(2) + - checkpatch: fix unescaped left brace + - s390/test_unwind: fix CALL_ON_STACK tests + - lan743x: fix rx_napi_poll/interrupt ping-pong + - ice, xsk: clear the status bits for the next_to_use descriptor + - i40e, xsk: clear the status bits for the next_to_use descriptor + - net: dsa: qca: ar9331: fix sleeping function called from invalid context bug + - net: bcmgenet: Fix a resource leak in an error handling path in the probe + functin + - net: allwinner: Fix some resources leak in the error handling path of the + probe and in the remove function + - block/rnbd-clt: Get rid of warning regarding size argument in strlcpy + - block/rnbd-clt: Fix possible memleak + - NFS/pNFS: Fix a typo in ff_layout_resend_pnfs_read() + - net: korina: fix return value + - libnvdimm/label: Return -ENXIO for no slot in __blk_label_update + - powerpc/32s: Fix cleanup_cpu_mmu_context() compile bug + - watchdog: qcom: Avoid context switch in restart handler + - watchdog: coh901327: add COMMON_CLK dependency + - clk: ti: Fix memleak in ti_fapll_synth_setup + - pwm: zx: Add missing cleanup in error path + - pwm: lp3943: Dynamically allocate PWM chip base + - pwm: imx27: Fix overflow for bigger periods + - pwm: sun4i: Remove erroneous else branch + - tools build: Add missing libcap to test-all.bin target + - perf record: Fix memory leak when using '--user-regs=?' to list registers + - qlcnic: Fix error code in probe + - nfp: move indirect block cleanup to flower app stop callback + - virtio_ring: Cut and paste bugs in vring_create_virtqueue_packed() + - virtio_net: Fix error code in probe() + - virtio_ring: Fix two use after free bugs + - vhost scsi: fix error return code in vhost_scsi_set_endpoint() + - epoll: check for events when removing a timed out thread from the wait queue + - clk: at91: sam9x60: remove atmel,osc-bypass support + - clk: s2mps11: Fix a resource leak in error handling paths in the probe + function + - clk: sunxi-ng: Make sure divider tables have sentinel + - kconfig: fix return value of do_error_if() + - powerpc/smp: Add __init to init_big_cores() + - ARM: 9044/1: vfp: use undef hook for VFP support detection + - perf probe: Fix memory leak when synthesizing SDT probes + - io_uring: cancel reqs shouldn't kill overflow list + - Smack: Handle io_uring kernel thread privileges + - io_uring: fix io_cqring_events()'s noflush + - vfio/pci: Move dummy_resources_list init in vfio_pci_probe() + - vfio/pci/nvlink2: Do not attempt NPU2 setup on POWER8NVL NPU + - media: gspca: Fix memory leak in probe + - io_uring: fix io_wqe->work_list corruption + - io_uring: fix 0-iov read buffer select + - io_uring: fix ignoring xa_store errors + - io_uring: make ctx cancel on exit targeted to actual ctx + - media: sunxi-cir: ensure IR is handled when it is continuous + - media: netup_unidvb: Don't leak SPI master in probe error path + - media: ipu3-cio2: Remove traces of returned buffers + - media: ipu3-cio2: Return actual subdev format + - media: ipu3-cio2: Serialise access to pad format + - media: ipu3-cio2: Validate mbus format in setting subdev format + - media: ipu3-cio2: Make the field on subdev format V4L2_FIELD_NONE + - Input: cyapa_gen6 - fix out-of-bounds stack access + - ALSA: hda/ca0132 - Change Input Source enum strings. + - Revert "ACPI / resources: Use AE_CTRL_TERMINATE to terminate resources + walks" + - ACPI: PNP: compare the string length in the matching_id() + - ALSA: hda: Fix regressions on clear and reconfig sysfs + - ALSA: hda/ca0132 - Fix AE-5 rear headphone pincfg. + - ALSA: hda/realtek: make bass spk volume adjustable on a yoga laptop + - ALSA: hda/realtek - Enable headset mic of ASUS X430UN with ALC256 + - ALSA: hda/realtek - Enable headset mic of ASUS Q524UQK with ALC255 + - ALSA: hda/realtek - Add supported for more Lenovo ALC285 Headset Button + - ALSA: pcm: oss: Fix a few more UBSAN fixes + - ALSA/hda: apply jack fixup for the Acer Veriton N4640G/N6640G/N2510G + - ALSA: hda/realtek: Add quirk for MSI-GP73 + - ALSA: hda/realtek: Apply jack fixup for Quanta NL3 + - ALSA: hda/realtek: Remove dummy lineout on Acer TravelMate P648/P658 + - ALSA: hda/realtek - Supported Dell fixed type headset + - ALSA: usb-audio: Add VID to support native DSD reproduction on FiiO devices + - ALSA: usb-audio: Disable sample read check if firmware doesn't give back + - ALSA: core: memalloc: add page alignment for iram + - s390/smp: perform initial CPU reset also for SMT siblings + - s390/kexec_file: fix diag308 subcode when loading crash kernel + - s390/idle: add missing mt_cycles calculation + - s390/idle: fix accounting with machine checks + - s390/dasd: fix hanging device offline processing + - s390/dasd: prevent inconsistent LCU device data + - s390/dasd: fix list corruption of pavgroup group list + - s390/dasd: fix list corruption of lcu list + - binder: add flag to clear buffer on txn complete + - ASoC: cx2072x: Fix doubly definitions of Playback and Capture streams + - ASoC: AMD Renoir - add DMI table to avoid the ACP mic probe (broken BIOS) + - ASoC: AMD Raven/Renoir - fix the PCI probe (PCI revision) + - staging: comedi: mf6x4: Fix AI end-of-conversion detection + - z3fold: simplify freeing slots + - z3fold: stricter locking and more careful reclaim + - perf/x86/intel: Add event constraint for CYCLE_ACTIVITY.STALLS_MEM_ANY + - perf/x86/intel: Fix rtm_abort_event encoding on Ice Lake + - powerpc/perf: Exclude kernel samples while counting events in user space. + - cpufreq: intel_pstate: Use most recent guaranteed performance values + - crypto: ecdh - avoid unaligned accesses in ecdh_set_secret() + - crypto: arm/aes-ce - work around Cortex-A57/A72 silion errata + - m68k: Fix WARNING splat in pmac_zilog driver + - EDAC/i10nm: Use readl() to access MMIO registers + - EDAC/amd64: Fix PCI component registration + - cpuset: fix race between hotplug work and later CPU offline + - USB: serial: mos7720: fix parallel-port state restore + - USB: serial: digi_acceleport: fix write-wakeup deadlocks + - USB: serial: keyspan_pda: fix dropped unthrottle interrupts + - USB: serial: keyspan_pda: fix write deadlock + - USB: serial: keyspan_pda: fix stalled writes + - USB: serial: keyspan_pda: fix write-wakeup use-after-free + - USB: serial: keyspan_pda: fix tx-unthrottle use-after-free + - USB: serial: keyspan_pda: fix write unthrottling + - btrfs: do not shorten unpin len for caching block groups + - btrfs: update last_byte_to_unpin in switch_commit_roots + - btrfs: fix race when defragmenting leads to unnecessary IO + - ext4: fix a memory leak of ext4_free_data + - ext4: fix deadlock with fs freezing and EA inodes + - ext4: don't remount read-only with errors=continue on reboot + - arm64: dts: ti: k3-am65: mark dss as dma-coherent + - KVM: arm64: Introduce handling of AArch32 TTBCR2 traps + - KVM: x86: reinstate vendor-agnostic check on SPEC_CTRL cpuid bits + - KVM: SVM: Remove the call to sev_platform_status() during setup + - ARM: dts: pandaboard: fix pinmux for gpio user button of Pandaboard ES + - ARM: dts: at91: sama5d2: fix CAN message ram offset and size + - ARM: tegra: Populate OPP table for Tegra20 Ventana + - xprtrdma: Fix XDRBUF_SPARSE_PAGES support + - powerpc/32: Fix vmap stack - Properly set r1 before activating MMU on + syscall too + - powerpc: Fix incorrect stw{, ux, u, x} instructions in __set_pte_at + - powerpc/rtas: Fix typo of ibm,open-errinjct in RTAS filter + - powerpc/bitops: Fix possible undefined behaviour with fls() and fls64() + - powerpc/feature: Add CPU_FTR_NOEXECUTE to G2_LE + - powerpc/xmon: Change printk() to pr_cont() + - powerpc/8xx: Fix early debug when SMC1 is relocated + - powerpc/mm: Fix verification of MMU_FTR_TYPE_44x + - powerpc/powernv/npu: Do not attempt NPU2 setup on POWER8NVL NPU + - powerpc/powernv/memtrace: Don't leak kernel memory to user space + - powerpc/powernv/memtrace: Fix crashing the kernel when enabling concurrently + - ima: Don't modify file descriptor mode on the fly + - um: Remove use of asprinf in umid.c + - um: Fix time-travel mode + - ceph: fix race in concurrent __ceph_remove_cap invocations + - SMB3: avoid confusing warning message on mount to Azure + - SMB3.1.1: remove confusing mount warning when no SPNEGO info on negprot rsp + - SMB3.1.1: do not log warning message if server doesn't populate salt + - ubifs: wbuf: Don't leak kernel memory to flash + - jffs2: Fix GC exit abnormally + - jffs2: Fix ignoring mounting options problem during remounting + - jfs: Fix array index bounds check in dbAdjTree + - drm/panfrost: Fix job timeout handling + - platform/x86: mlx-platform: remove an unused variable + - drm/dp_aux_dev: check aux_dev before use in drm_dp_aux_dev_get_by_minor() + - drm/i915: Fix mismatch between misplaced vma check and vma insert + - iio: ad_sigma_delta: Don't put SPI transfer buffer on the stack + - spi: pxa2xx: Fix use-after-free on unbind + - spi: spi-sh: Fix use-after-free on unbind + - spi: atmel-quadspi: Fix use-after-free on unbind + - spi: spi-mtk-nor: Don't leak SPI master in probe error path + - spi: ar934x: Don't leak SPI master in probe error path + - spi: davinci: Fix use-after-free on unbind + - spi: fsl: fix use of spisel_boot signal on MPC8309 + - spi: gpio: Don't leak SPI master in probe error path + - spi: mxic: Don't leak SPI master in probe error path + - spi: npcm-fiu: Disable clock in probe error path + - spi: pic32: Don't leak DMA channels in probe error path + - spi: rb4xx: Don't leak SPI master in probe error path + - spi: sc18is602: Don't leak SPI master in probe error path + - spi: spi-geni-qcom: Fix use-after-free on unbind + - spi: spi-qcom-qspi: Fix use-after-free on unbind + - spi: st-ssc4: Fix unbalanced pm_runtime_disable() in probe error path + - spi: synquacer: Disable clock in probe error path + - spi: mt7621: Disable clock in probe error path + - spi: mt7621: Don't leak SPI master in probe error path + - spi: atmel-quadspi: Disable clock in probe error path + - spi: atmel-quadspi: Fix AHB memory accesses + - soc: qcom: smp2p: Safely acquire spinlock without IRQs + - mtd: parser: cmdline: Fix parsing of part-names with colons + - mtd: core: Fix refcounting for unpartitioned MTDs + - mtd: rawnand: qcom: Fix DMA sync on FLASH_STATUS register read + - mtd: rawnand: meson: fix meson_nfc_dma_buffer_release() arguments + - scsi: qla2xxx: Fix crash during driver load on big endian machines + - scsi: lpfc: Fix invalid sleeping context in lpfc_sli4_nvmet_alloc() + - scsi: lpfc: Re-fix use after free in lpfc_rq_buf_free() + - openat2: reject RESOLVE_BENEATH|RESOLVE_IN_ROOT + - iio: buffer: Fix demux update + - iio: adc: rockchip_saradc: fix missing clk_disable_unprepare() on error in + rockchip_saradc_resume + - iio: imu: st_lsm6dsx: fix edge-trigger interrupts + - iio:light:rpr0521: Fix timestamp alignment and prevent data leak. + - iio:light:st_uvis25: Fix timestamp alignment and prevent data leak. + - iio:magnetometer:mag3110: Fix alignment and data leak issues. + - iio:pressure:mpl3115: Force alignment of buffer + - iio:imu:bmi160: Fix too large a buffer. + - iio:imu:bmi160: Fix alignment and data leak issues + - iio:adc:ti-ads124s08: Fix buffer being too long. + - iio:adc:ti-ads124s08: Fix alignment and data leak issues. + - md/cluster: block reshape with remote resync job + - md/cluster: fix deadlock when node is doing resync job + - pinctrl: sunxi: Always call chained_irq_{enter, exit} in + sunxi_pinctrl_irq_handler + - clk: ingenic: Fix divider calculation with div tables + - clk: mvebu: a3700: fix the XTAL MODE pin to MPP1_9 + - clk: tegra: Do not return 0 on failure + - device-dax/core: Fix memory leak when rmmod dax.ko + - dma-buf/dma-resv: Respect num_fences when initializing the shared fence + list. + - driver: core: Fix list corruption after device_del() + - xen-blkback: set ring->xenblkd to NULL after kthread_stop() + - xen/xenbus: Allow watches discard events before queueing + - xen/xenbus: Add 'will_handle' callback support in xenbus_watch_path() + - xen/xenbus/xen_bus_type: Support will_handle watch callback + - xen/xenbus: Count pending messages for each watch + - xenbus/xenbus_backend: Disallow pending watch messages + - libnvdimm/namespace: Fix reaping of invalidated block-window-namespace + labels + - platform/x86: intel-vbtn: Allow switch events on Acer Switch Alpha 12 + - tracing: Disable ftrace selftests when any tracer is running + - mt76: add back the SUPPORTS_REORDERING_BUFFER flag + - of: fix linker-section match-table corruption + - PCI: Fix pci_slot_release() NULL pointer dereference + - regulator: axp20x: Fix DLDO2 voltage control register mask for AXP22x + - remoteproc: sysmon: Ensure remote notification ordering + - thermal/drivers/cpufreq_cooling: Update cpufreq_state only if state has + changed + - rtc: ep93xx: Fix NULL pointer dereference in ep93xx_rtc_read_time + - Revert: "ring-buffer: Remove HAVE_64BIT_ALIGNED_ACCESS" + - null_blk: Fix zone size initialization + - null_blk: Fail zone append to conventional zones + - drm/edid: fix objtool warning in drm_cvt_modes() + - x86/CPU/AMD: Save AMD NodeId as cpu_die_id + - ARM: dts: sun7i: bananapi: Enable RGMII RX/TX delay on Ethernet PHY + - ARM: dts: sun8i: r40: bananapi-m2-berry: Fix dcdc1 regulator + - ARM: dts: sun8i: v40: bananapi-m2-berry: Fix ethernet node + - pinctrl: merrifield: Set default bias in case no particular value given + - pinctrl: baytrail: Avoid clearing debounce value when turning it off + - ARM: dts: sun8i: v3s: fix GIC node memory range + - ARM: dts: sun7i: pcduino3-nano: enable RGMII RX/TX delay on PHY + - ARM: dts: imx6qdl-wandboard-revd1: Remove PAD_GPIO_6 from enetgrp + - ARM: dts: imx6qdl-kontron-samx6i: fix I2C_PM scl pin + - gpio: zynq: fix reference leak in zynq_gpio functions + - gpio: mvebu: fix potential user-after-free on probe + - scsi: bnx2i: Requires MMU + - xsk: Replace datagram_poll by sock_poll_wait + - can: softing: softing_netdev_open(): fix error handling + - clk: renesas: r9a06g032: Drop __packed for portability + - pinctrl: aspeed: Fix GPIO requests on pass-through banks + - netfilter: x_tables: Switch synchronization to RCU + - netfilter: nft_compat: make sure xtables destructors have run + - netfilter: nft_dynset: fix timeouts later than 23 days + - afs: Fix memory leak when mounting with multiple source parameters + - gpio: eic-sprd: break loop when getting NULL device resource + - netfilter: nft_ct: Remove confirmation check for NFT_CT_ID + - selftests/bpf/test_offload.py: Reset ethtool features after failed setting + - RDMA/cm: Fix an attempt to use non-valid pointer when cleaning timewait + - i40e: optimise prefetch page refcount + - i40e: avoid premature Rx buffer reuse + - ixgbe: avoid premature Rx buffer reuse + - selftests: fix poll error in udpgro.sh + - net: mvpp2: add mvpp2_phylink_to_port() helper + - drm/tegra: replace idr_init() by idr_init_base() + - kernel/cpu: add arch override for clear_tasks_mm_cpumask() mm handling + - drm/tegra: sor: Disable clocks on error in tegra_sor_init() + - habanalabs: put devices before driver removal + - arm64: syscall: exit userspace before unmasking exceptions + - vxlan: Add needed_headroom for lower device + - vxlan: Copy needed_tailroom from lowerdev + - scsi: mpt3sas: Increase IOCInit request timeout to 30s + - dm table: Remove BUG_ON(in_interrupt()) + - iwlwifi: pcie: add one missing entry for AX210 + - drm/amd/display: Init clock value by current vbios CLKs + - perf/x86/intel: Check PEBS status correctly + - kbuild: avoid split lines in .mod files + - ARM: sunxi: Add machine match for the Allwinner V3 SoC + - cfg80211: initialize rekey_data + - fix namespaced fscaps when !CONFIG_SECURITY + - lwt: Disable BH too in run_lwt_bpf() + - drm/amd/display: Prevent bandwidth overflow + - drm/amdkfd: Fix leak in dmabuf import + - Input: cros_ec_keyb - send 'scancodes' in addition to key events + - initramfs: fix clang build failure + - Input: goodix - add upside-down quirk for Teclast X98 Pro tablet + + * Groovy update: upstream stable patchset 2021-01-13 (LP: #1911476) + - Kbuild: do not emit debug info for assembly with LLVM_IAS=1 + - mm/zsmalloc.c: drop ZSMALLOC_PGTABLE_MAPPING + - [Config] updateconfigs for ZSMALLOC_PGTABLE_MAPPING + - kprobes: Remove NMI context check + - kprobes: Tell lockdep about kprobe nesting + - ASoC: Intel: bytcr_rt5640: Fix HP Pavilion x2 Detachable quirks + - tools/bootconfig: Fix to check the write failure correctly + - net, xsk: Avoid taking multiple skbuff references + - bpftool: Fix error return value in build_btf_type_table + - vhost-vdpa: fix page pinning leakage in error path (rework) + - powerpc/64s: Fix hash ISA v3.0 TLBIEL instruction generation + - batman-adv: Consider fragmentation for needed_headroom + - batman-adv: Reserve needed_*room for fragments + - batman-adv: Don't always reallocate the fragmentation skb head + - ipvs: fix possible memory leak in ip_vs_control_net_init + - ibmvnic: handle inconsistent login with reset + - ibmvnic: stop free_all_rwi on failed reset + - ibmvnic: avoid memset null scrq msgs + - ibmvnic: delay next reset if hard reset fails + - ibmvnic: track pending login + - ibmvnic: send_login should check for crq errors + - ibmvnic: reduce wait for completion time + - drm/rockchip: Avoid uninitialized use of endpoint id in LVDS + - drm/panel: sony-acx565akm: Fix race condition in probe + - can: m_can: tcan4x5x_can_probe(): fix error path: remove erroneous + clk_disable_unprepare() + - can: sja1000: sja1000_err(): don't count arbitration lose as an error + - can: sun4i_can: sun4i_can_err(): don't count arbitration lose as an error + - can: c_can: c_can_power_up(): fix error handling + - can: kvaser_pciefd: kvaser_pciefd_open(): fix error handling + - samples/ftrace: Mark my_tramp[12]? global + - scsi: storvsc: Fix error return in storvsc_probe() + - net: broadcom CNIC: requires MMU + - iwlwifi: pcie: invert values of NO_160 device config entries + - perf/x86/intel: Fix a warning on x86_pmu_stop() with large PEBS + - zlib: export S390 symbols for zlib modules + - phy: usb: Fix incorrect clearing of tca_drv_sel bit in SETUP reg for 7211 + - arm64: dts: rockchip: Remove system-power-controller from pmic on Odroid Go + Advance + - iwlwifi: pcie: limit memory read spin time + - arm64: dts: rockchip: Assign a fixed index to mmc devices on rk3399 boards. + - arm64: dts: rockchip: Reorder LED triggers from mmc devices on rk3399-roc- + pc. + - iwlwifi: sta: set max HE max A-MPDU according to HE capa + - iwlwifi: pcie: set LTR to avoid completion timeout + - iwlwifi: mvm: fix kernel panic in case of assert during CSA + - powerpc: Drop -me200 addition to build flags + - arm64: dts: broadcom: clear the warnings caused by empty dma-ranges + - ARC: stack unwinding: don't assume non-current task is sleeping + - scsi: ufs: Fix unexpected values from ufshcd_read_desc_param() + - scsi: ufs: Make sure clk scaling happens only when HBA is runtime ACTIVE + - interconnect: qcom: msm8916: Remove rpm-ids from non-RPM nodes + - interconnect: qcom: qcs404: Remove GPU and display RPM IDs + - ibmvnic: skip tx timeout reset while in resetting + - irqchip/gic-v3-its: Unconditionally save/restore the ITS state on suspend + - drm/exynos: depend on COMMON_CLK to fix compile tests + - spi: spi-nxp-fspi: fix fspi panic by unexpected interrupts + - arm-smmu-qcom: Ensure the qcom_scm driver has finished probing + - btrfs: do nofs allocations when adding and removing qgroup relations + - btrfs: fix lockdep splat when enabling and disabling qgroups + - soc: fsl: dpio: Get the cpumask through cpumask_of(cpu) + - intel_idle: Fix intel_idle() vs tracing + - arm64: tegra: Disable the ACONNECT for Jetson TX2 + - platform/x86: thinkpad_acpi: add P1 gen3 second fan support + - platform/x86: thinkpad_acpi: Do not report SW_TABLET_MODE on Yoga 11e + - platform/x86: thinkpad_acpi: Add BAT1 is primary battery quirk for Thinkpad + Yoga 11e 4th gen + - platform/x86: thinkpad_acpi: Whitelist P15 firmware for dual fan control + - platform/x86: acer-wmi: add automatic keyboard background light toggle key + as KEY_LIGHTS_TOGGLE + - platform/x86: intel-vbtn: Support for tablet mode on HP Pavilion 13 x360 PC + - platform/x86: touchscreen_dmi: Add info for the Predia Basic tablet + - platform/x86: touchscreen_dmi: Add info for the Irbis TW118 tablet + - can: m_can: m_can_dev_setup(): add support for bosch mcan version 3.3.0 + - s390: fix irq state tracing + - intel_idle: Build fix + - media: pulse8-cec: fix duplicate free at disconnect or probe error + - media: pulse8-cec: add support for FW v10 and up + - mmc: mediatek: Extend recheck_sdio_irq fix to more variants + - ktest.pl: Fix incorrect reboot for grub2bls + - xen: add helpers for caching grant mapping pages + - Input: cm109 - do not stomp on control URB + - Input: i8042 - add Acer laptops to the i8042 reset list + - pinctrl: jasperlake: Fix HOSTSW_OWN offset + - mmc: sdhci-of-arasan: Fix clock registration error for Keem Bay SOC + - mmc: block: Fixup condition for CMD13 polling for RPMB requests + - drm/amdgpu/disply: set num_crtc earlier + - drm/i915/gem: Propagate error from cancelled submit due to context closure + - drm/i915/display/dp: Compute the correct slice count for VDSC on DP + - drm/i915/gt: Declare gen9 has 64 mocs entries! + - drm/i915/gt: Ignore repeated attempts to suspend request flow across reset + - drm/i915/gt: Cancel the preemption timeout on responding to it + - kbuild: avoid static_assert for genksyms + - proc: use untagged_addr() for pagemap_read addresses + - zonefs: fix page reference and BIO leak + - scsi: be2iscsi: Revert "Fix a theoretical leak in beiscsi_create_eqs()" + - x86/mm/mem_encrypt: Fix definition of PMD_FLAGS_DEC_WP + - x86/membarrier: Get rid of a dubious optimization + - x86/apic/vector: Fix ordering in vector assignment + - x86/kprobes: Fix optprobe to detect INT3 padding correctly + - compiler.h: fix barrier_data() on clang + - ptrace: Prevent kernel-infoleak in ptrace_get_syscall_info() + - net/sched: fq_pie: initialize timer earlier in fq_pie_init() + - net: ipa: pass the correct size when freeing DMA memory + - ipv4: fix error return code in rtm_to_fib_config() + - mac80211: mesh: fix mesh_pathtbl_init() error path + - net: bridge: vlan: fix error return code in __vlan_add() + - vrf: packets with lladdr src needs dst at input with orig_iif when needs + strict + - net: hns3: remove a misused pragma packed + - udp: fix the proto value passed to ip_protocol_deliver_rcu for the segments + - enetc: Fix reporting of h/w packet counters + - bridge: Fix a deadlock when enabling multicast snooping + - mptcp: print new line in mptcp_seq_show() if mptcp isn't in use + - net: stmmac: dwmac-meson8b: fix mask definition of the m250_sel mux + - net: stmmac: start phylink instance before stmmac_hw_setup() + - net: stmmac: free tx skb buffer in stmmac_resume() + - net: stmmac: delete the eee_ctrl_timer after napi disabled + - net: stmmac: overwrite the dma_cap.addr64 according to HW design + - net: ll_temac: Fix potential NULL dereference in temac_probe() + - tcp: select sane initial rcvq_space.space for big MSS + - e1000e: fix S0ix flow to allow S0i3.2 subset entry + - ethtool: fix stack overflow in ethnl_parse_bitset() + - tcp: fix cwnd-limited bug for TSO deferral where we send nothing + - net: flow_offload: Fix memory leak for indirect flow block + - net/mlx4_en: Avoid scheduling restart task if it is already running + - net/mlx4_en: Handle TX error CQE + - net: sched: Fix dump of MPLS_OPT_LSE_LABEL attribute in cls_flower + - ch_ktls: fix build warning for ipv4-only config + - lan743x: fix for potential NULL pointer dereference with bare card + - net: stmmac: increase the timeout for dma reset + - net: tipc: prevent possible null deref of link + - ktest.pl: If size of log is too big to email, email error message + - USB: dummy-hcd: Fix uninitialized array use in init() + - USB: add RESET_RESUME quirk for Snapscan 1212 + - ALSA: usb-audio: Fix potential out-of-bounds shift + - ALSA: usb-audio: Fix control 'access overflow' errors from chmap + - xhci: Give USB2 ports time to enter U3 in bus suspend + - xhci-pci: Allow host runtime PM as default for Intel Alpine Ridge LP + - xhci-pci: Allow host runtime PM as default for Intel Maple Ridge xHCI + - USB: UAS: introduce a quirk to set no_write_same + - USB: sisusbvga: Make console support depend on BROKEN + - [Config] updateconfigs for USB_SISUSBVGA_CON + - ALSA: pcm: oss: Fix potential out-of-bounds shift + - serial: 8250_omap: Avoid FIFO corruption caused by MDR1 access + - KVM: mmu: Fix SPTE encoding of MMIO generation upper half + - membarrier: Explicitly sync remote cores when SYNC_CORE is requested + - x86/resctrl: Remove unused struct mbm_state::chunks_bw + - x86/resctrl: Fix incorrect local bandwidth when mba_sc is enabled + + * MSFT Touchpad not working on Lenovo Legion-5 15ARH05 (LP: #1887190) // + Groovy update: upstream stable patchset 2021-01-13 (LP: #1911476) + - pinctrl: amd: remove debounce filter setting in IRQ type setting + + * Groovy update: upstream stable patchset 2021-01-12 (LP: #1911235) + - powerpc: Only include kup-radix.h for 64-bit Book3S + - leds: lm3697: Fix out-of-bound access + - Input: sunkbd - avoid use-after-free in teardown paths + - mac80211: always wind down STA state + - can: proc: can_remove_proc(): silence remove_proc_entry warning + - powerpc/smp: Call rcu_cpu_starting() earlier + - KVM: x86: clflushopt should be treated as a no-op by emulation + - ACPI: GED: fix -Wformat + - net: lantiq: Add locking for TX DMA channel + - ah6: fix error return code in ah6_input() + - atm: nicstar: Unmap DMA on send error + - bnxt_en: read EEPROM A2h address using page 0 + - devlink: Add missing genlmsg_cancel() in devlink_nl_sb_port_pool_fill() + - enetc: Workaround for MDIO register access issue + - Exempt multicast addresses from five-second neighbor lifetime + - inet_diag: Fix error path to cancel the meseage in inet_req_diag_fill() + - ipv6: Fix error path to cancel the meseage + - lan743x: fix issue causing intermittent kernel log warnings + - lan743x: prevent entire kernel HANG on open, for some platforms + - mlxsw: core: Use variable timeout for EMAD retries + - net: b44: fix error return code in b44_init_one() + - net: bridge: add missing counters to ndo_get_stats64 callback + - netdevsim: set .owner to THIS_MODULE + - net: dsa: mv88e6xxx: Avoid VTU corruption on 6097 + - net: ethernet: mtk-star-emac: fix error return code in mtk_star_enable() + - net: ethernet: mtk-star-emac: return ok when xmit drops + - net: ethernet: ti: am65-cpts: update ret when ptp_clock is ERROR + - net: ethernet: ti: cpsw: fix cpts irq after suspend + - net: ethernet: ti: cpsw: fix error return code in cpsw_probe() + - net: ftgmac100: Fix crash when removing driver + - net: Have netpoll bring-up DSA management interface + - net: ipa: lock when freeing transaction + - netlabel: fix our progress tracking in netlbl_unlabel_staticlist() + - netlabel: fix an uninitialized warning in netlbl_unlabel_staticlist() + - net: lantiq: Wait for the GPHY firmware to be ready + - net/mlx4_core: Fix init_hca fields offset + - net/mlx5e: Fix refcount leak on kTLS RX resync + - net/ncsi: Fix netlink registration + - net: phy: mscc: remove non-MACSec compatible phy + - net: qualcomm: rmnet: Fix incorrect receive packet handling during cleanup + - net/smc: fix direct access to ib_gid_addr->ndev in smc_ib_determine_gid() + - net: stmmac: Use rtnl_lock/unlock on netif_set_real_num_rx_queues() call + - net/tls: fix corrupted data in recvmsg + - net: x25: Increase refcnt of "struct x25_neigh" in x25_rx_call_request + - page_frag: Recover from memory pressure + - qed: fix error return code in qed_iwarp_ll2_start() + - qed: fix ILT configuration of SRC block + - qlcnic: fix error return code in qlcnic_83xx_restart_hw() + - sctp: change to hold/put transport for proto_unreach_timer + - tcp: only postpone PROBE_RTT if RTT is < current min_rtt estimate + - vsock: forward all packets to the host when no H2G is registered + - net/mlx5e: Fix check if netdev is bond slave + - net/mlx5: Add handling of port type in rule deletion + - net/mlx5: Clear bw_share upon VF disable + - net/mlx5: Disable QoS when min_rates on all VFs are zero + - PM: runtime: Add pm_runtime_resume_and_get to deal with usage counter + - net: fec: Fix reference count leak in fec series ops + - net/tls: Fix wrong record sn in async mode of device resync + - net: usb: qmi_wwan: Set DTR quirk for MR400 + - Revert "Revert "gpio: omap: Fix lost edge wake-up interrupts"" + - tools, bpftool: Avoid array index warnings. + - habanalabs/gaudi: mask WDT error in QMAN + - pinctrl: rockchip: enable gpio pclk for rockchip_gpio_to_irq + - scsi: ufs: Fix unbalanced scsi_block_reqs_cnt caused by ufshcd_hold() + - scsi: ufs: Try to save power mode change and UIC cmd completion timeout + - pinctrl: mcp23s08: Print error message when regmap init fails + - selftests: kvm: Fix the segment descriptor layout to match the actual layout + - ACPI: button: Add DMI quirk for Medion Akoya E2228T + - arm64: errata: Fix handling of 1418040 with late CPU onlining + - arm64: psci: Avoid printing in cpu_psci_cpu_die() + - arm64: smp: Tell RCU about CPUs that fail to come online + - vfs: remove lockdep bogosity in __sb_start_write + - gfs2: fix possible reference leak in gfs2_check_blk_type + - hwmon: (pwm-fan) Fix RPM calculation + - gfs2: Fix case in which ail writes are done to jdata holes + - arm64: Add MIDR value for KRYO2XX gold/silver CPU cores + - arm64: kpti: Add KRYO2XX gold/silver CPU cores to kpti safelist + - arm64: cpu_errata: Apply Erratum 845719 to KRYO2XX Silver + - arm64: dts: allwinner: beelink-gs1: Enable both RGMII RX/TX delay + - arm64: dts: allwinner: Pine H64: Enable both RGMII RX/TX delay + - arm64: dts: allwinner: a64: OrangePi Win: Fix ethernet node + - arm64: dts: allwinner: a64: Pine64 Plus: Fix ethernet node + - arm64: dts: allwinner: h5: OrangePi PC2: Fix ethernet node + - ARM: dts: sun8i: r40: bananapi-m2-ultra: Fix ethernet node + - Revert "arm: sun8i: orangepi-pc-plus: Set EMAC activity LEDs to active high" + - ARM: dts: sun6i: a31-hummingbird: Enable RGMII RX/TX delay on Ethernet PHY + - ARM: dts: sun7i: cubietruck: Enable RGMII RX/TX delay on Ethernet PHY + - ARM: dts: sun7i: bananapi-m1-plus: Enable RGMII RX/TX delay on Ethernet PHY + - ARM: dts: sun8i: h3: orangepi-plus2e: Enable RGMII RX/TX delay on Ethernet + PHY + - ARM: dts: sun8i: a83t: Enable both RGMII RX/TX delay on Ethernet PHY + - ARM: dts: sun9i: Enable both RGMII RX/TX delay on Ethernet PHY + - ARM: dts: sunxi: bananapi-m2-plus: Enable RGMII RX/TX delay on Ethernet PHY + - arm64: dts: allwinner: h5: libretech-all-h5-cc: Enable RGMII RX/TX delay on + PHY + - arm64: dts: allwinner: a64: bananapi-m64: Enable RGMII RX/TX delay on PHY + - Input: adxl34x - clean up a data type in adxl34x_probe() + - MIPS: export has_transparent_hugepage() for modules + - dmaengine: idxd: fix wq config registers offset programming + - arm64: dts: allwinner: h5: OrangePi Prime: Fix ethernet node + - arm64: dts: imx8mm-beacon-som: Fix Choppy BT audio + - arm64: dts imx8mn: Remove non-existent USB OTG2 + - arm: dts: imx6qdl-udoo: fix rgmii phy-mode for ksz9031 phy + - ARM: dts: vf610-zii-dev-rev-b: Fix MDIO over clocking + - swiotlb: using SIZE_MAX needs limits.h included + - tee: amdtee: fix memory leak due to reset of global shm list + - tee: amdtee: synchronize access to shm list + - dmaengine: xilinx_dma: Fix usage of xilinx_aximcdma_tx_segment + - dmaengine: xilinx_dma: Fix SG capability check for MCDMA + - ARM: dts: stm32: Fix TA3-GPIO-C key on STM32MP1 DHCOM PDK2 + - ARM: dts: stm32: Fix LED5 on STM32MP1 DHCOM PDK2 + - ARM: dts: stm32: Define VIO regulator supply on DHCOM + - ARM: dts: stm32: Enable thermal sensor support on stm32mp15xx-dhcor + - ARM: dts: stm32: Keep VDDA LDO1 always on on DHCOM + - arm64: dts: imx8mm: fix voltage for 1.6GHz CPU operating point + - ARM: dts: imx50-evk: Fix the chip select 1 IOMUX + - dmaengine: ti: omap-dma: Block PM if SDMA is busy to fix audio + - kunit: tool: unmark test_data as binary blobs + - rcu: Don't invoke try_invoke_on_locked_down_task() with irqs disabled + - spi: fix client driver breakages when using GPIO descriptors + - Input: resistive-adc-touch - fix kconfig dependency on IIO_BUFFER + - rfkill: Fix use-after-free in rfkill_resume() + - RDMA/pvrdma: Fix missing kfree() in pvrdma_register_device() + - [Config] update config for INFINIBAND_VIRT_DMA + - RMDA/sw: Don't allow drivers using dma_virt_ops on highmem configs + - perf lock: Correct field name "flags" + - perf lock: Don't free "lock_seq_stat" if read_count isn't zero + - SUNRPC: Fix oops in the rpc_xdr_buf event class + - drm: bridge: dw-hdmi: Avoid resetting force in the detect function + - tools, bpftool: Add missing close before bpftool net attach exit + - IB/hfi1: Fix error return code in hfi1_init_dd() + - ip_tunnels: Set tunnel option flag when tunnel metadata is present + - can: af_can: prevent potential access of uninitialized member in can_rcv() + - can: af_can: prevent potential access of uninitialized member in canfd_rcv() + - can: dev: can_restart(): post buffer from the right context + - can: ti_hecc: Fix memleak in ti_hecc_probe + - can: mcba_usb: mcba_usb_start_xmit(): first fill skb, then pass to + can_put_echo_skb() + - can: peak_usb: fix potential integer overflow on shift of a int + - can: flexcan: fix failure handling of pm_runtime_get_sync() + - can: tcan4x5x: replace depends on REGMAP_SPI with depends on SPI + - can: tcan4x5x: tcan4x5x_can_probe(): add missing error checking for + devm_regmap_init() + - can: tcan4x5x: tcan4x5x_can_remove(): fix order of deregistration + - can: m_can: m_can_handle_state_change(): fix state change + - can: m_can: m_can_class_free_dev(): introduce new function + - can: m_can: Fix freeing of can device from peripherials + - can: m_can: m_can_stop(): set device to software init mode before closing + - dmaengine: idxd: fix mapping of portal size + - ASoC: qcom: lpass-platform: Fix memory leak + - selftests/bpf: Fix error return code in run_getsockopt_test() + - MIPS: Alchemy: Fix memleak in alchemy_clk_setup_cpu + - drm/sun4i: dw-hdmi: fix error return code in sun8i_dw_hdmi_bind() + - net/mlx5: E-Switch, Fail mlx5_esw_modify_vport_rate if qos disabled + - bpf, sockmap: Fix partial copy_page_to_iter so progress can still be made + - bpf, sockmap: Ensure SO_RCVBUF memory is observed on ingress redirect + - can: kvaser_pciefd: Fix KCAN bittiming limits + - can: kvaser_usb: kvaser_usb_hydra: Fix KCAN bittiming limits + - dmaengine: fix error codes in channel_register() + - iommu/vt-d: Move intel_iommu_gfx_mapped to Intel IOMMU header + - iommu/vt-d: Avoid panic if iommu init fails in tboot system + - can: flexcan: flexcan_chip_start(): fix erroneous + flexcan_transceiver_enable() during bus-off recovery + - can: m_can: process interrupt only when not runtime suspended + - xfs: fix the minrecs logic when dealing with inode root child blocks + - xfs: strengthen rmap record flags checking + - xfs: directory scrub should check the null bestfree entries too + - xfs: ensure inobt record walks always make forward progress + - xfs: return corresponding errcode if xfs_initialize_perag() fail + - ASOC: Intel: kbl_rt5663_rt5514_max98927: Do not try to disable disabled + clock + - regulator: ti-abb: Fix array out of bound read access on the first + transition + - libbpf: Fix VERSIONED_SYM_COUNT number parsing + - lib/strncpy_from_user.c: Mask out bytes after NUL terminator. + - fail_function: Remove a redundant mutex unlock + - xfs: revert "xfs: fix rmap key and record comparison functions" + - bpf, sockmap: Skb verdict SK_PASS to self already checked rmem limits + - bpf, sockmap: On receive programs try to fast track SK_PASS ingress + - bpf, sockmap: Use truesize with sk_rmem_schedule() + - bpf, sockmap: Avoid returning unneeded EAGAIN when redirecting to self + - efi/arm: set HSCTLR Thumb2 bit correctly for HVC calls from HYP + - counter/ti-eqep: Fix regmap max_register + - efi/x86: Free efi_pgd with free_pages() + - sched/fair: Fix overutilized update in enqueue_task_fair() + - sched: Fix data-race in wakeup + - sched: Fix rq->nr_iowait ordering + - libfs: fix error cast of negative value in simple_attr_write() + - afs: Fix speculative status fetch going out of order wrt to modifications + - HID: logitech-hidpp: Add PID for MX Anywhere 2 + - HID: mcp2221: Fix GPIO output handling + - HID: logitech-dj: Handle quad/bluetooth keyboards with a builtin trackpad + - HID: logitech-dj: Fix Dinovo Mini when paired with a MX5x00 receiver + - speakup: Do not let the line discipline be used several times + - ALSA: firewire: Clean up a locking issue in copy_resp_to_buf() + - ALSA: usb-audio: Add delay quirk for all Logitech USB devices + - ALSA: ctl: fix error path at adding user-defined element set + - ALSA: mixart: Fix mutex deadlock + - ALSA: hda/realtek - Add supported for Lenovo ThinkPad Headset Button + - ALSA: hda/realtek - Add supported mute Led for HP + - ALSA: hda/realtek: Add some Clove SSID in the ALC293(ALC1220) + - ALSA: hda/realtek - HP Headset Mic can't detect after boot + - tty: serial: imx: fix potential deadlock + - tty: serial: imx: keep console clocks always on + - HID: logitech-dj: Fix an error in mse_bluetooth_descriptor + - efivarfs: fix memory leak in efivarfs_create() + - staging: rtl8723bs: Add 024c:0627 to the list of SDIO device-ids + - staging: mt7621-pci: avoid to request pci bus resources + - iio: light: fix kconfig dependency bug for VCNL4035 + - ext4: fix bogus warning in ext4_update_dx_flag() + - xfs: fix forkoff miscalculation related to XFS_LITINO(mp) + - ACPI: fan: Initialize performance state sysfs attribute + - iio: accel: kxcjk1013: Replace is_smo8500_device with an acpi_type enum + - iio: accel: kxcjk1013: Add support for KIOX010A ACPI DSM for setting tablet- + mode + - iio: adc: mediatek: fix unset field + - iio: cros_ec: Use default frequencies when EC returns invalid information + - iio: imu: st_lsm6dsx: set 10ms as min shub slave timeout + - iio/adc: ingenic: Fix battery VREF for JZ4770 SoC + - iio: adc: stm32-adc: fix a regression when using dma and irq + - serial: ar933x_uart: disable clk on error handling path in probe + - arm64: dts: agilex/stratix10: Fix qspi node compatible + - spi: lpspi: Fix use-after-free on unbind + - spi: Introduce device-managed SPI controller allocation + - spi: npcm-fiu: Don't leak SPI master in probe error path + - spi: bcm2835aux: Fix use-after-free on unbind + - regulator: pfuze100: limit pfuze-support-disable-sw to pfuze{100,200} + - regulator: fix memory leak with repeated set_machine_constraints() + - regulator: avoid resolve_supply() infinite recursion + - regulator: workaround self-referent regulators + - gfs2: Fix regression in freeze_go_sync + - xtensa: fix TLBTEMP area placement + - xtensa: disable preemption around cache alias management calls + - mac80211: minstrel: remove deferred sampling code + - mac80211: minstrel: fix tx status processing corner case + - mac80211: free sta in sta_info_insert_finish() on errors + - s390: fix system call exit path + - s390/cpum_sf.c: fix file permission for cpum_sfb_size + - s390/dasd: fix null pointer dereference for ERP requests + - Drivers: hv: vmbus: Allow cleanup of VMBUS_CONNECT_CPU if disconnected + - drm/amd/display: Add missing pflip irq for dcn2.0 + - drm/i915: Handle max_bpc==16 + - mmc: sdhci-pci: Prefer SDR25 timing for High Speed mode for BYT-based Intel + controllers + - mmc: sdhci-of-arasan: Allow configuring zero tap values + - mmc: sdhci-of-arasan: Use Mask writes for Tap delays + - mmc: sdhci-of-arasan: Issue DLL reset explicitly + - ptrace: Set PF_SUPERPRIV when checking capability + - seccomp: Set PF_SUPERPRIV when checking capability + - x86/microcode/intel: Check patch signature before saving microcode for early + loading + - mm: fix readahead_page_batch for retry entries + - mm: memcg/slab: fix root memcg vmstats + - mm/userfaultfd: do not access vma->vm_mm after calling handle_userfault() + - io_uring: get an active ref_node from files_data + - io_uring: order refnode recycling + - spi: bcm-qspi: Fix use-after-free on unbind + - spi: bcm2835: Fix use-after-free on unbind + - ipv4: use IS_ENABLED instead of ifdef + - IB/hfi1: Ensure correct mm is used at all times + - RDMA/i40iw: Address an mmap handler exploit in i40iw + - btrfs: tree-checker: add missing return after error in root_item + - btrfs: tree-checker: add missing returns after data_ref alignment checks + - btrfs: don't access possibly stale fs_info data for printing duplicate + device + - btrfs: fix lockdep splat when reading qgroup config on mount + - mm: fix VM_BUG_ON(PageTail) and BUG_ON(PageWriteback) + - smb3: Call cifs reconnect from demultiplex thread + - smb3: Avoid Mid pending list corruption + - smb3: Handle error case during offload read path + - cifs: fix a memleak with modefromsid + - powerpc/64s: Fix KVM system reset handling when CONFIG_PPC_PSERIES=y + - powerpc/64s/exception: KVM Fix for host DSI being taken in HPT guest MMU + context + - KVM: PPC: Book3S HV: XIVE: Fix possible oops when accessing ESB page + - KVM: arm64: vgic-v3: Drop the reporting of GICR_TYPER.Last for userspace + - KVM: x86: handle !lapic_in_kernel case in kvm_cpu_*_extint + - KVM: x86: Fix split-irqchip vs interrupt injection window request + - iommu/vt-d: Don't read VCCAP register unless it exists + - firmware: xilinx: Use hash-table for api feature check + - trace: fix potenial dangerous pointer + - arm64: pgtable: Fix pte_accessible() + - arm64: pgtable: Ensure dirty bit is preserved across pte_wrprotect() + - drm/amd/amdgpu: fix null pointer in runtime pm + - drm/amd/display: Avoid HDCP initialization in devices without output + - HID: uclogic: Add ID for Trust Flex Design Tablet + - HID: ite: Replace ABS_MISC 120/121 events with touchpad on/off keypresses + - HID: cypress: Support Varmilo Keyboards' media hotkeys + - HID: add support for Sega Saturn + - Input: i8042 - allow insmod to succeed on devices without an i8042 + controller + - HID: hid-sensor-hub: Fix issue with devices with no report ID + - staging: ralink-gdma: fix kconfig dependency bug for DMA_RALINK + - HID: add HID_QUIRK_INCREMENT_USAGE_ON_DUPLICATE for Gamevice devices + - dmaengine: xilinx_dma: use readl_poll_timeout_atomic variant + - x86/xen: don't unbind uninitialized lock_kicker_irq + - kunit: fix display of failed expectations for strings + - HID: logitech-hidpp: Add HIDPP_CONSUMER_VENDOR_KEYS quirk for the Dinovo + Edge + - HID: Add Logitech Dinovo Edge battery quirk + - proc: don't allow async path resolution of /proc/self components + - nvme: free sq/cq dbbuf pointers when dbbuf set fails + - net: stmmac: dwmac_lib: enlarge dma reset timeout + - vdpasim: fix "mac_pton" undefined error + - vhost: add helper to check if a vq has been setup + - vhost scsi: alloc cmds per vq instead of session + - vhost scsi: fix cmd completion race + - cpuidle: tegra: Annotate tegra_pm_set_cpu_in_lp2() with RCU_NONIDLE + - dmaengine: pl330: _prep_dma_memcpy: Fix wrong burst size + - scsi: libiscsi: Fix NOP race condition + - scsi: target: iscsi: Fix cmd abort fabric stop race + - perf/x86: fix sysfs type mismatches + - xtensa: uaccess: Add missing __user to strncpy_from_user() prototype + - x86/dumpstack: Do not try to access user space code of other tasks + - net: dsa: mv88e6xxx: Wait for EEPROM done after HW reset + - bus: ti-sysc: Fix reset status check for modules with quirks + - bus: ti-sysc: Fix bogus resetdone warning on enable for cpsw + - ARM: OMAP2+: Manage MPU state properly for omap_enter_idle_coupled() + - phy: tegra: xusb: Fix dangling pointer on probe failure + - iwlwifi: mvm: use the HOT_SPOT_CMD to cancel an AUX ROC + - iwlwifi: mvm: properly cancel a session protection for P2P + - iwlwifi: mvm: write queue_sync_state only for sync + - KVM: s390: pv: Mark mm as protected after the set secure parameters and + improve cleanup + - batman-adv: set .owner to THIS_MODULE + - usb: cdns3: gadget: fix some endian issues + - usb: cdns3: gadget: calculate TD_SIZE based on TD + - phy: qualcomm: usb: Fix SuperSpeed PHY OF dependency + - phy: qualcomm: Fix 28 nm Hi-Speed USB PHY OF dependency + - arch: pgtable: define MAX_POSSIBLE_PHYSMEM_BITS where needed + - bus: ti-sysc: suppress err msg for timers used as clockevent/source + - ARM: dts: dra76x: m_can: fix order of clocks + - scsi: ufs: Fix race between shutdown and runtime resume flow + - bnxt_en: fix error return code in bnxt_init_one() + - bnxt_en: fix error return code in bnxt_init_board() + - video: hyperv_fb: Fix the cache type when mapping the VRAM + - bnxt_en: Release PCI regions when DMA mask setup fails during probe. + - block/keyslot-manager: prevent crash when num_slots=1 + - cxgb4: fix the panic caused by non smac rewrite + - dpaa2-eth: select XGMAC_MDIO for MDIO bus support + - s390/qeth: make af_iucv TX notification call more robust + - s390/qeth: fix af_iucv notification race + - s390/qeth: fix tear down of async TX buffers + - drm/mediatek: dsi: Modify horizontal front/back porch byte formula + - bonding: wait for sysfs kobject destruction before freeing struct slave + - ibmvnic: fix call_netdevice_notifiers in do_reset + - ibmvnic: notify peers when failover and migration happen + - powerpc/64s: Fix allnoconfig build since uaccess flush + - iommu: Check return of __iommu_attach_device() + - IB/mthca: fix return value of error branch in mthca_init_cq() + - i40e: Fix removing driver while bare-metal VFs pass traffic + - firmware: xilinx: Fix SD DLL node reset issue + - io_uring: fix shift-out-of-bounds when round up cq size + - nfc: s3fwrn5: use signed integer for parsing GPIO numbers + - net: ena: handle bad request id in ena_netdev + - net: ena: set initial DMA width to avoid intel iommu issue + - net: ena: fix packet's addresses for rx_offset feature + - ibmvnic: fix NULL pointer dereference in reset_sub_crq_queues + - ibmvnic: fix NULL pointer dereference in ibmvic_reset_crq + - ibmvnic: enhance resetting status check during module exit + - optee: add writeback to valid memory type + - x86/tboot: Don't disable swiotlb when iommu is forced on + - arm64: tegra: Wrong AON HSP reg property size + - efi/efivars: Set generic ops before loading SSDT + - efivarfs: revert "fix memory leak in efivarfs_create()" + - efi: EFI_EARLYCON should depend on EFI + - riscv: Explicitly specify the build id style in vDSO Makefile again + - RISC-V: Add missing jump label initialization + - RISC-V: fix barrier() use in + - net: stmmac: fix incorrect merge of patch upstream + - enetc: Let the hardware auto-advance the taprio base-time of 0 + - drm/nouveau: fix relocations applying logic and a double-free + - can: gs_usb: fix endianess problem with candleLight firmware + - platform/x86: thinkpad_acpi: Send tablet mode switch at wakeup time + - platform/x86: toshiba_acpi: Fix the wrong variable assignment + - RDMA/hns: Fix wrong field of SRQ number the device supports + - RDMA/hns: Fix retry_cnt and rnr_cnt when querying QP + - RDMA/hns: Bugfix for memory window mtpt configuration + - can: m_can: m_can_open(): remove IRQF_TRIGGER_FALLING from + request_threaded_irq()'s flags + - can: m_can: fix nominal bitiming tseg2 min for version >= 3.1 + - perf record: Synthesize cgroup events only if needed + - perf stat: Use proper cpu for shadow stats + - perf probe: Fix to die_entrypc() returns error correctly + - spi: bcm2835aux: Restore err assignment in bcm2835aux_spi_probe + - USB: core: Change %pK for __user pointers to %px + - usb: gadget: f_midi: Fix memleak in f_midi_alloc + - USB: core: Fix regression in Hercules audio card + - USB: quirks: Add USB_QUIRK_DISCONNECT_SUSPEND quirk for Lenovo A630Z TIO + built-in usb-audio card + - usb: gadget: Fix memleak in gadgetfs_fill_super + - irqchip/exiu: Fix the index of fwspec for IRQ type + - x86/mce: Do not overwrite no_way_out if mce_end() fails + - x86/speculation: Fix prctl() when spectre_v2_user={seccomp,prctl},ibpb + - x86/resctrl: Remove superfluous kernfs_get() calls to prevent refcount leak + - x86/resctrl: Add necessary kernfs_put() calls to prevent refcount leak + - devlink: Hold rtnl lock while reading netdev attributes + - devlink: Make sure devlink instance and port are in same net namespace + - ipv6: addrlabel: fix possible memory leak in ip6addrlbl_net_init + - net/af_iucv: set correct sk_protocol for child sockets + - net: openvswitch: fix TTL decrement action netlink message format + - net/tls: missing received data after fast remote close + - net/tls: Protect from calling tls_dev_del for TLS RX twice + - rose: Fix Null pointer dereference in rose_send_frame() + - sock: set sk_err to ee_errno on dequeue from errq + - tcp: Set INET_ECN_xmit configuration in tcp_reinit_congestion_control + - tun: honor IOCB_NOWAIT flag + - usbnet: ipheth: fix connectivity with iOS 14 + - vsock/virtio: discard packets only when socket is really closed + - net/packet: fix packet receive on L3 devices without visible hard header + - netfilter: bridge: reset skb->pkt_type after NF_INET_POST_ROUTING traversal + - ipv4: Fix tos mask in inet_rtm_getroute() + - dt-bindings: net: correct interrupt flags in examples + - chelsio/chtls: fix panic during unload reload chtls + - ibmvnic: Ensure that SCRQ entry reads are correctly ordered + - ibmvnic: Fix TX completion error handling + - tipc: fix incompatible mtu of transmission + - inet_ecn: Fix endianness of checksum update when setting ECT(1) + - net: ip6_gre: set dev->hard_header_len when using header_ops + - dpaa_eth: copy timestamp fields to new skb in A-050385 workaround + - net/x25: prevent a couple of overflows + - cxgb3: fix error return code in t3_sge_alloc_qset() + - net: pasemi: fix error return code in pasemi_mac_open() + - vxlan: fix error return code in __vxlan_dev_create() + - chelsio/chtls: fix a double free in chtls_setkey() + - net: mvpp2: Fix error return code in mvpp2_open() + - net: skbuff: ensure LSE is pullable before decrementing the MPLS ttl + - net: openvswitch: ensure LSE is pullable before reading it + - net/sched: act_mpls: ensure LSE is pullable before reading it + - net/mlx5: DR, Proper handling of unsupported Connect-X6DX SW steering + - net/mlx5: Fix wrong address reclaim when command interface is down + - net: mlx5e: fix fs_tcp.c build when IPV6 is not enabled + - ALSA: usb-audio: US16x08: fix value count for level meters + - Input: xpad - support Ardwiino Controllers + - tracing: Fix alignment of static buffer + - tracing: Remove WARN_ON in start_thread() + - uapi: fix statx attribute value overlap for DAX & MOUNT_ROOT + - drm/i915/gt: Fixup tgl mocs for PTE tracking + - usb: gadget: f_fs: Use local copy of descriptors for userspace copy + - USB: serial: kl5kusb105: fix memleak on open + - USB: serial: ch341: add new Product ID for CH341A + - USB: serial: ch341: sort device-id entries + - USB: serial: option: add Fibocom NL668 variants + - USB: serial: option: add support for Thales Cinterion EXS82 + - USB: serial: option: fix Quectel BG96 matching + - tty: Fix ->pgrp locking in tiocspgrp() + - tty: Fix ->session locking + - speakup: Reject setting the speakup line discipline outside of speakup + - ALSA: hda/realtek: Fix bass speaker DAC assignment on Asus Zephyrus G14 + - ALSA: hda/realtek: Add mute LED quirk to yet another HP x360 model + - ALSA: hda/realtek: Enable headset of ASUS UX482EG & B9400CEA with ALC294 + - ALSA: hda/realtek - Add new codec supported for ALC897 + - ALSA: hda/realtek - Fixed Dell AIO wrong sound tone + - ALSA: hda/generic: Add option to enforce preferred_dacs pairs + - ftrace: Fix updating FTRACE_FL_TRAMP + - ftrace: Fix DYNAMIC_FTRACE_WITH_DIRECT_CALLS dependency + - cifs: allow syscalls to be restarted in __smb_send_rqst() + - cifs: fix potential use-after-free in cifs_echo_request() + - cifs: refactor create_sd_buf() and and avoid corrupting the buffer + - gfs2: Upgrade shared glocks for atime updates + - gfs2: Fix deadlock between gfs2_{create_inode,inode_lookup} and + delete_work_func + - s390/pci: fix CPU address in MSI for directed IRQ + - i2c: imx: Fix reset of I2SR_IAL flag + - i2c: imx: Check for I2SR_IAL after every byte + - i2c: imx: Don't generate STOP condition if arbitration has been lost + - tracing: Fix userstacktrace option for instances + - thunderbolt: Fix use-after-free in remove_unplugged_switch() + - drm/omap: sdi: fix bridge enable/disable + - drm/i915/gt: Retain default context state across shrinking + - drm/i915/gt: Limit frequency drop to RPe on parking + - drm/i915/gt: Program mocs:63 for cache eviction on gen9 + - KVM: PPC: Book3S HV: XIVE: Fix vCPU id sanity check + - scsi: mpt3sas: Fix ioctl timeout + - io_uring: fix recvmsg setup with compat buf-select + - dm writecache: advance the number of arguments when reporting max_age + - dm writecache: fix the maximum number of arguments + - powerpc/64s/powernv: Fix memory corruption when saving SLB entries on MCE + - genirq/irqdomain: Add an irq_create_mapping_affinity() function + - powerpc/pseries: Pass MSI affinity to irq_create_mapping() + - dm: fix bug with RCU locking in dm_blk_report_zones + - dm: fix double RCU unlock in dm_dax_zero_page_range() error path + - dm: remove invalid sparse __acquires and __releases annotations + - x86/uprobes: Do not use prefixes.nbytes when looping over prefixes.bytes + - coredump: fix core_pattern parse error + - mm: list_lru: set shrinker map bit when child nr_items is not zero + - mm/swapfile: do not sleep with a spin lock held + - hugetlb_cgroup: fix offline of hugetlb cgroup with reservations + - Revert "amd/amdgpu: Disable VCN DPG mode for Picasso" + - iommu/amd: Set DTE[IntTabLen] to represent 512 IRTEs + - lib/syscall: fix syscall registers retrieval on 32-bit platforms + - can: af_can: can_rx_unregister(): remove WARN() statement from list + operation sanity check + - gfs2: check for empty rgrp tree in gfs2_ri_update + - netfilter: ipset: prevent uninit-value in hash_ip6_add + - tipc: fix a deadlock when flushing scheduled work + - ASoC: wm_adsp: fix error return code in wm_adsp_load() + - gfs2: Fix deadlock dumping resource group glocks + - gfs2: Don't freeze the file system during unmount + - rtw88: debug: Fix uninitialized memory in debugfs code + - i2c: qcom: Fix IRQ error misassignement + - i2c: qup: Fix error return code in qup_i2c_bam_schedule_desc() + - dm writecache: remove BUG() and fail gracefully instead + - Input: i8042 - fix error return code in i8042_setup_aux() + - netfilter: nf_tables: avoid false-postive lockdep splat + - netfilter: nftables_offload: set address type in control dissector + - netfilter: nftables_offload: build mask based from the matching bytes + - x86/insn-eval: Use new for_each_insn_prefix() macro to loop over prefixes + bytes + - bpf: Fix propagation of 32-bit signed bounds from 64-bit bounds. + + * dep-8 ubuntu-regression-suite tests are not run for all linux-hwe-* kernels + (LP: #1908529) + - [dep-8] Allow all hwe kernels + + * disable building bpf selftests (LP: #1908144) + - SAUCE: selftests/bpf: Clarify build error if no vmlinux + - SAUCE: selftests: Skip BPF seftests by default + - disable building bpf selftests (no VMLINUX_BTF) + + * selftests: test_vxlan_under_vrf: mute unnecessary error message + (LP: #1908342) + - selftests: test_vxlan_under_vrf: mute unnecessary error message + + * Groovy update: upstream stable patchset 2020-12-17 (LP: #1908555) + - drm/i915: Hold onto an explicit ref to i915_vma_work.pinned + - drm/i915/gem: Flush coherency domains on first set-domain-ioctl + - mm: memcg: link page counters to root if use_hierarchy is false + - nbd: don't update block size after device is started + - KVM: arm64: Force PTE mapping on fault resulting in a device mapping + - ASoC: Intel: kbl_rt5663_max98927: Fix kabylake_ssp_fixup function + - genirq: Let GENERIC_IRQ_IPI select IRQ_DOMAIN_HIERARCHY + - hv_balloon: disable warning when floor reached + - net: xfrm: fix a race condition during allocing spi + - ASoC: codecs: wsa881x: add missing stream rates and format + - irqchip/sifive-plic: Fix broken irq_set_affinity() callback + - kunit: Fix kunit.py --raw_output option + - kunit: Don't fail test suites if one of them is empty + - usb: gadget: fsl: fix null pointer checking + - selftests: filter kselftest headers from command in lib.mk + - ASoC: codecs: wcd934x: Set digital gain range correctly + - ASoC: codecs: wcd9335: Set digital gain range correctly + - mtd: spi-nor: Fix address width on flash chips > 16MB + - xfs: set xefi_discard when creating a deferred agfl free log intent item + - mac80211: don't require VHT elements for HE on 2.4 GHz + - netfilter: nftables: fix netlink report logic in flowtable and genid + - netfilter: use actual socket sk rather than skb sk when routing harder + - netfilter: nf_tables: missing validation from the abort path + - netfilter: ipset: Update byte and packet counters regardless of whether they + match + - irqchip/sifive-plic: Fix chip_data access within a hierarchy + - powerpc/eeh_cache: Fix a possible debugfs deadlock + - drm/vc4: bo: Add a managed action to cleanup the cache + - IB/srpt: Fix memory leak in srpt_add_one + - mm: memcontrol: correct the NR_ANON_THPS counter of hierarchical memcg + - drm/panfrost: rename error labels in device_init + - drm/panfrost: move devfreq_init()/fini() in device + - drm/panfrost: Fix module unload + - perf trace: Fix segfault when trying to trace events by cgroup + - perf tools: Add missing swap for ino_generation + - perf tools: Add missing swap for cgroup events + - ALSA: hda: prevent undefined shift in snd_hdac_ext_bus_get_link() + - iommu/vt-d: Fix a bug for PDP check in prq_event_thread + - afs: Fix warning due to unadvanced marshalling pointer + - afs: Fix incorrect freeing of the ACL passed to the YFS ACL store op + - vfio/pci: Implement ioeventfd thread handler for contended memory lock + - can: rx-offload: don't call kfree_skb() from IRQ context + - can: dev: can_get_echo_skb(): prevent call to kfree_skb() in hard IRQ + context + - can: dev: __can_get_echo_skb(): fix real payload length return value for RTR + frames + - can: can_create_echo_skb(): fix echo skb generation: always use skb_clone() + - can: j1939: swap addr and pgn in the send example + - can: j1939: j1939_sk_bind(): return failure if netdev is down + - can: ti_hecc: ti_hecc_probe(): add missed clk_disable_unprepare() in error + path + - can: xilinx_can: handle failure cases of pm_runtime_get_sync + - can: peak_usb: add range checking in decode operations + - can: peak_usb: peak_usb_get_ts_time(): fix timestamp wrapping + - can: peak_canfd: pucan_handle_can_rx(): fix echo management when loopback is + on + - can: flexcan: remove FLEXCAN_QUIRK_DISABLE_MECR quirk for LS1021A + - can: flexcan: flexcan_remove(): disable wakeup completely + - xfs: flush new eof page on truncate to avoid post-eof corruption + - xfs: fix missing CoW blocks writeback conversion retry + - xfs: fix scrub flagging rtinherit even if there is no rt device + - spi: fsl-dspi: fix wrong pointer in suspend/resume + - ceph: add check_session_state() helper and make it global + - ceph: check the sesion state and return false in case it is closed + - ceph: check session state after bumping session->s_seq + - x86/speculation: Allow IBPB to be conditionally enabled on CPUs with always- + on STIBP + - kbuild: explicitly specify the build id style + - RISC-V: Fix the VDSO symbol generaton for binutils-2.35+ + - USB: apple-mfi-fastcharge: fix reference leak in apple_mfi_fc_set_property + - tpm: efi: Don't create binary_bios_measurements file for an empty log + - KVM: arm64: ARM_SMCCC_ARCH_WORKAROUND_1 doesn't return + SMCCC_RET_NOT_REQUIRED + - ath9k_htc: Use appropriate rs_datalen type + - ASoC: qcom: sdm845: set driver name correctly + - ASoC: cs42l51: manage mclk shutdown delay + - ASoC: SOF: loader: handle all SOF_IPC_EXT types + - usb: dwc3: pci: add support for the Intel Alder Lake-S + - opp: Reduce the size of critical section in _opp_table_kref_release() + - usb: gadget: goku_udc: fix potential crashes in probe + - usb: raw-gadget: fix memory leak in gadget_setup + - selftests: pidfd: fix compilation errors due to wait.h + - x86/boot/compressed/64: Introduce sev_status + - gfs2: Free rd_bits later in gfs2_clear_rgrpd to fix use-after-free + - gfs2: Add missing truncate_inode_pages_final for sd_aspace + - gfs2: check for live vs. read-only file system in gfs2_fitrim + - scsi: hpsa: Fix memory leak in hpsa_init_one() + - drm/amdgpu: perform srbm soft reset always on SDMA resume + - drm/amd/pm: correct the baco reset sequence for CI ASICs + - drm/amd/pm: perform SMC reset on suspend/hibernation + - drm/amd/pm: do not use ixFEATURE_STATUS for checking smc running + - mac80211: fix use of skb payload instead of header + - cfg80211: initialize wdev data earlier + - cfg80211: regulatory: Fix inconsistent format argument + - wireguard: selftests: check that route_me_harder packets use the right sk + - tracing: Fix the checking of stackidx in __ftrace_trace_stack + - ARC: [plat-hsdk] Remap CCMs super early in asm boot trampoline + - scsi: scsi_dh_alua: Avoid crash during alua_bus_detach() + - scsi: mpt3sas: Fix timeouts observed while reenabling IRQ + - nvme: introduce nvme_sync_io_queues + - nvme-rdma: avoid race between time out and tear down + - nvme-tcp: avoid race between time out and tear down + - nvme-rdma: avoid repeated request completion + - nvme-tcp: avoid repeated request completion + - iommu/amd: Increase interrupt remapping table limit to 512 entries + - s390/smp: move rcu_cpu_starting() earlier + - vfio: platform: fix reference leak in vfio_platform_open + - vfio/pci: Bypass IGD init in case of -ENODEV + - i2c: mediatek: move dma reset before i2c reset + - iomap: clean up writeback state logic on writepage error + - selftests: proc: fix warning: _GNU_SOURCE redefined + - arm64: kexec_file: try more regions if loading segments fails + - riscv: Set text_offset correctly for M-Mode + - i2c: sh_mobile: implement atomic transfers + - i2c: designware: call i2c_dw_read_clear_intrbits_slave() once + - i2c: designware: slave should do WRITE_REQUESTED before WRITE_RECEIVED + - tpm_tis: Disable interrupts on ThinkPad T490s + - spi: bcm2835: remove use of uninitialized gpio flags variable + - mfd: sprd: Add wakeup capability for PMIC IRQ + - pinctrl: intel: Fix 2 kOhm bias which is 833 Ohm + - pinctrl: intel: Set default bias in case no particular value given + - gpio: aspeed: fix ast2600 bank properties + - ARM: 9019/1: kprobes: Avoid fortify_panic() when copying optprobe template + - bpf: Don't rely on GCC __attribute__((optimize)) to disable GCSE + - libbpf, hashmap: Fix undefined behavior in hash_bits + - pinctrl: mcp23s08: Use full chunk of memory for regmap configuration + - pinctrl: aspeed: Fix GPI only function problem. + - net/mlx5e: Fix modify header actions memory leak + - net/mlx5e: Protect encap route dev from concurrent release + - net/mlx5e: Use spin_lock_bh for async_icosq_lock + - net/mlx5: Fix deletion of duplicate rules + - net/mlx5e: Fix incorrect access of RCU-protected xdp_prog + - SUNRPC: Fix general protection fault in trace_rpc_xdr_overflow() + - NFSD: Fix use-after-free warning when doing inter-server copy + - NFSD: fix missing refcount in nfsd4_copy by nfsd4_do_async_copy + - tools/bpftool: Fix attaching flow dissector + - bpf: Zero-fill re-used per-cpu map element + - r8169: fix potential skb double free in an error path + - r8169: disable hw csum for short packets on all chip versions + - pinctrl: qcom: Move clearing pending IRQ to .irq_request_resources callback + - pinctrl: qcom: sm8250: Specify PDC map + - nbd: fix a block_device refcount leak in nbd_release + - selftest: fix flower terse dump tests + - i40e: Fix MAC address setting for a VF via Host/VM + - igc: Fix returning wrong statistics + - lan743x: correctly handle chips with internal PHY + - net: phy: realtek: support paged operations on RTL8201CP + - xfs: fix flags argument to rmap lookup when converting shared file rmaps + - xfs: set the unwritten bit in rmap lookup flags in xchk_bmap_get_rmapextents + - xfs: fix rmap key and record comparison functions + - xfs: fix brainos in the refcount scrubber's rmap fragment processor + - lan743x: fix "BUG: invalid wait context" when setting rx mode + - xfs: fix a missing unlock on error in xfs_fs_map_blocks + - of/address: Fix of_node memory leak in of_dma_is_coherent + - ch_ktls: Update cheksum information + - ch_ktls: tcb update fails sometimes + - cosa: Add missing kfree in error path of cosa_write + - hwmon: (applesmc) Re-work SMC comms + - vrf: Fix fast path output packet handling with async Netfilter rules + - lan743x: fix use of uninitialized variable + - arm64/mm: Validate hotplug range before creating linear mapping + - kernel/watchdog: fix watchdog_allowed_mask not used warning + - mm: memcontrol: fix missing wakeup polling thread + - afs: Fix afs_write_end() when called with copied == 0 [ver #3] + - perf: Fix get_recursion_context() + - nvme: factor out a nvme_configure_metadata helper + - nvme: freeze the queue over ->lba_shift updates + - nvme: fix incorrect behavior when BLKROSET is called by the user + - perf: Simplify group_sched_in() + - perf: Fix event multiplexing for exclusive groups + - firmware: xilinx: fix out-of-bounds access + - erofs: fix setting up pcluster for temporary pages + - erofs: derive atime instead of leaving it empty + - ext4: correctly report "not supported" for {usr,grp}jquota when + !CONFIG_QUOTA + - ext4: unlock xattr_sem properly in ext4_inline_data_truncate() + - btrfs: fix potential overflow in cluster_pages_for_defrag on 32bit arch + - btrfs: ref-verify: fix memory leak in btrfs_ref_tree_mod + - btrfs: fix min reserved size calculation in merge_reloc_root + - btrfs: dev-replace: fail mount if we don't have replace item with target + device + - KVM: arm64: Don't hide ID registers from userspace + - speakup: Fix var_id_t values and thus keymap + - speakup ttyio: Do not schedule() in ttyio_in_nowait + - speakup: Fix clearing selection in safe context + - thunderbolt: Fix memory leak if ida_simple_get() fails in + enumerate_services() + - thunderbolt: Add the missed ida_simple_remove() in ring_request_msix() + - block: add a return value to set_capacity_revalidate_and_notify + - loop: Fix occasional uevent drop + - uio: Fix use-after-free in uio_unregister_device() + - usb: cdc-acm: Add DISABLE_ECHO for Renesas USB Download mode + - usb: typec: ucsi: Report power supply changes + - xhci: hisilicon: fix refercence leak in xhci_histb_probe + - virtio: virtio_console: fix DMA memory allocation for rproc serial + - mei: protect mei_cl_mtu from null dereference + - futex: Don't enable IRQs unconditionally in put_pi_state() + - jbd2: fix up sparse warnings in checkpoint code + - bootconfig: Extend the magic check range to the preceding 3 bytes + - mm/compaction: count pages and stop correctly during page isolation + - mm/compaction: stop isolation if too many pages are isolated and we have + pages to migrate + - mm/slub: fix panic in slab_alloc_node() + - mm/vmscan: fix NR_ISOLATED_FILE corruption on 64-bit + - mm/gup: use unpin_user_pages() in __gup_longterm_locked() + - Revert "kernel/reboot.c: convert simple_strtoul to kstrtoint" + - reboot: fix overflow parsing reboot cpu number + - hugetlbfs: fix anon huge page migration race + - ocfs2: initialize ip_next_orphan + - selinux: Fix error return code in sel_ib_pkey_sid_slow() + - io_uring: round-up cq size before comparing with rounded sq size + - gpio: sifive: Fix SiFive gpio probe + - gpio: pcie-idio-24: Fix irq mask when masking + - gpio: pcie-idio-24: Fix IRQ Enable Register value + - gpio: pcie-idio-24: Enable PEX8311 interrupts + - mmc: sdhci-of-esdhc: Handle pulse width detection erratum for more SoCs + - mmc: renesas_sdhi_core: Add missing tmio_mmc_host_free() at remove + - don't dump the threads that had been already exiting when zapped. + - drm/i915: Correctly set SFC capability for video engines + - drm/gma500: Fix out-of-bounds access to struct drm_device.vblank[] + - pinctrl: amd: use higher precision for 512 RtcClk + - pinctrl: amd: fix incorrect way to disable debounce filter + - swiotlb: fix "x86: Don't panic if can not alloc buffer for swiotlb" + - cpufreq: Introduce governor flags + - cpufreq: Introduce CPUFREQ_GOV_STRICT_TARGET + - cpufreq: Add strict_target to struct cpufreq_policy + - ethtool: netlink: add missing netdev_features_change() call + - IPv6: Set SIT tunnel hard_header_len to zero + - net/af_iucv: fix null pointer dereference on shutdown + - net: udp: fix IP header access and skb lookup on Fast/frag0 UDP GRO + - net: udp: fix UDP header access on Fast/frag0 UDP GRO + - net: Update window_clamp if SOCK_RCVBUF is set + - net/x25: Fix null-ptr-deref in x25_connect + - tipc: fix memory leak in tipc_topsrv_start() + - powerpc/603: Always fault when _PAGE_ACCESSED is not set + - null_blk: Fix scheduling in atomic with zoned mode + - perf scripting python: Avoid declaring function pointers with a visibility + attribute + - coresight: etm: perf: Sink selection using sysfs is deprecated + - coresight: Fix uninitialised pointer bug in etm_setup_aux() + - Convert trailing spaces and periods in path components + - random32: make prandom_u32() output unpredictable + - amd/amdgpu: Disable VCN DPG mode for Picasso + + * [SRU][F/G/H/U/OEM-5.6] Fix i2c report error on elan trackpoint + (LP: #1908335) + - Input: elan_i2c - add support for high resolution reports + - Input: elan_i2c - add new trackpoint report type 0x5F + - Input: elantech - fix protocol errors for some trackpoints in SMBus mode + + * [SRU][OEM-5.6] UBUNTU: SAUCE: Fix brightness control on BOE 2270 panel + (LP: #1904991) + - drm/i915: Force DPCD backlight mode for BOE 2270 panel + + * rtwpci driver blocks the system to enter PC10, stuck at PC3 (LP: #1907200) + - SAUCE: rtw88: 8723de: let cpu enter c10 + + * Touchpad not detected on ByteSpeed C15B laptop (LP: #1906128) + - Input: i8042 - add ByteSpeed touchpad to noloop table + + * Fix reading speed and duplex sysfs on igc device (LP: #1906851) + - SAUCE: igc: Report speed and duplex as unknown when device is runtime + suspended + + * Groovy update: upstream stable patchset 2020-12-15 (LP: #1908323) + - tipc: fix use-after-free in tipc_bcast_get_mode + - drm/i915/gem: Avoid implicit vmap for highmem on x86-32 + - drm/i915/gem: Prevent using pgprot_writecombine() if PAT is not supported + - drm/i915/gem: Always test execution status on closing the context + - drm/i915/gt: Always send a pulse down the engine after disabling heartbeat + - drm/i915: Break up error capture compression loops with cond_resched() + - drm/i915: Cancel outstanding work after disabling heartbeats on an engine + - drm/i915: Avoid mixing integer types during batch copies + - drm/i915/gt: Initialize reserved and unspecified MOCS indices + - drm/i915/gt: Undo forced context restores after trivial preemptions + - drm/i915: Drop runtime-pm assert from vgpu io accessors + - drm/i915: Exclude low pages (128KiB) of stolen from use + - drm/i915: Use the active reference on the vma while capturing + - drm/i915: Reject 90/270 degree rotated initial fbs + - drm/i915: Restore ILK-M RPS support + - drm/nouveau/device: fix changing endianess code to work on older GPUs + - ptrace: fix task_join_group_stop() for the case when current is traced + - cadence: force nonlinear buffers to be cloned + - chelsio/chtls: fix memory leaks caused by a race + - chelsio/chtls: fix always leaking ctrl_skb + - dpaa_eth: update the buffer layout for non-A050385 erratum scenarios + - dpaa_eth: fix the RX headroom size alignment + - gianfar: Replace skb_realloc_headroom with skb_cow_head for PTP + - gianfar: Account for Tx PTP timestamp in the skb headroom + - ionic: check port ptr before use + - ip_tunnel: fix over-mtu packet send fail without TUNNEL_DONT_FRAGMENT flags + - net: ethernet: ti: cpsw: disable PTPv1 hw timestamping advertisement + - net: usb: qmi_wwan: add Telit LE910Cx 0x1230 composition + - powerpc/vnic: Extend "failover pending" window + - sctp: Fix COMM_LOST/CANT_STR_ASSOC err reporting on big-endian platforms + - sfp: Fix error handing in sfp_probe() + - ip6_tunnel: set inner ipproto before ip6_tnl_encap + - net: fec: fix MDIO probing for some FEC hardware blocks + - r8169: work around short packet hw bug on RTL8125 + - drm/nouveau/kms/nv50-: Get rid of bogus nouveau_conn_mode_valid() + - drm/nouveau/kms/nv50-: Fix clock checking algorithm in nv50_dp_mode_valid() + - Fonts: Replace discarded const qualifier + - ALSA: hda/realtek - Fixed HP headset Mic can't be detected + - ALSA: hda/realtek - Enable headphone for ASUS TM420 + - ALSA: usb-audio: Add implicit feedback quirk for Zoom UAC-2 + - ALSA: usb-audio: add usb vendor id as DSD-capable for Khadas devices + - ALSA: usb-audio: Add implicit feedback quirk for Qu-16 + - ALSA: usb-audio: Add implicit feedback quirk for MODX + - hugetlb_cgroup: fix reservation accounting + - mm: mempolicy: fix potential pte_unmap_unlock pte error + - lib/crc32test: remove extra local_irq_disable/enable + - kthread_worker: prevent queuing delayed work from timer_fn when it is being + canceled + - mm: always have io_remap_pfn_range() set pgprot_decrypted() + - perf hists browser: Increase size of 'buf' in perf_evsel__hists_browse() + - gfs2: Wake up when sd_glock_disposal becomes zero + - gfs2: Don't call cancel_delayed_work_sync from within delete work function + - ring-buffer: Fix recursion protection transitions between interrupt context + - iommu/vt-d: Fix kernel NULL pointer dereference in find_domain() + - mtd: spi-nor: Don't copy self-pointing struct around + - ftrace: Fix recursion check for NMI test + - ftrace: Handle tracing when switching between context + - regulator: defer probe when trying to get voltage from unresolved supply + - spi: bcm2835: fix gpio cs level inversion + - tracing: Fix out of bounds write in get_trace_buf + - futex: Handle transient "ownerless" rtmutex state correctly + - x86/lib: Change .weak to SYM_FUNC_START_WEAK for arch/x86/lib/mem*_64.S + - ARM: dts: sun4i-a10: fix cpu_alert temperature + - arm64: dts: meson: add missing g12 rng clock + - arm64: dts: amlogic: meson-g12: use the G12A specific dwmac compatible + - x86/kexec: Use up-to-dated screen_info copy to fill boot params + - hyperv_fb: Update screen_info after removing old framebuffer + - arm64: dts: amlogic: add missing ethernet reset ID + - io_uring: don't miss setting IO_WQ_WORK_CONCURRENT + - of: Fix reserved-memory overlap detection + - ARM: dts: mmp3: Add power domain for the camera + - drm/sun4i: frontend: Rework a bit the phase data + - drm/sun4i: frontend: Reuse the ch0 phase for RGB formats + - drm/sun4i: frontend: Fix the scaler phase on A33 + - drm/v3d: Fix double free in v3d_submit_cl_ioctl() + - blk-cgroup: Fix memleak on error path + - blk-cgroup: Pre-allocate tree node on blkg_conf_prep + - btrfs: drop the path before adding qgroup items when enabling qgroups + - btrfs: add a helper to read the tree_root commit root for backref lookup + - scsi: core: Don't start concurrent async scan on same host + - drm/amdgpu: disable DCN and VCN for navi10 blockchain SKU(v3) + - drm/amdgpu: add DID for navi10 blockchain SKU + - scsi: ibmvscsi: Fix potential race after loss of transport + - vsock: use ns_capable_noaudit() on socket create + - nvme-rdma: handle unexpected nvme completion data length + - nvmet: fix a NULL pointer dereference when tracing the flush command + - drm/vc4: drv: Add error handding for bind + - ACPI: NFIT: Fix comparison to '-ENXIO' + - usb: cdns3: gadget: suspicious implicit sign extension + - drm/nouveau/nouveau: fix the start/end range for migration + - drm/nouveau/gem: fix "refcount_t: underflow; use-after-free" + - arm64/smp: Move rcu_cpu_starting() earlier + - tty: fix crash in release_tty if tty->port is not set + - fork: fix copy_process(CLONE_PARENT) race with the exiting ->real_parent + - s390/mm: make pmd/pud_deref() large page aware + - s390/pkey: fix paes selftest failure with paes and pkey static build + - powerpc/8xx: Always fault when _PAGE_ACCESSED is not set + - powerpc/40x: Always fault when _PAGE_ACCESSED is not set + - serial: 8250_mtk: Fix uart_get_baud_rate warning + - serial: txx9: add missing platform_driver_unregister() on error in + serial_txx9_init + - USB: serial: cyberjack: fix write-URB completion race + - USB: serial: option: add Quectel EC200T module support + - USB: serial: option: add LE910Cx compositions 0x1203, 0x1230, 0x1231 + - USB: serial: option: add Telit FN980 composition 0x1055 + - usb: dwc3: ep0: Fix delay status handling + - USB: Add NO_LPM quirk for Kingston flash drive + - usb: mtu3: fix panic in mtu3_gadget_stop() + - io_uring: fix link lookup racing with link timeout + - drm/panfrost: Fix a deadlock between the shrinker and madvise path + - ARC: stack unwinding: avoid indefinite looping + - PM: runtime: Drop runtime PM references to supplier on link removal + - PM: runtime: Drop pm_runtime_clean_up_links() + - PM: runtime: Resume the device earlier in __device_release_driver() + - drm/i915/gt: Use the local HWSP offset during submission + - perf/core: Fix a memory leak in perf_event_parse_addr_filter() + - Revert "coresight: Make sysfs functional on topologies with per core sink" + + * Groovy update: upstream stable patchset 2020-12-14 (LP: #1908150) + - xen/events: avoid removing an event channel while handling it + - xen/events: add a proper barrier to 2-level uevent unmasking + - xen/events: fix race in evtchn_fifo_unmask() + - xen/events: add a new "late EOI" evtchn framework + - xen/blkback: use lateeoi irq binding + - xen/netback: use lateeoi irq binding + - xen/scsiback: use lateeoi irq binding + - xen/pvcallsback: use lateeoi irq binding + - xen/pciback: use lateeoi irq binding + - xen/events: switch user event channels to lateeoi model + - xen/events: use a common cpu hotplug hook for event channels + - xen/events: defer eoi in case of excessive number of events + - xen/events: block rogue events for some time + - firmware: arm_scmi: Fix ARCH_COLD_RESET + - firmware: arm_scmi: Expand SMC/HVC message pool to more than one + - tee: client UUID: Skip REE kernel login method as well + - firmware: arm_scmi: Add missing Rx size re-initialisation + - x86/unwind/orc: Fix inactive tasks with stack pointer in %sp on GCC 10 + compiled kernels + - x86/alternative: Don't call text_poke() in lazy TLB mode + - ionic: no rx flush in deinit + - RDMA/mlx5: Fix devlink deadlock on net namespace deletion + - mlxsw: core: Fix use-after-free in mlxsw_emad_trans_finish() + - tracing, synthetic events: Replace buggy strcat() with seq_buf operations + - afs: Fix a use after free in afs_xattr_get_acl() + - afs: Fix afs_launder_page to not clear PG_writeback + - RDMA/qedr: Fix memory leak in iWARP CM + - ata: sata_nv: Fix retrieving of active qcs + - arm64: efi: increase EFI PE/COFF header padding to 64 KB + - afs: Fix to take ref on page when PG_private is set + - afs: Fix page leak on afs_write_begin() failure + - afs: Fix where page->private is set during write + - afs: Wrap page->private manipulations in inline functions + - afs: Alter dirty range encoding in page->private + - mm: add thp_order + - mm: add thp_size + - afs: Fix afs_invalidatepage to adjust the dirty region + - afs: Fix dirty-region encoding on ppc32 with 64K pages + - interconnect: qcom: sdm845: Enable keepalive for the MM1 BCM + - usb: host: ehci-tegra: Fix error handling in tegra_ehci_probe() + - futex: Fix incorrect should_fail_futex() handling + - powerpc/vmemmap: Fix memory leak with vmemmap list allocation failures. + - powerpc/powernv/smp: Fix spurious DBG() warning + - RDMA/core: Change how failing destroy is handled during uobj abort + - f2fs: allocate proper size memory for zstd decompress + - powerpc/watchpoint/ptrace: Fix SETHWDEBUG when CONFIG_HAVE_HW_BREAKPOINT=N + - [Config] update config for ARCH_WANT_IRQS_OFF_ACTIVATE_MM + - mm: fix exec activate_mm vs TLB shootdown and lazy tlb switching race + - powerpc: select ARCH_WANT_IRQS_OFF_ACTIVATE_MM + - sparc64: remove mm_cpumask clearing to fix kthread_use_mm race + - f2fs: add trace exit in exception path + - f2fs: do sanity check on zoned block device path + - f2fs: fix uninit-value in f2fs_lookup + - f2fs: fix to check segment boundary during SIT page readahead + - s390/startup: avoid save_area_sync overflow + - f2fs: compress: fix to disallow enabling compress on non-empty file + - um: change sigio_spinlock to a mutex + - f2fs: handle errors of f2fs_get_meta_page_nofail + - afs: Don't assert on unpurgeable server records + - powerpc/64s: handle ISA v3.1 local copy-paste context switches + - ARM: 8997/2: hw_breakpoint: Handle inexact watchpoint addresses + - NFS4: Fix oops when copy_file_range is attempted with NFS4.0 source + - xfs: Set xfs_buf type flag when growing summary/bitmap files + - xfs: Set xfs_buf's b_ops member when zeroing bitmap/summary files + - xfs: log new intent items created as part of finishing recovered intent + items + - power: supply: bq27xxx: report "not charging" on all types + - xfs: change the order in which child and parent defer ops are finished + - xfs: fix realtime bitmap/summary file truncation when growing rt volume + - ath10k: fix retry packets update in station dump + - x86/kaslr: Initialize mem_limit to the real maximum address + - drm/ast: Separate DRM driver from PCI code + - drm/amdgpu: restore ras flags when user resets eeprom(v2) + - video: fbdev: pvr2fb: initialize variables + - ath10k: start recovery process when payload length exceeds max htc length + for sdio + - ath10k: fix VHT NSS calculation when STBC is enabled + - drm/scheduler: Scheduler priority fixes (v2) + - drm/brige/megachips: Add checking if ge_b850v3_lvds_init() is working + correctly + - ASOC: SOF: Intel: hda-codec: move unused label to correct position + - ASoC: SOF: fix a runtime pm issue in SOF when HDMI codec doesn't work + - selftests/x86/fsgsbase: Reap a forgotten child + - drm/bridge_connector: Set default status connected for eDP connectors + - media: videodev2.h: RGB BT2020 and HSV are always full range + - ASoC: AMD: Clean kernel log from deferred probe error messages + - misc: fastrpc: fix common struct sg_table related issues + - staging: wfx: fix potential use before init + - media: platform: Improve queue set up flow for bug fixing + - usb: typec: tcpm: During PR_SWAP, source caps should be sent only after + tSwapSourceStart + - media: tw5864: check status of tw5864_frameinterval_get + - drm/vkms: avoid warning in vkms_get_vblank_timestamp + - media: imx274: fix frame interval handling + - mmc: via-sdmmc: Fix data race bug + - drm/bridge/synopsys: dsi: add support for non-continuous HS clock + - brcmfmac: increase F2 watermark for BCM4329 + - arm64: topology: Stop using MPIDR for topology information + - printk: reduce LOG_BUF_SHIFT range for H8300 + - ia64: kprobes: Use generic kretprobe trampoline handler + - kgdb: Make "kgdbcon" work properly with "kgdb_earlycon" + - bpf: Permit map_ptr arithmetic with opcode add and offset 0 + - drm: exynos: fix common struct sg_table related issues + - xen: gntdev: fix common struct sg_table related issues + - drm: lima: fix common struct sg_table related issues + - drm: panfrost: fix common struct sg_table related issues + - media: uvcvideo: Fix dereference of out-of-bound list iterator + - nfc: s3fwrn5: Add missing CRYPTO_HASH dependency + - selftests/bpf: Define string const as global for test_sysctl_prog.c + - selinux: access policycaps with READ_ONCE/WRITE_ONCE + - samples/bpf: Fix possible deadlock in xdpsock + - drm/amd/display: Check clock table return + - riscv: Define AT_VECTOR_SIZE_ARCH for ARCH_DLINFO + - cpufreq: sti-cpufreq: add stih418 support + - USB: adutux: fix debugging + - uio: free uio id after uio file node is freed + - coresight: Make sysfs functional on topologies with per core sink + - drm/amdgpu: No sysfs, not an error condition + - mac80211: add missing queue/hash initialization to 802.3 xmit + - usb: xhci: omit duplicate actions when suspending a runtime suspended host. + - SUNRPC: Mitigate cond_resched() in xprt_transmit() + - cpuidle: tegra: Correctly handle result of arm_cpuidle_simple_enter() + - arm64/mm: return cpu_all_mask when node is NUMA_NO_NODE + - can: flexcan: disable clocks during stop mode + - habanalabs: remove security from ARB_MST_QUIET register + - xfs: don't free rt blocks when we're doing a REMAP bunmapi call + - xfs: avoid LR buffer overrun due to crafted h_len + - ACPI: Add out of bounds and numa_off protections to pxm_to_node() + - octeontx2-af: fix LD CUSTOM LTYPE aliasing + - brcmfmac: Fix warning message after dongle setup failed + - ath11k: Use GFP_ATOMIC instead of GFP_KERNEL in ath11k_dp_htt_get_ppdu_desc + - ath11k: fix warning caused by lockdep_assert_held + - ath11k: change to disable softirqs for ath11k_regd_update to solve deadlock + - drivers/net/wan/hdlc_fr: Correctly handle special skb->protocol values + - usb: dwc3: core: do not queue work if dr_mode is not USB_DR_MODE_OTG + - bus: mhi: core: Abort suspends due to outgoing pending packets + - bus/fsl_mc: Do not rely on caller to provide non NULL mc_io + - ACPI: HMAT: Fix handling of changes from ACPI 6.2 to ACPI 6.3 + - power: supply: test_power: add missing newlines when printing parameters by + sysfs + - drm/amd/display: HDMI remote sink need mode validation for Linux + - drm/amd/display: Avoid set zero in the requested clk + - ARC: [dts] fix the errors detected by dtbs_check + - block: Consider only dispatched requests for inflight statistic + - btrfs: fix replace of seed device + - md/bitmap: md_bitmap_get_counter returns wrong blocks + - f2fs: fix to set SBI_NEED_FSCK flag for inconsistent inode + - bnxt_en: Log unknown link speed appropriately. + - rpmsg: glink: Use complete_all for open states + - PCI/ACPI: Add Ampere Altra SOC MCFG quirk + - clk: ti: clockdomain: fix static checker warning + - nfsd: rename delegation related tracepoints to make them less confusing + - net: 9p: initialize sun_server.sun_path to have addr's value only when addr + is valid + - ceph: encode inodes' parent/d_name in cap reconnect message + - drivers: watchdog: rdc321x_wdt: Fix race condition bugs + - jbd2: avoid transaction reuse after reformatting + - ext4: Detect already used quota file early + - KVM: PPC: Book3S HV: Do not allocate HPT for a nested guest + - scsi: core: Clean up allocation and freeing of sgtables + - gfs2: call truncate_inode_pages_final for address space glocks + - gfs2: Fix NULL pointer dereference in gfs2_rgrp_dump + - gfs2: use-after-free in sysfs deregistration + - gfs2: add validation checks for size of superblock + - Handle STATUS_IO_TIMEOUT gracefully + - cifs: handle -EINTR in cifs_setattr + - arm64: dts: renesas: ulcb: add full-pwr-cycle-in-suspend into eMMC nodes + - ARM: dts: omap4: Fix sgx clock rate for 4430 + - memory: emif: Remove bogus debugfs error handling + - ARM: dts: s5pv210: Enable audio on Aries boards + - ARM: dts: s5pv210: remove DMA controller bus node name to fix dtschema + warnings + - ARM: dts: s5pv210: move fixed clocks under root node + - ARM: dts: s5pv210: move PMU node out of clock controller + - ARM: dts: s5pv210: remove dedicated 'audio-subsystem' node + - ARM: dts: s5pv210: add RTC 32 KHz clock in Aries family + - ARM: dts: s5pv210: align SPI GPIO node name with dtschema in Aries + - soc: qcom: rpmh-rsc: Sleep waiting for tcs slots to be free + - firmware: arm_scmi: Move scmi bus init and exit calls into the driver + - nbd: make the config put is called before the notifying the waiter + - sgl_alloc_order: fix memory leak + - nvme-rdma: fix crash when connect rejected + - vmlinux.lds.h: Add PGO and AutoFDO input sections + - irqchip/loongson-htvec: Fix initial interrupt clearing + - md: fix the checking of wrong work queue + - md/raid5: fix oops during stripe resizing + - mmc: sdhci: Add LTR support for some Intel BYT based controllers + - mmc: sdhci-acpi: AMDI0040: Set SDHCI_QUIRK2_PRESET_VALUE_BROKEN + - seccomp: Make duplicate listener detection non-racy + - selftests/x86/fsgsbase: Test PTRACE_PEEKUSER for GSBASE with invalid LDT GS + - perf/x86/intel: Fix Ice Lake event constraint table + - perf/x86/amd: Fix sampling Large Increment per Cycle events + - perf/amd/uncore: Set all slices and threads to restore perf stat -a + behaviour + - perf/x86/amd/ibs: Don't include randomized bits in get_ibs_op_count() + - perf/x86/amd/ibs: Fix raw sample data accumulation + - spi: spi-mtk-nor: fix timeout calculation overflow + - spi: sprd: Release DMA channel also on probe deferral + - extcon: ptn5150: Fix usage of atomic GPIO with sleeping GPIO chips + - leds: bcm6328, bcm6358: use devres LED registering function + - hwmon: (pmbus/max34440) Fix OC fault limits + - media: uvcvideo: Fix uvc_ctrl_fixup_xu_info() not having any effect + - fs: Don't invalidate page buffers in block_write_full_page() + - ACPI: configfs: Add missing config_item_put() to fix refcount leak + - NFS: fix nfs_path in case of a rename retry + - ACPI: button: fix handling lid state changes when input device closed + - ACPI / extlog: Check for RDMSR failure + - ACPI: debug: don't allow debugging when ACPI is disabled + - PCI/ACPI: Whitelist hotplug ports for D3 if power managed by ACPI + - ACPI: EC: PM: Flush EC work unconditionally after wakeup + - ACPI: EC: PM: Drop ec_no_wakeup check from acpi_ec_dispatch_gpe() + - acpi-cpufreq: Honor _PSD table setting on new AMD CPUs + - io-wq: assign NUMA node locality if appropriate + - w1: mxc_w1: Fix timeout resolution problem leading to bus error + - fs/kernel_read_file: Remove FIRMWARE_PREALLOC_BUFFER enum + - scsi: mptfusion: Fix null pointer dereferences in mptscsih_remove() + - scsi: qla2xxx: Fix MPI reset needed message + - scsi: qla2xxx: Fix reset of MPI firmware + - scsi: qla2xxx: Fix crash on session cleanup with unload + - PM: runtime: Remove link state checks in rpm_get/put_supplier() + - btrfs: qgroup: fix wrong qgroup metadata reserve for delayed inode + - btrfs: improve device scanning messages + - btrfs: qgroup: fix qgroup meta rsv leak for subvolume operations + - btrfs: sysfs: init devices outside of the chunk_mutex + - btrfs: tracepoints: output proper root owner for trace_find_free_extent() + - btrfs: reschedule if necessary when logging directory items + - btrfs: send, orphanize first all conflicting inodes when processing + references + - btrfs: send, recompute reference path after orphanization of a directory + - btrfs: use kvzalloc() to allocate clone_roots in btrfs_ioctl_send() + - btrfs: tree-checker: fix false alert caused by legacy btrfs root item + - btrfs: reschedule when cloning lots of extents + - btrfs: cleanup cow block on error + - btrfs: skip devices without magic signature when mounting + - btrfs: tree-checker: validate number of chunk stripes and parity + - btrfs: fix use-after-free on readahead extent after failure to create it + - btrfs: fix readahead hang and use-after-free after removing a device + - btrfs: drop the path before adding block group sysfs files + - usb: dwc3: pci: Allow Elkhart Lake to utilize DSM method for PM + functionality + - usb: dwc3: ep0: Fix ZLP for OUT ep0 requests + - usb: dwc3: gadget: Check MPS of the request length + - usb: dwc3: gadget: Reclaim extra TRBs after request completion + - usb: dwc3: core: add phy cleanup for probe error handling + - usb: dwc3: core: don't trigger runtime pm when remove driver + - usb: dwc3: gadget: Resume pending requests after CLEAR_STALL + - usb: dwc3: gadget: END_TRANSFER before CLEAR_STALL command + - usb: cdns3: gadget: improve the set_configuration handling + - usb: cdns3: Fix on-chip memory overflow issue + - usb: cdc-acm: fix cooldown mechanism + - usb: typec: tcpm: reset hard_reset_count for any disconnect + - usb: host: fsl-mph-dr-of: check return of dma_set_mask() + - usbcore: Check both id_table and match() when both available + - USB: apple-mfi-fastcharge: don't probe unhandled devices + - drm/i915: Force VT'd workarounds when running as a guest OS + - vt: keyboard, simplify vt_kdgkbsent + - vt: keyboard, extend func_buf_lock to readers + - HID: wacom: Avoid entering wacom_wac_pen_report for pad / battery + - x86/mce: Allow for copy_mc_fragile symbol checksum to be generated + - tty: serial: 21285: fix lockup on open + - tty: serial: fsl_lpuart: LS1021A has a FIFO size of 16 words, like LS1028A + - Revert "vhost-vdpa: fix page pinning leakage in error path" + - powerpc: Fix random segfault when freeing hugetlb range + - udf: Fix memory leak when mounting + - dmaengine: dma-jz4780: Fix race in jz4780_dma_tx_status + - vdpa_sim: Fix DMA mask + - iio: ltc2983: Fix of_node refcounting + - iio: adc: at91-sama5d2_adc: fix DMA conversion crash + - iio:imu:inv_mpu6050 Fix dma and ts alignment and data leak issues. + - iio:imu:st_lsm6dsx: check st_lsm6dsx_shub_read_output return + - iio:light:si1145: Fix timestamp alignment and prevent data leak. + - iio: adc: gyroadc: fix leak of device node iterator + - iio: ad7292: Fix of_node refcounting + - iio:adc:ti-adc0832 Fix alignment issue with timestamp + - iio:adc:ti-adc12138 Fix alignment issue with timestamp + - iio:imu:st_lsm6dsx Fix alignment and data leak issues + - iio:gyro:itg3200: Fix timestamp alignment and prevent data leak. + - powerpc/drmem: Make lmb_size 64 bit + - rcu-tasks: Fix grace-period/unlock race in RCU Tasks Trace + - rcu-tasks: Fix low-probability task_struct leak + - rcu-tasks: Enclose task-list scan in rcu_read_lock() + - MIPS: DEC: Restore bootmem reservation for firmware working memory area + - MIPS: configs: lb60: Fix defconfig not selecting correct board + - s390/stp: add locking to sysfs functions + - powerpc: Warn about use of smt_snooze_delay + - powerpc/memhotplug: Make lmb size 64bit + - powerpc/powernv/elog: Fix race while processing OPAL error log event. + - powerpc/powermac: Fix low_sleep_handler with KUAP and KUEP + - powerpc/mce: Avoid nmi_enter/exit in real mode on pseries hash + - powerpc/32: Fix vmap stack - Do not activate MMU before reading task struct + - powerpc/32: Fix vmap stack - Properly set r1 before activating MMU + - block: advance iov_iter on bio_add_hw_page failure + - io_uring: use type appropriate io_kiocb handler for double poll + - gfs2: Make sure we don't miss any delayed withdraws + - gfs2: Only access gl_delete for iopen glocks + - NFSv4: Wait for stateid updates after CLOSE/OPEN_DOWNGRADE + - NFSv4.2: support EXCHGID4_FLAG_SUPP_FENCE_OPS 4.2 EXCHANGE_ID flag + - NFSD: Add missing NFSv2 .pc_func methods + - ubifs: dent: Fix some potential memory leaks while iterating entries + - ubifs: xattr: Fix some potential memory leaks while iterating entries + - ubifs: journal: Make sure to not dirty twice for auth nodes + - ubifs: Fix a memleak after dumping authentication mount options + - ubifs: Don't parse authentication mount options in remount process + - ubifs: mount_ubifs: Release authentication resource in error handling path + - perf vendor events amd: Add L2 Prefetch events for zen1 + - perf python scripting: Fix printable strings in python3 scripts + - ARC: perf: redo the pct irq missing in device-tree handling + - ubi: check kthread_should_stop() after the setting of task state + - ia64: fix build error with !COREDUMP + - rtc: rx8010: don't modify the global rtc ops + - i2c: imx: Fix external abort on interrupt in exit paths + - drm/amdgpu: don't map BO in reserved region + - drm/amd/display: Fix incorrect backlight register offset for DCN + - drm/amd/display: Increase timeout for DP Disable + - drm/amdgpu/vcn1.0: fix no previous prototype for functions + - drm/amdgpu: vcn and jpeg ring synchronization + - drm/amdgpu: correct the gpu reset handling for job != NULL case + - drm/amdkfd: Use same SQ prefetch setting as amdgpu + - drm/amd/display: Avoid MST manager resource leak. + - drm/amdgpu: increase the reserved VM size to 2MB + - drm/amd/display: Don't invoke kgdb_breakpoint() unconditionally + - drm/amd/display: Fix kernel panic by dal_gpio_open() error + - ceph: promote to unsigned long long before shifting + - libceph: clear con->out_msg on Policy::stateful_server faults + - 9P: Cast to loff_t before multiplying + - net/sunrpc: Fix return value for sysctl sunrpc.transports + - PCI: qcom: Make sure PCIe is reset before init for rev 2.1.0 + - ring-buffer: Return 0 on success from ring_buffer_resize() + - intel_idle: Ignore _CST if control cannot be taken from the platform + - intel_idle: Fix max_cstate for processor models without C-state tables + - cpufreq: Introduce CPUFREQ_NEED_UPDATE_LIMITS driver flag + - vringh: fix __vringh_iov() when riov and wiov are different + - ext4: fix leaking sysfs kobject after failed mount + - ext4: fix error handling code in add_new_gdb + - ext4: fix invalid inode checksum + - ext4: clear buffer verified flag if read meta block from disk + - ext4: fix bdev write error check failed when mount fs with ro + - ext4: fix bs < ps issue reported with dioread_nolock mount opt + - ext4: do not use extent after put_bh + - drm/ttm: fix eviction valuable range check. + - mmc: sdhci-of-esdhc: make sure delay chain locked for HS400 + - mmc: sdhci-of-esdhc: set timeout to max before tuning + - mmc: sdhci: Use Auto CMD Auto Select only when v4_mode is true + - memory: tegra: Remove GPU from DRM IOMMU group + - memory: brcmstb_dpfe: Fix memory leak + - futex: Adjust absolute futex timeouts with per time namespace offset + - drm/amd/pm: increase mclk switch threshold to 200 us + - tty: make FONTX ioctl use the tty pointer they were actually passed + - arm64: berlin: Select DW_APB_TIMER_OF + - [Config] update annotations for DW_APB_TIMER + - cachefiles: Handle readpage error correctly + - hil/parisc: Disable HIL driver when it gets stuck + - arm: dts: mt7623: add missing pause for switchport + - ARM: aspeed: g5: Do not set sirq polarity + - ARM: dts: s5pv210: fix pinctrl property of "vibrator-en" regulator in Aries + - ARM: config: aspeed: Fix selection of media drivers + - ARM: samsung: fix PM debug build with DEBUG_LL but !MMU + - ARM: s3c24xx: fix missing system reset + - arm64: Change .weak to SYM_FUNC_START_WEAK_PI for arch/arm64/lib/mem*.S + - arm64: dts: marvell: espressobin: Add ethernet switch aliases + - null_blk: synchronization fix for zoned device + - coresight: cti: Initialize dynamic sysfs attributes + - device property: Keep secondary firmware node secondary by type + - device property: Don't clear secondary pointer for shared primary firmware + node + - KVM: arm64: Fix AArch32 handling of DBGD{CCINT,SCRext} and DBGVCR + - staging: fieldbus: anybuss: jump to correct label in an error path + - staging: comedi: cb_pcidas: Allow 2-channel commands for AO subdevice + - staging: octeon: repair "fixed-link" support + - staging: octeon: Drop on uncorrectable alignment or FCS error + - cpufreq: Introduce cpufreq_driver_test_flags() + - cpufreq: schedutil: Always call driver if CPUFREQ_NEED_UPDATE_LIMITS is set + - time: Prevent undefined behaviour in timespec64_to_ns() + - block: add capacity field to zone descriptors + - null_blk: introduce zone capacity for zoned device + - null_blk: Fix zone reset all tracing + - null_blk: Fix locking in zoned mode + - usb: dwc2: Avoid leaving the error_debugfs label unused + + * [HP 635] Radeon 6310 brightness control does not work (LP: #1894667) // + Groovy update: upstream stable patchset 2020-12-14 (LP: #1908150) + - ACPI: video: use ACPI backlight for HP 635 Notebook + + * CVE-2020-28974 + - vt: Disable KD_FONT_OP_COPY + + * stack trace in kernel (LP: #1903596) + - net: napi: remove useless stack trace + + * Refresh ACPI wakeup power to make Thunderbolt hotplug detection work + (LP: #1906229) + - PM: ACPI: PCI: Drop acpi_pm_set_bridge_wakeup() + - PM: ACPI: Refresh wakeup device power configuration every time + + * CVE-2020-27777 + - powerpc/rtas: Restrict RTAS requests from userspace + - [Config]: Set CONFIG_PPC_RTAS_FILTER + + * NULL pointer dereference when configuring multi-function with devfn != 0 + before devfn == 0 (LP: #1903682) + - s390/pci: fix hot-plug of PCI function missing bus + + * [UBUNTU 20.10] Applications runing in QEMU/KVM get translation faults + (LP: #1906255) + - s390: fix fpu restore in entry.S + + * Add dpcd backlight control for 0x4c83 0x4f41 (LP: #1905663) + - SAUCE: drm/dp: Add dpcd backlight control for 0x4c83 0x4f41 + + -- Ian May Mon, 08 Feb 2021 18:58:55 -0600 + +linux (5.8.0-43.49) groovy; urgency=medium + + * groovy/linux: 5.8.0-43.49 -proposed tracker (LP: #1914689) + + * Packaging resync (LP: #1786013) + - update dkms package versions + + * Exploitable vulnerabilities in AF_VSOCK implementation (LP: #1914668) + - vsock: fix the race conditions in multi-transport support + + -- Khalid Elmously Thu, 04 Feb 2021 21:41:23 -0500 + +linux (5.8.0-41.46) groovy; urgency=medium + + * groovy/linux: 5.8.0-41.46 -proposed tracker (LP: #1912219) + + * Groovy update: upstream stable patchset 2020-12-17 (LP: #1908555) // nvme + drive fails after some time (LP: #1910866) + - Revert "nvme-pci: remove last_sq_tail" + + * initramfs unpacking failed (LP: #1835660) + - SAUCE: lib/decompress_unlz4.c: correctly handle zero-padding around initrds. + + * overlay: permission regression in 5.4.0-51.56 due to patches related to + CVE-2020-16120 (LP: #1900141) + - ovl: do not fail because of O_NOATIME + + -- Kleber Sacilotto de Souza Mon, 18 Jan 2021 17:01:08 +0100 + +linux (5.8.0-40.45) groovy; urgency=medium + + * Packaging resync (LP: #1786013) + - update dkms package versions + + -- Kleber Sacilotto de Souza Fri, 15 Jan 2021 11:10:22 +0100 + +linux (5.8.0-38.43) groovy; urgency=medium + + * groovy/linux: 5.8.0-38.43 -proposed tracker (LP: #1911143) + + * CVE-2020-28374 + - SAUCE: target: fix XCOPY NAA identifier lookup + + * Packaging resync (LP: #1786013) + - update dkms package versions + + -- Kleber Sacilotto de Souza Tue, 12 Jan 2021 12:40:28 +0100 + +linux (5.8.0-36.40) groovy; urgency=medium + + * debian/scripts/file-downloader does not handle positive failures correctly + (LP: #1878897) + - [Packaging] file-downloader not handling positive failures correctly + + -- Thadeu Lima de Souza Cascardo Tue, 05 Jan 2021 17:57:31 -0300 + +linux (5.8.0-35.39) groovy; urgency=medium + + * Packaging resync (LP: #1786013) + - update dkms package versions + + * CVE-2021-1052 // CVE-2021-1053 + - [Packaging] NVIDIA -- Add the NVIDIA 460 driver + + -- Thadeu Lima de Souza Cascardo Tue, 05 Jan 2021 12:39:03 -0300 + +linux (5.8.0-34.37) groovy; urgency=medium + + * groovy/linux: 5.8.0-34.37 -proposed tracker (LP: #1907576) + + * Packaging resync (LP: #1786013) + - update dkms package versions + + * [Ubuntu 21.04 FEAT] mpt3sas: Request to include the patch set which supports + topology where zoning is enabled in expander (LP: #1899802) + - scsi: mpt3sas: Define hba_port structure + - scsi: mpt3sas: Allocate memory for hba_port objects + - scsi: mpt3sas: Rearrange _scsih_mark_responding_sas_device() + - scsi: mpt3sas: Update hba_port's sas_address & phy_mask + - scsi: mpt3sas: Get device objects using sas_address & portID + - scsi: mpt3sas: Rename transport_del_phy_from_an_existing_port() + - scsi: mpt3sas: Get sas_device objects using device's rphy + - scsi: mpt3sas: Update hba_port objects after host reset + - scsi: mpt3sas: Set valid PhysicalPort in SMPPassThrough + - scsi: mpt3sas: Handling HBA vSES device + - scsi: mpt3sas: Add bypass_dirty_port_flag parameter + - scsi: mpt3sas: Handle vSES vphy object during HBA reset + - scsi: mpt3sas: Add module parameter multipath_on_hba + - scsi: mpt3sas: Bump driver version to 35.101.00.00 + + * CVE-2020-12912 + - hwmon: (amd_energy) modify the visibility of the counters + + * Intel Tiger Lake IDs supplement (LP: #1904521) + - mtd: spi-nor: intel-spi: Add support for Intel Tiger Lake-H SPI serial flash + - pinctrl: tigerlake: Add support for Tiger Lake-H + + * [i915] Noise-like lines of graphics corruption when moving windows in Xorg + sessions (LP: #1896091) + - Revert "UBUNTU: SAUCE: drm/i915: Synchronize active and retire callbacks" + + * Fix no headset sound after S3 on Intel HDA (LP: #1904595) + - ALSA: hda: Refactor codec PM to use direct-complete optimization + - ALSA: hda: Separate runtime and system suspend + - ALSA: hda: Reinstate runtime_allow() for all hda controllers + + * Ask 8821C Bluetooth controller to drop old firmware (LP: #1904221) + - Bluetooth: btrtl: Ask 8821C to drop old firmware + - Bluetooth: btrtl: fix incorrect skb allocation failure check + + * Use ACPI S5 for reboot (LP: #1904225) + - PM: ACPI: reboot: Use S5 for reboot + + * Groovy update: v5.8.18 upstream stable release (LP: #1904941) + - netfilter: nftables_offload: KASAN slab-out-of-bounds Read in + nft_flow_rule_create + - io_uring: don't run task work on an exiting task + - io_uring: allow timeout/poll/files killing to take task into account + - io_uring: move dropping of files into separate helper + - io_uring: stash ctx task reference for SQPOLL + - io_uring: unconditionally grab req->task + - io_uring: return cancelation status from poll/timeout/files handlers + - io_uring: enable task/files specific overflow flushing + - io_uring: don't rely on weak ->files references + - io_uring: reference ->nsproxy for file table commands + - io_wq: Make io_wqe::lock a raw_spinlock_t + - io-wq: fix use-after-free in io_wq_worker_running + - io_uring: no need to call xa_destroy() on empty xarray + - io_uring: Fix use of XArray in __io_uring_files_cancel + - io_uring: Fix XArray usage in io_uring_add_task_file + - io_uring: Convert advanced XArray uses to the normal API + - scripts/setlocalversion: make git describe output more reliable + - efi/arm64: libstub: Deal gracefully with EFI_RNG_PROTOCOL failure + - fs/kernel_read_file: Remove FIRMWARE_EFI_EMBEDDED enum + - arm64: Run ARCH_WORKAROUND_1 enabling code on all CPUs + - arm64: Run ARCH_WORKAROUND_2 enabling code on all CPUs + - arm64: link with -z norelro regardless of CONFIG_RELOCATABLE + - x86/PCI: Fix intel_mid_pci.c build error when ACPI is not enabled + - x86, powerpc: Rename memcpy_mcsafe() to copy_mc_to_{user, kernel}() + - [Config] update config for ARCH_HAS_COPY_MC + - x86/copy_mc: Introduce copy_mc_enhanced_fast_string() + - bnxt_en: Check abort error state in bnxt_open_nic(). + - bnxt_en: Fix regression in workqueue cleanup logic in bnxt_remove_one(). + - bnxt_en: Invoke cancel_delayed_work_sync() for PFs also. + - bnxt_en: Re-write PCI BARs after PCI fatal error. + - bnxt_en: Send HWRM_FUNC_RESET fw command unconditionally. + - chelsio/chtls: fix deadlock issue + - chelsio/chtls: fix memory leaks in CPL handlers + - chelsio/chtls: fix tls record info to user + - cxgb4: set up filter action after rewrites + - gtp: fix an use-before-init in gtp_newlink() + - ibmveth: Fix use of ibmveth in a bridge. + - ibmvnic: fix ibmvnic_set_mac + - mlxsw: core: Fix memory leak on module removal + - netem: fix zero division in tabledist + - net: hns3: Clear the CMDQ registers before unmapping BAR region + - net: ipa: command payloads already mapped + - net/sched: act_mpls: Add softdep on mpls_gso.ko + - r8169: fix issue with forced threading in combination with shared interrupts + - ravb: Fix bit fields checking in ravb_hwtstamp_get() + - tcp: Prevent low rmem stalls with SO_RCVLOWAT. + - tipc: fix memory leak caused by tipc_buf_append() + - net: protect tcf_block_unbind with block lock + - erofs: avoid duplicated permission check for "trusted." xattrs + - arch/x86/amd/ibs: Fix re-arming IBS Fetch + - x86/traps: Fix #DE Oops message regression + - x86/xen: disable Firmware First mode for correctable memory errors + - PCI: aardvark: Fix initialization with old Marvell's Arm Trusted Firmware + - ata: ahci: mvebu: Make SATA PHY optional for Armada 3720 + - fuse: fix page dereference after free + - bpf: Fix comment for helper bpf_current_task_under_cgroup() + - evm: Check size of security.evm before using it + - p54: avoid accessing the data mapped to streaming DMA + - cxl: Rework error message for incompatible slots + - RDMA/addr: Fix race with netevent_callback()/rdma_addr_cancel() + - mtd: lpddr: Fix bad logic in print_drs_error + - drm/i915/gem: Serialise debugfs i915_gem_objects with ctx->mutex + - serial: qcom_geni_serial: To correct QUP Version detection logic + - serial: pl011: Fix lockdep splat when handling magic-sysrq interrupt + - PM: runtime: Fix timer_expires data type on 32-bit arches + - ata: sata_rcar: Fix DMA boundary mask + - xen/gntdev.c: Mark pages as dirty + - openrisc: Fix issue with get_user for 64-bit values + - misc: rtsx: do not setting OC_POWER_DOWN reg in rtsx_pci_init_ocp() + - phy: marvell: comphy: Convert internal SMCC firmware return codes to errno + - Linux 5.8.18 + + * linux-riscv 5.8.0-9-generic (all 5.8 kernels) fail to boot in qemu + (LP: #1904912) + - riscv: Fixup bootup failure with HARDENED_USERCOPY + + * Bionic: btrfs: kernel BUG at /build/linux- + eTBZpZ/linux-4.15.0/fs/btrfs/ctree.c:3233! (LP: #1902254) + - btrfs: tree-checker: fix incorrect printk format + + -- Stefan Bader Thu, 10 Dec 2020 18:42:54 +0100 + +linux (5.8.0-33.36) groovy; urgency=medium + + * groovy/linux: 5.8.0-33.36 -proposed tracker (LP: #1907408) + + * raid10: discard leads to corrupted file system (LP: #1907262) + - Revert "dm raid: remove unnecessary discard limits for raid10" + - Revert "dm raid: fix discard limits for raid1 and raid10" + - Revert "md/raid10: improve discard request for far layout" + - Revert "md/raid10: improve raid10 discard request" + - Revert "md/raid10: pull codes that wait for blocked dev into one function" + - Revert "md/raid10: extend r10bio devs to raid disks" + - Revert "md: add md_submit_discard_bio() for submitting discard bio" + + -- Khalid Elmously Wed, 09 Dec 2020 03:56:47 -0500 + +linux (5.8.0-31.33) groovy; urgency=medium + + * groovy/linux: 5.8.0-31.33 -proposed tracker (LP: #1905299) + + * Groovy 5.8 kernel hangs on boot on CPUs with eLLC (LP: #1903397) + - drm/i915: Mark ininitial fb obj as WT on eLLC machines to avoid rcu lockup + during fbdev init + + * CVE-2020-4788 + - selftests/powerpc: rfi_flush: disable entry flush if present + - powerpc/64s: flush L1D on kernel entry + - powerpc/64s: flush L1D after user accesses + - selftests/powerpc: entry flush test + + -- Thadeu Lima de Souza Cascardo Mon, 23 Nov 2020 15:03:08 -0300 + +linux (5.8.0-30.32) groovy; urgency=medium + + * groovy/linux: 5.8.0-30.32 -proposed tracker (LP: #1903194) + + * Update kernel packaging to support forward porting kernels (LP: #1902957) + - [Debian] Update for leader included in BACKPORT_SUFFIX + + * Avoid double newline when running insertchanges (LP: #1903293) + - [Packaging] insertchanges: avoid double newline + + * EFI: Fails when BootCurrent entry does not exist (LP: #1899993) + - efivarfs: Replace invalid slashes with exclamation marks in dentries. + + * raid10: Block discard is very slow, causing severe delays for mkfs and + fstrim operations (LP: #1896578) + - md: add md_submit_discard_bio() for submitting discard bio + - md/raid10: extend r10bio devs to raid disks + - md/raid10: pull codes that wait for blocked dev into one function + - md/raid10: improve raid10 discard request + - md/raid10: improve discard request for far layout + - dm raid: fix discard limits for raid1 and raid10 + - dm raid: remove unnecessary discard limits for raid10 + + * Bionic: btrfs: kernel BUG at /build/linux- + eTBZpZ/linux-4.15.0/fs/btrfs/ctree.c:3233! (LP: #1902254) + - btrfs: extent_io: do extra check for extent buffer read write functions + - btrfs: extent-tree: kill BUG_ON() in __btrfs_free_extent() + - btrfs: extent-tree: kill the BUG_ON() in insert_inline_extent_backref() + - btrfs: ctree: check key order before merging tree blocks + + * Tiger Lake PMC core driver fixes (LP: #1899883) + - platform/x86: intel_pmc_core: update TGL's LPM0 reg bit map name + - platform/x86: intel_pmc_core: fix bound check in pmc_core_mphy_pg_show() + - platform/x86: pmc_core: Use descriptive names for LPM registers + - platform/x86: intel_pmc_core: Fix TigerLake power gating status map + - platform/x86: intel_pmc_core: Fix the slp_s0 counter displayed value + + * drm/i915/dp_mst - System would hang during the boot up. (LP: #1902469) + - Revert "UBUNTU: SAUCE: drm/i915/display: Fix null deref in + intel_psr_atomic_check()" + - drm/i915: Fix encoder lookup during PSR atomic check + + * Undetected Data corruption in MPI workloads that use VSX for reductions on + POWER9 DD2.1 systems (LP: #1902694) + - powerpc: Fix undetected data corruption with P9N DD2.1 VSX CI load emulation + - selftests/powerpc: Make alignment handler test P9N DD2.1 vector CI load + workaround + + * [20.04 FEAT] Support/enhancement of NVMe IPL (LP: #1902179) + - s390/ipl: support NVMe IPL kernel parameters + + * uvcvideo: add mapping for HEVC payloads (LP: #1895803) + - media: uvcvideo: Add mapping for HEVC payloads + + * risc-v 5.8 kernel oops on ftrace tests (LP: #1894613) + - stop_machine, rcu: Mark functions as notrace + + * Groovy update: v5.8.17 upstream stable release (LP: #1902137) + - xgb4: handle 4-tuple PEDIT to NAT mode translation + - ibmveth: Switch order of ibmveth_helper calls. + - ibmveth: Identify ingress large send packets. + - ipv4: Restore flowi4_oif update before call to xfrm_lookup_route + - mlx4: handle non-napi callers to napi_poll + - net: dsa: microchip: fix race condition + - net: fec: Fix phy_device lookup for phy_reset_after_clk_enable() + - net: fec: Fix PHY init after phy_reset_after_clk_enable() + - net: fix pos incrementment in ipv6_route_seq_next + - net: ipa: skip suspend/resume activities if not set up + - net: mptcp: make DACK4/DACK8 usage consistent among all subflows + - net: sched: Fix suspicious RCU usage while accessing tcf_tunnel_info + - net/smc: fix use-after-free of delayed events + - net/smc: fix valid DMBE buffer sizes + - net/tls: sendfile fails with ktls offload + - net: usb: qmi_wwan: add Cellient MPL200 card + - tipc: fix the skb_unshare() in tipc_buf_append() + - socket: fix option SO_TIMESTAMPING_NEW + - socket: don't clear SOCK_TSTAMP_NEW when SO_TIMESTAMPNS is disabled + - can: m_can_platform: don't call m_can_class_suspend in runtime suspend + - can: j1935: j1939_tp_tx_dat_new(): fix missing initialization of skbcnt + - net: j1939: j1939_session_fresh_new(): fix missing initialization of skbcnt + - net/ipv4: always honour route mtu during forwarding + - net_sched: remove a redundant goto chain check + - r8169: fix data corruption issue on RTL8402 + - binder: fix UAF when releasing todo list + - ALSA: bebob: potential info leak in hwdep_read() + - ALSA: hda/hdmi: fix incorrect locking in hdmi_pcm_close + - tipc: re-configure queue limit for broadcast link + - tipc: fix incorrect setting window for bcast link + - chelsio/chtls: fix socket lock + - chelsio/chtls: correct netdevice for vlan interface + - chelsio/chtls: fix panic when server is on ipv6 + - chelsio/chtls: Fix panic when listen on multiadapter + - chelsio/chtls: correct function return and return type + - chelsio/chtls: fix writing freed memory + - ibmvnic: save changed mac address to adapter->mac_addr + - icmp: randomize the global rate limiter + - mptcp: initialize mptcp_options_received's ahmac + - net: ftgmac100: Fix Aspeed ast2600 TX hang issue + - net: hdlc: In hdlc_rcv, check to make sure dev is an HDLC device + - net: hdlc_raw_eth: Clear the IFF_TX_SKB_SHARING flag after calling + ether_setup + - net: Properly typecast int values to set sk_max_pacing_rate + - net/sched: act_ct: Fix adding udp port mangle operation + - net/sched: act_tunnel_key: fix OOB write in case of IPv6 ERSPAN tunnels + - nexthop: Fix performance regression in nexthop deletion + - nfc: Ensure presence of NFC_ATTR_FIRMWARE_NAME attribute in + nfc_genl_fw_download() + - r8169: fix operation under forced interrupt threading + - selftests: forwarding: Add missing 'rp_filter' configuration + - tcp: fix to update snd_wl1 in bulk receiver fast path + - net: ethernet: mtk-star-emac: select REGMAP_MMIO + - net/sched: act_gate: Unlock ->tcfa_lock in tc_setup_flow_action() + - ALSA: hda - Don't register a cb func if it is registered already + - ALSA: hda - Fix the return value if cb func is already registered + - ALSA: usb-audio: Line6 Pod Go interface requires static clock rate quirk + - ALSA: hda/realtek - set mic to auto detect on a HP AIO machine + - ALSA: hda/realtek - Add mute Led support for HP Elitebook 845 G7 + - ALSA: hda/realtek: Enable audio jacks of ASUS D700SA with ALC887 + - cifs: remove bogus debug code + - cifs: Return the error from crypt_message when enc/dec key not found. + - SMB3: Resolve data corruption of TCP server info fields + - SMB3.1.1: Fix ids returned in POSIX query dir + - smb3: do not try to cache root directory if dir leases not supported + - smb3: fix stat when special device file and mounted with modefromsid + - arm64: Make use of ARCH_WORKAROUND_1 even when KVM is not enabled + - KVM: nVMX: Morph notification vector IRQ on nested VM-Enter to pending PI + - KVM: nVMX: Reset the segment cache when stuffing guest segs + - KVM: nVMX: Reload vmcs01 if getting vmcs12's pages fails + - KVM: x86/mmu: Commit zap of remaining invalid pages when recovering lpages + - KVM: x86: Intercept LA57 to inject #GP fault when it's reserved + - KVM: SVM: Initialize prev_ga_tag before use + - ima: Don't ignore errors from crypto_shash_update() + - crypto: algif_aead - Do not set MAY_BACKLOG on the async path + - crypto: caam/qi - add fallback for XTS with more than 8B IV + - crypto: caam/qi - add support for more XTS key lengths + - RAS/CEC: Fix cec_init() prototype + - sched/fair: Fix wrong negative conversion in find_energy_efficient_cpu() + - microblaze: fix kbuild redundant file warning + - EDAC/i5100: Fix error handling order in i5100_init_one() + - EDAC/aspeed: Fix handling of platform_get_irq() error + - EDAC/ti: Fix handling of platform_get_irq() error + - perf/x86/intel/ds: Fix x86_pmu_stop warning for large PEBS + - x86/fpu: Allow multiple bits in clearcpuid= parameter + - arm64: kprobe: add checks for ARMv8.3-PAuth combined instructions + - drivers/perf: xgene_pmu: Fix uninitialized resource struct + - drivers/perf: thunderx2_pmu: Fix memory resource error handling + - sched/fair: Fix wrong cpu selecting from isolated domain + - sched/fair: Use dst group while checking imbalance for NUMA balancer + - arm64: perf: Add missing ISB in armv8pmu_enable_counter() + - perf/x86/intel/uncore: Update Ice Lake uncore units + - perf/x86/intel/uncore: Reduce the number of CBOX counters + - perf/x86/intel/uncore: Fix the scale of the IMC free-running events + - x86/nmi: Fix nmi_handle() duration miscalculation + - x86/events/amd/iommu: Fix sizeof mismatch + - pinctrl: qcom: Set IRQCHIP_SET_TYPE_MASKED and IRQCHIP_MASK_ON_SUSPEND flags + - pinctrl: qcom: Use return value from irq_set_wake() call + - perf/x86: Fix n_pair for cancelled txn + - perf/core: Fix race in the perf_mmap_close() function + - crypto: algif_skcipher - EBUSY on aio should be an error + - crypto: mediatek - Fix wrong return value in mtk_desc_ring_alloc() + - crypto: ixp4xx - Fix the size used in a 'dma_free_coherent()' call + - crypto: picoxcell - Fix potential race condition bug + - media: vivid: Fix global-out-of-bounds read in precalculate_color() + - media: tuner-simple: fix regression in simple_set_radio_freq + - crypto: ccree - fix runtime PM imbalance on error + - media: Revert "media: exynos4-is: Add missed check for + pinctrl_lookup_state()" + - media: hantro: h264: Get the correct fallback reference buffer + - media: hantro: postproc: Fix motion vector space allocation + - media: ov5640: Correct Bit Div register in clock tree diagram + - media: m5mols: Check function pointer in m5mols_sensor_power + - fscrypt: restrict IV_INO_LBLK_32 to ino_bits <= 32 + - media: uvcvideo: Set media controller entity functions + - media: uvcvideo: Silence shift-out-of-bounds warning + - media: staging/intel-ipu3: css: Correctly reset some memory + - media: omap3isp: Fix memleak in isp_probe + - media: i2c: ov5640: Remain in power down for DVP mode unless streaming + - media: i2c: ov5640: Separate out mipi configuration from s_power + - media: i2c: ov5640: Enable data pins on poweron for DVP mode + - media: rcar_drif: Fix fwnode reference leak when parsing DT + - media: rcar_drif: Allocate v4l2_async_subdev dynamically + - media: rcar-csi2: Allocate v4l2_async_subdev dynamically + - spi: fsi: Handle 9 to 15 byte transfers lengths + - spi: fsi: Fix use of the bneq+ sequencer instruction + - spi: fsi: Implement restricted size for certain controllers + - spi: dw-pci: free previously allocated IRQs if desc->setup() fails + - crypto: omap-sham - fix digcnt register handling with export/import + - hwmon: (pmbus/max34440) Fix status register reads for MAX344{51,60,61} + - hwmon: (w83627ehf) Fix a resource leak in probe + - cypto: mediatek - fix leaks in mtk_desc_ring_alloc + - crypto: stm32/crc32 - Avoid lock if hardware is already used + - crypto: sun8i-ce - handle endianness of t_common_ctl + - media: mx2_emmaprp: Fix memleak in emmaprp_probe + - media: tc358743: initialize variable + - media: tc358743: cleanup tc358743_cec_isr + - media: rcar-vin: Fix a reference count leak. + - media: rockchip/rga: Fix a reference count leak. + - media: platform: fcp: Fix a reference count leak. + - media: camss: Fix a reference count leak. + - media: s5p-mfc: Fix a reference count leak + - media: stm32-dcmi: Fix a reference count leak + - media: ti-vpe: Fix a missing check and reference count leak + - regulator: resolve supply after creating regulator + - pinctrl: bcm: fix kconfig dependency warning when !GPIOLIB + - spi: spi-s3c64xx: swap s3c64xx_spi_set_cs() and s3c64xx_enable_datapath() + - spi: spi-s3c64xx: Check return values + - hwmon: (bt1-pvt) Test sensor power supply on probe + - hwmon: (bt1-pvt) Cache current update timeout + - hwmon: (bt1-pvt) Wait for the completion with timeout + - btrfs: add owner and fs_info to alloc_state io_tree + - blk-mq: move cancel of hctx->run_work to the front of blk_exit_queue + - ath10k: provide survey info as accumulated data + - drm/vkms: fix xrgb on compute crc + - Bluetooth: hci_uart: Cancel init work before unregistering + - drm/amd/display: Fix wrong return value in dm_update_plane_state() + - drm/vgem: add missing platform_device_unregister() in vgem_init() + - drm/vkms: add missing platform_device_unregister() in vkms_init() + - drm: panel: Fix bus format for OrtusTech COM43H4M85ULC panel + - ath6kl: prevent potential array overflow in ath6kl_add_new_sta() + - ath9k: Fix potential out of bounds in ath9k_htc_txcompletion_cb() + - ath10k: Fix the size used in a 'dma_free_coherent()' call in an error + handling path + - wcn36xx: Fix reported 802.11n rx_highest rate wcn3660/wcn3680 + - ASoC: qcom: lpass-platform: fix memory leak + - ASoC: qcom: lpass-cpu: fix concurrency issue + - ath11k: Fix possible memleak in ath11k_qmi_init_service + - brcmfmac: check ndev pointer + - mwifiex: Do not use GFP_KERNEL in atomic context + - staging: rtl8192u: Do not use GFP_KERNEL in atomic context + - drm/amd/display: fix potential integer overflow when shifting 32 bit + variable bl_pwm + - selftests/bpf: Fix test_vmlinux test to use bpf_probe_read_user() + - drm/gma500: fix error check + - scsi: qla4xxx: Fix an error handling path in 'qla4xxx_get_host_stats()' + - scsi: qla2xxx: Fix the size used in a 'dma_free_coherent()' call + - scsi: qla2xxx: Fix wrong return value in qlt_chk_unresolv_exchg() + - scsi: qla2xxx: Fix wrong return value in qla_nvme_register_hba() + - scsi: csiostor: Fix wrong return value in csio_hw_prep_fw() + - libbpf: Fix unintentional success return code in bpf_object__load + - wilc1000: Fix memleak in wilc_sdio_probe + - wilc1000: Fix memleak in wilc_bus_probe + - rtw88: don't treat NULL pointer as an array + - backlight: sky81452-backlight: Fix refcount imbalance on error + - staging: emxx_udc: Fix passing of NULL to dma_alloc_coherent() + - VMCI: check return value of get_user_pages_fast() for errors + - mm/error_inject: Fix allow_error_inject function signatures. + - drm: panel: Fix bpc for OrtusTech COM43H4M85ULC panel + - samples/bpf: Fix to xdpsock to avoid recycling frames + - drm/crc-debugfs: Fix memleak in crc_control_write + - Bluetooth: Clear suspend tasks on unregister + - selftests: vm: add fragment CONFIG_GUP_BENCHMARK + - scsi: ufs: Make ufshcd_print_trs() consider UFSHCD_QUIRK_PRDT_BYTE_GRAN + - binder: Remove bogus warning on failed same-process transaction + - tty: serial: earlycon dependency + - pty: do tty_flip_buffer_push without port->lock in pty_write + - pwm: lpss: Fix off by one error in base_unit math in pwm_lpss_prepare() + - pwm: lpss: Add range limit check for the base_unit register value + - drivers/virt/fsl_hypervisor: Fix error handling path + - ath11k: fix a double free and a memory leak + - video: fbdev: vga16fb: fix setting of pixclock because a pass-by-value error + - video: fbdev: sis: fix null ptr dereference + - video: fbdev: radeon: Fix memleak in radeonfb_pci_register + - ASoC: fsl: imx-es8328: add missing put_device() call in imx_es8328_probe() + - scsi: ufs: ufs-mediatek: Fix HOST_PA_TACTIVATE quirk + - HID: roccat: add bounds checking in kone_sysfs_write_settings() + - drm/msm: Avoid div-by-zero in dpu_crtc_atomic_check() + - drm/panfrost: Ensure GPU quirks are always initialised + - iomap: Clear page error before beginning a write + - iomap: Mark read blocks uptodate in write_begin + - selftests/lkdtm: Use "comm" instead of "diff" for dmesg + - Bluetooth: Re-order clearing suspend tasks + - pinctrl: mcp23s08: Fix mcp23x17_regmap initialiser + - pinctrl: mcp23s08: Fix mcp23x17 precious range + - pinctrl: devicetree: Keep deferring even on timeout + - drm/msm/adreno: fix probe without iommu + - net/mlx5: Fix uninitialized variable warning + - net/mlx5: Don't call timecounter cyc2time directly from 1PPS flow + - scsi: mpt3sas: Fix sync irqs + - net: stmmac: Fix incorrect location to set real_num_rx|tx_queues + - net: stmmac: use netif_tx_start|stop_all_queues() function + - xfs: force the log after remapping a synchronous-writes file + - cpufreq: armada-37xx: Add missing MODULE_DEVICE_TABLE + - drm: mxsfb: check framebuffer pitch + - ima: Fix NULL pointer dereference in ima_file_hash + - ASoC: topology: disable size checks for bytes_ext controls if needed + - ASoC: tlv320adcx140: Fix digital gain range + - coresight: etm4x: Fix etm4_count race by moving cpuhp callbacks to init + - coresight: fix offset by one error in counting ports + - coresight: cti: disclaim device only when it's claimed + - coresight: cti: remove pm_runtime_get_sync() from CPU hotplug + - coresight: etm4x: Ensure default perf settings filter user/kernel + - coresight: etm4x: Fix issues within reset interface of sysfs + - coresight: cti: Write regsiters directly in cti_enable_hw() + - coresight: etm4x: Handle unreachable sink in perf mode + - coresight: etm4x: Fix issues on trcseqevr access + - nvmem: core: fix missing of_node_put() in of_nvmem_device_get() + - selftests: mptcp: interpret \n as a new line + - selftests/bpf: Fix endianness issue in sk_assign + - selftests/bpf: Fix endianness issue in test_sockopt_sk + - xhci: don't create endpoint debugfs entry before ring buffer is set. + - net: dsa: rtl8366: Check validity of passed VLANs + - net: dsa: rtl8366: Refactor VLAN/PVID init + - net: dsa: rtl8366: Skip PVID setting if not requested + - net: wilc1000: clean up resource in error path of init mon interface + - ASoC: tas2770: Fix calling reset in probe + - ASoC: tas2770: Add missing bias level power states + - ASoC: tas2770: Fix required DT properties in the code + - ASoC: tas2770: Fix error handling with update_bits + - ASoC: tlv320aic32x4: Fix bdiv clock rate derivation + - net: dsa: rtl8366rb: Support all 4096 VLANs + - ASoC: SOF: control: add size checks for ext_bytes control .put() + - ASoC: tas2770: Fix unbalanced calls to pm_runtime + - spi: omap2-mcspi: Improve performance waiting for CHSTAT + - ath11k: Add checked value for ath11k_ahb_remove + - ath6kl: wmi: prevent a shift wrapping bug in ath6kl_wmi_delete_pstream_cmd() + - drm: rcar-du: Put reference to VSP device + - phy: rockchip-dphy-rx0: Include linux/delay.h + - dmaengine: dmatest: Check list for emptiness before access its last entry + - ASoC: cros_ec_codec: fix kconfig dependency warning for + SND_SOC_CROS_EC_CODEC + - misc: mic: scif: Fix error handling path + - ALSA: seq: oss: Avoid mutex lock for a long-time ioctl + - usb: dwc2: Fix parameter type in function pointer prototype + - usb: dwc3: core: Properly default unspecified speed + - usb: dwc2: Add missing cleanups when usb_add_gadget_udc() fails + - rtw88: Fix probe error handling race with firmware loading + - rtw88: Fix potential probe error handling race with wow firmware loading + - mt76: mt7915: fix possible memory leak in mt7915_mcu_add_beacon + - quota: clear padding in v2r1_mem2diskdqb() + - slimbus: core: check get_addr before removing laddr ida + - slimbus: core: do not enter to clock pause mode in core + - slimbus: qcom-ngd-ctrl: disable ngd in qmi server down callback + - ASoC: fsl_sai: Instantiate snd_soc_dai_driver + - HID: hid-input: fix stylus battery reporting + - tty: hvc: fix link error with CONFIG_SERIAL_CORE_CONSOLE=n + - nvmem: core: fix possibly memleak when use nvmem_cell_info_to_nvmem_cell() + - hv: clocksource: Add notrace attribute to read_hv_sched_clock_*() functions + - nl80211: fix OBSS PD min and max offset validation + - iomap: Use kzalloc to allocate iomap_page + - coresight: etm: perf: Fix warning caused by etm_setup_aux failure + - coresight: cti: Fix remove sysfs link error + - coresight: cti: Fix bug clearing sysfs links on callback + - coresight: etm4x: Fix save and restore of TRCVMIDCCTLR1 register + - ibmvnic: set up 200GBPS speed + - bpf: disallow attaching modify_return tracing functions to other BPF + programs + - selftests: Remove fmod_ret from test_overhead + - qtnfmac: fix resource leaks on unsupported iftype error return path + - pinctrl: aspeed: Use the right pinconf mask + - iommu/qcom: add missing put_device() call in qcom_iommu_of_xlate() + - iio: adc: stm32-adc: fix runtime autosuspend delay when slow polling + - net: enic: Cure the enic api locking trainwreck + - mfd: sm501: Fix leaks in probe() + - ASoC: wm_adsp: Pass full name to snd_ctl_notify + - iwlwifi: mvm: split a print to avoid a WARNING in ROC + - iwlwifi: dbg: remove no filter condition + - iwlwifi: dbg: run init_cfg function once per driver load + - usb: gadget: f_ncm: fix ncm_bitrate for SuperSpeed and above. + - usb: gadget: u_serial: clear suspended flag when disconnecting + - usb: gadget: u_ether: enable qmult on SuperSpeed Plus as well + - bus: mhi: core: Fix the building of MHI module + - ocxl: fix kconfig dependency warning for OCXL + - nl80211: fix non-split wiphy information + - usb: dwc2: Fix INTR OUT transfers in DDMA mode. + - scsi: target: tcmu: Fix warning: 'page' may be used uninitialized + - scsi: be2iscsi: Fix a theoretical leak in beiscsi_create_eqs() + - dmaengine: ioat: Allocate correct size for descriptor chunk + - ipmi_si: Fix wrong return value in try_smi_init() + - tracing: Fix parse_synth_field() error handling + - platform/x86: mlx-platform: Remove PSU EEPROM configuration + - mwifiex: fix double free + - drm/panfrost: increase readl_relaxed_poll_timeout values + - ipvs: clear skb->tstamp in forwarding path + - bpf, sockmap: Remove skb_orphan and let normal skb_kfree do cleanup + - net: korina: fix kfree of rx/tx descriptor array + - netfilter: nf_log: missing vlan offload tag and proto + - mm/swapfile.c: fix potential memory leak in sys_swapon + - mm/memcg: fix device private memcg accounting + - mm, oom_adj: don't loop through tasks in __set_oom_adj when not necessary + - fs: fix NULL dereference due to data race in prepend_path() + - selftests/ftrace: Change synthetic event name for inter-event-combined test + - tracing: Handle synthetic event array field type checking correctly + - i3c: master add i3c_master_attach_boardinfo to preserve boardinfo + - IB/mlx4: Fix starvation in paravirt mux/demux + - IB/mlx4: Adjust delayed work when a dup is observed + - powerpc/pseries: Fix missing of_node_put() in rng_init() + - powerpc/icp-hv: Fix missing of_node_put() in success path + - rcu/tree: Force quiescent state on callback overload + - rcutorture: Properly set rcu_fwds for OOM handling + - RDMA/ucma: Fix locking for ctx->events_reported + - RDMA/ucma: Add missing locking around rdma_leave_multicast() + - mtd: lpddr: fix excessive stack usage with clang + - RDMA/hns: Add a check for current state before modifying QP + - RDMA/umem: Fix signature of stub ib_umem_find_best_pgsz() + - powerpc/pseries: explicitly reschedule during drmem_lmb list traversal + - pseries/drmem: don't cache node id in drmem_lmb struct + - RDMA/mlx5: Fix potential race between destroy and CQE poll + - mtd: mtdoops: Don't write panic data twice + - perf tools: Make GTK2 support opt-in + - tools feature: Add missing -lzstd to the fast path feature detection + - ARM: 9007/1: l2c: fix prefetch bits init in L2X0_AUX_CTRL using DT values + - xfs: fix finobt btree block recovery ordering + - m68knommu: include SDHC support only when hardware has it + - arc: plat-hsdk: fix kconfig dependency warning when !RESET_CONTROLLER + - ida: Free allocated bitmap in error path + - xfs: limit entries returned when counting fsmap records + - xfs: fix deadlock and streamline xfs_getfsmap performance + - nfs: add missing "posix" local_lock constant table definition + - xfs: fix high key handling in the rt allocator's query_range function + - RDMA/rtrs-srv: Incorporate ib_register_client into rtrs server init + - RDMA/core: Delete function indirection for alloc/free kernel CQ + - RDMA: Allow fail of destroy CQ + - RDMA/umem: Fix ib_umem_find_best_pgsz() for mappings that cross a page + boundary + - RDMA/umem: Prevent small pages from being returned by + ib_umem_find_best_pgsz() + - RDMA/qedr: Fix qp structure memory leak + - RDMA/qedr: Fix doorbell setting + - RDMA/qedr: Fix use of uninitialized field + - RDMA/qedr: Fix return code if accept is called on a destroyed qp + - RDMA/qedr: Fix inline size returned for iWARP + - powerpc/pseries/svm: Allocate SWIOTLB buffer anywhere in memory + - powerpc/watchpoint: Fix quadword instruction handling on p10 predecessors + - powerpc/watchpoint: Fix handling of vector instructions + - powerpc/watchpoint: Add hw_len wherever missing + - powerpc/book3s64/hash/4k: Support large linear mapping range with 4K + - powerpc/tau: Use appropriate temperature sample interval + - powerpc/tau: Convert from timer to workqueue + - powerpc/tau: Remove duplicated set_thresholds() call + - powerpc/tau: Check processor type before enabling TAU interrupt + - powerpc/tau: Disable TAU between measurements + - powerpc/kasan: Fix CONFIG_KASAN_VMALLOC for 8xx + - powerpc/64s/radix: Fix mm_cpumask trimming race vs kthread_use_mm + - RDMA/cma: Combine cma_ndev_work with cma_work + - RDMA/cma: Remove dead code for kernel rdmacm multicast + - RDMA/cma: Consolidate the destruction of a cma_multicast in one place + - RDMA/cma: Fix use after free race in roce multicast join + - perf intel-pt: Fix "context_switch event has no tid" error + - RDMA/qedr: Fix resource leak in qedr_create_qp + - RDMA/hns: Set the unsupported wr opcode + - RDMA/mlx5: Use set_mkc_access_pd_addr_fields() in reg_create() + - RDMA/mlx5: Make mkeys always owned by the kernel's PD when not enabled + - RDMA/mlx5: Disable IB_DEVICE_MEM_MGT_EXTENSIONS if IB_WR_REG_MR can't work + - i40iw: Add support to make destroy QP synchronous + - perf stat: Skip duration_time in setup_system_wide + - RDMA/hns: Add check for the validity of sl configuration + - RDMA/hns: Solve the overflow of the calc_pg_sz() + - RDMA/hns: Fix the wrong value of rnr_retry when querying qp + - RDMA/hns: Fix configuration of ack_req_freq in QPC + - RDMA/hns: Fix missing sq_sig_type when querying QP + - mtd: hyperbus: hbmc-am654: Fix direct mapping setup flash access + - mtd: rawnand: stm32_fmc2: fix a buffer overflow + - mtd: rawnand: vf610: disable clk on error handling path in probe + - mtd: spinand: gigadevice: Only one dummy byte in QUADIO + - mtd: spinand: gigadevice: Add QE Bit + - mtd: rawnand: ams-delta: Fix non-OF build warning + - kdb: Fix pager search for multi-line strings + - overflow: Include header file with SIZE_MAX declaration + - RDMA/ipoib: Set rtnl_link_ops for ipoib interfaces + - powerpc/64: fix irq replay missing preempt + - powerpc/64: fix irq replay pt_regs->softe value + - powerpc/perf: Exclude pmc5/6 from the irrelevant PMU group constraints + - powerpc/perf/hv-gpci: Fix starting index value + - perf stat: Fix out of bounds CPU map access when handling armv8_pmu events + - i3c: master: Fix error return in cdns_i3c_master_probe() + - powerpc/papr_scm: Add PAPR command family to pass-through command-set + - cpufreq: powernv: Fix frame-size-overflow in powernv_cpufreq_reboot_notifier + - IB/rdmavt: Fix sizeof mismatch + - RDMA/rxe: Fix skb lifetime in rxe_rcv_mcast_pkt() + - f2fs: reject CASEFOLD inode flag without casefold feature + - um: vector: Use GFP_ATOMIC under spin lock + - um: time-travel: Fix IRQ handling in time_travel_handle_message() + - maiblox: mediatek: Fix handling of platform_get_irq() error + - perf trace: Fix off by ones in memset() after realloc() in arches using + libaudit + - selftests/powerpc: Fix eeh-basic.sh exit codes + - f2fs: wait for sysfs kobject removal before freeing f2fs_sb_info + - afs: Fix rapid cell addition/removal by not using RCU on cells tree + - afs: Fix cell refcounting by splitting the usage counter + - afs: Fix cell purging with aliases + - afs: Fix cell removal + - RDMA/rxe: Handle skb_clone() failure in rxe_recv.c + - mm/page_owner: change split_page_owner to take a count + - lib/crc32.c: fix trivial typo in preprocessor condition + - ramfs: fix nommu mmap with gaps in the page cache + - rapidio: fix error handling path + - rapidio: fix the missed put_device() for rio_mport_add_riodev + - mailbox: avoid timer start from callback + - clk: meson: axg-audio: separate axg and g12a regmap tables + - rtc: ds1307: Clear OSF flag on DS1388 when setting time + - i2c: rcar: Auto select RESET_CONTROLLER + - clk: meson: g12a: mark fclk_div2 as critical + - PCI: designware-ep: Fix the Header Type check + - PCI: aardvark: Fix compilation on s390 + - PCI: aardvark: Check for errors from pci_bridge_emul_init() call + - PCI: iproc: Set affinity mask on MSI interrupts + - rpmsg: smd: Fix a kobj leak in in qcom_smd_parse_edge() + - rpmsg: Avoid double-free in mtk_rpmsg_register_device + - PCI/IOV: Mark VFs as not implementing PCI_COMMAND_MEMORY + - vfio: add a singleton check for vfio_group_pin_pages + - s390/pci: Mark all VFs as not implementing PCI_COMMAND_MEMORY + - vfio/pci: Decouple PCI_COMMAND_MEMORY bit checks from is_virtfn + - vfio: fix a missed vfio group put in vfio_pin_pages + - vfio/type1: fix dirty bitmap calculation in vfio_dma_rw + - clk: qcom: gcc-sdm660: Fix wrong parent_map + - clk: keystone: sci-clk: fix parsing assigned-clock data during probe + - pwm: rockchip: Keep enabled PWMs running while probing + - pwm: img: Fix null pointer access in probe + - remoteproc/mediatek: fix null pointer dereference on null scp pointer + - PCI: hv: Fix hibernation in case interrupts are not re-created + - clk: rockchip: Initialize hw to error to avoid undefined behavior + - clk: mediatek: add UART0 clock support + - module: statically initialize init section freeing data + - clk: at91: clk-main: update key before writing AT91_CKGR_MOR + - clk: bcm2835: add missing release if devm_clk_hw_register fails + - kbuild: deb-pkg: do not build linux-headers package if CONFIG_MODULES=n + - watchdog: Fix memleak in watchdog_cdev_register + - watchdog: Use put_device on error + - watchdog: sp5100: Fix definition of EFCH_PM_DECODEEN3 + - svcrdma: fix bounce buffers for unaligned offsets and multiple pages + - ext4: fix dead loop in ext4_mb_new_blocks + - ext4: discard preallocations before releasing group lock + - ext4: disallow modifying DAX inode flag if inline_data has been set + - ext4: limit entries returned when counting fsmap records + - vfio/pci: Clear token on bypass registration failure + - vfio iommu type1: Fix memory leak in vfio_iommu_type1_pin_pages + - clk: imx8mq: Fix usdhc parents order + - SUNRPC: fix copying of multiple pages in gss_read_proxy_verf() + - platform/chrome: cros_ec_lightbar: Reduce ligthbar get version command + - Input: elants_i2c - fix typo for an attribute to show calibration count + - Input: imx6ul_tsc - clean up some errors in imx6ul_tsc_resume() + - Input: stmfts - fix a & vs && typo + - Input: ep93xx_keypad - fix handling of platform_get_irq() error + - Input: omap4-keypad - fix handling of platform_get_irq() error + - Input: twl4030_keypad - fix handling of platform_get_irq() error + - Input: sun4i-ps2 - fix handling of platform_get_irq() error + - KVM: x86: emulating RDPID failure shall return #UD rather than #GP + - scsi: bfa: Fix error return in bfad_pci_init() + - arm64: mm: use single quantity to represent the PA to VA translation + - netfilter: conntrack: connection timeout after re-register + - netfilter: ebtables: Fixes dropping of small packets in bridge nat + - netsec: ignore 'phy-mode' device property on ACPI systems + - netfilter: nf_fwd_netdev: clear timestamp in forwarding path + - soc: xilinx: Fix error code in zynqmp_pm_probe() + - arm64: dts: meson: vim3: correct led polarity + - ARM: dts: imx6sl: fix rng node + - ARM: at91: pm: of_node_put() after its usage + - ARM: s3c24xx: fix mmc gpio lookup tables + - ARM: dts: sun8i: r40: bananapi-m2-ultra: Fix dcdc1 regulator + - arm64: dts: allwinner: h5: remove Mali GPU PMU module + - memory: omap-gpmc: Fix a couple off by ones + - memory: omap-gpmc: Fix build error without CONFIG_OF + - arm64: dts: qcom: sc7180: Fix the LLCC base register size + - memory: fsl-corenet-cf: Fix handling of platform_get_irq() error + - firmware: arm_scmi: Fix NULL pointer dereference in mailbox_chan_free + - arm64: dts: imx8mq: Add missing interrupts to GPC + - arm64: dts: qcom: sc7180: Drop flags on mdss irqs + - soc: qcom: pdr: Fixup array type of get_domain_list_resp message + - arm64: dts: qcom: msm8916: Remove one more thermal trip point unit name + - arm64: dts: qcom: pm8916: Remove invalid reg size from wcd_codec + - arm64: dts: qcom: msm8916: Fix MDP/DSI interrupts + - soc: qcom: apr: Fixup the error displayed on lookup failure + - dt-bindings: crypto: Specify that allwinner, sun8i-a33-crypto needs reset + - arm64: dts: renesas: r8a77990: Fix MSIOF1 DMA channels + - arm64: dts: renesas: r8a774c0: Fix MSIOF1 DMA channels + - arm64: dts: mt8173: elm: Fix nor_flash node property + - arm64: dts: actions: limit address range for pinctrl node + - ARM: dts: owl-s500: Fix incorrect PPI interrupt specifiers + - soc: fsl: qbman: Fix return value on success + - ARM: OMAP2+: Restore MPU power domain if cpu_cluster_pm_enter() fails + - ARM: dts: stm32: Fix sdmmc2 pins on AV96 + - ARM: dts: stm32: lxa-mc1: Fix kernel warning about PHY delays + - ARM: dts: stm32: Move ethernet PHY into DH SoM DT + - ARM: dts: stm32: Swap PHY reset GPIO and TSC2004 IRQ on DHCOM SOM + - ARM: dts: stm32: Fix DH PDK2 display PWM channel + - ARM: dts: iwg20d-q7-common: Fix touch controller probe failure + - soc: mediatek: cmdq: add clear option in cmdq_pkt_wfe api + - drm/mediatek: reduce clear event + - arm64: dts: zynqmp: Remove additional compatible string for i2c IPs + - ARM: dts: meson8: remove two invalid interrupt lines from the GPU node + - lightnvm: fix out-of-bounds write to array devices->info[] + - powerpc/powernv/dump: Fix race while processing OPAL dump + - powerpc/pseries: Avoid using addr_to_pfn in real mode + - nvmet: fix uninitialized work for zero kato + - KVM: ioapic: break infinite recursion on lazy EOI + - NTB: hw: amd: fix an issue about leak system resources + - ntb: intel: Fix memleak in intel_ntb_pci_probe + - sched/features: Fix !CONFIG_JUMP_LABEL case + - perf: correct SNOOPX field offset + - i2c: core: Restore acpi_walk_dep_device_list() getting called after + registering the ACPI i2c devs + - md/bitmap: fix memory leak of temporary bitmap + - block: ratelimit handle_bad_sector() message + - x86/dumpstack: Fix misleading instruction pointer error message + - crypto: ccp - fix error handling + - x86/asm: Replace __force_order with a memory clobber + - x86/mce: Add Skylake quirk for patrol scrub reported errors + - media: firewire: fix memory leak + - media: ati_remote: sanity check for both endpoints + - media: st-delta: Fix reference count leak in delta_run_work + - media: sti: Fix reference count leaks + - media: exynos4-is: Fix several reference count leaks due to + pm_runtime_get_sync + - media: exynos4-is: Fix a reference count leak due to pm_runtime_get_sync + - media: exynos4-is: Fix a reference count leak + - media: vsp1: Fix runtime PM imbalance on error + - media: platform: s3c-camif: Fix runtime PM imbalance on error + - media: platform: sti: hva: Fix runtime PM imbalance on error + - media: bdisp: Fix runtime PM imbalance on error + - media: media/pci: prevent memory leak in bttv_probe + - x86/mce: Annotate mce_rd/wrmsrl() with noinstr + - crypto: hisilicon - fixed memory allocation error + - spi: fsi: Fix clock running too fast + - x86/mce: Make mce_rdmsrl() panic on an inaccessible MSR + - media: uvcvideo: Ensure all probed info is returned to v4l2 + - mmc: sdio: Check for CISTPL_VERS_1 buffer size + - media: saa7134: avoid a shift overflow + - media: atomisp: fix memleak in ia_css_stream_create + - media: venus: fixes for list corruption + - fs: dlm: fix configfs memory leak + - media: venus: core: Fix error handling in probe + - media: venus: core: Fix runtime PM imbalance in venus_probe + - ntfs: add check for mft record size in superblock + - ip_gre: set dev->hard_header_len and dev->needed_headroom properly + - mac80211: handle lack of sband->bitrates in rates + - staging: wfx: fix handling of MMIC error + - libbpf: Close map fd if init map slots failed + - bpf: Use raw_spin_trylock() for pcpu_freelist_push/pop in NMI + - PM: hibernate: remove the bogus call to get_gendisk() in software_resume() + - scsi: mvumi: Fix error return in mvumi_io_attach() + - scsi: target: core: Add CONTROL field for trace events + - mic: vop: copy data to kernel space then write to io memory + - misc: vop: add round_up(x,4) for vring_size to avoid kernel panic + - usb: dwc3: Add splitdisable quirk for Hisilicon Kirin Soc + - usb: gadget: function: printer: fix use-after-free in __lock_acquire + - udf: Limit sparing table size + - udf: Avoid accessing uninitialized data on failed inode read + - rtw88: increse the size of rx buffer size + - USB: cdc-acm: handle broken union descriptors + - usb: dwc3: simple: add support for Hikey 970 + - habanalabs: cast to u64 before shift > 31 bits + - can: flexcan: flexcan_chip_stop(): add error handling and propagate error + value + - HID: multitouch: Lenovo X1 Tablet Gen3 trackpoint and buttons + - ath9k: hif_usb: fix race condition between usb_get_urb() and + usb_kill_anchored_urbs() + - drm/panfrost: add Amlogic GPU integration quirks + - drm/panfrost: add amlogic reset quirk callback + - drm/panfrost: add support for vendor quirk + - bpf: Limit caller's stack depth 256 for subprogs with tailcalls + - misc: rtsx: Fix memory leak in rtsx_pci_probe + - reiserfs: only call unlock_new_inode() if I_NEW + - opp: Prevent memory leak in dev_pm_opp_attach_genpd() + - xfs: make sure the rt allocator doesn't run off the end + - usb: ohci: Default to per-port over-current protection + - drm: fix double free for gbo in drm_gem_vram_init and drm_gem_vram_create + - Bluetooth: Only mark socket zapped after unlocking + - drm/msm/a6xx: fix a potential overflow issue + - iomap: fix WARN_ON_ONCE() from unprivileged users + - scsi: ibmvfc: Fix error return in ibmvfc_probe() + - scsi: qla2xxx: Warn if done() or free() are called on an already freed srb + - selftests/bpf: Fix test_sysctl_loop{1, 2} failure due to clang change + - brcmsmac: fix memory leak in wlc_phy_attach_lcnphy + - rtl8xxxu: prevent potential memory leak + - Fix use after free in get_capset_info callback. + - HID: ite: Add USB id match for Acer One S1003 keyboard dock + - scsi: qedf: Return SUCCESS if stale rport is encountered + - scsi: qedi: Mark all connections for recovery on link down event + - scsi: qedi: Protect active command list to avoid list corruption + - scsi: qedi: Fix list_del corruption while removing active I/O + - fbmem: add margin check to fb_check_caps() + - tty: ipwireless: fix error handling + - Bluetooth: btusb: Fix memleak in btusb_mtk_submit_wmt_recv_urb + - ipvs: Fix uninit-value in do_ip_vs_set_ctl() + - reiserfs: Fix memory leak in reiserfs_parse_options() + - s390/qeth: strictly order bridge address events + - mwifiex: don't call del_timer_sync() on uninitialized timer + - ALSA: hda/ca0132 - Add AE-7 microphone selection commands. + - ALSA: hda/ca0132 - Add new quirk ID for SoundBlaster AE-7. + - ASoC: SOF: Add topology filename override based on dmi data match + - ASoC: Intel: sof_rt5682: override quirk data for tgl_max98373_rt5682 + - scsi: smartpqi: Avoid crashing kernel for controller issues + - brcm80211: fix possible memleak in brcmf_proto_msgbuf_attach + - usb: core: Solve race condition in anchor cleanup functions + - scsi: ufs: ufs-qcom: Fix race conditions caused by ufs_qcom_testbus_config() + - drm/amd/display: Screen corruption on dual displays (DP+USB-C) + - dmaengine: dw: Add DMA-channels mask cell support + - dmaengine: dw: Activate FIFO-mode for memory peripherals only + - ath10k: check idx validity in __ath10k_htt_rx_ring_fill_n() + - net: korina: cast KSEG0 address to pointer in kfree + - s390/qeth: don't let HW override the configured port role + - tty: serial: lpuart: fix lpuart32_write usage + - tty: serial: fsl_lpuart: fix lpuart32_poll_get_char + - usb: gadget: bcm63xx_udc: fix up the error of undeclared usb_debug_root + - usb: cdc-acm: add quirk to blacklist ETAS ES58X devices + - USB: cdc-wdm: Make wdm_flush() interruptible and add wdm_fsync(). + - usb: cdns3: gadget: free interrupt after gadget has deleted + - eeprom: at25: set minimum read/write access stride to 1 + - usb: gadget: f_ncm: allow using NCM in SuperSpeed Plus gadgets. + - Linux 5.8.17 + + * RTL8822BE [10ec:b822] network driver rtl_wifi crashes on boot in Focal Fossa + 20.04 - 5.4.0-21-generic and mainline 5.7.0-050700rc1-generic + (LP: #1872984) // Groovy update: v5.8.17 upstream stable release + (LP: #1902137) + - rtw88: pci: Power cycle device during shutdown + + * Groovy update: v5.8.16 upstream stable release (LP: #1902132) + - crypto: bcm - Verify GCM/CCM key length in setkey + - crypto: qat - check cipher length for aead AES-CBC-HMAC-SHA + - Bluetooth: Disconnect if E0 is used for Level 4 + - media: usbtv: Fix refcounting mixup + - USB: serial: option: add Cellient MPL200 card + - USB: serial: option: Add Telit FT980-KS composition + - staging: comedi: check validity of wMaxPacketSize of usb endpoints found + - USB: serial: pl2303: add device-id for HP GC device + - USB: serial: ftdi_sio: add support for FreeCalypso JTAG+UART adapters + - reiserfs: Initialize inode keys properly + - reiserfs: Fix oops during mount + - Linux 5.8.16 + + * Groovy update: v5.8.15 upstream stable release (LP: #1902130) + - fbdev, newport_con: Move FONT_EXTRA_WORDS macros into linux/font.h + - Fonts: Support FONT_EXTRA_WORDS macros for built-in fonts + - fbcon: Fix global-out-of-bounds read in fbcon_get_font() + - Revert "ravb: Fixed to be able to unload modules" + - crypto: arm64: Use x16 with indirect branch to bti_c + - exfat: fix use of uninitialized spinlock on error path + - net: wireless: nl80211: fix out-of-bounds access in nl80211_del_key() + - drm/nouveau/mem: guard against NULL pointer access in mem_del + - partitions/ibm: fix non-DASD devices + - block/scsi-ioctl: Fix kernel-infoleak in scsi_put_cdrom_generic_arg() + - vhost: Don't call access_ok() when using IOTLB + - vhost: Use vhost_get_used_size() in vhost_vring_set_addr() + - usermodehelper: reset umask to default before executing user process + - splice: teach splice pipe reading about empty pipe buffers + - Platform: OLPC: Fix memleak in olpc_ec_probe + - platform/x86: intel-vbtn: Fix SW_TABLET_MODE always reporting 1 on the HP + Pavilion 11 x360 + - platform/x86: thinkpad_acpi: initialize tp_nvram_state variable + - platform/x86: asus-wmi: Fix SW_TABLET_MODE always reporting 1 on many + different models + - bpf: Fix sysfs export of empty BTF section + - bpf: Prevent .BTF section elimination + - r8169: consider that PHY reset may still be in progress after applying + firmware + - platform/x86: intel-vbtn: Switch to an allow-list for SW_TABLET_MODE + reporting + - platform/x86: thinkpad_acpi: re-initialize ACPI buffer size when reuse + - nvme-core: put ctrl ref when module ref get fail + - macsec: avoid use-after-free in macsec_handle_frame() + - RISC-V: Make sure memblock reserves the memory containing DT + - gpiolib: Disable compat ->read() code in UML case + - mm/khugepaged: fix filemap page_to_pgoff(page) != offset + - net: introduce helper sendpage_ok() in include/linux/net.h + - tcp: use sendpage_ok() to detect misused .sendpage + - nvme-tcp: check page by sendpage_ok() before calling kernel_sendpage() + - xfrmi: drop ignore_df check before updating pmtu + - espintcp: restore IP CB before handing the packet to xfrm + - cifs: Fix incomplete memory allocation on setxattr path + - i2c: meson: fix clock setting overwrite + - i2c: meson: keep peripheral clock enabled + - i2c: meson: fixup rate calculation with filter delay + - i2c: owl: Clear NACK and BUS error bits + - sctp: fix sctp_auth_init_hmacs() error path + - team: set dev->needed_headroom in team_setup_by_port() + - net: team: fix memory leak in __team_options_register + - openvswitch: handle DNAT tuple collision + - drm/amdgpu: prevent double kfree ttm->sg + - btrfs: move btrfs_scratch_superblocks into btrfs_dev_replace_finishing + - io_uring: fix potential ABBA deadlock in ->show_fdinfo() + - drm/amd/pm: Removed fixed clock in auto mode DPM + - drm/amd/display: fix return value check for hdcp_work + - btrfs: move btrfs_rm_dev_replace_free_srcdev outside of all locks + - iommu/vt-d: Fix lockdep splat in iommu_flush_dev_iotlb() + - xfrm: clone XFRMA_SET_MARK in xfrm_do_migrate + - xfrm: clone XFRMA_REPLAY_ESN_VAL in xfrm_do_migrate + - xfrm: clone XFRMA_SEC_CTX in xfrm_do_migrate + - xfrm: clone whole liftime_cur structure in xfrm_do_migrate + - xsk: Do not discard packet when NETDEV_TX_BUSY + - net: stmmac: removed enabling eee in EEE set callback + - platform/x86: fix kconfig dependency warning for LG_LAPTOP + - platform/x86: fix kconfig dependency warning for FUJITSU_LAPTOP + - hinic: add log in exception handling processes + - hinic: fix wrong return value of mac-set cmd + - net: dsa: felix: convert TAS link speed based on phylink speed + - xfrm: Use correct address family in xfrm_state_find + - iavf: use generic power management + - iavf: Fix incorrect adapter get in iavf_resume + - ice: fix memory leak if register_netdev_fails + - ice: fix memory leak in ice_vsi_setup + - vmxnet3: fix cksum offload issues for non-udp tunnels + - net: stmmac: Fix clock handling on remove path + - net: ethernet: cavium: octeon_mgmt: use phy_start and phy_stop + - bonding: set dev->needed_headroom in bond_setup_by_slave() + - mdio: fix mdio-thunder.c dependency & build error + - mlxsw: spectrum_acl: Fix mlxsw_sp_acl_tcam_group_add()'s error path + - r8169: fix RTL8168f/RTL8411 EPHY config + - net: usb: ax88179_178a: fix missing stop entry in driver_info + - virtio-net: don't disable guest csum when disable LRO + - net: phy: realtek: fix rtl8211e rx/tx delay config + - octeontx2-af: Fix enable/disable of default NPC entries + - octeontx2-pf: Fix TCP/UDP checksum offload for IPv6 frames + - octeontx2-pf: Fix the device state on error + - octeontx2-pf: Fix synchnorization issue in mbox + - pipe: Fix memory leaks in create_pipe_files() + - net/mlx5: Fix a race when moving command interface to polling mode + - net/mlx5: Avoid possible free of command entry while timeout comp handler + - net/mlx5: poll cmd EQ in case of command timeout + - net/mlx5: Add retry mechanism to the command entry index allocation + - net/mlx5: Fix request_irqs error flow + - net/mlx5e: Add resiliency in Striding RQ mode for packets larger than MTU + - net/mlx5e: Fix return status when setting unsupported FEC mode + - net/mlx5e: Fix VLAN cleanup flow + - net/mlx5e: Fix VLAN create flow + - net/mlx5e: Fix race condition on nhe->n pointer in neigh update + - net: stmmac: Modify configuration method of EEE timers + - net: hinic: fix DEVLINK build errors + - vhost-vdpa: fix vhost_vdpa_map() on error condition + - vhost-vdpa: fix page pinning leakage in error path + - net: mvneta: fix double free of txq->buf + - rxrpc: Fix rxkad token xdr encoding + - rxrpc: Downgrade the BUG() for unsupported token type in rxrpc_read() + - rxrpc: Fix some missing _bh annotations on locking conn->state_lock + - rxrpc: The server keyring isn't network-namespaced + - rxrpc: Fix server keyring leak + - net: mscc: ocelot: rename ocelot_board.c to ocelot_vsc7514.c + - [Packaging] module ocelot_board rename + - net: mscc: ocelot: split writes to pause frame enable bit and to thresholds + - net: mscc: ocelot: extend watermark encoding function + - net: mscc: ocelot: divide watermark value by 60 when writing to SYS_ATOP + - afs: Fix deadlock between writeback and truncate + - perf: Fix task_function_call() error handling + - mmc: core: don't set limits.discard_granularity as 0 + - mm: validate inode in mapping_set_error() + - mm: khugepaged: recalculate min_free_kbytes after memory hotplug as expected + by khugepaged + - tcp: fix receive window update in tcp_add_backlog() + - netlink: fix policy dump leak + - net/core: check length before updating Ethertype in skb_mpls_{push,pop} + - net: bridge: fdb: don't flush ext_learn entries + - net/tls: race causes kernel panic + - net/mlx5e: Fix driver's declaration to support GRE offload + - tty/vt: Do not warn when huge selection requested + - Input: ati_remote2 - add missing newlines when printing module parameters + - net: usb: rtl8150: set random MAC address when set_ethernet_addr() fails + - net: qrtr: ns: Protect radix_tree_deref_slot() using rcu read locks + - net_sched: defer tcf_idr_insert() in tcf_action_init_1() + - net_sched: commit action insertions together + - Linux 5.8.15 + + * Fix non-working Intel NVMe after S3 (LP: #1900847) + - SAUCE: PCI: Enable ACS quirk on all CML root ports + + * Improve descriptions for XFAIL cases in kselftests/net/psock_snd + (LP: #1900088) + - selftests/net: improve descriptions for XFAIL cases in psock_snd.sh + + * alsa/hda/realtek - The front Mic on a HP machine doesn't work (LP: #1899508) + - ALSA: hda/realtek - The front Mic on a HP machine doesn't work + + * kci_test_encap_fou() in rtnetlink.sh from kselftests/net failed with "FAIL: + can't add fou port 7777, skipping test" (LP: #1891421) + - selftests: rtnetlink: load fou module for kci_test_encap_fou() test + + * linux-aws: fold test_bpf SAUCE to linux/master (LP: #1900855) + - SAUCE: selftests: net: don't fail test_bpf when module is not present + + * Fix broken MSI interrupt after HDA controller was suspended (LP: #1899586) + - ALSA: hda: fix jack detection with Realtek codecs when in D3 + + -- Stefan Bader Mon, 09 Nov 2020 16:23:07 +0100 + +linux (5.8.0-29.31) groovy; urgency=medium + + * Packaging resync (LP: #1786013) + - update dkms package versions + + -- Stefan Bader Fri, 06 Nov 2020 12:17:24 +0100 + +linux (5.8.0-28.30) groovy; urgency=medium + + * CVE-2020-27194 + - bpf: Fix scalar32_min_max_or bounds tracking + + -- Thadeu Lima de Souza Cascardo Wed, 04 Nov 2020 22:02:24 -0300 + +linux (5.8.0-27.29) groovy; urgency=medium + + * CVE-2020-8694 + - powercap: make attributes only readable by root + + -- Kleber Sacilotto de Souza Thu, 29 Oct 2020 11:28:11 +0100 + +linux (5.8.0-26.27) groovy; urgency=medium + + * groovy/linux: 5.8.0-26.27 -proposed tracker (LP: #1900896) + + * Packaging resync (LP: #1786013) + - update dkms package versions + + * Introduce the new NVIDIA 455 series (LP: #1897751) + - [Packaging] NVIDIA -- Add signed modules for the 455 driver + + -- Seth Forshee Wed, 21 Oct 2020 15:35:59 -0500 + +linux (5.8.0-25.26) groovy; urgency=medium + + * groovy/linux: 5.8.0-25.26 -proposed tracker (LP: #1899940) + + * CVE-2020-12351 + - Bluetooth: L2CAP: Fix calling sk_filter on non-socket based channel + + * CVE-2020-12352 + - Bluetooth: A2MP: Fix not initializing all members + + * CVE-2020-12351 // CVE-2020-12352 // CVE-2020-24490 + - Bluetooth: Disable High Speed by default + - Bluetooth: MGMT: Fix not checking if BT_HS is enabled + - [Config] Disable BlueZ highspeed support + + * ec2-hibinit-agent needs to properly initialize swap file (LP: #1892728) + - ext4: implement swap_activate aops using iomap + + -- Andrea Righi Thu, 15 Oct 2020 12:09:24 +0200 + +linux (5.8.0-24.25) groovy; urgency=medium + + * groovy/linux: 5.8.0-24.25 -proposed tracker (LP: #1899804) + + * Fix system reboot when disconnecting WiFi (LP: #1899726) + - iwlwifi: msix: limit max RX queues for 9000 family + + * ceph: fix inode number handling on arches with 32-bit ino_t (LP: #1899582) + - ceph: fix inode number handling on arches with 32-bit ino_t + + * booting linux-generic-lpae armhf kernel under qemu results in relocation out + of range, and thus no modules can be loaded (LP: #1899519) + - [Config] armhf: ARM_MODULE_PLTS=y + + -- Seth Forshee Wed, 14 Oct 2020 10:12:57 -0500 + +linux (5.8.0-23.24) groovy; urgency=medium + + * CVE-2020-16119 + - SAUCE: dccp: avoid double free of ccid on child socket + + -- Seth Forshee Fri, 09 Oct 2020 10:21:12 -0500 + +linux (5.8.0-22.23) groovy; urgency=medium + + * groovy/linux: 5.8.0-22.23 -proposed tracker (LP: #1899099) + + * Packaging resync (LP: #1786013) + - update dkms package versions + + * oops in nvkm_udevice_info() [nouveau] (LP: #1898130) + - drm/nouveau/device: return error for unknown chipsets + + * python3-venv is gone (LP: #1896801) + - SAUCE: doc: remove python3-venv dependency + + * *-tools-common packages descriptions have typo "PGKVER" (LP: #1898903) + - [Packaging] Fix typo in -tools template s/PGKVER/PKGVER/ + + * Enable brightness control on HP DreamColor panel (LP: #1898865) + - SAUCE: drm/i915/dpcd_bl: Skip testing control capability with force DPCD + quirk + - SAUCE: drm/dp: HP DreamColor panel brigntness fix + + * Groovy update: v5.8.14 upstream stable release (LP: #1898853) + - io_uring: always delete double poll wait entry on match + - btrfs: fix filesystem corruption after a device replace + - mmc: sdhci: Workaround broken command queuing on Intel GLK based IRBIS + models + - USB: gadget: f_ncm: Fix NDP16 datagram validation + - Revert "usbip: Implement a match function to fix usbip" + - usbcore/driver: Fix specific driver selection + - usbcore/driver: Fix incorrect downcast + - usbcore/driver: Accommodate usbip + - gpio: siox: explicitly support only threaded irqs + - gpio: mockup: fix resource leak in error path + - gpio: tc35894: fix up tc35894 interrupt configuration + - gpio: amd-fch: correct logic of GPIO_LINE_DIRECTION + - clk: samsung: Keep top BPLL mux on Exynos542x enabled + - clk: socfpga: stratix10: fix the divider for the emac_ptp_free_clk + - scsi: iscsi: iscsi_tcp: Avoid holding spinlock while calling getpeername() + - i2c: i801: Exclude device from suspend direct complete optimization + - Input: i8042 - add nopnp quirk for Acer Aspire 5 A515 + - iio: adc: qcom-spmi-adc5: fix driver name + - ftrace: Move RCU is watching check after recursion check + - tracing: Fix trace_find_next_entry() accounting of temp buffer size + - memstick: Skip allocating card when removing host + - drm/amdgpu: restore proper ref count in amdgpu_display_crtc_set_config + - xen/events: don't use chip_data for legacy IRQs + - clocksource/drivers/timer-gx6605s: Fixup counter reload + - vboxsf: Fix the check for the old binary mount-arguments struct + - mt76: mt7915: use ieee80211_free_txskb to free tx skbs + - libbpf: Remove arch-specific include path in Makefile + - drivers/net/wan/hdlc_fr: Add needed_headroom for PVC devices + - Revert "wlcore: Adding suppoprt for IGTK key in wlcore driver" + - drm/sun4i: mixer: Extend regmap max_register + - hv_netvsc: Cache the current data path to avoid duplicate call and message + - net: dec: de2104x: Increase receive ring size for Tulip + - rndis_host: increase sleep time in the query-response loop + - nvme-pci: disable the write zeros command for Intel 600P/P3100 + - nvme-core: get/put ctrl and transport module in nvme_dev_open/release() + - fuse: fix the ->direct_IO() treatment of iov_iter + - drivers/net/wan/lapbether: Make skb->protocol consistent with the header + - drivers/net/wan/hdlc: Set skb->protocol before transmitting + - mac80211: Fix radiotap header channel flag for 6GHz band + - mac80211: do not allow bigger VHT MPDUs than the hardware supports + - tracing: Make the space reserved for the pid wider + - tools/io_uring: fix compile breakage + - io_uring: mark statx/files_update/epoll_ctl as non-SQPOLL + - cpuidle: psci: Fix suspicious RCU usage + - spi: fsl-espi: Only process interrupts for expected events + - net: dsa: felix: fix some key offsets for IP4_TCP_UDP VCAP IS2 entries + - nvme-pci: fix NULL req in completion handler + - nvme-fc: fail new connections to a deleted host or remote port + - scripts/kallsyms: skip ppc compiler stub *.long_branch.* / *.plt_branch.* + - gpio: sprd: Clear interrupt when setting the type as edge + - phy: ti: am654: Fix a leak in serdes_am654_probe() + - pinctrl: mvebu: Fix i2c sda definition for 98DX3236 + - nfs: Fix security label length not being reset + - NFSv4.2: fix client's attribute cache management for copy_file_range + - pNFS/flexfiles: Ensure we initialise the mirror bsizes correctly on read + - clk: tegra: Always program PLL_E when enabled + - clk: tegra: Fix missing prototype for tegra210_clk_register_emc() + - dmaengine: dmatest: Prevent to run on misconfigured channel + - clk: samsung: exynos4: mark 'chipid' clock as CLK_IGNORE_UNUSED + - scsi: target: Fix lun lookup for TARGET_SCF_LOOKUP_LUN_FROM_TAG case + - iommu/exynos: add missing put_device() call in exynos_iommu_of_xlate() + - gpio: pca953x: Fix uninitialized pending variable + - gpio/aspeed-sgpio: enable access to all 80 input & output sgpios + - gpio/aspeed-sgpio: don't enable all interrupts by default + - gpio: aspeed: fix ast2600 bank properties + - i2c: cpm: Fix i2c_ram structure + - i2c: npcm7xx: Clear LAST bit after a failed transaction. + - Input: trackpoint - enable Synaptics trackpoints + - blk-mq: call commit_rqs while list empty but error happen + - scripts/dtc: only append to HOST_EXTRACFLAGS instead of overwriting + - autofs: use __kernel_write() for the autofs pipe writing + - pinctrl: qcom: sm8250: correct sdc2_clk + - pinctrl: mediatek: check mtk_is_virt_gpio input parameter + - gpio: pca953x: Correctly initialize registers 6 and 7 for PCA957x + - iommu/amd: Fix the overwritten field in IVMD header + - pipe: remove pipe_wait() and fix wakeup race with splice + - random32: Restore __latent_entropy attribute on net_rand_state + - gpiolib: Fix line event handling in syscall compatible mode + - drm/i915/gvt: Fix port number for BDW on EDID region setup + - scsi: sd: sd_zbc: Fix handling of host-aware ZBC disks + - scsi: sd: sd_zbc: Fix ZBC disk initialization + - epoll: do not insert into poll queues until all sanity checks are done + - epoll: replace ->visited/visited_list with generation count + - epoll: EPOLL_CTL_ADD: close the race in decision to take fast path + - ep_create_wakeup_source(): dentry name can change under you... + - Linux 5.8.14 + + * Miscellaneous Ubuntu changes + - SAUCE: selftests/ftrace: check for do_sys_openat2 in user-memory test + - SAUCE: doc: Disable extension incompatible with Sphinx 3 + - Add ubuntu-host module + - CONFIG_UBUNTU_HOST=m + - SAUCE: Revert "UBUNTU: SAUCE: IB/umem: Fix the Peer flow to handle pinned + pages properly" + - SAUCE: Revert "UBUNTU: SAUCE: IB/mlx5: Use peer client page_shift" + - SAUCE: Revert "UBUNTU: SAUCE: fixup! RDMA/core: Introduce peer memory + interface" + - SAUCE: Revert "UBUNTU: SAUCE: RDMA/core: Introduce peer memory interface" + - SAUCE: apparmor: drop prefixing abs root labels with '=' + - SAUCE: apparmor: disable showing the mode as part of a secid to secctx + - SAUCE: apparmor: rename aa_sock() to aa_unix_sk() + - SAUCE: apparmor: LSM stacking: switch from SK_CTX() to aa_sock() + - SAUCE: LSM: Infrastructure management of the sock security + - SAUCE: LSM: Create and manage the lsmblob data structure. + - SAUCE: LSM: Use lsmblob in security_audit_rule_match + - SAUCE: LSM: Use lsmblob in security_kernel_act_as + - SAUCE: net: Prepare UDS for security module stacking + - SAUCE: LSM: Use lsmblob in security_secctx_to_secid + - SAUCE: LSM: Use lsmblob in security_secid_to_secctx + - SAUCE: LSM: Use lsmblob in security_ipc_getsecid + - SAUCE: LSM: Use lsmblob in security_task_getsecid + - SAUCE: LSM: Use lsmblob in security_inode_getsecid + - SAUCE: LSM: Use lsmblob in security_cred_getsecid + - SAUCE: IMA: Change internal interfaces to use lsmblobs + - SAUCE: LSM: Specify which LSM to display + - SAUCE: LSM: Ensure the correct LSM context releaser + - SAUCE: LSM: Use lsmcontext in security_secid_to_secctx + - SAUCE: LSM: Use lsmcontext in security_inode_getsecctx + - SAUCE: LSM: security_secid_to_secctx in netlink netfilter + - SAUCE: NET: Store LSM netlabel data in a lsmblob + - SAUCE: LSM: Verify LSM display sanity in binder + - SAUCE: Audit: Add new record for multiple process LSM attributes + - SAUCE: Audit: Add a new record for multiple object LSM + - SAUCE: LSM: Add /proc attr entry for full LSM context + - SAUCE: AppArmor: Remove the exclusive flag + - SAUCE: Audit: Fix for missing NULL check + + * Miscellaneous upstream changes + - Revert "UBUNTU: [Packaging] Temporarily disable building doc package + contents" + - Revert "UBUNTU: SAUCE: Revert "apparmor: add support for mapping secids and + using secctxes"" + - Revert "UBUNTU: SAUCE: Revert "apparmor: Use an IDR to allocate apparmor + secids"" + - Revert "UBUNTU: SAUCE: Revert "apparmor: fixup secid map conversion to using + IDR"" + - Revert "UBUNTU: SAUCE: Revert "apparmor: Add a wildcard secid"" + - Revert "UBUNTU: SAUCE: Revert "apparmor: Parse secmark policy"" + - Revert "UBUNTU: SAUCE: Revert "apparmor: Allow filtering based on secmark + policy"" + - Revert "UBUNTU: SAUCE: Fix-up af_unix mediation for sock infrastructure + management" + - Revert "UBUNTU: SAUCE: LSM: Infrastructure management of the sock security" + - Revert "UBUNTU: SAUCE: apparmor: update flags to no longer be exclusive" + - Revert "UBUNTU: SAUCE: apparmor: add an apparmorfs entry to access current + attrs" + - Revert "UBUNTU: SAUCE: Revert "apparmor: add the ability to get a task's + secid"" + - Revert "UBUNTU: SAUCE: Revert "apparmor: Add support for audit rule + filtering"" + - Revert "UBUNTU: SAUCE: Revert "apparmor: modify audit rule support to + support profile stacks"" + - Revert "UBUNTU: SAUCE: Revert "apparmor: fix bad debug check in + apparmor_secid_to_secctx()"" + - Revert "UBUNTU: SAUCE: Revert "apparmor: add #ifdef checks for secmark + filtering"" + - Revert "UBUNTU: SAUCE: Revert "apparmor: fix checkpatch error in Parse + secmark policy"" + - Revert "UBUNTU: SAUCE: Revert "apparmor: Fix warning about unused function + apparmor_ipv6_postroute"" + + -- Seth Forshee Thu, 08 Oct 2020 17:17:19 -0500 + +linux (5.8.0-21.22) groovy; urgency=medium + + * groovy/linux: 5.8.0-21.22 -proposed tracker (LP: #1898150) + + * Packaging resync (LP: #1786013) + - update dkms package versions + + * Fix broken e1000e device after S3 (LP: #1897755) + - SAUCE: e1000e: Increase polling timeout on MDIC ready bit + + * EFA: add support for 0xefa1 devices (LP: #1896791) + - RDMA/efa: Expose maximum TX doorbell batch + - RDMA/efa: Expose minimum SQ size + - RDMA/efa: User/kernel compatibility handshake mechanism + - RDMA/efa: Add EFA 0xefa1 PCI ID + + * Groovy update: v5.8.13 upstream stable release (LP: #1898076) + - device_cgroup: Fix RCU list debugging warning + - ASoC: pcm3168a: ignore 0 Hz settings + - ASoC: wm8994: Skip setting of the WM8994_MICBIAS register for WM1811 + - ASoC: wm8994: Ensure the device is resumed in wm89xx_mic_detect functions + - ASoC: Intel: bytcr_rt5640: Add quirk for MPMAN Converter9 2-in-1 + - clk: versatile: Add of_node_put() before return statement + - RISC-V: Take text_mutex in ftrace_init_nop() + - i2c: aspeed: Mask IRQ status to relevant bits + - s390/init: add missing __init annotations + - lockdep: fix order in trace_hardirqs_off_caller() + - EDAC/ghes: Check whether the driver is on the safe list correctly + - drm/amdkfd: fix a memory leak issue + - drm/amd/display: Don't use DRM_ERROR() for DTM add topology + - drm/amd/display: update nv1x stutter latencies + - drm/amdgpu/dc: Require primary plane to be enabled whenever the CRTC is + - drm/amd/display: Don't log hdcp module warnings in dmesg + - objtool: Fix noreturn detection for ignored functions + - i2c: mediatek: Send i2c master code at more than 1MHz + - riscv: Fix Kendryte K210 device tree + - ieee802154: fix one possible memleak in ca8210_dev_com_init + - ieee802154/adf7242: check status of adf7242_read_reg + - clocksource/drivers/h8300_timer8: Fix wrong return value in + h8300_8timer_init() + - batman-adv: bla: fix type misuse for backbone_gw hash indexing + - libbpf: Fix build failure from uninitialized variable warning + - atm: eni: fix the missed pci_disable_device() for eni_init_one() + - batman-adv: mcast/TT: fix wrongly dropped or rerouted packets + - netfilter: ctnetlink: add a range check for l3/l4 protonum + - netfilter: ctnetlink: fix mark based dump filtering regression + - netfilter: conntrack: nf_conncount_init is failing with IPv6 disabled + - netfilter: nft_meta: use socket user_ns to retrieve skuid and skgid + - mac802154: tx: fix use-after-free + - bpf: Fix clobbering of r2 in bpf_gen_ld_abs + - tools/libbpf: Avoid counting local symbols in ABI check + - drm/vc4/vc4_hdmi: fill ASoC card owner + - net: qed: Disable aRFS for NPAR and 100G + - net: qede: Disable aRFS for NPAR and 100G + - net: qed: RDMA personality shouldn't fail VF load + - igc: Fix wrong timestamp latency numbers + - igc: Fix not considering the TX delay for timestamps + - drm/sun4i: sun8i-csc: Secondary CSC register correction + - hv_netvsc: Switch the data path at the right time during hibernation + - spi: spi-fsl-dspi: use XSPI mode instead of DMA for DPAA2 SoCs + - RDMA/core: Fix ordering of CQ pool destruction + - batman-adv: Add missing include for in_interrupt() + - xsk: Fix number of pinned pages/umem size discrepancy + - nvme-tcp: fix kconfig dependency warning when !CRYPTO + - batman-adv: mcast: fix duplicate mcast packets in BLA backbone from LAN + - batman-adv: mcast: fix duplicate mcast packets in BLA backbone from mesh + - batman-adv: mcast: fix duplicate mcast packets from BLA backbone to mesh + - bpf: Fix a rcu warning for bpffs map pretty-print + - lib80211: fix unmet direct dependendices config warning when !CRYPTO + - mac80211: do not disable HE if HT is missing on 2.4 GHz + - cfg80211: fix 6 GHz channel conversion + - mac80211: fix 80 MHz association to 160/80+80 AP on 6 GHz + - ALSA: asihpi: fix iounmap in error handler + - io_uring: fix openat/openat2 unified prep handling + - SUNRPC: Fix svc_flush_dcache() + - regmap: fix page selection for noinc reads + - regmap: fix page selection for noinc writes + - net/mlx5e: mlx5e_fec_in_caps() returns a boolean + - MIPS: Loongson-3: Fix fp register access if MSA enabled + - PM / devfreq: tegra30: Disable clock on error in probe + - MIPS: Add the missing 'CPU_1074K' into __get_cpu_type() + - regulator: axp20x: fix LDO2/4 description + - spi: bcm-qspi: Fix probe regression on iProc platforms + - KVM: x86: Reset MMU context if guest toggles CR4.SMAP or CR4.PKE + - KVM: SVM: Add a dedicated INVD intercept routine + - mm: validate pmd after splitting + - arch/x86/lib/usercopy_64.c: fix __copy_user_flushcache() cache writeback + - x86/irq: Make run_on_irqstack_cond() typesafe + - x86/ioapic: Unbreak check_timer() + - scsi: lpfc: Fix initial FLOGI failure due to BBSCN not supported + - ALSA: usb-audio: Add delay quirk for H570e USB headsets + - ALSA: hda/realtek - Couldn't detect Mic if booting with headset plugged + - ALSA: hda/realtek: Enable front panel headset LED on Lenovo ThinkStation + P520 + - lib/string.c: implement stpcpy + - tracing: fix double free + - s390/dasd: Fix zero write for FBA devices + - mt76: mt7615: use v1 MCU API on MT7615 to fix issues with adding/removing + stations + - lib/bootconfig: Fix a bug of breaking existing tree nodes + - lib/bootconfig: Fix to remove tailing spaces after value + - kprobes: Fix to check probe enabled before disarm_kprobe_ftrace() + - kprobes: tracing/kprobes: Fix to kill kprobes on initmem after boot + - btrfs: fix put of uninitialized kobject after seed device delete + - btrfs: fix overflow when copying corrupt csums for a message + - media: cec-adap.c: don't use flush_scheduled_work() + - MIPS: Loongson2ef: Disable Loongson MMI instructions + - dmabuf: fix NULL pointer dereference in dma_buf_release() + - mm, THP, swap: fix allocating cluster for swapfile by mistake + - mm: replace memmap_context by meminit_context + - mm: don't rely on system state to detect hot-plug operations + - s390/zcrypt: Fix ZCRYPT_PERDEV_REQCNT ioctl + - io_uring: ensure open/openat2 name is cleaned on cancelation + - KVM: arm64: Assume write fault on S1PTW permission fault on instruction + fetch + - dm: fix bio splitting and its bio completion order for regular IO + - clocksource/drivers/timer-ti-dm: Do reset before enable + - Linux 5.8.13 + + * HP Zbook Studio G7 boots into corrupted screen with PSR featured panel + (LP: #1897501) + - SAUCE: drm/i915/psr: allow overriding PSR disable param by quirk + - SAUCE: drm/dp: add DP_QUIRK_FORCE_PSR_CHIP_DEFAULT quirk to CMN prod-ID + 19-15 + + * mwifiex stops working after kernel upgrade (LP: #1897299) + - mwifiex: Increase AES key storage size to 256 bits + + * Oops and hang when starting LVM snapshots on 5.4.0-47 (LP: #1894780) + - SAUCE: Revert "mm: memcg/slab: fix memory leak at non-root kmem_cache + destroy" + + * mm/slub kernel oops on focal kernel 5.4.0-45 (LP: #1895109) + - SAUCE: Revert "mm/slub: fix a memory leak in sysfs_slab_add()" + + * Remove NVMe suspend-to-idle workaround (LP: #1897227) + - Revert "UBUTU: SAUCE: pci: prevent Intel NVMe SSDPEKKF from entering D3" + - Revert "UBUNTU: SAUCE: pci: prevent sk hynix nvme from entering D3" + + * [UBUNTU 20.04.1] qemu (secure guest) crash due to gup_fast / dynamic page + table folding issue (LP: #1896726) + - mm/gup: fix gup_fast with dynamic page table folding + + * backport tls-rx to ubuntu 5.8 (LP: #1895947) + - net/mlx5: kTLS, Improve TLS params layout structures + - net/mlx5e: Turn XSK ICOSQ into a general asynchronous one + - net/mlx5e: Refactor build channel params + - net/mlx5e: API to manipulate TTC rules destinations + - net/mlx5e: Receive flow steering framework for accelerated TCP flows + - net/mlx5e: Accel, Expose flow steering API for rules add/del + - net/mlx5e: kTLS, Improve TLS feature modularity + - net/mlx5e: kTLS, Use kernel API to extract private offload context + - net/mlx5e: kTLS, Add kTLS RX HW offload support + - Revert "net/tls: Add force_resync for driver resync" + - net/tls: Add asynchronous resync + - net/mlx5e: kTLS, Add kTLS RX resync support + - net/mlx5e: kTLS, Add kTLS RX stats + - net/mlx5e: Increase Async ICO SQ size + - net/mlx5e: kTLS, Cleanup redundant capability check + - net/mlx5e: kTLS, Improve rx handler function call + - net/mlx5e: kTLS, Fix napi sync and possible use-after-free + - net/mlx5e: fix memory leak of tls + - net/mlx5e: Fix build break when CONFIG_XPS is not set + - net/mlx5e: kTLS, Add missing dma_unmap in RX resync + - net/mlx5e: kTLS, Fix leak on resync error flow + - net/mlx5e: kTLS, Avoid kzalloc(GFP_KERNEL) under spinlock + + * Groovy update: v5.8.12 upstream stable release (LP: #1897550) + - ibmvnic fix NULL tx_pools and rx_tools issue at do_reset + - ibmvnic: add missing parenthesis in do_reset() + - act_ife: load meta modules before tcf_idr_check_alloc() + - bnxt_en: Avoid sending firmware messages when AER error is detected. + - bnxt_en: Fix NULL ptr dereference crash in bnxt_fw_reset_task() + - cxgb4: fix memory leak during module unload + - cxgb4: Fix offset when clearing filter byte counters + - geneve: add transport ports in route lookup for geneve + - hdlc_ppp: add range checks in ppp_cp_parse_cr() + - hinic: bump up the timeout of SET_FUNC_STATE cmd + - ip: fix tos reflection in ack and reset packets + - ipv4: Initialize flowi4_multipath_hash in data path + - ipv4: Update exception handling for multipath routes via same device + - ipv6: avoid lockdep issue in fib6_del() + - net: bridge: br_vlan_get_pvid_rcu() should dereference the VLAN group under + RCU + - net: DCB: Validate DCB_ATTR_DCB_BUFFER argument + - net: dsa: rtl8366: Properly clear member config + - net: Fix bridge enslavement failure + - net: ipv6: fix kconfig dependency warning for IPV6_SEG6_HMAC + - net/mlx5: Fix FTE cleanup + - net: phy: call phy_disable_interrupts() in phy_attach_direct() instead + - net: sched: initialize with 0 before setting erspan md->u + - net: sch_generic: aviod concurrent reset and enqueue op for lockless qdisc + - net: sctp: Fix IPv6 ancestor_size calc in sctp_copy_descendant + - nfp: use correct define to return NONE fec + - taprio: Fix allowing too small intervals + - tipc: Fix memory leak in tipc_group_create_member() + - tipc: fix shutdown() of connection oriented socket + - tipc: use skb_unshare() instead in tipc_buf_append() + - net/mlx5e: Enable adding peer miss rules only if merged eswitch is supported + - net/mlx5e: TLS, Do not expose FPGA TLS counter if not supported + - bnxt_en: Use memcpy to copy VPD field info. + - bnxt_en: return proper error codes in bnxt_show_temp + - bnxt_en: Protect bnxt_set_eee() and bnxt_set_pauseparam() with mutex. + - net: lantiq: Wake TX queue again + - net: lantiq: use netif_tx_napi_add() for TX NAPI + - net: lantiq: Use napi_complete_done() + - net: lantiq: Disable IRQs only if NAPI gets scheduled + - net: phy: Avoid NPD upon phy_detach() when driver is unbound + - net: phy: Do not warn in phy_stop() on PHY_DOWN + - net: qrtr: check skb_put_padto() return value + - net: add __must_check to skb_put_padto() + - net: ethernet: ti: cpsw_new: fix suspend/resume + - wireguard: noise: take lock when removing handshake entry from table + - wireguard: peerlookup: take lock before checking hash in replace operation + - net: ipa: fix u32_replace_bits by u32p_xxx version + - net/mlx5e: Fix memory leak of tunnel info when rule under multipath not + ready + - hinic: fix rewaking txq after netif_tx_disable + - hv_netvsc: Fix hibernation for mlx5 VF driver + - net: dsa: link interfaces with the DSA master to get rid of lockdep warnings + - net: dsa: microchip: ksz8795: really set the correct number of ports + - net: macb: fix for pause frame receive enable bit + - Revert "netns: don't disable BHs when locking "nsid_lock"" + - net/mlx5e: Use RCU to protect rq->xdp_prog + - net/mlx5e: Use synchronize_rcu to sync with NAPI + - net/mlx5e: Fix endianness when calculating pedit mask first bit + - Linux 5.8.12 + + * Groovy update: v5.8.11 upstream stable release (LP: #1896795) + - RDMA/bnxt_re: Restrict the max_gids to 256 + - dt-bindings: spi: Fix spi-bcm-qspi compatible ordering + - mptcp: sendmsg: reset iter on error + - net: handle the return value of pskb_carve_frag_list() correctly + - dt-bindings: PCI: intel,lgm-pcie: Fix matching on all snps,dw-pcie instances + - hv_netvsc: Remove "unlikely" from netvsc_select_queue + - loop: Set correct device size when using LOOP_CONFIGURE + - firmware_loader: fix memory leak for paged buffer + - xprtrdma: Release in-flight MRs on disconnect + - NFSv4.1 handle ERR_DELAY error reclaiming locking state on delegation recall + - phy: omap-usb2-phy: disable PHY charger detect + - habanalabs: prevent user buff overflow + - habanalabs: fix report of RAZWI initiator coordinates + - scsi: pm8001: Fix memleak in pm8001_exec_internal_task_abort + - scsi: libfc: Fix for double free() + - scsi: lpfc: Fix FLOGI/PLOGI receive race condition in pt2pt discovery + - scsi: lpfc: Extend the RDF FPIN Registration descriptor for additional + events + - regulator: pwm: Fix machine constraints application + - spi: spi-loopback-test: Fix out-of-bounds read + - interconnect: Show bandwidth for disabled paths as zero in debugfs + - NFS: Zero-stateid SETATTR should first return delegation + - SUNRPC: stop printk reading past end of string + - rapidio: Replace 'select' DMAENGINES 'with depends on' + - cifs: fix DFS mount with cifsacl/modefromsid + - openrisc: Fix cache API compile issue when not inlining + - nvme-fc: cancel async events before freeing event struct + - nvme-rdma: cancel async events before freeing event struct + - nvme-tcp: cancel async events before freeing event struct + - block: only call sched requeue_request() for scheduled requests + - f2fs: fix indefinite loop scanning for free nid + - f2fs: Return EOF on unaligned end of file DIO read + - i2c: algo: pca: Reapply i2c bus settings after reset + - spi: Fix memory leak on splited transfers + - KVM: MIPS: Change the definition of kvm type + - clk: davinci: Use the correct size when allocating memory + - clk: rockchip: Fix initialization of mux_pll_src_4plls_p + - ASoC: Intel: skl_hda_dsp_generic: Fix NULLptr dereference in autosuspend + delay + - ASoC: qcom: Set card->owner to avoid warnings + - ASoC: rt1308-sdw: Fix return check for devm_regmap_init_sdw() + - ASoC: rt711: Fix return check for devm_regmap_init_sdw() + - ASoC: rt715: Fix return check for devm_regmap_init_sdw() + - ASoC: rt700: Fix return check for devm_regmap_init_sdw() + - ASoC: qcom: common: Fix refcount imbalance on error + - drm/mediatek: dsi: Fix scrolling of panel with small hfp or hbp + - powerpc/book3s64/radix: Fix boot failure with large amount of guest memory + - ASoC: soc-core: add snd_soc_find_dai_with_mutex() + - ASoC: meson: axg-toddr: fix channel order on g12 platforms + - ASoC: tlv320adcx140: Fix accessing uninitialized adcx140->dev + - ASoC: Intel: haswell: Fix power transition refactor + - ASoC: core: Do not cleanup uninitialized dais on soc_pcm_open failure + - Drivers: hv: vmbus: hibernation: do not hang forever in vmbus_bus_resume() + - scsi: libsas: Fix error path in sas_notify_lldd_dev_found() + - arm64: Allow CPUs unffected by ARM erratum 1418040 to come in late + - Drivers: hv: vmbus: Add timeout to vmbus_wait_for_unload + - perf test: Fix the "signal" test inline assembly + - perf record: Don't clear event's period if set by a term + - MIPS: SNI: Fix MIPS_L1_CACHE_SHIFT + - perf test: Free aliases for PMU event map aliases test + - perf metric: Fix some memory leaks + - perf evlist: Fix cpu/thread map leak + - perf parse-event: Fix memory leak in evsel->unit + - perf test: Free formats for perf pmu parse test + - drm/i915/gem: Reduce context termination list iteration guard to RCU + - fbcon: Fix user font detection test at fbcon_resize(). + - MIPS: SNI: Fix spurious interrupts + - drm/mediatek: Use CPU when fail to get cmdq event + - drm/mediatek: Add missing put_device() call in mtk_ddp_comp_init() + - drm/mediatek: Add exception handing in mtk_drm_probe() if component init + fail + - drm/mediatek: Add missing put_device() call in mtk_drm_kms_init() + - drm/mediatek: Add missing put_device() call in mtk_hdmi_dt_parse_pdata() + - arm64: bpf: Fix branch offset in JIT + - iommu/amd: Fix potential @entry null deref + - iommu/amd: Restore IRTE.RemapEn bit for amd_iommu_activate_guest_mode + - kconfig: qconf: use delete[] instead of delete to free array (again) + - i2c: mediatek: Fix generic definitions for bus frequency + - i2c: mxs: use MXS_DMA_CTRL_WAIT4END instead of DMA_CTRL_ACK + - riscv: Add sfence.vma after early page table changes + - locking/lockdep: Fix "USED" <- "IN-NMI" inversions + - efi: efibc: check for efivars write capability + - locking/percpu-rwsem: Use this_cpu_{inc,dec}() for read_count + - x86/unwind/fp: Fix FP unwinding in ret_from_fork + - drm/kfd: fix a system crash issue during GPU recovery + - drm/i915/gem: Delay tracking the GEM context until it is registered + - drm/i915: Filter wake_flags passed to default_wake_function + - USB: quirks: Add USB_QUIRK_IGNORE_REMOTE_WAKEUP quirk for BYD zhaoxin + notebook + - USB: UAS: fix disconnect by unplugging a hub + - usblp: fix race between disconnect() and read() + - usb: typec: ucsi: acpi: Increase command completion timeout value + - usb: typec: ucsi: Prevent mode overrun + - i2c: i801: Fix resume bug + - Revert "ALSA: hda - Fix silent audio output and corrupted input on MSI + X570-A PRO" + - ALSA: hda: fixup headset for ASUS GX502 laptop + - ALSA: hda/realtek - The Mic on a RedmiBook doesn't work + - percpu: fix first chunk size calculation for populated bitmap + - Input: trackpoint - add new trackpoint variant IDs + - Input: i8042 - add Entroware Proteus EL07R4 to nomux and reset lists + - serial: 8250_pci: Add Realtek 816a and 816b + - serial: core: fix port-lock initialisation + - serial: core: fix console port-lock regression + - x86/boot/compressed: Disable relocation relaxation + - ksm: reinstate memcg charge on copied pages + - kprobes: fix kill kprobe which has been marked as gone + - mm/thp: fix __split_huge_pmd_locked() for migration PMD + - s390: add 3f program exception handler + - s390/zcrypt: fix kmalloc 256k failure + - ehci-hcd: Move include to keep CRC stable + - arm64: paravirt: Initialize steal time when cpu is online + - powerpc/dma: Fix dma_map_ops::get_required_mask + - selftests/vm: fix display of page size in map_hugetlb + - dm/dax: Fix table reference counts + - mm/memory_hotplug: drain per-cpu pages again during memory offline + - dm: Call proper helper to determine dax support + - dax: Fix compilation for CONFIG_DAX && !CONFIG_FS_DAX + - mm: memcg: fix memcg reclaim soft lockup + - nvme-loop: set ctrl state connecting after init + - Linux 5.8.11 + + * Miscellaneous Ubuntu changes + - SAUCE: drm/i915/display: Fix null deref in intel_psr_atomic_check() + - SAUCE: RDMA/core: Introduce peer memory interface + - SAUCE: fixup! RDMA/core: Introduce peer memory interface + - SAUCE: IB/mlx5: Use peer client page_shift + - SAUCE: IB/umem: Fix the Peer flow to handle pinned pages properly + - [Config] GCC version update + + -- Paolo Pisati Fri, 02 Oct 2020 10:46:22 +0200 + +linux (5.8.0-20.21) groovy; urgency=medium + + * groovy/linux: 5.8.0-20.21 -proposed tracker (LP: #1896668) + + * Lenovo ThinkBook 14-IML Touchpad not showing up in /proc/bus/input/devices + (LP: #1853277) + - i2c: core: Call i2c_acpi_install_space_handler() before + i2c_acpi_register_devices() + + * Enable LTR for endpoints behind VMD (LP: #1896598) + - SAUCE: PCI/ASPM: Enable LTR for endpoints behind VMD + + * Remove duplicated code in ip_defrag.sh of kselftests/net (LP: #1894062) + - Revert "UBUNTU: SAUCE: selftests: net: ip_defrag: modprobe missing + nf_defrag_ipv6 support" + + * [SRU] [Focal/OEM-5.6/Groovy]Fix AMD usb host controller lost after stress S3 + (LP: #1893914) + - SAUCE: xhci: workaround for S3 issue on AMD SNPS 3.0 xHC + + * debian/rules editconfigs does not work on s390x to change s390x only configs + (LP: #1863116) + - [Packaging] kernelconfig -- only update/edit configurations on architectures + we have compiler support + + * [Ubuntu 20.10] zPCI DMA tables and bitmap leak on hard unplug (PCI Event + 0x0304) (LP: #1896216) + - s390/pci: fix leak of DMA tables on hard unplug + + * md: improve IO accounting (LP: #1891151) + - md: improve io stats accounting + + * Groovy update: v5.8.10 upstream stable release (LP: #1896078) + - ARM: OMAP2+: Fix an IS_ERR() vs NULL check in _get_pwrdm() + - ARM: dts: logicpd-torpedo-baseboard: Fix broken audio + - ARM: dts: logicpd-som-lv-baseboard: Fix broken audio + - ARM: dts: logicpd-som-lv-baseboard: Fix missing video + - regulator: push allocation in regulator_ena_gpio_request() out of lock + - regulator: remove superfluous lock in regulator_resolve_coupling() + - ARM: dts: socfpga: fix register entry for timer3 on Arria10 + - ARM: dts: omap5: Fix DSI base address and clocks + - ARM: dts: ls1021a: fix QuadSPI-memory reg range + - ARM: dts: imx7ulp: Correct gpio ranges + - arm64: dts: imx: Add missing imx8mm-beacon-kit.dtb to build + - ARM: dts: imx7d-zii-rmu2: fix rgmii phy-mode for ksz9031 phy + - RDMA/rtrs-srv: Replace device_register with device_initialize and device_add + - RDMA/rxe: Fix memleak in rxe_mem_init_user + - RDMA/rxe: Drop pointless checks in rxe_init_ports + - RDMA/rxe: Fix panic when calling kmem_cache_create() + - RDMA/bnxt_re: Do not report transparent vlan from QP1 + - RDMA/bnxt_re: Fix the qp table indexing + - RDMA/bnxt_re: Static NQ depth allocation + - RDMA/bnxt_re: Fix driver crash on unaligned PSN entry address + - RDMA/bnxt_re: Remove the qp from list only if the qp destroy succeeds + - drm/sun4i: add missing put_device() call in sun8i_r40_tcon_tv_set_mux() + - arm64: dts: imx8mq: Fix TMU interrupt property + - drm/sun4i: Fix dsi dcs long write function + - scsi: qla2xxx: Fix regression on sparc64 + - scsi: libsas: Set data_dir as DMA_NONE if libata marks qc as NODATA + - drm/virtio: fix unblank + - RDMA/core: Fix unsafe linked list traversal after failing to allocate CQ + - RDMA/core: Fix reported speed and width + - scsi: megaraid_sas: Don't call disable_irq from process IRQ poll + - scsi: mpt3sas: Don't call disable_irq from IRQ poll handler + - soundwire: fix double free of dangling pointer + - Revert "kbuild: use -flive-patching when CONFIG_LIVEPATCH is enabled" + - interconnect: qcom: Fix small BW votes being truncated to zero + - padata: fix possible padata_works_lock deadlock + - drm/sun4i: Fix DE2 YVU handling + - drm/sun4i: backend: Support alpha property on lowest plane + - drm/sun4i: backend: Disable alpha on the lowest plane on the A20 + - KVM: arm64: Update page shift if stage 2 block mapping not supported + - ARM: dts: imx6sx: fix the pad QSPI1B_SCLK mux mode for uart3 + - mmc: sdhci-acpi: Clear amd_sdhci_host on reset + - mmc: sdhci-msm: Add retries when all tuning phases are found valid + - spi: stm32: Rate-limit the 'Communication suspended' message + - btrfs: fix NULL pointer dereference after failure to create snapshot + - i2c: npcm7xx: Fix timeout calculation + - block: restore a specific error code in bdev_del_partition + - seccomp: don't leak memory when filter install races + - nvme-fabrics: allow to queue requests for live queues + - spi: stm32: fix pm_runtime_get_sync() error checking + - block: Set same_page to false in __bio_try_merge_page if ret is false + - RDMA/rtrs-srv: Set .release function for rtrs srv device during device init + - IB/isert: Fix unaligned immediate-data handling + - ARM: dts: bcm: HR2: Fixed QSPI compatible string + - ARM: dts: NSP: Fixed QSPI compatible string + - ARM: dts: BCM5301X: Fixed QSPI compatible string + - arm64: dts: ns2: Fixed QSPI compatible string + - KVM: nVMX: Fix the update value of nested load IA32_PERF_GLOBAL_CTRL control + - KVM: x86: always allow writing '0' to MSR_KVM_ASYNC_PF_EN + - ARC: HSDK: wireup perf irq + - dmaengine: acpi: Put the CSRT table after using it + - MIPS: Loongson64: Do not override watch and ejtag feature + - netfilter: conntrack: allow sctp hearbeat after connection re-use + - netfilter: nft_set_rbtree: Detect partial overlap with start endpoint match + - drivers/net/wan/lapbether: Added needed_tailroom + - NFC: st95hf: Fix memleak in st95hf_in_send_cmd + - firestream: Fix memleak in fs_open + - scsi: qedf: Fix null ptr reference in qedf_stag_change_work + - ALSA: hda: Fix 2 channel swapping for Tegra + - ALSA: hda/tegra: Program WAKEEN register for Tegra + - drivers/dma/dma-jz4780: Fix race condition between probe and irq handler + - net: hns3: Fix for geneve tx checksum bug + - xfs: fix off-by-one in inode alloc block reservation calculation + - drivers/net/wan/lapbether: Set network_header before transmitting + - wireless: fix wrong 160/80+80 MHz setting + - mac80211: reduce packet loss event false positives + - cfg80211: Adjust 6 GHz frequency to channel conversion + - xfs: initialize the shortform attr header padding entry + - ARC: show_regs: fix r12 printing and simplify + - irqchip/eznps: Fix build error for !ARC700 builds + - media: gpio-ir-tx: spinlock is not needed to disable interrupts + - nvmet-tcp: Fix NULL dereference when a connect data comes in h2cdata pdu + - nvme-fabrics: don't check state NVME_CTRL_NEW for request acceptance + - nvme: have nvme_wait_freeze_timeout return if it timed out + - nvme-tcp: serialize controller teardown sequences + - nvme-tcp: fix timeout handler + - nvme-tcp: fix reset hang if controller died in the middle of a reset + - nvme-rdma: serialize controller teardown sequences + - nvme-rdma: fix timeout handler + - nvme-rdma: fix reset hang if controller died in the middle of a reset + - nvme-pci: cancel nvme device request before disabling + - HID: quirks: Set INCREMENT_USAGE_ON_DUPLICATE for all Saitek X52 devices + - HID: microsoft: Add rumble support for the 8bitdo SN30 Pro+ controller + - drivers/net/wan/hdlc_cisco: Add hard_header_len + - HID: elan: Fix memleak in elan_input_configured + - ARC: [plat-hsdk]: Switch ethernet phy-mode to rgmii-id + - cpufreq: intel_pstate: Refuse to turn off with HWP enabled + - cpufreq: intel_pstate: Fix intel_pstate_get_hwp_max() for turbo disabled + - arm64/module: set trampoline section flags regardless of + CONFIG_DYNAMIC_FTRACE + - ALSA: hda: hdmi - add Rocketlake support + - ALSA: hda: fix a runtime pm issue in SOF when integrated GPU is disabled + - ALSA: hda: use consistent HDAudio spelling in comments/docs + - drivers/net/wan/hdlc: Change the default of hard_header_len to 0 + - drm/amdgpu: Fix bug in reporting voltage for CIK + - iommu/amd: Do not force direct mapping when SME is active + - iommu/amd: Do not use IOMMUv2 functionality when SME is active + - gcov: Disable gcov build with GCC 10 + - iio: adc: mcp3422: fix locking scope + - iio: adc: mcp3422: fix locking on error path + - iio: adc: ti-ads1015: fix conversion when CONFIG_PM is not set + - iio: cros_ec: Set Gyroscope default frequency to 25Hz + - iio:light:ltr501 Fix timestamp alignment issue. + - iio:proximity:mb1232: Fix timestamp alignment and prevent data leak. + - iio:accel:bmc150-accel: Fix timestamp alignment and prevent data leak. + - iio:adc:ti-adc084s021 Fix alignment and data leak issues. + - iio:adc:ina2xx Fix timestamp alignment issue. + - iio:adc:max1118 Fix alignment of timestamp and data leak issues + - iio:adc:ti-adc081c Fix alignment and data leak issues + - iio:magnetometer:ak8975 Fix alignment and data leak issues. + - iio:light:max44000 Fix timestamp alignment and prevent data leak. + - iio:chemical:ccs811: Fix timestamp alignment and prevent data leak. + - iio: accel: kxsd9: Fix alignment of local buffer. + - iio:accel:mma7455: Fix timestamp alignment and prevent data leak. + - iio:accel:mma8452: Fix timestamp alignment and prevent data leak. + - staging: wlan-ng: fix out of bounds read in prism2sta_probe_usb() + - btrfs: require only sector size alignment for parent eb bytenr + - btrfs: fix lockdep splat in add_missing_dev + - btrfs: free data reloc tree on failed mount + - btrfs: fix wrong address when faulting in pages in the search ioctl + - thunderbolt: Disable ports that are not implemented + - kobject: Restore old behaviour of kobject_del(NULL) + - regulator: push allocation in regulator_init_coupling() outside of lock + - regulator: push allocations in create_regulator() outside of lock + - regulator: push allocation in set_consumer_device_supply() out of lock + - regulator: plug of_node leak in regulator_register()'s error path + - regulator: core: Fix slab-out-of-bounds in regulator_unlock_recursive() + - misc: eeprom: at24: register nvmem only after eeprom is ready to use + - scsi: target: iscsi: Fix data digest calculation + - scsi: lpfc: Fix setting IRQ affinity with an empty CPU mask + - scsi: target: iscsi: Fix hang in iscsit_access_np() when getting + tpg->np_login_sem + - drm/tve200: Stabilize enable/disable + - drm/msm: Split the a5xx preemption record + - drm/msm: Disable preemption on all 5xx targets + - drm/msm: Disable the RPTR shadow + - mmc: sdio: Use mmc_pre_req() / mmc_post_req() + - mmc: sdhci-of-esdhc: Don't walk device-tree on every interrupt + - nvme: Revert: Fix controller creation races with teardown flow + - rbd: require global CAP_SYS_ADMIN for mapping and unmapping + - RDMA/rxe: Fix the parent sysfs read when the interface has 15 chars + - RDMA/mlx4: Read pkey table length instead of hardcoded value + - fbcon: remove soft scrollback code + - fbcon: remove now unusued 'softback_lines' cursor() argument + - vgacon: remove software scrollback support + - KVM: VMX: Don't freeze guest when event delivery causes an APIC-access exit + - KVM: arm64: Do not try to map PUDs when they are folded into PMD + - kvm x86/mmu: use KVM_REQ_MMU_SYNC to sync when needed + - KVM: fix memory leak in kvm_io_bus_unregister_dev() + - Revert "usb: dwc3: meson-g12a: fix shared reset control use" + - debugfs: Fix module state check condition + - test_firmware: Test platform fw loading on non-EFI systems + - arm64: dts: imx8mp: correct sdma1 clk setting + - ARM: dts: vfxxx: Add syscon compatible with OCOTP + - video: fbdev: fix OOB read in vga_8planes_imageblit() + - staging: greybus: audio: fix uninitialized value issue + - phy: qcom-qmp: Use correct values for ipq8074 PCIe Gen2 PHY init + - usb: core: fix slab-out-of-bounds Read in read_descriptors + - USB: serial: ftdi_sio: add IDs for Xsens Mti USB converter + - USB: serial: option: support dynamic Quectel USB compositions + - USB: serial: option: add support for SIM7070/SIM7080/SIM7090 modules + - usb: Fix out of sync data toggle if a configured device is reconfigured + - usb: typec: ucsi: acpi: Check the _DEP dependencies + - usb: typec: intel_pmc_mux: Un-register the USB role switch + - usb: typec: intel_pmc_mux: Do not configure Altmode HPD High + - usb: typec: intel_pmc_mux: Do not configure SBU and HSL Orientation in + Alternate modes + - drm/msm/gpu: make ringbuffer readonly + - gcov: add support for GCC 10.1 + - Linux 5.8.10 + - [Config] GCC version update + - [Config] updateconfigs following v5.8.10 import + + * Wakeup the system by touching the touchpad (LP: #1888331) + - HID: i2c-hid: Enable wakeup capability from Suspend-to-Idle + + * Fix non-working NVMe after S3 (LP: #1895718) + - SAUCE: PCI: Enable ACS quirk on CML root port + + * Thunderbolt3 daisy chain sometimes doesn't work (LP: #1895606) + - thunderbolt: Retry DROM read once if parsing fails + + * Groovy update: v5.8.9 upstream stable release (LP: #1895634) + - io_uring: fix cancel of deferred reqs with ->files + - io_uring: fix linked deferred ->files cancellation + - RDMA/cma: Simplify DEVICE_REMOVAL for internal_id + - RDMA/cma: Using the standard locking pattern when delivering the removal + event + - RDMA/cma: Remove unneeded locking for req paths + - RDMA/cma: Execute rdma_cm destruction from a handler properly + - ipv4: Silence suspicious RCU usage warning + - ipv6: Fix sysctl max for fib_multipath_hash_policy + - netlabel: fix problems with mapping removal + - net: usb: dm9601: Add USB ID of Keenetic Plus DSL + - sctp: not disable bh in the whole sctp_get_port_local() + - taprio: Fix using wrong queues in gate mask + - tipc: fix shutdown() of connectionless socket + - tipc: fix using smp_processor_id() in preemptible + - net: disable netpoll on fresh napis + - mptcp: free acked data before waiting for more memory + - Linux 5.8.9 + + * Miscellaneous Ubuntu changes + - SAUCE: Revert "selftests/bpf: Fix btf_dump test cases on 32-bit arches" + - [Config] annotations: remove VGACON_SOFT_SCROLLBACK + - packaging: arm64: add a 64KB mem pages flavour called 'generic-64k' + - packaging: arm64: generic-64k: skip ABI, modules and retpoline checks + + * Miscellaneous upstream changes + - tty: hvcs: Don't NULL tty->driver_data until hvcs_cleanup() + + -- Seth Forshee Tue, 22 Sep 2020 15:13:52 -0500 + +linux (5.8.0-19.20) groovy; urgency=medium + + * groovy/linux: 5.8.0-19.20 -proposed tracker (LP: #1895120) + + * Please switch default, hwe, oem kernel flavours governor to + CONFIG_CPU_FREQ_DEFAULT_GOV_ONDEMAND=y , such that advanced userspace + utilities such as game-mode can be later used to rev-up to to performance, + or rev-down to powersave. (LP: #1885730) + - [Config] Set the default CPU governor to ONDEMAND + + * Packaging resync (LP: #1786013) + - update dkms package versions + - [Packaging] update variants + + * [WD19TB] external DP failed with DRM error message (LP: #1886165) + - drm/i915/tgl+: Use the correct DP_TP_* register instances in MST encoders + - drm/i915/tgl+: Fix TBT DPLL fractional divider for 38.4MHz ref clock + + * Groovy update: v5.8.8 upstream stable release (LP: #1895097) + - hwmon: (pmbus/isl68137) remove READ_TEMPERATURE_1 telemetry for RAA228228 + - HID: quirks: Always poll three more Lenovo PixArt mice + - drm/msm/dpu: Fix reservation failures in modeset + - drm/msm/dpu: Fix scale params in plane validation + - drm/msm/dpu: fix unitialized variable error + - tty: serial: qcom_geni_serial: Drop __init from qcom_geni_console_setup + - drm/msm: add shutdown support for display platform_driver + - hwmon: (applesmc) check status earlier. + - nvmet: Disable keep-alive timer when kato is cleared to 0h + - drm/msm: enable vblank during atomic commits + - habanalabs: unmap PCI bars upon iATU failure + - habanalabs: validate packet id during CB parse + - habanalabs: set clock gating according to mask + - habanalabs: proper handling of alloc size in coresight + - habanalabs: set max power according to card type + - habanalabs: validate FW file size + - habanalabs: check correct vmalloc return code + - drm/msm/a6xx: fix gmu start on newer firmware + - gfs2: add some much needed cleanup for log flushes that fail + - hv_utils: return error if host timesysnc update is stale + - hv_utils: drain the timesync packets on onchannelcallback + - ceph: don't allow setlease on cephfs + - i2c: iproc: Fix shifting 31 bits + - drm/omap: fix incorrect lock state + - irqchip/ingenic: Leave parent IRQ unmasked on suspend + - cpuidle: Fixup IRQ state + - nbd: restore default timeout when setting it to zero + - s390: don't trace preemption in percpu macros + - drm/amd/display: should check error using DC_OK + - drm/amd/display: Reject overlay plane configurations in multi-display + scenarios + - drivers: gpu: amd: Initialize amdgpu_dm_backlight_caps object to 0 in + amdgpu_dm_update_backlight_caps + - drm/amd/display: Revert HDCP disable sequence change + - drm/amd/display: Fix passive dongle mistaken as active dongle in EDID + emulation + - drm/amd/display: Keep current gain when ABM disable immediately + - drm/amd/display: Retry AUX write when fail occurs + - drm/amd/display: Fix memleak in amdgpu_dm_mode_config_init + - xen/xenbus: Fix granting of vmalloc'd memory + - fsldma: fix very broken 32-bit ppc ioread64 functionality + - dmaengine: of-dma: Fix of_dma_router_xlate's of_dma_xlate handling + - batman-adv: Avoid uninitialized chaddr when handling DHCP + - batman-adv: Fix own OGM check in aggregated OGMs + - batman-adv: bla: use netif_rx_ni when not in interrupt context + - dmaengine: at_hdmac: check return value of of_find_device_by_node() in + at_dma_xlate() + - dmaengine: at_hdmac: add missing put_device() call in at_dma_xlate() + - dmaengine: at_hdmac: add missing kfree() call in at_dma_xlate() + - rxrpc: Keep the ACK serial in a var in rxrpc_input_ack() + - rxrpc: Fix loss of RTT samples due to interposed ACK + - rxrpc: Make rxrpc_kernel_get_srtt() indicate validity + - MIPS: mm: BMIPS5000 has inclusive physical caches + - MIPS: BMIPS: Also call bmips_cpu_setup() for secondary cores + - mmc: sdhci-acpi: Fix HS400 tuning for AMDI0040 + - perf sched timehist: Fix use of CPU list with summary option + - perf top: Skip side-band event setup if HAVE_LIBBPF_SUPPORT is not set + - netfilter: nf_tables: add NFTA_SET_USERDATA if not null + - netfilter: nf_tables: incorrect enum nft_list_attributes definition + - netfilter: nf_tables: fix destination register zeroing + - net: hns: Fix memleak in hns_nic_dev_probe + - net: systemport: Fix memleak in bcm_sysport_probe + - ravb: Fixed to be able to unload modules + - net: arc_emac: Fix memleak in arc_mdio_probe + - bpf: Fix a buffer out-of-bound access when filling raw_tp link_info + - dmaengine: pl330: Fix burst length if burst size is smaller than bus width + - dmaengine: ti: k3-udma: Fix the TR initialization for prep_slave_sg + - gtp: add GTPA_LINK info to msg sent to userspace + - net: ethernet: ti: cpsw: fix clean up of vlan mc entries for host port + - net: ethernet: ti: cpsw_new: fix clean up of vlan mc entries for host port + - bnxt_en: Don't query FW when netif_running() is false. + - bnxt_en: Check for zero dir entries in NVRAM. + - bnxt_en: Fix ethtool -S statitics with XDP or TCs enabled. + - bnxt_en: Fix PCI AER error recovery flow + - bnxt_en: Fix possible crash in bnxt_fw_reset_task(). + - bnxt_en: fix HWRM error when querying VF temperature + - xfs: finish dfops on every insert range shift iteration + - xfs: fix boundary test in xfs_attr_shortform_verify + - bnxt: don't enable NAPI until rings are ready + - media: vicodec: add missing v4l2_ctrl_request_hdl_put() + - media: cedrus: Add missing v4l2_ctrl_request_hdl_put() + - net: ethernet: ti: cpsw_new: fix error handling in + cpsw_ndo_vlan_rx_kill_vid() + - media: i2c: imx214: select V4L2_FWNODE + - selftests/bpf: Fix massive output from test_maps + - net: dsa: mt7530: fix advertising unsupported 1000baseT_Half + - netfilter: nfnetlink: nfnetlink_unicast() reports EAGAIN instead of ENOBUFS + - nvmet-fc: Fix a missed _irqsave version of spin_lock in + 'nvmet_fc_fod_op_done()' + - nvme: fix controller instance leak + - netfilter: conntrack: do not auto-delete clash entries on reply + - opp: Don't drop reference for an OPP table that was never parsed + - cxgb4: fix thermal zone device registration + - net: ethernet: ti: am65-cpsw: fix rmii 100Mbit link mode + - MIPS: perf: Fix wrong check condition of Loongson event IDs + - block: fix locking in bdev_del_partition + - perf top/report: Fix infinite loop in the TUI for grouped events + - perf cs-etm: Fix corrupt data after perf inject from + - perf intel-pt: Fix corrupt data after perf inject from + - perf tools: Correct SNOOPX field offset + - net: ethernet: mlx4: Fix memory allocation in mlx4_buddy_init() + - fix regression in "epoll: Keep a reference on files added to the check list" + - net: bcmgenet: fix mask check in bcmgenet_validate_flow() + - net: gemini: Fix another missing clk_disable_unprepare() in probe + - nfp: flower: fix ABI mismatch between driver and firmware + - net: dp83867: Fix WoL SecureOn password + - MIPS: add missing MSACSR and upper MSA initialization + - MIPS: SNI: Fix SCSI interrupt + - xfs: fix xfs_bmap_validate_extent_raw when checking attr fork of rt files + - perf jevents: Fix suspicious code in fixregex() + - perf stat: Turn off summary for interval mode by default + - perf bench: The do_run_multi_threaded() function must use + IS_ERR(perf_session__new()) + - tg3: Fix soft lockup when tg3_reset_task() fails. + - x86, fakenuma: Fix invalid starting node ID + - iommu/vt-d: Serialize IOMMU GCMD register modifications + - thermal: ti-soc-thermal: Fix bogus thermal shutdowns for omap4430 + - thermal: qcom-spmi-temp-alarm: Don't suppress negative temp + - iommu/amd: Restore IRTE.RemapEn bit after programming IRTE + - iommu/amd: Use cmpxchg_double() when updating 128-bit IRTE + - include/linux/log2.h: add missing () around n in roundup_pow_of_two() + - iommu/vt-d: Handle 36bit addressing for x86-32 + - tracing/kprobes, x86/ptrace: Fix regs argument order for i386 + - x86/entry: Fix AC assertion + - x86/debug: Allow a single level of #DB recursion + - ext2: don't update mtime on COW faults + - xfs: don't update mtime on COW faults + - ARC: perf: don't bail setup if pct irq missing in device-tree + - arc: fix memory initialization for systems with two memory banks + - btrfs: drop path before adding new uuid tree entry + - btrfs: fix potential deadlock in the search ioctl + - btrfs: allocate scrub workqueues outside of locks + - btrfs: set the correct lockdep class for new nodes + - btrfs: set the lockdep class for log tree extent buffers + - btrfs: block-group: fix free-space bitmap threshold + - btrfs: tree-checker: fix the error message for transid error + - Bluetooth: Return NOTIFY_DONE for hci_suspend_notifier + - x86/mm/32: Bring back vmalloc faulting on x86_32 + - Revert "ALSA: hda: Add support for Loongson 7A1000 controller" + - ALSA: ca0106: fix error code handling + - ALSA: usb-audio: Add basic capture support for Pioneer DJ DJM-250MK2 + - ALSA: usb-audio: Add implicit feedback quirk for UR22C + - ALSA: pcm: oss: Remove superfluous WARN_ON() for mulaw sanity check + - ALSA: hda/hdmi: always check pin power status in i915 pin fixup + - ALSA: firewire-digi00x: exclude Avid Adrenaline from detection + - ALSA: hda - Fix silent audio output and corrupted input on MSI X570-A PRO + - ALSA; firewire-tascam: exclude Tascam FE-8 from detection + - ALSA: hda/realtek: Add quirk for Samsung Galaxy Book Ion NT950XCJ-X716A + - ALSA: hda/realtek - Improved routing for Thinkpad X1 7th/8th Gen + - arm64: dts: mt7622: add reset node for mmc device + - mmc: mediatek: add optional module reset property + - mmc: dt-bindings: Add resets/reset-names for Mediatek MMC bindings + - mmc: sdhci-pci: Fix SDHCI_RESET_ALL for CQHCI for Intel GLK-based + controllers + - media: rc: do not access device via sysfs after rc_unregister_device() + - media: rc: uevent sysfs file races with rc_unregister_device() + - affs: fix basic permission bits to actually work + - block: allow for_each_bvec to support zero len bvec + - block: ensure bdi->io_pages is always initialized + - io_uring: set table->files[i] to NULL when io_sqe_file_register failed + - io_uring: fix removing the wrong file in __io_sqe_files_update() + - s390: fix GENERIC_LOCKBREAK dependency typo in Kconfig + - libata: implement ATA_HORKAGE_MAX_TRIM_128M and apply to Sandisks + - mips/oprofile: Fix fallthrough placement + - blk-iocost: ioc_pd_free() shouldn't assume irq disabled + - blk-stat: make q->stats->lock irqsafe + - dmaengine: dw-edma: Fix scatter-gather address calculation + - drm/i915: Fix sha_text population code + - drm/amd/pm: avoid false alarm due to confusing softwareshutdowntemp setting + - drm/amdgpu: Specify get_argument function for ci_smu_funcs + - dm writecache: handle DAX to partitions on persistent memory correctly + - dm mpath: fix racey management of PG initialization + - dm integrity: fix error reporting in bitmap mode after creation + - dm crypt: Initialize crypto wait structures + - dm cache metadata: Avoid returning cmd->bm wild pointer on error + - dm thin metadata: Avoid returning cmd->bm wild pointer on error + - dm thin metadata: Fix use-after-free in dm_bm_set_read_only + - mm: slub: fix conversion of freelist_corrupted() + - mm: track page table modifications in __apply_to_page_range() + - mm: madvise: fix vma user-after-free + - mm/rmap: fixup copying of soft dirty and uffd ptes + - io_uring: no read/write-retry on -EAGAIN error and O_NONBLOCK marked file + - perf record: Correct the help info of option "--no-bpf-event" + - kconfig: streamline_config.pl: check defined(ENV variable) before using it + - sdhci: tegra: Add missing TMCLK for data timeout + - checkpatch: fix the usage of capture group ( ... ) + - mm/migrate: fixup setting UFFD_WP flag + - mm/hugetlb: try preferred node first when alloc gigantic page from cma + - mm/hugetlb: fix a race between hugetlb sysctl handlers + - mm/khugepaged.c: fix khugepaged's request size in collapse_file + - cfg80211: regulatory: reject invalid hints + - net: usb: Fix uninit-was-stored issue in asix_read_phy_addr() + - Linux 5.8.8 + + * Groovy update: v5.8.7 upstream stable release (LP: #1894959) + - HID: core: Correctly handle ReportSize being zero + - HID: core: Sanitize event code and type when mapping input + - netfilter: nft_set_rbtree: Handle outcomes of tree rotations in overlap + detection + - mm: fix pin vs. gup mismatch with gate pages + - selftests/x86/test_vsyscall: Improve the process_vm_readv() test + - perf record/stat: Explicitly call out event modifiers in the documentation + - media: media/v4l2-core: Fix kernel-infoleak in video_put_user() + - KVM: arm64: Add kvm_extable for vaxorcism code + - KVM: arm64: Survive synchronous exceptions caused by AT instructions + - dt-bindings: mmc: tegra: Add tmclk for Tegra210 and later + - arm64: tegra: Add missing timeout clock to Tegra194 SDMMC nodes + - arm64: tegra: Add missing timeout clock to Tegra186 SDMMC nodes + - arm64: tegra: Add missing timeout clock to Tegra210 SDMMC + - sdhci: tegra: Remove SDHCI_QUIRK_DATA_TIMEOUT_USES_SDCLK for Tegra210 + - sdhci: tegra: Remove SDHCI_QUIRK_DATA_TIMEOUT_USES_SDCLK for Tegra186 + - nl80211: fix NL80211_ATTR_HE_6GHZ_CAPABILITY usage + - scsi: target: tcmu: Optimize use of flush_dcache_page + - Linux 5.8.7 + + * Groovy update: v5.8.6 upstream stable release (LP: #1894956) + - Revert "UBUNTU: SAUCE: Revert "ARM64: vdso32: Install vdso32 from + vdso_install"" + - khugepaged: khugepaged_test_exit() check mmget_still_valid() + - ASoC: intel/skl/hda - fix probe regression on systems without i915 + - ALSA: pci: delete repeated words in comments + - drm/amdgpu: fix RAS memory leak in error case + - EDAC/mc: Call edac_inc_ue_error() before panic + - ASoC: img: Fix a reference count leak in img_i2s_in_set_fmt + - ASoC: img-parallel-out: Fix a reference count leak + - ASoC: tegra: Fix reference count leaks. + - mfd: intel-lpss: Add Intel Emmitsburg PCH PCI IDs + - arm64: dts: qcom: msm8916: Pull down PDM GPIOs during sleep + - powerpc/xive: Ignore kmemleak false positives + - media: pci: ttpci: av7110: fix possible buffer overflow caused by bad DMA + value in debiirq() + - gcc-plugins/stackleak: Don't instrument itself + - blktrace: ensure our debugfs dir exists + - staging: rts5208: fix memleaks on error handling paths in probe + - scsi: target: tcmu: Fix crash on ARM during cmd completion + - mfd: intel-lpss: Add Intel Tiger Lake PCH-H PCI IDs + - iommu/iova: Don't BUG on invalid PFNs + - platform/chrome: cros_ec_sensorhub: Fix EC timestamp overflow + - drm/amdkfd: Fix reference count leaks. + - drm/radeon: fix multiple reference count leak + - drm/amdgpu: fix ref count leak in amdgpu_driver_open_kms + - drm/amd/display: fix ref count leak in amdgpu_drm_ioctl + - drm/amdgpu: fix ref count leak in amdgpu_display_crtc_set_config + - drm/amdgpu/display: fix ref count leak when pm_runtime_get_sync fails + - drm/amdgpu/fence: fix ref count leak when pm_runtime_get_sync fails + - drm/amdkfd: fix ref count leak when pm_runtime_get_sync fails + - drm/amdgpu/pm: fix ref count leak when pm_runtime_get_sync fails + - scsi: lpfc: Fix shost refcount mismatch when deleting vport + - xfs: Don't allow logging of XFS_ISTALE inodes + - scsi: target: Fix xcopy sess release leak + - selftests/powerpc: Purge extra count_pmc() calls of ebb selftests + - f2fs: remove write attribute of main_blkaddr sysfs node + - f2fs: fix error path in do_recover_data() + - MIPS: KVM: Limit Trap-and-Emulate to MIPS32R2 only + - omapfb: fix multiple reference count leaks due to pm_runtime_get_sync + - PCI: Fix pci_create_slot() reference count leak + - ARM: dts: ls1021a: output PPS signal on FIPER2 + - rtlwifi: rtl8192cu: Prevent leaking urb + - mips/vdso: Fix resource leaks in genvdso.c + - ALSA: hda: Add support for Loongson 7A1000 controller + - gpu: host1x: Put gather's BO on pinning error + - cec-api: prevent leaking memory through hole in structure + - ASoC: Intel: sof_sdw_rt711: remove properties in card remove + - HID: quirks: add NOGET quirk for Logitech GROUP + - f2fs: fix use-after-free issue + - drm/nouveau/drm/noveau: fix reference count leak in nouveau_fbcon_open + - drm/nouveau: fix reference count leak in nv50_disp_atomic_commit + - drm/nouveau: Fix reference count leak in nouveau_connector_detect + - locking/lockdep: Fix overflow in presentation of average lock-time + - btrfs: file: reserve qgroup space after the hole punch range is locked + - btrfs: make btrfs_qgroup_check_reserved_leak take btrfs_inode + - scsi: iscsi: Do not put host in iscsi_set_flashnode_param() + - netfilter: nf_tables: report EEXIST on overlaps + - ceph: fix potential mdsc use-after-free crash + - ceph: do not access the kiocb after aio requests + - scsi: fcoe: Memory leak fix in fcoe_sysfs_fcf_del() + - i2c: i801: Add support for Intel Tiger Lake PCH-H + - EDAC/ie31200: Fallback if host bridge device is already initialized + - hugetlbfs: prevent filesystem stacking of hugetlbfs + - media: davinci: vpif_capture: fix potential double free + - media: i2c: imx290: fix reset GPIO pin handling + - drm/amd/display: change global buffer to local buffer + - drm/amd/display: fix compilation error on allmodconfig + - KVM: arm64: Fix symbol dependency in __hyp_call_panic_nvhe + - powerpc/spufs: add CONFIG_COREDUMP dependency + - dmaengine: idxd: fix PCI_MSI build errors + - USB: sisusbvga: Fix a potential UB casued by left shifting a negative value + - mmc: sdhci-of-arasan: fix timings allocation code + - brcmfmac: Set timeout value when configuring power save + - pinctrl: mediatek: avoid virtual gpio trying to set reg + - pinctrl: mediatek: fix build for tristate changes + - efi: provide empty efi_enter_virtual_mode implementation + - arm64: Fix __cpu_logical_map undefined issue + - net: openvswitch: introduce common code for flushing flows + - PCI: qcom: Add missing ipq806x clocks in PCIe driver + - PCI: qcom: Change duplicate PCI reset to phy reset + - PCI: qcom: Add missing reset for ipq806x + - PM / devfreq: Fix the wrong end with semicolon + - cpufreq: intel_pstate: Fix EPP setting via sysfs in active mode + - ALSA: usb-audio: Add capture support for Saffire 6 (USB 1.1) + - nfsd: fix oops on mixed NFSv4/NFSv3 client access + - block: respect queue limit of max discard segment + - block: virtio_blk: fix handling single range discard request + - drm/msm/adreno: fix updating ring fence + - block: Fix page_is_mergeable() for compound pages + - bfq: fix blkio cgroup leakage v4 + - hwmon: (nct7904) Correct divide by 0 + - blk-mq: insert request not through ->queue_rq into sw/scheduler queue + - blkcg: fix memleak for iolatency + - nvmet: fix a memory leak + - nvme-fc: Fix wrong return value in __nvme_fc_init_request() + - nvme: multipath: round-robin: fix single non-optimized path case + - null_blk: fix passing of REQ_FUA flag in null_handle_rq + - habanalabs: Fix memory corruption in debugfs + - drm/etnaviv: always start/stop scheduler in timeout processing + - i2c: core: Don't fail PRP0001 enumeration when no ID table exist + - i2c: rcar: in slave mode, clear NACK earlier + - vdpa: ifcvf: return err when fail to request config irq + - vdpa: ifcvf: free config irq in ifcvf_free_irq() + - usb: gadget: f_tcm: Fix some resource leaks in some error paths + - video: fbdev: controlfb: Fix build for COMPILE_TEST=y && PPC_PMAC=n + - spi: stm32: clear only asserted irq flags on interrupt + - jbd2: make sure jh have b_transaction set in refile/unfile_buffer + - ext4: don't BUG on inconsistent journal feature + - ext4: handle read only external journal device + - ext4: skip non-loaded groups at cr=0/1 when scanning for good groups + - drm/virtio: fix memory leak in virtio_gpu_cleanup_object() + - ext4: abort the filesystem if failed to async write metadata buffer + - jbd2: abort journal if free a async write error metadata buffer + - ext4: handle option set by mount flags correctly + - ext4: handle error of ext4_setup_system_zone() on remount + - ext4: correctly restore system zone info when remount fails + - fs: prevent BUG_ON in submit_bh_wbc() + - spi: stm32h7: fix race condition at end of transfer + - spi: stm32: fix fifo threshold level in case of short transfer + - spi: stm32: fix stm32_spi_prepare_mbr in case of odd clk_rate + - spi: stm32: always perform registers configuration prior to transfer + - drm/amd/powerplay: correct Vega20 cached smu feature state + - drm/amd/powerplay: correct UVD/VCE PG state on custom pptable uploading + - drm/amd/display: Fix LFC multiplier changing erratically + - drm/amd/display: Switch to immediate mode for updating infopackets + - selftests/bpf: Fix segmentation fault in test_progs + - netfilter: avoid ipv6 -> nf_defrag_ipv6 module dependency + - libbpf: Prevent overriding errno when logging errors + - tools/bpftool: Fix compilation warnings in 32-bit mode + - selftest/bpf: Fix compilation warnings in 32-bit mode + - selftests/bpf: Fix btf_dump test cases on 32-bit arches + - selftests/bpf: Correct various core_reloc 64-bit assumptions + - can: j1939: transport: j1939_xtp_rx_dat_one(): compare own packets to detect + corruptions + - dma-pool: fix coherent pool allocations for IOMMU mappings + - dma-pool: Only allocate from CMA when in same memory zone + - drivers/net/wan/hdlc_x25: Added needed_headroom and a skb->len check + - ALSA: hda/realtek: Add model alc298-samsung-headphone + - s390/cio: add cond_resched() in the slow_eval_known_fn() loop + - ASoC: wm8994: Avoid attempts to read unreadable registers + - ALSA: usb-audio: ignore broken processing/extension unit + - selftests: disable rp_filter for icmp_redirect.sh + - scsi: fcoe: Fix I/O path allocation + - scsi: ufs: Fix possible infinite loop in ufshcd_hold + - scsi: ufs: Improve interrupt handling for shared interrupts + - scsi: ufs: Clean up completed request without interrupt notification + - scsi: scsi_debug: Fix scp is NULL errors + - scsi: qla2xxx: Flush all sessions on zone disable + - scsi: qla2xxx: Flush I/O on zone disable + - scsi: qla2xxx: Indicate correct supported speeds for Mezz card + - scsi: qla2xxx: Fix login timeout + - scsi: qla2xxx: Check if FW supports MQ before enabling + - scsi: qla2xxx: Fix null pointer access during disconnect from subsystem + - Revert "scsi: qla2xxx: Fix crash on qla2x00_mailbox_command" + - macvlan: validate setting of multiple remote source MAC addresses + - net: gianfar: Add of_node_put() before goto statement + - drm/amdgpu: fix NULL pointer access issue when unloading driver + - drm/amdkfd: fix the wrong sdma instance query for renoir + - bpf: Fix a rcu_sched stall issue with bpf task/task_file iterator + - bpf: Avoid visit same object multiple times + - ext4: limit the length of per-inode prealloc list + - powerpc/perf: Fix soft lockups due to missed interrupt accounting + - libbpf: Fix map index used in error message + - bpf: selftests: global_funcs: Check err_str before strstr + - arm64: Move handling of erratum 1418040 into C code + - arm64: Allow booting of late CPUs affected by erratum 1418040 + - hwmon: (gsc-hwmon) Scale temperature to millidegrees + - block: fix get_max_io_size() + - block: loop: set discard granularity and alignment for block device backed + loop + - blk-mq: order adding requests to hctx->dispatch and checking SCHED_RESTART + - btrfs: reset compression level for lzo on remount + - btrfs: check the right error variable in btrfs_del_dir_entries_in_log + - btrfs: fix space cache memory leak after transaction abort + - btrfs: detect nocow for swap after snapshot delete + - fbcon: prevent user font height or width change from causing potential out- + of-bounds access + - USB: lvtest: return proper error code in probe + - vt: defer kfree() of vc_screenbuf in vc_do_resize() + - vt_ioctl: change VT_RESIZEX ioctl to check for error return from vc_resize() + - serial: samsung: Removes the IRQ not found warning + - serial: pl011: Fix oops on -EPROBE_DEFER + - serial: pl011: Don't leak amba_ports entry on driver register error + - serial: stm32: avoid kernel warning on absence of optional IRQ + - serial: 8250_exar: Fix number of ports for Commtech PCIe cards + - serial: 8250: change lock order in serial8250_do_startup() + - io_uring: clear req->result on IOPOLL re-issue + - writeback: Protect inode->i_io_list with inode->i_lock + - writeback: Avoid skipping inode writeback + - writeback: Fix sync livelock due to b_dirty_time processing + - XEN uses irqdesc::irq_data_common::handler_data to store a per interrupt XEN + data pointer which contains XEN specific information. + - usb: renesas-xhci: remove version check + - usb: host: xhci-tegra: otg usb2/usb3 port init + - usb: host: xhci-tegra: fix tegra_xusb_get_phy() + - usb: host: xhci: fix ep context print mismatch in debugfs + - xhci: Always restore EP_SOFT_CLEAR_TOGGLE even if ep reset failed + - io-wq: fix hang after cancelling pending hashed work + - KVM: arm64: Set HCR_EL2.PTW to prevent AT taking synchronous exception + - arm64: vdso32: make vdso32 install conditional + - PM: sleep: core: Fix the handling of pending runtime resume requests + - powerpc/32s: Disable VMAP stack which CONFIG_ADB_PMU + - powerpc/perf: Fix crashes with generic_compat_pmu & BHRB + - device property: Fix the secondary firmware node handling in + set_primary_fwnode() + - crypto: af_alg - Work around empty control messages without MSG_MORE + - usbip: Implement a match function to fix usbip + - genirq/matrix: Deal with the sillyness of for_each_cpu() on UP + - irqchip/stm32-exti: Avoid losing interrupts due to clearing pending bits by + mistake + - x86/irq: Unbreak interrupt affinity setting + - x86/hotplug: Silence APIC only after all interrupts are migrated + - drm/i915: Fix cmd parser desc matching with masks + - drm/etnaviv: fix external abort seen on GC600 rev 0x19 + - drm/dp_mst: Don't return error code when crtc is null + - drm/modeset-lock: Take the modeset BKL for legacy drivers + - drm/amdgpu: Fix buffer overflow in INFO ioctl + - drm/amd/display: use correct scale for actual_brightness + - drm/amdgpu/gfx10: refine mgcg setting + - drm/amd/powerplay: Fix hardmins not being sent to SMU for RV + - drm/amd/pm: correct Vega10 swctf limit setting + - drm/amd/pm: correct Vega12 swctf limit setting + - drm/amd/pm: correct Vega20 swctf limit setting + - drm/amd/pm: correct the thermal alert temperature limit settings + - USB: yurex: Fix bad gfp argument + - usb: uas: Add quirk for PNY Pro Elite + - USB: quirks: Ignore duplicate endpoint on Sound Devices MixPre-D + - USB: Ignore UAS for JMicron JMS567 ATA/ATAPI Bridge + - usb: host: ohci-exynos: Fix error handling in exynos_ohci_probe() + - USB: gadget: u_f: add overflow checks to VLA macros + - USB: gadget: f_ncm: add bounds checks to ncm_unwrap_ntb() + - USB: gadget: u_f: Unbreak offset calculation in VLAs + - usb: dwc3: gadget: Don't setup more than requested + - usb: dwc3: gadget: Fix handling ZLP + - usb: dwc3: gadget: Handle ZLP for sg requests + - USB: cdc-acm: rework notification_buffer resizing + - usb: storage: Add unusual_uas entry for Sony PSZ drives + - USB: Also match device drivers using the ->match vfunc + - USB: Fix device driver race + - usb: typec: ucsi: Fix AB BA lock inversion + - usb: typec: ucsi: Fix 2 unlocked ucsi_run_command calls + - usb: typec: ucsi: Rework ppm_lock handling + - usb: typec: ucsi: Hold con->lock for the entire duration of + ucsi_register_port() + - usb: typec: tcpm: Fix Fix source hard reset response for TDA 2.3.1.1 and TDA + 2.3.1.2 failures + - io_uring: don't recurse on tsk->sighand->siglock with signalfd + - io_uring: don't use poll handler if file can't be nonblocking read/written + - io_uring: make offset == -1 consistent with preadv2/pwritev2 + - drm/atomic-helper: reset vblank on crtc reset + - fbmem: pull fbcon_update_vcs() out of fb_set_var() + - mm/page_counter: fix various data races at memsw + - HID: hiddev: Fix slab-out-of-bounds write in hiddev_ioctl_usage() + - drm/vmwgfx/stdu: Use drm_mode_config_reset + - drm/vmwgfx/sou: Use drm_mode_config_reset + - drm/vmwgfx/ldu: Use drm_mode_config_reset + - dma-pool: Fix an uninitialized variable bug in atomic_pool_expand() + - ALSA: usb-audio: Update documentation comment for MS2109 quirk + - Linux 5.8.6 + - [Config] GCC version update + + * DELL LATITUDE 5491 touchscreen doesn't work (LP: #1889446) // Groovy update: + v5.8.6 upstream stable release (LP: #1894956) + - USB: quirks: Add no-lpm quirk for another Raydium touchscreen + + * [NUC8CCHK][HDA-Intel - HDA Intel PCH, playback] No sound at all + (LP: #1875199) // Groovy update: v5.8.6 upstream stable release + (LP: #1894956) + - ALSA: hda/realtek: Fix pin default on Intel NUC 8 Rugged + + * CVE-2020-14386 + - net/packet: fix overflow in tpacket_rcv + + * dkms-build: downloads fail in private PPAs (LP: #1883874) + - dkms-build: apt-cache policy elides username:password information + + * Groovy update: v5.8.5 upstream stable release (LP: #1893237) + - gre6: Fix reception with IP6_TNL_F_RCV_DSCP_COPY + - net: Fix potential wrong skb->protocol in skb_vlan_untag() + - net: nexthop: don't allow empty NHA_GROUP + - net: qrtr: fix usage of idr in port assignment to socket + - net/sched: act_ct: Fix skb double-free in tcf_ct_handle_fragments() error + flow + - net: sctp: Fix negotiation of the number of data streams. + - net/smc: Prevent kernel-infoleak in __smc_diag_dump() + - tipc: call rcu_read_lock() in tipc_aead_encrypt_done() + - tipc: fix uninit skb->data in tipc_nl_compat_dumpit() + - net: ena: Make missed_tx stat incremental + - ethtool: Fix preserving of wanted feature bits in netlink interface + - ethtool: Account for hw_features in netlink interface + - ethtool: Don't omit the netlink reply if no features were changed + - netlink: fix state reallocation in policy export + - io_uring: fix missing ->mm on exit + - binfmt_flat: revert "binfmt_flat: don't offset the data start" + - Linux 5.8.5 + + * Miscellaneous Ubuntu changes + - [Config] Re-enable UEFI signing for arm64 + - SAUCE: Revert "UBUNTU: SAUCE: export __get_vm_area_caller() and + map_kernel_range()" + + -- Paolo Pisati Thu, 10 Sep 2020 22:15:09 +0200 + +linux (5.8.0-18.19) groovy; urgency=medium + + * groovy/linux: 5.8.0-18.19 -proposed tracker (LP: #1893047) + + * Packaging resync (LP: #1786013) + - update dkms package versions + + * Groovy update: v5.8.4 upstream stable release (LP: #1893048) + - drm/vgem: Replace opencoded version of drm_gem_dumb_map_offset() + - drm/panel-simple: Fix inverted V/H SYNC for Frida FRD350H54004 panel + - drm/ast: Remove unused code paths for AST 1180 + - drm/ast: Initialize DRAM type before posting GPU + - khugepaged: adjust VM_BUG_ON_MM() in __khugepaged_enter() + - ALSA: hda: avoid reset of sdo_limit + - ALSA: hda/realtek: Add quirk for Samsung Galaxy Flex Book + - ALSA: hda/realtek: Add quirk for Samsung Galaxy Book Ion + - can: j1939: transport: j1939_session_tx_dat(): fix use-after-free read in + j1939_tp_txtimer() + - can: j1939: socket: j1939_sk_bind(): make sure ml_priv is allocated + - spi: Prevent adding devices below an unregistering controller + - io_uring: find and cancel head link async work on files exit + - mm/vunmap: add cond_resched() in vunmap_pmd_range + - romfs: fix uninitialized memory leak in romfs_dev_read() + - kernel/relay.c: fix memleak on destroy relay channel + - uprobes: __replace_page() avoid BUG in munlock_vma_page() + - squashfs: avoid bio_alloc() failure with 1Mbyte blocks + - mm: include CMA pages in lowmem_reserve at boot + - mm, page_alloc: fix core hung in free_pcppages_bulk() + - ASoC: amd: renoir: restore two more registers during resume + - RDMA/hfi1: Correct an interlock issue for TID RDMA WRITE request + - opp: Enable resources again if they were disabled earlier + - opp: Put opp table in dev_pm_opp_set_rate() for empty tables + - opp: Put opp table in dev_pm_opp_set_rate() if _set_opp_bw() fails + - ext4: do not block RWF_NOWAIT dio write on unallocated space + - ext4: fix checking of directory entry validity for inline directories + - jbd2: add the missing unlock_buffer() in the error path of + jbd2_write_superblock() + - scsi: zfcp: Fix use-after-free in request timeout handlers + - selftests: kvm: Use a shorter encoding to clear RAX + - s390/pci: fix zpci_bus_link_virtfn() + - s390/pci: re-introduce zpci_remove_device() + - s390/pci: fix PF/VF linking on hot plug + - s390/pci: ignore stale configuration request event + - mm/memory.c: skip spurious TLB flush for retried page fault + - drm: amdgpu: Use the correct size when allocating memory + - drm/amdgpu/display: use GFP_ATOMIC in dcn20_validate_bandwidth_internal + - drm/amd/display: Fix incorrect backlight register offset for DCN + - drm/amd/display: Fix EDID parsing after resume from suspend + - drm/amd/display: Blank stream before destroying HDCP session + - drm/amd/display: Fix DFPstate hang due to view port changed + - drm/amd/display: fix pow() crashing when given base 0 + - drm/i915/pmu: Prefer drm_WARN_ON over WARN_ON + - drm/i915: Provide the perf pmu.module + - scsi: ufs: Add DELAY_BEFORE_LPM quirk for Micron devices + - scsi: target: tcmu: Fix crash in tcmu_flush_dcache_range on ARM + - media: budget-core: Improve exception handling in budget_register() + - media: coda: jpeg: add NULL check after kmalloc + - f2fs: fix to check page dirty status before writeback + - rtc: goldfish: Enable interrupt in set_alarm() when necessary + - media: vpss: clean up resources in init + - f2fs: should avoid inode eviction in synchronous path + - Input: psmouse - add a newline when printing 'proto' by sysfs + - MIPS: Fix unable to reserve memory for Crash kernel + - m68knommu: fix overwriting of bits in ColdFire V3 cache control + - svcrdma: Fix another Receive buffer leak + - xfs: fix inode quota reservation checks + - drm/ttm: fix offset in VMAs with a pg_offs in ttm_bo_vm_access + - riscv: Fixup static_obj() fail + - jffs2: fix UAF problem + - ceph: fix use-after-free for fsc->mdsc + - swiotlb-xen: use vmalloc_to_page on vmalloc virt addresses + - cpufreq: intel_pstate: Fix cpuinfo_max_freq when MSR_TURBO_RATIO_LIMIT is 0 + - scsi: libfc: Free skb in fc_disc_gpn_id_resp() for valid cases + - virtio_ring: Avoid loop when vq is broken in virtqueue_poll + - media: camss: fix memory leaks on error handling paths in probe + - tools/testing/selftests/cgroup/cgroup_util.c: cg_read_strcmp: fix null + pointer dereference + - xfs: Fix UBSAN null-ptr-deref in xfs_sysfs_init + - alpha: fix annotation of io{read,write}{16,32}be() + - fat: fix fat_ra_init() for data clusters == 0 + - fs/signalfd.c: fix inconsistent return codes for signalfd4 + - ext4: fix potential negative array index in do_split() + - drm/virtio: fix missing dma_fence_put() in virtio_gpu_execbuffer_ioctl() + - ext4: don't allow overlapping system zones + - ext4: check journal inode extents more carefully + - netfilter: nf_tables: nft_exthdr: the presence return value should be + little-endian + - spi: stm32: fixes suspend/resume management + - ASoC: q6afe-dai: mark all widgets registers as SND_SOC_NOPM + - ASoC: q6routing: add dummy register read/write function + - tools/bpftool: Make skeleton code C++17-friendly by dropping typeof() + - bpf: sock_ops ctx access may stomp registers in corner case + - bpf: sock_ops sk access may stomp registers when dst_reg = src_reg + - libbpf: Fix BTF-defined map-in-map initialization on 32-bit host arches + - can: j1939: fix kernel-infoleak in j1939_sk_sock2sockaddr_can() + - can: j1939: transport: j1939_simple_recv(): ignore local J1939 messages send + not by J1939 stack + - can: j1939: transport: add j1939_session_skb_find_by_offset() function + - igc: Fix PTP initialization + - i40e: Set RX_ONLY mode for unicast promiscuous on VLAN + - i40e: Fix crash during removing i40e driver + - net: fec: correct the error path for regulator disable in probe + - bonding: show saner speed for broadcast mode + - can: j1939: fix support for multipacket broadcast message + - can: j1939: cancel rxtimer on multipacket broadcast session complete + - can: j1939: abort multipacket broadcast session when timeout occurs + - can: j1939: add rxtimer for multipacket broadcast session + - bonding: fix a potential double-unregister + - ipvlan: fix device features + - s390/runtime_instrumentation: fix storage key handling + - s390/ptrace: fix storage key handling + - ASoC: msm8916-wcd-analog: fix register Interrupt offset + - ASoC: intel: Fix memleak in sst_media_open + - watch_queue: Limit the number of watches a user can hold + - vfio-pci: Avoid recursive read-lock usage + - vfio/type1: Add proper error unwind for vfio_iommu_replay() + - arch/ia64: Restore arch-specific pgd_offset_k implementation + - kvm: x86: Toggling CR4.SMAP does not load PDPTEs in PAE mode + - kvm: x86: Toggling CR4.PKE does not load PDPTEs in PAE mode + - scsi: ufs: ti-j721e-ufs: Fix error return in ti_j721e_ufs_probe() + - scsi: ufs: Add quirk to fix mishandling utrlclr/utmrlclr + - scsi: ufs: Add quirk to disallow reset of interrupt aggregation + - scsi: ufs: Add quirk to enable host controller without hce + - scsi: ufs: Introduce UFSHCD_QUIRK_PRDT_BYTE_GRAN quirk + - scsi: ufs: Add quirk to fix abnormal ocs fatal error + - scsi: ufs-pci: Add quirk for broken auto-hibernate for Intel EHL + - scsi: ufs: Fix interrupt error message for shared interrupts + - Revert "scsi: qla2xxx: Disable T10-DIF feature with FC-NVMe during probe" + - kconfig: qconf: do not limit the pop-up menu to the first row + - kconfig: qconf: fix signal connection to invalid slots + - efi: avoid error message when booting under Xen + - Fix build error when CONFIG_ACPI is not set/enabled: + - RDMA/bnxt_re: Do not add user qps to flushlist + - Revert "RDMA/hns: Reserve one sge in order to avoid local length error" + - afs: Fix key ref leak in afs_put_operation() + - kconfig: qconf: remove qInfo() to get back Qt4 support + - afs: Fix NULL deref in afs_dynroot_depopulate() + - ARM64: vdso32: Install vdso32 from vdso_install + - powerpc/fixmap: Fix the size of the early debug area + - bpf: Use get_file_rcu() instead of get_file() for task_file iterator + - powerpc/pseries/hotplug-cpu: wait indefinitely for vCPU death + - bonding: fix active-backup failover for current ARP slave + - net: ena: Prevent reset after device destruction + - net: ena: Change WARN_ON expression in ena_del_napi_in_range() + - net: gemini: Fix missing free_netdev() in error path of + gemini_ethernet_port_probe() + - selftests/bpf: Remove test_align leftovers + - hv_netvsc: Fix the queue_mapping in netvsc_vf_xmit() + - net: dsa: b53: check for timeout + - epoll: Keep a reference on files added to the check list + - powerpc: Fix P10 PVR revision in /proc/cpuinfo for SMT4 cores + - powerpc/pseries: Do not initiate shutdown when system is running on UPS + - EDAC/{i7core,sb,pnd2,skx}: Fix error event severity + - efi/x86: Mark kernel rodata non-executable for mixed mode + - efi: add missed destroy_workqueue when efisubsys_init fails + - efi/libstub: Stop parsing arguments at "--" + - efi/libstub: Handle NULL cmdline + - efi/libstub: Handle unterminated cmdline + - do_epoll_ctl(): clean the failure exits up a bit + - KVM: Pass MMU notifier range flags to kvm_unmap_hva_range() + - KVM: arm64: Only reschedule if MMU_NOTIFIER_RANGE_BLOCKABLE is not set + - Revert "drm/amd/display: Improve DisplayPort monitor interop" + - Linux 5.8.4 + - [Config] Update configs following 5.8.4 stable update + + * Miscellaneous Ubuntu changes + - SAUCE: Revert "ARM64: vdso32: Install vdso32 from vdso_install" + + -- Seth Forshee Wed, 26 Aug 2020 10:00:11 -0500 + +linux (5.8.0-17.18) groovy; urgency=medium + + * groovy/linux: 5.8.0-17.18 -proposed tracker (LP: #1892959) + + * Packaging resync (LP: #1786013) + - [Packaging] update helper scripts + - update dkms package versions + + * [Hyper-V] VSS and File Copy daemons intermittently fails to start + (LP: #1891224) + - [Packaging] Bind hv_vss_daemon startup to hv_vss device + - [Packaging] bind hv_fcopy_daemon startup to hv_fcopy device + + * Fix non-working USB devices plugged during system sleep (LP: #1892678) + - xhci: Do warm-reset when both CAS and XDEV_RESUME are set + + * ASPM not enabled on child devices behind VMD controller (LP: #1889384) + - SAUCE: PCI/ASPM: Enable ASPM for links under VMD domain + + * Groovy update: v5.8.3 upstream stable release (LP: #1892774) + - [Config] update config for ARMADA_AP_CPU_CLK + - ALSA: hda/realtek - Fix unused variable warning + - smb3: warn on confusing error scenario with sec=krb5 + - SMB3: Fix mkdir when idsfromsid configured on mount + - genirq/affinity: Make affinity setting if activated opt-in + - genirq: Unlock irq descriptor after errors + - genirq/PM: Always unlock IRQ descriptor in rearm_wake_irq() + - PCI: hotplug: ACPI: Fix context refcounting in acpiphp_grab_context() + - PCI/ATS: Add pci_pri_supported() to check device or associated PF + - PCI: Add device even if driver attach failed + - PCI: qcom: Define some PARF params needed for ipq8064 SoC + - PCI: qcom: Add support for tx term offset for rev 2.1.0 + - btrfs: allow use of global block reserve for balance item deletion + - btrfs: free anon block device right after subvolume deletion + - btrfs: don't allocate anonymous block device for user invisible roots + - btrfs: preallocate anon block device at first phase of snapshot creation + - btrfs: ref-verify: fix memory leak in add_block_entry + - btrfs: only commit the delayed inode when doing a full fsync + - btrfs: stop incremening log_batch for the log root tree when syncing log + - btrfs: only commit delayed items at fsync if we are logging a directory + - btrfs: remove no longer needed use of log_writers for the log root tree + - btrfs: don't traverse into the seed devices in show_devname + - btrfs: pass checksum type via BTRFS_IOC_FS_INFO ioctl + - btrfs: open device without device_list_mutex + - btrfs: move the chunk_mutex in btrfs_read_chunk_tree + - btrfs: relocation: review the call sites which can be interrupted by signal + - btrfs: add missing check for nocow and compression inode flags + - btrfs: avoid possible signal interruption of btrfs_drop_snapshot() on + relocation tree + - btrfs: return EROFS for BTRFS_FS_STATE_ERROR cases + - btrfs: sysfs: use NOFS for device creation + - btrfs: don't WARN if we abort a transaction with EROFS + - btrfs: fix race between page release and a fast fsync + - btrfs: don't show full path of bind mounts in subvol= + - btrfs: fix messages after changing compression level by remount + - btrfs: only search for left_info if there is no right_info in + try_merge_free_space + - btrfs: inode: fix NULL pointer dereference if inode doesn't need compression + - btrfs: fix memory leaks after failure to lookup checksums during inode + logging + - btrfs: trim: fix underflow in trim length to prevent access beyond device + boundary + - btrfs: make sure SB_I_VERSION doesn't get unset by remount + - btrfs: fix return value mixup in btrfs_get_extent + - btrfs: check correct variable after allocation in btrfs_backref_iter_alloc + - arm64: dts: qcom: sc7180: Drop the unused non-MSA SID + - arm64: perf: Correct the event index in sysfs + - dt-bindings: iio: io-channel-mux: Fix compatible string in example code + - iio: dac: ad5592r: fix unbalanced mutex unlocks in ad5592r_read_raw() + - iio: imu: st_lsm6dsx: reset hw ts after resume + - xtensa: add missing exclusive access state management + - xtensa: fix xtensa_pmu_setup prototype + - cifs: Fix leak when handling lease break for cached root fid + - powerpc/ptdump: Fix build failure in hashpagetable.c + - powerpc: Allow 4224 bytes of stack expansion for the signal frame + - powerpc: Fix circular dependency between percpu.h and mmu.h + - pinctrl: ingenic: Enhance support for IRQ_TYPE_EDGE_BOTH + - pinctrl: ingenic: Properly detect GPIO direction when configured for IRQ + - media: venus: fix multiple encoder crash + - media: vsp1: dl: Fix NULL pointer dereference on unbind + - net: ethernet: stmmac: Disable hardware multicast filter + - net: stmmac: dwmac1000: provide multicast filter fallback + - irqchip/loongson-liointc: Fix misuse of gc->mask_cache + - irqchip/gic-v4.1: Ensure accessing the correct RD when writing INVALLR + - pidfd: Add missing sock updates for pidfd_getfd() + - net/compat: Add missing sock updates for SCM_RIGHTS + - selftests/seccomp: Set NNP for TSYNC ESRCH flag test + - md/raid5: Fix Force reconstruct-write io stuck in degraded raid5 + - bcache: allocate meta data pages as compound pages + - bcache: fix overflow in offset_to_stripe() + - bcache: avoid nr_stripes overflow in bcache_device_init() + - bcache: fix bio_{start,end}_io_acct with proper device + - bcache: use disk_{start,end}_io_acct() to count I/O for bcache device + - mac80211: fix misplaced while instead of if + - appletalk: Fix atalk_proc_init() return path + - driver core: Avoid binding drivers to dead devices + - MIPS: CPU#0 is not hotpluggable + - MIPS: qi_lb60: Fix routing to audio amplifier + - MIPS: SGI-IP27: always enable NUMA in Kconfig + - ext2: fix missing percpu_counter_inc + - khugepaged: collapse_pte_mapped_thp() flush the right range + - mm/hugetlb: fix calculation of adjust_range_if_pmd_sharing_possible + - khugepaged: collapse_pte_mapped_thp() protect the pmd lock + - khugepaged: retract_page_tables() remember to test exit + - hugetlbfs: remove call to huge_pte_alloc without i_mmap_rwsem + - mm/shuffle: don't move pages between zones and don't read garbage memmaps + - mm: fix kthread_use_mm() vs TLB invalidate + - ocfs2: change slot number type s16 to u16 + - mm/page_counter.c: fix protection usage propagation + - cma: don't quit at first error when activating reserved areas + - mm/memory_hotplug: fix unpaired mem_hotplug_begin/done + - ftrace: Setup correct FTRACE_FL_REGS flags for module + - kprobes: Fix NULL pointer dereference at kprobe_ftrace_handler + - tracing/hwlat: Honor the tracing_cpumask + - tracing: Use trace_sched_process_free() instead of exit() for pid tracing + - watchdog: f71808e_wdt: indicate WDIOF_CARDRESET support in + watchdog_info.options + - watchdog: f71808e_wdt: remove use of wrong watchdog_info option + - watchdog: f71808e_wdt: clear watchdog timeout occurred flag + - ceph: set sec_context xattr on symlink creation + - ceph: handle zero-length feature mask in session messages + - pseries: Fix 64 bit logical memory block panic + - dm ebs: Fix incorrect checking for REQ_OP_FLUSH + - dm: don't call report zones for more than the user requested + - module: Correctly truncate sysfs sections output + - bootconfig: Fix to find the initargs correctly + - perf probe: Fix wrong variable warning when the probe point is not found + - perf probe: Fix memory leakage when the probe point is not found + - perf intel-pt: Fix FUP packet state + - perf intel-pt: Fix duplicate branch after CBR + - gfs2: Fix refcount leak in gfs2_glock_poke + - gfs2: Never call gfs2_block_zero_range with an open transaction + - remoteproc: qcom: q6v5: Update running state before requesting stop + - remoteproc: qcom_q6v5_mss: Validate MBA firmware size before load + - remoteproc: qcom_q6v5_mss: Validate modem blob firmware size before load + - libnvdimm: Validate command family indices + - drm/imx: imx-ldb: Disable both channels for split mode in enc->disable() + - drm/ingenic: Fix incorrect assumption about plane->index + - crypto: algif_aead - Only wake up when ctx->more is zero + - mfd: arizona: Ensure 32k clock is put on driver unbind and error + - octeontx2-af: change (struct qmem)->entry_sz from u8 to u16 + - mtd: rawnand: fsl_upm: Remove unused mtd var + - mtd: rawnand: brcmnand: ECC error handling on EDU transfers + - platform/chrome: cros_ec_ishtp: Fix a double-unlock issue + - drm/amdgpu/debugfs: fix memory leak when pm_runtime_get_sync failed + - RDMA/ipoib: Return void from ipoib_ib_dev_stop() + - RDMA/ipoib: Fix ABBA deadlock with ipoib_reap_ah() + - rtc: cpcap: fix range + - media: staging: rkisp1: remove macro RKISP1_DIR_SINK_SRC + - media: staging: rkisp1: rename macros 'RKISP1_DIR_*' to 'RKISP1_ISP_SD_*' + - media: staging: rkisp1: rsz: set default format if the given format is not + RKISP1_ISP_SD_SRC + - media: rockchip: rga: Introduce color fmt macros and refactor CSC mode logic + - media: rockchip: rga: Only set output CSC mode for RGB input + - IB/uverbs: Set IOVA on IB MR in uverbs layer + - sched/uclamp: Protect uclamp fast path code with static key + - selftests/bpf: Test_progs indicate to shell on non-actions + - bpf: selftests: Restore netns after each test + - selftests/bpf: test_progs use another shell exit on non-actions + - selftests/bpf: test_progs avoid minus shell exit codes + - USB: serial: ftdi_sio: make process-packet buffer unsigned + - USB: serial: ftdi_sio: clean up receive processing + - crypto: af_alg - Fix regression on empty requests + - devres: keep both device name and resource name in pretty name + - RDMA/counter: Only bind user QPs in auto mode + - RDMA/counter: Allow manually bind QPs with different pids to same counter + - mmc: renesas_sdhi_internal_dmac: clean up the code for dma complete + - rtw88: pci: disable aspm for platform inter-op with module parameter + - rtc: pl031: fix set_alarm by adding back call to alarm_irq_enable + - crypto: caam - Remove broken arc4 support + - gpu: ipu-v3: image-convert: Combine rotate/no-rotate irq handlers + - gpu: ipu-v3: image-convert: Wait for all EOFs before completing a tile + - dm rq: don't call blk_mq_queue_stopped() in dm_stop_queue() + - ima: Fail rule parsing when appraise_flag=blacklist is unsupportable + - f2fs: compress: fix to avoid memory leak on cc->cpages + - clk: actions: Fix h_clk for Actions S500 SoC + - selftests/powerpc: ptrace-pkey: Rename variables to make it easier to follow + code + - selftests/powerpc: ptrace-pkey: Update the test to mark an invalid pkey + correctly + - selftests/powerpc: ptrace-pkey: Don't update expected UAMOR value + - iommu/omap: Check for failure of a call to omap_iommu_dump_ctx + - clk: qcom: gcc: fix sm8150 GPU and NPU clocks + - clk: qcom: clk-alpha-pll: remove unused/incorrect PLL_CAL_VAL + - iommu/vt-d: Handle non-page aligned address + - iommu/vt-d: Enforce PASID devTLB field mask + - iommu/vt-d: Warn on out-of-range invalidation address + - iommu/vt-d: Disable multiple GPASID-dev bind + - i2c: rcar: slave: only send STOP event when we have been addressed + - f2fs: compress: fix to update isize when overwriting compressed file + - clk: qcom: gcc-sdm660: Fix up gcc_mss_mnoc_bimc_axi_clk + - clk: clk-atlas6: fix return value check in atlas6_clk_init() + - nvme: fix deadlock in disconnect during scan_work and/or ana_work + - sched/uclamp: Fix a deadlock when enabling uclamp static key + - pwm: bcm-iproc: handle clk_get_rate() return + - perf tools: Fix term parsing for raw syntax + - tools build feature: Use CC and CXX from parent + - i2c: rcar: avoid race when unregistering slave + - nfs: ensure correct writeback errors are returned on close() + - ubi: fastmap: Don't produce the initial next anchor PEB when fastmap is + disabled + - ubi: fastmap: Free fastmap next anchor peb during detach + - ubifs: Fix wrong orphan node deletion in ubifs_jnl_update|rename + - [Config] update config for CLK_HSDK + - clk: hsdk: Fix bad dependency on IOMEM + - clk: bcm2835: Do not use prediv with bcm2711's PLLs + - libnvdimm/security: fix a typo + - libnvdimm/security: ensure sysfs poll thread woke up and fetch updated attr + - openrisc: Fix oops caused when dumping stack + - perf evsel: Don't set sample_regs_intr/sample_regs_user for dummy event + - scsi: lpfc: nvmet: Avoid hang / use-after-free again when destroying + targetport + - nfs: nfs_file_write() should check for writeback errors + - watchdog: initialize device before misc_register + - watchdog: rti-wdt: balance pm runtime enable calls + - md-cluster: Fix potential error pointer dereference in resize_bitmaps() + - kprobes: Fix compiler warning for !CONFIG_KPROBES_ON_FTRACE + - x86/tsr: Fix tsc frequency enumeration bug on Lightning Mountain SoC + - x86/bugs/multihit: Fix mitigation reporting when VMX is not in use + - selftests/bpf: Prevent runqslower from racing on building bpftool + - Input: sentelic - fix error return when fsp_reg_write fails + - perf record: Skip side-band event setup if HAVE_LIBBPF_SUPPORT is not set + - selftests/bpf: Fix silent Makefile output + - vdpa_sim: init iommu lock + - recordmcount: Fix build failure on non arm64 + - vdpa: Fix pointer math bug in vdpasim_get_config() + - drm/vmwgfx: Use correct vmw_legacy_display_unit pointer + - drm/vmwgfx: Fix two list_for_each loop exit tests + - s390/test_unwind: fix possible memleak in test_unwind() + - s390/Kconfig: add missing ZCRYPT dependency to VFIO_AP + - net: qcom/emac: add missed clk_disable_unprepare in error path of + emac_clks_phase1_init + - nfs: Fix getxattr kernel panic and memory overflow + - NFS: Fix flexfiles read failover + - lib/test_lockup.c: fix return value of test_lockup_init() + - fs/minix: set s_maxbytes correctly + - fs/minix: fix block limit check for V1 filesystems + - fs/minix: remove expected error message in block_to_path() + - fs/ufs: avoid potential u32 multiplication overflow + - test_kmod: avoid potential double free in trigger_config_run_type() + - i2c: iproc: fix race between client unreg and isr + - mfd: dln2: Run event handler loop under spinlock + - crypto: algif_aead - fix uninitialized ctx->init + - ALSA: echoaudio: Fix potential Oops in snd_echo_resume() + - perf bench mem: Always memset source before memcpy + - tools build feature: Quote CC and CXX for their arguments + - perf/x86/rapl: Fix missing psys sysfs attributes + - sh: landisk: Add missing initialization of sh_io_port_base + - sh: fault: Fix duplicate printing of "PC:" + - drm/i915/gt: Force the GT reset on shutdown + - drm/panfrost: Use kvfree() to free bo->sgts + - drm/dp_mst: Fix the DDC I2C device registration of an MST port + - drm/dp_mst: Fix timeout handling of MST down messages + - drm/dp_mst: Fix the DDC I2C device unregistration of an MST port + - drm/omap: force runtime PM suspend on system suspend + - drm/tidss: fix modeset init for DPI panels + - drm: Added orientation quirk for ASUS tablet model T103HAF + - drm: fix drm_dp_mst_port refcount leaks in drm_dp_mst_allocate_vcpi + - drm/amdgpu: Fix bug where DPM is not enabled after hibernate and resume + - drm/amd/display: Fix dmesg warning from setting abm level + - drm/amd/display: dchubbub p-state warning during surface planes switch + - Linux 5.8.3 + + * update ENA driver for LLQ acceleration mode, new hw support (LP: #1890845) + - ena_netdev: use generic power management + - net: ena: Fix using plain integer as NULL pointer in ena_init_napi_in_range + - net: ena: avoid unnecessary rearming of interrupt vector when busy-polling + - net: ena: add reserved PCI device ID + - net: ena: cosmetic: satisfy gcc warning + - net: ena: cosmetic: change ena_com_stats_admin stats to u64 + - net: ena: add support for traffic mirroring + - net: ena: enable support of rss hash key and function changes + - net: ena: move llq configuration from ena_probe to ena_device_init() + - net: ena: support new LLQ acceleration mode + + * DMA config issues on Synquacer ARM64 platform cause SATA configuration + failures on boot (LP: #1892138) + - of/address: check for invalid range.cpu_addr + + * [SRU] Fix acpi backlight issue on some thinkpads (LP: #1892010) + - platform/x86: thinkpad_acpi: not loading brightness_init when _BCL invalid + + * Fix non-working Goodix touchpad after system sleep (LP: #1891998) + - HID: i2c-hid: Always sleep 60ms after I2C_HID_PWR_ON commands + + * Groovy update: v5.8.2 upstream stable release (LP: #1892215) + - tracepoint: Mark __tracepoint_string's __used + - kunit: capture stderr on all make subprocess calls + - io_uring: abstract out task work running + - HID: input: Fix devices that return multiple bytes in battery report + - ARM: dts: stm32: fix uart nodes ordering in stm32mp15-pinctrl + - ARM: dts: stm32: fix uart7_pins_a comments in stm32mp15-pinctrl + - x86/mce/inject: Fix a wrong assignment of i_mce.status + - perf/x86/intel/uncore: Fix oops when counting IMC uncore events on some TGL + - x86, sched: check for counters overflow in frequency invariant accounting + - x86, sched: Bail out of frequency invariance if turbo frequency is unknown + - x86, sched: Bail out of frequency invariance if turbo_freq/base_freq gives 0 + - sched/fair: Fix NOHZ next idle balance + - sched: correct SD_flags returned by tl->sd_flags() + - arm64: dts: rockchip: fix rk3368-lion gmac reset gpio + - arm64: dts: rockchip: fix rk3399-puma vcc5v0-host gpio + - arm64: dts: rockchip: fix rk3399-puma gmac reset gpio + - EDAC: Fix reference count leaks + - crc-t10dif: Fix potential crypto notify dead-lock + - arm64: dts: qcom: msm8916: Replace invalid bias-pull-none property + - memory: tegra: Fix an error handling path in tegra186_emc_probe() + - soc: qcom: rpmh-rsc: Don't use ktime for timeout in write_tcs_reg_sync() + - crypto: ccree - fix resource leak on error path + - ARM: exynos: MCPM: Restore big.LITTLE cpuidle support + - rcu/tree: Repeat the monitor if any free channel is busy + - firmware: arm_scmi: Fix SCMI genpd domain probing + - arm64: dts: sun50i-pinephone: dldo4 must not be >= 1.8V + - arm64: dts: exynos: Fix silent hang after boot on Espresso + - sched/uclamp: Fix initialization of struct uclamp_rq + - crypto: qat - allow xts requests not multiple of block + - clk: scmi: Fix min and max rate when registering clocks with discrete rates + - m68k: mac: Don't send IOP message until channel is idle + - m68k: mac: Fix IOP status/control register writes + - platform/x86: intel-hid: Fix return value check in check_acpi_dev() + - platform/x86: intel-vbtn: Fix return value check in check_acpi_dev() + - ARM: dts: gose: Fix ports node name for adv7180 + - arm64: dts: renesas: Fix SD Card/eMMC interface device node names + - ARM: dts: gose: Fix ports node name for adv7612 + - ARM: at91: pm: add missing put_device() call in at91_pm_sram_init() + - ARM: dts: exynos: Disable frequency scaling for FSYS bus on Odroid XU3 + family + - reset: intel: fix a compile warning about REG_OFFSET redefined + - ARM: dts: at91: sama5d3_xplained: change phy-mode + - ARM: dts: sunxi: bananapi-m2-plus-v1.2: Add regulator supply to all CPU + cores + - ARM: dts: sunxi: bananapi-m2-plus-v1.2: Fix CPU supply voltages + - ARM: dts: stm32: Fix spi4 pins in stm32mp15-pinctrl + - spi: dw-dma: Fix Tx DMA channel working too fast + - spi: lantiq: fix: Rx overflow error in full duplex mode + - crypto: x86/crc32c - fix building with clang ias + - tpm: Require that all digests are present in TCG_PCR_EVENT2 structures + - recordmcount: only record relocation of type R_AARCH64_CALL26 on arm64. + - regulator: fix memory leak on error path of regulator_register() + - io_uring: fix sq array offset calculation + - arm64: dts: meson: misc fixups for w400 dtsi + - arm64: dts: meson: fix mmc0 tuning error on Khadas VIM3 + - soc: qcom: pdr: Reorder the PD state indication ack + - spi: rockchip: Fix error in SPI slave pio read + - ARM: socfpga: PM: add missing put_device() call in + socfpga_setup_ocram_self_refresh() + - iocost: Fix check condition of iocg abs_vdebt + - scripts/selinux/mdp: fix initial SID handling + - irqchip/ti-sci-inta: Fix return value about devm_ioremap_resource() + - seccomp: Fix ioctl number for SECCOMP_IOCTL_NOTIF_ID_VALID + - md: raid0/linear: fix dereference before null check on pointer mddev + - irqchip/loongson-htvec: Fix potential resource leak + - irqchip/loongson-htvec: Check return value of irq_domain_translate_onecell() + - irqchip/loongson-pch-pic: Check return value of + irq_domain_translate_twocell() + - irqchip/loongson-liointc: Fix potential dead lock + - kunit: tool: fix broken default args in unit tests + - kunit: tool: fix improper treatment of file location + - irqchip/irq-bcm7038-l1: Guard uses of cpu_logical_map + - irqchip/gic-v4.1: Use GFP_ATOMIC flag in allocate_vpe_l1_table() + - nvme-tcp: fix controller reset hang during traffic + - nvme-rdma: fix controller reset hang during traffic + - nvme-multipath: fix logic for non-optimized paths + - nvme-multipath: do not fall back to __nvme_find_path() for non-optimized + paths + - irqchip/loongson-pch-pic: Fix the misused irq flow handler + - block: don't do revalidate zones on invalid devices + - drm/tilcdc: fix leak & null ref in panel_connector_get_modes + - soc: qcom: rpmh-rsc: Set suppress_bind_attrs flag + - net: mscc: ocelot: fix encoding destination ports into multicast IPv4 + address + - ARM: exynos: clear L310_AUX_CTRL_FULL_LINE_ZERO in default l2c_aux_val + - Bluetooth: add a mutex lock to avoid UAF in do_enale_set + - loop: be paranoid on exit and prevent new additions / removals + - io_uring: fix req->work corruption + - fs/btrfs: Add cond_resched() for try_release_extent_mapping() stalls + - drm/amdgpu: avoid dereferencing a NULL pointer + - drm/radeon: Fix reference count leaks caused by pm_runtime_get_sync + - crypto: aesni - Fix build with LLVM_IAS=1 + - video: fbdev: savage: fix memory leak on error handling path in probe + - video: fbdev: neofb: fix memory leak in neo_scan_monitor() + - bus: ti-sysc: Add missing quirk flags for usb_host_hs + - md-cluster: fix wild pointer of unlock_all_bitmaps() + - rtw88: 8822ce: add support for device ID 0xc82f + - drm/nouveau/kms/nv50-: Fix disabling dithering + - arm64: dts: hisilicon: hikey: fixes to comply with adi, adv7533 DT binding + - drm/etnaviv: fix ref count leak via pm_runtime_get_sync + - ionic: rearrange reset and bus-master control + - memory: samsung: exynos5422-dmc: Do not ignore return code of regmap_read() + - drm/nouveau: fix reference count leak in nouveau_debugfs_strap_peek + - drm/nouveau: fix multiple instances of reference count leaks + - mmc: sdhci-cadence: do not use hardware tuning for SD mode + - btrfs: fix lockdep splat from btrfs_dump_space_info + - usb: mtu3: clear dual mode of u3port when disable device + - drm: msm: a6xx: fix gpu failure after system resume + - drm/msm: Fix a null pointer access in msm_gem_shrinker_count() + - drm/debugfs: fix plain echo to connector "force" attribute + - drm/radeon: disable AGP by default + - net: phy: mscc: restore the base page in vsc8514/8584_config_init + - irqchip/irq-mtk-sysirq: Replace spinlock with raw_spinlock + - mm/mmap.c: Add cond_resched() for exit_mmap() CPU stalls + - drm/amd/display: Improve DisplayPort monitor interop + - drm/amdgpu/debugfs: fix ref count leak when pm_runtime_get_sync fails + - drm/amdgpu/display bail early in dm_pp_get_static_clocks + - drm/amdgpu/display: properly guard the calls to swSMU functions + - drm/amd/display: allow query ddc data over aux to be read only operation + - drm/amd/powerplay: fix compile error with ARCH=arc + - bpf: Fix fds_example SIGSEGV error + - Bluetooth: hci_qca: Bug fixes for SSR + - brcmfmac: keep SDIO watchdog running when console_interval is non-zero + - brcmfmac: To fix Bss Info flag definition Bug + - brcmfmac: set state of hanger slot to FREE when flushing PSQ + - platform/x86: asus-nb-wmi: add support for ASUS ROG Zephyrus G14 and G15 + - iwlegacy: Check the return value of pcie_capability_read_*() + - gpu: host1x: debug: Fix multiple channels emitting messages simultaneously + - drm/amd/powerplay: suppress compile error around BUG_ON + - ionic: update eid test for overflow + - x86/uaccess: Make __get_user_size() Clang compliant on 32-bit + - mmc: sdhci-pci-o2micro: Bug fix for O2 host controller Seabird1 + - usb: gadget: net2280: fix memory leak on probe error handling paths + - bdc: Fix bug causing crash after multiple disconnects + - usb: bdc: Halt controller on suspend + - dyndbg: fix a BUG_ON in ddebug_describe_flags + - bcache: fix super block seq numbers comparision in register_cache_set() + - btrfs: allow btrfs_truncate_block() to fallback to nocow for data space + reservation + - btrfs: qgroup: free per-trans reserved space when a subvolume gets dropped + - ACPICA: Do not increment operation_region reference counts for field units + - io_uring: fix racy overflow count reporting + - io_uring: fix stalled deferred requests + - crypto: caam - silence .setkey in case of bad key length + - drm/msm: ratelimit crtc event overflow error + - drm/gem: Fix a leak in drm_gem_objects_lookup() + - drm/bridge: ti-sn65dsi86: Clear old error bits before AUX transfers + - drm/bridge: ti-sn65dsi86: Fix off-by-one error in clock choice + - drm/amdgpu: use the unlocked drm_gem_object_put + - agp/intel: Fix a memory leak on module initialisation failure + - mwifiex: Fix firmware filename for sd8977 chipset + - mwifiex: Fix firmware filename for sd8997 chipset + - btmrvl: Fix firmware filename for sd8977 chipset + - btmrvl: Fix firmware filename for sd8997 chipset + - video: fbdev: sm712fb: fix an issue about iounmap for a wrong address + - console: newport_con: fix an issue about leak related system resources + - video: pxafb: Fix the function used to balance a 'dma_alloc_coherent()' call + - Bluetooth: hci_qca: Fix an error pointer dereference + - drm/mm: fix hole size comparison + - Bluetooth: hci_qca: Only remove TX clock vote after TX is completed + - Bluetooth: Allow suspend even when preparation has failed + - ath10k: Acquire tx_lock in tx error paths + - Bluetooth: hci_qca: Bug fix during SSR timeout + - Bluetooth: hci_qca: Increase SoC idle timeout to 200ms + - iio: improve IIO_CONCENTRATION channel type description + - iio: amplifiers: ad8366: Change devm_gpiod_get() to optional and add the + missed check + - scsi: ufs: Fix imprecise load calculation in devfreq window + - drm/etnaviv: Fix error path on failure to enable bus clk + - drm/panfrost: Fix inbalance of devfreq record_busy/idle() + - drm/arm: fix unintentional integer overflow on left shift + - clk: bcm63xx-gate: fix last clock availability + - powerpc/mm: Fix typo in IS_ENABLED() + - powerpc/fixmap: Fix FIX_EARLY_DEBUG_BASE when page size is 256k + - leds: lm355x: avoid enum conversion warning + - ASoC: fsl_easrc: Fix uninitialized scalar variable in + fsl_easrc_set_ctx_format + - Bluetooth: btusb: fix up firmware download sequence + - Bluetooth: btmtksdio: fix up firmware download sequence + - media: cxusb-analog: fix V4L2 dependency + - media: marvell-ccic: Add missed v4l2_async_notifier_cleanup() + - media: omap3isp: Add missed v4l2_ctrl_handler_free() for + preview_init_entities() + - staging: most: avoid null pointer dereference when iface is null + - dpaa2-eth: fix condition for number of buffer acquire retries + - ASoC: SOF: nocodec: add missing .owner field + - ASoC: Intel: cml_rt1011_rt5682: add missing .owner field + - ASoC: Intel: sof_sdw: add missing .owner field + - ASoC: Intel: bxt_rt298: add missing .owner field + - ASoC: Intel: Boards: cml_rt1011_rt5682: use statically define codec config + - net: atlantic: MACSec offload statistics checkpatch fix + - scsi: cumana_2: Fix different dev_id between request_irq() and free_irq() + - scsi: ufs: Disable WriteBooster capability for non-supported UFS devices + - drm/mipi: use dcs write for mipi_dsi_dcs_set_tear_scanline + - cxl: Fix kobject memleak + - lkdtm: Avoid more compiler optimizations for bad writes + - selftests/lkdtm: Reset WARN_ONCE to avoid false negatives + - lkdtm: Make arch-specific tests always available + - net: ethernet: ti: am65-cpsw-nuss: restore vlan configuration while down/up + - tracing: Move pipe reference to trace array instead of current_tracer + - scsi: qla2xxx: Make __qla2x00_alloc_iocbs() initialize 32 bits of + request_t.handle + - drm/amdgpu/debugfs: fix memory leak when amdgpu_virt_enable_access_debugfs + failed + - drm/amdgpu: ensure 0 is returned for success in jpeg_v2_5_wait_for_idle + - drm/radeon: fix array out-of-bounds read and write issues + - staging: vchiq_arm: Add a matching unregister call + - iavf: fix error return code in iavf_init_get_resources() + - iavf: Fix updating statistics + - dma-buf: fix dma-fence-chain out of order test + - RDMA/core: Fix bogus WARN_ON during ib_unregister_device_queued() + - scsi: powertec: Fix different dev_id between request_irq() and free_irq() + - scsi: eesox: Fix different dev_id between request_irq() and free_irq() + - ipvs: allow connection reuse for unconfirmed conntrack + - media: firewire: Using uninitialized values in node_probe() + - media: allegro: Fix some NULL vs IS_ERR() checks in probe + - media: staging: rkisp1: rsz: supported formats are the isp's src formats, + not sink formats + - media: staging: rkisp1: rsz: fix resolution limitation on sink pad + - media: tvp5150: Add missed media_entity_cleanup() + - media: exynos4-is: Add missed check for pinctrl_lookup_state() + - media: cros-ec-cec: do not bail on device_init_wakeup failure + - xfs: preserve rmapbt swapext block reservation from freed blocks + - xfs: don't eat an EIO/ENOSPC writeback error when scrubbing data fork + - xfs: fix reflink quota reservation accounting error + - RDMA/rxe: Skip dgid check in loopback mode + - PCI: Fix pci_cfg_wait queue locking problem + - samples: bpf: Fix bpf programs with kprobe/sys_connect event + - drm/stm: repair runtime power management + - kobject: Avoid premature parent object freeing in kobject_cleanup() + - leds: core: Flush scheduled work for system suspend + - drm: panel: simple: Fix bpc for LG LB070WV8 panel + - phy: cadence: salvo: fix wrong bit definition + - dt-bindings: phy: uniphier: Fix incorrect clocks and clock-names for PXs3 + usb3-hsphy + - phy: exynos5-usbdrd: Calibrating makes sense only for USB2.0 PHY + - mmc: sdhci-of-arasan: Add missed checks for devm_clk_register() + - drm/bridge: sil_sii8620: initialize return of sii8620_readb + - scsi: scsi_debug: Add check for sdebug_max_queue during module init + - bpfilter: Initialize pos variable + - mwifiex: Prevent memory corruption handling keys + - kernfs: do not call fsnotify() with name without a parent + - powerpc/pseries: remove cede offline state for CPUs + - powerpc/rtas: don't online CPUs for partition suspend + - powerpc/vdso: Fix vdso cpu truncation + - Bluetooth: Fix update of connection state in `hci_encrypt_cfm` + - RDMA/qedr: SRQ's bug fixes + - RDMA/qedr: Add EDPM mode type for user-fw compatibility + - RDMA/qedr: Add EDPM max size to alloc ucontext response + - RDMA/rxe: Prevent access to wr->next ptr afrer wr is posted to send queue + - ima: Have the LSM free its audit rule + - ima: Free the entire rule when deleting a list of rules + - ima: Free the entire rule if it fails to parse + - ima: Fail rule parsing when buffer hook functions have an invalid action + - ima: Fail rule parsing when the KEXEC_CMDLINE hook is combined with an + invalid cond + - ima: Fail rule parsing when the KEY_CHECK hook is combined with an invalid + cond + - staging: rtl8192u: fix a dubious looking mask before a shift + - ASoC: meson: fixes the missed kfree() for axg_card_add_tdm_loopback + - PCI/ASPM: Add missing newline in sysfs 'policy' + - go7007: add sanity checking for endpoints + - media: s5p-g2d: Fix a memory leak in an error handling path in 'g2d_probe()' + - phy: renesas: rcar-gen3-usb2: move irq registration to init + - powerpc/mm/radix: Free PUD table when freeing pagetable + - powerpc/book3s64/pkeys: Use PVR check instead of cpu feature + - drm/imx: fix use after free + - drm/imx: tve: fix regulator_disable error path + - gpu: ipu-v3: Restore RGB32, BGR32 + - spi: lantiq-ssc: Fix warning by using WQ_MEM_RECLAIM + - PCI: loongson: Use DECLARE_PCI_FIXUP_EARLY for bridge_class_quirk() + - USB: serial: iuu_phoenix: fix led-activity helpers + - clk: qcom: gcc: Make disp gpll0 branch aon for sc7180/sdm845 + - usb: core: fix quirks_param_set() writing to a const pointer + - thermal: ti-soc-thermal: Fix reversed condition in + ti_thermal_expose_sensor() + - coresight: etmv4: Fix resource selector constant + - coresight: etmv4: Counter values not saved on disable + - coresight: tmc: Fix TMC mode read in tmc_read_unprepare_etb() + - coresight: etm4x: Fix save/restore during cpu idle + - powerpc/perf: Fix missing is_sier_aviable() during build + - mt76: mt7663u: fix memory leak in set key + - mt76: mt7663u: fix potential memory leak in mcu message handler + - mt76: mt7615: fix potential memory leak in mcu message handler + - mt76: mt7915: potential array overflow in mt7915_mcu_tx_rate_report() + - mt76: mt7915: add missing CONFIG_MAC80211_DEBUGFS + - mt76: mt7615: fix possible memory leak in mt7615_mcu_wtbl_sta_add + - phy: armada-38x: fix NETA lockup when repeatedly switching speeds + - s390/bpf: Use brcl for jumping to exit_ip if necessary + - s390/bpf: Tolerate not converging code shrinking + - tools/bpftool: Fix error handing in do_skeleton() + - ASoC: tas2770: Fix reset gpio property name + - qed: Fix ILT and XRCD bitmap memory leaks + - ASoC: hdac_hda: fix deadlock after PCM open error + - powerpc/spufs: Fix the type of ret in spufs_arch_write_note + - PCI: rcar: Fix runtime PM imbalance on error + - MIPS: OCTEON: add missing put_device() call in dwc3_octeon_device_init() + - thermal: int340x: processor_thermal: fix: update Jasper Lake PCI id + - usb: dwc3: meson-g12a: fix shared reset control use + - usb: dwc2: Fix error path in gadget registration + - usb: gadget: f_uac2: fix AC Interface Header Descriptor wTotalLength + - scsi: megaraid_sas: Clear affinity hint + - scsi: mesh: Fix panic after host or bus reset + - scsi: core: Add missing scsi_device_put() in scsi_host_block() + - net: dsa: mv88e6xxx: MV88E6097 does not support jumbo configuration + - bpf: Fix pos computation for bpf_iter seq_ops->start() + - powerpc/watchpoint: Fix 512 byte boundary limit + - powerpc/watchpoint: Fix DAWR exception constraint + - powerpc/watchpoint: Fix DAWR exception for CACHEOP + - macintosh/via-macii: Access autopoll_devs when inside lock + - gpio: regmap: fix type clash + - PCI: cadence: Fix cdns_pcie_{host|ep}_setup() error path + - PCI: cadence: Fix updating Vendor ID and Subsystem Vendor ID register + - RDMA/core: Fix return error value in _ib_modify_qp() to negative + - Smack: fix another vsscanf out of bounds + - Smack: prevent underflow in smk_set_cipso() + - power: supply: check if calc_soc succeeded in pm860x_init_battery + - Bluetooth: btusb: Fix and detect most of the Chinese Bluetooth controllers + - Bluetooth: hci_h5: Set HCI_UART_RESET_ON_INIT to correct flags + - Bluetooth: hci_serdev: Only unregister device if it was registered + - bpf: Fix bpf_ringbuf_output() signature to return long + - Bluetooth: Fix suspend notifier race + - Bluetooth: hci_qca: Stop collecting memdump again for command timeout during + SSR + - net: dsa: rtl8366: Fix VLAN semantics + - net: dsa: rtl8366: Fix VLAN set-up + - xfs: fix inode allocation block res calculation precedence + - xfs: clear XFS_DQ_FREEING if we can't lock the dquot buffer to flush + - selftests/powerpc: Squash spurious errors due to device removal + - powerpc/32s: Fix CONFIG_BOOK3S_601 uses + - powerpc/boot: Fix CONFIG_PPC_MPC52XX references + - selftests/powerpc: Fix CPU affinity for child process + - nvmem: sprd: Fix return value of sprd_efuse_probe() + - RDMA/rtrs-clt: add an additional random 8 seconds before reconnecting + - RDMA/rtrs: remove WQ_MEM_RECLAIM for rtrs_wq + - RDMA/netlink: Remove CAP_NET_RAW check when dump a raw QP + - PCI: Release IVRS table in AMD ACS quirk + - cpufreq: ap806: fix cpufreq driver needs ap cpu clk + - powerpc/pseries/hotplug-cpu: Remove double free in error path + - selftests/powerpc: Fix online CPU selection + - RDMA/hns: Fix error during modify qp RTS2RTS + - RDMA/hns: Fix the unneeded process when getting a general type of CQE error + - ASoC: meson: axg-tdm-interface: fix link fmt setup + - ASoC: meson: axg-tdmin: fix g12a skew + - ASoC: meson: axg-tdm-formatters: fix sclk inversion + - ASoC: soc-core: Fix regression causing sysfs entries to disappear + - net: ll_temac: Use devm_platform_ioremap_resource_byname() + - drm/msm/dpu: don't use INTF_INPUT_CTRL feature on sdm845 + - libbpf: Fix register in PT_REGS MIPS macros + - MIPS: only register FTLBPar exception handler for supported models + - ASoC: core: use less strict tests for dailink capabilities + - ASoC: meson: cards: deal dpcm flag change + - ASoC: fsl_sai: Fix value of FSL_SAI_CR1_RFW_MASK + - s390/qeth: tolerate pre-filled RX buffer + - s390/qeth: don't process empty bridge port events + - ice: Clear and free XLT entries on reset + - ice: Graceful error handling in HW table calloc failure + - netfilter: nft_meta: fix iifgroup matching + - rtw88: fix LDPC field for RA info + - rtw88: fix short GI capability based on current bandwidth + - rtw88: coex: only skip coex triggered by BT info + - qtnfmac: Missing platform_device_unregister() on error in + qtnf_core_mac_alloc() + - wl1251: fix always return 0 error + - tools, build: Propagate build failures from tools/build/Makefile.build + - tools, bpftool: Fix wrong return value in do_dump() + - net/mlx5: DR, Change push vlan action sequence + - net/mlx5: Delete extra dump stack that gives nothing + - net: mvpp2: fix memory leak in mvpp2_rx + - net: ethernet: aquantia: Fix wrong return value + - liquidio: Fix wrong return value in cn23xx_get_pf_num() + - net: sgi: ioc3-eth: Fix the size used in some 'dma_free_coherent()' calls + - net: spider_net: Fix the size used in a 'dma_free_coherent()' call + - fsl/fman: use 32-bit unsigned integer + - fsl/fman: fix dereference null return value + - fsl/fman: fix unreachable code + - fsl/fman: check dereferencing null pointer + - fsl/fman: fix eth hash table allocation + - gpio: don't use same lockdep class for all devm_gpiochip_add_data users + - net: thunderx: use spin_lock_bh in nicvf_set_rx_mode_task() + - net: macb: Properly handle phylink on at91sam9x + - dpaa2-eth: Fix passing zero to 'PTR_ERR' warning + - hv_netvsc: do not use VF device if link is down + - Revert "vxlan: fix tos value before xmit" + - net: thunderx: initialize VF's mailbox mutex before first usage + - media: mtk-mdp: Fix a refcounting bug on error in init + - dlm: Fix kobject memleak + - ocfs2: fix unbalanced locking + - pinctrl-single: fix pcs_parse_pinconf() return value + - mtd: rawnand: brcmnand: Don't default to edu transfer + - svcrdma: Fix page leak in svc_rdma_recv_read_chunk() + - nfsd: avoid a NULL dereference in __cld_pipe_upcall() + - x86/fsgsbase/64: Fix NULL deref in 86_fsgsbase_read_task + - crypto: aesni - add compatibility with IAS + - af_packet: TPACKET_V3: fix fill status rwlock imbalance + - drivers/net/wan/lapbether: Added needed_headroom and a skb->len check + - net: Fix potential memory leak in proto_register() + - net/nfc/rawsock.c: add CAP_NET_RAW check. + - net: phy: fix memory leak in device-create error path + - net: Set fput_needed iff FDPUT_FPUT is set + - net/tls: Fix kmap usage + - vmxnet3: use correct tcp hdr length when packet is encapsulated + - net: refactor bind_bucket fastreuse into helper + - net: initialize fastreuse on inet_inherit_port + - vsock: fix potential null pointer dereference in vsock_poll() + - net: phy: marvell10g: fix null pointer dereference + - r8152: Use MAC address from correct device tree node + - USB: serial: cp210x: re-enable auto-RTS on open + - USB: serial: cp210x: enable usb generic throttle/unthrottle + - usb: cdns3: gadget: always zeroed TRB buffer when enable endpoint + - iommu/vt-d: Skip TE disabling on quirky gfx dedicated iommu + - vdpasim: protect concurrent access to iommu iotlb + - ALSA: hda - fix the micmute led status for Lenovo ThinkCentre AIO + - ALSA: hda - reverse the setting value in the micmute_led_set + - ALSA: usb-audio: Creative USB X-Fi Pro SB1095 volume knob support + - ALSA: usb-audio: fix overeager device match for MacroSilicon MS2109 + - ALSA: usb-audio: work around streaming quirk for MacroSilicon MS2109 + - ALSA: usb-audio: add quirk for Pioneer DDJ-RB + - tpm: Unify the mismatching TPM space buffer sizes + - pstore: Fix linking when crypto API disabled + - crypto: hisilicon - don't sleep of CRYPTO_TFM_REQ_MAY_SLEEP was not + specified + - crypto: qat - fix double free in qat_uclo_create_batch_init_list + - crypto: ccp - Fix use of merged scatterlists + - crypto: cpt - don't sleep of CRYPTO_TFM_REQ_MAY_SLEEP was not specified + - tick/nohz: Narrow down noise while setting current task's tick dependency + - bitfield.h: don't compile-time validate _val in FIELD_FIT + - fs/minix: check return value of sb_getblk() + - fs/minix: don't allow getting deleted inodes + - fs/minix: reject too-large maximum file size + - kvm: x86: replace kvm_spec_ctrl_test_value with runtime test on the host + - 9p: Fix memory leak in v9fs_mount + - driver core: Fix probe_count imbalance in really_probe() + - media: media-request: Fix crash if memory allocation fails + - drm/ttm/nouveau: don't call tt destroy callback on alloc failure. + - io_uring: set ctx sq/cq entry count earlier + - io_uring: use TWA_SIGNAL for task_work uncondtionally + - io_uring: fail poll arm on queue proc failure + - io_uring: sanitize double poll handling + - NFS: Don't move layouts to plh_return_segs list while in use + - NFS: Don't return layout segments that are in use + - cpufreq: Fix locking issues with governors + - cpufreq: dt: fix oops on armada37xx + - MIPS: VZ: Only include loongson_regs.h for CPU_LOONGSON64 + - include/asm-generic/vmlinux.lds.h: align ro_after_init + - PM / devfreq: rk3399_dmc: Fix kernel oops when rockchip,pmu is absent + - PM / devfreq: Fix indentaion of devfreq_summary debugfs node + - spi: spidev: Align buffers for DMA + - mtd: rawnand: qcom: avoid write to unavailable register + - mtd: spi-nor: intel-spi: Simulate WRDI command + - erofs: fix extended inode could cross boundary + - Revert "mm/vmstat.c: do not show lowmem reserve protection information of + empty zone" + - Revert "parisc: Improve interrupt handling in arch_spin_lock_flags()" + - Revert "parisc: Drop LDCW barrier in CAS code when running UP" + - Revert "parisc: Use ldcw instruction for SMP spinlock release barrier" + - Revert "parisc: Revert "Release spinlocks using ordered store"" + - parisc: Do not use an ordered store in pa_tlb_lock() + - parisc: Implement __smp_store_release and __smp_load_acquire barriers + - parisc: mask out enable and reserved bits from sba imask + - ARM: dts: exynos: Extend all Exynos5800 A15's OPPs with max voltage data + - ARM: 8992/1: Fix unwind_frame for clang-built kernels + - firmware: qcom_scm: Fix legacy convention SCM accessors + - irqdomain/treewide: Free firmware node after domain removal + - firmware_loader: EFI firmware loader must handle pre-allocated buffer + - xen/balloon: fix accounting in alloc_xenballooned_pages error path + - xen/balloon: make the balloon wait interruptible + - xen/gntdev: Fix dmabuf import with non-zero sgt offset + - drm/xen-front: Fix misused IS_ERR_OR_NULL checks + - s390/dasd: fix inability to use DASD with DIAG driver + - s390/numa: set node distance to LOCAL_DISTANCE + - s390/gmap: improve THP splitting + - io_uring: Fix NULL pointer dereference in loop_rw_iter() + - io_uring: hold 'ctx' reference around task_work queue + execute + - io_uring: add missing REQ_F_COMP_LOCKED for nested requests + - io_uring: enable lookup of links holding inflight files + - task_work: only grab task signal lock when needed + - Linux 5.8.2 + + * Regression on NFS: unable to handle page fault in mempool_alloc_slab + (LP: #1886277) // Groovy update: v5.8.2 upstream stable release + (LP: #1892215) + - SUNRPC: Fix ("SUNRPC: Add "@len" parameter to gss_unwrap()") + + * Groovy update: v5.8.2 upstream stable release (LP: #1892215) // + CVE-2019-19770 which shows this issue is not a core debugfs issue, but + - blktrace: fix debugfs use after free + + * Fix missing HDMI Audio on another HP Desktop (LP: #1891617) + - ALSA: hda/hdmi: Use force connectivity quirk on another HP desktop + + * alsa/sof: support 1 and 3 dmics (LP: #1891585) + - SAUCE: ASoC: SOF: intel: hda: support also devices with 1 and 3 dmics + + * fix ftrace pid filtering on linux 5.8 (LP: #1891528) + - ftrace: Fix ftrace_trace_task return value + + * Fix false-negative return value for rtnetlink.sh in kselftests/net + (LP: #1890136) + - selftests: rtnetlink: correct the final return value for the test + - selftests: rtnetlink: make kci_test_encap() return sub-test result + + * Disable Lenovo P620 Rear line-in volume control (LP: #1891281) + - ALSA: usb-audio: Disable Lenovo P620 Rear line-in volume control + + * tcp_fastopen_backup_key.sh from net in ubuntu_kernel_selftests failed on + Eoan LPAR (LP: #1869134) + - tcp: correct read of TFO keys on big endian systems + + * Groovy update: v5.8.1 upstream stable release (LP: #1891647) + - scsi: ufs: Fix and simplify setup_xfer_req variant operation + - USB: serial: qcserial: add EM7305 QDL product ID + - USB: iowarrior: fix up report size handling for some devices + - usb: xhci: define IDs for various ASMedia host controllers + - usb: xhci: Fix ASMedia ASM1142 DMA addressing + - Revert "ALSA: hda: call runtime_allow() for all hda controllers" + - ALSA: hda/realtek: Add alc269/alc662 pin-tables for Loongson-3 laptops + - ALSA: hda/ca0132 - Add new quirk ID for Recon3D. + - ALSA: hda/ca0132 - Fix ZxR Headphone gain control get value. + - ALSA: hda/ca0132 - Fix AE-5 microphone selection commands. + - ALSA: seq: oss: Serialize ioctls + - staging: android: ashmem: Fix lockdep warning for write operation + - staging: rtl8712: handle firmware load failure + - Staging: rtl8188eu: rtw_mlme: Fix uninitialized variable authmode + - Bluetooth: Fix slab-out-of-bounds read in hci_extended_inquiry_result_evt() + - Bluetooth: Prevent out-of-bounds read in hci_inquiry_result_evt() + - Bluetooth: Prevent out-of-bounds read in hci_inquiry_result_with_rssi_evt() + - omapfb: dss: Fix max fclk divider for omap36xx + - binder: Prevent context manager from incrementing ref 0 + - Smack: fix use-after-free in smk_write_relabel_self() + - scripts: add dummy report mode to add_namespace.cocci + - lkdtm/heap: Avoid edge and middle of slabs + - vgacon: Fix for missing check in scrollback handling + - mtd: properly check all write ioctls for permissions + - leds: wm831x-status: fix use-after-free on unbind + - leds: lm36274: fix use-after-free on unbind + - leds: da903x: fix use-after-free on unbind + - leds: lm3533: fix use-after-free on unbind + - leds: 88pm860x: fix use-after-free on unbind + - gpio: max77620: Fix missing release of interrupt + - xattr: break delegations in {set,remove}xattr + - Revert "powerpc/kasan: Fix shadow pages allocation failure" + - powerpc/kasan: Fix shadow pages allocation failure + - PCI: tegra: Revert tegra124 raw_violation_fixup + - ima: move APPRAISE_BOOTPARAM dependency on ARCH_POLICY to runtime + - random32: move the pseudo-random 32-bit definitions to prandom.h + - random: random.h should include archrandom.h, not the other way around + - arm64: kaslr: Use standard early random function + - Linux 5.8.1 + - [Config] Update annotations for changes in v5.8.1 + + * bcache by-uuid links disappear after mounting bcache0 (LP: #1861941) + - SAUCE: Revert "UBUNTU: SAUCE: (no-up) bcache: decouple emitting a cached_dev + CHANGE uevent" + + * Miscellaneous upstream changes + - Revert "ALSA: hda - Disable audio component for legacy Nvidia HDMI codecs" + + -- Seth Forshee Tue, 25 Aug 2020 20:19:14 -0500 + +linux (5.8.0-16.17) groovy; urgency=medium + + * groovy/linux: 5.8.0-16.17 -proposed tracker (LP: #1891233) + + * Miscellaneous Ubuntu changes + - hio -- Update to use bio_{start,end}_io_acct with 5.8+ + - Enable hio driver + - [Packaging] Temporarily disable building doc package contents + + -- Seth Forshee Tue, 11 Aug 2020 15:32:58 -0500 + +linux (5.8.0-15.16) groovy; urgency=medium + + * groovy/linux: 5.8.0-15.16 -proposed tracker (LP: #1891177) + + * Miscellaneous Ubuntu changes + - SAUCE: Documentation: import error c_funcptr_sig_re, c_sig_re (sphinx- + doc/sphinx@0f49e30c) + + -- Seth Forshee Tue, 11 Aug 2020 09:29:58 -0500 + +linux (5.8.0-14.15) groovy; urgency=medium + + * groovy/linux: 5.8.0-14.15 -proposed tracker (LP: #1891085) + + * Packaging resync (LP: #1786013) + - [Packaging] update helper scripts + + * msg_zerocopy.sh in net from ubuntu_kernel_selftests failed (LP: #1812620) + - selftests/net: relax cpu affinity requirement in msg_zerocopy test + + * Fix missing HDMI/DP Audio on an HP Desktop (LP: #1890441) + - ALSA: hda/hdmi: Add quirk to force connectivity + + * Add initial audio support for Lenovo ThinkStation P620 (LP: #1890317) + - ALSA: usb-audio: Add support for Lenovo ThinkStation P620 + + * Fix IOMMU error on AMD Radeon Pro W5700 (LP: #1890306) + - PCI: Mark AMD Navi10 GPU rev 0x00 ATS as broken + + * Enlarge hisi_sec2 capability (LP: #1890222) + - crypto: hisilicon - update SEC driver module parameter + + * Miscellaneous Ubuntu changes + - [Config] Re-enable signing for ppc64el + + -- Seth Forshee Mon, 10 Aug 2020 15:26:46 -0500 + +linux (5.8.0-13.14) groovy; urgency=medium + + * Miscellaneous Ubuntu changes + - [Config] Remove i386 configs + - SAUCE: apply a workaround to re-enable CONFIG_CRYPTO_AEGIS128_SIMD + - SAUCE: export __get_vm_area_caller() and map_kernel_range() + - [Config] drop CONFIG_BINFMT_AOUT enforcement + + * Miscellaneous upstream changes + - Revert "UBUNTU: [Config] disable CONFIG_CRYPTO_AEGIS128_SIMD" + + [ Upstream Kernel Changes ] + + * Rebase to v5.8 + + -- Andrea Righi Tue, 04 Aug 2020 09:51:50 +0200 + +linux (5.8.0-12.13) groovy; urgency=medium + + * groovy/linux: 5.8.0-12.13 -proposed tracker (LP: #1889481) + + * Fix right speaker of HP laptop (LP: #1889375) + - SAUCE: hda/realtek: Fix right speaker of HP laptop + + * blk_update_request error when mount nvme partition (LP: #1872383) + - SAUCE: nvme-pci: prevent SK hynix PC400 from using Write Zeroes command + + * Add support for Atlantic NIC firmware v4 (LP: #1886908) + - Revert "UBUNTU: SAUCE: net: atlantic: Add support for firmware v4" + - net: atlantic: align return value of ver_match function with function name + - net: atlantic: add support for FW 4.x + + * Miscellaneous Ubuntu changes + - [Debian] Fix debian/tests for linux-5.8 -> linux rename + - SAUCE: selftests/powerpc: return skip code for spectre_v2 + + -- Seth Forshee Wed, 29 Jul 2020 16:58:47 -0500 + +linux (5.8.0-11.12) groovy; urgency=medium + + * groovy/linux: 5.8.0-11.12 -proposed tracker (LP: #1889336) + + * Miscellaneous Ubuntu changes + - [Packaging] dwarves is not required for linux-libc-dev or stage1 + + -- Seth Forshee Tue, 28 Jul 2020 22:33:24 -0500 + +linux (5.8.0-10.11) groovy; urgency=medium + + * groovy/linux: 5.8.0-10.11 -proposed tracker (LP: #1889316) + + * Miscellaneous Ubuntu changes + - [Packaging] Add more packages to Build-Depends-Indep for docs + - [Debian] Specify python executable in kmake + - [Debian] Don't treat warnings as errors during perf builds + - [Config] Disable signing for ppc64el + + -- Seth Forshee Tue, 28 Jul 2020 17:09:52 -0500 + +linux (5.8.0-9.10) groovy; urgency=medium + + * groovy/linux: 5.8.0-9.10 -proposed tracker (LP: #1889140) + + * Packaging resync (LP: #1786013) + - [Packaging] update helper scripts + + * Miscellaneous Ubuntu changes + - SAUCE: Fix s390x compile error on F32 utils/stat-display.c + - [Packaging] Add python3-venv to Build-Depends-Indep + + -- Seth Forshee Mon, 27 Jul 2020 21:01:46 -0500 + +linux (5.8.0-8.9) groovy; urgency=medium + + * groovy/linux: 5.8.0-8.9 -proposed tracker (LP: #1889104) + + * Packaging resync (LP: #1786013) + - [Packaging] update helper scripts + - update dkms package versions + - [Packaging] update variants + + * Introduce the new NVIDIA 450-server and the 450 UDA series (LP: #1887674) + - [Packaging] NVIDIA -- Add signed modules for 450 450-server + + * Introduce the new NVIDIA 418-server and 440-server series, and update the + current NVIDIA drivers (LP: #1881137) + - [packaging] add signed modules for the 418-server and the 440-server + flavours + + * Miscellaneous Ubuntu changes + - SAUCE: Revert "radix-tree: Use local_lock for protection" + - [Config] CONFIG_DEBUG_INFO_COMPRESSED=n + - [Config] disable CONFIG_CRYPTO_AEGIS128_SIMD + - [Config] Enable nvidia dkms build + + * Miscellaneous upstream changes + - usbip: tools: fix build error for multiple definition + + [ Upstream Kernel Changes ] + + * Rebase to v5.8-rc7 + + -- Seth Forshee Mon, 27 Jul 2020 11:18:12 -0500 + +linux (5.8.0-7.8) groovy; urgency=medium + + * Empty entry + + -- Seth Forshee Mon, 27 Jul 2020 09:22:19 +0200 + +linux-5.8 (5.8.0-7.8) groovy; urgency=medium + + * soc/amd/renoir: detect dmic from acpi table (LP: #1887734) + - ASoC: amd: add logic to check dmic hardware runtime + - ASoC: amd: add ACPI dependency check + - ASoC: amd: fixed kernel warnings + + * linux 4.15.0-109-generic network DoS regression vs -108 (LP: #1886668) + - SAUCE: Revert "netprio_cgroup: Fix unlimited memory leak of v2 cgroups" + + * Add support for Atlantic NIC firmware v4 (LP: #1886908) + - SAUCE: net: atlantic: Add support for firmware v4 + + * MGA G200e doesn't work under GDM Wayland (LP: #1886140) + - drm/mgag200: Remove HW cursor + - drm/mgag200: Clean up mga_set_start_address() + - drm/mgag200: Clean up mga_crtc_do_set_base() + - drm/mgag200: Move mode-setting code into separate helper function + - drm/mgag200: Split MISC register update into PLL selection, SYNC and I/O + - drm/mgag200: Update mode registers after plane registers + - drm/mgag200: Set pitch in a separate helper function + - drm/mgag200: Set primary plane's format in separate helper function + - drm/mgag200: Move TAGFIFO reset into separate function + - drm/mgag200: Move hiprilvl setting into separate functions + - drm/mgag200: Move register initialization into separate function + - drm/mgag200: Remove out-commented suspend/resume helpers + - drm/mgag200: Use simple-display data structures + - drm/mgag200: Convert to simple KMS helper + - drm/mgag200: Replace VRAM helpers with SHMEM helpers + + * Miscellaneous Ubuntu changes + - SAUCE: s390/bpf: fix sign extension in branch_ku + - SAUCE: selftests: net: ip_defrag: modprobe missing nf_defrag_ipv6 support + - SAUCE: selftests: fib_nexthop_multiprefix: fix cleanup() netns deletion + - [packaging] debhelper-compat (= 10) (and retire debian/compat) + - [Config] Update configs after rebase to 5.8-rc6 + + [ Upstream Kernel Changes ] + + * Rebase to v5.8-rc6 + + -- Andrea Righi Mon, 20 Jul 2020 09:55:47 +0200 + +linux-5.8 (5.8.0-6.7) groovy; urgency=medium + + * Packaging resync (LP: #1786013) + - update dkms package versions + + * perf build broken after updating to bintuils 2.34.90.20200706-1ubuntu1 + (LP: #1887397) + - SAUCE: libtraceevent: Strip symbol version from nm output + + -- Seth Forshee Mon, 13 Jul 2020 14:07:53 -0500 + +linux-5.8 (5.8.0-5.6) groovy; urgency=medium + + * linux-libc-dev broken for crossbuilding, Multi-Arch:same violation + (LP: #1886188) + - [Packaging] Produce linux-libc-deb package for riscv64 + - [Debian] Disallow building linux-libc-dev from linux-riscv + + * Miscellaneous Ubuntu changes + - SAUCE: Revert "UBUNTU: SAUCE: test_bpf: remove expected fail for Ctx heavy + transformations test on s390" + - SAUCE: Revert "test_bpf: flag tests that cannot be jited on s390" + - [Config] Update configs (gcc update) + + [ Upstream Kernel Changes ] + + * Rebase to v5.8-rc5 + + -- Andrea Righi Mon, 13 Jul 2020 08:42:14 +0200 + +linux-5.8 (5.8.0-4.5) groovy; urgency=medium + + * Add generic LED class support for audio LED (LP: #1885896) + - ALSA: hda: generic: Always call led-trigger for mic mute LED + - ALSA: hda: generic: Add a helper for mic-mute LED with LED classdev + - ALSA: hda/realtek: Convert to cdev-variant of mic-mute LED controls + - ALSA: hda/conexant: Convert to cdev-variant of mic-mute LED controls + - ALSA: hda/sigmatel: Convert to cdev-variant of mic-mute LED controls + - ALSA: hda: generic: Drop unused snd_hda_gen_fixup_micmute_led() + - ALSA: hda: generic: Drop the old mic-mute LED hook + - ALSA: hda: generic: Add vmaster mute LED helper + - ALSA: hda/realtek: Use the new vmaster mute LED helper + - ALSA: hda/conexant: Use the new vmaster mute LED helper + - ALSA: hda/sigmatel: Use the new vmaster mute LED helper + - ALSA: hda/realtek: Unify LED helper code + - ALSA: hda: Let LED cdev handling suspend/resume + + * seccomp_bpf fails on powerpc (LP: #1885757) + - SAUCE: selftests/seccomp: fix ptrace tests on powerpc + + * CVE-2020-11935 + - SAUCE: aufs: do not call i_readcount_inc() + + * Miscellaneous Ubuntu changes + - SAUCE: Update aufs to 5.x-rcN 20200622 + - [Config] Update configs to set CONFIG_SND_HDA_GENERIC_LEDS value + - [Config] CONFIG_SECURITY_DMESG_RESTRICT=y + + [ Upstream Kernel Changes ] + + * Rebase to v5.8-rc4 + + -- Seth Forshee Mon, 06 Jul 2020 08:14:28 -0500 + +linux-5.8 (5.8.0-3.4) groovy; urgency=medium + + * Packaging resync (LP: #1786013) + - [Packaging] update helper scripts + - update dkms package versions + + * lxc 1:4.0.2-0ubuntu1 ADT test failure with linux-5.8 5.8.0-1.2 + (LP: #1884635) + - SAUCE: overlayfs: fix faulty rebase + + * shiftfs: O_TMPFILE reports ESTALE (LP: #1872757) + - SAUCE: shiftfs: prevent ESTALE for LOOKUP_JUMP lookups + + * shiftfs: fix btrfs regression (LP: #1884767) + - SAUCE: Revert "UBUNTU: SAUCE: shiftfs: fix dentry revalidation" + + * Miscellaneous Ubuntu changes + - [Config] CONFIG_DEBUG_INFO_COMPRESSED=y + - SAUCE: regulator: rename da903x to da903x-regulator + - [Config] Add da903x to modules.ignore + - [Config] Update configs for rebase to 5.8-rc3 + + [ Upstream Kernel Changes ] + + * Rebase to v5.8-rc3 + + -- Seth Forshee Mon, 29 Jun 2020 08:48:25 -0500 + +linux-5.8 (5.8.0-2.3) groovy; urgency=medium + + * Support Audio Mute LED for two new HP laptops (LP: #1884251) + - ALSA: hda/realtek: Add mute LED and micmute LED support for HP systems + + * CVE-2019-16089 + - SAUCE: nbd_genl_status: null check for nla_nest_start + + * tpm: fix TIS locality timeout problems (LP: #1881710) + - SAUCE: tpm: fix TIS locality timeout problems + + * Packaging resync (LP: #1786013) + - update dkms package versions + + * Miscellaneous Ubuntu changes + - SAUCE: security,perf: Allow further restriction of perf_event_open + - [Config] CONFIG_SECURITY_PERF_EVENTS_RESTRICT=y + - [Config] Update configs and annotations for 5.8-rc2 + - [Config] Enable zfs + - [Config] Enable CONFIG_DEBUG_INFO_BTF + + [ Upstream Kernel Changes ] + + * Rebase to v5.8-rc2 + + -- Seth Forshee Mon, 22 Jun 2020 15:05:54 -0500 + +linux-5.8 (5.8.0-1.2) groovy; urgency=medium + + * Miscellaneous Ubuntu changes + - [Debian] Support linux-x.y in udeb package names + - [Packaging] Use SRCPKGNAME for udeb packages + + -- Seth Forshee Wed, 17 Jun 2020 19:34:32 -0500 + +linux-5.8 (5.8.0-0.1) groovy; urgency=medium + + * Docker registry doesn't stay up and keeps restarting (LP: #1879690) + - Revert "UBUNTU: SAUCE: overlayfs: use shiftfs hacks only with shiftfs as underlay" + + * Packaging resync (LP: #1786013) + - [Packaging] update variants + + * Miscellaneous Ubuntu changes + - [Packaging] Update source package name to linux-5.8 + - SAUCE: (lockdown) Add efi_status_to_str() and rework efi_status_to_err(). + - SAUCE: (lockdown) Make get_cert_list() use efi_status_to_str() to print error messages. + - SAUCE: (lockdown) security: lockdown: expose a hook to lock the kernel down + - SAUCE: (lockdown) efi: Add an EFI_SECURE_BOOT flag to indicate secure boot mode + - SAUCE: (lockdown) efi: Lock down the kernel if booted in secure boot mode + - SAUCE: (lockdown) s390: Lock down the kernel when the IPL secure flag is set + - SAUCE: (lockdown) KEYS: Make use of platform keyring for module signature verify + - SAUCE: (lockdown) arm64: Allow locking down the kernel under EFI secure boot + - SAUCE: (lockdown) security: lockdown: Make CONFIG_LOCK_DOWN_IN_EFI_SECURE_BOOT more generic + - SAUCE: (lockdown) powerpc: lock down kernel in secure boot mode + - SAUCE: Import aufs driver + - [Config] Update configs for v5.8-rc1 + - [Config] Update annotations for v5.8-rc1 config changes + - SAUCE: shiftfs -- Fix build errors from missing fiemap definitions + - Disable hio driver + + * Miscellaneous upstream changes + - acpi: disallow loading configfs acpi tables when locked down + + [ Upstream Kernel Changes ] + + * Rebase to v5.8-rc1 + + -- Seth Forshee Wed, 17 Jun 2020 11:54:24 -0500 + +linux-5.8 (5.8.0-0.0) groovy; urgency=medium + + * Empty entry + + -- Seth Forshee Sun, 14 Jun 2020 22:40:35 -0500 + +linux-5.7 (5.7.0-8.9) groovy; urgency=medium + + * Packaging resync (LP: #1786013) + - update dkms package versions + + * Enforce all config annotations (LP: #1879327) + - [Config]: do not enforce CONFIG_VERSION_SIGNATURE + - [Config]: prepare to enforce all + - [Config]: enforce all config options + + * Miscellaneous Ubuntu changes + - [Config]: annotations review after 5.7 rebase + - [Config] annotations: IXP4XX* depends on ARCH_IXP4XX + - [Config] THERMAL_GOV_POWER_ALLOCATOR=y + - [Config] annotations: SOC_CAMERA is marked as BROKEN + - [Config] annotations: NFSD_V4_2_INTER_SSC depends on NFS_FS=y + - [Config] annotations: CRYPTO_DEV_CHELSIO_TLS depends on legacy (and largely + unmantained) TLS_TOE + - [Config] annotations: SERIO_OLPC_APSP depends on ARCH_MMP + - [Config] RTW88_DEBUG=y + - [Config] annotations: ISDN_CAPI is a bool, and BT_CMTP depends on it + - [Config] annotations SND_SOC_SOF_DEVELOPER_SUPPORT depends on + SND_SOC_SOF_DEVELOPER_SUPPORT + - [Config] annotations: SND_SOC_SOF_BAYTRAIL_SUPPORT is mutually exclusive + with SND_SST_ATOM_HIFI2_PLATFORM_ACPI + - [Config] annotations: DEBUG_IMX_UART_PORT is defined only any + DEBUG_IMX*_UART is enabled + - [Config] annotations: HW_RANDOM_IMX_RNGC depends on SOC_IMX25 + - [Config] annotations: armhf: VIRTUALIZATION support was removed for arm32 + - [Config] annotations: arm64: remove DEBUG_ALIGN_RODATA + - [Config] annotations: ppc64: DATA_SHIFT defaults to PPC_PAGE_SHIFT + - [Config] arm64: enforce ARM64_USE_LSE_ATOMICS + - [Config] s390x: MOST is not set + - [Config] s390x: BCM84881_PHY is not set + - [Config] s390x: XILINX_LL_TEMAC is not set + - [Config] s390x: PHY_INTEL_EMMC requires GENERIC_PHY (off by default on + s390x) + - [Config] s390x: CHECK_STACK conflicts with VMAP_STACK + - [Config] annotations: s390x: NODES_SHIFT=1 + - [Config] annotations: import new symbols + - [Config] annotations: remove unmatched menu and options + + -- Paolo Pisati Fri, 12 Jun 2020 12:03:01 +0200 + +linux-5.7 (5.7.0-7.8) groovy; urgency=medium + + * Packaging resync (LP: #1786013) + - update dkms package versions + - [Packaging] update helper scripts + + * [UBUNTU 20.04] s390x/pci: fix linking between PF and VF for multifunction + devices (LP: #1879704) + - PCI/IOV: Introduce pci_iov_sysfs_link() function + - s390/pci: create links between PFs and VFs + + * Miscellaneous Ubuntu changes + - [Config] Disable UEFI signing for arm64 + - Rebase to v5.7.1 + + [ Upstream Kernel Changes ] + + * Rebase to v5.7.1 + + -- Paolo Pisati Mon, 08 Jun 2020 11:16:58 +0200 + +linux-5.7 (5.7.0-6.7) groovy; urgency=medium + + * Packaging resync (LP: #1786013) + - [Packaging] update helper scripts + - update dkms package versions + + * shiftfs: fix btrfs snapshot deletion (LP: #1879688) + - SAUCE: shiftfs: let userns root destroy subvolumes from other users + + * seccomp_benchmark times out on eoan (LP: #1881576) + - SAUCE: selftests/seccomp: use 90s as timeout + + * Realtek 8723DE [10ec:d723] subsystem [10ec:d738] disconnects unsolicitedly + when Bluetooth is paired: Reason: 23=IEEE8021X_FAILED (LP: #1878147) + - SAUCE: Revert "UBUNTU: SAUCE: rtw88: Move driver IQK to set channel before + association for 11N chip" + - SAUCE: Revert "UBUNTU: SAUCE: rtw88: fix rate for a while after being + connected" + - SAUCE: Revert "UBUNTU: SAUCE: rtw88: No retry and report for auth and assoc" + - SAUCE: Revert "UBUNTU: SAUCE: rtw88: 8723d: Add coex support" + - rtw88: 8723d: Add coex support + - SAUCE: rtw88: coex: 8723d: set antanna control owner + - SAUCE: rtw88: coex: 8723d: handle BT inquiry cases + - SAUCE: rtw88: fix EAPOL 4-way failure by finish IQK earlier + + * ASoC/amd: add audio driver for amd renoir (LP: #1881046) + - ASoC: amd: add Renoir ACP3x IP register header + - ASoC: amd: add Renoir ACP PCI driver + - ASoC: amd: add acp init/de-init functions + - ASoC: amd: create acp3x pdm platform device + - ASoC: amd: add ACP3x PDM platform driver + - ASoC: amd: irq handler changes for ACP3x PDM dma driver + - ASoC: amd: add acp3x pdm driver dma ops + - ASoC: amd: add ACP PDM DMA driver dai ops + - ASoC: amd: add Renoir ACP PCI driver PM ops + - ASoC: amd: add ACP PDM DMA driver pm ops + - ASoC: amd: enable Renoir acp3x drivers build + - ASoC: amd: create platform devices for Renoir + - ASoC: amd: RN machine driver using dmic + - ASoC: amd: enable build for RN machine driver + - ASoC: amd: fix kernel warning + - ASoC: amd: refactoring dai_hw_params() callback + - ASoC: amd: return error when acp de-init fails + - [Config]: enable amd renoir ASoC audio + + * Slow send speed with Intel I219-V on Ubuntu 18.04.1 (LP: #1802691) + - e1000e: Disable TSO for buffer overrun workaround + + * Fix incorrect speed/duplex when I210 device is runtime suspended + (LP: #1880656) + - igb: Report speed and duplex as unknown when device is runtime suspended + + * Fix Pericom USB controller OHCI/EHCI PME# defect (LP: #1879321) + - serial: 8250_pci: Move Pericom IDs to pci_ids.h + - PCI: Avoid Pericom USB controller OHCI/EHCI PME# defect + + * [UBUNTU 20.04] s390x/pci: enumerate pci functions per physical adapter + (LP: #1874056) + - s390/pci: Expose new port attribute for PCIe functions + - s390/pci: adaptation of iommu to multifunction + - s390/pci: define kernel parameters for PCI multifunction + - s390/pci: define RID and RID available + - s390/pci: create zPCI bus + - s390/pci: adapt events for zbus + - s390/pci: Handling multifunctions + - s390/pci: Do not disable PF when VFs exist + - s390/pci: Documentation for zPCI + - s390/pci: removes wrong PCI multifunction assignment + + * add 16-bit width registers support for EEPROM at24 device (LP: #1876699) + - regmap-i2c: add 16-bit width registers support + + * Miscellaneous Ubuntu changes + - [Config] Enable virtualbox guest and shared-folder modules + + [ Upstream Kernel Changes ] + + * Rebase to v5.7 + + -- Seth Forshee Mon, 01 Jun 2020 16:11:24 -0500 + +linux-5.7 (5.7.0-5.6) groovy; urgency=medium + + * Packaging resync (LP: #1786013) + - update dkms package versions + + * [UBUNTU 20.04] PSI generates overhead on s390x (LP: #1876044) + - Ubuntu: [Config] CONFIG_PSI is enabled by default, but creates additional + overhead on s390x, hence should be disabled by default on s390x only. + + * Miscellaneous Ubuntu changes + - Rebase to v5.7-rc7 + - [Config] ppc64el: disable STRICT_KERNEL_RWX + + [ Upstream Kernel Changes ] + + * Rebase to v5.7-rc7 + + -- Paolo Pisati Mon, 25 May 2020 11:44:09 +0200 + +linux-5.7 (5.7.0-4.5) groovy; urgency=medium + + * Packaging resync (LP: #1786013) + - update dkms package versions + + * update-initramfs complains of missing amdgpu firmware files (LP: #1873325) + - SAUCE: drm/amdgpu: Remove unreleased arcturus and navi12 firmware from + modinfo + + * Support DMIC micmute LED on HP platforms (LP: #1876859) + - ALSA: hda/realtek - Introduce polarity for micmute LED GPIO + - ALSA: hda/realtek - Enable micmute LED on and HP system + - ALSA: hda/realtek - Add LED class support for micmute LED + - ALSA: hda/realtek - Fix unused variable warning w/o + CONFIG_LEDS_TRIGGER_AUDIO + - ASoC: SOF: Update correct LED status at the first time usage of + update_mute_led() + + * Killer(R) Wi-Fi 6 AX1650i 160MHz Wireless Network Adapter (201NGW), + REV=0x354 [8086:a0f0] subsystem id [1a56:1651] wireless adapter not found + due to firmware crash (LP: #1874685) + - SAUCE: iwlwifi: pcie: handle QuZ configs with killer NICs as well + + * rtkit-daemon[*]: Failed to make ourselves RT: Operation not permitted after + upgrade to 20.04 (LP: #1875665) + - [Config] Turn off CONFIG_RT_GROUP_SCHED everywhere + + * Unable to handle kernel pointer dereference in virtual kernel address space + on Eoan (LP: #1876645) + - SAUCE: overlayfs: fix shitfs special-casing + + * Miscellaneous Ubuntu changes + - SAUCE: skip building selftest 'runqslower' if kernel not built + - Rebase to v5.7-rc6 + - [Config] updateconfigs after 5.7-rc6 rebase + + [ Upstream Kernel Changes ] + + * Rebase to v5.7-rc6 + + -- Paolo Pisati Mon, 18 May 2020 11:27:25 +0200 + +linux-5.7 (5.7.0-3.4) groovy; urgency=medium + + [ Upstream Kernel Changes ] + + * Rebase to v5.7-rc5 + + * Packaging resync (LP: #1786013) + - update dkms package versions + + * getitimer returns it_value=0 erroneously (LP: #1349028) + - [Config] CONTEXT_TRACKING_FORCE policy should be unset + + * lockdown on power (LP: #1855668) // Ubuntu Kernel Support for OpenPOWER NV + Secure & Trusted Boot (LP: #1866909) + - [Config] Enable configs for OpenPOWER NV Secure & Trusted Boot + + * Miscellaneous Ubuntu changes + - SAUCE: Import aufs driver + - [Config] Enable aufs + - [Config] annotations: remove SND_SOC_SOF_HDA_COMMON_HDMI_CODEC + - [Config] Remove CONFIG_SND_HDA_INTEL_DETECT_DMIC from annotations + - [Debian] final-checks -- Do not remove ~* from abi + - [Config] Enable 5-level page table support for x86 + - [Config] updateconfigs after 5.7-rc5 rebase + + -- Paolo Pisati Mon, 11 May 2020 10:25:42 +0200 + +linux-5.7 (5.7.0-2.3) groovy; urgency=medium + + * Packaging resync (LP: #1786013) + - [Packaging] update helper scripts + - update dkms package versions + - [Packaging] update helper scripts + + * ASUS T100HAN boots to a blank screen with a cursor [i965: Failed to submit + batchbuffer: Input/output error] (LP: #1860754) + - [Config] CONFIG_PMIC_OPREGION=y and CONFIG_GPIO_CRYSTAL_COVE=y for amd64 + + * ubuntu/focal64 fails to mount Vagrant shared folders (LP: #1873506) + - [Packaging] Move virtualbox modules to linux-modules + - [Packaging] Remove vbox and zfs modules from generic.inclusion-list + + * built-using constraints preventing uploads (LP: #1875601) + - temporarily drop Built-Using data + + * dkms artifacts may expire from the pool (LP: #1850958) + - [Packaging] autoreconstruct -- manage executable debian files + - [packaging] handle downloads from the librarian better + + * Add signed modules for the 435 NVIDIA driver (LP: #1875888) + - [Packaging] NVIDIA -- add signed modules for the 435 NVIDIA driver + + * [Selftests] Apply various fixes and improvements (LP: #1870543) + - SAUCE: selftests/seccomp -- Disable timeout for seccomp tests + + * [17.04 FEAT] Integrate kernel message catalogue for s390x into Ubuntu + distribution (LP: #1628889) + - SAUCE: s390: kernel message catalog + + * Overlayfs in user namespace leaks directory content of inaccessible + directories (LP: #1793458) // CVE-2018-6559 + - SAUCE: overlayfs: ensure mounter privileges when reading directories + + * suspend only works once on ThinkPad X1 Carbon gen 7 (LP: #1865570) + - SAUCE: e1000e: Disable s0ix flow for X1 Carbon 7th + + * [ICL] TC port in legacy/static mode can't be detected due TCCOLD + (LP: #1868936) + - drm/i915/display: Move out code to return the digital_port of the aux ch + - drm/i915/display: Add intel_legacy_aux_to_power_domain() + - drm/i915/display: Split hsw_power_well_enable() into two + - drm/i915/tc/icl: Implement TC cold sequences + - drm/i915/tc: Skip ref held check for TC legacy aux power wells + - drm/i915/tc/tgl: Implement TC cold sequences + - drm/i915/tc: Catch TC users accessing FIA registers without enable aux + - drm/i915/tc: Do not warn when aux power well of static TC ports timeout + + * Touchpad doesn't work on Dell Inspiron 7000 2-in-1 (LP: #1851901) + - Revert "UBUNTU: SAUCE: mfd: intel-lpss: add quirk for Dell XPS 13 7390 + 2-in-1" + + * 'Elan touchpad' not detected on 'Lenovo ThinkBook 15 IIL' (LP: #1861610) + - SAUCE: Input: elan_i2c - add more hardware ID for Lenovo laptop + + * linux-image-5.0.0-35-generic breaks checkpointing of container + (LP: #1857257) + - SAUCE: overlayfs: use shiftfs hacks only with shiftfs as underlay + + * alsa/sof: kernel oops on the machine without Intel hdmi audio codec (a + regression in the asoc machine driver) (LP: #1874359) + - ASoC: intel/skl/hda - fix oops on systems without i915 audio codec + + * Add debian/rules targets to compile/run kernel selftests (LP: #1874286) + - [Packaging] add support to compile/run selftests + + * 5.4.0-24.28 does not seem to apply rtprio, whereas -21 does. (LP: #1873315) + - [Config] lowlatency: turn off RT_GROUP_SCHED + + * alsa/sof: external mic can't be deteced on Lenovo and HP laptops + (LP: #1872569) + - SAUCE: ASoC: intel/skl/hda - set autosuspend timeout for hda codecs + + * shiftfs: O_TMPFILE reports ESTALE (LP: #1872757) + - SAUCE: shiftfs: fix dentry revalidation + + * shiftfs: broken shiftfs nesting (LP: #1872094) + - SAUCE: shiftfs: record correct creator credentials + + * lockdown on power (LP: #1855668) + - SAUCE: (lockdown) powerpc: lock down kernel in secure boot mode + + * Add support for Realtek 8723DE wireless adapter (LP: #1780590) + - SAUCE: rtw88: add adaptivity support for EU/JP regulatory + - SAUCE: rtw88: update tx descriptor of mgmt and rsvd page packets + - SAUCE: rtw88: sar: dump sar information via debugfs + - SAUCE: rtw88: 8723d: add IQ calibration + - SAUCE: rtw88: 8723d: Add power tracking + - SAUCE: rtw88: 8723d: implement flush queue + - SAUCE: rtw88: 8723d: set ltecoex register address in chip_info + - SAUCE: rtw88: 8723d: Add coex support + - SAUCE: rtw88: 8723d: Add shutdown callback to disable BT USB suspend + + * Fix authentication fail on Realtek WiFi 8723de (LP: #1871300) + - SAUCE: rtw88: No retry and report for auth and assoc + - SAUCE: rtw88: fix rate for a while after being connected + - SAUCE: rtw88: Move driver IQK to set channel before association for 11N chip + + * Miscellaneous Ubuntu changes + - SAUCE: rtw88: fix 'const' mismatch in power suequence hooks + - SAUCE: rtw88: fix 'const' mismatch in + __priority_queue_cfg_legacy()/__priority_queue_cfg() + - [Config] RTW88=m + - SAUCE: (lockdown) Revert carried-forward lockdown patches + - SAUCE: (lockdown) Add efi_status_to_str() and rework efi_status_to_err(). + - SAUCE: (lockdown) Make get_cert_list() use efi_status_to_str() to print + error messages. + - SAUCE: (lockdown) security: lockdown: expose a hook to lock the kernel down + - SAUCE: (lockdown) efi: Add an EFI_SECURE_BOOT flag to indicate secure boot + mode + - SAUCE: (lockdown) efi: Lock down the kernel if booted in secure boot mode + - SAUCE: (lockdown) s390: Lock down the kernel when the IPL secure flag is set + - SAUCE: (lockdown) KEYS: Make use of platform keyring for module signature + verify + - SAUCE: (lockdown) arm64: Allow locking down the kernel under EFI secure boot + - SAUCE: (lockdown) security: lockdown: Make + CONFIG_LOCK_DOWN_IN_EFI_SECURE_BOOT more generic + - [Config] Add back CONFIG_LOCK_DOWN_IN_SECURE_BOOT annotation for ppc64el + - [Config] CONFIG_RT_GROUP_SCHED=y + - [Packaging] Include modules.builtin.modinfo in linux-modules + - SAUCE: LSM: Infrastructure management of the sock security + - SAUCE: Fix-up af_unix mediation for sock infrastructure management + - SAUCE: Revert "apparmor: Allow filtering based on secmark policy" + - SAUCE: Revert "apparmor: Parse secmark policy" + - SAUCE: Revert "apparmor: Add a wildcard secid" + - SAUCE: Revert "apparmor: fixup secid map conversion to using IDR" + - SAUCE: Revert "apparmor: Use an IDR to allocate apparmor secids" + - SAUCE: Revert "apparmor: add support for mapping secids and using secctxes" + - Update dropped.txt for restored apparmor patches + - Remove lockdown patches from dropped.txt + - SAUCE: powerpc/ima: require IMA module signatures only if MODULE_SIG is not + enabled + - SAUCE: selftests/ftrace: Use printf instead of echo in kprobe syntax error + tests + - SAUCE: selftests/net -- disable l2tp.sh test + - SAUCE: selftests/net -- disable timeout + - SAUCE: tools: hv: Update shebang to use python3 instead of python + - Remove dropped.txt + - [Packaging] move linux-doc and linux-libc-dev stubs to debian.master + - [Debian] Support generating configs for riscv64 + - [Config] CONFIG_KMSG_IDS=y for s390x + - [Packaging] add libcap-dev dependency + - [Config] CONFIG_AD5770R=m + - [Config] CONFIG_AL3010=m + - [Config] CONFIG_APPLE_MFI_FASTCHARGE=m + - [Config] CONFIG_BAREUDP=m + - [Config] CONFIG_CRYPTO_DEV_OCTEONTX_CPT=m + - [Config] CONFIG_CRYPTO_DEV_ZYNQMP_AES=m + - [Config] CONFIG_DRM_DISPLAY_CONNECTOR=m + - [Config] CONFIG_DRM_PANEL_BOE_TV101WUM_NL6=m + - [Config] CONFIG_DRM_PANEL_ELIDA_KD35T133=m + - [Config] CONFIG_DRM_PANEL_FEIXIN_K101_IM2BA02=m + - [Config] CONFIG_DRM_PANEL_NOVATEK_NT35510=m + - [Config] CONFIG_DRM_PANEL_SAMSUNG_S6E88A0_AMS452EF01=m + - [Config] CONFIG_DRM_PARADE_PS8640=m + - [Config] CONFIG_DRM_SIMPLE_BRIDGE=m + - [Config] CONFIG_DRM_TIDSS=m + - [Config] CONFIG_DRM_TI_TPD12S015=m + - [Config] CONFIG_DRM_TOSHIBA_TC358768=m + - [Config] CONFIG_EDAC_DMC520=m + - [Config] CONFIG_EXFAT_FS=m + - [Config] CONFIG_GP2AP002=m + - [Config] CONFIG_GPIO_MLXBF2=m + - [Config] CONFIG_HID_GLORIOUS=m + - [Config] CONFIG_HID_MCP2221=m + - [Config] CONFIG_HMC425=m + - [Config] CONFIG_ICP10100=m + - [Config] CONFIG_IMX8MM_THERMAL=m + - [Config] CONFIG_IMX_SC_THERMAL=m + - [Config] CONFIG_INTERCONNECT_QCOM_OSM_L3=m + - [Config] CONFIG_INTERCONNECT_QCOM_SC7180=m + - [Config] CONFIG_K3_RTI_WATCHDOG=m + - [Config] CONFIG_MDIO_IPQ8064=m + - [Config] CONFIG_MDIO_MVUSB=m + - [Config] CONFIG_MHI_BUS=m + - [Config] CONFIG_OCTEONTX2_VF=m + - [Config] CONFIG_PHY_CADENCE_TORRENT=m + - [Config] CONFIG_PHY_QCOM_USB_HS_28NM=m + - [Config] CONFIG_PHY_QCOM_USB_SS=m + - [Config] CONFIG_PINCTRL_DA9062=m + - [Config] CONFIG_PINCTRL_IPQ6018=m + - [Config] CONFIG_PTP_1588_CLOCK_IDT82P33=m + - [Config] CONFIG_PTP_1588_CLOCK_VMW=m + - [Config] CONFIG_QCOM_IPA=m + - [Config] CONFIG_REGULATOR_MP5416=m + - [Config] CONFIG_REGULATOR_MP886X=m + - [Config] CONFIG_RN5T618_ADC=m + - [Config] CONFIG_RTC_DRV_MT2712=m + - [Config] CONFIG_RTC_DRV_RC5T619=m + - [Config] CONFIG_SC_MSS_7180=m + - [Config] CONFIG_SENSORS_AXI_FAN_CONTROL=m + - [Config] CONFIG_SM_GCC_8250=m + - [Config] CONFIG_SND_BCM63XX_I2S_WHISTLER=m + - [Config] CONFIG_SND_MESON_AIU=m + - [Config] CONFIG_SND_MESON_G12A_TOACODEC=m + - [Config] CONFIG_SND_MESON_GX_SOUND_CARD=m + - [Config] CONFIG_SND_SOC_AMD_RV_RT5682_MACH=m + - [Config] CONFIG_SND_SOC_INTEL_SOF_PCM512x_MACH=m + - [Config] CONFIG_SND_SOC_MESON_T9015=m + - [Config] CONFIG_SND_SOC_RT5682_SDW=m + - [Config] CONFIG_SND_SOC_TLV320ADCX140=m + - [Config] CONFIG_SPI_FSI=m + - [Config] CONFIG_SPI_MTK_NOR=m + - [Config] CONFIG_SPI_MUX=m + - [Config] CONFIG_SPRD_THERMAL=m + - [Config] CONFIG_SURFACE_3_POWER_OPREGION=m + - [Config] CONFIG_TINYDRM_ILI9486=m + - [Config] CONFIG_TI_K3_AM65_CPSW_NUSS=m + - [Config] CONFIG_TYPEC_MUX_INTEL_PMC=m + - [Config] CONFIG_UACCE=m + - [Config] CONFIG_UNIPHIER_XDMAC=m + - [Config] CONFIG_USB_MAX3420_UDC=m + - [Config] CONFIG_USB_RAW_GADGET=m + - [Config] CONFIG_VHOST_VDPA=m + - [Config] CONFIG_VIDEO_IMX219=m + - [Config] CONFIG_VIDEO_SUN8I_ROTATE=m + - [Config] CONFIG_VIRTIO_VDPA=m + - [Config] CONFIG_MOST_COMPONENTS=m + - [Config] CONFIG_MFD_IQS62X=m + - packaging: getabis: switch to ckt-ppa:bootstrap/linux-5.7 + + * Miscellaneous upstream changes + - Revert "UBUNTU: SAUCE: rtw88: add rtw_read8_mask and rtw_read16_mask" + - Revert "UBUNTU: SAUCE: drm/i915/fbc: disable framebuffer compression on + IceLake" + - Revert "UBUNTU: SAUCE: platform/x86: dell-uart-backlight: move retry block" + + -- Paolo Pisati Mon, 04 May 2020 10:48:48 +0200 + +linux-5.7 (5.7.0-1.2) groovy; urgency=medium + + * Packaging resync (LP: #1786013) + - [Packaging] update helper scripts + + * Miscellaneous Ubuntu changes + - SAUCE: hio: pass make_request ptr directly to blk_alloc_queue() + - SAUCE: hio: locally define disk_map_sector_rcu() + - SAUCE: hio: Revert "block: unexport disk_map_sector_rcu" + - SAUCE: hio: include + - [Config] amd64: i386: HIO=m + - [Config] updateconfigs after 5.7-rc3 rebase + + -- Paolo Pisati Mon, 27 Apr 2020 11:31:38 +0200 + +linux-5.7 (5.7.0-0.1) groovy; urgency=medium + + * Miscellaneous Ubuntu changes + - [Config] updateconfigs after rebase to 5.7-rc1 + + [ Upstream Kernel Changes ] + + * Rebase to v5.7-rc1 + * Rebase to v5.7-rc2 + + -- Paolo Pisati Thu, 16 Apr 2020 11:53:58 +0200 + +linux-5.7 (5.7.0-0.0) focal; urgency=medium + + * Dummy entry + + -- Paolo Pisati Thu, 16 Apr 2020 11:53:58 +0200 + +linux-5.6 (5.6.0-7.7) focal; urgency=medium + + * Packaging resync (LP: #1786013) + - update dkms package versions + + * Kernel Oops - general protection fault: 0000 [#1] SMP PTI after + disconnecting thunderbolt docking station (LP: #1864754) + - SAUCE: ptp: free ptp clock properly + + * swap storms kills interactive use (LP: #1861359) + - SAUCE: mm/page_alloc.c: disable memory reclaim watermark boosting by default + + * sysfs: incorrect network device permissions on network namespace change + (LP: #1865359) + - sysfs: add sysfs_file_change_owner() + - sysfs: add sysfs_link_change_owner() + - sysfs: add sysfs_group{s}_change_owner() + - sysfs: add sysfs_change_owner() + - device: add device_change_owner() + - drivers/base/power: add dpm_sysfs_change_owner() + - net-sysfs: add netdev_change_owner() + - net-sysfs: add queue_change_owner() + - net: fix sysfs permssions when device changes network namespace + - sysfs: fix static inline declaration of sysfs_groups_change_owner() + + * Miscellaneous Ubuntu changes + - [Config] updateconfigs after rebase to 5.6 + + [ Upstream Kernel Changes ] + + * Rebase to v5.6 + + -- Andrea Righi Tue, 31 Mar 2020 10:45:09 +0200 + +linux-5.6 (5.6.0-6.6) focal; urgency=medium + + * suspend only works once on ThinkPad X1 Carbon gen 7 (LP: #1865570) + - SAUCE: e1000e: Disable s0ix flow for X1 Carbon 7th + + * Make Dell WD19 dock more reliable after suspend (LP: #1868217) + - xhci: Ensure link state is U3 after setting USB_SS_PORT_LS_U3 + - xhci: Wait until link state trainsits to U0 after setting USB_SS_PORT_LS_U0 + - xhci: Finetune host initiated USB3 rootport link suspend and resume + + * update-version-dkms doesn't add a BugLink (LP: #1867790) + - [Packaging] Add BugLink to update-version-dkms commit + + * Add support for Realtek 8723DE wireless adapter (LP: #1780590) + - SAUCE: rtw88: add regulatory process strategy for different chipset + - SAUCE: rtw88: support dynamic user regulatory setting + - SAUCE: rtw88: Use secondary channel offset enumeration + - SAUCE: rtw88: 8822c: modify rf protection setting + - SAUCE: rtw88: disable TX-AMSDU on 2.4G band + - SAUCE: Revert "rtw88: disable TX-AMSDU on 2.4G band" + - SAUCE: rtw88: disable TX-AMSDU on 2.4G band + - SAUCE: rtw88: remove unused parameter vif in rtw_lps_pg_info_get() + - SAUCE: rtw88: add rtw_read8_mask and rtw_read16_mask + - SAUCE: rtw88: pci: 8822c should set clock delay to zero + - SAUCE: rtw88: move rtw_enter_ips() to the last when config + - SAUCE: rtw88: avoid holding mutex for cancel_delayed_work_sync() + - SAUCE: rtw88: add ciphers to suppress error message + - SAUCE: rtw88: 8822c: update power sequence to v16 + - SAUCE: rtw88: Fix incorrect beamformee role setting + - SAUCE: rtw88: don't hold all IRQs disabled for PS operations + - SAUCE: rtw88: extract alloc rsvd_page and h2c skb routines + - SAUCE: rtw88: associate reserved pages with each vif + - SAUCE: rtw88: add adaptivity support for EU/JP regulatory + - SAUCE: rtw88: 8723d: Add basic chip capabilities + - SAUCE: rtw88: 8723d: add beamform wrapper functions + - SAUCE: rtw88: 8723d: Add power sequence + - SAUCE: rtw88: 8723d: Add RF read/write ops + - SAUCE: rtw88: 8723d: Add mac/bb/rf/agc/power_limit tables + - SAUCE: rtw88: 8723d: Add cfg_ldo25 to control LDO25 + - SAUCE: rtw88: 8723d: Add new chip op efuse_grant() to control efuse access + - SAUCE: rtw88: 8723d: Add read_efuse to recognize efuse info from map + - SAUCE: rtw88: add legacy firmware download for 8723D devices + - SAUCE: rtw88: no need to send additional information to legacy firmware + - SAUCE: rtw88: 8723d: Add mac power-on/-off function + - SAUCE: rtw88: decompose while(1) loop of power sequence polling command + - SAUCE: rtw88: 8723d: 11N chips don't support H2C queue + - SAUCE: rtw88: 8723d: implement set_tx_power_index ops + - SAUCE: rtw88: 8723d: Organize chip TX/RX FIFO + - SAUCE: rtw88: 8723d: initialize mac/bb/rf basic functions + - SAUCE: rtw88: 8723d: Add DIG parameter + - SAUCE: rtw88: 8723d: Add query_rx_desc + - SAUCE: rtw88: 8723d: Add set_channel + - SAUCE: rtw88: handle C2H_CCX_TX_RPT to know if packet TX'ed successfully + - SAUCE: rtw88: 8723d: 11N chips don't support LDPC + - SAUCE: rtw88: set default port to firmware + - SAUCE: rtw88: update tx descriptor of mgmt and rsvd page packets + - SAUCE: rtw88: sar: add SAR of TX power limit + - SAUCE: rtw88: sar: Load static SAR table from ACPI WRDS method + - SAUCE: rtw88: sar: Load dynamic SAR table from ACPI methods + - SAUCE: rtw88: sar: apply dynamic SAR table to tx power limit + - SAUCE: rtw88: sar: add sar_work to poll if dynamic SAR table is changed + - SAUCE: rtw88: sar: dump sar information via debugfs + - SAUCE: rtw88: 8723d: Add chip_ops::false_alarm_statistics + - SAUCE: rtw88: 8723d: Set IG register for CCK rate + - SAUCE: rtw88: 8723d: add interface configurations table + - SAUCE: rtw88: 8723d: Add LC calibration + - SAUCE: rtw88: 8723d: add IQ calibration + - SAUCE: rtw88: 8723d: Add power tracking + - SAUCE: rtw88: 8723d: Add shutdown callback to disable BT USB suspend + - SAUCE: rtw88: 8723d: implement flush queue + - SAUCE: rtw88: 8723d: set ltecoex register address in chip_info + - SAUCE: rtw88: 8723d: Add coex support + - SAUCE: rtw88: fill zeros to words 0x06 and 0x07 of security cam entry + - SAUCE: rtw88: 8723d: Add 8723DE to Kconfig and Makefile + - [Config] CONFIG_RTW88_8723DE=y + + * [Ubuntu 20.04] Unset HIBERNATION and PM kernel config options for focal + (LP: #1867753) + - [Config] CONFIG_HIBERNATION=n and CONFIG_PM=n for s390x + + * [20.04 FEAT] Base KVM setup for secure guests - kernel part (LP: #1835531) + - s390/protvirt: introduce host side setup + - s390/protvirt: add ultravisor initialization + - s390/mm: provide memory management functions for protected KVM guests + - s390/mm: add (non)secure page access exceptions handlers + - s390/protvirt: Add sysfs firmware interface for Ultravisor information + - KVM: s390/interrupt: do not pin adapter interrupt pages + - KVM: s390: protvirt: Add UV debug trace + - KVM: s390: add new variants of UV CALL + - KVM: s390: protvirt: Add initial vm and cpu lifecycle handling + - KVM: s390: protvirt: Secure memory is not mergeable + - KVM: s390/mm: Make pages accessible before destroying the guest + - KVM: s390: protvirt: Handle SE notification interceptions + - KVM: s390: protvirt: Instruction emulation + - KVM: s390: protvirt: Implement interrupt injection + - KVM: s390: protvirt: Add SCLP interrupt handling + - KVM: s390: protvirt: Handle spec exception loops + - KVM: s390: protvirt: Add new gprs location handling + - KVM: S390: protvirt: Introduce instruction data area bounce buffer + - KVM: s390: protvirt: handle secure guest prefix pages + - KVM: s390/mm: handle guest unpin events + - KVM: s390: protvirt: Write sthyi data to instruction data area + - KVM: s390: protvirt: STSI handling + - KVM: s390: protvirt: disallow one_reg + - KVM: s390: protvirt: Do only reset registers that are accessible + - KVM: s390: protvirt: Only sync fmt4 registers + - KVM: s390: protvirt: Add program exception injection + - KVM: s390: protvirt: UV calls in support of diag308 0, 1 + - KVM: s390: protvirt: Report CPU state to Ultravisor + - KVM: s390: protvirt: Support cmd 5 operation state + - KVM: s390: protvirt: Mask PSW interrupt bits for interception 104 and 112 + - KVM: s390: protvirt: do not inject interrupts after start + - KVM: s390: protvirt: Add UV cpu reset calls + - DOCUMENTATION: Protected virtual machine introduction and IPL + - KVM: s390: protvirt: introduce and enable KVM_CAP_S390_PROTECTED + - KVM: s390: protvirt: Add KVM api documentation + - mm/gup/writeback: add callbacks for inaccessible pages + + * All PS/2 ports on PS/2 Serial add-in bracket are not working after S3 + (LP: #1866734) + - SAUCE: Input: i8042 - fix the selftest retry logic + + * Sys oopsed with sysfs test in ubuntu_stress_smoke_test on X-hwe ARM64 + (LP: #1866772) + - ACPI: sysfs: copy ACPI data using io memory copying + + * Miscellaneous Ubuntu changes + - hio -- remove duplicated MODULE_DEVICE_TABLE declaration + - SAUCE: r8169: disable ASPM L1.1 + - [Config] update annotations from configs + - [Config] update configs after annotation file review + - SAUCE: Revert "tools/power turbostat: Fix 32-bit capabilities warning" + + * Miscellaneous upstream changes + - drm/i915: Fix eDP DPCD aux max backlight calculations + - drm/dp: Introduce EDID-based quirks + - drm/i915: Force DPCD backlight mode on X1 Extreme 2nd Gen 4K AMOLED panel + - drm/i915: Force DPCD backlight mode for some Dell CML 2020 panels + + [ Upstream Kernel Changes ] + + * Rebase to v5.6-rc7 + + -- Andrea Righi Wed, 25 Mar 2020 18:09:13 +0100 + +linux-5.6 (5.6.0-5.5) focal; urgency=medium + + * please help enable CONFIG_EROFS_FS_ZIP (LP: #1867099) + - [Config] CONFIG_EROFS_FS_ZIP=y + - [Config] CONFIG_EROFS_FS_CLUSTER_PAGE_LIMIT=1 + + * Miscellaneous Ubuntu changes + - Config: Fix SND_HDA_PREALLOC_SIZE annotations + - Config: Fix DATA_SHIFT annotations + - Config: remove ANDROID_VSOC from annotations + - Config: remove arm arch from annotations + - Config: Update SOC_R8A7796X annotations + - Config: Update CLK_R8A7796X annotations + - update dkms package versions + - [Config] updateconfigs after rebase to 5.6-rc6 + + [ Upstream Kernel Changes ] + + * Rebase to v5.6-rc6 + + -- Andrea Righi Wed, 18 Mar 2020 17:25:30 +0100 + +linux-5.6 (5.6.0-4.4) focal; urgency=medium + + * Packaging resync (LP: #1786013) + - [Packaging] resync getabis + - [Packaging] update helper scripts + + * Add sysfs attribute to show remapped NVMe (LP: #1863621) + - SAUCE: ata: ahci: Add sysfs attribute to show remapped NVMe device count + + * [20.04 FEAT] Compression improvements in Linux kernel (LP: #1830208) + - [Config] Introducing s390x specific kernel config option CONFIG_ZLIB_DFLTCC + + * [UBUNTU 20.04] s390x/pci: increase CONFIG_PCI_NR_FUNCTIONS to 512 in kernel + config (LP: #1866056) + - [Config] Increase CONFIG_PCI_NR_FUNCTIONS from 64 to 512 starting with focal + on s390x + + * CONFIG_IP_MROUTE_MULTIPLE_TABLES is not set (LP: #1865332) + - [Config] CONFIG_IP_MROUTE_MULTIPLE_TABLES=y + + * [UBUNTU 20.04] Enable CONFIG_NET_SWITCHDEV in kernel config for s390x + starting with focal (LP: #1865452) + - [Config] Enable CONFIG_NET_SWITCHDEV in kernel config for s390x starting + with focal + + * Miscellaneous Ubuntu changes + - SAUCE: Revert "UBUNTU: SAUCE: blk/core: Gracefully handle unset + make_request_fn" + - [Packaging] prevent duplicated entries in modules.ignore + - update dkms package versions + - [Config] updateconfigs after rebase to 5.6-rc5 + + [ Upstream Kernel Changes ] + + * Rebase to v5.6-rc5 + + -- Andrea Righi Mon, 09 Mar 2020 09:42:06 +0100 + +linux-5.6 (5.6.0-3.3) focal; urgency=medium + + * nsleep-lat / set-timer-lat / inconsistency-check / raw_skew from timer in + ubuntu_kernel_selftests timeout on 5.3 / 5.4 (LP: #1864626) + - selftests/timers: Turn off timeout setting + + * Update kernel options CONFIG_NR_CPUS and CONFIG_NUMA_EMU for focal + (LP: #1864198) + - Ubuntu: [Config] Update kernel options CONFIG_NR_CPUS and CONFIG_NUMA_EMU + + * alsa/hda/realtek: fix a mute led regression on Lenovo X1 Carbon + (LP: #1864576) + - SAUCE: ALSA: hda/realtek - Fix a regression for mute led on Lenovo Carbon X1 + + * r8152 init may take up to 40 seconds at initialization with Dell WD19/WD19DC + during hotplug (LP: #1864284) + - UBUNTU SAUCE: r8151: check disconnect status after long sleep + + * Another Dell AIO backlight issue (LP: #1863880) + - SAUCE: platform/x86: dell-uart-backlight: move retry block + + * Backport GetFB2 ioctl (LP: #1863874) + - SAUCE: drm: Add getfb2 ioctl + + * Focal Fossa (20.04) feature request - Enable CONFIG_X86_UV (LP: #1863810) + - [Config] CONFIG_X86_UV=y + + * Miscellaneous Ubuntu changes + - debian: remove snapdragon config, rules and flavour + - remove snapdragon abi files + - update dkms package versions + - [Config] updateconfigs after rebase to 5.6-rc4 + + * Miscellaneous upstream changes + - updateconfigs following snapdragon removal + + [ Upstream Kernel Changes ] + + * Rebase to v5.6-rc4 + + -- Andrea Righi Wed, 04 Mar 2020 08:21:10 +0100 + +linux-5.6 (5.6.0-2.2) focal; urgency=medium + + * Sometimes can't adjust brightness on Dell AIO (LP: #1862885) + - SAUCE: platform/x86: dell-uart-backlight: increase retry times + + * Dell XPS 13 (7390) Display Flickering - 19.10 (LP: #1849947) + - SAUCE: drm/i915: Disable PSR by default on all platforms + + * Miscellaneous Ubuntu changes + - [debian] ignore missing wireguard module + - SAUCE: (lockdown) Add efi_status_to_str() and rework efi_status_to_err(). + - SAUCE: (lockdown) security: lockdown: expose a hook to lock the kernel down + - SAUCE: (lockdown) efi: Add an EFI_SECURE_BOOT flag to indicate secure boot + mode + - SAUCE: (lockdown) efi: Lock down the kernel if booted in secure boot mode + - SAUCE: (lockdown) s390: Lock down the kernel when the IPL secure flag is set + - SAUCE: (lockdown) KEYS: Make use of platform keyring for module signature + verify + - SAUCE: (lockdown) arm64: Allow locking down the kernel under EFI secure boot + - SAUCE: (lockdown) security: lockdown: Make + CONFIG_LOCK_DOWN_IN_EFI_SECURE_BOOT more generic + - [Config] CONFIG_LOCK_DOWN_IN_SECURE_BOOT=y + - update dkms package versions + - [Config] updateconfigs after rebase to 5.6-rc3 + + * Miscellaneous upstream changes + - Revert "UBUNTU: SAUCE: (lockdown) s390/ipl: lockdown kernel when booted + secure" + - Revert "UBUNTU: SAUCE: (lockdown) KEYS: Make use of platform keyring for + module signature verify" + - Revert "UBUNTU: SAUCE: (lockdown) Add a SysRq option to lift kernel + lockdown" + - Revert "UBUNTU: SAUCE: (lockdown) security: lockdown: expose a hook to lock + the kernel down" + - Revert "UBUNTU: SAUCE: (lockdown) Add efi_status_to_str() and rework + efi_status_to_err()." + + -- Andrea Righi Mon, 24 Feb 2020 18:57:22 +0100 + +linux-5.6 (5.6.0-1.1) focal; urgency=medium + + * Integrate Intel SGX driver into linux-azure (LP: #1844245) + - [Packaging] Add systemd service to load intel_sgx + + * QAT drivers for C3XXX and C62X not included as modules (LP: #1845959) + - [Config] CRYPTO_DEV_QAT_C3XXX=m, CRYPTO_DEV_QAT_C62X=m and + CRYPTO_DEV_QAT_DH895xCC=m + + * 5.4.0-11 crash on cryptsetup open (LP: #1860231) + - SAUCE: blk/core: Gracefully handle unset make_request_fn + + * multi-zone raid0 corruption (LP: #1850540) + - SAUCE: md/raid0: Use kernel specific layout + + * Miscellaneous Ubuntu changes + - update dkms package versions + - update dropped.txt after rebase to v5.6-rc1 + - [Config] updateconfigs after rebase to 5.6-rc1 + - hio -- proc_create() requires a "struct proc_ops" in 5.6 + - SAUCE: arm: fix build error in kvm tracepoint + + * Miscellaneous upstream changes + - Revert "UBUNTU: [Config] Disable the uselib system call" + - Revert "UBUNTU: [Config] Disable legacy PTY naming" + - Revert "UBUNTU: [Config] Enforce filtered access to iomem" + - Revert "UBUNTU: [Config] Enable notifier call chain validations" + - Revert "UBUNTU: [Config] Enable scatterlist validation" + - Revert "UBUNTU: [Config] Enable cred sanity checks" + - Revert "UBUNTU: [Config] Enable linked list manipulation checks" + + [ Upstream Kernel Changes ] + + * Rebase to v5.6-rc1 + + -- Andrea Righi Thu, 13 Feb 2020 17:20:27 +0100 + +linux-5.6 (5.6.0-0.0) focal; urgency=medium + + * Dummy entry + + -- Andrea Righi Mon, 10 Feb 2020 11:06:18 +0100 + +linux-5.5 (5.5.0-7.8) focal; urgency=medium + + * CONFIG_USELIB should be disabled (LP: #1855341) + - [Config] Disable the uselib system call + + * CONFIG_LEGACY_PTYS should be disabled (LP: #1855339) + - [Config] Disable legacy PTY naming + + * CONFIG_IO_STRICT_DEVMEM should be enabled (LP: #1855338) + - [Config] Enforce filtered access to iomem + + * CONFIG_DEBUG_NOTIFIERS should be enabled (LP: #1855337) + - [Config] Enable notifier call chain validations + + * CONFIG_DEBUG_SG should be enabled (LP: #1855336) + - [Config] Enable scatterlist validation + + * CONFIG_DEBUG_CREDENTIALS should be enabled (LP: #1855335) + - [Config] Enable cred sanity checks + + * CONFIG_DEBUG_LIST should be enabled (LP: #1855334) + - [Config] Enable linked list manipulation checks + + * shiftfs: prevent lower dentries from going negative during unlink + (LP: #1860041) + - SAUCE: shiftfs: prevent lower dentries from going negative during unlink + + * [SRU][B/OEM-B/OEM-OSP1/D/E/Unstable] UBUNTU: SAUCE: Use native backlight on + Lenovo E41-25/45 (LP: #1859561) + - SAUCE: ACPI: video: Use native backlight on Lenovo E41-25/45 + + * USB key cannot be detected by hotplug on Sunix USB Type-A 3.1 Gen 2 card + [1b21:2142] (LP: #1858988) + - SAUCE: PCI: Avoid ASMedia XHCI USB PME# from D0 defect + + * Dell AIO can't adjust brightness (LP: #1858761) + - SAUCE: platform/x86: dell-uart-backlight: add retry for get scalar status + + * Miscellaneous Ubuntu changes + - [Config] Fix typo in annotations file + - update dkms package versions + + [ Upstream Kernel Changes ] + + * Rebase to v5.5 + + -- Andrea Righi Mon, 27 Jan 2020 11:39:38 +0100 + +linux-5.5 (5.5.0-6.7) focal; urgency=medium + + * Miscellaneous Ubuntu changes + - [Packaging] Update ubuntu-regression-suite dependency to python2 + - [Packaging] Fix ubuntu-regression-suite python dependency for hwe kernel + - update dkms package versions + + [ Upstream Kernel Changes ] + + * Rebase to v5.5-rc7 + + -- Andrea Righi Mon, 20 Jan 2020 10:16:01 +0100 + +linux-5.5 (5.5.0-5.6) focal; urgency=medium + + * Miscellaneous Ubuntu changes + - update dkms package versions + + [ Upstream Kernel Changes ] + + * Rebase to v5.5-rc6 + + -- Andrea Righi Mon, 13 Jan 2020 15:50:12 +0100 + +linux-5.5 (5.5.0-4.5) focal; urgency=medium + + * linux build and autopkg tests need to use python2 instead of python + (LP: #1858487) + - [Packaging] Remove python-dev build dependency + + -- Andrea Righi Wed, 08 Jan 2020 16:00:26 +0100 + +linux-5.5 (5.5.0-3.4) focal; urgency=medium + + * [SRU][B/OEM-B/OEM-OSP1/D/E/F] Add LG I2C touchscreen multitouch support + (LP: #1857541) + - SAUCE: HID: multitouch: Add LG MELF0410 I2C touchscreen support + + * Make vfio-pci built-in or xhci_hcd optional (LP: #1770845) + - [Config]: built-in VFIO_PCI for amd64 + + * multi-zone raid0 corruption (LP: #1850540) + - SAUCE: md/raid0: Link to wiki with guidance on multi-zone RAID0 layout + migration + + * Packaging resync (LP: #1786013) + - [Packaging] update variants + + * Miscellaneous Ubuntu changes + - [Packaging] Change source package to linux-5.5 + - [Packaging] Don't use SRCPKGNAME for linux-libc-dev + - [Packaging] Remove linux-source-3 Provides: from linux-source + - [Packaging] Fix linux-doc in linux-image Suggests: + - [Debian] Read variants list into a variable + - [Packaging] Generate linux-libc-dev package only for primary variant + - [Packaging] Generate linux-doc for only the primary variant + - [Debian] Update linux source package name in debian/tests/* + - update dkms package versions + - [Config] updateconfigs after rebase to 5.5-rc3 + - [Config] disable PCI_MESON + - [Config] Add pinctrl-equilibrium to modules.ignore + + [ Upstream Kernel Changes ] + + * Rebase to v5.5-rc5 + + -- Andrea Righi Wed, 08 Jan 2020 11:28:43 +0100 + +linux-5.5 (5.5.0-2.3) focal; urgency=medium + + * Empty entry. + + -- Seth Forshee Tue, 17 Dec 2019 22:33:59 -0600 + +linux (5.5.0-2.3) focal; urgency=medium + + * Support DPCD aux brightness control (LP: #1856134) + - SAUCE: drm/i915: Fix eDP DPCD aux max backlight calculations + - SAUCE: drm/i915: Assume 100% brightness when not in DPCD control mode + - SAUCE: drm/i915: Fix DPCD register order in intel_dp_aux_enable_backlight() + - SAUCE: drm/i915: Auto detect DPCD backlight support by default + - SAUCE: drm/i915: Force DPCD backlight mode on X1 Extreme 2nd Gen 4K AMOLED + panel + - USUNTU: SAUCE: drm/i915: Force DPCD backlight mode on Dell Precision 4K sku + + * change kconfig of the soundwire bus driver from y to m (LP: #1855685) + - [Config]: SOUNDWIRE=m + + * 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 + + * Miscellaneous Ubuntu changes + - [Debian] add python depends to ubuntu-regression-suite + - SAUCE: selftests: net: tls: remove recv_rcvbuf test + - update dkms package versions + + * Miscellaneous upstream changes + - [Config] updateconfigs after rebase to 5.5-rc2 + + -- Andrea Righi Tue, 17 Dec 2019 16:02:43 +0100 + +linux (5.5.0-1.2) focal; urgency=medium + + * Miscellaneous Ubuntu changes + - [Config] disable nvidia dkms build + - [Config] disable virtualbox dkms build + - [Config] disable zfs dkms build + - update dropped.txt after rebase to v5.5-rc1 + - SAUCE: (lockdown) Make get_cert_list() not complain about cert lists that + aren't present. + - SAUCE: (lockdown) Add efi_status_to_str() and rework efi_status_to_err(). + - SAUCE: (lockdown) Make get_cert_list() use efi_status_to_str() to print + error messages. + - SAUCE: (lockdown) security: lockdown: expose a hook to lock the kernel down + - SAUCE: (lockdown) efi: Add an EFI_SECURE_BOOT flag to indicate secure boot + mode + - SAUCE: (lockdown) efi: Lock down the kernel if booted in secure boot mode + - SAUCE: (lockdown) Add a SysRq option to lift kernel lockdown + - SAUCE: (lockdown) KEYS: Make use of platform keyring for module signature + verify + - SAUCE: (lockdown) arm64: Allow locking down the kernel under EFI secure boot + - SAUCE: (lockdown) security: lockdown: Make + CONFIG_LOCK_DOWN_IN_EFI_SECURE_BOOT more generic + - SAUCE: (lockdown) s390/ipl: lockdown kernel when booted secure + - [Config] Enable lockdown under secure boot + - update dkms package versions + + -- Andrea Righi Thu, 12 Dec 2019 16:54:41 +0100 + +linux (5.5.0-0.1) focal; urgency=medium + + * Miscellaneous Ubuntu changes + - [Config] updateconfigs after rebase to 5.5-rc1 + + [ Upstream Kernel Changes ] + + * Rebase to v5.5-rc1 + + -- Andrea Righi Mon, 09 Dec 2019 19:03:35 +0100 + +linux (5.5.0-0.0) focal; urgency=medium + + * Dummy entry. + + -- Andrea Righi Mon, 09 Dec 2019 15:14:37 +0100 + +linux (5.4.0-8.11) focal; urgency=medium + + * focal/linux: 5.4.0-8.9 -proposed tracker (LP: #1855448) + + * update ENA driver for DIMLIB dynamic interrupt moderation (LP: #1853180) + - SAUCE: net: ena: fix issues in setting interrupt moderation params in + ethtool + - SAUCE: net: ena: fix too long default tx interrupt moderation interval + + * Kernel build log filled with "/bin/bash: line 5: warning: command + substitution: ignored null byte in input" (LP: #1853843) + - [Debian] Fix warnings when checking for modules signatures + + * hwe-edge kernel 5.3.0-23.25 kernel does not boot on Precision 5720 AIO + (LP: #1852581) + - [Packaging] Fix module signing with older modinfo + + * Fix MST support on Ice Lake (LP: #1854432) + - drm/i915: fix port checks for MST support on gen >= 11 + + * headphone has noise as not mute on dell machines with alc236/256 + (LP: #1854401) + - SAUCE: ALSA: hda/realtek - Dell headphone has noise on unmute for ALC236 + + * [CML-S62] Need enable intel_pmc_core driver patch for Comet lake- S 6+2 + (LP: #1847450) + - SAUCE: platform/x86: intel_pmc_core: Add Comet Lake (CML) platform support + to intel_pmc_core driver + + * CVE-2019-14901 + - SAUCE: mwifiex: Fix heap overflow in mmwifiex_process_tdls_action_frame() + + * CVE-2019-14896 // CVE-2019-14897 + - SAUCE: libertas: Fix two buffer overflows at parsing bss descriptor + + * CVE-2019-14895 + - SAUCE: mwifiex: fix possible heap overflow in mwifiex_process_country_ie() + + * [CML-S62] Need enable intel_rapl patch support for Comet lake- S 6+2 + (LP: #1847454) + - powercap/intel_rapl: add support for CometLake Mobile + - powercap/intel_rapl: add support for Cometlake desktop + + * External microphone can't work on some dell machines with the codec alc256 + or alc236 (LP: #1853791) + - SAUCE: ALSA: hda/realtek - Move some alc256 pintbls to fallback table + - SAUCE: ALSA: hda/realtek - Move some alc236 pintbls to fallback table + + * remount of multilower moved pivoted-root overlayfs root, results in I/O + errors on some modified files (LP: #1824407) + - SAUCE: ovl: fix lookup failure on multi lower squashfs + + * [CML-S62] Need enable turbostat patch support for Comet lake- S 6+2 + (LP: #1847451) + - SAUCE: tools/power turbostat: Add Cometlake support + + * CONFIG_ARCH_ROCKCHIP is not set in ubuntu 18.04 aarch64,arm64 (LP: #1825222) + - [Config] Enable ROCKCHIP support for arm64 + + * [broadwell-rt286, playback] Since Linux 5.2rc2 audio playback no longer + works on Dell Venue 11 Pro 7140 (LP: #1846539) + - SAUCE: ASoC: SOF: Intel: Broadwell: clarify mutual exclusion with legacy + driver + + * i40e: general protection fault in i40e_config_vf_promiscuous_mode + (LP: #1852663) + - SAUCE: i40e Fix GPF when deleting VMs + + * libbpf check_abi fails on ppc64el (LP: #1854974) + - libbpf: Fix readelf output parsing on powerpc with recent binutils + + * CVE-2019-19050 + - crypto: user - fix memory leak in crypto_reportstat + + * Make hotplugging docking station to Thunderbolt port more reliable + (LP: #1853991) + - PCI/PM: Add pcie_wait_for_link_delay() + - PCI/PM: Add missing link delays required by the PCIe spec + + * i915: Display flickers (monitor loses signal briefly) during "flickerfree" + boot, while showing the BIOS logo on a black background (LP: #1836858) + - [Config] FRAMEBUFFER_CONSOLE_DEFERRED_TAKEOVER=y + + * [CML] New device id's for CMP-H (LP: #1846335) + - i2c: i801: Add support for Intel Comet Lake PCH-H + - mtd: spi-nor: intel-spi: Add support for Intel Comet Lake-H SPI serial flash + - mfd: intel-lpss: Add Intel Comet Lake PCH-H PCI IDs + + * Focal update: v5.4.2 upstream stable release (LP: #1855326) + - io_uring: async workers should inherit the user creds + - net: separate out the msghdr copy from ___sys_{send,recv}msg() + - net: disallow ancillary data for __sys_{send,recv}msg_file() + - crypto: inside-secure - Fix stability issue with Macchiatobin + - driver core: platform: use the correct callback type for bus_find_device + - usb: dwc2: use a longer core rest timeout in dwc2_core_reset() + - staging: wilc1000: fix illegal memory access in wilc_parse_join_bss_param() + - staging: rtl8192e: fix potential use after free + - staging: rtl8723bs: Drop ACPI device ids + - staging: rtl8723bs: Add 024c:0525 to the list of SDIO device-ids + - USB: serial: ftdi_sio: add device IDs for U-Blox C099-F9P + - mei: bus: prefix device names on bus with the bus name + - mei: me: add comet point V device id + - thunderbolt: Power cycle the router if NVM authentication fails + - x86/fpu: Don't cache access to fpu_fpregs_owner_ctx + - gve: Fix the queue page list allocated pages count + - macvlan: schedule bc_work even if error + - mdio_bus: don't use managed reset-controller + - net: dsa: sja1105: fix sja1105_parse_rgmii_delays() + - net: macb: add missed tasklet_kill + - net: psample: fix skb_over_panic + - net: sched: fix `tc -s class show` no bstats on class with nolock subqueues + - openvswitch: fix flow command message size + - sctp: Fix memory leak in sctp_sf_do_5_2_4_dupcook + - slip: Fix use-after-free Read in slip_open + - sctp: cache netns in sctp_ep_common + - openvswitch: drop unneeded BUG_ON() in ovs_flow_cmd_build_info() + - openvswitch: remove another BUG_ON() + - net/tls: take into account that bpf_exec_tx_verdict() may free the record + - net/tls: free the record on encryption error + - net: skmsg: fix TLS 1.3 crash with full sk_msg + - selftests/tls: add a test for fragmented messages + - net/tls: remove the dead inplace_crypto code + - net/tls: use sg_next() to walk sg entries + - selftests: bpf: test_sockmap: handle file creation failures gracefully + - selftests: bpf: correct perror strings + - tipc: fix link name length check + - selftests: pmtu: use -oneline for ip route list cache + - r8169: fix jumbo configuration for RTL8168evl + - r8169: fix resume on cable plug-in + - ext4: add more paranoia checking in ext4_expand_extra_isize handling + - Revert "jffs2: Fix possible null-pointer dereferences in + jffs2_add_frag_to_fragtree()" + - crypto: talitos - Fix build error by selecting LIB_DES + - HID: core: check whether Usage Page item is after Usage ID items + - platform/x86: hp-wmi: Fix ACPI errors caused by too small buffer + - platform/x86: hp-wmi: Fix ACPI errors caused by passing 0 as input size + - Linux 5.4.2 + + * no HDMI video output since GDM greeter after linux-oem-osp1 version + 5.0.0-1026 (LP: #1852386) + - drm/i915: Add new CNL PCH ID seen on a CML platform + - SAUCE: drm/i915: Fix detection for a CMP-V PCH + + * Please add patch fixing RK818 ID detection (LP: #1853192) + - SAUCE: mfd: rk808: Fix RK818 ID template + + * Raydium Touchscreen on ThinkPad L390 does not work (LP: #1849721) + - HID: i2c-hid: fix no irq after reset on raydium 3118 + + * Touchpad doesn't work on Dell Inspiron 7000 2-in-1 (LP: #1851901) + - Revert "UBUNTU: SAUCE: mfd: intel-lpss: add quirk for Dell XPS 13 7390 + 2-in-1" + - lib: devres: add a helper function for ioremap_uc + - mfd: intel-lpss: Use devm_ioremap_uc for MMIO + + * Lenovo dock MAC Address pass through doesn't work in Ubuntu (LP: #1827961) + - r8152: Add macpassthru support for ThinkPad Thunderbolt 3 Dock Gen 2 + + * Disable unreliable HPET on CFL-H system (LP: #1852216) + - SAUCE: x86/intel: Disable HPET on Intel Coffe Lake H platforms + + * Miscellaneous Ubuntu changes + - update dkms package versions + - [Config] Enable virtualbox dkms build + - [Config] update annotations to match current configs + - SAUCE: Add exfat module to signature inclusion list + + * Miscellaneous upstream changes + - Bluetooth: Fix invalid-free in bcsp_close() + - ath9k_hw: fix uninitialized variable data + - ath10k: Fix a NULL-ptr-deref bug in ath10k_usb_alloc_urb_from_pipe + - ath10k: Fix HOST capability QMI incompatibility + - ath10k: restore QCA9880-AR1A (v1) detection + - Revert "Bluetooth: hci_ll: set operational frequency earlier" + - Revert "dm crypt: use WQ_HIGHPRI for the IO and crypt workqueues" + - md/raid10: prevent access of uninitialized resync_pages offset + - x86/insn: Fix awk regexp warnings + - x86/speculation: Fix incorrect MDS/TAA mitigation status + - x86/speculation: Fix redundant MDS mitigation message + - nbd: prevent memory leak + - x86/stackframe/32: Repair 32-bit Xen PV + - x86/xen/32: Make xen_iret_crit_fixup() independent of frame layout + - x86/xen/32: Simplify ring check in xen_iret_crit_fixup() + - x86/doublefault/32: Fix stack canaries in the double fault handler + - x86/pti/32: Size initial_page_table correctly + - x86/cpu_entry_area: Add guard page for entry stack on 32bit + - x86/entry/32: Fix IRET exception + - x86/entry/32: Use %ss segment where required + - x86/entry/32: Move FIXUP_FRAME after pushing %fs in SAVE_ALL + - x86/entry/32: Unwind the ESPFIX stack earlier on exception entry + - x86/entry/32: Fix NMI vs ESPFIX + - selftests/x86/mov_ss_trap: Fix the SYSENTER test + - selftests/x86/sigreturn/32: Invalidate DS and ES when abusing the kernel + - x86/pti/32: Calculate the various PTI cpu_entry_area sizes correctly, make + the CPU_ENTRY_AREA_PAGES assert precise + - x86/entry/32: Fix FIXUP_ESPFIX_STACK with user CR3 + - futex: Prevent robust futex exit race + - ALSA: usb-audio: Fix NULL dereference at parsing BADD + - ALSA: usb-audio: Fix Scarlett 6i6 Gen 2 port data + - media: vivid: Set vid_cap_streaming and vid_out_streaming to true + - media: vivid: Fix wrong locking that causes race conditions on streaming + stop + - media: usbvision: Fix invalid accesses after device disconnect + - media: usbvision: Fix races among open, close, and disconnect + - cpufreq: Add NULL checks to show() and store() methods of cpufreq + - futex: Move futex exit handling into futex code + - futex: Replace PF_EXITPIDONE with a state + - exit/exec: Seperate mm_release() + - futex: Split futex_mm_release() for exit/exec + - futex: Set task::futex_state to DEAD right after handling futex exit + - futex: Mark the begin of futex exit explicitly + - futex: Sanitize exit state handling + - futex: Provide state handling for exec() as well + - futex: Add mutex around futex exit + - futex: Provide distinct return value when owner is exiting + - futex: Prevent exit livelock + - media: uvcvideo: Fix error path in control parsing failure + - media: b2c2-flexcop-usb: add sanity checking + - media: cxusb: detect cxusb_ctrl_msg error in query + - media: imon: invalid dereference in imon_touch_event + - media: mceusb: fix out of bounds read in MCE receiver buffer + - ALSA: hda - Disable audio component for legacy Nvidia HDMI codecs + - USBIP: add config dependency for SGL_ALLOC + - usbip: tools: fix fd leakage in the function of read_attr_usbip_status + - usbip: Fix uninitialized symbol 'nents' in stub_recv_cmd_submit() + - usb-serial: cp201x: support Mark-10 digital force gauge + - USB: chaoskey: fix error case of a timeout + - appledisplay: fix error handling in the scheduled work + - USB: serial: mos7840: add USB ID to support Moxa UPort 2210 + - USB: serial: mos7720: fix remote wakeup + - USB: serial: mos7840: fix remote wakeup + - USB: serial: option: add support for DW5821e with eSIM support + - USB: serial: option: add support for Foxconn T77W968 LTE modules + - staging: comedi: usbduxfast: usbduxfast_ai_cmdtest rounding error + - powerpc/book3s64: Fix link stack flush on context switch + - KVM: PPC: Book3S HV: Flush link stack on guest exit to host kernel + - Linux 5.4.1 + + -- Seth Forshee Fri, 06 Dec 2019 15:53:53 -0600 + +linux (5.4.0-7.8) focal; urgency=medium + + * Miscellaneous Ubuntu changes + - SAUCE: selftests/bpf: Comment out BPF_CORE_READ's which cause clang to + segfault + - Update nvidia-430 to nvidia-440 + - [Config] Enable nvidia dkms build + - update dkms package versions + + [ Upstream Kernel Changes ] + + * Rebase to v5.4 + + -- Andrea Righi Mon, 25 Nov 2019 15:02:30 +0100 + +linux (5.4.0-6.7) focal; urgency=medium + + * Miscellaneous Ubuntu changes + - update dkms package versions + - [Config] updateconfigs after rebase to 5.4-rc8 + + [ Upstream Kernel Changes ] + + * Rebase to v5.4-rc7 + + -- Andrea Righi Mon, 18 Nov 2019 12:08:01 +0100 + +linux (5.4.0-5.6) focal; urgency=medium + + * refcount underflow and type confusion in shiftfs (LP: #1850867) // + CVE-2019-15793 + - SAUCE: shiftfs: Correct id translation for lower fs operations + + * refcount underflow and type confusion in shiftfs (LP: #1850867) // + CVE-2019-15792 + - SAUCE: shiftfs: prevent type confusion + + * refcount underflow and type confusion in shiftfs (LP: #1850867) // + CVE-2019-15791 + - SAUCE: shiftfs: Fix refcount underflow in btrfs ioctl handling + + * Some EFI systems fail to boot in efi_init() when booted via maas + (LP: #1851810) + - SAUCE: efi: efi_get_memory_map -- increase map headroom + + * seccomp: fix SECCOMP_USER_NOTIF_FLAG_CONTINUE test (LP: #1849281) + - SAUCE: seccomp: rework define for SECCOMP_USER_NOTIF_FLAG_CONTINUE + - SAUCE: seccomp: avoid overflow in implicit constant conversion + + * dkms artifacts may expire from the pool (LP: #1850958) + - [Packaging] dkms -- try launchpad librarian for pool downloads + - [Packaging] dkms -- dkms-build quieten wget verbiage + + * tsc marked unstable after entered PC10 on Intel CoffeeLake (LP: #1840239) + - SAUCE: x86/intel: Disable HPET on Intel Coffe Lake platforms + - SAUCE: x86/intel: Disable HPET on Intel Ice Lake platforms + + * shiftfs: prevent exceeding project quotas (LP: #1849483) + - SAUCE: shiftfs: drop CAP_SYS_RESOURCE from effective capabilities + + * shiftfs: fix fallocate() (LP: #1849482) + - SAUCE: shiftfs: setup correct s_maxbytes limit + + * The alsa hda driver is not loaded due to the missing of PCIID for Comet + Lake-S [8086:a3f0] (LP: #1852070) + - SAUCE: ALSA: hda: Add Cometlake-S PCI ID + + * Can't adjust brightness on DELL UHD dGPU AIO (LP: #1813877) + - SAUCE: platform/x86: dell-uart-backlight: add missing status command + - SAUCE: platform/x86: dell-uart-backlight: load driver by scalar status + - SAUCE: platform/x86: dell-uart-backlight: add force parameter + - SAUCE: platform/x86: dell-uart-backlight: add quirk for old platforms + + * s_iflags overlap prevents unprivileged overlayfs mounts (LP: #1851677) + - SAUCE: fs: Move SB_I_NOSUID to the top of s_iflags + + * ubuntu-aufs-modified mmap_region() breaks refcounting in overlayfs/shiftfs + error path (LP: #1850994) // CVE-2019-15794 + - SAUCE: shiftfs: Restore vm_file value when lower fs mmap fails + - SAUCE: ovl: Restore vm_file value when lower fs mmap fails + + * Miscellaneous Ubuntu changes + - [Debian] Convert update-aufs.sh to use aufs5 + - SAUCE: import aufs driver + - update dkms package versions + + [ Upstream Kernel Changes ] + + * Rebase to v5.4-rc7 + + -- Seth Forshee Wed, 13 Nov 2019 11:56:35 -0800 + +linux (5.4.0-4.5) focal; urgency=medium + + * High power consumption using 5.0.0-25-generic (LP: #1840835) + - PCI: Add a helper to check Power Resource Requirements _PR3 existence + - ALSA: hda: Allow HDA to be runtime suspended when dGPU is not bound to a + driver + - PCI: Fix missing inline for pci_pr3_present() + + * Fix signing of staging modules in eoan (LP: #1850234) + - [Packaging] Leave unsigned modules unsigned after adding .gnu_debuglink + + * [20.04 FEAT] Set Architecture Level (ALS) to z13 (LP: #1837525) + - [Config] s390x bump march to z13, with tune to z15 + + * Miscellaneous Ubuntu changes + - [Debian]: do not skip tests for linux-hwe-edge + - update dkms package versions + - [Config] re-enable zfs + - [Config] rename module virtio_fs to virtiofs + + [ Upstream Kernel Changes ] + + * Rebase to v5.4-rc6 + + -- Andrea Righi Mon, 04 Nov 2019 15:12:02 +0100 + +linux (5.4.0-3.4) focal; urgency=medium + + * seccomp: fix SECCOMP_USER_NOTIF_FLAG_CONTINUE test (LP: #1849281) + - SAUCE: seccomp: fix SECCOMP_USER_NOTIF_FLAG_CONTINUE test + + * cloudimg: no iavf/i40evf module so no network available with SR-IOV enabled + cloud (LP: #1848481) + - [Packaging] include iavf/i40evf in generic + + * CVE-2019-17666 + - SAUCE: rtlwifi: Fix potential overflow on P2P code + + * Change Config Option CONFIG_MEMORY_HOTPLUG_DEFAULT_ONLINE for s390x from yes + to no (LP: #1848492) + - [Config] Change Config Option CONFIG_MEMORY_HOTPLUG_DEFAULT_ONLINE for s390x + from yes to no + + * Add Intel Comet Lake ethernet support (LP: #1848555) + - SAUCE: e1000e: Add support for Comet Lake + + * seccomp: add SECCOMP_USER_NOTIF_FLAG_CONTINUE (LP: #1847744) + - SAUCE: seccomp: add SECCOMP_USER_NOTIF_FLAG_CONTINUE + - SAUCE: seccomp: test SECCOMP_USER_NOTIF_FLAG_CONTINUE + + * drm/i915: Fix the issue of "azx_get_response timeout" for hdmi audio on ICL + platforms (LP: #1847192) + - SAUCE: drm/i915: Fix audio power up sequence for gen10+ display + - SAUCE: drm/i915: extend audio CDCLK>=2*BCLK constraint to more platforms + + * PM / hibernate: fix potential memory corruption (LP: #1847118) + - SAUCE: PM / hibernate: memory_bm_find_bit -- tighten node optimisation + + * [regression] NoNewPrivileges incompatible with Apparmor (LP: #1844186) + - SAUCE: apparmor: fix nnp subset test for unconfined + + * overlayfs: allow with shiftfs as underlay (LP: #1846272) + - SAUCE: overlayfs: allow with shiftfs as underlay + + * eoan: alsa/sof: Enable SOF_HDA link and codec (LP: #1848490) + - [Config] Fix SOF Kconfig options + + * linux won't build when new virtualbox version is present on the archive + (LP: #1848788) + - [Packaging]: download virtualbox from sources + + * Miscellaneous Ubuntu changes + - [Config] update annotations from configs + - [Config] updateconfigs after rebase to 5.4-rc5 + - update dkms package versions + + [ Upstream Kernel Changes ] + + * Rebase to v5.4-rc5 + + -- Seth Forshee Tue, 29 Oct 2019 12:01:27 -0500 + +linux (5.4.0-2.3) eoan; urgency=medium + + * Add installer support for iwlmvm adapters (LP: #1848236) + - d-i: Add iwlmvm to nic-modules + + * shiftfs: rework how shiftfs opens files (LP: #1846265) + - SAUCE: shiftfs: rework how shiftfs opens files + + * Miscellaneous Ubuntu changes + - update dkms package versions + - [Config] updateconfigs after rebase to 5.4-rc4 + + [ Upstream Kernel Changes ] + + * Rebase to v5.4-rc4 + + -- Andrea Righi Mon, 21 Oct 2019 17:31:26 +0200 + +linux (5.4.0-1.2) eoan; urgency=medium + + * Miscellaneous Ubuntu changes + - update dkms package versions + - [Config] updateconfigs after rebase to 5.4-rc3 + - [Config] add flexfb, fbtft_device and rio500 to modules.ignore + - [Config] amd64: ignore fbtft and all dependent modules + + [ Upstream Kernel Changes ] + + * Rebase to v5.4-rc3 + + -- Andrea Righi Mon, 14 Oct 2019 19:48:52 +0200 + +linux (5.4.0-0.1) eoan; urgency=medium + + * Enable the Dragonboards out of Eoan/master arm64 kernel (LP: #1846704) + - [Packaging] arm64: snapdragon: introduce a snapdragon flavour + - [Packaging] arm64: snapdragon: switch kernel format to Image + - [Config] arm64: snapdragon: CONFIG_PINCTRL_MSM8916=y + - [Config] arm64: snapdragon: CONFIG_PINCTRL_MSM8994=y + - [Config] arm64: snapdragon: CONFIG_PINCTRL_MSM8996=y + - [Config] arm64: snapdragon: CONFIG_PINCTRL_MSM8998=y + - [Config] arm64: snapdragon: CONFIG_REGULATOR_QCOM_RPMH=y + - [Config] arm64: snapdragon: CONFIG_QCOM_BAM_DMA=y + - [Config] arm64: snapdragon: CONFIG_QCOM_HIDMA_MGMT=y + - [Config] arm64: snapdragon: CONFIG_QCOM_HIDMA=y + - [Config] arm64: snapdragon: CONFIG_COMMON_CLK_QCOM=y + - [Config] arm64: snapdragon: CONFIG_QCOM_CLK_RPMH=y + - [Config] arm64: snapdragon: CONFIG_MSM_GCC_8916=y + - [Config] arm64: snapdragon: CONFIG_MSM_GCC_8994=y + - [Config] arm64: snapdragon: CONFIG_MSM_MMCC_8996=y + - [Config] arm64: snapdragon: CONFIG_MSM_GCC_8998=y + - [Config] arm64: snapdragon: CONFIG_HWSPINLOCK_QCOM=y + - [Config] arm64: snapdragon: CONFIG_QCOM_APCS_IPC=y + - [Config] arm64: snapdragon: CONFIG_RPMSG_QCOM_GLINK_RPM=y + - [Config] arm64: snapdragon: CONFIG_QCOM_GENI_SE=y + - [Config] arm64: snapdragon: CONFIG_QCOM_SMEM=y + - [Config] arm64: snapdragon: CONFIG_QCOM_SMD_RPM=y + - [Config] arm64: snapdragon: CONFIG_QCOM_SMP2P=y + - [Config] arm64: snapdragon: CONFIG_QCOM_SMSM=y + - [Config] arm64: snapdragon: CONFIG_QCOM_QFPROM=y + - [Config] arm64: snapdragon: CONFIG_SERIAL_QCOM_GENI=y + - [Config] arm64: snapdragon: CONFIG_QCOM_TSENS=y + - [Config] arm64: snapdragon: CONFIG_REGULATOR_QCOM_SMD_RPM=y + - [Config] arm64: snapdragon: CONFIG_QCOM_CLK_SMD_RPM=y + - [Config] arm64: snapdragon: CONFIG_RPMSG_QCOM_SMD=y + - [Config] arm64: snapdragon: CONFIG_MFD_QCOM_RPM=y + - [Config] arm64: snapdragon: CONFIG_SCSI_UFSHCD=y + - [Config] arm64: snapdragon: CONFIG_SCSI_UFSHCD_PLATFORM=y + - [Config] arm64: snapdragon: CONFIG_SCSI_UFS_HISI=y + - [Config] arm64: snapdragon: CONFIG_MMC_SDHCI=y + - [Config] arm64: snapdragon: CONFIG_MMC_SDHCI_PLTFM=y + - [Config] arm64: snapdragon: CONFIG_MMC_SDHCI_MSM=y + - [Config] arm64: snapdragon: CONFIG_REGULATOR_QCOM_SPMI=y + - [Config] arm64: snapdragon: CONFIG_PINCTRL_QCOM_SPMI_PMIC=y + - [Config] arm64: snapdragon: CONFIG_PHY_QCOM_USB_HS=y + - [Config] arm64: snapdragon: CONFIG_PHY_QCOM_QMP=y + - [Config] arm64: snapdragon: CONFIG_PHY_QCOM_UFS=y + - [Config] arm64: snapdragon: CONFIG_PHY_QCOM_USB_HSIC=y + - [Config] arm64: snapdragon: CONFIG_USB_CHIPIDEA_OF=y + - [Config] arm64: snapdragon: CONFIG_USB_EHCI_HCD_PLATFORM=y + - [Config] arm64: snapdragon: CONFIG_EXTCON_USB_GPIO=y + - [Config] arm64: snapdragon: CONFIG_REGULATOR_FIXED_VOLTAGE=y + - [Config] arm64: snapdragon: CONFIG_LEDS_GPIO=y + - [Config] arm64: snapdragon: CONFIG_USB_HSIC_USB3503=y + - [Config] arm64: snapdragon: CONFIG_USB_NET_DRIVERS=y + - [Config] arm64: snapdragon: CONFIG_USB_OTG=y + - [Config] arm64: snapdragon: CONFIG_USB_XHCI_PLATFORM=y + - [Config] arm64: snapdragon: CONFIG_USB_OHCI_HCD_PLATFORM=y + - [Config] arm64: snapdragon: CONFIG_USB_MUSB_HDRC=y + - [Config] arm64: snapdragon: CONFIG_USB_DWC3=y + - [Config] arm64: snapdragon: CONFIG_USB_DWC3_PCI=y + - [Config] arm64: snapdragon: CONFIG_USB_DWC3_OF_SIMPLE=y + - [Config] arm64: snapdragon: CONFIG_USB_DWC3_QCOM=y + - [Config] arm64: snapdragon: CONFIG_LEDS_PWM=y + - [Config] arm64: snapdragon: CONFIG_LEDS_TRIGGER_HEARTBEAT=y + - [Config] arm64: snapdragon: CONFIG_LEDS_TRIGGER_DEFAULT_ON=y + - [Config] arm64: snapdragon: CONFIG_QCOM_A53PLL=y + - [Config] arm64: snapdragon: CONFIG_QCOM_CLK_APCS_MSM8916=y + - [Config] arm64: snapdragon: CONFIG_NLS_ISO8859_1=y + - [Config] arm64: snapdragon: CONFIG_USB_USBNET=y + - [Config] arm64: snapdragon: CONFIG_CRYPTO_DEV_QCOM_RNG=y + - [Config] arm64: snapdragon: CONFIG_POWER_RESET_QCOM_PON=y + - [Config] arm64: snapdragon: CONFIG_INPUT_PM8941_PWRKEY=y + - [Config] arm64: snapdragon: CONFIG_KEYBOARD_GPIO=y + - [Config] arm64: snapdragon: CONFIG_RTC_DRV_PM8XXX=y + + * Miscellaneous Ubuntu changes + - [Config] updateconfigs after rebase to 5.4-rc2 + - SAUCE: (lockdown) Make get_cert_list() not complain about cert lists that + aren't present. + - SAUCE: (lockdown) Add efi_status_to_str() and rework efi_status_to_err(). + - SAUCE: (lockdown) Make get_cert_list() use efi_status_to_str() to print + error messages. + - SAUCE: (lockdown) security: lockdown: expose a hook to lock the kernel down + - SAUCE: (lockdown) efi: Add an EFI_SECURE_BOOT flag to indicate secure boot + mode + - SAUCE: (lockdown) efi: Lock down the kernel if booted in secure boot mode + - SAUCE: (lockdown) Add a SysRq option to lift kernel lockdown + - SAUCE: (lockdown) KEYS: Make use of platform keyring for module signature + verify + - SAUCE: (lockdown) arm64: Allow locking down the kernel under EFI secure boot + - SAUCE: (lockdown) security: lockdown: Make + CONFIG_LOCK_DOWN_IN_EFI_SECURE_BOOT more generic + - SAUCE: (lockdown) s390/ipl: lockdown kernel when booted secure + - [Config] Enable lockdown under secure boot + - SAUCE: import aufs driver + - SAUCE: aufs: rwsem owner changed to atmoic_long_t in 5.3 + - SAUCE: aufs: add "WITH Linux-syscall-note" to SPDX tag of uapi headers + - [Config] enable aufs + - update dkms package versions + - [Config] disable zfs + - [Config] disable nvidia dkms build + - [Config] disable virtualbox dkms build + - [Debian] Generate stub reconstruct for -rc kernels + - Revert "UBUNTU: SAUCE: (namespace) block_dev: Forbid unprivileged mounting + when device is opened for writing" + - Revert "UBUNTU: SAUCE: (namespace) ext4: Add module parameter to enable user + namespace mounts" + - Revert "UBUNTU: SAUCE: (namespace) ext4: Add support for unprivileged mounts + from user namespaces" + - Revert "UBUNTU: SAUCE: (namespace) mtd: Check permissions towards mtd block + device inode when mounting" + - Revert "UBUNTU: SAUCE: (namespace) block_dev: Check permissions towards + block device inode when mounting" + - Revert "UBUNTU: SAUCE: (namespace) block_dev: Support checking inode + permissions in lookup_bdev()" + + [ Upstream Kernel Changes ] + + * Rebase to v5.4-rc2 + + -- Seth Forshee Fri, 11 Oct 2019 16:42:41 -0500 + +linux (5.4.0-0.0) eoan; urgency=medium + + * Dummy entry. + + -- Seth Forshee Tue, 08 Oct 2019 09:59:00 -0500 + +linux (5.3.0-17.18) eoan; urgency=medium + + * eoan/linux: 5.3.0-17.18 -proposed tracker (LP: #1846641) + + * CVE-2019-17056 + - nfc: enforce CAP_NET_RAW for raw sockets + + * CVE-2019-17055 + - mISDN: enforce CAP_NET_RAW for raw sockets + + * CVE-2019-17054 + - appletalk: enforce CAP_NET_RAW for raw sockets + + * CVE-2019-17053 + - ieee802154: enforce CAP_NET_RAW for raw sockets + + * CVE-2019-17052 + - ax25: enforce CAP_NET_RAW for raw sockets + + * CVE-2019-15098 + - ath6kl: fix a NULL-ptr-deref bug in ath6kl_usb_alloc_urb_from_pipe() + + * xHCI on AMD Stoney Ridge cannot detect USB 2.0 or 1.1 devices. + (LP: #1846470) + - x86/PCI: Avoid AMD FCH XHCI USB PME# from D0 defect + + * Re-enable linux-libc-dev build on i386 (LP: #1846508) + - [Packaging] Build only linux-libc-dev for i386 + - [Debian] final-checks -- ignore archtictures with no binaries + + * arm64: loop on boot after installing linux-generic-hwe-18.04-edge/bionic- + proposed (LP: #1845820) + - [Config] Disable CONFIG_ARM_SMMU_DISABLE_BYPASS_BY_DEFAULT + + * Revert ESE DASD discard support (LP: #1846219) + - SAUCE: Revert "s390/dasd: Add discard support for ESE volumes" + + * Miscellaneous Ubuntu changes + - update dkms package versions + + -- Seth Forshee Thu, 03 Oct 2019 16:57:05 -0500 + +linux (5.3.0-16.17) eoan; urgency=medium + + * eoan/linux: 5.3.0-16.17 -proposed tracker (LP: #1846204) + + * zfs fails to build on s390x with debug symbols enabled (LP: #1846143) + - SAUCE: s390: Mark atomic const ops always inline + + -- Seth Forshee Tue, 01 Oct 2019 07:46:43 -0500 + +linux (5.3.0-15.16) eoan; urgency=medium + + * eoan/linux: 5.3.0-15.16 -proposed tracker (LP: #1845987) + + * Drop i386 build for 19.10 (LP: #1845714) + - [Packaging] Remove x32 arch references from control files + - [Debian] final-checks -- Get arch list from debian/control + + * ZFS kernel modules lack debug symbols (LP: #1840704) + - [Debian] Fix conditional for setting zfs debug package path + + * Use pyhon3-sphinx instead of python-sphinx for building html docs + (LP: #1845808) + - [Packaging] Update sphinx build dependencies to python3 packages + + * Kernel panic with 19.10 beta image (LP: #1845454) + - efi/tpm: Don't access event->count when it isn't mapped. + - efi/tpm: don't traverse an event log with no events + - efi/tpm: only set efi_tpm_final_log_size after successful event log parsing + + -- Seth Forshee Mon, 30 Sep 2019 11:57:20 -0500 + +linux (5.3.0-14.15) eoan; urgency=medium + + * eoan/linux: 5.3.0-14.15 -proposed tracker (LP: #1845728) + + * Drop i386 build for 19.10 (LP: #1845714) + - [Debian] Remove support for producing i386 kernels + - [Debian] Don't use CROSS_COMPILE for i386 configs + + * udevadm trigger will fail when trying to add /sys/devices/vio/ + (LP: #1845572) + - SAUCE: powerpc/vio: drop bus_type from parent device + + * Trying to online dasd drive results in invalid input/output from the kernel + on z/VM (LP: #1845323) + - SAUCE: s390/dasd: Fix error handling during online processing + + * intel-lpss driver conflicts with write-combining MTRR region (LP: #1845584) + - SAUCE: mfd: intel-lpss: add quirk for Dell XPS 13 7390 2-in-1 + + * Support Hi1620 zip hw accelerator (LP: #1845355) + - [Config] Enable HiSilicon QM/ZIP as modules + - crypto: hisilicon - add queue management driver for HiSilicon QM module + - crypto: hisilicon - add hardware SGL support + - crypto: hisilicon - add HiSilicon ZIP accelerator support + - crypto: hisilicon - add SRIOV support for ZIP + - Documentation: Add debugfs doc for hisi_zip + - crypto: hisilicon - add debugfs for ZIP and QM + - MAINTAINERS: add maintainer for HiSilicon QM and ZIP controller driver + - crypto: hisilicon - fix kbuild warnings + - crypto: hisilicon - add dependency for CRYPTO_DEV_HISI_ZIP + - crypto: hisilicon - init curr_sgl_dma to fix compile warning + - crypto: hisilicon - add missing single_release + - crypto: hisilicon - fix error handle in hisi_zip_create_req_q + - crypto: hisilicon - Fix warning on printing %p with dma_addr_t + - crypto: hisilicon - Fix return value check in hisi_zip_acompress() + - crypto: hisilicon - avoid unused function warning + + * SafeSetID LSM should be built but disabled by default (LP: #1845391) + - LSM: SafeSetID: Stop releasing uninitialized ruleset + - [Config] Build SafeSetID LSM but don't enable it by default + + * CONFIG_LSM should not specify loadpin since it is not built (LP: #1845383) + - [Config] loadpin shouldn't be in CONFIG_LSM + + * Add new pci-id's for CML-S, ICL (LP: #1845317) + - drm/i915/icl: Add missing device ID + - drm/i915/cml: Add Missing PCI IDs + + * Thunderbolt support for ICL (LP: #1844680) + - thunderbolt: Correct path indices for PCIe tunnel + - thunderbolt: Move NVM upgrade support flag to struct icm + - thunderbolt: Use 32-bit writes when writing ring producer/consumer + - thunderbolt: Do not fail adding switch if some port is not implemented + - thunderbolt: Hide switch attributes that are not set + - thunderbolt: Expose active parts of NVM even if upgrade is not supported + - thunderbolt: Add support for Intel Ice Lake + - ACPI / property: Add two new Thunderbolt property GUIDs to the list + + * Ubuntu 19.10 - Additional PCI patch and fix (LP: #1844668) + - s390/pci: fix MSI message data + + * Enhanced Hardware Support - Finalize Naming (LP: #1842774) + - s390: add support for IBM z15 machines + - [Config] CONFIG_MARCH_Z15=n, CONFIG_TUNE_Z15=n + + * Eoan update: v5.3.1 upstream stable release (LP: #1845642) + - USB: usbcore: Fix slab-out-of-bounds bug during device reset + - media: tm6000: double free if usb disconnect while streaming + - phy: renesas: rcar-gen3-usb2: Disable clearing VBUS in over-current + - ip6_gre: fix a dst leak in ip6erspan_tunnel_xmit + - net/sched: fix race between deactivation and dequeue for NOLOCK qdisc + - net_sched: let qdisc_put() accept NULL pointer + - udp: correct reuseport selection with connected sockets + - xen-netfront: do not assume sk_buff_head list is empty in error handling + - net: dsa: Fix load order between DSA drivers and taggers + - net: stmmac: Hold rtnl lock in suspend/resume callbacks + - KVM: coalesced_mmio: add bounds checking + - Documentation: sphinx: Add missing comma to list of strings + - firmware: google: check if size is valid when decoding VPD data + - serial: sprd: correct the wrong sequence of arguments + - tty/serial: atmel: reschedule TX after RX was started + - nl80211: Fix possible Spectre-v1 for CQM RSSI thresholds + - Revert "arm64: Remove unnecessary ISBs from set_{pte,pmd,pud}" + - ovl: fix regression caused by overlapping layers detection + - phy: qcom-qmp: Correct ready status, again + - floppy: fix usercopy direction + - media: technisat-usb2: break out of loop at end of buffer + - Linux 5.3.1 + + * ZFS kernel modules lack debug symbols (LP: #1840704) + - [Debian]: Remove hardcoded $(pkgdir) in debug symbols handling + - [Debian]: Handle debug symbols for modules in extras too + - [Debian]: Check/link modules with debug symbols after DKMS modules + - [Debian]: Warn about modules without debug symbols + - [Debian]: dkms-build: new parameter for debug package directory + - [Debian]: dkms-build: zfs: support for debug symbols + - [Debian]: dkms-build: Avoid executing post-processor scripts twice + - [Debian]: dkms-build: Move zfs special-casing into configure script + + * /proc/self/maps paths missing on live session (was vlc won't start; eoan + 19.10 & bionic 18.04 ubuntu/lubuntu/kubuntu/xubuntu/ubuntu-mate dailies) + (LP: #1842382) + - SAUCE: Revert "UBUNTU: SAUCE: shiftfs: enable overlayfs on shiftfs" + + -- Seth Forshee Fri, 27 Sep 2019 16:08:06 -0500 + +linux (5.3.0-13.14) eoan; urgency=medium + + * eoan/linux: 5.3.0-13.14 -proposed tracker (LP: #1845105) + + * Packaging resync (LP: #1786013) + - [Packaging] update helper scripts + + * Miscellaneous Ubuntu changes + - [Debian] Remove binutils-dev build dependency + + -- Seth Forshee Mon, 23 Sep 2019 19:26:43 -0500 + +linux (5.3.0-12.13) eoan; urgency=medium + + * Change kernel compression method to improve boot speed (LP: #1840934) + - [Packaging] Add lz4 build dependency for s390x + + * Miscellaneous Ubuntu changes + - SAUCE: Remove spl and zfs source + + -- Seth Forshee Tue, 17 Sep 2019 13:36:26 +0200 + +linux (5.3.0-11.12) eoan; urgency=medium + + * eoan/linux: 5.3.0-11.12 -proposed tracker (LP: #1844144) + + * Suspend to RAM(S3) does not wake up for latest megaraid and mpt3sas + adapters(SAS3.5 onwards) (LP: #1838751) + - PCI: Restore Resizable BAR size bits correctly for 1MB BARs + + * s390/setup: Actually init kernel lock down (LP: #1843961) + - SAUCE: (lockdown) s390/setup: Actually init kernel lock down + + * cherrypick has_sipl fix (LP: #1843960) + - SAUCE: s390/sclp: Fix bit checked for has_sipl + + * Change kernel compression method to improve boot speed (LP: #1840934) + - [Config]: Switch kernel compression from LZO to LZ4 on s390x + + * Installation fails on eoan/PowerVM : missing /dev/nvram (LP: #1837726) + - [Config] CONFIG_NVRAM=y for ppc64el + + * Miscellaneous Ubuntu changes + - [Config]: remove nvram from ppc64el modules ABI + - [Config] Update annotations for recent config changes + - SAUCE: sched: Add __ASSEMBLY__ guards around struct clone_args + - SAUCE: i2c: qcom-geni: Disable DMA processing on the Lenovo Yoga C630 + - SAUCE: arm64: dts: qcom: Add Lenovo Yoga C630 + - update dkms package versions + + [ Upstream Kernel Changes ] + + * Rebase to v5.3 + + -- Paolo Pisati Mon, 16 Sep 2019 16:18:27 +0200 + +linux (5.3.0-10.11) eoan; urgency=medium + + * eoan/linux: 5.3.0-10.11 -proposed tracker (LP: #1843232) + + * No sound inputs from the external microphone and headset on a Dell machine + (LP: #1842265) + - SAUCE: ALSA: hda - Expand pin_match function to match upcoming new tbls + - SAUCE: ALSA: hda - Define a fallback_pin_fixup_tbl for alc269 family + + * Horizontal corrupted line at top of screen caused by framebuffer compression + (LP: #1840236) + - SAUCE: drm/i915/fbc: disable framebuffer compression on IceLake + + * Add bpftool to linux-tools-common (LP: #1774815) + - [Debian] package bpftool in linux-tools-common + + * Miscellaneous Ubuntu changes + - update dkms package versions + + [ Upstream Kernel Changes ] + + * Rebase to v5.3-rc8 + + -- Paolo Pisati Mon, 09 Sep 2019 10:00:41 +0200 + +linux (5.3.0-9.10) eoan; urgency=medium + + * eoan/linux: 5.3.0-9.10 -proposed tracker (LP: #1842393) + + * shiftfs: mark kmem_cache as reclaimable (LP: #1842059) + - SAUCE: shiftfs: mark slab objects SLAB_RECLAIM_ACCOUNT + + * shiftfs: drop entries from cache on unlink (LP: #1841977) + - SAUCE: shiftfs: fix buggy unlink logic + + * Fix touchpad IRQ storm after S3 (LP: #1841396) + - pinctrl: intel: remap the pin number to gpio offset for irq enabled pin + + * Please include DTBs for arm64 laptops (LP: #1842050) + - arm64: dts: qcom: Add Lenovo Miix 630 + - arm64: dts: qcom: Add HP Envy x2 + - arm64: dts: qcom: Add Asus NovaGo TP370QL + + * Miscellaneous Ubuntu changes + - SAUCE: import aufs driver + - [Packaging]: ignore vbox modules when vbox is disabled + + [ Upstream Kernel Changes ] + + * Rebase to v5.3-rc7 + + -- Paolo Pisati Tue, 03 Sep 2019 10:27:33 +0200 + +linux (5.3.0-8.9) eoan; urgency=medium + + * Packaging resync (LP: #1786013) + - [Packaging] resync getabis + + * Change kernel compression method to improve boot speed (LP: #1840934) + - [Config] change kernel compression method to improve boot speed + - [Packaging] add build dependencies for compression algorithms + + * realtek r8822be kernel module fails after update to linux kernel-headers + 5.0.0-21 (LP: #1838133) + - rtw88: Fix misuse of GENMASK macro + - rtw88: pci: Rearrange the memory usage for skb in RX ISR + - rtw88: pci: Use DMA sync instead of remapping in RX ISR + - rtw88: debug: dump tx power indexes in use + - rtw88: use txpwr_lmt_cfg_pair struct, not arrays + - rtw88: pci: remove set but not used variable 'ip_sel' + - rtw88: allow c2h operation in irq context + - rtw88: enclose c2h cmd handle with mutex + - rtw88: add BT co-existence support + - SAUCE: rtw88: pci: enable MSI interrupt + + * VIMC module not available (CONFIG_VIDEO_VIMC not set) (LP: #1831482) + - [Config] Enable VIMC module + + * Goodix touchpad may drop first input event (LP: #1840075) + - Revert "UBUNTU: SAUCE: i2c: designware: add G3 3590 into i2c quirk" + - Revert "UBUNTU: SAUCE: i2c: designware: add Inpiron 7591 into i2c quirk" + - Revert "UBUNTU: SAUCE: i2c: designware: add Inpiron/Vostro 7590 into i2c + quirk" + - Revert "UBUNTU: SAUCE: i2c: designware: Add disable runtime pm quirk" + - mfd: intel-lpss: Remove D3cold delay + + * Include Sunix serial/parallel driver (LP: #1826716) + - serial: 8250_pci: Add support for Sunix serial boards + - parport: parport_serial: Add support for Sunix Multi I/O boards + + * enable lockdown on s390x when Secure IPL is performed (LP: #1839622) + - SAUCE: (lockdown) s390/ipl: lockdown kernel when booted secure + - Ubuntu: [Config] Enable CONFIG_LOCK_DOWN_KERNEL on s390x. + + * UBUNTU: SAUCE: shiftfs: pass correct point down (LP: #1837231) + - SAUCE: shiftfs: pass correct point down + + * shiftfs: add O_DIRECT support (LP: #1837223) + - SAUCE: shiftfs: add O_DIRECT support + + * Miscellaneous Ubuntu changes + - [Config] enable secureboot signing on s390x + - [Config] CONFIG_TEST_BLACKHOLE_DEV=m + - SAUCE: selftests: fib_tests: assign address to dummy1 for rp_filter tests + - [Debian] disable dkms builds for autopktest rebuilds + - update dkms package versions + - [Config] updateconfigs after v5.3-rc6 rebase + + [ Upstream Kernel Changes ] + + * Rebase to v5.3-rc5 + + -- Paolo Pisati Mon, 26 Aug 2019 10:09:42 +0200 + +linux (5.3.0-7.8) eoan; urgency=medium + + * Packaging resync (LP: #1786013) + - [Packaging] resync getabis + + * Miscellaneous Ubuntu changes + - [Config] updateconfigs after v5.3-rc5 rebase + - remove missing module after updateconfigs + + [ Upstream Kernel Changes ] + + * Rebase to v5.3-rc5 + + -- Paolo Pisati Mon, 19 Aug 2019 15:31:24 +0200 + +linux (5.3.0-6.7) eoan; urgency=medium + + * Miscellaneous Ubuntu changes + - SAUCE: selftests/bpf: prevent headers to be compiled as C code + + -- Seth Forshee Wed, 14 Aug 2019 13:25:01 -0500 + +linux (5.3.0-5.6) eoan; urgency=medium + + * Miscellaneous Ubuntu changes + - update dkms package versions + - [Config] enable zfs build + + -- Seth Forshee Tue, 13 Aug 2019 09:16:06 -0500 + +linux (5.3.0-4.5) eoan; urgency=medium + + * Packaging resync (LP: #1786013) + - [Packaging] resync getabis + - [Packaging] update helper scripts + + * bcache: bch_allocator_thread(): hung task timeout (LP: #1784665) // Tight + timeout for bcache removal causes spurious failures (LP: #1796292) + - SAUCE: bcache: fix deadlock in bcache_allocator + + * shiftfs: allow overlayfs (LP: #1838677) + - SAUCE: shiftfs: enable overlayfs on shiftfs + + * Miscellaneous Ubuntu changes + - SAUCE: Revert "kbuild: modpost: do not parse unnecessary rules for vmlinux + modpost" + - update dkms package versions + - enable nvidia dkms build + + [ Upstream Kernel Changes ] + + * Rebase to v5.3-rc4 + + -- Seth Forshee Mon, 12 Aug 2019 10:41:27 -0500 + +linux (5.3.0-3.4) eoan; urgency=medium + + * Miscellaneous Ubuntu changes + - update dkms package versions + - SAUCE: aufs: add "WITH Linux-syscall-note" to SPDX tag of uapi headers + - [Config] add mux-* to modules.ignore + + [ Upstream Kernel Changes ] + + * Rebase to v5.3-rc3 + + -- Paolo Pisati Mon, 05 Aug 2019 18:17:09 +0200 + +linux (5.3.0-2.3) eoan; urgency=medium + + * Miscellaneous Ubuntu changes + - [Packaging] add build dependincy on fontconfig + + -- Seth Forshee Mon, 29 Jul 2019 12:18:46 -0400 + +linux (5.3.0-1.2) eoan; urgency=medium + + * System does not auto detect disconnection of external monitor (LP: #1835001) + - SAUCE: drm/i915: Add support for retrying hotplug + - SAUCE: drm/i915: Enable hotplug retry + + * Please enable CONFIG_SCSI_UFS_QCOM as a module on arm64 (LP: #1837332) + - [Config] Enable CONFIG_SCSI_UFS_QCOM as a module on arm64. + + * Add arm64 CONFIG_ARCH_MESON=y and related configs Edit (LP: #1820530) + - [Config] enable ARCH_MESON + - remove missing module + - [Config] update annotations after enabling ARCH_MESON for arm64 + + * Miscellaneous Ubuntu changes + - SAUCE: KVM: PPC: comment implicit fallthrough + - update dkms package versions + - [Config] enable vbox dkms build + + [ Upstream Kernel Changes ] + + * Rebase to v5.3-rc2 + + -- Seth Forshee Sun, 28 Jul 2019 23:10:16 -0400 + +linux (5.3.0-0.1) eoan; urgency=medium + + * Packaging resync (LP: #1786013) + - [Packaging] resync git-ubuntu-log + + * Miscellaneous Ubuntu changes + - SAUCE: (efi-lockdown) Add the ability to lock down access to the running + kernel image + - SAUCE: (efi-lockdown) Enforce module signatures if the kernel is locked down + - SAUCE: (efi-lockdown) Restrict /dev/{mem,kmem,port} when the kernel is + locked down + - SAUCE: (efi-lockdown) kexec_load: Disable at runtime if the kernel is locked + down + - SAUCE: (efi-lockdown) Copy secure_boot flag in boot params across kexec + reboot + - SAUCE: (efi-lockdown) kexec_file: split KEXEC_VERIFY_SIG into KEXEC_SIG and + KEXEC_SIG_FORCE + - SAUCE: (efi-lockdown) kexec_file: Restrict at runtime if the kernel is + locked down + - SAUCE: (efi-lockdown) hibernate: Disable when the kernel is locked down + - SAUCE: (efi-lockdown) uswsusp: Disable when the kernel is locked down + - SAUCE: (efi-lockdown) PCI: Lock down BAR access when the kernel is locked + down + - SAUCE: (efi-lockdown) x86: Lock down IO port access when the kernel is + locked down + - SAUCE: (efi-lockdown) x86/msr: Restrict MSR access when the kernel is locked + down + - SAUCE: (efi-lockdown) ACPI: Limit access to custom_method when the kernel is + locked down + - SAUCE: (efi-lockdown) acpi: Ignore acpi_rsdp kernel param when the kernel + has been locked down + - SAUCE: (efi-lockdown) acpi: Disable ACPI table override if the kernel is + locked down + - SAUCE: (efi-lockdown) acpi: Disable APEI error injection if the kernel is + locked down + - SAUCE: (efi-lockdown) Prohibit PCMCIA CIS storage when the kernel is locked + down + - SAUCE: (efi-lockdown) Lock down TIOCSSERIAL + - SAUCE: (efi-lockdown) Lock down module params that specify hardware + parameters (eg. ioport) + - SAUCE: (efi-lockdown) x86/mmiotrace: Lock down the testmmiotrace module + - SAUCE: (efi-lockdown) Lock down /proc/kcore + - SAUCE: (efi-lockdown) Lock down kprobes + - SAUCE: (efi-lockdown) bpf: Restrict kernel image access functions when the + kernel is locked down + - SAUCE: (efi-lockdown) Lock down perf + - SAUCE: (efi-lockdown) debugfs: Restrict debugfs when the kernel is locked + down + - SAUCE: (efi-lockdown) lockdown: Print current->comm in restriction messages + - SAUCE: (efi-lockdown) kexec: Allow kexec_file() with appropriate IMA policy + when locked down + - SAUCE: (efi-lockdown) Add a SysRq option to lift kernel lockdown + - SAUCE: (efi-lockdown) debugfs: avoid EPERM when no open file operation + defined + - SAUCE: (efi-lockdown) Make get_cert_list() not complain about cert lists + that aren't present. + - SAUCE: (efi-lockdown) Add efi_status_to_str() and rework + efi_status_to_err(). + - SAUCE: (efi-lockdown) Make get_cert_list() use efi_status_to_str() to print + error messages. + - SAUCE: (efi-lockdown) efi: Add an EFI_SECURE_BOOT flag to indicate secure + boot mode + - SAUCE: (efi-lockdown) efi: Lock down the kernel if booted in secure boot + mode + - SAUCE: (efi-lockdown) KEYS: Make use of platform keyring for module + signature verify + - SAUCE: (efi-lockdown) efi: Sanitize boot_params in efi stub + - SAUCE: (efi-lockdown) furter KEXEC_VERIFY_SIG -> KEXEC_SIG updates + - SAUCE: (efi-lockdown) arm64: add kernel config option to lock down when in + Secure Boot mode + - SAUCE: import aufs driver + - SAUCE: aufs: rwsem owner changed to atmoic_long_t in 5.3 + - [Config] disable zfs dkms build + - [Config] disable nvidia dkms build + - [Config] disable vbox dkms build + - SAUCE: perf diff: use llabs for s64 vaules + + [ Upstream Kernel Changes ] + + * Rebase to v5.3-rc1 + + -- Seth Forshee Tue, 23 Jul 2019 21:45:44 -0500 + +linux (5.3.0-0.0) eoan; urgency=medium + + * Dummy entry. + + -- Seth Forshee Mon, 22 Jul 2019 10:19:04 -0500 + +linux (5.2.0-9.10) eoan; urgency=medium + + * Packaging resync (LP: #1786013) + - [Packaging] update helper scripts + + * input/mouse: alps trackpoint-only device doesn't work (LP: #1836752) + - SAUCE: Input: alps - don't handle ALPS cs19 trackpoint-only device + - SAUCE: Input: alps - fix a mismatch between a condition check and its + comment + + * System does not auto detect disconnection of external monitor (LP: #1835001) + - SAUCE: drm/i915: Add support for retrying hotplug + - SAUCE: drm/i915: Enable hotplug retry + + * alsa/hdmi: add icelake hdmi audio support for a Dell machine (LP: #1836916) + - SAUCE: ALSA: hda/hdmi - Remove duplicated define + - SAUCE: ALSA: hda/hdmi - Fix i915 reverse port/pin mapping + + * First click on Goodix touchpad doesn't be recognized after runtime suspended + (LP: #1836836) + - SAUCE: i2c: designware: add G3 3590 into i2c quirk + + * ixgbe{vf} - Physical Function gets IRQ when VF checks link state + (LP: #1836760) + - ixgbevf: Use cached link state instead of re-reading the value for ethtool + + * Doing multiple squashfs (and other loop?) mounts in parallel breaks + (LP: #1836914) + - SAUCE: Revert "loop: Don't change loop device under exclusive opener" + + * hibmc-drm Causes Unreadable Display for Huawei amd64 Servers (LP: #1762940) + - SAUCE: Make CONFIG_DRM_HISI_HIBMC depend on ARM64 + - [Config] Set CONFIG_DRM_HISI_HIBMC to arm64 only + - [Config] add hibmc-drm to modules.ignore + + * hda/realtek: can't detect external mic on a Dell machine (LP: #1836755) + - ALSA: hda/realtek: apply ALC891 headset fixup to one Dell machine + + * Enable Armada SOCs and MVPP2 NIC driver for disco/generic arm64 + (LP: #1835054) + - [Config] Enable Armada SOCs and MVPP2 NIC driver for disco/generic arm64 + + * Unhide Nvidia HDA audio controller (LP: #1836308) + - PCI: Enable NVIDIA HDA controllers + + * Intel ethernet I219 may wrongly detect connection speed as 10Mbps + (LP: #1836177) + - e1000e: Make watchdog use delayed work + + * Sometimes touchpad(goodix) can't use tap function (LP: #1836020) + - SAUCE: i2c: designware: add Inpiron/Vostro 7590 into i2c quirk + - SAUCE: i2c: designware: add Inpiron 7591 into i2c quirk + + * Intel ethernet I219 has slow RX speed (LP: #1836152) + - e1000e: add workaround for possible stalled packet + - e1000e: disable force K1-off feature + + * bcache: risk of data loss on I/O errors in backing or caching devices + (LP: #1829563) + - Revert "bcache: set CACHE_SET_IO_DISABLE in bch_cached_dev_error()" + + * bnx2x driver causes 100% CPU load (LP: #1832082) + - bnx2x: Prevent ptp_task to be rescheduled indefinitely + + * fcf-protection=none patch with new version + - Revert "UBUNTU: SAUCE: kbuild: add -fcf-protection=none to retpoline flags" + - SAUCE: kbuild: add -fcf-protection=none when using retpoline flags + + * CVE-2019-12614 + - powerpc/pseries/dlpar: Fix a missing check in dlpar_parse_cc_property() + + * Eoan update: v5.2.1 upstream stable release (LP: #1836622) + - crypto: lrw - use correct alignmask + - crypto: talitos - rename alternative AEAD algos. + - fscrypt: don't set policy for a dead directory + - udf: Fix incorrect final NOT_ALLOCATED (hole) extent length + - media: stv0297: fix frequency range limit + - ALSA: usb-audio: Fix parse of UAC2 Extension Units + - ALSA: hda/realtek - Headphone Mic can't record after S3 + - tpm: Actually fail on TPM errors during "get random" + - tpm: Fix TPM 1.2 Shutdown sequence to prevent future TPM operations + - block: fix .bi_size overflow + - block, bfq: NULL out the bic when it's no longer valid + - perf intel-pt: Fix itrace defaults for perf script + - perf auxtrace: Fix itrace defaults for perf script + - perf intel-pt: Fix itrace defaults for perf script intel-pt documentation + - perf pmu: Fix uncore PMU alias list for ARM64 + - perf thread-stack: Fix thread stack return from kernel for kernel-only case + - perf header: Assign proper ff->ph in perf_event__synthesize_features() + - x86/ptrace: Fix possible spectre-v1 in ptrace_get_debugreg() + - x86/tls: Fix possible spectre-v1 in do_get_thread_area() + - Documentation: Add section about CPU vulnerabilities for Spectre + - Documentation/admin: Remove the vsyscall=native documentation + - mwifiex: Don't abort on small, spec-compliant vendor IEs + - USB: serial: ftdi_sio: add ID for isodebug v1 + - USB: serial: option: add support for GosunCn ME3630 RNDIS mode + - Revert "serial: 8250: Don't service RX FIFO if interrupts are disabled" + - p54usb: Fix race between disconnect and firmware loading + - usb: gadget: f_fs: data_len used before properly set + - usb: gadget: ether: Fix race between gether_disconnect and rx_submit + - usb: dwc2: use a longer AHB idle timeout in dwc2_core_reset() + - usb: renesas_usbhs: add a workaround for a race condition of workqueue + - drivers/usb/typec/tps6598x.c: fix portinfo width + - drivers/usb/typec/tps6598x.c: fix 4CC cmd write + - p54: fix crash during initialization + - staging: comedi: dt282x: fix a null pointer deref on interrupt + - staging: wilc1000: fix error path cleanup in wilc_wlan_initialize() + - staging: bcm2835-camera: Restore return behavior of ctrl_set_bitrate() + - staging: comedi: amplc_pci230: fix null pointer deref on interrupt + - staging: mt7621-pci: fix PCIE_FTS_NUM_LO macro + - HID: Add another Primax PIXART OEM mouse quirk + - lkdtm: support llvm-objcopy + - binder: fix memory leak in error path + - binder: return errors from buffer copy functions + - iio: adc: stm32-adc: add missing vdda-supply + - coresight: Potential uninitialized variable in probe() + - coresight: etb10: Do not call smp_processor_id from preemptible + - coresight: tmc-etr: Do not call smp_processor_id() from preemptible + - coresight: tmc-etr: alloc_perf_buf: Do not call smp_processor_id from + preemptible + - coresight: tmc-etf: Do not call smp_processor_id from preemptible + - carl9170: fix misuse of device driver API + - Revert "x86/build: Move _etext to actual end of .text" + - VMCI: Fix integer overflow in VMCI handle arrays + - staging: vchiq_2835_arm: revert "quit using custom down_interruptible()" + - staging: vchiq: make wait events interruptible + - staging: vchiq: revert "switch to wait_for_completion_killable" + - staging: fsl-dpaa2/ethsw: fix memory leak of switchdev_work + - staging: bcm2835-camera: Replace spinlock protecting context_map with mutex + - staging: bcm2835-camera: Ensure all buffers are returned on disable + - staging: bcm2835-camera: Remove check of the number of buffers supplied + - staging: bcm2835-camera: Handle empty EOS buffers whilst streaming + - staging: rtl8712: reduce stack usage, again + - Linux 5.2.1 + - [Config] updateconfigs after v5.2.1 stable update + + * fcf-protection=none patch with upstream version + - Revert "UBUNTU: SAUCE: add -fcf-protection=none to retpoline flags" + - SAUCE: kbuild: add -fcf-protection=none to retpoline flags + + * Miscellaneous Ubuntu changes + - SAUCE: selftests/ftrace: avoid failure when trying to probe a notrace + function + - SAUCE: selftests/powerpc/ptrace: fix build failure + - update dkms package versions + - [Packaging] add zlua to zfs-modules.ignore + - update dkms package versions + + -- Seth Forshee Fri, 19 Jul 2019 15:04:45 -0500 + +linux (5.2.0-8.9) eoan; urgency=medium + + * linux: 5.2.0-8.9 -proposed tracker (LP: #1835700) + + * Miscellaneous Ubuntu changes + - [Packaging] replace zfs and spl build with zfs 0.8.1-1ubuntu1 + - SAUCE: test_bpf: remove expected fail for Ctx heavy transformations test on + s390 + - SAUCE: add -fcf-protection=none to retpoline flags + - SAUCE: usbip: ensure strings copied using strncpy are null-terminated + - SAUCE: usbip: add -Wno-address-of-packed-member to EXTRA_CFLAGS + - SAUCE: perf jvmti: ensure strncpy result is null-terminated + - update dkms package versions + - add removed zfs modules to modules.ignore + + [ Upstream Kernel Changes ] + + * Rebase to v5.2 + + -- Seth Forshee Mon, 08 Jul 2019 07:13:41 -0500 + +linux (5.2.0-7.8) eoan; urgency=medium + + * Kernel panic upon resetting ixgbe SR-IOV VFIO virtual function using 5.0 + kernel (LP: #1829652) + - SAUCE: ixgbe: Avoid NULL pointer dereference with VF on non-IPsec hw + + * Hi1620 driver updates from upstream 5.2 merge window (LP: #1830815) + - net: hns3: initialize CPU reverse mapping + - net: hns3: refine the flow director handle + - net: hns3: add aRFS support for PF + - net: hns3: fix for FEC configuration + - RDMA/hns: Remove unnecessary print message in aeq + - RDMA/hns: Update CQE specifications + - RDMA/hns: Move spin_lock_irqsave to the correct place + - RDMA/hns: Remove jiffies operation in disable interrupt context + - RDMA/hns: Replace magic numbers with #defines + - net: hns3: fix compile warning without CONFIG_RFS_ACCEL + - net: hns3: fix for HNS3_RXD_GRO_SIZE_M macro + - net: hns3: add support for dump firmware statistics by debugfs + - net: hns3: use HCLGE_STATE_NIC_REGISTERED to indicate PF NIC client has + registered + - net: hns3: use HCLGE_STATE_ROCE_REGISTERED to indicate PF ROCE client has + registered + - net: hns3: use HCLGEVF_STATE_NIC_REGISTERED to indicate VF NIC client has + registered + - net: hns3: modify hclge_init_client_instance() + - net: hns3: modify hclgevf_init_client_instance() + - net: hns3: add handshake with hardware while doing reset + - net: hns3: stop schedule reset service while unloading driver + - net: hns3: adjust hns3_uninit_phy()'s location in the hns3_client_uninit() + - net: hns3: fix a memory leak issue for hclge_map_unmap_ring_to_vf_vector + - RDMA/hns: Bugfix for posting multiple srq work request + - net: hns3: remove redundant core reset + - net: hns3: don't configure new VLAN ID into VF VLAN table when it's full + - net: hns3: fix VLAN filter restore issue after reset + - net: hns3: set the port shaper according to MAC speed + - net: hns3: add a check to pointer in error_detected and slot_reset + - net: hns3: set ops to null when unregister ad_dev + - net: hns3: add handling of two bits in MAC tunnel interrupts + - net: hns3: remove setting bit of reset_requests when handling mac tunnel + interrupts + - net: hns3: add opcode about query and clear RAS & MSI-X to special opcode + - net: hns3: delay and separate enabling of NIC and ROCE HW errors + - RDMA/hns: fix inverted logic of readl read and shift + - RDMA/hns: Bugfix for filling the sge of srq + - net: hns3: log detail error info of ROCEE ECC and AXI errors + - net: hns3: fix wrong size of mailbox responding data + - net: hns3: make HW GRO handling compliant with SW GRO + - net: hns3: replace numa_node_id with numa_mem_id for buffer reusing + - net: hns3: refactor hns3_get_new_int_gl function + - net: hns3: trigger VF reset if a VF has an over_8bd_nfe_err + - net: hns3: delete the redundant user NIC codes + - net: hns3: small changes for magic numbers + - net: hns3: use macros instead of magic numbers + - net: hns3: refactor PF/VF RSS hash key configuration + - net: hns3: some modifications to simplify and optimize code + - net: hns3: fix some coding style issues + - net: hns3: delay setting of reset level for hw errors until slot_reset is + called + - net: hns3: fix avoid unnecessary resetting for the H/W errors which do not + require reset + - net: hns3: process H/W errors occurred before HNS dev initialization + - net: hns3: add recovery for the H/W errors occurred before the HNS dev + initialization + - net: hns3: some changes of MSI-X bits in PPU(RCB) + - net: hns3: extract handling of mpf/pf msi-x errors into functions + - net: hns3: clear restting state when initializing HW device + - net: hns3: free irq when exit from abnormal branch + - net: hns3: fix for dereferencing before null checking + - net: hns3: fix for skb leak when doing selftest + - net: hns3: delay ring buffer clearing during reset + - net: hns3: some variable modification + - net: hns3: fix dereference of ae_dev before it is null checked + - scsi: hisi_sas: Delete PHY timers when rmmod or probe failed + - scsi: hisi_sas: Fix the issue of argument mismatch of printing ecc errors + - scsi: hisi_sas: Reduce HISI_SAS_SGE_PAGE_CNT in size + - scsi: hisi_sas: Change the type of some numbers to unsigned + - scsi: hisi_sas: Ignore the error code between phy down to phy up + - scsi: hisi_sas: Disable stash for v3 hw + - net: hns3: Add missing newline at end of file + - RDMa/hns: Don't stuck in endless timeout loop + + * Sometimes touchpad automatically trigger double click (LP: #1833484) + - SAUCE: i2c: designware: Add disable runtime pm quirk + + * Add pointstick support on HP ZBook 17 G5 (LP: #1833387) + - Revert "HID: multitouch: Support ALPS PTP stick with pid 0x120A" + + * depmod may prefer unsigned l-r-m nvidia modules to signed modules + (LP: #1834479) + - [Packaging] dkms-build--nvidia-N -- clean up unsigned ko files + + * Miscellaneous Ubuntu changes + - SAUCE: selftests/powerpc: disable signal_fuzzer test + + [ Upstream Kernel Changes ] + + * Rebase to v5.2-rc7 + + -- Seth Forshee Mon, 01 Jul 2019 07:22:18 -0500 + +linux (5.2.0-6.7) eoan; urgency=medium + + * hinic: fix oops due to race in set_rx_mode (LP: #1832048) + - hinic: fix a bug in set rx mode + + * Miscellaneous Ubuntu changes + - rebase to v5.2-rc6 + + [ Upstream Kernel Changes ] + + * Rebase to v5.2-rc6 + + -- Seth Forshee Sun, 23 Jun 2019 23:36:11 -0500 + +linux (5.2.0-5.6) eoan; urgency=medium + + * QCA9377 isn't being recognized sometimes (LP: #1757218) + - SAUCE: USB: Disable USB2 LPM at shutdown + + * shiftfs: allow changing ro/rw for subvolumes (LP: #1832316) + - SAUCE: shiftfs: allow changing ro/rw for subvolumes + + * Miscellaneous Ubuntu changes + - update dkms package versions + - [Packaging] replace nvidia-418 dkms build with nvidia-430 + - SAUCE: import aufs driver + + [ Upstream Kernel Changes ] + + * Rebase to v5.2-rc5 + + -- Seth Forshee Mon, 17 Jun 2019 15:04:12 -0500 + +linux (5.2.0-4.5) eoan; urgency=medium + + * arm64: cma_alloc errors at boot (LP: #1823753) + - [Config] Bump CMA_SIZE_MBYTES to 32 on arm64 + - dma-contiguous: add dma_{alloc,free}_contiguous() helpers + - dma-contiguous: use fallback alloc_pages for single pages + - dma-contiguous: fix !CONFIG_DMA_CMA version of dma_{alloc, + free}_contiguous() + + * Miscellaneous Ubuntu changes + - [Config] CONFIG_MFD_TQMX86=n for s390x + - [Config] CONFIG_GPIO_AMD_FCH=n for s390x + - [Config] CONFIG_BACKLIGHT_CLASS_DEVICE=n on s390x + - [Config] CONFIG_LCD_CLASS_DEVICE=n for s390x + - [Config] CONFIG_DRM_ETNAVIV=m for armhf generic-lpae + - [Config] CONFIG_DRM_NOUVEAU_SVM=n + - [Config] CONFIG_HWMON=n for s390x + - [Config] CONFIG_NEW_LEDS=n for s390x + - [Config] CONFIG_MTD_NAND_OMAP2=y for armhf + - [Config] CONFIG_VOP_BUS=n for non-amd64 arches + - [Config] CONFIG_TI_CPSW_PHY_SEL=n + - [Config] CONFIG_INTERCONNECT=n for s390x + - [Config] CONFIG_SCSI_GDTH=n for s390x + - [Config] CONFIG_PACKING=n for s390x + - [Config] CONFIG_ARCH_MILBEAUT=y for armhf + - [Config] update annotations following config review + - update dkms package versions + - [Config] enable nvidia dkms build + + [ Upstream Kernel Changes ] + + * Rebase to v5.2-rc4 + + -- Seth Forshee Mon, 10 Jun 2019 07:00:11 -0500 + +linux (5.2.0-3.4) eoan; urgency=medium + + * [18.04/18.10] File libperf-jvmti.so is missing in linux-tools-common deb on + Ubuntu (LP: #1761379) + - [Packaging] Support building libperf-jvmti.so + + * Miscellaneous Ubuntu changes + - SAUCE: Revert "bpf, selftest: test global data/bss/rodata sections" + - update dkms package versions + - [Config] enable zfs + - rebase to v5.2-rc3 + + [ Upstream Kernel Changes ] + + * Rebase to v5.2-rc3 + + -- Seth Forshee Sun, 02 Jun 2019 21:48:50 -0500 + +linux (5.2.0-2.3) eoan; urgency=medium + + * Miscellaneous Ubuntu changes + - SAUCE: perf arm64: Fix mksyscalltbl when system kernel headers are ahead of + the kernel + + -- Seth Forshee Tue, 28 May 2019 07:12:39 -0500 + +linux (5.2.0-1.2) eoan; urgency=medium + + * Miscellaneous Ubuntu changes + - [Config] CONFIG_INTEGRITY_PLATFORM_KEYRING=y + - update dkms package versions + - [Config] enable vbox dkms build + - update dkms package versions + + [ Upstream Kernel Changes ] + + * Rebase to v5.2-rc2 + + -- Seth Forshee Mon, 27 May 2019 21:11:27 -0500 + +linux (5.2.0-0.1) eoan; urgency=medium + + * Miscellaneous Ubuntu changes + - SAUCE: import aufs driver + - [Packaging] disable ZFS + - [Packaging] disable nvidia + - [Packaging] dkms-build -- expand paths searched for make.log files + - add virtualbox-guest-dkms dkms package build + - enable vbox dkms build for amd64 and i386 + - update dkms package versions + - SAUCE: (efi-lockdown) Add the ability to lock down access to the running + kernel image + - SAUCE: (efi-lockdown) Enforce module signatures if the kernel is locked down + - SAUCE: (efi-lockdown) Restrict /dev/{mem,kmem,port} when the kernel is + locked down + - SAUCE: (efi-lockdown) kexec_load: Disable at runtime if the kernel is locked + down + - SAUCE: (efi-lockdown) Copy secure_boot flag in boot params across kexec + reboot + - SAUCE: (efi-lockdown) kexec_file: split KEXEC_VERIFY_SIG into KEXEC_SIG and + KEXEC_SIG_FORCE + - SAUCE: (efi-lockdown) kexec_file: Restrict at runtime if the kernel is + locked down + - SAUCE: (efi-lockdown) hibernate: Disable when the kernel is locked down + - SAUCE: (efi-lockdown) uswsusp: Disable when the kernel is locked down + - SAUCE: (efi-lockdown) PCI: Lock down BAR access when the kernel is locked + down + - SAUCE: (efi-lockdown) x86: Lock down IO port access when the kernel is + locked down + - SAUCE: (efi-lockdown) x86/msr: Restrict MSR access when the kernel is locked + down + - SAUCE: (efi-lockdown) ACPI: Limit access to custom_method when the kernel is + locked down + - SAUCE: (efi-lockdown) acpi: Ignore acpi_rsdp kernel param when the kernel + has been locked down + - SAUCE: (efi-lockdown) acpi: Disable ACPI table override if the kernel is + locked down + - SAUCE: (efi-lockdown) acpi: Disable APEI error injection if the kernel is + locked down + - SAUCE: (efi-lockdown) Prohibit PCMCIA CIS storage when the kernel is locked + down + - SAUCE: (efi-lockdown) Lock down TIOCSSERIAL + - SAUCE: (efi-lockdown) Lock down module params that specify hardware + parameters (eg. ioport) + - SAUCE: (efi-lockdown) x86/mmiotrace: Lock down the testmmiotrace module + - SAUCE: (efi-lockdown) Lock down /proc/kcore + - SAUCE: (efi-lockdown) Lock down kprobes + - SAUCE: (efi-lockdown) bpf: Restrict kernel image access functions when the + kernel is locked down + - SAUCE: (efi-lockdown) Lock down perf + - SAUCE: (efi-lockdown) debugfs: Restrict debugfs when the kernel is locked + down + - SAUCE: (efi-lockdown) lockdown: Print current->comm in restriction messages + - SAUCE: (efi-lockdown) kexec: Allow kexec_file() with appropriate IMA policy + when locked down + - SAUCE: (efi-lockdown) Make get_cert_list() not complain about cert lists + that aren't present. + - SAUCE: (efi-lockdown) Add efi_status_to_str() and rework + efi_status_to_err(). + - SAUCE: (efi-lockdown) Make get_cert_list() use efi_status_to_str() to print + error messages. + - SAUCE: (efi-lockdown) efi: Add an EFI_SECURE_BOOT flag to indicate secure + boot mode + - SAUCE: (efi-lockdown) efi: Lock down the kernel if booted in secure boot + mode + - SAUCE: (efi-lockdown) KEYS: Make use of platform keyring for module + signature verify + - SAUCE: (efi-lockdown) debugfs: avoid EPERM when no open file operation + defined + - SAUCE: (efi-lockdown) efi: Sanitize boot_params in efi stub + - SAUCE: (efi-lockdown) furter KEXEC_VERIFY_SIG -> KEXEC_SIG updates + - SAUCE: (efi-lockdown) arm64: add kernel config option to lock down when in + Secure Boot mode + - update dkms package versions + - [Config] disable vbox build + - SAUCE: s390: mark __cpacf_check_opcode() and cpacf_query_func() as + __always_inline + - SAUCE: IB/mlx5: use size_t instead of u64 when dividing + + [ Upstream Kernel Changes ] + + * Rebase to v5.2-rc1 + + -- Seth Forshee Tue, 21 May 2019 11:18:43 -0500 + +linux (5.2.0-0.0) eoan; urgency=medium + + * Dummy entry. + + -- Seth Forshee Tue, 21 May 2019 07:34:43 -0500 + +linux (5.1.0-2.2) eoan; urgency=medium + + * Packaging resync (LP: #1786013) + - [Packaging] resync git-ubuntu-log + + * Eoan update: v5.1.2 upstream stable release (LP: #1829050) + - x86/msr-index: Cleanup bit defines + - x86/speculation: Consolidate CPU whitelists + - x86/speculation/mds: Add basic bug infrastructure for MDS + - x86/speculation/mds: Add BUG_MSBDS_ONLY + - x86/kvm: Expose X86_FEATURE_MD_CLEAR to guests + - x86/speculation/mds: Add mds_clear_cpu_buffers() + - x86/speculation/mds: Clear CPU buffers on exit to user + - x86/kvm/vmx: Add MDS protection when L1D Flush is not active + - x86/speculation/mds: Conditionally clear CPU buffers on idle entry + - x86/speculation/mds: Add mitigation control for MDS + - x86/speculation/mds: Add sysfs reporting for MDS + - x86/speculation/mds: Add mitigation mode VMWERV + - Documentation: Move L1TF to separate directory + - Documentation: Add MDS vulnerability documentation + - x86/speculation/mds: Add mds=full,nosmt cmdline option + - x86/speculation: Move arch_smt_update() call to after mitigation decisions + - x86/speculation/mds: Add SMT warning message + - x86/speculation/mds: Fix comment + - x86/speculation/mds: Print SMT vulnerable on MSBDS with mitigations off + - cpu/speculation: Add 'mitigations=' cmdline option + - x86/speculation: Support 'mitigations=' cmdline option + - powerpc/speculation: Support 'mitigations=' cmdline option + - s390/speculation: Support 'mitigations=' cmdline option + - x86/speculation/mds: Add 'mitigations=' support for MDS + - x86/mds: Add MDSUM variant to the MDS documentation + - Documentation: Correct the possible MDS sysfs values + - x86/speculation/mds: Fix documentation typo + - Linux 5.1.2 + + * Eoan update: v5.1.1 upstream stable release (LP: #1829046) + - Drivers: hv: vmbus: Remove the undesired put_cpu_ptr() in hv_synic_cleanup() + - ubsan: Fix nasty -Wbuiltin-declaration-mismatch GCC-9 warnings + - staging: greybus: power_supply: fix prop-descriptor request size + - staging: wilc1000: Avoid GFP_KERNEL allocation from atomic context. + - staging: most: cdev: fix chrdev_region leak in mod_exit + - staging: most: sound: pass correct device when creating a sound card + - usb: dwc3: Allow building USB_DWC3_QCOM without EXTCON + - usb: dwc3: Fix default lpm_nyet_threshold value + - USB: serial: f81232: fix interrupt worker not stop + - USB: cdc-acm: fix unthrottle races + - usb-storage: Set virt_boundary_mask to avoid SG overflows + - genirq: Prevent use-after-free and work list corruption + - intel_th: pci: Add Comet Lake support + - iio: adc: qcom-spmi-adc5: Fix of-based module autoloading + - cpufreq: armada-37xx: fix frequency calculation for opp + - ACPI / LPSS: Use acpi_lpss_* instead of acpi_subsys_* functions for + hibernate + - soc: sunxi: Fix missing dependency on REGMAP_MMIO + - scsi: lpfc: change snprintf to scnprintf for possible overflow + - scsi: qla2xxx: Fix incorrect region-size setting in optrom SYSFS routines + - scsi: qla2xxx: Set remote port devloss timeout to 0 + - scsi: qla2xxx: Fix device staying in blocked state + - Bluetooth: hidp: fix buffer overflow + - Bluetooth: Align minimum encryption key size for LE and BR/EDR connections + - Bluetooth: Fix not initializing L2CAP tx_credits + - Bluetooth: hci_bcm: Fix empty regulator supplies for Intel Macs + - UAS: fix alignment of scatter/gather segments + - ASoC: Intel: avoid Oops if DMA setup fails + - i3c: Fix a shift wrap bug in i3c_bus_set_addr_slot_status() + - locking/futex: Allow low-level atomic operations to return -EAGAIN + - arm64: futex: Bound number of LDXR/STXR loops in FUTEX_WAKE_OP + - Linux 5.1.1 + + * shiftfs: lock security sensitive superblock flags (LP: #1827122) + - SAUCE: shiftfs: lock down certain superblock flags + + * Please package libbpf (which is done out of the kernel src) in Debian [for + 19.10] (LP: #1826410) + - SAUCE: tools -- fix add ability to disable libbfd + + * ratelimit cma_alloc messages (LP: #1828092) + - SAUCE: cma: ratelimit cma_alloc error messages + + * Headphone jack switch sense is inverted: plugging in headphones disables + headphone output (LP: #1824259) + - ASoC: rt5645: Headphone Jack sense inverts on the LattePanda board + + * There are 4 HDMI/Displayport audio output listed in sound setting without + attach any HDMI/DP monitor (LP: #1827967) + - ALSA: hda/hdmi - Read the pin sense from register when repolling + - ALSA: hda/hdmi - Consider eld_valid when reporting jack event + + * CONFIG_LOG_BUF_SHIFT set to 14 is too low on arm64 (LP: #1824864) + - [Config] CONFIG_LOG_BUF_SHIFT=18 on all 64bit arches + + * CTAUTO:DevOps:860.50:devops4fp1:Error occurred during LINUX Dmesg error + Checking for all LINUX clients for devops4p10 (LP: #1766201) + - SAUCE: integrity: downgrade error to warning + + * linux-buildinfo: pull out ABI information into its own package + (LP: #1806380) + - [Packaging] autoreconstruct -- base tag is always primary mainline version + + * [SRU] Please sync vbox modules from virtualbox 6.0.6 on next kernel update + (LP: #1825210) + - vbox-update: updates for renamed makefiles + - ubuntu: vbox -- update to 6.0.6-dfsg-1 + + * autofs kernel module missing (LP: #1824333) + - [Config] Update autofs4 path in inclusion list + + * The Realtek card reader does not enter PCIe 1.1/1.2 (LP: #1825487) + - SAUCE: misc: rtsx: Fixed rts5260 power saving parameter and sd glitch + + * CVE-2019-3874 + - sctp: implement memory accounting on tx path + - sctp: implement memory accounting on rx path + + * apparmor does not start in Disco LXD containers (LP: #1824812) + - SAUCE: shiftfs: use separate llseek method for directories + + * Miscellaneous Ubuntu changes + - [Packaging] autoreconstruct -- remove for -rc kernels + - SAUCE: (efi-lockdown) debugfs: avoid EPERM when no open file operation + defined + - SAUCE: (efi-lockdown) efi: Sanitize boot_params in efi stub + - SAUCE: (efi-lockdown) furter KEXEC_VERIFY_SIG -> KEXEC_SIG updates + - [Config] (efi-lockdown): update configs after efi lockdown patch refresh + - [Packaging] don't delete efi_parser.c + - vbox-update -- do not fix up KERN_DIR or KBUILD_EXTMOD + - ubuntu: vbox -- update to 6.0.6-dfsg-2 + - add nvidia-418 dkms build + - remove virtualbox guest drivers + - [Packaging] dkms-build -- expand paths searched for make.log files + - add virtualbox-guest-dkms dkms package build + - enable vbox dkms build for amd64 and i386 + - [Config] update configs for v5.1(-rc7)? rebase + - update dkms package versions + - Add the ability to lock down access to the running kernel image + - Enforce module signatures if the kernel is locked down + - Restrict /dev/{mem,kmem,port} when the kernel is locked down + - kexec_load: Disable at runtime if the kernel is locked down + - Copy secure_boot flag in boot params across kexec reboot + - kexec_file: split KEXEC_VERIFY_SIG into KEXEC_SIG and KEXEC_SIG_FORCE + - kexec_file: Restrict at runtime if the kernel is locked down + - hibernate: Disable when the kernel is locked down + - uswsusp: Disable when the kernel is locked down + - PCI: Lock down BAR access when the kernel is locked down + - x86: Lock down IO port access when the kernel is locked down + - x86/msr: Restrict MSR access when the kernel is locked down + - ACPI: Limit access to custom_method when the kernel is locked down + - acpi: Ignore acpi_rsdp kernel param when the kernel has been locked down + - acpi: Disable ACPI table override if the kernel is locked down + - acpi: Disable APEI error injection if the kernel is locked down + - Prohibit PCMCIA CIS storage when the kernel is locked down + - Lock down TIOCSSERIAL + - Lock down module params that specify hardware parameters (eg. ioport) + - x86/mmiotrace: Lock down the testmmiotrace module + - Lock down /proc/kcore + - Lock down kprobes + - bpf: Restrict kernel image access functions when the kernel is locked down + - Lock down perf + - debugfs: Restrict debugfs when the kernel is locked down + - lockdown: Print current->comm in restriction messages + - kexec: Allow kexec_file() with appropriate IMA policy when locked down + - Make get_cert_list() not complain about cert lists that aren't present. + - Add efi_status_to_str() and rework efi_status_to_err(). + - Make get_cert_list() use efi_status_to_str() to print error messages. + - efi: Add an EFI_SECURE_BOOT flag to indicate secure boot mode + - efi: Lock down the kernel if booted in secure boot mode + - KEYS: Make use of platform keyring for module signature verify + + * Miscellaneous upstream changes + - ALSA: hdea/realtek - Headset fixup for System76 Gazelle (gaze14) + + -- Seth Forshee Tue, 14 May 2019 12:32:56 -0500 + +linux (5.1.0-1.1) eoan; urgency=medium + + * bionic: fork out linux-snapdragon into its own topic kernel (LP: #1820868) + - [Packaging]: really drop snapdragon + + * Miscellaneous Ubuntu changes + - SAUCE: fix vbox use of MAP_SHARED + - SAUCE: fix vbox use of vm_fault_t + - [Packaging] disable ZFS + - [Packaging] disable nvidia + - SAUCE: perf annotate: Fix build on 32 bit for BPF annotation + - [Config]: updateconfig after rebase to v5.1-rc + - [Config]: build ETNAVIV only on arm platforms + - [Config]: Disable CMA on non-arm platforms + - [Config]: MMC_CQHCI is needed by some built-in drivers + - [Config]: a.out support has been deprecated + - [Config]: R3964 was marked as BROKEN + - [Config]: Add SENSIRION_SGP30 module + + * Miscellaneous upstream changes + - Revert "UBUNTU: SAUCE: tools: lib/bpf -- add generated headers to search + path" + - Revert "UBUNTU: SAUCE: btqcomsmd: introduce BT_QCOMSMD_HACK" + + -- Thadeu Lima de Souza Cascardo Thu, 25 Apr 2019 10:03:25 -0300 + +linux (5.1.0-0.0) eoan; urgency=medium + + * Dummy entry. + + -- Thadeu Lima de Souza Cascardo Thu, 25 Apr 2019 09:49:47 -0300 + +linux (5.0.0-13.14) disco; urgency=medium + + * linux: 5.0.0-13.14 -proposed tracker (LP: #1824819) + + * Display only has 640x480 (LP: #1824677) + - Revert "UBUNTU: SAUCE: drm/nouveau: Disable nouveau driver by default" + + * shiftfs: use after free when checking mount options (LP: #1824735) + - SAUCE: shiftfs: prevent use-after-free when verifying mount options + + -- Seth Forshee Mon, 15 Apr 2019 09:11:23 -0500 + +linux (5.0.0-12.13) disco; urgency=medium + + * linux: 5.0.0-12.13 -proposed tracker (LP: #1824726) + + * Linux 5.0 black screen on boot, display flickers (i915 regression with + certain laptop panels) (LP: #1824216) + - drm/i915/dp: revert back to max link rate and lane count on eDP + + * kernel BUG at fs/attr.c:287 when using shiftfs (LP: #1824717) + - SAUCE: shiftfs: fix passing of attrs to underaly for setattr + + -- Seth Forshee Sun, 14 Apr 2019 13:38:05 -0500 + +linux (5.0.0-11.12) disco; urgency=medium + + * linux: 5.0.0-11.12 -proposed tracker (LP: #1824383) + + * hns3: PPU_PF_ABNORMAL_INT_ST over_8bd_no_fe found [error status=0x1] + (LP: #1824194) + - net: hns3: fix for not calculating tx bd num correctly + + * disco: unable to use iptables/enable ufw under -virtual kernel + (LP: #1823862) + - [Packaging] add bpfilter to linux-modules + + * Make shiftfs a module rather than built-in (LP: #1824354) + - [Config] CONFIG_SHIFT_FS=m + + * shiftfs: chown sets untranslated ids in lower fs (LP: #1824350) + - SAUCE: shiftfs: use translated ids when chaning lower fs attrs + + * [Hyper-V] KVP daemon fails to start on first boot of disco VM (LP: #1820063) + - [Packaging] bind hv_kvp_daemon startup to hv_kvp device + + -- Seth Forshee Thu, 11 Apr 2019 10:17:19 -0500 + +linux (5.0.0-10.11) disco; urgency=medium + + * linux: 5.0.0-10.11 -proposed tracker (LP: #1823936) + + * Apparmor enforcement failure in lxc selftests (LP: #1823379) + - SAUCE: apparmor: Restore Y/N in /sys for apparmor's "enabled" + + * systemd cause kernel trace "BUG: unable to handle kernel paging request at + 6db23a14" on Cosmic i386 (LP: #1813244) + - openvswitch: fix flow actions reallocation + + -- Seth Forshee Tue, 09 Apr 2019 08:30:38 -0500 + +linux (5.0.0-9.10) disco; urgency=medium + + * linux: 5.0.0-9.10 -proposed tracker (LP: #1823228) + + * Packaging resync (LP: #1786013) + - [Packaging] resync git-ubuntu-log + - [Packaging] update helper scripts + - [Packaging] resync retpoline extraction + + * Huawei Hi1822 NIC has poor performance (LP: #1820187) + - net-next/hinic: replace disable_irq_nosync/enable_irq + + * Add uid shifting overlay filesystem (shiftfs) (LP: #1823186) + - shiftfs: uid/gid shifting bind mount + - shiftfs: rework and extend + - shiftfs: support some btrfs ioctls + - [Config] enable shiftfs + + * Cannot boot or install - have to use nomodeset (LP: #1821820) + - Revert "drm/i915/fbdev: Actually configure untiled displays" + + * Disco update: v5.0.6 upstream stable release (LP: #1823060) + - netfilter: nf_tables: fix set double-free in abort path + - dccp: do not use ipv6 header for ipv4 flow + - genetlink: Fix a memory leak on error path + - gtp: change NET_UDP_TUNNEL dependency to select + - ipv6: make ip6_create_rt_rcu return ip6_null_entry instead of NULL + - mac8390: Fix mmio access size probe + - mISDN: hfcpci: Test both vendor & device ID for Digium HFC4S + - net: aquantia: fix rx checksum offload for UDP/TCP over IPv6 + - net: datagram: fix unbounded loop in __skb_try_recv_datagram() + - net/packet: Set __GFP_NOWARN upon allocation in alloc_pg_vec + - net: phy: meson-gxl: fix interrupt support + - net: rose: fix a possible stack overflow + - net: stmmac: fix memory corruption with large MTUs + - net-sysfs: call dev_hold if kobject_init_and_add success + - net: usb: aqc111: Extend HWID table by QNAP device + - packets: Always register packet sk in the same order + - rhashtable: Still do rehash when we get EEXIST + - sctp: get sctphdr by offset in sctp_compute_cksum + - sctp: use memdup_user instead of vmemdup_user + - tcp: do not use ipv6 header for ipv4 flow + - tipc: allow service ranges to be connect()'ed on RDM/DGRAM + - tipc: change to check tipc_own_id to return in tipc_net_stop + - tipc: fix cancellation of topology subscriptions + - tun: properly test for IFF_UP + - vrf: prevent adding upper devices + - vxlan: Don't call gro_cells_destroy() before device is unregistered + - thunderx: enable page recycling for non-XDP case + - thunderx: eliminate extra calls to put_page() for pages held for recycling + - net: dsa: mv88e6xxx: fix few issues in mv88e6390x_port_set_cmode + - net: mii: Fix PAUSE cap advertisement from linkmode_adv_to_lcl_adv_t() + helper + - net: phy: don't clear BMCR in genphy_soft_reset + - r8169: fix cable re-plugging issue + - ila: Fix rhashtable walker list corruption + - tun: add a missing rcu_read_unlock() in error path + - powerpc/fsl: Fix the flush of branch predictor. + - Btrfs: fix incorrect file size after shrinking truncate and fsync + - btrfs: remove WARN_ON in log_dir_items + - btrfs: don't report readahead errors and don't update statistics + - btrfs: Fix bound checking in qgroup_trace_new_subtree_blocks + - btrfs: Avoid possible qgroup_rsv_size overflow in + btrfs_calculate_inode_block_rsv_size + - Btrfs: fix assertion failure on fsync with NO_HOLES enabled + - locks: wake any locks blocked on request before deadlock check + - tracing: initialize variable in create_dyn_event() + - ARM: imx6q: cpuidle: fix bug that CPU might not wake up at expected time + - powerpc: bpf: Fix generation of load/store DW instructions + - vfio: ccw: only free cp on final interrupt + - NFS: Fix nfs4_lock_state refcounting in nfs4_alloc_{lock,unlock}data() + - NFS: fix mount/umount race in nlmclnt. + - NFSv4.1 don't free interrupted slot on open + - net: dsa: qca8k: remove leftover phy accessors + - ALSA: rawmidi: Fix potential Spectre v1 vulnerability + - ALSA: seq: oss: Fix Spectre v1 vulnerability + - ALSA: pcm: Fix possible OOB access in PCM oss plugins + - ALSA: pcm: Don't suspend stream in unrecoverable PCM state + - ALSA: hda/realtek - Fixed Headset Mic JD not stable + - ALSA: hda/realtek: merge alc_fixup_headset_jack to alc295_fixup_chromebook + - ALSA: hda/realtek - Add support headset mode for DELL WYSE AIO + - ALSA: hda/realtek - Add support headset mode for New DELL WYSE NB + - ALSA: hda/realtek: Enable headset MIC of Acer AIO with ALC286 + - ALSA: hda/realtek: Enable headset MIC of Acer Aspire Z24-890 with ALC286 + - ALSA: hda/realtek - Add support for Acer Aspire E5-523G/ES1-432 headset mic + - ALSA: hda/realtek: Enable ASUS X441MB and X705FD headset MIC with ALC256 + - ALSA: hda/realtek: Enable headset mic of ASUS P5440FF with ALC256 + - ALSA: hda/realtek: Enable headset MIC of ASUS X430UN and X512DK with ALC256 + - ALSA: hda/realtek - Fix speakers on Acer Predator Helios 500 Ryzen laptops + - kbuild: modversions: Fix relative CRC byte order interpretation + - fs/open.c: allow opening only regular files during execve() + - ocfs2: fix inode bh swapping mixup in ocfs2_reflink_inodes_lock + - scsi: sd: Fix a race between closing an sd device and sd I/O + - scsi: sd: Quiesce warning if device does not report optimal I/O size + - scsi: zfcp: fix rport unblock if deleted SCSI devices on Scsi_Host + - scsi: zfcp: fix scsi_eh host reset with port_forced ERP for non-NPIV FCP + devices + - drm/rockchip: vop: reset scale mode when win is disabled + - tty/serial: atmel: Add is_half_duplex helper + - tty/serial: atmel: RS485 HD w/DMA: enable RX after TX is stopped + - tty: mxs-auart: fix a potential NULL pointer dereference + - tty: atmel_serial: fix a potential NULL pointer dereference + - tty: serial: qcom_geni_serial: Initialize baud in qcom_geni_console_setup + - staging: comedi: ni_mio_common: Fix divide-by-zero for DIO cmdtest + - staging: olpc_dcon_xo_1: add missing 'const' qualifier + - staging: speakup_soft: Fix alternate speech with other synths + - staging: vt6655: Remove vif check from vnt_interrupt + - staging: vt6655: Fix interrupt race condition on device start up. + - staging: erofs: fix to handle error path of erofs_vmap() + - staging: erofs: fix error handling when failed to read compresssed data + - staging: erofs: keep corrupted fs from crashing kernel in erofs_readdir() + - serial: max310x: Fix to avoid potential NULL pointer dereference + - serial: mvebu-uart: Fix to avoid a potential NULL pointer dereference + - serial: sh-sci: Fix setting SCSCR_TIE while transferring data + - USB: serial: cp210x: add new device id + - USB: serial: ftdi_sio: add additional NovaTech products + - USB: serial: mos7720: fix mos_parport refcount imbalance on error path + - USB: serial: option: set driver_info for SIM5218 and compatibles + - USB: serial: option: add support for Quectel EM12 + - USB: serial: option: add Olicard 600 + - ACPI / CPPC: Fix guaranteed performance handling + - Disable kgdboc failed by echo space to /sys/module/kgdboc/parameters/kgdboc + - fs/proc/proc_sysctl.c: fix NULL pointer dereference in put_links + - drivers/block/zram/zram_drv.c: fix idle/writeback string compare + - blk-mq: fix sbitmap ws_active for shared tags + - cpufreq: intel_pstate: Also use CPPC nominal_perf for base_frequency + - cpufreq: scpi: Fix use after free + - drm/vgem: fix use-after-free when drm_gem_handle_create() fails + - drm/vkms: fix use-after-free when drm_gem_handle_create() fails + - drm/i915: Mark AML 0x87CA as ULX + - drm/i915/gvt: Fix MI_FLUSH_DW parsing with correct index check + - drm/i915/icl: Fix the TRANS_DDI_FUNC_CTL2 bitfield macro + - gpio: exar: add a check for the return value of ida_simple_get fails + - gpio: adnp: Fix testing wrong value in adnp_gpio_direction_input + - phy: sun4i-usb: Support set_mode to USB_HOST for non-OTG PHYs + - usb: mtu3: fix EXTCON dependency + - USB: gadget: f_hid: fix deadlock in f_hidg_write() + - usb: common: Consider only available nodes for dr_mode + - mm/memory.c: fix modifying of page protection by insert_pfn() + - usb: host: xhci-rcar: Add XHCI_TRUST_TX_LENGTH quirk + - xhci: Fix port resume done detection for SS ports with LPM enabled + - usb: xhci: dbc: Don't free all memory with spinlock held + - xhci: Don't let USB3 ports stuck in polling state prevent suspend + - usb: cdc-acm: fix race during wakeup blocking TX traffic + - usb: typec: tcpm: Try PD-2.0 if sink does not respond to 3.0 source-caps + - usb: typec: Fix unchecked return value + - mm/hotplug: fix offline undo_isolate_page_range() + - mm: add support for kmem caches in DMA32 zone + - iommu/io-pgtable-arm-v7s: request DMA32 memory, and improve debugging + - mm: mempolicy: make mbind() return -EIO when MPOL_MF_STRICT is specified + - mm/debug.c: fix __dump_page when mapping->host is not set + - mm/memory_hotplug.c: fix notification in offline error path + - mm/page_isolation.c: fix a wrong flag in set_migratetype_isolate() + - mm/migrate.c: add missing flush_dcache_page for non-mapped page migrate + - perf pmu: Fix parser error for uncore event alias + - perf intel-pt: Fix TSC slip + - objtool: Query pkg-config for libelf location + - powerpc/pseries/energy: Use OF accessor functions to read ibm,drc-indexes + - powerpc/64: Fix memcmp reading past the end of src/dest + - powerpc/pseries/mce: Fix misleading print for TLB mutlihit + - watchdog: Respect watchdog cpumask on CPU hotplug + - cpu/hotplug: Prevent crash when CPU bringup fails on CONFIG_HOTPLUG_CPU=n + - x86/smp: Enforce CONFIG_HOTPLUG_CPU when SMP=y + - KVM: Reject device ioctls from processes other than the VM's creator + - KVM: x86: Emulate MSR_IA32_ARCH_CAPABILITIES on AMD hosts + - KVM: x86: update %rip after emulating IO + - bpf: do not restore dst_reg when cur_state is freed + - mt76x02u: use usb_bulk_msg to upload firmware + - Linux 5.0.6 + + * RDMA/hns updates for disco (LP: #1822897) + - RDMA/hns: Fix the bug with updating rq head pointer when flush cqe + - RDMA/hns: Bugfix for the scene without receiver queue + - RDMA/hns: Add constraint on the setting of local ACK timeout + - RDMA/hns: Modify the pbl ba page size for hip08 + - RDMA/hns: RDMA/hns: Assign rq head pointer when enable rq record db + - RDMA/hns: Add the process of AEQ overflow for hip08 + - RDMA/hns: Add SCC context allocation support for hip08 + - RDMA/hns: Add SCC context clr support for hip08 + - RDMA/hns: Add timer allocation support for hip08 + - RDMA/hns: Remove set but not used variable 'rst' + - RDMA/hns: Make some function static + - RDMA/hns: Fix the Oops during rmmod or insmod ko when reset occurs + - RDMA/hns: Fix the chip hanging caused by sending mailbox&CMQ during reset + - RDMA/hns: Fix the chip hanging caused by sending doorbell during reset + - RDMA/hns: Limit minimum ROCE CQ depth to 64 + - RDMA/hns: Fix the state of rereg mr + - RDMA/hns: Set allocated memory to zero for wrid + - RDMA/hns: Delete useful prints for aeq subtype event + - RDMA/hns: Configure capacity of hns device + - RDMA/hns: Modify qp&cq&pd specification according to UM + - RDMA/hns: Bugfix for set hem of SCC + - RDMA/hns: Use GFP_ATOMIC in hns_roce_v2_modify_qp + + * autopkgtests run too often, too much and don't skip enough (LP: #1823056) + - Set +x on rebuild testcase. + - Skip rebuild test, for regression-suite deps. + - Make ubuntu-regression-suite skippable on unbootable kernels. + - make rebuild use skippable error codes when skipping. + - Only run regression-suite, if requested to. + + * touchpad not working on lenovo yoga 530 (LP: #1787775) + - Revert "UBUNTU: SAUCE: i2c:amd Depends on ACPI" + - Revert "UBUNTU: SAUCE: i2c:amd move out pointer in union i2c_event_base" + - i2c: add extra check to safe DMA buffer helper + - i2c: Add drivers for the AMD PCIe MP2 I2C controller + - [Config] Update config for AMD MP2 I2C driver + + * Detect SMP PHY control command errors (LP: #1822680) + - scsi: libsas: Check SMP PHY control function result + + * disable a.out support (LP: #1818552) + - [Config] Disable a.out support + - [Config] remove binfmt_aout from abi for i386 lowlatency + + * bionic: fork out linux-snapdragon into its own topic kernel (LP: #1820868) + - [Packaging] remove snapdragon flavour support + - Revert "UBUNTU: SAUCE: (snapdragon) drm/msm/adv7511: wrap hacks under + CONFIG_ADV7511_SNAPDRAGON_HACKS #ifdefs" + - Revert "UBUNTU: SAUCE: (snapdragon) media: ov5645: skip address change if dt + addr == default addr" + - Revert "UBUNTU: SAUCE: (snapdragon) DT: leds: Add Qualcomm Light Pulse + Generator binding" + - Revert "UBUNTU: SAUCE: (snapdragon) MAINTAINERS: Add Qualcomm Camera Control + Interface driver" + - Revert "UBUNTU: SAUCE: (snapdragon) dt-bindings: media: Binding document for + Qualcomm Camera Control Interface driver" + - Revert "UBUNTU: SAUCE: (snapdragon) leds: Add driver for Qualcomm LPG" + - Revert "UBUNTU: SAUCE: (snapdragon) HACK: drm/msm/adv7511: Don't rely on + interrupts for EDID parsing" + - Revert "UBUNTU: SAUCE: (snapdragon) drm/bridge/adv7511: Delay clearing of + HPD interrupt status" + - Revert "UBUNTU: SAUCE: (snapdragon) media: ov5645: Fix I2C address" + - Revert "UBUNTU: SAUCE: (snapdragon) i2c-qcom-cci: Fix I2C address bug" + - Revert "UBUNTU: SAUCE: (snapdragon) i2c-qcom-cci: Fix run queue completion + timeout" + - Revert "UBUNTU: SAUCE: (snapdragon) camss: Do not register if no cameras are + present" + - Revert "UBUNTU: SAUCE: (snapdragon) i2c: Add Qualcomm Camera Control + Interface driver" + - Revert "UBUNTU: SAUCE: (snapdragon) ov5645: I2C address change" + - Revert "UBUNTU: SAUCE: (snapdragon) regulator: smd: Allow + REGULATOR_QCOM_SMD_RPM=m" + - Revert "UBUNTU: SAUCE: (snapdragon) cpufreq: Add apq8016 to cpufreq-dt- + platdev blacklist" + - Revert "UBUNTU: SAUCE: (snapdragon) PM / OPP: Add a helper to get an opp + regulator for device" + - Revert "UBUNTU: SAUCE: (snapdragon) PM / OPP: HACK: Allow to set regulator + without opp_list" + - Revert "UBUNTU: SAUCE: (snapdragon) PM / OPP: Drop RCU usage in + dev_pm_opp_adjust_voltage()" + - Revert "UBUNTU: SAUCE: (snapdragon) PM / OPP: Support adjusting OPP voltages + at runtime" + - Revert "UBUNTU: SAUCE: (snapdragon) regulator: smd: Add floor and corner + operations" + - Revert "UBUNTU: SAUCE: (snapdragon) power: avs: cpr: Register with cpufreq- + dt" + - Revert "UBUNTU: SAUCE: (snapdragon) power: avs: cpr: fix with new + reg_sequence structures" + - Revert "UBUNTU: SAUCE: (snapdragon) power: avs: cpr: Use raw mem access for + qfprom" + - Revert "UBUNTU: SAUCE: (snapdragon) power: avs: Add support for CPR (Core + Power Reduction)" + - Revert "UBUNTU: SAUCE: (snapdragon) HACK: drm/msm/iommu: Remove runtime_put + calls in map/unmap" + - Revert "UBUNTU: SAUCE: (snapdragon) arm64: defconfig: enable LEDS_QCOM_LPG" + - Revert "UBUNTU: SAUCE: (snapdragon) kernel: distro.config: enable 'BBR' TCP + congestion algorithm" + - Revert "UBUNTU: SAUCE: (snapdragon) kernel: distro.config: enable 'fq' and + 'fq_codel' qdiscs" + - Revert "UBUNTU: SAUCE: (snapdragon) kernel: distro.config: enable + 'schedutil' CPUfreq governor" + - Revert "UBUNTU: SAUCE: (snapdragon) kernel: configs: set USB_CONFIG_F_FS in + distro.config" + - Revert "UBUNTU: SAUCE: (snapdragon) arm64: defconfig: enable + CONFIG_USB_CONFIGFS_F_FS by default" + - Revert "UBUNTU: SAUCE: (snapdragon) kernel: configs: add freq stat to sysfs" + - Revert "UBUNTU: SAUCE: (snapdragon) arm64: configs: Enable camera drivers" + - Revert "UBUNTU: SAUCE: (snapdragon) arm64: defconfig: disable ANALOG_TV and + DIGITAL_TV" + - Revert "UBUNTU: SAUCE: (snapdragon) kernel: configs: add more USB net + drivers" + - Revert "UBUNTU: SAUCE: (snapdragon) arm64: configs: enable BT_QCOMSMD" + - Revert "UBUNTU: SAUCE: (snapdragon) arm64: defconfig: enable + CFG80211_DEFAULT_PS by default" + - Revert "UBUNTU: SAUCE: (snapdragon) Force the SMD regulator driver to be + compiled-in" + - Revert "UBUNTU: SAUCE: (snapdragon) kernel: configs: enable dm_mod and + dm_crypt" + - Revert "UBUNTU: SAUCE: (snapdragon) arm64: defconfig: Enable a53/apcs and + avs" + - Revert "UBUNTU: SAUCE: (snapdragon) arm64: configs: enable QCOM Venus" + - Revert "UBUNTU: SAUCE: (snapdragon) kernel: distro.config: enable debug + friendly USB network adpater" + - Revert "UBUNTU: SAUCE: (snapdragon) arm64: configs: enable WCN36xx" + - Revert "UBUNTU: SAUCE: (snapdragon) kernel: configs; add distro.config" + - Revert "UBUNTU: SAUCE: (snapdragon) arm64: defconfig: enable QCOM audio + drivers for APQ8016 and DB410c" + - Revert "UBUNTU: SAUCE: (snapdragon) arm64: defconfig: enable REMOTEPROC" + - [Config] fix abi for remove i2c-qcom-cci module + - [Config] update annotations + - [Config] update configs following snapdragon removal + + * Disco update: v5.0.5 upstream stable release (LP: #1822671) + - Revert "ALSA: hda - Enforces runtime_resume after S3 and S4 for each codec" + - ALSA: hda - add Lenovo IdeaCentre B550 to the power_save_blacklist + - ALSA: firewire-motu: use 'version' field of unit directory to identify model + - mmc: pxamci: fix enum type confusion + - mmc: alcor: fix DMA reads + - mmc: mxcmmc: "Revert mmc: mxcmmc: handle highmem pages" + - mmc: renesas_sdhi: limit block count to 16 bit for old revisions + - drm/amdgpu: fix invalid use of change_bit + - drm/vmwgfx: Don't double-free the mode stored in par->set_mode + - drm/vmwgfx: Return 0 when gmrid::get_node runs out of ID's + - iommu/amd: fix sg->dma_address for sg->offset bigger than PAGE_SIZE + - iommu/iova: Fix tracking of recently failed iova address + - libceph: wait for latest osdmap in ceph_monc_blacklist_add() + - udf: Fix crash on IO error during truncate + - mips: loongson64: lemote-2f: Add IRQF_NO_SUSPEND to "cascade" irqaction. + - MIPS: Ensure ELF appended dtb is relocated + - MIPS: Fix kernel crash for R6 in jump label branch function + - powerpc/vdso64: Fix CLOCK_MONOTONIC inconsistencies across Y2038 + - powerpc/security: Fix spectre_v2 reporting + - net/mlx5: Fix DCT creation bad flow + - scsi: core: Avoid that a kernel warning appears during system resume + - scsi: qla2xxx: Fix FC-AL connection target discovery + - scsi: ibmvscsi: Protect ibmvscsi_head from concurrent modificaiton + - scsi: ibmvscsi: Fix empty event pool access during host removal + - futex: Ensure that futex address is aligned in handle_futex_death() + - perf probe: Fix getting the kernel map + - objtool: Move objtool_file struct off the stack + - irqchip/gic-v3-its: Fix comparison logic in lpi_range_cmp + - clocksource/drivers/riscv: Fix clocksource mask + - ALSA: ac97: Fix of-node refcount unbalance + - ext4: fix NULL pointer dereference while journal is aborted + - ext4: fix data corruption caused by unaligned direct AIO + - ext4: brelse all indirect buffer in ext4_ind_remove_space() + - media: v4l2-ctrls.c/uvc: zero v4l2_event + - Bluetooth: hci_uart: Check if socket buffer is ERR_PTR in h4_recv_buf() + - Bluetooth: Fix decrementing reference count twice in releasing socket + - Bluetooth: hci_ldisc: Initialize hci_dev before open() + - Bluetooth: hci_ldisc: Postpone HCI_UART_PROTO_READY bit set in + hci_uart_set_proto() + - drm/vkms: Fix flush_work() without INIT_WORK(). + - RDMA/cma: Rollback source IP address if failing to acquire device + - f2fs: fix to avoid deadlock of atomic file operations + - aio: simplify - and fix - fget/fput for io_submit() + - netfilter: ebtables: remove BUGPRINT messages + - loop: access lo_backing_file only when the loop device is Lo_bound + - x86/unwind: Handle NULL pointer calls better in frame unwinder + - x86/unwind: Add hardcoded ORC entry for NULL + - locking/lockdep: Add debug_locks check in __lock_downgrade() + - ALSA: hda - Record the current power state before suspend/resume calls + - ALSA: hda - Enforces runtime_resume after S3 and S4 for each codec + - Linux 5.0.5 + + * hisi_sas updates for disco (LP: #1822385) + - scsi: hisi_sas: send primitive NOTIFY to SSP situation only + - scsi: hisi_sas: shutdown axi bus to avoid exception CQ returned + - scsi: hisi_sas: remove the check of sas_dev status in + hisi_sas_I_T_nexus_reset() + - scsi: hisi_sas: Remove unused parameter of function hisi_sas_alloc() + - scsi: hisi_sas: Reject setting programmed minimum linkrate > 1.5G + - scsi: hisi_sas: Fix losing directly attached disk when hot-plug + - scsi: hisi_sas: Correct memory allocation size for DQ debugfs + - scsi: hisi_sas: Some misc tidy-up + - scsi: hisi_sas: Fix to only call scsi_get_prot_op() for non-NULL scsi_cmnd + - scsi: hisi_sas: Add missing seq_printf() call in hisi_sas_show_row_32() + - scsi: hisi_sas: Add support for DIX feature for v3 hw + - scsi: hisi_sas: Add manual trigger for debugfs dump + - scsi: hisi_sas: change queue depth from 512 to 4096 + - scsi: hisi_sas: Issue internal abort on all relevant queues + - scsi: hisi_sas: Use pci_irq_get_affinity() for v3 hw as experimental + - scsi: hisi_sas: Do some more tidy-up + - scsi: hisi_sas: Change return variable type in phy_up_v3_hw() + - scsi: hisi_sas: Fix a timeout race of driver internal and SMP IO + - scsi: hisi_sas: print PHY RX errors count for later revision of v3 hw + - scsi: hisi_sas: Set PHY linkrate when disconnected + - scsi: hisi_sas: Send HARD RESET to clear the previous affiliation of STP + target port + - scsi: hisi_sas: Change SERDES_CFG init value to increase reliability of + HiLink + - scsi: hisi_sas: Add softreset in hisi_sas_I_T_nexus_reset() + + * [Patch][Raven 2] kernel 5.0.0 cannot boot because of psp response + (LP: #1822267) + - drm/amdgpu/psp: Fix can't detect psp INVOKE command failed + - drm/amdgpu/psp: ignore psp response status + + * 3b080b2564287be91605bfd1d5ee985696e61d3c in ubuntu_btrfs_kernel_fixes + triggers system hang on i386 (LP: #1812845) + - btrfs: raid56: properly unmap parity page in finish_parity_scrub() + + * enable CONFIG_DRM_BOCHS (LP: #1795857) + - [Config] Reenable DRM_BOCHS as module + + * [Dell Precision 7530/5530 with Nvidia Quadro P1000] Live USB freezes or + cannot complete install when nouveau driver is loaded (crashing in GP100 + code) (LP: #1822026) + - SAUCE: drm/nouveau: Disable nouveau driver by default + + * Need to add Intel CML related pci-id's (LP: #1821863) + - drm/i915/cml: Add CML PCI IDS + - drm/i915/cml: Introduce Comet Lake PCH + + * ARM: Add support for the SDEI interface (LP: #1822005) + - ACPI / APEI: Don't wait to serialise with oops messages when panic()ing + - ACPI / APEI: Remove silent flag from ghes_read_estatus() + - ACPI / APEI: Switch estatus pool to use vmalloc memory + - ACPI / APEI: Make hest.c manage the estatus memory pool + - ACPI / APEI: Make estatus pool allocation a static size + - ACPI / APEI: Don't store CPER records physical address in struct ghes + - ACPI / APEI: Remove spurious GHES_TO_CLEAR check + - ACPI / APEI: Don't update struct ghes' flags in read/clear estatus + - ACPI / APEI: Generalise the estatus queue's notify code + - ACPI / APEI: Don't allow ghes_ack_error() to mask earlier errors + - ACPI / APEI: Move NOTIFY_SEA between the estatus-queue and NOTIFY_NMI + - ACPI / APEI: Switch NOTIFY_SEA to use the estatus queue + - KVM: arm/arm64: Add kvm_ras.h to collect kvm specific RAS plumbing + - arm64: KVM/mm: Move SEA handling behind a single 'claim' interface + - ACPI / APEI: Move locking to the notification helper + - ACPI / APEI: Let the notification helper specify the fixmap slot + - ACPI / APEI: Pass ghes and estatus separately to avoid a later copy + - ACPI / APEI: Make GHES estatus header validation more user friendly + - ACPI / APEI: Split ghes_read_estatus() to allow a peek at the CPER length + - ACPI / APEI: Only use queued estatus entry during in_nmi_queue_one_entry() + - ACPI / APEI: Use separate fixmap pages for arm64 NMI-like notifications + - firmware: arm_sdei: Add ACPI GHES registration helper + - ACPI / APEI: Add support for the SDEI GHES Notification type + + * CVE-2019-9857 + - inotify: Fix fsnotify_mark refcount leak in inotify_update_existing_watch() + + * scsi: libsas: Support SATA PHY connection rate unmatch fixing during + discovery (LP: #1821408) + - scsi: libsas: Support SATA PHY connection rate unmatch fixing during + discovery + + * Qualcomm Atheros QCA9377 wireless does not work (LP: #1818204) + - platform/x86: ideapad-laptop: Add Ideapad 530S-14ARR to no_hw_rfkill list + + * Lenovo ideapad 330-15ICH Wifi rfkill hard blocked (LP: #1811815) + - platform/x86: ideapad: Add ideapad 330-15ICH to no_hw_rfkill + + * hid-sensor-hub spamming dmesg in 4.20 (LP: #1818547) + - HID: Increase maximum report size allowed by hid_field_extract() + + * [disco] [5.0.0-7.8] can't mount guest cifs share (LP: #1821053) + - cifs: allow guest mounts to work for smb3.11 + - SMB3: Fix SMB3.1.1 guest mounts to Samba + + * Add HiSilicon SoC quirk for cpufreq (LP: #1821620) + - ACPI / CPPC: Add a helper to get desired performance + - cpufreq / cppc: Work around for Hisilicon CPPC cpufreq + + * Disco update: v5.0.4 upstream stable release (LP: #1821607) + - 9p: use inode->i_lock to protect i_size_write() under 32-bit + - 9p/net: fix memory leak in p9_client_create + - ASoC: fsl_esai: fix register setting issue in RIGHT_J mode + - ASoC: codecs: pcm186x: fix wrong usage of DECLARE_TLV_DB_SCALE() + - ASoC: codecs: pcm186x: Fix energysense SLEEP bit + - iio: adc: exynos-adc: Fix NULL pointer exception on unbind + - iio: adc: exynos-adc: Use proper number of channels for Exynos4x12 + - mei: hbm: clean the feature flags on link reset + - mei: bus: move hw module get/put to probe/release + - stm class: Prevent division by zero + - stm class: Fix an endless loop in channel allocation + - crypto: caam - fix hash context DMA unmap size + - crypto: ccree - fix missing break in switch statement + - crypto: caam - fixed handling of sg list + - crypto: caam - fix DMA mapping of stack memory + - crypto: ccree - fix free of unallocated mlli buffer + - crypto: ccree - unmap buffer before copying IV + - crypto: ccree - don't copy zero size ciphertext + - crypto: cfb - add missing 'chunksize' property + - crypto: cfb - remove bogus memcpy() with src == dest + - crypto: ofb - fix handling partial blocks and make thread-safe + - crypto: ahash - fix another early termination in hash walk + - crypto: rockchip - fix scatterlist nents error + - crypto: rockchip - update new iv to device in multiple operations + - dax: Flush partial PMDs correctly + - nfit: Fix nfit_intel_shutdown_status() command submission + - nfit: acpi_nfit_ctl(): Check out_obj->type in the right place + - acpi/nfit: Fix bus command validation + - nfit/ars: Attempt a short-ARS whenever the ARS state is idle at boot + - nfit/ars: Attempt short-ARS even in the no_init_ars case + - libnvdimm/label: Clear 'updating' flag after label-set update + - libnvdimm, pfn: Fix over-trim in trim_pfn_device() + - libnvdimm/pmem: Honor force_raw for legacy pmem regions + - libnvdimm: Fix altmap reservation size calculation + - fix cgroup_do_mount() handling of failure exits + - crypto: aead - set CRYPTO_TFM_NEED_KEY if ->setkey() fails + - crypto: aegis - fix handling chunked inputs + - crypto: arm/crct10dif - revert to C code for short inputs + - crypto: arm64/aes-neonbs - fix returning final keystream block + - crypto: arm64/crct10dif - revert to C code for short inputs + - crypto: hash - set CRYPTO_TFM_NEED_KEY if ->setkey() fails + - crypto: morus - fix handling chunked inputs + - crypto: pcbc - remove bogus memcpy()s with src == dest + - crypto: skcipher - set CRYPTO_TFM_NEED_KEY if ->setkey() fails + - crypto: testmgr - skip crc32c context test for ahash algorithms + - crypto: x86/aegis - fix handling chunked inputs and MAY_SLEEP + - crypto: x86/aesni-gcm - fix crash on empty plaintext + - crypto: x86/morus - fix handling chunked inputs and MAY_SLEEP + - crypto: arm64/aes-ccm - fix logical bug in AAD MAC handling + - crypto: arm64/aes-ccm - fix bugs in non-NEON fallback routine + - CIFS: Fix leaking locked VFS cache pages in writeback retry + - CIFS: Do not reset lease state to NONE on lease break + - CIFS: Do not skip SMB2 message IDs on send failures + - CIFS: Fix read after write for files with read caching + - smb3: make default i/o size for smb3 mounts larger + - tracing: Use strncpy instead of memcpy for string keys in hist triggers + - tracing: Do not free iter->trace in fail path of tracing_open_pipe() + - tracing/perf: Use strndup_user() instead of buggy open-coded version + - vmw_balloon: release lock on error in vmballoon_reset() + - xen: fix dom0 boot on huge systems + - ACPI / device_sysfs: Avoid OF modalias creation for removed device + - mmc: sdhci-esdhc-imx: fix HS400 timing issue + - mmc: renesas_sdhi: Fix card initialization failure in high speed mode + - mmc:fix a bug when max_discard is 0 + - spi: ti-qspi: Fix mmap read when more than one CS in use + - spi: pxa2xx: Setup maximum supported DMA transfer length + - spi: omap2-mcspi: Fix DMA and FIFO event trigger size mismatch + - spi: spi-gpio: fix SPI_CS_HIGH capability + - regulator: s2mps11: Fix steps for buck7, buck8 and LDO35 + - regulator: max77620: Initialize values for DT properties + - regulator: s2mpa01: Fix step values for some LDOs + - mt76: fix corrupted software generated tx CCMP PN + - clocksource/drivers/exynos_mct: Move one-shot check from tick clear to ISR + - clocksource/drivers/exynos_mct: Clear timer interrupt when shutdown + - clocksource/drivers/arch_timer: Workaround for Allwinner A64 timer + instability + - s390: vfio_ap: link the vfio_ap devices to the vfio_ap bus subsystem + - s390/setup: fix early warning messages + - s390/virtio: handle find on invalid queue gracefully + - scsi: virtio_scsi: don't send sc payload with tmfs + - scsi: aacraid: Fix performance issue on logical drives + - scsi: sd: Optimal I/O size should be a multiple of physical block size + - scsi: target/iscsi: Avoid iscsit_release_commands_from_conn() deadlock + - scsi: qla2xxx: Fix LUN discovery if loop id is not assigned yet by firmware + - scsi: qla2xxx: Avoid PCI IRQ affinity mapping when multiqueue is not + supported + - scsi: qla2xxx: Use complete switch scan for RSCN events + - fs/devpts: always delete dcache dentry-s in dput() + - splice: don't merge into linked buffers + - ovl: During copy up, first copy up data and then xattrs + - ovl: Do not lose security.capability xattr over metadata file copy-up + - m68k: Add -ffreestanding to CFLAGS + - Btrfs: setup a nofs context for memory allocation at btrfs_create_tree() + - Btrfs: setup a nofs context for memory allocation at __btrfs_set_acl + - btrfs: scrub: fix circular locking dependency warning + - btrfs: drop the lock on error in btrfs_dev_replace_cancel + - btrfs: ensure that a DUP or RAID1 block group has exactly two stripes + - btrfs: init csum_list before possible free + - Btrfs: fix corruption reading shared and compressed extents after hole + punching + - Btrfs: fix deadlock between clone/dedupe and rename + - soc: qcom: rpmh: Avoid accessing freed memory from batch API + - libertas_tf: don't set URB_ZERO_PACKET on IN USB transfer + - irqchip/gic-v3-its: Avoid parsing _indirect_ twice for Device table + - irqchip/brcmstb-l2: Use _irqsave locking variants in non-interrupt code + - x86/kprobes: Prohibit probing on optprobe template code + - cpufreq: kryo: Release OPP tables on module removal + - cpufreq: tegra124: add missing of_node_put() + - cpufreq: pxa2xx: remove incorrect __init annotation + - ext4: fix check of inode in swap_inode_boot_loader + - ext4: cleanup pagecache before swap i_data + - mm: hwpoison: fix thp split handing in soft_offline_in_use_page() + - mm/vmalloc: fix size check for remap_vmalloc_range_partial() + - mm/memory.c: do_fault: avoid usage of stale vm_area_struct + - kernel/sysctl.c: add missing range check in do_proc_dointvec_minmax_conv + - nvmem: core: don't check the return value of notifier chain call + - device property: Fix the length used in PROPERTY_ENTRY_STRING() + - intel_th: Don't reference unassigned outputs + - parport_pc: fix find_superio io compare code, should use equal test. + - i2c: tegra: fix maximum transfer size + - i2c: tegra: update maximum transfer size + - media: i2c: ov5640: Fix post-reset delay + - gpio: pca953x: Fix dereference of irq data in shutdown + - ext4: update quota information while swapping boot loader inode + - ext4: add mask of ext4 flags to swap + - ext4: fix crash during online resizing + - dma: Introduce dma_max_mapping_size() + - swiotlb: Introduce swiotlb_max_mapping_size() + - swiotlb: Add is_swiotlb_active() function + - PCI/ASPM: Use LTR if already enabled by platform + - PCI/DPC: Fix print AER status in DPC event handling + - PCI: qcom: Don't deassert reset GPIO during probe + - PCI: dwc: skip MSI init if MSIs have been explicitly disabled + - PCI: pci-bridge-emul: Create per-bridge copy of register behavior + - PCI: pci-bridge-emul: Extend pci_bridge_emul_init() with flags + - IB/hfi1: Close race condition on user context disable and close + - IB/rdmavt: Fix loopback send with invalidate ordering + - IB/rdmavt: Fix concurrency panics in QP post_send and modify to error + - cxl: Wrap iterations over afu slices inside 'afu_list_lock' + - ext2: Fix underflow in ext2_max_size() + - clk: uniphier: Fix update register for CPU-gear + - clk: clk-twl6040: Fix imprecise external abort for pdmclk + - clk: samsung: exynos5: Fix possible NULL pointer exception on + platform_device_alloc() failure + - clk: samsung: exynos5: Fix kfree() of const memory on setting + driver_override + - clk: ingenic: Fix round_rate misbehaving with non-integer dividers + - clk: ingenic: Fix doc of ingenic_cgu_div_info + - usb: chipidea: tegra: Fix missed ci_hdrc_remove_device() + - usb: typec: tps6598x: handle block writes separately with plain-I2C adapters + - dmaengine: usb-dmac: Make DMAC system sleep callbacks explicit + - serial: uartps: Fix stuck ISR if RX disabled with non-empty FIFO + - serial: 8250_of: assume reg-shift of 2 for mrvl,mmp-uart + - serial: 8250_pci: Fix number of ports for ACCES serial cards + - serial: 8250_pci: Have ACCES cards that use the four port Pericom PI7C9X7954 + chip use the pci_pericom_setup() + - jbd2: clear dirty flag when revoking a buffer from an older transaction + - jbd2: fix compile warning when using JBUFFER_TRACE + - selinux: add the missing walk_size + len check in selinux_sctp_bind_connect + - security/selinux: fix SECURITY_LSM_NATIVE_LABELS on reused superblock + - powerpc/32: Clear on-stack exception marker upon exception return + - powerpc/wii: properly disable use of BATs when requested. + - powerpc/powernv: Make opal log only readable by root + - powerpc/83xx: Also save/restore SPRG4-7 during suspend + - powerpc/kvm: Save and restore host AMR/IAMR/UAMOR + - powerpc/powernv: Don't reprogram SLW image on every KVM guest entry/exit + - powerpc/64s/hash: Fix assert_slb_presence() use of the slbfee. instruction + - powerpc: Fix 32-bit KVM-PR lockup and host crash with MacOS guest + - powerpc/ptrace: Simplify vr_get/set() to avoid GCC warning + - powerpc/hugetlb: Don't do runtime allocation of 16G pages in LPAR + configuration + - powerpc/smp: Fix NMI IPI timeout + - powerpc/smp: Fix NMI IPI xmon timeout + - powerpc/traps: fix recoverability of machine check handling on book3s/32 + - powerpc/traps: Fix the message printed when stack overflows + - ARM: s3c24xx: Fix boolean expressions in osiris_dvs_notify + - arm64: Fix HCR.TGE status for NMI contexts + - arm64: debug: Don't propagate UNKNOWN FAR into si_code for debug signals + - arm64: debug: Ensure debug handlers check triggering exception level + - arm64: KVM: Fix architecturally invalid reset value for FPEXC32_EL2 + - Revert "KVM/MMU: Flush tlb directly in the kvm_zap_gfn_range()" + - ipmi_si: Fix crash when using hard-coded device + - ipmi_si: fix use-after-free of resource->name + - dm: fix to_sector() for 32bit + - dm integrity: limit the rate of error messages + - media: cx25840: mark pad sig_types to fix cx231xx init + - mfd: sm501: Fix potential NULL pointer dereference + - cpcap-charger: generate events for userspace + - cpuidle: governor: Add new governors to cpuidle_governors again + - NFS: Fix I/O request leakages + - NFS: Fix an I/O request leakage in nfs_do_recoalesce + - NFS: Don't recoalesce on error in nfs_pageio_complete_mirror() + - nfsd: fix performance-limiting session calculation + - nfsd: fix memory corruption caused by readdir + - nfsd: fix wrong check in write_v4_end_grace() + - NFSv4.1: Reinitialise sequence results before retransmitting a request + - svcrpc: fix UDP on servers with lots of threads + - PM / wakeup: Rework wakeup source timer cancellation + - PM / OPP: Update performance state when freq == old_freq + - bcache: treat stale && dirty keys as bad keys + - bcache: use (REQ_META|REQ_PRIO) to indicate bio for metadata + - stable-kernel-rules.rst: add link to networking patch queue + - vt: perform safe console erase in the right order + - x86/unwind/orc: Fix ORC unwind table alignment + - perf intel-pt: Fix CYC timestamp calculation after OVF + - perf tools: Fix split_kallsyms_for_kcore() for trampoline symbols + - perf auxtrace: Define auxtrace record alignment + - perf intel-pt: Fix overlap calculation for padding + - perf/x86/intel/uncore: Fix client IMC events return huge result + - perf intel-pt: Fix divide by zero when TSC is not available + - md: Fix failed allocation of md_register_thread + - x86/kvmclock: set offset for kvm unstable clock + - x86/ftrace: Fix warning and considate ftrace_jmp_replace() and + ftrace_call_replace() + - tpm/tpm_crb: Avoid unaligned reads in crb_recv() + - tpm: Unify the send callback behaviour + - rcu: Do RCU GP kthread self-wakeup from softirq and interrupt + - media: imx: prpencvf: Stop upstream before disabling IDMA channel + - media: lgdt330x: fix lock status reporting + - media: sun6i: Fix CSI regmap's max_register + - media: uvcvideo: Avoid NULL pointer dereference at the end of streaming + - media: vimc: Add vimc-streamer for stream control + - media: imx-csi: Input connections to CSI should be optional + - media: imx: csi: Disable CSI immediately after last EOF + - media: imx: csi: Stop upstream before disabling IDMA channel + - drm/fb-helper: generic: Fix drm_fbdev_client_restore() + - drm/radeon/evergreen_cs: fix missing break in switch statement + - drm/amd/powerplay: correct power reading on fiji + - drm/amd/display: don't call dm_pp_ function from an fpu block + - KVM: Call kvm_arch_memslots_updated() before updating memslots + - KVM: VMX: Compare only a single byte for VMCS' "launched" in vCPU-run + - KVM: VMX: Zero out *all* general purpose registers after VM-Exit + - KVM: x86/mmu: Detect MMIO generation wrap in any address space + - KVM: x86/mmu: Do not cache MMIO accesses while memslots are in flux + - KVM: nVMX: Sign extend displacements of VMX instr's mem operands + - KVM: nVMX: Apply addr size mask to effective address for VMX instructions + - KVM: nVMX: Ignore limit checks on VMX instructions using flat segments + - KVM: nVMX: Check a single byte for VMCS "launched" in nested early checks + - net: dsa: lantiq_gswip: fix use-after-free on failed probe + - net: dsa: lantiq_gswip: fix OF child-node lookups + - s390/setup: fix boot crash for machine without EDAT-1 + - SUNRPC: Prevent thundering herd when the socket is not connected + - SUNRPC: Fix up RPC back channel transmission + - SUNRPC: Respect RPC call timeouts when retrying transmission + - Linux 5.0.4 + - [Config] update configs for 5.0.4 stable update + + * New Intel Wireless-AC 9260 [8086:2526] card not correctly probed in Ubuntu + system (LP: #1821271) + - iwlwifi: add new card for 9260 series + + * [CONFIG] please enable highdpi font FONT_TER16x32 (LP: #1819881) + - [Config]: enable highdpi Terminus 16x32 font support + + * [SRU][B/B-OEM/C/D] Fix AMD IOMMU NULL dereference (LP: #1820990) + - iommu/amd: Fix NULL dereference bug in match_hid_uid + + * some codecs stop working after S3 (LP: #1820930) + - ALSA: hda - Enforces runtime_resume after S3 and S4 for each codec + - ALSA: hda - Don't trigger jackpoll_work in azx_resume + + * tcm_loop.ko: move from modules-extra into main modules package + (LP: #1817786) + - [Packaging] move tcm_loop.lo to main linux-modules package + + * C++ demangling support missing from perf (LP: #1396654) + - [Packaging] fix a mistype + + * r8169 doesn't get woken up by ethernet cable plugging, no PME generated + (LP: #1817676) + - PCI: pciehp: Disable Data Link Layer State Changed event on suspend + + * Disco update: v5.0.3 upstream stable release (LP: #1821074) + - connector: fix unsafe usage of ->real_parent + - fou, fou6: avoid uninit-value in gue_err() and gue6_err() + - gro_cells: make sure device is up in gro_cells_receive() + - ipv4/route: fail early when inet dev is missing + - l2tp: fix infoleak in l2tp_ip6_recvmsg() + - lan743x: Fix RX Kernel Panic + - lan743x: Fix TX Stall Issue + - net: hsr: fix memory leak in hsr_dev_finalize() + - net/hsr: fix possible crash in add_timer() + - net: sit: fix UBSAN Undefined behaviour in check_6rd + - net/x25: fix use-after-free in x25_device_event() + - net/x25: reset state in x25_connect() + - pptp: dst_release sk_dst_cache in pptp_sock_destruct + - ravb: Decrease TxFIFO depth of Q3 and Q2 to one + - route: set the deleted fnhe fnhe_daddr to 0 in ip_del_fnhe to fix a race + - rxrpc: Fix client call queueing, waiting for channel + - sctp: remove sched init from sctp_stream_init + - tcp: do not report TCP_CM_INQ of 0 for closed connections + - tcp: Don't access TCP_SKB_CB before initializing it + - tcp: handle inet_csk_reqsk_queue_add() failures + - vxlan: Fix GRO cells race condition between receive and link delete + - vxlan: test dev->flags & IFF_UP before calling gro_cells_receive() + - net/mlx4_core: Fix reset flow when in command polling mode + - net/mlx4_core: Fix locking in SRIOV mode when switching between events and + polling + - net/mlx4_core: Fix qp mtt size calculation + - net: dsa: mv88e6xxx: Set correct interface mode for CPU/DSA ports + - vsock/virtio: fix kernel panic from virtio_transport_reset_no_sock + - net: sched: flower: insert new filter to idr after setting its mask + - f2fs: wait on atomic writes to count F2FS_CP_WB_DATA + - perf/x86: Fixup typo in stub functions + - ALSA: bebob: use more identical mod_alias for Saffire Pro 10 I/O against + Liquid Saffire 56 + - ALSA: firewire-motu: fix construction of PCM frame for capture direction + - ALSA: hda: Extend i915 component bind timeout + - ALSA: hda - add more quirks for HP Z2 G4 and HP Z240 + - ALSA: hda/realtek: Enable audio jacks of ASUS UX362FA with ALC294 + - ALSA: hda/realtek - Reduce click noise on Dell Precision 5820 headphone + - ALSA: hda/realtek: Enable headset MIC of Acer TravelMate X514-51T with + ALC255 + - perf/x86/intel: Fix memory corruption + - perf/x86/intel: Make dev_attr_allow_tsx_force_abort static + - It's wrong to add len to sector_nr in raid10 reshape twice + - drm: Block fb changes for async plane updates + - Linux 5.0.3 + + * Disco update: v5.0.2 upstream stable release (LP: #1820318) + - media: uvcvideo: Fix 'type' check leading to overflow + - Input: wacom_serial4 - add support for Wacom ArtPad II tablet + - Input: elan_i2c - add id for touchpad found in Lenovo s21e-20 + - iscsi_ibft: Fix missing break in switch statement + - scsi: aacraid: Fix missing break in switch statement + - x86/PCI: Fixup RTIT_BAR of Intel Denverton Trace Hub + - arm64: dts: zcu100-revC: Give wifi some time after power-on + - arm64: dts: hikey: Give wifi some time after power-on + - arm64: dts: hikey: Revert "Enable HS200 mode on eMMC" + - ARM: dts: exynos: Fix pinctrl definition for eMMC RTSN line on Odroid X2/U3 + - ARM: dts: exynos: Add minimal clkout parameters to Exynos3250 PMU + - ARM: dts: exynos: Fix max voltage for buck8 regulator on Odroid XU3/XU4 + - drm: disable uncached DMA optimization for ARM and arm64 + - media: Revert "media: rc: some events are dropped by userspace" + - Revert "PCI/PME: Implement runtime PM callbacks" + - bpf: Stop the psock parser before canceling its work + - gfs2: Fix missed wakeups in find_insert_glock + - staging: erofs: keep corrupted fs from crashing kernel in erofs_namei() + - staging: erofs: compressed_pages should not be accessed again after freed + - scripts/gdb: replace flags (MS_xyz -> SB_xyz) + - ath9k: Avoid OF no-EEPROM quirks without qca,no-eeprom + - perf/x86/intel: Make cpuc allocations consistent + - perf/x86/intel: Generalize dynamic constraint creation + - x86: Add TSX Force Abort CPUID/MSR + - perf/x86/intel: Implement support for TSX Force Abort + - Linux 5.0.2 + + * Linux security module stacking support + - LSM: Introduce LSM_FLAG_LEGACY_MAJOR + - LSM: Provide separate ordered initialization + - LSM: Plumb visibility into optional "enabled" state + - LSM: Lift LSM selection out of individual LSMs + - LSM: Build ordered list of LSMs to initialize + - LSM: Introduce CONFIG_LSM + - LSM: Introduce "lsm=" for boottime LSM selection + - LSM: Tie enabling logic to presence in ordered list + - LSM: Prepare for reorganizing "security=" logic + - LSM: Refactor "security=" in terms of enable/disable + - LSM: Separate idea of "major" LSM from "exclusive" LSM + - apparmor: Remove SECURITY_APPARMOR_BOOTPARAM_VALUE + - selinux: Remove SECURITY_SELINUX_BOOTPARAM_VALUE + - LSM: Add all exclusive LSMs to ordered initialization + - LSM: Split LSM preparation from initialization + - LoadPin: Initialize as ordered LSM + - Yama: Initialize as ordered LSM + - LSM: Introduce enum lsm_order + - capability: Initialize as LSM_ORDER_FIRST + - procfs: add smack subdir to attrs + - Smack: Abstract use of cred security blob + - SELinux: Abstract use of cred security blob + - SELinux: Remove cred security blob poisoning + - SELinux: Remove unused selinux_is_enabled + - AppArmor: Abstract use of cred security blob + - TOMOYO: Abstract use of cred security blob + - Infrastructure management of the cred security blob + - SELinux: Abstract use of file security blob + - Smack: Abstract use of file security blob + - LSM: Infrastructure management of the file security + - SELinux: Abstract use of inode security blob + - Smack: Abstract use of inode security blob + - LSM: Infrastructure management of the inode security + - LSM: Infrastructure management of the task security + - SELinux: Abstract use of ipc security blobs + - Smack: Abstract use of ipc security blobs + - LSM: Infrastructure management of the ipc security blob + - TOMOYO: Update LSM flags to no longer be exclusive + - LSM: generalize flag passing to security_capable + - LSM: Make lsm_early_cred() and lsm_early_task() local functions. + - LSM: Make some functions static + - apparmor: Adjust offset when accessing task blob. + - LSM: Ignore "security=" when "lsm=" is specified + - LSM: Update list of SECURITYFS users in Kconfig + - apparmor: delete the dentry in aafs_remove() to avoid a leak + - apparmor: fix double free when unpack of secmark rules fails + - SAUCE: LSM: Infrastructure management of the sock security + - SAUCE: LSM: Limit calls to certain module hooks + - SAUCE: LSM: Special handling for secctx lsm hooks + - SAUCE: LSM: Specify which LSM to display with /proc/self/attr/display + - SAUCE: Fix-up af_unix mediation for sock infrastructure management + - SAUCE: Revert "apparmor: Fix warning about unused function + apparmor_ipv6_postroute" + - SAUCE: Revert "apparmor: fix checkpatch error in Parse secmark policy" + - SAUCE: Revert "apparmor: add #ifdef checks for secmark filtering" + - SAUCE: Revert "apparmor: Allow filtering based on secmark policy" + - SAUCE: Revert "apparmor: Parse secmark policy" + - SAUCE: Revert "apparmor: Add a wildcard secid" + - SAUCE: Revert "apparmor: fix bad debug check in apparmor_secid_to_secctx()" + - SAUCE: Revert "apparmor: fixup secid map conversion to using IDR" + - SAUCE: Revert "apparmor: Use an IDR to allocate apparmor secids" + - SAUCE: Revert "apparmor: Fix memory leak of rule on error exit path" + - SAUCE: Revert "apparmor: modify audit rule support to support profile + stacks" + - SAUCE: Revert "apparmor: Add support for audit rule filtering" + - SAUCE: Revert "apparmor: add the ability to get a task's secid" + - SAUCE: Revert "apparmor: add support for mapping secids and using secctxes" + - SAUCE: apparmor: add proc subdir to attrs + - SAUCE: apparmor: add an apparmorfs entry to access current attrs + - SAUCE: apparmor: update flags to no longer be exclusive + - SAUCE: update configs and annotations for LSM stacking + + * Miscellaneous Ubuntu changes + - [Config] CONFIG_EARLY_PRINTK_USB_XDBC=y + - SAUCE: (efi-lockdown) bpf: Restrict kernel image access functions when the + kernel is locked down + - [Config] CONFIG_RANDOM_TRUST_CPU=y + - [Config] refresh annotations for recent config changes + - ubuntu: vbox -- update to 6.0.4-dfsg-7 + - Revert "UBUNTU: SAUCE: i2c:amd I2C Driver based on PCI Interface for + upcoming platform" + + -- Seth Forshee Thu, 04 Apr 2019 14:49:59 -0500 + +linux (5.0.0-8.9) disco; urgency=medium + + * linux: 5.0.0-8.9 -proposed tracker (LP: #1819759) + + * hisi_sas: add debugfs support (LP: #1819500) + - scsi: hisi_sas: Create root and device debugfs directories + - scsi: hisi_sas: Alloc debugfs snapshot buffer memory for all registers + - scsi: hisi_sas: Take debugfs snapshot for all regs + - scsi: hisi_sas: Debugfs global register create file and add file operations + - scsi: hisi_sas: Add debugfs for port registers + - scsi: hisi_sas: Add debugfs CQ file and add file operations + - scsi: hisi_sas: Add debugfs DQ file and add file operations + - scsi: hisi_sas: Add debugfs IOST file and add file operations + - scsi: hisi_sas: No need to check return value of debugfs_create functions + - scsi: hisi_sas: Fix type casting and missing static qualifier in debugfs + code + - scsi: hisi_sas: Add debugfs ITCT file and add file operations + + * [disco] hns driver updates from 5.1 merge window (LP: #1819535) + - net: hns: Use struct_size() in devm_kzalloc() + - net: hns3: modify enet reinitialization interface + - net: hns3: remove unused member in struct hns3_enet_ring + - net: hns3: remove unnecessary hns3_adjust_tqps_num + - net: hns3: reuse reinitialization interface in the hns3_set_channels + - net: hns3: add interface hclge_tm_bp_setup + - net: hns3: modify parameter checks in the hns3_set_channels + - net: hns3: remove redundant codes in hclge_knic_setup + - net: hns3: fix user configuration loss for ethtool -L + - net: hns3: adjust the use of alloc_tqps and num_tqps + - net: hns3: fix wrong combined count returned by ethtool -l + - net: hns3: do reinitialization while ETS configuration changed + - net: hns3: add HNAE3_RESTORE_CLIENT interface in enet module + - net: hns3: add calling roce callback function when link status change + - net: hns3: add rx multicast packets statistic + - net: hns3: refactor the statistics updating for netdev + - net: hns3: fix rss configuration lost problem when setting channel + - net: hns3: fix for shaper not setting when TC num changes + - net: hns3: fix bug of ethtool_ops.get_channels for VF + - net: hns3: clear param in ring when free ring + - net: hns3: Change fw error code NOT_EXEC to NOT_SUPPORTED + - net: hns3: do not return GE PFC setting err when initializing + - net: hns3: add ETS TC weight setting in SSU module + - net: hns3: add statistics for PFC frames and MAC control frames + - net: hns3: fix PFC not setting problem for DCB module + - net: hns3: don't update packet statistics for packets dropped by hardware + - net: hns3: clear pci private data when unload hns3 driver + - net: hns3: add error handling in hclge_ieee_setets + - net: hns3: fix return value handle issue for hclge_set_loopback() + - net: hns3: fix broadcast promisc issue for revision 0x20 + - net: hns3: After setting the loopback, add the status of getting MAC + - net: hns3: do reinitialization while mqprio configuration changed + - net: hns3: remove dcb_ops->map_update in hclge_dcb + - net: hns3: call hns3_nic_set_real_num_queue with netdev down + - net: hns3: add 8 BD limit for tx flow + - net: hns3: add initialization for nic state + - net: hns3: don't allow vf to enable promisc mode + - net: hns3: reuse the definition of l3 and l4 header info union + - net: hns3: fix VF dump register issue + - net: hns3: use the correct interface to stop|open port + - net: hns3: change hnae3_register_ae_dev() to int + - net: hns3: only support tc 0 for VF + - net: hns3: Fix NULL deref when unloading driver + - net: hns3: fix netif_napi_del() not do problem when unloading + - net: hns3: fix for rss result nonuniform + - net: hns3: fix improper error handling in the hclge_init_ae_dev() + - net: hns3: fix an issue for hclgevf_ae_get_hdev + - net: hns3: stop sending keep alive msg to PF when VF is resetting + - net: hns3: keep flow director state unchanged when reset + - net: hns3: Check for allocation failure + - net: hns3: fix a code style issue for hns3_update_new_int_gl() + - net: hns3: fix an issue for hns3_update_new_int_gl + - net: hns3: Modify parameter type from int to bool in set_gro_en + - net: hns3: code optimization for hclge_rx_buffer_calc + - net: hns3: add hclge_cmd_check_retval() to parse comman's return value + - net: hns3: move some set_bit statement into hclge_prepare_mac_addr + - net: hns3: fix a wrong checking in the hclge_tx_buffer_calc() + - net: hns3: fix the problem that the supported port is empty + - net: hns3: optimize the maximum TC macro + - net: hns3: don't allow user to change vlan filter state + - net: hns3: modify the upper limit judgment condition + - net: hns3: MAC table entry count function increases operation 0 value + protection measures + - net: hns3: make function hclge_set_all_vf_rst() static + - net: hns3: add pointer checking at the beginning of the exported functions. + - net: hns3: Check variable is valid before assigning it to another + - net: hns3: convert mac advertize and supported from u32 to link mode + - net: hns3: fix port info query issue for copper port + - net: hns3: modify print message of ssu common ecc errors + - net: hns3: some bugfix of ppu(rcb) ras errors + - net: hns3: enable 8~11th bit of mac common msi-x error + - net: hns3: fix 6th bit of ppp mpf abnormal errors + - net: hns3: Record VF unicast and multicast tables + - net: hns3: Record VF vlan tables + - net: hns3: uninitialize command queue while unloading PF driver + - net: hns3: clear command queue's registers when unloading VF driver + - net: hns3: add xps setting support for hns3 driver + - net: hns3: avoid mult + div op in critical data path + - net: hns3: limit some variable scope in critical data path + - net: hns3: remove some ops in struct hns3_nic_ops + - net: hns3: add unlikely for error handling in data path + - net: hns3: replace hnae3_set_bit and hnae3_set_field in data path + - net: hns3: remove hnae3_get_bit in data path + - net: hns3: add support to config depth for tx|rx ring separately + - net: hns3: enable VF VLAN filter for each VF when initializing + - net: hns3: fix get VF RSS issue + - net: hns3: fix setting of the hns reset_type for rdma hw errors + - net: hns3: fix improper error handling for hns3_client_start + - net: hns: use struct_size() in devm_kzalloc() + - net: hns3: Fix a logical vs bitwise typo + - net: hns3: add dma_rmb() for rx description + - net: hns3: fix to stop multiple HNS reset due to the AER changes + + * Build Nvidia drivers in conjunction with kernel (LP: #1764792) + - [Packaging] dkms-build -- support building against packages in PPAs + - [Packaging] dkms-build: do not redownload files on subsequent passes + - [Packaging] dkms-build -- elide partial Built-Using information + - [Packaging] dkms-build -- remove retpoline data from final binary packages + - [Packaging] dkms-build--nvidia* -- check gcc version against primary build + - [Packaging] dkms-build -- add support for unversioned overrides + - [Packaging] dkms-build--nvidia-* -- convert to generic -N form + - [Packaging] fix-filenames -- handle exact string removal + - [Packaging] dkms-build--nvidia-N -- remove GCC versions + + * Disco update: v5.0.1 upstream stable release (LP: #1819515) + - cpufreq: Use struct kobj_attribute instead of struct global_attr + - staging: erofs: fix mis-acted TAIL merging behavior + - binder: create node flag to request sender's security context + - USB: serial: option: add Telit ME910 ECM composition + - USB: serial: cp210x: add ID for Ingenico 3070 + - USB: serial: ftdi_sio: add ID for Hjelmslund Electronics USB485 + - driver core: Postpone DMA tear-down until after devres release + - staging: erofs: fix fast symlink w/o xattr when fs xattr is on + - staging: erofs: fix memleak of inode's shared xattr array + - staging: erofs: fix race of initializing xattrs of a inode at the same time + - staging: erofs: fix illegal address access under memory pressure + - staging: comedi: ni_660x: fix missing break in switch statement + - staging: wilc1000: fix to set correct value for 'vif_num' + - staging: android: ion: fix sys heap pool's gfp_flags + - staging: android: ashmem: Don't call fallocate() with ashmem_mutex held. + - staging: android: ashmem: Avoid range_alloc() allocation with ashmem_mutex + held. + - ip6mr: Do not call __IP6_INC_STATS() from preemptible context + - net: dsa: mv88e6xxx: add call to mv88e6xxx_ports_cmode_init to probe for new + DSA framework + - net: dsa: mv88e6xxx: handle unknown duplex modes gracefully in + mv88e6xxx_port_set_duplex + - net: dsa: mv8e6xxx: fix number of internal PHYs for 88E6x90 family + - net: mscc: Enable all ports in QSGMII + - net: sched: put back q.qlen into a single location + - net-sysfs: Fix mem leak in netdev_register_kobject + - qmi_wwan: Add support for Quectel EG12/EM12 + - sctp: call iov_iter_revert() after sending ABORT + - team: Free BPF filter when unregistering netdev + - tipc: fix RDM/DGRAM connect() regression + - x86/CPU/AMD: Set the CPB bit unconditionally on F17h + - x86/boot/compressed/64: Do not read legacy ROM on EFI system + - tracing: Fix event filters and triggers to handle negative numbers + - xhci: tegra: Prevent error pointer dereference + - usb: xhci: Fix for Enabling USB ROLE SWITCH QUIRK on + INTEL_SUNRISEPOINT_LP_XHCI + - applicom: Fix potential Spectre v1 vulnerabilities + - alpha: wire up io_pgetevents system call + - MIPS: irq: Allocate accurate order pages for irq stack + - aio: Fix locking in aio_poll() + - xtensa: fix get_wchan + - gnss: sirf: fix premature wakeup interrupt enable + - USB: serial: cp210x: fix GPIO in autosuspend + - Revert "selftests: firmware: add CONFIG_FW_LOADER_USER_HELPER_FALLBACK to + config" + - Revert "selftests: firmware: remove use of non-standard diff -Z option" + - selftests: firmware: fix verify_reqs() return value + - Bluetooth: btrtl: Restore old logic to assume firmware is already loaded + - Bluetooth: Fix locking in bt_accept_enqueue() for BH context + - Linux 5.0.1 + + * sky2 ethernet card doesn't work after returning from suspend + (LP: #1807259) // sky2 ethernet card link not up after suspend + (LP: #1809843) // Disco update: v5.0.1 upstream stable release + (LP: #1819515) + - sky2: Disable MSI on Dell Inspiron 1545 and Gateway P-79 + + * tls selftest failures/hangs on i386 (LP: #1813607) + - [Config] CONFIG_TLS=n for i386 + + * CVE-2019-8980 + - exec: Fix mem leak in kernel_read_file + + * Miscellaneous Ubuntu changes + - SAUCE: selftests: net: Use 'ipproto ipv6-icmp' to match ICMPv6 headers + - [Config] enable nvidia build + - [Config] update gcc version to 8.3 + + * Miscellaneous upstream changes + - Revert "UBUNTU: SAUCE: selftests: pmtu: disable accept_dad for tests" + + -- Thadeu Lima de Souza Cascardo Tue, 12 Mar 2019 16:15:44 -0300 + +linux (5.0.0-7.8) disco; urgency=medium + + * linux: 5.0.0-7.8 -proposed tracker (LP: #1818519) + + * Packaging resync (LP: #1786013) + - [Packaging] update helper scripts + + * unnecessary request_queue freeze (LP: #1815733) + - block: avoid setting nr_requests to current value + - block: avoid setting none scheduler if it's already none + + * Miscellaneous Ubuntu changes + - SAUCE: selftests: net: Don't fail test_vxlan_under_vrf on xfail + - update dkms package versions + + [ Upstream Kernel Changes ] + + * Rebase to v5.0 + + -- Seth Forshee Mon, 04 Mar 2019 08:46:10 -0600 + +linux (5.0.0-6.7) disco; urgency=medium + + * linux: 5.0.0-6.7 -proposed tracker (LP: #1817585) + + * Packaging resync (LP: #1786013) + - [Packaging] update helper scripts + - [Packaging] resync getabis + + * installer does not support iSCSI iBFT (LP: #1817321) + - d-i: add iscsi_ibft to scsi-modules + + * Silent "Unknown key" message when pressing keyboard backlight hotkey + (LP: #1817063) + - platform/x86: dell-wmi: Ignore new keyboard backlight change event + + * Fix I219 doesn't get woken up after plugging ethernet cable (LP: #1817058) + - e1000e: Disable runtime PM on CNP+ + + * efi/arm/arm64: Allow SetVirtualAddressMap() to be omitted (LP: #1814982) + - efi/arm/arm64: Allow SetVirtualAddressMap() to be omitted + + * CVE-2019-3460 + - Bluetooth: Check L2CAP option sizes returned from l2cap_get_conf_opt + + * CVE-2019-3459 + - Bluetooth: Verify that l2cap_get_conf_opt provides large enough buffer + + * kernel net tls selftest fails on 5.0 (LP: #1816716) + - SAUCE: Revert "selftests/tls: Add test for recv(PEEK) spanning across + multiple records" + + * Please enable CONFIG_DMA_CMA=y on arm64 (LP: #1803206) + - [Config] annotations -- enforce CONFIG_DMA_CMA and update notes + + * [19.04 FEAT] [LS1801] PCI Virtual function enablement (LP: #1814684) + - s390/pci: map IOV resources + - s390/pci: improve bar check + + * glibc 2.28-0ubuntu1 ADT test failure with linux 5.0.0-1.2 (LP: #1813060) + - SAUCE: prevent a glibc test failure when looking for obsolete types on + headers + + * Miscellaneous Ubuntu changes + - [Config] Enforce CONFIG_ZCRYPT_MULTIDEVNODES in annotations + - SAUCE: selftests: pmtu: disable accept_dad for tests + - SAUCE: arm64: add kernel config option to lock down when in Secure Boot mode + - SAUCE: selftests: net: Make test for VXLAN underlay in non-default VRF an + expected failure + + [ Upstream Kernel Changes ] + + * Rebase to v5.0-rc8 + + -- Seth Forshee Mon, 25 Feb 2019 09:37:36 -0600 + +linux (5.0.0-5.6) disco; urgency=medium + + * [ALSA] [PATCH] System76 darp5 and oryp5 fixups (LP: #1815831) + - ALSA: hda/realtek - Headset microphone and internal speaker support for + System76 oryp5 + + * Miscellaneous Ubuntu changes + - [Config] Fix aufs menus in annotations file + - [Config] CONFIG_SAMPLE_TRACE_PRINTK=m + - [Config] Update annotations based on configs + + [ Upstream Kernel Changes ] + + * Rebase to v5.0-rc7 + + -- Seth Forshee Mon, 18 Feb 2019 10:04:11 +0100 + +linux (5.0.0-4.5) disco; urgency=medium + + * linux-buildinfo: pull out ABI information into its own package + (LP: #1806380) + - [Packaging] autoreconstruct -- base tag is always primary mainline version + + * [Packaging] Allow overlay of config annotations (LP: #1752072) + - [Packaging] config-check: Add an include directive + + * Miscellaneous Ubuntu changes + - hio -- stub out BIOVEC_PHYS_MERGEABLE for 4.20+ + - hio -- replace use of do_gettimeofday() + - hio -- part_round_stats() removed in 5.0 + - hio -- device_add_disk() grew a 'groups' argument in 4.20 + - enable hio build + - Revert "UBUNTU: [Packaging] autoreconstruct -- base tag is always primary + mainline version" + + [ Upstream Kernel Changes ] + + * Rebase to v5.0-rc6 + + -- Seth Forshee Tue, 12 Feb 2019 08:15:32 -0600 + +linux (5.0.0-3.4) disco; urgency=medium + + * CONFIG_TEST_BPF is disabled (LP: #1813955) + - [Config]: Reenable TEST_BPF + + * Ignore "incomplete report" from Elan touchpanels (LP: #1813733) + - HID: i2c-hid: Ignore input report if there's no data present on Elan + touchpanels + + * SecureBoot support for arm64 (LP: #1804481) + - Build signed kernels for arm64 + + * Miscellaneous Ubuntu changes + - SAUCE: selftests: net: fix "from" match test in fib_rule_tests.sh + - [Config] CONFIG_PCMCIA=n for arm64 and s390x + - [Config] CONFIG_SERIAL_SC16IS7XX=n for s390x + - [Config] disable I2C TPM drivers for s390x + - [Config] CONFIG_RAPIDIO=n for s390x + - [Config] CONFIG_DMADEVICES=n for s390x + - [Config] disable gpio drivers for s390x + - [Config] CONFIG_SENSORS_OCC_P8_I2C=m for ppc64el + - [Config] disable I2C hardware drivers for s390x + - [Config] CONFIG_I3C=n for s390x + - [Config] CONFIG_SERIO=n for s390x + - [Config] disable misc drivers for s390x + - [Config] disable EEPROM drivers for s390x + - [Config] disable MFD drivers for s390x + - [Config] CONFIG_NVMEM=n for s390x + - [Config] CONFIG_MLXSW_I2C=n for s390x + - [Config] CONFIG_NET_VENDOR_MICROCHIP=n for s390x + - [Config] CONFIG_PPP=n for s390x + - [Config] CONFIG_PCCARD=n for s390x + - [Config] CONFIG_PCI_MESON=y + - [Config] CONFIG_SCSI_MYRB=n for s390x + - [Config] CONFIG_REGULATOR=n for s390x + - [Config] CONFIG_ZIIRAVE_WATCHDOG=n for s390x + - [Config] CONFIG_NCSI_OEM_CMD_GET_MAC=y + - [Config] update annotations following config review + - [Packaging] remove handoff check for uefi signing + - [Packaging] decompress gzipped efi images in signing tarball + - vbox-update: allow leading whitespace when fixing up KERN_DIR + - ubuntu: vbox -- update to 6.0.4-dfsg-3 + - vbox: remove remount check in sf_read_super_aux() + - enable vbox build + - [Config] CONFIG_ANDROID_BINDER_DEVICES="" + - SAUCE: import aufs driver + - [Config]: Enable aufs + - [Config] relocate aufs annotations to menu + - [Config] remove unmatched configs from annotations + - [Config] fix up abi for removed modules + - SAUCE: (efi-lockdown) Enforce module signatures if the kernel is locked down + - SAUCE: (efi-lockdown) module: remove support for having IMA validate modules + - SAUCE: (efi-lockdown) Move EFI signature blob parser to shared location + - SAUCE: (efi-lockdown) MODSIGN: Import certificates from UEFI Secure Boot + - SAUCE: (efi-lockdown) MODSIGN: Allow the "db" UEFI variable to be suppressed + - [Config] (efi-lockdown) enable importing of efi certificates for module sig + verification + + * Miscellaneous upstream changes + - binder: fix CONFIG_ANDROID_BINDER_DEVICES + + [ Upstream Kernel Changes ] + + * Rebase to v5.0-rc5 + + -- Seth Forshee Tue, 05 Feb 2019 14:26:12 -0600 + +linux (5.0.0-2.3) disco; urgency=medium + + * kernel oops in bcache module (LP: #1793901) + - SAUCE: bcache: never writeback a discard operation + + * Enable sound card power saving by default (LP: #1804265) + - [Config] CONFIG_SND_HDA_POWER_SAVE_DEFAULT=1 + + * Miscellaneous Ubuntu changes + - Revert "UBUNTU: SAUCE: selftests: disable some failing networking tests" + - SAUCE: ashmem: turn into module + - SAUCE: binder: turn into module + - SAUCE: binder: give binder_alloc its own debug mask file + - [Config] enable binder and ashmem as modules + - SAUCE: selftests: net: replace AF_MAX with INT_MAX in socket.c + - SAUCE: selftests/ftrace: Fix tab expansion in trace_marker snapshot trigger + test + - update dkms package versions + + [ Upstream Kernel Changes ] + + * Rebase to v5.0-rc4 + + -- Seth Forshee Tue, 29 Jan 2019 06:57:32 -0600 + +linux (5.0.0-1.2) disco; urgency=medium + + * Fix non-working QCA Rome Bluetooth after S3 (LP: #1812812) + - USB: Add new USB LPM helpers + - USB: Consolidate LPM checks to avoid enabling LPM twice + + * bluetooth controller not detected with 4.15 kernel (LP: #1810797) + - SAUCE: btqcomsmd: introduce BT_QCOMSMD_HACK + - [Config] arm64: snapdragon: BT_QCOMSMD_HACK=y + + * [19.04 FEAT| Enable virtio-gpu for s390x (LP: #1799467) + - [Config] enable virtio-gpu for s390x + + * Crash on "ip link add foo type ipip" (LP: #1811803) + - SAUCE: fan: Fix NULL pointer dereference + + * Fix not working Goodix touchpad (LP: #1811929) + - HID: i2c-hid: Disable runtime PM on Goodix touchpad + + * Miscellaneous Ubuntu changes + - update dkms package versions + - enable zfs build + + [ Upstream Kernel Changes ] + + * Rebase to v5.0-rc3 + + -- Seth Forshee Tue, 22 Jan 2019 13:56:17 -0600 + +linux (5.0.0-0.1) disco; urgency=medium + + * Build Nvidia drivers in conjunction with kernel (LP: #1764792) + - [Packaging] dkms -- add per package post-process step + - [Packaging] dkms -- switch to a consistent build prefix length and strip + - [Packaging] nvidia -- build and sign nvidia packages and ship signatures + - [Packaging] nvidia -- make nvidia package version explicit + + * Add support for ALC3277 codec on new Dell edge gateways (LP: #1807334) + - [Config] CONFIG_SND_SOC_INTEL_KBL_RT5660_MACH=m + + * RTL8822BE WiFi Disabled in Kernel 4.18.0-12 (LP: #1806472) + - [Config] CONFIG_RTLWIFI_DEBUG_ST=n + + * Miscellaneous Ubuntu changes + - ubuntu -- disable vbox build + - ubuntu -- disable hio build + - Disable zfs build + - SAUCE: import aufs driver + - update dkms package versions + - [Config] disable aufs config options + - [Config] disable nvidia build + - update dropped.txt + - [Packaging] disable nvidia dkms builds for mainline + - SAUCE: (efi-lockdown) Add the ability to lock down access to the running + kernel image + - SAUCE: (efi-lockdown) Add a SysRq option to lift kernel lockdown + - SAUCE: (efi-lockdown) Restrict /dev/{mem,kmem,port} when the kernel is + locked down + - SAUCE: (efi-lockdown) kexec_load: Disable at runtime if the kernel is locked + down + - SAUCE: (efi-lockdown) hibernate: Disable when the kernel is locked down + - SAUCE: (efi-lockdown) uswsusp: Disable when the kernel is locked down + - SAUCE: (efi-lockdown) PCI: Lock down BAR access when the kernel is locked + down + - SAUCE: (efi-lockdown) x86: Lock down IO port access when the kernel is + locked down + - SAUCE: (efi-lockdown) x86/msr: Restrict MSR access when the kernel is locked + down + - SAUCE: (efi-lockdown) ACPI: Limit access to custom_method when the kernel is + locked down + - SAUCE: (efi-lockdown) acpi: Ignore acpi_rsdp kernel param when the kernel + has been locked down + - SAUCE: (efi-lockdown) acpi: Disable ACPI table override if the kernel is + locked down + - SAUCE: (efi-lockdown) acpi: Disable APEI error injection if the kernel is + locked down + - SAUCE: (efi-lockdown) Prohibit PCMCIA CIS storage when the kernel is locked + down + - SAUCE: (efi-lockdown) Lock down TIOCSSERIAL + - SAUCE: (efi-lockdown) Lock down module params that specify hardware + parameters (eg. ioport) + - SAUCE: (efi-lockdown) x86/mmiotrace: Lock down the testmmiotrace module + - SAUCE: (efi-lockdown) Lock down /proc/kcore + - SAUCE: (efi-lockdown) Lock down kprobes + - SAUCE: (efi-lockdown) Lock down perf + - SAUCE: (efi-lockdown) debugfs: Restrict debugfs when the kernel is locked + down + - SAUCE: (efi-lockdown) debugfs: avoid EPERM when no open file operation + defined + - SAUCE: (efi-lockdown) KEYS: Allow unrestricted boot-time addition of keys to + secondary keyring + - SAUCE: (efi-lockdown) Make get_cert_list() not complain about cert lists + that aren't present. + - SAUCE: (efi-lockdown) Add efi_status_to_str() and rework + efi_status_to_err(). + - SAUCE: (efi-lockdown) Make get_cert_list() use efi_status_to_str() to print + error messages. + - SAUCE: (efi-lockdown) Copy secure_boot flag in boot params across kexec + reboot + - SAUCE: (efi-lockdown) efi: Add an EFI_SECURE_BOOT flag to indicate secure + boot mode + - SAUCE: (efi-lockdown) efi: Lock down the kernel if booted in secure boot + mode + - SAUCE: (efi-lockdown) efi: Sanitize boot_params in efi stub + - [Config] set config options for efi lockdown + - Revert "UBUNTU: SAUCE: import aufs driver" + + [ Upstream Kernel Changes ] + + * Rebase to v5.0-rc2 + + -- Seth Forshee Thu, 17 Jan 2019 12:31:29 -0600 + +linux (5.0.0-0.0) disco; urgency=medium + + * Dummy entry. + + -- Seth Forshee Wed, 16 Jan 2019 14:48:05 -0600 + +linux (4.20.0-2.3) disco; urgency=medium + + [ Upstream Kernel Changes ] + + * Rebase to v4.20 + + -- Seth Forshee Thu, 03 Jan 2019 12:11:43 -0600 + +linux (4.20.0-1.2) disco; urgency=medium + + * Packaging resync (LP: #1786013) + - [Packaging] update helper scripts + + * Power leakage at S5 with Qualcomm Atheros QCA9377 802.11ac Wireless Network + Adapter (LP: #1805607) + - SAUCE: ath10k: provide reset function for QCA9377 chip + + * zfs/spl build in conjunction with the kernel from DKMS source (LP: #1807378) + - [Packaging] dkms -- dkms package build packaging support + - [Packaging] dkms -- save build objects artifacts for validation + - [Packaging] dkms -- add general Built-Using: support + - [Packaging] simplify Provides comma handling + - [Packaging] zfs/spl -- remove packaging support for incorporated source + - [Packaging] zfs/spl -- remove incorporated source + - [Packaging] zfs/spl -- build via dkms + - [Packaging] zfs/spl -- make zfs package version explicit + - [Packaging] update-version-dkms -- sync archive versions to package + + * Miscellaneous Ubuntu changes + - [Packaging] update-version-dkms -- fix getting distrbution from changelog + - update dkms package versions + + [ Upstream Kernel Changes ] + + * Rebase to v4.20-rc6 + + -- Seth Forshee Tue, 11 Dec 2018 11:33:08 -0600 + +linux (4.20.0-0.1) disco; urgency=medium + + * Overlayfs in user namespace leaks directory content of inaccessible + directories (LP: #1793458) // CVE-2018-6559 + - Revert "ovl: relax permission checking on underlying layers" + - SAUCE: overlayfs: ensure mounter privileges when reading directories + + * Miscellaneous Ubuntu changes + - SAUCE: (efi-lockdown) Add the ability to lock down access to the running + kernel image + - SAUCE: (efi-lockdown) Add a SysRq option to lift kernel lockdown + - SAUCE: (efi-lockdown) Enforce module signatures if the kernel is locked down + - SAUCE: (efi-lockdown) Restrict /dev/{mem,kmem,port} when the kernel is + locked down + - SAUCE: (efi-lockdown) kexec_load: Disable at runtime if the kernel is locked + down + - SAUCE: (efi-lockdown) hibernate: Disable when the kernel is locked down + - SAUCE: (efi-lockdown) uswsusp: Disable when the kernel is locked down + - SAUCE: (efi-lockdown) PCI: Lock down BAR access when the kernel is locked + down + - SAUCE: (efi-lockdown) x86: Lock down IO port access when the kernel is + locked down + - SAUCE: (efi-lockdown) x86/msr: Restrict MSR access when the kernel is locked + down + - SAUCE: (efi-lockdown) ACPI: Limit access to custom_method when the kernel is + locked down + - SAUCE: (efi-lockdown) acpi: Ignore acpi_rsdp kernel param when the kernel + has been locked down + - SAUCE: (efi-lockdown) acpi: Disable ACPI table override if the kernel is + locked down + - SAUCE: (efi-lockdown) acpi: Disable APEI error injection if the kernel is + locked down + - SAUCE: (efi-lockdown) Prohibit PCMCIA CIS storage when the kernel is locked + down + - SAUCE: (efi-lockdown) Lock down TIOCSSERIAL + - SAUCE: (efi-lockdown) Lock down module params that specify hardware + parameters (eg. ioport) + - SAUCE: (efi-lockdown) x86/mmiotrace: Lock down the testmmiotrace module + - SAUCE: (efi-lockdown) Lock down /proc/kcore + - SAUCE: (efi-lockdown) Lock down kprobes + - SAUCE: (efi-lockdown) Lock down perf + - SAUCE: (efi-lockdown) debugfs: Restrict debugfs when the kernel is locked + down + - SAUCE: (efi-lockdown) KEYS: Allow unrestricted boot-time addition of keys to + secondary keyring + - SAUCE: (efi-lockdown) efi: Add EFI signature data types + - SAUCE: (efi-lockdown) efi: Add an EFI signature blob parser + - SAUCE: (efi-lockdown) MODSIGN: Import certificates from UEFI Secure Boot + - SAUCE: (efi-lockdown) MODSIGN: Allow the "db" UEFI variable to be suppressed + - SAUCE: (efi-lockdown) Make get_cert_list() not complain about cert lists + that aren't present. + - SAUCE: (efi-lockdown) Add efi_status_to_str() and rework + efi_status_to_err(). + - SAUCE: (efi-lockdown) Make get_cert_list() use efi_status_to_str() to print + error messages. + - SAUCE: (efi-lockdown) Copy secure_boot flag in boot params across kexec + reboot + - SAUCE: (efi-lockdown) efi: Add an EFI_SECURE_BOOT flag to indicate secure + boot mode + - SAUCE: (efi-lockdown) efi: Lock down the kernel if booted in secure boot + mode + - SAUCE: (efi-lockdown) Fix for module sig verification + - SAUCE: (efi-lockdown) efi: Sanitize boot_params in efi stub + - SAUCE: Import aufs driver + - ubuntu: vbox -- update to 5.2.22-dfsg-2 + - ubuntu -- disable vbox build + - ubuntu -- disable hio build + - Disable zfs build + + [ Upstream Kernel Changes ] + + * Rebase to v4.20-rc5 + + -- Seth Forshee Fri, 07 Dec 2018 07:13:42 -0600 + +linux (4.20.0-0.0) disco; urgency=medium + + * Dummy entry. + + -- Seth Forshee Thu, 06 Dec 2018 10:20:19 -0600 + +linux (4.19.0-8.9) disco; urgency=medium + + * linux: 4.19.0-8.9 -proposed tracker (LP: #1806952) + + * Workaround CSS timeout on AMD SNPS 3.0 xHC (LP: #1806838) + - xhci: workaround CSS timeout on AMD SNPS 3.0 xHC + + * Fix Intel I210 doesn't work when ethernet cable gets plugged (LP: #1806818) + - igb: Fix an issue that PME is not enabled during runtime suspend + + * The line-out on the Dell Dock station can't work (LP: #1806532) + - ALSA: usb-audio: Add vendor and product name for Dell WD19 Dock + + * CVE-2018-19407 + - KVM: X86: Fix scan ioapic use-before-initialization + + * PC SN720 NVMe WDC 256GB consumes more power in S2Idle than during long idle + (LP: #1805775) + - SAUCE: pci/nvme: prevent WDC PC SN720 NVMe from entering D3 and being + disabled + + * Disco update: 4.19.6 upstream stable release (LP: #1806909) + - HID: steam: remove input device when a hid client is running. + - efi/libstub: arm: support building with clang + - usb: core: Fix hub port connection events lost + - usb: dwc3: gadget: fix ISOC TRB type on unaligned transfers + - usb: dwc3: gadget: Properly check last unaligned/zero chain TRB + - usb: dwc3: core: Clean up ULPI device + - usb: dwc3: Fix NULL pointer exception in dwc3_pci_remove() + - xhci: Fix leaking USB3 shared_hcd at xhci removal + - xhci: handle port status events for removed USB3 hcd + - xhci: Add check for invalid byte size error when UAS devices are connected. + - usb: xhci: fix uninitialized completion when USB3 port got wrong status + - usb: xhci: fix timeout for transition from RExit to U0 + - xhci: Add quirk to workaround the errata seen on Cavium Thunder-X2 Soc + - usb: xhci: Prevent bus suspend if a port connect change or polling state is + detected + - ALSA: oss: Use kvzalloc() for local buffer allocations + - MAINTAINERS: Add Sasha as a stable branch maintainer + - Documentation/security-bugs: Clarify treatment of embargoed information + - Documentation/security-bugs: Postpone fix publication in exceptional cases + - mmc: sdhci-pci: Try "cd" for card-detect lookup before using NULL + - mmc: sdhci-pci: Workaround GLK firmware failing to restore the tuning value + - gpio: don't free unallocated ida on gpiochip_add_data_with_key() error path + - iwlwifi: fix wrong WGDS_WIFI_DATA_SIZE + - iwlwifi: mvm: support sta_statistics() even on older firmware + - iwlwifi: mvm: fix regulatory domain update when the firmware starts + - iwlwifi: mvm: don't use SAR Geo if basic SAR is not used + - brcmfmac: fix reporting support for 160 MHz channels + - opp: ti-opp-supply: Dynamically update u_volt_min + - opp: ti-opp-supply: Correct the supply in _get_optimal_vdd_voltage call + - tools/power/cpupower: fix compilation with STATIC=true + - v9fs_dir_readdir: fix double-free on p9stat_read error + - selinux: Add __GFP_NOWARN to allocation at str_read() + - Input: synaptics - avoid using uninitialized variable when probing + - bfs: add sanity check at bfs_fill_super() + - sctp: clear the transport of some out_chunk_list chunks in + sctp_assoc_rm_peer + - gfs2: Don't leave s_fs_info pointing to freed memory in init_sbd + - llc: do not use sk_eat_skb() + - mm: don't warn about large allocations for slab + - mm/memory.c: recheck page table entry with page table lock held + - tcp: do not release socket ownership in tcp_close() + - drm/fb-helper: Blacklist writeback when adding connectors to fbdev + - drm/amdgpu: Add missing firmware entry for HAINAN + - drm/vc4: Set ->legacy_cursor_update to false when doing non-async updates + - drm/amdgpu: Fix oops when pp_funcs->switch_power_profile is unset + - drm/i915: Disable LP3 watermarks on all SNB machines + - drm/ast: change resolution may cause screen blurred + - drm/ast: fixed cursor may disappear sometimes + - drm/ast: Remove existing framebuffers before loading driver + - can: flexcan: Unlock the MB unconditionally + - can: dev: can_get_echo_skb(): factor out non sending code to + __can_get_echo_skb() + - can: dev: __can_get_echo_skb(): replace struct can_frame by canfd_frame to + access frame length + - can: dev: __can_get_echo_skb(): Don't crash the kernel if can_priv::echo_skb + is accessed out of bounds + - can: dev: __can_get_echo_skb(): print error message, if trying to echo non + existing skb + - can: rx-offload: introduce can_rx_offload_get_echo_skb() and + can_rx_offload_queue_sorted() functions + - can: rx-offload: rename can_rx_offload_irq_queue_err_skb() to + can_rx_offload_queue_tail() + - can: flexcan: use can_rx_offload_queue_sorted() for flexcan_irq_bus_*() + - can: flexcan: handle tx-complete CAN frames via rx-offload infrastructure + - can: raw: check for CAN FD capable netdev in raw_sendmsg() + - can: hi311x: Use level-triggered interrupt + - can: flexcan: Always use last mailbox for TX + - can: flexcan: remove not needed struct flexcan_priv::tx_mb and struct + flexcan_priv::tx_mb_idx + - ACPICA: AML interpreter: add region addresses in global list during + initialization + - IB/hfi1: Eliminate races in the SDMA send error path + - fsnotify: generalize handling of extra event flags + - fanotify: fix handling of events on child sub-directory + - pinctrl: meson: fix pinconf bias disable + - pinctrl: meson: fix gxbb ao pull register bits + - pinctrl: meson: fix gxl ao pull register bits + - pinctrl: meson: fix meson8 ao pull register bits + - pinctrl: meson: fix meson8b ao pull register bits + - tools/testing/nvdimm: Fix the array size for dimm devices. + - scsi: lpfc: fix remoteport access + - scsi: hisi_sas: Remove set but not used variable 'dq_list' + - KVM: PPC: Move and undef TRACE_INCLUDE_PATH/FILE + - cpufreq: imx6q: add return value check for voltage scale + - rtc: cmos: Do not export alarm rtc_ops when we do not support alarms + - rtc: pcf2127: fix a kmemleak caused in pcf2127_i2c_gather_write + - crypto: simd - correctly take reqsize of wrapped skcipher into account + - floppy: fix race condition in __floppy_read_block_0() + - powerpc/io: Fix the IO workarounds code to work with Radix + - sched/fair: Fix cpu_util_wake() for 'execl' type workloads + - perf/x86/intel/uncore: Add more IMC PCI IDs for KabyLake and CoffeeLake CPUs + - block: copy ioprio in __bio_clone_fast() and bounce + - SUNRPC: Fix a bogus get/put in generic_key_to_expire() + - riscv: add missing vdso_install target + - RISC-V: Silence some module warnings on 32-bit + - drm/amdgpu: fix bug with IH ring setup + - kdb: Use strscpy with destination buffer size + - NFSv4: Fix an Oops during delegation callbacks + - powerpc/numa: Suppress "VPHN is not supported" messages + - efi/arm: Revert deferred unmap of early memmap mapping + - z3fold: fix possible reclaim races + - mm, memory_hotplug: check zone_movable in has_unmovable_pages + - tmpfs: make lseek(SEEK_DATA/SEK_HOLE) return ENXIO with a negative offset + - mm, page_alloc: check for max order in hot path + - dax: Avoid losing wakeup in dax_lock_mapping_entry + - include/linux/pfn_t.h: force '~' to be parsed as an unary operator + - tty: wipe buffer. + - tty: wipe buffer if not echoing data + - gfs2: Fix iomap buffer head reference counting bug + - rcu: Make need_resched() respond to urgent RCU-QS needs + - media: ov5640: Re-work MIPI startup sequence + - media: ov5640: Fix timings setup code + - media: ov5640: fix exposure regression + - media: ov5640: fix auto gain & exposure when changing mode + - media: ov5640: fix wrong binning value in exposure calculation + - media: ov5640: fix auto controls values when switching to manual mode + - Linux 4.19.6 + + * linux-buildinfo: pull out ABI information into its own package + (LP: #1806380) + - [Packaging] limit preparation to linux-libc-dev in headers + - [Packaging] commonise debhelper invocation + - [Packaging] ABI -- accumulate abi information at the end of the build + - [Packaging] buildinfo -- add basic build information + - [Packaging] buildinfo -- add firmware information to the flavour ABI + - [Packaging] buildinfo -- add compiler information to the flavour ABI + - [Packaging] buildinfo -- add buildinfo support to getabis + - [Packaging] getabis -- handle all known package combinations + - [Packaging] getabis -- support parsing a simple version + + * linux packages should own /usr/lib/linux/triggers (LP: #1770256) + - [Packaging] own /usr/lib/linux/triggers + + * Miscellaneous upstream changes + - blk-mq: fix corruption with direct issue + + -- Seth Forshee Wed, 05 Dec 2018 09:18:30 -0600 + +linux (4.19.0-7.8) disco; urgency=medium + + * linux: 4.19.0-7.8 -proposed tracker (LP: #1805465) + + * Fix and issue that LG I2C touchscreen stops working after reboot + (LP: #1805085) + - HID: i2c-hid: Disable runtime PM for LG touchscreen + + * click/pop noise in the headphone on several lenovo laptops (LP: #1805079) // + click/pop noise in the headphone on several lenovo laptops (LP: #1805079) + - ALSA: hda/realtek - fix the pop noise on headphone for lenovo laptops + + * Regression: hinic performance degrades over time (LP: #1805248) + - Revert "net-next/hinic: add checksum offload and TSO support" + + * Disco update: 4.19.5 upstream stable release (LP: #1805461) + - drm/i915: Replace some PAGE_SIZE with I915_GTT_PAGE_SIZE + - cifs: don't dereference smb_file_target before null check + - cifs: fix return value for cifs_listxattr + - arm64: kprobe: make page to RO mode when allocate it + - block: brd: associate with queue until adding disk + - net: hns3: bugfix for rtnl_lock's range in the hclgevf_reset() + - net: hns3: bugfix for rtnl_lock's range in the hclge_reset() + - net: hns3: bugfix for handling mailbox while the command queue reinitialized + - net: hns3: bugfix for the initialization of command queue's spin lock + - ixgbe: fix MAC anti-spoofing filter after VFLR + - reiserfs: propagate errors from fill_with_dentries() properly + - hfs: prevent btree data loss on root split + - hfsplus: prevent btree data loss on root split + - perf unwind: Take pgoff into account when reporting elf to libdwfl + - um: Give start_idle_thread() a return code + - drm/edid: Add 6 bpc quirk for BOE panel. + - afs: Handle EIO from delivery function + - platform/x86: intel_telemetry: report debugfs failure + - clk: fixed-rate: fix of_node_get-put imbalance + - perf symbols: Set PLT entry/header sizes properly on Sparc + - fs/exofs: fix potential memory leak in mount option parsing + - clk: samsung: exynos5420: Enable PERIS clocks for suspend + - apparmor: Fix uninitialized value in aa_split_fqname + - x86/earlyprintk: Add a force option for pciserial device + - platform/x86: acerhdf: Add BIOS entry for Gateway LT31 v1.3307 + - clk: meson-axg: pcie: drop the mpll3 clock parent + - arm64: percpu: Initialize ret in the default case + - clk: meson: clk-pll: drop CLK_GET_RATE_NOCACHE where unnecessary + - clk: renesas: r9a06g032: Fix UART34567 clock rate + - clk: ti: fix OF child-node lookup + - serial: sh-sci: Fix receive on SCIFA/SCIFB variants with DMA + - netfilter: ipv6: fix oops when defragmenting locally generated fragments + - netfilter: bridge: define INT_MIN & INT_MAX in userspace + - s390/decompressor: add missing FORCE to build targets + - s390/vdso: add missing FORCE to build targets + - HID: i2c-hid: Add a small delay after sleep command for Raydium touchpanel + - Revert "HID: add NOGET quirk for Eaton Ellipse MAX UPS" + - HID: alps: allow incoming reports when only the trackstick is opened + - Revert "netfilter: nft_numgen: add map lookups for numgen random operations" + - netfilter: ipset: list:set: Decrease refcount synchronously on deletion and + replace + - netfilter: ipset: actually allow allowable CIDR 0 in hash:net,port,net + - netfilter: ipset: fix ip_set_list allocation failure + - s390/mm: fix mis-accounting of pgtable_bytes + - s390/mm: Fix ERROR: "__node_distance" undefined! + - bpf: fix bpf_prog_get_info_by_fd to return 0 func_lens for unpriv + - netfilter: ipset: Correct rcu_dereference() call in ip_set_put_comment() + - netfilter: xt_IDLETIMER: add sysfs filename checking routine + - netfilter: ipset: Fix calling ip_set() macro at dumping + - netfilter: nft_compat: ebtables 'nat' table is normal chain type + - s390/qeth: fix HiperSockets sniffer + - s390/qeth: unregister netdevice only when registered + - net: hns3: Fix for out-of-bounds access when setting pfc back pressure + - hwmon: (ibmpowernv) Remove bogus __init annotations + - ARM: dts: imx6sll: fix typo for fsl,imx6sll-i2c node + - ARM: dts: fsl: Fix improperly quoted stdout-path values + - Revert "drm/exynos/decon5433: implement frame counter" + - arm64: dts: renesas: r8a7795: add missing dma-names on hscif2 + - arm64: dts: renesas: condor: switch from EtherAVB to GEther + - xen/grant-table: Fix incorrect gnttab_dma_free_pages() pr_debug message + - clk: fixed-factor: fix of_node_get-put imbalance + - mtd: nand: Fix nanddev_pos_next_page() kernel-doc header + - lib/raid6: Fix arm64 test build + - drm/amd/display: Stop leaking planes + - block: Clear kernel memory before copying to user + - drm/amd/display: Drop reusing drm connector for MST + - drm/amd/amdgpu/dm: Fix dm_dp_create_fake_mst_encoder() + - s390/perf: Change CPUM_CF return code in event init function + - ceph: quota: fix null pointer dereference in quota check + - of/device: Really only set bus DMA mask when appropriate + - nvme: make sure ns head inherits underlying device limits + - i2c: omap: Enable for ARCH_K3 + - i2c: qcom-geni: Fix runtime PM mismatch with child devices + - sched/core: Take the hotplug lock in sched_init_smp() + - perf tools: Fix undefined symbol scnprintf in libperf-jvmti.so + - perf tools: Do not zero sample_id_all for group members + - ice: Fix dead device link issue with flow control + - ice: Fix the bytecount sent to netdev_tx_sent_queue + - ice: Change req_speeds to be u16 + - i40e: restore NETIF_F_GSO_IPXIP[46] to netdev features + - qed: Fix memory/entry leak in qed_init_sp_request() + - qed: Fix blocking/unlimited SPQ entries leak + - qed: Fix SPQ entries not returned to pool in error flows + - qed: Fix potential memory corruption + - net: stmmac: Fix RX packet size > 8191 + - net: aquantia: fix potential IOMMU fault after driver unbind + - net: aquantia: fixed enable unicast on 32 macvlan + - net: aquantia: invalid checksumm offload implementation + - kbuild: deb-pkg: fix too low build version number + - Revert "scripts/setlocalversion: git: Make -dirty check more robust" + - SUNRPC: drop pointless static qualifier in xdr_get_next_encode_buffer() + - x86/mm: Move LDT remap out of KASLR region on 5-level paging + - x86/ldt: Unmap PTEs for the slot before freeing LDT pages + - x86/ldt: Remove unused variable in map_ldt_struct() + - media: v4l: event: Add subscription to list before calling "add" operation + - MIPS: OCTEON: cavium_octeon_defconfig: re-enable OCTEON USB driver + - RISC-V: Fix raw_copy_{to,from}_user() + - uio: Fix an Oops on load + - ALSA: hda/realtek - Add quirk entry for HP Pavilion 15 + - ALSA: hda/ca0132 - Call pci_iounmap() instead of iounmap() + - can: kvaser_usb: Fix accessing freed memory in kvaser_usb_start_xmit() + - can: kvaser_usb: Fix potential uninitialized variable use + - usb: cdc-acm: add entry for Hiro (Conexant) modem + - USB: Wait for extra delay time after USB_PORT_FEAT_RESET for quirky hub + - usb: quirks: Add delay-init quirk for Corsair K70 LUX RGB + - misc: atmel-ssc: Fix section annotation on atmel_ssc_get_driver_data + - USB: misc: appledisplay: add 20" Apple Cinema Display + - gnss: serial: fix synchronous write timeout + - gnss: sirf: fix synchronous write timeout + - mtd: rawnand: atmel: fix OF child-node lookup + - drivers/misc/sgi-gru: fix Spectre v1 vulnerability + - ACPI / platform: Add SMB0001 HID to forbidden_id_list + - HID: uhid: forbid UHID_CREATE under KERNEL_DS or elevated privileges + - HID: Add quirk for Primax PIXART OEM mice + - HID: Add quirk for Microsoft PIXART OEM mouse + - libceph: fall back to sendmsg for slab pages + - mt76x0: run vco calibration for each channel configuration + - Linux 4.19.5 + + * Miscellaneous Ubuntu changes + - Revert "UBUNTU: Build signed kernels for arm64" + + -- Seth Forshee Tue, 27 Nov 2018 10:38:34 -0600 + +linux (4.19.0-6.7) disco; urgency=medium + + * linux: 4.19.0-6.7 -proposed tracker (LP: #1805195) + + * SecureBoot support for arm64 (LP: #1804481) + - Build signed kernels for arm64 + + * Add pointstick support for Cirque Touchpad (LP: #1805081) + - HID: multitouch: Add pointstick support for Cirque Touchpad + + * Power consumption during s2idle is higher than long idle (Intel SSDPEKKF) + (LP: #1804588) + - SAUCE: pci: prevent Intel NVMe SSDPEKKF from entering D3 + - SAUCE: nvme: add quirk to not call disable function when suspending + + * Disco update: 4.19.4 upstream stable release (LP: #1805159) + - flow_dissector: do not dissect l4 ports for fragments + - ibmvnic: fix accelerated VLAN handling + - ip_tunnel: don't force DF when MTU is locked + - ipv6: fix a dst leak when removing its exception + - ipv6: Fix PMTU updates for UDP/raw sockets in presence of VRF + - net: bcmgenet: protect stop from timeout + - net-gro: reset skb->pkt_type in napi_reuse_skb() + - sctp: not allow to set asoc prsctp_enable by sockopt + - tcp: Fix SOF_TIMESTAMPING_RX_HARDWARE to use the latest timestamp during TCP + coalescing + - tg3: Add PHY reset for 5717/5719/5720 in change ring and flow control paths + - tipc: don't assume linear buffer when reading ancillary data + - tipc: fix lockdep warning when reinitilaizing sockets + - tuntap: fix multiqueue rx + - net: systemport: Protect stop from timeout + - net/sched: act_pedit: fix memory leak when IDR allocation fails + - net: sched: cls_flower: validate nested enc_opts_policy to avoid warning + - tipc: fix link re-establish failure + - net/mlx5e: Don't match on vlan non-existence if ethertype is wildcarded + - net/mlx5e: Claim TC hw offloads support only under a proper build config + - net/mlx5e: Adjust to max number of channles when re-attaching + - net/mlx5e: RX, verify received packet size in Linear Striding RQ + - Revert "sctp: remove sctp_transport_pmtu_check" + - net/mlx5e: Always use the match level enum when parsing TC rule match + - net/mlx5e: Fix selftest for small MTUs + - net/mlx5e: Removed unnecessary warnings in FEC caps query + - inet: frags: better deal with smp races + - l2tp: fix a sock refcnt leak in l2tp_tunnel_register + - net/mlx5: IPSec, Fix the SA context hash key + - net/mlx5e: IPoIB, Reset QP after channels are closed + - net: dsa: mv88e6xxx: Fix clearing of stats counters + - net: phy: realtek: fix RTL8201F sysfs name + - sctp: define SCTP_SS_DEFAULT for Stream schedulers + - net: qualcomm: rmnet: Fix incorrect assignment of real_dev + - net: dsa: microchip: initialize mutex before use + - sctp: fix strchange_flags name for Stream Change Event + - net: phy: mdio-gpio: Fix working over slow can_sleep GPIOs + - sctp: not increase stream's incnt before sending addstrm_in request + - mlxsw: spectrum: Fix IP2ME CPU policer configuration + - net: smsc95xx: Fix MTU range + - rxrpc: Fix lockup due to no error backoff after ack transmit error + - usbnet: smsc95xx: disable carrier check while suspending + - Revert "x86/speculation: Enable cross-hyperthread spectre v2 STIBP + mitigation" + - Linux 4.19.4 + + * Disco update: 4.19.3 upstream stable release (LP: #1805158) + - powerpc/traps: restore recoverability of machine_check interrupts + - powerpc/64/module: REL32 relocation range check + - powerpc/mm: Fix page table dump to work on Radix + - powerpc/mm: fix always true/false warning in slice.c + - drm/amd/display: fix bug of accessing invalid memory + - Input: wm97xx-ts - fix exit path + - powerpc/Makefile: Fix PPC_BOOK3S_64 ASFLAGS + - powerpc/eeh: Fix possible null deref in eeh_dump_dev_log() + - tty: check name length in tty_find_polling_driver() + - tracing/kprobes: Check the probe on unloaded module correctly + - drm/nouveau/secboot/acr: fix memory leak + - drm/amdgpu/powerplay: fix missing break in switch statements + - ARM: imx_v6_v7_defconfig: Select CONFIG_TMPFS_POSIX_ACL + - powerpc/nohash: fix undefined behaviour when testing page size support + - drm/msm/gpu: fix parameters in function msm_gpu_crashstate_capture + - drm/msm/disp/dpu: Use proper define for drm_encoder_init() 'encoder_type' + - drm/msm: dpu: Allow planes to extend past active display + - powerpc/mm: Don't report hugepage tables as memory leaks when using kmemleak + - drm/omap: fix memory barrier bug in DMM driver + - drm/amd/display: Raise dispclk value for dce120 by 15% + - drm/amd/display: fix gamma not being applied + - drm/hisilicon: hibmc: Do not carry error code in HiBMC framebuffer pointer + - media: pci: cx23885: handle adding to list failure + - media: coda: don't overwrite h.264 profile_idc on decoder instance + - MIPS: kexec: Mark CPU offline before disabling local IRQ + - powerpc/boot: Ensure _zimage_start is a weak symbol + - powerpc/memtrace: Remove memory in chunks + - MIPS/PCI: Call pcie_bus_configure_settings() to set MPS/MRRS + - staging: erofs: fix a missing endian conversion + - serial: 8250_of: Fix for lack of interrupt support + - sc16is7xx: Fix for multi-channel stall + - media: tvp5150: fix width alignment during set_selection() + - powerpc/selftests: Wait all threads to join + - staging:iio:ad7606: fix voltage scales + - drm: rcar-du: Update Gen3 output limitations + - drm/amdgpu: Fix SDMA TO after GPU reset v3 + - staging: most: video: fix registration of an empty comp core_component + - 9p locks: fix glock.client_id leak in do_lock + - udf: Prevent write-unsupported filesystem to be remounted read-write + - ARM: dts: imx6ull: keep IMX6UL_ prefix for signals on both i.MX6UL and + i.MX6ULL + - media: ov5640: fix mode change regression + - 9p: clear dangling pointers in p9stat_free + - drm/amdgpu: fix integer overflow test in amdgpu_bo_list_create() + - media: ov5640: fix restore of last mode set + - cdrom: fix improper type cast, which can leat to information leak. + - ovl: fix error handling in ovl_verify_set_fh() + - ovl: fix recursive oi->lock in ovl_link() + - ovl: check whiteout in ovl_create_over_whiteout() + - ovl: automatically enable redirect_dir on metacopy=on + - serial: sh-sci: Fix could not remove dev_attr_rx_fifo_timeout + - scsi: qla2xxx: Fix incorrect port speed being set for FC adapters + - scsi: qla2xxx: Fix process response queue for ISP26XX and above + - scsi: qla2xxx: Remove stale debug trace message from tcm_qla2xxx + - scsi: qla2xxx: Fix early srb free on abort + - scsi: qla2xxx: shutdown chip if reset fail + - scsi: qla2xxx: Reject bsg request if chip is down. + - scsi: qla2xxx: Fix re-using LoopID when handle is in use + - scsi: qla2xxx: Fix for double free of SRB structure + - scsi: qla2xxx: Fix NVMe session hang on unload + - scsi: qla2xxx: Fix NVMe Target discovery + - scsi: qla2xxx: Fix duplicate switch database entries + - scsi: qla2xxx: Fix driver hang when FC-NVMe LUNs are configured + - vfs: fix FIGETBSZ ioctl on an overlayfs file + - fuse: Fix use-after-free in fuse_dev_do_read() + - fuse: Fix use-after-free in fuse_dev_do_write() + - fuse: fix blocked_waitq wakeup + - fuse: set FR_SENT while locked + - drm/msm: fix OF child-node lookup + - arm64: dts: stratix10: Support Ethernet Jumbo frame + - arm64: dts: stratix10: fix multicast filtering + - clk: meson-gxbb: set fclk_div3 as CLK_IS_CRITICAL + - clk: meson: axg: mark fdiv2 and fdiv3 as critical + - zram: close udev startup race condition as default groups + - MIPS: Loongson-3: Fix CPU UART irq delivery problem + - MIPS: Loongson-3: Fix BRIDGE irq delivery problem + - xtensa: add NOTES section to the linker script + - xtensa: make sure bFLT stack is 16 byte aligned + - xtensa: fix boot parameters address translation + - um: Drop own definition of PTRACE_SYSEMU/_SINGLESTEP + - clk: s2mps11: Fix matching when built as module and DT node contains + compatible + - clk: at91: Fix division by zero in PLL recalc_rate() + - clk: sunxi-ng: h6: fix bus clocks' divider position + - clk: rockchip: fix wrong mmc sample phase shift for rk3328 + - clk: rockchip: Fix static checker warning in rockchip_ddrclk_get_parent call + - libceph: bump CEPH_MSG_MAX_DATA_LEN + - Revert "ceph: fix dentry leak in splice_dentry()" + - thermal: core: Fix use-after-free in thermal_cooling_device_destroy_sysfs + - mach64: fix display corruption on big endian machines + - mach64: fix image corruption due to reading accelerator registers + - acpi/nfit, x86/mce: Handle only uncorrectable machine checks + - acpi/nfit, x86/mce: Validate a MCE's address before using it + - acpi, nfit: Fix ARS overflow continuation + - reset: hisilicon: fix potential NULL pointer dereference + - crypto: hisilicon - Fix NULL dereference for same dst and src + - crypto: hisilicon - Fix reference after free of memories on error path + - vhost/scsi: truncate T10 PI iov_iter to prot_bytes + - scsi: qla2xxx: Initialize port speed to avoid setting lower speed + - SCSI: fix queue cleanup race before queue initialization is done + - Revert "powerpc/8xx: Use L1 entry APG to handle _PAGE_ACCESSED for + CONFIG_SWAP" + - soc: ti: QMSS: Fix usage of irq_set_affinity_hint + - ocfs2: fix a misuse a of brelse after failing ocfs2_check_dir_entry + - ocfs2: free up write context when direct IO failed + - mm: thp: relax __GFP_THISNODE for MADV_HUGEPAGE mappings + - memory_hotplug: cond_resched in __remove_pages + - netfilter: conntrack: fix calculation of next bucket number in early_drop + - ARM: 8809/1: proc-v7: fix Thumb annotation of cpu_v7_hvc_switch_mm + - bonding/802.3ad: fix link_failure_count tracking + - mtd: spi-nor: cadence-quadspi: Return error code in + cqspi_direct_read_execute() + - mtd: nand: Fix nanddev_neraseblocks() + - mtd: docg3: don't set conflicting BCH_CONST_PARAMS option + - hwmon: (core) Fix double-free in __hwmon_device_register() + - perf cs-etm: Correct CPU mode for samples + - perf stat: Handle different PMU names with common prefix + - perf callchain: Honour the ordering of PERF_CONTEXT_{USER,KERNEL,etc} + - perf intel-pt/bts: Calculate cpumode for synthesized samples + - perf intel-pt: Insert callchain context into synthesized callchains + - of, numa: Validate some distance map rules + - x86/cpu/vmware: Do not trace vmware_sched_clock() + - x86/hyper-v: Enable PIT shutdown quirk + - termios, tty/tty_baudrate.c: fix buffer overrun + - arch/alpha, termios: implement BOTHER, IBSHIFT and termios2 + - watchdog/core: Add missing prototypes for weak functions + - btrfs: fix pinned underflow after transaction aborted + - Btrfs: fix missing data checksums after a ranged fsync (msync) + - Btrfs: fix cur_offset in the error case for nocow + - Btrfs: fix infinite loop on inode eviction after deduplication of eof block + - Btrfs: fix data corruption due to cloning of eof block + - btrfs: tree-checker: Fix misleading group system information + - clockevents/drivers/i8253: Add support for PIT shutdown quirk + - ext4: add missing brelse() update_backups()'s error path + - ext4: add missing brelse() in set_flexbg_block_bitmap()'s error path + - ext4: add missing brelse() add_new_gdb_meta_bg()'s error path + - ext4: avoid potential extra brelse in setup_new_flex_group_blocks() + - ext4: missing !bh check in ext4_xattr_inode_write() + - ext4: fix possible inode leak in the retry loop of ext4_resize_fs() + - ext4: avoid buffer leak on shutdown in ext4_mark_iloc_dirty() + - ext4: avoid buffer leak in ext4_orphan_add() after prior errors + - ext4: fix missing cleanup if ext4_alloc_flex_bg_array() fails while resizing + - ext4: avoid possible double brelse() in add_new_gdb() on error path + - ext4: fix possible leak of sbi->s_group_desc_leak in error path + - ext4: fix possible leak of s_journal_flag_rwsem in error path + - ext4: fix buffer leak in ext4_xattr_get_block() on error path + - ext4: release bs.bh before re-using in ext4_xattr_block_find() + - ext4: fix buffer leak in ext4_xattr_move_to_block() on error path + - ext4: fix buffer leak in ext4_expand_extra_isize_ea() on error path + - ext4: fix buffer leak in __ext4_read_dirblock() on error path + - mount: Prevent MNT_DETACH from disconnecting locked mounts + - mnt: fix __detach_mounts infinite loop + - uapi: fix linux/kfd_ioctl.h userspace compilation errors + - ARM: cpuidle: Don't register the driver when back-end init returns -ENXIO + - kdb: use correct pointer when 'btc' calls 'btt' + - kdb: print real address of pointers instead of hashed addresses + - sunrpc: correct the computation for page_ptr when truncating + - NFSv4: Don't exit the state manager without clearing + NFS4CLNT_MANAGER_RUNNING + - nfsd: COPY and CLONE operations require the saved filehandle to be set + - rtc: hctosys: Add missing range error reporting + - fuse: fix use-after-free in fuse_direct_IO() + - fuse: fix leaked notify reply + - fuse: fix possibly missed wake-up after abort + - selinux: check length properly in SCTP bind hook + - gfs2: Put bitmap buffers in put_super + - gfs2: Fix metadata read-ahead during truncate (2) + - libata: blacklist SAMSUNG MZ7TD256HAFV-000L9 SSD + - crypto: user - fix leaking uninitialized memory to userspace + - lib/ubsan.c: don't mark __ubsan_handle_builtin_unreachable as noreturn + - hugetlbfs: fix kernel BUG at fs/hugetlbfs/inode.c:444! + - mm/swapfile.c: use kvzalloc for swap_info_struct allocation + - efi/arm/libstub: Pack FDT after populating it + - mm: don't reclaim inodes with many attached pages + - scripts/spdxcheck.py: make python3 compliant + - drm/rockchip: Allow driver to be shutdown on reboot/kexec + - drm/amdgpu: Fix typo in amdgpu_vmid_mgr_init + - drm/amdgpu: add missing CHIP_HAINAN in amdgpu_ucode_get_load_type + - drm/amdgpu: Suppress keypresses from ACPI_VIDEO events + - drm/nouveau: Check backlight IDs are >= 0, not > 0 + - drm/nouveau: Fix nv50_mstc->best_encoder() + - drm/amd/powerplay: Enable/Disable NBPSTATE on On/OFF of UVD + - drm/etnaviv: fix bogus fence complete check in timeout handler + - drm/dp_mst: Check if primary mstb is null + - drm: panel-orientation-quirks: Add quirk for Acer One 10 (S1003) + - drm/i915/dp: Link train Fallback on eDP only if fallback link BW can fit + panel's native mode + - drm/i915: Use the correct crtc when sanitizing plane mapping + - drm/i915: Restore vblank interrupts earlier + - drm/i915: Don't unset intel_connector->mst_port + - drm/i915: Skip vcpi allocation for MSTB ports that are gone + - drm/i915: Large page offsets for pread/pwrite + - drm/i915/dp: Fix link retraining comment in intel_dp_long_pulse() + - drm/i915/dp: Restrict link retrain workaround to external monitors + - drm/i915/icl: Fix the macros for DFLEXDPMLE register bits + - drm/i915/hdmi: Add HDMI 2.0 audio clock recovery N values + - drm/i915: Mark up GTT sizes as u64 + - drm/i915: Fix error handling for the NV12 fb dimensions check + - drm/i915: Fix ilk+ watermarks when disabling pipes + - drm/i915: Compare user's 64b GTT offset even on 32b + - drm/i915: Don't oops during modeset shutdown after lpe audio deinit + - drm/i915: Mark pin flags as u64 + - drm/i915/ringbuffer: Delay after EMIT_INVALIDATE for gen4/gen5 + - drm/i915/execlists: Force write serialisation into context image vs + execution + - drm/i915: Fix possible race in intel_dp_add_mst_connector() + - drm/i915: Fix NULL deref when re-enabling HPD IRQs on systems with MST + - drm/i915: Fix hpd handling for pins with two encoders + - CONFIG_XEN_PV breaks xen_create_contiguous_region on ARM + - Revert "ACPICA: AML interpreter: add region addresses in global list during + initialization" + - Linux 4.19.3 + + * glibc 2.28-0ubuntu1 ADT test failure with linux 4.19.0-5.6 (LP: #1805154) + - SAUCE: Revert "x86: vdso: Use $LD instead of $CC to link" + + * Miscellaneous Ubuntu changes + - SAUCE: (noup) Update spl to 0.7.12-1ubuntu1, zfs to 0.7.12-1ubuntu1 + + -- Seth Forshee Mon, 26 Nov 2018 11:44:00 -0600 + +linux (4.19.0-5.6) disco; urgency=medium + + * crash in ENA driver on removing an interface (LP: #1802341) + - SAUCE: net: ena: fix crash during ena_remove() + + * Ubuntu 18.04.1 - [s390x] Kernel panic while stressing network bonding + (LP: #1797367) + - s390/qeth: sanitize strings in debug messages + + * Disco update: 4.19.2 upstream stable release (LP: #1803410) + - bpf: fix partial copy of map_ptr when dst is scalar + - MIPS: VDSO: Reduce VDSO_RANDOMIZE_SIZE to 64MB for 64bit + - gpio: mxs: Get rid of external API call + - mtd: rawnand: marvell: fix the IRQ handler complete() condition + - mtd: maps: gpio-addr-flash: Fix ioremapped size + - mtd: spi-nor: fsl-quadspi: fix read error for flash size larger than 16MB + - mtd: spi-nor: intel-spi: Add support for Intel Ice Lake SPI serial flash + - mtd: spi-nor: fsl-quadspi: Don't let -EINVAL on the bus + - spi: spi-mem: Adjust op len based on message/transfer size limitations + - spi: bcm-qspi: switch back to reading flash using smaller chunks + - spi: bcm-qspi: fix calculation of address length + - bcache: trace missed reading by cache_missed + - bcache: fix ioctl in flash device + - bcache: correct dirty data statistics + - bcache: fix miss key refill->end in writeback + - hwmon: (pmbus) Fix page count auto-detection. + - jffs2: free jffs2_sb_info through jffs2_kill_sb() + - block: setup bounce bio_sets properly + - block: make sure discard bio is aligned with logical block size + - block: make sure writesame bio is aligned with logical block size + - cpufreq: conservative: Take limits changes into account properly + - dma-mapping: fix panic caused by passing empty cma command line argument + - pcmcia: Implement CLKRUN protocol disabling for Ricoh bridges + - ACPI / OSL: Use 'jiffies' as the time bassis for acpi_os_get_timer() + - ACPICA: AML interpreter: add region addresses in global list during + initialization + - ACPICA: AML Parser: fix parse loop to correctly skip erroneous extended + opcodes + - acpi, nfit: Fix Address Range Scrub completion tracking + - kprobes/x86: Use preempt_enable() in optimized_callback() + - mailbox: PCC: handle parse error + - parisc: Fix address in HPMC IVA + - parisc: Fix map_pages() to not overwrite existing pte entries + - parisc: Fix exported address of os_hpmc handler + - ALSA: hda - Add quirk for ASUS G751 laptop + - ALSA: hda - Fix headphone pin config for ASUS G751 + - ALSA: hda - Add mic quirk for the Lenovo G50-30 (17aa:3905) + - ALSA: hda: Add 2 more models to the power_save blacklist + - ALSA: ca0106: Disable IZD on SB0570 DAC to fix audio pops + - ALSA: hda - Fix incorrect clearance of thinkpad_acpi hooks + - x86/speculation: Enable cross-hyperthread spectre v2 STIBP mitigation + - x86/xen: Fix boot loader version reported for PVH guests + - x86/corruption-check: Fix panic in memory_corruption_check() when boot + option without value is provided + - x86/kvm/nVMX: allow bare VMXON state migration + - x86/mm/pat: Disable preemption around __flush_tlb_all() + - x86/numa_emulation: Fix uniform-split numa emulation + - ARM: dts: exynos: Disable pull control for MAX8997 interrupts on Origen + - net: socionext: Reset tx queue in ndo_stop + - net: loopback: clear skb->tstamp before netif_rx() + - locking/lockdep: Fix debug_locks off performance problem + - netfilter: xt_nat: fix DNAT target for shifted portmap ranges + - ataflop: fix error handling during setup + - swim: fix cleanup on setup error + - arm64: cpufeature: ctr: Fix cpu capability check for late CPUs + - hv_netvsc: fix vf serial matching with pci slot info + - nfp: devlink port split support for 1x100G CXP NIC + - tun: Consistently configure generic netdev params via rtnetlink + - s390/sthyi: Fix machine name validity indication + - hwmon: (pwm-fan) Set fan speed to 0 on suspend + - lightnvm: pblk: fix race on sysfs line state + - lightnvm: pblk: fix two sleep-in-atomic-context bugs + - lightnvm: pblk: fix race condition on metadata I/O + - spi: spi-ep93xx: Use dma_data_direction for ep93xx_spi_dma_{finish,prepare} + - perf tools: Free temporary 'sys' string in read_event_files() + - perf tools: Cleanup trace-event-info 'tdata' leak + - perf tools: Free 'printk' string in parse_ftrace_printk() + - perf strbuf: Match va_{add,copy} with va_end + - cpupower: Fix coredump on VMWare + - bcache: Populate writeback_rate_minimum attribute + - mmc: sdhci-pci-o2micro: Add quirk for O2 Micro dev 0x8620 rev 0x01 + - sdhci: acpi: add free_slot callback + - mtd: rawnand: denali: set SPARE_AREA_SKIP_BYTES register to 8 if unset + - iwlwifi: pcie: avoid empty free RB queue + - iwlwifi: mvm: clear HW_RESTART_REQUESTED when stopping the interface + - iwlwifi: mvm: check for n_profiles validity in EWRD ACPI + - x86/olpc: Indicate that legacy PC XO-1 platform should not register RTC + - wlcore: Fix BUG with clear completion on timeout + - ACPI/PPTT: Handle architecturally unknown cache types + - ACPI / PM: LPIT: Register sysfs attributes based on FADT + - ACPI / processor: Fix the return value of acpi_processor_ids_walk() + - cpufreq: dt: Try freeing static OPPs only if we have added them + - x86/intel_rdt: Show missing resctrl mount options + - mtd: rawnand: atmel: Fix potential NULL pointer dereference + - nvme: call nvme_complete_rq when nvmf_check_ready fails for mpath I/O + - ath10k: fix tx status flag setting for management frames + - signal: Introduce COMPAT_SIGMINSTKSZ for use in compat_sys_sigaltstack + - ice: fix changing of ring descriptor size (ethtool -G) + - ice: update fw version check logic + - net: hns3: Fix for packet buffer setting bug + - Bluetooth: btbcm: Add entry for BCM4335C0 UART bluetooth + - Bluetooth: hci_qca: Remove hdev dereference in qca_close(). + - x86: boot: Fix EFI stub alignment + - net: hns3: Add nic state check before calling netif_tx_wake_queue + - net: hns3: Fix ets validate issue + - pinctrl: sunxi: fix 'pctrl->functions' allocation in + sunxi_pinctrl_build_state + - pinctrl: qcom: spmi-mpp: Fix err handling of pmic_mpp_set_mux + - brcmfmac: fix for proper support of 160MHz bandwidth + - net: hns3: Check hdev state when getting link status + - net: hns3: Set STATE_DOWN bit of hdev state when stopping net + - net: phy: phylink: ensure the carrier is off when starting phylink + - block, bfq: correctly charge and reset entity service in all cases + - arm64: entry: Allow handling of undefined instructions from EL1 + - kprobes: Return error if we fail to reuse kprobe instead of BUG_ON() + - spi: gpio: No MISO does not imply no RX + - ACPI / LPSS: Add alternative ACPI HIDs for Cherry Trail DMA controllers + - pinctrl: qcom: spmi-mpp: Fix drive strength setting + - bpf/verifier: fix verifier instability + - failover: Add missing check to validate 'slave_dev' in + net_failover_slave_unregister + - perf tests: Fix record+probe_libc_inet_pton.sh without ping's debuginfo + - pinctrl: spmi-mpp: Fix pmic_mpp_config_get() to be compliant + - pinctrl: ssbi-gpio: Fix pm8xxx_pin_config_get() to be compliant + - net: hns3: Preserve vlan 0 in hardware table + - net: hns3: Fix ping exited problem when doing lp selftest + - net: hns3: Fix for vf vlan delete failed problem + - net: dsa: mv88e6xxx: Fix writing to a PHY page. + - mt76x2u: run device cleanup routine if resume fails + - rsi: fix memory alignment issue in ARM32 platforms + - libertas_tf: prevent underflow in process_cmdrequest() + - iwlwifi: mvm: fix BAR seq ctrl reporting + - gpio: brcmstb: allow 0 width GPIO banks + - ixgbe: disallow IPsec Tx offload when in SR-IOV mode + - ixgbevf: VF2VF TCP RSS + - wil6210: fix RX buffers release and unmap + - ath10k: schedule hardware restart if WMI command times out + - libata: Apply NOLPM quirk for SAMSUNG MZ7TD256HAFV-000L9 + - thermal: rcar_thermal: Prevent doing work after unbind + - thermal: da9062/61: Prevent hardware access during system suspend + - cifs: fix a credits leak for compund commands + - cgroup, netclassid: add a preemption point to write_classid + - net: stmmac: dwmac-sun8i: fix OF child-node lookup + - f2fs: fix to account IO correctly for cgroup writeback + - MD: Memory leak when flush bio size is zero + - md: fix memleak for mempool + - of: Add missing exports of node name compare functions + - scsi: esp_scsi: Track residual for PIO transfers + - scsi: ufs: Schedule clk gating work on correct queue + - UAPI: ndctl: Fix g++-unsupported initialisation in headers + - KVM: nVMX: Clear reserved bits of #DB exit qualification + - scsi: megaraid_sas: fix a missing-check bug + - RDMA/core: Do not expose unsupported counters + - RDMA/cm: Respect returned status of cm_init_av_by_path + - IB/ipoib: Clear IPCB before icmp_send + - RDMA/bnxt_re: Avoid accessing nq->bar_reg_iomem in failure case + - RDMA/bnxt_re: Fix recursive lock warning in debug kernel + - usb: host: ohci-at91: fix request of irq for optional gpio + - PCI: mediatek: Fix mtk_pcie_find_port() endpoint/port matching logic + - PCI: cadence: Use AXI region 0 to signal interrupts from EP + - usb: typec: tcpm: Report back negotiated PPS voltage and current + - tpm: suppress transmit cmd error logs when TPM 1.2 is disabled/deactivated + - f2fs: clear PageError on the read path + - Drivers: hv: vmbus: Use cpumask_var_t for on-stack cpu mask + - VMCI: Resource wildcard match fixed + - PCI / ACPI: Enable wake automatically for power managed bridges + - xprtrdma: Reset credit grant properly after a disconnect + - irqchip/pdc: Setup all edge interrupts as rising edge at GIC + - usb: dwc2: fix call to vbus supply exit routine, call it unlocked + - usb: dwc2: fix a race with external vbus supply + - usb: gadget: udc: atmel: handle at91sam9rl PMC + - ext4: fix argument checking in EXT4_IOC_MOVE_EXT + - MD: fix invalid stored role for a disk + - PCI: cadence: Correct probe behaviour when failing to get PHY + - nvmem: check the return value of nvmem_add_cells() + - xhci: Avoid USB autosuspend when resuming USB2 ports. + - scsi: qla2xxx: Fix recursive mailbox timeout + - f2fs: fix to recover inode's crtime during POR + - f2fs: fix to recover inode's i_flags during POR + - PCI/MSI: Warn and return error if driver enables MSI/MSI-X twice + - coresight: etb10: Fix handling of perf mode + - PCI: dwc: pci-dra7xx: Enable errata i870 for both EP and RC mode + - crypto: caam - fix implicit casts in endianness helpers + - usb: chipidea: Prevent unbalanced IRQ disable + - Smack: ptrace capability use fixes + - driver/dma/ioat: Call del_timer_sync() without holding prep_lock + - ASoC: AMD: Fix capture unstable in beginning for some runs + - firmware: coreboot: Unmap ioregion after device population + - IB/ipoib: Use dev_port to expose network interface port numbers + - IB/mlx5: Allow transition of DCI QP to reset + - uio: ensure class is registered before devices + - scsi: lpfc: Correct soft lockup when running mds diagnostics + - scsi: lpfc: Correct race with abort on completion path + - f2fs: avoid sleeping under spin_lock + - f2fs: report error if quota off error during umount + - signal: Always deliver the kernel's SIGKILL and SIGSTOP to a pid namespace + init + - f2fs: fix to flush all dirty inodes recovered in readonly fs + - mfd: menelaus: Fix possible race condition and leak + - dmaengine: dma-jz4780: Return error if not probed from DT + - IB/rxe: fix for duplicate request processing and ack psns + - ALSA: hda: Check the non-cached stream buffers more explicitly + - cpupower: Fix AMD Family 0x17 msr_pstate size + - Revert "f2fs: fix to clear PG_checked flag in set_page_dirty()" + - f2fs: fix missing up_read + - f2fs: fix to recover cold bit of inode block during POR + - f2fs: fix to account IO correctly + - OPP: Free OPP table properly on performance state irregularities + - ARM: dts: exynos: Convert exynos5250.dtsi to opp-v2 bindings + - ARM: dts: exynos: Mark 1 GHz CPU OPP as suspend OPP on Exynos5250 + - xen-swiotlb: use actually allocated size on check physical continuous + - tpm: Restore functionality to xen vtpm driver. + - xen/blkfront: avoid NULL blkfront_info dereference on device removal + - xen/balloon: Support xend-based toolstack + - xen: fix race in xen_qlock_wait() + - xen: make xen_qlock_wait() nestable + - xen/pvh: increase early stack size + - xen/pvh: don't try to unplug emulated devices + - libertas: don't set URB_ZERO_PACKET on IN USB transfer + - usbip:vudc: BUG kmalloc-2048 (Not tainted): Poison overwritten + - usb: typec: tcpm: Fix APDO PPS order checking to be based on voltage + - usb: gadget: udc: renesas_usb3: Fix b-device mode for "workaround" + - mt76: mt76x2: fix multi-interface beacon configuration + - iwlwifi: mvm: check return value of rs_rate_from_ucode_rate() + - net/ipv4: defensive cipso option parsing + - dmaengine: ppc4xx: fix off-by-one build failure + - scsi: sched/wait: Add wait_event_lock_irq_timeout for TASK_UNINTERRUPTIBLE + usage + - scsi: target: Fix target_wait_for_sess_cmds breakage with active signals + - libnvdimm: Hold reference on parent while scheduling async init + - libnvdimm, region: Fail badblocks listing for inactive regions + - libnvdimm, pmem: Fix badblocks population for 'raw' namespaces + - ASoC: intel: skylake: Add missing break in skl_tplg_get_token() + - ASoC: sta32x: set ->component pointer in private struct + - IB/mlx5: Fix MR cache initialization + - IB/rxe: Revise the ib_wr_opcode enum + - jbd2: fix use after free in jbd2_log_do_checkpoint() + - gfs2_meta: ->mount() can get NULL dev_name + - ext4: fix EXT4_IOC_SWAP_BOOT + - ext4: initialize retries variable in ext4_da_write_inline_data_begin() + - ext4: fix setattr project check in fssetxattr ioctl + - ext4: propagate error from dquot_initialize() in EXT4_IOC_FSSETXATTR + - ext4: fix use-after-free race in ext4_remount()'s error path + - selinux: fix mounting of cgroup2 under older policies + - HID: wacom: Work around HID descriptor bug in DTK-2451 and DTH-2452 + - HID: hiddev: fix potential Spectre v1 + - EDAC, amd64: Add Family 17h, models 10h-2fh support + - EDAC, {i7core,sb,skx}_edac: Fix uncorrected error counting + - EDAC, skx_edac: Fix logical channel intermediate decoding + - ARM: dts: dra7: Fix up unaligned access setting for PCIe EP + - PCI/ASPM: Fix link_state teardown on device removal + - PCI: Add Device IDs for Intel GPU "spurious interrupt" quirk + - signal/GenWQE: Fix sending of SIGKILL + - signal: Guard against negative signal numbers in copy_siginfo_from_user32 + - crypto: lrw - Fix out-of bounds access on counter overflow + - crypto: tcrypt - fix ghash-generic speed test + - crypto: aesni - don't use GFP_ATOMIC allocation if the request doesn't cross + a page in gcm + - crypto: morus/generic - fix for big endian systems + - crypto: aegis/generic - fix for big endian systems + - crypto: speck - remove Speck + - mm: /proc/pid/smaps_rollup: fix NULL pointer deref in smaps_pte_range() + - userfaultfd: disable irqs when taking the waitqueue lock + - ima: fix showing large 'violations' or 'runtime_measurements_count' + - ima: open a new file instance if no read permissions + - hugetlbfs: dirty pages as they are added to pagecache + - mm/rmap: map_pte() was not handling private ZONE_DEVICE page properly + - mm/hmm: fix race between hmm_mirror_unregister() and mmu_notifier callback + - KVM: arm/arm64: Ensure only THP is candidate for adjustment + - KVM: arm64: Fix caching of host MDCR_EL2 value + - kbuild: fix kernel/bounds.c 'W=1' warning + - iio: ad5064: Fix regulator handling + - iio: adc: imx25-gcq: Fix leak of device_node in mx25_gcq_setup_cfgs() + - iio: adc: at91: fix acking DRDY irq on simple conversions + - iio: adc: at91: fix wrong channel number in triggered buffer mode + - w1: omap-hdq: fix missing bus unregister at removal + - smb3: allow stats which track session and share reconnects to be reset + - smb3: do not attempt cifs operation in smb3 query info error path + - smb3: on kerberos mount if server doesn't specify auth type use krb5 + - printk: Fix panic caused by passing log_buf_len to command line + - genirq: Fix race on spurious interrupt detection + - tpm: fix response size validation in tpm_get_random() + - NFC: nfcmrvl_uart: fix OF child-node lookup + - NFSv4.1: Fix the r/wsize checking + - nfs: Fix a missed page unlock after pg_doio() + - nfsd: correctly decrement odstate refcount in error path + - nfsd: Fix an Oops in free_session() + - lockd: fix access beyond unterminated strings in prints + - dm ioctl: harden copy_params()'s copy_from_user() from malicious users + - dm zoned: fix metadata block ref counting + - dm zoned: fix various dmz_get_mblock() issues + - media: ov7670: make "xclk" clock optional + - fsnotify: Fix busy inodes during unmount + - powerpc64/module elfv1: Set opd addresses after module relocation + - powerpc/msi: Fix compile error on mpc83xx + - powerpc/tm: Fix HFSCR bit for no suspend case + - powerpc/64s/hash: Do not use PPC_INVALIDATE_ERAT on CPUs before POWER9 + - MIPS: OCTEON: fix out of bounds array access on CN68XX + - rtc: ds1307: fix ds1339 wakealarm support + - rtc: cmos: Fix non-ACPI undefined reference to `hpet_rtc_interrupt' + - rtc: cmos: Remove the `use_acpi_alarm' module parameter for !ACPI + - power: supply: twl4030-charger: fix OF sibling-node lookup + - ocxl: Fix access to the AFU Descriptor Data + - iommu/arm-smmu: Ensure that page-table updates are visible before TLBI + - TC: Set DMA masks for devices + - net: bcmgenet: fix OF child-node lookup + - media: v4l2-tpg: fix kernel oops when enabling HFLIP and OSD + - Revert "media: dvbsky: use just one mutex for serializing device R/W ops" + - kgdboc: Passing ekgdboc to command line causes panic + - remoteproc: qcom: q6v5: Propagate EPROBE_DEFER + - media: cec: make cec_get_edid_spa_location() an inline function + - media: cec: integrate cec_validate_phys_addr() in cec-api.c + - xen: fix xen_qlock_wait() + - xen: remove size limit of privcmd-buf mapping interface + - xen-blkfront: fix kernel panic with negotiate_mq error path + - media: cec: add new tx/rx status bits to detect aborts/timeouts + - media: cec: fix the Signal Free Time calculation + - media: cec: forgot to cancel delayed work + - media: em28xx: use a default format if TRY_FMT fails + - media: tvp5150: avoid going past array on v4l2_querymenu() + - media: em28xx: fix input name for Terratec AV 350 + - media: em28xx: make v4l2-compliance happier by starting sequence on zero + - media: em28xx: fix handler for vidioc_s_input() + - media: adv7604: when the EDID is cleared, unconfigure CEC as well + - media: adv7842: when the EDID is cleared, unconfigure CEC as well + - drm/mediatek: fix OF sibling-node lookup + - media: media colorspaces*.rst: rename AdobeRGB to opRGB + - media: replace ADOBERGB by OPRGB + - media: hdmi.h: rename ADOBE_RGB to OPRGB and ADOBE_YCC to OPYCC + - arm64: lse: remove -fcall-used-x0 flag + - rpmsg: smd: fix memory leak on channel create + - Cramfs: fix abad comparison when wrap-arounds occur + - ARM: dts: socfpga: Fix SDRAM node address for Arria10 + - arm64: dts: stratix10: Correct System Manager register size + - soc: qcom: rmtfs-mem: Validate that scm is available + - soc/tegra: pmc: Fix child-node lookup + - selftests/ftrace: Fix synthetic event test to delete event correctly + - selftests/powerpc: Fix ptrace tm failure + - tracing: Return -ENOENT if there is no target synthetic event + - btrfs: qgroup: Avoid calling qgroup functions if qgroup is not enabled + - btrfs: Handle owner mismatch gracefully when walking up tree + - btrfs: locking: Add extra check in btrfs_init_new_buffer() to avoid deadlock + - btrfs: fix error handling in free_log_tree + - btrfs: fix error handling in btrfs_dev_replace_start + - btrfs: Enhance btrfs_trim_fs function to handle error better + - btrfs: Ensure btrfs_trim_fs can trim the whole filesystem + - btrfs: iterate all devices during trim, instead of fs_devices::alloc_list + - btrfs: don't attempt to trim devices that don't support it + - btrfs: keep trim from interfering with transaction commits + - btrfs: wait on caching when putting the bg cache + - Btrfs: don't clean dirty pages during buffered writes + - btrfs: release metadata before running delayed refs + - btrfs: protect space cache inode alloc with GFP_NOFS + - btrfs: reset max_extent_size on clear in a bitmap + - btrfs: make sure we create all new block groups + - Btrfs: fix warning when replaying log after fsync of a tmpfile + - Btrfs: fix wrong dentries after fsync of file that got its parent replaced + - btrfs: qgroup: Dirty all qgroups before rescan + - Btrfs: fix null pointer dereference on compressed write path error + - Btrfs: fix assertion on fsync of regular file when using no-holes feature + - Btrfs: fix deadlock when writing out free space caches + - btrfs: reset max_extent_size properly + - btrfs: set max_extent_size properly + - btrfs: don't use ctl->free_space for max_extent_size + - btrfs: only free reserved extent if we didn't insert it + - btrfs: fix insert_reserved error handling + - btrfs: don't run delayed_iputs in commit + - btrfs: move the dio_sem higher up the callchain + - Btrfs: fix use-after-free during inode eviction + - Btrfs: fix use-after-free when dumping free space + - net: sched: Remove TCA_OPTIONS from policy + - vt: fix broken display when running aptitude + - bpf: wait for running BPF programs when updating map-in-map + - vga_switcheroo: Fix missing gpu_bound call at audio client registration + - MD: fix invalid stored role for a disk - try2 + - Linux 4.19.2 + + * [FEAT] Guest-dedicated Crypto Adapters (LP: #1787405) + - KVM: s390: vsie: simulate VCPU SIE entry/exit + - KVM: s390: introduce and use KVM_REQ_VSIE_RESTART + - KVM: s390: refactor crypto initialization + - s390: vfio-ap: base implementation of VFIO AP device driver + - s390: vfio-ap: register matrix device with VFIO mdev framework + - s390: vfio-ap: sysfs interfaces to configure adapters + - s390: vfio-ap: sysfs interfaces to configure domains + - s390: vfio-ap: sysfs interfaces to configure control domains + - s390: vfio-ap: sysfs interface to view matrix mdev matrix + - KVM: s390: interface to clear CRYCB masks + - s390: vfio-ap: implement mediated device open callback + - s390: vfio-ap: implement VFIO_DEVICE_GET_INFO ioctl + - s390: vfio-ap: zeroize the AP queues + - s390: vfio-ap: implement VFIO_DEVICE_RESET ioctl + - KVM: s390: Clear Crypto Control Block when using vSIE + - KVM: s390: vsie: Do the CRYCB validation first + - KVM: s390: vsie: Make use of CRYCB FORMAT2 clear + - KVM: s390: vsie: Allow CRYCB FORMAT-2 + - KVM: s390: vsie: allow CRYCB FORMAT-1 + - KVM: s390: vsie: allow CRYCB FORMAT-0 + - KVM: s390: vsie: allow guest FORMAT-0 CRYCB on host FORMAT-1 + - KVM: s390: vsie: allow guest FORMAT-1 CRYCB on host FORMAT-2 + - KVM: s390: vsie: allow guest FORMAT-0 CRYCB on host FORMAT-2 + - KVM: s390: device attrs to enable/disable AP interpretation + - KVM: s390: CPU model support for AP virtualization + - s390: doc: detailed specifications for AP virtualization + - KVM: s390: fix locking for crypto setting error path + - KVM: s390: Tracing APCB changes + - s390: vfio-ap: setup APCB mask using KVM dedicated function + - [Config:] Enable CONFIG_S390_AP_IOMMU and set CONFIG_VFIO_AP to module. + + * Bypass of mount visibility through userns + mount propagation (LP: #1789161) + - mount: Retest MNT_LOCKED in do_umount + - mount: Don't allow copying MNT_UNBINDABLE|MNT_LOCKED mounts + + * CVE-2018-18955: nested user namespaces with more than five extents + incorrectly grant privileges over inode (LP: #1801924) // CVE-2018-18955 + - userns: also map extents in the reverse map to kernel IDs + + * kdump fail due to an IRQ storm (LP: #1797990) + - SAUCE: x86/PCI: Export find_cap() to be used in early PCI code + - SAUCE: x86/quirks: Add parameter to clear MSIs early on boot + - SAUCE: x86/quirks: Scan all busses for early PCI quirks + + * Disable LPM for Raydium Touchscreens (LP: #1802248) + - USB: quirks: Add no-lpm quirk for Raydium touchscreens + + * Power consumption during s2idle is higher than long idle(sk hynix) + (LP: #1801875) + - SAUCE: pci: prevent sk hynix nvme from entering D3 + - SAUCE: nvme: add quirk to not call disable function when suspending + + * Disco update: v4.19.1 upstream stable release (LP: #1801739) + - bridge: do not add port to router list when receives query with source + 0.0.0.0 + - ipv6/ndisc: Preserve IPv6 control buffer if protocol error handlers are + called + - net/mlx5e: fix csum adjustments caused by RXFCS + - net: sched: gred: pass the right attribute to gred_change_table_def() + - net: stmmac: Fix stmmac_mdio_reset() when building stmmac as modules + - net: udp: fix handling of CHECKSUM_COMPLETE packets + - Revert "net: simplify sock_poll_wait" + - rtnetlink: Disallow FDB configuration for non-Ethernet device + - vhost: Fix Spectre V1 vulnerability + - bonding: fix length of actor system + - openvswitch: Fix push/pop ethernet validation + - net/ipv6: Allow onlink routes to have a device mismatch if it is the default + route + - net/smc: fix smc_buf_unuse to use the lgr pointer + - mlxsw: spectrum_switchdev: Don't ignore deletions of learned MACs + - mlxsw: core: Fix devlink unregister flow + - net: drop skb on failure in ip_check_defrag() + - net: Properly unlink GRO packets on overflow. + - r8169: fix broken Wake-on-LAN from S5 (poweroff) + - Revert "be2net: remove desc field from be_eq_obj" + - sctp: check policy more carefully when getting pr status + - sparc64: Export __node_distance. + - sparc64: Make corrupted user stacks more debuggable. + - sparc64: Wire up compat getpeername and getsockname. + - net: bridge: remove ipv6 zero address check in mcast queries + - Linux 4.19.1 + + * Miscellaneous Ubuntu changes + - SAUCE: (noup) Update spl to 0.7.11-1ubuntu1, zfs to 0.7.11-3ubuntu1 + - [Config] updateconfigs after 4.19.2 stable update + - [Config] Disable unneded options for s390 + - [Config] Update annotations for 4.19 + + -- Seth Forshee Thu, 15 Nov 2018 09:55:37 -0800 + +linux (4.19.0-4.5) disco; urgency=medium + + * Add checksum offload and TSO support for HiNIC adapters (LP: #1800664) + - net-next/hinic: add checksum offload and TSO support + + * [Bionic][Cosmic] Fix to ipmi to support vendor specific messages greater + than 255 bytes (LP: #1799794) + - ipmi:ssif: Add support for multi-part transmit messages > 2 parts + + * Packaging resync (LP: #1786013) + - [Package] add support for specifying the primary makefile + + * Update ENA driver to version 2.0.1K (LP: #1798182) + - net: ena: minor performance improvement + - net: ena: complete host info to match latest ENA spec + - net: ena: introduce Low Latency Queues data structures according to ENA spec + - net: ena: add functions for handling Low Latency Queues in ena_com + - net: ena: add functions for handling Low Latency Queues in ena_netdev + - net: ena: use CSUM_CHECKED device indication to report skb's checksum status + - net: ena: explicit casting and initialization, and clearer error handling + - net: ena: limit refill Rx threshold to 256 to avoid latency issues + - net: ena: change rx copybreak default to reduce kernel memory pressure + - net: ena: remove redundant parameter in ena_com_admin_init() + - net: ena: update driver version to 2.0.1 + - net: ena: fix indentations in ena_defs for better readability + - net: ena: Fix Kconfig dependency on X86 + - net: ena: enable Low Latency Queues + - net: ena: fix compilation error in xtensa architecture + + * [Bionic][Cosmic] ipmi: Fix timer race with module unload (LP: #1799281) + - ipmi: Fix timer race with module unload + + * Overlayfs in user namespace leaks directory content of inaccessible + directories (LP: #1793458) // CVE-2018-6559 + - SAUCE: overlayfs: ensure mounter privileges when reading directories + + * not able to unwind the stack from within __kernel_clock_gettime in the Linux + vDSO (LP: #1797963) + - powerpc/vdso: Correct call frame information + + * Miscellaneous Ubuntu changes + - Revert "UBUNTU: SAUCE: (efi-lockdown) efi: Don't print secure boot state + from the efi stub" + - Revert "UBUNTU: SAUCE: (efi-lockdown) efi: Sanitize boot_params in efi stub" + - Revert "UBUNTU: SAUCE: (efi-lockdown) Make get_cert_list() use + efi_status_to_str() to print error messages." + - Revert "UBUNTU: SAUCE: (efi-lockdown) Add efi_status_to_str() and rework + efi_status_to_err()." + - Revert "UBUNTU: SAUCE: (efi-lockdown) Make get_cert_list() not complain + about cert lists that aren't present." + - Revert "UBUNTU: SAUCE: (efi-lockdown) MODSIGN: Allow the "db" UEFI variable + to be suppressed" + - Revert "UBUNTU: SAUCE: (efi-lockdown) MODSIGN: Import certificates from UEFI + Secure Boot" + - Revert "UBUNTU: SAUCE: (efi-lockdown) efi: Add an EFI signature blob parser" + - Revert "UBUNTU: SAUCE: (efi-lockdown) efi: Add EFI signature data types" + - Revert "UBUNTU: SAUCE: (efi-lockdown) KEYS: Allow unrestricted boot-time + addition of keys to secondary keyring" + - Revert "UBUNTU: SAUCE: (efi-lockdown) efi: Lock down the kernel if booted in + secure boot mode" + - Revert "UBUNTU: SAUCE: (efi-lockdown) efi: Add an EFI_SECURE_BOOT flag to + indicate secure boot mode" + - Revert "UBUNTU: SAUCE: (efi-lockdown) Copy secure_boot flag in boot params + across kexec reboot" + - Revert "UBUNTU: SAUCE: (efi-lockdown) debugfs: Restrict debugfs when the + kernel is locked down" + - Revert "UBUNTU: SAUCE: (efi-lockdown) Lock down perf" + - Revert "UBUNTU: SAUCE: (efi-lockdown) bpf: Restrict kernel image access + functions when the kernel is locked down" + - Revert "UBUNTU: SAUCE: (efi-lockdown) Lock down kprobes" + - Revert "UBUNTU: SAUCE: (efi-lockdown) Lock down /proc/kcore" + - Revert "UBUNTU: SAUCE: (efi-lockdown) x86/mmiotrace: Lock down the + testmmiotrace module" + - Revert "UBUNTU: SAUCE: (efi-lockdown) Lock down module params that specify + hardware parameters (eg. ioport)" + - Revert "UBUNTU: SAUCE: (efi-lockdown) Lock down TIOCSSERIAL" + - Revert "UBUNTU: SAUCE: (efi-lockdown) Prohibit PCMCIA CIS storage when the + kernel is locked down" + - Revert "UBUNTU: SAUCE: (efi-lockdown) acpi: Disable APEI error injection if + the kernel is locked down" + - Revert "UBUNTU: SAUCE: (efi-lockdown) acpi: Disable ACPI table override if + the kernel is locked down" + - Revert "UBUNTU: SAUCE: (efi-lockdown) acpi: Ignore acpi_rsdp kernel param + when the kernel has been locked down" + - Revert "UBUNTU: SAUCE: (efi-lockdown) ACPI: Limit access to custom_method + when the kernel is locked down" + - Revert "UBUNTU: SAUCE: (efi-lockdown) x86/msr: Restrict MSR access when the + kernel is locked down" + - Revert "UBUNTU: SAUCE: (efi-lockdown) x86: Lock down IO port access when the + kernel is locked down" + - Revert "UBUNTU: SAUCE: (efi-lockdown) PCI: Lock down BAR access when the + kernel is locked down" + - Revert "UBUNTU: SAUCE: (efi-lockdown) uswsusp: Disable when the kernel is + locked down" + - Revert "UBUNTU: SAUCE: (efi-lockdown) hibernate: Disable when the kernel is + locked down" + - Revert "UBUNTU: SAUCE: (efi-lockdown) kexec_load: Disable at runtime if the + kernel is locked down" + - Revert "UBUNTU: SAUCE: (efi-lockdown) Restrict /dev/{mem,kmem,port} when the + kernel is locked down" + - Revert "UBUNTU: SAUCE: (efi-lockdown) Enforce module signatures if the + kernel is locked down" + - Revert "UBUNTU: SAUCE: (efi-lockdown) Add a SysRq option to lift kernel + lockdown" + - Revert "UBUNTU: SAUCE: (efi-lockdown) Add the ability to lock down access to + the running kernel image" + - SAUCE: (efi-lockdown) Add the ability to lock down access to the running + kernel image + - SAUCE: (efi-lockdown) Add a SysRq option to lift kernel lockdown + - SAUCE: (efi-lockdown) Enforce module signatures if the kernel is locked down + - SAUCE: (efi-lockdown) Restrict /dev/{mem,kmem,port} when the kernel is + locked down + - SAUCE: (efi-lockdown) kexec_load: Disable at runtime if the kernel is locked + down + - SAUCE: (efi-lockdown) hibernate: Disable when the kernel is locked down + - SAUCE: (efi-lockdown) uswsusp: Disable when the kernel is locked down + - SAUCE: (efi-lockdown) PCI: Lock down BAR access when the kernel is locked + down + - SAUCE: (efi-lockdown) x86: Lock down IO port access when the kernel is + locked down + - SAUCE: (efi-lockdown) x86/msr: Restrict MSR access when the kernel is locked + down + - SAUCE: (efi-lockdown) ACPI: Limit access to custom_method when the kernel is + locked down + - SAUCE: (efi-lockdown) acpi: Ignore acpi_rsdp kernel param when the kernel + has been locked down + - SAUCE: (efi-lockdown) acpi: Disable ACPI table override if the kernel is + locked down + - SAUCE: (efi-lockdown) acpi: Disable APEI error injection if the kernel is + locked down + - SAUCE: (efi-lockdown) Prohibit PCMCIA CIS storage when the kernel is locked + down + - SAUCE: (efi-lockdown) Lock down TIOCSSERIAL + - SAUCE: (efi-lockdown) Lock down module params that specify hardware + parameters (eg. ioport) + - SAUCE: (efi-lockdown) x86/mmiotrace: Lock down the testmmiotrace module + - SAUCE: (efi-lockdown) Lock down /proc/kcore + - SAUCE: (efi-lockdown) Lock down kprobes + - SAUCE: (efi-lockdown) Lock down perf + - SAUCE: (efi-lockdown) debugfs: Restrict debugfs when the kernel is locked + down + - SAUCE: (efi-lockdown) KEYS: Allow unrestricted boot-time addition of keys to + secondary keyring + - SAUCE: (efi-lockdown) efi: Add EFI signature data types + - SAUCE: (efi-lockdown) efi: Add an EFI signature blob parser + - SAUCE: (efi-lockdown) MODSIGN: Import certificates from UEFI Secure Boot + - SAUCE: (efi-lockdown) MODSIGN: Allow the "db" UEFI variable to be suppressed + - SAUCE: (efi-lockdown) Make get_cert_list() not complain about cert lists + that aren't present. + - SAUCE: (efi-lockdown) Add efi_status_to_str() and rework + efi_status_to_err(). + - SAUCE: (efi-lockdown) Make get_cert_list() use efi_status_to_str() to print + error messages. + - SAUCE: (efi-lockdown) Copy secure_boot flag in boot params across kexec + reboot + - SAUCE: (efi-lockdown) efi: Add an EFI_SECURE_BOOT flag to indicate secure + boot mode + - SAUCE: (efi-lockdown) efi: Lock down the kernel if booted in secure boot + mode + - SAUCE: (efi-lockdown) efi/x86: Call efi_parse_options() from efi_main() + - SAUCE: (efi-lockdown) Fix for module sig verification + - SAUCE: (efi-lockdown) efi: Sanitize boot_params in efi stub + - SAUCE: (efi-lockdown) module: remove support for having IMA validate modules + - [Packaging] generate Vcs-Git url from changelog + - [Config] CONFIG_SCSI_MQ_DEFAULT=y + + -- Seth Forshee Fri, 02 Nov 2018 14:22:55 -0500 + +linux (4.19.0-3.4) cosmic; urgency=medium + + * Support Edge Gateway's Bluetooth LED (LP: #1798332) + - SAUCE: Bluetooth: Support for LED on Edge Gateways + + * Support Edge Gateway's WIFI LED (LP: #1798330) + - SAUCE: mwifiex: Switch WiFi LED state according to the device status + + [ Upstream Kernel Changes ] + + * Rebase to v4.19 + + -- Seth Forshee Mon, 22 Oct 2018 09:13:39 -0500 + +linux (4.19.0-2.3) cosmic; urgency=medium + + * fscache: bad refcounting in fscache_op_complete leads to OOPS (LP: #1797314) + - SAUCE: fscache: Fix race in decrementing refcount of op->npages + + * Provide mode where all vCPUs on a core must be the same VM (LP: #1792957) + - KVM: PPC: Book3S HV: Provide mode where all vCPUs on a core must be the same + VM + + * The front MIC can't work on the Lenovo M715 (LP: #1797292) + - ALSA: hda/realtek - Fix the problem of the front MIC on the Lenovo M715 + + * arm64: snapdragon: WARNING: CPU: 0 PID: 1 at drivers/irqchip/irq-gic.c:1016 + gic_irq_domain_translate (LP: #1797143) + - SAUCE: arm64: dts: msm8916: camms: fix gic_irq_domain_translate warnings + + * Dell new AIO requires a new uart backlight driver (LP: #1727235) + - SAUCE: platform/x86: dell-uart-backlight: new backlight driver for DELL AIO + - updateconfigs for Dell UART backlight driver + + * Please make CONFIG_PWM_LPSS_PCI and CONFIG_PWM_LPSS_PLATFORM built in to + make brightness adjustment working on various BayTrail/CherryTrail-based + devices (LP: #1783964) + - [Config]: Make PWM_LPSS_* built-in + + * check and fix zkey required kernel modules locations in debs, udebs, and + initramfs (LP: #1794346) + - [Config] add s390 crypto modules to crypt-modules udeb + + * Miscellaneous Ubuntu changes + - [Config] CONFIG_VBOXGUEST=n + - ubuntu: vbox -- update to 5.2.18-dfsg-2 + - ubuntu: enable vbox build + + [ Upstream Kernel Changes ] + + * Rebase to v4.19-rc8 + + -- Seth Forshee Mon, 15 Oct 2018 10:52:04 -0500 + +linux (4.19.0-1.2) cosmic; urgency=medium + + * Page leaking in cachefiles_read_backing_file while vmscan is active + (LP: #1793430) + - SAUCE: cachefiles: Page leaking in cachefiles_read_backing_file while vmscan + is active + + * SRU: Enable middle button of touchpad on ThinkPad P72 (LP: #1793463) + - Input: elantech - enable middle button of touchpad on ThinkPad P72 + + * Improvements to the kernel source package preparation (LP: #1793461) + - [Packaging] startnewrelease: add support for backport kernels + + * Fix unusable NVIDIA GPU after S3 (LP: #1793338) + - SAUCE: PCI: Reprogram bridge prefetch registers on resume + + * Error reported when creating ZFS pool with "-t" option, despite successful + pool creation (LP: #1769937) + - SAUCE: (noup) Update zfs to 0.7.9-3ubuntu6 + + * device hotplug of vfio devices can lead to deadlock in vfio_pci_release + (LP: #1792099) + - SAUCE: vfio -- release device lock before userspace requests + + * Miscellaneous Ubuntu changes + - [Packaging] retpoline -- fix temporary filenaming + - CONFIG_BCH_CONST_PARAMS=n + - Packaging: final-checks: remove trailing backport suffix + - SAUCE: import aufs driver + + [ Upstream Kernel Changes ] + + * Rebase to v4.19-rc5 + + -- Seth Forshee Tue, 25 Sep 2018 16:32:24 -0500 + +linux (4.19.0-0.1) cosmic; urgency=medium + + * Miscellaneous Ubuntu changes + - ubuntu -- disable vbox build + - Disable zfs build + - SAUCE: Import aufs driver + - Update dropped.txt + + [ Upstream Kernel Changes ] + + * Rebase to v4.19-rc3 + + -- Seth Forshee Thu, 13 Sep 2018 07:54:47 -0500 + +linux (4.19.0-0.0) cosmic; urgency=medium + + * Dummy entry. + + -- Seth Forshee Thu, 13 Sep 2018 06:44:09 -0500 + +linux (4.18.0-8.9) cosmic; urgency=medium + + * linux: 4.18.0-8.9 -proposed tracker (LP: #1791663) + + * Cosmic update to v4.18.7 stable release (LP: #1791660) + - rcu: Make expedited GPs handle CPU 0 being offline + - net: 6lowpan: fix reserved space for single frames + - net: mac802154: tx: expand tailroom if necessary + - 9p/net: Fix zero-copy path in the 9p virtio transport + - spi: davinci: fix a NULL pointer dereference + - spi: pxa2xx: Add support for Intel Ice Lake + - spi: spi-fsl-dspi: Fix imprecise abort on VF500 during probe + - spi: cadence: Change usleep_range() to udelay(), for atomic context + - mmc: block: Fix unsupported parallel dispatch of requests + - mmc: renesas_sdhi_internal_dmac: mask DMAC interrupts + - mmc: renesas_sdhi_internal_dmac: fix #define RST_RESERVED_BITS + - readahead: stricter check for bdi io_pages + - block: fix infinite loop if the device loses discard capability + - block: blk_init_allocated_queue() set q->fq as NULL in the fail case + - block: really disable runtime-pm for blk-mq + - blkcg: Introduce blkg_root_lookup() + - block: Introduce blk_exit_queue() + - block: Ensure that a request queue is dissociated from the cgroup controller + - apparmor: fix bad debug check in apparmor_secid_to_secctx() + - dma-buf: Move BUG_ON from _add_shared_fence to _add_shared_inplace + - libertas: fix suspend and resume for SDIO connected cards + - media: Revert "[media] tvp5150: fix pad format frame height" + - mailbox: xgene-slimpro: Fix potential NULL pointer dereference + - Replace magic for trusting the secondary keyring with #define + - Fix kexec forbidding kernels signed with keys in the secondary keyring to + boot + - powerpc/fadump: handle crash memory ranges array index overflow + - powerpc/64s: Fix page table fragment refcount race vs speculative references + - powerpc/pseries: Fix endianness while restoring of r3 in MCE handler. + - powerpc/pkeys: Give all threads control of their key permissions + - powerpc/pkeys: Deny read/write/execute by default + - powerpc/pkeys: key allocation/deallocation must not change pkey registers + - powerpc/pkeys: Save the pkey registers before fork + - powerpc/pkeys: Fix calculation of total pkeys. + - powerpc/pkeys: Preallocate execute-only key + - powerpc/nohash: fix pte_access_permitted() + - powerpc64/ftrace: Include ftrace.h needed for enable/disable calls + - powerpc/powernv/pci: Work around races in PCI bridge enabling + - cxl: Fix wrong comparison in cxl_adapter_context_get() + - IB/mlx5: Honor cnt_set_id_valid flag instead of set_id + - IB/mlx5: Fix leaking stack memory to userspace + - IB/srpt: Fix srpt_cm_req_recv() error path (1/2) + - IB/srpt: Fix srpt_cm_req_recv() error path (2/2) + - IB/srpt: Support HCAs with more than two ports + - overflow.h: Add arithmetic shift helper + - RDMA/mlx5: Fix shift overflow in mlx5_ib_create_wq + - ib_srpt: Fix a use-after-free in srpt_close_ch() + - ib_srpt: Fix a use-after-free in __srpt_close_all_ch() + - RDMA/rxe: Set wqe->status correctly if an unexpected response is received + - 9p: fix multiple NULL-pointer-dereferences + - fs/9p/xattr.c: catch the error of p9_client_clunk when setting xattr failed + - 9p/virtio: fix off-by-one error in sg list bounds check + - net/9p/client.c: version pointer uninitialized + - net/9p/trans_fd.c: fix race-condition by flushing workqueue before the + kfree() + - dm integrity: change 'suspending' variable from bool to int + - dm thin: stop no_space_timeout worker when switching to write-mode + - dm cache metadata: save in-core policy_hint_size to on-disk superblock + - dm cache metadata: set dirty on all cache blocks after a crash + - dm crypt: don't decrease device limits + - dm writecache: fix a crash due to reading past end of dirty_bitmap + - uart: fix race between uart_put_char() and uart_shutdown() + - Drivers: hv: vmbus: Fix the offer_in_progress in vmbus_process_offer() + - Drivers: hv: vmbus: Reset the channel callback in vmbus_onoffer_rescind() + - iio: sca3000: Fix missing return in switch + - iio: ad9523: Fix displayed phase + - iio: ad9523: Fix return value for ad952x_store() + - extcon: Release locking when sending the notification of connector state + - eventpoll.h: wrap casts in () properly + - vmw_balloon: fix inflation of 64-bit GFNs + - vmw_balloon: do not use 2MB without batching + - vmw_balloon: VMCI_DOORBELL_SET does not check status + - vmw_balloon: fix VMCI use when balloon built into kernel + - rtc: omap: fix resource leak in registration error path + - rtc: omap: fix potential crash on power off + - tracing: Do not call start/stop() functions when tracing_on does not change + - tracing/blktrace: Fix to allow setting same value + - printk/tracing: Do not trace printk_nmi_enter() + - livepatch: Validate module/old func name length + - uprobes: Use synchronize_rcu() not synchronize_sched() + - mfd: hi655x: Fix regmap area declared size for hi655x + - ovl: fix wrong use of impure dir cache in ovl_iterate() + - ACPICA: AML Parser: skip opcodes that open a scope upon parse failure + - ACPICA: Clear status of all events when entering sleep states + - drivers/block/zram/zram_drv.c: fix bug storing backing_dev + - sched: idle: Avoid retaining the tick when it has been stopped + - cpuidle: menu: Handle stopped tick more aggressively + - cpufreq: governor: Avoid accessing invalid governor_data + - PM / sleep: wakeup: Fix build error caused by missing SRCU support + - ALSA: ac97: fix device initialization in the compat layer + - ALSA: ac97: fix check of pm_runtime_get_sync failure + - ALSA: ac97: fix unbalanced pm_runtime_enable + - i2c: designware: Re-init controllers with pm_disabled set on resume + - KVM: VMX: fixes for vmentry_l1d_flush module parameter + - KVM: PPC: Book3S: Fix guest DMA when guest partially backed by THP pages + - xtensa: limit offsets in __loop_cache_{all,page} + - xtensa: increase ranges in ___invalidate_{i,d}cache_all + - block, bfq: return nbytes and not zero from struct cftype .write() method + - pnfs/blocklayout: off by one in bl_map_stripe() + - nfsd: fix leaked file lock with nfs exported overlayfs + - NFSv4 client live hangs after live data migration recovery + - NFSv4: Fix locking in pnfs_generic_recover_commit_reqs + - NFSv4: Fix a sleep in atomic context in nfs4_callback_sequence() + - ARM: tegra: Fix Tegra30 Cardhu PCA954x reset + - ARM: dts: am57xx-idk: Enable dual role for USB2 port + - pwm: omap-dmtimer: Return -EPROBE_DEFER if no dmtimer platform data + - mm/tlb: Remove tlb_remove_table() non-concurrent condition + - iommu/ipmmu-vmsa: Don't register as BUS IOMMU if machine doesn't have IPMMU- + VMSA + - iommu/vt-d: Add definitions for PFSID + - iommu/vt-d: Fix dev iotlb pfsid use + - sys: don't hold uts_sem while accessing userspace memory + - userns: move user access out of the mutex + - ubifs: Fix memory leak in lprobs self-check + - Revert "UBIFS: Fix potential integer overflow in allocation" + - ubifs: Check data node size before truncate + - ubifs: xattr: Don't operate on deleted inodes + - ubifs: Fix directory size calculation for symlinks + - ubifs: Fix synced_i_size calculation for xattr inodes + - pwm: tiehrpwm: Don't use emulation mode bits to control PWM output + - pwm: tiehrpwm: Fix disabling of output of PWMs + - fb: fix lost console when the user unplugs a USB adapter + - udlfb: fix semaphore value leak + - udlfb: fix display corruption of the last line + - udlfb: don't switch if we are switching to the same videomode + - udlfb: set optimal write delay + - udlfb: make a local copy of fb_ops + - udlfb: handle allocation failure + - udlfb: set line_length in dlfb_ops_set_par + - getxattr: use correct xattr length + - libnvdimm: Use max contiguous area for namespace size + - libnvdimm: fix ars_status output length calculation + - bcache: release dc->writeback_lock properly in bch_writeback_thread() + - kconfig: fix "Can't open ..." in parallel build + - perf auxtrace: Fix queue resize + - crypto: vmx - Fix sleep-in-atomic bugs + - crypto: aesni - Use unaligned loads from gcm_context_data + - crypto: arm64/sm4-ce - check for the right CPU feature bit + - crypto: caam - fix DMA mapping direction for RSA forms 2 & 3 + - crypto: caam/jr - fix descriptor DMA unmapping + - crypto: caam/qi - fix error path in xts setkey + - fs/quota: Fix spectre gadget in do_quotactl + - udf: Fix mounting of Win7 created UDF filesystems + - cpuidle: menu: Retain tick when shallow state is selected + - arm64: mm: always enable CONFIG_HOLES_IN_ZONE + - Linux 4.18.7 + + * CVE-2017-5715 + - s390: detect etoken facility + - KVM: s390: add etoken support for guests + + * Missing Intel GPU pci-id's (LP: #1789924) + - drm/i915/whl: Introducing Whiskey Lake platform + - drm/i915/aml: Introducing Amber Lake platform + - drm/i915/cfl: Add a new CFL PCI ID. + + * [18.10 FEAT] Add kernel config options for SMC-R/D (LP: #1789934) + - s390/ism: add device driver for internal shared memory + - CONFIG_ISM=y for s390 + + * Cosmic update to v4.18.6 stable release (LP: #1791105) + - PATCH scripts/kernel-doc + - scripts/kernel-doc: Escape all literal braces in regexes + - scsi: libsas: dynamically allocate and free ata host + - xprtrdma: Fix disconnect regression + - mei: don't update offset in write + - cifs: add missing support for ACLs in SMB 3.11 + - CIFS: fix uninitialized ptr deref in smb2 signing + - cifs: add missing debug entries for kconfig options + - cifs: use a refcount to protect open/closing the cached file handle + - cifs: check kmalloc before use + - smb3: enumerating snapshots was leaving part of the data off end + - smb3: Do not send SMB3 SET_INFO if nothing changed + - smb3: don't request leases in symlink creation and query + - smb3: fill in statfs fsid and correct namelen + - btrfs: use correct compare function of dirty_metadata_bytes + - btrfs: don't leak ret from do_chunk_alloc + - Btrfs: fix mount failure after fsync due to hard link recreation + - Btrfs: fix btrfs_write_inode vs delayed iput deadlock + - Btrfs: fix send failure when root has deleted files still open + - Btrfs: send, fix incorrect file layout after hole punching beyond eof + - hwmon: (k10temp) 27C Offset needed for Threadripper2 + - bpf, arm32: fix stack var offset in jit + - regulator: arizona-ldo1: Use correct device to get enable GPIO + - iommu/arm-smmu: Error out only if not enough context interrupts + - printk: Split the code for storing a message into the log buffer + - printk: Create helper function to queue deferred console handling + - printk/nmi: Prevent deadlock when accessing the main log buffer in NMI + - kprobes/arm64: Fix %p uses in error messages + - arm64: Fix mismatched cache line size detection + - arm64: Handle mismatched cache type + - arm64: mm: check for upper PAGE_SHIFT bits in pfn_valid() + - arm64: dts: rockchip: corrected uart1 clock-names for rk3328 + - KVM: arm/arm64: Fix potential loss of ptimer interrupts + - KVM: arm/arm64: Fix lost IRQs from emulated physcial timer when blocked + - KVM: arm/arm64: Skip updating PMD entry if no change + - KVM: arm/arm64: Skip updating PTE entry if no change + - s390/kvm: fix deadlock when killed by oom + - perf kvm: Fix subcommands on s390 + - stop_machine: Reflow cpu_stop_queue_two_works() + - stop_machine: Atomically queue and wake stopper threads + - ext4: check for NUL characters in extended attribute's name + - ext4: use ext4_warning() for sb_getblk failure + - ext4: sysfs: print ext4_super_block fields as little-endian + - ext4: reset error code in ext4_find_entry in fallback + - ext4: fix race when setting the bitmap corrupted flag + - x86/gpu: reserve ICL's graphics stolen memory + - platform/x86: wmi: Do not mix pages and kmalloc + - platform/x86: ideapad-laptop: Apply no_hw_rfkill to Y20-15IKBM, too + - mm: move tlb_table_flush to tlb_flush_mmu_free + - mm/tlb, x86/mm: Support invalidating TLB caches for RCU_TABLE_FREE + - x86/speculation/l1tf: Fix overflow in l1tf_pfn_limit() on 32bit + - x86/speculation/l1tf: Fix off-by-one error when warning that system has too + much RAM + - x86/speculation/l1tf: Suggest what to do on systems with too much RAM + - x86/vdso: Fix vDSO build if a retpoline is emitted + - x86/process: Re-export start_thread() + - KVM: x86: ensure all MSRs can always be KVM_GET/SET_MSR'd + - KVM: x86: SVM: Call x86_spec_ctrl_set_guest/host() with interrupts disabled + - fuse: Don't access pipe->buffers without pipe_lock() + - fuse: fix initial parallel dirops + - fuse: fix double request_end() + - fuse: fix unlocked access to processing queue + - fuse: umount should wait for all requests + - fuse: Fix oops at process_init_reply() + - fuse: Add missed unlock_page() to fuse_readpages_fill() + - lib/vsprintf: Do not handle %pO[^F] as %px + - udl-kms: change down_interruptible to down + - udl-kms: handle allocation failure + - udl-kms: fix crash due to uninitialized memory + - udl-kms: avoid division + - b43legacy/leds: Ensure NUL-termination of LED name string + - b43/leds: Ensure NUL-termination of LED name string + - ASoC: dpcm: don't merge format from invalid codec dai + - ASoC: zte: Fix incorrect PCM format bit usages + - ASoC: sirf: Fix potential NULL pointer dereference + - ASoC: wm_adsp: Correct DSP pointer for preloader control + - soc: qcom: rmtfs-mem: fix memleak in probe error paths + - pinctrl: freescale: off by one in imx1_pinconf_group_dbg_show() + - scsi: qla2xxx: Fix stalled relogin + - x86/vdso: Fix lsl operand order + - x86/nmi: Fix NMI uaccess race against CR3 switching + - x86/irqflags: Mark native_restore_fl extern inline + - x86/spectre: Add missing family 6 check to microcode check + - x86/speculation/l1tf: Increase l1tf memory limit for Nehalem+ + - hwmon: (nct6775) Fix potential Spectre v1 + - x86/entry/64: Wipe KASAN stack shadow before rewind_stack_do_exit() + - x86: Allow generating user-space headers without a compiler + - s390/mm: fix addressing exception after suspend/resume + - s390/lib: use expoline for all bcr instructions + - s390: fix br_r1_trampoline for machines without exrl + - s390/qdio: reset old sbal_state flags + - s390/numa: move initial setup of node_to_cpumask_map + - s390/purgatory: Fix crash with expoline enabled + - s390/purgatory: Add missing FORCE to Makefile targets + - kprobes: Show blacklist addresses as same as kallsyms does + - kprobes: Replace %p with other pointer types + - kprobes/arm: Fix %p uses in error messages + - kprobes: Make list and blacklist root user read only + - MIPS: Correct the 64-bit DSP accumulator register size + - MIPS: memset.S: Fix byte_fixup for MIPSr6 + - MIPS: Always use -march=, not - shortcuts + - MIPS: Change definition of cpu_relax() for Loongson-3 + - MIPS: lib: Provide MIPS64r6 __multi3() for GCC < 7 + - tpm: Return the actual size when receiving an unsupported command + - tpm: separate cmd_ready/go_idle from runtime_pm + - scsi: mpt3sas: Fix calltrace observed while running IO & reset + - scsi: mpt3sas: Fix _transport_smp_handler() error path + - scsi: sysfs: Introduce sysfs_{un,}break_active_protection() + - scsi: core: Avoid that SCSI device removal through sysfs triggers a deadlock + - iscsi target: fix session creation failure handling + - mtd: rawnand: hynix: Use ->exec_op() in hynix_nand_reg_write_op() + - mtd: rawnand: fsmc: Stop using chip->read_buf() + - mtd: rawnand: marvell: add suspend and resume hooks + - mtd: rawnand: qcom: wait for desc completion in all BAM channels + - clk: rockchip: fix clk_i2sout parent selection bits on rk3399 + - clk: npcm7xx: fix memory allocation + - PM / clk: signedness bug in of_pm_clk_add_clks() + - power: generic-adc-battery: fix out-of-bounds write when copying channel + properties + - power: generic-adc-battery: check for duplicate properties copied from iio + channels + - watchdog: Mark watchdog touch functions as notrace + - cdrom: Fix info leak/OOB read in cdrom_ioctl_drive_status + - x86/dumpstack: Don't dump kernel memory based on usermode RIP + - Linux 4.18.6 + - updateconfigs after v4.18.6 stable update + + * random oopses on s390 systems using NVMe devices (LP: #1790480) + - s390/pci: fix out of bounds access during irq setup + + * [18.10 FEAT] zcrypt DD: introduce APQN tags to support deterministic driver + binding (LP: #1784331) + - s390/zcrypt: code beautify + - s390/zcrypt: AP bus support for alternate driver(s) + - s390/zcrypt: hex string mask improvements for apmask and aqmask. + + * performance drop with ATS enabled (LP: #1788097) + - powerpc/powernv: Fix concurrency issue with npu->mmio_atsd_usage + + * Fix MCE handling for user access of poisoned device-dax mapping + (LP: #1774366) + - device-dax: Convert to vmf_insert_mixed and vm_fault_t + - device-dax: Enable page_mapping() + - device-dax: Set page->index + - filesystem-dax: Set page->index + - mm, madvise_inject_error: Disable MADV_SOFT_OFFLINE for ZONE_DEVICE pages + - mm, dev_pagemap: Do not clear ->mapping on final put + - mm, madvise_inject_error: Let memory_failure() optionally take a page + reference + - mm, memory_failure: Collect mapping size in collect_procs() + - filesystem-dax: Introduce dax_lock_mapping_entry() + - mm, memory_failure: Teach memory_failure() about dev_pagemap pages + - x86/mm/pat: Prepare {reserve, free}_memtype() for "decoy" addresses + - x86/memory_failure: Introduce {set, clear}_mce_nospec() + - libnvdimm, pmem: Restore page attributes when clearing errors + + * Reconcile hns3 SAUCE patches with upstream (LP: #1787477) + - Revert "UBUNTU: SAUCE: {topost} net: hns3: fix comments for + hclge_get_ring_chain_from_mbx" + - Revert "UBUNTU: SAUCE: {topost} net: hns3: fix for using wrong mask and + shift in hclge_get_ring_chain_from_mbx" + - Revert "UBUNTU: SAUCE: {topost} net: hns3: fix for reset_level default + assignment probelm" + - Revert "UBUNTU: SAUCE: {topost} net: hns3: remove unnecessary ring + configuration operation while resetting" + - Revert "UBUNTU: SAUCE: {topost} net: hns3: fix return value error in + hns3_reset_notify_down_enet" + - Revert "UBUNTU: SAUCE: net: hns3: Fix for phy link issue when using marvell + phy driver" + - Revert "UBUNTU: SAUCE: {topost} net: hns3: separate roce from nic when + resetting" + - Revert "UBUNTU: SAUCE: {topost} net: hns3: correct reset event status + register" + - Revert "UBUNTU: SAUCE: {topost} net: hns3: prevent to request reset + frequently" + - Revert "UBUNTU: SAUCE: {topost} net: hns3: reset net device with rtnl_lock" + - Revert "UBUNTU: SAUCE: {topost} net: hns3: modify the order of initializeing + command queue register" + - Revert "UBUNTU: SAUCE: {topost} net: hns3: prevent sending command during + global or core reset" + - Revert "UBUNTU: SAUCE: {topost} net: hns3: Use roce handle when calling roce + callback function" + - Revert "UBUNTU: SAUCE: {topost} net: hns3: remove the warning when clear + reset cause" + - Revert "UBUNTU: SAUCE: {topost} net: hns3: fix get_vector ops in + hclgevf_main module" + - Revert "UBUNTU: SAUCE: {topost} net: hns3: fix warning bug when doing lp + selftest" + - Revert "UBUNTU: SAUCE: {topost} net: hns3: Add configure for mac minimal + frame size" + - Revert "UBUNTU: SAUCE: {topost} net: hns3: fix for mailbox message truncated + problem" + - Revert "UBUNTU: SAUCE: {topost} net: hns3: fix for l4 checksum offload bug" + - Revert "UBUNTU: SAUCE: {topost} net: hns3: fix for waterline not setting + correctly" + - Revert "UBUNTU: SAUCE: {topost} net: hns3: fix for mac pause not disable in + pfc mode" + - Revert "UBUNTU: SAUCE: {topost} net: hns3: fix tc setup when netdev is first + up" + - Revert "UBUNTU: SAUCE: {topost} net: hns3: Add calling roce callback + function when link status change" + - Revert "UBUNTU: SAUCE: {topost} net: hns3: optimize the process of notifying + roce client" + - Revert "UBUNTU: SAUCE: {topost} net: hns3: Add pf reset for hip08 RoCE" + - Revert "UBUNTU: SAUCE: {topost} net: hns3: Add SPDX tags to hns3 driver" + - Revert "UBUNTU: SAUCE: {topost} net: hns3: remove unused struct member and + definition" + - Revert "UBUNTU: SAUCE: {topost} net: hns3: fix mislead parameter name" + - Revert "UBUNTU: SAUCE: {topost} net: hns3: modify inconsistent bit mask + macros" + - Revert "UBUNTU: SAUCE: {topost} net: hns3: use decimal for bit offset + macros" + - Revert "UBUNTU: SAUCE: {topost} net: hns3: fix unreasonable code comments" + - Revert "UBUNTU: SAUCE: {topost} net: hns3: remove extra space and brackets" + - Revert "UBUNTU: SAUCE: {topost} net: hns3: standardize the handle of return + value" + - Revert "UBUNTU: SAUCE: {topost} net: hns3: remove some redundant + assignments" + - Revert "UBUNTU: SAUCE: {topost} net: hns3: modify hnae_ to hnae3_" + - Revert "UBUNTU: SAUCE: {topost} net: hns3: use dma_zalloc_coherent instead + of kzalloc/dma_map_single" + - Revert "UBUNTU: SAUCE: {topost} net: hns3: give default option while + dependency HNS3 set" + - Revert "UBUNTU: SAUCE: {topost} net: hns3: remove some unused members of + some structures" + - Revert "UBUNTU: SAUCE: {topost} net: hns3: remove a redundant + hclge_cmd_csq_done" + - Revert "UBUNTU: SAUCE: {topost} net: hns3: using modulo for cyclic counters + in hclge_cmd_send" + - Revert "UBUNTU: SAUCE: {topost} net: hns3: simplify hclge_cmd_csq_clean" + - Revert "UBUNTU: SAUCE: {topost} net: hns3: remove some redundant + assignments" + - Revert "UBUNTU: SAUCE: {topost} net: hns3: remove useless code in + hclge_cmd_send" + - Revert "UBUNTU: SAUCE: {topost} net: hns3: remove unused + hclge_ring_to_dma_dir" + - Revert "UBUNTU: SAUCE: {topost} net: hns3: use lower_32_bits and + upper_32_bits" + - Revert "UBUNTU: SAUCE: {topost} net: hns3: remove back in struct hclge_hw" + - Revert "UBUNTU: SAUCE: {topost} net: hns3: add unlikely for error check" + - Revert "UBUNTU: SAUCE: {topost} net: hns3: remove the Redundant put_vector + in hns3_client_uninit" + - Revert "UBUNTU: SAUCE: {topost} net: hns3: print the ret value in error + information" + - Revert "UBUNTU: SAUCE: {topost} net: hns3: extraction an interface for state + state init|uninit" + - Revert "UBUNTU: SAUCE: {topost} net: hns3: remove unused head file in + hnae3.c" + - Revert "UBUNTU: SAUCE: {topost} net: hns3: add l4_type check for both ipv4 + and ipv6" + - Revert "UBUNTU: SAUCE: {topost} net: hns3: add vector status check before + free vector" + - Revert "UBUNTU: SAUCE: {topost} net: hns3: rename the interface for + init_client_instance and uninit_client_instance" + - Revert "UBUNTU: SAUCE: {topost} net: hns3: remove hclge_get_vector_index + from hclge_bind_ring_with_vector" + - Revert "UBUNTU: SAUCE: {topost} net: hns3: RX BD information valid only in + last BD except VLD bit and buffer size" + - Revert "UBUNTU: SAUCE: {topost} net: hns3: add support for serdes loopback + selftest" + - net: hns3: Updates RX packet info fetch in case of multi BD + - net: hns3: remove hclge_get_vector_index from hclge_bind_ring_with_vector + - net: hns3: rename the interface for init_client_instance and + uninit_client_instance + - net: hns3: add vector status check before free vector + - net: hns3: add l4_type check for both ipv4 and ipv6 + - net: hns3: add unlikely for error check + - net: hns3: remove unused head file in hnae3.c + - net: hns3: extraction an interface for state init|uninit + - net: hns3: print the ret value in error information + - net: hns3: remove the Redundant put_vector in hns3_client_uninit + - net: hns3: remove back in struct hclge_hw + - net: hns3: use lower_32_bits and upper_32_bits + - net: hns3: remove unused hclge_ring_to_dma_dir + - net: hns3: remove useless code in hclge_cmd_send + - net: hns3: remove some redundant assignments + - net: hns3: simplify hclge_cmd_csq_clean + - net: hns3: remove a redundant hclge_cmd_csq_done + - net: hns3: remove some unused members of some structures + - net: hns3: give default option while dependency HNS3 set + - net: hns3: use dma_zalloc_coherent instead of kzalloc/dma_map_single + - net: hns3: modify hnae_ to hnae3_ + - net: hns3: Fix tc setup when netdev is first up + - net: hns3: Fix for mac pause not disable in pfc mode + - net: hns3: Fix for waterline not setting correctly + - net: hns3: Fix for l4 checksum offload bug + - net: hns3: Fix for mailbox message truncated problem + - net: hns3: Add configure for mac minimal frame size + - net: hns3: Fix warning bug when doing lp selftest + - net: hns3: Fix get_vector ops in hclgevf_main module + - net: hns3: Remove the warning when clear reset cause + - net: hns3: Prevent sending command during global or core reset + - net: hns3: Modify the order of initializing command queue register + - net: hns3: Reset net device with rtnl_lock + - net: hns3: Prevent to request reset frequently + - net: hns3: Correct reset event status register + - net: hns3: Fix return value error in hns3_reset_notify_down_enet + - net: hns3: remove unnecessary ring configuration operation while resetting + - net: hns3: Fix for reset_level default assignment probelm + - net: hns3: Fix for using wrong mask and shift in + hclge_get_ring_chain_from_mbx + - net: hns3: Fix comments for hclge_get_ring_chain_from_mbx + - net: hns3: Remove some redundant assignments + - net: hns3: Standardize the handle of return value + - net: hns3: Remove extra space and brackets + - net: hns3: Correct unreasonable code comments + - net: hns3: Use decimal for bit offset macros + - net: hns3: Modify inconsistent bit mask macros + - net: hns3: Fix misleading parameter name + - net: hns3: Remove unused struct member and definition + - net: hns3: Add SPDX tags to HNS3 PF driver + - net: hns3: Add support for serdes loopback selftest + - net: hns3: Fix for phy link issue when using marvell phy driver + + * [Regression] kernel crashdump fails on arm64 (LP: #1786878) + - arm64: export memblock_reserve()d regions via /proc/iomem + - drivers: acpi: add dependency of EFI for arm64 + - efi/arm: preserve early mapping of UEFI memory map longer for BGRT + - efi/arm: map UEFI memory map even w/o runtime services enabled + - arm64: acpi: fix alignment fault in accessing ACPI + - [Config] CONFIG_ARCH_SUPPORTS_ACPI=y + - arm64: fix ACPI dependencies + - ACPI: fix menuconfig presentation of ACPI submenu + + * TB 16 issue on Dell Lattitude 7490 with large amount of data (LP: #1785780) + - r8152: disable RX aggregation on new Dell TB16 dock + + * Support Power Management for Thunderbolt Controller (LP: #1789358) + - thunderbolt: Use 64-bit DMA mask if supported by the platform + - thunderbolt: Do not unnecessarily call ICM get route + - thunderbolt: No need to take tb->lock in domain suspend/complete + - thunderbolt: Use correct ICM commands in system suspend + - thunderbolt: Add support for runtime PM + + * Enable AMD PCIe MP2 for AMDI0011 (LP: #1773940) + - SAUCE: i2c:amd I2C Driver based on PCI Interface for upcoming platform + - SAUCE: i2c:amd move out pointer in union i2c_event_base + - SAUCE: i2c:amd Depends on ACPI + - [Config] i2c: CONFIG_I2C_AMD_MP2=y on x86 + + * Microphone cannot be detected with front panel audio combo jack on HP Z8-G4 + machine (LP: #1789145) + - ALSA: hda/realtek - Fix HP Headset Mic can't record + + * Please enable CONFIG_PAGE_POISONING (LP: #1783651) + - [Config] Enable CONFIG_PAGE_POISONING configs + + * Tango platform uses __initcall without further checks (LP: #1787945) + - [Config] disable ARCH_TANGO + + * [18.10 FEAT] SMC-Direct (LP: #1786902) + - net/smc: determine port attributes independent from pnet table + - net/smc: add pnetid support + - net/smc: add base infrastructure for SMC-D and ISM + - net/smc: add pnetid support for SMC-D and ISM + - net/smc: add SMC-D support in CLC messages + - net/smc: add SMC-D support in data transfer + - net/smc: add SMC-D support in af_smc + - net/smc: add SMC-D diag support + - net/smc: provide smc mode in smc_diag.c + - net/smc: eliminate cursor read and write calls + - net/smc: add function to get link group from link + - net/smc: use DECLARE_BITMAP for rtokens_used_mask + - net/smc: remove local variable page in smc_rx_splice() + - net/smc: Remove a WARN_ON() statement + - net/smc: Simplify ib_post_(send|recv|srq_recv)() calls + - net/smc: fewer parameters for smc_llc_send_confirm_link() + - net/smc: use correct vlan gid of RoCE device + - net/smc: provide fallback reason code + - net/smc: improve delete link processing + - net: simplify sock_poll_wait + - net/smc: send response to test link signal + + * Miscellaneous Ubuntu changes + - [Config] update annotations for CONFIG_CRYPTO_SPECK_NEON + - [Config] fix up annotatios for CONFIG_CRYPTO_SPECK + + -- Seth Forshee Mon, 10 Sep 2018 07:08:38 -0500 + +linux (4.18.0-7.8) cosmic; urgency=medium + + * linux: 4.18.0-7.8 -proposed tracker (LP: #1789459) + + * pmtu.sh fails on 4.18 kernel (LP: #1789436) + - SAUCE: Revert "vti6: fix PMTU caching and reporting on xmit" + + -- Seth Forshee Tue, 28 Aug 2018 11:08:51 -0500 + +linux (4.18.0-6.7) cosmic; urgency=medium + + * linux: 4.18.0-6.7 -proposed tracker (LP: #1788881) + + * systemd 237-3ubuntu10 ADT test failure with linux 4.18.0-5.6 (LP: #1787440) + - Config: Disable BPF_JIT_ALWAYS_ON on i386 + + * execveat03 in ubuntu_ltp_syscalls failed on X/B (LP: #1786729) + - cap_inode_getsecurity: use d_find_any_alias() instead of d_find_alias() + + * Cosmic update to v4.18.5 stable release (LP: #1788874) + - EDAC: Add missing MEM_LRDDR4 entry in edac_mem_types[] + - pty: fix O_CLOEXEC for TIOCGPTPEER + - mm: Allow non-direct-map arguments to free_reserved_area() + - x86/mm/init: Pass unconverted symbol addresses to free_init_pages() + - x86/mm/init: Add helper for freeing kernel image pages + - x86/mm/init: Remove freed kernel image areas from alias mapping + - powerpc64s: Show ori31 availability in spectre_v1 sysfs file not v2 + - ext4: fix spectre gadget in ext4_mb_regular_allocator() + - drm/i915/kvmgt: Fix potential Spectre v1 + - drm/amdgpu/pm: Fix potential Spectre v1 + - parisc: Remove unnecessary barriers from spinlock.h + - parisc: Remove ordered stores from syscall.S + - PCI: Restore resized BAR state on resume + - PCI / ACPI / PM: Resume all bridges on suspend-to-RAM + - PCI: hotplug: Don't leak pci_slot on registration failure + - PCI: aardvark: Size bridges before resources allocation + - PCI: Skip MPS logic for Virtual Functions (VFs) + - PCI: pciehp: Fix use-after-free on unplug + - PCI: pciehp: Fix unprotected list iteration in IRQ handler + - i2c: core: ACPI: Properly set status byte to 0 for multi-byte writes + - i2c: imx: Fix race condition in dma read + - reiserfs: fix broken xattr handling (heap corruption, bad retval) + - Linux 4.18.5 + + * [18.10 FEAT] Add kernel config option "CONFIG_SCLP_OFB" (LP: #1787898) + - [Config] CONFIG_SCLP_OFB=y for s390x + + * errors when scanning partition table of corrupted AIX disk (LP: #1787281) + - partitions/aix: fix usage of uninitialized lv_info and lvname structures + - partitions/aix: append null character to print data from disk + + * Apply NVMe bugfix from Google that bjf asked for (LP: #1787635) + - nvme-pci: add a memory barrier to nvme_dbbuf_update_and_check_event + + * ThinkPad systems have no HDMI sound when using the nvidia GPU (LP: #1787058) + - ACPI / OSI: Add OEM _OSI string to enable NVidia HDMI audio + + * Cosmic update to v4.18.4 stable release (LP: #1788454) + - l2tp: use sk_dst_check() to avoid race on sk->sk_dst_cache + - net_sched: fix NULL pointer dereference when delete tcindex filter + - net_sched: Fix missing res info when create new tc_index filter + - r8169: don't use MSI-X on RTL8168g + - ALSA: hda - Sleep for 10ms after entering D3 on Conexant codecs + - ALSA: hda - Turn CX8200 into D3 as well upon reboot + - ALSA: vx222: Fix invalid endian conversions + - ALSA: virmidi: Fix too long output trigger loop + - ALSA: cs5535audio: Fix invalid endian conversion + - ALSA: dice: fix wrong copy to rx parameters for Alesis iO26 + - ALSA: hda: Correct Asrock B85M-ITX power_save blacklist entry + - ALSA: memalloc: Don't exceed over the requested size + - ALSA: vxpocket: Fix invalid endian conversions + - ALSA: seq: Fix poll() error return + - media: gl861: fix probe of dvb_usb_gl861 + - USB: serial: sierra: fix potential deadlock at close + - USB: serial: pl2303: add a new device id for ATEN + - USB: option: add support for DW5821e + - ACPI / PM: save NVS memory for ASUS 1025C laptop + - tty: serial: 8250: Revert NXP SC16C2552 workaround + - serial: 8250_exar: Read INT0 from slave device, too + - serial: 8250_dw: always set baud rate in dw8250_set_termios + - serial: 8250_dw: Add ACPI support for uart on Broadcom SoC + - uio: fix wrong return value from uio_mmap() + - misc: sram: fix resource leaks in probe error path + - Revert "uio: use request_threaded_irq instead" + - Bluetooth: avoid killing an already killed socket + - isdn: Disable IIOCDBGVAR + - net: sock_diag: Fix spectre v1 gadget in __sock_diag_cmd() + - hv/netvsc: Fix NULL dereference at single queue mode fallback + - r8169: don't use MSI-X on RTL8106e + - ip_vti: fix a null pointer deferrence when create vti fallback tunnel + - net: ethernet: mvneta: Fix napi structure mixup on armada 3700 + - net: mvneta: fix mvneta_config_rss on armada 3700 + - cls_matchall: fix tcf_unbind_filter missing + - Linux 4.18.4 + + * Cosmic update to v4.18.3 stable release (LP: #1788453) + - x86/speculation/l1tf: Exempt zeroed PTEs from inversion + - Linux 4.18.3 + + * Cosmic update to v4.18.2 stable release (LP: #1788452) + - x86/l1tf: Fix build error seen if CONFIG_KVM_INTEL is disabled + - x86: i8259: Add missing include file + - x86/hyper-v: Check for VP_INVAL in hyperv_flush_tlb_others() + - x86/platform/UV: Mark memblock related init code and data correctly + - x86/mm/pti: Clear Global bit more aggressively + - xen/pv: Call get_cpu_address_sizes to set x86_virt/phys_bits + - x86/mm: Disable ioremap free page handling on x86-PAE + - kbuild: verify that $DEPMOD is installed + - crypto: ccree - fix finup + - crypto: ccree - fix iv handling + - crypto: ccp - Check for NULL PSP pointer at module unload + - crypto: ccp - Fix command completion detection race + - crypto: x86/sha256-mb - fix digest copy in sha256_mb_mgr_get_comp_job_avx2() + - crypto: vmac - require a block cipher with 128-bit block size + - crypto: vmac - separate tfm and request context + - crypto: blkcipher - fix crash flushing dcache in error path + - crypto: ablkcipher - fix crash flushing dcache in error path + - crypto: skcipher - fix aligning block size in skcipher_copy_iv() + - crypto: skcipher - fix crash flushing dcache in error path + - ioremap: Update pgtable free interfaces with addr + - x86/mm: Add TLB purge to free pmd/pte page interfaces + - Linux 4.18.2 + + * Cosmic update to v4.18.2 stable release (LP: #1788452) // CVE-2018-9363 + - Bluetooth: hidp: buffer overflow in hidp_process_report + + * linux-cloud-tools-common: Ensure hv-kvp-daemon.service starts before + walinuxagent.service (LP: #1739107) + - [Debian] hyper-v -- Ensure that hv-kvp-daemon.service starts before + walinuxagent.service + + * Miscellaneous Ubuntu changes + - SAUCE: ipvs: remove nbsp characters from Kconfig + - [Config] CONFIG_MPROFILE_KERNEL=y for ppc64el + - [Config] CONFIG_DRM_RCAR_LVDS=m for snapdragon + - [Config] CONFIG_MDIO_MSCC_MIIM=n for s390x + - [Config] CONFIG_NET_VENDOR_MICROSEMI=n, CONFIG_NET_VENDOR_NI=n for s390x + - [Config] update annotations following config review + - [Debian] set CROSS_COMPILE when generating kernel configs + - [Config] Disable the Speck cipher + + -- Seth Forshee Fri, 24 Aug 2018 14:18:15 -0500 + +linux (4.18.0-5.6) cosmic; urgency=medium + + * Cosmic update to v4.18.1 stable release (LP: #1787264) + - x86/paravirt: Fix spectre-v2 mitigations for paravirt guests + - x86/speculation: Protect against userspace-userspace spectreRSB + - kprobes/x86: Fix %p uses in error messages + - x86/irqflags: Provide a declaration for native_save_fl + - x86/speculation/l1tf: Increase 32bit PAE __PHYSICAL_PAGE_SHIFT + - x86/speculation/l1tf: Change order of offset/type in swap entry + - x86/speculation/l1tf: Protect swap entries against L1TF + - x86/speculation/l1tf: Protect PROT_NONE PTEs against speculation + - x86/speculation/l1tf: Make sure the first page is always reserved + - x86/speculation/l1tf: Add sysfs reporting for l1tf + - x86/speculation/l1tf: Disallow non privileged high MMIO PROT_NONE mappings + - x86/speculation/l1tf: Limit swap file size to MAX_PA/2 + - x86/bugs: Move the l1tf function and define pr_fmt properly + - sched/smt: Update sched_smt_present at runtime + - x86/smp: Provide topology_is_primary_thread() + - x86/topology: Provide topology_smt_supported() + - cpu/hotplug: Make bringup/teardown of smp threads symmetric + - cpu/hotplug: Split do_cpu_down() + - cpu/hotplug: Provide knobs to control SMT + - x86/cpu: Remove the pointless CPU printout + - x86/cpu/AMD: Remove the pointless detect_ht() call + - x86/cpu/common: Provide detect_ht_early() + - x86/cpu/topology: Provide detect_extended_topology_early() + - x86/cpu/intel: Evaluate smp_num_siblings early + - x86/CPU/AMD: Do not check CPUID max ext level before parsing SMP info + - x86/cpu/AMD: Evaluate smp_num_siblings early + - x86/apic: Ignore secondary threads if nosmt=force + - x86/speculation/l1tf: Extend 64bit swap file size limit + - x86/cpufeatures: Add detection of L1D cache flush support. + - x86/CPU/AMD: Move TOPOEXT reenablement before reading smp_num_siblings + - x86/speculation/l1tf: Protect PAE swap entries against L1TF + - x86/speculation/l1tf: Fix up pte->pfn conversion for PAE + - Revert "x86/apic: Ignore secondary threads if nosmt=force" + - cpu/hotplug: Boot HT siblings at least once + - x86/KVM: Warn user if KVM is loaded SMT and L1TF CPU bug being present + - x86/KVM/VMX: Add module argument for L1TF mitigation + - x86/KVM/VMX: Add L1D flush algorithm + - x86/KVM/VMX: Add L1D MSR based flush + - x86/KVM/VMX: Add L1D flush logic + - x86/KVM/VMX: Split the VMX MSR LOAD structures to have an host/guest numbers + - x86/KVM/VMX: Add find_msr() helper function + - x86/KVM/VMX: Separate the VMX AUTOLOAD guest/host number accounting + - x86/KVM/VMX: Extend add_atomic_switch_msr() to allow VMENTER only MSRs + - x86/KVM/VMX: Use MSR save list for IA32_FLUSH_CMD if required + - cpu/hotplug: Online siblings when SMT control is turned on + - x86/litf: Introduce vmx status variable + - x86/kvm: Drop L1TF MSR list approach + - x86/l1tf: Handle EPT disabled state proper + - x86/kvm: Move l1tf setup function + - x86/kvm: Add static key for flush always + - x86/kvm: Serialize L1D flush parameter setter + - x86/kvm: Allow runtime control of L1D flush + - cpu/hotplug: Expose SMT control init function + - cpu/hotplug: Set CPU_SMT_NOT_SUPPORTED early + - x86/bugs, kvm: Introduce boot-time control of L1TF mitigations + - Documentation: Add section about CPU vulnerabilities + - x86/speculation/l1tf: Unbreak !__HAVE_ARCH_PFN_MODIFY_ALLOWED architectures + - x86/KVM/VMX: Initialize the vmx_l1d_flush_pages' content + - Documentation/l1tf: Fix typos + - cpu/hotplug: detect SMT disabled by BIOS + - x86/KVM/VMX: Don't set l1tf_flush_l1d to true from vmx_l1d_flush() + - x86/KVM/VMX: Replace 'vmx_l1d_flush_always' with 'vmx_l1d_flush_cond' + - x86/KVM/VMX: Move the l1tf_flush_l1d test to vmx_l1d_flush() + - x86/irq: Demote irq_cpustat_t::__softirq_pending to u16 + - x86/KVM/VMX: Introduce per-host-cpu analogue of l1tf_flush_l1d + - x86: Don't include linux/irq.h from asm/hardirq.h + - x86/irq: Let interrupt handlers set kvm_cpu_l1tf_flush_l1d + - x86/KVM/VMX: Don't set l1tf_flush_l1d from vmx_handle_external_intr() + - Documentation/l1tf: Remove Yonah processors from not vulnerable list + - x86/speculation: Simplify sysfs report of VMX L1TF vulnerability + - x86/speculation: Use ARCH_CAPABILITIES to skip L1D flush on vmentry + - KVM: VMX: Tell the nested hypervisor to skip L1D flush on vmentry + - cpu/hotplug: Fix SMT supported evaluation + - x86/speculation/l1tf: Invert all not present mappings + - x86/speculation/l1tf: Make pmd/pud_mknotpresent() invert + - x86/mm/pat: Make set_memory_np() L1TF safe + - x86/mm/kmmio: Make the tracer robust against L1TF + - tools headers: Synchronise x86 cpufeatures.h for L1TF additions + - x86/microcode: Allow late microcode loading with SMT disabled + - x86/smp: fix non-SMP broken build due to redefinition of + apic_id_is_primary_thread + - cpu/hotplug: Non-SMP machines do not make use of booted_once + - x86/init: fix build with CONFIG_SWAP=n + - Linux 4.18.1 + - [Config] updateconfigs after v4.18.1 stable update + + * Consider enabling CONFIG_NETWORK_PHY_TIMESTAMPING (LP: #1785816) + - [Config] Enable timestamping in network PHY devices + + * Miscellaneous Ubuntu changes + - [Config] CONFIG_SYSCTL_SYSCALL=n + + [ Upstream Kernel Changes ] + + * Rebase to v4.18 + + -- Seth Forshee Wed, 15 Aug 2018 14:20:59 -0500 + +linux (4.18.0-4.5) cosmic; urgency=medium + + [ Upstream Kernel Changes ] + + * Rebase to v4.18-rc8 + + -- Seth Forshee Mon, 06 Aug 2018 13:54:02 -0500 + +linux (4.18.0-3.4) cosmic; urgency=medium + + * Suspend fails in Ubuntu and Kubuntu 18.04 but works fine in Ubuntu and + Kubuntu 17.10 (and on Kubuntu 18.04 using kernel 4.14.47) (LP: #1774950) + - ACPI / LPSS: Avoid PM quirks on suspend and resume from hibernation + + * hinic interfaces aren't getting predictable names (LP: #1783138) + - hinic: Link the logical network device to the pci device in sysfs + + * libvirtd is unable to configure bridge devices inside of LXD containers + (LP: #1784501) + - kernfs: allow creating kernfs objects with arbitrary uid/gid + - sysfs, kobject: allow creating kobject belonging to arbitrary users + - kobject: kset_create_and_add() - fetch ownership info from parent + - driver core: set up ownership of class devices in sysfs + - net-sysfs: require net admin in the init ns for setting tx_maxrate + - net-sysfs: make sure objects belong to container's owner + - net: create reusable function for getting ownership info of sysfs inodes + - bridge: make sure objects belong to container's owner + - sysfs: Fix regression when adding a file to an existing group + + * locking sockets broken due to missing AppArmor socket mediation patches + (LP: #1780227) + - UBUNTU SAUCE: apparmor: fix apparmor mediating locking non-fs, unix sockets + + * Update2 for ocxl driver (LP: #1781436) + - ocxl: Fix page fault handler in case of fault on dying process + + * HDMI/DP audio can't work on the laptop of Dell Latitude 5495 (LP: #1782689) + - ALSA: hda: use PCI_BASE_CLASS_DISPLAY to replace PCI_CLASS_DISPLAY_VGA + - vga_switcheroo: set audio client id according to bound GPU id + + * Allow Raven Ridge's audio controller to be runtime suspended (LP: #1782540) + - ALSA: hda: Add AZX_DCAPS_PM_RUNTIME for AMD Raven Ridge + + * Invoking obsolete 'firmware_install' target breaks snap build (LP: #1782166) + - snapcraft.yaml: stop invoking the obsolete (and non-existing) + 'firmware_install' target + + * snapcraft.yaml: missing ubuntu-retpoline-extract-one script breaks the build + (LP: #1782116) + - snapcraft.yaml: copy retpoline-extract-one to scripts before build + + [ Upstream Kernel Changes ] + + * Rebase to v4.18-rc7 + + -- Seth Forshee Wed, 01 Aug 2018 08:49:40 -0500 + +linux (4.18.0-2.3) cosmic; urgency=medium + + * Kernel error "task zfs:pid blocked for more than 120 seconds" (LP: #1781364) + - SAUCE: (noup) zfs to 0.7.9-3ubuntu4 + + * [Regression] EXT4-fs error (device sda1): ext4_validate_inode_bitmap:99: + comm stress-ng: Corrupt inode bitmap (LP: #1780137) + - SAUCE: ext4: fix ext4_validate_inode_bitmap: comm stress-ng: Corrupt inode + bitmap + + * Cloud-init causes potentially huge boot delays with 4.15 kernels + (LP: #1780062) + - random: Make getrandom() ready earlier + + * hisi_sas_v3_hw: internal task abort: timeout and not done. (LP: #1777736) + - scsi: hisi_sas: Update a couple of register settings for v3 hw + + * hisi_sas: Add missing PHY spinlock init (LP: #1777734) + - scsi: hisi_sas: Add missing PHY spinlock init + + * hisi_sas: improve read performance by pre-allocating slot DMA buffers + (LP: #1777727) + - scsi: hisi_sas: Use dmam_alloc_coherent() + - scsi: hisi_sas: Pre-allocate slot DMA buffers + + * hisi_sas: Failures during host reset (LP: #1777696) + - scsi: hisi_sas: Only process broadcast change in phy_bcast_v3_hw() + - scsi: hisi_sas: Fix the conflict between dev gone and host reset + - scsi: hisi_sas: Adjust task reject period during host reset + - scsi: hisi_sas: Add a flag to filter PHY events during reset + - scsi: hisi_sas: Release all remaining resources in clear nexus ha + + * Miscellaneous Ubuntu changes + - SAUCE: (noup) Update spl to 0.7.9-3ubuntu2, zfs to 0.7.9-3ubuntu3 + - SAUCE: mm: Fix exports that inadvertently make put_page() EXPORT_SYMBOL_GPL + - Enable zfs build + - SAUCE: Import aufs driver + - Revert "UBUNTU: [Config]: set CONFIG_EDAC_DEBUG=y for ARM64" + - [Config] retpoline -- review and accept retpoline changes + + [ Upstream Kernel Changes ] + + * Rebase to v4.18-rc5 + * Rebase to v4.18-rc6 + + -- Seth Forshee Tue, 24 Jul 2018 08:41:22 -0500 + +linux (4.18.0-1.2) cosmic; urgency=medium + + [ Upstream Kernel Changes ] + + * Rebase to v4.18-rc4 + + -- Seth Forshee Mon, 09 Jul 2018 07:36:31 -0500 + +linux (4.18.0-0.1) cosmic; urgency=medium + + * Miscellaneous Ubuntu changes + - ubuntu -- disable vbox build + - Disable zfs build + - SAUCE: (efi-lockdown) Add the ability to lock down access to the running + kernel image + - SAUCE: (efi-lockdown) Add a SysRq option to lift kernel lockdown + - SAUCE: (efi-lockdown) ima: require secure_boot rules in lockdown mode + - SAUCE: (efi-lockdown) Enforce module signatures if the kernel is locked down + - SAUCE: (efi-lockdown) Restrict /dev/{mem,kmem,port} when the kernel is + locked down + - SAUCE: (efi-lockdown) kexec_load: Disable at runtime if the kernel is locked + down + - SAUCE: (efi-lockdown) hibernate: Disable when the kernel is locked down + - SAUCE: (efi-lockdown) uswsusp: Disable when the kernel is locked down + - SAUCE: (efi-lockdown) PCI: Lock down BAR access when the kernel is locked + down + - SAUCE: (efi-lockdown) x86: Lock down IO port access when the kernel is + locked down + - SAUCE: (efi-lockdown) x86/msr: Restrict MSR access when the kernel is locked + down + - SAUCE: (efi-lockdown) ACPI: Limit access to custom_method when the kernel is + locked down + - SAUCE: (efi-lockdown) acpi: Ignore acpi_rsdp kernel param when the kernel + has been locked down + - SAUCE: (efi-lockdown) acpi: Disable ACPI table override if the kernel is + locked down + - SAUCE: (efi-lockdown) acpi: Disable APEI error injection if the kernel is + locked down + - SAUCE: (efi-lockdown) Prohibit PCMCIA CIS storage when the kernel is locked + down + - SAUCE: (efi-lockdown) Lock down TIOCSSERIAL + - SAUCE: (efi-lockdown) Lock down module params that specify hardware + parameters (eg. ioport) + - SAUCE: (efi-lockdown) x86/mmiotrace: Lock down the testmmiotrace module + - SAUCE: (efi-lockdown) Lock down /proc/kcore + - SAUCE: (efi-lockdown) Lock down kprobes + - SAUCE: (efi-lockdown) bpf: Restrict kernel image access functions when the + kernel is locked down + - SAUCE: (efi-lockdown) Lock down perf + - SAUCE: (efi-lockdown) debugfs: Restrict debugfs when the kernel is locked + down + - SAUCE: (efi-lockdown) Copy secure_boot flag in boot params across kexec + reboot + - SAUCE: (efi-lockdown) efi: Add an EFI_SECURE_BOOT flag to indicate secure + boot mode + - SAUCE: (efi-lockdown) efi: Lock down the kernel if booted in secure boot + mode + - SAUCE: (efi-lockdown) KEYS: Allow unrestricted boot-time addition of keys to + secondary keyring + - SAUCE: (efi-lockdown) efi: Add EFI signature data types + - SAUCE: (efi-lockdown) efi: Add an EFI signature blob parser + - SAUCE: (efi-lockdown) MODSIGN: Import certificates from UEFI Secure Boot + - SAUCE: (efi-lockdown) MODSIGN: Allow the "db" UEFI variable to be suppressed + - SAUCE: (efi-lockdown) Make get_cert_list() not complain about cert lists + that aren't present. + - SAUCE: (efi-lockdown) Add efi_status_to_str() and rework + efi_status_to_err(). + - SAUCE: (efi-lockdown) Make get_cert_list() use efi_status_to_str() to print + error messages. + - SAUCE: (efi-lockdown) lockdown: fix coordination of kernel module signature + verification + - SAUCE: (efi-lockdown) efi: Sanitize boot_params in efi stub + - SAUCE: (efi-lockdown) efi: Don't print secure boot state from the efi stub + - SAUCE: (namespace) block_dev: Support checking inode permissions in + lookup_bdev() + - SAUCE: (namespace) block_dev: Check permissions towards block device inode + when mounting + - SAUCE: (namespace) mtd: Check permissions towards mtd block device inode + when mounting + - SAUCE: (namespace) ext4: Add support for unprivileged mounts from user + namespaces + - SAUCE: (namespace) ext4: Add module parameter to enable user namespace + mounts + - SAUCE: (namespace) block_dev: Forbid unprivileged mounting when device is + opened for writing + - SAUCE: Import aufs driver + - Update dropped.txt + - [Config] updateconfigs after 4.18-rc3 rebase + - SAUCE: (no-up): ASoC: Intel: bytcr-rt5660: Remove snd_soc_codec use for 4.18 + + [ Upstream Kernel Changes ] + + * Rebase to v4.18-rc3 + + -- Seth Forshee Fri, 06 Jul 2018 10:46:37 -0500 + +linux (4.18.0-0.0) cosmic; urgency=medium + + * Dummy entry. + + -- Seth Forshee Tue, 03 Jul 2018 11:10:33 -0500 + +linux (4.17.0-4.5) cosmic; urgency=medium + + * linux: 4.17.0-4.5 -proposed tracker (LP: #1779399) + + * Update to ocxl driver for 18.04.1 (LP: #1775786) + - powerpc: Add TIDR CPU feature for POWER9 + - powerpc: Use TIDR CPU feature to control TIDR allocation + - powerpc: use task_pid_nr() for TID allocation + - ocxl: Rename pnv_ocxl_spa_remove_pe to clarify it's action + - ocxl: Expose the thread_id needed for wait on POWER9 + - ocxl: Add an IOCTL so userspace knows what OCXL features are available + - ocxl: Document new OCXL IOCTLs + - ocxl: Fix missing unlock on error in afu_ioctl_enable_p9_wait() + + * Please include ax88179_178a and r8152 modules in d-i udeb (LP: #1771823) + - [Config:] d-i: Add ax88179_178a and r8152 to nic-modules + + * glibc pkeys test fail on powerpc (LP: #1776967) + - [Config] Temporarily disable CONFIG_PPC_MEM_KEYS + + * After update to 4.13-43 Intel Graphics are Laggy (LP: #1773520) + - Revert "drm/i915/edp: Allow alternate fixed mode for eDP if available." + + * Miscellaneous Ubuntu changes + - SAUCE: (noup) Update spl to 0.7.9-3ubuntu1, zfs to 0.7.9-3ubuntu1 + + -- Seth Forshee Fri, 29 Jun 2018 13:37:52 -0500 + +linux (4.17.0-3.4) cosmic; urgency=medium + + * linux: 4.17.0-3.4 -proposed tracker (LP: #1779124) + + * Cosmic update to v4.17.3 stable release (LP: #1778997) + - net: aquantia: fix unsigned numvecs comparison with less than zero + - bonding: re-evaluate force_primary when the primary slave name changes + - cdc_ncm: avoid padding beyond end of skb + - ipv6: allow PMTU exceptions to local routes + - net: dsa: add error handling for pskb_trim_rcsum + - net: phy: dp83822: use BMCR_ANENABLE instead of BMSR_ANEGCAPABLE for DP83620 + - net/sched: act_simple: fix parsing of TCA_DEF_DATA + - tcp: verify the checksum of the first data segment in a new connection + - tls: fix use-after-free in tls_push_record + - tls: fix waitall behavior in tls_sw_recvmsg + - socket: close race condition between sock_close() and sockfs_setattr() + - udp: fix rx queue len reported by diag and proc interface + - net: in virtio_net_hdr only add VLAN_HLEN to csum_start if payload holds + vlan + - hv_netvsc: Fix a network regression after ifdown/ifup + - ACPICA: AML parser: attempt to continue loading table after error + - ext4: fix hole length detection in ext4_ind_map_blocks() + - ext4: update mtime in ext4_punch_hole even if no blocks are released + - ext4: do not allow external inodes for inline data + - ext4: bubble errors from ext4_find_inline_data_nolock() up to ext4_iget() + - ext4: correctly handle a zero-length xattr with a non-zero e_value_offs + - ext4: fix fencepost error in check for inode count overflow during resize + - driver core: Don't ignore class_dir_create_and_add() failure. + - Btrfs: allow empty subvol= again + - Btrfs: fix clone vs chattr NODATASUM race + - Btrfs: fix memory and mount leak in btrfs_ioctl_rm_dev_v2() + - btrfs: return error value if create_io_em failed in cow_file_range + - btrfs: scrub: Don't use inode pages for device replace + - ALSA: usb-audio: Disable the quirk for Nura headset + - ALSA: hda/conexant - Add fixup for HP Z2 G4 workstation + - ALSA: hda - Handle kzalloc() failure in snd_hda_attach_pcm_stream() + - ALSA: hda: add dock and led support for HP EliteBook 830 G5 + - ALSA: hda: add dock and led support for HP ProBook 640 G4 + - x86/MCE: Fix stack out-of-bounds write in mce-inject.c: Flags_read() + - smb3: fix various xid leaks + - smb3: on reconnect set PreviousSessionId field + - CIFS: 511c54a2f69195b28afb9dd119f03787b1625bb4 adds a check for session + expiry + - cifs: For SMB2 security informaion query, check for minimum sized security + descriptor instead of sizeof FileAllInformation class + - nbd: fix nbd device deletion + - nbd: update size when connected + - nbd: use bd_set_size when updating disk size + - blk-mq: reinit q->tag_set_list entry only after grace period + - bdi: Move cgroup bdi_writeback to a dedicated low concurrency workqueue + - cpufreq: Fix new policy initialization during limits updates via sysfs + - cpufreq: ti-cpufreq: Fix an incorrect error return value + - cpufreq: governors: Fix long idle detection logic in load calculation + - libata: zpodd: small read overflow in eject_tray() + - libata: Drop SanDisk SD7UB3Q*G1001 NOLPM quirk + - nvme/pci: Sync controller reset for AER slot_reset + - w1: mxc_w1: Enable clock before calling clk_get_rate() on it + - x86/vector: Fix the args of vector_alloc tracepoint + - x86/apic/vector: Prevent hlist corruption and leaks + - x86/apic: Provide apic_ack_irq() + - x86/ioapic: Use apic_ack_irq() + - x86/platform/uv: Use apic_ack_irq() + - irq_remapping: Use apic_ack_irq() + - genirq/generic_pending: Do not lose pending affinity update + - genirq/affinity: Defer affinity setting if irq chip is busy + - genirq/migration: Avoid out of line call if pending is not set + - x86/intel_rdt: Enable CMT and MBM on new Skylake stepping + - media: uvcvideo: Prevent setting unavailable flags + - media: rc: ensure input/lirc device can be opened after register + - iwlwifi: fw: harden page loading code + - orangefs: set i_size on new symlink + - orangefs: report attributes_mask and attributes for statx + - HID: intel_ish-hid: ipc: register more pm callbacks to support hibernation + - HID: wacom: Correct logical maximum Y for 2nd-gen Intuos Pro large + - vhost: fix info leak due to uninitialized memory + - mm, page_alloc: do not break __GFP_THISNODE by zonelist reset + - Linux 4.17.3 + + * Use-after-free in sk_peer_label (LP: #1778646) + - SAUCE: apparmor: fix use after free in sk_peer_label + + * kernel: Fix memory leak on CCA and EP11 CPRB processing. (LP: #1775390) + - s390/zcrypt: Fix CCA and EP11 CPRB processing failure memory leak. + + * Various fixes for CXL kernel module (LP: #1774471) + - cxl: Configure PSL to not use APC virtual machines + - cxl: Disable prefault_mode in Radix mode + + * Bluetooth not working (LP: #1764645) + - Bluetooth: btusb: Apply QCA Rome patches for some ATH3012 models + + * Fake SAS addresses for SATA disks on HiSilicon D05 are non-unique + (LP: #1776750) + - scsi: hisi_sas: make SAS address of SATA disks unique + + * linux-snapdragon: wcn36xx: mac address generation on boot (LP: #1776491) + - [Config] arm64: snapdragon: WCN36XX_SNAPDRAGON_HACKS=y + - SAUCE: wcn36xx: read MAC from file or randomly generate one + + * Lenovo V330 needs patch in ideapad_laptop module for rfkill (LP: #1774636) + - SAUCE: Add Lenovo V330 to the ideapad_laptop rfkill blacklist + + * register on binfmt_misc may overflow and crash the system (LP: #1775856) + - fs/binfmt_misc.c: do not allow offset overflow + + * Network installs fail on SocioNext board (LP: #1775884) + - net: socionext: reset hardware in ndo_stop + - net: netsec: enable tx-irq during open callback + + * Fix several bugs in RDMA/hns driver (LP: #1770974) + - RDMA/hns: Drop local zgid in favor of core defined variable + - RDMA/hns: Add 64KB page size support for hip08 + - RDMA/hns: Rename the idx field of db + - RDMA/hns: Modify uar allocation algorithm to avoid bitmap exhaust + - RDMA/hns: Increase checking CMQ status timeout value + - RDMA/hns: Add reset process for RoCE in hip08 + - RDMA/hns: Fix the illegal memory operation when cross page + - RDMA/hns: Implement the disassociate_ucontext API + + * powerpc/livepatch: Implement reliable stack tracing for the consistency + model (LP: #1771844) + - powerpc/livepatch: Implement reliable stack tracing for the consistency + model + + * Adding back alx WoL feature (LP: #1772610) + - SAUCE: Revert "alx: remove WoL support" + - SAUCE: alx: add enable_wol paramenter + + * Lancer A0 Asic HBA's won't boot with 18.04 (LP: #1768103) + - scsi: lpfc: Fix WQ/CQ creation for older asic's. + - scsi: lpfc: Fix 16gb hbas failing cq create. + + * [LTCTest][OPAL][OP920] cpupower idle-info is not listing stop4 and stop5 + idle states when all CORES are guarded (LP: #1771780) + - powerpc/powernv/cpuidle: Init all present cpus for deep states + + * Huawei 25G/100G Network Adapters Unsupported (LP: #1770970) + - net-next/hinic: add pci device ids for 25ge and 100ge card + + * Expose arm64 CPU topology to userspace (LP: #1770231) + - drivers: base: cacheinfo: move cache_setup_of_node() + - drivers: base: cacheinfo: setup DT cache properties early + - cacheinfo: rename of_node to fw_token + - arm64/acpi: Create arch specific cpu to acpi id helper + - ACPI/PPTT: Add Processor Properties Topology Table parsing + - [Config] CONFIG_ACPI_PPTT=y + - ACPI: Enable PPTT support on ARM64 + - drivers: base cacheinfo: Add support for ACPI based firmware tables + - arm64: Add support for ACPI based firmware tables + - arm64: topology: rename cluster_id + - arm64: topology: enable ACPI/PPTT based CPU topology + - ACPI: Add PPTT to injectable table list + - arm64: topology: divorce MC scheduling domain from core_siblings + + * Vcs-Git header on bionic linux source package points to zesty git tree + (LP: #1766055) + - [Packaging]: Update Vcs-Git + + * Request to revert SAUCE patches in the 18.04 SRU and update with upstream + version (LP: #1768431) + - scsi: cxlflash: Handle spurious interrupts + - scsi: cxlflash: Remove commmands from pending list on timeout + - scsi: cxlflash: Synchronize reset and remove ops + - SAUCE: (no-up) cxlflash: OCXL diff between v2 and v3 + + * hisi_sas robustness fixes (LP: #1774466) + - scsi: hisi_sas: delete timer when removing hisi_sas driver + - scsi: hisi_sas: print device id for errors + - scsi: hisi_sas: Add some checks to avoid free'ing a sas_task twice + - scsi: hisi_sas: check host frozen before calling "done" function + - scsi: hisi_sas: check sas_dev gone earlier in hisi_sas_abort_task() + - scsi: hisi_sas: stop controller timer for reset + - scsi: hisi_sas: update PHY linkrate after a controller reset + - scsi: hisi_sas: change slot index allocation mode + - scsi: hisi_sas: Change common allocation mode of device id + - scsi: hisi_sas: Reset disks when discovered + - scsi: hisi_sas: Create a scsi_host_template per HW module + - scsi: hisi_sas: Init disks after controller reset + - scsi: hisi_sas: Try wait commands before before controller reset + - scsi: hisi_sas: Include TMF elements in struct hisi_sas_slot + - scsi: hisi_sas: Add v2 hw force PHY function for internal ATA command + - scsi: hisi_sas: Terminate STP reject quickly for v2 hw + - scsi: hisi_sas: Fix return value when get_free_slot() failed + - scsi: hisi_sas: Mark PHY as in reset for nexus reset + + * hisi_sas: Support newer v3 hardware (LP: #1774467) + - scsi: hisi_sas: update RAS feature for later revision of v3 HW + - scsi: hisi_sas: check IPTT is valid before using it for v3 hw + - scsi: hisi_sas: fix PI memory size + - scsi: hisi_sas: config ATA de-reset as an constrained command for v3 hw + - scsi: hisi_sas: remove redundant handling to event95 for v3 + - scsi: hisi_sas: add readl poll timeout helper wrappers + - scsi: hisi_sas: workaround a v3 hw hilink bug + - scsi: hisi_sas: Add LED feature for v3 hw + + * hisi_sas: improve performance by optimizing DQ locking (LP: #1774472) + - scsi: hisi_sas: optimise the usage of DQ locking + - scsi: hisi_sas: relocate smp sg map + - scsi: hisi_sas: make return type of prep functions void + - scsi: hisi_sas: allocate slot buffer earlier + - scsi: hisi_sas: Don't lock DQ for complete task sending + - scsi: hisi_sas: Use device lock to protect slot alloc/free + - scsi: hisi_sas: add check of device in hisi_sas_task_exec() + - scsi: hisi_sas: fix a typo in hisi_sas_task_prep() + + * FS-Cache: Assertion failed: FS-Cache: 6 == 5 is false (LP: #1774336) + - SAUCE: CacheFiles: fix a read_waiter/read_copier race + + * enable mic-mute hotkey and led on Lenovo M820z and M920z (LP: #1774306) + - ALSA: hda/realtek - Enable mic-mute hotkey for several Lenovo AIOs + + * hns3 driver updates (LP: #1768670) + - net: hns3: Remove error log when getting pfc stats fails + - net: hns3: fix to correctly fetch l4 protocol outer header + - net: hns3: Fixes the out of bounds access in hclge_map_tqp + - net: hns3: Fixes the error legs in hclge_init_ae_dev function + - net: hns3: fix for phy_addr error in hclge_mac_mdio_config + - net: hns3: Fix to support autoneg only for port attached with phy + - net: hns3: fix a dead loop in hclge_cmd_csq_clean + - net: hns3: Fix for packet loss due wrong filter config in VLAN tbls + - net: hns3: Remove packet statistics in the range of 8192~12287 + - net: hns3: Add support of hardware rx-vlan-offload to HNS3 VF driver + - net: hns3: Fix for setting mac address when resetting + - net: hns3: remove add/del_tunnel_udp in hns3_enet module + - net: hns3: fix for cleaning ring problem + - net: hns3: refactor the loopback related function + - net: hns3: Fix for deadlock problem occurring when unregistering ae_algo + - net: hns3: Fix for the null pointer problem occurring when initializing + ae_dev failed + - net: hns3: Add a check for client instance init state + - net: hns3: Change return type of hnae3_register_ae_dev + - net: hns3: Change return type of hnae3_register_ae_algo + - net: hns3: Change return value in hnae3_register_client + - net: hns3: Fixes the back pressure setting when sriov is enabled + - net: hns3: Fix for fiber link up problem + - net: hns3: Add support of .sriov_configure in HNS3 driver + - net: hns3: Fixes the missing PCI iounmap for various legs + - net: hns3: Fixes error reported by Kbuild and internal review + - net: hns3: Fixes API to fetch ethernet header length with kernel default + - net: hns3: cleanup of return values in hclge_init_client_instance() + - net: hns3: Fix the missing client list node initialization + - net: hns3: Fix for hns3 module is loaded multiple times problem + - net: hns3: Use enums instead of magic number in hclge_is_special_opcode + - net: hns3: Fix for netdev not running problem after calling net_stop and + net_open + - net: hns3: Fixes kernel panic issue during rmmod hns3 driver + - net: hns3: Fix for CMDQ and Misc. interrupt init order problem + - net: hns3: Updates RX packet info fetch in case of multi BD + - net: hns3: Add support for tx_accept_tag2 and tx_accept_untag2 config + - net: hns3: Add STRP_TAGP field support for hardware revision 0x21 + - net: hns3: Add support to enable TX/RX promisc mode for H/W rev(0x21) + - net: hns3: Fix for PF mailbox receving unknown message + - net: hns3: Fixes the state to indicate client-type initialization + - net: hns3: Fixes the init of the VALID BD info in the descriptor + - net: hns3: Removes unnecessary check when clearing TX/RX rings + - net: hns3: Clear TX/RX rings when stopping port & un-initializing client + - net: hns3: Remove unused led control code + - net: hns3: Adds support for led locate command for copper port + - net: hns3: Fixes initalization of RoCE handle and makes it conditional + - net: hns3: Disable vf vlan filter when vf vlan table is full + - net: hns3: Add support for IFF_ALLMULTI flag + - net: hns3: Add repeat address checking for setting mac address + - net: hns3: Fix setting mac address error + - net: hns3: Fix for service_task not running problem after resetting + - net: hns3: Fix for hclge_reset running repeatly problem + - net: hns3: Fix for phy not link up problem after resetting + - net: hns3: Add missing break in misc_irq_handle + - net: hns3: Fix for vxlan tx checksum bug + - net: hns3: Optimize the PF's process of updating multicast MAC + - net: hns3: Optimize the VF's process of updating multicast MAC + - SAUCE: {topost} net: hns3: add support for serdes loopback selftest + - SAUCE: {topost} net: hns3: RX BD information valid only in last BD except + VLD bit and buffer size + - SAUCE: {topost} net: hns3: remove hclge_get_vector_index from + hclge_bind_ring_with_vector + - SAUCE: {topost} net: hns3: rename the interface for init_client_instance and + uninit_client_instance + - SAUCE: {topost} net: hns3: add vector status check before free vector + - SAUCE: {topost} net: hns3: add l4_type check for both ipv4 and ipv6 + - SAUCE: {topost} net: hns3: remove unused head file in hnae3.c + - SAUCE: {topost} net: hns3: extraction an interface for state state + init|uninit + - SAUCE: {topost} net: hns3: print the ret value in error information + - SAUCE: {topost} net: hns3: remove the Redundant put_vector in + hns3_client_uninit + - SAUCE: {topost} net: hns3: add unlikely for error check + - SAUCE: {topost} net: hns3: remove back in struct hclge_hw + - SAUCE: {topost} net: hns3: use lower_32_bits and upper_32_bits + - SAUCE: {topost} net: hns3: remove unused hclge_ring_to_dma_dir + - SAUCE: {topost} net: hns3: remove useless code in hclge_cmd_send + - SAUCE: {topost} net: hns3: remove some redundant assignments + - SAUCE: {topost} net: hns3: simplify hclge_cmd_csq_clean + - SAUCE: {topost} net: hns3: using modulo for cyclic counters in + hclge_cmd_send + - SAUCE: {topost} net: hns3: remove a redundant hclge_cmd_csq_done + - SAUCE: {topost} net: hns3: remove some unused members of some structures + - SAUCE: {topost} net: hns3: give default option while dependency HNS3 set + - SAUCE: {topost} net: hns3: use dma_zalloc_coherent instead of + kzalloc/dma_map_single + - SAUCE: {topost} net: hns3: modify hnae_ to hnae3_ + - SAUCE: {topost} net: hns3: fix unused function warning in VF driver + - SAUCE: {topost} net: hns3: remove some redundant assignments + - SAUCE: {topost} net: hns3: standardize the handle of return value + - SAUCE: {topost} net: hns3: remove extra space and brackets + - SAUCE: {topost} net: hns3: fix unreasonable code comments + - SAUCE: {topost} net: hns3: use decimal for bit offset macros + - SAUCE: {topost} net: hns3: modify inconsistent bit mask macros + - SAUCE: {topost} net: hns3: fix mislead parameter name + - SAUCE: {topost} net: hns3: remove unused struct member and definition + - SAUCE: {topost} net: hns3: Add SPDX tags to hns3 driver + - SAUCE: {topost} net: hns3: Add pf reset for hip08 RoCE + - SAUCE: {topost} net: hns3: optimize the process of notifying roce client + - SAUCE: {topost} net: hns3: Add calling roce callback function when link + status change + - SAUCE: {topost} net: hns3: fix tc setup when netdev is first up + - SAUCE: {topost} net: hns3: fix for mac pause not disable in pfc mode + - SAUCE: {topost} net: hns3: fix for waterline not setting correctly + - SAUCE: {topost} net: hns3: fix for l4 checksum offload bug + - SAUCE: {topost} net: hns3: fix for mailbox message truncated problem + - SAUCE: {topost} net: hns3: Add configure for mac minimal frame size + - SAUCE: {topost} net: hns3: fix warning bug when doing lp selftest + - SAUCE: {topost} net: hns3: fix get_vector ops in hclgevf_main module + - SAUCE: {topost} net: hns3: remove the warning when clear reset cause + - SAUCE: {topost} net: hns3: Use roce handle when calling roce callback + function + - SAUCE: {topost} net: hns3: prevent sending command during global or core + reset + - SAUCE: {topost} net: hns3: modify the order of initializeing command queue + register + - SAUCE: {topost} net: hns3: reset net device with rtnl_lock + - SAUCE: {topost} net: hns3: prevent to request reset frequently + - SAUCE: {topost} net: hns3: correct reset event status register + - SAUCE: {topost} net: hns3: separate roce from nic when resetting + - SAUCE: net: hns3: Fix for phy link issue when using marvell phy driver + - SAUCE: {topost} net: hns3: fix return value error in + hns3_reset_notify_down_enet + - SAUCE: {topost} net: hns3: remove unnecessary ring configuration operation + while resetting + - SAUCE: {topost} net: hns3: fix for reset_level default assignment probelm + - SAUCE: {topost} net: hns3: fix for using wrong mask and shift in + hclge_get_ring_chain_from_mbx + - SAUCE: {topost} net: hns3: fix comments for hclge_get_ring_chain_from_mbx + - SAUCE: net: hns3: Fix for VF mailbox cannot receiving PF response + - SAUCE: net: hns3: Fix for VF mailbox receiving unknown message + - SAUCE: net: hns3: Optimize PF CMDQ interrupt switching process + + * CVE-2018-7755 + - SAUCE: floppy: Do not copy a kernel pointer to user memory in FDGETPRM ioctl + + * Incorrect blacklist of bcm2835_wdt (LP: #1766052) + - [Packaging] Fix missing watchdog for Raspberry Pi + + * kernel: Fix arch random implementation (LP: #1775391) + - s390/archrandom: Rework arch random implementation. + + * [Ubuntu 1804][boston][ixgbe] EEH causes kernel BUG at /build/linux- + jWa1Fv/linux-4.15.0/drivers/pci/msi.c:352 (i2S) (LP: #1776389) + - ixgbe/ixgbevf: Free IRQ when PCI error recovery removes the device + + * Cosmic update to v4.17.2 stable release (LP: #1779117) + - crypto: chelsio - request to HW should wrap + - blkdev_report_zones_ioctl(): Use vmalloc() to allocate large buffers + - KVM: X86: Fix reserved bits check for MOV to CR3 + - KVM: x86: introduce linear_{read,write}_system + - kvm: fix typo in flag name + - kvm: nVMX: Enforce cpl=0 for VMX instructions + - KVM: x86: pass kvm_vcpu to kvm_read_guest_virt and + kvm_write_guest_virt_system + - kvm: x86: use correct privilege level for sgdt/sidt/fxsave/fxrstor access + - staging: android: ion: Switch to pr_warn_once in ion_buffer_destroy + - NFC: pn533: don't send USB data off of the stack + - usbip: vhci_sysfs: fix potential Spectre v1 + - usb-storage: Add support for FL_ALWAYS_SYNC flag in the UAS driver + - usb-storage: Add compatibility quirk flags for G-Technologies G-Drive + - Input: xpad - add GPD Win 2 Controller USB IDs + - phy: qcom-qusb2: Fix crash if nvmem cell not specified + - usb: core: message: remove extra endianness conversion in + usb_set_isoch_delay + - usb: typec: wcove: Remove dependency on HW FSM + - usb: gadget: function: printer: avoid wrong list handling in printer_write() + - usb: gadget: udc: renesas_usb3: fix double phy_put() + - usb: gadget: udc: renesas_usb3: should remove debugfs + - usb: gadget: udc: renesas_usb3: should call pm_runtime_enable() before add + udc + - usb: gadget: udc: renesas_usb3: should call devm_phy_get() before add udc + - usb: gadget: udc: renesas_usb3: should fail if devm_phy_get() returns error + - usb: gadget: udc: renesas_usb3: disable the controller's irqs for + reconnecting + - serial: sh-sci: Stop using printk format %pCr + - tty/serial: atmel: use port->name as name in request_irq() + - serial: samsung: fix maxburst parameter for DMA transactions + - serial: 8250: omap: Fix idling of clocks for unused uarts + - vmw_balloon: fixing double free when batching mode is off + - doc: fix sysfs ABI documentation + - arm64: defconfig: Enable CONFIG_PINCTRL_MT7622 by default + - tty: pl011: Avoid spuriously stuck-off interrupts + - crypto: ccree - correct host regs offset + - Input: goodix - add new ACPI id for GPD Win 2 touch screen + - Input: elan_i2c - add ELAN0612 (Lenovo v330 14IKB) ACPI ID + - crypto: caam - strip input zeros from RSA input buffer + - crypto: caam - fix DMA mapping dir for generated IV + - crypto: caam - fix IV DMA mapping and updating + - crypto: caam/qi - fix IV DMA mapping and updating + - crypto: caam - fix size of RSA prime factor q + - crypto: cavium - Fix fallout from CONFIG_VMAP_STACK + - crypto: cavium - Limit result reading attempts + - crypto: vmx - Remove overly verbose printk from AES init routines + - crypto: vmx - Remove overly verbose printk from AES XTS init + - crypto: omap-sham - fix memleak + - Linux 4.17.2 + + * Cosmic update to v4.17.1 stable release (LP: #1779116) + - netfilter: nf_flow_table: attach dst to skbs + - bnx2x: use the right constant + - ip6mr: only set ip6mr_table from setsockopt when ip6mr_new_table succeeds + - ipv6: omit traffic class when calculating flow hash + - l2tp: fix refcount leakage on PPPoL2TP sockets + - netdev-FAQ: clarify DaveM's position for stable backports + - net: metrics: add proper netlink validation + - net/packet: refine check for priv area size + - rtnetlink: validate attributes in do_setlink() + - sctp: not allow transport timeout value less than HZ/5 for hb_timer + - team: use netdev_features_t instead of u32 + - vrf: check the original netdevice for generating redirect + - net: dsa: b53: Fix for brcm tag issue in Cygnus SoC + - ipmr: fix error path when ipmr_new_table fails + - PCI: hv: Do not wait forever on a device that has disappeared + - Linux 4.17.1 + + * Miscellaneous Ubuntu changes + - Revert "UBUNTU: SAUCE: crypto: thunderx_zip: Fix fallout from + CONFIG_VMAP_STACK" + - Revert "UBUNTU: SAUCE: cred: Add clone_cred() interface" + - SAUCE: apparmor: userspace queries + - SAUCE: apparmor: patch to provide compatibility with v2.x net rules + - SAUCE: apparmor: af_unix mediation + + -- Seth Forshee Thu, 28 Jun 2018 08:03:32 -0500 + +linux (4.17.0-2.3) cosmic; urgency=medium + + * linux: 4.17.0-2.3 -proposed tracker (LP: #1776276) + + * Miscellaneous Ubuntu changes + - Config: remove IrDA from annotations + - Config: remove scsi drivers from annotations + - Config: remove BT_HCIBTUART from annotations + - Config: pstore zlib support was renamed + - Config: disable NVRAM for armhf on annotations + - Config: Disable VT on s390x + - Config: Update SSB and B43/B44 options + - Config: some options not supported on some arches anymore + - Config: renamed and removed options + - Config: TCG_CRB is required for IMA on ACPI systems + - Config: EXTCON_AXP288 depends on X86 + - Config: CONFIG_FSI depends on OF + - Config: DRM_RCAR_LVDS now depends on DRM + - CONFIG: Allow CONFIG_LEDS_MLXCPLD for i386 + - Config: Enable HINIC on arm64 + - Config: Set PPS and PTP_1588_CLOCK as y + - Config: Some NF_TABLES options are built-in now + - Config: GENERIC_CPU for ppc64el + - Config: KEXEC_FILE=n for s390x + - Config: CRYPTO_DEFLATE is needed by PSTORE_DEFLATE_COMPRESS + - Config: Disable STM32 support + - Config: Enable FORTIFY_SOURCE for armhf + - Config: use STRONG instead of AUTO for CC_STACKPROTECTOR + + [ Upstream Kernel Changes ] + + * Rebase to v4.17 + + -- Thadeu Lima de Souza Cascardo Mon, 11 Jun 2018 15:22:10 -0300 + +linux (4.17.0-1.2) cosmic; urgency=medium + + [ Seth Forshee ] + * [Config] enable EDAC_DEBUG on ARM64 (LP: #1772516) + - [Config]: set CONFIG_EDAC_DEBUG=y for ARM64 + + * Ubuntu 18.04 kernel crashed while in degraded mode (LP: #1770849) + - SAUCE: powerpc/perf: Fix memory allocation for core-imc based on + num_possible_cpus() + + * Integrated Webcam Realtek Integrated_Webcam_HD (0bda:58f4) not working in + DELL XPS 13 9370 with firmware 1.50 (LP: #1763748) + - SAUCE: media: uvcvideo: Support realtek's UVC 1.5 device + + * Switch Build-Depends: transfig to fig2dev (LP: #1770770) + - [Config] update Build-Depends: transfig to fig2dev + + * update-initramfs not adding i915 GuC firmware for Kaby Lake, firmware fails + to load (LP: #1728238) + - Revert "UBUNTU: SAUCE: (no-up) i915: Remove MODULE_FIRMWARE statements for + unreleased firmware" + + * No driver for Huawei network adapters on arm64 (LP: #1769899) + - net-next/hinic: add arm64 support + + * linux-snapdragon: reduce EPROBEDEFER noise during boot (LP: #1768761) + - [Config] snapdragon: DRM_I2C_ADV7511=y + + * Add d-i support for Huawei NICs (LP: #1767490) + - d-i: add hinic to nic-modules udeb + + * Acer Swift sf314-52 power button not managed (LP: #1766054) + - SAUCE: platform/x86: acer-wmi: add another KEY_POWER keycode + + * Include nfp driver in linux-modules (LP: #1768526) + - [Config] Add nfp.ko to generic inclusion list + + * Miscellaneous Ubuntu changes + - SAUCE: Import aufs driver + - [Config] Enable AUFS config options + - SAUCE: (efi-lockdown) Fix for module sig verification + - SAUCE: (efi-lockdown) Copy secure_boot flag in boot params across kexec + reboot + - SAUCE: (efi-lockdown) efi: Add an EFI_SECURE_BOOT flag to indicate secure + boot mode + - SAUCE: (efi-lockdown) efi: Lock down the kernel if booted in secure boot + mode + - SAUCE: (efi-lockdown) efi: Sanitize boot_params in efi stub + - SAUCE: (efi-lockdown) efi: Don't print secure boot state from the efi stub + - [Config] CONFIG_LOCK_DOWN_IN_EFI_SECURE_BOOT=y + - SAUCE: (efi-lockdown) really lock down kernel under EFI secure boot + - SAUCE: (noup) Update spl to 0.7.5-1ubuntu3, zfs to 0.7.5-1ubuntu17 + - enable zfs build + + * Miscellaneous upstream changes + - Revert "UBUNTU: SAUCE: (efi-lockdown) ima: require secure_boot rules in + lockdown mode" + - Rebased to v4.17-rc6 + + -- Thadeu Lima de Souza Cascardo Tue, 22 May 2018 14:48:13 -0300 + +linux (4.17.0-0.1) bionic; urgency=medium + + [ Upstream Kernel Changes ] + + * Rebase to v4.17-rc4 + + -- Thadeu Lima de Souza Cascardo Tue, 08 May 2018 16:38:51 -0300 + +linux (4.17.0-0.0) bionic; urgency=medium + + * Dummy entry. + + -- Thadeu Lima de Souza Cascardo Fri, 27 Apr 2018 11:01:13 -0300 + +linux (4.16.0-4.5) bionic; urgency=medium + + * [18.04 FEAT] Add kvm_stat from kernel tree (LP: #1734130) + - tools/kvm_stat: Fix python3 syntax + - tools/kvm_stat: Don't use deprecated file() + - tools/kvm_stat: Remove unused function + - [Packaging] Add linux-tools-host package for VM host tools + - [Config] do_tools_host=true for amd64 + + * [Featire] CNL: Enable RAPL support (LP: #1685712) + - powercap: RAPL: Add support for Cannon Lake + + * Bionic update to v4.16.2 stable release (LP: #1763388) + - sparc64: Oracle DAX driver depends on SPARC64 + - arp: fix arp_filter on l3slave devices + - net: dsa: Discard frames from unused ports + - net/ipv6: Increment OUTxxx counters after netfilter hook + - net/sched: fix NULL dereference in the error path of tcf_bpf_init() + - pptp: remove a buggy dst release in pptp_connect() + - sctp: do not leak kernel memory to user space + - sctp: sctp_sockaddr_af must check minimal addr length for AF_INET6 + - vlan: also check phy_driver ts_info for vlan's real device + - net: fool proof dev_valid_name() + - ip_tunnel: better validate user provided tunnel names + - ipv6: sit: better validate user provided tunnel names + - ip6_gre: better validate user provided tunnel names + - ip6_tunnel: better validate user provided tunnel names + - vti6: better validate user provided tunnel names + - net_sched: fix a missing idr_remove() in u32_delete_key() + - nfp: use full 40 bits of the NSP buffer address + - Linux 4.16.2 + + * sky2 gigabit ethernet driver sometimes stops working after lid-open resume + from sleep (88E8055) (LP: #1758507) // Bionic update to v4.16.2 stable + release (LP: #1763388) + - sky2: Increase D3 delay to sky2 stops working after suspend + + * Merge the linux-snapdragon kernel into bionic master/snapdragon + (LP: #1763040) + - arm64: defconfig: enable REMOTEPROC + - arm64: defconfig: enable QCOM audio drivers for APQ8016 and DB410c + - kernel: configs; add distro.config + - arm64: configs: enable WCN36xx + - kernel: distro.config: enable debug friendly USB network adpater + - arm64: configs: enable QCOM Venus + - arm64: defconfig: Enable a53/apcs and avs + - arm64: defconfig: enable ondemand governor as default + - arm64: defconfig: enable QCOM_TSENS + - kernel: configs: enable dm_mod and dm_crypt + - Force the SMD regulator driver to be compiled-in + - arm64: defconfig: enable CFG80211_DEFAULT_PS by default + - arm64: configs: enable BT_QCOMSMD + - kernel: configs: add more USB net drivers + - arm64: defconfig: disable ANALOG_TV and DIGITAL_TV + - arm64: configs: Enable camera drivers + - kernel: configs: add freq stat to sysfs + - arm64: defconfig: enable CONFIG_USB_CONFIGFS_F_FS by default + - arm64: defconfig: Enable QRTR features + - kernel: configs: set USB_CONFIG_F_FS in distro.config + - kernel: distro.config: enable 'schedutil' CPUfreq governor + - kernel: distro.config: enable 'fq' and 'fq_codel' qdiscs + - kernel: distro.config: enable 'BBR' TCP congestion algorithm + - arm64: defconfig: enable LEDS_QCOM_LPG + - HACK: drm/msm/iommu: Remove runtime_put calls in map/unmap + - power: avs: Add support for CPR (Core Power Reduction) + - power: avs: cpr: Use raw mem access for qfprom + - power: avs: cpr: fix with new reg_sequence structures + - power: avs: cpr: Register with cpufreq-dt + - regulator: smd: Add floor and corner operations + - PM / OPP: Support adjusting OPP voltages at runtime + - PM / OPP: Drop RCU usage in dev_pm_opp_adjust_voltage() + - PM / OPP: HACK: Allow to set regulator without opp_list + - PM / OPP: Add a helper to get an opp regulator for device + - cpufreq: Add apq8016 to cpufreq-dt-platdev blacklist + - regulator: smd: Allow REGULATOR_QCOM_SMD_RPM=m + - ov5645: I2C address change + - i2c: Add Qualcomm Camera Control Interface driver + - camss: vfe: Skip first four frames from sensor + - camss: Do not register if no cameras are present + - i2c-qcom-cci: Fix run queue completion timeout + - i2c-qcom-cci: Fix I2C address bug + - media: ov5645: Fix I2C address + - drm/bridge/adv7511: Delay clearing of HPD interrupt status + - HACK: drm/msm/adv7511: Don't rely on interrupts for EDID parsing + - leds: Add driver for Qualcomm LPG + - wcn36xx: Fix warning due to duplicate scan_completed notification + - arm64: dts: Add CPR DT node for msm8916 + - arm64: dts: add spmi-regulator nodes + - arm64: dts: msm8916: Add cpufreq support + - arm64: dts: msm8916: Add a shared CPU opp table + - arm64: dts: msm8916: Add cpu cooling maps + - arm64: dts: pm8916: Mark the s2 regulator as always-on + - arm64: dts: qcom: msm8916: Add msm8916 A53 PLL DT node + - arm64: dts: qcom: msm8916: Use the new APCS mailbox driver + - arm64: dts: qcom: msm8916: Add clock properties to the APCS node + - dt-bindings: media: Binding document for Qualcomm Camera Control Interface + driver + - MAINTAINERS: Add Qualcomm Camera Control Interface driver + - DT: leds: Add Qualcomm Light Pulse Generator binding + - arm64: dts: qcom: msm8996: Add mpp and lpg blocks + - arm64: dts: qcom: Add pwm node for pm8916 + - arm64: dts: qcom: Add user LEDs on db820c + - arm64: dts: qcom: Add WiFI/BT LEDs on db820c + - ARM: dts: qcom: Add LPG node to pm8941 + - ARM: dts: qcom: honami: Add LPG node and RGB LED + - arm64: dts: qcom: Add Camera Control Interface support + - arm64: dts: qcom: Add apps_iommu vfe child node + - arm64: dts: qcom: Add camss device node + - arm64: dts: qcom: Add ov5645 device nodes + - arm64: dts: msm8916: Fix camera sensors I2C addresses + - arm: dts: qcom: db410c: Enable PWM signal on MPP4 + - packaging: arm64: add a uboot flavour - part1 + - packaging: arm64: add a uboot flavour - part2 + - packaging: arm64: add a uboot flavour - part3 + - packaging: arm64: add a uboot flavour - part4 + - packaging: arm64: add a uboot flavour - part5 + - packaging: arm64: rename uboot flavour to snapdragon + - [Config] updateconfigs after qcomlt import + - [Config] arm64: snapdragon: COMMON_CLK_QCOM=y + - [Config] arm64: snapdragon: MSM_GCC_8916=y + - [Config] arm64: snapdragon: REGULATOR_FIXED_VOLTAGE=y + - [Config] arm64: snapdragon: PINCTRL_MSM8916=y + - [Config] arm64: snapdragon: HWSPINLOCK_QCOM=y + - [Config] arm64: snapdragon: SPMI=y, SPMI_MSM_PMIC_ARB=y + - [Config] arm64: snapdragon: REGMAP_SPMI=y, PINCTRL_QCOM_SPMI_PMIC=y + - [Config] arm64: snapdragon: REGULATOR_QCOM_SPMI=y + - [Config] arm64: snapdragon: MFD_SPMI_PMIC=y + - [Config] arm64: snapdragon: QCOM_SMEM=y + - [Config] arm64: snapdragon: RPMSG=y, RPMSG_QCOM_SMD=y + - [Config] arm64: snapdragon: QCOM_SMD_RPM=y, REGULATOR_QCOM_SMD_RPM=y + - [Config] arm64: snapdragon: QCOM_CLK_SMD_RPM=y + - [Config] arm64: snapdragon: QCOM_BAM_DMA=y + - [Config] arm64: snapdragon: QCOM_HIDMA=y, QCOM_HIDMA_MGMT=y + - [Config] arm64: snapdragon: QCOM_CPR=y + - [Config] arm64: snapdragon: QCOM_QFPROM=y, QCOM_TSENS=y + - [Config] arm64: snapdragon: MMC_SDHCI=y, MMC_SDHCI_PLTFM=y, MMC_SDHCI_MSM=y + - [Config] turn off DRM_MSM_REGISTER_LOGGING + - [Config] arm64: snapdragon: I2C_QUP=y + - [Config] arm64: snapdragon: SPI_QUP=y + - [Config] arm64: snapdragon: USB_ULPI_BUS=y, PHY_QCOM_USB_HS=y + - [Config] arm64: snapdragon: QCOM_APCS_IPC=y + - [Config] arm64: snapdragon: QCOM_WCNSS_CTRL=y + - [Config] arm64: snapdragon: QCOM_SMSM=y + - [Config] arm64: snapdragon: QCOM_SMP2P=y + - [Config] arm64: snapdragon: DRM_MSM=y + - [Config] arm64: snapdragon: SND_SOC=y + - [Config] arm64: snapdragon: QCOM_WCNSS_PIL=m + - [Config] arm64: snapdragon: INPUT_PM8941_PWRKEY=y + - [Config] arm64: snapdragon: MEDIA_SUBDRV_AUTOSELECT=y, VIDEO_OV5645=m + - [Config] arm64: snapdragon: SND_SOC_APQ8016_SBC=y, SND_SOC_LPASS_APQ8016=y + - [Config] arm64: snapdragon: SND_SOC_MSM8916_WCD_ANALOG=y, + SND_SOC_MSM8916_WCD_DIGITAL=y + - SAUCE: media: ov5645: skip address change if dt addr == default addr + - SAUCE: drm/msm/adv7511: wrap hacks under CONFIG_ADV7511_SNAPDRAGON_HACKS + #ifdefs + - [Config] arm64: snapdragon: ADV7511_SNAPDRAGON_HACKS=y + - [Packaging] fix up snapdragon abi paths + + * LSM stacking patches for bionic (LP: #1763062) + - SAUCE: LSM stacking: procfs: add smack subdir to attrs + - SAUCE: LSM stacking: LSM: Manage credential security blobs + - SAUCE: LSM stacking: LSM: Manage file security blobs + - SAUCE: LSM stacking: LSM: Manage task security blobs + - SAUCE: LSM stacking: LSM: Manage remaining security blobs + - SAUCE: LSM stacking: LSM: General stacking + - SAUCE: LSM stacking: fixup initialize task->security + - SAUCE: LSM stacking: fixup: alloc_task_ctx is dead code + - SAUCE: LSM stacking: add support for stacking getpeersec_stream + - SAUCE: LSM stacking: add stacking support to apparmor network hooks + - SAUCE: LSM stacking: fixup apparmor stacking enablement + - SAUCE: LSM stacking: fixup stacking kconfig + - SAUCE: LSM stacking: allow selecting multiple LSMs using kernel boot params + - SAUCE: LSM stacking: provide prctl interface for setting context + - SAUCE: LSM stacking: inherit current display LSM + - SAUCE: LSM stacking: keep an index for each registered LSM + - SAUCE: LSM stacking: verify display LSM + - SAUCE: LSM stacking: provide a way to specify the default display lsm + - SAUCE: LSM stacking: make sure LSM blob align on 64 bit boundaries + - SAUCE: LSM stacking: add /proc//attr/display_lsm + - SAUCE: LSM stacking: add Kconfig to set default display LSM + - SAUCE: LSM stacking: add configs for LSM stacking + - SAUCE: LSM stacking: add apparmor and selinux proc dirs + - SAUCE: LSM stacking: remove procfs context interface + + * linux 4.13.0-13.14 ADT test failure with linux 4.13.0-13.14 + (LP: #1720779) // LSM stacking patches for bionic (LP: #1763062) + - SAUCE: LSM stacking: check for invalid zero sized writes + + * Support cq/rq record doorbell for RDMA on HSilicon hip08 systems + (LP: #1762755) + - RDMA/hns: Support rq record doorbell for the user space + - RDMA/hns: Support cq record doorbell for the user space + - RDMA/hns: Support rq record doorbell for kernel space + - RDMA/hns: Support cq record doorbell for kernel space + - RDMA/hns: Fix cqn type and init resp + - RDMA/hns: Fix init resp when alloc ucontext + - RDMA/hns: Fix cq record doorbell enable in kernel + + * Replace LPC patchset with upstream version (LP: #1762758) + - Revert "UBUNTU: SAUCE: MAINTAINERS: Add maintainer for HiSilicon LPC driver" + - Revert "UBUNTU: SAUCE: HISI LPC: Add ACPI support" + - Revert "UBUNTU: SAUCE: ACPI / scan: do not enumerate Indirect IO host + children" + - Revert "UBUNTU: SAUCE: HISI LPC: Support the LPC host on Hip06/Hip07 with DT + bindings" + - Revert "UBUNTU: SAUCE: OF: Add missing I/O range exception for indirect-IO + devices" + - Revert "UBUNTU: SAUCE: PCI: Apply the new generic I/O management on PCI IO + hosts" + - Revert "UBUNTU: SAUCE: PCI: Add fwnode handler as input param of + pci_register_io_range()" + - Revert "UBUNTU: SAUCE: PCI: Remove unused __weak attribute in + pci_register_io_range()" + - Revert "UBUNTU: SAUCE: LIB: Introduce a generic PIO mapping method" + - lib: Add generic PIO mapping method + - PCI: Remove __weak tag from pci_register_io_range() + - PCI: Add fwnode handler as input param of pci_register_io_range() + - PCI: Apply the new generic I/O management on PCI IO hosts + - of: Add missing I/O range exception for indirect-IO devices + - HISI LPC: Support the LPC host on Hip06/Hip07 with DT bindings + - ACPI / scan: Rename acpi_is_serial_bus_slave() for more general use + - ACPI / scan: Do not enumerate Indirect IO host children + - HISI LPC: Add ACPI support + - MAINTAINERS: Add John Garry as maintainer for HiSilicon LPC driver + + * Enable Tunneled Operations on POWER9 (LP: #1762448) + - powerpc/powernv: Enable tunneled operations + - cxl: read PHB indications from the device tree + + * PSL traces reset after PERST for debug AFU image (LP: #1762462) + - cxl: Enable NORST bit in PSL_DEBUG register for PSL9 + + * NFS + sec=krb5 is broken (LP: #1759791) + - sunrpc: remove incorrect HMAC request initialization + + * Raspberry Pi 3 microSD support missing from the installer (LP: #1729128) + - d-i: add bcm2835 to block-modules + + * Backport USB core quirks (LP: #1762695) + - usb: core: Add "quirks" parameter for usbcore + - usb: core: Copy parameter string correctly and remove superfluous null check + - usb: core: Add USB_QUIRK_DELAY_CTRL_MSG to usbcore quirks + + * [Ubuntu 18.04] cryptsetup: 'device-mapper: reload ioctl on failed' when + setting up a second end-to-end encrypted disk (LP: #1762353) + - SAUCE: s390/crypto: Adjust s390 aes and paes cipher + + * System Z {kernel} UBUNTU18.04 wrong kernel config (LP: #1762719) + - s390: move nobp parameter functions to nospec-branch.c + - s390: add automatic detection of the spectre defense + - s390: report spectre mitigation via syslog + - s390: add sysfs attributes for spectre + - [Config] CONFIG_EXPOLINE_AUTO=y, CONFIG_KERNEL_NOBP=n for s390 + - s390: correct nospec auto detection init order + + * Additional spectre and meltdown patches (LP: #1760099) // CVE-2017-5715 + - powerpc/64s: Wire up cpu_show_spectre_v2() + + * Additional spectre and meltdown patches (LP: #1760099) // CVE-2017-5753 + - powerpc/64s: Wire up cpu_show_spectre_v1() + + * Additional spectre and meltdown patches (LP: #1760099) // CVE-2017-5754 + - powerpc/rfi-flush: Move the logic to avoid a redo into the debugfs code + - powerpc/rfi-flush: Make it possible to call setup_rfi_flush() again + - powerpc/rfi-flush: Always enable fallback flush on pseries + - powerpc/rfi-flush: Differentiate enabled and patched flush types + - powerpc/rfi-flush: Call setup_rfi_flush() after LPM migration + - powerpc/64s: Move cpu_show_meltdown() + - powerpc/64s: Enhance the information in cpu_show_meltdown() + - powerpc/powernv: Use the security flags in pnv_setup_rfi_flush() + - powerpc/pseries: Use the security flags in pseries_setup_rfi_flush() + + * Additional spectre and meltdown patches (LP: #1760099) // CVE-2017-5715 // + CVE-2017-5753 // CVE-2017-5754 + - powerpc/pseries: Add new H_GET_CPU_CHARACTERISTICS flags + - powerpc: Add security feature flags for Spectre/Meltdown + - powerpc/pseries: Set or clear security feature flags + - powerpc/powernv: Set or clear security feature flags + + * Hisilicon network subsystem 3 support (LP: #1761610) + - net: hns3: export pci table of hclge and hclgevf to userspace + - d-i: Add hns3 drivers to nic-modules + + * "ip a" command on a guest VM shows UNKNOWN status (LP: #1761534) + - virtio-net: Fix operstate for virtio when no VIRTIO_NET_F_STATUS + + * perf vendor events arm64: Enable JSON events for ThunderX2 B0 (LP: #1760712) + - perf vendor events: Drop incomplete multiple mapfile support + - perf vendor events: Fix error code in json_events() + - perf vendor events: Drop support for unused topic directories + - perf vendor events: Add support for pmu events vendor subdirectory + - perf vendor events arm64: Relocate ThunderX2 JSON to cavium subdirectory + - perf vendor events arm64: Relocate Cortex A53 JSONs to arm subdirectory + - perf vendor events: Add support for arch standard events + - perf vendor events arm64: Add armv8-recommended.json + - perf vendor events arm64: Fixup ThunderX2 to use recommended events + - perf vendor events arm64: fixup A53 to use recommended events + - perf vendor events arm64: add HiSilicon hip08 JSON file + - perf vendor events arm64: Enable JSON events for ThunderX2 B0 + + * Warning "cache flush timed out!" seen when unloading the cxl driver + (LP: #1762367) + - cxl: Check if PSL data-cache is available before issue flush request + + * Bionic update to v4.16.1 stable release (LP: #1763170) + - bitmap: fix memset optimization on big-endian systems + - USB: serial: ftdi_sio: add RT Systems VX-8 cable + - USB: serial: ftdi_sio: add support for Harman FirmwareHubEmulator + - USB: serial: cp210x: add ELDAT Easywave RX09 id + - serial: 8250: Add Nuvoton NPCM UART + - mei: remove dev_err message on an unsupported ioctl + - /dev/mem: Avoid overwriting "err" in read_mem() + - media: usbtv: prevent double free in error case + - parport_pc: Add support for WCH CH382L PCI-E single parallel port card. + - crypto: lrw - Free rctx->ext with kzfree + - crypto: ccp - Fill the result buffer only on digest, finup, and final ops + - crypto: talitos - don't persistently map req_ctx->hw_context and + req_ctx->buf + - crypto: inside-secure - fix clock management + - crypto: testmgr - Fix incorrect values in PKCS#1 test vector + - crypto: talitos - fix IPsec cipher in length + - crypto: ahash - Fix early termination in hash walk + - crypto: caam - Fix null dereference at error path + - crypto: ccp - return an actual key size from RSA max_size callback + - crypto: arm,arm64 - Fix random regeneration of S_shipped + - crypto: x86/cast5-avx - fix ECB encryption when long sg follows short one + - Bluetooth: hci_bcm: Add 6 new ACPI HIDs + - Btrfs: fix unexpected cow in run_delalloc_nocow + - siox: fix possible buffer overflow in device_add_store + - staging: comedi: ni_mio_common: ack ai fifo error interrupts. + - Revert "base: arch_topology: fix section mismatch build warnings" + - Input: ALPS - fix TrackStick detection on Thinkpad L570 and Latitude 7370 + - Input: i8042 - add Lenovo ThinkPad L460 to i8042 reset list + - Input: i8042 - enable MUX on Sony VAIO VGN-CS series to fix touchpad + - vt: change SGR 21 to follow the standards + - Fix slab name "biovec-(1<<(21-12))" + - signal: Correct the offset of si_pkey and si_lower in struct siginfo on m68k + - Linux 4.16.1 + + * [18.04][config] regression: nvme and nvme_core couldn't be built as modules + starting 4.15-rc2 (LP: #1759893) + - SAUCE: Revert "lightnvm: include NVM Express driver if OCSSD is selected for + build" + - [Config] CONFIG_BLK_DEV_NMVE=m + + * FFe: Enable configuring resume offset via sysfs (LP: #1760106) + - PM / hibernate: Make passing hibernate offsets more friendly + + * Ubuntu18.04:POWER9:DD2.2 - Unable to start a KVM guest with default machine + type(pseries-bionic) complaining "KVM implementation does not support + Transactional Memory, try cap-htm=off" (kvm) (LP: #1752026) + - powerpc: Use feature bit for RTC presence rather than timebase presence + - powerpc: Book E: Remove unused CPU_FTR_L2CSR bit + - powerpc: Free up CPU feature bits on 64-bit machines + - powerpc: Add CPU feature bits for TM bug workarounds on POWER9 v2.2 + - powerpc/powernv: Provide a way to force a core into SMT4 mode + - KVM: PPC: Book3S HV: Work around transactional memory bugs in POWER9 + - KVM: PPC: Book3S HV: Work around XER[SO] bug in fake suspend mode + - KVM: PPC: Book3S HV: Work around TEXASR bug in fake suspend state + + * [Feature][CFL][ICL] [CNL]Thunderbolt support (Titan Ridge) (LP: #1730775) + - thunderbolt: Resume control channel after hibernation image is created + - thunderbolt: Serialize PCIe tunnel creation with PCI rescan + - thunderbolt: Handle connecting device in place of host properly + - thunderbolt: Do not overwrite error code when domain adding fails + - thunderbolt: Wait a bit longer for root switch config space + - thunderbolt: Wait a bit longer for ICM to authenticate the active NVM + - thunderbolt: Handle rejected Thunderbolt devices + - thunderbolt: Factor common ICM add and update operations out + - thunderbolt: Correct function name in kernel-doc comment + - thunderbolt: Add tb_switch_get() + - thunderbolt: Add tb_switch_find_by_route() + - thunderbolt: Add tb_xdomain_find_by_route() + - thunderbolt: Add constant for approval timeout + - thunderbolt: Move driver ready handling to struct icm + - thunderbolt: Add 'boot' attribute for devices + - thunderbolt: Add support for preboot ACL + - thunderbolt: Introduce USB only (SL4) security level + - thunderbolt: Add support for Intel Titan Ridge + + * QCA9377 requires more IRAM banks for its new firmware (LP: #1748345) + - ath10k: update the IRAM bank number for QCA9377 + + * Fix an issue that when system in S3, USB keyboard can't wake up the system. + (LP: #1759511) + - ACPI / PM: Allow deeper wakeup power states with no _SxD nor _SxW + + * cxl: Fix timebase synchronization status on POWER9 missing (CAPI) + (LP: #1757228) + - cxl: Fix timebase synchronization status on P9 + + * [Feature]Update Ubuntu 18.04 lpfc FC driver with 32/64GB HBA support and bug + fixes (LP: #1752182) + - scsi: lpfc: Fix frequency of Release WQE CQEs + - scsi: lpfc: Increase CQ and WQ sizes for SCSI + - scsi: lpfc: move placement of target destroy on driver detach + - scsi: lpfc: correct debug counters for abort + - scsi: lpfc: Add WQ Full Logic for NVME Target + - scsi: lpfc: Fix PRLI handling when topology type changes + - scsi: lpfc: Fix IO failure during hba reset testing with nvme io. + - scsi: lpfc: Fix RQ empty firmware trap + - scsi: lpfc: Allow set of maximum outstanding SCSI cmd limit for a target + - scsi: lpfc: Fix soft lockup in lpfc worker thread during LIP testing + - scsi: lpfc: Fix issue_lip if link is disabled + - scsi: lpfc: Indicate CONF support in NVMe PRLI + - scsi: lpfc: Fix SCSI io host reset causing kernel crash + - scsi: lpfc: Validate adapter support for SRIU option + - scsi: lpfc: Fix header inclusion in lpfc_nvmet + - scsi: lpfc: Treat SCSI Write operation Underruns as an error + - scsi: lpfc: Fix nonrecovery of NVME controller after cable swap. + - scsi: lpfc: update driver version to 11.4.0.7 + - scsi: lpfc: Update 11.4.0.7 modified files for 2018 Copyright + - scsi: lpfc: Rework lpfc to allow different sli4 cq and eq handlers + - scsi: lpfc: Rework sli4 doorbell infrastructure + - scsi: lpfc: Add SLI-4 if_type=6 support to the code base + - scsi: lpfc: Add push-to-adapter support to sli4 + - scsi: lpfc: Add PCI Ids for if_type=6 hardware + - scsi: lpfc: Add 64G link speed support + - scsi: lpfc: Add if_type=6 support for cycling valid bits + - scsi: lpfc: Enable fw download on if_type=6 devices + - scsi: lpfc: Add embedded data pointers for enhanced performance + - scsi: lpfc: Fix nvme embedded io length on new hardware + - scsi: lpfc: Work around NVME cmd iu SGL type + - scsi: lpfc: update driver version to 12.0.0.0 + - scsi: lpfc: Change Copyright of 12.0.0.0 modified files to 2018 + - scsi: lpfc: use __raw_writeX on DPP copies + - scsi: lpfc: Add missing unlock in WQ full logic + + * /dev/bcache/by-uuid links not created after reboot (LP: #1729145) + - SAUCE: (no-up) bcache: decouple emitting a cached_dev CHANGE uevent + + * DKMS driver builds fail with: Cannot use CONFIG_STACK_VALIDATION=y, please + install libelf-dev, libelf-devel or elfutils-libelf-devel (LP: #1760876) + - [Packaging] include the retpoline extractor in the headers + + * Use med_with_dipm SATA LPM to save more power for mobile platforms + (LP: #1759547) + - [Config] CONFIG_SATA_MOBILE_LPM_POLICY=3 + + * Miscellaneous Ubuntu changes + - [Packaging] Only install cloud init files when do_tools_common=true + - SAUCE: Import aufs driver + - [Config] Enable AUFS config options + + -- Seth Forshee Thu, 12 Apr 2018 09:30:56 -0500 + +linux (4.16.0-3.4) bionic; urgency=medium + + * Allow multiple mounts of zfs datasets (LP: #1759848) + - SAUCE: Allow mounting datasets more than once (LP: #1759848) + + * zfs system process hung on container stop/delete (LP: #1754584) + - SAUCE: Fix non-prefaulted page deadlock (LP: #1754584) + - Revert "UBUNTU: SAUCE: Fix non-prefaulted page deadlock (LP: #1754584)" + - SAUCE: Fix non-prefaulted page deadlock (LP: #1754584) + + * ubuntu_zram_smoke test will cause soft lockup on Artful ThunderX ARM64 + (LP: #1755073) + - SAUCE: crypto: thunderx_zip: Fix fallout from CONFIG_VMAP_STACK + + * CAPI Flash (cxlflash) update (LP: #1752672) + - SAUCE: cxlflash: Preserve number of interrupts for master contexts + - SAUCE: cxlflash: Avoid clobbering context control register value + - SAUCE: cxlflash: Add argument identifier names + - SAUCE: cxlflash: Introduce OCXL backend + - SAUCE: cxlflash: Hardware AFU for OCXL + - SAUCE: cxlflash: Read host function configuration + - SAUCE: cxlflash: Setup function acTag range + - SAUCE: cxlflash: Read host AFU configuration + - SAUCE: cxlflash: Setup AFU acTag range + - SAUCE: cxlflash: Setup AFU PASID + - SAUCE: cxlflash: Adapter context support for OCXL + - SAUCE: cxlflash: Use IDR to manage adapter contexts + - SAUCE: cxlflash: Support adapter file descriptors for OCXL + - SAUCE: cxlflash: Support adapter context discovery + - SAUCE: cxlflash: Support image reload policy modification + - SAUCE: cxlflash: MMIO map the AFU + - SAUCE: cxlflash: Support starting an adapter context + - SAUCE: cxlflash: Support process specific mappings + - SAUCE: cxlflash: Support AFU state toggling + - SAUCE: cxlflash: Support reading adapter VPD data + - SAUCE: cxlflash: Setup function OCXL link + - SAUCE: cxlflash: Setup OCXL transaction layer + - SAUCE: cxlflash: Support process element lifecycle + - SAUCE: cxlflash: Support AFU interrupt management + - SAUCE: cxlflash: Support AFU interrupt mapping and registration + - SAUCE: cxlflash: Support starting user contexts + - SAUCE: cxlflash: Support adapter context polling + - SAUCE: cxlflash: Support adapter context reading + - SAUCE: cxlflash: Support adapter context mmap and release + - SAUCE: cxlflash: Support file descriptor mapping + - SAUCE: cxlflash: Introduce object handle fop + - SAUCE: cxlflash: Setup LISNs for user contexts + - SAUCE: cxlflash: Setup LISNs for master contexts + - SAUCE: cxlflash: Update synchronous interrupt status bits + - SAUCE: cxlflash: Introduce OCXL context state machine + - SAUCE: cxlflash: Register for translation errors + - SAUCE: cxlflash: Support AFU reset + - SAUCE: cxlflash: Enable OCXL operations + + * [Artful][Wyse 3040] System hang when trying to enable an offlined CPU core + (LP: #1736393) + - SAUCE: drm/i915:Don't set chip specific data + - SAUCE: drm/i915: make previous commit affects Wyse 3040 only + + * zed process consuming 100% cpu (LP: #1751796) + - SAUCE: Fix ioctl loop-spin in zed (LP: #1751796) + + * Ubuntu18.04:PowerPC - Set Transparent Huge Pages (THP) by default to + "always" (LP: #1753708) + - Config: Set TRANSPARENT_HUGEPAGE_ALWAYS=y on ppc64el + + * retpoline hints: primary infrastructure and initial hints (LP: #1758856) + - [Packaging] retpoline -- add safe usage hint support + - [Packaging] retpoline-check -- only report additions + - [Packaging] retpoline -- widen indirect call/jmp detection + - [Packaging] retpoline -- elide %rip relative indirections + - [Packaging] retpoline -- clear hint information from packages + - SAUCE: apm -- annotate indirect calls within + firmware_restrict_branch_speculation_{start,end} + - SAUCE: EFI -- annotate indirect calls within + firmware_restrict_branch_speculation_{start,end} + - SAUCE: early/late -- annotate indirect calls in early/late initialisation + code + - SAUCE: vga_set_mode -- avoid jump tables + - [Config] retpoine -- switch to new format + + * Miscellaneous Ubuntu changes + - [Packaging] final-checks -- remove check for empty retpoline files + - [Packaging] skip cloud tools packaging when not building package + + [ Upstream Kernel Changes ] + + * Rebase to v4.16 + + -- Seth Forshee Mon, 02 Apr 2018 16:15:36 -0500 + +linux (4.16.0-2.3) bionic; urgency=medium + + * devpts: handle bind-mounts (LP: #1755857) + - SAUCE: devpts: hoist out check for DEVPTS_SUPER_MAGIC + - SAUCE: devpts: resolve devpts bind-mounts + - SAUCE: devpts: comment devpts_mntget() + - SAUCE: selftests: add devpts selftests + + * [bionic][arm64] d-i: add hisi_sas_v3_hw to scsi-modules (LP: #1756103) + - d-i: add hisi_sas_v3_hw to scsi-modules + + * [Bionic][ARM64] PCI and SAS driver patches for hip08 SoCs (LP: #1756094) + - SAUCE: scsi: hisi_sas: config for hip08 ES + - SAUCE: scsi: hisi_sas: export device table of v3 hw to userspace + + * s390/crypto: Fix kernel crash on aes_s390 module remove (LP: #1753424) + - SAUCE: s390/crypto: Fix kernel crash on aes_s390 module remove. + + * Fix ARC hit rate (LP: #1755158) + - SAUCE: Fix ARC hit rate (LP: #1755158) + + * ZFS setgid broken on 0.7 (LP: #1753288) + - SAUCE: Fix ZFS setgid + + * CONFIG_EFI=y on armhf (LP: #1726362) + - [Config] CONFIG_EFI=y on armhf, reconcile secureboot EFI settings + + * [Feature] Add xHCI debug device support in the driver (LP: #1730832) + - [Config] CONFIG_USB_XHCI_DBGCAP=y + + * retpoline: ignore %cs:0xNNN constant indirections (LP: #1752655) + - [Packaging] retpoline -- elide %cs:0xNNNN constants on i386 + - [Config] retpoline -- clean up i386 retpoline files + + * Miscellaneous Ubuntu changes + - [Packaging] retpoline-extract: flag *0xNNN(%reg) branches + - [Config] fix up retpoline abi files + - [Config] fix up retpoline abi files + - d-i: Add netsec to nic-modules + + [ Upstream Kernel Changes ] + + * Rebase to v4.16-rc6 + + -- Seth Forshee Mon, 19 Mar 2018 14:09:49 -0500 + +linux (4.16.0-1.2) bionic; urgency=medium + + * Driver not found in Ubuntu kernel does not detect interface (LP: #1745927) + - d-i: add cxgb4 to nic-modules + + * Support low-pin-count devices on Hisilicon SoCs (LP: #1677319) + - [Config] CONFIG_INDIRECT_PIO=y + - SAUCE: LIB: Introduce a generic PIO mapping method + - SAUCE: PCI: Remove unused __weak attribute in pci_register_io_range() + - SAUCE: PCI: Add fwnode handler as input param of pci_register_io_range() + - SAUCE: PCI: Apply the new generic I/O management on PCI IO hosts + - SAUCE: OF: Add missing I/O range exception for indirect-IO devices + - [Config] CONFIG_HISILICON_LPC=y + - SAUCE: HISI LPC: Support the LPC host on Hip06/Hip07 with DT bindings + - SAUCE: ACPI / scan: do not enumerate Indirect IO host children + - SAUCE: HISI LPC: Add ACPI support + - SAUCE: MAINTAINERS: Add maintainer for HiSilicon LPC driver + + * Miscellaneous Ubuntu changes + - SAUCE: tools: use CC for linking acpi tools + + [ Upstream Kernel Changes ] + + * Rebase to v4.16-rc3 + + -- Seth Forshee Wed, 28 Feb 2018 10:17:23 -0600 + +linux (4.16.0-0.1) bionic; urgency=medium + + * retpoline abi files are empty on i386 (LP: #1751021) + - [Packaging] retpoline-extract -- instantiate retpoline files for i386 + - [Packaging] final-checks -- sanity checking ABI contents + - [Packaging] final-checks -- check for empty retpoline files + + * Miscellaneous upstream changes + - disable vbox build + - Disable zfs build + + [ Upstream Kernel Changes ] + + * Rebase to v4.16-rc2 + + -- Seth Forshee Thu, 22 Feb 2018 08:58:57 -0600 + +linux (4.16.0-0.0) bionic; urgency=medium + + * Dummy entry + + -- Seth Forshee Wed, 21 Feb 2018 14:33:13 -0600 + +linux (4.15.0-10.11) bionic; urgency=medium + + * linux: 4.15.0-10.11 -proposed tracker (LP: #1749250) + + * "swiotlb: coherent allocation failed" dmesg spam with linux 4.15.0-9.10 + (LP: #1749202) + - swiotlb: suppress warning when __GFP_NOWARN is set + - drm/ttm: specify DMA_ATTR_NO_WARN for huge page pools + + * linux-tools: perf incorrectly linking libbfd (LP: #1748922) + - SAUCE: tools -- add ability to disable libbfd + - [Packaging] correct disablement of libbfd + + * [Artful] Realtek ALC225: 2 secs noise when a headset plugged in + (LP: #1744058) + - ALSA: hda/realtek - update ALC225 depop optimize + + * [Artful] Support headset mode for DELL WYSE (LP: #1723913) + - SAUCE: ALSA: hda/realtek - Add support headset mode for DELL WYSE + + * headset mic can't be detected on two Dell machines (LP: #1748807) + - ALSA: hda/realtek - Support headset mode for ALC215/ALC285/ALC289 + - ALSA: hda - Fix headset mic detection problem for two Dell machines + + * Bionic update to v4.15.3 stable release (LP: #1749191) + - ip6mr: fix stale iterator + - net: igmp: add a missing rcu locking section + - qlcnic: fix deadlock bug + - qmi_wwan: Add support for Quectel EP06 + - r8169: fix RTL8168EP take too long to complete driver initialization. + - tcp: release sk_frag.page in tcp_disconnect + - vhost_net: stop device during reset owner + - ipv6: addrconf: break critical section in addrconf_verify_rtnl() + - ipv6: change route cache aging logic + - Revert "defer call to mem_cgroup_sk_alloc()" + - net: ipv6: send unsolicited NA after DAD + - rocker: fix possible null pointer dereference in + rocker_router_fib_event_work + - tcp_bbr: fix pacing_gain to always be unity when using lt_bw + - cls_u32: add missing RCU annotation. + - ipv6: Fix SO_REUSEPORT UDP socket with implicit sk_ipv6only + - soreuseport: fix mem leak in reuseport_add_sock() + - net_sched: get rid of rcu_barrier() in tcf_block_put_ext() + - net: sched: fix use-after-free in tcf_block_put_ext + - media: mtk-vcodec: add missing MODULE_LICENSE/DESCRIPTION + - media: soc_camera: soc_scale_crop: add missing + MODULE_DESCRIPTION/AUTHOR/LICENSE + - media: tegra-cec: add missing MODULE_DESCRIPTION/AUTHOR/LICENSE + - gpio: uniphier: fix mismatch between license text and MODULE_LICENSE + - crypto: tcrypt - fix S/G table for test_aead_speed() + - Linux 4.15.3 + + * bnx2x_attn_int_deasserted3:4323 MC assert! (LP: #1715519) // + CVE-2018-1000026 + - net: create skb_gso_validate_mac_len() + - bnx2x: disable GSO where gso_size is too big for hardware + + * ethtool -p fails to light NIC LED on HiSilicon D05 systems (LP: #1748567) + - net: hns: add ACPI mode support for ethtool -p + + * CVE-2017-5715 (Spectre v2 Intel) + - [Packaging] retpoline files must be sorted + - [Packaging] pull in retpoline files + + * [Feature] PXE boot with Intel Omni-Path (LP: #1712031) + - d-i: Add hfi1 to nic-modules + + * CVE-2017-5715 (Spectre v2 retpoline) + - [Packaging] retpoline -- add call site validation + - [Config] disable retpoline checks for first upload + + * Do not duplicate changelog entries assigned to more than one bug or CVE + (LP: #1743383) + - [Packaging] git-ubuntu-log -- handle multiple bugs/cves better + + -- Seth Forshee Tue, 13 Feb 2018 11:33:58 -0600 + +linux (4.15.0-9.10) bionic; urgency=medium + + * linux: 4.15.0-9.10 -proposed tracker (LP: #1748244) + + * Miscellaneous Ubuntu changes + - [Debian] tests -- remove gcc-multilib dependency for arm64 + + -- Seth Forshee Thu, 08 Feb 2018 11:25:04 -0600 + +linux (4.15.0-8.9) bionic; urgency=medium + + * linux: 4.15.0-8.9 -proposed tracker (LP: #1748075) + + * Bionic update to v4.15.2 stable release (LP: #1748072) + - KVM: x86: Make indirect calls in emulator speculation safe + - KVM: VMX: Make indirect call speculation safe + - module/retpoline: Warn about missing retpoline in module + - x86/cpufeatures: Add CPUID_7_EDX CPUID leaf + - x86/cpufeatures: Add Intel feature bits for Speculation Control + - x86/cpufeatures: Add AMD feature bits for Speculation Control + - x86/msr: Add definitions for new speculation control MSRs + - x86/pti: Do not enable PTI on CPUs which are not vulnerable to Meltdown + - x86/cpufeature: Blacklist SPEC_CTRL/PRED_CMD on early Spectre v2 microcodes + - x86/speculation: Add basic IBPB (Indirect Branch Prediction Barrier) support + - x86/alternative: Print unadorned pointers + - x86/nospec: Fix header guards names + - x86/bugs: Drop one "mitigation" from dmesg + - x86/cpu/bugs: Make retpoline module warning conditional + - x86/cpufeatures: Clean up Spectre v2 related CPUID flags + - x86/retpoline: Simplify vmexit_fill_RSB() + - x86/speculation: Simplify indirect_branch_prediction_barrier() + - auxdisplay: img-ascii-lcd: add missing MODULE_DESCRIPTION/AUTHOR/LICENSE + - iio: adc/accel: Fix up module licenses + - pinctrl: pxa: pxa2xx: add missing MODULE_DESCRIPTION/AUTHOR/LICENSE + - ASoC: pcm512x: add missing MODULE_DESCRIPTION/AUTHOR/LICENSE + - KVM: nVMX: Eliminate vmcs02 pool + - KVM: VMX: introduce alloc_loaded_vmcs + - objtool: Improve retpoline alternative handling + - objtool: Add support for alternatives at the end of a section + - objtool: Warn on stripped section symbol + - x86/mm: Fix overlap of i386 CPU_ENTRY_AREA with FIX_BTMAP + - x86/spectre: Check CONFIG_RETPOLINE in command line parser + - x86/entry/64: Remove the SYSCALL64 fast path + - x86/entry/64: Push extra regs right away + - x86/asm: Move 'status' from thread_struct to thread_info + - Documentation: Document array_index_nospec + - array_index_nospec: Sanitize speculative array de-references + - x86: Implement array_index_mask_nospec + - x86: Introduce barrier_nospec + - x86: Introduce __uaccess_begin_nospec() and uaccess_try_nospec + - x86/usercopy: Replace open coded stac/clac with __uaccess_{begin, end} + - x86/uaccess: Use __uaccess_begin_nospec() and uaccess_try_nospec + - x86/get_user: Use pointer masking to limit speculation + - x86/syscall: Sanitize syscall table de-references under speculation + - vfs, fdtable: Prevent bounds-check bypass via speculative execution + - nl80211: Sanitize array index in parse_txq_params + - x86/spectre: Report get_user mitigation for spectre_v1 + - x86/spectre: Fix spelling mistake: "vunerable"-> "vulnerable" + - x86/cpuid: Fix up "virtual" IBRS/IBPB/STIBP feature bits on Intel + - x86/speculation: Use Indirect Branch Prediction Barrier in context switch + - x86/paravirt: Remove 'noreplace-paravirt' cmdline option + - KVM: VMX: make MSR bitmaps per-VCPU + - x86/kvm: Update spectre-v1 mitigation + - x86/retpoline: Avoid retpolines for built-in __init functions + - x86/spectre: Simplify spectre_v2 command line parsing + - x86/pti: Mark constant arrays as __initconst + - x86/speculation: Fix typo IBRS_ATT, which should be IBRS_ALL + - KVM/x86: Update the reverse_cpuid list to include CPUID_7_EDX + - KVM/x86: Add IBPB support + - KVM/VMX: Emulate MSR_IA32_ARCH_CAPABILITIES + - KVM/VMX: Allow direct access to MSR_IA32_SPEC_CTRL + - KVM/SVM: Allow direct access to MSR_IA32_SPEC_CTRL + - serial: core: mark port as initialized after successful IRQ change + - fpga: region: release of_parse_phandle nodes after use + - Linux 4.15.2 + + * Add support for the NIC on SynQuacer E-Series boards (LP: #1747792) + - net: phy: core: remove now uneeded disabling of interrupts + - [Config] CONFIG_NET_VENDOR_SOCIONEXT=y & CONFIG_SNI_NETSEC=m + - net: socionext: Add Synquacer NetSec driver + - net: socionext: include linux/io.h to fix build + - net: socionext: Fix error return code in netsec_netdev_open() + + * [Artful/Bionic] [Config] enable EDAC_GHES for ARM64 (LP: #1747746) + - [Config] CONFIG_EDAC_GHES=y + + * support thunderx2 vendor pmu events (LP: #1747523) + - perf pmu: Pass pmu as a parameter to get_cpuid_str() + - perf tools arm64: Add support for get_cpuid_str function. + - perf pmu: Add helper function is_pmu_core to detect PMU CORE devices + - perf vendor events arm64: Add ThunderX2 implementation defined pmu core + events + - perf pmu: Add check for valid cpuid in perf_pmu__find_map() + + * linux 4.14.0-7.9 ADT test failure with linux 4.14.0-7.9 (LP: #1732463) + - SAUCE: mm: disable vma based swap readahead by default + - SAUCE: mm: fix memory hotplug in ZONE_HIGHMEM + + * Miscellaneous Ubuntu changes + - [Config] Fix CONFIG_PROFILE_ALL_BRANCHES annotations + + -- Seth Forshee Wed, 07 Feb 2018 21:13:27 -0600 + +linux (4.15.0-7.8) bionic; urgency=medium + + * Bionic update to v4.15.1 stable release (LP: #1747169) + - Bluetooth: hci_serdev: Init hci_uart proto_lock to avoid oops + - tools/gpio: Fix build error with musl libc + - gpio: stmpe: i2c transfer are forbiden in atomic context + - gpio: Fix kernel stack leak to userspace + - ALSA: hda - Reduce the suspend time consumption for ALC256 + - crypto: ecdh - fix typo in KPP dependency of CRYPTO_ECDH + - crypto: aesni - handle zero length dst buffer + - crypto: aesni - fix typo in generic_gcmaes_decrypt + - crypto: aesni - add wrapper for generic gcm(aes) + - crypto: aesni - Fix out-of-bounds access of the data buffer in generic-gcm- + aesni + - crypto: aesni - Fix out-of-bounds access of the AAD buffer in generic-gcm- + aesni + - crypto: inside-secure - fix hash when length is a multiple of a block + - crypto: inside-secure - avoid unmapping DMA memory that was not mapped + - crypto: sha3-generic - fixes for alignment and big endian operation + - crypto: af_alg - whitelist mask and type + - HID: wacom: EKR: ensure devres groups at higher indexes are released + - HID: wacom: Fix reporting of touch toggle (WACOM_HID_WD_MUTE_DEVICE) events + - power: reset: zx-reboot: add missing MODULE_DESCRIPTION/AUTHOR/LICENSE + - gpio: iop: add missing MODULE_DESCRIPTION/AUTHOR/LICENSE + - gpio: ath79: add missing MODULE_DESCRIPTION/LICENSE + - mtd: nand: denali_pci: add missing MODULE_DESCRIPTION/AUTHOR/LICENSE + - igb: Free IRQs when device is hotplugged + - ima/policy: fix parsing of fsuuid + - scsi: aacraid: Fix udev inquiry race condition + - scsi: aacraid: Fix hang in kdump + - scsi: storvsc: missing error code in storvsc_probe() + - staging: lustre: separate a connection destroy from free struct kib_conn + - staging: ccree: NULLify backup_info when unused + - staging: ccree: fix fips event irq handling build + - tty: fix data race between tty_init_dev and flush of buf + - usb: option: Add support for FS040U modem + - USB: serial: pl2303: new device id for Chilitag + - USB: cdc-acm: Do not log urb submission errors on disconnect + - CDC-ACM: apply quirk for card reader + - USB: serial: io_edgeport: fix possible sleep-in-atomic + - usbip: prevent bind loops on devices attached to vhci_hcd + - usbip: list: don't list devices attached to vhci_hcd + - USB: serial: simple: add Motorola Tetra driver + - usb: f_fs: Prevent gadget unbind if it is already unbound + - usb: uas: unconditionally bring back host after reset + - usb/gadget: Fix "high bandwidth" check in usb_gadget_ep_match_desc() + - ANDROID: binder: remove waitqueue when thread exits. + - android: binder: use VM_ALLOC to get vm area + - mei: me: allow runtime pm for platform with D0i3 + - serial: 8250_of: fix return code when probe function fails to get reset + - serial: 8250_uniphier: fix error return code in uniphier_uart_probe() + - serial: 8250_dw: Revert "Improve clock rate setting" + - serial: imx: Only wakeup via RTSDEN bit if the system has RTS/CTS + - spi: imx: do not access registers while clocks disabled + - iio: adc: stm32: fix scan of multiple channels with DMA + - iio: chemical: ccs811: Fix output of IIO_CONCENTRATION channels + - test_firmware: fix missing unlock on error in config_num_requests_store() + - Input: synaptics-rmi4 - unmask F03 interrupts when port is opened + - Input: synaptics-rmi4 - do not delete interrupt memory too early + - x86/efi: Clarify that reset attack mitigation needs appropriate userspace + - Linux 4.15.1 + + * Dell XPS 13 9360 bluetooth (Atheros) won't connect after resume + (LP: #1744712) + - Revert "Bluetooth: btusb: fix QCA Rome suspend/resume" + - Bluetooth: btusb: Restore QCA Rome suspend/resume fix with a "rewritten" + version + + * apparmor profile load in stacked policy container fails (LP: #1746463) + - SAUCE: apparmor: fix display of .ns_name for containers + + -- Seth Forshee Sun, 04 Feb 2018 11:56:32 +0100 + +linux (4.15.0-6.7) bionic; urgency=low + + * upload urgency should be medium by default (LP: #1745338) + - [Packaging] update urgency to medium by default + + * Shutdown hang on 16.04 with iscsi targets (LP: #1569925) + - scsi: libiscsi: Allow sd_shutdown on bad transport + + * Miscellaneous Ubuntu changes + - SAUCE: (noup) Update spl to 0.7.5-1ubuntu1, zfs to 0.7.5-1ubuntu1 + - Revert "UBUNTU: SAUCE: mm: fix memory hotplug in ZONE_HIGHMEM" + - Revert "UBUNTU: SAUCE: mm: disable vma based swap readahead by default" + + [ Upstream Kernel Changes ] + + * Rebase to v4.15 + + -- Seth Forshee Mon, 29 Jan 2018 08:47:07 -0600 + +linux (4.15.0-5.6) bionic; urgency=low + + * $(LOCAL_ENV_CC) and $(LOCAL_ENV_DISTCC_HOSTS) should be properly quoted + (LP: #1744077) + - [Debian] pass LOCAL_ENV_CC and LOCAL_ENV_DISTCC_HOSTS properly + + * Missing install-time driver for QLogic QED 25/40/100Gb Ethernet NIC + (LP: #1743638) + - [d-i] Add qede to nic-modules udeb + + * boot failure on AMD Raven + WesternXT (LP: #1742759) + - SAUCE: drm/amdgpu: add atpx quirk handling (v2) + + * Unable to handle kernel NULL pointer dereference at isci_task_abort_task + (LP: #1726519) + - SAUCE: Revert "scsi: libsas: allow async aborts" + + * Update Ubuntu-4.15.0 config to support Intel Atom devices (LP: #1739939) + - [Config] CONFIG_SERIAL_DEV_BUS=y, CONFIG_SERIAL_DEV_CTRL_TTYPORT=y + + * Miscellaneous Ubuntu changes + - Rebase to v4.15-rc7 + - [Config] CONFIG_CPU_ISOLATION=y + - [Config] Update annotations following config review + - Revert "UBUNTU: SAUCE: Import aufs driver" + - SAUCE: Import aufs driver + - ubuntu: vbox -- update to 5.2.6-dfsg-1 + - ubuntu: vbox: build fixes for 4.15 + - ubuntu: vbox -- update to 5.2.6-dfsg-2 + - hio: updates for timer api changes in 4.15 + - enable hio build + - Rebase to v4.15-rc9 + + [ Upstream Kernel Changes ] + + * Rebase to v4.15-rc9 + + -- Seth Forshee Mon, 22 Jan 2018 10:16:05 -0600 + +linux (4.15.0-4.5) bionic; urgency=low + + * [0cf3:e010] QCA6174A XR failed to pair with bt 4.0 device (LP: #1741166) + - SAUCE: Bluetooth: btusb: Add support for 0cf3:e010 + + * External HDMI monitor failed to show screen on Lenovo X1 series + (LP: #1738523) + - SAUCE: drm/i915: Disable writing of TMDS_OE on Lenovo ThinkPad X1 series + + * Miscellaneous Ubuntu changes + - [Debian] autoreconstruct - add resoration of execute permissions + + [ Upstream Kernel Changes ] + + * Rebase to v4.15-rc4 + + -- Seth Forshee Wed, 10 Jan 2018 10:24:22 -0600 + +linux (4.15.0-3.4) bionic; urgency=low + + * ubuntu/xr-usb-serial didn't get built in zesty and artful (LP: #1733281) + - SAUCE: make sure ubuntu/xr-usb-serial builds for x86 + + [ Upstream Kernel Changes ] + + * Rebase to v4.15-rc6 + + -- Seth Forshee Wed, 03 Jan 2018 20:20:43 -0600 + +linux (4.15.0-2.3) bionic; urgency=low + + * nvidia-graphics-drivers-384 384.90-0ubuntu6 ADT test failure with linux + 4.15.0-1.2 (LP: #1737752) + - x86/mm: Unbreak modules that use the DMA API + + * Ubuntu 17.10 corrupting BIOS - many LENOVO laptops models (LP: #1734147) + - [Config] CONFIG_SPI_INTEL_SPI_*=n + + * power: commonise configs IBMVETH/IBMVSCSI and ensure both are in linux-image + and udebs (LP: #1521712) + - [Config] Include ibmvnic in nic-modules + + * Enable arm64 emulation of removed ARMv7 instructions (LP: #1545542) + - [Config] Enable support for emulation of deprecated ARMv8 instructions + + * Miscellaneous Ubuntu changes + - SAUCE: (noup) Update spl with 4.15 compat fix (LP:#1737761) + - Enable zfs build + - [Debian] add icp to zfs-modules.ignore + + [ Upstream Kernel Changes ] + + * Rebase to v4.15-rc4 + + -- Seth Forshee Mon, 18 Dec 2017 09:27:13 -0600 + +linux (4.15.0-1.2) bionic; urgency=low + + * Disabling zfs does not always disable module checks for the zfs modules + (LP: #1737176) + - [Packaging] disable zfs module checks when zfs is disabled + + * Miscellaneous Ubuntu changes + - [Config] CONFIG_UNWINDER_FRAME_POINTER=y for amd64 + + [ Upstream Kernel Changes ] + + * Rebase to v4.15-rc3 + + -- Seth Forshee Sun, 10 Dec 2017 22:07:19 -0600 + +linux (4.15.0-0.1) bionic; urgency=low + + * Miscellaneous Ubuntu changes + - ubuntu: vbox -- update to 5.2.2-dfsg-2 + - ubuntu: vbox: build fixes for 4.15 + - disable hio build + - [Config] Update kernel lockdown options to fix build errors + - Disable zfs build + - SAUCE: Import aufs driver + - [Config] Enable AUFS config options + + [ Upstream Kernel Changes ] + + * Rebase to v4.15-rc2 + + -- Seth Forshee Fri, 08 Dec 2017 13:55:42 -0600 + +linux (4.14.0-11.13) bionic; urgency=low + + * linux: 4.14.0-11.13 -proposed tracker (LP: #1736168) + + * CVE-2017-1000405 + - mm, thp: Do not make page table dirty unconditionally in touch_p[mu]d() + + * linux 4.14.0-7.9 ADT test failure with linux 4.14.0-7.9 (LP: #1732463) + - SAUCE: mm: disable vma based swap readahead by default + - SAUCE: mm: fix memory hotplug in ZONE_HIGHMEM + + * Bionic update to v4.14.3 stable release (LP: #1735843) + - s390: fix transactional execution control register handling + - s390/noexec: execute kexec datamover without DAT + - s390/runtime instrumention: fix possible memory corruption + - s390/guarded storage: fix possible memory corruption + - s390/disassembler: add missing end marker for e7 table + - s390/disassembler: increase show_code buffer size + - ACPI / PM: Fix acpi_pm_notifier_lock vs flush_workqueue() deadlock + - ACPI / EC: Fix regression related to triggering source of EC event handling + - cpufreq: schedutil: Reset cached_raw_freq when not in sync with next_freq + - serdev: fix registration of second slave + - sched: Make resched_cpu() unconditional + - lib/mpi: call cond_resched() from mpi_powm() loop + - x86/boot: Fix boot failure when SMP MP-table is based at 0 + - x86/decoder: Add new TEST instruction pattern + - x86/entry/64: Fix entry_SYSCALL_64_after_hwframe() IRQ tracing + - x86/entry/64: Add missing irqflags tracing to native_load_gs_index() + - perf/x86/intel: Hide TSX events when RTM is not supported + - arm64: Implement arch-specific pte_access_permitted() + - ARM: 8722/1: mm: make STRICT_KERNEL_RWX effective for LPAE + - ARM: 8721/1: mm: dump: check hardware RO bit for LPAE + - uapi: fix linux/tls.h userspace compilation error + - uapi: fix linux/rxrpc.h userspace compilation errors + - MIPS: cmpxchg64() and HAVE_VIRT_CPU_ACCOUNTING_GEN don't work for 32-bit SMP + - MIPS: ralink: Fix MT7628 pinmux + - MIPS: ralink: Fix typo in mt7628 pinmux function + - net: mvneta: fix handling of the Tx descriptor counter + - nbd: wait uninterruptible for the dead timeout + - nbd: don't start req until after the dead connection logic + - PM / OPP: Add missing of_node_put(np) + - PCI/ASPM: Account for downstream device's Port Common_Mode_Restore_Time + - PCI/ASPM: Use correct capability pointer to program LTR_L1.2_THRESHOLD + - PCI: hv: Use effective affinity mask + - PCI: Set Cavium ACS capability quirk flags to assert RR/CR/SV/UF + - PCI: Apply Cavium ThunderX ACS quirk to more Root Ports + - ALSA: hda: Add Raven PCI ID + - dm integrity: allow unaligned bv_offset + - dm cache: fix race condition in the writeback mode overwrite_bio + optimisation + - dm crypt: allow unaligned bv_offset + - dm zoned: ignore last smaller runt zone + - dm mpath: remove annoying message of 'blk_get_request() returned -11' + - dm bufio: fix integer overflow when limiting maximum cache size + - ovl: Put upperdentry if ovl_check_origin() fails + - dm: allocate struct mapped_device with kvzalloc + - sched/rt: Simplify the IPI based RT balancing logic + - MIPS: pci: Remove KERN_WARN instance inside the mt7620 driver + - dm: fix race between dm_get_from_kobject() and __dm_destroy() + - dm: discard support requires all targets in a table support discards + - MIPS: Fix odd fp register warnings with MIPS64r2 + - MIPS: Fix MIPS64 FP save/restore on 32-bit kernels + - MIPS: dts: remove bogus bcm96358nb4ser.dtb from dtb-y entry + - MIPS: Fix an n32 core file generation regset support regression + - MIPS: BCM47XX: Fix LED inversion for WRT54GSv1 + - MIPS: math-emu: Fix final emulation phase for certain instructions + - rt2x00usb: mark device removed when get ENOENT usb error + - mm/z3fold.c: use kref to prevent page free/compact race + - autofs: don't fail mount for transient error + - nilfs2: fix race condition that causes file system corruption + - fscrypt: lock mutex before checking for bounce page pool + - eCryptfs: use after free in ecryptfs_release_messaging() + - libceph: don't WARN() if user tries to add invalid key + - bcache: check ca->alloc_thread initialized before wake up it + - fs: guard_bio_eod() needs to consider partitions + - fanotify: fix fsnotify_prepare_user_wait() failure + - isofs: fix timestamps beyond 2027 + - btrfs: change how we decide to commit transactions during flushing + - f2fs: expose some sectors to user in inline data or dentry case + - NFS: Fix typo in nomigration mount option + - NFS: Revert "NFS: Move the flock open mode check into nfs_flock()" + - nfs: Fix ugly referral attributes + - NFS: Avoid RCU usage in tracepoints + - NFS: revalidate "." etc correctly on "open". + - nfsd: deal with revoked delegations appropriately + - rtlwifi: rtl8192ee: Fix memory leak when loading firmware + - rtlwifi: fix uninitialized rtlhal->last_suspend_sec time + - iwlwifi: fix firmware names for 9000 and A000 series hw + - md: fix deadlock error in recent patch. + - md: don't check MD_SB_CHANGE_CLEAN in md_allow_write + - Bluetooth: btqcomsmd: Add support for BD address setup + - md/bitmap: revert a patch + - fsnotify: clean up fsnotify_prepare/finish_user_wait() + - fsnotify: pin both inode and vfsmount mark + - fsnotify: fix pinning group in fsnotify_prepare_user_wait() + - ata: fixes kernel crash while tracing ata_eh_link_autopsy event + - ext4: fix interaction between i_size, fallocate, and delalloc after a crash + - ext4: prevent data corruption with inline data + DAX + - ext4: prevent data corruption with journaling + DAX + - ALSA: pcm: update tstamp only if audio_tstamp changed + - ALSA: usb-audio: Add sanity checks to FE parser + - ALSA: usb-audio: Fix potential out-of-bound access at parsing SU + - ALSA: usb-audio: Add sanity checks in v2 clock parsers + - ALSA: timer: Remove kernel warning at compat ioctl error paths + - ALSA: hda/realtek - Fix ALC275 no sound issue + - ALSA: hda: Fix too short HDMI/DP chmap reporting + - ALSA: hda - Fix yet remaining issue with vmaster 0dB initialization + - ALSA: hda/realtek - Fix ALC700 family no sound issue + - ASoC: sun8i-codec: Invert Master / Slave condition + - ASoC: sun8i-codec: Fix left and right channels inversion + - ASoC: sun8i-codec: Set the BCLK divider + - mfd: lpc_ich: Avoton/Rangeley uses SPI_BYT method + - fix a page leak in vhost_scsi_iov_to_sgl() error recovery + - 9p: Fix missing commas in mount options + - fs/9p: Compare qid.path in v9fs_test_inode + - net/9p: Switch to wait_event_killable() + - scsi: qla2xxx: Suppress a kernel complaint in qla_init_base_qpair() + - scsi: sd_zbc: Fix sd_zbc_read_zoned_characteristics() + - scsi: lpfc: fix pci hot plug crash in timer management routines + - scsi: lpfc: fix pci hot plug crash in list_add call + - scsi: lpfc: Fix crash receiving ELS while detaching driver + - scsi: lpfc: Fix FCP hba_wqidx assignment + - scsi: lpfc: Fix oops if nvmet_fc_register_targetport fails + - iscsi-target: Make TASK_REASSIGN use proper se_cmd->cmd_kref + - iscsi-target: Fix non-immediate TMR reference leak + - target: fix null pointer regression in core_tmr_drain_tmr_list + - target: fix buffer offset in core_scsi3_pri_read_full_status + - target: Fix QUEUE_FULL + SCSI task attribute handling + - target: Fix caw_sem leak in transport_generic_request_failure + - target: Fix quiese during transport_write_pending_qf endless loop + - target: Avoid early CMD_T_PRE_EXECUTE failures during ABORT_TASK + - mtd: Avoid probe failures when mtd->dbg.dfs_dir is invalid + - mtd: nand: Export nand_reset() symbol + - mtd: nand: atmel: Actually use the PM ops + - mtd: nand: omap2: Fix subpage write + - mtd: nand: Fix writing mtdoops to nand flash. + - mtd: nand: mtk: fix infinite ECC decode IRQ issue + - mailbox: bcm-flexrm-mailbox: Fix FlexRM ring flush sequence + - p54: don't unregister leds when they are not initialized + - block: Fix a race between blk_cleanup_queue() and timeout handling + - raid1: prevent freeze_array/wait_all_barriers deadlock + - genirq: Track whether the trigger type has been set + - irqchip/gic-v3: Fix ppi-partitions lookup + - lockd: double unregister of inetaddr notifiers + - KVM: PPC: Book3S HV: Don't call real-mode XICS hypercall handlers if not + enabled + - KVM: nVMX: set IDTR and GDTR limits when loading L1 host state + - KVM: SVM: obey guest PAT + - kvm: vmx: Reinstate support for CPUs without virtual NMI + - dax: fix PMD faults on zero-length files + - dax: fix general protection fault in dax_alloc_inode + - SUNRPC: Fix tracepoint storage issues with svc_recv and svc_rqst_status + - clk: ti: dra7-atl-clock: fix child-node lookups + - libnvdimm, dimm: clear 'locked' status on successful DIMM enable + - libnvdimm, pfn: make 'resource' attribute only readable by root + - libnvdimm, namespace: fix label initialization to use valid seq numbers + - libnvdimm, region : make 'resource' attribute only readable by root + - libnvdimm, namespace: make 'resource' attribute only readable by root + - svcrdma: Preserve CB send buffer across retransmits + - IB/srpt: Do not accept invalid initiator port names + - IB/cm: Fix memory corruption in handling CM request + - IB/hfi1: Fix incorrect available receive user context count + - IB/srp: Avoid that a cable pull can trigger a kernel crash + - IB/core: Avoid crash on pkey enforcement failed in received MADs + - IB/core: Only maintain real QPs in the security lists + - NFC: fix device-allocation error return + - spi-nor: intel-spi: Fix broken software sequencing codes + - i40e: Use smp_rmb rather than read_barrier_depends + - igb: Use smp_rmb rather than read_barrier_depends + - igbvf: Use smp_rmb rather than read_barrier_depends + - ixgbevf: Use smp_rmb rather than read_barrier_depends + - i40evf: Use smp_rmb rather than read_barrier_depends + - fm10k: Use smp_rmb rather than read_barrier_depends + - ixgbe: Fix skb list corruption on Power systems + - parisc: Fix validity check of pointer size argument in new CAS + implementation + - powerpc: Fix boot on BOOK3S_32 with CONFIG_STRICT_KERNEL_RWX + - powerpc/mm/radix: Fix crashes on Power9 DD1 with radix MMU and STRICT_RWX + - powerpc/perf/imc: Use cpu_to_node() not topology_physical_package_id() + - powerpc/signal: Properly handle return value from uprobe_deny_signal() + - powerpc/64s: Fix masking of SRR1 bits on instruction fault + - powerpc/64s/radix: Fix 128TB-512TB virtual address boundary case allocation + - powerpc/64s/hash: Fix 512T hint detection to use >= 128T + - powerpc/64s/hash: Fix 128TB-512TB virtual address boundary case allocation + - powerpc/64s/hash: Fix fork() with 512TB process address space + - powerpc/64s/hash: Allow MAP_FIXED allocations to cross 128TB boundary + - media: Don't do DMA on stack for firmware upload in the AS102 driver + - media: rc: check for integer overflow + - media: rc: nec decoder should not send both repeat and keycode + - cx231xx-cards: fix NULL-deref on missing association descriptor + - media: v4l2-ctrl: Fix flags field on Control events + - media: venus: fix wrong size on dma_free + - media: venus: venc: fix bytesused v4l2_plane field + - media: venus: reimplement decoder stop command + - ARM64: dts: meson-gxl: Add alternate ARM Trusted Firmware reserved memory + zone + - iwlwifi: fix wrong struct for a000 device + - iwlwifi: add a new a000 device + - iwlwifi: pcie: sort IDs for the 9000 series for easier comparisons + - iwlwifi: add new cards for a000 series + - iwlwifi: add new cards for 8265 series + - iwlwifi: add new cards for 8260 series + - iwlwifi: fix PCI IDs and configuration mapping for 9000 series + - iwlwifi: mvm: support version 7 of the SCAN_REQ_UMAC FW command + - e1000e: Fix error path in link detection + - e1000e: Fix return value test + - e1000e: Separate signaling for link check/link up + - e1000e: Avoid receiver overrun interrupt bursts + - e1000e: fix buffer overrun while the I219 is processing DMA transactions + - Linux 4.14.3 + + * Miscellaneous Ubuntu changes + - SAUCE: s390/topology: don't inline cpu_to_node + - SAUCE: (noup) Update spl to 0.7.3-1ubuntu1, zfs to 0.7.3-1ubuntu1 + + -- Seth Forshee Mon, 04 Dec 2017 09:08:07 -0600 + +linux (4.14.0-10.12) bionic; urgency=low + + * linux: 4.14.0-10.12 -proposed tracker (LP: #1734901) + + * Miscellaneous Ubuntu changes + - SAUCE: Enable the ACPI kernel debugger and acpidbg tool + - [Packaging] Include arch/arm64/kernel/ftrace-mod.o in headers package + + -- Seth Forshee Tue, 28 Nov 2017 08:46:49 -0600 + +linux (4.14.0-9.11) bionic; urgency=low + + * linux: 4.14.0-9.11 -proposed tracker (LP: #1734728) + + * Miscellaneous Ubuntu changes + - Revert "UBUNTU: SAUCE: (noup) Update spl to 0.7.3-1ubuntu1, zfs to + 0.7.3-1ubuntu1" + + -- Seth Forshee Mon, 27 Nov 2017 12:44:48 -0600 + +linux (4.14.0-8.10) bionic; urgency=low + + * linux: 4.14.0-8.10 -proposed tracker (LP: #1734695) + + * Bionic update to v4.14.2 stable release (LP: #1734694) + - bio: ensure __bio_clone_fast copies bi_partno + - af_netlink: ensure that NLMSG_DONE never fails in dumps + - vxlan: fix the issue that neigh proxy blocks all icmpv6 packets + - net: cdc_ncm: GetNtbFormat endian fix + - fealnx: Fix building error on MIPS + - net/sctp: Always set scope_id in sctp_inet6_skb_msgname + - ima: do not update security.ima if appraisal status is not INTEGRITY_PASS + - serial: omap: Fix EFR write on RTS deassertion + - serial: 8250_fintek: Fix finding base_port with activated SuperIO + - tpm-dev-common: Reject too short writes + - rcu: Fix up pending cbs check in rcu_prepare_for_idle + - mm/pagewalk.c: report holes in hugetlb ranges + - ocfs2: fix cluster hang after a node dies + - ocfs2: should wait dio before inode lock in ocfs2_setattr() + - ipmi: fix unsigned long underflow + - mm/page_alloc.c: broken deferred calculation + - mm/page_ext.c: check if page_ext is not prepared + - coda: fix 'kernel memory exposure attempt' in fsync + - ipmi: Prefer ACPI system interfaces over SMBIOS ones + - Linux 4.14.2 + + * Bionic update to v4.14.1 stable release (LP: #1734693) + - EDAC, sb_edac: Don't create a second memory controller if HA1 is not present + - dmaengine: dmatest: warn user when dma test times out + - media: imon: Fix null-ptr-deref in imon_probe + - media: dib0700: fix invalid dvb_detach argument + - crypto: dh - Fix double free of ctx->p + - crypto: dh - Don't permit 'p' to be 0 + - crypto: dh - Don't permit 'key' or 'g' size longer than 'p' + - crypto: brcm - Explicity ACK mailbox message + - USB: early: Use new USB product ID and strings for DbC device + - USB: usbfs: compute urb->actual_length for isochronous + - USB: Add delay-init quirk for Corsair K70 LUX keyboards + - usb: gadget: f_fs: Fix use-after-free in ffs_free_inst + - USB: serial: metro-usb: stop I/O after failed open + - USB: serial: Change DbC debug device binding ID + - USB: serial: qcserial: add pid/vid for Sierra Wireless EM7355 fw update + - USB: serial: garmin_gps: fix I/O after failed probe and remove + - USB: serial: garmin_gps: fix memory leak on probe errors + - selftests/x86/protection_keys: Fix syscall NR redefinition warnings + - x86/MCE/AMD: Always give panic severity for UC errors in kernel context + - platform/x86: peaq-wmi: Add DMI check before binding to the WMI interface + - platform/x86: peaq_wmi: Fix missing terminating entry for peaq_dmi_table + - HID: cp2112: add HIDRAW dependency + - HID: wacom: generic: Recognize WACOM_HID_WD_PEN as a type of pen collection + - rpmsg: glink: Add missing MODULE_LICENSE + - staging: wilc1000: Fix bssid buffer offset in Txq + - staging: sm750fb: Fix parameter mistake in poke32 + - staging: ccree: fix 64 bit scatter/gather DMA ops + - staging: greybus: spilib: fix use-after-free after deregistration + - staging: rtl8188eu: Revert 4 commits breaking ARP + - spi: fix use-after-free at controller deregistration + - sparc32: Add cmpxchg64(). + - sparc64: mmu_context: Add missing include files + - sparc64: Fix page table walk for PUD hugepages + - Linux 4.14.1 + + * Set PANIC_TIMEOUT=10 on Power Systems (LP: #1730660) + - [Config]: Set PANIC_TIMEOUT=10 on ppc64el + + * enable CONFIG_SND_SOC_INTEL_BYT_CHT_NOCODEC_MACH easily confuse users + (LP: #1732627) + - [Config] CONFIG_SND_SOC_INTEL_BYT_CHT_NOCODEC_MACH=n + + * Miscellaneous Ubuntu changes + - SAUCE: (noup) Update spl to 0.7.3-1ubuntu1, zfs to 0.7.3-1ubuntu1 + + -- Seth Forshee Mon, 27 Nov 2017 07:43:44 -0600 + +linux (4.14.0-7.9) bionic; urgency=low + + * Miscellaneous Ubuntu changes + - SAUCE: apparmor: add base infastructure for socket mediation + - SAUCE: apparmor: af_unix mediation + - SAUCE: LSM stacking: procfs: add smack subdir to attrs + - SAUCE: LSM stacking: LSM: manage credential security blobs + - SAUCE: LSM stacking: LSM: Manage file security blobs + - SAUCE: LSM stacking: LSM: manage task security blobs + - SAUCE: LSM stacking: LSM: Infrastructure management of the remaining blobs + - SAUCE: LSM stacking: LSM: general but not extreme module stacking + - SAUCE: LSM stacking: LSM: Complete task_alloc hook + - SAUCE: LSM stacking: fixup procsfs: add smack subdir to attrs + - SAUCE: LSM stacking: fixup initialize task->security + - SAUCE: LSM stacking: fixup: alloc_task_ctx is dead code + - SAUCE: LSM stacking: add support for stacking getpeersec_stream + - SAUCE: LSM stacking: add stacking support to apparmor network hooks + - SAUCE: LSM stacking: fixup apparmor stacking enablement + - SAUCE: LSM stacking: fixup stacking kconfig + - SAUCE: LSM stacking: allow selecting multiple LSMs using kernel boot params + - SAUCE: LSM stacking: provide prctl interface for setting context + - SAUCE: LSM stacking: inherit current display LSM + - SAUCE: LSM stacking: keep an index for each registered LSM + - SAUCE: LSM stacking: verify display LSM + - SAUCE: LSM stacking: provide a way to specify the default display lsm + - SAUCE: LSM stacking: make sure LSM blob align on 64 bit boundaries + - SAUCE: LSM stacking: add /proc//attr/display_lsm + - SAUCE: LSM stacking: add Kconfig to set default display LSM + - SAUCE: LSM stacking: add configs for LSM stacking + - SAUCE: LSM stacking: check for invalid zero sized writes + - [Config] Run updateconfigs after merging LSM stacking + - [Config] CONFIG_AMD_MEM_ENCRYPT=y + + [ Upstream Kernel Changes ] + + * Rebase to v4.14 + + -- Seth Forshee Mon, 13 Nov 2017 08:12:08 -0600 + +linux (4.14.0-6.8) bionic; urgency=low + + * Miscellaneous Ubuntu changes + - SAUCE: add workarounds to enable ZFS for 4.14 + + [ Upstream Kernel Changes ] + + * Rebase to v4.14-rc8 + + -- Seth Forshee Mon, 06 Nov 2017 11:39:00 -0600 + +linux (4.14.0-5.7) bionic; urgency=low + + * Miscellaneous Ubuntu changes + - [Debian] Fix invocation of dh_prep for dbgsym packages + + -- Seth Forshee Tue, 31 Oct 2017 07:07:23 -0500 + +linux (4.14.0-4.5) bionic; urgency=low + + * Miscellaneous Ubuntu changes + - [Packaging] virtualbox -- reduce in kernel module versions + - vbox-update: Fix up KERN_DIR definitions + - ubuntu: vbox -- update to 5.2.0-dfsg-2 + - [Config] CONFIG_AMD_MEM_ENCRYPT=n + + [ Upstream Kernel Changes ] + + * Rebase to v4.14-rc7 + + -- Seth Forshee Mon, 30 Oct 2017 13:29:20 -0500 + +linux (4.14.0-3.4) artful; urgency=low + + * Touchpad and TrackPoint Dose Not Work on Lenovo X1C6 and X280 (LP: #1723986) + - SAUCE: Input: synaptics-rmi4 - RMI4 can also use SMBUS version 3 + - SAUCE: Input: synaptics - Lenovo X1 Carbon 5 should use SMBUS/RMI + - SAUCE: Input: synaptics - add Intertouch support on X1 Carbon 6th and X280 + + * powerpc/64s: Add workaround for P9 vector CI load issuenext (LP: #1721070) + - powerpc/64s: Add workaround for P9 vector CI load issue + + * Miscellaneous Ubuntu changes + - SAUCE: staging: vboxvideo: Fix reporting invalid suggested-offset-properties + - [Config] CONFIG_DRM_VBOXVIDEO=m + - SAUCE: Import aufs driver + - [Config] Enable aufs + - [Config] Reorder annotations file after enabling aufs + - vbox-update: Disable imported vboxvideo module + - ubuntu: vbox -- update to 5.1.30-dfsg-1 + - Enable vbox + - hio: Use correct sizes when initializing ssd_index_bits* arrays + - hio: Update io stat accounting for 4.14 + - Enable hio + + [ Upstream Kernel Changes ] + + * Rebase to v4.14-rc5 + * Rebase to v4.14-rc6 + + -- Seth Forshee Mon, 23 Oct 2017 13:53:52 -0500 + +linux (4.14.0-2.3) artful; urgency=low + + * [Bug] USB controller failed to respond on Denverton after loading + intel_th_pci module (LP: #1715833) + - SAUCE: PCI: Disable broken RTIT_BAR of Intel TH + + * CONFIG_DEBUG_FS is not enabled by "make zfcpdump_defconfig" with Ubuntu + 17.10 (kernel 4.13) (LP: #1719290) + - SAUCE: s390: update zfcpdump_defconfig + + * Add installer support for Broadcom BCM573xx network drivers. (LP: #1720466) + - d-i: Add bnxt_en to nic-modules. + + * Miscellaneous Ubuntu changes + - [Config] Update annotations for 4.14-rc2 + + [ Upstream Kernel Changes ] + + * Rebase to v4.14-rc3 + * Rebase to v4.14-rc4 + + -- Seth Forshee Wed, 11 Oct 2017 16:04:27 -0500 + +linux (4.14.0-1.2) artful; urgency=low + + * [Bug] USB 3.1 Gen2 works as 5Gbps (LP: #1720045) + - xhci: set missing SuperSpeedPlus Link Protocol bit in roothub descriptor + + * Please make linux-libc-dev Provide: aufs-dev (LP: #1716091) + - [Packaging] Add aufs-dev to the Provides: for linux-libc-dev + + * Upgrade to 4.13.0-11.12 in artful amd64 VM breaks display on wayland + (LP: #1718679) + - [Config] CONFIG_DRM_VBOXVIDEO=n + + * ipmmu-vmsa driver breaks arm64 boots (LP: #1718734) + - [Config] Disable CONFIG_IPMMU_VMSA on arm64 + + * autopkgtest profile fails to build on armhf (LP: #1717920) + - [Packaging] autopkgtest -- disable d-i when dropping flavours + + * Miscellaneous Ubuntu changes + - [Config] CONFIG_I2C_XLP9XX=m + - [Packaging] Use SRCPKGNAME rather than hard-coding the source package name + + [ Upstream Kernel Changes ] + + * Rebase to v4.14-rc2 + + -- Seth Forshee Fri, 29 Sep 2017 09:09:11 -0400 + +linux (4.14.0-0.1) artful; urgency=low + + * Miscellaneous Ubuntu changes + - Disable vbox build + - Disable hio build + - Disable zfs build + + [ Upstream Kernel Changes ] + + * Rebase to v4.14-rc1 + + -- Seth Forshee Tue, 19 Sep 2017 20:22:29 -0500 + +linux (4.13.0-11.12) artful; urgency=low + + * linux: 4.13.0-11.12 -proposed tracker (LP: #1716699) + + * kernel panic -not syncing: Fatal exception: panic_on_oops (LP: #1708399) + - s390/mm: fix local TLB flushing vs. detach of an mm address space + - s390/mm: fix race on mm->context.flush_mm + + * CVE-2017-1000251 + - Bluetooth: Properly check L2CAP config option output buffer length + + -- Seth Forshee Tue, 12 Sep 2017 10:18:38 -0500 + +linux (4.13.0-10.11) artful; urgency=low + + * linux: 4.13.0-10.11 -proposed tracker (LP: #1716287) + + * please add aufs-dkms to the Provides: for the kernel packages (LP: #1716093) + - [Packaging] Add aufs-dkms to the Provides: for kernel packages + + * Artful update to v4.13.1 stable release (LP: #1716284) + - usb: quirks: add delay init quirk for Corsair Strafe RGB keyboard + - USB: serial: option: add support for D-Link DWM-157 C1 + - usb: Add device quirk for Logitech HD Pro Webcam C920-C + - usb:xhci:Fix regression when ATI chipsets detected + - USB: musb: fix external abort on suspend + - ANDROID: binder: add padding to binder_fd_array_object. + - ANDROID: binder: add hwbinder,vndbinder to BINDER_DEVICES. + - USB: core: Avoid race of async_completed() w/ usbdev_release() + - staging/rts5208: fix incorrect shift to extract upper nybble + - staging: ccree: save ciphertext for CTS IV + - staging: fsl-dpaa2/eth: fix off-by-one FD ctrl bitmaks + - iio: adc: ti-ads1015: fix incorrect data rate setting update + - iio: adc: ti-ads1015: fix scale information for ADS1115 + - iio: adc: ti-ads1015: enable conversion when CONFIG_PM is not set + - iio: adc: ti-ads1015: avoid getting stale result after runtime resume + - iio: adc: ti-ads1015: don't return invalid value from buffer setup callbacks + - iio: adc: ti-ads1015: add adequate wait time to get correct conversion + - driver core: bus: Fix a potential double free + - HID: wacom: Do not completely map WACOM_HID_WD_TOUCHRINGSTATUS usage + - binder: free memory on error + - crypto: caam/qi - fix compilation with CONFIG_DEBUG_FORCE_WEAK_PER_CPU=y + - crypto: caam/qi - fix compilation with DEBUG enabled + - thunderbolt: Fix reset response_type + - fpga: altera-hps2fpga: fix multiple init of l3_remap_lock + - intel_th: pci: Add Cannon Lake PCH-H support + - intel_th: pci: Add Cannon Lake PCH-LP support + - ath10k: fix memory leak in rx ring buffer allocation + - drm/vgem: Pin our pages for dmabuf exports + - drm/ttm: Fix accounting error when fail to get pages for pool + - drm/dp/mst: Handle errors from drm_atomic_get_private_obj_state() correctly + - rtlwifi: rtl_pci_probe: Fix fail path of _rtl_pci_find_adapter + - Bluetooth: Add support of 13d3:3494 RTL8723BE device + - iwlwifi: pci: add new PCI ID for 7265D + - dlm: avoid double-free on error path in dlm_device_{register,unregister} + - mwifiex: correct channel stat buffer overflows + - MCB: add support for SC31 to mcb-lpc + - s390/mm: avoid empty zero pages for KVM guests to avoid postcopy hangs + - drm/nouveau/pci/msi: disable MSI on big-endian platforms by default + - drm/nouveau: Fix error handling in nv50_disp_atomic_commit + - workqueue: Fix flag collision + - ahci: don't use MSI for devices with the silly Intel NVMe remapping scheme + - cs5536: add support for IDE controller variant + - scsi: sg: protect against races between mmap() and SG_SET_RESERVED_SIZE + - scsi: sg: recheck MMAP_IO request length with lock held + - of/device: Prevent buffer overflow in of_device_modalias() + - rtlwifi: Fix memory leak when firmware request fails + - rtlwifi: Fix fallback firmware loading + - Linux 4.13.1 + + * Kernel has trouble recognizing Corsair Strafe RGB keyboard (LP: #1678477) + - usb: quirks: add delay init quirk for Corsair Strafe RGB keyboard + + * SRIOV: warning if unload VFs (LP: #1715073) + - PCI: Disable VF decoding before pcibios_sriov_disable() updates resources + + * [Patch] network-i40e:NVM bug fixes (cherrypick from 4.14) (LP: #1715578) + - i40e: avoid NVM acquire deadlock during NVM update + - i40e: point wb_desc at the nvm_wb_desc during i40e_read_nvm_aq + + * [P9,POwer NV] Perf PMU event : pm_br_2path and pm_ld_miss_l1 is counted + twice when perf stat is done (perf:) (LP: #1714571) + - perf vendor events powerpc: Remove duplicate events + + * Unable to install Ubuntu on the NVMe disk under VMD PCI domain + (LP: #1703339) + - [Config] Include vmd in storage-core-modules udeb + + * 17.10 fails to boot on POWER9 DD2.0 with Deep stop states (LP: #1715064) + - powerpc/powernv: Save/Restore additional SPRs for stop4 cpuidle + - powerpc/powernv: Clear PECE1 in LPCR via stop-api only on Hotplug + - SAUCE: powerpc/powernv: Clear LPCR[PECE1] via stop-api only for deep state + offline + + * Miscellaneous Ubuntu changes + - SAUCE: selftests/seccomp: Support glibc 2.26 siginfo_t.h + - Revert "UBUNTU: SAUCE: Import aufs driver" + - SAUCE: Import aufs driver + + -- Seth Forshee Sun, 10 Sep 2017 17:48:59 -0500 + +linux (4.13.0-9.10) artful; urgency=low + + * linux: 4.13.0-9.10 -proposed tracker (LP: #1715145) + + * EDAC sbridge: Failed to register device with error -22. (LP: #1714112) + - [Config] CONFIG_EDAC_GHES=n + + * Miscellaneous Ubuntu changes + - ubuntu: vbox -- update to 5.1.26-dfsg-2 + + [ Upstream Kernel Changes ] + + * Rebase to v4.13 + + -- Seth Forshee Tue, 05 Sep 2017 07:51:19 -0500 + +linux (4.13.0-8.9) artful; urgency=low + + * snapd 2.27.3+17.10 ADT test failure with linux 4.13.0-6.7 (LP: #1713103) + - SAUCE: apparmor: fix apparmorfs DAC access, permissions + + * enable ARCH_SUNXI (and friends) in arm64 kernel .config (LP: #1701137) + - [Config] Enable CONFIG_ARCH_SUNXI and related options for arm64 + + * [Bug] Harrisonville: pnd2_edac always fail to load on B1 stepping + Harrisonville SDP (LP: #1709257) + - EDAC, pnd2: Build in a minimal sideband driver for Apollo Lake + - EDAC, pnd2: Mask off the lower four bits of a BAR + - EDAC, pnd2: Conditionally unhide/hide the P2SB PCI device to read BAR + - EDAC, pnd2: Properly toggle hidden state for P2SB PCI device + - SAUCE: i2c: i801: Restore the presence state of P2SB PCI device after + reading BAR + + * Miscellaneous Ubuntu changes + - Revert "UBUNTU: SAUCE: Import aufs driver" + - SAUCE: Import aufs driver + - SAUCE: selftests/powerpc: Disable some ptrace selftests + - [Config] CONFIG_CRYPTO_DEV_NITROX_CNN55XX=n for s390x + - [Config] CONFIG_I2C_SLAVE=n for amd64, i386, ppc64el + - [Config] Disable CONFIG_MDIO_* options for s390x + - [Config] CONFIG_SCSI_MQ_DEFAULT=n for s390x + - [Config] Update annotations for 4.13 + + -- Seth Forshee Thu, 31 Aug 2017 14:27:09 -0500 + +linux (4.13.0-7.8) artful; urgency=low + + * linux 4.12.0-11.12 ADT test failure with linux 4.12.0-11.12 (LP: #1710904) + - SAUCE: selftests/powerpc: Use snprintf to construct DSCR sysfs interface + paths + + * Miscellaneous Ubuntu changes + - Revert "UBUNTU: SAUCE: seccomp: log actions even when audit is disabled" + + * Miscellaneous upstream changes + - seccomp: Provide matching filter for introspection + - seccomp: Sysctl to display available actions + - seccomp: Operation for checking if an action is available + - seccomp: Sysctl to configure actions that are allowed to be logged + - seccomp: Selftest for detection of filter flag support + - seccomp: Filter flag to log all actions except SECCOMP_RET_ALLOW + - seccomp: Action to log before allowing + + [ Upstream Kernel Changes ] + + * Rebase to v4.13-rc7 + + -- Seth Forshee Mon, 28 Aug 2017 08:12:24 -0500 + +linux (4.13.0-6.7) artful; urgency=low + + * HID: multitouch: Support ALPS PTP Stick and Touchpad devices (LP: #1712481) + - SAUCE: HID: multitouch: Support ALPS PTP stick with pid 0x120A + + * sort ABI files with C.UTF-8 locale (LP: #1712345) + - [Packaging] sort ABI files with C.UTF-8 locale + + * igb: Support using Broadcom 54616 as PHY (LP: #1712024) + - SAUCE: igb: add support for using Broadcom 54616 as PHY + + * RPT related fixes missing in Ubuntu 16.04.3 (LP: #1709220) + - powerpc/mm/radix: Improve _tlbiel_pid to be usable for PWC flushes + - powerpc/mm/radix: Improve TLB/PWC flushes + - powerpc/mm/radix: Avoid flushing the PWC on every flush_tlb_range + + * Linux 4.12 refuses to load self-signed modules under Secure Boot with + properly enrolled keys (LP: #1712168) + - SAUCE: (efi-lockdown) MODSIGN: Fix module signature verification + + * [17.10 FEAT] Enable NVMe driver - kernel (LP: #1708432) + - [Config] CONFIG_BLK_DEV_NVME=m for s390 + + * Artful: 4.12.0-11.12: Boot panic in vlv2_plat_configure_clock+0x3b/0xa0 + (LP: #1711298) + - [Config] CONFIG_INTEL_ATOMISP=n + + * Miscellaneous Ubuntu changes + - SAUCE: apparmor: af_unix mediation + + * Miscellaneous upstream changes + - apparmor: Fix shadowed local variable in unpack_trans_table() + - apparmor: Fix logical error in verify_header() + - apparmor: Fix an error code in aafs_create() + - apparmor: Redundant condition: prev_ns. in [label.c:1498] + - apparmor: add the ability to mediate signals + - apparmor: add mount mediation + - apparmor: cleanup conditional check for label in label_print + - apparmor: add support for absolute root view based labels + - apparmor: make policy_unpack able to audit different info messages + - apparmor: add more debug asserts to apparmorfs + - apparmor: add base infastructure for socket mediation + - apparmor: move new_null_profile to after profile lookup fns() + - apparmor: fix race condition in null profile creation + - apparmor: ensure unconfined profiles have dfas initialized + - apparmor: fix incorrect type assignment when freeing proxies + + [ Upstream Kernel Changes ] + + * Rebase to v4.13-rc6 + + -- Seth Forshee Wed, 23 Aug 2017 08:10:38 -0500 + +linux (4.13.0-5.6) artful; urgency=low + + * Ubuntu17.10 - perf: Update Power9 PMU event JSON files (LP: #1708630) + - perf pmu-events: Support additional POWER8+ PVR in mapfile + - perf vendor events: Add POWER9 PMU events + - perf vendor events: Add POWER9 PVRs to mapfile + - SAUCE: perf vendor events powerpc: remove suffix in mapfile + - SAUCE: perf vendor events powerpc: Update POWER9 events + + * Disable CONFIG_MEMORY_HOTPLUG_DEFAULT_ONLINE (LP: #1709171) + - [Config] CONFIG_MEMORY_HOTPLUG_DEFAULT_ONLINE=n for ppc64el + + * Please only recommend or suggest initramfs-tools | linux-initramfs-tool for + kernels able to boot without initramfs (LP: #1700972) + - [Debian] Don't depend on initramfs-tools + + * Miscellaneous Ubuntu changes + - SAUCE: Import aufs driver + - SAUCE: aufs -- Add missing argument to loop_switch() call + - [Config] Enable aufs + - SAUCE: (noup) Update spl to 0.6.5.11-ubuntu1, zfs to 0.6.5.11-1ubuntu3 + - Enable zfs build + - SAUCE: powerpc: Always initialize input array when calling epapr_hypercall() + - [Packaging] switch up to debhelper 9 + + [ Upstream Kernel Changes ] + + * Rebase to v4.13-rc5 + + -- Seth Forshee Tue, 15 Aug 2017 09:24:16 -0500 + +linux (4.13.0-4.5) artful; urgency=low + + * Lenovo Yoga 910 Sensors (LP: #1708120) + - SAUCE: (no-up) HID: Add quirk for Lenovo Yoga 910 with ITE Chips + + * Unable to install Ubuntu on the NVMe disk under VMD PCI domain + (LP: #1703339) + - [Config] Add vmd driver to generic inclusion list + + * Set CONFIG_SATA_HIGHBANK=y on armhf (LP: #1703430) + - [Config] CONFIG_SATA_HIGHBANK=y + + * Miscellaneous Ubuntu changes + - ubuntu: vbox -- update to 5.1.26-dfsg-1 + - SAUCE: hio: Build fixes for 4.13 + - Enable hio build + - SAUCE: (noup) Update spl to 0.6.5.11-1, zfs to 0.6.5.11-1ubuntu1 + - [debian] use all rather than amd64 dkms debs for sync + + [ Upstream Kernel Changes ] + + * Rebase to v4.13-rc4 + + -- Seth Forshee Tue, 08 Aug 2017 11:31:48 -0500 + +linux (4.13.0-3.4) artful; urgency=low + + * Adt tests of src:linux time out often on armhf lxc containers (LP: #1705495) + - [Packaging] tests -- reduce rebuild test to one flavour + - [Packaging] tests -- reduce rebuild test to one flavour -- use filter + + * snapd 2.26.8+17.10 ADT test failure with linux 4.12.0-6.7 (LP: #1704158) + - SAUCE: virtio_net: Revert mergeable buffer handling rework + + [ Upstream Kernel Changes ] + + * Rebase to v4.13-rc3 + + -- Seth Forshee Mon, 31 Jul 2017 10:08:16 -0500 + +linux (4.13.0-2.3) artful; urgency=low + + * Change CONFIG_IBMVETH to module (LP: #1704479) + - [Config] CONFIG_IBMVETH=m + + [ Upstream Kernel Changes ] + + * Rebase to v4.13-rc2 + + -- Seth Forshee Mon, 24 Jul 2017 13:58:08 -0500 + +linux (4.13.0-1.2) artful; urgency=low + + * Miscellaneous Ubuntu changes + - [Debian] Support sphinx-based kernel documentation + + -- Seth Forshee Thu, 20 Jul 2017 09:18:33 -0500 + +linux (4.13.0-0.1) artful; urgency=low + + * Miscellaneous Ubuntu changes + - Disable hio + - Disable zfs build + - ubuntu: vbox -- update to 5.1.24-dfsg-1 + + [ Upstream Kernel Changes ] + + * Rebase to v4.13-rc1 + + -- Seth Forshee Wed, 19 Jul 2017 15:09:31 -0500 + +linux (4.12.0-7.8) artful; urgency=low + + * ThunderX: soft lockup on 4.8+ kernels when running qemu-efi with vhost=on + (LP: #1673564) + - arm64: Add a facility to turn an ESR syndrome into a sysreg encoding + - KVM: arm/arm64: vgic-v3: Add accessors for the ICH_APxRn_EL2 registers + - KVM: arm64: Make kvm_condition_valid32() accessible from EL2 + - KVM: arm64: vgic-v3: Add hook to handle guest GICv3 sysreg accesses at EL2 + - KVM: arm64: vgic-v3: Add ICV_BPR1_EL1 handler + - KVM: arm64: vgic-v3: Add ICV_IGRPEN1_EL1 handler + - KVM: arm64: vgic-v3: Add ICV_IAR1_EL1 handler + - KVM: arm64: vgic-v3: Add ICV_EOIR1_EL1 handler + - KVM: arm64: vgic-v3: Add ICV_AP1Rn_EL1 handler + - KVM: arm64: vgic-v3: Add ICV_HPPIR1_EL1 handler + - KVM: arm64: vgic-v3: Enable trapping of Group-1 system registers + - KVM: arm64: Enable GICv3 Group-1 sysreg trapping via command-line + - KVM: arm64: vgic-v3: Add ICV_BPR0_EL1 handler + - KVM: arm64: vgic-v3: Add ICV_IGNREN0_EL1 handler + - KVM: arm64: vgic-v3: Add misc Group-0 handlers + - KVM: arm64: vgic-v3: Enable trapping of Group-0 system registers + - KVM: arm64: Enable GICv3 Group-0 sysreg trapping via command-line + - arm64: Add MIDR values for Cavium cn83XX SoCs + - arm64: Add workaround for Cavium Thunder erratum 30115 + - KVM: arm64: vgic-v3: Add ICV_DIR_EL1 handler + - KVM: arm64: vgic-v3: Add ICV_RPR_EL1 handler + - KVM: arm64: vgic-v3: Add ICV_CTLR_EL1 handler + - KVM: arm64: vgic-v3: Add ICV_PMR_EL1 handler + - KVM: arm64: Enable GICv3 common sysreg trapping via command-line + - KVM: arm64: vgic-v3: Log which GICv3 system registers are trapped + - KVM: arm64: Log an error if trapping a read-from-write-only GICv3 access + - KVM: arm64: Log an error if trapping a write-to-read-only GICv3 access + + * hns: under heavy load, NIC may fail and require reboot (LP: #1704146) + - net: hns: Bugfix for Tx timeout handling in hns driver + + * New ACPI identifiers for ThunderX SMMU (LP: #1703437) + - iommu/arm-smmu: Plumb in new ACPI identifiers + + * Transparent hugepages should default to enabled=madvise (LP: #1703742) + - SAUCE: use CONFIG_TRANSPARENT_HUGEPAGE_MADVISE=y as default + + * Artful update to v4.12.1 stable release (LP: #1703858) + - driver core: platform: fix race condition with driver_override + - RDMA/uverbs: Check port number supplied by user verbs cmds + - usb: dwc3: replace %p with %pK + - USB: serial: cp210x: add ID for CEL EM3588 USB ZigBee stick + - usb: usbip: set buffer pointers to NULL after free + - Add USB quirk for HVR-950q to avoid intermittent device resets + - usb: Fix typo in the definition of Endpoint[out]Request + - USB: core: fix device node leak + - USB: serial: option: add two Longcheer device ids + - USB: serial: qcserial: new Sierra Wireless EM7305 device ID + - xhci: Limit USB2 port wake support for AMD Promontory hosts + - gfs2: Fix glock rhashtable rcu bug + - Add "shutdown" to "struct class". + - tpm: Issue a TPM2_Shutdown for TPM2 devices. + - tpm: fix a kernel memory leak in tpm-sysfs.c + - powerpc/powernv: Fix CPU_HOTPLUG=n idle.c compile error + - x86/uaccess: Optimize copy_user_enhanced_fast_string() for short strings + - sched/fair, cpumask: Export for_each_cpu_wrap() + - sched/core: Implement new approach to scale select_idle_cpu() + - sched/numa: Use down_read_trylock() for the mmap_sem + - sched/numa: Override part of migrate_degrades_locality() when idle balancing + - sched/fair: Simplify wake_affine() for the single socket case + - sched/numa: Implement NUMA node level wake_affine() + - sched/fair: Remove effective_load() + - sched/numa: Hide numa_wake_affine() from UP build + - xen: avoid deadlock in xenbus driver + - crypto: drbg - Fixes panic in wait_for_completion call + - Linux 4.12.1 + + * cxlflash update request in the Xenial SRU stream (LP: #1702521) + - scsi: cxlflash: Combine the send queue locks + - scsi: cxlflash: Update cxlflash_afu_sync() to return errno + - scsi: cxlflash: Reset hardware queue context via specified register + - scsi: cxlflash: Schedule asynchronous reset of the host + - scsi: cxlflash: Handle AFU sync failures + - scsi: cxlflash: Track pending scsi commands in each hardware queue + - scsi: cxlflash: Flush pending commands in cleanup path + - scsi: cxlflash: Add scsi command abort handler + - scsi: cxlflash: Create character device to provide host management interface + - scsi: cxlflash: Separate AFU internal command handling from AFU sync + specifics + - scsi: cxlflash: Introduce host ioctl support + - scsi: cxlflash: Refactor AFU capability checking + - scsi: cxlflash: Support LUN provisioning + - scsi: cxlflash: Support AFU debug + - scsi: cxlflash: Support WS16 unmap + - scsi: cxlflash: Remove zeroing of private command data + - scsi: cxlflash: Update TMF command processing + - scsi: cxlflash: Avoid double free of character device + - scsi: cxlflash: Update send_tmf() parameters + - scsi: cxlflash: Update debug prints in reset handlers + + * make snap-pkg support (LP: #1700747) + - make snap-pkg support + + * Quirk for non-compliant PCI bridge on HiSilicon D05 board (LP: #1698706) + - SAUCE: PCI: Support hibmc VGA cards behind a misbehaving HiSilicon bridge + + * arm64: fix crash reading /proc/kcore (LP: #1702749) + - fs/proc: kcore: use kcore_list type to check for vmalloc/module address + - arm64: mm: select CONFIG_ARCH_PROC_KCORE_TEXT + + * Opal and POWER9 DD2 (LP: #1702159) + - SAUCE: powerpc/powernv: Tell OPAL about our MMU mode on POWER9 + + * Data corruption with hio driver (LP: #1701316) + - SAUCE: hio: Fix incorrect use of enum req_opf values + + * Miscellaneous Ubuntu changes + - SAUCE: (noup) Update spl to 0.6.5.10-1, zfs to 0.6.5.10-1ubuntu2 + - snapcraft.yaml: Sync with xenial + - [Config] CONFIG_CAVIUM_ERRATUM_30115=y + + * Miscellaneous upstream changes + - Revert "UBUNTU: SAUCE: (efi-lockdown) efi: Add sysctls for secureboot and + MokSBState" + + -- Seth Forshee Fri, 14 Jul 2017 15:25:41 -0500 + +linux (4.12.0-6.7) artful; urgency=low + + * update ENA driver to 1.2.0k from net-next (LP: #1701575) + - net: ena: change return value for unsupported features unsupported return + value + - net: ena: add hardware hints capability to the driver + - net: ena: change sizeof() argument to be the type pointer + - net: ena: add reset reason for each device FLR + - net: ena: add support for out of order rx buffers refill + - net: ena: allow the driver to work with small number of msix vectors + - net: ena: use napi_schedule_irqoff when possible + - net: ena: separate skb allocation to dedicated function + - net: ena: use lower_32_bits()/upper_32_bits() to split dma address + - net: ena: update driver's rx drop statistics + - net: ena: update ena driver to version 1.2.0 + + * APST gets enabled against explicit kernel option (LP: #1699004) + - nvme: explicitly disable APST on quirked devices + + * Miscellaneous Ubuntu changes + - SAUCE: hio: Update to Huawei ES3000_V2 (2.1.0.40) + - SAUCE: hio updates for 4.12 + - SAUCE: Enable hio build + + -- Seth Forshee Wed, 05 Jul 2017 14:23:20 -0500 + +linux (4.12.0-5.6) artful; urgency=low + + * ERAT invalidate on context switch removal (LP: #1700819) + - powerpc: Only do ERAT invalidate on radix context switch on P9 DD1 + + * powerpc: Invalidate ERAT on powersave wakeup for POWER9 (LP: #1700521) + - SAUCE: powerpc: Invalidate ERAT on powersave wakeup for POWER9 + + * Miscellaneous Ubuntu changes + - d-i: Move qcom-emac from arm64 to shared nic-modules + + [ Upstream Kernel Changes ] + + * Rebase to v4.12 + + -- Seth Forshee Mon, 03 Jul 2017 07:52:02 -0500 + +linux (4.12.0-4.5) artful; urgency=low + + * aacraid driver may return uninitialized stack data to userspace + (LP: #1700077) + - SAUCE: scsi: aacraid: Don't copy uninitialized stack memory to userspace + + * KILLER1435-S[0489:e0a2] BT cannot search BT 4.0 device (LP: #1699651) + - Bluetooth: btusb: Add support for 0489:e0a2 QCA_ROME device + + * AACRAID for power9 platform (LP: #1689980) + - scsi: aacraid: Remove __GFP_DMA for raw srb memory + - scsi: aacraid: Fix DMAR issues with iommu=pt + - scsi: aacraid: Added 32 and 64 queue depth for arc natives + - scsi: aacraid: Set correct Queue Depth for HBA1000 RAW disks + - scsi: aacraid: Remove reset support from check_health + - scsi: aacraid: Change wait time for fib completion + - scsi: aacraid: Log count info of scsi cmds before reset + - scsi: aacraid: Print ctrl status before eh reset + - scsi: aacraid: Using single reset mask for IOP reset + - scsi: aacraid: Rework IOP reset + - scsi: aacraid: Add periodic checks to see IOP reset status + - scsi: aacraid: Rework SOFT reset code + - scsi: aacraid: Rework aac_src_restart + - scsi: aacraid: Use correct function to get ctrl health + - scsi: aacraid: Make sure ioctl returns on controller reset + - scsi: aacraid: Enable ctrl reset for both hba and arc + - scsi: aacraid: Add reset debugging statements + - scsi: aacraid: Remove reference to Series-9 + - scsi: aacraid: Update driver version to 50834 + + * hibmc driver does not include "pci:" prefix in bus ID (LP: #1698700) + - SAUCE: drm: hibmc: Use set_busid function from drm core + + * HiSilicon D05: installer doesn't appear on VGA (LP: #1698954) + - d-i: Add hibmc-drm to kernel-image udeb + + * Fix /proc/cpuinfo revision for POWER9 DD2 (LP: #1698844) + - SAUCE: powerpc: Fix /proc/cpuinfo revision for POWER9 DD2 + + * Miscellaneous Ubuntu changes + - [Config] CONFIG_SATA_MV=n and CONFIG_GENERIC_PHY=n for s390x + - [Config] CONFIG_ATA=n for s390x + - [Config] Update annotations for 4.12 + + [ Upstream Kernel Changes ] + + * Rebase to v4.12-rc7 + + -- Seth Forshee Mon, 26 Jun 2017 11:27:29 -0500 + +linux (4.12.0-3.4) artful; urgency=low + + * Miscellaneous upstream changes + - ufs: fix the logics for tail relocation + + [ Upstream Kernel Changes ] + + * Rebase to v4.12-rc6 + + -- Seth Forshee Mon, 19 Jun 2017 14:50:39 -0500 + +linux (4.12.0-2.3) artful; urgency=low + + * CVE-2014-9900 + - SAUCE: (no-up) net: Zeroing the structure ethtool_wolinfo in + ethtool_get_wol() + + * System doesn't boot properly on Gigabyte AM4 motherboards (AMD Ryzen) + (LP: #1671360) + - pinctrl/amd: Use regular interrupt instead of chained + + * extend-diff-ignore should use exact matches (LP: #1693504) + - [Packaging] exact extend-diff-ignore matches + + * Miscellaneous Ubuntu changes + - SAUCE: efi: Don't print secure boot state from the efi stub + - ubuntu: vbox -- Update to 5.1.22-dfsg-1 + - SAUCE: vbox fixes for 4.12 + - Re-enable virtualbox build + - [Config] CONFIG_ORANGEFS_FS=m + - SAUCE: (noup) Update spl to 0.6.5.9-1ubuntu2, zfs to 0.6.5.9-5ubuntu7 + - Enable zfs build + + [ Upstream Kernel Changes ] + + * Rebase to v4.12-rc4 + * Rebase to v4.12-rc5 + + -- Seth Forshee Sun, 11 Jun 2017 22:25:13 -0500 + +linux (4.12.0-1.2) artful; urgency=low + + * Enable Matrox driver for Ubuntu 16.04.3 (LP: #1693337) + - [Config] Enable CONFIG_DRM_MGAG200 as module + + * Support low-pin-count devices on Hisilicon SoCs (LP: #1677319) + - [Config] CONFIG_LIBIO=y on arm64 only + - SAUCE: LIBIO: Introduce a generic PIO mapping method + - SAUCE: OF: Add missing I/O range exception for indirect-IO devices + - [Config] CONFIG_HISILICON_LPC=y + - SAUCE: LPC: Support the device-tree LPC host on Hip06/Hip07 + - SAUCE: LIBIO: Support the dynamically logical PIO registration of ACPI host + I/O + - SAUCE: LPC: Add the ACPI LPC support + - SAUCE: PCI: Apply the new generic I/O management on PCI IO hosts + - SAUCE: PCI: Restore codepath for !CONFIG_LIBIO + + * POWER9: Additional patches for TTY and CPU_IDLE (LP: #1674325) + - SAUCE: tty: Fix ldisc crash on reopened tty + + * Miscellaneous Ubuntu changes + - [Debian] Add build-dep on libnuma-dev to enable 'perf bench numa' + - Rebase to v4.12-rc3 + + [ Upstream Kernel Changes ] + + * Rebase to v4.12-rc3 + + -- Seth Forshee Mon, 29 May 2017 20:56:29 -0500 + +linux (4.12.0-0.1) artful; urgency=low + + * please enable CONFIG_ARM64_LSE_ATOMICS (LP: #1691614) + - [Config] CONFIG_ARM64_LSE_ATOMICS=y + + * [Regression] NUMA_BALANCING disabled on arm64 (LP: #1690914) + - [Config] CONFIG_NUMA_BALANCING{,_DEFAULT_ENABLED}=y on arm64 + + * exec'ing a setuid binary from a threaded program sometimes fails to setuid + (LP: #1672819) + - SAUCE: exec: ensure file system accounting in check_unsafe_exec is correct + + * Miscellaneous Ubuntu changes + - Update find-missing-sauce.sh to compare to artful + - Update dropped.txt + - SAUCE: (efi-lockdown) efi: Add EFI_SECURE_BOOT bit + - SAUCE: (efi-lockdown) Add the ability to lock down access to the running + kernel image + - SAUCE: (efi-lockdown) efi: Lock down the kernel if booted in secure boot + mode + - SAUCE: (efi-lockdown) Enforce module signatures if the kernel is locked down + - SAUCE: (efi-lockdown) Restrict /dev/mem and /dev/kmem when the kernel is + locked down + - SAUCE: (efi-lockdown) Add a sysrq option to exit secure boot mode + - SAUCE: (efi-lockdown) kexec: Disable at runtime if the kernel is locked down + - SAUCE: (efi-lockdown) Copy secure_boot flag in boot params across kexec + reboot + - SAUCE: (efi-lockdown) kexec_file: Disable at runtime if securelevel has been + set + - SAUCE: (efi-lockdown) hibernate: Disable when the kernel is locked down + - SAUCE: (efi-lockdown) uswsusp: Disable when the kernel is locked down + - SAUCE: (efi-lockdown) PCI: Lock down BAR access when the kernel is locked + down + - SAUCE: (efi-lockdown) x86: Lock down IO port access when the kernel is + locked down + - SAUCE: (efi-lockdown) x86: Restrict MSR access when the kernel is locked + down + - SAUCE: (efi-lockdown) asus-wmi: Restrict debugfs interface when the kernel + is locked down + - SAUCE: (efi-lockdown) ACPI: Limit access to custom_method when the kernel is + locked down + - SAUCE: (efi-lockdown) acpi: Ignore acpi_rsdp kernel param when the kernel + has been locked down + - SAUCE: (efi-lockdown) acpi: Disable ACPI table override if the kernel is + locked down + - SAUCE: (efi-lockdown) acpi: Disable APEI error injection if the kernel is + locked down + - SAUCE: (efi-lockdown) Enable cold boot attack mitigation + - SAUCE: (efi-lockdown) bpf: Restrict kernel image access functions when the + kernel is locked down + - SAUCE: (efi-lockdown) scsi: Lock down the eata driver + - SAUCE: (efi-lockdown) Prohibit PCMCIA CIS storage when the kernel is locked + down + - SAUCE: (efi-lockdown) Lock down TIOCSSERIAL + - SAUCE: (efi-lockdown) KEYS: Allow unrestricted boot-time addition of keys to + secondary keyring + - SAUCE: (efi-lockdown) efi: Add EFI signature data types + - SAUCE: (efi-lockdown) efi: Add an EFI signature blob parser + - SAUCE: (efi-lockdown) MODSIGN: Import certificates from UEFI Secure Boot + - SAUCE: (efi-lockdown) MODSIGN: Allow the "db" UEFI variable to be suppressed + - SAUCE: (efi-lockdown) efi: Sanitize boot_params in efi stub + - SAUCE: (efi-lockdown) efi: Add secure_boot state and status bit for + MokSBState + - SAUCE: (efi-lockdown) efi: Add sysctls for secureboot and MokSBState + - [Config] Set values for UEFI secure boot lockdown options + - Disable virtualbox build + - Disable hio build + - SAUCE: securityfs: Replace CURRENT_TIME with current_time() + - Disable zfs build + - [Debian] Work out upstream tag for use with gen-auto-reconstruct + - SAUCE: Import aufs driver + - SAUCE: aufs -- Include linux/mm.h in fs/aufs/file.h + - [Config] Enable aufs + - SAUCE: perf callchain: Include errno.h on x86 unconditinally + + [ Upstream Kernel Changes ] + + * Rebase to v4.12-rc2 + + -- Seth Forshee Sun, 21 May 2017 23:44:44 -0500 + +linux (4.11.0-3.8) artful; urgency=low + + [ Seth Forshee ] + + * Release Tracking Bug + - LP: #1690999 + + * apparmor_parser hangs indefinitely when called by multiple threads + (LP: #1645037) + - SAUCE: apparmor: fix lock ordering for mkdir + + * apparmor leaking securityfs pin count (LP: #1660846) + - SAUCE: apparmor: fix leak on securityfs pin count + + * apparmor reference count leak when securityfs_setup_d_inode\ () fails + (LP: #1660845) + - SAUCE: apparmor: fix reference count leak when securityfs_setup_d_inode() + fails + + * apparmor not checking error if security_pin_fs() fails (LP: #1660842) + - SAUCE: apparmor: fix not handling error case when securityfs_pin_fs() fails + + * libvirt profile is blocking global setrlimit despite having no rlimit rule + (LP: #1679704) + - SAUCE: apparmor: fix complain mode failure for rlimit mediation + - apparmor: update auditing of rlimit check to provide capability information + + * apparmor: does not provide a way to detect policy updataes (LP: #1678032) + - SAUCE: apparmor: add policy revision file interface + + * apparmor does not make support of query data visible (LP: #1678023) + - SAUCE: apparmor: add label data availability to the feature set + + * apparmor query interface does not make supported query info available + (LP: #1678030) + - SAUCE: apparmor: add information about the query inteface to the feature set + + * change_profile incorrect when using namespaces with a compound stack + (LP: #1677959) + - SAUCE: apparmor: fix label parse for stacked labels + + * Regression in 4.4.0-65-generic causes very frequent system crashes + (LP: #1669611) + - apparmor: sync of apparmor 3.6+ (17.04) + + * Artful update to 4.11.1 stable release (LP: #1690814) + - dm ioctl: prevent stack leak in dm ioctl call + - drm/sti: fix GDP size to support up to UHD resolution + - power: supply: lp8788: prevent out of bounds array access + - brcmfmac: Ensure pointer correctly set if skb data location changes + - brcmfmac: Make skb header writable before use + - sparc64: fix fault handling in NGbzero.S and GENbzero.S + - refcount: change EXPORT_SYMBOL markings + - net: macb: fix phy interrupt parsing + - tcp: fix access to sk->sk_state in tcp_poll() + - geneve: fix incorrect setting of UDP checksum flag + - bpf: enhance verifier to understand stack pointer arithmetic + - bpf, arm64: fix jit branch offset related to ldimm64 + - tcp: fix wraparound issue in tcp_lp + - net: ipv6: Do not duplicate DAD on link up + - net: usb: qmi_wwan: add Telit ME910 support + - tcp: do not inherit fastopen_req from parent + - ipv4, ipv6: ensure raw socket message is big enough to hold an IP header + - rtnetlink: NUL-terminate IFLA_PHYS_PORT_NAME string + - ipv6: initialize route null entry in addrconf_init() + - ipv6: reorder ip6_route_dev_notifier after ipv6_dev_notf + - tcp: randomize timestamps on syncookies + - bnxt_en: allocate enough space for ->ntp_fltr_bmap + - bpf: don't let ldimm64 leak map addresses on unprivileged + - net: mdio-mux: bcm-iproc: call mdiobus_free() in error path + - f2fs: sanity check segment count + - xen/arm,arm64: fix xen_dma_ops after 815dd18 "Consolidate get_dma_ops..." + - xen: Revert commits da72ff5bfcb0 and 72a9b186292d + - block: get rid of blk_integrity_revalidate() + - Linux 4.11.1 + + * Module signing exclusion for staging drivers does not work properly + (LP: #1690908) + - SAUCE: Fix module signing exclusion in package builds + + * perf: qcom: Add L3 cache PMU driver (LP: #1689856) + - [Config] CONFIG_QCOM_L3_PMU=y + - perf: qcom: Add L3 cache PMU driver + + * No PMU support for ACPI-based arm64 systems (LP: #1689661) + - drivers/perf: arm_pmu: rework per-cpu allocation + - drivers/perf: arm_pmu: manage interrupts per-cpu + - drivers/perf: arm_pmu: split irq request from enable + - drivers/perf: arm_pmu: remove pointless PMU disabling + - drivers/perf: arm_pmu: define armpmu_init_fn + - drivers/perf: arm_pmu: fold init into alloc + - drivers/perf: arm_pmu: factor out pmu registration + - drivers/perf: arm_pmu: simplify cpu_pmu_request_irqs() + - drivers/perf: arm_pmu: handle no platform_device + - drivers/perf: arm_pmu: rename irq request/free functions + - drivers/perf: arm_pmu: split cpu-local irq request/free + - drivers/perf: arm_pmu: move irq request/free into probe + - drivers/perf: arm_pmu: split out platform device probe logic + - arm64: add function to get a cpu's MADT GICC table + - [Config] CONFIG_ARM_PMU_ACPI=y + - drivers/perf: arm_pmu: add ACPI framework + - arm64: pmuv3: handle !PMUv3 when probing + - arm64: pmuv3: use arm_pmu ACPI framework + + * Fix NVLINK2 TCE route (LP: #1690155) + - powerpc/powernv: Fix TCE kill on NVLink2 + + * CVE-2017-0605 + - tracing: Use strlcpy() instead of strcpy() in __trace_find_cmdline() + + * Miscellaneous Ubuntu changes + - [Config] Restore powerpc arch to annotations file + - [Config] Disable runtime testing modules + - [Config] Disable drivers not needed on s390x + - [Config] Update annotations for 4.11 + - [Config] updateconfigs after apparmor updates + + * Miscellaneous upstream changes + - apparmor: use SHASH_DESC_ON_STACK + - apparmor: fix invalid reference to index variable of iterator line 836 + - apparmor: fix parameters so that the permission test is bypassed at boot + - apparmor: Make path_max parameter readonly + - apparmorfs: Combine two function calls into one in aa_fs_seq_raw_abi_show() + - apparmorfs: Use seq_putc() in two functions + - apparmor: provide information about path buffer size at boot + - apparmor: add/use fns to print hash string hex value + + -- Seth Forshee Tue, 16 May 2017 00:39:13 -0500 + +linux (4.11.0-2.7) artful; urgency=low + + * kernel-wedge fails in artful due to leftover squashfs-modules d-i files + (LP: #1688259) + - Remove squashfs-modules files from d-i + - [Config] as squashfs-modules is builtin kernel-image must Provides: it + + * [Zesty] d-i: replace msm_emac with qcom_emac (LP: #1677297) + - Revert "UBUNTU: d-i: initrd needs msm_emac on amberwing platform." + - d-i: initrd needs qcom_emac on amberwing platform. + + * update for V3 kernel bits and improved multiple fan slice support + (LP: #1470091) + - SAUCE: fan: tunnel multiple mapping mode (v3) + + * Miscellaneous Ubuntu changes + - SAUCE: (noup) Update spl to 0.6.5.9-1ubuntu1, zfs to 0.6.5.9-5ubuntu5 + - Enable zfs + - SAUCE: fan: add VXLAN implementation + - SAUCE: (efi-lockdown) efi: Add EFI_SECURE_BOOT bit + - SAUCE: (efi-lockdown) Add the ability to lock down access to the running + kernel image + - SAUCE: (efi-lockdown) efi: Lock down the kernel if booted in secure boot + mode + - SAUCE: (efi-lockdown) Enforce module signatures if the kernel is locked down + - SAUCE: (efi-lockdown) Restrict /dev/mem and /dev/kmem when the kernel is + locked down + - SAUCE: (efi-lockdown) Add a sysrq option to exit secure boot mode + - SAUCE: (efi-lockdown) kexec: Disable at runtime if the kernel is locked down + - SAUCE: (efi-lockdown) Copy secure_boot flag in boot params across kexec + reboot + - SAUCE: (efi-lockdown) kexec_file: Disable at runtime if securelevel has been + set + - SAUCE: (efi-lockdown) hibernate: Disable when the kernel is locked down + - SAUCE: (efi-lockdown) uswsusp: Disable when the kernel is locked down + - SAUCE: (efi-lockdown) PCI: Lock down BAR access when the kernel is locked + down + - SAUCE: (efi-lockdown) x86: Lock down IO port access when the kernel is + locked down + - SAUCE: (efi-lockdown) x86: Restrict MSR access when the kernel is locked + down + - SAUCE: (efi-lockdown) asus-wmi: Restrict debugfs interface when the kernel + is locked down + - SAUCE: (efi-lockdown) ACPI: Limit access to custom_method when the kernel is + locked down + - SAUCE: (efi-lockdown) acpi: Ignore acpi_rsdp kernel param when the kernel + has been locked down + - SAUCE: (efi-lockdown) acpi: Disable ACPI table override if the kernel is + locked down + - SAUCE: (efi-lockdown) acpi: Disable APEI error injection if the kernel is + locked down + - SAUCE: (efi-lockdown) Enable cold boot attack mitigation + - SAUCE: (efi-lockdown) bpf: Restrict kernel image access functions when the + kernel is locked down + - SAUCE: (efi-lockdown) scsi: Lock down the eata driver + - SAUCE: (efi-lockdown) Prohibit PCMCIA CIS storage when the kernel is locked + down + - SAUCE: (efi-lockdown) Lock down TIOCSSERIAL + - SAUCE: (efi-lockdown) Add EFI signature data types + - SAUCE: (efi-lockdown) Add an EFI signature blob parser and key loader. + - SAUCE: (efi-lockdown) KEYS: Add a system blacklist keyring + - SAUCE: (efi-lockdown) MODSIGN: Import certificates from UEFI Secure Boot + - SAUCE: (efi-lockdown) MODSIGN: Support not importing certs from db + - SAUCE: (efi-lockdown) MODSIGN: Don't try secure boot if EFI runtime is + disabled + - SAUCE: (efi-lockdown) efi: Sanitize boot_params in efi stub + - SAUCE: (efi-lockdown) efi: Add secure_boot state and status bit for + MokSBState + - SAUCE: (efi-lockdown) efi: Add sysctls for secureboot and MokSBState + - [Config] Set values for UEFI secure boot lockdown options + - Update dropped.txt + + [ Upstream Kernel Changes ] + + * rebase to v4.11 + + -- Seth Forshee Fri, 05 May 2017 07:43:14 -0500 + +linux (4.11.0-1.6) artful; urgency=low + + * Miscellaneous Ubuntu changes + - [Debian] Use default compression for all packages + - SAUCE: (namespace) block_dev: Support checking inode permissions in + lookup_bdev() + - SAUCE: (namespace) block_dev: Check permissions towards block device inode + when mounting + - SAUCE: (namespace) mtd: Check permissions towards mtd block device inode + when mounting + - SAUCE: (namespace) fs: Allow superblock owner to change ownership of inodes + - SAUCE: (namespace) fs: Don't remove suid for CAP_FSETID for userns root + - SAUCE: (namespace) fs: Allow superblock owner to access do_remount_sb() + - SAUCE: (namespace) capabilities: Allow privileged user in s_user_ns to set + security.* xattrs + - SAUCE: (namespace) fs: Allow CAP_SYS_ADMIN in s_user_ns to freeze and thaw + filesystems + - SAUCE: (namespace) fuse: Add support for pid namespaces + - SAUCE: (namespace) fuse: Support fuse filesystems outside of init_user_ns + - SAUCE: (namespace) fuse: Restrict allow_other to the superblock's namespace + or a descendant + - SAUCE: (namespace) fuse: Allow user namespace mounts + - SAUCE: (namespace) ext4: Add support for unprivileged mounts from user + namespaces + - SAUCE: (namespace) evm: Don't update hmacs in user ns mounts + - SAUCE: (namespace) ext4: Add module parameter to enable user namespace + mounts + - SAUCE: (namespace) block_dev: Forbid unprivileged mounting when device is + opened for writing + + -- Seth Forshee Wed, 26 Apr 2017 10:08:29 -0500 + +linux (4.11.0-0.5) artful; urgency=low + + * [Hyper-V][SAUCE] pci-hyperv: Use only 16 bit integer for PCI domain + (LP: #1684971) + - SAUCE: pci-hyperv: Use only 16 bit integer for PCI domain + + * [Hyper-V] Ubuntu 14.04.2 LTS Generation 2 SCSI Errors on VSS Based Backups + (LP: #1470250) + - SAUCE: Tools: hv: vss: Thaw the filesystem and continue after freeze fails + + * Enable virtual scsi server driver for Power (LP: #1615665) + - SAUCE: Return TCMU-generated sense data to fabric module + + * include/linux/security.h header syntax error with !CONFIG_SECURITYFS + (LP: #1630990) + - SAUCE: (no-up) include/linux/security.h -- fix syntax error with + CONFIG_SECURITYFS=n + + * Miscellaneous Ubuntu changes + - SAUCE: Import aufs driver + - [Config] Enable aufs + - [Debian] Add script to update virtualbox + - ubuntu: vbox -- Update to 5.1.20-dfsg-2 + - Enable vbox + - SAUCE: aufs -- Include linux/mm.h in fs/aufs/file.h + + [ Upstream Kernel Changes ] + + * rebase to v4.11-rc8 + + -- Seth Forshee Tue, 25 Apr 2017 13:42:54 -0500 + +linux (4.11.0-0.4) zesty; urgency=low + + * POWER9: Improve performance on memory management (LP: #1681429) + - SAUCE: powerpc/mm/radix: Don't do page walk cache flush when doing full mm + flush + - SAUCE: powerpc/mm/radix: Remove unnecessary ptesync + + * Miscellaneous Ubuntu changes + - find-missing-sauce.sh + + [ Upstream Kernel Changes ] + + * rebase to v4.11-rc7 + + -- Seth Forshee Tue, 18 Apr 2017 08:19:43 -0500 + +linux (4.11.0-0.3) zesty; urgency=low + + * Disable CONFIG_HVC_UDBG on ppc64el (LP: #1680888) + - [Config] Disable CONFIG_HVC_UDBG on ppc64el + + * smartpqi driver needed in initram disk and installer (LP: #1680156) + - [Config] Add smartpqi to d-i + + * Disable CONFIG_SECURITY_SELINUX_DISABLE (LP: #1680315) + - [Config] CONFIG_SECURITY_SELINUX_DISABLE=n + + * Miscellaneous Ubuntu changes + - [Config] flash-kernel should be a Breaks + - [Config] drop the info directory + - [Config] drop NOTES as obsolete + - [Config] drop changelog.historical as obsolete + - rebase to v4.11-rc6 + + [ Upstream Kernel Changes ] + + * rebase to v4.11-rc6 + + -- Tim Gardner Tue, 11 Apr 2017 07:16:52 -0600 + +linux (4.11.0-0.2) zesty; urgency=low + + [ Upstream Kernel Changes ] + + * rebase to v4.11-rc5 + + -- Tim Gardner Mon, 03 Apr 2017 08:26:07 +0100 + +linux (4.11.0-0.1) zesty; urgency=low + + [ Upstream Kernel Changes ] + + * rebase to v4.11-rc4 + - LP: #1591053 + + -- Tim Gardner Mon, 20 Mar 2017 05:15:32 -0600 + +linux (4.11.0-0.0) zesty; urgency=low + + * dummy entry + + -- Tim Gardner Mon, 20 Mar 2017 05:15:32 -0600 --- linux-azure-5.8-5.8.0.orig/debian.master/config/amd64/config.common.amd64 +++ linux-azure-5.8-5.8.0/debian.master/config/amd64/config.common.amd64 @@ -0,0 +1,656 @@ +# +# Config options for config.common.amd64 automatically generated by splitconfig.pl +# +CONFIG_6LOWPAN=m +CONFIG_ABX500_CORE=y +CONFIG_AC97_BUS=m +CONFIG_ACPI_DEBUG=y +CONFIG_ACPI_DEBUGGER=y +# CONFIG_ACPI_REDUCED_HARDWARE_ONLY is not set +CONFIG_AD525X_DPOT=m +CONFIG_ADFS_FS=m +CONFIG_AFFS_FS=m +CONFIG_AIX_PARTITION=y +CONFIG_ALIM7101_WDT=m +CONFIG_ALTERA_STAPL=m +CONFIG_ALTERA_TSE=m +CONFIG_AMIGA_PARTITION=y +CONFIG_ANDROID=y +CONFIG_APDS9802ALS=m +CONFIG_APPLICOM=m +CONFIG_ARCH_MMAP_RND_BITS=28 +CONFIG_ARCH_MMAP_RND_BITS_MAX=32 +CONFIG_ARCH_MMAP_RND_BITS_MIN=28 +CONFIG_ARCH_MMAP_RND_COMPAT_BITS=8 +CONFIG_ARCH_MMAP_RND_COMPAT_BITS_MAX=16 +CONFIG_ARCH_MMAP_RND_COMPAT_BITS_MIN=8 +CONFIG_ARCNET=m +CONFIG_ATA=y +CONFIG_ATALK=m +CONFIG_ATARI_PARTITION=y +CONFIG_ATA_GENERIC=y +CONFIG_ATA_OVER_ETH=m +CONFIG_ATA_PIIX=y +CONFIG_ATM=m +CONFIG_AUTOFS4_FS=m +CONFIG_AUTOFS_FS=m +CONFIG_AUXDISPLAY=y +CONFIG_AX88796B_PHY=m +CONFIG_BACKLIGHT_CLASS_DEVICE=y +CONFIG_BAREUDP=m +CONFIG_BATMAN_ADV=m +CONFIG_BCH=m +CONFIG_BCM84881_PHY=y +CONFIG_BCMA=m +CONFIG_BCM_KONA_USB2_PHY=m +CONFIG_BE2ISCSI=m +CONFIG_BEFS_FS=m +CONFIG_BFS_FS=m +CONFIG_BLK_DEV_3W_XXXX_RAID=m +CONFIG_BLK_DEV_CRYPTOLOOP=m +CONFIG_BLK_DEV_PCIESSD_MTIP32XX=m +CONFIG_BLK_DEV_RSXX=m +CONFIG_BLK_DEV_SKD=m +CONFIG_BLK_DEV_SX8=m +CONFIG_BLK_DEV_UMEM=m +CONFIG_BOUNCE=y +CONFIG_BSD_DISKLABEL=y +CONFIG_C2PORT=m +CONFIG_CADENCE_WATCHDOG=m +CONFIG_CAIF=m +CONFIG_CAN=m +CONFIG_CB710_CORE=m +CONFIG_CC_VERSION_TEXT="gcc (Ubuntu 10.2.0-13ubuntu1) 10.2.0" +CONFIG_CDROM_PKTCDVD=m +# CONFIG_CLOCK_THERMAL is not set +# CONFIG_CMA is not set +CONFIG_CMDLINE_PARTITION=y +CONFIG_COMMON_CLK=y +CONFIG_COUNTER=m +CONFIG_CRAMFS=m +CONFIG_CRYPTO_DEFLATE=y +CONFIG_CRYPTO_DEV_ATMEL_ECC=m +CONFIG_CRYPTO_DEV_ATMEL_SHA204A=m +CONFIG_CRYPTO_DEV_NITROX_CNN55XX=m +CONFIG_CRYPTO_DEV_SAFEXCEL=m +CONFIG_CRYPTO_LIB_POLY1305_RSIZE=11 +CONFIG_DECNET=m +CONFIG_DEFAULT_MMAP_MIN_ADDR=65536 +CONFIG_DMADEVICES=y +CONFIG_DMA_VIRTUAL_CHANNELS=m +# CONFIG_DM_DEBUG is not set +CONFIG_DNET=m +CONFIG_DRM_AMDGPU=m +CONFIG_DRM_ANALOGIX_ANX78XX=m +CONFIG_DRM_AST=m +CONFIG_DRM_CIRRUS_QEMU=m +CONFIG_DRM_DP_AUX_CHARDEV=y +CONFIG_DRM_DP_CEC=y +# CONFIG_DRM_ETNAVIV is not set +CONFIG_DRM_I2C_CH7006=m +CONFIG_DRM_I2C_NXP_TDA9950=m +CONFIG_DRM_I2C_NXP_TDA998X=m +CONFIG_DRM_I2C_SIL164=m +CONFIG_DRM_MGAG200=m +CONFIG_DRM_NOUVEAU=m +CONFIG_DRM_PANEL_ORIENTATION_QUIRKS=y +CONFIG_DRM_QXL=m +CONFIG_DRM_RADEON=m +CONFIG_DRM_VGEM=m +CONFIG_DRM_VKMS=m +CONFIG_DS1682=m +CONFIG_DUMMY_IRQ=m +CONFIG_DW_WATCHDOG=m +CONFIG_ECHO=m +CONFIG_EEPROM_93CX6=m +CONFIG_EEPROM_AT24=m +CONFIG_EEPROM_EE1004=m +CONFIG_EEPROM_IDT_89HPESX=m +CONFIG_EEPROM_LEGACY=m +CONFIG_EEPROM_MAX6875=m +CONFIG_EFS_FS=m +CONFIG_ENCLOSURE_SERVICES=m +CONFIG_ETHOC=m +# CONFIG_EVM_LOAD_X509 is not set +CONFIG_EXFAT_FS=m +CONFIG_EXTCON=y +CONFIG_F2FS_FS=m +CONFIG_FB_3DFX=m +CONFIG_FB_ARK=m +CONFIG_FB_ASILIANT=y +CONFIG_FB_ATY=m +CONFIG_FB_ATY128=m +CONFIG_FB_CARMINE=m +CONFIG_FB_CFB_COPYAREA=y +CONFIG_FB_CFB_FILLRECT=y +CONFIG_FB_CFB_IMAGEBLIT=y +CONFIG_FB_CIRRUS=m +CONFIG_FB_CYBER2000=m +CONFIG_FB_I740=m +# CONFIG_FB_IBM_GXT4500 is not set +CONFIG_FB_IMSTT=y +CONFIG_FB_KYRO=m +CONFIG_FB_MATROX=m +CONFIG_FB_MB862XX=m +CONFIG_FB_METRONOME=m +CONFIG_FB_NEOMAGIC=m +CONFIG_FB_NVIDIA=m +CONFIG_FB_OPENCORES=m +CONFIG_FB_PM2=m +CONFIG_FB_PM3=m +CONFIG_FB_RADEON=m +CONFIG_FB_RIVA=m +CONFIG_FB_S1D13XXX=m +CONFIG_FB_S3=m +CONFIG_FB_SAVAGE=m +CONFIG_FB_SIMPLE=y +CONFIG_FB_SIS=m +CONFIG_FB_SM712=m +CONFIG_FB_TILEBLITTING=y +CONFIG_FB_TRIDENT=m +CONFIG_FB_UVESA=m +CONFIG_FB_VOODOO1=m +CONFIG_FB_VT8623=m +CONFIG_FDDI=y +CONFIG_FEALNX=m +CONFIG_FIREWIRE=m +CONFIG_FIREWIRE_NOSY=m +CONFIG_FIXED_PHY=y +CONFIG_FPGA_BRIDGE=m +CONFIG_FPGA_DFL=m +CONFIG_FRAME_WARN=1024 +CONFIG_FUSION=y +CONFIG_GAMEPORT=m +CONFIG_GENERIC_PHY=y +CONFIG_GNSS=m +CONFIG_GPIO_ADP5588=m +CONFIG_GPIO_AMD_FCH=m +CONFIG_GPIO_DWAPB=m +CONFIG_GPIO_GENERIC=m +CONFIG_GPIO_GENERIC_PLATFORM=m +CONFIG_GPIO_MAX7300=m +CONFIG_GPIO_MAX732X=m +CONFIG_GPIO_MB86S7X=m +CONFIG_GPIO_PCA953X=m +CONFIG_GPIO_PCF857X=m +CONFIG_GPIO_RDC321X=m +CONFIG_GPIO_SIOX=m +CONFIG_GPIO_TPIC2810=m +CONFIG_GPIO_TWL4030=m +CONFIG_GPIO_TWL6040=m +CONFIG_GPIO_XILINX=y +CONFIG_GREYBUS=m +CONFIG_HABANA_AI=m +CONFIG_HAMACHI=m +CONFIG_HFSPLUS_FS=m +CONFIG_HFS_FS=m +CONFIG_HIBERNATION=y +CONFIG_HID=m +CONFIG_HIO=m +CONFIG_HMC6352=m +CONFIG_HOTPLUG_PCI=y +CONFIG_HOTPLUG_PCI_SHPC=y +CONFIG_HPFS_FS=m +CONFIG_HP_ILO=m +CONFIG_HSI=m +CONFIG_HSR=m +CONFIG_HTC_PASIC3=m +CONFIG_HWMON=y +CONFIG_HWSPINLOCK=y +CONFIG_HW_RANDOM_TIMERIOMEM=m +# CONFIG_HZ_100 is not set +CONFIG_I2C=y +CONFIG_I2C_ALI1535=m +CONFIG_I2C_ALI1563=m +CONFIG_I2C_ALI15X3=m +CONFIG_I2C_AMD756=m +CONFIG_I2C_AMD8111=m +CONFIG_I2C_AMD_MP2=m +CONFIG_I2C_CBUS_GPIO=m +CONFIG_I2C_CHARDEV=y +CONFIG_I2C_DESIGNWARE_PCI=m +CONFIG_I2C_DESIGNWARE_PLATFORM=y +# CONFIG_I2C_EMEV2 is not set +CONFIG_I2C_GPIO=m +CONFIG_I2C_HID=m +CONFIG_I2C_I801=m +CONFIG_I2C_ISCH=m +CONFIG_I2C_MUX_GPIO=m +CONFIG_I2C_MUX_LTC4306=m +CONFIG_I2C_MUX_MLXCPLD=m +CONFIG_I2C_MUX_PCA9541=m +CONFIG_I2C_MUX_PCA954x=m +CONFIG_I2C_MUX_REG=m +CONFIG_I2C_NFORCE2=m +CONFIG_I2C_NVIDIA_GPU=m +CONFIG_I2C_OCORES=m +CONFIG_I2C_PCA_PLATFORM=m +CONFIG_I2C_PIIX4=m +CONFIG_I2C_SIMTEC=m +CONFIG_I2C_SIS5595=m +CONFIG_I2C_SIS630=m +CONFIG_I2C_SIS96X=m +# CONFIG_I2C_SLAVE is not set +CONFIG_I2C_TAOS_EVM=m +CONFIG_I2C_VIA=m +CONFIG_I2C_VIAPRO=m +CONFIG_I2C_XILINX=m +CONFIG_I3C=m +CONFIG_I6300ESB_WDT=m +CONFIG_ICS932S401=m +CONFIG_IEEE802154=m +CONFIG_IIO=m +CONFIG_ILLEGAL_POINTER_VALUE=0xdead000000000000 +# CONFIG_IMA_ARCH_POLICY is not set +CONFIG_IMA_DEFAULT_HASH="sha1" +CONFIG_IMA_DEFAULT_HASH_SHA1=y +# CONFIG_IMA_DEFAULT_HASH_SHA256 is not set +CONFIG_IMA_DEFAULT_TEMPLATE="ima-ng" +# CONFIG_IMA_LOAD_X509 is not set +CONFIG_IMA_NG_TEMPLATE=y +# CONFIG_IMA_READ_POLICY is not set +# CONFIG_IMA_SECURE_AND_OR_TRUSTED_BOOT is not set +# CONFIG_IMA_SIG_TEMPLATE is not set +CONFIG_INFINIBAND_BNXT_RE=m +CONFIG_INFINIBAND_OCRDMA=m +CONFIG_INPUT_EVBUG=m +CONFIG_INPUT_FF_MEMLESS=m +CONFIG_INPUT_JOYDEV=m +CONFIG_INPUT_JOYSTICK=y +CONFIG_INPUT_KEYBOARD=y +CONFIG_INPUT_MATRIXKMAP=m +CONFIG_INPUT_MISC=y +CONFIG_INPUT_MOUSE=y +CONFIG_INPUT_MOUSEDEV=y +CONFIG_INPUT_POLLDEV=m +CONFIG_INPUT_SPARSEKMAP=m +CONFIG_INPUT_TABLET=y +CONFIG_INPUT_TOUCHSCREEN=y +CONFIG_INTERCONNECT=y +CONFIG_IOMMU_IOVA=y +CONFIG_IPACK_BUS=m +CONFIG_IPMI_HANDLER=m +# CONFIG_IP_DCCP_CCID3 is not set +CONFIG_IRQ_BYPASS_MANAGER=y +CONFIG_ISL29003=m +CONFIG_ISL29020=m +CONFIG_JFS_FS=m +CONFIG_JME=m +CONFIG_JUMP_LABEL=y +CONFIG_KARMA_PARTITION=y +# CONFIG_KERNEL_GZIP is not set +CONFIG_KERNEL_LZ4=y +CONFIG_KEXEC_FILE=y +CONFIG_KVM=m +CONFIG_LAPB=m +CONFIG_LCD_CLASS_DEVICE=m +CONFIG_LDM_PARTITION=y +CONFIG_LIBNVDIMM=y +CONFIG_LLC2=m +CONFIG_LOG_BUF_SHIFT=18 +CONFIG_LPC_ICH=m +CONFIG_LPC_SCH=m +CONFIG_LZ4_COMPRESS=y +CONFIG_MAC_PARTITION=y +CONFIG_MAILBOX=y +CONFIG_MAX63XX_WATCHDOG=m +CONFIG_MCB=m +CONFIG_MDIO_BCM_UNIMAC=m +CONFIG_MDIO_BITBANG=m +CONFIG_MDIO_BUS=y +CONFIG_MDIO_MSCC_MIIM=m +CONFIG_MDIO_THUNDER=m +CONFIG_MDIO_XPCS=m +CONFIG_MD_MULTIPATH=m +CONFIG_MEDIA_SUPPORT=m +CONFIG_MEGARAID_LEGACY=m +CONFIG_MEGARAID_NEWGEN=y +CONFIG_MEGARAID_SAS=m +CONFIG_MEMORY=y +CONFIG_MEMORY_HOTPLUG_DEFAULT_ONLINE=y +CONFIG_MEMSTICK=m +CONFIG_MEM_SOFT_DIRTY=y +CONFIG_MFD_88PM800=m +CONFIG_MFD_88PM805=m +CONFIG_MFD_ARIZONA_I2C=m +CONFIG_MFD_AXP20X_I2C=m +CONFIG_MFD_BCM590XX=m +CONFIG_MFD_BD9571MWV=m +CONFIG_MFD_DA9062=m +CONFIG_MFD_DA9063=y +CONFIG_MFD_DA9150=m +CONFIG_MFD_IQS62X=m +CONFIG_MFD_JANZ_CMODIO=m +CONFIG_MFD_KEMPLD=m +CONFIG_MFD_LM3533=m +CONFIG_MFD_LP3943=m +CONFIG_MFD_MADERA=m +CONFIG_MFD_MAX14577=y +CONFIG_MFD_MAX77693=y +CONFIG_MFD_MAX8907=m +CONFIG_MFD_MC13XXX_I2C=m +CONFIG_MFD_MENF21BMC=m +CONFIG_MFD_MP2629=m +CONFIG_MFD_MT6360=m +CONFIG_MFD_MT6397=m +CONFIG_MFD_PCF50633=m +CONFIG_MFD_RDC321X=m +CONFIG_MFD_RETU=m +CONFIG_MFD_RT5033=m +CONFIG_MFD_SI476X_CORE=m +CONFIG_MFD_SKY81452=m +CONFIG_MFD_SM501=m +CONFIG_MFD_SYSCON=y +CONFIG_MFD_TI_AM335X_TSCADC=m +CONFIG_MFD_TI_LMU=m +CONFIG_MFD_TI_LP873X=m +CONFIG_MFD_TPS65086=m +CONFIG_MFD_TPS65912_I2C=y +CONFIG_MFD_TQMX86=m +CONFIG_MFD_VX855=m +CONFIG_MFD_WCD934X=m +CONFIG_MFD_WL1273_CORE=m +CONFIG_MFD_WM8994=m +CONFIG_MHI_BUS=m +CONFIG_MII=m +CONFIG_MINIX_FS=m +CONFIG_MINIX_SUBPARTITION=y +CONFIG_MISC_ALCOR_PCI=m +CONFIG_MISC_RTSX_PCI=m +CONFIG_MLXSW_I2C=m +CONFIG_MMC=y +CONFIG_MMC_BLOCK=m +CONFIG_MMC_CQHCI=m +# CONFIG_MMC_HSQ is not set +CONFIG_MMC_SDHCI=m +CONFIG_MMC_SDHCI_PLTFM=m +CONFIG_MOST=m +CONFIG_MTD=m +CONFIG_MTD_BLKDEVS=m +CONFIG_MTD_BLOCK=m +CONFIG_MTD_CMDLINE_PARTS=m +CONFIG_MTD_NAND_CORE=m +CONFIG_MTD_NAND_ECC_SW_HAMMING=m +CONFIG_MTD_RAW_NAND=m +CONFIG_NET_VENDOR_3COM=y +CONFIG_NET_VENDOR_ADAPTEC=y +CONFIG_NET_VENDOR_AGERE=y +CONFIG_NET_VENDOR_ALTEON=y +CONFIG_NET_VENDOR_AMD=y +CONFIG_NET_VENDOR_ARC=y +CONFIG_NET_VENDOR_ATHEROS=y +CONFIG_NET_VENDOR_BROADCOM=y +CONFIG_NET_VENDOR_BROCADE=y +CONFIG_NET_VENDOR_CAVIUM=y +CONFIG_NET_VENDOR_CHELSIO=y +CONFIG_NET_VENDOR_CISCO=y +CONFIG_NET_VENDOR_DEC=y +CONFIG_NET_VENDOR_DLINK=y +CONFIG_NET_VENDOR_EMULEX=y +CONFIG_NET_VENDOR_EZCHIP=y +CONFIG_NET_VENDOR_GOOGLE=y +CONFIG_NET_VENDOR_HUAWEI=y +CONFIG_NET_VENDOR_INTEL=y +CONFIG_NET_VENDOR_MARVELL=y +CONFIG_NET_VENDOR_MICREL=y +CONFIG_NET_VENDOR_MICROCHIP=y +CONFIG_NET_VENDOR_MICROSEMI=y +CONFIG_NET_VENDOR_MYRI=y +CONFIG_NET_VENDOR_NATSEMI=y +CONFIG_NET_VENDOR_NI=y +CONFIG_NET_VENDOR_NVIDIA=y +CONFIG_NET_VENDOR_OKI=y +CONFIG_NET_VENDOR_PENSANDO=y +CONFIG_NET_VENDOR_QLOGIC=y +CONFIG_NET_VENDOR_QUALCOMM=y +CONFIG_NET_VENDOR_RDC=y +CONFIG_NET_VENDOR_REALTEK=y +CONFIG_NET_VENDOR_RENESAS=y +CONFIG_NET_VENDOR_ROCKER=y +CONFIG_NET_VENDOR_SAMSUNG=y +CONFIG_NET_VENDOR_SEEQ=y +CONFIG_NET_VENDOR_SILAN=y +CONFIG_NET_VENDOR_SIS=y +CONFIG_NET_VENDOR_SMSC=y +CONFIG_NET_VENDOR_STMICRO=y +CONFIG_NET_VENDOR_SUN=y +CONFIG_NET_VENDOR_TEHUTI=y +CONFIG_NET_VENDOR_TI=y +CONFIG_NET_VENDOR_VIA=y +CONFIG_NET_VENDOR_WIZNET=y +CONFIG_NEW_LEDS=y +CONFIG_NFC=m +CONFIG_NFP=m +CONFIG_NODES_SHIFT=10 +CONFIG_NOP_USB_XCEIV=m +CONFIG_NOZOMI=m +CONFIG_NR_CPUS=8192 +CONFIG_NTB=m +# CONFIG_NTFS_RW is not set +CONFIG_NUMA_BALANCING_DEFAULT_ENABLED=y +CONFIG_NVMEM=y +CONFIG_NVRAM=m +CONFIG_N_GSM=m +# CONFIG_OF is not set +CONFIG_OMFS_FS=m +CONFIG_OSF_PARTITION=y +CONFIG_PACKING=y +# CONFIG_PAGE_EXTENSION is not set +CONFIG_PANIC_TIMEOUT=0 +CONFIG_PARAVIRT=y +CONFIG_PARPORT=m +CONFIG_PATA_SIS=y +CONFIG_PC104=y +CONFIG_PCCARD=m +CONFIG_PCIEPORTBUS=y +CONFIG_PCIPCWATCHDOG=m +CONFIG_PCI_PASID=y +CONFIG_PCI_PRI=y +CONFIG_PCI_QUIRKS=y +CONFIG_PCMCIA=m +CONFIG_PGTABLE_LEVELS=5 +CONFIG_PHANTOM=m +CONFIG_PHONET=m +CONFIG_PHYLIB=y +CONFIG_PHYSICAL_START=0x1000000 +CONFIG_PHY_PXA_28NM_HSIC=m +CONFIG_PHY_PXA_28NM_USB2=m +CONFIG_PINCTRL=y +CONFIG_PMIC_OPREGION=y +CONFIG_PM_DEVFREQ=y +CONFIG_POWERCAP=y +CONFIG_POWER_AVS=y +CONFIG_POWER_SUPPLY=y +CONFIG_PPP=y +CONFIG_PPS=y +CONFIG_PPS_CLIENT_GPIO=m +CONFIG_PPS_CLIENT_LDISC=m +# CONFIG_PREEMPT_NONE is not set +# CONFIG_PSI_DEFAULT_DISABLED is not set +CONFIG_PSTORE=y +# CONFIG_PSTORE_CONSOLE is not set +CONFIG_PSTORE_RAM=m +CONFIG_PTP_1588_CLOCK=y +CONFIG_PTP_1588_CLOCK_IDT82P33=m +CONFIG_PWM=y +CONFIG_QNX4FS_FS=m +CONFIG_QNX6FS_FS=m +CONFIG_QRTR=m +CONFIG_RAPIDIO=y +CONFIG_RAVE_SP_CORE=m +CONFIG_RAW_DRIVER=m +CONFIG_RCU_CPU_STALL_TIMEOUT=60 +CONFIG_RC_CORE=m +CONFIG_REED_SOLOMON=m +CONFIG_REGULATOR=y +CONFIG_REGULATOR_FIXED_VOLTAGE=m +CONFIG_REGULATOR_TWL4030=m +CONFIG_REISERFS_FS=m +CONFIG_REMOTEPROC=y +CONFIG_RESET_CONTROLLER=y +CONFIG_RFKILL=y +CONFIG_RMI4_CORE=m +CONFIG_ROMFS_FS=m +CONFIG_RPMSG_VIRTIO=m +CONFIG_RTC_DRV_CMOS=y +CONFIG_RTC_DRV_PCF8523=m +CONFIG_S2IO=m +CONFIG_SATA_AHCI_PLATFORM=m +CONFIG_SCHED_SMT=y +CONFIG_SCSI_3W_9XXX=m +CONFIG_SCSI_3W_SAS=m +CONFIG_SCSI_AACRAID=m +CONFIG_SCSI_ACARD=m +CONFIG_SCSI_ADVANSYS=m +CONFIG_SCSI_AIC79XX=m +CONFIG_SCSI_AIC7XXX=m +CONFIG_SCSI_AIC94XX=m +CONFIG_SCSI_AM53C974=m +CONFIG_SCSI_ARCMSR=m +CONFIG_SCSI_BFA_FC=m +CONFIG_SCSI_BNX2X_FCOE=m +CONFIG_SCSI_BNX2_ISCSI=m +CONFIG_SCSI_CHELSIO_FCOE=m +CONFIG_SCSI_CXGB3_ISCSI=m +CONFIG_SCSI_CXGB4_ISCSI=m +CONFIG_SCSI_DC395x=m +CONFIG_SCSI_DMX3191D=m +CONFIG_SCSI_ESAS2R=m +CONFIG_SCSI_FDOMAIN_PCI=m +CONFIG_SCSI_GDTH=m +CONFIG_SCSI_HPSA=m +CONFIG_SCSI_HPTIOP=m +CONFIG_SCSI_INIA100=m +CONFIG_SCSI_INITIO=m +CONFIG_SCSI_IPS=m +CONFIG_SCSI_LPFC=m +CONFIG_SCSI_MVSAS=m +CONFIG_SCSI_MVUMI=m +CONFIG_SCSI_MYRB=m +CONFIG_SCSI_PM8001=m +CONFIG_SCSI_PMCRAID=m +CONFIG_SCSI_QLA_FC=m +CONFIG_SCSI_QLA_ISCSI=m +CONFIG_SCSI_QLOGIC_1280=m +CONFIG_SCSI_SNIC=m +CONFIG_SCSI_SRP_ATTRS=m +CONFIG_SCSI_STEX=m +CONFIG_SCSI_SYM53C8XX_2=m +CONFIG_SCSI_UFSHCD=m +CONFIG_SCSI_WD719X=m +CONFIG_SECURITY_SELINUX_BOOTPARAM=y +CONFIG_SENSORS_APDS990X=m +CONFIG_SENSORS_BH1770=m +CONFIG_SENSORS_LIS3_I2C=m +CONFIG_SENSORS_TSL2550=m +CONFIG_SERIAL_8250_DW=m +CONFIG_SERIAL_8250_FINTEK=y +CONFIG_SERIAL_ALTERA_JTAGUART=m +CONFIG_SERIAL_ALTERA_UART=m +CONFIG_SERIAL_ARC=m +CONFIG_SERIAL_CORE=y +CONFIG_SERIAL_FSL_LINFLEXUART=m +CONFIG_SERIAL_FSL_LPUART=m +CONFIG_SERIAL_JSM=m +CONFIG_SERIAL_NONSTANDARD=y +CONFIG_SERIAL_RP2=m +CONFIG_SERIAL_SC16IS7XX=m +CONFIG_SERIAL_SCCNXP=y +CONFIG_SERIO=y +CONFIG_SFC=m +CONFIG_SFC_FALCON=m +CONFIG_SGI_PARTITION=y +CONFIG_SLIP=m +CONFIG_SND=m +CONFIG_SND_COMPRESS_OFFLOAD=m +CONFIG_SND_DMAENGINE_PCM=m +CONFIG_SND_HDA_PREALLOC_SIZE=0 +CONFIG_SND_PCM=m +CONFIG_SND_SOC=m +CONFIG_SND_SOC_FSL_SSI=m +CONFIG_SND_SOC_I2C_AND_SPI=m +CONFIG_SND_SOC_IMX_AUDMUX=m +CONFIG_SND_SOC_SGTL5000=m +CONFIG_SND_TIMER=m +CONFIG_SOC_TI=y +CONFIG_SOLARIS_X86_PARTITION=y +CONFIG_SOUND=m +CONFIG_SPI=y +# CONFIG_SPI_ROCKCHIP is not set +CONFIG_SPMI=m +CONFIG_SRAM=y +CONFIG_SSB=m +CONFIG_STAGING=y +# CONFIG_STANDALONE is not set +CONFIG_SUN_PARTITION=y +CONFIG_SYSV68_PARTITION=y +CONFIG_SYSV_FS=m +CONFIG_TCG_TIS_I2C_ATMEL=m +CONFIG_TCG_TIS_I2C_INFINEON=m +CONFIG_TCG_TIS_I2C_NUVOTON=m +CONFIG_TCG_TIS_ST33ZP24_I2C=m +CONFIG_THERMAL=y +CONFIG_TIFM_CORE=m +CONFIG_TOUCHSCREEN_ELAN=y +CONFIG_TPS6105X=m +CONFIG_TPS65010=m +CONFIG_TPS6507X=m +CONFIG_TRACE_SINK=m +# CONFIG_TRANSPARENT_HUGEPAGE_ALWAYS is not set +CONFIG_TRANSPARENT_HUGEPAGE_MADVISE=y +CONFIG_TTY_PRINTK=y +CONFIG_UACCE=m +CONFIG_UFS_FS=m +CONFIG_UIO_AEC=m +CONFIG_UIO_CIF=m +CONFIG_UIO_DMEM_GENIRQ=m +CONFIG_UIO_MF624=m +CONFIG_UIO_NETX=m +CONFIG_UIO_PCI_GENERIC=m +CONFIG_UIO_PDRV_GENIRQ=m +CONFIG_UIO_PRUSS=m +CONFIG_UIO_SERCOS3=m +CONFIG_ULTRIX_PARTITION=y +CONFIG_UNIXWARE_DISKLABEL=y +CONFIG_USB4=m +CONFIG_USB_DWC2_PCI=m +CONFIG_USB_EHCI_HCD_PLATFORM=y +CONFIG_USB_GADGET=m +# CONFIG_USB_G_MULTI is not set +CONFIG_USB_HCD_BCMA=m +CONFIG_USB_HCD_SSB=m +CONFIG_USB_MUSB_HDRC=m +CONFIG_USB_OHCI_HCD_PLATFORM=y +CONFIG_USB_ROLE_SWITCH=m +CONFIG_USB_SUPPORT=y +CONFIG_VDPA=m +CONFIG_VFIO=y +CONFIG_VFIO_IOMMU_TYPE1=y +CONFIG_VFIO_PCI=y +CONFIG_VFIO_VIRQFD=y +CONFIG_VIRTIO_MMIO=y +CONFIG_VME_BUS=y +CONFIG_VMXNET3=m +CONFIG_VOP_BUS=m +CONFIG_VXFS_FS=m +CONFIG_VXGE=m +CONFIG_W1=m +CONFIG_WAN=y +CONFIG_WDTPCI=m +CONFIG_WIMAX=m +CONFIG_X25=m +CONFIG_XEN=y +CONFIG_XILINX_LL_TEMAC=m +CONFIG_XILINX_SDFEC=m +CONFIG_XILINX_WATCHDOG=m +CONFIG_XILLYBUS=m +CONFIG_XZ_DEC_ARM=y +CONFIG_XZ_DEC_ARMTHUMB=y +CONFIG_XZ_DEC_IA64=y +CONFIG_XZ_DEC_POWERPC=y +CONFIG_XZ_DEC_SPARC=y +CONFIG_XZ_DEC_TEST=m +CONFIG_XZ_DEC_X86=y +CONFIG_YELLOWFIN=m +CONFIG_ZIIRAVE_WATCHDOG=m +CONFIG_ZSTD_COMPRESS=y --- linux-azure-5.8-5.8.0.orig/debian.master/config/amd64/config.flavour.generic +++ linux-azure-5.8-5.8.0/debian.master/config/amd64/config.flavour.generic @@ -0,0 +1,10 @@ +# +# Config options for config.flavour.generic automatically generated by splitconfig.pl +# +CONFIG_HZ=250 +# CONFIG_HZ_1000 is not set +CONFIG_HZ_250=y +# CONFIG_IRQ_FORCED_THREADING_DEFAULT is not set +# CONFIG_LATENCYTOP is not set +# CONFIG_PREEMPT is not set +CONFIG_PREEMPT_VOLUNTARY=y --- linux-azure-5.8-5.8.0.orig/debian.master/config/amd64/config.flavour.lowlatency +++ linux-azure-5.8-5.8.0/debian.master/config/amd64/config.flavour.lowlatency @@ -0,0 +1,10 @@ +# +# Config options for config.flavour.lowlatency automatically generated by splitconfig.pl +# +CONFIG_HZ=1000 +CONFIG_HZ_1000=y +# CONFIG_HZ_250 is not set +CONFIG_IRQ_FORCED_THREADING_DEFAULT=y +CONFIG_LATENCYTOP=y +CONFIG_PREEMPT=y +# CONFIG_PREEMPT_VOLUNTARY is not set --- linux-azure-5.8-5.8.0.orig/debian.master/config/annotations +++ linux-azure-5.8-5.8.0/debian.master/config/annotations @@ -0,0 +1,13715 @@ +# Menu: HEADER +# FORMAT: 2 +# ARCH: x86 arm arm64 s390 powerpc + +# Mark debugging symbols. +# exceptions +CONFIG_DEBUG_FS note +CONFIG_DEBUG_KERNEL note + +# Menu: ROOT +CONFIG_LIVEPATCH policy<{'amd64': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_SECCOMP policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_COMPAT policy<{'amd64': 'y', 'arm64': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_ZONE_DMA policy<{'amd64': 'y', 'arm64': 'y', 'armhf-generic-lpae': 'y', 's390x': 'y'}> +# +CONFIG_SECCOMP mark +CONFIG_ZONE_DMA note + +# Menu: ACPI (Advanced Configuration and Power Interface) Support +CONFIG_ACPI policy<{'amd64': 'y', 'arm64': 'y'}> +CONFIG_ACPI_DEBUGGER policy<{'amd64': 'y', 'arm64': 'n'}> +CONFIG_ACPI_DEBUGGER_USER policy<{'amd64': 'y'}> +CONFIG_ACPI_SPCR_TABLE policy<{'amd64': 'y', 'arm64': 'y'}> +CONFIG_ACPI_PROCFS_POWER policy<{'amd64': 'n'}> +CONFIG_ACPI_REV_OVERRIDE_POSSIBLE policy<{'amd64': 'y'}> +CONFIG_ACPI_EC_DEBUGFS policy<{'amd64': 'm', 'arm64': 'm'}> +CONFIG_ACPI_AC policy<{'amd64': 'y', 'arm64': 'y'}> +CONFIG_ACPI_BATTERY policy<{'amd64': 'y', 'arm64': 'y'}> +CONFIG_ACPI_BUTTON policy<{'amd64': 'y', 'arm64': 'y'}> +CONFIG_ACPI_VIDEO policy<{'amd64': 'm'}> +CONFIG_ACPI_FAN policy<{'amd64': 'y', 'arm64': 'y'}> +CONFIG_ACPI_TAD policy<{'amd64': 'm', 'arm64': 'm'}> +CONFIG_ACPI_DOCK policy<{'amd64': 'y', 'arm64': 'y'}> +CONFIG_ACPI_PROCESSOR policy<{'amd64': 'y', 'arm64': 'y'}> +CONFIG_ACPI_IPMI policy<{'amd64': 'm', 'arm64': 'm'}> +CONFIG_ACPI_PROCESSOR_AGGREGATOR policy<{'amd64': 'm'}> +CONFIG_ACPI_THERMAL policy<{'amd64': 'y', 'arm64': 'y'}> +CONFIG_ACPI_CUSTOM_DSDT_FILE policy<{'amd64': '""'}> +CONFIG_ACPI_TABLE_UPGRADE policy<{'amd64': 'y', 'arm64': 'y'}> +CONFIG_ACPI_DEBUG policy<{'amd64': 'y', 'arm64': 'n'}> +CONFIG_ACPI_PCI_SLOT policy<{'amd64': 'y', 'arm64': 'y'}> +CONFIG_ACPI_CONTAINER policy<{'amd64': 'y', 'arm64': 'y'}> +CONFIG_ACPI_HOTPLUG_MEMORY policy<{'amd64': 'y', 'arm64': 'y'}> +CONFIG_ACPI_SBS policy<{'amd64': 'm'}> +CONFIG_ACPI_HED policy<{'amd64': 'y', 'arm64': 'y'}> +CONFIG_ACPI_CUSTOM_METHOD policy<{'amd64': 'n', 'arm64': 'n'}> +CONFIG_ACPI_BGRT policy<{'amd64': 'y', 'arm64': 'y'}> +CONFIG_ACPI_REDUCED_HARDWARE_ONLY policy<{'amd64': 'n', 'arm64': 'y'}> +CONFIG_ACPI_NFIT policy<{'amd64': 'm', 'arm64': 'm'}> +CONFIG_NFIT_SECURITY_DEBUG policy<{'amd64': 'n', 'arm64': 'n'}> +CONFIG_ACPI_NUMA policy<{'amd64': 'y', 'arm64': 'y'}> +CONFIG_ACPI_HMAT policy<{'amd64': 'y', 'arm64': 'y'}> +CONFIG_DPTF_POWER policy<{'amd64': 'm'}> +CONFIG_ACPI_EXTLOG policy<{'amd64': 'm'}> +CONFIG_ACPI_CONFIGFS policy<{'amd64': 'm', 'arm64': 'm'}> +CONFIG_TPS68470_PMIC_OPREGION policy<{'amd64': 'y', 'arm64': 'y'}> +CONFIG_X86_PM_TIMER policy<{'amd64': 'y'}> +# +CONFIG_ACPI_PROCFS_POWER flag +CONFIG_ACPI_CUSTOM_METHOD mark note +CONFIG_ACPI_CUSTOM_DSDT_FILE note + +# Menu: ACPI (Advanced Configuration and Power Interface) Support >> ACPI Platform Error Interface (APEI) +CONFIG_ACPI_APEI policy<{'amd64': 'y', 'arm64': 'y'}> +CONFIG_ACPI_APEI_GHES policy<{'amd64': 'y', 'arm64': 'y'}> +CONFIG_ACPI_APEI_PCIEAER policy<{'amd64': 'y', 'arm64': 'y'}> +CONFIG_ACPI_APEI_MEMORY_FAILURE policy<{'amd64': 'y', 'arm64': 'y'}> +CONFIG_ACPI_APEI_EINJ policy<{'amd64': 'm', 'arm64': 'm'}> +CONFIG_ACPI_APEI_ERST_DEBUG policy<{'amd64': 'n', 'arm64': 'n'}> + +# Menu: ACPI (Advanced Configuration and Power Interface) Support >> PMIC (Power Management Integrated Circuit) operation region support +CONFIG_PMIC_OPREGION policy<{'amd64': 'y', 'arm64': 'n'}> +CONFIG_BYTCRC_PMIC_OPREGION policy<{'amd64': 'y'}> +CONFIG_CHTCRC_PMIC_OPREGION policy<{'amd64': 'y'}> +CONFIG_XPOWER_PMIC_OPREGION policy<{'amd64': 'y'}> +CONFIG_BXT_WC_PMIC_OPREGION policy<{'amd64': 'y'}> +CONFIG_CHT_WC_PMIC_OPREGION policy<{'amd64': 'y'}> +CONFIG_CHT_DC_TI_PMIC_OPREGION policy<{'amd64': 'y'}> + +# Menu: ARM Accelerated Cryptographic Algorithms +CONFIG_CRYPTO_CHACHA20_NEON policy<{'arm64': 'm', 'armhf': 'm'}> +CONFIG_CRYPTO_NHPOLY1305_NEON policy<{'arm64': 'm', 'armhf': 'm'}> + +# Menu: ARM Accelerated Cryptographic Algorithms >> Architecture: arm +CONFIG_ARM_CRYPTO policy<{'armhf': 'y'}> +CONFIG_CRYPTO_SHA1_ARM policy<{'armhf': 'm'}> +CONFIG_CRYPTO_SHA1_ARM_NEON policy<{'armhf': 'm'}> +CONFIG_CRYPTO_SHA1_ARM_CE policy<{'armhf': 'm'}> +CONFIG_CRYPTO_SHA2_ARM_CE policy<{'armhf': 'm'}> +CONFIG_CRYPTO_SHA256_ARM policy<{'armhf': 'm'}> +CONFIG_CRYPTO_SHA512_ARM policy<{'armhf': 'm'}> +CONFIG_CRYPTO_AES_ARM policy<{'armhf': 'm'}> +CONFIG_CRYPTO_AES_ARM_BS policy<{'armhf': 'm'}> +CONFIG_CRYPTO_AES_ARM_CE policy<{'armhf': 'm'}> +CONFIG_CRYPTO_GHASH_ARM_CE policy<{'armhf': 'm'}> +CONFIG_CRYPTO_CRCT10DIF_ARM_CE policy<{'armhf': 'm'}> +CONFIG_CRYPTO_CRC32_ARM_CE policy<{'armhf': 'm'}> +CONFIG_CRYPTO_POLY1305_ARM policy<{'armhf': 'm'}> +CONFIG_CRYPTO_CURVE25519_NEON policy<{'armhf': 'm'}> + +# Menu: ARM64 Accelerated Cryptographic Algorithms + +# Menu: ARM64 Accelerated Cryptographic Algorithms >> Architecture: arm64 +CONFIG_ARM64_CRYPTO policy<{'arm64': 'y'}> +CONFIG_CRYPTO_SHA256_ARM64 policy<{'arm64': 'm'}> +CONFIG_CRYPTO_SHA512_ARM64 policy<{'arm64': 'm'}> +CONFIG_CRYPTO_SHA1_ARM64_CE policy<{'arm64': 'm'}> +CONFIG_CRYPTO_SHA2_ARM64_CE policy<{'arm64': 'm'}> +CONFIG_CRYPTO_SHA512_ARM64_CE policy<{'arm64': 'm'}> +CONFIG_CRYPTO_SHA3_ARM64 policy<{'arm64': 'm'}> +CONFIG_CRYPTO_SM3_ARM64_CE policy<{'arm64': 'm'}> +CONFIG_CRYPTO_SM4_ARM64_CE policy<{'arm64': 'm'}> +CONFIG_CRYPTO_GHASH_ARM64_CE policy<{'arm64': 'm'}> +CONFIG_CRYPTO_CRCT10DIF_ARM64_CE policy<{'arm64': 'm'}> +CONFIG_CRYPTO_AES_ARM64 policy<{'arm64': 'm'}> +CONFIG_CRYPTO_AES_ARM64_CE policy<{'arm64': 'm'}> +CONFIG_CRYPTO_AES_ARM64_CE_CCM policy<{'arm64': 'm'}> +CONFIG_CRYPTO_AES_ARM64_CE_BLK policy<{'arm64': 'm'}> +CONFIG_CRYPTO_AES_ARM64_NEON_BLK policy<{'arm64': 'm'}> +CONFIG_CRYPTO_POLY1305_NEON policy<{'arm64': 'm'}> +CONFIG_CRYPTO_AES_ARM64_BS policy<{'arm64': 'm'}> + +# Menu: Advanced setup >> Architecture: powerpc + +# Menu: Advanced setup >> Prompt for advanced kernel configuration options +CONFIG_PHYSICAL_START policy<{'amd64': '0x1000000', 'ppc64el': '0x00000000'}> + +# Menu: Advanced setup >> Prompt for advanced kernel configuration options >> Architecture: powerpc +CONFIG_PAGE_OFFSET policy<{'armhf': '0xC0000000', 'ppc64el': '0xc000000000000000'}> +CONFIG_KERNEL_START policy<{'ppc64el': '0xc000000000000000'}> + +# Menu: Architecture: arm +CONFIG_ARM_DMA_IOMMU_ALIGNMENT policy<{'armhf': '8'}> +CONFIG_ARM_PATCH_PHYS_VIRT policy<{'armhf': 'y'}> + +# Menu: Architecture: arm64 +CONFIG_ZONE_DMA32 policy<{'amd64': 'y', 'arm64': 'y'}> + +# Menu: Architecture: powerpc +CONFIG_PPC64 policy<{'ppc64el': 'y'}> +CONFIG_NR_IRQS policy<{'ppc64el': '512'}> + +# Menu: Architecture: s390 +CONFIG_KMSG_IDS policy<{'s390x': 'y'}> + +# Menu: Architecture: x86 +CONFIG_64BIT policy<{'amd64': 'y', 'arm64': 'y', 'ppc64el': 'y', 's390x': 'y'}> + +# Menu: Binary Emulations >> Architecture: x86 +CONFIG_IA32_EMULATION policy<{'amd64': 'y'}> +CONFIG_IA32_AOUT policy<{'amd64': '-'}> +CONFIG_X86_X32 policy<{'amd64': 'y'}> +# +CONFIG_IA32_AOUT mark note + +# Menu: Boot options +CONFIG_CMDLINE policy<{'arm64': '"console=ttyAMA0"', 'armhf': '""', 'ppc64el': '""'}> +CONFIG_CMDLINE_FORCE policy<{'arm64': 'n'}> +CONFIG_EFI policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y'}> +CONFIG_DMI policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y'}> +CONFIG_KEXEC policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_CRASH_DUMP policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +# +CONFIG_CRASH_DUMP mark note +CONFIG_EFI flag + +# Menu: Boot options >> Architecture: arm +CONFIG_USE_OF policy<{'armhf': 'y'}> +CONFIG_ATAGS policy<{'armhf': 'y'}> +CONFIG_DEPRECATED_PARAM_STRUCT policy<{'armhf': 'n'}> +CONFIG_ZBOOT_ROM_TEXT policy<{'armhf': '0x0'}> +CONFIG_ZBOOT_ROM_BSS policy<{'armhf': '0x0'}> +CONFIG_ARM_APPENDED_DTB policy<{'armhf': 'y'}> +CONFIG_ARM_ATAG_DTB_COMPAT policy<{'armhf-generic': 'y', 'armhf-generic-lpae': 'n'}> +CONFIG_ATAGS_PROC policy<{'armhf': 'y'}> +CONFIG_AUTO_ZRELADDR policy<{'armhf': 'y'}> +# +CONFIG_ARM_ATAG_DTB_COMPAT flag + +# Menu: Boot options >> Architecture: arm64 +CONFIG_ARM64_ACPI_PARKING_PROTOCOL policy<{'arm64': 'y'}> + +# Menu: Boot options >> Kernel command line type + +# Menu: Boot options >> Kernel command line type >> Architecture: arm +CONFIG_ARM_ATAG_DTB_COMPAT_CMDLINE_FROM_BOOTLOADER policy<{'armhf-generic': 'n'}> +CONFIG_ARM_ATAG_DTB_COMPAT_CMDLINE_EXTEND policy<{'armhf-generic': 'y'}> + +# Menu: Bus options + +# Menu: Bus options (PCI etc.) + +# Menu: Bus options (PCI etc.) >> Architecture: x86 +CONFIG_ISA_BUS policy<{'amd64': 'y'}> +CONFIG_ISA_DMA_API policy<{'amd64': 'y', 'ppc64el': 'y'}> +CONFIG_X86_SYSFB policy<{'amd64': 'n'}> +CONFIG_PCI_MMCONFIG policy<{'amd64': 'y'}> +CONFIG_PCI_CNB20LE_QUIRK policy<{'amd64': 'n'}> +# +CONFIG_X86_SYSFB flag + +# Menu: Bus options (PCI etc.) >> PCI access mode >> Architecture: x86 + +# Menu: Bus options >> Architecture: powerpc +CONFIG_FSL_LBC policy<{'ppc64el': 'y'}> + +# Menu: Bus support >> Architecture: arm +CONFIG_ARM_ERRATA_814220 policy<{'armhf': 'y'}> + +# Menu: Cryptographic API +CONFIG_CRYPTO policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_CRYPTO_MANAGER policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_CRYPTO_USER policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_CRYPTO_MANAGER_DISABLE_TESTS policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_CRYPTO_NULL policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_CRYPTO_PCRYPT policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_CRYPTO_CRYPTD policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_CRYPTO_AUTHENC policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_CRYPTO_TEST policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_CRYPTO_RSA policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_CRYPTO_DH policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_CRYPTO_ECDH policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_CRYPTO_ECRDSA policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_CRYPTO_CURVE25519 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_CRYPTO_CURVE25519_X86 policy<{'amd64': 'm'}> +CONFIG_CRYPTO_CCM policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_CRYPTO_GCM policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_CRYPTO_CHACHA20POLY1305 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_CRYPTO_AEGIS128 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_CRYPTO_AEGIS128_SIMD policy<{'arm64': 'y', 'armhf': 'y'}> +CONFIG_CRYPTO_AEGIS128_AESNI_SSE2 policy<{'amd64': 'm'}> +CONFIG_CRYPTO_SEQIV policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_CRYPTO_ECHAINIV policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_CRYPTO_CBC policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_CRYPTO_CFB policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_CRYPTO_CTR policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_CRYPTO_CTS policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_CRYPTO_ECB policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_CRYPTO_LRW policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_CRYPTO_OFB policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_CRYPTO_PCBC policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_CRYPTO_XTS policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_CRYPTO_KEYWRAP policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_CRYPTO_NHPOLY1305_SSE2 policy<{'amd64': 'm'}> +CONFIG_CRYPTO_NHPOLY1305_AVX2 policy<{'amd64': 'm'}> +CONFIG_CRYPTO_ADIANTUM policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_CRYPTO_ESSIV policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_CRYPTO_CMAC policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_CRYPTO_HMAC policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_CRYPTO_XCBC policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_CRYPTO_VMAC policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_CRYPTO_CRC32C policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_CRYPTO_CRC32C_INTEL policy<{'amd64': 'y'}> +CONFIG_CRYPTO_CRC32C_VPMSUM policy<{'ppc64el': 'm'}> +CONFIG_CRYPTO_CRC32 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_CRYPTO_CRC32_PCLMUL policy<{'amd64': 'm'}> +CONFIG_CRYPTO_XXHASH policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_CRYPTO_BLAKE2B policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_CRYPTO_BLAKE2S policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_CRYPTO_BLAKE2S_X86 policy<{'amd64': 'm'}> +CONFIG_CRYPTO_CRCT10DIF policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_CRYPTO_CRCT10DIF_PCLMUL policy<{'amd64': 'm'}> +CONFIG_CRYPTO_CRCT10DIF_VPMSUM policy<{'ppc64el': 'm'}> +CONFIG_CRYPTO_VPMSUM_TESTER policy<{'ppc64el': 'm'}> +CONFIG_CRYPTO_GHASH policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_CRYPTO_POLY1305 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_CRYPTO_POLY1305_X86_64 policy<{'amd64': 'm'}> +CONFIG_CRYPTO_MD4 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_CRYPTO_MD5 policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_CRYPTO_MD5_PPC policy<{'ppc64el': 'm'}> +CONFIG_CRYPTO_MICHAEL_MIC policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_CRYPTO_RMD128 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_CRYPTO_RMD160 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_CRYPTO_RMD256 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_CRYPTO_RMD320 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_CRYPTO_SHA1 policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_CRYPTO_SHA1_SSSE3 policy<{'amd64': 'm'}> +CONFIG_CRYPTO_SHA256_SSSE3 policy<{'amd64': 'm'}> +CONFIG_CRYPTO_SHA512_SSSE3 policy<{'amd64': 'm'}> +CONFIG_CRYPTO_SHA1_PPC policy<{'ppc64el': 'm'}> +CONFIG_CRYPTO_SHA256 policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_CRYPTO_SHA512 policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_CRYPTO_SHA3 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_CRYPTO_SM3 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_CRYPTO_STREEBOG policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_CRYPTO_TGR192 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_CRYPTO_WP512 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_CRYPTO_GHASH_CLMUL_NI_INTEL policy<{'amd64': 'm'}> +CONFIG_CRYPTO_AES policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_CRYPTO_AES_TI policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_CRYPTO_AES_NI_INTEL policy<{'amd64': 'm'}> +CONFIG_CRYPTO_ANUBIS policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_CRYPTO_ARC4 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_CRYPTO_BLOWFISH policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_CRYPTO_BLOWFISH_X86_64 policy<{'amd64': 'm'}> +CONFIG_CRYPTO_CAMELLIA policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_CRYPTO_CAMELLIA_X86_64 policy<{'amd64': 'm'}> +CONFIG_CRYPTO_CAMELLIA_AESNI_AVX_X86_64 policy<{'amd64': 'm'}> +CONFIG_CRYPTO_CAMELLIA_AESNI_AVX2_X86_64 policy<{'amd64': 'm'}> +CONFIG_CRYPTO_CAST5 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_CRYPTO_CAST5_AVX_X86_64 policy<{'amd64': 'm'}> +CONFIG_CRYPTO_CAST6 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_CRYPTO_CAST6_AVX_X86_64 policy<{'amd64': 'm'}> +CONFIG_CRYPTO_DES policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_CRYPTO_DES3_EDE_X86_64 policy<{'amd64': 'm'}> +CONFIG_CRYPTO_FCRYPT policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_CRYPTO_KHAZAD policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_CRYPTO_SALSA20 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_CRYPTO_CHACHA20 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_CRYPTO_CHACHA20_X86_64 policy<{'amd64': 'm'}> +CONFIG_CRYPTO_SEED policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_CRYPTO_SERPENT policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_CRYPTO_SERPENT_SSE2_X86_64 policy<{'amd64': 'm'}> +CONFIG_CRYPTO_SERPENT_AVX_X86_64 policy<{'amd64': 'm'}> +CONFIG_CRYPTO_SERPENT_AVX2_X86_64 policy<{'amd64': 'm'}> +CONFIG_CRYPTO_SM4 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_CRYPTO_TEA policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_CRYPTO_TWOFISH policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_CRYPTO_TWOFISH_X86_64 policy<{'amd64': 'm'}> +CONFIG_CRYPTO_TWOFISH_X86_64_3WAY policy<{'amd64': 'm'}> +CONFIG_CRYPTO_TWOFISH_AVX_X86_64 policy<{'amd64': 'm'}> +CONFIG_CRYPTO_DEFLATE policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'm'}> +CONFIG_CRYPTO_LZO policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_CRYPTO_842 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_CRYPTO_LZ4 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_CRYPTO_LZ4HC policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_CRYPTO_ZSTD policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_CRYPTO_ANSI_CPRNG policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_CRYPTO_JITTERENTROPY policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_CRYPTO_USER_API_HASH policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_CRYPTO_USER_API_SKCIPHER policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_CRYPTO_USER_API_RNG policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_CRYPTO_USER_API_AEAD policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_CRYPTO_STATS policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_CRYPTO_LIB_BLAKE2S policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_CRYPTO_LIB_CHACHA policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_CRYPTO_LIB_CURVE25519 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_CRYPTO_LIB_POLY1305 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_CRYPTO_LIB_CHACHA20POLY1305 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +# +CONFIG_CRYPTO_MANAGER_DISABLE_TESTS flag +CONFIG_CRYPTO_TEST flag +CONFIG_CRYPTO_SHA512 note + +# Menu: Cryptographic API >> Asymmetric (public-key cryptographic) key type +CONFIG_ASYMMETRIC_KEY_TYPE policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_ASYMMETRIC_PUBLIC_KEY_SUBTYPE policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_ASYMMETRIC_TPM_KEY_SUBTYPE policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_X509_CERTIFICATE_PARSER policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_PKCS8_PRIVATE_KEY_PARSER policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_TPM_KEY_PARSER policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_PKCS7_MESSAGE_PARSER policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_PKCS7_TEST_KEY policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_SIGNED_PE_FILE_VERIFICATION policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +# +CONFIG_ASYMMETRIC_KEY_TYPE note +CONFIG_ASYMMETRIC_PUBLIC_KEY_SUBTYPE note +CONFIG_X509_CERTIFICATE_PARSER note + +# Menu: Cryptographic API >> Certificates for signature checking +CONFIG_MODULE_SIG_KEY policy<{'amd64': '"certs/signing_key.pem"', 'arm64': '"certs/signing_key.pem"', 'armhf': '"certs/signing_key.pem"', 'ppc64el': '"certs/signing_key.pem"', 's390x': '"certs/signing_key.pem"'}> +CONFIG_SYSTEM_BLACKLIST_KEYRING policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_SYSTEM_BLACKLIST_HASH_LIST policy<{'amd64': '""', 'arm64': '""', 'armhf': '""', 'ppc64el': '""', 's390x': '""'}> +# +CONFIG_SYSTEM_BLACKLIST_KEYRING mark + +# Menu: Cryptographic API >> Certificates for signature checking >> Provide system-wide ring of trusted keys +CONFIG_SYSTEM_TRUSTED_KEYRING policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_SYSTEM_TRUSTED_KEYS policy<{'amd64': '"debian/canonical-certs.pem"', 'arm64': '"debian/canonical-certs.pem"', 'armhf': '"debian/canonical-certs.pem"', 'ppc64el': '"debian/canonical-certs.pem"', 's390x': '"debian/canonical-certs.pem"'}> +CONFIG_SYSTEM_EXTRA_CERTIFICATE policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_SYSTEM_EXTRA_CERTIFICATE_SIZE policy<{'amd64': '4096', 'arm64': '4096', 'armhf': '4096', 'ppc64el': '4096', 's390x': '4096'}> +CONFIG_SECONDARY_TRUSTED_KEYRING policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> + +# Menu: Cryptographic API >> Hardware crypto devices +CONFIG_CRYPTO_HW policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_CRYPTO_DEV_PADLOCK policy<{'amd64': 'y'}> +CONFIG_CRYPTO_DEV_PADLOCK_AES policy<{'amd64': 'm'}> +CONFIG_CRYPTO_DEV_PADLOCK_SHA policy<{'amd64': 'm'}> +CONFIG_ZCRYPT policy<{'s390x': 'm'}> +CONFIG_ZCRYPT_MULTIDEVNODES policy<{'s390x': 'y'}> +CONFIG_PKEY policy<{'s390x': 'm'}> +CONFIG_CRYPTO_PAES_S390 policy<{'s390x': 'm'}> +CONFIG_CRYPTO_SHA1_S390 policy<{'s390x': 'm'}> +CONFIG_CRYPTO_SHA256_S390 policy<{'s390x': 'm'}> +CONFIG_CRYPTO_SHA512_S390 policy<{'s390x': 'm'}> +CONFIG_CRYPTO_SHA3_256_S390 policy<{'s390x': 'm'}> +CONFIG_CRYPTO_SHA3_512_S390 policy<{'s390x': 'm'}> +CONFIG_CRYPTO_DES_S390 policy<{'s390x': 'm'}> +CONFIG_CRYPTO_AES_S390 policy<{'s390x': 'm'}> +CONFIG_S390_PRNG policy<{'s390x': 'm'}> +CONFIG_CRYPTO_GHASH_S390 policy<{'s390x': 'm'}> +CONFIG_CRYPTO_CRC32_S390 policy<{'s390x': 'm'}> +CONFIG_CRYPTO_DEV_HIFN_795X policy<{'armhf-generic': 'm'}> +CONFIG_CRYPTO_DEV_HIFN_795X_RNG policy<{'armhf-generic': 'y'}> +CONFIG_CRYPTO_DEV_FSL_CAAM policy<{'arm64': 'm', 'armhf-generic': 'm'}> +CONFIG_CRYPTO_DEV_FSL_CAAM_DEBUG policy<{'arm64': 'n', 'armhf-generic': 'n'}> +CONFIG_CRYPTO_DEV_FSL_DPAA2_CAAM policy<{'arm64': 'm'}> +CONFIG_CRYPTO_DEV_SAHARA policy<{'arm64': 'm', 'armhf-generic': 'm'}> +CONFIG_CRYPTO_DEV_EXYNOS_RNG policy<{'armhf': 'm'}> +CONFIG_CRYPTO_DEV_S5P policy<{'armhf': 'm'}> +CONFIG_CRYPTO_DEV_NX policy<{'ppc64el': 'y'}> +CONFIG_CRYPTO_DEV_NX_COMPRESS policy<{'ppc64el': 'm'}> +CONFIG_CRYPTO_DEV_NX_COMPRESS_PSERIES policy<{'ppc64el': 'm'}> +CONFIG_CRYPTO_DEV_NX_COMPRESS_POWERNV policy<{'ppc64el': 'm'}> +CONFIG_CRYPTO_DEV_ATMEL_ECC policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'n'}> +CONFIG_CRYPTO_DEV_ATMEL_SHA204A policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'n'}> +CONFIG_CRYPTO_DEV_CCP policy<{'amd64': 'y', 'arm64': 'y'}> +CONFIG_CRYPTO_DEV_CCP_DD policy<{'amd64': 'm', 'arm64': 'm'}> +CONFIG_CRYPTO_DEV_SP_CCP policy<{'amd64': 'y', 'arm64': 'y'}> +CONFIG_CRYPTO_DEV_CCP_CRYPTO policy<{'amd64': 'm', 'arm64': 'm'}> +CONFIG_CRYPTO_DEV_SP_PSP policy<{'amd64': 'y'}> +CONFIG_CRYPTO_DEV_CCP_DEBUGFS policy<{'amd64': 'n', 'arm64': 'n'}> +CONFIG_CRYPTO_DEV_MXS_DCP policy<{'arm64': 'n', 'armhf-generic': 'n'}> +CONFIG_CRYPTO_DEV_QAT_DH895xCC policy<{'amd64': 'm'}> +CONFIG_CRYPTO_DEV_QAT_C3XXX policy<{'amd64': 'm'}> +CONFIG_CRYPTO_DEV_QAT_C62X policy<{'amd64': 'm'}> +CONFIG_CRYPTO_DEV_QAT_DH895xCCVF policy<{'amd64': 'm'}> +CONFIG_CRYPTO_DEV_QAT_C3XXXVF policy<{'amd64': 'm'}> +CONFIG_CRYPTO_DEV_QAT_C62XVF policy<{'amd64': 'm'}> +CONFIG_CAVIUM_CPT policy<{'arm64': 'm'}> +CONFIG_CRYPTO_DEV_NITROX_CNN55XX policy<{'amd64': 'm', 'arm64': 'm', 'ppc64el': 'm', 's390x': 'n'}> +CONFIG_CRYPTO_DEV_MARVELL_CESA policy<{'arm64': 'm', 'armhf': 'm'}> +CONFIG_CRYPTO_DEV_OCTEONTX_CPT policy<{'arm64': 'm'}> +CONFIG_CRYPTO_DEV_CAVIUM_ZIP policy<{'arm64': 'm'}> +CONFIG_CRYPTO_DEV_QCE policy<{'arm64': 'm', 'armhf': 'm'}> +CONFIG_CRYPTO_DEV_QCE_SW_MAX_LEN policy<{'arm64': '512', 'armhf': '512'}> +CONFIG_CRYPTO_DEV_QCOM_RNG policy<{'arm64': 'm', 'armhf': 'm'}> +CONFIG_CRYPTO_DEV_VMX policy<{'ppc64el': 'y'}> +CONFIG_CRYPTO_DEV_VMX_ENCRYPT policy<{'ppc64el': 'm'}> +CONFIG_CRYPTO_DEV_ROCKCHIP policy<{'arm64': 'm', 'armhf': 'm'}> +CONFIG_CRYPTO_DEV_ZYNQMP_AES policy<{'arm64': 'm'}> +CONFIG_CRYPTO_DEV_MEDIATEK policy<{'armhf': 'm'}> +CONFIG_CRYPTO_DEV_CHELSIO policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_CHELSIO_IPSEC_INLINE policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_CHELSIO_TLS_DEVICE policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_CRYPTO_DEV_VIRTIO policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_CRYPTO_DEV_BCM_SPU policy<{'arm64': 'm'}> +CONFIG_CRYPTO_DEV_SAFEXCEL policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'n'}> +CONFIG_CRYPTO_DEV_ARTPEC6 policy<{'armhf': 'm'}> +CONFIG_CRYPTO_DEV_CCREE policy<{'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_CRYPTO_DEV_HISI_SEC policy<{'arm64': 'm'}> +CONFIG_CRYPTO_DEV_HISI_SEC2 policy<{'arm64': 'm'}> +CONFIG_CRYPTO_DEV_HISI_ZIP policy<{'arm64': 'm'}> +CONFIG_CRYPTO_DEV_HISI_HPRE policy<{'arm64': 'm'}> +CONFIG_CRYPTO_DEV_AMLOGIC_GXL policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_CRYPTO_DEV_AMLOGIC_GXL_DEBUG policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n', 's390x': 'n'}> +# +CONFIG_CRYPTO_DEV_HISI_ZIP mark +CONFIG_ZCRYPT_MULTIDEVNODES mark note + +# Menu: Cryptographic API >> Hardware crypto devices >> Algorithms enabled for QCE acceleration +CONFIG_CRYPTO_DEV_QCE_ENABLE_ALL policy<{'arm64': 'y', 'armhf': 'y'}> +CONFIG_CRYPTO_DEV_QCE_ENABLE_SKCIPHER policy<{'arm64': 'n', 'armhf': 'n'}> +CONFIG_CRYPTO_DEV_QCE_ENABLE_SHA policy<{'arm64': 'n', 'armhf': 'n'}> + +# Menu: Cryptographic API >> Hardware crypto devices >> Freescale CAAM Job Ring driver backend +CONFIG_CRYPTO_DEV_FSL_CAAM_JR policy<{'arm64': 'm', 'armhf-generic': 'm'}> +CONFIG_CRYPTO_DEV_FSL_CAAM_RINGSIZE policy<{'arm64': '9', 'armhf-generic': '9'}> +CONFIG_CRYPTO_DEV_FSL_CAAM_INTC policy<{'arm64': 'y', 'armhf-generic': 'y'}> +CONFIG_CRYPTO_DEV_FSL_CAAM_INTC_COUNT_THLD policy<{'arm64': '255', 'armhf-generic': '255'}> +CONFIG_CRYPTO_DEV_FSL_CAAM_INTC_TIME_THLD policy<{'arm64': '2048', 'armhf-generic': '2048'}> +CONFIG_CRYPTO_DEV_FSL_CAAM_CRYPTO_API policy<{'arm64': 'y', 'armhf-generic': 'y'}> +CONFIG_CRYPTO_DEV_FSL_CAAM_CRYPTO_API_QI policy<{'arm64': 'y'}> +CONFIG_CRYPTO_DEV_FSL_CAAM_AHASH_API policy<{'arm64': 'y', 'armhf-generic': 'y'}> +CONFIG_CRYPTO_DEV_FSL_CAAM_PKC_API policy<{'arm64': 'y', 'armhf-generic': 'y'}> +CONFIG_CRYPTO_DEV_FSL_CAAM_RNG_API policy<{'arm64': 'y', 'armhf-generic': 'y'}> + +# Menu: Cryptographic API >> Hardware crypto devices >> Support for Allwinner cryptographic offloader +CONFIG_CRYPTO_DEV_ALLWINNER policy<{'arm64': 'y'}> +CONFIG_CRYPTO_DEV_SUN4I_SS policy<{'arm64': 'm'}> +CONFIG_CRYPTO_DEV_SUN4I_SS_PRNG policy<{'arm64': 'y'}> +CONFIG_CRYPTO_DEV_SUN8I_CE policy<{'arm64': 'm'}> +CONFIG_CRYPTO_DEV_SUN8I_CE_DEBUG policy<{'arm64': 'n'}> +CONFIG_CRYPTO_DEV_SUN8I_SS policy<{'arm64': 'm'}> +CONFIG_CRYPTO_DEV_SUN8I_SS_DEBUG policy<{'arm64': 'n'}> + +# Menu: Cryptographic API >> Hardware crypto devices >> Support for OMAP crypto HW accelerators +CONFIG_CRYPTO_DEV_OMAP policy<{'armhf': 'm'}> +CONFIG_CRYPTO_DEV_OMAP_SHAM policy<{'armhf': 'm'}> +CONFIG_CRYPTO_DEV_OMAP_AES policy<{'armhf': 'm'}> +CONFIG_CRYPTO_DEV_OMAP_DES policy<{'armhf': 'm'}> + +# Menu: Cryptographic API >> NIST SP800-90A DRBG +CONFIG_CRYPTO_DRBG_MENU policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_CRYPTO_DRBG_HASH policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_CRYPTO_DRBG_CTR policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> + +# Menu: Device Drivers +CONFIG_RANDOM_TRUST_CPU policy<{'amd64': 'y', 'arm64': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_RANDOM_TRUST_BOOTLOADER policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_MEDIA_CEC_RC policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_CEC_PIN_ERROR_INJ policy<{'amd64-lowlatency': 'n', 'arm64': 'n'}> +CONFIG_PANEL policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_CHARLCD policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_MFD_CROS_EC policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm'}> +CONFIG_USB4 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'n'}> +CONFIG_TEE policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm'}> +CONFIG_UNISYS_VISORBUS policy<{'amd64': 'm'}> +CONFIG_MOST policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'n'}> + +# Menu: Device Drivers >> ATA/ATAPI/MFM/RLL support (DEPRECATED) +CONFIG_IDE policy<{'amd64': 'n', 'armhf': 'n', 'ppc64el': 'n'}> + +# Menu: Device Drivers >> Accessibility support +CONFIG_ACCESSIBILITY policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n', 's390x': 'n'}> +# +CONFIG_ACCESSIBILITY flag + +# Menu: Device Drivers >> Adaptive Voltage Scaling class support +CONFIG_POWER_AVS policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'n'}> +CONFIG_QCOM_CPR policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_ROCKCHIP_IODOMAIN policy<{'arm64': 'm', 'armhf': 'm'}> + +# Menu: Device Drivers >> Android +CONFIG_ANDROID policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'n'}> + +# Menu: Device Drivers >> Android >> Android Binder IPC Driver +CONFIG_ANDROID_BINDER_IPC policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_ANDROID_BINDERFS policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_ANDROID_BINDER_DEVICES policy<{'amd64': '""', 'arm64': '""', 'armhf': '""', 'ppc64el': '""'}> +CONFIG_ANDROID_BINDER_IPC_SELFTEST policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n'}> + +# Menu: Device Drivers >> Auxiliary Display support +CONFIG_ARM_CHARLCD policy<{'armhf': 'y'}> +CONFIG_AUXDISPLAY policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'n'}> +CONFIG_HD44780 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_IMG_ASCII_LCD policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_HT16K33 policy<{'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_PANEL_CHANGE_MESSAGE policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n'}> + +# Menu: Device Drivers >> Auxiliary Display support >> Backlight initial state +CONFIG_CHARLCD_BL_OFF policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n'}> +CONFIG_CHARLCD_BL_ON policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n'}> +CONFIG_CHARLCD_BL_FLASH policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> + +# Menu: Device Drivers >> Auxiliary Display support >> KS0108 LCD Controller +CONFIG_KS0108 policy<{'amd64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_KS0108_PORT policy<{'amd64': '0x378', 'armhf': '0x378', 'ppc64el': '0x378'}> +CONFIG_KS0108_DELAY policy<{'amd64': '2', 'armhf': '2', 'ppc64el': '2'}> +CONFIG_CFAG12864B policy<{'amd64': 'm'}> +CONFIG_CFAG12864B_RATE policy<{'amd64': '20'}> + +# Menu: Device Drivers >> Auxiliary Display support >> Parallel port LCD/Keypad Panel support +CONFIG_PARPORT_PANEL policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_PANEL_PARPORT policy<{'amd64': '0', 'arm64': '0', 'armhf': '0', 'ppc64el': '0'}> +CONFIG_PANEL_PROFILE policy<{'amd64': '5', 'arm64': '5', 'armhf': '5', 'ppc64el': '5'}> + +# Menu: Device Drivers >> Auxiliary Display support >> Parallel port LCD/Keypad Panel support >> LCD type (0=none, 1=custom, 2=old //, 3=ks0074, 4=hantronix, 5=Nexcom) + +# Menu: Device Drivers >> Auxiliary Display support >> Parallel port LCD/Keypad Panel support >> LCD type (0=none, 1=custom, 2=old //, 3=ks0074, 4=hantronix, 5=Nexcom) >> LCD communication mode (0=parallel 8 bits, 1=serial) + +# Menu: Device Drivers >> Block devices +CONFIG_BLK_DEV policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_BLK_DEV_NULL_BLK policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_BLK_DEV_FD policy<{'amd64': 'm', 'ppc64el': 'm'}> +CONFIG_BLK_DEV_PCIESSD_MTIP32XX policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'n'}> +CONFIG_ZRAM policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_ZRAM_WRITEBACK policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_ZRAM_MEMORY_TRACKING policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_BLK_DEV_UMEM policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'n'}> +CONFIG_BLK_DEV_LOOP policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_BLK_DEV_LOOP_MIN_COUNT policy<{'amd64': '8', 'arm64': '8', 'armhf': '8', 'ppc64el': '8', 's390x': '8'}> +CONFIG_BLK_DEV_CRYPTOLOOP policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'n'}> +CONFIG_BLK_DEV_DRBD policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_DRBD_FAULT_INJECTION policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n', 's390x': 'n'}> +CONFIG_BLK_DEV_NBD policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_BLK_DEV_SKD policy<{'amd64': 'm', 'arm64': 'm', 'ppc64el': 'm', 's390x': 'n'}> +CONFIG_BLK_DEV_SX8 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'n'}> +CONFIG_BLK_DEV_RAM policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_BLK_DEV_RAM_COUNT policy<{'amd64': '16', 'arm64': '16', 'armhf': '16', 'ppc64el': '16', 's390x': '16'}> +CONFIG_BLK_DEV_RAM_SIZE policy<{'amd64': '65536', 'arm64': '65536', 'armhf': '65536', 'ppc64el': '65536', 's390x': '65536'}> +CONFIG_CDROM_PKTCDVD policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'n'}> +CONFIG_CDROM_PKTCDVD_BUFFERS policy<{'amd64': '8', 'arm64': '8', 'armhf': '8', 'ppc64el': '8'}> +CONFIG_CDROM_PKTCDVD_WCACHE policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n'}> +CONFIG_ATA_OVER_ETH policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'n'}> +CONFIG_BLK_DEV_XPRAM policy<{'s390x': 'n'}> +CONFIG_DCSSBLK policy<{'s390x': 'm'}> +CONFIG_SCM_BLOCK policy<{'s390x': 'm'}> +CONFIG_XEN_BLKDEV_FRONTEND policy<{'amd64': 'y', 'arm64': 'y'}> +CONFIG_XEN_BLKDEV_BACKEND policy<{'amd64': 'm', 'arm64': 'm'}> +CONFIG_VIRTIO_BLK policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_BLK_DEV_RBD policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_BLK_DEV_RSXX policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'n'}> +CONFIG_BLK_DEV_RNBD_CLIENT policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_BLK_DEV_RNBD_SERVER policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +# +CONFIG_BLK_DEV_UMEM note +CONFIG_CDROM_PKTCDVD_WCACHE mark +CONFIG_XEN_BLKDEV_FRONTEND note +CONFIG_VIRTIO_BLK note +CONFIG_BLK_DEV_RAM note +CONFIG_BLK_DEV_RAM_SIZE mark note flag + +# Menu: Device Drivers >> Block devices >> Parallel port IDE device support +CONFIG_PARIDE policy<{'amd64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_PARIDE_PD policy<{'amd64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_PARIDE_PCD policy<{'amd64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_PARIDE_PF policy<{'amd64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_PARIDE_PT policy<{'amd64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_PARIDE_PG policy<{'amd64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_PARIDE_ATEN policy<{'amd64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_PARIDE_BPCK policy<{'amd64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_PARIDE_BPCK6 policy<{'armhf': 'm'}> +CONFIG_PARIDE_COMM policy<{'amd64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_PARIDE_DSTR policy<{'amd64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_PARIDE_FIT2 policy<{'amd64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_PARIDE_FIT3 policy<{'amd64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_PARIDE_EPAT policy<{'amd64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_PARIDE_EPATC8 policy<{'amd64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_PARIDE_EPIA policy<{'amd64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_PARIDE_FRIQ policy<{'amd64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_PARIDE_FRPW policy<{'amd64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_PARIDE_KBIC policy<{'amd64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_PARIDE_KTTI policy<{'amd64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_PARIDE_ON20 policy<{'amd64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_PARIDE_ON26 policy<{'amd64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> + +# Menu: Device Drivers >> Block devices >> Support for DASD devices +CONFIG_DASD policy<{'s390x': 'm'}> +CONFIG_DASD_PROFILE policy<{'s390x': 'y'}> +CONFIG_DASD_ECKD policy<{'s390x': 'm'}> +CONFIG_DASD_FBA policy<{'s390x': 'm'}> +CONFIG_DASD_DIAG policy<{'s390x': 'm'}> +CONFIG_DASD_EER policy<{'s390x': 'y'}> + +# Menu: Device Drivers >> Board level reset or power off +CONFIG_POWER_RESET policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_POWER_RESET_AS3722 policy<{'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_POWER_RESET_AXXIA policy<{'armhf-generic-lpae': 'y'}> +CONFIG_POWER_RESET_BRCMKONA policy<{'armhf': 'y'}> +CONFIG_POWER_RESET_BRCMSTB policy<{'arm64': 'n', 'armhf': 'n'}> +CONFIG_POWER_RESET_GPIO policy<{'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_POWER_RESET_GPIO_RESTART policy<{'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_POWER_RESET_HISI policy<{'arm64': 'y', 'armhf': 'y'}> +CONFIG_POWER_RESET_MSM policy<{'arm64': 'y', 'armhf': 'y'}> +CONFIG_POWER_RESET_QCOM_PON policy<{'arm64': 'm', 'armhf': 'm'}> +CONFIG_POWER_RESET_LTC2952 policy<{'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_POWER_RESET_MT6323 policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_POWER_RESET_QNAP policy<{'armhf': 'n'}> +CONFIG_POWER_RESET_RESTART policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_POWER_RESET_VERSATILE policy<{'armhf': 'y'}> +CONFIG_POWER_RESET_VEXPRESS policy<{'arm64': 'y', 'armhf': 'y'}> +CONFIG_POWER_RESET_XGENE policy<{'arm64': 'n'}> +CONFIG_POWER_RESET_SYSCON policy<{'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_POWER_RESET_SYSCON_POWEROFF policy<{'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_POWER_RESET_RMOBILE policy<{'armhf': 'm'}> +CONFIG_SYSCON_REBOOT_MODE policy<{'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_POWER_RESET_SC27XX policy<{'arm64': 'm'}> +CONFIG_NVMEM_REBOOT_MODE policy<{'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> + +# Menu: Device Drivers >> Broadcom specific AMBA +CONFIG_BCMA_HOST_PCI policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_BCMA policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'n'}> +CONFIG_BCMA_HOST_SOC policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_BCMA_DRIVER_PCI policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_BCMA_SFLASH policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_BCMA_DRIVER_GMAC_CMN policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_BCMA_DRIVER_GPIO policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_BCMA_DEBUG policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n'}> + +# Menu: Device Drivers >> Bus devices +CONFIG_BRCMSTB_GISB_ARB policy<{'arm64': 'y', 'armhf': 'y'}> +CONFIG_MOXTET policy<{'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_HISILICON_LPC policy<{'arm64': 'y'}> +CONFIG_IMX_WEIM policy<{'arm64': 'y', 'armhf-generic': 'y'}> +CONFIG_OMAP_INTERCONNECT policy<{'armhf': 'y'}> +CONFIG_OMAP_OCP2SCP policy<{'armhf': 'm'}> +CONFIG_QCOM_EBI2 policy<{'arm64': 'y', 'armhf': 'y'}> +CONFIG_SIMPLE_PM_BUS policy<{'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_SUN50I_DE2_BUS policy<{'arm64': 'y'}> +CONFIG_SUNXI_RSB policy<{'arm64': 'm'}> +CONFIG_TEGRA_GMI policy<{'armhf-generic': 'm'}> +CONFIG_TI_SYSC policy<{'armhf': 'y'}> +CONFIG_UNIPHIER_SYSTEM_BUS policy<{'armhf': 'y'}> +CONFIG_VEXPRESS_CONFIG policy<{'arm64': 'y', 'armhf': 'y'}> +CONFIG_FSL_MC_BUS policy<{'arm64': 'y', 'armhf-generic': 'n'}> +CONFIG_MHI_BUS policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'n'}> + +# Menu: Device Drivers >> Character devices +CONFIG_DEVMEM policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_DEVKMEM policy<{'amd64': 'n', 'armhf': 'n', 'ppc64el': 'n', 's390x': 'n'}> +CONFIG_TTY_PRINTK policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'n'}> +CONFIG_TTY_PRINTK_LEVEL policy<{'amd64': '6', 'arm64': '6', 'armhf': '6', 'ppc64el': '6'}> +CONFIG_PRINTER policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_LP_CONSOLE policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n'}> +CONFIG_PPDEV policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_VIRTIO_CONSOLE policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_IBM_BSR policy<{'ppc64el': 'm'}> +CONFIG_POWERNV_OP_PANEL policy<{'ppc64el': 'm'}> +CONFIG_ASPEED_KCS_IPMI_BMC policy<{'armhf': 'm'}> +CONFIG_NPCM7XX_KCS_IPMI_BMC policy<{'armhf': 'm'}> +CONFIG_ASPEED_BT_IPMI_BMC policy<{'armhf': 'm'}> +CONFIG_IPMB_DEVICE_INTERFACE policy<{'arm64': 'm', 'armhf': 'm'}> +CONFIG_NVRAM policy<{'amd64': 'm', 'ppc64el': 'y'}> +CONFIG_APPLICOM policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'n'}> +CONFIG_MWAVE policy<{'amd64': 'm'}> +CONFIG_RAW_DRIVER policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'n'}> +CONFIG_MAX_RAW_DEVS policy<{'amd64': '256', 'arm64': '256', 'armhf': '256', 'ppc64el': '256'}> +CONFIG_HPET policy<{'amd64': 'y'}> +CONFIG_HPET_MMAP policy<{'amd64': 'y'}> +CONFIG_HPET_MMAP_DEFAULT policy<{'amd64': 'y'}> +CONFIG_HANGCHECK_TIMER policy<{'amd64': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_UV_MMTIMER policy<{'amd64': 'm'}> +CONFIG_TELCLOCK policy<{'amd64': 'm'}> +CONFIG_DEVPORT policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_TN3270 policy<{'s390x': 'y'}> +CONFIG_TN3270_TTY policy<{'s390x': 'y'}> +CONFIG_TN3270_FS policy<{'s390x': 'm'}> +CONFIG_TN3270_CONSOLE policy<{'s390x': 'y'}> +CONFIG_TN3215 policy<{'s390x': 'y'}> +CONFIG_TN3215_CONSOLE policy<{'s390x': 'y'}> +CONFIG_SCLP_TTY policy<{'s390x': 'y'}> +CONFIG_SCLP_CONSOLE policy<{'s390x': 'y'}> +CONFIG_SCLP_VT220_TTY policy<{'s390x': 'y'}> +CONFIG_SCLP_VT220_CONSOLE policy<{'s390x': 'y'}> +CONFIG_HMC_DRV policy<{'s390x': 'm'}> +CONFIG_SCLP_OFB policy<{'s390x': 'y'}> +CONFIG_S390_TAPE policy<{'s390x': 'm'}> +CONFIG_S390_TAPE_34XX policy<{'s390x': 'm'}> +CONFIG_S390_TAPE_3590 policy<{'s390x': 'm'}> +CONFIG_VMLOGRDR policy<{'s390x': 'm'}> +CONFIG_VMCP policy<{'s390x': 'y'}> +CONFIG_VMCP_CMA_SIZE policy<{'s390x': '4'}> +CONFIG_MONREADER policy<{'s390x': 'm'}> +CONFIG_MONWRITER policy<{'s390x': 'm'}> +CONFIG_S390_VMUR policy<{'s390x': 'm'}> +CONFIG_XILLYBUS policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'n'}> +CONFIG_XILLYBUS_PCIE policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_XILLYBUS_OF policy<{'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +# +CONFIG_DEVKMEM mark note +CONFIG_NVRAM mark note +CONFIG_SCLP_OFB mark note + +# Menu: Device Drivers >> Character devices >> Enable TTY +CONFIG_HVC_CONSOLE policy<{'ppc64el': 'y'}> +CONFIG_HVC_OLD_HVSI policy<{'ppc64el': 'y'}> +CONFIG_HVC_OPAL policy<{'ppc64el': 'y'}> +CONFIG_HVC_RTAS policy<{'ppc64el': 'y'}> +CONFIG_HVC_IUCV policy<{'s390x': 'y'}> +CONFIG_HVC_XEN policy<{'amd64': 'y', 'arm64': 'y'}> +CONFIG_HVC_XEN_FRONTEND policy<{'amd64': 'y', 'arm64': 'y'}> +CONFIG_HVC_UDBG policy<{'ppc64el': 'n'}> +CONFIG_HVC_DCC policy<{'arm64': 'n', 'armhf': 'n'}> +CONFIG_HVCS policy<{'ppc64el': 'm'}> +CONFIG_TTY policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_VT policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_CONSOLE_TRANSLATIONS policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_VT_CONSOLE policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_VT_HW_CONSOLE_BINDING policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_UNIX98_PTYS policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_LEGACY_PTYS policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_LEGACY_PTY_COUNT policy<{'amd64': '0', 'arm64': '0', 'armhf': '0', 'ppc64el': '0', 's390x': '0'}> +CONFIG_NOZOMI policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'n'}> +CONFIG_N_GSM policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'n'}> +CONFIG_TRACE_ROUTER policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_TRACE_SINK policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'n'}> +CONFIG_PPC_EPAPR_HV_BYTECHAN policy<{'ppc64el': 'n'}> +CONFIG_NULL_TTY policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_LDISC_AUTOLOAD policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +# +CONFIG_HVC_UDBG mark note +CONFIG_N_GSM note + +# Menu: Device Drivers >> Character devices >> Enable TTY >> Non-standard serial port support +CONFIG_SERIAL_NONSTANDARD policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'n'}> +CONFIG_ROCKETPORT policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_CYCLADES policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_CYZ_INTR policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n'}> +CONFIG_MOXA_INTELLIO policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_MOXA_SMARTIO policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SYNCLINK policy<{'amd64': 'm', 'ppc64el': 'm'}> +CONFIG_SYNCLINKMP policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SYNCLINK_GT policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_ISI policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_N_HDLC policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> + +# Menu: Device Drivers >> Character devices >> Enable TTY >> Serial drivers +CONFIG_SERIAL_AMBA_PL010 policy<{'arm64': 'm', 'armhf': 'm'}> +CONFIG_SERIAL_AMBA_PL011 policy<{'arm64': 'y', 'armhf': 'y'}> +CONFIG_SERIAL_AMBA_PL011_CONSOLE policy<{'arm64': 'y', 'armhf': 'y'}> +CONFIG_SERIAL_EARLYCON_ARM_SEMIHOST policy<{'arm64': 'y', 'armhf': 'y'}> +CONFIG_SERIAL_KGDB_NMI policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_SERIAL_MESON policy<{'arm64': 'y', 'armhf': 'y'}> +CONFIG_SERIAL_MESON_CONSOLE policy<{'arm64': 'y', 'armhf': 'y'}> +CONFIG_SERIAL_SAMSUNG policy<{'armhf': 'm'}> +CONFIG_SERIAL_TEGRA policy<{'armhf-generic': 'm'}> +CONFIG_SERIAL_TEGRA_TCU policy<{'armhf-generic': 'm'}> +CONFIG_SERIAL_MAX3100 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SERIAL_MAX310X policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_SERIAL_IMX policy<{'arm64': 'y', 'armhf-generic': 'y'}> +CONFIG_SERIAL_IMX_CONSOLE policy<{'arm64': 'y', 'armhf-generic': 'y'}> +CONFIG_SERIAL_UARTLITE policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_SERIAL_UARTLITE_NR_UARTS policy<{'amd64': '1', 'arm64': '1', 'armhf': '1', 'ppc64el': '1', 's390x': '1'}> +CONFIG_SERIAL_ICOM policy<{'ppc64el': 'm'}> +CONFIG_SERIAL_JSM policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'n'}> +CONFIG_SERIAL_MSM policy<{'arm64': 'y', 'armhf': 'y'}> +CONFIG_SERIAL_MSM_CONSOLE policy<{'arm64': 'y', 'armhf': 'y'}> +CONFIG_SERIAL_QCOM_GENI policy<{'arm64': 'm', 'armhf': 'm'}> +CONFIG_SERIAL_QCOM_GENI_CONSOLE policy<{'arm64': 'y', 'armhf': 'y'}> +CONFIG_SERIAL_OMAP policy<{'armhf': 'y'}> +CONFIG_SERIAL_OMAP_CONSOLE policy<{'armhf': 'y'}> +CONFIG_SERIAL_SIFIVE policy<{'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SERIAL_LANTIQ policy<{'amd64': 'm'}> +CONFIG_SERIAL_QE policy<{'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SERIAL_SCCNXP policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'n'}> +CONFIG_SERIAL_SCCNXP_CONSOLE policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_SERIAL_SC16IS7XX policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'n'}> +CONFIG_SERIAL_SC16IS7XX_I2C policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_SERIAL_SC16IS7XX_SPI policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_SERIAL_BCM63XX policy<{'armhf': 'm'}> +CONFIG_SERIAL_ALTERA_JTAGUART policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'n'}> +CONFIG_SERIAL_IFX6X60 policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n'}> +CONFIG_SERIAL_XILINX_PS_UART policy<{'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SERIAL_ARC policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'n'}> +CONFIG_SERIAL_ARC_NR_PORTS policy<{'amd64': '1', 'arm64': '1', 'armhf': '1', 'ppc64el': '1'}> +CONFIG_SERIAL_RP2 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'n'}> +CONFIG_SERIAL_RP2_NR_UARTS policy<{'amd64': '32', 'arm64': '32', 'armhf': '32', 'ppc64el': '32'}> +CONFIG_SERIAL_FSL_LPUART policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'n'}> +CONFIG_SERIAL_FSL_LINFLEXUART policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'n'}> +CONFIG_SERIAL_CONEXANT_DIGICOLOR policy<{'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SERIAL_ST_ASC policy<{'armhf': 'm'}> +CONFIG_SERIAL_MEN_Z135 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SERIAL_SPRD policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SERIAL_MVEBU_UART policy<{'arm64': 'y', 'armhf': 'y'}> +CONFIG_SERIAL_MVEBU_CONSOLE policy<{'arm64': 'y', 'armhf': 'y'}> +CONFIG_SERIAL_OWL policy<{'arm64': 'y', 'armhf': 'y'}> +CONFIG_SERIAL_OWL_CONSOLE policy<{'arm64': 'y', 'armhf': 'y'}> +CONFIG_SERIAL_RDA policy<{'armhf': 'y'}> +CONFIG_SERIAL_RDA_CONSOLE policy<{'armhf': 'y'}> +CONFIG_SERIAL_MILBEAUT_USIO policy<{'armhf': 'm'}> +CONFIG_SERIAL_MILBEAUT_USIO_PORTS policy<{'armhf': '4'}> + +# Menu: Device Drivers >> Character devices >> Enable TTY >> Serial drivers >> 8250/16550 and compatible serial support +CONFIG_SERIAL_8250 policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_SERIAL_8250_DEPRECATED_OPTIONS policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n'}> +CONFIG_SERIAL_8250_PNP policy<{'amd64': 'y', 'arm64': 'y'}> +CONFIG_SERIAL_8250_16550A_VARIANTS policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_SERIAL_8250_FINTEK policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'n', 'ppc64el': 'n'}> +CONFIG_SERIAL_8250_CONSOLE policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_SERIAL_8250_DMA policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_SERIAL_8250_PCI policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_SERIAL_8250_EXAR policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SERIAL_8250_CS policy<{'amd64': 'm'}> +CONFIG_SERIAL_8250_MEN_MCB policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SERIAL_8250_NR_UARTS policy<{'amd64': '48', 'arm64': '48', 'armhf': '48', 'ppc64el': '48'}> +CONFIG_SERIAL_8250_RUNTIME_UARTS policy<{'amd64': '32', 'arm64': '32', 'armhf': '32', 'ppc64el': '32'}> +CONFIG_SERIAL_8250_ASPEED_VUART policy<{'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SERIAL_8250_DW policy<{'amd64': 'm', 'arm64': 'y', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SERIAL_8250_EM policy<{'armhf': 'n'}> +CONFIG_SERIAL_8250_RT288X policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_SERIAL_8250_OMAP policy<{'arm64': 'm', 'armhf': 'm'}> +CONFIG_SERIAL_8250_MT6577 policy<{'arm64': 'y', 'armhf': 'y'}> +CONFIG_SERIAL_8250_UNIPHIER policy<{'armhf': 'm'}> +CONFIG_SERIAL_8250_LPSS policy<{'amd64': 'm'}> +CONFIG_SERIAL_8250_MID policy<{'amd64': 'm'}> +CONFIG_SERIAL_8250_TEGRA policy<{'armhf-generic': 'y'}> +CONFIG_SERIAL_OF_PLATFORM policy<{'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> + +# Menu: Device Drivers >> Character devices >> Enable TTY >> Serial drivers >> 8250/16550 and compatible serial support >> Extended 8250/16550 serial driver options +CONFIG_SERIAL_8250_EXTENDED policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_SERIAL_8250_SHARE_IRQ policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_SERIAL_8250_DETECT_IRQ policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n'}> +CONFIG_SERIAL_8250_RSA policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_SERIAL_8250_BCM2835AUX policy<{'arm64': 'n'}> + +# Menu: Device Drivers >> Character devices >> Enable TTY >> Serial drivers >> 8250/16550 and compatible serial support >> Extended 8250/16550 serial driver options >> Support more than 4 legacy serial ports +CONFIG_SERIAL_8250_MANY_PORTS policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> + +# Menu: Device Drivers >> Character devices >> Enable TTY >> Serial drivers >> AT91 on-chip serial port support + +# Menu: Device Drivers >> Character devices >> Enable TTY >> Serial drivers >> Altera UART support +CONFIG_SERIAL_ALTERA_UART policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'n'}> +CONFIG_SERIAL_ALTERA_UART_MAXPORTS policy<{'amd64': '4', 'arm64': '4', 'armhf': '4', 'ppc64el': '4'}> +CONFIG_SERIAL_ALTERA_UART_BAUDRATE policy<{'amd64': '115200', 'arm64': '115200', 'armhf': '115200', 'ppc64el': '115200'}> + +# Menu: Device Drivers >> Character devices >> Enable TTY >> Serial drivers >> SuperH SCI(F) serial port support +CONFIG_SERIAL_SH_SCI policy<{'arm64': 'm', 'armhf': 'm'}> +CONFIG_SERIAL_SH_SCI_NR_UARTS policy<{'arm64': '2', 'armhf': '2'}> +CONFIG_SERIAL_SH_SCI_DMA policy<{'arm64': 'y', 'armhf': 'y'}> + +# Menu: Device Drivers >> Character devices >> Enable TTY >> Serial drivers >> TMPTX39XX/49XX SIO support + +# Menu: Device Drivers >> Character devices >> Hardware Random Number Generator Core support +CONFIG_HW_RANDOM policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_HW_RANDOM_TIMERIOMEM policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'n'}> +CONFIG_HW_RANDOM_INTEL policy<{'amd64': 'm'}> +CONFIG_HW_RANDOM_AMD policy<{'amd64': 'm'}> +CONFIG_HW_RANDOM_BCM2835 policy<{'arm64': 'm'}> +CONFIG_HW_RANDOM_IPROC_RNG200 policy<{'arm64': 'm'}> +CONFIG_HW_RANDOM_VIA policy<{'amd64': 'm'}> +CONFIG_HW_RANDOM_OMAP policy<{'arm64': 'm', 'armhf': 'm'}> +CONFIG_HW_RANDOM_OMAP3_ROM policy<{'armhf-generic': 'm'}> +CONFIG_HW_RANDOM_VIRTIO policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_HW_RANDOM_PSERIES policy<{'ppc64el': 'm'}> +CONFIG_HW_RANDOM_POWERNV policy<{'ppc64el': 'm'}> +CONFIG_HW_RANDOM_HISI policy<{'arm64': 'm', 'armhf': 'm'}> +CONFIG_HW_RANDOM_HISI_V2 policy<{'arm64': 'm'}> +CONFIG_HW_RANDOM_XGENE policy<{'arm64': 'm'}> +CONFIG_HW_RANDOM_MESON policy<{'arm64': 'm', 'armhf': 'm'}> +CONFIG_HW_RANDOM_CAVIUM policy<{'arm64': 'm'}> +CONFIG_HW_RANDOM_MTK policy<{'arm64': 'm', 'armhf': 'm'}> +CONFIG_HW_RANDOM_S390 policy<{'s390x': 'm'}> +CONFIG_HW_RANDOM_EXYNOS policy<{'armhf': 'm'}> +CONFIG_HW_RANDOM_OPTEE policy<{'arm64': 'm', 'armhf': 'm'}> +CONFIG_HW_RANDOM_NPCM policy<{'armhf': 'm'}> +CONFIG_HW_RANDOM_CCTRNG policy<{'arm64': 'm', 'armhf': 'm', 'ppc64el': 'n'}> + +# Menu: Device Drivers >> Character devices >> IPMI top-level message handler +CONFIG_IPMI_HANDLER policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'n'}> +CONFIG_IPMI_PANIC_EVENT policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n'}> +CONFIG_IPMI_DEVICE_INTERFACE policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_IPMI_SI policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_IPMI_SSIF policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_IPMI_POWERNV policy<{'ppc64el': 'm'}> +CONFIG_IPMI_WATCHDOG policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_IPMI_POWEROFF policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> + +# Menu: Device Drivers >> Character devices >> PCMCIA character devices +CONFIG_SYNCLINK_CS policy<{'amd64': 'm'}> +CONFIG_CARDMAN_4000 policy<{'amd64': 'm'}> +CONFIG_CARDMAN_4040 policy<{'amd64': 'm'}> +CONFIG_SCR24X policy<{'amd64': 'm'}> +CONFIG_IPWIRELESS policy<{'amd64': 'm'}> + +# Menu: Device Drivers >> Character devices >> Serial device bus +CONFIG_SERIAL_DEV_BUS policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_SERIAL_DEV_CTRL_TTYPORT policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +# +CONFIG_SERIAL_DEV_BUS note +CONFIG_SERIAL_DEV_CTRL_TTYPORT note + +# Menu: Device Drivers >> Character devices >> TPM Hardware Support +CONFIG_TCG_TPM policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_HW_RANDOM_TPM policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_TCG_TIS policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_TCG_TIS_SPI policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_TCG_TIS_SPI_CR50 policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_TCG_TIS_I2C_ATMEL policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'y', 's390x': 'n'}> +CONFIG_TCG_TIS_I2C_INFINEON policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'y', 's390x': 'n'}> +CONFIG_TCG_TIS_I2C_NUVOTON policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'y', 's390x': 'n'}> +CONFIG_TCG_NSC policy<{'amd64': 'm'}> +CONFIG_TCG_ATMEL policy<{'amd64': 'm', 'arm64': 'm', 'ppc64el': 'm'}> +CONFIG_TCG_INFINEON policy<{'amd64': 'm', 'arm64': 'm'}> +CONFIG_TCG_IBMVTPM policy<{'ppc64el': 'y'}> +CONFIG_TCG_XEN policy<{'amd64': 'm', 'arm64': 'm'}> +CONFIG_TCG_CRB policy<{'amd64': 'y', 'arm64': 'y'}> +CONFIG_TCG_VTPM_PROXY policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_TCG_FTPM_TEE policy<{'arm64': 'm', 'armhf': 'm'}> +CONFIG_TCG_TIS_ST33ZP24_I2C policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'n'}> +CONFIG_TCG_TIS_ST33ZP24_SPI policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +# +CONFIG_TCG_TPM note +CONFIG_TCG_TIS_I2C_ATMEL note +CONFIG_TCG_TIS_I2C_INFINEON note +CONFIG_TCG_TIS_I2C_NUVOTON note + +# Menu: Device Drivers >> Clock Source drivers +CONFIG_DW_APB_TIMER policy<{'arm64': 'y', 'armhf': 'y'}> +CONFIG_ROCKCHIP_TIMER policy<{'arm64': 'y', 'armhf': 'y'}> +CONFIG_ARMADA_370_XP_TIMER policy<{'armhf': 'y'}> +CONFIG_MESON6_TIMER policy<{'armhf': 'y'}> +CONFIG_ORION_TIMER policy<{'armhf': 'y'}> +CONFIG_OWL_TIMER policy<{'arm64': 'y', 'armhf': 'y'}> +CONFIG_RDA_TIMER policy<{'armhf': 'y'}> +CONFIG_TEGRA_TIMER policy<{'armhf-generic': 'y'}> +CONFIG_NPCM7XX_TIMER policy<{'armhf': 'y'}> +CONFIG_CLKSRC_TI_32K policy<{'armhf': 'y'}> +CONFIG_ARM_ARCH_TIMER_EVTSTREAM policy<{'arm64': 'y', 'armhf': 'y'}> +CONFIG_FSL_ERRATUM_A008585 policy<{'arm64': 'y'}> +CONFIG_HISILICON_ERRATUM_161010101 policy<{'arm64': 'y'}> +CONFIG_ARM64_ERRATUM_858921 policy<{'arm64': 'y'}> +CONFIG_SUN50I_ERRATUM_UNKNOWN1 policy<{'arm64': 'y'}> +CONFIG_ARM_GLOBAL_TIMER policy<{'armhf': 'y'}> +CONFIG_ARM_TIMER_SP804 policy<{'arm64': 'y', 'armhf': 'y'}> +CONFIG_CLKSRC_EXYNOS_MCT policy<{'armhf': 'y'}> +CONFIG_MTK_TIMER policy<{'arm64': 'y', 'armhf': 'y'}> +CONFIG_SPRD_TIMER policy<{'arm64': 'y'}> +CONFIG_SH_TIMER_CMT policy<{'arm64': 'y', 'armhf': 'y'}> +CONFIG_SH_TIMER_MTU2 policy<{'armhf': 'y'}> +CONFIG_RENESAS_OSTM policy<{'armhf': 'y'}> +CONFIG_SH_TIMER_TMU policy<{'arm64': 'y', 'armhf': 'y'}> +CONFIG_EM_TIMER_STI policy<{'armhf': 'y'}> +CONFIG_CLKSRC_QCOM policy<{'armhf': 'y'}> +CONFIG_CLKSRC_VERSATILE policy<{'armhf': 'y'}> +CONFIG_CLKSRC_IMX_GPT policy<{'armhf-generic': 'y'}> +CONFIG_CLKSRC_IMX_TPM policy<{'armhf-generic': 'y'}> +CONFIG_TIMER_IMX_SYS_CTR policy<{'arm64': 'y'}> +CONFIG_MILBEAUT_TIMER policy<{'armhf': 'y'}> +CONFIG_MICROCHIP_PIT64B policy<{'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +# +CONFIG_ARM64_ERRATUM_858921 mark note + +# Menu: Device Drivers >> Common Clock Framework +CONFIG_COMMON_CLK policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'n'}> +CONFIG_COMMON_CLK_WM831X policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_CLK_HSDK policy<{'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n'}> +CONFIG_COMMON_CLK_MAX77686 policy<{'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_COMMON_CLK_MAX9485 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_COMMON_CLK_RK808 policy<{'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_COMMON_CLK_HI655X policy<{'arm64': 'm', 'armhf': 'm'}> +CONFIG_COMMON_CLK_SCMI policy<{'arm64': 'm', 'armhf': 'm'}> +CONFIG_COMMON_CLK_SCPI policy<{'arm64': 'm', 'armhf': 'm'}> +CONFIG_COMMON_CLK_SI5341 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_COMMON_CLK_SI5351 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_COMMON_CLK_SI514 policy<{'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_COMMON_CLK_SI544 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_COMMON_CLK_SI570 policy<{'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_COMMON_CLK_BM1880 policy<{'arm64': 'y'}> +CONFIG_COMMON_CLK_CDCE706 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_COMMON_CLK_CDCE925 policy<{'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_COMMON_CLK_CS2000_CP policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_COMMON_CLK_FSL_SAI policy<{'arm64': 'y'}> +CONFIG_COMMON_CLK_ASPEED policy<{'armhf': 'y'}> +CONFIG_COMMON_CLK_S2MPS11 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_CLK_TWL6040 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_CLK_QORIQ policy<{'arm64': 'y', 'armhf': 'y'}> +CONFIG_CLK_LS1028A_PLLDIG policy<{'arm64': 'm'}> +CONFIG_COMMON_CLK_XGENE policy<{'arm64': 'y'}> +CONFIG_COMMON_CLK_LOCHNAGAR policy<{'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_COMMON_CLK_PALMAS policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_COMMON_CLK_PWM policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_COMMON_CLK_VC5 policy<{'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_COMMON_CLK_BD718XX policy<{'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_COMMON_CLK_FIXED_MMIO policy<{'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_CLK_BCM2835 policy<{'arm64': 'y'}> +CONFIG_CLK_BCM_NS2 policy<{'arm64': 'y'}> +CONFIG_CLK_BCM_SR policy<{'arm64': 'y'}> +CONFIG_CLK_RASPBERRYPI policy<{'arm64': 'm'}> +CONFIG_COMMON_CLK_HI3516CV300 policy<{'arm64': 'm', 'armhf': 'm'}> +CONFIG_COMMON_CLK_HI3519 policy<{'arm64': 'm', 'armhf': 'm'}> +CONFIG_COMMON_CLK_HI3660 policy<{'arm64': 'y', 'armhf': 'y'}> +CONFIG_COMMON_CLK_HI3670 policy<{'arm64': 'y', 'armhf': 'y'}> +CONFIG_COMMON_CLK_HI3798CV200 policy<{'arm64': 'm', 'armhf': 'm'}> +CONFIG_COMMON_CLK_HI6220 policy<{'arm64': 'y', 'armhf': 'y'}> +CONFIG_RESET_HISI policy<{'arm64': 'y', 'armhf': 'y'}> +CONFIG_STUB_CLK_HI6220 policy<{'arm64': 'y', 'armhf': 'y'}> +CONFIG_STUB_CLK_HI3660 policy<{'arm64': 'y', 'armhf': 'y'}> +CONFIG_CLK_IMX8MM policy<{'arm64': 'y', 'armhf-generic': 'y'}> +CONFIG_CLK_IMX8MN policy<{'arm64': 'y', 'armhf-generic': 'y'}> +CONFIG_CLK_IMX8MP policy<{'arm64': 'y', 'armhf-generic': 'y'}> +CONFIG_CLK_IMX8MQ policy<{'arm64': 'y', 'armhf-generic': 'y'}> +CONFIG_CLK_IMX8QXP policy<{'arm64': 'y'}> +CONFIG_TI_SCI_CLK policy<{'arm64': 'm'}> +CONFIG_TI_SCI_CLK_PROBE_FROM_FW policy<{'arm64': 'n'}> +CONFIG_TI_SYSCON_CLK policy<{'arm64': 'y'}> +CONFIG_COMMON_CLK_AXG_AUDIO policy<{'arm64': 'm', 'armhf': 'm'}> +CONFIG_COMMON_CLK_SAMSUNG policy<{'armhf': 'y'}> +CONFIG_EXYNOS_AUDSS_CLK_CON policy<{'armhf': 'm'}> +CONFIG_SPRD_COMMON_CLK policy<{'arm64': 'm'}> +CONFIG_SPRD_SC9860_CLK policy<{'arm64': 'm'}> +CONFIG_SPRD_SC9863A_CLK policy<{'arm64': 'm'}> +CONFIG_COMMON_CLK_TI_ADPLL policy<{'armhf': 'y'}> +CONFIG_CLK_UNIPHIER policy<{'armhf': 'y'}> +CONFIG_COMMON_CLK_ZYNQMP policy<{'arm64': 'y'}> + +# Menu: Device Drivers >> Common Clock Framework >> Clock driver for ARM Reference designs +CONFIG_ICST policy<{'arm64': 'y', 'armhf': 'y'}> +CONFIG_CLK_SP810 policy<{'arm64': 'y', 'armhf': 'y'}> +CONFIG_CLK_VEXPRESS_OSC policy<{'arm64': 'y', 'armhf': 'y'}> + +# Menu: Device Drivers >> Common Clock Framework >> Clock driver for Actions Semi SoCs +CONFIG_CLK_ACTIONS policy<{'arm64': 'y', 'armhf': 'y'}> +CONFIG_CLK_OWL_S500 policy<{'arm64': 'y', 'armhf': 'y'}> +CONFIG_CLK_OWL_S700 policy<{'arm64': 'y'}> +CONFIG_CLK_OWL_S900 policy<{'arm64': 'y'}> + +# Menu: Device Drivers >> Common Clock Framework >> Clock driver for MediaTek SoC +CONFIG_COMMON_CLK_MT7629 policy<{'armhf': 'y'}> +CONFIG_COMMON_CLK_MT7629_ETHSYS policy<{'armhf': 'y'}> +CONFIG_COMMON_CLK_MT7629_HIFSYS policy<{'armhf': 'y'}> +CONFIG_COMMON_CLK_MT8135 policy<{'armhf': 'y'}> +CONFIG_COMMON_CLK_MT8173 policy<{'arm64': 'y', 'armhf': 'y'}> +CONFIG_COMMON_CLK_MT8173_MMSYS policy<{'arm64': 'y', 'armhf': 'y'}> +CONFIG_COMMON_CLK_MT8516 policy<{'arm64': 'y', 'armhf': 'y'}> +CONFIG_COMMON_CLK_MT8516_AUDSYS policy<{'arm64': 'y', 'armhf': 'y'}> + +# Menu: Device Drivers >> Common Clock Framework >> Clock driver for MediaTek SoC >> Clock driver for MediaTek MT2701 +CONFIG_COMMON_CLK_MT2701 policy<{'armhf': 'n'}> + +# Menu: Device Drivers >> Common Clock Framework >> Clock driver for MediaTek SoC >> Clock driver for MediaTek MT2712 +CONFIG_COMMON_CLK_MT2712 policy<{'arm64': 'y'}> +CONFIG_COMMON_CLK_MT2712_BDPSYS policy<{'arm64': 'y'}> +CONFIG_COMMON_CLK_MT2712_IMGSYS policy<{'arm64': 'y'}> +CONFIG_COMMON_CLK_MT2712_JPGDECSYS policy<{'arm64': 'y'}> +CONFIG_COMMON_CLK_MT2712_MFGCFG policy<{'arm64': 'y'}> +CONFIG_COMMON_CLK_MT2712_MMSYS policy<{'arm64': 'y'}> +CONFIG_COMMON_CLK_MT2712_VDECSYS policy<{'arm64': 'y'}> +CONFIG_COMMON_CLK_MT2712_VENCSYS policy<{'arm64': 'y'}> + +# Menu: Device Drivers >> Common Clock Framework >> Clock driver for MediaTek SoC >> Clock driver for MediaTek MT6765 +CONFIG_COMMON_CLK_MT6765 policy<{'arm64': 'y'}> +CONFIG_COMMON_CLK_MT6765_AUDIOSYS policy<{'arm64': 'y'}> +CONFIG_COMMON_CLK_MT6765_CAMSYS policy<{'arm64': 'y'}> +CONFIG_COMMON_CLK_MT6765_GCESYS policy<{'arm64': 'y'}> +CONFIG_COMMON_CLK_MT6765_MMSYS policy<{'arm64': 'y'}> +CONFIG_COMMON_CLK_MT6765_IMGSYS policy<{'arm64': 'y'}> +CONFIG_COMMON_CLK_MT6765_VCODECSYS policy<{'arm64': 'y'}> +CONFIG_COMMON_CLK_MT6765_MFGSYS policy<{'arm64': 'y'}> +CONFIG_COMMON_CLK_MT6765_MIPI0ASYS policy<{'arm64': 'y'}> +CONFIG_COMMON_CLK_MT6765_MIPI0BSYS policy<{'arm64': 'y'}> +CONFIG_COMMON_CLK_MT6765_MIPI1ASYS policy<{'arm64': 'y'}> +CONFIG_COMMON_CLK_MT6765_MIPI1BSYS policy<{'arm64': 'y'}> +CONFIG_COMMON_CLK_MT6765_MIPI2ASYS policy<{'arm64': 'y'}> +CONFIG_COMMON_CLK_MT6765_MIPI2BSYS policy<{'arm64': 'y'}> + +# Menu: Device Drivers >> Common Clock Framework >> Clock driver for MediaTek SoC >> Clock driver for MediaTek MT6779 +CONFIG_COMMON_CLK_MT6779 policy<{'arm64': 'y'}> +CONFIG_COMMON_CLK_MT6779_MMSYS policy<{'arm64': 'y'}> +CONFIG_COMMON_CLK_MT6779_IMGSYS policy<{'arm64': 'y'}> +CONFIG_COMMON_CLK_MT6779_IPESYS policy<{'arm64': 'y'}> +CONFIG_COMMON_CLK_MT6779_CAMSYS policy<{'arm64': 'y'}> +CONFIG_COMMON_CLK_MT6779_VDECSYS policy<{'arm64': 'y'}> +CONFIG_COMMON_CLK_MT6779_VENCSYS policy<{'arm64': 'y'}> +CONFIG_COMMON_CLK_MT6779_MFGCFG policy<{'arm64': 'y'}> +CONFIG_COMMON_CLK_MT6779_AUDSYS policy<{'arm64': 'y'}> + +# Menu: Device Drivers >> Common Clock Framework >> Clock driver for MediaTek SoC >> Clock driver for MediaTek MT6797 +CONFIG_COMMON_CLK_MT6797 policy<{'arm64': 'y'}> +CONFIG_COMMON_CLK_MT6797_MMSYS policy<{'arm64': 'y'}> +CONFIG_COMMON_CLK_MT6797_IMGSYS policy<{'arm64': 'y'}> +CONFIG_COMMON_CLK_MT6797_VDECSYS policy<{'arm64': 'y'}> +CONFIG_COMMON_CLK_MT6797_VENCSYS policy<{'arm64': 'y'}> + +# Menu: Device Drivers >> Common Clock Framework >> Clock driver for MediaTek SoC >> Clock driver for MediaTek MT7622 +CONFIG_COMMON_CLK_MT7622 policy<{'arm64': 'y', 'armhf': 'y'}> +CONFIG_COMMON_CLK_MT7622_ETHSYS policy<{'arm64': 'y', 'armhf': 'y'}> +CONFIG_COMMON_CLK_MT7622_HIFSYS policy<{'arm64': 'y', 'armhf': 'y'}> +CONFIG_COMMON_CLK_MT7622_AUDSYS policy<{'arm64': 'y', 'armhf': 'y'}> + +# Menu: Device Drivers >> Common Clock Framework >> Clock driver for MediaTek SoC >> Clock driver for MediaTek MT8183 +CONFIG_COMMON_CLK_MT8183 policy<{'arm64': 'y'}> +CONFIG_COMMON_CLK_MT8183_AUDIOSYS policy<{'arm64': 'y'}> +CONFIG_COMMON_CLK_MT8183_CAMSYS policy<{'arm64': 'y'}> +CONFIG_COMMON_CLK_MT8183_IMGSYS policy<{'arm64': 'y'}> +CONFIG_COMMON_CLK_MT8183_IPU_CORE0 policy<{'arm64': 'y'}> +CONFIG_COMMON_CLK_MT8183_IPU_CORE1 policy<{'arm64': 'y'}> +CONFIG_COMMON_CLK_MT8183_IPU_ADL policy<{'arm64': 'y'}> +CONFIG_COMMON_CLK_MT8183_IPU_CONN policy<{'arm64': 'y'}> +CONFIG_COMMON_CLK_MT8183_MFGCFG policy<{'arm64': 'y'}> +CONFIG_COMMON_CLK_MT8183_MMSYS policy<{'arm64': 'y'}> +CONFIG_COMMON_CLK_MT8183_VDECSYS policy<{'arm64': 'y'}> +CONFIG_COMMON_CLK_MT8183_VENCSYS policy<{'arm64': 'y'}> + +# Menu: Device Drivers >> Common Clock Framework >> Clock support for Allwinner SoCs +CONFIG_SUNXI_CCU policy<{'arm64': 'y'}> +CONFIG_SUN50I_A64_CCU policy<{'arm64': 'y'}> +CONFIG_SUN50I_H6_CCU policy<{'arm64': 'y'}> +CONFIG_SUN50I_H6_R_CCU policy<{'arm64': 'y'}> +CONFIG_SUN8I_A83T_CCU policy<{'arm64': 'y'}> +CONFIG_SUN8I_H3_CCU policy<{'arm64': 'y'}> +CONFIG_SUN8I_DE2_CCU policy<{'arm64': 'y'}> +CONFIG_SUN8I_R_CCU policy<{'arm64': 'y'}> + +# Menu: Device Drivers >> Common Clock Framework >> Ingenic SoCs drivers + +# Menu: Device Drivers >> Common Clock Framework >> Legacy clock support for Allwinner SoCs +CONFIG_CLK_SUNXI policy<{'arm64': 'y'}> +CONFIG_CLK_SUNXI_CLOCKS policy<{'arm64': 'y'}> +CONFIG_CLK_SUNXI_PRCM_SUN6I policy<{'arm64': 'y'}> +CONFIG_CLK_SUNXI_PRCM_SUN8I policy<{'arm64': 'y'}> +CONFIG_CLK_SUNXI_PRCM_SUN9I policy<{'arm64': 'y'}> + +# Menu: Device Drivers >> Common Clock Framework >> Renesas SoC clock support +CONFIG_CLK_RENESAS policy<{'arm64': 'y', 'armhf': 'y'}> +CONFIG_CLK_EMEV2 policy<{'armhf': 'y'}> +CONFIG_CLK_RZA1 policy<{'armhf': 'y'}> +CONFIG_CLK_R7S9210 policy<{'armhf': 'y'}> +CONFIG_CLK_R8A7740 policy<{'armhf': 'y'}> +CONFIG_CLK_R8A7742 policy<{'armhf': 'y'}> +CONFIG_CLK_R8A7743 policy<{'armhf': 'y'}> +CONFIG_CLK_R8A7745 policy<{'armhf': 'y'}> +CONFIG_CLK_R8A77470 policy<{'armhf': 'y'}> +CONFIG_CLK_R8A774A1 policy<{'arm64': 'y'}> +CONFIG_CLK_R8A774B1 policy<{'arm64': 'y'}> +CONFIG_CLK_R8A774C0 policy<{'arm64': 'y'}> +CONFIG_CLK_R8A7778 policy<{'armhf': 'y'}> +CONFIG_CLK_R8A7779 policy<{'armhf': 'y'}> +CONFIG_CLK_R8A7790 policy<{'armhf': 'y'}> +CONFIG_CLK_R8A7791 policy<{'armhf': 'y'}> +CONFIG_CLK_R8A7792 policy<{'armhf': 'y'}> +CONFIG_CLK_R8A7794 policy<{'armhf': 'y'}> +CONFIG_CLK_R8A7795 policy<{'arm64': 'y'}> +CONFIG_CLK_R8A77960 policy<{'arm64': 'y'}> +CONFIG_CLK_R8A77961 policy<{'arm64': 'y'}> +CONFIG_CLK_R8A77965 policy<{'arm64': 'y'}> +CONFIG_CLK_R8A77970 policy<{'arm64': 'y'}> +CONFIG_CLK_R8A77980 policy<{'arm64': 'y'}> +CONFIG_CLK_R8A77990 policy<{'arm64': 'y'}> +CONFIG_CLK_R8A77995 policy<{'arm64': 'y'}> +CONFIG_CLK_R9A06G032 policy<{'arm64': 'y', 'armhf': 'y'}> +CONFIG_CLK_SH73A0 policy<{'armhf': 'y'}> +CONFIG_CLK_RCAR_GEN2_CPG policy<{'armhf': 'y'}> +CONFIG_CLK_RCAR_GEN3_CPG policy<{'arm64': 'y'}> +CONFIG_CLK_RCAR_USB2_CLOCK_SEL policy<{'arm64': 'y', 'armhf': 'y'}> +CONFIG_CLK_RENESAS_CPG_MSSR policy<{'arm64': 'y', 'armhf': 'y'}> +CONFIG_CLK_RENESAS_CPG_MSTP policy<{'armhf': 'y'}> +CONFIG_CLK_RENESAS_DIV6 policy<{'arm64': 'y', 'armhf': 'y'}> + +# Menu: Device Drivers >> Common Clock Framework >> SiFive SoC driver support + +# Menu: Device Drivers >> Common Clock Framework >> Support for Qualcomm's clock controllers +CONFIG_COMMON_CLK_QCOM policy<{'arm64': 'm', 'armhf': 'm'}> +CONFIG_QCOM_A53PLL policy<{'arm64': 'm', 'armhf': 'm'}> +CONFIG_QCOM_CLK_APCS_MSM8916 policy<{'arm64': 'm', 'armhf': 'm'}> +CONFIG_QCOM_CLK_RPM policy<{'arm64': 'm', 'armhf': 'm'}> +CONFIG_QCOM_CLK_SMD_RPM policy<{'arm64': 'm', 'armhf': 'm'}> +CONFIG_QCOM_CLK_RPMH policy<{'arm64': 'm'}> +CONFIG_APQ_GCC_8084 policy<{'arm64': 'm', 'armhf': 'm'}> +CONFIG_APQ_MMCC_8084 policy<{'arm64': 'm', 'armhf': 'm'}> +CONFIG_IPQ_GCC_4019 policy<{'arm64': 'm', 'armhf': 'm'}> +CONFIG_IPQ_GCC_6018 policy<{'arm64': 'm', 'armhf': 'm'}> +CONFIG_IPQ_GCC_806X policy<{'arm64': 'm', 'armhf': 'm'}> +CONFIG_IPQ_LCC_806X policy<{'arm64': 'm', 'armhf': 'm'}> +CONFIG_IPQ_GCC_8074 policy<{'arm64': 'm', 'armhf': 'm'}> +CONFIG_MSM_GCC_8660 policy<{'arm64': 'm', 'armhf': 'm'}> +CONFIG_MSM_GCC_8916 policy<{'arm64': 'm', 'armhf': 'm'}> +CONFIG_MSM_GCC_8939 policy<{'arm64': 'm', 'armhf': 'm'}> +CONFIG_MSM_GCC_8960 policy<{'arm64': 'm', 'armhf': 'm'}> +CONFIG_MSM_LCC_8960 policy<{'arm64': 'm', 'armhf': 'm'}> +CONFIG_MDM_GCC_9615 policy<{'arm64': 'm', 'armhf': 'm'}> +CONFIG_MDM_LCC_9615 policy<{'arm64': 'm', 'armhf': 'm'}> +CONFIG_MSM_MMCC_8960 policy<{'arm64': 'm', 'armhf': 'm'}> +CONFIG_MSM_GCC_8974 policy<{'arm64': 'm', 'armhf': 'm'}> +CONFIG_MSM_MMCC_8974 policy<{'arm64': 'm', 'armhf': 'm'}> +CONFIG_MSM_GCC_8994 policy<{'arm64': 'm', 'armhf': 'm'}> +CONFIG_MSM_GCC_8996 policy<{'arm64': 'm', 'armhf': 'm'}> +CONFIG_MSM_MMCC_8996 policy<{'arm64': 'm', 'armhf': 'm'}> +CONFIG_MSM_GCC_8998 policy<{'arm64': 'm', 'armhf': 'm'}> +CONFIG_MSM_GPUCC_8998 policy<{'arm64': 'm', 'armhf': 'm'}> +CONFIG_MSM_MMCC_8998 policy<{'arm64': 'm', 'armhf': 'm'}> +CONFIG_QCS_GCC_404 policy<{'arm64': 'm', 'armhf': 'm'}> +CONFIG_SC_DISPCC_7180 policy<{'arm64': 'm', 'armhf': 'm'}> +CONFIG_SC_GCC_7180 policy<{'arm64': 'm', 'armhf': 'm'}> +CONFIG_SC_GPUCC_7180 policy<{'arm64': 'm', 'armhf': 'm'}> +CONFIG_SC_MSS_7180 policy<{'arm64': 'm', 'armhf': 'm'}> +CONFIG_SC_VIDEOCC_7180 policy<{'arm64': 'm', 'armhf': 'm'}> +CONFIG_SDM_CAMCC_845 policy<{'arm64': 'm', 'armhf': 'm'}> +CONFIG_SDM_GCC_660 policy<{'arm64': 'm', 'armhf': 'm'}> +CONFIG_QCS_TURING_404 policy<{'arm64': 'm', 'armhf': 'm'}> +CONFIG_QCS_Q6SSTOP_404 policy<{'arm64': 'm', 'armhf': 'm'}> +CONFIG_SDM_GCC_845 policy<{'arm64': 'm', 'armhf': 'm'}> +CONFIG_SDM_GPUCC_845 policy<{'arm64': 'm', 'armhf': 'm'}> +CONFIG_SDM_VIDEOCC_845 policy<{'arm64': 'm', 'armhf': 'm'}> +CONFIG_SDM_DISPCC_845 policy<{'arm64': 'm', 'armhf': 'm'}> +CONFIG_SDM_LPASSCC_845 policy<{'arm64': 'm', 'armhf': 'm'}> +CONFIG_SM_GCC_8150 policy<{'arm64': 'm', 'armhf': 'm'}> +CONFIG_SM_GCC_8250 policy<{'arm64': 'm', 'armhf': 'm'}> +CONFIG_SPMI_PMIC_CLKDIV policy<{'arm64': 'm', 'armhf': 'm'}> +CONFIG_QCOM_HFPLL policy<{'arm64': 'm', 'armhf': 'm'}> +CONFIG_KPSS_XCC policy<{'arm64': 'm', 'armhf': 'm'}> +CONFIG_KRAITCC policy<{'armhf': 'm'}> + +# Menu: Device Drivers >> Connector - unified userspace <-> kernelspace linker +CONFIG_CONNECTOR policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_PROC_EVENTS policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> + +# Menu: Device Drivers >> Counter support +CONFIG_COUNTER policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'n'}> +CONFIG_104_QUAD_8 policy<{'amd64': 'm'}> +CONFIG_TI_EQEP policy<{'armhf-generic': 'm'}> +CONFIG_FTM_QUADDEC policy<{'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> + +# Menu: Device Drivers >> DAX: direct access to differentiated memory +CONFIG_DAX policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_DEV_DAX policy<{'amd64': 'm', 'arm64': 'm', 'armhf-generic-lpae': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_DEV_DAX_PMEM policy<{'amd64': 'm', 'arm64': 'm', 'ppc64el': 'm'}> +CONFIG_DEV_DAX_HMEM policy<{'amd64': 'm', 'arm64': 'm'}> +CONFIG_DEV_DAX_KMEM policy<{'amd64': 'm', 'arm64': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_DEV_DAX_PMEM_COMPAT policy<{'amd64': 'm', 'arm64': 'm', 'ppc64el': 'm'}> + +# Menu: Device Drivers >> DMA Engine support +CONFIG_DMADEVICES policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'n'}> +CONFIG_DMADEVICES_DEBUG policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n'}> +CONFIG_ALTERA_MSGDMA policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_AMBA_PL08X policy<{'arm64': 'y', 'armhf': 'y'}> +CONFIG_AXI_DMAC policy<{'arm64': 'm'}> +CONFIG_BCM_SBA_RAID policy<{'arm64': 'm'}> +CONFIG_DMA_BCM2835 policy<{'arm64': 'y'}> +CONFIG_DMA_SUN6I policy<{'arm64': 'm'}> +CONFIG_DW_AXI_DMAC policy<{'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_FSL_EDMA policy<{'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_FSL_QDMA policy<{'arm64': 'm', 'armhf': 'm'}> +CONFIG_HISI_DMA policy<{'arm64': 'm'}> +CONFIG_IMX_DMA policy<{'arm64': 'm', 'armhf-generic': 'm'}> +CONFIG_IMX_SDMA policy<{'arm64': 'm', 'armhf-generic': 'm'}> +CONFIG_INTEL_IDMA64 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_INTEL_IDXD policy<{'amd64': 'm'}> +CONFIG_INTEL_IOATDMA policy<{'amd64': 'm'}> +CONFIG_INTEL_MIC_X100_DMA policy<{'amd64': 'm'}> +CONFIG_K3_DMA policy<{'arm64': 'm', 'armhf': 'm'}> +CONFIG_MILBEAUT_HDMAC policy<{'armhf': 'm'}> +CONFIG_MILBEAUT_XDMAC policy<{'armhf': 'm'}> +CONFIG_MV_XOR policy<{'arm64': 'y', 'armhf': 'y'}> +CONFIG_MV_XOR_V2 policy<{'arm64': 'y'}> +CONFIG_MXS_DMA policy<{'arm64': 'y', 'armhf-generic': 'y'}> +CONFIG_MX3_IPU policy<{'arm64': 'y', 'armhf-generic': 'y'}> +CONFIG_MX3_IPU_IRQS policy<{'arm64': '4', 'armhf-generic': '4'}> +CONFIG_NBPFAXI_DMA policy<{'armhf': 'm'}> +CONFIG_OWL_DMA policy<{'arm64': 'm', 'armhf': 'm'}> +CONFIG_PL330_DMA policy<{'arm64': 'm', 'armhf': 'm'}> +CONFIG_PLX_DMA policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SPRD_DMA policy<{'arm64': 'm'}> +CONFIG_TEGRA20_APB_DMA policy<{'armhf-generic': 'y'}> +CONFIG_UNIPHIER_MDMAC policy<{'armhf': 'm'}> +CONFIG_UNIPHIER_XDMAC policy<{'armhf': 'm'}> +CONFIG_XGENE_DMA policy<{'arm64': 'm'}> +CONFIG_XILINX_DMA policy<{'arm64': 'm'}> +CONFIG_XILINX_ZYNQMP_DMA policy<{'arm64': 'm'}> +CONFIG_MTK_HSDMA policy<{'arm64': 'm', 'armhf': 'm'}> +CONFIG_MTK_CQDMA policy<{'arm64': 'm', 'armhf': 'm'}> +CONFIG_MTK_UART_APDMA policy<{'arm64': 'm', 'armhf': 'm'}> +CONFIG_QCOM_BAM_DMA policy<{'arm64': 'm', 'armhf': 'm'}> +CONFIG_QCOM_HIDMA_MGMT policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_QCOM_HIDMA policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_DW_DMAC policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_DW_DMAC_PCI policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_DW_EDMA policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_DW_EDMA_PCIE policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SF_PDMA policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_RCAR_DMAC policy<{'arm64': 'm', 'armhf': 'm'}> +CONFIG_RENESAS_USB_DMAC policy<{'arm64': 'm', 'armhf': 'm'}> +CONFIG_TI_CPPI41 policy<{'armhf': 'm'}> +CONFIG_TI_EDMA policy<{'armhf': 'y'}> +CONFIG_DMA_OMAP policy<{'armhf': 'y'}> +CONFIG_TI_K3_UDMA policy<{'arm64': 'y'}> +CONFIG_TI_K3_UDMA_GLUE_LAYER policy<{'arm64': 'y'}> +CONFIG_FSL_DPAA2_QDMA policy<{'arm64': 'm'}> +CONFIG_ASYNC_TX_DMA policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_DMATEST policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n'}> +# +CONFIG_DMATEST flag + +# Menu: Device Drivers >> DMABUF options +CONFIG_SYNC_FILE policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_SW_SYNC policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_UDMABUF policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_DMABUF_MOVE_NOTIFY policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n', 's390x': 'n'}> +CONFIG_DMABUF_SELFTESTS policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n', 's390x': 'n'}> + +# Menu: Device Drivers >> DMABUF options >> DMA-BUF Userland Memory Heaps +CONFIG_DMABUF_HEAPS policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_DMABUF_HEAPS_SYSTEM policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_DMABUF_HEAPS_CMA policy<{'arm64': 'y', 'armhf': 'y'}> + +# Menu: Device Drivers >> Dallas's 1-wire support +CONFIG_W1 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'n'}> +CONFIG_W1_CON policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> + +# Menu: Device Drivers >> Dallas's 1-wire support >> 1-wire Bus Masters +CONFIG_W1_MASTER_MATROX policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_W1_MASTER_DS2490 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_W1_MASTER_DS2482 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_W1_MASTER_MXC policy<{'arm64': 'm', 'armhf-generic': 'm'}> +CONFIG_W1_MASTER_DS1WM policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_W1_MASTER_GPIO policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_HDQ_MASTER_OMAP policy<{'armhf': 'm'}> +CONFIG_W1_MASTER_SGI policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> + +# Menu: Device Drivers >> Dallas's 1-wire support >> 1-wire Slaves +CONFIG_W1_SLAVE_THERM policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_W1_SLAVE_SMEM policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_W1_SLAVE_DS2405 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_W1_SLAVE_DS2408 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_W1_SLAVE_DS2408_READBACK policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_W1_SLAVE_DS2413 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_W1_SLAVE_DS2406 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_W1_SLAVE_DS2423 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_W1_SLAVE_DS2805 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_W1_SLAVE_DS2430 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_W1_SLAVE_DS2431 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_W1_SLAVE_DS2433 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_W1_SLAVE_DS2433_CRC policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n'}> +CONFIG_W1_SLAVE_DS2438 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_W1_SLAVE_DS250X policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_W1_SLAVE_DS2780 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_W1_SLAVE_DS2781 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_W1_SLAVE_DS28E04 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_W1_SLAVE_DS28E17 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> + +# Menu: Device Drivers >> Device Tree and Open Firmware support +CONFIG_OF policy<{'amd64': 'n', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'n'}> +CONFIG_OF_UNITTEST policy<{'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n'}> +CONFIG_OF_DYNAMIC policy<{'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_OF_OVERLAY policy<{'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +# +CONFIG_OF_UNITTEST flag + +# Menu: Device Drivers >> EDAC (Error Detection And Correction) reporting +CONFIG_EDAC policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_EDAC_LEGACY_SYSFS policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n'}> +CONFIG_EDAC_DEBUG policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n'}> +CONFIG_EDAC_DECODE_MCE policy<{'amd64': 'm'}> +CONFIG_EDAC_GHES policy<{'amd64': 'y', 'arm64': 'y'}> +CONFIG_EDAC_AMD64 policy<{'amd64': 'm'}> +CONFIG_EDAC_AMD64_ERROR_INJECTION policy<{'amd64': 'n'}> +CONFIG_EDAC_E752X policy<{'amd64': 'm'}> +CONFIG_EDAC_I82975X policy<{'amd64': 'm'}> +CONFIG_EDAC_I3000 policy<{'amd64': 'm'}> +CONFIG_EDAC_I3200 policy<{'amd64': 'm'}> +CONFIG_EDAC_IE31200 policy<{'amd64': 'm'}> +CONFIG_EDAC_X38 policy<{'amd64': 'm'}> +CONFIG_EDAC_I5400 policy<{'amd64': 'm'}> +CONFIG_EDAC_I7CORE policy<{'amd64': 'm'}> +CONFIG_EDAC_I5000 policy<{'amd64': 'm'}> +CONFIG_EDAC_I5100 policy<{'amd64': 'm'}> +CONFIG_EDAC_I7300 policy<{'amd64': 'm'}> +CONFIG_EDAC_SBRIDGE policy<{'amd64': 'm'}> +CONFIG_EDAC_SKX policy<{'amd64': 'm'}> +CONFIG_EDAC_I10NM policy<{'amd64': 'm'}> +CONFIG_EDAC_PND2 policy<{'amd64': 'm'}> +CONFIG_EDAC_LAYERSCAPE policy<{'arm64': 'm'}> +CONFIG_EDAC_CPC925 policy<{'ppc64el': 'm'}> +CONFIG_EDAC_HIGHBANK_MC policy<{'armhf': 'm'}> +CONFIG_EDAC_HIGHBANK_L2 policy<{'armhf': 'm'}> +CONFIG_EDAC_THUNDERX policy<{'arm64': 'm'}> +CONFIG_EDAC_ARMADA_XP policy<{'armhf': 'y'}> +CONFIG_EDAC_SYNOPSYS policy<{'arm64': 'm'}> +CONFIG_EDAC_XGENE policy<{'arm64': 'm'}> +CONFIG_EDAC_TI policy<{'armhf': 'm'}> +CONFIG_EDAC_QCOM policy<{'arm64': 'm', 'armhf': 'm'}> +CONFIG_EDAC_BLUEFIELD policy<{'arm64': 'm'}> +CONFIG_EDAC_DMC520 policy<{'arm64': 'm'}> + +# Menu: Device Drivers >> EDAC (Error Detection And Correction) reporting >> Altera SOCFPGA ECC +CONFIG_EDAC_ALTERA policy<{'arm64': 'y'}> +CONFIG_EDAC_ALTERA_SDRAM policy<{'arm64': 'y'}> +CONFIG_EDAC_ALTERA_OCRAM policy<{'arm64': 'y'}> +CONFIG_EDAC_ALTERA_ETHERNET policy<{'arm64': 'y'}> +CONFIG_EDAC_ALTERA_NAND policy<{'arm64': 'y'}> +CONFIG_EDAC_ALTERA_USB policy<{'arm64': 'y'}> +CONFIG_EDAC_ALTERA_QSPI policy<{'arm64': 'y'}> +CONFIG_EDAC_ALTERA_SDMMC policy<{'arm64': 'y'}> + +# Menu: Device Drivers >> EISA support +CONFIG_EISA policy<{'amd64': 'y'}> +CONFIG_EISA_VLB_PRIMING policy<{'amd64': 'y'}> +CONFIG_EISA_PCI_EISA policy<{'amd64': 'y'}> +CONFIG_EISA_VIRTUAL_ROOT policy<{'amd64': 'y'}> +CONFIG_EISA_NAMES policy<{'amd64': 'y'}> + +# Menu: Device Drivers >> Eckelmann SIOX Support +CONFIG_SIOX policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_SIOX_BUS_GPIO policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> + +# Menu: Device Drivers >> External Connector Class (extcon) support +CONFIG_EXTCON policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'n'}> +CONFIG_EXTCON_ADC_JACK policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_EXTCON_ARIZONA policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_EXTCON_AXP288 policy<{'amd64': 'm'}> +CONFIG_EXTCON_FSA9480 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_EXTCON_GPIO policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_EXTCON_INTEL_INT3496 policy<{'amd64': 'm'}> +CONFIG_EXTCON_INTEL_CHT_WC policy<{'amd64': 'm'}> +CONFIG_EXTCON_INTEL_MRFLD policy<{'amd64': 'm'}> +CONFIG_EXTCON_MAX14577 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_EXTCON_MAX3355 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_EXTCON_MAX77693 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_EXTCON_MAX77843 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_EXTCON_MAX8997 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_EXTCON_PALMAS policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_EXTCON_PTN5150 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_EXTCON_QCOM_SPMI_MISC policy<{'arm64': 'm', 'armhf': 'm'}> +CONFIG_EXTCON_RT8973A policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_EXTCON_SM5502 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_EXTCON_USB_GPIO policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_EXTCON_USBC_CROS_EC policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm'}> + +# Menu: Device Drivers >> FPGA Configuration Framework +CONFIG_FPGA policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_ALTERA_PR_IP_CORE policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_ALTERA_PR_IP_CORE_PLAT policy<{'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_FPGA_MGR_ALTERA_PS_SPI policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_FPGA_MGR_ALTERA_CVP policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_FPGA_MGR_STRATIX10_SOC policy<{'arm64': 'm'}> +CONFIG_FPGA_MGR_XILINX_SPI policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_FPGA_MGR_ICE40_SPI policy<{'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_FPGA_MGR_MACHXO2_SPI policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_FPGA_MGR_ZYNQMP_FPGA policy<{'arm64': 'm'}> + +# Menu: Device Drivers >> FPGA Configuration Framework >> FPGA Bridge Framework +CONFIG_FPGA_BRIDGE policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'n'}> +CONFIG_ALTERA_FREEZE_BRIDGE policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_XILINX_PR_DECOUPLER policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_FPGA_REGION policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_OF_FPGA_REGION policy<{'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> + +# Menu: Device Drivers >> FPGA Configuration Framework >> FPGA Device Feature List (DFL) support +CONFIG_FPGA_DFL policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'n'}> +CONFIG_FPGA_DFL_AFU policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_FPGA_DFL_PCI policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> + +# Menu: Device Drivers >> FPGA Configuration Framework >> FPGA Device Feature List (DFL) support >> FPGA DFL FME Driver +CONFIG_FPGA_DFL_FME policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_FPGA_DFL_FME_MGR policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_FPGA_DFL_FME_BRIDGE policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_FPGA_DFL_FME_REGION policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> + +# Menu: Device Drivers >> FSI support +CONFIG_FSI policy<{'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_FSI_NEW_DEV_NODE policy<{'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n'}> +CONFIG_FSI_MASTER_GPIO policy<{'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_FSI_MASTER_HUB policy<{'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_FSI_MASTER_AST_CF policy<{'armhf': 'm'}> +CONFIG_FSI_MASTER_ASPEED policy<{'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_FSI_SCOM policy<{'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_FSI_SBEFIFO policy<{'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_FSI_OCC policy<{'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> + +# Menu: Device Drivers >> Fusion MPT device support +CONFIG_FUSION policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'n'}> +CONFIG_FUSION_SPI policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_FUSION_FC policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_FUSION_SAS policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_FUSION_MAX_SGE policy<{'amd64': '128', 'arm64': '128', 'armhf': '128', 'ppc64el': '128'}> +CONFIG_FUSION_CTL policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_FUSION_LAN policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_FUSION_LOGGING policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> + +# Menu: Device Drivers >> GNSS receiver support +CONFIG_GNSS policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'n'}> +CONFIG_GNSS_MTK_SERIAL policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_GNSS_SIRF_SERIAL policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_GNSS_UBX_SERIAL policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> + +# Menu: Device Drivers >> GPIO Support +CONFIG_GPIOLIB policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_GPIOLIB_FASTPATH_LIMIT policy<{'amd64': '512', 'arm64': '512', 'armhf': '512', 'ppc64el': '512', 's390x': '512'}> +CONFIG_DEBUG_GPIO policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n', 's390x': 'n'}> +CONFIG_GPIO_SYSFS policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_GPIO_AGGREGATOR policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_GPIO_MOCKUP policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n', 's390x': 'n'}> + +# Menu: Device Drivers >> GPIO Support >> I2C GPIO expanders +CONFIG_GPIO_ADP5588 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'n'}> +CONFIG_GPIO_ADNP policy<{'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_GPIO_GW_PLD policy<{'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_GPIO_MAX7300 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'n'}> +CONFIG_GPIO_MAX732X policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'n'}> +CONFIG_GPIO_PCA953X policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'n'}> +CONFIG_GPIO_PCA953X_IRQ policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_GPIO_PCF857X policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'n'}> +CONFIG_GPIO_TPIC2810 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'n'}> +CONFIG_GPIO_TS4900 policy<{'armhf-generic': 'm'}> + +# Menu: Device Drivers >> GPIO Support >> MFD GPIO expanders +CONFIG_GPIO_ADP5520 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_GPIO_ARIZONA policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_GPIO_BD70528 policy<{'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_GPIO_BD71828 policy<{'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_GPIO_BD9571MWV policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_GPIO_CRYSTAL_COVE policy<{'amd64': 'y'}> +CONFIG_GPIO_DA9052 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_GPIO_DA9055 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_GPIO_DLN2 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_HTC_EGPIO policy<{'armhf': 'y'}> +CONFIG_GPIO_JANZ_TTL policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_GPIO_KEMPLD policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_GPIO_LP3943 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_GPIO_LP873X policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_GPIO_LP87565 policy<{'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_GPIO_MADERA policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_GPIO_MAX77620 policy<{'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_GPIO_MAX77650 policy<{'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_GPIO_MSIC policy<{'amd64': 'y'}> +CONFIG_GPIO_PALMAS policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_GPIO_RC5T583 policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_GPIO_STMPE policy<{'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_GPIO_TC3589X policy<{'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_GPIO_TPS65086 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_GPIO_TPS65218 policy<{'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_GPIO_TPS6586X policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_GPIO_TPS65910 policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_GPIO_TPS65912 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_GPIO_TPS68470 policy<{'amd64': 'y', 'arm64': 'y'}> +CONFIG_GPIO_TQMX86 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_GPIO_TWL4030 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'y', 'ppc64el': 'm'}> +CONFIG_GPIO_TWL6040 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'y', 'ppc64el': 'm'}> +CONFIG_GPIO_UCB1400 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_GPIO_WHISKEY_COVE policy<{'amd64': 'm'}> +CONFIG_GPIO_WM831X policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_GPIO_WM8350 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_GPIO_WM8994 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +# +CONFIG_GPIO_TWL4030 mark note + +# Menu: Device Drivers >> GPIO Support >> Memory mapped GPIO drivers +CONFIG_GPIO_74XX_MMIO policy<{'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_GPIO_ALTERA policy<{'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_GPIO_AMDPT policy<{'amd64': 'm', 'arm64': 'm'}> +CONFIG_GPIO_ASPEED policy<{'armhf': 'm'}> +CONFIG_GPIO_ASPEED_SGPIO policy<{'armhf': 'y'}> +CONFIG_GPIO_RASPBERRYPI_EXP policy<{'arm64': 'm'}> +CONFIG_GPIO_BCM_XGS_IPROC policy<{'arm64': 'm'}> +CONFIG_GPIO_BRCMSTB policy<{'arm64': 'm'}> +CONFIG_GPIO_CADENCE policy<{'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_GPIO_DAVINCI policy<{'arm64': 'y'}> +CONFIG_GPIO_DWAPB policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'n'}> +CONFIG_GPIO_EIC_SPRD policy<{'arm64': 'm'}> +CONFIG_GPIO_EM policy<{'armhf': 'n'}> +CONFIG_GPIO_EXAR policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_GPIO_FTGPIO010 policy<{'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_GPIO_GENERIC_PLATFORM policy<{'amd64': 'm', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_GPIO_GRGPIO policy<{'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_GPIO_HLWD policy<{'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_GPIO_ICH policy<{'amd64': 'm'}> +CONFIG_GPIO_LOGICVC policy<{'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_GPIO_MB86S7X policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'n'}> +CONFIG_GPIO_MENZ127 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_GPIO_MPC8XXX policy<{'arm64': 'y', 'armhf': 'y'}> +CONFIG_GPIO_OMAP policy<{'armhf': 'y'}> +CONFIG_GPIO_PL061 policy<{'arm64': 'y', 'armhf': 'y'}> +CONFIG_GPIO_PMIC_EIC_SPRD policy<{'arm64': 'm'}> +CONFIG_GPIO_RCAR policy<{'arm64': 'm', 'armhf': 'm'}> +CONFIG_GPIO_RDA policy<{'armhf': 'y'}> +CONFIG_GPIO_SAMA5D2_PIOBU policy<{'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_GPIO_SIFIVE policy<{'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_GPIO_SIOX policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'n'}> +CONFIG_GPIO_SPRD policy<{'arm64': 'm'}> +CONFIG_GPIO_SYSCON policy<{'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_GPIO_TEGRA policy<{'armhf-generic': 'y'}> +CONFIG_GPIO_TS4800 policy<{'armhf-generic': 'm'}> +CONFIG_GPIO_THUNDERX policy<{'arm64': 'm'}> +CONFIG_GPIO_UNIPHIER policy<{'armhf': 'm'}> +CONFIG_GPIO_VX855 policy<{'amd64': 'm'}> +CONFIG_GPIO_WCD934X policy<{'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_GPIO_XGENE policy<{'arm64': 'y'}> +CONFIG_GPIO_XGENE_SB policy<{'arm64': 'm'}> +CONFIG_GPIO_XILINX policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'n'}> +CONFIG_GPIO_XLP policy<{'arm64': 'm'}> +CONFIG_GPIO_ZEVIO policy<{'armhf': 'y'}> +CONFIG_GPIO_ZYNQ policy<{'arm64': 'm'}> +CONFIG_GPIO_AMD_FCH policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'n'}> +# +CONFIG_GPIO_EM note + +# Menu: Device Drivers >> GPIO Support >> PCI GPIO expanders +CONFIG_GPIO_AMD8111 policy<{'amd64': 'm'}> +CONFIG_GPIO_BT8XX policy<{'s390x': 'm'}> +CONFIG_GPIO_MLXBF policy<{'arm64': 'm'}> +CONFIG_GPIO_MLXBF2 policy<{'arm64': 'm'}> +CONFIG_GPIO_ML_IOH policy<{'amd64': 'm'}> +CONFIG_GPIO_PCI_IDIO_16 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_GPIO_PCIE_IDIO_24 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_GPIO_RDC321X policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'n'}> + +# Menu: Device Drivers >> GPIO Support >> Port-mapped I/O GPIO drivers +CONFIG_GPIO_104_DIO_48E policy<{'amd64': 'm'}> +CONFIG_GPIO_104_IDIO_16 policy<{'amd64': 'm'}> +CONFIG_GPIO_104_IDI_48 policy<{'amd64': 'm'}> +CONFIG_GPIO_F7188X policy<{'amd64': 'm'}> +CONFIG_GPIO_GPIO_MM policy<{'amd64': 'm'}> +CONFIG_GPIO_IT87 policy<{'amd64': 'm'}> +CONFIG_GPIO_SCH policy<{'amd64': 'm'}> +CONFIG_GPIO_SCH311X policy<{'amd64': 'm'}> +CONFIG_GPIO_WINBOND policy<{'amd64': 'm'}> +CONFIG_GPIO_WS16C48 policy<{'amd64': 'm'}> + +# Menu: Device Drivers >> GPIO Support >> SPI GPIO expanders +CONFIG_GPIO_74X164 policy<{'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_GPIO_MAX3191X policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_GPIO_MAX7301 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_GPIO_MC33880 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_GPIO_PISOSR policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_GPIO_XRA1403 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_GPIO_MOXTET policy<{'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> + +# Menu: Device Drivers >> GPIO Support >> USB GPIO expanders +CONFIG_GPIO_VIPERBOARD policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> + +# Menu: Device Drivers >> Generic Driver Options +CONFIG_UEVENT_HELPER policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_UEVENT_HELPER_PATH policy<{'amd64': '""', 'arm64': '""', 'armhf': '""', 'ppc64el': '""', 's390x': '""'}> +CONFIG_DEVTMPFS policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_DEVTMPFS_MOUNT policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_STANDALONE policy<{'amd64': 'n', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_PREVENT_FIRMWARE_BUILD policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_ALLOW_DEV_COREDUMP policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_DEBUG_DRIVER policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n', 's390x': 'n'}> +CONFIG_DEBUG_DEVRES policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n', 's390x': 'n'}> +CONFIG_DEBUG_TEST_DRIVER_REMOVE policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n', 's390x': 'n'}> +CONFIG_TEST_ASYNC_DRIVER_PROBE policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n', 's390x': 'n'}> +CONFIG_DMA_FENCE_TRACE policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n', 's390x': 'n'}> +# +CONFIG_DEVTMPFS note note +CONFIG_DEVTMPFS_MOUNT note note + +# Menu: Device Drivers >> Generic Driver Options >> Firmware loader + +# Menu: Device Drivers >> Generic Driver Options >> Firmware loader >> Firmware loading facility +CONFIG_FW_LOADER policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_EXTRA_FIRMWARE policy<{'amd64': '""', 'arm64': '""', 'armhf': '""', 'ppc64el': '""', 's390x': '""'}> +CONFIG_FW_LOADER_USER_HELPER policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_FW_LOADER_USER_HELPER_FALLBACK policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n', 's390x': 'n'}> +CONFIG_FW_LOADER_COMPRESS policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_FW_CACHE policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +# +CONFIG_FW_LOADER_USER_HELPER_FALLBACK mark note + +# Menu: Device Drivers >> Generic Dynamic Voltage and Frequency Scaling (DVFS) support +CONFIG_PM_DEVFREQ policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'n'}> +CONFIG_DEVFREQ_GOV_SIMPLE_ONDEMAND policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_DEVFREQ_GOV_PERFORMANCE policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_DEVFREQ_GOV_POWERSAVE policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_DEVFREQ_GOV_USERSPACE policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_DEVFREQ_GOV_PASSIVE policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_ARM_EXYNOS_BUS_DEVFREQ policy<{'armhf': 'y'}> +CONFIG_ARM_IMX_BUS_DEVFREQ policy<{'arm64': 'm', 'armhf-generic': 'm'}> +CONFIG_ARM_IMX8M_DDRC_DEVFREQ policy<{'arm64': 'm', 'armhf-generic': 'm'}> +CONFIG_ARM_TEGRA_DEVFREQ policy<{'armhf-generic': 'm'}> +CONFIG_ARM_TEGRA20_DEVFREQ policy<{'armhf-generic': 'm'}> +CONFIG_ARM_RK3399_DMC_DEVFREQ policy<{'arm64': 'm', 'armhf': 'm'}> + +# Menu: Device Drivers >> Generic Dynamic Voltage and Frequency Scaling (DVFS) support >> DEVFREQ-Event device Support +CONFIG_PM_DEVFREQ_EVENT policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_DEVFREQ_EVENT_EXYNOS_NOCP policy<{'armhf': 'y'}> +CONFIG_DEVFREQ_EVENT_EXYNOS_PPMU policy<{'armhf': 'y'}> +CONFIG_DEVFREQ_EVENT_ROCKCHIP_DFI policy<{'arm64': 'm', 'armhf': 'm'}> + +# Menu: Device Drivers >> Generic Target Core Mod (TCM) and ConfigFS Infrastructure +CONFIG_TARGET_CORE policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_TCM_IBLOCK policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_TCM_FILEIO policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_TCM_PSCSI policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_TCM_USER2 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_LOOPBACK_TARGET policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_TCM_FC policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_ISCSI_TARGET policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_ISCSI_TARGET_CXGB4 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SBP_TARGET policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> + +# Menu: Device Drivers >> Generic powercap sysfs driver +CONFIG_POWERCAP policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'n'}> +CONFIG_INTEL_RAPL policy<{'amd64': 'm'}> +CONFIG_IDLE_INJECT policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> + +# Menu: Device Drivers >> Graphics support +CONFIG_VGA_ARB policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_VGA_ARB_MAX_GPUS policy<{'amd64': '16', 'arm64': '16', 'armhf': '16', 'ppc64el': '16'}> +CONFIG_VGA_SWITCHEROO policy<{'amd64': 'y'}> +CONFIG_TEGRA_HOST1X policy<{'armhf-generic': 'm'}> +CONFIG_TEGRA_HOST1X_FIREWALL policy<{'armhf-generic': 'y'}> +CONFIG_IMX_IPUV3_CORE policy<{'armhf': 'm'}> +CONFIG_DRM_DEBUG_DP_MST_TOPOLOGY_REFS policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n', 's390x': 'n'}> +CONFIG_DRM_XEN policy<{'amd64': 'y', 'arm64': 'y'}> +CONFIG_DRM_XEN_FRONTEND policy<{'amd64': 'm', 'arm64': 'm'}> + +# Menu: Device Drivers >> Graphics support >> /dev/agpgart (AGP Support) +CONFIG_AGP policy<{'amd64': 'y', 'ppc64el': 'y'}> +CONFIG_AGP_AMD64 policy<{'amd64': 'y'}> +CONFIG_AGP_INTEL policy<{'amd64': 'y'}> +CONFIG_AGP_SIS policy<{'amd64': 'm'}> +CONFIG_AGP_VIA policy<{'amd64': 'y'}> +# +CONFIG_AGP note flag + +# Menu: Device Drivers >> Graphics support >> ARM devices +CONFIG_DRM_HDLCD policy<{'arm64': 'm', 'armhf': 'm'}> +CONFIG_DRM_HDLCD_SHOW_UNDERRUN policy<{'arm64': 'n', 'armhf': 'n'}> +CONFIG_DRM_MALI_DISPLAY policy<{'arm64': 'm', 'armhf': 'm'}> +CONFIG_DRM_KOMEDA policy<{'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> + +# Menu: Device Drivers >> Graphics support >> Backlight & LCD device support + +# Menu: Device Drivers >> Graphics support >> Backlight & LCD device support >> Lowlevel Backlight controls +CONFIG_BACKLIGHT_CLASS_DEVICE policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'n'}> +CONFIG_BACKLIGHT_GENERIC policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_BACKLIGHT_LM3533 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_BACKLIGHT_CARILLO_RANCH policy<{'amd64': 'm'}> +CONFIG_BACKLIGHT_PWM policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_BACKLIGHT_DA903X policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_BACKLIGHT_DA9052 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_BACKLIGHT_MAX8925 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_BACKLIGHT_APPLE policy<{'amd64': 'm'}> +CONFIG_BACKLIGHT_QCOM_WLED policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_BACKLIGHT_SAHARA policy<{'amd64': 'm'}> +CONFIG_BACKLIGHT_WM831X policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_BACKLIGHT_ADP5520 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_BACKLIGHT_ADP8860 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_BACKLIGHT_ADP8870 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_BACKLIGHT_88PM860X policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_BACKLIGHT_PCF50633 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_BACKLIGHT_AAT2870 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_BACKLIGHT_LM3630A policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_BACKLIGHT_LM3639 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_BACKLIGHT_LP855X policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_BACKLIGHT_LP8788 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_BACKLIGHT_PANDORA policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_BACKLIGHT_SKY81452 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_BACKLIGHT_TPS65217 policy<{'arm64': 'm', 'armhf': 'm'}> +CONFIG_BACKLIGHT_AS3711 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_BACKLIGHT_GPIO policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_BACKLIGHT_LV5207LP policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_BACKLIGHT_BD6107 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_BACKLIGHT_ARCXCNN policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_BACKLIGHT_RAVE_SP policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_BACKLIGHT_LED policy<{'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> + +# Menu: Device Drivers >> Graphics support >> Backlight & LCD device support >> Lowlevel LCD controls +CONFIG_LCD_CLASS_DEVICE policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'n'}> +CONFIG_LCD_L4F00242T03 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_LCD_LMS283GF05 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_LCD_LTV350QV policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_LCD_ILI922X policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_LCD_ILI9320 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_LCD_TDO24M policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_LCD_VGG2432A4 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_LCD_PLATFORM policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_LCD_AMS369FG06 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_LCD_LMS501KF03 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_LCD_HX8357 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_LCD_OTM3225A policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> + +# Menu: Device Drivers >> Graphics support >> Bootup logo +CONFIG_LOGO policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n', 's390x': 'n'}> + +# Menu: Device Drivers >> Graphics support >> Console display driver support +CONFIG_VGA_CONSOLE policy<{'amd64': 'y', 'ppc64el': 'y'}> +CONFIG_DUMMY_CONSOLE_COLUMNS policy<{'amd64': '80', 'arm64': '80', 'ppc64el': '80', 's390x': '80'}> +CONFIG_DUMMY_CONSOLE_ROWS policy<{'amd64': '25', 'arm64': '25', 'ppc64el': '25', 's390x': '25'}> + +# Menu: Device Drivers >> Graphics support >> Console display driver support >> Framebuffer Console support +CONFIG_FRAMEBUFFER_CONSOLE policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_FRAMEBUFFER_CONSOLE_DETECT_PRIMARY policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_FRAMEBUFFER_CONSOLE_ROTATION policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_FRAMEBUFFER_CONSOLE_DEFERRED_TAKEOVER policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> + +# Menu: Device Drivers >> Graphics support >> Direct Rendering Manager (XFree86 4.1.0 and higher DRI support) +CONFIG_DRM policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_DRM_DP_AUX_CHARDEV policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'n'}> +CONFIG_DRM_DEBUG_SELFTEST policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n', 's390x': 'n'}> +CONFIG_DRM_FBDEV_EMULATION policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_DRM_FBDEV_OVERALLOC policy<{'amd64': '100', 'arm64': '100', 'armhf': '100', 'ppc64el': '100', 's390x': '100'}> +CONFIG_DRM_FBDEV_LEAK_PHYS_SMEM policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n', 's390x': 'n'}> +CONFIG_DRM_LOAD_EDID_FIRMWARE policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_DRM_DP_CEC policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'n'}> +CONFIG_DRM_RADEON policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'n'}> +CONFIG_DRM_RADEON_USERPTR policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n'}> +CONFIG_DRM_VGEM policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'n'}> +CONFIG_DRM_VKMS policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'n'}> +CONFIG_DRM_VMWGFX policy<{'amd64': 'm'}> +CONFIG_DRM_VMWGFX_FBCON policy<{'amd64': 'y'}> +CONFIG_DRM_UDL policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_DRM_AST policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'n'}> +CONFIG_DRM_MGAG200 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'n'}> +CONFIG_DRM_ARMADA policy<{'armhf': 'm'}> +CONFIG_DRM_ATMEL_HLCDC policy<{'armhf': 'm'}> +CONFIG_DRM_RCAR_DU policy<{'arm64': 'm', 'armhf': 'm'}> +CONFIG_DRM_RCAR_CMM policy<{'arm64': 'm', 'armhf': 'm'}> +CONFIG_DRM_RCAR_DW_HDMI policy<{'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_DRM_RCAR_LVDS policy<{'arm64': 'm', 'armhf': 'm', 'ppc64el': 'n'}> +CONFIG_DRM_RCAR_VSP policy<{'arm64': 'y', 'armhf': 'y'}> +CONFIG_DRM_OMAP policy<{'armhf': 'n'}> +CONFIG_DRM_TILCDC policy<{'armhf': 'm'}> +CONFIG_DRM_QXL policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'n'}> +CONFIG_DRM_BOCHS policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_DRM_VIRTIO_GPU policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_DRM_FSL_DCU policy<{'armhf': 'm'}> +CONFIG_DRM_TEGRA policy<{'armhf-generic': 'm'}> +CONFIG_DRM_TEGRA_DEBUG policy<{'armhf-generic': 'n'}> +CONFIG_DRM_TEGRA_STAGING policy<{'armhf-generic': 'y'}> +CONFIG_DRM_STM policy<{'armhf': 'm'}> +CONFIG_DRM_STM_DSI policy<{'armhf': 'm'}> +CONFIG_DRM_STI policy<{'armhf': 'n'}> +CONFIG_DRM_VC4 policy<{'arm64': 'm'}> +CONFIG_DRM_VC4_HDMI_CEC policy<{'arm64': 'y'}> +CONFIG_DRM_ETNAVIV policy<{'amd64': 'n', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'n', 's390x': 'n'}> +CONFIG_DRM_ETNAVIV_THERMAL policy<{'arm64': 'y', 'armhf': 'y'}> +CONFIG_DRM_ARCPGU policy<{'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_DRM_HISI_HIBMC policy<{'arm64': 'm'}> +CONFIG_DRM_HISI_KIRIN policy<{'arm64': 'm'}> +CONFIG_DRM_MEDIATEK policy<{'arm64': 'm', 'armhf': 'm'}> +CONFIG_DRM_MEDIATEK_HDMI policy<{'arm64': 'm', 'armhf': 'm'}> +CONFIG_DRM_MXSFB policy<{'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_DRM_MESON policy<{'arm64': 'm', 'armhf': 'm'}> +CONFIG_DRM_MESON_DW_HDMI policy<{'arm64': 'm', 'armhf': 'm'}> +CONFIG_DRM_CIRRUS_QEMU policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'n'}> +CONFIG_DRM_GM12U320 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_TINYDRM_HX8357D policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_TINYDRM_ILI9225 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_TINYDRM_ILI9341 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_TINYDRM_ILI9486 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_TINYDRM_MI0283QT policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_TINYDRM_REPAPER policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_TINYDRM_ST7586 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_TINYDRM_ST7735R policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_DRM_PL111 policy<{'arm64': 'm', 'armhf': 'm'}> +CONFIG_DRM_TVE200 policy<{'armhf': 'm'}> +CONFIG_DRM_VBOXVIDEO policy<{'amd64': 'm'}> +CONFIG_DRM_LIMA policy<{'arm64': 'm', 'armhf': 'm'}> +CONFIG_DRM_PANFROST policy<{'arm64': 'm', 'armhf': 'm'}> +CONFIG_DRM_ASPEED_GFX policy<{'armhf': 'm'}> +CONFIG_DRM_MCDE policy<{'armhf': 'm'}> +CONFIG_DRM_TIDSS policy<{'arm64': 'm', 'armhf': 'm'}> +# +CONFIG_DRM_MGAG200 note +CONFIG_DRM_STI note +CONFIG_DRM_VBOXVIDEO note flag +CONFIG_DRM_HISI_HIBMC mark note +CONFIG_DRM_BOCHS mark note note + +# Menu: Device Drivers >> Graphics support >> Direct Rendering Manager (XFree86 4.1.0 and higher DRI support) >> AMD GPU +CONFIG_DRM_AMDGPU policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'n'}> +CONFIG_DRM_AMDGPU_SI policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_DRM_AMDGPU_CIK policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_DRM_AMDGPU_USERPTR policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_DRM_AMDGPU_GART_DEBUGFS policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n'}> +CONFIG_HSA_AMD policy<{'amd64': 'y', 'arm64': 'y', 'ppc64el': 'y'}> +# +CONFIG_DRM_AMDGPU_CIK note +CONFIG_DRM_AMDGPU_CIK note + +# Menu: Device Drivers >> Graphics support >> Direct Rendering Manager (XFree86 4.1.0 and higher DRI support) >> AMD GPU >> ACP (Audio CoProcessor) Configuration +CONFIG_DRM_AMD_ACP policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> + +# Menu: Device Drivers >> Graphics support >> Direct Rendering Manager (XFree86 4.1.0 and higher DRI support) >> AMD GPU >> Display Engine Configuration +CONFIG_DRM_AMD_DC policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_DRM_AMD_DC_HDCP policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_DEBUG_KERNEL_DC policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n'}> + +# Menu: Device Drivers >> Graphics support >> Direct Rendering Manager (XFree86 4.1.0 and higher DRI support) >> DRM Support for Allwinner A10 Display Engine +CONFIG_DRM_SUN4I policy<{'arm64': 'm'}> +CONFIG_DRM_SUN4I_HDMI policy<{'arm64': 'm'}> +CONFIG_DRM_SUN4I_HDMI_CEC policy<{'arm64': 'y'}> +CONFIG_DRM_SUN4I_BACKEND policy<{'arm64': 'm'}> +CONFIG_DRM_SUN6I_DSI policy<{'arm64': 'm'}> +CONFIG_DRM_SUN8I_DW_HDMI policy<{'arm64': 'm'}> +CONFIG_DRM_SUN8I_MIXER policy<{'arm64': 'm'}> + +# Menu: Device Drivers >> Graphics support >> Direct Rendering Manager (XFree86 4.1.0 and higher DRI support) >> DRM Support for Freescale i.MX +CONFIG_DRM_IMX policy<{'armhf': 'm'}> +CONFIG_DRM_IMX_PARALLEL_DISPLAY policy<{'armhf': 'm'}> +CONFIG_DRM_IMX_TVE policy<{'armhf': 'm'}> +CONFIG_DRM_IMX_LDB policy<{'armhf': 'm'}> +CONFIG_DRM_IMX_HDMI policy<{'armhf': 'm'}> + +# Menu: Device Drivers >> Graphics support >> Direct Rendering Manager (XFree86 4.1.0 and higher DRI support) >> DRM Support for Rockchip +CONFIG_DRM_ROCKCHIP policy<{'arm64': 'm', 'armhf': 'm'}> +CONFIG_ROCKCHIP_ANALOGIX_DP policy<{'arm64': 'y', 'armhf': 'y'}> +CONFIG_ROCKCHIP_CDN_DP policy<{'arm64': 'y', 'armhf': 'y'}> +CONFIG_ROCKCHIP_DW_HDMI policy<{'arm64': 'y', 'armhf': 'y'}> +CONFIG_ROCKCHIP_DW_MIPI_DSI policy<{'arm64': 'y', 'armhf': 'y'}> +CONFIG_ROCKCHIP_INNO_HDMI policy<{'arm64': 'y', 'armhf': 'y'}> +CONFIG_ROCKCHIP_LVDS policy<{'arm64': 'y', 'armhf': 'y'}> +CONFIG_ROCKCHIP_RGB policy<{'arm64': 'y', 'armhf': 'y'}> +CONFIG_ROCKCHIP_RK3066_HDMI policy<{'arm64': 'y', 'armhf': 'y'}> + +# Menu: Device Drivers >> Graphics support >> Direct Rendering Manager (XFree86 4.1.0 and higher DRI support) >> DRM Support for Samsung SoC Exynos Series +CONFIG_DRM_EXYNOS policy<{'armhf': 'm'}> +CONFIG_DRM_EXYNOS_FIMD policy<{'armhf': 'n'}> +CONFIG_DRM_EXYNOS5433_DECON policy<{'armhf': 'y'}> +CONFIG_DRM_EXYNOS7_DECON policy<{'armhf': 'n'}> +CONFIG_DRM_EXYNOS_MIXER policy<{'armhf': 'y'}> +CONFIG_DRM_EXYNOS_VIDI policy<{'armhf': 'n'}> +CONFIG_DRM_EXYNOS_DSI policy<{'armhf': 'y'}> +CONFIG_DRM_EXYNOS_HDMI policy<{'armhf': 'y'}> +CONFIG_DRM_EXYNOS_MIC policy<{'armhf': 'y'}> +CONFIG_DRM_EXYNOS_FIMC policy<{'armhf': 'y'}> +CONFIG_DRM_EXYNOS_ROTATOR policy<{'armhf': 'y'}> +CONFIG_DRM_EXYNOS_SCALER policy<{'armhf': 'y'}> + +# Menu: Device Drivers >> Graphics support >> Direct Rendering Manager (XFree86 4.1.0 and higher DRI support) >> Display Interface Bridges +CONFIG_DRM_CDNS_DSI policy<{'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_DRM_CHRONTEL_CH7033 policy<{'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_DRM_DISPLAY_CONNECTOR policy<{'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_DRM_LVDS_CODEC policy<{'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_DRM_MEGACHIPS_STDPXXXX_GE_B850V3_FW policy<{'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_DRM_NWL_MIPI_DSI policy<{'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_DRM_NXP_PTN3460 policy<{'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_DRM_PARADE_PS8622 policy<{'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_DRM_PARADE_PS8640 policy<{'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_DRM_SIL_SII8620 policy<{'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_DRM_SII902X policy<{'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_DRM_SII9234 policy<{'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_DRM_SIMPLE_BRIDGE policy<{'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_DRM_THINE_THC63LVD1024 policy<{'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_DRM_TOSHIBA_TC358764 policy<{'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_DRM_TOSHIBA_TC358767 policy<{'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_DRM_TOSHIBA_TC358768 policy<{'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_DRM_TI_TFP410 policy<{'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_DRM_TI_SN65DSI86 policy<{'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_DRM_TI_TPD12S015 policy<{'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_DRM_ANALOGIX_ANX6345 policy<{'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_DRM_ANALOGIX_ANX78XX policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'n'}> +CONFIG_DRM_I2C_ADV7511 policy<{'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_DRM_I2C_ADV7511_AUDIO policy<{'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_DRM_I2C_ADV7511_CEC policy<{'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_DRM_DW_HDMI_AHB_AUDIO policy<{'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_DRM_DW_HDMI_I2S_AUDIO policy<{'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_DRM_DW_HDMI_CEC policy<{'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> + +# Menu: Device Drivers >> Graphics support >> Direct Rendering Manager (XFree86 4.1.0 and higher DRI support) >> Display Panels +CONFIG_DRM_PANEL_ARM_VERSATILE policy<{'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_DRM_PANEL_ASUS_Z00T_TM5P5_NT35596 policy<{'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_DRM_PANEL_BOE_HIMAX8279D policy<{'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_DRM_PANEL_BOE_TV101WUM_NL6 policy<{'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_DRM_PANEL_LVDS policy<{'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_DRM_PANEL_SIMPLE policy<{'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_DRM_PANEL_ELIDA_KD35T133 policy<{'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_DRM_PANEL_FEIXIN_K101_IM2BA02 policy<{'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_DRM_PANEL_FEIYANG_FY07024DI26A30D policy<{'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_DRM_PANEL_ILITEK_IL9322 policy<{'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_DRM_PANEL_ILITEK_ILI9881C policy<{'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_DRM_PANEL_INNOLUX_P079ZCA policy<{'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_DRM_PANEL_JDI_LT070ME05000 policy<{'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_DRM_PANEL_KINGDISPLAY_KD097D04 policy<{'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_DRM_PANEL_LEADTEK_LTK050H3146W policy<{'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_DRM_PANEL_LEADTEK_LTK500HD1829 policy<{'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_DRM_PANEL_SAMSUNG_LD9040 policy<{'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_DRM_PANEL_LG_LB035Q02 policy<{'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_DRM_PANEL_LG_LG4573 policy<{'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_DRM_PANEL_NEC_NL8048HL11 policy<{'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_DRM_PANEL_NOVATEK_NT35510 policy<{'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_DRM_PANEL_NOVATEK_NT39016 policy<{'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_DRM_PANEL_OLIMEX_LCD_OLINUXINO policy<{'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_DRM_PANEL_ORISETECH_OTM8009A policy<{'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_DRM_PANEL_OSD_OSD101T2587_53TS policy<{'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_DRM_PANEL_PANASONIC_VVX10F034N00 policy<{'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_DRM_PANEL_RASPBERRYPI_TOUCHSCREEN policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_DRM_PANEL_RAYDIUM_RM67191 policy<{'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_DRM_PANEL_RAYDIUM_RM68200 policy<{'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_DRM_PANEL_ROCKTECH_JH057N00900 policy<{'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_DRM_PANEL_RONBO_RB070D30 policy<{'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_DRM_PANEL_SAMSUNG_S6D16D0 policy<{'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_DRM_PANEL_SAMSUNG_S6E3HA2 policy<{'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_DRM_PANEL_SAMSUNG_S6E63J0X03 policy<{'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_DRM_PANEL_SAMSUNG_S6E63M0 policy<{'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_DRM_PANEL_SAMSUNG_S6E88A0_AMS452EF01 policy<{'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_DRM_PANEL_SAMSUNG_S6E8AA0 policy<{'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_DRM_PANEL_SEIKO_43WVF1G policy<{'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_DRM_PANEL_SHARP_LQ101R1SX01 policy<{'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_DRM_PANEL_SHARP_LS037V7DW01 policy<{'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_DRM_PANEL_SHARP_LS043T1LE01 policy<{'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_DRM_PANEL_SITRONIX_ST7701 policy<{'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_DRM_PANEL_SITRONIX_ST7789V policy<{'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_DRM_PANEL_SONY_ACX424AKP policy<{'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_DRM_PANEL_SONY_ACX565AKM policy<{'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_DRM_PANEL_TPO_TD028TTEC1 policy<{'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_DRM_PANEL_TPO_TD043MTEA1 policy<{'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_DRM_PANEL_TPO_TPG110 policy<{'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_DRM_PANEL_TRULY_NT35597_WQXGA policy<{'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_DRM_PANEL_VISIONOX_RM69299 policy<{'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_DRM_PANEL_XINPENG_XPP055C272 policy<{'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> + +# Menu: Device Drivers >> Graphics support >> Direct Rendering Manager (XFree86 4.1.0 and higher DRI support) >> Enable legacy drivers (DANGEROUS) +CONFIG_DRM_LEGACY policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n', 's390x': 'n'}> +# +CONFIG_DRM_LEGACY flag note + +# Menu: Device Drivers >> Graphics support >> Direct Rendering Manager (XFree86 4.1.0 and higher DRI support) >> I2C encoder or helper chips +CONFIG_DRM_I2C_CH7006 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'n'}> +CONFIG_DRM_I2C_SIL164 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'n'}> +CONFIG_DRM_I2C_NXP_TDA998X policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'n'}> +CONFIG_DRM_I2C_NXP_TDA9950 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'n'}> + +# Menu: Device Drivers >> Graphics support >> Direct Rendering Manager (XFree86 4.1.0 and higher DRI support) >> Intel 8xx/9xx/G3x/G4x/HD Graphics +CONFIG_DRM_I915 policy<{'amd64': 'm'}> +CONFIG_DRM_I915_FORCE_PROBE policy<{'amd64': '""'}> +CONFIG_DRM_I915_CAPTURE_ERROR policy<{'amd64': 'y'}> +CONFIG_DRM_I915_COMPRESS_ERROR policy<{'amd64': 'y'}> +CONFIG_DRM_I915_USERPTR policy<{'amd64': 'y'}> +CONFIG_DRM_I915_GVT policy<{'amd64': 'y'}> +CONFIG_DRM_I915_GVT_KVMGT policy<{'amd64': 'm'}> + +# Menu: Device Drivers >> Graphics support >> Direct Rendering Manager (XFree86 4.1.0 and higher DRI support) >> Intel 8xx/9xx/G3x/G4x/HD Graphics >> drm/i915 Debugging +CONFIG_DRM_I915_WERROR policy<{'amd64': 'n'}> +CONFIG_DRM_I915_DEBUG policy<{'amd64': 'n'}> +CONFIG_DRM_I915_DEBUG_MMIO policy<{'amd64': 'n'}> +CONFIG_DRM_I915_SW_FENCE_DEBUG_OBJECTS policy<{'amd64': 'n'}> +CONFIG_DRM_I915_SW_FENCE_CHECK_DAG policy<{'amd64': 'n'}> +CONFIG_DRM_I915_DEBUG_GUC policy<{'amd64': 'n'}> +CONFIG_DRM_I915_SELFTEST policy<{'amd64': 'n'}> +CONFIG_DRM_I915_LOW_LEVEL_TRACEPOINTS policy<{'amd64': 'n'}> +CONFIG_DRM_I915_DEBUG_VBLANK_EVADE policy<{'amd64': 'n'}> +CONFIG_DRM_I915_DEBUG_RUNTIME_PM policy<{'amd64': 'n'}> + +# Menu: Device Drivers >> Graphics support >> Direct Rendering Manager (XFree86 4.1.0 and higher DRI support) >> Intel 8xx/9xx/G3x/G4x/HD Graphics >> drm/i915 Debugging >> Insert extra checks into the GEM internals + +# Menu: Device Drivers >> Graphics support >> Direct Rendering Manager (XFree86 4.1.0 and higher DRI support) >> Intel 8xx/9xx/G3x/G4x/HD Graphics >> drm/i915 Profile Guided Optimisation +CONFIG_DRM_I915_FENCE_TIMEOUT policy<{'amd64': '10000'}> +CONFIG_DRM_I915_USERFAULT_AUTOSUSPEND policy<{'amd64': '250'}> +CONFIG_DRM_I915_HEARTBEAT_INTERVAL policy<{'amd64': '2500'}> +CONFIG_DRM_I915_PREEMPT_TIMEOUT policy<{'amd64': '640'}> +CONFIG_DRM_I915_MAX_REQUEST_BUSYWAIT policy<{'amd64': '8000'}> +CONFIG_DRM_I915_STOP_TIMEOUT policy<{'amd64': '100'}> +CONFIG_DRM_I915_TIMESLICE_DURATION policy<{'amd64': '1'}> + +# Menu: Device Drivers >> Graphics support >> Direct Rendering Manager (XFree86 4.1.0 and higher DRI support) >> Intel 8xx/9xx/G3x/G4x/HD Graphics >> drm/i915 Unstable Evolution + +# Menu: Device Drivers >> Graphics support >> Direct Rendering Manager (XFree86 4.1.0 and higher DRI support) >> Intel GMA5/600 KMS Framebuffer +CONFIG_DRM_GMA500 policy<{'amd64': 'm'}> +CONFIG_DRM_GMA600 policy<{'amd64': 'y'}> +CONFIG_DRM_GMA3600 policy<{'amd64': 'y'}> + +# Menu: Device Drivers >> Graphics support >> Direct Rendering Manager (XFree86 4.1.0 and higher DRI support) >> MSM DRM +CONFIG_DRM_MSM policy<{'arm64-generic': 'm', 'arm64-generic-64k': 'm', 'armhf': 'm'}> +CONFIG_DRM_MSM_REGISTER_LOGGING policy<{'arm64': 'n', 'armhf': 'n'}> +CONFIG_DRM_MSM_GPU_SUDO policy<{'arm64': 'n', 'armhf': 'n'}> +CONFIG_DRM_MSM_HDMI_HDCP policy<{'arm64': 'y', 'armhf': 'y'}> + +# Menu: Device Drivers >> Graphics support >> Direct Rendering Manager (XFree86 4.1.0 and higher DRI support) >> MSM DRM >> Enable DSI support in MSM DRM driver +CONFIG_DRM_MSM_DSI policy<{'arm64': 'y', 'armhf': 'y'}> +CONFIG_DRM_MSM_DSI_PLL policy<{'arm64': 'y', 'armhf': 'y'}> +CONFIG_DRM_MSM_DSI_28NM_PHY policy<{'arm64': 'y', 'armhf': 'y'}> +CONFIG_DRM_MSM_DSI_20NM_PHY policy<{'arm64': 'y', 'armhf': 'y'}> +CONFIG_DRM_MSM_DSI_28NM_8960_PHY policy<{'arm64': 'y', 'armhf': 'y'}> +CONFIG_DRM_MSM_DSI_14NM_PHY policy<{'arm64': 'y', 'armhf': 'y'}> +CONFIG_DRM_MSM_DSI_10NM_PHY policy<{'arm64': 'y', 'armhf': 'y'}> + +# Menu: Device Drivers >> Graphics support >> Direct Rendering Manager (XFree86 4.1.0 and higher DRI support) >> Nouveau (NVIDIA) cards +CONFIG_DRM_NOUVEAU policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'n'}> +CONFIG_NOUVEAU_LEGACY_CTX_SUPPORT policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n'}> +CONFIG_NOUVEAU_PLATFORM_DRIVER policy<{'armhf-generic': 'y'}> +CONFIG_NOUVEAU_DEBUG policy<{'amd64': '5', 'arm64': '5', 'armhf': '5', 'ppc64el': '5'}> +CONFIG_NOUVEAU_DEBUG_DEFAULT policy<{'amd64': '3', 'arm64': '3', 'armhf': '3', 'ppc64el': '3'}> +CONFIG_NOUVEAU_DEBUG_MMU policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n'}> +CONFIG_DRM_NOUVEAU_BACKLIGHT policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_DRM_NOUVEAU_SVM policy<{'amd64': 'n', 'arm64': 'n', 'ppc64el': 'n'}> +# +CONFIG_NOUVEAU_LEGACY_CTX_SUPPORT flag note +CONFIG_DRM_NOUVEAU_SVM flag + +# Menu: Device Drivers >> Graphics support >> Direct Rendering Manager (XFree86 4.1.0 and higher DRI support) >> OMAP2+ Display Subsystem support + +# Menu: Device Drivers >> Graphics support >> Direct Rendering Manager (XFree86 4.1.0 and higher DRI support) >> OMAPDRM External Display Device Drivers + +# Menu: Device Drivers >> Graphics support >> Frame buffer Devices + +# Menu: Device Drivers >> Graphics support >> Frame buffer Devices >> Marvell MMP Display Subsystem support + +# Menu: Device Drivers >> Graphics support >> Frame buffer Devices >> Support for frame buffer devices +CONFIG_FB policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_FIRMWARE_EDID policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_FB_MODE_HELPERS policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_FB_TILEBLITTING policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'n'}> +CONFIG_FB_CIRRUS policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'n'}> +CONFIG_FB_PM2 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'n'}> +CONFIG_FB_PM2_FIFO_DISCONNECT policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_FB_ARMCLCD policy<{'arm64': 'y', 'armhf': 'y'}> +CONFIG_FB_IMX policy<{'arm64': 'm', 'armhf-generic': 'm'}> +CONFIG_FB_CYBER2000 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'n'}> +CONFIG_FB_CYBER2000_DDC policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_FB_ARC policy<{'amd64': 'm'}> +CONFIG_FB_OF policy<{'ppc64el': 'y'}> +CONFIG_FB_ASILIANT policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'n'}> +CONFIG_FB_IMSTT policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'n'}> +CONFIG_FB_VGA16 policy<{'amd64': 'm', 'ppc64el': 'm'}> +CONFIG_FB_UVESA policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'n'}> +CONFIG_FB_VESA policy<{'amd64': 'y'}> +CONFIG_FB_EFI policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y'}> +CONFIG_FB_N411 policy<{'amd64': 'm'}> +CONFIG_FB_HGA policy<{'amd64': 'm'}> +CONFIG_FB_OPENCORES policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'n'}> +CONFIG_FB_S1D13XXX policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'n'}> +CONFIG_FB_I740 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'n'}> +CONFIG_FB_LE80578 policy<{'amd64': 'm'}> +CONFIG_FB_CARILLO_RANCH policy<{'amd64': 'm'}> +CONFIG_FB_INTEL policy<{'amd64': 'm'}> +CONFIG_FB_INTEL_DEBUG policy<{'amd64': 'n'}> +CONFIG_FB_INTEL_I2C policy<{'amd64': 'y'}> +CONFIG_FB_ATY128 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'n'}> +CONFIG_FB_ATY128_BACKLIGHT policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_FB_S3 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'n'}> +CONFIG_FB_S3_DDC policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_FB_SAVAGE policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'n'}> +CONFIG_FB_SAVAGE_I2C policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_FB_SAVAGE_ACCEL policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n'}> +CONFIG_FB_SIS policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'n'}> +CONFIG_FB_SIS_300 policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_FB_SIS_315 policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_FB_VIA policy<{'amd64': 'm'}> +CONFIG_FB_VIA_DIRECT_PROCFS policy<{'amd64': 'n'}> +CONFIG_FB_VIA_X_COMPATIBILITY policy<{'amd64': 'y'}> +CONFIG_FB_NEOMAGIC policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'n'}> +CONFIG_FB_KYRO policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'n'}> +CONFIG_FB_3DFX policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'n'}> +CONFIG_FB_3DFX_ACCEL policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n'}> +CONFIG_FB_3DFX_I2C policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n'}> +CONFIG_FB_VOODOO1 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'n'}> +CONFIG_FB_VT8623 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'n'}> +CONFIG_FB_TRIDENT policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'n'}> +CONFIG_FB_ARK policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'n'}> +CONFIG_FB_PM3 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'n'}> +CONFIG_FB_CARMINE policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'n'}> +CONFIG_FB_SH_MOBILE_LCDC policy<{'arm64': 'm', 'armhf': 'm'}> +CONFIG_FB_TMIO policy<{'armhf': 'm'}> +CONFIG_FB_TMIO_ACCELL policy<{'armhf': 'y'}> +CONFIG_FB_SM501 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_FB_SMSCUFX policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_FB_UDL policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_FB_IBM_GXT4500 policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'y', 's390x': 'n'}> +CONFIG_FB_XILINX policy<{'arm64': 'm'}> +CONFIG_FB_DA8XX policy<{'armhf-generic': 'm'}> +CONFIG_FB_VIRTUAL policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n', 's390x': 'n'}> +CONFIG_XEN_FBDEV_FRONTEND policy<{'amd64': 'm', 'arm64': 'm'}> +CONFIG_FB_METRONOME policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'n'}> +CONFIG_FB_MB862XX policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'n'}> +CONFIG_FB_MB862XX_I2C policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_FB_MX3 policy<{'arm64': 'y', 'armhf-generic': 'y'}> +CONFIG_FB_HYPERV policy<{'amd64': 'm'}> +CONFIG_FB_SIMPLE policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'n'}> +CONFIG_FB_SSD1307 policy<{'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_FB_SM712 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'n'}> +# +CONFIG_FB_VIRTUAL flag + +# Menu: Device Drivers >> Graphics support >> Frame buffer Devices >> Support for frame buffer devices >> AMD Geode family framebuffer support + +# Menu: Device Drivers >> Graphics support >> Frame buffer Devices >> Support for frame buffer devices >> ATI Mach64 display support +CONFIG_FB_ATY policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'n'}> +CONFIG_FB_ATY_CT policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_FB_ATY_GENERIC_LCD policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n'}> +CONFIG_FB_ATY_GX policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_FB_ATY_BACKLIGHT policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> + +# Menu: Device Drivers >> Graphics support >> Frame buffer Devices >> Support for frame buffer devices >> ATI Radeon display support +CONFIG_FB_RADEON policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'n'}> +CONFIG_FB_RADEON_I2C policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_FB_RADEON_BACKLIGHT policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_FB_RADEON_DEBUG policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n'}> + +# Menu: Device Drivers >> Graphics support >> Frame buffer Devices >> Support for frame buffer devices >> Amiga native chipset support + +# Menu: Device Drivers >> Graphics support >> Frame buffer Devices >> Support for frame buffer devices >> DRAM timing +CONFIG_FB_CARMINE_DRAM_EVAL policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_CARMINE_DRAM_CUSTOM policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n'}> + +# Menu: Device Drivers >> Graphics support >> Frame buffer Devices >> Support for frame buffer devices >> Framebuffer foreign endianness support +CONFIG_FB_FOREIGN_ENDIAN policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n', 's390x': 'n'}> + +# Menu: Device Drivers >> Graphics support >> Frame buffer Devices >> Support for frame buffer devices >> Framebuffer foreign endianness support >> Choice endianness support + +# Menu: Device Drivers >> Graphics support >> Frame buffer Devices >> Support for frame buffer devices >> GDC variant +CONFIG_FB_MB862XX_PCI_GDC policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_FB_MB862XX_LIME policy<{'ppc64el': 'n'}> + +# Menu: Device Drivers >> Graphics support >> Frame buffer Devices >> Support for frame buffer devices >> Matrox acceleration +CONFIG_FB_MATROX policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'n'}> +CONFIG_FB_MATROX_MILLENIUM policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_FB_MATROX_MYSTIQUE policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_FB_MATROX_G policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_FB_MATROX_I2C policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_FB_MATROX_MAVEN policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> + +# Menu: Device Drivers >> Graphics support >> Frame buffer Devices >> Support for frame buffer devices >> OMAP frame buffer support + +# Menu: Device Drivers >> Graphics support >> Frame buffer Devices >> Support for frame buffer devices >> OMAP2+ frame buffer support +CONFIG_FB_OMAP2 policy<{'armhf': 'm'}> +CONFIG_FB_OMAP2_DEBUG_SUPPORT policy<{'armhf': 'n'}> +CONFIG_FB_OMAP2_NUM_FBS policy<{'armhf': '3'}> +CONFIG_FB_OMAP2_DSS_DEBUG policy<{'armhf': 'n'}> +CONFIG_FB_OMAP2_DSS_DEBUGFS policy<{'armhf': 'n'}> +CONFIG_FB_OMAP2_DSS_DPI policy<{'armhf': 'y'}> +CONFIG_FB_OMAP2_DSS_VENC policy<{'armhf': 'y'}> +CONFIG_FB_OMAP4_DSS_HDMI policy<{'armhf': 'y'}> +CONFIG_FB_OMAP5_DSS_HDMI policy<{'armhf': 'n'}> +CONFIG_FB_OMAP2_DSS_SDI policy<{'armhf': 'n'}> +CONFIG_FB_OMAP2_DSS_DSI policy<{'armhf': 'n'}> +CONFIG_FB_OMAP2_DSS_MIN_FCK_PER_PCK policy<{'armhf': '0'}> +CONFIG_FB_OMAP2_DSS_SLEEP_AFTER_VENC_RESET policy<{'armhf': 'y'}> + +# Menu: Device Drivers >> Graphics support >> Frame buffer Devices >> Support for frame buffer devices >> OMAP2+ frame buffer support >> OMAPFB Panel and Encoder Drivers +CONFIG_FB_OMAP2_ENCODER_OPA362 policy<{'armhf': 'n'}> +CONFIG_FB_OMAP2_ENCODER_TFP410 policy<{'armhf': 'n'}> +CONFIG_FB_OMAP2_ENCODER_TPD12S015 policy<{'armhf': 'n'}> +CONFIG_FB_OMAP2_CONNECTOR_DVI policy<{'armhf': 'n'}> +CONFIG_FB_OMAP2_CONNECTOR_HDMI policy<{'armhf': 'n'}> +CONFIG_FB_OMAP2_CONNECTOR_ANALOG_TV policy<{'armhf': 'n'}> +CONFIG_FB_OMAP2_PANEL_DPI policy<{'armhf': 'n'}> +CONFIG_FB_OMAP2_PANEL_DSI_CM policy<{'armhf': 'n'}> +CONFIG_FB_OMAP2_PANEL_LGPHILIPS_LB035Q02 policy<{'armhf': 'n'}> + +# Menu: Device Drivers >> Graphics support >> Frame buffer Devices >> Support for frame buffer devices >> PXA LCD framebuffer support + +# Menu: Device Drivers >> Graphics support >> Frame buffer Devices >> Support for frame buffer devices >> SBUS and UPA framebuffers + +# Menu: Device Drivers >> Graphics support >> Frame buffer Devices >> Support for frame buffer devices >> nVidia Framebuffer Support +CONFIG_FB_NVIDIA policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'n'}> +CONFIG_FB_NVIDIA_I2C policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_FB_NVIDIA_DEBUG policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n'}> +CONFIG_FB_NVIDIA_BACKLIGHT policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> + +# Menu: Device Drivers >> Graphics support >> Frame buffer Devices >> Support for frame buffer devices >> nVidia Riva support +CONFIG_FB_RIVA policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'n'}> +CONFIG_FB_RIVA_I2C policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_FB_RIVA_DEBUG policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n'}> +CONFIG_FB_RIVA_BACKLIGHT policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> + +# Menu: Device Drivers >> Greybus support +CONFIG_GREYBUS policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'n'}> +CONFIG_GREYBUS_ES2 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> + +# Menu: Device Drivers >> HDMI CEC drivers +CONFIG_MEDIA_CEC_SUPPORT policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_CEC_CROS_EC policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm'}> +CONFIG_CEC_MESON_AO policy<{'arm64': 'm', 'armhf': 'm'}> +CONFIG_CEC_MESON_G12A_AO policy<{'arm64': 'm', 'armhf': 'm'}> +CONFIG_CEC_GPIO policy<{'amd64-lowlatency': 'm'}> +CONFIG_CEC_SAMSUNG_S5P policy<{'armhf': 'm'}> +CONFIG_CEC_TEGRA policy<{'armhf-generic': 'm'}> +CONFIG_CEC_SECO policy<{'amd64': 'm'}> +CONFIG_CEC_SECO_RC policy<{'amd64': 'y'}> +CONFIG_USB_PULSE8_CEC policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_USB_RAINSHADOW_CEC policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> + +# Menu: Device Drivers >> HID support + +# Menu: Device Drivers >> HID support >> HID bus support +CONFIG_HID policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'n'}> +CONFIG_HID_BATTERY_STRENGTH policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_HIDRAW policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_UHID policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_HID_GENERIC policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> + +# Menu: Device Drivers >> HID support >> HID bus support >> Special HID drivers +CONFIG_HID_A4TECH policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_HID_ACCUTOUCH policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_HID_ACRUX policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_HID_ACRUX_FF policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_HID_APPLE policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_HID_APPLEIR policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_HID_ASUS policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_HID_AUREAL policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_HID_BELKIN policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_HID_BETOP_FF policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_HID_BIGBEN_FF policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_HID_CHERRY policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_HID_CHICONY policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_HID_CORSAIR policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_HID_COUGAR policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_HID_MACALLY policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_HID_PRODIKEYS policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_HID_CMEDIA policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_HID_CP2112 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_HID_CREATIVE_SB0540 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_HID_CYPRESS policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_HID_DRAGONRISE policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_DRAGONRISE_FF policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_HID_EMS_FF policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_HID_ELAN policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_HID_ELECOM policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_HID_ELO policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_HID_EZKEY policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_HID_GEMBIRD policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_HID_GFRM policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_HID_GLORIOUS policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_HID_HOLTEK policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_HOLTEK_FF policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_HID_GOOGLE_HAMMER policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm'}> +CONFIG_HID_GT683R policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_HID_KEYTOUCH policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_HID_KYE policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_HID_UCLOGIC policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_HID_WALTOP policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_HID_VIEWSONIC policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_HID_GYRATION policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_HID_ICADE policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_HID_ITE policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_HID_JABRA policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_HID_TWINHAN policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_HID_KENSINGTON policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_HID_LCPOWER policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_HID_LED policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_HID_LENOVO policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_HID_MAGICMOUSE policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_HID_MALTRON policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_HID_MAYFLASH policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_HID_REDRAGON policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_HID_MICROSOFT policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_HID_MONTEREY policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_HID_MULTITOUCH policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_HID_NTI policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_HID_NTRIG policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_HID_ORTEK policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_HID_PANTHERLORD policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_PANTHERLORD_FF policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_HID_PENMOUNT policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_HID_PETALYNX policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_HID_PLANTRONICS policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_HID_PRIMAX policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_HID_RETRODE policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_HID_ROCCAT policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_HID_SAITEK policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_HID_SAMSUNG policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_HID_SONY policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SONY_FF policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_HID_SPEEDLINK policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_HID_STEAM policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_HID_STEELSERIES policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_HID_SUNPLUS policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_HID_RMI policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_HID_GREENASIA policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_GREENASIA_FF policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_HID_HYPERV_MOUSE policy<{'amd64': 'm'}> +CONFIG_HID_SMARTJOYPLUS policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SMARTJOYPLUS_FF policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_HID_TIVO policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_HID_TOPSEED policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_HID_THINGM policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_HID_THRUSTMASTER policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_THRUSTMASTER_FF policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_HID_UDRAW_PS3 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_HID_U2FZERO policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_HID_WACOM policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_HID_WIIMOTE policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_HID_XINMO policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_HID_ZEROPLUS policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_ZEROPLUS_FF policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_HID_ZYDACRON policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_HID_SENSOR_HUB policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_HID_SENSOR_CUSTOM_SENSOR policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_HID_ALPS policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_HID_MCP2221 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> + +# Menu: Device Drivers >> HID support >> HID bus support >> Special HID drivers >> Logitech devices +CONFIG_HID_LOGITECH policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_HID_LOGITECH_DJ policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_HID_LOGITECH_HIDPP policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_LOGITECH_FF policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_LOGIRUMBLEPAD2_FF policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_LOGIG940_FF policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_LOGIWHEELS_FF policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> + +# Menu: Device Drivers >> HID support >> HID bus support >> Special HID drivers >> PicoLCD (graphic version) +CONFIG_HID_PICOLCD policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_HID_PICOLCD_FB policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_HID_PICOLCD_BACKLIGHT policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_HID_PICOLCD_LCD policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_HID_PICOLCD_LEDS policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_HID_PICOLCD_CIR policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> + +# Menu: Device Drivers >> HID support >> I2C HID support +CONFIG_I2C_HID policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'n'}> + +# Menu: Device Drivers >> HID support >> Intel ISH HID support +CONFIG_INTEL_ISH_HID policy<{'amd64': 'm'}> +CONFIG_INTEL_ISH_FIRMWARE_DOWNLOADER policy<{'amd64': 'm'}> + +# Menu: Device Drivers >> HID support >> USB HID support +CONFIG_USB_HID policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_HID_PID policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_USB_HIDDEV policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> + +# Menu: Device Drivers >> HID support >> USB HID support >> USB HID Boot Protocol drivers +CONFIG_USB_KBD policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_USB_MOUSE policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> + +# Menu: Device Drivers >> HSI support +CONFIG_HSI policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'n'}> +CONFIG_OMAP_SSI policy<{'armhf-generic': 'm'}> +CONFIG_NOKIA_MODEM policy<{'armhf-generic': 'm'}> +CONFIG_CMT_SPEECH policy<{'armhf-generic': 'm'}> +CONFIG_SSI_PROTOCOL policy<{'armhf-generic': 'm'}> +CONFIG_HSI_CHAR policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> + +# Menu: Device Drivers >> HW tracing support + +# Menu: Device Drivers >> HW tracing support >> Intel(R) Trace Hub controller +CONFIG_INTEL_TH policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_INTEL_TH_PCI policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_INTEL_TH_ACPI policy<{'amd64': 'm', 'arm64': 'm'}> +CONFIG_INTEL_TH_GTH policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_INTEL_TH_STH policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_INTEL_TH_MSU policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_INTEL_TH_PTI policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_INTEL_TH_DEBUG policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n', 's390x': 'n'}> + +# Menu: Device Drivers >> HW tracing support >> System Trace Module devices +CONFIG_STM policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_STM_PROTO_BASIC policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_STM_PROTO_SYS_T policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_STM_DUMMY policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_STM_SOURCE_CONSOLE policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_STM_SOURCE_HEARTBEAT policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_STM_SOURCE_FTRACE policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> + +# Menu: Device Drivers >> Hardware Monitoring support +CONFIG_HWMON policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'n'}> +CONFIG_HWMON_DEBUG_CHIP policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n'}> +CONFIG_SENSORS_ABITUGURU policy<{'amd64': 'm'}> +CONFIG_SENSORS_ABITUGURU3 policy<{'amd64': 'm'}> +CONFIG_SENSORS_AD7314 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SENSORS_AD7414 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SENSORS_AD7418 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SENSORS_ADM1021 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SENSORS_ADM1025 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SENSORS_ADM1026 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SENSORS_ADM1029 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SENSORS_ADM1031 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SENSORS_ADM1177 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SENSORS_ADM9240 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SENSORS_ADT7310 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SENSORS_ADT7410 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SENSORS_ADT7411 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SENSORS_ADT7462 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SENSORS_ADT7470 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SENSORS_ADT7475 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SENSORS_AS370 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SENSORS_ASC7621 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SENSORS_AXI_FAN_CONTROL policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SENSORS_K8TEMP policy<{'amd64': 'm'}> +CONFIG_SENSORS_K10TEMP policy<{'amd64': 'm'}> +CONFIG_SENSORS_FAM15H_POWER policy<{'amd64': 'm'}> +CONFIG_SENSORS_AMD_ENERGY policy<{'amd64': 'm'}> +CONFIG_SENSORS_APPLESMC policy<{'amd64': 'm'}> +CONFIG_SENSORS_ARM_SCMI policy<{'arm64': 'm', 'armhf': 'm'}> +CONFIG_SENSORS_ARM_SCPI policy<{'arm64': 'm', 'armhf': 'm'}> +CONFIG_SENSORS_ASB100 policy<{'amd64': 'm'}> +CONFIG_SENSORS_ASPEED policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SENSORS_ATXP1 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SENSORS_DRIVETEMP policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SENSORS_DS620 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SENSORS_DS1621 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SENSORS_DELL_SMM policy<{'amd64': 'm'}> +CONFIG_SENSORS_DA9052_ADC policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SENSORS_DA9055 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SENSORS_I5K_AMB policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SENSORS_F71805F policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm'}> +CONFIG_SENSORS_F71882FG policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm'}> +CONFIG_SENSORS_F75375S policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SENSORS_GSC policy<{'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SENSORS_MC13783_ADC policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SENSORS_FSCHMD policy<{'amd64': 'm'}> +CONFIG_SENSORS_FTSTEUTATES policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SENSORS_GL518SM policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SENSORS_GL520SM policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SENSORS_G760A policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SENSORS_G762 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SENSORS_GPIO_FAN policy<{'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SENSORS_HIH6130 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SENSORS_IBMAEM policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SENSORS_IBMPEX policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SENSORS_IBMPOWERNV policy<{'ppc64el': 'm'}> +CONFIG_SENSORS_IIO_HWMON policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SENSORS_I5500 policy<{'amd64': 'm'}> +CONFIG_SENSORS_CORETEMP policy<{'amd64': 'm'}> +CONFIG_SENSORS_IT87 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm'}> +CONFIG_SENSORS_JC42 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SENSORS_POWR1220 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SENSORS_LINEAGE policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SENSORS_LOCHNAGAR policy<{'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SENSORS_LTC2945 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SENSORS_LTC2947_I2C policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SENSORS_LTC2947_SPI policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SENSORS_LTC2990 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SENSORS_LTC4151 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SENSORS_LTC4215 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SENSORS_LTC4222 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SENSORS_LTC4245 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SENSORS_LTC4260 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SENSORS_LTC4261 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SENSORS_MAX1111 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SENSORS_MAX16065 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SENSORS_MAX1619 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SENSORS_MAX1668 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SENSORS_MAX197 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SENSORS_MAX31722 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SENSORS_MAX31730 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SENSORS_MAX6621 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SENSORS_MAX6639 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SENSORS_MAX6642 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SENSORS_MAX6650 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SENSORS_MAX6697 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SENSORS_MAX31790 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SENSORS_MCP3021 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SENSORS_MLXREG_FAN policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm'}> +CONFIG_SENSORS_TC654 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SENSORS_MENF21BMC_HWMON policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SENSORS_ADCXX policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SENSORS_LM63 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SENSORS_LM70 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SENSORS_LM73 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SENSORS_LM75 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SENSORS_LM77 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SENSORS_LM78 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SENSORS_LM80 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SENSORS_LM83 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SENSORS_LM85 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SENSORS_LM87 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SENSORS_LM90 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SENSORS_LM92 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SENSORS_LM93 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SENSORS_LM95234 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SENSORS_LM95241 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SENSORS_LM95245 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SENSORS_PC87360 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm'}> +CONFIG_SENSORS_PC87427 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm'}> +CONFIG_SENSORS_NTC_THERMISTOR policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SENSORS_NCT6683 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm'}> +CONFIG_SENSORS_NCT6775 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm'}> +CONFIG_SENSORS_NCT7802 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SENSORS_NCT7904 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SENSORS_NPCM7XX policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SENSORS_OCC_P8_I2C policy<{'arm64': 'n', 'armhf': 'n'}> +CONFIG_SENSORS_OCC_P9_SBE policy<{'arm64': 'n', 'armhf': 'n'}> +CONFIG_SENSORS_PCF8591 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SENSORS_PWM_FAN policy<{'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SENSORS_RASPBERRYPI_HWMON policy<{'arm64': 'm'}> +CONFIG_SENSORS_SHT15 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SENSORS_SHT21 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SENSORS_SHT3x policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SENSORS_SHTC1 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SENSORS_SIS5595 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SENSORS_DME1737 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm'}> +CONFIG_SENSORS_EMC1403 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SENSORS_EMC2103 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SENSORS_EMC6W201 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SENSORS_SMSC47M1 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm'}> +CONFIG_SENSORS_SMSC47M192 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SENSORS_SMSC47B397 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm'}> +CONFIG_SENSORS_SCH5627 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm'}> +CONFIG_SENSORS_SCH5636 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm'}> +CONFIG_SENSORS_STTS751 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SENSORS_SMM665 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SENSORS_ADC128D818 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SENSORS_ADS7828 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SENSORS_ADS7871 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SENSORS_AMC6821 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SENSORS_INA209 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SENSORS_INA2XX policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SENSORS_INA3221 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SENSORS_TC74 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SENSORS_THMC50 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SENSORS_TMP102 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SENSORS_TMP103 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SENSORS_TMP108 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SENSORS_TMP401 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SENSORS_TMP421 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SENSORS_TMP513 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SENSORS_VEXPRESS policy<{'arm64': 'm', 'armhf': 'm'}> +CONFIG_SENSORS_VIA_CPUTEMP policy<{'amd64': 'm'}> +CONFIG_SENSORS_VIA686A policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SENSORS_VT1211 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm'}> +CONFIG_SENSORS_VT8231 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SENSORS_W83773G policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SENSORS_W83781D policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SENSORS_W83791D policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SENSORS_W83792D policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SENSORS_W83793 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SENSORS_W83795 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SENSORS_W83795_FANCTRL policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n'}> +CONFIG_SENSORS_W83L785TS policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SENSORS_W83L786NG policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SENSORS_W83627HF policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm'}> +CONFIG_SENSORS_W83627EHF policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm'}> +CONFIG_SENSORS_WM831X policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SENSORS_WM8350 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SENSORS_XGENE policy<{'amd64': 'm', 'arm64': 'm'}> +CONFIG_SENSORS_ACPI_POWER policy<{'amd64': 'm', 'arm64': 'm'}> +CONFIG_SENSORS_ATK0110 policy<{'amd64': 'm'}> + +# Menu: Device Drivers >> Hardware Monitoring support >> PMBus support +CONFIG_PMBUS policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SENSORS_PMBUS policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SENSORS_ADM1275 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SENSORS_BEL_PFE policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SENSORS_IBM_CFFPS policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SENSORS_INSPUR_IPSPS policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SENSORS_IR35221 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SENSORS_IR38064 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SENSORS_IRPS5401 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SENSORS_ISL68137 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SENSORS_LM25066 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SENSORS_LTC2978 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SENSORS_LTC2978_REGULATOR policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_SENSORS_LTC3815 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SENSORS_MAX16064 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SENSORS_MAX16601 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SENSORS_MAX20730 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SENSORS_MAX20751 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SENSORS_MAX31785 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SENSORS_MAX34440 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SENSORS_MAX8688 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SENSORS_PXE1610 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SENSORS_TPS40422 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SENSORS_TPS53679 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SENSORS_UCD9000 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SENSORS_UCD9200 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SENSORS_XDPE122 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SENSORS_ZL6100 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> + +# Menu: Device Drivers >> Hardware Spinlock drivers +CONFIG_HWSPINLOCK policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'n'}> +CONFIG_HWSPINLOCK_OMAP policy<{'arm64': 'm', 'armhf': 'm'}> +CONFIG_HWSPINLOCK_QCOM policy<{'arm64': 'm', 'armhf': 'm'}> +CONFIG_HWSPINLOCK_SPRD policy<{'arm64': 'm'}> + +# Menu: Device Drivers >> I2C support + +# Menu: Device Drivers >> I2C support >> I2C support +CONFIG_I2C policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'm'}> +CONFIG_ACPI_I2C_OPREGION policy<{'amd64': 'y', 'arm64': 'y'}> +CONFIG_I2C_COMPAT policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_I2C_CHARDEV policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'm'}> +CONFIG_I2C_MUX policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_I2C_HELPER_AUTO policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_I2C_SMBUS policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_I2C_STUB policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_I2C_SLAVE policy<{'amd64': 'n', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'n', 's390x': 'n'}> +CONFIG_I2C_SLAVE_EEPROM policy<{'arm64': 'm', 'armhf': 'm'}> +CONFIG_I2C_DEBUG_CORE policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n', 's390x': 'n'}> +CONFIG_I2C_DEBUG_ALGO policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n', 's390x': 'n'}> +CONFIG_I2C_DEBUG_BUS policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n', 's390x': 'n'}> +# +CONFIG_I2C_CHARDEV note + +# Menu: Device Drivers >> I2C support >> I2C support >> I2C Algorithms +CONFIG_I2C_ALGOBIT policy<{'amd64': 'm', 'arm64-generic': 'm', 'arm64-generic-64k': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_I2C_ALGOPCA policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> + +# Menu: Device Drivers >> I2C support >> I2C support >> I2C Hardware Bus support +CONFIG_I2C_ALI1535 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'n'}> +CONFIG_I2C_ALI1563 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'n'}> +CONFIG_I2C_ALI15X3 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'n'}> +CONFIG_I2C_AMD756 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'n'}> +CONFIG_I2C_AMD756_S4882 policy<{'amd64': 'm'}> +CONFIG_I2C_AMD8111 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'n'}> +CONFIG_I2C_AMD_MP2 policy<{'amd64': 'm', 'arm64': 'n'}> +CONFIG_I2C_HIX5HD2 policy<{'arm64': 'm', 'armhf': 'm'}> +CONFIG_I2C_I801 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'n'}> +CONFIG_I2C_ISCH policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'n'}> +CONFIG_I2C_ISMT policy<{'amd64': 'm'}> +CONFIG_I2C_PIIX4 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'n'}> +CONFIG_I2C_CHT_WC policy<{'amd64': 'm'}> +CONFIG_I2C_NFORCE2 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'n'}> +CONFIG_I2C_NFORCE2_S4985 policy<{'amd64': 'm'}> +CONFIG_I2C_NVIDIA_GPU policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'n'}> +CONFIG_I2C_SIS5595 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'n'}> +CONFIG_I2C_SIS630 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'n'}> +CONFIG_I2C_SIS96X policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'n'}> +CONFIG_I2C_VIA policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'n'}> +CONFIG_I2C_VIAPRO policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'n'}> +CONFIG_I2C_SCMI policy<{'amd64': 'm', 'arm64': 'm'}> +CONFIG_I2C_ASPEED policy<{'armhf': 'm'}> +CONFIG_I2C_AXXIA policy<{'armhf-generic-lpae': 'm'}> +CONFIG_I2C_BCM2835 policy<{'arm64': 'm'}> +CONFIG_I2C_BCM_IPROC policy<{'arm64': 'm'}> +CONFIG_I2C_BRCMSTB policy<{'arm64': 'm'}> +CONFIG_I2C_CADENCE policy<{'arm64': 'n'}> +CONFIG_I2C_CBUS_GPIO policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'n'}> +CONFIG_I2C_DESIGNWARE_SLAVE policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n'}> +CONFIG_I2C_DESIGNWARE_PLATFORM policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'n'}> +CONFIG_I2C_DESIGNWARE_BAYTRAIL policy<{'amd64': 'y'}> +CONFIG_I2C_DESIGNWARE_PCI policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'n'}> +CONFIG_I2C_EMEV2 policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'm', 'ppc64el': 'n'}> +CONFIG_I2C_EXYNOS5 policy<{'armhf': 'm'}> +CONFIG_I2C_GPIO policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'n'}> +CONFIG_I2C_GPIO_FAULT_INJECTOR policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n'}> +CONFIG_I2C_IMX policy<{'arm64': 'm', 'armhf-generic': 'y'}> +CONFIG_I2C_IMX_LPI2C policy<{'arm64': 'm', 'armhf-generic': 'm'}> +CONFIG_I2C_KEMPLD policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_I2C_MESON policy<{'arm64': 'm', 'armhf': 'm'}> +CONFIG_I2C_MPC policy<{'ppc64el': 'm'}> +CONFIG_I2C_MT65XX policy<{'arm64': 'm', 'armhf': 'm'}> +CONFIG_I2C_MV64XXX policy<{'arm64': 'm', 'armhf': 'm'}> +CONFIG_I2C_NOMADIK policy<{'arm64': 'm', 'armhf': 'm'}> +CONFIG_I2C_NPCM7XX policy<{'armhf': 'm'}> +CONFIG_I2C_OCORES policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'n'}> +CONFIG_I2C_OMAP policy<{'arm64': 'y', 'armhf': 'y'}> +CONFIG_I2C_OWL policy<{'arm64': 'm', 'armhf': 'm'}> +CONFIG_I2C_PCA_PLATFORM policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'n'}> +CONFIG_I2C_PXA policy<{'arm64': 'm', 'armhf': 'm'}> +CONFIG_I2C_PXA_SLAVE policy<{'arm64': 'y', 'armhf': 'y'}> +CONFIG_I2C_QCOM_CCI policy<{'arm64': 'm', 'armhf': 'm'}> +CONFIG_I2C_QCOM_GENI policy<{'arm64': 'm', 'armhf': 'm'}> +CONFIG_I2C_QUP policy<{'arm64': 'm', 'armhf': 'm'}> +CONFIG_I2C_RIIC policy<{'arm64': 'm', 'armhf': 'm'}> +CONFIG_I2C_RK3X policy<{'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_I2C_S3C2410 policy<{'armhf': 'y'}> +CONFIG_I2C_SH_MOBILE policy<{'arm64': 'm', 'armhf': 'm'}> +CONFIG_I2C_SIMTEC policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'n'}> +CONFIG_I2C_SPRD policy<{'arm64': 'y'}> +CONFIG_I2C_SYNQUACER policy<{'arm64': 'm'}> +CONFIG_I2C_TEGRA policy<{'armhf-generic': 'm'}> +CONFIG_I2C_TEGRA_BPMP policy<{'armhf-generic': 'm'}> +CONFIG_I2C_UNIPHIER policy<{'armhf': 'n'}> +CONFIG_I2C_UNIPHIER_F policy<{'armhf': 'n'}> +CONFIG_I2C_VERSATILE policy<{'arm64': 'm', 'armhf': 'm'}> +CONFIG_I2C_THUNDERX policy<{'arm64': 'm'}> +CONFIG_I2C_XILINX policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'n'}> +CONFIG_I2C_XLP9XX policy<{'arm64': 'm'}> +CONFIG_I2C_RCAR policy<{'arm64': 'm', 'armhf': 'm'}> +CONFIG_I2C_DIOLAN_U2C policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_I2C_DLN2 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_I2C_PARPORT policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_I2C_ROBOTFUZZ_OSIF policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_I2C_TAOS_EVM policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'n'}> +CONFIG_I2C_TINY_USB policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_I2C_VIPERBOARD policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_I2C_MLXCPLD policy<{'amd64': 'm'}> +CONFIG_I2C_CROS_EC_TUNNEL policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm'}> +CONFIG_I2C_XGENE_SLIMPRO policy<{'arm64': 'm'}> +CONFIG_I2C_OPAL policy<{'ppc64el': 'y'}> +CONFIG_I2C_FSI policy<{'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> + +# Menu: Device Drivers >> I2C support >> I2C support >> Multiplexer I2C Chip support +CONFIG_I2C_ARB_GPIO_CHALLENGE policy<{'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_I2C_MUX_GPIO policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'n'}> +CONFIG_I2C_MUX_GPMUX policy<{'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_I2C_MUX_LTC4306 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'n'}> +CONFIG_I2C_MUX_PCA9541 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'n'}> +CONFIG_I2C_MUX_PCA954x policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'n'}> +CONFIG_I2C_MUX_PINCTRL policy<{'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_I2C_MUX_REG policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'n'}> +CONFIG_I2C_DEMUX_PINCTRL policy<{'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_I2C_MUX_MLXCPLD policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'n'}> + +# Menu: Device Drivers >> I3C support +CONFIG_I3C policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'n'}> +CONFIG_CDNS_I3C_MASTER policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_DW_I3C_MASTER policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> + +# Menu: Device Drivers >> IEEE 1394 (FireWire) support +CONFIG_FIREWIRE_NOSY policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'n'}> + +# Menu: Device Drivers >> IEEE 1394 (FireWire) support >> FireWire driver stack +CONFIG_FIREWIRE policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'n'}> +CONFIG_FIREWIRE_OHCI policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_FIREWIRE_SBP2 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_FIREWIRE_NET policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> + +# Menu: Device Drivers >> IOMMU Hardware Support +CONFIG_IOMMU_SUPPORT policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_IOMMU_DEBUGFS policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n', 's390x': 'n'}> +CONFIG_IOMMU_DEFAULT_PASSTHROUGH policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n', 's390x': 'n'}> +CONFIG_MSM_IOMMU policy<{'armhf': 'n'}> +CONFIG_AMD_IOMMU policy<{'amd64': 'y'}> +CONFIG_AMD_IOMMU_V2 policy<{'amd64': 'm'}> +CONFIG_IRQ_REMAP policy<{'amd64': 'y'}> +CONFIG_OMAP_IOMMU policy<{'armhf': 'y'}> +CONFIG_OMAP_IOMMU_DEBUG policy<{'armhf': 'n'}> +CONFIG_ROCKCHIP_IOMMU policy<{'arm64': 'y', 'armhf': 'y'}> +CONFIG_SUN50I_IOMMU policy<{'arm64': 'y'}> +CONFIG_TEGRA_IOMMU_GART policy<{'armhf-generic': 'y'}> +CONFIG_TEGRA_IOMMU_SMMU policy<{'armhf-generic': 'y'}> +CONFIG_EXYNOS_IOMMU policy<{'armhf': 'y'}> +CONFIG_EXYNOS_IOMMU_DEBUG policy<{'armhf': 'n'}> +CONFIG_IPMMU_VMSA policy<{'arm64': 'n', 'armhf': 'y'}> +CONFIG_SPAPR_TCE_IOMMU policy<{'ppc64el': 'y'}> +CONFIG_ARM_SMMU policy<{'arm64': 'y', 'armhf': 'n'}> +CONFIG_ARM_SMMU_LEGACY_DT_BINDINGS policy<{'arm64': 'n'}> +CONFIG_ARM_SMMU_DISABLE_BYPASS_BY_DEFAULT policy<{'arm64': 'n'}> +CONFIG_ARM_SMMU_V3 policy<{'arm64': 'y'}> +CONFIG_S390_CCW_IOMMU policy<{'s390x': 'y'}> +CONFIG_S390_AP_IOMMU policy<{'s390x': 'y'}> +CONFIG_MTK_IOMMU policy<{'arm64': 'n', 'armhf': 'n'}> +CONFIG_MTK_IOMMU_V1 policy<{'armhf': 'n'}> +CONFIG_QCOM_IOMMU policy<{'arm64': 'y', 'armhf': 'y'}> +CONFIG_HYPERV_IOMMU policy<{'amd64': 'y'}> +CONFIG_VIRTIO_IOMMU policy<{'arm64': 'y'}> +# +CONFIG_IPMMU_VMSA note +CONFIG_ARM_SMMU_DISABLE_BYPASS_BY_DEFAULT mark note +CONFIG_IOMMU_DEBUGFS mark note + +# Menu: Device Drivers >> IOMMU Hardware Support >> Generic IOMMU Pagetable Support +CONFIG_IOMMU_IO_PGTABLE_LPAE policy<{'arm64': 'y', 'armhf': 'y'}> +CONFIG_IOMMU_IO_PGTABLE_LPAE_SELFTEST policy<{'arm64': 'n', 'armhf': 'n'}> +CONFIG_IOMMU_IO_PGTABLE_ARMV7S policy<{'arm64': 'n', 'armhf': 'n'}> + +# Menu: Device Drivers >> IOMMU Hardware Support >> Support for Intel IOMMU using DMA Remapping Devices +CONFIG_INTEL_IOMMU policy<{'amd64': 'y'}> +CONFIG_INTEL_IOMMU_SVM policy<{'amd64': 'y'}> +CONFIG_INTEL_IOMMU_DEFAULT_ON policy<{'amd64': 'n'}> +CONFIG_INTEL_IOMMU_SCALABLE_MODE_DEFAULT_ON policy<{'amd64': 'n'}> +# +CONFIG_INTEL_IOMMU_DEFAULT_ON note flag + +# Menu: Device Drivers >> IRQ chip support +CONFIG_AL_FIC policy<{'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_RENESAS_INTC_IRQPIN policy<{'armhf': 'y'}> +CONFIG_RENESAS_IRQC policy<{'arm64': 'y', 'armhf': 'y'}> +CONFIG_RENESAS_RZA1_IRQC policy<{'armhf': 'y'}> +CONFIG_TS4800_IRQ policy<{'armhf-generic': 'm'}> +CONFIG_QCOM_IRQ_COMBINER policy<{'arm64': 'y'}> +CONFIG_IRQ_UNIPHIER_AIDET policy<{'armhf': 'y'}> +CONFIG_MESON_IRQ_GPIO policy<{'arm64': 'y', 'armhf': 'y'}> +CONFIG_QCOM_PDC policy<{'arm64': 'y', 'armhf': 'y'}> +CONFIG_IMX_IRQSTEER policy<{'arm64': 'y', 'armhf-generic': 'y'}> +CONFIG_EXYNOS_IRQ_COMBINER policy<{'armhf': 'y'}> + +# Menu: Device Drivers >> ISDN support +CONFIG_ISDN policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> + +# Menu: Device Drivers >> ISDN support >> Modular ISDN driver +CONFIG_MISDN policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_MISDN_DSP policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_MISDN_L1OIP policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_MISDN_HFCPCI policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_MISDN_HFCMULTI policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_MISDN_HFCUSB policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_MISDN_AVMFRITZ policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_MISDN_SPEEDFAX policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_MISDN_INFINEON policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_MISDN_W6692 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_MISDN_NETJET policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> + +# Menu: Device Drivers >> Industrial I/O support +CONFIG_IIO policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'n'}> +CONFIG_IIO_CONFIGFS policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_IIO_TRIGGER policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_IIO_CONSUMERS_PER_TRIGGER policy<{'amd64': '2', 'arm64': '2', 'armhf': '2', 'ppc64el': '2'}> +CONFIG_IIO_SW_DEVICE policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_IIO_SW_TRIGGER policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_IIO_CROS_EC_SENSORS_CORE policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm'}> +CONFIG_IIO_CROS_EC_SENSORS policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm'}> +CONFIG_IIO_CROS_EC_SENSORS_LID_ANGLE policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm'}> + +# Menu: Device Drivers >> Industrial I/O support >> Accelerometers +CONFIG_ADIS16201 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_ADIS16209 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_ADXL372_SPI policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_ADXL372_I2C policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_BMA220 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_BMA400 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_BMC150_ACCEL policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_DA280 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_DA311 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_DMARD06 policy<{'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_DMARD09 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_DMARD10 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_HID_SENSOR_ACCEL_3D policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_IIO_CROS_EC_ACCEL_LEGACY policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm'}> +CONFIG_IIO_ST_ACCEL_3AXIS policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_KXSD9 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_KXSD9_SPI policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_KXSD9_I2C policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_KXCJK1013 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_MC3230 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_MMA7455_I2C policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_MMA7455_SPI policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_MMA7660 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_MMA8452 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_MMA9551 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_MMA9553 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_MXC4005 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_MXC6255 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SCA3000 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_STK8312 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_STK8BA50 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> + +# Menu: Device Drivers >> Industrial I/O support >> Amplifiers +CONFIG_AD8366 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_HMC425 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> + +# Menu: Device Drivers >> Industrial I/O support >> Analog Front Ends +CONFIG_IIO_RESCALE policy<{'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> + +# Menu: Device Drivers >> Industrial I/O support >> Analog to digital converters +CONFIG_AD7091R5 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_AD7124 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_AD7192 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_AD7266 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_AD7291 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_AD7292 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_AD7298 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_AD7476 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_AD7606_IFACE_PARALLEL policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_AD7606_IFACE_SPI policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_AD7766 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_AD7768_1 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_AD7780 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_AD7791 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_AD7793 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_AD7887 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_AD7923 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_AD7949 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_AD799X policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_AD9467 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_ADI_AXI_ADC policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_ASPEED_ADC policy<{'armhf': 'm'}> +CONFIG_AXP20X_ADC policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_AXP288_ADC policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_BCM_IPROC_ADC policy<{'arm64': 'm'}> +CONFIG_BERLIN2_ADC policy<{'arm64': 'm', 'armhf': 'm'}> +CONFIG_CC10001_ADC policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_CPCAP_ADC policy<{'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_DA9150_GPADC policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_DLN2_ADC policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_ENVELOPE_DETECTOR policy<{'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_EXYNOS_ADC policy<{'armhf': 'm'}> +CONFIG_HI8435 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_HX711 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_INA2XX_ADC policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_INTEL_MRFLD_ADC policy<{'amd64': 'm'}> +CONFIG_IMX7D_ADC policy<{'arm64': 'm', 'armhf-generic': 'm'}> +CONFIG_LP8788_ADC policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_LTC2471 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_LTC2485 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_LTC2496 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_LTC2497 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_MAX1027 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_MAX11100 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_MAX1118 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_MAX1241 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_MAX1363 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_MAX9611 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_MCP320X policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_MCP3422 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_MCP3911 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_MEDIATEK_MT6577_AUXADC policy<{'arm64': 'm', 'armhf': 'm'}> +CONFIG_MEN_Z188_ADC policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_MESON_SARADC policy<{'arm64': 'm', 'armhf': 'm'}> +CONFIG_MP2629_ADC policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_NAU7802 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_NPCM_ADC policy<{'armhf': 'm'}> +CONFIG_PALMAS_GPADC policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_QCOM_PM8XXX_XOADC policy<{'armhf': 'm'}> +CONFIG_QCOM_SPMI_IADC policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_QCOM_SPMI_VADC policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_QCOM_SPMI_ADC5 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_RCAR_GYRO_ADC policy<{'armhf': 'm'}> +CONFIG_RN5T618_ADC policy<{'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_ROCKCHIP_SARADC policy<{'arm64': 'm', 'armhf': 'm'}> +CONFIG_SC27XX_ADC policy<{'arm64': 'm'}> +CONFIG_SD_ADC_MODULATOR policy<{'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_STMPE_ADC policy<{'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_STX104 policy<{'amd64': 'm'}> +CONFIG_SUN4I_GPADC policy<{'arm64': 'n'}> +CONFIG_TI_ADC081C policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_TI_ADC0832 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_TI_ADC084S021 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_TI_ADC12138 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_TI_ADC108S102 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_TI_ADC128S052 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_TI_ADC161S626 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_TI_ADS1015 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_TI_ADS7950 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_TI_ADS8344 policy<{'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_TI_ADS8688 policy<{'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_TI_ADS124S08 policy<{'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_TI_AM335X_ADC policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_TI_TLC4541 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_TWL4030_MADC policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_TWL6030_GPADC policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_VF610_ADC policy<{'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_VIPERBOARD_ADC policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_XILINX_XADC policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> + +# Menu: Device Drivers >> Industrial I/O support >> Chemical Sensors +CONFIG_ATLAS_PH_SENSOR policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_ATLAS_EZO_SENSOR policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_BME680 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_CCS811 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_IAQCORE policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_PMS7003 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SENSIRION_SGP30 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SPS30 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_VZ89X policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> + +# Menu: Device Drivers >> Industrial I/O support >> Digital gyroscope sensors +CONFIG_ADIS16080 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_ADIS16130 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_ADIS16136 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_ADIS16260 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_ADXRS450 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_BMG160 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_FXAS21002C policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_HID_SENSOR_GYRO_3D policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_MPU3050_I2C policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_IIO_ST_GYRO_3AXIS policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_ITG3200 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> + +# Menu: Device Drivers >> Industrial I/O support >> Digital potentiometers +CONFIG_AD5272 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_DS1803 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_MAX5432 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_MAX5481 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_MAX5487 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_MCP4018 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_MCP4131 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_MCP4531 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_MCP41010 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_TPL0102 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> + +# Menu: Device Drivers >> Industrial I/O support >> Digital potentiostats +CONFIG_LMP91000 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> + +# Menu: Device Drivers >> Industrial I/O support >> Digital to analog converters +CONFIG_AD5064 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_AD5360 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_AD5380 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_AD5421 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_AD5446 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_AD5449 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_AD5592R policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_AD5593R policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_AD5504 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_AD5624R_SPI policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_AD5686_SPI policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_AD5696_I2C policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_AD5755 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_AD5758 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_AD5761 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_AD5764 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_AD5770R policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_AD5791 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_AD7303 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_AD8801 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_CIO_DAC policy<{'amd64': 'm'}> +CONFIG_DPOT_DAC policy<{'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_DS4424 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_LTC1660 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_LTC2632 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_M62332 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_MAX517 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_MAX5821 policy<{'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_MCP4725 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_MCP4922 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_TI_DAC082S085 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_TI_DAC5571 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_TI_DAC7311 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_TI_DAC7612 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_VF610_DAC policy<{'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> + +# Menu: Device Drivers >> Industrial I/O support >> Enable buffer support within IIO +CONFIG_IIO_BUFFER policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_IIO_BUFFER_CB policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_IIO_BUFFER_HW_CONSUMER policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_IIO_KFIFO_BUF policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> + +# Menu: Device Drivers >> Industrial I/O support >> Frequency Synthesizers DDS/PLL + +# Menu: Device Drivers >> Industrial I/O support >> Frequency Synthesizers DDS/PLL >> Clock Generator/Distribution +CONFIG_AD9523 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> + +# Menu: Device Drivers >> Industrial I/O support >> Frequency Synthesizers DDS/PLL >> Phase-Locked Loop (PLL) frequency synthesizers +CONFIG_ADF4350 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_ADF4371 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> + +# Menu: Device Drivers >> Industrial I/O support >> Health Sensors + +# Menu: Device Drivers >> Industrial I/O support >> Health Sensors >> Heart Rate Monitors +CONFIG_AFE4403 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_AFE4404 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_MAX30100 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_MAX30102 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> + +# Menu: Device Drivers >> Industrial I/O support >> Hid Sensor IIO Common +CONFIG_HID_SENSOR_IIO_COMMON policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_HID_SENSOR_IIO_TRIGGER policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> + +# Menu: Device Drivers >> Industrial I/O support >> Humidity sensors +CONFIG_AM2315 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_DHT11 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_HDC100X policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_HID_SENSOR_HUMIDITY policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_HTS221 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_HTU21 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SI7005 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SI7020 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> + +# Menu: Device Drivers >> Industrial I/O support >> IIO dummy driver +CONFIG_IIO_SIMPLE_DUMMY policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_IIO_SIMPLE_DUMMY_EVENTS policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n'}> +CONFIG_IIO_SIMPLE_DUMMY_BUFFER policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n'}> +# +CONFIG_IIO_SIMPLE_DUMMY_EVENTS note +CONFIG_IIO_SIMPLE_DUMMY_BUFFER note + +# Menu: Device Drivers >> Industrial I/O support >> Inclinometer sensors +CONFIG_HID_SENSOR_INCLINOMETER_3D policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_HID_SENSOR_DEVICE_ROTATION policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> + +# Menu: Device Drivers >> Industrial I/O support >> Inertial measurement units +CONFIG_ADIS16400 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_ADIS16460 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_ADIS16475 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_ADIS16480 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_BMI160_I2C policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_BMI160_SPI policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_FXOS8700_I2C policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_FXOS8700_SPI policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_KMX61 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_INV_MPU6050_I2C policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_INV_MPU6050_SPI policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_IIO_ST_LSM6DSX policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> + +# Menu: Device Drivers >> Industrial I/O support >> Light sensors +CONFIG_ACPI_ALS policy<{'amd64': 'm', 'arm64': 'm'}> +CONFIG_ADJD_S311 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_ADUX1020 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_AL3010 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_AL3320A policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_APDS9300 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_APDS9960 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_BH1750 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_BH1780 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_CM32181 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_CM3232 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_CM3323 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_CM3605 policy<{'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_CM36651 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_IIO_CROS_EC_LIGHT_PROX policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm'}> +CONFIG_GP2AP002 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_GP2AP020A00F policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_IQS621_ALS policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SENSORS_ISL29018 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SENSORS_ISL29028 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_ISL29125 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_HID_SENSOR_ALS policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_HID_SENSOR_PROX policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_JSA1212 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_RPR0521 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SENSORS_LM3533 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_LTR501 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_LV0104CS policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_MAX44000 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_MAX44009 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_NOA1305 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_OPT3001 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_PA12203001 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SI1133 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SI1145 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_STK3310 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_ST_UVIS25 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_TCS3414 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_TCS3472 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SENSORS_TSL2563 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_TSL2583 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_TSL2772 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_TSL4531 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_US5182D policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_VCNL4000 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_VCNL4035 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_VEML6030 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_VEML6070 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_VL6180 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_ZOPT2201 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> + +# Menu: Device Drivers >> Industrial I/O support >> Lightning sensors +CONFIG_AS3935 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> + +# Menu: Device Drivers >> Industrial I/O support >> Linear and angular position sensors +CONFIG_IQS624_POS policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> + +# Menu: Device Drivers >> Industrial I/O support >> Magnetometer sensors +CONFIG_AK8974 policy<{'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_AK8975 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_AK09911 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_BMC150_MAGN_I2C policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_BMC150_MAGN_SPI policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_MAG3110 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_HID_SENSOR_MAGNETOMETER_3D policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_MMC35240 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_IIO_ST_MAGN_3AXIS policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SENSORS_HMC5843_I2C policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SENSORS_HMC5843_SPI policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SENSORS_RM3100_I2C policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SENSORS_RM3100_SPI policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> + +# Menu: Device Drivers >> Industrial I/O support >> Multiplexers +CONFIG_IIO_MUX policy<{'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> + +# Menu: Device Drivers >> Industrial I/O support >> Pressure sensors +CONFIG_ABP060MG policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_BMP280 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_IIO_CROS_EC_BARO policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm'}> +CONFIG_DLHL60D policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_DPS310 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_HID_SENSOR_PRESS policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_HP03 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_ICP10100 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_MPL115_I2C policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_MPL115_SPI policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_MPL3115 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_MS5611 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_MS5611_I2C policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_MS5611_SPI policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_MS5637 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_IIO_ST_PRESS policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_T5403 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_HP206C policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_ZPA2326 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> + +# Menu: Device Drivers >> Industrial I/O support >> Proximity and distance sensors +CONFIG_ISL29501 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_LIDAR_LITE_V2 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_MB1232 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_PING policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_RFD77402 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SRF04 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SX9310 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SX9500 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SRF08 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_VCNL3020 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_VL53L0X_I2C policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> + +# Menu: Device Drivers >> Industrial I/O support >> Resolver to digital converters +CONFIG_AD2S1200 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_AD2S90 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> + +# Menu: Device Drivers >> Industrial I/O support >> SSP Sensor Common +CONFIG_IIO_SSP_SENSORS_COMMONS policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_IIO_SSP_SENSORHUB policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> + +# Menu: Device Drivers >> Industrial I/O support >> Temperature sensors +CONFIG_IQS620AT_TEMP policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_LTC2983 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_MAXIM_THERMOCOUPLE policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_HID_SENSOR_TEMP policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_MLX90614 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_MLX90632 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_TMP006 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_TMP007 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_TSYS01 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_TSYS02D policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_MAX31856 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> + +# Menu: Device Drivers >> Industrial I/O support >> Triggers - standalone +CONFIG_IIO_HRTIMER_TRIGGER policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_IIO_INTERRUPT_TRIGGER policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_IIO_TIGHTLOOP_TRIGGER policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_IIO_SYSFS_TRIGGER policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> + +# Menu: Device Drivers >> IndustryPack bus support +CONFIG_IPACK_BUS policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'n'}> +CONFIG_BOARD_TPCI200 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SERIAL_IPOCTAL policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> + +# Menu: Device Drivers >> InfiniBand support +CONFIG_INFINIBAND policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_INFINIBAND_USER_MAD policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_INFINIBAND_ON_DEMAND_PAGING policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_INFINIBAND_IPOIB policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_INFINIBAND_IPOIB_CM policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_INFINIBAND_IPOIB_DEBUG policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n', 's390x': 'n'}> +CONFIG_INFINIBAND_OPA_VNIC policy<{'amd64': 'm'}> + +# Menu: Device Drivers >> InfiniBand support >> InfiniBand userspace access (verbs and CM) +CONFIG_INFINIBAND_USER_ACCESS policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_INFINIBAND_EXP_LEGACY_VERBS_NEW_UAPI policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n', 's390x': 'n'}> +CONFIG_INFINIBAND_MTHCA policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_INFINIBAND_MTHCA_DEBUG policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n', 's390x': 'n'}> +CONFIG_INFINIBAND_QIB policy<{'amd64': 'm'}> +CONFIG_INFINIBAND_QIB_DCA policy<{'amd64': 'y'}> +CONFIG_INFINIBAND_EFA policy<{'amd64': 'm', 'arm64': 'm', 'ppc64el': 'm'}> +CONFIG_INFINIBAND_I40IW policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_MLX4_INFINIBAND policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_MLX5_INFINIBAND policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_INFINIBAND_OCRDMA policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'n'}> +CONFIG_INFINIBAND_VMWARE_PVRDMA policy<{'amd64': 'm', 'arm64-generic': 'm', 'armhf': 'm'}> +CONFIG_INFINIBAND_USNIC policy<{'amd64': 'm'}> +CONFIG_INFINIBAND_HNS policy<{'arm64': 'm'}> +CONFIG_INFINIBAND_HNS_HIP06 policy<{'arm64': 'y'}> +CONFIG_INFINIBAND_HNS_HIP08 policy<{'arm64': 'y'}> +CONFIG_INFINIBAND_BNXT_RE policy<{'amd64': 'm', 'arm64': 'm', 'ppc64el': 'm', 's390x': 'n'}> +CONFIG_INFINIBAND_HFI1 policy<{'amd64': 'm'}> +CONFIG_HFI1_DEBUG_SDMA_ORDER policy<{'amd64': 'n'}> +CONFIG_SDMA_VERBOSITY policy<{'amd64': 'n'}> +CONFIG_INFINIBAND_QEDR policy<{'amd64': 'm', 'arm64': 'm', 'ppc64el': 'm'}> +CONFIG_INFINIBAND_RDMAVT policy<{'amd64': 'm'}> +CONFIG_RDMA_RXE policy<{'amd64': 'm', 'arm64': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_RDMA_SIW policy<{'amd64': 'm', 'arm64': 'm', 'ppc64el': 'm', 's390x': 'm'}> + +# Menu: Device Drivers >> InfiniBand support >> RDMA/CM +CONFIG_INFINIBAND_ADDR_TRANS policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_INFINIBAND_CXGB4 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_INFINIBAND_SRP policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_INFINIBAND_SRPT policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_INFINIBAND_ISER policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_INFINIBAND_ISERT policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_INFINIBAND_RTRS_CLIENT policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_INFINIBAND_RTRS_SERVER policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> + +# Menu: Device Drivers >> Input device support + +# Menu: Device Drivers >> Input device support >> Generic input layer (needed for keyboard, mouse, ...) +CONFIG_INPUT policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_INPUT_LEDS policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_INPUT_FF_MEMLESS policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'n'}> +CONFIG_INPUT_POLLDEV policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'n'}> +CONFIG_INPUT_SPARSEKMAP policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'n'}> +CONFIG_INPUT_MATRIXKMAP policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'n'}> +CONFIG_INPUT_JOYDEV policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'n'}> +CONFIG_INPUT_EVDEV policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_INPUT_EVBUG policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'n'}> + +# Menu: Device Drivers >> Input device support >> Generic input layer (needed for keyboard, mouse, ...) >> Joysticks/Gamepads +CONFIG_INPUT_JOYSTICK policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'n'}> +CONFIG_JOYSTICK_ANALOG policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_JOYSTICK_A3D policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_JOYSTICK_ADI policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_JOYSTICK_COBRA policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_JOYSTICK_GF2K policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_JOYSTICK_GRIP policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_JOYSTICK_GRIP_MP policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_JOYSTICK_GUILLEMOT policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_JOYSTICK_INTERACT policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_JOYSTICK_SIDEWINDER policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_JOYSTICK_TMDC policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_JOYSTICK_IFORCE policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_JOYSTICK_IFORCE_USB policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_JOYSTICK_IFORCE_232 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_JOYSTICK_WARRIOR policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_JOYSTICK_MAGELLAN policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_JOYSTICK_SPACEORB policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_JOYSTICK_SPACEBALL policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_JOYSTICK_STINGER policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_JOYSTICK_TWIDJOY policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_JOYSTICK_ZHENHUA policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_JOYSTICK_DB9 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_JOYSTICK_GAMECON policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_JOYSTICK_TURBOGRAFX policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_JOYSTICK_AS5011 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_JOYSTICK_JOYDUMP policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_JOYSTICK_XPAD policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_JOYSTICK_XPAD_FF policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_JOYSTICK_XPAD_LEDS policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_JOYSTICK_WALKERA0701 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_JOYSTICK_PSXPAD_SPI policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_JOYSTICK_PSXPAD_SPI_FF policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_JOYSTICK_PXRC policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_JOYSTICK_FSIA6B policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> + +# Menu: Device Drivers >> Input device support >> Generic input layer (needed for keyboard, mouse, ...) >> Keyboards +CONFIG_INPUT_KEYBOARD policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'n'}> +CONFIG_KEYBOARD_ADC policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_KEYBOARD_ADP5520 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_KEYBOARD_ADP5588 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_KEYBOARD_ADP5589 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_KEYBOARD_APPLESPI policy<{'amd64': 'm'}> +CONFIG_KEYBOARD_ATKBD policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_KEYBOARD_QT1050 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_KEYBOARD_QT1070 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_KEYBOARD_QT2160 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_KEYBOARD_DLINK_DIR685 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_KEYBOARD_LKKBD policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_KEYBOARD_GPIO policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_KEYBOARD_GPIO_POLLED policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_KEYBOARD_TCA6416 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_KEYBOARD_TCA8418 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_KEYBOARD_MATRIX policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_KEYBOARD_LM8323 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_KEYBOARD_LM8333 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_KEYBOARD_MAX7359 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_KEYBOARD_MCS policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_KEYBOARD_MPR121 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_KEYBOARD_SNVS_PWRKEY policy<{'arm64': 'm', 'armhf-generic': 'm'}> +CONFIG_KEYBOARD_IMX policy<{'arm64': 'm', 'armhf-generic': 'm'}> +CONFIG_KEYBOARD_IMX_SC_KEY policy<{'arm64': 'm', 'armhf-generic': 'm'}> +CONFIG_KEYBOARD_NEWTON policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_KEYBOARD_TEGRA policy<{'armhf-generic': 'm'}> +CONFIG_KEYBOARD_OPENCORES policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_KEYBOARD_PMIC8XXX policy<{'armhf': 'm'}> +CONFIG_KEYBOARD_SAMSUNG policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_KEYBOARD_STOWAWAY policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_KEYBOARD_SUNKBD policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_KEYBOARD_STMPE policy<{'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_KEYBOARD_SUN4I_LRADC policy<{'arm64': 'n'}> +CONFIG_KEYBOARD_IQS62X policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_KEYBOARD_OMAP4 policy<{'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_KEYBOARD_TC3589X policy<{'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_KEYBOARD_TM2_TOUCHKEY policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_KEYBOARD_TWL4030 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_KEYBOARD_XTKBD policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_KEYBOARD_CROS_EC policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm'}> +CONFIG_KEYBOARD_CAP11XX policy<{'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_KEYBOARD_BCM policy<{'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_KEYBOARD_MTK_PMIC policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> + +# Menu: Device Drivers >> Input device support >> Generic input layer (needed for keyboard, mouse, ...) >> Mice +CONFIG_INPUT_MOUSE policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'n'}> +CONFIG_MOUSE_SERIAL policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_MOUSE_APPLETOUCH policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_MOUSE_BCM5974 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_MOUSE_CYAPA policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_MOUSE_ELAN_I2C policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_MOUSE_ELAN_I2C_I2C policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_MOUSE_ELAN_I2C_SMBUS policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_MOUSE_VSXXXAA policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_MOUSE_GPIO policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_MOUSE_SYNAPTICS_I2C policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_MOUSE_SYNAPTICS_USB policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +# +CONFIG_MOUSE_INPORT note + +# Menu: Device Drivers >> Input device support >> Generic input layer (needed for keyboard, mouse, ...) >> Mice >> PS/2 mouse +CONFIG_MOUSE_PS2 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_MOUSE_PS2_ALPS policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_MOUSE_PS2_BYD policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_MOUSE_PS2_LOGIPS2PP policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_MOUSE_PS2_SYNAPTICS policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_MOUSE_PS2_SYNAPTICS_SMBUS policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_MOUSE_PS2_CYPRESS policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_MOUSE_PS2_LIFEBOOK policy<{'amd64': 'y'}> +CONFIG_MOUSE_PS2_TRACKPOINT policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_MOUSE_PS2_ELANTECH policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_MOUSE_PS2_ELANTECH_SMBUS policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_MOUSE_PS2_SENTELIC policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_MOUSE_PS2_TOUCHKIT policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_MOUSE_PS2_FOCALTECH policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_MOUSE_PS2_VMMOUSE policy<{'amd64': 'y'}> + +# Menu: Device Drivers >> Input device support >> Generic input layer (needed for keyboard, mouse, ...) >> Miscellaneous devices +CONFIG_INPUT_MISC policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'n'}> +CONFIG_INPUT_88PM860X_ONKEY policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_INPUT_88PM80X_ONKEY policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_INPUT_AD714X policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_INPUT_AD714X_I2C policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_INPUT_AD714X_SPI policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_INPUT_ARIZONA_HAPTICS policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_INPUT_ATMEL_CAPTOUCH policy<{'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_INPUT_BMA150 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_INPUT_E3X0_BUTTON policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_INPUT_PCSPKR policy<{'amd64': 'm', 'ppc64el': 'm'}> +CONFIG_INPUT_PM8941_PWRKEY policy<{'arm64': 'm', 'armhf': 'm'}> +CONFIG_INPUT_PM8XXX_VIBRATOR policy<{'arm64': 'm', 'armhf': 'm'}> +CONFIG_INPUT_PMIC8XXX_PWRKEY policy<{'armhf': 'm'}> +CONFIG_INPUT_MAX77650_ONKEY policy<{'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_INPUT_MAX77693_HAPTIC policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_INPUT_MAX8925_ONKEY policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_INPUT_MAX8997_HAPTIC policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_INPUT_MC13783_PWRBUTTON policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_INPUT_MMA8450 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_INPUT_APANEL policy<{'amd64': 'm'}> +CONFIG_INPUT_GPIO_BEEPER policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_INPUT_GPIO_DECODER policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_INPUT_GPIO_VIBRA policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_INPUT_CPCAP_PWRBUTTON policy<{'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_INPUT_ATLAS_BTNS policy<{'amd64': 'm'}> +CONFIG_INPUT_ATI_REMOTE2 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_INPUT_KEYSPAN_REMOTE policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_INPUT_KXTJ9 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_INPUT_POWERMATE policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_INPUT_YEALINK policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_INPUT_CM109 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_INPUT_REGULATOR_HAPTIC policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_INPUT_RETU_PWRBUTTON policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_INPUT_TPS65218_PWRBUTTON policy<{'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_INPUT_AXP20X_PEK policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_INPUT_TWL4030_PWRBUTTON policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_INPUT_TWL4030_VIBRA policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_INPUT_TWL6040_VIBRA policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_INPUT_UINPUT policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_INPUT_PALMAS_PWRBUTTON policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_INPUT_PCF50633_PMU policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_INPUT_PCF8574 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_INPUT_PWM_BEEPER policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_INPUT_PWM_VIBRA policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_INPUT_RK805_PWRKEY policy<{'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_INPUT_GPIO_ROTARY_ENCODER policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_INPUT_DA9052_ONKEY policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_INPUT_DA9055_ONKEY policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_INPUT_DA9063_ONKEY policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_INPUT_WM831X_ON policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_INPUT_PCAP policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_INPUT_ADXL34X policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_INPUT_ADXL34X_I2C policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_INPUT_ADXL34X_SPI policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_INPUT_IMS_PCU policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_INPUT_IQS269A policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_INPUT_CMA3000 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_INPUT_CMA3000_I2C policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_INPUT_XEN_KBDDEV_FRONTEND policy<{'amd64': 'm', 'arm64': 'm'}> +CONFIG_INPUT_IDEAPAD_SLIDEBAR policy<{'amd64': 'm', 'ppc64el': 'm'}> +CONFIG_INPUT_SOC_BUTTON_ARRAY policy<{'amd64': 'm', 'arm64': 'm'}> +CONFIG_INPUT_DRV260X_HAPTICS policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_INPUT_DRV2665_HAPTICS policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_INPUT_DRV2667_HAPTICS policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_INPUT_HISI_POWERKEY policy<{'arm64': 'm', 'armhf': 'm'}> +CONFIG_INPUT_RAVE_SP_PWRBUTTON policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_INPUT_SC27XX_VIBRA policy<{'arm64': 'm'}> +CONFIG_INPUT_STPMIC1_ONKEY policy<{'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +# +CONFIG_INPUT_UINPUT mark note + +# Menu: Device Drivers >> Input device support >> Generic input layer (needed for keyboard, mouse, ...) >> Mouse interface +CONFIG_INPUT_MOUSEDEV policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'n'}> +CONFIG_INPUT_MOUSEDEV_PSAUX policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_INPUT_MOUSEDEV_SCREEN_X policy<{'amd64': '1024', 'arm64': '1024', 'armhf': '1024', 'ppc64el': '1024'}> +CONFIG_INPUT_MOUSEDEV_SCREEN_Y policy<{'amd64': '768', 'arm64': '768', 'armhf': '768', 'ppc64el': '768'}> + +# Menu: Device Drivers >> Input device support >> Generic input layer (needed for keyboard, mouse, ...) >> Synaptics RMI4 bus support +CONFIG_RMI4_CORE policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'n'}> +CONFIG_RMI4_I2C policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_RMI4_SPI policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_RMI4_SMB policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_RMI4_F03 policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_RMI4_F11 policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_RMI4_F12 policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_RMI4_F30 policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_RMI4_F34 policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_RMI4_F54 policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_RMI4_F55 policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> + +# Menu: Device Drivers >> Input device support >> Generic input layer (needed for keyboard, mouse, ...) >> Tablets +CONFIG_INPUT_TABLET policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'n'}> +CONFIG_TABLET_USB_ACECAD policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_TABLET_USB_AIPTEK policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_TABLET_USB_GTCO policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_TABLET_USB_HANWANG policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_TABLET_USB_KBTAB policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_TABLET_USB_PEGASUS policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_TABLET_SERIAL_WACOM4 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> + +# Menu: Device Drivers >> Input device support >> Generic input layer (needed for keyboard, mouse, ...) >> Touchscreens +CONFIG_INPUT_TOUCHSCREEN policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'n'}> +CONFIG_TOUCHSCREEN_88PM860X policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_TOUCHSCREEN_ADS7846 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_TOUCHSCREEN_AD7877 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_TOUCHSCREEN_AD7879 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_TOUCHSCREEN_AD7879_I2C policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_TOUCHSCREEN_AD7879_SPI policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_TOUCHSCREEN_ADC policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_TOUCHSCREEN_AR1021_I2C policy<{'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_TOUCHSCREEN_ATMEL_MXT policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_TOUCHSCREEN_ATMEL_MXT_T37 policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_TOUCHSCREEN_AUO_PIXCIR policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_TOUCHSCREEN_BU21013 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_TOUCHSCREEN_BU21029 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_TOUCHSCREEN_CHIPONE_ICN8318 policy<{'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_TOUCHSCREEN_CHIPONE_ICN8505 policy<{'amd64': 'm', 'arm64': 'm'}> +CONFIG_TOUCHSCREEN_CY8CTMA140 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_TOUCHSCREEN_CY8CTMG110 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_TOUCHSCREEN_CYTTSP_CORE policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_TOUCHSCREEN_CYTTSP_I2C policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_TOUCHSCREEN_CYTTSP_SPI policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_TOUCHSCREEN_CYTTSP4_CORE policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_TOUCHSCREEN_CYTTSP4_I2C policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_TOUCHSCREEN_CYTTSP4_SPI policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_TOUCHSCREEN_DA9034 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_TOUCHSCREEN_DA9052 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_TOUCHSCREEN_DYNAPRO policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_TOUCHSCREEN_HAMPSHIRE policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_TOUCHSCREEN_EETI policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_TOUCHSCREEN_EGALAX policy<{'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_TOUCHSCREEN_EGALAX_SERIAL policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_TOUCHSCREEN_EXC3000 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_TOUCHSCREEN_FUJITSU policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_TOUCHSCREEN_GOODIX policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_TOUCHSCREEN_HIDEEP policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_TOUCHSCREEN_ILI210X policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_TOUCHSCREEN_IPROC policy<{'arm64': 'm'}> +CONFIG_TOUCHSCREEN_S6SY761 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_TOUCHSCREEN_GUNZE policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_TOUCHSCREEN_EKTF2127 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_TOUCHSCREEN_ELAN policy<{'amd64': 'y', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_TOUCHSCREEN_ELO policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_TOUCHSCREEN_WACOM_W8001 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_TOUCHSCREEN_WACOM_I2C policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_TOUCHSCREEN_MAX11801 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_TOUCHSCREEN_MCS5000 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_TOUCHSCREEN_MMS114 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_TOUCHSCREEN_MELFAS_MIP4 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_TOUCHSCREEN_MTOUCH policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_TOUCHSCREEN_IMX6UL_TSC policy<{'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_TOUCHSCREEN_INEXIO policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_TOUCHSCREEN_MK712 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_TOUCHSCREEN_PENMOUNT policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_TOUCHSCREEN_EDT_FT5X06 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_TOUCHSCREEN_RASPBERRYPI_FW policy<{'arm64': 'm'}> +CONFIG_TOUCHSCREEN_TOUCHRIGHT policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_TOUCHSCREEN_TOUCHWIN policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_TOUCHSCREEN_TI_AM335X_TSC policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_TOUCHSCREEN_UCB1400 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_TOUCHSCREEN_PIXCIR policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_TOUCHSCREEN_WDT87XX_I2C policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_TOUCHSCREEN_WM831X policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_TOUCHSCREEN_MC13783 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_TOUCHSCREEN_TOUCHIT213 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_TOUCHSCREEN_TS4800 policy<{'armhf-generic': 'm'}> +CONFIG_TOUCHSCREEN_TSC_SERIO policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_TOUCHSCREEN_TSC2004 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_TOUCHSCREEN_TSC2005 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_TOUCHSCREEN_TSC2007 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_TOUCHSCREEN_TSC2007_IIO policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_TOUCHSCREEN_PCAP policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_TOUCHSCREEN_RM_TS policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_TOUCHSCREEN_SILEAD policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_TOUCHSCREEN_SIS_I2C policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_TOUCHSCREEN_ST1232 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_TOUCHSCREEN_STMFTS policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_TOUCHSCREEN_STMPE policy<{'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_TOUCHSCREEN_SUN4I policy<{'arm64': 'n'}> +CONFIG_TOUCHSCREEN_SUR40 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_TOUCHSCREEN_SURFACE3_SPI policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_TOUCHSCREEN_SX8654 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_TOUCHSCREEN_TPS6507X policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_TOUCHSCREEN_ZET6223 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_TOUCHSCREEN_ZFORCE policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_TOUCHSCREEN_COLIBRI_VF50 policy<{'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_TOUCHSCREEN_ROHM_BU21023 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_TOUCHSCREEN_IQS5XX policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +# +CONFIG_TOUCHSCREEN_ELAN mark note + +# Menu: Device Drivers >> Input device support >> Generic input layer (needed for keyboard, mouse, ...) >> Touchscreens >> Support for WM97xx AC97 touchscreen controllers +CONFIG_TOUCHSCREEN_WM97XX policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_TOUCHSCREEN_WM9705 policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_TOUCHSCREEN_WM9712 policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_TOUCHSCREEN_WM9713 policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> + +# Menu: Device Drivers >> Input device support >> Generic input layer (needed for keyboard, mouse, ...) >> Touchscreens >> USB Touchscreen Driver +CONFIG_TOUCHSCREEN_USB_COMPOSITE policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_TOUCHSCREEN_USB_EGALAX policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_TOUCHSCREEN_USB_PANJIT policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_TOUCHSCREEN_USB_3M policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_TOUCHSCREEN_USB_ITM policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_TOUCHSCREEN_USB_ETURBO policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_TOUCHSCREEN_USB_GUNZE policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_TOUCHSCREEN_USB_DMC_TSC10 policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_TOUCHSCREEN_USB_IRTOUCH policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_TOUCHSCREEN_USB_IDEALTEK policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_TOUCHSCREEN_USB_GENERAL_TOUCH policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_TOUCHSCREEN_USB_GOTOP policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_TOUCHSCREEN_USB_JASTEC policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_TOUCHSCREEN_USB_ELO policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_TOUCHSCREEN_USB_E2I policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_TOUCHSCREEN_USB_ZYTRONIC policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_TOUCHSCREEN_USB_ETT_TC45USB policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_TOUCHSCREEN_USB_NEXIO policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_TOUCHSCREEN_USB_EASYTOUCH policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> + +# Menu: Device Drivers >> Input device support >> Hardware I/O ports + +# Menu: Device Drivers >> Input device support >> Hardware I/O ports >> Gameport support +CONFIG_GAMEPORT policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'n'}> +CONFIG_GAMEPORT_NS558 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_GAMEPORT_L4 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_GAMEPORT_EMU10K1 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_GAMEPORT_FM801 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> + +# Menu: Device Drivers >> Input device support >> Hardware I/O ports >> Serial I/O support +CONFIG_SERIO policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'n'}> +CONFIG_SERIO_I8042 policy<{'amd64': 'y', 'ppc64el': 'y'}> +CONFIG_SERIO_SERPORT policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SERIO_CT82C710 policy<{'amd64': 'm'}> +CONFIG_SERIO_PARKBD policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SERIO_AMBAKMI policy<{'arm64': 'm', 'armhf': 'm'}> +CONFIG_SERIO_PCIPS2 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SERIO_LIBPS2 policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_SERIO_RAW policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SERIO_XILINX_XPS_PS2 policy<{'ppc64el': 'm'}> +CONFIG_SERIO_ALTERA_PS2 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SERIO_PS2MULT policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SERIO_ARC_PS2 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SERIO_APBPS2 policy<{'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_HYPERV_KEYBOARD policy<{'amd64': 'm'}> +CONFIG_SERIO_SUN4I_PS2 policy<{'arm64': 'n'}> +CONFIG_SERIO_GPIO_PS2 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_USERIO policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> + +# Menu: Device Drivers >> LED Support +CONFIG_NEW_LEDS policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'n'}> +CONFIG_LEDS_LP55XX_COMMON policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> + +# Menu: Device Drivers >> LED Support >> LED Class Support +CONFIG_LEDS_CLASS policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_LEDS_BRIGHTNESS_HW_CHANGED policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_LEDS_88PM860X policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_LEDS_AN30259A policy<{'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_LEDS_APU policy<{'amd64': 'm'}> +CONFIG_LEDS_AW2013 policy<{'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_LEDS_BCM6328 policy<{'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_LEDS_BCM6358 policy<{'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_LEDS_CPCAP policy<{'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_LEDS_CR0014114 policy<{'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_LEDS_EL15203000 policy<{'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_LEDS_LM3530 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_LEDS_LM3532 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_LEDS_LM3533 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_LEDS_LM3642 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_LEDS_LM3692X policy<{'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_LEDS_MT6323 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_LEDS_PCA9532 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_LEDS_PCA9532_GPIO policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_LEDS_GPIO policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_LEDS_LP3944 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_LEDS_LP3952 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_LEDS_LP5521 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_LEDS_LP5523 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_LEDS_LP5562 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_LEDS_LP8501 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_LEDS_LP8788 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_LEDS_LP8860 policy<{'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_LEDS_CLEVO_MAIL policy<{'amd64': 'm'}> +CONFIG_LEDS_PCA955X policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_LEDS_PCA955X_GPIO policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_LEDS_PCA963X policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_LEDS_WM831X_STATUS policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_LEDS_WM8350 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_LEDS_DA903X policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_LEDS_DA9052 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_LEDS_DAC124S085 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_LEDS_PWM policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_LEDS_REGULATOR policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_LEDS_BD2802 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_LEDS_INTEL_SS4200 policy<{'amd64': 'm'}> +CONFIG_LEDS_LT3593 policy<{'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_LEDS_ADP5520 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_LEDS_MC13783 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_LEDS_NS2 policy<{'armhf': 'm'}> +CONFIG_LEDS_ASIC3 policy<{'armhf': 'y'}> +CONFIG_LEDS_TCA6507 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_LEDS_TLC591XX policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_LEDS_MAX77650 policy<{'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_LEDS_MAX8997 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_LEDS_LM355x policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_LEDS_MENF21BMC policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_LEDS_IS31FL319X policy<{'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_LEDS_IS31FL32XX policy<{'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_LEDS_SC27XX_BLTC policy<{'arm64': 'm'}> +CONFIG_LEDS_BLINKM policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_LEDS_POWERNV policy<{'ppc64el': 'm'}> +CONFIG_LEDS_SYSCON policy<{'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_LEDS_PM8058 policy<{'armhf': 'm'}> +CONFIG_LEDS_MLXCPLD policy<{'amd64': 'm'}> +CONFIG_LEDS_MLXREG policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_LEDS_USER policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_LEDS_NIC78BX policy<{'amd64': 'm'}> +CONFIG_LEDS_SPI_BYTE policy<{'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_LEDS_TI_LMU_COMMON policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_LEDS_LM3697 policy<{'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_LEDS_LM36274 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_LEDS_TPS6105X policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> + +# Menu: Device Drivers >> LED Support >> LED Class Support >> LED Flash Class Support +CONFIG_LEDS_CLASS_FLASH policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_LEDS_AAT1290 policy<{'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_LEDS_AS3645A policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_LEDS_LM3601X policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_LEDS_MAX77693 policy<{'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_LEDS_KTD2692 policy<{'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_LEDS_SGM3140 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> + +# Menu: Device Drivers >> LED Support >> LED Class Support >> LED Trigger support +CONFIG_LEDS_TRIGGERS policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_LEDS_TRIGGER_TIMER policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_LEDS_TRIGGER_ONESHOT policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_LEDS_TRIGGER_DISK policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_LEDS_TRIGGER_MTD policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_LEDS_TRIGGER_HEARTBEAT policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_LEDS_TRIGGER_BACKLIGHT policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_LEDS_TRIGGER_CPU policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_LEDS_TRIGGER_ACTIVITY policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_LEDS_TRIGGER_GPIO policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_LEDS_TRIGGER_DEFAULT_ON policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_LEDS_TRIGGER_TRANSIENT policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_LEDS_TRIGGER_CAMERA policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_LEDS_TRIGGER_PANIC policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_LEDS_TRIGGER_NETDEV policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_LEDS_TRIGGER_PATTERN policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_LEDS_TRIGGER_AUDIO policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> + +# Menu: Device Drivers >> MCB support +CONFIG_MCB policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'n'}> +CONFIG_MCB_PCI policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_MCB_LPC policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> + +# Menu: Device Drivers >> MIPS Platform Specific Device Drivers + +# Menu: Device Drivers >> MMC/SD/SDIO card support +CONFIG_MMC policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'n'}> +CONFIG_PWRSEQ_EMMC policy<{'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_PWRSEQ_SD8787 policy<{'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_PWRSEQ_SIMPLE policy<{'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_MMC_BLOCK policy<{'amd64': 'm', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'm'}> +CONFIG_MMC_BLOCK_MINORS policy<{'amd64': '8', 'arm64': '8', 'armhf': '8', 'ppc64el': '8'}> +CONFIG_SDIO_UART policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_MMC_TEST policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n'}> +CONFIG_MMC_DEBUG policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n'}> +CONFIG_MMC_ARMMMCI policy<{'arm64': 'y', 'armhf': 'y'}> +CONFIG_MMC_QCOM_DML policy<{'arm64': 'y', 'armhf': 'y'}> +CONFIG_MMC_STM32_SDMMC policy<{'arm64': 'y', 'armhf': 'y'}> +CONFIG_MMC_MESON_GX policy<{'arm64': 'm', 'armhf': 'm'}> +CONFIG_MMC_MESON_MX_SDHC policy<{'armhf': 'm'}> +CONFIG_MMC_MESON_MX_SDIO policy<{'arm64': 'm', 'armhf': 'm'}> +CONFIG_MMC_OMAP policy<{'armhf': 'm'}> +CONFIG_MMC_OMAP_HS policy<{'armhf': 'y'}> +CONFIG_MMC_WBSD policy<{'amd64': 'm', 'ppc64el': 'm'}> +CONFIG_MMC_ALCOR policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_MMC_MXC policy<{'arm64': 'm', 'armhf-generic': 'm'}> +CONFIG_MMC_TIFM_SD policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_MMC_MVSDIO policy<{'armhf': 'm'}> +CONFIG_MMC_SPI policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_MMC_SDRICOH_CS policy<{'amd64': 'm'}> +CONFIG_MMC_TMIO policy<{'armhf': 'm'}> +CONFIG_MMC_SDHI policy<{'arm64': 'm', 'armhf': 'm'}> +CONFIG_MMC_SDHI_SYS_DMAC policy<{'arm64': 'm', 'armhf': 'm'}> +CONFIG_MMC_SDHI_INTERNAL_DMAC policy<{'arm64': 'm', 'armhf': 'm'}> +CONFIG_MMC_UNIPHIER policy<{'armhf': 'm'}> +CONFIG_MMC_CB710 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_MMC_VIA_SDMMC policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_MMC_CAVIUM_THUNDERX policy<{'arm64': 'm'}> +CONFIG_MMC_SH_MMCIF policy<{'arm64': 'm', 'armhf': 'm'}> +CONFIG_MMC_VUB300 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_MMC_USHC policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_MMC_USDHI6ROL0 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_MMC_REALTEK_PCI policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_MMC_REALTEK_USB policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_MMC_SUNXI policy<{'arm64': 'm'}> +CONFIG_MMC_CQHCI policy<{'amd64': 'm', 'arm64': 'm', 'armhf-generic': 'y', 'armhf-generic-lpae': 'm', 'ppc64el': 'm'}> +CONFIG_MMC_HSQ policy<{'amd64': 'n', 'arm64': 'm', 'armhf': 'n', 'ppc64el': 'n'}> +CONFIG_MMC_TOSHIBA_PCI policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_MMC_BCM2835 policy<{'arm64': 'm'}> +CONFIG_MMC_MTK policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_MMC_OWL policy<{'arm64': 'm', 'armhf': 'm'}> +# +CONFIG_MMC_BLOCK note +CONFIG_MMC_TEST flag +CONFIG_MMC_OMAP_HS note + +# Menu: Device Drivers >> MMC/SD/SDIO card support >> Samsung S3C SD/MMC transfer code + +# Menu: Device Drivers >> MMC/SD/SDIO card support >> Secure Digital Host Controller Interface support +CONFIG_MMC_SDHCI policy<{'amd64': 'm', 'arm64-generic': 'm', 'arm64-generic-64k': 'm', 'armhf': 'y', 'ppc64el': 'm'}> +CONFIG_MMC_SDHCI_PCI policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_MMC_RICOH_MMC policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_MMC_SDHCI_ACPI policy<{'amd64': 'm', 'arm64': 'm'}> +CONFIG_MMC_SDHCI_S3C policy<{'armhf': 'm'}> +CONFIG_MMC_SDHCI_S3C_DMA policy<{'armhf': 'y'}> +# +CONFIG_MMC_SDHCI note + +# Menu: Device Drivers >> MMC/SD/SDIO card support >> Secure Digital Host Controller Interface support >> SDHCI platform and OF driver helper +CONFIG_MMC_SDHCI_PLTFM policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'y', 'ppc64el': 'm'}> +CONFIG_MMC_SDHCI_OF_ARASAN policy<{'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_MMC_SDHCI_OF_ASPEED policy<{'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_MMC_SDHCI_OF_AT91 policy<{'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_MMC_SDHCI_OF_ESDHC policy<{'arm64': 'm', 'armhf-generic': 'm', 'ppc64el': 'm'}> +CONFIG_MMC_SDHCI_OF_HLWD policy<{'ppc64el': 'm'}> +CONFIG_MMC_SDHCI_OF_DWCMSHC policy<{'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_MMC_SDHCI_CADENCE policy<{'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_MMC_SDHCI_ESDHC_IMX policy<{'arm64': 'm', 'armhf-generic': 'y'}> +CONFIG_MMC_SDHCI_DOVE policy<{'armhf': 'm'}> +CONFIG_MMC_SDHCI_TEGRA policy<{'armhf-generic': 'm'}> +CONFIG_MMC_SDHCI_PXAV3 policy<{'arm64': 'm', 'armhf': 'm'}> +CONFIG_MMC_SDHCI_F_SDH30 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_MMC_SDHCI_MILBEAUT policy<{'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_MMC_SDHCI_IPROC policy<{'arm64': 'm'}> +CONFIG_MMC_SDHCI_MSM policy<{'arm64': 'm', 'armhf': 'm'}> +CONFIG_MMC_SDHCI_SPRD policy<{'arm64': 'm'}> +CONFIG_MMC_SDHCI_BRCMSTB policy<{'arm64': 'm'}> +CONFIG_MMC_SDHCI_XENON policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_MMC_SDHCI_OMAP policy<{'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_MMC_SDHCI_AM654 policy<{'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +# +CONFIG_MMC_SDHCI_PLTFM note + +# Menu: Device Drivers >> MMC/SD/SDIO card support >> Synopsys DesignWare Memory Card Interface +CONFIG_MMC_DW policy<{'arm64': 'm', 'armhf': 'm'}> +CONFIG_MMC_DW_PLTFM policy<{'arm64': 'm', 'armhf': 'm'}> +CONFIG_MMC_DW_BLUEFIELD policy<{'arm64': 'm', 'armhf': 'm'}> +CONFIG_MMC_DW_EXYNOS policy<{'arm64': 'm', 'armhf': 'm'}> +CONFIG_MMC_DW_HI3798CV200 policy<{'arm64': 'm', 'armhf': 'm'}> +CONFIG_MMC_DW_K3 policy<{'arm64': 'm', 'armhf': 'm'}> +CONFIG_MMC_DW_PCI policy<{'arm64': 'm', 'armhf': 'm'}> +CONFIG_MMC_DW_ROCKCHIP policy<{'arm64': 'm', 'armhf': 'm'}> + +# Menu: Device Drivers >> Macintosh device drivers +CONFIG_MACINTOSH_DRIVERS policy<{'amd64': 'y', 'ppc64el': 'y'}> +CONFIG_MAC_EMUMOUSEBTN policy<{'amd64': 'm', 'ppc64el': 'm'}> + +# Menu: Device Drivers >> Macintosh device drivers >> Apple Desktop Bus (ADB) support + +# Menu: Device Drivers >> Macintosh device drivers >> New PowerMac thermal control infrastructure +CONFIG_WINDFARM policy<{'ppc64el': 'm'}> + +# Menu: Device Drivers >> Macintosh device drivers >> Support for PMU based PowerMacs and PowerBooks + +# Menu: Device Drivers >> Mailbox Hardware Support +CONFIG_MAILBOX policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'n'}> +CONFIG_ARM_MHU policy<{'arm64': 'm', 'armhf': 'm'}> +CONFIG_IMX_MBOX policy<{'arm64': 'm', 'armhf-generic': 'm'}> +CONFIG_PLATFORM_MHU policy<{'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_PL320_MBOX policy<{'arm64': 'y', 'armhf': 'y'}> +CONFIG_ARMADA_37XX_RWTM_MBOX policy<{'arm64': 'm', 'armhf': 'm'}> +CONFIG_OMAP2PLUS_MBOX policy<{'arm64': 'm', 'armhf': 'm'}> +CONFIG_OMAP_MBOX_KFIFO_SIZE policy<{'arm64': '256', 'armhf': '256'}> +CONFIG_ROCKCHIP_MBOX policy<{'arm64': 'y', 'armhf': 'y'}> +CONFIG_PCC policy<{'amd64': 'y', 'arm64': 'y'}> +CONFIG_ALTERA_MBOX policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_BCM2835_MBOX policy<{'arm64': 'y'}> +CONFIG_TI_MESSAGE_MANAGER policy<{'arm64': 'y'}> +CONFIG_HI3660_MBOX policy<{'arm64': 'm', 'armhf': 'm'}> +CONFIG_HI6220_MBOX policy<{'arm64': 'm', 'armhf': 'm'}> +CONFIG_MAILBOX_TEST policy<{'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_QCOM_APCS_IPC policy<{'arm64': 'm', 'armhf': 'm'}> +CONFIG_TEGRA_HSP_MBOX policy<{'armhf-generic': 'y'}> +CONFIG_XGENE_SLIMPRO_MBOX policy<{'arm64': 'm'}> +CONFIG_BCM_PDC_MBOX policy<{'arm64': 'm'}> +CONFIG_BCM_FLEXRM_MBOX policy<{'arm64': 'm'}> +CONFIG_MTK_CMDQ_MBOX policy<{'arm64': 'm', 'armhf': 'm'}> +CONFIG_ZYNQMP_IPI_MBOX policy<{'arm64': 'y'}> +CONFIG_SUN6I_MSGBOX policy<{'arm64': 'y'}> +CONFIG_SPRD_MBOX policy<{'arm64': 'm'}> +CONFIG_QCOM_IPCC policy<{'arm64': 'y', 'armhf': 'y'}> + +# Menu: Device Drivers >> Memory Controller drivers +CONFIG_MEMORY policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'n'}> +CONFIG_ARM_PL172_MPMC policy<{'arm64': 'm', 'armhf': 'm'}> +CONFIG_TI_EMIF policy<{'armhf': 'm'}> +CONFIG_OMAP_GPMC_DEBUG policy<{'armhf': 'n'}> +CONFIG_TI_EMIF_SRAM policy<{'armhf-generic': 'm'}> +CONFIG_MVEBU_DEVBUS policy<{'armhf': 'y'}> +CONFIG_PL353_SMC policy<{'armhf': 'm'}> +CONFIG_SAMSUNG_MC policy<{'armhf': 'y'}> +CONFIG_EXYNOS5422_DMC policy<{'armhf': 'm'}> +CONFIG_EXYNOS_SROM policy<{'armhf': 'y'}> +CONFIG_TEGRA_MC policy<{'armhf-generic': 'y'}> +CONFIG_TEGRA20_EMC policy<{'armhf-generic': 'y'}> +CONFIG_TEGRA30_EMC policy<{'armhf-generic': 'y'}> +CONFIG_TEGRA124_EMC policy<{'armhf-generic': 'y'}> + +# Menu: Device Drivers >> Memory Technology Device (MTD) support +CONFIG_MTD policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'y', 'ppc64el': 'm', 's390x': 'n'}> +CONFIG_MTD_TESTS policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n'}> +CONFIG_MTD_BLOCK policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'y', 'ppc64el': 'm'}> +CONFIG_MTD_BLOCK_RO policy<{'amd64': 'm', 'arm64': 'm', 'ppc64el': 'm'}> +CONFIG_FTL policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_NFTL policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_NFTL_RW policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_INFTL policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_RFD_FTL policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SSFDC policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SM_FTL policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_MTD_OOPS policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_MTD_PSTORE policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_MTD_SWAP policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_MTD_PARTITIONED_MASTER policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n'}> +CONFIG_MTD_NAND_ECC_SW_HAMMING_SMC policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n'}> +CONFIG_MTD_SPI_NAND policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +# +CONFIG_MTD note +CONFIG_MTD_BLOCK note + +# Menu: Device Drivers >> Memory Technology Device (MTD) support >> Enable UBI - Unsorted block images +CONFIG_MTD_UBI policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_MTD_UBI_WL_THRESHOLD policy<{'amd64': '4096', 'arm64': '4096', 'armhf': '4096', 'ppc64el': '4096'}> +CONFIG_MTD_UBI_BEB_LIMIT policy<{'amd64': '20', 'arm64': '20', 'armhf': '20', 'ppc64el': '20'}> +CONFIG_MTD_UBI_FASTMAP policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_MTD_UBI_GLUEBI policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_MTD_UBI_BLOCK policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> + +# Menu: Device Drivers >> Memory Technology Device (MTD) support >> HyperBus support +CONFIG_MTD_HYPERBUS policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_HBMC_AM654 policy<{'arm64': 'm'}> + +# Menu: Device Drivers >> Memory Technology Device (MTD) support >> LPDDR & LPDDR2 PCM memory drivers +CONFIG_MTD_LPDDR policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_MTD_QINFO_PROBE policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_MTD_LPDDR2_NVM policy<{'armhf': 'm'}> + +# Menu: Device Drivers >> Memory Technology Device (MTD) support >> Mapping drivers for chip access +CONFIG_MTD_AMD76XROM policy<{'amd64': 'm'}> +CONFIG_MTD_ICHXROM policy<{'amd64': 'm'}> +CONFIG_MTD_ESB2ROM policy<{'amd64': 'm'}> +CONFIG_MTD_CK804XROM policy<{'amd64': 'm'}> +CONFIG_MTD_SCB2_FLASH policy<{'amd64': 'm'}> +CONFIG_MTD_NETtel policy<{'amd64': 'm'}> +CONFIG_MTD_L440GX policy<{'amd64': 'm'}> +CONFIG_MTD_IMPA7 policy<{'armhf': 'm'}> +CONFIG_MTD_INTEL_VR_NOR policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_MTD_PLATRAM policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> + +# Menu: Device Drivers >> Memory Technology Device (MTD) support >> Mapping drivers for chip access >> Flash device in physical memory map +CONFIG_MTD_PHYSMAP policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_MTD_PHYSMAP_GPIO_ADDR policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> + +# Menu: Device Drivers >> Memory Technology Device (MTD) support >> Mapping drivers for chip access >> Flash device in physical memory map >> Memory device in physical memory map based on OF description +CONFIG_MTD_PHYSMAP_OF policy<{'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_MTD_PHYSMAP_VERSATILE policy<{'arm64': 'y', 'armhf': 'y', 'ppc64el': 'n'}> +CONFIG_MTD_PHYSMAP_GEMINI policy<{'arm64': 'y', 'armhf': 'y', 'ppc64el': 'n'}> +CONFIG_MTD_PHYSMAP_IXP4XX policy<{'armhf': 'y'}> + +# Menu: Device Drivers >> Memory Technology Device (MTD) support >> Mapping drivers for chip access >> Flash device in physical memory map >> Physmap compat support +CONFIG_MTD_PHYSMAP_COMPAT policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n'}> + +# Menu: Device Drivers >> Memory Technology Device (MTD) support >> Mapping drivers for chip access >> Maximum mappable memory available for flash IO + +# Menu: Device Drivers >> Memory Technology Device (MTD) support >> Mapping drivers for chip access >> Support non-linear mappings of flash chips +CONFIG_MTD_COMPLEX_MAPPINGS policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_MTD_SBC_GXX policy<{'amd64': 'm'}> +CONFIG_MTD_PCI policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_MTD_PCMCIA policy<{'amd64': 'm'}> +CONFIG_MTD_PCMCIA_ANONYMOUS policy<{'amd64': 'n'}> + +# Menu: Device Drivers >> Memory Technology Device (MTD) support >> OneNAND Device Support +CONFIG_MTD_ONENAND policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_MTD_ONENAND_VERIFY_WRITE policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_MTD_ONENAND_GENERIC policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_MTD_ONENAND_OMAP2 policy<{'armhf-generic': 'm'}> +CONFIG_MTD_ONENAND_OTP policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n'}> +CONFIG_MTD_ONENAND_2X_PROGRAM policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +# +CONFIG_MTD_ONENAND_VERIFY_WRITE note +CONFIG_MTD_ONENAND_OTP flag + +# Menu: Device Drivers >> Memory Technology Device (MTD) support >> Partition parsers +CONFIG_MTD_CMDLINE_PARTS policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'y', 'ppc64el': 'm'}> +CONFIG_MTD_OF_PARTS policy<{'arm64': 'm', 'armhf': 'y', 'ppc64el': 'm'}> +CONFIG_MTD_AR7_PARTS policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_MTD_AFS_PARTS policy<{'arm64': 'm', 'armhf': 'm'}> +CONFIG_MTD_SHARPSL_PARTS policy<{'armhf': 'm'}> +# +CONFIG_MTD_CMDLINE_PARTS flag +CONFIG_MTD_OF_PARTS note + +# Menu: Device Drivers >> Memory Technology Device (MTD) support >> Partition parsers >> RedBoot partition table parsing +CONFIG_MTD_REDBOOT_PARTS policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_MTD_REDBOOT_DIRECTORY_BLOCK policy<{'amd64': '-1', 'arm64': '-1', 'armhf': '-1', 'ppc64el': '-1'}> +CONFIG_MTD_REDBOOT_PARTS_UNALLOCATED policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n'}> +CONFIG_MTD_REDBOOT_PARTS_READONLY policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n'}> + +# Menu: Device Drivers >> Memory Technology Device (MTD) support >> RAM/ROM/Flash chip drivers +CONFIG_MTD_CFI policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_MTD_JEDECPROBE policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_MTD_CFI_INTELEXT policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_MTD_CFI_AMDSTD policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_MTD_CFI_STAA policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_MTD_RAM policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_MTD_ROM policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_MTD_ABSENT policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> + +# Menu: Device Drivers >> Memory Technology Device (MTD) support >> RAM/ROM/Flash chip drivers >> Flash chip driver advanced configuration options +CONFIG_MTD_CFI_ADV_OPTIONS policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n'}> + +# Menu: Device Drivers >> Memory Technology Device (MTD) support >> RAM/ROM/Flash chip drivers >> Flash chip driver advanced configuration options >> Flash cmd/query data swapping + +# Menu: Device Drivers >> Memory Technology Device (MTD) support >> RAM/ROM/Flash chip drivers >> Flash chip driver advanced configuration options >> Specific CFI Flash geometry selection +CONFIG_MTD_MAP_BANK_WIDTH_1 policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_MTD_MAP_BANK_WIDTH_2 policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_MTD_MAP_BANK_WIDTH_4 policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_MTD_CFI_I1 policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_MTD_CFI_I2 policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> + +# Menu: Device Drivers >> Memory Technology Device (MTD) support >> Raw/Parallel NAND Device Support +CONFIG_MTD_RAW_NAND policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'y', 'ppc64el': 'm'}> +CONFIG_MTD_NAND_ECC_SW_BCH policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_MTD_NAND_DENALI_PCI policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_MTD_NAND_DENALI_DT policy<{'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_MTD_NAND_OMAP2 policy<{'armhf': 'y'}> +CONFIG_MTD_NAND_OMAP_BCH policy<{'armhf': 'y'}> +CONFIG_MTD_NAND_CAFE policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_MTD_NAND_ORION policy<{'armhf': 'm'}> +CONFIG_MTD_NAND_MARVELL policy<{'arm64': 'm', 'armhf': 'm'}> +CONFIG_MTD_NAND_TMIO policy<{'armhf': 'm'}> +CONFIG_MTD_NAND_BRCMNAND policy<{'arm64': 'm', 'armhf': 'm'}> +CONFIG_MTD_NAND_GPMI_NAND policy<{'arm64': 'm', 'armhf-generic': 'm'}> +CONFIG_MTD_NAND_FSL_IFC policy<{'arm64': 'm'}> +CONFIG_MTD_NAND_VF610_NFC policy<{'armhf-generic': 'n'}> +CONFIG_MTD_NAND_MXC policy<{'arm64': 'm', 'armhf-generic': 'm'}> +CONFIG_MTD_NAND_SUNXI policy<{'arm64': 'n'}> +CONFIG_MTD_NAND_HISI504 policy<{'arm64': 'm', 'armhf': 'm'}> +CONFIG_MTD_NAND_QCOM policy<{'arm64': 'm', 'armhf': 'm'}> +CONFIG_MTD_NAND_MTK policy<{'arm64': 'm', 'armhf': 'm'}> +CONFIG_MTD_NAND_MXIC policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_MTD_NAND_TEGRA policy<{'armhf-generic': 'm'}> +CONFIG_MTD_NAND_MESON policy<{'arm64': 'm', 'armhf': 'm'}> +CONFIG_MTD_NAND_GPIO policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_MTD_NAND_PLATFORM policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_MTD_NAND_CADENCE policy<{'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_MTD_NAND_ARASAN policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_MTD_NAND_NANDSIM policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_MTD_NAND_RICOH policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_MTD_NAND_DISKONCHIP policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_MTD_NAND_DISKONCHIP_PROBE_ADVANCED policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n'}> +CONFIG_MTD_NAND_DISKONCHIP_PROBE_ADDRESS policy<{'amd64': '0', 'arm64': '0', 'armhf': '0', 'ppc64el': '0'}> +CONFIG_MTD_NAND_DISKONCHIP_BBTWRITE policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n'}> +# +CONFIG_MTD_RAW_NAND note +CONFIG_MTD_NAND_OMAP2 note +CONFIG_MTD_NAND_OMAP_BCH note +CONFIG_MTD_NAND_DISKONCHIP_BBTWRITE note + +# Menu: Device Drivers >> Memory Technology Device (MTD) support >> Raw/Parallel NAND Device Support >> JZ4780 NAND controller + +# Menu: Device Drivers >> Memory Technology Device (MTD) support >> SPI NOR device support +CONFIG_MTD_SPI_NOR policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_MTD_SPI_NOR_USE_4K_SECTORS policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_SPI_ASPEED_SMC policy<{'armhf': 'm'}> +CONFIG_SPI_CADENCE_QUADSPI policy<{'arm64': 'm', 'armhf': 'm'}> +CONFIG_SPI_HISI_SFC policy<{'arm64': 'm', 'armhf': 'm'}> +CONFIG_SPI_INTEL_SPI_PCI policy<{'amd64': 'n'}> +CONFIG_SPI_INTEL_SPI_PLATFORM policy<{'amd64': 'n'}> +# +CONFIG_SPI_INTEL_SPI_PCI mark note +CONFIG_SPI_INTEL_SPI_PLATFORM mark note + +# Menu: Device Drivers >> Memory Technology Device (MTD) support >> Self-contained MTD device drivers +CONFIG_MTD_PMC551 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_MTD_PMC551_BUGFIX policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n'}> +CONFIG_MTD_PMC551_DEBUG policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n'}> +CONFIG_MTD_DATAFLASH policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_MTD_DATAFLASH_WRITE_VERIFY policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n'}> +CONFIG_MTD_DATAFLASH_OTP policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_MTD_MCHP23K256 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_MTD_SST25L policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_MTD_BCM47XXSFLASH policy<{'armhf': 'm'}> +CONFIG_MTD_SLRAM policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_MTD_PHRAM policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_MTD_MTDRAM policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_MTDRAM_TOTAL_SIZE policy<{'amd64': '4096', 'arm64': '4096', 'armhf': '4096', 'ppc64el': '4096'}> +CONFIG_MTDRAM_ERASE_SIZE policy<{'amd64': '128', 'arm64': '128', 'armhf': '128', 'ppc64el': '128'}> +CONFIG_MTD_BLOCK2MTD policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_MTD_POWERNV_FLASH policy<{'ppc64el': 'm'}> +CONFIG_MTD_DOCG3 policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n'}> +# +CONFIG_MTD_DOCG3 mark note + +# Menu: Device Drivers >> Microsoft Hyper-V guest support +CONFIG_HYPERV policy<{'amd64': 'm'}> +CONFIG_HYPERV_UTILS policy<{'amd64': 'm'}> +CONFIG_HYPERV_BALLOON policy<{'amd64': 'm'}> + +# Menu: Device Drivers >> Misc devices +CONFIG_AD525X_DPOT policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'n'}> +CONFIG_AD525X_DPOT_I2C policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_AD525X_DPOT_SPI policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_DUMMY_IRQ policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'n'}> +CONFIG_IBM_ASM policy<{'amd64': 'm'}> +CONFIG_IBMVMC policy<{'ppc64el': 'm'}> +CONFIG_PHANTOM policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'n'}> +CONFIG_TIFM_CORE policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'n'}> +CONFIG_TIFM_7XX1 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_ICS932S401 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'n'}> +CONFIG_ENCLOSURE_SERVICES policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'n'}> +CONFIG_SGI_XP policy<{'amd64': 'm'}> +CONFIG_HP_ILO policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'n'}> +CONFIG_QCOM_COINCELL policy<{'arm64': 'm', 'armhf': 'm'}> +CONFIG_QCOM_FASTRPC policy<{'arm64': 'm', 'armhf': 'm'}> +CONFIG_SGI_GRU policy<{'amd64': 'm'}> +CONFIG_SGI_GRU_DEBUG policy<{'amd64': 'n'}> +CONFIG_APDS9802ALS policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'n'}> +CONFIG_ISL29003 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'n'}> +CONFIG_ISL29020 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'n'}> +CONFIG_SENSORS_TSL2550 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'n'}> +CONFIG_SENSORS_BH1770 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'n'}> +CONFIG_SENSORS_APDS990X policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'n'}> +CONFIG_HMC6352 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'n'}> +CONFIG_DS1682 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'n'}> +CONFIG_VMWARE_BALLOON policy<{'amd64': 'm'}> +CONFIG_LATTICE_ECP3_CONFIG policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SRAM policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'n'}> +CONFIG_PCI_ENDPOINT_TEST policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n', 's390x': 'n'}> +CONFIG_XILINX_SDFEC policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'n'}> +CONFIG_PVPANIC policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_CB710_CORE policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'n'}> +CONFIG_CB710_DEBUG policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n'}> +CONFIG_SENSORS_LIS3_SPI policy<{'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SENSORS_LIS3_I2C policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'n'}> +CONFIG_ALTERA_STAPL policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'n'}> +CONFIG_INTEL_MEI policy<{'amd64': 'm'}> +CONFIG_INTEL_MEI_ME policy<{'amd64': 'm'}> +CONFIG_INTEL_MEI_TXE policy<{'amd64': 'm'}> +CONFIG_INTEL_MEI_HDCP policy<{'amd64': 'm'}> +CONFIG_VMWARE_VMCI policy<{'amd64': 'm'}> +CONFIG_ECHO policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'n'}> +CONFIG_CXL policy<{'ppc64el': 'm'}> +CONFIG_OCXL policy<{'ppc64el': 'm'}> +CONFIG_MISC_ALCOR_PCI policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'n'}> +CONFIG_MISC_RTSX_PCI policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'n'}> +CONFIG_MISC_RTSX_USB policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_HABANA_AI policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'n'}> +CONFIG_UACCE policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'n'}> +# +CONFIG_CS5535_MFGPT note + +# Menu: Device Drivers >> Misc devices >> EEPROM support +CONFIG_EEPROM_AT24 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'n'}> +CONFIG_EEPROM_AT25 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_EEPROM_LEGACY policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'n'}> +CONFIG_EEPROM_MAX6875 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'n'}> +CONFIG_EEPROM_93CX6 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'n'}> +CONFIG_EEPROM_93XX46 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_EEPROM_IDT_89HPESX policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'n'}> +CONFIG_EEPROM_EE1004 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'n'}> + +# Menu: Device Drivers >> Misc devices >> GenWQE PCIe Accelerator +CONFIG_GENWQE policy<{'amd64': 'm', 'arm64': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_GENWQE_PLATFORM_ERROR_RECOVERY policy<{'amd64': '0', 'arm64': '0', 'ppc64el': '0', 's390x': '0'}> + +# Menu: Device Drivers >> Misc devices >> Intel MIC & related support +CONFIG_INTEL_MIC_BUS policy<{'amd64': 'm'}> +CONFIG_SCIF_BUS policy<{'amd64': 'm'}> +CONFIG_SCIF policy<{'amd64': 'm'}> +CONFIG_MIC_COSM policy<{'amd64': 'm'}> + +# Menu: Device Drivers >> Misc devices >> Intel MIC & related support >> VOP Bus Driver +CONFIG_VOP_BUS policy<{'amd64': 'm', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n', 's390x': 'n'}> +CONFIG_INTEL_MIC_HOST policy<{'amd64': 'm'}> +CONFIG_INTEL_MIC_CARD policy<{'amd64': 'm'}> +CONFIG_VOP policy<{'amd64': 'm'}> + +# Menu: Device Drivers >> Misc devices >> Silicon Labs C2 port support +CONFIG_C2PORT policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'n'}> +CONFIG_C2PORT_DURAMAR_2150 policy<{'amd64': 'm'}> + +# Menu: Device Drivers >> Misc devices >> Texas Instruments shared transport line discipline +CONFIG_TI_ST policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> + +# Menu: Device Drivers >> Multifunction device drivers +CONFIG_MFD_ALTERA_SYSMGR policy<{'arm64': 'y'}> +CONFIG_MFD_ACT8945A policy<{'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_MFD_SUN4I_GPADC policy<{'arm64': 'm'}> +CONFIG_MFD_AS3711 policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_MFD_AS3722 policy<{'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_PMIC_ADP5520 policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_MFD_AAT2870_CORE policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_MFD_ATMEL_FLEXCOM policy<{'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_MFD_ATMEL_HLCDC policy<{'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_MFD_BCM590XX policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'n'}> +CONFIG_MFD_BD9571MWV policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'n'}> +CONFIG_MFD_AC100 policy<{'arm64': 'n'}> +CONFIG_MFD_AXP20X_I2C policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'n'}> +CONFIG_MFD_AXP20X_RSB policy<{'arm64': 'm'}> +CONFIG_MFD_CROS_EC_DEV policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm'}> +CONFIG_MFD_ASIC3 policy<{'armhf': 'y'}> +CONFIG_PMIC_DA903X policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_MFD_DA9052_SPI policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_MFD_DA9052_I2C policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_MFD_DA9055 policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_MFD_DA9062 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'n'}> +CONFIG_MFD_DA9063 policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'n'}> +CONFIG_MFD_DA9150 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'n'}> +CONFIG_MFD_DLN2 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_MFD_EXYNOS_LPASS policy<{'armhf': 'm'}> +CONFIG_MFD_GATEWORKS_GSC policy<{'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_MFD_MC13XXX_SPI policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_MFD_MC13XXX_I2C policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'n'}> +CONFIG_MFD_MP2629 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'n'}> +CONFIG_MFD_HI6421_PMIC policy<{'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_MFD_HI655X_PMIC policy<{'arm64': 'm', 'armhf': 'm'}> +CONFIG_HTC_PASIC3 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'n'}> +CONFIG_HTC_I2CPLD policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_MFD_INTEL_QUARK_I2C_GPIO policy<{'amd64': 'm'}> +CONFIG_LPC_ICH policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'n'}> +CONFIG_LPC_SCH policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'n'}> +CONFIG_INTEL_SOC_PMIC policy<{'amd64': 'y'}> +CONFIG_INTEL_SOC_PMIC_BXTWC policy<{'amd64': 'm'}> +CONFIG_INTEL_SOC_PMIC_CHTWC policy<{'amd64': 'y'}> +CONFIG_INTEL_SOC_PMIC_CHTDC_TI policy<{'amd64': 'm'}> +CONFIG_INTEL_SOC_PMIC_MRFLD policy<{'amd64': 'm'}> +CONFIG_MFD_INTEL_LPSS_ACPI policy<{'amd64': 'm'}> +CONFIG_MFD_INTEL_LPSS_PCI policy<{'amd64': 'm'}> +CONFIG_MFD_INTEL_MSIC policy<{'amd64': 'y'}> +CONFIG_MFD_INTEL_PMC_BXT policy<{'amd64': 'm'}> +CONFIG_MFD_IQS62X policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'n'}> +CONFIG_MFD_JANZ_CMODIO policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'n'}> +CONFIG_MFD_KEMPLD policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'n'}> +CONFIG_MFD_88PM800 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'n'}> +CONFIG_MFD_88PM805 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'n'}> +CONFIG_MFD_88PM860X policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_MFD_MAX14577 policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'n'}> +CONFIG_MFD_MAX77620 policy<{'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_MFD_MAX77650 policy<{'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_MFD_MAX77686 policy<{'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_MFD_MAX77693 policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'n'}> +CONFIG_MFD_MAX77843 policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_MFD_MAX8907 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'n'}> +CONFIG_MFD_MAX8925 policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_MFD_MAX8997 policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_MFD_MAX8998 policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_MFD_MT6360 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'n'}> +CONFIG_MFD_MT6397 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'n'}> +CONFIG_MFD_MENF21BMC policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'n'}> +CONFIG_EZX_PCAP policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_MFD_CPCAP policy<{'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_MFD_VIPERBOARD policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_MFD_RETU policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'n'}> +CONFIG_MFD_PCF50633 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'n'}> +CONFIG_PCF50633_ADC policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_PCF50633_GPIO policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_UCB1400_CORE policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_MFD_PM8XXX policy<{'armhf': 'm'}> +CONFIG_MFD_QCOM_RPM policy<{'arm64': 'm', 'armhf': 'm'}> +CONFIG_MFD_SPMI_PMIC policy<{'arm64': 'm', 'armhf': 'm'}> +CONFIG_MFD_RDC321X policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'n'}> +CONFIG_MFD_RT5033 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'n'}> +CONFIG_MFD_RC5T583 policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_MFD_RK808 policy<{'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_MFD_RN5T618 policy<{'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_MFD_SEC_CORE policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_MFD_SI476X_CORE policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'n'}> +CONFIG_MFD_SM501 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'y', 'ppc64el': 'm', 's390x': 'n'}> +CONFIG_MFD_SM501_GPIO policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_MFD_SKY81452 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'n'}> +CONFIG_MFD_SMSC policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_MFD_SC27XX_PMIC policy<{'arm64': 'm'}> +CONFIG_ABX500_CORE policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'n'}> +CONFIG_AB3100_CORE policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_AB3100_OTP policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_MFD_STMPE policy<{'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_MFD_SUN6I_PRCM policy<{'arm64': 'y'}> +CONFIG_MFD_SYSCON policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'n'}> +CONFIG_MFD_TI_AM335X_TSCADC policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'n'}> +CONFIG_MFD_LP3943 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'n'}> +CONFIG_MFD_LP8788 policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_MFD_TI_LMU policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'n'}> +CONFIG_MFD_OMAP_USB_HOST policy<{'armhf': 'y'}> +CONFIG_MFD_PALMAS policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_TPS6105X policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'n'}> +CONFIG_TPS65010 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'n'}> +CONFIG_TPS6507X policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'n'}> +CONFIG_MFD_TPS65086 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'n'}> +CONFIG_MFD_TPS65090 policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_MFD_TPS65217 policy<{'arm64': 'm', 'armhf': 'y', 'ppc64el': 'n'}> +CONFIG_MFD_TPS68470 policy<{'amd64': 'y', 'arm64': 'y'}> +CONFIG_MFD_TI_LP873X policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'n'}> +CONFIG_MFD_TI_LP87565 policy<{'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_MFD_TPS65218 policy<{'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_MFD_TPS6586X policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_MFD_TPS65910 policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_MFD_TPS65912_I2C policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'n'}> +CONFIG_MFD_TPS65912_SPI policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_MFD_TPS80031 policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_TWL4030_CORE policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_TWL4030_POWER policy<{'armhf': 'y'}> +CONFIG_MFD_TWL4030_AUDIO policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_TWL6040_CORE policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_MFD_WL1273_CORE policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'n'}> +CONFIG_MFD_LM3533 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'n'}> +CONFIG_MFD_TC3589X policy<{'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_MFD_T7L66XB policy<{'armhf': 'y'}> +CONFIG_MFD_TC6387XB policy<{'armhf': 'y'}> +CONFIG_MFD_TC6393XB policy<{'armhf': 'y'}> +CONFIG_MFD_TQMX86 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'n'}> +CONFIG_MFD_VX855 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'n'}> +CONFIG_MFD_LOCHNAGAR policy<{'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_MFD_ARIZONA_I2C policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'n'}> +CONFIG_MFD_ARIZONA_SPI policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_MFD_CS47L24 policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_MFD_WM5102 policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_MFD_WM5110 policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_MFD_WM8997 policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_MFD_WM8998 policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_MFD_WM8400 policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_MFD_WM831X_I2C policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_MFD_WM831X_SPI policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_MFD_WM8350_I2C policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_MFD_WM8994 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'n'}> +CONFIG_MFD_ROHM_BD718XX policy<{'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_MFD_ROHM_BD70528 policy<{'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_MFD_ROHM_BD71828 policy<{'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_MFD_STPMIC1 policy<{'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_MFD_STMFX policy<{'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_MFD_WCD934X policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'n'}> +CONFIG_MFD_VEXPRESS_SYSREG policy<{'arm64': 'y', 'armhf': 'y'}> +CONFIG_RAVE_SP_CORE policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'n'}> +# +CONFIG_MFD_SM501 note +CONFIG_MFD_TPS65217 mark note + +# Menu: Device Drivers >> Multifunction device drivers >> Cirrus Logic Madera codecs +CONFIG_MFD_MADERA policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'n'}> +CONFIG_MFD_MADERA_I2C policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_MFD_MADERA_SPI policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_MFD_CS47L15 policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_MFD_CS47L35 policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_MFD_CS47L85 policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_MFD_CS47L90 policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_MFD_CS47L92 policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> + +# Menu: Device Drivers >> Multifunction device drivers >> Multimedia Capabilities Port drivers + +# Menu: Device Drivers >> Multifunction device drivers >> STMicroelectronics STMPE Interface Drivers +CONFIG_STMPE_I2C policy<{'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_STMPE_SPI policy<{'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> + +# Menu: Device Drivers >> Multimedia support +CONFIG_MEDIA_SUPPORT policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'n'}> +CONFIG_MEDIA_SUPPORT_FILTER policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_MEDIA_SUBDRV_AUTOSELECT policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> + +# Menu: Device Drivers >> Multimedia support >> Digital TV options +CONFIG_DVB_MMAP policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n'}> +CONFIG_DVB_NET policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_DVB_MAX_ADAPTERS policy<{'amd64': '8', 'arm64': '8', 'armhf': '8', 'ppc64el': '8'}> +CONFIG_DVB_DYNAMIC_MINORS policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_DVB_DEMUX_SECTION_LOSS_LOG policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n'}> +CONFIG_DVB_ULE_DEBUG policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n'}> +# +CONFIG_DVB_ULE_DEBUG flag + +# Menu: Device Drivers >> Multimedia support >> Media ancillary drivers +CONFIG_DVB_DUMMY_FE policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_VIDEO_IR_I2C policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +# +CONFIG_DVB_DUMMY_FE note + +# Menu: Device Drivers >> Multimedia support >> Media ancillary drivers >> Audio decoders, processors and mixers +CONFIG_VIDEO_TVAUDIO policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_VIDEO_TDA7432 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_VIDEO_TDA9840 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_VIDEO_TDA1997X policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_VIDEO_TEA6415C policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_VIDEO_TEA6420 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_VIDEO_MSP3400 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_VIDEO_CS3308 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_VIDEO_CS5345 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_VIDEO_CS53L32A policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_VIDEO_TLV320AIC23B policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_VIDEO_UDA1342 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_VIDEO_WM8775 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_VIDEO_WM8739 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_VIDEO_VP27SMPX policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_VIDEO_SONY_BTF_MPX policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> + +# Menu: Device Drivers >> Multimedia support >> Media ancillary drivers >> Audio/Video compression chips +CONFIG_VIDEO_SAA6752HS policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> + +# Menu: Device Drivers >> Multimedia support >> Media ancillary drivers >> Camera sensor devices +CONFIG_VIDEO_HI556 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_VIDEO_IMX214 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_VIDEO_IMX219 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_VIDEO_IMX258 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_VIDEO_IMX274 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_VIDEO_IMX290 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_VIDEO_IMX319 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_VIDEO_IMX355 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_VIDEO_OV2640 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_VIDEO_OV2659 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_VIDEO_OV2680 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_VIDEO_OV2685 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_VIDEO_OV2740 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_VIDEO_OV5640 policy<{'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_VIDEO_OV5645 policy<{'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_VIDEO_OV5647 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_VIDEO_OV6650 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_VIDEO_OV5670 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_VIDEO_OV5675 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_VIDEO_OV5695 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_VIDEO_OV7251 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_VIDEO_OV772X policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_VIDEO_OV7640 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_VIDEO_OV7670 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_VIDEO_OV7740 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_VIDEO_OV8856 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_VIDEO_OV9640 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_VIDEO_OV9650 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_VIDEO_OV13858 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_VIDEO_VS6624 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_VIDEO_MT9M001 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_VIDEO_MT9M032 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_VIDEO_MT9M111 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_VIDEO_MT9P031 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_VIDEO_MT9T001 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_VIDEO_MT9T112 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_VIDEO_MT9V011 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_VIDEO_MT9V032 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_VIDEO_MT9V111 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_VIDEO_SR030PC30 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_VIDEO_NOON010PC30 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_VIDEO_M5MOLS policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_VIDEO_RJ54N1 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_VIDEO_S5K6AA policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_VIDEO_S5K6A3 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_VIDEO_S5K4ECGX policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_VIDEO_S5K5BAF policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_VIDEO_SMIAPP policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_VIDEO_ET8EK8 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_VIDEO_S5C73M3 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> + +# Menu: Device Drivers >> Multimedia support >> Media ancillary drivers >> Customise DVB Frontends +CONFIG_DVB_STB0899 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_DVB_STB6100 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_DVB_STV090x policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_DVB_STV0910 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_DVB_STV6110x policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_DVB_STV6111 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_DVB_MXL5XX policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_DVB_M88DS3103 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_DVB_DRXK policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_DVB_TDA18271C2DD policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_DVB_SI2165 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_DVB_MN88472 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_DVB_MN88473 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_DVB_CX24110 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_DVB_CX24123 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_DVB_MT312 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_DVB_ZL10036 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_DVB_ZL10039 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_DVB_S5H1420 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_DVB_STV0288 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_DVB_STB6000 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_DVB_STV0299 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_DVB_STV6110 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_DVB_STV0900 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_DVB_TDA8083 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_DVB_TDA10086 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_DVB_TDA8261 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_DVB_VES1X93 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_DVB_TUNER_ITD1000 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_DVB_TUNER_CX24113 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_DVB_TDA826X policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_DVB_TUA6100 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_DVB_CX24116 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_DVB_CX24117 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_DVB_CX24120 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_DVB_SI21XX policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_DVB_TS2020 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_DVB_DS3000 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_DVB_MB86A16 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_DVB_TDA10071 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_DVB_SP8870 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_DVB_SP887X policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_DVB_CX22700 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_DVB_CX22702 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_DVB_S5H1432 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_DVB_DRXD policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_DVB_L64781 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_DVB_TDA1004X policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_DVB_NXT6000 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_DVB_MT352 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_DVB_ZL10353 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_DVB_DIB3000MB policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_DVB_DIB3000MC policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_DVB_DIB7000M policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_DVB_DIB7000P policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_DVB_DIB9000 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_DVB_TDA10048 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_DVB_AF9013 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_DVB_EC100 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_DVB_STV0367 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_DVB_CXD2820R policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_DVB_CXD2841ER policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_DVB_RTL2830 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_DVB_RTL2832 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_DVB_RTL2832_SDR policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_DVB_SI2168 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_DVB_ZD1301_DEMOD policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_DVB_CXD2880 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_DVB_VES1820 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_DVB_TDA10021 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_DVB_TDA10023 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_DVB_STV0297 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_DVB_NXT200X policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_DVB_OR51211 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_DVB_OR51132 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_DVB_BCM3510 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_DVB_LGDT330X policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_DVB_LGDT3305 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_DVB_LGDT3306A policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_DVB_LG2160 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_DVB_S5H1409 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_DVB_AU8522_DTV policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_DVB_AU8522_V4L policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_DVB_S5H1411 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_DVB_S921 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_DVB_DIB8000 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_DVB_MB86A20S policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_DVB_TC90522 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_DVB_MN88443X policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_DVB_PLL policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_DVB_TUNER_DIB0070 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_DVB_TUNER_DIB0090 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_DVB_DRX39XYJ policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_DVB_LNBH25 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_DVB_LNBH29 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_DVB_LNBP21 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_DVB_LNBP22 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_DVB_ISL6405 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_DVB_ISL6421 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_DVB_ISL6423 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_DVB_A8293 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_DVB_LGS8GL5 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_DVB_LGS8GXX policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_DVB_ATBM8830 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_DVB_TDA665x policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_DVB_IX2505V policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_DVB_M88RS2000 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_DVB_AF9033 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_DVB_HORUS3A policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_DVB_ASCOT2E policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_DVB_HELENE policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_DVB_CXD2099 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_DVB_SP2 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> + +# Menu: Device Drivers >> Multimedia support >> Media ancillary drivers >> Customize TV tuners +CONFIG_MEDIA_TUNER_SIMPLE policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_MEDIA_TUNER_TDA18250 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_MEDIA_TUNER_TDA8290 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_MEDIA_TUNER_TDA827X policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_MEDIA_TUNER_TDA18271 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_MEDIA_TUNER_TDA9887 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_MEDIA_TUNER_TEA5761 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_MEDIA_TUNER_TEA5767 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_MEDIA_TUNER_MSI001 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_MEDIA_TUNER_MT20XX policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_MEDIA_TUNER_MT2060 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_MEDIA_TUNER_MT2063 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_MEDIA_TUNER_MT2266 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_MEDIA_TUNER_MT2131 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_MEDIA_TUNER_QT1010 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_MEDIA_TUNER_XC2028 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_MEDIA_TUNER_XC5000 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_MEDIA_TUNER_XC4000 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_MEDIA_TUNER_MXL5005S policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_MEDIA_TUNER_MXL5007T policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_MEDIA_TUNER_MC44S803 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_MEDIA_TUNER_MAX2165 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_MEDIA_TUNER_TDA18218 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_MEDIA_TUNER_FC0011 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_MEDIA_TUNER_FC0012 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_MEDIA_TUNER_FC0013 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_MEDIA_TUNER_TDA18212 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_MEDIA_TUNER_E4000 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_MEDIA_TUNER_FC2580 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_MEDIA_TUNER_M88RS6000T policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_MEDIA_TUNER_TUA9001 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_MEDIA_TUNER_SI2157 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_MEDIA_TUNER_IT913X policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_MEDIA_TUNER_R820T policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_MEDIA_TUNER_MXL301RF policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_MEDIA_TUNER_QM1D1C0042 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_MEDIA_TUNER_QM1D1B0004 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> + +# Menu: Device Drivers >> Multimedia support >> Media ancillary drivers >> Flash devices +CONFIG_VIDEO_ADP1653 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_VIDEO_LM3560 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_VIDEO_LM3646 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> + +# Menu: Device Drivers >> Multimedia support >> Media ancillary drivers >> Lens drivers +CONFIG_VIDEO_AD5820 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_VIDEO_AK7375 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_VIDEO_DW9714 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_VIDEO_DW9807_VCM policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> + +# Menu: Device Drivers >> Multimedia support >> Media ancillary drivers >> Media SPI Adapters +CONFIG_CXD2880_SPI_DRV policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> + +# Menu: Device Drivers >> Multimedia support >> Media ancillary drivers >> Miscellaneous helper chips +CONFIG_VIDEO_THS7303 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_VIDEO_M52790 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_VIDEO_I2C policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_VIDEO_ST_MIPID02 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> + +# Menu: Device Drivers >> Multimedia support >> Media ancillary drivers >> RDS decoders +CONFIG_VIDEO_SAA6588 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> + +# Menu: Device Drivers >> Multimedia support >> Media ancillary drivers >> SDR tuner chips +CONFIG_SDR_MAX2175 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> + +# Menu: Device Drivers >> Multimedia support >> Media ancillary drivers >> SPI helper chips +CONFIG_VIDEO_GS1662 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> + +# Menu: Device Drivers >> Multimedia support >> Media ancillary drivers >> Video decoders +CONFIG_VIDEO_ADV7180 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_VIDEO_ADV7183 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_VIDEO_ADV748X policy<{'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_VIDEO_ADV7604 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_VIDEO_ADV7604_CEC policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_VIDEO_ADV7842 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_VIDEO_ADV7842_CEC policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_VIDEO_BT819 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_VIDEO_BT856 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_VIDEO_BT866 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_VIDEO_KS0127 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_VIDEO_ML86V7667 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_VIDEO_SAA7110 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_VIDEO_SAA711X policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_VIDEO_TC358743 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_VIDEO_TC358743_CEC policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_VIDEO_TVP514X policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_VIDEO_TVP5150 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_VIDEO_TVP7002 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_VIDEO_TW2804 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_VIDEO_TW9903 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_VIDEO_TW9906 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_VIDEO_TW9910 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_VIDEO_VPX3220 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_VIDEO_SAA717X policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_VIDEO_CX25840 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> + +# Menu: Device Drivers >> Multimedia support >> Media ancillary drivers >> Video encoders +CONFIG_VIDEO_SAA7127 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_VIDEO_SAA7185 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_VIDEO_ADV7170 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_VIDEO_ADV7175 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_VIDEO_ADV7343 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_VIDEO_ADV7393 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_VIDEO_ADV7511 policy<{'amd64': 'm'}> +CONFIG_VIDEO_ADV7511_CEC policy<{'amd64': 'y'}> +CONFIG_VIDEO_AD9389B policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_VIDEO_AK881X policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_VIDEO_THS8200 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> + +# Menu: Device Drivers >> Multimedia support >> Media ancillary drivers >> Video improvement chips +CONFIG_VIDEO_UPD64031A policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_VIDEO_UPD64083 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> + +# Menu: Device Drivers >> Multimedia support >> Media controller options +CONFIG_MEDIA_CONTROLLER_DVB policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> + +# Menu: Device Drivers >> Multimedia support >> Media core support +CONFIG_VIDEO_DEV policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_MEDIA_CONTROLLER policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> + +# Menu: Device Drivers >> Multimedia support >> Media device types +CONFIG_MEDIA_CAMERA_SUPPORT policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_MEDIA_ANALOG_TV_SUPPORT policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_MEDIA_DIGITAL_TV_SUPPORT policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_MEDIA_RADIO_SUPPORT policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_MEDIA_SDR_SUPPORT policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_MEDIA_PLATFORM_SUPPORT policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_MEDIA_TEST_SUPPORT policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> + +# Menu: Device Drivers >> Multimedia support >> Media drivers +CONFIG_SMS_SDIO_DRV policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_DVB_FIREDTV policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SMS_SIANO_RC policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_SMS_SIANO_DEBUGFS policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> + +# Menu: Device Drivers >> Multimedia support >> Media drivers >> DVB platform devices +CONFIG_DVB_PLATFORM_DRIVERS policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_DVB_C8SECTPFE policy<{'armhf': 'n'}> +# +CONFIG_DVB_C8SECTPFE flag + +# Menu: Device Drivers >> Multimedia support >> Media drivers >> Media PCI Adapters +CONFIG_VIDEO_PCI_SKELETON policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n'}> +CONFIG_MEDIA_PCI_SUPPORT policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_VIDEO_MEYE policy<{'amd64': 'm'}> +CONFIG_VIDEO_SOLO6X10 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_VIDEO_TW5864 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_VIDEO_TW68 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_VIDEO_TW686X policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_VIDEO_HEXIUM_GEMINI policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_VIDEO_HEXIUM_ORION policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_VIDEO_MXB policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_VIDEO_DT3155 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_VIDEO_CX18 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_VIDEO_CX18_ALSA policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_VIDEO_CX23885 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_MEDIA_ALTERA_CI policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_VIDEO_CX25821 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_VIDEO_CX25821_ALSA policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_VIDEO_BT848 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_DVB_BT8XX policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_VIDEO_SAA7164 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_VIDEO_COBALT policy<{'amd64': 'm'}> +CONFIG_DVB_AV7110 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_DVB_AV7110_OSD policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_DVB_B2C2_FLEXCOP_PCI policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_DVB_B2C2_FLEXCOP_PCI_DEBUG policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n'}> +CONFIG_DVB_PLUTO2 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_DVB_DM1105 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_DVB_PT1 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_DVB_PT3 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_MANTIS_CORE policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_DVB_MANTIS policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_DVB_HOPPER policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_DVB_NGENE policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_DVB_DDBRIDGE policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_DVB_DDBRIDGE_MSIENABLE policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n'}> +CONFIG_DVB_SMIPCIE policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_DVB_NETUP_UNIDVB policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_VIDEO_IPU3_CIO2 policy<{'amd64': 'm'}> + +# Menu: Device Drivers >> Multimedia support >> Media drivers >> Media PCI Adapters >> Conexant 2388x (bt878 successor) support +CONFIG_VIDEO_CX88 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_VIDEO_CX88_ALSA policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_VIDEO_CX88_BLACKBIRD policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_VIDEO_CX88_DVB policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_VIDEO_CX88_ENABLE_VP3054 policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> + +# Menu: Device Drivers >> Multimedia support >> Media drivers >> Media PCI Adapters >> Conexant cx23416/cx23415 MPEG encoder/decoder support +CONFIG_VIDEO_IVTV policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_VIDEO_IVTV_DEPRECATED_IOCTLS policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n'}> +CONFIG_VIDEO_IVTV_ALSA policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_VIDEO_FB_IVTV policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_VIDEO_FB_IVTV_FORCE_PAT policy<{'amd64': 'y'}> + +# Menu: Device Drivers >> Multimedia support >> Media drivers >> Media PCI Adapters >> Philips SAA7134 support +CONFIG_VIDEO_SAA7134 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_VIDEO_SAA7134_ALSA policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_VIDEO_SAA7134_RC policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_VIDEO_SAA7134_DVB policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_VIDEO_SAA7134_GO7007 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> + +# Menu: Device Drivers >> Multimedia support >> Media drivers >> Media PCI Adapters >> SAA7146 DVB cards (aka Budget, Nova-PCI) +CONFIG_DVB_BUDGET_CORE policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_DVB_BUDGET policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_DVB_BUDGET_CI policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_DVB_BUDGET_AV policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_DVB_BUDGET_PATCH policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> + +# Menu: Device Drivers >> Multimedia support >> Media drivers >> Media USB Adapters +CONFIG_MEDIA_USB_SUPPORT policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_USB_VIDEO_CLASS policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_USB_VIDEO_CLASS_INPUT_EVDEV policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_USB_PWC policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_USB_PWC_DEBUG policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n'}> +CONFIG_USB_PWC_INPUT_EVDEV policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_VIDEO_CPIA2 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_USB_ZR364XX policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_USB_STKWEBCAM policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_USB_S2255 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_VIDEO_USBTV policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_VIDEO_PVRUSB2 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_VIDEO_PVRUSB2_SYSFS policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_VIDEO_PVRUSB2_DVB policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_VIDEO_PVRUSB2_DEBUGIFC policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n'}> +CONFIG_VIDEO_HDPVR policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_VIDEO_STK1160_COMMON policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_VIDEO_GO7007 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_VIDEO_GO7007_USB policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_VIDEO_GO7007_LOADER policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_VIDEO_GO7007_USB_S2250_BOARD policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_VIDEO_AU0828 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_VIDEO_AU0828_V4L2 policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_VIDEO_AU0828_RC policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_VIDEO_TM6000 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_VIDEO_TM6000_ALSA policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_VIDEO_TM6000_DVB policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_DVB_TTUSB_BUDGET policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_DVB_TTUSB_DEC policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SMS_USB_DRV policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_DVB_B2C2_FLEXCOP_USB policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_DVB_B2C2_FLEXCOP_USB_DEBUG policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n'}> +CONFIG_DVB_AS102 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_USB_AIRSPY policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_USB_HACKRF policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_USB_MSI2500 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> + +# Menu: Device Drivers >> Multimedia support >> Media drivers >> Media USB Adapters >> Conexant cx231xx USB video capture support +CONFIG_VIDEO_CX231XX policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_VIDEO_CX231XX_RC policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_VIDEO_CX231XX_ALSA policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_VIDEO_CX231XX_DVB policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> + +# Menu: Device Drivers >> Multimedia support >> Media drivers >> Media USB Adapters >> Empia EM28xx USB devices support +CONFIG_VIDEO_EM28XX policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_VIDEO_EM28XX_V4L2 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_VIDEO_EM28XX_ALSA policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_VIDEO_EM28XX_DVB policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_VIDEO_EM28XX_RC policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> + +# Menu: Device Drivers >> Multimedia support >> Media drivers >> Media USB Adapters >> GSPCA based webcams +CONFIG_USB_GSPCA policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_USB_M5602 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_USB_STV06XX policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_USB_GL860 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_USB_GSPCA_BENQ policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_USB_GSPCA_CONEX policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_USB_GSPCA_CPIA1 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_USB_GSPCA_DTCS033 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_USB_GSPCA_ETOMS policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_USB_GSPCA_FINEPIX policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_USB_GSPCA_JEILINJ policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_USB_GSPCA_JL2005BCD policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_USB_GSPCA_KINECT policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_USB_GSPCA_KONICA policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_USB_GSPCA_MARS policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_USB_GSPCA_MR97310A policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_USB_GSPCA_NW80X policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_USB_GSPCA_OV519 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_USB_GSPCA_OV534 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_USB_GSPCA_OV534_9 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_USB_GSPCA_PAC207 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_USB_GSPCA_PAC7302 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_USB_GSPCA_PAC7311 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_USB_GSPCA_SE401 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_USB_GSPCA_SN9C2028 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_USB_GSPCA_SN9C20X policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_USB_GSPCA_SONIXB policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_USB_GSPCA_SONIXJ policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_USB_GSPCA_SPCA500 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_USB_GSPCA_SPCA501 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_USB_GSPCA_SPCA505 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_USB_GSPCA_SPCA506 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_USB_GSPCA_SPCA508 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_USB_GSPCA_SPCA561 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_USB_GSPCA_SPCA1528 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_USB_GSPCA_SQ905 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_USB_GSPCA_SQ905C policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_USB_GSPCA_SQ930X policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_USB_GSPCA_STK014 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_USB_GSPCA_STK1135 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_USB_GSPCA_STV0680 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_USB_GSPCA_SUNPLUS policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_USB_GSPCA_T613 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_USB_GSPCA_TOPRO policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_USB_GSPCA_TOUPTEK policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_USB_GSPCA_TV8532 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_USB_GSPCA_VC032X policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_USB_GSPCA_VICAM policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_USB_GSPCA_XIRLINK_CIT policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_USB_GSPCA_ZC3XX policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> + +# Menu: Device Drivers >> Multimedia support >> Media drivers >> Media USB Adapters >> Support for various USB DVB devices +CONFIG_DVB_USB policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_DVB_USB_DEBUG policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n'}> +CONFIG_DVB_USB_A800 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_DVB_USB_DIBUSB_MB policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_DVB_USB_DIBUSB_MB_FAULTY policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n'}> +CONFIG_DVB_USB_DIBUSB_MC policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_DVB_USB_DIB0700 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_DVB_USB_UMT_010 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_DVB_USB_CXUSB policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_DVB_USB_CXUSB_ANALOG policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_DVB_USB_M920X policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_DVB_USB_DIGITV policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_DVB_USB_VP7045 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_DVB_USB_VP702X policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_DVB_USB_GP8PSK policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_DVB_USB_NOVA_T_USB2 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_DVB_USB_TTUSB2 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_DVB_USB_DTT200U policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_DVB_USB_OPERA1 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_DVB_USB_AF9005 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_DVB_USB_AF9005_REMOTE policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_DVB_USB_PCTV452E policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_DVB_USB_DW2102 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_DVB_USB_CINERGY_T2 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_DVB_USB_DTV5100 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_DVB_USB_AZ6027 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_DVB_USB_TECHNISAT_USB2 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> + +# Menu: Device Drivers >> Multimedia support >> Media drivers >> Media USB Adapters >> Support for various USB DVB devices v2 +CONFIG_DVB_USB_V2 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_DVB_USB_AF9015 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_DVB_USB_AF9035 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_DVB_USB_ANYSEE policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_DVB_USB_AU6610 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_DVB_USB_AZ6007 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_DVB_USB_CE6230 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_DVB_USB_EC168 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_DVB_USB_GL861 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_DVB_USB_LME2510 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_DVB_USB_MXL111SF policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_DVB_USB_RTL28XXU policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_DVB_USB_DVBSKY policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_DVB_USB_ZD1301 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> + +# Menu: Device Drivers >> Multimedia support >> Media drivers >> Memory-to-memory multimedia devices +CONFIG_V4L_MEM2MEM_DRIVERS policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_VIDEO_CODA policy<{'arm64': 'm', 'armhf-generic': 'm'}> +CONFIG_VIDEO_IMX_PXP policy<{'arm64': 'm', 'armhf-generic': 'm'}> +CONFIG_VIDEO_MEDIATEK_VPU policy<{'arm64': 'm', 'armhf': 'm'}> +CONFIG_VIDEO_MEM2MEM_DEINTERLACE policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_VIDEO_SAMSUNG_S5P_G2D policy<{'armhf': 'm'}> +CONFIG_VIDEO_SAMSUNG_S5P_JPEG policy<{'armhf': 'm'}> +CONFIG_VIDEO_SAMSUNG_S5P_MFC policy<{'armhf': 'm'}> +CONFIG_VIDEO_SAMSUNG_EXYNOS_GSC policy<{'armhf': 'm'}> +CONFIG_VIDEO_RENESAS_FDP1 policy<{'arm64': 'm', 'armhf': 'm'}> +CONFIG_VIDEO_RENESAS_JPU policy<{'arm64': 'm', 'armhf': 'm'}> +CONFIG_VIDEO_RENESAS_FCP policy<{'arm64': 'm', 'armhf': 'm'}> +CONFIG_VIDEO_RENESAS_VSP1 policy<{'arm64': 'm', 'armhf': 'm'}> +CONFIG_VIDEO_ROCKCHIP_RGA policy<{'arm64': 'm', 'armhf': 'm'}> +CONFIG_VIDEO_TI_VPE policy<{'armhf': 'm'}> +CONFIG_VIDEO_TI_VPE_DEBUG policy<{'armhf': 'n'}> +CONFIG_VIDEO_QCOM_VENUS policy<{'arm64': 'm'}> +CONFIG_VIDEO_SUN8I_DEINTERLACE policy<{'arm64': 'm'}> +CONFIG_VIDEO_SUN8I_ROTATE policy<{'arm64': 'm'}> + +# Menu: Device Drivers >> Multimedia support >> Media drivers >> Radio Adapters +CONFIG_RADIO_ADAPTERS policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_RADIO_SI470X policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_USB_SI470X policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_I2C_SI470X policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_RADIO_SI476X policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_USB_MR800 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_USB_DSBR policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_RADIO_MAXIRADIO policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_RADIO_SHARK policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_RADIO_SHARK2 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_USB_KEENE policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_USB_RAREMONO policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_USB_MA901 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_RADIO_TEA5764 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_RADIO_SAA7706H policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_RADIO_TEF6862 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_RADIO_WL1273 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_RADIO_WL128X policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> + +# Menu: Device Drivers >> Multimedia support >> Media drivers >> Radio Adapters >> ISA radio devices + +# Menu: Device Drivers >> Multimedia support >> Media drivers >> Radio Adapters >> Silicon Labs Si4713 FM Radio with RDS Transmitter support +CONFIG_RADIO_SI4713 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_USB_SI4713 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_PLATFORM_SI4713 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_I2C_SI4713 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> + +# Menu: Device Drivers >> Multimedia support >> Media drivers >> SDR platform devices +CONFIG_SDR_PLATFORM_DRIVERS policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_VIDEO_RCAR_DRIF policy<{'arm64': 'm', 'armhf': 'm'}> + +# Menu: Device Drivers >> Multimedia support >> Media drivers >> V4L platform devices +CONFIG_V4L_PLATFORM_DRIVERS policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_VIDEO_CAFE_CCIC policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_VIDEO_VIA_CAMERA policy<{'amd64': 'm'}> +CONFIG_VIDEO_CADENCE policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_VIDEO_CADENCE_CSI2RX policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_VIDEO_CADENCE_CSI2TX policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_VIDEO_OMAP2_VOUT policy<{'armhf-generic': 'm'}> +CONFIG_VIDEO_ASPEED policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_VIDEO_MUX policy<{'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_VIDEO_OMAP3 policy<{'armhf-generic': 'm'}> +CONFIG_VIDEO_OMAP3_DEBUG policy<{'armhf-generic': 'n'}> +CONFIG_VIDEO_QCOM_CAMSS policy<{'arm64': 'm'}> +CONFIG_VIDEO_RENESAS_CEU policy<{'armhf': 'm'}> +CONFIG_VIDEO_XILINX policy<{'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_VIDEO_XILINX_TPG policy<{'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_VIDEO_XILINX_VTC policy<{'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_VIDEO_RCAR_CSI2 policy<{'arm64': 'm', 'armhf': 'm'}> +CONFIG_VIDEO_RCAR_VIN policy<{'arm64': 'm', 'armhf': 'm'}> +CONFIG_VIDEO_SUN4I_CSI policy<{'arm64': 'm'}> +CONFIG_VIDEO_SUN6I_CSI policy<{'arm64': 'm'}> +CONFIG_VIDEO_TI_CAL policy<{'arm64': 'm', 'armhf': 'm'}> + +# Menu: Device Drivers >> Multimedia support >> Media drivers >> V4L platform devices >> Samsung S5P/EXYNOS4 SoC series Camera Subsystem driver +CONFIG_VIDEO_SAMSUNG_EXYNOS4_IS policy<{'armhf': 'n'}> + +# Menu: Device Drivers >> Multimedia support >> Media drivers >> V4L test drivers +CONFIG_V4L_TEST_DRIVERS policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_VIDEO_VIMC policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_VIDEO_VIVID policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_VIDEO_VIVID_CEC policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_VIDEO_VIVID_MAX_DEVS policy<{'amd64': '64', 'arm64': '64', 'armhf': '64', 'ppc64el': '64'}> +CONFIG_VIDEO_VIM2M policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_VIDEO_VICODEC policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +# +CONFIG_VIDEO_VIMC note + +# Menu: Device Drivers >> Multimedia support >> Video4Linux options +CONFIG_VIDEO_ADV_DEBUG policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n'}> +CONFIG_VIDEO_FIXED_MINOR_RANGES policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n'}> +CONFIG_VIDEO_V4L2_SUBDEV_API policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_V4L2_FLASH_LED_CLASS policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> + +# Menu: Device Drivers >> Multiple devices driver support (RAID and LVM) +CONFIG_MD policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_DM_DEBUG_BLOCK_MANAGER_LOCKING policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n', 's390x': 'n'}> + +# Menu: Device Drivers >> Multiple devices driver support (RAID and LVM) >> Block device as cache +CONFIG_BCACHE policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_BCACHE_DEBUG policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n', 's390x': 'n'}> +CONFIG_BCACHE_CLOSURES_DEBUG policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n', 's390x': 'n'}> +CONFIG_BCACHE_ASYNC_REGISTRAION policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> + +# Menu: Device Drivers >> Multiple devices driver support (RAID and LVM) >> Device mapper support +CONFIG_BLK_DEV_DM policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_DM_DEBUG policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n', 's390x': 'y'}> +CONFIG_DM_UNSTRIPED policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_DM_CRYPT policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_DM_SNAPSHOT policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_DM_THIN_PROVISIONING policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_DM_CACHE policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_DM_CACHE_SMQ policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_DM_WRITECACHE policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_DM_EBS policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_DM_ERA policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_DM_CLONE policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_DM_MIRROR policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_DM_LOG_USERSPACE policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_DM_RAID policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_DM_ZERO policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_DM_DELAY policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_DM_DUST policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n', 's390x': 'n'}> +CONFIG_DM_INIT policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_DM_UEVENT policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_DM_FLAKEY policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_DM_VERITY policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_DM_VERITY_VERIFY_ROOTHASH_SIG policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_DM_VERITY_FEC policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n', 's390x': 'n'}> +CONFIG_DM_SWITCH policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_DM_LOG_WRITES policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_DM_INTEGRITY policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_DM_ZONED policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +# +CONFIG_BLK_DEV_DM mark note + +# Menu: Device Drivers >> Multiple devices driver support (RAID and LVM) >> Device mapper support >> Multipath target +CONFIG_DM_MULTIPATH policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_DM_MULTIPATH_QL policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_DM_MULTIPATH_ST policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_DM_MULTIPATH_HST policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> + +# Menu: Device Drivers >> Multiple devices driver support (RAID and LVM) >> RAID support +CONFIG_BLK_DEV_MD policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_MD_AUTODETECT policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_MD_LINEAR policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_MD_RAID0 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_MD_RAID1 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_MD_RAID10 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_MD_RAID456 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_MD_MULTIPATH policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'y'}> +CONFIG_MD_FAULTY policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_MD_CLUSTER policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> + +# Menu: Device Drivers >> Multiplexer drivers +CONFIG_MUX_ADG792A policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_MUX_ADGS1408 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_MUX_GPIO policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_MUX_MMIO policy<{'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> + +# Menu: Device Drivers >> NVDIMM (Non-Volatile Memory Device) Support +CONFIG_LIBNVDIMM policy<{'amd64': 'y', 'arm64': 'y', 'armhf-generic-lpae': 'y', 'ppc64el': 'y', 's390x': 'n'}> +CONFIG_BLK_DEV_PMEM policy<{'amd64': 'm', 'arm64': 'm', 'armhf-generic-lpae': 'm', 'ppc64el': 'm'}> +CONFIG_ND_BLK policy<{'amd64': 'm', 'arm64': 'm', 'armhf-generic-lpae': 'm', 'ppc64el': 'm'}> +CONFIG_BTT policy<{'amd64': 'y', 'arm64': 'y', 'armhf-generic-lpae': 'y', 'ppc64el': 'y'}> +CONFIG_NVDIMM_PFN policy<{'amd64': 'y', 'arm64': 'y', 'ppc64el': 'y'}> +CONFIG_NVDIMM_DAX policy<{'amd64': 'y', 'arm64': 'y', 'ppc64el': 'y'}> +CONFIG_OF_PMEM policy<{'arm64': 'm', 'armhf-generic-lpae': 'm', 'ppc64el': 'm'}> + +# Menu: Device Drivers >> NVME Support +CONFIG_BLK_DEV_NVME policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_NVME_MULTIPATH policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_NVME_HWMON policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_NVME_RDMA policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_NVME_FC policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_NVME_TCP policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +# +CONFIG_BLK_DEV_NVME mark note + +# Menu: Device Drivers >> NVME Support >> NVMe Target support +CONFIG_NVME_TARGET policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_NVME_TARGET_LOOP policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_NVME_TARGET_RDMA policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_NVME_TARGET_FC policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_NVME_TARGET_FCLOOP policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n', 's390x': 'n'}> +CONFIG_NVME_TARGET_TCP policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> + +# Menu: Device Drivers >> NVMEM Support +CONFIG_NVMEM policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'n'}> +CONFIG_NVMEM_SYSFS policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_NVMEM_IMX_IIM policy<{'arm64': 'm', 'armhf-generic': 'm'}> +CONFIG_NVMEM_IMX_OCOTP policy<{'arm64': 'm', 'armhf-generic': 'm'}> +CONFIG_NVMEM_IMX_OCOTP_SCU policy<{'arm64': 'm', 'armhf-generic': 'm'}> +CONFIG_MTK_EFUSE policy<{'arm64': 'n', 'armhf': 'n'}> +CONFIG_QCOM_QFPROM policy<{'arm64': 'm', 'armhf': 'm'}> +CONFIG_NVMEM_SPMI_SDAM policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_ROCKCHIP_EFUSE policy<{'arm64': 'm', 'armhf': 'm'}> +CONFIG_ROCKCHIP_OTP policy<{'arm64': 'm', 'armhf': 'm'}> +CONFIG_NVMEM_BCM_OCOTP policy<{'arm64': 'm'}> +CONFIG_NVMEM_SUNXI_SID policy<{'arm64': 'm'}> +CONFIG_UNIPHIER_EFUSE policy<{'armhf': 'm'}> +CONFIG_NVMEM_VF610_OCOTP policy<{'armhf-generic': 'n'}> +CONFIG_MESON_EFUSE policy<{'arm64-generic': 'm'}> +CONFIG_MESON_MX_EFUSE policy<{'arm64': 'm', 'armhf': 'm'}> +CONFIG_NVMEM_SNVS_LPGPR policy<{'arm64': 'm', 'armhf-generic': 'm'}> +CONFIG_RAVE_SP_EEPROM policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SC27XX_EFUSE policy<{'arm64': 'm'}> +CONFIG_NVMEM_ZYNQMP policy<{'arm64': 'y'}> +CONFIG_SPRD_EFUSE policy<{'arm64': 'm'}> +# +CONFIG_NVMEM flag note + +# Menu: Device Drivers >> Network device support +CONFIG_NETDEVICES policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_HIPPI policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n', 's390x': 'n'}> +CONFIG_QCOM_IPA policy<{'arm64': 'm'}> +CONFIG_NET_SB1000 policy<{'amd64': 'm', 'arm64': 'm'}> +CONFIG_MICREL_KS8995MA policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_PLIP policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_XEN_NETDEV_FRONTEND policy<{'amd64': 'y', 'arm64': 'y'}> +CONFIG_XEN_NETDEV_BACKEND policy<{'amd64': 'm', 'arm64': 'm'}> +CONFIG_VMXNET3 policy<{'amd64': 'm', 'arm64-generic': 'm', 'armhf': 'm', 's390x': 'n'}> +CONFIG_FUJITSU_ES policy<{'amd64': 'm', 'arm64': 'm'}> +CONFIG_USB4_NET policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_HYPERV_NET policy<{'amd64': 'm'}> +CONFIG_NETDEVSIM policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_NET_FAILOVER policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +# +CONFIG_HIPPI note +CONFIG_XEN_NETDEV_FRONTEND note + +# Menu: Device Drivers >> Network device support >> ARCnet support +CONFIG_ARCNET policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'n'}> +CONFIG_ARCNET_1201 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_ARCNET_1051 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_ARCNET_RAW policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_ARCNET_CAP policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_ARCNET_COM90xx policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_ARCNET_COM90xxIO policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_ARCNET_RIM_I policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> + +# Menu: Device Drivers >> Network device support >> ARCnet support >> ARCnet COM20020 chipset driver +CONFIG_ARCNET_COM20020 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_ARCNET_COM20020_PCI policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_ARCNET_COM20020_CS policy<{'amd64': 'm'}> + +# Menu: Device Drivers >> Network device support >> ATM drivers +CONFIG_ATM_DRIVERS policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_ATM_DUMMY policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_ATM_TCP policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_ATM_LANAI policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_ATM_ENI policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_ATM_ENI_DEBUG policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n'}> +CONFIG_ATM_FIRESTREAM policy<{'amd64': 'm'}> +CONFIG_ATM_ZATM policy<{'amd64': 'm'}> +CONFIG_ATM_ZATM_DEBUG policy<{'amd64': 'n'}> +CONFIG_ATM_NICSTAR policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_ATM_NICSTAR_USE_SUNI policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n'}> +CONFIG_ATM_NICSTAR_USE_IDT77105 policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n'}> +CONFIG_ATM_IDT77252 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_ATM_IDT77252_DEBUG policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n'}> +CONFIG_ATM_IDT77252_RCV_ALL policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n'}> +CONFIG_ATM_AMBASSADOR policy<{'amd64': 'm'}> +CONFIG_ATM_AMBASSADOR_DEBUG policy<{'amd64': 'n'}> +CONFIG_ATM_HORIZON policy<{'amd64': 'm'}> +CONFIG_ATM_HORIZON_DEBUG policy<{'amd64': 'n'}> +CONFIG_ATM_IA policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_ATM_IA_DEBUG policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n'}> +CONFIG_ATM_HE policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_ATM_HE_USE_SUNI policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_ATM_SOLOS policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +# +CONFIG_ATM_NICSTAR_USE_IDT77105 flag + +# Menu: Device Drivers >> Network device support >> ATM drivers >> FORE Systems 200E-series +CONFIG_ATM_FORE200E policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_ATM_FORE200E_USE_TASKLET policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n'}> +CONFIG_ATM_FORE200E_TX_RETRY policy<{'amd64': '16', 'arm64': '16', 'armhf': '16', 'ppc64el': '16'}> +CONFIG_ATM_FORE200E_DEBUG policy<{'amd64': '0', 'arm64': '0', 'armhf': '0', 'ppc64el': '0'}> + +# Menu: Device Drivers >> Network device support >> ATM drivers >> Fine-tune burst settings +CONFIG_ATM_ENI_TUNE_BURST policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n'}> + +# Menu: Device Drivers >> Network device support >> CAIF transport drivers +CONFIG_CAIF_DRIVERS policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_CAIF_TTY policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_CAIF_SPI_SLAVE policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_CAIF_SPI_SYNC policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n'}> +CONFIG_CAIF_HSI policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_CAIF_VIRTIO policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> + +# Menu: Device Drivers >> Network device support >> Distributed Switch Architecture drivers +CONFIG_NET_DSA_BCM_SF2 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_NET_DSA_LOOP policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n'}> +CONFIG_NET_DSA_LANTIQ_GSWIP policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_NET_DSA_MT7530 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_NET_DSA_MV88E6060 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_NET_DSA_MV88E6XXX policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_NET_DSA_MV88E6XXX_GLOBAL2 policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_NET_DSA_MV88E6XXX_PTP policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_NET_DSA_MSCC_FELIX policy<{'arm64': 'm', 'armhf': 'n', 'ppc64el': 'n'}> +CONFIG_NET_DSA_AR9331 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_NET_DSA_SJA1105 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_NET_DSA_SJA1105_PTP policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_NET_DSA_SJA1105_TAS policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_NET_DSA_SJA1105_VL policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_NET_DSA_QCA8K policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_NET_DSA_REALTEK_SMI policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_NET_DSA_SMSC_LAN9303_I2C policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_NET_DSA_SMSC_LAN9303_MDIO policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_NET_DSA_VITESSE_VSC73XX_SPI policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_NET_DSA_VITESSE_VSC73XX_PLATFORM policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +# +CONFIG_NET_DSA_LOOP flag + +# Menu: Device Drivers >> Network device support >> Distributed Switch Architecture drivers >> Broadcom BCM53xx managed switch support +CONFIG_B53 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_B53_SPI_DRIVER policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_B53_MDIO_DRIVER policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_B53_MMAP_DRIVER policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_B53_SRAB_DRIVER policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_B53_SERDES policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> + +# Menu: Device Drivers >> Network device support >> Distributed Switch Architecture drivers >> Microchip KSZ8795 series switch support +CONFIG_NET_DSA_MICROCHIP_KSZ8795 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_NET_DSA_MICROCHIP_KSZ8795_SPI policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> + +# Menu: Device Drivers >> Network device support >> Distributed Switch Architecture drivers >> Microchip KSZ9477 series switch support +CONFIG_NET_DSA_MICROCHIP_KSZ9477 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_NET_DSA_MICROCHIP_KSZ9477_I2C policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_NET_DSA_MICROCHIP_KSZ9477_SPI policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> + +# Menu: Device Drivers >> Network device support >> Ethernet driver support +CONFIG_ETHERNET policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_NET_VENDOR_ADAPTEC policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'n'}> +CONFIG_ADAPTEC_STARFIRE policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_NET_VENDOR_AGERE policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'n'}> +CONFIG_ET131X policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_NET_VENDOR_ALACRITECH policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_SLICOSS policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_NET_VENDOR_ALLWINNER policy<{'arm64': 'y'}> +CONFIG_SUN4I_EMAC policy<{'arm64': 'n'}> +CONFIG_NET_VENDOR_ALTEON policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'n'}> +CONFIG_ACENIC policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_ACENIC_OMIT_TIGON_I policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n'}> +CONFIG_ALTERA_TSE policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'n'}> +CONFIG_NET_VENDOR_AMAZON policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_ENA_ETHERNET policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_NET_XGENE policy<{'arm64': 'm'}> +CONFIG_NET_XGENE_V2 policy<{'arm64': 'm'}> +CONFIG_NET_VENDOR_AQUANTIA policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_AQTION policy<{'amd64': 'm', 'arm64': 'm'}> +CONFIG_NET_VENDOR_ARC policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'n'}> +CONFIG_EMAC_ROCKCHIP policy<{'arm64': 'm', 'armhf': 'm'}> +CONFIG_NET_VENDOR_AURORA policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_AURORA_NB8800 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_NET_VENDOR_BROCADE policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'n'}> +CONFIG_BNA policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_NET_VENDOR_CADENCE policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_MACB policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_MACB_USE_HWSTAMP policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_MACB_PCI policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_NET_CALXEDA_XGMAC policy<{'armhf': 'm'}> +CONFIG_NET_VENDOR_CISCO policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'n'}> +CONFIG_ENIC policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_NET_VENDOR_CORTINA policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_GEMINI_ETHERNET policy<{'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_CX_ECAT policy<{'amd64': 'm'}> +CONFIG_DM9000 policy<{'armhf': 'm'}> +CONFIG_DM9000_FORCE_SIMPLE_PHY_POLL policy<{'armhf': 'n'}> +CONFIG_DNET policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'n'}> +CONFIG_NET_VENDOR_DEC policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'n'}> +CONFIG_NET_VENDOR_DLINK policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'n'}> +CONFIG_DL2K policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SUNDANCE policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SUNDANCE_MMIO policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n'}> +CONFIG_NET_VENDOR_EMULEX policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'n'}> +CONFIG_NET_VENDOR_EZCHIP policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'n'}> +CONFIG_EZCHIP_NPS_MANAGEMENT_ENET policy<{'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_NET_VENDOR_FARADAY policy<{'armhf': 'y'}> +CONFIG_FTMAC100 policy<{'armhf': 'm'}> +CONFIG_FTGMAC100 policy<{'armhf': 'm'}> +CONFIG_NET_VENDOR_FUJITSU policy<{'amd64': 'y'}> +CONFIG_PCMCIA_FMVJ18X policy<{'amd64': 'm'}> +CONFIG_NET_VENDOR_GOOGLE policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'n'}> +CONFIG_GVE policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_NET_VENDOR_HUAWEI policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'n'}> +CONFIG_HINIC policy<{'amd64': 'm', 'arm64': 'm'}> +CONFIG_JME policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'n'}> +CONFIG_NET_VENDOR_MEDIATEK policy<{'arm64': 'n', 'armhf': 'n'}> +CONFIG_NET_VENDOR_MICROSEMI policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'n'}> +CONFIG_MSCC_OCELOT_SWITCH policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_MSCC_OCELOT_SWITCH_OCELOT policy<{'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_NET_VENDOR_MYRI policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'n'}> +CONFIG_MYRI10GE policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_MYRI10GE_DCA policy<{'amd64': 'y'}> +CONFIG_FEALNX policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'n'}> +CONFIG_NET_VENDOR_NETERION policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_S2IO policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'n'}> +CONFIG_VXGE policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'n'}> +CONFIG_VXGE_DEBUG_TRACE_ALL policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n'}> +CONFIG_NET_VENDOR_NETRONOME policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_NET_VENDOR_NI policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'n'}> +CONFIG_NI_XGE_MANAGEMENT_ENET policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_NET_VENDOR_NVIDIA policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'n'}> +CONFIG_FORCEDETH policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_NET_VENDOR_OKI policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'n'}> +CONFIG_ETHOC policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'n'}> +CONFIG_NET_VENDOR_PACKET_ENGINES policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_HAMACHI policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'n'}> +CONFIG_YELLOWFIN policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'n'}> +CONFIG_NET_VENDOR_PENSANDO policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'n'}> +CONFIG_IONIC policy<{'amd64': 'm', 'arm64': 'm', 'ppc64el': 'm'}> +CONFIG_NET_VENDOR_RDC policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'n'}> +CONFIG_R6040 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_NET_VENDOR_RENESAS policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'n'}> +CONFIG_SH_ETH policy<{'arm64': 'm', 'armhf': 'm'}> +CONFIG_RAVB policy<{'arm64': 'm', 'armhf': 'm'}> +CONFIG_NET_VENDOR_ROCKER policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'n'}> +CONFIG_ROCKER policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_NET_VENDOR_SAMSUNG policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'n'}> +CONFIG_SXGBE_ETH policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_NET_VENDOR_SEEQ policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'n'}> +CONFIG_NET_VENDOR_SOLARFLARE policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_SFC_FALCON policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'n'}> +CONFIG_SFC_FALCON_MTD policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_NET_VENDOR_SILAN policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'n'}> +CONFIG_SC92031 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_NET_VENDOR_SIS policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'n'}> +CONFIG_SIS900 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SIS190 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_NET_VENDOR_SOCIONEXT policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_SNI_AVE policy<{'armhf': 'm'}> +CONFIG_SNI_NETSEC policy<{'arm64': 'm'}> +CONFIG_NET_VENDOR_STMICRO policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'n'}> +CONFIG_NET_VENDOR_SYNOPSYS policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_DWC_XLGMAC policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_DWC_XLGMAC_PCI policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_NET_VENDOR_TEHUTI policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'n'}> +CONFIG_TEHUTI policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_NET_VENDOR_VIA policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'n'}> +CONFIG_VIA_RHINE policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_VIA_RHINE_MMIO policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_VIA_VELOCITY policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_NET_VENDOR_WIZNET policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'n'}> +CONFIG_WIZNET_W5100 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_WIZNET_W5300 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_WIZNET_W5100_SPI policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_NET_VENDOR_XIRCOM policy<{'amd64': 'y'}> +CONFIG_PCMCIA_XIRC2PS policy<{'amd64': 'm'}> +# +CONFIG_NET_VENDOR_EMULEX note + +# Menu: Device Drivers >> Network device support >> Ethernet driver support >> 3Com devices +CONFIG_NET_VENDOR_3COM policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'n'}> +CONFIG_EL3 policy<{'amd64': 'm'}> +CONFIG_PCMCIA_3C574 policy<{'amd64': 'm'}> +CONFIG_PCMCIA_3C589 policy<{'amd64': 'm'}> +CONFIG_VORTEX policy<{'amd64': 'm', 'arm64': 'm', 'ppc64el': 'm'}> +CONFIG_TYPHOON policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> + +# Menu: Device Drivers >> Network device support >> Ethernet driver support >> AMD devices +CONFIG_NET_VENDOR_AMD policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'n'}> +CONFIG_AMD8111_ETH policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_PCNET32 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_PCMCIA_NMCLAN policy<{'amd64': 'm'}> +CONFIG_AMD_XGBE policy<{'amd64': 'm', 'arm64': 'm'}> +CONFIG_AMD_XGBE_DCB policy<{'amd64': 'y', 'arm64': 'y'}> + +# Menu: Device Drivers >> Network device support >> Ethernet driver support >> Apple devices + +# Menu: Device Drivers >> Network device support >> Ethernet driver support >> Atheros devices +CONFIG_NET_VENDOR_ATHEROS policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'n'}> +CONFIG_ATL2 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_ATL1 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_ATL1E policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_ATL1C policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_ALX policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> + +# Menu: Device Drivers >> Network device support >> Ethernet driver support >> Broadcom devices +CONFIG_NET_VENDOR_BROADCOM policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'n'}> +CONFIG_B44 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_BCMGENET policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_BNX2 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_CNIC policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_TIGON3 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_TIGON3_HWMON policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_BNX2X policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_BNX2X_SRIOV policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_BGMAC_PLATFORM policy<{'arm64': 'y'}> +CONFIG_SYSTEMPORT policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +# +CONFIG_TIGON3 flag + +# Menu: Device Drivers >> Network device support >> Ethernet driver support >> Broadcom devices >> Broadcom NetXtreme-C/E support +CONFIG_BNXT policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_BNXT_SRIOV policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_BNXT_FLOWER_OFFLOAD policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_BNXT_DCB policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_BNXT_HWMON policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> + +# Menu: Device Drivers >> Network device support >> Ethernet driver support >> Cavium ethernet drivers +CONFIG_NET_VENDOR_CAVIUM policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'n'}> +CONFIG_THUNDER_NIC_PF policy<{'amd64': 'm', 'arm64': 'm', 'ppc64el': 'm'}> +CONFIG_THUNDER_NIC_VF policy<{'amd64': 'm', 'arm64': 'm', 'ppc64el': 'm'}> +CONFIG_THUNDER_NIC_BGX policy<{'amd64': 'm', 'arm64': 'm', 'ppc64el': 'm'}> +CONFIG_THUNDER_NIC_RGX policy<{'amd64': 'm', 'arm64': 'm', 'ppc64el': 'm'}> +CONFIG_CAVIUM_PTP policy<{'amd64': 'm', 'arm64': 'm', 'ppc64el': 'm'}> +CONFIG_LIQUIDIO policy<{'amd64': 'm', 'arm64': 'm', 'ppc64el': 'm'}> +CONFIG_LIQUIDIO_VF policy<{'amd64': 'm', 'arm64': 'm', 'ppc64el': 'm'}> + +# Menu: Device Drivers >> Network device support >> Ethernet driver support >> Chelsio devices +CONFIG_NET_VENDOR_CHELSIO policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'n'}> +CONFIG_CHELSIO_T1 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_CHELSIO_T1_1G policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_CHELSIO_T3 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_CHELSIO_T4 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_CHELSIO_T4_DCB policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_CHELSIO_T4_FCOE policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_CHELSIO_T4VF policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> + +# Menu: Device Drivers >> Network device support >> Ethernet driver support >> Cirrus devices +CONFIG_NET_VENDOR_CIRRUS policy<{'amd64': 'y', 'armhf': 'y'}> +CONFIG_CS89x0 policy<{'amd64': 'm', 'armhf': 'm'}> +CONFIG_CS89x0_PLATFORM policy<{'amd64': 'y', 'armhf': 'y'}> + +# Menu: Device Drivers >> Network device support >> Ethernet driver support >> DEC - Tulip devices +CONFIG_NET_TULIP policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_DE2104X policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_DE2104X_DSL policy<{'amd64': '0', 'arm64': '0', 'armhf': '0', 'ppc64el': '0'}> +CONFIG_DE4X5 policy<{'amd64': 'm', 'ppc64el': 'm'}> +CONFIG_WINBOND_840 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_DM9102 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_ULI526X policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_PCMCIA_XIRCOM policy<{'amd64': 'm', 'arm64': 'm'}> + +# Menu: Device Drivers >> Network device support >> Ethernet driver support >> DEC - Tulip devices >> DECchip Tulip (dc2114x) PCI support +CONFIG_TULIP policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_TULIP_MWI policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n'}> +CONFIG_TULIP_MMIO policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n'}> +CONFIG_TULIP_NAPI policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n'}> +# +CONFIG_TULIP_NAPI flag + +# Menu: Device Drivers >> Network device support >> Ethernet driver support >> Freescale devices +CONFIG_NET_VENDOR_FREESCALE policy<{'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_FEC policy<{'arm64': 'y', 'armhf-generic': 'y'}> +CONFIG_FSL_FMAN policy<{'arm64': 'y'}> +CONFIG_FSL_PQ_MDIO policy<{'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_FSL_XGMAC_MDIO policy<{'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_GIANFAR policy<{'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_FSL_DPAA_ETH policy<{'arm64': 'm'}> +CONFIG_FSL_DPAA2_ETH policy<{'arm64': 'm'}> +CONFIG_FSL_DPAA2_ETH_DCB policy<{'arm64': 'y'}> +CONFIG_FSL_DPAA2_PTP_CLOCK policy<{'arm64': 'm'}> +CONFIG_FSL_ENETC policy<{'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_FSL_ENETC_VF policy<{'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_FSL_ENETC_MDIO policy<{'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_FSL_ENETC_PTP_CLOCK policy<{'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_FSL_ENETC_QOS policy<{'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> + +# Menu: Device Drivers >> Network device support >> Ethernet driver support >> Freescale devices >> Freescale Ethernet Driver + +# Menu: Device Drivers >> Network device support >> Ethernet driver support >> Hisilicon devices +CONFIG_NET_VENDOR_HISILICON policy<{'arm64': 'y', 'armhf': 'y'}> +CONFIG_HIX5HD2_GMAC policy<{'arm64': 'm', 'armhf': 'm'}> +CONFIG_HISI_FEMAC policy<{'arm64': 'm', 'armhf': 'm'}> +CONFIG_HIP04_ETH policy<{'arm64': 'm', 'armhf': 'm'}> +CONFIG_HI13X1_GMAC policy<{'arm64': 'y', 'armhf': 'y'}> +CONFIG_HNS_DSAF policy<{'arm64': 'm', 'armhf': 'm'}> +CONFIG_HNS_ENET policy<{'arm64': 'm', 'armhf': 'm'}> +CONFIG_HNS3 policy<{'arm64': 'm', 'armhf': 'm'}> +CONFIG_HNS3_HCLGE policy<{'arm64': 'm', 'armhf': 'm'}> +CONFIG_HNS3_DCB policy<{'arm64': 'y', 'armhf': 'y'}> +CONFIG_HNS3_HCLGEVF policy<{'arm64': 'm', 'armhf': 'm'}> +CONFIG_HNS3_ENET policy<{'arm64': 'm'}> + +# Menu: Device Drivers >> Network device support >> Ethernet driver support >> IBM devices +CONFIG_NET_VENDOR_IBM policy<{'ppc64el': 'y'}> +CONFIG_IBMVETH policy<{'ppc64el': 'm'}> +CONFIG_IBMVNIC policy<{'ppc64el': 'm'}> +# +CONFIG_IBMVNIC mark note + +# Menu: Device Drivers >> Network device support >> Ethernet driver support >> IBM devices >> IBM EMAC Ethernet support + +# Menu: Device Drivers >> Network device support >> Ethernet driver support >> Intel (82586/82593/82596) devices +CONFIG_NET_VENDOR_I825XX policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> + +# Menu: Device Drivers >> Network device support >> Ethernet driver support >> Intel devices +CONFIG_NET_VENDOR_INTEL policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'n'}> +CONFIG_E100 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_E1000 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_E1000E policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_E1000E_HWTS policy<{'amd64': 'y'}> +CONFIG_IGB policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_IGB_HWMON policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_IGB_DCA policy<{'amd64': 'y'}> +CONFIG_IGBVF policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_IXGB policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_IXGBEVF policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_IXGBEVF_IPSEC policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_I40E policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_I40E_DCB policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_I40EVF policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_ICE policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_FM10K policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_IGC policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> + +# Menu: Device Drivers >> Network device support >> Ethernet driver support >> Intel devices >> Intel(R) 10GbE PCI Express adapters support +CONFIG_IXGBE policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_IXGBE_HWMON policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_IXGBE_DCA policy<{'amd64': 'y'}> +CONFIG_IXGBE_DCB policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_IXGBE_IPSEC policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> + +# Menu: Device Drivers >> Network device support >> Ethernet driver support >> Marvell devices +CONFIG_NET_VENDOR_MARVELL policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'n'}> +CONFIG_MV643XX_ETH policy<{'armhf': 'm'}> +CONFIG_MVMDIO policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_MVNETA_BM_ENABLE policy<{'armhf': 'n'}> +CONFIG_MVNETA policy<{'arm64': 'm', 'armhf': 'm'}> +CONFIG_MVPP2 policy<{'arm64': 'm', 'armhf': 'm'}> +CONFIG_PXA168_ETH policy<{'arm64': 'm', 'armhf': 'm'}> +CONFIG_SKGE policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SKGE_DEBUG policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n'}> +CONFIG_SKGE_GENESIS policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_SKY2 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SKY2_DEBUG policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n'}> +CONFIG_OCTEONTX2_AF policy<{'arm64': 'm'}> +CONFIG_NDC_DIS_DYNAMIC_CACHING policy<{'arm64': 'y'}> +CONFIG_OCTEONTX2_PF policy<{'arm64': 'm'}> +CONFIG_OCTEONTX2_VF policy<{'arm64': 'm'}> + +# Menu: Device Drivers >> Network device support >> Ethernet driver support >> Mellanox devices +CONFIG_NET_VENDOR_MELLANOX policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_MLX4_EN policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_MLX4_EN_DCB policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_MLX4_DEBUG policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_MLX4_CORE_GEN2 policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_MLX5_CORE policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_MLX5_FPGA policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_MLX5_FPGA_IPSEC policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_MLX5_EN_IPSEC policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_MLX5_FPGA_TLS policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_MLXFW policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> + +# Menu: Device Drivers >> Network device support >> Ethernet driver support >> Mellanox devices >> Mellanox 5th generation network adapters (ConnectX series) Ethernet support +CONFIG_MLX5_CORE_EN policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_MLX5_EN_ARFS policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_MLX5_EN_RXNFC policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_MLX5_MPFS policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_MLX5_ESWITCH policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_MLX5_CLS_ACT policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_MLX5_TC_CT policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_MLX5_CORE_EN_DCB policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_MLX5_CORE_IPOIB policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_MLX5_TLS policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_MLX5_EN_TLS policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_MLX5_SW_STEERING policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> + +# Menu: Device Drivers >> Network device support >> Ethernet driver support >> Mellanox devices >> Mellanox Technologies Switch ASICs support +CONFIG_MLXSW_CORE policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_MLXSW_CORE_HWMON policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_MLXSW_CORE_THERMAL policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_MLXSW_I2C policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'n'}> +CONFIG_MLXSW_MINIMAL policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> + +# Menu: Device Drivers >> Network device support >> Ethernet driver support >> Mellanox devices >> Mellanox Technologies Switch ASICs support >> PCI bus implementation for Mellanox Technologies Switch ASICs +CONFIG_MLXSW_PCI policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_MLXSW_SWITCHIB policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_MLXSW_SWITCHX2 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_MLXSW_SPECTRUM policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_MLXSW_SPECTRUM_DCB policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> + +# Menu: Device Drivers >> Network device support >> Ethernet driver support >> Micrel devices +CONFIG_NET_VENDOR_MICREL policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'n'}> +CONFIG_KS8842 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_KS8851 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_KS8851_MLL policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_KSZ884X_PCI policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> + +# Menu: Device Drivers >> Network device support >> Ethernet driver support >> Microchip devices +CONFIG_NET_VENDOR_MICROCHIP policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'n'}> +CONFIG_ENC28J60 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_ENC28J60_WRITEVERIFY policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n'}> +CONFIG_ENCX24J600 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_LAN743X policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> + +# Menu: Device Drivers >> Network device support >> Ethernet driver support >> National Semiconductor 8390 devices +CONFIG_NET_VENDOR_8390 policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_PCMCIA_AXNET policy<{'amd64': 'm'}> +CONFIG_AX88796 policy<{'armhf': 'm'}> +CONFIG_AX88796_93CX6 policy<{'armhf': 'n'}> +CONFIG_NE2K_PCI policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_PCMCIA_PCNET policy<{'amd64': 'm'}> + +# Menu: Device Drivers >> Network device support >> Ethernet driver support >> National Semiconductor devices +CONFIG_NET_VENDOR_NATSEMI policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'n'}> +CONFIG_NATSEMI policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_NS83820 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> + +# Menu: Device Drivers >> Network device support >> Ethernet driver support >> Netronome(R) NFP4000/NFP6000 NIC driver +CONFIG_NFP policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'n'}> +CONFIG_NFP_APP_FLOWER policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_NFP_APP_ABM_NIC policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_NFP_DEBUG policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n'}> + +# Menu: Device Drivers >> Network device support >> Ethernet driver support >> QLogic devices +CONFIG_NET_VENDOR_QLOGIC policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'n'}> +CONFIG_QLA3XXX policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_NETXEN_NIC policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_QED policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_QED_SRIOV policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_QEDE policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> + +# Menu: Device Drivers >> Network device support >> Ethernet driver support >> QLogic devices >> QLOGIC QLCNIC 1/10Gb Converged Ethernet NIC Support +CONFIG_QLCNIC policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_QLCNIC_SRIOV policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_QLCNIC_DCB policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_QLCNIC_HWMON policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> + +# Menu: Device Drivers >> Network device support >> Ethernet driver support >> Qualcomm devices +CONFIG_NET_VENDOR_QUALCOMM policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'n'}> +CONFIG_QCA7000_SPI policy<{'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_QCA7000_UART policy<{'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_QCOM_EMAC policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_RMNET policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> + +# Menu: Device Drivers >> Network device support >> Ethernet driver support >> Realtek devices +CONFIG_NET_VENDOR_REALTEK policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'n'}> +CONFIG_ATP policy<{'amd64': 'm'}> +CONFIG_8139CP policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_R8169 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> + +# Menu: Device Drivers >> Network device support >> Ethernet driver support >> Realtek devices >> RealTek RTL-8129/8130/8139 PCI Fast Ethernet Adapter support +CONFIG_8139TOO policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_8139TOO_PIO policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_8139TOO_TUNE_TWISTER policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n'}> +CONFIG_8139TOO_8129 policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_8139_OLD_RX_RESET policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n'}> +# +CONFIG_8139TOO_TUNE_TWISTER flag + +# Menu: Device Drivers >> Network device support >> Ethernet driver support >> SMC (SMSC)/Western Digital devices +CONFIG_NET_VENDOR_SMSC policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'n'}> +CONFIG_SMC91X policy<{'arm64': 'y', 'armhf': 'm'}> +CONFIG_PCMCIA_SMC91C92 policy<{'amd64': 'm'}> +CONFIG_EPIC100 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SMC911X policy<{'armhf': 'm'}> +CONFIG_SMSC911X policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SMSC9420 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> + +# Menu: Device Drivers >> Network device support >> Ethernet driver support >> STMicroelectronics Multi-Gigabit Ethernet driver +CONFIG_STMMAC_ETH policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_STMMAC_SELFTESTS policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n'}> +CONFIG_DWMAC_INTEL policy<{'amd64': 'm'}> +CONFIG_STMMAC_PCI policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> + +# Menu: Device Drivers >> Network device support >> Ethernet driver support >> STMicroelectronics Multi-Gigabit Ethernet driver >> STMMAC Platform bus support +CONFIG_STMMAC_PLATFORM policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_DWMAC_DWC_QOS_ETH policy<{'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_DWMAC_GENERIC policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_DWMAC_IPQ806X policy<{'arm64': 'm', 'armhf': 'm'}> +CONFIG_DWMAC_MEDIATEK policy<{'arm64': 'm', 'armhf': 'm'}> +CONFIG_DWMAC_MESON policy<{'arm64': 'm', 'armhf': 'm'}> +CONFIG_DWMAC_QCOM_ETHQOS policy<{'arm64': 'm', 'armhf': 'm'}> +CONFIG_DWMAC_ROCKCHIP policy<{'arm64': 'm', 'armhf': 'm'}> +CONFIG_DWMAC_SOCFPGA policy<{'arm64': 'm'}> +CONFIG_DWMAC_SUNXI policy<{'arm64': 'n'}> +CONFIG_DWMAC_SUN8I policy<{'arm64': 'm'}> +CONFIG_DWMAC_IMX8 policy<{'arm64': 'm', 'armhf-generic': 'm'}> + +# Menu: Device Drivers >> Network device support >> Ethernet driver support >> ServerEngines' 10Gbps NIC - BladeEngine +CONFIG_BE2NET policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_BE2NET_HWMON policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_BE2NET_BE2 policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_BE2NET_BE3 policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_BE2NET_LANCER policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_BE2NET_SKYHAWK policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> + +# Menu: Device Drivers >> Network device support >> Ethernet driver support >> Solarflare SFC9000/SFC9100-family support +CONFIG_SFC policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'n'}> +CONFIG_SFC_MTD policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_SFC_MCDI_MON policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_SFC_SRIOV policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_SFC_MCDI_LOGGING policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> + +# Menu: Device Drivers >> Network device support >> Ethernet driver support >> Sun devices +CONFIG_NET_VENDOR_SUN policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'n'}> +CONFIG_HAPPYMEAL policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SUNGEM policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_CASSINI policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_NIU policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> + +# Menu: Device Drivers >> Network device support >> Ethernet driver support >> Texas Instruments (TI) devices +CONFIG_NET_VENDOR_TI policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'n'}> +CONFIG_TI_DAVINCI_EMAC policy<{'armhf-generic': 'm'}> +CONFIG_TI_DAVINCI_MDIO policy<{'arm64': 'y', 'armhf': 'y'}> +CONFIG_TI_CPSW_PHY_SEL policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n'}> +CONFIG_TI_CPSW policy<{'armhf': 'y'}> +CONFIG_TI_CPSW_SWITCHDEV policy<{'armhf': 'm'}> +CONFIG_TI_CPTS policy<{'armhf': 'y'}> +CONFIG_TI_K3_AM65_CPSW_NUSS policy<{'arm64': 'm'}> +CONFIG_TI_K3_AM65_CPTS policy<{'arm64': 'm'}> +CONFIG_TI_AM65_CPSW_TAS policy<{'arm64': 'y'}> +CONFIG_TLAN policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> + +# Menu: Device Drivers >> Network device support >> Ethernet driver support >> Toshiba devices + +# Menu: Device Drivers >> Network device support >> Ethernet driver support >> WIZnet interface mode +CONFIG_WIZNET_BUS_DIRECT policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n'}> +CONFIG_WIZNET_BUS_INDIRECT policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n'}> +CONFIG_WIZNET_BUS_ANY policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> + +# Menu: Device Drivers >> Network device support >> Ethernet driver support >> Xilinx devices +CONFIG_NET_VENDOR_XILINX policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_XILINX_AXI_EMAC policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_XILINX_LL_TEMAC policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'n'}> + +# Menu: Device Drivers >> Network device support >> FDDI driver support +CONFIG_FDDI policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'n'}> +CONFIG_DEFXX policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_DEFXX_MMIO policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n'}> +CONFIG_SKFP policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +# +CONFIG_DEFXX_MMIO flag + +# Menu: Device Drivers >> Network device support >> IEEE 802.15.4 drivers +CONFIG_IEEE802154_DRIVERS policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_IEEE802154_FAKELB policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_IEEE802154_AT86RF230 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_IEEE802154_AT86RF230_DEBUGFS policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_IEEE802154_MRF24J40 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_IEEE802154_CC2520 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_IEEE802154_ATUSB policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_IEEE802154_ADF7242 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_IEEE802154_CA8210 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_IEEE802154_CA8210_DEBUGFS policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_IEEE802154_MCR20A policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_IEEE802154_HWSIM policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> + +# Menu: Device Drivers >> Network device support >> MDIO bus device drivers +CONFIG_MDIO_DEVICE policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_MDIO_ASPEED policy<{'armhf': 'm'}> +CONFIG_MDIO_BCM_IPROC policy<{'arm64': 'n'}> +CONFIG_MDIO_BCM_UNIMAC policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'n'}> +CONFIG_MDIO_BITBANG policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'n'}> +CONFIG_MDIO_BUS_MUX_BCM_IPROC policy<{'arm64': 'y'}> +CONFIG_MDIO_BUS_MUX_GPIO policy<{'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_MDIO_BUS_MUX_MESON_G12A policy<{'arm64': 'm', 'armhf': 'm'}> +CONFIG_MDIO_BUS_MUX_MMIOREG policy<{'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_MDIO_BUS_MUX_MULTIPLEXER policy<{'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_MDIO_GPIO policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_MDIO_HISI_FEMAC policy<{'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_MDIO_IPQ4019 policy<{'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_MDIO_IPQ8064 policy<{'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_MDIO_MSCC_MIIM policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'n'}> +CONFIG_MDIO_MVUSB policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_MDIO_OCTEON policy<{'arm64': 'm', 'ppc64el': 'm'}> +CONFIG_MDIO_SUN4I policy<{'arm64': 'n'}> +CONFIG_MDIO_THUNDER policy<{'amd64': 'm', 'arm64': 'm', 'ppc64el': 'm', 's390x': 'n'}> +CONFIG_MDIO_XGENE policy<{'arm64': 'm'}> +CONFIG_MDIO_XPCS policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'n'}> + +# Menu: Device Drivers >> Network device support >> Network core driver support +CONFIG_NET_CORE policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_BONDING policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_DUMMY policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_WIREGUARD policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_WIREGUARD_DEBUG policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n', 's390x': 'n'}> +CONFIG_EQUALIZER policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_NET_FC policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_IFB policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_MACVLAN policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_MACVTAP policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_IPVLAN policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_IPVTAP policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_VXLAN policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_GENEVE policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_BAREUDP policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'n'}> +CONFIG_GTP policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_MACSEC policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_NETCONSOLE policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_NETCONSOLE_DYNAMIC policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_NTB_NETDEV policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_RIONET policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_RIONET_TX_SIZE policy<{'amd64': '128', 'arm64': '128', 'armhf': '128', 'ppc64el': '128'}> +CONFIG_RIONET_RX_SIZE policy<{'amd64': '128', 'arm64': '128', 'armhf': '128', 'ppc64el': '128'}> +CONFIG_TUN policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_TUN_VNET_CROSS_LE policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n', 's390x': 'n'}> +CONFIG_VETH policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_VIRTIO_NET policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_NLMON policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_NET_VRF policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_VSOCKMON policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +# +CONFIG_VIRTIO_NET note flag + +# Menu: Device Drivers >> Network device support >> Network core driver support >> Ethernet team driver support +CONFIG_NET_TEAM policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_NET_TEAM_MODE_BROADCAST policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_NET_TEAM_MODE_ROUNDROBIN policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_NET_TEAM_MODE_RANDOM policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_NET_TEAM_MODE_ACTIVEBACKUP policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_NET_TEAM_MODE_LOADBALANCE policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> + +# Menu: Device Drivers >> Network device support >> PHY Device support and infrastructure +CONFIG_PHYLIB policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'm'}> +CONFIG_LED_TRIGGER_PHY policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_SFP policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_ADIN_PHY policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_AMD_PHY policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_AQUANTIA_PHY policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_AX88796B_PHY policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'n'}> +CONFIG_BCM7XXX_PHY policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_BCM87XX_PHY policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_BROADCOM_PHY policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_BCM54140_PHY policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_BCM84881_PHY policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'n'}> +CONFIG_CICADA_PHY policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_CORTINA_PHY policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_DAVICOM_PHY policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_DP83822_PHY policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_DP83TC811_PHY policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_DP83848_PHY policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_DP83867_PHY policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_DP83869_PHY policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_FIXED_PHY policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'm'}> +CONFIG_ICPLUS_PHY policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_INTEL_XWAY_PHY policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_LSI_ET1011C_PHY policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_LXT_PHY policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_MARVELL_PHY policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_MARVELL_10G_PHY policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_MESON_GXL_PHY policy<{'arm64': 'm', 'armhf': 'm'}> +CONFIG_MICREL_PHY policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_MICROCHIP_PHY policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_MICROCHIP_T1_PHY policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_MICROSEMI_PHY policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_NATIONAL_PHY policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_NXP_TJA11XX_PHY policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_AT803X_PHY policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_QSEMI_PHY policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_REALTEK_PHY policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_RENESAS_PHY policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_ROCKCHIP_PHY policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_SMSC_PHY policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_STE10XP policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_TERANETICS_PHY policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_VITESSE_PHY policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_XILINX_GMII2RGMII policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> + +# Menu: Device Drivers >> Network device support >> PPP (point-to-point protocol) support +CONFIG_PPP policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'n'}> +CONFIG_PPP_BSDCOMP policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_PPP_DEFLATE policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_PPP_FILTER policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_PPP_MPPE policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_PPP_MULTILINK policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_PPPOATM policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_PPPOE policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_PPTP policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_PPPOL2TP policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_PPP_ASYNC policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_PPP_SYNC_TTY policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> + +# Menu: Device Drivers >> Network device support >> S/390 network device drivers +CONFIG_LCS policy<{'s390x': 'm'}> +CONFIG_CTCM policy<{'s390x': 'm'}> +CONFIG_NETIUCV policy<{'s390x': 'm'}> +CONFIG_SMSGIUCV policy<{'s390x': 'y'}> +CONFIG_SMSGIUCV_EVENT policy<{'s390x': 'm'}> +CONFIG_ISM policy<{'s390x': 'm'}> +# +CONFIG_ISM mark note + +# Menu: Device Drivers >> Network device support >> S/390 network device drivers >> Gigabit Ethernet device support +CONFIG_QETH policy<{'s390x': 'm'}> +CONFIG_QETH_L2 policy<{'s390x': 'm'}> +CONFIG_QETH_L3 policy<{'s390x': 'm'}> +CONFIG_QETH_OSN policy<{'s390x': 'y'}> +CONFIG_QETH_OSX policy<{'s390x': 'y'}> + +# Menu: Device Drivers >> Network device support >> SLIP (serial line) support +CONFIG_SLIP policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'n'}> +CONFIG_SLIP_COMPRESSED policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_SLIP_SMART policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_SLIP_MODE_SLIP6 policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> + +# Menu: Device Drivers >> Network device support >> USB Network Adapters +CONFIG_USB_NET_DRIVERS policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_USB_CATC policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_USB_KAWETH policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_USB_PEGASUS policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_USB_RTL8150 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_USB_RTL8152 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_USB_LAN78XX policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_USB_HSO policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_USB_IPHETH policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> + +# Menu: Device Drivers >> Network device support >> USB Network Adapters >> Multi-purpose USB Networking Framework +CONFIG_USB_USBNET policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_USB_NET_AX8817X policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_USB_NET_AX88179_178A policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_USB_NET_CDCETHER policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_USB_NET_CDC_EEM policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_USB_NET_CDC_NCM policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_USB_NET_HUAWEI_CDC_NCM policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_USB_NET_CDC_MBIM policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_USB_NET_DM9601 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_USB_NET_SR9700 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_USB_NET_SR9800 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_USB_NET_SMSC75XX policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_USB_NET_SMSC95XX policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_USB_NET_GL620A policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_USB_NET_NET1080 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_USB_NET_PLUSB policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_USB_NET_MCS7830 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_USB_NET_RNDIS_HOST policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_USB_NET_ZAURUS policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_USB_NET_CX82310_ETH policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_USB_NET_KALMIA policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_USB_NET_QMI_WWAN policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_USB_NET_INT51X1 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_USB_CDC_PHONET policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_USB_SIERRA_NET policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_USB_VL600 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_USB_NET_CH9200 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_USB_NET_AQC111 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> + +# Menu: Device Drivers >> Network device support >> USB Network Adapters >> Multi-purpose USB Networking Framework >> Simple USB Network Links (CDC Ethernet subset) +CONFIG_USB_NET_CDC_SUBSET policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_USB_ALI_M5632 policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_USB_AN2720 policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_USB_BELKIN policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_USB_ARMLINUX policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_USB_EPSON2888 policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_USB_KC2190 policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> + +# Menu: Device Drivers >> Network device support >> Wan interfaces support +CONFIG_WAN policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'n'}> +CONFIG_LANMEDIA policy<{'amd64': 'm'}> +CONFIG_SLIC_DS26522 policy<{'arm64': 'm', 'armhf-generic': 'm'}> +CONFIG_DLCI policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_DLCI_MAX policy<{'amd64': '8', 'arm64': '8', 'armhf': '8', 'ppc64el': '8'}> +CONFIG_LAPBETHER policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_X25_ASY policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SBNI policy<{'amd64': 'm'}> +CONFIG_SBNI_MULTILINE policy<{'amd64': 'n'}> + +# Menu: Device Drivers >> Network device support >> Wan interfaces support >> Generic HDLC layer +CONFIG_HDLC policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_HDLC_RAW policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_HDLC_RAW_ETH policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_HDLC_CISCO policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_HDLC_FR policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_HDLC_PPP policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_HDLC_X25 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_PCI200SYN policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_WANXL policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_PC300TOO policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_FARSYNC policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_FSL_UCC_HDLC policy<{'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> + +# Menu: Device Drivers >> Network device support >> WiMAX Wireless Broadband devices +CONFIG_WIMAX_I2400M_USB policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_WIMAX_I2400M_DEBUG_LEVEL policy<{'amd64': '8', 'arm64': '8', 'armhf': '8', 'ppc64el': '8'}> + +# Menu: Device Drivers >> Network device support >> Wireless LAN +CONFIG_WLAN policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_WIRELESS_WDS policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n'}> +CONFIG_WLAN_VENDOR_ADMTEK policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_ADM8211 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_WLAN_VENDOR_ATMEL policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_ATMEL policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_PCI_ATMEL policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_PCMCIA_ATMEL policy<{'amd64': 'm'}> +CONFIG_AT76C50X_USB policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_WLAN_VENDOR_CISCO policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_AIRO policy<{'amd64': 'm', 'ppc64el': 'm'}> +CONFIG_AIRO_CS policy<{'amd64': 'm'}> +CONFIG_WLAN_VENDOR_RALINK policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_WLAN_VENDOR_RSI policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_WLAN_VENDOR_ST policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_CW1200 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_CW1200_WLAN_SDIO policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_CW1200_WLAN_SPI policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_WLAN_VENDOR_ZYDAS policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_USB_ZD1201 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_ZD1211RW policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_ZD1211RW_DEBUG policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n'}> +CONFIG_WLAN_VENDOR_QUANTENNA policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_QTNFMAC_PCIE policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_PCMCIA_RAYCS policy<{'amd64': 'm'}> +CONFIG_PCMCIA_WL3501 policy<{'amd64': 'm'}> +CONFIG_MAC80211_HWSIM policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_USB_NET_RNDIS_WLAN policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_VIRT_WIFI policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> + +# Menu: Device Drivers >> Network device support >> Wireless LAN >> Atheros/Qualcomm devices +CONFIG_WLAN_VENDOR_ATH policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_ATH_DEBUG policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n'}> +CONFIG_ATH5K_PCI policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_ATH9K_BTCOEX_SUPPORT policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_ATH9K_HTC policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_ATH9K_HTC_DEBUGFS policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_ATH9K_COMMON_SPECTRAL policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_AR5523 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_WCN36XX policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_WCN36XX_DEBUGFS policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n'}> + +# Menu: Device Drivers >> Network device support >> Wireless LAN >> Atheros/Qualcomm devices >> Atheros 5xxx wireless cards support +CONFIG_ATH5K policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_ATH5K_DEBUG policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n'}> +CONFIG_ATH5K_TRACER policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n'}> + +# Menu: Device Drivers >> Network device support >> Wireless LAN >> Atheros/Qualcomm devices >> Atheros 802.11ac wireless cards support +CONFIG_ATH10K policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_ATH10K_PCI policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_ATH10K_AHB policy<{'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_ATH10K_SDIO policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_ATH10K_USB policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_ATH10K_SNOC policy<{'arm64': 'm', 'armhf': 'm'}> +CONFIG_ATH10K_DEBUG policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n'}> +CONFIG_ATH10K_DEBUGFS policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_ATH10K_SPECTRAL policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_ATH10K_TRACING policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> + +# Menu: Device Drivers >> Network device support >> Wireless LAN >> Atheros/Qualcomm devices >> Atheros 802.11n wireless cards support +CONFIG_ATH9K policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_ATH9K_PCI policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_ATH9K_AHB policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_ATH9K_DEBUGFS policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_ATH9K_STATION_STATISTICS policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_ATH9K_DYNACK policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n'}> +CONFIG_ATH9K_WOW policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_ATH9K_RFKILL policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_ATH9K_CHANNEL_CONTEXT policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_ATH9K_PCOEM policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_ATH9K_PCI_NO_EEPROM policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_ATH9K_HWRNG policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> + +# Menu: Device Drivers >> Network device support >> Wireless LAN >> Atheros/Qualcomm devices >> Atheros mobile chipsets support +CONFIG_ATH6KL policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_ATH6KL_SDIO policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_ATH6KL_USB policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_ATH6KL_DEBUG policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n'}> +CONFIG_ATH6KL_TRACING policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n'}> + +# Menu: Device Drivers >> Network device support >> Wireless LAN >> Atheros/Qualcomm devices >> Linux Community AR9170 802.11n USB support +CONFIG_CARL9170 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_CARL9170_LEDS policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_CARL9170_DEBUGFS policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n'}> +CONFIG_CARL9170_HWRNG policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> + +# Menu: Device Drivers >> Network device support >> Wireless LAN >> Atheros/Qualcomm devices >> Qualcomm Technologies 802.11ax chipset support +CONFIG_ATH11K policy<{'arm64': 'm', 'armhf': 'm'}> +CONFIG_ATH11K_DEBUG policy<{'arm64': 'n', 'armhf': 'n'}> +CONFIG_ATH11K_DEBUGFS policy<{'arm64': 'n', 'armhf': 'n'}> +CONFIG_ATH11K_TRACING policy<{'arm64': 'n', 'armhf': 'n'}> + +# Menu: Device Drivers >> Network device support >> Wireless LAN >> Atheros/Qualcomm devices >> Wilocity 60g WiFi card wil6210 support +CONFIG_WIL6210 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_WIL6210_ISR_COR policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_WIL6210_TRACING policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_WIL6210_DEBUGFS policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> + +# Menu: Device Drivers >> Network device support >> Wireless LAN >> Broadcom devices +CONFIG_WLAN_VENDOR_BROADCOM policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_B43LEGACY policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_B43LEGACY_DEBUG policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n'}> +CONFIG_BRCMSMAC policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_BRCM_TRACING policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_BRCMDBG policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n'}> +# +CONFIG_BRCMDBG flag + +# Menu: Device Drivers >> Network device support >> Wireless LAN >> Broadcom devices >> Broadcom 43xx wireless support (mac80211 stack) +CONFIG_B43 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_B43_SDIO policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n'}> +CONFIG_B43_PHY_G policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_B43_PHY_N policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_B43_PHY_LP policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_B43_PHY_HT policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_B43_DEBUG policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n'}> + +# Menu: Device Drivers >> Network device support >> Wireless LAN >> Broadcom devices >> Broadcom 43xx wireless support (mac80211 stack) >> Supported bus types +CONFIG_B43_BUSES_BCMA_AND_SSB policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_B43_BUSES_BCMA policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n'}> +CONFIG_B43_BUSES_SSB policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n'}> + +# Menu: Device Drivers >> Network device support >> Wireless LAN >> Broadcom devices >> Broadcom 43xx-legacy data transfer mode +CONFIG_B43LEGACY_DMA_AND_PIO_MODE policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_B43LEGACY_DMA_MODE policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n'}> +CONFIG_B43LEGACY_PIO_MODE policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n'}> + +# Menu: Device Drivers >> Network device support >> Wireless LAN >> Broadcom devices >> Broadcom FullMAC WLAN driver +CONFIG_BRCMFMAC policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_BRCMFMAC_SDIO policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_BRCMFMAC_USB policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_BRCMFMAC_PCIE policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> + +# Menu: Device Drivers >> Network device support >> Wireless LAN >> Intel devices +CONFIG_WLAN_VENDOR_INTEL policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_IPW2100 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_IPW2100_MONITOR policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_IPW2100_DEBUG policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n'}> +CONFIG_LIBIPW_DEBUG policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n'}> +CONFIG_IWL4965 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_IWL3945 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> + +# Menu: Device Drivers >> Network device support >> Wireless LAN >> Intel devices >> Intel PRO/Wireless 2200BG and 2915ABG Network Connection +CONFIG_IPW2200 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_IPW2200_MONITOR policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_IPW2200_RADIOTAP policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_IPW2200_PROMISCUOUS policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_IPW2200_QOS policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_IPW2200_DEBUG policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n'}> + +# Menu: Device Drivers >> Network device support >> Wireless LAN >> Intel devices >> Intel Wireless WiFi Next Gen AGN - Wireless-N/Advanced-N/Ultimate-N (iwlwifi) +CONFIG_IWLWIFI policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_IWLDVM policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_IWLMVM policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_IWLWIFI_BCAST_FILTERING policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n'}> + +# Menu: Device Drivers >> Network device support >> Wireless LAN >> Intel devices >> Intel Wireless WiFi Next Gen AGN - Wireless-N/Advanced-N/Ultimate-N (iwlwifi) >> Debugging Options +CONFIG_IWLWIFI_DEBUG policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n'}> +CONFIG_IWLWIFI_DEBUGFS policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_IWLWIFI_DEVICE_TRACING policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> + +# Menu: Device Drivers >> Network device support >> Wireless LAN >> Intel devices >> iwl3945 / iwl4965 Debugging Options +CONFIG_IWLEGACY_DEBUG policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n'}> +CONFIG_IWLEGACY_DEBUGFS policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> + +# Menu: Device Drivers >> Network device support >> Wireless LAN >> Intersil devices +CONFIG_WLAN_VENDOR_INTERSIL policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_PRISM54 policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n'}> + +# Menu: Device Drivers >> Network device support >> Wireless LAN >> Intersil devices >> Hermes chipset 802.11b support (Orinoco/Prism2/Symbol) +CONFIG_HERMES policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_HERMES_PRISM policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n'}> +CONFIG_HERMES_CACHE_FW_ON_INIT policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_PLX_HERMES policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_TMD_HERMES policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_NORTEL_HERMES policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_PCMCIA_HERMES policy<{'amd64': 'm'}> +CONFIG_PCMCIA_SPECTRUM policy<{'amd64': 'm'}> +CONFIG_ORINOCO_USB policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> + +# Menu: Device Drivers >> Network device support >> Wireless LAN >> Intersil devices >> IEEE 802.11 for Host AP (Prism2/2.5/3 and WEP/TKIP/CCMP) +CONFIG_HOSTAP policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_HOSTAP_FIRMWARE policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_HOSTAP_FIRMWARE_NVRAM policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_HOSTAP_PLX policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_HOSTAP_PCI policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_HOSTAP_CS policy<{'amd64': 'm'}> + +# Menu: Device Drivers >> Network device support >> Wireless LAN >> Intersil devices >> Softmac Prism54 support +CONFIG_P54_COMMON policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_P54_USB policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_P54_PCI policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_P54_SPI policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_P54_SPI_DEFAULT_EEPROM policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n'}> + +# Menu: Device Drivers >> Network device support >> Wireless LAN >> Marvell devices +CONFIG_WLAN_VENDOR_MARVELL policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_LIBERTAS_THINFIRM policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_LIBERTAS_THINFIRM_DEBUG policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n'}> +CONFIG_LIBERTAS_THINFIRM_USB policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_MWL8K policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> + +# Menu: Device Drivers >> Network device support >> Wireless LAN >> Marvell devices >> Marvell 8xxx Libertas WLAN driver support +CONFIG_LIBERTAS policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_LIBERTAS_USB policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_LIBERTAS_CS policy<{'amd64': 'm'}> +CONFIG_LIBERTAS_SDIO policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_LIBERTAS_SPI policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_LIBERTAS_DEBUG policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n'}> +CONFIG_LIBERTAS_MESH policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> + +# Menu: Device Drivers >> Network device support >> Wireless LAN >> Marvell devices >> Marvell WiFi-Ex Driver +CONFIG_MWIFIEX policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_MWIFIEX_SDIO policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_MWIFIEX_PCIE policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_MWIFIEX_USB policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> + +# Menu: Device Drivers >> Network device support >> Wireless LAN >> MediaTek devices +CONFIG_WLAN_VENDOR_MEDIATEK policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_MT7601U policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_MT76x0U policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_MT76x0E policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_MT76x2E policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_MT76x2U policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_MT7603E policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_MT7615E policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_MT7622_WMAC policy<{'arm64': 'y', 'armhf': 'y'}> +CONFIG_MT7663U policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_MT7915E policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> + +# Menu: Device Drivers >> Network device support >> Wireless LAN >> Ralink driver support +CONFIG_RT2X00 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_RT2400PCI policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_RT2500PCI policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_RT61PCI policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_RT2500USB policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_RT73USB policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_RT2X00_LIB_DEBUGFS policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n'}> +CONFIG_RT2X00_DEBUG policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n'}> + +# Menu: Device Drivers >> Network device support >> Wireless LAN >> Ralink driver support >> Ralink rt27xx/rt28xx/rt30xx (PCI/PCIe/PCMCIA) support +CONFIG_RT2800PCI policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_RT2800PCI_RT33XX policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_RT2800PCI_RT35XX policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_RT2800PCI_RT53XX policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_RT2800PCI_RT3290 policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> + +# Menu: Device Drivers >> Network device support >> Wireless LAN >> Ralink driver support >> Ralink rt27xx/rt28xx/rt30xx (USB) support +CONFIG_RT2800USB policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_RT2800USB_RT33XX policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_RT2800USB_RT35XX policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_RT2800USB_RT3573 policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_RT2800USB_RT53XX policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_RT2800USB_RT55XX policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_RT2800USB_UNKNOWN policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> + +# Menu: Device Drivers >> Network device support >> Wireless LAN >> Realtek devices +CONFIG_WLAN_VENDOR_REALTEK policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_RTL8180 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_RTL8187 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_RTL8XXXU policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_RTL8XXXU_UNTESTED policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> + +# Menu: Device Drivers >> Network device support >> Wireless LAN >> Realtek devices >> Realtek 802.11ac wireless chips support +CONFIG_RTW88 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_RTW88_8822BE policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_RTW88_8822CE policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_RTW88_8723DE policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_RTW88_DEBUG policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_RTW88_DEBUGFS policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> + +# Menu: Device Drivers >> Network device support >> Wireless LAN >> Realtek devices >> Realtek rtlwifi family of devices +CONFIG_RTL_CARDS policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_RTL8192CE policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_RTL8192SE policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_RTL8192DE policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_RTL8723AE policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_RTL8723BE policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_RTL8188EE policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_RTL8192EE policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_RTL8821AE policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_RTL8192CU policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_RTLWIFI_DEBUG policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n'}> + +# Menu: Device Drivers >> Network device support >> Wireless LAN >> Redpine Signals Inc 91x WLAN driver support +CONFIG_RSI_91X policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_RSI_DEBUGFS policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n'}> +CONFIG_RSI_SDIO policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_RSI_USB policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_RSI_COEX policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> + +# Menu: Device Drivers >> Network device support >> Wireless LAN >> Texas Instrument devices +CONFIG_WLAN_VENDOR_TI policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_WL1251 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_WL1251_SPI policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_WL1251_SDIO policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_WL12XX policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_WL18XX policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_WLCORE policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_WLCORE_SPI policy<{'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_WLCORE_SDIO policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_WILINK_PLATFORM_DATA policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> + +# Menu: Device Drivers >> Non-Transparent Bridge support +CONFIG_NTB policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'n'}> +CONFIG_NTB_MSI policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_NTB_AMD policy<{'amd64': 'n'}> +CONFIG_NTB_IDT policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_NTB_INTEL policy<{'amd64': 'm'}> +CONFIG_NTB_SWITCHTEC policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_NTB_PINGPONG policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_NTB_TOOL policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_NTB_PERF policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_NTB_MSI_TEST policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n'}> +CONFIG_NTB_TRANSPORT policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> + +# Menu: Device Drivers >> On-Chip Interconnect management support +CONFIG_INTERCONNECT policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'n'}> + +# Menu: Device Drivers >> On-Chip Interconnect management support >> Qualcomm Network-on-Chip interconnect drivers +CONFIG_INTERCONNECT_QCOM policy<{'arm64': 'y', 'armhf': 'y'}> +CONFIG_INTERCONNECT_QCOM_MSM8916 policy<{'arm64': 'm', 'armhf': 'm'}> +CONFIG_INTERCONNECT_QCOM_MSM8974 policy<{'arm64': 'm', 'armhf': 'm'}> +CONFIG_INTERCONNECT_QCOM_OSM_L3 policy<{'arm64': 'm', 'armhf': 'm'}> +CONFIG_INTERCONNECT_QCOM_QCS404 policy<{'arm64': 'm', 'armhf': 'm'}> +CONFIG_INTERCONNECT_QCOM_SC7180 policy<{'arm64': 'm'}> +CONFIG_INTERCONNECT_QCOM_SDM845 policy<{'arm64': 'm'}> + +# Menu: Device Drivers >> On-Chip Interconnect management support >> i.MX interconnect drivers +CONFIG_INTERCONNECT_IMX policy<{'arm64': 'm', 'armhf-generic': 'm'}> +CONFIG_INTERCONNECT_IMX8MM policy<{'arm64': 'm', 'armhf-generic': 'm'}> +CONFIG_INTERCONNECT_IMX8MN policy<{'arm64': 'm', 'armhf-generic': 'm'}> +CONFIG_INTERCONNECT_IMX8MQ policy<{'arm64': 'm', 'armhf-generic': 'm'}> + +# Menu: Device Drivers >> Open-Channel SSD target support +CONFIG_NVM policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_NVM_PBLK policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_NVM_PBLK_DEBUG policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n', 's390x': 'n'}> + +# Menu: Device Drivers >> PCCard (PCMCIA/CardBus) support +CONFIG_PCCARD policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'n', 'ppc64el': 'n', 's390x': 'n'}> +CONFIG_CARDBUS policy<{'amd64': 'y', 'arm64': 'y'}> + +# Menu: Device Drivers >> PCCard (PCMCIA/CardBus) support >> 16-bit PCMCIA support +CONFIG_PCMCIA policy<{'amd64': 'm', 'arm64': 'n'}> +CONFIG_PCMCIA_LOAD_CIS policy<{'amd64': 'y'}> +CONFIG_PD6729 policy<{'amd64': 'm'}> +CONFIG_I82092 policy<{'amd64': 'm'}> + +# Menu: Device Drivers >> PCCard (PCMCIA/CardBus) support >> CardBus yenta-compatible bridge support +CONFIG_YENTA policy<{'amd64': 'm', 'arm64': 'm'}> +CONFIG_YENTA_O2 policy<{'amd64': 'y', 'arm64': 'y'}> +CONFIG_YENTA_RICOH policy<{'amd64': 'y', 'arm64': 'y'}> +CONFIG_YENTA_TI policy<{'amd64': 'y', 'arm64': 'y'}> +CONFIG_YENTA_ENE_TUNE policy<{'amd64': 'y', 'arm64': 'y'}> +CONFIG_YENTA_TOSHIBA policy<{'amd64': 'y', 'arm64': 'y'}> + +# Menu: Device Drivers >> PCI support +CONFIG_PCI policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_PCIEASPM policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_PCIE_PTM policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_PCI_MSI policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_PCI_QUIRKS policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'n'}> +CONFIG_PCI_DEBUG policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n', 's390x': 'n'}> +CONFIG_PCI_REALLOC_ENABLE_AUTO policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_PCI_STUB policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_PCI_PF_STUB policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_XEN_PCIDEV_FRONTEND policy<{'amd64': 'm'}> +CONFIG_PCI_IOV policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_PCI_PRI policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'n'}> +CONFIG_PCI_PASID policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'n'}> +CONFIG_PCI_P2PDMA policy<{'amd64': 'n', 'arm64': 'n', 'ppc64el': 'n'}> +CONFIG_PCI_HYPERV policy<{'amd64': 'm'}> +# +CONFIG_PCI_P2PDMA flag + +# Menu: Device Drivers >> PCI support >> Default ASPM policy +CONFIG_PCIEASPM_DEFAULT policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_PCIEASPM_POWERSAVE policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n', 's390x': 'n'}> +CONFIG_PCIEASPM_POWER_SUPERSAVE policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n', 's390x': 'n'}> +CONFIG_PCIEASPM_PERFORMANCE policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n', 's390x': 'n'}> +# +CONFIG_PCIEASPM_DEFAULT note + +# Menu: Device Drivers >> PCI support >> PCI Endpoint +CONFIG_PCI_ENDPOINT policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_PCI_ENDPOINT_CONFIGFS policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_PCI_EPF_TEST policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n', 's390x': 'n'}> + +# Menu: Device Drivers >> PCI support >> PCI Express Port Bus support +CONFIG_PCIEPORTBUS policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'n', 's390x': 'y'}> +CONFIG_HOTPLUG_PCI_PCIE policy<{'amd64': 'y', 'arm64': 'y', 's390x': 'y'}> +CONFIG_PCIE_BW policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 's390x': 'n'}> +# +CONFIG_PCIEPORTBUS mark note +CONFIG_HOTPLUG_PCI_PCIE mark note + +# Menu: Device Drivers >> PCI support >> PCI Express Port Bus support >> PCI Express Advanced Error Reporting support +CONFIG_PCIEAER policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 's390x': 'y'}> +CONFIG_PCIEAER_INJECT policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 's390x': 'n'}> +CONFIG_PCIE_ECRC policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 's390x': 'n'}> +CONFIG_PCIE_DPC policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 's390x': 'y'}> +CONFIG_PCIE_EDR policy<{'amd64': 'n', 'arm64': 'n'}> +# +CONFIG_PCIEAER_INJECT flag + +# Menu: Device Drivers >> PCI support >> PCI controller drivers +CONFIG_PCI_MVEBU policy<{'armhf': 'y'}> +CONFIG_PCI_AARDVARK policy<{'arm64': 'y'}> +CONFIG_PCIE_XILINX_NWL policy<{'arm64': 'y'}> +CONFIG_PCI_FTPCI100 policy<{'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_PCI_TEGRA policy<{'armhf-generic': 'y'}> +CONFIG_PCI_RCAR_GEN2 policy<{'armhf': 'y'}> +CONFIG_PCIE_RCAR policy<{'arm64': 'y', 'armhf': 'y'}> +CONFIG_PCIE_RCAR_HOST policy<{'arm64': 'y', 'armhf': 'y'}> +CONFIG_PCIE_RCAR_EP policy<{'arm64': 'y', 'armhf': 'y'}> +CONFIG_PCI_HOST_GENERIC policy<{'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_PCIE_XILINX policy<{'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_PCI_XGENE policy<{'arm64': 'y'}> +CONFIG_PCI_XGENE_MSI policy<{'arm64': 'y'}> +CONFIG_PCI_V3_SEMI policy<{'armhf': 'y'}> +CONFIG_PCIE_IPROC_PLATFORM policy<{'arm64': 'm'}> +CONFIG_PCIE_IPROC_MSI policy<{'arm64': 'y'}> +CONFIG_PCIE_ALTERA policy<{'arm64': 'y', 'armhf': 'y'}> +CONFIG_PCIE_ALTERA_MSI policy<{'arm64': 'y', 'armhf': 'y'}> +CONFIG_PCI_HOST_THUNDER_PEM policy<{'arm64': 'y'}> +CONFIG_PCI_HOST_THUNDER_ECAM policy<{'arm64': 'y'}> +CONFIG_PCIE_ROCKCHIP_HOST policy<{'arm64': 'm', 'armhf': 'm'}> +CONFIG_PCIE_ROCKCHIP_EP policy<{'arm64': 'y', 'armhf': 'y'}> +CONFIG_PCIE_MEDIATEK policy<{'arm64': 'y', 'armhf': 'y'}> +CONFIG_VMD policy<{'amd64': 'm'}> +CONFIG_PCIE_BRCMSTB policy<{'arm64': 'm'}> +CONFIG_PCI_HYPERV_INTERFACE policy<{'amd64': 'm'}> + +# Menu: Device Drivers >> PCI support >> PCI controller drivers >> Cadence PCIe controllers support +CONFIG_PCIE_CADENCE_PLAT_HOST policy<{'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_PCIE_CADENCE_PLAT_EP policy<{'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> + +# Menu: Device Drivers >> PCI support >> PCI controller drivers >> DesignWare PCI Core Support +CONFIG_PCI_DRA7XX_HOST policy<{'armhf': 'y'}> +CONFIG_PCI_DRA7XX_EP policy<{'armhf': 'y'}> +CONFIG_PCIE_DW_PLAT_HOST policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_PCIE_DW_PLAT_EP policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_PCI_IMX6 policy<{'arm64': 'y', 'armhf-generic': 'y'}> +CONFIG_PCI_KEYSTONE_HOST policy<{'arm64': 'y'}> +CONFIG_PCI_KEYSTONE_EP policy<{'arm64': 'y'}> +CONFIG_PCI_LAYERSCAPE policy<{'arm64': 'y', 'armhf': 'n'}> +CONFIG_PCI_LAYERSCAPE_EP policy<{'arm64': 'y', 'armhf': 'y'}> +CONFIG_PCI_HISI policy<{'arm64': 'y'}> +CONFIG_PCIE_QCOM policy<{'arm64': 'y', 'armhf': 'y'}> +CONFIG_PCIE_ARMADA_8K policy<{'arm64': 'y', 'armhf': 'y'}> +CONFIG_PCIE_KIRIN policy<{'arm64': 'y'}> +CONFIG_PCIE_HISI_STB policy<{'arm64': 'y', 'armhf': 'y'}> +CONFIG_PCI_MESON policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n', 's390x': 'n'}> +CONFIG_PCIE_UNIPHIER policy<{'armhf': 'y'}> +CONFIG_PCIE_UNIPHIER_EP policy<{'armhf': 'y'}> +CONFIG_PCIE_AL policy<{'arm64': 'y'}> + +# Menu: Device Drivers >> PCI support >> PCI controller drivers >> Mobiveil PCIe Core Support +CONFIG_PCIE_MOBIVEIL_PLAT policy<{'arm64': 'n'}> +CONFIG_PCIE_LAYERSCAPE_GEN4 policy<{'arm64': 'n'}> + +# Menu: Device Drivers >> PCI support >> PCI switch controller drivers +CONFIG_PCI_SW_SWITCHTEC policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> + +# Menu: Device Drivers >> PCI support >> Support for PCI Hotplug +CONFIG_HOTPLUG_PCI policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'n', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_HOTPLUG_PCI_ACPI policy<{'amd64': 'y', 'arm64': 'y'}> +CONFIG_HOTPLUG_PCI_ACPI_IBM policy<{'amd64': 'm', 'arm64': 'm'}> +CONFIG_HOTPLUG_PCI_CPCI policy<{'amd64': 'y', 'arm64': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_HOTPLUG_PCI_CPCI_ZT5550 policy<{'amd64': 'm'}> +CONFIG_HOTPLUG_PCI_CPCI_GENERIC policy<{'amd64': 'm'}> +CONFIG_HOTPLUG_PCI_SHPC policy<{'amd64': 'y', 'arm64': 'y', 'ppc64el': 'n', 's390x': 'n'}> +CONFIG_HOTPLUG_PCI_POWERNV policy<{'ppc64el': 'm'}> +CONFIG_HOTPLUG_PCI_RPA policy<{'ppc64el': 'm'}> +CONFIG_HOTPLUG_PCI_RPA_DLPAR policy<{'ppc64el': 'm'}> +CONFIG_HOTPLUG_PCI_S390 policy<{'s390x': 'y'}> +# +CONFIG_HOTPLUG_PCI_SHPC note + +# Menu: Device Drivers >> PHY Subsystem +CONFIG_GENERIC_PHY policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'n'}> +CONFIG_PHY_XGENE policy<{'arm64': 'y'}> +CONFIG_PHY_SUN4I_USB policy<{'arm64': 'm'}> +CONFIG_PHY_SUN6I_MIPI_DPHY policy<{'arm64': 'm'}> +CONFIG_PHY_SUN9I_USB policy<{'arm64': 'n'}> +CONFIG_PHY_SUN50I_USB3 policy<{'arm64': 'm'}> +CONFIG_PHY_MESON8B_USB2 policy<{'arm64': 'm', 'armhf': 'm'}> +CONFIG_PHY_MESON_GXL_USB2 policy<{'arm64': 'm', 'armhf': 'm'}> +CONFIG_PHY_MESON_G12A_USB2 policy<{'arm64': 'm', 'armhf': 'm'}> +CONFIG_PHY_MESON_G12A_USB3_PCIE policy<{'arm64': 'm', 'armhf': 'm'}> +CONFIG_PHY_MESON_AXG_PCIE policy<{'arm64': 'y', 'armhf': 'y'}> +CONFIG_PHY_MESON_AXG_MIPI_PCIE_ANALOG policy<{'arm64': 'y', 'armhf': 'y'}> +CONFIG_PHY_BCM_SR_USB policy<{'arm64': 'm'}> +CONFIG_BCM_KONA_USB2_PHY policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'n'}> +CONFIG_PHY_BCM_NS_USB2 policy<{'arm64': 'm'}> +CONFIG_PHY_BCM_NS_USB3 policy<{'arm64': 'm'}> +CONFIG_PHY_NS2_PCIE policy<{'arm64': 'y'}> +CONFIG_PHY_NS2_USB_DRD policy<{'arm64': 'm'}> +CONFIG_PHY_BRCM_SATA policy<{'arm64': 'y'}> +CONFIG_PHY_BRCM_USB policy<{'arm64': 'm'}> +CONFIG_PHY_BCM_SR_PCIE policy<{'arm64': 'm'}> +CONFIG_PHY_CADENCE_TORRENT policy<{'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_PHY_CADENCE_DPHY policy<{'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_PHY_CADENCE_SIERRA policy<{'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_PHY_CADENCE_SALVO policy<{'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_PHY_FSL_IMX8MQ_USB policy<{'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_PHY_MIXEL_MIPI_DPHY policy<{'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_PHY_HI6220_USB policy<{'arm64': 'm'}> +CONFIG_PHY_HI3660_USB policy<{'arm64': 'm'}> +CONFIG_PHY_HISTB_COMBPHY policy<{'arm64': 'm'}> +CONFIG_PHY_HISI_INNO_USB2 policy<{'arm64': 'm'}> +CONFIG_PHY_HIX5HD2_SATA policy<{'armhf': 'm'}> +CONFIG_PHY_BERLIN_SATA policy<{'arm64': 'm', 'armhf': 'm'}> +CONFIG_PHY_BERLIN_USB policy<{'arm64': 'm', 'armhf': 'm'}> +CONFIG_PHY_MVEBU_A3700_COMPHY policy<{'arm64': 'm', 'armhf': 'm'}> +CONFIG_PHY_MVEBU_A3700_UTMI policy<{'arm64': 'm', 'armhf': 'm'}> +CONFIG_PHY_MVEBU_A38X_COMPHY policy<{'arm64': 'm', 'armhf': 'm'}> +CONFIG_PHY_MVEBU_CP110_COMPHY policy<{'arm64': 'm', 'armhf': 'm'}> +CONFIG_PHY_PXA_28NM_HSIC policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'n'}> +CONFIG_PHY_PXA_28NM_USB2 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'n'}> +CONFIG_PHY_MTK_TPHY policy<{'arm64': 'm', 'armhf': 'm'}> +CONFIG_PHY_MTK_UFS policy<{'arm64': 'm', 'armhf': 'm'}> +CONFIG_PHY_MTK_XSPHY policy<{'arm64': 'm', 'armhf': 'm'}> +CONFIG_PHY_CPCAP_USB policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_PHY_MAPPHONE_MDM6600 policy<{'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_PHY_OCELOT_SERDES policy<{'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_PHY_QCOM_APQ8064_SATA policy<{'arm64': 'm', 'armhf': 'm'}> +CONFIG_PHY_QCOM_IPQ4019_USB policy<{'arm64': 'm', 'armhf': 'm'}> +CONFIG_PHY_QCOM_IPQ806X_SATA policy<{'arm64': 'm', 'armhf': 'm'}> +CONFIG_PHY_QCOM_PCIE2 policy<{'arm64': 'm', 'armhf': 'm'}> +CONFIG_PHY_QCOM_QMP policy<{'arm64': 'm', 'armhf': 'm'}> +CONFIG_PHY_QCOM_QUSB2 policy<{'arm64': 'm', 'armhf': 'm'}> +CONFIG_PHY_QCOM_UFS policy<{'arm64': 'm', 'armhf': 'm'}> +CONFIG_PHY_QCOM_USB_HS policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_PHY_QCOM_USB_SNPS_FEMTO_V2 policy<{'arm64': 'm', 'armhf': 'm'}> +CONFIG_PHY_QCOM_USB_HSIC policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_PHY_QCOM_USB_HS_28NM policy<{'arm64': 'm', 'armhf': 'm'}> +CONFIG_PHY_QCOM_USB_SS policy<{'arm64': 'm', 'armhf': 'm'}> +CONFIG_PHY_RCAR_GEN2 policy<{'arm64': 'm', 'armhf': 'm'}> +CONFIG_PHY_RCAR_GEN3_PCIE policy<{'arm64': 'm', 'armhf': 'm'}> +CONFIG_PHY_RCAR_GEN3_USB2 policy<{'arm64': 'm', 'armhf': 'm'}> +CONFIG_PHY_RCAR_GEN3_USB3 policy<{'arm64': 'm', 'armhf': 'm'}> +CONFIG_PHY_ROCKCHIP_DP policy<{'arm64': 'm', 'armhf': 'm'}> +CONFIG_PHY_ROCKCHIP_EMMC policy<{'arm64': 'm', 'armhf': 'm'}> +CONFIG_PHY_ROCKCHIP_INNO_HDMI policy<{'arm64': 'm', 'armhf': 'm'}> +CONFIG_PHY_ROCKCHIP_INNO_USB2 policy<{'arm64': 'm', 'armhf': 'm'}> +CONFIG_PHY_ROCKCHIP_INNO_DSIDPHY policy<{'arm64': 'm', 'armhf': 'm'}> +CONFIG_PHY_ROCKCHIP_PCIE policy<{'arm64': 'm', 'armhf': 'm'}> +CONFIG_PHY_ROCKCHIP_TYPEC policy<{'arm64': 'm', 'armhf': 'm'}> +CONFIG_PHY_ROCKCHIP_USB policy<{'arm64': 'm', 'armhf': 'm'}> +CONFIG_PHY_EXYNOS_DP_VIDEO policy<{'armhf': 'y'}> +CONFIG_PHY_EXYNOS_MIPI_VIDEO policy<{'armhf': 'y'}> +CONFIG_PHY_EXYNOS_PCIE policy<{'armhf': 'y'}> +CONFIG_PHY_SAMSUNG_USB2 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_PHY_EXYNOS5_USBDRD policy<{'armhf': 'm'}> +CONFIG_PHY_EXYNOS5250_SATA policy<{'armhf': 'y'}> +CONFIG_PHY_UNIPHIER_USB2 policy<{'armhf': 'm'}> +CONFIG_PHY_UNIPHIER_USB3 policy<{'armhf': 'm'}> +CONFIG_PHY_UNIPHIER_PCIE policy<{'armhf': 'm'}> +CONFIG_PHY_TEGRA_XUSB policy<{'armhf-generic': 'm'}> +CONFIG_PHY_DM816X_USB policy<{'armhf': 'm'}> +CONFIG_PHY_AM654_SERDES policy<{'arm64': 'm'}> +CONFIG_PHY_J721E_WIZ policy<{'arm64': 'm'}> +CONFIG_OMAP_CONTROL_PHY policy<{'armhf': 'm'}> +CONFIG_OMAP_USB2 policy<{'arm64': 'm', 'armhf': 'm'}> +CONFIG_TI_PIPE3 policy<{'armhf': 'm'}> +CONFIG_PHY_TUSB1210 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_TWL4030_USB policy<{'armhf': 'm'}> +CONFIG_PHY_INTEL_EMMC policy<{'amd64': 'm'}> + +# Menu: Device Drivers >> PPS support +CONFIG_PPS policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'm'}> +CONFIG_PPS_DEBUG policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n', 's390x': 'n'}> +CONFIG_PPS_CLIENT_KTIMER policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n', 's390x': 'n'}> +CONFIG_PPS_CLIENT_LDISC policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'n'}> +CONFIG_PPS_CLIENT_PARPORT policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_PPS_CLIENT_GPIO policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'n'}> +# +CONFIG_PPS_CLIENT_KTIMER flag +CONFIG_PPS flag + +# Menu: Device Drivers >> PTP clock support + +# Menu: Device Drivers >> PTP clock support >> PTP clock support +CONFIG_PTP_1588_CLOCK policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'm'}> +CONFIG_PTP_1588_CLOCK_DTE policy<{'arm64': 'm'}> +CONFIG_PTP_1588_CLOCK_QORIQ policy<{'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_DP83640_PHY policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_PTP_1588_CLOCK_INES policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_PTP_1588_CLOCK_KVM policy<{'amd64': 'm'}> +CONFIG_PTP_1588_CLOCK_IDT82P33 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'n'}> +CONFIG_PTP_1588_CLOCK_IDTCM policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_PTP_1588_CLOCK_VMW policy<{'amd64': 'm'}> + +# Menu: Device Drivers >> Parallel port support +CONFIG_PARPORT policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'n'}> +CONFIG_PARPORT_AX88796 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_PARPORT_1284 policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> + +# Menu: Device Drivers >> Parallel port support >> PC-style hardware +CONFIG_PARPORT_PC policy<{'amd64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_PARPORT_SERIAL policy<{'amd64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_PARPORT_PC_FIFO policy<{'amd64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_PARPORT_PC_SUPERIO policy<{'amd64': 'n', 'armhf': 'n', 'ppc64el': 'n'}> +CONFIG_PARPORT_PC_PCMCIA policy<{'amd64': 'm'}> + +# Menu: Device Drivers >> Performance monitor support +CONFIG_ARM_CCI_PMU policy<{'arm64': 'y', 'armhf': 'y'}> +CONFIG_ARM_CCI400_PMU policy<{'arm64': 'y', 'armhf': 'y'}> +CONFIG_ARM_CCI5xx_PMU policy<{'arm64': 'y', 'armhf': 'y'}> +CONFIG_ARM_CCN policy<{'arm64': 'y', 'armhf': 'y'}> +CONFIG_ARM_PMU policy<{'arm64': 'y', 'armhf': 'y'}> +CONFIG_ARM_SMMU_V3_PMU policy<{'arm64': 'm'}> +CONFIG_ARM_DSU_PMU policy<{'arm64': 'm'}> +CONFIG_FSL_IMX8_DDR_PMU policy<{'arm64': 'm', 'armhf-generic': 'm'}> +CONFIG_HISI_PMU policy<{'arm64': 'y'}> +CONFIG_QCOM_L2_PMU policy<{'arm64': 'y'}> +CONFIG_QCOM_L3_PMU policy<{'arm64': 'y'}> +CONFIG_THUNDERX2_PMU policy<{'arm64': 'm'}> +CONFIG_XGENE_PMU policy<{'arm64': 'y'}> +CONFIG_ARM_SPE_PMU policy<{'arm64': 'm'}> + +# Menu: Device Drivers >> Pin controllers +CONFIG_PINCTRL policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'n'}> +CONFIG_PINMUX policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_PINCONF policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_DEBUG_PINCTRL policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n'}> +CONFIG_PINCTRL_AS3722 policy<{'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_PINCTRL_AXP209 policy<{'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_PINCTRL_AMD policy<{'amd64': 'y', 'arm64': 'y'}> +CONFIG_PINCTRL_BM1880 policy<{'arm64': 'y'}> +CONFIG_PINCTRL_DA9062 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_PINCTRL_MCP23S08 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_PINCTRL_RZA1 policy<{'armhf': 'y'}> +CONFIG_PINCTRL_RZA2 policy<{'armhf': 'y'}> +CONFIG_PINCTRL_RZN1 policy<{'armhf': 'y'}> +CONFIG_PINCTRL_SINGLE policy<{'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_PINCTRL_SX150X policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_PINCTRL_STMFX policy<{'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_PINCTRL_MAX77620 policy<{'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_PINCTRL_PALMAS policy<{'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_PINCTRL_RK805 policy<{'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_PINCTRL_OCELOT policy<{'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_PINCTRL_OWL policy<{'arm64': 'y', 'armhf': 'y'}> +CONFIG_PINCTRL_S700 policy<{'arm64': 'y', 'armhf': 'y'}> +CONFIG_PINCTRL_S900 policy<{'arm64': 'y', 'armhf': 'y'}> +CONFIG_PINCTRL_ASPEED_G6 policy<{'armhf': 'y'}> +CONFIG_PINCTRL_BCM2835 policy<{'arm64': 'y'}> +CONFIG_PINCTRL_IPROC_GPIO policy<{'arm64': 'y'}> +CONFIG_PINCTRL_NS2_MUX policy<{'arm64': 'y'}> +CONFIG_PINCTRL_AS370 policy<{'arm64': 'y', 'armhf': 'y'}> +CONFIG_PINCTRL_BERLIN_BG4CT policy<{'arm64': 'y', 'armhf': 'y'}> +CONFIG_PINCTRL_IMX50 policy<{'armhf-generic': 'y'}> +CONFIG_PINCTRL_IMX51 policy<{'armhf-generic': 'y'}> +CONFIG_PINCTRL_IMX6Q policy<{'armhf-generic': 'y'}> +CONFIG_PINCTRL_IMX6SL policy<{'armhf-generic': 'y'}> +CONFIG_PINCTRL_IMX6SLL policy<{'armhf-generic': 'y'}> +CONFIG_PINCTRL_IMX6SX policy<{'armhf-generic': 'y'}> +CONFIG_PINCTRL_IMX6UL policy<{'armhf-generic': 'y'}> +CONFIG_PINCTRL_IMX7D policy<{'armhf-generic': 'y'}> +CONFIG_PINCTRL_IMX7ULP policy<{'armhf-generic': 'y'}> +CONFIG_PINCTRL_IMX8MM policy<{'arm64': 'y', 'armhf-generic': 'y'}> +CONFIG_PINCTRL_IMX8MN policy<{'arm64': 'y', 'armhf-generic': 'y'}> +CONFIG_PINCTRL_IMX8MP policy<{'arm64': 'y', 'armhf-generic': 'y'}> +CONFIG_PINCTRL_IMX8MQ policy<{'arm64': 'y', 'armhf-generic': 'y'}> +CONFIG_PINCTRL_IMX8QM policy<{'arm64': 'y'}> +CONFIG_PINCTRL_IMX8QXP policy<{'arm64': 'y'}> +CONFIG_PINCTRL_IMX8DXL policy<{'arm64': 'y'}> +CONFIG_PINCTRL_VF610 policy<{'armhf-generic': 'y'}> +CONFIG_PINCTRL_BAYTRAIL policy<{'amd64': 'y'}> +CONFIG_PINCTRL_CHERRYVIEW policy<{'amd64': 'y'}> +CONFIG_PINCTRL_LYNXPOINT policy<{'amd64': 'm'}> +CONFIG_PINCTRL_BROXTON policy<{'amd64': 'm'}> +CONFIG_PINCTRL_CANNONLAKE policy<{'amd64': 'm'}> +CONFIG_PINCTRL_CEDARFORK policy<{'amd64': 'm'}> +CONFIG_PINCTRL_DENVERTON policy<{'amd64': 'm'}> +CONFIG_PINCTRL_GEMINILAKE policy<{'amd64': 'm'}> +CONFIG_PINCTRL_ICELAKE policy<{'amd64': 'm'}> +CONFIG_PINCTRL_JASPERLAKE policy<{'amd64': 'm'}> +CONFIG_PINCTRL_LEWISBURG policy<{'amd64': 'm'}> +CONFIG_PINCTRL_SUNRISEPOINT policy<{'amd64': 'm'}> +CONFIG_PINCTRL_TIGERLAKE policy<{'amd64': 'm'}> +CONFIG_PINCTRL_NPCM7XX policy<{'armhf': 'y'}> +CONFIG_PINCTRL_APQ8064 policy<{'arm64': 'm', 'armhf': 'm'}> +CONFIG_PINCTRL_APQ8084 policy<{'arm64': 'm', 'armhf': 'm'}> +CONFIG_PINCTRL_IPQ4019 policy<{'arm64': 'm', 'armhf': 'm'}> +CONFIG_PINCTRL_IPQ8064 policy<{'arm64': 'm', 'armhf': 'm'}> +CONFIG_PINCTRL_IPQ8074 policy<{'arm64': 'm', 'armhf': 'm'}> +CONFIG_PINCTRL_IPQ6018 policy<{'arm64': 'm', 'armhf': 'm'}> +CONFIG_PINCTRL_MSM8660 policy<{'arm64': 'm', 'armhf': 'm'}> +CONFIG_PINCTRL_MSM8960 policy<{'arm64': 'm', 'armhf': 'm'}> +CONFIG_PINCTRL_MDM9615 policy<{'arm64': 'm', 'armhf': 'm'}> +CONFIG_PINCTRL_MSM8X74 policy<{'arm64': 'm', 'armhf': 'm'}> +CONFIG_PINCTRL_MSM8916 policy<{'arm64': 'm', 'armhf': 'm'}> +CONFIG_PINCTRL_MSM8976 policy<{'arm64': 'm', 'armhf': 'm'}> +CONFIG_PINCTRL_MSM8994 policy<{'arm64': 'm', 'armhf': 'm'}> +CONFIG_PINCTRL_MSM8996 policy<{'arm64': 'm', 'armhf': 'm'}> +CONFIG_PINCTRL_MSM8998 policy<{'arm64': 'm', 'armhf': 'm'}> +CONFIG_PINCTRL_QCS404 policy<{'arm64': 'm', 'armhf': 'm'}> +CONFIG_PINCTRL_QDF2XXX policy<{'arm64': 'm'}> +CONFIG_PINCTRL_QCOM_SPMI_PMIC policy<{'arm64': 'm', 'armhf': 'm'}> +CONFIG_PINCTRL_QCOM_SSBI_PMIC policy<{'arm64': 'm', 'armhf': 'm'}> +CONFIG_PINCTRL_SC7180 policy<{'arm64': 'm', 'armhf': 'm'}> +CONFIG_PINCTRL_SDM660 policy<{'arm64': 'm', 'armhf': 'm'}> +CONFIG_PINCTRL_SDM845 policy<{'arm64': 'm', 'armhf': 'm'}> +CONFIG_PINCTRL_SM8150 policy<{'arm64': 'm', 'armhf': 'm'}> +CONFIG_PINCTRL_SM8250 policy<{'arm64': 'm', 'armhf': 'm'}> +CONFIG_PINCTRL_EXYNOS policy<{'armhf': 'y'}> +CONFIG_PINCTRL_EXYNOS_ARM policy<{'armhf': 'y'}> +CONFIG_PINCTRL_SH_PFC policy<{'arm64': 'y', 'armhf': 'y'}> +CONFIG_PINCTRL_PFC_EMEV2 policy<{'armhf': 'y'}> +CONFIG_PINCTRL_PFC_R8A7740 policy<{'armhf': 'y'}> +CONFIG_PINCTRL_PFC_R8A7742 policy<{'armhf': 'y'}> +CONFIG_PINCTRL_PFC_R8A7743 policy<{'armhf': 'y'}> +CONFIG_PINCTRL_PFC_R8A7744 policy<{'armhf': 'y'}> +CONFIG_PINCTRL_PFC_R8A7745 policy<{'armhf': 'y'}> +CONFIG_PINCTRL_PFC_R8A77470 policy<{'armhf': 'y'}> +CONFIG_PINCTRL_PFC_R8A774A1 policy<{'arm64': 'y'}> +CONFIG_PINCTRL_PFC_R8A774B1 policy<{'arm64': 'y'}> +CONFIG_PINCTRL_PFC_R8A774C0 policy<{'arm64': 'y'}> +CONFIG_PINCTRL_PFC_R8A7778 policy<{'armhf': 'y'}> +CONFIG_PINCTRL_PFC_R8A7779 policy<{'armhf': 'y'}> +CONFIG_PINCTRL_PFC_R8A7790 policy<{'armhf': 'y'}> +CONFIG_PINCTRL_PFC_R8A7791 policy<{'armhf': 'y'}> +CONFIG_PINCTRL_PFC_R8A7792 policy<{'armhf': 'y'}> +CONFIG_PINCTRL_PFC_R8A7793 policy<{'armhf': 'y'}> +CONFIG_PINCTRL_PFC_R8A7794 policy<{'armhf': 'y'}> +CONFIG_PINCTRL_PFC_R8A77950 policy<{'arm64': 'y'}> +CONFIG_PINCTRL_PFC_R8A77951 policy<{'arm64': 'y'}> +CONFIG_PINCTRL_PFC_R8A77960 policy<{'arm64': 'y'}> +CONFIG_PINCTRL_PFC_R8A77961 policy<{'arm64': 'y'}> +CONFIG_PINCTRL_PFC_R8A77965 policy<{'arm64': 'y'}> +CONFIG_PINCTRL_PFC_R8A77970 policy<{'arm64': 'y'}> +CONFIG_PINCTRL_PFC_R8A77980 policy<{'arm64': 'y'}> +CONFIG_PINCTRL_PFC_R8A77990 policy<{'arm64': 'y'}> +CONFIG_PINCTRL_PFC_R8A77995 policy<{'arm64': 'y'}> +CONFIG_PINCTRL_PFC_SH73A0 policy<{'armhf': 'y'}> +CONFIG_PINCTRL_SPRD_SC9860 policy<{'arm64': 'y'}> +CONFIG_PINCTRL_SUN4I_A10 policy<{'arm64': 'y'}> +CONFIG_PINCTRL_SUN5I policy<{'arm64': 'y'}> +CONFIG_PINCTRL_SUN6I_A31 policy<{'arm64': 'y'}> +CONFIG_PINCTRL_SUN6I_A31_R policy<{'arm64': 'y'}> +CONFIG_PINCTRL_SUN8I_A23 policy<{'arm64': 'y'}> +CONFIG_PINCTRL_SUN8I_A33 policy<{'arm64': 'y'}> +CONFIG_PINCTRL_SUN8I_A83T policy<{'arm64': 'y'}> +CONFIG_PINCTRL_SUN8I_A83T_R policy<{'arm64': 'y'}> +CONFIG_PINCTRL_SUN8I_A23_R policy<{'arm64': 'y'}> +CONFIG_PINCTRL_SUN8I_H3 policy<{'arm64': 'y'}> +CONFIG_PINCTRL_SUN8I_H3_R policy<{'arm64': 'y'}> +CONFIG_PINCTRL_SUN8I_V3S policy<{'arm64': 'y'}> +CONFIG_PINCTRL_SUN9I_A80 policy<{'arm64': 'y'}> +CONFIG_PINCTRL_SUN9I_A80_R policy<{'arm64': 'y'}> +CONFIG_PINCTRL_SUN50I_A64 policy<{'arm64': 'y'}> +CONFIG_PINCTRL_SUN50I_A64_R policy<{'arm64': 'y'}> +CONFIG_PINCTRL_SUN50I_H5 policy<{'arm64': 'y'}> +CONFIG_PINCTRL_SUN50I_H6 policy<{'arm64': 'y'}> +CONFIG_PINCTRL_SUN50I_H6_R policy<{'arm64': 'y'}> +CONFIG_PINCTRL_TI_IODELAY policy<{'armhf': 'y'}> +CONFIG_PINCTRL_LOCHNAGAR policy<{'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +# +CONFIG_PINCTRL_CHERRYVIEW mark note + +# Menu: Device Drivers >> Pin controllers >> Amlogic SoC pinctrl drivers +CONFIG_PINCTRL_MESON policy<{'arm64': 'y', 'armhf': 'y'}> +CONFIG_PINCTRL_MESON8 policy<{'armhf': 'y'}> +CONFIG_PINCTRL_MESON8B policy<{'armhf': 'y'}> +CONFIG_PINCTRL_MESON_GXBB policy<{'arm64': 'y'}> +CONFIG_PINCTRL_MESON_GXL policy<{'arm64': 'y'}> +CONFIG_PINCTRL_MESON_AXG policy<{'arm64': 'y'}> +CONFIG_PINCTRL_MESON_G12A policy<{'arm64': 'y'}> +CONFIG_PINCTRL_MESON_A1 policy<{'arm64': 'y'}> + +# Menu: Device Drivers >> Pin controllers >> MediaTek pinctrl drivers +CONFIG_EINT_MTK policy<{'arm64': 'y', 'armhf': 'y'}> +CONFIG_PINCTRL_MT2701 policy<{'armhf': 'y'}> +CONFIG_PINCTRL_MT7623 policy<{'armhf': 'y'}> +CONFIG_PINCTRL_MT7629 policy<{'armhf': 'y'}> +CONFIG_PINCTRL_MT8135 policy<{'armhf': 'y'}> +CONFIG_PINCTRL_MT8127 policy<{'armhf': 'y'}> +CONFIG_PINCTRL_MT2712 policy<{'arm64': 'y'}> +CONFIG_PINCTRL_MT6765 policy<{'arm64': 'y'}> +CONFIG_PINCTRL_MT6797 policy<{'arm64': 'y'}> +CONFIG_PINCTRL_MT7622 policy<{'arm64': 'y'}> +CONFIG_PINCTRL_MT8173 policy<{'arm64': 'y'}> +CONFIG_PINCTRL_MT8183 policy<{'arm64': 'y'}> +CONFIG_PINCTRL_MT8516 policy<{'arm64': 'y'}> +CONFIG_PINCTRL_MT6397 policy<{'arm64': 'y', 'armhf': 'y'}> +# +CONFIG_PINCTRL_MT8135 flag +CONFIG_PINCTRL_MT8127 flag + +# Menu: Device Drivers >> Pin controllers >> UniPhier SoC pinctrl drivers +CONFIG_PINCTRL_UNIPHIER policy<{'armhf': 'y'}> +CONFIG_PINCTRL_UNIPHIER_LD4 policy<{'armhf': 'y'}> +CONFIG_PINCTRL_UNIPHIER_PRO4 policy<{'armhf': 'y'}> +CONFIG_PINCTRL_UNIPHIER_SLD8 policy<{'armhf': 'y'}> +CONFIG_PINCTRL_UNIPHIER_PRO5 policy<{'armhf': 'y'}> +CONFIG_PINCTRL_UNIPHIER_PXS2 policy<{'armhf': 'y'}> +CONFIG_PINCTRL_UNIPHIER_LD6B policy<{'armhf': 'y'}> +CONFIG_PINCTRL_UNIPHIER_LD11 policy<{'armhf': 'y'}> +CONFIG_PINCTRL_UNIPHIER_LD20 policy<{'armhf': 'y'}> +CONFIG_PINCTRL_UNIPHIER_PXS3 policy<{'armhf': 'y'}> + +# Menu: Device Drivers >> Platform support for Chrome hardware +CONFIG_CHROME_PLATFORMS policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y'}> +CONFIG_CHROMEOS_LAPTOP policy<{'amd64': 'm'}> +CONFIG_CHROMEOS_PSTORE policy<{'amd64': 'm'}> +CONFIG_CHROMEOS_TBMC policy<{'amd64': 'm', 'arm64': 'm'}> +CONFIG_CROS_KBD_LED_BACKLIGHT policy<{'amd64': 'm', 'arm64': 'm'}> +CONFIG_CROS_EC_CHARDEV policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm'}> +CONFIG_CROS_EC_LIGHTBAR policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm'}> +CONFIG_CROS_EC_VBC policy<{'arm64': 'm', 'armhf': 'm'}> +CONFIG_CROS_EC_DEBUGFS policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm'}> +CONFIG_CROS_EC_SENSORHUB policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm'}> +CONFIG_CROS_EC_SYSFS policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm'}> +CONFIG_CROS_EC_TYPEC policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm'}> +CONFIG_CROS_USBPD_LOGGER policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm'}> +CONFIG_CROS_USBPD_NOTIFY policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm'}> + +# Menu: Device Drivers >> Platform support for Chrome hardware >> ChromeOS Embedded Controller +CONFIG_CROS_EC policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm'}> +CONFIG_CROS_EC_I2C policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm'}> +CONFIG_CROS_EC_RPMSG policy<{'arm64': 'm', 'armhf': 'm'}> +CONFIG_CROS_EC_ISHTP policy<{'amd64': 'm'}> +CONFIG_CROS_EC_SPI policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm'}> +CONFIG_CROS_EC_LPC policy<{'amd64': 'm'}> + +# Menu: Device Drivers >> Platform support for Chrome hardware >> ChromeOS Embedded Controller >> ChromeOS Wilco Embedded Controller +CONFIG_WILCO_EC policy<{'amd64': 'm'}> +CONFIG_WILCO_EC_DEBUGFS policy<{'amd64': 'm'}> +CONFIG_WILCO_EC_EVENTS policy<{'amd64': 'm'}> +CONFIG_WILCO_EC_TELEMETRY policy<{'amd64': 'm'}> + +# Menu: Device Drivers >> Platform support for Goldfish virtual devices +CONFIG_GOLDFISH policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n', 's390x': 'n'}> + +# Menu: Device Drivers >> Platform support for Mellanox hardware +CONFIG_MELLANOX_PLATFORM policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y'}> +CONFIG_MLXREG_HOTPLUG policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm'}> +CONFIG_MLXREG_IO policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm'}> +CONFIG_MLXBF_TMFIFO policy<{'arm64': 'm'}> +CONFIG_MLXBF_BOOTCTL policy<{'arm64': 'm'}> + +# Menu: Device Drivers >> Platform support for OLPC XO 1.75 hardware + +# Menu: Device Drivers >> Plug and Play support +CONFIG_PNP policy<{'amd64': 'y', 'arm64': 'y'}> +CONFIG_PNP_DEBUG_MESSAGES policy<{'amd64': 'n', 'arm64': 'n'}> + +# Menu: Device Drivers >> Power supply class support +CONFIG_POWER_SUPPLY policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'n'}> +CONFIG_POWER_SUPPLY_DEBUG policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n'}> +CONFIG_POWER_SUPPLY_HWMON policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_PDA_POWER policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_GENERIC_ADC_BATTERY policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_MAX8925_POWER policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_WM831X_BACKUP policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_WM831X_POWER policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_WM8350_POWER policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_TEST_POWER policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_BATTERY_88PM860X policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_CHARGER_ADP5061 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_BATTERY_ACT8945A policy<{'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_BATTERY_CPCAP policy<{'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_BATTERY_CW2015 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_BATTERY_DS2760 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_BATTERY_DS2780 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_BATTERY_DS2781 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_BATTERY_DS2782 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_BATTERY_LEGO_EV3 policy<{'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_BATTERY_SBS policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_CHARGER_SBS policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_MANAGER_SBS policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_BATTERY_BQ27XXX policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_BATTERY_BQ27XXX_I2C policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_BATTERY_BQ27XXX_HDQ policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_BATTERY_BQ27XXX_DT_UPDATES_NVM policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n'}> +CONFIG_BATTERY_DA9030 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_BATTERY_DA9052 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_CHARGER_DA9150 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_BATTERY_DA9150 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_CHARGER_AXP20X policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_BATTERY_AXP20X policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_AXP20X_POWER policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_AXP288_CHARGER policy<{'amd64': 'm'}> +CONFIG_AXP288_FUEL_GAUGE policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_BATTERY_MAX17040 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_BATTERY_MAX17042 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_BATTERY_MAX1721X policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_BATTERY_TWL4030_MADC policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_CHARGER_88PM860X policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_CHARGER_PCF50633 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_BATTERY_RX51 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_CHARGER_CPCAP policy<{'arm64': 'm', 'armhf': 'm'}> +CONFIG_CHARGER_ISP1704 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_CHARGER_MAX8903 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_CHARGER_TWL4030 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_CHARGER_LP8727 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_CHARGER_LP8788 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_CHARGER_GPIO policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_CHARGER_MANAGER policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_CHARGER_LT3651 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_CHARGER_MAX14577 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_CHARGER_DETECTOR_MAX14656 policy<{'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_CHARGER_MAX77650 policy<{'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_CHARGER_MAX77693 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_CHARGER_MAX8997 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_CHARGER_MAX8998 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_CHARGER_MP2629 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_CHARGER_QCOM_SMBB policy<{'arm64': 'm', 'armhf': 'm'}> +CONFIG_CHARGER_BQ2415X policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_CHARGER_BQ24190 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_CHARGER_BQ24257 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_CHARGER_BQ24735 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_CHARGER_BQ25890 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_CHARGER_SMB347 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_CHARGER_TPS65090 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_CHARGER_TPS65217 policy<{'arm64': 'm', 'armhf': 'm'}> +CONFIG_BATTERY_GAUGE_LTC2941 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_BATTERY_RT5033 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_CHARGER_RT9455 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_CHARGER_CROS_USBPD policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm'}> +CONFIG_CHARGER_SC2731 policy<{'arm64': 'm'}> +CONFIG_FUEL_GAUGE_SC27XX policy<{'arm64': 'm'}> +CONFIG_CHARGER_UCS1002 policy<{'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_CHARGER_BD70528 policy<{'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_CHARGER_BD99954 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_CHARGER_WILCO policy<{'amd64': 'm'}> + +# Menu: Device Drivers >> Pulse-Width Modulation (PWM) Support +CONFIG_PWM policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'n'}> +CONFIG_PWM_DEBUG policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n'}> +CONFIG_PWM_ATMEL_HLCDC_PWM policy<{'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_PWM_BCM_IPROC policy<{'arm64': 'm'}> +CONFIG_PWM_BCM2835 policy<{'arm64': 'm'}> +CONFIG_PWM_BERLIN policy<{'arm64': 'm', 'armhf': 'm'}> +CONFIG_PWM_BRCMSTB policy<{'arm64': 'm'}> +CONFIG_PWM_CRC policy<{'amd64': 'y'}> +CONFIG_PWM_CROS_EC policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm'}> +CONFIG_PWM_FSL_FTM policy<{'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_PWM_HIBVT policy<{'arm64': 'm', 'armhf': 'm'}> +CONFIG_PWM_IMX1 policy<{'arm64': 'm', 'armhf-generic': 'm'}> +CONFIG_PWM_IMX27 policy<{'arm64': 'm', 'armhf-generic': 'm'}> +CONFIG_PWM_IMX_TPM policy<{'arm64': 'm', 'armhf-generic': 'm'}> +CONFIG_PWM_IQS620A policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_PWM_LP3943 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_PWM_LPSS_PCI policy<{'amd64': 'y'}> +CONFIG_PWM_LPSS_PLATFORM policy<{'amd64': 'y'}> +CONFIG_PWM_MESON policy<{'arm64': 'm', 'armhf': 'm'}> +CONFIG_PWM_MTK_DISP policy<{'arm64': 'm', 'armhf': 'm'}> +CONFIG_PWM_MEDIATEK policy<{'arm64': 'm', 'armhf': 'm'}> +CONFIG_PWM_OMAP_DMTIMER policy<{'armhf': 'm'}> +CONFIG_PWM_PCA9685 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_PWM_RCAR policy<{'arm64': 'm', 'armhf': 'm'}> +CONFIG_PWM_RENESAS_TPU policy<{'arm64': 'm', 'armhf': 'm'}> +CONFIG_PWM_ROCKCHIP policy<{'arm64': 'm', 'armhf': 'm'}> +CONFIG_PWM_SAMSUNG policy<{'armhf': 'm'}> +CONFIG_PWM_SPRD policy<{'arm64': 'm'}> +CONFIG_PWM_STMPE policy<{'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_PWM_SUN4I policy<{'arm64': 'm'}> +CONFIG_PWM_TEGRA policy<{'armhf-generic': 'm'}> +CONFIG_PWM_TIECAP policy<{'arm64': 'm', 'armhf-generic': 'm', 'armhf-generic-lpae': 'n'}> +CONFIG_PWM_TIEHRPWM policy<{'arm64': 'm', 'armhf-generic': 'm', 'armhf-generic-lpae': 'n'}> +CONFIG_PWM_TWL policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_PWM_TWL_LED policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> + +# Menu: Device Drivers >> RapidIO support +CONFIG_RAPIDIO policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'n'}> +CONFIG_RAPIDIO_TSI721 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm'}> +CONFIG_RAPIDIO_DISC_TIMEOUT policy<{'amd64': '30', 'arm64': '30', 'armhf': '30', 'ppc64el': '30'}> +CONFIG_RAPIDIO_ENABLE_RX_TX_PORTS policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n'}> +CONFIG_RAPIDIO_DMA_ENGINE policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_RAPIDIO_DEBUG policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n'}> +CONFIG_RAPIDIO_CHMAN policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_RAPIDIO_MPORT_CDEV policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> + +# Menu: Device Drivers >> RapidIO support >> Enumeration method +CONFIG_RAPIDIO_ENUM_BASIC policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> + +# Menu: Device Drivers >> RapidIO support >> RapidIO Switch drivers +CONFIG_RAPIDIO_TSI57X policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_RAPIDIO_CPS_XX policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_RAPIDIO_TSI568 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_RAPIDIO_CPS_GEN2 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_RAPIDIO_RXS_GEN3 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> + +# Menu: Device Drivers >> Real Time Clock +CONFIG_RTC_CLASS policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_RTC_HCTOSYS policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_RTC_HCTOSYS_DEVICE policy<{'amd64': '"rtc0"', 'arm64': '"rtc0"', 'armhf': '"rtc0"', 'ppc64el': '"rtc0"'}> +CONFIG_RTC_SYSTOHC policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_RTC_SYSTOHC_DEVICE policy<{'amd64': '"rtc0"', 'arm64': '"rtc0"', 'armhf': '"rtc0"', 'ppc64el': '"rtc0"'}> +CONFIG_RTC_DEBUG policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n'}> +CONFIG_RTC_NVMEM policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_RTC_INTF_SYSFS policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_RTC_INTF_PROC policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_RTC_INTF_DEV policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_RTC_INTF_DEV_UIE_EMUL policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n'}> +CONFIG_RTC_DRV_TEST policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n'}> +CONFIG_RTC_DRV_88PM860X policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_RTC_DRV_88PM80X policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_RTC_DRV_ABB5ZES3 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_RTC_DRV_ABEOZ9 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_RTC_DRV_ABX80X policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_RTC_DRV_BRCMSTB policy<{'arm64': 'm'}> +CONFIG_RTC_DRV_AS3722 policy<{'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_RTC_DRV_DS1307 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_RTC_DRV_DS1307_CENTURY policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_RTC_DRV_DS1374 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_RTC_DRV_DS1374_WDT policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_RTC_DRV_DS1672 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_RTC_DRV_HYM8563 policy<{'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_RTC_DRV_LP8788 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_RTC_DRV_MAX6900 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_RTC_DRV_MAX8907 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_RTC_DRV_MAX8925 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_RTC_DRV_MAX8998 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_RTC_DRV_MAX8997 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_RTC_DRV_MAX77686 policy<{'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_RTC_DRV_RK808 policy<{'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_RTC_DRV_RS5C372 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_RTC_DRV_ISL1208 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_RTC_DRV_ISL12022 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_RTC_DRV_ISL12026 policy<{'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_RTC_DRV_X1205 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_RTC_DRV_PCF8523 policy<{'amd64': 'm', 'arm64': 'm', 'armhf-generic': 'y', 'armhf-generic-lpae': 'm', 'ppc64el': 'm'}> +CONFIG_RTC_DRV_PCF85063 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_RTC_DRV_PCF85363 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_RTC_DRV_PCF8563 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_RTC_DRV_PCF8583 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_RTC_DRV_M41T80 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_RTC_DRV_M41T80_WDT policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_RTC_DRV_BD70528 policy<{'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_RTC_DRV_BQ32K policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_RTC_DRV_TWL4030 policy<{'arm64': 'm', 'armhf': 'y', 'ppc64el': 'm'}> +CONFIG_RTC_DRV_PALMAS policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_RTC_DRV_TPS6586X policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_RTC_DRV_TPS65910 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_RTC_DRV_TPS80031 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_RTC_DRV_RC5T583 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_RTC_DRV_RC5T619 policy<{'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_RTC_DRV_S35390A policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_RTC_DRV_FM3130 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_RTC_DRV_RX8010 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_RTC_DRV_RX8581 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_RTC_DRV_RX8025 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_RTC_DRV_EM3027 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_RTC_DRV_RV3028 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_RTC_DRV_RV8803 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_RTC_DRV_S5M policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_RTC_DRV_SD3078 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_RTC_DRV_M41T93 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_RTC_DRV_M41T94 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_RTC_DRV_DS1302 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_RTC_DRV_DS1305 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_RTC_DRV_DS1343 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_RTC_DRV_DS1347 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_RTC_DRV_DS1390 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_RTC_DRV_MAX6916 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_RTC_DRV_R9701 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_RTC_DRV_RX4581 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_RTC_DRV_RX6110 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_RTC_DRV_RS5C348 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_RTC_DRV_MAX6902 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_RTC_DRV_PCF2123 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_RTC_DRV_MCP795 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_RTC_DRV_DS3232 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_RTC_DRV_DS3232_HWMON policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_RTC_DRV_PCF2127 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_RTC_DRV_RV3029C2 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_RTC_DRV_RV3029_HWMON policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_RTC_DRV_CMOS policy<{'amd64': 'y', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_RTC_DRV_DS1286 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_RTC_DRV_DS1511 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_RTC_DRV_DS1553 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_RTC_DRV_DS1685_FAMILY policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_RTC_DRV_DS1742 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_RTC_DRV_DS2404 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_RTC_DRV_DA9052 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_RTC_DRV_DA9055 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_RTC_DRV_DA9063 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_RTC_DRV_EFI policy<{'arm64': 'y', 'armhf': 'y'}> +CONFIG_RTC_DRV_STK17TA8 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_RTC_DRV_M48T86 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_RTC_DRV_M48T35 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_RTC_DRV_M48T59 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_RTC_DRV_MSM6242 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_RTC_DRV_BQ4802 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_RTC_DRV_RP5C01 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_RTC_DRV_V3020 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_RTC_DRV_WM831X policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_RTC_DRV_WM8350 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_RTC_DRV_SC27XX policy<{'arm64': 'm'}> +CONFIG_RTC_DRV_PCF50633 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_RTC_DRV_AB3100 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_RTC_DRV_OPAL policy<{'ppc64el': 'y'}> +CONFIG_RTC_DRV_ZYNQMP policy<{'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_RTC_DRV_CROS_EC policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm'}> +CONFIG_RTC_DRV_IMXDI policy<{'arm64': 'm', 'armhf-generic': 'm'}> +CONFIG_RTC_DRV_FSL_FTM_ALARM policy<{'arm64': 'm'}> +CONFIG_RTC_DRV_MESON policy<{'armhf': 'm'}> +CONFIG_RTC_DRV_MESON_VRTC policy<{'arm64': 'm', 'armhf': 'm'}> +CONFIG_RTC_DRV_OMAP policy<{'armhf': 'y'}> +CONFIG_RTC_DRV_S3C policy<{'armhf': 'y'}> +CONFIG_RTC_DRV_SH policy<{'arm64': 'm', 'armhf': 'm'}> +CONFIG_RTC_DRV_PL030 policy<{'arm64': 'm', 'armhf': 'm'}> +CONFIG_RTC_DRV_PL031 policy<{'arm64': 'm', 'armhf': 'y'}> +CONFIG_RTC_DRV_GENERIC policy<{'ppc64el': 'y'}> +CONFIG_RTC_DRV_SUN6I policy<{'arm64': 'y'}> +CONFIG_RTC_DRV_MV policy<{'arm64': 'y', 'armhf': 'y'}> +CONFIG_RTC_DRV_ARMADA38X policy<{'arm64': 'm', 'armhf': 'm'}> +CONFIG_RTC_DRV_CADENCE policy<{'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_RTC_DRV_FTRTC010 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_RTC_DRV_PCAP policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_RTC_DRV_MC13XXX policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_RTC_DRV_PM8XXX policy<{'arm64': 'm', 'armhf': 'm'}> +CONFIG_RTC_DRV_TEGRA policy<{'armhf-generic': 'm'}> +CONFIG_RTC_DRV_MXC policy<{'arm64': 'm', 'armhf-generic': 'm'}> +CONFIG_RTC_DRV_MXC_V2 policy<{'arm64': 'm', 'armhf-generic': 'm'}> +CONFIG_RTC_DRV_SNVS policy<{'arm64': 'm', 'armhf-generic': 'm'}> +CONFIG_RTC_DRV_IMX_SC policy<{'arm64': 'm', 'armhf-generic': 'm'}> +CONFIG_RTC_DRV_MT2712 policy<{'arm64': 'm', 'armhf': 'm'}> +CONFIG_RTC_DRV_MT6397 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_RTC_DRV_MT7622 policy<{'arm64': 'm', 'armhf': 'm'}> +CONFIG_RTC_DRV_XGENE policy<{'arm64': 'y'}> +CONFIG_RTC_DRV_R7301 policy<{'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_RTC_DRV_CPCAP policy<{'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_RTC_DRV_RTD119X policy<{'arm64': 'y', 'armhf': 'y'}> +CONFIG_RTC_DRV_ASPEED policy<{'armhf': 'm'}> +CONFIG_RTC_DRV_HID_SENSOR_TIME policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_RTC_DRV_WILCO_EC policy<{'amd64': 'm'}> +# +CONFIG_RTC_DRV_TEST flag +CONFIG_RTC_DRV_CMOS note +CONFIG_RTC_DRV_EFI note +CONFIG_RTC_DRV_TWL4030 note + +# Menu: Device Drivers >> Real Time Clock >> Subtype +CONFIG_RTC_DRV_DS1685 policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_RTC_DRV_DS1689 policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n'}> +CONFIG_RTC_DRV_DS17285 policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n'}> +CONFIG_RTC_DRV_DS17485 policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n'}> +CONFIG_RTC_DRV_DS17885 policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n'}> + +# Menu: Device Drivers >> Reliability, Availability and Serviceability (RAS) features +CONFIG_RAS policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_RAS_CEC policy<{'amd64': 'y'}> +CONFIG_RAS_CEC_DEBUG policy<{'amd64': 'n'}> + +# Menu: Device Drivers >> Remote Controller support +CONFIG_RC_CORE policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'n'}> +CONFIG_RC_MAP policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_LIRC policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> + +# Menu: Device Drivers >> Remote Controller support >> Remote Controller devices +CONFIG_RC_DEVICES policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_RC_ATI_REMOTE policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_IR_ENE policy<{'amd64': 'm', 'arm64': 'm'}> +CONFIG_IR_HIX5HD2 policy<{'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_IR_IMON policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_IR_IMON_RAW policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_IR_MCEUSB policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_IR_ITE_CIR policy<{'amd64': 'm', 'arm64': 'm'}> +CONFIG_IR_FINTEK policy<{'amd64': 'm', 'arm64': 'm'}> +CONFIG_IR_MESON policy<{'arm64': 'm', 'armhf': 'm'}> +CONFIG_IR_MTK policy<{'arm64': 'm', 'armhf': 'm'}> +CONFIG_IR_NUVOTON policy<{'amd64': 'm', 'arm64': 'm'}> +CONFIG_IR_REDRAT3 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_IR_SPI policy<{'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_IR_STREAMZAP policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_IR_WINBOND_CIR policy<{'amd64': 'm'}> +CONFIG_IR_IGORPLUGUSB policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_IR_IGUANA policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_IR_TTUSBIR policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_IR_RX51 policy<{'armhf': 'm'}> +CONFIG_RC_LOOPBACK policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_IR_GPIO_CIR policy<{'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_IR_GPIO_TX policy<{'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_IR_PWM_TX policy<{'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_IR_SUNXI policy<{'arm64': 'm'}> +CONFIG_IR_SERIAL policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_IR_SERIAL_TRANSMITTER policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_IR_SIR policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_RC_XBOX_DVD policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> + +# Menu: Device Drivers >> Remote Controller support >> Remote Controller devices >> Hardware decoder + +# Menu: Device Drivers >> Remote Controller support >> Remote controller decoders +CONFIG_RC_DECODERS policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_IR_NEC_DECODER policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_IR_RC5_DECODER policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_IR_RC6_DECODER policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_IR_JVC_DECODER policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_IR_SONY_DECODER policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_IR_SANYO_DECODER policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_IR_SHARP_DECODER policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_IR_MCE_KBD_DECODER policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_IR_XMP_DECODER policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_IR_IMON_DECODER policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_IR_RCMM_DECODER policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> + +# Menu: Device Drivers >> Remoteproc drivers + +# Menu: Device Drivers >> Remoteproc drivers >> Support for Remote Processor subsystem +CONFIG_REMOTEPROC policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'n'}> +CONFIG_IMX_REMOTEPROC policy<{'arm64': 'm', 'armhf-generic': 'm'}> +CONFIG_MTK_SCP policy<{'arm64': 'm', 'armhf': 'm'}> +CONFIG_OMAP_REMOTEPROC policy<{'armhf': 'm'}> +CONFIG_OMAP_REMOTEPROC_WATCHDOG policy<{'armhf': 'n'}> +CONFIG_WKUP_M3_RPROC policy<{'armhf-generic': 'm'}> +CONFIG_QCOM_Q6V5_ADSP policy<{'arm64': 'm', 'armhf': 'm'}> +CONFIG_QCOM_Q6V5_MSS policy<{'arm64': 'm', 'armhf': 'm'}> +CONFIG_QCOM_Q6V5_PAS policy<{'arm64': 'm', 'armhf': 'm'}> +CONFIG_QCOM_Q6V5_WCSS policy<{'arm64': 'm', 'armhf': 'm'}> +CONFIG_QCOM_SYSMON policy<{'arm64': 'm', 'armhf': 'm'}> +CONFIG_QCOM_WCNSS_PIL policy<{'arm64': 'n', 'armhf': 'n'}> + +# Menu: Device Drivers >> Reset Controller Support +CONFIG_RESET_CONTROLLER policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'n'}> +CONFIG_RESET_BERLIN policy<{'arm64': 'y', 'armhf': 'y'}> +CONFIG_RESET_BRCMSTB policy<{'arm64': 'm'}> +CONFIG_RESET_BRCMSTB_RESCAL policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_RESET_IMX7 policy<{'arm64': 'y', 'armhf-generic': 'y'}> +CONFIG_RESET_INTEL_GW policy<{'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_RESET_MESON policy<{'arm64': 'y', 'armhf': 'y'}> +CONFIG_RESET_MESON_AUDIO_ARB policy<{'arm64': 'm', 'armhf': 'm'}> +CONFIG_RESET_NPCM policy<{'armhf': 'y'}> +CONFIG_RESET_QCOM_AOSS policy<{'arm64': 'y', 'armhf': 'y'}> +CONFIG_RESET_QCOM_PDC policy<{'arm64': 'm', 'armhf': 'm'}> +CONFIG_RESET_SCMI policy<{'arm64': 'm', 'armhf': 'm'}> +CONFIG_RESET_SIMPLE policy<{'arm64': 'y', 'armhf': 'y'}> +CONFIG_RESET_SUNXI policy<{'arm64': 'y'}> +CONFIG_RESET_TI_SCI policy<{'arm64': 'm'}> +CONFIG_RESET_TI_SYSCON policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_RESET_UNIPHIER policy<{'armhf': 'm'}> +CONFIG_RESET_UNIPHIER_GLUE policy<{'armhf': 'm'}> +CONFIG_COMMON_RESET_HI3660 policy<{'arm64': 'm', 'armhf': 'm'}> +CONFIG_COMMON_RESET_HI6220 policy<{'arm64': 'm', 'armhf': 'm'}> + +# Menu: Device Drivers >> Rpmsg drivers +CONFIG_RPMSG_CHAR policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_RPMSG_MTK_SCP policy<{'arm64': 'm', 'armhf': 'm'}> +CONFIG_RPMSG_QCOM_GLINK_RPM policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_RPMSG_QCOM_GLINK_SMEM policy<{'arm64': 'm', 'armhf': 'm'}> +CONFIG_RPMSG_QCOM_SMD policy<{'arm64-generic': 'm', 'arm64-generic-64k': 'm', 'armhf': 'm'}> +CONFIG_RPMSG_VIRTIO policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'n'}> + +# Menu: Device Drivers >> SCSI device support +CONFIG_RAID_ATTRS policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> + +# Menu: Device Drivers >> SCSI device support >> SCSI device support +CONFIG_SCSI policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_SCSI_PROC_FS policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_BLK_DEV_SD policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_CHR_DEV_ST policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_BLK_DEV_SR policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_CHR_DEV_SG policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_CHR_DEV_SCH policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_SCSI_ENCLOSURE policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SCSI_CONSTANTS policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_SCSI_LOGGING policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_SCSI_SCAN_ASYNC policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +# +CONFIG_SCSI flag +CONFIG_CHR_DEV_SG note +CONFIG_BLK_DEV_SD mark note +CONFIG_BLK_DEV_SR mark note + +# Menu: Device Drivers >> SCSI device support >> SCSI device support >> SCSI Device Handlers +CONFIG_SCSI_DH policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_SCSI_DH_RDAC policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_SCSI_DH_HP_SW policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_SCSI_DH_EMC policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_SCSI_DH_ALUA policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> + +# Menu: Device Drivers >> SCSI device support >> SCSI device support >> SCSI Transports +CONFIG_SCSI_SPI_ATTRS policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_SCSI_FC_ATTRS policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_SCSI_ISCSI_ATTRS policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_SCSI_SAS_ATTRS policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_SCSI_SAS_LIBSAS policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_SCSI_SAS_ATA policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_SCSI_SAS_HOST_SMP policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_SCSI_SRP_ATTRS policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'y', 's390x': 'm'}> + +# Menu: Device Drivers >> SCSI device support >> SCSI device support >> SCSI low-level drivers +CONFIG_SCSI_LOWLEVEL policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_ISCSI_TCP policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_ISCSI_BOOT_SYSFS policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_SCSI_CXGB3_ISCSI policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'n'}> +CONFIG_SCSI_CXGB4_ISCSI policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'n'}> +CONFIG_SCSI_BNX2_ISCSI policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'n'}> +CONFIG_SCSI_BNX2X_FCOE policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'n'}> +CONFIG_BE2ISCSI policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'n'}> +CONFIG_CXLFLASH policy<{'ppc64el': 'm'}> +CONFIG_BLK_DEV_3W_XXXX_RAID policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'n'}> +CONFIG_SCSI_HPSA policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'n'}> +CONFIG_SCSI_3W_9XXX policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'n'}> +CONFIG_SCSI_3W_SAS policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'n'}> +CONFIG_SCSI_ACARD policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'n'}> +CONFIG_SCSI_AHA1740 policy<{'amd64': 'm'}> +CONFIG_SCSI_AACRAID policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'n'}> +CONFIG_SCSI_AIC94XX policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'n'}> +CONFIG_AIC94XX_DEBUG policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n'}> +CONFIG_SCSI_HISI_SAS policy<{'arm64': 'm'}> +CONFIG_SCSI_HISI_SAS_PCI policy<{'arm64': 'm'}> +CONFIG_SCSI_MVSAS policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'n'}> +CONFIG_SCSI_MVSAS_DEBUG policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n'}> +CONFIG_SCSI_MVSAS_TASKLET policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n'}> +CONFIG_SCSI_MVUMI policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'n'}> +CONFIG_SCSI_DPT_I2O policy<{'amd64': 'm'}> +CONFIG_SCSI_ADVANSYS policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'n'}> +CONFIG_SCSI_ARCMSR policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'n'}> +CONFIG_SCSI_ESAS2R policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'n'}> +CONFIG_MEGARAID_NEWGEN policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'n'}> +CONFIG_MEGARAID_MM policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_MEGARAID_MAILBOX policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_MEGARAID_LEGACY policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'n'}> +CONFIG_MEGARAID_SAS policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'n'}> +CONFIG_SCSI_MPT3SAS policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_SCSI_MPT2SAS_MAX_SGE policy<{'amd64': '128', 'arm64': '128', 'armhf': '128', 'ppc64el': '128', 's390x': '128'}> +CONFIG_SCSI_MPT3SAS_MAX_SGE policy<{'amd64': '128', 'arm64': '128', 'armhf': '128', 'ppc64el': '128', 's390x': '128'}> +CONFIG_SCSI_MPT2SAS policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_SCSI_SMARTPQI policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SCSI_UFS_TI_J721E policy<{'arm64': 'm'}> +CONFIG_SCSI_HPTIOP policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'n'}> +CONFIG_SCSI_BUSLOGIC policy<{'amd64': 'm'}> +CONFIG_SCSI_FLASHPOINT policy<{'amd64': 'y'}> +CONFIG_SCSI_MYRB policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'n'}> +CONFIG_SCSI_MYRS policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_VMWARE_PVSCSI policy<{'amd64': 'm'}> +CONFIG_XEN_SCSI_FRONTEND policy<{'amd64': 'm', 'arm64': 'm'}> +CONFIG_HYPERV_STORAGE policy<{'amd64': 'm'}> +CONFIG_LIBFC policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_SCSI_SNIC policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'n'}> +CONFIG_SCSI_SNIC_DEBUG_FS policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n'}> +CONFIG_SCSI_DMX3191D policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'n'}> +CONFIG_SCSI_FDOMAIN_PCI policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'n'}> +CONFIG_SCSI_GDTH policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'n'}> +CONFIG_SCSI_ISCI policy<{'amd64': 'm'}> +CONFIG_SCSI_IPS policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'n'}> +CONFIG_SCSI_IBMVSCSI policy<{'ppc64el': 'm'}> +CONFIG_SCSI_IBMVSCSIS policy<{'ppc64el': 'm'}> +CONFIG_SCSI_IBMVFC policy<{'ppc64el': 'm'}> +CONFIG_SCSI_IBMVFC_TRACE policy<{'ppc64el': 'y'}> +CONFIG_SCSI_INITIO policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'n'}> +CONFIG_SCSI_INIA100 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'n'}> +CONFIG_SCSI_PPA policy<{'amd64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SCSI_IMM policy<{'amd64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SCSI_IZIP_EPP16 policy<{'amd64': 'n', 'armhf': 'n', 'ppc64el': 'n'}> +CONFIG_SCSI_IZIP_SLOW_CTR policy<{'amd64': 'n', 'armhf': 'n', 'ppc64el': 'n'}> +CONFIG_SCSI_STEX policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'n'}> +CONFIG_SCSI_IPR policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SCSI_IPR_TRACE policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_SCSI_IPR_DUMP policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_SCSI_QLOGIC_1280 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'n'}> +CONFIG_SCSI_QLA_FC policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'n'}> +CONFIG_TCM_QLA2XXX policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_TCM_QLA2XXX_DEBUG policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n'}> +CONFIG_SCSI_QLA_ISCSI policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'n'}> +CONFIG_QEDI policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SCSI_LPFC policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'n'}> +CONFIG_SCSI_LPFC_DEBUG_FS policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n'}> +CONFIG_SCSI_SIM710 policy<{'amd64': 'm'}> +CONFIG_SCSI_DC395x policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'n'}> +CONFIG_SCSI_AM53C974 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'n'}> +CONFIG_SCSI_NSP32 policy<{'armhf': 'm'}> +CONFIG_SCSI_WD719X policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'n'}> +CONFIG_SCSI_DEBUG policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_ZFCP policy<{'s390x': 'm'}> +CONFIG_SCSI_PMCRAID policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'n'}> +CONFIG_SCSI_PM8001 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'n'}> +CONFIG_SCSI_BFA_FC policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'n'}> +CONFIG_SCSI_VIRTIO policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_SCSI_CHELSIO_FCOE policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'n'}> +# +CONFIG_SCSI_IPR_TRACE note +CONFIG_SCSI_IPR_DUMP note +CONFIG_SCSI_VIRTIO note + +# Menu: Device Drivers >> SCSI device support >> SCSI device support >> SCSI low-level drivers >> Adaptec AIC79xx U320 support +CONFIG_SCSI_AIC79XX policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'n'}> +CONFIG_AIC79XX_CMDS_PER_DEVICE policy<{'amd64': '32', 'arm64': '32', 'armhf': '32', 'ppc64el': '32'}> +CONFIG_AIC79XX_RESET_DELAY_MS policy<{'amd64': '5000', 'arm64': '5000', 'armhf': '5000', 'ppc64el': '5000'}> +CONFIG_AIC79XX_DEBUG_ENABLE policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n'}> +CONFIG_AIC79XX_DEBUG_MASK policy<{'amd64': '0', 'arm64': '0', 'armhf': '0', 'ppc64el': '0'}> +CONFIG_AIC79XX_REG_PRETTY_PRINT policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> + +# Menu: Device Drivers >> SCSI device support >> SCSI device support >> SCSI low-level drivers >> Adaptec AIC7xxx Fast -> U160 support +CONFIG_SCSI_AIC7XXX policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'n'}> +CONFIG_AIC7XXX_CMDS_PER_DEVICE policy<{'amd64': '8', 'arm64': '8', 'armhf': '8', 'ppc64el': '8'}> +CONFIG_AIC7XXX_RESET_DELAY_MS policy<{'amd64': '5000', 'arm64': '5000', 'armhf': '5000', 'ppc64el': '5000'}> +CONFIG_AIC7XXX_DEBUG_ENABLE policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n'}> +CONFIG_AIC7XXX_DEBUG_MASK policy<{'amd64': '0', 'arm64': '0', 'armhf': '0', 'ppc64el': '0'}> +CONFIG_AIC7XXX_REG_PRETTY_PRINT policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> + +# Menu: Device Drivers >> SCSI device support >> SCSI device support >> SCSI low-level drivers >> LibFCoE module +CONFIG_LIBFCOE policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_FCOE policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_FCOE_FNIC policy<{'amd64': 'm'}> +CONFIG_QEDF policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> + +# Menu: Device Drivers >> SCSI device support >> SCSI device support >> SCSI low-level drivers >> PCMCIA SCSI adapter support +CONFIG_SCSI_LOWLEVEL_PCMCIA policy<{'amd64': 'y'}> +CONFIG_PCMCIA_AHA152X policy<{'amd64': 'm'}> +CONFIG_PCMCIA_FDOMAIN policy<{'amd64': 'm'}> +CONFIG_PCMCIA_QLOGIC policy<{'amd64': 'm'}> +CONFIG_PCMCIA_SYM53C500 policy<{'amd64': 'm'}> + +# Menu: Device Drivers >> SCSI device support >> SCSI device support >> SCSI low-level drivers >> SYM53C8XX Version 2 SCSI support +CONFIG_SCSI_SYM53C8XX_2 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'n'}> +CONFIG_SCSI_SYM53C8XX_DMA_ADDRESSING_MODE policy<{'amd64': '1', 'arm64': '1', 'armhf': '1', 'ppc64el': '1'}> +CONFIG_SCSI_SYM53C8XX_DEFAULT_TAGS policy<{'amd64': '16', 'arm64': '16', 'armhf': '16', 'ppc64el': '16'}> +CONFIG_SCSI_SYM53C8XX_MAX_TAGS policy<{'amd64': '64', 'arm64': '64', 'armhf': '64', 'ppc64el': '64'}> +CONFIG_SCSI_SYM53C8XX_MMIO policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> + +# Menu: Device Drivers >> SCSI device support >> SCSI device support >> SCSI low-level drivers >> Universal Flash Storage Controller Driver Core +CONFIG_SCSI_UFSHCD policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'n'}> +CONFIG_SCSI_UFSHCD_PCI policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SCSI_UFS_DWC_TC_PCI policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SCSI_UFS_BSG policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> + +# Menu: Device Drivers >> SCSI device support >> SCSI device support >> SCSI low-level drivers >> Universal Flash Storage Controller Driver Core >> Platform bus based UFS Controller support +CONFIG_SCSI_UFSHCD_PLATFORM policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SCSI_UFS_CDNS_PLATFORM policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SCSI_UFS_DWC_TC_PLATFORM policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SCSI_UFS_QCOM policy<{'arm64': 'm', 'armhf': 'n'}> +CONFIG_SCSI_UFS_MEDIATEK policy<{'arm64': 'm', 'armhf': 'm'}> +CONFIG_SCSI_UFS_HISI policy<{'arm64': 'm', 'armhf': 'm'}> + +# Menu: Device Drivers >> SCSI device support >> SCSI device support >> SCSI low-level drivers >> Zalon SCSI support + +# Menu: Device Drivers >> SLIMbus support +CONFIG_SLIMBUS policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_SLIM_QCOM_CTRL policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_SLIM_QCOM_NGD_CTRL policy<{'arm64': 'm', 'armhf': 'm'}> + +# Menu: Device Drivers >> SOC (System On Chip) specific Drivers +CONFIG_OWL_PM_DOMAINS policy<{'arm64': 'y', 'armhf': 'y'}> +CONFIG_ROCKCHIP_PM_DOMAINS policy<{'arm64': 'y', 'armhf': 'y'}> +CONFIG_ARCH_TEGRA_2x_SOC policy<{'armhf-generic': 'y'}> +CONFIG_ARCH_TEGRA_3x_SOC policy<{'armhf-generic': 'y'}> +CONFIG_ARCH_TEGRA_114_SOC policy<{'armhf-generic': 'y'}> +CONFIG_ARCH_TEGRA_124_SOC policy<{'armhf-generic': 'y'}> +CONFIG_SOC_TEGRA20_VOLTAGE_COUPLER policy<{'armhf-generic': 'y'}> +CONFIG_ARCH_K3_AM6_SOC policy<{'arm64': 'y'}> +CONFIG_SOC_TEGRA30_VOLTAGE_COUPLER policy<{'armhf-generic': 'y'}> +CONFIG_ARCH_K3_J721E_SOC policy<{'arm64': 'y'}> + +# Menu: Device Drivers >> SOC (System On Chip) specific Drivers >> Amlogic SoC drivers +CONFIG_MESON_CANVAS policy<{'arm64': 'm', 'armhf': 'm'}> +CONFIG_MESON_CLK_MEASURE policy<{'arm64': 'y', 'armhf': 'y'}> +CONFIG_MESON_GX_SOCINFO policy<{'arm64': 'y', 'armhf': 'y'}> +CONFIG_MESON_GX_PM_DOMAINS policy<{'arm64': 'y', 'armhf': 'y'}> +CONFIG_MESON_EE_PM_DOMAINS policy<{'arm64': 'y', 'armhf': 'y'}> +CONFIG_MESON_SECURE_PM_DOMAINS policy<{'arm64-generic': 'y'}> +CONFIG_MESON_MX_SOCINFO policy<{'arm64': 'y', 'armhf': 'y'}> + +# Menu: Device Drivers >> SOC (System On Chip) specific Drivers >> Aspeed SoC drivers +CONFIG_ASPEED_LPC_CTRL policy<{'armhf': 'm'}> +CONFIG_ASPEED_LPC_SNOOP policy<{'armhf': 'm'}> +CONFIG_ASPEED_P2A_CTRL policy<{'armhf': 'm'}> + +# Menu: Device Drivers >> SOC (System On Chip) specific Drivers >> Broadcom SoC drivers +CONFIG_BCM2835_POWER policy<{'arm64': 'y'}> +CONFIG_RASPBERRYPI_POWER policy<{'arm64': 'y'}> +CONFIG_SOC_BRCMSTB policy<{'arm64': 'y', 'armhf': 'n'}> +CONFIG_BRCMSTB_PM policy<{'arm64': 'y'}> + +# Menu: Device Drivers >> SOC (System On Chip) specific Drivers >> IXP4xx SoC drivers + +# Menu: Device Drivers >> SOC (System On Chip) specific Drivers >> MediaTek SoC drivers +CONFIG_MTK_CMDQ policy<{'arm64': 'm', 'armhf': 'm'}> +CONFIG_MTK_INFRACFG policy<{'arm64': 'y', 'armhf': 'y'}> +CONFIG_MTK_PMIC_WRAP policy<{'arm64': 'm', 'armhf': 'm'}> +CONFIG_MTK_SCPSYS policy<{'arm64': 'y', 'armhf': 'y'}> +CONFIG_MTK_MMSYS policy<{'arm64': 'y', 'armhf': 'y'}> + +# Menu: Device Drivers >> SOC (System On Chip) specific Drivers >> NXP/Freescale QorIQ SoC drivers +CONFIG_QUICC_ENGINE policy<{'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_FSL_MC_DPIO policy<{'arm64': 'm'}> +CONFIG_DPAA2_CONSOLE policy<{'arm64': 'm'}> +CONFIG_FSL_RCPM policy<{'arm64': 'y', 'armhf': 'y'}> + +# Menu: Device Drivers >> SOC (System On Chip) specific Drivers >> NXP/Freescale QorIQ SoC drivers >> QorIQ DPAA1 framework support +CONFIG_FSL_DPAA policy<{'arm64': 'y'}> +CONFIG_FSL_DPAA_CHECKING policy<{'arm64': 'y'}> +CONFIG_FSL_BMAN_TEST policy<{'arm64': 'm'}> +CONFIG_FSL_BMAN_TEST_API policy<{'arm64': 'n'}> +CONFIG_FSL_QMAN_TEST policy<{'arm64': 'n'}> + +# Menu: Device Drivers >> SOC (System On Chip) specific Drivers >> Qualcomm SoC drivers +CONFIG_QCOM_AOSS_QMP policy<{'arm64': 'm', 'armhf': 'm'}> +CONFIG_QCOM_COMMAND_DB policy<{'arm64': 'y', 'armhf': 'y'}> +CONFIG_QCOM_GENI_SE policy<{'arm64': 'm', 'armhf': 'm'}> +CONFIG_QCOM_GSBI policy<{'arm64': 'm', 'armhf': 'm'}> +CONFIG_QCOM_LLCC policy<{'arm64': 'm', 'armhf': 'm'}> +CONFIG_QCOM_OCMEM policy<{'arm64': 'm', 'armhf': 'm'}> +CONFIG_QCOM_RMTFS_MEM policy<{'arm64': 'm', 'armhf': 'm'}> +CONFIG_QCOM_RPMH policy<{'arm64': 'y'}> +CONFIG_QCOM_RPMHPD policy<{'arm64': 'y'}> +CONFIG_QCOM_RPMPD policy<{'arm64': 'm', 'armhf': 'm'}> +CONFIG_QCOM_SMD_RPM policy<{'arm64': 'm', 'armhf': 'm'}> +CONFIG_QCOM_WCNSS_CTRL policy<{'arm64': 'm', 'armhf': 'm'}> +CONFIG_QCOM_APR policy<{'arm64': 'm', 'armhf': 'm'}> + +# Menu: Device Drivers >> SOC (System On Chip) specific Drivers >> Qualcomm SoC drivers >> Qualcomm Shared Memory Manager (SMEM) +CONFIG_QCOM_SMEM policy<{'arm64': 'm', 'armhf': 'm'}> +CONFIG_QCOM_SMP2P policy<{'arm64': 'm', 'armhf': 'm'}> +CONFIG_QCOM_SMSM policy<{'arm64': 'm', 'armhf': 'm'}> +CONFIG_QCOM_SOCINFO policy<{'arm64': 'm', 'armhf': 'm'}> + +# Menu: Device Drivers >> SOC (System On Chip) specific Drivers >> Renesas SoC driver support +CONFIG_SOC_RENESAS policy<{'arm64': 'y', 'armhf': 'y'}> +CONFIG_ARCH_EMEV2 policy<{'armhf': 'y'}> +CONFIG_ARCH_R7S72100 policy<{'armhf': 'y'}> +CONFIG_ARCH_R7S9210 policy<{'armhf': 'y'}> +CONFIG_ARCH_R8A73A4 policy<{'armhf': 'n'}> +CONFIG_ARCH_R8A7740 policy<{'armhf': 'y'}> +CONFIG_ARCH_R8A7742 policy<{'armhf': 'y'}> +CONFIG_ARCH_R8A7743 policy<{'armhf': 'y'}> +CONFIG_ARCH_R8A7744 policy<{'armhf': 'y'}> +CONFIG_ARCH_R8A7745 policy<{'armhf': 'y'}> +CONFIG_ARCH_R8A77470 policy<{'armhf': 'y'}> +CONFIG_ARCH_R8A7778 policy<{'armhf': 'y'}> +CONFIG_ARCH_R8A7779 policy<{'armhf': 'y'}> +CONFIG_ARCH_R8A7790 policy<{'armhf': 'y'}> +CONFIG_ARCH_R8A7791 policy<{'armhf': 'y'}> +CONFIG_ARCH_R8A7792 policy<{'armhf': 'y'}> +CONFIG_ARCH_R8A7793 policy<{'armhf': 'y'}> +CONFIG_ARCH_R8A7794 policy<{'armhf': 'y'}> +CONFIG_ARCH_R9A06G032 policy<{'armhf': 'y'}> +CONFIG_ARCH_SH73A0 policy<{'armhf': 'y'}> +CONFIG_ARCH_R8A774A1 policy<{'arm64': 'y'}> +CONFIG_ARCH_R8A774B1 policy<{'arm64': 'y'}> +CONFIG_ARCH_R8A774C0 policy<{'arm64': 'y'}> +CONFIG_ARCH_R8A77950 policy<{'arm64': 'y'}> +CONFIG_ARCH_R8A77951 policy<{'arm64': 'y'}> +CONFIG_ARCH_R8A77960 policy<{'arm64': 'y'}> +CONFIG_ARCH_R8A77961 policy<{'arm64': 'y'}> +CONFIG_ARCH_R8A77965 policy<{'arm64': 'y'}> +CONFIG_ARCH_R8A77970 policy<{'arm64': 'y'}> +CONFIG_ARCH_R8A77980 policy<{'arm64': 'y'}> +CONFIG_ARCH_R8A77990 policy<{'arm64': 'y'}> +CONFIG_ARCH_R8A77995 policy<{'arm64': 'y'}> +CONFIG_SYSC_R8A7742 policy<{'armhf': 'y'}> +CONFIG_SYSC_R8A7743 policy<{'armhf': 'y'}> +CONFIG_SYSC_R8A7745 policy<{'armhf': 'y'}> +CONFIG_SYSC_R8A77470 policy<{'armhf': 'y'}> +CONFIG_SYSC_R8A774A1 policy<{'arm64': 'y'}> +CONFIG_SYSC_R8A774B1 policy<{'arm64': 'y'}> +CONFIG_SYSC_R8A774C0 policy<{'arm64': 'y'}> +CONFIG_SYSC_R8A7779 policy<{'armhf': 'y'}> +CONFIG_SYSC_R8A7790 policy<{'armhf': 'y'}> +CONFIG_SYSC_R8A7791 policy<{'armhf': 'y'}> +CONFIG_SYSC_R8A7792 policy<{'armhf': 'y'}> +CONFIG_SYSC_R8A7794 policy<{'armhf': 'y'}> +CONFIG_SYSC_R8A7795 policy<{'arm64': 'y'}> +CONFIG_SYSC_R8A77960 policy<{'arm64': 'y'}> +CONFIG_SYSC_R8A77961 policy<{'arm64': 'y'}> +CONFIG_SYSC_R8A77965 policy<{'arm64': 'y'}> +CONFIG_SYSC_R8A77970 policy<{'arm64': 'y'}> +CONFIG_SYSC_R8A77980 policy<{'arm64': 'y'}> +CONFIG_SYSC_R8A77990 policy<{'arm64': 'y'}> +CONFIG_SYSC_R8A77995 policy<{'arm64': 'y'}> +CONFIG_RST_RCAR policy<{'arm64': 'y', 'armhf': 'y'}> +CONFIG_SYSC_RCAR policy<{'arm64': 'y', 'armhf': 'y'}> +CONFIG_SYSC_RMOBILE policy<{'armhf': 'y'}> +# +CONFIG_ARCH_R8A73A4 flag + +# Menu: Device Drivers >> SOC (System On Chip) specific Drivers >> Samsung SoC driver support +CONFIG_SOC_SAMSUNG policy<{'armhf': 'y'}> +CONFIG_EXYNOS_ASV policy<{'armhf': 'y'}> +CONFIG_EXYNOS_ASV_ARM policy<{'armhf': 'y'}> +CONFIG_EXYNOS_CHIPID policy<{'armhf': 'y'}> +CONFIG_EXYNOS_PMU policy<{'armhf': 'y'}> +CONFIG_EXYNOS_PMU_ARM_DRIVERS policy<{'armhf': 'y'}> +CONFIG_EXYNOS_PM_DOMAINS policy<{'armhf': 'y'}> + +# Menu: Device Drivers >> SOC (System On Chip) specific Drivers >> TI SOC drivers support +CONFIG_SOC_TI policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'n'}> +CONFIG_WKUP_M3_IPC policy<{'armhf-generic': 'n'}> +CONFIG_TI_SCI_PM_DOMAINS policy<{'arm64': 'm'}> +CONFIG_TI_K3_RINGACC policy<{'arm64': 'y'}> +# +CONFIG_SOC_TI flag + +# Menu: Device Drivers >> SOC (System On Chip) specific Drivers >> Xilinx SoC drivers +CONFIG_XILINX_VCU policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_ZYNQMP_POWER policy<{'arm64': 'y'}> +CONFIG_ZYNQMP_PM_DOMAINS policy<{'arm64': 'y'}> + +# Menu: Device Drivers >> SOC (System On Chip) specific Drivers >> ZTE SoC driver support + +# Menu: Device Drivers >> SOC (System On Chip) specific Drivers >> i.MX SoC drivers +CONFIG_IMX_GPCV2_PM_DOMAINS policy<{'arm64': 'y', 'armhf-generic': 'y'}> +CONFIG_IMX_SCU_SOC policy<{'arm64': 'y', 'armhf-generic': 'y'}> +CONFIG_SOC_IMX8M policy<{'arm64': 'y', 'armhf-generic': 'n'}> + +# Menu: Device Drivers >> SPI support +CONFIG_SPI policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'n'}> +CONFIG_SPI_DEBUG policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n'}> +CONFIG_SPI_MEM policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_SPI_ALTERA policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SPI_ARMADA_3700 policy<{'arm64': 'm', 'armhf': 'm'}> +CONFIG_SPI_AXI_SPI_ENGINE policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SPI_BCM2835 policy<{'arm64': 'm'}> +CONFIG_SPI_BCM2835AUX policy<{'arm64': 'm'}> +CONFIG_SPI_BCM_QSPI policy<{'arm64': 'm'}> +CONFIG_SPI_BITBANG policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SPI_BUTTERFLY policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SPI_CADENCE policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SPI_DLN2 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SPI_FSI policy<{'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SPI_FSL_LPSPI policy<{'arm64': 'm', 'armhf-generic': 'm'}> +CONFIG_SPI_FSL_QUADSPI policy<{'arm64': 'm', 'armhf-generic': 'm'}> +CONFIG_SPI_HISI_SFC_V3XX policy<{'arm64': 'm'}> +CONFIG_SPI_NXP_FLEXSPI policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SPI_GPIO policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SPI_IMX policy<{'arm64': 'm', 'armhf-generic': 'm'}> +CONFIG_SPI_LM70_LLP policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SPI_FSL_SPI policy<{'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_SPI_FSL_DSPI policy<{'arm64': 'm', 'armhf-generic': 'm'}> +CONFIG_SPI_MESON_SPICC policy<{'arm64': 'm', 'armhf': 'm'}> +CONFIG_SPI_MESON_SPIFC policy<{'arm64': 'm', 'armhf': 'm'}> +CONFIG_SPI_MT65XX policy<{'arm64': 'm', 'armhf': 'm'}> +CONFIG_SPI_MTK_NOR policy<{'arm64': 'm', 'armhf': 'm'}> +CONFIG_SPI_NPCM_FIU policy<{'armhf': 'm'}> +CONFIG_SPI_NPCM_PSPI policy<{'armhf': 'm'}> +CONFIG_SPI_OC_TINY policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SPI_OMAP24XX policy<{'arm64': 'y', 'armhf': 'y'}> +CONFIG_SPI_TI_QSPI policy<{'armhf': 'm'}> +CONFIG_SPI_ORION policy<{'arm64': 'm', 'armhf': 'm'}> +CONFIG_SPI_PL022 policy<{'arm64': 'm', 'armhf': 'm'}> +CONFIG_SPI_PXA2XX policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SPI_ROCKCHIP policy<{'amd64': 'n', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'n'}> +CONFIG_SPI_RSPI policy<{'arm64': 'm', 'armhf': 'm'}> +CONFIG_SPI_QCOM_QSPI policy<{'arm64': 'm', 'armhf': 'm'}> +CONFIG_SPI_QUP policy<{'arm64': 'm', 'armhf': 'm'}> +CONFIG_SPI_QCOM_GENI policy<{'arm64': 'm', 'armhf': 'm'}> +CONFIG_SPI_S3C64XX policy<{'armhf': 'm'}> +CONFIG_SPI_SC18IS602 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SPI_SH_MSIOF policy<{'arm64': 'm', 'armhf': 'm'}> +CONFIG_SPI_SH_HSPI policy<{'arm64': 'm', 'armhf': 'm'}> +CONFIG_SPI_SIFIVE policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SPI_SLAVE_MT27XX policy<{'arm64': 'm', 'armhf': 'm'}> +CONFIG_SPI_SPRD policy<{'arm64': 'm'}> +CONFIG_SPI_SPRD_ADI policy<{'arm64': 'm'}> +CONFIG_SPI_SUN4I policy<{'arm64': 'n'}> +CONFIG_SPI_SUN6I policy<{'arm64': 'm'}> +CONFIG_SPI_SYNQUACER policy<{'arm64': 'm'}> +CONFIG_SPI_MXIC policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SPI_TEGRA114 policy<{'armhf-generic': 'm'}> +CONFIG_SPI_TEGRA20_SFLASH policy<{'armhf-generic': 'm'}> +CONFIG_SPI_TEGRA20_SLINK policy<{'armhf-generic': 'm'}> +CONFIG_SPI_THUNDERX policy<{'arm64': 'm'}> +CONFIG_SPI_UNIPHIER policy<{'armhf': 'm'}> +CONFIG_SPI_XCOMM policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SPI_XILINX policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n'}> +CONFIG_SPI_XLP policy<{'arm64': 'm'}> +CONFIG_SPI_ZYNQMP_GQSPI policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SPI_AMD policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SPI_MUX policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SPI_SPIDEV policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SPI_LOOPBACK_TEST policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SPI_TLE62X0 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SPI_SLAVE policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_SPI_SLAVE_TIME policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SPI_SLAVE_SYSTEM_CONTROL policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> + +# Menu: Device Drivers >> SPI support >> DesignWare SPI controller core support +CONFIG_SPI_DESIGNWARE policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SPI_DW_DMA policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_SPI_DW_PCI policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SPI_DW_MMIO policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> + +# Menu: Device Drivers >> SPMI support +CONFIG_SPMI policy<{'amd64': 'm', 'arm64-generic': 'm', 'arm64-generic-64k': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'n'}> +CONFIG_SPMI_MSM_PMIC_ARB policy<{'arm64-generic': 'm', 'arm64-generic-64k': 'm', 'armhf': 'm'}> + +# Menu: Device Drivers >> Serial ATA and Parallel ATA drivers (libata) +CONFIG_ATA policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'n'}> +CONFIG_ATA_VERBOSE_ERROR policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_ATA_FORCE policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_ATA_ACPI policy<{'amd64': 'y', 'arm64': 'y'}> +CONFIG_SATA_ZPODD policy<{'amd64': 'y', 'arm64': 'y'}> +CONFIG_SATA_PMP policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_SATA_AHCI policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SATA_MOBILE_LPM_POLICY policy<{'amd64': '3', 'arm64': '3', 'armhf': '3', 'ppc64el': '3'}> +CONFIG_SATA_AHCI_PLATFORM policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'y', 'ppc64el': 'm'}> +CONFIG_AHCI_BRCM policy<{'arm64': 'm'}> +CONFIG_AHCI_DM816 policy<{'armhf': 'm'}> +CONFIG_AHCI_IMX policy<{'arm64': 'y', 'armhf-generic': 'y'}> +CONFIG_AHCI_CEVA policy<{'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_AHCI_MTK policy<{'arm64': 'm', 'armhf': 'm'}> +CONFIG_AHCI_MVEBU policy<{'arm64': 'm', 'armhf': 'm'}> +CONFIG_AHCI_SUNXI policy<{'arm64': 'n'}> +CONFIG_AHCI_TEGRA policy<{'armhf-generic': 'm'}> +CONFIG_AHCI_XGENE policy<{'arm64': 'm'}> +CONFIG_AHCI_QORIQ policy<{'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SATA_AHCI_SEATTLE policy<{'arm64': 'm'}> +CONFIG_SATA_INIC162X policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SATA_ACARD_AHCI policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SATA_SIL24 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +# +CONFIG_SATA_AHCI_PLATFORM note + +# Menu: Device Drivers >> Serial ATA and Parallel ATA drivers (libata) >> ATA SFF support (for legacy IDE and PATA) +CONFIG_ATA_SFF policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_PDC_ADMA policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SATA_QSTOR policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SATA_SX4 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_PATA_CMD640_PCI policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_PATA_MPIIX policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_PATA_NS87410 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_PATA_OPTI policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_PATA_PCMCIA policy<{'amd64': 'm'}> +CONFIG_PATA_PLATFORM policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_PATA_OF_PLATFORM policy<{'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_PATA_RZ1000 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_PATA_LEGACY policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> + +# Menu: Device Drivers >> Serial ATA and Parallel ATA drivers (libata) >> ATA SFF support (for legacy IDE and PATA) >> ATA BMDMA support +CONFIG_ATA_BMDMA policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_ATA_PIIX policy<{'amd64': 'y', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SATA_DWC policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SATA_DWC_OLD_DMA policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_SATA_DWC_DEBUG policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n'}> +CONFIG_SATA_HIGHBANK policy<{'armhf': 'y'}> +CONFIG_SATA_MV policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SATA_NV policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SATA_PROMISE policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SATA_RCAR policy<{'arm64': 'm', 'armhf': 'm'}> +CONFIG_SATA_SIL policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SATA_SIS policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SATA_SVW policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SATA_ULI policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SATA_VIA policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SATA_VITESSE policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_PATA_ALI policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_PATA_AMD policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_PATA_ARTOP policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_PATA_ATIIXP policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_PATA_ATP867X policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_PATA_CMD64X policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_PATA_CYPRESS policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_PATA_EFAR policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_PATA_HPT366 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_PATA_HPT37X policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_PATA_HPT3X2N policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_PATA_HPT3X3 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_PATA_HPT3X3_DMA policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n'}> +CONFIG_PATA_IMX policy<{'arm64': 'm', 'armhf-generic': 'm'}> +CONFIG_PATA_IT8213 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_PATA_IT821X policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_PATA_JMICRON policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_PATA_MARVELL policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_PATA_NETCELL policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_PATA_NINJA32 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_PATA_NS87415 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_PATA_OLDPIIX policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_PATA_OPTIDMA policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_PATA_PDC2027X policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_PATA_PDC_OLD policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_PATA_RADISYS policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_PATA_RDC policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_PATA_SCH policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_PATA_SERVERWORKS policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_PATA_SIL680 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_PATA_SIS policy<{'amd64': 'y', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_PATA_TOSHIBA policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_PATA_TRIFLEX policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_PATA_VIA policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_PATA_WINBOND policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_PATA_ACPI policy<{'amd64': 'm', 'arm64': 'm'}> +CONFIG_ATA_GENERIC policy<{'amd64': 'y', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +# +CONFIG_SATA_HIGHBANK mark note +CONFIG_PATA_HPT3X3_DMA note +CONFIG_ATA_PIIX mark note + +# Menu: Device Drivers >> Sonics Silicon Backplane support +CONFIG_SSB_PCIHOST policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_SSB_PCMCIAHOST policy<{'amd64': 'n'}> +CONFIG_SSB_SDIOHOST policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_SSB_DRIVER_PCICORE policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_SSB policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'n'}> +CONFIG_SSB_DRIVER_GPIO policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> + +# Menu: Device Drivers >> Sony MemoryStick card support +CONFIG_MEMSTICK policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'n'}> +CONFIG_MEMSTICK_DEBUG policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n'}> +CONFIG_MEMSTICK_UNSAFE_RESUME policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n'}> +CONFIG_MSPRO_BLOCK policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_MS_BLOCK policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_MEMSTICK_TIFM_MS policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_MEMSTICK_JMICRON_38X policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_MEMSTICK_R592 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_MEMSTICK_REALTEK_PCI policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_MEMSTICK_REALTEK_USB policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> + +# Menu: Device Drivers >> Sound card support +CONFIG_SOUND policy<{'amd64': 'm', 'arm64-generic': 'm', 'arm64-generic-64k': 'm', 'armhf': 'y', 'ppc64el': 'm', 's390x': 'n'}> +CONFIG_SOUND_OSS_CORE_PRECLAIM policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n'}> +# +CONFIG_SOUND note +CONFIG_SOUND_OSS_CORE_PRECLAIM mark note + +# Menu: Device Drivers >> Sound card support >> Advanced Linux Sound Architecture +CONFIG_SND policy<{'amd64': 'm', 'arm64-generic': 'm', 'arm64-generic-64k': 'm', 'armhf': 'y', 'ppc64el': 'm'}> +CONFIG_SND_OSSEMUL policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_SND_MIXER_OSS policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SND_PCM_OSS policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n'}> +CONFIG_SND_PCM_TIMER policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_SND_HRTIMER policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SND_DYNAMIC_MINORS policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_SND_MAX_CARDS policy<{'amd64': '32', 'arm64': '32', 'armhf': '32', 'ppc64el': '32'}> +CONFIG_SND_SUPPORT_OLD_API policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_SND_PROC_FS policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_SND_VERBOSE_PROCFS policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_SND_VERBOSE_PRINTK policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n'}> +CONFIG_SND_HDA_PREALLOC_SIZE policy<{'amd64': '0', 'arm64': '64', 'armhf': '64', 'ppc64el': '64'}> +CONFIG_SND_XEN_FRONTEND policy<{'amd64': 'm', 'arm64': 'm'}> +# +CONFIG_SND note +CONFIG_SND_PCM_OSS note + +# Menu: Device Drivers >> Sound card support >> Advanced Linux Sound Architecture >> ALSA for SoC audio support +CONFIG_SND_SOC policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'y', 'ppc64el': 'm'}> +CONFIG_SND_SOC_AMD_ACP policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SND_SOC_AMD_CZ_DA7219MX98357_MACH policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SND_SOC_AMD_CZ_RT5645_MACH policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SND_SOC_AMD_ACP3x policy<{'amd64': 'm'}> +CONFIG_SND_SOC_AMD_RV_RT5682_MACH policy<{'amd64': 'm'}> +CONFIG_SND_SOC_AMD_RENOIR policy<{'amd64': 'm'}> +CONFIG_SND_SOC_AMD_RENOIR_MACH policy<{'amd64': 'm'}> +CONFIG_SND_BCM2835_SOC_I2S policy<{'arm64': 'm'}> +CONFIG_SND_BCM63XX_I2S_WHISTLER policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SND_DESIGNWARE_I2S policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SND_DESIGNWARE_PCM policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_SND_I2S_HI6210_I2S policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SND_KIRKWOOD_SOC policy<{'arm64': 'm', 'armhf': 'm'}> +CONFIG_SND_KIRKWOOD_SOC_ARMADA370_DB policy<{'arm64': 'm', 'armhf': 'm'}> +CONFIG_SND_SOC_MT2701 policy<{'arm64': 'n', 'armhf': 'n'}> +CONFIG_SND_SOC_MT6797 policy<{'arm64': 'm', 'armhf': 'm'}> +CONFIG_SND_SOC_MT6797_MT6351 policy<{'arm64': 'm', 'armhf': 'm'}> +CONFIG_SND_SOC_MT8183 policy<{'arm64': 'm', 'armhf': 'm'}> +CONFIG_SND_SOC_MT8183_MT6358_TS3A227E_MAX98357A policy<{'arm64': 'm', 'armhf': 'm'}> +CONFIG_SND_SOC_MT8183_DA7219_MAX98357A policy<{'arm64': 'm', 'armhf': 'm'}> +CONFIG_SND_SOC_MTK_BTCVSD policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SND_SOC_QCOM policy<{'arm64': 'm', 'armhf': 'm'}> +CONFIG_SND_SOC_STORM policy<{'arm64': 'm', 'armhf': 'm'}> +CONFIG_SND_SOC_APQ8016_SBC policy<{'arm64': 'm', 'armhf': 'm'}> +CONFIG_SND_SOC_QDSP6 policy<{'arm64': 'm', 'armhf': 'm'}> +CONFIG_SND_SOC_MSM8996 policy<{'arm64': 'm', 'armhf': 'm'}> +CONFIG_SND_SOC_SDM845 policy<{'arm64': 'm', 'armhf': 'm'}> +CONFIG_SND_SOC_SPRD policy<{'arm64': 'm'}> +CONFIG_SND_SOC_SPRD_MCDT policy<{'arm64': 'm'}> +CONFIG_SND_SOC_XILINX_I2S policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SND_SOC_XILINX_AUDIO_FORMATTER policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SND_SOC_XILINX_SPDIF policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SND_SOC_XTFPGA_I2S policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_ZX_TDM policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SND_SIMPLE_CARD policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SND_AUDIO_GRAPH_CARD policy<{'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +# +CONFIG_SND_SOC note +CONFIG_SND_SOC_AMD_RENOIR mark note +CONFIG_SND_SOC_AMD_RENOIR_MACH mark note + +# Menu: Device Drivers >> Sound card support >> Advanced Linux Sound Architecture >> ALSA for SoC audio support >> ASoC support for Amlogic platforms +CONFIG_SND_MESON_AIU policy<{'arm64': 'm', 'armhf': 'm'}> +CONFIG_SND_MESON_AXG_FRDDR policy<{'arm64': 'm', 'armhf': 'm'}> +CONFIG_SND_MESON_AXG_TODDR policy<{'arm64': 'm', 'armhf': 'm'}> +CONFIG_SND_MESON_AXG_TDMIN policy<{'arm64': 'm', 'armhf': 'm'}> +CONFIG_SND_MESON_AXG_TDMOUT policy<{'arm64': 'm', 'armhf': 'm'}> +CONFIG_SND_MESON_AXG_SOUND_CARD policy<{'arm64': 'm', 'armhf': 'm'}> +CONFIG_SND_MESON_AXG_SPDIFOUT policy<{'arm64': 'm', 'armhf': 'm'}> +CONFIG_SND_MESON_AXG_SPDIFIN policy<{'arm64': 'm', 'armhf': 'm'}> +CONFIG_SND_MESON_AXG_PDM policy<{'arm64': 'm', 'armhf': 'm'}> +CONFIG_SND_MESON_GX_SOUND_CARD policy<{'arm64': 'm', 'armhf': 'm'}> +CONFIG_SND_MESON_G12A_TOACODEC policy<{'arm64': 'm', 'armhf': 'm'}> +CONFIG_SND_MESON_G12A_TOHDMITX policy<{'arm64': 'm', 'armhf': 'm'}> +CONFIG_SND_SOC_MESON_T9015 policy<{'arm64': 'm', 'armhf': 'm'}> + +# Menu: Device Drivers >> Sound card support >> Advanced Linux Sound Architecture >> ALSA for SoC audio support >> ASoC support for Mediatek MT8173 chip +CONFIG_SND_SOC_MT8173 policy<{'arm64': 'n', 'armhf': 'n'}> + +# Menu: Device Drivers >> Sound card support >> Advanced Linux Sound Architecture >> ALSA for SoC audio support >> ASoC support for Rockchip +CONFIG_SND_SOC_ROCKCHIP policy<{'arm64': 'm', 'armhf': 'm'}> +CONFIG_SND_SOC_ROCKCHIP_I2S policy<{'arm64': 'm', 'armhf': 'm'}> +CONFIG_SND_SOC_ROCKCHIP_PDM policy<{'arm64': 'm', 'armhf': 'm'}> +CONFIG_SND_SOC_ROCKCHIP_SPDIF policy<{'arm64': 'm', 'armhf': 'm'}> +CONFIG_SND_SOC_ROCKCHIP_MAX98090 policy<{'arm64': 'm', 'armhf': 'm'}> +CONFIG_SND_SOC_ROCKCHIP_RT5645 policy<{'arm64': 'm', 'armhf': 'm'}> +CONFIG_SND_SOC_RK3288_HDMI_ANALOG policy<{'arm64': 'm', 'armhf': 'm'}> +CONFIG_SND_SOC_RK3399_GRU_SOUND policy<{'arm64': 'm', 'armhf': 'm'}> + +# Menu: Device Drivers >> Sound card support >> Advanced Linux Sound Architecture >> ALSA for SoC audio support >> ASoC support for Samsung +CONFIG_SND_SOC_SAMSUNG policy<{'armhf': 'm'}> +CONFIG_SND_SAMSUNG_PCM policy<{'armhf': 'm'}> +CONFIG_SND_SAMSUNG_SPDIF policy<{'armhf': 'm'}> +CONFIG_SND_SAMSUNG_I2S policy<{'armhf': 'm'}> +CONFIG_SND_SOC_SAMSUNG_SMDK_WM8994 policy<{'armhf': 'm'}> +CONFIG_SND_SOC_SAMSUNG_SMDK_SPDIF policy<{'armhf': 'm'}> +CONFIG_SND_SOC_SMDK_WM8994_PCM policy<{'armhf': 'm'}> +CONFIG_SND_SOC_SNOW policy<{'armhf': 'm'}> +CONFIG_SND_SOC_ODROID policy<{'armhf': 'm'}> +CONFIG_SND_SOC_ARNDALE policy<{'armhf': 'm'}> +CONFIG_SND_SOC_SAMSUNG_TM2_WM5110 policy<{'armhf': 'm'}> + +# Menu: Device Drivers >> Sound card support >> Advanced Linux Sound Architecture >> ALSA for SoC audio support >> ASoC support for UniPhier +CONFIG_SND_SOC_UNIPHIER policy<{'armhf': 'm'}> +CONFIG_SND_SOC_UNIPHIER_AIO policy<{'armhf': 'm'}> +CONFIG_SND_SOC_UNIPHIER_LD11 policy<{'armhf': 'm'}> +CONFIG_SND_SOC_UNIPHIER_PXS2 policy<{'armhf': 'm'}> +CONFIG_SND_SOC_UNIPHIER_EVEA_CODEC policy<{'armhf': 'm'}> + +# Menu: Device Drivers >> Sound card support >> Advanced Linux Sound Architecture >> ALSA for SoC audio support >> Allwinner SoC Audio support +CONFIG_SND_SUN4I_CODEC policy<{'arm64': 'n'}> +CONFIG_SND_SUN8I_CODEC policy<{'arm64': 'm'}> +CONFIG_SND_SUN8I_CODEC_ANALOG policy<{'arm64': 'm'}> +CONFIG_SND_SUN50I_CODEC_ANALOG policy<{'arm64': 'm'}> +CONFIG_SND_SUN4I_I2S policy<{'arm64': 'n'}> +CONFIG_SND_SUN4I_SPDIF policy<{'arm64': 'n'}> + +# Menu: Device Drivers >> Sound card support >> Advanced Linux Sound Architecture >> ALSA for SoC audio support >> Audio support for Imagination Technologies designs +CONFIG_SND_SOC_IMG policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_SND_SOC_IMG_I2S_IN policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SND_SOC_IMG_I2S_OUT policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SND_SOC_IMG_PARALLEL_OUT policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SND_SOC_IMG_SPDIF_IN policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SND_SOC_IMG_SPDIF_OUT policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SND_SOC_IMG_PISTACHIO_INTERNAL_DAC policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> + +# Menu: Device Drivers >> Sound card support >> Advanced Linux Sound Architecture >> ALSA for SoC audio support >> Audio support for Texas Instruments SoCs +CONFIG_SND_SOC_DAVINCI_MCASP policy<{'arm64': 'm', 'armhf': 'm'}> +CONFIG_SND_SOC_OMAP_DMIC policy<{'armhf-generic': 'm'}> +CONFIG_SND_SOC_OMAP_MCBSP policy<{'armhf': 'm'}> +CONFIG_SND_SOC_OMAP_MCPDM policy<{'armhf-generic': 'm'}> +CONFIG_SND_SOC_NOKIA_RX51 policy<{'armhf-generic': 'm'}> +CONFIG_SND_SOC_OMAP3_PANDORA policy<{'armhf-generic': 'm'}> +CONFIG_SND_SOC_OMAP3_TWL4030 policy<{'armhf-generic': 'm'}> +CONFIG_SND_SOC_OMAP_ABE_TWL6040 policy<{'armhf-generic': 'm'}> + +# Menu: Device Drivers >> Sound card support >> Advanced Linux Sound Architecture >> ALSA for SoC audio support >> Audio support for Texas Instruments SoCs >> DM365 codec select + +# Menu: Device Drivers >> Sound card support >> Advanced Linux Sound Architecture >> ALSA for SoC audio support >> CODEC drivers +CONFIG_SND_SOC_AC97_CODEC policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SND_SOC_ADAU1701 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SND_SOC_ADAU1761_I2C policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SND_SOC_ADAU1761_SPI policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SND_SOC_ADAU7002 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SND_SOC_ADAU7118_HW policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SND_SOC_ADAU7118_I2C policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SND_SOC_AK4104 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SND_SOC_AK4118 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SND_SOC_AK4458 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SND_SOC_AK4554 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SND_SOC_AK4613 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SND_SOC_AK4642 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SND_SOC_AK5386 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SND_SOC_AK5558 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SND_SOC_ALC5623 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SND_SOC_BD28623 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SND_SOC_BT_SCO policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SND_SOC_CPCAP policy<{'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SND_SOC_CROS_EC_CODEC policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm'}> +CONFIG_SND_SOC_CS35L32 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SND_SOC_CS35L33 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SND_SOC_CS35L34 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SND_SOC_CS35L35 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SND_SOC_CS35L36 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SND_SOC_CS42L42 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SND_SOC_CS42L51_I2C policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SND_SOC_CS42L52 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SND_SOC_CS42L56 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SND_SOC_CS42L73 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SND_SOC_CS4265 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SND_SOC_CS4270 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SND_SOC_CS4271_I2C policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SND_SOC_CS4271_SPI policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SND_SOC_CS42XX8_I2C policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SND_SOC_CS43130 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SND_SOC_CS4341 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SND_SOC_CS4349 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SND_SOC_CS53L30 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SND_SOC_CX2072X policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SND_SOC_DA7213 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SND_SOC_DMIC policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SND_SOC_ES7134 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SND_SOC_ES7241 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SND_SOC_ES8316 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SND_SOC_ES8328_I2C policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SND_SOC_ES8328_SPI policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SND_SOC_GTM601 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SND_SOC_INNO_RK3036 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SND_SOC_LOCHNAGAR_SC policy<{'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SND_SOC_MAX98088 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SND_SOC_MAX98357A policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SND_SOC_MAX98504 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SND_SOC_MAX9867 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SND_SOC_MAX98927 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SND_SOC_MAX98373 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SND_SOC_MAX98390 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SND_SOC_MAX9860 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SND_SOC_MSM8916_WCD_ANALOG policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SND_SOC_MSM8916_WCD_DIGITAL policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SND_SOC_PCM1681 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SND_SOC_PCM1789_I2C policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SND_SOC_PCM179X_I2C policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SND_SOC_PCM179X_SPI policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SND_SOC_PCM186X_I2C policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SND_SOC_PCM186X_SPI policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SND_SOC_PCM3060_I2C policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SND_SOC_PCM3060_SPI policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SND_SOC_PCM3168A_I2C policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SND_SOC_PCM3168A_SPI policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SND_SOC_PCM512x_I2C policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SND_SOC_PCM512x_SPI policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SND_SOC_RK3328 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SND_SOC_RT1308_SDW policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SND_SOC_RT5616 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SND_SOC_RT5631 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SND_SOC_RT5682_SDW policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SND_SOC_RT700_SDW policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SND_SOC_RT711_SDW policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SND_SOC_RT715_SDW policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SND_SOC_SGTL5000 policy<{'amd64': 'm', 'arm64': 'm', 'armhf-generic': 'y', 'armhf-generic-lpae': 'm', 'ppc64el': 'm'}> +CONFIG_SND_SOC_SIMPLE_AMPLIFIER policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SND_SOC_SIRF_AUDIO_CODEC policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SND_SOC_SPDIF policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SND_SOC_SSM2305 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SND_SOC_SSM2602_SPI policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SND_SOC_SSM2602_I2C policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SND_SOC_SSM4567 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SND_SOC_STA32X policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SND_SOC_STA350 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SND_SOC_STI_SAS policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SND_SOC_TAS2552 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SND_SOC_TAS2562 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SND_SOC_TAS2770 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SND_SOC_TAS5086 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SND_SOC_TAS571X policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SND_SOC_TAS5720 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SND_SOC_TAS6424 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SND_SOC_TDA7419 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SND_SOC_TFA9879 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SND_SOC_TLV320AIC23_I2C policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SND_SOC_TLV320AIC23_SPI policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SND_SOC_TLV320AIC31XX policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SND_SOC_TLV320AIC32X4_I2C policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SND_SOC_TLV320AIC32X4_SPI policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SND_SOC_TLV320AIC3X policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SND_SOC_TLV320ADCX140 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SND_SOC_TS3A227E policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SND_SOC_TSCS42XX policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SND_SOC_TSCS454 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SND_SOC_UDA1334 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SND_SOC_WCD9335 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SND_SOC_WCD934X policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SND_SOC_WM8510 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SND_SOC_WM8523 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SND_SOC_WM8524 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SND_SOC_WM8580 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SND_SOC_WM8711 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SND_SOC_WM8728 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SND_SOC_WM8731 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SND_SOC_WM8737 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SND_SOC_WM8741 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SND_SOC_WM8750 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SND_SOC_WM8753 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SND_SOC_WM8770 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SND_SOC_WM8776 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SND_SOC_WM8782 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SND_SOC_WM8804_I2C policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SND_SOC_WM8804_SPI policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SND_SOC_WM8903 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SND_SOC_WM8904 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SND_SOC_WM8960 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SND_SOC_WM8962 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SND_SOC_WM8974 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SND_SOC_WM8978 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SND_SOC_WM8985 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SND_SOC_WSA881X policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SND_SOC_ZL38060 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SND_SOC_ZX_AUD96P22 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SND_SOC_MAX9759 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SND_SOC_MT6351 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SND_SOC_MT6358 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SND_SOC_MT6660 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SND_SOC_NAU8540 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SND_SOC_NAU8810 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SND_SOC_NAU8822 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SND_SOC_NAU8824 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SND_SOC_TPA6130A2 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +# +CONFIG_SND_SOC_SGTL5000 flag + +# Menu: Device Drivers >> Sound card support >> Advanced Linux Sound Architecture >> ALSA for SoC audio support >> Intel ASoC SST drivers +CONFIG_SND_SOC_INTEL_SST_TOPLEVEL policy<{'amd64': 'y'}> +CONFIG_SND_SOC_INTEL_HASWELL policy<{'amd64': 'm'}> +CONFIG_SND_SST_ATOM_HIFI2_PLATFORM_PCI policy<{'amd64': 'm'}> +CONFIG_SND_SST_ATOM_HIFI2_PLATFORM_ACPI policy<{'amd64': 'm'}> +CONFIG_SND_SOC_INTEL_SKYLAKE policy<{'amd64': 'n'}> +CONFIG_SND_SOC_INTEL_SKL policy<{'amd64': 'm'}> +CONFIG_SND_SOC_INTEL_APL policy<{'amd64': 'm'}> +CONFIG_SND_SOC_INTEL_KBL policy<{'amd64': 'm'}> +CONFIG_SND_SOC_INTEL_GLK policy<{'amd64': 'm'}> +CONFIG_SND_SOC_INTEL_CNL policy<{'amd64': 'n'}> +CONFIG_SND_SOC_INTEL_CFL policy<{'amd64': 'n'}> +CONFIG_SND_SOC_INTEL_CML_H policy<{'amd64': 'n'}> +CONFIG_SND_SOC_INTEL_CML_LP policy<{'amd64': 'n'}> +CONFIG_SND_SOC_INTEL_SKYLAKE_HDAUDIO_CODEC policy<{'amd64': 'n'}> +# +CONFIG_SND_SOC_INTEL_SKYLAKE mark note +CONFIG_SND_SOC_INTEL_CNL mark note +CONFIG_SND_SOC_INTEL_CFL mark note +CONFIG_SND_SOC_INTEL_CML_H mark note +CONFIG_SND_SOC_INTEL_CML_LP mark note +CONFIG_SND_SOC_INTEL_SKYLAKE_HDAUDIO_CODEC mark note + +# Menu: Device Drivers >> Sound card support >> Advanced Linux Sound Architecture >> ALSA for SoC audio support >> Intel ASoC SST drivers >> Intel Machine drivers +CONFIG_SND_SOC_INTEL_MACH policy<{'amd64': 'y'}> +CONFIG_SND_SOC_INTEL_USER_FRIENDLY_LONG_NAMES policy<{'amd64': 'n'}> +CONFIG_SND_SOC_INTEL_HASWELL_MACH policy<{'amd64': 'm'}> +CONFIG_SND_SOC_INTEL_BDW_RT5650_MACH policy<{'amd64': 'm'}> +CONFIG_SND_SOC_INTEL_BDW_RT5677_MACH policy<{'amd64': 'm'}> +CONFIG_SND_SOC_INTEL_BROADWELL_MACH policy<{'amd64': 'm'}> +CONFIG_SND_SOC_INTEL_BYTCR_RT5640_MACH policy<{'amd64': 'm'}> +CONFIG_SND_SOC_INTEL_BYTCR_RT5651_MACH policy<{'amd64': 'm'}> +CONFIG_SND_SOC_INTEL_CHT_BSW_RT5672_MACH policy<{'amd64': 'm'}> +CONFIG_SND_SOC_INTEL_CHT_BSW_RT5645_MACH policy<{'amd64': 'm'}> +CONFIG_SND_SOC_INTEL_CHT_BSW_MAX98090_TI_MACH policy<{'amd64': 'm'}> +CONFIG_SND_SOC_INTEL_CHT_BSW_NAU8824_MACH policy<{'amd64': 'm'}> +CONFIG_SND_SOC_INTEL_BYT_CHT_CX2072X_MACH policy<{'amd64': 'm'}> +CONFIG_SND_SOC_INTEL_BYT_CHT_DA7213_MACH policy<{'amd64': 'm'}> +CONFIG_SND_SOC_INTEL_BYT_CHT_ES8316_MACH policy<{'amd64': 'm'}> +CONFIG_SND_SOC_INTEL_BYT_CHT_NOCODEC_MACH policy<{'amd64': 'n'}> +CONFIG_SND_SOC_INTEL_SKL_RT286_MACH policy<{'amd64': 'm'}> +CONFIG_SND_SOC_INTEL_SKL_NAU88L25_SSM4567_MACH policy<{'amd64': 'm'}> +CONFIG_SND_SOC_INTEL_SKL_NAU88L25_MAX98357A_MACH policy<{'amd64': 'm'}> +CONFIG_SND_SOC_INTEL_BXT_DA7219_MAX98357A_MACH policy<{'amd64': 'm'}> +CONFIG_SND_SOC_INTEL_BXT_RT298_MACH policy<{'amd64': 'm'}> +CONFIG_SND_SOC_INTEL_SOF_WM8804_MACH policy<{'amd64': 'm'}> +CONFIG_SND_SOC_INTEL_KBL_RT5663_MAX98927_MACH policy<{'amd64': 'm'}> +CONFIG_SND_SOC_INTEL_KBL_RT5663_RT5514_MAX98927_MACH policy<{'amd64': 'm'}> +CONFIG_SND_SOC_INTEL_KBL_DA7219_MAX98357A_MACH policy<{'amd64': 'm'}> +CONFIG_SND_SOC_INTEL_KBL_DA7219_MAX98927_MACH policy<{'amd64': 'm'}> +CONFIG_SND_SOC_INTEL_KBL_RT5660_MACH policy<{'amd64': 'm'}> +CONFIG_SND_SOC_INTEL_GLK_DA7219_MAX98357A_MACH policy<{'amd64': 'm'}> +CONFIG_SND_SOC_INTEL_GLK_RT5682_MAX98357A_MACH policy<{'amd64': 'm'}> +CONFIG_SND_SOC_INTEL_SKL_HDA_DSP_GENERIC_MACH policy<{'amd64': 'm'}> +CONFIG_SND_SOC_INTEL_SOF_RT5682_MACH policy<{'amd64': 'm'}> +CONFIG_SND_SOC_INTEL_SOF_PCM512x_MACH policy<{'amd64': 'm'}> +CONFIG_SND_SOC_INTEL_CML_LP_DA7219_MAX98357A_MACH policy<{'amd64': 'm'}> +CONFIG_SND_SOC_INTEL_SOF_CML_RT1011_RT5682_MACH policy<{'amd64': 'm'}> +CONFIG_SND_SOC_INTEL_SOF_DA7219_MAX98373_MACH policy<{'amd64': 'm'}> +CONFIG_SND_SOC_INTEL_EHL_RT5660_MACH policy<{'amd64': 'm'}> + +# Menu: Device Drivers >> Sound card support >> Advanced Linux Sound Architecture >> ALSA for SoC audio support >> STMicroelectronics STM32 SOC audio support + +# Menu: Device Drivers >> Sound card support >> Advanced Linux Sound Architecture >> ALSA for SoC audio support >> SoC Audio for Freescale CPUs +CONFIG_SND_SOC_FSL_ASRC policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SND_SOC_FSL_SAI policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SND_SOC_FSL_MQS policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SND_SOC_FSL_AUDMIX policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SND_SOC_FSL_SSI policy<{'amd64': 'm', 'arm64': 'm', 'armhf-generic': 'y', 'armhf-generic-lpae': 'm', 'ppc64el': 'm'}> +CONFIG_SND_SOC_FSL_SPDIF policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SND_SOC_FSL_ESAI policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SND_SOC_FSL_MICFIL policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SND_SOC_FSL_EASRC policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SND_SOC_IMX_AUDMUX policy<{'amd64': 'm', 'arm64': 'm', 'armhf-generic': 'y', 'armhf-generic-lpae': 'm', 'ppc64el': 'm'}> +# +CONFIG_SND_SOC_FSL_SSI flag +CONFIG_SND_SOC_IMX_AUDMUX flag + +# Menu: Device Drivers >> Sound card support >> Advanced Linux Sound Architecture >> ALSA for SoC audio support >> SoC Audio for Freescale CPUs >> SoC Audio for Freescale PowerPC CPUs + +# Menu: Device Drivers >> Sound card support >> Advanced Linux Sound Architecture >> ALSA for SoC audio support >> SoC Audio for Freescale CPUs >> SoC Audio for Freescale i.MX CPUs +CONFIG_SND_IMX_SOC policy<{'arm64': 'm', 'armhf-generic': 'y'}> +CONFIG_SND_SOC_EUKREA_TLV320 policy<{'armhf-generic': 'm'}> +CONFIG_SND_SOC_IMX_ES8328 policy<{'arm64': 'm', 'armhf-generic': 'm'}> +CONFIG_SND_SOC_IMX_SGTL5000 policy<{'arm64': 'm', 'armhf-generic': 'y'}> +CONFIG_SND_SOC_IMX_SPDIF policy<{'arm64': 'm', 'armhf-generic': 'm'}> +CONFIG_SND_SOC_IMX_MC13783 policy<{'armhf-generic': 'm'}> +CONFIG_SND_SOC_FSL_ASOC_CARD policy<{'arm64': 'm', 'armhf-generic': 'm'}> +CONFIG_SND_SOC_IMX_AUDMIX policy<{'arm64': 'm', 'armhf-generic': 'm'}> + +# Menu: Device Drivers >> Sound card support >> Advanced Linux Sound Architecture >> ALSA for SoC audio support >> SoC Audio for Freescale MXS CPUs + +# Menu: Device Drivers >> Sound card support >> Advanced Linux Sound Architecture >> ALSA for SoC audio support >> SoC Audio for the Atmel System-on-Chip +CONFIG_SND_ATMEL_SOC policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SND_SOC_MIKROE_PROTO policy<{'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> + +# Menu: Device Drivers >> Sound card support >> Advanced Linux Sound Architecture >> ALSA for SoC audio support >> SoC Audio for the Intel PXA2xx chip + +# Menu: Device Drivers >> Sound card support >> Advanced Linux Sound Architecture >> ALSA for SoC audio support >> SoC Audio for the Tegra System-on-Chip +CONFIG_SND_SOC_TEGRA policy<{'armhf-generic': 'm'}> +CONFIG_SND_SOC_TEGRA20_AC97 policy<{'armhf-generic': 'm'}> +CONFIG_SND_SOC_TEGRA20_DAS policy<{'armhf-generic': 'm'}> +CONFIG_SND_SOC_TEGRA20_I2S policy<{'armhf-generic': 'm'}> +CONFIG_SND_SOC_TEGRA20_SPDIF policy<{'armhf-generic': 'm'}> +CONFIG_SND_SOC_TEGRA30_AHUB policy<{'armhf-generic': 'm'}> +CONFIG_SND_SOC_TEGRA30_I2S policy<{'armhf-generic': 'm'}> +CONFIG_SND_SOC_TEGRA_RT5640 policy<{'armhf-generic': 'm'}> +CONFIG_SND_SOC_TEGRA_WM8753 policy<{'armhf-generic': 'm'}> +CONFIG_SND_SOC_TEGRA_WM8903 policy<{'armhf-generic': 'm'}> +CONFIG_SND_SOC_TEGRA_WM9712 policy<{'armhf-generic': 'm'}> +CONFIG_SND_SOC_TEGRA_TRIMSLICE policy<{'armhf-generic': 'm'}> +CONFIG_SND_SOC_TEGRA_ALC5632 policy<{'armhf-generic': 'm'}> +CONFIG_SND_SOC_TEGRA_MAX98090 policy<{'armhf-generic': 'm'}> +CONFIG_SND_SOC_TEGRA_RT5677 policy<{'armhf-generic': 'm'}> +CONFIG_SND_SOC_TEGRA_SGTL5000 policy<{'armhf-generic': 'm'}> + +# Menu: Device Drivers >> Sound card support >> Advanced Linux Sound Architecture >> ALSA for SoC audio support >> SoC Audio support for Renesas SoCs +CONFIG_SND_SOC_SH4_FSI policy<{'arm64': 'm', 'armhf': 'm'}> +CONFIG_SND_SOC_RCAR policy<{'arm64': 'm', 'armhf': 'm'}> + +# Menu: Device Drivers >> Sound card support >> Advanced Linux Sound Architecture >> ALSA for SoC audio support >> SoC Audio support for Ux500 platform + +# Menu: Device Drivers >> Sound card support >> Advanced Linux Sound Architecture >> ALSA for SoC audio support >> SoC Audio support for the Cirrus Logic EP93xx series + +# Menu: Device Drivers >> Sound card support >> Advanced Linux Sound Architecture >> ALSA for SoC audio support >> Sound Open Firmware Support +CONFIG_SND_SOC_SOF_TOPLEVEL policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_SND_SOC_SOF_PCI policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SND_SOC_SOF_ACPI policy<{'amd64': 'm', 'arm64': 'm'}> +CONFIG_SND_SOC_SOF_OF policy<{'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SND_SOC_SOF_DEBUG_PROBES policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n'}> +CONFIG_SND_SOC_SOF_IMX_TOPLEVEL policy<{'arm64': 'y'}> +CONFIG_SND_SOC_SOF_IMX8_SUPPORT policy<{'arm64': 'y'}> +CONFIG_SND_SOC_SOF_IMX8M_SUPPORT policy<{'arm64': 'y'}> + +# Menu: Device Drivers >> Sound card support >> Advanced Linux Sound Architecture >> ALSA for SoC audio support >> Sound Open Firmware Support >> SOF developer options support +CONFIG_SND_SOC_SOF_DEVELOPER_SUPPORT policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n'}> + +# Menu: Device Drivers >> Sound card support >> Advanced Linux Sound Architecture >> ALSA for SoC audio support >> Sound Open Firmware Support >> SOF developer options support >> SOF debugging features + +# Menu: Device Drivers >> Sound card support >> Advanced Linux Sound Architecture >> ALSA for SoC audio support >> Sound Open Firmware Support >> SOF support for Intel audio DSPs +CONFIG_SND_SOC_SOF_INTEL_TOPLEVEL policy<{'amd64': 'y'}> +CONFIG_SND_SOC_SOF_MERRIFIELD_SUPPORT policy<{'amd64': 'y'}> +CONFIG_SND_SOC_SOF_APOLLOLAKE_SUPPORT policy<{'amd64': 'y'}> +CONFIG_SND_SOC_SOF_GEMINILAKE_SUPPORT policy<{'amd64': 'y'}> +CONFIG_SND_SOC_SOF_CANNONLAKE_SUPPORT policy<{'amd64': 'y'}> +CONFIG_SND_SOC_SOF_COFFEELAKE_SUPPORT policy<{'amd64': 'y'}> +CONFIG_SND_SOC_SOF_ICELAKE_SUPPORT policy<{'amd64': 'y'}> +CONFIG_SND_SOC_SOF_COMETLAKE_LP_SUPPORT policy<{'amd64': 'y'}> +CONFIG_SND_SOC_SOF_TIGERLAKE_SUPPORT policy<{'amd64': 'y'}> +CONFIG_SND_SOC_SOF_ELKHARTLAKE_SUPPORT policy<{'amd64': 'y'}> +CONFIG_SND_SOC_SOF_JASPERLAKE_SUPPORT policy<{'amd64': 'y'}> +CONFIG_SND_SOC_SOF_HDA_LINK policy<{'amd64': 'y'}> +CONFIG_SND_SOC_SOF_HDA_AUDIO_CODEC policy<{'amd64': 'y'}> +CONFIG_SND_SOC_SOF_HDA_ALWAYS_ENABLE_DMI_L1 policy<{'amd64': 'n'}> +# +CONFIG_SND_SOC_SOF_HDA_LINK mark note +CONFIG_SND_SOC_SOF_HDA_AUDIO_CODEC mark note +CONFIG_SND_SOC_SOF_HDA_ALWAYS_ENABLE_DMI_L1 mark note + +# Menu: Device Drivers >> Sound card support >> Advanced Linux Sound Architecture >> ARM sound devices +CONFIG_SND_ARM policy<{'armhf': 'y'}> +CONFIG_SND_ARMAACI policy<{'armhf': 'm'}> + +# Menu: Device Drivers >> Sound card support >> Advanced Linux Sound Architecture >> Apple Onboard Audio driver + +# Menu: Device Drivers >> Sound card support >> Advanced Linux Sound Architecture >> Atmel devices (AT91) + +# Menu: Device Drivers >> Sound card support >> Advanced Linux Sound Architecture >> Debug +CONFIG_SND_DEBUG policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n'}> + +# Menu: Device Drivers >> Sound card support >> Advanced Linux Sound Architecture >> FireWire sound devices +CONFIG_SND_FIREWIRE policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_SND_DICE policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SND_OXFW policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SND_ISIGHT policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SND_FIREWORKS policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SND_BEBOB policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SND_FIREWIRE_DIGI00X policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SND_FIREWIRE_TASCAM policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SND_FIREWIRE_MOTU policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SND_FIREFACE policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> + +# Menu: Device Drivers >> Sound card support >> Advanced Linux Sound Architecture >> GSC sound devices + +# Menu: Device Drivers >> Sound card support >> Advanced Linux Sound Architecture >> Generic sound devices +CONFIG_SND_DRIVERS policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_SND_PCSP policy<{'amd64': 'm'}> +CONFIG_SND_DUMMY policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SND_ALOOP policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SND_VIRMIDI policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SND_MTPAV policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SND_MTS64 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SND_SERIAL_U16550 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SND_MPU401 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SND_PORTMAN2X4 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SND_AC97_POWER_SAVE policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_SND_AC97_POWER_SAVE_DEFAULT policy<{'amd64': '0', 'arm64': '0', 'armhf': '0', 'ppc64el': '0'}> + +# Menu: Device Drivers >> Sound card support >> Advanced Linux Sound Architecture >> HD-Audio +CONFIG_SND_HDA_INTEL policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SND_HDA_TEGRA policy<{'armhf-generic': 'm'}> +CONFIG_SND_HDA_HWDEP policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_SND_HDA_RECONFIG policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_SND_HDA_INPUT_BEEP policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_SND_HDA_INPUT_BEEP_MODE policy<{'amd64': '0', 'arm64': '0', 'armhf': '0', 'ppc64el': '0'}> +CONFIG_SND_HDA_PATCH_LOADER policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_SND_HDA_CODEC_REALTEK policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SND_HDA_CODEC_ANALOG policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SND_HDA_CODEC_SIGMATEL policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SND_HDA_CODEC_VIA policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SND_HDA_CODEC_HDMI policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SND_HDA_CODEC_CIRRUS policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SND_HDA_CODEC_CONEXANT policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SND_HDA_CODEC_CA0110 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SND_HDA_CODEC_CA0132 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SND_HDA_CODEC_CA0132_DSP policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_SND_HDA_CODEC_CMEDIA policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SND_HDA_CODEC_SI3054 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SND_HDA_GENERIC policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SND_HDA_POWER_SAVE_DEFAULT policy<{'amd64': '1', 'arm64': '1', 'armhf': '1', 'ppc64el': '1'}> +# +CONFIG_SND_HDA_RECONFIG note +CONFIG_SND_HDA_POWER_SAVE_DEFAULT note + +# Menu: Device Drivers >> Sound card support >> Advanced Linux Sound Architecture >> ISA sound devices + +# Menu: Device Drivers >> Sound card support >> Advanced Linux Sound Architecture >> MIPS sound devices + +# Menu: Device Drivers >> Sound card support >> Advanced Linux Sound Architecture >> PCI sound devices +CONFIG_SND_PCI policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_SND_AD1889 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SND_ALS300 policy<{'amd64': 'm', 'arm64': 'm', 'armhf-generic-lpae': 'm'}> +CONFIG_SND_ALS4000 policy<{'amd64': 'm', 'ppc64el': 'm'}> +CONFIG_SND_ALI5451 policy<{'amd64': 'm', 'arm64': 'm', 'armhf-generic-lpae': 'm'}> +CONFIG_SND_ASIHPI policy<{'amd64': 'm'}> +CONFIG_SND_ATIIXP policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SND_ATIIXP_MODEM policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SND_AU8810 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SND_AU8820 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SND_AU8830 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SND_AW2 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SND_AZT3328 policy<{'amd64': 'm', 'arm64': 'm', 'armhf-generic-lpae': 'm'}> +CONFIG_SND_BT87X policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SND_BT87X_OVERCLOCK policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n'}> +CONFIG_SND_CA0106 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SND_CMIPCI policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SND_OXYGEN policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SND_CS4281 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SND_CS46XX policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SND_CS46XX_NEW_DSP policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_SND_CTXFI policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SND_DARLA20 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SND_GINA20 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SND_LAYLA20 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SND_DARLA24 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SND_GINA24 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SND_LAYLA24 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SND_MONA policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SND_MIA policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SND_ECHO3G policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SND_INDIGO policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SND_INDIGOIO policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SND_INDIGODJ policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SND_INDIGOIOX policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SND_INDIGODJX policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SND_EMU10K1 policy<{'amd64': 'm', 'arm64': 'm', 'armhf-generic-lpae': 'm'}> +CONFIG_SND_EMU10K1X policy<{'amd64': 'm', 'arm64': 'm', 'armhf-generic-lpae': 'm'}> +CONFIG_SND_ENS1370 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SND_ENS1371 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SND_ES1938 policy<{'amd64': 'm', 'arm64': 'm', 'armhf-generic-lpae': 'm'}> +CONFIG_SND_ES1968 policy<{'amd64': 'm', 'arm64': 'm', 'armhf-generic-lpae': 'm'}> +CONFIG_SND_ES1968_INPUT policy<{'amd64': 'y', 'arm64': 'y', 'armhf-generic-lpae': 'y'}> +CONFIG_SND_ES1968_RADIO policy<{'amd64': 'y', 'arm64': 'y', 'armhf-generic-lpae': 'y'}> +CONFIG_SND_FM801 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SND_FM801_TEA575X_BOOL policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_SND_HDSP policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SND_HDSPM policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SND_ICE1712 policy<{'amd64': 'm', 'arm64': 'm', 'armhf-generic-lpae': 'm'}> +CONFIG_SND_ICE1724 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SND_INTEL8X0 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SND_INTEL8X0M policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SND_KORG1212 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SND_LOLA policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SND_LX6464ES policy<{'amd64': 'm', 'arm64': 'm', 'ppc64el': 'm'}> +CONFIG_SND_MAESTRO3 policy<{'amd64': 'm', 'arm64': 'm', 'armhf-generic-lpae': 'm'}> +CONFIG_SND_MAESTRO3_INPUT policy<{'amd64': 'y', 'arm64': 'y', 'armhf-generic-lpae': 'y'}> +CONFIG_SND_MIXART policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SND_NM256 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SND_PCXHR policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SND_RIPTIDE policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SND_RME32 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SND_RME96 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SND_RME9652 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SND_SONICVIBES policy<{'amd64': 'm', 'arm64': 'm', 'armhf-generic-lpae': 'm'}> +CONFIG_SND_TRIDENT policy<{'amd64': 'm', 'arm64': 'm', 'armhf-generic-lpae': 'm'}> +CONFIG_SND_VIA82XX policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SND_VIA82XX_MODEM policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SND_VIRTUOSO policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SND_VX222 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SND_YMFPCI policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> + +# Menu: Device Drivers >> Sound card support >> Advanced Linux Sound Architecture >> PCMCIA sound devices +CONFIG_SND_PCMCIA policy<{'amd64': 'y'}> +CONFIG_SND_VXPOCKET policy<{'amd64': 'm'}> +CONFIG_SND_PDAUDIOCF policy<{'amd64': 'm'}> + +# Menu: Device Drivers >> Sound card support >> Advanced Linux Sound Architecture >> PowerPC sound devices +CONFIG_SND_PPC policy<{'ppc64el': 'y'}> + +# Menu: Device Drivers >> Sound card support >> Advanced Linux Sound Architecture >> SPI sound devices +CONFIG_SND_SPI policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> + +# Menu: Device Drivers >> Sound card support >> Advanced Linux Sound Architecture >> SUPERH sound devices + +# Menu: Device Drivers >> Sound card support >> Advanced Linux Sound Architecture >> Sequencer support +CONFIG_SND_SEQUENCER policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SND_SEQ_DUMMY policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SND_SEQUENCER_OSS policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n'}> +CONFIG_SND_SEQ_HRTIMER_DEFAULT policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> + +# Menu: Device Drivers >> Sound card support >> Advanced Linux Sound Architecture >> Sparc sound devices + +# Menu: Device Drivers >> Sound card support >> Advanced Linux Sound Architecture >> USB sound devices +CONFIG_SND_USB policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_SND_USB_AUDIO policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SND_USB_UA101 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SND_USB_USX2Y policy<{'amd64': 'm', 'ppc64el': 'm'}> +CONFIG_SND_USB_CAIAQ policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SND_USB_CAIAQ_INPUT policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_SND_USB_US122L policy<{'amd64': 'm'}> +CONFIG_SND_USB_6FIRE policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SND_USB_HIFACE policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SND_BCD2000 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SND_USB_POD policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SND_USB_PODHD policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SND_USB_TONEPORT policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SND_USB_VARIAX policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> + +# Menu: Device Drivers >> Sound card support >> Advanced Linux Sound Architecture >> X86 sound devices +CONFIG_SND_X86 policy<{'amd64': 'y'}> +CONFIG_HDMI_LPE_AUDIO policy<{'amd64': 'm'}> + +# Menu: Device Drivers >> SoundWire support +CONFIG_SOUNDWIRE policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SOUNDWIRE_INTEL policy<{'amd64': 'm', 'arm64': 'm'}> +CONFIG_SOUNDWIRE_QCOM policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +# +CONFIG_SOUNDWIRE mark note + +# Menu: Device Drivers >> Staging drivers +CONFIG_STAGING policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'n'}> +CONFIG_PRISM2_USB policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_RTL8192U policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_RTL8723BS policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_R8712U policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_R8188EU policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_88EU_AP_MODE policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_RTS5208 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_VT6655 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_VT6656 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_FB_SM750 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_USB_EMXX policy<{'arm64': 'm', 'armhf': 'y'}> +CONFIG_STAGING_BOARD policy<{'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n'}> +CONFIG_LTE_GDM724X policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_FIREWIRE_SERIAL policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_FWTTY_MAX_TOTAL_PORTS policy<{'amd64': '64', 'arm64': '64', 'armhf': '64', 'ppc64el': '64'}> +CONFIG_FWTTY_MAX_CARD_PORTS policy<{'amd64': '32', 'arm64': '32', 'armhf': '32', 'ppc64el': '32'}> +CONFIG_GS_FPGABOOT policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_COMMON_CLK_XLNX_CLKWZRD policy<{'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n'}> +CONFIG_FSL_DPAA2 policy<{'arm64': 'y'}> +CONFIG_FSL_DPAA2_ETHSW policy<{'arm64': 'm'}> +CONFIG_WILC1000_SDIO policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_WILC1000_SPI policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_WILC1000_HW_OOB_INTR policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_KS7010 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_GREYBUS_AUDIO policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_GREYBUS_BOOTROM policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_GREYBUS_FIRMWARE policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_GREYBUS_HID policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_GREYBUS_LIGHT policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_GREYBUS_LOG policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_GREYBUS_LOOPBACK policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_GREYBUS_POWER policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_GREYBUS_RAW policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_GREYBUS_VIBRATOR policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_PI433 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_XIL_AXIS_FIFO policy<{'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_QLGE policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_WFX policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +# +CONFIG_STAGING flag + +# Menu: Device Drivers >> Staging drivers >> Android +CONFIG_ASHMEM policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> + +# Menu: Device Drivers >> Staging drivers >> Android >> Ion Memory Manager +CONFIG_ION policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n'}> + +# Menu: Device Drivers >> Staging drivers >> Broadcom VideoCore support +CONFIG_BCM_VIDEOCORE policy<{'arm64': 'm'}> +CONFIG_BCM2835_VCHIQ policy<{'arm64': 'm'}> +CONFIG_SND_BCM2835 policy<{'arm64': 'm'}> +CONFIG_VIDEO_BCM2835 policy<{'arm64': 'm'}> + +# Menu: Device Drivers >> Staging drivers >> Daktronics KPC Device support +CONFIG_KPC2000 policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_KPC2000_CORE policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_KPC2000_SPI policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_KPC2000_I2C policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_KPC2000_DMA policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> + +# Menu: Device Drivers >> Staging drivers >> Data acquisition support (comedi) +CONFIG_COMEDI policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_COMEDI_DEBUG policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n'}> +CONFIG_COMEDI_DEFAULT_BUF_SIZE_KB policy<{'amd64': '2048', 'arm64': '2048', 'armhf': '2048', 'ppc64el': '2048'}> +CONFIG_COMEDI_DEFAULT_BUF_MAXSIZE_KB policy<{'amd64': '20480', 'arm64': '20480', 'armhf': '20480', 'ppc64el': '20480'}> +CONFIG_COMEDI_8255_SA policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_COMEDI_KCOMEDILIB policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> + +# Menu: Device Drivers >> Staging drivers >> Data acquisition support (comedi) >> Comedi ISA and PC/104 drivers +CONFIG_COMEDI_ISA_DRIVERS policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_COMEDI_PCL711 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_COMEDI_PCL724 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_COMEDI_PCL726 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_COMEDI_PCL730 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_COMEDI_PCL812 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_COMEDI_PCL816 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_COMEDI_PCL818 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_COMEDI_PCM3724 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_COMEDI_AMPLC_DIO200_ISA policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_COMEDI_AMPLC_PC236_ISA policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_COMEDI_AMPLC_PC263_ISA policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_COMEDI_RTI800 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_COMEDI_RTI802 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_COMEDI_DAC02 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_COMEDI_DAS16M1 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_COMEDI_DAS08_ISA policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_COMEDI_DAS16 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_COMEDI_DAS800 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_COMEDI_DAS1800 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_COMEDI_DAS6402 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_COMEDI_DT2801 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_COMEDI_DT2811 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_COMEDI_DT2814 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_COMEDI_DT2815 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_COMEDI_DT2817 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_COMEDI_DT282X policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_COMEDI_DMM32AT policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_COMEDI_FL512 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_COMEDI_AIO_AIO12_8 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_COMEDI_AIO_IIRO_16 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_COMEDI_II_PCI20KC policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_COMEDI_C6XDIGIO policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_COMEDI_MPC624 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_COMEDI_ADQ12B policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_COMEDI_NI_AT_A2150 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_COMEDI_NI_AT_AO policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_COMEDI_NI_ATMIO policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_COMEDI_NI_ATMIO16D policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_COMEDI_NI_LABPC_ISA policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_COMEDI_PCMAD policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_COMEDI_PCMDA12 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_COMEDI_PCMMIO policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_COMEDI_PCMUIO policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_COMEDI_MULTIQ3 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_COMEDI_S526 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> + +# Menu: Device Drivers >> Staging drivers >> Data acquisition support (comedi) >> Comedi PCI drivers +CONFIG_COMEDI_PCI_DRIVERS policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_COMEDI_8255_PCI policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_COMEDI_ADDI_APCI_1032 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_COMEDI_ADDI_APCI_1500 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_COMEDI_ADDI_APCI_1516 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_COMEDI_ADDI_APCI_1564 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_COMEDI_ADDI_APCI_16XX policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_COMEDI_ADDI_APCI_2032 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_COMEDI_ADDI_APCI_2200 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_COMEDI_ADDI_APCI_3120 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_COMEDI_ADDI_APCI_3501 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_COMEDI_ADDI_APCI_3XXX policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_COMEDI_ADL_PCI6208 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_COMEDI_ADL_PCI7X3X policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_COMEDI_ADL_PCI8164 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_COMEDI_ADL_PCI9111 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_COMEDI_ADL_PCI9118 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_COMEDI_ADV_PCI1710 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_COMEDI_ADV_PCI1720 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_COMEDI_ADV_PCI1723 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_COMEDI_ADV_PCI1724 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_COMEDI_ADV_PCI1760 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_COMEDI_ADV_PCI_DIO policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_COMEDI_AMPLC_DIO200_PCI policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_COMEDI_AMPLC_PC236_PCI policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_COMEDI_AMPLC_PC263_PCI policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_COMEDI_AMPLC_PCI224 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_COMEDI_AMPLC_PCI230 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_COMEDI_CONTEC_PCI_DIO policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_COMEDI_DAS08_PCI policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_COMEDI_DT3000 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_COMEDI_DYNA_PCI10XX policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_COMEDI_GSC_HPDI policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_COMEDI_MF6X4 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_COMEDI_ICP_MULTI policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_COMEDI_DAQBOARD2000 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_COMEDI_JR3_PCI policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_COMEDI_KE_COUNTER policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_COMEDI_CB_PCIDAS64 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_COMEDI_CB_PCIDAS policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_COMEDI_CB_PCIDDA policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_COMEDI_CB_PCIMDAS policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_COMEDI_CB_PCIMDDA policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_COMEDI_ME4000 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_COMEDI_ME_DAQ policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_COMEDI_NI_6527 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_COMEDI_NI_65XX policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_COMEDI_NI_660X policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_COMEDI_NI_670X policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_COMEDI_NI_LABPC_PCI policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_COMEDI_NI_PCIDIO policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_COMEDI_NI_PCIMIO policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_COMEDI_RTD520 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_COMEDI_S626 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> + +# Menu: Device Drivers >> Staging drivers >> Data acquisition support (comedi) >> Comedi PCMCIA drivers +CONFIG_COMEDI_PCMCIA_DRIVERS policy<{'amd64': 'm'}> +CONFIG_COMEDI_CB_DAS16_CS policy<{'amd64': 'm'}> +CONFIG_COMEDI_DAS08_CS policy<{'amd64': 'm'}> +CONFIG_COMEDI_NI_DAQ_700_CS policy<{'amd64': 'm'}> +CONFIG_COMEDI_NI_DAQ_DIO24_CS policy<{'amd64': 'm'}> +CONFIG_COMEDI_NI_LABPC_CS policy<{'amd64': 'm'}> +CONFIG_COMEDI_NI_MIO_CS policy<{'amd64': 'm'}> +CONFIG_COMEDI_QUATECH_DAQP_CS policy<{'amd64': 'm'}> + +# Menu: Device Drivers >> Staging drivers >> Data acquisition support (comedi) >> Comedi USB drivers +CONFIG_COMEDI_USB_DRIVERS policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_COMEDI_DT9812 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_COMEDI_NI_USB6501 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_COMEDI_USBDUX policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_COMEDI_USBDUXFAST policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_COMEDI_USBDUXSIGMA policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_COMEDI_VMK80XX policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> + +# Menu: Device Drivers >> Staging drivers >> Data acquisition support (comedi) >> Comedi misc drivers +CONFIG_COMEDI_MISC_DRIVERS policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_COMEDI_BOND policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_COMEDI_TEST policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_COMEDI_PARPORT policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> + +# Menu: Device Drivers >> Staging drivers >> Fieldbus Device Support +CONFIG_FIELDBUS_DEV policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_HMS_ANYBUSS_BUS policy<{'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_ARCX_ANYBUS_CONTROLLER policy<{'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_HMS_PROFINET policy<{'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> + +# Menu: Device Drivers >> Staging drivers >> Gasket devices +CONFIG_STAGING_GASKET_FRAMEWORK policy<{'amd64': 'm', 'arm64': 'm'}> +CONFIG_STAGING_APEX_DRIVER policy<{'amd64': 'm', 'arm64': 'm'}> + +# Menu: Device Drivers >> Staging drivers >> Greybus Bridged PHY Class drivers +CONFIG_GREYBUS_BRIDGED_PHY policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_GREYBUS_GPIO policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_GREYBUS_I2C policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_GREYBUS_PWM policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_GREYBUS_SDIO policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_GREYBUS_SPI policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_GREYBUS_UART policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_GREYBUS_USB policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> + +# Menu: Device Drivers >> Staging drivers >> IIO staging drivers + +# Menu: Device Drivers >> Staging drivers >> IIO staging drivers >> Accelerometers +CONFIG_ADIS16203 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_ADIS16240 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> + +# Menu: Device Drivers >> Staging drivers >> IIO staging drivers >> Active energy metering IC +CONFIG_ADE7854 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_ADE7854_I2C policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_ADE7854_SPI policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> + +# Menu: Device Drivers >> Staging drivers >> IIO staging drivers >> Analog digital bi-direction converters +CONFIG_ADT7316 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_ADT7316_SPI policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_ADT7316_I2C policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> + +# Menu: Device Drivers >> Staging drivers >> IIO staging drivers >> Analog to digital converters +CONFIG_AD7816 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_AD7280 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> + +# Menu: Device Drivers >> Staging drivers >> IIO staging drivers >> Capacitance to digital converters +CONFIG_AD7150 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_AD7746 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> + +# Menu: Device Drivers >> Staging drivers >> IIO staging drivers >> Direct Digital Synthesis +CONFIG_AD9832 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_AD9834 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> + +# Menu: Device Drivers >> Staging drivers >> IIO staging drivers >> Network Analyzer, Impedance Converters +CONFIG_AD5933 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> + +# Menu: Device Drivers >> Staging drivers >> IIO staging drivers >> Resolver to digital converters +CONFIG_AD2S1210 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> + +# Menu: Device Drivers >> Staging drivers >> MOST support +CONFIG_MOST_COMPONENTS policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_MOST_CDEV policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_MOST_NET policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_MOST_SOUND policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_MOST_VIDEO policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_MOST_DIM2 policy<{'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_MOST_I2C policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_MOST_USB policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> + +# Menu: Device Drivers >> Staging drivers >> Media staging drivers +CONFIG_STAGING_MEDIA policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_VIDEO_ALLEGRO_DVT policy<{'arm64': 'm'}> +CONFIG_VIDEO_HANTRO policy<{'arm64': 'm', 'armhf': 'm'}> +CONFIG_VIDEO_HANTRO_IMX8M policy<{'arm64': 'y', 'armhf-generic': 'y'}> +CONFIG_VIDEO_HANTRO_ROCKCHIP policy<{'arm64': 'y', 'armhf': 'y'}> +CONFIG_VIDEO_IMX_MEDIA policy<{'armhf-generic': 'm'}> +CONFIG_VIDEO_MESON_VDEC policy<{'arm64': 'm', 'armhf': 'm'}> +CONFIG_VIDEO_OMAP4 policy<{'armhf-generic': 'm'}> +CONFIG_VIDEO_ROCKCHIP_VDEC policy<{'arm64': 'm', 'armhf': 'm'}> +CONFIG_VIDEO_SUNXI policy<{'arm64': 'y'}> +CONFIG_VIDEO_SUNXI_CEDRUS policy<{'arm64': 'm'}> +CONFIG_TEGRA_VDE policy<{'armhf-generic': 'm'}> +CONFIG_VIDEO_TEGRA policy<{'armhf-generic': 'm'}> +CONFIG_VIDEO_IPU3_IMGU policy<{'amd64': 'm'}> +CONFIG_PHY_ROCKCHIP_DPHY_RX0 policy<{'arm64': 'm', 'armhf': 'm'}> +CONFIG_VIDEO_ROCKCHIP_ISP1 policy<{'arm64': 'm', 'armhf': 'm'}> +CONFIG_VIDEO_USBVISION policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> + +# Menu: Device Drivers >> Staging drivers >> Media staging drivers >> Enable support to Intel Atom ISP camera drivers +CONFIG_INTEL_ATOMISP policy<{'amd64': 'y'}> + +# Menu: Device Drivers >> Staging drivers >> Media staging drivers >> Enable support to Intel Atom ISP camera drivers >> Intel Atom Image Signal Processor Driver +CONFIG_VIDEO_ATOMISP policy<{'amd64': 'm'}> +CONFIG_VIDEO_ATOMISP_ISP2401 policy<{'amd64': 'n'}> +CONFIG_VIDEO_ATOMISP_OV5693 policy<{'amd64': 'm'}> +CONFIG_VIDEO_ATOMISP_OV2722 policy<{'amd64': 'm'}> +CONFIG_VIDEO_ATOMISP_GC2235 policy<{'amd64': 'm'}> +CONFIG_VIDEO_ATOMISP_MSRLIST_HELPER policy<{'amd64': 'm'}> +CONFIG_VIDEO_ATOMISP_MT9M114 policy<{'amd64': 'm'}> +CONFIG_VIDEO_ATOMISP_GC0310 policy<{'amd64': 'm'}> +CONFIG_VIDEO_ATOMISP_OV2680 policy<{'amd64': 'm'}> +CONFIG_VIDEO_ATOMISP_LM3554 policy<{'amd64': 'm'}> + +# Menu: Device Drivers >> Staging drivers >> Media staging drivers >> SoC camera support + +# Menu: Device Drivers >> Staging drivers >> Media staging drivers >> i.MX5/6/7 Media Sub devices +CONFIG_VIDEO_IMX_CSI policy<{'armhf-generic': 'm'}> +CONFIG_VIDEO_IMX7_CSI policy<{'armhf-generic': 'm'}> + +# Menu: Device Drivers >> Staging drivers >> NV Tegra Embedded Controller SMBus Interface +CONFIG_MFD_NVEC policy<{'armhf-generic': 'm'}> +CONFIG_KEYBOARD_NVEC policy<{'armhf-generic': 'm'}> +CONFIG_SERIO_NVEC_PS2 policy<{'armhf-generic': 'm'}> +CONFIG_NVEC_POWER policy<{'armhf-generic': 'm'}> +CONFIG_NVEC_PAZ00 policy<{'armhf-generic': 'm'}> + +# Menu: Device Drivers >> Staging drivers >> Speakup console speech + +# Menu: Device Drivers >> Staging drivers >> Speakup console speech >> Speakup core +CONFIG_SPEAKUP policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SPEAKUP_SYNTH_ACNTSA policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SPEAKUP_SYNTH_APOLLO policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SPEAKUP_SYNTH_AUDPTR policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SPEAKUP_SYNTH_BNS policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SPEAKUP_SYNTH_DECTLK policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SPEAKUP_SYNTH_DECEXT policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SPEAKUP_SYNTH_LTLK policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SPEAKUP_SYNTH_SOFT policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SPEAKUP_SYNTH_SPKOUT policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SPEAKUP_SYNTH_TXPRT policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SPEAKUP_SYNTH_DUMMY policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> + +# Menu: Device Drivers >> Staging drivers >> Support for rtllib wireless devices +CONFIG_RTLLIB policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_RTLLIB_CRYPTO_CCMP policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_RTLLIB_CRYPTO_TKIP policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_RTLLIB_CRYPTO_WEP policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_RTL8192E policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> + +# Menu: Device Drivers >> Staging drivers >> Support for small TFT LCD display modules +CONFIG_FB_TFT policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_FB_TFT_AGM1264K_FL policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_FB_TFT_BD663474 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_FB_TFT_HX8340BN policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_FB_TFT_HX8347D policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_FB_TFT_HX8353D policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_FB_TFT_HX8357D policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_FB_TFT_ILI9163 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_FB_TFT_ILI9320 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_FB_TFT_ILI9325 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_FB_TFT_ILI9340 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_FB_TFT_ILI9341 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_FB_TFT_ILI9481 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_FB_TFT_ILI9486 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_FB_TFT_PCD8544 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_FB_TFT_RA8875 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_FB_TFT_S6D02A1 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_FB_TFT_S6D1121 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_FB_TFT_SH1106 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_FB_TFT_SSD1289 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_FB_TFT_SSD1305 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_FB_TFT_SSD1306 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_FB_TFT_SSD1331 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_FB_TFT_SSD1351 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_FB_TFT_ST7735R policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_FB_TFT_ST7789V policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_FB_TFT_TINYLCD policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_FB_TFT_TLS8204 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_FB_TFT_UC1611 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_FB_TFT_UC1701 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_FB_TFT_UPD161704 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_FB_TFT_WATTEROTT policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_FB_TFT_SEPS525 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> + +# Menu: Device Drivers >> Staging drivers >> Unisys SPAR driver support +CONFIG_UNISYSSPAR policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_UNISYS_VISORNIC policy<{'amd64': 'm'}> +CONFIG_UNISYS_VISORINPUT policy<{'amd64': 'm'}> +CONFIG_UNISYS_VISORHBA policy<{'amd64': 'm'}> + +# Menu: Device Drivers >> TEE drivers +CONFIG_OPTEE policy<{'arm64': 'm', 'armhf': 'm'}> +CONFIG_OPTEE_SHM_NUM_PRIV_PAGES policy<{'arm64': '1', 'armhf': '1'}> +CONFIG_AMDTEE policy<{'amd64': 'm'}> + +# Menu: Device Drivers >> TI VLYNQ + +# Menu: Device Drivers >> Thermal drivers +CONFIG_THERMAL policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'n'}> +CONFIG_THERMAL_STATISTICS policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_THERMAL_EMERGENCY_POWEROFF_DELAY_MS policy<{'amd64': '0', 'arm64': '0', 'armhf': '0', 'ppc64el': '0'}> +CONFIG_THERMAL_HWMON policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_THERMAL_WRITABLE_TRIPS policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_THERMAL_GOV_FAIR_SHARE policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_THERMAL_GOV_STEP_WISE policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_THERMAL_GOV_BANG_BANG policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_THERMAL_GOV_USER_SPACE policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_THERMAL_GOV_POWER_ALLOCATOR policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_CLOCK_THERMAL policy<{'amd64': 'n', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_DEVFREQ_THERMAL policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_THERMAL_EMULATION policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_THERMAL_MMIO policy<{'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_HISI_THERMAL policy<{'arm64': 'm', 'armhf': 'm'}> +CONFIG_IMX_THERMAL policy<{'arm64': 'm', 'armhf-generic': 'm'}> +CONFIG_IMX_SC_THERMAL policy<{'arm64': 'm', 'armhf-generic': 'm'}> +CONFIG_IMX8MM_THERMAL policy<{'arm64': 'm', 'armhf-generic': 'm'}> +CONFIG_K3_THERMAL policy<{'arm64': 'm'}> +CONFIG_MAX77620_THERMAL policy<{'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SUN8I_THERMAL policy<{'arm64': 'm'}> +CONFIG_ROCKCHIP_THERMAL policy<{'arm64': 'm', 'armhf': 'm'}> +CONFIG_RCAR_THERMAL policy<{'arm64': 'm', 'armhf': 'm'}> +CONFIG_RCAR_GEN3_THERMAL policy<{'arm64': 'm', 'armhf': 'm'}> +CONFIG_DOVE_THERMAL policy<{'armhf': 'm'}> +CONFIG_ARMADA_THERMAL policy<{'arm64': 'y', 'armhf': 'y'}> +CONFIG_DA9062_THERMAL policy<{'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_MTK_THERMAL policy<{'arm64': 'm', 'armhf': 'm'}> +CONFIG_AMLOGIC_THERMAL policy<{'arm64': 'm', 'armhf': 'm'}> +CONFIG_GENERIC_ADC_THERMAL policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SPRD_THERMAL policy<{'arm64': 'm'}> + +# Menu: Device Drivers >> Thermal drivers >> APIs to parse thermal data out of device tree +CONFIG_THERMAL_OF policy<{'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_CPU_THERMAL policy<{'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_CPU_FREQ_THERMAL policy<{'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_CPU_IDLE_THERMAL policy<{'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_QORIQ_THERMAL policy<{'arm64': 'm'}> +CONFIG_UNIPHIER_THERMAL policy<{'armhf': 'm'}> + +# Menu: Device Drivers >> Thermal drivers >> Broadcom thermal drivers +CONFIG_BCM2711_THERMAL policy<{'arm64': 'm'}> +CONFIG_BCM2835_THERMAL policy<{'arm64': 'm'}> +CONFIG_BRCMSTB_THERMAL policy<{'arm64': 'm'}> +CONFIG_BCM_NS_THERMAL policy<{'arm64': 'm'}> +CONFIG_BCM_SR_THERMAL policy<{'arm64': 'm'}> + +# Menu: Device Drivers >> Thermal drivers >> Default Thermal governor +CONFIG_THERMAL_DEFAULT_GOV_STEP_WISE policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_THERMAL_DEFAULT_GOV_FAIR_SHARE policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n'}> +CONFIG_THERMAL_DEFAULT_GOV_USER_SPACE policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n'}> +CONFIG_THERMAL_DEFAULT_GOV_POWER_ALLOCATOR policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n'}> + +# Menu: Device Drivers >> Thermal drivers >> Intel thermal drivers +CONFIG_INTEL_POWERCLAMP policy<{'amd64': 'm'}> +CONFIG_X86_PKG_TEMP_THERMAL policy<{'amd64': 'm'}> +CONFIG_INTEL_SOC_DTS_THERMAL policy<{'amd64': 'm'}> +CONFIG_INTEL_BXT_PMIC_THERMAL policy<{'amd64': 'm'}> +CONFIG_INTEL_PCH_THERMAL policy<{'amd64': 'm'}> + +# Menu: Device Drivers >> Thermal drivers >> Intel thermal drivers >> ACPI INT340X thermal drivers +CONFIG_INT340X_THERMAL policy<{'amd64': 'm'}> +CONFIG_INT3406_THERMAL policy<{'amd64': 'm'}> + +# Menu: Device Drivers >> Thermal drivers >> NVIDIA Tegra thermal drivers +CONFIG_TEGRA_SOCTHERM policy<{'armhf-generic': 'n'}> +CONFIG_TEGRA_BPMP_THERMAL policy<{'armhf-generic': 'm'}> + +# Menu: Device Drivers >> Thermal drivers >> Qualcomm thermal drivers +CONFIG_QCOM_TSENS policy<{'arm64-generic': 'm', 'arm64-generic-64k': 'm', 'armhf': 'm'}> +CONFIG_QCOM_SPMI_TEMP_ALARM policy<{'arm64': 'm', 'armhf': 'm'}> + +# Menu: Device Drivers >> Thermal drivers >> STMicroelectronics thermal drivers + +# Menu: Device Drivers >> Thermal drivers >> Samsung thermal drivers +CONFIG_EXYNOS_THERMAL policy<{'armhf': 'y'}> + +# Menu: Device Drivers >> Thermal drivers >> Texas Instruments thermal drivers + +# Menu: Device Drivers >> Thermal drivers >> Texas Instruments thermal drivers >> Texas Instruments SoCs temperature sensor driver +CONFIG_TI_SOC_THERMAL policy<{'arm64': 'n', 'armhf': 'm', 'ppc64el': 'n'}> +CONFIG_TI_THERMAL policy<{'armhf': 'y'}> +CONFIG_OMAP3_THERMAL policy<{'armhf-generic': 'n'}> +CONFIG_OMAP4_THERMAL policy<{'armhf-generic': 'y'}> +CONFIG_DRA752_THERMAL policy<{'armhf': 'y'}> + +# Menu: Device Drivers >> USB support +CONFIG_USB_SUPPORT policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'n'}> +CONFIG_USB_LED_TRIG policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_USB_ULPI_BUS policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_USB_CONN_GPIO policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_USB_PCI policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_USB_UHCI_HCD policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_USB_ROLE_SWITCH policy<{'amd64': 'm', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'm'}> +CONFIG_USB_ROLES_INTEL_XHCI policy<{'amd64': 'm'}> +# +CONFIG_USB_UHCI_HCD mark note flag + +# Menu: Device Drivers >> USB support >> ChipIdea Highspeed Dual Role Controller +CONFIG_USB_CHIPIDEA policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_USB_CHIPIDEA_UDC policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_USB_CHIPIDEA_HOST policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_USB_CHIPIDEA_PCI policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_USB_CHIPIDEA_MSM policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_USB_CHIPIDEA_IMX policy<{'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_USB_CHIPIDEA_GENERIC policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_USB_CHIPIDEA_TEGRA policy<{'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> + +# Menu: Device Drivers >> USB support >> Support for Host-side USB +CONFIG_USB policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_USB_ANNOUNCE_NEW_DEVICES policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_USB_DEFAULT_PERSIST policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_USB_DYNAMIC_MINORS policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_USB_OTG policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n'}> +CONFIG_USB_OTG_WHITELIST policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n'}> +CONFIG_USB_OTG_BLACKLIST_HUB policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n'}> +CONFIG_USB_LEDS_TRIGGER_USBPORT policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_USB_AUTOSUSPEND_DELAY policy<{'amd64': '2', 'arm64': '2', 'armhf': '2', 'ppc64el': '2'}> +CONFIG_USB_MON policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_USB_C67X00_HCD policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_USB_BRCMSTB policy<{'arm64': 'm'}> +CONFIG_USB_OXU210HP_HCD policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_USB_ISP116X_HCD policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_USB_FOTG210_HCD policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_USB_MAX3421_HCD policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_USB_FHCI_HCD policy<{'ppc64el': 'm'}> +CONFIG_FHCI_DEBUG policy<{'ppc64el': 'n'}> +CONFIG_USB_U132_HCD policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_USB_SL811_HCD policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_USB_SL811_HCD_ISO policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_USB_SL811_CS policy<{'amd64': 'm'}> +CONFIG_USB_R8A66597_HCD policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_USB_RENESAS_USBHS_HCD policy<{'arm64': 'm', 'armhf': 'm'}> +CONFIG_USB_IMX21_HCD policy<{'armhf-generic': 'm'}> +CONFIG_USB_HCD_BCMA policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'n', 'ppc64el': 'm'}> +CONFIG_USB_HCD_SSB policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'n', 'ppc64el': 'm'}> +CONFIG_USB_HCD_TEST_MODE policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n'}> +CONFIG_USB_RENESAS_USBHS policy<{'arm64': 'm', 'armhf': 'm'}> +CONFIG_USB_ACM policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_USB_PRINTER policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_USB_WDM policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_USB_TMC policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_USB_MDC800 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_USB_MICROTEK policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_USB_MTU3 policy<{'arm64': 'm', 'armhf': 'm'}> +CONFIG_USB_MTU3_DEBUG policy<{'arm64': 'n', 'armhf': 'n'}> +CONFIG_USB_ISP1760 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_USB_USS720 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_USB_EMI62 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_USB_EMI26 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_USB_ADUTUX policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_USB_SEVSEG policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_USB_LEGOTOWER policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_USB_LCD policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_USB_CYPRESS_CY7C63 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_USB_CYTHERM policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_USB_IDMOUSE policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_USB_FTDI_ELAN policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_USB_APPLEDISPLAY policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_APPLE_MFI_FASTCHARGE policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_USB_SISUSBVGA policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_USB_LD policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_USB_TRANCEVIBRATOR policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_USB_IOWARRIOR policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_USB_TEST policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_USB_EHSET_TEST_FIXTURE policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_USB_ISIGHTFW policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_USB_YUREX policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_USB_EZUSB_FX2 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_USB_HUB_USB251XB policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_USB_HSIC_USB3503 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_USB_HSIC_USB4604 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_USB_LINK_LAYER_TEST policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_USB_CHAOSKEY policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +# +CONFIG_USB_OTG note +CONFIG_USB_OTG_WHITELIST note +CONFIG_USB_OTG_BLACKLIST_HUB note +CONFIG_USB_HCD_BCMA note +CONFIG_USB_HCD_SSB note + +# Menu: Device Drivers >> USB support >> Support for Host-side USB >> Cadence USB3 Dual-Role Controller +CONFIG_USB_CDNS3 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_USB_CDNS3_GADGET policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_USB_CDNS3_HOST policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_USB_CDNS3_PCI_WRAP policy<{'amd64': 'm', 'arm64': 'm'}> +CONFIG_USB_CDNS3_TI policy<{'arm64': 'm'}> +CONFIG_USB_CDNS3_IMX policy<{'arm64': 'm', 'armhf-generic': 'm'}> + +# Menu: Device Drivers >> USB support >> Support for Host-side USB >> DesignWare USB2 DRD Core Support +CONFIG_USB_DWC2 policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_USB_DWC2_PCI policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'y', 'ppc64el': 'm'}> +CONFIG_USB_DWC2_DEBUG policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n'}> +CONFIG_USB_DWC2_TRACK_MISSED_SOFS policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n'}> + +# Menu: Device Drivers >> USB support >> Support for Host-side USB >> DesignWare USB2 DRD Core Support >> DWC2 Mode Selection +CONFIG_USB_DWC2_HOST policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_USB_DWC2_PERIPHERAL policy<{'armhf': 'n'}> +CONFIG_USB_DWC2_DUAL_ROLE policy<{'armhf': 'n'}> + +# Menu: Device Drivers >> USB support >> Support for Host-side USB >> DesignWare USB3 DRD Core Support +CONFIG_USB_DWC3 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_USB_DWC3_ULPI policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_USB_DWC3_OMAP policy<{'armhf': 'm'}> +CONFIG_USB_DWC3_EXYNOS policy<{'armhf': 'm'}> +CONFIG_USB_DWC3_PCI policy<{'amd64': 'm', 'arm64': 'm'}> +CONFIG_USB_DWC3_HAPS policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_USB_DWC3_KEYSTONE policy<{'arm64': 'm'}> +CONFIG_USB_DWC3_MESON_G12A policy<{'arm64': 'm', 'armhf': 'm'}> +CONFIG_USB_DWC3_OF_SIMPLE policy<{'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_USB_DWC3_QCOM policy<{'arm64': 'm', 'armhf': 'm'}> + +# Menu: Device Drivers >> USB support >> Support for Host-side USB >> DesignWare USB3 DRD Core Support >> DWC3 Mode Selection +CONFIG_USB_DWC3_HOST policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n'}> +CONFIG_USB_DWC3_GADGET policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n'}> +CONFIG_USB_DWC3_DUAL_ROLE policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> + +# Menu: Device Drivers >> USB support >> Support for Host-side USB >> EHCI HCD (USB 2.0) support +CONFIG_USB_EHCI_HCD policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_USB_EHCI_ROOT_HUB_TT policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_USB_EHCI_TT_NEWSCHED policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_USB_EHCI_FSL policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_USB_EHCI_MXC policy<{'arm64': 'm', 'armhf-generic': 'm'}> +CONFIG_USB_EHCI_HCD_NPCM7XX policy<{'armhf': 'm'}> +CONFIG_USB_EHCI_HCD_OMAP policy<{'armhf': 'm'}> +CONFIG_USB_EHCI_HCD_ORION policy<{'arm64': 'y', 'armhf': 'y'}> +CONFIG_USB_EHCI_TEGRA policy<{'armhf-generic': 'm'}> +CONFIG_USB_EHCI_HCD_PPC_OF policy<{'ppc64el': 'y'}> +CONFIG_USB_EHCI_EXYNOS policy<{'armhf': 'y'}> +CONFIG_USB_EHCI_HCD_PLATFORM policy<{'amd64': 'y', 'arm64': 'm', 'armhf': 'n', 'ppc64el': 'm'}> +# +CONFIG_USB_EHCI_HCD_PLATFORM mark note flag +CONFIG_USB_EHCI_HCD mark note flag + +# Menu: Device Drivers >> USB support >> Support for Host-side USB >> ISP1760 Mode Selection +CONFIG_USB_ISP1760_HOST_ROLE policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n'}> +CONFIG_USB_ISP1760_GADGET_ROLE policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n'}> +CONFIG_USB_ISP1760_DUAL_ROLE policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> + +# Menu: Device Drivers >> USB support >> Support for Host-side USB >> Inventra Highspeed Dual Role Controller +CONFIG_USB_MUSB_HDRC policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'y', 'ppc64el': 'm'}> +CONFIG_USB_MUSB_SUNXI policy<{'arm64': 'm'}> +CONFIG_USB_MUSB_TUSB6010 policy<{'armhf': 'm'}> +CONFIG_USB_MUSB_OMAP2PLUS policy<{'armhf': 'm'}> +CONFIG_USB_MUSB_AM35X policy<{'armhf': 'm'}> +CONFIG_USB_MUSB_DSPS policy<{'armhf': 'm'}> +CONFIG_USB_MUSB_MEDIATEK policy<{'arm64': 'm', 'armhf': 'm'}> +# +CONFIG_USB_MUSB_HDRC note flag + +# Menu: Device Drivers >> USB support >> Support for Host-side USB >> Inventra Highspeed Dual Role Controller >> Disable DMA (always use PIO) +CONFIG_MUSB_PIO_ONLY policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> + +# Menu: Device Drivers >> USB support >> Support for Host-side USB >> Inventra Highspeed Dual Role Controller >> MUSB Mode Selection +CONFIG_USB_MUSB_HOST policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n'}> +CONFIG_USB_MUSB_GADGET policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n'}> +CONFIG_USB_MUSB_DUAL_ROLE policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> + +# Menu: Device Drivers >> USB support >> Support for Host-side USB >> MTU3 Mode Selection +CONFIG_USB_MTU3_HOST policy<{'arm64': 'n', 'armhf': 'n'}> +CONFIG_USB_MTU3_GADGET policy<{'arm64': 'n', 'armhf': 'n'}> +CONFIG_USB_MTU3_DUAL_ROLE policy<{'arm64': 'y', 'armhf': 'y'}> + +# Menu: Device Drivers >> USB support >> Support for Host-side USB >> OHCI HCD (USB 1.1) support +CONFIG_USB_OHCI_HCD policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_USB_OHCI_HCD_OMAP3 policy<{'armhf-generic': 'm'}> +CONFIG_USB_OHCI_HCD_PPC_OF_BE policy<{'ppc64el': 'n'}> +CONFIG_USB_OHCI_HCD_PPC_OF_LE policy<{'ppc64el': 'n'}> +CONFIG_USB_OHCI_HCD_PCI policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_USB_OHCI_EXYNOS policy<{'armhf': 'y'}> +CONFIG_USB_OHCI_HCD_PLATFORM policy<{'amd64': 'y', 'arm64': 'm', 'armhf-generic': 'm', 'armhf-generic-lpae': 'n', 'ppc64el': 'm'}> +# +CONFIG_USB_OHCI_HCD marknote +CONFIG_USB_OHCI_HCD_PPC_OF_LE flag + +# Menu: Device Drivers >> USB support >> Support for Host-side USB >> USB DSL modem support +CONFIG_USB_ATM policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_USB_SPEEDTOUCH policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_USB_CXACRU policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_USB_UEAGLEATM policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_USB_XUSBATM policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> + +# Menu: Device Drivers >> USB support >> Support for Host-side USB >> USB Mass Storage support +CONFIG_USB_STORAGE policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_USB_STORAGE_DEBUG policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n'}> +CONFIG_USB_STORAGE_REALTEK policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_REALTEK_AUTOPM policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_USB_STORAGE_DATAFAB policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_USB_STORAGE_FREECOM policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_USB_STORAGE_ISD200 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_USB_STORAGE_USBAT policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_USB_STORAGE_SDDR09 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_USB_STORAGE_SDDR55 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_USB_STORAGE_JUMPSHOT policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_USB_STORAGE_ALAUDA policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_USB_STORAGE_ONETOUCH policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_USB_STORAGE_KARMA policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_USB_STORAGE_CYPRESS_ATACB policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_USB_STORAGE_ENE_UB6250 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_USB_UAS policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> + +# Menu: Device Drivers >> USB support >> Support for Host-side USB >> USB Serial Converter support +CONFIG_USB_SERIAL policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_USB_SERIAL_GENERIC policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_USB_SERIAL_SIMPLE policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_USB_SERIAL_AIRCABLE policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_USB_SERIAL_ARK3116 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_USB_SERIAL_BELKIN policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_USB_SERIAL_CH341 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_USB_SERIAL_WHITEHEAT policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_USB_SERIAL_DIGI_ACCELEPORT policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_USB_SERIAL_CP210X policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_USB_SERIAL_CYPRESS_M8 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_USB_SERIAL_EMPEG policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_USB_SERIAL_FTDI_SIO policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_USB_SERIAL_VISOR policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_USB_SERIAL_IPAQ policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_USB_SERIAL_IR policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_USB_SERIAL_EDGEPORT policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_USB_SERIAL_EDGEPORT_TI policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_USB_SERIAL_F81232 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_USB_SERIAL_F8153X policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_USB_SERIAL_GARMIN policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_USB_SERIAL_IPW policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_USB_SERIAL_IUU policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_USB_SERIAL_KEYSPAN_PDA policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_USB_SERIAL_KLSI policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_USB_SERIAL_KOBIL_SCT policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_USB_SERIAL_MCT_U232 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_USB_SERIAL_METRO policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_USB_SERIAL_MOS7720 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_USB_SERIAL_MOS7715_PARPORT policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_USB_SERIAL_MOS7840 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_USB_SERIAL_MXUPORT policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_USB_SERIAL_NAVMAN policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_USB_SERIAL_PL2303 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_USB_SERIAL_OTI6858 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_USB_SERIAL_QCAUX policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_USB_SERIAL_QUALCOMM policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_USB_SERIAL_SPCP8X5 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_USB_SERIAL_SAFE policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_USB_SERIAL_SAFE_PADDED policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n'}> +CONFIG_USB_SERIAL_SIERRAWIRELESS policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_USB_SERIAL_SYMBOL policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_USB_SERIAL_TI policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_USB_SERIAL_CYBERJACK policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_USB_SERIAL_XIRCOM policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_USB_SERIAL_OPTION policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_USB_SERIAL_OMNINET policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_USB_SERIAL_OPTICON policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_USB_SERIAL_XSENS_MT policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_USB_SERIAL_WISHBONE policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_USB_SERIAL_SSU100 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_USB_SERIAL_QT2 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_USB_SERIAL_UPD78F0730 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_USB_SERIAL_DEBUG policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_USB_SERIAL_KEYSPAN policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +# +CONFIG_USB_SERIAL_DEBUG note + +# Menu: Device Drivers >> USB support >> Support for Host-side USB >> USB/IP support +CONFIG_USBIP_CORE policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_USBIP_VHCI_HCD policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_USBIP_VHCI_HC_PORTS policy<{'amd64': '8', 'arm64': '8', 'armhf': '8', 'ppc64el': '8'}> +CONFIG_USBIP_VHCI_NR_HCS policy<{'amd64': '1', 'arm64': '1', 'armhf': '1', 'ppc64el': '1'}> +CONFIG_USBIP_HOST policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_USBIP_VUDC policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_USBIP_DEBUG policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n'}> + +# Menu: Device Drivers >> USB support >> Support for Host-side USB >> xHCI HCD (USB 3.0) support +CONFIG_USB_XHCI_HCD policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_USB_XHCI_DBGCAP policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_USB_XHCI_PCI_RENESAS policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_USB_XHCI_PLATFORM policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_USB_XHCI_HISTB policy<{'arm64': 'm', 'armhf': 'm'}> +CONFIG_USB_XHCI_MTK policy<{'arm64': 'm', 'armhf': 'm'}> +CONFIG_USB_XHCI_MVEBU policy<{'arm64': 'm', 'armhf': 'm'}> +CONFIG_USB_XHCI_RCAR policy<{'arm64': 'm', 'armhf': 'm'}> +CONFIG_USB_XHCI_TEGRA policy<{'armhf-generic': 'm'}> +# +CONFIG_USB_XHCI_HCD mark note flag +CONFIG_USB_XHCI_DBGCAP note + +# Menu: Device Drivers >> USB support >> USB Gadget Support +CONFIG_USB_GADGET policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'y', 'ppc64el': 'm'}> +CONFIG_USB_GADGET_DEBUG policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n'}> +CONFIG_USB_GADGET_DEBUG_FILES policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n'}> +CONFIG_USB_GADGET_DEBUG_FS policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n'}> +CONFIG_USB_GADGET_VBUS_DRAW policy<{'amd64': '2', 'arm64': '2', 'armhf': '2', 'ppc64el': '2'}> +CONFIG_USB_GADGET_STORAGE_NUM_BUFFERS policy<{'amd64': '2', 'arm64': '2', 'armhf': '2', 'ppc64el': '2'}> +CONFIG_U_SERIAL_CONSOLE policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> + +# Menu: Device Drivers >> USB support >> USB Gadget Support >> USB Gadget functions configurable through configfs +CONFIG_USB_CONFIGFS policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_USB_CONFIGFS_SERIAL policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_USB_CONFIGFS_ACM policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_USB_CONFIGFS_OBEX policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_USB_CONFIGFS_NCM policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_USB_CONFIGFS_ECM policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_USB_CONFIGFS_ECM_SUBSET policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_USB_CONFIGFS_RNDIS policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_USB_CONFIGFS_EEM policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_USB_CONFIGFS_PHONET policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_USB_CONFIGFS_MASS_STORAGE policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_USB_CONFIGFS_F_LB_SS policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_USB_CONFIGFS_F_FS policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_USB_CONFIGFS_F_UAC1 policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_USB_CONFIGFS_F_UAC1_LEGACY policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_USB_CONFIGFS_F_UAC2 policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_USB_CONFIGFS_F_MIDI policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_USB_CONFIGFS_F_HID policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_USB_CONFIGFS_F_UVC policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_USB_CONFIGFS_F_PRINTER policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_USB_CONFIGFS_F_TCM policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> + +# Menu: Device Drivers >> USB support >> USB Gadget Support >> USB Gadget precomposed configurations +CONFIG_USB_ZERO policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_USB_AUDIO policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_GADGET_UAC1 policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_GADGET_UAC1_LEGACY policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n'}> +CONFIG_USB_ETH policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_USB_ETH_RNDIS policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_USB_ETH_EEM policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_USB_G_NCM policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_USB_GADGETFS policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_USB_MASS_STORAGE policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_USB_GADGET_TARGET policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_USB_G_SERIAL policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_USB_MIDI_GADGET policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_USB_G_PRINTER policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_USB_CDC_COMPOSITE policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_USB_G_NOKIA policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_USB_G_ACM_MS policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_USB_G_MULTI policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'm', 'ppc64el': 'n'}> +CONFIG_USB_G_MULTI_RNDIS policy<{'armhf': 'y'}> +CONFIG_USB_G_MULTI_CDC policy<{'armhf': 'y'}> +CONFIG_USB_G_HID policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_USB_G_DBGP policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_USB_G_WEBCAM policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_USB_RAW_GADGET policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> + +# Menu: Device Drivers >> USB support >> USB Gadget Support >> USB Gadget precomposed configurations >> EHCI Debug Device mode +CONFIG_USB_G_DBGP_PRINTK policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n'}> +CONFIG_USB_G_DBGP_SERIAL policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> + +# Menu: Device Drivers >> USB support >> USB Gadget Support >> USB Gadget precomposed configurations >> Function Filesystem +CONFIG_USB_FUNCTIONFS policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_USB_FUNCTIONFS_ETH policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_USB_FUNCTIONFS_RNDIS policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_USB_FUNCTIONFS_GENERIC policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> + +# Menu: Device Drivers >> USB support >> USB Gadget Support >> USB Peripheral Controller +CONFIG_USB_FSL_USB2 policy<{'arm64': 'm', 'armhf-generic': 'm'}> +CONFIG_USB_FUSB300 policy<{'armhf-generic': 'm'}> +CONFIG_USB_FOTG210_UDC policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_USB_GR_UDC policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_USB_R8A66597 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_USB_RENESAS_USBHS_UDC policy<{'arm64': 'm', 'armhf': 'm'}> +CONFIG_USB_RENESAS_USB3 policy<{'arm64': 'm', 'armhf': 'm'}> +CONFIG_USB_PXA27X policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_USB_MV_UDC policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_USB_MV_U3D policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_USB_SNP_UDC_PLAT policy<{'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_USB_M66592 policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n'}> +CONFIG_USB_BDC_UDC policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_USB_AMD5536UDC policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_USB_NET2272 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_USB_NET2272_DMA policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_USB_NET2280 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_USB_GOKU policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_USB_EG20T policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_USB_GADGET_XILINX policy<{'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_USB_MAX3420_UDC policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_USB_TEGRA_XUDC policy<{'armhf-generic': 'm'}> +CONFIG_USB_ASPEED_VHUB policy<{'armhf': 'm'}> +CONFIG_USB_DUMMY_HCD policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n'}> +# +CONFIG_USB_M66592 note +CONFIG_USB_DUMMY_HCD flag + +# Menu: Device Drivers >> USB support >> USB Physical Layer drivers +CONFIG_NOP_USB_XCEIV policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'y', 'ppc64el': 'm'}> +CONFIG_AM335X_PHY_USB policy<{'armhf': 'm'}> +CONFIG_TWL6030_USB policy<{'armhf': 'm'}> +CONFIG_USB_GPIO_VBUS policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_TAHVO_USB policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_TAHVO_USB_HOST_BY_DEFAULT policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_USB_ISP1301 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_USB_MXS_PHY policy<{'arm64': 'y', 'armhf-generic': 'y'}> +CONFIG_USB_TEGRA_PHY policy<{'armhf-generic': 'm'}> +CONFIG_USB_ULPI policy<{'arm64': 'y', 'armhf': 'y'}> +# +CONFIG_NOP_USB_XCEIV note + +# Menu: Device Drivers >> USB support >> USB Type-C Support +CONFIG_TYPEC policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_TYPEC_UCSI policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_UCSI_CCG policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_UCSI_ACPI policy<{'amd64': 'm', 'arm64': 'm'}> +CONFIG_TYPEC_HD3SS3220 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_TYPEC_TPS6598X policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> + +# Menu: Device Drivers >> USB support >> USB Type-C Support >> USB Type-C Alternate Mode drivers +CONFIG_TYPEC_DP_ALTMODE policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_TYPEC_NVIDIA_ALTMODE policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> + +# Menu: Device Drivers >> USB support >> USB Type-C Support >> USB Type-C Multiplexer/DeMultiplexer Switch support +CONFIG_TYPEC_MUX_PI3USB30532 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_TYPEC_MUX_INTEL_PMC policy<{'amd64': 'm'}> + +# Menu: Device Drivers >> USB support >> USB Type-C Support >> USB Type-C Port Controller Manager +CONFIG_TYPEC_TCPM policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_TYPEC_TCPCI policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_TYPEC_RT1711H policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_TYPEC_FUSB302 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_TYPEC_WCOVE policy<{'amd64': 'n'}> + +# Menu: Device Drivers >> Userspace I/O drivers +CONFIG_UIO policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_UIO_CIF policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'n'}> +CONFIG_UIO_PDRV_GENIRQ policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'n'}> +CONFIG_UIO_DMEM_GENIRQ policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'n'}> +CONFIG_UIO_AEC policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'n'}> +CONFIG_UIO_SERCOS3 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'n'}> +CONFIG_UIO_PCI_GENERIC policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'n'}> +CONFIG_UIO_NETX policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'n'}> +CONFIG_UIO_FSL_ELBC_GPCM policy<{'ppc64el': 'm'}> +CONFIG_UIO_FSL_ELBC_GPCM_NETX5152 policy<{'ppc64el': 'n'}> +CONFIG_UIO_PRUSS policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'n'}> +CONFIG_UIO_MF624 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'n'}> +CONFIG_UIO_HV_GENERIC policy<{'amd64': 'm'}> + +# Menu: Device Drivers >> VFIO Non-Privileged userspace driver framework +CONFIG_VFIO policy<{'amd64': 'y', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'y', 's390x': 'm'}> +CONFIG_VFIO_NOIOMMU policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_VFIO_PCI policy<{'amd64': 'y', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'y', 's390x': 'm'}> +CONFIG_VFIO_PCI_VGA policy<{'amd64': 'y'}> +CONFIG_VFIO_PCI_IGD policy<{'amd64': 'y'}> +CONFIG_VFIO_MDEV policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_VFIO_MDEV_DEVICE policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +# +CONFIG_VFIO marknote +CONFIG_VFIO_PCI marknote + +# Menu: Device Drivers >> VFIO Non-Privileged userspace driver framework >> VFIO support for platform devices +CONFIG_VFIO_PLATFORM policy<{'arm64': 'm', 'armhf': 'm'}> +CONFIG_VFIO_AMBA policy<{'arm64': 'm', 'armhf': 'm'}> +CONFIG_VFIO_PLATFORM_CALXEDAXGMAC_RESET policy<{'arm64': 'm', 'armhf': 'm'}> +CONFIG_VFIO_PLATFORM_AMDXGBE_RESET policy<{'arm64': 'm', 'armhf': 'm'}> +CONFIG_VFIO_PLATFORM_BCMFLEXRM_RESET policy<{'arm64': 'm'}> + +# Menu: Device Drivers >> VHOST drivers +CONFIG_VHOST_MENU policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_VHOST_NET policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_VHOST_SCSI policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_VHOST_VSOCK policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_VHOST_VDPA policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_VHOST_CROSS_ENDIAN_LEGACY policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n', 's390x': 'n'}> + +# Menu: Device Drivers >> VME bridge support +CONFIG_VME_BUS policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'n'}> +CONFIG_VME_CA91CX42 policy<{'amd64': 'm'}> +CONFIG_VME_TSI148 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_VME_FAKE policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_VMIVME_7805 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_VME_USER policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> + +# Menu: Device Drivers >> Virtio drivers +CONFIG_VIRTIO_MENU policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_VIRTIO_PCI policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_VIRTIO_PCI_LEGACY policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_VIRTIO_VDPA policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_VIRTIO_PMEM policy<{'amd64': 'm', 'arm64': 'm', 'armhf-generic-lpae': 'm', 'ppc64el': 'm'}> +CONFIG_VIRTIO_BALLOON policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_VIRTIO_MEM policy<{'amd64': 'm'}> +CONFIG_VIRTIO_INPUT policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_VIRTIO_MMIO policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'n'}> +CONFIG_VIRTIO_MMIO_CMDLINE_DEVICES policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +# +CONFIG_VIRTIO_PCI flag +CONFIG_VIRTIO_MMIO note + +# Menu: Device Drivers >> Virtualization drivers +CONFIG_VIRT_DRIVERS policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_VBOXGUEST policy<{'amd64': 'm'}> + +# Menu: Device Drivers >> Voltage and Current Regulator Support +CONFIG_REGULATOR policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'n'}> +CONFIG_REGULATOR_DEBUG policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n'}> +CONFIG_REGULATOR_FIXED_VOLTAGE policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'y', 'ppc64el': 'm'}> +CONFIG_REGULATOR_VIRTUAL_CONSUMER policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_REGULATOR_USERSPACE_CONSUMER policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_REGULATOR_88PG86X policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_REGULATOR_88PM800 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_REGULATOR_88PM8607 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_REGULATOR_ACT8865 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_REGULATOR_ACT8945A policy<{'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_REGULATOR_AD5398 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_REGULATOR_ANATOP policy<{'arm64': 'm', 'armhf-generic': 'm'}> +CONFIG_REGULATOR_AAT2870 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_REGULATOR_AB3100 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_REGULATOR_ARIZONA_LDO1 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_REGULATOR_ARIZONA_MICSUPP policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_REGULATOR_AS3711 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_REGULATOR_AS3722 policy<{'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_REGULATOR_AXP20X policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_REGULATOR_BCM590XX policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_REGULATOR_BD70528 policy<{'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_REGULATOR_BD71828 policy<{'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_REGULATOR_BD718XX policy<{'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_REGULATOR_BD9571MWV policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_REGULATOR_CPCAP policy<{'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_REGULATOR_DA903X policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_REGULATOR_DA9052 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_REGULATOR_DA9055 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_REGULATOR_DA9062 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_REGULATOR_DA9063 policy<{'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_REGULATOR_DA9210 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_REGULATOR_DA9211 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_REGULATOR_FAN53555 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_REGULATOR_GPIO policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_REGULATOR_HI6421 policy<{'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_REGULATOR_HI6421V530 policy<{'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_REGULATOR_HI655X policy<{'arm64': 'm', 'armhf': 'm'}> +CONFIG_REGULATOR_ISL9305 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_REGULATOR_ISL6271A policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_REGULATOR_LM363X policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_REGULATOR_LOCHNAGAR policy<{'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_REGULATOR_LP3971 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_REGULATOR_LP3972 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_REGULATOR_LP872X policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_REGULATOR_LP873X policy<{'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_REGULATOR_LP8755 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_REGULATOR_LP87565 policy<{'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_REGULATOR_LP8788 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_REGULATOR_LTC3589 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_REGULATOR_LTC3676 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_REGULATOR_MAX14577 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_REGULATOR_MAX1586 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_REGULATOR_MAX77620 policy<{'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_REGULATOR_MAX77650 policy<{'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_REGULATOR_MAX8649 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_REGULATOR_MAX8660 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_REGULATOR_MAX8907 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_REGULATOR_MAX8925 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_REGULATOR_MAX8952 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_REGULATOR_MAX8973 policy<{'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_REGULATOR_MAX8997 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_REGULATOR_MAX8998 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_REGULATOR_MAX77686 policy<{'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_REGULATOR_MAX77693 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_REGULATOR_MAX77802 policy<{'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_REGULATOR_MAX77826 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_REGULATOR_MC13783 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_REGULATOR_MC13892 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_REGULATOR_MCP16502 policy<{'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_REGULATOR_MP5416 policy<{'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_REGULATOR_MP8859 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_REGULATOR_MP886X policy<{'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_REGULATOR_MPQ7920 policy<{'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_REGULATOR_MT6311 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_REGULATOR_MT6323 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_REGULATOR_MT6358 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_REGULATOR_MT6380 policy<{'arm64': 'm', 'armhf': 'm'}> +CONFIG_REGULATOR_MT6397 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_REGULATOR_PALMAS policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_REGULATOR_PBIAS policy<{'armhf': 'm'}> +CONFIG_REGULATOR_PCAP policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_REGULATOR_PCF50633 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_REGULATOR_PFUZE100 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_REGULATOR_PV88060 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_REGULATOR_PV88080 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_REGULATOR_PV88090 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_REGULATOR_PWM policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_REGULATOR_QCOM_RPM policy<{'arm64': 'm', 'armhf': 'm'}> +CONFIG_REGULATOR_QCOM_RPMH policy<{'arm64': 'm'}> +CONFIG_REGULATOR_QCOM_SMD_RPM policy<{'arm64': 'm', 'armhf': 'm'}> +CONFIG_REGULATOR_QCOM_SPMI policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_REGULATOR_RC5T583 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_REGULATOR_RK808 policy<{'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_REGULATOR_RN5T618 policy<{'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_REGULATOR_RT5033 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_REGULATOR_S2MPA01 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_REGULATOR_S2MPS11 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_REGULATOR_S5M8767 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_REGULATOR_SC2731 policy<{'arm64': 'm'}> +CONFIG_REGULATOR_SKY81452 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_REGULATOR_SLG51000 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_REGULATOR_STPMIC1 policy<{'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_REGULATOR_TI_ABB policy<{'armhf': 'y'}> +CONFIG_REGULATOR_SY8106A policy<{'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_REGULATOR_SY8824X policy<{'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_REGULATOR_TPS51632 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_REGULATOR_TPS6105X policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_REGULATOR_TPS62360 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_REGULATOR_TPS65023 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_REGULATOR_TPS6507X policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_REGULATOR_TPS65086 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_REGULATOR_TPS65090 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_REGULATOR_TPS65132 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_REGULATOR_TPS65217 policy<{'arm64': 'm', 'armhf': 'y'}> +CONFIG_REGULATOR_TPS65218 policy<{'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_REGULATOR_TPS6524X policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_REGULATOR_TPS6586X policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_REGULATOR_TPS65910 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_REGULATOR_TPS65912 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_REGULATOR_TPS80031 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_REGULATOR_TWL4030 policy<{'amd64': 'm', 'arm64': 'm', 'armhf-generic': 'y', 'armhf-generic-lpae': 'm', 'ppc64el': 'm'}> +CONFIG_REGULATOR_UNIPHIER policy<{'armhf': 'm'}> +CONFIG_REGULATOR_VCTRL policy<{'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_REGULATOR_VEXPRESS policy<{'arm64': 'm', 'armhf': 'm'}> +CONFIG_REGULATOR_VQMMC_IPQ4019 policy<{'arm64': 'm', 'armhf': 'm'}> +CONFIG_REGULATOR_WM831X policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_REGULATOR_WM8350 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_REGULATOR_WM8400 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_REGULATOR_WM8994 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +# +CONFIG_REGULATOR_FIXED_VOLTAGE note +CONFIG_REGULATOR_TWL4030 mark note +CONFIG_REGULATOR_TPS65217 mark note + +# Menu: Device Drivers >> Watchdog Timer Support +CONFIG_WATCHDOG policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_WATCHDOG_CORE policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_WATCHDOG_NOWAYOUT policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n', 's390x': 'n'}> +CONFIG_WATCHDOG_HANDLE_BOOT_ENABLED policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_WATCHDOG_OPEN_TIMEOUT policy<{'amd64': '0', 'arm64': '0', 'armhf': '0', 'ppc64el': '0', 's390x': '0'}> +CONFIG_WATCHDOG_SYSFS policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_SOFT_WATCHDOG policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_SOFT_WATCHDOG_PRETIMEOUT policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_BD70528_WATCHDOG policy<{'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_DA9052_WATCHDOG policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_DA9055_WATCHDOG policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_DA9063_WATCHDOG policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_DA9062_WATCHDOG policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_GPIO_WATCHDOG policy<{'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_MENF21BMC_WATCHDOG policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_MENZ069_WATCHDOG policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_WDAT_WDT policy<{'amd64': 'm', 'arm64': 'm'}> +CONFIG_WM831X_WATCHDOG policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_WM8350_WATCHDOG policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_XILINX_WATCHDOG policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'n'}> +CONFIG_ZIIRAVE_WATCHDOG policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'n'}> +CONFIG_RAVE_SP_WATCHDOG policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_MLX_WDT policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm'}> +CONFIG_ARM_SP805_WATCHDOG policy<{'arm64': 'm', 'armhf': 'm'}> +CONFIG_ARM_SBSA_WATCHDOG policy<{'arm64': 'm'}> +CONFIG_ARMADA_37XX_WATCHDOG policy<{'arm64': 'm', 'armhf': 'm'}> +CONFIG_CADENCE_WATCHDOG policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'n'}> +CONFIG_FTWDT010_WATCHDOG policy<{'armhf': 'm'}> +CONFIG_S3C2410_WATCHDOG policy<{'armhf': 'm'}> +CONFIG_DW_WATCHDOG policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'n'}> +CONFIG_OMAP_WATCHDOG policy<{'armhf': 'm'}> +CONFIG_K3_RTI_WATCHDOG policy<{'arm64': 'm'}> +CONFIG_ORION_WATCHDOG policy<{'armhf': 'm'}> +CONFIG_RN5T618_WATCHDOG policy<{'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SUNXI_WATCHDOG policy<{'arm64': 'm'}> +CONFIG_NPCM7XX_WATCHDOG policy<{'armhf': 'y'}> +CONFIG_TWL4030_WATCHDOG policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_TS4800_WATCHDOG policy<{'armhf-generic': 'm'}> +CONFIG_MAX63XX_WATCHDOG policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'n'}> +CONFIG_MAX77620_WATCHDOG policy<{'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_IMX2_WDT policy<{'arm64': 'm', 'armhf-generic': 'm'}> +CONFIG_IMX_SC_WDT policy<{'arm64': 'm', 'armhf-generic': 'm'}> +CONFIG_IMX7ULP_WDT policy<{'arm64': 'm', 'armhf-generic': 'm'}> +CONFIG_RETU_WATCHDOG policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_TEGRA_WATCHDOG policy<{'armhf-generic': 'm'}> +CONFIG_QCOM_WDT policy<{'arm64': 'm', 'armhf': 'm'}> +CONFIG_MESON_GXBB_WATCHDOG policy<{'arm64': 'm', 'armhf': 'm'}> +CONFIG_MESON_WATCHDOG policy<{'arm64': 'm', 'armhf': 'm'}> +CONFIG_MEDIATEK_WATCHDOG policy<{'arm64': 'm', 'armhf': 'm'}> +CONFIG_ARM_SMC_WATCHDOG policy<{'arm64': 'm', 'armhf': 'm'}> +CONFIG_RENESAS_WDT policy<{'arm64': 'm', 'armhf': 'm'}> +CONFIG_RENESAS_RZAWDT policy<{'arm64': 'm', 'armhf': 'm'}> +CONFIG_ASPEED_WATCHDOG policy<{'armhf': 'y'}> +CONFIG_STPMIC1_WATCHDOG policy<{'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_UNIPHIER_WATCHDOG policy<{'armhf': 'm'}> +CONFIG_RTD119X_WATCHDOG policy<{'arm64': 'y', 'armhf': 'y'}> +CONFIG_SPRD_WATCHDOG policy<{'arm64': 'm'}> +CONFIG_PM8916_WATCHDOG policy<{'arm64': 'm', 'armhf': 'm'}> +CONFIG_ACQUIRE_WDT policy<{'amd64': 'm'}> +CONFIG_ADVANTECH_WDT policy<{'amd64': 'm'}> +CONFIG_ALIM1535_WDT policy<{'amd64': 'm'}> +CONFIG_ALIM7101_WDT policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'n'}> +CONFIG_EBC_C384_WDT policy<{'amd64': 'm'}> +CONFIG_F71808E_WDT policy<{'amd64': 'm'}> +CONFIG_SP5100_TCO policy<{'amd64': 'm'}> +CONFIG_SBC_FITPC2_WATCHDOG policy<{'amd64': 'm'}> +CONFIG_EUROTECH_WDT policy<{'amd64': 'm'}> +CONFIG_IB700_WDT policy<{'amd64': 'm'}> +CONFIG_IBMASR policy<{'amd64': 'm'}> +CONFIG_WAFER_WDT policy<{'amd64': 'm'}> +CONFIG_I6300ESB_WDT policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'n'}> +CONFIG_IE6XX_WDT policy<{'amd64': 'm'}> +CONFIG_ITCO_WDT policy<{'amd64': 'm'}> +CONFIG_ITCO_VENDOR_SUPPORT policy<{'amd64': 'y'}> +CONFIG_IT8712F_WDT policy<{'amd64': 'm'}> +CONFIG_IT87_WDT policy<{'amd64': 'm'}> +CONFIG_HP_WATCHDOG policy<{'amd64': 'm'}> +CONFIG_HPWDT_NMI_DECODING policy<{'amd64': 'y'}> +CONFIG_KEMPLD_WDT policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_SC1200_WDT policy<{'amd64': 'm'}> +CONFIG_PC87413_WDT policy<{'amd64': 'm'}> +CONFIG_NV_TCO policy<{'amd64': 'm'}> +CONFIG_60XX_WDT policy<{'amd64': 'm'}> +CONFIG_CPU5_WDT policy<{'amd64': 'm'}> +CONFIG_SMSC_SCH311X_WDT policy<{'amd64': 'm'}> +CONFIG_SMSC37B787_WDT policy<{'amd64': 'm'}> +CONFIG_TQMX86_WDT policy<{'amd64': 'm'}> +CONFIG_VIA_WDT policy<{'amd64': 'm'}> +CONFIG_W83627HF_WDT policy<{'amd64': 'm'}> +CONFIG_W83877F_WDT policy<{'amd64': 'm'}> +CONFIG_W83977F_WDT policy<{'amd64': 'm'}> +CONFIG_MACHZ_WDT policy<{'amd64': 'm'}> +CONFIG_SBC_EPX_C3_WATCHDOG policy<{'amd64': 'm'}> +CONFIG_INTEL_MEI_WDT policy<{'amd64': 'm'}> +CONFIG_NI903X_WDT policy<{'amd64': 'm'}> +CONFIG_NIC7018_WDT policy<{'amd64': 'm'}> +CONFIG_BCM2835_WDT policy<{'arm64': 'm'}> +CONFIG_BCM7038_WDT policy<{'arm64': 'm'}> +CONFIG_MEN_A21_WDT policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_WATCHDOG_RTAS policy<{'ppc64el': 'm'}> +CONFIG_DIAG288_WATCHDOG policy<{'s390x': 'm'}> +CONFIG_XEN_WDT policy<{'amd64': 'm', 'arm64': 'm'}> +CONFIG_PCIPCWATCHDOG policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'n'}> +CONFIG_WDTPCI policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'n'}> +CONFIG_USBPCWATCHDOG policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> + +# Menu: Device Drivers >> Watchdog Timer Support >> Enable watchdog pretimeout governors +CONFIG_WATCHDOG_PRETIMEOUT_GOV policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_WATCHDOG_PRETIMEOUT_GOV_NOOP policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_WATCHDOG_PRETIMEOUT_GOV_PANIC policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> + +# Menu: Device Drivers >> Watchdog Timer Support >> Enable watchdog pretimeout governors >> Default Watchdog Pretimeout Governor +CONFIG_WATCHDOG_PRETIMEOUT_DEFAULT_GOV_NOOP policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_WATCHDOG_PRETIMEOUT_DEFAULT_GOV_PANIC policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n', 's390x': 'n'}> + +# Menu: Device Drivers >> X86 Platform Specific Device Drivers +CONFIG_X86_PLATFORM_DEVICES policy<{'amd64': 'y'}> +CONFIG_ACERHDF policy<{'amd64': 'm'}> +CONFIG_ACER_WIRELESS policy<{'amd64': 'm'}> +CONFIG_APPLE_GMUX policy<{'amd64': 'm'}> +CONFIG_ASUS_LAPTOP policy<{'amd64': 'm'}> +CONFIG_ASUS_WIRELESS policy<{'amd64': 'm'}> +CONFIG_EEEPC_LAPTOP policy<{'amd64': 'm'}> +CONFIG_DCDBAS policy<{'amd64': 'm'}> +CONFIG_DELL_RBTN policy<{'amd64': 'm'}> +CONFIG_DELL_RBU policy<{'amd64': 'm'}> +CONFIG_DELL_SMO8800 policy<{'amd64': 'm'}> +CONFIG_AMILO_RFKILL policy<{'amd64': 'm'}> +CONFIG_DELL_UART_BACKLIGHT policy<{'amd64': 'm'}> +CONFIG_FUJITSU_LAPTOP policy<{'amd64': 'm'}> +CONFIG_FUJITSU_TABLET policy<{'amd64': 'm'}> +CONFIG_GPD_POCKET_FAN policy<{'amd64': 'm'}> +CONFIG_HP_ACCEL policy<{'amd64': 'm'}> +CONFIG_HP_WIRELESS policy<{'amd64': 'm'}> +CONFIG_IBM_RTL policy<{'amd64': 'm'}> +CONFIG_SENSORS_HDAPS policy<{'amd64': 'm'}> +CONFIG_INTEL_CHT_INT33FE policy<{'amd64': 'm'}> +CONFIG_INTEL_HID_EVENT policy<{'amd64': 'm'}> +CONFIG_INTEL_INT0002_VGPIO policy<{'amd64': 'm'}> +CONFIG_INTEL_MENLOW policy<{'amd64': 'm'}> +CONFIG_INTEL_OAKTRAIL policy<{'amd64': 'm'}> +CONFIG_INTEL_VBTN policy<{'amd64': 'm'}> +CONFIG_SURFACE_3_BUTTON policy<{'amd64': 'm'}> +CONFIG_SURFACE_3_POWER_OPREGION policy<{'amd64': 'm'}> +CONFIG_SURFACE_PRO3_BUTTON policy<{'amd64': 'm'}> +CONFIG_MSI_LAPTOP policy<{'amd64': 'm'}> +CONFIG_PCENGINES_APU2 policy<{'amd64': 'm'}> +CONFIG_SAMSUNG_LAPTOP policy<{'amd64': 'm'}> +CONFIG_SAMSUNG_Q10 policy<{'amd64': 'm'}> +CONFIG_TOSHIBA_BT_RFKILL policy<{'amd64': 'm'}> +CONFIG_TOSHIBA_HAPS policy<{'amd64': 'm'}> +CONFIG_ACPI_CMPC policy<{'amd64': 'm'}> +CONFIG_COMPAL_LAPTOP policy<{'amd64': 'm'}> +CONFIG_PANASONIC_LAPTOP policy<{'amd64': 'm'}> +CONFIG_SONY_LAPTOP policy<{'amd64': 'm'}> +CONFIG_SONYPI_COMPAT policy<{'amd64': 'y'}> +CONFIG_SYSTEM76_ACPI policy<{'amd64': 'm'}> +CONFIG_TOPSTAR_LAPTOP policy<{'amd64': 'm'}> +CONFIG_I2C_MULTI_INSTANTIATE policy<{'amd64': 'm'}> +CONFIG_MLX_PLATFORM policy<{'amd64': 'm'}> +CONFIG_TOUCHSCREEN_DMI policy<{'amd64': 'y'}> +CONFIG_INTEL_IPS policy<{'amd64': 'm'}> +CONFIG_INTEL_RST policy<{'amd64': 'm'}> +CONFIG_INTEL_SMARTCONNECT policy<{'amd64': 'm'}> +CONFIG_INTEL_TURBO_MAX_3 policy<{'amd64': 'y'}> +CONFIG_INTEL_UNCORE_FREQ_CONTROL policy<{'amd64': 'm'}> +CONFIG_INTEL_BXTWC_PMIC_TMU policy<{'amd64': 'm'}> +CONFIG_INTEL_CHTDC_TI_PWRBTN policy<{'amd64': 'm'}> +CONFIG_INTEL_MFLD_THERMAL policy<{'amd64': 'm'}> +CONFIG_INTEL_MID_POWER_BUTTON policy<{'amd64': 'm'}> +CONFIG_INTEL_MRFLD_PWRBTN policy<{'amd64': 'm'}> +CONFIG_INTEL_PMC_CORE policy<{'amd64': 'y'}> +CONFIG_INTEL_PUNIT_IPC policy<{'amd64': 'm'}> +CONFIG_INTEL_SCU_PCI policy<{'amd64': 'y'}> +CONFIG_INTEL_SCU_PLATFORM policy<{'amd64': 'm'}> +CONFIG_INTEL_SCU_IPC_UTIL policy<{'amd64': 'm'}> +CONFIG_INTEL_TELEMETRY policy<{'amd64': 'm'}> + +# Menu: Device Drivers >> X86 Platform Specific Device Drivers >> Dell SMBIOS driver +CONFIG_DELL_SMBIOS policy<{'amd64': 'm'}> +CONFIG_DELL_SMBIOS_WMI policy<{'amd64': 'y'}> +CONFIG_DELL_SMBIOS_SMM policy<{'amd64': 'y'}> +CONFIG_DELL_LAPTOP policy<{'amd64': 'm'}> +CONFIG_DELL_WMI policy<{'amd64': 'm'}> + +# Menu: Device Drivers >> X86 Platform Specific Device Drivers >> Intel Speed Select Technology interface support +CONFIG_INTEL_SPEED_SELECT_INTERFACE policy<{'amd64': 'm'}> + +# Menu: Device Drivers >> X86 Platform Specific Device Drivers >> ThinkPad ACPI Laptop Extras +CONFIG_THINKPAD_ACPI policy<{'amd64': 'm'}> +CONFIG_THINKPAD_ACPI_ALSA_SUPPORT policy<{'amd64': 'y'}> +CONFIG_THINKPAD_ACPI_DEBUGFACILITIES policy<{'amd64': 'y'}> +CONFIG_THINKPAD_ACPI_DEBUG policy<{'amd64': 'n'}> +CONFIG_THINKPAD_ACPI_UNSAFE_LEDS policy<{'amd64': 'n'}> +CONFIG_THINKPAD_ACPI_VIDEO policy<{'amd64': 'y'}> +CONFIG_THINKPAD_ACPI_HOTKEY_POLL policy<{'amd64': 'y'}> + +# Menu: Device Drivers >> X86 Platform Specific Device Drivers >> WMI +CONFIG_ACPI_WMI policy<{'amd64': 'm'}> +CONFIG_WMI_BMOF policy<{'amd64': 'm'}> +CONFIG_ALIENWARE_WMI policy<{'amd64': 'm'}> +CONFIG_HUAWEI_WMI policy<{'amd64': 'm'}> +CONFIG_INTEL_WMI_SBL_FW_UPDATE policy<{'amd64': 'm'}> +CONFIG_INTEL_WMI_THUNDERBOLT policy<{'amd64': 'm'}> +CONFIG_MXM_WMI policy<{'amd64': 'm'}> +CONFIG_PEAQ_WMI policy<{'amd64': 'm'}> +CONFIG_XIAOMI_WMI policy<{'amd64': 'm'}> +CONFIG_ACER_WMI policy<{'amd64': 'm'}> +CONFIG_ASUS_WMI policy<{'amd64': 'm'}> +CONFIG_ASUS_NB_WMI policy<{'amd64': 'm'}> +CONFIG_EEEPC_WMI policy<{'amd64': 'm'}> +CONFIG_DELL_WMI_AIO policy<{'amd64': 'm'}> +CONFIG_DELL_WMI_LED policy<{'amd64': 'm'}> +CONFIG_HP_WMI policy<{'amd64': 'm'}> +CONFIG_IDEAPAD_LAPTOP policy<{'amd64': 'm'}> +CONFIG_SURFACE3_WMI policy<{'amd64': 'm'}> +CONFIG_MSI_WMI policy<{'amd64': 'm'}> +CONFIG_ACPI_TOSHIBA policy<{'amd64': 'm'}> +CONFIG_TOSHIBA_WMI policy<{'amd64': 'n'}> +CONFIG_LG_LAPTOP policy<{'amd64': 'm'}> + +# Menu: Device Drivers >> Xen driver support +CONFIG_XEN_BALLOON policy<{'amd64': 'y', 'arm64': 'y'}> +CONFIG_XEN_BALLOON_MEMORY_HOTPLUG policy<{'amd64': 'y', 'arm64': 'y'}> +CONFIG_XEN_BALLOON_MEMORY_HOTPLUG_LIMIT policy<{'amd64': '512'}> +CONFIG_XEN_SCRUB_PAGES_DEFAULT policy<{'amd64': 'y', 'arm64': 'y'}> +CONFIG_XEN_DEV_EVTCHN policy<{'amd64': 'm', 'arm64': 'm'}> +CONFIG_XENFS policy<{'amd64': 'm', 'arm64': 'm'}> +CONFIG_XEN_COMPAT_XENFS policy<{'amd64': 'y', 'arm64': 'y'}> +CONFIG_XEN_SYS_HYPERVISOR policy<{'amd64': 'y', 'arm64': 'y'}> +CONFIG_XEN_GNTDEV policy<{'amd64': 'm', 'arm64': 'm'}> +CONFIG_XEN_GNTDEV_DMABUF policy<{'amd64': 'y', 'arm64': 'y'}> +CONFIG_XEN_GRANT_DEV_ALLOC policy<{'amd64': 'm', 'arm64': 'm'}> +CONFIG_XEN_GRANT_DMA_ALLOC policy<{'amd64': 'y', 'arm64': 'y'}> +CONFIG_XEN_PVCALLS_FRONTEND policy<{'amd64': 'm', 'arm64': 'm'}> +CONFIG_XEN_ACPI_PROCESSOR policy<{'amd64': 'y'}> +CONFIG_XEN_MCE_LOG policy<{'amd64': 'y'}> +CONFIG_XEN_SYMS policy<{'amd64': 'y'}> +# +CONFIG_XEN_ACPI_PROCESSOR mark note + +# Menu: Device Drivers >> Xen driver support >> Backend driver support +CONFIG_XEN_BACKEND policy<{'amd64': 'y', 'arm64': 'y'}> +CONFIG_XEN_PCIDEV_BACKEND policy<{'amd64': 'm'}> +CONFIG_XEN_PVCALLS_BACKEND policy<{'amd64': 'n', 'arm64': 'n'}> +CONFIG_XEN_SCSI_BACKEND policy<{'amd64': 'm', 'arm64': 'm'}> + +# Menu: Device Drivers >> vDPA drivers +CONFIG_VDPA policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'n'}> +CONFIG_VDPA_SIM policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_IFCVF policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> + +# Menu: Dump support +# + +# Menu: Dump support >> Architecture: s390 + +# Menu: Enable loadable module support +CONFIG_MODULES policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_MODULE_FORCE_LOAD policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n', 's390x': 'n'}> +CONFIG_MODULE_UNLOAD policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_MODULE_FORCE_UNLOAD policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n', 's390x': 'n'}> +CONFIG_MODVERSIONS policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_MODULE_SRCVERSION_ALL policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_MODULE_COMPRESS policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n', 's390x': 'n'}> +CONFIG_MODULE_ALLOW_MISSING_NAMESPACE_IMPORTS policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n', 's390x': 'n'}> +CONFIG_UNUSED_SYMBOLS policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +# +CONFIG_MODVERSIONS mark note + +# Menu: Enable loadable module support >> Compression algorithm + +# Menu: Enable loadable module support >> Module signature verification +CONFIG_MODULE_SIG policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_MODULE_SIG_FORCE policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n', 's390x': 'n'}> +CONFIG_MODULE_SIG_ALL policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> + +# Menu: Enable loadable module support >> Module signature verification >> Which hash algorithm should modules be signed with? +CONFIG_MODULE_SIG_SHA1 policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n', 's390x': 'n'}> +CONFIG_MODULE_SIG_SHA224 policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n', 's390x': 'n'}> +CONFIG_MODULE_SIG_SHA256 policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n', 's390x': 'n'}> +CONFIG_MODULE_SIG_SHA384 policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n', 's390x': 'n'}> +CONFIG_MODULE_SIG_SHA512 policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> + +# Menu: Enable the block layer +CONFIG_BLOCK policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_BLK_DEV_BSG policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_BLK_DEV_BSGLIB policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_BLK_DEV_INTEGRITY policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_BLK_DEV_ZONED policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_BLK_DEV_THROTTLING policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_BLK_DEV_THROTTLING_LOW policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n', 's390x': 'n'}> +CONFIG_BLK_CMDLINE_PARSER policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_BLK_WBT policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_BLK_CGROUP_IOLATENCY policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n', 's390x': 'n'}> +CONFIG_BLK_CGROUP_IOCOST policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_BLK_WBT_MQ policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_BLK_DEBUG_FS policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_BLK_SED_OPAL policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_BLK_INLINE_ENCRYPTION policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_BLK_INLINE_ENCRYPTION_FALLBACK policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +# +CONFIG_BLK_DEV_THROTTLING note + +# Menu: Enable the block layer >> IO Schedulers +CONFIG_MQ_IOSCHED_DEADLINE policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_MQ_IOSCHED_KYBER policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_IOSCHED_BFQ policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_BFQ_GROUP_IOSCHED policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_BFQ_CGROUP_DEBUG policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n', 's390x': 'n'}> + +# Menu: Enable the block layer >> Partition Types + +# Menu: Enable the block layer >> Partition Types >> Advanced partition selection +CONFIG_PARTITION_ADVANCED policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_AIX_PARTITION policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'n'}> +CONFIG_OSF_PARTITION policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'n'}> +CONFIG_AMIGA_PARTITION policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'n'}> +CONFIG_ATARI_PARTITION policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'n'}> +CONFIG_IBM_PARTITION policy<{'s390x': 'y'}> +CONFIG_MAC_PARTITION policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'n'}> +CONFIG_LDM_PARTITION policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'n'}> +CONFIG_LDM_DEBUG policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n'}> +CONFIG_SGI_PARTITION policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'n'}> +CONFIG_ULTRIX_PARTITION policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'n'}> +CONFIG_SUN_PARTITION policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'n'}> +CONFIG_KARMA_PARTITION policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'n'}> +CONFIG_EFI_PARTITION policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_SYSV68_PARTITION policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'n'}> +CONFIG_CMDLINE_PARTITION policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'n'}> +# +CONFIG_PARTITION_ADVANCED flag + +# Menu: Enable the block layer >> Partition Types >> Advanced partition selection >> Acorn partition support +CONFIG_ACORN_PARTITION policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n', 's390x': 'n'}> + +# Menu: Enable the block layer >> Partition Types >> Advanced partition selection >> PC BIOS (MSDOS partition tables) support +CONFIG_MSDOS_PARTITION policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_BSD_DISKLABEL policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'n'}> +CONFIG_MINIX_SUBPARTITION policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'n'}> +CONFIG_SOLARIS_X86_PARTITION policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'n'}> +CONFIG_UNIXWARE_DISKLABEL policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'n'}> + +# Menu: Endianness selection +CONFIG_CPU_BIG_ENDIAN policy<{'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n', 's390x': 'y'}> +CONFIG_CPU_LITTLE_ENDIAN policy<{'arm64': 'y', 'ppc64el': 'y'}> + +# Menu: Endianness selection >> Architecture: powerpc + +# Menu: Executable file formats +CONFIG_BINFMT_ELF policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_BINFMT_ELF_FDPIC policy<{'armhf': 'y'}> +CONFIG_CORE_DUMP_DEFAULT_ELF_HEADERS policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_BINFMT_SCRIPT policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_BINFMT_MISC policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_COREDUMP policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +# +CONFIG_BINFMT_SCRIPT mark note + +# Menu: Executable file formats >> Kernel support for flat binaries +CONFIG_BINFMT_FLAT policy<{'armhf': 'y'}> +CONFIG_BINFMT_FLAT_OLD policy<{'armhf': 'y'}> +CONFIG_BINFMT_ZFLAT policy<{'armhf': 'y'}> +CONFIG_BINFMT_SHARED_FLAT policy<{'armhf': 'y'}> + +# Menu: File systems +CONFIG_VALIDATE_FS_PARSER policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_EXT2_FS policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n', 's390x': 'n'}> +CONFIG_EXT3_FS policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n', 's390x': 'n'}> +CONFIG_JBD2_DEBUG policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n', 's390x': 'n'}> +CONFIG_GFS2_FS policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_GFS2_FS_LOCKING_DLM policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_NILFS2_FS policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_ZONEFS_FS policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_FS_DAX policy<{'amd64': 'y', 'arm64': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_EXPORTFS_BLOCK_OPS policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_FILE_LOCKING policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_MANDATORY_FILE_LOCKING policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_FS_ENCRYPTION policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_FS_VERITY policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_FS_VERITY_DEBUG policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n', 's390x': 'n'}> +CONFIG_FS_VERITY_BUILTIN_SIGNATURES policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_DNOTIFY policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_INOTIFY_USER policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_FANOTIFY policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_FANOTIFY_ACCESS_PERMISSIONS policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_QUOTA_NETLINK_INTERFACE policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_AUTOFS4_FS policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'y'}> +CONFIG_AUTOFS_FS policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'y'}> +CONFIG_FUSE_FS policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_CUSE policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_VIRTIO_FS policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_SHIFT_FS policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_SHIFT_FS_POSIX_ACL policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_UNICODE policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_UNICODE_NORMALIZATION_SELFTEST policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n', 's390x': 'n'}> +# +CONFIG_EXT2_FS note +CONFIG_EXT3_FS note +CONFIG_FUSE_FS note flag + +# Menu: File systems >> Btrfs filesystem support +CONFIG_BTRFS_FS policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_BTRFS_FS_POSIX_ACL policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_BTRFS_FS_CHECK_INTEGRITY policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n', 's390x': 'n'}> +CONFIG_BTRFS_FS_RUN_SANITY_TESTS policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n', 's390x': 'n'}> +CONFIG_BTRFS_DEBUG policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n', 's390x': 'n'}> +CONFIG_BTRFS_ASSERT policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n', 's390x': 'n'}> +CONFIG_BTRFS_FS_REF_VERIFY policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n', 's390x': 'n'}> + +# Menu: File systems >> CD-ROM/DVD Filesystems +CONFIG_ISO9660_FS policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_JOLIET policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_ZISOFS policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_UDF_FS policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> + +# Menu: File systems >> Caches +CONFIG_CACHEFILES policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_CACHEFILES_DEBUG policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n', 's390x': 'n'}> +CONFIG_CACHEFILES_HISTOGRAM policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n', 's390x': 'n'}> + +# Menu: File systems >> Caches >> General filesystem local caching manager +CONFIG_FSCACHE policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_FSCACHE_STATS policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_FSCACHE_HISTOGRAM policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n', 's390x': 'n'}> +CONFIG_FSCACHE_DEBUG policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n', 's390x': 'n'}> +CONFIG_FSCACHE_OBJECT_LIST policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n', 's390x': 'n'}> + +# Menu: File systems >> DOS/FAT/EXFAT/NT Filesystems +CONFIG_MSDOS_FS policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_EXFAT_FS policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'n'}> +CONFIG_EXFAT_DEFAULT_IOCHARSET policy<{'amd64': '"utf8"', 'arm64': '"utf8"', 'armhf': '"utf8"', 'ppc64el': '"utf8"'}> +CONFIG_NTFS_FS policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_NTFS_DEBUG policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n', 's390x': 'n'}> +CONFIG_NTFS_RW policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n', 's390x': 'y'}> + +# Menu: File systems >> DOS/FAT/EXFAT/NT Filesystems >> VFAT (Windows-95) fs support +CONFIG_VFAT_FS policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_FAT_DEFAULT_CODEPAGE policy<{'amd64': '437', 'arm64': '437', 'armhf': '437', 'ppc64el': '437', 's390x': '437'}> +CONFIG_FAT_DEFAULT_IOCHARSET policy<{'amd64': '"iso8859-1"', 'arm64': '"iso8859-1"', 'armhf': '"iso8859-1"', 'ppc64el': '"iso8859-1"', 's390x': '"iso8859-1"'}> +CONFIG_FAT_DEFAULT_UTF8 policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n', 's390x': 'n'}> +# +CONFIG_VFAT_FS mark note + +# Menu: File systems >> Distributed Lock Manager (DLM) +CONFIG_DLM policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_DLM_DEBUG policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n', 's390x': 'n'}> + +# Menu: File systems >> F2FS filesystem support +CONFIG_F2FS_FS policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'n'}> +CONFIG_F2FS_STAT_FS policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_F2FS_FS_XATTR policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_F2FS_FS_POSIX_ACL policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_F2FS_FS_SECURITY policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_F2FS_CHECK_FS policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n'}> +CONFIG_F2FS_IO_TRACE policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n'}> +CONFIG_F2FS_FAULT_INJECTION policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n'}> + +# Menu: File systems >> F2FS filesystem support >> F2FS compression feature +CONFIG_F2FS_FS_COMPRESSION policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_F2FS_FS_LZO policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_F2FS_FS_LZ4 policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_F2FS_FS_ZSTD policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_F2FS_FS_LZORLE policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> + +# Menu: File systems >> JFS filesystem support +CONFIG_JFS_FS policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'n'}> +CONFIG_JFS_POSIX_ACL policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_JFS_SECURITY policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_JFS_DEBUG policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n'}> +CONFIG_JFS_STATISTICS policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> + +# Menu: File systems >> Miscellaneous filesystems +CONFIG_MISC_FILESYSTEMS policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_ORANGEFS_FS policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_ADFS_FS policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'n'}> +CONFIG_ADFS_FS_RW policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n'}> +CONFIG_AFFS_FS policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'n'}> +CONFIG_ECRYPT_FS policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_ECRYPT_FS_MESSAGING policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_HFS_FS policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'n'}> +CONFIG_HFSPLUS_FS policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'n'}> +CONFIG_BEFS_FS policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'n'}> +CONFIG_BEFS_DEBUG policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n'}> +CONFIG_BFS_FS policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'n'}> +CONFIG_EFS_FS policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'n'}> +CONFIG_CRAMFS policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'n'}> +CONFIG_CRAMFS_BLOCKDEV policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_CRAMFS_MTD policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_VXFS_FS policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'n'}> +CONFIG_MINIX_FS policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'n'}> +CONFIG_OMFS_FS policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'n'}> +CONFIG_HPFS_FS policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'n'}> +CONFIG_QNX4FS_FS policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'n'}> +CONFIG_QNX6FS_FS policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'n'}> +CONFIG_QNX6FS_DEBUG policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n'}> +CONFIG_ROMFS_FS policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'n'}> +CONFIG_SYSV_FS policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'n'}> +CONFIG_UFS_FS policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'n'}> +CONFIG_UFS_FS_WRITE policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n'}> +CONFIG_UFS_DEBUG policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n'}> +CONFIG_VBOXSF_FS policy<{'amd64': 'm'}> +# +CONFIG_ECRYPT_FS mark note + +# Menu: File systems >> Miscellaneous filesystems >> Aufs (Advanced multi layered unification filesystem) support +CONFIG_AUFS_BR_FUSE policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n', 's390x': 'n'}> +CONFIG_AUFS_BR_HFSPLUS policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_AUFS_BR_RAMFS policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n', 's390x': 'n'}> +CONFIG_AUFS_DEBUG policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n', 's390x': 'n'}> +CONFIG_AUFS_DIRREN policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_AUFS_EXPORT policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_AUFS_FHSM policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n', 's390x': 'n'}> +CONFIG_AUFS_FS policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_AUFS_HNOTIFY policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n', 's390x': 'n'}> +CONFIG_AUFS_RDU policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n', 's390x': 'n'}> +CONFIG_AUFS_SHWH policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n', 's390x': 'n'}> +CONFIG_AUFS_XATTR policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +# +CONFIG_AUFS_EXPORT note + +# Menu: File systems >> Miscellaneous filesystems >> Aufs (Advanced multi layered unification filesystem) support >> Maximum number of branches +CONFIG_AUFS_BRANCH_MAX_1023 policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n', 's390x': 'n'}> +CONFIG_AUFS_BRANCH_MAX_127 policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_AUFS_BRANCH_MAX_32767 policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n', 's390x': 'n'}> +CONFIG_AUFS_BRANCH_MAX_511 policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n', 's390x': 'n'}> + +# Menu: File systems >> Miscellaneous filesystems >> Aufs (Advanced multi layered unification filesystem) support >> method + +# Menu: File systems >> Miscellaneous filesystems >> Default pstore compression algorithm +CONFIG_PSTORE_DEFLATE_COMPRESS_DEFAULT policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> + +# Menu: File systems >> Miscellaneous filesystems >> EROFS filesystem support +CONFIG_EROFS_FS policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_EROFS_FS_DEBUG policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n', 's390x': 'n'}> +CONFIG_EROFS_FS_XATTR policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_EROFS_FS_POSIX_ACL policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_EROFS_FS_SECURITY policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_EROFS_FS_ZIP policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_EROFS_FS_CLUSTER_PAGE_LIMIT policy<{'amd64': '1', 'arm64': '1', 'armhf': '1', 'ppc64el': '1', 's390x': '1'}> + +# Menu: File systems >> Miscellaneous filesystems >> Journalling Flash File System v2 (JFFS2) support +CONFIG_JFFS2_FS policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_JFFS2_FS_DEBUG policy<{'amd64': '0', 'arm64': '0', 'armhf': '0', 'ppc64el': '0'}> +CONFIG_JFFS2_FS_WRITEBUFFER policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_JFFS2_FS_WBUF_VERIFY policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n'}> +CONFIG_JFFS2_SUMMARY policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n'}> +CONFIG_JFFS2_FS_XATTR policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_JFFS2_FS_POSIX_ACL policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_JFFS2_FS_SECURITY policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> + +# Menu: File systems >> Miscellaneous filesystems >> Journalling Flash File System v2 (JFFS2) support >> Advanced compression options for JFFS2 +CONFIG_JFFS2_COMPRESSION_OPTIONS policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_JFFS2_ZLIB policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_JFFS2_LZO policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_JFFS2_RTIME policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_JFFS2_RUBIN policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n'}> + +# Menu: File systems >> Miscellaneous filesystems >> Journalling Flash File System v2 (JFFS2) support >> Advanced compression options for JFFS2 >> JFFS2 default compression mode +CONFIG_JFFS2_CMODE_NONE policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n'}> +CONFIG_JFFS2_CMODE_PRIORITY policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n'}> +CONFIG_JFFS2_CMODE_SIZE policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n'}> +CONFIG_JFFS2_CMODE_FAVOURLZO policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> + +# Menu: File systems >> Miscellaneous filesystems >> Persistent store support +CONFIG_PSTORE policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'n'}> +CONFIG_PSTORE_DEFLATE_COMPRESS policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_PSTORE_LZO_COMPRESS policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n'}> +CONFIG_PSTORE_LZ4_COMPRESS policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n'}> +CONFIG_PSTORE_LZ4HC_COMPRESS policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n'}> +CONFIG_PSTORE_842_COMPRESS policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n'}> +CONFIG_PSTORE_ZSTD_COMPRESS policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n'}> +CONFIG_PSTORE_CONSOLE policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'y', 'ppc64el': 'n'}> +CONFIG_PSTORE_PMSG policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n'}> +CONFIG_PSTORE_FTRACE policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n'}> +CONFIG_PSTORE_RAM policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'y', 'ppc64el': 'm'}> + +# Menu: File systems >> Miscellaneous filesystems >> Persistent store support >> Log panic/oops to a block device +CONFIG_PSTORE_BLK policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_PSTORE_BLK_BLKDEV policy<{'amd64': '""', 'arm64': '""', 'armhf': '""', 'ppc64el': '""'}> +CONFIG_PSTORE_BLK_KMSG_SIZE policy<{'amd64': '64', 'arm64': '64', 'armhf': '64', 'ppc64el': '64'}> +CONFIG_PSTORE_BLK_MAX_REASON policy<{'amd64': '2', 'arm64': '2', 'armhf': '2', 'ppc64el': '2'}> +CONFIG_PSTORE_BLK_CONSOLE_SIZE policy<{'armhf': '64'}> + +# Menu: File systems >> Miscellaneous filesystems >> RomFS backing stores +CONFIG_ROMFS_BACKED_BY_BLOCK policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_ROMFS_BACKED_BY_MTD policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n'}> +CONFIG_ROMFS_BACKED_BY_BOTH policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n'}> + +# Menu: File systems >> Miscellaneous filesystems >> SquashFS 4.0 - Squashed file system support +CONFIG_SQUASHFS policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_SQUASHFS_XATTR policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_SQUASHFS_ZLIB policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_SQUASHFS_LZ4 policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_SQUASHFS_LZO policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_SQUASHFS_XZ policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_SQUASHFS_ZSTD policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_SQUASHFS_4K_DEVBLK_SIZE policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n', 's390x': 'n'}> +CONFIG_SQUASHFS_EMBEDDED policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n', 's390x': 'n'}> +CONFIG_SQUASHFS_FRAGMENT_CACHE_SIZE policy<{'amd64': '3', 'arm64': '3', 'armhf': '3', 'ppc64el': '3', 's390x': '3'}> +# +CONFIG_SQUASHFS_4K_DEVBLK_SIZE note +CONFIG_SQUASHFS mark note + +# Menu: File systems >> Miscellaneous filesystems >> SquashFS 4.0 - Squashed file system support >> Decompressor parallelisation options +CONFIG_SQUASHFS_DECOMP_SINGLE policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_SQUASHFS_DECOMP_MULTI policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n', 's390x': 'n'}> +CONFIG_SQUASHFS_DECOMP_MULTI_PERCPU policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n', 's390x': 'n'}> + +# Menu: File systems >> Miscellaneous filesystems >> SquashFS 4.0 - Squashed file system support >> File decompression options +CONFIG_SQUASHFS_FILE_CACHE policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n', 's390x': 'n'}> +CONFIG_SQUASHFS_FILE_DIRECT policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> + +# Menu: File systems >> Miscellaneous filesystems >> UBIFS file system support +CONFIG_UBIFS_FS policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_UBIFS_ATIME_SUPPORT policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n'}> +CONFIG_UBIFS_FS_XATTR policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_UBIFS_FS_SECURITY policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_UBIFS_FS_AUTHENTICATION policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> + +# Menu: File systems >> Miscellaneous filesystems >> UBIFS file system support >> Advanced compression options +CONFIG_UBIFS_FS_ADVANCED_COMPR policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n'}> +CONFIG_UBIFS_FS_LZO policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_UBIFS_FS_ZLIB policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_UBIFS_FS_ZSTD policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> + +# Menu: File systems >> Native language support +CONFIG_NLS policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_NLS_DEFAULT policy<{'amd64': '"utf8"', 'arm64': '"utf8"', 'armhf': '"utf8"', 'ppc64el': '"utf8"', 's390x': '"utf8"'}> +CONFIG_NLS_CODEPAGE_437 policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_NLS_CODEPAGE_737 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_NLS_CODEPAGE_775 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_NLS_CODEPAGE_850 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_NLS_CODEPAGE_852 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_NLS_CODEPAGE_855 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_NLS_CODEPAGE_857 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_NLS_CODEPAGE_860 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_NLS_CODEPAGE_861 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_NLS_CODEPAGE_862 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_NLS_CODEPAGE_863 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_NLS_CODEPAGE_864 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_NLS_CODEPAGE_865 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_NLS_CODEPAGE_866 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_NLS_CODEPAGE_869 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_NLS_CODEPAGE_936 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_NLS_CODEPAGE_950 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_NLS_CODEPAGE_932 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_NLS_CODEPAGE_949 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_NLS_CODEPAGE_874 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_NLS_ISO8859_8 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_NLS_CODEPAGE_1250 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_NLS_CODEPAGE_1251 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_NLS_ASCII policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_NLS_ISO8859_1 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_NLS_ISO8859_2 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_NLS_ISO8859_3 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_NLS_ISO8859_4 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_NLS_ISO8859_5 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_NLS_ISO8859_6 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_NLS_ISO8859_7 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_NLS_ISO8859_9 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_NLS_ISO8859_13 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_NLS_ISO8859_14 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_NLS_ISO8859_15 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_NLS_KOI8_R policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_NLS_KOI8_U policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_NLS_MAC_ROMAN policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_NLS_MAC_CELTIC policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_NLS_MAC_CENTEURO policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_NLS_MAC_CROATIAN policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_NLS_MAC_CYRILLIC policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_NLS_MAC_GAELIC policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_NLS_MAC_GREEK policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_NLS_MAC_ICELAND policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_NLS_MAC_INUIT policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_NLS_MAC_ROMANIAN policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_NLS_MAC_TURKISH policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_NLS_UTF8 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +# +CONFIG_NLS note + +# Menu: File systems >> Network File Systems +CONFIG_NETWORK_FILESYSTEMS policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_NFSD policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_NFSD_V3 policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_NFSD_V3_ACL policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_RPCSEC_GSS_KRB5 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_SUNRPC_DISABLE_INSECURE_ENCTYPES policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n', 's390x': 'n'}> +CONFIG_SUNRPC_DEBUG policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_SUNRPC_XPRT_RDMA policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_CODA_FS policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> + +# Menu: File systems >> Network File Systems >> Andrew File System support (AFS) +CONFIG_AFS_FS policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_AFS_DEBUG policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n', 's390x': 'n'}> +CONFIG_AFS_FSCACHE policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_AFS_DEBUG_CURSOR policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n', 's390x': 'n'}> + +# Menu: File systems >> Network File Systems >> Ceph distributed file system +CONFIG_CEPH_FS policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_CEPH_FSCACHE policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_CEPH_FS_POSIX_ACL policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_CEPH_FS_SECURITY_LABEL policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> + +# Menu: File systems >> Network File Systems >> NFS client support +CONFIG_NFS_FS policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_NFS_V2 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_NFS_V3 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_NFS_V3_ACL policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_NFS_V4 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_NFS_SWAP policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_NFS_FSCACHE policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_NFS_USE_LEGACY_DNS policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n', 's390x': 'n'}> +CONFIG_NFS_DISABLE_UDP_SUPPORT policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> + +# Menu: File systems >> Network File Systems >> NFS client support >> NFS client support for NFSv4.1 +CONFIG_NFS_V4_1 policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_NFS_V4_2 policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_NFS_V4_1_IMPLEMENTATION_ID_DOMAIN policy<{'amd64': '"kernel.org"', 'arm64': '"kernel.org"', 'armhf': '"kernel.org"', 'ppc64el': '"kernel.org"', 's390x': '"kernel.org"'}> +CONFIG_NFS_V4_1_MIGRATION policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> + +# Menu: File systems >> Network File Systems >> NFS server support for NFS version 4 +CONFIG_NFSD_V4 policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_NFSD_BLOCKLAYOUT policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_NFSD_SCSILAYOUT policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_NFSD_FLEXFILELAYOUT policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_NFSD_V4_SECURITY_LABEL policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> + +# Menu: File systems >> Network File Systems >> Plan 9 Resource Sharing Support (9P2000) +CONFIG_9P_FS policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_9P_FSCACHE policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_9P_FS_POSIX_ACL policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_9P_FS_SECURITY policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> + +# Menu: File systems >> Network File Systems >> SMB3 and CIFS support (advanced network filesystem) +CONFIG_CIFS policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_CIFS_STATS2 policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n', 's390x': 'n'}> +CONFIG_CIFS_ALLOW_INSECURE_LEGACY policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_CIFS_WEAK_PW_HASH policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_CIFS_UPCALL policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_CIFS_XATTR policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_CIFS_POSIX policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_CIFS_DEBUG policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_CIFS_DEBUG2 policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n', 's390x': 'n'}> +CONFIG_CIFS_DEBUG_DUMP_KEYS policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n', 's390x': 'n'}> +CONFIG_CIFS_DFS_UPCALL policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_CIFS_SMB_DIRECT policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n', 's390x': 'n'}> +CONFIG_CIFS_FSCACHE policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +# +CONFIG_CIFS_ALLOW_INSECURE_LEGACY flag + +# Menu: File systems >> OCFS2 file system support +CONFIG_OCFS2_FS policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_OCFS2_FS_O2CB policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_OCFS2_FS_USERSPACE_CLUSTER policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_OCFS2_FS_STATS policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_OCFS2_DEBUG_MASKLOG policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_OCFS2_DEBUG_FS policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n', 's390x': 'n'}> + +# Menu: File systems >> Overlay filesystem support +CONFIG_OVERLAY_FS policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_OVERLAY_FS_REDIRECT_DIR policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n', 's390x': 'n'}> +CONFIG_OVERLAY_FS_REDIRECT_ALWAYS_FOLLOW policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_OVERLAY_FS_INDEX policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n', 's390x': 'n'}> +CONFIG_OVERLAY_FS_XINO_AUTO policy<{'amd64': 'y', 'arm64': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_OVERLAY_FS_METACOPY policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n', 's390x': 'n'}> +# +CONFIG_OVERLAY_FS_METACOPY flag + +# Menu: File systems >> Pseudo filesystems +CONFIG_PROC_CHILDREN policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_SYSFS policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_TMPFS policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_TMPFS_POSIX_ACL policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_TMPFS_XATTR policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_HUGETLBFS policy<{'amd64': 'y', 'arm64': 'y', 'armhf-generic-lpae': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_CONFIGFS_FS policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_EFIVAR_FS policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y'}> +# +CONFIG_CONFIGFS_FS flag +CONFIG_EFIVAR_FS note +CONFIG_TMPFS_POSIX_ACL mark note + +# Menu: File systems >> Pseudo filesystems >> /proc file system support +CONFIG_PROC_FS policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_PROC_KCORE policy<{'amd64': 'y', 'arm64': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_PROC_VMCORE policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_PROC_VMCORE_DEVICE_DUMP policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_PROC_SYSCTL policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_PROC_PAGE_MONITOR policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> + +# Menu: File systems >> Quota support +CONFIG_QUOTA policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_PRINT_QUOTA_WARNING policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n', 's390x': 'n'}> +CONFIG_QUOTA_DEBUG policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n', 's390x': 'n'}> +CONFIG_QFMT_V1 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_QFMT_V2 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> + +# Menu: File systems >> Reiserfs support +CONFIG_REISERFS_FS policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'n'}> +CONFIG_REISERFS_CHECK policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n'}> +CONFIG_REISERFS_PROC_INFO policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n'}> +CONFIG_REISERFS_FS_XATTR policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_REISERFS_FS_POSIX_ACL policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_REISERFS_FS_SECURITY policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> + +# Menu: File systems >> The Extended 4 (ext4) filesystem +CONFIG_EXT4_FS policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_EXT4_USE_FOR_EXT2 policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_EXT4_FS_POSIX_ACL policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_EXT4_FS_SECURITY policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_EXT4_DEBUG policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n', 's390x': 'n'}> + +# Menu: File systems >> XFS filesystem support +CONFIG_XFS_FS policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_XFS_QUOTA policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_XFS_POSIX_ACL policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_XFS_RT policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_XFS_ONLINE_SCRUB policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n', 's390x': 'n'}> +CONFIG_XFS_WARN policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n', 's390x': 'n'}> +CONFIG_XFS_DEBUG policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n', 's390x': 'n'}> + +# Menu: Firmware Drivers +CONFIG_ARM_SCMI_PROTOCOL policy<{'arm64': 'y', 'armhf': 'y'}> +CONFIG_ARM_SCMI_POWER_DOMAIN policy<{'arm64': 'm', 'armhf': 'm'}> +CONFIG_ARM_SCPI_PROTOCOL policy<{'arm64': 'm', 'armhf': 'm'}> +CONFIG_ARM_SCPI_POWER_DOMAIN policy<{'arm64': 'm', 'armhf': 'm'}> +CONFIG_ARM_SDE_INTERFACE policy<{'arm64': 'y'}> +CONFIG_EDD policy<{'amd64': 'y'}> +CONFIG_EDD_OFF policy<{'amd64': 'y'}> +CONFIG_FIRMWARE_MEMMAP policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y'}> +CONFIG_DMIID policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y'}> +CONFIG_DMI_SYSFS policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm'}> +CONFIG_ISCSI_IBFT_FIND policy<{'amd64': 'y'}> +CONFIG_ISCSI_IBFT policy<{'amd64': 'm', 'arm64': 'm'}> +CONFIG_RASPBERRYPI_FIRMWARE policy<{'arm64': 'y'}> +CONFIG_FW_CFG_SYSFS policy<{'amd64': 'm', 'arm64': 'm'}> +CONFIG_FW_CFG_SYSFS_CMDLINE policy<{'amd64': 'n', 'arm64': 'n'}> +CONFIG_INTEL_STRATIX10_SERVICE policy<{'arm64': 'm'}> +CONFIG_INTEL_STRATIX10_RSU policy<{'arm64': 'm'}> +CONFIG_QCOM_SCM_DOWNLOAD_MODE_DEFAULT policy<{'arm64': 'n', 'armhf': 'n'}> +CONFIG_TI_SCI_PROTOCOL policy<{'arm64': 'y'}> +CONFIG_TRUSTED_FOUNDATIONS policy<{'armhf': 'y'}> +CONFIG_TURRIS_MOX_RWTM policy<{'arm64': 'm', 'armhf': 'm'}> +CONFIG_TEE_BNXT_FW policy<{'arm64': 'm'}> +CONFIG_EFI_CUSTOM_SSDT_OVERLAYS policy<{'amd64': 'y', 'arm64': 'y'}> +CONFIG_IMX_DSP policy<{'arm64': 'm', 'armhf-generic': 'm'}> +CONFIG_IMX_SCU policy<{'arm64': 'y', 'armhf-generic': 'y'}> +CONFIG_IMX_SCU_PD policy<{'arm64': 'y', 'armhf-generic': 'y'}> +CONFIG_ARM_PSCI_CHECKER policy<{'arm64': 'n', 'armhf': 'n'}> + +# Menu: Firmware Drivers >> EFI (Extensible Firmware Interface) Support +CONFIG_EFI_VARS policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y'}> +CONFIG_EFI_VARS_PSTORE policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm'}> +CONFIG_EFI_VARS_PSTORE_DEFAULT_DISABLE policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n'}> +CONFIG_EFI_RUNTIME_MAP policy<{'amd64': 'y'}> +CONFIG_EFI_FAKE_MEMMAP policy<{'amd64': 'n'}> +CONFIG_EFI_SOFT_RESERVE policy<{'amd64': 'y', 'arm64': 'y'}> +CONFIG_EFI_ARMSTUB_DTB_LOADER policy<{'arm64': 'n', 'armhf': 'n'}> +CONFIG_EFI_GENERIC_STUB_INITRD_CMDLINE_LOADER policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y'}> +CONFIG_EFI_BOOTLOADER_CONTROL policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm'}> +CONFIG_EFI_CAPSULE_LOADER policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm'}> +CONFIG_EFI_TEST policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm'}> +CONFIG_APPLE_PROPERTIES policy<{'amd64': 'y'}> +CONFIG_RESET_ATTACK_MITIGATION policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y'}> +CONFIG_EFI_RCI2_TABLE policy<{'amd64': 'y'}> +CONFIG_EFI_DISABLE_PCI_DMA policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n'}> +# +CONFIG_EFI_VARS mark note + +# Menu: Firmware Drivers >> Google Firmware Drivers +CONFIG_GOOGLE_FIRMWARE policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n'}> + +# Menu: Firmware Drivers >> Google Firmware Drivers >> Coreboot Table Access + +# Menu: Firmware Drivers >> Tegra firmware driver +CONFIG_TEGRA_IVC policy<{'armhf-generic': 'y'}> +CONFIG_TEGRA_BPMP policy<{'armhf-generic': 'y'}> + +# Menu: Firmware Drivers >> Zynq MPSoC Firmware Drivers +CONFIG_ZYNQMP_FIRMWARE policy<{'arm64': 'y'}> +CONFIG_ZYNQMP_FIRMWARE_DEBUG policy<{'arm64': 'n'}> + +# Menu: Floating point emulation >> Architecture: arm +CONFIG_VFP policy<{'armhf': 'y'}> +CONFIG_NEON policy<{'armhf': 'y'}> +CONFIG_KERNEL_MODE_NEON policy<{'arm64': 'y', 'armhf': 'y'}> + +# Menu: General architecture-dependent options +CONFIG_OPROFILE policy<{'amd64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_OPROFILE_EVENT_MULTIPLEX policy<{'amd64': 'n'}> +CONFIG_KPROBES policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_JUMP_LABEL policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'n', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_STATIC_KEYS_SELFTEST policy<{'amd64': 'n', 'arm64': 'n', 'ppc64el': 'n', 's390x': 'n'}> +CONFIG_STACKPROTECTOR policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_STACKPROTECTOR_STRONG policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_ARCH_MMAP_RND_BITS policy<{'amd64': '28', 'arm64': '18', 'armhf': '8', 'ppc64el': '28'}> +CONFIG_ARCH_MMAP_RND_COMPAT_BITS policy<{'amd64': '8', 'arm64': '11', 'ppc64el': '8'}> +CONFIG_COMPAT_32BIT_TIME policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_VMAP_STACK policy<{'amd64': 'y', 'arm64': 'y', 's390x': 'y'}> +CONFIG_STRICT_KERNEL_RWX policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': '-', 's390x': 'y'}> +CONFIG_STRICT_MODULE_RWX policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 's390x': 'y'}> +CONFIG_LOCK_EVENT_COUNTS policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n', 's390x': 'n'}> +# +CONFIG_JUMP_LABEL flag +CONFIG_STRICT_KERNEL_RWX mark +CONFIG_STRICT_MODULE_RWX mark + +# Menu: General architecture-dependent options >> Architecture: arm + +# Menu: General architecture-dependent options >> Architecture: arm64 + +# Menu: General architecture-dependent options >> Architecture: powerpc + +# Menu: General architecture-dependent options >> Architecture: s390 + +# Menu: General architecture-dependent options >> Architecture: x86 + +# Menu: General architecture-dependent options >> GCC plugins + +# Menu: General architecture-dependent options >> GCOV-based kernel profiling +CONFIG_GCOV_KERNEL policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n', 's390x': 'n'}> + +# Menu: General setup +CONFIG_COMPILE_TEST policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n', 's390x': 'n'}> +CONFIG_LOCALVERSION policy<{'amd64': '""', 'arm64': '""', 'armhf': '""', 'ppc64el': '""', 's390x': '""'}> +CONFIG_LOCALVERSION_AUTO policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n', 's390x': 'n'}> +CONFIG_BUILD_SALT policy<{'amd64': '""', 'arm64': '""', 'armhf': '""', 'ppc64el': '""', 's390x': '""'}> +CONFIG_DEFAULT_INIT policy<{'amd64': '""', 'arm64': '""', 'armhf': '""', 'ppc64el': '""', 's390x': '""'}> +CONFIG_DEFAULT_HOSTNAME policy<{'amd64': '"(none)"', 'arm64': '"(none)"', 'armhf': '"(none)"', 'ppc64el': '"(none)"', 's390x': '"(none)"'}> +CONFIG_VERSION_SIGNATURE policy<{'amd64': '""', 'arm64': '""', 'armhf': '""', 'ppc64el': '""', 's390x': '""'}> +CONFIG_SWAP policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_SYSVIPC policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_POSIX_MQUEUE policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_WATCH_QUEUE policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_CROSS_MEMORY_ATTACH policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_USELIB policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_AUDIT policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_CPU_ISOLATION policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_IKCONFIG policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n', 's390x': 'n'}> +CONFIG_IKHEADERS policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_LOG_BUF_SHIFT policy<{'amd64': '18', 'arm64': '18', 'armhf': '17', 'ppc64el': '18', 's390x': '18'}> +CONFIG_LOG_CPU_MAX_BUF_SHIFT policy<{'amd64': '12', 'arm64': '12', 'armhf': '12', 'ppc64el': '12', 's390x': '12'}> +CONFIG_PRINTK_SAFE_LOG_BUF_SHIFT policy<{'amd64': '13', 'arm64': '13', 'armhf': '13', 'ppc64el': '13', 's390x': '13'}> +CONFIG_NUMA_BALANCING policy<{'amd64': 'y', 'arm64': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_NUMA_BALANCING_DEFAULT_ENABLED policy<{'amd64': 'y', 'arm64': 'y', 'ppc64el': 'y', 's390x': 'n'}> +CONFIG_CHECKPOINT_RESTORE policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_SCHED_AUTOGROUP policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_SYSFS_DEPRECATED policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n', 's390x': 'n'}> +CONFIG_RELAY policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_BOOT_CONFIG policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_LD_DEAD_CODE_DATA_ELIMINATION policy<{'ppc64el': 'n'}> +CONFIG_BPF_LSM policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_BPF_SYSCALL policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_BPF_JIT_ALWAYS_ON policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_USERFAULTFD policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_EMBEDDED policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n', 's390x': 'n'}> +CONFIG_COMPAT_BRK policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n', 's390x': 'n'}> +CONFIG_SLAB_MERGE_DEFAULT policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_SLAB_FREELIST_RANDOM policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_SLAB_FREELIST_HARDENED policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_SHUFFLE_PAGE_ALLOCATOR policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_SLUB_CPU_PARTIAL policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_PROFILING policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +# +CONFIG_SYSFS_DEPRECATED mark note +CONFIG_COMPAT_BRK mark note +CONFIG_NUMA_BALANCING_DEFAULT_ENABLED note +CONFIG_BPF_JIT_ALWAYS_ON flag +CONFIG_LOCALVERSION_AUTO mark note + +# Menu: General setup >> CPU/Task time and stats accounting +CONFIG_IRQ_TIME_ACCOUNTING policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n'}> +CONFIG_SCHED_THERMAL_PRESSURE policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n', 's390x': 'n'}> +CONFIG_BSD_PROCESS_ACCT policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_BSD_PROCESS_ACCT_V3 policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_TASKSTATS policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_TASK_DELAY_ACCT policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_TASK_XACCT policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_TASK_IO_ACCOUNTING policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_PSI policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_PSI_DEFAULT_DISABLED policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n', 's390x': 'y'}> +# +CONFIG_PSI_DEFAULT_DISABLED note + +# Menu: General setup >> CPU/Task time and stats accounting >> Cputime accounting +CONFIG_TICK_CPU_ACCOUNTING policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_VIRT_CPU_ACCOUNTING_NATIVE policy<{'ppc64el': 'n', 's390x': 'y'}> +CONFIG_VIRT_CPU_ACCOUNTING_GEN policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n'}> + +# Menu: General setup >> Choose SLAB allocator +CONFIG_SLAB policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n', 's390x': 'n'}> +CONFIG_SLUB policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_SLOB policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n', 's390x': 'n'}> + +# Menu: General setup >> Compiler optimization level +CONFIG_CC_OPTIMIZE_FOR_PERFORMANCE policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_CC_OPTIMIZE_FOR_SIZE policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n', 's390x': 'n'}> + +# Menu: General setup >> Configure standard kernel features (expert users) +CONFIG_EXPERT policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_UID16 policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 's390x': 'y'}> +CONFIG_MULTIUSER policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_SGETMASK_SYSCALL policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_SYSFS_SYSCALL policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_FHANDLE policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_POSIX_TIMERS policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_PRINTK policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_BUG policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_ELF_CORE policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_PCSPKR_PLATFORM policy<{'amd64': 'y', 'ppc64el': 'y'}> +CONFIG_BASE_FULL policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_FUTEX policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_EPOLL policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_SIGNALFD policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_TIMERFD policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_EVENTFD policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_SHMEM policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_AIO policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_IO_URING policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_ADVISE_SYSCALLS policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_MEMBARRIER policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_KALLSYMS policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_KALLSYMS_ALL policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_RSEQ policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_DEBUG_RSEQ policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n', 's390x': 'n'}> +CONFIG_PC104 policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'n'}> +CONFIG_VM_EVENT_COUNTERS policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_SLUB_DEBUG policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_SLUB_MEMCG_SYSFS_ON policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +# +CONFIG_FHANDLE mark note +CONFIG_SLUB_MEMCG_SYSFS_ON flag + +# Menu: General setup >> Control Group support +CONFIG_CGROUPS policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_MEMCG policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_BLK_CGROUP policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_CGROUP_PIDS policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_CGROUP_RDMA policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_CGROUP_FREEZER policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_CGROUP_HUGETLB policy<{'amd64': 'y', 'arm64': 'y', 'armhf-generic-lpae': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_CPUSETS policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_PROC_PID_CPUSET policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_CGROUP_DEVICE policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_CGROUP_CPUACCT policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_CGROUP_PERF policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_CGROUP_BPF policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_CGROUP_DEBUG policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n', 's390x': 'n'}> + +# Menu: General setup >> Control Group support >> CPU controller +CONFIG_CGROUP_SCHED policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_FAIR_GROUP_SCHED policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_CFS_BANDWIDTH policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_RT_GROUP_SCHED policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n', 's390x': 'n'}> +CONFIG_UCLAMP_TASK_GROUP policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +# +CONFIG_RT_GROUP_SCHED mark note note note + +# Menu: General setup >> IRQ subsystem +CONFIG_IRQ_FORCED_THREADING_DEFAULT policy<{'amd64-generic': 'n', 'amd64-lowlatency': 'y', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n'}> +CONFIG_SPARSE_IRQ policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_GENERIC_IRQ_DEBUGFS policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n', 's390x': 'n'}> + +# Menu: General setup >> Initial RAM filesystem and RAM disk (initramfs/initrd) support +CONFIG_BLK_DEV_INITRD policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_RD_GZIP policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_RD_BZIP2 policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_RD_LZMA policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_RD_XZ policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_RD_LZO policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_RD_LZ4 policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> + +# Menu: General setup >> Initial RAM filesystem and RAM disk (initramfs/initrd) support >> Initramfs source file(s) +CONFIG_INITRAMFS_SOURCE policy<{'amd64': '""', 'arm64': '""', 'armhf': '""', 'ppc64el': '""', 's390x': '""'}> + +# Menu: General setup >> Initial RAM filesystem and RAM disk (initramfs/initrd) support >> Initramfs source file(s) >> Built-in initramfs compression mode + +# Menu: General setup >> Kernel Performance Events And Counters +CONFIG_PERF_EVENTS policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_DEBUG_PERF_USE_VMALLOC policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 's390x': 'n'}> + +# Menu: General setup >> Kernel compression mode +CONFIG_KERNEL_GZIP policy<{'amd64': 'n', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'n'}> +CONFIG_KERNEL_BZIP2 policy<{'amd64': 'n', 's390x': 'n'}> +CONFIG_KERNEL_LZMA policy<{'amd64': 'n', 'armhf': 'n', 's390x': 'n'}> +CONFIG_KERNEL_XZ policy<{'amd64': 'n', 'armhf': 'n', 'ppc64el': 'n', 's390x': 'n'}> +CONFIG_KERNEL_LZO policy<{'amd64': 'n', 'armhf': 'n', 's390x': 'n'}> +CONFIG_KERNEL_LZ4 policy<{'amd64': 'y', 'armhf': 'n', 's390x': 'y'}> +CONFIG_KERNEL_UNCOMPRESSED policy<{'s390x': 'n'}> + +# Menu: General setup >> Namespaces support +CONFIG_NAMESPACES policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_UTS_NS policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_TIME_NS policy<{'amd64': 'y'}> +CONFIG_IPC_NS policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_USER_NS policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_PID_NS policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_NET_NS policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> + +# Menu: General setup >> Preemption Model +CONFIG_PREEMPT_NONE policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n', 's390x': 'y'}> +CONFIG_PREEMPT_VOLUNTARY policy<{'amd64-generic': 'y', 'amd64-lowlatency': 'n', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'n'}> +CONFIG_PREEMPT policy<{'amd64-generic': 'n', 'amd64-lowlatency': 'y', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n', 's390x': 'n'}> +# +CONFIG_PREEMPT_NONE note + +# Menu: General setup >> RCU Subsystem +# XXX + +# Menu: General setup >> RCU Subsystem >> Make expert-level adjustments to RCU configuration +CONFIG_RCU_EXPERT policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n', 's390x': 'n'}> +# +CONFIG_RCU_EXPERT flag + +# Menu: General setup >> Scheduler features +CONFIG_UCLAMP_TASK policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_UCLAMP_BUCKETS_COUNT policy<{'amd64': '5', 'arm64': '5', 'armhf': '5', 'ppc64el': '5'}> +# +CONFIG_UCLAMP_TASK flag + +# Menu: General setup >> Timers subsystem +CONFIG_NO_HZ policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_CONTEXT_TRACKING_FORCE policy<{'amd64': '-', 'arm64': '-', 'armhf': '-', 'ppc64el': '-', 's390x': '-'}> +CONFIG_HIGH_RES_TIMERS policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +# +CONFIG_CONTEXT_TRACKING_FORCE note mark + +# Menu: General setup >> Timers subsystem >> Timer tick handling +CONFIG_HZ_PERIODIC policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n', 's390x': 'n'}> +CONFIG_NO_HZ_IDLE policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_NO_HZ_FULL policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n'}> +# +CONFIG_NO_HZ_IDLE note + +# Menu: I/O subsystem >> Architecture: s390 +CONFIG_QDIO policy<{'s390x': 'm'}> +CONFIG_CHSC_SCH policy<{'s390x': 'm'}> +CONFIG_SCM_BUS policy<{'s390x': 'y'}> +CONFIG_EADM_SCH policy<{'s390x': 'm'}> +CONFIG_VFIO_CCW policy<{'s390x': 'm'}> +CONFIG_VFIO_AP policy<{'s390x': 'm'}> +CONFIG_PCI_NR_FUNCTIONS policy<{'s390x': '512'}> +# +CONFIG_PCI_NR_FUNCTIONS mark note + +# Menu: Kernel hacking +CONFIG_DEBUG_TIMEKEEPING policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n', 's390x': 'n'}> +CONFIG_STACKTRACE policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_WARN_ALL_UNSEEDED_RANDOM policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n', 's390x': 'n'}> +CONFIG_PROVIDE_OHCI1394_DMA_INIT policy<{'amd64': 'n'}> +CONFIG_STRICT_DEVMEM policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_IO_STRICT_DEVMEM policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n', 's390x': 'n'}> +# +CONFIG_STRICT_DEVMEM mark + +# Menu: Kernel hacking >> $(SRCARCH) Debugging +CONFIG_PID_IN_CONTEXTIDR policy<{'arm64': 'n', 'armhf': 'n'}> +CONFIG_DEBUG_WX policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y'}> +CONFIG_EARLY_PRINTK policy<{'amd64': 'y', 'ppc64el': 'y', 's390x': 'y'}> + +# Menu: Kernel hacking >> $(SRCARCH) Debugging >> Architecture: arm +CONFIG_DEBUG_USER policy<{'armhf': 'n'}> +CONFIG_DEBUG_VF_UART_PORT policy<{'armhf-generic': '1'}> +CONFIG_ARM_KPROBES_TEST policy<{'armhf': 'm'}> +CONFIG_ARM_PTDUMP_DEBUGFS policy<{'armhf': 'n'}> + +# Menu: Kernel hacking >> $(SRCARCH) Debugging >> Architecture: arm64 +CONFIG_DEBUG_EFI policy<{'arm64': 'n'}> +CONFIG_ARM64_RELOC_TEST policy<{'arm64': 'n'}> + +# Menu: Kernel hacking >> $(SRCARCH) Debugging >> Architecture: powerpc +CONFIG_PPC_DISABLE_WERROR policy<{'ppc64el': 'n'}> +CONFIG_HCALL_STATS policy<{'ppc64el': 'n'}> +CONFIG_PPC_EMULATED_STATS policy<{'ppc64el': 'n'}> +CONFIG_JUMP_LABEL_FEATURE_CHECKS policy<{'ppc64el': 'y'}> +CONFIG_JUMP_LABEL_FEATURE_CHECK_DEBUG policy<{'ppc64el': 'n'}> +CONFIG_PPC_IRQ_SOFT_MASK_DEBUG policy<{'ppc64el': 'n'}> +CONFIG_BOOTX_TEXT policy<{'ppc64el': 'n'}> +CONFIG_PPC_EARLY_DEBUG policy<{'ppc64el': 'n'}> +CONFIG_PRINT_STACK_DEPTH policy<{'ppc64el': '64'}> +CONFIG_CODE_PATCHING_SELFTEST policy<{'ppc64el': 'n'}> +CONFIG_FTR_FIXUP_SELFTEST policy<{'ppc64el': 'n'}> +CONFIG_MSI_BITMAP_SELFTEST policy<{'ppc64el': 'n'}> +CONFIG_PPC_PTDUMP policy<{'ppc64el': 'n'}> +CONFIG_PPC_FAST_ENDIAN_SWITCH policy<{'ppc64el': 'n'}> +# +CONFIG_PPC_DISABLE_WERROR flag + +# Menu: Kernel hacking >> $(SRCARCH) Debugging >> Architecture: s390 +CONFIG_S390_PTDUMP policy<{'s390x': 'y'}> + +# Menu: Kernel hacking >> $(SRCARCH) Debugging >> Architecture: x86 +CONFIG_X86_VERBOSE_BOOTUP policy<{'amd64': 'n'}> +CONFIG_EFI_PGT_DUMP policy<{'amd64': 'n'}> +CONFIG_PUNIT_ATOM_DEBUG policy<{'amd64': 'm'}> +CONFIG_EARLY_PRINTK_DBGP policy<{'amd64': 'y'}> +CONFIG_EARLY_PRINTK_USB_XDBC policy<{'amd64': 'y'}> +CONFIG_DEBUG_TLBFLUSH policy<{'amd64': 'n'}> +CONFIG_IOMMU_DEBUG policy<{'amd64': 'n'}> +CONFIG_X86_DECODER_SELFTEST policy<{'amd64': 'n'}> +CONFIG_DEBUG_BOOT_PARAMS policy<{'amd64': 'n'}> +CONFIG_CPA_DEBUG policy<{'amd64': 'n'}> +CONFIG_DEBUG_ENTRY policy<{'amd64': 'n'}> +CONFIG_DEBUG_NMI_SELFTEST policy<{'amd64': 'n'}> +CONFIG_X86_DEBUG_FPU policy<{'amd64': 'y'}> +# +CONFIG_PUNIT_ATOM_DEBUG flag +CONFIG_X86_DECODER_SELFTEST flag +CONFIG_X86_DEBUG_FPU flag + +# Menu: Kernel hacking >> $(SRCARCH) Debugging >> Choose kernel unwinder +CONFIG_UNWINDER_FRAME_POINTER policy<{'amd64': 'y', 'armhf': 'y'}> +# +CONFIG_UNWINDER_FRAME_POINTER mark note + +# Menu: Kernel hacking >> $(SRCARCH) Debugging >> Choose kernel unwinder >> Architecture: arm + +# Menu: Kernel hacking >> $(SRCARCH) Debugging >> Choose kernel unwinder >> Architecture: x86 +CONFIG_UNWINDER_ORC policy<{'amd64': 'n'}> +CONFIG_UNWINDER_GUESS policy<{'amd64': 'n'}> + +# Menu: Kernel hacking >> $(SRCARCH) Debugging >> CoreSight Tracing Support +CONFIG_CORESIGHT policy<{'arm64': 'n', 'armhf': 'n'}> + +# Menu: Kernel hacking >> $(SRCARCH) Debugging >> CoreSight Tracing Support >> CoreSight Link and Sink drivers + +# Menu: Kernel hacking >> $(SRCARCH) Debugging >> Early debugging console >> Architecture: powerpc + +# Menu: Kernel hacking >> $(SRCARCH) Debugging >> IO delay type >> Architecture: x86 +CONFIG_IO_DELAY_0X80 policy<{'amd64': 'n'}> +CONFIG_IO_DELAY_0XED policy<{'amd64': 'y'}> +CONFIG_IO_DELAY_UDELAY policy<{'amd64': 'n'}> +CONFIG_IO_DELAY_NONE policy<{'amd64': 'n'}> + +# Menu: Kernel hacking >> $(SRCARCH) Debugging >> Include xmon kernel debugger >> Architecture: powerpc +CONFIG_XMON policy<{'ppc64el': 'y'}> +CONFIG_XMON_DEFAULT policy<{'ppc64el': 'n'}> +CONFIG_XMON_DISASSEMBLY policy<{'ppc64el': 'y'}> +CONFIG_XMON_DEFAULT_RO_MODE policy<{'ppc64el': 'y'}> + +# Menu: Kernel hacking >> $(SRCARCH) Debugging >> Kernel low-level debugging functions (read help!) + +# Menu: Kernel hacking >> $(SRCARCH) Debugging >> Kernel low-level debugging functions (read help!) >> Architecture: arm +CONFIG_DEBUG_LL policy<{'armhf': 'n'}> + +# Menu: Kernel hacking >> $(SRCARCH) Debugging >> Kernel low-level debugging functions (read help!) >> Kernel low-level debugging port >> Architecture: arm + +# Menu: Kernel hacking >> Compile-time checks and compiler options +CONFIG_ENABLE_MUST_CHECK policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n', 's390x': 'n'}> +CONFIG_FRAME_WARN policy<{'amd64': '1024', 'arm64': '1024', 'armhf': '1024', 'ppc64el': '2048', 's390x': '1024'}> +CONFIG_STRIP_ASM_SYMS policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n', 's390x': 'n'}> +CONFIG_READABLE_ASM policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n', 's390x': 'n'}> +CONFIG_HEADERS_INSTALL policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n', 's390x': 'n'}> +CONFIG_DEBUG_SECTION_MISMATCH policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n', 's390x': 'n'}> +CONFIG_SECTION_MISMATCH_WARN_ONLY policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_FRAME_POINTER policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y'}> +CONFIG_STACK_VALIDATION policy<{'amd64': 'y'}> +CONFIG_DEBUG_FORCE_WEAK_PER_CPU policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n', 's390x': 'n'}> +# +CONFIG_STACK_VALIDATION mark note + +# Menu: Kernel hacking >> Compile-time checks and compiler options >> Compile the kernel with debug info +CONFIG_DEBUG_INFO policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_DEBUG_INFO_REDUCED policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n', 's390x': 'n'}> +CONFIG_DEBUG_INFO_COMPRESSED policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n', 's390x': 'n'}> +CONFIG_DEBUG_INFO_SPLIT policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n', 's390x': 'n'}> +CONFIG_DEBUG_INFO_DWARF4 policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_DEBUG_INFO_BTF policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_GDB_SCRIPTS policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +# +CONFIG_DEBUG_INFO mark note +CONFIG_DEBUG_INFO_SPLIT note +CONFIG_DEBUG_INFO_BTF flag note + +# Menu: Kernel hacking >> Debug Oops, Lockups and Hangs +CONFIG_PANIC_ON_OOPS policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n', 's390x': 'n'}> +CONFIG_PANIC_TIMEOUT policy<{'amd64': '0', 'arm64': '0', 'armhf': '0', 'ppc64el': '10', 's390x': '0'}> +CONFIG_SOFTLOCKUP_DETECTOR policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_BOOTPARAM_SOFTLOCKUP_PANIC policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n'}> +CONFIG_HARDLOCKUP_DETECTOR policy<{'amd64': 'y', 'ppc64el': 'y'}> +CONFIG_BOOTPARAM_HARDLOCKUP_PANIC policy<{'amd64': 'n', 'ppc64el': 'n'}> +CONFIG_DETECT_HUNG_TASK policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_DEFAULT_HUNG_TASK_TIMEOUT policy<{'amd64': '120', 'arm64': '120', 'armhf': '120', 'ppc64el': '120', 's390x': '120'}> +CONFIG_BOOTPARAM_HUNG_TASK_PANIC policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n', 's390x': 'n'}> +CONFIG_WQ_WATCHDOG policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n', 's390x': 'n'}> +CONFIG_TEST_LOCKUP policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n', 's390x': 'n'}> +# +CONFIG_PANIC_ON_OOPS note + +# Menu: Kernel hacking >> Debug kernel data structures +CONFIG_BUG_ON_DATA_CORRUPTION policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n', 's390x': 'n'}> +CONFIG_DEBUG_LIST policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n', 's390x': 'n'}> +CONFIG_DEBUG_PLIST policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n', 's390x': 'n'}> +CONFIG_DEBUG_SG policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n', 's390x': 'n'}> +CONFIG_DEBUG_NOTIFIERS policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n', 's390x': 'n'}> +# +CONFIG_BUG_ON_DATA_CORRUPTION flag + +# Menu: Kernel hacking >> Generic Kernel Debugging Instruments +CONFIG_MAGIC_SYSRQ policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_MAGIC_SYSRQ_DEFAULT_ENABLE policy<{'amd64': '0x01b6', 'arm64': '0x01b6', 'armhf': '0x01b6', 'ppc64el': '0x01b6', 's390x': '0x01b6'}> +CONFIG_MAGIC_SYSRQ_SERIAL policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_MAGIC_SYSRQ_SERIAL_SEQUENCE policy<{'amd64': '""', 'arm64': '""', 'armhf': '""', 'ppc64el': '""', 's390x': '""'}> +CONFIG_DEBUG_FS policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +# + +# Menu: Kernel hacking >> Generic Kernel Debugging Instruments >> KGDB: kernel debugger +CONFIG_KGDB policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_KGDB_SERIAL_CONSOLE policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_KGDB_TESTS policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n'}> +CONFIG_KGDB_LOW_LEVEL_TRAP policy<{'amd64': 'y'}> +# +CONFIG_KGDB flag +CONFIG_KGDB_SERIAL_CONSOLE note + +# Menu: Kernel hacking >> Generic Kernel Debugging Instruments >> KGDB: kernel debugger >> KGDB_KDB: include kdb frontend for kgdb +CONFIG_KGDB_KDB policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_KDB_DEFAULT_ENABLE policy<{'amd64': '0x1', 'arm64': '0x1', 'armhf': '0x1', 'ppc64el': '0x1'}> +CONFIG_KDB_KEYBOARD policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_KDB_CONTINUE_CATASTROPHIC policy<{'amd64': '0', 'arm64': '0', 'armhf': '0', 'ppc64el': '0'}> + +# Menu: Kernel hacking >> Generic Kernel Debugging Instruments >> Undefined behaviour sanity checker +CONFIG_UBSAN policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n', 's390x': 'n'}> + +# Menu: Kernel hacking >> Kernel Testing and Coverage +CONFIG_MEMTEST policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_HYPERV_TESTING policy<{'amd64': 'n'}> + +# Menu: Kernel hacking >> Kernel Testing and Coverage >> Code coverage for fuzzing +CONFIG_KCOV policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n', 's390x': 'n'}> + +# Menu: Kernel hacking >> Kernel Testing and Coverage >> Fault-injection framework +CONFIG_FAULT_INJECTION policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n', 's390x': 'n'}> + +# Menu: Kernel hacking >> Kernel Testing and Coverage >> Fault-injection framework >> Debugfs entries for fault-injection capabilities + +# Menu: Kernel hacking >> Kernel Testing and Coverage >> KUnit - Enable support for unit tests +CONFIG_KUNIT policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n', 's390x': 'n'}> + +# Menu: Kernel hacking >> Kernel Testing and Coverage >> Notifier error injection +CONFIG_NOTIFIER_ERROR_INJECTION policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_PM_NOTIFIER_ERROR_INJECT policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_OF_RECONFIG_NOTIFIER_ERROR_INJECT policy<{'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n'}> +CONFIG_NETDEV_NOTIFIER_ERROR_INJECT policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n', 's390x': 'n'}> + +# Menu: Kernel hacking >> Kernel Testing and Coverage >> Runtime Testing +CONFIG_RUNTIME_TESTING_MENU policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_LKDTM policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n', 's390x': 'n'}> +CONFIG_TEST_LIST_SORT policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n', 's390x': 'n'}> +CONFIG_TEST_MIN_HEAP policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n', 's390x': 'n'}> +CONFIG_TEST_SORT policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n', 's390x': 'n'}> +CONFIG_KPROBES_SANITY_TEST policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n', 's390x': 'n'}> +CONFIG_BACKTRACE_SELF_TEST policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n', 's390x': 'n'}> +CONFIG_RBTREE_TEST policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n', 's390x': 'n'}> +CONFIG_REED_SOLOMON_TEST policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n', 's390x': 'n'}> +CONFIG_INTERVAL_TREE_TEST policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n', 's390x': 'n'}> +CONFIG_PERCPU_TEST policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n', 's390x': 'n'}> +CONFIG_ATOMIC64_SELFTEST policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n', 's390x': 'n'}> +CONFIG_ASYNC_RAID6_TEST policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n', 's390x': 'n'}> +CONFIG_TEST_HEXDUMP policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n', 's390x': 'n'}> +CONFIG_TEST_STRING_HELPERS policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n', 's390x': 'n'}> +CONFIG_TEST_STRSCPY policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n', 's390x': 'n'}> +CONFIG_TEST_KSTRTOX policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n', 's390x': 'n'}> +CONFIG_TEST_PRINTF policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n', 's390x': 'n'}> +CONFIG_TEST_BITMAP policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n', 's390x': 'n'}> +CONFIG_TEST_BITFIELD policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n', 's390x': 'n'}> +CONFIG_TEST_UUID policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n', 's390x': 'n'}> +CONFIG_TEST_XARRAY policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n', 's390x': 'n'}> +CONFIG_TEST_OVERFLOW policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n', 's390x': 'n'}> +CONFIG_TEST_RHASHTABLE policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n', 's390x': 'n'}> +CONFIG_TEST_HASH policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n', 's390x': 'n'}> +CONFIG_TEST_IDA policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n', 's390x': 'n'}> +CONFIG_TEST_PARMAN policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n', 's390x': 'n'}> +CONFIG_TEST_LKM policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n', 's390x': 'n'}> +CONFIG_TEST_BITOPS policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n', 's390x': 'n'}> +CONFIG_TEST_VMALLOC policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n', 's390x': 'n'}> +CONFIG_TEST_USER_COPY policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n', 's390x': 'n'}> +CONFIG_TEST_BPF policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_TEST_BLACKHOLE_DEV policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_FIND_BIT_BENCHMARK policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n', 's390x': 'n'}> +CONFIG_TEST_FIRMWARE policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n', 's390x': 'n'}> +CONFIG_TEST_SYSCTL policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n', 's390x': 'n'}> +CONFIG_TEST_UDELAY policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n', 's390x': 'n'}> +CONFIG_TEST_STATIC_KEYS policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n', 's390x': 'n'}> +CONFIG_TEST_KMOD policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n', 's390x': 'n'}> +CONFIG_TEST_MEMCAT_P policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n', 's390x': 'n'}> +CONFIG_TEST_LIVEPATCH policy<{'amd64': 'n', 'ppc64el': 'n', 's390x': 'n'}> +CONFIG_TEST_OBJAGG policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n', 's390x': 'n'}> +CONFIG_TEST_STACKINIT policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n', 's390x': 'n'}> +CONFIG_TEST_MEMINIT policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n', 's390x': 'n'}> +CONFIG_TEST_HMM policy<{'amd64': 'n', 'arm64': 'n', 'ppc64el': 'n'}> +# +CONFIG_RUNTIME_TESTING_MENU flag +CONFIG_LKDTM flag flag +CONFIG_TEST_LIST_SORT flag +CONFIG_TEST_SORT flag +CONFIG_KPROBES_SANITY_TEST flag +CONFIG_BACKTRACE_SELF_TEST flag +CONFIG_RBTREE_TEST flag +CONFIG_INTERVAL_TREE_TEST flag +CONFIG_PERCPU_TEST flag +CONFIG_ATOMIC64_SELFTEST flag +CONFIG_ASYNC_RAID6_TEST flag +CONFIG_TEST_HEXDUMP flag +CONFIG_TEST_STRING_HELPERS flag +CONFIG_TEST_STRSCPY flag +CONFIG_TEST_KSTRTOX flag +CONFIG_TEST_PRINTF flag +CONFIG_TEST_BITMAP flag +CONFIG_TEST_BITFIELD flag +CONFIG_TEST_UUID flag +CONFIG_TEST_XARRAY flag +CONFIG_TEST_OVERFLOW flag +CONFIG_TEST_RHASHTABLE flag +CONFIG_TEST_HASH flag +CONFIG_TEST_IDA flag +CONFIG_TEST_PARMAN flag +CONFIG_TEST_LKM flag +CONFIG_TEST_BITOPS flag +CONFIG_TEST_VMALLOC flag +CONFIG_TEST_USER_COPY flag +CONFIG_TEST_BPF flag +CONFIG_TEST_BLACKHOLE_DEV flag note +CONFIG_FIND_BIT_BENCHMARK flag +CONFIG_TEST_FIRMWARE flag +CONFIG_TEST_SYSCTL flag +CONFIG_TEST_UDELAY flag +CONFIG_TEST_STATIC_KEYS flag +CONFIG_TEST_KMOD flag +CONFIG_TEST_MEMCAT_P flag +CONFIG_TEST_LIVEPATCH flag +CONFIG_TEST_OBJAGG flag +CONFIG_TEST_STACKINIT flag +CONFIG_TEST_MEMINIT flag +CONFIG_TEST_HMM flag + +# Menu: Kernel hacking >> Kernel debugging +CONFIG_DEBUG_KERNEL policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_DEBUG_MISC policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_DEBUG_SHIRQ policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n', 's390x': 'n'}> +CONFIG_DEBUG_PREEMPT policy<{'amd64-lowlatency': 'n'}> +CONFIG_DEBUG_KOBJECT policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n', 's390x': 'n'}> +CONFIG_DEBUG_CREDENTIALS policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n', 's390x': 'n'}> +CONFIG_DEBUG_WQ_FORCE_RR_CPU policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n', 's390x': 'n'}> +CONFIG_DEBUG_BLOCK_EXT_DEVT policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n', 's390x': 'n'}> +CONFIG_CPU_HOTPLUG_STATE_CONTROL policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n', 's390x': 'n'}> +CONFIG_LATENCYTOP policy<{'amd64-generic': 'n', 'amd64-lowlatency': 'y', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n', 's390x': 'n'}> +# +CONFIG_LATENCYTOP mark note + +# Menu: Kernel hacking >> Kernel debugging >> KCSAN: dynamic data race detector + +# Menu: Kernel hacking >> Lock Debugging (spinlocks, mutexes, etc...) +CONFIG_PROVE_LOCKING policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n', 's390x': 'n'}> +CONFIG_LOCK_STAT policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n', 's390x': 'n'}> +CONFIG_DEBUG_RT_MUTEXES policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n', 's390x': 'n'}> +CONFIG_DEBUG_SPINLOCK policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n', 's390x': 'n'}> +CONFIG_DEBUG_MUTEXES policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n', 's390x': 'n'}> +CONFIG_DEBUG_WW_MUTEX_SLOWPATH policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n', 's390x': 'n'}> +CONFIG_DEBUG_RWSEMS policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n', 's390x': 'n'}> +CONFIG_DEBUG_LOCK_ALLOC policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n', 's390x': 'n'}> +CONFIG_DEBUG_ATOMIC_SLEEP policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n', 's390x': 'n'}> +CONFIG_DEBUG_LOCKING_API_SELFTESTS policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n', 's390x': 'n'}> +CONFIG_LOCK_TORTURE_TEST policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n', 's390x': 'n'}> +CONFIG_WW_MUTEX_SELFTEST policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n', 's390x': 'n'}> + +# Menu: Kernel hacking >> Memory Debugging +CONFIG_PAGE_EXTENSION policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'y', 'ppc64el': 'n', 's390x': 'n'}> +CONFIG_DEBUG_PAGEALLOC policy<{'amd64': 'n', 'arm64': 'n', 'ppc64el': 'n', 's390x': 'n'}> +CONFIG_PAGE_OWNER policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n', 's390x': 'n'}> +CONFIG_PAGE_POISONING policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_PAGE_POISONING_NO_SANITY policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_PAGE_POISONING_ZERO policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_DEBUG_PAGE_REF policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n', 's390x': 'n'}> +CONFIG_DEBUG_RODATA_TEST policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 's390x': 'n'}> +CONFIG_PTDUMP_DEBUGFS policy<{'amd64': 'n', 'arm64': 'n'}> +CONFIG_SLUB_DEBUG_ON policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n', 's390x': 'n'}> +CONFIG_SLUB_STATS policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n', 's390x': 'n'}> +CONFIG_DEBUG_STACK_USAGE policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n', 's390x': 'n'}> +CONFIG_SCHED_STACK_END_CHECK policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_DEBUG_VM_PGTABLE policy<{'amd64': 'n', 'arm64': 'n', 'ppc64el': 'n', 's390x': 'n'}> +CONFIG_DEBUG_VIRTUAL policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n'}> +CONFIG_DEBUG_MEMORY_INIT policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n', 's390x': 'n'}> +CONFIG_MEMORY_NOTIFIER_ERROR_INJECT policy<{'amd64': 'm', 'arm64': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_DEBUG_PER_CPU_MAPS policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n', 's390x': 'n'}> +CONFIG_DEBUG_HIGHMEM policy<{'armhf': 'n'}> +CONFIG_DEBUG_STACKOVERFLOW policy<{'ppc64el': 'n'}> +# +CONFIG_PAGE_POISONING mark note +CONFIG_PAGE_POISONING_ZERO mark note +CONFIG_PAGE_POISONING_NO_SANITY mark note + +# Menu: Kernel hacking >> Memory Debugging >> Debug VM +CONFIG_DEBUG_VM policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n', 's390x': 'n'}> + +# Menu: Kernel hacking >> Memory Debugging >> Debug object operations +CONFIG_DEBUG_OBJECTS policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n', 's390x': 'n'}> + +# Menu: Kernel hacking >> Memory Debugging >> KASAN: runtime memory debugger +CONFIG_KASAN policy<{'amd64': 'n', 'arm64': 'n', 's390x': 'n'}> + +# Menu: Kernel hacking >> Memory Debugging >> KASAN: runtime memory debugger >> Instrumentation type + +# Menu: Kernel hacking >> Memory Debugging >> KASAN: runtime memory debugger >> KASAN mode + +# Menu: Kernel hacking >> Memory Debugging >> Kernel memory leak detector +CONFIG_DEBUG_KMEMLEAK policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n', 's390x': 'n'}> + +# Menu: Kernel hacking >> RCU Debugging +CONFIG_RCU_PERF_TEST policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_RCU_TORTURE_TEST policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n', 's390x': 'n'}> +CONFIG_RCU_CPU_STALL_TIMEOUT policy<{'amd64': '60', 'arm64': '60', 'armhf': '60', 'ppc64el': '21', 's390x': '21'}> +CONFIG_RCU_TRACE policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n', 's390x': 'n'}> +CONFIG_RCU_EQS_DEBUG policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n', 's390x': 'n'}> +# +CONFIG_RCU_CPU_STALL_TIMEOUT flag + +# Menu: Kernel hacking >> Sample kernel code +CONFIG_SAMPLES policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_SAMPLE_AUXDISPLAY policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n', 's390x': 'n'}> +CONFIG_SAMPLE_TRACE_EVENTS policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n', 's390x': 'n'}> +CONFIG_SAMPLE_TRACE_PRINTK policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_SAMPLE_FTRACE_DIRECT policy<{'amd64': 'm'}> +CONFIG_SAMPLE_TRACE_ARRAY policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_SAMPLE_KOBJECT policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n', 's390x': 'n'}> +CONFIG_SAMPLE_KPROBES policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n', 's390x': 'n'}> +CONFIG_SAMPLE_HW_BREAKPOINT policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n'}> +CONFIG_SAMPLE_KFIFO policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n', 's390x': 'n'}> +CONFIG_SAMPLE_KDB policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n'}> +CONFIG_SAMPLE_QMI_CLIENT policy<{'arm64': 'n', 'armhf': 'n'}> +CONFIG_SAMPLE_RPMSG_CLIENT policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n'}> +CONFIG_SAMPLE_LIVEPATCH policy<{'amd64': 'n', 'ppc64el': 'n', 's390x': 'n'}> +CONFIG_SAMPLE_CONFIGFS policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n', 's390x': 'n'}> +CONFIG_SAMPLE_VFIO_MDEV_MTTY policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n', 's390x': 'n'}> +CONFIG_SAMPLE_VFIO_MDEV_MDPY policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n', 's390x': 'n'}> +CONFIG_SAMPLE_VFIO_MDEV_MDPY_FB policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n', 's390x': 'n'}> +CONFIG_SAMPLE_VFIO_MDEV_MBOCHS policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n', 's390x': 'n'}> +CONFIG_SAMPLE_WATCHDOG policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n', 's390x': 'n'}> +# +CONFIG_SAMPLE_TRACE_PRINTK mark note + +# Menu: Kernel hacking >> Scheduler Debugging +CONFIG_SCHED_DEBUG policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_SCHEDSTATS policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> + +# Menu: Kernel hacking >> Tracers +CONFIG_FTRACE policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_BOOTTIME_TRACING policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_STACK_TRACER policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_IRQSOFF_TRACER policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n', 's390x': 'n'}> +CONFIG_PREEMPT_TRACER policy<{'amd64-lowlatency': 'n'}> +CONFIG_SCHED_TRACER policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_HWLAT_TRACER policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_MMIOTRACE policy<{'amd64': 'y'}> +CONFIG_FTRACE_SYSCALLS policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_TRACER_SNAPSHOT policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_TRACER_SNAPSHOT_PER_CPU_SWAP policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n', 's390x': 'n'}> +CONFIG_BLK_DEV_IO_TRACE policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_KPROBE_EVENTS policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_KPROBE_EVENTS_ON_NOTRACE policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n', 's390x': 'n'}> +CONFIG_UPROBE_EVENTS policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_BPF_KPROBE_OVERRIDE policy<{'amd64': 'y', 'arm64': 'y', 'ppc64el': 'y'}> +CONFIG_SYNTH_EVENTS policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_HIST_TRIGGERS policy<{'amd64': 'y', 'arm64': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_TRACE_EVENT_INJECT policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_TRACEPOINT_BENCHMARK policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n', 's390x': 'n'}> +CONFIG_RING_BUFFER_BENCHMARK policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n', 's390x': 'n'}> +CONFIG_TRACE_EVAL_MAP_FILE policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n', 's390x': 'n'}> +CONFIG_FTRACE_STARTUP_TEST policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n', 's390x': 'n'}> +CONFIG_RING_BUFFER_STARTUP_TEST policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n', 's390x': 'n'}> +CONFIG_MMIOTRACE_TEST policy<{'amd64': 'n'}> +CONFIG_PREEMPTIRQ_DELAY_TEST policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n', 's390x': 'n'}> +CONFIG_SYNTH_EVENT_GEN_TEST policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n', 's390x': 'n'}> +CONFIG_KPROBE_EVENT_GEN_TEST policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n', 's390x': 'n'}> +CONFIG_HIST_TRIGGERS_DEBUG policy<{'amd64': 'n', 'arm64': 'n', 'ppc64el': 'n', 's390x': 'n'}> +# +CONFIG_FTRACE_STARTUP_TEST flag +CONFIG_MMIOTRACE_TEST flag +CONFIG_RING_BUFFER_BENCHMARK flag +CONFIG_RING_BUFFER_STARTUP_TEST flag +CONFIG_TRACE_EVAL_MAP_FILE flag + +# Menu: Kernel hacking >> Tracers >> Branch Profiling +CONFIG_BRANCH_PROFILE_NONE policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_PROFILE_ANNOTATED_BRANCHES policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n', 's390x': 'n'}> + +# Menu: Kernel hacking >> Tracers >> Kernel Function Tracer +CONFIG_FUNCTION_TRACER policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_FUNCTION_GRAPH_TRACER policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_DYNAMIC_FTRACE policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_FUNCTION_PROFILER policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> + +# Menu: Kernel hacking >> printk and dmesg options +CONFIG_PRINTK_TIME policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_PRINTK_CALLER policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n', 's390x': 'n'}> +CONFIG_CONSOLE_LOGLEVEL_DEFAULT policy<{'amd64': '7', 'arm64': '7', 'armhf': '7', 'ppc64el': '7', 's390x': '7'}> +CONFIG_CONSOLE_LOGLEVEL_QUIET policy<{'amd64': '4', 'arm64': '4', 'armhf': '4', 'ppc64el': '4', 's390x': '4'}> +CONFIG_MESSAGE_LOGLEVEL_DEFAULT policy<{'amd64': '4', 'arm64': '4', 'armhf': '4', 'ppc64el': '4', 's390x': '4'}> +CONFIG_BOOT_PRINTK_DELAY policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y'}> +CONFIG_DYNAMIC_DEBUG policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_DYNAMIC_DEBUG_CORE policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_SYMBOLIC_ERRNAME policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_DEBUG_BUGVERBOSE policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> + +# Menu: Library routines +CONFIG_RAID6_PQ_BENCHMARK policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_PACKING policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'n'}> +CONFIG_CORDIC policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_PRIME_NUMBERS policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n', 's390x': 'n'}> +CONFIG_INDIRECT_PIO policy<{'arm64': 'y'}> +CONFIG_CRC_CCITT policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_CRC16 policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_CRC_T10DIF policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_CRC_ITU_T policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_CRC32 policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_CRC32_SELFTEST policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n', 's390x': 'n'}> +CONFIG_CRC64 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_CRC4 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_CRC7 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_LIBCRC32C policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_CRC8 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_RANDOM32_SELFTEST policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n', 's390x': 'n'}> +CONFIG_ZLIB_DFLTCC policy<{'s390x': 'y'}> +CONFIG_DMA_API_DEBUG policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n', 's390x': 'n'}> +CONFIG_CPUMASK_OFFSTACK policy<{'amd64': 'y'}> +CONFIG_GLOB_SELFTEST policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n', 's390x': 'n'}> +CONFIG_IRQ_POLL policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_PARMAN policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_OBJAGG policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_STRING_SELFTEST policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n', 's390x': 'n'}> +# +CONFIG_ZLIB_DFLTCC mark note + +# Menu: Library routines >> CRC32 implementation +CONFIG_CRC32_SLICEBY8 policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_CRC32_SLICEBY4 policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n', 's390x': 'n'}> +CONFIG_CRC32_SARWATE policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n', 's390x': 'n'}> +CONFIG_CRC32_BIT policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n', 's390x': 'n'}> + +# Menu: Library routines >> DMA Contiguous Memory Allocator +CONFIG_DMA_CMA policy<{'amd64': '-', 'arm64': 'y', 'armhf': 'y', 's390x': 'n'}> +CONFIG_CMA_SIZE_MBYTES policy<{'arm64': '32', 'armhf': '32'}> +CONFIG_CMA_ALIGNMENT policy<{'arm64': '8', 'armhf': '8'}> +# +CONFIG_DMA_CMA mark note note +CONFIG_CMA_SIZE_MBYTES mark note + +# Menu: Library routines >> DMA Contiguous Memory Allocator >> Selected region size +CONFIG_CMA_SIZE_SEL_MBYTES policy<{'arm64': 'y', 'armhf': 'y'}> +CONFIG_CMA_SIZE_SEL_PERCENTAGE policy<{'arm64': 'n', 'armhf': 'n'}> +CONFIG_CMA_SIZE_SEL_MIN policy<{'arm64': 'n', 'armhf': 'n'}> +CONFIG_CMA_SIZE_SEL_MAX policy<{'arm64': 'n', 'armhf': 'n'}> + +# Menu: Library routines >> Select compiled-in fonts +CONFIG_FONTS policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_FONT_8x8 policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_FONT_8x16 policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_FONT_6x11 policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n', 's390x': 'n'}> +CONFIG_FONT_7x14 policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n', 's390x': 'n'}> +CONFIG_FONT_PEARL_8x8 policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n', 's390x': 'n'}> +CONFIG_FONT_ACORN_8x8 policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_FONT_MINI_4x6 policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n', 's390x': 'n'}> +CONFIG_FONT_6x10 policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_FONT_10x18 policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n', 's390x': 'n'}> +CONFIG_FONT_SUN8x16 policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n', 's390x': 'n'}> +CONFIG_FONT_SUN12x22 policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n', 's390x': 'n'}> +CONFIG_FONT_TER16x32 policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> + +# Menu: Library routines >> XZ decompression support +CONFIG_XZ_DEC policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_XZ_DEC_X86 policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'n'}> +CONFIG_XZ_DEC_POWERPC policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'n'}> +CONFIG_XZ_DEC_IA64 policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'n'}> +CONFIG_XZ_DEC_ARM policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'n'}> +CONFIG_XZ_DEC_ARMTHUMB policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'n'}> +CONFIG_XZ_DEC_SPARC policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'n'}> +CONFIG_XZ_DEC_TEST policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'n'}> +# +CONFIG_XZ_DEC note flag + +# Menu: Memory Management options +CONFIG_SPARSEMEM_VMEMMAP policy<{'amd64': 'y', 'arm64': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_MEMORY_HOTPLUG policy<{'amd64': 'y', 'arm64': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_MEMORY_HOTPLUG_DEFAULT_ONLINE policy<{'amd64': 'y', 'arm64': 'y', 'ppc64el': 'n', 's390x': 'n'}> +CONFIG_MEMORY_HOTREMOVE policy<{'amd64': 'y', 'arm64': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_BALLOON_COMPACTION policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_COMPACTION policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_PAGE_REPORTING policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_MIGRATION policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_BOUNCE policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 's390x': 'n'}> +CONFIG_KSM policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_DEFAULT_MMAP_MIN_ADDR policy<{'amd64': '65536', 'arm64': '32768', 'armhf': '32768', 'ppc64el': '65536', 's390x': '65536'}> +CONFIG_MEMORY_FAILURE policy<{'amd64': 'y', 'arm64': 'y', 'ppc64el': 'y'}> +CONFIG_HWPOISON_INJECT policy<{'amd64': 'm', 'arm64': 'm', 'ppc64el': 'm'}> +CONFIG_TRANSPARENT_HUGEPAGE policy<{'amd64': 'y', 'arm64': 'y', 'armhf-generic-lpae': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_CLEANCACHE policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_FRONTSWAP policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_MEM_SOFT_DIRTY policy<{'amd64': 'y', 'ppc64el': 'n', 's390x': 'y'}> +CONFIG_ZPOOL policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_ZBUD policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_Z3FOLD policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_ZSMALLOC policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_ZSMALLOC_STAT policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n', 's390x': 'n'}> +CONFIG_DEFERRED_STRUCT_PAGE_INIT policy<{'amd64': 'n', 'arm64': 'n', 'ppc64el': 'n', 's390x': 'n'}> +CONFIG_IDLE_PAGE_TRACKING policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_ZONE_DEVICE policy<{'amd64': 'y', 'arm64': 'y', 'ppc64el': 'y'}> +CONFIG_DEVICE_PRIVATE policy<{'amd64': 'y', 'arm64': 'y', 'ppc64el': 'y'}> +CONFIG_PERCPU_STATS policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n', 's390x': 'n'}> +CONFIG_GUP_BENCHMARK policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n', 's390x': 'n'}> +CONFIG_READ_ONLY_THP_FOR_FS policy<{'amd64': 'n', 'arm64': 'n', 'armhf-generic-lpae': 'n', 'ppc64el': 'n', 's390x': 'n'}> +# +CONFIG_DEFAULT_MMAP_MIN_ADDR mark note +CONFIG_TRANSPARENT_HUGEPAGE flag +CONFIG_MEM_SOFT_DIRTY flag +CONFIG_IDLE_PAGE_TRACKING flag note +CONFIG_PERCPU_STATS flag +CONFIG_MEMORY_HOTPLUG_DEFAULT_ONLINE mark note + +# Menu: Memory Management options >> Compressed cache for swap pages (EXPERIMENTAL) +CONFIG_ZSWAP policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_ZSWAP_DEFAULT_ON policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n', 's390x': 'n'}> + +# Menu: Memory Management options >> Compressed cache for swap pages (EXPERIMENTAL) >> Compressed cache for swap pages default allocator +CONFIG_ZSWAP_ZPOOL_DEFAULT_ZBUD policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_ZSWAP_ZPOOL_DEFAULT_Z3FOLD policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n', 's390x': 'n'}> +CONFIG_ZSWAP_ZPOOL_DEFAULT_ZSMALLOC policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n', 's390x': 'n'}> + +# Menu: Memory Management options >> Compressed cache for swap pages (EXPERIMENTAL) >> Compressed cache for swap pages default compressor +CONFIG_ZSWAP_COMPRESSOR_DEFAULT_DEFLATE policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n', 's390x': 'n'}> +CONFIG_ZSWAP_COMPRESSOR_DEFAULT_LZO policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_ZSWAP_COMPRESSOR_DEFAULT_842 policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n', 's390x': 'n'}> +CONFIG_ZSWAP_COMPRESSOR_DEFAULT_LZ4 policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n', 's390x': 'n'}> +CONFIG_ZSWAP_COMPRESSOR_DEFAULT_LZ4HC policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n', 's390x': 'n'}> +CONFIG_ZSWAP_COMPRESSOR_DEFAULT_ZSTD policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n', 's390x': 'n'}> + +# Menu: Memory Management options >> Contiguous Memory Allocator +CONFIG_CMA policy<{'amd64': 'n', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_CMA_DEBUG policy<{'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n', 's390x': 'n'}> +CONFIG_CMA_DEBUGFS policy<{'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n', 's390x': 'n'}> +CONFIG_CMA_AREAS policy<{'arm64': '7', 'armhf': '7', 'ppc64el': '7', 's390x': '7'}> +# +CONFIG_CMA mark note note + +# Menu: Memory Management options >> Memory model +CONFIG_FLATMEM_MANUAL policy<{'armhf': 'n'}> +CONFIG_SPARSEMEM_MANUAL policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> + +# Menu: Memory Management options >> Transparent Hugepage Support sysfs defaults +CONFIG_TRANSPARENT_HUGEPAGE_ALWAYS policy<{'amd64': 'n', 'arm64': 'n', 'armhf-generic-lpae': 'n', 'ppc64el': 'y', 's390x': 'n'}> +CONFIG_TRANSPARENT_HUGEPAGE_MADVISE policy<{'amd64': 'y', 'arm64': 'y', 'armhf-generic-lpae': 'y', 'ppc64el': 'n', 's390x': 'y'}> + +# Menu: Memory setup >> Architecture: s390 +CONFIG_MAX_PHYSMEM_BITS policy<{'s390x': '46'}> +CONFIG_PACK_STACK policy<{'s390x': 'y'}> +CONFIG_WARN_DYNAMIC_STACK policy<{'s390x': 'n'}> + +# Menu: Networking support +CONFIG_NET policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_AF_KCM policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_CEPH_LIB policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_CEPH_LIB_PRETTYDEBUG policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n', 's390x': 'n'}> +CONFIG_CEPH_LIB_USE_DNS_RESOLVER policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_PSAMPLE policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_NET_IFE policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_LWTUNNEL policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_LWTUNNEL_BPF policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_FAILOVER policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_ETHTOOL_NETLINK policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> + +# Menu: Networking support >> Amateur Radio support +CONFIG_HAMRADIO policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> + +# Menu: Networking support >> Amateur Radio support >> Amateur Radio AX.25 Level 2 protocol +CONFIG_AX25 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_AX25_DAMA_SLAVE policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_NETROM policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_ROSE policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> + +# Menu: Networking support >> Amateur Radio support >> Amateur Radio AX.25 Level 2 protocol >> AX.25 network device drivers +CONFIG_MKISS policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_6PACK policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_BPQETHER policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_BAYCOM_SER_FDX policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_BAYCOM_SER_HDX policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_BAYCOM_PAR policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_BAYCOM_EPP policy<{'armhf': 'm'}> +CONFIG_YAM policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> + +# Menu: Networking support >> Bluetooth subsystem support +CONFIG_BT policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_BT_LE policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_BT_6LOWPAN policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_BT_LEDS policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_BT_MSFTEXT policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_BT_DEBUGFS policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_BT_SELFTEST policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n'}> + +# Menu: Networking support >> Bluetooth subsystem support >> Bluetooth Classic (BR/EDR) features +CONFIG_BT_BREDR policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_BT_RFCOMM policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_BT_RFCOMM_TTY policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_BT_BNEP policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_BT_BNEP_MC_FILTER policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_BT_BNEP_PROTO_FILTER policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_BT_CMTP policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_BT_HIDP policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_BT_HS policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n'}> +# +CONFIG_BT_HS mark note + +# Menu: Networking support >> Bluetooth subsystem support >> Bluetooth device drivers +CONFIG_BT_HCIBTSDIO policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_BT_HCIUART_LL policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_BT_HCIBCM203X policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_BT_HCIBPA10X policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_BT_HCIBFUSB policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_BT_HCIDTL1 policy<{'amd64': 'm'}> +CONFIG_BT_HCIBT3C policy<{'amd64': 'm'}> +CONFIG_BT_HCIBLUECARD policy<{'amd64': 'm'}> +CONFIG_BT_HCIVHCI policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_BT_MRVL policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_BT_MRVL_SDIO policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_BT_MTKSDIO policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_BT_MTKUART policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_BT_QCOMSMD policy<{'arm64': 'm', 'armhf': 'm'}> + +# Menu: Networking support >> Bluetooth subsystem support >> Bluetooth device drivers >> HCI UART driver +CONFIG_BT_HCIUART policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_BT_HCIUART_H4 policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_BT_HCIUART_NOKIA policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_BT_HCIUART_BCSP policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_BT_HCIUART_ATH3K policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_BT_HCIUART_3WIRE policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_BT_HCIUART_INTEL policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_BT_HCIUART_BCM policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_BT_HCIUART_RTL policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_BT_HCIUART_QCA policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_BT_HCIUART_AG6XX policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_BT_HCIUART_MRVL policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> + +# Menu: Networking support >> Bluetooth subsystem support >> Bluetooth device drivers >> HCI USB driver +CONFIG_BT_HCIBTUSB policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_BT_HCIBTUSB_AUTOSUSPEND policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_BT_HCIBTUSB_BCM policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_BT_HCIBTUSB_MTK policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_BT_HCIBTUSB_RTL policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_BT_ATH3K policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> + +# Menu: Networking support >> CAIF support +CONFIG_CAIF policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'n'}> +CONFIG_CAIF_DEBUG policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n'}> +CONFIG_CAIF_NETDEV policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_CAIF_USB policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> + +# Menu: Networking support >> CAN bus subsystem support +CONFIG_CAN policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'n'}> +CONFIG_CAN_RAW policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_CAN_BCM policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_CAN_GW policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_CAN_J1939 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> + +# Menu: Networking support >> CAN bus subsystem support >> CAN Device Drivers +CONFIG_CAN_VCAN policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_CAN_VXCAN policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_CAN_SLCAN policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_CAN_DEBUG_DEVICES policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n'}> + +# Menu: Networking support >> CAN bus subsystem support >> CAN Device Drivers >> Platform CAN drivers with Netlink support +CONFIG_CAN_DEV policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_CAN_CALC_BITTIMING policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_CAN_FLEXCAN policy<{'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_CAN_GRCAN policy<{'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_CAN_JANZ_ICAN3 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_CAN_KVASER_PCIEFD policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_CAN_TI_HECC policy<{'armhf': 'm'}> +CONFIG_CAN_XILINXCAN policy<{'arm64': 'm'}> +CONFIG_CAN_IFI_CANFD policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_CAN_M_CAN policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_CAN_M_CAN_PLATFORM policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_CAN_M_CAN_TCAN4X5X policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_CAN_MSCAN policy<{'ppc64el': 'm'}> +CONFIG_CAN_PEAK_PCIEFD policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_CAN_RCAR policy<{'arm64': 'm', 'armhf': 'm'}> +CONFIG_CAN_RCAR_CANFD policy<{'arm64': 'm', 'armhf': 'm'}> +CONFIG_CAN_SOFTING policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_CAN_SOFTING_CS policy<{'amd64': 'm'}> + +# Menu: Networking support >> CAN bus subsystem support >> CAN Device Drivers >> Platform CAN drivers with Netlink support >> Bosch CC770 and Intel AN82527 devices +CONFIG_CAN_CC770 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_CAN_CC770_ISA policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_CAN_CC770_PLATFORM policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> + +# Menu: Networking support >> CAN bus subsystem support >> CAN Device Drivers >> Platform CAN drivers with Netlink support >> Bosch C_CAN/D_CAN devices +CONFIG_CAN_C_CAN policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_CAN_C_CAN_PLATFORM policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_CAN_C_CAN_PCI policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> + +# Menu: Networking support >> CAN bus subsystem support >> CAN Device Drivers >> Platform CAN drivers with Netlink support >> CAN SPI interfaces +CONFIG_CAN_HI311X policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_CAN_MCP251X policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> + +# Menu: Networking support >> CAN bus subsystem support >> CAN Device Drivers >> Platform CAN drivers with Netlink support >> CAN USB interfaces +CONFIG_CAN_8DEV_USB policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_CAN_EMS_USB policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_CAN_ESD_USB2 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_CAN_GS_USB policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_CAN_KVASER_USB policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_CAN_MCBA_USB policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_CAN_PEAK_USB policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_CAN_UCAN policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> + +# Menu: Networking support >> CAN bus subsystem support >> CAN Device Drivers >> Platform CAN drivers with Netlink support >> Philips/NXP SJA1000 devices +CONFIG_CAN_SJA1000 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_CAN_EMS_PCI policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_CAN_EMS_PCMCIA policy<{'amd64': 'm'}> +CONFIG_CAN_F81601 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_CAN_KVASER_PCI policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_CAN_PEAK_PCI policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_CAN_PEAK_PCIEC policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_CAN_PEAK_PCMCIA policy<{'amd64': 'm'}> +CONFIG_CAN_PLX_PCI policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_CAN_SJA1000_ISA policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_CAN_SJA1000_PLATFORM policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> + +# Menu: Networking support >> NFC subsystem support +CONFIG_NFC policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'n'}> +CONFIG_NFC_DIGITAL policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_NFC_NCI policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_NFC_NCI_SPI policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_NFC_NCI_UART policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_NFC_HCI policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_NFC_SHDLC policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> + +# Menu: Networking support >> NFC subsystem support >> Near Field Communication (NFC) devices +CONFIG_NFC_TRF7970A policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_NFC_MEI_PHY policy<{'amd64': 'm'}> +CONFIG_NFC_SIM policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_NFC_PORT100 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_NFC_FDP policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_NFC_FDP_I2C policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_NFC_PN544_I2C policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_NFC_PN544_MEI policy<{'amd64': 'm'}> +CONFIG_NFC_PN533_USB policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_NFC_PN533_I2C policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_NFC_PN532_UART policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_NFC_MICROREAD_I2C policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_NFC_MICROREAD_MEI policy<{'amd64': 'm'}> +CONFIG_NFC_MRVL_USB policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_NFC_MRVL_UART policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_NFC_MRVL_I2C policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_NFC_MRVL_SPI policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_NFC_ST21NFCA_I2C policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_NFC_ST_NCI_I2C policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_NFC_ST_NCI_SPI policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_NFC_NXP_NCI policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_NFC_NXP_NCI_I2C policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_NFC_S3FWRN5_I2C policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_NFC_ST95HF policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> + +# Menu: Networking support >> Networking options +CONFIG_PACKET policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_PACKET_DIAG policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_UNIX policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_UNIX_DIAG policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_TLS policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_TLS_DEVICE policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_TLS_TOE policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n', 's390x': 'n'}> +CONFIG_XFRM_USER policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_XFRM_INTERFACE policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_XFRM_SUB_POLICY policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n', 's390x': 'n'}> +CONFIG_XFRM_MIGRATE policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n', 's390x': 'n'}> +CONFIG_XFRM_STATISTICS policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_NET_KEY policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_NET_KEY_MIGRATE policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n', 's390x': 'n'}> +CONFIG_IUCV policy<{'s390x': 'y'}> +CONFIG_AFIUCV policy<{'s390x': 'm'}> +CONFIG_SMC policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_SMC_DIAG policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_XDP_SOCKETS policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_XDP_SOCKETS_DIAG policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_NETWORK_SECMARK policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_NETWORK_PHY_TIMESTAMPING policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_VLAN_8021Q policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_VLAN_8021Q_GVRP policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_VLAN_8021Q_MVRP policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_DECNET policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'n'}> +CONFIG_DECNET_ROUTER policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n'}> +CONFIG_LLC2 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'n'}> +CONFIG_ATALK policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'n'}> +CONFIG_X25 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'n'}> +CONFIG_LAPB policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'n'}> +CONFIG_PHONET policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'n'}> +CONFIG_MAC802154 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_DCB policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_DNS_RESOLVER policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_NETLINK_DIAG policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_NET_NSH policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_HSR policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'n'}> +CONFIG_CGROUP_NET_PRIO policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_CGROUP_NET_CLASSID policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_BPF_JIT policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +# +CONFIG_SMC mark note +CONFIG_SMC_DIAG mark note +CONFIG_NETWORK_PHY_TIMESTAMPING mark note + +# Menu: Networking support >> Networking options >> 6LoWPAN Support +CONFIG_6LOWPAN policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'n'}> +CONFIG_6LOWPAN_DEBUGFS policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n'}> + +# Menu: Networking support >> Networking options >> 6LoWPAN Support >> Next Header and Generic Header Compression Support +CONFIG_6LOWPAN_NHC policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_6LOWPAN_NHC_DEST policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_6LOWPAN_NHC_FRAGMENT policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_6LOWPAN_NHC_HOP policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_6LOWPAN_NHC_IPV6 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_6LOWPAN_NHC_MOBILITY policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_6LOWPAN_NHC_ROUTING policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_6LOWPAN_NHC_UDP policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_6LOWPAN_GHC_EXT_HDR_HOP policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n'}> +CONFIG_6LOWPAN_GHC_UDP policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n'}> +CONFIG_6LOWPAN_GHC_ICMPV6 policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n'}> +CONFIG_6LOWPAN_GHC_EXT_HDR_DEST policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n'}> +CONFIG_6LOWPAN_GHC_EXT_HDR_FRAG policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n'}> +CONFIG_6LOWPAN_GHC_EXT_HDR_ROUTE policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n'}> + +# Menu: Networking support >> Networking options >> 802.1d Ethernet Bridging +CONFIG_BRIDGE policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_BRIDGE_IGMP_SNOOPING policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_BRIDGE_VLAN_FILTERING policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_BRIDGE_MRP policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> + +# Menu: Networking support >> Networking options >> Appletalk interfaces support +CONFIG_DEV_APPLETALK policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_LTPC policy<{'amd64': 'm'}> +CONFIG_COPS policy<{'amd64': 'm'}> +CONFIG_COPS_DAYNA policy<{'amd64': 'y'}> +CONFIG_COPS_TANGENT policy<{'amd64': 'y'}> +CONFIG_IPDDP policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n'}> +# +CONFIG_IPDDP mark note + +# Menu: Networking support >> Networking options >> Asynchronous Transfer Mode (ATM) +CONFIG_ATM policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'n'}> +CONFIG_ATM_CLIP policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_ATM_CLIP_NO_ICMP policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n'}> +CONFIG_ATM_LANE policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_ATM_MPOA policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_ATM_BR2684 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_ATM_BR2684_IPFILTER policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n'}> + +# Menu: Networking support >> Networking options >> B.A.T.M.A.N. Advanced Meshing Protocol +CONFIG_BATMAN_ADV policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'n'}> +CONFIG_BATMAN_ADV_BATMAN_V policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n'}> +CONFIG_BATMAN_ADV_BLA policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_BATMAN_ADV_DAT policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_BATMAN_ADV_NC policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_BATMAN_ADV_MCAST policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_BATMAN_ADV_DEBUGFS policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n'}> +CONFIG_BATMAN_ADV_DEBUG policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n'}> +CONFIG_BATMAN_ADV_SYSFS policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_BATMAN_ADV_TRACING policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n'}> + +# Menu: Networking support >> Networking options >> Distributed Switch Architecture +CONFIG_NET_DSA policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_NET_DSA_TAG_AR9331 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_NET_DSA_TAG_BRCM policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_NET_DSA_TAG_BRCM_PREPEND policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_NET_DSA_TAG_GSWIP policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_NET_DSA_TAG_DSA policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_NET_DSA_TAG_EDSA policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_NET_DSA_TAG_MTK policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_NET_DSA_TAG_KSZ policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_NET_DSA_TAG_OCELOT policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_NET_DSA_TAG_QCA policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_NET_DSA_TAG_LAN9303 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_NET_DSA_TAG_SJA1105 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_NET_DSA_TAG_TRAILER policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> + +# Menu: Networking support >> Networking options >> IEEE Std 802.15.4 Low-Rate Wireless Personal Area Networks support +CONFIG_IEEE802154 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'n'}> +CONFIG_IEEE802154_NL802154_EXPERIMENTAL policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n'}> +CONFIG_IEEE802154_SOCKET policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_IEEE802154_6LOWPAN policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> + +# Menu: Networking support >> Networking options >> MultiProtocol Label Switching +CONFIG_MPLS policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_NET_MPLS_GSO policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_MPLS_ROUTING policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_MPLS_IPTUNNEL policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> + +# Menu: Networking support >> Networking options >> Network packet filtering framework (Netfilter) +CONFIG_NETFILTER policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_NETFILTER_ADVANCED policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_BRIDGE_NETFILTER policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_NF_CONNTRACK_BRIDGE policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> + +# Menu: Networking support >> Networking options >> Network packet filtering framework (Netfilter) >> Core Netfilter Configuration +CONFIG_NETFILTER_INGRESS policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_NETFILTER_NETLINK_ACCT policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_NETFILTER_NETLINK_QUEUE policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_NETFILTER_NETLINK_LOG policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_NETFILTER_NETLINK_OSF policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_NF_LOG_NETDEV policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_NF_FLOW_TABLE_INET policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> + +# Menu: Networking support >> Networking options >> Network packet filtering framework (Netfilter) >> Core Netfilter Configuration >> Netfilter Xtables support (required for ip_tables) +CONFIG_NETFILTER_XTABLES policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_NETFILTER_XT_MARK policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_NETFILTER_XT_CONNMARK policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_NETFILTER_XT_SET policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_NETFILTER_XT_TARGET_AUDIT policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_NETFILTER_XT_TARGET_CHECKSUM policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_NETFILTER_XT_TARGET_CLASSIFY policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_NETFILTER_XT_TARGET_CONNMARK policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_NETFILTER_XT_TARGET_CONNSECMARK policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_NETFILTER_XT_TARGET_CT policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_NETFILTER_XT_TARGET_DSCP policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_NETFILTER_XT_TARGET_HL policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_NETFILTER_XT_TARGET_HMARK policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_NETFILTER_XT_TARGET_IDLETIMER policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_NETFILTER_XT_TARGET_LED policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_NETFILTER_XT_TARGET_LOG policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_NETFILTER_XT_TARGET_MARK policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_NETFILTER_XT_NAT policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_NETFILTER_XT_TARGET_NETMAP policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_NETFILTER_XT_TARGET_NFLOG policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_NETFILTER_XT_TARGET_NFQUEUE policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_NETFILTER_XT_TARGET_NOTRACK policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n', 's390x': 'n'}> +CONFIG_NETFILTER_XT_TARGET_RATEEST policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_NETFILTER_XT_TARGET_REDIRECT policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_NETFILTER_XT_TARGET_MASQUERADE policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_NETFILTER_XT_TARGET_TEE policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_NETFILTER_XT_TARGET_TPROXY policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_NETFILTER_XT_TARGET_TRACE policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_NETFILTER_XT_TARGET_SECMARK policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_NETFILTER_XT_TARGET_TCPMSS policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_NETFILTER_XT_TARGET_TCPOPTSTRIP policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_NETFILTER_XT_MATCH_ADDRTYPE policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_NETFILTER_XT_MATCH_BPF policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_NETFILTER_XT_MATCH_CGROUP policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_NETFILTER_XT_MATCH_CLUSTER policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_NETFILTER_XT_MATCH_COMMENT policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_NETFILTER_XT_MATCH_CONNBYTES policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_NETFILTER_XT_MATCH_CONNLABEL policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_NETFILTER_XT_MATCH_CONNLIMIT policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_NETFILTER_XT_MATCH_CONNMARK policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_NETFILTER_XT_MATCH_CONNTRACK policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_NETFILTER_XT_MATCH_CPU policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_NETFILTER_XT_MATCH_DCCP policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_NETFILTER_XT_MATCH_DEVGROUP policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_NETFILTER_XT_MATCH_DSCP policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_NETFILTER_XT_MATCH_ECN policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_NETFILTER_XT_MATCH_ESP policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_NETFILTER_XT_MATCH_HASHLIMIT policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_NETFILTER_XT_MATCH_HELPER policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_NETFILTER_XT_MATCH_HL policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_NETFILTER_XT_MATCH_IPCOMP policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_NETFILTER_XT_MATCH_IPRANGE policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_NETFILTER_XT_MATCH_IPVS policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_NETFILTER_XT_MATCH_L2TP policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_NETFILTER_XT_MATCH_LENGTH policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_NETFILTER_XT_MATCH_LIMIT policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_NETFILTER_XT_MATCH_MAC policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_NETFILTER_XT_MATCH_MARK policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_NETFILTER_XT_MATCH_MULTIPORT policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_NETFILTER_XT_MATCH_NFACCT policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_NETFILTER_XT_MATCH_OSF policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_NETFILTER_XT_MATCH_OWNER policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_NETFILTER_XT_MATCH_POLICY policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_NETFILTER_XT_MATCH_PHYSDEV policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_NETFILTER_XT_MATCH_PKTTYPE policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_NETFILTER_XT_MATCH_QUOTA policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_NETFILTER_XT_MATCH_RATEEST policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_NETFILTER_XT_MATCH_REALM policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_NETFILTER_XT_MATCH_RECENT policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_NETFILTER_XT_MATCH_SCTP policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_NETFILTER_XT_MATCH_SOCKET policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_NETFILTER_XT_MATCH_STATE policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_NETFILTER_XT_MATCH_STATISTIC policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_NETFILTER_XT_MATCH_STRING policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_NETFILTER_XT_MATCH_TCPMSS policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_NETFILTER_XT_MATCH_TIME policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_NETFILTER_XT_MATCH_U32 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> + +# Menu: Networking support >> Networking options >> Network packet filtering framework (Netfilter) >> Core Netfilter Configuration >> Netfilter connection tracking support +CONFIG_NF_CONNTRACK policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_NF_CONNTRACK_MARK policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_NF_CONNTRACK_SECMARK policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_NF_CONNTRACK_ZONES policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_NF_CONNTRACK_PROCFS policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n', 's390x': 'n'}> +CONFIG_NF_CONNTRACK_EVENTS policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_NF_CONNTRACK_TIMEOUT policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_NF_CONNTRACK_TIMESTAMP policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_NF_CONNTRACK_LABELS policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_NF_CT_PROTO_DCCP policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_NF_CT_PROTO_SCTP policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_NF_CT_PROTO_UDPLITE policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_NF_CONNTRACK_AMANDA policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_NF_CONNTRACK_FTP policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_NF_CONNTRACK_H323 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_NF_CONNTRACK_IRC policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_NF_CONNTRACK_NETBIOS_NS policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_NF_CONNTRACK_SNMP policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_NF_CONNTRACK_PPTP policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_NF_CONNTRACK_SANE policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_NF_CONNTRACK_SIP policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_NF_CONNTRACK_TFTP policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_NF_CT_NETLINK policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_NF_CT_NETLINK_TIMEOUT policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_NF_CT_NETLINK_HELPER policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_NETFILTER_NETLINK_GLUE_CT policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_NF_NAT policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +# +CONFIG_NF_CONNTRACK_PROCFS flag + +# Menu: Networking support >> Networking options >> Network packet filtering framework (Netfilter) >> Core Netfilter Configuration >> Netfilter nf_tables support +CONFIG_NF_TABLES policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_NF_TABLES_INET policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_NFT_NUMGEN policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_NFT_CT policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_NFT_FLOW_OFFLOAD policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_NFT_COUNTER policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_NFT_CONNLIMIT policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_NFT_LOG policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_NFT_LIMIT policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_NFT_MASQ policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_NFT_REDIR policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_NFT_NAT policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_NFT_TUNNEL policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_NFT_OBJREF policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_NFT_QUEUE policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_NFT_QUOTA policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_NFT_REJECT policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_NFT_COMPAT policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_NFT_HASH policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_NFT_FIB_INET policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_NFT_XFRM policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_NFT_SOCKET policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_NFT_OSF policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_NFT_TPROXY policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_NFT_SYNPROXY policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_NF_FLOW_TABLE policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> + +# Menu: Networking support >> Networking options >> Network packet filtering framework (Netfilter) >> Core Netfilter Configuration >> Netfilter nf_tables support >> Netfilter nf_tables netdev tables support +CONFIG_NF_TABLES_NETDEV policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_NF_DUP_NETDEV policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_NFT_DUP_NETDEV policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_NFT_FWD_NETDEV policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_NFT_FIB_NETDEV policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> + +# Menu: Networking support >> Networking options >> Network packet filtering framework (Netfilter) >> DECnet: Netfilter Configuration +CONFIG_DECNET_NF_GRABULATOR policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> + +# Menu: Networking support >> Networking options >> Network packet filtering framework (Netfilter) >> Ethernet Bridge nf_tables support +CONFIG_NF_TABLES_BRIDGE policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_NFT_BRIDGE_META policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_NFT_BRIDGE_REJECT policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_NF_LOG_BRIDGE policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> + +# Menu: Networking support >> Networking options >> Network packet filtering framework (Netfilter) >> Ethernet Bridge tables (ebtables) support +CONFIG_BRIDGE_NF_EBTABLES policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_BRIDGE_EBT_BROUTE policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_BRIDGE_EBT_T_FILTER policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_BRIDGE_EBT_T_NAT policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_BRIDGE_EBT_802_3 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_BRIDGE_EBT_AMONG policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_BRIDGE_EBT_ARP policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_BRIDGE_EBT_IP policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_BRIDGE_EBT_IP6 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_BRIDGE_EBT_LIMIT policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_BRIDGE_EBT_MARK policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_BRIDGE_EBT_PKTTYPE policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_BRIDGE_EBT_STP policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_BRIDGE_EBT_VLAN policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_BRIDGE_EBT_ARPREPLY policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_BRIDGE_EBT_DNAT policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_BRIDGE_EBT_MARK_T policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_BRIDGE_EBT_REDIRECT policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_BRIDGE_EBT_SNAT policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_BRIDGE_EBT_LOG policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_BRIDGE_EBT_NFLOG policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> + +# Menu: Networking support >> Networking options >> Network packet filtering framework (Netfilter) >> IP set support +CONFIG_IP_SET policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_IP_SET_MAX policy<{'amd64': '256', 'arm64': '256', 'armhf': '256', 'ppc64el': '256', 's390x': '256'}> +CONFIG_IP_SET_BITMAP_IP policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_IP_SET_BITMAP_IPMAC policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_IP_SET_BITMAP_PORT policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_IP_SET_HASH_IP policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_IP_SET_HASH_IPMARK policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_IP_SET_HASH_IPPORT policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_IP_SET_HASH_IPPORTIP policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_IP_SET_HASH_IPPORTNET policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_IP_SET_HASH_IPMAC policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_IP_SET_HASH_MAC policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_IP_SET_HASH_NETPORTNET policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_IP_SET_HASH_NET policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_IP_SET_HASH_NETNET policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_IP_SET_HASH_NETPORT policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_IP_SET_HASH_NETIFACE policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_IP_SET_LIST_SET policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> + +# Menu: Networking support >> Networking options >> Network packet filtering framework (Netfilter) >> IP virtual server support +CONFIG_IP_VS policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_IP_VS_IPV6 policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_IP_VS_DEBUG policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n', 's390x': 'n'}> +CONFIG_IP_VS_TAB_BITS policy<{'amd64': '12', 'arm64': '12', 'armhf': '12', 'ppc64el': '12', 's390x': '12'}> +CONFIG_IP_VS_PROTO_TCP policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_IP_VS_PROTO_UDP policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_IP_VS_PROTO_ESP policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_IP_VS_PROTO_AH policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_IP_VS_PROTO_SCTP policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_IP_VS_RR policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_IP_VS_WRR policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_IP_VS_LC policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_IP_VS_WLC policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_IP_VS_FO policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_IP_VS_OVF policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_IP_VS_LBLC policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_IP_VS_LBLCR policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_IP_VS_DH policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_IP_VS_SH policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_IP_VS_MH policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_IP_VS_SED policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_IP_VS_NQ policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_IP_VS_SH_TAB_BITS policy<{'amd64': '8', 'arm64': '8', 'armhf': '8', 'ppc64el': '8', 's390x': '8'}> +CONFIG_IP_VS_MH_TAB_INDEX policy<{'amd64': '12', 'arm64': '12', 'armhf': '12', 'ppc64el': '12', 's390x': '12'}> +CONFIG_IP_VS_FTP policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_IP_VS_NFCT policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_IP_VS_PE_SIP policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> + +# Menu: Networking support >> Networking options >> Network packet filtering framework (Netfilter) >> IP: Netfilter Configuration +CONFIG_NF_SOCKET_IPV4 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_NF_TPROXY_IPV4 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_NF_TABLES_ARP policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_NF_FLOW_TABLE_IPV4 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_NF_DUP_IPV4 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_NF_LOG_ARP policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_NF_LOG_IPV4 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_NF_REJECT_IPV4 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_IP_NF_ARPTABLES policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_IP_NF_ARPFILTER policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_IP_NF_ARP_MANGLE policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_NF_NAT_SNMP_BASIC policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_NF_TABLES_IPV4 policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_NFT_DUP_IPV4 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_NFT_FIB_IPV4 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> + +# Menu: Networking support >> Networking options >> Network packet filtering framework (Netfilter) >> IP: Netfilter Configuration >> IP tables support (required for filtering/masq/NAT) +CONFIG_IP_NF_IPTABLES policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_IP_NF_MATCH_AH policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_IP_NF_MATCH_ECN policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_IP_NF_MATCH_RPFILTER policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_IP_NF_MATCH_TTL policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_IP_NF_FILTER policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_IP_NF_TARGET_REJECT policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_IP_NF_TARGET_SYNPROXY policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_IP_NF_RAW policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_IP_NF_SECURITY policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> + +# Menu: Networking support >> Networking options >> Network packet filtering framework (Netfilter) >> IP: Netfilter Configuration >> IP tables support (required for filtering/masq/NAT) >> Packet mangling +CONFIG_IP_NF_MANGLE policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_IP_NF_TARGET_CLUSTERIP policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_IP_NF_TARGET_ECN policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_IP_NF_TARGET_TTL policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> + +# Menu: Networking support >> Networking options >> Network packet filtering framework (Netfilter) >> IP: Netfilter Configuration >> IP tables support (required for filtering/masq/NAT) >> iptables NAT support +CONFIG_IP_NF_NAT policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_IP_NF_TARGET_MASQUERADE policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_IP_NF_TARGET_NETMAP policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_IP_NF_TARGET_REDIRECT policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> + +# Menu: Networking support >> Networking options >> Network packet filtering framework (Netfilter) >> IPv6: Netfilter Configuration +CONFIG_NF_SOCKET_IPV6 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_NF_TPROXY_IPV6 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_NF_FLOW_TABLE_IPV6 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_NF_DUP_IPV6 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_NF_REJECT_IPV6 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_NF_LOG_IPV6 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_NF_TABLES_IPV6 policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_NFT_DUP_IPV6 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_NFT_FIB_IPV6 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> + +# Menu: Networking support >> Networking options >> Network packet filtering framework (Netfilter) >> IPv6: Netfilter Configuration >> IP6 tables support (required for filtering) +CONFIG_IP6_NF_IPTABLES policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_IP6_NF_MATCH_AH policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_IP6_NF_MATCH_EUI64 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_IP6_NF_MATCH_FRAG policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_IP6_NF_MATCH_OPTS policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_IP6_NF_MATCH_HL policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_IP6_NF_MATCH_IPV6HEADER policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_IP6_NF_MATCH_MH policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_IP6_NF_MATCH_RPFILTER policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_IP6_NF_MATCH_RT policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_IP6_NF_MATCH_SRH policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_IP6_NF_TARGET_HL policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_IP6_NF_FILTER policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_IP6_NF_TARGET_REJECT policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_IP6_NF_TARGET_SYNPROXY policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_IP6_NF_MANGLE policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_IP6_NF_RAW policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_IP6_NF_SECURITY policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_IP6_NF_NAT policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_IP6_NF_TARGET_MASQUERADE policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_IP6_NF_TARGET_NPT policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> + +# Menu: Networking support >> Networking options >> Network testing +CONFIG_NET_PKTGEN policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_NET_DROP_MONITOR policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +# +CONFIG_NET_DROP_MONITOR note + +# Menu: Networking support >> Networking options >> QoS and/or fair queueing +CONFIG_NET_SCHED policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_NET_SCH_CBQ policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_NET_SCH_HTB policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_NET_SCH_HFSC policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_NET_SCH_ATM policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_NET_SCH_PRIO policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_NET_SCH_MULTIQ policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_NET_SCH_RED policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_NET_SCH_SFB policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_NET_SCH_SFQ policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_NET_SCH_TEQL policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_NET_SCH_TBF policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_NET_SCH_CBS policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_NET_SCH_ETF policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_NET_SCH_TAPRIO policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_NET_SCH_GRED policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_NET_SCH_DSMARK policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_NET_SCH_NETEM policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_NET_SCH_DRR policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_NET_SCH_MQPRIO policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_NET_SCH_SKBPRIO policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_NET_SCH_CHOKE policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_NET_SCH_QFQ policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_NET_SCH_CODEL policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_NET_SCH_FQ_CODEL policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_NET_SCH_CAKE policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_NET_SCH_FQ policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_NET_SCH_HHF policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_NET_SCH_PIE policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_NET_SCH_FQ_PIE policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_NET_SCH_INGRESS policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_NET_SCH_PLUG policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_NET_SCH_ETS policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_NET_CLS_BASIC policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_NET_CLS_TCINDEX policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_NET_CLS_ROUTE4 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_NET_CLS_FW policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_NET_CLS_U32 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_CLS_U32_PERF policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n', 's390x': 'n'}> +CONFIG_CLS_U32_MARK policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_NET_CLS_RSVP policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_NET_CLS_RSVP6 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_NET_CLS_FLOW policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_NET_CLS_CGROUP policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_NET_CLS_BPF policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_NET_CLS_FLOWER policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_NET_CLS_MATCHALL policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> + +# Menu: Networking support >> Networking options >> QoS and/or fair queueing >> Actions +CONFIG_NET_CLS_ACT policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_NET_ACT_POLICE policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_NET_ACT_GACT policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_GACT_PROB policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_NET_ACT_MIRRED policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_NET_ACT_SAMPLE policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_NET_ACT_IPT policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_NET_ACT_NAT policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_NET_ACT_PEDIT policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_NET_ACT_SIMP policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_NET_ACT_SKBEDIT policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_NET_ACT_CSUM policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_NET_ACT_MPLS policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_NET_ACT_VLAN policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_NET_ACT_BPF policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_NET_ACT_CONNMARK policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_NET_ACT_CTINFO policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_NET_ACT_SKBMOD policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_NET_ACT_TUNNEL_KEY policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_NET_ACT_CT policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_NET_ACT_GATE policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_NET_TC_SKB_EXT policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> + +# Menu: Networking support >> Networking options >> QoS and/or fair queueing >> Actions >> Inter-FE action based on IETF ForCES InterFE LFB +CONFIG_NET_ACT_IFE policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n', 's390x': 'n'}> + +# Menu: Networking support >> Networking options >> QoS and/or fair queueing >> Allow override default queue discipline +CONFIG_NET_SCH_DEFAULT policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n', 's390x': 'n'}> + +# Menu: Networking support >> Networking options >> QoS and/or fair queueing >> Allow override default queue discipline >> Default queuing discipline + +# Menu: Networking support >> Networking options >> QoS and/or fair queueing >> Extended Matches +CONFIG_NET_EMATCH policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_NET_EMATCH_STACK policy<{'amd64': '32', 'arm64': '32', 'armhf': '32', 'ppc64el': '32', 's390x': '32'}> +CONFIG_NET_EMATCH_CMP policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_NET_EMATCH_NBYTE policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_NET_EMATCH_U32 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_NET_EMATCH_META policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_NET_EMATCH_TEXT policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_NET_EMATCH_CANID policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_NET_EMATCH_IPSET policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_NET_EMATCH_IPT policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> + +# Menu: Networking support >> Networking options >> Qualcomm IPC Router support +CONFIG_QRTR policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'n'}> +CONFIG_QRTR_SMD policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_QRTR_TUN policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_QRTR_MHI policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> + +# Menu: Networking support >> Networking options >> TCP/IP networking +CONFIG_INET policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_IP_MULTICAST policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_NET_IPIP policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_NET_IPGRE_DEMUX policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_NET_IPGRE policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_NET_IPGRE_BROADCAST policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_SYN_COOKIES policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_NET_IPVTI policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_NET_FOU policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_NET_FOU_IP_TUNNELS policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_INET_AH policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_INET_ESP policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_INET_ESP_OFFLOAD policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_INET_ESPINTCP policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_INET_IPCOMP policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_TCP_MD5SIG policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_NETLABEL policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_MPTCP policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_MPTCP_IPV6 policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_MPTCP_HMAC_TEST policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n', 's390x': 'n'}> +CONFIG_NET_SWITCHDEV policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_NET_L3_MASTER_DEV policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_NET_NCSI policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_NCSI_OEM_CMD_GET_MAC policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_BPF_STREAM_PARSER policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +# +CONFIG_SYN_COOKIES mark +CONFIG_NET_SWITCHDEV mark note +CONFIG_NET_SWITCHDEV mark note + +# Menu: Networking support >> Networking options >> TCP/IP networking >> BPF based packet filtering framework (BPFILTER) +CONFIG_BPFILTER policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_BPFILTER_UMH policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> + +# Menu: Networking support >> Networking options >> TCP/IP networking >> INET: socket monitoring interface +CONFIG_INET_DIAG policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_INET_UDP_DIAG policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_INET_RAW_DIAG policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_INET_DIAG_DESTROY policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> + +# Menu: Networking support >> Networking options >> TCP/IP networking >> IP: advanced router +CONFIG_IP_ADVANCED_ROUTER policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_IP_FIB_TRIE_STATS policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_IP_MULTIPLE_TABLES policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_IP_ROUTE_MULTIPATH policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_IP_ROUTE_VERBOSE policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> + +# Menu: Networking support >> Networking options >> TCP/IP networking >> IP: kernel level autoconfiguration +CONFIG_IP_PNP policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n', 's390x': 'n'}> +# +CONFIG_IP_PNP note + +# Menu: Networking support >> Networking options >> TCP/IP networking >> IP: multicast routing +CONFIG_IP_MROUTE policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_IP_MROUTE_MULTIPLE_TABLES policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_IP_PIMSM_V1 policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_IP_PIMSM_V2 policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> + +# Menu: Networking support >> Networking options >> TCP/IP networking >> Layer Two Tunneling Protocol (L2TP) +CONFIG_L2TP policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_L2TP_DEBUGFS policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_L2TP_V3 policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_L2TP_IP policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_L2TP_ETH policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> + +# Menu: Networking support >> Networking options >> TCP/IP networking >> Open vSwitch +CONFIG_OPENVSWITCH policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_OPENVSWITCH_GRE policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_OPENVSWITCH_VXLAN policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_OPENVSWITCH_GENEVE policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> + +# Menu: Networking support >> Networking options >> TCP/IP networking >> TCP: advanced congestion control +CONFIG_TCP_CONG_ADVANCED policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_TCP_CONG_BIC policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_TCP_CONG_CUBIC policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_TCP_CONG_WESTWOOD policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_TCP_CONG_HTCP policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_TCP_CONG_HSTCP policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_TCP_CONG_HYBLA policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_TCP_CONG_VEGAS policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_TCP_CONG_NV policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_TCP_CONG_SCALABLE policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_TCP_CONG_LP policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_TCP_CONG_VENO policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_TCP_CONG_YEAH policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_TCP_CONG_ILLINOIS policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_TCP_CONG_DCTCP policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_TCP_CONG_CDG policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_TCP_CONG_BBR policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> + +# Menu: Networking support >> Networking options >> TCP/IP networking >> TCP: advanced congestion control >> Default TCP congestion control +CONFIG_DEFAULT_CUBIC policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_DEFAULT_RENO policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n', 's390x': 'n'}> + +# Menu: Networking support >> Networking options >> TCP/IP networking >> The DCCP Protocol +CONFIG_IP_DCCP policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> + +# Menu: Networking support >> Networking options >> TCP/IP networking >> The DCCP Protocol >> DCCP CCIDs Configuration +CONFIG_IP_DCCP_CCID2_DEBUG policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n', 's390x': 'n'}> +CONFIG_IP_DCCP_CCID3 policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n', 's390x': 'y'}> +CONFIG_IP_DCCP_CCID3_DEBUG policy<{'s390x': 'n'}> +# +CONFIG_IP_DCCP_CCID3 flag + +# Menu: Networking support >> Networking options >> TCP/IP networking >> The DCCP Protocol >> DCCP Kernel Hacking +CONFIG_IP_DCCP_DEBUG policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n', 's390x': 'n'}> + +# Menu: Networking support >> Networking options >> TCP/IP networking >> The IPv6 protocol +CONFIG_IPV6 policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_IPV6_ROUTER_PREF policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_IPV6_ROUTE_INFO policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_IPV6_OPTIMISTIC_DAD policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n', 's390x': 'n'}> +CONFIG_INET6_AH policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_INET6_ESP policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_INET6_ESP_OFFLOAD policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_INET6_ESPINTCP policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_INET6_IPCOMP policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_IPV6_MIP6 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_IPV6_ILA policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_IPV6_VTI policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_IPV6_SIT policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_IPV6_SIT_6RD policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_IPV6_TUNNEL policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_IPV6_GRE policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_IPV6_MULTIPLE_TABLES policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_IPV6_SUBTREES policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_IPV6_MROUTE policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_IPV6_MROUTE_MULTIPLE_TABLES policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_IPV6_PIMSM_V2 policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_IPV6_SEG6_LWTUNNEL policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_IPV6_SEG6_HMAC policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_IPV6_RPL_LWTUNNEL policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n', 's390x': 'n'}> +# +CONFIG_IPV6_OPTIMISTIC_DAD flag +CONFIG_IPV6 mark note + +# Menu: Networking support >> Networking options >> TCP/IP networking >> The Reliable Datagram Sockets Protocol +CONFIG_RDS policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_RDS_RDMA policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_RDS_TCP policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_RDS_DEBUG policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n', 's390x': 'n'}> + +# Menu: Networking support >> Networking options >> TCP/IP networking >> The SCTP Protocol +CONFIG_IP_SCTP policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_SCTP_DBG_OBJCNT policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n', 's390x': 'n'}> +CONFIG_SCTP_COOKIE_HMAC_MD5 policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_SCTP_COOKIE_HMAC_SHA1 policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +# +CONFIG_SCTP_DBG_OBJCNT flag + +# Menu: Networking support >> Networking options >> TCP/IP networking >> The SCTP Protocol >> Default SCTP cookie HMAC encoding +CONFIG_SCTP_DEFAULT_COOKIE_HMAC_MD5 policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n', 's390x': 'n'}> +CONFIG_SCTP_DEFAULT_COOKIE_HMAC_SHA1 policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_SCTP_DEFAULT_COOKIE_HMAC_NONE policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n', 's390x': 'n'}> + +# Menu: Networking support >> Networking options >> TCP/IP networking >> The TIPC Protocol +CONFIG_TIPC policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_TIPC_MEDIA_IB policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_TIPC_MEDIA_UDP policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_TIPC_CRYPTO policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_TIPC_DIAG policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> + +# Menu: Networking support >> Networking options >> Virtual Socket protocol +CONFIG_VSOCKETS policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_VSOCKETS_DIAG policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_VSOCKETS_LOOPBACK policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_VMWARE_VMCI_VSOCKETS policy<{'amd64': 'm'}> +CONFIG_VIRTIO_VSOCKETS policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_HYPERV_VSOCKETS policy<{'amd64': 'm'}> + +# Menu: Networking support >> Plan 9 Resource Sharing Support (9P2000) +CONFIG_NET_9P policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_NET_9P_VIRTIO policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_NET_9P_XEN policy<{'amd64': 'm', 'arm64': 'm'}> +CONFIG_NET_9P_RDMA policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_NET_9P_DEBUG policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n', 's390x': 'n'}> +# +CONFIG_NET_9P note + +# Menu: Networking support >> RF switch subsystem support +CONFIG_RFKILL policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'n'}> +CONFIG_RFKILL_INPUT policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_RFKILL_GPIO policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> + +# Menu: Networking support >> RxRPC session sockets +CONFIG_AF_RXRPC policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +CONFIG_AF_RXRPC_IPV6 policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_AF_RXRPC_INJECT_LOSS policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n', 's390x': 'n'}> +CONFIG_AF_RXRPC_DEBUG policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n', 's390x': 'n'}> +CONFIG_RXKAD policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> + +# Menu: Networking support >> WiMAX Wireless Broadband support +CONFIG_WIMAX policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'n'}> +CONFIG_WIMAX_DEBUG_LEVEL policy<{'amd64': '8', 'arm64': '8', 'armhf': '8', 'ppc64el': '8'}> + +# Menu: Networking support >> Wireless +CONFIG_WIRELESS policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_LIB80211_DEBUG policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n'}> + +# Menu: Networking support >> Wireless >> Generic IEEE 802.11 Networking Stack (mac80211) +CONFIG_MAC80211 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_MAC80211_RC_MINSTREL policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_MAC80211_MESH policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_MAC80211_LEDS policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_MAC80211_DEBUGFS policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_MAC80211_MESSAGE_TRACING policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> + +# Menu: Networking support >> Wireless >> Generic IEEE 802.11 Networking Stack (mac80211) >> Default rate control algorithm +CONFIG_MAC80211_RC_DEFAULT_MINSTREL policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> + +# Menu: Networking support >> Wireless >> Generic IEEE 802.11 Networking Stack (mac80211) >> Select mac80211 debugging features +CONFIG_MAC80211_DEBUG_MENU policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n'}> +CONFIG_MAC80211_STA_HASH_MAX_SIZE policy<{'amd64': '0', 'arm64': '0', 'armhf': '0', 'ppc64el': '0'}> + +# Menu: Networking support >> Wireless >> cfg80211 - wireless configuration API +CONFIG_CFG80211 policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm'}> +CONFIG_NL80211_TESTMODE policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n'}> +CONFIG_CFG80211_DEVELOPER_WARNINGS policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n'}> +CONFIG_CFG80211_DEFAULT_PS policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_CFG80211_DEBUGFS policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_CFG80211_CRDA_SUPPORT policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_CFG80211_WEXT policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +# +CONFIG_CFG80211_WEXT flag + +# Menu: Networking support >> Wireless >> cfg80211 - wireless configuration API >> cfg80211 certification onus +CONFIG_CFG80211_CERTIFICATION_ONUS policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n'}> +CONFIG_CFG80211_REQUIRE_SIGNED_REGDB policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_CFG80211_USE_KERNEL_REGDB_KEYS policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> + +# Menu: Platform selection +CONFIG_ARCH_ACTIONS policy<{'arm64': 'y', 'armhf': 'y'}> +CONFIG_ARCH_SUNXI policy<{'arm64': 'y', 'armhf': 'n'}> +CONFIG_ARCH_ALPINE policy<{'arm64': 'n', 'armhf': 'y'}> +CONFIG_ARCH_BCM2835 policy<{'arm64': 'y'}> +CONFIG_ARCH_BERLIN policy<{'arm64': 'y', 'armhf': 'y'}> +CONFIG_ARCH_BRCMSTB policy<{'arm64': 'y'}> +CONFIG_ARCH_EXYNOS policy<{'arm64': 'n', 'armhf': 'y'}> +CONFIG_ARCH_HISI policy<{'arm64': 'y', 'armhf': 'y'}> +CONFIG_ARCH_MEDIATEK policy<{'arm64': 'y', 'armhf': 'y'}> +CONFIG_ARCH_MESON policy<{'arm64': 'y', 'armhf': 'y'}> +CONFIG_ARCH_MVEBU policy<{'arm64': 'y', 'armhf': 'y'}> +CONFIG_ARCH_MXC policy<{'arm64': 'y', 'armhf-generic': 'y', 'armhf-generic-lpae': 'n'}> +CONFIG_ARCH_QCOM policy<{'arm64': 'y', 'armhf': 'y'}> +CONFIG_ARCH_REALTEK policy<{'arm64': 'y', 'armhf': 'y'}> +CONFIG_ARCH_RENESAS policy<{'arm64': 'y', 'armhf': 'y'}> +CONFIG_ARCH_ROCKCHIP policy<{'arm64': 'y', 'armhf': 'y'}> +CONFIG_ARCH_TEGRA policy<{'arm64': 'n', 'armhf-generic': 'y', 'armhf-generic-lpae': 'n'}> +CONFIG_ARCH_UNIPHIER policy<{'arm64': 'n', 'armhf': 'y'}> +CONFIG_ARCH_VEXPRESS policy<{'arm64': 'y', 'armhf': 'y'}> +CONFIG_ARCH_ZX policy<{'arm64': 'n', 'armhf': 'n'}> +# +CONFIG_ARCH_ROCKCHIP note +CONFIG_ARCH_ZX note + +# Menu: Platform selection >> Architecture: arm64 +CONFIG_ARCH_AGILEX policy<{'arm64': 'y'}> +CONFIG_ARCH_BCM_IPROC policy<{'arm64': 'y'}> +CONFIG_ARCH_BITMAIN policy<{'arm64': 'y'}> +CONFIG_ARCH_K3 policy<{'arm64': 'y'}> +CONFIG_ARCH_LAYERSCAPE policy<{'arm64': 'y'}> +CONFIG_ARCH_LG1K policy<{'arm64': 'y'}> +CONFIG_ARCH_S32 policy<{'arm64': 'y'}> +CONFIG_ARCH_SEATTLE policy<{'arm64': 'y'}> +CONFIG_ARCH_STRATIX10 policy<{'arm64': 'y'}> +CONFIG_ARCH_SYNQUACER policy<{'arm64': 'y'}> +CONFIG_ARCH_SPRD policy<{'arm64': 'y'}> +CONFIG_ARCH_THUNDER policy<{'arm64': 'y'}> +CONFIG_ARCH_THUNDER2 policy<{'arm64': 'y'}> +CONFIG_ARCH_XGENE policy<{'arm64': 'y'}> +CONFIG_ARCH_ZYNQMP policy<{'arm64': 'y'}> + +# Menu: Power management and ACPI options +CONFIG_SUSPEND policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_SUSPEND_FREEZER policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_SUSPEND_SKIP_SYNC policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n'}> +CONFIG_HIBERNATION policy<{'amd64': 'y', 'arm64': 'n', 'armhf': 'y', 'ppc64el': 'n'}> +CONFIG_HIBERNATION_SNAPSHOT_DEV policy<{'amd64': 'y', 'armhf': 'y'}> +CONFIG_PM_STD_PARTITION policy<{'amd64': '""', 'armhf': '""'}> +CONFIG_PM_AUTOSLEEP policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n'}> +CONFIG_PM_WAKELOCKS policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_PM_WAKELOCKS_LIMIT policy<{'amd64': '100', 'arm64': '100', 'armhf': '100', 'ppc64el': '100'}> +CONFIG_PM_WAKELOCKS_GC policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_PM policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_PM_TRACE_RTC policy<{'amd64': 'y'}> +CONFIG_APM_EMULATION policy<{'armhf': 'n'}> +CONFIG_WQ_POWER_EFFICIENT_DEFAULT policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_ENERGY_MODEL policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_KVM_GUEST policy<{'amd64': 'y', 'ppc64el': 'y'}> +CONFIG_SFI policy<{'amd64': 'y'}> +CONFIG_INTEL_IDLE policy<{'amd64': 'y'}> +# +CONFIG_HIBERNATION flag +CONFIG_HIBERNATION mark note +CONFIG_PM mark note + +# Menu: Power management and ACPI options >> 512x-based boards >> Architecture: powerpc + +# Menu: Power management and ACPI options >> 52xx-based boards >> Architecture: powerpc + +# Menu: Power management and ACPI options >> 82xx-based boards (PQ II) >> Architecture: powerpc + +# Menu: Power management and ACPI options >> 83xx-based boards >> Architecture: powerpc + +# Menu: Power management and ACPI options >> 86xx-based boards >> Architecture: powerpc + +# Menu: Power management and ACPI options >> 8xx Machine Type >> Architecture: powerpc + +# Menu: Power management and ACPI options >> ACPI (Advanced Configuration and Power Interface) Support +# + +# Menu: Power management and ACPI options >> ACPI (Advanced Configuration and Power Interface) Support >> ACPI Platform Error Interface (APEI) + +# Menu: Power management and ACPI options >> ACPI (Advanced Configuration and Power Interface) Support >> PMIC (Power Management Integrated Circuit) operation region support + +# Menu: Power management and ACPI options >> APM (Advanced Power Management) BIOS support >> Architecture: x86 +# +CONFIG_APM flag + +# Menu: Power management and ACPI options >> Architecture: arm + +# Menu: Power management and ACPI options >> Architecture: arm64 + +# Menu: Power management and ACPI options >> Architecture: powerpc +CONFIG_SCOM_DEBUGFS policy<{'ppc64el': 'y'}> +CONFIG_EPAPR_PARAVIRT policy<{'ppc64el': 'y'}> +CONFIG_PPC_OF_BOOT_TRAMPOLINE policy<{'ppc64el': 'y'}> +CONFIG_PPC_DT_CPU_FTRS policy<{'ppc64el': 'y'}> +CONFIG_UDBG_RTAS_CONSOLE policy<{'ppc64el': 'n'}> +CONFIG_MPIC_MSGR policy<{'ppc64el': 'n'}> +CONFIG_RTAS_PROC policy<{'ppc64el': 'y'}> +CONFIG_RTAS_FLASH policy<{'ppc64el': 'm'}> +CONFIG_QE_GPIO policy<{'ppc64el': 'y'}> +CONFIG_GEN_RTC policy<{'ppc64el': 'y'}> + +# Menu: Power management and ACPI options >> Architecture: x86 + +# Menu: Power management and ACPI options >> CPU Frequency scaling + +# Menu: Power management and ACPI options >> CPU Frequency scaling >> CPU Frequency scaling +CONFIG_CPU_FREQ policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_CPU_FREQ_STAT policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_CPU_FREQ_GOV_PERFORMANCE policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_CPU_FREQ_GOV_POWERSAVE policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_CPU_FREQ_GOV_USERSPACE policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_CPU_FREQ_GOV_ONDEMAND policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_CPU_FREQ_GOV_CONSERVATIVE policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_CPU_FREQ_GOV_SCHEDUTIL policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_X86_INTEL_PSTATE policy<{'amd64': 'y'}> +CONFIG_X86_PCC_CPUFREQ policy<{'amd64': 'y'}> +CONFIG_X86_SPEEDSTEP_CENTRINO policy<{'amd64': 'y'}> +CONFIG_X86_P4_CLOCKMOD policy<{'amd64': 'm'}> +CONFIG_ACPI_CPPC_CPUFREQ policy<{'arm64': 'm'}> +CONFIG_ARM_ALLWINNER_SUN50I_CPUFREQ_NVMEM policy<{'arm64': 'm'}> +CONFIG_ARM_SCPI_CPUFREQ policy<{'arm64': 'm', 'armhf': 'm'}> +CONFIG_ARM_VEXPRESS_SPC_CPUFREQ policy<{'armhf': 'm'}> +CONFIG_ARM_BRCMSTB_AVS_CPUFREQ policy<{'arm64': 'm'}> +CONFIG_ARM_IMX6Q_CPUFREQ policy<{'arm64': 'm', 'armhf-generic': 'm'}> +CONFIG_ARM_MEDIATEK_CPUFREQ policy<{'arm64': 'm', 'armhf': 'm'}> +CONFIG_ARM_OMAP2PLUS_CPUFREQ policy<{'armhf': 'y'}> +CONFIG_ARM_QCOM_CPUFREQ_NVMEM policy<{'arm64': 'm', 'armhf': 'm'}> +CONFIG_ARM_QCOM_CPUFREQ_HW policy<{'arm64': 'm', 'armhf': 'm'}> +CONFIG_ARM_RASPBERRYPI_CPUFREQ policy<{'arm64': 'm'}> +CONFIG_ARM_SCMI_CPUFREQ policy<{'arm64': 'm', 'armhf': 'm'}> +CONFIG_ARM_TEGRA186_CPUFREQ policy<{'armhf-generic': 'm'}> +CONFIG_ARM_TI_CPUFREQ policy<{'armhf': 'y'}> +CONFIG_POWERNV_CPUFREQ policy<{'ppc64el': 'y'}> +CONFIG_QORIQ_CPUFREQ policy<{'arm64': 'm'}> +# +CONFIG_CPU_FREQ_STAT note +CONFIG_CPU_FREQ_GOV_PERFORMANCE note +CONFIG_CPU_FREQ_GOV_POWERSAVE note +CONFIG_CPU_FREQ_GOV_USERSPACE note +CONFIG_CPU_FREQ_GOV_ONDEMAND note +CONFIG_CPU_FREQ_GOV_CONSERVATIVE note +CONFIG_X86_PCC_CPUFREQ note +CONFIG_X86_SPEEDSTEP_CENTRINO note +CONFIG_X86_SPEEDSTEP_ICH note +CONFIG_X86_SPEEDSTEP_SMI note +CONFIG_X86_CPUFREQ_NFORCE2 note + +# Menu: Power management and ACPI options >> CPU Frequency scaling >> CPU Frequency scaling >> ACPI Processor P-States driver +CONFIG_X86_ACPI_CPUFREQ policy<{'amd64': 'y'}> +CONFIG_X86_ACPI_CPUFREQ_CPB policy<{'amd64': 'y'}> +CONFIG_X86_POWERNOW_K8 policy<{'amd64': 'y'}> +CONFIG_X86_AMD_FREQ_SENSITIVITY policy<{'amd64': 'm'}> +# +CONFIG_X86_ACPI_CPUFREQ note +CONFIG_X86_POWERNOW_K8 note + +# Menu: Power management and ACPI options >> CPU Frequency scaling >> CPU Frequency scaling >> CPUfreq driver for Samsung S3C24XX series CPUs (EXPERIMENTAL) + +# Menu: Power management and ACPI options >> CPU Frequency scaling >> CPU Frequency scaling >> Default CPUFreq governor +CONFIG_CPU_FREQ_DEFAULT_GOV_PERFORMANCE policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n'}> +CONFIG_CPU_FREQ_DEFAULT_GOV_POWERSAVE policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n'}> +CONFIG_CPU_FREQ_DEFAULT_GOV_USERSPACE policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n'}> +CONFIG_CPU_FREQ_DEFAULT_GOV_ONDEMAND policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_CPU_FREQ_DEFAULT_GOV_CONSERVATIVE policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n'}> +CONFIG_CPU_FREQ_DEFAULT_GOV_SCHEDUTIL policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n'}> +# +CONFIG_CPU_FREQ_DEFAULT_GOV_PERFORMANCE note + +# Menu: Power management and ACPI options >> CPU Frequency scaling >> CPU Frequency scaling >> Generic DT based cpufreq driver +CONFIG_CPUFREQ_DT policy<{'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_ARM_ARMADA_37XX_CPUFREQ policy<{'arm64': 'm', 'armhf': 'm'}> +CONFIG_ARM_ARMADA_8K_CPUFREQ policy<{'arm64': 'm', 'armhf': 'm'}> +CONFIG_ARM_HIGHBANK_CPUFREQ policy<{'armhf': 'm'}> +CONFIG_ARM_IMX_CPUFREQ_DT policy<{'arm64': 'm', 'armhf-generic': 'm'}> +CONFIG_ARM_TEGRA20_CPUFREQ policy<{'armhf-generic': 'y'}> +CONFIG_ARM_TEGRA124_CPUFREQ policy<{'armhf-generic': 'y'}> +# +CONFIG_CPUFREQ_DT note + +# Menu: Power management and ACPI options >> CPU Idle + +# Menu: Power management and ACPI options >> CPU Idle >> CPU idle PM support +CONFIG_CPU_IDLE policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_CPU_IDLE_GOV_LADDER policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_CPU_IDLE_GOV_MENU policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_CPU_IDLE_GOV_TEO policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_CPU_IDLE_GOV_HALTPOLL policy<{'amd64': 'y', 'ppc64el': 'y'}> +CONFIG_HALTPOLL_CPUIDLE policy<{'amd64': 'm'}> + +# Menu: Power management and ACPI options >> CPU Idle >> CPU idle PM support >> ARM CPU Idle Drivers +CONFIG_ARM_CPUIDLE policy<{'arm64': 'y', 'armhf': 'y'}> +CONFIG_ARM_PSCI_CPUIDLE policy<{'arm64': 'y', 'armhf': 'y'}> +CONFIG_ARM_BIG_LITTLE_CPUIDLE policy<{'armhf': 'y'}> +CONFIG_ARM_HIGHBANK_CPUIDLE policy<{'armhf-generic': 'n', 'armhf-generic-lpae': 'y'}> +CONFIG_ARM_EXYNOS_CPUIDLE policy<{'armhf': 'y'}> +CONFIG_ARM_MVEBU_V7_CPUIDLE policy<{'armhf': 'y'}> +CONFIG_ARM_TEGRA_CPUIDLE policy<{'armhf-generic': 'n'}> +CONFIG_ARM_QCOM_SPM_CPUIDLE policy<{'armhf': 'y'}> +# +CONFIG_ARM_HIGHBANK_CPUIDLE note + +# Menu: Power management and ACPI options >> CPU Idle >> CPU idle PM support >> MIPS CPU Idle Drivers + +# Menu: Power management and ACPI options >> CPU Idle >> CPU idle PM support >> POWERPC CPU Idle Drivers +CONFIG_PSERIES_CPUIDLE policy<{'ppc64el': 'y'}> +CONFIG_POWERNV_CPUIDLE policy<{'ppc64el': 'y'}> + +# Menu: Power management and ACPI options >> CPUIdle driver >> Architecture: powerpc + +# Menu: Power management and ACPI options >> CPUIdle driver >> CPU Idle + +# Menu: Power management and ACPI options >> CPUIdle driver >> CPU Idle >> CPU idle PM support + +# Menu: Power management and ACPI options >> CPUIdle driver >> CPU Idle >> CPU idle PM support >> ARM CPU Idle Drivers +# + +# Menu: Power management and ACPI options >> CPUIdle driver >> CPU Idle >> CPU idle PM support >> MIPS CPU Idle Drivers + +# Menu: Power management and ACPI options >> CPUIdle driver >> CPU Idle >> CPU idle PM support >> POWERPC CPU Idle Drivers + +# Menu: Power management and ACPI options >> Cell Broadband Engine options >> Architecture: powerpc + +# Menu: Power management and ACPI options >> Embedded 6xx/7xx/7xxx-based boards >> Architecture: powerpc + +# Menu: Power management and ACPI options >> Freescale Book-E Machine Type >> Architecture: powerpc + +# Menu: Power management and ACPI options >> Freescale Ethernet driver platform-specific options >> Architecture: powerpc + +# Menu: Power management and ACPI options >> Freescale Ethernet driver platform-specific options >> Second Ethernet channel >> Architecture: powerpc + +# Menu: Power management and ACPI options >> IBM PowerNV (Non-Virtualized) platform support >> Architecture: powerpc +CONFIG_PPC_POWERNV policy<{'ppc64el': 'y'}> +CONFIG_OPAL_PRD policy<{'ppc64el': 'm'}> +CONFIG_PPC_MEMTRACE policy<{'ppc64el': 'y'}> +CONFIG_PPC_VAS policy<{'ppc64el': 'y'}> + +# Menu: Power management and ACPI options >> IBM pSeries & new (POWER5-based) iSeries +CONFIG_CMM policy<{'ppc64el': 'm', 's390x': 'y'}> +# +CONFIG_CMM flag + +# Menu: Power management and ACPI options >> IBM pSeries & new (POWER5-based) iSeries >> Architecture: powerpc +CONFIG_PPC_PSERIES policy<{'ppc64el': 'y'}> +CONFIG_PPC_SPLPAR policy<{'ppc64el': 'y'}> +CONFIG_DTL policy<{'ppc64el': 'y'}> +CONFIG_PSERIES_ENERGY policy<{'ppc64el': 'm'}> +CONFIG_SCANLOG policy<{'ppc64el': 'm'}> +CONFIG_IO_EVENT_IRQ policy<{'ppc64el': 'y'}> +CONFIG_LPARCFG policy<{'ppc64el': 'y'}> +CONFIG_PPC_SMLPAR policy<{'ppc64el': 'y'}> +CONFIG_HV_PERF_CTRS policy<{'ppc64el': 'y'}> +CONFIG_PAPR_SCM policy<{'ppc64el': 'm'}> +CONFIG_PPC_SVM policy<{'ppc64el': 'y'}> + +# Menu: Power management and ACPI options >> MPC8xx CPM Options >> 8xx advanced setup >> Architecture: powerpc + +# Menu: Power management and ACPI options >> MPC8xx CPM Options >> 8xx advanced setup >> Pinned Kernel TLBs >> Architecture: powerpc + +# Menu: Power management and ACPI options >> MPC8xx CPM Options >> Architecture: powerpc + +# Menu: Power management and ACPI options >> MPC8xx CPM Options >> Microcode patch selection >> Architecture: powerpc + +# Menu: Power management and ACPI options >> PA Semi PWRficient options >> Architecture: powerpc + +# Menu: Power management and ACPI options >> PS3 Platform Options >> Architecture: powerpc + +# Menu: Power management and ACPI options >> PS3 Platform Options >> PS3 Advanced configuration options >> Architecture: powerpc + +# Menu: Power management and ACPI options >> Power Management Debug Support +CONFIG_PM_DEBUG policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_PM_ADVANCED_DEBUG policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y'}> +CONFIG_PM_TEST_SUSPEND policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n'}> +CONFIG_DPM_WATCHDOG policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n'}> +# +CONFIG_PM_DEBUG flag + +# Menu: Power management and ACPI options >> Support for 47x variant >> Architecture: powerpc + +# Menu: Processor support +CONFIG_SMP policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_NR_CPUS policy<{'amd64': '8192', 'arm64': '256', 'armhf': '4', 'ppc64el': '2048', 's390x': '512'}> +# +CONFIG_NR_CPUS note + +# Menu: Processor support >> Architecture: powerpc +CONFIG_ALTIVEC policy<{'ppc64el': 'y'}> +CONFIG_VSX policy<{'ppc64el': 'y'}> +CONFIG_PPC_RADIX_MMU policy<{'ppc64el': 'y'}> +CONFIG_PPC_RADIX_MMU_DEFAULT policy<{'ppc64el': 'y'}> +CONFIG_PPC_KUEP policy<{'ppc64el': 'y'}> +CONFIG_PPC_KUAP policy<{'ppc64el': 'y'}> +CONFIG_PPC_KUAP_DEBUG policy<{'ppc64el': 'n'}> +CONFIG_PMU_SYSFS policy<{'ppc64el': 'n'}> + +# Menu: Processor support >> CPU selection +CONFIG_GENERIC_CPU policy<{'amd64': 'y', 'ppc64el': 'y'}> + +# Menu: Processor support >> CPU selection >> Architecture: powerpc +CONFIG_POWER7_CPU policy<{'ppc64el': 'n'}> +CONFIG_POWER8_CPU policy<{'ppc64el': 'n'}> +CONFIG_POWER9_CPU policy<{'ppc64el': 'n'}> + +# Menu: Processor support >> Processor Type >> Architecture: powerpc +CONFIG_PPC_BOOK3S_64 policy<{'ppc64el': 'y'}> +CONFIG_PPC_BOOK3E_64 policy<{'ppc64el': 'n'}> + +# Menu: Processor type and features +CONFIG_KEXEC_FILE policy<{'amd64': 'y', 'arm64': 'y', 'ppc64el': 'y', 's390x': 'n'}> +CONFIG_ARCH_RANDOM policy<{'amd64': 'y', 'arm64': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_RELOCATABLE policy<{'amd64': 'y', 'arm64': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_RANDOMIZE_BASE policy<{'amd64': 'y', 'arm64': 'y', 's390x': 'y'}> +CONFIG_SCHED_MC policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 's390x': 'y'}> +CONFIG_SCHED_SMT policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'n', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_HOTPLUG_CPU policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_NUMA policy<{'amd64': 'y', 'arm64': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_NODES_SHIFT policy<{'amd64': '10', 'arm64': '6', 'ppc64el': '8', 's390x': '1'}> +CONFIG_PARAVIRT policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'n'}> +CONFIG_PARAVIRT_TIME_ACCOUNTING policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n'}> +CONFIG_KEXEC_SIG policy<{'amd64': 'y', 'arm64': 'y'}> +CONFIG_XEN policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'n'}> +CONFIG_HARDEN_BRANCH_PREDICTOR policy<{'arm64': 'y', 'armhf': 'y'}> +CONFIG_HIGHPTE policy<{'armhf': 'y'}> +CONFIG_CMDLINE_BOOL policy<{'amd64': 'n', 'ppc64el': 'n'}> +CONFIG_HIGHMEM policy<{'armhf': 'y'}> +CONFIG_FORCE_MAX_ZONEORDER policy<{'arm64-generic': '13', 'arm64-generic-64k': '14', 'armhf-generic': '12', 'armhf-generic-lpae': '11', 'ppc64el': '9', 's390x': '9'}> +CONFIG_COMPAT_VDSO policy<{'amd64': 'n'}> +# +CONFIG_RELOCATABLE flag +CONFIG_HOTPLUG_CPU flag +CONFIG_NUMA note +CONFIG_COMPAT_VDSO mark + +# Menu: Processor type and features >> ARM errata workarounds via the alternatives framework >> Architecture: arm64 +CONFIG_ARM64_ERRATUM_826319 policy<{'arm64': 'y'}> +CONFIG_ARM64_ERRATUM_827319 policy<{'arm64': 'y'}> +CONFIG_ARM64_ERRATUM_824069 policy<{'arm64': 'y'}> +CONFIG_ARM64_ERRATUM_819472 policy<{'arm64': 'y'}> +CONFIG_ARM64_ERRATUM_832075 policy<{'arm64': 'y'}> +CONFIG_ARM64_ERRATUM_834220 policy<{'arm64': 'y'}> +CONFIG_ARM64_ERRATUM_845719 policy<{'arm64': 'y'}> +CONFIG_ARM64_ERRATUM_843419 policy<{'arm64': 'y'}> +CONFIG_ARM64_ERRATUM_1024718 policy<{'arm64': 'y'}> +CONFIG_ARM64_ERRATUM_1418040 policy<{'arm64': 'y'}> +CONFIG_ARM64_ERRATUM_1165522 policy<{'arm64': 'y'}> +CONFIG_ARM64_ERRATUM_1530923 policy<{'arm64': 'y'}> +CONFIG_ARM64_ERRATUM_1286807 policy<{'arm64': 'y'}> +CONFIG_ARM64_ERRATUM_1319367 policy<{'arm64': 'y'}> +CONFIG_ARM64_ERRATUM_1463225 policy<{'arm64': 'y'}> +CONFIG_ARM64_ERRATUM_1542419 policy<{'arm64': 'y'}> +CONFIG_CAVIUM_ERRATUM_22375 policy<{'arm64': 'y'}> +CONFIG_CAVIUM_ERRATUM_23144 policy<{'arm64': 'y'}> +CONFIG_CAVIUM_ERRATUM_23154 policy<{'arm64': 'y'}> +CONFIG_CAVIUM_ERRATUM_27456 policy<{'arm64': 'y'}> +CONFIG_CAVIUM_ERRATUM_30115 policy<{'arm64': 'y'}> +CONFIG_CAVIUM_TX2_ERRATUM_219 policy<{'arm64': 'y'}> +CONFIG_QCOM_FALKOR_ERRATUM_1003 policy<{'arm64': 'y'}> +CONFIG_QCOM_FALKOR_ERRATUM_1009 policy<{'arm64': 'y'}> +CONFIG_QCOM_QDF2400_ERRATUM_0065 policy<{'arm64': 'y'}> +CONFIG_SOCIONEXT_SYNQUACER_PREITS policy<{'arm64': 'y'}> +CONFIG_HISILICON_ERRATUM_161600802 policy<{'arm64': 'y'}> +CONFIG_QCOM_FALKOR_ERRATUM_E1041 policy<{'arm64': 'y'}> +CONFIG_FUJITSU_ERRATUM_010001 policy<{'arm64': 'y'}> +# +CONFIG_ARM64_ERRATUM_843419 mark note +CONFIG_QCOM_QDF2400_ERRATUM_0065 mark note + +# Menu: Processor type and features >> ARMv8.1 architectural features >> Architecture: arm64 +CONFIG_ARM64_HW_AFDBM policy<{'arm64': 'y'}> +CONFIG_ARM64_PAN policy<{'arm64': 'y'}> +CONFIG_ARM64_USE_LSE_ATOMICS policy<{'arm64': 'y'}> +CONFIG_ARM64_VHE policy<{'arm64': 'y'}> +# +CONFIG_ARM64_USE_LSE_ATOMICS mark note + +# Menu: Processor type and features >> ARMv8.2 architectural features >> Architecture: arm64 +CONFIG_ARM64_UAO policy<{'arm64': 'y'}> +CONFIG_ARM64_PMEM policy<{'arm64': 'y'}> +CONFIG_ARM64_RAS_EXTN policy<{'arm64': 'y'}> +CONFIG_ARM64_CNP policy<{'arm64': 'y'}> + +# Menu: Processor type and features >> ARMv8.3 architectural features >> Architecture: arm64 +CONFIG_ARM64_PTR_AUTH policy<{'arm64': 'y'}> + +# Menu: Processor type and features >> ARMv8.4 architectural features >> Architecture: arm64 +CONFIG_ARM64_AMU_EXTN policy<{'arm64': 'y'}> + +# Menu: Processor type and features >> ARMv8.5 architectural features + +# Menu: Processor type and features >> ARMv8.5 architectural features >> Architecture: arm64 +CONFIG_ARM64_BTI policy<{'arm64': 'y'}> +CONFIG_ARM64_BTI_KERNEL policy<{'arm64': 'y'}> +CONFIG_ARM64_E0PD policy<{'arm64': 'y'}> + +# Menu: Processor type and features >> Architecture: arm +CONFIG_HAVE_ARM_ARCH_TIMER policy<{'armhf': 'y'}> +CONFIG_ARM_PSCI policy<{'armhf': 'y'}> +CONFIG_THUMB2_KERNEL policy<{'armhf': 'n'}> +CONFIG_ARM_PATCH_IDIV policy<{'armhf': 'y'}> +CONFIG_AEABI policy<{'armhf': 'y'}> +CONFIG_OABI_COMPAT policy<{'armhf': 'n'}> +CONFIG_CPU_SW_DOMAIN_PAN policy<{'armhf-generic': 'y'}> +CONFIG_ARM_MODULE_PLTS policy<{'armhf': 'y'}> +CONFIG_UACCESS_WITH_MEMCPY policy<{'armhf': 'n'}> + +# Menu: Processor type and features >> Architecture: arm64 +CONFIG_KEXEC_IMAGE_VERIFY_SIG policy<{'arm64': 'n'}> +CONFIG_UNMAP_KERNEL_AT_EL0 policy<{'arm64': 'y'}> +CONFIG_HARDEN_EL2_VECTORS policy<{'arm64': 'y'}> +CONFIG_ARM64_SSBD policy<{'arm64': 'y'}> +CONFIG_RODATA_FULL_DEFAULT_ENABLED policy<{'arm64': 'y'}> +CONFIG_ARM64_SW_TTBR0_PAN policy<{'arm64': 'y'}> +CONFIG_ARM64_TAGGED_ADDR_ABI policy<{'arm64': 'y'}> +CONFIG_ARM64_SVE policy<{'arm64': 'y'}> +CONFIG_ARM64_MODULE_PLTS policy<{'arm64': 'y'}> +CONFIG_ARM64_PSEUDO_NMI policy<{'arm64': 'y'}> +CONFIG_ARM64_DEBUG_PRIORITY_MASKING policy<{'arm64': 'n'}> +CONFIG_RANDOMIZE_MODULE_REGION_FULL policy<{'arm64': 'y'}> +# +CONFIG_KEXEC_IMAGE_VERIFY_SIG flag + +# Menu: Processor type and features >> Architecture: powerpc +CONFIG_PPC_TRANSACTIONAL_MEM policy<{'ppc64el': 'y'}> +CONFIG_PPC_UV policy<{'ppc64el': 'y'}> +CONFIG_LD_HEAD_STUB_CATCH policy<{'ppc64el': 'n'}> +CONFIG_PPC64_SUPPORTS_MEMORY_FAILURE policy<{'ppc64el': 'y'}> +CONFIG_RELOCATABLE_TEST policy<{'ppc64el': 'n'}> +CONFIG_FA_DUMP policy<{'ppc64el': 'y'}> +CONFIG_OPAL_CORE policy<{'ppc64el': 'n'}> +CONFIG_IRQ_ALL_CPUS policy<{'ppc64el': 'y'}> +CONFIG_THREAD_SHIFT policy<{'ppc64el': '14'}> +CONFIG_DATA_SHIFT policy<{'ppc64el': '16'}> +CONFIG_PPC_SUBPAGE_PROT policy<{'ppc64el': 'y'}> +CONFIG_PPC_DENORMALISATION policy<{'ppc64el': 'y'}> +CONFIG_EXTRA_TARGETS policy<{'ppc64el': '""'}> +CONFIG_PPC_MEM_KEYS policy<{'ppc64el': 'n'}> +CONFIG_PPC_SECURE_BOOT policy<{'ppc64el': 'y'}> +CONFIG_PPC_SECVAR_SYSFS policy<{'ppc64el': 'y'}> +CONFIG_PPC_RTAS_FILTER policy<{'ppc64el': 'y'}> +# +CONFIG_FA_DUMP note +CONFIG_PPC_MEM_KEYS flag note +CONFIG_PPC_SECURE_BOOT mark note note +CONFIG_PPC_SECVAR_SYSFS mark note +CONFIG_PPC_RTAS_FILTER mark note + +# Menu: Processor type and features >> Architecture: s390 +CONFIG_KERNEL_NOBP policy<{'s390x': 'n'}> +CONFIG_EXPOLINE policy<{'s390x': 'y'}> +CONFIG_SCHED_TOPOLOGY policy<{'s390x': 'y'}> + +# Menu: Processor type and features >> Architecture: x86 +CONFIG_X86_FEATURE_NAMES policy<{'amd64': 'y'}> +CONFIG_X86_X2APIC policy<{'amd64': 'y'}> +CONFIG_X86_MPPARSE policy<{'amd64': 'y'}> +CONFIG_RETPOLINE policy<{'amd64': 'y'}> +CONFIG_X86_CPU_RESCTRL policy<{'amd64': 'y'}> +CONFIG_X86_EXTENDED_PLATFORM policy<{'amd64': 'y'}> +CONFIG_X86_INTEL_LPSS policy<{'amd64': 'y'}> +CONFIG_X86_AMD_PLATFORM_DEVICE policy<{'amd64': 'y'}> +CONFIG_IOSF_MBI policy<{'amd64': 'y'}> +CONFIG_IOSF_MBI_DEBUG policy<{'amd64': 'y'}> +CONFIG_SCHED_OMIT_FRAME_POINTER policy<{'amd64': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_HPET_TIMER policy<{'amd64': 'y'}> +CONFIG_GART_IOMMU policy<{'amd64': 'y'}> +CONFIG_X86_REROUTE_FOR_BROKEN_BOOT_IRQS policy<{'amd64': 'y'}> +CONFIG_X86_16BIT policy<{'amd64': 'y'}> +CONFIG_X86_VSYSCALL_EMULATION policy<{'amd64': 'y'}> +CONFIG_X86_IOPL_IOPERM policy<{'amd64': 'y'}> +CONFIG_I8K policy<{'amd64': 'm'}> +CONFIG_X86_MSR policy<{'amd64': 'm'}> +CONFIG_X86_CPUID policy<{'amd64': 'm'}> +CONFIG_X86_5LEVEL policy<{'amd64': 'y'}> +CONFIG_X86_CPA_STATISTICS policy<{'amd64': 'n'}> +CONFIG_AMD_MEM_ENCRYPT policy<{'amd64': 'y'}> +CONFIG_AMD_MEM_ENCRYPT_ACTIVE_BY_DEFAULT policy<{'amd64': 'n'}> +CONFIG_ARCH_MEMORY_PROBE policy<{'amd64': 'y', 'ppc64el': 'y'}> +CONFIG_X86_PMEM_LEGACY policy<{'amd64': 'y'}> +CONFIG_X86_CHECK_BIOS_CORRUPTION policy<{'amd64': 'y'}> +CONFIG_X86_BOOTPARAM_MEMORY_CORRUPTION_CHECK policy<{'amd64': 'y'}> +CONFIG_X86_RESERVE_LOW policy<{'amd64': '64'}> +CONFIG_MTRR policy<{'amd64': 'y'}> +CONFIG_MTRR_SANITIZER policy<{'amd64': 'y'}> +CONFIG_MTRR_SANITIZER_ENABLE_DEFAULT policy<{'amd64': '1'}> +CONFIG_MTRR_SANITIZER_SPARE_REG_NR_DEFAULT policy<{'amd64': '1'}> +CONFIG_X86_PAT policy<{'amd64': 'y'}> +CONFIG_X86_SMAP policy<{'amd64': 'y'}> +CONFIG_X86_UMIP policy<{'amd64': 'y'}> +CONFIG_X86_INTEL_MEMORY_PROTECTION_KEYS policy<{'amd64': 'y'}> +CONFIG_EFI_STUB policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y'}> +CONFIG_EFI_MIXED policy<{'amd64': 'y'}> +CONFIG_KEXEC_SIG_FORCE policy<{'amd64': 'n'}> +CONFIG_KEXEC_BZIMAGE_VERIFY_SIG policy<{'amd64': 'y'}> +CONFIG_KEXEC_JUMP policy<{'amd64': 'y'}> +CONFIG_PHYSICAL_ALIGN policy<{'amd64': '0x200000'}> +CONFIG_RANDOMIZE_MEMORY policy<{'amd64': 'y'}> +CONFIG_RANDOMIZE_MEMORY_PHYSICAL_PADDING policy<{'amd64': '0xa'}> +CONFIG_BOOTPARAM_HOTPLUG_CPU0 policy<{'amd64': 'n'}> +CONFIG_DEBUG_HOTPLUG_CPU0 policy<{'amd64': 'n'}> +CONFIG_MODIFY_LDT_SYSCALL policy<{'amd64': 'y'}> +# +CONFIG_X86_LEGACY_VM86 note +CONFIG_KEXEC_BZIMAGE_VERIFY_SIG flag note +CONFIG_MODIFY_LDT_SYSCALL flag note + +# Menu: Processor type and features >> CPU microcode loading support >> Architecture: x86 +CONFIG_MICROCODE policy<{'amd64': 'y'}> +CONFIG_MICROCODE_INTEL policy<{'amd64': 'y'}> +CONFIG_MICROCODE_AMD policy<{'amd64': 'y'}> +CONFIG_MICROCODE_OLD_INTERFACE policy<{'amd64': 'y'}> +# +CONFIG_MICROCODE_OLD_INTERFACE flag + +# Menu: Processor type and features >> Endianness + +# Menu: Processor type and features >> Endianness >> Architecture: arm64 + +# Menu: Processor type and features >> Expoline default >> Architecture: s390 +CONFIG_EXPOLINE_OFF policy<{'s390x': 'n'}> +CONFIG_EXPOLINE_AUTO policy<{'s390x': 'y'}> +CONFIG_EXPOLINE_FULL policy<{'s390x': 'n'}> + +# Menu: Processor type and features >> High Memory Support >> Architecture: x86 + +# Menu: Processor type and features >> Kernel command line type + +# Menu: Processor type and features >> Kernel command line type >> Architecture: powerpc + +# Menu: Processor type and features >> Kernel support for 32-bit EL0 +CONFIG_KUSER_HELPERS policy<{'arm64': 'y', 'armhf': 'y'}> +# + +# Menu: Processor type and features >> Kernel support for 32-bit EL0 >> Architecture: arm64 + +# Menu: Processor type and features >> Kernel support for 32-bit EL0 >> Emulate deprecated/obsolete ARMv8 instructions >> Architecture: arm64 +CONFIG_ARMV8_DEPRECATED policy<{'arm64': 'y'}> +CONFIG_SWP_EMULATION policy<{'arm64': 'y'}> +CONFIG_CP15_BARRIER_EMULATION policy<{'arm64': 'y'}> +CONFIG_SETEND_EMULATION policy<{'arm64': 'y'}> +# +CONFIG_ARMV8_DEPRECATED mark note +CONFIG_SWP_EMULATION mark note +CONFIG_CP15_BARRIER_EMULATION mark note +CONFIG_SETEND_EMULATION mark note + +# Menu: Processor type and features >> Linux guest support >> Architecture: x86 +CONFIG_HYPERVISOR_GUEST policy<{'amd64': 'y'}> +CONFIG_ARCH_CPUIDLE_HALTPOLL policy<{'amd64': 'y'}> +CONFIG_PVH policy<{'amd64': 'y'}> +CONFIG_JAILHOUSE_GUEST policy<{'amd64': 'y'}> +CONFIG_ACRN_GUEST policy<{'amd64': 'y'}> + +# Menu: Processor type and features >> Linux guest support >> Enable paravirtualization code + +# Menu: Processor type and features >> Linux guest support >> Enable paravirtualization code >> Architecture: x86 +CONFIG_PARAVIRT_DEBUG policy<{'amd64': 'n'}> +CONFIG_PARAVIRT_SPINLOCKS policy<{'amd64': 'y'}> + +# Menu: Processor type and features >> Linux guest support >> Enable paravirtualization code >> Xen guest support + +# Menu: Processor type and features >> Linux guest support >> Enable paravirtualization code >> Xen guest support >> Architecture: x86 +CONFIG_XEN_PV policy<{'amd64': 'y'}> +CONFIG_XEN_DOM0 policy<{'amd64': 'y', 'arm64': 'y'}> +CONFIG_XEN_PVHVM policy<{'amd64': 'y'}> +CONFIG_XEN_512GB policy<{'amd64': 'y'}> +CONFIG_XEN_DEBUG_FS policy<{'amd64': 'n'}> +CONFIG_XEN_PVH policy<{'amd64': 'y'}> +# +CONFIG_XEN_512GB flag note + +# Menu: Processor type and features >> Machine Check / overheating reporting >> Architecture: x86 +CONFIG_X86_MCE policy<{'amd64': 'y'}> +CONFIG_X86_MCELOG_LEGACY policy<{'amd64': 'y'}> +CONFIG_X86_MCE_INTEL policy<{'amd64': 'y'}> +CONFIG_X86_MCE_AMD policy<{'amd64': 'y'}> +CONFIG_X86_MCE_INJECT policy<{'amd64': 'm'}> + +# Menu: Processor type and features >> Math emulation options >> Architecture: powerpc + +# Menu: Processor type and features >> Memory split +CONFIG_VMSPLIT_3G policy<{'armhf': 'y'}> +CONFIG_VMSPLIT_3G_OPT policy<{'armhf-generic': 'n'}> +CONFIG_VMSPLIT_2G policy<{'armhf': 'n'}> +CONFIG_VMSPLIT_1G policy<{'armhf': 'n'}> + +# Menu: Processor type and features >> Memory split >> Architecture: arm + +# Menu: Processor type and features >> Memory split >> Architecture: x86 + +# Menu: Processor type and features >> Page size >> Architecture: arm64 +CONFIG_ARM64_4K_PAGES policy<{'arm64-generic': 'y', 'arm64-generic-64k': 'n'}> +CONFIG_ARM64_16K_PAGES policy<{'arm64': 'n'}> +CONFIG_ARM64_64K_PAGES policy<{'arm64-generic': 'n', 'arm64-generic-64k': 'y'}> + +# Menu: Processor type and features >> Page size >> Architecture: powerpc +CONFIG_PPC_4K_PAGES policy<{'ppc64el': 'n'}> +CONFIG_PPC_64K_PAGES policy<{'ppc64el': 'y'}> + +# Menu: Processor type and features >> Performance monitoring >> Architecture: x86 +CONFIG_PERF_EVENTS_INTEL_UNCORE policy<{'amd64': 'y'}> +CONFIG_PERF_EVENTS_INTEL_RAPL policy<{'amd64': 'm'}> +CONFIG_PERF_EVENTS_INTEL_CSTATE policy<{'amd64': 'm'}> +CONFIG_PERF_EVENTS_AMD_POWER policy<{'amd64': 'n'}> + +# Menu: Processor type and features >> Physical address space size >> Architecture: arm64 +CONFIG_ARM64_PA_BITS_48 policy<{'arm64': 'y'}> +CONFIG_ARM64_PA_BITS_52 policy<{'arm64-generic-64k': 'n'}> + +# Menu: Processor type and features >> Power Management Debug Support +# + +# Menu: Processor type and features >> Processor family + +# Menu: Processor type and features >> Processor family >> Architecture: x86 +CONFIG_MK8 policy<{'amd64': 'n'}> +CONFIG_MPSC policy<{'amd64': 'n'}> +CONFIG_MCORE2 policy<{'amd64': 'n'}> +CONFIG_MATOM policy<{'amd64': 'n'}> + +# Menu: Processor type and features >> Processor type >> Architecture: s390 +CONFIG_MARCH_Z900 policy<{'s390x': 'n'}> +CONFIG_MARCH_Z990 policy<{'s390x': 'n'}> +CONFIG_MARCH_Z9_109 policy<{'s390x': 'n'}> +CONFIG_MARCH_Z10 policy<{'s390x': 'n'}> +CONFIG_MARCH_Z196 policy<{'s390x': 'n'}> +CONFIG_MARCH_ZEC12 policy<{'s390x': 'n'}> +CONFIG_MARCH_Z13 policy<{'s390x': 'y'}> +CONFIG_MARCH_Z14 policy<{'s390x': 'n'}> +CONFIG_MARCH_Z15 policy<{'s390x': 'n'}> + +# Menu: Processor type and features >> Support for extended (non-PC) x86 platforms >> Architecture: x86 +CONFIG_X86_NUMACHIP policy<{'amd64': 'y'}> +CONFIG_X86_VSMP policy<{'amd64': 'n'}> +CONFIG_X86_UV policy<{'amd64': 'y'}> +CONFIG_X86_GOLDFISH policy<{'amd64': 'n'}> +CONFIG_X86_INTEL_MID policy<{'amd64': 'n'}> +# +CONFIG_X86_UV mark note + +# Menu: Processor type and features >> Supported processor vendors >> Architecture: x86 +CONFIG_PROCESSOR_SELECT policy<{'amd64': 'y'}> +CONFIG_CPU_SUP_INTEL policy<{'amd64': 'y'}> +CONFIG_CPU_SUP_AMD policy<{'amd64': 'y'}> +CONFIG_CPU_SUP_HYGON policy<{'amd64': 'y'}> +CONFIG_CPU_SUP_CENTAUR policy<{'amd64': 'y'}> +CONFIG_CPU_SUP_ZHAOXIN policy<{'amd64': 'y'}> + +# Menu: Processor type and features >> Symmetric Multi-Processing +# + +# Menu: Processor type and features >> Symmetric Multi-Processing >> Architecture: arm +CONFIG_SMP_ON_UP policy<{'armhf': 'y'}> +CONFIG_ARM_CPU_TOPOLOGY policy<{'armhf': 'y'}> +CONFIG_MCPM policy<{'armhf': 'y'}> +CONFIG_BIG_LITTLE policy<{'armhf': 'y'}> +CONFIG_BL_SWITCHER policy<{'armhf': 'y'}> +CONFIG_BL_SWITCHER_DUMMY_IF policy<{'armhf': 'm'}> +CONFIG_STACKPROTECTOR_PER_TASK policy<{'arm64': 'y'}> + +# Menu: Processor type and features >> Symmetric multi-processing support +# + +# Menu: Processor type and features >> Symmetric multi-processing support >> Architecture: x86 +CONFIG_MAXSMP policy<{'amd64': 'y'}> +CONFIG_SCHED_MC_PRIO policy<{'amd64': 'y'}> + +# Menu: Processor type and features >> Symmetric multi-processing support >> NUMA Memory Allocation and Scheduler Support +# + +# Menu: Processor type and features >> Symmetric multi-processing support >> NUMA Memory Allocation and Scheduler Support >> Architecture: x86 +CONFIG_NUMA_EMU policy<{'amd64': 'n'}> +CONFIG_AMD_NUMA policy<{'amd64': 'y'}> +CONFIG_X86_64_ACPI_NUMA policy<{'amd64': 'y'}> +# +CONFIG_NUMA_EMU note mark +CONFIG_NUMA_EMU note + +# Menu: Processor type and features >> TSX enable mode >> Architecture: x86 +CONFIG_X86_INTEL_TSX_MODE_OFF policy<{'amd64': 'y'}> +CONFIG_X86_INTEL_TSX_MODE_ON policy<{'amd64': 'n'}> +CONFIG_X86_INTEL_TSX_MODE_AUTO policy<{'amd64': 'n'}> + +# Menu: Processor type and features >> Timer frequency +CONFIG_HZ_100 policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n', 's390x': 'y'}> +CONFIG_HZ_250 policy<{'amd64-generic': 'y', 'amd64-lowlatency': 'n', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'n'}> +CONFIG_HZ_300 policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n', 's390x': 'n'}> +CONFIG_HZ_1000 policy<{'amd64-generic': 'n', 'amd64-lowlatency': 'y', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n', 's390x': 'n'}> + +# Menu: Processor type and features >> Timer frequency >> Architecture: arm +CONFIG_HZ_200 policy<{'armhf': 'n'}> +CONFIG_HZ_500 policy<{'armhf': 'n'}> + +# Menu: Processor type and features >> Tune code generation >> Architecture: s390 +CONFIG_TUNE_DEFAULT policy<{'s390x': 'n'}> +CONFIG_TUNE_Z900 policy<{'s390x': 'n'}> +CONFIG_TUNE_Z990 policy<{'s390x': 'n'}> +CONFIG_TUNE_Z9_109 policy<{'s390x': 'n'}> +CONFIG_TUNE_Z10 policy<{'s390x': 'n'}> +CONFIG_TUNE_Z196 policy<{'s390x': 'n'}> +CONFIG_TUNE_ZEC12 policy<{'s390x': 'n'}> +CONFIG_TUNE_Z13 policy<{'s390x': 'n'}> +CONFIG_TUNE_Z14 policy<{'s390x': 'n'}> +CONFIG_TUNE_Z15 policy<{'s390x': 'y'}> + +# Menu: Processor type and features >> Virtual address space size >> Architecture: arm64 +CONFIG_ARM64_VA_BITS_39 policy<{'arm64-generic': 'n'}> +CONFIG_ARM64_VA_BITS_42 policy<{'arm64-generic-64k': 'n'}> +CONFIG_ARM64_VA_BITS_48 policy<{'arm64': 'y'}> +CONFIG_ARM64_VA_BITS_52 policy<{'arm64-generic-64k': 'n'}> +# +CONFIG_ARM64_VA_BITS_48 mark note + +# Menu: Processor type and features >> vsyscall table for legacy applications >> Architecture: x86 +CONFIG_LEGACY_VSYSCALL_EMULATE policy<{'amd64': 'n'}> +CONFIG_LEGACY_VSYSCALL_XONLY policy<{'amd64': 'y'}> +CONFIG_LEGACY_VSYSCALL_NONE policy<{'amd64': 'n'}> +# +CONFIG_LEGACY_VSYSCALL_XONLY flag + +# Menu: Security options +CONFIG_SECURITY_DMESG_RESTRICT policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_SECURITY_PERF_EVENTS_RESTRICT policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_SECURITYFS policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_PAGE_TABLE_ISOLATION policy<{'amd64': 'y'}> +CONFIG_INTEL_TXT policy<{'amd64': 'y'}> +CONFIG_HARDENED_USERCOPY policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_HARDENED_USERCOPY_FALLBACK policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_HARDENED_USERCOPY_PAGESPAN policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n', 's390x': 'n'}> +CONFIG_FORTIFY_SOURCE policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_STATIC_USERMODEHELPER policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n', 's390x': 'n'}> +CONFIG_LSM policy<{'amd64': '"lockdown,yama,integrity,apparmor"', 'arm64': '"lockdown,yama,integrity,apparmor"', 'armhf': '"lockdown,yama,integrity,apparmor"', 'ppc64el': '"lockdown,yama,integrity,apparmor"', 's390x': '"lockdown,yama,integrity,apparmor"'}> +# +CONFIG_SECURITY_DMESG_RESTRICT mark +CONFIG_LSM mark + +# Menu: Security options >> Enable access key retention support +CONFIG_KEYS policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_KEYS_REQUEST_CACHE policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_PERSISTENT_KEYRINGS policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_TRUSTED_KEYS policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_ENCRYPTED_KEYS policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_KEY_DH_OPERATIONS policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_KEY_NOTIFICATIONS policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> + +# Menu: Security options >> Enable different security models +CONFIG_SECURITY policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_SECURITY_NETWORK policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_SECURITY_INFINIBAND policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_SECURITY_NETWORK_XFRM policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_SECURITY_PATH policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_LSM_MMAP_MIN_ADDR policy<{'amd64': '0', 'arm64': '0', 'armhf': '0', 'ppc64el': '0', 's390x': '0'}> +CONFIG_SECURITY_LOADPIN policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n', 's390x': 'n'}> +CONFIG_SECURITY_YAMA policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_SECURITY_SAFESETID policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_SECURITY_LOCKDOWN_LSM policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_SECURITY_LOCKDOWN_LSM_EARLY policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_LOCK_DOWN_IN_SECURE_BOOT policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +# +CONFIG_SECURITY mark +CONFIG_LSM_MMAP_MIN_ADDR mark flag +CONFIG_SECURITY_YAMA mark +CONFIG_SECURITY_SAFESETID mark note +CONFIG_SECURITY_LOCKDOWN_LSM mark +CONFIG_SECURITY_LOCKDOWN_LSM_EARLY mark +CONFIG_LOCK_DOWN_IN_SECURE_BOOT mark + +# Menu: Security options >> Enable different security models >> AppArmor support +CONFIG_SECURITY_APPARMOR policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_SECURITY_APPARMOR_HASH policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_SECURITY_APPARMOR_HASH_DEFAULT policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_SECURITY_APPARMOR_DEBUG policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n', 's390x': 'n'}> + +# Menu: Security options >> Enable different security models >> Integrity subsystem +CONFIG_INTEGRITY policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_INTEGRITY_SIGNATURE policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_INTEGRITY_AUDIT policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> + +# Menu: Security options >> Enable different security models >> Integrity subsystem >> EVM support +CONFIG_EVM policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_EVM_ATTR_FSUUID policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_EVM_EXTRA_SMACK_XATTRS policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_EVM_ADD_XATTRS policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_EVM_LOAD_X509 policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'y', 's390x': 'n'}> +CONFIG_EVM_X509_PATH policy<{'ppc64el': '"/etc/keys/x509_evm.der"'}> +# +CONFIG_EVM note +CONFIG_EVM_ATTR_FSUUID note +CONFIG_EVM_LOAD_X509 note +CONFIG_EVM_X509_PATH note + +# Menu: Security options >> Enable different security models >> Integrity subsystem >> Enable asymmetric keys support +CONFIG_INTEGRITY_ASYMMETRIC_KEYS policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_INTEGRITY_TRUSTED_KEYRING policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_INTEGRITY_PLATFORM_KEYRING policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_LOAD_PPC_KEYS policy<{'ppc64el': 'y'}> +CONFIG_IMA_KEYRINGS_PERMIT_SIGNED_BY_BUILTIN_OR_SECONDARY policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n', 's390x': 'n'}> +# +CONFIG_INTEGRITY_PLATFORM_KEYRING mark note +CONFIG_IMA_KEYRINGS_PERMIT_SIGNED_BY_BUILTIN_OR_SECONDARY mark note +CONFIG_LOAD_PPC_KEYS mark note + +# Menu: Security options >> Enable different security models >> Integrity subsystem >> Integrity Measurement Architecture(IMA) +CONFIG_IMA policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_IMA_KEXEC policy<{'ppc64el': 'y'}> +CONFIG_IMA_WRITE_POLICY policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n', 's390x': 'n'}> +CONFIG_IMA_READ_POLICY policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'y', 's390x': 'n'}> +# +CONFIG_IMA mark note +CONFIG_IMA_KEXEC mark note +CONFIG_IMA_WRITE_POLICY mark note +CONFIG_IMA_READ_POLICY mark note note + +# Menu: Security options >> Enable different security models >> Integrity subsystem >> Integrity Measurement Architecture(IMA) >> Appraise integrity measurements +CONFIG_IMA_APPRAISE policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_IMA_ARCH_POLICY policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'y', 's390x': 'n'}> +CONFIG_IMA_APPRAISE_BOOTPARAM policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_IMA_APPRAISE_MODSIG policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_IMA_TRUSTED_KEYRING policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_IMA_BLACKLIST_KEYRING policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n', 's390x': 'n'}> +CONFIG_IMA_LOAD_X509 policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'y', 's390x': 'n'}> +CONFIG_IMA_X509_PATH policy<{'ppc64el': '"/etc/keys/x509_ima.der"'}> +CONFIG_IMA_APPRAISE_SIGNED_INIT policy<{'ppc64el': 'n'}> +# +CONFIG_IMA_APPRAISE mark note +CONFIG_IMA_TRUSTED_KEYRING mark note +CONFIG_IMA_BLACKLIST_KEYRING mark note +CONFIG_IMA_LOAD_X509 mark note +CONFIG_IMA_X509_PATH mark note +CONFIG_IMA_APPRAISE_SIGNED_INIT mark note +CONFIG_IMA_ARCH_POLICY mark note + +# Menu: Security options >> Enable different security models >> Integrity subsystem >> Integrity Measurement Architecture(IMA) >> Appraise integrity measurements >> IMA build time configured policy rules +CONFIG_IMA_APPRAISE_BUILD_POLICY policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n', 's390x': 'n'}> + +# Menu: Security options >> Enable different security models >> Integrity subsystem >> Integrity Measurement Architecture(IMA) >> Default integrity hash algorithm +CONFIG_IMA_DEFAULT_HASH_SHA1 policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'n', 's390x': 'y'}> +CONFIG_IMA_DEFAULT_HASH_SHA256 policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'y', 's390x': 'n'}> +CONFIG_IMA_DEFAULT_HASH_SHA512 policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n', 's390x': 'n'}> +# +CONFIG_IMA_DEFAULT_HASH_SHA256 note + +# Menu: Security options >> Enable different security models >> Integrity subsystem >> Integrity Measurement Architecture(IMA) >> Default template +CONFIG_IMA_TEMPLATE policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n', 's390x': 'n'}> +CONFIG_IMA_NG_TEMPLATE policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'n', 's390x': 'y'}> +CONFIG_IMA_SIG_TEMPLATE policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'y', 's390x': 'n'}> +# +CONFIG_IMA_SIG_TEMPLATE note + +# Menu: Security options >> Enable different security models >> Kernel default lockdown mode +CONFIG_LOCK_DOWN_KERNEL_FORCE_NONE policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_LOCK_DOWN_KERNEL_FORCE_INTEGRITY policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n', 's390x': 'n'}> +CONFIG_LOCK_DOWN_KERNEL_FORCE_CONFIDENTIALITY policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n', 's390x': 'n'}> + +# Menu: Security options >> Enable different security models >> NSA SELinux Support +CONFIG_SECURITY_SELINUX policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_SECURITY_SELINUX_BOOTPARAM policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'n'}> +CONFIG_SECURITY_SELINUX_DISABLE policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n', 's390x': 'n'}> +CONFIG_SECURITY_SELINUX_DEVELOP policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_SECURITY_SELINUX_AVC_STATS policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_SECURITY_SELINUX_CHECKREQPROT_VALUE policy<{'amd64': '1', 'arm64': '1', 'armhf': '1', 'ppc64el': '1', 's390x': '1'}> +CONFIG_SECURITY_SELINUX_SIDTAB_HASH_BITS policy<{'amd64': '9', 'arm64': '9', 'armhf': '9', 'ppc64el': '9', 's390x': '9'}> +CONFIG_SECURITY_SELINUX_SID2STR_CACHE_SIZE policy<{'amd64': '256', 'arm64': '256', 'armhf': '256', 'ppc64el': '256', 's390x': '256'}> +# +CONFIG_SECURITY_SELINUX mark +CONFIG_SECURITY_SELINUX_DISABLE marknote + +# Menu: Security options >> Enable different security models >> Simplified Mandatory Access Control Kernel Support +CONFIG_SECURITY_SMACK policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_SECURITY_SMACK_BRINGUP policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n', 's390x': 'n'}> +CONFIG_SECURITY_SMACK_NETFILTER policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_SECURITY_SMACK_APPEND_SIGNALS policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +# +CONFIG_SECURITY_SMACK mark + +# Menu: Security options >> Enable different security models >> TOMOYO Linux Support +CONFIG_SECURITY_TOMOYO policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_SECURITY_TOMOYO_MAX_ACCEPT_ENTRY policy<{'amd64': '2048', 'arm64': '2048', 'armhf': '2048', 'ppc64el': '2048', 's390x': '2048'}> +CONFIG_SECURITY_TOMOYO_MAX_AUDIT_LOG policy<{'amd64': '1024', 'arm64': '1024', 'armhf': '1024', 'ppc64el': '1024', 's390x': '1024'}> +CONFIG_SECURITY_TOMOYO_OMIT_USERSPACE_LOADER policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n', 's390x': 'n'}> +CONFIG_SECURITY_TOMOYO_POLICY_LOADER policy<{'amd64': '"/sbin/tomoyo-init"', 'arm64': '"/sbin/tomoyo-init"', 'armhf': '"/sbin/tomoyo-init"', 'ppc64el': '"/sbin/tomoyo-init"', 's390x': '"/sbin/tomoyo-init"'}> +CONFIG_SECURITY_TOMOYO_ACTIVATION_TRIGGER policy<{'amd64': '"/sbin/init"', 'arm64': '"/sbin/init"', 'armhf': '"/sbin/init"', 'ppc64el': '"/sbin/init"', 's390x': '"/sbin/init"'}> +CONFIG_SECURITY_TOMOYO_INSECURE_BUILTIN_SETTING policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n', 's390x': 'n'}> + +# Menu: Security options >> First legacy 'major LSM' to be initialized +CONFIG_DEFAULT_SECURITY_SELINUX policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n', 's390x': 'n'}> +CONFIG_DEFAULT_SECURITY_SMACK policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n', 's390x': 'n'}> +CONFIG_DEFAULT_SECURITY_TOMOYO policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n', 's390x': 'n'}> +CONFIG_DEFAULT_SECURITY_APPARMOR policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_DEFAULT_SECURITY_DAC policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n', 's390x': 'n'}> + +# Menu: Security options >> Kernel hardening options + +# Menu: Security options >> Kernel hardening options >> Memory initialization +CONFIG_INIT_ON_ALLOC_DEFAULT_ON policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_INIT_ON_FREE_DEFAULT_ON policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n', 's390x': 'n'}> + +# Menu: Security options >> Kernel hardening options >> Memory initialization >> Initialize kernel stack variables at function entry +CONFIG_INIT_STACK_NONE policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> + +# Menu: Security options >> Kernel hardening options >> Memory initialization >> Poison kernel stack before returning from syscalls + +# Menu: Selftests >> Architecture: s390 +CONFIG_S390_UNWIND_SELFTEST policy<{'s390x': 'n'}> + +# Menu: System Type +# + +# Menu: System Type >> ARM Ltd. Integrator family >> Architecture: arm + +# Menu: System Type >> ARM Ltd. Integrator family >> Support Integrator/AP and Integrator/PP2 platforms >> Architecture: arm + +# Menu: System Type >> ARM Ltd. Integrator family >> Support Integrator/CP platform >> Architecture: arm + +# Menu: System Type >> ARM Ltd. RealView family >> Architecture: arm +CONFIG_ARCH_REALVIEW policy<{'armhf': 'n'}> + +# Menu: System Type >> ARM Ltd. RealView family >> Support RealView(R) Emulation Baseboard >> Architecture: arm + +# Menu: System Type >> ARM Ltd. Versatile Express family + +# Menu: System Type >> ARM Ltd. Versatile Express family >> Architecture: arm +CONFIG_ARCH_VEXPRESS_CORTEX_A5_A9_ERRATA policy<{'armhf': 'y'}> +CONFIG_ARCH_VEXPRESS_DCSCB policy<{'armhf': 'y'}> +CONFIG_ARCH_VEXPRESS_SPC policy<{'armhf': 'y'}> +CONFIG_ARCH_VEXPRESS_TC2_PM policy<{'armhf': 'y'}> + +# Menu: System Type >> ARM system type >> Architecture: arm +CONFIG_ARCH_MULTIPLATFORM policy<{'armhf': 'y'}> +CONFIG_ARCH_EBSA110 policy<{'armhf': 'n'}> +CONFIG_ARCH_EP93XX policy<{'armhf': 'n'}> +CONFIG_ARCH_FOOTBRIDGE policy<{'armhf': 'n'}> +CONFIG_ARCH_IOP32X policy<{'armhf': 'n'}> +CONFIG_ARCH_IXP4XX policy<{'armhf': 'n'}> +CONFIG_ARCH_DOVE policy<{'armhf': 'n'}> +CONFIG_ARCH_PXA policy<{'armhf': 'n'}> +CONFIG_ARCH_RPC policy<{'armhf': 'n'}> +CONFIG_ARCH_SA1100 policy<{'armhf': 'n'}> +CONFIG_ARCH_S3C24XX policy<{'armhf': 'n'}> +CONFIG_ARCH_OMAP1 policy<{'armhf': 'n'}> + +# Menu: System Type >> AT91/Microchip SoCs >> Architecture: arm +CONFIG_ARCH_AT91 policy<{'armhf': 'n'}> + +# Menu: System Type >> Allwinner SoCs + +# Menu: System Type >> Allwinner SoCs >> Architecture: arm + +# Menu: System Type >> Altera SOCFPGA family >> Architecture: arm +CONFIG_ARCH_SOCFPGA policy<{'armhf': 'n'}> + +# Menu: System Type >> Amlogic Meson SoCs + +# Menu: System Type >> Amlogic Meson SoCs >> Architecture: arm +CONFIG_MACH_MESON6 policy<{'armhf': 'y'}> +CONFIG_MACH_MESON8 policy<{'armhf': 'y'}> + +# Menu: System Type >> Architecture: arm +CONFIG_DEBUG_ALIGN_RODATA policy<{'armhf': 'y'}> +CONFIG_ARCH_VIRT policy<{'armhf': 'y'}> +CONFIG_ARCH_AXXIA policy<{'armhf-generic-lpae': 'y'}> +CONFIG_ARCH_DIGICOLOR policy<{'armhf': 'n'}> +CONFIG_ARCH_HIGHBANK policy<{'armhf': 'y'}> +CONFIG_ARCH_KEYSTONE policy<{'armhf': 'n'}> +CONFIG_ARCH_RDA policy<{'armhf': 'y'}> +CONFIG_ARCH_S5PV210 policy<{'armhf': 'n'}> +CONFIG_ARCH_TANGO policy<{'armhf': 'n'}> +CONFIG_ARCH_WM8850 policy<{'armhf': 'n'}> +CONFIG_ARCH_ZYNQ policy<{'armhf': 'n'}> +CONFIG_ARM_THUMB policy<{'armhf': 'y'}> +CONFIG_ARM_THUMBEE policy<{'armhf': 'y'}> +CONFIG_SWP_EMULATE policy<{'armhf': 'y'}> +CONFIG_CPU_ICACHE_DISABLE policy<{'armhf': 'n'}> +CONFIG_CPU_ICACHE_MISMATCH_WORKAROUND policy<{'armhf': 'y'}> +CONFIG_CPU_BPREDICT_DISABLE policy<{'armhf': 'n'}> +CONFIG_CACHE_FEROCEON_L2 policy<{'armhf': 'y'}> +CONFIG_CACHE_FEROCEON_L2_WRITETHROUGH policy<{'armhf': 'n'}> +CONFIG_CACHE_TAUROS2 policy<{'armhf': 'y'}> +CONFIG_CACHE_UNIPHIER policy<{'armhf': 'y'}> +CONFIG_ARM_DMA_MEM_BUFFERABLE policy<{'armhf': 'y'}> +CONFIG_IWMMXT policy<{'armhf': 'y'}> +CONFIG_PJ4B_ERRATA_4742 policy<{'armhf': 'y'}> +CONFIG_ARM_ERRATA_430973 policy<{'armhf': 'y'}> +CONFIG_ARM_ERRATA_643719 policy<{'armhf': 'y'}> +CONFIG_ARM_ERRATA_720789 policy<{'armhf': 'y'}> +CONFIG_ARM_ERRATA_754322 policy<{'armhf': 'y'}> +CONFIG_ARM_ERRATA_754327 policy<{'armhf': 'y'}> +CONFIG_ARM_ERRATA_764369 policy<{'armhf': 'y'}> +CONFIG_ARM_ERRATA_775420 policy<{'armhf': 'y'}> +CONFIG_ARM_ERRATA_798181 policy<{'armhf': 'y'}> +CONFIG_ARM_ERRATA_773022 policy<{'armhf': 'y'}> +CONFIG_ARM_ERRATA_818325_852422 policy<{'armhf': 'y'}> +CONFIG_ARM_ERRATA_821420 policy<{'armhf': 'y'}> +CONFIG_ARM_ERRATA_825619 policy<{'armhf': 'y'}> +CONFIG_ARM_ERRATA_857271 policy<{'armhf': 'y'}> +CONFIG_ARM_ERRATA_852421 policy<{'armhf': 'y'}> +CONFIG_ARM_ERRATA_852423 policy<{'armhf': 'y'}> +CONFIG_ARM_ERRATA_857272 policy<{'armhf': 'y'}> +# +CONFIG_ARCH_TANGO mark note + +# Menu: System Type >> Aspeed BMC architectures >> Architecture: arm +CONFIG_ARCH_ASPEED policy<{'armhf': 'y'}> +CONFIG_MACH_ASPEED_G6 policy<{'armhf': 'y'}> + +# Menu: System Type >> Axis Communications ARM based ARTPEC SoCs >> Architecture: arm +CONFIG_ARCH_ARTPEC policy<{'armhf': 'y'}> +CONFIG_MACH_ARTPEC6 policy<{'armhf': 'n'}> + +# Menu: System Type >> Broadcom SoC Support + +# Menu: System Type >> Broadcom SoC Support >> Architecture: arm +CONFIG_ARCH_BCM policy<{'armhf': 'n'}> + +# Menu: System Type >> CSR SiRF >> Architecture: arm +CONFIG_ARCH_SIRF policy<{'armhf': 'n'}> + +# Menu: System Type >> Cavium Networks CNS3XXX family >> Architecture: arm + +# Menu: System Type >> Cirrus EP93xx Implementation Options >> Architecture: arm + +# Menu: System Type >> Enable the L2x0 outer cache controller >> Architecture: arm +CONFIG_CACHE_L2X0 policy<{'armhf': 'y'}> +CONFIG_CACHE_L2X0_PMU policy<{'armhf': 'y'}> +CONFIG_PL310_ERRATA_588369 policy<{'armhf': 'y'}> +CONFIG_PL310_ERRATA_727915 policy<{'armhf': 'y'}> +CONFIG_PL310_ERRATA_753970 policy<{'armhf': 'y'}> +CONFIG_PL310_ERRATA_769419 policy<{'armhf': 'y'}> + +# Menu: System Type >> Footbridge Implementations >> Architecture: arm + +# Menu: System Type >> Freescale i.MX family + +# Menu: System Type >> Freescale i.MX family >> Architecture: arm +CONFIG_SOC_IMX50 policy<{'armhf-generic': 'y'}> +CONFIG_SOC_IMX51 policy<{'armhf-generic': 'y'}> +CONFIG_SOC_IMX53 policy<{'armhf-generic': 'n'}> +CONFIG_SOC_IMX6Q policy<{'armhf-generic': 'y'}> +CONFIG_SOC_IMX6SL policy<{'armhf-generic': 'y'}> +CONFIG_SOC_IMX6SLL policy<{'armhf-generic': 'y'}> +CONFIG_SOC_IMX6SX policy<{'armhf-generic': 'y'}> +CONFIG_SOC_IMX6UL policy<{'armhf-generic': 'y'}> +CONFIG_SOC_LS1021A policy<{'armhf-generic': 'n'}> +CONFIG_SOC_IMX7D policy<{'armhf-generic': 'y'}> +CONFIG_SOC_IMX7ULP policy<{'armhf-generic': 'y'}> +CONFIG_SOC_VF610 policy<{'armhf-generic': 'y'}> + +# Menu: System Type >> Freescale i.MX family >> Clocksource for scheduler clock >> Architecture: arm +CONFIG_VF_USE_ARM_GLOBAL_TIMER policy<{'armhf-generic': 'y'}> +CONFIG_VF_USE_PIT_TIMER policy<{'armhf-generic': 'n'}> + +# Menu: System Type >> Hisilicon platform type >> Architecture: arm +CONFIG_ARCH_HI3xxx policy<{'armhf': 'y'}> +CONFIG_ARCH_HIP01 policy<{'armhf': 'n'}> +CONFIG_ARCH_HIP04 policy<{'armhf': 'y'}> +CONFIG_ARCH_HIX5HD2 policy<{'armhf': 'y'}> + +# Menu: System Type >> IOP32x Implementation Options >> Architecture: arm + +# Menu: System Type >> Intel IXP4xx Implementation Options >> Architecture: arm + +# Menu: System Type >> Intel PXA2xx/PXA3xx Implementations >> Architecture: arm + +# Menu: System Type >> Intel PXA2xx/PXA3xx Implementations >> Gumstix Carrier/Expansion Board >> Architecture: arm + +# Menu: System Type >> Intel PXA2xx/PXA3xx Implementations >> Motorola EZX Platform >> Architecture: arm + +# Menu: System Type >> Intel PXA2xx/PXA3xx Implementations >> PXA based Keith und Koep Trizeps DIMM-Modules >> Architecture: arm + +# Menu: System Type >> Intel PXA2xx/PXA3xx Implementations >> PXA based Keith und Koep Trizeps DIMM-Modules >> Select base board for Trizeps module >> Architecture: arm + +# Menu: System Type >> Intel PXA2xx/PXA3xx Implementations >> PXA based Palm PDAs >> Architecture: arm + +# Menu: System Type >> Intel PXA2xx/PXA3xx Implementations >> PXA based Toshiba e-series PDAs >> Architecture: arm + +# Menu: System Type >> Intel PXA2xx/PXA3xx Implementations >> SHARP Zaurus SL-5600, SL-C7xx and SL-Cxx00 Models >> Architecture: arm + +# Menu: System Type >> Intel PXA2xx/PXA3xx Implementations >> display on pcm990 >> Architecture: arm + +# Menu: System Type >> MMU-based Paged Memory Management Support + +# Menu: System Type >> MMU-based Paged Memory Management Support >> Architecture: arm +CONFIG_MMU policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 's390x': 'y'}> +CONFIG_ARM_LPAE policy<{'armhf-generic': 'n', 'armhf-generic-lpae': 'y'}> +CONFIG_VDSO policy<{'armhf': 'y'}> + +# Menu: System Type >> MMU-based Paged Memory Management Support >> Marvell Orion >> Architecture: arm + +# Menu: System Type >> MMU-based Paged Memory Management Support >> ST-Ericsson U300 Series >> Architecture: arm + +# Menu: System Type >> MMU-based Paged Memory Management Support >> ST-Ericsson U8500 Series >> Architecture: arm +CONFIG_ARCH_U8500 policy<{'armhf': 'n'}> + +# Menu: System Type >> MMU-based Paged Memory Management Support >> Set flash/sdram size and base addr >> Architecture: arm + +# Menu: System Type >> MOXA ART SoC >> Architecture: arm + +# Menu: System Type >> Marvell Berlin SoCs + +# Menu: System Type >> Marvell Berlin SoCs >> Architecture: arm +CONFIG_MACH_BERLIN_BG2 policy<{'armhf': 'y'}> +CONFIG_MACH_BERLIN_BG2CD policy<{'armhf': 'y'}> +CONFIG_MACH_BERLIN_BG2Q policy<{'armhf': 'y'}> + +# Menu: System Type >> Marvell Dove Implementations >> Architecture: arm + +# Menu: System Type >> Marvell Engineering Business Unit (MVEBU) SoCs + +# Menu: System Type >> Marvell Engineering Business Unit (MVEBU) SoCs >> Architecture: arm +CONFIG_MACH_ARMADA_370 policy<{'armhf': 'y'}> +CONFIG_MACH_ARMADA_375 policy<{'armhf': 'y'}> +CONFIG_MACH_ARMADA_38X policy<{'armhf': 'y'}> +CONFIG_MACH_ARMADA_39X policy<{'armhf': 'y'}> +CONFIG_MACH_ARMADA_XP policy<{'armhf': 'y'}> +CONFIG_MACH_DOVE policy<{'armhf': 'y'}> + +# Menu: System Type >> Marvell MV78xx0 >> Architecture: arm + +# Menu: System Type >> Marvell PXA168/910/MMP2/MMP3 >> Architecture: arm +CONFIG_ARCH_MMP policy<{'armhf': 'n'}> + +# Menu: System Type >> Marvell PXA168/910/MMP2/MMP3 >> Marvell PXA168/910/MMP2 Implementations >> Architecture: arm + +# Menu: System Type >> MediaTek SoC Support + +# Menu: System Type >> MediaTek SoC Support >> Architecture: arm +CONFIG_MACH_MT2701 policy<{'armhf': 'y'}> +CONFIG_MACH_MT6589 policy<{'armhf': 'y'}> +CONFIG_MACH_MT6592 policy<{'armhf': 'y'}> +CONFIG_MACH_MT7623 policy<{'armhf': 'y'}> +CONFIG_MACH_MT7629 policy<{'armhf': 'y'}> +CONFIG_MACH_MT8127 policy<{'armhf': 'y'}> +CONFIG_MACH_MT8135 policy<{'armhf': 'y'}> + +# Menu: System Type >> Multiple platform selection >> Architecture: arm +CONFIG_ARCH_MULTI_V6 policy<{'armhf': 'n'}> +CONFIG_ARCH_MULTI_V7 policy<{'armhf': 'y'}> + +# Menu: System Type >> Nuvoton NPCM Architecture >> Architecture: arm +CONFIG_ARCH_NPCM policy<{'armhf': 'y'}> +CONFIG_ARCH_NPCM7XX policy<{'armhf': 'y'}> + +# Menu: System Type >> Oxford Semiconductor OXNAS Family SoCs >> Architecture: arm + +# Menu: System Type >> Qualcomm Support + +# Menu: System Type >> Qualcomm Support >> Architecture: arm +CONFIG_ARCH_IPQ40XX policy<{'armhf': 'n'}> +CONFIG_ARCH_MSM8X60 policy<{'armhf': 'y'}> +CONFIG_ARCH_MSM8960 policy<{'armhf': 'y'}> +CONFIG_ARCH_MSM8974 policy<{'armhf': 'y'}> +CONFIG_ARCH_MDM9615 policy<{'armhf': 'y'}> + +# Menu: System Type >> SA11x0 Implementations >> Architecture: arm + +# Menu: System Type >> SA11x0 Implementations >> Cerf Flash available >> Architecture: arm + +# Menu: System Type >> ST SPEAr Family >> Architecture: arm +CONFIG_PLAT_SPEAR policy<{'armhf': 'n'}> + +# Menu: System Type >> ST SPEAr Family >> ST SPEAr13xx >> Architecture: arm + +# Menu: System Type >> ST SPEAr Family >> ST SPEAr13xx >> ST SPEAr3xx >> Architecture: arm + +# Menu: System Type >> ST-Ericsson Nomadik >> Architecture: arm + +# Menu: System Type >> STMicroelectronics Consumer Electronics SOCs >> Architecture: arm +CONFIG_ARCH_STI policy<{'armhf': 'n'}> + +# Menu: System Type >> STMicroelectronics STM32 family >> Architecture: arm +CONFIG_ARCH_STM32 policy<{'armhf': 'n'}> + +# Menu: System Type >> Samsung Common options >> Architecture: arm + +# Menu: System Type >> Samsung Exynos + +# Menu: System Type >> Samsung Exynos >> Architecture: arm +CONFIG_ARCH_EXYNOS3 policy<{'armhf': 'n'}> +CONFIG_ARCH_EXYNOS4 policy<{'armhf': 'n'}> + +# Menu: System Type >> Samsung Exynos >> Samsung Exynos5 >> Architecture: arm +CONFIG_ARCH_EXYNOS5 policy<{'armhf': 'y'}> +CONFIG_SOC_EXYNOS5250 policy<{'armhf': 'y'}> +CONFIG_SOC_EXYNOS5260 policy<{'armhf': 'y'}> +CONFIG_SOC_EXYNOS5410 policy<{'armhf': 'y'}> +CONFIG_SOC_EXYNOS5420 policy<{'armhf': 'y'}> +CONFIG_SOC_EXYNOS5800 policy<{'armhf': 'y'}> + +# Menu: System Type >> Samsung S3C24XX SoCs Support >> Architecture: arm + +# Menu: System Type >> Samsung S3C24XX SoCs Support >> Samsung S3C2410 >> Architecture: arm + +# Menu: System Type >> Samsung S3C24XX SoCs Support >> Samsung S3C2412 >> Architecture: arm + +# Menu: System Type >> Samsung S3C24XX SoCs Support >> Samsung S3C2440 >> Architecture: arm + +# Menu: System Type >> Samsung S3C64XX >> Architecture: arm + +# Menu: System Type >> Samsung S3C64XX >> SMDK6410 >> Architecture: arm + +# Menu: System Type >> Samsung S3C64XX >> SMDK6410 >> SMDK6410 MMC/SD slot setup >> Architecture: arm + +# Menu: System Type >> Socionext Milbeaut SoCs >> Architecture: arm +CONFIG_ARCH_MILBEAUT policy<{'armhf': 'y'}> +CONFIG_ARCH_MILBEAUT_M10V policy<{'armhf': 'y'}> + +# Menu: System Type >> TI DaVinci >> Architecture: arm + +# Menu: System Type >> TI DaVinci >> DA850/OMAP-L138/AM18x based system >> Architecture: arm + +# Menu: System Type >> TI DaVinci >> DA850/OMAP-L138/AM18x based system >> Select peripherals connected to expander on UI board >> Architecture: arm + +# Menu: System Type >> TI DaVinci >> DaVinci 644x based system >> Architecture: arm + +# Menu: System Type >> TI DaVinci >> Select DA830/OMAP-L137/AM17x UI board peripheral >> Architecture: arm + +# Menu: System Type >> TI OMAP Common Features >> Architecture: arm +CONFIG_POWER_AVS_OMAP policy<{'armhf-generic': 'y'}> +CONFIG_POWER_AVS_OMAP_CLASS3 policy<{'armhf-generic': 'y'}> +CONFIG_OMAP_RESET_CLOCKS policy<{'armhf': 'y'}> +CONFIG_OMAP_32K_TIMER policy<{'armhf': 'y'}> +CONFIG_OMAP3_L2_AUX_SECURE_SAVE_RESTORE policy<{'armhf-generic': 'n'}> + +# Menu: System Type >> TI OMAP/AM/DM/DRA Family >> Architecture: arm +CONFIG_ARCH_OMAP3 policy<{'armhf-generic': 'y', 'armhf-generic-lpae': 'n'}> +CONFIG_ARCH_OMAP4 policy<{'armhf-generic': 'y', 'armhf-generic-lpae': 'n'}> +CONFIG_SOC_OMAP5 policy<{'armhf': 'n'}> +CONFIG_SOC_AM33XX policy<{'armhf-generic': 'y', 'armhf-generic-lpae': 'n'}> +CONFIG_SOC_AM43XX policy<{'armhf': 'n'}> +CONFIG_SOC_DRA7XX policy<{'armhf': 'y'}> +CONFIG_OMAP5_ERRATA_801819 policy<{'armhf': 'y'}> + +# Menu: System Type >> TI OMAP/AM/DM/DRA Family >> TI OMAP2/3/4 Specific Features >> Architecture: arm +CONFIG_ARCH_OMAP2PLUS_TYPICAL policy<{'armhf': 'y'}> +CONFIG_SOC_HAS_OMAP2_SDRC policy<{'armhf': 'y'}> +CONFIG_SOC_HAS_REALTIME_COUNTER policy<{'armhf': 'y'}> +CONFIG_SOC_OMAP3430 policy<{'armhf-generic': 'y'}> +CONFIG_SOC_TI81XX policy<{'armhf-generic': 'y'}> +CONFIG_MACH_OMAP3517EVM policy<{'armhf-generic': 'n'}> +CONFIG_MACH_OMAP3_PANDORA policy<{'armhf-generic': 'y'}> +CONFIG_OMAP3_SDRC_AC_TIMING policy<{'armhf-generic': 'n'}> + +# Menu: System Type >> TI OMAP1 specific features >> Architecture: arm + +# Menu: System Type >> TI OMAP1 specific features >> OMAP15xx Based System >> Architecture: arm + +# Menu: System Type >> TI OMAP1 specific features >> OMAP16xx Based System >> Architecture: arm +CONFIG_MACH_OMAP_GENERIC policy<{'armhf': 'y'}> + +# Menu: Ubuntu Supplied Third-Party Device Drivers +CONFIG_HIO policy<{'amd64': 'm', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n', 's390x': 'n'}> +CONFIG_UBUNTU_HOST policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 's390x': 'm'}> +# +CONFIG_HIO mark note + +# Menu: Virtualization +CONFIG_VIRTUALIZATION policy<{'amd64': 'y', 'arm64': 'y', 'ppc64el': 'y', 's390x': 'y'}> +# + +# Menu: Virtualization >> Architecture: powerpc +CONFIG_KVM_BOOK3S_64 policy<{'ppc64el': 'm'}> +CONFIG_KVM_BOOK3S_64_HV policy<{'ppc64el': 'm'}> +CONFIG_KVM_BOOK3S_64_PR policy<{'ppc64el': 'm'}> +CONFIG_KVM_BOOK3S_HV_EXIT_TIMING policy<{'ppc64el': 'n'}> +CONFIG_KVM_XICS policy<{'ppc64el': 'y'}> + +# Menu: Virtualization >> Architecture: s390 +CONFIG_PROTECTED_VIRTUALIZATION_GUEST policy<{'s390x': 'y'}> +CONFIG_PFAULT policy<{'s390x': 'y'}> +CONFIG_CMM_IUCV policy<{'s390x': 'y'}> +CONFIG_S390_HYPFS_FS policy<{'s390x': 'y'}> +CONFIG_S390_GUEST policy<{'s390x': 'y'}> + +# Menu: Virtualization >> Architecture: x86 +CONFIG_KVM_WERROR policy<{'amd64': 'y'}> + +# Menu: Virtualization >> KVM +CONFIG_KVM policy<{'amd64': 'm', 'arm64': 'y', 'ppc64el': 'y', 's390x': 'y'}> +# +CONFIG_KVM note + +# Menu: Virtualization >> KVM >> Architecture: s390 +CONFIG_KVM_S390_UCONTROL policy<{'s390x': 'n'}> + +# Menu: Virtualization >> Kernel-based Virtual Machine (KVM) support +# + +# Menu: Virtualization >> Kernel-based Virtual Machine (KVM) support >> Architecture: arm64 +CONFIG_KVM_ARM_PMU policy<{'arm64': 'y'}> + +# Menu: Virtualization >> Kernel-based Virtual Machine (KVM) support >> Architecture: x86 +CONFIG_KVM_INTEL policy<{'amd64': 'm'}> +CONFIG_KVM_AMD policy<{'amd64': 'm'}> +CONFIG_KVM_AMD_SEV policy<{'amd64': 'y'}> +CONFIG_KVM_MMU_AUDIT policy<{'amd64': 'n'}> + +# Menu: Virtualization >> Linux - VM Monitor Stream, base infrastructure >> Architecture: s390 +CONFIG_APPLDATA_BASE policy<{'s390x': 'y'}> +CONFIG_APPLDATA_MEM policy<{'s390x': 'm'}> +CONFIG_APPLDATA_OS policy<{'s390x': 'm'}> +CONFIG_APPLDATA_NET_SUM policy<{'s390x': 'm'}> + +# Menu: FOOTER + +# temporarily disabled options -- build failures. + +#CONFIG_TI_CPSW p policy<(arch armel armhf &/ value n) | value m> flag +#CONFIG_USB_MUSB_DSPS p policy<(arch armel armhf &/ value n) | value m> flag +#CONFIG_LIS3L02DQ p policy<(arch armhf &/ value n) | value m> flag +#CONFIG_EZX_PCAP p policy<(arch armhf &/ value n) | value y> flag +#CONFIG_TOUCHSCREEN_EGALAX p policy<(arch armel armhf &/ value n) | value m> flag note +#CONFIG_TOUCHSCREEN_EETI p policy<(arch armel armhf &/ value n) | value m> flag note +#CONFIG_SENSORS_AK8975 p policy<(arch armel armhf &/ value n) | value m> flag note +#CONFIG_PPC_EPAPR_HV_BYTECHAN n flag note + +# +# --- linux-azure-5.8-5.8.0.orig/debian.master/config/arm64/config.common.arm64 +++ linux-azure-5.8-5.8.0/debian.master/config/arm64/config.common.arm64 @@ -0,0 +1,690 @@ +# +# Config options for config.common.arm64 automatically generated by splitconfig.pl +# +CONFIG_6LOWPAN=m +CONFIG_ABX500_CORE=y +CONFIG_AC97_BUS=m +# CONFIG_ACPI_DEBUG is not set +# CONFIG_ACPI_DEBUGGER is not set +CONFIG_ACPI_REDUCED_HARDWARE_ONLY=y +CONFIG_AD525X_DPOT=m +CONFIG_ADFS_FS=m +CONFIG_AFFS_FS=m +CONFIG_AIX_PARTITION=y +CONFIG_ALIM7101_WDT=m +CONFIG_ALTERA_STAPL=m +CONFIG_ALTERA_TSE=m +CONFIG_AMIGA_PARTITION=y +CONFIG_ANDROID=y +CONFIG_APDS9802ALS=m +CONFIG_APPLICOM=m +# CONFIG_ARCH_ALPINE is not set +# CONFIG_ARCH_EXYNOS is not set +CONFIG_ARCH_MMAP_RND_BITS=18 +CONFIG_ARCH_MMAP_RND_COMPAT_BITS=11 +CONFIG_ARCH_MMAP_RND_COMPAT_BITS_MAX=16 +CONFIG_ARCH_MXC=y +CONFIG_ARCH_SUNXI=y +# CONFIG_ARCH_TEGRA is not set +# CONFIG_ARCH_UNIPHIER is not set +CONFIG_ARCNET=m +CONFIG_ARM_SMMU=y +CONFIG_ATA=y +CONFIG_ATALK=m +CONFIG_ATARI_PARTITION=y +CONFIG_ATA_GENERIC=m +CONFIG_ATA_OVER_ETH=m +CONFIG_ATA_PIIX=m +CONFIG_ATM=m +CONFIG_AUTOFS4_FS=m +CONFIG_AUTOFS_FS=m +CONFIG_AUXDISPLAY=y +CONFIG_AX88796B_PHY=m +CONFIG_BACKLIGHT_CLASS_DEVICE=y +CONFIG_BAREUDP=m +CONFIG_BATMAN_ADV=m +CONFIG_BCH=m +CONFIG_BCM84881_PHY=y +CONFIG_BCMA=m +CONFIG_BCM_KONA_USB2_PHY=m +CONFIG_BE2ISCSI=m +CONFIG_BEFS_FS=m +CONFIG_BFS_FS=m +CONFIG_BLK_DEV_3W_XXXX_RAID=m +CONFIG_BLK_DEV_CRYPTOLOOP=m +CONFIG_BLK_DEV_PCIESSD_MTIP32XX=m +CONFIG_BLK_DEV_RSXX=m +CONFIG_BLK_DEV_SKD=m +CONFIG_BLK_DEV_SX8=m +CONFIG_BLK_DEV_UMEM=m +CONFIG_BOUNCE=y +CONFIG_BSD_DISKLABEL=y +CONFIG_C2PORT=m +CONFIG_CADENCE_WATCHDOG=m +CONFIG_CAIF=m +CONFIG_CAN=m +CONFIG_CB710_CORE=m +CONFIG_CC_VERSION_TEXT="aarch64-linux-gnu-gcc (Ubuntu 10.2.0-8ubuntu1) 10.2.0" +CONFIG_CDROM_PKTCDVD=m +CONFIG_CLOCK_THERMAL=y +CONFIG_CMA=y +CONFIG_CMDLINE="console=ttyAMA0" +CONFIG_CMDLINE_PARTITION=y +CONFIG_COMMON_CLK=y +CONFIG_COUNTER=m +# CONFIG_CPU_BIG_ENDIAN is not set +CONFIG_CRAMFS=m +CONFIG_CRYPTO_DEFLATE=y +CONFIG_CRYPTO_DEV_ATMEL_ECC=m +CONFIG_CRYPTO_DEV_ATMEL_SHA204A=m +CONFIG_CRYPTO_DEV_NITROX_CNN55XX=m +CONFIG_CRYPTO_DEV_SAFEXCEL=m +CONFIG_CRYPTO_LIB_POLY1305_RSIZE=9 +CONFIG_DECNET=m +CONFIG_DEFAULT_MMAP_MIN_ADDR=32768 +CONFIG_DMADEVICES=y +CONFIG_DMA_CMA=y +CONFIG_DMA_VIRTUAL_CHANNELS=y +# CONFIG_DM_DEBUG is not set +CONFIG_DNET=m +CONFIG_DRM_AMDGPU=m +CONFIG_DRM_ANALOGIX_ANX78XX=m +CONFIG_DRM_AST=m +CONFIG_DRM_CIRRUS_QEMU=m +CONFIG_DRM_DP_AUX_CHARDEV=y +CONFIG_DRM_DP_CEC=y +CONFIG_DRM_ETNAVIV=m +CONFIG_DRM_I2C_CH7006=m +CONFIG_DRM_I2C_NXP_TDA9950=m +CONFIG_DRM_I2C_NXP_TDA998X=m +CONFIG_DRM_I2C_SIL164=m +CONFIG_DRM_MGAG200=m +CONFIG_DRM_NOUVEAU=m +CONFIG_DRM_PANEL_ORIENTATION_QUIRKS=y +CONFIG_DRM_QXL=m +CONFIG_DRM_RADEON=m +CONFIG_DRM_RCAR_LVDS=m +CONFIG_DRM_VGEM=m +CONFIG_DRM_VKMS=m +CONFIG_DS1682=m +CONFIG_DUMMY_IRQ=m +CONFIG_DW_WATCHDOG=m +CONFIG_ECHO=m +CONFIG_EEPROM_93CX6=m +CONFIG_EEPROM_AT24=m +CONFIG_EEPROM_EE1004=m +CONFIG_EEPROM_IDT_89HPESX=m +CONFIG_EEPROM_LEGACY=m +CONFIG_EEPROM_MAX6875=m +CONFIG_EFS_FS=m +CONFIG_ENCLOSURE_SERVICES=m +CONFIG_ETHOC=m +# CONFIG_EVM_LOAD_X509 is not set +CONFIG_EXFAT_FS=m +CONFIG_EXTCON=y +CONFIG_F2FS_FS=m +CONFIG_FB_3DFX=m +CONFIG_FB_ARK=m +CONFIG_FB_ASILIANT=y +CONFIG_FB_ATY=m +CONFIG_FB_ATY128=m +CONFIG_FB_CARMINE=m +CONFIG_FB_CFB_COPYAREA=y +CONFIG_FB_CFB_FILLRECT=y +CONFIG_FB_CFB_IMAGEBLIT=y +CONFIG_FB_CIRRUS=m +CONFIG_FB_CYBER2000=m +CONFIG_FB_I740=m +# CONFIG_FB_IBM_GXT4500 is not set +CONFIG_FB_IMSTT=y +CONFIG_FB_KYRO=m +CONFIG_FB_MATROX=m +CONFIG_FB_MB862XX=m +CONFIG_FB_METRONOME=m +CONFIG_FB_NEOMAGIC=m +CONFIG_FB_NVIDIA=m +CONFIG_FB_OPENCORES=m +CONFIG_FB_PM2=m +CONFIG_FB_PM3=m +CONFIG_FB_RADEON=m +CONFIG_FB_RIVA=m +CONFIG_FB_S1D13XXX=m +CONFIG_FB_S3=m +CONFIG_FB_SAVAGE=m +CONFIG_FB_SIMPLE=y +CONFIG_FB_SIS=m +CONFIG_FB_SM712=m +CONFIG_FB_TILEBLITTING=y +CONFIG_FB_TRIDENT=m +CONFIG_FB_UVESA=m +CONFIG_FB_VOODOO1=m +CONFIG_FB_VT8623=m +CONFIG_FDDI=y +CONFIG_FEALNX=m +CONFIG_FIREWIRE=m +CONFIG_FIREWIRE_NOSY=m +CONFIG_FIXED_PHY=y +CONFIG_FPGA_BRIDGE=m +CONFIG_FPGA_DFL=m +CONFIG_FRAME_WARN=1024 +CONFIG_FSL_MC_BUS=y +CONFIG_FUSION=y +CONFIG_GAMEPORT=m +CONFIG_GENERIC_PHY=y +CONFIG_GNSS=m +CONFIG_GPIO_ADP5588=m +CONFIG_GPIO_AMD_FCH=m +CONFIG_GPIO_DWAPB=m +CONFIG_GPIO_GENERIC=y +CONFIG_GPIO_GENERIC_PLATFORM=y +CONFIG_GPIO_MAX7300=m +CONFIG_GPIO_MAX732X=m +CONFIG_GPIO_MB86S7X=m +CONFIG_GPIO_PCA953X=m +CONFIG_GPIO_PCF857X=m +CONFIG_GPIO_RDC321X=m +CONFIG_GPIO_SIOX=m +CONFIG_GPIO_TPIC2810=m +CONFIG_GPIO_TWL4030=m +CONFIG_GPIO_TWL6040=m +CONFIG_GPIO_XILINX=y +CONFIG_GREYBUS=m +CONFIG_HABANA_AI=m +CONFIG_HAMACHI=m +CONFIG_HFSPLUS_FS=m +CONFIG_HFS_FS=m +# CONFIG_HIBERNATION is not set +CONFIG_HID=m +# CONFIG_HIO is not set +CONFIG_HMC6352=m +CONFIG_HOTPLUG_PCI=y +CONFIG_HOTPLUG_PCI_SHPC=y +CONFIG_HPFS_FS=m +CONFIG_HP_ILO=m +CONFIG_HSI=m +CONFIG_HSR=m +CONFIG_HTC_PASIC3=m +CONFIG_HWMON=y +CONFIG_HWSPINLOCK=y +CONFIG_HW_RANDOM_CCTRNG=m +CONFIG_HW_RANDOM_TIMERIOMEM=m +CONFIG_HZ=250 +# CONFIG_HZ_100 is not set +# CONFIG_HZ_1000 is not set +CONFIG_HZ_250=y +CONFIG_I2C=y +CONFIG_I2C_ALI1535=m +CONFIG_I2C_ALI1563=m +CONFIG_I2C_ALI15X3=m +CONFIG_I2C_AMD756=m +CONFIG_I2C_AMD8111=m +# CONFIG_I2C_AMD_MP2 is not set +CONFIG_I2C_CBUS_GPIO=m +CONFIG_I2C_CHARDEV=y +CONFIG_I2C_DESIGNWARE_PCI=m +CONFIG_I2C_DESIGNWARE_PLATFORM=y +# CONFIG_I2C_EMEV2 is not set +CONFIG_I2C_GPIO=m +CONFIG_I2C_HID=m +CONFIG_I2C_I801=m +CONFIG_I2C_IMX=m +CONFIG_I2C_ISCH=m +CONFIG_I2C_MUX_GPIO=m +CONFIG_I2C_MUX_LTC4306=m +CONFIG_I2C_MUX_MLXCPLD=m +CONFIG_I2C_MUX_PCA9541=m +CONFIG_I2C_MUX_PCA954x=m +CONFIG_I2C_MUX_REG=m +CONFIG_I2C_NFORCE2=m +CONFIG_I2C_NVIDIA_GPU=m +CONFIG_I2C_OCORES=m +CONFIG_I2C_PCA_PLATFORM=m +CONFIG_I2C_PIIX4=m +CONFIG_I2C_SIMTEC=m +CONFIG_I2C_SIS5595=m +CONFIG_I2C_SIS630=m +CONFIG_I2C_SIS96X=m +CONFIG_I2C_SLAVE=y +CONFIG_I2C_TAOS_EVM=m +CONFIG_I2C_VIA=m +CONFIG_I2C_VIAPRO=m +CONFIG_I2C_XILINX=m +CONFIG_I3C=m +CONFIG_I6300ESB_WDT=m +CONFIG_ICS932S401=m +CONFIG_IEEE802154=m +CONFIG_IIO=m +CONFIG_ILLEGAL_POINTER_VALUE=0xdead000000000000 +# CONFIG_IMA_ARCH_POLICY is not set +CONFIG_IMA_DEFAULT_HASH="sha1" +CONFIG_IMA_DEFAULT_HASH_SHA1=y +# CONFIG_IMA_DEFAULT_HASH_SHA256 is not set +CONFIG_IMA_DEFAULT_TEMPLATE="ima-ng" +# CONFIG_IMA_LOAD_X509 is not set +CONFIG_IMA_NG_TEMPLATE=y +# CONFIG_IMA_READ_POLICY is not set +# CONFIG_IMA_SIG_TEMPLATE is not set +CONFIG_INFINIBAND_BNXT_RE=m +CONFIG_INFINIBAND_OCRDMA=m +CONFIG_INPUT_EVBUG=m +CONFIG_INPUT_FF_MEMLESS=m +CONFIG_INPUT_JOYDEV=m +CONFIG_INPUT_JOYSTICK=y +CONFIG_INPUT_KEYBOARD=y +CONFIG_INPUT_MATRIXKMAP=m +CONFIG_INPUT_MISC=y +CONFIG_INPUT_MOUSE=y +CONFIG_INPUT_MOUSEDEV=y +CONFIG_INPUT_POLLDEV=m +CONFIG_INPUT_SPARSEKMAP=m +CONFIG_INPUT_TABLET=y +CONFIG_INPUT_TOUCHSCREEN=y +CONFIG_INTERCONNECT=y +CONFIG_IOMMU_IOVA=y +CONFIG_IPACK_BUS=m +CONFIG_IPMI_HANDLER=m +# CONFIG_IPMMU_VMSA is not set +# CONFIG_IP_DCCP_CCID3 is not set +CONFIG_IRQ_BYPASS_MANAGER=y +# CONFIG_IRQ_FORCED_THREADING_DEFAULT is not set +CONFIG_ISL29003=m +CONFIG_ISL29020=m +CONFIG_JFS_FS=m +CONFIG_JME=m +CONFIG_JUMP_LABEL=y +CONFIG_KARMA_PARTITION=y +CONFIG_KEXEC_FILE=y +CONFIG_KVM=y +CONFIG_LAPB=m +# CONFIG_LATENCYTOP is not set +CONFIG_LCD_CLASS_DEVICE=m +CONFIG_LDM_PARTITION=y +CONFIG_LIBNVDIMM=y +CONFIG_LLC2=m +CONFIG_LOG_BUF_SHIFT=18 +CONFIG_LPC_ICH=m +CONFIG_LPC_SCH=m +CONFIG_LZ4_COMPRESS=y +CONFIG_MAC_PARTITION=y +CONFIG_MAILBOX=y +CONFIG_MAX63XX_WATCHDOG=m +CONFIG_MCB=m +CONFIG_MDIO_BCM_UNIMAC=m +CONFIG_MDIO_BITBANG=m +CONFIG_MDIO_BUS=y +CONFIG_MDIO_BUS_MUX=y +CONFIG_MDIO_MSCC_MIIM=m +CONFIG_MDIO_THUNDER=m +CONFIG_MDIO_XPCS=m +CONFIG_MD_MULTIPATH=m +CONFIG_MEDIA_SUPPORT=m +CONFIG_MEGARAID_LEGACY=m +CONFIG_MEGARAID_NEWGEN=y +CONFIG_MEGARAID_SAS=m +CONFIG_MEMORY=y +CONFIG_MEMORY_HOTPLUG_DEFAULT_ONLINE=y +CONFIG_MEMSTICK=m +CONFIG_MFD_88PM800=m +CONFIG_MFD_88PM805=m +CONFIG_MFD_ARIZONA_I2C=m +CONFIG_MFD_AXP20X_I2C=m +CONFIG_MFD_BCM590XX=m +CONFIG_MFD_BD9571MWV=m +CONFIG_MFD_DA9062=m +CONFIG_MFD_DA9063=y +CONFIG_MFD_DA9150=m +CONFIG_MFD_IQS62X=m +CONFIG_MFD_JANZ_CMODIO=m +CONFIG_MFD_KEMPLD=m +CONFIG_MFD_LM3533=m +CONFIG_MFD_LP3943=m +CONFIG_MFD_MADERA=m +CONFIG_MFD_MAX14577=y +CONFIG_MFD_MAX77693=y +CONFIG_MFD_MAX8907=m +CONFIG_MFD_MC13XXX_I2C=m +CONFIG_MFD_MENF21BMC=m +CONFIG_MFD_MP2629=m +CONFIG_MFD_MT6360=m +CONFIG_MFD_MT6397=m +CONFIG_MFD_PCF50633=m +CONFIG_MFD_RDC321X=m +CONFIG_MFD_RETU=m +CONFIG_MFD_RT5033=m +CONFIG_MFD_SI476X_CORE=m +CONFIG_MFD_SKY81452=m +CONFIG_MFD_SM501=m +CONFIG_MFD_SYSCON=y +CONFIG_MFD_TI_AM335X_TSCADC=m +CONFIG_MFD_TI_LMU=m +CONFIG_MFD_TI_LP873X=m +CONFIG_MFD_TPS65086=m +CONFIG_MFD_TPS65217=m +CONFIG_MFD_TPS65912_I2C=y +CONFIG_MFD_TQMX86=m +CONFIG_MFD_VX855=m +CONFIG_MFD_WCD934X=m +CONFIG_MFD_WL1273_CORE=m +CONFIG_MFD_WM8994=m +CONFIG_MHI_BUS=m +CONFIG_MII=y +CONFIG_MINIX_FS=m +CONFIG_MINIX_SUBPARTITION=y +CONFIG_MISC_ALCOR_PCI=m +CONFIG_MISC_RTSX_PCI=m +CONFIG_MLXSW_I2C=m +CONFIG_MMC=y +CONFIG_MMC_BLOCK=y +CONFIG_MMC_CQHCI=m +CONFIG_MMC_HSQ=m +CONFIG_MMC_SDHCI=m +CONFIG_MMC_SDHCI_ESDHC_IMX=m +CONFIG_MMC_SDHCI_PLTFM=m +CONFIG_MOST=m +CONFIG_MTD=m +CONFIG_MTD_BLKDEVS=m +CONFIG_MTD_BLOCK=m +CONFIG_MTD_CMDLINE_PARTS=m +CONFIG_MTD_NAND_CORE=m +CONFIG_MTD_NAND_ECC_SW_HAMMING=m +CONFIG_MTD_OF_PARTS=m +CONFIG_MTD_PHYSMAP_GEMINI=y +CONFIG_MTD_PHYSMAP_VERSATILE=y +CONFIG_MTD_RAW_NAND=m +CONFIG_NET_DSA_MSCC_FELIX=m +CONFIG_NET_VENDOR_3COM=y +CONFIG_NET_VENDOR_ADAPTEC=y +CONFIG_NET_VENDOR_AGERE=y +CONFIG_NET_VENDOR_ALTEON=y +CONFIG_NET_VENDOR_AMD=y +CONFIG_NET_VENDOR_ARC=y +CONFIG_NET_VENDOR_ATHEROS=y +CONFIG_NET_VENDOR_BROADCOM=y +CONFIG_NET_VENDOR_BROCADE=y +CONFIG_NET_VENDOR_CAVIUM=y +CONFIG_NET_VENDOR_CHELSIO=y +CONFIG_NET_VENDOR_CISCO=y +CONFIG_NET_VENDOR_DEC=y +CONFIG_NET_VENDOR_DLINK=y +CONFIG_NET_VENDOR_EMULEX=y +CONFIG_NET_VENDOR_EZCHIP=y +CONFIG_NET_VENDOR_GOOGLE=y +CONFIG_NET_VENDOR_HUAWEI=y +CONFIG_NET_VENDOR_INTEL=y +CONFIG_NET_VENDOR_MARVELL=y +CONFIG_NET_VENDOR_MICREL=y +CONFIG_NET_VENDOR_MICROCHIP=y +CONFIG_NET_VENDOR_MICROSEMI=y +CONFIG_NET_VENDOR_MYRI=y +CONFIG_NET_VENDOR_NATSEMI=y +CONFIG_NET_VENDOR_NI=y +CONFIG_NET_VENDOR_NVIDIA=y +CONFIG_NET_VENDOR_OKI=y +CONFIG_NET_VENDOR_PENSANDO=y +CONFIG_NET_VENDOR_QLOGIC=y +CONFIG_NET_VENDOR_QUALCOMM=y +CONFIG_NET_VENDOR_RDC=y +CONFIG_NET_VENDOR_REALTEK=y +CONFIG_NET_VENDOR_RENESAS=y +CONFIG_NET_VENDOR_ROCKER=y +CONFIG_NET_VENDOR_SAMSUNG=y +CONFIG_NET_VENDOR_SEEQ=y +CONFIG_NET_VENDOR_SILAN=y +CONFIG_NET_VENDOR_SIS=y +CONFIG_NET_VENDOR_SMSC=y +CONFIG_NET_VENDOR_STMICRO=y +CONFIG_NET_VENDOR_SUN=y +CONFIG_NET_VENDOR_TEHUTI=y +CONFIG_NET_VENDOR_TI=y +CONFIG_NET_VENDOR_VIA=y +CONFIG_NET_VENDOR_WIZNET=y +CONFIG_NEW_LEDS=y +CONFIG_NFC=m +CONFIG_NFP=m +CONFIG_NODES_SHIFT=6 +CONFIG_NOP_USB_XCEIV=m +CONFIG_NOZOMI=m +CONFIG_NR_CPUS=256 +CONFIG_NTB=m +# CONFIG_NTFS_RW is not set +CONFIG_NUMA_BALANCING_DEFAULT_ENABLED=y +CONFIG_NVMEM=y +CONFIG_N_GSM=m +CONFIG_OF=y +CONFIG_OMFS_FS=m +CONFIG_OSF_PARTITION=y +CONFIG_PACKING=y +# CONFIG_PAGE_EXTENSION is not set +CONFIG_PANIC_TIMEOUT=0 +CONFIG_PARAVIRT=y +CONFIG_PARPORT=m +CONFIG_PATA_SIS=m +CONFIG_PC104=y +CONFIG_PCCARD=m +CONFIG_PCIEPORTBUS=y +CONFIG_PCIPCWATCHDOG=m +CONFIG_PCI_LAYERSCAPE=y +CONFIG_PCI_PASID=y +CONFIG_PCI_PRI=y +CONFIG_PCI_QUIRKS=y +# CONFIG_PCMCIA is not set +CONFIG_PHANTOM=m +CONFIG_PHONET=m +CONFIG_PHYLIB=y +CONFIG_PHY_PXA_28NM_HSIC=m +CONFIG_PHY_PXA_28NM_USB2=m +CONFIG_PHY_TI_GMII_SEL=m +CONFIG_PINCTRL=y +# CONFIG_PMIC_OPREGION is not set +CONFIG_PM_DEVFREQ=y +CONFIG_POWERCAP=y +CONFIG_POWER_AVS=y +CONFIG_POWER_SUPPLY=y +CONFIG_PPP=y +CONFIG_PPS=y +CONFIG_PPS_CLIENT_GPIO=m +CONFIG_PPS_CLIENT_LDISC=m +# CONFIG_PREEMPT is not set +# CONFIG_PREEMPT_NONE is not set +CONFIG_PREEMPT_VOLUNTARY=y +# CONFIG_PSI_DEFAULT_DISABLED is not set +CONFIG_PSTORE=y +# CONFIG_PSTORE_CONSOLE is not set +CONFIG_PSTORE_RAM=m +CONFIG_PTP_1588_CLOCK=y +CONFIG_PTP_1588_CLOCK_IDT82P33=m +CONFIG_PWM=y +CONFIG_PWM_TIECAP=m +CONFIG_PWM_TIEHRPWM=m +CONFIG_QNX4FS_FS=m +CONFIG_QNX6FS_FS=m +CONFIG_QRTR=m +CONFIG_RAPIDIO=y +CONFIG_RAVE_SP_CORE=m +CONFIG_RAW_DRIVER=m +CONFIG_RCU_CPU_STALL_TIMEOUT=60 +CONFIG_RC_CORE=m +CONFIG_REED_SOLOMON=m +CONFIG_REGULATOR=y +CONFIG_REGULATOR_FIXED_VOLTAGE=m +CONFIG_REGULATOR_TPS65217=m +CONFIG_REGULATOR_TWL4030=m +CONFIG_REISERFS_FS=m +CONFIG_REMOTEPROC=y +CONFIG_RESET_CONTROLLER=y +CONFIG_RFKILL=y +CONFIG_RMI4_CORE=m +CONFIG_ROMFS_FS=m +CONFIG_RPMSG_VIRTIO=m +CONFIG_RTC_DRV_PCF8523=m +CONFIG_RTC_DRV_PL031=m +CONFIG_RTC_DRV_TWL4030=m +CONFIG_S2IO=m +CONFIG_SATA_AHCI_PLATFORM=m +CONFIG_SCHED_SMT=y +CONFIG_SCSI_3W_9XXX=m +CONFIG_SCSI_3W_SAS=m +CONFIG_SCSI_AACRAID=m +CONFIG_SCSI_ACARD=m +CONFIG_SCSI_ADVANSYS=m +CONFIG_SCSI_AIC79XX=m +CONFIG_SCSI_AIC7XXX=m +CONFIG_SCSI_AIC94XX=m +CONFIG_SCSI_AM53C974=m +CONFIG_SCSI_ARCMSR=m +CONFIG_SCSI_BFA_FC=m +CONFIG_SCSI_BNX2X_FCOE=m +CONFIG_SCSI_BNX2_ISCSI=m +CONFIG_SCSI_CHELSIO_FCOE=m +CONFIG_SCSI_CXGB3_ISCSI=m +CONFIG_SCSI_CXGB4_ISCSI=m +CONFIG_SCSI_DC395x=m +CONFIG_SCSI_DMX3191D=m +CONFIG_SCSI_ESAS2R=m +CONFIG_SCSI_FDOMAIN_PCI=m +CONFIG_SCSI_GDTH=m +CONFIG_SCSI_HPSA=m +CONFIG_SCSI_HPTIOP=m +CONFIG_SCSI_INIA100=m +CONFIG_SCSI_INITIO=m +CONFIG_SCSI_IPS=m +CONFIG_SCSI_LPFC=m +CONFIG_SCSI_MVSAS=m +CONFIG_SCSI_MVUMI=m +CONFIG_SCSI_MYRB=m +CONFIG_SCSI_PM8001=m +CONFIG_SCSI_PMCRAID=m +CONFIG_SCSI_QLA_FC=m +CONFIG_SCSI_QLA_ISCSI=m +CONFIG_SCSI_QLOGIC_1280=m +CONFIG_SCSI_SNIC=m +CONFIG_SCSI_SRP_ATTRS=m +CONFIG_SCSI_STEX=m +CONFIG_SCSI_SYM53C8XX_2=m +CONFIG_SCSI_UFSHCD=m +CONFIG_SCSI_UFS_QCOM=m +CONFIG_SCSI_WD719X=m +CONFIG_SECURITY_SELINUX_BOOTPARAM=y +CONFIG_SENSORS_APDS990X=m +CONFIG_SENSORS_BH1770=m +CONFIG_SENSORS_LIS3_I2C=m +CONFIG_SENSORS_TSL2550=m +CONFIG_SERIAL_8250_DW=y +CONFIG_SERIAL_8250_FINTEK=y +CONFIG_SERIAL_ALTERA_JTAGUART=m +CONFIG_SERIAL_ALTERA_UART=m +CONFIG_SERIAL_ARC=m +CONFIG_SERIAL_CORE=y +CONFIG_SERIAL_FSL_LINFLEXUART=m +CONFIG_SERIAL_FSL_LPUART=m +CONFIG_SERIAL_JSM=m +CONFIG_SERIAL_NONSTANDARD=y +CONFIG_SERIAL_RP2=m +CONFIG_SERIAL_SC16IS7XX=m +CONFIG_SERIAL_SCCNXP=y +CONFIG_SERIO=y +CONFIG_SFC=m +CONFIG_SFC_FALCON=m +CONFIG_SGI_PARTITION=y +CONFIG_SLIP=m +CONFIG_SMC91X=y +CONFIG_SND=m +CONFIG_SND_COMPRESS_OFFLOAD=m +CONFIG_SND_DMAENGINE_PCM=m +CONFIG_SND_HDA_PREALLOC_SIZE=64 +CONFIG_SND_IMX_SOC=m +CONFIG_SND_PCM=m +CONFIG_SND_SOC=m +CONFIG_SND_SOC_FSL_SSI=m +CONFIG_SND_SOC_I2C_AND_SPI=m +CONFIG_SND_SOC_IMX_AUDMUX=m +CONFIG_SND_SOC_IMX_PCM_DMA=m +CONFIG_SND_SOC_IMX_SGTL5000=m +CONFIG_SND_SOC_SGTL5000=m +CONFIG_SND_TIMER=m +CONFIG_SOC_BRCMSTB=y +CONFIG_SOC_IMX8M=y +CONFIG_SOC_TI=y +CONFIG_SOLARIS_X86_PARTITION=y +CONFIG_SOUND=m +CONFIG_SPI=y +CONFIG_SPI_ROCKCHIP=m +CONFIG_SPMI=m +CONFIG_SRAM=y +CONFIG_SSB=m +CONFIG_STAGING=y +CONFIG_STANDALONE=y +CONFIG_SUN_PARTITION=y +CONFIG_SYSV68_PARTITION=y +CONFIG_SYSV_FS=m +CONFIG_TCG_TIS_I2C_ATMEL=m +CONFIG_TCG_TIS_I2C_INFINEON=m +CONFIG_TCG_TIS_I2C_NUVOTON=m +CONFIG_TCG_TIS_ST33ZP24_I2C=m +CONFIG_THERMAL=y +CONFIG_TIFM_CORE=m +# CONFIG_TI_SOC_THERMAL is not set +CONFIG_TOUCHSCREEN_ELAN=m +CONFIG_TPS6105X=m +CONFIG_TPS65010=m +CONFIG_TPS6507X=m +CONFIG_TRACE_SINK=m +# CONFIG_TRANSPARENT_HUGEPAGE_ALWAYS is not set +CONFIG_TRANSPARENT_HUGEPAGE_MADVISE=y +CONFIG_TTY_PRINTK=y +CONFIG_UACCE=m +CONFIG_UFS_FS=m +CONFIG_UIO_AEC=m +CONFIG_UIO_CIF=m +CONFIG_UIO_DMEM_GENIRQ=m +CONFIG_UIO_MF624=m +CONFIG_UIO_NETX=m +CONFIG_UIO_PCI_GENERIC=m +CONFIG_UIO_PDRV_GENIRQ=m +CONFIG_UIO_PRUSS=m +CONFIG_UIO_SERCOS3=m +CONFIG_ULTRIX_PARTITION=y +CONFIG_UNIXWARE_DISKLABEL=y +CONFIG_USB4=m +CONFIG_USB_DWC2_PCI=m +CONFIG_USB_EHCI_HCD_PLATFORM=m +CONFIG_USB_EMXX=m +CONFIG_USB_GADGET=m +# CONFIG_USB_G_MULTI is not set +CONFIG_USB_HCD_BCMA=m +CONFIG_USB_HCD_SSB=m +CONFIG_USB_MUSB_HDRC=m +CONFIG_USB_OHCI_HCD_PLATFORM=m +CONFIG_USB_ROLE_SWITCH=y +CONFIG_USB_SUPPORT=y +CONFIG_VDPA=m +CONFIG_VFIO=m +CONFIG_VFIO_IOMMU_TYPE1=m +CONFIG_VFIO_PCI=m +CONFIG_VFIO_VIRQFD=m +CONFIG_VIRTIO_MMIO=y +CONFIG_VME_BUS=y +CONFIG_VMXNET3=m +# CONFIG_VOP_BUS is not set +CONFIG_VXFS_FS=m +CONFIG_VXGE=m +CONFIG_W1=m +CONFIG_WAN=y +CONFIG_WDTPCI=m +CONFIG_WIMAX=m +CONFIG_X25=m +CONFIG_XEN=y +CONFIG_XILINX_LL_TEMAC=m +CONFIG_XILINX_SDFEC=m +CONFIG_XILINX_WATCHDOG=m +CONFIG_XILLYBUS=m +CONFIG_XZ_DEC_ARM=y +CONFIG_XZ_DEC_ARMTHUMB=y +CONFIG_XZ_DEC_IA64=y +CONFIG_XZ_DEC_POWERPC=y +CONFIG_XZ_DEC_SPARC=y +CONFIG_XZ_DEC_TEST=m +CONFIG_XZ_DEC_X86=y +CONFIG_YELLOWFIN=m +CONFIG_ZIIRAVE_WATCHDOG=m +CONFIG_ZSTD_COMPRESS=y --- linux-azure-5.8-5.8.0.orig/debian.master/config/arm64/config.flavour.generic +++ linux-azure-5.8-5.8.0/debian.master/config/arm64/config.flavour.generic @@ -0,0 +1,12 @@ +# +# Config options for config.flavour.generic automatically generated by splitconfig.pl +# +CONFIG_ARCH_MMAP_RND_BITS_MAX=33 +CONFIG_ARCH_MMAP_RND_BITS_MIN=18 +CONFIG_ARCH_MMAP_RND_COMPAT_BITS_MIN=11 +CONFIG_ARM64_4K_PAGES=y +# CONFIG_ARM64_64K_PAGES is not set +CONFIG_ARM64_CONT_SHIFT=4 +CONFIG_ARM64_PAGE_SHIFT=12 +CONFIG_FORCE_MAX_ZONEORDER=13 +CONFIG_PGTABLE_LEVELS=4 --- linux-azure-5.8-5.8.0.orig/debian.master/config/arm64/config.flavour.generic-64k +++ linux-azure-5.8-5.8.0/debian.master/config/arm64/config.flavour.generic-64k @@ -0,0 +1,12 @@ +# +# Config options for config.flavour.generic-64k automatically generated by splitconfig.pl +# +CONFIG_ARCH_MMAP_RND_BITS_MAX=29 +CONFIG_ARCH_MMAP_RND_BITS_MIN=14 +CONFIG_ARCH_MMAP_RND_COMPAT_BITS_MIN=7 +# CONFIG_ARM64_4K_PAGES is not set +CONFIG_ARM64_64K_PAGES=y +CONFIG_ARM64_CONT_SHIFT=5 +CONFIG_ARM64_PAGE_SHIFT=16 +CONFIG_FORCE_MAX_ZONEORDER=14 +CONFIG_PGTABLE_LEVELS=3 --- linux-azure-5.8-5.8.0.orig/debian.master/config/armhf/config.common.armhf +++ linux-azure-5.8-5.8.0/debian.master/config/armhf/config.common.armhf @@ -0,0 +1,666 @@ +# +# Config options for config.common.armhf automatically generated by splitconfig.pl +# +CONFIG_6LOWPAN=m +CONFIG_ABX500_CORE=y +CONFIG_AC97_BUS=y +CONFIG_AD525X_DPOT=m +CONFIG_ADFS_FS=m +CONFIG_AFFS_FS=m +CONFIG_AIX_PARTITION=y +CONFIG_ALIM7101_WDT=m +CONFIG_ALTERA_STAPL=m +CONFIG_ALTERA_TSE=m +CONFIG_AMIGA_PARTITION=y +CONFIG_ANDROID=y +CONFIG_APDS9802ALS=m +CONFIG_APPLICOM=m +CONFIG_ARCH_ALPINE=y +CONFIG_ARCH_EXYNOS=y +CONFIG_ARCH_MMAP_RND_BITS=8 +CONFIG_ARCH_MMAP_RND_BITS_MAX=16 +CONFIG_ARCH_MMAP_RND_BITS_MIN=8 +# CONFIG_ARCH_SUNXI is not set +CONFIG_ARCH_UNIPHIER=y +CONFIG_ARCNET=m +# CONFIG_ARM_SMMU is not set +CONFIG_ATA=y +CONFIG_ATALK=m +CONFIG_ATARI_PARTITION=y +CONFIG_ATA_GENERIC=m +CONFIG_ATA_OVER_ETH=m +CONFIG_ATA_PIIX=m +CONFIG_ATM=m +CONFIG_AUTOFS4_FS=m +CONFIG_AUTOFS_FS=m +CONFIG_AUXDISPLAY=y +CONFIG_AX88796B_PHY=m +CONFIG_BACKLIGHT_CLASS_DEVICE=y +CONFIG_BAREUDP=m +CONFIG_BATMAN_ADV=m +CONFIG_BCH=y +CONFIG_BCM84881_PHY=y +CONFIG_BCMA=m +CONFIG_BCM_KONA_USB2_PHY=m +CONFIG_BE2ISCSI=m +CONFIG_BEFS_FS=m +CONFIG_BFS_FS=m +CONFIG_BLK_DEV_3W_XXXX_RAID=m +CONFIG_BLK_DEV_CRYPTOLOOP=m +CONFIG_BLK_DEV_PCIESSD_MTIP32XX=m +CONFIG_BLK_DEV_RSXX=m +CONFIG_BLK_DEV_SX8=m +CONFIG_BLK_DEV_UMEM=m +CONFIG_BOUNCE=y +CONFIG_BSD_DISKLABEL=y +CONFIG_C2PORT=m +CONFIG_CADENCE_WATCHDOG=m +CONFIG_CAIF=m +CONFIG_CAN=m +CONFIG_CB710_CORE=m +CONFIG_CC_VERSION_TEXT="arm-linux-gnueabihf-gcc (Ubuntu 10.2.0-8ubuntu1) 10.2.0" +CONFIG_CDROM_PKTCDVD=m +CONFIG_CLOCK_THERMAL=y +CONFIG_CMA=y +CONFIG_CMDLINE="" +CONFIG_CMDLINE_PARTITION=y +CONFIG_COMMON_CLK=y +CONFIG_COUNTER=m +# CONFIG_CPU_BIG_ENDIAN is not set +CONFIG_CRAMFS=m +CONFIG_CRYPTO_DEFLATE=y +CONFIG_CRYPTO_DEV_ATMEL_ECC=m +CONFIG_CRYPTO_DEV_ATMEL_SHA204A=m +CONFIG_CRYPTO_DEV_SAFEXCEL=m +CONFIG_CRYPTO_LIB_POLY1305_RSIZE=9 +CONFIG_DECNET=m +CONFIG_DEFAULT_MMAP_MIN_ADDR=32768 +CONFIG_DMADEVICES=y +CONFIG_DMA_CMA=y +CONFIG_DMA_VIRTUAL_CHANNELS=y +# CONFIG_DM_DEBUG is not set +CONFIG_DNET=m +CONFIG_DRM_AMDGPU=m +CONFIG_DRM_ANALOGIX_ANX78XX=m +CONFIG_DRM_AST=m +CONFIG_DRM_CIRRUS_QEMU=m +CONFIG_DRM_DP_AUX_CHARDEV=y +CONFIG_DRM_DP_CEC=y +CONFIG_DRM_ETNAVIV=m +CONFIG_DRM_I2C_CH7006=m +CONFIG_DRM_I2C_NXP_TDA9950=m +CONFIG_DRM_I2C_NXP_TDA998X=m +CONFIG_DRM_I2C_SIL164=m +CONFIG_DRM_MGAG200=m +CONFIG_DRM_NOUVEAU=m +CONFIG_DRM_PANEL_ORIENTATION_QUIRKS=y +CONFIG_DRM_QXL=m +CONFIG_DRM_RADEON=m +CONFIG_DRM_RCAR_LVDS=m +CONFIG_DRM_VGEM=m +CONFIG_DRM_VKMS=m +CONFIG_DS1682=m +CONFIG_DUMMY_IRQ=m +CONFIG_DW_WATCHDOG=m +CONFIG_ECHO=m +CONFIG_EEPROM_93CX6=m +CONFIG_EEPROM_AT24=m +CONFIG_EEPROM_EE1004=m +CONFIG_EEPROM_IDT_89HPESX=m +CONFIG_EEPROM_LEGACY=m +CONFIG_EEPROM_MAX6875=m +CONFIG_EFS_FS=m +CONFIG_ENCLOSURE_SERVICES=m +CONFIG_ETHOC=m +# CONFIG_EVM_LOAD_X509 is not set +CONFIG_EXFAT_FS=m +CONFIG_EXTCON=y +CONFIG_F2FS_FS=m +CONFIG_FB_3DFX=m +CONFIG_FB_ARK=m +CONFIG_FB_ASILIANT=y +CONFIG_FB_ATY=m +CONFIG_FB_ATY128=m +CONFIG_FB_CARMINE=m +CONFIG_FB_CFB_COPYAREA=y +CONFIG_FB_CFB_FILLRECT=y +CONFIG_FB_CFB_IMAGEBLIT=y +CONFIG_FB_CIRRUS=m +CONFIG_FB_CYBER2000=m +CONFIG_FB_I740=m +# CONFIG_FB_IBM_GXT4500 is not set +CONFIG_FB_IMSTT=y +CONFIG_FB_KYRO=m +CONFIG_FB_MATROX=m +CONFIG_FB_MB862XX=m +CONFIG_FB_METRONOME=m +CONFIG_FB_NEOMAGIC=m +CONFIG_FB_NVIDIA=m +CONFIG_FB_OPENCORES=m +CONFIG_FB_PM2=m +CONFIG_FB_PM3=m +CONFIG_FB_RADEON=m +CONFIG_FB_RIVA=m +CONFIG_FB_S1D13XXX=m +CONFIG_FB_S3=m +CONFIG_FB_SAVAGE=m +CONFIG_FB_SIMPLE=y +CONFIG_FB_SIS=m +CONFIG_FB_SM712=m +CONFIG_FB_TILEBLITTING=y +CONFIG_FB_TRIDENT=m +CONFIG_FB_UVESA=m +CONFIG_FB_VOODOO1=m +CONFIG_FB_VT8623=m +CONFIG_FDDI=y +CONFIG_FEALNX=m +CONFIG_FIREWIRE=m +CONFIG_FIREWIRE_NOSY=m +CONFIG_FIXED_PHY=y +CONFIG_FPGA_BRIDGE=m +CONFIG_FPGA_DFL=m +CONFIG_FRAME_WARN=1024 +# CONFIG_FSL_MC_BUS is not set +CONFIG_FUSION=y +CONFIG_GAMEPORT=m +CONFIG_GENERIC_PHY=y +CONFIG_GNSS=m +CONFIG_GPIO_ADP5588=m +CONFIG_GPIO_AMD_FCH=m +CONFIG_GPIO_DWAPB=m +CONFIG_GPIO_GENERIC=y +CONFIG_GPIO_GENERIC_PLATFORM=y +CONFIG_GPIO_MAX7300=m +CONFIG_GPIO_MAX732X=m +CONFIG_GPIO_MB86S7X=m +CONFIG_GPIO_PCA953X=m +CONFIG_GPIO_PCF857X=m +CONFIG_GPIO_RDC321X=m +CONFIG_GPIO_SIOX=m +CONFIG_GPIO_TPIC2810=m +CONFIG_GPIO_TWL4030=y +CONFIG_GPIO_TWL6040=y +CONFIG_GPIO_XILINX=y +CONFIG_GREYBUS=m +CONFIG_HABANA_AI=m +CONFIG_HAMACHI=m +CONFIG_HFSPLUS_FS=m +CONFIG_HFS_FS=m +CONFIG_HIBERNATION=y +CONFIG_HID=m +# CONFIG_HIO is not set +CONFIG_HMC6352=m +# CONFIG_HOTPLUG_PCI is not set +CONFIG_HPFS_FS=m +CONFIG_HP_ILO=m +CONFIG_HSI=m +CONFIG_HSR=m +CONFIG_HTC_PASIC3=m +CONFIG_HWMON=y +CONFIG_HWSPINLOCK=y +CONFIG_HW_RANDOM_CCTRNG=m +CONFIG_HW_RANDOM_TIMERIOMEM=m +CONFIG_HZ=250 +# CONFIG_HZ_100 is not set +# CONFIG_HZ_1000 is not set +CONFIG_HZ_250=y +CONFIG_I2C=y +CONFIG_I2C_ALI1535=m +CONFIG_I2C_ALI1563=m +CONFIG_I2C_ALI15X3=m +CONFIG_I2C_AMD756=m +CONFIG_I2C_AMD8111=m +CONFIG_I2C_CBUS_GPIO=m +CONFIG_I2C_CHARDEV=y +CONFIG_I2C_DESIGNWARE_PCI=m +CONFIG_I2C_DESIGNWARE_PLATFORM=y +CONFIG_I2C_EMEV2=m +CONFIG_I2C_GPIO=m +CONFIG_I2C_HID=m +CONFIG_I2C_I801=m +CONFIG_I2C_IMX=y +CONFIG_I2C_ISCH=m +CONFIG_I2C_MUX_GPIO=m +CONFIG_I2C_MUX_LTC4306=m +CONFIG_I2C_MUX_MLXCPLD=m +CONFIG_I2C_MUX_PCA9541=m +CONFIG_I2C_MUX_PCA954x=m +CONFIG_I2C_MUX_REG=m +CONFIG_I2C_NFORCE2=m +CONFIG_I2C_NVIDIA_GPU=m +CONFIG_I2C_OCORES=m +CONFIG_I2C_PCA_PLATFORM=m +CONFIG_I2C_PIIX4=m +CONFIG_I2C_SIMTEC=m +CONFIG_I2C_SIS5595=m +CONFIG_I2C_SIS630=m +CONFIG_I2C_SIS96X=m +CONFIG_I2C_SLAVE=y +CONFIG_I2C_TAOS_EVM=m +CONFIG_I2C_VIA=m +CONFIG_I2C_VIAPRO=m +CONFIG_I2C_XILINX=m +CONFIG_I3C=m +CONFIG_I6300ESB_WDT=m +CONFIG_ICS932S401=m +CONFIG_IEEE802154=m +CONFIG_IIO=m +# CONFIG_IMA_ARCH_POLICY is not set +CONFIG_IMA_DEFAULT_HASH="sha1" +CONFIG_IMA_DEFAULT_HASH_SHA1=y +# CONFIG_IMA_DEFAULT_HASH_SHA256 is not set +CONFIG_IMA_DEFAULT_TEMPLATE="ima-ng" +# CONFIG_IMA_LOAD_X509 is not set +CONFIG_IMA_NG_TEMPLATE=y +# CONFIG_IMA_READ_POLICY is not set +# CONFIG_IMA_SIG_TEMPLATE is not set +CONFIG_INFINIBAND_OCRDMA=m +CONFIG_INPUT_EVBUG=m +CONFIG_INPUT_FF_MEMLESS=m +CONFIG_INPUT_JOYDEV=m +CONFIG_INPUT_JOYSTICK=y +CONFIG_INPUT_KEYBOARD=y +CONFIG_INPUT_MATRIXKMAP=m +CONFIG_INPUT_MISC=y +CONFIG_INPUT_MOUSE=y +CONFIG_INPUT_MOUSEDEV=y +CONFIG_INPUT_POLLDEV=m +CONFIG_INPUT_SPARSEKMAP=m +CONFIG_INPUT_TABLET=y +CONFIG_INPUT_TOUCHSCREEN=y +CONFIG_INTERCONNECT=y +CONFIG_IOMMU_IOVA=m +CONFIG_IPACK_BUS=m +CONFIG_IPMI_HANDLER=m +CONFIG_IPMMU_VMSA=y +# CONFIG_IP_DCCP_CCID3 is not set +CONFIG_IRQ_BYPASS_MANAGER=m +# CONFIG_IRQ_FORCED_THREADING_DEFAULT is not set +CONFIG_ISL29003=m +CONFIG_ISL29020=m +CONFIG_JFS_FS=m +CONFIG_JME=m +# CONFIG_JUMP_LABEL is not set +CONFIG_KARMA_PARTITION=y +CONFIG_KERNEL_GZIP=y +# CONFIG_KERNEL_LZ4 is not set +CONFIG_LAPB=m +# CONFIG_LATENCYTOP is not set +CONFIG_LCD_CLASS_DEVICE=m +CONFIG_LDM_PARTITION=y +CONFIG_LIBNVDIMM=y +CONFIG_LLC2=m +CONFIG_LOG_BUF_SHIFT=17 +CONFIG_LPC_ICH=m +CONFIG_LPC_SCH=m +CONFIG_LZ4_COMPRESS=y +CONFIG_MAC_PARTITION=y +CONFIG_MAILBOX=y +CONFIG_MAX63XX_WATCHDOG=m +CONFIG_MCB=m +CONFIG_MDIO_BCM_UNIMAC=m +CONFIG_MDIO_BITBANG=m +CONFIG_MDIO_BUS=y +CONFIG_MDIO_BUS_MUX=m +CONFIG_MDIO_MSCC_MIIM=m +CONFIG_MDIO_XPCS=m +CONFIG_MD_MULTIPATH=m +CONFIG_MEDIA_SUPPORT=m +CONFIG_MEGARAID_LEGACY=m +CONFIG_MEGARAID_NEWGEN=y +CONFIG_MEGARAID_SAS=m +CONFIG_MEMORY=y +CONFIG_MEMSTICK=m +CONFIG_MFD_88PM800=m +CONFIG_MFD_88PM805=m +CONFIG_MFD_ARIZONA_I2C=m +CONFIG_MFD_AXP20X_I2C=m +CONFIG_MFD_BCM590XX=m +CONFIG_MFD_BD9571MWV=m +CONFIG_MFD_DA9062=m +CONFIG_MFD_DA9063=y +CONFIG_MFD_DA9150=m +CONFIG_MFD_IQS62X=m +CONFIG_MFD_JANZ_CMODIO=m +CONFIG_MFD_KEMPLD=m +CONFIG_MFD_LM3533=m +CONFIG_MFD_LP3943=m +CONFIG_MFD_MADERA=m +CONFIG_MFD_MAX14577=y +CONFIG_MFD_MAX77693=y +CONFIG_MFD_MAX8907=m +CONFIG_MFD_MC13XXX_I2C=m +CONFIG_MFD_MENF21BMC=m +CONFIG_MFD_MP2629=m +CONFIG_MFD_MT6360=m +CONFIG_MFD_MT6397=m +CONFIG_MFD_PCF50633=m +CONFIG_MFD_RDC321X=m +CONFIG_MFD_RETU=m +CONFIG_MFD_RT5033=m +CONFIG_MFD_SI476X_CORE=m +CONFIG_MFD_SKY81452=m +CONFIG_MFD_SM501=y +CONFIG_MFD_SYSCON=y +CONFIG_MFD_TI_AM335X_TSCADC=m +CONFIG_MFD_TI_LMU=m +CONFIG_MFD_TI_LP873X=m +CONFIG_MFD_TPS65086=m +CONFIG_MFD_TPS65217=y +CONFIG_MFD_TPS65912_I2C=y +CONFIG_MFD_TQMX86=m +CONFIG_MFD_VX855=m +CONFIG_MFD_WCD934X=m +CONFIG_MFD_WL1273_CORE=m +CONFIG_MFD_WM8994=m +CONFIG_MHI_BUS=m +CONFIG_MII=m +CONFIG_MINIX_FS=m +CONFIG_MINIX_SUBPARTITION=y +CONFIG_MISC_ALCOR_PCI=m +CONFIG_MISC_RTSX_PCI=m +CONFIG_MLXSW_I2C=m +CONFIG_MMC=y +CONFIG_MMC_BLOCK=y +# CONFIG_MMC_HSQ is not set +CONFIG_MMC_SDHCI=y +CONFIG_MMC_SDHCI_ESDHC_IMX=y +CONFIG_MMC_SDHCI_PLTFM=y +CONFIG_MOST=m +CONFIG_MTD=y +CONFIG_MTD_BLKDEVS=y +CONFIG_MTD_BLOCK=y +CONFIG_MTD_CMDLINE_PARTS=y +CONFIG_MTD_NAND_CORE=y +CONFIG_MTD_NAND_ECC_SW_HAMMING=y +CONFIG_MTD_OF_PARTS=y +CONFIG_MTD_PHYSMAP_GEMINI=y +CONFIG_MTD_PHYSMAP_VERSATILE=y +CONFIG_MTD_RAW_NAND=y +# CONFIG_NET_DSA_MSCC_FELIX is not set +CONFIG_NET_VENDOR_3COM=y +CONFIG_NET_VENDOR_ADAPTEC=y +CONFIG_NET_VENDOR_AGERE=y +CONFIG_NET_VENDOR_ALTEON=y +CONFIG_NET_VENDOR_AMD=y +CONFIG_NET_VENDOR_ARC=y +CONFIG_NET_VENDOR_ATHEROS=y +CONFIG_NET_VENDOR_BROADCOM=y +CONFIG_NET_VENDOR_BROCADE=y +CONFIG_NET_VENDOR_CAVIUM=y +CONFIG_NET_VENDOR_CHELSIO=y +CONFIG_NET_VENDOR_CISCO=y +CONFIG_NET_VENDOR_DEC=y +CONFIG_NET_VENDOR_DLINK=y +CONFIG_NET_VENDOR_EMULEX=y +CONFIG_NET_VENDOR_EZCHIP=y +CONFIG_NET_VENDOR_GOOGLE=y +CONFIG_NET_VENDOR_HUAWEI=y +CONFIG_NET_VENDOR_INTEL=y +CONFIG_NET_VENDOR_MARVELL=y +CONFIG_NET_VENDOR_MICREL=y +CONFIG_NET_VENDOR_MICROCHIP=y +CONFIG_NET_VENDOR_MICROSEMI=y +CONFIG_NET_VENDOR_MYRI=y +CONFIG_NET_VENDOR_NATSEMI=y +CONFIG_NET_VENDOR_NI=y +CONFIG_NET_VENDOR_NVIDIA=y +CONFIG_NET_VENDOR_OKI=y +CONFIG_NET_VENDOR_PENSANDO=y +CONFIG_NET_VENDOR_QLOGIC=y +CONFIG_NET_VENDOR_QUALCOMM=y +CONFIG_NET_VENDOR_RDC=y +CONFIG_NET_VENDOR_REALTEK=y +CONFIG_NET_VENDOR_RENESAS=y +CONFIG_NET_VENDOR_ROCKER=y +CONFIG_NET_VENDOR_SAMSUNG=y +CONFIG_NET_VENDOR_SEEQ=y +CONFIG_NET_VENDOR_SILAN=y +CONFIG_NET_VENDOR_SIS=y +CONFIG_NET_VENDOR_SMSC=y +CONFIG_NET_VENDOR_STMICRO=y +CONFIG_NET_VENDOR_SUN=y +CONFIG_NET_VENDOR_TEHUTI=y +CONFIG_NET_VENDOR_TI=y +CONFIG_NET_VENDOR_VIA=y +CONFIG_NET_VENDOR_WIZNET=y +CONFIG_NEW_LEDS=y +CONFIG_NFC=m +CONFIG_NFP=m +CONFIG_NOP_USB_XCEIV=y +CONFIG_NOZOMI=m +CONFIG_NR_CPUS=4 +CONFIG_NTB=m +# CONFIG_NTFS_RW is not set +CONFIG_NVMEM=y +CONFIG_N_GSM=m +CONFIG_OF=y +CONFIG_OMFS_FS=m +CONFIG_OSF_PARTITION=y +CONFIG_PACKING=y +CONFIG_PAGE_EXTENSION=y +CONFIG_PAGE_OFFSET=0xC0000000 +CONFIG_PANIC_TIMEOUT=0 +# CONFIG_PARAVIRT is not set +CONFIG_PARPORT=m +CONFIG_PATA_SIS=m +CONFIG_PC104=y +# CONFIG_PCCARD is not set +CONFIG_PCIEPORTBUS=y +CONFIG_PCIPCWATCHDOG=m +# CONFIG_PCI_LAYERSCAPE is not set +CONFIG_PCI_PASID=y +CONFIG_PCI_PRI=y +CONFIG_PCI_QUIRKS=y +CONFIG_PHANTOM=m +CONFIG_PHONET=m +CONFIG_PHYLIB=y +CONFIG_PHY_PXA_28NM_HSIC=m +CONFIG_PHY_PXA_28NM_USB2=m +CONFIG_PHY_TI_GMII_SEL=y +CONFIG_PINCTRL=y +CONFIG_PM_DEVFREQ=y +CONFIG_POWERCAP=y +CONFIG_POWER_AVS=y +CONFIG_POWER_SUPPLY=y +CONFIG_PPP=y +CONFIG_PPS=y +CONFIG_PPS_CLIENT_GPIO=m +CONFIG_PPS_CLIENT_LDISC=m +# CONFIG_PREEMPT is not set +# CONFIG_PREEMPT_NONE is not set +CONFIG_PREEMPT_VOLUNTARY=y +# CONFIG_PSI_DEFAULT_DISABLED is not set +CONFIG_PSTORE=y +CONFIG_PSTORE_CONSOLE=y +CONFIG_PSTORE_RAM=y +CONFIG_PTP_1588_CLOCK=y +CONFIG_PTP_1588_CLOCK_IDT82P33=m +CONFIG_PWM=y +CONFIG_QNX4FS_FS=m +CONFIG_QNX6FS_FS=m +CONFIG_QRTR=m +CONFIG_RAPIDIO=y +CONFIG_RAVE_SP_CORE=m +CONFIG_RAW_DRIVER=m +CONFIG_RCU_CPU_STALL_TIMEOUT=60 +CONFIG_RC_CORE=m +CONFIG_REED_SOLOMON=y +CONFIG_REGULATOR=y +CONFIG_REGULATOR_FIXED_VOLTAGE=y +CONFIG_REGULATOR_TPS65217=y +CONFIG_REISERFS_FS=m +CONFIG_REMOTEPROC=y +CONFIG_RESET_CONTROLLER=y +CONFIG_RFKILL=y +CONFIG_RMI4_CORE=m +CONFIG_ROMFS_FS=m +CONFIG_RPMSG_VIRTIO=m +CONFIG_RTC_DRV_CMOS=m +CONFIG_RTC_DRV_PL031=y +CONFIG_RTC_DRV_TWL4030=y +CONFIG_S2IO=m +CONFIG_SATA_AHCI_PLATFORM=y +# CONFIG_SCHED_SMT is not set +CONFIG_SCSI_3W_9XXX=m +CONFIG_SCSI_3W_SAS=m +CONFIG_SCSI_AACRAID=m +CONFIG_SCSI_ACARD=m +CONFIG_SCSI_ADVANSYS=m +CONFIG_SCSI_AIC79XX=m +CONFIG_SCSI_AIC7XXX=m +CONFIG_SCSI_AIC94XX=m +CONFIG_SCSI_AM53C974=m +CONFIG_SCSI_ARCMSR=m +CONFIG_SCSI_BFA_FC=m +CONFIG_SCSI_BNX2X_FCOE=m +CONFIG_SCSI_BNX2_ISCSI=m +CONFIG_SCSI_CHELSIO_FCOE=m +CONFIG_SCSI_CXGB3_ISCSI=m +CONFIG_SCSI_CXGB4_ISCSI=m +CONFIG_SCSI_DC395x=m +CONFIG_SCSI_DMX3191D=m +CONFIG_SCSI_ESAS2R=m +CONFIG_SCSI_FDOMAIN_PCI=m +CONFIG_SCSI_GDTH=m +CONFIG_SCSI_HPSA=m +CONFIG_SCSI_HPTIOP=m +CONFIG_SCSI_INIA100=m +CONFIG_SCSI_INITIO=m +CONFIG_SCSI_IPS=m +CONFIG_SCSI_LPFC=m +CONFIG_SCSI_MVSAS=m +CONFIG_SCSI_MVUMI=m +CONFIG_SCSI_MYRB=m +CONFIG_SCSI_PM8001=m +CONFIG_SCSI_PMCRAID=m +CONFIG_SCSI_QLA_FC=m +CONFIG_SCSI_QLA_ISCSI=m +CONFIG_SCSI_QLOGIC_1280=m +CONFIG_SCSI_SNIC=m +CONFIG_SCSI_SRP_ATTRS=m +CONFIG_SCSI_STEX=m +CONFIG_SCSI_SYM53C8XX_2=m +CONFIG_SCSI_UFSHCD=m +# CONFIG_SCSI_UFS_QCOM is not set +CONFIG_SCSI_WD719X=m +CONFIG_SECURITY_SELINUX_BOOTPARAM=y +CONFIG_SENSORS_APDS990X=m +CONFIG_SENSORS_BH1770=m +CONFIG_SENSORS_LIS3_I2C=m +CONFIG_SENSORS_TSL2550=m +CONFIG_SERIAL_8250_DW=m +# CONFIG_SERIAL_8250_FINTEK is not set +CONFIG_SERIAL_ALTERA_JTAGUART=m +CONFIG_SERIAL_ALTERA_UART=m +CONFIG_SERIAL_ARC=m +CONFIG_SERIAL_CORE=y +CONFIG_SERIAL_FSL_LINFLEXUART=m +CONFIG_SERIAL_FSL_LPUART=m +CONFIG_SERIAL_JSM=m +CONFIG_SERIAL_NONSTANDARD=y +CONFIG_SERIAL_RP2=m +CONFIG_SERIAL_SC16IS7XX=m +CONFIG_SERIAL_SCCNXP=y +CONFIG_SERIO=y +CONFIG_SFC=m +CONFIG_SFC_FALCON=m +CONFIG_SGI_PARTITION=y +CONFIG_SLIP=m +CONFIG_SMC91X=m +CONFIG_SND=y +CONFIG_SND_COMPRESS_OFFLOAD=y +CONFIG_SND_DMAENGINE_PCM=y +CONFIG_SND_HDA_PREALLOC_SIZE=64 +CONFIG_SND_IMX_SOC=y +CONFIG_SND_PCM=y +CONFIG_SND_SOC=y +CONFIG_SND_SOC_I2C_AND_SPI=y +CONFIG_SND_SOC_IMX_PCM_DMA=y +CONFIG_SND_SOC_IMX_SGTL5000=y +CONFIG_SND_TIMER=y +# CONFIG_SOC_BRCMSTB is not set +# CONFIG_SOC_IMX8M is not set +CONFIG_SOC_TI=y +CONFIG_SOLARIS_X86_PARTITION=y +CONFIG_SOUND=y +CONFIG_SPI=y +CONFIG_SPI_ROCKCHIP=m +CONFIG_SPMI=m +CONFIG_SRAM=y +CONFIG_SSB=m +CONFIG_STAGING=y +CONFIG_STANDALONE=y +CONFIG_SUN_PARTITION=y +CONFIG_SYSV68_PARTITION=y +CONFIG_SYSV_FS=m +CONFIG_TCG_TIS_I2C_ATMEL=m +CONFIG_TCG_TIS_I2C_INFINEON=m +CONFIG_TCG_TIS_I2C_NUVOTON=m +CONFIG_TCG_TIS_ST33ZP24_I2C=m +CONFIG_THERMAL=y +CONFIG_TIFM_CORE=m +CONFIG_TI_SOC_THERMAL=m +CONFIG_TOUCHSCREEN_ELAN=m +CONFIG_TPS6105X=m +CONFIG_TPS65010=m +CONFIG_TPS6507X=m +CONFIG_TRACE_SINK=m +# CONFIG_TRANSPARENT_HUGEPAGE_ALWAYS is not set +CONFIG_TRANSPARENT_HUGEPAGE_MADVISE=y +CONFIG_TTY_PRINTK=y +CONFIG_UACCE=m +CONFIG_UFS_FS=m +CONFIG_UIO_AEC=m +CONFIG_UIO_CIF=m +CONFIG_UIO_DMEM_GENIRQ=m +CONFIG_UIO_MF624=m +CONFIG_UIO_NETX=m +CONFIG_UIO_PCI_GENERIC=m +CONFIG_UIO_PDRV_GENIRQ=m +CONFIG_UIO_PRUSS=m +CONFIG_UIO_SERCOS3=m +CONFIG_ULTRIX_PARTITION=y +CONFIG_UNIXWARE_DISKLABEL=y +CONFIG_USB4=m +CONFIG_USB_DWC2_PCI=y +# CONFIG_USB_EHCI_HCD_PLATFORM is not set +CONFIG_USB_EMXX=y +CONFIG_USB_GADGET=y +CONFIG_USB_G_MULTI=m +# CONFIG_USB_HCD_BCMA is not set +# CONFIG_USB_HCD_SSB is not set +CONFIG_USB_MUSB_HDRC=y +CONFIG_USB_ROLE_SWITCH=y +CONFIG_USB_SUPPORT=y +CONFIG_VDPA=m +CONFIG_VFIO=m +CONFIG_VFIO_IOMMU_TYPE1=m +CONFIG_VFIO_PCI=m +CONFIG_VFIO_VIRQFD=m +CONFIG_VIRTIO_MMIO=y +CONFIG_VME_BUS=y +CONFIG_VMXNET3=m +# CONFIG_VOP_BUS is not set +CONFIG_VXFS_FS=m +CONFIG_VXGE=m +CONFIG_W1=m +CONFIG_WAN=y +CONFIG_WDTPCI=m +CONFIG_WIMAX=m +CONFIG_X25=m +# CONFIG_XEN is not set +CONFIG_XILINX_LL_TEMAC=m +CONFIG_XILINX_SDFEC=m +CONFIG_XILINX_WATCHDOG=m +CONFIG_XILLYBUS=m +CONFIG_XZ_DEC_ARM=y +CONFIG_XZ_DEC_ARMTHUMB=y +CONFIG_XZ_DEC_IA64=y +CONFIG_XZ_DEC_POWERPC=y +CONFIG_XZ_DEC_SPARC=y +CONFIG_XZ_DEC_TEST=m +CONFIG_XZ_DEC_X86=y +CONFIG_YELLOWFIN=m +CONFIG_ZIIRAVE_WATCHDOG=m +CONFIG_ZSTD_COMPRESS=y --- linux-azure-5.8-5.8.0.orig/debian.master/config/armhf/config.flavour.generic +++ linux-azure-5.8-5.8.0/debian.master/config/armhf/config.flavour.generic @@ -0,0 +1,22 @@ +# +# Config options for config.flavour.generic automatically generated by splitconfig.pl +# +CONFIG_ARCH_MXC=y +CONFIG_ARCH_OMAP3=y +CONFIG_ARCH_OMAP4=y +CONFIG_ARCH_TEGRA=y +CONFIG_ARM_ATAG_DTB_COMPAT=y +# CONFIG_ARM_HIGHBANK_CPUIDLE is not set +# CONFIG_ARM_LPAE is not set +CONFIG_FORCE_MAX_ZONEORDER=12 +CONFIG_MMC_CQHCI=y +CONFIG_PGTABLE_LEVELS=2 +CONFIG_PWM_TIECAP=m +CONFIG_PWM_TIEHRPWM=m +CONFIG_REGULATOR_TWL4030=y +CONFIG_RTC_DRV_PCF8523=y +CONFIG_SND_SOC_FSL_SSI=y +CONFIG_SND_SOC_IMX_AUDMUX=y +CONFIG_SND_SOC_SGTL5000=y +CONFIG_SOC_AM33XX=y +CONFIG_USB_OHCI_HCD_PLATFORM=m --- linux-azure-5.8-5.8.0.orig/debian.master/config/armhf/config.flavour.generic-lpae +++ linux-azure-5.8-5.8.0/debian.master/config/armhf/config.flavour.generic-lpae @@ -0,0 +1,22 @@ +# +# Config options for config.flavour.generic-lpae automatically generated by splitconfig.pl +# +# CONFIG_ARCH_MXC is not set +# CONFIG_ARCH_OMAP3 is not set +# CONFIG_ARCH_OMAP4 is not set +# CONFIG_ARCH_TEGRA is not set +# CONFIG_ARM_ATAG_DTB_COMPAT is not set +CONFIG_ARM_HIGHBANK_CPUIDLE=y +CONFIG_ARM_LPAE=y +CONFIG_FORCE_MAX_ZONEORDER=11 +CONFIG_MMC_CQHCI=m +CONFIG_PGTABLE_LEVELS=3 +# CONFIG_PWM_TIECAP is not set +# CONFIG_PWM_TIEHRPWM is not set +CONFIG_REGULATOR_TWL4030=m +CONFIG_RTC_DRV_PCF8523=m +CONFIG_SND_SOC_FSL_SSI=m +CONFIG_SND_SOC_IMX_AUDMUX=m +CONFIG_SND_SOC_SGTL5000=m +# CONFIG_SOC_AM33XX is not set +# CONFIG_USB_OHCI_HCD_PLATFORM is not set --- linux-azure-5.8-5.8.0.orig/debian.master/config/config.common.ports +++ linux-azure-5.8-5.8.0/debian.master/config/config.common.ports @@ -0,0 +1,3 @@ +# +# Common config options automatically generated by splitconfig.pl +# --- linux-azure-5.8-5.8.0.orig/debian.master/config/config.common.ubuntu +++ linux-azure-5.8-5.8.0/debian.master/config/config.common.ubuntu @@ -0,0 +1,11953 @@ +# +# Common config options automatically generated by splitconfig.pl +# +CONFIG_104_QUAD_8=m +CONFIG_60XX_WDT=m +CONFIG_64BIT=y +# CONFIG_6LOWPAN_DEBUGFS is not set +# CONFIG_6LOWPAN_GHC_EXT_HDR_DEST is not set +# CONFIG_6LOWPAN_GHC_EXT_HDR_FRAG is not set +# CONFIG_6LOWPAN_GHC_EXT_HDR_HOP is not set +# CONFIG_6LOWPAN_GHC_EXT_HDR_ROUTE is not set +# CONFIG_6LOWPAN_GHC_ICMPV6 is not set +# CONFIG_6LOWPAN_GHC_UDP is not set +CONFIG_6LOWPAN_NHC=m +CONFIG_6LOWPAN_NHC_DEST=m +CONFIG_6LOWPAN_NHC_FRAGMENT=m +CONFIG_6LOWPAN_NHC_HOP=m +CONFIG_6LOWPAN_NHC_IPV6=m +CONFIG_6LOWPAN_NHC_MOBILITY=m +CONFIG_6LOWPAN_NHC_ROUTING=m +CONFIG_6LOWPAN_NHC_UDP=m +CONFIG_6PACK=m +CONFIG_8139CP=m +CONFIG_8139TOO=m +CONFIG_8139TOO_8129=y +CONFIG_8139TOO_PIO=y +# CONFIG_8139TOO_TUNE_TWISTER is not set +# CONFIG_8139_OLD_RX_RESET is not set +CONFIG_842_COMPRESS=m +CONFIG_842_DECOMPRESS=m +CONFIG_88EU_AP_MODE=y +CONFIG_9P_FS=m +CONFIG_9P_FSCACHE=y +CONFIG_9P_FS_POSIX_ACL=y +CONFIG_9P_FS_SECURITY=y +CONFIG_AB3100_CORE=y +CONFIG_AB3100_OTP=m +CONFIG_ABP060MG=m +# CONFIG_ACCESSIBILITY is not set +CONFIG_ACENIC=m +# CONFIG_ACENIC_OMIT_TIGON_I is not set +CONFIG_ACERHDF=m +CONFIG_ACER_WIRELESS=m +CONFIG_ACER_WMI=m +# CONFIG_ACORN_PARTITION is not set +CONFIG_ACPI=y +CONFIG_ACPI_AC=y +CONFIG_ACPI_ADXL=y +CONFIG_ACPI_ALS=m +CONFIG_ACPI_APEI=y +CONFIG_ACPI_APEI_EINJ=m +# CONFIG_ACPI_APEI_ERST_DEBUG is not set +CONFIG_ACPI_APEI_GHES=y +CONFIG_ACPI_APEI_MEMORY_FAILURE=y +CONFIG_ACPI_APEI_PCIEAER=y +CONFIG_ACPI_APEI_SEA=y +CONFIG_ACPI_BATTERY=y +CONFIG_ACPI_BGRT=y +CONFIG_ACPI_BUTTON=y +CONFIG_ACPI_CCA_REQUIRED=y +CONFIG_ACPI_CMPC=m +CONFIG_ACPI_CONFIGFS=m +CONFIG_ACPI_CONTAINER=y +CONFIG_ACPI_CPPC_CPUFREQ=m +CONFIG_ACPI_CPPC_LIB=y +CONFIG_ACPI_CPU_FREQ_PSS=y +CONFIG_ACPI_CUSTOM_DSDT_FILE="" +# CONFIG_ACPI_CUSTOM_METHOD is not set +CONFIG_ACPI_DEBUGGER_USER=y +CONFIG_ACPI_DOCK=y +CONFIG_ACPI_EC_DEBUGFS=m +CONFIG_ACPI_EXTLOG=m +CONFIG_ACPI_FAN=y +CONFIG_ACPI_GENERIC_GSI=y +CONFIG_ACPI_GTDT=y +CONFIG_ACPI_HED=y +CONFIG_ACPI_HMAT=y +CONFIG_ACPI_HOTPLUG_CPU=y +CONFIG_ACPI_HOTPLUG_IOAPIC=y +CONFIG_ACPI_HOTPLUG_MEMORY=y +CONFIG_ACPI_I2C_OPREGION=y +CONFIG_ACPI_IORT=y +CONFIG_ACPI_IPMI=m +CONFIG_ACPI_LEGACY_TABLES_LOOKUP=y +CONFIG_ACPI_LPIT=y +CONFIG_ACPI_MCFG=y +CONFIG_ACPI_NFIT=m +CONFIG_ACPI_NUMA=y +CONFIG_ACPI_PCI_SLOT=y +CONFIG_ACPI_PPTT=y +CONFIG_ACPI_PROCESSOR=y +CONFIG_ACPI_PROCESSOR_AGGREGATOR=m +CONFIG_ACPI_PROCESSOR_CSTATE=y +CONFIG_ACPI_PROCESSOR_IDLE=y +# CONFIG_ACPI_PROCFS_POWER is not set +CONFIG_ACPI_REV_OVERRIDE_POSSIBLE=y +CONFIG_ACPI_SBS=m +CONFIG_ACPI_SLEEP=y +CONFIG_ACPI_SPCR_TABLE=y +CONFIG_ACPI_SYSTEM_POWER_STATES_SUPPORT=y +CONFIG_ACPI_TABLE_UPGRADE=y +CONFIG_ACPI_TAD=m +CONFIG_ACPI_THERMAL=y +CONFIG_ACPI_THERMAL_REL=m +CONFIG_ACPI_TOSHIBA=m +CONFIG_ACPI_VIDEO=m +CONFIG_ACPI_WATCHDOG=y +CONFIG_ACPI_WMI=m +CONFIG_ACQUIRE_WDT=m +CONFIG_ACRN_GUEST=y +CONFIG_AD2S1200=m +CONFIG_AD2S1210=m +CONFIG_AD2S90=m +CONFIG_AD5064=m +CONFIG_AD525X_DPOT_I2C=m +CONFIG_AD525X_DPOT_SPI=m +CONFIG_AD5272=m +CONFIG_AD5360=m +CONFIG_AD5380=m +CONFIG_AD5421=m +CONFIG_AD5446=m +CONFIG_AD5449=m +CONFIG_AD5504=m +CONFIG_AD5592R=m +CONFIG_AD5592R_BASE=m +CONFIG_AD5593R=m +CONFIG_AD5624R_SPI=m +CONFIG_AD5686=m +CONFIG_AD5686_SPI=m +CONFIG_AD5696_I2C=m +CONFIG_AD5755=m +CONFIG_AD5758=m +CONFIG_AD5761=m +CONFIG_AD5764=m +CONFIG_AD5770R=m +CONFIG_AD5791=m +CONFIG_AD5933=m +CONFIG_AD7091R5=m +CONFIG_AD7124=m +CONFIG_AD7150=m +CONFIG_AD7192=m +CONFIG_AD7266=m +CONFIG_AD7280=m +CONFIG_AD7291=m +CONFIG_AD7292=m +CONFIG_AD7298=m +CONFIG_AD7303=m +CONFIG_AD7476=m +CONFIG_AD7606=m +CONFIG_AD7606_IFACE_PARALLEL=m +CONFIG_AD7606_IFACE_SPI=m +CONFIG_AD7746=m +CONFIG_AD7766=m +CONFIG_AD7768_1=m +CONFIG_AD7780=m +CONFIG_AD7791=m +CONFIG_AD7793=m +CONFIG_AD7816=m +CONFIG_AD7887=m +CONFIG_AD7923=m +CONFIG_AD7949=m +CONFIG_AD799X=m +CONFIG_AD8366=m +CONFIG_AD8801=m +CONFIG_AD9467=m +CONFIG_AD9523=m +CONFIG_AD9832=m +CONFIG_AD9834=m +CONFIG_ADAPTEC_STARFIRE=m +CONFIG_ADE7854=m +CONFIG_ADE7854_I2C=m +CONFIG_ADE7854_SPI=m +CONFIG_ADF4350=m +CONFIG_ADF4371=m +# CONFIG_ADFS_FS_RW is not set +CONFIG_ADIN_PHY=m +CONFIG_ADIS16080=m +CONFIG_ADIS16130=m +CONFIG_ADIS16136=m +CONFIG_ADIS16201=m +CONFIG_ADIS16203=m +CONFIG_ADIS16209=m +CONFIG_ADIS16240=m +CONFIG_ADIS16260=m +CONFIG_ADIS16400=m +CONFIG_ADIS16460=m +CONFIG_ADIS16475=m +CONFIG_ADIS16480=m +CONFIG_ADI_AXI_ADC=m +CONFIG_ADJD_S311=m +CONFIG_ADM8211=m +CONFIG_ADT7316=m +CONFIG_ADT7316_I2C=m +CONFIG_ADT7316_SPI=m +CONFIG_ADUX1020=m +CONFIG_ADVANTECH_WDT=m +CONFIG_ADVISE_SYSCALLS=y +CONFIG_ADXL372=m +CONFIG_ADXL372_I2C=m +CONFIG_ADXL372_SPI=m +CONFIG_ADXRS450=m +CONFIG_AD_SIGMA_DELTA=m +CONFIG_AEABI=y +CONFIG_AFE4403=m +CONFIG_AFE4404=m +CONFIG_AFIUCV=m +# CONFIG_AFS_DEBUG is not set +# CONFIG_AFS_DEBUG_CURSOR is not set +CONFIG_AFS_FS=m +CONFIG_AFS_FSCACHE=y +CONFIG_AF_KCM=m +CONFIG_AF_RXRPC=m +# CONFIG_AF_RXRPC_DEBUG is not set +# CONFIG_AF_RXRPC_INJECT_LOSS is not set +CONFIG_AF_RXRPC_IPV6=y +CONFIG_AGP=y +CONFIG_AGP_AMD64=y +CONFIG_AGP_INTEL=y +CONFIG_AGP_SIS=m +CONFIG_AGP_VIA=y +CONFIG_AHCI_BRCM=m +CONFIG_AHCI_CEVA=m +CONFIG_AHCI_DM816=m +CONFIG_AHCI_IMX=y +CONFIG_AHCI_MTK=m +CONFIG_AHCI_MVEBU=m +CONFIG_AHCI_QORIQ=m +# CONFIG_AHCI_SUNXI is not set +CONFIG_AHCI_TEGRA=m +CONFIG_AHCI_XGENE=m +CONFIG_AIC79XX_CMDS_PER_DEVICE=32 +# CONFIG_AIC79XX_DEBUG_ENABLE is not set +CONFIG_AIC79XX_DEBUG_MASK=0 +CONFIG_AIC79XX_REG_PRETTY_PRINT=y +CONFIG_AIC79XX_RESET_DELAY_MS=5000 +CONFIG_AIC7XXX_CMDS_PER_DEVICE=8 +# CONFIG_AIC7XXX_DEBUG_ENABLE is not set +CONFIG_AIC7XXX_DEBUG_MASK=0 +CONFIG_AIC7XXX_REG_PRETTY_PRINT=y +CONFIG_AIC7XXX_RESET_DELAY_MS=5000 +# CONFIG_AIC94XX_DEBUG is not set +CONFIG_AIO=y +CONFIG_AIRO=m +CONFIG_AIRO_CS=m +CONFIG_AK09911=m +CONFIG_AK8974=m +CONFIG_AK8975=m +CONFIG_AL3010=m +CONFIG_AL3320A=m +CONFIG_ALIENWARE_WMI=m +CONFIG_ALIGNMENT_TRAP=y +CONFIG_ALIM1535_WDT=m +CONFIG_ALLOW_DEV_COREDUMP=y +CONFIG_ALPINE_MSI=y +CONFIG_ALTERA_FREEZE_BRIDGE=m +CONFIG_ALTERA_MBOX=m +CONFIG_ALTERA_MSGDMA=m +CONFIG_ALTERA_PR_IP_CORE=m +CONFIG_ALTERA_PR_IP_CORE_PLAT=m +CONFIG_ALTIVEC=y +CONFIG_ALX=m +CONFIG_AL_FIC=y +CONFIG_AM2315=m +CONFIG_AM335X_CONTROL_USB=m +CONFIG_AM335X_PHY_USB=m +CONFIG_AMBA_PL08X=y +CONFIG_AMD8111_ETH=m +CONFIG_AMDTEE=m +CONFIG_AMD_IOMMU=y +CONFIG_AMD_IOMMU_V2=m +CONFIG_AMD_MEM_ENCRYPT=y +# CONFIG_AMD_MEM_ENCRYPT_ACTIVE_BY_DEFAULT is not set +CONFIG_AMD_NB=y +CONFIG_AMD_NUMA=y +CONFIG_AMD_PHY=m +CONFIG_AMD_XGBE=m +CONFIG_AMD_XGBE_DCB=y +CONFIG_AMD_XGBE_HAVE_ECC=y +CONFIG_AMILO_RFKILL=m +CONFIG_AMLOGIC_THERMAL=m +CONFIG_ANDROID_BINDERFS=m +CONFIG_ANDROID_BINDER_DEVICES="" +CONFIG_ANDROID_BINDER_IPC=m +# CONFIG_ANDROID_BINDER_IPC_SELFTEST is not set +CONFIG_APDS9300=m +CONFIG_APDS9960=m +# CONFIG_APM_EMULATION is not set +CONFIG_APPLDATA_BASE=y +CONFIG_APPLDATA_MEM=m +CONFIG_APPLDATA_NET_SUM=m +CONFIG_APPLDATA_OS=m +CONFIG_APPLE_GMUX=m +CONFIG_APPLE_MFI_FASTCHARGE=m +CONFIG_APPLE_PROPERTIES=y +CONFIG_APQ_GCC_8084=m +CONFIG_APQ_MMCC_8084=m +CONFIG_AQTION=m +CONFIG_AQUANTIA_PHY=m +CONFIG_AR5523=m +CONFIG_ARCH_32BIT_OFF_T=y +CONFIG_ARCH_ACTIONS=y +CONFIG_ARCH_AGILEX=y +CONFIG_ARCH_ARTPEC=y +CONFIG_ARCH_ASPEED=y +# CONFIG_ARCH_AT91 is not set +CONFIG_ARCH_AXXIA=y +# CONFIG_ARCH_BCM is not set +CONFIG_ARCH_BCM2835=y +CONFIG_ARCH_BCM_IPROC=y +CONFIG_ARCH_BERLIN=y +CONFIG_ARCH_BINFMT_ELF_STATE=y +CONFIG_ARCH_BITMAIN=y +CONFIG_ARCH_BRCMSTB=y +CONFIG_ARCH_CLOCKSOURCE_INIT=y +CONFIG_ARCH_CPUIDLE_HALTPOLL=y +CONFIG_ARCH_CPU_PROBE_RELEASE=y +# CONFIG_ARCH_DIGICOLOR is not set +CONFIG_ARCH_DMA_ADDR_T_64BIT=y +# CONFIG_ARCH_DOVE is not set +# CONFIG_ARCH_EBSA110 is not set +CONFIG_ARCH_EMEV2=y +CONFIG_ARCH_ENABLE_HUGEPAGE_MIGRATION=y +CONFIG_ARCH_ENABLE_MEMORY_HOTPLUG=y +CONFIG_ARCH_ENABLE_MEMORY_HOTREMOVE=y +CONFIG_ARCH_ENABLE_SPLIT_PMD_PTLOCK=y +CONFIG_ARCH_ENABLE_THP_MIGRATION=y +# CONFIG_ARCH_EP93XX is not set +# CONFIG_ARCH_EXYNOS3 is not set +# CONFIG_ARCH_EXYNOS4 is not set +CONFIG_ARCH_EXYNOS5=y +CONFIG_ARCH_FLATMEM_ENABLE=y +# CONFIG_ARCH_FOOTBRIDGE is not set +CONFIG_ARCH_HAS_ACPI_TABLE_UPGRADE=y +CONFIG_ARCH_HAS_ADD_PAGES=y +CONFIG_ARCH_HAS_BANDGAP=y +CONFIG_ARCH_HAS_BINFMT_FLAT=y +CONFIG_ARCH_HAS_CACHE_LINE_SIZE=y +CONFIG_ARCH_HAS_COPY_MC=y +CONFIG_ARCH_HAS_CPU_RELAX=y +CONFIG_ARCH_HAS_DEBUG_VIRTUAL=y +CONFIG_ARCH_HAS_DEBUG_VM_PGTABLE=y +CONFIG_ARCH_HAS_DEBUG_WX=y +CONFIG_ARCH_HAS_DEVMEM_IS_ALLOWED=y +CONFIG_ARCH_HAS_DMA_PREP_COHERENT=y +CONFIG_ARCH_HAS_EARLY_DEBUG=y +CONFIG_ARCH_HAS_ELF_RANDOMIZE=y +CONFIG_ARCH_HAS_FAST_MULTIPLIER=y +CONFIG_ARCH_HAS_FILTER_PGPROT=y +CONFIG_ARCH_HAS_FORCE_DMA_UNENCRYPTED=y +CONFIG_ARCH_HAS_FORTIFY_SOURCE=y +CONFIG_ARCH_HAS_GCOV_PROFILE_ALL=y +CONFIG_ARCH_HAS_GIGANTIC_PAGE=y +CONFIG_ARCH_HAS_HOLES_MEMORYMODEL=y +CONFIG_ARCH_HAS_HUGEPD=y +CONFIG_ARCH_HAS_KCOV=y +CONFIG_ARCH_HAS_KEEPINITRD=y +CONFIG_ARCH_HAS_KEXEC_PURGATORY=y +CONFIG_ARCH_HAS_MEMBARRIER_CALLBACKS=y +CONFIG_ARCH_HAS_MEMBARRIER_SYNC_CORE=y +CONFIG_ARCH_HAS_MEMREMAP_COMPAT_ALIGN=y +CONFIG_ARCH_HAS_MEM_ENCRYPT=y +CONFIG_ARCH_HAS_MMIOWB=y +CONFIG_ARCH_HAS_NON_OVERLAPPING_ADDRESS_SPACE=y +CONFIG_ARCH_HAS_PHYS_TO_DMA=y +CONFIG_ARCH_HAS_PKEYS=y +CONFIG_ARCH_HAS_PMEM_API=y +CONFIG_ARCH_HAS_PTE_DEVMAP=y +CONFIG_ARCH_HAS_PTE_SPECIAL=y +CONFIG_ARCH_HAS_RELR=y +CONFIG_ARCH_HAS_RESET_CONTROLLER=y +CONFIG_ARCH_HAS_SCALED_CPUTIME=y +CONFIG_ARCH_HAS_SETUP_DMA_OPS=y +CONFIG_ARCH_HAS_SET_DIRECT_MAP=y +CONFIG_ARCH_HAS_SET_MEMORY=y +CONFIG_ARCH_HAS_STRICT_KERNEL_RWX=y +CONFIG_ARCH_HAS_STRICT_MODULE_RWX=y +CONFIG_ARCH_HAS_SYNC_CORE_BEFORE_USERMODE=y +CONFIG_ARCH_HAS_SYNC_DMA_FOR_CPU=y +CONFIG_ARCH_HAS_SYNC_DMA_FOR_DEVICE=y +CONFIG_ARCH_HAS_SYSCALL_WRAPPER=y +CONFIG_ARCH_HAS_TEARDOWN_DMA_OPS=y +CONFIG_ARCH_HAS_TICK_BROADCAST=y +CONFIG_ARCH_HAS_UACCESS_FLUSHCACHE=y +CONFIG_ARCH_HAS_UBSAN_SANITIZE_ALL=y +CONFIG_ARCH_HAVE_CUSTOM_GPIO_H=y +CONFIG_ARCH_HAVE_ELF_PROT=y +CONFIG_ARCH_HAVE_NMI_SAFE_CMPXCHG=y +CONFIG_ARCH_HI3xxx=y +CONFIG_ARCH_HIBERNATION_HEADER=y +CONFIG_ARCH_HIBERNATION_POSSIBLE=y +CONFIG_ARCH_HIGHBANK=y +# CONFIG_ARCH_HIP01 is not set +CONFIG_ARCH_HIP04=y +CONFIG_ARCH_HISI=y +CONFIG_ARCH_HIX5HD2=y +CONFIG_ARCH_INLINE_READ_LOCK=y +CONFIG_ARCH_INLINE_READ_LOCK_BH=y +CONFIG_ARCH_INLINE_READ_LOCK_IRQ=y +CONFIG_ARCH_INLINE_READ_LOCK_IRQSAVE=y +CONFIG_ARCH_INLINE_READ_TRYLOCK=y +CONFIG_ARCH_INLINE_READ_UNLOCK=y +CONFIG_ARCH_INLINE_READ_UNLOCK_BH=y +CONFIG_ARCH_INLINE_READ_UNLOCK_IRQ=y +CONFIG_ARCH_INLINE_READ_UNLOCK_IRQRESTORE=y +CONFIG_ARCH_INLINE_SPIN_LOCK=y +CONFIG_ARCH_INLINE_SPIN_LOCK_BH=y +CONFIG_ARCH_INLINE_SPIN_LOCK_IRQ=y +CONFIG_ARCH_INLINE_SPIN_LOCK_IRQSAVE=y +CONFIG_ARCH_INLINE_SPIN_TRYLOCK=y +CONFIG_ARCH_INLINE_SPIN_TRYLOCK_BH=y +CONFIG_ARCH_INLINE_SPIN_UNLOCK=y +CONFIG_ARCH_INLINE_SPIN_UNLOCK_BH=y +CONFIG_ARCH_INLINE_SPIN_UNLOCK_IRQ=y +CONFIG_ARCH_INLINE_SPIN_UNLOCK_IRQRESTORE=y +CONFIG_ARCH_INLINE_WRITE_LOCK=y +CONFIG_ARCH_INLINE_WRITE_LOCK_BH=y +CONFIG_ARCH_INLINE_WRITE_LOCK_IRQ=y +CONFIG_ARCH_INLINE_WRITE_LOCK_IRQSAVE=y +CONFIG_ARCH_INLINE_WRITE_TRYLOCK=y +CONFIG_ARCH_INLINE_WRITE_UNLOCK=y +CONFIG_ARCH_INLINE_WRITE_UNLOCK_BH=y +CONFIG_ARCH_INLINE_WRITE_UNLOCK_IRQ=y +CONFIG_ARCH_INLINE_WRITE_UNLOCK_IRQRESTORE=y +# CONFIG_ARCH_IOP32X is not set +# CONFIG_ARCH_IPQ40XX is not set +# CONFIG_ARCH_IXP4XX is not set +CONFIG_ARCH_K3=y +CONFIG_ARCH_K3_AM6_SOC=y +CONFIG_ARCH_K3_J721E_SOC=y +CONFIG_ARCH_KEEP_MEMBLOCK=y +# CONFIG_ARCH_KEYSTONE is not set +CONFIG_ARCH_LAYERSCAPE=y +CONFIG_ARCH_LG1K=y +CONFIG_ARCH_MAY_HAVE_PC_FDC=y +CONFIG_ARCH_MDM9615=y +CONFIG_ARCH_MEDIATEK=y +CONFIG_ARCH_MEMORY_PROBE=y +CONFIG_ARCH_MESON=y +CONFIG_ARCH_MIGHT_HAVE_ACPI_PDC=y +CONFIG_ARCH_MIGHT_HAVE_PC_PARPORT=y +CONFIG_ARCH_MIGHT_HAVE_PC_SERIO=y +CONFIG_ARCH_MILBEAUT=y +CONFIG_ARCH_MILBEAUT_M10V=y +# CONFIG_ARCH_MMP is not set +CONFIG_ARCH_MSM8960=y +CONFIG_ARCH_MSM8974=y +CONFIG_ARCH_MSM8X60=y +CONFIG_ARCH_MULTIPLATFORM=y +# CONFIG_ARCH_MULTI_V6 is not set +CONFIG_ARCH_MULTI_V6_V7=y +CONFIG_ARCH_MULTI_V7=y +CONFIG_ARCH_MVEBU=y +CONFIG_ARCH_NEEDS_CPU_IDLE_COUPLED=y +CONFIG_ARCH_NPCM=y +CONFIG_ARCH_NPCM7XX=y +CONFIG_ARCH_NR_GPIO=1024 +CONFIG_ARCH_OMAP=y +# CONFIG_ARCH_OMAP1 is not set +CONFIG_ARCH_OMAP2PLUS=y +CONFIG_ARCH_OMAP2PLUS_TYPICAL=y +CONFIG_ARCH_OPTIONAL_KERNEL_RWX=y +CONFIG_ARCH_OPTIONAL_KERNEL_RWX_DEFAULT=y +CONFIG_ARCH_PROC_KCORE_TEXT=y +# CONFIG_ARCH_PXA is not set +CONFIG_ARCH_QCOM=y +CONFIG_ARCH_R7S72100=y +CONFIG_ARCH_R7S9210=y +# CONFIG_ARCH_R8A73A4 is not set +CONFIG_ARCH_R8A7740=y +CONFIG_ARCH_R8A7742=y +CONFIG_ARCH_R8A7743=y +CONFIG_ARCH_R8A7744=y +CONFIG_ARCH_R8A7745=y +CONFIG_ARCH_R8A77470=y +CONFIG_ARCH_R8A774A1=y +CONFIG_ARCH_R8A774B1=y +CONFIG_ARCH_R8A774C0=y +CONFIG_ARCH_R8A7778=y +CONFIG_ARCH_R8A7779=y +CONFIG_ARCH_R8A7790=y +CONFIG_ARCH_R8A7791=y +CONFIG_ARCH_R8A7792=y +CONFIG_ARCH_R8A7793=y +CONFIG_ARCH_R8A7794=y +CONFIG_ARCH_R8A77950=y +CONFIG_ARCH_R8A77951=y +CONFIG_ARCH_R8A77960=y +CONFIG_ARCH_R8A77961=y +CONFIG_ARCH_R8A77965=y +CONFIG_ARCH_R8A77970=y +CONFIG_ARCH_R8A77980=y +CONFIG_ARCH_R8A77990=y +CONFIG_ARCH_R8A77995=y +CONFIG_ARCH_R9A06G032=y +CONFIG_ARCH_RANDOM=y +CONFIG_ARCH_RCAR_GEN1=y +CONFIG_ARCH_RCAR_GEN2=y +CONFIG_ARCH_RCAR_GEN3=y +CONFIG_ARCH_RDA=y +CONFIG_ARCH_REALTEK=y +# CONFIG_ARCH_REALVIEW is not set +CONFIG_ARCH_RENESAS=y +CONFIG_ARCH_RMOBILE=y +CONFIG_ARCH_ROCKCHIP=y +# CONFIG_ARCH_RPC is not set +CONFIG_ARCH_RZN1=y +CONFIG_ARCH_S32=y +# CONFIG_ARCH_S3C24XX is not set +# CONFIG_ARCH_S5PV210 is not set +# CONFIG_ARCH_SA1100 is not set +CONFIG_ARCH_SEATTLE=y +CONFIG_ARCH_SELECT_MEMORY_MODEL=y +CONFIG_ARCH_SH73A0=y +# CONFIG_ARCH_SIRF is not set +# CONFIG_ARCH_SOCFPGA is not set +CONFIG_ARCH_SPARSEMEM_DEFAULT=y +CONFIG_ARCH_SPARSEMEM_ENABLE=y +CONFIG_ARCH_SPRD=y +CONFIG_ARCH_STACKWALK=y +# CONFIG_ARCH_STI is not set +# CONFIG_ARCH_STM32 is not set +CONFIG_ARCH_STRATIX10=y +CONFIG_ARCH_SUPPORTS_ACPI=y +CONFIG_ARCH_SUPPORTS_ATOMIC_RMW=y +CONFIG_ARCH_SUPPORTS_BIG_ENDIAN=y +CONFIG_ARCH_SUPPORTS_DEBUG_PAGEALLOC=y +CONFIG_ARCH_SUPPORTS_INT128=y +CONFIG_ARCH_SUPPORTS_MEMORY_FAILURE=y +CONFIG_ARCH_SUPPORTS_NUMA_BALANCING=y +CONFIG_ARCH_SUPPORTS_UPROBES=y +CONFIG_ARCH_SUSPEND_NONZERO_CPU=y +CONFIG_ARCH_SUSPEND_POSSIBLE=y +CONFIG_ARCH_SYNQUACER=y +# CONFIG_ARCH_TANGO is not set +CONFIG_ARCH_TEGRA_114_SOC=y +CONFIG_ARCH_TEGRA_124_SOC=y +CONFIG_ARCH_TEGRA_2x_SOC=y +CONFIG_ARCH_TEGRA_3x_SOC=y +CONFIG_ARCH_THUNDER=y +CONFIG_ARCH_THUNDER2=y +# CONFIG_ARCH_U8500 is not set +CONFIG_ARCH_USES_HIGH_VMA_FLAGS=y +CONFIG_ARCH_USES_PG_UNCACHED=y +CONFIG_ARCH_USE_BUILTIN_BSWAP=y +CONFIG_ARCH_USE_CMPXCHG_LOCKREF=y +CONFIG_ARCH_USE_GNU_PROPERTY=y +CONFIG_ARCH_USE_MEMREMAP_PROT=y +CONFIG_ARCH_USE_QUEUED_RWLOCKS=y +CONFIG_ARCH_USE_QUEUED_SPINLOCKS=y +CONFIG_ARCH_USE_SYM_ANNOTATIONS=y +CONFIG_ARCH_VEXPRESS=y +CONFIG_ARCH_VEXPRESS_CORTEX_A5_A9_ERRATA=y +CONFIG_ARCH_VEXPRESS_DCSCB=y +CONFIG_ARCH_VEXPRESS_SPC=y +CONFIG_ARCH_VEXPRESS_TC2_PM=y +CONFIG_ARCH_VIRT=y +CONFIG_ARCH_WANTS_DYNAMIC_TASK_STRUCT=y +CONFIG_ARCH_WANTS_THP_SWAP=y +CONFIG_ARCH_WANT_BATCHED_UNMAP_TLB_FLUSH=y +CONFIG_ARCH_WANT_COMPAT_IPC_PARSE_VERSION=y +CONFIG_ARCH_WANT_DEFAULT_BPF_JIT=y +CONFIG_ARCH_WANT_DEFAULT_TOPDOWN_MMAP_LAYOUT=y +CONFIG_ARCH_WANT_FRAME_POINTERS=y +CONFIG_ARCH_WANT_GENERAL_HUGETLB=y +CONFIG_ARCH_WANT_HUGE_PMD_SHARE=y +CONFIG_ARCH_WANT_IPC_PARSE_VERSION=y +CONFIG_ARCH_WANT_IRQS_OFF_ACTIVATE_MM=y +CONFIG_ARCH_WANT_OLD_COMPAT_IPC=y +CONFIG_ARCH_WEAK_RELEASE_ACQUIRE=y +# CONFIG_ARCH_WM8850 is not set +CONFIG_ARCH_XGENE=y +# CONFIG_ARCH_ZX is not set +# CONFIG_ARCH_ZYNQ is not set +CONFIG_ARCH_ZYNQMP=y +CONFIG_ARCNET_1051=m +CONFIG_ARCNET_1201=m +CONFIG_ARCNET_CAP=m +CONFIG_ARCNET_COM20020=m +CONFIG_ARCNET_COM20020_CS=m +CONFIG_ARCNET_COM20020_PCI=m +CONFIG_ARCNET_COM90xx=m +CONFIG_ARCNET_COM90xxIO=m +CONFIG_ARCNET_RAW=m +CONFIG_ARCNET_RIM_I=m +CONFIG_ARCX_ANYBUS_CONTROLLER=m +CONFIG_ARC_EMAC_CORE=m +CONFIG_ARM=y +CONFIG_ARM64=y +# CONFIG_ARM64_16K_PAGES is not set +CONFIG_ARM64_ACPI_PARKING_PROTOCOL=y +CONFIG_ARM64_AMU_EXTN=y +CONFIG_ARM64_BTI=y +CONFIG_ARM64_BTI_KERNEL=y +CONFIG_ARM64_CNP=y +CONFIG_ARM64_CRYPTO=y +# CONFIG_ARM64_DEBUG_PRIORITY_MASKING is not set +CONFIG_ARM64_E0PD=y +CONFIG_ARM64_ERRATUM_1024718=y +CONFIG_ARM64_ERRATUM_1165522=y +CONFIG_ARM64_ERRATUM_1286807=y +CONFIG_ARM64_ERRATUM_1319367=y +CONFIG_ARM64_ERRATUM_1418040=y +CONFIG_ARM64_ERRATUM_1463225=y +CONFIG_ARM64_ERRATUM_1530923=y +CONFIG_ARM64_ERRATUM_1542419=y +CONFIG_ARM64_ERRATUM_819472=y +CONFIG_ARM64_ERRATUM_824069=y +CONFIG_ARM64_ERRATUM_826319=y +CONFIG_ARM64_ERRATUM_827319=y +CONFIG_ARM64_ERRATUM_832075=y +CONFIG_ARM64_ERRATUM_834220=y +CONFIG_ARM64_ERRATUM_843419=y +CONFIG_ARM64_ERRATUM_845719=y +CONFIG_ARM64_ERRATUM_858921=y +CONFIG_ARM64_HW_AFDBM=y +CONFIG_ARM64_LSE_ATOMICS=y +CONFIG_ARM64_MODULE_PLTS=y +CONFIG_ARM64_PAN=y +CONFIG_ARM64_PA_BITS=48 +CONFIG_ARM64_PA_BITS_48=y +# CONFIG_ARM64_PA_BITS_52 is not set +CONFIG_ARM64_PMEM=y +CONFIG_ARM64_PSEUDO_NMI=y +CONFIG_ARM64_PTR_AUTH=y +CONFIG_ARM64_RAS_EXTN=y +# CONFIG_ARM64_RELOC_TEST is not set +CONFIG_ARM64_SSBD=y +CONFIG_ARM64_SVE=y +CONFIG_ARM64_SW_TTBR0_PAN=y +CONFIG_ARM64_TAGGED_ADDR_ABI=y +CONFIG_ARM64_UAO=y +CONFIG_ARM64_USE_LSE_ATOMICS=y +CONFIG_ARM64_VA_BITS=48 +# CONFIG_ARM64_VA_BITS_39 is not set +# CONFIG_ARM64_VA_BITS_42 is not set +CONFIG_ARM64_VA_BITS_48=y +# CONFIG_ARM64_VA_BITS_52 is not set +CONFIG_ARM64_VHE=y +CONFIG_ARM64_WORKAROUND_CLEAN_CACHE=y +CONFIG_ARM64_WORKAROUND_REPEAT_TLBI=y +CONFIG_ARM64_WORKAROUND_SPECULATIVE_AT=y +CONFIG_ARMADA375_USBCLUSTER_PHY=y +CONFIG_ARMADA_370_CLK=y +CONFIG_ARMADA_370_XP_IRQ=y +CONFIG_ARMADA_370_XP_TIMER=y +CONFIG_ARMADA_375_CLK=y +CONFIG_ARMADA_37XX_CLK=y +CONFIG_ARMADA_37XX_RWTM_MBOX=m +CONFIG_ARMADA_37XX_WATCHDOG=m +CONFIG_ARMADA_38X_CLK=y +CONFIG_ARMADA_39X_CLK=y +CONFIG_ARMADA_AP806_SYSCON=y +CONFIG_ARMADA_AP_CPU_CLK=y +CONFIG_ARMADA_AP_CP_HELPER=y +CONFIG_ARMADA_CP110_SYSCON=y +CONFIG_ARMADA_THERMAL=y +CONFIG_ARMADA_XP_CLK=y +CONFIG_ARMV8_DEPRECATED=y +CONFIG_ARM_ALLWINNER_SUN50I_CPUFREQ_NVMEM=m +CONFIG_ARM_AMBA=y +CONFIG_ARM_APPENDED_DTB=y +CONFIG_ARM_ARCH_TIMER=y +CONFIG_ARM_ARCH_TIMER_EVTSTREAM=y +CONFIG_ARM_ARCH_TIMER_OOL_WORKAROUND=y +CONFIG_ARM_ARMADA_37XX_CPUFREQ=m +CONFIG_ARM_ARMADA_8K_CPUFREQ=m +CONFIG_ARM_ATAG_DTB_COMPAT_CMDLINE_EXTEND=y +# CONFIG_ARM_ATAG_DTB_COMPAT_CMDLINE_FROM_BOOTLOADER is not set +CONFIG_ARM_BIG_LITTLE_CPUIDLE=y +CONFIG_ARM_BRCMSTB_AVS_CPUFREQ=m +CONFIG_ARM_CCI=y +CONFIG_ARM_CCI400_COMMON=y +CONFIG_ARM_CCI400_PMU=y +CONFIG_ARM_CCI400_PORT_CTRL=y +CONFIG_ARM_CCI5xx_PMU=y +CONFIG_ARM_CCI_PMU=y +CONFIG_ARM_CCN=y +CONFIG_ARM_CHARLCD=y +CONFIG_ARM_CPUIDLE=y +CONFIG_ARM_CPU_SUSPEND=y +CONFIG_ARM_CPU_TOPOLOGY=y +CONFIG_ARM_CRYPTO=y +CONFIG_ARM_DMA_IOMMU_ALIGNMENT=8 +CONFIG_ARM_DMA_MEM_BUFFERABLE=y +CONFIG_ARM_DMA_USE_IOMMU=y +CONFIG_ARM_DSU_PMU=m +CONFIG_ARM_ERRATA_430973=y +CONFIG_ARM_ERRATA_643719=y +CONFIG_ARM_ERRATA_720789=y +CONFIG_ARM_ERRATA_754322=y +CONFIG_ARM_ERRATA_754327=y +CONFIG_ARM_ERRATA_764369=y +CONFIG_ARM_ERRATA_773022=y +CONFIG_ARM_ERRATA_775420=y +CONFIG_ARM_ERRATA_798181=y +CONFIG_ARM_ERRATA_814220=y +CONFIG_ARM_ERRATA_818325_852422=y +CONFIG_ARM_ERRATA_821420=y +CONFIG_ARM_ERRATA_825619=y +CONFIG_ARM_ERRATA_852421=y +CONFIG_ARM_ERRATA_852423=y +CONFIG_ARM_ERRATA_857271=y +CONFIG_ARM_ERRATA_857272=y +CONFIG_ARM_EXYNOS_BUS_DEVFREQ=y +CONFIG_ARM_EXYNOS_CPUIDLE=y +CONFIG_ARM_GIC=y +CONFIG_ARM_GIC_MAX_NR=1 +CONFIG_ARM_GIC_V2M=y +CONFIG_ARM_GIC_V3=y +CONFIG_ARM_GIC_V3_ITS=y +CONFIG_ARM_GIC_V3_ITS_FSL_MC=y +CONFIG_ARM_GIC_V3_ITS_PCI=y +CONFIG_ARM_GLOBAL_TIMER=y +CONFIG_ARM_HAS_SG_CHAIN=y +CONFIG_ARM_HEAVY_MB=y +CONFIG_ARM_HIGHBANK_CPUFREQ=m +CONFIG_ARM_IMX6Q_CPUFREQ=m +CONFIG_ARM_IMX8M_DDRC_DEVFREQ=m +CONFIG_ARM_IMX_BUS_DEVFREQ=m +CONFIG_ARM_IMX_CPUFREQ_DT=m +CONFIG_ARM_KPROBES_TEST=m +CONFIG_ARM_L1_CACHE_SHIFT=7 +CONFIG_ARM_L1_CACHE_SHIFT_6=y +CONFIG_ARM_L1_CACHE_SHIFT_7=y +CONFIG_ARM_MEDIATEK_CPUFREQ=m +CONFIG_ARM_MHU=m +CONFIG_ARM_MODULE_PLTS=y +CONFIG_ARM_MVEBU_V7_CPUIDLE=y +CONFIG_ARM_OMAP2PLUS_CPUFREQ=y +CONFIG_ARM_PATCH_IDIV=y +CONFIG_ARM_PATCH_PHYS_VIRT=y +CONFIG_ARM_PL172_MPMC=m +CONFIG_ARM_PMU=y +CONFIG_ARM_PMU_ACPI=y +CONFIG_ARM_PSCI=y +# CONFIG_ARM_PSCI_CHECKER is not set +CONFIG_ARM_PSCI_CPUIDLE=y +CONFIG_ARM_PSCI_FW=y +CONFIG_ARM_PTDUMP_CORE=y +# CONFIG_ARM_PTDUMP_DEBUGFS is not set +CONFIG_ARM_QCOM_CPUFREQ_HW=m +CONFIG_ARM_QCOM_CPUFREQ_NVMEM=m +CONFIG_ARM_QCOM_SPM_CPUIDLE=y +CONFIG_ARM_RASPBERRYPI_CPUFREQ=m +CONFIG_ARM_RK3399_DMC_DEVFREQ=m +CONFIG_ARM_SBSA_WATCHDOG=m +CONFIG_ARM_SCMI_CPUFREQ=m +CONFIG_ARM_SCMI_POWER_DOMAIN=m +CONFIG_ARM_SCMI_PROTOCOL=y +CONFIG_ARM_SCPI_CPUFREQ=m +CONFIG_ARM_SCPI_POWER_DOMAIN=m +CONFIG_ARM_SCPI_PROTOCOL=m +CONFIG_ARM_SDE_INTERFACE=y +CONFIG_ARM_SMC_WATCHDOG=m +# CONFIG_ARM_SMMU_DISABLE_BYPASS_BY_DEFAULT is not set +# CONFIG_ARM_SMMU_LEGACY_DT_BINDINGS is not set +CONFIG_ARM_SMMU_V3=y +CONFIG_ARM_SMMU_V3_PMU=m +CONFIG_ARM_SP805_WATCHDOG=m +CONFIG_ARM_SPE_PMU=m +CONFIG_ARM_TEGRA124_CPUFREQ=y +CONFIG_ARM_TEGRA186_CPUFREQ=m +CONFIG_ARM_TEGRA20_CPUFREQ=y +CONFIG_ARM_TEGRA20_DEVFREQ=m +# CONFIG_ARM_TEGRA_CPUIDLE is not set +CONFIG_ARM_TEGRA_DEVFREQ=m +CONFIG_ARM_THUMB=y +CONFIG_ARM_THUMBEE=y +CONFIG_ARM_TIMER_SP804=y +CONFIG_ARM_TI_CPUFREQ=y +CONFIG_ARM_VEXPRESS_SPC_CPUFREQ=m +CONFIG_ARM_VIRT_EXT=y +CONFIG_AS3935=m +CONFIG_ASHMEM=m +CONFIG_ASM_MODVERSIONS=y +CONFIG_ASN1=y +CONFIG_ASPEED_ADC=m +CONFIG_ASPEED_BT_IPMI_BMC=m +CONFIG_ASPEED_KCS_IPMI_BMC=m +CONFIG_ASPEED_LPC_CTRL=m +CONFIG_ASPEED_LPC_SNOOP=m +CONFIG_ASPEED_P2A_CTRL=m +CONFIG_ASPEED_WATCHDOG=y +CONFIG_ASSOCIATIVE_ARRAY=y +CONFIG_ASUS_LAPTOP=m +CONFIG_ASUS_NB_WMI=m +CONFIG_ASUS_WIRELESS=m +CONFIG_ASUS_WMI=m +CONFIG_ASYMMETRIC_KEY_TYPE=y +CONFIG_ASYMMETRIC_PUBLIC_KEY_SUBTYPE=y +CONFIG_ASYMMETRIC_TPM_KEY_SUBTYPE=m +CONFIG_ASYNC_CORE=m +CONFIG_ASYNC_MEMCPY=m +CONFIG_ASYNC_PQ=m +CONFIG_ASYNC_RAID6_RECOV=m +# CONFIG_ASYNC_RAID6_TEST is not set +CONFIG_ASYNC_TX_DISABLE_PQ_VAL_DMA=y +CONFIG_ASYNC_TX_DISABLE_XOR_VAL_DMA=y +CONFIG_ASYNC_TX_DMA=y +CONFIG_ASYNC_TX_ENABLE_CHANNEL_SWITCH=y +CONFIG_ASYNC_XOR=m +CONFIG_AS_AVX512=y +CONFIG_AS_HAS_CFI_NEGATE_RA_STATE=y +CONFIG_AS_HAS_PAC=y +CONFIG_AS_SHA1_NI=y +CONFIG_AS_SHA256_NI=y +CONFIG_AS_TPAUSE=y +CONFIG_AT76C50X_USB=m +CONFIG_AT803X_PHY=m +CONFIG_ATAGS=y +CONFIG_ATAGS_PROC=y +CONFIG_ATA_ACPI=y +CONFIG_ATA_BMDMA=y +CONFIG_ATA_FORCE=y +CONFIG_ATA_SFF=y +CONFIG_ATA_VERBOSE_ERROR=y +CONFIG_ATH10K=m +CONFIG_ATH10K_AHB=y +CONFIG_ATH10K_CE=y +# CONFIG_ATH10K_DEBUG is not set +CONFIG_ATH10K_DEBUGFS=y +CONFIG_ATH10K_PCI=m +CONFIG_ATH10K_SDIO=m +CONFIG_ATH10K_SNOC=m +CONFIG_ATH10K_SPECTRAL=y +CONFIG_ATH10K_TRACING=y +CONFIG_ATH10K_USB=m +CONFIG_ATH11K=m +# CONFIG_ATH11K_DEBUG is not set +# CONFIG_ATH11K_DEBUGFS is not set +# CONFIG_ATH11K_TRACING is not set +CONFIG_ATH5K=m +# CONFIG_ATH5K_DEBUG is not set +CONFIG_ATH5K_PCI=y +# CONFIG_ATH5K_TRACER is not set +CONFIG_ATH6KL=m +# CONFIG_ATH6KL_DEBUG is not set +CONFIG_ATH6KL_SDIO=m +# CONFIG_ATH6KL_TRACING is not set +CONFIG_ATH6KL_USB=m +CONFIG_ATH9K=m +CONFIG_ATH9K_AHB=y +CONFIG_ATH9K_BTCOEX_SUPPORT=y +CONFIG_ATH9K_CHANNEL_CONTEXT=y +CONFIG_ATH9K_COMMON=m +CONFIG_ATH9K_COMMON_DEBUG=y +CONFIG_ATH9K_COMMON_SPECTRAL=y +CONFIG_ATH9K_DEBUGFS=y +# CONFIG_ATH9K_DYNACK is not set +CONFIG_ATH9K_HTC=m +CONFIG_ATH9K_HTC_DEBUGFS=y +CONFIG_ATH9K_HW=m +CONFIG_ATH9K_HWRNG=y +CONFIG_ATH9K_PCI=y +CONFIG_ATH9K_PCI_NO_EEPROM=m +CONFIG_ATH9K_PCOEM=y +CONFIG_ATH9K_RFKILL=y +CONFIG_ATH9K_STATION_STATISTICS=y +CONFIG_ATH9K_WOW=y +CONFIG_ATH_COMMON=m +# CONFIG_ATH_DEBUG is not set +CONFIG_ATL1=m +CONFIG_ATL1C=m +CONFIG_ATL1E=m +CONFIG_ATL2=m +CONFIG_ATLAS_EZO_SENSOR=m +CONFIG_ATLAS_PH_SENSOR=m +CONFIG_ATMEL=m +CONFIG_ATM_AMBASSADOR=m +# CONFIG_ATM_AMBASSADOR_DEBUG is not set +CONFIG_ATM_BR2684=m +# CONFIG_ATM_BR2684_IPFILTER is not set +CONFIG_ATM_CLIP=m +# CONFIG_ATM_CLIP_NO_ICMP is not set +CONFIG_ATM_DRIVERS=y +CONFIG_ATM_DUMMY=m +CONFIG_ATM_ENI=m +# CONFIG_ATM_ENI_DEBUG is not set +# CONFIG_ATM_ENI_TUNE_BURST is not set +CONFIG_ATM_FIRESTREAM=m +CONFIG_ATM_FORE200E=m +CONFIG_ATM_FORE200E_DEBUG=0 +CONFIG_ATM_FORE200E_TX_RETRY=16 +# CONFIG_ATM_FORE200E_USE_TASKLET is not set +CONFIG_ATM_HE=m +CONFIG_ATM_HE_USE_SUNI=y +CONFIG_ATM_HORIZON=m +# CONFIG_ATM_HORIZON_DEBUG is not set +CONFIG_ATM_IA=m +# CONFIG_ATM_IA_DEBUG is not set +CONFIG_ATM_IDT77252=m +# CONFIG_ATM_IDT77252_DEBUG is not set +# CONFIG_ATM_IDT77252_RCV_ALL is not set +CONFIG_ATM_IDT77252_USE_SUNI=y +CONFIG_ATM_LANAI=m +CONFIG_ATM_LANE=m +CONFIG_ATM_MPOA=m +CONFIG_ATM_NICSTAR=m +# CONFIG_ATM_NICSTAR_USE_IDT77105 is not set +# CONFIG_ATM_NICSTAR_USE_SUNI is not set +CONFIG_ATM_SOLOS=m +CONFIG_ATM_TCP=m +CONFIG_ATM_ZATM=m +# CONFIG_ATM_ZATM_DEBUG is not set +# CONFIG_ATOMIC64_SELFTEST is not set +CONFIG_ATP=m +CONFIG_AUDIT=y +CONFIG_AUDITSYSCALL=y +CONFIG_AUDIT_ARCH=y +CONFIG_AUDIT_ARCH_COMPAT_GENERIC=y +CONFIG_AUDIT_COMPAT_GENERIC=y +CONFIG_AUDIT_GENERIC=y +CONFIG_AUFS_BDEV_LOOP=y +# CONFIG_AUFS_BRANCH_MAX_1023 is not set +CONFIG_AUFS_BRANCH_MAX_127=y +# CONFIG_AUFS_BRANCH_MAX_32767 is not set +# CONFIG_AUFS_BRANCH_MAX_511 is not set +# CONFIG_AUFS_BR_FUSE is not set +CONFIG_AUFS_BR_HFSPLUS=y +# CONFIG_AUFS_BR_RAMFS is not set +# CONFIG_AUFS_DEBUG is not set +CONFIG_AUFS_DIRREN=y +CONFIG_AUFS_EXPORT=y +# CONFIG_AUFS_FHSM is not set +CONFIG_AUFS_FS=m +# CONFIG_AUFS_HNOTIFY is not set +CONFIG_AUFS_INO_T_64=y +# CONFIG_AUFS_RDU is not set +CONFIG_AUFS_SBILIST=y +# CONFIG_AUFS_SHWH is not set +CONFIG_AUFS_XATTR=y +CONFIG_AURORA_NB8800=m +CONFIG_AUTO_ZRELADDR=y +CONFIG_AX25=m +CONFIG_AX25_DAMA_SLAVE=y +CONFIG_AX88796=m +# CONFIG_AX88796_93CX6 is not set +CONFIG_AXI_DMAC=m +CONFIG_AXP20X_ADC=m +CONFIG_AXP20X_POWER=m +CONFIG_AXP288_ADC=m +CONFIG_AXP288_CHARGER=m +CONFIG_AXP288_FUEL_GAUGE=m +CONFIG_B43=m +CONFIG_B43LEGACY=m +# CONFIG_B43LEGACY_DEBUG is not set +CONFIG_B43LEGACY_DMA=y +CONFIG_B43LEGACY_DMA_AND_PIO_MODE=y +# CONFIG_B43LEGACY_DMA_MODE is not set +CONFIG_B43LEGACY_HWRNG=y +CONFIG_B43LEGACY_LEDS=y +CONFIG_B43LEGACY_PCICORE_AUTOSELECT=y +CONFIG_B43LEGACY_PCI_AUTOSELECT=y +CONFIG_B43LEGACY_PIO=y +# CONFIG_B43LEGACY_PIO_MODE is not set +CONFIG_B43_BCMA=y +CONFIG_B43_BCMA_PIO=y +# CONFIG_B43_BUSES_BCMA is not set +CONFIG_B43_BUSES_BCMA_AND_SSB=y +# CONFIG_B43_BUSES_SSB is not set +# CONFIG_B43_DEBUG is not set +CONFIG_B43_HWRNG=y +CONFIG_B43_LEDS=y +CONFIG_B43_PCICORE_AUTOSELECT=y +CONFIG_B43_PCI_AUTOSELECT=y +CONFIG_B43_PHY_G=y +CONFIG_B43_PHY_HT=y +CONFIG_B43_PHY_LP=y +CONFIG_B43_PHY_N=y +CONFIG_B43_PIO=y +# CONFIG_B43_SDIO is not set +CONFIG_B43_SSB=y +CONFIG_B44=m +CONFIG_B44_PCI=y +CONFIG_B44_PCICORE_AUTOSELECT=y +CONFIG_B44_PCI_AUTOSELECT=y +CONFIG_B53=m +CONFIG_B53_MDIO_DRIVER=m +CONFIG_B53_MMAP_DRIVER=m +CONFIG_B53_SERDES=m +CONFIG_B53_SPI_DRIVER=m +CONFIG_B53_SRAB_DRIVER=m +CONFIG_BACKLIGHT_88PM860X=m +CONFIG_BACKLIGHT_AAT2870=m +CONFIG_BACKLIGHT_ADP5520=m +CONFIG_BACKLIGHT_ADP8860=m +CONFIG_BACKLIGHT_ADP8870=m +CONFIG_BACKLIGHT_APPLE=m +CONFIG_BACKLIGHT_ARCXCNN=m +CONFIG_BACKLIGHT_AS3711=m +CONFIG_BACKLIGHT_BD6107=m +CONFIG_BACKLIGHT_CARILLO_RANCH=m +CONFIG_BACKLIGHT_DA903X=m +CONFIG_BACKLIGHT_DA9052=m +CONFIG_BACKLIGHT_GENERIC=m +CONFIG_BACKLIGHT_GPIO=m +CONFIG_BACKLIGHT_LED=m +CONFIG_BACKLIGHT_LM3533=m +CONFIG_BACKLIGHT_LM3630A=m +CONFIG_BACKLIGHT_LM3639=m +CONFIG_BACKLIGHT_LP855X=m +CONFIG_BACKLIGHT_LP8788=m +CONFIG_BACKLIGHT_LV5207LP=m +CONFIG_BACKLIGHT_MAX8925=m +CONFIG_BACKLIGHT_PANDORA=m +CONFIG_BACKLIGHT_PCF50633=m +CONFIG_BACKLIGHT_PWM=m +CONFIG_BACKLIGHT_QCOM_WLED=m +CONFIG_BACKLIGHT_RAVE_SP=m +CONFIG_BACKLIGHT_SAHARA=m +CONFIG_BACKLIGHT_SKY81452=m +CONFIG_BACKLIGHT_TPS65217=m +CONFIG_BACKLIGHT_WM831X=m +# CONFIG_BACKTRACE_SELF_TEST is not set +CONFIG_BALLOON_COMPACTION=y +CONFIG_BASE_FULL=y +CONFIG_BASE_SMALL=0 +# CONFIG_BATMAN_ADV_BATMAN_V is not set +CONFIG_BATMAN_ADV_BLA=y +CONFIG_BATMAN_ADV_DAT=y +# CONFIG_BATMAN_ADV_DEBUG is not set +# CONFIG_BATMAN_ADV_DEBUGFS is not set +CONFIG_BATMAN_ADV_MCAST=y +CONFIG_BATMAN_ADV_NC=y +CONFIG_BATMAN_ADV_SYSFS=y +# CONFIG_BATMAN_ADV_TRACING is not set +CONFIG_BATTERY_88PM860X=m +CONFIG_BATTERY_ACT8945A=m +CONFIG_BATTERY_AXP20X=m +CONFIG_BATTERY_BQ27XXX=m +# CONFIG_BATTERY_BQ27XXX_DT_UPDATES_NVM is not set +CONFIG_BATTERY_BQ27XXX_HDQ=m +CONFIG_BATTERY_BQ27XXX_I2C=m +CONFIG_BATTERY_CPCAP=m +CONFIG_BATTERY_CW2015=m +CONFIG_BATTERY_DA9030=m +CONFIG_BATTERY_DA9052=m +CONFIG_BATTERY_DA9150=m +CONFIG_BATTERY_DS2760=m +CONFIG_BATTERY_DS2780=m +CONFIG_BATTERY_DS2781=m +CONFIG_BATTERY_DS2782=m +CONFIG_BATTERY_GAUGE_LTC2941=m +CONFIG_BATTERY_LEGO_EV3=m +CONFIG_BATTERY_MAX17040=m +CONFIG_BATTERY_MAX17042=m +CONFIG_BATTERY_MAX1721X=m +CONFIG_BATTERY_RT5033=m +CONFIG_BATTERY_RX51=m +CONFIG_BATTERY_SBS=m +CONFIG_BATTERY_TWL4030_MADC=m +CONFIG_BAYCOM_EPP=m +CONFIG_BAYCOM_PAR=m +CONFIG_BAYCOM_SER_FDX=m +CONFIG_BAYCOM_SER_HDX=m +CONFIG_BCACHE=m +CONFIG_BCACHE_ASYNC_REGISTRAION=y +# CONFIG_BCACHE_CLOSURES_DEBUG is not set +# CONFIG_BCACHE_DEBUG is not set +CONFIG_BCM2711_THERMAL=m +CONFIG_BCM2835_MBOX=y +CONFIG_BCM2835_POWER=y +CONFIG_BCM2835_THERMAL=m +CONFIG_BCM2835_VCHIQ=m +CONFIG_BCM2835_WDT=m +CONFIG_BCM54140_PHY=m +CONFIG_BCM7038_L1_IRQ=y +CONFIG_BCM7038_WDT=m +CONFIG_BCM7XXX_PHY=m +CONFIG_BCM87XX_PHY=m +CONFIG_BCMA_BLOCKIO=y +# CONFIG_BCMA_DEBUG is not set +CONFIG_BCMA_DRIVER_GMAC_CMN=y +CONFIG_BCMA_DRIVER_GPIO=y +CONFIG_BCMA_DRIVER_PCI=y +CONFIG_BCMA_HOST_PCI=y +CONFIG_BCMA_HOST_PCI_POSSIBLE=y +CONFIG_BCMA_HOST_SOC=y +CONFIG_BCMA_POSSIBLE=y +CONFIG_BCMA_SFLASH=y +CONFIG_BCMGENET=m +CONFIG_BCM_FLEXRM_MBOX=m +CONFIG_BCM_IPROC_ADC=m +CONFIG_BCM_NET_PHYLIB=m +CONFIG_BCM_NS_THERMAL=m +CONFIG_BCM_PDC_MBOX=m +CONFIG_BCM_SBA_RAID=m +CONFIG_BCM_SR_THERMAL=m +CONFIG_BCM_VIDEOCORE=m +CONFIG_BD70528_WATCHDOG=m +CONFIG_BE2NET=m +CONFIG_BE2NET_BE2=y +CONFIG_BE2NET_BE3=y +CONFIG_BE2NET_HWMON=y +CONFIG_BE2NET_LANCER=y +CONFIG_BE2NET_SKYHAWK=y +# CONFIG_BEFS_DEBUG is not set +CONFIG_BERLIN2_ADC=m +# CONFIG_BFQ_CGROUP_DEBUG is not set +CONFIG_BFQ_GROUP_IOSCHED=y +CONFIG_BGMAC=y +CONFIG_BGMAC_PLATFORM=y +CONFIG_BH1750=m +CONFIG_BH1780=m +CONFIG_BIG_LITTLE=y +CONFIG_BINARY_PRINTF=y +CONFIG_BINFMT_ELF=y +CONFIG_BINFMT_ELF_FDPIC=y +CONFIG_BINFMT_FLAT=y +CONFIG_BINFMT_FLAT_ARGVP_ENVP_ON_STACK=y +CONFIG_BINFMT_FLAT_OLD=y +CONFIG_BINFMT_MISC=m +CONFIG_BINFMT_SCRIPT=y +CONFIG_BINFMT_SHARED_FLAT=y +CONFIG_BINFMT_ZFLAT=y +CONFIG_BITREVERSE=y +CONFIG_BLK_CGROUP=y +CONFIG_BLK_CGROUP_IOCOST=y +# CONFIG_BLK_CGROUP_IOLATENCY is not set +CONFIG_BLK_CGROUP_RWSTAT=y +CONFIG_BLK_CMDLINE_PARSER=y +CONFIG_BLK_DEBUG_FS=y +CONFIG_BLK_DEBUG_FS_ZONED=y +CONFIG_BLK_DEV=y +CONFIG_BLK_DEV_BSG=y +CONFIG_BLK_DEV_BSGLIB=y +CONFIG_BLK_DEV_DM=y +CONFIG_BLK_DEV_DM_BUILTIN=y +CONFIG_BLK_DEV_DRBD=m +CONFIG_BLK_DEV_FD=m +CONFIG_BLK_DEV_INITRD=y +CONFIG_BLK_DEV_INTEGRITY=y +CONFIG_BLK_DEV_INTEGRITY_T10=y +CONFIG_BLK_DEV_IO_TRACE=y +CONFIG_BLK_DEV_LOOP=y +CONFIG_BLK_DEV_LOOP_MIN_COUNT=8 +CONFIG_BLK_DEV_MD=y +CONFIG_BLK_DEV_NBD=m +CONFIG_BLK_DEV_NULL_BLK=m +CONFIG_BLK_DEV_NVME=m +CONFIG_BLK_DEV_PMEM=m +CONFIG_BLK_DEV_RAM=m +CONFIG_BLK_DEV_RAM_COUNT=16 +CONFIG_BLK_DEV_RAM_SIZE=65536 +CONFIG_BLK_DEV_RBD=m +CONFIG_BLK_DEV_RNBD=y +CONFIG_BLK_DEV_RNBD_CLIENT=m +CONFIG_BLK_DEV_RNBD_SERVER=m +CONFIG_BLK_DEV_SD=y +CONFIG_BLK_DEV_SR=y +CONFIG_BLK_DEV_THROTTLING=y +# CONFIG_BLK_DEV_THROTTLING_LOW is not set +# CONFIG_BLK_DEV_XPRAM is not set +CONFIG_BLK_DEV_ZONED=y +CONFIG_BLK_INLINE_ENCRYPTION=y +CONFIG_BLK_INLINE_ENCRYPTION_FALLBACK=y +CONFIG_BLK_MQ_PCI=y +CONFIG_BLK_MQ_RDMA=y +CONFIG_BLK_MQ_VIRTIO=y +CONFIG_BLK_PM=y +CONFIG_BLK_RQ_ALLOC_TIME=y +CONFIG_BLK_SCSI_REQUEST=y +CONFIG_BLK_SED_OPAL=y +CONFIG_BLK_WBT=y +CONFIG_BLK_WBT_MQ=y +CONFIG_BLOCK=y +CONFIG_BLOCK_COMPAT=y +CONFIG_BL_SWITCHER=y +CONFIG_BL_SWITCHER_DUMMY_IF=m +CONFIG_BMA220=m +CONFIG_BMA400=m +CONFIG_BMA400_I2C=m +CONFIG_BMC150_ACCEL=m +CONFIG_BMC150_ACCEL_I2C=m +CONFIG_BMC150_ACCEL_SPI=m +CONFIG_BMC150_MAGN=m +CONFIG_BMC150_MAGN_I2C=m +CONFIG_BMC150_MAGN_SPI=m +CONFIG_BME680=m +CONFIG_BME680_I2C=m +CONFIG_BME680_SPI=m +CONFIG_BMG160=m +CONFIG_BMG160_I2C=m +CONFIG_BMG160_SPI=m +CONFIG_BMI160=m +CONFIG_BMI160_I2C=m +CONFIG_BMI160_SPI=m +CONFIG_BMP280=m +CONFIG_BMP280_I2C=m +CONFIG_BMP280_SPI=m +CONFIG_BNA=m +CONFIG_BNX2=m +CONFIG_BNX2X=m +CONFIG_BNX2X_SRIOV=y +CONFIG_BNXT=m +CONFIG_BNXT_DCB=y +CONFIG_BNXT_FLOWER_OFFLOAD=y +CONFIG_BNXT_HWMON=y +CONFIG_BNXT_SRIOV=y +CONFIG_BOARD_TPCI200=m +CONFIG_BONDING=m +# CONFIG_BOOTPARAM_HARDLOCKUP_PANIC is not set +CONFIG_BOOTPARAM_HARDLOCKUP_PANIC_VALUE=0 +# CONFIG_BOOTPARAM_HOTPLUG_CPU0 is not set +# CONFIG_BOOTPARAM_HUNG_TASK_PANIC is not set +CONFIG_BOOTPARAM_HUNG_TASK_PANIC_VALUE=0 +# CONFIG_BOOTPARAM_SOFTLOCKUP_PANIC is not set +CONFIG_BOOTPARAM_SOFTLOCKUP_PANIC_VALUE=0 +CONFIG_BOOTTIME_TRACING=y +# CONFIG_BOOTX_TEXT is not set +CONFIG_BOOT_CONFIG=y +CONFIG_BOOT_PRINTK_DELAY=y +CONFIG_BPF=y +CONFIG_BPFILTER=y +CONFIG_BPFILTER_UMH=m +CONFIG_BPF_EVENTS=y +CONFIG_BPF_JIT=y +CONFIG_BPF_JIT_ALWAYS_ON=y +CONFIG_BPF_JIT_DEFAULT_ON=y +CONFIG_BPF_KPROBE_OVERRIDE=y +CONFIG_BPF_LSM=y +CONFIG_BPF_STREAM_PARSER=y +CONFIG_BPF_SYSCALL=y +CONFIG_BPQETHER=m +CONFIG_BQL=y +CONFIG_BRANCH_PROFILE_NONE=y +# CONFIG_BRCMDBG is not set +CONFIG_BRCMFMAC=m +CONFIG_BRCMFMAC_PCIE=y +CONFIG_BRCMFMAC_PROTO_BCDC=y +CONFIG_BRCMFMAC_PROTO_MSGBUF=y +CONFIG_BRCMFMAC_SDIO=y +CONFIG_BRCMFMAC_USB=y +CONFIG_BRCMSMAC=m +CONFIG_BRCMSTB_GISB_ARB=y +CONFIG_BRCMSTB_L2_IRQ=y +CONFIG_BRCMSTB_PM=y +CONFIG_BRCMSTB_THERMAL=m +CONFIG_BRCMUTIL=m +CONFIG_BRCM_TRACING=y +CONFIG_BRIDGE=m +CONFIG_BRIDGE_EBT_802_3=m +CONFIG_BRIDGE_EBT_AMONG=m +CONFIG_BRIDGE_EBT_ARP=m +CONFIG_BRIDGE_EBT_ARPREPLY=m +CONFIG_BRIDGE_EBT_BROUTE=m +CONFIG_BRIDGE_EBT_DNAT=m +CONFIG_BRIDGE_EBT_IP=m +CONFIG_BRIDGE_EBT_IP6=m +CONFIG_BRIDGE_EBT_LIMIT=m +CONFIG_BRIDGE_EBT_LOG=m +CONFIG_BRIDGE_EBT_MARK=m +CONFIG_BRIDGE_EBT_MARK_T=m +CONFIG_BRIDGE_EBT_NFLOG=m +CONFIG_BRIDGE_EBT_PKTTYPE=m +CONFIG_BRIDGE_EBT_REDIRECT=m +CONFIG_BRIDGE_EBT_SNAT=m +CONFIG_BRIDGE_EBT_STP=m +CONFIG_BRIDGE_EBT_T_FILTER=m +CONFIG_BRIDGE_EBT_T_NAT=m +CONFIG_BRIDGE_EBT_VLAN=m +CONFIG_BRIDGE_IGMP_SNOOPING=y +CONFIG_BRIDGE_MRP=y +CONFIG_BRIDGE_NETFILTER=m +CONFIG_BRIDGE_NF_EBTABLES=m +CONFIG_BRIDGE_VLAN_FILTERING=y +CONFIG_BROADCOM_PHY=m +CONFIG_BSD_PROCESS_ACCT=y +CONFIG_BSD_PROCESS_ACCT_V3=y +CONFIG_BT=m +CONFIG_BTREE=y +# CONFIG_BTRFS_ASSERT is not set +# CONFIG_BTRFS_DEBUG is not set +CONFIG_BTRFS_FS=m +# CONFIG_BTRFS_FS_CHECK_INTEGRITY is not set +CONFIG_BTRFS_FS_POSIX_ACL=y +# CONFIG_BTRFS_FS_REF_VERIFY is not set +# CONFIG_BTRFS_FS_RUN_SANITY_TESTS is not set +CONFIG_BTT=y +CONFIG_BT_6LOWPAN=m +CONFIG_BT_ATH3K=m +CONFIG_BT_BCM=m +CONFIG_BT_BNEP=m +CONFIG_BT_BNEP_MC_FILTER=y +CONFIG_BT_BNEP_PROTO_FILTER=y +CONFIG_BT_BREDR=y +CONFIG_BT_CMTP=m +CONFIG_BT_DEBUGFS=y +CONFIG_BT_HCIBCM203X=m +CONFIG_BT_HCIBFUSB=m +CONFIG_BT_HCIBLUECARD=m +CONFIG_BT_HCIBPA10X=m +CONFIG_BT_HCIBT3C=m +CONFIG_BT_HCIBTSDIO=m +CONFIG_BT_HCIBTUSB=m +CONFIG_BT_HCIBTUSB_AUTOSUSPEND=y +CONFIG_BT_HCIBTUSB_BCM=y +CONFIG_BT_HCIBTUSB_MTK=y +CONFIG_BT_HCIBTUSB_RTL=y +CONFIG_BT_HCIDTL1=m +CONFIG_BT_HCIRSI=m +CONFIG_BT_HCIUART=m +CONFIG_BT_HCIUART_3WIRE=y +CONFIG_BT_HCIUART_AG6XX=y +CONFIG_BT_HCIUART_ATH3K=y +CONFIG_BT_HCIUART_BCM=y +CONFIG_BT_HCIUART_BCSP=y +CONFIG_BT_HCIUART_H4=y +CONFIG_BT_HCIUART_INTEL=y +CONFIG_BT_HCIUART_LL=y +CONFIG_BT_HCIUART_MRVL=y +CONFIG_BT_HCIUART_NOKIA=m +CONFIG_BT_HCIUART_QCA=y +CONFIG_BT_HCIUART_RTL=y +CONFIG_BT_HCIUART_SERDEV=y +CONFIG_BT_HCIVHCI=m +CONFIG_BT_HIDP=m +# CONFIG_BT_HS is not set +CONFIG_BT_INTEL=m +CONFIG_BT_LE=y +CONFIG_BT_LEDS=y +CONFIG_BT_MRVL=m +CONFIG_BT_MRVL_SDIO=m +CONFIG_BT_MSFTEXT=y +CONFIG_BT_MTKSDIO=m +CONFIG_BT_MTKUART=m +CONFIG_BT_QCA=m +CONFIG_BT_QCOMSMD=m +CONFIG_BT_RFCOMM=m +CONFIG_BT_RFCOMM_TTY=y +CONFIG_BT_RTL=m +# CONFIG_BT_SELFTEST is not set +CONFIG_BUG=y +# CONFIG_BUG_ON_DATA_CORRUPTION is not set +CONFIG_BUILDTIME_TABLE_SORT=y +CONFIG_BUILD_BIN2C=y +CONFIG_BUILD_SALT="" +CONFIG_BXT_WC_PMIC_OPREGION=y +CONFIG_BYTCRC_PMIC_OPREGION=y +CONFIG_C2PORT_DURAMAR_2150=m +CONFIG_CACHEFILES=m +# CONFIG_CACHEFILES_DEBUG is not set +# CONFIG_CACHEFILES_HISTOGRAM is not set +CONFIG_CACHE_FEROCEON_L2=y +# CONFIG_CACHE_FEROCEON_L2_WRITETHROUGH is not set +CONFIG_CACHE_L2X0=y +CONFIG_CACHE_L2X0_PMU=y +CONFIG_CACHE_TAUROS2=y +CONFIG_CACHE_UNIPHIER=y +# CONFIG_CAIF_DEBUG is not set +CONFIG_CAIF_DRIVERS=y +CONFIG_CAIF_HSI=m +CONFIG_CAIF_NETDEV=m +CONFIG_CAIF_SPI_SLAVE=m +# CONFIG_CAIF_SPI_SYNC is not set +CONFIG_CAIF_TTY=m +CONFIG_CAIF_USB=m +CONFIG_CAIF_VIRTIO=m +CONFIG_CAN_8DEV_USB=m +CONFIG_CAN_BCM=m +CONFIG_CAN_CALC_BITTIMING=y +CONFIG_CAN_CC770=m +CONFIG_CAN_CC770_ISA=m +CONFIG_CAN_CC770_PLATFORM=m +CONFIG_CAN_C_CAN=m +CONFIG_CAN_C_CAN_PCI=m +CONFIG_CAN_C_CAN_PLATFORM=m +# CONFIG_CAN_DEBUG_DEVICES is not set +CONFIG_CAN_DEV=m +CONFIG_CAN_EMS_PCI=m +CONFIG_CAN_EMS_PCMCIA=m +CONFIG_CAN_EMS_USB=m +CONFIG_CAN_ESD_USB2=m +CONFIG_CAN_F81601=m +CONFIG_CAN_FLEXCAN=m +CONFIG_CAN_GRCAN=m +CONFIG_CAN_GS_USB=m +CONFIG_CAN_GW=m +CONFIG_CAN_HI311X=m +CONFIG_CAN_IFI_CANFD=m +CONFIG_CAN_J1939=m +CONFIG_CAN_JANZ_ICAN3=m +CONFIG_CAN_KVASER_PCI=m +CONFIG_CAN_KVASER_PCIEFD=m +CONFIG_CAN_KVASER_USB=m +CONFIG_CAN_MCBA_USB=m +CONFIG_CAN_MCP251X=m +CONFIG_CAN_MSCAN=m +CONFIG_CAN_M_CAN=m +CONFIG_CAN_M_CAN_PLATFORM=m +CONFIG_CAN_M_CAN_TCAN4X5X=m +CONFIG_CAN_PEAK_PCI=m +CONFIG_CAN_PEAK_PCIEC=y +CONFIG_CAN_PEAK_PCIEFD=m +CONFIG_CAN_PEAK_PCMCIA=m +CONFIG_CAN_PEAK_USB=m +CONFIG_CAN_PLX_PCI=m +CONFIG_CAN_RAW=m +CONFIG_CAN_RCAR=m +CONFIG_CAN_RCAR_CANFD=m +CONFIG_CAN_SJA1000=m +CONFIG_CAN_SJA1000_ISA=m +CONFIG_CAN_SJA1000_PLATFORM=m +CONFIG_CAN_SLCAN=m +CONFIG_CAN_SOFTING=m +CONFIG_CAN_SOFTING_CS=m +CONFIG_CAN_TI_HECC=m +CONFIG_CAN_UCAN=m +CONFIG_CAN_VCAN=m +CONFIG_CAN_VXCAN=m +CONFIG_CAN_XILINXCAN=m +CONFIG_CAPI_TRACE=y +CONFIG_CARDBUS=y +CONFIG_CARDMAN_4000=m +CONFIG_CARDMAN_4040=m +CONFIG_CARL9170=m +# CONFIG_CARL9170_DEBUGFS is not set +CONFIG_CARL9170_HWRNG=y +CONFIG_CARL9170_LEDS=y +CONFIG_CARL9170_WPC=y +# CONFIG_CARMINE_DRAM_CUSTOM is not set +CONFIG_CASSINI=m +CONFIG_CAVIUM_CPT=m +CONFIG_CAVIUM_ERRATUM_22375=y +CONFIG_CAVIUM_ERRATUM_23144=y +CONFIG_CAVIUM_ERRATUM_23154=y +CONFIG_CAVIUM_ERRATUM_27456=y +CONFIG_CAVIUM_ERRATUM_30115=y +CONFIG_CAVIUM_PTP=m +CONFIG_CAVIUM_TX2_ERRATUM_219=y +# CONFIG_CB710_DEBUG is not set +CONFIG_CB710_DEBUG_ASSUMPTIONS=y +CONFIG_CC10001_ADC=m +CONFIG_CCS811=m +CONFIG_CCW=y +CONFIG_CCWGROUP=m +CONFIG_CCW_CONSOLE=y +CONFIG_CC_CAN_LINK=y +CONFIG_CC_CAN_LINK_STATIC=y +CONFIG_CC_HAS_ASM_GOTO=y +CONFIG_CC_HAS_ASM_INLINE=y +CONFIG_CC_HAS_BRANCH_PROT_PAC_RET=y +CONFIG_CC_HAS_BRANCH_PROT_PAC_RET_BTI=y +CONFIG_CC_HAS_INT128=y +CONFIG_CC_HAS_KASAN_GENERIC=y +CONFIG_CC_HAS_SANCOV_TRACE_PC=y +CONFIG_CC_HAS_SANE_STACKPROTECTOR=y +CONFIG_CC_HAS_SIGN_RETURN_ADDRESS=y +CONFIG_CC_HAS_STACKPROTECTOR_NONE=y +CONFIG_CC_HAS_WORKING_NOSANITIZE_ADDRESS=y +CONFIG_CC_HAVE_STACKPROTECTOR_SYSREG=y +CONFIG_CC_IS_GCC=y +CONFIG_CC_OPTIMIZE_FOR_PERFORMANCE=y +# CONFIG_CC_OPTIMIZE_FOR_SIZE is not set +CONFIG_CDNS_I3C_MASTER=m +CONFIG_CDROM=y +CONFIG_CDROM_PKTCDVD_BUFFERS=8 +# CONFIG_CDROM_PKTCDVD_WCACHE is not set +CONFIG_CEC_CORE=m +CONFIG_CEC_CROS_EC=m +CONFIG_CEC_GPIO=m +CONFIG_CEC_MESON_AO=m +CONFIG_CEC_MESON_G12A_AO=m +CONFIG_CEC_NOTIFIER=y +CONFIG_CEC_PIN=y +# CONFIG_CEC_PIN_ERROR_INJ is not set +CONFIG_CEC_SAMSUNG_S5P=m +CONFIG_CEC_SECO=m +CONFIG_CEC_SECO_RC=y +CONFIG_CEC_TEGRA=m +CONFIG_CEPH_FS=m +CONFIG_CEPH_FSCACHE=y +CONFIG_CEPH_FS_POSIX_ACL=y +CONFIG_CEPH_FS_SECURITY_LABEL=y +CONFIG_CEPH_LIB=m +# CONFIG_CEPH_LIB_PRETTYDEBUG is not set +CONFIG_CEPH_LIB_USE_DNS_RESOLVER=y +CONFIG_CFAG12864B=m +CONFIG_CFAG12864B_RATE=20 +CONFIG_CFG80211=m +# CONFIG_CFG80211_CERTIFICATION_ONUS is not set +CONFIG_CFG80211_CRDA_SUPPORT=y +CONFIG_CFG80211_DEBUGFS=y +CONFIG_CFG80211_DEFAULT_PS=y +# CONFIG_CFG80211_DEVELOPER_WARNINGS is not set +CONFIG_CFG80211_REQUIRE_SIGNED_REGDB=y +CONFIG_CFG80211_USE_KERNEL_REGDB_KEYS=y +CONFIG_CFG80211_WEXT=y +CONFIG_CFG80211_WEXT_EXPORT=y +CONFIG_CFS_BANDWIDTH=y +CONFIG_CGROUPS=y +CONFIG_CGROUP_BPF=y +CONFIG_CGROUP_CPUACCT=y +# CONFIG_CGROUP_DEBUG is not set +CONFIG_CGROUP_DEVICE=y +CONFIG_CGROUP_FREEZER=y +CONFIG_CGROUP_HUGETLB=y +CONFIG_CGROUP_NET_CLASSID=y +CONFIG_CGROUP_NET_PRIO=y +CONFIG_CGROUP_PERF=y +CONFIG_CGROUP_PIDS=y +CONFIG_CGROUP_RDMA=y +CONFIG_CGROUP_SCHED=y +CONFIG_CGROUP_WRITEBACK=y +CONFIG_CHARGER_88PM860X=m +CONFIG_CHARGER_ADP5061=m +CONFIG_CHARGER_AXP20X=m +CONFIG_CHARGER_BD70528=m +CONFIG_CHARGER_BD99954=m +CONFIG_CHARGER_BQ2415X=m +CONFIG_CHARGER_BQ24190=m +CONFIG_CHARGER_BQ24257=m +CONFIG_CHARGER_BQ24735=m +CONFIG_CHARGER_BQ25890=m +CONFIG_CHARGER_CPCAP=m +CONFIG_CHARGER_CROS_USBPD=m +CONFIG_CHARGER_DA9150=m +CONFIG_CHARGER_DETECTOR_MAX14656=m +CONFIG_CHARGER_GPIO=m +CONFIG_CHARGER_ISP1704=m +CONFIG_CHARGER_LP8727=m +CONFIG_CHARGER_LP8788=m +CONFIG_CHARGER_LT3651=m +CONFIG_CHARGER_MANAGER=y +CONFIG_CHARGER_MAX14577=m +CONFIG_CHARGER_MAX77650=m +CONFIG_CHARGER_MAX77693=m +CONFIG_CHARGER_MAX8903=m +CONFIG_CHARGER_MAX8997=m +CONFIG_CHARGER_MAX8998=m +CONFIG_CHARGER_MP2629=m +CONFIG_CHARGER_PCF50633=m +CONFIG_CHARGER_QCOM_SMBB=m +CONFIG_CHARGER_RT9455=m +CONFIG_CHARGER_SBS=m +CONFIG_CHARGER_SC2731=m +CONFIG_CHARGER_SMB347=m +CONFIG_CHARGER_TPS65090=m +CONFIG_CHARGER_TPS65217=m +CONFIG_CHARGER_TWL4030=m +CONFIG_CHARGER_UCS1002=m +CONFIG_CHARGER_WILCO=m +CONFIG_CHARLCD=m +CONFIG_CHARLCD_BL_FLASH=y +# CONFIG_CHARLCD_BL_OFF is not set +# CONFIG_CHARLCD_BL_ON is not set +CONFIG_CHECKPOINT_RESTORE=y +CONFIG_CHECK_SIGNATURE=y +CONFIG_CHELSIO_IPSEC_INLINE=y +CONFIG_CHELSIO_LIB=m +CONFIG_CHELSIO_T1=m +CONFIG_CHELSIO_T1_1G=y +CONFIG_CHELSIO_T3=m +CONFIG_CHELSIO_T4=m +CONFIG_CHELSIO_T4VF=m +CONFIG_CHELSIO_T4_DCB=y +CONFIG_CHELSIO_T4_FCOE=y +CONFIG_CHELSIO_TLS_DEVICE=y +CONFIG_CHROMEOS_LAPTOP=m +CONFIG_CHROMEOS_PSTORE=m +CONFIG_CHROMEOS_TBMC=m +CONFIG_CHROME_PLATFORMS=y +CONFIG_CHR_DEV_SCH=m +CONFIG_CHR_DEV_SG=y +CONFIG_CHR_DEV_ST=m +CONFIG_CHSC_SCH=m +CONFIG_CHTCRC_PMIC_OPREGION=y +CONFIG_CHT_DC_TI_PMIC_OPREGION=y +CONFIG_CHT_WC_PMIC_OPREGION=y +CONFIG_CICADA_PHY=m +CONFIG_CIFS=m +CONFIG_CIFS_ALLOW_INSECURE_LEGACY=y +CONFIG_CIFS_DEBUG=y +# CONFIG_CIFS_DEBUG2 is not set +# CONFIG_CIFS_DEBUG_DUMP_KEYS is not set +CONFIG_CIFS_DFS_UPCALL=y +CONFIG_CIFS_FSCACHE=y +CONFIG_CIFS_POSIX=y +# CONFIG_CIFS_SMB_DIRECT is not set +# CONFIG_CIFS_STATS2 is not set +CONFIG_CIFS_UPCALL=y +CONFIG_CIFS_WEAK_PW_HASH=y +CONFIG_CIFS_XATTR=y +CONFIG_CIO_DAC=m +CONFIG_CLANG_VERSION=0 +CONFIG_CLEANCACHE=y +CONFIG_CLKBLD_I8253=y +CONFIG_CLKDEV_LOOKUP=y +CONFIG_CLKEVT_I8253=y +CONFIG_CLKSRC_ARM_GLOBAL_TIMER_SCHED_CLOCK=y +CONFIG_CLKSRC_EXYNOS_MCT=y +CONFIG_CLKSRC_IMX_GPT=y +CONFIG_CLKSRC_IMX_TPM=y +CONFIG_CLKSRC_MMIO=y +CONFIG_CLKSRC_QCOM=y +CONFIG_CLKSRC_TI_32K=y +CONFIG_CLKSRC_VERSATILE=y +CONFIG_CLK_ACTIONS=y +CONFIG_CLK_BCM2835=y +CONFIG_CLK_BCM_NS2=y +CONFIG_CLK_BCM_SR=y +CONFIG_CLK_EMEV2=y +# CONFIG_CLK_HSDK is not set +CONFIG_CLK_IMX8MM=y +CONFIG_CLK_IMX8MN=y +CONFIG_CLK_IMX8MP=y +CONFIG_CLK_IMX8MQ=y +CONFIG_CLK_IMX8QXP=y +CONFIG_CLK_LS1028A_PLLDIG=m +CONFIG_CLK_OWL_S500=y +CONFIG_CLK_OWL_S700=y +CONFIG_CLK_OWL_S900=y +CONFIG_CLK_QORIQ=y +CONFIG_CLK_R7S9210=y +CONFIG_CLK_R8A7740=y +CONFIG_CLK_R8A7742=y +CONFIG_CLK_R8A7743=y +CONFIG_CLK_R8A7745=y +CONFIG_CLK_R8A77470=y +CONFIG_CLK_R8A774A1=y +CONFIG_CLK_R8A774B1=y +CONFIG_CLK_R8A774C0=y +CONFIG_CLK_R8A7778=y +CONFIG_CLK_R8A7779=y +CONFIG_CLK_R8A7790=y +CONFIG_CLK_R8A7791=y +CONFIG_CLK_R8A7792=y +CONFIG_CLK_R8A7794=y +CONFIG_CLK_R8A7795=y +CONFIG_CLK_R8A77960=y +CONFIG_CLK_R8A77961=y +CONFIG_CLK_R8A77965=y +CONFIG_CLK_R8A77970=y +CONFIG_CLK_R8A77980=y +CONFIG_CLK_R8A77990=y +CONFIG_CLK_R8A77995=y +CONFIG_CLK_R9A06G032=y +CONFIG_CLK_RASPBERRYPI=m +CONFIG_CLK_RCAR_GEN2_CPG=y +CONFIG_CLK_RCAR_GEN3_CPG=y +CONFIG_CLK_RCAR_USB2_CLOCK_SEL=y +CONFIG_CLK_RENESAS=y +CONFIG_CLK_RENESAS_CPG_MSSR=y +CONFIG_CLK_RENESAS_CPG_MSTP=y +CONFIG_CLK_RENESAS_DIV6=y +CONFIG_CLK_RZA1=y +CONFIG_CLK_SH73A0=y +CONFIG_CLK_SP810=y +CONFIG_CLK_SUNXI=y +CONFIG_CLK_SUNXI_CLOCKS=y +CONFIG_CLK_SUNXI_PRCM_SUN6I=y +CONFIG_CLK_SUNXI_PRCM_SUN8I=y +CONFIG_CLK_SUNXI_PRCM_SUN9I=y +CONFIG_CLK_TEGRA_BPMP=y +CONFIG_CLK_TWL6040=m +CONFIG_CLK_UNIPHIER=y +CONFIG_CLK_VEXPRESS_OSC=y +CONFIG_CLOCKSOURCE_VALIDATE_LAST_CYCLE=y +CONFIG_CLOCKSOURCE_WATCHDOG=y +CONFIG_CLONE_BACKWARDS=y +CONFIG_CLONE_BACKWARDS2=y +CONFIG_CLS_U32_MARK=y +# CONFIG_CLS_U32_PERF is not set +CONFIG_CLZ_TAB=y +CONFIG_CM32181=m +CONFIG_CM3232=m +CONFIG_CM3323=m +CONFIG_CM3605=m +CONFIG_CM36651=m +CONFIG_CMA_ALIGNMENT=8 +CONFIG_CMA_AREAS=7 +# CONFIG_CMA_DEBUG is not set +# CONFIG_CMA_DEBUGFS is not set +CONFIG_CMA_SIZE_MBYTES=32 +# CONFIG_CMA_SIZE_SEL_MAX is not set +CONFIG_CMA_SIZE_SEL_MBYTES=y +# CONFIG_CMA_SIZE_SEL_MIN is not set +# CONFIG_CMA_SIZE_SEL_PERCENTAGE is not set +# CONFIG_CMDLINE_BOOL is not set +# CONFIG_CMDLINE_FORCE is not set +CONFIG_CMM_IUCV=y +CONFIG_CMT_SPEECH=m +CONFIG_CNIC=m +CONFIG_CODA_FS=m +# CONFIG_CODE_PATCHING_SELFTEST is not set +CONFIG_COMEDI=m +CONFIG_COMEDI_8254=m +CONFIG_COMEDI_8255=m +CONFIG_COMEDI_8255_PCI=m +CONFIG_COMEDI_8255_SA=m +CONFIG_COMEDI_ADDI_APCI_1032=m +CONFIG_COMEDI_ADDI_APCI_1500=m +CONFIG_COMEDI_ADDI_APCI_1516=m +CONFIG_COMEDI_ADDI_APCI_1564=m +CONFIG_COMEDI_ADDI_APCI_16XX=m +CONFIG_COMEDI_ADDI_APCI_2032=m +CONFIG_COMEDI_ADDI_APCI_2200=m +CONFIG_COMEDI_ADDI_APCI_3120=m +CONFIG_COMEDI_ADDI_APCI_3501=m +CONFIG_COMEDI_ADDI_APCI_3XXX=m +CONFIG_COMEDI_ADDI_WATCHDOG=m +CONFIG_COMEDI_ADL_PCI6208=m +CONFIG_COMEDI_ADL_PCI7X3X=m +CONFIG_COMEDI_ADL_PCI8164=m +CONFIG_COMEDI_ADL_PCI9111=m +CONFIG_COMEDI_ADL_PCI9118=m +CONFIG_COMEDI_ADQ12B=m +CONFIG_COMEDI_ADV_PCI1710=m +CONFIG_COMEDI_ADV_PCI1720=m +CONFIG_COMEDI_ADV_PCI1723=m +CONFIG_COMEDI_ADV_PCI1724=m +CONFIG_COMEDI_ADV_PCI1760=m +CONFIG_COMEDI_ADV_PCI_DIO=m +CONFIG_COMEDI_AIO_AIO12_8=m +CONFIG_COMEDI_AIO_IIRO_16=m +CONFIG_COMEDI_AMPLC_DIO200=m +CONFIG_COMEDI_AMPLC_DIO200_ISA=m +CONFIG_COMEDI_AMPLC_DIO200_PCI=m +CONFIG_COMEDI_AMPLC_PC236=m +CONFIG_COMEDI_AMPLC_PC236_ISA=m +CONFIG_COMEDI_AMPLC_PC236_PCI=m +CONFIG_COMEDI_AMPLC_PC263_ISA=m +CONFIG_COMEDI_AMPLC_PC263_PCI=m +CONFIG_COMEDI_AMPLC_PCI224=m +CONFIG_COMEDI_AMPLC_PCI230=m +CONFIG_COMEDI_BOND=m +CONFIG_COMEDI_C6XDIGIO=m +CONFIG_COMEDI_CB_DAS16_CS=m +CONFIG_COMEDI_CB_PCIDAS=m +CONFIG_COMEDI_CB_PCIDAS64=m +CONFIG_COMEDI_CB_PCIDDA=m +CONFIG_COMEDI_CB_PCIMDAS=m +CONFIG_COMEDI_CB_PCIMDDA=m +CONFIG_COMEDI_CONTEC_PCI_DIO=m +CONFIG_COMEDI_DAC02=m +CONFIG_COMEDI_DAQBOARD2000=m +CONFIG_COMEDI_DAS08=m +CONFIG_COMEDI_DAS08_CS=m +CONFIG_COMEDI_DAS08_ISA=m +CONFIG_COMEDI_DAS08_PCI=m +CONFIG_COMEDI_DAS16=m +CONFIG_COMEDI_DAS16M1=m +CONFIG_COMEDI_DAS1800=m +CONFIG_COMEDI_DAS6402=m +CONFIG_COMEDI_DAS800=m +# CONFIG_COMEDI_DEBUG is not set +CONFIG_COMEDI_DEFAULT_BUF_MAXSIZE_KB=20480 +CONFIG_COMEDI_DEFAULT_BUF_SIZE_KB=2048 +CONFIG_COMEDI_DMM32AT=m +CONFIG_COMEDI_DT2801=m +CONFIG_COMEDI_DT2811=m +CONFIG_COMEDI_DT2814=m +CONFIG_COMEDI_DT2815=m +CONFIG_COMEDI_DT2817=m +CONFIG_COMEDI_DT282X=m +CONFIG_COMEDI_DT3000=m +CONFIG_COMEDI_DT9812=m +CONFIG_COMEDI_DYNA_PCI10XX=m +CONFIG_COMEDI_FL512=m +CONFIG_COMEDI_GSC_HPDI=m +CONFIG_COMEDI_ICP_MULTI=m +CONFIG_COMEDI_II_PCI20KC=m +CONFIG_COMEDI_ISADMA=m +CONFIG_COMEDI_ISA_DRIVERS=y +CONFIG_COMEDI_JR3_PCI=m +CONFIG_COMEDI_KCOMEDILIB=m +CONFIG_COMEDI_KE_COUNTER=m +CONFIG_COMEDI_ME4000=m +CONFIG_COMEDI_ME_DAQ=m +CONFIG_COMEDI_MF6X4=m +CONFIG_COMEDI_MISC_DRIVERS=y +CONFIG_COMEDI_MITE=m +CONFIG_COMEDI_MPC624=m +CONFIG_COMEDI_MULTIQ3=m +CONFIG_COMEDI_NI_6527=m +CONFIG_COMEDI_NI_65XX=m +CONFIG_COMEDI_NI_660X=m +CONFIG_COMEDI_NI_670X=m +CONFIG_COMEDI_NI_ATMIO=m +CONFIG_COMEDI_NI_ATMIO16D=m +CONFIG_COMEDI_NI_AT_A2150=m +CONFIG_COMEDI_NI_AT_AO=m +CONFIG_COMEDI_NI_DAQ_700_CS=m +CONFIG_COMEDI_NI_DAQ_DIO24_CS=m +CONFIG_COMEDI_NI_LABPC=m +CONFIG_COMEDI_NI_LABPC_CS=m +CONFIG_COMEDI_NI_LABPC_ISA=m +CONFIG_COMEDI_NI_LABPC_ISADMA=m +CONFIG_COMEDI_NI_LABPC_PCI=m +CONFIG_COMEDI_NI_MIO_CS=m +CONFIG_COMEDI_NI_PCIDIO=m +CONFIG_COMEDI_NI_PCIMIO=m +CONFIG_COMEDI_NI_ROUTING=m +CONFIG_COMEDI_NI_TIO=m +CONFIG_COMEDI_NI_TIOCMD=m +CONFIG_COMEDI_NI_USB6501=m +CONFIG_COMEDI_PARPORT=m +CONFIG_COMEDI_PCI_DRIVERS=m +CONFIG_COMEDI_PCL711=m +CONFIG_COMEDI_PCL724=m +CONFIG_COMEDI_PCL726=m +CONFIG_COMEDI_PCL730=m +CONFIG_COMEDI_PCL812=m +CONFIG_COMEDI_PCL816=m +CONFIG_COMEDI_PCL818=m +CONFIG_COMEDI_PCM3724=m +CONFIG_COMEDI_PCMAD=m +CONFIG_COMEDI_PCMCIA_DRIVERS=m +CONFIG_COMEDI_PCMDA12=m +CONFIG_COMEDI_PCMMIO=m +CONFIG_COMEDI_PCMUIO=m +CONFIG_COMEDI_QUATECH_DAQP_CS=m +CONFIG_COMEDI_RTD520=m +CONFIG_COMEDI_RTI800=m +CONFIG_COMEDI_RTI802=m +CONFIG_COMEDI_S526=m +CONFIG_COMEDI_S626=m +CONFIG_COMEDI_TEST=m +CONFIG_COMEDI_USBDUX=m +CONFIG_COMEDI_USBDUXFAST=m +CONFIG_COMEDI_USBDUXSIGMA=m +CONFIG_COMEDI_USB_DRIVERS=m +CONFIG_COMEDI_VMK80XX=m +CONFIG_COMMON_CLK_ASPEED=y +CONFIG_COMMON_CLK_AXG=y +CONFIG_COMMON_CLK_AXG_AUDIO=m +CONFIG_COMMON_CLK_BD718XX=m +CONFIG_COMMON_CLK_BM1880=y +CONFIG_COMMON_CLK_CDCE706=m +CONFIG_COMMON_CLK_CDCE925=m +CONFIG_COMMON_CLK_CS2000_CP=m +CONFIG_COMMON_CLK_FIXED_MMIO=y +CONFIG_COMMON_CLK_FSL_SAI=y +CONFIG_COMMON_CLK_G12A=y +CONFIG_COMMON_CLK_GXBB=y +CONFIG_COMMON_CLK_HI3516CV300=m +CONFIG_COMMON_CLK_HI3519=m +CONFIG_COMMON_CLK_HI3660=y +CONFIG_COMMON_CLK_HI3670=y +CONFIG_COMMON_CLK_HI3798CV200=m +CONFIG_COMMON_CLK_HI6220=y +CONFIG_COMMON_CLK_HI655X=m +CONFIG_COMMON_CLK_IPROC=y +CONFIG_COMMON_CLK_LOCHNAGAR=m +CONFIG_COMMON_CLK_MAX77686=m +CONFIG_COMMON_CLK_MAX9485=m +CONFIG_COMMON_CLK_MEDIATEK=y +CONFIG_COMMON_CLK_MESON8B=y +CONFIG_COMMON_CLK_MESON_AO_CLKC=y +CONFIG_COMMON_CLK_MESON_CPU_DYNDIV=y +CONFIG_COMMON_CLK_MESON_DUALDIV=y +CONFIG_COMMON_CLK_MESON_EE_CLKC=y +CONFIG_COMMON_CLK_MESON_MPLL=y +CONFIG_COMMON_CLK_MESON_PHASE=m +CONFIG_COMMON_CLK_MESON_PLL=y +CONFIG_COMMON_CLK_MESON_REGMAP=y +CONFIG_COMMON_CLK_MESON_SCLK_DIV=m +CONFIG_COMMON_CLK_MESON_VID_PLL_DIV=y +# CONFIG_COMMON_CLK_MT2701 is not set +CONFIG_COMMON_CLK_MT2712=y +CONFIG_COMMON_CLK_MT2712_BDPSYS=y +CONFIG_COMMON_CLK_MT2712_IMGSYS=y +CONFIG_COMMON_CLK_MT2712_JPGDECSYS=y +CONFIG_COMMON_CLK_MT2712_MFGCFG=y +CONFIG_COMMON_CLK_MT2712_MMSYS=y +CONFIG_COMMON_CLK_MT2712_VDECSYS=y +CONFIG_COMMON_CLK_MT2712_VENCSYS=y +CONFIG_COMMON_CLK_MT6765=y +CONFIG_COMMON_CLK_MT6765_AUDIOSYS=y +CONFIG_COMMON_CLK_MT6765_CAMSYS=y +CONFIG_COMMON_CLK_MT6765_GCESYS=y +CONFIG_COMMON_CLK_MT6765_IMGSYS=y +CONFIG_COMMON_CLK_MT6765_MFGSYS=y +CONFIG_COMMON_CLK_MT6765_MIPI0ASYS=y +CONFIG_COMMON_CLK_MT6765_MIPI0BSYS=y +CONFIG_COMMON_CLK_MT6765_MIPI1ASYS=y +CONFIG_COMMON_CLK_MT6765_MIPI1BSYS=y +CONFIG_COMMON_CLK_MT6765_MIPI2ASYS=y +CONFIG_COMMON_CLK_MT6765_MIPI2BSYS=y +CONFIG_COMMON_CLK_MT6765_MMSYS=y +CONFIG_COMMON_CLK_MT6765_VCODECSYS=y +CONFIG_COMMON_CLK_MT6779=y +CONFIG_COMMON_CLK_MT6779_AUDSYS=y +CONFIG_COMMON_CLK_MT6779_CAMSYS=y +CONFIG_COMMON_CLK_MT6779_IMGSYS=y +CONFIG_COMMON_CLK_MT6779_IPESYS=y +CONFIG_COMMON_CLK_MT6779_MFGCFG=y +CONFIG_COMMON_CLK_MT6779_MMSYS=y +CONFIG_COMMON_CLK_MT6779_VDECSYS=y +CONFIG_COMMON_CLK_MT6779_VENCSYS=y +CONFIG_COMMON_CLK_MT6797=y +CONFIG_COMMON_CLK_MT6797_IMGSYS=y +CONFIG_COMMON_CLK_MT6797_MMSYS=y +CONFIG_COMMON_CLK_MT6797_VDECSYS=y +CONFIG_COMMON_CLK_MT6797_VENCSYS=y +CONFIG_COMMON_CLK_MT7622=y +CONFIG_COMMON_CLK_MT7622_AUDSYS=y +CONFIG_COMMON_CLK_MT7622_ETHSYS=y +CONFIG_COMMON_CLK_MT7622_HIFSYS=y +CONFIG_COMMON_CLK_MT7629=y +CONFIG_COMMON_CLK_MT7629_ETHSYS=y +CONFIG_COMMON_CLK_MT7629_HIFSYS=y +CONFIG_COMMON_CLK_MT8135=y +CONFIG_COMMON_CLK_MT8173=y +CONFIG_COMMON_CLK_MT8173_MMSYS=y +CONFIG_COMMON_CLK_MT8183=y +CONFIG_COMMON_CLK_MT8183_AUDIOSYS=y +CONFIG_COMMON_CLK_MT8183_CAMSYS=y +CONFIG_COMMON_CLK_MT8183_IMGSYS=y +CONFIG_COMMON_CLK_MT8183_IPU_ADL=y +CONFIG_COMMON_CLK_MT8183_IPU_CONN=y +CONFIG_COMMON_CLK_MT8183_IPU_CORE0=y +CONFIG_COMMON_CLK_MT8183_IPU_CORE1=y +CONFIG_COMMON_CLK_MT8183_MFGCFG=y +CONFIG_COMMON_CLK_MT8183_MMSYS=y +CONFIG_COMMON_CLK_MT8183_VDECSYS=y +CONFIG_COMMON_CLK_MT8183_VENCSYS=y +CONFIG_COMMON_CLK_MT8516=y +CONFIG_COMMON_CLK_MT8516_AUDSYS=y +CONFIG_COMMON_CLK_PALMAS=m +CONFIG_COMMON_CLK_PWM=m +CONFIG_COMMON_CLK_QCOM=m +CONFIG_COMMON_CLK_RK808=m +CONFIG_COMMON_CLK_S2MPS11=m +CONFIG_COMMON_CLK_SAMSUNG=y +CONFIG_COMMON_CLK_SCMI=m +CONFIG_COMMON_CLK_SCPI=m +CONFIG_COMMON_CLK_SI514=m +CONFIG_COMMON_CLK_SI5341=m +CONFIG_COMMON_CLK_SI5351=m +CONFIG_COMMON_CLK_SI544=m +CONFIG_COMMON_CLK_SI570=m +CONFIG_COMMON_CLK_TI_ADPLL=y +CONFIG_COMMON_CLK_VC5=m +CONFIG_COMMON_CLK_WM831X=m +CONFIG_COMMON_CLK_XGENE=y +# CONFIG_COMMON_CLK_XLNX_CLKWZRD is not set +CONFIG_COMMON_CLK_ZYNQMP=y +CONFIG_COMMON_RESET_HI3660=m +CONFIG_COMMON_RESET_HI6220=m +CONFIG_COMPACTION=y +CONFIG_COMPAL_LAPTOP=m +CONFIG_COMPAT=y +CONFIG_COMPAT_32=y +CONFIG_COMPAT_32BIT_TIME=y +CONFIG_COMPAT_BINFMT_ELF=y +# CONFIG_COMPAT_BRK is not set +CONFIG_COMPAT_FOR_U64_ALIGNMENT=y +CONFIG_COMPAT_NETLINK_MESSAGES=y +CONFIG_COMPAT_OLD_SIGACTION=y +# CONFIG_COMPAT_VDSO is not set +# CONFIG_COMPILE_TEST is not set +CONFIG_CONFIGFS_FS=y +CONFIG_CONNECTOR=y +CONFIG_CONSOLE_LOGLEVEL_DEFAULT=7 +CONFIG_CONSOLE_LOGLEVEL_QUIET=4 +CONFIG_CONSOLE_POLL=y +CONFIG_CONSOLE_TRANSLATIONS=y +CONFIG_CONTEXT_SWITCH_TRACER=y +CONFIG_CONTIG_ALLOC=y +CONFIG_COPS=m +CONFIG_COPS_DAYNA=y +CONFIG_COPS_TANGENT=y +CONFIG_CORDIC=m +CONFIG_COREDUMP=y +# CONFIG_CORESIGHT is not set +CONFIG_CORE_DUMP_DEFAULT_ELF_HEADERS=y +CONFIG_CORTINA_PHY=m +CONFIG_CP15_BARRIER_EMULATION=y +# CONFIG_CPA_DEBUG is not set +CONFIG_CPCAP_ADC=m +CONFIG_CPU5_WDT=m +CONFIG_CPUFREQ_DT=y +CONFIG_CPUFREQ_DT_PLATDEV=y +CONFIG_CPUMASK_OFFSTACK=y +CONFIG_CPUSETS=y +CONFIG_CPU_32v6K=y +CONFIG_CPU_32v7=y +CONFIG_CPU_ABRT_EV7=y +# CONFIG_CPU_BPREDICT_DISABLE is not set +CONFIG_CPU_CACHE_V7=y +CONFIG_CPU_CACHE_VIPT=y +CONFIG_CPU_COPY_V6=y +CONFIG_CPU_CP15=y +CONFIG_CPU_CP15_MMU=y +CONFIG_CPU_FREQ=y +# CONFIG_CPU_FREQ_DEFAULT_GOV_CONSERVATIVE is not set +CONFIG_CPU_FREQ_DEFAULT_GOV_ONDEMAND=y +# CONFIG_CPU_FREQ_DEFAULT_GOV_PERFORMANCE is not set +# CONFIG_CPU_FREQ_DEFAULT_GOV_POWERSAVE is not set +# CONFIG_CPU_FREQ_DEFAULT_GOV_SCHEDUTIL is not set +# CONFIG_CPU_FREQ_DEFAULT_GOV_USERSPACE is not set +CONFIG_CPU_FREQ_GOV_ATTR_SET=y +CONFIG_CPU_FREQ_GOV_COMMON=y +CONFIG_CPU_FREQ_GOV_CONSERVATIVE=y +CONFIG_CPU_FREQ_GOV_ONDEMAND=y +CONFIG_CPU_FREQ_GOV_PERFORMANCE=y +CONFIG_CPU_FREQ_GOV_POWERSAVE=y +CONFIG_CPU_FREQ_GOV_SCHEDUTIL=y +CONFIG_CPU_FREQ_GOV_USERSPACE=y +CONFIG_CPU_FREQ_STAT=y +CONFIG_CPU_FREQ_THERMAL=y +CONFIG_CPU_HAS_ASID=y +# CONFIG_CPU_HOTPLUG_STATE_CONTROL is not set +# CONFIG_CPU_ICACHE_DISABLE is not set +CONFIG_CPU_ICACHE_MISMATCH_WORKAROUND=y +CONFIG_CPU_IDLE=y +CONFIG_CPU_IDLE_GOV_HALTPOLL=y +CONFIG_CPU_IDLE_GOV_LADDER=y +CONFIG_CPU_IDLE_GOV_MENU=y +CONFIG_CPU_IDLE_GOV_TEO=y +CONFIG_CPU_IDLE_MULTIPLE_DRIVERS=y +CONFIG_CPU_IDLE_THERMAL=y +CONFIG_CPU_ISOLATION=y +CONFIG_CPU_LITTLE_ENDIAN=y +CONFIG_CPU_PABRT_V7=y +CONFIG_CPU_PJ4=y +CONFIG_CPU_PJ4B=y +CONFIG_CPU_PM=y +CONFIG_CPU_RMAP=y +CONFIG_CPU_SPECTRE=y +CONFIG_CPU_SUP_AMD=y +CONFIG_CPU_SUP_CENTAUR=y +CONFIG_CPU_SUP_HYGON=y +CONFIG_CPU_SUP_INTEL=y +CONFIG_CPU_SUP_ZHAOXIN=y +CONFIG_CPU_SW_DOMAIN_PAN=y +CONFIG_CPU_THERMAL=y +CONFIG_CPU_THUMB_CAPABLE=y +CONFIG_CPU_TLB_V7=y +CONFIG_CPU_V7=y +CONFIG_CRAMFS_BLOCKDEV=y +CONFIG_CRAMFS_MTD=y +CONFIG_CRASH_CORE=y +CONFIG_CRASH_DUMP=y +CONFIG_CRC16=y +CONFIG_CRC32=y +# CONFIG_CRC32_BIT is not set +# CONFIG_CRC32_SARWATE is not set +# CONFIG_CRC32_SELFTEST is not set +# CONFIG_CRC32_SLICEBY4 is not set +CONFIG_CRC32_SLICEBY8=y +CONFIG_CRC4=m +CONFIG_CRC64=m +CONFIG_CRC7=m +CONFIG_CRC8=m +CONFIG_CRC_CCITT=y +CONFIG_CRC_ITU_T=m +CONFIG_CRC_T10DIF=y +CONFIG_CROSS_MEMORY_ATTACH=y +CONFIG_CROS_EC=m +CONFIG_CROS_EC_CHARDEV=m +CONFIG_CROS_EC_DEBUGFS=m +CONFIG_CROS_EC_I2C=m +CONFIG_CROS_EC_ISHTP=m +CONFIG_CROS_EC_LIGHTBAR=m +CONFIG_CROS_EC_LPC=m +CONFIG_CROS_EC_PROTO=y +CONFIG_CROS_EC_RPMSG=m +CONFIG_CROS_EC_SENSORHUB=m +CONFIG_CROS_EC_SPI=m +CONFIG_CROS_EC_SYSFS=m +CONFIG_CROS_EC_TYPEC=m +CONFIG_CROS_EC_VBC=m +CONFIG_CROS_KBD_LED_BACKLIGHT=m +CONFIG_CROS_USBPD_LOGGER=m +CONFIG_CROS_USBPD_NOTIFY=m +CONFIG_CRYPTO=y +CONFIG_CRYPTO_842=m +CONFIG_CRYPTO_ACOMP2=y +CONFIG_CRYPTO_ADIANTUM=m +CONFIG_CRYPTO_AEAD=y +CONFIG_CRYPTO_AEAD2=y +CONFIG_CRYPTO_AEGIS128=m +CONFIG_CRYPTO_AEGIS128_AESNI_SSE2=m +CONFIG_CRYPTO_AEGIS128_SIMD=y +CONFIG_CRYPTO_AES=y +CONFIG_CRYPTO_AES_ARM=m +CONFIG_CRYPTO_AES_ARM64=m +CONFIG_CRYPTO_AES_ARM64_BS=m +CONFIG_CRYPTO_AES_ARM64_CE=m +CONFIG_CRYPTO_AES_ARM64_CE_BLK=m +CONFIG_CRYPTO_AES_ARM64_CE_CCM=m +CONFIG_CRYPTO_AES_ARM64_NEON_BLK=m +CONFIG_CRYPTO_AES_ARM_BS=m +CONFIG_CRYPTO_AES_ARM_CE=m +CONFIG_CRYPTO_AES_NI_INTEL=m +CONFIG_CRYPTO_AES_S390=m +CONFIG_CRYPTO_AES_TI=m +CONFIG_CRYPTO_AKCIPHER=y +CONFIG_CRYPTO_AKCIPHER2=y +CONFIG_CRYPTO_ALGAPI=y +CONFIG_CRYPTO_ALGAPI2=y +CONFIG_CRYPTO_ANSI_CPRNG=m +CONFIG_CRYPTO_ANUBIS=m +CONFIG_CRYPTO_ARC4=m +CONFIG_CRYPTO_ARCH_HAVE_LIB_BLAKE2S=m +CONFIG_CRYPTO_ARCH_HAVE_LIB_CHACHA=m +CONFIG_CRYPTO_ARCH_HAVE_LIB_CURVE25519=m +CONFIG_CRYPTO_ARCH_HAVE_LIB_POLY1305=m +CONFIG_CRYPTO_AUTHENC=m +CONFIG_CRYPTO_BLAKE2B=m +CONFIG_CRYPTO_BLAKE2S=m +CONFIG_CRYPTO_BLAKE2S_X86=m +CONFIG_CRYPTO_BLOWFISH=m +CONFIG_CRYPTO_BLOWFISH_COMMON=m +CONFIG_CRYPTO_BLOWFISH_X86_64=m +CONFIG_CRYPTO_CAMELLIA=m +CONFIG_CRYPTO_CAMELLIA_AESNI_AVX2_X86_64=m +CONFIG_CRYPTO_CAMELLIA_AESNI_AVX_X86_64=m +CONFIG_CRYPTO_CAMELLIA_X86_64=m +CONFIG_CRYPTO_CAST5=m +CONFIG_CRYPTO_CAST5_AVX_X86_64=m +CONFIG_CRYPTO_CAST6=m +CONFIG_CRYPTO_CAST6_AVX_X86_64=m +CONFIG_CRYPTO_CAST_COMMON=m +CONFIG_CRYPTO_CBC=y +CONFIG_CRYPTO_CCM=m +CONFIG_CRYPTO_CFB=m +CONFIG_CRYPTO_CHACHA20=m +CONFIG_CRYPTO_CHACHA20POLY1305=m +CONFIG_CRYPTO_CHACHA20_NEON=m +CONFIG_CRYPTO_CHACHA20_X86_64=m +CONFIG_CRYPTO_CMAC=m +CONFIG_CRYPTO_CRC32=m +CONFIG_CRYPTO_CRC32C=y +CONFIG_CRYPTO_CRC32C_INTEL=y +CONFIG_CRYPTO_CRC32C_VPMSUM=m +CONFIG_CRYPTO_CRC32_ARM_CE=m +CONFIG_CRYPTO_CRC32_PCLMUL=m +CONFIG_CRYPTO_CRC32_S390=m +CONFIG_CRYPTO_CRCT10DIF=y +CONFIG_CRYPTO_CRCT10DIF_ARM64_CE=m +CONFIG_CRYPTO_CRCT10DIF_ARM_CE=m +CONFIG_CRYPTO_CRCT10DIF_PCLMUL=m +CONFIG_CRYPTO_CRCT10DIF_VPMSUM=m +CONFIG_CRYPTO_CRYPTD=m +CONFIG_CRYPTO_CTR=y +CONFIG_CRYPTO_CTS=y +CONFIG_CRYPTO_CURVE25519=m +CONFIG_CRYPTO_CURVE25519_NEON=m +CONFIG_CRYPTO_CURVE25519_X86=m +CONFIG_CRYPTO_DES=m +CONFIG_CRYPTO_DES3_EDE_X86_64=m +CONFIG_CRYPTO_DES_S390=m +CONFIG_CRYPTO_DEV_ALLWINNER=y +CONFIG_CRYPTO_DEV_AMLOGIC_GXL=m +# CONFIG_CRYPTO_DEV_AMLOGIC_GXL_DEBUG is not set +CONFIG_CRYPTO_DEV_ARTPEC6=m +CONFIG_CRYPTO_DEV_ATMEL_I2C=m +CONFIG_CRYPTO_DEV_BCM_SPU=m +CONFIG_CRYPTO_DEV_CAVIUM_ZIP=m +CONFIG_CRYPTO_DEV_CCP=y +CONFIG_CRYPTO_DEV_CCP_CRYPTO=m +CONFIG_CRYPTO_DEV_CCP_DD=m +# CONFIG_CRYPTO_DEV_CCP_DEBUGFS is not set +CONFIG_CRYPTO_DEV_CCREE=m +CONFIG_CRYPTO_DEV_CHELSIO=m +CONFIG_CRYPTO_DEV_CPT=m +CONFIG_CRYPTO_DEV_EXYNOS_RNG=m +CONFIG_CRYPTO_DEV_FSL_CAAM=m +CONFIG_CRYPTO_DEV_FSL_CAAM_AHASH_API=y +CONFIG_CRYPTO_DEV_FSL_CAAM_AHASH_API_DESC=m +CONFIG_CRYPTO_DEV_FSL_CAAM_COMMON=m +CONFIG_CRYPTO_DEV_FSL_CAAM_CRYPTO_API=y +CONFIG_CRYPTO_DEV_FSL_CAAM_CRYPTO_API_DESC=m +CONFIG_CRYPTO_DEV_FSL_CAAM_CRYPTO_API_QI=y +# CONFIG_CRYPTO_DEV_FSL_CAAM_DEBUG is not set +CONFIG_CRYPTO_DEV_FSL_CAAM_INTC=y +CONFIG_CRYPTO_DEV_FSL_CAAM_INTC_COUNT_THLD=255 +CONFIG_CRYPTO_DEV_FSL_CAAM_INTC_TIME_THLD=2048 +CONFIG_CRYPTO_DEV_FSL_CAAM_JR=m +CONFIG_CRYPTO_DEV_FSL_CAAM_PKC_API=y +CONFIG_CRYPTO_DEV_FSL_CAAM_RINGSIZE=9 +CONFIG_CRYPTO_DEV_FSL_CAAM_RNG_API=y +CONFIG_CRYPTO_DEV_FSL_DPAA2_CAAM=m +CONFIG_CRYPTO_DEV_HIFN_795X=m +CONFIG_CRYPTO_DEV_HIFN_795X_RNG=y +CONFIG_CRYPTO_DEV_HISI_HPRE=m +CONFIG_CRYPTO_DEV_HISI_QM=m +CONFIG_CRYPTO_DEV_HISI_SEC=m +CONFIG_CRYPTO_DEV_HISI_SEC2=m +CONFIG_CRYPTO_DEV_HISI_ZIP=m +CONFIG_CRYPTO_DEV_MARVELL=m +CONFIG_CRYPTO_DEV_MARVELL_CESA=m +CONFIG_CRYPTO_DEV_MEDIATEK=m +# CONFIG_CRYPTO_DEV_MXS_DCP is not set +CONFIG_CRYPTO_DEV_NITROX=m +CONFIG_CRYPTO_DEV_NX=y +CONFIG_CRYPTO_DEV_NX_COMPRESS=m +CONFIG_CRYPTO_DEV_NX_COMPRESS_POWERNV=m +CONFIG_CRYPTO_DEV_NX_COMPRESS_PSERIES=m +CONFIG_CRYPTO_DEV_OCTEONTX_CPT=m +CONFIG_CRYPTO_DEV_OMAP=m +CONFIG_CRYPTO_DEV_OMAP_AES=m +CONFIG_CRYPTO_DEV_OMAP_DES=m +CONFIG_CRYPTO_DEV_OMAP_SHAM=m +CONFIG_CRYPTO_DEV_PADLOCK=y +CONFIG_CRYPTO_DEV_PADLOCK_AES=m +CONFIG_CRYPTO_DEV_PADLOCK_SHA=m +CONFIG_CRYPTO_DEV_QAT=m +CONFIG_CRYPTO_DEV_QAT_C3XXX=m +CONFIG_CRYPTO_DEV_QAT_C3XXXVF=m +CONFIG_CRYPTO_DEV_QAT_C62X=m +CONFIG_CRYPTO_DEV_QAT_C62XVF=m +CONFIG_CRYPTO_DEV_QAT_DH895xCC=m +CONFIG_CRYPTO_DEV_QAT_DH895xCCVF=m +CONFIG_CRYPTO_DEV_QCE=m +CONFIG_CRYPTO_DEV_QCE_ENABLE_ALL=y +# CONFIG_CRYPTO_DEV_QCE_ENABLE_SHA is not set +# CONFIG_CRYPTO_DEV_QCE_ENABLE_SKCIPHER is not set +CONFIG_CRYPTO_DEV_QCE_SHA=y +CONFIG_CRYPTO_DEV_QCE_SKCIPHER=y +CONFIG_CRYPTO_DEV_QCE_SW_MAX_LEN=512 +CONFIG_CRYPTO_DEV_QCOM_RNG=m +CONFIG_CRYPTO_DEV_ROCKCHIP=m +CONFIG_CRYPTO_DEV_S5P=m +CONFIG_CRYPTO_DEV_SAHARA=m +CONFIG_CRYPTO_DEV_SP_CCP=y +CONFIG_CRYPTO_DEV_SP_PSP=y +CONFIG_CRYPTO_DEV_SUN4I_SS=m +CONFIG_CRYPTO_DEV_SUN4I_SS_PRNG=y +CONFIG_CRYPTO_DEV_SUN8I_CE=m +# CONFIG_CRYPTO_DEV_SUN8I_CE_DEBUG is not set +CONFIG_CRYPTO_DEV_SUN8I_SS=m +# CONFIG_CRYPTO_DEV_SUN8I_SS_DEBUG is not set +CONFIG_CRYPTO_DEV_VIRTIO=m +CONFIG_CRYPTO_DEV_VMX=y +CONFIG_CRYPTO_DEV_VMX_ENCRYPT=m +CONFIG_CRYPTO_DEV_ZYNQMP_AES=m +CONFIG_CRYPTO_DH=y +CONFIG_CRYPTO_DRBG=y +CONFIG_CRYPTO_DRBG_CTR=y +CONFIG_CRYPTO_DRBG_HASH=y +CONFIG_CRYPTO_DRBG_HMAC=y +CONFIG_CRYPTO_DRBG_MENU=y +CONFIG_CRYPTO_ECB=y +CONFIG_CRYPTO_ECC=m +CONFIG_CRYPTO_ECDH=m +CONFIG_CRYPTO_ECHAINIV=m +CONFIG_CRYPTO_ECRDSA=m +CONFIG_CRYPTO_ENGINE=m +CONFIG_CRYPTO_ESSIV=m +CONFIG_CRYPTO_FCRYPT=m +CONFIG_CRYPTO_GCM=y +CONFIG_CRYPTO_GF128MUL=y +CONFIG_CRYPTO_GHASH=y +CONFIG_CRYPTO_GHASH_ARM64_CE=m +CONFIG_CRYPTO_GHASH_ARM_CE=m +CONFIG_CRYPTO_GHASH_CLMUL_NI_INTEL=m +CONFIG_CRYPTO_GHASH_S390=m +CONFIG_CRYPTO_GLUE_HELPER_X86=m +CONFIG_CRYPTO_HASH=y +CONFIG_CRYPTO_HASH2=y +CONFIG_CRYPTO_HASH_INFO=y +CONFIG_CRYPTO_HMAC=y +CONFIG_CRYPTO_HW=y +CONFIG_CRYPTO_JITTERENTROPY=y +CONFIG_CRYPTO_KEYWRAP=m +CONFIG_CRYPTO_KHAZAD=m +CONFIG_CRYPTO_KPP=y +CONFIG_CRYPTO_KPP2=y +CONFIG_CRYPTO_LIB_AES=y +CONFIG_CRYPTO_LIB_ARC4=m +CONFIG_CRYPTO_LIB_BLAKE2S=m +CONFIG_CRYPTO_LIB_BLAKE2S_GENERIC=m +CONFIG_CRYPTO_LIB_CHACHA=m +CONFIG_CRYPTO_LIB_CHACHA20POLY1305=m +CONFIG_CRYPTO_LIB_CHACHA_GENERIC=m +CONFIG_CRYPTO_LIB_CURVE25519=m +CONFIG_CRYPTO_LIB_CURVE25519_GENERIC=m +CONFIG_CRYPTO_LIB_DES=m +CONFIG_CRYPTO_LIB_POLY1305=m +CONFIG_CRYPTO_LIB_POLY1305_GENERIC=m +CONFIG_CRYPTO_LIB_SHA256=y +CONFIG_CRYPTO_LRW=m +CONFIG_CRYPTO_LZ4=m +CONFIG_CRYPTO_LZ4HC=m +CONFIG_CRYPTO_LZO=y +CONFIG_CRYPTO_MANAGER=y +CONFIG_CRYPTO_MANAGER2=y +CONFIG_CRYPTO_MANAGER_DISABLE_TESTS=y +CONFIG_CRYPTO_MD4=m +CONFIG_CRYPTO_MD5=y +CONFIG_CRYPTO_MD5_PPC=m +CONFIG_CRYPTO_MICHAEL_MIC=m +CONFIG_CRYPTO_NHPOLY1305=m +CONFIG_CRYPTO_NHPOLY1305_AVX2=m +CONFIG_CRYPTO_NHPOLY1305_NEON=m +CONFIG_CRYPTO_NHPOLY1305_SSE2=m +CONFIG_CRYPTO_NULL=y +CONFIG_CRYPTO_NULL2=y +CONFIG_CRYPTO_OFB=m +CONFIG_CRYPTO_PAES_S390=m +CONFIG_CRYPTO_PCBC=m +CONFIG_CRYPTO_PCRYPT=m +CONFIG_CRYPTO_POLY1305=m +CONFIG_CRYPTO_POLY1305_ARM=m +CONFIG_CRYPTO_POLY1305_NEON=m +CONFIG_CRYPTO_POLY1305_X86_64=m +CONFIG_CRYPTO_RMD128=m +CONFIG_CRYPTO_RMD160=m +CONFIG_CRYPTO_RMD256=m +CONFIG_CRYPTO_RMD320=m +CONFIG_CRYPTO_RNG=y +CONFIG_CRYPTO_RNG2=y +CONFIG_CRYPTO_RNG_DEFAULT=y +CONFIG_CRYPTO_RSA=y +CONFIG_CRYPTO_SALSA20=m +CONFIG_CRYPTO_SEED=m +CONFIG_CRYPTO_SEQIV=y +CONFIG_CRYPTO_SERPENT=m +CONFIG_CRYPTO_SERPENT_AVX2_X86_64=m +CONFIG_CRYPTO_SERPENT_AVX_X86_64=m +CONFIG_CRYPTO_SERPENT_SSE2_X86_64=m +CONFIG_CRYPTO_SHA1=y +CONFIG_CRYPTO_SHA1_ARM=m +CONFIG_CRYPTO_SHA1_ARM64_CE=m +CONFIG_CRYPTO_SHA1_ARM_CE=m +CONFIG_CRYPTO_SHA1_ARM_NEON=m +CONFIG_CRYPTO_SHA1_PPC=m +CONFIG_CRYPTO_SHA1_S390=m +CONFIG_CRYPTO_SHA1_SSSE3=m +CONFIG_CRYPTO_SHA256=y +CONFIG_CRYPTO_SHA256_ARM=m +CONFIG_CRYPTO_SHA256_ARM64=m +CONFIG_CRYPTO_SHA256_S390=m +CONFIG_CRYPTO_SHA256_SSSE3=m +CONFIG_CRYPTO_SHA2_ARM64_CE=m +CONFIG_CRYPTO_SHA2_ARM_CE=m +CONFIG_CRYPTO_SHA3=m +CONFIG_CRYPTO_SHA3_256_S390=m +CONFIG_CRYPTO_SHA3_512_S390=m +CONFIG_CRYPTO_SHA3_ARM64=m +CONFIG_CRYPTO_SHA512=y +CONFIG_CRYPTO_SHA512_ARM=m +CONFIG_CRYPTO_SHA512_ARM64=m +CONFIG_CRYPTO_SHA512_ARM64_CE=m +CONFIG_CRYPTO_SHA512_S390=m +CONFIG_CRYPTO_SHA512_SSSE3=m +CONFIG_CRYPTO_SIMD=m +CONFIG_CRYPTO_SKCIPHER=y +CONFIG_CRYPTO_SKCIPHER2=y +CONFIG_CRYPTO_SM3=m +CONFIG_CRYPTO_SM3_ARM64_CE=m +CONFIG_CRYPTO_SM4=m +CONFIG_CRYPTO_SM4_ARM64_CE=m +CONFIG_CRYPTO_STATS=y +CONFIG_CRYPTO_STREEBOG=m +CONFIG_CRYPTO_TEA=m +CONFIG_CRYPTO_TEST=m +CONFIG_CRYPTO_TGR192=m +CONFIG_CRYPTO_TWOFISH=m +CONFIG_CRYPTO_TWOFISH_AVX_X86_64=m +CONFIG_CRYPTO_TWOFISH_COMMON=m +CONFIG_CRYPTO_TWOFISH_X86_64=m +CONFIG_CRYPTO_TWOFISH_X86_64_3WAY=m +CONFIG_CRYPTO_USER=m +CONFIG_CRYPTO_USER_API=m +CONFIG_CRYPTO_USER_API_AEAD=m +CONFIG_CRYPTO_USER_API_HASH=m +CONFIG_CRYPTO_USER_API_RNG=m +CONFIG_CRYPTO_USER_API_SKCIPHER=m +CONFIG_CRYPTO_VMAC=m +CONFIG_CRYPTO_VPMSUM_TESTER=m +CONFIG_CRYPTO_WP512=m +CONFIG_CRYPTO_XCBC=m +CONFIG_CRYPTO_XTS=y +CONFIG_CRYPTO_XXHASH=m +CONFIG_CRYPTO_ZSTD=m +CONFIG_CS89x0=m +CONFIG_CS89x0_PLATFORM=y +CONFIG_CTCM=m +CONFIG_CUSE=m +CONFIG_CW1200=m +CONFIG_CW1200_WLAN_SDIO=m +CONFIG_CW1200_WLAN_SPI=m +CONFIG_CXD2880_SPI_DRV=m +CONFIG_CXL=m +CONFIG_CXLFLASH=m +CONFIG_CXL_BASE=y +CONFIG_CX_ECAT=m +CONFIG_CYCLADES=m +CONFIG_CYPRESS_FIRMWARE=m +# CONFIG_CYZ_INTR is not set +CONFIG_DA280=m +CONFIG_DA311=m +CONFIG_DA9052_WATCHDOG=m +CONFIG_DA9055_WATCHDOG=m +CONFIG_DA9062_THERMAL=m +CONFIG_DA9062_WATCHDOG=m +CONFIG_DA9063_WATCHDOG=m +CONFIG_DA9150_GPADC=m +CONFIG_DASD=m +CONFIG_DASD_DIAG=m +CONFIG_DASD_ECKD=m +CONFIG_DASD_EER=y +CONFIG_DASD_FBA=m +CONFIG_DASD_PROFILE=y +CONFIG_DATA_SHIFT=16 +CONFIG_DAVICOM_PHY=m +CONFIG_DAX=y +CONFIG_DAX_DRIVER=y +CONFIG_DCA=m +CONFIG_DCACHE_WORD_ACCESS=y +CONFIG_DCB=y +CONFIG_DCDBAS=m +CONFIG_DCSSBLK=m +CONFIG_DDR=y +CONFIG_DE2104X=m +CONFIG_DE2104X_DSL=0 +CONFIG_DE4X5=m +CONFIG_DEBUGGER=y +CONFIG_DEBUG_ALIGN_RODATA=y +# CONFIG_DEBUG_ATOMIC_SLEEP is not set +# CONFIG_DEBUG_BLOCK_EXT_DEVT is not set +# CONFIG_DEBUG_BOOT_PARAMS is not set +CONFIG_DEBUG_BUGVERBOSE=y +# CONFIG_DEBUG_CREDENTIALS is not set +# CONFIG_DEBUG_DEVRES is not set +# CONFIG_DEBUG_DRIVER is not set +# CONFIG_DEBUG_EFI is not set +# CONFIG_DEBUG_ENTRY is not set +# CONFIG_DEBUG_FORCE_WEAK_PER_CPU is not set +CONFIG_DEBUG_FS=y +# CONFIG_DEBUG_GPIO is not set +# CONFIG_DEBUG_HIGHMEM is not set +# CONFIG_DEBUG_HOTPLUG_CPU0 is not set +CONFIG_DEBUG_INFO=y +CONFIG_DEBUG_INFO_BTF=y +# CONFIG_DEBUG_INFO_COMPRESSED is not set +CONFIG_DEBUG_INFO_DWARF4=y +# CONFIG_DEBUG_INFO_REDUCED is not set +# CONFIG_DEBUG_INFO_SPLIT is not set +CONFIG_DEBUG_KERNEL=y +# CONFIG_DEBUG_KERNEL_DC is not set +# CONFIG_DEBUG_KMEMLEAK is not set +# CONFIG_DEBUG_KOBJECT is not set +# CONFIG_DEBUG_LIST is not set +# CONFIG_DEBUG_LL is not set +CONFIG_DEBUG_LL_INCLUDE="mach/debug-macro.S" +# CONFIG_DEBUG_LOCKING_API_SELFTESTS is not set +# CONFIG_DEBUG_LOCK_ALLOC is not set +# CONFIG_DEBUG_MEMORY_INIT is not set +CONFIG_DEBUG_MISC=y +# CONFIG_DEBUG_MUTEXES is not set +# CONFIG_DEBUG_NMI_SELFTEST is not set +# CONFIG_DEBUG_NOTIFIERS is not set +# CONFIG_DEBUG_OBJECTS is not set +# CONFIG_DEBUG_PAGEALLOC is not set +# CONFIG_DEBUG_PAGE_REF is not set +# CONFIG_DEBUG_PERF_USE_VMALLOC is not set +# CONFIG_DEBUG_PER_CPU_MAPS is not set +# CONFIG_DEBUG_PINCTRL is not set +# CONFIG_DEBUG_PLIST is not set +# CONFIG_DEBUG_PREEMPT is not set +# CONFIG_DEBUG_RODATA_TEST is not set +# CONFIG_DEBUG_RSEQ is not set +# CONFIG_DEBUG_RT_MUTEXES is not set +# CONFIG_DEBUG_RWSEMS is not set +# CONFIG_DEBUG_SECTION_MISMATCH is not set +# CONFIG_DEBUG_SG is not set +# CONFIG_DEBUG_SHIRQ is not set +# CONFIG_DEBUG_SPINLOCK is not set +# CONFIG_DEBUG_STACKOVERFLOW is not set +# CONFIG_DEBUG_STACK_USAGE is not set +# CONFIG_DEBUG_TEST_DRIVER_REMOVE is not set +# CONFIG_DEBUG_TIMEKEEPING is not set +# CONFIG_DEBUG_TLBFLUSH is not set +# CONFIG_DEBUG_USER is not set +CONFIG_DEBUG_VF_UART_PORT=1 +# CONFIG_DEBUG_VIRTUAL is not set +# CONFIG_DEBUG_VM is not set +# CONFIG_DEBUG_VM_PGTABLE is not set +# CONFIG_DEBUG_WQ_FORCE_RR_CPU is not set +# CONFIG_DEBUG_WW_MUTEX_SLOWPATH is not set +CONFIG_DEBUG_WX=y +CONFIG_DECNET_NF_GRABULATOR=m +# CONFIG_DECNET_ROUTER is not set +CONFIG_DECOMPRESS_BZIP2=y +CONFIG_DECOMPRESS_GZIP=y +CONFIG_DECOMPRESS_LZ4=y +CONFIG_DECOMPRESS_LZMA=y +CONFIG_DECOMPRESS_LZO=y +CONFIG_DECOMPRESS_XZ=y +CONFIG_DEFAULT_CUBIC=y +CONFIG_DEFAULT_HOSTNAME="(none)" +CONFIG_DEFAULT_HUNG_TASK_TIMEOUT=120 +CONFIG_DEFAULT_INIT="" +# CONFIG_DEFAULT_RENO is not set +CONFIG_DEFAULT_SECURITY_APPARMOR=y +# CONFIG_DEFAULT_SECURITY_DAC is not set +# CONFIG_DEFAULT_SECURITY_SELINUX is not set +# CONFIG_DEFAULT_SECURITY_SMACK is not set +# CONFIG_DEFAULT_SECURITY_TOMOYO is not set +CONFIG_DEFAULT_TCP_CONG="cubic" +# CONFIG_DEFERRED_STRUCT_PAGE_INIT is not set +CONFIG_DEFXX=m +# CONFIG_DEFXX_MMIO is not set +CONFIG_DELL_LAPTOP=m +CONFIG_DELL_RBTN=m +CONFIG_DELL_RBU=m +CONFIG_DELL_SMBIOS=m +CONFIG_DELL_SMBIOS_SMM=y +CONFIG_DELL_SMBIOS_WMI=y +CONFIG_DELL_SMO8800=m +CONFIG_DELL_UART_BACKLIGHT=m +CONFIG_DELL_WMI=m +CONFIG_DELL_WMI_AIO=m +CONFIG_DELL_WMI_DESCRIPTOR=m +CONFIG_DELL_WMI_LED=m +# CONFIG_DEPRECATED_PARAM_STRUCT is not set +CONFIG_DETECT_HUNG_TASK=y +CONFIG_DEVFREQ_EVENT_EXYNOS_NOCP=y +CONFIG_DEVFREQ_EVENT_EXYNOS_PPMU=y +CONFIG_DEVFREQ_EVENT_ROCKCHIP_DFI=m +CONFIG_DEVFREQ_GOV_PASSIVE=y +CONFIG_DEVFREQ_GOV_PERFORMANCE=y +CONFIG_DEVFREQ_GOV_POWERSAVE=y +CONFIG_DEVFREQ_GOV_SIMPLE_ONDEMAND=y +CONFIG_DEVFREQ_GOV_USERSPACE=y +CONFIG_DEVFREQ_THERMAL=y +CONFIG_DEVICE_PRIVATE=y +# CONFIG_DEVKMEM is not set +CONFIG_DEVMEM=y +CONFIG_DEVPORT=y +CONFIG_DEVTMPFS=y +CONFIG_DEVTMPFS_MOUNT=y +CONFIG_DEV_APPLETALK=m +CONFIG_DEV_COREDUMP=y +CONFIG_DEV_DAX=m +CONFIG_DEV_DAX_HMEM=m +CONFIG_DEV_DAX_KMEM=m +CONFIG_DEV_DAX_PMEM=m +CONFIG_DEV_DAX_PMEM_COMPAT=m +CONFIG_DEV_PAGEMAP_OPS=y +CONFIG_DHT11=m +CONFIG_DIAG288_WATCHDOG=m +CONFIG_DIMLIB=y +CONFIG_DL2K=m +CONFIG_DLCI=m +CONFIG_DLCI_MAX=8 +CONFIG_DLHL60D=m +CONFIG_DLM=m +# CONFIG_DLM_DEBUG is not set +CONFIG_DLN2_ADC=m +CONFIG_DM9000=m +# CONFIG_DM9000_FORCE_SIMPLE_PHY_POLL is not set +CONFIG_DM9102=m +CONFIG_DMABUF_HEAPS=y +CONFIG_DMABUF_HEAPS_CMA=y +CONFIG_DMABUF_HEAPS_SYSTEM=y +# CONFIG_DMABUF_MOVE_NOTIFY is not set +# CONFIG_DMABUF_SELFTESTS is not set +# CONFIG_DMADEVICES_DEBUG is not set +CONFIG_DMARD06=m +CONFIG_DMARD09=m +CONFIG_DMARD10=m +CONFIG_DMAR_TABLE=y +# CONFIG_DMATEST is not set +CONFIG_DMA_ACPI=y +# CONFIG_DMA_API_DEBUG is not set +CONFIG_DMA_BCM2835=y +CONFIG_DMA_COHERENT_POOL=y +CONFIG_DMA_DECLARE_COHERENT=y +CONFIG_DMA_DIRECT_REMAP=y +CONFIG_DMA_ENGINE=y +CONFIG_DMA_ENGINE_RAID=y +# CONFIG_DMA_FENCE_TRACE is not set +CONFIG_DMA_NONCOHERENT_MMAP=y +CONFIG_DMA_OF=y +CONFIG_DMA_OMAP=y +CONFIG_DMA_REMAP=y +CONFIG_DMA_SHARED_BUFFER=y +CONFIG_DMA_SUN6I=m +CONFIG_DMA_VIRT_OPS=y +CONFIG_DMI=y +CONFIG_DMIID=y +CONFIG_DMI_SCAN_MACHINE_NON_EFI_FALLBACK=y +CONFIG_DMI_SYSFS=m +CONFIG_DM_BIO_PRISON=m +CONFIG_DM_BUFIO=m +CONFIG_DM_CACHE=m +CONFIG_DM_CACHE_SMQ=m +CONFIG_DM_CLONE=m +CONFIG_DM_CRYPT=m +# CONFIG_DM_DEBUG_BLOCK_MANAGER_LOCKING is not set +CONFIG_DM_DELAY=m +# CONFIG_DM_DUST is not set +CONFIG_DM_EBS=m +CONFIG_DM_ERA=m +CONFIG_DM_FLAKEY=m +CONFIG_DM_INIT=y +CONFIG_DM_INTEGRITY=m +CONFIG_DM_LOG_USERSPACE=m +CONFIG_DM_LOG_WRITES=m +CONFIG_DM_MIRROR=m +CONFIG_DM_MULTIPATH=m +CONFIG_DM_MULTIPATH_HST=m +CONFIG_DM_MULTIPATH_QL=m +CONFIG_DM_MULTIPATH_ST=m +CONFIG_DM_PERSISTENT_DATA=m +CONFIG_DM_RAID=m +CONFIG_DM_SNAPSHOT=m +CONFIG_DM_SWITCH=m +CONFIG_DM_THIN_PROVISIONING=m +CONFIG_DM_UEVENT=y +CONFIG_DM_UNSTRIPED=m +CONFIG_DM_VERITY=m +# CONFIG_DM_VERITY_FEC is not set +CONFIG_DM_VERITY_VERIFY_ROOTHASH_SIG=y +CONFIG_DM_WRITECACHE=m +CONFIG_DM_ZERO=m +CONFIG_DM_ZONED=m +CONFIG_DNOTIFY=y +CONFIG_DNS_RESOLVER=y +CONFIG_DOVE_CLK=y +CONFIG_DOVE_THERMAL=m +CONFIG_DP83640_PHY=m +CONFIG_DP83822_PHY=m +CONFIG_DP83848_PHY=m +CONFIG_DP83867_PHY=m +CONFIG_DP83869_PHY=m +CONFIG_DP83TC811_PHY=m +CONFIG_DPAA2_CONSOLE=m +CONFIG_DPAA_ERRATUM_A050385=y +# CONFIG_DPM_WATCHDOG is not set +CONFIG_DPOT_DAC=m +CONFIG_DPS310=m +CONFIG_DPTF_POWER=m +CONFIG_DQL=y +CONFIG_DRA752_THERMAL=y +CONFIG_DRAGONRISE_FF=y +# CONFIG_DRBD_FAULT_INJECTION is not set +CONFIG_DRM=m +CONFIG_DRM_AMDGPU_CIK=y +# CONFIG_DRM_AMDGPU_GART_DEBUGFS is not set +CONFIG_DRM_AMDGPU_SI=y +CONFIG_DRM_AMDGPU_USERPTR=y +CONFIG_DRM_AMD_ACP=y +CONFIG_DRM_AMD_DC=y +CONFIG_DRM_AMD_DC_DCN=y +CONFIG_DRM_AMD_DC_HDCP=y +CONFIG_DRM_ANALOGIX_ANX6345=m +CONFIG_DRM_ANALOGIX_DP=m +CONFIG_DRM_ARCPGU=m +CONFIG_DRM_ARMADA=m +CONFIG_DRM_ASPEED_GFX=m +CONFIG_DRM_ATMEL_HLCDC=m +CONFIG_DRM_BOCHS=m +CONFIG_DRM_BRIDGE=y +CONFIG_DRM_CDNS_DSI=m +CONFIG_DRM_CHRONTEL_CH7033=m +# CONFIG_DRM_DEBUG_DP_MST_TOPOLOGY_REFS is not set +# CONFIG_DRM_DEBUG_SELFTEST is not set +CONFIG_DRM_DISPLAY_CONNECTOR=m +CONFIG_DRM_DW_HDMI=m +CONFIG_DRM_DW_HDMI_AHB_AUDIO=m +CONFIG_DRM_DW_HDMI_CEC=m +CONFIG_DRM_DW_HDMI_I2S_AUDIO=m +CONFIG_DRM_DW_MIPI_DSI=m +CONFIG_DRM_ETNAVIV_THERMAL=y +CONFIG_DRM_EXYNOS=m +CONFIG_DRM_EXYNOS5433_DECON=y +# CONFIG_DRM_EXYNOS7_DECON is not set +CONFIG_DRM_EXYNOS_DSI=y +CONFIG_DRM_EXYNOS_FIMC=y +# CONFIG_DRM_EXYNOS_FIMD is not set +CONFIG_DRM_EXYNOS_HDMI=y +CONFIG_DRM_EXYNOS_IPP=y +CONFIG_DRM_EXYNOS_MIC=y +CONFIG_DRM_EXYNOS_MIXER=y +CONFIG_DRM_EXYNOS_ROTATOR=y +CONFIG_DRM_EXYNOS_SCALER=y +# CONFIG_DRM_EXYNOS_VIDI is not set +CONFIG_DRM_FBDEV_EMULATION=y +# CONFIG_DRM_FBDEV_LEAK_PHYS_SMEM is not set +CONFIG_DRM_FBDEV_OVERALLOC=100 +CONFIG_DRM_FSL_DCU=m +CONFIG_DRM_GEM_CMA_HELPER=y +CONFIG_DRM_GEM_SHMEM_HELPER=y +CONFIG_DRM_GM12U320=m +CONFIG_DRM_GMA3600=y +CONFIG_DRM_GMA500=m +CONFIG_DRM_GMA600=y +CONFIG_DRM_HDLCD=m +# CONFIG_DRM_HDLCD_SHOW_UNDERRUN is not set +CONFIG_DRM_HISI_HIBMC=m +CONFIG_DRM_HISI_KIRIN=m +CONFIG_DRM_I2C_ADV7511=m +CONFIG_DRM_I2C_ADV7511_AUDIO=y +CONFIG_DRM_I2C_ADV7511_CEC=y +CONFIG_DRM_I915=m +CONFIG_DRM_I915_CAPTURE_ERROR=y +CONFIG_DRM_I915_COMPRESS_ERROR=y +# CONFIG_DRM_I915_DEBUG is not set +# CONFIG_DRM_I915_DEBUG_GUC is not set +# CONFIG_DRM_I915_DEBUG_MMIO is not set +# CONFIG_DRM_I915_DEBUG_RUNTIME_PM is not set +# CONFIG_DRM_I915_DEBUG_VBLANK_EVADE is not set +CONFIG_DRM_I915_FENCE_TIMEOUT=10000 +CONFIG_DRM_I915_FORCE_PROBE="" +CONFIG_DRM_I915_GVT=y +CONFIG_DRM_I915_GVT_KVMGT=m +CONFIG_DRM_I915_HEARTBEAT_INTERVAL=2500 +# CONFIG_DRM_I915_LOW_LEVEL_TRACEPOINTS is not set +CONFIG_DRM_I915_MAX_REQUEST_BUSYWAIT=8000 +CONFIG_DRM_I915_PREEMPT_TIMEOUT=640 +# CONFIG_DRM_I915_SELFTEST is not set +CONFIG_DRM_I915_STOP_TIMEOUT=100 +# CONFIG_DRM_I915_SW_FENCE_CHECK_DAG is not set +# CONFIG_DRM_I915_SW_FENCE_DEBUG_OBJECTS is not set +CONFIG_DRM_I915_TIMESLICE_DURATION=1 +CONFIG_DRM_I915_USERFAULT_AUTOSUSPEND=250 +CONFIG_DRM_I915_USERPTR=y +# CONFIG_DRM_I915_WERROR is not set +CONFIG_DRM_IMX=m +CONFIG_DRM_IMX_HDMI=m +CONFIG_DRM_IMX_LDB=m +CONFIG_DRM_IMX_PARALLEL_DISPLAY=m +CONFIG_DRM_IMX_TVE=m +CONFIG_DRM_KMS_CMA_HELPER=y +CONFIG_DRM_KMS_FB_HELPER=y +CONFIG_DRM_KMS_HELPER=m +CONFIG_DRM_KOMEDA=m +# CONFIG_DRM_LEGACY is not set +CONFIG_DRM_LIMA=m +CONFIG_DRM_LOAD_EDID_FIRMWARE=y +CONFIG_DRM_LVDS_CODEC=m +CONFIG_DRM_MALI_DISPLAY=m +CONFIG_DRM_MCDE=m +CONFIG_DRM_MEDIATEK=m +CONFIG_DRM_MEDIATEK_HDMI=m +CONFIG_DRM_MEGACHIPS_STDPXXXX_GE_B850V3_FW=m +CONFIG_DRM_MESON=m +CONFIG_DRM_MESON_DW_HDMI=m +CONFIG_DRM_MIPI_DBI=m +CONFIG_DRM_MIPI_DSI=y +CONFIG_DRM_MSM=m +CONFIG_DRM_MSM_DSI=y +CONFIG_DRM_MSM_DSI_10NM_PHY=y +CONFIG_DRM_MSM_DSI_14NM_PHY=y +CONFIG_DRM_MSM_DSI_20NM_PHY=y +CONFIG_DRM_MSM_DSI_28NM_8960_PHY=y +CONFIG_DRM_MSM_DSI_28NM_PHY=y +CONFIG_DRM_MSM_DSI_PLL=y +CONFIG_DRM_MSM_GPU_STATE=y +# CONFIG_DRM_MSM_GPU_SUDO is not set +CONFIG_DRM_MSM_HDMI_HDCP=y +# CONFIG_DRM_MSM_REGISTER_LOGGING is not set +CONFIG_DRM_MXS=y +CONFIG_DRM_MXSFB=m +CONFIG_DRM_NOUVEAU_BACKLIGHT=y +# CONFIG_DRM_NOUVEAU_SVM is not set +CONFIG_DRM_NWL_MIPI_DSI=m +CONFIG_DRM_NXP_PTN3460=m +# CONFIG_DRM_OMAP is not set +CONFIG_DRM_PANEL=y +CONFIG_DRM_PANEL_ARM_VERSATILE=m +CONFIG_DRM_PANEL_ASUS_Z00T_TM5P5_NT35596=m +CONFIG_DRM_PANEL_BOE_HIMAX8279D=m +CONFIG_DRM_PANEL_BOE_TV101WUM_NL6=m +CONFIG_DRM_PANEL_BRIDGE=y +CONFIG_DRM_PANEL_ELIDA_KD35T133=m +CONFIG_DRM_PANEL_FEIXIN_K101_IM2BA02=m +CONFIG_DRM_PANEL_FEIYANG_FY07024DI26A30D=m +CONFIG_DRM_PANEL_ILITEK_IL9322=m +CONFIG_DRM_PANEL_ILITEK_ILI9881C=m +CONFIG_DRM_PANEL_INNOLUX_P079ZCA=m +CONFIG_DRM_PANEL_JDI_LT070ME05000=m +CONFIG_DRM_PANEL_KINGDISPLAY_KD097D04=m +CONFIG_DRM_PANEL_LEADTEK_LTK050H3146W=m +CONFIG_DRM_PANEL_LEADTEK_LTK500HD1829=m +CONFIG_DRM_PANEL_LG_LB035Q02=m +CONFIG_DRM_PANEL_LG_LG4573=m +CONFIG_DRM_PANEL_LVDS=m +CONFIG_DRM_PANEL_NEC_NL8048HL11=m +CONFIG_DRM_PANEL_NOVATEK_NT35510=m +CONFIG_DRM_PANEL_NOVATEK_NT39016=m +CONFIG_DRM_PANEL_OLIMEX_LCD_OLINUXINO=m +CONFIG_DRM_PANEL_ORISETECH_OTM8009A=m +CONFIG_DRM_PANEL_OSD_OSD101T2587_53TS=m +CONFIG_DRM_PANEL_PANASONIC_VVX10F034N00=m +CONFIG_DRM_PANEL_RASPBERRYPI_TOUCHSCREEN=m +CONFIG_DRM_PANEL_RAYDIUM_RM67191=m +CONFIG_DRM_PANEL_RAYDIUM_RM68200=m +CONFIG_DRM_PANEL_ROCKTECH_JH057N00900=m +CONFIG_DRM_PANEL_RONBO_RB070D30=m +CONFIG_DRM_PANEL_SAMSUNG_LD9040=m +CONFIG_DRM_PANEL_SAMSUNG_S6D16D0=m +CONFIG_DRM_PANEL_SAMSUNG_S6E3HA2=m +CONFIG_DRM_PANEL_SAMSUNG_S6E63J0X03=m +CONFIG_DRM_PANEL_SAMSUNG_S6E63M0=m +CONFIG_DRM_PANEL_SAMSUNG_S6E88A0_AMS452EF01=m +CONFIG_DRM_PANEL_SAMSUNG_S6E8AA0=m +CONFIG_DRM_PANEL_SEIKO_43WVF1G=m +CONFIG_DRM_PANEL_SHARP_LQ101R1SX01=m +CONFIG_DRM_PANEL_SHARP_LS037V7DW01=m +CONFIG_DRM_PANEL_SHARP_LS043T1LE01=m +CONFIG_DRM_PANEL_SIMPLE=m +CONFIG_DRM_PANEL_SITRONIX_ST7701=m +CONFIG_DRM_PANEL_SITRONIX_ST7789V=m +CONFIG_DRM_PANEL_SONY_ACX424AKP=m +CONFIG_DRM_PANEL_SONY_ACX565AKM=m +CONFIG_DRM_PANEL_TPO_TD028TTEC1=m +CONFIG_DRM_PANEL_TPO_TD043MTEA1=m +CONFIG_DRM_PANEL_TPO_TPG110=m +CONFIG_DRM_PANEL_TRULY_NT35597_WQXGA=m +CONFIG_DRM_PANEL_VISIONOX_RM69299=m +CONFIG_DRM_PANEL_XINPENG_XPP055C272=m +CONFIG_DRM_PANFROST=m +CONFIG_DRM_PARADE_PS8622=m +CONFIG_DRM_PARADE_PS8640=m +CONFIG_DRM_PL111=m +# CONFIG_DRM_RADEON_USERPTR is not set +CONFIG_DRM_RCAR_CMM=m +CONFIG_DRM_RCAR_DU=m +CONFIG_DRM_RCAR_DW_HDMI=m +CONFIG_DRM_RCAR_VSP=y +CONFIG_DRM_RCAR_WRITEBACK=y +CONFIG_DRM_ROCKCHIP=m +CONFIG_DRM_SCHED=m +CONFIG_DRM_SII902X=m +CONFIG_DRM_SII9234=m +CONFIG_DRM_SIL_SII8620=m +CONFIG_DRM_SIMPLE_BRIDGE=m +# CONFIG_DRM_STI is not set +CONFIG_DRM_STM=m +CONFIG_DRM_STM_DSI=m +CONFIG_DRM_SUN4I=m +CONFIG_DRM_SUN4I_BACKEND=m +CONFIG_DRM_SUN4I_HDMI=m +CONFIG_DRM_SUN4I_HDMI_CEC=y +CONFIG_DRM_SUN6I_DSI=m +CONFIG_DRM_SUN8I_DW_HDMI=m +CONFIG_DRM_SUN8I_MIXER=m +CONFIG_DRM_SUN8I_TCON_TOP=m +CONFIG_DRM_TEGRA=m +# CONFIG_DRM_TEGRA_DEBUG is not set +CONFIG_DRM_TEGRA_STAGING=y +CONFIG_DRM_THINE_THC63LVD1024=m +CONFIG_DRM_TIDSS=m +CONFIG_DRM_TILCDC=m +CONFIG_DRM_TI_SN65DSI86=m +CONFIG_DRM_TI_TFP410=m +CONFIG_DRM_TI_TPD12S015=m +CONFIG_DRM_TOSHIBA_TC358764=m +CONFIG_DRM_TOSHIBA_TC358767=m +CONFIG_DRM_TOSHIBA_TC358768=m +CONFIG_DRM_TTM=m +CONFIG_DRM_TTM_DMA_PAGE_POOL=y +CONFIG_DRM_TTM_HELPER=m +CONFIG_DRM_TVE200=m +CONFIG_DRM_UDL=m +CONFIG_DRM_VBOXVIDEO=m +CONFIG_DRM_VC4=m +CONFIG_DRM_VC4_HDMI_CEC=y +CONFIG_DRM_VIRTIO_GPU=m +CONFIG_DRM_VMWGFX=m +CONFIG_DRM_VMWGFX_FBCON=y +CONFIG_DRM_VRAM_HELPER=m +CONFIG_DRM_XEN=y +CONFIG_DRM_XEN_FRONTEND=m +CONFIG_DS1803=m +CONFIG_DS4424=m +CONFIG_DST_CACHE=y +CONFIG_DTC=y +CONFIG_DTL=y +CONFIG_DT_IDLE_STATES=y +CONFIG_DUMMY=m +CONFIG_DUMMY_CONSOLE=y +CONFIG_DUMMY_CONSOLE_COLUMNS=80 +CONFIG_DUMMY_CONSOLE_ROWS=25 +CONFIG_DVB_A8293=m +CONFIG_DVB_AF9013=m +CONFIG_DVB_AF9033=m +CONFIG_DVB_AS102=m +CONFIG_DVB_AS102_FE=m +CONFIG_DVB_ASCOT2E=m +CONFIG_DVB_ATBM8830=m +CONFIG_DVB_AU8522=m +CONFIG_DVB_AU8522_DTV=m +CONFIG_DVB_AU8522_V4L=m +CONFIG_DVB_AV7110=m +CONFIG_DVB_AV7110_IR=y +CONFIG_DVB_AV7110_OSD=y +CONFIG_DVB_B2C2_FLEXCOP=m +CONFIG_DVB_B2C2_FLEXCOP_PCI=m +# CONFIG_DVB_B2C2_FLEXCOP_PCI_DEBUG is not set +CONFIG_DVB_B2C2_FLEXCOP_USB=m +# CONFIG_DVB_B2C2_FLEXCOP_USB_DEBUG is not set +CONFIG_DVB_BCM3510=m +CONFIG_DVB_BT8XX=m +CONFIG_DVB_BUDGET=m +CONFIG_DVB_BUDGET_AV=m +CONFIG_DVB_BUDGET_CI=m +CONFIG_DVB_BUDGET_CORE=m +CONFIG_DVB_BUDGET_PATCH=m +# CONFIG_DVB_C8SECTPFE is not set +CONFIG_DVB_CORE=m +CONFIG_DVB_CX22700=m +CONFIG_DVB_CX22702=m +CONFIG_DVB_CX24110=m +CONFIG_DVB_CX24116=m +CONFIG_DVB_CX24117=m +CONFIG_DVB_CX24120=m +CONFIG_DVB_CX24123=m +CONFIG_DVB_CXD2099=m +CONFIG_DVB_CXD2820R=m +CONFIG_DVB_CXD2841ER=m +CONFIG_DVB_CXD2880=m +CONFIG_DVB_DDBRIDGE=m +# CONFIG_DVB_DDBRIDGE_MSIENABLE is not set +# CONFIG_DVB_DEMUX_SECTION_LOSS_LOG is not set +CONFIG_DVB_DIB3000MB=m +CONFIG_DVB_DIB3000MC=m +CONFIG_DVB_DIB7000M=m +CONFIG_DVB_DIB7000P=m +CONFIG_DVB_DIB8000=m +CONFIG_DVB_DIB9000=m +CONFIG_DVB_DM1105=m +CONFIG_DVB_DRX39XYJ=m +CONFIG_DVB_DRXD=m +CONFIG_DVB_DRXK=m +CONFIG_DVB_DS3000=m +CONFIG_DVB_DUMMY_FE=m +CONFIG_DVB_DYNAMIC_MINORS=y +CONFIG_DVB_EC100=m +CONFIG_DVB_FIREDTV=m +CONFIG_DVB_FIREDTV_INPUT=y +CONFIG_DVB_GP8PSK_FE=m +CONFIG_DVB_HELENE=m +CONFIG_DVB_HOPPER=m +CONFIG_DVB_HORUS3A=m +CONFIG_DVB_ISL6405=m +CONFIG_DVB_ISL6421=m +CONFIG_DVB_ISL6423=m +CONFIG_DVB_IX2505V=m +CONFIG_DVB_L64781=m +CONFIG_DVB_LG2160=m +CONFIG_DVB_LGDT3305=m +CONFIG_DVB_LGDT3306A=m +CONFIG_DVB_LGDT330X=m +CONFIG_DVB_LGS8GL5=m +CONFIG_DVB_LGS8GXX=m +CONFIG_DVB_LNBH25=m +CONFIG_DVB_LNBH29=m +CONFIG_DVB_LNBP21=m +CONFIG_DVB_LNBP22=m +CONFIG_DVB_M88DS3103=m +CONFIG_DVB_M88RS2000=m +CONFIG_DVB_MANTIS=m +CONFIG_DVB_MAX_ADAPTERS=8 +CONFIG_DVB_MB86A16=m +CONFIG_DVB_MB86A20S=m +# CONFIG_DVB_MMAP is not set +CONFIG_DVB_MN88443X=m +CONFIG_DVB_MN88472=m +CONFIG_DVB_MN88473=m +CONFIG_DVB_MT312=m +CONFIG_DVB_MT352=m +CONFIG_DVB_MXL5XX=m +CONFIG_DVB_NET=y +CONFIG_DVB_NETUP_UNIDVB=m +CONFIG_DVB_NGENE=m +CONFIG_DVB_NXT200X=m +CONFIG_DVB_NXT6000=m +CONFIG_DVB_OR51132=m +CONFIG_DVB_OR51211=m +CONFIG_DVB_PLATFORM_DRIVERS=y +CONFIG_DVB_PLL=m +CONFIG_DVB_PLUTO2=m +CONFIG_DVB_PT1=m +CONFIG_DVB_PT3=m +CONFIG_DVB_RTL2830=m +CONFIG_DVB_RTL2832=m +CONFIG_DVB_RTL2832_SDR=m +CONFIG_DVB_S5H1409=m +CONFIG_DVB_S5H1411=m +CONFIG_DVB_S5H1420=m +CONFIG_DVB_S5H1432=m +CONFIG_DVB_S921=m +CONFIG_DVB_SI2165=m +CONFIG_DVB_SI2168=m +CONFIG_DVB_SI21XX=m +CONFIG_DVB_SMIPCIE=m +CONFIG_DVB_SP2=m +CONFIG_DVB_SP8870=m +CONFIG_DVB_SP887X=m +CONFIG_DVB_STB0899=m +CONFIG_DVB_STB6000=m +CONFIG_DVB_STB6100=m +CONFIG_DVB_STV0288=m +CONFIG_DVB_STV0297=m +CONFIG_DVB_STV0299=m +CONFIG_DVB_STV0367=m +CONFIG_DVB_STV0900=m +CONFIG_DVB_STV090x=m +CONFIG_DVB_STV0910=m +CONFIG_DVB_STV6110=m +CONFIG_DVB_STV6110x=m +CONFIG_DVB_STV6111=m +CONFIG_DVB_TC90522=m +CONFIG_DVB_TDA10021=m +CONFIG_DVB_TDA10023=m +CONFIG_DVB_TDA10048=m +CONFIG_DVB_TDA1004X=m +CONFIG_DVB_TDA10071=m +CONFIG_DVB_TDA10086=m +CONFIG_DVB_TDA18271C2DD=m +CONFIG_DVB_TDA665x=m +CONFIG_DVB_TDA8083=m +CONFIG_DVB_TDA8261=m +CONFIG_DVB_TDA826X=m +CONFIG_DVB_TS2020=m +CONFIG_DVB_TTUSB_BUDGET=m +CONFIG_DVB_TTUSB_DEC=m +CONFIG_DVB_TUA6100=m +CONFIG_DVB_TUNER_CX24113=m +CONFIG_DVB_TUNER_DIB0070=m +CONFIG_DVB_TUNER_DIB0090=m +CONFIG_DVB_TUNER_ITD1000=m +# CONFIG_DVB_ULE_DEBUG is not set +CONFIG_DVB_USB=m +CONFIG_DVB_USB_A800=m +CONFIG_DVB_USB_AF9005=m +CONFIG_DVB_USB_AF9005_REMOTE=m +CONFIG_DVB_USB_AF9015=m +CONFIG_DVB_USB_AF9035=m +CONFIG_DVB_USB_ANYSEE=m +CONFIG_DVB_USB_AU6610=m +CONFIG_DVB_USB_AZ6007=m +CONFIG_DVB_USB_AZ6027=m +CONFIG_DVB_USB_CE6230=m +CONFIG_DVB_USB_CINERGY_T2=m +CONFIG_DVB_USB_CXUSB=m +CONFIG_DVB_USB_CXUSB_ANALOG=y +# CONFIG_DVB_USB_DEBUG is not set +CONFIG_DVB_USB_DIB0700=m +CONFIG_DVB_USB_DIB3000MC=m +CONFIG_DVB_USB_DIBUSB_MB=m +# CONFIG_DVB_USB_DIBUSB_MB_FAULTY is not set +CONFIG_DVB_USB_DIBUSB_MC=m +CONFIG_DVB_USB_DIGITV=m +CONFIG_DVB_USB_DTT200U=m +CONFIG_DVB_USB_DTV5100=m +CONFIG_DVB_USB_DVBSKY=m +CONFIG_DVB_USB_DW2102=m +CONFIG_DVB_USB_EC168=m +CONFIG_DVB_USB_GL861=m +CONFIG_DVB_USB_GP8PSK=m +CONFIG_DVB_USB_LME2510=m +CONFIG_DVB_USB_M920X=m +CONFIG_DVB_USB_MXL111SF=m +CONFIG_DVB_USB_NOVA_T_USB2=m +CONFIG_DVB_USB_OPERA1=m +CONFIG_DVB_USB_PCTV452E=m +CONFIG_DVB_USB_RTL28XXU=m +CONFIG_DVB_USB_TECHNISAT_USB2=m +CONFIG_DVB_USB_TTUSB2=m +CONFIG_DVB_USB_UMT_010=m +CONFIG_DVB_USB_V2=m +CONFIG_DVB_USB_VP702X=m +CONFIG_DVB_USB_VP7045=m +CONFIG_DVB_USB_ZD1301=m +CONFIG_DVB_VES1820=m +CONFIG_DVB_VES1X93=m +CONFIG_DVB_ZD1301_DEMOD=m +CONFIG_DVB_ZL10036=m +CONFIG_DVB_ZL10039=m +CONFIG_DVB_ZL10353=m +CONFIG_DWC_XLGMAC=m +CONFIG_DWC_XLGMAC_PCI=m +CONFIG_DWMAC_DWC_QOS_ETH=m +CONFIG_DWMAC_GENERIC=m +CONFIG_DWMAC_IMX8=m +CONFIG_DWMAC_INTEL=m +CONFIG_DWMAC_IPQ806X=m +CONFIG_DWMAC_MEDIATEK=m +CONFIG_DWMAC_MESON=m +CONFIG_DWMAC_QCOM_ETHQOS=m +CONFIG_DWMAC_ROCKCHIP=m +CONFIG_DWMAC_SOCFPGA=m +CONFIG_DWMAC_SUN8I=m +# CONFIG_DWMAC_SUNXI is not set +CONFIG_DW_APB_ICTL=y +CONFIG_DW_APB_TIMER=y +CONFIG_DW_APB_TIMER_OF=y +CONFIG_DW_AXI_DMAC=m +CONFIG_DW_DMAC=m +CONFIG_DW_DMAC_CORE=m +CONFIG_DW_DMAC_PCI=m +CONFIG_DW_EDMA=m +CONFIG_DW_EDMA_PCIE=m +CONFIG_DW_I3C_MASTER=m +CONFIG_DYNAMIC_DEBUG=y +CONFIG_DYNAMIC_DEBUG_CORE=y +CONFIG_DYNAMIC_EVENTS=y +CONFIG_DYNAMIC_FTRACE=y +CONFIG_DYNAMIC_FTRACE_WITH_DIRECT_CALLS=y +CONFIG_DYNAMIC_FTRACE_WITH_REGS=y +CONFIG_DYNAMIC_MEMORY_LAYOUT=y +CONFIG_DYNAMIC_PHYSICAL_MASK=y +CONFIG_E100=m +CONFIG_E1000=m +CONFIG_E1000E=m +CONFIG_E1000E_HWTS=y +CONFIG_EADM_SCH=m +CONFIG_EARLY_PRINTK=y +CONFIG_EARLY_PRINTK_DBGP=y +CONFIG_EARLY_PRINTK_USB=y +CONFIG_EARLY_PRINTK_USB_XDBC=y +CONFIG_EBC_C384_WDT=m +CONFIG_ECRYPT_FS=y +CONFIG_ECRYPT_FS_MESSAGING=y +CONFIG_EDAC=y +CONFIG_EDAC_ALTERA=y +CONFIG_EDAC_ALTERA_ETHERNET=y +CONFIG_EDAC_ALTERA_NAND=y +CONFIG_EDAC_ALTERA_OCRAM=y +CONFIG_EDAC_ALTERA_QSPI=y +CONFIG_EDAC_ALTERA_SDMMC=y +CONFIG_EDAC_ALTERA_SDRAM=y +CONFIG_EDAC_ALTERA_USB=y +CONFIG_EDAC_AMD64=m +# CONFIG_EDAC_AMD64_ERROR_INJECTION is not set +CONFIG_EDAC_ARMADA_XP=y +CONFIG_EDAC_ATOMIC_SCRUB=y +CONFIG_EDAC_BLUEFIELD=m +CONFIG_EDAC_CPC925=m +# CONFIG_EDAC_DEBUG is not set +CONFIG_EDAC_DECODE_MCE=m +CONFIG_EDAC_DMC520=m +CONFIG_EDAC_E752X=m +CONFIG_EDAC_GHES=y +CONFIG_EDAC_HIGHBANK_L2=m +CONFIG_EDAC_HIGHBANK_MC=m +CONFIG_EDAC_I10NM=m +CONFIG_EDAC_I3000=m +CONFIG_EDAC_I3200=m +CONFIG_EDAC_I5000=m +CONFIG_EDAC_I5100=m +CONFIG_EDAC_I5400=m +CONFIG_EDAC_I7300=m +CONFIG_EDAC_I7CORE=m +CONFIG_EDAC_I82975X=m +CONFIG_EDAC_IE31200=m +CONFIG_EDAC_LAYERSCAPE=m +# CONFIG_EDAC_LEGACY_SYSFS is not set +CONFIG_EDAC_PND2=m +CONFIG_EDAC_QCOM=m +CONFIG_EDAC_SBRIDGE=m +CONFIG_EDAC_SKX=m +CONFIG_EDAC_SUPPORT=y +CONFIG_EDAC_SYNOPSYS=m +CONFIG_EDAC_THUNDERX=m +CONFIG_EDAC_TI=m +CONFIG_EDAC_X38=m +CONFIG_EDAC_XGENE=m +CONFIG_EDD=y +CONFIG_EDD_OFF=y +CONFIG_EEEPC_LAPTOP=m +CONFIG_EEEPC_WMI=m +CONFIG_EEH=y +CONFIG_EEPROM_93XX46=m +CONFIG_EEPROM_AT25=m +CONFIG_EFI=y +CONFIG_EFIVAR_FS=y +# CONFIG_EFI_ARMSTUB_DTB_LOADER is not set +CONFIG_EFI_BOOTLOADER_CONTROL=m +CONFIG_EFI_CAPSULE_LOADER=m +CONFIG_EFI_CUSTOM_SSDT_OVERLAYS=y +CONFIG_EFI_DEV_PATH_PARSER=y +# CONFIG_EFI_DISABLE_PCI_DMA is not set +CONFIG_EFI_EARLYCON=y +CONFIG_EFI_EMBEDDED_FIRMWARE=y +CONFIG_EFI_ESRT=y +# CONFIG_EFI_FAKE_MEMMAP is not set +CONFIG_EFI_GENERIC_STUB=y +CONFIG_EFI_GENERIC_STUB_INITRD_CMDLINE_LOADER=y +CONFIG_EFI_MIXED=y +CONFIG_EFI_PARAMS_FROM_FDT=y +CONFIG_EFI_PARTITION=y +# CONFIG_EFI_PGT_DUMP is not set +CONFIG_EFI_RCI2_TABLE=y +CONFIG_EFI_RUNTIME_MAP=y +CONFIG_EFI_RUNTIME_WRAPPERS=y +CONFIG_EFI_SOFT_RESERVE=y +CONFIG_EFI_STUB=y +CONFIG_EFI_TEST=m +CONFIG_EFI_VARS=y +CONFIG_EFI_VARS_PSTORE=m +# CONFIG_EFI_VARS_PSTORE_DEFAULT_DISABLE is not set +CONFIG_EINT_MTK=y +CONFIG_EISA=y +CONFIG_EISA_NAMES=y +CONFIG_EISA_PCI_EISA=y +CONFIG_EISA_VIRTUAL_ROOT=y +CONFIG_EISA_VLB_PRIMING=y +CONFIG_EL3=m +CONFIG_ELFCORE=y +CONFIG_ELF_CORE=y +CONFIG_EMAC_ROCKCHIP=m +# CONFIG_EMBEDDED is not set +CONFIG_EM_TIMER_STI=y +# CONFIG_ENABLE_MUST_CHECK is not set +CONFIG_ENA_ETHERNET=m +CONFIG_ENC28J60=m +# CONFIG_ENC28J60_WRITEVERIFY is not set +CONFIG_ENCRYPTED_KEYS=y +CONFIG_ENCX24J600=m +CONFIG_ENERGY_MODEL=y +CONFIG_ENIC=m +CONFIG_ENVELOPE_DETECTOR=m +CONFIG_EPAPR_BOOT=y +CONFIG_EPAPR_PARAVIRT=y +CONFIG_EPIC100=m +CONFIG_EPOLL=y +CONFIG_EQUALIZER=m +CONFIG_EROFS_FS=m +CONFIG_EROFS_FS_CLUSTER_PAGE_LIMIT=1 +# CONFIG_EROFS_FS_DEBUG is not set +CONFIG_EROFS_FS_POSIX_ACL=y +CONFIG_EROFS_FS_SECURITY=y +CONFIG_EROFS_FS_XATTR=y +CONFIG_EROFS_FS_ZIP=y +CONFIG_ET131X=m +CONFIG_ETHERNET=y +CONFIG_ETHTOOL_NETLINK=y +CONFIG_EUROTECH_WDT=m +CONFIG_EVENTFD=y +CONFIG_EVENT_TRACING=y +CONFIG_EVM=y +CONFIG_EVM_ADD_XATTRS=y +CONFIG_EVM_ATTR_FSUUID=y +CONFIG_EVM_EXTRA_SMACK_XATTRS=y +CONFIG_EVM_X509_PATH="/etc/keys/x509_evm.der" +CONFIG_EXFAT_DEFAULT_IOCHARSET="utf8" +CONFIG_EXPERT=y +CONFIG_EXPOLINE=y +CONFIG_EXPOLINE_AUTO=y +# CONFIG_EXPOLINE_FULL is not set +# CONFIG_EXPOLINE_OFF is not set +CONFIG_EXPORTFS=y +CONFIG_EXPORTFS_BLOCK_OPS=y +# CONFIG_EXT2_FS is not set +# CONFIG_EXT3_FS is not set +# CONFIG_EXT4_DEBUG is not set +CONFIG_EXT4_FS=y +CONFIG_EXT4_FS_POSIX_ACL=y +CONFIG_EXT4_FS_SECURITY=y +CONFIG_EXT4_USE_FOR_EXT2=y +CONFIG_EXTCON_ADC_JACK=m +CONFIG_EXTCON_ARIZONA=m +CONFIG_EXTCON_AXP288=m +CONFIG_EXTCON_FSA9480=m +CONFIG_EXTCON_GPIO=m +CONFIG_EXTCON_INTEL_CHT_WC=m +CONFIG_EXTCON_INTEL_INT3496=m +CONFIG_EXTCON_INTEL_MRFLD=m +CONFIG_EXTCON_MAX14577=m +CONFIG_EXTCON_MAX3355=m +CONFIG_EXTCON_MAX77693=m +CONFIG_EXTCON_MAX77843=m +CONFIG_EXTCON_MAX8997=m +CONFIG_EXTCON_PALMAS=m +CONFIG_EXTCON_PTN5150=m +CONFIG_EXTCON_QCOM_SPMI_MISC=m +CONFIG_EXTCON_RT8973A=m +CONFIG_EXTCON_SM5502=m +CONFIG_EXTCON_USBC_CROS_EC=m +CONFIG_EXTCON_USB_GPIO=m +CONFIG_EXTRA_FIRMWARE="" +CONFIG_EXTRA_TARGETS="" +CONFIG_EXYNOS5422_DMC=m +CONFIG_EXYNOS_ADC=m +CONFIG_EXYNOS_ASV=y +CONFIG_EXYNOS_ASV_ARM=y +CONFIG_EXYNOS_AUDSS_CLK_CON=m +CONFIG_EXYNOS_CHIPID=y +CONFIG_EXYNOS_CPU_SUSPEND=y +CONFIG_EXYNOS_IOMMU=y +# CONFIG_EXYNOS_IOMMU_DEBUG is not set +CONFIG_EXYNOS_IRQ_COMBINER=y +CONFIG_EXYNOS_MCPM=y +CONFIG_EXYNOS_PMU=y +CONFIG_EXYNOS_PMU_ARM_DRIVERS=y +CONFIG_EXYNOS_PM_DOMAINS=y +CONFIG_EXYNOS_SROM=y +CONFIG_EXYNOS_THERMAL=y +CONFIG_EZCHIP_NPS_MANAGEMENT_ENET=m +CONFIG_EZX_PCAP=y +# CONFIG_F2FS_CHECK_FS is not set +# CONFIG_F2FS_FAULT_INJECTION is not set +CONFIG_F2FS_FS_COMPRESSION=y +CONFIG_F2FS_FS_LZ4=y +CONFIG_F2FS_FS_LZO=y +CONFIG_F2FS_FS_LZORLE=y +CONFIG_F2FS_FS_POSIX_ACL=y +CONFIG_F2FS_FS_SECURITY=y +CONFIG_F2FS_FS_XATTR=y +CONFIG_F2FS_FS_ZSTD=y +# CONFIG_F2FS_IO_TRACE is not set +CONFIG_F2FS_STAT_FS=y +CONFIG_F71808E_WDT=m +CONFIG_FAILOVER=m +CONFIG_FAIR_GROUP_SCHED=y +CONFIG_FANOTIFY=y +CONFIG_FANOTIFY_ACCESS_PERMISSIONS=y +CONFIG_FARSYNC=m +CONFIG_FAT_DEFAULT_CODEPAGE=437 +CONFIG_FAT_DEFAULT_IOCHARSET="iso8859-1" +# CONFIG_FAT_DEFAULT_UTF8 is not set +CONFIG_FAT_FS=y +# CONFIG_FAULT_INJECTION is not set +CONFIG_FA_DUMP=y +CONFIG_FB=y +# CONFIG_FB_3DFX_ACCEL is not set +# CONFIG_FB_3DFX_I2C is not set +CONFIG_FB_ARC=m +CONFIG_FB_ARMCLCD=y +CONFIG_FB_ATY128_BACKLIGHT=y +CONFIG_FB_ATY_BACKLIGHT=y +CONFIG_FB_ATY_CT=y +# CONFIG_FB_ATY_GENERIC_LCD is not set +CONFIG_FB_ATY_GX=y +CONFIG_FB_BACKLIGHT=m +CONFIG_FB_BOOT_VESA_SUPPORT=y +CONFIG_FB_CARILLO_RANCH=m +CONFIG_FB_CARMINE_DRAM_EVAL=y +CONFIG_FB_CFB_REV_PIXELS_IN_BYTE=y +CONFIG_FB_CMDLINE=y +CONFIG_FB_CYBER2000_DDC=y +CONFIG_FB_DA8XX=m +CONFIG_FB_DDC=m +CONFIG_FB_DEFERRED_IO=y +CONFIG_FB_EFI=y +# CONFIG_FB_FOREIGN_ENDIAN is not set +CONFIG_FB_HECUBA=m +CONFIG_FB_HGA=m +CONFIG_FB_HYPERV=m +CONFIG_FB_IMX=m +CONFIG_FB_INTEL=m +# CONFIG_FB_INTEL_DEBUG is not set +CONFIG_FB_INTEL_I2C=y +CONFIG_FB_LE80578=m +CONFIG_FB_MACMODES=y +CONFIG_FB_MATROX_G=y +CONFIG_FB_MATROX_I2C=m +CONFIG_FB_MATROX_MAVEN=m +CONFIG_FB_MATROX_MILLENIUM=y +CONFIG_FB_MATROX_MYSTIQUE=y +CONFIG_FB_MB862XX_I2C=y +# CONFIG_FB_MB862XX_LIME is not set +CONFIG_FB_MB862XX_PCI_GDC=y +CONFIG_FB_MODE_HELPERS=y +CONFIG_FB_MX3=y +CONFIG_FB_N411=m +CONFIG_FB_NOTIFY=y +CONFIG_FB_NVIDIA_BACKLIGHT=y +# CONFIG_FB_NVIDIA_DEBUG is not set +CONFIG_FB_NVIDIA_I2C=y +CONFIG_FB_OF=y +CONFIG_FB_OMAP2=m +# CONFIG_FB_OMAP2_CONNECTOR_ANALOG_TV is not set +# CONFIG_FB_OMAP2_CONNECTOR_DVI is not set +# CONFIG_FB_OMAP2_CONNECTOR_HDMI is not set +# CONFIG_FB_OMAP2_DEBUG_SUPPORT is not set +CONFIG_FB_OMAP2_DSS=m +# CONFIG_FB_OMAP2_DSS_DEBUG is not set +# CONFIG_FB_OMAP2_DSS_DEBUGFS is not set +CONFIG_FB_OMAP2_DSS_DPI=y +# CONFIG_FB_OMAP2_DSS_DSI is not set +CONFIG_FB_OMAP2_DSS_HDMI_COMMON=y +CONFIG_FB_OMAP2_DSS_INIT=y +CONFIG_FB_OMAP2_DSS_MIN_FCK_PER_PCK=0 +# CONFIG_FB_OMAP2_DSS_SDI is not set +CONFIG_FB_OMAP2_DSS_SLEEP_AFTER_VENC_RESET=y +CONFIG_FB_OMAP2_DSS_VENC=y +# CONFIG_FB_OMAP2_ENCODER_OPA362 is not set +# CONFIG_FB_OMAP2_ENCODER_TFP410 is not set +# CONFIG_FB_OMAP2_ENCODER_TPD12S015 is not set +CONFIG_FB_OMAP2_NUM_FBS=3 +# CONFIG_FB_OMAP2_PANEL_DPI is not set +# CONFIG_FB_OMAP2_PANEL_DSI_CM is not set +# CONFIG_FB_OMAP2_PANEL_LGPHILIPS_LB035Q02 is not set +CONFIG_FB_OMAP4_DSS_HDMI=y +# CONFIG_FB_OMAP5_DSS_HDMI is not set +CONFIG_FB_PM2_FIFO_DISCONNECT=y +CONFIG_FB_PROVIDE_GET_FB_UNMAPPED_AREA=y +CONFIG_FB_RADEON_BACKLIGHT=y +# CONFIG_FB_RADEON_DEBUG is not set +CONFIG_FB_RADEON_I2C=y +CONFIG_FB_RIVA_BACKLIGHT=y +# CONFIG_FB_RIVA_DEBUG is not set +CONFIG_FB_RIVA_I2C=y +CONFIG_FB_S3_DDC=y +# CONFIG_FB_SAVAGE_ACCEL is not set +CONFIG_FB_SAVAGE_I2C=y +CONFIG_FB_SH_MOBILE_LCDC=m +CONFIG_FB_SIS_300=y +CONFIG_FB_SIS_315=y +CONFIG_FB_SM501=m +CONFIG_FB_SM750=m +CONFIG_FB_SMSCUFX=m +CONFIG_FB_SSD1307=m +CONFIG_FB_SVGALIB=m +CONFIG_FB_SYS_COPYAREA=m +CONFIG_FB_SYS_FILLRECT=m +CONFIG_FB_SYS_FOPS=m +CONFIG_FB_SYS_IMAGEBLIT=m +CONFIG_FB_TFT=m +CONFIG_FB_TFT_AGM1264K_FL=m +CONFIG_FB_TFT_BD663474=m +CONFIG_FB_TFT_HX8340BN=m +CONFIG_FB_TFT_HX8347D=m +CONFIG_FB_TFT_HX8353D=m +CONFIG_FB_TFT_HX8357D=m +CONFIG_FB_TFT_ILI9163=m +CONFIG_FB_TFT_ILI9320=m +CONFIG_FB_TFT_ILI9325=m +CONFIG_FB_TFT_ILI9340=m +CONFIG_FB_TFT_ILI9341=m +CONFIG_FB_TFT_ILI9481=m +CONFIG_FB_TFT_ILI9486=m +CONFIG_FB_TFT_PCD8544=m +CONFIG_FB_TFT_RA8875=m +CONFIG_FB_TFT_S6D02A1=m +CONFIG_FB_TFT_S6D1121=m +CONFIG_FB_TFT_SEPS525=m +CONFIG_FB_TFT_SH1106=m +CONFIG_FB_TFT_SSD1289=m +CONFIG_FB_TFT_SSD1305=m +CONFIG_FB_TFT_SSD1306=m +CONFIG_FB_TFT_SSD1331=m +CONFIG_FB_TFT_SSD1351=m +CONFIG_FB_TFT_ST7735R=m +CONFIG_FB_TFT_ST7789V=m +CONFIG_FB_TFT_TINYLCD=m +CONFIG_FB_TFT_TLS8204=m +CONFIG_FB_TFT_UC1611=m +CONFIG_FB_TFT_UC1701=m +CONFIG_FB_TFT_UPD161704=m +CONFIG_FB_TFT_WATTEROTT=m +CONFIG_FB_TMIO=m +CONFIG_FB_TMIO_ACCELL=y +CONFIG_FB_UDL=m +CONFIG_FB_VESA=y +CONFIG_FB_VGA16=m +CONFIG_FB_VIA=m +# CONFIG_FB_VIA_DIRECT_PROCFS is not set +CONFIG_FB_VIA_X_COMPATIBILITY=y +# CONFIG_FB_VIRTUAL is not set +CONFIG_FB_XILINX=m +CONFIG_FCOE=m +CONFIG_FCOE_FNIC=m +CONFIG_FEC=y +CONFIG_FHANDLE=y +# CONFIG_FHCI_DEBUG is not set +CONFIG_FIB_RULES=y +CONFIG_FIELDBUS_DEV=m +CONFIG_FILE_LOCKING=y +# CONFIG_FIND_BIT_BENCHMARK is not set +CONFIG_FIQ=y +CONFIG_FIREWIRE_NET=m +CONFIG_FIREWIRE_OHCI=m +CONFIG_FIREWIRE_SBP2=m +CONFIG_FIREWIRE_SERIAL=m +CONFIG_FIRMWARE_EDID=y +CONFIG_FIRMWARE_MEMMAP=y +CONFIG_FIX_EARLYCON_MEM=y +# CONFIG_FLATMEM_MANUAL is not set +CONFIG_FM10K=m +CONFIG_FONTS=y +# CONFIG_FONT_10x18 is not set +CONFIG_FONT_6x10=y +# CONFIG_FONT_6x11 is not set +# CONFIG_FONT_7x14 is not set +CONFIG_FONT_8x16=y +CONFIG_FONT_8x8=y +CONFIG_FONT_ACORN_8x8=y +# CONFIG_FONT_MINI_4x6 is not set +# CONFIG_FONT_PEARL_8x8 is not set +# CONFIG_FONT_SUN12x22 is not set +# CONFIG_FONT_SUN8x16 is not set +CONFIG_FONT_SUPPORT=y +CONFIG_FONT_TER16x32=y +CONFIG_FORCEDETH=m +CONFIG_FORCE_PCI=y +CONFIG_FORCE_SMP=y +CONFIG_FORTIFY_SOURCE=y +CONFIG_FPGA=m +CONFIG_FPGA_DFL_AFU=m +CONFIG_FPGA_DFL_FME=m +CONFIG_FPGA_DFL_FME_BRIDGE=m +CONFIG_FPGA_DFL_FME_MGR=m +CONFIG_FPGA_DFL_FME_REGION=m +CONFIG_FPGA_DFL_PCI=m +CONFIG_FPGA_MGR_ALTERA_CVP=m +CONFIG_FPGA_MGR_ALTERA_PS_SPI=m +CONFIG_FPGA_MGR_ICE40_SPI=m +CONFIG_FPGA_MGR_MACHXO2_SPI=m +CONFIG_FPGA_MGR_STRATIX10_SOC=m +CONFIG_FPGA_MGR_XILINX_SPI=m +CONFIG_FPGA_MGR_ZYNQMP_FPGA=m +CONFIG_FPGA_REGION=m +CONFIG_FRAMEBUFFER_CONSOLE=y +CONFIG_FRAMEBUFFER_CONSOLE_DEFERRED_TAKEOVER=y +CONFIG_FRAMEBUFFER_CONSOLE_DETECT_PRIMARY=y +CONFIG_FRAMEBUFFER_CONSOLE_ROTATION=y +CONFIG_FRAME_POINTER=y +CONFIG_FRAME_VECTOR=y +CONFIG_FREEZER=y +CONFIG_FRONTSWAP=y +CONFIG_FSCACHE=m +# CONFIG_FSCACHE_DEBUG is not set +# CONFIG_FSCACHE_HISTOGRAM is not set +# CONFIG_FSCACHE_OBJECT_LIST is not set +CONFIG_FSCACHE_STATS=y +CONFIG_FSI=m +CONFIG_FSI_MASTER_ASPEED=m +CONFIG_FSI_MASTER_AST_CF=m +CONFIG_FSI_MASTER_GPIO=m +CONFIG_FSI_MASTER_HUB=m +# CONFIG_FSI_NEW_DEV_NODE is not set +CONFIG_FSI_OCC=m +CONFIG_FSI_SBEFIFO=m +CONFIG_FSI_SCOM=m +CONFIG_FSL_BMAN_TEST=m +# CONFIG_FSL_BMAN_TEST_API is not set +CONFIG_FSL_DPAA=y +CONFIG_FSL_DPAA2=y +CONFIG_FSL_DPAA2_ETH=m +CONFIG_FSL_DPAA2_ETHSW=m +CONFIG_FSL_DPAA2_ETH_DCB=y +CONFIG_FSL_DPAA2_PTP_CLOCK=m +CONFIG_FSL_DPAA2_QDMA=m +CONFIG_FSL_DPAA_CHECKING=y +CONFIG_FSL_DPAA_ETH=m +CONFIG_FSL_EDMA=m +CONFIG_FSL_ENETC=m +CONFIG_FSL_ENETC_MDIO=m +CONFIG_FSL_ENETC_PTP_CLOCK=m +CONFIG_FSL_ENETC_QOS=y +CONFIG_FSL_ENETC_VF=m +CONFIG_FSL_ERRATUM_A008585=y +CONFIG_FSL_FMAN=y +CONFIG_FSL_GTM=y +CONFIG_FSL_GUTS=y +CONFIG_FSL_IFC=y +CONFIG_FSL_IMX8_DDR_PMU=m +CONFIG_FSL_LBC=y +CONFIG_FSL_MC_DPIO=m +CONFIG_FSL_PQ_MDIO=m +CONFIG_FSL_QDMA=m +# CONFIG_FSL_QMAN_TEST is not set +CONFIG_FSL_RCPM=y +CONFIG_FSL_UCC_HDLC=m +CONFIG_FSL_XGMAC_MDIO=y +CONFIG_FSNOTIFY=y +CONFIG_FS_DAX=y +CONFIG_FS_DAX_LIMITED=y +CONFIG_FS_DAX_PMD=y +CONFIG_FS_ENCRYPTION=y +CONFIG_FS_ENCRYPTION_ALGS=y +CONFIG_FS_IOMAP=y +CONFIG_FS_MBCACHE=y +CONFIG_FS_POSIX_ACL=y +CONFIG_FS_VERITY=y +CONFIG_FS_VERITY_BUILTIN_SIGNATURES=y +# CONFIG_FS_VERITY_DEBUG is not set +CONFIG_FTGMAC100=m +CONFIG_FTL=m +CONFIG_FTMAC100=m +CONFIG_FTM_QUADDEC=m +CONFIG_FTRACE=y +CONFIG_FTRACE_MCOUNT_RECORD=y +# CONFIG_FTRACE_STARTUP_TEST is not set +CONFIG_FTRACE_SYSCALLS=y +# CONFIG_FTR_FIXUP_SELFTEST is not set +CONFIG_FTWDT010_WATCHDOG=m +CONFIG_FUEL_GAUGE_SC27XX=m +CONFIG_FUJITSU_ERRATUM_010001=y +CONFIG_FUJITSU_ES=m +CONFIG_FUJITSU_LAPTOP=m +CONFIG_FUJITSU_TABLET=m +CONFIG_FUNCTION_ERROR_INJECTION=y +CONFIG_FUNCTION_GRAPH_TRACER=y +CONFIG_FUNCTION_PROFILER=y +CONFIG_FUNCTION_TRACER=y +CONFIG_FUSE_FS=y +CONFIG_FUSION_CTL=m +CONFIG_FUSION_FC=m +CONFIG_FUSION_LAN=m +CONFIG_FUSION_LOGGING=y +CONFIG_FUSION_MAX_SGE=128 +CONFIG_FUSION_SAS=m +CONFIG_FUSION_SPI=m +CONFIG_FUTEX=y +CONFIG_FUTEX_PI=y +CONFIG_FWTTY_MAX_CARD_PORTS=32 +CONFIG_FWTTY_MAX_TOTAL_PORTS=64 +CONFIG_FW_CACHE=y +CONFIG_FW_CFG_SYSFS=m +# CONFIG_FW_CFG_SYSFS_CMDLINE is not set +CONFIG_FW_LOADER=y +CONFIG_FW_LOADER_COMPRESS=y +CONFIG_FW_LOADER_PAGED_BUF=y +CONFIG_FW_LOADER_USER_HELPER=y +# CONFIG_FW_LOADER_USER_HELPER_FALLBACK is not set +CONFIG_FXAS21002C=m +CONFIG_FXAS21002C_I2C=m +CONFIG_FXAS21002C_SPI=m +CONFIG_FXOS8700=m +CONFIG_FXOS8700_I2C=m +CONFIG_FXOS8700_SPI=m +CONFIG_GACT_PROB=y +CONFIG_GADGET_UAC1=y +# CONFIG_GADGET_UAC1_LEGACY is not set +CONFIG_GAMEPORT_EMU10K1=m +CONFIG_GAMEPORT_FM801=m +CONFIG_GAMEPORT_L4=m +CONFIG_GAMEPORT_NS558=m +CONFIG_GARP=m +CONFIG_GART_IOMMU=y +CONFIG_GCC_VERSION=100200 +# CONFIG_GCOV_KERNEL is not set +CONFIG_GDB_SCRIPTS=y +CONFIG_GEMINI_ETHERNET=m +CONFIG_GENERIC_ADC_BATTERY=m +CONFIG_GENERIC_ADC_THERMAL=m +CONFIG_GENERIC_ALLOCATOR=y +CONFIG_GENERIC_ARCH_TOPOLOGY=y +CONFIG_GENERIC_BUG=y +CONFIG_GENERIC_BUG_RELATIVE_POINTERS=y +CONFIG_GENERIC_CALIBRATE_DELAY=y +CONFIG_GENERIC_CLOCKEVENTS=y +CONFIG_GENERIC_CLOCKEVENTS_BROADCAST=y +CONFIG_GENERIC_CLOCKEVENTS_MIN_ADJUST=y +CONFIG_GENERIC_CMOS_UPDATE=y +CONFIG_GENERIC_CPU=y +CONFIG_GENERIC_CPU_AUTOPROBE=y +CONFIG_GENERIC_CPU_VULNERABILITIES=y +CONFIG_GENERIC_CSUM=y +CONFIG_GENERIC_EARLY_IOREMAP=y +CONFIG_GENERIC_FIND_FIRST_BIT=y +CONFIG_GENERIC_GETTIMEOFDAY=y +CONFIG_GENERIC_HWEIGHT=y +CONFIG_GENERIC_IDLE_POLL_SETUP=y +CONFIG_GENERIC_IOMAP=y +CONFIG_GENERIC_IRQ_CHIP=y +# CONFIG_GENERIC_IRQ_DEBUGFS is not set +CONFIG_GENERIC_IRQ_EFFECTIVE_AFF_MASK=y +CONFIG_GENERIC_IRQ_MATRIX_ALLOCATOR=y +CONFIG_GENERIC_IRQ_MIGRATION=y +CONFIG_GENERIC_IRQ_MULTI_HANDLER=y +CONFIG_GENERIC_IRQ_PROBE=y +CONFIG_GENERIC_IRQ_RESERVATION_MODE=y +CONFIG_GENERIC_IRQ_SHOW=y +CONFIG_GENERIC_IRQ_SHOW_LEVEL=y +CONFIG_GENERIC_ISA_DMA=y +CONFIG_GENERIC_MSI_IRQ=y +CONFIG_GENERIC_MSI_IRQ_DOMAIN=y +CONFIG_GENERIC_NET_UTILS=y +CONFIG_GENERIC_PCI_IOMAP=y +CONFIG_GENERIC_PENDING_IRQ=y +CONFIG_GENERIC_PHY_MIPI_DPHY=y +CONFIG_GENERIC_PINCONF=y +CONFIG_GENERIC_PINCTRL_GROUPS=y +CONFIG_GENERIC_PINMUX_FUNCTIONS=y +CONFIG_GENERIC_PTDUMP=y +CONFIG_GENERIC_SCHED_CLOCK=y +CONFIG_GENERIC_SMP_IDLE_THREAD=y +CONFIG_GENERIC_STRNCPY_FROM_USER=y +CONFIG_GENERIC_STRNLEN_USER=y +CONFIG_GENERIC_TIME_VSYSCALL=y +CONFIG_GENERIC_TRACER=y +CONFIG_GENERIC_VDSO_32=y +CONFIG_GENERIC_VDSO_TIME_NS=y +CONFIG_GENEVE=m +CONFIG_GENWQE=m +CONFIG_GENWQE_PLATFORM_ERROR_RECOVERY=0 +CONFIG_GEN_RTC=y +CONFIG_GFS2_FS=m +CONFIG_GFS2_FS_LOCKING_DLM=y +CONFIG_GIANFAR=m +CONFIG_GLOB=y +# CONFIG_GLOB_SELFTEST is not set +CONFIG_GNSS_MTK_SERIAL=m +CONFIG_GNSS_SERIAL=m +CONFIG_GNSS_SIRF_SERIAL=m +CONFIG_GNSS_UBX_SERIAL=m +# CONFIG_GOLDFISH is not set +# CONFIG_GOOGLE_FIRMWARE is not set +CONFIG_GP2AP002=m +CONFIG_GP2AP020A00F=m +CONFIG_GPD_POCKET_FAN=m +CONFIG_GPIOLIB=y +CONFIG_GPIOLIB_FASTPATH_LIMIT=512 +CONFIG_GPIOLIB_IRQCHIP=y +CONFIG_GPIO_104_DIO_48E=m +CONFIG_GPIO_104_IDIO_16=m +CONFIG_GPIO_104_IDI_48=m +CONFIG_GPIO_74X164=m +CONFIG_GPIO_74XX_MMIO=m +CONFIG_GPIO_ACPI=y +CONFIG_GPIO_ADNP=m +CONFIG_GPIO_ADP5520=m +CONFIG_GPIO_AGGREGATOR=m +CONFIG_GPIO_ALTERA=m +CONFIG_GPIO_AMD8111=m +CONFIG_GPIO_AMDPT=m +CONFIG_GPIO_ARIZONA=m +CONFIG_GPIO_ASPEED=m +CONFIG_GPIO_ASPEED_SGPIO=y +CONFIG_GPIO_BCM_XGS_IPROC=m +CONFIG_GPIO_BD70528=m +CONFIG_GPIO_BD71828=m +CONFIG_GPIO_BD9571MWV=m +CONFIG_GPIO_BRCMSTB=m +CONFIG_GPIO_BT8XX=m +CONFIG_GPIO_CADENCE=m +CONFIG_GPIO_CRYSTAL_COVE=y +CONFIG_GPIO_DA9052=m +CONFIG_GPIO_DA9055=m +CONFIG_GPIO_DAVINCI=y +CONFIG_GPIO_DLN2=m +CONFIG_GPIO_EIC_SPRD=m +# CONFIG_GPIO_EM is not set +CONFIG_GPIO_EXAR=m +CONFIG_GPIO_F7188X=m +CONFIG_GPIO_FTGPIO010=y +CONFIG_GPIO_GPIO_MM=m +CONFIG_GPIO_GRGPIO=m +CONFIG_GPIO_GW_PLD=m +CONFIG_GPIO_HLWD=m +CONFIG_GPIO_ICH=m +CONFIG_GPIO_IT87=m +CONFIG_GPIO_JANZ_TTL=m +CONFIG_GPIO_KEMPLD=m +CONFIG_GPIO_LOGICVC=m +CONFIG_GPIO_LP3943=m +CONFIG_GPIO_LP873X=m +CONFIG_GPIO_LP87565=m +CONFIG_GPIO_MADERA=m +CONFIG_GPIO_MAX3191X=m +CONFIG_GPIO_MAX7301=m +CONFIG_GPIO_MAX730X=m +CONFIG_GPIO_MAX77620=m +CONFIG_GPIO_MAX77650=m +CONFIG_GPIO_MC33880=m +CONFIG_GPIO_MENZ127=m +CONFIG_GPIO_MLXBF=m +CONFIG_GPIO_MLXBF2=m +CONFIG_GPIO_ML_IOH=m +# CONFIG_GPIO_MOCKUP is not set +CONFIG_GPIO_MOXTET=m +CONFIG_GPIO_MPC8XXX=y +CONFIG_GPIO_MSIC=y +CONFIG_GPIO_MVEBU=y +CONFIG_GPIO_MXC=y +CONFIG_GPIO_OMAP=y +CONFIG_GPIO_PALMAS=y +CONFIG_GPIO_PCA953X_IRQ=y +CONFIG_GPIO_PCIE_IDIO_24=m +CONFIG_GPIO_PCI_IDIO_16=m +CONFIG_GPIO_PISOSR=m +CONFIG_GPIO_PL061=y +CONFIG_GPIO_PMIC_EIC_SPRD=m +CONFIG_GPIO_RASPBERRYPI_EXP=m +CONFIG_GPIO_RC5T583=y +CONFIG_GPIO_RCAR=m +CONFIG_GPIO_RDA=y +CONFIG_GPIO_SAMA5D2_PIOBU=m +CONFIG_GPIO_SCH=m +CONFIG_GPIO_SCH311X=m +CONFIG_GPIO_SIFIVE=y +CONFIG_GPIO_SPRD=m +CONFIG_GPIO_STMPE=y +CONFIG_GPIO_SYSCON=m +CONFIG_GPIO_SYSFS=y +CONFIG_GPIO_TC3589X=y +CONFIG_GPIO_TEGRA=y +CONFIG_GPIO_THUNDERX=m +CONFIG_GPIO_TPS65086=m +CONFIG_GPIO_TPS65218=m +CONFIG_GPIO_TPS6586X=y +CONFIG_GPIO_TPS65910=y +CONFIG_GPIO_TPS65912=m +CONFIG_GPIO_TPS68470=y +CONFIG_GPIO_TQMX86=m +CONFIG_GPIO_TS4800=m +CONFIG_GPIO_TS4900=m +CONFIG_GPIO_UCB1400=m +CONFIG_GPIO_UNIPHIER=m +CONFIG_GPIO_VF610=y +CONFIG_GPIO_VIPERBOARD=m +CONFIG_GPIO_VX855=m +CONFIG_GPIO_WATCHDOG=m +CONFIG_GPIO_WCD934X=m +CONFIG_GPIO_WHISKEY_COVE=m +CONFIG_GPIO_WINBOND=m +CONFIG_GPIO_WM831X=m +CONFIG_GPIO_WM8350=m +CONFIG_GPIO_WM8994=m +CONFIG_GPIO_WS16C48=m +CONFIG_GPIO_XGENE=y +CONFIG_GPIO_XGENE_SB=m +CONFIG_GPIO_XLP=m +CONFIG_GPIO_XRA1403=m +CONFIG_GPIO_ZEVIO=y +CONFIG_GPIO_ZYNQ=m +CONFIG_GRACE_PERIOD=m +CONFIG_GREENASIA_FF=y +CONFIG_GREYBUS_AUDIO=m +CONFIG_GREYBUS_BOOTROM=m +CONFIG_GREYBUS_BRIDGED_PHY=m +CONFIG_GREYBUS_ES2=m +CONFIG_GREYBUS_FIRMWARE=m +CONFIG_GREYBUS_GPIO=m +CONFIG_GREYBUS_HID=m +CONFIG_GREYBUS_I2C=m +CONFIG_GREYBUS_LIGHT=m +CONFIG_GREYBUS_LOG=m +CONFIG_GREYBUS_LOOPBACK=m +CONFIG_GREYBUS_POWER=m +CONFIG_GREYBUS_PWM=m +CONFIG_GREYBUS_RAW=m +CONFIG_GREYBUS_SDIO=m +CONFIG_GREYBUS_SPI=m +CONFIG_GREYBUS_UART=m +CONFIG_GREYBUS_USB=m +CONFIG_GREYBUS_VIBRATOR=m +CONFIG_GRO_CELLS=y +CONFIG_GS_FPGABOOT=m +CONFIG_GTP=m +# CONFIG_GUP_BENCHMARK is not set +CONFIG_GVE=m +CONFIG_HALTPOLL_CPUIDLE=m +CONFIG_HAMRADIO=y +CONFIG_HANDLE_DOMAIN_IRQ=y +CONFIG_HANGCHECK_TIMER=m +CONFIG_HAPPYMEAL=m +CONFIG_HARDENED_USERCOPY=y +CONFIG_HARDENED_USERCOPY_FALLBACK=y +# CONFIG_HARDENED_USERCOPY_PAGESPAN is not set +CONFIG_HARDEN_BRANCH_PREDICTOR=y +CONFIG_HARDEN_EL2_VECTORS=y +CONFIG_HARDIRQS_SW_RESEND=y +CONFIG_HARDLOCKUP_CHECK_TIMESTAMP=y +CONFIG_HARDLOCKUP_DETECTOR=y +CONFIG_HARDLOCKUP_DETECTOR_PERF=y +CONFIG_HAS_DMA=y +CONFIG_HAS_IOMEM=y +CONFIG_HAS_IOPORT_MAP=y +CONFIG_HAVE_ACPI_APEI=y +CONFIG_HAVE_ACPI_APEI_NMI=y +CONFIG_HAVE_ALIGNED_STRUCT_PAGE=y +CONFIG_HAVE_ARCH_AUDITSYSCALL=y +CONFIG_HAVE_ARCH_BITREVERSE=y +CONFIG_HAVE_ARCH_COMPAT_MMAP_BASES=y +CONFIG_HAVE_ARCH_COMPILER_H=y +CONFIG_HAVE_ARCH_HUGE_VMAP=y +CONFIG_HAVE_ARCH_JUMP_LABEL=y +CONFIG_HAVE_ARCH_JUMP_LABEL_RELATIVE=y +CONFIG_HAVE_ARCH_KASAN=y +CONFIG_HAVE_ARCH_KASAN_SW_TAGS=y +CONFIG_HAVE_ARCH_KASAN_VMALLOC=y +CONFIG_HAVE_ARCH_KCSAN=y +CONFIG_HAVE_ARCH_KGDB=y +CONFIG_HAVE_ARCH_MMAP_RND_BITS=y +CONFIG_HAVE_ARCH_MMAP_RND_COMPAT_BITS=y +CONFIG_HAVE_ARCH_NVRAM_OPS=y +CONFIG_HAVE_ARCH_PFN_VALID=y +CONFIG_HAVE_ARCH_PREL32_RELOCATIONS=y +CONFIG_HAVE_ARCH_SECCOMP_FILTER=y +CONFIG_HAVE_ARCH_SOFT_DIRTY=y +CONFIG_HAVE_ARCH_STACKLEAK=y +CONFIG_HAVE_ARCH_THREAD_STRUCT_WHITELIST=y +CONFIG_HAVE_ARCH_TRACEHOOK=y +CONFIG_HAVE_ARCH_TRANSPARENT_HUGEPAGE=y +CONFIG_HAVE_ARCH_TRANSPARENT_HUGEPAGE_PUD=y +CONFIG_HAVE_ARCH_USERFAULTFD_WP=y +CONFIG_HAVE_ARCH_VMAP_STACK=y +CONFIG_HAVE_ARCH_WITHIN_STACK_FRAMES=y +CONFIG_HAVE_ARM_ARCH_TIMER=y +CONFIG_HAVE_ARM_SCU=y +CONFIG_HAVE_ARM_SMCCC=y +CONFIG_HAVE_ARM_SMCCC_DISCOVERY=y +CONFIG_HAVE_ARM_TWD=y +CONFIG_HAVE_ASM_MODVERSIONS=y +CONFIG_HAVE_BOOTMEM_INFO_NODE=y +CONFIG_HAVE_CLK=y +CONFIG_HAVE_CLK_PREPARE=y +CONFIG_HAVE_CMPXCHG_DOUBLE=y +CONFIG_HAVE_CMPXCHG_LOCAL=y +CONFIG_HAVE_CONTEXT_TRACKING=y +CONFIG_HAVE_COPY_THREAD_TLS=y +CONFIG_HAVE_C_RECORDMCOUNT=y +CONFIG_HAVE_DEBUG_BUGVERBOSE=y +CONFIG_HAVE_DEBUG_KMEMLEAK=y +CONFIG_HAVE_DEBUG_STACKOVERFLOW=y +CONFIG_HAVE_DMA_CONTIGUOUS=y +CONFIG_HAVE_DYNAMIC_FTRACE=y +CONFIG_HAVE_DYNAMIC_FTRACE_WITH_DIRECT_CALLS=y +CONFIG_HAVE_DYNAMIC_FTRACE_WITH_REGS=y +CONFIG_HAVE_EBPF_JIT=y +CONFIG_HAVE_EFFICIENT_UNALIGNED_ACCESS=y +CONFIG_HAVE_EISA=y +CONFIG_HAVE_EXIT_THREAD=y +CONFIG_HAVE_FAST_GUP=y +CONFIG_HAVE_FENTRY=y +CONFIG_HAVE_FTRACE_MCOUNT_RECORD=y +CONFIG_HAVE_FUNCTION_ARG_ACCESS_API=y +CONFIG_HAVE_FUNCTION_ERROR_INJECTION=y +CONFIG_HAVE_FUNCTION_GRAPH_TRACER=y +CONFIG_HAVE_FUNCTION_TRACER=y +CONFIG_HAVE_FUTEX_CMPXCHG=y +CONFIG_HAVE_GCC_PLUGINS=y +CONFIG_HAVE_GENERIC_VDSO=y +CONFIG_HAVE_HARDENED_USERCOPY_ALLOCATOR=y +CONFIG_HAVE_HARDLOCKUP_DETECTOR_ARCH=y +CONFIG_HAVE_HARDLOCKUP_DETECTOR_PERF=y +CONFIG_HAVE_HW_BREAKPOINT=y +CONFIG_HAVE_IDE=y +CONFIG_HAVE_IMA_KEXEC=y +CONFIG_HAVE_IMX_ANATOP=y +CONFIG_HAVE_IMX_GPC=y +CONFIG_HAVE_IMX_MMDC=y +CONFIG_HAVE_IMX_SRC=y +CONFIG_HAVE_INTEL_TXT=y +CONFIG_HAVE_IOREMAP_PROT=y +CONFIG_HAVE_IRQ_EXIT_ON_IRQ_STACK=y +CONFIG_HAVE_IRQ_TIME_ACCOUNTING=y +CONFIG_HAVE_KERNEL_BZIP2=y +CONFIG_HAVE_KERNEL_GZIP=y +CONFIG_HAVE_KERNEL_LZ4=y +CONFIG_HAVE_KERNEL_LZMA=y +CONFIG_HAVE_KERNEL_LZO=y +CONFIG_HAVE_KERNEL_UNCOMPRESSED=y +CONFIG_HAVE_KERNEL_XZ=y +CONFIG_HAVE_KPROBES=y +CONFIG_HAVE_KPROBES_ON_FTRACE=y +CONFIG_HAVE_KRETPROBES=y +CONFIG_HAVE_KVM=y +CONFIG_HAVE_KVM_ARCH_TLB_FLUSH_ALL=y +CONFIG_HAVE_KVM_CPU_RELAX_INTERCEPT=y +CONFIG_HAVE_KVM_EVENTFD=y +CONFIG_HAVE_KVM_INVALID_WAKEUPS=y +CONFIG_HAVE_KVM_IRQCHIP=y +CONFIG_HAVE_KVM_IRQFD=y +CONFIG_HAVE_KVM_IRQ_BYPASS=y +CONFIG_HAVE_KVM_IRQ_ROUTING=y +CONFIG_HAVE_KVM_MSI=y +CONFIG_HAVE_KVM_NO_POLL=y +CONFIG_HAVE_KVM_VCPU_ASYNC_IOCTL=y +CONFIG_HAVE_KVM_VCPU_RUN_PID_CHANGE=y +CONFIG_HAVE_LD_DEAD_CODE_DATA_ELIMINATION=y +CONFIG_HAVE_LIVEPATCH=y +CONFIG_HAVE_MARCH_Z10_FEATURES=y +CONFIG_HAVE_MARCH_Z13_FEATURES=y +CONFIG_HAVE_MARCH_Z196_FEATURES=y +CONFIG_HAVE_MARCH_Z900_FEATURES=y +CONFIG_HAVE_MARCH_Z990_FEATURES=y +CONFIG_HAVE_MARCH_Z9_109_FEATURES=y +CONFIG_HAVE_MARCH_ZEC12_FEATURES=y +CONFIG_HAVE_MEMBLOCK_PHYS_MAP=y +CONFIG_HAVE_MEMORYLESS_NODES=y +CONFIG_HAVE_MEMORY_PRESENT=y +CONFIG_HAVE_MIXED_BREAKPOINTS_REGS=y +CONFIG_HAVE_MMIOTRACE_SUPPORT=y +CONFIG_HAVE_MOD_ARCH_SPECIFIC=y +CONFIG_HAVE_MOVE_PMD=y +CONFIG_HAVE_NET_DSA=y +CONFIG_HAVE_NMI=y +CONFIG_HAVE_NMI_WATCHDOG=y +CONFIG_HAVE_NOP_MCOUNT=y +CONFIG_HAVE_OPROFILE=y +CONFIG_HAVE_OPTPROBES=y +CONFIG_HAVE_PATA_PLATFORM=y +CONFIG_HAVE_PCI=y +CONFIG_HAVE_PCSPKR_PLATFORM=y +CONFIG_HAVE_PERF_EVENTS=y +CONFIG_HAVE_PERF_EVENTS_NMI=y +CONFIG_HAVE_PERF_REGS=y +CONFIG_HAVE_PERF_USER_STACK_DUMP=y +CONFIG_HAVE_PNETID=m +CONFIG_HAVE_PROC_CPU=y +CONFIG_HAVE_REGS_AND_STACK_ACCESS_API=y +CONFIG_HAVE_RELIABLE_STACKTRACE=y +CONFIG_HAVE_RSEQ=y +CONFIG_HAVE_S3C2410_I2C=y +CONFIG_HAVE_S3C2410_WATCHDOG=y +CONFIG_HAVE_S3C_RTC=y +CONFIG_HAVE_SETUP_PER_CPU_AREA=y +CONFIG_HAVE_SMP=y +CONFIG_HAVE_STACKPROTECTOR=y +CONFIG_HAVE_STACK_VALIDATION=y +CONFIG_HAVE_SYSCALL_TRACEPOINTS=y +CONFIG_HAVE_TIF_NOHZ=y +CONFIG_HAVE_UID16=y +CONFIG_HAVE_UNSTABLE_SCHED_CLOCK=y +CONFIG_HAVE_USER_RETURN_NOTIFIER=y +CONFIG_HAVE_VIRT_CPU_ACCOUNTING=y +CONFIG_HAVE_VIRT_CPU_ACCOUNTING_GEN=y +CONFIG_HBMC_AM654=m +# CONFIG_HCALL_STATS is not set +CONFIG_HD44780=m +CONFIG_HDC100X=m +CONFIG_HDLC=m +CONFIG_HDLC_CISCO=m +CONFIG_HDLC_FR=m +CONFIG_HDLC_PPP=m +CONFIG_HDLC_RAW=m +CONFIG_HDLC_RAW_ETH=m +CONFIG_HDLC_X25=m +CONFIG_HDMI=y +CONFIG_HDMI_LPE_AUDIO=m +CONFIG_HDQ_MASTER_OMAP=m +# CONFIG_HEADERS_INSTALL is not set +CONFIG_HERMES=m +CONFIG_HERMES_CACHE_FW_ON_INIT=y +# CONFIG_HERMES_PRISM is not set +# CONFIG_HFI1_DEBUG_SDMA_ORDER is not set +CONFIG_HI13X1_GMAC=y +CONFIG_HI3660_MBOX=m +CONFIG_HI6220_MBOX=m +CONFIG_HI8435=m +CONFIG_HIBERNATE_CALLBACKS=y +CONFIG_HIBERNATION_SNAPSHOT_DEV=y +CONFIG_HIDRAW=y +CONFIG_HID_A4TECH=m +CONFIG_HID_ACCUTOUCH=m +CONFIG_HID_ACRUX=m +CONFIG_HID_ACRUX_FF=y +CONFIG_HID_ALPS=m +CONFIG_HID_APPLE=m +CONFIG_HID_APPLEIR=m +CONFIG_HID_ASUS=m +CONFIG_HID_AUREAL=m +CONFIG_HID_BATTERY_STRENGTH=y +CONFIG_HID_BELKIN=m +CONFIG_HID_BETOP_FF=m +CONFIG_HID_BIGBEN_FF=m +CONFIG_HID_CHERRY=m +CONFIG_HID_CHICONY=m +CONFIG_HID_CMEDIA=m +CONFIG_HID_CORSAIR=m +CONFIG_HID_COUGAR=m +CONFIG_HID_CP2112=m +CONFIG_HID_CREATIVE_SB0540=m +CONFIG_HID_CYPRESS=m +CONFIG_HID_DRAGONRISE=m +CONFIG_HID_ELAN=m +CONFIG_HID_ELECOM=m +CONFIG_HID_ELO=m +CONFIG_HID_EMS_FF=m +CONFIG_HID_EZKEY=m +CONFIG_HID_GEMBIRD=m +CONFIG_HID_GENERIC=m +CONFIG_HID_GFRM=m +CONFIG_HID_GLORIOUS=m +CONFIG_HID_GOOGLE_HAMMER=m +CONFIG_HID_GREENASIA=m +CONFIG_HID_GT683R=m +CONFIG_HID_GYRATION=m +CONFIG_HID_HOLTEK=m +CONFIG_HID_HYPERV_MOUSE=m +CONFIG_HID_ICADE=m +CONFIG_HID_ITE=m +CONFIG_HID_JABRA=m +CONFIG_HID_KENSINGTON=m +CONFIG_HID_KEYTOUCH=m +CONFIG_HID_KYE=m +CONFIG_HID_LCPOWER=m +CONFIG_HID_LED=m +CONFIG_HID_LENOVO=m +CONFIG_HID_LOGITECH=m +CONFIG_HID_LOGITECH_DJ=m +CONFIG_HID_LOGITECH_HIDPP=m +CONFIG_HID_MACALLY=m +CONFIG_HID_MAGICMOUSE=m +CONFIG_HID_MALTRON=m +CONFIG_HID_MAYFLASH=m +CONFIG_HID_MCP2221=m +CONFIG_HID_MICROSOFT=m +CONFIG_HID_MONTEREY=m +CONFIG_HID_MULTITOUCH=m +CONFIG_HID_NTI=m +CONFIG_HID_NTRIG=m +CONFIG_HID_ORTEK=m +CONFIG_HID_PANTHERLORD=m +CONFIG_HID_PENMOUNT=m +CONFIG_HID_PETALYNX=m +CONFIG_HID_PICOLCD=m +CONFIG_HID_PICOLCD_BACKLIGHT=y +CONFIG_HID_PICOLCD_CIR=y +CONFIG_HID_PICOLCD_FB=y +CONFIG_HID_PICOLCD_LCD=y +CONFIG_HID_PICOLCD_LEDS=y +CONFIG_HID_PID=y +CONFIG_HID_PLANTRONICS=m +CONFIG_HID_PRIMAX=m +CONFIG_HID_PRODIKEYS=m +CONFIG_HID_REDRAGON=m +CONFIG_HID_RETRODE=m +CONFIG_HID_RMI=m +CONFIG_HID_ROCCAT=m +CONFIG_HID_SAITEK=m +CONFIG_HID_SAMSUNG=m +CONFIG_HID_SENSOR_ACCEL_3D=m +CONFIG_HID_SENSOR_ALS=m +CONFIG_HID_SENSOR_CUSTOM_SENSOR=m +CONFIG_HID_SENSOR_DEVICE_ROTATION=m +CONFIG_HID_SENSOR_GYRO_3D=m +CONFIG_HID_SENSOR_HUB=m +CONFIG_HID_SENSOR_HUMIDITY=m +CONFIG_HID_SENSOR_IIO_COMMON=m +CONFIG_HID_SENSOR_IIO_TRIGGER=m +CONFIG_HID_SENSOR_INCLINOMETER_3D=m +CONFIG_HID_SENSOR_MAGNETOMETER_3D=m +CONFIG_HID_SENSOR_PRESS=m +CONFIG_HID_SENSOR_PROX=m +CONFIG_HID_SENSOR_TEMP=m +CONFIG_HID_SMARTJOYPLUS=m +CONFIG_HID_SONY=m +CONFIG_HID_SPEEDLINK=m +CONFIG_HID_STEAM=m +CONFIG_HID_STEELSERIES=m +CONFIG_HID_SUNPLUS=m +CONFIG_HID_THINGM=m +CONFIG_HID_THRUSTMASTER=m +CONFIG_HID_TIVO=m +CONFIG_HID_TOPSEED=m +CONFIG_HID_TWINHAN=m +CONFIG_HID_U2FZERO=m +CONFIG_HID_UCLOGIC=m +CONFIG_HID_UDRAW_PS3=m +CONFIG_HID_VIEWSONIC=m +CONFIG_HID_WACOM=m +CONFIG_HID_WALTOP=m +CONFIG_HID_WIIMOTE=m +CONFIG_HID_XINMO=m +CONFIG_HID_ZEROPLUS=m +CONFIG_HID_ZYDACRON=m +CONFIG_HIGHMEM=y +CONFIG_HIGHPTE=y +CONFIG_HIGH_RES_TIMERS=y +CONFIG_HINIC=m +CONFIG_HIP04_ETH=m +# CONFIG_HIPPI is not set +CONFIG_HISILICON_ERRATUM_161010101=y +CONFIG_HISILICON_ERRATUM_161600802=y +CONFIG_HISILICON_IRQ_MBIGEN=y +CONFIG_HISILICON_LPC=y +CONFIG_HISI_DMA=m +CONFIG_HISI_FEMAC=m +CONFIG_HISI_PMU=y +CONFIG_HISI_THERMAL=m +CONFIG_HIST_TRIGGERS=y +# CONFIG_HIST_TRIGGERS_DEBUG is not set +CONFIG_HIX5HD2_GMAC=m +CONFIG_HMC425=m +CONFIG_HMC_DRV=m +CONFIG_HMEM_REPORTING=y +CONFIG_HMM_MIRROR=y +CONFIG_HMS_ANYBUSS_BUS=m +CONFIG_HMS_PROFINET=m +CONFIG_HNS=m +CONFIG_HNS3=m +CONFIG_HNS3_DCB=y +CONFIG_HNS3_ENET=m +CONFIG_HNS3_HCLGE=m +CONFIG_HNS3_HCLGEVF=m +CONFIG_HNS_DSAF=m +CONFIG_HNS_ENET=m +CONFIG_HNS_MDIO=m +CONFIG_HOLES_IN_ZONE=y +CONFIG_HOLTEK_FF=y +CONFIG_HOSTAP=m +CONFIG_HOSTAP_CS=m +CONFIG_HOSTAP_FIRMWARE=y +CONFIG_HOSTAP_FIRMWARE_NVRAM=y +CONFIG_HOSTAP_PCI=m +CONFIG_HOSTAP_PLX=m +CONFIG_HOTPLUG_CPU=y +CONFIG_HOTPLUG_PCI_ACPI=y +CONFIG_HOTPLUG_PCI_ACPI_IBM=m +CONFIG_HOTPLUG_PCI_CPCI=y +CONFIG_HOTPLUG_PCI_CPCI_GENERIC=m +CONFIG_HOTPLUG_PCI_CPCI_ZT5550=m +CONFIG_HOTPLUG_PCI_PCIE=y +CONFIG_HOTPLUG_PCI_POWERNV=m +CONFIG_HOTPLUG_PCI_RPA=m +CONFIG_HOTPLUG_PCI_RPA_DLPAR=m +CONFIG_HOTPLUG_PCI_S390=y +CONFIG_HOTPLUG_SMT=y +CONFIG_HP03=m +CONFIG_HP206C=m +CONFIG_HPET=y +CONFIG_HPET_EMULATE_RTC=y +CONFIG_HPET_MMAP=y +CONFIG_HPET_MMAP_DEFAULT=y +CONFIG_HPET_TIMER=y +CONFIG_HPWDT_NMI_DECODING=y +CONFIG_HP_ACCEL=m +CONFIG_HP_WATCHDOG=m +CONFIG_HP_WIRELESS=m +CONFIG_HP_WMI=m +CONFIG_HSA_AMD=y +CONFIG_HSI_BOARDINFO=y +CONFIG_HSI_CHAR=m +CONFIG_HSU_DMA=m +CONFIG_HT16K33=m +CONFIG_HTC_EGPIO=y +CONFIG_HTC_I2CPLD=y +CONFIG_HTS221=m +CONFIG_HTS221_I2C=m +CONFIG_HTS221_SPI=m +CONFIG_HTU21=m +CONFIG_HUAWEI_WMI=m +CONFIG_HUGETLBFS=y +CONFIG_HUGETLB_PAGE=y +CONFIG_HUGETLB_PAGE_SIZE_VARIABLE=y +CONFIG_HVCS=m +CONFIG_HVC_CONSOLE=y +# CONFIG_HVC_DCC is not set +CONFIG_HVC_DRIVER=y +CONFIG_HVC_IRQ=y +CONFIG_HVC_IUCV=y +CONFIG_HVC_OLD_HVSI=y +CONFIG_HVC_OPAL=y +CONFIG_HVC_RTAS=y +# CONFIG_HVC_UDBG is not set +CONFIG_HVC_XEN=y +CONFIG_HVC_XEN_FRONTEND=y +CONFIG_HV_PERF_CTRS=y +CONFIG_HWLAT_TRACER=y +# CONFIG_HWMON_DEBUG_CHIP is not set +CONFIG_HWMON_VID=m +CONFIG_HWPOISON_INJECT=m +CONFIG_HWSPINLOCK_OMAP=m +CONFIG_HWSPINLOCK_QCOM=m +CONFIG_HWSPINLOCK_SPRD=m +CONFIG_HW_CONSOLE=y +CONFIG_HW_PERF_EVENTS=y +CONFIG_HW_RANDOM=y +CONFIG_HW_RANDOM_AMD=m +CONFIG_HW_RANDOM_BCM2835=m +CONFIG_HW_RANDOM_CAVIUM=m +CONFIG_HW_RANDOM_EXYNOS=m +CONFIG_HW_RANDOM_HISI=m +CONFIG_HW_RANDOM_HISI_V2=m +CONFIG_HW_RANDOM_INTEL=m +CONFIG_HW_RANDOM_IPROC_RNG200=m +CONFIG_HW_RANDOM_MESON=m +CONFIG_HW_RANDOM_MTK=m +CONFIG_HW_RANDOM_NPCM=m +CONFIG_HW_RANDOM_OMAP=m +CONFIG_HW_RANDOM_OMAP3_ROM=m +CONFIG_HW_RANDOM_OPTEE=m +CONFIG_HW_RANDOM_POWERNV=m +CONFIG_HW_RANDOM_PSERIES=m +CONFIG_HW_RANDOM_S390=m +CONFIG_HW_RANDOM_TPM=y +CONFIG_HW_RANDOM_VIA=m +CONFIG_HW_RANDOM_VIRTIO=m +CONFIG_HW_RANDOM_XGENE=m +CONFIG_HX711=m +CONFIG_HYPERV=m +CONFIG_HYPERVISOR_GUEST=y +CONFIG_HYPERV_BALLOON=m +CONFIG_HYPERV_IOMMU=y +CONFIG_HYPERV_KEYBOARD=m +CONFIG_HYPERV_NET=m +CONFIG_HYPERV_STORAGE=m +# CONFIG_HYPERV_TESTING is not set +CONFIG_HYPERV_TIMER=y +CONFIG_HYPERV_UTILS=m +CONFIG_HYPERV_VSOCKETS=m +# CONFIG_HZ_200 is not set +# CONFIG_HZ_300 is not set +# CONFIG_HZ_500 is not set +CONFIG_HZ_FIXED=0 +# CONFIG_HZ_PERIODIC is not set +CONFIG_I2C_ALGOBIT=m +CONFIG_I2C_ALGOPCA=m +CONFIG_I2C_AMD756_S4882=m +CONFIG_I2C_ARB_GPIO_CHALLENGE=m +CONFIG_I2C_ASPEED=m +CONFIG_I2C_AXXIA=m +CONFIG_I2C_BCM2835=m +CONFIG_I2C_BCM_IPROC=m +CONFIG_I2C_BOARDINFO=y +CONFIG_I2C_BRCMSTB=m +# CONFIG_I2C_CADENCE is not set +CONFIG_I2C_CHT_WC=m +CONFIG_I2C_COMPAT=y +CONFIG_I2C_CROS_EC_TUNNEL=m +# CONFIG_I2C_DEBUG_ALGO is not set +# CONFIG_I2C_DEBUG_BUS is not set +# CONFIG_I2C_DEBUG_CORE is not set +CONFIG_I2C_DEMUX_PINCTRL=m +CONFIG_I2C_DESIGNWARE_BAYTRAIL=y +CONFIG_I2C_DESIGNWARE_CORE=y +# CONFIG_I2C_DESIGNWARE_SLAVE is not set +CONFIG_I2C_DIOLAN_U2C=m +CONFIG_I2C_DLN2=m +CONFIG_I2C_EXYNOS5=m +CONFIG_I2C_FSI=m +# CONFIG_I2C_GPIO_FAULT_INJECTOR is not set +CONFIG_I2C_HELPER_AUTO=y +CONFIG_I2C_HIX5HD2=m +CONFIG_I2C_IMX_LPI2C=m +CONFIG_I2C_ISMT=m +CONFIG_I2C_KEMPLD=m +CONFIG_I2C_MESON=m +CONFIG_I2C_MLXCPLD=m +CONFIG_I2C_MPC=m +CONFIG_I2C_MT65XX=m +CONFIG_I2C_MULTI_INSTANTIATE=m +CONFIG_I2C_MUX=m +CONFIG_I2C_MUX_GPMUX=m +CONFIG_I2C_MUX_PINCTRL=m +CONFIG_I2C_MV64XXX=m +CONFIG_I2C_NFORCE2_S4985=m +CONFIG_I2C_NOMADIK=m +CONFIG_I2C_NPCM7XX=m +CONFIG_I2C_OMAP=y +CONFIG_I2C_OPAL=y +CONFIG_I2C_OWL=m +CONFIG_I2C_PARPORT=m +CONFIG_I2C_PXA=m +CONFIG_I2C_PXA_SLAVE=y +CONFIG_I2C_QCOM_CCI=m +CONFIG_I2C_QCOM_GENI=m +CONFIG_I2C_QUP=m +CONFIG_I2C_RCAR=m +CONFIG_I2C_RIIC=m +CONFIG_I2C_RK3X=m +CONFIG_I2C_ROBOTFUZZ_OSIF=m +CONFIG_I2C_S3C2410=y +CONFIG_I2C_SCMI=m +CONFIG_I2C_SH_MOBILE=m +CONFIG_I2C_SI470X=m +CONFIG_I2C_SI4713=m +CONFIG_I2C_SLAVE_EEPROM=m +CONFIG_I2C_SMBUS=m +CONFIG_I2C_SPRD=y +CONFIG_I2C_STUB=m +CONFIG_I2C_SYNQUACER=m +CONFIG_I2C_TEGRA=m +CONFIG_I2C_TEGRA_BPMP=m +CONFIG_I2C_THUNDERX=m +CONFIG_I2C_TINY_USB=m +# CONFIG_I2C_UNIPHIER is not set +# CONFIG_I2C_UNIPHIER_F is not set +CONFIG_I2C_VERSATILE=m +CONFIG_I2C_VIPERBOARD=m +CONFIG_I2C_XGENE_SLIMPRO=m +CONFIG_I2C_XLP9XX=m +CONFIG_I40E=m +CONFIG_I40EVF=m +CONFIG_I40E_DCB=y +CONFIG_I82092=m +CONFIG_I8253_LOCK=y +CONFIG_I8K=m +CONFIG_IA32_EMULATION=y +CONFIG_IA32_FEAT_CTL=y +CONFIG_IAQCORE=m +CONFIG_IAVF=m +CONFIG_IB700_WDT=m +CONFIG_IBMASR=m +CONFIG_IBMVETH=m +CONFIG_IBMVIO=y +CONFIG_IBMVMC=m +CONFIG_IBMVNIC=m +CONFIG_IBM_ASM=m +CONFIG_IBM_BSR=m +CONFIG_IBM_PARTITION=y +CONFIG_IBM_RTL=m +CONFIG_ICE=m +CONFIG_ICP10100=m +CONFIG_ICPLUS_PHY=m +CONFIG_ICST=y +# CONFIG_IDE is not set +CONFIG_IDEAPAD_LAPTOP=m +CONFIG_IDLE_INJECT=y +CONFIG_IDLE_PAGE_TRACKING=y +CONFIG_IE6XX_WDT=m +CONFIG_IEEE802154_6LOWPAN=m +CONFIG_IEEE802154_ADF7242=m +CONFIG_IEEE802154_AT86RF230=m +CONFIG_IEEE802154_AT86RF230_DEBUGFS=y +CONFIG_IEEE802154_ATUSB=m +CONFIG_IEEE802154_CA8210=m +CONFIG_IEEE802154_CA8210_DEBUGFS=y +CONFIG_IEEE802154_CC2520=m +CONFIG_IEEE802154_DRIVERS=m +CONFIG_IEEE802154_FAKELB=m +CONFIG_IEEE802154_HWSIM=m +CONFIG_IEEE802154_MCR20A=m +CONFIG_IEEE802154_MRF24J40=m +# CONFIG_IEEE802154_NL802154_EXPERIMENTAL is not set +CONFIG_IEEE802154_SOCKET=m +CONFIG_IFB=m +CONFIG_IFCVF=m +CONFIG_IGB=m +CONFIG_IGBVF=m +CONFIG_IGB_DCA=y +CONFIG_IGB_HWMON=y +CONFIG_IGC=m +CONFIG_IIO_ADIS_LIB=m +CONFIG_IIO_ADIS_LIB_BUFFER=y +CONFIG_IIO_BUFFER=y +CONFIG_IIO_BUFFER_CB=m +CONFIG_IIO_BUFFER_DMA=m +CONFIG_IIO_BUFFER_DMAENGINE=m +CONFIG_IIO_BUFFER_HW_CONSUMER=m +CONFIG_IIO_CONFIGFS=m +CONFIG_IIO_CONSUMERS_PER_TRIGGER=2 +CONFIG_IIO_CROS_EC_ACCEL_LEGACY=m +CONFIG_IIO_CROS_EC_BARO=m +CONFIG_IIO_CROS_EC_LIGHT_PROX=m +CONFIG_IIO_CROS_EC_SENSORS=m +CONFIG_IIO_CROS_EC_SENSORS_CORE=m +CONFIG_IIO_CROS_EC_SENSORS_LID_ANGLE=m +CONFIG_IIO_HRTIMER_TRIGGER=m +CONFIG_IIO_INTERRUPT_TRIGGER=m +CONFIG_IIO_KFIFO_BUF=m +CONFIG_IIO_MS_SENSORS_I2C=m +CONFIG_IIO_MUX=m +CONFIG_IIO_RESCALE=m +CONFIG_IIO_SIMPLE_DUMMY=m +# CONFIG_IIO_SIMPLE_DUMMY_BUFFER is not set +# CONFIG_IIO_SIMPLE_DUMMY_EVENTS is not set +CONFIG_IIO_SSP_SENSORHUB=m +CONFIG_IIO_SSP_SENSORS_COMMONS=m +CONFIG_IIO_ST_ACCEL_3AXIS=m +CONFIG_IIO_ST_ACCEL_I2C_3AXIS=m +CONFIG_IIO_ST_ACCEL_SPI_3AXIS=m +CONFIG_IIO_ST_GYRO_3AXIS=m +CONFIG_IIO_ST_GYRO_I2C_3AXIS=m +CONFIG_IIO_ST_GYRO_SPI_3AXIS=m +CONFIG_IIO_ST_LSM6DSX=m +CONFIG_IIO_ST_LSM6DSX_I2C=m +CONFIG_IIO_ST_LSM6DSX_I3C=m +CONFIG_IIO_ST_LSM6DSX_SPI=m +CONFIG_IIO_ST_MAGN_3AXIS=m +CONFIG_IIO_ST_MAGN_I2C_3AXIS=m +CONFIG_IIO_ST_MAGN_SPI_3AXIS=m +CONFIG_IIO_ST_PRESS=m +CONFIG_IIO_ST_PRESS_I2C=m +CONFIG_IIO_ST_PRESS_SPI=m +CONFIG_IIO_ST_SENSORS_CORE=m +CONFIG_IIO_ST_SENSORS_I2C=m +CONFIG_IIO_ST_SENSORS_SPI=m +CONFIG_IIO_SW_DEVICE=m +CONFIG_IIO_SW_TRIGGER=m +CONFIG_IIO_SYSFS_TRIGGER=m +CONFIG_IIO_TIGHTLOOP_TRIGGER=m +CONFIG_IIO_TRIGGER=y +CONFIG_IIO_TRIGGERED_BUFFER=m +CONFIG_IIO_TRIGGERED_EVENT=m +# CONFIG_IKCONFIG is not set +CONFIG_IKHEADERS=m +CONFIG_IMA=y +CONFIG_IMA_APPRAISE=y +CONFIG_IMA_APPRAISE_BOOTPARAM=y +# CONFIG_IMA_APPRAISE_BUILD_POLICY is not set +CONFIG_IMA_APPRAISE_MODSIG=y +# CONFIG_IMA_APPRAISE_SIGNED_INIT is not set +# CONFIG_IMA_BLACKLIST_KEYRING is not set +# CONFIG_IMA_DEFAULT_HASH_SHA512 is not set +CONFIG_IMA_KEXEC=y +# CONFIG_IMA_KEYRINGS_PERMIT_SIGNED_BY_BUILTIN_OR_SECONDARY is not set +CONFIG_IMA_LSM_RULES=y +CONFIG_IMA_MEASURE_ASYMMETRIC_KEYS=y +CONFIG_IMA_MEASURE_PCR_IDX=10 +CONFIG_IMA_QUEUE_EARLY_BOOT_KEYS=y +# CONFIG_IMA_TEMPLATE is not set +CONFIG_IMA_TRUSTED_KEYRING=y +# CONFIG_IMA_WRITE_POLICY is not set +CONFIG_IMA_X509_PATH="/etc/keys/x509_ima.der" +CONFIG_IMG_ASCII_LCD=m +CONFIG_IMX2_WDT=m +CONFIG_IMX7D_ADC=m +CONFIG_IMX7ULP_WDT=m +CONFIG_IMX8MM_THERMAL=m +CONFIG_IMX_DMA=m +CONFIG_IMX_DSP=m +CONFIG_IMX_GPCV2=y +CONFIG_IMX_GPCV2_PM_DOMAINS=y +CONFIG_IMX_INTMUX=y +CONFIG_IMX_IPUV3_CORE=m +CONFIG_IMX_IRQSTEER=y +CONFIG_IMX_MBOX=m +CONFIG_IMX_REMOTEPROC=m +CONFIG_IMX_SCU=y +CONFIG_IMX_SCU_PD=y +CONFIG_IMX_SCU_SOC=y +CONFIG_IMX_SC_THERMAL=m +CONFIG_IMX_SC_WDT=m +CONFIG_IMX_SDMA=m +CONFIG_IMX_THERMAL=m +CONFIG_IMX_WEIM=y +CONFIG_INA2XX_ADC=m +CONFIG_INDIRECT_PIO=y +CONFIG_INET=y +CONFIG_INET6_AH=m +CONFIG_INET6_ESP=m +CONFIG_INET6_ESPINTCP=y +CONFIG_INET6_ESP_OFFLOAD=m +CONFIG_INET6_IPCOMP=m +CONFIG_INET6_TUNNEL=m +CONFIG_INET6_XFRM_TUNNEL=m +CONFIG_INET_AH=m +CONFIG_INET_DCCP_DIAG=m +CONFIG_INET_DIAG=m +CONFIG_INET_DIAG_DESTROY=y +CONFIG_INET_ESP=m +CONFIG_INET_ESPINTCP=y +CONFIG_INET_ESP_OFFLOAD=m +CONFIG_INET_IPCOMP=m +CONFIG_INET_RAW_DIAG=m +CONFIG_INET_SCTP_DIAG=m +CONFIG_INET_TCP_DIAG=m +CONFIG_INET_TUNNEL=m +CONFIG_INET_UDP_DIAG=m +CONFIG_INET_XFRM_TUNNEL=m +CONFIG_INFINIBAND=m +CONFIG_INFINIBAND_ADDR_TRANS=y +CONFIG_INFINIBAND_ADDR_TRANS_CONFIGFS=y +CONFIG_INFINIBAND_CXGB4=m +CONFIG_INFINIBAND_EFA=m +# CONFIG_INFINIBAND_EXP_LEGACY_VERBS_NEW_UAPI is not set +CONFIG_INFINIBAND_HFI1=m +CONFIG_INFINIBAND_HNS=m +CONFIG_INFINIBAND_HNS_HIP06=y +CONFIG_INFINIBAND_HNS_HIP08=y +CONFIG_INFINIBAND_I40IW=m +CONFIG_INFINIBAND_IPOIB=m +CONFIG_INFINIBAND_IPOIB_CM=y +# CONFIG_INFINIBAND_IPOIB_DEBUG is not set +CONFIG_INFINIBAND_ISER=m +CONFIG_INFINIBAND_ISERT=m +CONFIG_INFINIBAND_MTHCA=m +# CONFIG_INFINIBAND_MTHCA_DEBUG is not set +CONFIG_INFINIBAND_ON_DEMAND_PAGING=y +CONFIG_INFINIBAND_OPA_VNIC=m +CONFIG_INFINIBAND_QEDR=m +CONFIG_INFINIBAND_QIB=m +CONFIG_INFINIBAND_QIB_DCA=y +CONFIG_INFINIBAND_RDMAVT=m +CONFIG_INFINIBAND_RTRS=m +CONFIG_INFINIBAND_RTRS_CLIENT=m +CONFIG_INFINIBAND_RTRS_SERVER=m +CONFIG_INFINIBAND_SRP=m +CONFIG_INFINIBAND_SRPT=m +CONFIG_INFINIBAND_USER_ACCESS=m +CONFIG_INFINIBAND_USER_MAD=m +CONFIG_INFINIBAND_USER_MEM=y +CONFIG_INFINIBAND_USNIC=m +CONFIG_INFINIBAND_VIRT_DMA=y +CONFIG_INFINIBAND_VMWARE_PVRDMA=m +CONFIG_INFTL=m +CONFIG_INITRAMFS_SOURCE="" +CONFIG_INIT_ENV_ARG_LIMIT=32 +CONFIG_INIT_ON_ALLOC_DEFAULT_ON=y +# CONFIG_INIT_ON_FREE_DEFAULT_ON is not set +CONFIG_INIT_STACK_NONE=y +CONFIG_INLINE_READ_LOCK=y +CONFIG_INLINE_READ_LOCK_BH=y +CONFIG_INLINE_READ_LOCK_IRQ=y +CONFIG_INLINE_READ_LOCK_IRQSAVE=y +CONFIG_INLINE_READ_TRYLOCK=y +CONFIG_INLINE_READ_UNLOCK=y +CONFIG_INLINE_READ_UNLOCK_BH=y +CONFIG_INLINE_READ_UNLOCK_IRQ=y +CONFIG_INLINE_READ_UNLOCK_IRQRESTORE=y +CONFIG_INLINE_SPIN_LOCK=y +CONFIG_INLINE_SPIN_LOCK_BH=y +CONFIG_INLINE_SPIN_LOCK_IRQ=y +CONFIG_INLINE_SPIN_LOCK_IRQSAVE=y +CONFIG_INLINE_SPIN_TRYLOCK=y +CONFIG_INLINE_SPIN_TRYLOCK_BH=y +CONFIG_INLINE_SPIN_UNLOCK_BH=y +CONFIG_INLINE_SPIN_UNLOCK_IRQ=y +CONFIG_INLINE_SPIN_UNLOCK_IRQRESTORE=y +CONFIG_INLINE_WRITE_LOCK=y +CONFIG_INLINE_WRITE_LOCK_BH=y +CONFIG_INLINE_WRITE_LOCK_IRQ=y +CONFIG_INLINE_WRITE_LOCK_IRQSAVE=y +CONFIG_INLINE_WRITE_TRYLOCK=y +CONFIG_INLINE_WRITE_UNLOCK=y +CONFIG_INLINE_WRITE_UNLOCK_BH=y +CONFIG_INLINE_WRITE_UNLOCK_IRQ=y +CONFIG_INLINE_WRITE_UNLOCK_IRQRESTORE=y +CONFIG_INOTIFY_USER=y +CONFIG_INPUT=y +CONFIG_INPUT_88PM80X_ONKEY=m +CONFIG_INPUT_88PM860X_ONKEY=m +CONFIG_INPUT_AD714X=m +CONFIG_INPUT_AD714X_I2C=m +CONFIG_INPUT_AD714X_SPI=m +CONFIG_INPUT_ADXL34X=m +CONFIG_INPUT_ADXL34X_I2C=m +CONFIG_INPUT_ADXL34X_SPI=m +CONFIG_INPUT_APANEL=m +CONFIG_INPUT_ARIZONA_HAPTICS=m +CONFIG_INPUT_ATI_REMOTE2=m +CONFIG_INPUT_ATLAS_BTNS=m +CONFIG_INPUT_ATMEL_CAPTOUCH=m +CONFIG_INPUT_AXP20X_PEK=m +CONFIG_INPUT_BMA150=m +CONFIG_INPUT_CM109=m +CONFIG_INPUT_CMA3000=m +CONFIG_INPUT_CMA3000_I2C=m +CONFIG_INPUT_CPCAP_PWRBUTTON=m +CONFIG_INPUT_DA9052_ONKEY=m +CONFIG_INPUT_DA9055_ONKEY=m +CONFIG_INPUT_DA9063_ONKEY=m +CONFIG_INPUT_DRV260X_HAPTICS=m +CONFIG_INPUT_DRV2665_HAPTICS=m +CONFIG_INPUT_DRV2667_HAPTICS=m +CONFIG_INPUT_E3X0_BUTTON=m +CONFIG_INPUT_EVDEV=y +CONFIG_INPUT_GPIO_BEEPER=m +CONFIG_INPUT_GPIO_DECODER=m +CONFIG_INPUT_GPIO_ROTARY_ENCODER=m +CONFIG_INPUT_GPIO_VIBRA=m +CONFIG_INPUT_HISI_POWERKEY=m +CONFIG_INPUT_IDEAPAD_SLIDEBAR=m +CONFIG_INPUT_IMS_PCU=m +CONFIG_INPUT_IQS269A=m +CONFIG_INPUT_KEYSPAN_REMOTE=m +CONFIG_INPUT_KXTJ9=m +CONFIG_INPUT_LEDS=m +CONFIG_INPUT_MAX77650_ONKEY=m +CONFIG_INPUT_MAX77693_HAPTIC=m +CONFIG_INPUT_MAX8925_ONKEY=m +CONFIG_INPUT_MAX8997_HAPTIC=m +CONFIG_INPUT_MC13783_PWRBUTTON=m +CONFIG_INPUT_MMA8450=m +CONFIG_INPUT_MOUSEDEV_PSAUX=y +CONFIG_INPUT_MOUSEDEV_SCREEN_X=1024 +CONFIG_INPUT_MOUSEDEV_SCREEN_Y=768 +CONFIG_INPUT_PALMAS_PWRBUTTON=m +CONFIG_INPUT_PCAP=m +CONFIG_INPUT_PCF50633_PMU=m +CONFIG_INPUT_PCF8574=m +CONFIG_INPUT_PCSPKR=m +CONFIG_INPUT_PM8941_PWRKEY=m +CONFIG_INPUT_PM8XXX_VIBRATOR=m +CONFIG_INPUT_PMIC8XXX_PWRKEY=m +CONFIG_INPUT_POWERMATE=m +CONFIG_INPUT_PWM_BEEPER=m +CONFIG_INPUT_PWM_VIBRA=m +CONFIG_INPUT_RAVE_SP_PWRBUTTON=m +CONFIG_INPUT_REGULATOR_HAPTIC=m +CONFIG_INPUT_RETU_PWRBUTTON=m +CONFIG_INPUT_RK805_PWRKEY=m +CONFIG_INPUT_SC27XX_VIBRA=m +CONFIG_INPUT_SOC_BUTTON_ARRAY=m +CONFIG_INPUT_STPMIC1_ONKEY=m +CONFIG_INPUT_TPS65218_PWRBUTTON=m +CONFIG_INPUT_TWL4030_PWRBUTTON=m +CONFIG_INPUT_TWL4030_VIBRA=m +CONFIG_INPUT_TWL6040_VIBRA=m +CONFIG_INPUT_UINPUT=y +CONFIG_INPUT_WM831X_ON=m +CONFIG_INPUT_XEN_KBDDEV_FRONTEND=m +CONFIG_INPUT_YEALINK=m +CONFIG_INSTRUCTION_DECODER=y +CONFIG_INT3406_THERMAL=m +CONFIG_INT340X_THERMAL=m +CONFIG_INTEGRITY=y +CONFIG_INTEGRITY_ASYMMETRIC_KEYS=y +CONFIG_INTEGRITY_AUDIT=y +CONFIG_INTEGRITY_PLATFORM_KEYRING=y +CONFIG_INTEGRITY_SIGNATURE=y +CONFIG_INTEGRITY_TRUSTED_KEYRING=y +CONFIG_INTEL_ATOMISP=y +CONFIG_INTEL_BXTWC_PMIC_TMU=m +CONFIG_INTEL_BXT_PMIC_THERMAL=m +CONFIG_INTEL_CHTDC_TI_PWRBTN=m +CONFIG_INTEL_CHT_INT33FE=m +CONFIG_INTEL_GTT=y +CONFIG_INTEL_HID_EVENT=m +CONFIG_INTEL_IDLE=y +CONFIG_INTEL_IDMA64=m +CONFIG_INTEL_IDXD=m +CONFIG_INTEL_INT0002_VGPIO=m +CONFIG_INTEL_IOATDMA=m +CONFIG_INTEL_IOMMU=y +# CONFIG_INTEL_IOMMU_DEFAULT_ON is not set +CONFIG_INTEL_IOMMU_FLOPPY_WA=y +# CONFIG_INTEL_IOMMU_SCALABLE_MODE_DEFAULT_ON is not set +CONFIG_INTEL_IOMMU_SVM=y +CONFIG_INTEL_IPS=m +CONFIG_INTEL_ISH_FIRMWARE_DOWNLOADER=m +CONFIG_INTEL_ISH_HID=m +CONFIG_INTEL_MEI=m +CONFIG_INTEL_MEI_HDCP=m +CONFIG_INTEL_MEI_ME=m +CONFIG_INTEL_MEI_TXE=m +CONFIG_INTEL_MEI_WDT=m +CONFIG_INTEL_MENLOW=m +CONFIG_INTEL_MFLD_THERMAL=m +CONFIG_INTEL_MIC_BUS=m +CONFIG_INTEL_MIC_CARD=m +CONFIG_INTEL_MIC_HOST=m +CONFIG_INTEL_MIC_X100_DMA=m +CONFIG_INTEL_MID_POWER_BUTTON=m +CONFIG_INTEL_MRFLD_ADC=m +CONFIG_INTEL_MRFLD_PWRBTN=m +CONFIG_INTEL_OAKTRAIL=m +CONFIG_INTEL_PCH_THERMAL=m +CONFIG_INTEL_PMC_CORE=y +CONFIG_INTEL_POWERCLAMP=m +CONFIG_INTEL_PUNIT_IPC=m +CONFIG_INTEL_RAPL=m +CONFIG_INTEL_RAPL_CORE=m +CONFIG_INTEL_RST=m +CONFIG_INTEL_SCU=y +CONFIG_INTEL_SCU_IPC=y +CONFIG_INTEL_SCU_IPC_UTIL=m +CONFIG_INTEL_SCU_PCI=y +CONFIG_INTEL_SCU_PLATFORM=m +CONFIG_INTEL_SMARTCONNECT=m +CONFIG_INTEL_SOC_DTS_IOSF_CORE=m +CONFIG_INTEL_SOC_DTS_THERMAL=m +CONFIG_INTEL_SOC_PMIC=y +CONFIG_INTEL_SOC_PMIC_BXTWC=m +CONFIG_INTEL_SOC_PMIC_CHTDC_TI=m +CONFIG_INTEL_SOC_PMIC_CHTWC=y +CONFIG_INTEL_SOC_PMIC_MRFLD=m +CONFIG_INTEL_SPEED_SELECT_INTERFACE=m +CONFIG_INTEL_STRATIX10_RSU=m +CONFIG_INTEL_STRATIX10_SERVICE=m +CONFIG_INTEL_TELEMETRY=m +CONFIG_INTEL_TH=m +CONFIG_INTEL_TH_ACPI=m +# CONFIG_INTEL_TH_DEBUG is not set +CONFIG_INTEL_TH_GTH=m +CONFIG_INTEL_TH_MSU=m +CONFIG_INTEL_TH_PCI=m +CONFIG_INTEL_TH_PTI=m +CONFIG_INTEL_TH_STH=m +CONFIG_INTEL_TURBO_MAX_3=y +CONFIG_INTEL_TXT=y +CONFIG_INTEL_UNCORE_FREQ_CONTROL=m +CONFIG_INTEL_VBTN=m +CONFIG_INTEL_WMI_SBL_FW_UPDATE=m +CONFIG_INTEL_WMI_THUNDERBOLT=m +CONFIG_INTEL_XWAY_PHY=m +CONFIG_INTERCONNECT_IMX=m +CONFIG_INTERCONNECT_IMX8MM=m +CONFIG_INTERCONNECT_IMX8MN=m +CONFIG_INTERCONNECT_IMX8MQ=m +CONFIG_INTERCONNECT_QCOM=y +CONFIG_INTERCONNECT_QCOM_BCM_VOTER=m +CONFIG_INTERCONNECT_QCOM_MSM8916=m +CONFIG_INTERCONNECT_QCOM_MSM8974=m +CONFIG_INTERCONNECT_QCOM_OSM_L3=m +CONFIG_INTERCONNECT_QCOM_QCS404=m +CONFIG_INTERCONNECT_QCOM_RPMH=m +CONFIG_INTERCONNECT_QCOM_SC7180=m +CONFIG_INTERCONNECT_QCOM_SDM845=m +CONFIG_INTERCONNECT_QCOM_SMD_RPM=m +CONFIG_INTERVAL_TREE=y +# CONFIG_INTERVAL_TREE_TEST is not set +CONFIG_INV_MPU6050_I2C=m +CONFIG_INV_MPU6050_IIO=m +CONFIG_INV_MPU6050_SPI=m +CONFIG_IOASID=y +CONFIG_IOMMU_API=y +# CONFIG_IOMMU_DEBUG is not set +# CONFIG_IOMMU_DEBUGFS is not set +# CONFIG_IOMMU_DEFAULT_PASSTHROUGH is not set +CONFIG_IOMMU_DMA=y +CONFIG_IOMMU_HELPER=y +CONFIG_IOMMU_IO_PGTABLE=y +# CONFIG_IOMMU_IO_PGTABLE_ARMV7S is not set +CONFIG_IOMMU_IO_PGTABLE_LPAE=y +# CONFIG_IOMMU_IO_PGTABLE_LPAE_SELFTEST is not set +CONFIG_IOMMU_SUPPORT=y +# CONFIG_ION is not set +CONFIG_IONIC=m +CONFIG_IOSCHED_BFQ=m +CONFIG_IOSF_MBI=y +CONFIG_IOSF_MBI_DEBUG=y +# CONFIG_IO_DELAY_0X80 is not set +CONFIG_IO_DELAY_0XED=y +# CONFIG_IO_DELAY_NONE is not set +# CONFIG_IO_DELAY_UDELAY is not set +CONFIG_IO_EVENT_IRQ=y +# CONFIG_IO_STRICT_DEVMEM is not set +CONFIG_IO_URING=y +CONFIG_IO_WQ=y +CONFIG_IP6_NF_FILTER=m +CONFIG_IP6_NF_IPTABLES=m +CONFIG_IP6_NF_MANGLE=m +CONFIG_IP6_NF_MATCH_AH=m +CONFIG_IP6_NF_MATCH_EUI64=m +CONFIG_IP6_NF_MATCH_FRAG=m +CONFIG_IP6_NF_MATCH_HL=m +CONFIG_IP6_NF_MATCH_IPV6HEADER=m +CONFIG_IP6_NF_MATCH_MH=m +CONFIG_IP6_NF_MATCH_OPTS=m +CONFIG_IP6_NF_MATCH_RPFILTER=m +CONFIG_IP6_NF_MATCH_RT=m +CONFIG_IP6_NF_MATCH_SRH=m +CONFIG_IP6_NF_NAT=m +CONFIG_IP6_NF_RAW=m +CONFIG_IP6_NF_SECURITY=m +CONFIG_IP6_NF_TARGET_HL=m +CONFIG_IP6_NF_TARGET_MASQUERADE=m +CONFIG_IP6_NF_TARGET_NPT=m +CONFIG_IP6_NF_TARGET_REJECT=m +CONFIG_IP6_NF_TARGET_SYNPROXY=m +CONFIG_IPC_NS=y +# CONFIG_IPDDP is not set +CONFIG_IPMB_DEVICE_INTERFACE=m +CONFIG_IPMI_DEVICE_INTERFACE=m +CONFIG_IPMI_DMI_DECODE=y +CONFIG_IPMI_KCS_BMC=m +# CONFIG_IPMI_PANIC_EVENT is not set +CONFIG_IPMI_PLAT_DATA=y +CONFIG_IPMI_POWERNV=m +CONFIG_IPMI_POWEROFF=m +CONFIG_IPMI_SI=m +CONFIG_IPMI_SSIF=m +CONFIG_IPMI_WATCHDOG=m +CONFIG_IPQ_GCC_4019=m +CONFIG_IPQ_GCC_6018=m +CONFIG_IPQ_GCC_806X=m +CONFIG_IPQ_GCC_8074=m +CONFIG_IPQ_LCC_806X=m +CONFIG_IPV6=y +CONFIG_IPV6_FOU=m +CONFIG_IPV6_FOU_TUNNEL=m +CONFIG_IPV6_GRE=m +CONFIG_IPV6_ILA=m +CONFIG_IPV6_MIP6=m +CONFIG_IPV6_MROUTE=y +CONFIG_IPV6_MROUTE_MULTIPLE_TABLES=y +CONFIG_IPV6_MULTIPLE_TABLES=y +CONFIG_IPV6_NDISC_NODETYPE=y +# CONFIG_IPV6_OPTIMISTIC_DAD is not set +CONFIG_IPV6_PIMSM_V2=y +CONFIG_IPV6_ROUTER_PREF=y +CONFIG_IPV6_ROUTE_INFO=y +# CONFIG_IPV6_RPL_LWTUNNEL is not set +CONFIG_IPV6_SEG6_BPF=y +CONFIG_IPV6_SEG6_HMAC=y +CONFIG_IPV6_SEG6_LWTUNNEL=y +CONFIG_IPV6_SIT=m +CONFIG_IPV6_SIT_6RD=y +CONFIG_IPV6_SUBTREES=y +CONFIG_IPV6_TUNNEL=m +CONFIG_IPV6_VTI=m +CONFIG_IPVLAN=m +CONFIG_IPVLAN_L3S=y +CONFIG_IPVTAP=m +CONFIG_IPW2100=m +# CONFIG_IPW2100_DEBUG is not set +CONFIG_IPW2100_MONITOR=y +CONFIG_IPW2200=m +# CONFIG_IPW2200_DEBUG is not set +CONFIG_IPW2200_MONITOR=y +CONFIG_IPW2200_PROMISCUOUS=y +CONFIG_IPW2200_QOS=y +CONFIG_IPW2200_RADIOTAP=y +CONFIG_IPWIRELESS=m +CONFIG_IP_ADVANCED_ROUTER=y +CONFIG_IP_DCCP=m +# CONFIG_IP_DCCP_CCID2_DEBUG is not set +# CONFIG_IP_DCCP_CCID3_DEBUG is not set +# CONFIG_IP_DCCP_DEBUG is not set +CONFIG_IP_DCCP_TFRC_LIB=y +CONFIG_IP_FIB_TRIE_STATS=y +CONFIG_IP_MROUTE=y +CONFIG_IP_MROUTE_COMMON=y +CONFIG_IP_MROUTE_MULTIPLE_TABLES=y +CONFIG_IP_MULTICAST=y +CONFIG_IP_MULTIPLE_TABLES=y +CONFIG_IP_NF_ARPFILTER=m +CONFIG_IP_NF_ARPTABLES=m +CONFIG_IP_NF_ARP_MANGLE=m +CONFIG_IP_NF_FILTER=m +CONFIG_IP_NF_IPTABLES=m +CONFIG_IP_NF_MANGLE=m +CONFIG_IP_NF_MATCH_AH=m +CONFIG_IP_NF_MATCH_ECN=m +CONFIG_IP_NF_MATCH_RPFILTER=m +CONFIG_IP_NF_MATCH_TTL=m +CONFIG_IP_NF_NAT=m +CONFIG_IP_NF_RAW=m +CONFIG_IP_NF_SECURITY=m +CONFIG_IP_NF_TARGET_CLUSTERIP=m +CONFIG_IP_NF_TARGET_ECN=m +CONFIG_IP_NF_TARGET_MASQUERADE=m +CONFIG_IP_NF_TARGET_NETMAP=m +CONFIG_IP_NF_TARGET_REDIRECT=m +CONFIG_IP_NF_TARGET_REJECT=m +CONFIG_IP_NF_TARGET_SYNPROXY=m +CONFIG_IP_NF_TARGET_TTL=m +CONFIG_IP_PIMSM_V1=y +CONFIG_IP_PIMSM_V2=y +# CONFIG_IP_PNP is not set +CONFIG_IP_ROUTE_CLASSID=y +CONFIG_IP_ROUTE_MULTIPATH=y +CONFIG_IP_ROUTE_VERBOSE=y +CONFIG_IP_SCTP=m +CONFIG_IP_SET=m +CONFIG_IP_SET_BITMAP_IP=m +CONFIG_IP_SET_BITMAP_IPMAC=m +CONFIG_IP_SET_BITMAP_PORT=m +CONFIG_IP_SET_HASH_IP=m +CONFIG_IP_SET_HASH_IPMAC=m +CONFIG_IP_SET_HASH_IPMARK=m +CONFIG_IP_SET_HASH_IPPORT=m +CONFIG_IP_SET_HASH_IPPORTIP=m +CONFIG_IP_SET_HASH_IPPORTNET=m +CONFIG_IP_SET_HASH_MAC=m +CONFIG_IP_SET_HASH_NET=m +CONFIG_IP_SET_HASH_NETIFACE=m +CONFIG_IP_SET_HASH_NETNET=m +CONFIG_IP_SET_HASH_NETPORT=m +CONFIG_IP_SET_HASH_NETPORTNET=m +CONFIG_IP_SET_LIST_SET=m +CONFIG_IP_SET_MAX=256 +CONFIG_IP_VS=m +# CONFIG_IP_VS_DEBUG is not set +CONFIG_IP_VS_DH=m +CONFIG_IP_VS_FO=m +CONFIG_IP_VS_FTP=m +CONFIG_IP_VS_IPV6=y +CONFIG_IP_VS_LBLC=m +CONFIG_IP_VS_LBLCR=m +CONFIG_IP_VS_LC=m +CONFIG_IP_VS_MH=m +CONFIG_IP_VS_MH_TAB_INDEX=12 +CONFIG_IP_VS_NFCT=y +CONFIG_IP_VS_NQ=m +CONFIG_IP_VS_OVF=m +CONFIG_IP_VS_PE_SIP=m +CONFIG_IP_VS_PROTO_AH=y +CONFIG_IP_VS_PROTO_AH_ESP=y +CONFIG_IP_VS_PROTO_ESP=y +CONFIG_IP_VS_PROTO_SCTP=y +CONFIG_IP_VS_PROTO_TCP=y +CONFIG_IP_VS_PROTO_UDP=y +CONFIG_IP_VS_RR=m +CONFIG_IP_VS_SED=m +CONFIG_IP_VS_SH=m +CONFIG_IP_VS_SH_TAB_BITS=8 +CONFIG_IP_VS_TAB_BITS=12 +CONFIG_IP_VS_WLC=m +CONFIG_IP_VS_WRR=m +CONFIG_IQS620AT_TEMP=m +CONFIG_IQS621_ALS=m +CONFIG_IQS624_POS=m +CONFIG_IRQCHIP=y +# CONFIG_IRQSOFF_TRACER is not set +CONFIG_IRQ_ALL_CPUS=y +CONFIG_IRQ_CROSSBAR=y +CONFIG_IRQ_DOMAIN=y +CONFIG_IRQ_DOMAIN_HIERARCHY=y +CONFIG_IRQ_FASTEOI_HIERARCHY_HANDLERS=y +CONFIG_IRQ_FORCED_THREADING=y +CONFIG_IRQ_MSI_IOMMU=y +CONFIG_IRQ_POLL=y +CONFIG_IRQ_REMAP=y +# CONFIG_IRQ_TIME_ACCOUNTING is not set +CONFIG_IRQ_UNIPHIER_AIDET=y +CONFIG_IRQ_WORK=y +CONFIG_IR_ENE=m +CONFIG_IR_FINTEK=m +CONFIG_IR_GPIO_CIR=m +CONFIG_IR_GPIO_TX=m +CONFIG_IR_HIX5HD2=m +CONFIG_IR_IGORPLUGUSB=m +CONFIG_IR_IGUANA=m +CONFIG_IR_IMON=m +CONFIG_IR_IMON_DECODER=m +CONFIG_IR_IMON_RAW=m +CONFIG_IR_ITE_CIR=m +CONFIG_IR_JVC_DECODER=m +CONFIG_IR_MCEUSB=m +CONFIG_IR_MCE_KBD_DECODER=m +CONFIG_IR_MESON=m +CONFIG_IR_MTK=m +CONFIG_IR_NEC_DECODER=m +CONFIG_IR_NUVOTON=m +CONFIG_IR_PWM_TX=m +CONFIG_IR_RC5_DECODER=m +CONFIG_IR_RC6_DECODER=m +CONFIG_IR_RCMM_DECODER=m +CONFIG_IR_REDRAT3=m +CONFIG_IR_RX51=m +CONFIG_IR_SANYO_DECODER=m +CONFIG_IR_SERIAL=m +CONFIG_IR_SERIAL_TRANSMITTER=y +CONFIG_IR_SHARP_DECODER=m +CONFIG_IR_SIR=m +CONFIG_IR_SONY_DECODER=m +CONFIG_IR_SPI=m +CONFIG_IR_STREAMZAP=m +CONFIG_IR_SUNXI=m +CONFIG_IR_TTUSBIR=m +CONFIG_IR_WINBOND_CIR=m +CONFIG_IR_XMP_DECODER=m +CONFIG_ISA_BUS=y +CONFIG_ISA_BUS_API=y +CONFIG_ISA_DMA_API=y +CONFIG_ISCSI_BOOT_SYSFS=m +CONFIG_ISCSI_IBFT=m +CONFIG_ISCSI_IBFT_FIND=y +CONFIG_ISCSI_TARGET=m +CONFIG_ISCSI_TARGET_CXGB4=m +CONFIG_ISCSI_TCP=m +CONFIG_ISDN=y +CONFIG_ISDN_CAPI=y +CONFIG_ISDN_CAPI_MIDDLEWARE=y +CONFIG_ISI=m +CONFIG_ISL29125=m +CONFIG_ISL29501=m +CONFIG_ISM=m +CONFIG_ISO9660_FS=m +CONFIG_IT8712F_WDT=m +CONFIG_IT87_WDT=m +CONFIG_ITCO_VENDOR_SUPPORT=y +CONFIG_ITCO_WDT=m +CONFIG_ITG3200=m +CONFIG_IUCV=y +CONFIG_IWL3945=m +CONFIG_IWL4965=m +CONFIG_IWLDVM=m +CONFIG_IWLEGACY=m +# CONFIG_IWLEGACY_DEBUG is not set +CONFIG_IWLEGACY_DEBUGFS=y +CONFIG_IWLMVM=m +CONFIG_IWLWIFI=m +# CONFIG_IWLWIFI_BCAST_FILTERING is not set +# CONFIG_IWLWIFI_DEBUG is not set +CONFIG_IWLWIFI_DEBUGFS=y +CONFIG_IWLWIFI_DEVICE_TRACING=y +CONFIG_IWLWIFI_LEDS=y +CONFIG_IWLWIFI_OPMODE_MODULAR=y +CONFIG_IWMMXT=y +CONFIG_IXGB=m +CONFIG_IXGBE=m +CONFIG_IXGBEVF=m +CONFIG_IXGBEVF_IPSEC=y +CONFIG_IXGBE_DCA=y +CONFIG_IXGBE_DCB=y +CONFIG_IXGBE_HWMON=y +CONFIG_IXGBE_IPSEC=y +CONFIG_JAILHOUSE_GUEST=y +CONFIG_JBD2=y +# CONFIG_JBD2_DEBUG is not set +CONFIG_JFFS2_CMODE_FAVOURLZO=y +# CONFIG_JFFS2_CMODE_NONE is not set +# CONFIG_JFFS2_CMODE_PRIORITY is not set +# CONFIG_JFFS2_CMODE_SIZE is not set +CONFIG_JFFS2_COMPRESSION_OPTIONS=y +CONFIG_JFFS2_FS=m +CONFIG_JFFS2_FS_DEBUG=0 +CONFIG_JFFS2_FS_POSIX_ACL=y +CONFIG_JFFS2_FS_SECURITY=y +# CONFIG_JFFS2_FS_WBUF_VERIFY is not set +CONFIG_JFFS2_FS_WRITEBUFFER=y +CONFIG_JFFS2_FS_XATTR=y +CONFIG_JFFS2_LZO=y +CONFIG_JFFS2_RTIME=y +# CONFIG_JFFS2_RUBIN is not set +# CONFIG_JFFS2_SUMMARY is not set +CONFIG_JFFS2_ZLIB=y +# CONFIG_JFS_DEBUG is not set +CONFIG_JFS_POSIX_ACL=y +CONFIG_JFS_SECURITY=y +CONFIG_JFS_STATISTICS=y +CONFIG_JOLIET=y +CONFIG_JOYSTICK_A3D=m +CONFIG_JOYSTICK_ADI=m +CONFIG_JOYSTICK_ANALOG=m +CONFIG_JOYSTICK_AS5011=m +CONFIG_JOYSTICK_COBRA=m +CONFIG_JOYSTICK_DB9=m +CONFIG_JOYSTICK_FSIA6B=m +CONFIG_JOYSTICK_GAMECON=m +CONFIG_JOYSTICK_GF2K=m +CONFIG_JOYSTICK_GRIP=m +CONFIG_JOYSTICK_GRIP_MP=m +CONFIG_JOYSTICK_GUILLEMOT=m +CONFIG_JOYSTICK_IFORCE=m +CONFIG_JOYSTICK_IFORCE_232=m +CONFIG_JOYSTICK_IFORCE_USB=m +CONFIG_JOYSTICK_INTERACT=m +CONFIG_JOYSTICK_JOYDUMP=m +CONFIG_JOYSTICK_MAGELLAN=m +CONFIG_JOYSTICK_PSXPAD_SPI=m +CONFIG_JOYSTICK_PSXPAD_SPI_FF=y +CONFIG_JOYSTICK_PXRC=m +CONFIG_JOYSTICK_SIDEWINDER=m +CONFIG_JOYSTICK_SPACEBALL=m +CONFIG_JOYSTICK_SPACEORB=m +CONFIG_JOYSTICK_STINGER=m +CONFIG_JOYSTICK_TMDC=m +CONFIG_JOYSTICK_TURBOGRAFX=m +CONFIG_JOYSTICK_TWIDJOY=m +CONFIG_JOYSTICK_WALKERA0701=m +CONFIG_JOYSTICK_WARRIOR=m +CONFIG_JOYSTICK_XPAD=m +CONFIG_JOYSTICK_XPAD_FF=y +CONFIG_JOYSTICK_XPAD_LEDS=y +CONFIG_JOYSTICK_ZHENHUA=m +CONFIG_JSA1212=m +CONFIG_JUMP_LABEL_FEATURE_CHECKS=y +# CONFIG_JUMP_LABEL_FEATURE_CHECK_DEBUG is not set +CONFIG_K3_DMA=m +CONFIG_K3_RTI_WATCHDOG=m +CONFIG_K3_THERMAL=m +CONFIG_KALLSYMS=y +CONFIG_KALLSYMS_ABSOLUTE_PERCPU=y +CONFIG_KALLSYMS_ALL=y +CONFIG_KALLSYMS_BASE_RELATIVE=y +# CONFIG_KASAN is not set +CONFIG_KASAN_STACK=1 +CONFIG_KCMP=y +# CONFIG_KCOV is not set +CONFIG_KDB_CONTINUE_CATASTROPHIC=0 +CONFIG_KDB_DEFAULT_ENABLE=0x1 +CONFIG_KDB_KEYBOARD=y +CONFIG_KEMPLD_WDT=m +# CONFIG_KERNEL_BZIP2 is not set +# CONFIG_KERNEL_LZMA is not set +# CONFIG_KERNEL_LZO is not set +CONFIG_KERNEL_MODE_NEON=y +# CONFIG_KERNEL_NOBP is not set +CONFIG_KERNEL_START=0xc000000000000000 +# CONFIG_KERNEL_UNCOMPRESSED is not set +# CONFIG_KERNEL_XZ is not set +CONFIG_KERNFS=y +CONFIG_KEXEC=y +CONFIG_KEXEC_BZIMAGE_VERIFY_SIG=y +CONFIG_KEXEC_CORE=y +CONFIG_KEXEC_ELF=y +# CONFIG_KEXEC_IMAGE_VERIFY_SIG is not set +CONFIG_KEXEC_JUMP=y +CONFIG_KEXEC_SIG=y +# CONFIG_KEXEC_SIG_FORCE is not set +CONFIG_KEYBOARD_ADC=m +CONFIG_KEYBOARD_ADP5520=m +CONFIG_KEYBOARD_ADP5588=m +CONFIG_KEYBOARD_ADP5589=m +CONFIG_KEYBOARD_APPLESPI=m +CONFIG_KEYBOARD_ATKBD=y +CONFIG_KEYBOARD_BCM=m +CONFIG_KEYBOARD_CAP11XX=m +CONFIG_KEYBOARD_CROS_EC=m +CONFIG_KEYBOARD_DLINK_DIR685=m +CONFIG_KEYBOARD_GPIO=m +CONFIG_KEYBOARD_GPIO_POLLED=m +CONFIG_KEYBOARD_IMX=m +CONFIG_KEYBOARD_IMX_SC_KEY=m +CONFIG_KEYBOARD_IQS62X=m +CONFIG_KEYBOARD_LKKBD=m +CONFIG_KEYBOARD_LM8323=m +CONFIG_KEYBOARD_LM8333=m +CONFIG_KEYBOARD_MATRIX=m +CONFIG_KEYBOARD_MAX7359=m +CONFIG_KEYBOARD_MCS=m +CONFIG_KEYBOARD_MPR121=m +CONFIG_KEYBOARD_MTK_PMIC=m +CONFIG_KEYBOARD_NEWTON=m +CONFIG_KEYBOARD_NVEC=m +CONFIG_KEYBOARD_OMAP4=m +CONFIG_KEYBOARD_OPENCORES=m +CONFIG_KEYBOARD_PMIC8XXX=m +CONFIG_KEYBOARD_QT1050=m +CONFIG_KEYBOARD_QT1070=m +CONFIG_KEYBOARD_QT2160=m +CONFIG_KEYBOARD_SAMSUNG=m +CONFIG_KEYBOARD_SNVS_PWRKEY=m +CONFIG_KEYBOARD_STMPE=m +CONFIG_KEYBOARD_STOWAWAY=m +# CONFIG_KEYBOARD_SUN4I_LRADC is not set +CONFIG_KEYBOARD_SUNKBD=m +CONFIG_KEYBOARD_TC3589X=m +CONFIG_KEYBOARD_TCA6416=m +CONFIG_KEYBOARD_TCA8418=m +CONFIG_KEYBOARD_TEGRA=m +CONFIG_KEYBOARD_TM2_TOUCHKEY=m +CONFIG_KEYBOARD_TWL4030=m +CONFIG_KEYBOARD_XTKBD=m +CONFIG_KEYS=y +CONFIG_KEYS_REQUEST_CACHE=y +CONFIG_KEY_DH_OPERATIONS=y +CONFIG_KEY_NOTIFICATIONS=y +CONFIG_KGDB=y +CONFIG_KGDB_KDB=y +CONFIG_KGDB_LOW_LEVEL_TRAP=y +CONFIG_KGDB_SERIAL_CONSOLE=y +# CONFIG_KGDB_TESTS is not set +CONFIG_KMSG_IDS=y +CONFIG_KMX61=m +CONFIG_KPC2000=y +CONFIG_KPC2000_CORE=m +CONFIG_KPC2000_DMA=m +CONFIG_KPC2000_I2C=m +CONFIG_KPC2000_SPI=m +CONFIG_KPROBES=y +CONFIG_KPROBES_ON_FTRACE=y +# CONFIG_KPROBES_SANITY_TEST is not set +CONFIG_KPROBE_EVENTS=y +# CONFIG_KPROBE_EVENTS_ON_NOTRACE is not set +# CONFIG_KPROBE_EVENT_GEN_TEST is not set +CONFIG_KPSS_XCC=m +CONFIG_KRAITCC=m +CONFIG_KRAIT_CLOCKS=y +CONFIG_KRAIT_L2_ACCESSORS=y +CONFIG_KRETPROBES=y +CONFIG_KS0108=m +CONFIG_KS0108_DELAY=2 +CONFIG_KS0108_PORT=0x378 +CONFIG_KS7010=m +CONFIG_KS8842=m +CONFIG_KS8851=m +CONFIG_KS8851_MLL=m +CONFIG_KSM=y +CONFIG_KSZ884X_PCI=m +# CONFIG_KUNIT is not set +CONFIG_KUSER_HELPERS=y +CONFIG_KVM_AMD=m +CONFIG_KVM_AMD_SEV=y +CONFIG_KVM_ARM_PMU=y +CONFIG_KVM_ASYNC_PF=y +CONFIG_KVM_ASYNC_PF_SYNC=y +CONFIG_KVM_BOOK3S_64=m +CONFIG_KVM_BOOK3S_64_HANDLER=y +CONFIG_KVM_BOOK3S_64_HV=m +CONFIG_KVM_BOOK3S_64_PR=m +CONFIG_KVM_BOOK3S_HANDLER=y +# CONFIG_KVM_BOOK3S_HV_EXIT_TIMING is not set +CONFIG_KVM_BOOK3S_HV_POSSIBLE=y +CONFIG_KVM_BOOK3S_PR_POSSIBLE=y +CONFIG_KVM_COMPAT=y +CONFIG_KVM_GENERIC_DIRTYLOG_READ_PROTECT=y +CONFIG_KVM_GUEST=y +CONFIG_KVM_INDIRECT_VECTORS=y +CONFIG_KVM_INTEL=m +CONFIG_KVM_MMIO=y +# CONFIG_KVM_MMU_AUDIT is not set +# CONFIG_KVM_S390_UCONTROL is not set +CONFIG_KVM_VFIO=y +CONFIG_KVM_WERROR=y +CONFIG_KVM_XICS=y +CONFIG_KVM_XIVE=y +CONFIG_KXCJK1013=m +CONFIG_KXSD9=m +CONFIG_KXSD9_I2C=m +CONFIG_KXSD9_SPI=m +CONFIG_L2TP=m +CONFIG_L2TP_DEBUGFS=m +CONFIG_L2TP_ETH=m +CONFIG_L2TP_IP=m +CONFIG_L2TP_V3=y +CONFIG_LAN743X=m +CONFIG_LANMEDIA=m +CONFIG_LAPBETHER=m +CONFIG_LATTICE_ECP3_CONFIG=m +CONFIG_LCD_AMS369FG06=m +CONFIG_LCD_HX8357=m +CONFIG_LCD_ILI922X=m +CONFIG_LCD_ILI9320=m +CONFIG_LCD_L4F00242T03=m +CONFIG_LCD_LMS283GF05=m +CONFIG_LCD_LMS501KF03=m +CONFIG_LCD_LTV350QV=m +CONFIG_LCD_OTM3225A=m +CONFIG_LCD_PLATFORM=m +CONFIG_LCD_TDO24M=m +CONFIG_LCD_VGG2432A4=m +CONFIG_LCS=m +CONFIG_LDISC_AUTOLOAD=y +# CONFIG_LDM_DEBUG is not set +# CONFIG_LD_DEAD_CODE_DATA_ELIMINATION is not set +# CONFIG_LD_HEAD_STUB_CATCH is not set +CONFIG_LD_VERSION=235010000 +CONFIG_LEDS_88PM860X=m +CONFIG_LEDS_AAT1290=m +CONFIG_LEDS_ADP5520=m +CONFIG_LEDS_AN30259A=m +CONFIG_LEDS_APU=m +CONFIG_LEDS_AS3645A=m +CONFIG_LEDS_ASIC3=y +CONFIG_LEDS_AW2013=m +CONFIG_LEDS_BCM6328=m +CONFIG_LEDS_BCM6358=m +CONFIG_LEDS_BD2802=m +CONFIG_LEDS_BLINKM=m +CONFIG_LEDS_BRIGHTNESS_HW_CHANGED=y +CONFIG_LEDS_CLASS=y +CONFIG_LEDS_CLASS_FLASH=m +CONFIG_LEDS_CLEVO_MAIL=m +CONFIG_LEDS_CPCAP=m +CONFIG_LEDS_CR0014114=m +CONFIG_LEDS_DA903X=m +CONFIG_LEDS_DA9052=m +CONFIG_LEDS_DAC124S085=m +CONFIG_LEDS_EL15203000=m +CONFIG_LEDS_GPIO=m +CONFIG_LEDS_INTEL_SS4200=m +CONFIG_LEDS_IS31FL319X=m +CONFIG_LEDS_IS31FL32XX=m +CONFIG_LEDS_KTD2692=m +CONFIG_LEDS_LM3530=m +CONFIG_LEDS_LM3532=m +CONFIG_LEDS_LM3533=m +CONFIG_LEDS_LM355x=m +CONFIG_LEDS_LM3601X=m +CONFIG_LEDS_LM36274=m +CONFIG_LEDS_LM3642=m +CONFIG_LEDS_LM3692X=m +CONFIG_LEDS_LM3697=m +CONFIG_LEDS_LP3944=m +CONFIG_LEDS_LP3952=m +CONFIG_LEDS_LP5521=m +CONFIG_LEDS_LP5523=m +CONFIG_LEDS_LP5562=m +CONFIG_LEDS_LP55XX_COMMON=m +CONFIG_LEDS_LP8501=m +CONFIG_LEDS_LP8788=m +CONFIG_LEDS_LP8860=m +CONFIG_LEDS_LT3593=m +CONFIG_LEDS_MAX77650=m +CONFIG_LEDS_MAX77693=m +CONFIG_LEDS_MAX8997=m +CONFIG_LEDS_MC13783=m +CONFIG_LEDS_MENF21BMC=m +CONFIG_LEDS_MLXCPLD=m +CONFIG_LEDS_MLXREG=m +CONFIG_LEDS_MT6323=m +CONFIG_LEDS_NIC78BX=m +CONFIG_LEDS_NS2=m +CONFIG_LEDS_PCA9532=m +CONFIG_LEDS_PCA9532_GPIO=y +CONFIG_LEDS_PCA955X=m +CONFIG_LEDS_PCA955X_GPIO=y +CONFIG_LEDS_PCA963X=m +CONFIG_LEDS_PM8058=m +CONFIG_LEDS_POWERNV=m +CONFIG_LEDS_PWM=m +CONFIG_LEDS_REGULATOR=m +CONFIG_LEDS_SC27XX_BLTC=m +CONFIG_LEDS_SGM3140=m +CONFIG_LEDS_SPI_BYTE=m +CONFIG_LEDS_SYSCON=y +CONFIG_LEDS_TCA6507=m +CONFIG_LEDS_TI_LMU_COMMON=m +CONFIG_LEDS_TLC591XX=m +CONFIG_LEDS_TPS6105X=m +CONFIG_LEDS_TRIGGERS=y +CONFIG_LEDS_TRIGGER_ACTIVITY=m +CONFIG_LEDS_TRIGGER_AUDIO=m +CONFIG_LEDS_TRIGGER_BACKLIGHT=m +CONFIG_LEDS_TRIGGER_CAMERA=m +CONFIG_LEDS_TRIGGER_CPU=y +CONFIG_LEDS_TRIGGER_DEFAULT_ON=m +CONFIG_LEDS_TRIGGER_DISK=y +CONFIG_LEDS_TRIGGER_GPIO=m +CONFIG_LEDS_TRIGGER_HEARTBEAT=m +CONFIG_LEDS_TRIGGER_MTD=y +CONFIG_LEDS_TRIGGER_NETDEV=m +CONFIG_LEDS_TRIGGER_ONESHOT=m +CONFIG_LEDS_TRIGGER_PANIC=y +CONFIG_LEDS_TRIGGER_PATTERN=m +CONFIG_LEDS_TRIGGER_TIMER=m +CONFIG_LEDS_TRIGGER_TRANSIENT=m +CONFIG_LEDS_USER=m +CONFIG_LEDS_WM831X_STATUS=m +CONFIG_LEDS_WM8350=m +CONFIG_LED_TRIGGER_PHY=y +CONFIG_LEGACY_PTYS=y +CONFIG_LEGACY_PTY_COUNT=0 +# CONFIG_LEGACY_VSYSCALL_EMULATE is not set +# CONFIG_LEGACY_VSYSCALL_NONE is not set +CONFIG_LEGACY_VSYSCALL_XONLY=y +CONFIG_LG_LAPTOP=m +CONFIG_LIB80211=m +CONFIG_LIB80211_CRYPT_CCMP=m +CONFIG_LIB80211_CRYPT_TKIP=m +CONFIG_LIB80211_CRYPT_WEP=m +# CONFIG_LIB80211_DEBUG is not set +CONFIG_LIBCRC32C=m +CONFIG_LIBERTAS=m +CONFIG_LIBERTAS_CS=m +# CONFIG_LIBERTAS_DEBUG is not set +CONFIG_LIBERTAS_MESH=y +CONFIG_LIBERTAS_SDIO=m +CONFIG_LIBERTAS_SPI=m +CONFIG_LIBERTAS_THINFIRM=m +# CONFIG_LIBERTAS_THINFIRM_DEBUG is not set +CONFIG_LIBERTAS_THINFIRM_USB=m +CONFIG_LIBERTAS_USB=m +CONFIG_LIBFC=m +CONFIG_LIBFCOE=m +CONFIG_LIBFDT=y +CONFIG_LIBIPW=m +# CONFIG_LIBIPW_DEBUG is not set +CONFIG_LIDAR_LITE_V2=m +CONFIG_LINEAR_RANGES=y +CONFIG_LIQUIDIO=m +CONFIG_LIQUIDIO_VF=m +CONFIG_LIRC=y +CONFIG_LIVEPATCH=y +# CONFIG_LKDTM is not set +CONFIG_LLC=m +CONFIG_LMP91000=m +CONFIG_LOAD_IPL_KEYS=y +CONFIG_LOAD_PPC_KEYS=y +CONFIG_LOAD_UEFI_KEYS=y +CONFIG_LOCALVERSION="" +# CONFIG_LOCALVERSION_AUTO is not set +CONFIG_LOCKD=m +CONFIG_LOCKDEP_SUPPORT=y +CONFIG_LOCKD_V4=y +CONFIG_LOCKUP_DETECTOR=y +CONFIG_LOCK_DEBUGGING_SUPPORT=y +CONFIG_LOCK_DOWN_IN_SECURE_BOOT=y +# CONFIG_LOCK_DOWN_KERNEL_FORCE_CONFIDENTIALITY is not set +# CONFIG_LOCK_DOWN_KERNEL_FORCE_INTEGRITY is not set +CONFIG_LOCK_DOWN_KERNEL_FORCE_NONE=y +# CONFIG_LOCK_EVENT_COUNTS is not set +CONFIG_LOCK_SPIN_ON_OWNER=y +# CONFIG_LOCK_STAT is not set +# CONFIG_LOCK_TORTURE_TEST is not set +CONFIG_LOGIG940_FF=y +CONFIG_LOGIRUMBLEPAD2_FF=y +CONFIG_LOGITECH_FF=y +CONFIG_LOGIWHEELS_FF=y +# CONFIG_LOGO is not set +CONFIG_LOG_CPU_MAX_BUF_SHIFT=12 +CONFIG_LOOPBACK_TARGET=m +CONFIG_LP8788_ADC=m +CONFIG_LPARCFG=y +# CONFIG_LP_CONSOLE is not set +CONFIG_LRU_CACHE=m +CONFIG_LSI_ET1011C_PHY=m +CONFIG_LSM="lockdown,yama,integrity,apparmor" +CONFIG_LSM_MMAP_MIN_ADDR=0 +CONFIG_LS_EXTIRQ=y +CONFIG_LS_SCFG_MSI=y +CONFIG_LTC1660=m +CONFIG_LTC2471=m +CONFIG_LTC2485=m +CONFIG_LTC2496=m +CONFIG_LTC2497=m +CONFIG_LTC2632=m +CONFIG_LTC2983=m +CONFIG_LTE_GDM724X=m +CONFIG_LTPC=m +CONFIG_LTR501=m +CONFIG_LV0104CS=m +CONFIG_LWTUNNEL=y +CONFIG_LWTUNNEL_BPF=y +CONFIG_LXT_PHY=m +CONFIG_LZ4HC_COMPRESS=m +CONFIG_LZ4_DECOMPRESS=y +CONFIG_LZO_COMPRESS=y +CONFIG_LZO_DECOMPRESS=y +CONFIG_M62332=m +CONFIG_MAC80211=m +CONFIG_MAC80211_DEBUGFS=y +# CONFIG_MAC80211_DEBUG_MENU is not set +CONFIG_MAC80211_HAS_RC=y +CONFIG_MAC80211_HWSIM=m +CONFIG_MAC80211_LEDS=y +CONFIG_MAC80211_MESH=y +CONFIG_MAC80211_MESSAGE_TRACING=y +CONFIG_MAC80211_RC_DEFAULT="minstrel_ht" +CONFIG_MAC80211_RC_DEFAULT_MINSTREL=y +CONFIG_MAC80211_RC_MINSTREL=y +CONFIG_MAC80211_STA_HASH_MAX_SIZE=0 +CONFIG_MAC802154=m +CONFIG_MACB=m +CONFIG_MACB_PCI=m +CONFIG_MACB_USE_HWSTAMP=y +CONFIG_MACHZ_WDT=m +CONFIG_MACH_ARMADA_370=y +CONFIG_MACH_ARMADA_375=y +CONFIG_MACH_ARMADA_38X=y +CONFIG_MACH_ARMADA_39X=y +CONFIG_MACH_ARMADA_XP=y +# CONFIG_MACH_ARTPEC6 is not set +CONFIG_MACH_ASPEED_G6=y +CONFIG_MACH_BERLIN_BG2=y +CONFIG_MACH_BERLIN_BG2CD=y +CONFIG_MACH_BERLIN_BG2Q=y +CONFIG_MACH_DOVE=y +CONFIG_MACH_MESON6=y +CONFIG_MACH_MESON8=y +CONFIG_MACH_MT2701=y +CONFIG_MACH_MT6589=y +CONFIG_MACH_MT6592=y +CONFIG_MACH_MT7623=y +CONFIG_MACH_MT7629=y +CONFIG_MACH_MT8127=y +CONFIG_MACH_MT8135=y +CONFIG_MACH_MVEBU_ANY=y +CONFIG_MACH_MVEBU_V7=y +# CONFIG_MACH_OMAP3517EVM is not set +CONFIG_MACH_OMAP3_PANDORA=y +CONFIG_MACH_OMAP_GENERIC=y +CONFIG_MACINTOSH_DRIVERS=y +CONFIG_MACSEC=m +CONFIG_MACVLAN=m +CONFIG_MACVTAP=m +CONFIG_MAC_EMUMOUSEBTN=m +CONFIG_MADERA_IRQ=m +CONFIG_MAG3110=m +CONFIG_MAGIC_SYSRQ=y +CONFIG_MAGIC_SYSRQ_DEFAULT_ENABLE=0x01b6 +CONFIG_MAGIC_SYSRQ_SERIAL=y +CONFIG_MAGIC_SYSRQ_SERIAL_SEQUENCE="" +CONFIG_MAILBOX_TEST=m +CONFIG_MANAGER_SBS=m +CONFIG_MANDATORY_FILE_LOCKING=y +CONFIG_MANTIS_CORE=m +CONFIG_MAPPING_DIRTY_HELPERS=y +# CONFIG_MARCH_Z10 is not set +CONFIG_MARCH_Z13=y +# CONFIG_MARCH_Z14 is not set +# CONFIG_MARCH_Z15 is not set +CONFIG_MARCH_Z15_TUNE=y +# CONFIG_MARCH_Z196 is not set +# CONFIG_MARCH_Z900 is not set +# CONFIG_MARCH_Z990 is not set +# CONFIG_MARCH_Z9_109 is not set +# CONFIG_MARCH_ZEC12 is not set +CONFIG_MARVELL_10G_PHY=m +CONFIG_MARVELL_PHY=m +# CONFIG_MATOM is not set +CONFIG_MAX1027=m +CONFIG_MAX11100=m +CONFIG_MAX1118=m +CONFIG_MAX1241=m +CONFIG_MAX1363=m +CONFIG_MAX30100=m +CONFIG_MAX30102=m +CONFIG_MAX31856=m +CONFIG_MAX44000=m +CONFIG_MAX44009=m +CONFIG_MAX517=m +CONFIG_MAX5432=m +CONFIG_MAX5481=m +CONFIG_MAX5487=m +CONFIG_MAX5821=m +CONFIG_MAX77620_THERMAL=m +CONFIG_MAX77620_WATCHDOG=m +CONFIG_MAX8925_POWER=m +CONFIG_MAX9611=m +CONFIG_MAXIM_THERMOCOUPLE=m +CONFIG_MAXSMP=y +CONFIG_MAX_PHYSMEM_BITS=46 +CONFIG_MAX_RAW_DEVS=256 +CONFIG_MB1232=m +CONFIG_MC3230=m +CONFIG_MCB_LPC=m +CONFIG_MCB_PCI=m +# CONFIG_MCORE2 is not set +CONFIG_MCP320X=m +CONFIG_MCP3422=m +CONFIG_MCP3911=m +CONFIG_MCP4018=m +CONFIG_MCP41010=m +CONFIG_MCP4131=m +CONFIG_MCP4531=m +CONFIG_MCP4725=m +CONFIG_MCP4922=m +CONFIG_MCPM=y +CONFIG_MCPM_QUAD_CLUSTER=y +CONFIG_MD=y +CONFIG_MDIO=m +CONFIG_MDIO_ASPEED=m +# CONFIG_MDIO_BCM_IPROC is not set +CONFIG_MDIO_BUS_MUX_BCM_IPROC=y +CONFIG_MDIO_BUS_MUX_GPIO=m +CONFIG_MDIO_BUS_MUX_MESON_G12A=m +CONFIG_MDIO_BUS_MUX_MMIOREG=m +CONFIG_MDIO_BUS_MUX_MULTIPLEXER=m +CONFIG_MDIO_CAVIUM=m +CONFIG_MDIO_DEVICE=y +CONFIG_MDIO_GPIO=m +CONFIG_MDIO_HISI_FEMAC=m +CONFIG_MDIO_I2C=m +CONFIG_MDIO_IPQ4019=m +CONFIG_MDIO_IPQ8064=m +CONFIG_MDIO_MVUSB=m +CONFIG_MDIO_OCTEON=m +# CONFIG_MDIO_SUN4I is not set +CONFIG_MDIO_XGENE=m +CONFIG_MDM_GCC_9615=m +CONFIG_MDM_LCC_9615=m +CONFIG_MD_AUTODETECT=y +CONFIG_MD_CLUSTER=m +CONFIG_MD_FAULTY=m +CONFIG_MD_LINEAR=m +CONFIG_MD_RAID0=m +CONFIG_MD_RAID1=m +CONFIG_MD_RAID10=m +CONFIG_MD_RAID456=m +CONFIG_MEDIATEK_MT6577_AUXADC=m +CONFIG_MEDIATEK_WATCHDOG=m +CONFIG_MEDIA_ALTERA_CI=m +CONFIG_MEDIA_ANALOG_TV_SUPPORT=y +CONFIG_MEDIA_ATTACH=y +CONFIG_MEDIA_CAMERA_SUPPORT=y +CONFIG_MEDIA_CEC_RC=y +CONFIG_MEDIA_CEC_SUPPORT=y +CONFIG_MEDIA_COMMON_OPTIONS=y +CONFIG_MEDIA_CONTROLLER=y +CONFIG_MEDIA_CONTROLLER_DVB=y +CONFIG_MEDIA_CONTROLLER_REQUEST_API=y +CONFIG_MEDIA_DIGITAL_TV_SUPPORT=y +CONFIG_MEDIA_PCI_SUPPORT=y +CONFIG_MEDIA_PLATFORM_SUPPORT=y +CONFIG_MEDIA_RADIO_SUPPORT=y +CONFIG_MEDIA_SDR_SUPPORT=y +CONFIG_MEDIA_SUBDRV_AUTOSELECT=y +CONFIG_MEDIA_SUPPORT_FILTER=y +CONFIG_MEDIA_TEST_SUPPORT=y +CONFIG_MEDIA_TUNER=m +CONFIG_MEDIA_TUNER_E4000=m +CONFIG_MEDIA_TUNER_FC0011=m +CONFIG_MEDIA_TUNER_FC0012=m +CONFIG_MEDIA_TUNER_FC0013=m +CONFIG_MEDIA_TUNER_FC2580=m +CONFIG_MEDIA_TUNER_IT913X=m +CONFIG_MEDIA_TUNER_M88RS6000T=m +CONFIG_MEDIA_TUNER_MAX2165=m +CONFIG_MEDIA_TUNER_MC44S803=m +CONFIG_MEDIA_TUNER_MSI001=m +CONFIG_MEDIA_TUNER_MT2060=m +CONFIG_MEDIA_TUNER_MT2063=m +CONFIG_MEDIA_TUNER_MT20XX=m +CONFIG_MEDIA_TUNER_MT2131=m +CONFIG_MEDIA_TUNER_MT2266=m +CONFIG_MEDIA_TUNER_MXL301RF=m +CONFIG_MEDIA_TUNER_MXL5005S=m +CONFIG_MEDIA_TUNER_MXL5007T=m +CONFIG_MEDIA_TUNER_QM1D1B0004=m +CONFIG_MEDIA_TUNER_QM1D1C0042=m +CONFIG_MEDIA_TUNER_QT1010=m +CONFIG_MEDIA_TUNER_R820T=m +CONFIG_MEDIA_TUNER_SI2157=m +CONFIG_MEDIA_TUNER_SIMPLE=m +CONFIG_MEDIA_TUNER_TDA18212=m +CONFIG_MEDIA_TUNER_TDA18218=m +CONFIG_MEDIA_TUNER_TDA18250=m +CONFIG_MEDIA_TUNER_TDA18271=m +CONFIG_MEDIA_TUNER_TDA827X=m +CONFIG_MEDIA_TUNER_TDA8290=m +CONFIG_MEDIA_TUNER_TDA9887=m +CONFIG_MEDIA_TUNER_TEA5761=m +CONFIG_MEDIA_TUNER_TEA5767=m +CONFIG_MEDIA_TUNER_TUA9001=m +CONFIG_MEDIA_TUNER_XC2028=m +CONFIG_MEDIA_TUNER_XC4000=m +CONFIG_MEDIA_TUNER_XC5000=m +CONFIG_MEDIA_USB_SUPPORT=y +CONFIG_MEGARAID_MAILBOX=m +CONFIG_MEGARAID_MM=m +CONFIG_MELLANOX_PLATFORM=y +CONFIG_MEMBARRIER=y +CONFIG_MEMCG=y +CONFIG_MEMCG_KMEM=y +CONFIG_MEMCG_SWAP=y +CONFIG_MEMFD_CREATE=y +CONFIG_MEMORY_BALLOON=y +CONFIG_MEMORY_FAILURE=y +CONFIG_MEMORY_HOTPLUG=y +CONFIG_MEMORY_HOTPLUG_SPARSE=y +CONFIG_MEMORY_HOTREMOVE=y +CONFIG_MEMORY_ISOLATION=y +CONFIG_MEMORY_NOTIFIER_ERROR_INJECT=m +CONFIG_MEMREGION=y +# CONFIG_MEMSTICK_DEBUG is not set +CONFIG_MEMSTICK_JMICRON_38X=m +CONFIG_MEMSTICK_R592=m +CONFIG_MEMSTICK_REALTEK_PCI=m +CONFIG_MEMSTICK_REALTEK_USB=m +CONFIG_MEMSTICK_TIFM_MS=m +# CONFIG_MEMSTICK_UNSAFE_RESUME is not set +CONFIG_MEMTEST=y +CONFIG_MENF21BMC_WATCHDOG=m +CONFIG_MENZ069_WATCHDOG=m +CONFIG_MEN_A21_WDT=m +CONFIG_MEN_Z188_ADC=m +CONFIG_MESON6_TIMER=y +CONFIG_MESON_CANVAS=m +CONFIG_MESON_CLK_MEASURE=y +CONFIG_MESON_EE_PM_DOMAINS=y +CONFIG_MESON_EFUSE=m +CONFIG_MESON_GXBB_WATCHDOG=m +CONFIG_MESON_GXL_PHY=m +CONFIG_MESON_GX_PM_DOMAINS=y +CONFIG_MESON_GX_SOCINFO=y +CONFIG_MESON_IRQ_GPIO=y +CONFIG_MESON_MX_EFUSE=m +CONFIG_MESON_MX_SOCINFO=y +CONFIG_MESON_SARADC=m +CONFIG_MESON_SECURE_PM_DOMAINS=y +CONFIG_MESON_SM=y +CONFIG_MESON_WATCHDOG=m +CONFIG_MESSAGE_LOGLEVEL_DEFAULT=4 +CONFIG_MFD_88PM860X=y +CONFIG_MFD_AAT2870_CORE=y +# CONFIG_MFD_AC100 is not set +CONFIG_MFD_ACT8945A=m +CONFIG_MFD_ALTERA_SYSMGR=y +CONFIG_MFD_ARIZONA=y +CONFIG_MFD_ARIZONA_SPI=m +CONFIG_MFD_AS3711=y +CONFIG_MFD_AS3722=y +CONFIG_MFD_ASIC3=y +CONFIG_MFD_ATMEL_FLEXCOM=m +CONFIG_MFD_ATMEL_HLCDC=m +CONFIG_MFD_AXP20X=m +CONFIG_MFD_AXP20X_RSB=m +CONFIG_MFD_CORE=y +CONFIG_MFD_CPCAP=m +CONFIG_MFD_CROS_EC=m +CONFIG_MFD_CROS_EC_DEV=m +CONFIG_MFD_CS47L15=y +CONFIG_MFD_CS47L24=y +CONFIG_MFD_CS47L35=y +CONFIG_MFD_CS47L85=y +CONFIG_MFD_CS47L90=y +CONFIG_MFD_CS47L92=y +CONFIG_MFD_DA9052_I2C=y +CONFIG_MFD_DA9052_SPI=y +CONFIG_MFD_DA9055=y +CONFIG_MFD_DLN2=m +CONFIG_MFD_EXYNOS_LPASS=m +CONFIG_MFD_GATEWORKS_GSC=m +CONFIG_MFD_HI6421_PMIC=m +CONFIG_MFD_HI655X_PMIC=m +CONFIG_MFD_INTEL_LPSS=m +CONFIG_MFD_INTEL_LPSS_ACPI=m +CONFIG_MFD_INTEL_LPSS_PCI=m +CONFIG_MFD_INTEL_MSIC=y +CONFIG_MFD_INTEL_PMC_BXT=m +CONFIG_MFD_INTEL_QUARK_I2C_GPIO=m +CONFIG_MFD_LOCHNAGAR=y +CONFIG_MFD_LP8788=y +CONFIG_MFD_MADERA_I2C=m +CONFIG_MFD_MADERA_SPI=m +CONFIG_MFD_MAX77620=y +CONFIG_MFD_MAX77650=m +CONFIG_MFD_MAX77686=y +CONFIG_MFD_MAX77843=y +CONFIG_MFD_MAX8925=y +CONFIG_MFD_MAX8997=y +CONFIG_MFD_MAX8998=y +CONFIG_MFD_MC13XXX=m +CONFIG_MFD_MC13XXX_SPI=m +CONFIG_MFD_NVEC=m +CONFIG_MFD_OMAP_USB_HOST=y +CONFIG_MFD_PALMAS=y +CONFIG_MFD_PM8XXX=m +CONFIG_MFD_QCOM_RPM=m +CONFIG_MFD_RC5T583=y +CONFIG_MFD_RK808=m +CONFIG_MFD_RN5T618=m +CONFIG_MFD_ROHM_BD70528=m +CONFIG_MFD_ROHM_BD71828=m +CONFIG_MFD_ROHM_BD718XX=m +CONFIG_MFD_SC27XX_PMIC=m +CONFIG_MFD_SEC_CORE=y +CONFIG_MFD_SM501_GPIO=y +CONFIG_MFD_SMSC=y +CONFIG_MFD_SPMI_PMIC=m +CONFIG_MFD_STMFX=m +CONFIG_MFD_STMPE=y +CONFIG_MFD_STPMIC1=m +CONFIG_MFD_SUN4I_GPADC=m +CONFIG_MFD_SUN6I_PRCM=y +CONFIG_MFD_T7L66XB=y +CONFIG_MFD_TC3589X=y +CONFIG_MFD_TC6387XB=y +CONFIG_MFD_TC6393XB=y +CONFIG_MFD_TI_LP87565=m +CONFIG_MFD_TMIO=y +CONFIG_MFD_TPS65090=y +CONFIG_MFD_TPS65218=m +CONFIG_MFD_TPS6586X=y +CONFIG_MFD_TPS65910=y +CONFIG_MFD_TPS65912=y +CONFIG_MFD_TPS65912_SPI=y +CONFIG_MFD_TPS68470=y +CONFIG_MFD_TPS80031=y +CONFIG_MFD_TWL4030_AUDIO=y +CONFIG_MFD_VEXPRESS_SYSREG=y +CONFIG_MFD_VIPERBOARD=m +CONFIG_MFD_WM5102=y +CONFIG_MFD_WM5110=y +CONFIG_MFD_WM831X=y +CONFIG_MFD_WM831X_I2C=y +CONFIG_MFD_WM831X_SPI=y +CONFIG_MFD_WM8350=y +CONFIG_MFD_WM8350_I2C=y +CONFIG_MFD_WM8400=y +CONFIG_MFD_WM8997=y +CONFIG_MFD_WM8998=y +CONFIG_MICREL_KS8995MA=m +CONFIG_MICREL_PHY=m +CONFIG_MICROCHIP_PHY=m +CONFIG_MICROCHIP_PIT64B=y +CONFIG_MICROCHIP_T1_PHY=m +CONFIG_MICROCODE=y +CONFIG_MICROCODE_AMD=y +CONFIG_MICROCODE_INTEL=y +CONFIG_MICROCODE_OLD_INTERFACE=y +CONFIG_MICROSEMI_PHY=m +CONFIG_MIC_COSM=m +CONFIG_MIGHT_HAVE_CACHE_L2X0=y +CONFIG_MIGRATION=y +CONFIG_MILBEAUT_HDMAC=m +CONFIG_MILBEAUT_TIMER=y +CONFIG_MILBEAUT_XDMAC=m +CONFIG_MISC_FILESYSTEMS=y +CONFIG_MISC_RTSX=m +CONFIG_MISC_RTSX_USB=m +CONFIG_MISDN=m +CONFIG_MISDN_AVMFRITZ=m +CONFIG_MISDN_DSP=m +CONFIG_MISDN_HDLC=m +CONFIG_MISDN_HFCMULTI=m +CONFIG_MISDN_HFCPCI=m +CONFIG_MISDN_HFCUSB=m +CONFIG_MISDN_INFINEON=m +CONFIG_MISDN_IPAC=m +CONFIG_MISDN_ISAR=m +CONFIG_MISDN_L1OIP=m +CONFIG_MISDN_NETJET=m +CONFIG_MISDN_SPEEDFAX=m +CONFIG_MISDN_W6692=m +# CONFIG_MK8 is not set +CONFIG_MKISS=m +CONFIG_MLX4_CORE=m +CONFIG_MLX4_CORE_GEN2=y +CONFIG_MLX4_DEBUG=y +CONFIG_MLX4_EN=m +CONFIG_MLX4_EN_DCB=y +CONFIG_MLX4_INFINIBAND=m +CONFIG_MLX5_ACCEL=y +CONFIG_MLX5_CLS_ACT=y +CONFIG_MLX5_CORE=m +CONFIG_MLX5_CORE_EN=y +CONFIG_MLX5_CORE_EN_DCB=y +CONFIG_MLX5_CORE_IPOIB=y +CONFIG_MLX5_EN_ARFS=y +CONFIG_MLX5_EN_IPSEC=y +CONFIG_MLX5_EN_RXNFC=y +CONFIG_MLX5_EN_TLS=y +CONFIG_MLX5_ESWITCH=y +CONFIG_MLX5_FPGA=y +CONFIG_MLX5_FPGA_IPSEC=y +CONFIG_MLX5_FPGA_TLS=y +CONFIG_MLX5_INFINIBAND=m +CONFIG_MLX5_MPFS=y +CONFIG_MLX5_SW_STEERING=y +CONFIG_MLX5_TC_CT=y +CONFIG_MLX5_TLS=y +CONFIG_MLX90614=m +CONFIG_MLX90632=m +CONFIG_MLXBF_BOOTCTL=m +CONFIG_MLXBF_TMFIFO=m +CONFIG_MLXFW=m +CONFIG_MLXREG_HOTPLUG=m +CONFIG_MLXREG_IO=m +CONFIG_MLXSW_CORE=m +CONFIG_MLXSW_CORE_HWMON=y +CONFIG_MLXSW_CORE_THERMAL=y +CONFIG_MLXSW_MINIMAL=m +CONFIG_MLXSW_PCI=m +CONFIG_MLXSW_SPECTRUM=m +CONFIG_MLXSW_SPECTRUM_DCB=y +CONFIG_MLXSW_SWITCHIB=m +CONFIG_MLXSW_SWITCHX2=m +CONFIG_MLX_PLATFORM=m +CONFIG_MLX_WDT=m +CONFIG_MMA7455=m +CONFIG_MMA7455_I2C=m +CONFIG_MMA7455_SPI=m +CONFIG_MMA7660=m +CONFIG_MMA8452=m +CONFIG_MMA9551=m +CONFIG_MMA9551_CORE=m +CONFIG_MMA9553=m +CONFIG_MMC35240=m +CONFIG_MMCONF_FAM10H=y +CONFIG_MMC_ALCOR=m +CONFIG_MMC_ARMMMCI=y +CONFIG_MMC_BCM2835=m +CONFIG_MMC_BLOCK_MINORS=8 +CONFIG_MMC_CAVIUM_THUNDERX=m +CONFIG_MMC_CB710=m +# CONFIG_MMC_DEBUG is not set +CONFIG_MMC_DW=m +CONFIG_MMC_DW_BLUEFIELD=m +CONFIG_MMC_DW_EXYNOS=m +CONFIG_MMC_DW_HI3798CV200=m +CONFIG_MMC_DW_K3=m +CONFIG_MMC_DW_PCI=m +CONFIG_MMC_DW_PLTFM=m +CONFIG_MMC_DW_ROCKCHIP=m +CONFIG_MMC_MESON_GX=m +CONFIG_MMC_MESON_MX_SDHC=m +CONFIG_MMC_MESON_MX_SDIO=m +CONFIG_MMC_MTK=m +CONFIG_MMC_MVSDIO=m +CONFIG_MMC_MXC=m +CONFIG_MMC_OMAP=m +CONFIG_MMC_OMAP_HS=y +CONFIG_MMC_OWL=m +CONFIG_MMC_QCOM_DML=y +CONFIG_MMC_REALTEK_PCI=m +CONFIG_MMC_REALTEK_USB=m +CONFIG_MMC_RICOH_MMC=y +CONFIG_MMC_SDHCI_ACPI=m +CONFIG_MMC_SDHCI_AM654=m +CONFIG_MMC_SDHCI_BIG_ENDIAN_32BIT_BYTE_SWAPPER=y +CONFIG_MMC_SDHCI_BRCMSTB=m +CONFIG_MMC_SDHCI_CADENCE=m +CONFIG_MMC_SDHCI_DOVE=m +CONFIG_MMC_SDHCI_EXTERNAL_DMA=y +CONFIG_MMC_SDHCI_F_SDH30=m +CONFIG_MMC_SDHCI_IO_ACCESSORS=y +CONFIG_MMC_SDHCI_IPROC=m +CONFIG_MMC_SDHCI_MILBEAUT=m +CONFIG_MMC_SDHCI_MSM=m +CONFIG_MMC_SDHCI_OF_ARASAN=m +CONFIG_MMC_SDHCI_OF_ASPEED=m +CONFIG_MMC_SDHCI_OF_AT91=m +CONFIG_MMC_SDHCI_OF_DWCMSHC=m +CONFIG_MMC_SDHCI_OF_ESDHC=m +CONFIG_MMC_SDHCI_OF_HLWD=m +CONFIG_MMC_SDHCI_OMAP=m +CONFIG_MMC_SDHCI_PCI=m +CONFIG_MMC_SDHCI_PXAV3=m +CONFIG_MMC_SDHCI_S3C=m +CONFIG_MMC_SDHCI_S3C_DMA=y +CONFIG_MMC_SDHCI_SPRD=m +CONFIG_MMC_SDHCI_TEGRA=m +CONFIG_MMC_SDHCI_XENON=m +CONFIG_MMC_SDHI=m +CONFIG_MMC_SDHI_INTERNAL_DMAC=m +CONFIG_MMC_SDHI_SYS_DMAC=m +CONFIG_MMC_SDRICOH_CS=m +CONFIG_MMC_SH_MMCIF=m +CONFIG_MMC_SPI=m +CONFIG_MMC_STM32_SDMMC=y +CONFIG_MMC_SUNXI=m +# CONFIG_MMC_TEST is not set +CONFIG_MMC_TIFM_SD=m +CONFIG_MMC_TMIO=m +CONFIG_MMC_TMIO_CORE=m +CONFIG_MMC_TOSHIBA_PCI=m +CONFIG_MMC_UNIPHIER=m +CONFIG_MMC_USDHI6ROL0=m +CONFIG_MMC_USHC=m +CONFIG_MMC_VIA_SDMMC=m +CONFIG_MMC_VUB300=m +CONFIG_MMC_WBSD=m +CONFIG_MMIOTRACE=y +# CONFIG_MMIOTRACE_TEST is not set +CONFIG_MMIOWB=y +CONFIG_MMU=y +CONFIG_MMU_GATHER_NO_GATHER=y +CONFIG_MMU_GATHER_PAGE_SIZE=y +CONFIG_MMU_GATHER_RCU_TABLE_FREE=y +CONFIG_MMU_GATHER_TABLE_FREE=y +CONFIG_MMU_NOTIFIER=y +CONFIG_MODIFY_LDT_SYSCALL=y +CONFIG_MODULES=y +CONFIG_MODULES_TREE_LOOKUP=y +CONFIG_MODULES_USE_ELF_REL=y +CONFIG_MODULES_USE_ELF_RELA=y +# CONFIG_MODULE_ALLOW_MISSING_NAMESPACE_IMPORTS is not set +# CONFIG_MODULE_COMPRESS is not set +# CONFIG_MODULE_FORCE_LOAD is not set +# CONFIG_MODULE_FORCE_UNLOAD is not set +CONFIG_MODULE_REL_CRCS=y +CONFIG_MODULE_SIG=y +CONFIG_MODULE_SIG_ALL=y +# CONFIG_MODULE_SIG_FORCE is not set +CONFIG_MODULE_SIG_FORMAT=y +CONFIG_MODULE_SIG_HASH="sha512" +CONFIG_MODULE_SIG_KEY="certs/signing_key.pem" +# CONFIG_MODULE_SIG_SHA1 is not set +# CONFIG_MODULE_SIG_SHA224 is not set +# CONFIG_MODULE_SIG_SHA256 is not set +# CONFIG_MODULE_SIG_SHA384 is not set +CONFIG_MODULE_SIG_SHA512=y +CONFIG_MODULE_SRCVERSION_ALL=y +CONFIG_MODULE_UNLOAD=y +CONFIG_MODVERSIONS=y +CONFIG_MONREADER=m +CONFIG_MONWRITER=m +CONFIG_MOST_CDEV=m +CONFIG_MOST_COMPONENTS=m +CONFIG_MOST_DIM2=m +CONFIG_MOST_I2C=m +CONFIG_MOST_NET=m +CONFIG_MOST_SOUND=m +CONFIG_MOST_USB=m +CONFIG_MOST_VIDEO=m +CONFIG_MOUSE_APPLETOUCH=m +CONFIG_MOUSE_BCM5974=m +CONFIG_MOUSE_CYAPA=m +CONFIG_MOUSE_ELAN_I2C=m +CONFIG_MOUSE_ELAN_I2C_I2C=y +CONFIG_MOUSE_ELAN_I2C_SMBUS=y +CONFIG_MOUSE_GPIO=m +CONFIG_MOUSE_PS2=m +CONFIG_MOUSE_PS2_ALPS=y +CONFIG_MOUSE_PS2_BYD=y +CONFIG_MOUSE_PS2_CYPRESS=y +CONFIG_MOUSE_PS2_ELANTECH=y +CONFIG_MOUSE_PS2_ELANTECH_SMBUS=y +CONFIG_MOUSE_PS2_FOCALTECH=y +CONFIG_MOUSE_PS2_LIFEBOOK=y +CONFIG_MOUSE_PS2_LOGIPS2PP=y +CONFIG_MOUSE_PS2_SENTELIC=y +CONFIG_MOUSE_PS2_SMBUS=y +CONFIG_MOUSE_PS2_SYNAPTICS=y +CONFIG_MOUSE_PS2_SYNAPTICS_SMBUS=y +CONFIG_MOUSE_PS2_TOUCHKIT=y +CONFIG_MOUSE_PS2_TRACKPOINT=y +CONFIG_MOUSE_PS2_VMMOUSE=y +CONFIG_MOUSE_SERIAL=m +CONFIG_MOUSE_SYNAPTICS_I2C=m +CONFIG_MOUSE_SYNAPTICS_USB=m +CONFIG_MOUSE_VSXXXAA=m +CONFIG_MOXA_INTELLIO=m +CONFIG_MOXA_SMARTIO=m +CONFIG_MOXTET=m +CONFIG_MP2629_ADC=m +CONFIG_MPIC=y +# CONFIG_MPIC_MSGR is not set +CONFIG_MPILIB=y +CONFIG_MPL115=m +CONFIG_MPL115_I2C=m +CONFIG_MPL115_SPI=m +CONFIG_MPL3115=m +CONFIG_MPLS=y +CONFIG_MPLS_IPTUNNEL=m +CONFIG_MPLS_ROUTING=m +CONFIG_MPROFILE_KERNEL=y +# CONFIG_MPSC is not set +CONFIG_MPTCP=y +# CONFIG_MPTCP_HMAC_TEST is not set +CONFIG_MPTCP_IPV6=y +CONFIG_MPU3050=m +CONFIG_MPU3050_I2C=m +CONFIG_MQ_IOSCHED_DEADLINE=y +CONFIG_MQ_IOSCHED_KYBER=m +CONFIG_MRP=m +CONFIG_MS5611=m +CONFIG_MS5611_I2C=m +CONFIG_MS5611_SPI=m +CONFIG_MS5637=m +CONFIG_MSCC_OCELOT_SWITCH=m +CONFIG_MSCC_OCELOT_SWITCH_OCELOT=m +CONFIG_MSDOS_FS=m +CONFIG_MSDOS_PARTITION=y +# CONFIG_MSI_BITMAP_SELFTEST is not set +CONFIG_MSI_LAPTOP=m +CONFIG_MSI_WMI=m +CONFIG_MSM_GCC_8660=m +CONFIG_MSM_GCC_8916=m +CONFIG_MSM_GCC_8939=m +CONFIG_MSM_GCC_8960=m +CONFIG_MSM_GCC_8974=m +CONFIG_MSM_GCC_8994=m +CONFIG_MSM_GCC_8996=m +CONFIG_MSM_GCC_8998=m +CONFIG_MSM_GPUCC_8998=m +# CONFIG_MSM_IOMMU is not set +CONFIG_MSM_LCC_8960=m +CONFIG_MSM_MMCC_8960=m +CONFIG_MSM_MMCC_8974=m +CONFIG_MSM_MMCC_8996=m +CONFIG_MSM_MMCC_8998=m +CONFIG_MSPRO_BLOCK=m +CONFIG_MS_BLOCK=m +CONFIG_MT7601U=m +CONFIG_MT7603E=m +CONFIG_MT7615E=m +CONFIG_MT7615_COMMON=m +CONFIG_MT7622_WMAC=y +CONFIG_MT7663U=m +CONFIG_MT76_CORE=m +CONFIG_MT76_LEDS=y +CONFIG_MT76_USB=m +CONFIG_MT76x02_LIB=m +CONFIG_MT76x02_USB=m +CONFIG_MT76x0E=m +CONFIG_MT76x0U=m +CONFIG_MT76x0_COMMON=m +CONFIG_MT76x2E=m +CONFIG_MT76x2U=m +CONFIG_MT76x2_COMMON=m +CONFIG_MT7915E=m +CONFIG_MTDRAM_ERASE_SIZE=128 +CONFIG_MTDRAM_TOTAL_SIZE=4096 +CONFIG_MTD_ABSENT=m +CONFIG_MTD_AFS_PARTS=m +CONFIG_MTD_AMD76XROM=m +CONFIG_MTD_AR7_PARTS=m +CONFIG_MTD_BCM47XXSFLASH=m +CONFIG_MTD_BLOCK2MTD=m +CONFIG_MTD_BLOCK_RO=m +CONFIG_MTD_CFI=m +# CONFIG_MTD_CFI_ADV_OPTIONS is not set +CONFIG_MTD_CFI_AMDSTD=m +CONFIG_MTD_CFI_I1=y +CONFIG_MTD_CFI_I2=y +CONFIG_MTD_CFI_INTELEXT=m +CONFIG_MTD_CFI_STAA=m +CONFIG_MTD_CFI_UTIL=m +CONFIG_MTD_CK804XROM=m +CONFIG_MTD_COMPLEX_MAPPINGS=y +CONFIG_MTD_DATAFLASH=m +CONFIG_MTD_DATAFLASH_OTP=y +# CONFIG_MTD_DATAFLASH_WRITE_VERIFY is not set +# CONFIG_MTD_DOCG3 is not set +CONFIG_MTD_ESB2ROM=m +CONFIG_MTD_GEN_PROBE=m +CONFIG_MTD_HYPERBUS=m +CONFIG_MTD_ICHXROM=m +CONFIG_MTD_IMPA7=m +CONFIG_MTD_INTEL_VR_NOR=m +CONFIG_MTD_JEDECPROBE=m +CONFIG_MTD_L440GX=m +CONFIG_MTD_LPDDR=m +CONFIG_MTD_LPDDR2_NVM=m +CONFIG_MTD_MAP_BANK_WIDTH_1=y +CONFIG_MTD_MAP_BANK_WIDTH_2=y +CONFIG_MTD_MAP_BANK_WIDTH_4=y +CONFIG_MTD_MCHP23K256=m +CONFIG_MTD_MTDRAM=m +CONFIG_MTD_NAND_ARASAN=m +CONFIG_MTD_NAND_BRCMNAND=m +CONFIG_MTD_NAND_CADENCE=m +CONFIG_MTD_NAND_CAFE=m +CONFIG_MTD_NAND_DENALI=m +CONFIG_MTD_NAND_DENALI_DT=m +CONFIG_MTD_NAND_DENALI_PCI=m +CONFIG_MTD_NAND_DISKONCHIP=m +# CONFIG_MTD_NAND_DISKONCHIP_BBTWRITE is not set +CONFIG_MTD_NAND_DISKONCHIP_PROBE_ADDRESS=0 +# CONFIG_MTD_NAND_DISKONCHIP_PROBE_ADVANCED is not set +CONFIG_MTD_NAND_ECC_SW_BCH=y +# CONFIG_MTD_NAND_ECC_SW_HAMMING_SMC is not set +CONFIG_MTD_NAND_FSL_IFC=m +CONFIG_MTD_NAND_GPIO=m +CONFIG_MTD_NAND_GPMI_NAND=m +CONFIG_MTD_NAND_HISI504=m +CONFIG_MTD_NAND_MARVELL=m +CONFIG_MTD_NAND_MESON=m +CONFIG_MTD_NAND_MTK=m +CONFIG_MTD_NAND_MXC=m +CONFIG_MTD_NAND_MXIC=m +CONFIG_MTD_NAND_NANDSIM=m +CONFIG_MTD_NAND_OMAP2=y +CONFIG_MTD_NAND_OMAP_BCH=y +CONFIG_MTD_NAND_OMAP_BCH_BUILD=y +CONFIG_MTD_NAND_ORION=m +CONFIG_MTD_NAND_PLATFORM=m +CONFIG_MTD_NAND_QCOM=m +CONFIG_MTD_NAND_RICOH=m +# CONFIG_MTD_NAND_SUNXI is not set +CONFIG_MTD_NAND_TEGRA=m +CONFIG_MTD_NAND_TMIO=m +# CONFIG_MTD_NAND_VF610_NFC is not set +CONFIG_MTD_NETtel=m +CONFIG_MTD_ONENAND=m +CONFIG_MTD_ONENAND_2X_PROGRAM=y +CONFIG_MTD_ONENAND_GENERIC=m +CONFIG_MTD_ONENAND_OMAP2=m +# CONFIG_MTD_ONENAND_OTP is not set +CONFIG_MTD_ONENAND_VERIFY_WRITE=y +CONFIG_MTD_OOPS=m +# CONFIG_MTD_PARTITIONED_MASTER is not set +CONFIG_MTD_PCI=m +CONFIG_MTD_PCMCIA=m +# CONFIG_MTD_PCMCIA_ANONYMOUS is not set +CONFIG_MTD_PHRAM=m +CONFIG_MTD_PHYSMAP=m +# CONFIG_MTD_PHYSMAP_COMPAT is not set +CONFIG_MTD_PHYSMAP_GPIO_ADDR=y +CONFIG_MTD_PHYSMAP_IXP4XX=y +CONFIG_MTD_PHYSMAP_OF=y +CONFIG_MTD_PLATRAM=m +CONFIG_MTD_PMC551=m +# CONFIG_MTD_PMC551_BUGFIX is not set +# CONFIG_MTD_PMC551_DEBUG is not set +CONFIG_MTD_POWERNV_FLASH=m +CONFIG_MTD_PSTORE=m +CONFIG_MTD_QINFO_PROBE=m +CONFIG_MTD_RAM=m +CONFIG_MTD_REDBOOT_DIRECTORY_BLOCK=-1 +CONFIG_MTD_REDBOOT_PARTS=m +# CONFIG_MTD_REDBOOT_PARTS_READONLY is not set +# CONFIG_MTD_REDBOOT_PARTS_UNALLOCATED is not set +CONFIG_MTD_ROM=m +CONFIG_MTD_SBC_GXX=m +CONFIG_MTD_SCB2_FLASH=m +CONFIG_MTD_SHARPSL_PARTS=m +CONFIG_MTD_SLRAM=m +CONFIG_MTD_SM_COMMON=m +CONFIG_MTD_SPI_NAND=m +CONFIG_MTD_SPI_NOR=m +CONFIG_MTD_SPI_NOR_USE_4K_SECTORS=y +CONFIG_MTD_SST25L=m +CONFIG_MTD_SWAP=m +# CONFIG_MTD_TESTS is not set +CONFIG_MTD_UBI=m +CONFIG_MTD_UBI_BEB_LIMIT=20 +CONFIG_MTD_UBI_BLOCK=y +CONFIG_MTD_UBI_FASTMAP=y +CONFIG_MTD_UBI_GLUEBI=m +CONFIG_MTD_UBI_WL_THRESHOLD=4096 +CONFIG_MTK_CMDQ=m +CONFIG_MTK_CMDQ_MBOX=m +CONFIG_MTK_CQDMA=m +# CONFIG_MTK_EFUSE is not set +CONFIG_MTK_HSDMA=m +CONFIG_MTK_INFRACFG=y +# CONFIG_MTK_IOMMU is not set +# CONFIG_MTK_IOMMU_V1 is not set +CONFIG_MTK_MMSYS=y +CONFIG_MTK_PMIC_WRAP=m +CONFIG_MTK_SCP=m +CONFIG_MTK_SCPSYS=y +CONFIG_MTK_SMI=y +CONFIG_MTK_THERMAL=m +CONFIG_MTK_TIMER=y +CONFIG_MTK_UART_APDMA=m +CONFIG_MTRR=y +CONFIG_MTRR_SANITIZER=y +CONFIG_MTRR_SANITIZER_ENABLE_DEFAULT=1 +CONFIG_MTRR_SANITIZER_SPARE_REG_NR_DEFAULT=1 +CONFIG_MULTIPLEXER=m +CONFIG_MULTIUSER=y +CONFIG_MUSB_PIO_ONLY=y +CONFIG_MUTEX_SPIN_ON_OWNER=y +CONFIG_MUX_ADG792A=m +CONFIG_MUX_ADGS1408=m +CONFIG_MUX_GPIO=m +CONFIG_MUX_MMIO=m +CONFIG_MV643XX_ETH=m +CONFIG_MVEBU_CLK_COMMON=y +CONFIG_MVEBU_CLK_COREDIV=y +CONFIG_MVEBU_CLK_CPU=y +CONFIG_MVEBU_DEVBUS=y +CONFIG_MVEBU_GICP=y +CONFIG_MVEBU_ICU=y +CONFIG_MVEBU_MBUS=y +CONFIG_MVEBU_ODMI=y +CONFIG_MVEBU_PIC=y +CONFIG_MVEBU_SEI=y +CONFIG_MVMDIO=m +CONFIG_MVNETA=m +# CONFIG_MVNETA_BM_ENABLE is not set +CONFIG_MVPP2=m +CONFIG_MV_XOR=y +CONFIG_MV_XOR_V2=y +CONFIG_MWAVE=m +CONFIG_MWIFIEX=m +CONFIG_MWIFIEX_PCIE=m +CONFIG_MWIFIEX_SDIO=m +CONFIG_MWIFIEX_USB=m +CONFIG_MWL8K=m +CONFIG_MX3_IPU=y +CONFIG_MX3_IPU_IRQS=4 +CONFIG_MXC4005=m +CONFIG_MXC6255=m +CONFIG_MXC_CLK=y +CONFIG_MXC_CLK_SCU=y +CONFIG_MXC_TZIC=y +CONFIG_MXM_WMI=m +CONFIG_MXS_DMA=y +CONFIG_MYRI10GE=m +CONFIG_MYRI10GE_DCA=y +CONFIG_NAMESPACES=y +CONFIG_NATIONAL_PHY=m +CONFIG_NATSEMI=m +CONFIG_NAU7802=m +CONFIG_NBPFAXI_DMA=m +CONFIG_NCSI_OEM_CMD_GET_MAC=y +CONFIG_NDC_DIS_DYNAMIC_CACHING=y +CONFIG_ND_BLK=m +CONFIG_ND_BTT=m +CONFIG_ND_CLAIM=y +CONFIG_ND_PFN=m +CONFIG_NE2K_PCI=m +CONFIG_NEED_DMA_MAP_STATE=y +CONFIG_NEED_MULTIPLE_NODES=y +CONFIG_NEED_PER_CPU_EMBED_FIRST_CHUNK=y +CONFIG_NEED_PER_CPU_PAGE_FIRST_CHUNK=y +CONFIG_NEED_SG_DMA_LENGTH=y +CONFIG_NEON=y +CONFIG_NET=y +CONFIG_NETCONSOLE=m +CONFIG_NETCONSOLE_DYNAMIC=y +CONFIG_NETDEVICES=y +CONFIG_NETDEVSIM=m +# CONFIG_NETDEV_NOTIFIER_ERROR_INJECT is not set +CONFIG_NETFILTER=y +CONFIG_NETFILTER_ADVANCED=y +CONFIG_NETFILTER_CONNCOUNT=m +CONFIG_NETFILTER_FAMILY_ARP=y +CONFIG_NETFILTER_FAMILY_BRIDGE=y +CONFIG_NETFILTER_INGRESS=y +CONFIG_NETFILTER_NETLINK=m +CONFIG_NETFILTER_NETLINK_ACCT=m +CONFIG_NETFILTER_NETLINK_GLUE_CT=y +CONFIG_NETFILTER_NETLINK_LOG=m +CONFIG_NETFILTER_NETLINK_OSF=m +CONFIG_NETFILTER_NETLINK_QUEUE=m +CONFIG_NETFILTER_SYNPROXY=m +CONFIG_NETFILTER_XTABLES=m +CONFIG_NETFILTER_XT_CONNMARK=m +CONFIG_NETFILTER_XT_MARK=m +CONFIG_NETFILTER_XT_MATCH_ADDRTYPE=m +CONFIG_NETFILTER_XT_MATCH_BPF=m +CONFIG_NETFILTER_XT_MATCH_CGROUP=m +CONFIG_NETFILTER_XT_MATCH_CLUSTER=m +CONFIG_NETFILTER_XT_MATCH_COMMENT=m +CONFIG_NETFILTER_XT_MATCH_CONNBYTES=m +CONFIG_NETFILTER_XT_MATCH_CONNLABEL=m +CONFIG_NETFILTER_XT_MATCH_CONNLIMIT=m +CONFIG_NETFILTER_XT_MATCH_CONNMARK=m +CONFIG_NETFILTER_XT_MATCH_CONNTRACK=m +CONFIG_NETFILTER_XT_MATCH_CPU=m +CONFIG_NETFILTER_XT_MATCH_DCCP=m +CONFIG_NETFILTER_XT_MATCH_DEVGROUP=m +CONFIG_NETFILTER_XT_MATCH_DSCP=m +CONFIG_NETFILTER_XT_MATCH_ECN=m +CONFIG_NETFILTER_XT_MATCH_ESP=m +CONFIG_NETFILTER_XT_MATCH_HASHLIMIT=m +CONFIG_NETFILTER_XT_MATCH_HELPER=m +CONFIG_NETFILTER_XT_MATCH_HL=m +CONFIG_NETFILTER_XT_MATCH_IPCOMP=m +CONFIG_NETFILTER_XT_MATCH_IPRANGE=m +CONFIG_NETFILTER_XT_MATCH_IPVS=m +CONFIG_NETFILTER_XT_MATCH_L2TP=m +CONFIG_NETFILTER_XT_MATCH_LENGTH=m +CONFIG_NETFILTER_XT_MATCH_LIMIT=m +CONFIG_NETFILTER_XT_MATCH_MAC=m +CONFIG_NETFILTER_XT_MATCH_MARK=m +CONFIG_NETFILTER_XT_MATCH_MULTIPORT=m +CONFIG_NETFILTER_XT_MATCH_NFACCT=m +CONFIG_NETFILTER_XT_MATCH_OSF=m +CONFIG_NETFILTER_XT_MATCH_OWNER=m +CONFIG_NETFILTER_XT_MATCH_PHYSDEV=m +CONFIG_NETFILTER_XT_MATCH_PKTTYPE=m +CONFIG_NETFILTER_XT_MATCH_POLICY=m +CONFIG_NETFILTER_XT_MATCH_QUOTA=m +CONFIG_NETFILTER_XT_MATCH_RATEEST=m +CONFIG_NETFILTER_XT_MATCH_REALM=m +CONFIG_NETFILTER_XT_MATCH_RECENT=m +CONFIG_NETFILTER_XT_MATCH_SCTP=m +CONFIG_NETFILTER_XT_MATCH_SOCKET=m +CONFIG_NETFILTER_XT_MATCH_STATE=m +CONFIG_NETFILTER_XT_MATCH_STATISTIC=m +CONFIG_NETFILTER_XT_MATCH_STRING=m +CONFIG_NETFILTER_XT_MATCH_TCPMSS=m +CONFIG_NETFILTER_XT_MATCH_TIME=m +CONFIG_NETFILTER_XT_MATCH_U32=m +CONFIG_NETFILTER_XT_NAT=m +CONFIG_NETFILTER_XT_SET=m +CONFIG_NETFILTER_XT_TARGET_AUDIT=m +CONFIG_NETFILTER_XT_TARGET_CHECKSUM=m +CONFIG_NETFILTER_XT_TARGET_CLASSIFY=m +CONFIG_NETFILTER_XT_TARGET_CONNMARK=m +CONFIG_NETFILTER_XT_TARGET_CONNSECMARK=m +CONFIG_NETFILTER_XT_TARGET_CT=m +CONFIG_NETFILTER_XT_TARGET_DSCP=m +CONFIG_NETFILTER_XT_TARGET_HL=m +CONFIG_NETFILTER_XT_TARGET_HMARK=m +CONFIG_NETFILTER_XT_TARGET_IDLETIMER=m +CONFIG_NETFILTER_XT_TARGET_LED=m +CONFIG_NETFILTER_XT_TARGET_LOG=m +CONFIG_NETFILTER_XT_TARGET_MARK=m +CONFIG_NETFILTER_XT_TARGET_MASQUERADE=m +CONFIG_NETFILTER_XT_TARGET_NETMAP=m +CONFIG_NETFILTER_XT_TARGET_NFLOG=m +CONFIG_NETFILTER_XT_TARGET_NFQUEUE=m +# CONFIG_NETFILTER_XT_TARGET_NOTRACK is not set +CONFIG_NETFILTER_XT_TARGET_RATEEST=m +CONFIG_NETFILTER_XT_TARGET_REDIRECT=m +CONFIG_NETFILTER_XT_TARGET_SECMARK=m +CONFIG_NETFILTER_XT_TARGET_TCPMSS=m +CONFIG_NETFILTER_XT_TARGET_TCPOPTSTRIP=m +CONFIG_NETFILTER_XT_TARGET_TEE=m +CONFIG_NETFILTER_XT_TARGET_TPROXY=m +CONFIG_NETFILTER_XT_TARGET_TRACE=m +CONFIG_NETIUCV=m +CONFIG_NETLABEL=y +CONFIG_NETLINK_DIAG=m +CONFIG_NETPOLL=y +CONFIG_NETROM=m +CONFIG_NETWORK_FILESYSTEMS=y +CONFIG_NETWORK_PHY_TIMESTAMPING=y +CONFIG_NETWORK_SECMARK=y +CONFIG_NETXEN_NIC=m +CONFIG_NET_9P=m +# CONFIG_NET_9P_DEBUG is not set +CONFIG_NET_9P_RDMA=m +CONFIG_NET_9P_VIRTIO=m +CONFIG_NET_9P_XEN=m +CONFIG_NET_ACT_BPF=m +CONFIG_NET_ACT_CONNMARK=m +CONFIG_NET_ACT_CSUM=m +CONFIG_NET_ACT_CT=m +CONFIG_NET_ACT_CTINFO=m +CONFIG_NET_ACT_GACT=m +CONFIG_NET_ACT_GATE=m +# CONFIG_NET_ACT_IFE is not set +CONFIG_NET_ACT_IPT=m +CONFIG_NET_ACT_MIRRED=m +CONFIG_NET_ACT_MPLS=m +CONFIG_NET_ACT_NAT=m +CONFIG_NET_ACT_PEDIT=m +CONFIG_NET_ACT_POLICE=m +CONFIG_NET_ACT_SAMPLE=m +CONFIG_NET_ACT_SIMP=m +CONFIG_NET_ACT_SKBEDIT=m +CONFIG_NET_ACT_SKBMOD=m +CONFIG_NET_ACT_TUNNEL_KEY=m +CONFIG_NET_ACT_VLAN=m +CONFIG_NET_CALXEDA_XGMAC=m +CONFIG_NET_CLS=y +CONFIG_NET_CLS_ACT=y +CONFIG_NET_CLS_BASIC=m +CONFIG_NET_CLS_BPF=m +CONFIG_NET_CLS_CGROUP=m +CONFIG_NET_CLS_FLOW=m +CONFIG_NET_CLS_FLOWER=m +CONFIG_NET_CLS_FW=m +CONFIG_NET_CLS_MATCHALL=m +CONFIG_NET_CLS_ROUTE4=m +CONFIG_NET_CLS_RSVP=m +CONFIG_NET_CLS_RSVP6=m +CONFIG_NET_CLS_TCINDEX=m +CONFIG_NET_CLS_U32=m +CONFIG_NET_CORE=y +CONFIG_NET_DEVLINK=y +CONFIG_NET_DROP_MONITOR=y +CONFIG_NET_DSA=m +CONFIG_NET_DSA_AR9331=m +CONFIG_NET_DSA_BCM_SF2=m +CONFIG_NET_DSA_LANTIQ_GSWIP=m +# CONFIG_NET_DSA_LOOP is not set +CONFIG_NET_DSA_MICROCHIP_KSZ8795=m +CONFIG_NET_DSA_MICROCHIP_KSZ8795_SPI=m +CONFIG_NET_DSA_MICROCHIP_KSZ9477=m +CONFIG_NET_DSA_MICROCHIP_KSZ9477_I2C=m +CONFIG_NET_DSA_MICROCHIP_KSZ9477_SPI=m +CONFIG_NET_DSA_MICROCHIP_KSZ_COMMON=m +CONFIG_NET_DSA_MT7530=m +CONFIG_NET_DSA_MV88E6060=m +CONFIG_NET_DSA_MV88E6XXX=m +CONFIG_NET_DSA_MV88E6XXX_GLOBAL2=y +CONFIG_NET_DSA_MV88E6XXX_PTP=y +CONFIG_NET_DSA_QCA8K=m +CONFIG_NET_DSA_REALTEK_SMI=m +CONFIG_NET_DSA_SJA1105=m +CONFIG_NET_DSA_SJA1105_PTP=y +CONFIG_NET_DSA_SJA1105_TAS=y +CONFIG_NET_DSA_SJA1105_VL=y +CONFIG_NET_DSA_SMSC_LAN9303=m +CONFIG_NET_DSA_SMSC_LAN9303_I2C=m +CONFIG_NET_DSA_SMSC_LAN9303_MDIO=m +CONFIG_NET_DSA_TAG_8021Q=m +CONFIG_NET_DSA_TAG_AR9331=m +CONFIG_NET_DSA_TAG_BRCM=m +CONFIG_NET_DSA_TAG_BRCM_COMMON=m +CONFIG_NET_DSA_TAG_BRCM_PREPEND=m +CONFIG_NET_DSA_TAG_DSA=m +CONFIG_NET_DSA_TAG_EDSA=m +CONFIG_NET_DSA_TAG_GSWIP=m +CONFIG_NET_DSA_TAG_KSZ=m +CONFIG_NET_DSA_TAG_LAN9303=m +CONFIG_NET_DSA_TAG_MTK=m +CONFIG_NET_DSA_TAG_OCELOT=m +CONFIG_NET_DSA_TAG_QCA=m +CONFIG_NET_DSA_TAG_SJA1105=m +CONFIG_NET_DSA_TAG_TRAILER=m +CONFIG_NET_DSA_VITESSE_VSC73XX=m +CONFIG_NET_DSA_VITESSE_VSC73XX_PLATFORM=m +CONFIG_NET_DSA_VITESSE_VSC73XX_SPI=m +CONFIG_NET_EGRESS=y +CONFIG_NET_EMATCH=y +CONFIG_NET_EMATCH_CANID=m +CONFIG_NET_EMATCH_CMP=m +CONFIG_NET_EMATCH_IPSET=m +CONFIG_NET_EMATCH_IPT=m +CONFIG_NET_EMATCH_META=m +CONFIG_NET_EMATCH_NBYTE=m +CONFIG_NET_EMATCH_STACK=32 +CONFIG_NET_EMATCH_TEXT=m +CONFIG_NET_EMATCH_U32=m +CONFIG_NET_FAILOVER=m +CONFIG_NET_FC=y +CONFIG_NET_FLOW_LIMIT=y +CONFIG_NET_FOU=m +CONFIG_NET_FOU_IP_TUNNELS=y +CONFIG_NET_IFE=m +CONFIG_NET_INGRESS=y +CONFIG_NET_IPGRE=m +CONFIG_NET_IPGRE_BROADCAST=y +CONFIG_NET_IPGRE_DEMUX=m +CONFIG_NET_IPIP=m +CONFIG_NET_IPVTI=m +CONFIG_NET_IP_TUNNEL=m +CONFIG_NET_KEY=m +# CONFIG_NET_KEY_MIGRATE is not set +CONFIG_NET_L3_MASTER_DEV=y +CONFIG_NET_MPLS_GSO=m +CONFIG_NET_NCSI=y +CONFIG_NET_NS=y +CONFIG_NET_NSH=m +CONFIG_NET_PKTGEN=m +CONFIG_NET_POLL_CONTROLLER=y +CONFIG_NET_PTP_CLASSIFY=y +CONFIG_NET_REDIRECT=y +CONFIG_NET_RX_BUSY_POLL=y +CONFIG_NET_SB1000=m +CONFIG_NET_SCHED=y +CONFIG_NET_SCH_ATM=m +CONFIG_NET_SCH_CAKE=m +CONFIG_NET_SCH_CBQ=m +CONFIG_NET_SCH_CBS=m +CONFIG_NET_SCH_CHOKE=m +CONFIG_NET_SCH_CODEL=m +# CONFIG_NET_SCH_DEFAULT is not set +CONFIG_NET_SCH_DRR=m +CONFIG_NET_SCH_DSMARK=m +CONFIG_NET_SCH_ETF=m +CONFIG_NET_SCH_ETS=m +CONFIG_NET_SCH_FIFO=y +CONFIG_NET_SCH_FQ=m +CONFIG_NET_SCH_FQ_CODEL=m +CONFIG_NET_SCH_FQ_PIE=m +CONFIG_NET_SCH_GRED=m +CONFIG_NET_SCH_HFSC=m +CONFIG_NET_SCH_HHF=m +CONFIG_NET_SCH_HTB=m +CONFIG_NET_SCH_INGRESS=m +CONFIG_NET_SCH_MQPRIO=m +CONFIG_NET_SCH_MULTIQ=m +CONFIG_NET_SCH_NETEM=m +CONFIG_NET_SCH_PIE=m +CONFIG_NET_SCH_PLUG=m +CONFIG_NET_SCH_PRIO=m +CONFIG_NET_SCH_QFQ=m +CONFIG_NET_SCH_RED=m +CONFIG_NET_SCH_SFB=m +CONFIG_NET_SCH_SFQ=m +CONFIG_NET_SCH_SKBPRIO=m +CONFIG_NET_SCH_TAPRIO=m +CONFIG_NET_SCH_TBF=m +CONFIG_NET_SCH_TEQL=m +CONFIG_NET_SOCK_MSG=y +CONFIG_NET_SWITCHDEV=y +CONFIG_NET_TC_SKB_EXT=y +CONFIG_NET_TEAM=m +CONFIG_NET_TEAM_MODE_ACTIVEBACKUP=m +CONFIG_NET_TEAM_MODE_BROADCAST=m +CONFIG_NET_TEAM_MODE_LOADBALANCE=m +CONFIG_NET_TEAM_MODE_RANDOM=m +CONFIG_NET_TEAM_MODE_ROUNDROBIN=m +CONFIG_NET_TULIP=y +CONFIG_NET_UDP_TUNNEL=m +CONFIG_NET_VENDOR_8390=y +CONFIG_NET_VENDOR_ALACRITECH=y +CONFIG_NET_VENDOR_ALLWINNER=y +CONFIG_NET_VENDOR_AMAZON=y +CONFIG_NET_VENDOR_AQUANTIA=y +CONFIG_NET_VENDOR_AURORA=y +CONFIG_NET_VENDOR_CADENCE=y +CONFIG_NET_VENDOR_CIRRUS=y +CONFIG_NET_VENDOR_CORTINA=y +CONFIG_NET_VENDOR_FARADAY=y +CONFIG_NET_VENDOR_FREESCALE=y +CONFIG_NET_VENDOR_FUJITSU=y +CONFIG_NET_VENDOR_HISILICON=y +CONFIG_NET_VENDOR_I825XX=y +CONFIG_NET_VENDOR_IBM=y +# CONFIG_NET_VENDOR_MEDIATEK is not set +CONFIG_NET_VENDOR_MELLANOX=y +CONFIG_NET_VENDOR_NETERION=y +CONFIG_NET_VENDOR_NETRONOME=y +CONFIG_NET_VENDOR_PACKET_ENGINES=y +CONFIG_NET_VENDOR_SOCIONEXT=y +CONFIG_NET_VENDOR_SOLARFLARE=y +CONFIG_NET_VENDOR_SYNOPSYS=y +CONFIG_NET_VENDOR_XILINX=y +CONFIG_NET_VENDOR_XIRCOM=y +CONFIG_NET_VRF=m +CONFIG_NET_XGENE=m +CONFIG_NET_XGENE_V2=m +CONFIG_NFC_DIGITAL=m +CONFIG_NFC_FDP=m +CONFIG_NFC_FDP_I2C=m +CONFIG_NFC_HCI=m +CONFIG_NFC_MEI_PHY=m +CONFIG_NFC_MICROREAD=m +CONFIG_NFC_MICROREAD_I2C=m +CONFIG_NFC_MICROREAD_MEI=m +CONFIG_NFC_MRVL=m +CONFIG_NFC_MRVL_I2C=m +CONFIG_NFC_MRVL_SPI=m +CONFIG_NFC_MRVL_UART=m +CONFIG_NFC_MRVL_USB=m +CONFIG_NFC_NCI=m +CONFIG_NFC_NCI_SPI=m +CONFIG_NFC_NCI_UART=m +CONFIG_NFC_NXP_NCI=m +CONFIG_NFC_NXP_NCI_I2C=m +CONFIG_NFC_PN532_UART=m +CONFIG_NFC_PN533=m +CONFIG_NFC_PN533_I2C=m +CONFIG_NFC_PN533_USB=m +CONFIG_NFC_PN544=m +CONFIG_NFC_PN544_I2C=m +CONFIG_NFC_PN544_MEI=m +CONFIG_NFC_PORT100=m +CONFIG_NFC_S3FWRN5=m +CONFIG_NFC_S3FWRN5_I2C=m +CONFIG_NFC_SHDLC=y +CONFIG_NFC_SIM=m +CONFIG_NFC_ST21NFCA=m +CONFIG_NFC_ST21NFCA_I2C=m +CONFIG_NFC_ST95HF=m +CONFIG_NFC_ST_NCI=m +CONFIG_NFC_ST_NCI_I2C=m +CONFIG_NFC_ST_NCI_SPI=m +CONFIG_NFC_TRF7970A=m +# CONFIG_NFIT_SECURITY_DEBUG is not set +CONFIG_NFP_APP_ABM_NIC=y +CONFIG_NFP_APP_FLOWER=y +# CONFIG_NFP_DEBUG is not set +CONFIG_NFSD=m +CONFIG_NFSD_BLOCKLAYOUT=y +CONFIG_NFSD_FLEXFILELAYOUT=y +CONFIG_NFSD_PNFS=y +CONFIG_NFSD_SCSILAYOUT=y +CONFIG_NFSD_V2_ACL=y +CONFIG_NFSD_V3=y +CONFIG_NFSD_V3_ACL=y +CONFIG_NFSD_V4=y +CONFIG_NFSD_V4_SECURITY_LABEL=y +CONFIG_NFS_ACL_SUPPORT=m +CONFIG_NFS_COMMON=y +CONFIG_NFS_DEBUG=y +CONFIG_NFS_DISABLE_UDP_SUPPORT=y +CONFIG_NFS_FS=m +CONFIG_NFS_FSCACHE=y +CONFIG_NFS_SWAP=y +CONFIG_NFS_USE_KERNEL_DNS=y +# CONFIG_NFS_USE_LEGACY_DNS is not set +CONFIG_NFS_V2=m +CONFIG_NFS_V3=m +CONFIG_NFS_V3_ACL=y +CONFIG_NFS_V4=m +CONFIG_NFS_V4_1=y +CONFIG_NFS_V4_1_IMPLEMENTATION_ID_DOMAIN="kernel.org" +CONFIG_NFS_V4_1_MIGRATION=y +CONFIG_NFS_V4_2=y +CONFIG_NFS_V4_SECURITY_LABEL=y +CONFIG_NFTL=m +CONFIG_NFTL_RW=y +CONFIG_NFT_BRIDGE_META=m +CONFIG_NFT_BRIDGE_REJECT=m +CONFIG_NFT_COMPAT=m +CONFIG_NFT_CONNLIMIT=m +CONFIG_NFT_COUNTER=m +CONFIG_NFT_CT=m +CONFIG_NFT_DUP_IPV4=m +CONFIG_NFT_DUP_IPV6=m +CONFIG_NFT_DUP_NETDEV=m +CONFIG_NFT_FIB=m +CONFIG_NFT_FIB_INET=m +CONFIG_NFT_FIB_IPV4=m +CONFIG_NFT_FIB_IPV6=m +CONFIG_NFT_FIB_NETDEV=m +CONFIG_NFT_FLOW_OFFLOAD=m +CONFIG_NFT_FWD_NETDEV=m +CONFIG_NFT_HASH=m +CONFIG_NFT_LIMIT=m +CONFIG_NFT_LOG=m +CONFIG_NFT_MASQ=m +CONFIG_NFT_NAT=m +CONFIG_NFT_NUMGEN=m +CONFIG_NFT_OBJREF=m +CONFIG_NFT_OSF=m +CONFIG_NFT_QUEUE=m +CONFIG_NFT_QUOTA=m +CONFIG_NFT_REDIR=m +CONFIG_NFT_REJECT=m +CONFIG_NFT_REJECT_INET=m +CONFIG_NFT_REJECT_IPV4=m +CONFIG_NFT_REJECT_IPV6=m +CONFIG_NFT_SOCKET=m +CONFIG_NFT_SYNPROXY=m +CONFIG_NFT_TPROXY=m +CONFIG_NFT_TUNNEL=m +CONFIG_NFT_XFRM=m +CONFIG_NF_CONNTRACK=m +CONFIG_NF_CONNTRACK_AMANDA=m +CONFIG_NF_CONNTRACK_BRIDGE=m +CONFIG_NF_CONNTRACK_BROADCAST=m +CONFIG_NF_CONNTRACK_EVENTS=y +CONFIG_NF_CONNTRACK_FTP=m +CONFIG_NF_CONNTRACK_H323=m +CONFIG_NF_CONNTRACK_IRC=m +CONFIG_NF_CONNTRACK_LABELS=y +CONFIG_NF_CONNTRACK_MARK=y +CONFIG_NF_CONNTRACK_NETBIOS_NS=m +CONFIG_NF_CONNTRACK_PPTP=m +# CONFIG_NF_CONNTRACK_PROCFS is not set +CONFIG_NF_CONNTRACK_SANE=m +CONFIG_NF_CONNTRACK_SECMARK=y +CONFIG_NF_CONNTRACK_SIP=m +CONFIG_NF_CONNTRACK_SNMP=m +CONFIG_NF_CONNTRACK_TFTP=m +CONFIG_NF_CONNTRACK_TIMEOUT=y +CONFIG_NF_CONNTRACK_TIMESTAMP=y +CONFIG_NF_CONNTRACK_ZONES=y +CONFIG_NF_CT_NETLINK=m +CONFIG_NF_CT_NETLINK_HELPER=m +CONFIG_NF_CT_NETLINK_TIMEOUT=m +CONFIG_NF_CT_PROTO_DCCP=y +CONFIG_NF_CT_PROTO_GRE=y +CONFIG_NF_CT_PROTO_SCTP=y +CONFIG_NF_CT_PROTO_UDPLITE=y +CONFIG_NF_DEFRAG_IPV4=m +CONFIG_NF_DEFRAG_IPV6=m +CONFIG_NF_DUP_IPV4=m +CONFIG_NF_DUP_IPV6=m +CONFIG_NF_DUP_NETDEV=m +CONFIG_NF_FLOW_TABLE=m +CONFIG_NF_FLOW_TABLE_INET=m +CONFIG_NF_FLOW_TABLE_IPV4=m +CONFIG_NF_FLOW_TABLE_IPV6=m +CONFIG_NF_LOG_ARP=m +CONFIG_NF_LOG_BRIDGE=m +CONFIG_NF_LOG_COMMON=m +CONFIG_NF_LOG_IPV4=m +CONFIG_NF_LOG_IPV6=m +CONFIG_NF_LOG_NETDEV=m +CONFIG_NF_NAT=m +CONFIG_NF_NAT_AMANDA=m +CONFIG_NF_NAT_FTP=m +CONFIG_NF_NAT_H323=m +CONFIG_NF_NAT_IRC=m +CONFIG_NF_NAT_MASQUERADE=y +CONFIG_NF_NAT_PPTP=m +CONFIG_NF_NAT_REDIRECT=y +CONFIG_NF_NAT_SIP=m +CONFIG_NF_NAT_SNMP_BASIC=m +CONFIG_NF_NAT_TFTP=m +CONFIG_NF_REJECT_IPV4=m +CONFIG_NF_REJECT_IPV6=m +CONFIG_NF_SOCKET_IPV4=m +CONFIG_NF_SOCKET_IPV6=m +CONFIG_NF_TABLES=m +CONFIG_NF_TABLES_ARP=y +CONFIG_NF_TABLES_BRIDGE=m +CONFIG_NF_TABLES_INET=y +CONFIG_NF_TABLES_IPV4=y +CONFIG_NF_TABLES_IPV6=y +CONFIG_NF_TABLES_NETDEV=y +CONFIG_NF_TPROXY_IPV4=m +CONFIG_NF_TPROXY_IPV6=m +CONFIG_NI903X_WDT=m +CONFIG_NIC7018_WDT=m +CONFIG_NILFS2_FS=m +CONFIG_NIU=m +CONFIG_NI_XGE_MANAGEMENT_ENET=m +# CONFIG_NL80211_TESTMODE is not set +CONFIG_NLATTR=y +CONFIG_NLMON=m +CONFIG_NLS=y +CONFIG_NLS_ASCII=m +CONFIG_NLS_CODEPAGE_1250=m +CONFIG_NLS_CODEPAGE_1251=m +CONFIG_NLS_CODEPAGE_437=y +CONFIG_NLS_CODEPAGE_737=m +CONFIG_NLS_CODEPAGE_775=m +CONFIG_NLS_CODEPAGE_850=m +CONFIG_NLS_CODEPAGE_852=m +CONFIG_NLS_CODEPAGE_855=m +CONFIG_NLS_CODEPAGE_857=m +CONFIG_NLS_CODEPAGE_860=m +CONFIG_NLS_CODEPAGE_861=m +CONFIG_NLS_CODEPAGE_862=m +CONFIG_NLS_CODEPAGE_863=m +CONFIG_NLS_CODEPAGE_864=m +CONFIG_NLS_CODEPAGE_865=m +CONFIG_NLS_CODEPAGE_866=m +CONFIG_NLS_CODEPAGE_869=m +CONFIG_NLS_CODEPAGE_874=m +CONFIG_NLS_CODEPAGE_932=m +CONFIG_NLS_CODEPAGE_936=m +CONFIG_NLS_CODEPAGE_949=m +CONFIG_NLS_CODEPAGE_950=m +CONFIG_NLS_DEFAULT="utf8" +CONFIG_NLS_ISO8859_1=m +CONFIG_NLS_ISO8859_13=m +CONFIG_NLS_ISO8859_14=m +CONFIG_NLS_ISO8859_15=m +CONFIG_NLS_ISO8859_2=m +CONFIG_NLS_ISO8859_3=m +CONFIG_NLS_ISO8859_4=m +CONFIG_NLS_ISO8859_5=m +CONFIG_NLS_ISO8859_6=m +CONFIG_NLS_ISO8859_7=m +CONFIG_NLS_ISO8859_8=m +CONFIG_NLS_ISO8859_9=m +CONFIG_NLS_KOI8_R=m +CONFIG_NLS_KOI8_U=m +CONFIG_NLS_MAC_CELTIC=m +CONFIG_NLS_MAC_CENTEURO=m +CONFIG_NLS_MAC_CROATIAN=m +CONFIG_NLS_MAC_CYRILLIC=m +CONFIG_NLS_MAC_GAELIC=m +CONFIG_NLS_MAC_GREEK=m +CONFIG_NLS_MAC_ICELAND=m +CONFIG_NLS_MAC_INUIT=m +CONFIG_NLS_MAC_ROMAN=m +CONFIG_NLS_MAC_ROMANIAN=m +CONFIG_NLS_MAC_TURKISH=m +CONFIG_NLS_UTF8=m +CONFIG_NMI_IPI=y +CONFIG_NOA1305=m +CONFIG_NOKIA_MODEM=m +CONFIG_NONSTATIC_KERNEL=y +CONFIG_NOP_TRACER=y +CONFIG_NORTEL_HERMES=m +CONFIG_NOTIFIER_ERROR_INJECTION=m +CONFIG_NOUVEAU_DEBUG=5 +CONFIG_NOUVEAU_DEBUG_DEFAULT=3 +# CONFIG_NOUVEAU_DEBUG_MMU is not set +# CONFIG_NOUVEAU_LEGACY_CTX_SUPPORT is not set +CONFIG_NOUVEAU_PLATFORM_DRIVER=y +CONFIG_NO_HZ=y +CONFIG_NO_HZ_COMMON=y +# CONFIG_NO_HZ_FULL is not set +CONFIG_NO_HZ_IDLE=y +CONFIG_NO_IOPORT_MAP=y +CONFIG_NPCM7XX_KCS_IPMI_BMC=m +CONFIG_NPCM7XX_TIMER=y +CONFIG_NPCM7XX_WATCHDOG=y +CONFIG_NPCM_ADC=m +CONFIG_NR_CPUS_DEFAULT=8192 +CONFIG_NR_CPUS_RANGE_BEGIN=8192 +CONFIG_NR_CPUS_RANGE_END=8192 +CONFIG_NR_IRQS=512 +CONFIG_NS83820=m +# CONFIG_NTB_AMD is not set +CONFIG_NTB_IDT=m +CONFIG_NTB_INTEL=m +CONFIG_NTB_MSI=y +# CONFIG_NTB_MSI_TEST is not set +CONFIG_NTB_NETDEV=m +CONFIG_NTB_PERF=m +CONFIG_NTB_PINGPONG=m +CONFIG_NTB_SWITCHTEC=m +CONFIG_NTB_TOOL=m +CONFIG_NTB_TRANSPORT=m +# CONFIG_NTFS_DEBUG is not set +CONFIG_NTFS_FS=m +CONFIG_NULL_TTY=m +CONFIG_NUMA=y +CONFIG_NUMA_BALANCING=y +# CONFIG_NUMA_EMU is not set +CONFIG_NUMA_KEEP_MEMINFO=y +CONFIG_NVDIMM_DAX=y +CONFIG_NVDIMM_KEYS=y +CONFIG_NVDIMM_PFN=y +CONFIG_NVEC_PAZ00=m +CONFIG_NVEC_POWER=m +CONFIG_NVM=y +CONFIG_NVMEM_BCM_OCOTP=m +CONFIG_NVMEM_IMX_IIM=m +CONFIG_NVMEM_IMX_OCOTP=m +CONFIG_NVMEM_IMX_OCOTP_SCU=m +CONFIG_NVMEM_REBOOT_MODE=m +CONFIG_NVMEM_SNVS_LPGPR=m +CONFIG_NVMEM_SPMI_SDAM=m +CONFIG_NVMEM_SUNXI_SID=m +CONFIG_NVMEM_SYSFS=y +# CONFIG_NVMEM_VF610_OCOTP is not set +CONFIG_NVMEM_ZYNQMP=y +CONFIG_NVME_CORE=m +CONFIG_NVME_FABRICS=m +CONFIG_NVME_FC=m +CONFIG_NVME_HWMON=y +CONFIG_NVME_MULTIPATH=y +CONFIG_NVME_RDMA=m +CONFIG_NVME_TARGET=m +CONFIG_NVME_TARGET_FC=m +# CONFIG_NVME_TARGET_FCLOOP is not set +CONFIG_NVME_TARGET_LOOP=m +CONFIG_NVME_TARGET_RDMA=m +CONFIG_NVME_TARGET_TCP=m +CONFIG_NVME_TCP=m +CONFIG_NVM_PBLK=m +# CONFIG_NVM_PBLK_DEBUG is not set +CONFIG_NV_TCO=m +CONFIG_NXP_TJA11XX_PHY=m +CONFIG_N_HDLC=m +# CONFIG_OABI_COMPAT is not set +CONFIG_OBJAGG=m +# CONFIG_OCFS2_DEBUG_FS is not set +CONFIG_OCFS2_DEBUG_MASKLOG=y +CONFIG_OCFS2_FS=m +CONFIG_OCFS2_FS_O2CB=m +CONFIG_OCFS2_FS_STATS=y +CONFIG_OCFS2_FS_USERSPACE_CLUSTER=m +CONFIG_OCTEONTX2_AF=m +CONFIG_OCTEONTX2_MBOX=m +CONFIG_OCTEONTX2_PF=m +CONFIG_OCTEONTX2_VF=m +CONFIG_OCXL=m +CONFIG_OCXL_BASE=y +CONFIG_OF_ADDRESS=y +CONFIG_OF_DMA_DEFAULT_COHERENT=y +CONFIG_OF_DYNAMIC=y +CONFIG_OF_EARLY_FLATTREE=y +CONFIG_OF_FLATTREE=y +CONFIG_OF_FPGA_REGION=m +CONFIG_OF_GPIO=y +CONFIG_OF_IOMMU=y +CONFIG_OF_IRQ=y +CONFIG_OF_KOBJ=y +CONFIG_OF_MDIO=y +CONFIG_OF_NET=y +CONFIG_OF_NUMA=y +CONFIG_OF_OVERLAY=y +CONFIG_OF_PMEM=m +# CONFIG_OF_RECONFIG_NOTIFIER_ERROR_INJECT is not set +CONFIG_OF_RESERVED_MEM=y +CONFIG_OF_RESOLVE=y +# CONFIG_OF_UNITTEST is not set +CONFIG_OID_REGISTRY=y +CONFIG_OLD_SIGACTION=y +CONFIG_OLD_SIGSUSPEND=y +CONFIG_OLD_SIGSUSPEND3=y +CONFIG_OMAP2PLUS_MBOX=m +CONFIG_OMAP2_VRFB=y +# CONFIG_OMAP3_L2_AUX_SECURE_SAVE_RESTORE is not set +# CONFIG_OMAP3_SDRC_AC_TIMING is not set +# CONFIG_OMAP3_THERMAL is not set +CONFIG_OMAP4_THERMAL=y +CONFIG_OMAP5_ERRATA_801819=y +CONFIG_OMAP_32K_TIMER=y +CONFIG_OMAP_CONTROL_PHY=m +CONFIG_OMAP_DM_TIMER=y +CONFIG_OMAP_GPMC=y +# CONFIG_OMAP_GPMC_DEBUG is not set +CONFIG_OMAP_INTERCONNECT=y +CONFIG_OMAP_INTERCONNECT_BARRIER=y +CONFIG_OMAP_IOMMU=y +# CONFIG_OMAP_IOMMU_DEBUG is not set +CONFIG_OMAP_IRQCHIP=y +CONFIG_OMAP_MBOX_KFIFO_SIZE=256 +CONFIG_OMAP_OCP2SCP=m +CONFIG_OMAP_PACKAGE_CBB=y +CONFIG_OMAP_REMOTEPROC=m +# CONFIG_OMAP_REMOTEPROC_WATCHDOG is not set +CONFIG_OMAP_RESET_CLOCKS=y +CONFIG_OMAP_SSI=m +CONFIG_OMAP_USB2=m +CONFIG_OMAP_WATCHDOG=m +# CONFIG_OPAL_CORE is not set +CONFIG_OPAL_PRD=m +CONFIG_OPENVSWITCH=m +CONFIG_OPENVSWITCH_GENEVE=m +CONFIG_OPENVSWITCH_GRE=m +CONFIG_OPENVSWITCH_VXLAN=m +CONFIG_OPROFILE=m +# CONFIG_OPROFILE_EVENT_MULTIPLEX is not set +CONFIG_OPROFILE_NMI_TIMER=y +CONFIG_OPT3001=m +CONFIG_OPTEE=m +CONFIG_OPTEE_SHM_NUM_PRIV_PAGES=1 +CONFIG_OPTPROBES=y +CONFIG_ORANGEFS_FS=m +CONFIG_ORINOCO_USB=m +CONFIG_ORION_IRQCHIP=y +CONFIG_ORION_TIMER=y +CONFIG_ORION_WATCHDOG=m +CONFIG_OUTER_CACHE=y +CONFIG_OUTER_CACHE_SYNC=y +CONFIG_OUTPUT_FORMAT="elf64-x86-64" +CONFIG_OVERLAY_FS=m +# CONFIG_OVERLAY_FS_INDEX is not set +# CONFIG_OVERLAY_FS_METACOPY is not set +CONFIG_OVERLAY_FS_REDIRECT_ALWAYS_FOLLOW=y +# CONFIG_OVERLAY_FS_REDIRECT_DIR is not set +CONFIG_OVERLAY_FS_XINO_AUTO=y +CONFIG_OWL_DMA=m +CONFIG_OWL_PM_DOMAINS=y +CONFIG_OWL_PM_DOMAINS_HELPER=y +CONFIG_OWL_TIMER=y +CONFIG_P54_COMMON=m +CONFIG_P54_LEDS=y +CONFIG_P54_PCI=m +CONFIG_P54_SPI=m +# CONFIG_P54_SPI_DEFAULT_EEPROM is not set +CONFIG_P54_USB=m +CONFIG_PA12203001=m +CONFIG_PACKET=y +CONFIG_PACKET_DIAG=m +CONFIG_PACK_STACK=y +CONFIG_PADATA=y +CONFIG_PAGE_COUNTER=y +# CONFIG_PAGE_OWNER is not set +CONFIG_PAGE_POISONING=y +CONFIG_PAGE_POISONING_NO_SANITY=y +CONFIG_PAGE_POISONING_ZERO=y +CONFIG_PAGE_POOL=y +CONFIG_PAGE_REPORTING=y +CONFIG_PAGE_TABLE_ISOLATION=y +CONFIG_PALMAS_GPADC=m +CONFIG_PANASONIC_LAPTOP=m +CONFIG_PANEL=m +# CONFIG_PANEL_CHANGE_MESSAGE is not set +CONFIG_PANEL_PARPORT=0 +CONFIG_PANEL_PROFILE=5 +# CONFIG_PANIC_ON_OOPS is not set +CONFIG_PANIC_ON_OOPS_VALUE=0 +CONFIG_PANTHERLORD_FF=y +CONFIG_PAPR_SCM=m +CONFIG_PARAVIRT_CLOCK=y +# CONFIG_PARAVIRT_DEBUG is not set +CONFIG_PARAVIRT_SPINLOCKS=y +# CONFIG_PARAVIRT_TIME_ACCOUNTING is not set +CONFIG_PARAVIRT_XXL=y +CONFIG_PARIDE=m +CONFIG_PARIDE_ATEN=m +CONFIG_PARIDE_BPCK=m +CONFIG_PARIDE_BPCK6=m +CONFIG_PARIDE_COMM=m +CONFIG_PARIDE_DSTR=m +CONFIG_PARIDE_EPAT=m +CONFIG_PARIDE_EPATC8=y +CONFIG_PARIDE_EPIA=m +CONFIG_PARIDE_FIT2=m +CONFIG_PARIDE_FIT3=m +CONFIG_PARIDE_FRIQ=m +CONFIG_PARIDE_FRPW=m +CONFIG_PARIDE_KBIC=m +CONFIG_PARIDE_KTTI=m +CONFIG_PARIDE_ON20=m +CONFIG_PARIDE_ON26=m +CONFIG_PARIDE_PCD=m +CONFIG_PARIDE_PD=m +CONFIG_PARIDE_PF=m +CONFIG_PARIDE_PG=m +CONFIG_PARIDE_PT=m +CONFIG_PARMAN=m +CONFIG_PARPORT_1284=y +CONFIG_PARPORT_AX88796=m +CONFIG_PARPORT_NOT_PC=y +CONFIG_PARPORT_PANEL=m +CONFIG_PARPORT_PC=m +CONFIG_PARPORT_PC_FIFO=y +CONFIG_PARPORT_PC_PCMCIA=m +# CONFIG_PARPORT_PC_SUPERIO is not set +CONFIG_PARPORT_SERIAL=m +CONFIG_PARTITION_ADVANCED=y +CONFIG_PARTITION_PERCPU=y +CONFIG_PATA_ACPI=m +CONFIG_PATA_ALI=m +CONFIG_PATA_AMD=m +CONFIG_PATA_ARTOP=m +CONFIG_PATA_ATIIXP=m +CONFIG_PATA_ATP867X=m +CONFIG_PATA_CMD640_PCI=m +CONFIG_PATA_CMD64X=m +CONFIG_PATA_CYPRESS=m +CONFIG_PATA_EFAR=m +CONFIG_PATA_HPT366=m +CONFIG_PATA_HPT37X=m +CONFIG_PATA_HPT3X2N=m +CONFIG_PATA_HPT3X3=m +# CONFIG_PATA_HPT3X3_DMA is not set +CONFIG_PATA_IMX=m +CONFIG_PATA_IT8213=m +CONFIG_PATA_IT821X=m +CONFIG_PATA_JMICRON=m +CONFIG_PATA_LEGACY=m +CONFIG_PATA_MARVELL=m +CONFIG_PATA_MPIIX=m +CONFIG_PATA_NETCELL=m +CONFIG_PATA_NINJA32=m +CONFIG_PATA_NS87410=m +CONFIG_PATA_NS87415=m +CONFIG_PATA_OF_PLATFORM=m +CONFIG_PATA_OLDPIIX=m +CONFIG_PATA_OPTI=m +CONFIG_PATA_OPTIDMA=m +CONFIG_PATA_PCMCIA=m +CONFIG_PATA_PDC2027X=m +CONFIG_PATA_PDC_OLD=m +CONFIG_PATA_PLATFORM=m +CONFIG_PATA_RADISYS=m +CONFIG_PATA_RDC=m +CONFIG_PATA_RZ1000=m +CONFIG_PATA_SCH=m +CONFIG_PATA_SERVERWORKS=m +CONFIG_PATA_SIL680=m +CONFIG_PATA_TIMINGS=y +CONFIG_PATA_TOSHIBA=m +CONFIG_PATA_TRIFLEX=m +CONFIG_PATA_VIA=m +CONFIG_PATA_WINBOND=m +CONFIG_PC300TOO=m +CONFIG_PC87413_WDT=m +CONFIG_PCC=y +CONFIG_PCCARD_NONSTATIC=y +CONFIG_PCENGINES_APU2=m +CONFIG_PCF50633_ADC=m +CONFIG_PCF50633_GPIO=m +CONFIG_PCI=y +CONFIG_PCI200SYN=m +CONFIG_PCIEAER=y +# CONFIG_PCIEAER_INJECT is not set +CONFIG_PCIEASPM=y +CONFIG_PCIEASPM_DEFAULT=y +# CONFIG_PCIEASPM_PERFORMANCE is not set +# CONFIG_PCIEASPM_POWERSAVE is not set +# CONFIG_PCIEASPM_POWER_SUPERSAVE is not set +CONFIG_PCIE_AL=y +CONFIG_PCIE_ALTERA=y +CONFIG_PCIE_ALTERA_MSI=y +CONFIG_PCIE_ARMADA_8K=y +CONFIG_PCIE_BRCMSTB=m +# CONFIG_PCIE_BW is not set +CONFIG_PCIE_CADENCE=y +CONFIG_PCIE_CADENCE_EP=y +CONFIG_PCIE_CADENCE_HOST=y +CONFIG_PCIE_CADENCE_PLAT=y +CONFIG_PCIE_CADENCE_PLAT_EP=y +CONFIG_PCIE_CADENCE_PLAT_HOST=y +CONFIG_PCIE_DPC=y +CONFIG_PCIE_DW=y +CONFIG_PCIE_DW_EP=y +CONFIG_PCIE_DW_HOST=y +CONFIG_PCIE_DW_PLAT=y +CONFIG_PCIE_DW_PLAT_EP=y +CONFIG_PCIE_DW_PLAT_HOST=y +# CONFIG_PCIE_ECRC is not set +# CONFIG_PCIE_EDR is not set +CONFIG_PCIE_HISI_STB=y +CONFIG_PCIE_IPROC=m +CONFIG_PCIE_IPROC_MSI=y +CONFIG_PCIE_IPROC_PLATFORM=m +CONFIG_PCIE_KIRIN=y +# CONFIG_PCIE_LAYERSCAPE_GEN4 is not set +CONFIG_PCIE_MEDIATEK=y +# CONFIG_PCIE_MOBIVEIL_PLAT is not set +CONFIG_PCIE_PME=y +CONFIG_PCIE_PTM=y +CONFIG_PCIE_QCOM=y +CONFIG_PCIE_RCAR=y +CONFIG_PCIE_RCAR_EP=y +CONFIG_PCIE_RCAR_HOST=y +CONFIG_PCIE_ROCKCHIP=y +CONFIG_PCIE_ROCKCHIP_EP=y +CONFIG_PCIE_ROCKCHIP_HOST=m +CONFIG_PCIE_UNIPHIER=y +CONFIG_PCIE_UNIPHIER_EP=y +CONFIG_PCIE_XILINX=y +CONFIG_PCIE_XILINX_NWL=y +CONFIG_PCI_AARDVARK=y +CONFIG_PCI_ATMEL=m +CONFIG_PCI_ATS=y +CONFIG_PCI_BRIDGE_EMUL=y +# CONFIG_PCI_CNB20LE_QUIRK is not set +# CONFIG_PCI_DEBUG is not set +CONFIG_PCI_DIRECT=y +CONFIG_PCI_DOMAINS=y +CONFIG_PCI_DOMAINS_GENERIC=y +CONFIG_PCI_DRA7XX=y +CONFIG_PCI_DRA7XX_EP=y +CONFIG_PCI_DRA7XX_HOST=y +CONFIG_PCI_ECAM=y +CONFIG_PCI_ENDPOINT=y +CONFIG_PCI_ENDPOINT_CONFIGFS=y +# CONFIG_PCI_ENDPOINT_TEST is not set +# CONFIG_PCI_EPF_TEST is not set +CONFIG_PCI_FTPCI100=y +CONFIG_PCI_HISI=y +CONFIG_PCI_HOST_COMMON=y +CONFIG_PCI_HOST_GENERIC=y +CONFIG_PCI_HOST_THUNDER_ECAM=y +CONFIG_PCI_HOST_THUNDER_PEM=y +CONFIG_PCI_HYPERV=m +CONFIG_PCI_HYPERV_INTERFACE=m +CONFIG_PCI_IMX6=y +CONFIG_PCI_IOV=y +CONFIG_PCI_KEYSTONE=y +CONFIG_PCI_KEYSTONE_EP=y +CONFIG_PCI_KEYSTONE_HOST=y +CONFIG_PCI_LABEL=y +CONFIG_PCI_LAYERSCAPE_EP=y +CONFIG_PCI_LOCKLESS_CONFIG=y +# CONFIG_PCI_MESON is not set +CONFIG_PCI_MMCONFIG=y +CONFIG_PCI_MSI=y +CONFIG_PCI_MSI_IRQ_DOMAIN=y +CONFIG_PCI_MVEBU=y +CONFIG_PCI_NR_FUNCTIONS=512 +# CONFIG_PCI_P2PDMA is not set +CONFIG_PCI_PF_STUB=m +CONFIG_PCI_RCAR_GEN2=y +CONFIG_PCI_REALLOC_ENABLE_AUTO=y +CONFIG_PCI_STUB=m +CONFIG_PCI_SW_SWITCHTEC=m +CONFIG_PCI_SYSCALL=y +CONFIG_PCI_TEGRA=y +CONFIG_PCI_V3_SEMI=y +CONFIG_PCI_XEN=y +CONFIG_PCI_XGENE=y +CONFIG_PCI_XGENE_MSI=y +CONFIG_PCMCIA_3C574=m +CONFIG_PCMCIA_3C589=m +CONFIG_PCMCIA_AHA152X=m +CONFIG_PCMCIA_ATMEL=m +CONFIG_PCMCIA_AXNET=m +CONFIG_PCMCIA_FDOMAIN=m +CONFIG_PCMCIA_FMVJ18X=m +CONFIG_PCMCIA_HERMES=m +CONFIG_PCMCIA_LOAD_CIS=y +CONFIG_PCMCIA_NMCLAN=m +CONFIG_PCMCIA_PCNET=m +CONFIG_PCMCIA_QLOGIC=m +CONFIG_PCMCIA_RAYCS=m +CONFIG_PCMCIA_SMC91C92=m +CONFIG_PCMCIA_SPECTRUM=m +CONFIG_PCMCIA_SYM53C500=m +CONFIG_PCMCIA_WL3501=m +CONFIG_PCMCIA_XIRC2PS=m +CONFIG_PCMCIA_XIRCOM=m +CONFIG_PCNET32=m +CONFIG_PCSPKR_PLATFORM=y +CONFIG_PD6729=m +CONFIG_PDA_POWER=m +CONFIG_PDC_ADMA=m +CONFIG_PEAQ_WMI=m +# CONFIG_PERCPU_STATS is not set +# CONFIG_PERCPU_TEST is not set +CONFIG_PERF_EVENTS=y +# CONFIG_PERF_EVENTS_AMD_POWER is not set +CONFIG_PERF_EVENTS_INTEL_CSTATE=m +CONFIG_PERF_EVENTS_INTEL_RAPL=m +CONFIG_PERF_EVENTS_INTEL_UNCORE=y +CONFIG_PERF_USE_VMALLOC=y +CONFIG_PERSISTENT_KEYRINGS=y +CONFIG_PFAULT=y +CONFIG_PGSTE=y +CONFIG_PHYLINK=m +CONFIG_PHYSICAL_ALIGN=0x200000 +CONFIG_PHYS_ADDR_T_64BIT=y +CONFIG_PHY_AM654_SERDES=m +CONFIG_PHY_BCM_NS_USB2=m +CONFIG_PHY_BCM_NS_USB3=m +CONFIG_PHY_BCM_SR_PCIE=m +CONFIG_PHY_BCM_SR_USB=m +CONFIG_PHY_BERLIN_SATA=m +CONFIG_PHY_BERLIN_USB=m +CONFIG_PHY_BRCM_SATA=y +CONFIG_PHY_BRCM_USB=m +CONFIG_PHY_CADENCE_DPHY=m +CONFIG_PHY_CADENCE_SALVO=m +CONFIG_PHY_CADENCE_SIERRA=m +CONFIG_PHY_CADENCE_TORRENT=m +CONFIG_PHY_CPCAP_USB=m +CONFIG_PHY_DM816X_USB=m +CONFIG_PHY_EXYNOS5250_SATA=y +CONFIG_PHY_EXYNOS5250_USB2=y +CONFIG_PHY_EXYNOS5_USBDRD=m +CONFIG_PHY_EXYNOS_DP_VIDEO=y +CONFIG_PHY_EXYNOS_MIPI_VIDEO=y +CONFIG_PHY_EXYNOS_PCIE=y +CONFIG_PHY_FSL_IMX8MQ_USB=m +CONFIG_PHY_HI3660_USB=m +CONFIG_PHY_HI6220_USB=m +CONFIG_PHY_HISI_INNO_USB2=m +CONFIG_PHY_HISTB_COMBPHY=m +CONFIG_PHY_HIX5HD2_SATA=m +CONFIG_PHY_INTEL_EMMC=m +CONFIG_PHY_J721E_WIZ=m +CONFIG_PHY_MAPPHONE_MDM6600=m +CONFIG_PHY_MESON8B_USB2=m +CONFIG_PHY_MESON_AXG_MIPI_PCIE_ANALOG=y +CONFIG_PHY_MESON_AXG_PCIE=y +CONFIG_PHY_MESON_G12A_USB2=m +CONFIG_PHY_MESON_G12A_USB3_PCIE=m +CONFIG_PHY_MESON_GXL_USB2=m +CONFIG_PHY_MIXEL_MIPI_DPHY=m +CONFIG_PHY_MTK_TPHY=m +CONFIG_PHY_MTK_UFS=m +CONFIG_PHY_MTK_XSPHY=m +CONFIG_PHY_MVEBU_A3700_COMPHY=m +CONFIG_PHY_MVEBU_A3700_UTMI=m +CONFIG_PHY_MVEBU_A38X_COMPHY=m +CONFIG_PHY_MVEBU_CP110_COMPHY=m +CONFIG_PHY_MVEBU_SATA=y +CONFIG_PHY_NS2_PCIE=y +CONFIG_PHY_NS2_USB_DRD=m +CONFIG_PHY_OCELOT_SERDES=m +CONFIG_PHY_QCOM_APQ8064_SATA=m +CONFIG_PHY_QCOM_IPQ4019_USB=m +CONFIG_PHY_QCOM_IPQ806X_SATA=m +CONFIG_PHY_QCOM_PCIE2=m +CONFIG_PHY_QCOM_QMP=m +CONFIG_PHY_QCOM_QUSB2=m +CONFIG_PHY_QCOM_UFS=m +CONFIG_PHY_QCOM_UFS_14NM=m +CONFIG_PHY_QCOM_USB_HS=m +CONFIG_PHY_QCOM_USB_HSIC=m +CONFIG_PHY_QCOM_USB_HS_28NM=m +CONFIG_PHY_QCOM_USB_SNPS_FEMTO_V2=m +CONFIG_PHY_QCOM_USB_SS=m +CONFIG_PHY_RCAR_GEN2=m +CONFIG_PHY_RCAR_GEN3_PCIE=m +CONFIG_PHY_RCAR_GEN3_USB2=m +CONFIG_PHY_RCAR_GEN3_USB3=m +CONFIG_PHY_ROCKCHIP_DP=m +CONFIG_PHY_ROCKCHIP_DPHY_RX0=m +CONFIG_PHY_ROCKCHIP_EMMC=m +CONFIG_PHY_ROCKCHIP_INNO_DSIDPHY=m +CONFIG_PHY_ROCKCHIP_INNO_HDMI=m +CONFIG_PHY_ROCKCHIP_INNO_USB2=m +CONFIG_PHY_ROCKCHIP_PCIE=m +CONFIG_PHY_ROCKCHIP_TYPEC=m +CONFIG_PHY_ROCKCHIP_USB=m +CONFIG_PHY_SAMSUNG_USB2=m +CONFIG_PHY_SUN4I_USB=m +CONFIG_PHY_SUN50I_USB3=m +CONFIG_PHY_SUN6I_MIPI_DPHY=m +# CONFIG_PHY_SUN9I_USB is not set +CONFIG_PHY_TEGRA_XUSB=m +CONFIG_PHY_TUSB1210=m +CONFIG_PHY_UNIPHIER_PCIE=m +CONFIG_PHY_UNIPHIER_USB2=m +CONFIG_PHY_UNIPHIER_USB3=m +CONFIG_PHY_XGENE=y +CONFIG_PI433=m +# CONFIG_PID_IN_CONTEXTIDR is not set +CONFIG_PID_NS=y +CONFIG_PINCONF=y +CONFIG_PINCTRL_AMD=y +CONFIG_PINCTRL_APQ8064=m +CONFIG_PINCTRL_APQ8084=m +CONFIG_PINCTRL_ARMADA_370=y +CONFIG_PINCTRL_ARMADA_375=y +CONFIG_PINCTRL_ARMADA_37XX=y +CONFIG_PINCTRL_ARMADA_38X=y +CONFIG_PINCTRL_ARMADA_39X=y +CONFIG_PINCTRL_ARMADA_AP806=y +CONFIG_PINCTRL_ARMADA_CP110=y +CONFIG_PINCTRL_ARMADA_XP=y +CONFIG_PINCTRL_AS370=y +CONFIG_PINCTRL_AS3722=y +CONFIG_PINCTRL_ASPEED=y +CONFIG_PINCTRL_ASPEED_G6=y +CONFIG_PINCTRL_AXP209=m +CONFIG_PINCTRL_BAYTRAIL=y +CONFIG_PINCTRL_BCM2835=y +CONFIG_PINCTRL_BERLIN=y +CONFIG_PINCTRL_BERLIN_BG2=y +CONFIG_PINCTRL_BERLIN_BG2CD=y +CONFIG_PINCTRL_BERLIN_BG2Q=y +CONFIG_PINCTRL_BERLIN_BG4CT=y +CONFIG_PINCTRL_BM1880=y +CONFIG_PINCTRL_BROXTON=m +CONFIG_PINCTRL_CANNONLAKE=m +CONFIG_PINCTRL_CEDARFORK=m +CONFIG_PINCTRL_CHERRYVIEW=y +CONFIG_PINCTRL_CS47L15=y +CONFIG_PINCTRL_CS47L35=y +CONFIG_PINCTRL_CS47L85=y +CONFIG_PINCTRL_CS47L90=y +CONFIG_PINCTRL_CS47L92=y +CONFIG_PINCTRL_DA9062=m +CONFIG_PINCTRL_DENVERTON=m +CONFIG_PINCTRL_DOVE=y +CONFIG_PINCTRL_EXYNOS=y +CONFIG_PINCTRL_EXYNOS_ARM=y +CONFIG_PINCTRL_GEMINILAKE=m +CONFIG_PINCTRL_ICELAKE=m +CONFIG_PINCTRL_IMX=y +CONFIG_PINCTRL_IMX50=y +CONFIG_PINCTRL_IMX51=y +CONFIG_PINCTRL_IMX6Q=y +CONFIG_PINCTRL_IMX6SL=y +CONFIG_PINCTRL_IMX6SLL=y +CONFIG_PINCTRL_IMX6SX=y +CONFIG_PINCTRL_IMX6UL=y +CONFIG_PINCTRL_IMX7D=y +CONFIG_PINCTRL_IMX7ULP=y +CONFIG_PINCTRL_IMX8DXL=y +CONFIG_PINCTRL_IMX8MM=y +CONFIG_PINCTRL_IMX8MN=y +CONFIG_PINCTRL_IMX8MP=y +CONFIG_PINCTRL_IMX8MQ=y +CONFIG_PINCTRL_IMX8QM=y +CONFIG_PINCTRL_IMX8QXP=y +CONFIG_PINCTRL_IMX_SCU=y +CONFIG_PINCTRL_INTEL=m +CONFIG_PINCTRL_IPQ4019=m +CONFIG_PINCTRL_IPQ6018=m +CONFIG_PINCTRL_IPQ8064=m +CONFIG_PINCTRL_IPQ8074=m +CONFIG_PINCTRL_IPROC_GPIO=y +CONFIG_PINCTRL_JASPERLAKE=m +CONFIG_PINCTRL_LEWISBURG=m +CONFIG_PINCTRL_LOCHNAGAR=m +CONFIG_PINCTRL_LYNXPOINT=m +CONFIG_PINCTRL_MADERA=m +CONFIG_PINCTRL_MAX77620=m +CONFIG_PINCTRL_MCP23S08=m +CONFIG_PINCTRL_MCP23S08_I2C=m +CONFIG_PINCTRL_MCP23S08_SPI=m +CONFIG_PINCTRL_MDM9615=m +CONFIG_PINCTRL_MESON=y +CONFIG_PINCTRL_MESON8=y +CONFIG_PINCTRL_MESON8B=y +CONFIG_PINCTRL_MESON8_PMX=y +CONFIG_PINCTRL_MESON_A1=y +CONFIG_PINCTRL_MESON_AXG=y +CONFIG_PINCTRL_MESON_AXG_PMX=y +CONFIG_PINCTRL_MESON_G12A=y +CONFIG_PINCTRL_MESON_GXBB=y +CONFIG_PINCTRL_MESON_GXL=y +CONFIG_PINCTRL_MSM=y +CONFIG_PINCTRL_MSM8660=m +CONFIG_PINCTRL_MSM8916=m +CONFIG_PINCTRL_MSM8960=m +CONFIG_PINCTRL_MSM8976=m +CONFIG_PINCTRL_MSM8994=m +CONFIG_PINCTRL_MSM8996=m +CONFIG_PINCTRL_MSM8998=m +CONFIG_PINCTRL_MSM8X74=m +CONFIG_PINCTRL_MT2701=y +CONFIG_PINCTRL_MT2712=y +CONFIG_PINCTRL_MT6397=y +CONFIG_PINCTRL_MT6765=y +CONFIG_PINCTRL_MT6797=y +CONFIG_PINCTRL_MT7622=y +CONFIG_PINCTRL_MT7623=y +CONFIG_PINCTRL_MT7629=y +CONFIG_PINCTRL_MT8127=y +CONFIG_PINCTRL_MT8135=y +CONFIG_PINCTRL_MT8173=y +CONFIG_PINCTRL_MT8183=y +CONFIG_PINCTRL_MT8516=y +CONFIG_PINCTRL_MTK=y +CONFIG_PINCTRL_MTK_MOORE=y +CONFIG_PINCTRL_MTK_PARIS=y +CONFIG_PINCTRL_MTK_V2=y +CONFIG_PINCTRL_MVEBU=y +CONFIG_PINCTRL_NPCM7XX=y +CONFIG_PINCTRL_NS2_MUX=y +CONFIG_PINCTRL_OCELOT=y +CONFIG_PINCTRL_OWL=y +CONFIG_PINCTRL_PALMAS=y +CONFIG_PINCTRL_PFC_EMEV2=y +CONFIG_PINCTRL_PFC_R8A7740=y +CONFIG_PINCTRL_PFC_R8A7742=y +CONFIG_PINCTRL_PFC_R8A7743=y +CONFIG_PINCTRL_PFC_R8A7744=y +CONFIG_PINCTRL_PFC_R8A7745=y +CONFIG_PINCTRL_PFC_R8A77470=y +CONFIG_PINCTRL_PFC_R8A774A1=y +CONFIG_PINCTRL_PFC_R8A774B1=y +CONFIG_PINCTRL_PFC_R8A774C0=y +CONFIG_PINCTRL_PFC_R8A7778=y +CONFIG_PINCTRL_PFC_R8A7779=y +CONFIG_PINCTRL_PFC_R8A7790=y +CONFIG_PINCTRL_PFC_R8A7791=y +CONFIG_PINCTRL_PFC_R8A7792=y +CONFIG_PINCTRL_PFC_R8A7793=y +CONFIG_PINCTRL_PFC_R8A7794=y +CONFIG_PINCTRL_PFC_R8A77950=y +CONFIG_PINCTRL_PFC_R8A77951=y +CONFIG_PINCTRL_PFC_R8A77960=y +CONFIG_PINCTRL_PFC_R8A77961=y +CONFIG_PINCTRL_PFC_R8A77965=y +CONFIG_PINCTRL_PFC_R8A77970=y +CONFIG_PINCTRL_PFC_R8A77980=y +CONFIG_PINCTRL_PFC_R8A77990=y +CONFIG_PINCTRL_PFC_R8A77995=y +CONFIG_PINCTRL_PFC_SH73A0=y +CONFIG_PINCTRL_QCOM_SPMI_PMIC=m +CONFIG_PINCTRL_QCOM_SSBI_PMIC=m +CONFIG_PINCTRL_QCS404=m +CONFIG_PINCTRL_QDF2XXX=m +CONFIG_PINCTRL_RK805=m +CONFIG_PINCTRL_ROCKCHIP=y +CONFIG_PINCTRL_RZA1=y +CONFIG_PINCTRL_RZA2=y +CONFIG_PINCTRL_RZN1=y +CONFIG_PINCTRL_S700=y +CONFIG_PINCTRL_S900=y +CONFIG_PINCTRL_SAMSUNG=y +CONFIG_PINCTRL_SC7180=m +CONFIG_PINCTRL_SDM660=m +CONFIG_PINCTRL_SDM845=m +CONFIG_PINCTRL_SH_PFC=y +CONFIG_PINCTRL_SH_PFC_GPIO=y +CONFIG_PINCTRL_SINGLE=y +CONFIG_PINCTRL_SM8150=m +CONFIG_PINCTRL_SM8250=m +CONFIG_PINCTRL_SPRD=y +CONFIG_PINCTRL_SPRD_SC9860=y +CONFIG_PINCTRL_STMFX=m +CONFIG_PINCTRL_SUN4I_A10=y +CONFIG_PINCTRL_SUN50I_A64=y +CONFIG_PINCTRL_SUN50I_A64_R=y +CONFIG_PINCTRL_SUN50I_H5=y +CONFIG_PINCTRL_SUN50I_H6=y +CONFIG_PINCTRL_SUN50I_H6_R=y +CONFIG_PINCTRL_SUN5I=y +CONFIG_PINCTRL_SUN6I_A31=y +CONFIG_PINCTRL_SUN6I_A31_R=y +CONFIG_PINCTRL_SUN8I_A23=y +CONFIG_PINCTRL_SUN8I_A23_R=y +CONFIG_PINCTRL_SUN8I_A33=y +CONFIG_PINCTRL_SUN8I_A83T=y +CONFIG_PINCTRL_SUN8I_A83T_R=y +CONFIG_PINCTRL_SUN8I_H3=y +CONFIG_PINCTRL_SUN8I_H3_R=y +CONFIG_PINCTRL_SUN8I_V3S=y +CONFIG_PINCTRL_SUN9I_A80=y +CONFIG_PINCTRL_SUN9I_A80_R=y +CONFIG_PINCTRL_SUNRISEPOINT=m +CONFIG_PINCTRL_SUNXI=y +CONFIG_PINCTRL_SX150X=y +CONFIG_PINCTRL_TEGRA=y +CONFIG_PINCTRL_TEGRA114=y +CONFIG_PINCTRL_TEGRA124=y +CONFIG_PINCTRL_TEGRA20=y +CONFIG_PINCTRL_TEGRA30=y +CONFIG_PINCTRL_TEGRA_XUSB=y +CONFIG_PINCTRL_TIGERLAKE=m +CONFIG_PINCTRL_TI_IODELAY=y +CONFIG_PINCTRL_UNIPHIER=y +CONFIG_PINCTRL_UNIPHIER_LD11=y +CONFIG_PINCTRL_UNIPHIER_LD20=y +CONFIG_PINCTRL_UNIPHIER_LD4=y +CONFIG_PINCTRL_UNIPHIER_LD6B=y +CONFIG_PINCTRL_UNIPHIER_PRO4=y +CONFIG_PINCTRL_UNIPHIER_PRO5=y +CONFIG_PINCTRL_UNIPHIER_PXS2=y +CONFIG_PINCTRL_UNIPHIER_PXS3=y +CONFIG_PINCTRL_UNIPHIER_SLD8=y +CONFIG_PINCTRL_VF610=y +CONFIG_PING=m +CONFIG_PINMUX=y +CONFIG_PJ4B_ERRATA_4742=y +CONFIG_PKCS7_MESSAGE_PARSER=y +CONFIG_PKCS7_TEST_KEY=m +CONFIG_PKCS8_PRIVATE_KEY_PARSER=m +CONFIG_PKEY=m +CONFIG_PL310_ERRATA_588369=y +CONFIG_PL310_ERRATA_727915=y +CONFIG_PL310_ERRATA_753970=y +CONFIG_PL310_ERRATA_769419=y +CONFIG_PL320_MBOX=y +CONFIG_PL330_DMA=m +CONFIG_PL353_SMC=m +CONFIG_PLATFORM_MHU=m +CONFIG_PLATFORM_SI4713=m +CONFIG_PLAT_ORION=y +CONFIG_PLAT_SAMSUNG=y +# CONFIG_PLAT_SPEAR is not set +CONFIG_PLAT_VERSATILE=y +CONFIG_PLIP=m +CONFIG_PLX_DMA=m +CONFIG_PLX_HERMES=m +CONFIG_PM=y +CONFIG_PM8916_WATCHDOG=m +CONFIG_PMBUS=m +CONFIG_PMC_ATOM=y +CONFIG_PMIC_ADP5520=y +CONFIG_PMIC_DA903X=y +CONFIG_PMIC_DA9052=y +CONFIG_PMS7003=m +# CONFIG_PMU_SYSFS is not set +CONFIG_PM_ADVANCED_DEBUG=y +# CONFIG_PM_AUTOSLEEP is not set +CONFIG_PM_CLK=y +CONFIG_PM_DEBUG=y +CONFIG_PM_DEVFREQ_EVENT=y +CONFIG_PM_GENERIC_DOMAINS=y +CONFIG_PM_GENERIC_DOMAINS_OF=y +CONFIG_PM_GENERIC_DOMAINS_SLEEP=y +CONFIG_PM_NOTIFIER_ERROR_INJECT=m +CONFIG_PM_OPP=y +CONFIG_PM_SLEEP=y +CONFIG_PM_SLEEP_DEBUG=y +CONFIG_PM_SLEEP_SMP=y +CONFIG_PM_SLEEP_SMP_NONZERO_CPU=y +CONFIG_PM_STD_PARTITION="" +# CONFIG_PM_TEST_SUSPEND is not set +CONFIG_PM_TRACE=y +CONFIG_PM_TRACE_RTC=y +CONFIG_PM_WAKELOCKS=y +CONFIG_PM_WAKELOCKS_GC=y +CONFIG_PM_WAKELOCKS_LIMIT=100 +CONFIG_PNFS_BLOCK=m +CONFIG_PNFS_FILE_LAYOUT=m +CONFIG_PNFS_FLEXFILE_LAYOUT=m +CONFIG_PNP=y +CONFIG_PNPACPI=y +# CONFIG_PNP_DEBUG_MESSAGES is not set +CONFIG_POSIX_MQUEUE=y +CONFIG_POSIX_MQUEUE_SYSCTL=y +CONFIG_POSIX_TIMERS=y +# CONFIG_POWER7_CPU is not set +# CONFIG_POWER8_CPU is not set +# CONFIG_POWER9_CPU is not set +CONFIG_POWERNV_CPUFREQ=y +CONFIG_POWERNV_CPUIDLE=y +CONFIG_POWERNV_OP_PANEL=m +CONFIG_POWER_AVS_OMAP=y +CONFIG_POWER_AVS_OMAP_CLASS3=y +CONFIG_POWER_RESET=y +CONFIG_POWER_RESET_AS3722=y +CONFIG_POWER_RESET_AXXIA=y +CONFIG_POWER_RESET_BRCMKONA=y +# CONFIG_POWER_RESET_BRCMSTB is not set +CONFIG_POWER_RESET_GPIO=y +CONFIG_POWER_RESET_GPIO_RESTART=y +CONFIG_POWER_RESET_HISI=y +CONFIG_POWER_RESET_LTC2952=y +CONFIG_POWER_RESET_MSM=y +CONFIG_POWER_RESET_MT6323=y +CONFIG_POWER_RESET_QCOM_PON=m +# CONFIG_POWER_RESET_QNAP is not set +CONFIG_POWER_RESET_RESTART=y +CONFIG_POWER_RESET_RMOBILE=m +CONFIG_POWER_RESET_SC27XX=m +CONFIG_POWER_RESET_SYSCON=y +CONFIG_POWER_RESET_SYSCON_POWEROFF=y +CONFIG_POWER_RESET_VERSATILE=y +CONFIG_POWER_RESET_VEXPRESS=y +# CONFIG_POWER_RESET_XGENE is not set +# CONFIG_POWER_SUPPLY_DEBUG is not set +CONFIG_POWER_SUPPLY_HWMON=y +CONFIG_PPC=y +CONFIG_PPC64=y +CONFIG_PPC64_BOOT_WRAPPER=y +CONFIG_PPC64_SUPPORTS_MEMORY_FAILURE=y +# CONFIG_PPC_4K_PAGES is not set +CONFIG_PPC_64K_PAGES=y +CONFIG_PPC_BARRIER_NOSPEC=y +# CONFIG_PPC_BOOK3E_64 is not set +CONFIG_PPC_BOOK3S=y +CONFIG_PPC_BOOK3S_64=y +CONFIG_PPC_BOOK3S_IDLE=y +CONFIG_PPC_COPRO_BASE=y +CONFIG_PPC_DAWR=y +CONFIG_PPC_DENORMALISATION=y +# CONFIG_PPC_DISABLE_WERROR is not set +CONFIG_PPC_DOORBELL=y +CONFIG_PPC_DT_CPU_FTRS=y +# CONFIG_PPC_EARLY_DEBUG is not set +# CONFIG_PPC_EMULATED_STATS is not set +# CONFIG_PPC_EPAPR_HV_BYTECHAN is not set +# CONFIG_PPC_FAST_ENDIAN_SWITCH is not set +CONFIG_PPC_FPU=y +CONFIG_PPC_HAVE_KUAP=y +CONFIG_PPC_HAVE_KUEP=y +CONFIG_PPC_HAVE_PMU_SUPPORT=y +CONFIG_PPC_I8259=y +CONFIG_PPC_ICP_HV=y +CONFIG_PPC_ICP_NATIVE=y +CONFIG_PPC_ICS_RTAS=y +CONFIG_PPC_INDIRECT_PIO=y +# CONFIG_PPC_IRQ_SOFT_MASK_DEBUG is not set +CONFIG_PPC_KUAP=y +# CONFIG_PPC_KUAP_DEBUG is not set +CONFIG_PPC_KUEP=y +CONFIG_PPC_MEMTRACE=y +# CONFIG_PPC_MEM_KEYS is not set +CONFIG_PPC_MM_SLICES=y +CONFIG_PPC_MSI_BITMAP=y +CONFIG_PPC_NATIVE=y +CONFIG_PPC_OF_BOOT_TRAMPOLINE=y +CONFIG_PPC_P7_NAP=y +CONFIG_PPC_PAGE_SHIFT=16 +CONFIG_PPC_PERF_CTRS=y +CONFIG_PPC_POWERNV=y +CONFIG_PPC_PSERIES=y +# CONFIG_PPC_PTDUMP is not set +CONFIG_PPC_RADIX_MMU=y +CONFIG_PPC_RADIX_MMU_DEFAULT=y +CONFIG_PPC_RTAS=y +CONFIG_PPC_RTAS_DAEMON=y +CONFIG_PPC_RTAS_FILTER=y +CONFIG_PPC_SECURE_BOOT=y +CONFIG_PPC_SECVAR_SYSFS=y +CONFIG_PPC_SMLPAR=y +CONFIG_PPC_SMP_MUXED_IPI=y +CONFIG_PPC_SPLPAR=y +CONFIG_PPC_SUBPAGE_PROT=y +CONFIG_PPC_SVM=y +CONFIG_PPC_TRANSACTIONAL_MEM=y +CONFIG_PPC_UDBG_16550=y +CONFIG_PPC_UV=y +CONFIG_PPC_VAS=y +CONFIG_PPC_WATCHDOG=y +CONFIG_PPC_WERROR=y +CONFIG_PPC_XICS=y +CONFIG_PPC_XIVE=y +CONFIG_PPC_XIVE_NATIVE=y +CONFIG_PPC_XIVE_SPAPR=y +CONFIG_PPDEV=m +CONFIG_PPPOATM=m +CONFIG_PPPOE=m +CONFIG_PPPOL2TP=m +CONFIG_PPP_ASYNC=m +CONFIG_PPP_BSDCOMP=m +CONFIG_PPP_DEFLATE=m +CONFIG_PPP_FILTER=y +CONFIG_PPP_MPPE=m +CONFIG_PPP_MULTILINK=y +CONFIG_PPP_SYNC_TTY=m +# CONFIG_PPS_CLIENT_KTIMER is not set +CONFIG_PPS_CLIENT_PARPORT=m +# CONFIG_PPS_DEBUG is not set +CONFIG_PPTP=m +CONFIG_PREEMPTION=y +# CONFIG_PREEMPTIRQ_DELAY_TEST is not set +CONFIG_PREEMPT_COUNT=y +CONFIG_PREEMPT_NOTIFIERS=y +CONFIG_PREEMPT_RCU=y +# CONFIG_PREEMPT_TRACER is not set +CONFIG_PREVENT_FIRMWARE_BUILD=y +# CONFIG_PRIME_NUMBERS is not set +CONFIG_PRINTER=m +CONFIG_PRINTK=y +# CONFIG_PRINTK_CALLER is not set +CONFIG_PRINTK_NMI=y +CONFIG_PRINTK_SAFE_LOG_BUF_SHIFT=13 +CONFIG_PRINTK_TIME=y +# CONFIG_PRINT_QUOTA_WARNING is not set +CONFIG_PRINT_STACK_DEPTH=64 +CONFIG_PRISM2_USB=m +# CONFIG_PRISM54 is not set +CONFIG_PROBE_EVENTS=y +CONFIG_PROCESSOR_SELECT=y +CONFIG_PROC_CHILDREN=y +CONFIG_PROC_CPU_RESCTRL=y +CONFIG_PROC_EVENTS=y +CONFIG_PROC_FS=y +CONFIG_PROC_KCORE=y +CONFIG_PROC_PAGE_MONITOR=y +CONFIG_PROC_PID_ARCH_STATUS=y +CONFIG_PROC_PID_CPUSET=y +CONFIG_PROC_SYSCTL=y +CONFIG_PROC_THERMAL_MMIO_RAPL=y +CONFIG_PROC_VMCORE=y +CONFIG_PROC_VMCORE_DEVICE_DUMP=y +# CONFIG_PROFILE_ANNOTATED_BRANCHES is not set +CONFIG_PROFILING=y +CONFIG_PROTECTED_VIRTUALIZATION_GUEST=y +# CONFIG_PROVE_LOCKING is not set +# CONFIG_PROVIDE_OHCI1394_DMA_INIT is not set +CONFIG_PSAMPLE=m +CONFIG_PSERIES_CPUIDLE=y +CONFIG_PSERIES_ENERGY=m +CONFIG_PSI=y +# CONFIG_PSTORE_842_COMPRESS is not set +CONFIG_PSTORE_BLK=m +CONFIG_PSTORE_BLK_BLKDEV="" +CONFIG_PSTORE_BLK_CONSOLE_SIZE=64 +CONFIG_PSTORE_BLK_KMSG_SIZE=64 +CONFIG_PSTORE_BLK_MAX_REASON=2 +CONFIG_PSTORE_COMPRESS=y +CONFIG_PSTORE_COMPRESS_DEFAULT="deflate" +CONFIG_PSTORE_DEFLATE_COMPRESS=y +CONFIG_PSTORE_DEFLATE_COMPRESS_DEFAULT=y +# CONFIG_PSTORE_FTRACE is not set +# CONFIG_PSTORE_LZ4HC_COMPRESS is not set +# CONFIG_PSTORE_LZ4_COMPRESS is not set +# CONFIG_PSTORE_LZO_COMPRESS is not set +# CONFIG_PSTORE_PMSG is not set +CONFIG_PSTORE_ZONE=m +# CONFIG_PSTORE_ZSTD_COMPRESS is not set +CONFIG_PTDUMP_CORE=y +# CONFIG_PTDUMP_DEBUGFS is not set +CONFIG_PTP_1588_CLOCK_DTE=m +CONFIG_PTP_1588_CLOCK_IDTCM=m +CONFIG_PTP_1588_CLOCK_INES=m +CONFIG_PTP_1588_CLOCK_KVM=m +CONFIG_PTP_1588_CLOCK_QORIQ=m +CONFIG_PTP_1588_CLOCK_VMW=m +CONFIG_PUNIT_ATOM_DEBUG=m +CONFIG_PVH=y +CONFIG_PVPANIC=m +CONFIG_PWM_ATMEL_HLCDC_PWM=m +CONFIG_PWM_BCM2835=m +CONFIG_PWM_BCM_IPROC=m +CONFIG_PWM_BERLIN=m +CONFIG_PWM_BRCMSTB=m +CONFIG_PWM_CRC=y +CONFIG_PWM_CROS_EC=m +# CONFIG_PWM_DEBUG is not set +CONFIG_PWM_FSL_FTM=m +CONFIG_PWM_HIBVT=m +CONFIG_PWM_IMX1=m +CONFIG_PWM_IMX27=m +CONFIG_PWM_IMX_TPM=m +CONFIG_PWM_IQS620A=m +CONFIG_PWM_LP3943=m +CONFIG_PWM_LPSS=y +CONFIG_PWM_LPSS_PCI=y +CONFIG_PWM_LPSS_PLATFORM=y +CONFIG_PWM_MEDIATEK=m +CONFIG_PWM_MESON=m +CONFIG_PWM_MTK_DISP=m +CONFIG_PWM_OMAP_DMTIMER=m +CONFIG_PWM_PCA9685=m +CONFIG_PWM_RCAR=m +CONFIG_PWM_RENESAS_TPU=m +CONFIG_PWM_ROCKCHIP=m +CONFIG_PWM_SAMSUNG=m +CONFIG_PWM_SPRD=m +CONFIG_PWM_STMPE=y +CONFIG_PWM_SUN4I=m +CONFIG_PWM_SYSFS=y +CONFIG_PWM_TEGRA=m +CONFIG_PWM_TWL=m +CONFIG_PWM_TWL_LED=m +CONFIG_PWRSEQ_EMMC=m +CONFIG_PWRSEQ_SD8787=m +CONFIG_PWRSEQ_SIMPLE=m +CONFIG_PXA168_ETH=m +CONFIG_QCA7000=m +CONFIG_QCA7000_SPI=m +CONFIG_QCA7000_UART=m +CONFIG_QCOM_A53PLL=m +CONFIG_QCOM_AOSS_QMP=m +CONFIG_QCOM_APCS_IPC=m +CONFIG_QCOM_APR=m +CONFIG_QCOM_BAM_DMA=m +CONFIG_QCOM_CLK_APCS_MSM8916=m +CONFIG_QCOM_CLK_RPM=m +CONFIG_QCOM_CLK_RPMH=m +CONFIG_QCOM_CLK_SMD_RPM=m +CONFIG_QCOM_COINCELL=m +CONFIG_QCOM_COMMAND_DB=y +CONFIG_QCOM_CPR=m +CONFIG_QCOM_EBI2=y +CONFIG_QCOM_EMAC=m +CONFIG_QCOM_FALKOR_ERRATUM_1003=y +CONFIG_QCOM_FALKOR_ERRATUM_1009=y +CONFIG_QCOM_FALKOR_ERRATUM_E1041=y +CONFIG_QCOM_FASTRPC=m +CONFIG_QCOM_GDSC=y +CONFIG_QCOM_GENI_SE=m +CONFIG_QCOM_GSBI=m +CONFIG_QCOM_HFPLL=m +CONFIG_QCOM_HIDMA=m +CONFIG_QCOM_HIDMA_MGMT=m +CONFIG_QCOM_IOMMU=y +CONFIG_QCOM_IPA=m +CONFIG_QCOM_IPCC=y +CONFIG_QCOM_IRQ_COMBINER=y +CONFIG_QCOM_L2_PMU=y +CONFIG_QCOM_L3_PMU=y +CONFIG_QCOM_LLCC=m +CONFIG_QCOM_MDT_LOADER=m +CONFIG_QCOM_OCMEM=m +CONFIG_QCOM_PDC=y +CONFIG_QCOM_PDR_HELPERS=m +CONFIG_QCOM_PM8XXX_XOADC=m +CONFIG_QCOM_Q6V5_ADSP=m +CONFIG_QCOM_Q6V5_COMMON=m +CONFIG_QCOM_Q6V5_IPA_NOTIFY=m +CONFIG_QCOM_Q6V5_MSS=m +CONFIG_QCOM_Q6V5_PAS=m +CONFIG_QCOM_Q6V5_WCSS=m +CONFIG_QCOM_QDF2400_ERRATUM_0065=y +CONFIG_QCOM_QFPROM=m +CONFIG_QCOM_QMI_HELPERS=m +CONFIG_QCOM_RMTFS_MEM=m +CONFIG_QCOM_RPMCC=y +CONFIG_QCOM_RPMH=y +CONFIG_QCOM_RPMHPD=y +CONFIG_QCOM_RPMPD=m +CONFIG_QCOM_RPROC_COMMON=m +CONFIG_QCOM_SCM=y +# CONFIG_QCOM_SCM_DOWNLOAD_MODE_DEFAULT is not set +CONFIG_QCOM_SMD_RPM=m +CONFIG_QCOM_SMEM=m +CONFIG_QCOM_SMEM_STATE=y +CONFIG_QCOM_SMP2P=m +CONFIG_QCOM_SMSM=m +CONFIG_QCOM_SOCINFO=m +CONFIG_QCOM_SPMI_ADC5=m +CONFIG_QCOM_SPMI_IADC=m +CONFIG_QCOM_SPMI_TEMP_ALARM=m +CONFIG_QCOM_SPMI_VADC=m +CONFIG_QCOM_SYSMON=m +CONFIG_QCOM_TSENS=m +CONFIG_QCOM_VADC_COMMON=m +CONFIG_QCOM_WCNSS_CTRL=m +# CONFIG_QCOM_WCNSS_PIL is not set +CONFIG_QCOM_WDT=m +CONFIG_QCS_GCC_404=m +CONFIG_QCS_Q6SSTOP_404=m +CONFIG_QCS_TURING_404=m +CONFIG_QDIO=m +CONFIG_QED=m +CONFIG_QEDE=m +CONFIG_QEDF=m +CONFIG_QEDI=m +CONFIG_QED_FCOE=y +CONFIG_QED_ISCSI=y +CONFIG_QED_LL2=y +CONFIG_QED_OOO=y +CONFIG_QED_RDMA=y +CONFIG_QED_SRIOV=y +CONFIG_QETH=m +CONFIG_QETH_L2=m +CONFIG_QETH_L3=m +CONFIG_QETH_OSN=y +CONFIG_QETH_OSX=y +CONFIG_QE_GPIO=y +CONFIG_QE_TDM=y +CONFIG_QE_USB=y +CONFIG_QFMT_V1=m +CONFIG_QFMT_V2=m +CONFIG_QLA3XXX=m +CONFIG_QLCNIC=m +CONFIG_QLCNIC_DCB=y +CONFIG_QLCNIC_HWMON=y +CONFIG_QLCNIC_SRIOV=y +CONFIG_QLGE=m +# CONFIG_QNX6FS_DEBUG is not set +CONFIG_QORIQ_CPUFREQ=m +CONFIG_QORIQ_THERMAL=m +CONFIG_QRTR_MHI=m +CONFIG_QRTR_SMD=m +CONFIG_QRTR_TUN=m +CONFIG_QSEMI_PHY=m +CONFIG_QTNFMAC=m +CONFIG_QTNFMAC_PCIE=m +CONFIG_QUEUED_RWLOCKS=y +CONFIG_QUEUED_SPINLOCKS=y +CONFIG_QUICC_ENGINE=y +CONFIG_QUOTA=y +CONFIG_QUOTACTL=y +CONFIG_QUOTACTL_COMPAT=y +# CONFIG_QUOTA_DEBUG is not set +CONFIG_QUOTA_NETLINK_INTERFACE=y +CONFIG_QUOTA_TREE=m +CONFIG_R6040=m +CONFIG_R8169=m +CONFIG_R8188EU=m +CONFIG_R8712U=m +CONFIG_RADIO_ADAPTERS=y +CONFIG_RADIO_MAXIRADIO=m +CONFIG_RADIO_SAA7706H=m +CONFIG_RADIO_SHARK=m +CONFIG_RADIO_SHARK2=m +CONFIG_RADIO_SI470X=m +CONFIG_RADIO_SI4713=m +CONFIG_RADIO_SI476X=m +CONFIG_RADIO_TEA575X=m +CONFIG_RADIO_TEA5764=m +CONFIG_RADIO_TEF6862=m +CONFIG_RADIO_WL1273=m +CONFIG_RADIO_WL128X=m +CONFIG_RAID6_PQ=m +CONFIG_RAID6_PQ_BENCHMARK=y +CONFIG_RAID_ATTRS=m +# CONFIG_RANDOM32_SELFTEST is not set +CONFIG_RANDOMIZE_BASE=y +CONFIG_RANDOMIZE_MEMORY=y +CONFIG_RANDOMIZE_MEMORY_PHYSICAL_PADDING=0xa +CONFIG_RANDOMIZE_MODULE_REGION_FULL=y +CONFIG_RANDOM_TRUST_BOOTLOADER=y +CONFIG_RANDOM_TRUST_CPU=y +CONFIG_RAPIDIO_CHMAN=m +CONFIG_RAPIDIO_CPS_GEN2=m +CONFIG_RAPIDIO_CPS_XX=m +# CONFIG_RAPIDIO_DEBUG is not set +CONFIG_RAPIDIO_DISC_TIMEOUT=30 +CONFIG_RAPIDIO_DMA_ENGINE=y +# CONFIG_RAPIDIO_ENABLE_RX_TX_PORTS is not set +CONFIG_RAPIDIO_ENUM_BASIC=m +CONFIG_RAPIDIO_MPORT_CDEV=m +CONFIG_RAPIDIO_RXS_GEN3=m +CONFIG_RAPIDIO_TSI568=m +CONFIG_RAPIDIO_TSI57X=m +CONFIG_RAPIDIO_TSI721=m +CONFIG_RAS=y +CONFIG_RASPBERRYPI_FIRMWARE=y +CONFIG_RASPBERRYPI_POWER=y +CONFIG_RAS_CEC=y +# CONFIG_RAS_CEC_DEBUG is not set +CONFIG_RATIONAL=y +CONFIG_RAVB=m +CONFIG_RAVE_SP_EEPROM=m +CONFIG_RAVE_SP_WATCHDOG=m +# CONFIG_RBTREE_TEST is not set +CONFIG_RCAR_DMAC=m +CONFIG_RCAR_GEN3_THERMAL=m +CONFIG_RCAR_GYRO_ADC=m +CONFIG_RCAR_THERMAL=m +# CONFIG_RCU_EQS_DEBUG is not set +# CONFIG_RCU_EXPERT is not set +CONFIG_RCU_NEED_SEGCBLIST=y +CONFIG_RCU_PERF_TEST=m +CONFIG_RCU_STALL_COMMON=y +# CONFIG_RCU_TORTURE_TEST is not set +# CONFIG_RCU_TRACE is not set +CONFIG_RC_ATI_REMOTE=m +CONFIG_RC_DECODERS=y +CONFIG_RC_DEVICES=y +CONFIG_RC_LOOPBACK=m +CONFIG_RC_MAP=m +CONFIG_RC_XBOX_DVD=m +CONFIG_RDA_INTC=y +CONFIG_RDA_TIMER=y +CONFIG_RDMA_RXE=m +CONFIG_RDMA_SIW=m +CONFIG_RDS=m +# CONFIG_RDS_DEBUG is not set +CONFIG_RDS_RDMA=m +CONFIG_RDS_TCP=m +CONFIG_RD_BZIP2=y +CONFIG_RD_GZIP=y +CONFIG_RD_LZ4=y +CONFIG_RD_LZMA=y +CONFIG_RD_LZO=y +CONFIG_RD_XZ=y +# CONFIG_READABLE_ASM is not set +# CONFIG_READ_ONLY_THP_FOR_FS is not set +CONFIG_REALTEK_AUTOPM=y +CONFIG_REALTEK_PHY=m +CONFIG_REBOOT_MODE=m +CONFIG_REED_SOLOMON_DEC16=y +CONFIG_REED_SOLOMON_DEC8=y +CONFIG_REED_SOLOMON_ENC8=y +# CONFIG_REED_SOLOMON_TEST is not set +CONFIG_REGMAP=y +CONFIG_REGMAP_AC97=m +CONFIG_REGMAP_I2C=y +CONFIG_REGMAP_I3C=m +CONFIG_REGMAP_IRQ=y +CONFIG_REGMAP_MMIO=y +CONFIG_REGMAP_SCCB=m +CONFIG_REGMAP_SLIMBUS=m +CONFIG_REGMAP_SOUNDWIRE=m +CONFIG_REGMAP_SPI=y +CONFIG_REGMAP_SPMI=m +CONFIG_REGMAP_W1=m +CONFIG_REGULATOR_88PG86X=m +CONFIG_REGULATOR_88PM800=m +CONFIG_REGULATOR_88PM8607=m +CONFIG_REGULATOR_AAT2870=m +CONFIG_REGULATOR_AB3100=m +CONFIG_REGULATOR_ACT8865=m +CONFIG_REGULATOR_ACT8945A=m +CONFIG_REGULATOR_AD5398=m +CONFIG_REGULATOR_ANATOP=m +CONFIG_REGULATOR_ARIZONA_LDO1=m +CONFIG_REGULATOR_ARIZONA_MICSUPP=m +CONFIG_REGULATOR_AS3711=m +CONFIG_REGULATOR_AS3722=m +CONFIG_REGULATOR_AXP20X=m +CONFIG_REGULATOR_BCM590XX=m +CONFIG_REGULATOR_BD70528=m +CONFIG_REGULATOR_BD71828=m +CONFIG_REGULATOR_BD718XX=m +CONFIG_REGULATOR_BD9571MWV=m +CONFIG_REGULATOR_CPCAP=m +CONFIG_REGULATOR_DA903X=m +CONFIG_REGULATOR_DA9052=m +CONFIG_REGULATOR_DA9055=m +CONFIG_REGULATOR_DA9062=m +CONFIG_REGULATOR_DA9063=m +CONFIG_REGULATOR_DA9210=m +CONFIG_REGULATOR_DA9211=m +# CONFIG_REGULATOR_DEBUG is not set +CONFIG_REGULATOR_FAN53555=m +CONFIG_REGULATOR_GPIO=m +CONFIG_REGULATOR_HI6421=m +CONFIG_REGULATOR_HI6421V530=m +CONFIG_REGULATOR_HI655X=m +CONFIG_REGULATOR_ISL6271A=m +CONFIG_REGULATOR_ISL9305=m +CONFIG_REGULATOR_LM363X=m +CONFIG_REGULATOR_LOCHNAGAR=m +CONFIG_REGULATOR_LP3971=m +CONFIG_REGULATOR_LP3972=m +CONFIG_REGULATOR_LP872X=m +CONFIG_REGULATOR_LP873X=m +CONFIG_REGULATOR_LP8755=m +CONFIG_REGULATOR_LP87565=m +CONFIG_REGULATOR_LP8788=m +CONFIG_REGULATOR_LTC3589=m +CONFIG_REGULATOR_LTC3676=m +CONFIG_REGULATOR_MAX14577=m +CONFIG_REGULATOR_MAX1586=m +CONFIG_REGULATOR_MAX77620=m +CONFIG_REGULATOR_MAX77650=m +CONFIG_REGULATOR_MAX77686=m +CONFIG_REGULATOR_MAX77693=m +CONFIG_REGULATOR_MAX77802=m +CONFIG_REGULATOR_MAX77826=m +CONFIG_REGULATOR_MAX8649=m +CONFIG_REGULATOR_MAX8660=m +CONFIG_REGULATOR_MAX8907=m +CONFIG_REGULATOR_MAX8925=m +CONFIG_REGULATOR_MAX8952=m +CONFIG_REGULATOR_MAX8973=m +CONFIG_REGULATOR_MAX8997=m +CONFIG_REGULATOR_MAX8998=m +CONFIG_REGULATOR_MC13783=m +CONFIG_REGULATOR_MC13892=m +CONFIG_REGULATOR_MC13XXX_CORE=m +CONFIG_REGULATOR_MCP16502=m +CONFIG_REGULATOR_MP5416=m +CONFIG_REGULATOR_MP8859=m +CONFIG_REGULATOR_MP886X=m +CONFIG_REGULATOR_MPQ7920=m +CONFIG_REGULATOR_MT6311=m +CONFIG_REGULATOR_MT6323=m +CONFIG_REGULATOR_MT6358=m +CONFIG_REGULATOR_MT6380=m +CONFIG_REGULATOR_MT6397=m +CONFIG_REGULATOR_PALMAS=m +CONFIG_REGULATOR_PBIAS=m +CONFIG_REGULATOR_PCAP=m +CONFIG_REGULATOR_PCF50633=m +CONFIG_REGULATOR_PFUZE100=m +CONFIG_REGULATOR_PV88060=m +CONFIG_REGULATOR_PV88080=m +CONFIG_REGULATOR_PV88090=m +CONFIG_REGULATOR_PWM=m +CONFIG_REGULATOR_QCOM_RPM=m +CONFIG_REGULATOR_QCOM_RPMH=m +CONFIG_REGULATOR_QCOM_SMD_RPM=m +CONFIG_REGULATOR_QCOM_SPMI=m +CONFIG_REGULATOR_RC5T583=m +CONFIG_REGULATOR_RK808=m +CONFIG_REGULATOR_RN5T618=m +CONFIG_REGULATOR_ROHM=m +CONFIG_REGULATOR_RT5033=m +CONFIG_REGULATOR_S2MPA01=m +CONFIG_REGULATOR_S2MPS11=m +CONFIG_REGULATOR_S5M8767=m +CONFIG_REGULATOR_SC2731=m +CONFIG_REGULATOR_SKY81452=m +CONFIG_REGULATOR_SLG51000=m +CONFIG_REGULATOR_STPMIC1=m +CONFIG_REGULATOR_SY8106A=m +CONFIG_REGULATOR_SY8824X=m +CONFIG_REGULATOR_TI_ABB=y +CONFIG_REGULATOR_TPS51632=m +CONFIG_REGULATOR_TPS6105X=m +CONFIG_REGULATOR_TPS62360=m +CONFIG_REGULATOR_TPS65023=m +CONFIG_REGULATOR_TPS6507X=m +CONFIG_REGULATOR_TPS65086=m +CONFIG_REGULATOR_TPS65090=m +CONFIG_REGULATOR_TPS65132=m +CONFIG_REGULATOR_TPS65218=m +CONFIG_REGULATOR_TPS6524X=m +CONFIG_REGULATOR_TPS6586X=m +CONFIG_REGULATOR_TPS65910=m +CONFIG_REGULATOR_TPS65912=m +CONFIG_REGULATOR_TPS80031=m +CONFIG_REGULATOR_UNIPHIER=m +CONFIG_REGULATOR_USERSPACE_CONSUMER=m +CONFIG_REGULATOR_VCTRL=m +CONFIG_REGULATOR_VEXPRESS=m +CONFIG_REGULATOR_VIRTUAL_CONSUMER=m +CONFIG_REGULATOR_VQMMC_IPQ4019=m +CONFIG_REGULATOR_WM831X=m +CONFIG_REGULATOR_WM8350=m +CONFIG_REGULATOR_WM8400=m +CONFIG_REGULATOR_WM8994=m +# CONFIG_REISERFS_CHECK is not set +CONFIG_REISERFS_FS_POSIX_ACL=y +CONFIG_REISERFS_FS_SECURITY=y +CONFIG_REISERFS_FS_XATTR=y +# CONFIG_REISERFS_PROC_INFO is not set +CONFIG_RELAY=y +CONFIG_RELOCATABLE=y +# CONFIG_RELOCATABLE_TEST is not set +CONFIG_RENESAS_DMA=y +CONFIG_RENESAS_INTC_IRQPIN=y +CONFIG_RENESAS_IRQC=y +CONFIG_RENESAS_OSTM=y +CONFIG_RENESAS_PHY=m +CONFIG_RENESAS_RZA1_IRQC=y +CONFIG_RENESAS_RZAWDT=m +CONFIG_RENESAS_USB_DMAC=m +CONFIG_RENESAS_WDT=m +CONFIG_RESET_ATTACK_MITIGATION=y +CONFIG_RESET_BERLIN=y +CONFIG_RESET_BRCMSTB=m +CONFIG_RESET_BRCMSTB_RESCAL=y +CONFIG_RESET_HISI=y +CONFIG_RESET_IMX7=y +CONFIG_RESET_INTEL_GW=y +CONFIG_RESET_MESON=y +CONFIG_RESET_MESON_AUDIO_ARB=m +CONFIG_RESET_NPCM=y +CONFIG_RESET_QCOM_AOSS=y +CONFIG_RESET_QCOM_PDC=m +CONFIG_RESET_SCMI=m +CONFIG_RESET_SIMPLE=y +CONFIG_RESET_SUNXI=y +CONFIG_RESET_TEGRA_BPMP=y +CONFIG_RESET_TI_SCI=m +CONFIG_RESET_TI_SYSCON=m +CONFIG_RESET_UNIPHIER=m +CONFIG_RESET_UNIPHIER_GLUE=m +CONFIG_RETPOLINE=y +CONFIG_RETU_WATCHDOG=m +CONFIG_RFD77402=m +CONFIG_RFD_FTL=m +CONFIG_RFKILL_GPIO=m +CONFIG_RFKILL_INPUT=y +CONFIG_RFKILL_LEDS=y +CONFIG_RFS_ACCEL=y +CONFIG_RING_BUFFER=y +CONFIG_RING_BUFFER_ALLOW_SWAP=y +# CONFIG_RING_BUFFER_BENCHMARK is not set +# CONFIG_RING_BUFFER_STARTUP_TEST is not set +CONFIG_RIONET=m +CONFIG_RIONET_RX_SIZE=128 +CONFIG_RIONET_TX_SIZE=128 +CONFIG_RMI4_2D_SENSOR=y +CONFIG_RMI4_F03=y +CONFIG_RMI4_F03_SERIO=m +CONFIG_RMI4_F11=y +CONFIG_RMI4_F12=y +CONFIG_RMI4_F30=y +CONFIG_RMI4_F34=y +CONFIG_RMI4_F54=y +CONFIG_RMI4_F55=y +CONFIG_RMI4_I2C=m +CONFIG_RMI4_SMB=m +CONFIG_RMI4_SPI=m +CONFIG_RMNET=m +CONFIG_RN5T618_ADC=m +CONFIG_RN5T618_WATCHDOG=m +CONFIG_ROCKCHIP_ANALOGIX_DP=y +CONFIG_ROCKCHIP_CDN_DP=y +CONFIG_ROCKCHIP_DW_HDMI=y +CONFIG_ROCKCHIP_DW_MIPI_DSI=y +CONFIG_ROCKCHIP_EFUSE=m +CONFIG_ROCKCHIP_GRF=y +CONFIG_ROCKCHIP_INNO_HDMI=y +CONFIG_ROCKCHIP_IODOMAIN=m +CONFIG_ROCKCHIP_IOMMU=y +CONFIG_ROCKCHIP_LVDS=y +CONFIG_ROCKCHIP_MBOX=y +CONFIG_ROCKCHIP_OTP=m +CONFIG_ROCKCHIP_PHY=m +CONFIG_ROCKCHIP_PM_DOMAINS=y +CONFIG_ROCKCHIP_RGB=y +CONFIG_ROCKCHIP_RK3066_HDMI=y +CONFIG_ROCKCHIP_SARADC=m +CONFIG_ROCKCHIP_THERMAL=m +CONFIG_ROCKCHIP_TIMER=y +CONFIG_ROCKER=m +CONFIG_ROCKETPORT=m +CONFIG_RODATA_FULL_DEFAULT_ENABLED=y +CONFIG_ROMFS_BACKED_BY_BLOCK=y +# CONFIG_ROMFS_BACKED_BY_BOTH is not set +# CONFIG_ROMFS_BACKED_BY_MTD is not set +CONFIG_ROMFS_ON_BLOCK=y +CONFIG_ROSE=m +CONFIG_RPCSEC_GSS_KRB5=m +CONFIG_RPMSG=m +CONFIG_RPMSG_CHAR=m +CONFIG_RPMSG_MTK_SCP=m +CONFIG_RPMSG_QCOM_GLINK=m +CONFIG_RPMSG_QCOM_GLINK_RPM=m +CONFIG_RPMSG_QCOM_GLINK_SMEM=m +CONFIG_RPMSG_QCOM_SMD=m +CONFIG_RPR0521=m +CONFIG_RPS=y +CONFIG_RSEQ=y +CONFIG_RSI_91X=m +CONFIG_RSI_COEX=y +# CONFIG_RSI_DEBUGFS is not set +CONFIG_RSI_SDIO=m +CONFIG_RSI_USB=m +CONFIG_RST_RCAR=y +CONFIG_RT2400PCI=m +CONFIG_RT2500PCI=m +CONFIG_RT2500USB=m +CONFIG_RT2800PCI=m +CONFIG_RT2800PCI_RT3290=y +CONFIG_RT2800PCI_RT33XX=y +CONFIG_RT2800PCI_RT35XX=y +CONFIG_RT2800PCI_RT53XX=y +CONFIG_RT2800USB=m +CONFIG_RT2800USB_RT33XX=y +CONFIG_RT2800USB_RT3573=y +CONFIG_RT2800USB_RT35XX=y +CONFIG_RT2800USB_RT53XX=y +CONFIG_RT2800USB_RT55XX=y +CONFIG_RT2800USB_UNKNOWN=y +CONFIG_RT2800_LIB=m +CONFIG_RT2800_LIB_MMIO=m +CONFIG_RT2X00=m +# CONFIG_RT2X00_DEBUG is not set +CONFIG_RT2X00_LIB=m +CONFIG_RT2X00_LIB_CRYPTO=y +# CONFIG_RT2X00_LIB_DEBUGFS is not set +CONFIG_RT2X00_LIB_FIRMWARE=y +CONFIG_RT2X00_LIB_LEDS=y +CONFIG_RT2X00_LIB_MMIO=m +CONFIG_RT2X00_LIB_PCI=m +CONFIG_RT2X00_LIB_USB=m +CONFIG_RT61PCI=m +CONFIG_RT73USB=m +CONFIG_RTAS_ERROR_LOGGING=y +CONFIG_RTAS_FLASH=m +CONFIG_RTAS_PROC=y +CONFIG_RTC_CLASS=y +# CONFIG_RTC_DEBUG is not set +CONFIG_RTC_DRV_88PM80X=m +CONFIG_RTC_DRV_88PM860X=m +CONFIG_RTC_DRV_AB3100=m +CONFIG_RTC_DRV_ABB5ZES3=m +CONFIG_RTC_DRV_ABEOZ9=m +CONFIG_RTC_DRV_ABX80X=m +CONFIG_RTC_DRV_ARMADA38X=m +CONFIG_RTC_DRV_AS3722=m +CONFIG_RTC_DRV_ASPEED=m +CONFIG_RTC_DRV_BD70528=m +CONFIG_RTC_DRV_BQ32K=m +CONFIG_RTC_DRV_BQ4802=m +CONFIG_RTC_DRV_BRCMSTB=m +CONFIG_RTC_DRV_CADENCE=m +CONFIG_RTC_DRV_CPCAP=m +CONFIG_RTC_DRV_CROS_EC=m +CONFIG_RTC_DRV_DA9052=m +CONFIG_RTC_DRV_DA9055=m +CONFIG_RTC_DRV_DA9063=m +CONFIG_RTC_DRV_DS1286=m +CONFIG_RTC_DRV_DS1302=m +CONFIG_RTC_DRV_DS1305=m +CONFIG_RTC_DRV_DS1307=m +CONFIG_RTC_DRV_DS1307_CENTURY=y +CONFIG_RTC_DRV_DS1343=m +CONFIG_RTC_DRV_DS1347=m +CONFIG_RTC_DRV_DS1374=m +CONFIG_RTC_DRV_DS1374_WDT=y +CONFIG_RTC_DRV_DS1390=m +CONFIG_RTC_DRV_DS1511=m +CONFIG_RTC_DRV_DS1553=m +CONFIG_RTC_DRV_DS1672=m +CONFIG_RTC_DRV_DS1685=y +CONFIG_RTC_DRV_DS1685_FAMILY=m +# CONFIG_RTC_DRV_DS1689 is not set +# CONFIG_RTC_DRV_DS17285 is not set +CONFIG_RTC_DRV_DS1742=m +# CONFIG_RTC_DRV_DS17485 is not set +# CONFIG_RTC_DRV_DS17885 is not set +CONFIG_RTC_DRV_DS2404=m +CONFIG_RTC_DRV_DS3232=m +CONFIG_RTC_DRV_DS3232_HWMON=y +CONFIG_RTC_DRV_EFI=y +CONFIG_RTC_DRV_EM3027=m +CONFIG_RTC_DRV_FM3130=m +CONFIG_RTC_DRV_FSL_FTM_ALARM=m +CONFIG_RTC_DRV_FTRTC010=m +CONFIG_RTC_DRV_GENERIC=y +CONFIG_RTC_DRV_HID_SENSOR_TIME=m +CONFIG_RTC_DRV_HYM8563=m +CONFIG_RTC_DRV_IMXDI=m +CONFIG_RTC_DRV_IMX_SC=m +CONFIG_RTC_DRV_ISL12022=m +CONFIG_RTC_DRV_ISL12026=m +CONFIG_RTC_DRV_ISL1208=m +CONFIG_RTC_DRV_LP8788=m +CONFIG_RTC_DRV_M41T80=m +CONFIG_RTC_DRV_M41T80_WDT=y +CONFIG_RTC_DRV_M41T93=m +CONFIG_RTC_DRV_M41T94=m +CONFIG_RTC_DRV_M48T35=m +CONFIG_RTC_DRV_M48T59=m +CONFIG_RTC_DRV_M48T86=m +CONFIG_RTC_DRV_MAX6900=m +CONFIG_RTC_DRV_MAX6902=m +CONFIG_RTC_DRV_MAX6916=m +CONFIG_RTC_DRV_MAX77686=m +CONFIG_RTC_DRV_MAX8907=m +CONFIG_RTC_DRV_MAX8925=m +CONFIG_RTC_DRV_MAX8997=m +CONFIG_RTC_DRV_MAX8998=m +CONFIG_RTC_DRV_MC13XXX=m +CONFIG_RTC_DRV_MCP795=m +CONFIG_RTC_DRV_MESON=m +CONFIG_RTC_DRV_MESON_VRTC=m +CONFIG_RTC_DRV_MSM6242=m +CONFIG_RTC_DRV_MT2712=m +CONFIG_RTC_DRV_MT6397=m +CONFIG_RTC_DRV_MT7622=m +CONFIG_RTC_DRV_MV=y +CONFIG_RTC_DRV_MXC=m +CONFIG_RTC_DRV_MXC_V2=m +CONFIG_RTC_DRV_OMAP=y +CONFIG_RTC_DRV_OPAL=y +CONFIG_RTC_DRV_PALMAS=m +CONFIG_RTC_DRV_PCAP=m +CONFIG_RTC_DRV_PCF2123=m +CONFIG_RTC_DRV_PCF2127=m +CONFIG_RTC_DRV_PCF50633=m +CONFIG_RTC_DRV_PCF85063=m +CONFIG_RTC_DRV_PCF85363=m +CONFIG_RTC_DRV_PCF8563=m +CONFIG_RTC_DRV_PCF8583=m +CONFIG_RTC_DRV_PL030=m +CONFIG_RTC_DRV_PM8XXX=m +CONFIG_RTC_DRV_R7301=m +CONFIG_RTC_DRV_R9701=m +CONFIG_RTC_DRV_RC5T583=m +CONFIG_RTC_DRV_RC5T619=m +CONFIG_RTC_DRV_RK808=m +CONFIG_RTC_DRV_RP5C01=m +CONFIG_RTC_DRV_RS5C348=m +CONFIG_RTC_DRV_RS5C372=m +CONFIG_RTC_DRV_RTD119X=y +CONFIG_RTC_DRV_RV3028=m +CONFIG_RTC_DRV_RV3029C2=m +CONFIG_RTC_DRV_RV3029_HWMON=y +CONFIG_RTC_DRV_RV8803=m +CONFIG_RTC_DRV_RX4581=m +CONFIG_RTC_DRV_RX6110=m +CONFIG_RTC_DRV_RX8010=m +CONFIG_RTC_DRV_RX8025=m +CONFIG_RTC_DRV_RX8581=m +CONFIG_RTC_DRV_S35390A=m +CONFIG_RTC_DRV_S3C=y +CONFIG_RTC_DRV_S5M=m +CONFIG_RTC_DRV_SC27XX=m +CONFIG_RTC_DRV_SD3078=m +CONFIG_RTC_DRV_SH=m +CONFIG_RTC_DRV_SNVS=m +CONFIG_RTC_DRV_STK17TA8=m +CONFIG_RTC_DRV_SUN6I=y +CONFIG_RTC_DRV_TEGRA=m +# CONFIG_RTC_DRV_TEST is not set +CONFIG_RTC_DRV_TPS6586X=m +CONFIG_RTC_DRV_TPS65910=m +CONFIG_RTC_DRV_TPS80031=m +CONFIG_RTC_DRV_V3020=m +CONFIG_RTC_DRV_WILCO_EC=m +CONFIG_RTC_DRV_WM831X=m +CONFIG_RTC_DRV_WM8350=m +CONFIG_RTC_DRV_X1205=m +CONFIG_RTC_DRV_XGENE=y +CONFIG_RTC_DRV_ZYNQMP=m +CONFIG_RTC_HCTOSYS=y +CONFIG_RTC_HCTOSYS_DEVICE="rtc0" +CONFIG_RTC_I2C_AND_SPI=y +CONFIG_RTC_INTF_DEV=y +# CONFIG_RTC_INTF_DEV_UIE_EMUL is not set +CONFIG_RTC_INTF_PROC=y +CONFIG_RTC_INTF_SYSFS=y +CONFIG_RTC_LIB=y +CONFIG_RTC_MC146818_LIB=y +CONFIG_RTC_NVMEM=y +CONFIG_RTC_SYSTOHC=y +CONFIG_RTC_SYSTOHC_DEVICE="rtc0" +CONFIG_RTD119X_WATCHDOG=y +CONFIG_RTL8180=m +CONFIG_RTL8187=m +CONFIG_RTL8187_LEDS=y +CONFIG_RTL8188EE=m +CONFIG_RTL8192CE=m +CONFIG_RTL8192CU=m +CONFIG_RTL8192C_COMMON=m +CONFIG_RTL8192DE=m +CONFIG_RTL8192E=m +CONFIG_RTL8192EE=m +CONFIG_RTL8192SE=m +CONFIG_RTL8192U=m +CONFIG_RTL8723AE=m +CONFIG_RTL8723BE=m +CONFIG_RTL8723BS=m +CONFIG_RTL8723_COMMON=m +CONFIG_RTL8821AE=m +CONFIG_RTL8XXXU=m +CONFIG_RTL8XXXU_UNTESTED=y +CONFIG_RTLBTCOEXIST=m +CONFIG_RTLLIB=m +CONFIG_RTLLIB_CRYPTO_CCMP=m +CONFIG_RTLLIB_CRYPTO_TKIP=m +CONFIG_RTLLIB_CRYPTO_WEP=m +CONFIG_RTLWIFI=m +# CONFIG_RTLWIFI_DEBUG is not set +CONFIG_RTLWIFI_PCI=m +CONFIG_RTLWIFI_USB=m +CONFIG_RTL_CARDS=m +CONFIG_RTS5208=m +CONFIG_RTW88=m +CONFIG_RTW88_8723D=m +CONFIG_RTW88_8723DE=m +CONFIG_RTW88_8822B=m +CONFIG_RTW88_8822BE=m +CONFIG_RTW88_8822C=m +CONFIG_RTW88_8822CE=m +CONFIG_RTW88_CORE=m +CONFIG_RTW88_DEBUG=y +CONFIG_RTW88_DEBUGFS=y +CONFIG_RTW88_PCI=m +# CONFIG_RT_GROUP_SCHED is not set +CONFIG_RT_MUTEXES=y +CONFIG_RUNTIME_TESTING_MENU=y +CONFIG_RWSEM_SPIN_ON_OWNER=y +CONFIG_RXKAD=y +CONFIG_S390=y +CONFIG_S390_AP_IOMMU=y +CONFIG_S390_CCW_IOMMU=y +CONFIG_S390_GUEST=y +CONFIG_S390_HYPFS_FS=y +CONFIG_S390_IOMMU=y +CONFIG_S390_PRNG=m +CONFIG_S390_PTDUMP=y +CONFIG_S390_TAPE=m +CONFIG_S390_TAPE_34XX=m +CONFIG_S390_TAPE_3590=m +# CONFIG_S390_UNWIND_SELFTEST is not set +CONFIG_S390_VMUR=m +CONFIG_S3C2410_WATCHDOG=m +CONFIG_S5P_DEV_MFC=y +CONFIG_SAMPLES=y +# CONFIG_SAMPLE_AUXDISPLAY is not set +# CONFIG_SAMPLE_CONFIGFS is not set +CONFIG_SAMPLE_FTRACE_DIRECT=m +# CONFIG_SAMPLE_HW_BREAKPOINT is not set +# CONFIG_SAMPLE_KDB is not set +# CONFIG_SAMPLE_KFIFO is not set +# CONFIG_SAMPLE_KOBJECT is not set +# CONFIG_SAMPLE_KPROBES is not set +# CONFIG_SAMPLE_LIVEPATCH is not set +# CONFIG_SAMPLE_QMI_CLIENT is not set +# CONFIG_SAMPLE_RPMSG_CLIENT is not set +CONFIG_SAMPLE_TRACE_ARRAY=m +# CONFIG_SAMPLE_TRACE_EVENTS is not set +CONFIG_SAMPLE_TRACE_PRINTK=m +# CONFIG_SAMPLE_VFIO_MDEV_MBOCHS is not set +# CONFIG_SAMPLE_VFIO_MDEV_MDPY is not set +# CONFIG_SAMPLE_VFIO_MDEV_MDPY_FB is not set +# CONFIG_SAMPLE_VFIO_MDEV_MTTY is not set +# CONFIG_SAMPLE_WATCHDOG is not set +CONFIG_SAMSUNG_LAPTOP=m +CONFIG_SAMSUNG_MC=y +CONFIG_SAMSUNG_Q10=m +CONFIG_SATA_ACARD_AHCI=m +CONFIG_SATA_AHCI=m +CONFIG_SATA_AHCI_SEATTLE=m +CONFIG_SATA_DWC=m +# CONFIG_SATA_DWC_DEBUG is not set +CONFIG_SATA_DWC_OLD_DMA=y +CONFIG_SATA_HIGHBANK=y +CONFIG_SATA_HOST=y +CONFIG_SATA_INIC162X=m +CONFIG_SATA_MOBILE_LPM_POLICY=3 +CONFIG_SATA_MV=m +CONFIG_SATA_NV=m +CONFIG_SATA_PMP=y +CONFIG_SATA_PROMISE=m +CONFIG_SATA_QSTOR=m +CONFIG_SATA_RCAR=m +CONFIG_SATA_SIL=m +CONFIG_SATA_SIL24=m +CONFIG_SATA_SIS=m +CONFIG_SATA_SVW=m +CONFIG_SATA_SX4=m +CONFIG_SATA_ULI=m +CONFIG_SATA_VIA=m +CONFIG_SATA_VITESSE=m +CONFIG_SATA_ZPODD=y +CONFIG_SBC_EPX_C3_WATCHDOG=m +CONFIG_SBC_FITPC2_WATCHDOG=m +CONFIG_SBITMAP=y +CONFIG_SBNI=m +# CONFIG_SBNI_MULTILINE is not set +CONFIG_SBP_TARGET=m +CONFIG_SC1200_WDT=m +CONFIG_SC27XX_ADC=m +CONFIG_SC27XX_EFUSE=m +CONFIG_SC92031=m +CONFIG_SCA3000=m +CONFIG_SCANLOG=m +CONFIG_SCHEDSTATS=y +CONFIG_SCHED_AUTOGROUP=y +CONFIG_SCHED_BOOK=y +CONFIG_SCHED_DEBUG=y +CONFIG_SCHED_DRAWER=y +CONFIG_SCHED_HRTICK=y +CONFIG_SCHED_INFO=y +CONFIG_SCHED_MC=y +CONFIG_SCHED_MC_PRIO=y +CONFIG_SCHED_OMIT_FRAME_POINTER=y +CONFIG_SCHED_STACK_END_CHECK=y +# CONFIG_SCHED_THERMAL_PRESSURE is not set +CONFIG_SCHED_TOPOLOGY=y +CONFIG_SCHED_TRACER=y +CONFIG_SCIF=m +CONFIG_SCIF_BUS=m +CONFIG_SCLP_CONSOLE=y +CONFIG_SCLP_OFB=y +CONFIG_SCLP_TTY=y +CONFIG_SCLP_VT220_CONSOLE=y +CONFIG_SCLP_VT220_TTY=y +CONFIG_SCM_BLOCK=m +CONFIG_SCM_BUS=y +CONFIG_SCOM_DEBUGFS=y +CONFIG_SCR24X=m +CONFIG_SCSI=y +CONFIG_SCSI_AHA1740=m +CONFIG_SCSI_BUSLOGIC=m +CONFIG_SCSI_CONSTANTS=y +CONFIG_SCSI_DEBUG=m +CONFIG_SCSI_DH=y +CONFIG_SCSI_DH_ALUA=m +CONFIG_SCSI_DH_EMC=m +CONFIG_SCSI_DH_HP_SW=m +CONFIG_SCSI_DH_RDAC=m +CONFIG_SCSI_DMA=y +CONFIG_SCSI_DPT_I2O=m +CONFIG_SCSI_ENCLOSURE=m +CONFIG_SCSI_FC_ATTRS=m +CONFIG_SCSI_FDOMAIN=m +CONFIG_SCSI_FLASHPOINT=y +CONFIG_SCSI_HISI_SAS=m +CONFIG_SCSI_HISI_SAS_PCI=m +CONFIG_SCSI_IBMVFC=m +CONFIG_SCSI_IBMVFC_TRACE=y +CONFIG_SCSI_IBMVSCSI=m +CONFIG_SCSI_IBMVSCSIS=m +CONFIG_SCSI_IMM=m +CONFIG_SCSI_IPR=m +CONFIG_SCSI_IPR_DUMP=y +CONFIG_SCSI_IPR_TRACE=y +CONFIG_SCSI_ISCI=m +CONFIG_SCSI_ISCSI_ATTRS=m +# CONFIG_SCSI_IZIP_EPP16 is not set +# CONFIG_SCSI_IZIP_SLOW_CTR is not set +CONFIG_SCSI_LOGGING=y +CONFIG_SCSI_LOWLEVEL=y +CONFIG_SCSI_LOWLEVEL_PCMCIA=y +# CONFIG_SCSI_LPFC_DEBUG_FS is not set +CONFIG_SCSI_MOD=y +CONFIG_SCSI_MPT2SAS=m +CONFIG_SCSI_MPT2SAS_MAX_SGE=128 +CONFIG_SCSI_MPT3SAS=m +CONFIG_SCSI_MPT3SAS_MAX_SGE=128 +# CONFIG_SCSI_MVSAS_DEBUG is not set +# CONFIG_SCSI_MVSAS_TASKLET is not set +CONFIG_SCSI_MYRS=m +CONFIG_SCSI_NETLINK=y +CONFIG_SCSI_NSP32=m +CONFIG_SCSI_PPA=m +CONFIG_SCSI_PROC_FS=y +CONFIG_SCSI_SAS_ATA=y +CONFIG_SCSI_SAS_ATTRS=m +CONFIG_SCSI_SAS_HOST_SMP=y +CONFIG_SCSI_SAS_LIBSAS=m +CONFIG_SCSI_SCAN_ASYNC=y +CONFIG_SCSI_SIM710=m +CONFIG_SCSI_SMARTPQI=m +# CONFIG_SCSI_SNIC_DEBUG_FS is not set +CONFIG_SCSI_SPI_ATTRS=m +CONFIG_SCSI_SYM53C8XX_DEFAULT_TAGS=16 +CONFIG_SCSI_SYM53C8XX_DMA_ADDRESSING_MODE=1 +CONFIG_SCSI_SYM53C8XX_MAX_TAGS=64 +CONFIG_SCSI_SYM53C8XX_MMIO=y +CONFIG_SCSI_UFSHCD_PCI=m +CONFIG_SCSI_UFSHCD_PLATFORM=m +CONFIG_SCSI_UFS_BSG=y +CONFIG_SCSI_UFS_CDNS_PLATFORM=m +CONFIG_SCSI_UFS_DWC_TC_PCI=m +CONFIG_SCSI_UFS_DWC_TC_PLATFORM=m +CONFIG_SCSI_UFS_HISI=m +CONFIG_SCSI_UFS_MEDIATEK=m +CONFIG_SCSI_UFS_TI_J721E=m +CONFIG_SCSI_VIRTIO=m +CONFIG_SCTP_COOKIE_HMAC_MD5=y +CONFIG_SCTP_COOKIE_HMAC_SHA1=y +# CONFIG_SCTP_DBG_OBJCNT is not set +# CONFIG_SCTP_DEFAULT_COOKIE_HMAC_MD5 is not set +# CONFIG_SCTP_DEFAULT_COOKIE_HMAC_NONE is not set +CONFIG_SCTP_DEFAULT_COOKIE_HMAC_SHA1=y +CONFIG_SC_DISPCC_7180=m +CONFIG_SC_GCC_7180=m +CONFIG_SC_GPUCC_7180=m +CONFIG_SC_MSS_7180=m +CONFIG_SC_VIDEOCC_7180=m +CONFIG_SDIO_UART=m +# CONFIG_SDMA_VERBOSITY is not set +CONFIG_SDM_CAMCC_845=m +CONFIG_SDM_DISPCC_845=m +CONFIG_SDM_GCC_660=m +CONFIG_SDM_GCC_845=m +CONFIG_SDM_GPUCC_845=m +CONFIG_SDM_LPASSCC_845=m +CONFIG_SDM_VIDEOCC_845=m +CONFIG_SDR_MAX2175=m +CONFIG_SDR_PLATFORM_DRIVERS=y +CONFIG_SD_ADC_MODULATOR=m +CONFIG_SECCOMP=y +CONFIG_SECCOMP_FILTER=y +CONFIG_SECONDARY_TRUSTED_KEYRING=y +CONFIG_SECTION_MISMATCH_WARN_ONLY=y +CONFIG_SECURITY=y +CONFIG_SECURITYFS=y +CONFIG_SECURITY_APPARMOR=y +# CONFIG_SECURITY_APPARMOR_DEBUG is not set +CONFIG_SECURITY_APPARMOR_HASH=y +CONFIG_SECURITY_APPARMOR_HASH_DEFAULT=y +CONFIG_SECURITY_DMESG_RESTRICT=y +CONFIG_SECURITY_INFINIBAND=y +# CONFIG_SECURITY_LOADPIN is not set +CONFIG_SECURITY_LOCKDOWN_LSM=y +CONFIG_SECURITY_LOCKDOWN_LSM_EARLY=y +CONFIG_SECURITY_NETWORK=y +CONFIG_SECURITY_NETWORK_XFRM=y +CONFIG_SECURITY_PATH=y +CONFIG_SECURITY_PERF_EVENTS_RESTRICT=y +CONFIG_SECURITY_SAFESETID=y +CONFIG_SECURITY_SELINUX=y +CONFIG_SECURITY_SELINUX_AVC_STATS=y +CONFIG_SECURITY_SELINUX_CHECKREQPROT_VALUE=1 +CONFIG_SECURITY_SELINUX_DEVELOP=y +# CONFIG_SECURITY_SELINUX_DISABLE is not set +CONFIG_SECURITY_SELINUX_SID2STR_CACHE_SIZE=256 +CONFIG_SECURITY_SELINUX_SIDTAB_HASH_BITS=9 +CONFIG_SECURITY_SMACK=y +CONFIG_SECURITY_SMACK_APPEND_SIGNALS=y +# CONFIG_SECURITY_SMACK_BRINGUP is not set +CONFIG_SECURITY_SMACK_NETFILTER=y +CONFIG_SECURITY_TOMOYO=y +CONFIG_SECURITY_TOMOYO_ACTIVATION_TRIGGER="/sbin/init" +# CONFIG_SECURITY_TOMOYO_INSECURE_BUILTIN_SETTING is not set +CONFIG_SECURITY_TOMOYO_MAX_ACCEPT_ENTRY=2048 +CONFIG_SECURITY_TOMOYO_MAX_AUDIT_LOG=1024 +# CONFIG_SECURITY_TOMOYO_OMIT_USERSPACE_LOADER is not set +CONFIG_SECURITY_TOMOYO_POLICY_LOADER="/sbin/tomoyo-init" +CONFIG_SECURITY_YAMA=y +CONFIG_SELECT_MEMORY_MODEL=y +CONFIG_SENSIRION_SGP30=m +CONFIG_SENSORS_ABITUGURU=m +CONFIG_SENSORS_ABITUGURU3=m +CONFIG_SENSORS_ACPI_POWER=m +CONFIG_SENSORS_AD7314=m +CONFIG_SENSORS_AD7414=m +CONFIG_SENSORS_AD7418=m +CONFIG_SENSORS_ADC128D818=m +CONFIG_SENSORS_ADCXX=m +CONFIG_SENSORS_ADM1021=m +CONFIG_SENSORS_ADM1025=m +CONFIG_SENSORS_ADM1026=m +CONFIG_SENSORS_ADM1029=m +CONFIG_SENSORS_ADM1031=m +CONFIG_SENSORS_ADM1177=m +CONFIG_SENSORS_ADM1275=m +CONFIG_SENSORS_ADM9240=m +CONFIG_SENSORS_ADS7828=m +CONFIG_SENSORS_ADS7871=m +CONFIG_SENSORS_ADT7310=m +CONFIG_SENSORS_ADT7410=m +CONFIG_SENSORS_ADT7411=m +CONFIG_SENSORS_ADT7462=m +CONFIG_SENSORS_ADT7470=m +CONFIG_SENSORS_ADT7475=m +CONFIG_SENSORS_ADT7X10=m +CONFIG_SENSORS_AMC6821=m +CONFIG_SENSORS_AMD_ENERGY=m +CONFIG_SENSORS_APPLESMC=m +CONFIG_SENSORS_ARM_SCMI=m +CONFIG_SENSORS_ARM_SCPI=m +CONFIG_SENSORS_AS370=m +CONFIG_SENSORS_ASB100=m +CONFIG_SENSORS_ASC7621=m +CONFIG_SENSORS_ASPEED=m +CONFIG_SENSORS_ATK0110=m +CONFIG_SENSORS_ATXP1=m +CONFIG_SENSORS_AXI_FAN_CONTROL=m +CONFIG_SENSORS_BEL_PFE=m +CONFIG_SENSORS_CORETEMP=m +CONFIG_SENSORS_DA9052_ADC=m +CONFIG_SENSORS_DA9055=m +CONFIG_SENSORS_DELL_SMM=m +CONFIG_SENSORS_DME1737=m +CONFIG_SENSORS_DRIVETEMP=m +CONFIG_SENSORS_DS1621=m +CONFIG_SENSORS_DS620=m +CONFIG_SENSORS_EMC1403=m +CONFIG_SENSORS_EMC2103=m +CONFIG_SENSORS_EMC6W201=m +CONFIG_SENSORS_F71805F=m +CONFIG_SENSORS_F71882FG=m +CONFIG_SENSORS_F75375S=m +CONFIG_SENSORS_FAM15H_POWER=m +CONFIG_SENSORS_FSCHMD=m +CONFIG_SENSORS_FTSTEUTATES=m +CONFIG_SENSORS_G760A=m +CONFIG_SENSORS_G762=m +CONFIG_SENSORS_GL518SM=m +CONFIG_SENSORS_GL520SM=m +CONFIG_SENSORS_GPIO_FAN=m +CONFIG_SENSORS_GSC=m +CONFIG_SENSORS_HDAPS=m +CONFIG_SENSORS_HIH6130=m +CONFIG_SENSORS_HMC5843=m +CONFIG_SENSORS_HMC5843_I2C=m +CONFIG_SENSORS_HMC5843_SPI=m +CONFIG_SENSORS_I5500=m +CONFIG_SENSORS_I5K_AMB=m +CONFIG_SENSORS_IBMAEM=m +CONFIG_SENSORS_IBMPEX=m +CONFIG_SENSORS_IBMPOWERNV=m +CONFIG_SENSORS_IBM_CFFPS=m +CONFIG_SENSORS_IIO_HWMON=m +CONFIG_SENSORS_INA209=m +CONFIG_SENSORS_INA2XX=m +CONFIG_SENSORS_INA3221=m +CONFIG_SENSORS_INSPUR_IPSPS=m +CONFIG_SENSORS_IR35221=m +CONFIG_SENSORS_IR38064=m +CONFIG_SENSORS_IRPS5401=m +CONFIG_SENSORS_ISL29018=m +CONFIG_SENSORS_ISL29028=m +CONFIG_SENSORS_ISL68137=m +CONFIG_SENSORS_IT87=m +CONFIG_SENSORS_JC42=m +CONFIG_SENSORS_K10TEMP=m +CONFIG_SENSORS_K8TEMP=m +CONFIG_SENSORS_LINEAGE=m +CONFIG_SENSORS_LIS3LV02D=m +CONFIG_SENSORS_LIS3_SPI=m +CONFIG_SENSORS_LM25066=m +CONFIG_SENSORS_LM3533=m +CONFIG_SENSORS_LM63=m +CONFIG_SENSORS_LM70=m +CONFIG_SENSORS_LM73=m +CONFIG_SENSORS_LM75=m +CONFIG_SENSORS_LM77=m +CONFIG_SENSORS_LM78=m +CONFIG_SENSORS_LM80=m +CONFIG_SENSORS_LM83=m +CONFIG_SENSORS_LM85=m +CONFIG_SENSORS_LM87=m +CONFIG_SENSORS_LM90=m +CONFIG_SENSORS_LM92=m +CONFIG_SENSORS_LM93=m +CONFIG_SENSORS_LM95234=m +CONFIG_SENSORS_LM95241=m +CONFIG_SENSORS_LM95245=m +CONFIG_SENSORS_LOCHNAGAR=m +CONFIG_SENSORS_LTC2945=m +CONFIG_SENSORS_LTC2947=m +CONFIG_SENSORS_LTC2947_I2C=m +CONFIG_SENSORS_LTC2947_SPI=m +CONFIG_SENSORS_LTC2978=m +CONFIG_SENSORS_LTC2978_REGULATOR=y +CONFIG_SENSORS_LTC2990=m +CONFIG_SENSORS_LTC3815=m +CONFIG_SENSORS_LTC4151=m +CONFIG_SENSORS_LTC4215=m +CONFIG_SENSORS_LTC4222=m +CONFIG_SENSORS_LTC4245=m +CONFIG_SENSORS_LTC4260=m +CONFIG_SENSORS_LTC4261=m +CONFIG_SENSORS_MAX1111=m +CONFIG_SENSORS_MAX16064=m +CONFIG_SENSORS_MAX16065=m +CONFIG_SENSORS_MAX1619=m +CONFIG_SENSORS_MAX16601=m +CONFIG_SENSORS_MAX1668=m +CONFIG_SENSORS_MAX197=m +CONFIG_SENSORS_MAX20730=m +CONFIG_SENSORS_MAX20751=m +CONFIG_SENSORS_MAX31722=m +CONFIG_SENSORS_MAX31730=m +CONFIG_SENSORS_MAX31785=m +CONFIG_SENSORS_MAX31790=m +CONFIG_SENSORS_MAX34440=m +CONFIG_SENSORS_MAX6621=m +CONFIG_SENSORS_MAX6639=m +CONFIG_SENSORS_MAX6642=m +CONFIG_SENSORS_MAX6650=m +CONFIG_SENSORS_MAX6697=m +CONFIG_SENSORS_MAX8688=m +CONFIG_SENSORS_MC13783_ADC=m +CONFIG_SENSORS_MCP3021=m +CONFIG_SENSORS_MENF21BMC_HWMON=m +CONFIG_SENSORS_MLXREG_FAN=m +CONFIG_SENSORS_NCT6683=m +CONFIG_SENSORS_NCT6775=m +CONFIG_SENSORS_NCT7802=m +CONFIG_SENSORS_NCT7904=m +CONFIG_SENSORS_NPCM7XX=m +CONFIG_SENSORS_NTC_THERMISTOR=m +# CONFIG_SENSORS_OCC_P8_I2C is not set +# CONFIG_SENSORS_OCC_P9_SBE is not set +CONFIG_SENSORS_PC87360=m +CONFIG_SENSORS_PC87427=m +CONFIG_SENSORS_PCF8591=m +CONFIG_SENSORS_PMBUS=m +CONFIG_SENSORS_POWR1220=m +CONFIG_SENSORS_PWM_FAN=m +CONFIG_SENSORS_PXE1610=m +CONFIG_SENSORS_RASPBERRYPI_HWMON=m +CONFIG_SENSORS_RM3100=m +CONFIG_SENSORS_RM3100_I2C=m +CONFIG_SENSORS_RM3100_SPI=m +CONFIG_SENSORS_SCH5627=m +CONFIG_SENSORS_SCH5636=m +CONFIG_SENSORS_SCH56XX_COMMON=m +CONFIG_SENSORS_SHT15=m +CONFIG_SENSORS_SHT21=m +CONFIG_SENSORS_SHT3x=m +CONFIG_SENSORS_SHTC1=m +CONFIG_SENSORS_SIS5595=m +CONFIG_SENSORS_SMM665=m +CONFIG_SENSORS_SMSC47B397=m +CONFIG_SENSORS_SMSC47M1=m +CONFIG_SENSORS_SMSC47M192=m +CONFIG_SENSORS_STTS751=m +CONFIG_SENSORS_TC654=m +CONFIG_SENSORS_TC74=m +CONFIG_SENSORS_THMC50=m +CONFIG_SENSORS_TMP102=m +CONFIG_SENSORS_TMP103=m +CONFIG_SENSORS_TMP108=m +CONFIG_SENSORS_TMP401=m +CONFIG_SENSORS_TMP421=m +CONFIG_SENSORS_TMP513=m +CONFIG_SENSORS_TPS40422=m +CONFIG_SENSORS_TPS53679=m +CONFIG_SENSORS_TSL2563=m +CONFIG_SENSORS_UCD9000=m +CONFIG_SENSORS_UCD9200=m +CONFIG_SENSORS_VEXPRESS=m +CONFIG_SENSORS_VIA686A=m +CONFIG_SENSORS_VIA_CPUTEMP=m +CONFIG_SENSORS_VT1211=m +CONFIG_SENSORS_VT8231=m +CONFIG_SENSORS_W83627EHF=m +CONFIG_SENSORS_W83627HF=m +CONFIG_SENSORS_W83773G=m +CONFIG_SENSORS_W83781D=m +CONFIG_SENSORS_W83791D=m +CONFIG_SENSORS_W83792D=m +CONFIG_SENSORS_W83793=m +CONFIG_SENSORS_W83795=m +# CONFIG_SENSORS_W83795_FANCTRL is not set +CONFIG_SENSORS_W83L785TS=m +CONFIG_SENSORS_W83L786NG=m +CONFIG_SENSORS_WM831X=m +CONFIG_SENSORS_WM8350=m +CONFIG_SENSORS_XDPE122=m +CONFIG_SENSORS_XGENE=m +CONFIG_SENSORS_ZL6100=m +CONFIG_SERIAL_8250=y +CONFIG_SERIAL_8250_16550A_VARIANTS=y +CONFIG_SERIAL_8250_ASPEED_VUART=m +# CONFIG_SERIAL_8250_BCM2835AUX is not set +CONFIG_SERIAL_8250_CONSOLE=y +CONFIG_SERIAL_8250_CS=m +# CONFIG_SERIAL_8250_DEPRECATED_OPTIONS is not set +# CONFIG_SERIAL_8250_DETECT_IRQ is not set +CONFIG_SERIAL_8250_DMA=y +CONFIG_SERIAL_8250_DWLIB=y +# CONFIG_SERIAL_8250_EM is not set +CONFIG_SERIAL_8250_EXAR=m +CONFIG_SERIAL_8250_EXTENDED=y +CONFIG_SERIAL_8250_FSL=y +CONFIG_SERIAL_8250_LPSS=m +CONFIG_SERIAL_8250_MANY_PORTS=y +CONFIG_SERIAL_8250_MEN_MCB=m +CONFIG_SERIAL_8250_MID=m +CONFIG_SERIAL_8250_MT6577=y +CONFIG_SERIAL_8250_NR_UARTS=48 +CONFIG_SERIAL_8250_OMAP=m +CONFIG_SERIAL_8250_PCI=y +CONFIG_SERIAL_8250_PNP=y +CONFIG_SERIAL_8250_RSA=y +CONFIG_SERIAL_8250_RT288X=y +CONFIG_SERIAL_8250_RUNTIME_UARTS=32 +CONFIG_SERIAL_8250_SHARE_IRQ=y +CONFIG_SERIAL_8250_TEGRA=y +CONFIG_SERIAL_8250_UNIPHIER=m +CONFIG_SERIAL_ALTERA_UART_BAUDRATE=115200 +CONFIG_SERIAL_ALTERA_UART_MAXPORTS=4 +CONFIG_SERIAL_AMBA_PL010=m +CONFIG_SERIAL_AMBA_PL011=y +CONFIG_SERIAL_AMBA_PL011_CONSOLE=y +CONFIG_SERIAL_ARC_NR_PORTS=1 +CONFIG_SERIAL_BCM63XX=m +CONFIG_SERIAL_CONEXANT_DIGICOLOR=m +CONFIG_SERIAL_CORE_CONSOLE=y +CONFIG_SERIAL_DEV_BUS=y +CONFIG_SERIAL_DEV_CTRL_TTYPORT=y +CONFIG_SERIAL_EARLYCON=y +CONFIG_SERIAL_EARLYCON_ARM_SEMIHOST=y +CONFIG_SERIAL_ICOM=m +# CONFIG_SERIAL_IFX6X60 is not set +CONFIG_SERIAL_IMX=y +CONFIG_SERIAL_IMX_CONSOLE=y +CONFIG_SERIAL_IPOCTAL=m +CONFIG_SERIAL_KGDB_NMI=y +CONFIG_SERIAL_LANTIQ=m +CONFIG_SERIAL_MAX3100=m +CONFIG_SERIAL_MAX310X=y +CONFIG_SERIAL_MCTRL_GPIO=y +CONFIG_SERIAL_MEN_Z135=m +CONFIG_SERIAL_MESON=y +CONFIG_SERIAL_MESON_CONSOLE=y +CONFIG_SERIAL_MILBEAUT_USIO=m +CONFIG_SERIAL_MILBEAUT_USIO_PORTS=4 +CONFIG_SERIAL_MSM=y +CONFIG_SERIAL_MSM_CONSOLE=y +CONFIG_SERIAL_MVEBU_CONSOLE=y +CONFIG_SERIAL_MVEBU_UART=y +CONFIG_SERIAL_OF_PLATFORM=y +CONFIG_SERIAL_OMAP=y +CONFIG_SERIAL_OMAP_CONSOLE=y +CONFIG_SERIAL_OWL=y +CONFIG_SERIAL_OWL_CONSOLE=y +CONFIG_SERIAL_QCOM_GENI=m +CONFIG_SERIAL_QCOM_GENI_CONSOLE=y +CONFIG_SERIAL_QE=m +CONFIG_SERIAL_RDA=y +CONFIG_SERIAL_RDA_CONSOLE=y +CONFIG_SERIAL_RP2_NR_UARTS=32 +CONFIG_SERIAL_SAMSUNG=m +CONFIG_SERIAL_SAMSUNG_UARTS=4 +CONFIG_SERIAL_SAMSUNG_UARTS_4=y +CONFIG_SERIAL_SC16IS7XX_CORE=m +CONFIG_SERIAL_SC16IS7XX_I2C=y +CONFIG_SERIAL_SC16IS7XX_SPI=y +CONFIG_SERIAL_SCCNXP_CONSOLE=y +CONFIG_SERIAL_SH_SCI=m +CONFIG_SERIAL_SH_SCI_DMA=y +CONFIG_SERIAL_SH_SCI_NR_UARTS=2 +CONFIG_SERIAL_SIFIVE=m +CONFIG_SERIAL_SPRD=m +CONFIG_SERIAL_ST_ASC=m +CONFIG_SERIAL_TEGRA=m +CONFIG_SERIAL_TEGRA_TCU=m +CONFIG_SERIAL_UARTLITE=m +CONFIG_SERIAL_UARTLITE_NR_UARTS=1 +CONFIG_SERIAL_XILINX_PS_UART=m +CONFIG_SERIO_ALTERA_PS2=m +CONFIG_SERIO_AMBAKMI=m +CONFIG_SERIO_APBPS2=m +CONFIG_SERIO_ARC_PS2=m +CONFIG_SERIO_CT82C710=m +CONFIG_SERIO_GPIO_PS2=m +CONFIG_SERIO_I8042=y +CONFIG_SERIO_LIBPS2=y +CONFIG_SERIO_NVEC_PS2=m +CONFIG_SERIO_PARKBD=m +CONFIG_SERIO_PCIPS2=m +CONFIG_SERIO_PS2MULT=m +CONFIG_SERIO_RAW=m +CONFIG_SERIO_SERPORT=m +# CONFIG_SERIO_SUN4I_PS2 is not set +CONFIG_SERIO_XILINX_XPS_PS2=m +CONFIG_SETEND_EMULATION=y +CONFIG_SFC_FALCON_MTD=y +CONFIG_SFC_MCDI_LOGGING=y +CONFIG_SFC_MCDI_MON=y +CONFIG_SFC_MTD=y +CONFIG_SFC_SRIOV=y +CONFIG_SFI=y +CONFIG_SFP=m +CONFIG_SF_PDMA=m +CONFIG_SGETMASK_SYSCALL=y +CONFIG_SGI_GRU=m +# CONFIG_SGI_GRU_DEBUG is not set +CONFIG_SGI_XP=m +CONFIG_SGL_ALLOC=y +CONFIG_SG_POOL=y +CONFIG_SG_SPLIT=y +CONFIG_SHIFT_FS=m +CONFIG_SHIFT_FS_POSIX_ACL=y +CONFIG_SHMEM=y +CONFIG_SHUFFLE_PAGE_ALLOCATOR=y +CONFIG_SH_ETH=m +CONFIG_SH_TIMER_CMT=y +CONFIG_SH_TIMER_MTU2=y +CONFIG_SH_TIMER_TMU=y +CONFIG_SI1133=m +CONFIG_SI1145=m +CONFIG_SI7005=m +CONFIG_SI7020=m +CONFIG_SIGNALFD=y +CONFIG_SIGNATURE=y +CONFIG_SIGNED_PE_FILE_VERIFICATION=y +CONFIG_SIMPLE_PM_BUS=y +CONFIG_SIOX=m +CONFIG_SIOX_BUS_GPIO=m +CONFIG_SIS190=m +CONFIG_SIS900=m +CONFIG_SKB_EXTENSIONS=y +CONFIG_SKFP=m +CONFIG_SKGE=m +# CONFIG_SKGE_DEBUG is not set +CONFIG_SKGE_GENESIS=y +CONFIG_SKY2=m +# CONFIG_SKY2_DEBUG is not set +# CONFIG_SLAB is not set +CONFIG_SLAB_FREELIST_HARDENED=y +CONFIG_SLAB_FREELIST_RANDOM=y +CONFIG_SLAB_MERGE_DEFAULT=y +CONFIG_SLHC=y +CONFIG_SLICOSS=m +CONFIG_SLIC_DS26522=m +CONFIG_SLIMBUS=m +CONFIG_SLIM_QCOM_CTRL=m +CONFIG_SLIM_QCOM_NGD_CTRL=m +CONFIG_SLIP_COMPRESSED=y +CONFIG_SLIP_MODE_SLIP6=y +CONFIG_SLIP_SMART=y +# CONFIG_SLOB is not set +CONFIG_SLUB=y +CONFIG_SLUB_CPU_PARTIAL=y +CONFIG_SLUB_DEBUG=y +# CONFIG_SLUB_DEBUG_ON is not set +CONFIG_SLUB_MEMCG_SYSFS_ON=y +# CONFIG_SLUB_STATS is not set +CONFIG_SMARTJOYPLUS_FF=y +CONFIG_SMC=m +CONFIG_SMC911X=m +CONFIG_SMC_DIAG=m +CONFIG_SMP=y +CONFIG_SMP_ON_UP=y +CONFIG_SMSC37B787_WDT=m +CONFIG_SMSC911X=m +CONFIG_SMSC9420=m +CONFIG_SMSC_PHY=m +CONFIG_SMSC_SCH311X_WDT=m +CONFIG_SMSGIUCV=y +CONFIG_SMSGIUCV_EVENT=m +CONFIG_SMS_SDIO_DRV=m +CONFIG_SMS_SIANO_DEBUGFS=y +CONFIG_SMS_SIANO_MDTV=m +CONFIG_SMS_SIANO_RC=y +CONFIG_SMS_USB_DRV=m +CONFIG_SM_FTL=m +CONFIG_SM_GCC_8150=m +CONFIG_SM_GCC_8250=m +CONFIG_SND_AC97_CODEC=m +CONFIG_SND_AC97_POWER_SAVE=y +CONFIG_SND_AC97_POWER_SAVE_DEFAULT=0 +CONFIG_SND_AD1889=m +CONFIG_SND_ALI5451=m +CONFIG_SND_ALOOP=m +CONFIG_SND_ALS300=m +CONFIG_SND_ALS4000=m +CONFIG_SND_ARM=y +CONFIG_SND_ARMAACI=m +CONFIG_SND_ASIHPI=m +CONFIG_SND_ATIIXP=m +CONFIG_SND_ATIIXP_MODEM=m +CONFIG_SND_ATMEL_SOC=m +CONFIG_SND_AU8810=m +CONFIG_SND_AU8820=m +CONFIG_SND_AU8830=m +CONFIG_SND_AUDIO_GRAPH_CARD=m +CONFIG_SND_AW2=m +CONFIG_SND_AZT3328=m +CONFIG_SND_BCD2000=m +CONFIG_SND_BCM2835=m +CONFIG_SND_BCM2835_SOC_I2S=m +CONFIG_SND_BCM63XX_I2S_WHISTLER=m +CONFIG_SND_BEBOB=m +CONFIG_SND_BT87X=m +# CONFIG_SND_BT87X_OVERCLOCK is not set +CONFIG_SND_CA0106=m +CONFIG_SND_CMIPCI=m +CONFIG_SND_CS4281=m +CONFIG_SND_CS46XX=m +CONFIG_SND_CS46XX_NEW_DSP=y +CONFIG_SND_CTXFI=m +CONFIG_SND_DARLA20=m +CONFIG_SND_DARLA24=m +# CONFIG_SND_DEBUG is not set +CONFIG_SND_DESIGNWARE_I2S=m +CONFIG_SND_DESIGNWARE_PCM=y +CONFIG_SND_DICE=m +CONFIG_SND_DMA_SGBUF=y +CONFIG_SND_DRIVERS=y +CONFIG_SND_DUMMY=m +CONFIG_SND_DYNAMIC_MINORS=y +CONFIG_SND_ECHO3G=m +CONFIG_SND_EMU10K1=m +CONFIG_SND_EMU10K1X=m +CONFIG_SND_EMU10K1_SEQ=m +CONFIG_SND_ENS1370=m +CONFIG_SND_ENS1371=m +CONFIG_SND_ES1938=m +CONFIG_SND_ES1968=m +CONFIG_SND_ES1968_INPUT=y +CONFIG_SND_ES1968_RADIO=y +CONFIG_SND_FIREFACE=m +CONFIG_SND_FIREWIRE=y +CONFIG_SND_FIREWIRE_DIGI00X=m +CONFIG_SND_FIREWIRE_LIB=m +CONFIG_SND_FIREWIRE_MOTU=m +CONFIG_SND_FIREWIRE_TASCAM=m +CONFIG_SND_FIREWORKS=m +CONFIG_SND_FM801=m +CONFIG_SND_FM801_TEA575X_BOOL=y +CONFIG_SND_GINA20=m +CONFIG_SND_GINA24=m +CONFIG_SND_HDA=m +CONFIG_SND_HDA_ALIGNED_MMIO=y +CONFIG_SND_HDA_CODEC_ANALOG=m +CONFIG_SND_HDA_CODEC_CA0110=m +CONFIG_SND_HDA_CODEC_CA0132=m +CONFIG_SND_HDA_CODEC_CA0132_DSP=y +CONFIG_SND_HDA_CODEC_CIRRUS=m +CONFIG_SND_HDA_CODEC_CMEDIA=m +CONFIG_SND_HDA_CODEC_CONEXANT=m +CONFIG_SND_HDA_CODEC_HDMI=m +CONFIG_SND_HDA_CODEC_REALTEK=m +CONFIG_SND_HDA_CODEC_SI3054=m +CONFIG_SND_HDA_CODEC_SIGMATEL=m +CONFIG_SND_HDA_CODEC_VIA=m +CONFIG_SND_HDA_COMPONENT=y +CONFIG_SND_HDA_CORE=m +CONFIG_SND_HDA_DSP_LOADER=y +CONFIG_SND_HDA_EXT_CORE=m +CONFIG_SND_HDA_GENERIC=m +CONFIG_SND_HDA_GENERIC_LEDS=y +CONFIG_SND_HDA_HWDEP=y +CONFIG_SND_HDA_I915=y +CONFIG_SND_HDA_INPUT_BEEP=y +CONFIG_SND_HDA_INPUT_BEEP_MODE=0 +CONFIG_SND_HDA_INTEL=m +CONFIG_SND_HDA_PATCH_LOADER=y +CONFIG_SND_HDA_POWER_SAVE_DEFAULT=1 +CONFIG_SND_HDA_RECONFIG=y +CONFIG_SND_HDA_TEGRA=m +CONFIG_SND_HDSP=m +CONFIG_SND_HDSPM=m +CONFIG_SND_HRTIMER=m +CONFIG_SND_HWDEP=m +CONFIG_SND_I2S_HI6210_I2S=m +CONFIG_SND_ICE1712=m +CONFIG_SND_ICE1724=m +CONFIG_SND_INDIGO=m +CONFIG_SND_INDIGODJ=m +CONFIG_SND_INDIGODJX=m +CONFIG_SND_INDIGOIO=m +CONFIG_SND_INDIGOIOX=m +CONFIG_SND_INTEL8X0=m +CONFIG_SND_INTEL8X0M=m +CONFIG_SND_INTEL_DSP_CONFIG=m +CONFIG_SND_INTEL_NHLT=y +CONFIG_SND_ISIGHT=m +CONFIG_SND_JACK=y +CONFIG_SND_JACK_INPUT_DEV=y +CONFIG_SND_KIRKWOOD_SOC=m +CONFIG_SND_KIRKWOOD_SOC_ARMADA370_DB=m +CONFIG_SND_KORG1212=m +CONFIG_SND_LAYLA20=m +CONFIG_SND_LAYLA24=m +CONFIG_SND_LOLA=m +CONFIG_SND_LX6464ES=m +CONFIG_SND_MAESTRO3=m +CONFIG_SND_MAESTRO3_INPUT=y +CONFIG_SND_MAX_CARDS=32 +CONFIG_SND_MESON_AIU=m +CONFIG_SND_MESON_AXG_FIFO=m +CONFIG_SND_MESON_AXG_FRDDR=m +CONFIG_SND_MESON_AXG_PDM=m +CONFIG_SND_MESON_AXG_SOUND_CARD=m +CONFIG_SND_MESON_AXG_SPDIFIN=m +CONFIG_SND_MESON_AXG_SPDIFOUT=m +CONFIG_SND_MESON_AXG_TDMIN=m +CONFIG_SND_MESON_AXG_TDMOUT=m +CONFIG_SND_MESON_AXG_TDM_FORMATTER=m +CONFIG_SND_MESON_AXG_TDM_INTERFACE=m +CONFIG_SND_MESON_AXG_TODDR=m +CONFIG_SND_MESON_CARD_UTILS=m +CONFIG_SND_MESON_CODEC_GLUE=m +CONFIG_SND_MESON_G12A_TOACODEC=m +CONFIG_SND_MESON_G12A_TOHDMITX=m +CONFIG_SND_MESON_GX_SOUND_CARD=m +CONFIG_SND_MIA=m +CONFIG_SND_MIXART=m +CONFIG_SND_MIXER_OSS=m +CONFIG_SND_MONA=m +CONFIG_SND_MPU401=m +CONFIG_SND_MPU401_UART=m +CONFIG_SND_MTPAV=m +CONFIG_SND_MTS64=m +CONFIG_SND_NM256=m +CONFIG_SND_OPL3_LIB=m +CONFIG_SND_OPL3_LIB_SEQ=m +CONFIG_SND_OSSEMUL=y +CONFIG_SND_OXFW=m +CONFIG_SND_OXYGEN=m +CONFIG_SND_OXYGEN_LIB=m +CONFIG_SND_PCI=y +CONFIG_SND_PCMCIA=y +CONFIG_SND_PCM_ELD=y +CONFIG_SND_PCM_IEC958=y +# CONFIG_SND_PCM_OSS is not set +CONFIG_SND_PCM_TIMER=y +CONFIG_SND_PCSP=m +CONFIG_SND_PCXHR=m +CONFIG_SND_PDAUDIOCF=m +CONFIG_SND_PORTMAN2X4=m +CONFIG_SND_PPC=y +CONFIG_SND_PROC_FS=y +CONFIG_SND_RAWMIDI=m +CONFIG_SND_RIPTIDE=m +CONFIG_SND_RME32=m +CONFIG_SND_RME96=m +CONFIG_SND_RME9652=m +CONFIG_SND_SAMSUNG_I2S=m +CONFIG_SND_SAMSUNG_PCM=m +CONFIG_SND_SAMSUNG_SPDIF=m +CONFIG_SND_SB_COMMON=m +CONFIG_SND_SEQUENCER=m +# CONFIG_SND_SEQUENCER_OSS is not set +CONFIG_SND_SEQ_DEVICE=m +CONFIG_SND_SEQ_DUMMY=m +CONFIG_SND_SEQ_HRTIMER_DEFAULT=y +CONFIG_SND_SEQ_MIDI=m +CONFIG_SND_SEQ_MIDI_EMUL=m +CONFIG_SND_SEQ_MIDI_EVENT=m +CONFIG_SND_SEQ_VIRMIDI=m +CONFIG_SND_SERIAL_U16550=m +CONFIG_SND_SIMPLE_CARD=m +CONFIG_SND_SIMPLE_CARD_UTILS=m +CONFIG_SND_SOC_AC97_BUS=y +CONFIG_SND_SOC_AC97_CODEC=m +CONFIG_SND_SOC_ACPI=m +CONFIG_SND_SOC_ACPI_INTEL_MATCH=m +CONFIG_SND_SOC_ADAU1701=m +CONFIG_SND_SOC_ADAU1761=m +CONFIG_SND_SOC_ADAU1761_I2C=m +CONFIG_SND_SOC_ADAU1761_SPI=m +CONFIG_SND_SOC_ADAU17X1=m +CONFIG_SND_SOC_ADAU7002=m +CONFIG_SND_SOC_ADAU7118=m +CONFIG_SND_SOC_ADAU7118_HW=m +CONFIG_SND_SOC_ADAU7118_I2C=m +CONFIG_SND_SOC_ADAU_UTILS=m +CONFIG_SND_SOC_AK4104=m +CONFIG_SND_SOC_AK4118=m +CONFIG_SND_SOC_AK4458=m +CONFIG_SND_SOC_AK4554=m +CONFIG_SND_SOC_AK4613=m +CONFIG_SND_SOC_AK4642=m +CONFIG_SND_SOC_AK5386=m +CONFIG_SND_SOC_AK5558=m +CONFIG_SND_SOC_ALC5623=m +CONFIG_SND_SOC_ALC5632=m +CONFIG_SND_SOC_AMD_ACP=m +CONFIG_SND_SOC_AMD_ACP3x=m +CONFIG_SND_SOC_AMD_CZ_DA7219MX98357_MACH=m +CONFIG_SND_SOC_AMD_CZ_RT5645_MACH=m +CONFIG_SND_SOC_AMD_RENOIR=m +CONFIG_SND_SOC_AMD_RENOIR_MACH=m +CONFIG_SND_SOC_AMD_RV_RT5682_MACH=m +CONFIG_SND_SOC_APQ8016_SBC=m +CONFIG_SND_SOC_ARIZONA=m +CONFIG_SND_SOC_ARNDALE=m +CONFIG_SND_SOC_BD28623=m +CONFIG_SND_SOC_BT_SCO=m +CONFIG_SND_SOC_COMPRESS=y +CONFIG_SND_SOC_CPCAP=m +CONFIG_SND_SOC_CROS_EC_CODEC=m +CONFIG_SND_SOC_CS35L32=m +CONFIG_SND_SOC_CS35L33=m +CONFIG_SND_SOC_CS35L34=m +CONFIG_SND_SOC_CS35L35=m +CONFIG_SND_SOC_CS35L36=m +CONFIG_SND_SOC_CS4265=m +CONFIG_SND_SOC_CS4270=m +CONFIG_SND_SOC_CS4271=m +CONFIG_SND_SOC_CS4271_I2C=m +CONFIG_SND_SOC_CS4271_SPI=m +CONFIG_SND_SOC_CS42L42=m +CONFIG_SND_SOC_CS42L51=m +CONFIG_SND_SOC_CS42L51_I2C=m +CONFIG_SND_SOC_CS42L52=m +CONFIG_SND_SOC_CS42L56=m +CONFIG_SND_SOC_CS42L73=m +CONFIG_SND_SOC_CS42XX8=m +CONFIG_SND_SOC_CS42XX8_I2C=m +CONFIG_SND_SOC_CS43130=m +CONFIG_SND_SOC_CS4341=m +CONFIG_SND_SOC_CS4349=m +CONFIG_SND_SOC_CS53L30=m +CONFIG_SND_SOC_CX2072X=m +CONFIG_SND_SOC_DA7213=m +CONFIG_SND_SOC_DA7219=m +CONFIG_SND_SOC_DAVINCI_MCASP=m +CONFIG_SND_SOC_DMIC=m +CONFIG_SND_SOC_ES7134=m +CONFIG_SND_SOC_ES7241=m +CONFIG_SND_SOC_ES8316=m +CONFIG_SND_SOC_ES8328=m +CONFIG_SND_SOC_ES8328_I2C=m +CONFIG_SND_SOC_ES8328_SPI=m +CONFIG_SND_SOC_EUKREA_TLV320=m +CONFIG_SND_SOC_FSL_ASOC_CARD=m +CONFIG_SND_SOC_FSL_ASRC=m +CONFIG_SND_SOC_FSL_AUDMIX=m +CONFIG_SND_SOC_FSL_EASRC=m +CONFIG_SND_SOC_FSL_ESAI=m +CONFIG_SND_SOC_FSL_MICFIL=m +CONFIG_SND_SOC_FSL_MQS=m +CONFIG_SND_SOC_FSL_SAI=m +CONFIG_SND_SOC_FSL_SPDIF=m +CONFIG_SND_SOC_FSL_UTILS=m +CONFIG_SND_SOC_GENERIC_DMAENGINE_PCM=y +CONFIG_SND_SOC_GTM601=m +CONFIG_SND_SOC_HDAC_HDA=m +CONFIG_SND_SOC_HDAC_HDMI=m +CONFIG_SND_SOC_HDMI_CODEC=m +CONFIG_SND_SOC_IMG=y +CONFIG_SND_SOC_IMG_I2S_IN=m +CONFIG_SND_SOC_IMG_I2S_OUT=m +CONFIG_SND_SOC_IMG_PARALLEL_OUT=m +CONFIG_SND_SOC_IMG_PISTACHIO_INTERNAL_DAC=m +CONFIG_SND_SOC_IMG_SPDIF_IN=m +CONFIG_SND_SOC_IMG_SPDIF_OUT=m +CONFIG_SND_SOC_IMX_AUDMIX=m +CONFIG_SND_SOC_IMX_ES8328=m +CONFIG_SND_SOC_IMX_MC13783=m +CONFIG_SND_SOC_IMX_PCM_FIQ=y +CONFIG_SND_SOC_IMX_SPDIF=m +CONFIG_SND_SOC_IMX_SSI=m +CONFIG_SND_SOC_INNO_RK3036=m +CONFIG_SND_SOC_INTEL_APL=m +CONFIG_SND_SOC_INTEL_BDW_RT5650_MACH=m +CONFIG_SND_SOC_INTEL_BDW_RT5677_MACH=m +CONFIG_SND_SOC_INTEL_BROADWELL_MACH=m +CONFIG_SND_SOC_INTEL_BXT_DA7219_MAX98357A_COMMON=m +CONFIG_SND_SOC_INTEL_BXT_DA7219_MAX98357A_MACH=m +CONFIG_SND_SOC_INTEL_BXT_RT298_MACH=m +CONFIG_SND_SOC_INTEL_BYTCR_RT5640_MACH=m +CONFIG_SND_SOC_INTEL_BYTCR_RT5651_MACH=m +CONFIG_SND_SOC_INTEL_BYT_CHT_CX2072X_MACH=m +CONFIG_SND_SOC_INTEL_BYT_CHT_DA7213_MACH=m +CONFIG_SND_SOC_INTEL_BYT_CHT_ES8316_MACH=m +# CONFIG_SND_SOC_INTEL_BYT_CHT_NOCODEC_MACH is not set +# CONFIG_SND_SOC_INTEL_CFL is not set +CONFIG_SND_SOC_INTEL_CHT_BSW_MAX98090_TI_MACH=m +CONFIG_SND_SOC_INTEL_CHT_BSW_NAU8824_MACH=m +CONFIG_SND_SOC_INTEL_CHT_BSW_RT5645_MACH=m +CONFIG_SND_SOC_INTEL_CHT_BSW_RT5672_MACH=m +# CONFIG_SND_SOC_INTEL_CML_H is not set +# CONFIG_SND_SOC_INTEL_CML_LP is not set +CONFIG_SND_SOC_INTEL_CML_LP_DA7219_MAX98357A_MACH=m +# CONFIG_SND_SOC_INTEL_CNL is not set +CONFIG_SND_SOC_INTEL_DA7219_MAX98357A_GENERIC=m +CONFIG_SND_SOC_INTEL_EHL_RT5660_MACH=m +CONFIG_SND_SOC_INTEL_GLK=m +CONFIG_SND_SOC_INTEL_GLK_DA7219_MAX98357A_MACH=m +CONFIG_SND_SOC_INTEL_GLK_RT5682_MAX98357A_MACH=m +CONFIG_SND_SOC_INTEL_HASWELL=m +CONFIG_SND_SOC_INTEL_HASWELL_MACH=m +CONFIG_SND_SOC_INTEL_KBL=m +CONFIG_SND_SOC_INTEL_KBL_DA7219_MAX98357A_MACH=m +CONFIG_SND_SOC_INTEL_KBL_DA7219_MAX98927_MACH=m +CONFIG_SND_SOC_INTEL_KBL_RT5660_MACH=m +CONFIG_SND_SOC_INTEL_KBL_RT5663_MAX98927_MACH=m +CONFIG_SND_SOC_INTEL_KBL_RT5663_RT5514_MAX98927_MACH=m +CONFIG_SND_SOC_INTEL_MACH=y +CONFIG_SND_SOC_INTEL_SKL=m +CONFIG_SND_SOC_INTEL_SKL_HDA_DSP_GENERIC_MACH=m +CONFIG_SND_SOC_INTEL_SKL_NAU88L25_MAX98357A_MACH=m +CONFIG_SND_SOC_INTEL_SKL_NAU88L25_SSM4567_MACH=m +CONFIG_SND_SOC_INTEL_SKL_RT286_MACH=m +# CONFIG_SND_SOC_INTEL_SKYLAKE is not set +CONFIG_SND_SOC_INTEL_SKYLAKE_COMMON=m +CONFIG_SND_SOC_INTEL_SKYLAKE_FAMILY=m +# CONFIG_SND_SOC_INTEL_SKYLAKE_HDAUDIO_CODEC is not set +CONFIG_SND_SOC_INTEL_SKYLAKE_SSP_CLK=m +CONFIG_SND_SOC_INTEL_SOF_CML_RT1011_RT5682_MACH=m +CONFIG_SND_SOC_INTEL_SOF_DA7219_MAX98373_MACH=m +CONFIG_SND_SOC_INTEL_SOF_PCM512x_MACH=m +CONFIG_SND_SOC_INTEL_SOF_RT5682_MACH=m +CONFIG_SND_SOC_INTEL_SOF_WM8804_MACH=m +CONFIG_SND_SOC_INTEL_SST=m +CONFIG_SND_SOC_INTEL_SST_ACPI=m +CONFIG_SND_SOC_INTEL_SST_FIRMWARE=m +CONFIG_SND_SOC_INTEL_SST_TOPLEVEL=y +# CONFIG_SND_SOC_INTEL_USER_FRIENDLY_LONG_NAMES is not set +CONFIG_SND_SOC_LOCHNAGAR_SC=m +CONFIG_SND_SOC_LPASS_APQ8016=m +CONFIG_SND_SOC_LPASS_CPU=m +CONFIG_SND_SOC_LPASS_IPQ806X=m +CONFIG_SND_SOC_LPASS_PLATFORM=m +CONFIG_SND_SOC_MAX9759=m +CONFIG_SND_SOC_MAX98088=m +CONFIG_SND_SOC_MAX98090=m +CONFIG_SND_SOC_MAX98095=m +CONFIG_SND_SOC_MAX98357A=m +CONFIG_SND_SOC_MAX98373=m +CONFIG_SND_SOC_MAX98390=m +CONFIG_SND_SOC_MAX98504=m +CONFIG_SND_SOC_MAX9860=m +CONFIG_SND_SOC_MAX9867=m +CONFIG_SND_SOC_MAX98927=m +CONFIG_SND_SOC_MC13783=m +CONFIG_SND_SOC_MEDIATEK=m +CONFIG_SND_SOC_MESON_T9015=m +CONFIG_SND_SOC_MIKROE_PROTO=m +CONFIG_SND_SOC_MSM8916_WCD_ANALOG=m +CONFIG_SND_SOC_MSM8916_WCD_DIGITAL=m +CONFIG_SND_SOC_MSM8996=m +# CONFIG_SND_SOC_MT2701 is not set +CONFIG_SND_SOC_MT6351=m +CONFIG_SND_SOC_MT6358=m +CONFIG_SND_SOC_MT6660=m +CONFIG_SND_SOC_MT6797=m +CONFIG_SND_SOC_MT6797_MT6351=m +# CONFIG_SND_SOC_MT8173 is not set +CONFIG_SND_SOC_MT8183=m +CONFIG_SND_SOC_MT8183_DA7219_MAX98357A=m +CONFIG_SND_SOC_MT8183_MT6358_TS3A227E_MAX98357A=m +CONFIG_SND_SOC_MTK_BTCVSD=m +CONFIG_SND_SOC_NAU8540=m +CONFIG_SND_SOC_NAU8810=m +CONFIG_SND_SOC_NAU8822=m +CONFIG_SND_SOC_NAU8824=m +CONFIG_SND_SOC_NAU8825=m +CONFIG_SND_SOC_NOKIA_RX51=m +CONFIG_SND_SOC_ODROID=m +CONFIG_SND_SOC_OMAP3_PANDORA=m +CONFIG_SND_SOC_OMAP3_TWL4030=m +CONFIG_SND_SOC_OMAP_ABE_TWL6040=m +CONFIG_SND_SOC_OMAP_DMIC=m +CONFIG_SND_SOC_OMAP_MCBSP=m +CONFIG_SND_SOC_OMAP_MCPDM=m +CONFIG_SND_SOC_PCM1681=m +CONFIG_SND_SOC_PCM1789=m +CONFIG_SND_SOC_PCM1789_I2C=m +CONFIG_SND_SOC_PCM179X=m +CONFIG_SND_SOC_PCM179X_I2C=m +CONFIG_SND_SOC_PCM179X_SPI=m +CONFIG_SND_SOC_PCM186X=m +CONFIG_SND_SOC_PCM186X_I2C=m +CONFIG_SND_SOC_PCM186X_SPI=m +CONFIG_SND_SOC_PCM3060=m +CONFIG_SND_SOC_PCM3060_I2C=m +CONFIG_SND_SOC_PCM3060_SPI=m +CONFIG_SND_SOC_PCM3168A=m +CONFIG_SND_SOC_PCM3168A_I2C=m +CONFIG_SND_SOC_PCM3168A_SPI=m +CONFIG_SND_SOC_PCM512x=m +CONFIG_SND_SOC_PCM512x_I2C=m +CONFIG_SND_SOC_PCM512x_SPI=m +CONFIG_SND_SOC_QCOM=m +CONFIG_SND_SOC_QCOM_COMMON=m +CONFIG_SND_SOC_QDSP6=m +CONFIG_SND_SOC_QDSP6_ADM=m +CONFIG_SND_SOC_QDSP6_AFE=m +CONFIG_SND_SOC_QDSP6_AFE_DAI=m +CONFIG_SND_SOC_QDSP6_ASM=m +CONFIG_SND_SOC_QDSP6_ASM_DAI=m +CONFIG_SND_SOC_QDSP6_COMMON=m +CONFIG_SND_SOC_QDSP6_CORE=m +CONFIG_SND_SOC_QDSP6_ROUTING=m +CONFIG_SND_SOC_RCAR=m +CONFIG_SND_SOC_RK3288_HDMI_ANALOG=m +CONFIG_SND_SOC_RK3328=m +CONFIG_SND_SOC_RK3399_GRU_SOUND=m +CONFIG_SND_SOC_RL6231=m +CONFIG_SND_SOC_RL6347A=m +CONFIG_SND_SOC_ROCKCHIP=m +CONFIG_SND_SOC_ROCKCHIP_I2S=m +CONFIG_SND_SOC_ROCKCHIP_MAX98090=m +CONFIG_SND_SOC_ROCKCHIP_PDM=m +CONFIG_SND_SOC_ROCKCHIP_RT5645=m +CONFIG_SND_SOC_ROCKCHIP_SPDIF=m +CONFIG_SND_SOC_RT1011=m +CONFIG_SND_SOC_RT1015=m +CONFIG_SND_SOC_RT1308_SDW=m +CONFIG_SND_SOC_RT286=m +CONFIG_SND_SOC_RT298=m +CONFIG_SND_SOC_RT5514=m +CONFIG_SND_SOC_RT5514_SPI=m +CONFIG_SND_SOC_RT5616=m +CONFIG_SND_SOC_RT5631=m +CONFIG_SND_SOC_RT5640=m +CONFIG_SND_SOC_RT5645=m +CONFIG_SND_SOC_RT5651=m +CONFIG_SND_SOC_RT5660=m +CONFIG_SND_SOC_RT5663=m +CONFIG_SND_SOC_RT5670=m +CONFIG_SND_SOC_RT5677=m +CONFIG_SND_SOC_RT5677_SPI=m +CONFIG_SND_SOC_RT5682=m +CONFIG_SND_SOC_RT5682_I2C=m +CONFIG_SND_SOC_RT5682_SDW=m +CONFIG_SND_SOC_RT700=m +CONFIG_SND_SOC_RT700_SDW=m +CONFIG_SND_SOC_RT711=m +CONFIG_SND_SOC_RT711_SDW=m +CONFIG_SND_SOC_RT715=m +CONFIG_SND_SOC_RT715_SDW=m +CONFIG_SND_SOC_SAMSUNG=m +CONFIG_SND_SOC_SAMSUNG_SMDK_SPDIF=m +CONFIG_SND_SOC_SAMSUNG_SMDK_WM8994=m +CONFIG_SND_SOC_SAMSUNG_TM2_WM5110=m +CONFIG_SND_SOC_SDM845=m +CONFIG_SND_SOC_SH4_FSI=m +CONFIG_SND_SOC_SI476X=m +CONFIG_SND_SOC_SIGMADSP=m +CONFIG_SND_SOC_SIGMADSP_I2C=m +CONFIG_SND_SOC_SIGMADSP_REGMAP=m +CONFIG_SND_SOC_SIMPLE_AMPLIFIER=m +CONFIG_SND_SOC_SIRF_AUDIO_CODEC=m +CONFIG_SND_SOC_SMDK_WM8994_PCM=m +CONFIG_SND_SOC_SNOW=m +CONFIG_SND_SOC_SOF=m +CONFIG_SND_SOC_SOF_ACPI=m +CONFIG_SND_SOC_SOF_APOLLOLAKE=m +CONFIG_SND_SOC_SOF_APOLLOLAKE_SUPPORT=y +CONFIG_SND_SOC_SOF_CANNONLAKE=m +CONFIG_SND_SOC_SOF_CANNONLAKE_SUPPORT=y +CONFIG_SND_SOC_SOF_COFFEELAKE=m +CONFIG_SND_SOC_SOF_COFFEELAKE_SUPPORT=y +CONFIG_SND_SOC_SOF_COMETLAKE=m +CONFIG_SND_SOC_SOF_COMETLAKE_LP_SUPPORT=y +CONFIG_SND_SOC_SOF_COMETLAKE_SUPPORT=y +# CONFIG_SND_SOC_SOF_DEBUG_PROBES is not set +# CONFIG_SND_SOC_SOF_DEVELOPER_SUPPORT is not set +CONFIG_SND_SOC_SOF_ELKHARTLAKE=m +CONFIG_SND_SOC_SOF_ELKHARTLAKE_SUPPORT=y +CONFIG_SND_SOC_SOF_GEMINILAKE=m +CONFIG_SND_SOC_SOF_GEMINILAKE_SUPPORT=y +CONFIG_SND_SOC_SOF_HDA=m +# CONFIG_SND_SOC_SOF_HDA_ALWAYS_ENABLE_DMI_L1 is not set +CONFIG_SND_SOC_SOF_HDA_AUDIO_CODEC=y +CONFIG_SND_SOC_SOF_HDA_COMMON=m +CONFIG_SND_SOC_SOF_HDA_LINK=y +CONFIG_SND_SOC_SOF_HDA_LINK_BASELINE=m +CONFIG_SND_SOC_SOF_ICELAKE=m +CONFIG_SND_SOC_SOF_ICELAKE_SUPPORT=y +CONFIG_SND_SOC_SOF_IMX8=m +CONFIG_SND_SOC_SOF_IMX8M=m +CONFIG_SND_SOC_SOF_IMX8M_SUPPORT=y +CONFIG_SND_SOC_SOF_IMX8_SUPPORT=y +CONFIG_SND_SOC_SOF_IMX_OF=m +CONFIG_SND_SOC_SOF_IMX_TOPLEVEL=y +CONFIG_SND_SOC_SOF_INTEL_ACPI=m +CONFIG_SND_SOC_SOF_INTEL_ATOM_HIFI_EP=m +CONFIG_SND_SOC_SOF_INTEL_COMMON=m +CONFIG_SND_SOC_SOF_INTEL_HIFI_EP_IPC=m +CONFIG_SND_SOC_SOF_INTEL_PCI=m +CONFIG_SND_SOC_SOF_INTEL_TOPLEVEL=y +CONFIG_SND_SOC_SOF_JASPERLAKE=m +CONFIG_SND_SOC_SOF_JASPERLAKE_SUPPORT=y +CONFIG_SND_SOC_SOF_MERRIFIELD=m +CONFIG_SND_SOC_SOF_MERRIFIELD_SUPPORT=y +CONFIG_SND_SOC_SOF_OF=m +CONFIG_SND_SOC_SOF_PCI=m +CONFIG_SND_SOC_SOF_PROBE_WORK_QUEUE=y +CONFIG_SND_SOC_SOF_TIGERLAKE=m +CONFIG_SND_SOC_SOF_TIGERLAKE_SUPPORT=y +CONFIG_SND_SOC_SOF_TOPLEVEL=y +CONFIG_SND_SOC_SOF_XTENSA=m +CONFIG_SND_SOC_SPDIF=m +CONFIG_SND_SOC_SPRD=m +CONFIG_SND_SOC_SPRD_MCDT=m +CONFIG_SND_SOC_SSM2305=m +CONFIG_SND_SOC_SSM2602=m +CONFIG_SND_SOC_SSM2602_I2C=m +CONFIG_SND_SOC_SSM2602_SPI=m +CONFIG_SND_SOC_SSM4567=m +CONFIG_SND_SOC_STA32X=m +CONFIG_SND_SOC_STA350=m +CONFIG_SND_SOC_STI_SAS=m +CONFIG_SND_SOC_STORM=m +CONFIG_SND_SOC_TAS2552=m +CONFIG_SND_SOC_TAS2562=m +CONFIG_SND_SOC_TAS2770=m +CONFIG_SND_SOC_TAS5086=m +CONFIG_SND_SOC_TAS571X=m +CONFIG_SND_SOC_TAS5720=m +CONFIG_SND_SOC_TAS6424=m +CONFIG_SND_SOC_TDA7419=m +CONFIG_SND_SOC_TEGRA=m +CONFIG_SND_SOC_TEGRA20_AC97=m +CONFIG_SND_SOC_TEGRA20_DAS=m +CONFIG_SND_SOC_TEGRA20_I2S=m +CONFIG_SND_SOC_TEGRA20_SPDIF=m +CONFIG_SND_SOC_TEGRA30_AHUB=m +CONFIG_SND_SOC_TEGRA30_I2S=m +CONFIG_SND_SOC_TEGRA_ALC5632=m +CONFIG_SND_SOC_TEGRA_MAX98090=m +CONFIG_SND_SOC_TEGRA_RT5640=m +CONFIG_SND_SOC_TEGRA_RT5677=m +CONFIG_SND_SOC_TEGRA_SGTL5000=m +CONFIG_SND_SOC_TEGRA_TRIMSLICE=m +CONFIG_SND_SOC_TEGRA_WM8753=m +CONFIG_SND_SOC_TEGRA_WM8903=m +CONFIG_SND_SOC_TEGRA_WM9712=m +CONFIG_SND_SOC_TFA9879=m +CONFIG_SND_SOC_TI_EDMA_PCM=m +CONFIG_SND_SOC_TI_SDMA_PCM=m +CONFIG_SND_SOC_TI_UDMA_PCM=m +CONFIG_SND_SOC_TLV320ADCX140=m +CONFIG_SND_SOC_TLV320AIC23=m +CONFIG_SND_SOC_TLV320AIC23_I2C=m +CONFIG_SND_SOC_TLV320AIC23_SPI=m +CONFIG_SND_SOC_TLV320AIC31XX=m +CONFIG_SND_SOC_TLV320AIC32X4=m +CONFIG_SND_SOC_TLV320AIC32X4_I2C=m +CONFIG_SND_SOC_TLV320AIC32X4_SPI=m +CONFIG_SND_SOC_TLV320AIC3X=m +CONFIG_SND_SOC_TOPOLOGY=y +CONFIG_SND_SOC_TPA6130A2=m +CONFIG_SND_SOC_TS3A227E=m +CONFIG_SND_SOC_TSCS42XX=m +CONFIG_SND_SOC_TSCS454=m +CONFIG_SND_SOC_TWL4030=m +CONFIG_SND_SOC_TWL6040=m +CONFIG_SND_SOC_UDA1334=m +CONFIG_SND_SOC_UNIPHIER=m +CONFIG_SND_SOC_UNIPHIER_AIO=m +CONFIG_SND_SOC_UNIPHIER_EVEA_CODEC=m +CONFIG_SND_SOC_UNIPHIER_LD11=m +CONFIG_SND_SOC_UNIPHIER_PXS2=m +CONFIG_SND_SOC_WCD9335=m +CONFIG_SND_SOC_WCD934X=m +CONFIG_SND_SOC_WM5110=m +CONFIG_SND_SOC_WM8510=m +CONFIG_SND_SOC_WM8523=m +CONFIG_SND_SOC_WM8524=m +CONFIG_SND_SOC_WM8580=m +CONFIG_SND_SOC_WM8711=m +CONFIG_SND_SOC_WM8728=m +CONFIG_SND_SOC_WM8731=m +CONFIG_SND_SOC_WM8737=m +CONFIG_SND_SOC_WM8741=m +CONFIG_SND_SOC_WM8750=m +CONFIG_SND_SOC_WM8753=m +CONFIG_SND_SOC_WM8770=m +CONFIG_SND_SOC_WM8776=m +CONFIG_SND_SOC_WM8782=m +CONFIG_SND_SOC_WM8804=m +CONFIG_SND_SOC_WM8804_I2C=m +CONFIG_SND_SOC_WM8804_SPI=m +CONFIG_SND_SOC_WM8903=m +CONFIG_SND_SOC_WM8904=m +CONFIG_SND_SOC_WM8960=m +CONFIG_SND_SOC_WM8962=m +CONFIG_SND_SOC_WM8974=m +CONFIG_SND_SOC_WM8978=m +CONFIG_SND_SOC_WM8985=m +CONFIG_SND_SOC_WM8994=m +CONFIG_SND_SOC_WM9712=m +CONFIG_SND_SOC_WM_ADSP=m +CONFIG_SND_SOC_WM_HUBS=m +CONFIG_SND_SOC_WSA881X=m +CONFIG_SND_SOC_XILINX_AUDIO_FORMATTER=m +CONFIG_SND_SOC_XILINX_I2S=m +CONFIG_SND_SOC_XILINX_SPDIF=m +CONFIG_SND_SOC_XTFPGA_I2S=m +CONFIG_SND_SOC_ZL38060=m +CONFIG_SND_SOC_ZX_AUD96P22=m +CONFIG_SND_SONICVIBES=m +CONFIG_SND_SPI=y +CONFIG_SND_SST_ATOM_HIFI2_PLATFORM=m +CONFIG_SND_SST_ATOM_HIFI2_PLATFORM_ACPI=m +CONFIG_SND_SST_ATOM_HIFI2_PLATFORM_PCI=m +CONFIG_SND_SST_IPC=m +CONFIG_SND_SST_IPC_ACPI=m +CONFIG_SND_SST_IPC_PCI=m +# CONFIG_SND_SUN4I_CODEC is not set +# CONFIG_SND_SUN4I_I2S is not set +# CONFIG_SND_SUN4I_SPDIF is not set +CONFIG_SND_SUN50I_CODEC_ANALOG=m +CONFIG_SND_SUN8I_ADDA_PR_REGMAP=m +CONFIG_SND_SUN8I_CODEC=m +CONFIG_SND_SUN8I_CODEC_ANALOG=m +CONFIG_SND_SUPPORT_OLD_API=y +CONFIG_SND_SYNTH_EMUX=m +CONFIG_SND_TRIDENT=m +CONFIG_SND_USB=y +CONFIG_SND_USB_6FIRE=m +CONFIG_SND_USB_AUDIO=m +CONFIG_SND_USB_AUDIO_USE_MEDIA_CONTROLLER=y +CONFIG_SND_USB_CAIAQ=m +CONFIG_SND_USB_CAIAQ_INPUT=y +CONFIG_SND_USB_HIFACE=m +CONFIG_SND_USB_LINE6=m +CONFIG_SND_USB_POD=m +CONFIG_SND_USB_PODHD=m +CONFIG_SND_USB_TONEPORT=m +CONFIG_SND_USB_UA101=m +CONFIG_SND_USB_US122L=m +CONFIG_SND_USB_USX2Y=m +CONFIG_SND_USB_VARIAX=m +# CONFIG_SND_VERBOSE_PRINTK is not set +CONFIG_SND_VERBOSE_PROCFS=y +CONFIG_SND_VIA82XX=m +CONFIG_SND_VIA82XX_MODEM=m +CONFIG_SND_VIRMIDI=m +CONFIG_SND_VIRTUOSO=m +CONFIG_SND_VMASTER=y +CONFIG_SND_VX222=m +CONFIG_SND_VXPOCKET=m +CONFIG_SND_VX_LIB=m +CONFIG_SND_X86=y +CONFIG_SND_XEN_FRONTEND=m +CONFIG_SND_YMFPCI=m +CONFIG_SNI_AVE=m +CONFIG_SNI_NETSEC=m +CONFIG_SOCIONEXT_SYNQUACER_PREITS=y +CONFIG_SOCK_CGROUP_DATA=y +CONFIG_SOCK_VALIDATE_XMIT=y +# CONFIG_SOC_AM43XX is not set +CONFIG_SOC_ASPEED=y +CONFIG_SOC_BUS=y +CONFIG_SOC_DRA7XX=y +CONFIG_SOC_EXYNOS5250=y +CONFIG_SOC_EXYNOS5260=y +CONFIG_SOC_EXYNOS5410=y +CONFIG_SOC_EXYNOS5420=y +CONFIG_SOC_EXYNOS5800=y +CONFIG_SOC_HAS_OMAP2_SDRC=y +CONFIG_SOC_HAS_REALTIME_COUNTER=y +CONFIG_SOC_IMX5=y +CONFIG_SOC_IMX50=y +CONFIG_SOC_IMX51=y +# CONFIG_SOC_IMX53 is not set +CONFIG_SOC_IMX6=y +CONFIG_SOC_IMX6Q=y +CONFIG_SOC_IMX6SL=y +CONFIG_SOC_IMX6SLL=y +CONFIG_SOC_IMX6SX=y +CONFIG_SOC_IMX6UL=y +CONFIG_SOC_IMX7D=y +CONFIG_SOC_IMX7D_CA7=y +CONFIG_SOC_IMX7ULP=y +# CONFIG_SOC_LS1021A is not set +CONFIG_SOC_OMAP3430=y +# CONFIG_SOC_OMAP5 is not set +CONFIG_SOC_RENESAS=y +CONFIG_SOC_SAMSUNG=y +CONFIG_SOC_TEGRA20_VOLTAGE_COUPLER=y +CONFIG_SOC_TEGRA30_VOLTAGE_COUPLER=y +CONFIG_SOC_TEGRA_FLOWCTRL=y +CONFIG_SOC_TEGRA_FUSE=y +CONFIG_SOC_TEGRA_PMC=y +CONFIG_SOC_TEGRA_POWERGATE_BPMP=y +CONFIG_SOC_TI81XX=y +CONFIG_SOC_VF610=y +CONFIG_SOFTLOCKUP_DETECTOR=y +CONFIG_SOFT_WATCHDOG=m +CONFIG_SOFT_WATCHDOG_PRETIMEOUT=y +CONFIG_SONYPI_COMPAT=y +CONFIG_SONY_FF=y +CONFIG_SONY_LAPTOP=m +CONFIG_SOUNDWIRE=m +CONFIG_SOUNDWIRE_CADENCE=m +CONFIG_SOUNDWIRE_INTEL=m +CONFIG_SOUNDWIRE_QCOM=m +CONFIG_SOUND_OSS_CORE=y +# CONFIG_SOUND_OSS_CORE_PRECLAIM is not set +CONFIG_SP5100_TCO=m +CONFIG_SPAPR_TCE_IOMMU=y +CONFIG_SPARSEMEM=y +CONFIG_SPARSEMEM_EXTREME=y +CONFIG_SPARSEMEM_MANUAL=y +CONFIG_SPARSEMEM_STATIC=y +CONFIG_SPARSEMEM_VMEMMAP=y +CONFIG_SPARSEMEM_VMEMMAP_ENABLE=y +CONFIG_SPARSE_IRQ=y +CONFIG_SPEAKUP=m +CONFIG_SPEAKUP_SYNTH_ACNTSA=m +CONFIG_SPEAKUP_SYNTH_APOLLO=m +CONFIG_SPEAKUP_SYNTH_AUDPTR=m +CONFIG_SPEAKUP_SYNTH_BNS=m +CONFIG_SPEAKUP_SYNTH_DECEXT=m +CONFIG_SPEAKUP_SYNTH_DECTLK=m +CONFIG_SPEAKUP_SYNTH_DUMMY=m +CONFIG_SPEAKUP_SYNTH_LTLK=m +CONFIG_SPEAKUP_SYNTH_SOFT=m +CONFIG_SPEAKUP_SYNTH_SPKOUT=m +CONFIG_SPEAKUP_SYNTH_TXPRT=m +CONFIG_SPI_ALTERA=m +CONFIG_SPI_AMD=m +CONFIG_SPI_ARMADA_3700=m +CONFIG_SPI_ASPEED_SMC=m +CONFIG_SPI_AXI_SPI_ENGINE=m +CONFIG_SPI_BCM2835=m +CONFIG_SPI_BCM2835AUX=m +CONFIG_SPI_BCM_QSPI=m +CONFIG_SPI_BITBANG=m +CONFIG_SPI_BUTTERFLY=m +CONFIG_SPI_CADENCE=m +CONFIG_SPI_CADENCE_QUADSPI=m +# CONFIG_SPI_DEBUG is not set +CONFIG_SPI_DESIGNWARE=m +CONFIG_SPI_DLN2=m +CONFIG_SPI_DW_DMA=y +CONFIG_SPI_DW_MMIO=m +CONFIG_SPI_DW_PCI=m +CONFIG_SPI_DYNAMIC=y +CONFIG_SPI_FSI=m +CONFIG_SPI_FSL_DSPI=m +CONFIG_SPI_FSL_LIB=y +CONFIG_SPI_FSL_LPSPI=m +CONFIG_SPI_FSL_QUADSPI=m +CONFIG_SPI_FSL_SPI=y +CONFIG_SPI_GPIO=m +CONFIG_SPI_HISI_SFC=m +CONFIG_SPI_HISI_SFC_V3XX=m +CONFIG_SPI_IMX=m +# CONFIG_SPI_INTEL_SPI_PCI is not set +# CONFIG_SPI_INTEL_SPI_PLATFORM is not set +CONFIG_SPI_LM70_LLP=m +CONFIG_SPI_LOOPBACK_TEST=m +CONFIG_SPI_MASTER=y +CONFIG_SPI_MEM=y +CONFIG_SPI_MESON_SPICC=m +CONFIG_SPI_MESON_SPIFC=m +CONFIG_SPI_MT65XX=m +CONFIG_SPI_MTK_NOR=m +CONFIG_SPI_MUX=m +CONFIG_SPI_MXIC=m +CONFIG_SPI_NPCM_FIU=m +CONFIG_SPI_NPCM_PSPI=m +CONFIG_SPI_NXP_FLEXSPI=m +CONFIG_SPI_OC_TINY=m +CONFIG_SPI_OMAP24XX=y +CONFIG_SPI_ORION=m +CONFIG_SPI_PL022=m +CONFIG_SPI_PXA2XX=m +CONFIG_SPI_PXA2XX_PCI=m +CONFIG_SPI_QCOM_GENI=m +CONFIG_SPI_QCOM_QSPI=m +CONFIG_SPI_QUP=m +CONFIG_SPI_RSPI=m +CONFIG_SPI_S3C64XX=m +CONFIG_SPI_SC18IS602=m +CONFIG_SPI_SH_HSPI=m +CONFIG_SPI_SH_MSIOF=m +CONFIG_SPI_SIFIVE=m +CONFIG_SPI_SLAVE=y +CONFIG_SPI_SLAVE_MT27XX=m +CONFIG_SPI_SLAVE_SYSTEM_CONTROL=m +CONFIG_SPI_SLAVE_TIME=m +CONFIG_SPI_SPIDEV=m +CONFIG_SPI_SPRD=m +CONFIG_SPI_SPRD_ADI=m +# CONFIG_SPI_SUN4I is not set +CONFIG_SPI_SUN6I=m +CONFIG_SPI_SYNQUACER=m +CONFIG_SPI_TEGRA114=m +CONFIG_SPI_TEGRA20_SFLASH=m +CONFIG_SPI_TEGRA20_SLINK=m +CONFIG_SPI_THUNDERX=m +CONFIG_SPI_TI_QSPI=m +CONFIG_SPI_TLE62X0=m +CONFIG_SPI_UNIPHIER=m +CONFIG_SPI_XCOMM=m +# CONFIG_SPI_XILINX is not set +CONFIG_SPI_XLP=m +CONFIG_SPI_ZYNQMP_GQSPI=m +CONFIG_SPLIT_PTLOCK_CPUS=4 +CONFIG_SPMI_MSM_PMIC_ARB=m +CONFIG_SPMI_PMIC_CLKDIV=m +CONFIG_SPRD_COMMON_CLK=m +CONFIG_SPRD_DMA=m +CONFIG_SPRD_EFUSE=m +CONFIG_SPRD_MBOX=m +CONFIG_SPRD_SC9860_CLK=m +CONFIG_SPRD_SC9863A_CLK=m +CONFIG_SPRD_THERMAL=m +CONFIG_SPRD_TIMER=y +CONFIG_SPRD_WATCHDOG=m +CONFIG_SPS30=m +CONFIG_SQUASHFS=y +# CONFIG_SQUASHFS_4K_DEVBLK_SIZE is not set +# CONFIG_SQUASHFS_DECOMP_MULTI is not set +# CONFIG_SQUASHFS_DECOMP_MULTI_PERCPU is not set +CONFIG_SQUASHFS_DECOMP_SINGLE=y +# CONFIG_SQUASHFS_EMBEDDED is not set +# CONFIG_SQUASHFS_FILE_CACHE is not set +CONFIG_SQUASHFS_FILE_DIRECT=y +CONFIG_SQUASHFS_FRAGMENT_CACHE_SIZE=3 +CONFIG_SQUASHFS_LZ4=y +CONFIG_SQUASHFS_LZO=y +CONFIG_SQUASHFS_XATTR=y +CONFIG_SQUASHFS_XZ=y +CONFIG_SQUASHFS_ZLIB=y +CONFIG_SQUASHFS_ZSTD=y +CONFIG_SRAM_EXEC=y +CONFIG_SRCU=y +CONFIG_SRF04=m +CONFIG_SRF08=m +CONFIG_SSB_B43_PCI_BRIDGE=y +CONFIG_SSB_BLOCKIO=y +CONFIG_SSB_DRIVER_GPIO=y +CONFIG_SSB_DRIVER_PCICORE=y +CONFIG_SSB_DRIVER_PCICORE_POSSIBLE=y +CONFIG_SSB_PCIHOST=y +CONFIG_SSB_PCIHOST_POSSIBLE=y +# CONFIG_SSB_PCMCIAHOST is not set +CONFIG_SSB_PCMCIAHOST_POSSIBLE=y +CONFIG_SSB_POSSIBLE=y +CONFIG_SSB_SDIOHOST=y +CONFIG_SSB_SDIOHOST_POSSIBLE=y +CONFIG_SSB_SPROM=y +CONFIG_SSFDC=m +CONFIG_SSI_PROTOCOL=m +CONFIG_STACKPROTECTOR=y +CONFIG_STACKPROTECTOR_PER_TASK=y +CONFIG_STACKPROTECTOR_STRONG=y +CONFIG_STACKTRACE=y +CONFIG_STACKTRACE_SUPPORT=y +CONFIG_STACK_TRACER=y +CONFIG_STACK_VALIDATION=y +CONFIG_STAGING_APEX_DRIVER=m +# CONFIG_STAGING_BOARD is not set +CONFIG_STAGING_GASKET_FRAMEWORK=m +CONFIG_STAGING_MEDIA=y +# CONFIG_STATIC_KEYS_SELFTEST is not set +# CONFIG_STATIC_USERMODEHELPER is not set +CONFIG_STE10XP=m +CONFIG_STK3310=m +CONFIG_STK8312=m +CONFIG_STK8BA50=m +CONFIG_STM=m +CONFIG_STMMAC_ETH=m +CONFIG_STMMAC_PCI=m +CONFIG_STMMAC_PLATFORM=m +# CONFIG_STMMAC_SELFTESTS is not set +CONFIG_STMPE_ADC=m +CONFIG_STMPE_I2C=y +CONFIG_STMPE_SPI=y +CONFIG_STMP_DEVICE=y +CONFIG_STM_DUMMY=m +CONFIG_STM_PROTO_BASIC=m +CONFIG_STM_PROTO_SYS_T=m +CONFIG_STM_SOURCE_CONSOLE=m +CONFIG_STM_SOURCE_FTRACE=m +CONFIG_STM_SOURCE_HEARTBEAT=m +CONFIG_STP=m +CONFIG_STPMIC1_WATCHDOG=m +CONFIG_STREAM_PARSER=y +CONFIG_STRICT_DEVMEM=y +CONFIG_STRICT_KERNEL_RWX=y +CONFIG_STRICT_MODULE_RWX=y +# CONFIG_STRING_SELFTEST is not set +# CONFIG_STRIP_ASM_SYMS is not set +CONFIG_STUB_CLK_HI3660=y +CONFIG_STUB_CLK_HI6220=y +CONFIG_STX104=m +CONFIG_ST_UVIS25=m +CONFIG_ST_UVIS25_I2C=m +CONFIG_ST_UVIS25_SPI=m +# CONFIG_SUN4I_EMAC is not set +# CONFIG_SUN4I_GPADC is not set +CONFIG_SUN50I_A64_CCU=y +CONFIG_SUN50I_DE2_BUS=y +CONFIG_SUN50I_ERRATUM_UNKNOWN1=y +CONFIG_SUN50I_H6_CCU=y +CONFIG_SUN50I_H6_R_CCU=y +CONFIG_SUN50I_IOMMU=y +CONFIG_SUN6I_MSGBOX=y +CONFIG_SUN8I_A83T_CCU=y +CONFIG_SUN8I_DE2_CCU=y +CONFIG_SUN8I_H3_CCU=y +CONFIG_SUN8I_R_CCU=y +CONFIG_SUN8I_THERMAL=m +CONFIG_SUNDANCE=m +# CONFIG_SUNDANCE_MMIO is not set +CONFIG_SUNGEM=m +CONFIG_SUNGEM_PHY=m +CONFIG_SUNRPC=m +CONFIG_SUNRPC_BACKCHANNEL=y +CONFIG_SUNRPC_DEBUG=y +# CONFIG_SUNRPC_DISABLE_INSECURE_ENCTYPES is not set +CONFIG_SUNRPC_GSS=m +CONFIG_SUNRPC_SWAP=y +CONFIG_SUNRPC_XPRT_RDMA=m +CONFIG_SUNXI_CCU=y +CONFIG_SUNXI_RSB=m +CONFIG_SUNXI_SRAM=y +CONFIG_SUNXI_WATCHDOG=m +CONFIG_SURFACE3_WMI=m +CONFIG_SURFACE_3_BUTTON=m +CONFIG_SURFACE_3_POWER_OPREGION=m +CONFIG_SURFACE_PRO3_BUTTON=m +CONFIG_SUSPEND=y +CONFIG_SUSPEND_FREEZER=y +# CONFIG_SUSPEND_SKIP_SYNC is not set +CONFIG_SWAP=y +CONFIG_SWIOTLB=y +CONFIG_SWIOTLB_XEN=y +CONFIG_SWPHY=y +CONFIG_SWP_EMULATE=y +CONFIG_SWP_EMULATION=y +CONFIG_SW_SYNC=y +CONFIG_SX9310=m +CONFIG_SX9500=m +CONFIG_SXGBE_ETH=m +CONFIG_SYMBOLIC_ERRNAME=y +CONFIG_SYNCLINK=m +CONFIG_SYNCLINKMP=m +CONFIG_SYNCLINK_CS=m +CONFIG_SYNCLINK_GT=m +CONFIG_SYNC_FILE=y +CONFIG_SYNTH_EVENTS=y +# CONFIG_SYNTH_EVENT_GEN_TEST is not set +CONFIG_SYN_COOKIES=y +CONFIG_SYSCON_REBOOT_MODE=m +CONFIG_SYSCTL=y +CONFIG_SYSCTL_EXCEPTION_TRACE=y +CONFIG_SYSC_R8A7742=y +CONFIG_SYSC_R8A7743=y +CONFIG_SYSC_R8A7745=y +CONFIG_SYSC_R8A77470=y +CONFIG_SYSC_R8A774A1=y +CONFIG_SYSC_R8A774B1=y +CONFIG_SYSC_R8A774C0=y +CONFIG_SYSC_R8A7779=y +CONFIG_SYSC_R8A7790=y +CONFIG_SYSC_R8A7791=y +CONFIG_SYSC_R8A7792=y +CONFIG_SYSC_R8A7794=y +CONFIG_SYSC_R8A7795=y +CONFIG_SYSC_R8A77960=y +CONFIG_SYSC_R8A77961=y +CONFIG_SYSC_R8A77965=y +CONFIG_SYSC_R8A77970=y +CONFIG_SYSC_R8A77980=y +CONFIG_SYSC_R8A77990=y +CONFIG_SYSC_R8A77995=y +CONFIG_SYSC_RCAR=y +CONFIG_SYSC_RMOBILE=y +CONFIG_SYSFS=y +# CONFIG_SYSFS_DEPRECATED is not set +CONFIG_SYSFS_SYSCALL=y +CONFIG_SYSTEM76_ACPI=m +CONFIG_SYSTEMPORT=m +CONFIG_SYSTEM_BLACKLIST_HASH_LIST="" +CONFIG_SYSTEM_BLACKLIST_KEYRING=y +CONFIG_SYSTEM_DATA_VERIFICATION=y +CONFIG_SYSTEM_EXTRA_CERTIFICATE=y +CONFIG_SYSTEM_EXTRA_CERTIFICATE_SIZE=4096 +CONFIG_SYSTEM_TRUSTED_KEYRING=y +CONFIG_SYSTEM_TRUSTED_KEYS="debian/canonical-certs.pem" +CONFIG_SYSVIPC=y +CONFIG_SYSVIPC_COMPAT=y +CONFIG_SYSVIPC_SYSCTL=y +CONFIG_SYS_HYPERVISOR=y +CONFIG_SYS_SUPPORTS_APM_EMULATION=y +CONFIG_SYS_SUPPORTS_EM_STI=y +CONFIG_SYS_SUPPORTS_HUGETLBFS=y +CONFIG_SYS_SUPPORTS_SH_CMT=y +CONFIG_SYS_SUPPORTS_SH_MTU2=y +CONFIG_SYS_SUPPORTS_SH_TMU=y +CONFIG_T5403=m +CONFIG_TABLET_SERIAL_WACOM4=m +CONFIG_TABLET_USB_ACECAD=m +CONFIG_TABLET_USB_AIPTEK=m +CONFIG_TABLET_USB_GTCO=m +CONFIG_TABLET_USB_HANWANG=m +CONFIG_TABLET_USB_KBTAB=m +CONFIG_TABLET_USB_PEGASUS=m +CONFIG_TAHVO_USB=m +CONFIG_TAHVO_USB_HOST_BY_DEFAULT=y +CONFIG_TAP=m +CONFIG_TARGET_CORE=m +CONFIG_TASKSTATS=y +CONFIG_TASKS_RCU=y +CONFIG_TASKS_RCU_GENERIC=y +CONFIG_TASKS_RUDE_RCU=y +CONFIG_TASKS_TRACE_RCU=y +CONFIG_TASK_DELAY_ACCT=y +CONFIG_TASK_IO_ACCOUNTING=y +CONFIG_TASK_XACCT=y +CONFIG_TCG_ATMEL=m +CONFIG_TCG_CRB=y +CONFIG_TCG_FTPM_TEE=m +CONFIG_TCG_IBMVTPM=y +CONFIG_TCG_INFINEON=m +CONFIG_TCG_NSC=m +CONFIG_TCG_TIS=y +CONFIG_TCG_TIS_CORE=y +CONFIG_TCG_TIS_SPI=m +CONFIG_TCG_TIS_SPI_CR50=y +CONFIG_TCG_TIS_ST33ZP24=m +CONFIG_TCG_TIS_ST33ZP24_SPI=m +CONFIG_TCG_TPM=y +CONFIG_TCG_VTPM_PROXY=m +CONFIG_TCG_XEN=m +CONFIG_TCM_FC=m +CONFIG_TCM_FILEIO=m +CONFIG_TCM_IBLOCK=m +CONFIG_TCM_PSCSI=m +CONFIG_TCM_QLA2XXX=m +# CONFIG_TCM_QLA2XXX_DEBUG is not set +CONFIG_TCM_USER2=m +CONFIG_TCP_CONG_ADVANCED=y +CONFIG_TCP_CONG_BBR=m +CONFIG_TCP_CONG_BIC=m +CONFIG_TCP_CONG_CDG=m +CONFIG_TCP_CONG_CUBIC=y +CONFIG_TCP_CONG_DCTCP=m +CONFIG_TCP_CONG_HSTCP=m +CONFIG_TCP_CONG_HTCP=m +CONFIG_TCP_CONG_HYBLA=m +CONFIG_TCP_CONG_ILLINOIS=m +CONFIG_TCP_CONG_LP=m +CONFIG_TCP_CONG_NV=m +CONFIG_TCP_CONG_SCALABLE=m +CONFIG_TCP_CONG_VEGAS=m +CONFIG_TCP_CONG_VENO=m +CONFIG_TCP_CONG_WESTWOOD=m +CONFIG_TCP_CONG_YEAH=m +CONFIG_TCP_MD5SIG=y +CONFIG_TCS3414=m +CONFIG_TCS3472=m +CONFIG_TEE=m +CONFIG_TEE_BNXT_FW=m +CONFIG_TEGRA124_EMC=y +CONFIG_TEGRA20_APB_DMA=y +CONFIG_TEGRA20_EMC=y +CONFIG_TEGRA30_EMC=y +CONFIG_TEGRA_AHB=y +CONFIG_TEGRA_BPMP=y +CONFIG_TEGRA_BPMP_THERMAL=m +CONFIG_TEGRA_CLK_DFLL=y +CONFIG_TEGRA_GMI=m +CONFIG_TEGRA_HOST1X=m +CONFIG_TEGRA_HOST1X_FIREWALL=y +CONFIG_TEGRA_HSP_MBOX=y +CONFIG_TEGRA_IOMMU_GART=y +CONFIG_TEGRA_IOMMU_SMMU=y +CONFIG_TEGRA_IVC=y +CONFIG_TEGRA_MC=y +# CONFIG_TEGRA_SOCTHERM is not set +CONFIG_TEGRA_TIMER=y +CONFIG_TEGRA_VDE=m +CONFIG_TEGRA_WATCHDOG=m +CONFIG_TEHUTI=m +CONFIG_TELCLOCK=m +CONFIG_TERANETICS_PHY=m +# CONFIG_TEST_ASYNC_DRIVER_PROBE is not set +# CONFIG_TEST_BITFIELD is not set +# CONFIG_TEST_BITMAP is not set +# CONFIG_TEST_BITOPS is not set +CONFIG_TEST_BLACKHOLE_DEV=m +CONFIG_TEST_BPF=m +# CONFIG_TEST_FIRMWARE is not set +# CONFIG_TEST_HASH is not set +# CONFIG_TEST_HEXDUMP is not set +# CONFIG_TEST_HMM is not set +# CONFIG_TEST_IDA is not set +# CONFIG_TEST_KMOD is not set +# CONFIG_TEST_KSTRTOX is not set +# CONFIG_TEST_LIST_SORT is not set +# CONFIG_TEST_LIVEPATCH is not set +# CONFIG_TEST_LKM is not set +# CONFIG_TEST_LOCKUP is not set +# CONFIG_TEST_MEMCAT_P is not set +# CONFIG_TEST_MEMINIT is not set +# CONFIG_TEST_MIN_HEAP is not set +# CONFIG_TEST_OBJAGG is not set +# CONFIG_TEST_OVERFLOW is not set +# CONFIG_TEST_PARMAN is not set +CONFIG_TEST_POWER=m +# CONFIG_TEST_PRINTF is not set +# CONFIG_TEST_RHASHTABLE is not set +# CONFIG_TEST_SORT is not set +# CONFIG_TEST_STACKINIT is not set +# CONFIG_TEST_STATIC_KEYS is not set +# CONFIG_TEST_STRING_HELPERS is not set +# CONFIG_TEST_STRSCPY is not set +# CONFIG_TEST_SYSCTL is not set +# CONFIG_TEST_UDELAY is not set +# CONFIG_TEST_USER_COPY is not set +# CONFIG_TEST_UUID is not set +# CONFIG_TEST_VMALLOC is not set +# CONFIG_TEST_XARRAY is not set +CONFIG_TEXTSEARCH=y +CONFIG_TEXTSEARCH_BM=m +CONFIG_TEXTSEARCH_FSM=m +CONFIG_TEXTSEARCH_KMP=m +# CONFIG_THERMAL_DEFAULT_GOV_FAIR_SHARE is not set +# CONFIG_THERMAL_DEFAULT_GOV_POWER_ALLOCATOR is not set +CONFIG_THERMAL_DEFAULT_GOV_STEP_WISE=y +# CONFIG_THERMAL_DEFAULT_GOV_USER_SPACE is not set +CONFIG_THERMAL_EMERGENCY_POWEROFF_DELAY_MS=0 +CONFIG_THERMAL_EMULATION=y +CONFIG_THERMAL_GOV_BANG_BANG=y +CONFIG_THERMAL_GOV_FAIR_SHARE=y +CONFIG_THERMAL_GOV_POWER_ALLOCATOR=y +CONFIG_THERMAL_GOV_STEP_WISE=y +CONFIG_THERMAL_GOV_USER_SPACE=y +CONFIG_THERMAL_HWMON=y +CONFIG_THERMAL_MMIO=m +CONFIG_THERMAL_OF=y +CONFIG_THERMAL_STATISTICS=y +CONFIG_THERMAL_WRITABLE_TRIPS=y +CONFIG_THINKPAD_ACPI=m +CONFIG_THINKPAD_ACPI_ALSA_SUPPORT=y +# CONFIG_THINKPAD_ACPI_DEBUG is not set +CONFIG_THINKPAD_ACPI_DEBUGFACILITIES=y +CONFIG_THINKPAD_ACPI_HOTKEY_POLL=y +# CONFIG_THINKPAD_ACPI_UNSAFE_LEDS is not set +CONFIG_THINKPAD_ACPI_VIDEO=y +CONFIG_THP_SWAP=y +CONFIG_THREAD_INFO_IN_TASK=y +CONFIG_THREAD_SHIFT=14 +CONFIG_THRUSTMASTER_FF=y +# CONFIG_THUMB2_KERNEL is not set +CONFIG_THUNDERX2_PMU=m +CONFIG_THUNDER_NIC_BGX=m +CONFIG_THUNDER_NIC_PF=m +CONFIG_THUNDER_NIC_RGX=m +CONFIG_THUNDER_NIC_VF=m +CONFIG_TICK_CPU_ACCOUNTING=y +CONFIG_TICK_ONESHOT=y +CONFIG_TIFM_7XX1=m +CONFIG_TIGON3=m +CONFIG_TIGON3_HWMON=y +CONFIG_TIMERFD=y +CONFIG_TIMER_ACPI=y +CONFIG_TIMER_IMX_SYS_CTR=y +CONFIG_TIMER_OF=y +CONFIG_TIMER_PROBE=y +CONFIG_TIME_NS=y +CONFIG_TINYDRM_HX8357D=m +CONFIG_TINYDRM_ILI9225=m +CONFIG_TINYDRM_ILI9341=m +CONFIG_TINYDRM_ILI9486=m +CONFIG_TINYDRM_MI0283QT=m +CONFIG_TINYDRM_REPAPER=m +CONFIG_TINYDRM_ST7586=m +CONFIG_TINYDRM_ST7735R=m +CONFIG_TIPC=m +CONFIG_TIPC_CRYPTO=y +CONFIG_TIPC_DIAG=m +CONFIG_TIPC_MEDIA_IB=y +CONFIG_TIPC_MEDIA_UDP=y +CONFIG_TI_ADC081C=m +CONFIG_TI_ADC0832=m +CONFIG_TI_ADC084S021=m +CONFIG_TI_ADC108S102=m +CONFIG_TI_ADC12138=m +CONFIG_TI_ADC128S052=m +CONFIG_TI_ADC161S626=m +CONFIG_TI_ADS1015=m +CONFIG_TI_ADS124S08=m +CONFIG_TI_ADS7950=m +CONFIG_TI_ADS8344=m +CONFIG_TI_ADS8688=m +CONFIG_TI_AM335X_ADC=m +CONFIG_TI_AM65_CPSW_TAS=y +CONFIG_TI_CPPI41=m +CONFIG_TI_CPSW=y +# CONFIG_TI_CPSW_PHY_SEL is not set +CONFIG_TI_CPSW_SWITCHDEV=m +CONFIG_TI_CPTS=y +CONFIG_TI_DAC082S085=m +CONFIG_TI_DAC5571=m +CONFIG_TI_DAC7311=m +CONFIG_TI_DAC7612=m +CONFIG_TI_DAVINCI_EMAC=m +CONFIG_TI_DAVINCI_MDIO=y +CONFIG_TI_DMA_CROSSBAR=y +CONFIG_TI_EDMA=y +CONFIG_TI_EMIF=m +CONFIG_TI_EMIF_SRAM=m +CONFIG_TI_EQEP=m +CONFIG_TI_K3_AM65_CPSW_NUSS=m +CONFIG_TI_K3_AM65_CPTS=m +CONFIG_TI_K3_PSIL=y +CONFIG_TI_K3_RINGACC=y +CONFIG_TI_K3_UDMA=y +CONFIG_TI_K3_UDMA_GLUE_LAYER=y +CONFIG_TI_MESSAGE_MANAGER=y +CONFIG_TI_PIPE3=m +CONFIG_TI_PWMSS=y +CONFIG_TI_SCI_CLK=m +# CONFIG_TI_SCI_CLK_PROBE_FROM_FW is not set +CONFIG_TI_SCI_INTA_IRQCHIP=y +CONFIG_TI_SCI_INTA_MSI_DOMAIN=y +CONFIG_TI_SCI_INTR_IRQCHIP=y +CONFIG_TI_SCI_PM_DOMAINS=m +CONFIG_TI_SCI_PROTOCOL=y +CONFIG_TI_ST=m +CONFIG_TI_SYSC=y +CONFIG_TI_SYSCON_CLK=y +CONFIG_TI_THERMAL=y +CONFIG_TI_TLC4541=m +CONFIG_TLAN=m +CONFIG_TLS=m +CONFIG_TLS_DEVICE=y +# CONFIG_TLS_TOE is not set +CONFIG_TMD_HERMES=m +CONFIG_TMP006=m +CONFIG_TMP007=m +CONFIG_TMPFS=y +CONFIG_TMPFS_POSIX_ACL=y +CONFIG_TMPFS_XATTR=y +CONFIG_TN3215=y +CONFIG_TN3215_CONSOLE=y +CONFIG_TN3270=y +CONFIG_TN3270_CONSOLE=y +CONFIG_TN3270_FS=m +CONFIG_TN3270_TTY=y +CONFIG_TOPSTAR_LAPTOP=m +CONFIG_TORTURE_TEST=m +CONFIG_TOSHIBA_BT_RFKILL=m +CONFIG_TOSHIBA_HAPS=m +# CONFIG_TOSHIBA_WMI is not set +CONFIG_TOUCHSCREEN_88PM860X=m +CONFIG_TOUCHSCREEN_AD7877=m +CONFIG_TOUCHSCREEN_AD7879=m +CONFIG_TOUCHSCREEN_AD7879_I2C=m +CONFIG_TOUCHSCREEN_AD7879_SPI=m +CONFIG_TOUCHSCREEN_ADC=m +CONFIG_TOUCHSCREEN_ADS7846=m +CONFIG_TOUCHSCREEN_AR1021_I2C=m +CONFIG_TOUCHSCREEN_ATMEL_MXT=m +CONFIG_TOUCHSCREEN_ATMEL_MXT_T37=y +CONFIG_TOUCHSCREEN_AUO_PIXCIR=m +CONFIG_TOUCHSCREEN_BU21013=m +CONFIG_TOUCHSCREEN_BU21029=m +CONFIG_TOUCHSCREEN_CHIPONE_ICN8318=m +CONFIG_TOUCHSCREEN_CHIPONE_ICN8505=m +CONFIG_TOUCHSCREEN_COLIBRI_VF50=m +CONFIG_TOUCHSCREEN_CY8CTMA140=m +CONFIG_TOUCHSCREEN_CY8CTMG110=m +CONFIG_TOUCHSCREEN_CYTTSP4_CORE=m +CONFIG_TOUCHSCREEN_CYTTSP4_I2C=m +CONFIG_TOUCHSCREEN_CYTTSP4_SPI=m +CONFIG_TOUCHSCREEN_CYTTSP_CORE=m +CONFIG_TOUCHSCREEN_CYTTSP_I2C=m +CONFIG_TOUCHSCREEN_CYTTSP_SPI=m +CONFIG_TOUCHSCREEN_DA9034=m +CONFIG_TOUCHSCREEN_DA9052=m +CONFIG_TOUCHSCREEN_DMI=y +CONFIG_TOUCHSCREEN_DYNAPRO=m +CONFIG_TOUCHSCREEN_EDT_FT5X06=m +CONFIG_TOUCHSCREEN_EETI=m +CONFIG_TOUCHSCREEN_EGALAX=m +CONFIG_TOUCHSCREEN_EGALAX_SERIAL=m +CONFIG_TOUCHSCREEN_EKTF2127=m +CONFIG_TOUCHSCREEN_ELO=m +CONFIG_TOUCHSCREEN_EXC3000=m +CONFIG_TOUCHSCREEN_FUJITSU=m +CONFIG_TOUCHSCREEN_GOODIX=m +CONFIG_TOUCHSCREEN_GUNZE=m +CONFIG_TOUCHSCREEN_HAMPSHIRE=m +CONFIG_TOUCHSCREEN_HIDEEP=m +CONFIG_TOUCHSCREEN_ILI210X=m +CONFIG_TOUCHSCREEN_IMX6UL_TSC=m +CONFIG_TOUCHSCREEN_INEXIO=m +CONFIG_TOUCHSCREEN_IPROC=m +CONFIG_TOUCHSCREEN_IQS5XX=m +CONFIG_TOUCHSCREEN_MAX11801=m +CONFIG_TOUCHSCREEN_MC13783=m +CONFIG_TOUCHSCREEN_MCS5000=m +CONFIG_TOUCHSCREEN_MELFAS_MIP4=m +CONFIG_TOUCHSCREEN_MK712=m +CONFIG_TOUCHSCREEN_MMS114=m +CONFIG_TOUCHSCREEN_MTOUCH=m +CONFIG_TOUCHSCREEN_PCAP=m +CONFIG_TOUCHSCREEN_PENMOUNT=m +CONFIG_TOUCHSCREEN_PIXCIR=m +CONFIG_TOUCHSCREEN_PROPERTIES=y +CONFIG_TOUCHSCREEN_RASPBERRYPI_FW=m +CONFIG_TOUCHSCREEN_RM_TS=m +CONFIG_TOUCHSCREEN_ROHM_BU21023=m +CONFIG_TOUCHSCREEN_S6SY761=m +CONFIG_TOUCHSCREEN_SILEAD=m +CONFIG_TOUCHSCREEN_SIS_I2C=m +CONFIG_TOUCHSCREEN_ST1232=m +CONFIG_TOUCHSCREEN_STMFTS=m +CONFIG_TOUCHSCREEN_STMPE=m +# CONFIG_TOUCHSCREEN_SUN4I is not set +CONFIG_TOUCHSCREEN_SUR40=m +CONFIG_TOUCHSCREEN_SURFACE3_SPI=m +CONFIG_TOUCHSCREEN_SX8654=m +CONFIG_TOUCHSCREEN_TI_AM335X_TSC=m +CONFIG_TOUCHSCREEN_TOUCHIT213=m +CONFIG_TOUCHSCREEN_TOUCHRIGHT=m +CONFIG_TOUCHSCREEN_TOUCHWIN=m +CONFIG_TOUCHSCREEN_TPS6507X=m +CONFIG_TOUCHSCREEN_TS4800=m +CONFIG_TOUCHSCREEN_TSC2004=m +CONFIG_TOUCHSCREEN_TSC2005=m +CONFIG_TOUCHSCREEN_TSC2007=m +CONFIG_TOUCHSCREEN_TSC2007_IIO=y +CONFIG_TOUCHSCREEN_TSC200X_CORE=m +CONFIG_TOUCHSCREEN_TSC_SERIO=m +CONFIG_TOUCHSCREEN_UCB1400=m +CONFIG_TOUCHSCREEN_USB_3M=y +CONFIG_TOUCHSCREEN_USB_COMPOSITE=m +CONFIG_TOUCHSCREEN_USB_DMC_TSC10=y +CONFIG_TOUCHSCREEN_USB_E2I=y +CONFIG_TOUCHSCREEN_USB_EASYTOUCH=y +CONFIG_TOUCHSCREEN_USB_EGALAX=y +CONFIG_TOUCHSCREEN_USB_ELO=y +CONFIG_TOUCHSCREEN_USB_ETT_TC45USB=y +CONFIG_TOUCHSCREEN_USB_ETURBO=y +CONFIG_TOUCHSCREEN_USB_GENERAL_TOUCH=y +CONFIG_TOUCHSCREEN_USB_GOTOP=y +CONFIG_TOUCHSCREEN_USB_GUNZE=y +CONFIG_TOUCHSCREEN_USB_IDEALTEK=y +CONFIG_TOUCHSCREEN_USB_IRTOUCH=y +CONFIG_TOUCHSCREEN_USB_ITM=y +CONFIG_TOUCHSCREEN_USB_JASTEC=y +CONFIG_TOUCHSCREEN_USB_NEXIO=y +CONFIG_TOUCHSCREEN_USB_PANJIT=y +CONFIG_TOUCHSCREEN_USB_ZYTRONIC=y +CONFIG_TOUCHSCREEN_WACOM_I2C=m +CONFIG_TOUCHSCREEN_WACOM_W8001=m +CONFIG_TOUCHSCREEN_WDT87XX_I2C=m +CONFIG_TOUCHSCREEN_WM831X=m +CONFIG_TOUCHSCREEN_WM9705=y +CONFIG_TOUCHSCREEN_WM9712=y +CONFIG_TOUCHSCREEN_WM9713=y +CONFIG_TOUCHSCREEN_WM97XX=m +CONFIG_TOUCHSCREEN_ZET6223=m +CONFIG_TOUCHSCREEN_ZFORCE=m +CONFIG_TPL0102=m +CONFIG_TPM_KEY_PARSER=m +CONFIG_TPS68470_PMIC_OPREGION=y +CONFIG_TQMX86_WDT=m +CONFIG_TRACEPOINTS=y +# CONFIG_TRACEPOINT_BENCHMARK is not set +CONFIG_TRACER_MAX_TRACE=y +CONFIG_TRACER_SNAPSHOT=y +# CONFIG_TRACER_SNAPSHOT_PER_CPU_SWAP is not set +CONFIG_TRACE_CLOCK=y +# CONFIG_TRACE_EVAL_MAP_FILE is not set +CONFIG_TRACE_EVENT_INJECT=y +CONFIG_TRACE_IRQFLAGS_SUPPORT=y +CONFIG_TRACE_ROUTER=m +CONFIG_TRACING=y +CONFIG_TRACING_MAP=y +CONFIG_TRACING_SUPPORT=y +CONFIG_TRANSPARENT_HUGEPAGE=y +CONFIG_TREE_RCU=y +CONFIG_TREE_SRCU=y +CONFIG_TRUSTED_FOUNDATIONS=y +CONFIG_TRUSTED_KEYS=y +CONFIG_TS4800_IRQ=m +CONFIG_TS4800_WATCHDOG=m +CONFIG_TSL2583=m +CONFIG_TSL2772=m +CONFIG_TSL4531=m +CONFIG_TSYS01=m +CONFIG_TSYS02D=m +CONFIG_TTPCI_EEPROM=m +CONFIG_TTY=y +CONFIG_TTY_PRINTK_LEVEL=6 +CONFIG_TULIP=m +# CONFIG_TULIP_MMIO is not set +# CONFIG_TULIP_MWI is not set +# CONFIG_TULIP_NAPI is not set +CONFIG_TUN=y +# CONFIG_TUNE_DEFAULT is not set +# CONFIG_TUNE_Z10 is not set +# CONFIG_TUNE_Z13 is not set +# CONFIG_TUNE_Z14 is not set +CONFIG_TUNE_Z15=y +# CONFIG_TUNE_Z196 is not set +# CONFIG_TUNE_Z900 is not set +# CONFIG_TUNE_Z990 is not set +# CONFIG_TUNE_Z9_109 is not set +# CONFIG_TUNE_ZEC12 is not set +# CONFIG_TUN_VNET_CROSS_LE is not set +CONFIG_TURRIS_MOX_RWTM=m +CONFIG_TWL4030_CORE=y +CONFIG_TWL4030_MADC=m +CONFIG_TWL4030_POWER=y +CONFIG_TWL4030_USB=m +CONFIG_TWL4030_WATCHDOG=m +CONFIG_TWL6030_GPADC=m +CONFIG_TWL6030_USB=m +CONFIG_TWL6040_CORE=y +CONFIG_TYPEC=m +CONFIG_TYPEC_DP_ALTMODE=m +CONFIG_TYPEC_FUSB302=m +CONFIG_TYPEC_HD3SS3220=m +CONFIG_TYPEC_MUX_INTEL_PMC=m +CONFIG_TYPEC_MUX_PI3USB30532=m +CONFIG_TYPEC_NVIDIA_ALTMODE=m +CONFIG_TYPEC_RT1711H=m +CONFIG_TYPEC_TCPCI=m +CONFIG_TYPEC_TCPM=m +CONFIG_TYPEC_TPS6598X=m +CONFIG_TYPEC_UCSI=m +# CONFIG_TYPEC_WCOVE is not set +CONFIG_TYPHOON=m +# CONFIG_UACCESS_WITH_MEMCPY is not set +# CONFIG_UBIFS_ATIME_SUPPORT is not set +CONFIG_UBIFS_FS=m +# CONFIG_UBIFS_FS_ADVANCED_COMPR is not set +CONFIG_UBIFS_FS_AUTHENTICATION=y +CONFIG_UBIFS_FS_LZO=y +CONFIG_UBIFS_FS_SECURITY=y +CONFIG_UBIFS_FS_XATTR=y +CONFIG_UBIFS_FS_ZLIB=y +CONFIG_UBIFS_FS_ZSTD=y +# CONFIG_UBSAN is not set +CONFIG_UBUNTU_HOST=m +CONFIG_UCB1400_CORE=m +CONFIG_UCC=y +CONFIG_UCC_FAST=y +CONFIG_UCC_SLOW=y +CONFIG_UCLAMP_BUCKETS_COUNT=5 +CONFIG_UCLAMP_TASK=y +CONFIG_UCLAMP_TASK_GROUP=y +CONFIG_UCS2_STRING=y +CONFIG_UCSI_ACPI=m +CONFIG_UCSI_CCG=m +# CONFIG_UDBG_RTAS_CONSOLE is not set +CONFIG_UDF_FS=m +CONFIG_UDMABUF=y +CONFIG_UEFI_CPER=y +CONFIG_UEFI_CPER_ARM=y +CONFIG_UEFI_CPER_X86=y +CONFIG_UEVENT_HELPER=y +CONFIG_UEVENT_HELPER_PATH="" +# CONFIG_UFS_DEBUG is not set +# CONFIG_UFS_FS_WRITE is not set +CONFIG_UHID=m +CONFIG_UID16=y +CONFIG_UIO=m +CONFIG_UIO_FSL_ELBC_GPCM=m +# CONFIG_UIO_FSL_ELBC_GPCM_NETX5152 is not set +CONFIG_UIO_HV_GENERIC=m +CONFIG_ULI526X=m +CONFIG_UNCOMPRESS_INCLUDE="debug/uncompress.h" +CONFIG_UNICODE=y +# CONFIG_UNICODE_NORMALIZATION_SELFTEST is not set +CONFIG_UNINLINE_SPIN_UNLOCK=y +CONFIG_UNIPHIER_EFUSE=m +CONFIG_UNIPHIER_MDMAC=m +CONFIG_UNIPHIER_SYSTEM_BUS=y +CONFIG_UNIPHIER_THERMAL=m +CONFIG_UNIPHIER_WATCHDOG=m +CONFIG_UNIPHIER_XDMAC=m +CONFIG_UNISYSSPAR=y +CONFIG_UNISYS_VISORBUS=m +CONFIG_UNISYS_VISORHBA=m +CONFIG_UNISYS_VISORINPUT=m +CONFIG_UNISYS_VISORNIC=m +CONFIG_UNIX=y +CONFIG_UNIX98_PTYS=y +CONFIG_UNIX_DIAG=m +CONFIG_UNIX_SCM=y +CONFIG_UNMAP_KERNEL_AT_EL0=y +CONFIG_UNUSED_SYMBOLS=y +CONFIG_UNWINDER_FRAME_POINTER=y +# CONFIG_UNWINDER_GUESS is not set +# CONFIG_UNWINDER_ORC is not set +CONFIG_UPROBES=y +CONFIG_UPROBE_EVENTS=y +CONFIG_US5182D=m +CONFIG_USB=y +CONFIG_USB4_NET=m +CONFIG_USBIP_CORE=m +# CONFIG_USBIP_DEBUG is not set +CONFIG_USBIP_HOST=m +CONFIG_USBIP_VHCI_HCD=m +CONFIG_USBIP_VHCI_HC_PORTS=8 +CONFIG_USBIP_VHCI_NR_HCS=1 +CONFIG_USBIP_VUDC=m +CONFIG_USBPCWATCHDOG=m +CONFIG_USB_ACM=m +CONFIG_USB_ADUTUX=m +CONFIG_USB_AIRSPY=m +CONFIG_USB_ALI_M5632=y +CONFIG_USB_AMD5536UDC=m +CONFIG_USB_AN2720=y +CONFIG_USB_ANNOUNCE_NEW_DEVICES=y +CONFIG_USB_APPLEDISPLAY=m +CONFIG_USB_ARCH_HAS_HCD=y +CONFIG_USB_ARMLINUX=y +CONFIG_USB_ASPEED_VHUB=m +CONFIG_USB_ATM=m +CONFIG_USB_AUDIO=m +CONFIG_USB_AUTOSUSPEND_DELAY=2 +CONFIG_USB_BDC_UDC=m +CONFIG_USB_BELKIN=y +CONFIG_USB_BRCMSTB=m +CONFIG_USB_C67X00_HCD=m +CONFIG_USB_CATC=m +CONFIG_USB_CDC_COMPOSITE=m +CONFIG_USB_CDC_PHONET=m +CONFIG_USB_CDNS3=m +CONFIG_USB_CDNS3_GADGET=y +CONFIG_USB_CDNS3_HOST=y +CONFIG_USB_CDNS3_IMX=m +CONFIG_USB_CDNS3_PCI_WRAP=m +CONFIG_USB_CDNS3_TI=m +CONFIG_USB_CHAOSKEY=m +CONFIG_USB_CHIPIDEA=m +CONFIG_USB_CHIPIDEA_GENERIC=m +CONFIG_USB_CHIPIDEA_HOST=y +CONFIG_USB_CHIPIDEA_IMX=m +CONFIG_USB_CHIPIDEA_MSM=m +CONFIG_USB_CHIPIDEA_PCI=m +CONFIG_USB_CHIPIDEA_TEGRA=m +CONFIG_USB_CHIPIDEA_UDC=y +CONFIG_USB_COMMON=y +CONFIG_USB_CONFIGFS=m +CONFIG_USB_CONFIGFS_ACM=y +CONFIG_USB_CONFIGFS_ECM=y +CONFIG_USB_CONFIGFS_ECM_SUBSET=y +CONFIG_USB_CONFIGFS_EEM=y +CONFIG_USB_CONFIGFS_F_FS=y +CONFIG_USB_CONFIGFS_F_HID=y +CONFIG_USB_CONFIGFS_F_LB_SS=y +CONFIG_USB_CONFIGFS_F_MIDI=y +CONFIG_USB_CONFIGFS_F_PRINTER=y +CONFIG_USB_CONFIGFS_F_TCM=y +CONFIG_USB_CONFIGFS_F_UAC1=y +CONFIG_USB_CONFIGFS_F_UAC1_LEGACY=y +CONFIG_USB_CONFIGFS_F_UAC2=y +CONFIG_USB_CONFIGFS_F_UVC=y +CONFIG_USB_CONFIGFS_MASS_STORAGE=y +CONFIG_USB_CONFIGFS_NCM=y +CONFIG_USB_CONFIGFS_OBEX=y +CONFIG_USB_CONFIGFS_PHONET=y +CONFIG_USB_CONFIGFS_RNDIS=y +CONFIG_USB_CONFIGFS_SERIAL=y +CONFIG_USB_CONN_GPIO=m +CONFIG_USB_CXACRU=m +CONFIG_USB_CYPRESS_CY7C63=m +CONFIG_USB_CYTHERM=m +CONFIG_USB_DEFAULT_PERSIST=y +CONFIG_USB_DSBR=m +# CONFIG_USB_DUMMY_HCD is not set +CONFIG_USB_DWC2=y +# CONFIG_USB_DWC2_DEBUG is not set +# CONFIG_USB_DWC2_DUAL_ROLE is not set +CONFIG_USB_DWC2_HOST=y +# CONFIG_USB_DWC2_PERIPHERAL is not set +# CONFIG_USB_DWC2_TRACK_MISSED_SOFS is not set +CONFIG_USB_DWC3=m +CONFIG_USB_DWC3_DUAL_ROLE=y +CONFIG_USB_DWC3_EXYNOS=m +# CONFIG_USB_DWC3_GADGET is not set +CONFIG_USB_DWC3_HAPS=m +# CONFIG_USB_DWC3_HOST is not set +CONFIG_USB_DWC3_KEYSTONE=m +CONFIG_USB_DWC3_MESON_G12A=m +CONFIG_USB_DWC3_OF_SIMPLE=m +CONFIG_USB_DWC3_OMAP=m +CONFIG_USB_DWC3_PCI=m +CONFIG_USB_DWC3_QCOM=m +CONFIG_USB_DWC3_ULPI=y +CONFIG_USB_DYNAMIC_MINORS=y +CONFIG_USB_EG20T=m +CONFIG_USB_EHCI_BRCMSTB=m +CONFIG_USB_EHCI_EXYNOS=y +CONFIG_USB_EHCI_FSL=m +CONFIG_USB_EHCI_HCD=y +CONFIG_USB_EHCI_HCD_NPCM7XX=m +CONFIG_USB_EHCI_HCD_OMAP=m +CONFIG_USB_EHCI_HCD_ORION=y +CONFIG_USB_EHCI_HCD_PPC_OF=y +CONFIG_USB_EHCI_MXC=m +CONFIG_USB_EHCI_PCI=y +CONFIG_USB_EHCI_ROOT_HUB_TT=y +CONFIG_USB_EHCI_TEGRA=m +CONFIG_USB_EHCI_TT_NEWSCHED=y +CONFIG_USB_EHSET_TEST_FIXTURE=m +CONFIG_USB_EMI26=m +CONFIG_USB_EMI62=m +CONFIG_USB_EPSON2888=y +CONFIG_USB_ETH=m +CONFIG_USB_ETH_EEM=y +CONFIG_USB_ETH_RNDIS=y +CONFIG_USB_EZUSB_FX2=m +CONFIG_USB_FHCI_HCD=m +CONFIG_USB_FOTG210_HCD=m +CONFIG_USB_FOTG210_UDC=m +CONFIG_USB_FSL_USB2=m +CONFIG_USB_FTDI_ELAN=m +CONFIG_USB_FUNCTIONFS=m +CONFIG_USB_FUNCTIONFS_ETH=y +CONFIG_USB_FUNCTIONFS_GENERIC=y +CONFIG_USB_FUNCTIONFS_RNDIS=y +CONFIG_USB_FUSB300=m +CONFIG_USB_F_ACM=m +CONFIG_USB_F_ECM=m +CONFIG_USB_F_EEM=m +CONFIG_USB_F_FS=m +CONFIG_USB_F_HID=m +CONFIG_USB_F_MASS_STORAGE=m +CONFIG_USB_F_MIDI=m +CONFIG_USB_F_NCM=m +CONFIG_USB_F_OBEX=m +CONFIG_USB_F_PHONET=m +CONFIG_USB_F_PRINTER=m +CONFIG_USB_F_RNDIS=m +CONFIG_USB_F_SERIAL=m +CONFIG_USB_F_SS_LB=m +CONFIG_USB_F_SUBSET=m +CONFIG_USB_F_TCM=m +CONFIG_USB_F_UAC1=m +CONFIG_USB_F_UAC1_LEGACY=m +CONFIG_USB_F_UAC2=m +CONFIG_USB_F_UVC=m +CONFIG_USB_GADGETFS=m +# CONFIG_USB_GADGET_DEBUG is not set +# CONFIG_USB_GADGET_DEBUG_FILES is not set +# CONFIG_USB_GADGET_DEBUG_FS is not set +CONFIG_USB_GADGET_STORAGE_NUM_BUFFERS=2 +CONFIG_USB_GADGET_TARGET=m +CONFIG_USB_GADGET_VBUS_DRAW=2 +CONFIG_USB_GADGET_XILINX=m +CONFIG_USB_GL860=m +CONFIG_USB_GOKU=m +CONFIG_USB_GPIO_VBUS=m +CONFIG_USB_GR_UDC=m +CONFIG_USB_GSPCA=m +CONFIG_USB_GSPCA_BENQ=m +CONFIG_USB_GSPCA_CONEX=m +CONFIG_USB_GSPCA_CPIA1=m +CONFIG_USB_GSPCA_DTCS033=m +CONFIG_USB_GSPCA_ETOMS=m +CONFIG_USB_GSPCA_FINEPIX=m +CONFIG_USB_GSPCA_JEILINJ=m +CONFIG_USB_GSPCA_JL2005BCD=m +CONFIG_USB_GSPCA_KINECT=m +CONFIG_USB_GSPCA_KONICA=m +CONFIG_USB_GSPCA_MARS=m +CONFIG_USB_GSPCA_MR97310A=m +CONFIG_USB_GSPCA_NW80X=m +CONFIG_USB_GSPCA_OV519=m +CONFIG_USB_GSPCA_OV534=m +CONFIG_USB_GSPCA_OV534_9=m +CONFIG_USB_GSPCA_PAC207=m +CONFIG_USB_GSPCA_PAC7302=m +CONFIG_USB_GSPCA_PAC7311=m +CONFIG_USB_GSPCA_SE401=m +CONFIG_USB_GSPCA_SN9C2028=m +CONFIG_USB_GSPCA_SN9C20X=m +CONFIG_USB_GSPCA_SONIXB=m +CONFIG_USB_GSPCA_SONIXJ=m +CONFIG_USB_GSPCA_SPCA1528=m +CONFIG_USB_GSPCA_SPCA500=m +CONFIG_USB_GSPCA_SPCA501=m +CONFIG_USB_GSPCA_SPCA505=m +CONFIG_USB_GSPCA_SPCA506=m +CONFIG_USB_GSPCA_SPCA508=m +CONFIG_USB_GSPCA_SPCA561=m +CONFIG_USB_GSPCA_SQ905=m +CONFIG_USB_GSPCA_SQ905C=m +CONFIG_USB_GSPCA_SQ930X=m +CONFIG_USB_GSPCA_STK014=m +CONFIG_USB_GSPCA_STK1135=m +CONFIG_USB_GSPCA_STV0680=m +CONFIG_USB_GSPCA_SUNPLUS=m +CONFIG_USB_GSPCA_T613=m +CONFIG_USB_GSPCA_TOPRO=m +CONFIG_USB_GSPCA_TOUPTEK=m +CONFIG_USB_GSPCA_TV8532=m +CONFIG_USB_GSPCA_VC032X=m +CONFIG_USB_GSPCA_VICAM=m +CONFIG_USB_GSPCA_XIRLINK_CIT=m +CONFIG_USB_GSPCA_ZC3XX=m +CONFIG_USB_G_ACM_MS=m +CONFIG_USB_G_DBGP=m +# CONFIG_USB_G_DBGP_PRINTK is not set +CONFIG_USB_G_DBGP_SERIAL=y +CONFIG_USB_G_HID=m +CONFIG_USB_G_MULTI_CDC=y +CONFIG_USB_G_MULTI_RNDIS=y +CONFIG_USB_G_NCM=m +CONFIG_USB_G_NOKIA=m +CONFIG_USB_G_PRINTER=m +CONFIG_USB_G_SERIAL=m +CONFIG_USB_G_WEBCAM=m +CONFIG_USB_HACKRF=m +# CONFIG_USB_HCD_TEST_MODE is not set +CONFIG_USB_HID=m +CONFIG_USB_HIDDEV=y +CONFIG_USB_HSIC_USB3503=m +CONFIG_USB_HSIC_USB4604=m +CONFIG_USB_HSO=m +CONFIG_USB_HUB_USB251XB=m +CONFIG_USB_IDMOUSE=m +CONFIG_USB_IMX21_HCD=m +CONFIG_USB_IOWARRIOR=m +CONFIG_USB_IPHETH=m +CONFIG_USB_ISIGHTFW=m +CONFIG_USB_ISP116X_HCD=m +CONFIG_USB_ISP1301=m +CONFIG_USB_ISP1760=m +CONFIG_USB_ISP1760_DUAL_ROLE=y +# CONFIG_USB_ISP1760_GADGET_ROLE is not set +CONFIG_USB_ISP1760_HCD=y +# CONFIG_USB_ISP1760_HOST_ROLE is not set +CONFIG_USB_ISP1761_UDC=y +CONFIG_USB_KAWETH=m +CONFIG_USB_KBD=m +CONFIG_USB_KC2190=y +CONFIG_USB_KEENE=m +CONFIG_USB_LAN78XX=m +CONFIG_USB_LCD=m +CONFIG_USB_LD=m +CONFIG_USB_LEDS_TRIGGER_USBPORT=m +CONFIG_USB_LED_TRIG=y +CONFIG_USB_LEGOTOWER=m +CONFIG_USB_LIBCOMPOSITE=m +CONFIG_USB_LINK_LAYER_TEST=m +CONFIG_USB_M5602=m +# CONFIG_USB_M66592 is not set +CONFIG_USB_MA901=m +CONFIG_USB_MASS_STORAGE=m +CONFIG_USB_MAX3420_UDC=m +CONFIG_USB_MAX3421_HCD=m +CONFIG_USB_MDC800=m +CONFIG_USB_MICROTEK=m +CONFIG_USB_MIDI_GADGET=m +CONFIG_USB_MON=m +CONFIG_USB_MOUSE=m +CONFIG_USB_MR800=m +CONFIG_USB_MSI2500=m +CONFIG_USB_MTU3=m +# CONFIG_USB_MTU3_DEBUG is not set +CONFIG_USB_MTU3_DUAL_ROLE=y +# CONFIG_USB_MTU3_GADGET is not set +# CONFIG_USB_MTU3_HOST is not set +CONFIG_USB_MUSB_AM35X=m +CONFIG_USB_MUSB_DSPS=m +CONFIG_USB_MUSB_DUAL_ROLE=y +# CONFIG_USB_MUSB_GADGET is not set +# CONFIG_USB_MUSB_HOST is not set +CONFIG_USB_MUSB_MEDIATEK=m +CONFIG_USB_MUSB_OMAP2PLUS=m +CONFIG_USB_MUSB_SUNXI=m +CONFIG_USB_MUSB_TUSB6010=m +CONFIG_USB_MV_U3D=m +CONFIG_USB_MV_UDC=m +CONFIG_USB_MXS_PHY=y +CONFIG_USB_NET2272=m +CONFIG_USB_NET2272_DMA=y +CONFIG_USB_NET2280=m +CONFIG_USB_NET_AQC111=m +CONFIG_USB_NET_AX88179_178A=m +CONFIG_USB_NET_AX8817X=m +CONFIG_USB_NET_CDCETHER=m +CONFIG_USB_NET_CDC_EEM=m +CONFIG_USB_NET_CDC_MBIM=m +CONFIG_USB_NET_CDC_NCM=m +CONFIG_USB_NET_CDC_SUBSET=m +CONFIG_USB_NET_CDC_SUBSET_ENABLE=m +CONFIG_USB_NET_CH9200=m +CONFIG_USB_NET_CX82310_ETH=m +CONFIG_USB_NET_DM9601=m +CONFIG_USB_NET_DRIVERS=m +CONFIG_USB_NET_GL620A=m +CONFIG_USB_NET_HUAWEI_CDC_NCM=m +CONFIG_USB_NET_INT51X1=m +CONFIG_USB_NET_KALMIA=m +CONFIG_USB_NET_MCS7830=m +CONFIG_USB_NET_NET1080=m +CONFIG_USB_NET_PLUSB=m +CONFIG_USB_NET_QMI_WWAN=m +CONFIG_USB_NET_RNDIS_HOST=m +CONFIG_USB_NET_RNDIS_WLAN=m +CONFIG_USB_NET_SMSC75XX=m +CONFIG_USB_NET_SMSC95XX=m +CONFIG_USB_NET_SR9700=m +CONFIG_USB_NET_SR9800=m +CONFIG_USB_NET_ZAURUS=m +CONFIG_USB_OHCI_EXYNOS=y +CONFIG_USB_OHCI_HCD=y +CONFIG_USB_OHCI_HCD_OMAP3=m +CONFIG_USB_OHCI_HCD_PCI=y +# CONFIG_USB_OHCI_HCD_PPC_OF_BE is not set +# CONFIG_USB_OHCI_HCD_PPC_OF_LE is not set +CONFIG_USB_OHCI_LITTLE_ENDIAN=y +# CONFIG_USB_OTG is not set +# CONFIG_USB_OTG_BLACKLIST_HUB is not set +# CONFIG_USB_OTG_WHITELIST is not set +CONFIG_USB_OXU210HP_HCD=m +CONFIG_USB_PCI=y +CONFIG_USB_PEGASUS=m +CONFIG_USB_PHY=y +CONFIG_USB_PRINTER=m +CONFIG_USB_PULSE8_CEC=m +CONFIG_USB_PWC=m +# CONFIG_USB_PWC_DEBUG is not set +CONFIG_USB_PWC_INPUT_EVDEV=y +CONFIG_USB_PXA27X=m +CONFIG_USB_R8A66597=m +CONFIG_USB_R8A66597_HCD=m +CONFIG_USB_RAINSHADOW_CEC=m +CONFIG_USB_RAREMONO=m +CONFIG_USB_RAW_GADGET=m +CONFIG_USB_RENESAS_USB3=m +CONFIG_USB_RENESAS_USBHS=m +CONFIG_USB_RENESAS_USBHS_HCD=m +CONFIG_USB_RENESAS_USBHS_UDC=m +CONFIG_USB_ROLES_INTEL_XHCI=m +CONFIG_USB_RTL8150=m +CONFIG_USB_RTL8152=m +CONFIG_USB_S2255=m +CONFIG_USB_SERIAL=m +CONFIG_USB_SERIAL_AIRCABLE=m +CONFIG_USB_SERIAL_ARK3116=m +CONFIG_USB_SERIAL_BELKIN=m +CONFIG_USB_SERIAL_CH341=m +CONFIG_USB_SERIAL_CP210X=m +CONFIG_USB_SERIAL_CYBERJACK=m +CONFIG_USB_SERIAL_CYPRESS_M8=m +CONFIG_USB_SERIAL_DEBUG=m +CONFIG_USB_SERIAL_DIGI_ACCELEPORT=m +CONFIG_USB_SERIAL_EDGEPORT=m +CONFIG_USB_SERIAL_EDGEPORT_TI=m +CONFIG_USB_SERIAL_EMPEG=m +CONFIG_USB_SERIAL_F81232=m +CONFIG_USB_SERIAL_F8153X=m +CONFIG_USB_SERIAL_FTDI_SIO=m +CONFIG_USB_SERIAL_GARMIN=m +CONFIG_USB_SERIAL_GENERIC=y +CONFIG_USB_SERIAL_IPAQ=m +CONFIG_USB_SERIAL_IPW=m +CONFIG_USB_SERIAL_IR=m +CONFIG_USB_SERIAL_IUU=m +CONFIG_USB_SERIAL_KEYSPAN=m +CONFIG_USB_SERIAL_KEYSPAN_PDA=m +CONFIG_USB_SERIAL_KLSI=m +CONFIG_USB_SERIAL_KOBIL_SCT=m +CONFIG_USB_SERIAL_MCT_U232=m +CONFIG_USB_SERIAL_METRO=m +CONFIG_USB_SERIAL_MOS7715_PARPORT=y +CONFIG_USB_SERIAL_MOS7720=m +CONFIG_USB_SERIAL_MOS7840=m +CONFIG_USB_SERIAL_MXUPORT=m +CONFIG_USB_SERIAL_NAVMAN=m +CONFIG_USB_SERIAL_OMNINET=m +CONFIG_USB_SERIAL_OPTICON=m +CONFIG_USB_SERIAL_OPTION=m +CONFIG_USB_SERIAL_OTI6858=m +CONFIG_USB_SERIAL_PL2303=m +CONFIG_USB_SERIAL_QCAUX=m +CONFIG_USB_SERIAL_QT2=m +CONFIG_USB_SERIAL_QUALCOMM=m +CONFIG_USB_SERIAL_SAFE=m +# CONFIG_USB_SERIAL_SAFE_PADDED is not set +CONFIG_USB_SERIAL_SIERRAWIRELESS=m +CONFIG_USB_SERIAL_SIMPLE=m +CONFIG_USB_SERIAL_SPCP8X5=m +CONFIG_USB_SERIAL_SSU100=m +CONFIG_USB_SERIAL_SYMBOL=m +CONFIG_USB_SERIAL_TI=m +CONFIG_USB_SERIAL_UPD78F0730=m +CONFIG_USB_SERIAL_VISOR=m +CONFIG_USB_SERIAL_WHITEHEAT=m +CONFIG_USB_SERIAL_WISHBONE=m +CONFIG_USB_SERIAL_WWAN=m +CONFIG_USB_SERIAL_XIRCOM=m +CONFIG_USB_SERIAL_XSENS_MT=m +CONFIG_USB_SEVSEG=m +CONFIG_USB_SI470X=m +CONFIG_USB_SI4713=m +CONFIG_USB_SIERRA_NET=m +CONFIG_USB_SISUSBVGA=m +CONFIG_USB_SL811_CS=m +CONFIG_USB_SL811_HCD=m +CONFIG_USB_SL811_HCD_ISO=y +CONFIG_USB_SNP_CORE=m +CONFIG_USB_SNP_UDC_PLAT=m +CONFIG_USB_SPEEDTOUCH=m +CONFIG_USB_STKWEBCAM=m +CONFIG_USB_STORAGE=m +CONFIG_USB_STORAGE_ALAUDA=m +CONFIG_USB_STORAGE_CYPRESS_ATACB=m +CONFIG_USB_STORAGE_DATAFAB=m +# CONFIG_USB_STORAGE_DEBUG is not set +CONFIG_USB_STORAGE_ENE_UB6250=m +CONFIG_USB_STORAGE_FREECOM=m +CONFIG_USB_STORAGE_ISD200=m +CONFIG_USB_STORAGE_JUMPSHOT=m +CONFIG_USB_STORAGE_KARMA=m +CONFIG_USB_STORAGE_ONETOUCH=m +CONFIG_USB_STORAGE_REALTEK=m +CONFIG_USB_STORAGE_SDDR09=m +CONFIG_USB_STORAGE_SDDR55=m +CONFIG_USB_STORAGE_USBAT=m +CONFIG_USB_STV06XX=m +CONFIG_USB_TEGRA_PHY=m +CONFIG_USB_TEGRA_XUDC=m +CONFIG_USB_TEST=m +CONFIG_USB_TMC=m +CONFIG_USB_TRANCEVIBRATOR=m +CONFIG_USB_U132_HCD=m +CONFIG_USB_UAS=m +CONFIG_USB_UEAGLEATM=m +CONFIG_USB_UHCI_ASPEED=y +CONFIG_USB_UHCI_HCD=y +CONFIG_USB_UHCI_PLATFORM=y +CONFIG_USB_UHCI_SUPPORT_NON_PCI_HC=y +CONFIG_USB_ULPI=y +CONFIG_USB_ULPI_BUS=m +CONFIG_USB_ULPI_VIEWPORT=y +CONFIG_USB_USBNET=m +CONFIG_USB_USS720=m +CONFIG_USB_U_AUDIO=m +CONFIG_USB_U_ETHER=m +CONFIG_USB_U_SERIAL=m +CONFIG_USB_VIDEO_CLASS=m +CONFIG_USB_VIDEO_CLASS_INPUT_EVDEV=y +CONFIG_USB_VL600=m +CONFIG_USB_WDM=m +CONFIG_USB_XHCI_DBGCAP=y +CONFIG_USB_XHCI_HCD=y +CONFIG_USB_XHCI_HISTB=m +CONFIG_USB_XHCI_MTK=m +CONFIG_USB_XHCI_MVEBU=m +CONFIG_USB_XHCI_PCI=m +CONFIG_USB_XHCI_PCI_RENESAS=m +CONFIG_USB_XHCI_PLATFORM=m +CONFIG_USB_XHCI_RCAR=m +CONFIG_USB_XHCI_TEGRA=m +CONFIG_USB_XUSBATM=m +CONFIG_USB_YUREX=m +CONFIG_USB_ZD1201=m +CONFIG_USB_ZERO=m +CONFIG_USB_ZR364XX=m +CONFIG_USELIB=y +CONFIG_USERFAULTFD=y +CONFIG_USERIO=m +CONFIG_USER_NS=y +CONFIG_USER_RETURN_NOTIFIER=y +CONFIG_USER_STACKTRACE_SUPPORT=y +CONFIG_USE_OF=y +CONFIG_USE_PERCPU_NUMA_NODE_ID=y +CONFIG_UTS_NS=y +CONFIG_UV_MMTIMER=m +CONFIG_U_SERIAL_CONSOLE=y +CONFIG_V4L2_FLASH_LED_CLASS=m +CONFIG_V4L2_FWNODE=m +CONFIG_V4L2_H264=m +CONFIG_V4L2_JPEG_HELPER=m +CONFIG_V4L2_MEM2MEM_DEV=m +CONFIG_V4L_MEM2MEM_DRIVERS=y +CONFIG_V4L_PLATFORM_DRIVERS=y +CONFIG_V4L_TEST_DRIVERS=y +CONFIG_VALIDATE_FS_PARSER=y +CONFIG_VBOXGUEST=m +CONFIG_VBOXSF_FS=m +CONFIG_VCNL3020=m +CONFIG_VCNL4000=m +CONFIG_VCNL4035=m +CONFIG_VDPA_SIM=m +CONFIG_VDSO=y +CONFIG_VEML6030=m +CONFIG_VEML6070=m +CONFIG_VERSION_SIGNATURE="" +CONFIG_VETH=m +CONFIG_VEXPRESS_CONFIG=y +CONFIG_VF610_ADC=m +CONFIG_VF610_DAC=m +CONFIG_VFAT_FS=y +CONFIG_VFIO_AMBA=m +CONFIG_VFIO_AP=m +CONFIG_VFIO_CCW=m +CONFIG_VFIO_IOMMU_SPAPR_TCE=y +CONFIG_VFIO_MDEV=m +CONFIG_VFIO_MDEV_DEVICE=m +CONFIG_VFIO_NOIOMMU=y +CONFIG_VFIO_PCI_IGD=y +CONFIG_VFIO_PCI_INTX=y +CONFIG_VFIO_PCI_MMAP=y +CONFIG_VFIO_PCI_NVLINK2=y +CONFIG_VFIO_PCI_VGA=y +CONFIG_VFIO_PLATFORM=m +CONFIG_VFIO_PLATFORM_AMDXGBE_RESET=m +CONFIG_VFIO_PLATFORM_BCMFLEXRM_RESET=m +CONFIG_VFIO_PLATFORM_CALXEDAXGMAC_RESET=m +CONFIG_VFIO_SPAPR_EEH=y +CONFIG_VFP=y +CONFIG_VFPv3=y +CONFIG_VF_USE_ARM_GLOBAL_TIMER=y +# CONFIG_VF_USE_PIT_TIMER is not set +CONFIG_VGASTATE=m +CONFIG_VGA_ARB=y +CONFIG_VGA_ARB_MAX_GPUS=16 +CONFIG_VGA_CONSOLE=y +CONFIG_VGA_SWITCHEROO=y +CONFIG_VHOST=m +# CONFIG_VHOST_CROSS_ENDIAN_LEGACY is not set +CONFIG_VHOST_IOTLB=m +CONFIG_VHOST_MENU=y +CONFIG_VHOST_NET=m +CONFIG_VHOST_RING=m +CONFIG_VHOST_SCSI=m +CONFIG_VHOST_VDPA=m +CONFIG_VHOST_VSOCK=m +CONFIG_VIA_RHINE=m +CONFIG_VIA_RHINE_MMIO=y +CONFIG_VIA_VELOCITY=m +CONFIG_VIA_WDT=m +CONFIG_VIDEOBUF2_CORE=m +CONFIG_VIDEOBUF2_DMA_CONTIG=m +CONFIG_VIDEOBUF2_DMA_SG=m +CONFIG_VIDEOBUF2_DVB=m +CONFIG_VIDEOBUF2_MEMOPS=m +CONFIG_VIDEOBUF2_V4L2=m +CONFIG_VIDEOBUF2_VMALLOC=m +CONFIG_VIDEOBUF_DMA_SG=m +CONFIG_VIDEOBUF_GEN=m +CONFIG_VIDEOBUF_VMALLOC=m +CONFIG_VIDEOMODE_HELPERS=y +CONFIG_VIDEO_AD5820=m +CONFIG_VIDEO_AD9389B=m +CONFIG_VIDEO_ADP1653=m +CONFIG_VIDEO_ADV7170=m +CONFIG_VIDEO_ADV7175=m +CONFIG_VIDEO_ADV7180=m +CONFIG_VIDEO_ADV7183=m +CONFIG_VIDEO_ADV7343=m +CONFIG_VIDEO_ADV7393=m +CONFIG_VIDEO_ADV748X=m +CONFIG_VIDEO_ADV7511=m +CONFIG_VIDEO_ADV7511_CEC=y +CONFIG_VIDEO_ADV7604=m +CONFIG_VIDEO_ADV7604_CEC=y +CONFIG_VIDEO_ADV7842=m +CONFIG_VIDEO_ADV7842_CEC=y +# CONFIG_VIDEO_ADV_DEBUG is not set +CONFIG_VIDEO_AK7375=m +CONFIG_VIDEO_AK881X=m +CONFIG_VIDEO_ALLEGRO_DVT=m +CONFIG_VIDEO_APTINA_PLL=m +CONFIG_VIDEO_ASPEED=m +CONFIG_VIDEO_ATOMISP=m +CONFIG_VIDEO_ATOMISP_GC0310=m +CONFIG_VIDEO_ATOMISP_GC2235=m +# CONFIG_VIDEO_ATOMISP_ISP2401 is not set +CONFIG_VIDEO_ATOMISP_LM3554=m +CONFIG_VIDEO_ATOMISP_MSRLIST_HELPER=m +CONFIG_VIDEO_ATOMISP_MT9M114=m +CONFIG_VIDEO_ATOMISP_OV2680=m +CONFIG_VIDEO_ATOMISP_OV2722=m +CONFIG_VIDEO_ATOMISP_OV5693=m +CONFIG_VIDEO_AU0828=m +CONFIG_VIDEO_AU0828_RC=y +CONFIG_VIDEO_AU0828_V4L2=y +CONFIG_VIDEO_BCM2835=m +CONFIG_VIDEO_BT819=m +CONFIG_VIDEO_BT848=m +CONFIG_VIDEO_BT856=m +CONFIG_VIDEO_BT866=m +CONFIG_VIDEO_CADENCE=y +CONFIG_VIDEO_CADENCE_CSI2RX=m +CONFIG_VIDEO_CADENCE_CSI2TX=m +CONFIG_VIDEO_CAFE_CCIC=m +CONFIG_VIDEO_COBALT=m +CONFIG_VIDEO_CODA=m +CONFIG_VIDEO_CPIA2=m +CONFIG_VIDEO_CS3308=m +CONFIG_VIDEO_CS5345=m +CONFIG_VIDEO_CS53L32A=m +CONFIG_VIDEO_CX18=m +CONFIG_VIDEO_CX18_ALSA=m +CONFIG_VIDEO_CX231XX=m +CONFIG_VIDEO_CX231XX_ALSA=m +CONFIG_VIDEO_CX231XX_DVB=m +CONFIG_VIDEO_CX231XX_RC=y +CONFIG_VIDEO_CX2341X=m +CONFIG_VIDEO_CX23885=m +CONFIG_VIDEO_CX25821=m +CONFIG_VIDEO_CX25821_ALSA=m +CONFIG_VIDEO_CX25840=m +CONFIG_VIDEO_CX88=m +CONFIG_VIDEO_CX88_ALSA=m +CONFIG_VIDEO_CX88_BLACKBIRD=m +CONFIG_VIDEO_CX88_DVB=m +CONFIG_VIDEO_CX88_ENABLE_VP3054=y +CONFIG_VIDEO_CX88_MPEG=m +CONFIG_VIDEO_CX88_VP3054=m +CONFIG_VIDEO_DEV=m +CONFIG_VIDEO_DT3155=m +CONFIG_VIDEO_DW9714=m +CONFIG_VIDEO_DW9807_VCM=m +CONFIG_VIDEO_EM28XX=m +CONFIG_VIDEO_EM28XX_ALSA=m +CONFIG_VIDEO_EM28XX_DVB=m +CONFIG_VIDEO_EM28XX_RC=m +CONFIG_VIDEO_EM28XX_V4L2=m +CONFIG_VIDEO_ET8EK8=m +CONFIG_VIDEO_FB_IVTV=m +CONFIG_VIDEO_FB_IVTV_FORCE_PAT=y +# CONFIG_VIDEO_FIXED_MINOR_RANGES is not set +CONFIG_VIDEO_GO7007=m +CONFIG_VIDEO_GO7007_LOADER=m +CONFIG_VIDEO_GO7007_USB=m +CONFIG_VIDEO_GO7007_USB_S2250_BOARD=m +CONFIG_VIDEO_GS1662=m +CONFIG_VIDEO_HANTRO=m +CONFIG_VIDEO_HANTRO_IMX8M=y +CONFIG_VIDEO_HANTRO_ROCKCHIP=y +CONFIG_VIDEO_HDPVR=m +CONFIG_VIDEO_HEXIUM_GEMINI=m +CONFIG_VIDEO_HEXIUM_ORION=m +CONFIG_VIDEO_HI556=m +CONFIG_VIDEO_I2C=m +CONFIG_VIDEO_IMX214=m +CONFIG_VIDEO_IMX219=m +CONFIG_VIDEO_IMX258=m +CONFIG_VIDEO_IMX274=m +CONFIG_VIDEO_IMX290=m +CONFIG_VIDEO_IMX319=m +CONFIG_VIDEO_IMX355=m +CONFIG_VIDEO_IMX7_CSI=m +CONFIG_VIDEO_IMX_CSI=m +CONFIG_VIDEO_IMX_MEDIA=m +CONFIG_VIDEO_IMX_PXP=m +CONFIG_VIDEO_IMX_VDOA=m +CONFIG_VIDEO_IPU3_CIO2=m +CONFIG_VIDEO_IPU3_IMGU=m +CONFIG_VIDEO_IR_I2C=m +CONFIG_VIDEO_IVTV=m +CONFIG_VIDEO_IVTV_ALSA=m +# CONFIG_VIDEO_IVTV_DEPRECATED_IOCTLS is not set +CONFIG_VIDEO_KS0127=m +CONFIG_VIDEO_LM3560=m +CONFIG_VIDEO_LM3646=m +CONFIG_VIDEO_M52790=m +CONFIG_VIDEO_M5MOLS=m +CONFIG_VIDEO_MEDIATEK_VPU=m +CONFIG_VIDEO_MEM2MEM_DEINTERLACE=m +CONFIG_VIDEO_MESON_VDEC=m +CONFIG_VIDEO_MEYE=m +CONFIG_VIDEO_ML86V7667=m +CONFIG_VIDEO_MSP3400=m +CONFIG_VIDEO_MT9M001=m +CONFIG_VIDEO_MT9M032=m +CONFIG_VIDEO_MT9M111=m +CONFIG_VIDEO_MT9P031=m +CONFIG_VIDEO_MT9T001=m +CONFIG_VIDEO_MT9T112=m +CONFIG_VIDEO_MT9V011=m +CONFIG_VIDEO_MT9V032=m +CONFIG_VIDEO_MT9V111=m +CONFIG_VIDEO_MUX=m +CONFIG_VIDEO_MXB=m +CONFIG_VIDEO_NOON010PC30=m +CONFIG_VIDEO_OMAP2_VOUT=m +CONFIG_VIDEO_OMAP2_VOUT_VRFB=y +CONFIG_VIDEO_OMAP3=m +# CONFIG_VIDEO_OMAP3_DEBUG is not set +CONFIG_VIDEO_OMAP4=m +CONFIG_VIDEO_OV13858=m +CONFIG_VIDEO_OV2640=m +CONFIG_VIDEO_OV2659=m +CONFIG_VIDEO_OV2680=m +CONFIG_VIDEO_OV2685=m +CONFIG_VIDEO_OV2740=m +CONFIG_VIDEO_OV5640=m +CONFIG_VIDEO_OV5645=m +CONFIG_VIDEO_OV5647=m +CONFIG_VIDEO_OV5670=m +CONFIG_VIDEO_OV5675=m +CONFIG_VIDEO_OV5695=m +CONFIG_VIDEO_OV6650=m +CONFIG_VIDEO_OV7251=m +CONFIG_VIDEO_OV7640=m +CONFIG_VIDEO_OV7670=m +CONFIG_VIDEO_OV772X=m +CONFIG_VIDEO_OV7740=m +CONFIG_VIDEO_OV8856=m +CONFIG_VIDEO_OV9640=m +CONFIG_VIDEO_OV9650=m +# CONFIG_VIDEO_PCI_SKELETON is not set +CONFIG_VIDEO_PVRUSB2=m +# CONFIG_VIDEO_PVRUSB2_DEBUGIFC is not set +CONFIG_VIDEO_PVRUSB2_DVB=y +CONFIG_VIDEO_PVRUSB2_SYSFS=y +CONFIG_VIDEO_QCOM_CAMSS=m +CONFIG_VIDEO_QCOM_VENUS=m +CONFIG_VIDEO_RCAR_CSI2=m +CONFIG_VIDEO_RCAR_DRIF=m +CONFIG_VIDEO_RCAR_VIN=m +CONFIG_VIDEO_RENESAS_CEU=m +CONFIG_VIDEO_RENESAS_FCP=m +CONFIG_VIDEO_RENESAS_FDP1=m +CONFIG_VIDEO_RENESAS_JPU=m +CONFIG_VIDEO_RENESAS_VSP1=m +CONFIG_VIDEO_RJ54N1=m +CONFIG_VIDEO_ROCKCHIP_ISP1=m +CONFIG_VIDEO_ROCKCHIP_RGA=m +CONFIG_VIDEO_ROCKCHIP_VDEC=m +CONFIG_VIDEO_S5C73M3=m +CONFIG_VIDEO_S5K4ECGX=m +CONFIG_VIDEO_S5K5BAF=m +CONFIG_VIDEO_S5K6A3=m +CONFIG_VIDEO_S5K6AA=m +CONFIG_VIDEO_SAA6588=m +CONFIG_VIDEO_SAA6752HS=m +CONFIG_VIDEO_SAA7110=m +CONFIG_VIDEO_SAA711X=m +CONFIG_VIDEO_SAA7127=m +CONFIG_VIDEO_SAA7134=m +CONFIG_VIDEO_SAA7134_ALSA=m +CONFIG_VIDEO_SAA7134_DVB=m +CONFIG_VIDEO_SAA7134_GO7007=m +CONFIG_VIDEO_SAA7134_RC=y +CONFIG_VIDEO_SAA7146=m +CONFIG_VIDEO_SAA7146_VV=m +CONFIG_VIDEO_SAA7164=m +CONFIG_VIDEO_SAA717X=m +CONFIG_VIDEO_SAA7185=m +# CONFIG_VIDEO_SAMSUNG_EXYNOS4_IS is not set +CONFIG_VIDEO_SAMSUNG_EXYNOS_GSC=m +CONFIG_VIDEO_SAMSUNG_S5P_G2D=m +CONFIG_VIDEO_SAMSUNG_S5P_JPEG=m +CONFIG_VIDEO_SAMSUNG_S5P_MFC=m +CONFIG_VIDEO_SMIAPP=m +CONFIG_VIDEO_SMIAPP_PLL=m +CONFIG_VIDEO_SOLO6X10=m +CONFIG_VIDEO_SONY_BTF_MPX=m +CONFIG_VIDEO_SR030PC30=m +CONFIG_VIDEO_STK1160=m +CONFIG_VIDEO_STK1160_COMMON=m +CONFIG_VIDEO_ST_MIPID02=m +CONFIG_VIDEO_SUN4I_CSI=m +CONFIG_VIDEO_SUN6I_CSI=m +CONFIG_VIDEO_SUN8I_DEINTERLACE=m +CONFIG_VIDEO_SUN8I_ROTATE=m +CONFIG_VIDEO_SUNXI=y +CONFIG_VIDEO_SUNXI_CEDRUS=m +CONFIG_VIDEO_TC358743=m +CONFIG_VIDEO_TC358743_CEC=y +CONFIG_VIDEO_TDA1997X=m +CONFIG_VIDEO_TDA7432=m +CONFIG_VIDEO_TDA9840=m +CONFIG_VIDEO_TEA6415C=m +CONFIG_VIDEO_TEA6420=m +CONFIG_VIDEO_TEGRA=m +CONFIG_VIDEO_THS7303=m +CONFIG_VIDEO_THS8200=m +CONFIG_VIDEO_TI_CAL=m +CONFIG_VIDEO_TI_CSC=m +CONFIG_VIDEO_TI_SC=m +CONFIG_VIDEO_TI_VPDMA=m +CONFIG_VIDEO_TI_VPE=m +# CONFIG_VIDEO_TI_VPE_DEBUG is not set +CONFIG_VIDEO_TLV320AIC23B=m +CONFIG_VIDEO_TM6000=m +CONFIG_VIDEO_TM6000_ALSA=m +CONFIG_VIDEO_TM6000_DVB=m +CONFIG_VIDEO_TUNER=m +CONFIG_VIDEO_TVAUDIO=m +CONFIG_VIDEO_TVEEPROM=m +CONFIG_VIDEO_TVP514X=m +CONFIG_VIDEO_TVP5150=m +CONFIG_VIDEO_TVP7002=m +CONFIG_VIDEO_TW2804=m +CONFIG_VIDEO_TW5864=m +CONFIG_VIDEO_TW68=m +CONFIG_VIDEO_TW686X=m +CONFIG_VIDEO_TW9903=m +CONFIG_VIDEO_TW9906=m +CONFIG_VIDEO_TW9910=m +CONFIG_VIDEO_UDA1342=m +CONFIG_VIDEO_UPD64031A=m +CONFIG_VIDEO_UPD64083=m +CONFIG_VIDEO_USBTV=m +CONFIG_VIDEO_USBVISION=m +CONFIG_VIDEO_V4L2=m +CONFIG_VIDEO_V4L2_I2C=y +CONFIG_VIDEO_V4L2_SUBDEV_API=y +CONFIG_VIDEO_V4L2_TPG=m +CONFIG_VIDEO_VIA_CAMERA=m +CONFIG_VIDEO_VICODEC=m +CONFIG_VIDEO_VIM2M=m +CONFIG_VIDEO_VIMC=m +CONFIG_VIDEO_VIVID=m +CONFIG_VIDEO_VIVID_CEC=y +CONFIG_VIDEO_VIVID_MAX_DEVS=64 +CONFIG_VIDEO_VP27SMPX=m +CONFIG_VIDEO_VPX3220=m +CONFIG_VIDEO_VS6624=m +CONFIG_VIDEO_WM8739=m +CONFIG_VIDEO_WM8775=m +CONFIG_VIDEO_XILINX=m +CONFIG_VIDEO_XILINX_TPG=m +CONFIG_VIDEO_XILINX_VTC=m +CONFIG_VIPERBOARD_ADC=m +CONFIG_VIRTIO=y +CONFIG_VIRTIO_BALLOON=y +CONFIG_VIRTIO_BLK=m +CONFIG_VIRTIO_CONSOLE=y +CONFIG_VIRTIO_FS=m +CONFIG_VIRTIO_INPUT=m +CONFIG_VIRTIO_IOMMU=y +CONFIG_VIRTIO_MEM=m +CONFIG_VIRTIO_MENU=y +CONFIG_VIRTIO_MMIO_CMDLINE_DEVICES=y +CONFIG_VIRTIO_NET=m +CONFIG_VIRTIO_PCI=y +CONFIG_VIRTIO_PCI_LEGACY=y +CONFIG_VIRTIO_PMEM=m +CONFIG_VIRTIO_VDPA=m +CONFIG_VIRTIO_VSOCKETS=m +CONFIG_VIRTIO_VSOCKETS_COMMON=m +CONFIG_VIRTUALIZATION=y +CONFIG_VIRT_CPU_ACCOUNTING=y +# CONFIG_VIRT_CPU_ACCOUNTING_GEN is not set +CONFIG_VIRT_DRIVERS=y +CONFIG_VIRT_TO_BUS=y +CONFIG_VIRT_WIFI=m +CONFIG_VITESSE_PHY=m +CONFIG_VL53L0X_I2C=m +CONFIG_VL6180=m +CONFIG_VLAN_8021Q=m +CONFIG_VLAN_8021Q_GVRP=y +CONFIG_VLAN_8021Q_MVRP=y +CONFIG_VMAP_STACK=y +CONFIG_VMCP=y +CONFIG_VMCP_CMA_SIZE=4 +CONFIG_VMD=m +CONFIG_VME_CA91CX42=m +CONFIG_VME_FAKE=m +CONFIG_VME_TSI148=m +CONFIG_VME_USER=m +CONFIG_VMIVME_7805=m +CONFIG_VMLOGRDR=m +# CONFIG_VMSPLIT_1G is not set +# CONFIG_VMSPLIT_2G is not set +CONFIG_VMSPLIT_3G=y +# CONFIG_VMSPLIT_3G_OPT is not set +CONFIG_VMWARE_BALLOON=m +CONFIG_VMWARE_PVSCSI=m +CONFIG_VMWARE_VMCI=m +CONFIG_VMWARE_VMCI_VSOCKETS=m +CONFIG_VM_EVENT_COUNTERS=y +CONFIG_VOP=m +CONFIG_VORTEX=m +CONFIG_VSOCKETS=m +CONFIG_VSOCKETS_DIAG=m +CONFIG_VSOCKETS_LOOPBACK=m +CONFIG_VSOCKMON=m +CONFIG_VSX=y +CONFIG_VT=y +CONFIG_VT6655=m +CONFIG_VT6656=m +CONFIG_VT_CONSOLE=y +CONFIG_VT_CONSOLE_SLEEP=y +CONFIG_VT_HW_CONSOLE_BINDING=y +# CONFIG_VXGE_DEBUG_TRACE_ALL is not set +CONFIG_VXLAN=m +CONFIG_VZ89X=m +CONFIG_W1_CON=y +CONFIG_W1_MASTER_DS1WM=m +CONFIG_W1_MASTER_DS2482=m +CONFIG_W1_MASTER_DS2490=m +CONFIG_W1_MASTER_GPIO=m +CONFIG_W1_MASTER_MATROX=m +CONFIG_W1_MASTER_MXC=m +CONFIG_W1_MASTER_SGI=m +CONFIG_W1_SLAVE_DS2405=m +CONFIG_W1_SLAVE_DS2406=m +CONFIG_W1_SLAVE_DS2408=m +CONFIG_W1_SLAVE_DS2408_READBACK=y +CONFIG_W1_SLAVE_DS2413=m +CONFIG_W1_SLAVE_DS2423=m +CONFIG_W1_SLAVE_DS2430=m +CONFIG_W1_SLAVE_DS2431=m +CONFIG_W1_SLAVE_DS2433=m +# CONFIG_W1_SLAVE_DS2433_CRC is not set +CONFIG_W1_SLAVE_DS2438=m +CONFIG_W1_SLAVE_DS250X=m +CONFIG_W1_SLAVE_DS2780=m +CONFIG_W1_SLAVE_DS2781=m +CONFIG_W1_SLAVE_DS2805=m +CONFIG_W1_SLAVE_DS28E04=m +CONFIG_W1_SLAVE_DS28E17=m +CONFIG_W1_SLAVE_SMEM=m +CONFIG_W1_SLAVE_THERM=m +CONFIG_W83627HF_WDT=m +CONFIG_W83877F_WDT=m +CONFIG_W83977F_WDT=m +CONFIG_WAFER_WDT=m +CONFIG_WANT_DEV_COREDUMP=y +CONFIG_WANXL=m +# CONFIG_WARN_ALL_UNSEEDED_RANDOM is not set +# CONFIG_WARN_DYNAMIC_STACK is not set +CONFIG_WATCHDOG=y +CONFIG_WATCHDOG_CORE=y +CONFIG_WATCHDOG_HANDLE_BOOT_ENABLED=y +# CONFIG_WATCHDOG_NOWAYOUT is not set +CONFIG_WATCHDOG_OPEN_TIMEOUT=0 +CONFIG_WATCHDOG_PRETIMEOUT_DEFAULT_GOV_NOOP=y +# CONFIG_WATCHDOG_PRETIMEOUT_DEFAULT_GOV_PANIC is not set +CONFIG_WATCHDOG_PRETIMEOUT_GOV=y +CONFIG_WATCHDOG_PRETIMEOUT_GOV_NOOP=y +CONFIG_WATCHDOG_PRETIMEOUT_GOV_PANIC=m +CONFIG_WATCHDOG_PRETIMEOUT_GOV_SEL=m +CONFIG_WATCHDOG_RTAS=m +CONFIG_WATCHDOG_SYSFS=y +CONFIG_WATCH_QUEUE=y +CONFIG_WCN36XX=m +# CONFIG_WCN36XX_DEBUGFS is not set +CONFIG_WDAT_WDT=m +CONFIG_WEXT_CORE=y +CONFIG_WEXT_PRIV=y +CONFIG_WEXT_PROC=y +CONFIG_WEXT_SPY=y +CONFIG_WFX=m +CONFIG_WIL6210=m +CONFIG_WIL6210_DEBUGFS=y +CONFIG_WIL6210_ISR_COR=y +CONFIG_WIL6210_TRACING=y +CONFIG_WILC1000=m +CONFIG_WILC1000_HW_OOB_INTR=y +CONFIG_WILC1000_SDIO=m +CONFIG_WILC1000_SPI=m +CONFIG_WILCO_EC=m +CONFIG_WILCO_EC_DEBUGFS=m +CONFIG_WILCO_EC_EVENTS=m +CONFIG_WILCO_EC_TELEMETRY=m +CONFIG_WILINK_PLATFORM_DATA=y +CONFIG_WIMAX_DEBUG_LEVEL=8 +CONFIG_WIMAX_I2400M=m +CONFIG_WIMAX_I2400M_DEBUG_LEVEL=8 +CONFIG_WIMAX_I2400M_USB=m +CONFIG_WINBOND_840=m +CONFIG_WINDFARM=m +CONFIG_WIREGUARD=m +# CONFIG_WIREGUARD_DEBUG is not set +CONFIG_WIRELESS=y +CONFIG_WIRELESS_EXT=y +# CONFIG_WIRELESS_WDS is not set +CONFIG_WIZNET_BUS_ANY=y +# CONFIG_WIZNET_BUS_DIRECT is not set +# CONFIG_WIZNET_BUS_INDIRECT is not set +CONFIG_WIZNET_W5100=m +CONFIG_WIZNET_W5100_SPI=m +CONFIG_WIZNET_W5300=m +# CONFIG_WKUP_M3_IPC is not set +CONFIG_WKUP_M3_RPROC=m +CONFIG_WL1251=m +CONFIG_WL1251_SDIO=m +CONFIG_WL1251_SPI=m +CONFIG_WL12XX=m +CONFIG_WL18XX=m +CONFIG_WLAN=y +CONFIG_WLAN_VENDOR_ADMTEK=y +CONFIG_WLAN_VENDOR_ATH=y +CONFIG_WLAN_VENDOR_ATMEL=y +CONFIG_WLAN_VENDOR_BROADCOM=y +CONFIG_WLAN_VENDOR_CISCO=y +CONFIG_WLAN_VENDOR_INTEL=y +CONFIG_WLAN_VENDOR_INTERSIL=y +CONFIG_WLAN_VENDOR_MARVELL=y +CONFIG_WLAN_VENDOR_MEDIATEK=y +CONFIG_WLAN_VENDOR_QUANTENNA=y +CONFIG_WLAN_VENDOR_RALINK=y +CONFIG_WLAN_VENDOR_REALTEK=y +CONFIG_WLAN_VENDOR_RSI=y +CONFIG_WLAN_VENDOR_ST=y +CONFIG_WLAN_VENDOR_TI=y +CONFIG_WLAN_VENDOR_ZYDAS=y +CONFIG_WLCORE=m +CONFIG_WLCORE_SDIO=m +CONFIG_WLCORE_SPI=m +CONFIG_WM831X_BACKUP=m +CONFIG_WM831X_POWER=m +CONFIG_WM831X_WATCHDOG=m +CONFIG_WM8350_POWER=m +CONFIG_WM8350_WATCHDOG=m +CONFIG_WMI_BMOF=m +CONFIG_WQ_POWER_EFFICIENT_DEFAULT=y +# CONFIG_WQ_WATCHDOG is not set +# CONFIG_WW_MUTEX_SELFTEST is not set +CONFIG_X25_ASY=m +CONFIG_X509_CERTIFICATE_PARSER=y +CONFIG_X86=y +CONFIG_X86_16BIT=y +CONFIG_X86_5LEVEL=y +CONFIG_X86_64=y +CONFIG_X86_64_ACPI_NUMA=y +CONFIG_X86_64_SMP=y +CONFIG_X86_ACPI_CPUFREQ=y +CONFIG_X86_ACPI_CPUFREQ_CPB=y +CONFIG_X86_AMD_FREQ_SENSITIVITY=m +CONFIG_X86_AMD_PLATFORM_DEVICE=y +CONFIG_X86_BOOTPARAM_MEMORY_CORRUPTION_CHECK=y +CONFIG_X86_CHECK_BIOS_CORRUPTION=y +CONFIG_X86_CMOV=y +CONFIG_X86_CMPXCHG64=y +# CONFIG_X86_CPA_STATISTICS is not set +CONFIG_X86_CPUID=m +CONFIG_X86_CPU_RESCTRL=y +CONFIG_X86_DEBUGCTLMSR=y +CONFIG_X86_DEBUG_FPU=y +# CONFIG_X86_DECODER_SELFTEST is not set +CONFIG_X86_DIRECT_GBPAGES=y +CONFIG_X86_ESPFIX64=y +CONFIG_X86_EXTENDED_PLATFORM=y +CONFIG_X86_FEATURE_NAMES=y +# CONFIG_X86_GOLDFISH is not set +CONFIG_X86_HV_CALLBACK_VECTOR=y +CONFIG_X86_INTEL_LPSS=y +CONFIG_X86_INTEL_MEMORY_PROTECTION_KEYS=y +# CONFIG_X86_INTEL_MID is not set +CONFIG_X86_INTEL_PSTATE=y +# CONFIG_X86_INTEL_TSX_MODE_AUTO is not set +CONFIG_X86_INTEL_TSX_MODE_OFF=y +# CONFIG_X86_INTEL_TSX_MODE_ON is not set +CONFIG_X86_INTERNODE_CACHE_SHIFT=6 +CONFIG_X86_IOPL_IOPERM=y +CONFIG_X86_IO_APIC=y +CONFIG_X86_L1_CACHE_SHIFT=6 +CONFIG_X86_LOCAL_APIC=y +CONFIG_X86_MCE=y +CONFIG_X86_MCELOG_LEGACY=y +CONFIG_X86_MCE_AMD=y +CONFIG_X86_MCE_INJECT=m +CONFIG_X86_MCE_INTEL=y +CONFIG_X86_MCE_THRESHOLD=y +CONFIG_X86_MINIMUM_CPU_FAMILY=64 +CONFIG_X86_MPPARSE=y +CONFIG_X86_MSR=m +CONFIG_X86_NEED_RELOCS=y +CONFIG_X86_NUMACHIP=y +CONFIG_X86_P4_CLOCKMOD=m +CONFIG_X86_PAT=y +CONFIG_X86_PCC_CPUFREQ=y +CONFIG_X86_PKG_TEMP_THERMAL=m +CONFIG_X86_PLATFORM_DEVICES=y +CONFIG_X86_PMEM_LEGACY=y +CONFIG_X86_PMEM_LEGACY_DEVICE=y +CONFIG_X86_PM_TIMER=y +CONFIG_X86_POWERNOW_K8=y +CONFIG_X86_REROUTE_FOR_BROKEN_BOOT_IRQS=y +CONFIG_X86_RESERVE_LOW=64 +CONFIG_X86_SMAP=y +CONFIG_X86_SPEEDSTEP_CENTRINO=y +CONFIG_X86_SPEEDSTEP_LIB=m +CONFIG_X86_SUPPORTS_MEMORY_FAILURE=y +# CONFIG_X86_SYSFB is not set +CONFIG_X86_THERMAL_VECTOR=y +CONFIG_X86_TSC=y +CONFIG_X86_UMIP=y +CONFIG_X86_UV=y +# CONFIG_X86_VERBOSE_BOOTUP is not set +CONFIG_X86_VMX_FEATURE_NAMES=y +# CONFIG_X86_VSMP is not set +CONFIG_X86_VSYSCALL_EMULATION=y +CONFIG_X86_X2APIC=y +CONFIG_X86_X32=y +CONFIG_XARRAY_MULTI=y +CONFIG_XDP_SOCKETS=y +CONFIG_XDP_SOCKETS_DIAG=m +CONFIG_XENFS=m +CONFIG_XEN_512GB=y +CONFIG_XEN_ACPI=y +CONFIG_XEN_ACPI_PROCESSOR=y +CONFIG_XEN_AUTO_XLATE=y +CONFIG_XEN_BACKEND=y +CONFIG_XEN_BALLOON=y +CONFIG_XEN_BALLOON_MEMORY_HOTPLUG=y +CONFIG_XEN_BALLOON_MEMORY_HOTPLUG_LIMIT=512 +CONFIG_XEN_BLKDEV_BACKEND=m +CONFIG_XEN_BLKDEV_FRONTEND=y +CONFIG_XEN_COMPAT_XENFS=y +# CONFIG_XEN_DEBUG_FS is not set +CONFIG_XEN_DEV_EVTCHN=m +CONFIG_XEN_DOM0=y +CONFIG_XEN_EFI=y +CONFIG_XEN_FBDEV_FRONTEND=m +CONFIG_XEN_FRONT_PGDIR_SHBUF=m +CONFIG_XEN_GNTDEV=m +CONFIG_XEN_GNTDEV_DMABUF=y +CONFIG_XEN_GRANT_DEV_ALLOC=m +CONFIG_XEN_GRANT_DMA_ALLOC=y +CONFIG_XEN_HAVE_PVMMU=y +CONFIG_XEN_HAVE_VPMU=y +CONFIG_XEN_MCE_LOG=y +CONFIG_XEN_NETDEV_BACKEND=m +CONFIG_XEN_NETDEV_FRONTEND=y +CONFIG_XEN_PCIDEV_BACKEND=m +CONFIG_XEN_PCIDEV_FRONTEND=m +CONFIG_XEN_PRIVCMD=m +CONFIG_XEN_PV=y +# CONFIG_XEN_PVCALLS_BACKEND is not set +CONFIG_XEN_PVCALLS_FRONTEND=m +CONFIG_XEN_PVH=y +CONFIG_XEN_PVHVM=y +CONFIG_XEN_PVHVM_SMP=y +CONFIG_XEN_PV_SMP=y +CONFIG_XEN_SAVE_RESTORE=y +CONFIG_XEN_SCRUB_PAGES_DEFAULT=y +CONFIG_XEN_SCSI_BACKEND=m +CONFIG_XEN_SCSI_FRONTEND=m +CONFIG_XEN_SYMS=y +CONFIG_XEN_SYS_HYPERVISOR=y +CONFIG_XEN_WDT=m +CONFIG_XEN_XENBUS_FRONTEND=y +CONFIG_XFRM=y +CONFIG_XFRM_AH=m +CONFIG_XFRM_ALGO=m +CONFIG_XFRM_ESP=m +CONFIG_XFRM_ESPINTCP=y +CONFIG_XFRM_INTERFACE=m +CONFIG_XFRM_IPCOMP=m +# CONFIG_XFRM_MIGRATE is not set +CONFIG_XFRM_OFFLOAD=y +CONFIG_XFRM_STATISTICS=y +# CONFIG_XFRM_SUB_POLICY is not set +CONFIG_XFRM_USER=m +# CONFIG_XFS_DEBUG is not set +CONFIG_XFS_FS=m +# CONFIG_XFS_ONLINE_SCRUB is not set +CONFIG_XFS_POSIX_ACL=y +CONFIG_XFS_QUOTA=y +CONFIG_XFS_RT=y +# CONFIG_XFS_WARN is not set +CONFIG_XGENE_DMA=m +CONFIG_XGENE_PMU=y +CONFIG_XGENE_SLIMPRO_MBOX=m +CONFIG_XIAOMI_WMI=m +CONFIG_XILINX_AXI_EMAC=m +CONFIG_XILINX_DMA=m +CONFIG_XILINX_GMII2RGMII=m +CONFIG_XILINX_PR_DECOUPLER=m +CONFIG_XILINX_VCU=m +CONFIG_XILINX_XADC=m +CONFIG_XILINX_ZYNQMP_DMA=m +CONFIG_XILLYBUS_OF=m +CONFIG_XILLYBUS_PCIE=m +CONFIG_XIL_AXIS_FIFO=m +CONFIG_XMON=y +# CONFIG_XMON_DEFAULT is not set +CONFIG_XMON_DEFAULT_RO_MODE=y +CONFIG_XMON_DISASSEMBLY=y +CONFIG_XOR_BLOCKS=m +CONFIG_XPOWER_PMIC_OPREGION=y +CONFIG_XPS=y +CONFIG_XXHASH=y +CONFIG_XZ_DEC=y +CONFIG_XZ_DEC_BCJ=y +CONFIG_YAM=m +CONFIG_YENTA=m +CONFIG_YENTA_ENE_TUNE=y +CONFIG_YENTA_O2=y +CONFIG_YENTA_RICOH=y +CONFIG_YENTA_TI=y +CONFIG_YENTA_TOSHIBA=y +CONFIG_Z3FOLD=m +CONFIG_ZBOOT_ROM_BSS=0x0 +CONFIG_ZBOOT_ROM_TEXT=0x0 +CONFIG_ZBUD=y +CONFIG_ZCRYPT=m +CONFIG_ZCRYPT_MULTIDEVNODES=y +CONFIG_ZD1211RW=m +# CONFIG_ZD1211RW_DEBUG is not set +CONFIG_ZEROPLUS_FF=y +CONFIG_ZFCP=m +CONFIG_ZISOFS=y +CONFIG_ZLIB_DEFLATE=y +CONFIG_ZLIB_DFLTCC=y +CONFIG_ZLIB_INFLATE=y +CONFIG_ZONEFS_FS=m +CONFIG_ZONE_DEVICE=y +CONFIG_ZONE_DMA=y +CONFIG_ZONE_DMA32=y +CONFIG_ZOPT2201=m +CONFIG_ZPA2326=m +CONFIG_ZPA2326_I2C=m +CONFIG_ZPA2326_SPI=m +CONFIG_ZPOOL=y +CONFIG_ZRAM=m +CONFIG_ZRAM_MEMORY_TRACKING=y +CONFIG_ZRAM_WRITEBACK=y +CONFIG_ZSMALLOC=y +# CONFIG_ZSMALLOC_STAT is not set +CONFIG_ZSTD_DECOMPRESS=y +CONFIG_ZSWAP=y +CONFIG_ZSWAP_COMPRESSOR_DEFAULT="lzo" +# CONFIG_ZSWAP_COMPRESSOR_DEFAULT_842 is not set +# CONFIG_ZSWAP_COMPRESSOR_DEFAULT_DEFLATE is not set +# CONFIG_ZSWAP_COMPRESSOR_DEFAULT_LZ4 is not set +# CONFIG_ZSWAP_COMPRESSOR_DEFAULT_LZ4HC is not set +CONFIG_ZSWAP_COMPRESSOR_DEFAULT_LZO=y +# CONFIG_ZSWAP_COMPRESSOR_DEFAULT_ZSTD is not set +# CONFIG_ZSWAP_DEFAULT_ON is not set +CONFIG_ZSWAP_ZPOOL_DEFAULT="zbud" +# CONFIG_ZSWAP_ZPOOL_DEFAULT_Z3FOLD is not set +CONFIG_ZSWAP_ZPOOL_DEFAULT_ZBUD=y +# CONFIG_ZSWAP_ZPOOL_DEFAULT_ZSMALLOC is not set +CONFIG_ZX_TDM=m +CONFIG_ZYNQMP_FIRMWARE=y +# CONFIG_ZYNQMP_FIRMWARE_DEBUG is not set +CONFIG_ZYNQMP_IPI_MBOX=y +CONFIG_ZYNQMP_PM_DOMAINS=y +CONFIG_ZYNQMP_POWER=y --- linux-azure-5.8-5.8.0.orig/debian.master/config/ppc64el/config.common.ppc64el +++ linux-azure-5.8-5.8.0/debian.master/config/ppc64el/config.common.ppc64el @@ -0,0 +1,665 @@ +# +# Config options for config.common.ppc64el automatically generated by splitconfig.pl +# +CONFIG_6LOWPAN=m +CONFIG_ABX500_CORE=y +CONFIG_AC97_BUS=m +CONFIG_AD525X_DPOT=m +CONFIG_ADFS_FS=m +CONFIG_AFFS_FS=m +CONFIG_AIX_PARTITION=y +CONFIG_ALIM7101_WDT=m +CONFIG_ALTERA_STAPL=m +CONFIG_ALTERA_TSE=m +CONFIG_AMIGA_PARTITION=y +CONFIG_ANDROID=y +CONFIG_APDS9802ALS=m +CONFIG_APPLICOM=m +CONFIG_ARCH_MMAP_RND_BITS=28 +CONFIG_ARCH_MMAP_RND_BITS_MAX=29 +CONFIG_ARCH_MMAP_RND_BITS_MIN=14 +CONFIG_ARCH_MMAP_RND_COMPAT_BITS=8 +CONFIG_ARCH_MMAP_RND_COMPAT_BITS_MAX=13 +CONFIG_ARCH_MMAP_RND_COMPAT_BITS_MIN=7 +CONFIG_ARCNET=m +CONFIG_ATA=y +CONFIG_ATALK=m +CONFIG_ATARI_PARTITION=y +CONFIG_ATA_GENERIC=m +CONFIG_ATA_OVER_ETH=m +CONFIG_ATA_PIIX=m +CONFIG_ATM=m +CONFIG_AUTOFS4_FS=m +CONFIG_AUTOFS_FS=m +CONFIG_AUXDISPLAY=y +CONFIG_AX88796B_PHY=m +CONFIG_BACKLIGHT_CLASS_DEVICE=y +CONFIG_BAREUDP=m +CONFIG_BATMAN_ADV=m +CONFIG_BCH=m +CONFIG_BCM84881_PHY=y +CONFIG_BCMA=m +CONFIG_BCM_KONA_USB2_PHY=m +CONFIG_BE2ISCSI=m +CONFIG_BEFS_FS=m +CONFIG_BFS_FS=m +CONFIG_BLK_DEV_3W_XXXX_RAID=m +CONFIG_BLK_DEV_CRYPTOLOOP=m +CONFIG_BLK_DEV_PCIESSD_MTIP32XX=m +CONFIG_BLK_DEV_RSXX=m +CONFIG_BLK_DEV_SKD=m +CONFIG_BLK_DEV_SX8=m +CONFIG_BLK_DEV_UMEM=m +CONFIG_BSD_DISKLABEL=y +CONFIG_C2PORT=m +CONFIG_CADENCE_WATCHDOG=m +CONFIG_CAIF=m +CONFIG_CAN=m +CONFIG_CB710_CORE=m +CONFIG_CC_VERSION_TEXT="powerpc64le-linux-gnu-gcc (Ubuntu 10.2.0-8ubuntu1) 10.2.0" +CONFIG_CDROM_PKTCDVD=m +CONFIG_CLOCK_THERMAL=y +CONFIG_CMA=y +CONFIG_CMDLINE="" +CONFIG_CMDLINE_PARTITION=y +CONFIG_CMM=m +CONFIG_COMMON_CLK=y +CONFIG_COUNTER=m +# CONFIG_CPU_BIG_ENDIAN is not set +CONFIG_CRAMFS=m +CONFIG_CRYPTO_DEFLATE=y +CONFIG_CRYPTO_DEV_ATMEL_ECC=m +CONFIG_CRYPTO_DEV_ATMEL_SHA204A=m +CONFIG_CRYPTO_DEV_NITROX_CNN55XX=m +CONFIG_CRYPTO_DEV_SAFEXCEL=m +CONFIG_CRYPTO_LIB_POLY1305_RSIZE=1 +CONFIG_DECNET=m +CONFIG_DEFAULT_MMAP_MIN_ADDR=65536 +CONFIG_DMADEVICES=y +CONFIG_DMA_VIRTUAL_CHANNELS=m +# CONFIG_DM_DEBUG is not set +CONFIG_DNET=m +CONFIG_DRM_AMDGPU=m +CONFIG_DRM_ANALOGIX_ANX78XX=m +CONFIG_DRM_AST=m +CONFIG_DRM_CIRRUS_QEMU=m +CONFIG_DRM_DP_AUX_CHARDEV=y +CONFIG_DRM_DP_CEC=y +# CONFIG_DRM_ETNAVIV is not set +CONFIG_DRM_I2C_CH7006=m +CONFIG_DRM_I2C_NXP_TDA9950=m +CONFIG_DRM_I2C_NXP_TDA998X=m +CONFIG_DRM_I2C_SIL164=m +CONFIG_DRM_MGAG200=m +CONFIG_DRM_NOUVEAU=m +CONFIG_DRM_PANEL_ORIENTATION_QUIRKS=m +CONFIG_DRM_QXL=m +CONFIG_DRM_RADEON=m +# CONFIG_DRM_RCAR_LVDS is not set +CONFIG_DRM_VGEM=m +CONFIG_DRM_VKMS=m +CONFIG_DS1682=m +CONFIG_DUMMY_IRQ=m +CONFIG_DW_WATCHDOG=m +CONFIG_ECHO=m +CONFIG_EEPROM_93CX6=m +CONFIG_EEPROM_AT24=m +CONFIG_EEPROM_EE1004=m +CONFIG_EEPROM_IDT_89HPESX=m +CONFIG_EEPROM_LEGACY=m +CONFIG_EEPROM_MAX6875=m +CONFIG_EFS_FS=m +CONFIG_ENCLOSURE_SERVICES=m +CONFIG_ETHOC=m +CONFIG_EVM_LOAD_X509=y +CONFIG_EXFAT_FS=m +CONFIG_EXTCON=y +CONFIG_F2FS_FS=m +CONFIG_FB_3DFX=m +CONFIG_FB_ARK=m +CONFIG_FB_ASILIANT=y +CONFIG_FB_ATY=m +CONFIG_FB_ATY128=m +CONFIG_FB_CARMINE=m +CONFIG_FB_CFB_COPYAREA=y +CONFIG_FB_CFB_FILLRECT=y +CONFIG_FB_CFB_IMAGEBLIT=y +CONFIG_FB_CIRRUS=m +CONFIG_FB_CYBER2000=m +CONFIG_FB_I740=m +CONFIG_FB_IBM_GXT4500=y +CONFIG_FB_IMSTT=y +CONFIG_FB_KYRO=m +CONFIG_FB_MATROX=m +CONFIG_FB_MB862XX=m +CONFIG_FB_METRONOME=m +CONFIG_FB_NEOMAGIC=m +CONFIG_FB_NVIDIA=m +CONFIG_FB_OPENCORES=m +CONFIG_FB_PM2=m +CONFIG_FB_PM3=m +CONFIG_FB_RADEON=m +CONFIG_FB_RIVA=m +CONFIG_FB_S1D13XXX=m +CONFIG_FB_S3=m +CONFIG_FB_SAVAGE=m +CONFIG_FB_SIMPLE=y +CONFIG_FB_SIS=m +CONFIG_FB_SM712=m +CONFIG_FB_TILEBLITTING=y +CONFIG_FB_TRIDENT=m +CONFIG_FB_UVESA=m +CONFIG_FB_VOODOO1=m +CONFIG_FB_VT8623=m +CONFIG_FDDI=y +CONFIG_FEALNX=m +CONFIG_FIREWIRE=m +CONFIG_FIREWIRE_NOSY=m +CONFIG_FIXED_PHY=y +CONFIG_FORCE_MAX_ZONEORDER=9 +CONFIG_FPGA_BRIDGE=m +CONFIG_FPGA_DFL=m +CONFIG_FRAME_WARN=2048 +CONFIG_FUSION=y +CONFIG_GAMEPORT=m +CONFIG_GENERIC_PHY=y +CONFIG_GNSS=m +CONFIG_GPIO_ADP5588=m +CONFIG_GPIO_AMD_FCH=m +CONFIG_GPIO_DWAPB=m +CONFIG_GPIO_GENERIC=y +CONFIG_GPIO_GENERIC_PLATFORM=m +CONFIG_GPIO_MAX7300=m +CONFIG_GPIO_MAX732X=m +CONFIG_GPIO_MB86S7X=m +CONFIG_GPIO_PCA953X=m +CONFIG_GPIO_PCF857X=m +CONFIG_GPIO_RDC321X=m +CONFIG_GPIO_SIOX=m +CONFIG_GPIO_TPIC2810=m +CONFIG_GPIO_TWL4030=m +CONFIG_GPIO_TWL6040=m +CONFIG_GPIO_XILINX=y +CONFIG_GREYBUS=m +CONFIG_HABANA_AI=m +CONFIG_HAMACHI=m +CONFIG_HFSPLUS_FS=m +CONFIG_HFS_FS=m +# CONFIG_HIBERNATION is not set +CONFIG_HID=m +# CONFIG_HIO is not set +CONFIG_HMC6352=m +CONFIG_HOTPLUG_PCI=y +# CONFIG_HOTPLUG_PCI_SHPC is not set +CONFIG_HPFS_FS=m +CONFIG_HP_ILO=m +CONFIG_HSI=m +CONFIG_HSR=m +CONFIG_HTC_PASIC3=m +CONFIG_HWMON=y +CONFIG_HWSPINLOCK=y +# CONFIG_HW_RANDOM_CCTRNG is not set +CONFIG_HW_RANDOM_TIMERIOMEM=m +CONFIG_HZ=250 +# CONFIG_HZ_100 is not set +# CONFIG_HZ_1000 is not set +CONFIG_HZ_250=y +CONFIG_I2C=y +CONFIG_I2C_ALI1535=m +CONFIG_I2C_ALI1563=m +CONFIG_I2C_ALI15X3=m +CONFIG_I2C_AMD756=m +CONFIG_I2C_AMD8111=m +CONFIG_I2C_CBUS_GPIO=m +CONFIG_I2C_CHARDEV=y +CONFIG_I2C_DESIGNWARE_PCI=m +CONFIG_I2C_DESIGNWARE_PLATFORM=y +# CONFIG_I2C_EMEV2 is not set +CONFIG_I2C_GPIO=m +CONFIG_I2C_HID=m +CONFIG_I2C_I801=m +CONFIG_I2C_ISCH=m +CONFIG_I2C_MUX_GPIO=m +CONFIG_I2C_MUX_LTC4306=m +CONFIG_I2C_MUX_MLXCPLD=m +CONFIG_I2C_MUX_PCA9541=m +CONFIG_I2C_MUX_PCA954x=m +CONFIG_I2C_MUX_REG=m +CONFIG_I2C_NFORCE2=m +CONFIG_I2C_NVIDIA_GPU=m +CONFIG_I2C_OCORES=m +CONFIG_I2C_PCA_PLATFORM=m +CONFIG_I2C_PIIX4=m +CONFIG_I2C_SIMTEC=m +CONFIG_I2C_SIS5595=m +CONFIG_I2C_SIS630=m +CONFIG_I2C_SIS96X=m +# CONFIG_I2C_SLAVE is not set +CONFIG_I2C_TAOS_EVM=m +CONFIG_I2C_VIA=m +CONFIG_I2C_VIAPRO=m +CONFIG_I2C_XILINX=m +CONFIG_I3C=m +CONFIG_I6300ESB_WDT=m +CONFIG_ICS932S401=m +CONFIG_IEEE802154=m +CONFIG_IIO=m +CONFIG_ILLEGAL_POINTER_VALUE=0x5deadbeef0000000 +CONFIG_IMA_ARCH_POLICY=y +CONFIG_IMA_DEFAULT_HASH="sha256" +# CONFIG_IMA_DEFAULT_HASH_SHA1 is not set +CONFIG_IMA_DEFAULT_HASH_SHA256=y +CONFIG_IMA_DEFAULT_TEMPLATE="ima-sig" +CONFIG_IMA_LOAD_X509=y +# CONFIG_IMA_NG_TEMPLATE is not set +CONFIG_IMA_READ_POLICY=y +CONFIG_IMA_SECURE_AND_OR_TRUSTED_BOOT=y +CONFIG_IMA_SIG_TEMPLATE=y +CONFIG_INFINIBAND_BNXT_RE=m +CONFIG_INFINIBAND_OCRDMA=m +CONFIG_INPUT_EVBUG=m +CONFIG_INPUT_FF_MEMLESS=m +CONFIG_INPUT_JOYDEV=m +CONFIG_INPUT_JOYSTICK=y +CONFIG_INPUT_KEYBOARD=y +CONFIG_INPUT_MATRIXKMAP=m +CONFIG_INPUT_MISC=y +CONFIG_INPUT_MOUSE=y +CONFIG_INPUT_MOUSEDEV=y +CONFIG_INPUT_POLLDEV=m +CONFIG_INPUT_SPARSEKMAP=m +CONFIG_INPUT_TABLET=y +CONFIG_INPUT_TOUCHSCREEN=y +CONFIG_INTERCONNECT=y +CONFIG_IPACK_BUS=m +CONFIG_IPMI_HANDLER=m +# CONFIG_IP_DCCP_CCID3 is not set +CONFIG_IRQ_BYPASS_MANAGER=y +# CONFIG_IRQ_FORCED_THREADING_DEFAULT is not set +CONFIG_ISL29003=m +CONFIG_ISL29020=m +CONFIG_JFS_FS=m +CONFIG_JME=m +CONFIG_JUMP_LABEL=y +CONFIG_KARMA_PARTITION=y +CONFIG_KERNEL_GZIP=y +CONFIG_KEXEC_FILE=y +CONFIG_KVM=y +CONFIG_LAPB=m +# CONFIG_LATENCYTOP is not set +CONFIG_LCD_CLASS_DEVICE=m +CONFIG_LDM_PARTITION=y +CONFIG_LIBNVDIMM=y +CONFIG_LLC2=m +CONFIG_LOG_BUF_SHIFT=18 +CONFIG_LPC_ICH=m +CONFIG_LPC_SCH=m +CONFIG_LZ4_COMPRESS=y +CONFIG_MAC_PARTITION=y +CONFIG_MAILBOX=y +CONFIG_MAX63XX_WATCHDOG=m +CONFIG_MCB=m +CONFIG_MDIO_BCM_UNIMAC=m +CONFIG_MDIO_BITBANG=m +CONFIG_MDIO_BUS=y +CONFIG_MDIO_BUS_MUX=m +CONFIG_MDIO_MSCC_MIIM=m +CONFIG_MDIO_THUNDER=m +CONFIG_MDIO_XPCS=m +CONFIG_MD_MULTIPATH=m +CONFIG_MEDIA_SUPPORT=m +CONFIG_MEGARAID_LEGACY=m +CONFIG_MEGARAID_NEWGEN=y +CONFIG_MEGARAID_SAS=m +CONFIG_MEMORY=y +# CONFIG_MEMORY_HOTPLUG_DEFAULT_ONLINE is not set +CONFIG_MEMSTICK=m +# CONFIG_MEM_SOFT_DIRTY is not set +CONFIG_MFD_88PM800=m +CONFIG_MFD_88PM805=m +CONFIG_MFD_ARIZONA_I2C=m +CONFIG_MFD_AXP20X_I2C=m +CONFIG_MFD_BCM590XX=m +CONFIG_MFD_BD9571MWV=m +CONFIG_MFD_DA9062=m +CONFIG_MFD_DA9063=y +CONFIG_MFD_DA9150=m +CONFIG_MFD_IQS62X=m +CONFIG_MFD_JANZ_CMODIO=m +CONFIG_MFD_KEMPLD=m +CONFIG_MFD_LM3533=m +CONFIG_MFD_LP3943=m +CONFIG_MFD_MADERA=m +CONFIG_MFD_MAX14577=y +CONFIG_MFD_MAX77693=y +CONFIG_MFD_MAX8907=m +CONFIG_MFD_MC13XXX_I2C=m +CONFIG_MFD_MENF21BMC=m +CONFIG_MFD_MP2629=m +CONFIG_MFD_MT6360=m +CONFIG_MFD_MT6397=m +CONFIG_MFD_PCF50633=m +CONFIG_MFD_RDC321X=m +CONFIG_MFD_RETU=m +CONFIG_MFD_RT5033=m +CONFIG_MFD_SI476X_CORE=m +CONFIG_MFD_SKY81452=m +CONFIG_MFD_SM501=m +CONFIG_MFD_SYSCON=y +CONFIG_MFD_TI_AM335X_TSCADC=m +CONFIG_MFD_TI_LMU=m +CONFIG_MFD_TI_LP873X=m +CONFIG_MFD_TPS65086=m +# CONFIG_MFD_TPS65217 is not set +CONFIG_MFD_TPS65912_I2C=y +CONFIG_MFD_TQMX86=m +CONFIG_MFD_VX855=m +CONFIG_MFD_WCD934X=m +CONFIG_MFD_WL1273_CORE=m +CONFIG_MFD_WM8994=m +CONFIG_MHI_BUS=m +CONFIG_MII=m +CONFIG_MINIX_FS=m +CONFIG_MINIX_SUBPARTITION=y +CONFIG_MISC_ALCOR_PCI=m +CONFIG_MISC_RTSX_PCI=m +CONFIG_MLXSW_I2C=m +CONFIG_MMC=y +CONFIG_MMC_BLOCK=m +CONFIG_MMC_CQHCI=m +# CONFIG_MMC_HSQ is not set +CONFIG_MMC_SDHCI=m +CONFIG_MMC_SDHCI_PLTFM=m +CONFIG_MOST=m +CONFIG_MTD=m +CONFIG_MTD_BLKDEVS=m +CONFIG_MTD_BLOCK=m +CONFIG_MTD_CMDLINE_PARTS=m +CONFIG_MTD_NAND_CORE=m +CONFIG_MTD_NAND_ECC_SW_HAMMING=m +CONFIG_MTD_OF_PARTS=m +# CONFIG_MTD_PHYSMAP_GEMINI is not set +# CONFIG_MTD_PHYSMAP_VERSATILE is not set +CONFIG_MTD_RAW_NAND=m +# CONFIG_NET_DSA_MSCC_FELIX is not set +CONFIG_NET_VENDOR_3COM=y +CONFIG_NET_VENDOR_ADAPTEC=y +CONFIG_NET_VENDOR_AGERE=y +CONFIG_NET_VENDOR_ALTEON=y +CONFIG_NET_VENDOR_AMD=y +CONFIG_NET_VENDOR_ARC=y +CONFIG_NET_VENDOR_ATHEROS=y +CONFIG_NET_VENDOR_BROADCOM=y +CONFIG_NET_VENDOR_BROCADE=y +CONFIG_NET_VENDOR_CAVIUM=y +CONFIG_NET_VENDOR_CHELSIO=y +CONFIG_NET_VENDOR_CISCO=y +CONFIG_NET_VENDOR_DEC=y +CONFIG_NET_VENDOR_DLINK=y +CONFIG_NET_VENDOR_EMULEX=y +CONFIG_NET_VENDOR_EZCHIP=y +CONFIG_NET_VENDOR_GOOGLE=y +CONFIG_NET_VENDOR_HUAWEI=y +CONFIG_NET_VENDOR_INTEL=y +CONFIG_NET_VENDOR_MARVELL=y +CONFIG_NET_VENDOR_MICREL=y +CONFIG_NET_VENDOR_MICROCHIP=y +CONFIG_NET_VENDOR_MICROSEMI=y +CONFIG_NET_VENDOR_MYRI=y +CONFIG_NET_VENDOR_NATSEMI=y +CONFIG_NET_VENDOR_NI=y +CONFIG_NET_VENDOR_NVIDIA=y +CONFIG_NET_VENDOR_OKI=y +CONFIG_NET_VENDOR_PENSANDO=y +CONFIG_NET_VENDOR_QLOGIC=y +CONFIG_NET_VENDOR_QUALCOMM=y +CONFIG_NET_VENDOR_RDC=y +CONFIG_NET_VENDOR_REALTEK=y +CONFIG_NET_VENDOR_RENESAS=y +CONFIG_NET_VENDOR_ROCKER=y +CONFIG_NET_VENDOR_SAMSUNG=y +CONFIG_NET_VENDOR_SEEQ=y +CONFIG_NET_VENDOR_SILAN=y +CONFIG_NET_VENDOR_SIS=y +CONFIG_NET_VENDOR_SMSC=y +CONFIG_NET_VENDOR_STMICRO=y +CONFIG_NET_VENDOR_SUN=y +CONFIG_NET_VENDOR_TEHUTI=y +CONFIG_NET_VENDOR_TI=y +CONFIG_NET_VENDOR_VIA=y +CONFIG_NET_VENDOR_WIZNET=y +CONFIG_NEW_LEDS=y +CONFIG_NFC=m +CONFIG_NFP=m +CONFIG_NODES_SHIFT=8 +CONFIG_NOP_USB_XCEIV=m +CONFIG_NOZOMI=m +CONFIG_NR_CPUS=2048 +CONFIG_NTB=m +# CONFIG_NTFS_RW is not set +CONFIG_NUMA_BALANCING_DEFAULT_ENABLED=y +CONFIG_NVMEM=y +CONFIG_NVRAM=y +CONFIG_N_GSM=m +CONFIG_OF=y +CONFIG_OMFS_FS=m +CONFIG_OSF_PARTITION=y +CONFIG_PACKING=y +# CONFIG_PAGE_EXTENSION is not set +CONFIG_PAGE_OFFSET=0xc000000000000000 +CONFIG_PANIC_TIMEOUT=10 +CONFIG_PARPORT=m +CONFIG_PATA_SIS=m +CONFIG_PC104=y +# CONFIG_PCCARD is not set +# CONFIG_PCIEPORTBUS is not set +CONFIG_PCIPCWATCHDOG=m +CONFIG_PCI_PASID=y +CONFIG_PCI_PRI=y +CONFIG_PCI_QUIRKS=y +CONFIG_PGTABLE_LEVELS=4 +CONFIG_PHANTOM=m +CONFIG_PHONET=m +CONFIG_PHYLIB=y +CONFIG_PHYSICAL_START=0x00000000 +CONFIG_PHY_PXA_28NM_HSIC=m +CONFIG_PHY_PXA_28NM_USB2=m +CONFIG_PINCTRL=y +CONFIG_PM_DEVFREQ=y +CONFIG_POWERCAP=y +CONFIG_POWER_AVS=y +CONFIG_POWER_SUPPLY=y +CONFIG_PPP=y +CONFIG_PPS=y +CONFIG_PPS_CLIENT_GPIO=m +CONFIG_PPS_CLIENT_LDISC=m +# CONFIG_PREEMPT is not set +# CONFIG_PREEMPT_NONE is not set +CONFIG_PREEMPT_VOLUNTARY=y +# CONFIG_PSI_DEFAULT_DISABLED is not set +CONFIG_PSTORE=y +# CONFIG_PSTORE_CONSOLE is not set +CONFIG_PSTORE_RAM=m +CONFIG_PTP_1588_CLOCK=y +CONFIG_PTP_1588_CLOCK_IDT82P33=m +CONFIG_PWM=y +CONFIG_QNX4FS_FS=m +CONFIG_QNX6FS_FS=m +CONFIG_QRTR=m +CONFIG_RAPIDIO=y +CONFIG_RAVE_SP_CORE=m +CONFIG_RAW_DRIVER=m +CONFIG_RCU_CPU_STALL_TIMEOUT=21 +CONFIG_RC_CORE=m +CONFIG_REED_SOLOMON=m +CONFIG_REGULATOR=y +CONFIG_REGULATOR_FIXED_VOLTAGE=m +CONFIG_REGULATOR_TWL4030=m +CONFIG_REISERFS_FS=m +CONFIG_REMOTEPROC=y +CONFIG_RESET_CONTROLLER=y +CONFIG_RFKILL=y +CONFIG_RMI4_CORE=m +CONFIG_ROMFS_FS=m +CONFIG_RPMSG_VIRTIO=m +CONFIG_RTC_DRV_CMOS=m +CONFIG_RTC_DRV_PCF8523=m +CONFIG_RTC_DRV_TWL4030=m +CONFIG_S2IO=m +CONFIG_SATA_AHCI_PLATFORM=m +CONFIG_SCHED_SMT=y +CONFIG_SCSI_3W_9XXX=m +CONFIG_SCSI_3W_SAS=m +CONFIG_SCSI_AACRAID=m +CONFIG_SCSI_ACARD=m +CONFIG_SCSI_ADVANSYS=m +CONFIG_SCSI_AIC79XX=m +CONFIG_SCSI_AIC7XXX=m +CONFIG_SCSI_AIC94XX=m +CONFIG_SCSI_AM53C974=m +CONFIG_SCSI_ARCMSR=m +CONFIG_SCSI_BFA_FC=m +CONFIG_SCSI_BNX2X_FCOE=m +CONFIG_SCSI_BNX2_ISCSI=m +CONFIG_SCSI_CHELSIO_FCOE=m +CONFIG_SCSI_CXGB3_ISCSI=m +CONFIG_SCSI_CXGB4_ISCSI=m +CONFIG_SCSI_DC395x=m +CONFIG_SCSI_DMX3191D=m +CONFIG_SCSI_ESAS2R=m +CONFIG_SCSI_FDOMAIN_PCI=m +CONFIG_SCSI_GDTH=m +CONFIG_SCSI_HPSA=m +CONFIG_SCSI_HPTIOP=m +CONFIG_SCSI_INIA100=m +CONFIG_SCSI_INITIO=m +CONFIG_SCSI_IPS=m +CONFIG_SCSI_LPFC=m +CONFIG_SCSI_MVSAS=m +CONFIG_SCSI_MVUMI=m +CONFIG_SCSI_MYRB=m +CONFIG_SCSI_PM8001=m +CONFIG_SCSI_PMCRAID=m +CONFIG_SCSI_QLA_FC=m +CONFIG_SCSI_QLA_ISCSI=m +CONFIG_SCSI_QLOGIC_1280=m +CONFIG_SCSI_SNIC=m +CONFIG_SCSI_SRP_ATTRS=y +CONFIG_SCSI_STEX=m +CONFIG_SCSI_SYM53C8XX_2=m +CONFIG_SCSI_UFSHCD=m +CONFIG_SCSI_WD719X=m +CONFIG_SECURITY_SELINUX_BOOTPARAM=y +CONFIG_SENSORS_APDS990X=m +CONFIG_SENSORS_BH1770=m +CONFIG_SENSORS_LIS3_I2C=m +CONFIG_SENSORS_TSL2550=m +CONFIG_SERIAL_8250_DW=m +# CONFIG_SERIAL_8250_FINTEK is not set +CONFIG_SERIAL_ALTERA_JTAGUART=m +CONFIG_SERIAL_ALTERA_UART=m +CONFIG_SERIAL_ARC=m +CONFIG_SERIAL_CORE=y +CONFIG_SERIAL_FSL_LINFLEXUART=m +CONFIG_SERIAL_FSL_LPUART=m +CONFIG_SERIAL_JSM=m +CONFIG_SERIAL_NONSTANDARD=y +CONFIG_SERIAL_RP2=m +CONFIG_SERIAL_SC16IS7XX=m +CONFIG_SERIAL_SCCNXP=y +CONFIG_SERIO=y +CONFIG_SFC=m +CONFIG_SFC_FALCON=m +CONFIG_SGI_PARTITION=y +CONFIG_SLIP=m +CONFIG_SND=m +CONFIG_SND_DMAENGINE_PCM=m +CONFIG_SND_HDA_PREALLOC_SIZE=64 +CONFIG_SND_PCM=m +CONFIG_SND_SOC=m +CONFIG_SND_SOC_FSL_SSI=m +CONFIG_SND_SOC_I2C_AND_SPI=m +CONFIG_SND_SOC_IMX_AUDMUX=m +CONFIG_SND_SOC_SGTL5000=m +CONFIG_SND_TIMER=m +CONFIG_SOC_TI=y +CONFIG_SOLARIS_X86_PARTITION=y +CONFIG_SOUND=m +CONFIG_SPI=y +# CONFIG_SPI_ROCKCHIP is not set +CONFIG_SPMI=m +CONFIG_SRAM=y +CONFIG_SSB=m +CONFIG_STAGING=y +CONFIG_STANDALONE=y +CONFIG_SUN_PARTITION=y +CONFIG_SYSV68_PARTITION=y +CONFIG_SYSV_FS=m +CONFIG_TCG_TIS_I2C_ATMEL=y +CONFIG_TCG_TIS_I2C_INFINEON=y +CONFIG_TCG_TIS_I2C_NUVOTON=y +CONFIG_TCG_TIS_ST33ZP24_I2C=m +CONFIG_THERMAL=y +CONFIG_TIFM_CORE=m +# CONFIG_TI_SOC_THERMAL is not set +CONFIG_TOUCHSCREEN_ELAN=m +CONFIG_TPS6105X=m +CONFIG_TPS65010=m +CONFIG_TPS6507X=m +CONFIG_TRACE_SINK=m +CONFIG_TRANSPARENT_HUGEPAGE_ALWAYS=y +# CONFIG_TRANSPARENT_HUGEPAGE_MADVISE is not set +CONFIG_TTY_PRINTK=y +CONFIG_UACCE=m +CONFIG_UFS_FS=m +CONFIG_UIO_AEC=m +CONFIG_UIO_CIF=m +CONFIG_UIO_DMEM_GENIRQ=m +CONFIG_UIO_MF624=m +CONFIG_UIO_NETX=m +CONFIG_UIO_PCI_GENERIC=m +CONFIG_UIO_PDRV_GENIRQ=m +CONFIG_UIO_PRUSS=m +CONFIG_UIO_SERCOS3=m +CONFIG_ULTRIX_PARTITION=y +CONFIG_UNIXWARE_DISKLABEL=y +CONFIG_USB4=m +CONFIG_USB_DWC2_PCI=m +CONFIG_USB_EHCI_HCD_PLATFORM=m +CONFIG_USB_GADGET=m +# CONFIG_USB_G_MULTI is not set +CONFIG_USB_HCD_BCMA=m +CONFIG_USB_HCD_SSB=m +CONFIG_USB_MUSB_HDRC=m +CONFIG_USB_OHCI_HCD_PLATFORM=m +CONFIG_USB_ROLE_SWITCH=m +CONFIG_USB_SUPPORT=y +CONFIG_VDPA=m +CONFIG_VFIO=y +CONFIG_VFIO_PCI=y +CONFIG_VFIO_VIRQFD=y +CONFIG_VIRTIO_MMIO=y +# CONFIG_VIRT_CPU_ACCOUNTING_NATIVE is not set +CONFIG_VME_BUS=y +# CONFIG_VOP_BUS is not set +CONFIG_VXFS_FS=m +CONFIG_VXGE=m +CONFIG_W1=m +CONFIG_WAN=y +CONFIG_WDTPCI=m +CONFIG_WIMAX=m +CONFIG_X25=m +CONFIG_XILINX_LL_TEMAC=m +CONFIG_XILINX_SDFEC=m +CONFIG_XILINX_WATCHDOG=m +CONFIG_XILLYBUS=m +CONFIG_XZ_DEC_ARM=y +CONFIG_XZ_DEC_ARMTHUMB=y +CONFIG_XZ_DEC_IA64=y +CONFIG_XZ_DEC_POWERPC=y +CONFIG_XZ_DEC_SPARC=y +CONFIG_XZ_DEC_TEST=m +CONFIG_XZ_DEC_X86=y +CONFIG_YELLOWFIN=m +CONFIG_ZIIRAVE_WATCHDOG=m +CONFIG_ZSTD_COMPRESS=y --- linux-azure-5.8-5.8.0.orig/debian.master/config/ppc64el/config.flavour.generic +++ linux-azure-5.8-5.8.0/debian.master/config/ppc64el/config.flavour.generic @@ -0,0 +1,3 @@ +# +# Config options for config.flavour.generic automatically generated by splitconfig.pl +# --- linux-azure-5.8-5.8.0.orig/debian.master/config/s390x/config.common.s390x +++ linux-azure-5.8-5.8.0/debian.master/config/s390x/config.common.s390x @@ -0,0 +1,593 @@ +# +# Config options for config.common.s390x automatically generated by splitconfig.pl +# +# CONFIG_6LOWPAN is not set +# CONFIG_ABX500_CORE is not set +# CONFIG_AD525X_DPOT is not set +# CONFIG_ADFS_FS is not set +# CONFIG_AFFS_FS is not set +# CONFIG_AIX_PARTITION is not set +# CONFIG_ALIM7101_WDT is not set +# CONFIG_ALTERA_STAPL is not set +# CONFIG_ALTERA_TSE is not set +# CONFIG_AMIGA_PARTITION is not set +# CONFIG_ANDROID is not set +# CONFIG_APDS9802ALS is not set +# CONFIG_APPLICOM is not set +# CONFIG_ARCNET is not set +# CONFIG_ATA is not set +# CONFIG_ATALK is not set +# CONFIG_ATARI_PARTITION is not set +# CONFIG_ATA_OVER_ETH is not set +# CONFIG_ATM is not set +CONFIG_AUTOFS4_FS=y +CONFIG_AUTOFS_FS=y +# CONFIG_AUXDISPLAY is not set +# CONFIG_AX88796B_PHY is not set +# CONFIG_BACKLIGHT_CLASS_DEVICE is not set +# CONFIG_BAREUDP is not set +# CONFIG_BATMAN_ADV is not set +# CONFIG_BCM84881_PHY is not set +# CONFIG_BCMA is not set +# CONFIG_BCM_KONA_USB2_PHY is not set +# CONFIG_BE2ISCSI is not set +# CONFIG_BEFS_FS is not set +# CONFIG_BFS_FS is not set +# CONFIG_BLK_DEV_3W_XXXX_RAID is not set +# CONFIG_BLK_DEV_CRYPTOLOOP is not set +# CONFIG_BLK_DEV_PCIESSD_MTIP32XX is not set +# CONFIG_BLK_DEV_RSXX is not set +# CONFIG_BLK_DEV_SKD is not set +# CONFIG_BLK_DEV_SX8 is not set +# CONFIG_BLK_DEV_UMEM is not set +# CONFIG_BOUNCE is not set +# CONFIG_BSD_DISKLABEL is not set +# CONFIG_C2PORT is not set +# CONFIG_CADENCE_WATCHDOG is not set +# CONFIG_CAIF is not set +# CONFIG_CAN is not set +# CONFIG_CB710_CORE is not set +CONFIG_CC_VERSION_TEXT="s390x-linux-gnu-gcc (Ubuntu 10.2.0-8ubuntu1) 10.2.0" +# CONFIG_CDROM_PKTCDVD is not set +CONFIG_CMA=y +# CONFIG_CMDLINE_PARTITION is not set +CONFIG_CMM=y +# CONFIG_COMMON_CLK is not set +# CONFIG_COUNTER is not set +CONFIG_CPU_BIG_ENDIAN=y +# CONFIG_CRAMFS is not set +CONFIG_CRYPTO_DEFLATE=m +# CONFIG_CRYPTO_DEV_ATMEL_ECC is not set +# CONFIG_CRYPTO_DEV_ATMEL_SHA204A is not set +# CONFIG_CRYPTO_DEV_NITROX_CNN55XX is not set +# CONFIG_CRYPTO_DEV_SAFEXCEL is not set +CONFIG_CRYPTO_LIB_POLY1305_RSIZE=1 +# CONFIG_DECNET is not set +CONFIG_DEFAULT_MMAP_MIN_ADDR=65536 +# CONFIG_DMADEVICES is not set +# CONFIG_DMA_CMA is not set +CONFIG_DM_DEBUG=y +# CONFIG_DNET is not set +# CONFIG_DRM_AMDGPU is not set +# CONFIG_DRM_ANALOGIX_ANX78XX is not set +# CONFIG_DRM_AST is not set +# CONFIG_DRM_CIRRUS_QEMU is not set +# CONFIG_DRM_DP_AUX_CHARDEV is not set +# CONFIG_DRM_DP_CEC is not set +# CONFIG_DRM_ETNAVIV is not set +# CONFIG_DRM_I2C_CH7006 is not set +# CONFIG_DRM_I2C_NXP_TDA9950 is not set +# CONFIG_DRM_I2C_NXP_TDA998X is not set +# CONFIG_DRM_I2C_SIL164 is not set +# CONFIG_DRM_MGAG200 is not set +# CONFIG_DRM_NOUVEAU is not set +CONFIG_DRM_PANEL_ORIENTATION_QUIRKS=m +# CONFIG_DRM_QXL is not set +# CONFIG_DRM_RADEON is not set +# CONFIG_DRM_VGEM is not set +# CONFIG_DRM_VKMS is not set +# CONFIG_DS1682 is not set +# CONFIG_DUMMY_IRQ is not set +# CONFIG_DW_WATCHDOG is not set +# CONFIG_ECHO is not set +# CONFIG_EEPROM_93CX6 is not set +# CONFIG_EEPROM_AT24 is not set +# CONFIG_EEPROM_EE1004 is not set +# CONFIG_EEPROM_IDT_89HPESX is not set +# CONFIG_EEPROM_LEGACY is not set +# CONFIG_EEPROM_MAX6875 is not set +# CONFIG_EFS_FS is not set +# CONFIG_ENCLOSURE_SERVICES is not set +# CONFIG_ETHOC is not set +# CONFIG_EVM_LOAD_X509 is not set +# CONFIG_EXFAT_FS is not set +# CONFIG_EXTCON is not set +# CONFIG_F2FS_FS is not set +# CONFIG_FB_3DFX is not set +# CONFIG_FB_ARK is not set +# CONFIG_FB_ASILIANT is not set +# CONFIG_FB_ATY is not set +# CONFIG_FB_ATY128 is not set +# CONFIG_FB_CARMINE is not set +CONFIG_FB_CFB_COPYAREA=m +CONFIG_FB_CFB_FILLRECT=m +CONFIG_FB_CFB_IMAGEBLIT=m +# CONFIG_FB_CIRRUS is not set +# CONFIG_FB_CYBER2000 is not set +# CONFIG_FB_I740 is not set +# CONFIG_FB_IBM_GXT4500 is not set +# CONFIG_FB_IMSTT is not set +# CONFIG_FB_KYRO is not set +# CONFIG_FB_MATROX is not set +# CONFIG_FB_MB862XX is not set +# CONFIG_FB_METRONOME is not set +# CONFIG_FB_NEOMAGIC is not set +# CONFIG_FB_NVIDIA is not set +# CONFIG_FB_OPENCORES is not set +# CONFIG_FB_PM2 is not set +# CONFIG_FB_PM3 is not set +# CONFIG_FB_RADEON is not set +# CONFIG_FB_RIVA is not set +# CONFIG_FB_S1D13XXX is not set +# CONFIG_FB_S3 is not set +# CONFIG_FB_SAVAGE is not set +# CONFIG_FB_SIMPLE is not set +# CONFIG_FB_SIS is not set +# CONFIG_FB_SM712 is not set +# CONFIG_FB_TILEBLITTING is not set +# CONFIG_FB_TRIDENT is not set +# CONFIG_FB_UVESA is not set +# CONFIG_FB_VOODOO1 is not set +# CONFIG_FB_VT8623 is not set +# CONFIG_FDDI is not set +# CONFIG_FEALNX is not set +# CONFIG_FIREWIRE is not set +# CONFIG_FIREWIRE_NOSY is not set +CONFIG_FIXED_PHY=m +CONFIG_FORCE_MAX_ZONEORDER=9 +# CONFIG_FPGA_BRIDGE is not set +# CONFIG_FPGA_DFL is not set +CONFIG_FRAME_WARN=1024 +# CONFIG_FUSION is not set +# CONFIG_GAMEPORT is not set +# CONFIG_GENERIC_PHY is not set +# CONFIG_GNSS is not set +# CONFIG_GPIO_ADP5588 is not set +# CONFIG_GPIO_AMD_FCH is not set +# CONFIG_GPIO_DWAPB is not set +CONFIG_GPIO_GENERIC=m +CONFIG_GPIO_GENERIC_PLATFORM=m +# CONFIG_GPIO_MAX7300 is not set +# CONFIG_GPIO_MAX732X is not set +# CONFIG_GPIO_MB86S7X is not set +# CONFIG_GPIO_PCA953X is not set +# CONFIG_GPIO_PCF857X is not set +# CONFIG_GPIO_RDC321X is not set +# CONFIG_GPIO_SIOX is not set +# CONFIG_GPIO_TPIC2810 is not set +# CONFIG_GPIO_XILINX is not set +# CONFIG_GREYBUS is not set +# CONFIG_HABANA_AI is not set +# CONFIG_HAMACHI is not set +# CONFIG_HFSPLUS_FS is not set +# CONFIG_HFS_FS is not set +# CONFIG_HID is not set +# CONFIG_HIO is not set +# CONFIG_HMC6352 is not set +CONFIG_HOTPLUG_PCI=y +# CONFIG_HOTPLUG_PCI_SHPC is not set +# CONFIG_HPFS_FS is not set +# CONFIG_HP_ILO is not set +# CONFIG_HSI is not set +# CONFIG_HSR is not set +# CONFIG_HTC_PASIC3 is not set +# CONFIG_HWMON is not set +# CONFIG_HWSPINLOCK is not set +# CONFIG_HW_RANDOM_TIMERIOMEM is not set +CONFIG_HZ=100 +CONFIG_HZ_100=y +# CONFIG_HZ_1000 is not set +# CONFIG_HZ_250 is not set +CONFIG_I2C=m +# CONFIG_I2C_ALI1535 is not set +# CONFIG_I2C_ALI1563 is not set +# CONFIG_I2C_ALI15X3 is not set +# CONFIG_I2C_AMD756 is not set +# CONFIG_I2C_AMD8111 is not set +# CONFIG_I2C_CBUS_GPIO is not set +CONFIG_I2C_CHARDEV=m +# CONFIG_I2C_DESIGNWARE_PCI is not set +# CONFIG_I2C_DESIGNWARE_PLATFORM is not set +# CONFIG_I2C_GPIO is not set +# CONFIG_I2C_HID is not set +# CONFIG_I2C_I801 is not set +# CONFIG_I2C_ISCH is not set +# CONFIG_I2C_MUX_GPIO is not set +# CONFIG_I2C_MUX_LTC4306 is not set +# CONFIG_I2C_MUX_MLXCPLD is not set +# CONFIG_I2C_MUX_PCA9541 is not set +# CONFIG_I2C_MUX_PCA954x is not set +# CONFIG_I2C_MUX_REG is not set +# CONFIG_I2C_NFORCE2 is not set +# CONFIG_I2C_NVIDIA_GPU is not set +# CONFIG_I2C_OCORES is not set +# CONFIG_I2C_PCA_PLATFORM is not set +# CONFIG_I2C_PIIX4 is not set +# CONFIG_I2C_SIMTEC is not set +# CONFIG_I2C_SIS5595 is not set +# CONFIG_I2C_SIS630 is not set +# CONFIG_I2C_SIS96X is not set +# CONFIG_I2C_SLAVE is not set +# CONFIG_I2C_TAOS_EVM is not set +# CONFIG_I2C_VIA is not set +# CONFIG_I2C_VIAPRO is not set +# CONFIG_I2C_XILINX is not set +# CONFIG_I3C is not set +# CONFIG_I6300ESB_WDT is not set +# CONFIG_ICS932S401 is not set +# CONFIG_IEEE802154 is not set +# CONFIG_IIO is not set +# CONFIG_IMA_ARCH_POLICY is not set +CONFIG_IMA_DEFAULT_HASH="sha1" +CONFIG_IMA_DEFAULT_HASH_SHA1=y +# CONFIG_IMA_DEFAULT_HASH_SHA256 is not set +CONFIG_IMA_DEFAULT_TEMPLATE="ima-ng" +# CONFIG_IMA_LOAD_X509 is not set +CONFIG_IMA_NG_TEMPLATE=y +# CONFIG_IMA_READ_POLICY is not set +# CONFIG_IMA_SECURE_AND_OR_TRUSTED_BOOT is not set +# CONFIG_IMA_SIG_TEMPLATE is not set +# CONFIG_INFINIBAND_BNXT_RE is not set +# CONFIG_INFINIBAND_OCRDMA is not set +# CONFIG_INPUT_EVBUG is not set +# CONFIG_INPUT_FF_MEMLESS is not set +# CONFIG_INPUT_JOYDEV is not set +# CONFIG_INPUT_JOYSTICK is not set +# CONFIG_INPUT_KEYBOARD is not set +# CONFIG_INPUT_MATRIXKMAP is not set +# CONFIG_INPUT_MISC is not set +# CONFIG_INPUT_MOUSE is not set +# CONFIG_INPUT_MOUSEDEV is not set +# CONFIG_INPUT_POLLDEV is not set +# CONFIG_INPUT_SPARSEKMAP is not set +# CONFIG_INPUT_TABLET is not set +# CONFIG_INPUT_TOUCHSCREEN is not set +# CONFIG_INTERCONNECT is not set +# CONFIG_IPACK_BUS is not set +# CONFIG_IPMI_HANDLER is not set +CONFIG_IP_DCCP_CCID3=y +CONFIG_IRQ_BYPASS_MANAGER=m +# CONFIG_ISL29003 is not set +# CONFIG_ISL29020 is not set +# CONFIG_JFS_FS is not set +# CONFIG_JME is not set +CONFIG_JUMP_LABEL=y +# CONFIG_KARMA_PARTITION is not set +# CONFIG_KERNEL_GZIP is not set +CONFIG_KERNEL_LZ4=y +# CONFIG_KEXEC_FILE is not set +CONFIG_KVM=y +# CONFIG_LAPB is not set +# CONFIG_LATENCYTOP is not set +# CONFIG_LCD_CLASS_DEVICE is not set +# CONFIG_LDM_PARTITION is not set +# CONFIG_LIBNVDIMM is not set +# CONFIG_LLC2 is not set +CONFIG_LOG_BUF_SHIFT=18 +# CONFIG_LPC_ICH is not set +# CONFIG_LPC_SCH is not set +CONFIG_LZ4_COMPRESS=m +# CONFIG_MAC_PARTITION is not set +# CONFIG_MAILBOX is not set +# CONFIG_MAX63XX_WATCHDOG is not set +# CONFIG_MCB is not set +# CONFIG_MDIO_BCM_UNIMAC is not set +# CONFIG_MDIO_BITBANG is not set +CONFIG_MDIO_BUS=m +# CONFIG_MDIO_MSCC_MIIM is not set +# CONFIG_MDIO_THUNDER is not set +# CONFIG_MDIO_XPCS is not set +CONFIG_MD_MULTIPATH=y +# CONFIG_MEDIA_SUPPORT is not set +# CONFIG_MEGARAID_LEGACY is not set +# CONFIG_MEGARAID_NEWGEN is not set +# CONFIG_MEGARAID_SAS is not set +# CONFIG_MEMORY is not set +# CONFIG_MEMORY_HOTPLUG_DEFAULT_ONLINE is not set +# CONFIG_MEMSTICK is not set +CONFIG_MEM_SOFT_DIRTY=y +# CONFIG_MFD_88PM800 is not set +# CONFIG_MFD_88PM805 is not set +# CONFIG_MFD_ARIZONA_I2C is not set +# CONFIG_MFD_AXP20X_I2C is not set +# CONFIG_MFD_BCM590XX is not set +# CONFIG_MFD_BD9571MWV is not set +# CONFIG_MFD_DA9062 is not set +# CONFIG_MFD_DA9063 is not set +# CONFIG_MFD_DA9150 is not set +# CONFIG_MFD_IQS62X is not set +# CONFIG_MFD_JANZ_CMODIO is not set +# CONFIG_MFD_KEMPLD is not set +# CONFIG_MFD_LM3533 is not set +# CONFIG_MFD_LP3943 is not set +# CONFIG_MFD_MADERA is not set +# CONFIG_MFD_MAX14577 is not set +# CONFIG_MFD_MAX77693 is not set +# CONFIG_MFD_MAX8907 is not set +# CONFIG_MFD_MC13XXX_I2C is not set +# CONFIG_MFD_MENF21BMC is not set +# CONFIG_MFD_MP2629 is not set +# CONFIG_MFD_MT6360 is not set +# CONFIG_MFD_MT6397 is not set +# CONFIG_MFD_PCF50633 is not set +# CONFIG_MFD_RDC321X is not set +# CONFIG_MFD_RETU is not set +# CONFIG_MFD_RT5033 is not set +# CONFIG_MFD_SI476X_CORE is not set +# CONFIG_MFD_SKY81452 is not set +# CONFIG_MFD_SM501 is not set +# CONFIG_MFD_SYSCON is not set +# CONFIG_MFD_TI_AM335X_TSCADC is not set +# CONFIG_MFD_TI_LMU is not set +# CONFIG_MFD_TI_LP873X is not set +# CONFIG_MFD_TPS65086 is not set +# CONFIG_MFD_TPS65912_I2C is not set +# CONFIG_MFD_TQMX86 is not set +# CONFIG_MFD_VX855 is not set +# CONFIG_MFD_WCD934X is not set +# CONFIG_MFD_WL1273_CORE is not set +# CONFIG_MFD_WM8994 is not set +# CONFIG_MHI_BUS is not set +# CONFIG_MINIX_FS is not set +# CONFIG_MINIX_SUBPARTITION is not set +# CONFIG_MISC_ALCOR_PCI is not set +# CONFIG_MISC_RTSX_PCI is not set +# CONFIG_MLXSW_I2C is not set +# CONFIG_MMC is not set +# CONFIG_MOST is not set +# CONFIG_MTD is not set +# CONFIG_NET_VENDOR_3COM is not set +# CONFIG_NET_VENDOR_ADAPTEC is not set +# CONFIG_NET_VENDOR_AGERE is not set +# CONFIG_NET_VENDOR_ALTEON is not set +# CONFIG_NET_VENDOR_AMD is not set +# CONFIG_NET_VENDOR_ARC is not set +# CONFIG_NET_VENDOR_ATHEROS is not set +# CONFIG_NET_VENDOR_BROADCOM is not set +# CONFIG_NET_VENDOR_BROCADE is not set +# CONFIG_NET_VENDOR_CAVIUM is not set +# CONFIG_NET_VENDOR_CHELSIO is not set +# CONFIG_NET_VENDOR_CISCO is not set +# CONFIG_NET_VENDOR_DEC is not set +# CONFIG_NET_VENDOR_DLINK is not set +# CONFIG_NET_VENDOR_EMULEX is not set +# CONFIG_NET_VENDOR_EZCHIP is not set +# CONFIG_NET_VENDOR_GOOGLE is not set +# CONFIG_NET_VENDOR_HUAWEI is not set +# CONFIG_NET_VENDOR_INTEL is not set +# CONFIG_NET_VENDOR_MARVELL is not set +# CONFIG_NET_VENDOR_MICREL is not set +# CONFIG_NET_VENDOR_MICROCHIP is not set +# CONFIG_NET_VENDOR_MICROSEMI is not set +# CONFIG_NET_VENDOR_MYRI is not set +# CONFIG_NET_VENDOR_NATSEMI is not set +# CONFIG_NET_VENDOR_NI is not set +# CONFIG_NET_VENDOR_NVIDIA is not set +# CONFIG_NET_VENDOR_OKI is not set +# CONFIG_NET_VENDOR_PENSANDO is not set +# CONFIG_NET_VENDOR_QLOGIC is not set +# CONFIG_NET_VENDOR_QUALCOMM is not set +# CONFIG_NET_VENDOR_RDC is not set +# CONFIG_NET_VENDOR_REALTEK is not set +# CONFIG_NET_VENDOR_RENESAS is not set +# CONFIG_NET_VENDOR_ROCKER is not set +# CONFIG_NET_VENDOR_SAMSUNG is not set +# CONFIG_NET_VENDOR_SEEQ is not set +# CONFIG_NET_VENDOR_SILAN is not set +# CONFIG_NET_VENDOR_SIS is not set +# CONFIG_NET_VENDOR_SMSC is not set +# CONFIG_NET_VENDOR_STMICRO is not set +# CONFIG_NET_VENDOR_SUN is not set +# CONFIG_NET_VENDOR_TEHUTI is not set +# CONFIG_NET_VENDOR_TI is not set +# CONFIG_NET_VENDOR_VIA is not set +# CONFIG_NET_VENDOR_WIZNET is not set +# CONFIG_NEW_LEDS is not set +# CONFIG_NFC is not set +# CONFIG_NFP is not set +CONFIG_NODES_SHIFT=1 +# CONFIG_NOZOMI is not set +CONFIG_NR_CPUS=512 +# CONFIG_NTB is not set +CONFIG_NTFS_RW=y +# CONFIG_NUMA_BALANCING_DEFAULT_ENABLED is not set +# CONFIG_NVMEM is not set +# CONFIG_N_GSM is not set +# CONFIG_OF is not set +# CONFIG_OMFS_FS is not set +# CONFIG_OSF_PARTITION is not set +# CONFIG_PACKING is not set +# CONFIG_PAGE_EXTENSION is not set +CONFIG_PANIC_TIMEOUT=0 +# CONFIG_PARPORT is not set +# CONFIG_PC104 is not set +# CONFIG_PCCARD is not set +CONFIG_PCIEPORTBUS=y +# CONFIG_PCIPCWATCHDOG is not set +# CONFIG_PCI_PASID is not set +# CONFIG_PCI_PRI is not set +# CONFIG_PCI_QUIRKS is not set +CONFIG_PGTABLE_LEVELS=5 +# CONFIG_PHANTOM is not set +# CONFIG_PHONET is not set +CONFIG_PHYLIB=m +# CONFIG_PHY_PXA_28NM_HSIC is not set +# CONFIG_PHY_PXA_28NM_USB2 is not set +# CONFIG_PINCTRL is not set +# CONFIG_PM_DEVFREQ is not set +# CONFIG_POWERCAP is not set +# CONFIG_POWER_AVS is not set +# CONFIG_POWER_SUPPLY is not set +# CONFIG_PPP is not set +CONFIG_PPS=m +# CONFIG_PPS_CLIENT_GPIO is not set +# CONFIG_PPS_CLIENT_LDISC is not set +# CONFIG_PREEMPT is not set +CONFIG_PREEMPT_NONE=y +# CONFIG_PREEMPT_VOLUNTARY is not set +CONFIG_PSI_DEFAULT_DISABLED=y +# CONFIG_PSTORE is not set +CONFIG_PTP_1588_CLOCK=m +# CONFIG_PTP_1588_CLOCK_IDT82P33 is not set +# CONFIG_PWM is not set +# CONFIG_QNX4FS_FS is not set +# CONFIG_QNX6FS_FS is not set +# CONFIG_QRTR is not set +# CONFIG_RAPIDIO is not set +# CONFIG_RAVE_SP_CORE is not set +# CONFIG_RAW_DRIVER is not set +CONFIG_RCU_CPU_STALL_TIMEOUT=21 +# CONFIG_RC_CORE is not set +# CONFIG_REGULATOR is not set +# CONFIG_REISERFS_FS is not set +# CONFIG_REMOTEPROC is not set +# CONFIG_RESET_CONTROLLER is not set +# CONFIG_RFKILL is not set +# CONFIG_RMI4_CORE is not set +# CONFIG_ROMFS_FS is not set +# CONFIG_RPMSG_VIRTIO is not set +# CONFIG_S2IO is not set +CONFIG_SCHED_SMT=y +# CONFIG_SCSI_3W_9XXX is not set +# CONFIG_SCSI_3W_SAS is not set +# CONFIG_SCSI_AACRAID is not set +# CONFIG_SCSI_ACARD is not set +# CONFIG_SCSI_ADVANSYS is not set +# CONFIG_SCSI_AIC79XX is not set +# CONFIG_SCSI_AIC7XXX is not set +# CONFIG_SCSI_AIC94XX is not set +# CONFIG_SCSI_AM53C974 is not set +# CONFIG_SCSI_ARCMSR is not set +# CONFIG_SCSI_BFA_FC is not set +# CONFIG_SCSI_BNX2X_FCOE is not set +# CONFIG_SCSI_BNX2_ISCSI is not set +# CONFIG_SCSI_CHELSIO_FCOE is not set +# CONFIG_SCSI_CXGB3_ISCSI is not set +# CONFIG_SCSI_CXGB4_ISCSI is not set +# CONFIG_SCSI_DC395x is not set +# CONFIG_SCSI_DMX3191D is not set +# CONFIG_SCSI_ESAS2R is not set +# CONFIG_SCSI_FDOMAIN_PCI is not set +# CONFIG_SCSI_GDTH is not set +# CONFIG_SCSI_HPSA is not set +# CONFIG_SCSI_HPTIOP is not set +# CONFIG_SCSI_INIA100 is not set +# CONFIG_SCSI_INITIO is not set +# CONFIG_SCSI_IPS is not set +# CONFIG_SCSI_LPFC is not set +# CONFIG_SCSI_MVSAS is not set +# CONFIG_SCSI_MVUMI is not set +# CONFIG_SCSI_MYRB is not set +# CONFIG_SCSI_PM8001 is not set +# CONFIG_SCSI_PMCRAID is not set +# CONFIG_SCSI_QLA_FC is not set +# CONFIG_SCSI_QLA_ISCSI is not set +# CONFIG_SCSI_QLOGIC_1280 is not set +# CONFIG_SCSI_SNIC is not set +CONFIG_SCSI_SRP_ATTRS=m +# CONFIG_SCSI_STEX is not set +# CONFIG_SCSI_SYM53C8XX_2 is not set +# CONFIG_SCSI_UFSHCD is not set +# CONFIG_SCSI_WD719X is not set +# CONFIG_SECURITY_SELINUX_BOOTPARAM is not set +# CONFIG_SENSORS_APDS990X is not set +# CONFIG_SENSORS_BH1770 is not set +# CONFIG_SENSORS_LIS3_I2C is not set +# CONFIG_SENSORS_TSL2550 is not set +# CONFIG_SERIAL_ALTERA_JTAGUART is not set +# CONFIG_SERIAL_ALTERA_UART is not set +# CONFIG_SERIAL_ARC is not set +CONFIG_SERIAL_CORE=m +# CONFIG_SERIAL_FSL_LINFLEXUART is not set +# CONFIG_SERIAL_FSL_LPUART is not set +# CONFIG_SERIAL_JSM is not set +# CONFIG_SERIAL_NONSTANDARD is not set +# CONFIG_SERIAL_RP2 is not set +# CONFIG_SERIAL_SC16IS7XX is not set +# CONFIG_SERIAL_SCCNXP is not set +# CONFIG_SERIO is not set +# CONFIG_SFC is not set +# CONFIG_SFC_FALCON is not set +# CONFIG_SGI_PARTITION is not set +# CONFIG_SLIP is not set +# CONFIG_SOC_TI is not set +# CONFIG_SOLARIS_X86_PARTITION is not set +# CONFIG_SOUND is not set +# CONFIG_SPI is not set +# CONFIG_SPMI is not set +# CONFIG_SRAM is not set +# CONFIG_SSB is not set +# CONFIG_STAGING is not set +CONFIG_STANDALONE=y +# CONFIG_SUN_PARTITION is not set +# CONFIG_SYSV68_PARTITION is not set +# CONFIG_SYSV_FS is not set +# CONFIG_TCG_TIS_I2C_ATMEL is not set +# CONFIG_TCG_TIS_I2C_INFINEON is not set +# CONFIG_TCG_TIS_I2C_NUVOTON is not set +# CONFIG_TCG_TIS_ST33ZP24_I2C is not set +# CONFIG_THERMAL is not set +# CONFIG_TIFM_CORE is not set +# CONFIG_TPS6105X is not set +# CONFIG_TPS65010 is not set +# CONFIG_TPS6507X is not set +# CONFIG_TRACE_SINK is not set +# CONFIG_TRANSPARENT_HUGEPAGE_ALWAYS is not set +CONFIG_TRANSPARENT_HUGEPAGE_MADVISE=y +# CONFIG_TTY_PRINTK is not set +# CONFIG_UACCE is not set +# CONFIG_UFS_FS is not set +# CONFIG_UIO_AEC is not set +# CONFIG_UIO_CIF is not set +# CONFIG_UIO_DMEM_GENIRQ is not set +# CONFIG_UIO_MF624 is not set +# CONFIG_UIO_NETX is not set +# CONFIG_UIO_PCI_GENERIC is not set +# CONFIG_UIO_PDRV_GENIRQ is not set +# CONFIG_UIO_PRUSS is not set +# CONFIG_UIO_SERCOS3 is not set +# CONFIG_ULTRIX_PARTITION is not set +# CONFIG_UNIXWARE_DISKLABEL is not set +# CONFIG_USB4 is not set +# CONFIG_USB_SUPPORT is not set +# CONFIG_VDPA is not set +CONFIG_VFIO=m +CONFIG_VFIO_IOMMU_TYPE1=m +CONFIG_VFIO_PCI=m +CONFIG_VFIO_VIRQFD=m +# CONFIG_VIRTIO_MMIO is not set +CONFIG_VIRT_CPU_ACCOUNTING_NATIVE=y +# CONFIG_VME_BUS is not set +# CONFIG_VMXNET3 is not set +# CONFIG_VOP_BUS is not set +# CONFIG_VXFS_FS is not set +# CONFIG_VXGE is not set +# CONFIG_W1 is not set +# CONFIG_WAN is not set +# CONFIG_WDTPCI is not set +# CONFIG_WIMAX is not set +# CONFIG_X25 is not set +# CONFIG_XILINX_LL_TEMAC is not set +# CONFIG_XILINX_SDFEC is not set +# CONFIG_XILINX_WATCHDOG is not set +# CONFIG_XILLYBUS is not set +# CONFIG_XZ_DEC_ARM is not set +# CONFIG_XZ_DEC_ARMTHUMB is not set +# CONFIG_XZ_DEC_IA64 is not set +# CONFIG_XZ_DEC_POWERPC is not set +# CONFIG_XZ_DEC_SPARC is not set +# CONFIG_XZ_DEC_TEST is not set +# CONFIG_XZ_DEC_X86 is not set +# CONFIG_YELLOWFIN is not set +# CONFIG_ZIIRAVE_WATCHDOG is not set +CONFIG_ZSTD_COMPRESS=m --- linux-azure-5.8-5.8.0.orig/debian.master/config/s390x/config.flavour.generic +++ linux-azure-5.8-5.8.0/debian.master/config/s390x/config.flavour.generic @@ -0,0 +1,3 @@ +# +# Config options for config.flavour.generic automatically generated by splitconfig.pl +# --- linux-azure-5.8-5.8.0.orig/debian.master/config/x32/config.common.x32 +++ linux-azure-5.8-5.8.0/debian.master/config/x32/config.common.x32 @@ -0,0 +1,74 @@ +# nothing here yet +CONFIG_USB_DWC2_DUAL_ROLE=y +CONFIG_USB_DWC2_PCI=m +CONFIG_USB_DWC3_PCI=m +CONFIG_USB_ETH_EEM=y +CONFIG_NOP_USB_XCEIV=m +CONFIG_USB_AMD5536UDC=m +CONFIG_USB_AUDIO=m +CONFIG_USB_BDC_UDC=m +CONFIG_USB_C67X00_HCD=m +CONFIG_USB_CDC_COMPOSITE=m +CONFIG_USB_CHIPIDEA=m +CONFIG_USB_CONFIGFS=m +CONFIG_USB_DWC2=m +CONFIG_USB_DWC3=m +CONFIG_USB_EHCI_HCD_PLATFORM=m +CONFIG_USB_ETH=m +CONFIG_USB_FOTG210_HCD=m +CONFIG_USB_FOTG210_UDC=m +CONFIG_USB_FUNCTIONFS=m +CONFIG_USB_GADGETFS=m +CONFIG_USB_GADGET_TARGET=m +CONFIG_USB_GADGET_XILINX=m +CONFIG_USB_GOKU=m +CONFIG_USB_GPIO_VBUS=m +CONFIG_USB_GR_UDC=m +CONFIG_USB_G_ACM_MS=m +CONFIG_USB_G_DBGP=m +CONFIG_USB_G_HID=m +CONFIG_USB_G_MULTI=m +CONFIG_USB_G_NCM=m +CONFIG_USB_G_NOKIA=m +CONFIG_USB_G_PRINTER=m +CONFIG_USB_G_SERIAL=m +CONFIG_USB_G_WEBCAM=m +CONFIG_USB_HCD_BCMA=m +CONFIG_USB_HCD_SSB=m +CONFIG_USB_HSIC_USB3503=m +CONFIG_USB_ISP116X_HCD=m +CONFIG_USB_ISP1301=m +CONFIG_USB_ISP1362_HCD=m +CONFIG_USB_ISP1760=m +CONFIG_USB_LINK_LAYER_TEST=m +CONFIG_USB_M66592=m +CONFIG_USB_MASS_STORAGE=m +CONFIG_USB_MAX3421_HCD=m +CONFIG_USB_MIDI_GADGET=m +CONFIG_USB_MUSB_HDRC=m +CONFIG_USB_MV_U3D=m +CONFIG_USB_MV_UDC=m +CONFIG_USB_NET2272=m +CONFIG_USB_OHCI_HCD_PLATFORM=m +CONFIG_USB_OXU210HP_HCD=m +CONFIG_USB_PXA27X=m +CONFIG_USB_R8A66597=m +CONFIG_USB_R8A66597_HCD=m +CONFIG_USB_SERIAL_KEYSPAN_MPR=y +CONFIG_USB_SERIAL_KEYSPAN_USA18X=y +CONFIG_USB_SERIAL_KEYSPAN_USA19=y +CONFIG_USB_SERIAL_KEYSPAN_USA19QI=y +CONFIG_USB_SERIAL_KEYSPAN_USA19QW=y +CONFIG_USB_SERIAL_KEYSPAN_USA19W=y +CONFIG_USB_SERIAL_KEYSPAN_USA28=y +CONFIG_USB_SERIAL_KEYSPAN_USA28X=y +CONFIG_USB_SERIAL_KEYSPAN_USA28XA=y +CONFIG_USB_SERIAL_KEYSPAN_USA28XB=y +CONFIG_USB_SERIAL_KEYSPAN_USA49W=y +CONFIG_USB_SERIAL_KEYSPAN_USA49WLC=y +CONFIG_USB_SERIAL_SAFE_PADDED=y +CONFIG_USB_SL811_HCD_ISO=y +CONFIG_USB_ULPI_BUS=m +CONFIG_USB_XHCI_PLATFORM=m +CONFIG_USB_G_MULTI_CDC=y +CONFIG_USB_G_MULTI_RNDIS=y --- linux-azure-5.8-5.8.0.orig/debian.master/config/x32/config.flavour.generic +++ linux-azure-5.8-5.8.0/debian.master/config/x32/config.flavour.generic @@ -0,0 +1,74 @@ +# nothing here yet +CONFIG_USB_DWC2_DUAL_ROLE=y +CONFIG_USB_DWC2_PCI=m +CONFIG_USB_DWC3_PCI=m +CONFIG_USB_ETH_EEM=y +CONFIG_NOP_USB_XCEIV=m +CONFIG_USB_AMD5536UDC=m +CONFIG_USB_AUDIO=m +CONFIG_USB_BDC_UDC=m +CONFIG_USB_C67X00_HCD=m +CONFIG_USB_CDC_COMPOSITE=m +CONFIG_USB_CHIPIDEA=m +CONFIG_USB_CONFIGFS=m +CONFIG_USB_DWC2=m +CONFIG_USB_DWC3=m +CONFIG_USB_EHCI_HCD_PLATFORM=m +CONFIG_USB_ETH=m +CONFIG_USB_FOTG210_HCD=m +CONFIG_USB_FOTG210_UDC=m +CONFIG_USB_FUNCTIONFS=m +CONFIG_USB_GADGETFS=m +CONFIG_USB_GADGET_TARGET=m +CONFIG_USB_GADGET_XILINX=m +CONFIG_USB_GOKU=m +CONFIG_USB_GPIO_VBUS=m +CONFIG_USB_GR_UDC=m +CONFIG_USB_G_ACM_MS=m +CONFIG_USB_G_DBGP=m +CONFIG_USB_G_HID=m +CONFIG_USB_G_MULTI=m +CONFIG_USB_G_NCM=m +CONFIG_USB_G_NOKIA=m +CONFIG_USB_G_PRINTER=m +CONFIG_USB_G_SERIAL=m +CONFIG_USB_G_WEBCAM=m +CONFIG_USB_HCD_BCMA=m +CONFIG_USB_HCD_SSB=m +CONFIG_USB_HSIC_USB3503=m +CONFIG_USB_ISP116X_HCD=m +CONFIG_USB_ISP1301=m +CONFIG_USB_ISP1362_HCD=m +CONFIG_USB_ISP1760=m +CONFIG_USB_LINK_LAYER_TEST=m +CONFIG_USB_M66592=m +CONFIG_USB_MASS_STORAGE=m +CONFIG_USB_MAX3421_HCD=m +CONFIG_USB_MIDI_GADGET=m +CONFIG_USB_MUSB_HDRC=m +CONFIG_USB_MV_U3D=m +CONFIG_USB_MV_UDC=m +CONFIG_USB_NET2272=m +CONFIG_USB_OHCI_HCD_PLATFORM=m +CONFIG_USB_OXU210HP_HCD=m +CONFIG_USB_PXA27X=m +CONFIG_USB_R8A66597=m +CONFIG_USB_R8A66597_HCD=m +CONFIG_USB_SERIAL_KEYSPAN_MPR=y +CONFIG_USB_SERIAL_KEYSPAN_USA18X=y +CONFIG_USB_SERIAL_KEYSPAN_USA19=y +CONFIG_USB_SERIAL_KEYSPAN_USA19QI=y +CONFIG_USB_SERIAL_KEYSPAN_USA19QW=y +CONFIG_USB_SERIAL_KEYSPAN_USA19W=y +CONFIG_USB_SERIAL_KEYSPAN_USA28=y +CONFIG_USB_SERIAL_KEYSPAN_USA28X=y +CONFIG_USB_SERIAL_KEYSPAN_USA28XA=y +CONFIG_USB_SERIAL_KEYSPAN_USA28XB=y +CONFIG_USB_SERIAL_KEYSPAN_USA49W=y +CONFIG_USB_SERIAL_KEYSPAN_USA49WLC=y +CONFIG_USB_SERIAL_SAFE_PADDED=y +CONFIG_USB_SL811_HCD_ISO=y +CONFIG_USB_ULPI_BUS=m +CONFIG_USB_XHCI_PLATFORM=m +CONFIG_USB_G_MULTI_CDC=y +CONFIG_USB_G_MULTI_RNDIS=y --- linux-azure-5.8-5.8.0.orig/debian.master/control.d/flavour-control.stub +++ linux-azure-5.8-5.8.0/debian.master/control.d/flavour-control.stub @@ -0,0 +1,152 @@ +# Items that get replaced: +# FLAVOUR +# DESC +# ARCH +# SUPPORTED +# TARGET +# BOOTLOADER +# =PROVIDES= +# +# Items marked with =FOO= are optional +# +# This file describes the template for packages that are created for each flavour +# in debian/control.d/vars.* +# +# This file gets edited in a couple of places. See the debian/control.stub rule in +# debian/rules. PGGVER, ABINUM, and SRCPKGNAME are all converted in the +# process of creating debian/control. +# +# The flavour specific strings (ARCH, DESC, etc) are converted using values from the various +# flavour files in debian/control.d/vars.* +# +# XXX: Leave the blank line before the first package!! + +Package: linux-image=SIGN-ME-PKG=-PKGVER-ABINUM-FLAVOUR +Build-Profiles: +Architecture: ARCH +Section: kernel +Priority: optional +Provides: linux-image, fuse-module, aufs-dkms, =PROVIDES=${linux:rprovides} +Depends: ${misc:Depends}, ${shlibs:Depends}, kmod, linux-base (>= 4.5ubuntu1~16.04.1), linux-modules-PKGVER-ABINUM-FLAVOUR +Recommends: BOOTLOADER, initramfs-tools | linux-initramfs-tool +Breaks: flash-kernel (<< 3.90ubuntu2) [arm64 armhf], s390-tools (<< 2.3.0-0ubuntu3) [s390x] +Conflicts: linux-image=SIGN-PEER-PKG=-PKGVER-ABINUM-FLAVOUR +Suggests: fdutils, linux-doc | SRCPKGNAME-source-PKGVER, SRCPKGNAME-tools, linux-headers-PKGVER-ABINUM-FLAVOUR +Description: Linux kernel image for version PKGVER on DESC + This package contains the=SIGN-ME-TXT= Linux kernel image for version PKGVER on + DESC. + . + Supports SUPPORTED processors. + . + TARGET + . + You likely do not want to install this package directly. Instead, install + the linux-FLAVOUR meta-package, which will ensure that upgrades work + correctly, and that supporting packages are also installed. + +Package: linux-modules-PKGVER-ABINUM-FLAVOUR +Build-Profiles: +Architecture: ARCH +Section: kernel +Priority: optional +Depends: ${misc:Depends}, ${shlibs:Depends} +Built-Using: ${linux:BuiltUsing} +Description: Linux kernel extra modules for version PKGVER on DESC + Contains the corresponding System.map file, the modules built by the + packager, and scripts that try to ensure that the system is not left in an + unbootable state after an update. + . + Supports SUPPORTED processors. + . + TARGET + . + You likely do not want to install this package directly. Instead, install + the linux-FLAVOUR meta-package, which will ensure that upgrades work + correctly, and that supporting packages are also installed. + +Package: linux-modules-extra-PKGVER-ABINUM-FLAVOUR +Build-Profiles: +Architecture: ARCH +Section: kernel +Priority: optional +Depends: ${misc:Depends}, ${shlibs:Depends}, linux-image-PKGVER-ABINUM-FLAVOUR | linux-image-unsigned-PKGVER-ABINUM-FLAVOUR, crda | wireless-crda +Description: Linux kernel extra modules for version PKGVER on DESC + This package contains the Linux kernel extra modules for version PKGVER on + DESC. + . + Also includes the corresponding System.map file, the modules built by the + packager, and scripts that try to ensure that the system is not left in an + unbootable state after an update. + . + Supports SUPPORTED processors. + . + TARGET + . + You likely do not want to install this package directly. Instead, install + the linux-FLAVOUR meta-package, which will ensure that upgrades work + correctly, and that supporting packages are also installed. + +Package: linux-headers-PKGVER-ABINUM-FLAVOUR +Build-Profiles: +Architecture: ARCH +Section: devel +Priority: optional +Depends: ${misc:Depends}, SRCPKGNAME-headers-PKGVER-ABINUM, ${shlibs:Depends} +Provides: linux-headers, linux-headers-3.0 +Description: Linux kernel headers for version PKGVER on DESC + This package provides kernel header files for version PKGVER on + DESC. + . + This is for sites that want the latest kernel headers. Please read + /usr/share/doc/linux-headers-PKGVER-ABINUM/debian.README.gz for details. + +Package: linux-image=SIGN-ME-PKG=-PKGVER-ABINUM-FLAVOUR-dbgsym +Build-Profiles: +Architecture: ARCH +Section: devel +Priority: optional +Depends: ${misc:Depends} +Provides: linux-debug +Description: Linux kernel debug image for version PKGVER on DESC + This package provides the=SIGN-ME-TXT= kernel debug image for version PKGVER on + DESC. + . + This is for sites that wish to debug the kernel. + . + The kernel image contained in this package is NOT meant to boot from. It + is uncompressed, and unstripped. This package also includes the + unstripped modules. + +Package: linux-tools-PKGVER-ABINUM-FLAVOUR +Build-Profiles: +Architecture: ARCH +Section: devel +Priority: optional +Depends: ${misc:Depends}, SRCPKGNAME-tools-PKGVER-ABINUM +Description: Linux kernel version specific tools for version PKGVER-ABINUM + This package provides the architecture dependant parts for kernel + version locked tools (such as perf and x86_energy_perf_policy) for + version PKGVER-ABINUM on + =HUMAN=. + +Package: linux-cloud-tools-PKGVER-ABINUM-FLAVOUR +Build-Profiles: +Architecture: ARCH +Section: devel +Priority: optional +Depends: ${misc:Depends}, SRCPKGNAME-cloud-tools-PKGVER-ABINUM +Description: Linux kernel version specific cloud tools for version PKGVER-ABINUM + This package provides the architecture dependant parts for kernel + version locked tools for cloud for version PKGVER-ABINUM on + =HUMAN=. + +Package: SRCPKGNAME-udebs-FLAVOUR +Build-Profiles: +XC-Package-Type: udeb +Section: debian-installer +Architecture: ARCH +Depends: ${udeb:Depends} +Description: Metapackage depending on kernel udebs + This package depends on the all udebs that the kernel build generated, + for easier version and migration tracking. + --- linux-azure-5.8-5.8.0.orig/debian.master/control.d/generic.inclusion-list +++ linux-azure-5.8-5.8.0/debian.master/control.d/generic.inclusion-list @@ -0,0 +1,257 @@ +arch/*/{crypto,kernel,oprofile} +arch/*/kvm/kvm.ko +arch/powerpc/kvm/kvm-hv.ko +arch/powerpc/kvm/kvm-pr.ko +arch/powerpc/kvm/vfio.ko +arch/powerpc/platforms/powernv/opal-prd.ko +arch/s390/* +arch/x86/kvm/kvm-amd.ko +arch/x86/kvm/kvm-intel.ko +crypto/* +drivers/acpi/* +drivers/ata/acard-ahci.ko +drivers/ata/ahci.ko +drivers/ata/ahci_platform.ko +drivers/ata/ata_generic.ko +drivers/ata/libahci.ko +drivers/ata/libahci_platform.ko +drivers/block/brd.ko +drivers/block/cryptoloop.ko +drivers/block/floppy.ko +drivers/block/loop.ko +drivers/block/nbd.ko +drivers/block/rbd.ko +drivers/block/virtio_blk.ko +drivers/block/xen-blkfront.ko +drivers/char/hangcheck-timer.ko +drivers/char/hw_random/powernv-rng.ko +drivers/char/hw_random/virtio-rng.ko +drivers/char/ipmi/* +drivers/char/ipmi/ipmi_msghandler.ko +drivers/char/lp.ko +drivers/char/nvram.ko +drivers/char/ppdev.ko +drivers/char/raw.ko +drivers/char/virtio_console.ko +drivers/crypto/nx/* +drivers/crypto/vmx/vmx-crypto.ko +drivers/firmware/efi/* +drivers/firmware/iscsi_ibft.ko +drivers/gpu/drm/ast/ast.ko +drivers/gpu/drm/drm_kms_helper.ko +drivers/gpu/drm/drm.ko +drivers/gpu/drm/ttm/ttm.ko +drivers/gpu/drm/vboxvideo/vboxvideo.ko +drivers/hid/hid-generic.ko +drivers/hid/hid-hyperv.ko +drivers/hid/hid.ko +drivers/hid/usbhid/usbhid.ko +drivers/hv/* +drivers/hwmon/ibmpowernv.ko +drivers/infiniband/core/ib_addr.ko +drivers/infiniband/core/ib_cm.ko +drivers/infiniband/core/ib_core.ko +drivers/infiniband/core/ib_mad.ko +drivers/infiniband/core/ib_sa.ko +drivers/infiniband/core/iw_cm.ko +drivers/infiniband/core/rdma_cm.ko +drivers/infiniband/ulp/iser/ib_iser.ko +drivers/infiniband/ulp/isert/ib_isert.ko +drivers/input/evbug.ko +drivers/input/gameport/gameport.ko +drivers/input/input-leds.ko +drivers/input/joydev.ko +drivers/input/misc/xen-kbdfront.ko +drivers/input/mouse/psmouse.ko +drivers/input/serio/hyperv-keyboard.ko +drivers/input/serio/serio_raw.ko +drivers/input/serio/serport.ko +drivers/input/touchscreen/usbtouchscreen.ko +drivers/leds/leds-powernv.ko +drivers/md/* +drivers/message/fusion* +drivers/misc/cxl/* +drivers/misc/eeprom/at24.ko +drivers/misc/vmw_balloon.ko +drivers/misc/vmw_vmci/vmw_vmci.ko +drivers/mtd/cmdlinepart.ko +drivers/mtd/devices/powernv_flash.ko +drivers/mtd/ofpart.ko +drivers/net/appletalk/ipddp.ko +drivers/net/bonding/bonding.ko +drivers/net/caif/caif_virtio.ko +drivers/net/dummy.ko +drivers/net/eql.ko +drivers/net/ethernet/8390/8390.ko +drivers/net/ethernet/8390/ne2k-pci.ko +drivers/net/ethernet/amazon/ena/ena.ko +drivers/net/ethernet/amd/pcnet32.ko +drivers/net/ethernet/broadcom/bnx2x/* +drivers/net/ethernet/broadcom/tg3.ko +drivers/net/ethernet/dec/tulip/* +drivers/net/ethernet/emulex/benet/* +drivers/net/ethernet/ibm/* +drivers/net/ethernet/intel/e1000/e1000.ko +drivers/net/ethernet/intel/e1000e/e1000e.ko +drivers/net/ethernet/intel/i40e/* +drivers/net/ethernet/intel/iavf/iavf.ko +drivers/net/ethernet/intel/igb/* +drivers/net/ethernet/intel/igbvf/igbvf.ko +drivers/net/ethernet/intel/ixgbe/* +drivers/net/ethernet/intel/ixgbevf/ixgbevf.ko +drivers/net/ethernet/mellanox/* +drivers/net/ethernet/netronome/nfp/nfp.ko +drivers/net/ethernet/realtek/8139cp.ko +drivers/net/ethernet/realtek/8139too.ko +drivers/net/fddi/* +drivers/net/geneve.ko +drivers/net/hyperv/hv_netvsc.ko +drivers/net/ifb.ko +drivers/net/ipvlan/* +drivers/net/macvlan.ko +drivers/net/macvtap.ko +drivers/net/mii.ko +drivers/net/netconsole.ko +drivers/net/ppp/* +drivers/net/ppp/bsd_comp.ko +drivers/net/slip/* +drivers/net/veth.ko +drivers/net/virtio_net.ko +drivers/net/vmxnet3/vmxnet3.ko +drivers/net/vxlan.ko +drivers/net/wireguard/wireguard.ko +drivers/net/xen-netback/* +drivers/net/xen-netfront.ko +drivers/nvme/host/nvme.ko +drivers/nvmem/nvmem_core.ko +drivers/parport/parport.ko +drivers/parport/parport_pc.ko +drivers/pci/host/vmd.ko +drivers/platform/x86/pvpanic.ko +drivers/pps/pps_core.ko +drivers/ptp/ptp.ko +drivers/s390/* +drivers/s390/block/xpram.ko +drivers/scsi/aacraid/* +drivers/scsi/BusLogic.ko +drivers/scsi/cxlflash/* +drivers/scsi/device_handler/scsi_dh_alua.ko +drivers/scsi/device_handler/scsi_dh_emc.ko +drivers/scsi/device_handler/scsi_dh_hp_sw.ko +drivers/scsi/device_handler/scsi_dh_rdac.ko +drivers/scsi/hv_storvsc.ko +drivers/scsi/ibmvscsi/* +drivers/scsi/ipr.ko +drivers/scsi/iscsi_boot_sysfs.ko +drivers/scsi/iscsi_tcp.ko +drivers/scsi/libiscsi.ko +drivers/scsi/libiscsi_tcp.ko +drivers/scsi/libsas/* +drivers/scsi/lpfc/* +drivers/scsi/megaraid/* +drivers/scsi/mpt3sas/* +drivers/scsi/osd/libosd.ko +drivers/scsi/osd/osd.ko +drivers/scsi/qla1280.ko +drivers/scsi/qla2xxx/* +drivers/scsi/raid_class.ko +drivers/scsi/scsi_transport_fc.ko +drivers/scsi/scsi_transport_iscsi.ko +drivers/scsi/scsi_transport_sas.ko +drivers/scsi/scsi_transport_spi.ko +drivers/scsi/sd_mod.ko +drivers/scsi/sr_mod.ko +drivers/scsi/virtio_scsi.ko +drivers/scsi/vmw_pvscsi.ko +drivers/target/target_core*.ko +drivers/target/loopback/tcm_loop.ko +drivers/tty/serial/jsm/* +drivers/uio/uio.ko +drivers/uio/uio_pdrv_genirq.ko +drivers/usb/host/* +drivers/usb/storage/uas.ko +drivers/usb/storage/usb-storage.ko +drivers/vfio/* +drivers/vhost/* +drivers/video/fbdev/* +drivers/video/vgastate.ko +drivers/virt/vboxguest/vboxguest.ko +drivers/virtio/* +drivers/watchdog/softdog.ko +drivers/xen/* +! find sound/core -name oss -prune -o -name *.ko -print +fs/9p/* +fs/aufs/aufs.ko +fs/autofs/autofs4.ko +fs/binfmt_misc.ko +fs/btrfs/* +fs/cachefiles/cachefiles.ko +fs/ceph/* +fs/cifs/* +fs/configfs/* +fs/dlm/dlm.ko +fs/ecryptfs/* +fs/efivarfs/* +fs/exofs/libore.ko +fs/ext4/* +fs/fat/* +fs/fscache/* +fs/fuse/* +fs/isofs/* +fs/lockd/* +fs/nfs/* +fs/nfs_common/* +fs/nfsd/* +fs/nls/nls_cp437.ko +fs/nls/nls_iso8859-1.ko +fs/overlayfs/* +fs/shiftfs.ko +fs/squashfs/* +fs/udf/* +fs/ufs/* +fs/vboxsf/vboxsf.ko +fs/xfs/* +lib/* +net/6lowpan/* +net/802/* +net/8021q/* +net/9p/* +net/appletalk/* +net/atm/* +net/ax25/* +net/bpfilter/* +net/bridge/* +net/can/* +net/ceph/libceph.ko +net/core/* +net/dccp/* +net/decnet/* +net/ieee802154/* +net/ipv4/* +net/ipv6/* +net/ipx/* +net/key/* +net/lapb/* +net/llc/* +net/netfilter/* +net/netlink/netlink_diag.ko +net/netrom/* +net/openvswitch/* +net/packet/af_packet_diag.ko +net/phonet/* +net/rose/* +net/rxrpc/* +net/sched/* +net/sctp/* +net/sunrpc/auth_gss/auth_rpcgss.ko +net/sunrpc/auth_gss/rpcsec_gss_krb5.ko +net/sunrpc/sunrpc.ko +net/tipc/* +net/unix/unix_diag.ko +net/vmw_vsock/* +net/x25/* +net/xfrm/* +sound/drivers/pcsp/snd-pcsp.ko +sound/pci/snd-ens1370.ko +sound/soundcore.ko +ubuntu/ubuntu-host/ubuntu-host.ko --- linux-azure-5.8-5.8.0.orig/debian.master/control.d/linux-doc.stub +++ linux-azure-5.8-5.8.0/debian.master/control.d/linux-doc.stub @@ -0,0 +1,12 @@ +Package: linux-doc +Build-Profiles: +Architecture: all +Section: doc +Priority: optional +Depends: ${misc:Depends} +Description: Linux kernel specific documentation for version PKGVER + This package provides the various documents in the PKGVER kernel + Documentation/ subdirectory. These document kernel subsystems, APIs, device + drivers, and so on. See + /usr/share/doc/SRCPKGNAME-doc/00-INDEX for a list of what is + contained in each file. --- linux-azure-5.8-5.8.0.orig/debian.master/control.d/linux-libc-dev.stub +++ linux-azure-5.8-5.8.0/debian.master/control.d/linux-libc-dev.stub @@ -0,0 +1,12 @@ +Package: linux-libc-dev +Architecture: amd64 armhf arm64 i386 ppc64el riscv64 s390x +Depends: ${misc:Depends} +Conflicts: linux-kernel-headers +Replaces: linux-kernel-headers +Provides: linux-kernel-headers, aufs-dev +Multi-Arch: same +Description: Linux Kernel Headers for development + This package provides headers from the Linux kernel. These headers + are used by the installed headers for GNU glibc and other system + libraries. They are NOT meant to be used to build third-party modules for + your kernel. Use SRCPKGNAME-headers-* packages for that. --- linux-azure-5.8-5.8.0.orig/debian.master/control.d/vars.generic +++ linux-azure-5.8-5.8.0/debian.master/control.d/vars.generic @@ -0,0 +1,6 @@ +arch="amd64 armhf arm64 ppc64el s390x" +supported="Generic" +target="Geared toward desktop and server systems." +desc="=HUMAN= SMP" +bootloader="grub-pc [amd64] | grub-efi-amd64 [amd64] | grub-efi-ia32 [amd64] | grub [amd64] | lilo [amd64] | flash-kernel [armhf arm64] | grub-ieee1275 [ppc64el]" +provides="kvm-api-4, redhat-cluster-modules, ivtv-modules, virtualbox-guest-modules [amd64]" --- linux-azure-5.8-5.8.0.orig/debian.master/control.d/vars.generic-64k +++ linux-azure-5.8-5.8.0/debian.master/control.d/vars.generic-64k @@ -0,0 +1,6 @@ +arch="arm64" +supported="Generic 64K pages" +target="Geared toward desktop and server systems." +desc="=HUMAN= SMP" +bootloader="flash-kernel [arm64]" +provides="kvm-api-4, redhat-cluster-modules, ivtv-modules" --- linux-azure-5.8-5.8.0.orig/debian.master/control.d/vars.generic-lpae +++ linux-azure-5.8-5.8.0/debian.master/control.d/vars.generic-lpae @@ -0,0 +1,6 @@ +arch="armhf" +supported="Generic LPAE" +target="Geared toward desktop and server systems." +desc="=HUMAN= SMP" +bootloader="flash-kernel [armhf]" +provides="kvm-api-4, redhat-cluster-modules, ivtv-modules" --- linux-azure-5.8-5.8.0.orig/debian.master/control.d/vars.lowlatency +++ linux-azure-5.8-5.8.0/debian.master/control.d/vars.lowlatency @@ -0,0 +1,6 @@ +arch="amd64" +supported="Lowlatency" +target="Geared toward desktop and server systems." +desc="=HUMAN= SMP" +bootloader="grub-pc [amd64] | grub-efi-amd64 [amd64] | grub-efi-ia32 [amd64] | grub [amd64] | lilo [amd64] | flash-kernel [armhf arm64]" +provides="kvm-api-4, redhat-cluster-modules, ivtv-modules, virtualbox-guest-modules [amd64]" --- linux-azure-5.8-5.8.0.orig/debian.master/control.stub.in +++ linux-azure-5.8-5.8.0/debian.master/control.stub.in @@ -0,0 +1,157 @@ +Source: SRCPKGNAME +Section: devel +Priority: optional +Maintainer: Ubuntu Kernel Team +Standards-Version: 3.9.4.0 +Build-Depends: + debhelper-compat (= 10), + dh-systemd, + cpio, + kernel-wedge, + kmod , + makedumpfile [amd64] , + libcap-dev , + libelf-dev , + libnewt-dev , + libiberty-dev , + default-jdk-headless , + java-common , + rsync , + libdw-dev , + libpci-dev , + pkg-config , + flex , + bison , + libunwind8-dev [amd64 arm64 armhf ppc64el] , + liblzma-dev , + openssl , + libssl-dev , + libaudit-dev , + bc , + gawk , + libudev-dev , + autoconf , + automake , + libtool , + uuid-dev , + libnuma-dev [amd64 arm64 ppc64el s390x] , + dkms , + curl , + lz4 [amd64 s390x] , + dwarves [amd64 arm64 armhf ppc64el s390x] , +Build-Depends-Indep: + xmlto , + docbook-utils , + ghostscript , + fig2dev , + bzip2 , + sharutils , + asciidoc , + python3-sphinx , + python3-sphinx-rtd-theme , + fontconfig , + python3-docutils , + imagemagick , + graphviz , + dvipng , + fonts-noto-cjk , + latexmk , + librsvg2-bin , +Vcs-Git: git://git.launchpad.net/~ubuntu-kernel/ubuntu/+source/linux/+git/=SERIES= +XS-Testsuite: autopkgtest +#XS-Testsuite-Depends: gcc-4.7 binutils + +Package: linux-source-PKGVER +Build-Profiles: +Architecture: all +Section: devel +Priority: optional +Provides: linux-source +Depends: ${misc:Depends}, binutils, bzip2, coreutils +Recommends: libc-dev, gcc, make +Suggests: libncurses-dev | ncurses-dev, kernel-package, libqt3-dev +Description: Linux kernel source for version PKGVER with Ubuntu patches + This package provides the source code for the Linux kernel version + PKGVER. + . + This package is mainly meant for other packages to use, in order to build + custom flavours. + . + If you wish to use this package to create a custom Linux kernel, then it + is suggested that you investigate the package kernel-package, which has + been designed to ease the task of creating kernel image packages. + . + If you are simply trying to build third-party modules for your kernel, + you do not want this package. Install the appropriate linux-headers + package instead. + +Package: SRCPKGNAME-headers-PKGVER-ABINUM +Build-Profiles: +Architecture: all +Multi-Arch: foreign +Section: devel +Priority: optional +Depends: ${misc:Depends}, coreutils +Description: Header files related to Linux kernel version PKGVER + This package provides kernel header files for version PKGVER, for sites + that want the latest kernel headers. Please read + /usr/share/doc/SRCPKGNAME-headers-PKGVER-ABINUM/debian.README.gz for details + +Package: SRCPKGNAME-tools-common +Build-Profiles: +Architecture: all +Multi-Arch: foreign +Section: kernel +Priority: optional +Depends: ${misc:Depends}, lsb-release +Description: Linux kernel version specific tools for version PKGVER + This package provides the architecture independent parts for kernel + version locked tools (such as perf and x86_energy_perf_policy) for + version PKGVER. + +Package: SRCPKGNAME-tools-PKGVER-ABINUM +Build-Profiles: +Architecture: amd64 armhf arm64 ppc64el s390x +Section: devel +Priority: optional +Depends: ${misc:Depends}, ${shlibs:Depends}, linux-tools-common +Description: Linux kernel version specific tools for version PKGVER-ABINUM + This package provides the architecture dependant parts for kernel + version locked tools (such as perf and x86_energy_perf_policy) for + version PKGVER-ABINUM on + =HUMAN=. + You probably want to install linux-tools-PKGVER-ABINUM-. + +Package: SRCPKGNAME-cloud-tools-common +Build-Profiles: +Architecture: all +Multi-Arch: foreign +Section: kernel +Priority: optional +Depends: ${misc:Depends} +Description: Linux kernel version specific cloud tools for version PKGVER + This package provides the architecture independent parts for kernel + version locked tools for cloud tools for version PKGVER. + +Package: SRCPKGNAME-cloud-tools-PKGVER-ABINUM +Build-Profiles: +Architecture: amd64 armhf +Section: devel +Priority: optional +Depends: ${misc:Depends}, ${shlibs:Depends}, linux-cloud-tools-common +Description: Linux kernel version specific cloud tools for version PKGVER-ABINUM + This package provides the architecture dependant parts for kernel + version locked tools for cloud tools for version PKGVER-ABINUM on + =HUMAN=. + You probably want to install linux-cloud-tools-PKGVER-ABINUM-. + +Package: SRCPKGNAME-tools-host +Build-Profiles: +Architecture: all +Multi-Arch: foreign +Section: kernel +Priority: optional +Depends: ${misc:Depends}, python3 +Description: Linux kernel VM host tools + This package provides kernel tools useful for VM hosts. + --- linux-azure-5.8-5.8.0.orig/debian.master/copyright +++ linux-azure-5.8-5.8.0/debian.master/copyright @@ -0,0 +1,29 @@ +This is the Ubuntu prepackaged version of the Linux kernel. +Linux was written by Linus Torvalds +and others. + +This package was put together by the Ubuntu Kernel Team, from +sources retrieved from upstream linux git. +The sources may be found at most Linux ftp sites, including +ftp://ftp.kernel.org/pub/linux/kernel/ + +This package is currently maintained by the +Ubuntu Kernel Team + +Linux is copyrighted by Linus Torvalds and others. + + This program is free software; you can redistribute it and/or modify + it under the terms of the GNU General Public License as published by + the Free Software Foundation; version 2 dated June, 1991. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License + along with this program; if not, write to the Free Software + Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA + +On Ubuntu Linux systems, the complete text of the GNU General +Public License v2 can be found in `/usr/share/common-licenses/GPL-2'. --- linux-azure-5.8-5.8.0.orig/debian.master/d-i/firmware/README.txt +++ linux-azure-5.8-5.8.0/debian.master/d-i/firmware/README.txt @@ -0,0 +1,4 @@ +# +# Place the names of udeb modules into this directory that require +# runtime firmware. +# --- linux-azure-5.8-5.8.0.orig/debian.master/d-i/firmware/amd64/README.txt +++ linux-azure-5.8-5.8.0/debian.master/d-i/firmware/amd64/README.txt @@ -0,0 +1,4 @@ +# +# Place the names of udeb modules into this directory that require +# runtime firmware. +# --- linux-azure-5.8-5.8.0.orig/debian.master/d-i/firmware/amd64/nic-modules +++ linux-azure-5.8-5.8.0/debian.master/d-i/firmware/amd64/nic-modules @@ -0,0 +1 @@ +#include --- linux-azure-5.8-5.8.0.orig/debian.master/d-i/firmware/amd64/scsi-modules +++ linux-azure-5.8-5.8.0/debian.master/d-i/firmware/amd64/scsi-modules @@ -0,0 +1 @@ +#include --- linux-azure-5.8-5.8.0.orig/debian.master/d-i/firmware/arm64/README.txt +++ linux-azure-5.8-5.8.0/debian.master/d-i/firmware/arm64/README.txt @@ -0,0 +1,4 @@ +# +# Place the names of udeb modules into this directory that require +# runtime firmware. +# --- linux-azure-5.8-5.8.0.orig/debian.master/d-i/firmware/arm64/nic-modules +++ linux-azure-5.8-5.8.0/debian.master/d-i/firmware/arm64/nic-modules @@ -0,0 +1 @@ +#include --- linux-azure-5.8-5.8.0.orig/debian.master/d-i/firmware/arm64/scsi-modules +++ linux-azure-5.8-5.8.0/debian.master/d-i/firmware/arm64/scsi-modules @@ -0,0 +1 @@ +#include --- linux-azure-5.8-5.8.0.orig/debian.master/d-i/firmware/armhf/README.txt +++ linux-azure-5.8-5.8.0/debian.master/d-i/firmware/armhf/README.txt @@ -0,0 +1,4 @@ +# +# Place the names of udeb modules into this directory that require +# runtime firmware. +# --- linux-azure-5.8-5.8.0.orig/debian.master/d-i/firmware/i386/README.txt +++ linux-azure-5.8-5.8.0/debian.master/d-i/firmware/i386/README.txt @@ -0,0 +1,4 @@ +# +# Place the names of udeb modules into this directory that require +# runtime firmware. +# --- linux-azure-5.8-5.8.0.orig/debian.master/d-i/firmware/i386/nic-modules +++ linux-azure-5.8-5.8.0/debian.master/d-i/firmware/i386/nic-modules @@ -0,0 +1 @@ +#include --- linux-azure-5.8-5.8.0.orig/debian.master/d-i/firmware/i386/scsi-modules +++ linux-azure-5.8-5.8.0/debian.master/d-i/firmware/i386/scsi-modules @@ -0,0 +1 @@ +#include --- linux-azure-5.8-5.8.0.orig/debian.master/d-i/firmware/nic-modules +++ linux-azure-5.8-5.8.0/debian.master/d-i/firmware/nic-modules @@ -0,0 +1,14 @@ +e100/d101m_ucode.bin ? +e100/d101s_ucode.bin ? +e100/d102e_ucode.bin ? +bnx2/bnx2-mips-09-6.2.1b.fw ? +bnx2/bnx2-rv2p-06-6.0.15.fw ? +bnx2/bnx2-mips-06-6.2.3.fw ? +bnx2/bnx2-rv2p-09-6.0.17.fw ? +bnx2/bnx2-rv2p-09ax-6.0.17.fw ? +bnx2x/bnx2x-e1h-7.12.30.0.fw ? +bnx2x/bnx2x-e1-7.12.30.0.fw ? +bnx2x/bnx2x-e2-7.12.30.0.fw ? +tigon/tg3_tso5.bin ? +tigon/tg3_tso.bin ? +tigon/tg3.bin ? --- linux-azure-5.8-5.8.0.orig/debian.master/d-i/firmware/powerpc/README.txt +++ linux-azure-5.8-5.8.0/debian.master/d-i/firmware/powerpc/README.txt @@ -0,0 +1,4 @@ +# +# Place the names of udeb modules into this directory that require +# runtime firmware. +# --- linux-azure-5.8-5.8.0.orig/debian.master/d-i/firmware/powerpc/nic-modules +++ linux-azure-5.8-5.8.0/debian.master/d-i/firmware/powerpc/nic-modules @@ -0,0 +1 @@ +#include --- linux-azure-5.8-5.8.0.orig/debian.master/d-i/firmware/powerpc/scsi-modules +++ linux-azure-5.8-5.8.0/debian.master/d-i/firmware/powerpc/scsi-modules @@ -0,0 +1 @@ +#include --- linux-azure-5.8-5.8.0.orig/debian.master/d-i/firmware/ppc64el/README.txt +++ linux-azure-5.8-5.8.0/debian.master/d-i/firmware/ppc64el/README.txt @@ -0,0 +1,4 @@ +# +# Place the names of udeb modules into this directory that require +# runtime firmware. +# --- linux-azure-5.8-5.8.0.orig/debian.master/d-i/firmware/ppc64el/nic-modules +++ linux-azure-5.8-5.8.0/debian.master/d-i/firmware/ppc64el/nic-modules @@ -0,0 +1 @@ +#include --- linux-azure-5.8-5.8.0.orig/debian.master/d-i/firmware/ppc64el/scsi-modules +++ linux-azure-5.8-5.8.0/debian.master/d-i/firmware/ppc64el/scsi-modules @@ -0,0 +1 @@ +#include --- linux-azure-5.8-5.8.0.orig/debian.master/d-i/firmware/s390x/README.txt +++ linux-azure-5.8-5.8.0/debian.master/d-i/firmware/s390x/README.txt @@ -0,0 +1,4 @@ +# +# Place the names of udeb modules into this directory that require +# runtime firmware. +# --- linux-azure-5.8-5.8.0.orig/debian.master/d-i/firmware/s390x/nic-modules +++ linux-azure-5.8-5.8.0/debian.master/d-i/firmware/s390x/nic-modules @@ -0,0 +1 @@ +#include --- linux-azure-5.8-5.8.0.orig/debian.master/d-i/firmware/s390x/scsi-modules +++ linux-azure-5.8-5.8.0/debian.master/d-i/firmware/s390x/scsi-modules @@ -0,0 +1 @@ +#include --- linux-azure-5.8-5.8.0.orig/debian.master/d-i/firmware/scsi-modules +++ linux-azure-5.8-5.8.0/debian.master/d-i/firmware/scsi-modules @@ -0,0 +1,3 @@ +qlogic/1040.bin ? +qlogic/12160.bin ? +qlogic/1280.bin ? --- linux-azure-5.8-5.8.0.orig/debian.master/d-i/kernel-versions +++ linux-azure-5.8-5.8.0/debian.master/d-i/kernel-versions @@ -0,0 +1,17 @@ +# arch version flavour installedname suffix bdep +amd64 - generic - - - + +i386 - generic - - - + +armhf - generic - - - +armhf - generic-lpae - - - + +arm64 - generic - - - +arm64 - generic-64k - - - + +ppc64el - generic - - - + +s390x - generic - - - + +# Ports +# arch version flavour installedname suffix bdep --- linux-azure-5.8-5.8.0.orig/debian.master/d-i/modules/amd64-virtual/block-modules +++ linux-azure-5.8-5.8.0/debian.master/d-i/modules/amd64-virtual/block-modules @@ -0,0 +1 @@ +#include --- linux-azure-5.8-5.8.0.orig/debian.master/d-i/modules/amd64-virtual/crypto-modules +++ linux-azure-5.8-5.8.0/debian.master/d-i/modules/amd64-virtual/crypto-modules @@ -0,0 +1 @@ +#include --- linux-azure-5.8-5.8.0.orig/debian.master/d-i/modules/amd64-virtual/fat-modules +++ linux-azure-5.8-5.8.0/debian.master/d-i/modules/amd64-virtual/fat-modules @@ -0,0 +1 @@ +#include --- linux-azure-5.8-5.8.0.orig/debian.master/d-i/modules/amd64-virtual/fb-modules +++ linux-azure-5.8-5.8.0/debian.master/d-i/modules/amd64-virtual/fb-modules @@ -0,0 +1 @@ +#include --- linux-azure-5.8-5.8.0.orig/debian.master/d-i/modules/amd64-virtual/floppy-modules +++ linux-azure-5.8-5.8.0/debian.master/d-i/modules/amd64-virtual/floppy-modules @@ -0,0 +1 @@ +#include --- linux-azure-5.8-5.8.0.orig/debian.master/d-i/modules/amd64-virtual/fs-core-modules +++ linux-azure-5.8-5.8.0/debian.master/d-i/modules/amd64-virtual/fs-core-modules @@ -0,0 +1 @@ +#include --- linux-azure-5.8-5.8.0.orig/debian.master/d-i/modules/amd64-virtual/fs-secondary-modules +++ linux-azure-5.8-5.8.0/debian.master/d-i/modules/amd64-virtual/fs-secondary-modules @@ -0,0 +1 @@ +#include --- linux-azure-5.8-5.8.0.orig/debian.master/d-i/modules/amd64-virtual/kernel-image +++ linux-azure-5.8-5.8.0/debian.master/d-i/modules/amd64-virtual/kernel-image @@ -0,0 +1 @@ +#include --- linux-azure-5.8-5.8.0.orig/debian.master/d-i/modules/amd64-virtual/md-modules +++ linux-azure-5.8-5.8.0/debian.master/d-i/modules/amd64-virtual/md-modules @@ -0,0 +1 @@ +#include --- linux-azure-5.8-5.8.0.orig/debian.master/d-i/modules/amd64-virtual/message-modules +++ linux-azure-5.8-5.8.0/debian.master/d-i/modules/amd64-virtual/message-modules @@ -0,0 +1 @@ +#include --- linux-azure-5.8-5.8.0.orig/debian.master/d-i/modules/amd64-virtual/mouse-modules +++ linux-azure-5.8-5.8.0/debian.master/d-i/modules/amd64-virtual/mouse-modules @@ -0,0 +1 @@ +#include --- linux-azure-5.8-5.8.0.orig/debian.master/d-i/modules/amd64-virtual/multipath-modules +++ linux-azure-5.8-5.8.0/debian.master/d-i/modules/amd64-virtual/multipath-modules @@ -0,0 +1 @@ +#include --- linux-azure-5.8-5.8.0.orig/debian.master/d-i/modules/amd64-virtual/nic-modules +++ linux-azure-5.8-5.8.0/debian.master/d-i/modules/amd64-virtual/nic-modules @@ -0,0 +1 @@ +#include --- linux-azure-5.8-5.8.0.orig/debian.master/d-i/modules/amd64-virtual/nic-shared-modules +++ linux-azure-5.8-5.8.0/debian.master/d-i/modules/amd64-virtual/nic-shared-modules @@ -0,0 +1 @@ +#include --- linux-azure-5.8-5.8.0.orig/debian.master/d-i/modules/amd64-virtual/parport-modules +++ linux-azure-5.8-5.8.0/debian.master/d-i/modules/amd64-virtual/parport-modules @@ -0,0 +1 @@ +#include --- linux-azure-5.8-5.8.0.orig/debian.master/d-i/modules/amd64-virtual/scsi-modules +++ linux-azure-5.8-5.8.0/debian.master/d-i/modules/amd64-virtual/scsi-modules @@ -0,0 +1,2 @@ +#include +ipr ? --- linux-azure-5.8-5.8.0.orig/debian.master/d-i/modules/amd64-virtual/serial-modules +++ linux-azure-5.8-5.8.0/debian.master/d-i/modules/amd64-virtual/serial-modules @@ -0,0 +1 @@ +#include --- linux-azure-5.8-5.8.0.orig/debian.master/d-i/modules/amd64-virtual/storage-core-modules +++ linux-azure-5.8-5.8.0/debian.master/d-i/modules/amd64-virtual/storage-core-modules @@ -0,0 +1 @@ +#include --- linux-azure-5.8-5.8.0.orig/debian.master/d-i/modules/amd64-virtual/virtio-modules +++ linux-azure-5.8-5.8.0/debian.master/d-i/modules/amd64-virtual/virtio-modules @@ -0,0 +1 @@ +#include --- linux-azure-5.8-5.8.0.orig/debian.master/d-i/modules/amd64-virtual/vlan-modules +++ linux-azure-5.8-5.8.0/debian.master/d-i/modules/amd64-virtual/vlan-modules @@ -0,0 +1 @@ +#include --- linux-azure-5.8-5.8.0.orig/debian.master/d-i/modules/amd64/block-modules +++ linux-azure-5.8-5.8.0/debian.master/d-i/modules/amd64/block-modules @@ -0,0 +1 @@ +#include --- linux-azure-5.8-5.8.0.orig/debian.master/d-i/modules/amd64/crypto-modules +++ linux-azure-5.8-5.8.0/debian.master/d-i/modules/amd64/crypto-modules @@ -0,0 +1 @@ +#include --- linux-azure-5.8-5.8.0.orig/debian.master/d-i/modules/amd64/fat-modules +++ linux-azure-5.8-5.8.0/debian.master/d-i/modules/amd64/fat-modules @@ -0,0 +1 @@ +#include --- linux-azure-5.8-5.8.0.orig/debian.master/d-i/modules/amd64/fb-modules +++ linux-azure-5.8-5.8.0/debian.master/d-i/modules/amd64/fb-modules @@ -0,0 +1 @@ +#include --- linux-azure-5.8-5.8.0.orig/debian.master/d-i/modules/amd64/firewire-core-modules +++ linux-azure-5.8-5.8.0/debian.master/d-i/modules/amd64/firewire-core-modules @@ -0,0 +1 @@ +#include --- linux-azure-5.8-5.8.0.orig/debian.master/d-i/modules/amd64/floppy-modules +++ linux-azure-5.8-5.8.0/debian.master/d-i/modules/amd64/floppy-modules @@ -0,0 +1 @@ +#include --- linux-azure-5.8-5.8.0.orig/debian.master/d-i/modules/amd64/fs-core-modules +++ linux-azure-5.8-5.8.0/debian.master/d-i/modules/amd64/fs-core-modules @@ -0,0 +1 @@ +#include --- linux-azure-5.8-5.8.0.orig/debian.master/d-i/modules/amd64/fs-secondary-modules +++ linux-azure-5.8-5.8.0/debian.master/d-i/modules/amd64/fs-secondary-modules @@ -0,0 +1 @@ +#include --- linux-azure-5.8-5.8.0.orig/debian.master/d-i/modules/amd64/input-modules +++ linux-azure-5.8-5.8.0/debian.master/d-i/modules/amd64/input-modules @@ -0,0 +1 @@ +#include --- linux-azure-5.8-5.8.0.orig/debian.master/d-i/modules/amd64/ipmi-modules +++ linux-azure-5.8-5.8.0/debian.master/d-i/modules/amd64/ipmi-modules @@ -0,0 +1 @@ +#include --- linux-azure-5.8-5.8.0.orig/debian.master/d-i/modules/amd64/kernel-image +++ linux-azure-5.8-5.8.0/debian.master/d-i/modules/amd64/kernel-image @@ -0,0 +1 @@ +#include --- linux-azure-5.8-5.8.0.orig/debian.master/d-i/modules/amd64/md-modules +++ linux-azure-5.8-5.8.0/debian.master/d-i/modules/amd64/md-modules @@ -0,0 +1 @@ +#include --- linux-azure-5.8-5.8.0.orig/debian.master/d-i/modules/amd64/message-modules +++ linux-azure-5.8-5.8.0/debian.master/d-i/modules/amd64/message-modules @@ -0,0 +1 @@ +#include --- linux-azure-5.8-5.8.0.orig/debian.master/d-i/modules/amd64/mouse-modules +++ linux-azure-5.8-5.8.0/debian.master/d-i/modules/amd64/mouse-modules @@ -0,0 +1 @@ +#include --- linux-azure-5.8-5.8.0.orig/debian.master/d-i/modules/amd64/multipath-modules +++ linux-azure-5.8-5.8.0/debian.master/d-i/modules/amd64/multipath-modules @@ -0,0 +1 @@ +#include --- linux-azure-5.8-5.8.0.orig/debian.master/d-i/modules/amd64/nfs-modules +++ linux-azure-5.8-5.8.0/debian.master/d-i/modules/amd64/nfs-modules @@ -0,0 +1 @@ +#include --- linux-azure-5.8-5.8.0.orig/debian.master/d-i/modules/amd64/nic-modules +++ linux-azure-5.8-5.8.0/debian.master/d-i/modules/amd64/nic-modules @@ -0,0 +1 @@ +#include --- linux-azure-5.8-5.8.0.orig/debian.master/d-i/modules/amd64/nic-pcmcia-modules +++ linux-azure-5.8-5.8.0/debian.master/d-i/modules/amd64/nic-pcmcia-modules @@ -0,0 +1 @@ +#include --- linux-azure-5.8-5.8.0.orig/debian.master/d-i/modules/amd64/nic-shared-modules +++ linux-azure-5.8-5.8.0/debian.master/d-i/modules/amd64/nic-shared-modules @@ -0,0 +1 @@ +#include --- linux-azure-5.8-5.8.0.orig/debian.master/d-i/modules/amd64/nic-usb-modules +++ linux-azure-5.8-5.8.0/debian.master/d-i/modules/amd64/nic-usb-modules @@ -0,0 +1 @@ +#include --- linux-azure-5.8-5.8.0.orig/debian.master/d-i/modules/amd64/parport-modules +++ linux-azure-5.8-5.8.0/debian.master/d-i/modules/amd64/parport-modules @@ -0,0 +1 @@ +#include --- linux-azure-5.8-5.8.0.orig/debian.master/d-i/modules/amd64/pata-modules +++ linux-azure-5.8-5.8.0/debian.master/d-i/modules/amd64/pata-modules @@ -0,0 +1 @@ +#include --- linux-azure-5.8-5.8.0.orig/debian.master/d-i/modules/amd64/pcmcia-modules +++ linux-azure-5.8-5.8.0/debian.master/d-i/modules/amd64/pcmcia-modules @@ -0,0 +1 @@ +#include --- linux-azure-5.8-5.8.0.orig/debian.master/d-i/modules/amd64/pcmcia-storage-modules +++ linux-azure-5.8-5.8.0/debian.master/d-i/modules/amd64/pcmcia-storage-modules @@ -0,0 +1 @@ +#include --- linux-azure-5.8-5.8.0.orig/debian.master/d-i/modules/amd64/plip-modules +++ linux-azure-5.8-5.8.0/debian.master/d-i/modules/amd64/plip-modules @@ -0,0 +1 @@ +#include --- linux-azure-5.8-5.8.0.orig/debian.master/d-i/modules/amd64/ppp-modules +++ linux-azure-5.8-5.8.0/debian.master/d-i/modules/amd64/ppp-modules @@ -0,0 +1 @@ +#include --- linux-azure-5.8-5.8.0.orig/debian.master/d-i/modules/amd64/sata-modules +++ linux-azure-5.8-5.8.0/debian.master/d-i/modules/amd64/sata-modules @@ -0,0 +1 @@ +#include --- linux-azure-5.8-5.8.0.orig/debian.master/d-i/modules/amd64/scsi-modules +++ linux-azure-5.8-5.8.0/debian.master/d-i/modules/amd64/scsi-modules @@ -0,0 +1,2 @@ +#include +ipr ? --- linux-azure-5.8-5.8.0.orig/debian.master/d-i/modules/amd64/serial-modules +++ linux-azure-5.8-5.8.0/debian.master/d-i/modules/amd64/serial-modules @@ -0,0 +1 @@ +#include --- linux-azure-5.8-5.8.0.orig/debian.master/d-i/modules/amd64/speakup-modules +++ linux-azure-5.8-5.8.0/debian.master/d-i/modules/amd64/speakup-modules @@ -0,0 +1 @@ +#include --- linux-azure-5.8-5.8.0.orig/debian.master/d-i/modules/amd64/storage-core-modules +++ linux-azure-5.8-5.8.0/debian.master/d-i/modules/amd64/storage-core-modules @@ -0,0 +1 @@ +#include --- linux-azure-5.8-5.8.0.orig/debian.master/d-i/modules/amd64/usb-modules +++ linux-azure-5.8-5.8.0/debian.master/d-i/modules/amd64/usb-modules @@ -0,0 +1 @@ +#include --- linux-azure-5.8-5.8.0.orig/debian.master/d-i/modules/amd64/virtio-modules +++ linux-azure-5.8-5.8.0/debian.master/d-i/modules/amd64/virtio-modules @@ -0,0 +1 @@ +#include --- linux-azure-5.8-5.8.0.orig/debian.master/d-i/modules/amd64/vlan-modules +++ linux-azure-5.8-5.8.0/debian.master/d-i/modules/amd64/vlan-modules @@ -0,0 +1 @@ +#include --- linux-azure-5.8-5.8.0.orig/debian.master/d-i/modules/arm64/block-modules +++ linux-azure-5.8-5.8.0/debian.master/d-i/modules/arm64/block-modules @@ -0,0 +1 @@ +#include --- linux-azure-5.8-5.8.0.orig/debian.master/d-i/modules/arm64/crypto-modules +++ linux-azure-5.8-5.8.0/debian.master/d-i/modules/arm64/crypto-modules @@ -0,0 +1 @@ +#include --- linux-azure-5.8-5.8.0.orig/debian.master/d-i/modules/arm64/fat-modules +++ linux-azure-5.8-5.8.0/debian.master/d-i/modules/arm64/fat-modules @@ -0,0 +1 @@ +#include --- linux-azure-5.8-5.8.0.orig/debian.master/d-i/modules/arm64/fs-core-modules +++ linux-azure-5.8-5.8.0/debian.master/d-i/modules/arm64/fs-core-modules @@ -0,0 +1 @@ +#include --- linux-azure-5.8-5.8.0.orig/debian.master/d-i/modules/arm64/fs-secondary-modules +++ linux-azure-5.8-5.8.0/debian.master/d-i/modules/arm64/fs-secondary-modules @@ -0,0 +1 @@ +#include --- linux-azure-5.8-5.8.0.orig/debian.master/d-i/modules/arm64/input-modules +++ linux-azure-5.8-5.8.0/debian.master/d-i/modules/arm64/input-modules @@ -0,0 +1 @@ +#include --- linux-azure-5.8-5.8.0.orig/debian.master/d-i/modules/arm64/ipmi-modules +++ linux-azure-5.8-5.8.0/debian.master/d-i/modules/arm64/ipmi-modules @@ -0,0 +1 @@ +#include --- linux-azure-5.8-5.8.0.orig/debian.master/d-i/modules/arm64/kernel-image +++ linux-azure-5.8-5.8.0/debian.master/d-i/modules/arm64/kernel-image @@ -0,0 +1 @@ +#include --- linux-azure-5.8-5.8.0.orig/debian.master/d-i/modules/arm64/md-modules +++ linux-azure-5.8-5.8.0/debian.master/d-i/modules/arm64/md-modules @@ -0,0 +1 @@ +#include --- linux-azure-5.8-5.8.0.orig/debian.master/d-i/modules/arm64/message-modules +++ linux-azure-5.8-5.8.0/debian.master/d-i/modules/arm64/message-modules @@ -0,0 +1 @@ +#include --- linux-azure-5.8-5.8.0.orig/debian.master/d-i/modules/arm64/mouse-modules +++ linux-azure-5.8-5.8.0/debian.master/d-i/modules/arm64/mouse-modules @@ -0,0 +1 @@ +#include --- linux-azure-5.8-5.8.0.orig/debian.master/d-i/modules/arm64/multipath-modules +++ linux-azure-5.8-5.8.0/debian.master/d-i/modules/arm64/multipath-modules @@ -0,0 +1 @@ +#include --- linux-azure-5.8-5.8.0.orig/debian.master/d-i/modules/arm64/nfs-modules +++ linux-azure-5.8-5.8.0/debian.master/d-i/modules/arm64/nfs-modules @@ -0,0 +1 @@ +#include --- linux-azure-5.8-5.8.0.orig/debian.master/d-i/modules/arm64/nic-modules +++ linux-azure-5.8-5.8.0/debian.master/d-i/modules/arm64/nic-modules @@ -0,0 +1 @@ +#include --- linux-azure-5.8-5.8.0.orig/debian.master/d-i/modules/arm64/nic-shared-modules +++ linux-azure-5.8-5.8.0/debian.master/d-i/modules/arm64/nic-shared-modules @@ -0,0 +1 @@ +#include --- linux-azure-5.8-5.8.0.orig/debian.master/d-i/modules/arm64/nic-usb-modules +++ linux-azure-5.8-5.8.0/debian.master/d-i/modules/arm64/nic-usb-modules @@ -0,0 +1 @@ +#include --- linux-azure-5.8-5.8.0.orig/debian.master/d-i/modules/arm64/parport-modules +++ linux-azure-5.8-5.8.0/debian.master/d-i/modules/arm64/parport-modules @@ -0,0 +1 @@ +#include --- linux-azure-5.8-5.8.0.orig/debian.master/d-i/modules/arm64/plip-modules +++ linux-azure-5.8-5.8.0/debian.master/d-i/modules/arm64/plip-modules @@ -0,0 +1 @@ +#include --- linux-azure-5.8-5.8.0.orig/debian.master/d-i/modules/arm64/ppp-modules +++ linux-azure-5.8-5.8.0/debian.master/d-i/modules/arm64/ppp-modules @@ -0,0 +1 @@ +#include --- linux-azure-5.8-5.8.0.orig/debian.master/d-i/modules/arm64/sata-modules +++ linux-azure-5.8-5.8.0/debian.master/d-i/modules/arm64/sata-modules @@ -0,0 +1 @@ +#include --- linux-azure-5.8-5.8.0.orig/debian.master/d-i/modules/arm64/scsi-modules +++ linux-azure-5.8-5.8.0/debian.master/d-i/modules/arm64/scsi-modules @@ -0,0 +1,2 @@ +#include +ipr ? --- linux-azure-5.8-5.8.0.orig/debian.master/d-i/modules/arm64/speakup-modules +++ linux-azure-5.8-5.8.0/debian.master/d-i/modules/arm64/speakup-modules @@ -0,0 +1 @@ +#include --- linux-azure-5.8-5.8.0.orig/debian.master/d-i/modules/arm64/storage-core-modules +++ linux-azure-5.8-5.8.0/debian.master/d-i/modules/arm64/storage-core-modules @@ -0,0 +1 @@ +#include --- linux-azure-5.8-5.8.0.orig/debian.master/d-i/modules/arm64/usb-modules +++ linux-azure-5.8-5.8.0/debian.master/d-i/modules/arm64/usb-modules @@ -0,0 +1 @@ +#include --- linux-azure-5.8-5.8.0.orig/debian.master/d-i/modules/arm64/virtio-modules +++ linux-azure-5.8-5.8.0/debian.master/d-i/modules/arm64/virtio-modules @@ -0,0 +1 @@ +#include --- linux-azure-5.8-5.8.0.orig/debian.master/d-i/modules/arm64/vlan-modules +++ linux-azure-5.8-5.8.0/debian.master/d-i/modules/arm64/vlan-modules @@ -0,0 +1 @@ +#include --- linux-azure-5.8-5.8.0.orig/debian.master/d-i/modules/armhf/block-modules +++ linux-azure-5.8-5.8.0/debian.master/d-i/modules/armhf/block-modules @@ -0,0 +1 @@ +#include --- linux-azure-5.8-5.8.0.orig/debian.master/d-i/modules/armhf/crypto-modules +++ linux-azure-5.8-5.8.0/debian.master/d-i/modules/armhf/crypto-modules @@ -0,0 +1 @@ +#include --- linux-azure-5.8-5.8.0.orig/debian.master/d-i/modules/armhf/fat-modules +++ linux-azure-5.8-5.8.0/debian.master/d-i/modules/armhf/fat-modules @@ -0,0 +1 @@ +#include --- linux-azure-5.8-5.8.0.orig/debian.master/d-i/modules/armhf/fs-core-modules +++ linux-azure-5.8-5.8.0/debian.master/d-i/modules/armhf/fs-core-modules @@ -0,0 +1 @@ +#include --- linux-azure-5.8-5.8.0.orig/debian.master/d-i/modules/armhf/fs-secondary-modules +++ linux-azure-5.8-5.8.0/debian.master/d-i/modules/armhf/fs-secondary-modules @@ -0,0 +1 @@ +#include --- linux-azure-5.8-5.8.0.orig/debian.master/d-i/modules/armhf/input-modules +++ linux-azure-5.8-5.8.0/debian.master/d-i/modules/armhf/input-modules @@ -0,0 +1 @@ +#include --- linux-azure-5.8-5.8.0.orig/debian.master/d-i/modules/armhf/ipmi-modules +++ linux-azure-5.8-5.8.0/debian.master/d-i/modules/armhf/ipmi-modules @@ -0,0 +1 @@ +#include --- linux-azure-5.8-5.8.0.orig/debian.master/d-i/modules/armhf/kernel-image +++ linux-azure-5.8-5.8.0/debian.master/d-i/modules/armhf/kernel-image @@ -0,0 +1 @@ +#include --- linux-azure-5.8-5.8.0.orig/debian.master/d-i/modules/armhf/md-modules +++ linux-azure-5.8-5.8.0/debian.master/d-i/modules/armhf/md-modules @@ -0,0 +1 @@ +#include --- linux-azure-5.8-5.8.0.orig/debian.master/d-i/modules/armhf/mouse-modules +++ linux-azure-5.8-5.8.0/debian.master/d-i/modules/armhf/mouse-modules @@ -0,0 +1 @@ +#include --- linux-azure-5.8-5.8.0.orig/debian.master/d-i/modules/armhf/multipath-modules +++ linux-azure-5.8-5.8.0/debian.master/d-i/modules/armhf/multipath-modules @@ -0,0 +1 @@ +#include --- linux-azure-5.8-5.8.0.orig/debian.master/d-i/modules/armhf/nfs-modules +++ linux-azure-5.8-5.8.0/debian.master/d-i/modules/armhf/nfs-modules @@ -0,0 +1 @@ +#include --- linux-azure-5.8-5.8.0.orig/debian.master/d-i/modules/armhf/nic-modules +++ linux-azure-5.8-5.8.0/debian.master/d-i/modules/armhf/nic-modules @@ -0,0 +1 @@ +#include --- linux-azure-5.8-5.8.0.orig/debian.master/d-i/modules/armhf/nic-shared-modules +++ linux-azure-5.8-5.8.0/debian.master/d-i/modules/armhf/nic-shared-modules @@ -0,0 +1 @@ +#include --- linux-azure-5.8-5.8.0.orig/debian.master/d-i/modules/armhf/nic-usb-modules +++ linux-azure-5.8-5.8.0/debian.master/d-i/modules/armhf/nic-usb-modules @@ -0,0 +1 @@ +#include --- linux-azure-5.8-5.8.0.orig/debian.master/d-i/modules/armhf/parport-modules +++ linux-azure-5.8-5.8.0/debian.master/d-i/modules/armhf/parport-modules @@ -0,0 +1 @@ +#include --- linux-azure-5.8-5.8.0.orig/debian.master/d-i/modules/armhf/plip-modules +++ linux-azure-5.8-5.8.0/debian.master/d-i/modules/armhf/plip-modules @@ -0,0 +1 @@ +#include --- linux-azure-5.8-5.8.0.orig/debian.master/d-i/modules/armhf/ppp-modules +++ linux-azure-5.8-5.8.0/debian.master/d-i/modules/armhf/ppp-modules @@ -0,0 +1 @@ +#include --- linux-azure-5.8-5.8.0.orig/debian.master/d-i/modules/armhf/sata-modules +++ linux-azure-5.8-5.8.0/debian.master/d-i/modules/armhf/sata-modules @@ -0,0 +1 @@ +#include --- linux-azure-5.8-5.8.0.orig/debian.master/d-i/modules/armhf/scsi-modules +++ linux-azure-5.8-5.8.0/debian.master/d-i/modules/armhf/scsi-modules @@ -0,0 +1,2 @@ +#include +ipr ? --- linux-azure-5.8-5.8.0.orig/debian.master/d-i/modules/armhf/speakup-modules +++ linux-azure-5.8-5.8.0/debian.master/d-i/modules/armhf/speakup-modules @@ -0,0 +1 @@ +#include --- linux-azure-5.8-5.8.0.orig/debian.master/d-i/modules/armhf/storage-core-modules +++ linux-azure-5.8-5.8.0/debian.master/d-i/modules/armhf/storage-core-modules @@ -0,0 +1 @@ +#include --- linux-azure-5.8-5.8.0.orig/debian.master/d-i/modules/armhf/usb-modules +++ linux-azure-5.8-5.8.0/debian.master/d-i/modules/armhf/usb-modules @@ -0,0 +1 @@ +#include --- linux-azure-5.8-5.8.0.orig/debian.master/d-i/modules/armhf/vlan-modules +++ linux-azure-5.8-5.8.0/debian.master/d-i/modules/armhf/vlan-modules @@ -0,0 +1 @@ +#include --- linux-azure-5.8-5.8.0.orig/debian.master/d-i/modules/block-modules +++ linux-azure-5.8-5.8.0/debian.master/d-i/modules/block-modules @@ -0,0 +1,43 @@ +aoe ? +aten ? +bcm2835 ? +bpck ? +bpck6 ? +cciss ? +comm ? +cpqarray ? +DAC960 ? +dstr ? +epat ? +epia ? +fit2 ? +fit3 ? +friq ? +frpw ? +hpsa ? +hio ? +kbic ? +ktti ? +nbd ? +nvme ? +on20 ? +on26 ? +paride ? +pcd ? +pd ? +pf ? +pg ? +pt ? +sdhci-tegra ? +sx8 ? +umem ? +virtio_blk ? +xen-blkfront ? +mtip32xx ? +mmc_block ? +sdhci ? +sdhci-pci ? +sdhci-acpi ? +tifm_sd ? +dw_mmc ? +dw_mmc_pltfm ? --- linux-azure-5.8-5.8.0.orig/debian.master/d-i/modules/block-modules.powerpc +++ linux-azure-5.8-5.8.0/debian.master/d-i/modules/block-modules.powerpc @@ -0,0 +1,31 @@ +aoe ? +aten ? +bpck ? +bpck6 ? +cciss ? +comm ? +cpqarray ? +DAC960 ? +dstr ? +epat ? +epia ? +fit2 ? +fit3 ? +friq ? +frpw ? +kbic ? +ktti ? +nbd ? +on20 ? +on26 ? +paride ? +pcd ? +pd ? +pf ? +pg ? +ps3disk ? +ps3vram ? +pt ? +sx8 ? +umem ? +virtio_blk ? --- linux-azure-5.8-5.8.0.orig/debian.master/d-i/modules/crypto-modules +++ linux-azure-5.8-5.8.0/debian.master/d-i/modules/crypto-modules @@ -0,0 +1,78 @@ +aesni-intel ? +aes-x86_64 ? +af_alg ? +algif_hash ? +algif_skcipher ? +ansi_cprng ? +anubis ? +arc4 ? +async_memcpy ? +async_pq ? +async_raid6_recov ? +async_tx ? +async_xor ? +authenc ? +authencesn ? +blowfish_common ? +blowfish_generic ? +blowfish-x86_64 ? +camellia ? +cast5 ? +cast6 ? +ccm ? +crc32_generic ? +crc32c_generic ? +crc32-vx_s390 ? +cryptd ? +cryptoloop ? +crypto_null ? +crypto_user ? +ctr ? +cts ? +des_generic ? +fcrypt ? +gcm ? +gf128mul ? +ghash-clmulni-intel ? +ghash-generic ? +khazad ? +lrw ? +lzo ? +md4 ? +michael_mic ? +padlock-aes ? +padlock-sha ? +paes_s390 ? +pcbc ? +pcrypt ? +pkey ? +raid6test ? +rmd128 ? +rmd160 ? +rmd256 ? +rmd320 ? +salsa20_generic ? +salsa20-x86_64 ? +seed ? +seqiv ? +serpent_generic ? +serpent-sse2-x86_64 ? +sha1-ssse3 ? +sha512_generic ? +tcrypt ? +tea ? +tgr192 ? +twofish_common ? +twofish_generic ? +twofish-x86_64 ? +twofish-x86_64-3way ? +vmac ? +wp512 ? +xcbc ? +xor ? +xts ? +zcrypt ? +zcrypt_cex2a ? +zcrypt_cex4 ? +zcrypt_pcixcc ? +zlib ? --- linux-azure-5.8-5.8.0.orig/debian.master/d-i/modules/dasd-extra-modules.s390x +++ linux-azure-5.8-5.8.0/debian.master/d-i/modules/dasd-extra-modules.s390x @@ -0,0 +1 @@ +dasd_diag_mod ? --- linux-azure-5.8-5.8.0.orig/debian.master/d-i/modules/dasd-modules.s390x +++ linux-azure-5.8-5.8.0/debian.master/d-i/modules/dasd-modules.s390x @@ -0,0 +1,3 @@ +dasd_mod ? +dasd_fba_mod ? +dasd_eckd_mod ? --- linux-azure-5.8-5.8.0.orig/debian.master/d-i/modules/fat-modules +++ linux-azure-5.8-5.8.0/debian.master/d-i/modules/fat-modules @@ -0,0 +1,7 @@ +fat ? +vfat ? + +# Supporting modules ? +nls_cp437 ? +nls_iso8859-1 ? +nls_utf8 ? --- linux-azure-5.8-5.8.0.orig/debian.master/d-i/modules/fb-modules +++ linux-azure-5.8-5.8.0/debian.master/d-i/modules/fb-modules @@ -0,0 +1,3 @@ +fbcon ? +vesafb ? +vga16fb ? --- linux-azure-5.8-5.8.0.orig/debian.master/d-i/modules/firewire-core-modules +++ linux-azure-5.8-5.8.0/debian.master/d-i/modules/firewire-core-modules @@ -0,0 +1,4 @@ +firewire-core ? +firewire-ohci ? +firewire-sbp2 ? +firewire-net ? --- linux-azure-5.8-5.8.0.orig/debian.master/d-i/modules/floppy-modules +++ linux-azure-5.8-5.8.0/debian.master/d-i/modules/floppy-modules @@ -0,0 +1 @@ +floppy ? --- linux-azure-5.8-5.8.0.orig/debian.master/d-i/modules/fs-core-modules +++ linux-azure-5.8-5.8.0/debian.master/d-i/modules/fs-core-modules @@ -0,0 +1,6 @@ +ext2 ? +ext4 ? +jfs ? +reiserfs ? +xfs ? +zfs ? --- linux-azure-5.8-5.8.0.orig/debian.master/d-i/modules/fs-secondary-modules +++ linux-azure-5.8-5.8.0/debian.master/d-i/modules/fs-secondary-modules @@ -0,0 +1,5 @@ +btrfs ? +fuse ? +ntfs ? +hfs ? +hfsplus ? --- linux-azure-5.8-5.8.0.orig/debian.master/d-i/modules/i386-virtual/block-modules +++ linux-azure-5.8-5.8.0/debian.master/d-i/modules/i386-virtual/block-modules @@ -0,0 +1 @@ +#include --- linux-azure-5.8-5.8.0.orig/debian.master/d-i/modules/i386-virtual/crypto-modules +++ linux-azure-5.8-5.8.0/debian.master/d-i/modules/i386-virtual/crypto-modules @@ -0,0 +1 @@ +#include --- linux-azure-5.8-5.8.0.orig/debian.master/d-i/modules/i386-virtual/fat-modules +++ linux-azure-5.8-5.8.0/debian.master/d-i/modules/i386-virtual/fat-modules @@ -0,0 +1 @@ +#include --- linux-azure-5.8-5.8.0.orig/debian.master/d-i/modules/i386-virtual/fb-modules +++ linux-azure-5.8-5.8.0/debian.master/d-i/modules/i386-virtual/fb-modules @@ -0,0 +1 @@ +#include --- linux-azure-5.8-5.8.0.orig/debian.master/d-i/modules/i386-virtual/floppy-modules +++ linux-azure-5.8-5.8.0/debian.master/d-i/modules/i386-virtual/floppy-modules @@ -0,0 +1 @@ +#include --- linux-azure-5.8-5.8.0.orig/debian.master/d-i/modules/i386-virtual/fs-core-modules +++ linux-azure-5.8-5.8.0/debian.master/d-i/modules/i386-virtual/fs-core-modules @@ -0,0 +1 @@ +#include --- linux-azure-5.8-5.8.0.orig/debian.master/d-i/modules/i386-virtual/fs-secondary-modules +++ linux-azure-5.8-5.8.0/debian.master/d-i/modules/i386-virtual/fs-secondary-modules @@ -0,0 +1 @@ +#include --- linux-azure-5.8-5.8.0.orig/debian.master/d-i/modules/i386-virtual/kernel-image +++ linux-azure-5.8-5.8.0/debian.master/d-i/modules/i386-virtual/kernel-image @@ -0,0 +1 @@ +#include --- linux-azure-5.8-5.8.0.orig/debian.master/d-i/modules/i386-virtual/md-modules +++ linux-azure-5.8-5.8.0/debian.master/d-i/modules/i386-virtual/md-modules @@ -0,0 +1 @@ +#include --- linux-azure-5.8-5.8.0.orig/debian.master/d-i/modules/i386-virtual/message-modules +++ linux-azure-5.8-5.8.0/debian.master/d-i/modules/i386-virtual/message-modules @@ -0,0 +1 @@ +#include --- linux-azure-5.8-5.8.0.orig/debian.master/d-i/modules/i386-virtual/mouse-modules +++ linux-azure-5.8-5.8.0/debian.master/d-i/modules/i386-virtual/mouse-modules @@ -0,0 +1 @@ +#include --- linux-azure-5.8-5.8.0.orig/debian.master/d-i/modules/i386-virtual/multipath-modules +++ linux-azure-5.8-5.8.0/debian.master/d-i/modules/i386-virtual/multipath-modules @@ -0,0 +1 @@ +#include --- linux-azure-5.8-5.8.0.orig/debian.master/d-i/modules/i386-virtual/nic-modules +++ linux-azure-5.8-5.8.0/debian.master/d-i/modules/i386-virtual/nic-modules @@ -0,0 +1 @@ +#include --- linux-azure-5.8-5.8.0.orig/debian.master/d-i/modules/i386-virtual/nic-shared-modules +++ linux-azure-5.8-5.8.0/debian.master/d-i/modules/i386-virtual/nic-shared-modules @@ -0,0 +1 @@ +#include --- linux-azure-5.8-5.8.0.orig/debian.master/d-i/modules/i386-virtual/parport-modules +++ linux-azure-5.8-5.8.0/debian.master/d-i/modules/i386-virtual/parport-modules @@ -0,0 +1 @@ +#include --- linux-azure-5.8-5.8.0.orig/debian.master/d-i/modules/i386-virtual/scsi-modules +++ linux-azure-5.8-5.8.0/debian.master/d-i/modules/i386-virtual/scsi-modules @@ -0,0 +1,2 @@ +#include +ipr ? --- linux-azure-5.8-5.8.0.orig/debian.master/d-i/modules/i386-virtual/serial-modules +++ linux-azure-5.8-5.8.0/debian.master/d-i/modules/i386-virtual/serial-modules @@ -0,0 +1 @@ +#include --- linux-azure-5.8-5.8.0.orig/debian.master/d-i/modules/i386-virtual/storage-core-modules +++ linux-azure-5.8-5.8.0/debian.master/d-i/modules/i386-virtual/storage-core-modules @@ -0,0 +1 @@ +#include --- linux-azure-5.8-5.8.0.orig/debian.master/d-i/modules/i386-virtual/virtio-modules +++ linux-azure-5.8-5.8.0/debian.master/d-i/modules/i386-virtual/virtio-modules @@ -0,0 +1 @@ +#include --- linux-azure-5.8-5.8.0.orig/debian.master/d-i/modules/i386-virtual/vlan-modules +++ linux-azure-5.8-5.8.0/debian.master/d-i/modules/i386-virtual/vlan-modules @@ -0,0 +1 @@ +#include --- linux-azure-5.8-5.8.0.orig/debian.master/d-i/modules/i386/block-modules +++ linux-azure-5.8-5.8.0/debian.master/d-i/modules/i386/block-modules @@ -0,0 +1 @@ +#include --- linux-azure-5.8-5.8.0.orig/debian.master/d-i/modules/i386/crypto-modules +++ linux-azure-5.8-5.8.0/debian.master/d-i/modules/i386/crypto-modules @@ -0,0 +1 @@ +#include --- linux-azure-5.8-5.8.0.orig/debian.master/d-i/modules/i386/fat-modules +++ linux-azure-5.8-5.8.0/debian.master/d-i/modules/i386/fat-modules @@ -0,0 +1 @@ +#include --- linux-azure-5.8-5.8.0.orig/debian.master/d-i/modules/i386/fb-modules +++ linux-azure-5.8-5.8.0/debian.master/d-i/modules/i386/fb-modules @@ -0,0 +1 @@ +#include --- linux-azure-5.8-5.8.0.orig/debian.master/d-i/modules/i386/firewire-core-modules +++ linux-azure-5.8-5.8.0/debian.master/d-i/modules/i386/firewire-core-modules @@ -0,0 +1 @@ +#include --- linux-azure-5.8-5.8.0.orig/debian.master/d-i/modules/i386/floppy-modules +++ linux-azure-5.8-5.8.0/debian.master/d-i/modules/i386/floppy-modules @@ -0,0 +1 @@ +#include --- linux-azure-5.8-5.8.0.orig/debian.master/d-i/modules/i386/fs-core-modules +++ linux-azure-5.8-5.8.0/debian.master/d-i/modules/i386/fs-core-modules @@ -0,0 +1 @@ +#include --- linux-azure-5.8-5.8.0.orig/debian.master/d-i/modules/i386/fs-secondary-modules +++ linux-azure-5.8-5.8.0/debian.master/d-i/modules/i386/fs-secondary-modules @@ -0,0 +1 @@ +#include --- linux-azure-5.8-5.8.0.orig/debian.master/d-i/modules/i386/input-modules +++ linux-azure-5.8-5.8.0/debian.master/d-i/modules/i386/input-modules @@ -0,0 +1 @@ +#include --- linux-azure-5.8-5.8.0.orig/debian.master/d-i/modules/i386/ipmi-modules +++ linux-azure-5.8-5.8.0/debian.master/d-i/modules/i386/ipmi-modules @@ -0,0 +1 @@ +#include --- linux-azure-5.8-5.8.0.orig/debian.master/d-i/modules/i386/kernel-image +++ linux-azure-5.8-5.8.0/debian.master/d-i/modules/i386/kernel-image @@ -0,0 +1 @@ +#include --- linux-azure-5.8-5.8.0.orig/debian.master/d-i/modules/i386/md-modules +++ linux-azure-5.8-5.8.0/debian.master/d-i/modules/i386/md-modules @@ -0,0 +1 @@ +#include --- linux-azure-5.8-5.8.0.orig/debian.master/d-i/modules/i386/message-modules +++ linux-azure-5.8-5.8.0/debian.master/d-i/modules/i386/message-modules @@ -0,0 +1 @@ +#include --- linux-azure-5.8-5.8.0.orig/debian.master/d-i/modules/i386/mouse-modules +++ linux-azure-5.8-5.8.0/debian.master/d-i/modules/i386/mouse-modules @@ -0,0 +1 @@ +#include --- linux-azure-5.8-5.8.0.orig/debian.master/d-i/modules/i386/multipath-modules +++ linux-azure-5.8-5.8.0/debian.master/d-i/modules/i386/multipath-modules @@ -0,0 +1 @@ +#include --- linux-azure-5.8-5.8.0.orig/debian.master/d-i/modules/i386/nfs-modules +++ linux-azure-5.8-5.8.0/debian.master/d-i/modules/i386/nfs-modules @@ -0,0 +1 @@ +#include --- linux-azure-5.8-5.8.0.orig/debian.master/d-i/modules/i386/nic-modules +++ linux-azure-5.8-5.8.0/debian.master/d-i/modules/i386/nic-modules @@ -0,0 +1 @@ +#include --- linux-azure-5.8-5.8.0.orig/debian.master/d-i/modules/i386/nic-pcmcia-modules +++ linux-azure-5.8-5.8.0/debian.master/d-i/modules/i386/nic-pcmcia-modules @@ -0,0 +1 @@ +#include --- linux-azure-5.8-5.8.0.orig/debian.master/d-i/modules/i386/nic-shared-modules +++ linux-azure-5.8-5.8.0/debian.master/d-i/modules/i386/nic-shared-modules @@ -0,0 +1 @@ +#include --- linux-azure-5.8-5.8.0.orig/debian.master/d-i/modules/i386/nic-usb-modules +++ linux-azure-5.8-5.8.0/debian.master/d-i/modules/i386/nic-usb-modules @@ -0,0 +1 @@ +#include --- linux-azure-5.8-5.8.0.orig/debian.master/d-i/modules/i386/parport-modules +++ linux-azure-5.8-5.8.0/debian.master/d-i/modules/i386/parport-modules @@ -0,0 +1 @@ +#include --- linux-azure-5.8-5.8.0.orig/debian.master/d-i/modules/i386/pata-modules +++ linux-azure-5.8-5.8.0/debian.master/d-i/modules/i386/pata-modules @@ -0,0 +1 @@ +#include --- linux-azure-5.8-5.8.0.orig/debian.master/d-i/modules/i386/pcmcia-modules +++ linux-azure-5.8-5.8.0/debian.master/d-i/modules/i386/pcmcia-modules @@ -0,0 +1 @@ +#include --- linux-azure-5.8-5.8.0.orig/debian.master/d-i/modules/i386/pcmcia-storage-modules +++ linux-azure-5.8-5.8.0/debian.master/d-i/modules/i386/pcmcia-storage-modules @@ -0,0 +1 @@ +#include --- linux-azure-5.8-5.8.0.orig/debian.master/d-i/modules/i386/plip-modules +++ linux-azure-5.8-5.8.0/debian.master/d-i/modules/i386/plip-modules @@ -0,0 +1 @@ +#include --- linux-azure-5.8-5.8.0.orig/debian.master/d-i/modules/i386/ppp-modules +++ linux-azure-5.8-5.8.0/debian.master/d-i/modules/i386/ppp-modules @@ -0,0 +1 @@ +#include --- linux-azure-5.8-5.8.0.orig/debian.master/d-i/modules/i386/sata-modules +++ linux-azure-5.8-5.8.0/debian.master/d-i/modules/i386/sata-modules @@ -0,0 +1 @@ +#include --- linux-azure-5.8-5.8.0.orig/debian.master/d-i/modules/i386/scsi-modules +++ linux-azure-5.8-5.8.0/debian.master/d-i/modules/i386/scsi-modules @@ -0,0 +1,2 @@ +#include +ipr ? --- linux-azure-5.8-5.8.0.orig/debian.master/d-i/modules/i386/serial-modules +++ linux-azure-5.8-5.8.0/debian.master/d-i/modules/i386/serial-modules @@ -0,0 +1 @@ +#include --- linux-azure-5.8-5.8.0.orig/debian.master/d-i/modules/i386/speakup-modules +++ linux-azure-5.8-5.8.0/debian.master/d-i/modules/i386/speakup-modules @@ -0,0 +1 @@ +#include --- linux-azure-5.8-5.8.0.orig/debian.master/d-i/modules/i386/storage-core-modules +++ linux-azure-5.8-5.8.0/debian.master/d-i/modules/i386/storage-core-modules @@ -0,0 +1 @@ +#include --- linux-azure-5.8-5.8.0.orig/debian.master/d-i/modules/i386/usb-modules +++ linux-azure-5.8-5.8.0/debian.master/d-i/modules/i386/usb-modules @@ -0,0 +1 @@ +#include --- linux-azure-5.8-5.8.0.orig/debian.master/d-i/modules/i386/virtio-modules +++ linux-azure-5.8-5.8.0/debian.master/d-i/modules/i386/virtio-modules @@ -0,0 +1 @@ +#include --- linux-azure-5.8-5.8.0.orig/debian.master/d-i/modules/i386/vlan-modules +++ linux-azure-5.8-5.8.0/debian.master/d-i/modules/i386/vlan-modules @@ -0,0 +1 @@ +#include --- linux-azure-5.8-5.8.0.orig/debian.master/d-i/modules/input-modules +++ linux-azure-5.8-5.8.0/debian.master/d-i/modules/input-modules @@ -0,0 +1,71 @@ +hid ? +hid-a4tech ? +hid-apple ? +hid-appleir ? +hid-aureal ? +hid-belkin ? +hid-bright ? +hid-cherry ? +hid-chicony ? +hid-corsair ? +hid-cp2112 ? +hid-cypress ? +hid-dell ? +hid-elecom ? +hid-elo ? +hid-ezkey ? +hid-generic ? +hid-gfrm ? +hid-gt683r ? +hid-gyration ? +hid-holtek-kbd ? +hid-holtek-mouse ? +hid-hyperv ? +hid-kensington ? +hid-keytouch ? +hid-kye ? +hid-lcpower ? +hid-lenovo ? +hid-logitech ? +hid-logitech-dj ? +hid-logitech-hidpp ? +hid-magicmouse ? +hid-microsoft ? +hid-monterey ? +hid-multitouch ? +hid-ntrig ? +hid-ortek ? +hid-penmount ? +hid-petalynx ? +hid-picolcd ? +hid-pl ? +hid-plantronics ? +hid-primax ? +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-samsung ? +hid-sony ? +hid-speedlink ? +hid-sunplus ? +hid-thingm ? +hid-tivo ? +hid-topseed ? +hid-twinhan ? +hid-uclogic ? +hid-waltop ? +hid-wiimote ? +hid-xinmo ? +hid-zydacron ? +uhid ? +usbhid ? --- linux-azure-5.8-5.8.0.orig/debian.master/d-i/modules/ipmi-modules +++ linux-azure-5.8-5.8.0/debian.master/d-i/modules/ipmi-modules @@ -0,0 +1,5 @@ +ipmi_devintf ? +ipmi_msghandler ? +ipmi_poweroff ? +ipmi_si ? +ipmi_watchdog ? --- linux-azure-5.8-5.8.0.orig/debian.master/d-i/modules/kernel-image +++ linux-azure-5.8-5.8.0/debian.master/d-i/modules/kernel-image @@ -0,0 +1,31 @@ +ast ? +gpio-pca953x ? +gpio-regulator ? +hibmc-drm ? +i2c-mux ? +i2c-mux-pinctrl ? +i2c-tegra ? +max8907 ? +max8907-regulator ? +nvec ? +nvec_kbd ? +nvec_paz00 ? +nvec_power ? +nvec_ps2 ? +palmas-regulator ? +rtc-em3027 ? +rtc-max8907 ? +rtc-palmas ? +rtc-tps6586x ? +rtc-tps65910 ? +tps51632-regulator ? +tps62360-regulator ? +tps65090-charger ? +tps65090-regulator ? +tps6586x-regulator ? +tps65910-regulator ? +host1x ? +tegra-drm ? +pwm_bl ? +pwm-tegra ? +panel-simple ? --- linux-azure-5.8-5.8.0.orig/debian.master/d-i/modules/md-modules +++ linux-azure-5.8-5.8.0/debian.master/d-i/modules/md-modules @@ -0,0 +1,16 @@ +dm-crypt ? +dm-mirror ? +dm-raid ? +dm-snapshot ? +dm-zero ? +faulty ? +linear ? +multipath ? +raid0 ? +raid1 ? +raid10 ? +raid456 ? + +# Extras +dm-raid45 ? +dm-loop ? --- linux-azure-5.8-5.8.0.orig/debian.master/d-i/modules/message-modules +++ linux-azure-5.8-5.8.0/debian.master/d-i/modules/message-modules @@ -0,0 +1,9 @@ +mptbase ? +mptctl ? +mptfc ? +mptlan ? +mptsas ? +mpt2sas ? +mpt3sas ? +mptscsih ? +mptspi ? --- linux-azure-5.8-5.8.0.orig/debian.master/d-i/modules/message-modules.powerpc +++ linux-azure-5.8-5.8.0/debian.master/d-i/modules/message-modules.powerpc @@ -0,0 +1,7 @@ +mptbase +mptctl +mptfc +mptlan +mptsas +mptscsih +mptspi --- linux-azure-5.8-5.8.0.orig/debian.master/d-i/modules/mouse-modules +++ linux-azure-5.8-5.8.0/debian.master/d-i/modules/mouse-modules @@ -0,0 +1,2 @@ +psmouse ? +usbmouse ? --- linux-azure-5.8-5.8.0.orig/debian.master/d-i/modules/multipath-modules +++ linux-azure-5.8-5.8.0/debian.master/d-i/modules/multipath-modules @@ -0,0 +1,4 @@ +dm-multipath ? +dm-round-robin ? +dm-service-time ? +dm-queue-length ? --- linux-azure-5.8-5.8.0.orig/debian.master/d-i/modules/nfs-modules +++ linux-azure-5.8-5.8.0/debian.master/d-i/modules/nfs-modules @@ -0,0 +1,6 @@ +nfs ? +nfs_acl ? +nfsv3 ? +lockd ? +sunrpc ? +cifs ? --- linux-azure-5.8-5.8.0.orig/debian.master/d-i/modules/nic-modules +++ linux-azure-5.8-5.8.0/debian.master/d-i/modules/nic-modules @@ -0,0 +1,209 @@ +3c359 ? +3c501 ? +3c503 ? +3c505 ? +3c507 ? +3c509 ? +3c515 ? +3c523 ? +3c527 ? +3c59x ? +8139cp ? +8139too ? +82596 ? +abyss ? +ac3200 ? +adm8211 ? +airo ? +airport ? +alx ? +amd8111e ? +amd-xgbe ? +aquantia ? +arcnet ? +arc-rawmode ? +arc-rimi ? +arlan ? +at1700 ? +ath5k ? +ath9k ? +ath9k_htc ? +atl1 ? +atl1c ? +atl1e ? +atl2 ? +atmel ? +atmel_pci ? +b44 ? +bcm87xx ? +be2net ? +bmac ? +bnx2 ? +bnx2x ? +bnxt_en ? +bonding ? +brcmfmac ? +brcmsmac ? +broadcom ? +xgmac ? +cassini ? +ccwgroup ? +com20020 ? +com20020-pci ? +com90io ? +com90xx ? +cs89x0 ? +ctcm ? +cxgb4 ? +de2104x ? +de4x5 ? +de600 ? +de620 ? +defxx ? +depca ? +dl2k ? +dmfe ? +dummy ? +e100 ? +e1000 ? +e1000e ? +e2100 ? +eepro ? +eepro100 ? +eexpress ? +enic ? +epic100 ? +eql ? +es3210 ? +eth16i ? +ewrk3 ? +fealnx ? +forcedeth ? +fsm ? +ibmveth ? +ibmvnic ? +igb ? +ps3_gelic ? +hamachi ? +hclge ? +hermes ? +hfi1 ? +hinic ? +hns_dsaf ? +hns_enet_drv ? +hns_mdio ? +hns3 ? +hp ? +hp100 ? +hp-plus ? +i40e ? +i40evf ? +ibmtr ? +ipddp ? +ipw2100 ? +ipw2200 ? +iwl3945 ? +iwl4965 ? +iwl-legacy ? +iwldvm ? +iwlmvm ? +iwlwifi ? +ixgb ? +ixgbe ? +lance ? +lanstreamer ? +lcs ? +lasi_82596 ? +lne390 ? +lp486e ? +mace ? +marvell ? +mdio-thunder ? +mlx4_core ? +mlx4_en ? +mlx5_core ? +mv643xx_eth ? +myri_sbus ? +natsemi ? +ne ? +ne2 ? +ne2k-pci ? +ne3210 ? +netconsole ? +netiucv ? +netsec ? +netxen_nic ? +ni5010 ? +ni52 ? +ni65 ? +nicpf ? +nicvf ? +niu ? +ns83820 ? +olympic ? +orinoco ? +orinoco_pci ? +orinoco_plx ? +orinoco_tmd ? +pcnet32 ? +qcom-emac ? +qede ? +qeth ? +qeth_l2 ? +qeth_l3 ? +qlcnic ? +r815x ? +r8169 ? +rate_control ? +realtek ? +rfc1051 ? +rfc1201 ? +rrunner ? +rt2400 ? +rt2400pci ? +rt2500 ? +rt2500pci ? +rt2800pci ? +rt61pci ? +s2io ? +sfc ? +shaper ? +sis190 ? +sis900 ? +spidernet ? +skfp ? +skge ? +sk98lin ? +sky2 ? +smc9194 ? +smc-ultra ? +smc-ultra32 ? +starfire ? +strip ? +sunbmac ? +sundance ? +sungem ? +sungem_phy ? +sunhme ? +sunlance ? +sunqe ? +sunvnet ? +tg3 ? +tlan ? +tms380tr ? +tmspci ? +tulip ? +tun ? +typhoon ? +uli526x ? +via-rhine ? +via-velocity ? +virtio_net ? +wavelan ? +wd ? +winbond-840 ? +yellowfin ? +znet ? +vmxnet3 ? +xen-netfront ? +xgene-enet ? --- linux-azure-5.8-5.8.0.orig/debian.master/d-i/modules/nic-modules.powerpc +++ linux-azure-5.8-5.8.0/debian.master/d-i/modules/nic-modules.powerpc @@ -0,0 +1,152 @@ +3c359 ? +3c501 ? +3c503 ? +3c505 ? +3c507 ? +3c509 ? +3c515 ? +3c523 ? +3c527 ? +3c59x ? +8139cp ? +8139too ? +82596 ? +abyss ? +ac3200 ? +adm8211 ? +airo ? +airport ? +amd8111e ? +arc4 ? +arcnet ? +arc-rawmode ? +arc-rimi ? +arlan ? +at1700 ? +atl1 ? +atl1e ? +atl2 ? +atmel ? +atmel_pci ? +b44 ? +bcm43xx ? +bcm43xx-mac80211 ? +bmac ? +bnx2 ? +bnx2x ? +bonding ? +cassini ? +com20020 ? +com20020-pci ? +com90io ? +com90xx ? +cs89x0 ? +de2104x ? +de4x5 ? +de600 ? +de620 ? +defxx ? +depca ? +dl2k ? +dmfe ? +dummy ? +e100 ? +e1000 ? +e1000e ? +e2100 ? +eepro ? +eepro100 ? +eexpress ? +epic100 ? +eql ? +es3210 ? +eth16i ? +ewrk3 ? +fealnx ? +forcedeth ? +igb ? +hamachi ? +hermes ? +hp ? +hp100 ? +hp-plus ? +ibmtr ? +ibmveth ? +ipddp ? +ipw2100 ? +ipw2200 ? +ipw3945 ? +ixgb ? +lance ? +lanstreamer ? +lasi_82596 ? +lne390 ? +lp486e ? +mace ? +mv643xx_eth ? +myri_sbus ? +natsemi ? +ne ? +ne2 ? +ne2k-pci ? +ne3210 ? +netconsole ? +netxen_nic ? +ni5010 ? +ni52 ? +ni65 ? +niu ? +ns83820 ? +olympic ? +orinoco ? +orinoco_pci ? +orinoco_plx ? +orinoco_tmd ? +pcnet32 ? +ps3_gelic ? +r8169 ? +rate_control ? +rfc1051 ? +rfc1201 ? +rrunner ? +rt2400 ? +rt2500 ? +rt61pci ? +s2io ? +shaper ? +sis190 ? +sis900 ? +spidernet ? +skfp ? +skge ? +sk98lin ? +sky2 ? +smc9194 ? +smc-ultra ? +smc-ultra32 ? +starfire ? +strip ? +sunbmac ? +sundance ? +sungem ? +sungem_phy ? +sunhme ? +sunlance ? +sunqe ? +sunvnet ? +tg3 ? +tlan ? +tms380tr ? +tmspci ? +tulip ? +tun ? +typhoon ? +uli526x ? +via-rhine ? +via-velocity ? +virtio_net ? +wavelan ? +wd ? +winbond-840 ? +yellowfin ? +znet ? --- linux-azure-5.8-5.8.0.orig/debian.master/d-i/modules/nic-pcmcia-modules +++ linux-azure-5.8-5.8.0/debian.master/d-i/modules/nic-pcmcia-modules @@ -0,0 +1,19 @@ +3c574_cs ? +3c589_cs ? +airo_cs ? +atmel_cs ? +axnet_cs ? +com20020_cs ? +fmvj18x_cs ? +ibmtr_cs ? +netwave_cs ? +nmclan_cs ? +orinoco_cs ? +pcnet_cs ? +ray_cs ? +smc91c92_cs ? +wavelan_cs ? +wl3501_cs ? +xirc2ps_cs ? +xircom_cb ? +xircom_tulip_cb ? --- linux-azure-5.8-5.8.0.orig/debian.master/d-i/modules/nic-shared-modules +++ linux-azure-5.8-5.8.0/debian.master/d-i/modules/nic-shared-modules @@ -0,0 +1,26 @@ +# PHY +8390 ? +mii ? + +# CRC modules +crc-ccitt ? +crc-itu-t ? +libcrc32c ? + +# mac80211 stuff +mac80211 ? +cfg80211 ? + +# rt2x00 lib (since rt2x00 is split across usb/pci/cb +rt2x00lib ? +rt2800lib ? + +# Atheros library (since drivers are split across nic-modules/nic-usb-modules) +ath ? + +# Wireless 802.11 modules +lib80211 ? +cfg80211 ? +lib80211_crypt_ccmp ? +lib80211_crypt_tkip ? +lib80211_crypt_wep ? --- linux-azure-5.8-5.8.0.orig/debian.master/d-i/modules/nic-usb-modules +++ linux-azure-5.8-5.8.0/debian.master/d-i/modules/nic-usb-modules @@ -0,0 +1,34 @@ +ax88179_178a ? +catc ? +kaweth ? +pegasus ? +prism2_usb ? +rtl8150 ? +usbnet ? +zd1211rw ? +zd1201 ? +rt2500usb ? +rt73usb ? +rt2570 ? +rt2800usb ? +rt2x00usb ? +cdc_ether ? +asix ? +cdc_eem ? +cdc_ether ? +cdc-phonet ? +cdc_subset ? +dm9601 ? +gl620a ? +hso ? +int51x1 ? +mcs7830 ? +net1080 ? +plusb ? +rndis_host ? +r8152 ? +smsc95xx ? +zaurus ? +carl9170 ? +smsc75xx ? +smsc95xx ? --- linux-azure-5.8-5.8.0.orig/debian.master/d-i/modules/parport-modules +++ linux-azure-5.8-5.8.0/debian.master/d-i/modules/parport-modules @@ -0,0 +1,2 @@ +parport ? +parport_pc ? --- linux-azure-5.8-5.8.0.orig/debian.master/d-i/modules/pata-modules +++ linux-azure-5.8-5.8.0/debian.master/d-i/modules/pata-modules @@ -0,0 +1,47 @@ +pata_ali.ko ? +pata_amd.ko ? +pata_artop.ko ? +pata_atiixp.ko ? +pata_atp867x.ko ? +pata_cmd640.ko ? +pata_cmd64x.ko ? +pata_cs5520.ko ? +pata_cs5530.ko ? +pata_cs5535.ko ? +pata_cs5536.ko ? +pata_cypress.ko ? +pata_efar.ko ? +pata_hpt366.ko ? +pata_hpt37x.ko ? +pata_hpt3x2n.ko ? +pata_hpt3x3.ko ? +pata_isapnp.ko ? +pata_it8213.ko ? +pata_it821x.ko ? +pata_jmicron.ko ? +pata_legacy.ko ? +pata_macio.ko ? +pata_marvell.ko ? +pata_mpiix.ko ? +pata_netcell.ko ? +pata_ninja32.ko ? +pata_ns87410.ko ? +pata_ns87415.ko ? +pata_oldpiix.ko ? +pata_optidma.ko ? +pata_opti.ko ? +pata_pcmcia.ko ? +pata_pdc2027x.ko ? +pata_pdc202xx_old.ko ? +pata_qdi.ko ? +pata_radisys.ko ? +pata_rdc.ko ? +pata_rz1000.ko ? +pata_sc1200.ko ? +pata_sch.ko ? +pata_serverworks.ko ? +pata_sil680.ko ? +pata_sl82c105.ko ? +pata_triflex.ko ? +pata_via.ko ? +pata_winbond.ko ? --- linux-azure-5.8-5.8.0.orig/debian.master/d-i/modules/pcmcia-modules +++ linux-azure-5.8-5.8.0/debian.master/d-i/modules/pcmcia-modules @@ -0,0 +1,8 @@ +i82092 ? +i82365 ? +pcmcia ? +pcmcia_core ? +pd6729 ? +rsrc_nonstatic ? +tcic ? +yenta_socket ? --- linux-azure-5.8-5.8.0.orig/debian.master/d-i/modules/pcmcia-storage-modules +++ linux-azure-5.8-5.8.0/debian.master/d-i/modules/pcmcia-storage-modules @@ -0,0 +1,6 @@ +pata_pcmcia ? +qlogic_cs ? +fdomain_cs ? +aha152x_cs ? +nsp_cs ? +sym53c500_cs ? --- linux-azure-5.8-5.8.0.orig/debian.master/d-i/modules/plip-modules +++ linux-azure-5.8-5.8.0/debian.master/d-i/modules/plip-modules @@ -0,0 +1 @@ +plip ? --- linux-azure-5.8-5.8.0.orig/debian.master/d-i/modules/ppc64el/block-modules +++ linux-azure-5.8-5.8.0/debian.master/d-i/modules/ppc64el/block-modules @@ -0,0 +1 @@ +#include --- linux-azure-5.8-5.8.0.orig/debian.master/d-i/modules/ppc64el/crypto-modules +++ linux-azure-5.8-5.8.0/debian.master/d-i/modules/ppc64el/crypto-modules @@ -0,0 +1 @@ +#include --- linux-azure-5.8-5.8.0.orig/debian.master/d-i/modules/ppc64el/floppy-modules +++ linux-azure-5.8-5.8.0/debian.master/d-i/modules/ppc64el/floppy-modules @@ -0,0 +1 @@ +#include --- linux-azure-5.8-5.8.0.orig/debian.master/d-i/modules/ppc64el/fs-core-modules +++ linux-azure-5.8-5.8.0/debian.master/d-i/modules/ppc64el/fs-core-modules @@ -0,0 +1 @@ +#include --- linux-azure-5.8-5.8.0.orig/debian.master/d-i/modules/ppc64el/fs-secondary-modules +++ linux-azure-5.8-5.8.0/debian.master/d-i/modules/ppc64el/fs-secondary-modules @@ -0,0 +1 @@ +#include --- linux-azure-5.8-5.8.0.orig/debian.master/d-i/modules/ppc64el/input-modules +++ linux-azure-5.8-5.8.0/debian.master/d-i/modules/ppc64el/input-modules @@ -0,0 +1 @@ +#include --- linux-azure-5.8-5.8.0.orig/debian.master/d-i/modules/ppc64el/ipmi-modules +++ linux-azure-5.8-5.8.0/debian.master/d-i/modules/ppc64el/ipmi-modules @@ -0,0 +1 @@ +#include --- linux-azure-5.8-5.8.0.orig/debian.master/d-i/modules/ppc64el/kernel-image +++ linux-azure-5.8-5.8.0/debian.master/d-i/modules/ppc64el/kernel-image @@ -0,0 +1 @@ +#include --- linux-azure-5.8-5.8.0.orig/debian.master/d-i/modules/ppc64el/md-modules +++ linux-azure-5.8-5.8.0/debian.master/d-i/modules/ppc64el/md-modules @@ -0,0 +1 @@ +#include --- linux-azure-5.8-5.8.0.orig/debian.master/d-i/modules/ppc64el/message-modules +++ linux-azure-5.8-5.8.0/debian.master/d-i/modules/ppc64el/message-modules @@ -0,0 +1 @@ +#include --- linux-azure-5.8-5.8.0.orig/debian.master/d-i/modules/ppc64el/multipath-modules +++ linux-azure-5.8-5.8.0/debian.master/d-i/modules/ppc64el/multipath-modules @@ -0,0 +1 @@ +#include --- linux-azure-5.8-5.8.0.orig/debian.master/d-i/modules/ppc64el/nfs-modules +++ linux-azure-5.8-5.8.0/debian.master/d-i/modules/ppc64el/nfs-modules @@ -0,0 +1 @@ +#include --- linux-azure-5.8-5.8.0.orig/debian.master/d-i/modules/ppc64el/nic-modules +++ linux-azure-5.8-5.8.0/debian.master/d-i/modules/ppc64el/nic-modules @@ -0,0 +1 @@ +#include --- linux-azure-5.8-5.8.0.orig/debian.master/d-i/modules/ppc64el/nic-shared-modules +++ linux-azure-5.8-5.8.0/debian.master/d-i/modules/ppc64el/nic-shared-modules @@ -0,0 +1 @@ +#include --- linux-azure-5.8-5.8.0.orig/debian.master/d-i/modules/ppc64el/nic-usb-modules +++ linux-azure-5.8-5.8.0/debian.master/d-i/modules/ppc64el/nic-usb-modules @@ -0,0 +1 @@ +#include --- linux-azure-5.8-5.8.0.orig/debian.master/d-i/modules/ppc64el/parport-modules +++ linux-azure-5.8-5.8.0/debian.master/d-i/modules/ppc64el/parport-modules @@ -0,0 +1 @@ +#include --- linux-azure-5.8-5.8.0.orig/debian.master/d-i/modules/ppc64el/plip-modules +++ linux-azure-5.8-5.8.0/debian.master/d-i/modules/ppc64el/plip-modules @@ -0,0 +1 @@ +#include --- linux-azure-5.8-5.8.0.orig/debian.master/d-i/modules/ppc64el/ppp-modules +++ linux-azure-5.8-5.8.0/debian.master/d-i/modules/ppc64el/ppp-modules @@ -0,0 +1 @@ +#include --- linux-azure-5.8-5.8.0.orig/debian.master/d-i/modules/ppc64el/sata-modules +++ linux-azure-5.8-5.8.0/debian.master/d-i/modules/ppc64el/sata-modules @@ -0,0 +1 @@ +#include --- linux-azure-5.8-5.8.0.orig/debian.master/d-i/modules/ppc64el/scsi-modules +++ linux-azure-5.8-5.8.0/debian.master/d-i/modules/ppc64el/scsi-modules @@ -0,0 +1 @@ +#include --- linux-azure-5.8-5.8.0.orig/debian.master/d-i/modules/ppc64el/storage-core-modules +++ linux-azure-5.8-5.8.0/debian.master/d-i/modules/ppc64el/storage-core-modules @@ -0,0 +1,2 @@ +#include +ipr ? --- linux-azure-5.8-5.8.0.orig/debian.master/d-i/modules/ppc64el/virtio-modules +++ linux-azure-5.8-5.8.0/debian.master/d-i/modules/ppc64el/virtio-modules @@ -0,0 +1 @@ +#include --- linux-azure-5.8-5.8.0.orig/debian.master/d-i/modules/ppc64el/vlan-modules +++ linux-azure-5.8-5.8.0/debian.master/d-i/modules/ppc64el/vlan-modules @@ -0,0 +1 @@ +#include --- linux-azure-5.8-5.8.0.orig/debian.master/d-i/modules/ppp-modules +++ linux-azure-5.8-5.8.0/debian.master/d-i/modules/ppp-modules @@ -0,0 +1,6 @@ +ppp_async ? +ppp_deflate ? +ppp_mppe ? +pppoe ? +pppox ? +ppp_synctty ? --- linux-azure-5.8-5.8.0.orig/debian.master/d-i/modules/s390x/block-modules +++ linux-azure-5.8-5.8.0/debian.master/d-i/modules/s390x/block-modules @@ -0,0 +1 @@ +#include --- linux-azure-5.8-5.8.0.orig/debian.master/d-i/modules/s390x/crypto-modules +++ linux-azure-5.8-5.8.0/debian.master/d-i/modules/s390x/crypto-modules @@ -0,0 +1,2 @@ +#include +deflate ? --- linux-azure-5.8-5.8.0.orig/debian.master/d-i/modules/s390x/dasd-extra-modules +++ linux-azure-5.8-5.8.0/debian.master/d-i/modules/s390x/dasd-extra-modules @@ -0,0 +1 @@ +#include --- linux-azure-5.8-5.8.0.orig/debian.master/d-i/modules/s390x/dasd-modules +++ linux-azure-5.8-5.8.0/debian.master/d-i/modules/s390x/dasd-modules @@ -0,0 +1 @@ +#include --- linux-azure-5.8-5.8.0.orig/debian.master/d-i/modules/s390x/fat-modules +++ linux-azure-5.8-5.8.0/debian.master/d-i/modules/s390x/fat-modules @@ -0,0 +1 @@ +#include --- linux-azure-5.8-5.8.0.orig/debian.master/d-i/modules/s390x/fs-core-modules +++ linux-azure-5.8-5.8.0/debian.master/d-i/modules/s390x/fs-core-modules @@ -0,0 +1 @@ +#include --- linux-azure-5.8-5.8.0.orig/debian.master/d-i/modules/s390x/fs-secondary-modules +++ linux-azure-5.8-5.8.0/debian.master/d-i/modules/s390x/fs-secondary-modules @@ -0,0 +1 @@ +#include --- linux-azure-5.8-5.8.0.orig/debian.master/d-i/modules/s390x/kernel-image +++ linux-azure-5.8-5.8.0/debian.master/d-i/modules/s390x/kernel-image @@ -0,0 +1 @@ +#include --- linux-azure-5.8-5.8.0.orig/debian.master/d-i/modules/s390x/md-modules +++ linux-azure-5.8-5.8.0/debian.master/d-i/modules/s390x/md-modules @@ -0,0 +1 @@ +#include --- linux-azure-5.8-5.8.0.orig/debian.master/d-i/modules/s390x/multipath-modules +++ linux-azure-5.8-5.8.0/debian.master/d-i/modules/s390x/multipath-modules @@ -0,0 +1 @@ +#include --- linux-azure-5.8-5.8.0.orig/debian.master/d-i/modules/s390x/nfs-modules +++ linux-azure-5.8-5.8.0/debian.master/d-i/modules/s390x/nfs-modules @@ -0,0 +1 @@ +#include --- linux-azure-5.8-5.8.0.orig/debian.master/d-i/modules/s390x/nic-modules +++ linux-azure-5.8-5.8.0/debian.master/d-i/modules/s390x/nic-modules @@ -0,0 +1 @@ +#include --- linux-azure-5.8-5.8.0.orig/debian.master/d-i/modules/s390x/nic-shared-modules +++ linux-azure-5.8-5.8.0/debian.master/d-i/modules/s390x/nic-shared-modules @@ -0,0 +1 @@ +#include --- linux-azure-5.8-5.8.0.orig/debian.master/d-i/modules/s390x/scsi-modules +++ linux-azure-5.8-5.8.0/debian.master/d-i/modules/s390x/scsi-modules @@ -0,0 +1,2 @@ +#include +ipr ? --- linux-azure-5.8-5.8.0.orig/debian.master/d-i/modules/s390x/storage-core-modules +++ linux-azure-5.8-5.8.0/debian.master/d-i/modules/s390x/storage-core-modules @@ -0,0 +1 @@ +#include --- linux-azure-5.8-5.8.0.orig/debian.master/d-i/modules/s390x/virtio-modules +++ linux-azure-5.8-5.8.0/debian.master/d-i/modules/s390x/virtio-modules @@ -0,0 +1 @@ +#include --- linux-azure-5.8-5.8.0.orig/debian.master/d-i/modules/s390x/vlan-modules +++ linux-azure-5.8-5.8.0/debian.master/d-i/modules/s390x/vlan-modules @@ -0,0 +1 @@ +#include --- linux-azure-5.8-5.8.0.orig/debian.master/d-i/modules/sata-modules +++ linux-azure-5.8-5.8.0/debian.master/d-i/modules/sata-modules @@ -0,0 +1,18 @@ +sata_inic162x.ko ? +sata_mv.ko ? +sata_nv.ko ? +sata_promise.ko ? +sata_qstor.ko ? +sata_sil24.ko ? +sata_sil.ko ? +sata_sis.ko ? +sata_svw.ko ? +sata_sx4.ko ? +sata_uli.ko ? +sata_via.ko ? +sata_vsc.ko ? +ahci_platform ? +ahci ? +acard-ahci ? +libahci ? +ahci_xgene ? --- linux-azure-5.8-5.8.0.orig/debian.master/d-i/modules/scsi-modules +++ linux-azure-5.8-5.8.0/debian.master/d-i/modules/scsi-modules @@ -0,0 +1,137 @@ +# SCSI +raid_class ? +scsi_transport_spi ? +scsi_transport_fc ? +scsi_transport_iscsi ? +scsi_transport_sas ? +sr_mod ? +iscsi_tcp ? +libiscsi ? +amiga7xx ? +a3000 ? +a2091 ? +gvp11 ? +mvme147 ? +sgiwd93 ? +cyberstorm ? +cyberstormII ? +blz2060 ? +blz1230 ? +fastlane ? +oktagon_esp_mod ? +atari_scsi ? +mac_scsi ? +mac_esp ? +sun3_scsi ? +mvme16x ? +bvme6000 ? +sim710 ? +advansys ? +pm80xx ? +psi240i ? +BusLogic ? +dpt_i2o ? +u14-34f ? +ultrastor ? +aha152x ? +aha1542 ? +aha1740 ? +aic7xxx_old ? +ips ? +fd_mcs ? +fdomain ? +fnic ? +in2000 ? +g_NCR5380 ? +g_NCR5380_mmio ? +NCR53c406a ? +NCR_D700 ? +NCR_Q720_mod ? +sym53c416 ? +qlogicfas408 ? +qla1280 ? +pas16 ? +seagate ? +seagate ? +t128 ? +dmx3191d ? +dtc ? +zalon7xx ? +eata_pio ? +wd7000 ? +mca_53c9x ? +ibmmca ? +eata ? +dc395x ? +tmscsim ? +megaraid ? +atp870u ? +esp ? +gdth ? +initio ? +a100u2w ? +qlogicpti ? +ide-scsi ? +mesh ? +mac53c94 ? +pluto ? +dec_esp ? +3w-xxxx ? +3w-9xxx ? +ppa ? +imm ? +jazz_esp ? +sun3x_esp ? +fcal ? +lasi700 ? +nsp32 ? +hptiop ? +stex ? +osst ? +sg ? +ch ? +scsi_debug ? +aacraid ? +aic7xxx ? +aic79xx ? +aic94xx ? +arcmsr ? +acornscsi_mod ? +arxescsi ? +cumana_1 ? +cumana_2 ? +ecoscsi ? +oak ? +powertec ? +eesox ? +ibmvscsi ? +ibmvfc ? +libsas ? +lpfc ? +megaraid_mm ? +megaraid_mbox ? +megaraid_sas ? +qla2xxx ? +sym53c8xx ? +qla4xxx ? +mvsas ? +vmw_pvscsi ? +ums-cypress ? +be2iscsi ? +3w-sas ? +isci ? +mlx4_ib ? +mlx5_ib ? +zfcp ? +sd_mod ? +hisi_sas_v2_hw ? +hisi_sas_v3_hw ? +iscsi_ibft ? + +# device handlers +scsi_dh_alua ? +scsi_dh_emc ? +scsi_dh_rdac ? +scsi_dh_hp_sw ? + +smartpqi ? --- linux-azure-5.8-5.8.0.orig/debian.master/d-i/modules/scsi-modules.powerpc +++ linux-azure-5.8-5.8.0/debian.master/d-i/modules/scsi-modules.powerpc @@ -0,0 +1,118 @@ +# SCSI +raid_class ? +scsi_transport_spi ? +scsi_transport_fc ? +scsi_transport_iscsi ? +scsi_transport_sas ? +iscsi_tcp ? +libiscsi ? +amiga7xx ? +a3000 ? +a2091 ? +gvp11 ? +mvme147 ? +sgiwd93 ? +cyberstorm ? +cyberstormII ? +blz2060 ? +blz1230 ? +fastlane ? +oktagon_esp_mod ? +atari_scsi ? +mac_scsi ? +mac_esp ? +sun3_scsi ? +mvme16x ? +bvme6000 ? +sim710 ? +advansys ? +psi240i ? +BusLogic ? +dpt_i2o ? +u14-34f ? +ultrastor ? +aha152x ? +aha1542 ? +aha1740 ? +aic7xxx_old ? +ips ? +fd_mcs ? +fdomain ? +in2000 ? +g_NCR5380 ? +g_NCR5380_mmio ? +NCR53c406a ? +NCR_D700 ? +NCR_Q720_mod ? +sym53c416 ? +qlogicfas408 ? +qla1280 ? +pas16 ? +seagate ? +seagate ? +t128 ? +dmx3191d ? +dtc ? +zalon7xx ? +eata_pio ? +wd7000 ? +mca_53c9x ? +ibmmca ? +ibmvfc ? +ibmvscsi ? +eata ? +dc395x ? +tmscsim ? +megaraid ? +atp870u ? +esp ? +gdth ? +initio ? +a100u2w ? +qlogicpti ? +ide-scsi ? +mesh ? +mac53c94 ? +pluto ? +dec_esp ? +3w-xxxx ? +3w-9xxx ? +ppa ? +imm ? +jazz_esp ? +sun3x_esp ? +fcal ? +lasi700 ? +nsp32 ? +ipr ? +hptiop ? +stex ? +osst ? +sg ? +ch ? +scsi_debug ? +aacraid ? +aic7xxx ? +aic79xx ? +aic94xx ? +arcmsr ? +acornscsi_mod ? +arxescsi ? +cumana_1 ? +cumana_2 ? +ecoscsi ? +oak ? +powertec ? +eesox ? +ibmvscsic ? +libsas ? +lpfc ? +megaraid_mm ? +megaraid_mbox ? +megaraid_sas ? +qla2xxx ? +sym53c8xx ? +qla4xxx ? +mvsas ? +sr_mod ? +sd_mod ? --- linux-azure-5.8-5.8.0.orig/debian.master/d-i/modules/serial-modules +++ linux-azure-5.8-5.8.0/debian.master/d-i/modules/serial-modules @@ -0,0 +1,4 @@ +generic_serial ? +serial_cs ? +synclink_cs ? +hyperv-keyboard ? --- linux-azure-5.8-5.8.0.orig/debian.master/d-i/modules/speakup-modules +++ linux-azure-5.8-5.8.0/debian.master/d-i/modules/speakup-modules @@ -0,0 +1,16 @@ +speakup ? +speakup_acntpc ? +speakup_acntsa ? +speakup_apollo ? +speakup_audptr ? +speakup_bns ? +speakup_decext ? +speakup_dectlk ? +speakup_dtlk ? +speakup_dummy ? +speakup_keypc ? +speakup_ltlk ? +speakup_soft ? +speakup_spkout ? +speakup_txprt ? +speakup_decpc ? --- linux-azure-5.8-5.8.0.orig/debian.master/d-i/modules/storage-core-modules +++ linux-azure-5.8-5.8.0/debian.master/d-i/modules/storage-core-modules @@ -0,0 +1,15 @@ +# Core stacks +usb-storage ? + +# Block level +ata_piix ? +ata_generic ? + +# Loop modules +cryptoloop ? + +# Needs to be here for better cdrom initrd layout +isofs ? + +# Needed for NVMe disks under VMD PCIe domains +vmd ? --- linux-azure-5.8-5.8.0.orig/debian.master/d-i/modules/storage-core-modules.powerpc +++ linux-azure-5.8-5.8.0/debian.master/d-i/modules/storage-core-modules.powerpc @@ -0,0 +1,13 @@ +# Core stacks +usb-storage ? + +# Block level + +# Loop modules +cryptoloop + +# Needs to be here for better cdrom initrd layout +isofs + +ps3stor_lib ? +ps3rom ? --- linux-azure-5.8-5.8.0.orig/debian.master/d-i/modules/usb-modules +++ linux-azure-5.8-5.8.0/debian.master/d-i/modules/usb-modules @@ -0,0 +1,15 @@ +ehci-hcd ? +isp116x-hcd ? +isp1760 ? +ohci-hcd ? +r8a66597-hcd ? +sl811_cs ? +sl811-hcd ? +u132-hcd ? +uhci-hcd ? +xhci-hcd ? +xhci-plat-hcd ? +ehci-tegra ? +ehci-msm ? +ehci-platform ? +uas ? --- linux-azure-5.8-5.8.0.orig/debian.master/d-i/modules/virtio-modules +++ linux-azure-5.8-5.8.0/debian.master/d-i/modules/virtio-modules @@ -0,0 +1,11 @@ +virtio_balloon ? +virtio_pci ? +virtio_ring ? +virtio-rng ? +virtio_scsi ? +hv_vmbus ? +hv_utils ? +hv_netvsc ? +hv_mouse ? +hv_storvsc ? +hv_balloon ? --- linux-azure-5.8-5.8.0.orig/debian.master/d-i/modules/vlan-modules +++ linux-azure-5.8-5.8.0/debian.master/d-i/modules/vlan-modules @@ -0,0 +1,3 @@ +slp ? +garp ? +8021q ? --- linux-azure-5.8-5.8.0.orig/debian.master/d-i/package-list +++ linux-azure-5.8-5.8.0/debian.master/d-i/package-list @@ -0,0 +1,203 @@ +Package: kernel-image +Provides: ext3-modules, ext4-modules, squashfs-modules +Provides_amd64: efi-modules, ext3-modules, ext4-modules, squashfs-modules +Provides_i386: efi-modules, ext3-modules, ext4-modules, squashfs-modules +Provides_ppc64el: ext3-modules, ext4-modules, fat-modules, squashfs-modules +Provides_s390x: ext3-modules, ext4-modules, ppp-modules, squashfs-modules +Description: kernel image and system map + +Package: dasd-modules +Depends: kernel-image, storage-core-modules +Priority: standard +Description: DASD storage support + +Package: dasd-extra-modules +Depends: dasd-modules +Priority: extra +Description: DASD storage support -- extras + +Package: fat-modules +Depends: kernel-image +Priority: standard +Description: FAT filesystem support + This includes Windows FAT and VFAT support. + +Package: fb-modules +Depends: kernel-image +Priority: standard +Description: Framebuffer modules + +Package: firewire-core-modules +Depends: kernel-image, storage-core-modules +Priority: standard +Description: Firewire (IEEE-1394) Support + +Package: floppy-modules +Depends: kernel-image +Priority: standard +Description: Floppy driver support + +Package: fs-core-modules +Depends: kernel-image +Priority: standard +Provides: ext2-modules, jfs-modules, reiserfs-modules, xfs-modules +Description: Base filesystem modules + This includes jfs, reiserfs and xfs. + +Package: fs-secondary-modules +Depends: kernel-image, fat-modules +Priority: standard +Provides: btrfs-modules, ntfs-modules, hfs-modules +Description: Extra filesystem modules + This includes support for Windows NTFS and MacOS HFS/HFSPlus + +Package: input-modules +Depends: kernel-image, usb-modules +Priority: standard +Description: Support for various input methods + +Package: md-modules +Depends: kernel-image +Priority: standard +Provides: crypto-dm-modules +Description: Multi-device support (raid, device-mapper, lvm) + +Package: nic-modules +Depends: kernel-image, nic-shared-modules, virtio-modules +Priority: standard +Description: Network interface support + +Package: nic-pcmcia-modules +Depends: kernel-image, nic-shared-modules, nic-modules +Priority: standard +Description: PCMCIA network interface support + +Package: nic-usb-modules +Depends: kernel-image, nic-shared-modules, usb-modules +Priority: standard +Description: USB network interface support + +Package: nic-shared-modules +Depends: kernel-image, crypto-modules +Priority: standard +Description: nic shared modules + This package contains modules which support nic modules + +Package: parport-modules +Depends: kernel-image +Priority: standard +Description: Parallel port support + +Package: pata-modules +Depends: kernel-image, storage-core-modules +Priority: standard +Description: PATA support modules + +Package: pcmcia-modules +Depends: kernel-image +Priority: standard +Description: PCMCIA Modules + +Package: pcmcia-storage-modules +Depends: kernel-image, scsi-modules +Priority: standard +Description: PCMCIA storage support + +Package: plip-modules +Depends: kernel-image, nic-shared-modules, parport-modules +Priority: standard +Description: PLIP (parallel port) networking support + +Package: ppp-modules +Depends: kernel-image, nic-shared-modules, serial-modules +Priority: standard +Description: PPP (serial port) networking support + +Package: sata-modules +Depends: kernel-image, storage-core-modules +Priority: standard +Description: SATA storage support + +Package: scsi-modules +Depends: kernel-image, storage-core-modules +Priority: standard +Description: SCSI storage support + +Package: serial-modules +Depends: kernel-image +Priority: standard +Description: Serial port support + +Package: storage-core-modules +Depends: kernel-image +Priority: standard +Provides: loop-modules +Description: Core storage support + Includes core SCSI, LibATA, USB-Storage. Also includes related block + devices for CD, Disk and Tape medium (and IDE Floppy). + +Package: usb-modules +Depends: kernel-image, storage-core-modules +Priority: standard +Description: Core USB support + +Package: nfs-modules +Priority: standard +Depends: kernel-image +Description: NFS filesystem drivers + Includes the NFS client driver, and supporting modules. + +Package: block-modules +Priority: standard +Provides: nbd-modules +Depends: kernel-image, storage-core-modules, parport-modules, virtio-modules +Description: Block storage devices + This package contains the block storage devices, including DAC960 and + paraide. + +Package: message-modules +Priority: standard +Depends: kernel-image, storage-core-modules, scsi-modules +Description: Fusion and i2o storage modules + This package containes the fusion and i2o storage modules. + +Package: crypto-modules +Priority: extra +Depends: kernel-image +Description: crypto modules + This package contains crypto modules. + +Package: virtio-modules +Priority: standard +Depends: kernel-image +Description: VirtIO Modules + Includes modules for VirtIO (virtual machine, generally kvm guests) + +Package: socket-modules +Depends: kernel-image +Priority: standard +Description: Unix socket support + +Package: mouse-modules +Depends: kernel-image, input-modules, usb-modules +Priority: extra +Description: Mouse support + This package contains mouse drivers for the Linux kernel. + +Package: vlan-modules +Depends: kernel-image +Priority: extra +Description: vlan modules + This package contains vlan (8021.Q) modules. + +Package: ipmi-modules +Depends: kernel-image +Priority: standard +Description: ipmi modules + +Package: multipath-modules +Depends: kernel-image +Priority: extra +Description: DM-Multipath support + This package contains modules for device-mapper multipath support. + --- linux-azure-5.8-5.8.0.orig/debian.master/etc/getabis +++ linux-azure-5.8-5.8.0/debian.master/etc/getabis @@ -0,0 +1,18 @@ +repo_list=( + "http://archive.ubuntu.com/ubuntu/pool/main/l/linux" + "http://ports.ubuntu.com/ubuntu-ports/pool/main/l/linux" + "http://archive.ubuntu.com/ubuntu/pool/universe/l/linux" + "http://ports.ubuntu.com/ubuntu-ports/pool/universe/l/linux" + "http://ppa.launchpad.net/canonical-kernel-team/ppa/ubuntu/pool/main/l/linux" + "http://ppa.launchpad.net/canonical-kernel-team/unstable/ubuntu/pool/main/l/linux" + "http://ppa.launchpad.net/canonical-kernel-team/bootstrap/ubuntu/pool/main/l/linux" +) + +package_prefixes linux-buildinfo + +getall armhf generic +getall armhf generic-lpae +getall amd64 generic lowlatency +getall arm64 generic generic-64k +getall ppc64el generic +getall s390x generic --- linux-azure-5.8-5.8.0.orig/debian.master/etc/kernelconfig +++ linux-azure-5.8-5.8.0/debian.master/etc/kernelconfig @@ -0,0 +1,7 @@ +if [ "$variant" = "ports" ]; then + archs="" + family='ports' +else + archs="amd64 armhf arm64 ppc64el s390x" + family='ubuntu' +fi --- linux-azure-5.8-5.8.0.orig/debian.master/modprobe.d/common.conf +++ linux-azure-5.8-5.8.0/debian.master/modprobe.d/common.conf @@ -0,0 +1,3 @@ +# LP:1434842 -- disable OSS drivers by default to allow pulseaudio to emulate +blacklist snd-mixer-oss +blacklist snd-pcm-oss --- linux-azure-5.8-5.8.0.orig/debian.master/reconstruct +++ linux-azure-5.8-5.8.0/debian.master/reconstruct @@ -0,0 +1,67 @@ +# Recreate any symlinks created since the orig. +# Remove any files deleted from the orig. +rm -f 'arch/alpha/include/asm/local64.h' +rm -f 'arch/ia64/include/asm/local64.h' +rm -f 'arch/powerpc/lib/memcpy_mcsafe_64.S' +rm -f 'arch/powerpc/platforms/pseries/offline_states.h' +rm -f 'arch/x86/include/asm/local64.h' +rm -f 'arch/x86/include/asm/mcsafe_test.h' +rm -f 'drivers/net/ethernet/mscc/ocelot_board.c' +rm -f 'drivers/staging/mt7621-dma/mtk-hsdma.c' +rm -f 'kernel/elfcore.c' +rm -f 'lib/zlib_dfltcc/dfltcc_syms.c' +rm -f 'tools/arch/x86/include/asm/mcsafe_test.h' +rm -f 'tools/perf/bench/mem-memcpy-x86-64-lib.c' +rm -f 'tools/testing/kunit/.gitattributes' +chmod +x 'arch/riscv/kernel/vdso/so2s.sh' +chmod +x 'debian/cloud-tools/hv_get_dhcp_info' +chmod +x 'debian/cloud-tools/hv_get_dns_info' +chmod +x 'debian/cloud-tools/hv_set_ifconfig' +chmod +x 'debian/rules' +chmod +x 'debian/scripts/abi-check' +chmod +x 'debian/scripts/config-check' +chmod +x 'debian/scripts/control-create' +chmod +x 'debian/scripts/dkms-build' +chmod +x 'debian/scripts/dkms-build--nvidia-N' +chmod +x 'debian/scripts/file-downloader' +chmod +x 'debian/scripts/helpers/close' +chmod +x 'debian/scripts/helpers/open' +chmod +x 'debian/scripts/helpers/rebase' +chmod +x 'debian/scripts/link-headers' +chmod +x 'debian/scripts/misc/final-checks' +chmod +x 'debian/scripts/misc/find-missing-sauce.sh' +chmod +x 'debian/scripts/misc/find-obsolete-firmware' +chmod +x 'debian/scripts/misc/fw-to-ihex.sh' +chmod +x 'debian/scripts/misc/gen-auto-reconstruct' +chmod +x 'debian/scripts/misc/get-firmware' +chmod +x 'debian/scripts/misc/getabis' +chmod +x 'debian/scripts/misc/git-ubuntu-log' +chmod +x 'debian/scripts/misc/insert-changes.pl' +chmod +x 'debian/scripts/misc/insert-mainline-changes' +chmod +x 'debian/scripts/misc/insert-ubuntu-changes' +chmod +x 'debian/scripts/misc/kernel-wedge-arch.pl' +chmod +x 'debian/scripts/misc/kernelconfig' +chmod +x 'debian/scripts/misc/retag' +chmod +x 'debian/scripts/misc/splitconfig.pl' +chmod +x 'debian/scripts/misc/tristate.sh' +chmod +x 'debian/scripts/misc/update-aufs.sh' +chmod +x 'debian/scripts/module-check' +chmod +x 'debian/scripts/module-inclusion' +chmod +x 'debian/scripts/retpoline-check' +chmod +x 'debian/scripts/retpoline-extract' +chmod +x 'debian/scripts/retpoline-extract-one' +chmod +x 'debian/templates/extra.postinst.in' +chmod +x 'debian/templates/extra.postrm.in' +chmod +x 'debian/templates/headers.postinst.in' +chmod +x 'debian/templates/image.postinst.in' +chmod +x 'debian/templates/image.postrm.in' +chmod +x 'debian/templates/image.preinst.in' +chmod +x 'debian/templates/image.prerm.in' +chmod +x 'debian/tests-build/check-aliases' +chmod +x 'debian/tests/rebuild' +chmod +x 'debian/tests/ubuntu-regression-suite' +chmod +x 'samples/bpf/lwt_len_hist.sh' +chmod +x 'samples/bpf/test_lwt_bpf.sh' +chmod +x 'scripts/kmsg-doc' +chmod +x 'update-version-dkms' +exit 0 --- linux-azure-5.8-5.8.0.orig/debian.master/rules.d/amd64.mk +++ linux-azure-5.8-5.8.0/debian.master/rules.d/amd64.mk @@ -0,0 +1,26 @@ +human_arch = 64 bit x86 +build_arch = x86 +header_arch = $(build_arch) +defconfig = defconfig +flavours = generic lowlatency +build_image = bzImage +kernel_file = arch/$(build_arch)/boot/bzImage +install_file = vmlinuz +loader = grub +vdso = vdso_install +no_dumpfile = true +uefi_signed = true +do_tools_usbip = true +do_tools_cpupower = true +do_tools_perf = true +do_tools_perf_jvmti = true +do_tools_bpftool = true +do_tools_x86 = true +do_tools_hyperv = true +do_tools_host = true +do_extras_package = true +do_tools_common = true +do_tools_acpidbg = true +do_zfs = true +do_dkms_nvidia = true +do_dkms_nvidia_server = true --- linux-azure-5.8-5.8.0.orig/debian.master/rules.d/arm64.mk +++ linux-azure-5.8-5.8.0/debian.master/rules.d/arm64.mk @@ -0,0 +1,25 @@ +human_arch = ARMv8 +build_arch = arm64 +header_arch = arm64 +defconfig = defconfig +flavours = generic generic-64k +build_image_generic = Image.gz +kernel_file_generic = arch/$(build_arch)/boot/Image.gz +build_image_generic-64k = Image.gz +kernel_file_generic-64k = arch/$(build_arch)/boot/Image.gz +install_file = vmlinuz +no_dumpfile = true +uefi_signed = true + +loader = grub +vdso = vdso_install + +do_extras_package = true +do_tools_usbip = true +do_tools_cpupower = true +do_tools_perf = true +do_tools_perf_jvmti = true +do_tools_bpftool = true + +do_dtbs = true +do_zfs = true --- linux-azure-5.8-5.8.0.orig/debian.master/rules.d/armhf.mk +++ linux-azure-5.8-5.8.0/debian.master/rules.d/armhf.mk @@ -0,0 +1,19 @@ +human_arch = ARM (hard float) +build_arch = arm +header_arch = arm +defconfig = defconfig +flavours = generic generic-lpae +build_image = zImage +kernel_file = arch/$(build_arch)/boot/zImage +install_file = vmlinuz +no_dumpfile = true + +loader = grub + +do_tools_usbip = true +do_tools_cpupower = true +do_tools_perf = true +do_tools_perf_jvmti = true +do_tools_bpftool = true + +do_dtbs = true --- linux-azure-5.8-5.8.0.orig/debian.master/rules.d/hooks.mk +++ linux-azure-5.8-5.8.0/debian.master/rules.d/hooks.mk @@ -0,0 +1 @@ +do_enforce_all = true --- linux-azure-5.8-5.8.0.orig/debian.master/rules.d/i386.mk +++ linux-azure-5.8-5.8.0/debian.master/rules.d/i386.mk @@ -0,0 +1,19 @@ +human_arch = 32 bit x86 +build_arch = i386 +header_arch = $(build_arch) +defconfig = defconfig +flavours = generic lowlatency +build_image = bzImage +kernel_file = arch/$(build_arch)/boot/bzImage +install_file = vmlinuz +loader = grub +vdso = vdso_install +no_dumpfile = true +do_flavour_image_package = false +do_tools = false +do_tools_common = false +do_extras_package = false +do_source_package = false +do_doc_package = false +do_flavour_header_package = false +do_common_headers_indep = false --- linux-azure-5.8-5.8.0.orig/debian.master/rules.d/ppc64el.mk +++ linux-azure-5.8-5.8.0/debian.master/rules.d/ppc64el.mk @@ -0,0 +1,21 @@ +human_arch = PowerPC 64el +build_arch = powerpc +header_arch = $(build_arch) +defconfig = pseries_le_defconfig +flavours = generic +build_image = vmlinux.strip +kernel_file = arch/powerpc/boot/vmlinux.strip +install_file = vmlinux +no_dumpfile = true +vdso = vdso_install +loader = grub +do_extras_package = true +opal_signed = true +do_tools_usbip = true +do_tools_cpupower = true +do_tools_perf = true +do_tools_perf_jvmti = true +do_tools_bpftool = true + +#do_flavour_image_package = false +do_zfs = true --- linux-azure-5.8-5.8.0.orig/debian.master/rules.d/riscv64.mk +++ linux-azure-5.8-5.8.0/debian.master/rules.d/riscv64.mk @@ -0,0 +1,21 @@ +human_arch = RISC-V +build_arch = riscv +header_arch = $(build_arch) +defconfig = defconfig +flavours = generic +build_image = Image +kernel_file = arch/$(build_arch)/boot/Image +install_file = vmlinuz + +loader = grub +vdso = vdso_install +no_dumpfile = true + +do_flavour_image_package = false +do_tools = false +do_tools_common = false +do_extras_package = false +do_source_package = false +do_doc_package = false +do_flavour_header_package = false +do_common_headers_indep = false --- linux-azure-5.8-5.8.0.orig/debian.master/rules.d/s390x.mk +++ linux-azure-5.8-5.8.0/debian.master/rules.d/s390x.mk @@ -0,0 +1,21 @@ +human_arch = System 390x +build_arch = s390 +header_arch = $(build_arch) +defconfig = defconfig +flavours = generic +build_image = bzImage +kernel_file = arch/$(build_arch)/boot/bzImage +install_file = vmlinuz + +vdso = vdso_install +no_dumpfile = true + +do_extras_package = true +sipl_signed = true +do_tools_usbip = true +do_tools_cpupower = true +do_tools_perf = true +do_tools_perf_jvmti = true +do_tools_bpftool = true + +do_zfs = true --- linux-azure-5.8-5.8.0.orig/debian.master/rules.d/x32.mk +++ linux-azure-5.8-5.8.0/debian.master/rules.d/x32.mk @@ -0,0 +1,14 @@ +human_arch = 64 bit x86 (32 bit userspace) +build_arch = x86 +header_arch = $(build_arch) +defconfig = defconfig +flavours = +build_image = bzImage +kernel_file = arch/$(build_arch)/boot/bzImage +install_file = vmlinuz +loader = grub +vdso = vdso_install +no_dumpfile = true +uefi_signed = true + +do_flavour_image_package = false --- linux-azure-5.8-5.8.0.orig/debian.master/tracking-bug +++ linux-azure-5.8-5.8.0/debian.master/tracking-bug @@ -0,0 +1 @@ +1923754 --- linux-azure-5.8-5.8.0.orig/debian.master/upstream-stable +++ linux-azure-5.8-5.8.0/debian.master/upstream-stable @@ -0,0 +1,6 @@ +# The following upstream stable releases have been ported: +[upstream-stable] + linux-5.4.y = v5.4.102 + linux-5.8.y = v5.8.18 + linux-5.9.y = v5.9.16 + linux-5.10.y = v5.10.20 --- linux-azure-5.8-5.8.0.orig/debian.master/variants +++ linux-azure-5.8-5.8.0/debian.master/variants @@ -0,0 +1,3 @@ +-- +-hwe-20.04 +-hwe-20.04-edge --- linux-azure-5.8-5.8.0.orig/debian/canonical-certs.pem +++ linux-azure-5.8-5.8.0/debian/canonical-certs.pem @@ -0,0 +1,246 @@ +Certificate: + Data: + Version: 3 (0x2) + Serial Number: + c7:7e:51:6a:1c:25:cd:40 + Signature Algorithm: sha512WithRSAEncryption + Issuer: CN = Canonical Ltd. Live Patch Signing + Validity + Not Before: Jul 18 23:41:27 2016 GMT + Not After : Jul 16 23:41:27 2026 GMT + Subject: CN = Canonical Ltd. Live Patch Signing + Subject Public Key Info: + Public Key Algorithm: rsaEncryption + RSA Public-Key: (4096 bit) + Modulus: + 00:bd:74:ee:72:b3:4a:ab:e6:31:e8:29:24:c2:bd: + 46:98:32:c0:39:ee:a3:fb:8a:ad:fe:ab:1a:5b:a3: + 2e:a1:80:db:79:61:9e:47:79:2c:75:57:a2:21:f0: + 93:f6:87:f2:9b:4b:9d:2f:b3:58:61:28:3c:41:70: + 13:16:a1:72:90:c9:d5:16:71:7c:e0:30:f9:28:5e: + 48:20:36:00:69:b7:59:9f:a3:ec:a8:eb:55:41:9f: + 38:1e:22:4a:57:20:f4:83:59:49:c5:00:93:d3:33: + 02:92:d1:fc:f0:84:3b:4a:5b:8f:b6:73:9a:89:fa: + 30:1e:e6:2a:68:f2:91:ef:59:57:3d:dc:1c:52:6f: + 5e:e6:9b:b5:b8:7c:98:c9:13:d1:39:68:01:67:91: + e0:d3:67:72:16:0a:5e:16:83:45:31:4f:b5:2b:b3: + f6:40:86:89:3a:84:6e:6f:16:61:bc:70:84:be:5a: + 13:36:7b:82:ea:07:19:fc:18:c1:16:c6:32:0b:7d: + 2c:6b:c4:21:b9:38:6b:31:dc:d9:0c:ad:56:40:68: + 7c:e3:c6:64:8e:bf:1c:e0:72:3e:6c:db:d2:73:79: + da:d7:c5:2f:5d:04:7d:b0:07:1e:95:dd:2a:47:5e: + bf:3e:3a:c8:66:f6:67:0f:d4:2a:f1:e2:71:59:d2: + 6c:7b:a0:37:ac:e6:97:80:30:13:97:48:d5:74:fc: + 38:68:e4:57:cb:99:69:5a:84:27:ac:98:51:e4:64: + bd:91:62:e8:58:27:06:2a:b9:0b:b8:08:e5:e5:b4: + 51:a7:a2:10:df:4e:07:6c:a0:3b:96:f2:6e:df:75: + 8c:97:1e:64:a0:9a:86:9b:98:26:f9:d8:b7:de:5b: + 21:b7:af:89:01:a3:f7:98:6b:da:19:ba:86:ef:ef: + f1:ce:bb:2f:89:ed:c0:b6:1b:e5:5b:f8:90:11:9a: + 52:93:e9:be:f7:35:b9:08:cb:ba:c3:ed:2f:73:af: + cc:96:07:55:b5:de:f6:03:f6:f1:89:f9:21:40:76: + c1:69:f2:61:cc:9a:94:df:9c:ec:6a:65:38:be:d1: + 4e:2a:87:c7:2f:3e:53:ae:8b:9f:54:a1:09:59:64: + 25:aa:a9:d8:44:a9:a8:a0:71:e1:32:aa:4c:32:fd: + 44:28:cc:9c:6f:8e:db:81:7e:6f:fa:00:56:c5:e5: + 03:46:63:fb:8e:71:8d:e3:13:91:9f:ac:60:3e:64: + f3:df:25:34:09:fa:2d:96:9f:16:05:ea:93:f5:e6: + 00:08:27:32:7b:3c:bd:ee:70:24:6c:3b:55:e9:db: + f4:10:2d:20:06:b4:ca:e9:29:65:55:ad:f6:52:54: + 5f:e5:a3 + Exponent: 65537 (0x10001) + X509v3 extensions: + X509v3 Basic Constraints: critical + CA:FALSE + X509v3 Key Usage: + Digital Signature + X509v3 Subject Key Identifier: + 14:DF:34:D1:A8:7C:F3:76:25:AB:EC:03:9E:F2:BF:52:12:49:B9:69 + X509v3 Authority Key Identifier: + keyid:14:DF:34:D1:A8:7C:F3:76:25:AB:EC:03:9E:F2:BF:52:12:49:B9:69 + + Signature Algorithm: sha512WithRSAEncryption + 30:e7:48:02:37:e9:28:cf:04:a2:4d:5c:fa:d8:4e:c9:76:c7: + 14:3f:bd:2c:51:3d:33:f0:1a:bc:49:f1:47:95:8f:69:d8:a9: + 54:14:44:6c:4d:9f:55:82:08:1e:c6:5b:d5:91:d9:bc:2e:b0: + af:d6:25:65:74:96:aa:36:de:ae:31:a8:11:f2:a4:2c:5a:e1: + 4f:73:f8:4a:c3:35:b0:76:96:71:f2:b5:7d:4b:75:ee:5d:bf: + 86:a5:ba:0b:a9:52:cb:ec:ab:e5:23:4b:f2:74:55:28:17:1e: + b3:ac:27:ad:45:13:6e:69:b3:5a:be:42:36:29:48:db:e7:5c: + 22:58:a0:90:82:2c:2a:21:2b:db:f4:64:b7:91:5d:1f:2c:48: + a4:1a:85:e3:86:a5:aa:19:cd:19:e8:a5:fb:a3:7b:94:77:48: + 25:a4:cf:a0:cf:71:82:5c:6f:71:22:7c:d6:97:a0:53:bb:ec: + 30:f6:cb:16:fb:7b:fd:16:94:7a:53:6e:bd:04:64:a2:01:10: + 9f:f0:5b:b5:a6:73:41:9d:5f:6f:45:73:0d:05:f7:30:6d:39: + 90:b6:7d:55:7d:4c:2f:ae:5f:38:56:2f:8b:df:f4:bf:12:06: + 93:6e:0d:02:23:bf:71:91:57:88:e8:bd:62:72:99:00:40:29: + 1e:c9:13:11:da:7e:8e:e1:d2:a5:0d:bf:f7:d6:ec:01:0d:89: + 41:cd:d5:dc:d2:f7:5f:33:0d:4c:2f:85:b7:85:b7:81:e4:17: + 29:f0:74:cf:0e:15:8c:1a:50:0b:08:63:1a:91:4f:e7:76:97: + f1:d4:3b:7e:72:d4:c5:45:58:0c:6a:e9:0d:f2:85:d8:91:1e: + 37:bd:78:e3:39:4d:2e:fd:85:31:c1:a6:3b:6a:cc:2c:53:72: + 1d:8e:7b:f0:e6:76:86:09:6f:1a:f3:e4:a1:e2:dd:76:5f:b0: + 8c:e2:2a:54:5d:c1:88:49:90:10:15:42:7d:05:24:53:8c:54: + ff:48:18:1a:36:e3:31:d3:54:32:78:0d:fe:f2:3d:aa:0d:37: + 15:84:b4:36:47:31:e8:85:6e:0b:58:38:ff:21:91:09:c9:a8: + 43:a3:ea:60:cb:7e:ed:f7:41:6f:4e:91:c1:fd:77:46:e7:d4: + e7:86:c0:1b:fd:50:6c:aa:be:00:b3:63:02:ff:4e:c7:a5:57: + 6e:29:64:e9:54:d5:30:63:38:5f:2d:5a:db:49:5f:14:14:22: + d2:81:1f:61:9e:ee:ee:16:66:d6:bc:bd:ac:1b:5c:fb:38:31: + 95:33:2e:84:6e:7a:de:ee:b9:fc:97:17:06:13:bf:70:1c:6e: + 76:ed:66:38:e2:70:08:00 +-----BEGIN CERTIFICATE----- +MIIFODCCAyCgAwIBAgIJAMd+UWocJc1AMA0GCSqGSIb3DQEBDQUAMCwxKjAoBgNV +BAMMIUNhbm9uaWNhbCBMdGQuIExpdmUgUGF0Y2ggU2lnbmluZzAeFw0xNjA3MTgy +MzQxMjdaFw0yNjA3MTYyMzQxMjdaMCwxKjAoBgNVBAMMIUNhbm9uaWNhbCBMdGQu +IExpdmUgUGF0Y2ggU2lnbmluZzCCAiIwDQYJKoZIhvcNAQEBBQADggIPADCCAgoC +ggIBAL107nKzSqvmMegpJMK9RpgywDnuo/uKrf6rGlujLqGA23lhnkd5LHVXoiHw +k/aH8ptLnS+zWGEoPEFwExahcpDJ1RZxfOAw+SheSCA2AGm3WZ+j7KjrVUGfOB4i +Slcg9INZScUAk9MzApLR/PCEO0pbj7Zzmon6MB7mKmjyke9ZVz3cHFJvXuabtbh8 +mMkT0TloAWeR4NNnchYKXhaDRTFPtSuz9kCGiTqEbm8WYbxwhL5aEzZ7guoHGfwY +wRbGMgt9LGvEIbk4azHc2QytVkBofOPGZI6/HOByPmzb0nN52tfFL10EfbAHHpXd +Kkdevz46yGb2Zw/UKvHicVnSbHugN6zml4AwE5dI1XT8OGjkV8uZaVqEJ6yYUeRk +vZFi6FgnBiq5C7gI5eW0UaeiEN9OB2ygO5bybt91jJceZKCahpuYJvnYt95bIbev +iQGj95hr2hm6hu/v8c67L4ntwLYb5Vv4kBGaUpPpvvc1uQjLusPtL3OvzJYHVbXe +9gP28Yn5IUB2wWnyYcyalN+c7GplOL7RTiqHxy8+U66Ln1ShCVlkJaqp2ESpqKBx +4TKqTDL9RCjMnG+O24F+b/oAVsXlA0Zj+45xjeMTkZ+sYD5k898lNAn6LZafFgXq +k/XmAAgnMns8ve5wJGw7Venb9BAtIAa0yukpZVWt9lJUX+WjAgMBAAGjXTBbMAwG +A1UdEwEB/wQCMAAwCwYDVR0PBAQDAgeAMB0GA1UdDgQWBBQU3zTRqHzzdiWr7AOe +8r9SEkm5aTAfBgNVHSMEGDAWgBQU3zTRqHzzdiWr7AOe8r9SEkm5aTANBgkqhkiG +9w0BAQ0FAAOCAgEAMOdIAjfpKM8Eok1c+thOyXbHFD+9LFE9M/AavEnxR5WPadip +VBREbE2fVYIIHsZb1ZHZvC6wr9YlZXSWqjberjGoEfKkLFrhT3P4SsM1sHaWcfK1 +fUt17l2/hqW6C6lSy+yr5SNL8nRVKBces6wnrUUTbmmzWr5CNilI2+dcIligkIIs +KiEr2/Rkt5FdHyxIpBqF44alqhnNGeil+6N7lHdIJaTPoM9xglxvcSJ81pegU7vs +MPbLFvt7/RaUelNuvQRkogEQn/BbtaZzQZ1fb0VzDQX3MG05kLZ9VX1ML65fOFYv +i9/0vxIGk24NAiO/cZFXiOi9YnKZAEApHskTEdp+juHSpQ2/99bsAQ2JQc3V3NL3 +XzMNTC+Ft4W3geQXKfB0zw4VjBpQCwhjGpFP53aX8dQ7fnLUxUVYDGrpDfKF2JEe +N7144zlNLv2FMcGmO2rMLFNyHY578OZ2hglvGvPkoeLddl+wjOIqVF3BiEmQEBVC +fQUkU4xU/0gYGjbjMdNUMngN/vI9qg03FYS0Nkcx6IVuC1g4/yGRCcmoQ6PqYMt+ +7fdBb06Rwf13RufU54bAG/1QbKq+ALNjAv9Ox6VXbilk6VTVMGM4Xy1a20lfFBQi +0oEfYZ7u7hZm1ry9rBtc+zgxlTMuhG563u65/JcXBhO/cBxudu1mOOJwCAA= +-----END CERTIFICATE----- +Certificate: + Data: + Version: 3 (0x2) + Serial Number: + e9:df:13:0f:92:92:a9:b7 + Signature Algorithm: sha512WithRSAEncryption + Issuer: C = GB, ST = Isle of Man, L = Douglas, O = Canonical Ltd., CN = Canonical Ltd. Kernel Module Signing + Validity + Not Before: May 31 16:06:09 2016 GMT + Not After : May 29 16:06:09 2026 GMT + Subject: C = GB, ST = Isle of Man, L = Douglas, O = Canonical Ltd., CN = Canonical Ltd. Kernel Module Signing + Subject Public Key Info: + Public Key Algorithm: rsaEncryption + RSA Public-Key: (4096 bit) + Modulus: + 00:b3:b0:4f:c6:0a:77:8b:f9:d1:53:33:34:d2:80: + b5:63:6f:e1:f6:a2:83:99:d5:b6:b1:e4:99:91:fa: + 6c:19:c6:d0:91:2a:b9:7d:b5:98:a6:0d:28:01:b8: + 7c:8e:aa:38:ec:51:37:33:96:f0:b0:9b:8d:86:5f: + 67:23:69:2f:d7:c2:f3:fb:c5:d7:f9:04:ff:f2:e5: + 61:68:b7:29:b9:c6:8e:4b:4d:2d:8f:92:0c:00:b3: + a3:d2:5a:08:64:cd:f2:09:0b:a5:0e:e6:64:75:d5: + 41:f4:4d:49:3a:0d:dc:b9:27:8e:c4:d6:b1:df:8f: + 6c:f0:e4:f7:31:cb:a9:04:a1:f9:a7:aa:15:da:59: + 03:4d:46:14:d0:dd:bf:e0:f5:9e:f0:71:0c:70:78: + 2b:08:fb:e0:b6:68:a4:74:12:9d:f7:f2:64:88:17: + 2a:8a:ed:1a:91:b5:6c:13:bd:4c:10:0a:0b:72:0b: + 90:db:7d:f3:78:44:4c:d2:a5:41:f7:1c:77:7d:5a: + 8a:54:bc:8f:fe:b7:ee:e1:bc:59:37:c4:d4:e8:14: + d0:5b:42:9b:04:00:8e:6d:83:8a:25:21:5b:08:c4: + 7b:b2:d9:99:52:c9:5e:59:6d:c4:aa:52:59:e2:e4: + 2f:7e:7e:ac:05:01:99:bf:13:72:b7:45:c5:17:da: + 8a:d5:3e:71:73:2e:d8:aa:e6:eb:5a:d0:9a:c4:93: + f3:be:eb:d2:47:25:34:16:29:fa:dd:9a:2f:b1:20: + e5:41:4e:ed:ea:51:7c:23:80:ba:3d:b5:3a:0b:8c: + 9c:85:48:6c:3c:8b:29:2f:2f:12:c7:52:34:02:ea: + 0f:ac:53:23:3c:f8:3e:40:1b:30:63:e9:2d:e6:f6: + 58:cc:51:f9:eb:08:4a:b4:c7:16:80:d1:8b:c2:64: + 6a:71:a9:70:31:a4:a7:3a:c0:93:99:1b:0e:42:c1: + 00:6d:43:27:99:6c:e5:fd:23:16:c1:8e:b5:66:17: + 2b:4c:53:5a:6d:1e:96:16:13:6a:c6:d4:85:5b:74: + 2e:ce:7c:45:2f:ad:cb:75:9e:5e:91:bd:9a:6a:86: + 1a:06:bd:39:be:a3:50:56:ea:e1:f6:e3:95:69:d7: + 31:e4:66:f7:36:b5:51:c2:22:b4:9c:74:9c:44:0b: + 0e:16:5f:53:f0:23:c6:b9:40:bd:d6:b8:7d:1b:f6: + 73:f6:27:e7:c0:e3:65:a0:58:ab:5c:59:b7:80:8c: + 8c:04:b4:a9:ae:a0:51:40:10:3b:63:59:49:87:d1: + 9b:df:a3:8c:c4:2e:eb:70:c1:0a:18:1f:cb:22:c2: + f2:4a:65:0d:e5:81:74:d8:ce:72:c6:35:be:ba:63: + 72:c4:f9 + Exponent: 65537 (0x10001) + X509v3 extensions: + X509v3 Basic Constraints: critical + CA:FALSE + X509v3 Key Usage: + Digital Signature + X509v3 Subject Key Identifier: + 88:F7:52:E5:60:A1:E0:73:7E:31:16:3A:46:6A:D7:B7:0A:85:0C:19 + X509v3 Authority Key Identifier: + keyid:88:F7:52:E5:60:A1:E0:73:7E:31:16:3A:46:6A:D7:B7:0A:85:0C:19 + + Signature Algorithm: sha512WithRSAEncryption + 04:85:16:27:58:ba:71:28:57:86:7b:c2:83:db:e5:72:6f:1e: + b2:1c:63:b0:db:ad:c0:42:96:c0:4f:65:f6:35:4d:c0:07:0d: + 46:be:d3:1e:ec:f1:22:18:2a:18:5d:bb:69:a6:a6:d4:0d:c3: + 57:03:b9:e7:45:49:28:ca:6d:98:17:68:97:cb:7b:36:81:0a: + 37:9e:34:79:f3:e1:0e:5b:77:43:bb:5a:a5:45:b7:16:50:86: + fd:12:a4:96:0f:15:19:09:1c:e1:fa:80:a5:80:09:be:bb:c8: + 26:0b:3e:de:03:d2:c2:18:a4:8d:0d:de:c5:32:82:0b:fb:75: + 55:66:1a:2a:bb:e4:bd:25:91:20:15:d4:be:b8:3f:53:e3:fb: + a8:c3:55:e3:d5:e7:82:18:95:df:39:09:a7:fc:89:6e:b4:1c: + aa:2d:e8:67:c2:0d:34:34:3e:f9:fa:0b:ce:81:92:11:ae:12: + 0a:fe:35:63:ce:46:29:c4:2b:4f:cb:4e:05:0a:a1:11:e2:35: + f6:5a:5d:b5:e8:d2:6f:4c:fc:3d:24:a6:03:4b:dd:98:6b:f2: + 71:58:16:1d:a5:25:ef:d9:06:7c:e8:db:7b:88:6a:89:5c:59: + 01:92:64:db:44:08:63:6c:7c:32:d6:55:98:63:09:26:61:67: + 0a:fe:5d:ee:fd:23:59:b3:4d:91:c1:4d:41:8b:cd:20:58:fa: + 2d:45:e5:bd:1d:69:5c:03:a0:49:a6:97:54:13:b6:c9:e0:f8: + 56:83:a1:2a:c3:f4:6c:fd:ab:20:ca:3d:9c:95:c0:cf:04:bb: + 46:39:cf:34:81:65:45:27:64:01:7d:62:b3:b8:72:ea:10:d5: + 0f:53:7d:39:88:25:09:6f:8c:bc:e0:49:bb:39:e2:0e:8d:cf: + 56:4d:c1:82:6d:87:d2:e7:fc:c0:9f:a7:65:60:d2:6c:65:18: + 59:38:6e:d0:9c:d7:c3:81:9a:9a:29:8f:83:84:c3:b5:44:ff: + 28:ac:13:17:64:f2:26:13:d9:55:06:b7:69:68:7c:bf:ec:d1: + 8c:ef:b7:da:76:e1:07:73:c6:31:62:31:cb:b6:e1:e7:7f:0c: + c3:f7:4c:52:be:25:36:8e:a1:bb:60:02:c3:cb:3e:6f:29:fc: + 7f:6a:fa:f8:ec:0a:df:49:e2:57:0e:bc:bd:93:c3:1b:d5:36: + 8a:ff:d8:1b:17:c7:1f:cb:69:00:d2:54:9e:ad:61:89:92:95: + 11:f8:ea:17:83:9f:9b:09:7d:b8:94:a4:ea:f5:ae:ea:dc:dd: + 62:b9:9e:68:9c:18:ec:19:c4:13:08:c8:b1:62:ab:8e:84:69: + 11:3c:da:ea:0d:b7:22:bd +-----BEGIN CERTIFICATE----- +MIIF2jCCA8KgAwIBAgIJAOnfEw+Skqm3MA0GCSqGSIb3DQEBDQUAMH0xCzAJBgNV +BAYTAkdCMRQwEgYDVQQIDAtJc2xlIG9mIE1hbjEQMA4GA1UEBwwHRG91Z2xhczEX +MBUGA1UECgwOQ2Fub25pY2FsIEx0ZC4xLTArBgNVBAMMJENhbm9uaWNhbCBMdGQu +IEtlcm5lbCBNb2R1bGUgU2lnbmluZzAeFw0xNjA1MzExNjA2MDlaFw0yNjA1Mjkx +NjA2MDlaMH0xCzAJBgNVBAYTAkdCMRQwEgYDVQQIDAtJc2xlIG9mIE1hbjEQMA4G +A1UEBwwHRG91Z2xhczEXMBUGA1UECgwOQ2Fub25pY2FsIEx0ZC4xLTArBgNVBAMM +JENhbm9uaWNhbCBMdGQuIEtlcm5lbCBNb2R1bGUgU2lnbmluZzCCAiIwDQYJKoZI +hvcNAQEBBQADggIPADCCAgoCggIBALOwT8YKd4v50VMzNNKAtWNv4faig5nVtrHk +mZH6bBnG0JEquX21mKYNKAG4fI6qOOxRNzOW8LCbjYZfZyNpL9fC8/vF1/kE//Ll +YWi3KbnGjktNLY+SDACzo9JaCGTN8gkLpQ7mZHXVQfRNSToN3LknjsTWsd+PbPDk +9zHLqQSh+aeqFdpZA01GFNDdv+D1nvBxDHB4Kwj74LZopHQSnffyZIgXKortGpG1 +bBO9TBAKC3ILkNt983hETNKlQfccd31ailS8j/637uG8WTfE1OgU0FtCmwQAjm2D +iiUhWwjEe7LZmVLJXlltxKpSWeLkL35+rAUBmb8TcrdFxRfaitU+cXMu2Krm61rQ +msST877r0kclNBYp+t2aL7Eg5UFO7epRfCOAuj21OguMnIVIbDyLKS8vEsdSNALq +D6xTIzz4PkAbMGPpLeb2WMxR+esISrTHFoDRi8JkanGpcDGkpzrAk5kbDkLBAG1D +J5ls5f0jFsGOtWYXK0xTWm0elhYTasbUhVt0Ls58RS+ty3WeXpG9mmqGGga9Ob6j +UFbq4fbjlWnXMeRm9za1UcIitJx0nEQLDhZfU/AjxrlAvda4fRv2c/Yn58DjZaBY +q1xZt4CMjAS0qa6gUUAQO2NZSYfRm9+jjMQu63DBChgfyyLC8kplDeWBdNjOcsY1 +vrpjcsT5AgMBAAGjXTBbMAwGA1UdEwEB/wQCMAAwCwYDVR0PBAQDAgeAMB0GA1Ud +DgQWBBSI91LlYKHgc34xFjpGate3CoUMGTAfBgNVHSMEGDAWgBSI91LlYKHgc34x +FjpGate3CoUMGTANBgkqhkiG9w0BAQ0FAAOCAgEABIUWJ1i6cShXhnvCg9vlcm8e +shxjsNutwEKWwE9l9jVNwAcNRr7THuzxIhgqGF27aaam1A3DVwO550VJKMptmBdo +l8t7NoEKN540efPhDlt3Q7tapUW3FlCG/RKklg8VGQkc4fqApYAJvrvIJgs+3gPS +whikjQ3exTKCC/t1VWYaKrvkvSWRIBXUvrg/U+P7qMNV49XnghiV3zkJp/yJbrQc +qi3oZ8INNDQ++foLzoGSEa4SCv41Y85GKcQrT8tOBQqhEeI19lpdtejSb0z8PSSm +A0vdmGvycVgWHaUl79kGfOjbe4hqiVxZAZJk20QIY2x8MtZVmGMJJmFnCv5d7v0j +WbNNkcFNQYvNIFj6LUXlvR1pXAOgSaaXVBO2yeD4VoOhKsP0bP2rIMo9nJXAzwS7 +RjnPNIFlRSdkAX1is7hy6hDVD1N9OYglCW+MvOBJuzniDo3PVk3Bgm2H0uf8wJ+n +ZWDSbGUYWThu0JzXw4GamimPg4TDtUT/KKwTF2TyJhPZVQa3aWh8v+zRjO+32nbh +B3PGMWIxy7bh538Mw/dMUr4lNo6hu2ACw8s+byn8f2r6+OwK30niVw68vZPDG9U2 +iv/YGxfHH8tpANJUnq1hiZKVEfjqF4Ofmwl9uJSk6vWu6tzdYrmeaJwY7BnEEwjI +sWKrjoRpETza6g23Ir0= +-----END CERTIFICATE----- --- linux-azure-5.8-5.8.0.orig/debian/certs/canonical-livepatch-all.pem +++ linux-azure-5.8-5.8.0/debian/certs/canonical-livepatch-all.pem @@ -0,0 +1,121 @@ +Certificate: + Data: + Version: 3 (0x2) + Serial Number: + c7:7e:51:6a:1c:25:cd:40 + Signature Algorithm: sha512WithRSAEncryption + Issuer: CN = Canonical Ltd. Live Patch Signing + Validity + Not Before: Jul 18 23:41:27 2016 GMT + Not After : Jul 16 23:41:27 2026 GMT + Subject: CN = Canonical Ltd. Live Patch Signing + Subject Public Key Info: + Public Key Algorithm: rsaEncryption + RSA Public-Key: (4096 bit) + Modulus: + 00:bd:74:ee:72:b3:4a:ab:e6:31:e8:29:24:c2:bd: + 46:98:32:c0:39:ee:a3:fb:8a:ad:fe:ab:1a:5b:a3: + 2e:a1:80:db:79:61:9e:47:79:2c:75:57:a2:21:f0: + 93:f6:87:f2:9b:4b:9d:2f:b3:58:61:28:3c:41:70: + 13:16:a1:72:90:c9:d5:16:71:7c:e0:30:f9:28:5e: + 48:20:36:00:69:b7:59:9f:a3:ec:a8:eb:55:41:9f: + 38:1e:22:4a:57:20:f4:83:59:49:c5:00:93:d3:33: + 02:92:d1:fc:f0:84:3b:4a:5b:8f:b6:73:9a:89:fa: + 30:1e:e6:2a:68:f2:91:ef:59:57:3d:dc:1c:52:6f: + 5e:e6:9b:b5:b8:7c:98:c9:13:d1:39:68:01:67:91: + e0:d3:67:72:16:0a:5e:16:83:45:31:4f:b5:2b:b3: + f6:40:86:89:3a:84:6e:6f:16:61:bc:70:84:be:5a: + 13:36:7b:82:ea:07:19:fc:18:c1:16:c6:32:0b:7d: + 2c:6b:c4:21:b9:38:6b:31:dc:d9:0c:ad:56:40:68: + 7c:e3:c6:64:8e:bf:1c:e0:72:3e:6c:db:d2:73:79: + da:d7:c5:2f:5d:04:7d:b0:07:1e:95:dd:2a:47:5e: + bf:3e:3a:c8:66:f6:67:0f:d4:2a:f1:e2:71:59:d2: + 6c:7b:a0:37:ac:e6:97:80:30:13:97:48:d5:74:fc: + 38:68:e4:57:cb:99:69:5a:84:27:ac:98:51:e4:64: + bd:91:62:e8:58:27:06:2a:b9:0b:b8:08:e5:e5:b4: + 51:a7:a2:10:df:4e:07:6c:a0:3b:96:f2:6e:df:75: + 8c:97:1e:64:a0:9a:86:9b:98:26:f9:d8:b7:de:5b: + 21:b7:af:89:01:a3:f7:98:6b:da:19:ba:86:ef:ef: + f1:ce:bb:2f:89:ed:c0:b6:1b:e5:5b:f8:90:11:9a: + 52:93:e9:be:f7:35:b9:08:cb:ba:c3:ed:2f:73:af: + cc:96:07:55:b5:de:f6:03:f6:f1:89:f9:21:40:76: + c1:69:f2:61:cc:9a:94:df:9c:ec:6a:65:38:be:d1: + 4e:2a:87:c7:2f:3e:53:ae:8b:9f:54:a1:09:59:64: + 25:aa:a9:d8:44:a9:a8:a0:71:e1:32:aa:4c:32:fd: + 44:28:cc:9c:6f:8e:db:81:7e:6f:fa:00:56:c5:e5: + 03:46:63:fb:8e:71:8d:e3:13:91:9f:ac:60:3e:64: + f3:df:25:34:09:fa:2d:96:9f:16:05:ea:93:f5:e6: + 00:08:27:32:7b:3c:bd:ee:70:24:6c:3b:55:e9:db: + f4:10:2d:20:06:b4:ca:e9:29:65:55:ad:f6:52:54: + 5f:e5:a3 + Exponent: 65537 (0x10001) + X509v3 extensions: + X509v3 Basic Constraints: critical + CA:FALSE + X509v3 Key Usage: + Digital Signature + X509v3 Subject Key Identifier: + 14:DF:34:D1:A8:7C:F3:76:25:AB:EC:03:9E:F2:BF:52:12:49:B9:69 + X509v3 Authority Key Identifier: + keyid:14:DF:34:D1:A8:7C:F3:76:25:AB:EC:03:9E:F2:BF:52:12:49:B9:69 + + Signature Algorithm: sha512WithRSAEncryption + 30:e7:48:02:37:e9:28:cf:04:a2:4d:5c:fa:d8:4e:c9:76:c7: + 14:3f:bd:2c:51:3d:33:f0:1a:bc:49:f1:47:95:8f:69:d8:a9: + 54:14:44:6c:4d:9f:55:82:08:1e:c6:5b:d5:91:d9:bc:2e:b0: + af:d6:25:65:74:96:aa:36:de:ae:31:a8:11:f2:a4:2c:5a:e1: + 4f:73:f8:4a:c3:35:b0:76:96:71:f2:b5:7d:4b:75:ee:5d:bf: + 86:a5:ba:0b:a9:52:cb:ec:ab:e5:23:4b:f2:74:55:28:17:1e: + b3:ac:27:ad:45:13:6e:69:b3:5a:be:42:36:29:48:db:e7:5c: + 22:58:a0:90:82:2c:2a:21:2b:db:f4:64:b7:91:5d:1f:2c:48: + a4:1a:85:e3:86:a5:aa:19:cd:19:e8:a5:fb:a3:7b:94:77:48: + 25:a4:cf:a0:cf:71:82:5c:6f:71:22:7c:d6:97:a0:53:bb:ec: + 30:f6:cb:16:fb:7b:fd:16:94:7a:53:6e:bd:04:64:a2:01:10: + 9f:f0:5b:b5:a6:73:41:9d:5f:6f:45:73:0d:05:f7:30:6d:39: + 90:b6:7d:55:7d:4c:2f:ae:5f:38:56:2f:8b:df:f4:bf:12:06: + 93:6e:0d:02:23:bf:71:91:57:88:e8:bd:62:72:99:00:40:29: + 1e:c9:13:11:da:7e:8e:e1:d2:a5:0d:bf:f7:d6:ec:01:0d:89: + 41:cd:d5:dc:d2:f7:5f:33:0d:4c:2f:85:b7:85:b7:81:e4:17: + 29:f0:74:cf:0e:15:8c:1a:50:0b:08:63:1a:91:4f:e7:76:97: + f1:d4:3b:7e:72:d4:c5:45:58:0c:6a:e9:0d:f2:85:d8:91:1e: + 37:bd:78:e3:39:4d:2e:fd:85:31:c1:a6:3b:6a:cc:2c:53:72: + 1d:8e:7b:f0:e6:76:86:09:6f:1a:f3:e4:a1:e2:dd:76:5f:b0: + 8c:e2:2a:54:5d:c1:88:49:90:10:15:42:7d:05:24:53:8c:54: + ff:48:18:1a:36:e3:31:d3:54:32:78:0d:fe:f2:3d:aa:0d:37: + 15:84:b4:36:47:31:e8:85:6e:0b:58:38:ff:21:91:09:c9:a8: + 43:a3:ea:60:cb:7e:ed:f7:41:6f:4e:91:c1:fd:77:46:e7:d4: + e7:86:c0:1b:fd:50:6c:aa:be:00:b3:63:02:ff:4e:c7:a5:57: + 6e:29:64:e9:54:d5:30:63:38:5f:2d:5a:db:49:5f:14:14:22: + d2:81:1f:61:9e:ee:ee:16:66:d6:bc:bd:ac:1b:5c:fb:38:31: + 95:33:2e:84:6e:7a:de:ee:b9:fc:97:17:06:13:bf:70:1c:6e: + 76:ed:66:38:e2:70:08:00 +-----BEGIN CERTIFICATE----- +MIIFODCCAyCgAwIBAgIJAMd+UWocJc1AMA0GCSqGSIb3DQEBDQUAMCwxKjAoBgNV +BAMMIUNhbm9uaWNhbCBMdGQuIExpdmUgUGF0Y2ggU2lnbmluZzAeFw0xNjA3MTgy +MzQxMjdaFw0yNjA3MTYyMzQxMjdaMCwxKjAoBgNVBAMMIUNhbm9uaWNhbCBMdGQu +IExpdmUgUGF0Y2ggU2lnbmluZzCCAiIwDQYJKoZIhvcNAQEBBQADggIPADCCAgoC +ggIBAL107nKzSqvmMegpJMK9RpgywDnuo/uKrf6rGlujLqGA23lhnkd5LHVXoiHw +k/aH8ptLnS+zWGEoPEFwExahcpDJ1RZxfOAw+SheSCA2AGm3WZ+j7KjrVUGfOB4i +Slcg9INZScUAk9MzApLR/PCEO0pbj7Zzmon6MB7mKmjyke9ZVz3cHFJvXuabtbh8 +mMkT0TloAWeR4NNnchYKXhaDRTFPtSuz9kCGiTqEbm8WYbxwhL5aEzZ7guoHGfwY +wRbGMgt9LGvEIbk4azHc2QytVkBofOPGZI6/HOByPmzb0nN52tfFL10EfbAHHpXd +Kkdevz46yGb2Zw/UKvHicVnSbHugN6zml4AwE5dI1XT8OGjkV8uZaVqEJ6yYUeRk +vZFi6FgnBiq5C7gI5eW0UaeiEN9OB2ygO5bybt91jJceZKCahpuYJvnYt95bIbev +iQGj95hr2hm6hu/v8c67L4ntwLYb5Vv4kBGaUpPpvvc1uQjLusPtL3OvzJYHVbXe +9gP28Yn5IUB2wWnyYcyalN+c7GplOL7RTiqHxy8+U66Ln1ShCVlkJaqp2ESpqKBx +4TKqTDL9RCjMnG+O24F+b/oAVsXlA0Zj+45xjeMTkZ+sYD5k898lNAn6LZafFgXq +k/XmAAgnMns8ve5wJGw7Venb9BAtIAa0yukpZVWt9lJUX+WjAgMBAAGjXTBbMAwG +A1UdEwEB/wQCMAAwCwYDVR0PBAQDAgeAMB0GA1UdDgQWBBQU3zTRqHzzdiWr7AOe +8r9SEkm5aTAfBgNVHSMEGDAWgBQU3zTRqHzzdiWr7AOe8r9SEkm5aTANBgkqhkiG +9w0BAQ0FAAOCAgEAMOdIAjfpKM8Eok1c+thOyXbHFD+9LFE9M/AavEnxR5WPadip +VBREbE2fVYIIHsZb1ZHZvC6wr9YlZXSWqjberjGoEfKkLFrhT3P4SsM1sHaWcfK1 +fUt17l2/hqW6C6lSy+yr5SNL8nRVKBces6wnrUUTbmmzWr5CNilI2+dcIligkIIs +KiEr2/Rkt5FdHyxIpBqF44alqhnNGeil+6N7lHdIJaTPoM9xglxvcSJ81pegU7vs +MPbLFvt7/RaUelNuvQRkogEQn/BbtaZzQZ1fb0VzDQX3MG05kLZ9VX1ML65fOFYv +i9/0vxIGk24NAiO/cZFXiOi9YnKZAEApHskTEdp+juHSpQ2/99bsAQ2JQc3V3NL3 +XzMNTC+Ft4W3geQXKfB0zw4VjBpQCwhjGpFP53aX8dQ7fnLUxUVYDGrpDfKF2JEe +N7144zlNLv2FMcGmO2rMLFNyHY578OZ2hglvGvPkoeLddl+wjOIqVF3BiEmQEBVC +fQUkU4xU/0gYGjbjMdNUMngN/vI9qg03FYS0Nkcx6IVuC1g4/yGRCcmoQ6PqYMt+ +7fdBb06Rwf13RufU54bAG/1QbKq+ALNjAv9Ox6VXbilk6VTVMGM4Xy1a20lfFBQi +0oEfYZ7u7hZm1ry9rBtc+zgxlTMuhG563u65/JcXBhO/cBxudu1mOOJwCAA= +-----END CERTIFICATE----- --- linux-azure-5.8-5.8.0.orig/debian/certs/ubuntu-drivers-all.pem +++ linux-azure-5.8-5.8.0/debian/certs/ubuntu-drivers-all.pem @@ -0,0 +1,125 @@ +Certificate: + Data: + Version: 3 (0x2) + Serial Number: + e9:df:13:0f:92:92:a9:b7 + Signature Algorithm: sha512WithRSAEncryption + Issuer: C = GB, ST = Isle of Man, L = Douglas, O = Canonical Ltd., CN = Canonical Ltd. Kernel Module Signing + Validity + Not Before: May 31 16:06:09 2016 GMT + Not After : May 29 16:06:09 2026 GMT + Subject: C = GB, ST = Isle of Man, L = Douglas, O = Canonical Ltd., CN = Canonical Ltd. Kernel Module Signing + Subject Public Key Info: + Public Key Algorithm: rsaEncryption + RSA Public-Key: (4096 bit) + Modulus: + 00:b3:b0:4f:c6:0a:77:8b:f9:d1:53:33:34:d2:80: + b5:63:6f:e1:f6:a2:83:99:d5:b6:b1:e4:99:91:fa: + 6c:19:c6:d0:91:2a:b9:7d:b5:98:a6:0d:28:01:b8: + 7c:8e:aa:38:ec:51:37:33:96:f0:b0:9b:8d:86:5f: + 67:23:69:2f:d7:c2:f3:fb:c5:d7:f9:04:ff:f2:e5: + 61:68:b7:29:b9:c6:8e:4b:4d:2d:8f:92:0c:00:b3: + a3:d2:5a:08:64:cd:f2:09:0b:a5:0e:e6:64:75:d5: + 41:f4:4d:49:3a:0d:dc:b9:27:8e:c4:d6:b1:df:8f: + 6c:f0:e4:f7:31:cb:a9:04:a1:f9:a7:aa:15:da:59: + 03:4d:46:14:d0:dd:bf:e0:f5:9e:f0:71:0c:70:78: + 2b:08:fb:e0:b6:68:a4:74:12:9d:f7:f2:64:88:17: + 2a:8a:ed:1a:91:b5:6c:13:bd:4c:10:0a:0b:72:0b: + 90:db:7d:f3:78:44:4c:d2:a5:41:f7:1c:77:7d:5a: + 8a:54:bc:8f:fe:b7:ee:e1:bc:59:37:c4:d4:e8:14: + d0:5b:42:9b:04:00:8e:6d:83:8a:25:21:5b:08:c4: + 7b:b2:d9:99:52:c9:5e:59:6d:c4:aa:52:59:e2:e4: + 2f:7e:7e:ac:05:01:99:bf:13:72:b7:45:c5:17:da: + 8a:d5:3e:71:73:2e:d8:aa:e6:eb:5a:d0:9a:c4:93: + f3:be:eb:d2:47:25:34:16:29:fa:dd:9a:2f:b1:20: + e5:41:4e:ed:ea:51:7c:23:80:ba:3d:b5:3a:0b:8c: + 9c:85:48:6c:3c:8b:29:2f:2f:12:c7:52:34:02:ea: + 0f:ac:53:23:3c:f8:3e:40:1b:30:63:e9:2d:e6:f6: + 58:cc:51:f9:eb:08:4a:b4:c7:16:80:d1:8b:c2:64: + 6a:71:a9:70:31:a4:a7:3a:c0:93:99:1b:0e:42:c1: + 00:6d:43:27:99:6c:e5:fd:23:16:c1:8e:b5:66:17: + 2b:4c:53:5a:6d:1e:96:16:13:6a:c6:d4:85:5b:74: + 2e:ce:7c:45:2f:ad:cb:75:9e:5e:91:bd:9a:6a:86: + 1a:06:bd:39:be:a3:50:56:ea:e1:f6:e3:95:69:d7: + 31:e4:66:f7:36:b5:51:c2:22:b4:9c:74:9c:44:0b: + 0e:16:5f:53:f0:23:c6:b9:40:bd:d6:b8:7d:1b:f6: + 73:f6:27:e7:c0:e3:65:a0:58:ab:5c:59:b7:80:8c: + 8c:04:b4:a9:ae:a0:51:40:10:3b:63:59:49:87:d1: + 9b:df:a3:8c:c4:2e:eb:70:c1:0a:18:1f:cb:22:c2: + f2:4a:65:0d:e5:81:74:d8:ce:72:c6:35:be:ba:63: + 72:c4:f9 + Exponent: 65537 (0x10001) + X509v3 extensions: + X509v3 Basic Constraints: critical + CA:FALSE + X509v3 Key Usage: + Digital Signature + X509v3 Subject Key Identifier: + 88:F7:52:E5:60:A1:E0:73:7E:31:16:3A:46:6A:D7:B7:0A:85:0C:19 + X509v3 Authority Key Identifier: + keyid:88:F7:52:E5:60:A1:E0:73:7E:31:16:3A:46:6A:D7:B7:0A:85:0C:19 + + Signature Algorithm: sha512WithRSAEncryption + 04:85:16:27:58:ba:71:28:57:86:7b:c2:83:db:e5:72:6f:1e: + b2:1c:63:b0:db:ad:c0:42:96:c0:4f:65:f6:35:4d:c0:07:0d: + 46:be:d3:1e:ec:f1:22:18:2a:18:5d:bb:69:a6:a6:d4:0d:c3: + 57:03:b9:e7:45:49:28:ca:6d:98:17:68:97:cb:7b:36:81:0a: + 37:9e:34:79:f3:e1:0e:5b:77:43:bb:5a:a5:45:b7:16:50:86: + fd:12:a4:96:0f:15:19:09:1c:e1:fa:80:a5:80:09:be:bb:c8: + 26:0b:3e:de:03:d2:c2:18:a4:8d:0d:de:c5:32:82:0b:fb:75: + 55:66:1a:2a:bb:e4:bd:25:91:20:15:d4:be:b8:3f:53:e3:fb: + a8:c3:55:e3:d5:e7:82:18:95:df:39:09:a7:fc:89:6e:b4:1c: + aa:2d:e8:67:c2:0d:34:34:3e:f9:fa:0b:ce:81:92:11:ae:12: + 0a:fe:35:63:ce:46:29:c4:2b:4f:cb:4e:05:0a:a1:11:e2:35: + f6:5a:5d:b5:e8:d2:6f:4c:fc:3d:24:a6:03:4b:dd:98:6b:f2: + 71:58:16:1d:a5:25:ef:d9:06:7c:e8:db:7b:88:6a:89:5c:59: + 01:92:64:db:44:08:63:6c:7c:32:d6:55:98:63:09:26:61:67: + 0a:fe:5d:ee:fd:23:59:b3:4d:91:c1:4d:41:8b:cd:20:58:fa: + 2d:45:e5:bd:1d:69:5c:03:a0:49:a6:97:54:13:b6:c9:e0:f8: + 56:83:a1:2a:c3:f4:6c:fd:ab:20:ca:3d:9c:95:c0:cf:04:bb: + 46:39:cf:34:81:65:45:27:64:01:7d:62:b3:b8:72:ea:10:d5: + 0f:53:7d:39:88:25:09:6f:8c:bc:e0:49:bb:39:e2:0e:8d:cf: + 56:4d:c1:82:6d:87:d2:e7:fc:c0:9f:a7:65:60:d2:6c:65:18: + 59:38:6e:d0:9c:d7:c3:81:9a:9a:29:8f:83:84:c3:b5:44:ff: + 28:ac:13:17:64:f2:26:13:d9:55:06:b7:69:68:7c:bf:ec:d1: + 8c:ef:b7:da:76:e1:07:73:c6:31:62:31:cb:b6:e1:e7:7f:0c: + c3:f7:4c:52:be:25:36:8e:a1:bb:60:02:c3:cb:3e:6f:29:fc: + 7f:6a:fa:f8:ec:0a:df:49:e2:57:0e:bc:bd:93:c3:1b:d5:36: + 8a:ff:d8:1b:17:c7:1f:cb:69:00:d2:54:9e:ad:61:89:92:95: + 11:f8:ea:17:83:9f:9b:09:7d:b8:94:a4:ea:f5:ae:ea:dc:dd: + 62:b9:9e:68:9c:18:ec:19:c4:13:08:c8:b1:62:ab:8e:84:69: + 11:3c:da:ea:0d:b7:22:bd +-----BEGIN CERTIFICATE----- +MIIF2jCCA8KgAwIBAgIJAOnfEw+Skqm3MA0GCSqGSIb3DQEBDQUAMH0xCzAJBgNV +BAYTAkdCMRQwEgYDVQQIDAtJc2xlIG9mIE1hbjEQMA4GA1UEBwwHRG91Z2xhczEX +MBUGA1UECgwOQ2Fub25pY2FsIEx0ZC4xLTArBgNVBAMMJENhbm9uaWNhbCBMdGQu +IEtlcm5lbCBNb2R1bGUgU2lnbmluZzAeFw0xNjA1MzExNjA2MDlaFw0yNjA1Mjkx +NjA2MDlaMH0xCzAJBgNVBAYTAkdCMRQwEgYDVQQIDAtJc2xlIG9mIE1hbjEQMA4G +A1UEBwwHRG91Z2xhczEXMBUGA1UECgwOQ2Fub25pY2FsIEx0ZC4xLTArBgNVBAMM +JENhbm9uaWNhbCBMdGQuIEtlcm5lbCBNb2R1bGUgU2lnbmluZzCCAiIwDQYJKoZI +hvcNAQEBBQADggIPADCCAgoCggIBALOwT8YKd4v50VMzNNKAtWNv4faig5nVtrHk +mZH6bBnG0JEquX21mKYNKAG4fI6qOOxRNzOW8LCbjYZfZyNpL9fC8/vF1/kE//Ll +YWi3KbnGjktNLY+SDACzo9JaCGTN8gkLpQ7mZHXVQfRNSToN3LknjsTWsd+PbPDk +9zHLqQSh+aeqFdpZA01GFNDdv+D1nvBxDHB4Kwj74LZopHQSnffyZIgXKortGpG1 +bBO9TBAKC3ILkNt983hETNKlQfccd31ailS8j/637uG8WTfE1OgU0FtCmwQAjm2D +iiUhWwjEe7LZmVLJXlltxKpSWeLkL35+rAUBmb8TcrdFxRfaitU+cXMu2Krm61rQ +msST877r0kclNBYp+t2aL7Eg5UFO7epRfCOAuj21OguMnIVIbDyLKS8vEsdSNALq +D6xTIzz4PkAbMGPpLeb2WMxR+esISrTHFoDRi8JkanGpcDGkpzrAk5kbDkLBAG1D +J5ls5f0jFsGOtWYXK0xTWm0elhYTasbUhVt0Ls58RS+ty3WeXpG9mmqGGga9Ob6j +UFbq4fbjlWnXMeRm9za1UcIitJx0nEQLDhZfU/AjxrlAvda4fRv2c/Yn58DjZaBY +q1xZt4CMjAS0qa6gUUAQO2NZSYfRm9+jjMQu63DBChgfyyLC8kplDeWBdNjOcsY1 +vrpjcsT5AgMBAAGjXTBbMAwGA1UdEwEB/wQCMAAwCwYDVR0PBAQDAgeAMB0GA1Ud +DgQWBBSI91LlYKHgc34xFjpGate3CoUMGTAfBgNVHSMEGDAWgBSI91LlYKHgc34x +FjpGate3CoUMGTANBgkqhkiG9w0BAQ0FAAOCAgEABIUWJ1i6cShXhnvCg9vlcm8e +shxjsNutwEKWwE9l9jVNwAcNRr7THuzxIhgqGF27aaam1A3DVwO550VJKMptmBdo +l8t7NoEKN540efPhDlt3Q7tapUW3FlCG/RKklg8VGQkc4fqApYAJvrvIJgs+3gPS +whikjQ3exTKCC/t1VWYaKrvkvSWRIBXUvrg/U+P7qMNV49XnghiV3zkJp/yJbrQc +qi3oZ8INNDQ++foLzoGSEa4SCv41Y85GKcQrT8tOBQqhEeI19lpdtejSb0z8PSSm +A0vdmGvycVgWHaUl79kGfOjbe4hqiVxZAZJk20QIY2x8MtZVmGMJJmFnCv5d7v0j +WbNNkcFNQYvNIFj6LUXlvR1pXAOgSaaXVBO2yeD4VoOhKsP0bP2rIMo9nJXAzwS7 +RjnPNIFlRSdkAX1is7hy6hDVD1N9OYglCW+MvOBJuzniDo3PVk3Bgm2H0uf8wJ+n +ZWDSbGUYWThu0JzXw4GamimPg4TDtUT/KKwTF2TyJhPZVQa3aWh8v+zRjO+32nbh +B3PGMWIxy7bh538Mw/dMUr4lNo6hu2ACw8s+byn8f2r6+OwK30niVw68vZPDG9U2 +iv/YGxfHH8tpANJUnq1hiZKVEfjqF4Ofmwl9uJSk6vWu6tzdYrmeaJwY7BnEEwjI +sWKrjoRpETza6g23Ir0= +-----END CERTIFICATE----- --- linux-azure-5.8-5.8.0.orig/debian/changelog +++ linux-azure-5.8-5.8.0/debian/changelog @@ -0,0 +1,54377 @@ +linux-azure-5.8 (5.8.0-1030.32~20.04.1) focal; urgency=medium + + * focal/linux-azure-5.8: 5.8.0-1030.32~20.04.1 -proposed tracker + (LP: #1923743) + + [ Ubuntu: 5.8.0-1030.32 ] + + * groovy/linux-azure: 5.8.0-1030.32 -proposed tracker (LP: #1923744) + * power off stress test will hang on the TGL machines (LP: #1919930) + - [Config]: linux-azure: Annotate SND_SOC_SOF_HDA_ALWAYS_ENABLE_DMI_L1 + * Groovy update: upstream stable patchset 2021-03-30 (LP: #1921960) + - [Config]: linux-azure: updateconfigs for KCMP + * linux-azure: Enable CONFIG_FPGA_MGR_XILINX_SPI for Azure cloud kernel + (LP: #1922582) + - [Config] azure: CONFIG_FPGA_MGR_XILINX_SPI=m + * groovy/linux: 5.8.0-51.57 -proposed tracker (LP: #1923754) + * CVE-2021-28375 + - misc: fastrpc: restrict user apps from sending kernel RPC messages + * CVE-2021-29646 + - tipc: better validate user input in tipc_nl_retrieve_key() + * SND_PCI_QUIRK for Clevo NH55RZQ and Intel NUC10 (LP: #1922759) + - ALSA: hda/realtek: Add quirk for Intel NUC 10 + - ALSA: hda/realtek: Add quirk for Clevo NH55RZQ + * CVE-2021-29650 + - Revert "netfilter: x_tables: Update remaining dereference to RCU" + - Revert "netfilter: x_tables: Switch synchronization to RCU" + - netfilter: x_tables: Use correct memory barriers. + * LRMv4: switch to signing nvidia modules via the Ubuntu Modules signing key + (LP: #1918134) + - [Packaging] dkms-build{,--nvidia-N} sync back from LRMv4 + * CVE-2021-29266 + - vhost-vdpa: fix use-after-free of v->config_ctx + * CVE-2021-29264 + - gianfar: fix jumbo packets+napi+rx overrun crash + * CVE-2021-29265 + - usbip: fix stub_dev usbip_sockfd_store() races leading to gpf + * Bcache bypasse writeback on caching device with fragmentation (LP: #1900438) + - bcache: consider the fragmentation when update the writeback rate + * Fix implicit declaration warnings for kselftests/memfd test on newer + releases (LP: #1910323) + - selftests/memfd: Fix implicit declaration warnings + * net/mlx5e: Add missing capability check for uplink follow (LP: #1921104) + - net/mlx5e: Add missing capability check for uplink follow + * [UBUNUT 21.04] s390/vtime: fix increased steal time accounting + (LP: #1921498) + - s390/vtime: fix increased steal time accounting + * Groovy update: upstream stable patchset 2021-03-30 (LP: #1921960) + - vmlinux.lds.h: add DWARF v5 sections + - debugfs: be more robust at handling improper input in debugfs_lookup() + - debugfs: do not attempt to create a new file before the filesystem is + initalized + - scsi: libsas: docs: Remove notify_ha_event() + - scsi: qla2xxx: Fix mailbox Ch erroneous error + - kdb: Make memory allocations more robust + - PCI: qcom: Use PHY_REFCLK_USE_PAD only for ipq8064 + - PCI: Decline to resize resources if boot config must be preserved + - virt: vbox: Do not use wait_event_interruptible when called from kernel + context + - bfq: Avoid false bfq queue merging + - ALSA: usb-audio: Fix PCM buffer allocation in non-vmalloc mode + - MIPS: vmlinux.lds.S: add missing PAGE_ALIGNED_DATA() section + - random: fix the RNDRESEEDCRNG ioctl + - ALSA: pcm: Call sync_stop at disconnection + - ALSA: pcm: Assure sync with the pending stop operation at suspend + - ALSA: pcm: Don't call sync_stop if it hasn't been stopped + - drm/i915/gt: One more flush for Baytrail clear residuals + - ath10k: Fix error handling in case of CE pipe init failure + - Bluetooth: btqcomsmd: Fix a resource leak in error handling paths in the + probe function + - Bluetooth: hci_uart: Fix a race for write_work scheduling + - Bluetooth: Fix initializing response id after clearing struct + - ARM: dts: exynos: correct PMIC interrupt trigger level on Artik 5 + - ARM: dts: exynos: correct PMIC interrupt trigger level on Monk + - ARM: dts: exynos: correct PMIC interrupt trigger level on Rinato + - ARM: dts: exynos: correct PMIC interrupt trigger level on Spring + - ARM: dts: exynos: correct PMIC interrupt trigger level on Arndale Octa + - ARM: dts: exynos: correct PMIC interrupt trigger level on Odroid XU3 family + - arm64: dts: exynos: correct PMIC interrupt trigger level on TM2 + - arm64: dts: exynos: correct PMIC interrupt trigger level on Espresso + - memory: mtk-smi: Fix PM usage counter unbalance in mtk_smi ops + - Bluetooth: hci_qca: Fix memleak in qca_controller_memdump + - arm64: dts: qcom: msm8916-samsung-a5u: Fix iris compatible + - net: stmmac: dwmac-meson8b: fix enabling the timing-adjustment clock + - bpf: Add bpf_patch_call_args prototype to include/linux/bpf.h + - bpf: Avoid warning when re-casting __bpf_call_base into __bpf_call_base_args + - arm64: dts: allwinner: A64: properly connect USB PHY to port 0 + - arm64: dts: allwinner: H6: properly connect USB PHY to port 0 + - arm64: dts: allwinner: Drop non-removable from SoPine/LTS SD card + - arm64: dts: allwinner: H6: Allow up to 150 MHz MMC bus frequency + - arm64: dts: allwinner: A64: Limit MMC2 bus frequency to 150 MHz + - cpufreq: brcmstb-avs-cpufreq: Free resources in error path + - cpufreq: brcmstb-avs-cpufreq: Fix resource leaks in ->remove() + - arm64: dts: rockchip: rk3328: Add clock_in_out property to gmac2phy node + - ACPICA: Fix exception code class checks + - usb: gadget: u_audio: Free requests only after callback + - arm64: dts: qcom: sdm845-db845c: Fix reset-pin of ov8856 node + - soc: ti: pm33xx: Fix some resource leak in the error handling paths of the + probe function + - staging: media: atomisp: Fix size_t format specifier in hmm_alloc() debug + statemenet + - Bluetooth: drop HCI device reference before return + - Bluetooth: Put HCI device if inquiry procedure interrupts + - memory: ti-aemif: Drop child node when jumping out loop + - ARM: dts: Configure missing thermal interrupt for 4430 + - usb: dwc2: Do not update data length if it is 0 on inbound transfers + - usb: dwc2: Abort transaction after errors with unknown reason + - usb: dwc2: Make "trimming xfer length" a debug message + - staging: rtl8723bs: wifi_regd.c: Fix incorrect number of regulatory rules + - ARM: dts: armada388-helios4: assign pinctrl to LEDs + - ARM: dts: armada388-helios4: assign pinctrl to each fan + - arm64: dts: armada-3720-turris-mox: rename u-boot mtd partition to + a53-firmware + - opp: Correct debug message in _opp_add_static_v2() + - Bluetooth: btusb: Fix memory leak in btusb_mtk_wmt_recv + - soc: qcom: ocmem: don't return NULL in of_get_ocmem + - arm64: dts: msm8916: Fix reserved and rfsa nodes unit address + - arm64: dts: meson: fix broken wifi node for Khadas VIM3L + - ARM: s3c: fix fiq for clang IAS + - ARM: at91: use proper asm syntax in pm_suspend + - ath10k: Fix suspicious RCU usage warning in + ath10k_wmi_tlv_parse_peer_stats_info() + - ath10k: Fix lockdep assertion warning in ath10k_sta_statistics + - soc: aspeed: snoop: Add clock control logic + - bpf_lru_list: Read double-checked variable once without lock + - ath9k: fix data bus crash when setting nf_override via debugfs + - ibmvnic: Set to CLOSED state even on error + - bnxt_en: reverse order of TX disable and carrier off + - xen/netback: fix spurious event detection for common event case + - net/mlx5e: Don't change interrupt moderation params when DIM is enabled + - net/mlx5e: Change interrupt moderation channel params also when channels are + closed + - net/mlx5e: Replace synchronize_rcu with synchronize_net + - net/mlx5e: kTLS, Use refcounts to free kTLS RX priv context + - net/mlx5: Disable devlink reload for multi port slave device + - net/mlx5: Disallow RoCE on multi port slave device + - net/mlx5: Disallow RoCE on lag device + - net/mlx5: Disable devlink reload for lag devices + - mac80211: fix potential overflow when multiplying to u32 integers + - libbpf: Ignore non function pointer member in struct_ops + - bpf: Fix an unitialized value in bpf_iter + - bpf, devmap: Use GFP_KERNEL for xdp bulk queue allocation + - bpf: Fix bpf_fib_lookup helper MTU check for SKB ctx + - tcp: fix SO_RCVLOWAT related hangs under mem pressure + - net: axienet: Handle deferred probe on clock properly + - cxgb4/chtls/cxgbit: Keeping the max ofld immediate data size same in cxgb4 + and ulds + - b43: N-PHY: Fix the update of coef for the PHY revision >= 3case + - bpf: Clear subreg_def for global function return values + - ibmvnic: add memory barrier to protect long term buffer + - ibmvnic: skip send_request_unmap for timeout reset + - net: dsa: felix: perform teardown in reverse order of setup + - net: phy: mscc: adding LCPLL reset to VSC8514 + - net: amd-xgbe: Reset the PHY rx data path when mailbox command timeout + - net: amd-xgbe: Fix NETDEV WATCHDOG transmit queue timeout warning + - net: amd-xgbe: Reset link when the link never comes back + - net: amd-xgbe: Fix network fluctuations when using 1G BELFUSE SFP + - net: mvneta: Remove per-cpu queue mapping for Armada 3700 + - tty: convert tty_ldisc_ops 'read()' function to take a kernel pointer + - tty: implement read_iter + - fbdev: aty: SPARC64 requires FB_ATY_CT + - drm/gma500: Fix error return code in psb_driver_load() + - gma500: clean up error handling in init + - drm/fb-helper: Add missed unlocks in setcmap_legacy() + - crypto: sun4i-ss - linearize buffers content must be kept + - crypto: sun4i-ss - fix kmap usage + - crypto: arm64/aes-ce - really hide slower algos when faster ones are enabled + - media: allegro: Fix use after free on error + - drm: rcar-du: Fix PM reference leak in rcar_cmm_enable() + - drm: rcar-du: Fix crash when using LVDS1 clock for CRTC + - drm: rcar-du: Fix the return check of of_parse_phandle and + of_find_device_by_node + - drm/amdgpu: Fix macro name _AMDGPU_TRACE_H_ in preprocessor if condition + - MIPS: c-r4k: Fix section mismatch for loongson2_sc_init + - MIPS: lantiq: Explicitly compare LTQ_EBU_PCC_ISTAT against 0 + - drm/virtio: make sure context is created in gem open + - media: ipu3-cio2: Build only for x86 + - media: i2c: ov5670: Fix PIXEL_RATE minimum value + - media: imx: Unregister csc/scaler only if registered + - media: imx: Fix csc/scaler unregister + - media: mtk-vcodec: fix error return code in vdec_vp9_decode() + - media: camss: missing error code in msm_video_register() + - media: vsp1: Fix an error handling path in the probe function + - media: em28xx: Fix use-after-free in em28xx_alloc_urbs + - media: media/pci: Fix memleak in empress_init + - media: tm6000: Fix memleak in tm6000_start_stream + - media: aspeed: fix error return code in aspeed_video_setup_video() + - ASoC: cs42l56: fix up error handling in probe + - ASoC: qcom: qdsp6: Move frontend AIFs to q6asm-dai + - evm: Fix memleak in init_desc + - crypto: bcm - Rename struct device_private to bcm_device_private + - sched/fair: Avoid stale CPU util_est value for schedutil in task dequeue + - drm/sun4i: tcon: fix inverted DCLK polarity + - media: imx7: csi: Fix regression for parallel cameras on i.MX6UL + - media: imx7: csi: Fix pad link validation + - MIPS: properly stop .eh_frame generation + - MIPS: Compare __SYNC_loongson3_war against 0 + - drm/tegra: Fix reference leak when pm_runtime_get_sync() fails + - drm/amdgpu: toggle on DF Cstate after finishing xgmi injection + - bsg: free the request before return error code + - drm/amd/display: Fix 10/12 bpc setup in DCE output bit depth reduction. + - drm/amd/display: Fix HDMI deep color output for DCE 6-11. + - media: software_node: Fix refcounts in software_node_get_next_child() + - media: lmedm04: Fix misuse of comma + - media: atomisp: Fix a buffer overflow in debug code + - media: qm1d1c0042: fix error return code in qm1d1c0042_init() + - media: cx25821: Fix a bug when reallocating some dma memory + - media: pxa_camera: declare variable when DEBUG is defined + - media: uvcvideo: Accept invalid bFormatIndex and bFrameIndex values + - sched/eas: Don't update misfit status if the task is pinned + - f2fs: compress: fix potential deadlock + - ASoC: SOF: Intel: hda: cancel D0i3 work during runtime suspend + - mtd: parser: imagetag: fix error codes in + bcm963xx_parse_imagetag_partitions() + - crypto: talitos - Work around SEC6 ERRATA (AES-CTR mode data size error) + - crypto: talitos - Fix ctr(aes) on SEC1 + - drm/nouveau: bail out of nouveau_channel_new if channel init fails + - mm: proc: Invalidate TLB after clearing soft-dirty page state + - ata: ahci_brcm: Add back regulators management + - ASoC: cpcap: fix microphone timeslot mask + - ASoC: codecs: add missing max_register in regmap config + - mtd: parsers: afs: Fix freeing the part name memory in failure + - f2fs: fix to avoid inconsistent quota data + - drm/amdgpu: Prevent shift wrapping in amdgpu_read_mask() + - f2fs: fix a wrong condition in __submit_bio + - KVM: nSVM: Don't strip host's C-bit from guest's CR3 when reading PDPTRs + - drm/mediatek: Check if fb is null + - Drivers: hv: vmbus: Avoid use-after-free in vmbus_onoffer_rescind() + - ASoC: Intel: sof_sdw: add missing TGL_HDMI quirk for Dell SKU 0A5E + - locking/lockdep: Avoid unmatched unlock + - ASoC: rt5682: Fix panic in rt5682_jack_detect_handler happening during + system shutdown + - ASoC: SOF: debug: Fix a potential issue on string buffer termination + - btrfs: clarify error returns values in __load_free_space_cache + - btrfs: fix double accounting of ordered extent for subpage case in + btrfs_invalidapge + - KVM: x86: Restore all 64 bits of DR6 and DR7 during RSM on x86-64 + - drm/lima: fix reference leak in lima_pm_busy + - drm/dp_mst: Don't cache EDIDs for physical ports + - hwrng: timeriomem - Fix cooldown period calculation + - crypto: ecdh_helper - Ensure 'len >= secret.len' in decode_key() + - nvmet-tcp: fix receive data digest calculation for multiple h2cdata PDUs + - nvmet-tcp: fix potential race of tcp socket closing accept_work + - nvmet: remove extra variable in identify ns + - nvmet: set status to 0 in case for invalid nsid + - ASoC: SOF: sof-pci-dev: add missing Up-Extreme quirk + - ima: Free IMA measurement buffer on error + - ima: Free IMA measurement buffer after kexec syscall + - ASoC: simple-card-utils: Fix device module clock + - fs/jfs: fix potential integer overflow on shift of a int + - jffs2: fix use after free in jffs2_sum_write_data() + - ubifs: Fix memleak in ubifs_init_authentication + - ubifs: replay: Fix high stack usage, again + - ubifs: Fix error return code in alloc_wbufs() + - irqchip/imx: IMX_INTMUX should not default to y, unconditionally + - smp: Process pending softirqs in flush_smp_call_function_from_idle() + - drm/amdgpu/display: remove hdcp_srm sysfs on device removal + - HSI: Fix PM usage counter unbalance in ssi_hw_init + - power: supply: cpcap: Add missing IRQF_ONESHOT to fix regression + - clk: meson: clk-pll: fix initializing the old rate (fallback) for a PLL + - clk: meson: clk-pll: make "ret" a signed integer + - clk: meson: clk-pll: propagate the error from meson_clk_pll_set_rate() + - regulator: qcom-rpmh-regulator: add pm8009-1 chip revision + - quota: Fix memory leak when handling corrupted quota file + - i2c: iproc: handle only slave interrupts which are enabled + - i2c: iproc: update slave isr mask (ISR_MASK_SLAVE) + - i2c: iproc: handle master read request + - spi: cadence-quadspi: Abort read if dummy cycles required are too many + - clk: sunxi-ng: h6: Fix CEC clock + - HID: core: detect and skip invalid inputs to snto32() + - RDMA/siw: Fix handling of zero-sized Read and Receive Queues. + - dmaengine: fsldma: Fix a resource leak in the remove function + - dmaengine: fsldma: Fix a resource leak in an error handling path of the + probe function + - dmaengine: owl-dma: Fix a resource leak in the remove function + - dmaengine: hsu: disable spurious interrupt + - mfd: bd9571mwv: Use devm_mfd_add_devices() + - power: supply: cpcap-charger: Fix missing power_supply_put() + - power: supply: cpcap-battery: Fix missing power_supply_put() + - power: supply: cpcap-charger: Fix power_supply_put on null battery pointer + - fdt: Properly handle "no-map" field in the memory region + - of/fdt: Make sure no-map does not remove already reserved regions + - RDMA/rtrs: Extend ibtrs_cq_qp_create + - RDMA/rtrs-srv: Release lock before call into close_sess + - RDMA/rtrs-srv: Use sysfs_remove_file_self for disconnect + - RDMA/rtrs-clt: Set mininum limit when create QP + - RDMA/rtrs: Call kobject_put in the failure path + - RDMA/rtrs-srv: Fix missing wr_cqe + - RDMA/rtrs-clt: Refactor the failure cases in alloc_clt + - RDMA/rtrs-srv: Init wr_cnt as 1 + - power: reset: at91-sama5d2_shdwc: fix wkupdbc mask + - rtc: s5m: select REGMAP_I2C + - dmaengine: idxd: set DMA channel to be private + - power: supply: fix sbs-charger build, needs REGMAP_I2C + - clocksource/drivers/ixp4xx: Select TIMER_OF when needed + - clocksource/drivers/mxs_timer: Add missing semicolon when DEBUG is defined + - RDMA/mlx5: Use the correct obj_id upon DEVX TIR creation + - IB/mlx5: Add mutex destroy call to cap_mask_mutex mutex + - clk: sunxi-ng: h6: Fix clock divider range on some clocks + - regulator: axp20x: Fix reference cout leak + - watch_queue: Drop references to /dev/watch_queue + - certs: Fix blacklist flag type confusion + - regulator: s5m8767: Fix reference count leak + - spi: atmel: Put allocated master before return + - regulator: s5m8767: Drop regulators OF node reference + - power: supply: axp20x_usb_power: Init work before enabling IRQs + - regulator: core: Avoid debugfs: Directory ... already present! error + - isofs: release buffer head before return + - watchdog: intel-mid_wdt: Postpone IRQ handler registration till SCU is ready + - auxdisplay: ht16k33: Fix refresh rate handling + - objtool: Fix error handling for STD/CLD warnings + - objtool: Fix ".cold" section suffix check for newer versions of GCC + - iommu: Switch gather->end to the inclusive end + - IB/umad: Return EIO in case of when device disassociated + - IB/umad: Return EPOLLERR in case of when device disassociated + - KVM: PPC: Make the VMX instruction emulation routines static + - powerpc/47x: Disable 256k page size + - powerpc/time: Enable sched clock for irqtime + - mmc: owl-mmc: Fix a resource leak in an error handling path and in the + remove function + - mmc: sdhci-sprd: Fix some resource leaks in the remove function + - mmc: usdhi6rol0: Fix a resource leak in the error handling path of the probe + - mmc: renesas_sdhi_internal_dmac: Fix DMA buffer alignment from 8 to + 128-bytes + - ARM: 9046/1: decompressor: Do not clear SCTLR.nTLSMD for ARMv7+ cores + - i2c: qcom-geni: Store DMA mapping data in geni_i2c_dev struct + - amba: Fix resource leak for drivers without .remove + - iommu: Move iotlb_sync_map out from __iommu_map + - iommu: Properly pass gfp_t in _iommu_map() to avoid atomic sleeping + - IB/mlx5: Return appropriate error code instead of ENOMEM + - IB/cm: Avoid a loop when device has 255 ports + - tracepoint: Do not fail unregistering a probe due to memory failure + - rtc: zynqmp: depend on HAS_IOMEM + - perf tools: Fix DSO filtering when not finding a map for a sampled address + - perf vendor events arm64: Fix Ampere eMag event typo + - RDMA/rxe: Fix coding error in rxe_recv.c + - RDMA/rxe: Fix coding error in rxe_rcv_mcast_pkt + - RDMA/rxe: Correct skb on loopback path + - spi: stm32: properly handle 0 byte transfer + - mfd: wm831x-auxadc: Prevent use after free in wm831x_auxadc_read_irq() + - powerpc/pseries/dlpar: handle ibm, configure-connector delay status + - powerpc/8xx: Fix software emulation interrupt + - clk: qcom: gcc-msm8998: Fix Alpha PLL type for all GPLLs + - kunit: tool: fix unit test cleanup handling + - kselftests: dmabuf-heaps: Fix Makefile's inclusion of the kernel's + usr/include dir + - RDMA/hns: Fixed wrong judgments in the goto branch + - RDMA/siw: Fix calculation of tx_valid_cpus size + - RDMA/hns: Fix type of sq_signal_bits + - RDMA/hns: Disable RQ inline by default + - clk: divider: fix initialization with parent_hw + - spi: pxa2xx: Fix the controller numbering for Wildcat Point + - powerpc/uaccess: Avoid might_fault() when user access is enabled + - powerpc/kuap: Restore AMR after replaying soft interrupts + - regulator: qcom-rpmh: fix pm8009 ldo7 + - clk: aspeed: Fix APLL calculate formula from ast2600-A2 + - regulator: bd718x7, bd71828, Fix dvs voltage levels + - nfsd: register pernet ops last, unregister first + - ceph: fix flush_snap logic after putting caps + - RDMA/hns: Fixes missing error code of CMDQ + - RDMA/ucma: Fix use-after-free bug in ucma_create_uevent + - RDMA/rtrs-srv: Fix stack-out-of-bounds + - RDMA/rtrs: Only allow addition of path to an already established session + - RDMA/rtrs-srv: fix memory leak by missing kobject free + - RDMA/rtrs-srv-sysfs: fix missing put_device + - RDMA/rtrs-srv: Do not pass a valid pointer to PTR_ERR() + - Input: sur40 - fix an error code in sur40_probe() + - perf intel-pt: Fix missing CYC processing in PSB + - perf intel-pt: Fix premature IPC + - perf intel-pt: Fix IPC with CYC threshold + - perf test: Fix unaligned access in sample parsing test + - Input: elo - fix an error code in elo_connect() + - sparc64: only select COMPAT_BINFMT_ELF if BINFMT_ELF is set + - sparc: fix led.c driver when PROC_FS is not enabled + - ARM: 9065/1: OABI compat: fix build when EPOLL is not enabled + - misc: eeprom_93xx46: Fix module alias to enable module autoprobe + - phy: rockchip-emmc: emmc_phy_init() always return 0 + - misc: eeprom_93xx46: Add module alias to avoid breaking support for non + device tree users + - PCI: rcar: Always allocate MSI addresses in 32bit space + - soundwire: cadence: fix ACK/NAK handling + - pwm: rockchip: Enable APB clock during register access while probing + - pwm: rockchip: rockchip_pwm_probe(): Remove superfluous clk_unprepare() + - pwm: rockchip: Eliminate potential race condition when probing + - VMCI: Use set_page_dirty_lock() when unregistering guest memory + - PCI: Align checking of syscall user config accessors + - mei: hbm: call mei_set_devstate() on hbm stop response + - drm/msm/dsi: Correct io_start for MSM8994 (20nm PHY) + - drm/msm/mdp5: Fix wait-for-commit for cmd panels + - drm/msm: Fix race of GPU init vs timestamp power management. + - drm/msm: Fix races managing the OOB state for timestamp vs timestamps. + - vfio/iommu_type1: Populate full dirty when detach non-pinned group + - vfio/iommu_type1: Fix some sanity checks in detach group + - ext4: fix potential htree index checksum corruption + - nvmem: core: Fix a resource leak on error in nvmem_add_cells_from_of() + - nvmem: core: skip child nodes not matching binding + - soundwire: bus: use sdw_update_no_pm when initializing a device + - soundwire: export sdw_write/read_no_pm functions + - soundwire: bus: fix confusion on device used by pm_runtime + - misc: fastrpc: fix incorrect usage of dma_map_sgtable + - regmap: sdw: use _no_pm functions in regmap_read/write + - ext: EXT4_KUNIT_TESTS should depend on EXT4_FS instead of selecting it + - mailbox: sprd: correct definition of SPRD_OUTBOX_FIFO_FULL + - PCI: pci-bridge-emul: Fix array overruns, improve safety + - i40e: Fix flow for IPv6 next header (extension header) + - i40e: Add zero-initialization of AQ command structures + - i40e: Fix overwriting flow control settings during driver loading + - i40e: Fix addition of RX filters after enabling FW LLDP agent + - i40e: Fix VFs not created + - Take mmap lock in cacheflush syscall + - i40e: Fix add TC filter for IPv6 + - octeontx2-af: Fix an off by one in rvu_dbg_qsize_write() + - vfio/type1: Use follow_pte() + - ice: report correct max number of TCs + - ice: Account for port VLAN in VF max packet size calculation + - ice: Fix state bits on LLDP mode switch + - ice: update the number of available RSS queues + - net: stmmac: fix CBS idleslope and sendslope calculation + - net/mlx4_core: Add missed mlx4_free_cmd_mailbox() + - vxlan: move debug check after netdev unregister + - wireguard: device: do not generate ICMP for non-IP packets + - wireguard: kconfig: use arm chacha even with no neon + - ocfs2: fix a use after free on error + - mm: memcontrol: fix NR_ANON_THPS accounting in charge moving + - mm/memory.c: fix potential pte_unmap_unlock pte error + - mm/hugetlb: fix potential double free in hugetlb_register_node() error path + - mm/hugetlb: suppress wrong warning info when alloc gigantic page + - mm/compaction: fix misbehaviors of fast_find_migrateblock() + - r8169: fix jumbo packet handling on RTL8168e + - arm64: Add missing ISB after invalidating TLB in __primary_switch + - i2c: brcmstb: Fix brcmstd_send_i2c_cmd condition + - i2c: exynos5: Preserve high speed master code + - mm,thp,shmem: make khugepaged obey tmpfs mount flags + - mm/rmap: fix potential pte_unmap on an not mapped pte + - proc: use kvzalloc for our kernel buffer + - scsi: bnx2fc: Fix Kconfig warning & CNIC build errors + - ide/falconide: Fix module unload + - scsi: sd: Fix Opal support + - blk-settings: align max_sectors on "logical_block_size" boundary + - soundwire: intel: fix possible crash when no device is detected + - ACPI: property: Fix fwnode string properties matching + - ACPI: configfs: add missing check after configfs_register_default_group() + - cpufreq: ACPI: Set cpuinfo.max_freq directly if max boost is known + - HID: logitech-dj: add support for keyboard events in eQUAD step 4 Gaming + - HID: wacom: Ignore attempts to overwrite the touch_max value from HID + - Input: raydium_ts_i2c - do not send zero length + - Input: xpad - add support for PowerA Enhanced Wired Controller for Xbox + Series X|S + - Input: joydev - prevent potential read overflow in ioctl + - Input: i8042 - add ASUS Zenbook Flip to noselftest list + - media: mceusb: Fix potential out-of-bounds shift + - USB: serial: option: update interface mapping for ZTE P685M + - usb: musb: Fix runtime PM race in musb_queue_resume_work + - USB: serial: ftdi_sio: fix FTX sub-integer prescaler + - USB: serial: pl2303: fix line-speed handling on newer chips + - USB: serial: mos7840: fix error code in mos7840_write() + - USB: serial: mos7720: fix error code in mos7720_write() + - phy: lantiq: rcu-usb2: wait after clock enable + - ALSA: fireface: fix to parse sync status register of latter protocol + - ALSA: hda: Add another CometLake-H PCI ID + - ALSA: hda/hdmi: Drop bogus check at closing a stream + - ALSA: hda/realtek: modify EAPD in the ALC886 + - ALSA: hda/realtek: Quirk for HP Spectre x360 14 amp setup + - MIPS: Ingenic: Disable HPTLB for D0 XBurst CPUs too + - MIPS: Support binutils configured with --enable-mips-fix-loongson3-llsc=yes + - MIPS: VDSO: Use CLANG_FLAGS instead of filtering out '--target=' + - Revert "MIPS: Octeon: Remove special handling of + CONFIG_MIPS_ELF_APPENDED_DTB=y" + - Revert "bcache: Kill btree_io_wq" + - bcache: Give btree_io_wq correct semantics again + - bcache: Move journal work to new flush wq + - Revert "drm/amd/display: Update NV1x SR latency values" + - drm/amd/display: Add FPU wrappers to dcn21_validate_bandwidth() + - drm/amd/display: Add vupdate_no_lock interrupts for DCN2.1 + - drm/amdkfd: Fix recursive lock warnings + - drm/amdgpu: Set reference clock to 100Mhz on Renoir (v2) + - drm/nouveau/kms: handle mDP connectors + - drm/modes: Switch to 64bit maths to avoid integer overflow + - drm/sched: Cancel and flush all outstanding jobs before finish. + - drm/panel: kd35t133: allow using non-continuous dsi clock + - drm/rockchip: Require the YTR modifier for AFBC + - ASoC: siu: Fix build error by a wrong const prefix + - selinux: fix inconsistency between inode_getxattr and inode_listsecurity + - erofs: initialized fields can only be observed after bit is set + - tpm_tis: Fix check_locality for correct locality acquisition + - tpm_tis: Clean up locality release + - KEYS: trusted: Fix incorrect handling of tpm_get_random() + - KEYS: trusted: Fix migratable=1 failing + - KEYS: trusted: Reserve TPM for seal and unseal operations + - btrfs: do not cleanup upper nodes in btrfs_backref_cleanup_node + - btrfs: do not warn if we can't find the reloc root when looking up backref + - btrfs: add asserts for deleting backref cache nodes + - btrfs: abort the transaction if we fail to inc ref in btrfs_copy_root + - btrfs: fix reloc root leak with 0 ref reloc roots on recovery + - btrfs: splice remaining dirty_bg's onto the transaction dirty bg list + - btrfs: handle space_info::total_bytes_pinned inside the delayed ref itself + - btrfs: account for new extents being deleted in total_bytes_pinned + - btrfs: fix extent buffer leak on failure to copy root + - drm/i915/gt: Flush before changing register state + - drm/i915/gt: Correct surface base address for renderclear + - crypto: arm64/sha - add missing module aliases + - crypto: aesni - prevent misaligned buffers on the stack + - crypto: michael_mic - fix broken misalignment handling + - crypto: sun4i-ss - checking sg length is not sufficient + - crypto: sun4i-ss - handle BigEndian for cipher + - crypto: sun4i-ss - initialize need_fallback + - soc: samsung: exynos-asv: don't defer early on not-supported SoCs + - soc: samsung: exynos-asv: handle reading revision register error + - seccomp: Add missing return in non-void function + - arm64: ptrace: Fix seccomp of traced syscall -1 (NO_SYSCALL) + - misc: rtsx: init of rts522a add OCP power off when no card is present + - drivers/misc/vmw_vmci: restrict too big queue size in qp_host_alloc_queue + - pstore: Fix typo in compression option name + - dts64: mt7622: fix slow sd card access + - arm64: dts: agilex: fix phy interface bit shift for gmac1 and gmac2 + - staging/mt7621-dma: mtk-hsdma.c->hsdma-mt7621.c + - staging: gdm724x: Fix DMA from stack + - staging: rtl8188eu: Add Edimax EW-7811UN V2 to device table + - media: ipu3-cio2: Fix mbus_code processing in cio2_subdev_set_fmt() + - media: smipcie: fix interrupt handling and IR timeout + - x86/virt: Eat faults on VMXOFF in reboot flows + - x86/reboot: Force all cpus to exit VMX root if VMX is supported + - x86/fault: Fix AMD erratum #91 errata fixup for user code + - x86/entry: Fix instrumentation annotation + - powerpc/prom: Fix "ibm,arch-vec-5-platform-support" scan + - rcu: Pull deferred rcuog wake up to rcu_eqs_enter() callers + - rcu/nocb: Perform deferred wake up before last idle's need_resched() check + - arm64: Extend workaround for erratum 1024718 to all versions of Cortex-A55 + - arm64: kexec_file: fix memory leakage in create_dtb() when fdt_open_into() + fails + - arm64: uprobe: Return EOPNOTSUPP for AARCH32 instruction probing + - arm64 module: set plt* section addresses to 0x0 + - arm64: spectre: Prevent lockdep splat on v4 mitigation enable path + - riscv: Disable KSAN_SANITIZE for vDSO + - watchdog: qcom: Remove incorrect usage of QCOM_WDT_ENABLE_IRQ + - watchdog: mei_wdt: request stop on unregister + - coresight: etm4x: Handle accesses to TRCSTALLCTLR + - mtd: spi-nor: sfdp: Fix last erase region marking + - mtd: spi-nor: sfdp: Fix wrong erase type bitmask for overlaid region + - mtd: spi-nor: core: Fix erase type discovery for overlaid region + - mtd: spi-nor: core: Add erase size check for erase command initialization + - mtd: spi-nor: hisi-sfc: Put child node np on error path + - fs/affs: release old buffer head on error path + - seq_file: document how per-entry resources are managed. + - x86: fix seq_file iteration for pat/memtype.c + - mm: memcontrol: fix swap undercounting in cgroup2 + - hugetlb: fix update_and_free_page contig page struct assumption + - hugetlb: fix copy_huge_page_from_user contig page struct assumption + - mm/vmscan: restore zone_reclaim_mode ABI + - mm, compaction: make fast_isolate_freepages() stay within zone + - nvmem: qcom-spmi-sdam: Fix uninitialized pdev pointer + - module: Ignore _GLOBAL_OFFSET_TABLE_ when warning for undefined symbols + - mmc: sdhci-esdhc-imx: fix kernel panic when remove module + - powerpc/32s: Add missing call to kuep_lock on syscall entry + - spmi: spmi-pmic-arb: Fix hw_irq overflow + - mei: me: emmitsburg workstation DID + - mei: me: add adler lake point S DID + - mei: me: add adler lake point LP DID + - gpio: pcf857x: Fix missing first interrupt + - mfd: gateworks-gsc: Fix interrupt type + - printk: fix deadlock when kernel panic + - exfat: fix shift-out-of-bounds in exfat_fill_super() + - zonefs: Fix file size of zones in full condition + - [Config] updateconfigs for KCMP + - kcmp: Support selection of SYS_kcmp without CHECKPOINT_RESTORE + - thermal: cpufreq_cooling: freq_qos_update_request() returns < 0 on error + - cpufreq: intel_pstate: Change intel_pstate_get_hwp_max() argument + - cpufreq: intel_pstate: Get per-CPU max freq via MSR_HWP_CAPABILITIES if + available + - proc: don't allow async path resolution of /proc/thread-self components + - s390/vtime: fix inline assembly clobber list + - virtio/s390: implement virtio-ccw revision 2 correctly + - um: mm: check more comprehensively for stub changes + - um: defer killing userspace on page table update failures + - irqchip/loongson-pch-msi: Use bitmap_zalloc() to allocate bitmap + - f2fs: fix out-of-repair __setattr_copy() + - f2fs: enforce the immutable flag on open files + - f2fs: flush data when enabling checkpoint back + - sparc32: fix a user-triggerable oops in clear_user() + - spi: fsl: invert spisel_boot signal on MPC8309 + - spi: spi-synquacer: fix set_cs handling + - gfs2: fix glock confusion in function signal_our_withdraw + - gfs2: Don't skip dlm unlock if glock has an lvb + - gfs2: Lock imbalance on error path in gfs2_recover_one + - gfs2: Recursive gfs2_quota_hold in gfs2_iomap_end + - dm: fix deadlock when swapping to encrypted device + - dm writecache: fix performance degradation in ssd mode + - dm writecache: return the exact table values that were set + - dm writecache: fix writing beyond end of underlying device when shrinking + - dm era: Recover committed writeset after crash + - dm era: Update in-core bitset after committing the metadata + - dm era: Verify the data block size hasn't changed + - dm era: Fix bitset memory leaks + - dm era: Use correct value size in equality function of writeset tree + - dm era: Reinitialize bitset cache before digesting a new writeset + - dm era: only resize metadata in preresume + - drm/i915: Reject 446-480MHz HDMI clock on GLK + - kgdb: fix to kill breakpoints on initmem after boot + - wireguard: selftests: test multiple parallel streams + - wireguard: queueing: get rid of per-peer ring buffers + - net: sched: fix police ext initialization + - net: qrtr: Fix memory leak in qrtr_tun_open + - ARM: dts: aspeed: Add LCLK to lpc-snoop + - ipv6: icmp6: avoid indirect call for icmpv6_send() + * Mute/Mic-mute LEDs are not work on HP 850/840/440 G8 Laptops (LP: #1920030) + - ALSA: hda/realtek: fix mute/micmute LEDs for HP 840 G8 + - ALSA: hda/realtek: fix mute/micmute LEDs for HP 440 G8 + - ALSA: hda/realtek: fix mute/micmute LEDs for HP 850 G8 + * Groovy update: upstream stable patchset 2021-03-19 (LP: #1920571) + - af_key: relax availability checks for skb size calculation + - regulator: core: avoid regulator_resolve_supply() race condition + - ASoC: wm_adsp: Fix control name parsing for multi-fw + - mac80211: 160MHz with extended NSS BW in CSA + - ASoC: Intel: Skylake: Zero snd_ctl_elem_value + - chtls: Fix potential resource leak + - pNFS/NFSv4: Try to return invalid layout in pnfs_layout_process() + - pNFS/NFSv4: Improve rejection of out-of-order layouts + - ALSA: hda: intel-dsp-config: add PCI id for TGL-H + - ASoC: ak4458: correct reset polarity + - ASoC: Intel: sof_sdw: set proper flags for Dell TGL-H SKU 0A5E + - iwlwifi: mvm: skip power command when unbinding vif during CSA + - iwlwifi: mvm: take mutex for calling iwl_mvm_get_sync_time() + - iwlwifi: pcie: add a NULL check in iwl_pcie_txq_unmap + - iwlwifi: pcie: fix context info memory leak + - iwlwifi: mvm: invalidate IDs of internal stations at mvm start + - iwlwifi: pcie: add rules to match Qu with Hr2 + - iwlwifi: mvm: guard against device removal in reprobe + - SUNRPC: Move simple_get_bytes and simple_get_netobj into private header + - SUNRPC: Handle 0 length opaque XDR object data properly + - i2c: mediatek: Move suspend and resume handling to NOIRQ phase + - blk-cgroup: Use cond_resched() when destroy blkgs + - regulator: Fix lockdep warning resolving supplies + - bpf: Fix verifier jmp32 pruning decision logic + - bpf: Fix verifier jsgt branch analysis on max bound + - drm/i915: Fix ICL MG PHY vswing handling + - drm/i915: Skip vswing programming for TBT + - nilfs2: make splice write available again + - squashfs: avoid out of bounds writes in decompressors + - squashfs: add more sanity checks in id lookup + - squashfs: add more sanity checks in inode lookup + - squashfs: add more sanity checks in xattr id lookup + - gpio: mxs: GPIO_MXS should not default to y unconditionally + - gpio: ep93xx: fix BUG_ON port F usage + - gpio: ep93xx: Fix single irqchip with multi gpiochips + - tracing: Do not count ftrace events in top level enable output + - tracing: Check length before giving out the filter buffer + - drm/i915: Fix overlay frontbuffer tracking + - arm/xen: Don't probe xenbus as part of an early initcall + - cgroup: fix psi monitor for root cgroup + - drm/i915/tgl+: Make sure TypeC FIA is powered up when initializing it + - drm/dp_mst: Don't report ports connected if nothing is attached to them + - dmaengine: move channel device_node deletion to driver + - soc: ti: omap-prm: Fix boot time errors for rst_map_012 bits 0 and 1 + - arm64: dts: rockchip: Fix PCIe DT properties on rk3399 + - arm64: dts: qcom: sdm845: Reserve LPASS clocks in gcc + - ARM: OMAP2+: Fix suspcious RCU usage splats for omap_enter_idle_coupled + - arm64: dts: rockchip: remove interrupt-names property from rk3399 vdec node + - platform/x86: hp-wmi: Disable tablet-mode reporting by default + - ovl: perform vfs_getxattr() with mounter creds + - cap: fix conversions on getxattr + - ovl: skip getxattr of security labels + - scsi: lpfc: Fix EEH encountering oops with NVMe traffic + - x86/split_lock: Enable the split lock feature on Sapphire Rapids and Alder + Lake CPUs + - x86/split_lock: Enable the split lock feature on another Alder Lake CPU + - nvme-pci: ignore the subsysem NQN on Phison E16 + - drm/amd/display: Fix DPCD translation for LTTPR AUX_RD_INTERVAL + - drm/amd/display: Add more Clock Sources to DCN2.1 + - drm/amd/display: Release DSC before acquiring + - drm/amd/display: Fix dc_sink kref count in emulated_link_detect + - drm/amd/display: Free atomic state after drm_atomic_commit + - drm/amd/display: Decrement refcount of dc_sink before reassignment + - riscv: virt_addr_valid must check the address belongs to linear mapping + - ARM: dts: lpc32xx: Revert set default clock rate of HCLK PLL + - kallsyms: fix nonconverging kallsyms table with lld + - ARM: ensure the signal page contains defined contents + - ARM: kexec: fix oops after TLB are invalidated + - ubsan: implement __ubsan_handle_alignment_assumption + - x86/efi: Remove EFI PGD build time checks + - lkdtm: don't move ctors to .rodata + - cgroup-v1: add disabled controller check in cgroup1_parse_param() + - mt76: dma: fix a possible memory leak in mt76_add_fragment() + - drm/vc4: hvs: Fix buffer overflow with the dlist handling + - bpf: Unbreak BPF_PROG_TYPE_KPROBE when kprobe is called via do_int3 + - bpf: Check for integer overflow when using roundup_pow_of_two() + - netfilter: xt_recent: Fix attempt to update deleted entry + - netfilter: nftables: fix possible UAF over chains from packet path in netns + - netfilter: flowtable: fix tcp and udp header checksum update + - xen/netback: avoid race in xenvif_rx_ring_slots_available() + - net: hdlc_x25: Return meaningful error code in x25_open + - net: ipa: set error code in gsi_channel_setup() + - hv_netvsc: Reset the RSC count if NVSP_STAT_FAIL in netvsc_receive() + - net: enetc: initialize the RFS and RSS memories + - selftests: txtimestamp: fix compilation issue + - net: stmmac: set TxQ mode back to DCB after disabling CBS + - ibmvnic: Clear failover_pending if unable to schedule + - netfilter: conntrack: skip identical origin tuple in same zone only + - scsi: scsi_debug: Fix a memory leak + - x86/build: Disable CET instrumentation in the kernel for 32-bit too + - net: hns3: add a check for queue_id in hclge_reset_vf_queue() + - net: hns3: add a check for tqp_index in hclge_get_ring_chain_from_mbx() + - net: hns3: add a check for index in hclge_get_rss_key() + - firmware_loader: align .builtin_fw to 8 + - drm/sun4i: tcon: set sync polarity for tcon1 channel + - drm/sun4i: dw-hdmi: always set clock rate + - drm/sun4i: Fix H6 HDMI PHY configuration + - drm/sun4i: dw-hdmi: Fix max. frequency for H6 + - clk: sunxi-ng: mp: fix parent rate change flag check + - i2c: stm32f7: fix configuration of the digital filter + - h8300: fix PREEMPTION build, TI_PRE_COUNT undefined + - scripts: set proper OpenSSL include dir also for sign-file + - rxrpc: Fix clearance of Tx/Rx ring when releasing a call + - udp: fix skb_copy_and_csum_datagram with odd segment sizes + - net: dsa: call teardown method on probe failure + - cpufreq: ACPI: Extend frequency tables to cover boost frequencies + - cpufreq: ACPI: Update arch scale-invariance max perf ratio if CPPC is not + there + - net: gro: do not keep too many GRO packets in napi->rx_list + - net: fix iteration for sctp transport seq_files + - net/vmw_vsock: fix NULL pointer dereference + - net/vmw_vsock: improve locking in vsock_connect_timeout() + - net: watchdog: hold device global xmit lock during tx disable + - bridge: mrp: Fix the usage of br_mrp_port_switchdev_set_state + - switchdev: mrp: Remove SWITCHDEV_ATTR_ID_MRP_PORT_STAT + - vsock/virtio: update credit only if socket is not closed + - vsock: fix locking in vsock_shutdown() + - net/rds: restrict iovecs length for RDS_CMSG_RDMA_ARGS + - net/qrtr: restrict user-controlled length in qrtr_tun_write_iter() + - ovl: expand warning in ovl_d_real() + - kcov, usb: only collect coverage from __usb_hcd_giveback_urb in softirq + - usb: dwc3: ulpi: fix checkpatch warning + - net: qrtr: Fix port ID for control messages + - mptcp: skip to next candidate if subflow has unacked data + - mt76: mt7915: fix endian issues + - mt76: mt7615: fix rdd mcu cmd endianness + - net: sched: incorrect Kconfig dependencies on Netfilter modules + - net: openvswitch: fix TTL decrement exception action execution + - net: bridge: Fix a warning when del bridge sysfs + - net: fix proc_fs init handling in af_packet and tls + - Xen/x86: don't bail early from clear_foreign_p2m_mapping() + - Xen/x86: also check kernel mapping in set_foreign_p2m_mapping() + - Xen/gntdev: correct dev_bus_addr handling in gntdev_map_grant_pages() + - Xen/gntdev: correct error checking in gntdev_map_grant_pages() + - xen/arm: don't ignore return errors from set_phys_to_machine + - xen-blkback: don't "handle" error by BUG() + - xen-netback: don't "handle" error by BUG() + - xen-scsiback: don't "handle" error by BUG() + - xen-blkback: fix error handling in xen_blkbk_map() + - tty: protect tty_write from odd low-level tty disciplines + - btrfs: fix backport of 2175bf57dc952 in 5.10.13 + - media: pwc: Use correct device for DMA + - HID: make arrays usage and value to be the same + - RDMA: Lift ibdev_to_node from rds to common code + - nvme-rdma: Use ibdev_to_node instead of dereferencing ->dma_device + - USB: quirks: sort quirk entries + - usb: quirks: add quirk to start video capture on ELMO L-12F document camera + reliable + - ceph: downgrade warning from mdsmap decode to debug + - ntfs: check for valid standard information attribute + - Bluetooth: btusb: Some Qualcomm Bluetooth adapters stop working + - arm64: tegra: Add power-domain for Tegra210 HDA + - hwmon: (dell-smm) Add XPS 15 L502X to fan control blacklist + - mm: unexport follow_pte_pmd + - mm: simplify follow_pte{,pmd} + - KVM: do not assume PTE is writable after follow_pfn + - mm: provide a saner PTE walking API for modules + - KVM: Use kvm_pfn_t for local PFN variable in hva_to_pfn_remapped() + - NET: usb: qmi_wwan: Adding support for Cinterion MV31 + - cxgb4: Add new T6 PCI device id 0x6092 + - kbuild: fix CONFIG_TRIM_UNUSED_KSYMS build for ppc64 + - scripts/recordmcount.pl: support big endian for ARCH sh + * Groovy update: upstream stable patchset 2021-03-12 (LP: #1918987) + - net: fec: put child node on error path + - net: octeontx2: Make sure the buffer is 128 byte aligned + - stmmac: intel: Configure EHL PSE0 GbE and PSE1 GbE to 32 bits DMA addressing + - net: dsa: bcm_sf2: put device node before return + - net: switchdev: don't set port_obj_info->handled true when -EOPNOTSUPP + - ibmvnic: Ensure that CRQ entry read are correctly ordered + - iommu/io-pgtable-arm: Support coherency for Mali LPAE + - drm/panfrost: Support cache-coherent integrations + - arm64: dts: meson: Describe G12b GPU as coherent + - arm64: Fix kernel address detection of __is_lm_address() + - arm64: Do not pass tagged addresses to __is_lm_address() + - ARM: 9025/1: Kconfig: CPU_BIG_ENDIAN depends on !LD_IS_LLD + - iommu/vt-d: Do not use flush-queue when caching-mode is on + - phy: cpcap-usb: Fix warning for missing regulator_disable + - tools/power/x86/intel-speed-select: Set scaling_max_freq to base_frequency + - tools/power/x86/intel-speed-select: Set higher of cpuinfo_max_freq or + base_frequency + - platform/x86: touchscreen_dmi: Add swap-x-y quirk for Goodix touchscreen on + Estar Beauty HD tablet + - platform/x86: intel-vbtn: Support for tablet mode on Dell Inspiron 7352 + - locking/lockdep: Avoid noinstr warning for DEBUG_LOCKDEP + - x86: __always_inline __{rd,wr}msr() + - scsi: scsi_transport_srp: Don't block target in failfast state + - scsi: libfc: Avoid invoking response handler twice if ep is already + completed + - scsi: fnic: Fix memleak in vnic_dev_init_devcmd2 + - ALSA: hda - add Intel DG1 PCI and HDMI ids + - ALSA: hda: Add Alderlake-S PCI ID and HDMI codec vid + - ALSA: hda: Add AlderLake-P PCI ID and HDMI codec vid + - objtool: Don't add empty symbols to the rbtree + - mac80211: fix incorrect strlen of .write in debugfs + - mac80211: fix fast-rx encryption check + - scsi: ibmvfc: Set default timeout to avoid crash during migration + - i2c: tegra: Create i2c_writesl_vi() to use with VI I2C for filling TX FIFO + - udf: fix the problem that the disc content is not displayed + - nvme: check the PRINFO bit before deciding the host buffer length + - nvme-rdma: avoid request double completion for concurrent nvme_rdma_timeout + - nvme-tcp: avoid request double completion for concurrent nvme_tcp_timeout + - nvme-pci: allow use of cmb on v1.4 controllers + - nvmet: set right status on error in id-ns handler + - platform/x86: thinkpad_acpi: Add P53/73 firmware to fan_quirk_table for dual + fan control + - selftests/powerpc: Only test lwm/stmw on big endian + - drm/amd/display: Update dram_clock_change_latency for DCN2.1 + - drm/amd/display: Change function decide_dp_link_settings to avoid infinite + looping + - drm/amd/display: Use hardware sequencer functions for PG control + - objtool: Don't fail the kernel build on fatal errors + - x86/cpu: Add Lakefield, Alder Lake and Rocket Lake models to the to Intel + CPU family + - x86/cpu: Add another Alder Lake CPU to the Intel family + - kthread: Extract KTHREAD_IS_PER_CPU + - workqueue: Restrict affinity change to rescuer + - Revert "Revert "block: end bio with BLK_STS_AGAIN in case of non-mq devs and + REQ_NOWAIT"" + - ACPI: thermal: Do not call acpi_thermal_check() directly + - USB: serial: cp210x: add pid/vid for WSDA-200-USB + - USB: serial: cp210x: add new VID/PID for supporting Teraoka AD2000 + - USB: serial: option: Adding support for Cinterion MV31 + - usb: host: xhci-plat: add priv quirk for skip PHY initialization + - usb: host: xhci: mvebu: make USB 3.0 PHY optional for Armada 3720 + - USB: gadget: legacy: fix an error code in eth_bind() + - usb: gadget: aspeed: add missing of_node_put + - USB: usblp: don't call usb_set_interface if there's a single alt + - usb: renesas_usbhs: Clear pipe running flag in usbhs_pkt_pop() + - usb: dwc2: Fix endpoint direction check in ep_from_windex + - usb: dwc3: fix clock issue during resume in OTG mode + - usb: xhci-mtk: fix unreleased bandwidth data + - usb: xhci-mtk: skip dropping bandwidth of unchecked endpoints + - usb: xhci-mtk: break loop when find the endpoint to drop + - ARM: OMAP1: OSK: fix ohci-omap breakage + - arm64: dts: qcom: c630: keep both touchpad devices enabled + - arm64: dts: amlogic: meson-g12: Set FL-adj property value + - arm64: dts: rockchip: fix vopl iommu irq on px30 + - arm64: dts: rockchip: Use only supported PCIe link speed on Pinebook Pro + - ARM: dts: stm32: Connect card-detect signal on DHCOM + - ARM: dts: stm32: Disable WP on DHCOM uSD slot + - um: virtio: free vu_dev only with the contained struct device + - arm64: dts: meson: switch TFLASH_VDD_EN pin to open drain on Odroid-C4 + - r8169: work around RTL8125 UDP hw bug + - rxrpc: Fix deadlock around release of dst cached on udp tunnel + - arm64: dts: ls1046a: fix dcfg address range + - SUNRPC: Fix NFS READs that start at non-page-aligned offsets + - igc: set the default return value to -IGC_ERR_NVM in igc_write_nvm_srwr + - igc: check return value of ret_val in igc_config_fc_after_link_up + - i40e: Revert "i40e: don't report link up for a VF who hasn't enabled queues" + - ibmvnic: device remove has higher precedence over reset + - net/mlx5: Fix leak upon failure of rule creation + - net/mlx5e: Update max_opened_tc also when channels are closed + - net/mlx5e: Release skb in case of failure in tc update skb + - net: lapb: Copy the skb before sending a packet + - net: mvpp2: TCAM entry enable should be written after SRAM data + - r8169: fix WoL on shutdown if CONFIG_DEBUG_SHIRQ is set + - net: ipa: pass correct dma_handle to dma_free_coherent() + - ARM: dts: sun7i: a20: bananapro: Fix ethernet phy-mode + - nvmet-tcp: fix out-of-bounds access when receiving multiple h2cdata PDUs + - memblock: do not start bottom-up allocations with kernel_end + - ovl: fix dentry leak in ovl_get_redirect + - mac80211: fix station rate table updates on assoc + - gpiolib: free device name on error path to fix kmemleak + - fgraph: Initialize tracing_graph_pause at task creation + - tracing/kprobe: Fix to support kretprobe events on unloaded modules + - kretprobe: Avoid re-registration of the same kretprobe earlier + - tracing: Use pause-on-trace with the latency tracers + - libnvdimm/namespace: Fix visibility of namespace resource attribute + - libnvdimm/dimm: Avoid race between probe and available_slots_show() + - genirq: Prevent [devm_]irq_alloc_desc from returning irq 0 + - genirq/msi: Activate Multi-MSI early when MSI_FLAG_ACTIVATE_EARLY is set + - scripts: use pkg-config to locate libcrypto + - xhci: fix bounce buffer usage for non-sg list case + - RISC-V: Define MAXPHYSMEM_1GB only for RV32 + - cifs: report error instead of invalid when revalidating a dentry fails + - iommu: Check dev->iommu in dev_iommu_priv_get() before dereferencing it + - smb3: Fix out-of-bounds bug in SMB2_negotiate() + - smb3: fix crediting for compounding when only one request in flight + - mmc: sdhci-pltfm: Fix linking err for sdhci-brcmstb + - mmc: core: Limit retries when analyse of SDIO tuples fails + - Fix unsynchronized access to sev members through svm_register_enc_region + - drm/i915/display: Prevent double YUV range correction on HDR planes + - drm/i915: Extract intel_ddi_power_up_lanes() + - drm/i915: Power up combo PHY lanes for for HDMI as well + - drm/amd/display: Revert "Fix EDID parsing after resume from suspend" + - nvme-pci: avoid the deepest sleep state on Kingston A2000 SSDs + - KVM: SVM: Treat SVM as unsupported when running as an SEV guest + - KVM: x86: Allow guests to see MSR_IA32_TSX_CTRL even if tsx=off + - KVM: x86: fix CPUID entries returned by KVM_GET_CPUID2 ioctl + - KVM: x86: Update emulator context mode if SYSENTER xfers to 64-bit mode + - DTS: ARM: gta04: remove legacy spi-cs-high to make display work again + - ARM: dts; gta04: SPI panel chip select is active low + - ARM: footbridge: fix dc21285 PCI configuration accessors + - mm: hugetlbfs: fix cannot migrate the fallocated HugeTLB page + - mm: hugetlb: fix a race between freeing and dissolving the page + - mm: hugetlb: fix a race between isolating and freeing page + - mm: hugetlb: remove VM_BUG_ON_PAGE from page_huge_active + - mm, compaction: move high_pfn to the for loop scope + - mm: thp: fix MADV_REMOVE deadlock on shmem THP + - mm/filemap: add missing mem_cgroup_uncharge() to + __add_to_page_cache_locked() + - x86/build: Disable CET instrumentation in the kernel + - x86/debug: Fix DR6 handling + - x86/debug: Prevent data breakpoints on __per_cpu_offset + - x86/debug: Prevent data breakpoints on cpu_dr7 + - x86/apic: Add extra serialization for non-serializing MSRs + - Input: goodix - add support for Goodix GT9286 chip + - Input: xpad - sync supported devices with fork on GitHub + - Input: ili210x - implement pressure reporting for ILI251x + - md: Set prev_flush_start and flush_bio in an atomic way + - neighbour: Prevent a dead entry from updating gc_list + - net: ip_tunnel: fix mtu calculation + - udp: ipv4: manipulate network header of NATed UDP GRO fraglist + - net: dsa: mv88e6xxx: override existent unicast portvec in port_fdb_add + - net: sched: replaced invalid qdisc tree flush helper in qdisc_replace + - iwlwifi: mvm: don't send RFH_QUEUE_CONFIG_CMD with no queues + * power off stress test will hang on the TGL machines (LP: #1919930) + - [Config] set SND_SOC_SOF_HDA_ALWAYS_ENABLE_DMI_L1 to n + * eeh-basic.sh from powerpc in ubuntu_kernel_selftests failed with unexpected + operator on F-5.8 (LP: #1909428) + - selftests/powerpc: Make the test check in eeh-basic.sh posix compliant + + [ Ubuntu: 5.8.0-1029.31 ] + + * overlayfs calls vfs_setxattr without cap_convert_nscap + - vfs: move cap_convert_nscap() call into vfs_setxattr() + * CVE-2021-3492 + - SAUCE: shiftfs: free allocated memory in shiftfs_btrfs_ioctl_fd_replace() + error paths + - SAUCE: shiftfs: handle copy_to_user() return values correctly + * CVE-2021-29154 + - SAUCE: bpf, x86: Validate computation of branch displacements for x86-64 + - SAUCE: bpf, x86: Validate computation of branch displacements for x86-32 + + -- Tim Gardner Thu, 22 Apr 2021 13:58:09 -0600 + +linux-azure-5.8 (5.8.0-1027.29~20.04.2) focal; urgency=medium + + * focal/linux-azure-5.8: 5.8.0-1027.29~20.04.2 -proposed tracker + (LP: #1921746) + + * Packaging resync (LP: #1786013) + - [Packaging] update update.conf + - [Packaging] update variants + + * Miscellaneous Ubuntu changes + - [Debian] add packaging for linux-azure-5.8 + - [Debian] change package to focal:linux-azure-5.8 + - [Debian] set proper getabis for linux-azure-5.8 + - [Debian] add copy-files helper + - [Debian] add local-mangle helper + - [Debian] adjust indentation in local-mangle to match groovy:linux-azure + - [Config] do not enforce DMESG_RESTRICT + - [Config] disable CONFIG_DEBUG_INFO_BTF + - [Debian] override DMESG_RESTRICT annotation from debian + - [Debian] override DEBUG_INFO_BTF annotation from debian + + [ Ubuntu: 5.8.0-1027.29 ] + + * groovy/linux-azure: 5.8.0-1027.29 -proposed tracker (LP: #1921045) + * Enforce CONFIG_DRM_BOCHS=m (LP: #1916290) + - [Config] azure: Keep CONFIG_DRM_BOCHS disabled + * linux-azure: Install PMEM modules by default (LP: #1921411) + - [Packaging] azure: Move PMEM related modules to linux-modules + * groovy/linux: 5.8.0-49.55 -proposed tracker (LP: #1921053) + * selftests: bpf verifier fails after sanitize_ptr_alu fixes (LP: #1920995) + - bpf: Simplify alu_limit masking for pointer arithmetic + - bpf: Add sanity check for upper ptr_limit + - bpf, selftests: Fix up some test_verifier cases for unprivileged + * Packaging resync (LP: #1786013) + - update dkms package versions + * improper memcg accounting causes NULL pointer derefs (LP: #1918668) + - SAUCE: Revert "mm: memcg/slab: optimize objcg stock draining" + * kernel: Enable CONFIG_BPF_LSM on Ubuntu (LP: #1905975) + - [Config] Enable CONFIG_BPF_LSM + * Groovy update: upstream stable patchset 2021-03-10 (LP: #1918516) + - gpio: mvebu: fix pwm .get_state period calculation + - HID: wacom: Correct NULL dereference on AES pen proximity + - media: v4l2-subdev.h: BIT() is not available in userspace + - RDMA/vmw_pvrdma: Fix network_hdr_type reported in WC + - kernel/io_uring: cancel io_uring before task works + - io_uring: dont kill fasync under completion_lock + - objtool: Don't fail on missing symbol table + - mm/page_alloc: add a missing mm_page_alloc_zone_locked() tracepoint + - mm: fix a race on nr_swap_pages + - tools: Factor HOSTCC, HOSTLD, HOSTAR definitions + - iwlwifi: provide gso_type to GSO packets + - tty: avoid using vfs_iocb_iter_write() for redirected console writes + - ACPI: sysfs: Prefer "compatible" modalias + - kernel: kexec: remove the lock operation of system_transition_mutex + - ALSA: hda/realtek: Enable headset of ASUS B1400CEPE with ALC256 + - ALSA: hda/via: Apply the workaround generically for Clevo machines + - parisc: Enable -mlong-calls gcc option by default when !CONFIG_MODULES + - media: cec: add stm32 driver + - media: hantro: Fix reset_raw_fmt initialization + - media: rc: fix timeout handling after switch to microsecond durations + - media: rc: ite-cir: fix min_timeout calculation + - media: rc: ensure that uevent can be read directly after rc device register + - ARM: dts: tbs2910: rename MMC node aliases + - ARM: dts: ux500: Reserve memory carveouts + - ARM: dts: imx6qdl-gw52xx: fix duplicate regulator naming + - wext: fix NULL-ptr-dereference with cfg80211's lack of commit() + - ASoC: AMD Renoir - refine DMI entries for some Lenovo products + - drm/i915: Always flush the active worker before returning from the wait + - drm/i915/gt: Always try to reserve GGTT address 0x0 + - drivers/nouveau/kms/nv50-: Reject format modifiers for cursor planes + - net: usb: qmi_wwan: added support for Thales Cinterion PLSx3 modem family + - s390: uv: Fix sysfs max number of VCPUs reporting + - s390/vfio-ap: No need to disable IRQ after queue reset + - PM: hibernate: flush swap writer after marking + - x86/entry: Emit a symbol for register restoring thunk + - efi/apple-properties: Reinstate support for boolean properties + - drivers: soc: atmel: Avoid calling at91_soc_init on non AT91 SoCs + - drivers: soc: atmel: add null entry at the end of at91_soc_allowed_list[] + - btrfs: fix possible free space tree corruption with online conversion + - KVM: x86/pmu: Fix HW_REF_CPU_CYCLES event pseudo-encoding in + intel_arch_events[] + - KVM: x86/pmu: Fix UBSAN shift-out-of-bounds warning in intel_pmu_refresh() + - KVM: nVMX: Sync unsync'd vmcs02 state to vmcs12 on migration + - KVM: x86: get smi pending status correctly + - KVM: Forbid the use of tagged userspace addresses for memslots + - xen: Fix XenStore initialisation for XS_LOCAL + - leds: trigger: fix potential deadlock with libata + - arm64: dts: broadcom: Fix USB DMA address translation for Stingray + - mt7601u: fix kernel crash unplugging the device + - mt7601u: fix rx buffer refcounting + - iwlwifi: Fix IWL_SUBDEVICE_NO_160 macro to use the correct bit. + - drm/i915/gt: Clear CACHE_MODE prior to clearing residuals + - drm/i915/pmu: Don't grab wakeref when enabling events + - net/mlx5e: Fix IPSEC stats + - ARM: dts: imx6qdl-kontron-samx6i: fix pwms for lcd-backlight + - drm/nouveau/svm: fail NOUVEAU_SVM_INIT ioctl on unsupported devices + - drm/i915: Check for all subplatform bits + - drm/i915/selftest: Fix potential memory leak + - uapi: fix big endian definition of ipv6_rpl_sr_hdr + - KVM: Documentation: Fix spec for KVM_CAP_ENABLE_CAP_VM + - tee: optee: replace might_sleep with cond_resched + - xen-blkfront: allow discard-* nodes to be optional + - clk: mmp2: fix build without CONFIG_PM + - clk: qcom: gcc-sm250: Use floor ops for sdcc clks + - ARM: imx: build suspend-imx6.S with arm instruction set + - ARM: zImage: atags_to_fdt: Fix node names on added root nodes + - netfilter: nft_dynset: add timeout extension to template + - Revert "RDMA/mlx5: Fix devlink deadlock on net namespace deletion" + - xfrm: Fix oops in xfrm_replay_advance_bmp + - xfrm: fix disable_xfrm sysctl when used on xfrm interfaces + - xfrm: Fix wraparound in xfrm_policy_addr_delta() + - arm64: dts: ls1028a: fix the offset of the reset register + - ARM: dts: imx6qdl-kontron-samx6i: fix i2c_lcd/cam default status + - ARM: dts: imx6qdl-sr-som: fix some cubox-i platforms + - arm64: dts: imx8mp: Correct the gpio ranges of gpio3 + - firmware: imx: select SOC_BUS to fix firmware build + - RDMA/cxgb4: Fix the reported max_recv_sge value + - ASoC: Intel: Skylake: skl-topology: Fix OOPs ib skl_tplg_complete + - pNFS/NFSv4: Fix a layout segment leak in pnfs_layout_process() + - pNFS/NFSv4: Update the layout barrier when we schedule a layoutreturn + - iwlwifi: pcie: set LTR on more devices + - iwlwifi: pcie: use jiffies for memory read spin time limit + - iwlwifi: pcie: reschedule in long-running memory reads + - mac80211: pause TX while changing interface type + - ice: fix FDir IPv6 flexbyte + - ice: Implement flow for IPv6 next header (extension header) + - ice: update dev_addr in ice_set_mac_address even if HW filter exists + - ice: Don't allow more channels than LAN MSI-X available + - ice: Fix MSI-X vector fallback logic + - i40e: acquire VSI pointer only after VF is initialized + - igc: fix link speed advertising + - net/mlx5: Fix memory leak on flow table creation error flow + - net/mlx5e: E-switch, Fix rate calculation for overflow + - net/mlx5e: free page before return + - net/mlx5e: Reduce tc unsupported key print level + - net/mlx5e: Disable hw-tc-offload when MLX5_CLS_ACT config is disabled + - net/mlx5e: Fix CT rule + encap slow path offload and deletion + - net/mlx5e: Correctly handle changing the number of queues when the interface + is down + - net/mlx5e: Revert parameters on errors when changing trust state without + reset + - net/mlx5e: Revert parameters on errors when changing MTU and LRO state + without reset + - can: dev: prevent potential information leak in can_fill_info() + - ACPI/IORT: Do not blindly trust DMA masks from firmware + - iommu/amd: Use IVHD EFR for early initialization of IOMMU features + - iommu/vt-d: Correctly check addr alignment in qi_flush_dev_iotlb_pasid() + - nvme-multipath: Early exit if no path is available + - selftests: forwarding: Specify interface when invoking mausezahn + - rxrpc: Fix memory leak in rxrpc_lookup_local + - NFC: fix resource leak when target index is invalid + - NFC: fix possible resource leak + - ASoC: topology: Properly unregister DAI on removal + - ASoC: topology: Fix memory corruption in soc_tplg_denum_create_values() + - team: protect features update by RCU to avoid deadlock + - tcp: make TCP_USER_TIMEOUT accurate for zero window probes + - tcp: fix TLP timer not set when CA_STATE changes from DISORDER to OPEN + - ICMPv6: Add ICMPv6 Parameter Problem, code 3 definition + - IPv6: reply ICMP error if the first fragment don't include all headers + - iommu/vt-d: Gracefully handle DMAR units with no supported address widths + * xfrm_policy.sh in net from ubuntu_kernel_selftests passed with failed sub- + cases (LP: #1909647) + - selftests: xfrm: fix test return value override issue in xfrm_policy.sh + * CVE-2021-3347 + - futex: Remove put_futex_key() + - futex: Remove needless goto's + - futex: Replace pointless printk in fixup_owner() + - futex: Ensure the correct return value from futex_lock_pi() + - futex: Provide and use pi_state_update_owner() + - rtmutex: Remove unused argument from rt_mutex_proxy_unlock() + - futex: Use pi_state_update_owner() in put_pi_state() + - futex: Simplify fixup_pi_state_owner() + - futex: Handle faults correctly for PI futexes + * CVE-2021-3348 + - nbd: freeze the queue while we're adding connections + * [Regression] ubuntu_bpf failed to build on Groovy (LP: #1917609) + - SAUCE: partially revert "bpf: Zero-fill re-used per-cpu map element" + * alsa/hda: the hdmi audio dosn't work on TGL machines (LP: #1917829) + - ALSA: hda/hdmi: let new platforms assign the pcm slot dynamically + * Groovy update: upstream stable patchset 2021-03-05 (LP: #1917964) + - mtd: rawnand: gpmi: fix dst bit offset when extracting raw payload + - i2c: bpmp-tegra: Ignore unknown I2C_M flags + - platform/x86: i2c-multi-instantiate: Don't create platform device for + INT3515 ACPI nodes + - platform/x86: ideapad-laptop: Disable touchpad_switch for ELAN0634 + - ALSA: seq: oss: Fix missing error check in snd_seq_oss_synth_make_info() + - ALSA: hda/realtek - Limit int mic boost on Acer Aspire E5-575T + - ALSA: hda/via: Add minimum mute flag + - dm crypt: fix copy and paste bug in crypt_alloc_req_aead + - ACPI: scan: Make acpi_bus_get_device() clear return pointer on error + - btrfs: don't get an EINTR during drop_snapshot for reloc + - btrfs: do not double free backref nodes on error + - btrfs: fix lockdep splat in btrfs_recover_relocation + - btrfs: don't clear ret in btrfs_start_dirty_block_groups + - btrfs: send: fix invalid clone operations when cloning from the same file + and root + - writeback: Drop I_DIRTY_TIME_EXPIRE + - fs: fix lazytime expiration handling in __writeback_single_inode() + - pinctrl: ingenic: Fix JZ4760 support + - mmc: core: don't initialize block size from ext_csd if not present + - mmc: sdhci-of-dwcmshc: fix rpmb access + - mmc: sdhci-xenon: fix 1.8v regulator stabilization + - mmc: sdhci-brcmstb: Fix mmc timeout errors on S5 suspend + - dm: avoid filesystem lookup in dm_get_dev_t() + - dm integrity: fix a crash if "recalculate" used without "internal_hash" + - dm integrity: conditionally disable "recalculate" feature + - drm/atomic: put state on error path + - drm/syncobj: Fix use-after-free + - drm/amdgpu: remove gpu info firmware of green sardine + - drm/amd/display: DCN2X Find Secondary Pipe properly in MPO + ODM Case + - drm/i915/gt: Prevent use of engine->wa_ctx after error + - ASoC: Intel: haswell: Add missing pm_ops + - ASoC: rt711: mutex between calibration and power state changes + - SUNRPC: Handle TCP socket sends with kernel_sendpage() again + - HID: sony: select CONFIG_CRC32 + - dm integrity: select CRYPTO_SKCIPHER + - scsi: ufs: Correct the LUN used in eh_device_reset_handler() callback + - scsi: qedi: Correct max length of CHAP secret + - scsi: scsi_debug: Fix memleak in scsi_debug_init() + - scsi: sd: Suppress spurious errors when WRITE SAME is being disabled + - riscv: Fix kernel time_init() + - riscv: Fix sifive serial driver + - riscv: Enable interrupts during syscalls with M-Mode + - HID: logitech-dj: add the G602 receiver + - HID: Ignore battery for Elan touchscreen on ASUS UX550 + - clk: tegra30: Add hda clock default rates to clock driver + - ALSA: hda/tegra: fix tegra-hda on tegra30 soc + - arm64: make atomic helpers __always_inline + - xen: Fix event channel callback via INTX/GSI + - x86/xen: Add xen_no_vector_callback option to test PCI INTX delivery + - dts: phy: fix missing mdio device and probe failure of vsc8541-01 device + - riscv: defconfig: enable gpio support for HiFive Unleashed + - drm/amdgpu/psp: fix psp gfx ctrl cmds + - drm/amd/display: disable dcn10 pipe split by default + - HID: logitech-hidpp: Add product ID for MX Ergo in Bluetooth mode + - drm/amd/display: Fix to be able to stop crc calculation + - drm/nouveau/bios: fix issue shadowing expansion ROMs + - drm/nouveau/privring: ack interrupts the same way as RM + - drm/nouveau/i2c/gm200: increase width of aux semaphore owner fields + - drm/nouveau/mmu: fix vram heap sizing + - drm/nouveau/kms/nv50-: fix case where notifier buffer is at offset 0 + - io_uring: flush timeouts that should already have expired + - libperf tests: If a test fails return non-zero + - libperf tests: Fail when failing to get a tracepoint id + - RISC-V: Set current memblock limit + - RISC-V: Fix maximum allowed phsyical memory for RV32 + - pinctrl: aspeed: g6: Fix PWMG0 pinctrl setting + - pinctrl: mediatek: Fix fallback call path + - scsi: megaraid_sas: Fix MEGASAS_IOC_FIRMWARE regression + - scsi: ufs: ufshcd-pltfrm depends on HAS_IOMEM + - crypto: omap-sham - Fix link error without crypto-engine + - powerpc: Use the common INIT_DATA_SECTION macro in vmlinux.lds.S + - powerpc: Fix alignment bug within the init sections + - arm64: entry: remove redundant IRQ flag tracing + - drm/amdkfd: Fix out-of-bounds read in kdf_create_vcrat_image_cpu() + - i2c: octeon: check correct size of maximum RECV_LEN packet + - platform/x86: intel-vbtn: Drop HP Stream x360 Convertible PC 11 from allow- + list + - platform/x86: hp-wmi: Don't log a warning on HPWMI_RET_UNKNOWN_COMMAND + errors + - gpio: sifive: select IRQ_DOMAIN_HIERARCHY rather than depend on it + - selftests: net: fib_tests: remove duplicate log test + - can: dev: can_restart: fix use after free bug + - can: vxcan: vxcan_xmit: fix use after free bug + - can: peak_usb: fix use after free bugs + - perf evlist: Fix id index for heterogeneous systems + - i2c: sprd: depend on COMMON_CLK to fix compile tests + - iio: common: st_sensors: fix possible infinite loop in st_sensors_irq_thread + - iio: ad5504: Fix setting power-down state + - counter:ti-eqep: remove floor + - cifs: do not fail __smb_send_rqst if non-fatal signals are pending + - irqchip/mips-cpu: Set IPI domain parent chip + - x86/fpu: Add kernel_fpu_begin_mask() to selectively initialize state + - x86/topology: Make __max_die_per_package available unconditionally + - x86/mmx: Use KFPU_387 for MMX string operations + - proc_sysctl: fix oops caused by incorrect command parameters + - mm: memcg/slab: optimize objcg stock draining + - io_uring: fix SQPOLL IORING_OP_CLOSE cancelation state + - intel_th: pci: Add Alder Lake-S support + - intel_th: pci: Add Alder Lake CPU support + - intel_th: pci: Add Alder Lake-P support + - stm class: Fix module init return on allocation failure + - serial: mvebu-uart: fix tx lost characters at power off + - ehci: fix EHCI host controller initialization sequence + - USB: ehci: fix an interrupt calltrace error + - usb: gadget: aspeed: fix stop dma register setting. + - USB: gadget: dummy-hcd: Fix errors in port-reset handling + - usb: udc: core: Use lock when write to soft_connect + - [Config] updateconfigs for USB_BDC_PCI + - usb: bdc: Make bdc pci driver depend on BROKEN + - usb: cdns3: imx: fix writing read-only memory issue + - usb: cdns3: imx: fix can't create core device the second time issue + - xhci: make sure TRB is fully written before giving it to the controller + - xhci: tegra: Delay for disabling LFPS detector + - driver core: Extend device_is_dependent() + - x86/cpu/amd: Set __max_die_per_package on AMD + - cls_flower: call nla_ok() before nla_next() + - netfilter: rpfilter: mask ecn bits before fib lookup + - sh: dma: fix kconfig dependency for G2_DMA + - ASoC: SOF: Intel: fix page fault at probe if i915 init fails + - octeontx2-af: Fix missing check bugs in rvu_cgx.c + - net: dsa: mv88e6xxx: also read STU state in mv88e6250_g1_vtu_getnext + - sh_eth: Fix power down vs. is_opened flag ordering + - cachefiles: Drop superfluous readpages aops NULL check + - lightnvm: fix memory leak when submit fails + - skbuff: back tiny skbs with kmalloc() in __netdev_alloc_skb() too + - kasan: fix unaligned address is unhandled in kasan_remove_zero_shadow + - kasan: fix incorrect arguments passing in kasan_add_zero_shadow + - tcp: fix TCP socket rehash stats mis-accounting + - net_sched: gen_estimator: support large ewma log + - udp: mask TOS bits in udp_v4_early_demux() + - ipv6: create multicast route with RTPROT_KERNEL + - net_sched: avoid shift-out-of-bounds in tcindex_set_parms() + - net_sched: reject silly cell_log in qdisc_get_rtab() + - ipv6: set multicast flag on the multicast route + - net: mscc: ocelot: allow offloading of bridge on top of LAG + - net: Disable NETIF_F_HW_TLS_RX when RXCSUM is disabled + - net: dsa: b53: fix an off by one in checking "vlan->vid" + - tcp: do not mess with cloned skbs in tcp_add_backlog() + - tcp: fix TCP_USER_TIMEOUT with zero window + - net: core: devlink: use right genl user_ptr when handling port param get/set + - pinctrl: qcom: Allow SoCs to specify a GPIO function that's not 0 + - pinctrl: qcom: No need to read-modify-write the interrupt status + - pinctrl: qcom: Properly clear "intr_ack_high" interrupts when unmasking + - pinctrl: qcom: Don't clear pending interrupts when enabling + - tty: implement write_iter + - tty: fix up hung_up_tty_write() conversion + - drm/i915/hdcp: Get conn while content_type changed + - seq_file: add seq_read_iter + - kernfs: implement ->read_iter + - kernfs: implement ->write_iter + - kernfs: wire up ->splice_read and ->splice_write + - fs/pipe: allow sendfile() to pipe again + - Commit 9bb48c82aced ("tty: implement write_iter") converted the tty layer to + use write_iter. Fix the redirected_tty_write declaration also in n_tty and + change the comparisons to use write_iter instead of write. also in n_tty and + change the comparisons to use write_iter instead of write. + * Enforce CONFIG_DRM_BOCHS=m (LP: #1916290) + - [Config] Enforce CONFIG_DRM_BOCHS=m + * Groovy update: upstream stable patchset 2021-02-25 (LP: #1916960) + - btrfs: reloc: fix wrong file extent type check to avoid false ENOENT + - btrfs: prevent NULL pointer dereference in extent_io_tree_panic + - ALSA: doc: Fix reference to mixart.rst + - ASoC: AMD Renoir - add DMI entry for Lenovo ThinkPad X395 + - ASoC: dapm: remove widget from dirty list on free + - x86/hyperv: check cpu mask after interrupt has been disabled + - drm/amdgpu: add green_sardine device id (v2) + - drm/amdgpu: fix DRM_INFO flood if display core is not supported (bug 210921) + - drm/amdgpu: add Green_Sardine APU flag + - drm/amdgpu: add green_sardine support for gpu_info and ip block setting (v2) + - drm/amdgpu: add soc15 common ip block support for green_sardine (v3) + - drm/amdgpu: add new device id for Renior + - drm/i915/gt: Limit VFE threads based on GT + - drm/i915/backlight: fix CPU mode backlight takeover on LPT + - drm/bridge: sii902x: Refactor init code into separate function + - dt-bindings: display: sii902x: Add supply bindings + - tracing/kprobes: Do the notrace functions check without kprobes on ftrace + - ext4: fix bug for rename with RENAME_WHITEOUT + - cifs: check pointer before freeing + - cifs: fix interrupted close commands + - riscv: return -ENOSYS for syscall -1 + - riscv: Fixup CONFIG_GENERIC_TIME_VSYSCALL + - mips: fix Section mismatch in reference + - mips: lib: uncached: fix non-standard usage of variable 'sp' + - MIPS: boot: Fix unaligned access with CONFIG_MIPS_RAW_APPENDED_DTB + - MIPS: Fix malformed NT_FILE and NT_SIGINFO in 32bit coredumps + - MIPS: relocatable: fix possible boot hangup with KASLR enabled + - RDMA/ocrdma: Fix use after free in ocrdma_dealloc_ucontext_pd() + - ACPI: scan: Harden acpi_device_add() against device ID overflows + - xen/privcmd: allow fetching resource sizes + - compiler.h: Raise minimum version of GCC to 5.1 for arm64 + - mm/hugetlb: fix potential missing huge page size info + - mm/process_vm_access.c: include compat.h + - dm raid: fix discard limits for raid1 + - dm snapshot: flush merged data before committing metadata + - dm integrity: fix flush with external metadata device + - dm integrity: fix the maximum number of arguments + - dm crypt: use GFP_ATOMIC when allocating crypto requests from softirq + - stmmac: intel: change all EHL/TGL to auto detect phy addr + - r8152: Add Lenovo Powered USB-C Travel Hub + - btrfs: tree-checker: check if chunk item end overflows + - ext4: don't leak old mountpoint samples + - ARC: build: remove non-existing bootpImage from KBUILD_IMAGE + - ARC: build: add uImage.lzma to the top-level target + - ARC: build: add boot_targets to PHONY + - ARC: build: move symlink creation to arch/arc/Makefile to avoid race + - ARM: omap2: pmic-cpcap: fix maximum voltage to be consistent with defaults + on xt875 + - ath11k: fix crash caused by NULL rx_channel + - netfilter: ipset: fixes possible oops in mtype_resize + - btrfs: fix async discard stall + - btrfs: merge critical sections of discard lock in workfn + - btrfs: fix transaction leak and crash after RO remount caused by qgroup + rescan + - regulator: bd718x7: Add enable times + - ethernet: ucc_geth: fix definition and size of ucc_geth_tx_global_pram + - habanalabs/gaudi: retry loading TPC f/w on -EINTR + - habanalabs: register to pci shutdown callback + - habanalabs: Fix memleak in hl_device_reset + - hwmon: (pwm-fan) Ensure that calculation doesn't discard big period values + - lib/raid6: Let $(UNROLL) rules work with macOS userland + - spi: fix the divide by 0 error when calculating xfer waiting time + - arch/arc: add copy_user_page() to to fix build error on ARC + - misdn: dsp: select CONFIG_BITREVERSE + - net: ethernet: fs_enet: Add missing MODULE_LICENSE + - nvme-pci: mark Samsung PM1725a as IGNORE_DEV_SUBNQN + - nvme: avoid possible double fetch in handling CQE + - nvmet-rdma: Fix list_del corruption on queue establishment failure + - drm/amd/display: fix sysfs amdgpu_current_backlight_pwm NULL pointer issue + - drm/amdgpu: fix a GPU hang issue when remove device + - drm/amd/pm: fix the failure when change power profile for renoir + - drm/amdgpu: fix potential memory leak during navi12 deinitialization + - usb: typec: Fix copy paste error for NVIDIA alt-mode description + - iommu/vt-d: Fix lockdep splat in sva bind()/unbind() + - ACPI: scan: add stub acpi_create_platform_device() for !CONFIG_ACPI + - drm/msm: Call msm_init_vram before binding the gpu + - ARM: picoxcell: fix missing interrupt-parent properties + - poll: fix performance regression due to out-of-line __put_user() + - bpf: Simplify task_file_seq_get_next() + - bpf: Save correct stopping point in file seq iteration + - cfg80211: select CONFIG_CRC32 + - iommu/vt-d: Update domain geometry in iommu_ops.at(de)tach_dev + - net/mlx5: Fix passing zero to 'PTR_ERR' + - net/mlx5: E-Switch, fix changing vf VLANID + - mm: don't put pinned pages into the swap cache + - perf intel-pt: Fix 'CPU too large' error + - dump_common_audit_data(): fix racy accesses to ->d_name + - ASoC: meson: axg-tdm-interface: fix loopback + - ASoC: meson: axg-tdmin: fix axg skew offset + - ASoC: Intel: fix error code cnl_set_dsp_D0() + - nvmet-rdma: Fix NULL deref when setting pi_enable and traddr INADDR_ANY + - nvme: don't intialize hwmon for discovery controllers + - nvme-tcp: fix possible data corruption with bio merges + - nvme-tcp: Fix warning with CONFIG_DEBUG_PREEMPT + - NFS4: Fix use-after-free in trace_event_raw_event_nfs4_set_lock + - pNFS: We want return-on-close to complete when evicting the inode + - pNFS: Mark layout for return if return-on-close was not sent + - pNFS: Stricter ordering of layoutget and layoutreturn + - NFS: Adjust fs_context error logging + - NFS/pNFS: Don't call pnfs_free_bucket_lseg() before removing the request + - NFS/pNFS: Don't leak DS commits in pnfs_generic_retry_commit() + - NFS/pNFS: Fix a leak of the layout 'plh_outstanding' counter + - NFS: nfs_delegation_find_inode_server must first reference the superblock + - NFS: nfs_igrab_and_active must first reference the superblock + - scsi: ufs: Fix possible power drain during system suspend + - ext4: fix superblock checksum failure when setting password salt + - RDMA/restrack: Don't treat as an error allocation ID wrapping + - RDMA/usnic: Fix memleak in find_free_vf_and_create_qp_grp + - bnxt_en: Improve stats context resource accounting with RDMA driver loaded. + - RDMA/mlx5: Fix wrong free of blue flame register on error + - IB/mlx5: Fix error unwinding when set_has_smi_cap fails + - dm zoned: select CONFIG_CRC32 + - drm/i915/dsi: Use unconditional msleep for the panel_on_delay when there is + no reset-deassert MIPI-sequence + - drm/i915/icl: Fix initing the DSI DSC power refcount during HW readout + - drm/i915/gt: Restore clear-residual mitigations for Ivybridge, Baytrail + - mm, slub: consider rest of partial list if acquire_slab() fails + - iommu/vt-d: Fix unaligned addresses for intel_flush_svm_range_dev() + - net: sunrpc: interpret the return value of kstrtou32 correctly + - selftests: netfilter: Pass family parameter "-f" to conntrack tool + - dm: eliminate potential source of excessive kernel log noise + - ALSA: fireface: Fix integer overflow in transmit_midi_msg() + - ALSA: firewire-tascam: Fix integer overflow in midi_port_work() + - netfilter: conntrack: fix reading nf_conntrack_buckets + - netfilter: nf_nat: Fix memleak in nf_nat_init + - netfilter: nft_compat: remove flush counter optimization + - kbuild: enforce -Werror=return-type + - [Config] updateconfigs for KPROBE_EVENTS_ON_NOTRACE + - x86/hyperv: Initialize clockevents after LAPIC is initialized + - bpf: Fix signed_{sub,add32}_overflows type handling + - nfsd4: readdirplus shouldn't return parent of export + - bpf: Don't leak memory in bpf getsockopt when optlen == 0 + - bpf: Support PTR_TO_MEM{,_OR_NULL} register spilling + - bpf: Fix helper bpf_map_peek_elem_proto pointing to wrong callback + - net: ipa: modem: add missing SET_NETDEV_DEV() for proper sysfs links + - net: fix use-after-free when UDP GRO with shared fraglist + - udp: Prevent reuseport_select_sock from reading uninitialized socks + - netxen_nic: fix MSI/MSI-x interrupts + - net: ipv6: Validate GSO SKB before finish IPv6 processing + - tipc: fix NULL deref in tipc_link_xmit() + - mlxsw: core: Add validation of transceiver temperature thresholds + - mlxsw: core: Increase critical threshold for ASIC thermal zone + - net: mvpp2: Remove Pause and Asym_Pause support + - rndis_host: set proper input size for OID_GEN_PHYSICAL_MEDIUM request + - esp: avoid unneeded kmap_atomic call + - net: dcb: Validate netlink message in DCB handler + - net: dcb: Accept RTM_GETDCB messages carrying set-like DCB commands + - rxrpc: Call state should be read with READ_ONCE() under some circumstances + - i40e: fix potential NULL pointer dereferencing + - net: stmmac: Fixed mtu channged by cache aligned + - net: sit: unregister_netdevice on newlink's error path + - net: stmmac: fix taprio schedule configuration + - net: stmmac: fix taprio configuration when base_time is in the past + - net: avoid 32 x truesize under-estimation for tiny skbs + - rxrpc: Fix handling of an unsupported token type in rxrpc_read() + - net: stmmac: use __napi_schedule() for PREEMPT_RT + - drm/panel: otm8009a: allow using non-continuous dsi clock + - mac80211: do not drop tx nulldata packets on encrypted links + - mac80211: check if atf has been disabled in __ieee80211_schedule_txq + - net: dsa: unbind all switches from tree when DSA master unbinds + - cxgb4/chtls: Fix tid stuck due to wrong update of qid + - spi: fsl: Fix driver breakage when SPI_CS_HIGH is not set in spi->mode + - spi: cadence: cache reference clock rate during probe + - usb: ohci: Make distrust_firmware param default to false + - elfcore: fix building with clang + - spi: npcm-fiu: simplify the return expression of npcm_fiu_probe() + - spi: npcm-fiu: Disable clock in probe error path + * CVE-2021-20239 + - net, sctp, filter: remap copy_from_user failure error + + -- Krzysztof Kozlowski Tue, 06 Apr 2021 16:13:53 +0200 + +linux-azure-5.8 (5.8.0-1026.28~20.04.1) focal; urgency=medium + + * Empty entry + + -- Krzysztof Kozlowski Mon, 29 Mar 2021 10:38:34 +0200 + +linux-azure (5.8.0-1026.28) groovy; urgency=medium + + [ Ubuntu: 5.8.0-48.54 ] + + * CVE-2020-27170 + - bpf: Fix off-by-one for area size in creating mask to left + * CVE-2020-27171 + - bpf: Prohibit alu ops for pointer types not defining ptr_limit + + -- Thadeu Lima de Souza Cascardo Fri, 19 Mar 2021 19:28:49 -0300 + +linux-azure (5.8.0-1025.27) groovy; urgency=medium + + [ Ubuntu: 5.8.0-47.53 ] + + * binary assembly failures with CONFIG_MODVERSIONS present (LP: #1919315) + - [Packaging] quiet (nomially) benign errors in BUILD script + * CVE-2021-3444 + - bpf: Fix 32 bit src register truncation on div/mod + - bpf: Fix truncation handling for mod32 dst reg wrt zero + * CVE-2021-27365 + - scsi: iscsi: Verify lengths on passthrough PDUs + - sysfs: Add sysfs_emit and sysfs_emit_at to format sysfs output + - scsi: iscsi: Ensure sysfs attributes are limited to PAGE_SIZE + * CVE-2021-27363 // CVE-2021-27364 + - scsi: iscsi: Restrict sessions and handles to admin capabilities + + -- Stefan Bader Wed, 17 Mar 2021 15:00:15 +0100 + +linux-azure (5.8.0-1024.26) groovy; urgency=medium + + * groovy/linux-azure: 5.8.0-1024.26 -proposed tracker (LP: #1916130) + + * Azure kernel for focal misses binder and ashmem kernel modules + (LP: #1914568) + - [Config] Enable CONFIG_ASHMEM=m, CONFIG_ANDROID_BINDER_IPC=m + - azure: [Config] Disable ION + + * Please trust Canonical Livepatch Service kmod signing key (LP: #1898716) + - azure: [Config] enable CONFIG_MODVERSIONS=y + - azure: [Packaging] build canonical-certs.pem from branch/arch certs + - azure: [Config] Allow ASM_MODVERSIONS + + [ Ubuntu: 5.8.0-45.51 ] + + * groovy/linux: 5.8.0-45.51 -proposed tracker (LP: #1916143) + * Please trust Canonical Livepatch Service kmod signing key (LP: #1898716) + - [Config] enable CONFIG_MODVERSIONS=y + - [Packaging] build canonical-certs.pem from branch/arch certs + - [Config] add Canonical Livepatch Service key to SYSTEM_TRUSTED_KEYS + - [Config] add ubuntu-drivers key to SYSTEM_TRUSTED_KEYS + - [Config] Allow ASM_MODVERSIONS and MODULE_REL_CRCS + * CVE-2021-20194 + - bpf, cgroup: Fix optlen WARN_ON_ONCE toctou + - bpf, cgroup: Fix problematic bounds check + * Missing device id for Intel TGL-H ISH [8086:43fc] in intel-ish-hid driver + (LP: #1914543) + - HID: intel-ish-hid: ipc: Add Tiger Lake H PCI device ID + * Prevent thermal shutdown during boot process (LP: #1906168) + - thermal/core: Emit a warning if the thermal zone is updated without ops + - thermal/core: Add critical and hot ops + - thermal/drivers/acpi: Use hot and critical ops + - thermal/drivers/rcar: Remove notification usage + - thermal: int340x: Fix unexpected shutdown at critical temperature + - thermal: intel: pch: Fix unexpected shutdown at critical temperature + * geneve overlay network on vlan interface broken with offload enabled + (LP: #1914447) + - net/mlx5e: Fix SWP offsets when vlan inserted by driver + * Groovy update: upstream stable patchset 2021-02-11 (LP: #1915473) + - net: cdc_ncm: correct overhead in delayed_ndp_size + - net: hns3: fix the number of queues actually used by ARQ + - net: hns3: fix a phy loopback fail issue + - net: stmmac: dwmac-sun8i: Balance internal PHY resource references + - net: stmmac: dwmac-sun8i: Balance internal PHY power + - net: vlan: avoid leaks on register_vlan_dev() failures + - net/sonic: Fix some resource leaks in error handling paths + - net: ipv6: fib: flush exceptions when purging route + - tools: selftests: add test for changing routes with PTMU exceptions + - net: fix pmtu check in nopmtudisc mode + - net: ip: always refragment ip defragmented packets + - octeontx2-af: fix memory leak of lmac and lmac->name + - nexthop: Fix off-by-one error in error path + - nexthop: Unlink nexthop group entry in error path + - s390/qeth: fix L2 header access in qeth_l3_osa_features_check() + - net: dsa: lantiq_gswip: Exclude RMII from modes that report 1 GbE + - net/mlx5: Use port_num 1 instead of 0 when delete a RoCE address + - net/mlx5e: ethtool, Fix restriction of autoneg with 56G + - chtls: Fix hardware tid leak + - chtls: Remove invalid set_tcb call + - chtls: Fix panic when route to peer not configured + - chtls: Replace skb_dequeue with skb_peek + - chtls: Added a check to avoid NULL pointer dereference + - chtls: Fix chtls resources release sequence + - HID: wacom: Fix memory leakage caused by kfifo_alloc + - ARM: OMAP2+: omap_device: fix idling of devices during probe + - i2c: sprd: use a specific timeout to avoid system hang up issue + - dmaengine: dw-edma: Fix use after free in dw_edma_alloc_chunk() + - can: tcan4x5x: fix bittiming const, use common bittiming from m_can driver + - can: m_can: m_can_class_unregister(): remove erroneous m_can_clk_stop() + - can: kvaser_pciefd: select CONFIG_CRC32 + - cpufreq: powernow-k8: pass policy rather than use cpufreq_cpu_get() + - spi: stm32: FIFO threshold level - fix align packet size + - i2c: i801: Fix the i2c-mux gpiod_lookup_table not being properly terminated + - dmaengine: mediatek: mtk-hsdma: Fix a resource leak in the error handling + path of the probe function + - dmaengine: xilinx_dma: check dma_async_device_register return value + - dmaengine: xilinx_dma: fix incompatible param warning in _child_probe() + - dmaengine: xilinx_dma: fix mixed_enum_type coverity warning + - qed: select CONFIG_CRC32 + - wil6210: select CONFIG_CRC32 + - block: rsxx: select CONFIG_CRC32 + - lightnvm: select CONFIG_CRC32 + - iommu/intel: Fix memleak in intel_irq_remapping_alloc + - bpftool: Fix compilation failure for net.o with older glibc + - net/mlx5e: Fix memleak in mlx5e_create_l2_table_groups + - net/mlx5e: Fix two double free cases + - regmap: debugfs: Fix a memory leak when calling regmap_attach_dev + - wan: ds26522: select CONFIG_BITREVERSE + - regulator: qcom-rpmh-regulator: correct hfsmps515 definition + - net: mvpp2: disable force link UP during port init procedure + - KVM: arm64: Don't access PMCR_EL0 when no PMU is available + - block: fix use-after-free in disk_part_iter_next + - net: drop bogus skb with CHECKSUM_PARTIAL and offset beyond end of trimmed + packet + - regmap: debugfs: Fix a reversed if statement in regmap_debugfs_init() + - drm/panfrost: Don't corrupt the queue mutex on open/close + - scsi: ufs: Fix -Wsometimes-uninitialized warning + - btrfs: skip unnecessary searches for xattrs when logging an inode + - net: stmmac: dwmac-sun8i: Fix probe error handling + - net: stmmac: dwmac-sun8i: Balance syscon (de)initialization + - net: bareudp: add missing error handling for bareudp_link_config() + - ptp: ptp_ines: prevent build when HAS_IOMEM is not set + - chtls: Avoid unnecessary freeing of oreq pointer + - nexthop: Bounce NHA_GATEWAY in FDB nexthop groups + - net/mlx5e: In skb build skip setting mark in switchdev mode + - ionic: start queues before announcing link up + - fanotify: Fix sys_fanotify_mark() on native x86-32 + - spi: spi-geni-qcom: Fix geni_spi_isr() NULL dereference in timeout case + - i2c: mediatek: Fix apdma and i2c hand-shake timeout + - interconnect: imx: Add a missing of_node_put after of_device_is_available + - dmaengine: milbeaut-xdmac: Fix a resource leak in the error handling path of + the probe function + - arm64: mm: Fix ARCH_LOW_ADDRESS_LIMIT when !CONFIG_ZONE_DMA + - phy: dp83640: select CONFIG_CRC32 + - zonefs: select CONFIG_CRC32 + - iommu/vt-d: Fix misuse of ALIGN in qi_flush_piotlb() + - nvme-tcp: Fix possible race of io_work and direct send + - arm64: cpufeature: remove non-exist CONFIG_KVM_ARM_HOST + - drm/i915/dp: Track pm_qos per connector + - net: mvneta: fix error message when MTU too large for XDP + - selftests: fib_nexthops: Fix wrong mausezahn invocation + - block/rnbd-clt: avoid module unload race with close confirmation + - drm/panfrost: Remove unused variables in panfrost_job_close() + - tools headers UAPI: Sync linux/fscrypt.h with the kernel sources + * Fix the video can't output through WD19TB connected on TGL's Type-C port + during cold-boot (LP: #1913372) + - drm/dp/mst: Export drm_dp_get_vc_payload_bw() + - drm/i915: Fix the MST PBN divider calculation + * Fix regression introduced by codec PM change (LP: #1912676) + - ASoC: SOF: Intel: hda: Resume codec to do jack detection + - ASoC: SOF: Intel: hda: Modify existing helper to disable WAKEEN + - ASoC: SOF: Intel: hda: Avoid checking jack on system suspend + - ALSA: hda: Balance runtime/system PM if direct-complete is disabled + * Restore palm ejection on multi-input devices (LP: #1913520) + - HID: multitouch: Apply MT_QUIRK_CONFIDENCE quirk for multi-input devices + * intel-hid is not loaded on new Intel platform (LP: #1907160) + - platform/x86: intel-hid: add Rocket Lake ACPI device ID + * Remove scary stack trace from Realtek WiFi driver (LP: #1913263) + - rtw88: reduce the log level for failure of tx report + * Groovy update: upstream stable patchset 2021-02-05 (LP: #1914832) + - i40e: Fix Error I40E_AQ_RC_EINVAL when removing VFs + - iavf: fix double-release of rtnl_lock + - net/sched: sch_taprio: ensure to reset/destroy all child qdiscs + - net: mvpp2: Add TCAM entry to drop flow control pause frames + - net: mvpp2: prs: fix PPPoE with ipv6 packet parse + - net: systemport: set dev->max_mtu to UMAC_MAX_MTU_SIZE + - ethernet: ucc_geth: fix use-after-free in ucc_geth_remove() + - ethernet: ucc_geth: set dev->max_mtu to 1518 + - ionic: account for vlan tag len in rx buffer len + - atm: idt77252: call pci_disable_device() on error path + - net: mvpp2: Fix GoP port 3 Networking Complex Control configurations + - ibmvnic: fix login buffer memory leak + - ibmvnic: continue fatal error reset after passive init + - net: ethernet: mvneta: Fix error handling in mvneta_probe + - virtio_net: Fix recursive call to cpus_read_lock() + - net/ncsi: Use real net-device for response handler + - net: ethernet: Fix memleak in ethoc_probe + - net-sysfs: take the rtnl lock when storing xps_cpus + - net-sysfs: take the rtnl lock when accessing xps_cpus_map and num_tc + - net-sysfs: take the rtnl lock when storing xps_rxqs + - net-sysfs: take the rtnl lock when accessing xps_rxqs_map and num_tc + - net: ethernet: ti: cpts: fix ethtool output when no ptp_clock registered + - tun: fix return value when the number of iovs exceeds MAX_SKB_FRAGS + - bnxt_en: Check TQM rings for maximum supported value. + - net: mvpp2: fix pkt coalescing int-threshold configuration + - bnxt_en: Fix AER recovery. + - ipv4: Ignore ECN bits for fib lookups in fib_compute_spec_dst() + - net: sched: prevent invalid Scell_log shift count + - net: hns: fix return value check in __lb_other_process() + - erspan: fix version 1 check in gre_parse_header() + - net: hdlc_ppp: Fix issues when mod_timer is called while timer is running + - bareudp: set NETIF_F_LLTX flag + - bareudp: Fix use of incorrect min_headroom size + - vhost_net: fix ubuf refcount incorrectly when sendmsg fails + - r8169: work around power-saving bug on some chip versions + - net: dsa: lantiq_gswip: Enable GSWIP_MII_CFG_EN also for internal PHYs + - net: dsa: lantiq_gswip: Fix GSWIP_MII_CFG(p) register access + - CDC-NCM: remove "connected" log message + - ibmvnic: fix: NULL pointer dereference. + - net: usb: qmi_wwan: add Quectel EM160R-GL + - stmmac: intel: Add PCI IDs for TGL-H platform + - workqueue: Kick a worker based on the actual activation of delayed works + - scsi: ufs: Fix wrong print message in dev_err() + - scsi: ufs-pci: Fix restore from S4 for Intel controllers + - scsi: ufs-pci: Ensure UFS device is in PowerDown mode for suspend-to-disk + ->poweroff() + - scsi: ufs-pci: Fix recovery from hibernate exit errors for Intel controllers + - blk-mq: remove the BLK_MQ_REQ_INTERNAL flag + - scsi: block: Introduce BLK_MQ_REQ_PM + - scsi: ide: Do not set the RQF_PREEMPT flag for sense requests + - scsi: ide: Mark power management requests with RQF_PM instead of RQF_PREEMPT + - scsi: scsi_transport_spi: Set RQF_PM for domain validation commands + - scsi: core: Only process PM requests if rpm_status != RPM_ACTIVE + - local64.h: make mandatory + - lib/genalloc: fix the overflow when size is too big + - depmod: handle the case of /sbin/depmod without /sbin in PATH + - scsi: ufs: Clear UAC for FFU and RPMB LUNs + - kbuild: don't hardcode depmod path + - Bluetooth: revert: hci_h5: close serdev device and free hu in h5_close + - scsi: block: Remove RQF_PREEMPT and BLK_MQ_REQ_PREEMPT + - scsi: block: Do not accept any requests while suspended + - crypto: ecdh - avoid buffer overflow in ecdh_set_secret() + - crypto: asym_tpm: correct zero out potential secrets + - powerpc: Handle .text.{hot,unlikely}.* in linker script + - Staging: comedi: Return -EFAULT if copy_to_user() fails + - staging: mt7621-dma: Fix a resource leak in an error handling path + - usb: gadget: enable super speed plus + - USB: cdc-acm: blacklist another IR Droid device + - USB: cdc-wdm: Fix use after free in service_outstanding_interrupt(). + - usb: dwc3: meson-g12a: disable clk on error handling path in probe + - usb: dwc3: gadget: Clear wait flag on dequeue + - usb: dwc3: ulpi: Use VStsDone to detect PHY regs access completion + - usb: dwc3: ulpi: Replace CPU-based busyloop with Protocol-based one + - usb: dwc3: ulpi: Fix USB2.0 HS/FS/LS PHY suspend regression + - usb: chipidea: ci_hdrc_imx: add missing put_device() call in + usbmisc_get_init_data() + - USB: xhci: fix U1/U2 handling for hardware with XHCI_INTEL_HOST quirk set + - usb: usbip: vhci_hcd: protect shift size + - usb: uas: Add PNY USB Portable SSD to unusual_uas + - USB: serial: iuu_phoenix: fix DMA from stack + - USB: serial: option: add LongSung M5710 module support + - USB: serial: option: add Quectel EM160R-GL + - USB: yurex: fix control-URB timeout handling + - USB: usblp: fix DMA to stack + - ALSA: usb-audio: Fix UBSAN warnings for MIDI jacks + - usb: gadget: select CONFIG_CRC32 + - USB: Gadget: dummy-hcd: Fix shift-out-of-bounds bug + - usb: gadget: f_uac2: reset wMaxPacketSize + - usb: gadget: function: printer: Fix a memory leak for interface descriptor + - usb: gadget: u_ether: Fix MTU size mismatch with RX packet size + - USB: gadget: legacy: fix return error code in acm_ms_bind() + - usb: gadget: Fix spinlock lockup on usb_function_deactivate + - usb: gadget: configfs: Preserve function ordering after bind failure + - usb: gadget: configfs: Fix use-after-free issue with udc_name + - USB: serial: keyspan_pda: remove unused variable + - hwmon: (amd_energy) fix allocation of hwmon_channel_info config + - mm: make wait_on_page_writeback() wait for multiple pending writebacks + - x86/mm: Fix leak of pmd ptlock + - kvm: check tlbs_dirty directly + - task_work: cleanup notification modes + - x86/resctrl: Use an IPI instead of task_work_add() to update PQR_ASSOC MSR + - x86/resctrl: Don't move a task to the same resource group + - blk-iocost: fix NULL iocg deref from racing against initialization + - ALSA: hda/via: Fix runtime PM for Clevo W35xSS + - ALSA: hda/conexant: add a new hda codec CX11970 + - ALSA: hda/realtek - Fix speaker volume control on Lenovo C940 + - ALSA: hda/realtek: Add mute LED quirk for more HP laptops + - ALSA: hda/realtek: Add two "Intel Reference board" SSID in the ALC256. + - iommu/vt-d: Move intel_iommu info from struct intel_svm to struct + intel_svm_dev + - btrfs: send: fix wrong file path when there is an inode with a pending rmdir + - Revert "device property: Keep secondary firmware node secondary by type" + - dmabuf: fix use-after-free of dmabuf's file->f_inode + - arm64: link with -z norelro for LLD or aarch64-elf + - drm/i915: clear the shadow batch + - netfilter: x_tables: Update remaining dereference to RCU + - netfilter: ipset: fix shift-out-of-bounds in htable_bits() + - netfilter: xt_RATEEST: reject non-null terminated string from userspace + - netfilter: nft_dynset: report EOPNOTSUPP on missing set feature + - dmaengine: idxd: off by one in cleanup code + - x86/mtrr: Correct the range check before performing MTRR type lookups + - KVM: x86: fix shift out of bounds reported by UBSAN + - rtlwifi: rise completion at the last step of firmware callback + * Groovy update: upstream stable patchset 2021-02-03 (LP: #1914472) + - net/sched: sch_taprio: reset child qdiscs before freeing them + - mptcp: fix security context on server socket + - ethtool: fix error paths in ethnl_set_channels() + - ethtool: fix string set id check + - md/raid10: initialize r10_bio->read_slot before use. + - drm/amd/display: Add get_dig_frontend implementation for DCEx + - io_uring: close a small race gap for files cancel + - jffs2: Allow setting rp_size to zero during remounting + - jffs2: Fix NULL pointer dereference in rp_size fs option parsing + - scsi: block: Fix a race in the runtime power management code + - mm/hugetlb: fix deadlock in hugetlb_cow error path + - mm: memmap defer init doesn't work as expected + - lib/zlib: fix inflating zlib streams on s390 + - uapi: move constants from to + - tools headers UAPI: Sync linux/const.h with the kernel headers + - cgroup: Fix memory leak when parsing multiple source parameters + - zlib: move EXPORT_SYMBOL() and MODULE_LICENSE() out of dfltcc_syms.c + - scsi: cxgb4i: Fix TLS dependency + - Bluetooth: hci_h5: close serdev device and free hu in h5_close + - fbcon: Disable accelerated scrolling + - reiserfs: add check for an invalid ih_entry_count + - misc: vmw_vmci: fix kernel info-leak by initializing dbells in + vmci_ctx_get_chkpt_doorbells() + - media: gp8psk: initialize stats at power control logic + - f2fs: fix shift-out-of-bounds in sanity_check_raw_super() + - ALSA: seq: Use bool for snd_seq_queue internal flags + - ALSA: rawmidi: Access runtime->avail always in spinlock + - bfs: don't use WARNING: string when it's just info. + - ext4: check for invalid block size early when mounting a file system + - fcntl: Fix potential deadlock in send_sig{io, urg}() + - rtc: sun6i: Fix memleak in sun6i_rtc_clk_init + - module: set MODULE_STATE_GOING state when a module fails to load + - quota: Don't overflow quota file offsets + - rtc: pl031: fix resource leak in pl031_probe + - powerpc: sysdev: add missing iounmap() on error in mpic_msgr_probe() + - i3c master: fix missing destroy_workqueue() on error in i3c_master_register + - NFSv4: Fix a pNFS layout related use-after-free race when freeing the inode + - f2fs: avoid race condition for shrinker count + - module: delay kobject uevent until after module init call + - fs/namespace.c: WARN if mnt_count has become negative + - watchdog: rti-wdt: fix reference leak in rti_wdt_probe + - um: random: Register random as hwrng-core device + - um: ubd: Submit all data segments atomically + - ceph: fix inode refcount leak when ceph_fill_inode on non-I_NEW inode fails + - drm/amd/display: updated wm table for Renoir + - tick/sched: Remove bogus boot "safety" check + - s390: always clear kernel stack backchain before calling functions + - io_uring: remove racy overflow list fast checks + - ALSA: pcm: Clear the full allocated memory at hw_params + - dm verity: skip verity work if I/O error when system is shutting down + - rtc: pcf2127: move watchdog initialisation to a separate function + - rtc: pcf2127: only use watchdog when explicitly available + - dt-bindings: rtc: add reset-source property + - kdev_t: always inline major/minor helper functions + - ALSA: hda/realtek - Modify Dell platform name + - scsi: ufs: Allow an error return value from ->device_reset() + - scsi: ufs: Re-enable WriteBooster after device reset + - RDMA/siw,rxe: Make emulated devices virtual in the device tree + - fuse: fix bad inode + - rwsem: Implement down_read_killable_nested + - rwsem: Implement down_read_interruptible + - exec: Transform exec_update_mutex into a rw_semaphore + - mwifiex: Fix possible buffer overflows in mwifiex_cmd_802_11_ad_hoc_start + + -- William Breathitt Gray Wed, 24 Feb 2021 07:13:34 -0500 + +linux-azure (5.8.0-1023.25) groovy; urgency=medium + + * groovy/linux-azure: 5.8.0-1023.25 -proposed tracker (LP: #1914792) + + * Groovy update: upstream stable patchset 2021-01-12 (LP: #1911235) + - [Config] azure: update config for INFINIBAND_VIRT_DMA + + * Groovy update: upstream stable patchset 2021-01-13 (LP: #1911476) + - [Config] azure: updateconfigs for ZSMALLOC_PGTABLE_MAPPING + + * Revert or drop obsolete patches for PCI (LP: #1911205) + - Revert "UBUNTU: SAUCE: pci-hyperv: Use only 16 bit integer for PCI domain" + - Revert "Revert "PCI: hv: Make sure the bus domain is really unique"" + + * Disable Atari partition support for cloud kernels (LP: #1908264) + - [Config] azure: Disable ATARI_PARTITION + + * Enable boot from NVMe device for all images (LP: #1908571) + - [Config] azure: CONFIG_PCI_HYPERV=y + + [ Ubuntu: 5.8.0-44.50 ] + + * groovy/linux: 5.8.0-44.50 -proposed tracker (LP: #1914805) + * Packaging resync (LP: #1786013) + - update dkms package versions + - update dkms package versions + * Introduce the new NVIDIA 460-server series and update the 460 series + (LP: #1913200) + - [Config] dkms-versions -- drop NVIDIA 435 455 and 440-server + - [Config] dkms-versions -- add the 460-server nvidia driver + * [SRU][G/H/U/OEM-5.10] re-enable s0ix of e1000e (LP: #1910541) + - Revert "UBUNTU: SAUCE: e1000e: bump up timeout to wait when ME un-configure + ULP mode" + - e1000e: Only run S0ix flows if shutdown succeeded + - Revert "e1000e: disable s0ix entry and exit flows for ME systems" + - e1000e: Export S0ix flags to ethtool + * suspend only works once on ThinkPad X1 Carbon gen 7 (LP: #1865570) // + [SRU][G/H/U/OEM-5.10] re-enable s0ix of e1000e (LP: #1910541) + - e1000e: bump up timeout to wait when ME un-configures ULP mode + * Cannot probe sata disk on sata controller behind VMD: ata1.00: failed to + IDENTIFY (I/O error, err_mask=0x4) (LP: #1894778) + - PCI: vmd: Offset Client VMD MSI-X vectors + * Enable mute and micmute LED on HP EliteBook 850 G7 (LP: #1910102) + - ALSA: hda/realtek: Enable mute and micmute LED on HP EliteBook 850 G7 + * SYNA30B4:00 06CB:CE09 Mouse on HP EliteBook 850 G7 not working at all + (LP: #1908992) + - HID: multitouch: Enable multi-input for Synaptics pointstick/touchpad device + * HD Audio Device PCI ID for the Intel Cometlake-R platform (LP: #1912427) + - SAUCE: ALSA: hda: Add Cometlake-R PCI ID + * switch to an autogenerated nvidia series based core via dkms-versions + (LP: #1912803) + - [Packaging] nvidia -- use dkms-versions to define versions built + - [Packaging] update-version-dkms -- maintain flags fields + - [Config] dkms-versions -- add transitional/skip information for nvidia + packages + * udpgro.sh in net from ubuntu_kernel_selftests seems not reflecting sub-test + result (LP: #1908499) + - selftests: fix the return value for UDP GRO test + * [UBUNTU 21.04] vfio: pass DMA availability information to userspace + (LP: #1907421) + - vfio/type1: Refactor vfio_iommu_type1_ioctl() + - vfio iommu: Add dma available capability + * qede: Kubernetes Internal DNS Failure due to QL41xxx NIC not supporting IPIP + tx csum offload (LP: #1909062) + - qede: fix offload for IPIP tunnel packets + * Use DCPD to control HP DreamColor panel (LP: #1911001) + - SAUCE: drm/dp: Another HP DreamColor panel brigntness fix + * Fix right sounds and mute/micmute LEDs for HP ZBook Fury 15/17 G7 Mobile + Workstation (LP: #1910561) + - ALSA: hda/realtek: fix right sounds and mute/micmute LEDs for HP machines + * Ubuntu 20.04 - multicast counter is not increased in ip -s (LP: #1901842) + - net/mlx5e: Fix multicast counter not up-to-date in "ip -s" + * eeh-basic.sh in powerpc from ubuntu_kernel_selftests timeout with 5.4 P8 / + P9 (LP: #1882503) + - selftests/powerpc/eeh: disable kselftest timeout setting for eeh-basic + * DMI entry syntax fix for Pegatron / ByteSpeed C15B (LP: #1910639) + - Input: i8042 - unbreak Pegatron C15B + * update ENA driver, incl. new ethtool stats (LP: #1910291) + - net: ena: ethtool: convert stat_offset to 64 bit resolution + - net: ena: ethtool: Add new device statistics + - net: ena: ethtool: add stats printing to XDP queues + - net: ena: xdp: add queue counters for xdp actions + - net: ena: Change license into format to SPDX in all files + - net: ena: Change log message to netif/dev function + - net: ena: Remove redundant print of placement policy + - net: ena: Change RSS related macros and variables names + - net: ena: Fix all static chekers' warnings + - drivers/net/ethernet: remove incorrectly formatted doc + - net: ena: Capitalize all log strings and improve code readability + * Groovy update: upstream stable patchset 2021-01-15 (LP: #1912027) + - net: ipconfig: Avoid spurious blank lines in boot log + - x86/split-lock: Avoid returning with interrupts enabled + - exfat: Avoid allocating upcase table using kcalloc() + - soc/tegra: fuse: Fix index bug in get_process_id + - usb: mtu3: fix memory corruption in mtu3_debugfs_regset() + - USB: serial: option: add interface-number sanity check to flag handling + - USB: gadget: f_acm: add support for SuperSpeed Plus + - USB: gadget: f_midi: setup SuperSpeed Plus descriptors + - usb: gadget: f_fs: Re-use SS descriptors for SuperSpeedPlus + - USB: gadget: f_rndis: fix bitrate for SuperSpeed and above + - usb: chipidea: ci_hdrc_imx: Pass DISABLE_DEVICE_STREAMING flag to imx6ul + - ARM: dts: exynos: fix roles of USB 3.0 ports on Odroid XU + - ARM: dts: exynos: fix USB 3.0 VBUS control and over-current pins on + Exynos5410 + - ARM: dts: exynos: fix USB 3.0 pins supply being turned off on Odroid XU + - coresight: tmc-etf: Fix NULL ptr dereference in tmc_enable_etf_sink_perf() + - coresight: tmc-etr: Check if page is valid before dma_map_page() + - coresight: tmc-etr: Fix barrier packet insertion for perf buffer + - coresight: etb10: Fix possible NULL ptr dereference in etb_enable_perf() + - f2fs: fix to seek incorrect data offset in inline data file + - scsi: megaraid_sas: Check user-provided offsets + - HID: i2c-hid: add Vero K147 to descriptor override + - serial_core: Check for port state when tty is in error state + - fscrypt: remove kernel-internal constants from UAPI header + - fscrypt: rename DCACHE_ENCRYPTED_NAME to DCACHE_NOKEY_NAME + - fscrypt: add fscrypt_is_nokey_name() + - ubifs: prevent creating duplicate encrypted filenames + - ext4: prevent creating duplicate encrypted filenames + - f2fs: prevent creating duplicate encrypted filenames + - Bluetooth: Fix slab-out-of-bounds read in hci_le_direct_adv_report_evt() + - quota: Sanity-check quota file headers on load + - fs: quota: fix array-index-out-of-bounds bug by passing correct argument to + vfs_cleanup_quota_inode() + - media: msi2500: assign SPI bus number dynamically + - crypto: af_alg - avoid undefined behavior accessing salg_name + - nl80211: validate key indexes for cfg80211_registered_device + - md: fix a warning caused by a race between concurrent md_ioctl()s + - drm/gma500: fix double free of gma_connector + - drm/aspeed: Fix Kconfig warning & subsequent build errors + - drm/mcde: Fix handling of platform_get_irq() error + - drm/tve200: Fix handling of platform_get_irq() error + - arm64: dts: renesas: hihope-rzg2-ex: Drop rxc-skew-ps from ethernet-phy node + - arm64: dts: renesas: cat875: Remove rxc-skew-ps from ethernet-phy node + - soc: renesas: rmobile-sysc: Fix some leaks in rmobile_init_pm_domains() + - soc: mediatek: Check if power domains can be powered on at boot time + - arm64: dts: mediatek: mt8183: fix gce incorrect mbox-cells value + - arm64: dts: ipq6018: update the reserved-memory node + - soc: qcom: geni: More properly switch to DMA mode + - Revert "i2c: i2c-qcom-geni: Fix DMA transfer race" + - RDMA/bnxt_re: Set queue pair state when being queried + - rtc: pcf2127: fix pcf2127_nvmem_read/write() returns + - selinux: fix error initialization in inode_doinit_with_dentry() + - ARM: dts: aspeed-g6: Fix the GPIO memory size + - ARM: dts: aspeed: s2600wf: Fix VGA memory region location + - RDMA/core: Fix error return in _ib_modify_qp() + - RDMA/rxe: Compute PSN windows correctly + - x86/mm/ident_map: Check for errors from ident_pud_init() + - ARM: p2v: fix handling of LPAE translation in BE mode + - RDMA/rtrs-clt: Remove destroy_con_cq_qp in case route resolving failed + - RDMA/rtrs-clt: Missing error from rtrs_rdma_conn_established + - RDMA/rtrs-srv: Don't guard the whole __alloc_srv with srv_mutex + - x86/apic: Fix x2apic enablement without interrupt remapping + - sched/deadline: Fix sched_dl_global_validate() + - sched: Reenable interrupts in do_sched_yield() + - drm/amdgpu: fix incorrect enum type + - crypto: talitos - Endianess in current_desc_hdr() + - crypto: talitos - Fix return type of current_desc_hdr() + - crypto: inside-secure - Fix sizeof() mismatch + - ASoC: sun4i-i2s: Fix lrck_period computation for I2S justified mode + - ARM: dts: aspeed: tiogapass: Remove vuart + - drm/amdgpu: fix build_coefficients() argument + - powerpc/64: Set up a kernel stack for secondaries before cpu_restore() + - spi: img-spfi: fix reference leak in img_spfi_resume + - f2fs: call f2fs_get_meta_page_retry for nat page + - RDMA/mlx5: Fix corruption of reg_pages in mlx5_ib_rereg_user_mr() + - drm/msm/dsi_pll_10nm: restore VCO rate during restore_state + - spi: spi-mem: fix reference leak in spi_mem_access_start + - scsi: aacraid: Improve compat_ioctl handlers + - ASoC: pcm: DRAIN support reactivation + - drm/bridge: tpd12s015: Fix irq registering in tpd12s015_probe + - crypto: arm64/poly1305-neon - reorder PAC authentication with SP update + - selinux: fix inode_doinit_with_dentry() LABEL_INVALID error handling + - spi: stm32: fix reference leak in stm32_spi_resume + - x86/mce: Correct the detection of invalid notifier priorities + - drm/edid: Fix uninitialized variable in drm_cvt_modes() + - ath11k: Initialize complete alpha2 for regulatory change + - ath11k: Fix number of rules in filtered ETSI regdomain + - brcmfmac: Fix memory leak for unpaired brcmf_{alloc/free} + - arm64: dts: exynos: Include common syscon restart/poweroff for Exynos7 + - arm64: dts: exynos: Correct psci compatible used on Exynos7 + - drm/panel: simple: Add flags to boe_nv133fhm_n61 + - Bluetooth: Fix null pointer dereference in hci_event_packet() + - Bluetooth: hci_h5: fix memory leak in h5_close + - spi: stm32-qspi: fix reference leak in stm32 qspi operations + - spi: spi-ti-qspi: fix reference leak in ti_qspi_setup + - spi: mt7621: fix missing clk_disable_unprepare() on error in + mt7621_spi_probe + - spi: tegra20-slink: fix reference leak in slink ops of tegra20 + - spi: tegra20-sflash: fix reference leak in tegra_sflash_resume + - spi: tegra114: fix reference leak in tegra spi ops + - spi: bcm63xx-hsspi: fix missing clk_disable_unprepare() on error in + bcm63xx_hsspi_resume + - ASoC: qcom: common: Fix refcounting in qcom_snd_parse_of() + - mwifiex: fix mwifiex_shutdown_sw() causing sw reset failure + - selftest/bpf: Add missed ip6ip6 test back + - ASoC: wm8994: Fix PM disable depth imbalance on error + - ASoC: wm8998: Fix PM disable depth imbalance on error + - spi: sprd: fix reference leak in sprd_spi_remove + - ASoC: arizona: Fix a wrong free in wm8997_probe + - RDMa/mthca: Work around -Wenum-conversion warning + - ASoC: SOF: Intel: fix Kconfig dependency for SND_INTEL_DSP_CONFIG + - arm64: dts: ti: k3-am65*/j721e*: Fix unit address format error for dss node + - MIPS: BCM47XX: fix kconfig dependency bug for BCM47XX_BCMA + - drm/amdgpu: fix compute queue priority if num_kcq is less than 4 + - soc: ti: omap-prm: Do not check rstst bit on deassert if already deasserted + - crypto: Kconfig - CRYPTO_MANAGER_EXTRA_TESTS requires the manager + - crypto: qat - fix status check in qat_hal_put_rel_rd_xfer() + - drm/udl: Fix missing error code in udl_handle_damage() + - staging: greybus: codecs: Fix reference counter leak in error handling + - staging: gasket: interrupt: fix the missed eventfd_ctx_put() in + gasket_interrupt.c + - drm/amdkfd: Put ACPI table after using it + - media: tm6000: Fix sizeof() mismatches + - media: mtk-vcodec: add missing put_device() call in mtk_vcodec_init_dec_pm() + - media: mtk-vcodec: add missing put_device() call in + mtk_vcodec_release_dec_pm() + - media: mtk-vcodec: add missing put_device() call in mtk_vcodec_init_enc_pm() + - media: v4l2-fwnode: Return -EINVAL for invalid bus-type + - media: staging: rkisp1: cap: fix runtime PM imbalance on error + - media: cedrus: fix reference leak in cedrus_start_streaming + - media: platform: add missing put_device() call in mtk_jpeg_probe() and + mtk_jpeg_remove() + - media: venus: core: change clk enable and disable order in resume and + suspend + - media: venus: core: vote for video-mem path + - media: venus: core: vote with average bandwidth and peak bandwidth as zero + - RDMA/cma: Add missing error handling of listen_id + - ASoC: meson: fix COMPILE_TEST error + - scsi: core: Fix VPD LUN ID designator priorities + - media: venus: put dummy vote on video-mem path after last session release + - media: solo6x10: fix missing snd_card_free in error handling case + - video: fbdev: atmel_lcdfb: fix return error code in atmel_lcdfb_of_init() + - mmc: sdhci: tegra: fix wrong unit with busy_timeout + - drm/omap: dmm_tiler: fix return error code in omap_dmm_probe() + - drm/meson: Free RDMA resources after tearing down DRM + - drm/meson: Unbind all connectors on module removal + - drm/meson: dw-hdmi: Register a callback to disable the regulator + - drm/meson: dw-hdmi: Ensure that clocks are enabled before touching the TOP + registers + - iommu/vt-d: include conditionally on CONFIG_INTEL_IOMMU_SVM + - Input: ads7846 - fix race that causes missing releases + - Input: ads7846 - fix integer overflow on Rt calculation + - Input: ads7846 - fix unaligned access on 7845 + - bus: mhi: core: Remove double locking from mhi_driver_remove() + - bus: mhi: core: Fix null pointer access when parsing MHI configuration + - usb/max3421: fix return error code in max3421_probe() + - spi: mxs: fix reference leak in mxs_spi_probe + - selftests/bpf: Fix broken riscv build + - powerpc: Avoid broken GCC __attribute__((optimize)) + - powerpc/feature: Fix CPU_FTRS_ALWAYS by removing CPU_FTRS_GENERIC_32 + - ARM: dts: tacoma: Fix node vs reg mismatch for flash memory + - Revert "powerpc/pseries/hotplug-cpu: Remove double free in error path" + - mfd: htc-i2cpld: Add the missed i2c_put_adapter() in + htcpld_register_chip_i2c() + - EDAC/mce_amd: Use struct cpuinfo_x86.cpu_die_id for AMD NodeId + - scsi: ufs: Avoid to call REQ_CLKS_OFF to CLKS_OFF + - scsi: ufs: Fix clkgating on/off + - rcu: Allow rcu_irq_enter_check_tick() from NMI + - rcu,ftrace: Fix ftrace recursion + - crypto: crypto4xx - Replace bitwise OR with logical OR in crypto4xx_build_pd + - crypto: omap-aes - Fix PM disable depth imbalance in omap_aes_probe + - spi: fix resource leak for drivers without .remove callback + - drm/meson: dw-hdmi: Disable clocks on driver teardown + - drm/meson: dw-hdmi: Enable the iahb clock early enough + - PCI: Disable MSI for Pericom PCIe-USB adapter + - PCI: brcmstb: Initialize "tmp" before use + - soc: ti: knav_qmss: fix reference leak in knav_queue_probe + - soc: ti: Fix reference imbalance in knav_dma_probe + - drivers: soc: ti: knav_qmss_queue: Fix error return code in knav_queue_probe + - soc: qcom: initialize local variable + - arm64: dts: qcom: sm8250: correct compatible for sm8250-mtp + - arm64: dts: qcom: msm8916-samsung-a2015: Disable muic i2c pin bias + - Input: omap4-keypad - fix runtime PM error handling + - clk: meson: Kconfig: fix dependency for G12A + - ath11k: Fix the rx_filter flag setting for peer rssi stats + - RDMA/cxgb4: Validate the number of CQEs + - soundwire: Fix DEBUG_LOCKS_WARN_ON for uninitialized attribute + - memstick: fix a double-free bug in memstick_check + - ARM: dts: at91: sam9x60: add pincontrol for USB Host + - ARM: dts: at91: sama5d4_xplained: add pincontrol for USB Host + - ARM: dts: at91: sama5d3_xplained: add pincontrol for USB Host + - mmc: pxamci: Fix error return code in pxamci_probe + - brcmfmac: fix error return code in brcmf_cfg80211_connect() + - orinoco: Move context allocation after processing the skb + - qtnfmac: fix error return code in qtnf_pcie_probe() + - rsi: fix error return code in rsi_reset_card() + - cw1200: fix missing destroy_workqueue() on error in cw1200_init_common + - dmaengine: mv_xor_v2: Fix error return code in mv_xor_v2_probe() + - arm64: dts: qcom: sdm845: Limit ipa iommu streams + - leds: netxbig: add missing put_device() call in netxbig_leds_get_of_pdata() + - arm64: tegra: Fix DT binding for IO High Voltage entry + - RDMA/cma: Fix deadlock on &lock in rdma_cma_listen_on_all() error unwind + - media: siano: fix memory leak of debugfs members in smsdvb_hotplug + - platform/x86: mlx-platform: Remove PSU EEPROM from default platform + configuration + - platform/x86: mlx-platform: Remove PSU EEPROM from MSN274x platform + configuration + - arm64: dts: qcom: sc7180: limit IPA iommu streams + - RDMA/hns: Avoid setting loopback indicator when smac is same as dmac + - serial: 8250-mtk: Fix reference leak in mtk8250_probe + - samples: bpf: Fix lwt_len_hist reusing previous BPF map + - media: imx214: Fix stop streaming + - mips: cdmm: fix use-after-free in mips_cdmm_bus_discover + - media: max2175: fix max2175_set_csm_mode() error code + - slimbus: qcom-ngd-ctrl: Avoid sending power requests without QMI + - drm/mediatek: Use correct aliases name for ovl + - HSI: omap_ssi: Don't jump to free ID in ssi_add_controller() + - ARM: dts: Remove non-existent i2c1 from 98dx3236 + - arm64: dts: armada-3720-turris-mox: update ethernet-phy handle name + - power: supply: bq25890: Use the correct range for IILIM register + - arm64: dts: rockchip: Set dr_mode to "host" for OTG on rk3328-roc-cc + - power: supply: max17042_battery: Fix current_{avg,now} hiding with no + current sense + - power: supply: axp288_charger: Fix HP Pavilion x2 10 DMI matching + - power: supply: bq24190_charger: fix reference leak + - genirq/irqdomain: Don't try to free an interrupt that has no mapping + - arm64: dts: ls1028a: fix ENETC PTP clock input + - arm64: dts: ls1028a: fix FlexSPI clock input + - arm64: dts: freescale: sl28: combine SPI MTD partitions + - phy: tegra: xusb: Fix usb_phy device driver field + - arm64: dts: qcom: c630: Polish i2c-hid devices + - arm64: dts: qcom: c630: Fix pinctrl pins properties + - PCI: Bounds-check command-line resource alignment requests + - PCI: Fix overflow in command-line resource alignment requests + - PCI: iproc: Fix out-of-bound array accesses + - PCI: iproc: Invalidate correct PAXB inbound windows + - arm64: dts: meson: fix spi-max-frequency on Khadas VIM2 + - arm64: dts: meson-sm1: fix typo in opp table + - soc: amlogic: canvas: add missing put_device() call in meson_canvas_get() + - scsi: pm80xx: Do not sleep in atomic context + - spi: spi-fsl-dspi: Use max_native_cs instead of num_chipselect to set + SPI_MCR + - ARM: dts: at91: at91sam9rl: fix ADC triggers + - RDMA/hns: Fix 0-length sge calculation error + - RDMA/hns: Bugfix for calculation of extended sge + - platform/x86: dell-smbios-base: Fix error return code in dell_smbios_init + - media: i2c: imx219: Selection compliance fixes + - ath11k: Fix an error handling path + - ath10k: Fix the parsing error in service available event + - ath10k: Fix an error handling path + - ath10k: Release some resources in an error handling path + - SUNRPC: rpc_wake_up() should wake up tasks in the correct order + - NFSv4.2: condition READDIR's mask for security label based on LSM state + - SUNRPC: xprt_load_transport() needs to support the netid "rdma6" + - NFSv4: Fix the alignment of page data in the getdeviceinfo reply + - net: sunrpc: Fix 'snprintf' return value check in 'do_xprt_debugfs' + - lockd: don't use interval-based rebinding over TCP + - NFS: switch nfsiod to be an UNBOUND workqueue. + - selftests/seccomp: Update kernel config + - vfio-pci: Use io_remap_pfn_range() for PCI IO memory + - hwmon: (ina3221) Fix PM usage counter unbalance in ina3221_write_enable + - media: tvp5150: Fix wrong return value of tvp5150_parse_dt() + - media: saa7146: fix array overflow in vidioc_s_audio() + - powerpc/perf: Fix crash with is_sier_available when pmu is not set + - powerpc/64: Fix an EMIT_BUG_ENTRY in head_64.S + - powerpc/xmon: Fix build failure for 8xx + - powerpc/perf: Fix the PMU group constraints for threshold events in power10 + - clocksource/drivers/orion: Add missing clk_disable_unprepare() on error path + - clocksource/drivers/cadence_ttc: Fix memory leak in ttc_setup_clockevent() + - clocksource/drivers/ingenic: Fix section mismatch + - iio: hrtimer-trigger: Mark hrtimer to expire in hard interrupt context + - libbpf: Sanitise map names before pinning + - ARM: dts: at91: sam9x60ek: remove bypass property + - ARM: dts: at91: sama5d2: map securam as device + - bpf: Fix bpf_put_raw_tracepoint()'s use of __module_address() + - selftests/bpf: Fix invalid use of strncat in test_sockmap + - pinctrl: falcon: add missing put_device() call in pinctrl_falcon_probe() + - arm64: dts: rockchip: Fix UART pull-ups on rk3328 + - memstick: r592: Fix error return in r592_probe() + - MIPS: Don't round up kernel sections size for memblock_add() + - mt76: mt7915: set fops_sta_stats.owner to THIS_MODULE + - mt76: set fops_tx_stats.owner to THIS_MODULE + - net/mlx5: Properly convey driver version to firmware + - mt76: fix memory leak if device probing fails + - mt76: fix tkip configuration for mt7615/7663 devices + - ASoC: jz4740-i2s: add missed checks for clk_get() + - dm ioctl: fix error return code in target_message + - ASoC: cros_ec_codec: fix uninitialized memory read + - ASoC: qcom: fix QDSP6 dependencies, attempt #3 + - phy: renesas: rcar-gen3-usb2: disable runtime pm in case of failure + - memory: jz4780_nemc: Fix potential NULL dereference in jz4780_nemc_probe() + - clocksource/drivers/arm_arch_timer: Use stable count reader in erratum sne + - clocksource/drivers/arm_arch_timer: Correct fault programming of + CNTKCTL_EL1.EVNTI + - cpufreq: ap806: Add missing MODULE_DEVICE_TABLE + - cpufreq: highbank: Add missing MODULE_DEVICE_TABLE + - cpufreq: mediatek: Add missing MODULE_DEVICE_TABLE + - cpufreq: qcom: Add missing MODULE_DEVICE_TABLE + - cpufreq: st: Add missing MODULE_DEVICE_TABLE + - cpufreq: sun50i: Add missing MODULE_DEVICE_TABLE + - cpufreq: loongson1: Add missing MODULE_ALIAS + - cpufreq: scpi: Add missing MODULE_ALIAS + - cpufreq: vexpress-spc: Add missing MODULE_ALIAS + - Bluetooth: btusb: Add the missed release_firmware() in + btusb_mtk_setup_firmware() + - Bluetooth: btmtksdio: Add the missed release_firmware() in + mtk_setup_firmware() + - block/rnbd-clt: Dynamically alloc buffer for pathname & blk_symlink_name + - block/rnbd: fix a null pointer dereference on dev->blk_symlink_name + - Bluetooth: btusb: Fix detection of some fake CSR controllers with a + bcdDevice val of 0x0134 + - mtd: spi-nor: sst: fix BPn bits for the SST25VF064C + - mtd: spi-nor: ignore errors in spi_nor_unlock_all() + - mtd: spi-nor: atmel: remove global protection flag + - mtd: spi-nor: atmel: fix unlock_all() for AT25FS010/040 + - arm64: dts: meson: g12b: odroid-n2: fix PHY deassert timing requirements + - arm64: dts: meson: fix PHY deassert timing requirements + - ARM: dts: meson: fix PHY deassert timing requirements + - arm64: dts: meson: g12a: x96-max: fix PHY deassert timing requirements + - arm64: dts: meson: g12b: w400: fix PHY deassert timing requirements + - clk: fsl-sai: fix memory leak + - scsi: qedi: Fix missing destroy_workqueue() on error in __qedi_probe + - scsi: pm80xx: Fix error return in pm8001_pci_probe() + - scsi: iscsi: Fix inappropriate use of put_device() + - seq_buf: Avoid type mismatch for seq_buf_init + - scsi: fnic: Fix error return code in fnic_probe() + - platform/x86: mlx-platform: Fix item counter assignment for MSN2700, MSN24xx + systems + - platform/x86: mlx-platform: Fix item counter assignment for MSN2700/ComEx + system + - ARM: 9030/1: entry: omit FP emulation for UND exceptions taken in kernel + mode + - powerpc/pseries/hibernation: drop pseries_suspend_begin() from suspend ops + - powerpc/pseries/hibernation: remove redundant cacheinfo update + - powerpc/powermac: Fix low_sleep_handler with CONFIG_VMAP_STACK + - drm/mediatek: avoid dereferencing a null hdmi_phy on an error message + - ASoC: amd: change clk_get() to devm_clk_get() and add missed checks + - ASoC: max98390: Fix error codes in max98390_dsm_init() + - powerpc/mm: sanity_check_fault() should work for all, not only BOOK3S + - usb: ehci-omap: Fix PM disable depth umbalance in ehci_hcd_omap_probe + - usb: oxu210hp-hcd: Fix memory leak in oxu_create + - speakup: fix uninitialized flush_lock + - nfsd: Fix message level for normal termination + - NFSD: Fix 5 seconds delay when doing inter server copy + - nfs_common: need lock during iterate through the list + - x86/kprobes: Restore BTF if the single-stepping is cancelled + - scsi: qla2xxx: Fix N2N and NVMe connect retry failure + - platform/chrome: cros_ec_spi: Don't overwrite spi::mode + - misc: pci_endpoint_test: fix return value of error branch + - bus: fsl-mc: fix error return code in fsl_mc_object_allocate() + - s390/cio: fix use-after-free in ccw_device_destroy_console + - iwlwifi: dbg-tlv: fix old length in is_trig_data_contained() + - iwlwifi: mvm: hook up missing RX handlers + - erofs: avoid using generic_block_bmap + - can: m_can: m_can_config_endisable(): remove double clearing of clock stop + request bit + - powerpc/sstep: Emulate prefixed instructions only when CPU_FTR_ARCH_31 is + set + - powerpc/sstep: Cover new VSX instructions under CONFIG_VSX + - slimbus: qcom: fix potential NULL dereference in qcom_slim_prg_slew() + - RDMA/core: Do not indicate device ready when device enablement fails + - remoteproc: q6v5-mss: fix error handling in q6v5_pds_enable + - remoteproc: qcom: fix reference leak in adsp_start + - remoteproc: qcom: pas: fix error handling in adsp_pds_enable + - remoteproc: qcom: Fix potential NULL dereference in adsp_init_mmio() + - clk: qcom: gcc-sc7180: Use floor ops for sdcc clks + - clk: tegra: Fix duplicated SE clock entry + - mtd: rawnand: gpmi: fix reference count leak in gpmi ops + - mtd: rawnand: meson: Fix a resource leak in init + - mtd: rawnand: gpmi: Fix the random DMA timeout issue + - samples/bpf: Fix possible hang in xdpsock with multiple threads + - fs: Handle I_DONTCACHE in iput_final() instead of generic_drop_inode() + - extcon: max77693: Fix modalias string + - crypto: atmel-i2c - select CONFIG_BITREVERSE + - mac80211: don't set set TDLS STA bandwidth wider than possible + - ASoC: wm_adsp: remove "ctl" from list on error in wm_adsp_create_control() + - irqchip/alpine-msi: Fix freeing of interrupts on allocation error path + - RDMA/hns: Limit the length of data copied between kernel and userspace + - gpiolib: irq hooks: fix recursion in gpiochip_irq_unmask + - irqchip/qcom-pdc: Fix phantom irq when changing between rising/falling + - watchdog: armada_37xx: Add missing dependency on HAS_IOMEM + - watchdog: sirfsoc: Add missing dependency on HAS_IOMEM + - watchdog: sprd: remove watchdog disable from resume fail path + - watchdog: sprd: check busy bit before new loading rather than after that + - watchdog: Fix potential dereferencing of null pointer + - ubifs: Fix error return code in ubifs_init_authentication() + - um: Monitor error events in IRQ controller + - um: tty: Fix handling of close in tty lines + - um: chan_xterm: Fix fd leak + - sunrpc: fix xs_read_xdr_buf for partial pages receive + - RDMA/mlx5: Fix MR cache memory leak + - RDMA/cma: Don't overwrite sgid_attr after device is released + - nfc: s3fwrn5: Release the nfc firmware + - powerpc/perf: Fix Threshold Event Counter Multiplier width for P10 + - powerpc/ps3: use dma_mapping_error() + - mm/gup: combine put_compound_head() and unpin_user_page() + - mm/rmap: always do TTU_IGNORE_ACCESS + - sparc: fix handling of page table constructor failure + - mm/vmalloc: Fix unlock order in s_stop() + - mm/vmalloc.c: fix kasan shadow poisoning size + - mm,memory_failure: always pin the page in madvise_inject_error + - hugetlb: fix an error code in hugetlb_reserve_pages() + - mm: don't wake kswapd prematurely when watermark boosting is disabled + - proc: fix lookup in /proc/net subdirectories after setns(2) + - checkpatch: fix unescaped left brace + - s390/test_unwind: fix CALL_ON_STACK tests + - lan743x: fix rx_napi_poll/interrupt ping-pong + - ice, xsk: clear the status bits for the next_to_use descriptor + - i40e, xsk: clear the status bits for the next_to_use descriptor + - net: dsa: qca: ar9331: fix sleeping function called from invalid context bug + - net: bcmgenet: Fix a resource leak in an error handling path in the probe + functin + - net: allwinner: Fix some resources leak in the error handling path of the + probe and in the remove function + - block/rnbd-clt: Get rid of warning regarding size argument in strlcpy + - block/rnbd-clt: Fix possible memleak + - NFS/pNFS: Fix a typo in ff_layout_resend_pnfs_read() + - net: korina: fix return value + - libnvdimm/label: Return -ENXIO for no slot in __blk_label_update + - powerpc/32s: Fix cleanup_cpu_mmu_context() compile bug + - watchdog: qcom: Avoid context switch in restart handler + - watchdog: coh901327: add COMMON_CLK dependency + - clk: ti: Fix memleak in ti_fapll_synth_setup + - pwm: zx: Add missing cleanup in error path + - pwm: lp3943: Dynamically allocate PWM chip base + - pwm: imx27: Fix overflow for bigger periods + - pwm: sun4i: Remove erroneous else branch + - tools build: Add missing libcap to test-all.bin target + - perf record: Fix memory leak when using '--user-regs=?' to list registers + - qlcnic: Fix error code in probe + - nfp: move indirect block cleanup to flower app stop callback + - virtio_ring: Cut and paste bugs in vring_create_virtqueue_packed() + - virtio_net: Fix error code in probe() + - virtio_ring: Fix two use after free bugs + - vhost scsi: fix error return code in vhost_scsi_set_endpoint() + - epoll: check for events when removing a timed out thread from the wait queue + - clk: at91: sam9x60: remove atmel,osc-bypass support + - clk: s2mps11: Fix a resource leak in error handling paths in the probe + function + - clk: sunxi-ng: Make sure divider tables have sentinel + - kconfig: fix return value of do_error_if() + - powerpc/smp: Add __init to init_big_cores() + - ARM: 9044/1: vfp: use undef hook for VFP support detection + - perf probe: Fix memory leak when synthesizing SDT probes + - io_uring: cancel reqs shouldn't kill overflow list + - Smack: Handle io_uring kernel thread privileges + - io_uring: fix io_cqring_events()'s noflush + - vfio/pci: Move dummy_resources_list init in vfio_pci_probe() + - vfio/pci/nvlink2: Do not attempt NPU2 setup on POWER8NVL NPU + - media: gspca: Fix memory leak in probe + - io_uring: fix io_wqe->work_list corruption + - io_uring: fix 0-iov read buffer select + - io_uring: fix ignoring xa_store errors + - io_uring: make ctx cancel on exit targeted to actual ctx + - media: sunxi-cir: ensure IR is handled when it is continuous + - media: netup_unidvb: Don't leak SPI master in probe error path + - media: ipu3-cio2: Remove traces of returned buffers + - media: ipu3-cio2: Return actual subdev format + - media: ipu3-cio2: Serialise access to pad format + - media: ipu3-cio2: Validate mbus format in setting subdev format + - media: ipu3-cio2: Make the field on subdev format V4L2_FIELD_NONE + - Input: cyapa_gen6 - fix out-of-bounds stack access + - ALSA: hda/ca0132 - Change Input Source enum strings. + - Revert "ACPI / resources: Use AE_CTRL_TERMINATE to terminate resources + walks" + - ACPI: PNP: compare the string length in the matching_id() + - ALSA: hda: Fix regressions on clear and reconfig sysfs + - ALSA: hda/ca0132 - Fix AE-5 rear headphone pincfg. + - ALSA: hda/realtek: make bass spk volume adjustable on a yoga laptop + - ALSA: hda/realtek - Enable headset mic of ASUS X430UN with ALC256 + - ALSA: hda/realtek - Enable headset mic of ASUS Q524UQK with ALC255 + - ALSA: hda/realtek - Add supported for more Lenovo ALC285 Headset Button + - ALSA: pcm: oss: Fix a few more UBSAN fixes + - ALSA/hda: apply jack fixup for the Acer Veriton N4640G/N6640G/N2510G + - ALSA: hda/realtek: Add quirk for MSI-GP73 + - ALSA: hda/realtek: Apply jack fixup for Quanta NL3 + - ALSA: hda/realtek: Remove dummy lineout on Acer TravelMate P648/P658 + - ALSA: hda/realtek - Supported Dell fixed type headset + - ALSA: usb-audio: Add VID to support native DSD reproduction on FiiO devices + - ALSA: usb-audio: Disable sample read check if firmware doesn't give back + - ALSA: core: memalloc: add page alignment for iram + - s390/smp: perform initial CPU reset also for SMT siblings + - s390/kexec_file: fix diag308 subcode when loading crash kernel + - s390/idle: add missing mt_cycles calculation + - s390/idle: fix accounting with machine checks + - s390/dasd: fix hanging device offline processing + - s390/dasd: prevent inconsistent LCU device data + - s390/dasd: fix list corruption of pavgroup group list + - s390/dasd: fix list corruption of lcu list + - binder: add flag to clear buffer on txn complete + - ASoC: cx2072x: Fix doubly definitions of Playback and Capture streams + - ASoC: AMD Renoir - add DMI table to avoid the ACP mic probe (broken BIOS) + - ASoC: AMD Raven/Renoir - fix the PCI probe (PCI revision) + - staging: comedi: mf6x4: Fix AI end-of-conversion detection + - z3fold: simplify freeing slots + - z3fold: stricter locking and more careful reclaim + - perf/x86/intel: Add event constraint for CYCLE_ACTIVITY.STALLS_MEM_ANY + - perf/x86/intel: Fix rtm_abort_event encoding on Ice Lake + - powerpc/perf: Exclude kernel samples while counting events in user space. + - cpufreq: intel_pstate: Use most recent guaranteed performance values + - crypto: ecdh - avoid unaligned accesses in ecdh_set_secret() + - crypto: arm/aes-ce - work around Cortex-A57/A72 silion errata + - m68k: Fix WARNING splat in pmac_zilog driver + - EDAC/i10nm: Use readl() to access MMIO registers + - EDAC/amd64: Fix PCI component registration + - cpuset: fix race between hotplug work and later CPU offline + - USB: serial: mos7720: fix parallel-port state restore + - USB: serial: digi_acceleport: fix write-wakeup deadlocks + - USB: serial: keyspan_pda: fix dropped unthrottle interrupts + - USB: serial: keyspan_pda: fix write deadlock + - USB: serial: keyspan_pda: fix stalled writes + - USB: serial: keyspan_pda: fix write-wakeup use-after-free + - USB: serial: keyspan_pda: fix tx-unthrottle use-after-free + - USB: serial: keyspan_pda: fix write unthrottling + - btrfs: do not shorten unpin len for caching block groups + - btrfs: update last_byte_to_unpin in switch_commit_roots + - btrfs: fix race when defragmenting leads to unnecessary IO + - ext4: fix a memory leak of ext4_free_data + - ext4: fix deadlock with fs freezing and EA inodes + - ext4: don't remount read-only with errors=continue on reboot + - arm64: dts: ti: k3-am65: mark dss as dma-coherent + - KVM: arm64: Introduce handling of AArch32 TTBCR2 traps + - KVM: x86: reinstate vendor-agnostic check on SPEC_CTRL cpuid bits + - KVM: SVM: Remove the call to sev_platform_status() during setup + - ARM: dts: pandaboard: fix pinmux for gpio user button of Pandaboard ES + - ARM: dts: at91: sama5d2: fix CAN message ram offset and size + - ARM: tegra: Populate OPP table for Tegra20 Ventana + - xprtrdma: Fix XDRBUF_SPARSE_PAGES support + - powerpc/32: Fix vmap stack - Properly set r1 before activating MMU on + syscall too + - powerpc: Fix incorrect stw{, ux, u, x} instructions in __set_pte_at + - powerpc/rtas: Fix typo of ibm,open-errinjct in RTAS filter + - powerpc/bitops: Fix possible undefined behaviour with fls() and fls64() + - powerpc/feature: Add CPU_FTR_NOEXECUTE to G2_LE + - powerpc/xmon: Change printk() to pr_cont() + - powerpc/8xx: Fix early debug when SMC1 is relocated + - powerpc/mm: Fix verification of MMU_FTR_TYPE_44x + - powerpc/powernv/npu: Do not attempt NPU2 setup on POWER8NVL NPU + - powerpc/powernv/memtrace: Don't leak kernel memory to user space + - powerpc/powernv/memtrace: Fix crashing the kernel when enabling concurrently + - ima: Don't modify file descriptor mode on the fly + - um: Remove use of asprinf in umid.c + - um: Fix time-travel mode + - ceph: fix race in concurrent __ceph_remove_cap invocations + - SMB3: avoid confusing warning message on mount to Azure + - SMB3.1.1: remove confusing mount warning when no SPNEGO info on negprot rsp + - SMB3.1.1: do not log warning message if server doesn't populate salt + - ubifs: wbuf: Don't leak kernel memory to flash + - jffs2: Fix GC exit abnormally + - jffs2: Fix ignoring mounting options problem during remounting + - jfs: Fix array index bounds check in dbAdjTree + - drm/panfrost: Fix job timeout handling + - platform/x86: mlx-platform: remove an unused variable + - drm/dp_aux_dev: check aux_dev before use in drm_dp_aux_dev_get_by_minor() + - drm/i915: Fix mismatch between misplaced vma check and vma insert + - iio: ad_sigma_delta: Don't put SPI transfer buffer on the stack + - spi: pxa2xx: Fix use-after-free on unbind + - spi: spi-sh: Fix use-after-free on unbind + - spi: atmel-quadspi: Fix use-after-free on unbind + - spi: spi-mtk-nor: Don't leak SPI master in probe error path + - spi: ar934x: Don't leak SPI master in probe error path + - spi: davinci: Fix use-after-free on unbind + - spi: fsl: fix use of spisel_boot signal on MPC8309 + - spi: gpio: Don't leak SPI master in probe error path + - spi: mxic: Don't leak SPI master in probe error path + - spi: npcm-fiu: Disable clock in probe error path + - spi: pic32: Don't leak DMA channels in probe error path + - spi: rb4xx: Don't leak SPI master in probe error path + - spi: sc18is602: Don't leak SPI master in probe error path + - spi: spi-geni-qcom: Fix use-after-free on unbind + - spi: spi-qcom-qspi: Fix use-after-free on unbind + - spi: st-ssc4: Fix unbalanced pm_runtime_disable() in probe error path + - spi: synquacer: Disable clock in probe error path + - spi: mt7621: Disable clock in probe error path + - spi: mt7621: Don't leak SPI master in probe error path + - spi: atmel-quadspi: Disable clock in probe error path + - spi: atmel-quadspi: Fix AHB memory accesses + - soc: qcom: smp2p: Safely acquire spinlock without IRQs + - mtd: parser: cmdline: Fix parsing of part-names with colons + - mtd: core: Fix refcounting for unpartitioned MTDs + - mtd: rawnand: qcom: Fix DMA sync on FLASH_STATUS register read + - mtd: rawnand: meson: fix meson_nfc_dma_buffer_release() arguments + - scsi: qla2xxx: Fix crash during driver load on big endian machines + - scsi: lpfc: Fix invalid sleeping context in lpfc_sli4_nvmet_alloc() + - scsi: lpfc: Re-fix use after free in lpfc_rq_buf_free() + - openat2: reject RESOLVE_BENEATH|RESOLVE_IN_ROOT + - iio: buffer: Fix demux update + - iio: adc: rockchip_saradc: fix missing clk_disable_unprepare() on error in + rockchip_saradc_resume + - iio: imu: st_lsm6dsx: fix edge-trigger interrupts + - iio:light:rpr0521: Fix timestamp alignment and prevent data leak. + - iio:light:st_uvis25: Fix timestamp alignment and prevent data leak. + - iio:magnetometer:mag3110: Fix alignment and data leak issues. + - iio:pressure:mpl3115: Force alignment of buffer + - iio:imu:bmi160: Fix too large a buffer. + - iio:imu:bmi160: Fix alignment and data leak issues + - iio:adc:ti-ads124s08: Fix buffer being too long. + - iio:adc:ti-ads124s08: Fix alignment and data leak issues. + - md/cluster: block reshape with remote resync job + - md/cluster: fix deadlock when node is doing resync job + - pinctrl: sunxi: Always call chained_irq_{enter, exit} in + sunxi_pinctrl_irq_handler + - clk: ingenic: Fix divider calculation with div tables + - clk: mvebu: a3700: fix the XTAL MODE pin to MPP1_9 + - clk: tegra: Do not return 0 on failure + - device-dax/core: Fix memory leak when rmmod dax.ko + - dma-buf/dma-resv: Respect num_fences when initializing the shared fence + list. + - driver: core: Fix list corruption after device_del() + - xen-blkback: set ring->xenblkd to NULL after kthread_stop() + - xen/xenbus: Allow watches discard events before queueing + - xen/xenbus: Add 'will_handle' callback support in xenbus_watch_path() + - xen/xenbus/xen_bus_type: Support will_handle watch callback + - xen/xenbus: Count pending messages for each watch + - xenbus/xenbus_backend: Disallow pending watch messages + - libnvdimm/namespace: Fix reaping of invalidated block-window-namespace + labels + - platform/x86: intel-vbtn: Allow switch events on Acer Switch Alpha 12 + - tracing: Disable ftrace selftests when any tracer is running + - mt76: add back the SUPPORTS_REORDERING_BUFFER flag + - of: fix linker-section match-table corruption + - PCI: Fix pci_slot_release() NULL pointer dereference + - regulator: axp20x: Fix DLDO2 voltage control register mask for AXP22x + - remoteproc: sysmon: Ensure remote notification ordering + - thermal/drivers/cpufreq_cooling: Update cpufreq_state only if state has + changed + - rtc: ep93xx: Fix NULL pointer dereference in ep93xx_rtc_read_time + - Revert: "ring-buffer: Remove HAVE_64BIT_ALIGNED_ACCESS" + - null_blk: Fix zone size initialization + - null_blk: Fail zone append to conventional zones + - drm/edid: fix objtool warning in drm_cvt_modes() + - x86/CPU/AMD: Save AMD NodeId as cpu_die_id + - ARM: dts: sun7i: bananapi: Enable RGMII RX/TX delay on Ethernet PHY + - ARM: dts: sun8i: r40: bananapi-m2-berry: Fix dcdc1 regulator + - ARM: dts: sun8i: v40: bananapi-m2-berry: Fix ethernet node + - pinctrl: merrifield: Set default bias in case no particular value given + - pinctrl: baytrail: Avoid clearing debounce value when turning it off + - ARM: dts: sun8i: v3s: fix GIC node memory range + - ARM: dts: sun7i: pcduino3-nano: enable RGMII RX/TX delay on PHY + - ARM: dts: imx6qdl-wandboard-revd1: Remove PAD_GPIO_6 from enetgrp + - ARM: dts: imx6qdl-kontron-samx6i: fix I2C_PM scl pin + - gpio: zynq: fix reference leak in zynq_gpio functions + - gpio: mvebu: fix potential user-after-free on probe + - scsi: bnx2i: Requires MMU + - xsk: Replace datagram_poll by sock_poll_wait + - can: softing: softing_netdev_open(): fix error handling + - clk: renesas: r9a06g032: Drop __packed for portability + - pinctrl: aspeed: Fix GPIO requests on pass-through banks + - netfilter: x_tables: Switch synchronization to RCU + - netfilter: nft_compat: make sure xtables destructors have run + - netfilter: nft_dynset: fix timeouts later than 23 days + - afs: Fix memory leak when mounting with multiple source parameters + - gpio: eic-sprd: break loop when getting NULL device resource + - netfilter: nft_ct: Remove confirmation check for NFT_CT_ID + - selftests/bpf/test_offload.py: Reset ethtool features after failed setting + - RDMA/cm: Fix an attempt to use non-valid pointer when cleaning timewait + - i40e: optimise prefetch page refcount + - i40e: avoid premature Rx buffer reuse + - ixgbe: avoid premature Rx buffer reuse + - selftests: fix poll error in udpgro.sh + - net: mvpp2: add mvpp2_phylink_to_port() helper + - drm/tegra: replace idr_init() by idr_init_base() + - kernel/cpu: add arch override for clear_tasks_mm_cpumask() mm handling + - drm/tegra: sor: Disable clocks on error in tegra_sor_init() + - habanalabs: put devices before driver removal + - arm64: syscall: exit userspace before unmasking exceptions + - vxlan: Add needed_headroom for lower device + - vxlan: Copy needed_tailroom from lowerdev + - scsi: mpt3sas: Increase IOCInit request timeout to 30s + - dm table: Remove BUG_ON(in_interrupt()) + - iwlwifi: pcie: add one missing entry for AX210 + - drm/amd/display: Init clock value by current vbios CLKs + - perf/x86/intel: Check PEBS status correctly + - kbuild: avoid split lines in .mod files + - ARM: sunxi: Add machine match for the Allwinner V3 SoC + - cfg80211: initialize rekey_data + - fix namespaced fscaps when !CONFIG_SECURITY + - lwt: Disable BH too in run_lwt_bpf() + - drm/amd/display: Prevent bandwidth overflow + - drm/amdkfd: Fix leak in dmabuf import + - Input: cros_ec_keyb - send 'scancodes' in addition to key events + - initramfs: fix clang build failure + - Input: goodix - add upside-down quirk for Teclast X98 Pro tablet + * Groovy update: upstream stable patchset 2021-01-13 (LP: #1911476) + - Kbuild: do not emit debug info for assembly with LLVM_IAS=1 + - mm/zsmalloc.c: drop ZSMALLOC_PGTABLE_MAPPING + - [Config] updateconfigs for ZSMALLOC_PGTABLE_MAPPING + - kprobes: Remove NMI context check + - kprobes: Tell lockdep about kprobe nesting + - ASoC: Intel: bytcr_rt5640: Fix HP Pavilion x2 Detachable quirks + - tools/bootconfig: Fix to check the write failure correctly + - net, xsk: Avoid taking multiple skbuff references + - bpftool: Fix error return value in build_btf_type_table + - vhost-vdpa: fix page pinning leakage in error path (rework) + - powerpc/64s: Fix hash ISA v3.0 TLBIEL instruction generation + - batman-adv: Consider fragmentation for needed_headroom + - batman-adv: Reserve needed_*room for fragments + - batman-adv: Don't always reallocate the fragmentation skb head + - ipvs: fix possible memory leak in ip_vs_control_net_init + - ibmvnic: handle inconsistent login with reset + - ibmvnic: stop free_all_rwi on failed reset + - ibmvnic: avoid memset null scrq msgs + - ibmvnic: delay next reset if hard reset fails + - ibmvnic: track pending login + - ibmvnic: send_login should check for crq errors + - ibmvnic: reduce wait for completion time + - drm/rockchip: Avoid uninitialized use of endpoint id in LVDS + - drm/panel: sony-acx565akm: Fix race condition in probe + - can: m_can: tcan4x5x_can_probe(): fix error path: remove erroneous + clk_disable_unprepare() + - can: sja1000: sja1000_err(): don't count arbitration lose as an error + - can: sun4i_can: sun4i_can_err(): don't count arbitration lose as an error + - can: c_can: c_can_power_up(): fix error handling + - can: kvaser_pciefd: kvaser_pciefd_open(): fix error handling + - samples/ftrace: Mark my_tramp[12]? global + - scsi: storvsc: Fix error return in storvsc_probe() + - net: broadcom CNIC: requires MMU + - iwlwifi: pcie: invert values of NO_160 device config entries + - perf/x86/intel: Fix a warning on x86_pmu_stop() with large PEBS + - zlib: export S390 symbols for zlib modules + - phy: usb: Fix incorrect clearing of tca_drv_sel bit in SETUP reg for 7211 + - arm64: dts: rockchip: Remove system-power-controller from pmic on Odroid Go + Advance + - iwlwifi: pcie: limit memory read spin time + - arm64: dts: rockchip: Assign a fixed index to mmc devices on rk3399 boards. + - arm64: dts: rockchip: Reorder LED triggers from mmc devices on rk3399-roc- + pc. + - iwlwifi: sta: set max HE max A-MPDU according to HE capa + - iwlwifi: pcie: set LTR to avoid completion timeout + - iwlwifi: mvm: fix kernel panic in case of assert during CSA + - powerpc: Drop -me200 addition to build flags + - arm64: dts: broadcom: clear the warnings caused by empty dma-ranges + - ARC: stack unwinding: don't assume non-current task is sleeping + - scsi: ufs: Fix unexpected values from ufshcd_read_desc_param() + - scsi: ufs: Make sure clk scaling happens only when HBA is runtime ACTIVE + - interconnect: qcom: msm8916: Remove rpm-ids from non-RPM nodes + - interconnect: qcom: qcs404: Remove GPU and display RPM IDs + - ibmvnic: skip tx timeout reset while in resetting + - irqchip/gic-v3-its: Unconditionally save/restore the ITS state on suspend + - drm/exynos: depend on COMMON_CLK to fix compile tests + - spi: spi-nxp-fspi: fix fspi panic by unexpected interrupts + - arm-smmu-qcom: Ensure the qcom_scm driver has finished probing + - btrfs: do nofs allocations when adding and removing qgroup relations + - btrfs: fix lockdep splat when enabling and disabling qgroups + - soc: fsl: dpio: Get the cpumask through cpumask_of(cpu) + - intel_idle: Fix intel_idle() vs tracing + - arm64: tegra: Disable the ACONNECT for Jetson TX2 + - platform/x86: thinkpad_acpi: add P1 gen3 second fan support + - platform/x86: thinkpad_acpi: Do not report SW_TABLET_MODE on Yoga 11e + - platform/x86: thinkpad_acpi: Add BAT1 is primary battery quirk for Thinkpad + Yoga 11e 4th gen + - platform/x86: thinkpad_acpi: Whitelist P15 firmware for dual fan control + - platform/x86: acer-wmi: add automatic keyboard background light toggle key + as KEY_LIGHTS_TOGGLE + - platform/x86: intel-vbtn: Support for tablet mode on HP Pavilion 13 x360 PC + - platform/x86: touchscreen_dmi: Add info for the Predia Basic tablet + - platform/x86: touchscreen_dmi: Add info for the Irbis TW118 tablet + - can: m_can: m_can_dev_setup(): add support for bosch mcan version 3.3.0 + - s390: fix irq state tracing + - intel_idle: Build fix + - media: pulse8-cec: fix duplicate free at disconnect or probe error + - media: pulse8-cec: add support for FW v10 and up + - mmc: mediatek: Extend recheck_sdio_irq fix to more variants + - ktest.pl: Fix incorrect reboot for grub2bls + - xen: add helpers for caching grant mapping pages + - Input: cm109 - do not stomp on control URB + - Input: i8042 - add Acer laptops to the i8042 reset list + - pinctrl: jasperlake: Fix HOSTSW_OWN offset + - mmc: sdhci-of-arasan: Fix clock registration error for Keem Bay SOC + - mmc: block: Fixup condition for CMD13 polling for RPMB requests + - drm/amdgpu/disply: set num_crtc earlier + - drm/i915/gem: Propagate error from cancelled submit due to context closure + - drm/i915/display/dp: Compute the correct slice count for VDSC on DP + - drm/i915/gt: Declare gen9 has 64 mocs entries! + - drm/i915/gt: Ignore repeated attempts to suspend request flow across reset + - drm/i915/gt: Cancel the preemption timeout on responding to it + - kbuild: avoid static_assert for genksyms + - proc: use untagged_addr() for pagemap_read addresses + - zonefs: fix page reference and BIO leak + - scsi: be2iscsi: Revert "Fix a theoretical leak in beiscsi_create_eqs()" + - x86/mm/mem_encrypt: Fix definition of PMD_FLAGS_DEC_WP + - x86/membarrier: Get rid of a dubious optimization + - x86/apic/vector: Fix ordering in vector assignment + - x86/kprobes: Fix optprobe to detect INT3 padding correctly + - compiler.h: fix barrier_data() on clang + - ptrace: Prevent kernel-infoleak in ptrace_get_syscall_info() + - net/sched: fq_pie: initialize timer earlier in fq_pie_init() + - net: ipa: pass the correct size when freeing DMA memory + - ipv4: fix error return code in rtm_to_fib_config() + - mac80211: mesh: fix mesh_pathtbl_init() error path + - net: bridge: vlan: fix error return code in __vlan_add() + - vrf: packets with lladdr src needs dst at input with orig_iif when needs + strict + - net: hns3: remove a misused pragma packed + - udp: fix the proto value passed to ip_protocol_deliver_rcu for the segments + - enetc: Fix reporting of h/w packet counters + - bridge: Fix a deadlock when enabling multicast snooping + - mptcp: print new line in mptcp_seq_show() if mptcp isn't in use + - net: stmmac: dwmac-meson8b: fix mask definition of the m250_sel mux + - net: stmmac: start phylink instance before stmmac_hw_setup() + - net: stmmac: free tx skb buffer in stmmac_resume() + - net: stmmac: delete the eee_ctrl_timer after napi disabled + - net: stmmac: overwrite the dma_cap.addr64 according to HW design + - net: ll_temac: Fix potential NULL dereference in temac_probe() + - tcp: select sane initial rcvq_space.space for big MSS + - e1000e: fix S0ix flow to allow S0i3.2 subset entry + - ethtool: fix stack overflow in ethnl_parse_bitset() + - tcp: fix cwnd-limited bug for TSO deferral where we send nothing + - net: flow_offload: Fix memory leak for indirect flow block + - net/mlx4_en: Avoid scheduling restart task if it is already running + - net/mlx4_en: Handle TX error CQE + - net: sched: Fix dump of MPLS_OPT_LSE_LABEL attribute in cls_flower + - ch_ktls: fix build warning for ipv4-only config + - lan743x: fix for potential NULL pointer dereference with bare card + - net: stmmac: increase the timeout for dma reset + - net: tipc: prevent possible null deref of link + - ktest.pl: If size of log is too big to email, email error message + - USB: dummy-hcd: Fix uninitialized array use in init() + - USB: add RESET_RESUME quirk for Snapscan 1212 + - ALSA: usb-audio: Fix potential out-of-bounds shift + - ALSA: usb-audio: Fix control 'access overflow' errors from chmap + - xhci: Give USB2 ports time to enter U3 in bus suspend + - xhci-pci: Allow host runtime PM as default for Intel Alpine Ridge LP + - xhci-pci: Allow host runtime PM as default for Intel Maple Ridge xHCI + - USB: UAS: introduce a quirk to set no_write_same + - USB: sisusbvga: Make console support depend on BROKEN + - [Config] updateconfigs for USB_SISUSBVGA_CON + - ALSA: pcm: oss: Fix potential out-of-bounds shift + - serial: 8250_omap: Avoid FIFO corruption caused by MDR1 access + - KVM: mmu: Fix SPTE encoding of MMIO generation upper half + - membarrier: Explicitly sync remote cores when SYNC_CORE is requested + - x86/resctrl: Remove unused struct mbm_state::chunks_bw + - x86/resctrl: Fix incorrect local bandwidth when mba_sc is enabled + * MSFT Touchpad not working on Lenovo Legion-5 15ARH05 (LP: #1887190) // + Groovy update: upstream stable patchset 2021-01-13 (LP: #1911476) + - pinctrl: amd: remove debounce filter setting in IRQ type setting + * Groovy update: upstream stable patchset 2021-01-12 (LP: #1911235) + - powerpc: Only include kup-radix.h for 64-bit Book3S + - leds: lm3697: Fix out-of-bound access + - Input: sunkbd - avoid use-after-free in teardown paths + - mac80211: always wind down STA state + - can: proc: can_remove_proc(): silence remove_proc_entry warning + - powerpc/smp: Call rcu_cpu_starting() earlier + - KVM: x86: clflushopt should be treated as a no-op by emulation + - ACPI: GED: fix -Wformat + - net: lantiq: Add locking for TX DMA channel + - ah6: fix error return code in ah6_input() + - atm: nicstar: Unmap DMA on send error + - bnxt_en: read EEPROM A2h address using page 0 + - devlink: Add missing genlmsg_cancel() in devlink_nl_sb_port_pool_fill() + - enetc: Workaround for MDIO register access issue + - Exempt multicast addresses from five-second neighbor lifetime + - inet_diag: Fix error path to cancel the meseage in inet_req_diag_fill() + - ipv6: Fix error path to cancel the meseage + - lan743x: fix issue causing intermittent kernel log warnings + - lan743x: prevent entire kernel HANG on open, for some platforms + - mlxsw: core: Use variable timeout for EMAD retries + - net: b44: fix error return code in b44_init_one() + - net: bridge: add missing counters to ndo_get_stats64 callback + - netdevsim: set .owner to THIS_MODULE + - net: dsa: mv88e6xxx: Avoid VTU corruption on 6097 + - net: ethernet: mtk-star-emac: fix error return code in mtk_star_enable() + - net: ethernet: mtk-star-emac: return ok when xmit drops + - net: ethernet: ti: am65-cpts: update ret when ptp_clock is ERROR + - net: ethernet: ti: cpsw: fix cpts irq after suspend + - net: ethernet: ti: cpsw: fix error return code in cpsw_probe() + - net: ftgmac100: Fix crash when removing driver + - net: Have netpoll bring-up DSA management interface + - net: ipa: lock when freeing transaction + - netlabel: fix our progress tracking in netlbl_unlabel_staticlist() + - netlabel: fix an uninitialized warning in netlbl_unlabel_staticlist() + - net: lantiq: Wait for the GPHY firmware to be ready + - net/mlx4_core: Fix init_hca fields offset + - net/mlx5e: Fix refcount leak on kTLS RX resync + - net/ncsi: Fix netlink registration + - net: phy: mscc: remove non-MACSec compatible phy + - net: qualcomm: rmnet: Fix incorrect receive packet handling during cleanup + - net/smc: fix direct access to ib_gid_addr->ndev in smc_ib_determine_gid() + - net: stmmac: Use rtnl_lock/unlock on netif_set_real_num_rx_queues() call + - net/tls: fix corrupted data in recvmsg + - net: x25: Increase refcnt of "struct x25_neigh" in x25_rx_call_request + - page_frag: Recover from memory pressure + - qed: fix error return code in qed_iwarp_ll2_start() + - qed: fix ILT configuration of SRC block + - qlcnic: fix error return code in qlcnic_83xx_restart_hw() + - sctp: change to hold/put transport for proto_unreach_timer + - tcp: only postpone PROBE_RTT if RTT is < current min_rtt estimate + - vsock: forward all packets to the host when no H2G is registered + - net/mlx5e: Fix check if netdev is bond slave + - net/mlx5: Add handling of port type in rule deletion + - net/mlx5: Clear bw_share upon VF disable + - net/mlx5: Disable QoS when min_rates on all VFs are zero + - PM: runtime: Add pm_runtime_resume_and_get to deal with usage counter + - net: fec: Fix reference count leak in fec series ops + - net/tls: Fix wrong record sn in async mode of device resync + - net: usb: qmi_wwan: Set DTR quirk for MR400 + - Revert "Revert "gpio: omap: Fix lost edge wake-up interrupts"" + - tools, bpftool: Avoid array index warnings. + - habanalabs/gaudi: mask WDT error in QMAN + - pinctrl: rockchip: enable gpio pclk for rockchip_gpio_to_irq + - scsi: ufs: Fix unbalanced scsi_block_reqs_cnt caused by ufshcd_hold() + - scsi: ufs: Try to save power mode change and UIC cmd completion timeout + - pinctrl: mcp23s08: Print error message when regmap init fails + - selftests: kvm: Fix the segment descriptor layout to match the actual layout + - ACPI: button: Add DMI quirk for Medion Akoya E2228T + - arm64: errata: Fix handling of 1418040 with late CPU onlining + - arm64: psci: Avoid printing in cpu_psci_cpu_die() + - arm64: smp: Tell RCU about CPUs that fail to come online + - vfs: remove lockdep bogosity in __sb_start_write + - gfs2: fix possible reference leak in gfs2_check_blk_type + - hwmon: (pwm-fan) Fix RPM calculation + - gfs2: Fix case in which ail writes are done to jdata holes + - arm64: Add MIDR value for KRYO2XX gold/silver CPU cores + - arm64: kpti: Add KRYO2XX gold/silver CPU cores to kpti safelist + - arm64: cpu_errata: Apply Erratum 845719 to KRYO2XX Silver + - arm64: dts: allwinner: beelink-gs1: Enable both RGMII RX/TX delay + - arm64: dts: allwinner: Pine H64: Enable both RGMII RX/TX delay + - arm64: dts: allwinner: a64: OrangePi Win: Fix ethernet node + - arm64: dts: allwinner: a64: Pine64 Plus: Fix ethernet node + - arm64: dts: allwinner: h5: OrangePi PC2: Fix ethernet node + - ARM: dts: sun8i: r40: bananapi-m2-ultra: Fix ethernet node + - Revert "arm: sun8i: orangepi-pc-plus: Set EMAC activity LEDs to active high" + - ARM: dts: sun6i: a31-hummingbird: Enable RGMII RX/TX delay on Ethernet PHY + - ARM: dts: sun7i: cubietruck: Enable RGMII RX/TX delay on Ethernet PHY + - ARM: dts: sun7i: bananapi-m1-plus: Enable RGMII RX/TX delay on Ethernet PHY + - ARM: dts: sun8i: h3: orangepi-plus2e: Enable RGMII RX/TX delay on Ethernet + PHY + - ARM: dts: sun8i: a83t: Enable both RGMII RX/TX delay on Ethernet PHY + - ARM: dts: sun9i: Enable both RGMII RX/TX delay on Ethernet PHY + - ARM: dts: sunxi: bananapi-m2-plus: Enable RGMII RX/TX delay on Ethernet PHY + - arm64: dts: allwinner: h5: libretech-all-h5-cc: Enable RGMII RX/TX delay on + PHY + - arm64: dts: allwinner: a64: bananapi-m64: Enable RGMII RX/TX delay on PHY + - Input: adxl34x - clean up a data type in adxl34x_probe() + - MIPS: export has_transparent_hugepage() for modules + - dmaengine: idxd: fix wq config registers offset programming + - arm64: dts: allwinner: h5: OrangePi Prime: Fix ethernet node + - arm64: dts: imx8mm-beacon-som: Fix Choppy BT audio + - arm64: dts imx8mn: Remove non-existent USB OTG2 + - arm: dts: imx6qdl-udoo: fix rgmii phy-mode for ksz9031 phy + - ARM: dts: vf610-zii-dev-rev-b: Fix MDIO over clocking + - swiotlb: using SIZE_MAX needs limits.h included + - tee: amdtee: fix memory leak due to reset of global shm list + - tee: amdtee: synchronize access to shm list + - dmaengine: xilinx_dma: Fix usage of xilinx_aximcdma_tx_segment + - dmaengine: xilinx_dma: Fix SG capability check for MCDMA + - ARM: dts: stm32: Fix TA3-GPIO-C key on STM32MP1 DHCOM PDK2 + - ARM: dts: stm32: Fix LED5 on STM32MP1 DHCOM PDK2 + - ARM: dts: stm32: Define VIO regulator supply on DHCOM + - ARM: dts: stm32: Enable thermal sensor support on stm32mp15xx-dhcor + - ARM: dts: stm32: Keep VDDA LDO1 always on on DHCOM + - arm64: dts: imx8mm: fix voltage for 1.6GHz CPU operating point + - ARM: dts: imx50-evk: Fix the chip select 1 IOMUX + - dmaengine: ti: omap-dma: Block PM if SDMA is busy to fix audio + - kunit: tool: unmark test_data as binary blobs + - rcu: Don't invoke try_invoke_on_locked_down_task() with irqs disabled + - spi: fix client driver breakages when using GPIO descriptors + - Input: resistive-adc-touch - fix kconfig dependency on IIO_BUFFER + - rfkill: Fix use-after-free in rfkill_resume() + - RDMA/pvrdma: Fix missing kfree() in pvrdma_register_device() + - [Config] update config for INFINIBAND_VIRT_DMA + - RMDA/sw: Don't allow drivers using dma_virt_ops on highmem configs + - perf lock: Correct field name "flags" + - perf lock: Don't free "lock_seq_stat" if read_count isn't zero + - SUNRPC: Fix oops in the rpc_xdr_buf event class + - drm: bridge: dw-hdmi: Avoid resetting force in the detect function + - tools, bpftool: Add missing close before bpftool net attach exit + - IB/hfi1: Fix error return code in hfi1_init_dd() + - ip_tunnels: Set tunnel option flag when tunnel metadata is present + - can: af_can: prevent potential access of uninitialized member in can_rcv() + - can: af_can: prevent potential access of uninitialized member in canfd_rcv() + - can: dev: can_restart(): post buffer from the right context + - can: ti_hecc: Fix memleak in ti_hecc_probe + - can: mcba_usb: mcba_usb_start_xmit(): first fill skb, then pass to + can_put_echo_skb() + - can: peak_usb: fix potential integer overflow on shift of a int + - can: flexcan: fix failure handling of pm_runtime_get_sync() + - can: tcan4x5x: replace depends on REGMAP_SPI with depends on SPI + - can: tcan4x5x: tcan4x5x_can_probe(): add missing error checking for + devm_regmap_init() + - can: tcan4x5x: tcan4x5x_can_remove(): fix order of deregistration + - can: m_can: m_can_handle_state_change(): fix state change + - can: m_can: m_can_class_free_dev(): introduce new function + - can: m_can: Fix freeing of can device from peripherials + - can: m_can: m_can_stop(): set device to software init mode before closing + - dmaengine: idxd: fix mapping of portal size + - ASoC: qcom: lpass-platform: Fix memory leak + - selftests/bpf: Fix error return code in run_getsockopt_test() + - MIPS: Alchemy: Fix memleak in alchemy_clk_setup_cpu + - drm/sun4i: dw-hdmi: fix error return code in sun8i_dw_hdmi_bind() + - net/mlx5: E-Switch, Fail mlx5_esw_modify_vport_rate if qos disabled + - bpf, sockmap: Fix partial copy_page_to_iter so progress can still be made + - bpf, sockmap: Ensure SO_RCVBUF memory is observed on ingress redirect + - can: kvaser_pciefd: Fix KCAN bittiming limits + - can: kvaser_usb: kvaser_usb_hydra: Fix KCAN bittiming limits + - dmaengine: fix error codes in channel_register() + - iommu/vt-d: Move intel_iommu_gfx_mapped to Intel IOMMU header + - iommu/vt-d: Avoid panic if iommu init fails in tboot system + - can: flexcan: flexcan_chip_start(): fix erroneous + flexcan_transceiver_enable() during bus-off recovery + - can: m_can: process interrupt only when not runtime suspended + - xfs: fix the minrecs logic when dealing with inode root child blocks + - xfs: strengthen rmap record flags checking + - xfs: directory scrub should check the null bestfree entries too + - xfs: ensure inobt record walks always make forward progress + - xfs: return corresponding errcode if xfs_initialize_perag() fail + - ASOC: Intel: kbl_rt5663_rt5514_max98927: Do not try to disable disabled + clock + - regulator: ti-abb: Fix array out of bound read access on the first + transition + - libbpf: Fix VERSIONED_SYM_COUNT number parsing + - lib/strncpy_from_user.c: Mask out bytes after NUL terminator. + - fail_function: Remove a redundant mutex unlock + - xfs: revert "xfs: fix rmap key and record comparison functions" + - bpf, sockmap: Skb verdict SK_PASS to self already checked rmem limits + - bpf, sockmap: On receive programs try to fast track SK_PASS ingress + - bpf, sockmap: Use truesize with sk_rmem_schedule() + - bpf, sockmap: Avoid returning unneeded EAGAIN when redirecting to self + - efi/arm: set HSCTLR Thumb2 bit correctly for HVC calls from HYP + - counter/ti-eqep: Fix regmap max_register + - efi/x86: Free efi_pgd with free_pages() + - sched/fair: Fix overutilized update in enqueue_task_fair() + - sched: Fix data-race in wakeup + - sched: Fix rq->nr_iowait ordering + - libfs: fix error cast of negative value in simple_attr_write() + - afs: Fix speculative status fetch going out of order wrt to modifications + - HID: logitech-hidpp: Add PID for MX Anywhere 2 + - HID: mcp2221: Fix GPIO output handling + - HID: logitech-dj: Handle quad/bluetooth keyboards with a builtin trackpad + - HID: logitech-dj: Fix Dinovo Mini when paired with a MX5x00 receiver + - speakup: Do not let the line discipline be used several times + - ALSA: firewire: Clean up a locking issue in copy_resp_to_buf() + - ALSA: usb-audio: Add delay quirk for all Logitech USB devices + - ALSA: ctl: fix error path at adding user-defined element set + - ALSA: mixart: Fix mutex deadlock + - ALSA: hda/realtek - Add supported for Lenovo ThinkPad Headset Button + - ALSA: hda/realtek - Add supported mute Led for HP + - ALSA: hda/realtek: Add some Clove SSID in the ALC293(ALC1220) + - ALSA: hda/realtek - HP Headset Mic can't detect after boot + - tty: serial: imx: fix potential deadlock + - tty: serial: imx: keep console clocks always on + - HID: logitech-dj: Fix an error in mse_bluetooth_descriptor + - efivarfs: fix memory leak in efivarfs_create() + - staging: rtl8723bs: Add 024c:0627 to the list of SDIO device-ids + - staging: mt7621-pci: avoid to request pci bus resources + - iio: light: fix kconfig dependency bug for VCNL4035 + - ext4: fix bogus warning in ext4_update_dx_flag() + - xfs: fix forkoff miscalculation related to XFS_LITINO(mp) + - ACPI: fan: Initialize performance state sysfs attribute + - iio: accel: kxcjk1013: Replace is_smo8500_device with an acpi_type enum + - iio: accel: kxcjk1013: Add support for KIOX010A ACPI DSM for setting tablet- + mode + - iio: adc: mediatek: fix unset field + - iio: cros_ec: Use default frequencies when EC returns invalid information + - iio: imu: st_lsm6dsx: set 10ms as min shub slave timeout + - iio/adc: ingenic: Fix battery VREF for JZ4770 SoC + - iio: adc: stm32-adc: fix a regression when using dma and irq + - serial: ar933x_uart: disable clk on error handling path in probe + - arm64: dts: agilex/stratix10: Fix qspi node compatible + - spi: lpspi: Fix use-after-free on unbind + - spi: Introduce device-managed SPI controller allocation + - spi: npcm-fiu: Don't leak SPI master in probe error path + - spi: bcm2835aux: Fix use-after-free on unbind + - regulator: pfuze100: limit pfuze-support-disable-sw to pfuze{100,200} + - regulator: fix memory leak with repeated set_machine_constraints() + - regulator: avoid resolve_supply() infinite recursion + - regulator: workaround self-referent regulators + - gfs2: Fix regression in freeze_go_sync + - xtensa: fix TLBTEMP area placement + - xtensa: disable preemption around cache alias management calls + - mac80211: minstrel: remove deferred sampling code + - mac80211: minstrel: fix tx status processing corner case + - mac80211: free sta in sta_info_insert_finish() on errors + - s390: fix system call exit path + - s390/cpum_sf.c: fix file permission for cpum_sfb_size + - s390/dasd: fix null pointer dereference for ERP requests + - Drivers: hv: vmbus: Allow cleanup of VMBUS_CONNECT_CPU if disconnected + - drm/amd/display: Add missing pflip irq for dcn2.0 + - drm/i915: Handle max_bpc==16 + - mmc: sdhci-pci: Prefer SDR25 timing for High Speed mode for BYT-based Intel + controllers + - mmc: sdhci-of-arasan: Allow configuring zero tap values + - mmc: sdhci-of-arasan: Use Mask writes for Tap delays + - mmc: sdhci-of-arasan: Issue DLL reset explicitly + - ptrace: Set PF_SUPERPRIV when checking capability + - seccomp: Set PF_SUPERPRIV when checking capability + - x86/microcode/intel: Check patch signature before saving microcode for early + loading + - mm: fix readahead_page_batch for retry entries + - mm: memcg/slab: fix root memcg vmstats + - mm/userfaultfd: do not access vma->vm_mm after calling handle_userfault() + - io_uring: get an active ref_node from files_data + - io_uring: order refnode recycling + - spi: bcm-qspi: Fix use-after-free on unbind + - spi: bcm2835: Fix use-after-free on unbind + - ipv4: use IS_ENABLED instead of ifdef + - IB/hfi1: Ensure correct mm is used at all times + - RDMA/i40iw: Address an mmap handler exploit in i40iw + - btrfs: tree-checker: add missing return after error in root_item + - btrfs: tree-checker: add missing returns after data_ref alignment checks + - btrfs: don't access possibly stale fs_info data for printing duplicate + device + - btrfs: fix lockdep splat when reading qgroup config on mount + - mm: fix VM_BUG_ON(PageTail) and BUG_ON(PageWriteback) + - smb3: Call cifs reconnect from demultiplex thread + - smb3: Avoid Mid pending list corruption + - smb3: Handle error case during offload read path + - cifs: fix a memleak with modefromsid + - powerpc/64s: Fix KVM system reset handling when CONFIG_PPC_PSERIES=y + - powerpc/64s/exception: KVM Fix for host DSI being taken in HPT guest MMU + context + - KVM: PPC: Book3S HV: XIVE: Fix possible oops when accessing ESB page + - KVM: arm64: vgic-v3: Drop the reporting of GICR_TYPER.Last for userspace + - KVM: x86: handle !lapic_in_kernel case in kvm_cpu_*_extint + - KVM: x86: Fix split-irqchip vs interrupt injection window request + - iommu/vt-d: Don't read VCCAP register unless it exists + - firmware: xilinx: Use hash-table for api feature check + - trace: fix potenial dangerous pointer + - arm64: pgtable: Fix pte_accessible() + - arm64: pgtable: Ensure dirty bit is preserved across pte_wrprotect() + - drm/amd/amdgpu: fix null pointer in runtime pm + - drm/amd/display: Avoid HDCP initialization in devices without output + - HID: uclogic: Add ID for Trust Flex Design Tablet + - HID: ite: Replace ABS_MISC 120/121 events with touchpad on/off keypresses + - HID: cypress: Support Varmilo Keyboards' media hotkeys + - HID: add support for Sega Saturn + - Input: i8042 - allow insmod to succeed on devices without an i8042 + controller + - HID: hid-sensor-hub: Fix issue with devices with no report ID + - staging: ralink-gdma: fix kconfig dependency bug for DMA_RALINK + - HID: add HID_QUIRK_INCREMENT_USAGE_ON_DUPLICATE for Gamevice devices + - dmaengine: xilinx_dma: use readl_poll_timeout_atomic variant + - x86/xen: don't unbind uninitialized lock_kicker_irq + - kunit: fix display of failed expectations for strings + - HID: logitech-hidpp: Add HIDPP_CONSUMER_VENDOR_KEYS quirk for the Dinovo + Edge + - HID: Add Logitech Dinovo Edge battery quirk + - proc: don't allow async path resolution of /proc/self components + - nvme: free sq/cq dbbuf pointers when dbbuf set fails + - net: stmmac: dwmac_lib: enlarge dma reset timeout + - vdpasim: fix "mac_pton" undefined error + - vhost: add helper to check if a vq has been setup + - vhost scsi: alloc cmds per vq instead of session + - vhost scsi: fix cmd completion race + - cpuidle: tegra: Annotate tegra_pm_set_cpu_in_lp2() with RCU_NONIDLE + - dmaengine: pl330: _prep_dma_memcpy: Fix wrong burst size + - scsi: libiscsi: Fix NOP race condition + - scsi: target: iscsi: Fix cmd abort fabric stop race + - perf/x86: fix sysfs type mismatches + - xtensa: uaccess: Add missing __user to strncpy_from_user() prototype + - x86/dumpstack: Do not try to access user space code of other tasks + - net: dsa: mv88e6xxx: Wait for EEPROM done after HW reset + - bus: ti-sysc: Fix reset status check for modules with quirks + - bus: ti-sysc: Fix bogus resetdone warning on enable for cpsw + - ARM: OMAP2+: Manage MPU state properly for omap_enter_idle_coupled() + - phy: tegra: xusb: Fix dangling pointer on probe failure + - iwlwifi: mvm: use the HOT_SPOT_CMD to cancel an AUX ROC + - iwlwifi: mvm: properly cancel a session protection for P2P + - iwlwifi: mvm: write queue_sync_state only for sync + - KVM: s390: pv: Mark mm as protected after the set secure parameters and + improve cleanup + - batman-adv: set .owner to THIS_MODULE + - usb: cdns3: gadget: fix some endian issues + - usb: cdns3: gadget: calculate TD_SIZE based on TD + - phy: qualcomm: usb: Fix SuperSpeed PHY OF dependency + - phy: qualcomm: Fix 28 nm Hi-Speed USB PHY OF dependency + - arch: pgtable: define MAX_POSSIBLE_PHYSMEM_BITS where needed + - bus: ti-sysc: suppress err msg for timers used as clockevent/source + - ARM: dts: dra76x: m_can: fix order of clocks + - scsi: ufs: Fix race between shutdown and runtime resume flow + - bnxt_en: fix error return code in bnxt_init_one() + - bnxt_en: fix error return code in bnxt_init_board() + - video: hyperv_fb: Fix the cache type when mapping the VRAM + - bnxt_en: Release PCI regions when DMA mask setup fails during probe. + - block/keyslot-manager: prevent crash when num_slots=1 + - cxgb4: fix the panic caused by non smac rewrite + - dpaa2-eth: select XGMAC_MDIO for MDIO bus support + - s390/qeth: make af_iucv TX notification call more robust + - s390/qeth: fix af_iucv notification race + - s390/qeth: fix tear down of async TX buffers + - drm/mediatek: dsi: Modify horizontal front/back porch byte formula + - bonding: wait for sysfs kobject destruction before freeing struct slave + - ibmvnic: fix call_netdevice_notifiers in do_reset + - ibmvnic: notify peers when failover and migration happen + - powerpc/64s: Fix allnoconfig build since uaccess flush + - iommu: Check return of __iommu_attach_device() + - IB/mthca: fix return value of error branch in mthca_init_cq() + - i40e: Fix removing driver while bare-metal VFs pass traffic + - firmware: xilinx: Fix SD DLL node reset issue + - io_uring: fix shift-out-of-bounds when round up cq size + - nfc: s3fwrn5: use signed integer for parsing GPIO numbers + - net: ena: handle bad request id in ena_netdev + - net: ena: set initial DMA width to avoid intel iommu issue + - net: ena: fix packet's addresses for rx_offset feature + - ibmvnic: fix NULL pointer dereference in reset_sub_crq_queues + - ibmvnic: fix NULL pointer dereference in ibmvic_reset_crq + - ibmvnic: enhance resetting status check during module exit + - optee: add writeback to valid memory type + - x86/tboot: Don't disable swiotlb when iommu is forced on + - arm64: tegra: Wrong AON HSP reg property size + - efi/efivars: Set generic ops before loading SSDT + - efivarfs: revert "fix memory leak in efivarfs_create()" + - efi: EFI_EARLYCON should depend on EFI + - riscv: Explicitly specify the build id style in vDSO Makefile again + - RISC-V: Add missing jump label initialization + - RISC-V: fix barrier() use in + - net: stmmac: fix incorrect merge of patch upstream + - enetc: Let the hardware auto-advance the taprio base-time of 0 + - drm/nouveau: fix relocations applying logic and a double-free + - can: gs_usb: fix endianess problem with candleLight firmware + - platform/x86: thinkpad_acpi: Send tablet mode switch at wakeup time + - platform/x86: toshiba_acpi: Fix the wrong variable assignment + - RDMA/hns: Fix wrong field of SRQ number the device supports + - RDMA/hns: Fix retry_cnt and rnr_cnt when querying QP + - RDMA/hns: Bugfix for memory window mtpt configuration + - can: m_can: m_can_open(): remove IRQF_TRIGGER_FALLING from + request_threaded_irq()'s flags + - can: m_can: fix nominal bitiming tseg2 min for version >= 3.1 + - perf record: Synthesize cgroup events only if needed + - perf stat: Use proper cpu for shadow stats + - perf probe: Fix to die_entrypc() returns error correctly + - spi: bcm2835aux: Restore err assignment in bcm2835aux_spi_probe + - USB: core: Change %pK for __user pointers to %px + - usb: gadget: f_midi: Fix memleak in f_midi_alloc + - USB: core: Fix regression in Hercules audio card + - USB: quirks: Add USB_QUIRK_DISCONNECT_SUSPEND quirk for Lenovo A630Z TIO + built-in usb-audio card + - usb: gadget: Fix memleak in gadgetfs_fill_super + - irqchip/exiu: Fix the index of fwspec for IRQ type + - x86/mce: Do not overwrite no_way_out if mce_end() fails + - x86/speculation: Fix prctl() when spectre_v2_user={seccomp,prctl},ibpb + - x86/resctrl: Remove superfluous kernfs_get() calls to prevent refcount leak + - x86/resctrl: Add necessary kernfs_put() calls to prevent refcount leak + - devlink: Hold rtnl lock while reading netdev attributes + - devlink: Make sure devlink instance and port are in same net namespace + - ipv6: addrlabel: fix possible memory leak in ip6addrlbl_net_init + - net/af_iucv: set correct sk_protocol for child sockets + - net: openvswitch: fix TTL decrement action netlink message format + - net/tls: missing received data after fast remote close + - net/tls: Protect from calling tls_dev_del for TLS RX twice + - rose: Fix Null pointer dereference in rose_send_frame() + - sock: set sk_err to ee_errno on dequeue from errq + - tcp: Set INET_ECN_xmit configuration in tcp_reinit_congestion_control + - tun: honor IOCB_NOWAIT flag + - usbnet: ipheth: fix connectivity with iOS 14 + - vsock/virtio: discard packets only when socket is really closed + - net/packet: fix packet receive on L3 devices without visible hard header + - netfilter: bridge: reset skb->pkt_type after NF_INET_POST_ROUTING traversal + - ipv4: Fix tos mask in inet_rtm_getroute() + - dt-bindings: net: correct interrupt flags in examples + - chelsio/chtls: fix panic during unload reload chtls + - ibmvnic: Ensure that SCRQ entry reads are correctly ordered + - ibmvnic: Fix TX completion error handling + - tipc: fix incompatible mtu of transmission + - inet_ecn: Fix endianness of checksum update when setting ECT(1) + - net: ip6_gre: set dev->hard_header_len when using header_ops + - dpaa_eth: copy timestamp fields to new skb in A-050385 workaround + - net/x25: prevent a couple of overflows + - cxgb3: fix error return code in t3_sge_alloc_qset() + - net: pasemi: fix error return code in pasemi_mac_open() + - vxlan: fix error return code in __vxlan_dev_create() + - chelsio/chtls: fix a double free in chtls_setkey() + - net: mvpp2: Fix error return code in mvpp2_open() + - net: skbuff: ensure LSE is pullable before decrementing the MPLS ttl + - net: openvswitch: ensure LSE is pullable before reading it + - net/sched: act_mpls: ensure LSE is pullable before reading it + - net/mlx5: DR, Proper handling of unsupported Connect-X6DX SW steering + - net/mlx5: Fix wrong address reclaim when command interface is down + - net: mlx5e: fix fs_tcp.c build when IPV6 is not enabled + - ALSA: usb-audio: US16x08: fix value count for level meters + - Input: xpad - support Ardwiino Controllers + - tracing: Fix alignment of static buffer + - tracing: Remove WARN_ON in start_thread() + - uapi: fix statx attribute value overlap for DAX & MOUNT_ROOT + - drm/i915/gt: Fixup tgl mocs for PTE tracking + - usb: gadget: f_fs: Use local copy of descriptors for userspace copy + - USB: serial: kl5kusb105: fix memleak on open + - USB: serial: ch341: add new Product ID for CH341A + - USB: serial: ch341: sort device-id entries + - USB: serial: option: add Fibocom NL668 variants + - USB: serial: option: add support for Thales Cinterion EXS82 + - USB: serial: option: fix Quectel BG96 matching + - tty: Fix ->pgrp locking in tiocspgrp() + - tty: Fix ->session locking + - speakup: Reject setting the speakup line discipline outside of speakup + - ALSA: hda/realtek: Fix bass speaker DAC assignment on Asus Zephyrus G14 + - ALSA: hda/realtek: Add mute LED quirk to yet another HP x360 model + - ALSA: hda/realtek: Enable headset of ASUS UX482EG & B9400CEA with ALC294 + - ALSA: hda/realtek - Add new codec supported for ALC897 + - ALSA: hda/realtek - Fixed Dell AIO wrong sound tone + - ALSA: hda/generic: Add option to enforce preferred_dacs pairs + - ftrace: Fix updating FTRACE_FL_TRAMP + - ftrace: Fix DYNAMIC_FTRACE_WITH_DIRECT_CALLS dependency + - cifs: allow syscalls to be restarted in __smb_send_rqst() + - cifs: fix potential use-after-free in cifs_echo_request() + - cifs: refactor create_sd_buf() and and avoid corrupting the buffer + - gfs2: Upgrade shared glocks for atime updates + - gfs2: Fix deadlock between gfs2_{create_inode,inode_lookup} and + delete_work_func + - s390/pci: fix CPU address in MSI for directed IRQ + - i2c: imx: Fix reset of I2SR_IAL flag + - i2c: imx: Check for I2SR_IAL after every byte + - i2c: imx: Don't generate STOP condition if arbitration has been lost + - tracing: Fix userstacktrace option for instances + - thunderbolt: Fix use-after-free in remove_unplugged_switch() + - drm/omap: sdi: fix bridge enable/disable + - drm/i915/gt: Retain default context state across shrinking + - drm/i915/gt: Limit frequency drop to RPe on parking + - drm/i915/gt: Program mocs:63 for cache eviction on gen9 + - KVM: PPC: Book3S HV: XIVE: Fix vCPU id sanity check + - scsi: mpt3sas: Fix ioctl timeout + - io_uring: fix recvmsg setup with compat buf-select + - dm writecache: advance the number of arguments when reporting max_age + - dm writecache: fix the maximum number of arguments + - powerpc/64s/powernv: Fix memory corruption when saving SLB entries on MCE + - genirq/irqdomain: Add an irq_create_mapping_affinity() function + - powerpc/pseries: Pass MSI affinity to irq_create_mapping() + - dm: fix bug with RCU locking in dm_blk_report_zones + - dm: fix double RCU unlock in dm_dax_zero_page_range() error path + - dm: remove invalid sparse __acquires and __releases annotations + - x86/uprobes: Do not use prefixes.nbytes when looping over prefixes.bytes + - coredump: fix core_pattern parse error + - mm: list_lru: set shrinker map bit when child nr_items is not zero + - mm/swapfile: do not sleep with a spin lock held + - hugetlb_cgroup: fix offline of hugetlb cgroup with reservations + - Revert "amd/amdgpu: Disable VCN DPG mode for Picasso" + - iommu/amd: Set DTE[IntTabLen] to represent 512 IRTEs + - lib/syscall: fix syscall registers retrieval on 32-bit platforms + - can: af_can: can_rx_unregister(): remove WARN() statement from list + operation sanity check + - gfs2: check for empty rgrp tree in gfs2_ri_update + - netfilter: ipset: prevent uninit-value in hash_ip6_add + - tipc: fix a deadlock when flushing scheduled work + - ASoC: wm_adsp: fix error return code in wm_adsp_load() + - gfs2: Fix deadlock dumping resource group glocks + - gfs2: Don't freeze the file system during unmount + - rtw88: debug: Fix uninitialized memory in debugfs code + - i2c: qcom: Fix IRQ error misassignement + - i2c: qup: Fix error return code in qup_i2c_bam_schedule_desc() + - dm writecache: remove BUG() and fail gracefully instead + - Input: i8042 - fix error return code in i8042_setup_aux() + - netfilter: nf_tables: avoid false-postive lockdep splat + - netfilter: nftables_offload: set address type in control dissector + - netfilter: nftables_offload: build mask based from the matching bytes + - x86/insn-eval: Use new for_each_insn_prefix() macro to loop over prefixes + bytes + - bpf: Fix propagation of 32-bit signed bounds from 64-bit bounds. + * dep-8 ubuntu-regression-suite tests are not run for all linux-hwe-* kernels + (LP: #1908529) + - [dep-8] Allow all hwe kernels + * disable building bpf selftests (LP: #1908144) + - SAUCE: selftests/bpf: Clarify build error if no vmlinux + - SAUCE: selftests: Skip BPF seftests by default + - disable building bpf selftests (no VMLINUX_BTF) + * selftests: test_vxlan_under_vrf: mute unnecessary error message + (LP: #1908342) + - selftests: test_vxlan_under_vrf: mute unnecessary error message + * Groovy update: upstream stable patchset 2020-12-17 (LP: #1908555) + - drm/i915: Hold onto an explicit ref to i915_vma_work.pinned + - drm/i915/gem: Flush coherency domains on first set-domain-ioctl + - mm: memcg: link page counters to root if use_hierarchy is false + - nbd: don't update block size after device is started + - KVM: arm64: Force PTE mapping on fault resulting in a device mapping + - ASoC: Intel: kbl_rt5663_max98927: Fix kabylake_ssp_fixup function + - genirq: Let GENERIC_IRQ_IPI select IRQ_DOMAIN_HIERARCHY + - hv_balloon: disable warning when floor reached + - net: xfrm: fix a race condition during allocing spi + - ASoC: codecs: wsa881x: add missing stream rates and format + - irqchip/sifive-plic: Fix broken irq_set_affinity() callback + - kunit: Fix kunit.py --raw_output option + - kunit: Don't fail test suites if one of them is empty + - usb: gadget: fsl: fix null pointer checking + - selftests: filter kselftest headers from command in lib.mk + - ASoC: codecs: wcd934x: Set digital gain range correctly + - ASoC: codecs: wcd9335: Set digital gain range correctly + - mtd: spi-nor: Fix address width on flash chips > 16MB + - xfs: set xefi_discard when creating a deferred agfl free log intent item + - mac80211: don't require VHT elements for HE on 2.4 GHz + - netfilter: nftables: fix netlink report logic in flowtable and genid + - netfilter: use actual socket sk rather than skb sk when routing harder + - netfilter: nf_tables: missing validation from the abort path + - netfilter: ipset: Update byte and packet counters regardless of whether they + match + - irqchip/sifive-plic: Fix chip_data access within a hierarchy + - powerpc/eeh_cache: Fix a possible debugfs deadlock + - drm/vc4: bo: Add a managed action to cleanup the cache + - IB/srpt: Fix memory leak in srpt_add_one + - mm: memcontrol: correct the NR_ANON_THPS counter of hierarchical memcg + - drm/panfrost: rename error labels in device_init + - drm/panfrost: move devfreq_init()/fini() in device + - drm/panfrost: Fix module unload + - perf trace: Fix segfault when trying to trace events by cgroup + - perf tools: Add missing swap for ino_generation + - perf tools: Add missing swap for cgroup events + - ALSA: hda: prevent undefined shift in snd_hdac_ext_bus_get_link() + - iommu/vt-d: Fix a bug for PDP check in prq_event_thread + - afs: Fix warning due to unadvanced marshalling pointer + - afs: Fix incorrect freeing of the ACL passed to the YFS ACL store op + - vfio/pci: Implement ioeventfd thread handler for contended memory lock + - can: rx-offload: don't call kfree_skb() from IRQ context + - can: dev: can_get_echo_skb(): prevent call to kfree_skb() in hard IRQ + context + - can: dev: __can_get_echo_skb(): fix real payload length return value for RTR + frames + - can: can_create_echo_skb(): fix echo skb generation: always use skb_clone() + - can: j1939: swap addr and pgn in the send example + - can: j1939: j1939_sk_bind(): return failure if netdev is down + - can: ti_hecc: ti_hecc_probe(): add missed clk_disable_unprepare() in error + path + - can: xilinx_can: handle failure cases of pm_runtime_get_sync + - can: peak_usb: add range checking in decode operations + - can: peak_usb: peak_usb_get_ts_time(): fix timestamp wrapping + - can: peak_canfd: pucan_handle_can_rx(): fix echo management when loopback is + on + - can: flexcan: remove FLEXCAN_QUIRK_DISABLE_MECR quirk for LS1021A + - can: flexcan: flexcan_remove(): disable wakeup completely + - xfs: flush new eof page on truncate to avoid post-eof corruption + - xfs: fix missing CoW blocks writeback conversion retry + - xfs: fix scrub flagging rtinherit even if there is no rt device + - spi: fsl-dspi: fix wrong pointer in suspend/resume + - ceph: add check_session_state() helper and make it global + - ceph: check the sesion state and return false in case it is closed + - ceph: check session state after bumping session->s_seq + - x86/speculation: Allow IBPB to be conditionally enabled on CPUs with always- + on STIBP + - kbuild: explicitly specify the build id style + - RISC-V: Fix the VDSO symbol generaton for binutils-2.35+ + - USB: apple-mfi-fastcharge: fix reference leak in apple_mfi_fc_set_property + - tpm: efi: Don't create binary_bios_measurements file for an empty log + - KVM: arm64: ARM_SMCCC_ARCH_WORKAROUND_1 doesn't return + SMCCC_RET_NOT_REQUIRED + - ath9k_htc: Use appropriate rs_datalen type + - ASoC: qcom: sdm845: set driver name correctly + - ASoC: cs42l51: manage mclk shutdown delay + - ASoC: SOF: loader: handle all SOF_IPC_EXT types + - usb: dwc3: pci: add support for the Intel Alder Lake-S + - opp: Reduce the size of critical section in _opp_table_kref_release() + - usb: gadget: goku_udc: fix potential crashes in probe + - usb: raw-gadget: fix memory leak in gadget_setup + - selftests: pidfd: fix compilation errors due to wait.h + - x86/boot/compressed/64: Introduce sev_status + - gfs2: Free rd_bits later in gfs2_clear_rgrpd to fix use-after-free + - gfs2: Add missing truncate_inode_pages_final for sd_aspace + - gfs2: check for live vs. read-only file system in gfs2_fitrim + - scsi: hpsa: Fix memory leak in hpsa_init_one() + - drm/amdgpu: perform srbm soft reset always on SDMA resume + - drm/amd/pm: correct the baco reset sequence for CI ASICs + - drm/amd/pm: perform SMC reset on suspend/hibernation + - drm/amd/pm: do not use ixFEATURE_STATUS for checking smc running + - mac80211: fix use of skb payload instead of header + - cfg80211: initialize wdev data earlier + - cfg80211: regulatory: Fix inconsistent format argument + - wireguard: selftests: check that route_me_harder packets use the right sk + - tracing: Fix the checking of stackidx in __ftrace_trace_stack + - ARC: [plat-hsdk] Remap CCMs super early in asm boot trampoline + - scsi: scsi_dh_alua: Avoid crash during alua_bus_detach() + - scsi: mpt3sas: Fix timeouts observed while reenabling IRQ + - nvme: introduce nvme_sync_io_queues + - nvme-rdma: avoid race between time out and tear down + - nvme-tcp: avoid race between time out and tear down + - nvme-rdma: avoid repeated request completion + - nvme-tcp: avoid repeated request completion + - iommu/amd: Increase interrupt remapping table limit to 512 entries + - s390/smp: move rcu_cpu_starting() earlier + - vfio: platform: fix reference leak in vfio_platform_open + - vfio/pci: Bypass IGD init in case of -ENODEV + - i2c: mediatek: move dma reset before i2c reset + - iomap: clean up writeback state logic on writepage error + - selftests: proc: fix warning: _GNU_SOURCE redefined + - arm64: kexec_file: try more regions if loading segments fails + - riscv: Set text_offset correctly for M-Mode + - i2c: sh_mobile: implement atomic transfers + - i2c: designware: call i2c_dw_read_clear_intrbits_slave() once + - i2c: designware: slave should do WRITE_REQUESTED before WRITE_RECEIVED + - tpm_tis: Disable interrupts on ThinkPad T490s + - spi: bcm2835: remove use of uninitialized gpio flags variable + - mfd: sprd: Add wakeup capability for PMIC IRQ + - pinctrl: intel: Fix 2 kOhm bias which is 833 Ohm + - pinctrl: intel: Set default bias in case no particular value given + - gpio: aspeed: fix ast2600 bank properties + - ARM: 9019/1: kprobes: Avoid fortify_panic() when copying optprobe template + - bpf: Don't rely on GCC __attribute__((optimize)) to disable GCSE + - libbpf, hashmap: Fix undefined behavior in hash_bits + - pinctrl: mcp23s08: Use full chunk of memory for regmap configuration + - pinctrl: aspeed: Fix GPI only function problem. + - net/mlx5e: Fix modify header actions memory leak + - net/mlx5e: Protect encap route dev from concurrent release + - net/mlx5e: Use spin_lock_bh for async_icosq_lock + - net/mlx5: Fix deletion of duplicate rules + - net/mlx5e: Fix incorrect access of RCU-protected xdp_prog + - SUNRPC: Fix general protection fault in trace_rpc_xdr_overflow() + - NFSD: Fix use-after-free warning when doing inter-server copy + - NFSD: fix missing refcount in nfsd4_copy by nfsd4_do_async_copy + - tools/bpftool: Fix attaching flow dissector + - bpf: Zero-fill re-used per-cpu map element + - r8169: fix potential skb double free in an error path + - r8169: disable hw csum for short packets on all chip versions + - pinctrl: qcom: Move clearing pending IRQ to .irq_request_resources callback + - pinctrl: qcom: sm8250: Specify PDC map + - nbd: fix a block_device refcount leak in nbd_release + - selftest: fix flower terse dump tests + - i40e: Fix MAC address setting for a VF via Host/VM + - igc: Fix returning wrong statistics + - lan743x: correctly handle chips with internal PHY + - net: phy: realtek: support paged operations on RTL8201CP + - xfs: fix flags argument to rmap lookup when converting shared file rmaps + - xfs: set the unwritten bit in rmap lookup flags in xchk_bmap_get_rmapextents + - xfs: fix rmap key and record comparison functions + - xfs: fix brainos in the refcount scrubber's rmap fragment processor + - lan743x: fix "BUG: invalid wait context" when setting rx mode + - xfs: fix a missing unlock on error in xfs_fs_map_blocks + - of/address: Fix of_node memory leak in of_dma_is_coherent + - ch_ktls: Update cheksum information + - ch_ktls: tcb update fails sometimes + - cosa: Add missing kfree in error path of cosa_write + - hwmon: (applesmc) Re-work SMC comms + - vrf: Fix fast path output packet handling with async Netfilter rules + - lan743x: fix use of uninitialized variable + - arm64/mm: Validate hotplug range before creating linear mapping + - kernel/watchdog: fix watchdog_allowed_mask not used warning + - mm: memcontrol: fix missing wakeup polling thread + - afs: Fix afs_write_end() when called with copied == 0 [ver #3] + - perf: Fix get_recursion_context() + - nvme: factor out a nvme_configure_metadata helper + - nvme: freeze the queue over ->lba_shift updates + - nvme: fix incorrect behavior when BLKROSET is called by the user + - perf: Simplify group_sched_in() + - perf: Fix event multiplexing for exclusive groups + - firmware: xilinx: fix out-of-bounds access + - erofs: fix setting up pcluster for temporary pages + - erofs: derive atime instead of leaving it empty + - ext4: correctly report "not supported" for {usr,grp}jquota when + !CONFIG_QUOTA + - ext4: unlock xattr_sem properly in ext4_inline_data_truncate() + - btrfs: fix potential overflow in cluster_pages_for_defrag on 32bit arch + - btrfs: ref-verify: fix memory leak in btrfs_ref_tree_mod + - btrfs: fix min reserved size calculation in merge_reloc_root + - btrfs: dev-replace: fail mount if we don't have replace item with target + device + - KVM: arm64: Don't hide ID registers from userspace + - speakup: Fix var_id_t values and thus keymap + - speakup ttyio: Do not schedule() in ttyio_in_nowait + - speakup: Fix clearing selection in safe context + - thunderbolt: Fix memory leak if ida_simple_get() fails in + enumerate_services() + - thunderbolt: Add the missed ida_simple_remove() in ring_request_msix() + - block: add a return value to set_capacity_revalidate_and_notify + - loop: Fix occasional uevent drop + - uio: Fix use-after-free in uio_unregister_device() + - usb: cdc-acm: Add DISABLE_ECHO for Renesas USB Download mode + - usb: typec: ucsi: Report power supply changes + - xhci: hisilicon: fix refercence leak in xhci_histb_probe + - virtio: virtio_console: fix DMA memory allocation for rproc serial + - mei: protect mei_cl_mtu from null dereference + - futex: Don't enable IRQs unconditionally in put_pi_state() + - jbd2: fix up sparse warnings in checkpoint code + - bootconfig: Extend the magic check range to the preceding 3 bytes + - mm/compaction: count pages and stop correctly during page isolation + - mm/compaction: stop isolation if too many pages are isolated and we have + pages to migrate + - mm/slub: fix panic in slab_alloc_node() + - mm/vmscan: fix NR_ISOLATED_FILE corruption on 64-bit + - mm/gup: use unpin_user_pages() in __gup_longterm_locked() + - Revert "kernel/reboot.c: convert simple_strtoul to kstrtoint" + - reboot: fix overflow parsing reboot cpu number + - hugetlbfs: fix anon huge page migration race + - ocfs2: initialize ip_next_orphan + - selinux: Fix error return code in sel_ib_pkey_sid_slow() + - io_uring: round-up cq size before comparing with rounded sq size + - gpio: sifive: Fix SiFive gpio probe + - gpio: pcie-idio-24: Fix irq mask when masking + - gpio: pcie-idio-24: Fix IRQ Enable Register value + - gpio: pcie-idio-24: Enable PEX8311 interrupts + - mmc: sdhci-of-esdhc: Handle pulse width detection erratum for more SoCs + - mmc: renesas_sdhi_core: Add missing tmio_mmc_host_free() at remove + - don't dump the threads that had been already exiting when zapped. + - drm/i915: Correctly set SFC capability for video engines + - drm/gma500: Fix out-of-bounds access to struct drm_device.vblank[] + - pinctrl: amd: use higher precision for 512 RtcClk + - pinctrl: amd: fix incorrect way to disable debounce filter + - swiotlb: fix "x86: Don't panic if can not alloc buffer for swiotlb" + - cpufreq: Introduce governor flags + - cpufreq: Introduce CPUFREQ_GOV_STRICT_TARGET + - cpufreq: Add strict_target to struct cpufreq_policy + - ethtool: netlink: add missing netdev_features_change() call + - IPv6: Set SIT tunnel hard_header_len to zero + - net/af_iucv: fix null pointer dereference on shutdown + - net: udp: fix IP header access and skb lookup on Fast/frag0 UDP GRO + - net: udp: fix UDP header access on Fast/frag0 UDP GRO + - net: Update window_clamp if SOCK_RCVBUF is set + - net/x25: Fix null-ptr-deref in x25_connect + - tipc: fix memory leak in tipc_topsrv_start() + - powerpc/603: Always fault when _PAGE_ACCESSED is not set + - null_blk: Fix scheduling in atomic with zoned mode + - perf scripting python: Avoid declaring function pointers with a visibility + attribute + - coresight: etm: perf: Sink selection using sysfs is deprecated + - coresight: Fix uninitialised pointer bug in etm_setup_aux() + - Convert trailing spaces and periods in path components + - random32: make prandom_u32() output unpredictable + - amd/amdgpu: Disable VCN DPG mode for Picasso + * [SRU][F/G/H/U/OEM-5.6] Fix i2c report error on elan trackpoint + (LP: #1908335) + - Input: elan_i2c - add support for high resolution reports + - Input: elan_i2c - add new trackpoint report type 0x5F + - Input: elantech - fix protocol errors for some trackpoints in SMBus mode + * [SRU][OEM-5.6] UBUNTU: SAUCE: Fix brightness control on BOE 2270 panel + (LP: #1904991) + - drm/i915: Force DPCD backlight mode for BOE 2270 panel + * rtwpci driver blocks the system to enter PC10, stuck at PC3 (LP: #1907200) + - SAUCE: rtw88: 8723de: let cpu enter c10 + * Touchpad not detected on ByteSpeed C15B laptop (LP: #1906128) + - Input: i8042 - add ByteSpeed touchpad to noloop table + * Fix reading speed and duplex sysfs on igc device (LP: #1906851) + - SAUCE: igc: Report speed and duplex as unknown when device is runtime + suspended + * Groovy update: upstream stable patchset 2020-12-15 (LP: #1908323) + - tipc: fix use-after-free in tipc_bcast_get_mode + - drm/i915/gem: Avoid implicit vmap for highmem on x86-32 + - drm/i915/gem: Prevent using pgprot_writecombine() if PAT is not supported + - drm/i915/gem: Always test execution status on closing the context + - drm/i915/gt: Always send a pulse down the engine after disabling heartbeat + - drm/i915: Break up error capture compression loops with cond_resched() + - drm/i915: Cancel outstanding work after disabling heartbeats on an engine + - drm/i915: Avoid mixing integer types during batch copies + - drm/i915/gt: Initialize reserved and unspecified MOCS indices + - drm/i915/gt: Undo forced context restores after trivial preemptions + - drm/i915: Drop runtime-pm assert from vgpu io accessors + - drm/i915: Exclude low pages (128KiB) of stolen from use + - drm/i915: Use the active reference on the vma while capturing + - drm/i915: Reject 90/270 degree rotated initial fbs + - drm/i915: Restore ILK-M RPS support + - drm/nouveau/device: fix changing endianess code to work on older GPUs + - ptrace: fix task_join_group_stop() for the case when current is traced + - cadence: force nonlinear buffers to be cloned + - chelsio/chtls: fix memory leaks caused by a race + - chelsio/chtls: fix always leaking ctrl_skb + - dpaa_eth: update the buffer layout for non-A050385 erratum scenarios + - dpaa_eth: fix the RX headroom size alignment + - gianfar: Replace skb_realloc_headroom with skb_cow_head for PTP + - gianfar: Account for Tx PTP timestamp in the skb headroom + - ionic: check port ptr before use + - ip_tunnel: fix over-mtu packet send fail without TUNNEL_DONT_FRAGMENT flags + - net: ethernet: ti: cpsw: disable PTPv1 hw timestamping advertisement + - net: usb: qmi_wwan: add Telit LE910Cx 0x1230 composition + - powerpc/vnic: Extend "failover pending" window + - sctp: Fix COMM_LOST/CANT_STR_ASSOC err reporting on big-endian platforms + - sfp: Fix error handing in sfp_probe() + - ip6_tunnel: set inner ipproto before ip6_tnl_encap + - net: fec: fix MDIO probing for some FEC hardware blocks + - r8169: work around short packet hw bug on RTL8125 + - drm/nouveau/kms/nv50-: Get rid of bogus nouveau_conn_mode_valid() + - drm/nouveau/kms/nv50-: Fix clock checking algorithm in nv50_dp_mode_valid() + - Fonts: Replace discarded const qualifier + - ALSA: hda/realtek - Fixed HP headset Mic can't be detected + - ALSA: hda/realtek - Enable headphone for ASUS TM420 + - ALSA: usb-audio: Add implicit feedback quirk for Zoom UAC-2 + - ALSA: usb-audio: add usb vendor id as DSD-capable for Khadas devices + - ALSA: usb-audio: Add implicit feedback quirk for Qu-16 + - ALSA: usb-audio: Add implicit feedback quirk for MODX + - hugetlb_cgroup: fix reservation accounting + - mm: mempolicy: fix potential pte_unmap_unlock pte error + - lib/crc32test: remove extra local_irq_disable/enable + - kthread_worker: prevent queuing delayed work from timer_fn when it is being + canceled + - mm: always have io_remap_pfn_range() set pgprot_decrypted() + - perf hists browser: Increase size of 'buf' in perf_evsel__hists_browse() + - gfs2: Wake up when sd_glock_disposal becomes zero + - gfs2: Don't call cancel_delayed_work_sync from within delete work function + - ring-buffer: Fix recursion protection transitions between interrupt context + - iommu/vt-d: Fix kernel NULL pointer dereference in find_domain() + - mtd: spi-nor: Don't copy self-pointing struct around + - ftrace: Fix recursion check for NMI test + - ftrace: Handle tracing when switching between context + - regulator: defer probe when trying to get voltage from unresolved supply + - spi: bcm2835: fix gpio cs level inversion + - tracing: Fix out of bounds write in get_trace_buf + - futex: Handle transient "ownerless" rtmutex state correctly + - x86/lib: Change .weak to SYM_FUNC_START_WEAK for arch/x86/lib/mem*_64.S + - ARM: dts: sun4i-a10: fix cpu_alert temperature + - arm64: dts: meson: add missing g12 rng clock + - arm64: dts: amlogic: meson-g12: use the G12A specific dwmac compatible + - x86/kexec: Use up-to-dated screen_info copy to fill boot params + - hyperv_fb: Update screen_info after removing old framebuffer + - arm64: dts: amlogic: add missing ethernet reset ID + - io_uring: don't miss setting IO_WQ_WORK_CONCURRENT + - of: Fix reserved-memory overlap detection + - ARM: dts: mmp3: Add power domain for the camera + - drm/sun4i: frontend: Rework a bit the phase data + - drm/sun4i: frontend: Reuse the ch0 phase for RGB formats + - drm/sun4i: frontend: Fix the scaler phase on A33 + - drm/v3d: Fix double free in v3d_submit_cl_ioctl() + - blk-cgroup: Fix memleak on error path + - blk-cgroup: Pre-allocate tree node on blkg_conf_prep + - btrfs: drop the path before adding qgroup items when enabling qgroups + - btrfs: add a helper to read the tree_root commit root for backref lookup + - scsi: core: Don't start concurrent async scan on same host + - drm/amdgpu: disable DCN and VCN for navi10 blockchain SKU(v3) + - drm/amdgpu: add DID for navi10 blockchain SKU + - scsi: ibmvscsi: Fix potential race after loss of transport + - vsock: use ns_capable_noaudit() on socket create + - nvme-rdma: handle unexpected nvme completion data length + - nvmet: fix a NULL pointer dereference when tracing the flush command + - drm/vc4: drv: Add error handding for bind + - ACPI: NFIT: Fix comparison to '-ENXIO' + - usb: cdns3: gadget: suspicious implicit sign extension + - drm/nouveau/nouveau: fix the start/end range for migration + - drm/nouveau/gem: fix "refcount_t: underflow; use-after-free" + - arm64/smp: Move rcu_cpu_starting() earlier + - tty: fix crash in release_tty if tty->port is not set + - fork: fix copy_process(CLONE_PARENT) race with the exiting ->real_parent + - s390/mm: make pmd/pud_deref() large page aware + - s390/pkey: fix paes selftest failure with paes and pkey static build + - powerpc/8xx: Always fault when _PAGE_ACCESSED is not set + - powerpc/40x: Always fault when _PAGE_ACCESSED is not set + - serial: 8250_mtk: Fix uart_get_baud_rate warning + - serial: txx9: add missing platform_driver_unregister() on error in + serial_txx9_init + - USB: serial: cyberjack: fix write-URB completion race + - USB: serial: option: add Quectel EC200T module support + - USB: serial: option: add LE910Cx compositions 0x1203, 0x1230, 0x1231 + - USB: serial: option: add Telit FN980 composition 0x1055 + - usb: dwc3: ep0: Fix delay status handling + - USB: Add NO_LPM quirk for Kingston flash drive + - usb: mtu3: fix panic in mtu3_gadget_stop() + - io_uring: fix link lookup racing with link timeout + - drm/panfrost: Fix a deadlock between the shrinker and madvise path + - ARC: stack unwinding: avoid indefinite looping + - PM: runtime: Drop runtime PM references to supplier on link removal + - PM: runtime: Drop pm_runtime_clean_up_links() + - PM: runtime: Resume the device earlier in __device_release_driver() + - drm/i915/gt: Use the local HWSP offset during submission + - perf/core: Fix a memory leak in perf_event_parse_addr_filter() + - Revert "coresight: Make sysfs functional on topologies with per core sink" + * Groovy update: upstream stable patchset 2020-12-14 (LP: #1908150) + - xen/events: avoid removing an event channel while handling it + - xen/events: add a proper barrier to 2-level uevent unmasking + - xen/events: fix race in evtchn_fifo_unmask() + - xen/events: add a new "late EOI" evtchn framework + - xen/blkback: use lateeoi irq binding + - xen/netback: use lateeoi irq binding + - xen/scsiback: use lateeoi irq binding + - xen/pvcallsback: use lateeoi irq binding + - xen/pciback: use lateeoi irq binding + - xen/events: switch user event channels to lateeoi model + - xen/events: use a common cpu hotplug hook for event channels + - xen/events: defer eoi in case of excessive number of events + - xen/events: block rogue events for some time + - firmware: arm_scmi: Fix ARCH_COLD_RESET + - firmware: arm_scmi: Expand SMC/HVC message pool to more than one + - tee: client UUID: Skip REE kernel login method as well + - firmware: arm_scmi: Add missing Rx size re-initialisation + - x86/unwind/orc: Fix inactive tasks with stack pointer in %sp on GCC 10 + compiled kernels + - x86/alternative: Don't call text_poke() in lazy TLB mode + - ionic: no rx flush in deinit + - RDMA/mlx5: Fix devlink deadlock on net namespace deletion + - mlxsw: core: Fix use-after-free in mlxsw_emad_trans_finish() + - tracing, synthetic events: Replace buggy strcat() with seq_buf operations + - afs: Fix a use after free in afs_xattr_get_acl() + - afs: Fix afs_launder_page to not clear PG_writeback + - RDMA/qedr: Fix memory leak in iWARP CM + - ata: sata_nv: Fix retrieving of active qcs + - arm64: efi: increase EFI PE/COFF header padding to 64 KB + - afs: Fix to take ref on page when PG_private is set + - afs: Fix page leak on afs_write_begin() failure + - afs: Fix where page->private is set during write + - afs: Wrap page->private manipulations in inline functions + - afs: Alter dirty range encoding in page->private + - mm: add thp_order + - mm: add thp_size + - afs: Fix afs_invalidatepage to adjust the dirty region + - afs: Fix dirty-region encoding on ppc32 with 64K pages + - interconnect: qcom: sdm845: Enable keepalive for the MM1 BCM + - usb: host: ehci-tegra: Fix error handling in tegra_ehci_probe() + - futex: Fix incorrect should_fail_futex() handling + - powerpc/vmemmap: Fix memory leak with vmemmap list allocation failures. + - powerpc/powernv/smp: Fix spurious DBG() warning + - RDMA/core: Change how failing destroy is handled during uobj abort + - f2fs: allocate proper size memory for zstd decompress + - powerpc/watchpoint/ptrace: Fix SETHWDEBUG when CONFIG_HAVE_HW_BREAKPOINT=N + - [Config] update config for ARCH_WANT_IRQS_OFF_ACTIVATE_MM + - mm: fix exec activate_mm vs TLB shootdown and lazy tlb switching race + - powerpc: select ARCH_WANT_IRQS_OFF_ACTIVATE_MM + - sparc64: remove mm_cpumask clearing to fix kthread_use_mm race + - f2fs: add trace exit in exception path + - f2fs: do sanity check on zoned block device path + - f2fs: fix uninit-value in f2fs_lookup + - f2fs: fix to check segment boundary during SIT page readahead + - s390/startup: avoid save_area_sync overflow + - f2fs: compress: fix to disallow enabling compress on non-empty file + - um: change sigio_spinlock to a mutex + - f2fs: handle errors of f2fs_get_meta_page_nofail + - afs: Don't assert on unpurgeable server records + - powerpc/64s: handle ISA v3.1 local copy-paste context switches + - ARM: 8997/2: hw_breakpoint: Handle inexact watchpoint addresses + - NFS4: Fix oops when copy_file_range is attempted with NFS4.0 source + - xfs: Set xfs_buf type flag when growing summary/bitmap files + - xfs: Set xfs_buf's b_ops member when zeroing bitmap/summary files + - xfs: log new intent items created as part of finishing recovered intent + items + - power: supply: bq27xxx: report "not charging" on all types + - xfs: change the order in which child and parent defer ops are finished + - xfs: fix realtime bitmap/summary file truncation when growing rt volume + - ath10k: fix retry packets update in station dump + - x86/kaslr: Initialize mem_limit to the real maximum address + - drm/ast: Separate DRM driver from PCI code + - drm/amdgpu: restore ras flags when user resets eeprom(v2) + - video: fbdev: pvr2fb: initialize variables + - ath10k: start recovery process when payload length exceeds max htc length + for sdio + - ath10k: fix VHT NSS calculation when STBC is enabled + - drm/scheduler: Scheduler priority fixes (v2) + - drm/brige/megachips: Add checking if ge_b850v3_lvds_init() is working + correctly + - ASOC: SOF: Intel: hda-codec: move unused label to correct position + - ASoC: SOF: fix a runtime pm issue in SOF when HDMI codec doesn't work + - selftests/x86/fsgsbase: Reap a forgotten child + - drm/bridge_connector: Set default status connected for eDP connectors + - media: videodev2.h: RGB BT2020 and HSV are always full range + - ASoC: AMD: Clean kernel log from deferred probe error messages + - misc: fastrpc: fix common struct sg_table related issues + - staging: wfx: fix potential use before init + - media: platform: Improve queue set up flow for bug fixing + - usb: typec: tcpm: During PR_SWAP, source caps should be sent only after + tSwapSourceStart + - media: tw5864: check status of tw5864_frameinterval_get + - drm/vkms: avoid warning in vkms_get_vblank_timestamp + - media: imx274: fix frame interval handling + - mmc: via-sdmmc: Fix data race bug + - drm/bridge/synopsys: dsi: add support for non-continuous HS clock + - brcmfmac: increase F2 watermark for BCM4329 + - arm64: topology: Stop using MPIDR for topology information + - printk: reduce LOG_BUF_SHIFT range for H8300 + - ia64: kprobes: Use generic kretprobe trampoline handler + - kgdb: Make "kgdbcon" work properly with "kgdb_earlycon" + - bpf: Permit map_ptr arithmetic with opcode add and offset 0 + - drm: exynos: fix common struct sg_table related issues + - xen: gntdev: fix common struct sg_table related issues + - drm: lima: fix common struct sg_table related issues + - drm: panfrost: fix common struct sg_table related issues + - media: uvcvideo: Fix dereference of out-of-bound list iterator + - nfc: s3fwrn5: Add missing CRYPTO_HASH dependency + - selftests/bpf: Define string const as global for test_sysctl_prog.c + - selinux: access policycaps with READ_ONCE/WRITE_ONCE + - samples/bpf: Fix possible deadlock in xdpsock + - drm/amd/display: Check clock table return + - riscv: Define AT_VECTOR_SIZE_ARCH for ARCH_DLINFO + - cpufreq: sti-cpufreq: add stih418 support + - USB: adutux: fix debugging + - uio: free uio id after uio file node is freed + - coresight: Make sysfs functional on topologies with per core sink + - drm/amdgpu: No sysfs, not an error condition + - mac80211: add missing queue/hash initialization to 802.3 xmit + - usb: xhci: omit duplicate actions when suspending a runtime suspended host. + - SUNRPC: Mitigate cond_resched() in xprt_transmit() + - cpuidle: tegra: Correctly handle result of arm_cpuidle_simple_enter() + - arm64/mm: return cpu_all_mask when node is NUMA_NO_NODE + - can: flexcan: disable clocks during stop mode + - habanalabs: remove security from ARB_MST_QUIET register + - xfs: don't free rt blocks when we're doing a REMAP bunmapi call + - xfs: avoid LR buffer overrun due to crafted h_len + - ACPI: Add out of bounds and numa_off protections to pxm_to_node() + - octeontx2-af: fix LD CUSTOM LTYPE aliasing + - brcmfmac: Fix warning message after dongle setup failed + - ath11k: Use GFP_ATOMIC instead of GFP_KERNEL in ath11k_dp_htt_get_ppdu_desc + - ath11k: fix warning caused by lockdep_assert_held + - ath11k: change to disable softirqs for ath11k_regd_update to solve deadlock + - drivers/net/wan/hdlc_fr: Correctly handle special skb->protocol values + - usb: dwc3: core: do not queue work if dr_mode is not USB_DR_MODE_OTG + - bus: mhi: core: Abort suspends due to outgoing pending packets + - bus/fsl_mc: Do not rely on caller to provide non NULL mc_io + - ACPI: HMAT: Fix handling of changes from ACPI 6.2 to ACPI 6.3 + - power: supply: test_power: add missing newlines when printing parameters by + sysfs + - drm/amd/display: HDMI remote sink need mode validation for Linux + - drm/amd/display: Avoid set zero in the requested clk + - ARC: [dts] fix the errors detected by dtbs_check + - block: Consider only dispatched requests for inflight statistic + - btrfs: fix replace of seed device + - md/bitmap: md_bitmap_get_counter returns wrong blocks + - f2fs: fix to set SBI_NEED_FSCK flag for inconsistent inode + - bnxt_en: Log unknown link speed appropriately. + - rpmsg: glink: Use complete_all for open states + - PCI/ACPI: Add Ampere Altra SOC MCFG quirk + - clk: ti: clockdomain: fix static checker warning + - nfsd: rename delegation related tracepoints to make them less confusing + - net: 9p: initialize sun_server.sun_path to have addr's value only when addr + is valid + - ceph: encode inodes' parent/d_name in cap reconnect message + - drivers: watchdog: rdc321x_wdt: Fix race condition bugs + - jbd2: avoid transaction reuse after reformatting + - ext4: Detect already used quota file early + - KVM: PPC: Book3S HV: Do not allocate HPT for a nested guest + - scsi: core: Clean up allocation and freeing of sgtables + - gfs2: call truncate_inode_pages_final for address space glocks + - gfs2: Fix NULL pointer dereference in gfs2_rgrp_dump + - gfs2: use-after-free in sysfs deregistration + - gfs2: add validation checks for size of superblock + - Handle STATUS_IO_TIMEOUT gracefully + - cifs: handle -EINTR in cifs_setattr + - arm64: dts: renesas: ulcb: add full-pwr-cycle-in-suspend into eMMC nodes + - ARM: dts: omap4: Fix sgx clock rate for 4430 + - memory: emif: Remove bogus debugfs error handling + - ARM: dts: s5pv210: Enable audio on Aries boards + - ARM: dts: s5pv210: remove DMA controller bus node name to fix dtschema + warnings + - ARM: dts: s5pv210: move fixed clocks under root node + - ARM: dts: s5pv210: move PMU node out of clock controller + - ARM: dts: s5pv210: remove dedicated 'audio-subsystem' node + - ARM: dts: s5pv210: add RTC 32 KHz clock in Aries family + - ARM: dts: s5pv210: align SPI GPIO node name with dtschema in Aries + - soc: qcom: rpmh-rsc: Sleep waiting for tcs slots to be free + - firmware: arm_scmi: Move scmi bus init and exit calls into the driver + - nbd: make the config put is called before the notifying the waiter + - sgl_alloc_order: fix memory leak + - nvme-rdma: fix crash when connect rejected + - vmlinux.lds.h: Add PGO and AutoFDO input sections + - irqchip/loongson-htvec: Fix initial interrupt clearing + - md: fix the checking of wrong work queue + - md/raid5: fix oops during stripe resizing + - mmc: sdhci: Add LTR support for some Intel BYT based controllers + - mmc: sdhci-acpi: AMDI0040: Set SDHCI_QUIRK2_PRESET_VALUE_BROKEN + - seccomp: Make duplicate listener detection non-racy + - selftests/x86/fsgsbase: Test PTRACE_PEEKUSER for GSBASE with invalid LDT GS + - perf/x86/intel: Fix Ice Lake event constraint table + - perf/x86/amd: Fix sampling Large Increment per Cycle events + - perf/amd/uncore: Set all slices and threads to restore perf stat -a + behaviour + - perf/x86/amd/ibs: Don't include randomized bits in get_ibs_op_count() + - perf/x86/amd/ibs: Fix raw sample data accumulation + - spi: spi-mtk-nor: fix timeout calculation overflow + - spi: sprd: Release DMA channel also on probe deferral + - extcon: ptn5150: Fix usage of atomic GPIO with sleeping GPIO chips + - leds: bcm6328, bcm6358: use devres LED registering function + - hwmon: (pmbus/max34440) Fix OC fault limits + - media: uvcvideo: Fix uvc_ctrl_fixup_xu_info() not having any effect + - fs: Don't invalidate page buffers in block_write_full_page() + - ACPI: configfs: Add missing config_item_put() to fix refcount leak + - NFS: fix nfs_path in case of a rename retry + - ACPI: button: fix handling lid state changes when input device closed + - ACPI / extlog: Check for RDMSR failure + - ACPI: debug: don't allow debugging when ACPI is disabled + - PCI/ACPI: Whitelist hotplug ports for D3 if power managed by ACPI + - ACPI: EC: PM: Flush EC work unconditionally after wakeup + - ACPI: EC: PM: Drop ec_no_wakeup check from acpi_ec_dispatch_gpe() + - acpi-cpufreq: Honor _PSD table setting on new AMD CPUs + - io-wq: assign NUMA node locality if appropriate + - w1: mxc_w1: Fix timeout resolution problem leading to bus error + - fs/kernel_read_file: Remove FIRMWARE_PREALLOC_BUFFER enum + - scsi: mptfusion: Fix null pointer dereferences in mptscsih_remove() + - scsi: qla2xxx: Fix MPI reset needed message + - scsi: qla2xxx: Fix reset of MPI firmware + - scsi: qla2xxx: Fix crash on session cleanup with unload + - PM: runtime: Remove link state checks in rpm_get/put_supplier() + - btrfs: qgroup: fix wrong qgroup metadata reserve for delayed inode + - btrfs: improve device scanning messages + - btrfs: qgroup: fix qgroup meta rsv leak for subvolume operations + - btrfs: sysfs: init devices outside of the chunk_mutex + - btrfs: tracepoints: output proper root owner for trace_find_free_extent() + - btrfs: reschedule if necessary when logging directory items + - btrfs: send, orphanize first all conflicting inodes when processing + references + - btrfs: send, recompute reference path after orphanization of a directory + - btrfs: use kvzalloc() to allocate clone_roots in btrfs_ioctl_send() + - btrfs: tree-checker: fix false alert caused by legacy btrfs root item + - btrfs: reschedule when cloning lots of extents + - btrfs: cleanup cow block on error + - btrfs: skip devices without magic signature when mounting + - btrfs: tree-checker: validate number of chunk stripes and parity + - btrfs: fix use-after-free on readahead extent after failure to create it + - btrfs: fix readahead hang and use-after-free after removing a device + - btrfs: drop the path before adding block group sysfs files + - usb: dwc3: pci: Allow Elkhart Lake to utilize DSM method for PM + functionality + - usb: dwc3: ep0: Fix ZLP for OUT ep0 requests + - usb: dwc3: gadget: Check MPS of the request length + - usb: dwc3: gadget: Reclaim extra TRBs after request completion + - usb: dwc3: core: add phy cleanup for probe error handling + - usb: dwc3: core: don't trigger runtime pm when remove driver + - usb: dwc3: gadget: Resume pending requests after CLEAR_STALL + - usb: dwc3: gadget: END_TRANSFER before CLEAR_STALL command + - usb: cdns3: gadget: improve the set_configuration handling + - usb: cdns3: Fix on-chip memory overflow issue + - usb: cdc-acm: fix cooldown mechanism + - usb: typec: tcpm: reset hard_reset_count for any disconnect + - usb: host: fsl-mph-dr-of: check return of dma_set_mask() + - usbcore: Check both id_table and match() when both available + - USB: apple-mfi-fastcharge: don't probe unhandled devices + - drm/i915: Force VT'd workarounds when running as a guest OS + - vt: keyboard, simplify vt_kdgkbsent + - vt: keyboard, extend func_buf_lock to readers + - HID: wacom: Avoid entering wacom_wac_pen_report for pad / battery + - x86/mce: Allow for copy_mc_fragile symbol checksum to be generated + - tty: serial: 21285: fix lockup on open + - tty: serial: fsl_lpuart: LS1021A has a FIFO size of 16 words, like LS1028A + - Revert "vhost-vdpa: fix page pinning leakage in error path" + - powerpc: Fix random segfault when freeing hugetlb range + - udf: Fix memory leak when mounting + - dmaengine: dma-jz4780: Fix race in jz4780_dma_tx_status + - vdpa_sim: Fix DMA mask + - iio: ltc2983: Fix of_node refcounting + - iio: adc: at91-sama5d2_adc: fix DMA conversion crash + - iio:imu:inv_mpu6050 Fix dma and ts alignment and data leak issues. + - iio:imu:st_lsm6dsx: check st_lsm6dsx_shub_read_output return + - iio:light:si1145: Fix timestamp alignment and prevent data leak. + - iio: adc: gyroadc: fix leak of device node iterator + - iio: ad7292: Fix of_node refcounting + - iio:adc:ti-adc0832 Fix alignment issue with timestamp + - iio:adc:ti-adc12138 Fix alignment issue with timestamp + - iio:imu:st_lsm6dsx Fix alignment and data leak issues + - iio:gyro:itg3200: Fix timestamp alignment and prevent data leak. + - powerpc/drmem: Make lmb_size 64 bit + - rcu-tasks: Fix grace-period/unlock race in RCU Tasks Trace + - rcu-tasks: Fix low-probability task_struct leak + - rcu-tasks: Enclose task-list scan in rcu_read_lock() + - MIPS: DEC: Restore bootmem reservation for firmware working memory area + - MIPS: configs: lb60: Fix defconfig not selecting correct board + - s390/stp: add locking to sysfs functions + - powerpc: Warn about use of smt_snooze_delay + - powerpc/memhotplug: Make lmb size 64bit + - powerpc/powernv/elog: Fix race while processing OPAL error log event. + - powerpc/powermac: Fix low_sleep_handler with KUAP and KUEP + - powerpc/mce: Avoid nmi_enter/exit in real mode on pseries hash + - powerpc/32: Fix vmap stack - Do not activate MMU before reading task struct + - powerpc/32: Fix vmap stack - Properly set r1 before activating MMU + - block: advance iov_iter on bio_add_hw_page failure + - io_uring: use type appropriate io_kiocb handler for double poll + - gfs2: Make sure we don't miss any delayed withdraws + - gfs2: Only access gl_delete for iopen glocks + - NFSv4: Wait for stateid updates after CLOSE/OPEN_DOWNGRADE + - NFSv4.2: support EXCHGID4_FLAG_SUPP_FENCE_OPS 4.2 EXCHANGE_ID flag + - NFSD: Add missing NFSv2 .pc_func methods + - ubifs: dent: Fix some potential memory leaks while iterating entries + - ubifs: xattr: Fix some potential memory leaks while iterating entries + - ubifs: journal: Make sure to not dirty twice for auth nodes + - ubifs: Fix a memleak after dumping authentication mount options + - ubifs: Don't parse authentication mount options in remount process + - ubifs: mount_ubifs: Release authentication resource in error handling path + - perf vendor events amd: Add L2 Prefetch events for zen1 + - perf python scripting: Fix printable strings in python3 scripts + - ARC: perf: redo the pct irq missing in device-tree handling + - ubi: check kthread_should_stop() after the setting of task state + - ia64: fix build error with !COREDUMP + - rtc: rx8010: don't modify the global rtc ops + - i2c: imx: Fix external abort on interrupt in exit paths + - drm/amdgpu: don't map BO in reserved region + - drm/amd/display: Fix incorrect backlight register offset for DCN + - drm/amd/display: Increase timeout for DP Disable + - drm/amdgpu/vcn1.0: fix no previous prototype for functions + - drm/amdgpu: vcn and jpeg ring synchronization + - drm/amdgpu: correct the gpu reset handling for job != NULL case + - drm/amdkfd: Use same SQ prefetch setting as amdgpu + - drm/amd/display: Avoid MST manager resource leak. + - drm/amdgpu: increase the reserved VM size to 2MB + - drm/amd/display: Don't invoke kgdb_breakpoint() unconditionally + - drm/amd/display: Fix kernel panic by dal_gpio_open() error + - ceph: promote to unsigned long long before shifting + - libceph: clear con->out_msg on Policy::stateful_server faults + - 9P: Cast to loff_t before multiplying + - net/sunrpc: Fix return value for sysctl sunrpc.transports + - PCI: qcom: Make sure PCIe is reset before init for rev 2.1.0 + - ring-buffer: Return 0 on success from ring_buffer_resize() + - intel_idle: Ignore _CST if control cannot be taken from the platform + - intel_idle: Fix max_cstate for processor models without C-state tables + - cpufreq: Introduce CPUFREQ_NEED_UPDATE_LIMITS driver flag + - vringh: fix __vringh_iov() when riov and wiov are different + - ext4: fix leaking sysfs kobject after failed mount + - ext4: fix error handling code in add_new_gdb + - ext4: fix invalid inode checksum + - ext4: clear buffer verified flag if read meta block from disk + - ext4: fix bdev write error check failed when mount fs with ro + - ext4: fix bs < ps issue reported with dioread_nolock mount opt + - ext4: do not use extent after put_bh + - drm/ttm: fix eviction valuable range check. + - mmc: sdhci-of-esdhc: make sure delay chain locked for HS400 + - mmc: sdhci-of-esdhc: set timeout to max before tuning + - mmc: sdhci: Use Auto CMD Auto Select only when v4_mode is true + - memory: tegra: Remove GPU from DRM IOMMU group + - memory: brcmstb_dpfe: Fix memory leak + - futex: Adjust absolute futex timeouts with per time namespace offset + - drm/amd/pm: increase mclk switch threshold to 200 us + - tty: make FONTX ioctl use the tty pointer they were actually passed + - arm64: berlin: Select DW_APB_TIMER_OF + - [Config] update annotations for DW_APB_TIMER + - cachefiles: Handle readpage error correctly + - hil/parisc: Disable HIL driver when it gets stuck + - arm: dts: mt7623: add missing pause for switchport + - ARM: aspeed: g5: Do not set sirq polarity + - ARM: dts: s5pv210: fix pinctrl property of "vibrator-en" regulator in Aries + - ARM: config: aspeed: Fix selection of media drivers + - ARM: samsung: fix PM debug build with DEBUG_LL but !MMU + - ARM: s3c24xx: fix missing system reset + - arm64: Change .weak to SYM_FUNC_START_WEAK_PI for arch/arm64/lib/mem*.S + - arm64: dts: marvell: espressobin: Add ethernet switch aliases + - null_blk: synchronization fix for zoned device + - coresight: cti: Initialize dynamic sysfs attributes + - device property: Keep secondary firmware node secondary by type + - device property: Don't clear secondary pointer for shared primary firmware + node + - KVM: arm64: Fix AArch32 handling of DBGD{CCINT,SCRext} and DBGVCR + - staging: fieldbus: anybuss: jump to correct label in an error path + - staging: comedi: cb_pcidas: Allow 2-channel commands for AO subdevice + - staging: octeon: repair "fixed-link" support + - staging: octeon: Drop on uncorrectable alignment or FCS error + - cpufreq: Introduce cpufreq_driver_test_flags() + - cpufreq: schedutil: Always call driver if CPUFREQ_NEED_UPDATE_LIMITS is set + - time: Prevent undefined behaviour in timespec64_to_ns() + - block: add capacity field to zone descriptors + - null_blk: introduce zone capacity for zoned device + - null_blk: Fix zone reset all tracing + - null_blk: Fix locking in zoned mode + - usb: dwc2: Avoid leaving the error_debugfs label unused + * [HP 635] Radeon 6310 brightness control does not work (LP: #1894667) // + Groovy update: upstream stable patchset 2020-12-14 (LP: #1908150) + - ACPI: video: use ACPI backlight for HP 635 Notebook + * CVE-2020-28974 + - vt: Disable KD_FONT_OP_COPY + * stack trace in kernel (LP: #1903596) + - net: napi: remove useless stack trace + * Refresh ACPI wakeup power to make Thunderbolt hotplug detection work + (LP: #1906229) + - PM: ACPI: PCI: Drop acpi_pm_set_bridge_wakeup() + - PM: ACPI: Refresh wakeup device power configuration every time + * CVE-2020-27777 + - powerpc/rtas: Restrict RTAS requests from userspace + - [Config]: Set CONFIG_PPC_RTAS_FILTER + * NULL pointer dereference when configuring multi-function with devfn != 0 + before devfn == 0 (LP: #1903682) + - s390/pci: fix hot-plug of PCI function missing bus + * [UBUNTU 20.10] Applications runing in QEMU/KVM get translation faults + (LP: #1906255) + - s390: fix fpu restore in entry.S + * Add dpcd backlight control for 0x4c83 0x4f41 (LP: #1905663) + - SAUCE: drm/dp: Add dpcd backlight control for 0x4c83 0x4f41 + + -- Ian May Tue, 09 Feb 2021 17:39:18 -0600 + +linux-azure (5.8.0-1022.24) groovy; urgency=medium + + * groovy/linux-azure: 5.8.0-1022.24 -proposed tracker (LP: #1914675) + + [ Ubuntu: 5.8.0-43.49 ] + + * groovy/linux: 5.8.0-43.49 -proposed tracker (LP: #1914689) + * Packaging resync (LP: #1786013) + - update dkms package versions + * Exploitable vulnerabilities in AF_VSOCK implementation (LP: #1914668) + - vsock: fix the race conditions in multi-transport support + + -- Khalid Elmously Thu, 04 Feb 2021 23:10:23 -0500 + +linux-azure (5.8.0-1020.22) groovy; urgency=medium + + * groovy/linux-azure: 5.8.0-1020.22 -proposed tracker (LP: #1912236) + + * [linux-azure] Batch hibernate and resume IO requests (LP: #1904458) + - PM: hibernate: Batch hibernate and resume IO requests + + [ Ubuntu: 5.8.0-41.46 ] + + * groovy/linux: 5.8.0-41.46 -proposed tracker (LP: #1912219) + * Groovy update: upstream stable patchset 2020-12-17 (LP: #1908555) // nvme + drive fails after some time (LP: #1910866) + - Revert "nvme-pci: remove last_sq_tail" + * initramfs unpacking failed (LP: #1835660) + - SAUCE: lib/decompress_unlz4.c: correctly handle zero-padding around initrds. + * overlay: permission regression in 5.4.0-51.56 due to patches related to + CVE-2020-16120 (LP: #1900141) + - ovl: do not fail because of O_NOATIME + + -- Kleber Sacilotto de Souza Tue, 19 Jan 2021 10:09:49 +0100 + +linux-azure (5.8.0-1019.21) groovy; urgency=medium + + [ Ubuntu: 5.8.0-40.45 ] + + * Packaging resync (LP: #1786013) + - update dkms package versions + + [ Ubuntu: 5.8.0-38.43 ] + + * groovy/linux: 5.8.0-38.43 -proposed tracker (LP: #1911143) + * CVE-2020-28374 + - SAUCE: target: fix XCOPY NAA identifier lookup + * Packaging resync (LP: #1786013) + - update dkms package versions + + -- Kleber Sacilotto de Souza Fri, 15 Jan 2021 14:58:40 +0100 + +linux-azure (5.8.0-1017.19) groovy; urgency=medium + + [ Ubuntu: 5.8.0-36.40 ] + + * debian/scripts/file-downloader does not handle positive failures correctly + (LP: #1878897) + - [Packaging] file-downloader not handling positive failures correctly + + [ Ubuntu: 5.8.0-35.39 ] + + * Packaging resync (LP: #1786013) + - update dkms package versions + * CVE-2021-1052 // CVE-2021-1053 + - [Packaging] NVIDIA -- Add the NVIDIA 460 driver + + -- Thadeu Lima de Souza Cascardo Wed, 06 Jan 2021 12:08:19 -0300 + +linux-azure (5.8.0-1016.17) groovy; urgency=medium + + * groovy/linux-azure: 5.8.0-1016.17 -proposed tracker (LP: #1907566) + + * Groovy update: v5.8.18 upstream stable release (LP: #1904941) + - [Config] linux-azure: update config for ARCH_HAS_COPY_MC + + [ Ubuntu: 5.8.0-34.37 ] + + * groovy/linux: 5.8.0-34.37 -proposed tracker (LP: #1907576) + * Packaging resync (LP: #1786013) + - update dkms package versions + * [Ubuntu 21.04 FEAT] mpt3sas: Request to include the patch set which supports + topology where zoning is enabled in expander (LP: #1899802) + - scsi: mpt3sas: Define hba_port structure + - scsi: mpt3sas: Allocate memory for hba_port objects + - scsi: mpt3sas: Rearrange _scsih_mark_responding_sas_device() + - scsi: mpt3sas: Update hba_port's sas_address & phy_mask + - scsi: mpt3sas: Get device objects using sas_address & portID + - scsi: mpt3sas: Rename transport_del_phy_from_an_existing_port() + - scsi: mpt3sas: Get sas_device objects using device's rphy + - scsi: mpt3sas: Update hba_port objects after host reset + - scsi: mpt3sas: Set valid PhysicalPort in SMPPassThrough + - scsi: mpt3sas: Handling HBA vSES device + - scsi: mpt3sas: Add bypass_dirty_port_flag parameter + - scsi: mpt3sas: Handle vSES vphy object during HBA reset + - scsi: mpt3sas: Add module parameter multipath_on_hba + - scsi: mpt3sas: Bump driver version to 35.101.00.00 + * CVE-2020-12912 + - hwmon: (amd_energy) modify the visibility of the counters + * Intel Tiger Lake IDs supplement (LP: #1904521) + - mtd: spi-nor: intel-spi: Add support for Intel Tiger Lake-H SPI serial flash + - pinctrl: tigerlake: Add support for Tiger Lake-H + * [i915] Noise-like lines of graphics corruption when moving windows in Xorg + sessions (LP: #1896091) + - Revert "UBUNTU: SAUCE: drm/i915: Synchronize active and retire callbacks" + * Fix no headset sound after S3 on Intel HDA (LP: #1904595) + - ALSA: hda: Refactor codec PM to use direct-complete optimization + - ALSA: hda: Separate runtime and system suspend + - ALSA: hda: Reinstate runtime_allow() for all hda controllers + * Ask 8821C Bluetooth controller to drop old firmware (LP: #1904221) + - Bluetooth: btrtl: Ask 8821C to drop old firmware + - Bluetooth: btrtl: fix incorrect skb allocation failure check + * Use ACPI S5 for reboot (LP: #1904225) + - PM: ACPI: reboot: Use S5 for reboot + * Groovy update: v5.8.18 upstream stable release (LP: #1904941) + - netfilter: nftables_offload: KASAN slab-out-of-bounds Read in + nft_flow_rule_create + - io_uring: don't run task work on an exiting task + - io_uring: allow timeout/poll/files killing to take task into account + - io_uring: move dropping of files into separate helper + - io_uring: stash ctx task reference for SQPOLL + - io_uring: unconditionally grab req->task + - io_uring: return cancelation status from poll/timeout/files handlers + - io_uring: enable task/files specific overflow flushing + - io_uring: don't rely on weak ->files references + - io_uring: reference ->nsproxy for file table commands + - io_wq: Make io_wqe::lock a raw_spinlock_t + - io-wq: fix use-after-free in io_wq_worker_running + - io_uring: no need to call xa_destroy() on empty xarray + - io_uring: Fix use of XArray in __io_uring_files_cancel + - io_uring: Fix XArray usage in io_uring_add_task_file + - io_uring: Convert advanced XArray uses to the normal API + - scripts/setlocalversion: make git describe output more reliable + - efi/arm64: libstub: Deal gracefully with EFI_RNG_PROTOCOL failure + - fs/kernel_read_file: Remove FIRMWARE_EFI_EMBEDDED enum + - arm64: Run ARCH_WORKAROUND_1 enabling code on all CPUs + - arm64: Run ARCH_WORKAROUND_2 enabling code on all CPUs + - arm64: link with -z norelro regardless of CONFIG_RELOCATABLE + - x86/PCI: Fix intel_mid_pci.c build error when ACPI is not enabled + - x86, powerpc: Rename memcpy_mcsafe() to copy_mc_to_{user, kernel}() + - [Config] update config for ARCH_HAS_COPY_MC + - x86/copy_mc: Introduce copy_mc_enhanced_fast_string() + - bnxt_en: Check abort error state in bnxt_open_nic(). + - bnxt_en: Fix regression in workqueue cleanup logic in bnxt_remove_one(). + - bnxt_en: Invoke cancel_delayed_work_sync() for PFs also. + - bnxt_en: Re-write PCI BARs after PCI fatal error. + - bnxt_en: Send HWRM_FUNC_RESET fw command unconditionally. + - chelsio/chtls: fix deadlock issue + - chelsio/chtls: fix memory leaks in CPL handlers + - chelsio/chtls: fix tls record info to user + - cxgb4: set up filter action after rewrites + - gtp: fix an use-before-init in gtp_newlink() + - ibmveth: Fix use of ibmveth in a bridge. + - ibmvnic: fix ibmvnic_set_mac + - mlxsw: core: Fix memory leak on module removal + - netem: fix zero division in tabledist + - net: hns3: Clear the CMDQ registers before unmapping BAR region + - net: ipa: command payloads already mapped + - net/sched: act_mpls: Add softdep on mpls_gso.ko + - r8169: fix issue with forced threading in combination with shared interrupts + - ravb: Fix bit fields checking in ravb_hwtstamp_get() + - tcp: Prevent low rmem stalls with SO_RCVLOWAT. + - tipc: fix memory leak caused by tipc_buf_append() + - net: protect tcf_block_unbind with block lock + - erofs: avoid duplicated permission check for "trusted." xattrs + - arch/x86/amd/ibs: Fix re-arming IBS Fetch + - x86/traps: Fix #DE Oops message regression + - x86/xen: disable Firmware First mode for correctable memory errors + - PCI: aardvark: Fix initialization with old Marvell's Arm Trusted Firmware + - ata: ahci: mvebu: Make SATA PHY optional for Armada 3720 + - fuse: fix page dereference after free + - bpf: Fix comment for helper bpf_current_task_under_cgroup() + - evm: Check size of security.evm before using it + - p54: avoid accessing the data mapped to streaming DMA + - cxl: Rework error message for incompatible slots + - RDMA/addr: Fix race with netevent_callback()/rdma_addr_cancel() + - mtd: lpddr: Fix bad logic in print_drs_error + - drm/i915/gem: Serialise debugfs i915_gem_objects with ctx->mutex + - serial: qcom_geni_serial: To correct QUP Version detection logic + - serial: pl011: Fix lockdep splat when handling magic-sysrq interrupt + - PM: runtime: Fix timer_expires data type on 32-bit arches + - ata: sata_rcar: Fix DMA boundary mask + - xen/gntdev.c: Mark pages as dirty + - openrisc: Fix issue with get_user for 64-bit values + - misc: rtsx: do not setting OC_POWER_DOWN reg in rtsx_pci_init_ocp() + - phy: marvell: comphy: Convert internal SMCC firmware return codes to errno + - Linux 5.8.18 + * linux-riscv 5.8.0-9-generic (all 5.8 kernels) fail to boot in qemu + (LP: #1904912) + - riscv: Fixup bootup failure with HARDENED_USERCOPY + * Bionic: btrfs: kernel BUG at /build/linux- + eTBZpZ/linux-4.15.0/fs/btrfs/ctree.c:3233! (LP: #1902254) + - btrfs: tree-checker: fix incorrect printk format + + -- Kleber Sacilotto de Souza Tue, 15 Dec 2020 18:29:30 +0100 + +linux-azure (5.8.0-1015.16) groovy; urgency=medium + + * groovy/linux-azure: 5.8.0-1015.16 -proposed tracker (LP: #1907398) + + [ Ubuntu: 5.8.0-33.36 ] + + * groovy/linux: 5.8.0-33.36 -proposed tracker (LP: #1907408) + * raid10: discard leads to corrupted file system (LP: #1907262) + - Revert "dm raid: remove unnecessary discard limits for raid10" + - Revert "dm raid: fix discard limits for raid1 and raid10" + - Revert "md/raid10: improve discard request for far layout" + - Revert "md/raid10: improve raid10 discard request" + - Revert "md/raid10: pull codes that wait for blocked dev into one function" + - Revert "md/raid10: extend r10bio devs to raid disks" + - Revert "md: add md_submit_discard_bio() for submitting discard bio" + + [ Ubuntu: 5.8.0-31.33 ] + + * groovy/linux: 5.8.0-31.33 -proposed tracker (LP: #1905299) + * Groovy 5.8 kernel hangs on boot on CPUs with eLLC (LP: #1903397) + - drm/i915: Mark ininitial fb obj as WT on eLLC machines to avoid rcu lockup + during fbdev init + * CVE-2020-4788 + - selftests/powerpc: rfi_flush: disable entry flush if present + - powerpc/64s: flush L1D on kernel entry + - powerpc/64s: flush L1D after user accesses + - selftests/powerpc: entry flush test + + -- Marcelo Henrique Cerri Wed, 09 Dec 2020 11:09:15 -0300 + +linux-azure (5.8.0-1013.14) groovy; urgency=medium + + * groovy/linux-azure: 5.8.0-1013.14 -proposed tracker (LP: #1903184) + + * linux-azure: build and include the tcm_loop module to the main kernel + package (LP: #1791794) + - [Config] linux-azure: CONFIG_LOOPBACK_TARGET=m (tcm_loop) + + [ Ubuntu: 5.8.0-30.32 ] + + * groovy/linux: 5.8.0-30.32 -proposed tracker (LP: #1903194) + * Update kernel packaging to support forward porting kernels (LP: #1902957) + - [Debian] Update for leader included in BACKPORT_SUFFIX + * Avoid double newline when running insertchanges (LP: #1903293) + - [Packaging] insertchanges: avoid double newline + * EFI: Fails when BootCurrent entry does not exist (LP: #1899993) + - efivarfs: Replace invalid slashes with exclamation marks in dentries. + * raid10: Block discard is very slow, causing severe delays for mkfs and + fstrim operations (LP: #1896578) + - md: add md_submit_discard_bio() for submitting discard bio + - md/raid10: extend r10bio devs to raid disks + - md/raid10: pull codes that wait for blocked dev into one function + - md/raid10: improve raid10 discard request + - md/raid10: improve discard request for far layout + - dm raid: fix discard limits for raid1 and raid10 + - dm raid: remove unnecessary discard limits for raid10 + * Bionic: btrfs: kernel BUG at /build/linux- + eTBZpZ/linux-4.15.0/fs/btrfs/ctree.c:3233! (LP: #1902254) + - btrfs: extent_io: do extra check for extent buffer read write functions + - btrfs: extent-tree: kill BUG_ON() in __btrfs_free_extent() + - btrfs: extent-tree: kill the BUG_ON() in insert_inline_extent_backref() + - btrfs: ctree: check key order before merging tree blocks + * Tiger Lake PMC core driver fixes (LP: #1899883) + - platform/x86: intel_pmc_core: update TGL's LPM0 reg bit map name + - platform/x86: intel_pmc_core: fix bound check in pmc_core_mphy_pg_show() + - platform/x86: pmc_core: Use descriptive names for LPM registers + - platform/x86: intel_pmc_core: Fix TigerLake power gating status map + - platform/x86: intel_pmc_core: Fix the slp_s0 counter displayed value + * drm/i915/dp_mst - System would hang during the boot up. (LP: #1902469) + - Revert "UBUNTU: SAUCE: drm/i915/display: Fix null deref in + intel_psr_atomic_check()" + - drm/i915: Fix encoder lookup during PSR atomic check + * Undetected Data corruption in MPI workloads that use VSX for reductions on + POWER9 DD2.1 systems (LP: #1902694) + - powerpc: Fix undetected data corruption with P9N DD2.1 VSX CI load emulation + - selftests/powerpc: Make alignment handler test P9N DD2.1 vector CI load + workaround + * [20.04 FEAT] Support/enhancement of NVMe IPL (LP: #1902179) + - s390/ipl: support NVMe IPL kernel parameters + * uvcvideo: add mapping for HEVC payloads (LP: #1895803) + - media: uvcvideo: Add mapping for HEVC payloads + * risc-v 5.8 kernel oops on ftrace tests (LP: #1894613) + - stop_machine, rcu: Mark functions as notrace + * Groovy update: v5.8.17 upstream stable release (LP: #1902137) + - xgb4: handle 4-tuple PEDIT to NAT mode translation + - ibmveth: Switch order of ibmveth_helper calls. + - ibmveth: Identify ingress large send packets. + - ipv4: Restore flowi4_oif update before call to xfrm_lookup_route + - mlx4: handle non-napi callers to napi_poll + - net: dsa: microchip: fix race condition + - net: fec: Fix phy_device lookup for phy_reset_after_clk_enable() + - net: fec: Fix PHY init after phy_reset_after_clk_enable() + - net: fix pos incrementment in ipv6_route_seq_next + - net: ipa: skip suspend/resume activities if not set up + - net: mptcp: make DACK4/DACK8 usage consistent among all subflows + - net: sched: Fix suspicious RCU usage while accessing tcf_tunnel_info + - net/smc: fix use-after-free of delayed events + - net/smc: fix valid DMBE buffer sizes + - net/tls: sendfile fails with ktls offload + - net: usb: qmi_wwan: add Cellient MPL200 card + - tipc: fix the skb_unshare() in tipc_buf_append() + - socket: fix option SO_TIMESTAMPING_NEW + - socket: don't clear SOCK_TSTAMP_NEW when SO_TIMESTAMPNS is disabled + - can: m_can_platform: don't call m_can_class_suspend in runtime suspend + - can: j1935: j1939_tp_tx_dat_new(): fix missing initialization of skbcnt + - net: j1939: j1939_session_fresh_new(): fix missing initialization of skbcnt + - net/ipv4: always honour route mtu during forwarding + - net_sched: remove a redundant goto chain check + - r8169: fix data corruption issue on RTL8402 + - binder: fix UAF when releasing todo list + - ALSA: bebob: potential info leak in hwdep_read() + - ALSA: hda/hdmi: fix incorrect locking in hdmi_pcm_close + - tipc: re-configure queue limit for broadcast link + - tipc: fix incorrect setting window for bcast link + - chelsio/chtls: fix socket lock + - chelsio/chtls: correct netdevice for vlan interface + - chelsio/chtls: fix panic when server is on ipv6 + - chelsio/chtls: Fix panic when listen on multiadapter + - chelsio/chtls: correct function return and return type + - chelsio/chtls: fix writing freed memory + - ibmvnic: save changed mac address to adapter->mac_addr + - icmp: randomize the global rate limiter + - mptcp: initialize mptcp_options_received's ahmac + - net: ftgmac100: Fix Aspeed ast2600 TX hang issue + - net: hdlc: In hdlc_rcv, check to make sure dev is an HDLC device + - net: hdlc_raw_eth: Clear the IFF_TX_SKB_SHARING flag after calling + ether_setup + - net: Properly typecast int values to set sk_max_pacing_rate + - net/sched: act_ct: Fix adding udp port mangle operation + - net/sched: act_tunnel_key: fix OOB write in case of IPv6 ERSPAN tunnels + - nexthop: Fix performance regression in nexthop deletion + - nfc: Ensure presence of NFC_ATTR_FIRMWARE_NAME attribute in + nfc_genl_fw_download() + - r8169: fix operation under forced interrupt threading + - selftests: forwarding: Add missing 'rp_filter' configuration + - tcp: fix to update snd_wl1 in bulk receiver fast path + - net: ethernet: mtk-star-emac: select REGMAP_MMIO + - net/sched: act_gate: Unlock ->tcfa_lock in tc_setup_flow_action() + - ALSA: hda - Don't register a cb func if it is registered already + - ALSA: hda - Fix the return value if cb func is already registered + - ALSA: usb-audio: Line6 Pod Go interface requires static clock rate quirk + - ALSA: hda/realtek - set mic to auto detect on a HP AIO machine + - ALSA: hda/realtek - Add mute Led support for HP Elitebook 845 G7 + - ALSA: hda/realtek: Enable audio jacks of ASUS D700SA with ALC887 + - cifs: remove bogus debug code + - cifs: Return the error from crypt_message when enc/dec key not found. + - SMB3: Resolve data corruption of TCP server info fields + - SMB3.1.1: Fix ids returned in POSIX query dir + - smb3: do not try to cache root directory if dir leases not supported + - smb3: fix stat when special device file and mounted with modefromsid + - arm64: Make use of ARCH_WORKAROUND_1 even when KVM is not enabled + - KVM: nVMX: Morph notification vector IRQ on nested VM-Enter to pending PI + - KVM: nVMX: Reset the segment cache when stuffing guest segs + - KVM: nVMX: Reload vmcs01 if getting vmcs12's pages fails + - KVM: x86/mmu: Commit zap of remaining invalid pages when recovering lpages + - KVM: x86: Intercept LA57 to inject #GP fault when it's reserved + - KVM: SVM: Initialize prev_ga_tag before use + - ima: Don't ignore errors from crypto_shash_update() + - crypto: algif_aead - Do not set MAY_BACKLOG on the async path + - crypto: caam/qi - add fallback for XTS with more than 8B IV + - crypto: caam/qi - add support for more XTS key lengths + - RAS/CEC: Fix cec_init() prototype + - sched/fair: Fix wrong negative conversion in find_energy_efficient_cpu() + - microblaze: fix kbuild redundant file warning + - EDAC/i5100: Fix error handling order in i5100_init_one() + - EDAC/aspeed: Fix handling of platform_get_irq() error + - EDAC/ti: Fix handling of platform_get_irq() error + - perf/x86/intel/ds: Fix x86_pmu_stop warning for large PEBS + - x86/fpu: Allow multiple bits in clearcpuid= parameter + - arm64: kprobe: add checks for ARMv8.3-PAuth combined instructions + - drivers/perf: xgene_pmu: Fix uninitialized resource struct + - drivers/perf: thunderx2_pmu: Fix memory resource error handling + - sched/fair: Fix wrong cpu selecting from isolated domain + - sched/fair: Use dst group while checking imbalance for NUMA balancer + - arm64: perf: Add missing ISB in armv8pmu_enable_counter() + - perf/x86/intel/uncore: Update Ice Lake uncore units + - perf/x86/intel/uncore: Reduce the number of CBOX counters + - perf/x86/intel/uncore: Fix the scale of the IMC free-running events + - x86/nmi: Fix nmi_handle() duration miscalculation + - x86/events/amd/iommu: Fix sizeof mismatch + - pinctrl: qcom: Set IRQCHIP_SET_TYPE_MASKED and IRQCHIP_MASK_ON_SUSPEND flags + - pinctrl: qcom: Use return value from irq_set_wake() call + - perf/x86: Fix n_pair for cancelled txn + - perf/core: Fix race in the perf_mmap_close() function + - crypto: algif_skcipher - EBUSY on aio should be an error + - crypto: mediatek - Fix wrong return value in mtk_desc_ring_alloc() + - crypto: ixp4xx - Fix the size used in a 'dma_free_coherent()' call + - crypto: picoxcell - Fix potential race condition bug + - media: vivid: Fix global-out-of-bounds read in precalculate_color() + - media: tuner-simple: fix regression in simple_set_radio_freq + - crypto: ccree - fix runtime PM imbalance on error + - media: Revert "media: exynos4-is: Add missed check for + pinctrl_lookup_state()" + - media: hantro: h264: Get the correct fallback reference buffer + - media: hantro: postproc: Fix motion vector space allocation + - media: ov5640: Correct Bit Div register in clock tree diagram + - media: m5mols: Check function pointer in m5mols_sensor_power + - fscrypt: restrict IV_INO_LBLK_32 to ino_bits <= 32 + - media: uvcvideo: Set media controller entity functions + - media: uvcvideo: Silence shift-out-of-bounds warning + - media: staging/intel-ipu3: css: Correctly reset some memory + - media: omap3isp: Fix memleak in isp_probe + - media: i2c: ov5640: Remain in power down for DVP mode unless streaming + - media: i2c: ov5640: Separate out mipi configuration from s_power + - media: i2c: ov5640: Enable data pins on poweron for DVP mode + - media: rcar_drif: Fix fwnode reference leak when parsing DT + - media: rcar_drif: Allocate v4l2_async_subdev dynamically + - media: rcar-csi2: Allocate v4l2_async_subdev dynamically + - spi: fsi: Handle 9 to 15 byte transfers lengths + - spi: fsi: Fix use of the bneq+ sequencer instruction + - spi: fsi: Implement restricted size for certain controllers + - spi: dw-pci: free previously allocated IRQs if desc->setup() fails + - crypto: omap-sham - fix digcnt register handling with export/import + - hwmon: (pmbus/max34440) Fix status register reads for MAX344{51,60,61} + - hwmon: (w83627ehf) Fix a resource leak in probe + - cypto: mediatek - fix leaks in mtk_desc_ring_alloc + - crypto: stm32/crc32 - Avoid lock if hardware is already used + - crypto: sun8i-ce - handle endianness of t_common_ctl + - media: mx2_emmaprp: Fix memleak in emmaprp_probe + - media: tc358743: initialize variable + - media: tc358743: cleanup tc358743_cec_isr + - media: rcar-vin: Fix a reference count leak. + - media: rockchip/rga: Fix a reference count leak. + - media: platform: fcp: Fix a reference count leak. + - media: camss: Fix a reference count leak. + - media: s5p-mfc: Fix a reference count leak + - media: stm32-dcmi: Fix a reference count leak + - media: ti-vpe: Fix a missing check and reference count leak + - regulator: resolve supply after creating regulator + - pinctrl: bcm: fix kconfig dependency warning when !GPIOLIB + - spi: spi-s3c64xx: swap s3c64xx_spi_set_cs() and s3c64xx_enable_datapath() + - spi: spi-s3c64xx: Check return values + - hwmon: (bt1-pvt) Test sensor power supply on probe + - hwmon: (bt1-pvt) Cache current update timeout + - hwmon: (bt1-pvt) Wait for the completion with timeout + - btrfs: add owner and fs_info to alloc_state io_tree + - blk-mq: move cancel of hctx->run_work to the front of blk_exit_queue + - ath10k: provide survey info as accumulated data + - drm/vkms: fix xrgb on compute crc + - Bluetooth: hci_uart: Cancel init work before unregistering + - drm/amd/display: Fix wrong return value in dm_update_plane_state() + - drm/vgem: add missing platform_device_unregister() in vgem_init() + - drm/vkms: add missing platform_device_unregister() in vkms_init() + - drm: panel: Fix bus format for OrtusTech COM43H4M85ULC panel + - ath6kl: prevent potential array overflow in ath6kl_add_new_sta() + - ath9k: Fix potential out of bounds in ath9k_htc_txcompletion_cb() + - ath10k: Fix the size used in a 'dma_free_coherent()' call in an error + handling path + - wcn36xx: Fix reported 802.11n rx_highest rate wcn3660/wcn3680 + - ASoC: qcom: lpass-platform: fix memory leak + - ASoC: qcom: lpass-cpu: fix concurrency issue + - ath11k: Fix possible memleak in ath11k_qmi_init_service + - brcmfmac: check ndev pointer + - mwifiex: Do not use GFP_KERNEL in atomic context + - staging: rtl8192u: Do not use GFP_KERNEL in atomic context + - drm/amd/display: fix potential integer overflow when shifting 32 bit + variable bl_pwm + - selftests/bpf: Fix test_vmlinux test to use bpf_probe_read_user() + - drm/gma500: fix error check + - scsi: qla4xxx: Fix an error handling path in 'qla4xxx_get_host_stats()' + - scsi: qla2xxx: Fix the size used in a 'dma_free_coherent()' call + - scsi: qla2xxx: Fix wrong return value in qlt_chk_unresolv_exchg() + - scsi: qla2xxx: Fix wrong return value in qla_nvme_register_hba() + - scsi: csiostor: Fix wrong return value in csio_hw_prep_fw() + - libbpf: Fix unintentional success return code in bpf_object__load + - wilc1000: Fix memleak in wilc_sdio_probe + - wilc1000: Fix memleak in wilc_bus_probe + - rtw88: don't treat NULL pointer as an array + - backlight: sky81452-backlight: Fix refcount imbalance on error + - staging: emxx_udc: Fix passing of NULL to dma_alloc_coherent() + - VMCI: check return value of get_user_pages_fast() for errors + - mm/error_inject: Fix allow_error_inject function signatures. + - drm: panel: Fix bpc for OrtusTech COM43H4M85ULC panel + - samples/bpf: Fix to xdpsock to avoid recycling frames + - drm/crc-debugfs: Fix memleak in crc_control_write + - Bluetooth: Clear suspend tasks on unregister + - selftests: vm: add fragment CONFIG_GUP_BENCHMARK + - scsi: ufs: Make ufshcd_print_trs() consider UFSHCD_QUIRK_PRDT_BYTE_GRAN + - binder: Remove bogus warning on failed same-process transaction + - tty: serial: earlycon dependency + - pty: do tty_flip_buffer_push without port->lock in pty_write + - pwm: lpss: Fix off by one error in base_unit math in pwm_lpss_prepare() + - pwm: lpss: Add range limit check for the base_unit register value + - drivers/virt/fsl_hypervisor: Fix error handling path + - ath11k: fix a double free and a memory leak + - video: fbdev: vga16fb: fix setting of pixclock because a pass-by-value error + - video: fbdev: sis: fix null ptr dereference + - video: fbdev: radeon: Fix memleak in radeonfb_pci_register + - ASoC: fsl: imx-es8328: add missing put_device() call in imx_es8328_probe() + - scsi: ufs: ufs-mediatek: Fix HOST_PA_TACTIVATE quirk + - HID: roccat: add bounds checking in kone_sysfs_write_settings() + - drm/msm: Avoid div-by-zero in dpu_crtc_atomic_check() + - drm/panfrost: Ensure GPU quirks are always initialised + - iomap: Clear page error before beginning a write + - iomap: Mark read blocks uptodate in write_begin + - selftests/lkdtm: Use "comm" instead of "diff" for dmesg + - Bluetooth: Re-order clearing suspend tasks + - pinctrl: mcp23s08: Fix mcp23x17_regmap initialiser + - pinctrl: mcp23s08: Fix mcp23x17 precious range + - pinctrl: devicetree: Keep deferring even on timeout + - drm/msm/adreno: fix probe without iommu + - net/mlx5: Fix uninitialized variable warning + - net/mlx5: Don't call timecounter cyc2time directly from 1PPS flow + - scsi: mpt3sas: Fix sync irqs + - net: stmmac: Fix incorrect location to set real_num_rx|tx_queues + - net: stmmac: use netif_tx_start|stop_all_queues() function + - xfs: force the log after remapping a synchronous-writes file + - cpufreq: armada-37xx: Add missing MODULE_DEVICE_TABLE + - drm: mxsfb: check framebuffer pitch + - ima: Fix NULL pointer dereference in ima_file_hash + - ASoC: topology: disable size checks for bytes_ext controls if needed + - ASoC: tlv320adcx140: Fix digital gain range + - coresight: etm4x: Fix etm4_count race by moving cpuhp callbacks to init + - coresight: fix offset by one error in counting ports + - coresight: cti: disclaim device only when it's claimed + - coresight: cti: remove pm_runtime_get_sync() from CPU hotplug + - coresight: etm4x: Ensure default perf settings filter user/kernel + - coresight: etm4x: Fix issues within reset interface of sysfs + - coresight: cti: Write regsiters directly in cti_enable_hw() + - coresight: etm4x: Handle unreachable sink in perf mode + - coresight: etm4x: Fix issues on trcseqevr access + - nvmem: core: fix missing of_node_put() in of_nvmem_device_get() + - selftests: mptcp: interpret \n as a new line + - selftests/bpf: Fix endianness issue in sk_assign + - selftests/bpf: Fix endianness issue in test_sockopt_sk + - xhci: don't create endpoint debugfs entry before ring buffer is set. + - net: dsa: rtl8366: Check validity of passed VLANs + - net: dsa: rtl8366: Refactor VLAN/PVID init + - net: dsa: rtl8366: Skip PVID setting if not requested + - net: wilc1000: clean up resource in error path of init mon interface + - ASoC: tas2770: Fix calling reset in probe + - ASoC: tas2770: Add missing bias level power states + - ASoC: tas2770: Fix required DT properties in the code + - ASoC: tas2770: Fix error handling with update_bits + - ASoC: tlv320aic32x4: Fix bdiv clock rate derivation + - net: dsa: rtl8366rb: Support all 4096 VLANs + - ASoC: SOF: control: add size checks for ext_bytes control .put() + - ASoC: tas2770: Fix unbalanced calls to pm_runtime + - spi: omap2-mcspi: Improve performance waiting for CHSTAT + - ath11k: Add checked value for ath11k_ahb_remove + - ath6kl: wmi: prevent a shift wrapping bug in ath6kl_wmi_delete_pstream_cmd() + - drm: rcar-du: Put reference to VSP device + - phy: rockchip-dphy-rx0: Include linux/delay.h + - dmaengine: dmatest: Check list for emptiness before access its last entry + - ASoC: cros_ec_codec: fix kconfig dependency warning for + SND_SOC_CROS_EC_CODEC + - misc: mic: scif: Fix error handling path + - ALSA: seq: oss: Avoid mutex lock for a long-time ioctl + - usb: dwc2: Fix parameter type in function pointer prototype + - usb: dwc3: core: Properly default unspecified speed + - usb: dwc2: Add missing cleanups when usb_add_gadget_udc() fails + - rtw88: Fix probe error handling race with firmware loading + - rtw88: Fix potential probe error handling race with wow firmware loading + - mt76: mt7915: fix possible memory leak in mt7915_mcu_add_beacon + - quota: clear padding in v2r1_mem2diskdqb() + - slimbus: core: check get_addr before removing laddr ida + - slimbus: core: do not enter to clock pause mode in core + - slimbus: qcom-ngd-ctrl: disable ngd in qmi server down callback + - ASoC: fsl_sai: Instantiate snd_soc_dai_driver + - HID: hid-input: fix stylus battery reporting + - tty: hvc: fix link error with CONFIG_SERIAL_CORE_CONSOLE=n + - nvmem: core: fix possibly memleak when use nvmem_cell_info_to_nvmem_cell() + - hv: clocksource: Add notrace attribute to read_hv_sched_clock_*() functions + - nl80211: fix OBSS PD min and max offset validation + - iomap: Use kzalloc to allocate iomap_page + - coresight: etm: perf: Fix warning caused by etm_setup_aux failure + - coresight: cti: Fix remove sysfs link error + - coresight: cti: Fix bug clearing sysfs links on callback + - coresight: etm4x: Fix save and restore of TRCVMIDCCTLR1 register + - ibmvnic: set up 200GBPS speed + - bpf: disallow attaching modify_return tracing functions to other BPF + programs + - selftests: Remove fmod_ret from test_overhead + - qtnfmac: fix resource leaks on unsupported iftype error return path + - pinctrl: aspeed: Use the right pinconf mask + - iommu/qcom: add missing put_device() call in qcom_iommu_of_xlate() + - iio: adc: stm32-adc: fix runtime autosuspend delay when slow polling + - net: enic: Cure the enic api locking trainwreck + - mfd: sm501: Fix leaks in probe() + - ASoC: wm_adsp: Pass full name to snd_ctl_notify + - iwlwifi: mvm: split a print to avoid a WARNING in ROC + - iwlwifi: dbg: remove no filter condition + - iwlwifi: dbg: run init_cfg function once per driver load + - usb: gadget: f_ncm: fix ncm_bitrate for SuperSpeed and above. + - usb: gadget: u_serial: clear suspended flag when disconnecting + - usb: gadget: u_ether: enable qmult on SuperSpeed Plus as well + - bus: mhi: core: Fix the building of MHI module + - ocxl: fix kconfig dependency warning for OCXL + - nl80211: fix non-split wiphy information + - usb: dwc2: Fix INTR OUT transfers in DDMA mode. + - scsi: target: tcmu: Fix warning: 'page' may be used uninitialized + - scsi: be2iscsi: Fix a theoretical leak in beiscsi_create_eqs() + - dmaengine: ioat: Allocate correct size for descriptor chunk + - ipmi_si: Fix wrong return value in try_smi_init() + - tracing: Fix parse_synth_field() error handling + - platform/x86: mlx-platform: Remove PSU EEPROM configuration + - mwifiex: fix double free + - drm/panfrost: increase readl_relaxed_poll_timeout values + - ipvs: clear skb->tstamp in forwarding path + - bpf, sockmap: Remove skb_orphan and let normal skb_kfree do cleanup + - net: korina: fix kfree of rx/tx descriptor array + - netfilter: nf_log: missing vlan offload tag and proto + - mm/swapfile.c: fix potential memory leak in sys_swapon + - mm/memcg: fix device private memcg accounting + - mm, oom_adj: don't loop through tasks in __set_oom_adj when not necessary + - fs: fix NULL dereference due to data race in prepend_path() + - selftests/ftrace: Change synthetic event name for inter-event-combined test + - tracing: Handle synthetic event array field type checking correctly + - i3c: master add i3c_master_attach_boardinfo to preserve boardinfo + - IB/mlx4: Fix starvation in paravirt mux/demux + - IB/mlx4: Adjust delayed work when a dup is observed + - powerpc/pseries: Fix missing of_node_put() in rng_init() + - powerpc/icp-hv: Fix missing of_node_put() in success path + - rcu/tree: Force quiescent state on callback overload + - rcutorture: Properly set rcu_fwds for OOM handling + - RDMA/ucma: Fix locking for ctx->events_reported + - RDMA/ucma: Add missing locking around rdma_leave_multicast() + - mtd: lpddr: fix excessive stack usage with clang + - RDMA/hns: Add a check for current state before modifying QP + - RDMA/umem: Fix signature of stub ib_umem_find_best_pgsz() + - powerpc/pseries: explicitly reschedule during drmem_lmb list traversal + - pseries/drmem: don't cache node id in drmem_lmb struct + - RDMA/mlx5: Fix potential race between destroy and CQE poll + - mtd: mtdoops: Don't write panic data twice + - perf tools: Make GTK2 support opt-in + - tools feature: Add missing -lzstd to the fast path feature detection + - ARM: 9007/1: l2c: fix prefetch bits init in L2X0_AUX_CTRL using DT values + - xfs: fix finobt btree block recovery ordering + - m68knommu: include SDHC support only when hardware has it + - arc: plat-hsdk: fix kconfig dependency warning when !RESET_CONTROLLER + - ida: Free allocated bitmap in error path + - xfs: limit entries returned when counting fsmap records + - xfs: fix deadlock and streamline xfs_getfsmap performance + - nfs: add missing "posix" local_lock constant table definition + - xfs: fix high key handling in the rt allocator's query_range function + - RDMA/rtrs-srv: Incorporate ib_register_client into rtrs server init + - RDMA/core: Delete function indirection for alloc/free kernel CQ + - RDMA: Allow fail of destroy CQ + - RDMA/umem: Fix ib_umem_find_best_pgsz() for mappings that cross a page + boundary + - RDMA/umem: Prevent small pages from being returned by + ib_umem_find_best_pgsz() + - RDMA/qedr: Fix qp structure memory leak + - RDMA/qedr: Fix doorbell setting + - RDMA/qedr: Fix use of uninitialized field + - RDMA/qedr: Fix return code if accept is called on a destroyed qp + - RDMA/qedr: Fix inline size returned for iWARP + - powerpc/pseries/svm: Allocate SWIOTLB buffer anywhere in memory + - powerpc/watchpoint: Fix quadword instruction handling on p10 predecessors + - powerpc/watchpoint: Fix handling of vector instructions + - powerpc/watchpoint: Add hw_len wherever missing + - powerpc/book3s64/hash/4k: Support large linear mapping range with 4K + - powerpc/tau: Use appropriate temperature sample interval + - powerpc/tau: Convert from timer to workqueue + - powerpc/tau: Remove duplicated set_thresholds() call + - powerpc/tau: Check processor type before enabling TAU interrupt + - powerpc/tau: Disable TAU between measurements + - powerpc/kasan: Fix CONFIG_KASAN_VMALLOC for 8xx + - powerpc/64s/radix: Fix mm_cpumask trimming race vs kthread_use_mm + - RDMA/cma: Combine cma_ndev_work with cma_work + - RDMA/cma: Remove dead code for kernel rdmacm multicast + - RDMA/cma: Consolidate the destruction of a cma_multicast in one place + - RDMA/cma: Fix use after free race in roce multicast join + - perf intel-pt: Fix "context_switch event has no tid" error + - RDMA/qedr: Fix resource leak in qedr_create_qp + - RDMA/hns: Set the unsupported wr opcode + - RDMA/mlx5: Use set_mkc_access_pd_addr_fields() in reg_create() + - RDMA/mlx5: Make mkeys always owned by the kernel's PD when not enabled + - RDMA/mlx5: Disable IB_DEVICE_MEM_MGT_EXTENSIONS if IB_WR_REG_MR can't work + - i40iw: Add support to make destroy QP synchronous + - perf stat: Skip duration_time in setup_system_wide + - RDMA/hns: Add check for the validity of sl configuration + - RDMA/hns: Solve the overflow of the calc_pg_sz() + - RDMA/hns: Fix the wrong value of rnr_retry when querying qp + - RDMA/hns: Fix configuration of ack_req_freq in QPC + - RDMA/hns: Fix missing sq_sig_type when querying QP + - mtd: hyperbus: hbmc-am654: Fix direct mapping setup flash access + - mtd: rawnand: stm32_fmc2: fix a buffer overflow + - mtd: rawnand: vf610: disable clk on error handling path in probe + - mtd: spinand: gigadevice: Only one dummy byte in QUADIO + - mtd: spinand: gigadevice: Add QE Bit + - mtd: rawnand: ams-delta: Fix non-OF build warning + - kdb: Fix pager search for multi-line strings + - overflow: Include header file with SIZE_MAX declaration + - RDMA/ipoib: Set rtnl_link_ops for ipoib interfaces + - powerpc/64: fix irq replay missing preempt + - powerpc/64: fix irq replay pt_regs->softe value + - powerpc/perf: Exclude pmc5/6 from the irrelevant PMU group constraints + - powerpc/perf/hv-gpci: Fix starting index value + - perf stat: Fix out of bounds CPU map access when handling armv8_pmu events + - i3c: master: Fix error return in cdns_i3c_master_probe() + - powerpc/papr_scm: Add PAPR command family to pass-through command-set + - cpufreq: powernv: Fix frame-size-overflow in powernv_cpufreq_reboot_notifier + - IB/rdmavt: Fix sizeof mismatch + - RDMA/rxe: Fix skb lifetime in rxe_rcv_mcast_pkt() + - f2fs: reject CASEFOLD inode flag without casefold feature + - um: vector: Use GFP_ATOMIC under spin lock + - um: time-travel: Fix IRQ handling in time_travel_handle_message() + - maiblox: mediatek: Fix handling of platform_get_irq() error + - perf trace: Fix off by ones in memset() after realloc() in arches using + libaudit + - selftests/powerpc: Fix eeh-basic.sh exit codes + - f2fs: wait for sysfs kobject removal before freeing f2fs_sb_info + - afs: Fix rapid cell addition/removal by not using RCU on cells tree + - afs: Fix cell refcounting by splitting the usage counter + - afs: Fix cell purging with aliases + - afs: Fix cell removal + - RDMA/rxe: Handle skb_clone() failure in rxe_recv.c + - mm/page_owner: change split_page_owner to take a count + - lib/crc32.c: fix trivial typo in preprocessor condition + - ramfs: fix nommu mmap with gaps in the page cache + - rapidio: fix error handling path + - rapidio: fix the missed put_device() for rio_mport_add_riodev + - mailbox: avoid timer start from callback + - clk: meson: axg-audio: separate axg and g12a regmap tables + - rtc: ds1307: Clear OSF flag on DS1388 when setting time + - i2c: rcar: Auto select RESET_CONTROLLER + - clk: meson: g12a: mark fclk_div2 as critical + - PCI: designware-ep: Fix the Header Type check + - PCI: aardvark: Fix compilation on s390 + - PCI: aardvark: Check for errors from pci_bridge_emul_init() call + - PCI: iproc: Set affinity mask on MSI interrupts + - rpmsg: smd: Fix a kobj leak in in qcom_smd_parse_edge() + - rpmsg: Avoid double-free in mtk_rpmsg_register_device + - PCI/IOV: Mark VFs as not implementing PCI_COMMAND_MEMORY + - vfio: add a singleton check for vfio_group_pin_pages + - s390/pci: Mark all VFs as not implementing PCI_COMMAND_MEMORY + - vfio/pci: Decouple PCI_COMMAND_MEMORY bit checks from is_virtfn + - vfio: fix a missed vfio group put in vfio_pin_pages + - vfio/type1: fix dirty bitmap calculation in vfio_dma_rw + - clk: qcom: gcc-sdm660: Fix wrong parent_map + - clk: keystone: sci-clk: fix parsing assigned-clock data during probe + - pwm: rockchip: Keep enabled PWMs running while probing + - pwm: img: Fix null pointer access in probe + - remoteproc/mediatek: fix null pointer dereference on null scp pointer + - PCI: hv: Fix hibernation in case interrupts are not re-created + - clk: rockchip: Initialize hw to error to avoid undefined behavior + - clk: mediatek: add UART0 clock support + - module: statically initialize init section freeing data + - clk: at91: clk-main: update key before writing AT91_CKGR_MOR + - clk: bcm2835: add missing release if devm_clk_hw_register fails + - kbuild: deb-pkg: do not build linux-headers package if CONFIG_MODULES=n + - watchdog: Fix memleak in watchdog_cdev_register + - watchdog: Use put_device on error + - watchdog: sp5100: Fix definition of EFCH_PM_DECODEEN3 + - svcrdma: fix bounce buffers for unaligned offsets and multiple pages + - ext4: fix dead loop in ext4_mb_new_blocks + - ext4: discard preallocations before releasing group lock + - ext4: disallow modifying DAX inode flag if inline_data has been set + - ext4: limit entries returned when counting fsmap records + - vfio/pci: Clear token on bypass registration failure + - vfio iommu type1: Fix memory leak in vfio_iommu_type1_pin_pages + - clk: imx8mq: Fix usdhc parents order + - SUNRPC: fix copying of multiple pages in gss_read_proxy_verf() + - platform/chrome: cros_ec_lightbar: Reduce ligthbar get version command + - Input: elants_i2c - fix typo for an attribute to show calibration count + - Input: imx6ul_tsc - clean up some errors in imx6ul_tsc_resume() + - Input: stmfts - fix a & vs && typo + - Input: ep93xx_keypad - fix handling of platform_get_irq() error + - Input: omap4-keypad - fix handling of platform_get_irq() error + - Input: twl4030_keypad - fix handling of platform_get_irq() error + - Input: sun4i-ps2 - fix handling of platform_get_irq() error + - KVM: x86: emulating RDPID failure shall return #UD rather than #GP + - scsi: bfa: Fix error return in bfad_pci_init() + - arm64: mm: use single quantity to represent the PA to VA translation + - netfilter: conntrack: connection timeout after re-register + - netfilter: ebtables: Fixes dropping of small packets in bridge nat + - netsec: ignore 'phy-mode' device property on ACPI systems + - netfilter: nf_fwd_netdev: clear timestamp in forwarding path + - soc: xilinx: Fix error code in zynqmp_pm_probe() + - arm64: dts: meson: vim3: correct led polarity + - ARM: dts: imx6sl: fix rng node + - ARM: at91: pm: of_node_put() after its usage + - ARM: s3c24xx: fix mmc gpio lookup tables + - ARM: dts: sun8i: r40: bananapi-m2-ultra: Fix dcdc1 regulator + - arm64: dts: allwinner: h5: remove Mali GPU PMU module + - memory: omap-gpmc: Fix a couple off by ones + - memory: omap-gpmc: Fix build error without CONFIG_OF + - arm64: dts: qcom: sc7180: Fix the LLCC base register size + - memory: fsl-corenet-cf: Fix handling of platform_get_irq() error + - firmware: arm_scmi: Fix NULL pointer dereference in mailbox_chan_free + - arm64: dts: imx8mq: Add missing interrupts to GPC + - arm64: dts: qcom: sc7180: Drop flags on mdss irqs + - soc: qcom: pdr: Fixup array type of get_domain_list_resp message + - arm64: dts: qcom: msm8916: Remove one more thermal trip point unit name + - arm64: dts: qcom: pm8916: Remove invalid reg size from wcd_codec + - arm64: dts: qcom: msm8916: Fix MDP/DSI interrupts + - soc: qcom: apr: Fixup the error displayed on lookup failure + - dt-bindings: crypto: Specify that allwinner, sun8i-a33-crypto needs reset + - arm64: dts: renesas: r8a77990: Fix MSIOF1 DMA channels + - arm64: dts: renesas: r8a774c0: Fix MSIOF1 DMA channels + - arm64: dts: mt8173: elm: Fix nor_flash node property + - arm64: dts: actions: limit address range for pinctrl node + - ARM: dts: owl-s500: Fix incorrect PPI interrupt specifiers + - soc: fsl: qbman: Fix return value on success + - ARM: OMAP2+: Restore MPU power domain if cpu_cluster_pm_enter() fails + - ARM: dts: stm32: Fix sdmmc2 pins on AV96 + - ARM: dts: stm32: lxa-mc1: Fix kernel warning about PHY delays + - ARM: dts: stm32: Move ethernet PHY into DH SoM DT + - ARM: dts: stm32: Swap PHY reset GPIO and TSC2004 IRQ on DHCOM SOM + - ARM: dts: stm32: Fix DH PDK2 display PWM channel + - ARM: dts: iwg20d-q7-common: Fix touch controller probe failure + - soc: mediatek: cmdq: add clear option in cmdq_pkt_wfe api + - drm/mediatek: reduce clear event + - arm64: dts: zynqmp: Remove additional compatible string for i2c IPs + - ARM: dts: meson8: remove two invalid interrupt lines from the GPU node + - lightnvm: fix out-of-bounds write to array devices->info[] + - powerpc/powernv/dump: Fix race while processing OPAL dump + - powerpc/pseries: Avoid using addr_to_pfn in real mode + - nvmet: fix uninitialized work for zero kato + - KVM: ioapic: break infinite recursion on lazy EOI + - NTB: hw: amd: fix an issue about leak system resources + - ntb: intel: Fix memleak in intel_ntb_pci_probe + - sched/features: Fix !CONFIG_JUMP_LABEL case + - perf: correct SNOOPX field offset + - i2c: core: Restore acpi_walk_dep_device_list() getting called after + registering the ACPI i2c devs + - md/bitmap: fix memory leak of temporary bitmap + - block: ratelimit handle_bad_sector() message + - x86/dumpstack: Fix misleading instruction pointer error message + - crypto: ccp - fix error handling + - x86/asm: Replace __force_order with a memory clobber + - x86/mce: Add Skylake quirk for patrol scrub reported errors + - media: firewire: fix memory leak + - media: ati_remote: sanity check for both endpoints + - media: st-delta: Fix reference count leak in delta_run_work + - media: sti: Fix reference count leaks + - media: exynos4-is: Fix several reference count leaks due to + pm_runtime_get_sync + - media: exynos4-is: Fix a reference count leak due to pm_runtime_get_sync + - media: exynos4-is: Fix a reference count leak + - media: vsp1: Fix runtime PM imbalance on error + - media: platform: s3c-camif: Fix runtime PM imbalance on error + - media: platform: sti: hva: Fix runtime PM imbalance on error + - media: bdisp: Fix runtime PM imbalance on error + - media: media/pci: prevent memory leak in bttv_probe + - x86/mce: Annotate mce_rd/wrmsrl() with noinstr + - crypto: hisilicon - fixed memory allocation error + - spi: fsi: Fix clock running too fast + - x86/mce: Make mce_rdmsrl() panic on an inaccessible MSR + - media: uvcvideo: Ensure all probed info is returned to v4l2 + - mmc: sdio: Check for CISTPL_VERS_1 buffer size + - media: saa7134: avoid a shift overflow + - media: atomisp: fix memleak in ia_css_stream_create + - media: venus: fixes for list corruption + - fs: dlm: fix configfs memory leak + - media: venus: core: Fix error handling in probe + - media: venus: core: Fix runtime PM imbalance in venus_probe + - ntfs: add check for mft record size in superblock + - ip_gre: set dev->hard_header_len and dev->needed_headroom properly + - mac80211: handle lack of sband->bitrates in rates + - staging: wfx: fix handling of MMIC error + - libbpf: Close map fd if init map slots failed + - bpf: Use raw_spin_trylock() for pcpu_freelist_push/pop in NMI + - PM: hibernate: remove the bogus call to get_gendisk() in software_resume() + - scsi: mvumi: Fix error return in mvumi_io_attach() + - scsi: target: core: Add CONTROL field for trace events + - mic: vop: copy data to kernel space then write to io memory + - misc: vop: add round_up(x,4) for vring_size to avoid kernel panic + - usb: dwc3: Add splitdisable quirk for Hisilicon Kirin Soc + - usb: gadget: function: printer: fix use-after-free in __lock_acquire + - udf: Limit sparing table size + - udf: Avoid accessing uninitialized data on failed inode read + - rtw88: increse the size of rx buffer size + - USB: cdc-acm: handle broken union descriptors + - usb: dwc3: simple: add support for Hikey 970 + - habanalabs: cast to u64 before shift > 31 bits + - can: flexcan: flexcan_chip_stop(): add error handling and propagate error + value + - HID: multitouch: Lenovo X1 Tablet Gen3 trackpoint and buttons + - ath9k: hif_usb: fix race condition between usb_get_urb() and + usb_kill_anchored_urbs() + - drm/panfrost: add Amlogic GPU integration quirks + - drm/panfrost: add amlogic reset quirk callback + - drm/panfrost: add support for vendor quirk + - bpf: Limit caller's stack depth 256 for subprogs with tailcalls + - misc: rtsx: Fix memory leak in rtsx_pci_probe + - reiserfs: only call unlock_new_inode() if I_NEW + - opp: Prevent memory leak in dev_pm_opp_attach_genpd() + - xfs: make sure the rt allocator doesn't run off the end + - usb: ohci: Default to per-port over-current protection + - drm: fix double free for gbo in drm_gem_vram_init and drm_gem_vram_create + - Bluetooth: Only mark socket zapped after unlocking + - drm/msm/a6xx: fix a potential overflow issue + - iomap: fix WARN_ON_ONCE() from unprivileged users + - scsi: ibmvfc: Fix error return in ibmvfc_probe() + - scsi: qla2xxx: Warn if done() or free() are called on an already freed srb + - selftests/bpf: Fix test_sysctl_loop{1, 2} failure due to clang change + - brcmsmac: fix memory leak in wlc_phy_attach_lcnphy + - rtl8xxxu: prevent potential memory leak + - Fix use after free in get_capset_info callback. + - HID: ite: Add USB id match for Acer One S1003 keyboard dock + - scsi: qedf: Return SUCCESS if stale rport is encountered + - scsi: qedi: Mark all connections for recovery on link down event + - scsi: qedi: Protect active command list to avoid list corruption + - scsi: qedi: Fix list_del corruption while removing active I/O + - fbmem: add margin check to fb_check_caps() + - tty: ipwireless: fix error handling + - Bluetooth: btusb: Fix memleak in btusb_mtk_submit_wmt_recv_urb + - ipvs: Fix uninit-value in do_ip_vs_set_ctl() + - reiserfs: Fix memory leak in reiserfs_parse_options() + - s390/qeth: strictly order bridge address events + - mwifiex: don't call del_timer_sync() on uninitialized timer + - ALSA: hda/ca0132 - Add AE-7 microphone selection commands. + - ALSA: hda/ca0132 - Add new quirk ID for SoundBlaster AE-7. + - ASoC: SOF: Add topology filename override based on dmi data match + - ASoC: Intel: sof_rt5682: override quirk data for tgl_max98373_rt5682 + - scsi: smartpqi: Avoid crashing kernel for controller issues + - brcm80211: fix possible memleak in brcmf_proto_msgbuf_attach + - usb: core: Solve race condition in anchor cleanup functions + - scsi: ufs: ufs-qcom: Fix race conditions caused by ufs_qcom_testbus_config() + - drm/amd/display: Screen corruption on dual displays (DP+USB-C) + - dmaengine: dw: Add DMA-channels mask cell support + - dmaengine: dw: Activate FIFO-mode for memory peripherals only + - ath10k: check idx validity in __ath10k_htt_rx_ring_fill_n() + - net: korina: cast KSEG0 address to pointer in kfree + - s390/qeth: don't let HW override the configured port role + - tty: serial: lpuart: fix lpuart32_write usage + - tty: serial: fsl_lpuart: fix lpuart32_poll_get_char + - usb: gadget: bcm63xx_udc: fix up the error of undeclared usb_debug_root + - usb: cdc-acm: add quirk to blacklist ETAS ES58X devices + - USB: cdc-wdm: Make wdm_flush() interruptible and add wdm_fsync(). + - usb: cdns3: gadget: free interrupt after gadget has deleted + - eeprom: at25: set minimum read/write access stride to 1 + - usb: gadget: f_ncm: allow using NCM in SuperSpeed Plus gadgets. + - Linux 5.8.17 + * RTL8822BE [10ec:b822] network driver rtl_wifi crashes on boot in Focal Fossa + 20.04 - 5.4.0-21-generic and mainline 5.7.0-050700rc1-generic + (LP: #1872984) // Groovy update: v5.8.17 upstream stable release + (LP: #1902137) + - rtw88: pci: Power cycle device during shutdown + * Groovy update: v5.8.16 upstream stable release (LP: #1902132) + - crypto: bcm - Verify GCM/CCM key length in setkey + - crypto: qat - check cipher length for aead AES-CBC-HMAC-SHA + - Bluetooth: Disconnect if E0 is used for Level 4 + - media: usbtv: Fix refcounting mixup + - USB: serial: option: add Cellient MPL200 card + - USB: serial: option: Add Telit FT980-KS composition + - staging: comedi: check validity of wMaxPacketSize of usb endpoints found + - USB: serial: pl2303: add device-id for HP GC device + - USB: serial: ftdi_sio: add support for FreeCalypso JTAG+UART adapters + - reiserfs: Initialize inode keys properly + - reiserfs: Fix oops during mount + - Linux 5.8.16 + * Groovy update: v5.8.15 upstream stable release (LP: #1902130) + - fbdev, newport_con: Move FONT_EXTRA_WORDS macros into linux/font.h + - Fonts: Support FONT_EXTRA_WORDS macros for built-in fonts + - fbcon: Fix global-out-of-bounds read in fbcon_get_font() + - Revert "ravb: Fixed to be able to unload modules" + - crypto: arm64: Use x16 with indirect branch to bti_c + - exfat: fix use of uninitialized spinlock on error path + - net: wireless: nl80211: fix out-of-bounds access in nl80211_del_key() + - drm/nouveau/mem: guard against NULL pointer access in mem_del + - partitions/ibm: fix non-DASD devices + - block/scsi-ioctl: Fix kernel-infoleak in scsi_put_cdrom_generic_arg() + - vhost: Don't call access_ok() when using IOTLB + - vhost: Use vhost_get_used_size() in vhost_vring_set_addr() + - usermodehelper: reset umask to default before executing user process + - splice: teach splice pipe reading about empty pipe buffers + - Platform: OLPC: Fix memleak in olpc_ec_probe + - platform/x86: intel-vbtn: Fix SW_TABLET_MODE always reporting 1 on the HP + Pavilion 11 x360 + - platform/x86: thinkpad_acpi: initialize tp_nvram_state variable + - platform/x86: asus-wmi: Fix SW_TABLET_MODE always reporting 1 on many + different models + - bpf: Fix sysfs export of empty BTF section + - bpf: Prevent .BTF section elimination + - r8169: consider that PHY reset may still be in progress after applying + firmware + - platform/x86: intel-vbtn: Switch to an allow-list for SW_TABLET_MODE + reporting + - platform/x86: thinkpad_acpi: re-initialize ACPI buffer size when reuse + - nvme-core: put ctrl ref when module ref get fail + - macsec: avoid use-after-free in macsec_handle_frame() + - RISC-V: Make sure memblock reserves the memory containing DT + - gpiolib: Disable compat ->read() code in UML case + - mm/khugepaged: fix filemap page_to_pgoff(page) != offset + - net: introduce helper sendpage_ok() in include/linux/net.h + - tcp: use sendpage_ok() to detect misused .sendpage + - nvme-tcp: check page by sendpage_ok() before calling kernel_sendpage() + - xfrmi: drop ignore_df check before updating pmtu + - espintcp: restore IP CB before handing the packet to xfrm + - cifs: Fix incomplete memory allocation on setxattr path + - i2c: meson: fix clock setting overwrite + - i2c: meson: keep peripheral clock enabled + - i2c: meson: fixup rate calculation with filter delay + - i2c: owl: Clear NACK and BUS error bits + - sctp: fix sctp_auth_init_hmacs() error path + - team: set dev->needed_headroom in team_setup_by_port() + - net: team: fix memory leak in __team_options_register + - openvswitch: handle DNAT tuple collision + - drm/amdgpu: prevent double kfree ttm->sg + - btrfs: move btrfs_scratch_superblocks into btrfs_dev_replace_finishing + - io_uring: fix potential ABBA deadlock in ->show_fdinfo() + - drm/amd/pm: Removed fixed clock in auto mode DPM + - drm/amd/display: fix return value check for hdcp_work + - btrfs: move btrfs_rm_dev_replace_free_srcdev outside of all locks + - iommu/vt-d: Fix lockdep splat in iommu_flush_dev_iotlb() + - xfrm: clone XFRMA_SET_MARK in xfrm_do_migrate + - xfrm: clone XFRMA_REPLAY_ESN_VAL in xfrm_do_migrate + - xfrm: clone XFRMA_SEC_CTX in xfrm_do_migrate + - xfrm: clone whole liftime_cur structure in xfrm_do_migrate + - xsk: Do not discard packet when NETDEV_TX_BUSY + - net: stmmac: removed enabling eee in EEE set callback + - platform/x86: fix kconfig dependency warning for LG_LAPTOP + - platform/x86: fix kconfig dependency warning for FUJITSU_LAPTOP + - hinic: add log in exception handling processes + - hinic: fix wrong return value of mac-set cmd + - net: dsa: felix: convert TAS link speed based on phylink speed + - xfrm: Use correct address family in xfrm_state_find + - iavf: use generic power management + - iavf: Fix incorrect adapter get in iavf_resume + - ice: fix memory leak if register_netdev_fails + - ice: fix memory leak in ice_vsi_setup + - vmxnet3: fix cksum offload issues for non-udp tunnels + - net: stmmac: Fix clock handling on remove path + - net: ethernet: cavium: octeon_mgmt: use phy_start and phy_stop + - bonding: set dev->needed_headroom in bond_setup_by_slave() + - mdio: fix mdio-thunder.c dependency & build error + - mlxsw: spectrum_acl: Fix mlxsw_sp_acl_tcam_group_add()'s error path + - r8169: fix RTL8168f/RTL8411 EPHY config + - net: usb: ax88179_178a: fix missing stop entry in driver_info + - virtio-net: don't disable guest csum when disable LRO + - net: phy: realtek: fix rtl8211e rx/tx delay config + - octeontx2-af: Fix enable/disable of default NPC entries + - octeontx2-pf: Fix TCP/UDP checksum offload for IPv6 frames + - octeontx2-pf: Fix the device state on error + - octeontx2-pf: Fix synchnorization issue in mbox + - pipe: Fix memory leaks in create_pipe_files() + - net/mlx5: Fix a race when moving command interface to polling mode + - net/mlx5: Avoid possible free of command entry while timeout comp handler + - net/mlx5: poll cmd EQ in case of command timeout + - net/mlx5: Add retry mechanism to the command entry index allocation + - net/mlx5: Fix request_irqs error flow + - net/mlx5e: Add resiliency in Striding RQ mode for packets larger than MTU + - net/mlx5e: Fix return status when setting unsupported FEC mode + - net/mlx5e: Fix VLAN cleanup flow + - net/mlx5e: Fix VLAN create flow + - net/mlx5e: Fix race condition on nhe->n pointer in neigh update + - net: stmmac: Modify configuration method of EEE timers + - net: hinic: fix DEVLINK build errors + - vhost-vdpa: fix vhost_vdpa_map() on error condition + - vhost-vdpa: fix page pinning leakage in error path + - net: mvneta: fix double free of txq->buf + - rxrpc: Fix rxkad token xdr encoding + - rxrpc: Downgrade the BUG() for unsupported token type in rxrpc_read() + - rxrpc: Fix some missing _bh annotations on locking conn->state_lock + - rxrpc: The server keyring isn't network-namespaced + - rxrpc: Fix server keyring leak + - net: mscc: ocelot: rename ocelot_board.c to ocelot_vsc7514.c + - [Packaging] module ocelot_board rename + - net: mscc: ocelot: split writes to pause frame enable bit and to thresholds + - net: mscc: ocelot: extend watermark encoding function + - net: mscc: ocelot: divide watermark value by 60 when writing to SYS_ATOP + - afs: Fix deadlock between writeback and truncate + - perf: Fix task_function_call() error handling + - mmc: core: don't set limits.discard_granularity as 0 + - mm: validate inode in mapping_set_error() + - mm: khugepaged: recalculate min_free_kbytes after memory hotplug as expected + by khugepaged + - tcp: fix receive window update in tcp_add_backlog() + - netlink: fix policy dump leak + - net/core: check length before updating Ethertype in skb_mpls_{push,pop} + - net: bridge: fdb: don't flush ext_learn entries + - net/tls: race causes kernel panic + - net/mlx5e: Fix driver's declaration to support GRE offload + - tty/vt: Do not warn when huge selection requested + - Input: ati_remote2 - add missing newlines when printing module parameters + - net: usb: rtl8150: set random MAC address when set_ethernet_addr() fails + - net: qrtr: ns: Protect radix_tree_deref_slot() using rcu read locks + - net_sched: defer tcf_idr_insert() in tcf_action_init_1() + - net_sched: commit action insertions together + - Linux 5.8.15 + * Fix non-working Intel NVMe after S3 (LP: #1900847) + - SAUCE: PCI: Enable ACS quirk on all CML root ports + * Improve descriptions for XFAIL cases in kselftests/net/psock_snd + (LP: #1900088) + - selftests/net: improve descriptions for XFAIL cases in psock_snd.sh + * alsa/hda/realtek - The front Mic on a HP machine doesn't work (LP: #1899508) + - ALSA: hda/realtek - The front Mic on a HP machine doesn't work + * kci_test_encap_fou() in rtnetlink.sh from kselftests/net failed with "FAIL: + can't add fou port 7777, skipping test" (LP: #1891421) + - selftests: rtnetlink: load fou module for kci_test_encap_fou() test + * linux-aws: fold test_bpf SAUCE to linux/master (LP: #1900855) + - SAUCE: selftests: net: don't fail test_bpf when module is not present + * Fix broken MSI interrupt after HDA controller was suspended (LP: #1899586) + - ALSA: hda: fix jack detection with Realtek codecs when in D3 + + [ Ubuntu: 5.8.0-29.31 ] + + * Packaging resync (LP: #1786013) + - update dkms package versions + + -- Kleber Sacilotto de Souza Mon, 16 Nov 2020 14:12:10 +0100 + +linux-azure (5.8.0-1012.13) groovy; urgency=medium + + [ Ubuntu: 5.8.0-28.30 ] + + * CVE-2020-27194 + - bpf: Fix scalar32_min_max_or bounds tracking + + [ Ubuntu: 5.8.0-27.29 ] + + * CVE-2020-8694 + - powercap: make attributes only readable by root + + -- Kleber Sacilotto de Souza Thu, 05 Nov 2020 15:55:21 +0100 + +linux-azure (5.8.0-1011.11) groovy; urgency=medium + + * groovy/linux-azure: 5.8.0-1011.11 -proposed tracker (LP: #1900893) + + [ Ubuntu: 5.8.0-26.27 ] + + * groovy/linux: 5.8.0-26.27 -proposed tracker (LP: #1900896) + * Packaging resync (LP: #1786013) + - update dkms package versions + * Introduce the new NVIDIA 455 series (LP: #1897751) + - [Packaging] NVIDIA -- Add signed modules for the 455 driver + + -- Paolo Pisati Thu, 22 Oct 2020 10:32:02 +0200 + +linux-azure (5.8.0-1010.10) groovy; urgency=medium + + * groovy/linux-azure: 5.8.0-1010.10 -proposed tracker (LP: #1899930) + + * Miscellaneous Ubuntu changes + - [Config] annotations: update CONFIG_BT_HS policy + + [ Ubuntu: 5.8.0-25.26 ] + + * groovy/linux: 5.8.0-25.26 -proposed tracker (LP: #1899940) + * CVE-2020-12351 + - Bluetooth: L2CAP: Fix calling sk_filter on non-socket based channel + * CVE-2020-12352 + - Bluetooth: A2MP: Fix not initializing all members + * CVE-2020-12351 // CVE-2020-12352 // CVE-2020-24490 + - Bluetooth: Disable High Speed by default + - Bluetooth: MGMT: Fix not checking if BT_HS is enabled + - [Config] Disable BlueZ highspeed support + * ec2-hibinit-agent needs to properly initialize swap file (LP: #1892728) + - ext4: implement swap_activate aops using iomap + + [ Ubuntu: 5.8.0-24.25 ] + + * groovy/linux: 5.8.0-24.25 -proposed tracker (LP: #1899804) + * Fix system reboot when disconnecting WiFi (LP: #1899726) + - iwlwifi: msix: limit max RX queues for 9000 family + * ceph: fix inode number handling on arches with 32-bit ino_t (LP: #1899582) + - ceph: fix inode number handling on arches with 32-bit ino_t + * booting linux-generic-lpae armhf kernel under qemu results in relocation out + of range, and thus no modules can be loaded (LP: #1899519) + - [Config] armhf: ARM_MODULE_PLTS=y + + -- Paolo Pisati Thu, 15 Oct 2020 13:38:48 +0200 + +linux-azure (5.8.0-1009.9) groovy; urgency=medium + + + [ Ubuntu: 5.8.0-23.24 ] + + * CVE-2020-16119 + - SAUCE: dccp: avoid double free of ccid on child socket + + -- Seth Forshee Fri, 09 Oct 2020 11:04:49 -0500 + +linux-azure (5.8.0-1008.8) groovy; urgency=medium + + * groovy/linux-azure: 5.8.0-1008.8 -proposed tracker (LP: #1899093) + + * Miscellaneous Ubuntu changes + - [Config] CONFIG_UBUNTU_HOST=m + + [ Ubuntu: 5.8.0-22.23 ] + + * groovy/linux: 5.8.0-22.23 -proposed tracker (LP: #1899099) + * Packaging resync (LP: #1786013) + - update dkms package versions + * oops in nvkm_udevice_info() [nouveau] (LP: #1898130) + - drm/nouveau/device: return error for unknown chipsets + * python3-venv is gone (LP: #1896801) + - SAUCE: doc: remove python3-venv dependency + * *-tools-common packages descriptions have typo "PGKVER" (LP: #1898903) + - [Packaging] Fix typo in -tools template s/PGKVER/PKGVER/ + * Enable brightness control on HP DreamColor panel (LP: #1898865) + - SAUCE: drm/i915/dpcd_bl: Skip testing control capability with force DPCD + quirk + - SAUCE: drm/dp: HP DreamColor panel brigntness fix + * Groovy update: v5.8.14 upstream stable release (LP: #1898853) + - io_uring: always delete double poll wait entry on match + - btrfs: fix filesystem corruption after a device replace + - mmc: sdhci: Workaround broken command queuing on Intel GLK based IRBIS + models + - USB: gadget: f_ncm: Fix NDP16 datagram validation + - Revert "usbip: Implement a match function to fix usbip" + - usbcore/driver: Fix specific driver selection + - usbcore/driver: Fix incorrect downcast + - usbcore/driver: Accommodate usbip + - gpio: siox: explicitly support only threaded irqs + - gpio: mockup: fix resource leak in error path + - gpio: tc35894: fix up tc35894 interrupt configuration + - gpio: amd-fch: correct logic of GPIO_LINE_DIRECTION + - clk: samsung: Keep top BPLL mux on Exynos542x enabled + - clk: socfpga: stratix10: fix the divider for the emac_ptp_free_clk + - scsi: iscsi: iscsi_tcp: Avoid holding spinlock while calling getpeername() + - i2c: i801: Exclude device from suspend direct complete optimization + - Input: i8042 - add nopnp quirk for Acer Aspire 5 A515 + - iio: adc: qcom-spmi-adc5: fix driver name + - ftrace: Move RCU is watching check after recursion check + - tracing: Fix trace_find_next_entry() accounting of temp buffer size + - memstick: Skip allocating card when removing host + - drm/amdgpu: restore proper ref count in amdgpu_display_crtc_set_config + - xen/events: don't use chip_data for legacy IRQs + - clocksource/drivers/timer-gx6605s: Fixup counter reload + - vboxsf: Fix the check for the old binary mount-arguments struct + - mt76: mt7915: use ieee80211_free_txskb to free tx skbs + - libbpf: Remove arch-specific include path in Makefile + - drivers/net/wan/hdlc_fr: Add needed_headroom for PVC devices + - Revert "wlcore: Adding suppoprt for IGTK key in wlcore driver" + - drm/sun4i: mixer: Extend regmap max_register + - hv_netvsc: Cache the current data path to avoid duplicate call and message + - net: dec: de2104x: Increase receive ring size for Tulip + - rndis_host: increase sleep time in the query-response loop + - nvme-pci: disable the write zeros command for Intel 600P/P3100 + - nvme-core: get/put ctrl and transport module in nvme_dev_open/release() + - fuse: fix the ->direct_IO() treatment of iov_iter + - drivers/net/wan/lapbether: Make skb->protocol consistent with the header + - drivers/net/wan/hdlc: Set skb->protocol before transmitting + - mac80211: Fix radiotap header channel flag for 6GHz band + - mac80211: do not allow bigger VHT MPDUs than the hardware supports + - tracing: Make the space reserved for the pid wider + - tools/io_uring: fix compile breakage + - io_uring: mark statx/files_update/epoll_ctl as non-SQPOLL + - cpuidle: psci: Fix suspicious RCU usage + - spi: fsl-espi: Only process interrupts for expected events + - net: dsa: felix: fix some key offsets for IP4_TCP_UDP VCAP IS2 entries + - nvme-pci: fix NULL req in completion handler + - nvme-fc: fail new connections to a deleted host or remote port + - scripts/kallsyms: skip ppc compiler stub *.long_branch.* / *.plt_branch.* + - gpio: sprd: Clear interrupt when setting the type as edge + - phy: ti: am654: Fix a leak in serdes_am654_probe() + - pinctrl: mvebu: Fix i2c sda definition for 98DX3236 + - nfs: Fix security label length not being reset + - NFSv4.2: fix client's attribute cache management for copy_file_range + - pNFS/flexfiles: Ensure we initialise the mirror bsizes correctly on read + - clk: tegra: Always program PLL_E when enabled + - clk: tegra: Fix missing prototype for tegra210_clk_register_emc() + - dmaengine: dmatest: Prevent to run on misconfigured channel + - clk: samsung: exynos4: mark 'chipid' clock as CLK_IGNORE_UNUSED + - scsi: target: Fix lun lookup for TARGET_SCF_LOOKUP_LUN_FROM_TAG case + - iommu/exynos: add missing put_device() call in exynos_iommu_of_xlate() + - gpio: pca953x: Fix uninitialized pending variable + - gpio/aspeed-sgpio: enable access to all 80 input & output sgpios + - gpio/aspeed-sgpio: don't enable all interrupts by default + - gpio: aspeed: fix ast2600 bank properties + - i2c: cpm: Fix i2c_ram structure + - i2c: npcm7xx: Clear LAST bit after a failed transaction. + - Input: trackpoint - enable Synaptics trackpoints + - blk-mq: call commit_rqs while list empty but error happen + - scripts/dtc: only append to HOST_EXTRACFLAGS instead of overwriting + - autofs: use __kernel_write() for the autofs pipe writing + - pinctrl: qcom: sm8250: correct sdc2_clk + - pinctrl: mediatek: check mtk_is_virt_gpio input parameter + - gpio: pca953x: Correctly initialize registers 6 and 7 for PCA957x + - iommu/amd: Fix the overwritten field in IVMD header + - pipe: remove pipe_wait() and fix wakeup race with splice + - random32: Restore __latent_entropy attribute on net_rand_state + - gpiolib: Fix line event handling in syscall compatible mode + - drm/i915/gvt: Fix port number for BDW on EDID region setup + - scsi: sd: sd_zbc: Fix handling of host-aware ZBC disks + - scsi: sd: sd_zbc: Fix ZBC disk initialization + - epoll: do not insert into poll queues until all sanity checks are done + - epoll: replace ->visited/visited_list with generation count + - epoll: EPOLL_CTL_ADD: close the race in decision to take fast path + - ep_create_wakeup_source(): dentry name can change under you... + - Linux 5.8.14 + * Miscellaneous Ubuntu changes + - SAUCE: selftests/ftrace: check for do_sys_openat2 in user-memory test + - SAUCE: doc: Disable extension incompatible with Sphinx 3 + - Add ubuntu-host module + - CONFIG_UBUNTU_HOST=m + - SAUCE: Revert "UBUNTU: SAUCE: IB/umem: Fix the Peer flow to handle pinned + pages properly" + - SAUCE: Revert "UBUNTU: SAUCE: IB/mlx5: Use peer client page_shift" + - SAUCE: Revert "UBUNTU: SAUCE: fixup! RDMA/core: Introduce peer memory + interface" + - SAUCE: Revert "UBUNTU: SAUCE: RDMA/core: Introduce peer memory interface" + - SAUCE: apparmor: drop prefixing abs root labels with '=' + - SAUCE: apparmor: disable showing the mode as part of a secid to secctx + - SAUCE: apparmor: rename aa_sock() to aa_unix_sk() + - SAUCE: apparmor: LSM stacking: switch from SK_CTX() to aa_sock() + - SAUCE: LSM: Infrastructure management of the sock security + - SAUCE: LSM: Create and manage the lsmblob data structure. + - SAUCE: LSM: Use lsmblob in security_audit_rule_match + - SAUCE: LSM: Use lsmblob in security_kernel_act_as + - SAUCE: net: Prepare UDS for security module stacking + - SAUCE: LSM: Use lsmblob in security_secctx_to_secid + - SAUCE: LSM: Use lsmblob in security_secid_to_secctx + - SAUCE: LSM: Use lsmblob in security_ipc_getsecid + - SAUCE: LSM: Use lsmblob in security_task_getsecid + - SAUCE: LSM: Use lsmblob in security_inode_getsecid + - SAUCE: LSM: Use lsmblob in security_cred_getsecid + - SAUCE: IMA: Change internal interfaces to use lsmblobs + - SAUCE: LSM: Specify which LSM to display + - SAUCE: LSM: Ensure the correct LSM context releaser + - SAUCE: LSM: Use lsmcontext in security_secid_to_secctx + - SAUCE: LSM: Use lsmcontext in security_inode_getsecctx + - SAUCE: LSM: security_secid_to_secctx in netlink netfilter + - SAUCE: NET: Store LSM netlabel data in a lsmblob + - SAUCE: LSM: Verify LSM display sanity in binder + - SAUCE: Audit: Add new record for multiple process LSM attributes + - SAUCE: Audit: Add a new record for multiple object LSM + - SAUCE: LSM: Add /proc attr entry for full LSM context + - SAUCE: AppArmor: Remove the exclusive flag + - SAUCE: Audit: Fix for missing NULL check + * Miscellaneous upstream changes + - Revert "UBUNTU: [Packaging] Temporarily disable building doc package + contents" + - Revert "UBUNTU: SAUCE: Revert "apparmor: add support for mapping secids and + using secctxes"" + - Revert "UBUNTU: SAUCE: Revert "apparmor: Use an IDR to allocate apparmor + secids"" + - Revert "UBUNTU: SAUCE: Revert "apparmor: fixup secid map conversion to using + IDR"" + - Revert "UBUNTU: SAUCE: Revert "apparmor: Add a wildcard secid"" + - Revert "UBUNTU: SAUCE: Revert "apparmor: Parse secmark policy"" + - Revert "UBUNTU: SAUCE: Revert "apparmor: Allow filtering based on secmark + policy"" + - Revert "UBUNTU: SAUCE: Fix-up af_unix mediation for sock infrastructure + management" + - Revert "UBUNTU: SAUCE: LSM: Infrastructure management of the sock security" + - Revert "UBUNTU: SAUCE: apparmor: update flags to no longer be exclusive" + - Revert "UBUNTU: SAUCE: apparmor: add an apparmorfs entry to access current + attrs" + - Revert "UBUNTU: SAUCE: Revert "apparmor: add the ability to get a task's + secid"" + - Revert "UBUNTU: SAUCE: Revert "apparmor: Add support for audit rule + filtering"" + - Revert "UBUNTU: SAUCE: Revert "apparmor: modify audit rule support to + support profile stacks"" + - Revert "UBUNTU: SAUCE: Revert "apparmor: fix bad debug check in + apparmor_secid_to_secctx()"" + - Revert "UBUNTU: SAUCE: Revert "apparmor: add #ifdef checks for secmark + filtering"" + - Revert "UBUNTU: SAUCE: Revert "apparmor: fix checkpatch error in Parse + secmark policy"" + - Revert "UBUNTU: SAUCE: Revert "apparmor: Fix warning about unused function + apparmor_ipv6_postroute"" + + -- Paolo Pisati Fri, 09 Oct 2020 10:04:37 +0200 + +linux-azure (5.8.0-1007.7) groovy; urgency=medium + + * groovy/linux-azure: 5.8.0-1007.7 -proposed tracker (LP: #1898144) + + * linux-azure: Enable FSGSBASE instructions to support SGX (LP: #1877425) + - x86/ptrace: Prevent ptrace from clearing the FS/GS selector + - x86/cpu: Add 'unsafe_fsgsbase' to enable CR4.FSGSBASE + - x86/fsgsbase/64: Add intrinsics for FSGSBASE instructions + - x86/fsgsbase/64: Enable FSGSBASE instructions in helper functions + - x86/process/64: Make save_fsgs_for_kvm() ready for FSGSBASE + - x86/process/64: Use FSBSBASE in switch_to() if available + - x86/process/64: Use FSGSBASE instructions on thread copy and ptrace + - x86/speculation/swapgs: Check FSGSBASE in enabling SWAPGS mitigation + - x86/entry/64: Switch CR3 before SWAPGS in paranoid entry + - x86/entry/64: Introduce the FIND_PERCPU_BASE macro + - x86/entry/64: Handle FSGSBASE enabled paranoid entry/exit + - x86/cpu: Enable FSGSBASE on 64bit by default and add a chicken bit + - x86/elf: Enumerate kernel FSGSBASE capability in AT_HWCAP2 + - Documentation/x86/64: Add documentation for GS/FS addressing mode + - selftests/x86/fsgsbase: Test GS selector on ptracer-induced GS base write + - selftests/x86/fsgsbase: Test ptracer-induced GS base write with FSGSBASE + - x86/ptrace: Fix 32-bit PTRACE_SETREGS vs fsbase and gsbase + - x86/fsgsbase: Fix Xen PV support + + * Miscellaneous Ubuntu changes + - [Config] GCC version update + + [ Ubuntu: 5.8.0-21.22 ] + + * groovy/linux: 5.8.0-21.22 -proposed tracker (LP: #1898150) + * Packaging resync (LP: #1786013) + - update dkms package versions + * Fix broken e1000e device after S3 (LP: #1897755) + - SAUCE: e1000e: Increase polling timeout on MDIC ready bit + * EFA: add support for 0xefa1 devices (LP: #1896791) + - RDMA/efa: Expose maximum TX doorbell batch + - RDMA/efa: Expose minimum SQ size + - RDMA/efa: User/kernel compatibility handshake mechanism + - RDMA/efa: Add EFA 0xefa1 PCI ID + * Groovy update: v5.8.13 upstream stable release (LP: #1898076) + - device_cgroup: Fix RCU list debugging warning + - ASoC: pcm3168a: ignore 0 Hz settings + - ASoC: wm8994: Skip setting of the WM8994_MICBIAS register for WM1811 + - ASoC: wm8994: Ensure the device is resumed in wm89xx_mic_detect functions + - ASoC: Intel: bytcr_rt5640: Add quirk for MPMAN Converter9 2-in-1 + - clk: versatile: Add of_node_put() before return statement + - RISC-V: Take text_mutex in ftrace_init_nop() + - i2c: aspeed: Mask IRQ status to relevant bits + - s390/init: add missing __init annotations + - lockdep: fix order in trace_hardirqs_off_caller() + - EDAC/ghes: Check whether the driver is on the safe list correctly + - drm/amdkfd: fix a memory leak issue + - drm/amd/display: Don't use DRM_ERROR() for DTM add topology + - drm/amd/display: update nv1x stutter latencies + - drm/amdgpu/dc: Require primary plane to be enabled whenever the CRTC is + - drm/amd/display: Don't log hdcp module warnings in dmesg + - objtool: Fix noreturn detection for ignored functions + - i2c: mediatek: Send i2c master code at more than 1MHz + - riscv: Fix Kendryte K210 device tree + - ieee802154: fix one possible memleak in ca8210_dev_com_init + - ieee802154/adf7242: check status of adf7242_read_reg + - clocksource/drivers/h8300_timer8: Fix wrong return value in + h8300_8timer_init() + - batman-adv: bla: fix type misuse for backbone_gw hash indexing + - libbpf: Fix build failure from uninitialized variable warning + - atm: eni: fix the missed pci_disable_device() for eni_init_one() + - batman-adv: mcast/TT: fix wrongly dropped or rerouted packets + - netfilter: ctnetlink: add a range check for l3/l4 protonum + - netfilter: ctnetlink: fix mark based dump filtering regression + - netfilter: conntrack: nf_conncount_init is failing with IPv6 disabled + - netfilter: nft_meta: use socket user_ns to retrieve skuid and skgid + - mac802154: tx: fix use-after-free + - bpf: Fix clobbering of r2 in bpf_gen_ld_abs + - tools/libbpf: Avoid counting local symbols in ABI check + - drm/vc4/vc4_hdmi: fill ASoC card owner + - net: qed: Disable aRFS for NPAR and 100G + - net: qede: Disable aRFS for NPAR and 100G + - net: qed: RDMA personality shouldn't fail VF load + - igc: Fix wrong timestamp latency numbers + - igc: Fix not considering the TX delay for timestamps + - drm/sun4i: sun8i-csc: Secondary CSC register correction + - hv_netvsc: Switch the data path at the right time during hibernation + - spi: spi-fsl-dspi: use XSPI mode instead of DMA for DPAA2 SoCs + - RDMA/core: Fix ordering of CQ pool destruction + - batman-adv: Add missing include for in_interrupt() + - xsk: Fix number of pinned pages/umem size discrepancy + - nvme-tcp: fix kconfig dependency warning when !CRYPTO + - batman-adv: mcast: fix duplicate mcast packets in BLA backbone from LAN + - batman-adv: mcast: fix duplicate mcast packets in BLA backbone from mesh + - batman-adv: mcast: fix duplicate mcast packets from BLA backbone to mesh + - bpf: Fix a rcu warning for bpffs map pretty-print + - lib80211: fix unmet direct dependendices config warning when !CRYPTO + - mac80211: do not disable HE if HT is missing on 2.4 GHz + - cfg80211: fix 6 GHz channel conversion + - mac80211: fix 80 MHz association to 160/80+80 AP on 6 GHz + - ALSA: asihpi: fix iounmap in error handler + - io_uring: fix openat/openat2 unified prep handling + - SUNRPC: Fix svc_flush_dcache() + - regmap: fix page selection for noinc reads + - regmap: fix page selection for noinc writes + - net/mlx5e: mlx5e_fec_in_caps() returns a boolean + - MIPS: Loongson-3: Fix fp register access if MSA enabled + - PM / devfreq: tegra30: Disable clock on error in probe + - MIPS: Add the missing 'CPU_1074K' into __get_cpu_type() + - regulator: axp20x: fix LDO2/4 description + - spi: bcm-qspi: Fix probe regression on iProc platforms + - KVM: x86: Reset MMU context if guest toggles CR4.SMAP or CR4.PKE + - KVM: SVM: Add a dedicated INVD intercept routine + - mm: validate pmd after splitting + - arch/x86/lib/usercopy_64.c: fix __copy_user_flushcache() cache writeback + - x86/irq: Make run_on_irqstack_cond() typesafe + - x86/ioapic: Unbreak check_timer() + - scsi: lpfc: Fix initial FLOGI failure due to BBSCN not supported + - ALSA: usb-audio: Add delay quirk for H570e USB headsets + - ALSA: hda/realtek - Couldn't detect Mic if booting with headset plugged + - ALSA: hda/realtek: Enable front panel headset LED on Lenovo ThinkStation + P520 + - lib/string.c: implement stpcpy + - tracing: fix double free + - s390/dasd: Fix zero write for FBA devices + - mt76: mt7615: use v1 MCU API on MT7615 to fix issues with adding/removing + stations + - lib/bootconfig: Fix a bug of breaking existing tree nodes + - lib/bootconfig: Fix to remove tailing spaces after value + - kprobes: Fix to check probe enabled before disarm_kprobe_ftrace() + - kprobes: tracing/kprobes: Fix to kill kprobes on initmem after boot + - btrfs: fix put of uninitialized kobject after seed device delete + - btrfs: fix overflow when copying corrupt csums for a message + - media: cec-adap.c: don't use flush_scheduled_work() + - MIPS: Loongson2ef: Disable Loongson MMI instructions + - dmabuf: fix NULL pointer dereference in dma_buf_release() + - mm, THP, swap: fix allocating cluster for swapfile by mistake + - mm: replace memmap_context by meminit_context + - mm: don't rely on system state to detect hot-plug operations + - s390/zcrypt: Fix ZCRYPT_PERDEV_REQCNT ioctl + - io_uring: ensure open/openat2 name is cleaned on cancelation + - KVM: arm64: Assume write fault on S1PTW permission fault on instruction + fetch + - dm: fix bio splitting and its bio completion order for regular IO + - clocksource/drivers/timer-ti-dm: Do reset before enable + - Linux 5.8.13 + * HP Zbook Studio G7 boots into corrupted screen with PSR featured panel + (LP: #1897501) + - SAUCE: drm/i915/psr: allow overriding PSR disable param by quirk + - SAUCE: drm/dp: add DP_QUIRK_FORCE_PSR_CHIP_DEFAULT quirk to CMN prod-ID + 19-15 + * mwifiex stops working after kernel upgrade (LP: #1897299) + - mwifiex: Increase AES key storage size to 256 bits + * Oops and hang when starting LVM snapshots on 5.4.0-47 (LP: #1894780) + - SAUCE: Revert "mm: memcg/slab: fix memory leak at non-root kmem_cache + destroy" + * mm/slub kernel oops on focal kernel 5.4.0-45 (LP: #1895109) + - SAUCE: Revert "mm/slub: fix a memory leak in sysfs_slab_add()" + * Remove NVMe suspend-to-idle workaround (LP: #1897227) + - Revert "UBUTU: SAUCE: pci: prevent Intel NVMe SSDPEKKF from entering D3" + - Revert "UBUNTU: SAUCE: pci: prevent sk hynix nvme from entering D3" + * [UBUNTU 20.04.1] qemu (secure guest) crash due to gup_fast / dynamic page + table folding issue (LP: #1896726) + - mm/gup: fix gup_fast with dynamic page table folding + * backport tls-rx to ubuntu 5.8 (LP: #1895947) + - net/mlx5: kTLS, Improve TLS params layout structures + - net/mlx5e: Turn XSK ICOSQ into a general asynchronous one + - net/mlx5e: Refactor build channel params + - net/mlx5e: API to manipulate TTC rules destinations + - net/mlx5e: Receive flow steering framework for accelerated TCP flows + - net/mlx5e: Accel, Expose flow steering API for rules add/del + - net/mlx5e: kTLS, Improve TLS feature modularity + - net/mlx5e: kTLS, Use kernel API to extract private offload context + - net/mlx5e: kTLS, Add kTLS RX HW offload support + - Revert "net/tls: Add force_resync for driver resync" + - net/tls: Add asynchronous resync + - net/mlx5e: kTLS, Add kTLS RX resync support + - net/mlx5e: kTLS, Add kTLS RX stats + - net/mlx5e: Increase Async ICO SQ size + - net/mlx5e: kTLS, Cleanup redundant capability check + - net/mlx5e: kTLS, Improve rx handler function call + - net/mlx5e: kTLS, Fix napi sync and possible use-after-free + - net/mlx5e: fix memory leak of tls + - net/mlx5e: Fix build break when CONFIG_XPS is not set + - net/mlx5e: kTLS, Add missing dma_unmap in RX resync + - net/mlx5e: kTLS, Fix leak on resync error flow + - net/mlx5e: kTLS, Avoid kzalloc(GFP_KERNEL) under spinlock + * Groovy update: v5.8.12 upstream stable release (LP: #1897550) + - ibmvnic fix NULL tx_pools and rx_tools issue at do_reset + - ibmvnic: add missing parenthesis in do_reset() + - act_ife: load meta modules before tcf_idr_check_alloc() + - bnxt_en: Avoid sending firmware messages when AER error is detected. + - bnxt_en: Fix NULL ptr dereference crash in bnxt_fw_reset_task() + - cxgb4: fix memory leak during module unload + - cxgb4: Fix offset when clearing filter byte counters + - geneve: add transport ports in route lookup for geneve + - hdlc_ppp: add range checks in ppp_cp_parse_cr() + - hinic: bump up the timeout of SET_FUNC_STATE cmd + - ip: fix tos reflection in ack and reset packets + - ipv4: Initialize flowi4_multipath_hash in data path + - ipv4: Update exception handling for multipath routes via same device + - ipv6: avoid lockdep issue in fib6_del() + - net: bridge: br_vlan_get_pvid_rcu() should dereference the VLAN group under + RCU + - net: DCB: Validate DCB_ATTR_DCB_BUFFER argument + - net: dsa: rtl8366: Properly clear member config + - net: Fix bridge enslavement failure + - net: ipv6: fix kconfig dependency warning for IPV6_SEG6_HMAC + - net/mlx5: Fix FTE cleanup + - net: phy: call phy_disable_interrupts() in phy_attach_direct() instead + - net: sched: initialize with 0 before setting erspan md->u + - net: sch_generic: aviod concurrent reset and enqueue op for lockless qdisc + - net: sctp: Fix IPv6 ancestor_size calc in sctp_copy_descendant + - nfp: use correct define to return NONE fec + - taprio: Fix allowing too small intervals + - tipc: Fix memory leak in tipc_group_create_member() + - tipc: fix shutdown() of connection oriented socket + - tipc: use skb_unshare() instead in tipc_buf_append() + - net/mlx5e: Enable adding peer miss rules only if merged eswitch is supported + - net/mlx5e: TLS, Do not expose FPGA TLS counter if not supported + - bnxt_en: Use memcpy to copy VPD field info. + - bnxt_en: return proper error codes in bnxt_show_temp + - bnxt_en: Protect bnxt_set_eee() and bnxt_set_pauseparam() with mutex. + - net: lantiq: Wake TX queue again + - net: lantiq: use netif_tx_napi_add() for TX NAPI + - net: lantiq: Use napi_complete_done() + - net: lantiq: Disable IRQs only if NAPI gets scheduled + - net: phy: Avoid NPD upon phy_detach() when driver is unbound + - net: phy: Do not warn in phy_stop() on PHY_DOWN + - net: qrtr: check skb_put_padto() return value + - net: add __must_check to skb_put_padto() + - net: ethernet: ti: cpsw_new: fix suspend/resume + - wireguard: noise: take lock when removing handshake entry from table + - wireguard: peerlookup: take lock before checking hash in replace operation + - net: ipa: fix u32_replace_bits by u32p_xxx version + - net/mlx5e: Fix memory leak of tunnel info when rule under multipath not + ready + - hinic: fix rewaking txq after netif_tx_disable + - hv_netvsc: Fix hibernation for mlx5 VF driver + - net: dsa: link interfaces with the DSA master to get rid of lockdep warnings + - net: dsa: microchip: ksz8795: really set the correct number of ports + - net: macb: fix for pause frame receive enable bit + - Revert "netns: don't disable BHs when locking "nsid_lock"" + - net/mlx5e: Use RCU to protect rq->xdp_prog + - net/mlx5e: Use synchronize_rcu to sync with NAPI + - net/mlx5e: Fix endianness when calculating pedit mask first bit + - Linux 5.8.12 + * Groovy update: v5.8.11 upstream stable release (LP: #1896795) + - RDMA/bnxt_re: Restrict the max_gids to 256 + - dt-bindings: spi: Fix spi-bcm-qspi compatible ordering + - mptcp: sendmsg: reset iter on error + - net: handle the return value of pskb_carve_frag_list() correctly + - dt-bindings: PCI: intel,lgm-pcie: Fix matching on all snps,dw-pcie instances + - hv_netvsc: Remove "unlikely" from netvsc_select_queue + - loop: Set correct device size when using LOOP_CONFIGURE + - firmware_loader: fix memory leak for paged buffer + - xprtrdma: Release in-flight MRs on disconnect + - NFSv4.1 handle ERR_DELAY error reclaiming locking state on delegation recall + - phy: omap-usb2-phy: disable PHY charger detect + - habanalabs: prevent user buff overflow + - habanalabs: fix report of RAZWI initiator coordinates + - scsi: pm8001: Fix memleak in pm8001_exec_internal_task_abort + - scsi: libfc: Fix for double free() + - scsi: lpfc: Fix FLOGI/PLOGI receive race condition in pt2pt discovery + - scsi: lpfc: Extend the RDF FPIN Registration descriptor for additional + events + - regulator: pwm: Fix machine constraints application + - spi: spi-loopback-test: Fix out-of-bounds read + - interconnect: Show bandwidth for disabled paths as zero in debugfs + - NFS: Zero-stateid SETATTR should first return delegation + - SUNRPC: stop printk reading past end of string + - rapidio: Replace 'select' DMAENGINES 'with depends on' + - cifs: fix DFS mount with cifsacl/modefromsid + - openrisc: Fix cache API compile issue when not inlining + - nvme-fc: cancel async events before freeing event struct + - nvme-rdma: cancel async events before freeing event struct + - nvme-tcp: cancel async events before freeing event struct + - block: only call sched requeue_request() for scheduled requests + - f2fs: fix indefinite loop scanning for free nid + - f2fs: Return EOF on unaligned end of file DIO read + - i2c: algo: pca: Reapply i2c bus settings after reset + - spi: Fix memory leak on splited transfers + - KVM: MIPS: Change the definition of kvm type + - clk: davinci: Use the correct size when allocating memory + - clk: rockchip: Fix initialization of mux_pll_src_4plls_p + - ASoC: Intel: skl_hda_dsp_generic: Fix NULLptr dereference in autosuspend + delay + - ASoC: qcom: Set card->owner to avoid warnings + - ASoC: rt1308-sdw: Fix return check for devm_regmap_init_sdw() + - ASoC: rt711: Fix return check for devm_regmap_init_sdw() + - ASoC: rt715: Fix return check for devm_regmap_init_sdw() + - ASoC: rt700: Fix return check for devm_regmap_init_sdw() + - ASoC: qcom: common: Fix refcount imbalance on error + - drm/mediatek: dsi: Fix scrolling of panel with small hfp or hbp + - powerpc/book3s64/radix: Fix boot failure with large amount of guest memory + - ASoC: soc-core: add snd_soc_find_dai_with_mutex() + - ASoC: meson: axg-toddr: fix channel order on g12 platforms + - ASoC: tlv320adcx140: Fix accessing uninitialized adcx140->dev + - ASoC: Intel: haswell: Fix power transition refactor + - ASoC: core: Do not cleanup uninitialized dais on soc_pcm_open failure + - Drivers: hv: vmbus: hibernation: do not hang forever in vmbus_bus_resume() + - scsi: libsas: Fix error path in sas_notify_lldd_dev_found() + - arm64: Allow CPUs unffected by ARM erratum 1418040 to come in late + - Drivers: hv: vmbus: Add timeout to vmbus_wait_for_unload + - perf test: Fix the "signal" test inline assembly + - perf record: Don't clear event's period if set by a term + - MIPS: SNI: Fix MIPS_L1_CACHE_SHIFT + - perf test: Free aliases for PMU event map aliases test + - perf metric: Fix some memory leaks + - perf evlist: Fix cpu/thread map leak + - perf parse-event: Fix memory leak in evsel->unit + - perf test: Free formats for perf pmu parse test + - drm/i915/gem: Reduce context termination list iteration guard to RCU + - fbcon: Fix user font detection test at fbcon_resize(). + - MIPS: SNI: Fix spurious interrupts + - drm/mediatek: Use CPU when fail to get cmdq event + - drm/mediatek: Add missing put_device() call in mtk_ddp_comp_init() + - drm/mediatek: Add exception handing in mtk_drm_probe() if component init + fail + - drm/mediatek: Add missing put_device() call in mtk_drm_kms_init() + - drm/mediatek: Add missing put_device() call in mtk_hdmi_dt_parse_pdata() + - arm64: bpf: Fix branch offset in JIT + - iommu/amd: Fix potential @entry null deref + - iommu/amd: Restore IRTE.RemapEn bit for amd_iommu_activate_guest_mode + - kconfig: qconf: use delete[] instead of delete to free array (again) + - i2c: mediatek: Fix generic definitions for bus frequency + - i2c: mxs: use MXS_DMA_CTRL_WAIT4END instead of DMA_CTRL_ACK + - riscv: Add sfence.vma after early page table changes + - locking/lockdep: Fix "USED" <- "IN-NMI" inversions + - efi: efibc: check for efivars write capability + - locking/percpu-rwsem: Use this_cpu_{inc,dec}() for read_count + - x86/unwind/fp: Fix FP unwinding in ret_from_fork + - drm/kfd: fix a system crash issue during GPU recovery + - drm/i915/gem: Delay tracking the GEM context until it is registered + - drm/i915: Filter wake_flags passed to default_wake_function + - USB: quirks: Add USB_QUIRK_IGNORE_REMOTE_WAKEUP quirk for BYD zhaoxin + notebook + - USB: UAS: fix disconnect by unplugging a hub + - usblp: fix race between disconnect() and read() + - usb: typec: ucsi: acpi: Increase command completion timeout value + - usb: typec: ucsi: Prevent mode overrun + - i2c: i801: Fix resume bug + - Revert "ALSA: hda - Fix silent audio output and corrupted input on MSI + X570-A PRO" + - ALSA: hda: fixup headset for ASUS GX502 laptop + - ALSA: hda/realtek - The Mic on a RedmiBook doesn't work + - percpu: fix first chunk size calculation for populated bitmap + - Input: trackpoint - add new trackpoint variant IDs + - Input: i8042 - add Entroware Proteus EL07R4 to nomux and reset lists + - serial: 8250_pci: Add Realtek 816a and 816b + - serial: core: fix port-lock initialisation + - serial: core: fix console port-lock regression + - x86/boot/compressed: Disable relocation relaxation + - ksm: reinstate memcg charge on copied pages + - kprobes: fix kill kprobe which has been marked as gone + - mm/thp: fix __split_huge_pmd_locked() for migration PMD + - s390: add 3f program exception handler + - s390/zcrypt: fix kmalloc 256k failure + - ehci-hcd: Move include to keep CRC stable + - arm64: paravirt: Initialize steal time when cpu is online + - powerpc/dma: Fix dma_map_ops::get_required_mask + - selftests/vm: fix display of page size in map_hugetlb + - dm/dax: Fix table reference counts + - mm/memory_hotplug: drain per-cpu pages again during memory offline + - dm: Call proper helper to determine dax support + - dax: Fix compilation for CONFIG_DAX && !CONFIG_FS_DAX + - mm: memcg: fix memcg reclaim soft lockup + - nvme-loop: set ctrl state connecting after init + - Linux 5.8.11 + * Miscellaneous Ubuntu changes + - SAUCE: drm/i915/display: Fix null deref in intel_psr_atomic_check() + - SAUCE: RDMA/core: Introduce peer memory interface + - SAUCE: fixup! RDMA/core: Introduce peer memory interface + - SAUCE: IB/mlx5: Use peer client page_shift + - SAUCE: IB/umem: Fix the Peer flow to handle pinned pages properly + - [Config] GCC version update + + -- Paolo Pisati Fri, 02 Oct 2020 12:11:07 +0200 + +linux-azure (5.8.0-1006.6) groovy; urgency=medium + + * groovy/linux-azure: 5.8.0-1006.6 -proposed tracker (LP: #1896662) + + * Miscellaneous Ubuntu changes + - [Config] Update configs following 5.8.0-20.21 rebase + + [ Ubuntu: 5.8.0-20.21 ] + + * groovy/linux: 5.8.0-20.21 -proposed tracker (LP: #1896668) + * Lenovo ThinkBook 14-IML Touchpad not showing up in /proc/bus/input/devices + (LP: #1853277) + - i2c: core: Call i2c_acpi_install_space_handler() before + i2c_acpi_register_devices() + * Enable LTR for endpoints behind VMD (LP: #1896598) + - SAUCE: PCI/ASPM: Enable LTR for endpoints behind VMD + * Remove duplicated code in ip_defrag.sh of kselftests/net (LP: #1894062) + - Revert "UBUNTU: SAUCE: selftests: net: ip_defrag: modprobe missing + nf_defrag_ipv6 support" + * [SRU] [Focal/OEM-5.6/Groovy]Fix AMD usb host controller lost after stress S3 + (LP: #1893914) + - SAUCE: xhci: workaround for S3 issue on AMD SNPS 3.0 xHC + * debian/rules editconfigs does not work on s390x to change s390x only configs + (LP: #1863116) + - [Packaging] kernelconfig -- only update/edit configurations on architectures + we have compiler support + * [Ubuntu 20.10] zPCI DMA tables and bitmap leak on hard unplug (PCI Event + 0x0304) (LP: #1896216) + - s390/pci: fix leak of DMA tables on hard unplug + * md: improve IO accounting (LP: #1891151) + - md: improve io stats accounting + * Groovy update: v5.8.10 upstream stable release (LP: #1896078) + - ARM: OMAP2+: Fix an IS_ERR() vs NULL check in _get_pwrdm() + - ARM: dts: logicpd-torpedo-baseboard: Fix broken audio + - ARM: dts: logicpd-som-lv-baseboard: Fix broken audio + - ARM: dts: logicpd-som-lv-baseboard: Fix missing video + - regulator: push allocation in regulator_ena_gpio_request() out of lock + - regulator: remove superfluous lock in regulator_resolve_coupling() + - ARM: dts: socfpga: fix register entry for timer3 on Arria10 + - ARM: dts: omap5: Fix DSI base address and clocks + - ARM: dts: ls1021a: fix QuadSPI-memory reg range + - ARM: dts: imx7ulp: Correct gpio ranges + - arm64: dts: imx: Add missing imx8mm-beacon-kit.dtb to build + - ARM: dts: imx7d-zii-rmu2: fix rgmii phy-mode for ksz9031 phy + - RDMA/rtrs-srv: Replace device_register with device_initialize and device_add + - RDMA/rxe: Fix memleak in rxe_mem_init_user + - RDMA/rxe: Drop pointless checks in rxe_init_ports + - RDMA/rxe: Fix panic when calling kmem_cache_create() + - RDMA/bnxt_re: Do not report transparent vlan from QP1 + - RDMA/bnxt_re: Fix the qp table indexing + - RDMA/bnxt_re: Static NQ depth allocation + - RDMA/bnxt_re: Fix driver crash on unaligned PSN entry address + - RDMA/bnxt_re: Remove the qp from list only if the qp destroy succeeds + - drm/sun4i: add missing put_device() call in sun8i_r40_tcon_tv_set_mux() + - arm64: dts: imx8mq: Fix TMU interrupt property + - drm/sun4i: Fix dsi dcs long write function + - scsi: qla2xxx: Fix regression on sparc64 + - scsi: libsas: Set data_dir as DMA_NONE if libata marks qc as NODATA + - drm/virtio: fix unblank + - RDMA/core: Fix unsafe linked list traversal after failing to allocate CQ + - RDMA/core: Fix reported speed and width + - scsi: megaraid_sas: Don't call disable_irq from process IRQ poll + - scsi: mpt3sas: Don't call disable_irq from IRQ poll handler + - soundwire: fix double free of dangling pointer + - Revert "kbuild: use -flive-patching when CONFIG_LIVEPATCH is enabled" + - interconnect: qcom: Fix small BW votes being truncated to zero + - padata: fix possible padata_works_lock deadlock + - drm/sun4i: Fix DE2 YVU handling + - drm/sun4i: backend: Support alpha property on lowest plane + - drm/sun4i: backend: Disable alpha on the lowest plane on the A20 + - KVM: arm64: Update page shift if stage 2 block mapping not supported + - ARM: dts: imx6sx: fix the pad QSPI1B_SCLK mux mode for uart3 + - mmc: sdhci-acpi: Clear amd_sdhci_host on reset + - mmc: sdhci-msm: Add retries when all tuning phases are found valid + - spi: stm32: Rate-limit the 'Communication suspended' message + - btrfs: fix NULL pointer dereference after failure to create snapshot + - i2c: npcm7xx: Fix timeout calculation + - block: restore a specific error code in bdev_del_partition + - seccomp: don't leak memory when filter install races + - nvme-fabrics: allow to queue requests for live queues + - spi: stm32: fix pm_runtime_get_sync() error checking + - block: Set same_page to false in __bio_try_merge_page if ret is false + - RDMA/rtrs-srv: Set .release function for rtrs srv device during device init + - IB/isert: Fix unaligned immediate-data handling + - ARM: dts: bcm: HR2: Fixed QSPI compatible string + - ARM: dts: NSP: Fixed QSPI compatible string + - ARM: dts: BCM5301X: Fixed QSPI compatible string + - arm64: dts: ns2: Fixed QSPI compatible string + - KVM: nVMX: Fix the update value of nested load IA32_PERF_GLOBAL_CTRL control + - KVM: x86: always allow writing '0' to MSR_KVM_ASYNC_PF_EN + - ARC: HSDK: wireup perf irq + - dmaengine: acpi: Put the CSRT table after using it + - MIPS: Loongson64: Do not override watch and ejtag feature + - netfilter: conntrack: allow sctp hearbeat after connection re-use + - netfilter: nft_set_rbtree: Detect partial overlap with start endpoint match + - drivers/net/wan/lapbether: Added needed_tailroom + - NFC: st95hf: Fix memleak in st95hf_in_send_cmd + - firestream: Fix memleak in fs_open + - scsi: qedf: Fix null ptr reference in qedf_stag_change_work + - ALSA: hda: Fix 2 channel swapping for Tegra + - ALSA: hda/tegra: Program WAKEEN register for Tegra + - drivers/dma/dma-jz4780: Fix race condition between probe and irq handler + - net: hns3: Fix for geneve tx checksum bug + - xfs: fix off-by-one in inode alloc block reservation calculation + - drivers/net/wan/lapbether: Set network_header before transmitting + - wireless: fix wrong 160/80+80 MHz setting + - mac80211: reduce packet loss event false positives + - cfg80211: Adjust 6 GHz frequency to channel conversion + - xfs: initialize the shortform attr header padding entry + - ARC: show_regs: fix r12 printing and simplify + - irqchip/eznps: Fix build error for !ARC700 builds + - media: gpio-ir-tx: spinlock is not needed to disable interrupts + - nvmet-tcp: Fix NULL dereference when a connect data comes in h2cdata pdu + - nvme-fabrics: don't check state NVME_CTRL_NEW for request acceptance + - nvme: have nvme_wait_freeze_timeout return if it timed out + - nvme-tcp: serialize controller teardown sequences + - nvme-tcp: fix timeout handler + - nvme-tcp: fix reset hang if controller died in the middle of a reset + - nvme-rdma: serialize controller teardown sequences + - nvme-rdma: fix timeout handler + - nvme-rdma: fix reset hang if controller died in the middle of a reset + - nvme-pci: cancel nvme device request before disabling + - HID: quirks: Set INCREMENT_USAGE_ON_DUPLICATE for all Saitek X52 devices + - HID: microsoft: Add rumble support for the 8bitdo SN30 Pro+ controller + - drivers/net/wan/hdlc_cisco: Add hard_header_len + - HID: elan: Fix memleak in elan_input_configured + - ARC: [plat-hsdk]: Switch ethernet phy-mode to rgmii-id + - cpufreq: intel_pstate: Refuse to turn off with HWP enabled + - cpufreq: intel_pstate: Fix intel_pstate_get_hwp_max() for turbo disabled + - arm64/module: set trampoline section flags regardless of + CONFIG_DYNAMIC_FTRACE + - ALSA: hda: hdmi - add Rocketlake support + - ALSA: hda: fix a runtime pm issue in SOF when integrated GPU is disabled + - ALSA: hda: use consistent HDAudio spelling in comments/docs + - drivers/net/wan/hdlc: Change the default of hard_header_len to 0 + - drm/amdgpu: Fix bug in reporting voltage for CIK + - iommu/amd: Do not force direct mapping when SME is active + - iommu/amd: Do not use IOMMUv2 functionality when SME is active + - gcov: Disable gcov build with GCC 10 + - iio: adc: mcp3422: fix locking scope + - iio: adc: mcp3422: fix locking on error path + - iio: adc: ti-ads1015: fix conversion when CONFIG_PM is not set + - iio: cros_ec: Set Gyroscope default frequency to 25Hz + - iio:light:ltr501 Fix timestamp alignment issue. + - iio:proximity:mb1232: Fix timestamp alignment and prevent data leak. + - iio:accel:bmc150-accel: Fix timestamp alignment and prevent data leak. + - iio:adc:ti-adc084s021 Fix alignment and data leak issues. + - iio:adc:ina2xx Fix timestamp alignment issue. + - iio:adc:max1118 Fix alignment of timestamp and data leak issues + - iio:adc:ti-adc081c Fix alignment and data leak issues + - iio:magnetometer:ak8975 Fix alignment and data leak issues. + - iio:light:max44000 Fix timestamp alignment and prevent data leak. + - iio:chemical:ccs811: Fix timestamp alignment and prevent data leak. + - iio: accel: kxsd9: Fix alignment of local buffer. + - iio:accel:mma7455: Fix timestamp alignment and prevent data leak. + - iio:accel:mma8452: Fix timestamp alignment and prevent data leak. + - staging: wlan-ng: fix out of bounds read in prism2sta_probe_usb() + - btrfs: require only sector size alignment for parent eb bytenr + - btrfs: fix lockdep splat in add_missing_dev + - btrfs: free data reloc tree on failed mount + - btrfs: fix wrong address when faulting in pages in the search ioctl + - thunderbolt: Disable ports that are not implemented + - kobject: Restore old behaviour of kobject_del(NULL) + - regulator: push allocation in regulator_init_coupling() outside of lock + - regulator: push allocations in create_regulator() outside of lock + - regulator: push allocation in set_consumer_device_supply() out of lock + - regulator: plug of_node leak in regulator_register()'s error path + - regulator: core: Fix slab-out-of-bounds in regulator_unlock_recursive() + - misc: eeprom: at24: register nvmem only after eeprom is ready to use + - scsi: target: iscsi: Fix data digest calculation + - scsi: lpfc: Fix setting IRQ affinity with an empty CPU mask + - scsi: target: iscsi: Fix hang in iscsit_access_np() when getting + tpg->np_login_sem + - drm/tve200: Stabilize enable/disable + - drm/msm: Split the a5xx preemption record + - drm/msm: Disable preemption on all 5xx targets + - drm/msm: Disable the RPTR shadow + - mmc: sdio: Use mmc_pre_req() / mmc_post_req() + - mmc: sdhci-of-esdhc: Don't walk device-tree on every interrupt + - nvme: Revert: Fix controller creation races with teardown flow + - rbd: require global CAP_SYS_ADMIN for mapping and unmapping + - RDMA/rxe: Fix the parent sysfs read when the interface has 15 chars + - RDMA/mlx4: Read pkey table length instead of hardcoded value + - fbcon: remove soft scrollback code + - fbcon: remove now unusued 'softback_lines' cursor() argument + - vgacon: remove software scrollback support + - KVM: VMX: Don't freeze guest when event delivery causes an APIC-access exit + - KVM: arm64: Do not try to map PUDs when they are folded into PMD + - kvm x86/mmu: use KVM_REQ_MMU_SYNC to sync when needed + - KVM: fix memory leak in kvm_io_bus_unregister_dev() + - Revert "usb: dwc3: meson-g12a: fix shared reset control use" + - debugfs: Fix module state check condition + - test_firmware: Test platform fw loading on non-EFI systems + - arm64: dts: imx8mp: correct sdma1 clk setting + - ARM: dts: vfxxx: Add syscon compatible with OCOTP + - video: fbdev: fix OOB read in vga_8planes_imageblit() + - staging: greybus: audio: fix uninitialized value issue + - phy: qcom-qmp: Use correct values for ipq8074 PCIe Gen2 PHY init + - usb: core: fix slab-out-of-bounds Read in read_descriptors + - USB: serial: ftdi_sio: add IDs for Xsens Mti USB converter + - USB: serial: option: support dynamic Quectel USB compositions + - USB: serial: option: add support for SIM7070/SIM7080/SIM7090 modules + - usb: Fix out of sync data toggle if a configured device is reconfigured + - usb: typec: ucsi: acpi: Check the _DEP dependencies + - usb: typec: intel_pmc_mux: Un-register the USB role switch + - usb: typec: intel_pmc_mux: Do not configure Altmode HPD High + - usb: typec: intel_pmc_mux: Do not configure SBU and HSL Orientation in + Alternate modes + - drm/msm/gpu: make ringbuffer readonly + - gcov: add support for GCC 10.1 + - Linux 5.8.10 + - [Config] GCC version update + - [Config] updateconfigs following v5.8.10 import + * Wakeup the system by touching the touchpad (LP: #1888331) + - HID: i2c-hid: Enable wakeup capability from Suspend-to-Idle + * Fix non-working NVMe after S3 (LP: #1895718) + - SAUCE: PCI: Enable ACS quirk on CML root port + * Thunderbolt3 daisy chain sometimes doesn't work (LP: #1895606) + - thunderbolt: Retry DROM read once if parsing fails + * Groovy update: v5.8.9 upstream stable release (LP: #1895634) + - io_uring: fix cancel of deferred reqs with ->files + - io_uring: fix linked deferred ->files cancellation + - RDMA/cma: Simplify DEVICE_REMOVAL for internal_id + - RDMA/cma: Using the standard locking pattern when delivering the removal + event + - RDMA/cma: Remove unneeded locking for req paths + - RDMA/cma: Execute rdma_cm destruction from a handler properly + - ipv4: Silence suspicious RCU usage warning + - ipv6: Fix sysctl max for fib_multipath_hash_policy + - netlabel: fix problems with mapping removal + - net: usb: dm9601: Add USB ID of Keenetic Plus DSL + - sctp: not disable bh in the whole sctp_get_port_local() + - taprio: Fix using wrong queues in gate mask + - tipc: fix shutdown() of connectionless socket + - tipc: fix using smp_processor_id() in preemptible + - net: disable netpoll on fresh napis + - mptcp: free acked data before waiting for more memory + - Linux 5.8.9 + * Miscellaneous Ubuntu changes + - SAUCE: Revert "selftests/bpf: Fix btf_dump test cases on 32-bit arches" + - [Config] annotations: remove VGACON_SOFT_SCROLLBACK + - packaging: arm64: add a 64KB mem pages flavour called 'generic-64k' + - packaging: arm64: generic-64k: skip ABI, modules and retpoline checks + * Miscellaneous upstream changes + - tty: hvcs: Don't NULL tty->driver_data until hvcs_cleanup() + + -- Paolo Pisati Wed, 23 Sep 2020 10:42:28 +0200 + +linux-azure (5.8.0-1005.5) groovy; urgency=medium + + * groovy/linux-azure: 5.8.0-1005.5 -proposed tracker (LP: #1895114) + + * Only notify Hyper-V for die events that are oops (LP: #1891222) + - Drivers: hv: vmbus: Only notify Hyper-V for die events that are oops + + [ Ubuntu: 5.8.0-19.20 ] + + * groovy/linux: 5.8.0-19.20 -proposed tracker (LP: #1895120) + * Please switch default, hwe, oem kernel flavours governor to + CONFIG_CPU_FREQ_DEFAULT_GOV_ONDEMAND=y , such that advanced userspace + utilities such as game-mode can be later used to rev-up to to performance, + or rev-down to powersave. (LP: #1885730) + - [Config] Set the default CPU governor to ONDEMAND + * Packaging resync (LP: #1786013) + - update dkms package versions + - [Packaging] update variants + * [WD19TB] external DP failed with DRM error message (LP: #1886165) + - drm/i915/tgl+: Use the correct DP_TP_* register instances in MST encoders + - drm/i915/tgl+: Fix TBT DPLL fractional divider for 38.4MHz ref clock + * Groovy update: v5.8.8 upstream stable release (LP: #1895097) + - hwmon: (pmbus/isl68137) remove READ_TEMPERATURE_1 telemetry for RAA228228 + - HID: quirks: Always poll three more Lenovo PixArt mice + - drm/msm/dpu: Fix reservation failures in modeset + - drm/msm/dpu: Fix scale params in plane validation + - drm/msm/dpu: fix unitialized variable error + - tty: serial: qcom_geni_serial: Drop __init from qcom_geni_console_setup + - drm/msm: add shutdown support for display platform_driver + - hwmon: (applesmc) check status earlier. + - nvmet: Disable keep-alive timer when kato is cleared to 0h + - drm/msm: enable vblank during atomic commits + - habanalabs: unmap PCI bars upon iATU failure + - habanalabs: validate packet id during CB parse + - habanalabs: set clock gating according to mask + - habanalabs: proper handling of alloc size in coresight + - habanalabs: set max power according to card type + - habanalabs: validate FW file size + - habanalabs: check correct vmalloc return code + - drm/msm/a6xx: fix gmu start on newer firmware + - gfs2: add some much needed cleanup for log flushes that fail + - hv_utils: return error if host timesysnc update is stale + - hv_utils: drain the timesync packets on onchannelcallback + - ceph: don't allow setlease on cephfs + - i2c: iproc: Fix shifting 31 bits + - drm/omap: fix incorrect lock state + - irqchip/ingenic: Leave parent IRQ unmasked on suspend + - cpuidle: Fixup IRQ state + - nbd: restore default timeout when setting it to zero + - s390: don't trace preemption in percpu macros + - drm/amd/display: should check error using DC_OK + - drm/amd/display: Reject overlay plane configurations in multi-display + scenarios + - drivers: gpu: amd: Initialize amdgpu_dm_backlight_caps object to 0 in + amdgpu_dm_update_backlight_caps + - drm/amd/display: Revert HDCP disable sequence change + - drm/amd/display: Fix passive dongle mistaken as active dongle in EDID + emulation + - drm/amd/display: Keep current gain when ABM disable immediately + - drm/amd/display: Retry AUX write when fail occurs + - drm/amd/display: Fix memleak in amdgpu_dm_mode_config_init + - xen/xenbus: Fix granting of vmalloc'd memory + - fsldma: fix very broken 32-bit ppc ioread64 functionality + - dmaengine: of-dma: Fix of_dma_router_xlate's of_dma_xlate handling + - batman-adv: Avoid uninitialized chaddr when handling DHCP + - batman-adv: Fix own OGM check in aggregated OGMs + - batman-adv: bla: use netif_rx_ni when not in interrupt context + - dmaengine: at_hdmac: check return value of of_find_device_by_node() in + at_dma_xlate() + - dmaengine: at_hdmac: add missing put_device() call in at_dma_xlate() + - dmaengine: at_hdmac: add missing kfree() call in at_dma_xlate() + - rxrpc: Keep the ACK serial in a var in rxrpc_input_ack() + - rxrpc: Fix loss of RTT samples due to interposed ACK + - rxrpc: Make rxrpc_kernel_get_srtt() indicate validity + - MIPS: mm: BMIPS5000 has inclusive physical caches + - MIPS: BMIPS: Also call bmips_cpu_setup() for secondary cores + - mmc: sdhci-acpi: Fix HS400 tuning for AMDI0040 + - perf sched timehist: Fix use of CPU list with summary option + - perf top: Skip side-band event setup if HAVE_LIBBPF_SUPPORT is not set + - netfilter: nf_tables: add NFTA_SET_USERDATA if not null + - netfilter: nf_tables: incorrect enum nft_list_attributes definition + - netfilter: nf_tables: fix destination register zeroing + - net: hns: Fix memleak in hns_nic_dev_probe + - net: systemport: Fix memleak in bcm_sysport_probe + - ravb: Fixed to be able to unload modules + - net: arc_emac: Fix memleak in arc_mdio_probe + - bpf: Fix a buffer out-of-bound access when filling raw_tp link_info + - dmaengine: pl330: Fix burst length if burst size is smaller than bus width + - dmaengine: ti: k3-udma: Fix the TR initialization for prep_slave_sg + - gtp: add GTPA_LINK info to msg sent to userspace + - net: ethernet: ti: cpsw: fix clean up of vlan mc entries for host port + - net: ethernet: ti: cpsw_new: fix clean up of vlan mc entries for host port + - bnxt_en: Don't query FW when netif_running() is false. + - bnxt_en: Check for zero dir entries in NVRAM. + - bnxt_en: Fix ethtool -S statitics with XDP or TCs enabled. + - bnxt_en: Fix PCI AER error recovery flow + - bnxt_en: Fix possible crash in bnxt_fw_reset_task(). + - bnxt_en: fix HWRM error when querying VF temperature + - xfs: finish dfops on every insert range shift iteration + - xfs: fix boundary test in xfs_attr_shortform_verify + - bnxt: don't enable NAPI until rings are ready + - media: vicodec: add missing v4l2_ctrl_request_hdl_put() + - media: cedrus: Add missing v4l2_ctrl_request_hdl_put() + - net: ethernet: ti: cpsw_new: fix error handling in + cpsw_ndo_vlan_rx_kill_vid() + - media: i2c: imx214: select V4L2_FWNODE + - selftests/bpf: Fix massive output from test_maps + - net: dsa: mt7530: fix advertising unsupported 1000baseT_Half + - netfilter: nfnetlink: nfnetlink_unicast() reports EAGAIN instead of ENOBUFS + - nvmet-fc: Fix a missed _irqsave version of spin_lock in + 'nvmet_fc_fod_op_done()' + - nvme: fix controller instance leak + - netfilter: conntrack: do not auto-delete clash entries on reply + - opp: Don't drop reference for an OPP table that was never parsed + - cxgb4: fix thermal zone device registration + - net: ethernet: ti: am65-cpsw: fix rmii 100Mbit link mode + - MIPS: perf: Fix wrong check condition of Loongson event IDs + - block: fix locking in bdev_del_partition + - perf top/report: Fix infinite loop in the TUI for grouped events + - perf cs-etm: Fix corrupt data after perf inject from + - perf intel-pt: Fix corrupt data after perf inject from + - perf tools: Correct SNOOPX field offset + - net: ethernet: mlx4: Fix memory allocation in mlx4_buddy_init() + - fix regression in "epoll: Keep a reference on files added to the check list" + - net: bcmgenet: fix mask check in bcmgenet_validate_flow() + - net: gemini: Fix another missing clk_disable_unprepare() in probe + - nfp: flower: fix ABI mismatch between driver and firmware + - net: dp83867: Fix WoL SecureOn password + - MIPS: add missing MSACSR and upper MSA initialization + - MIPS: SNI: Fix SCSI interrupt + - xfs: fix xfs_bmap_validate_extent_raw when checking attr fork of rt files + - perf jevents: Fix suspicious code in fixregex() + - perf stat: Turn off summary for interval mode by default + - perf bench: The do_run_multi_threaded() function must use + IS_ERR(perf_session__new()) + - tg3: Fix soft lockup when tg3_reset_task() fails. + - x86, fakenuma: Fix invalid starting node ID + - iommu/vt-d: Serialize IOMMU GCMD register modifications + - thermal: ti-soc-thermal: Fix bogus thermal shutdowns for omap4430 + - thermal: qcom-spmi-temp-alarm: Don't suppress negative temp + - iommu/amd: Restore IRTE.RemapEn bit after programming IRTE + - iommu/amd: Use cmpxchg_double() when updating 128-bit IRTE + - include/linux/log2.h: add missing () around n in roundup_pow_of_two() + - iommu/vt-d: Handle 36bit addressing for x86-32 + - tracing/kprobes, x86/ptrace: Fix regs argument order for i386 + - x86/entry: Fix AC assertion + - x86/debug: Allow a single level of #DB recursion + - ext2: don't update mtime on COW faults + - xfs: don't update mtime on COW faults + - ARC: perf: don't bail setup if pct irq missing in device-tree + - arc: fix memory initialization for systems with two memory banks + - btrfs: drop path before adding new uuid tree entry + - btrfs: fix potential deadlock in the search ioctl + - btrfs: allocate scrub workqueues outside of locks + - btrfs: set the correct lockdep class for new nodes + - btrfs: set the lockdep class for log tree extent buffers + - btrfs: block-group: fix free-space bitmap threshold + - btrfs: tree-checker: fix the error message for transid error + - Bluetooth: Return NOTIFY_DONE for hci_suspend_notifier + - x86/mm/32: Bring back vmalloc faulting on x86_32 + - Revert "ALSA: hda: Add support for Loongson 7A1000 controller" + - ALSA: ca0106: fix error code handling + - ALSA: usb-audio: Add basic capture support for Pioneer DJ DJM-250MK2 + - ALSA: usb-audio: Add implicit feedback quirk for UR22C + - ALSA: pcm: oss: Remove superfluous WARN_ON() for mulaw sanity check + - ALSA: hda/hdmi: always check pin power status in i915 pin fixup + - ALSA: firewire-digi00x: exclude Avid Adrenaline from detection + - ALSA: hda - Fix silent audio output and corrupted input on MSI X570-A PRO + - ALSA; firewire-tascam: exclude Tascam FE-8 from detection + - ALSA: hda/realtek: Add quirk for Samsung Galaxy Book Ion NT950XCJ-X716A + - ALSA: hda/realtek - Improved routing for Thinkpad X1 7th/8th Gen + - arm64: dts: mt7622: add reset node for mmc device + - mmc: mediatek: add optional module reset property + - mmc: dt-bindings: Add resets/reset-names for Mediatek MMC bindings + - mmc: sdhci-pci: Fix SDHCI_RESET_ALL for CQHCI for Intel GLK-based + controllers + - media: rc: do not access device via sysfs after rc_unregister_device() + - media: rc: uevent sysfs file races with rc_unregister_device() + - affs: fix basic permission bits to actually work + - block: allow for_each_bvec to support zero len bvec + - block: ensure bdi->io_pages is always initialized + - io_uring: set table->files[i] to NULL when io_sqe_file_register failed + - io_uring: fix removing the wrong file in __io_sqe_files_update() + - s390: fix GENERIC_LOCKBREAK dependency typo in Kconfig + - libata: implement ATA_HORKAGE_MAX_TRIM_128M and apply to Sandisks + - mips/oprofile: Fix fallthrough placement + - blk-iocost: ioc_pd_free() shouldn't assume irq disabled + - blk-stat: make q->stats->lock irqsafe + - dmaengine: dw-edma: Fix scatter-gather address calculation + - drm/i915: Fix sha_text population code + - drm/amd/pm: avoid false alarm due to confusing softwareshutdowntemp setting + - drm/amdgpu: Specify get_argument function for ci_smu_funcs + - dm writecache: handle DAX to partitions on persistent memory correctly + - dm mpath: fix racey management of PG initialization + - dm integrity: fix error reporting in bitmap mode after creation + - dm crypt: Initialize crypto wait structures + - dm cache metadata: Avoid returning cmd->bm wild pointer on error + - dm thin metadata: Avoid returning cmd->bm wild pointer on error + - dm thin metadata: Fix use-after-free in dm_bm_set_read_only + - mm: slub: fix conversion of freelist_corrupted() + - mm: track page table modifications in __apply_to_page_range() + - mm: madvise: fix vma user-after-free + - mm/rmap: fixup copying of soft dirty and uffd ptes + - io_uring: no read/write-retry on -EAGAIN error and O_NONBLOCK marked file + - perf record: Correct the help info of option "--no-bpf-event" + - kconfig: streamline_config.pl: check defined(ENV variable) before using it + - sdhci: tegra: Add missing TMCLK for data timeout + - checkpatch: fix the usage of capture group ( ... ) + - mm/migrate: fixup setting UFFD_WP flag + - mm/hugetlb: try preferred node first when alloc gigantic page from cma + - mm/hugetlb: fix a race between hugetlb sysctl handlers + - mm/khugepaged.c: fix khugepaged's request size in collapse_file + - cfg80211: regulatory: reject invalid hints + - net: usb: Fix uninit-was-stored issue in asix_read_phy_addr() + - Linux 5.8.8 + * Groovy update: v5.8.7 upstream stable release (LP: #1894959) + - HID: core: Correctly handle ReportSize being zero + - HID: core: Sanitize event code and type when mapping input + - netfilter: nft_set_rbtree: Handle outcomes of tree rotations in overlap + detection + - mm: fix pin vs. gup mismatch with gate pages + - selftests/x86/test_vsyscall: Improve the process_vm_readv() test + - perf record/stat: Explicitly call out event modifiers in the documentation + - media: media/v4l2-core: Fix kernel-infoleak in video_put_user() + - KVM: arm64: Add kvm_extable for vaxorcism code + - KVM: arm64: Survive synchronous exceptions caused by AT instructions + - dt-bindings: mmc: tegra: Add tmclk for Tegra210 and later + - arm64: tegra: Add missing timeout clock to Tegra194 SDMMC nodes + - arm64: tegra: Add missing timeout clock to Tegra186 SDMMC nodes + - arm64: tegra: Add missing timeout clock to Tegra210 SDMMC + - sdhci: tegra: Remove SDHCI_QUIRK_DATA_TIMEOUT_USES_SDCLK for Tegra210 + - sdhci: tegra: Remove SDHCI_QUIRK_DATA_TIMEOUT_USES_SDCLK for Tegra186 + - nl80211: fix NL80211_ATTR_HE_6GHZ_CAPABILITY usage + - scsi: target: tcmu: Optimize use of flush_dcache_page + - Linux 5.8.7 + * Groovy update: v5.8.6 upstream stable release (LP: #1894956) + - Revert "UBUNTU: SAUCE: Revert "ARM64: vdso32: Install vdso32 from + vdso_install"" + - khugepaged: khugepaged_test_exit() check mmget_still_valid() + - ASoC: intel/skl/hda - fix probe regression on systems without i915 + - ALSA: pci: delete repeated words in comments + - drm/amdgpu: fix RAS memory leak in error case + - EDAC/mc: Call edac_inc_ue_error() before panic + - ASoC: img: Fix a reference count leak in img_i2s_in_set_fmt + - ASoC: img-parallel-out: Fix a reference count leak + - ASoC: tegra: Fix reference count leaks. + - mfd: intel-lpss: Add Intel Emmitsburg PCH PCI IDs + - arm64: dts: qcom: msm8916: Pull down PDM GPIOs during sleep + - powerpc/xive: Ignore kmemleak false positives + - media: pci: ttpci: av7110: fix possible buffer overflow caused by bad DMA + value in debiirq() + - gcc-plugins/stackleak: Don't instrument itself + - blktrace: ensure our debugfs dir exists + - staging: rts5208: fix memleaks on error handling paths in probe + - scsi: target: tcmu: Fix crash on ARM during cmd completion + - mfd: intel-lpss: Add Intel Tiger Lake PCH-H PCI IDs + - iommu/iova: Don't BUG on invalid PFNs + - platform/chrome: cros_ec_sensorhub: Fix EC timestamp overflow + - drm/amdkfd: Fix reference count leaks. + - drm/radeon: fix multiple reference count leak + - drm/amdgpu: fix ref count leak in amdgpu_driver_open_kms + - drm/amd/display: fix ref count leak in amdgpu_drm_ioctl + - drm/amdgpu: fix ref count leak in amdgpu_display_crtc_set_config + - drm/amdgpu/display: fix ref count leak when pm_runtime_get_sync fails + - drm/amdgpu/fence: fix ref count leak when pm_runtime_get_sync fails + - drm/amdkfd: fix ref count leak when pm_runtime_get_sync fails + - drm/amdgpu/pm: fix ref count leak when pm_runtime_get_sync fails + - scsi: lpfc: Fix shost refcount mismatch when deleting vport + - xfs: Don't allow logging of XFS_ISTALE inodes + - scsi: target: Fix xcopy sess release leak + - selftests/powerpc: Purge extra count_pmc() calls of ebb selftests + - f2fs: remove write attribute of main_blkaddr sysfs node + - f2fs: fix error path in do_recover_data() + - MIPS: KVM: Limit Trap-and-Emulate to MIPS32R2 only + - omapfb: fix multiple reference count leaks due to pm_runtime_get_sync + - PCI: Fix pci_create_slot() reference count leak + - ARM: dts: ls1021a: output PPS signal on FIPER2 + - rtlwifi: rtl8192cu: Prevent leaking urb + - mips/vdso: Fix resource leaks in genvdso.c + - ALSA: hda: Add support for Loongson 7A1000 controller + - gpu: host1x: Put gather's BO on pinning error + - cec-api: prevent leaking memory through hole in structure + - ASoC: Intel: sof_sdw_rt711: remove properties in card remove + - HID: quirks: add NOGET quirk for Logitech GROUP + - f2fs: fix use-after-free issue + - drm/nouveau/drm/noveau: fix reference count leak in nouveau_fbcon_open + - drm/nouveau: fix reference count leak in nv50_disp_atomic_commit + - drm/nouveau: Fix reference count leak in nouveau_connector_detect + - locking/lockdep: Fix overflow in presentation of average lock-time + - btrfs: file: reserve qgroup space after the hole punch range is locked + - btrfs: make btrfs_qgroup_check_reserved_leak take btrfs_inode + - scsi: iscsi: Do not put host in iscsi_set_flashnode_param() + - netfilter: nf_tables: report EEXIST on overlaps + - ceph: fix potential mdsc use-after-free crash + - ceph: do not access the kiocb after aio requests + - scsi: fcoe: Memory leak fix in fcoe_sysfs_fcf_del() + - i2c: i801: Add support for Intel Tiger Lake PCH-H + - EDAC/ie31200: Fallback if host bridge device is already initialized + - hugetlbfs: prevent filesystem stacking of hugetlbfs + - media: davinci: vpif_capture: fix potential double free + - media: i2c: imx290: fix reset GPIO pin handling + - drm/amd/display: change global buffer to local buffer + - drm/amd/display: fix compilation error on allmodconfig + - KVM: arm64: Fix symbol dependency in __hyp_call_panic_nvhe + - powerpc/spufs: add CONFIG_COREDUMP dependency + - dmaengine: idxd: fix PCI_MSI build errors + - USB: sisusbvga: Fix a potential UB casued by left shifting a negative value + - mmc: sdhci-of-arasan: fix timings allocation code + - brcmfmac: Set timeout value when configuring power save + - pinctrl: mediatek: avoid virtual gpio trying to set reg + - pinctrl: mediatek: fix build for tristate changes + - efi: provide empty efi_enter_virtual_mode implementation + - arm64: Fix __cpu_logical_map undefined issue + - net: openvswitch: introduce common code for flushing flows + - PCI: qcom: Add missing ipq806x clocks in PCIe driver + - PCI: qcom: Change duplicate PCI reset to phy reset + - PCI: qcom: Add missing reset for ipq806x + - PM / devfreq: Fix the wrong end with semicolon + - cpufreq: intel_pstate: Fix EPP setting via sysfs in active mode + - ALSA: usb-audio: Add capture support for Saffire 6 (USB 1.1) + - nfsd: fix oops on mixed NFSv4/NFSv3 client access + - block: respect queue limit of max discard segment + - block: virtio_blk: fix handling single range discard request + - drm/msm/adreno: fix updating ring fence + - block: Fix page_is_mergeable() for compound pages + - bfq: fix blkio cgroup leakage v4 + - hwmon: (nct7904) Correct divide by 0 + - blk-mq: insert request not through ->queue_rq into sw/scheduler queue + - blkcg: fix memleak for iolatency + - nvmet: fix a memory leak + - nvme-fc: Fix wrong return value in __nvme_fc_init_request() + - nvme: multipath: round-robin: fix single non-optimized path case + - null_blk: fix passing of REQ_FUA flag in null_handle_rq + - habanalabs: Fix memory corruption in debugfs + - drm/etnaviv: always start/stop scheduler in timeout processing + - i2c: core: Don't fail PRP0001 enumeration when no ID table exist + - i2c: rcar: in slave mode, clear NACK earlier + - vdpa: ifcvf: return err when fail to request config irq + - vdpa: ifcvf: free config irq in ifcvf_free_irq() + - usb: gadget: f_tcm: Fix some resource leaks in some error paths + - video: fbdev: controlfb: Fix build for COMPILE_TEST=y && PPC_PMAC=n + - spi: stm32: clear only asserted irq flags on interrupt + - jbd2: make sure jh have b_transaction set in refile/unfile_buffer + - ext4: don't BUG on inconsistent journal feature + - ext4: handle read only external journal device + - ext4: skip non-loaded groups at cr=0/1 when scanning for good groups + - drm/virtio: fix memory leak in virtio_gpu_cleanup_object() + - ext4: abort the filesystem if failed to async write metadata buffer + - jbd2: abort journal if free a async write error metadata buffer + - ext4: handle option set by mount flags correctly + - ext4: handle error of ext4_setup_system_zone() on remount + - ext4: correctly restore system zone info when remount fails + - fs: prevent BUG_ON in submit_bh_wbc() + - spi: stm32h7: fix race condition at end of transfer + - spi: stm32: fix fifo threshold level in case of short transfer + - spi: stm32: fix stm32_spi_prepare_mbr in case of odd clk_rate + - spi: stm32: always perform registers configuration prior to transfer + - drm/amd/powerplay: correct Vega20 cached smu feature state + - drm/amd/powerplay: correct UVD/VCE PG state on custom pptable uploading + - drm/amd/display: Fix LFC multiplier changing erratically + - drm/amd/display: Switch to immediate mode for updating infopackets + - selftests/bpf: Fix segmentation fault in test_progs + - netfilter: avoid ipv6 -> nf_defrag_ipv6 module dependency + - libbpf: Prevent overriding errno when logging errors + - tools/bpftool: Fix compilation warnings in 32-bit mode + - selftest/bpf: Fix compilation warnings in 32-bit mode + - selftests/bpf: Fix btf_dump test cases on 32-bit arches + - selftests/bpf: Correct various core_reloc 64-bit assumptions + - can: j1939: transport: j1939_xtp_rx_dat_one(): compare own packets to detect + corruptions + - dma-pool: fix coherent pool allocations for IOMMU mappings + - dma-pool: Only allocate from CMA when in same memory zone + - drivers/net/wan/hdlc_x25: Added needed_headroom and a skb->len check + - ALSA: hda/realtek: Add model alc298-samsung-headphone + - s390/cio: add cond_resched() in the slow_eval_known_fn() loop + - ASoC: wm8994: Avoid attempts to read unreadable registers + - ALSA: usb-audio: ignore broken processing/extension unit + - selftests: disable rp_filter for icmp_redirect.sh + - scsi: fcoe: Fix I/O path allocation + - scsi: ufs: Fix possible infinite loop in ufshcd_hold + - scsi: ufs: Improve interrupt handling for shared interrupts + - scsi: ufs: Clean up completed request without interrupt notification + - scsi: scsi_debug: Fix scp is NULL errors + - scsi: qla2xxx: Flush all sessions on zone disable + - scsi: qla2xxx: Flush I/O on zone disable + - scsi: qla2xxx: Indicate correct supported speeds for Mezz card + - scsi: qla2xxx: Fix login timeout + - scsi: qla2xxx: Check if FW supports MQ before enabling + - scsi: qla2xxx: Fix null pointer access during disconnect from subsystem + - Revert "scsi: qla2xxx: Fix crash on qla2x00_mailbox_command" + - macvlan: validate setting of multiple remote source MAC addresses + - net: gianfar: Add of_node_put() before goto statement + - drm/amdgpu: fix NULL pointer access issue when unloading driver + - drm/amdkfd: fix the wrong sdma instance query for renoir + - bpf: Fix a rcu_sched stall issue with bpf task/task_file iterator + - bpf: Avoid visit same object multiple times + - ext4: limit the length of per-inode prealloc list + - powerpc/perf: Fix soft lockups due to missed interrupt accounting + - libbpf: Fix map index used in error message + - bpf: selftests: global_funcs: Check err_str before strstr + - arm64: Move handling of erratum 1418040 into C code + - arm64: Allow booting of late CPUs affected by erratum 1418040 + - hwmon: (gsc-hwmon) Scale temperature to millidegrees + - block: fix get_max_io_size() + - block: loop: set discard granularity and alignment for block device backed + loop + - blk-mq: order adding requests to hctx->dispatch and checking SCHED_RESTART + - btrfs: reset compression level for lzo on remount + - btrfs: check the right error variable in btrfs_del_dir_entries_in_log + - btrfs: fix space cache memory leak after transaction abort + - btrfs: detect nocow for swap after snapshot delete + - fbcon: prevent user font height or width change from causing potential out- + of-bounds access + - USB: lvtest: return proper error code in probe + - vt: defer kfree() of vc_screenbuf in vc_do_resize() + - vt_ioctl: change VT_RESIZEX ioctl to check for error return from vc_resize() + - serial: samsung: Removes the IRQ not found warning + - serial: pl011: Fix oops on -EPROBE_DEFER + - serial: pl011: Don't leak amba_ports entry on driver register error + - serial: stm32: avoid kernel warning on absence of optional IRQ + - serial: 8250_exar: Fix number of ports for Commtech PCIe cards + - serial: 8250: change lock order in serial8250_do_startup() + - io_uring: clear req->result on IOPOLL re-issue + - writeback: Protect inode->i_io_list with inode->i_lock + - writeback: Avoid skipping inode writeback + - writeback: Fix sync livelock due to b_dirty_time processing + - XEN uses irqdesc::irq_data_common::handler_data to store a per interrupt XEN + data pointer which contains XEN specific information. + - usb: renesas-xhci: remove version check + - usb: host: xhci-tegra: otg usb2/usb3 port init + - usb: host: xhci-tegra: fix tegra_xusb_get_phy() + - usb: host: xhci: fix ep context print mismatch in debugfs + - xhci: Always restore EP_SOFT_CLEAR_TOGGLE even if ep reset failed + - io-wq: fix hang after cancelling pending hashed work + - KVM: arm64: Set HCR_EL2.PTW to prevent AT taking synchronous exception + - arm64: vdso32: make vdso32 install conditional + - PM: sleep: core: Fix the handling of pending runtime resume requests + - powerpc/32s: Disable VMAP stack which CONFIG_ADB_PMU + - powerpc/perf: Fix crashes with generic_compat_pmu & BHRB + - device property: Fix the secondary firmware node handling in + set_primary_fwnode() + - crypto: af_alg - Work around empty control messages without MSG_MORE + - usbip: Implement a match function to fix usbip + - genirq/matrix: Deal with the sillyness of for_each_cpu() on UP + - irqchip/stm32-exti: Avoid losing interrupts due to clearing pending bits by + mistake + - x86/irq: Unbreak interrupt affinity setting + - x86/hotplug: Silence APIC only after all interrupts are migrated + - drm/i915: Fix cmd parser desc matching with masks + - drm/etnaviv: fix external abort seen on GC600 rev 0x19 + - drm/dp_mst: Don't return error code when crtc is null + - drm/modeset-lock: Take the modeset BKL for legacy drivers + - drm/amdgpu: Fix buffer overflow in INFO ioctl + - drm/amd/display: use correct scale for actual_brightness + - drm/amdgpu/gfx10: refine mgcg setting + - drm/amd/powerplay: Fix hardmins not being sent to SMU for RV + - drm/amd/pm: correct Vega10 swctf limit setting + - drm/amd/pm: correct Vega12 swctf limit setting + - drm/amd/pm: correct Vega20 swctf limit setting + - drm/amd/pm: correct the thermal alert temperature limit settings + - USB: yurex: Fix bad gfp argument + - usb: uas: Add quirk for PNY Pro Elite + - USB: quirks: Ignore duplicate endpoint on Sound Devices MixPre-D + - USB: Ignore UAS for JMicron JMS567 ATA/ATAPI Bridge + - usb: host: ohci-exynos: Fix error handling in exynos_ohci_probe() + - USB: gadget: u_f: add overflow checks to VLA macros + - USB: gadget: f_ncm: add bounds checks to ncm_unwrap_ntb() + - USB: gadget: u_f: Unbreak offset calculation in VLAs + - usb: dwc3: gadget: Don't setup more than requested + - usb: dwc3: gadget: Fix handling ZLP + - usb: dwc3: gadget: Handle ZLP for sg requests + - USB: cdc-acm: rework notification_buffer resizing + - usb: storage: Add unusual_uas entry for Sony PSZ drives + - USB: Also match device drivers using the ->match vfunc + - USB: Fix device driver race + - usb: typec: ucsi: Fix AB BA lock inversion + - usb: typec: ucsi: Fix 2 unlocked ucsi_run_command calls + - usb: typec: ucsi: Rework ppm_lock handling + - usb: typec: ucsi: Hold con->lock for the entire duration of + ucsi_register_port() + - usb: typec: tcpm: Fix Fix source hard reset response for TDA 2.3.1.1 and TDA + 2.3.1.2 failures + - io_uring: don't recurse on tsk->sighand->siglock with signalfd + - io_uring: don't use poll handler if file can't be nonblocking read/written + - io_uring: make offset == -1 consistent with preadv2/pwritev2 + - drm/atomic-helper: reset vblank on crtc reset + - fbmem: pull fbcon_update_vcs() out of fb_set_var() + - mm/page_counter: fix various data races at memsw + - HID: hiddev: Fix slab-out-of-bounds write in hiddev_ioctl_usage() + - drm/vmwgfx/stdu: Use drm_mode_config_reset + - drm/vmwgfx/sou: Use drm_mode_config_reset + - drm/vmwgfx/ldu: Use drm_mode_config_reset + - dma-pool: Fix an uninitialized variable bug in atomic_pool_expand() + - ALSA: usb-audio: Update documentation comment for MS2109 quirk + - Linux 5.8.6 + - [Config] GCC version update + * DELL LATITUDE 5491 touchscreen doesn't work (LP: #1889446) // Groovy update: + v5.8.6 upstream stable release (LP: #1894956) + - USB: quirks: Add no-lpm quirk for another Raydium touchscreen + * [NUC8CCHK][HDA-Intel - HDA Intel PCH, playback] No sound at all + (LP: #1875199) // Groovy update: v5.8.6 upstream stable release + (LP: #1894956) + - ALSA: hda/realtek: Fix pin default on Intel NUC 8 Rugged + * CVE-2020-14386 + - net/packet: fix overflow in tpacket_rcv + * dkms-build: downloads fail in private PPAs (LP: #1883874) + - dkms-build: apt-cache policy elides username:password information + * Groovy update: v5.8.5 upstream stable release (LP: #1893237) + - gre6: Fix reception with IP6_TNL_F_RCV_DSCP_COPY + - net: Fix potential wrong skb->protocol in skb_vlan_untag() + - net: nexthop: don't allow empty NHA_GROUP + - net: qrtr: fix usage of idr in port assignment to socket + - net/sched: act_ct: Fix skb double-free in tcf_ct_handle_fragments() error + flow + - net: sctp: Fix negotiation of the number of data streams. + - net/smc: Prevent kernel-infoleak in __smc_diag_dump() + - tipc: call rcu_read_lock() in tipc_aead_encrypt_done() + - tipc: fix uninit skb->data in tipc_nl_compat_dumpit() + - net: ena: Make missed_tx stat incremental + - ethtool: Fix preserving of wanted feature bits in netlink interface + - ethtool: Account for hw_features in netlink interface + - ethtool: Don't omit the netlink reply if no features were changed + - netlink: fix state reallocation in policy export + - io_uring: fix missing ->mm on exit + - binfmt_flat: revert "binfmt_flat: don't offset the data start" + - Linux 5.8.5 + * Miscellaneous Ubuntu changes + - [Config] Re-enable UEFI signing for arm64 + - SAUCE: Revert "UBUNTU: SAUCE: export __get_vm_area_caller() and + map_kernel_range()" + + -- Paolo Pisati Fri, 11 Sep 2020 14:01:28 +0200 + +linux-azure (5.8.0-1004.4) groovy; urgency=medium + + * groovy/linux-azure: 5.8.0-1004.4 -proposed tracker (LP: #1893046) + + * Miscellaneous Ubuntu changes + - [packaging] add dwarves dependency + - [Config] Remove variables for wireguard dkms build + - [Config] Enable nvidia server dkms build + - [Config] updateconfigs following 5.8.0-18.19 rebase + - [Config] linux-azure: move wireguard to the main modules package + + [ Ubuntu: 5.8.0-18.19 ] + + * groovy/linux: 5.8.0-18.19 -proposed tracker (LP: #1893047) + * Packaging resync (LP: #1786013) + - update dkms package versions + * Groovy update: v5.8.4 upstream stable release (LP: #1893048) + - drm/vgem: Replace opencoded version of drm_gem_dumb_map_offset() + - drm/panel-simple: Fix inverted V/H SYNC for Frida FRD350H54004 panel + - drm/ast: Remove unused code paths for AST 1180 + - drm/ast: Initialize DRAM type before posting GPU + - khugepaged: adjust VM_BUG_ON_MM() in __khugepaged_enter() + - ALSA: hda: avoid reset of sdo_limit + - ALSA: hda/realtek: Add quirk for Samsung Galaxy Flex Book + - ALSA: hda/realtek: Add quirk for Samsung Galaxy Book Ion + - can: j1939: transport: j1939_session_tx_dat(): fix use-after-free read in + j1939_tp_txtimer() + - can: j1939: socket: j1939_sk_bind(): make sure ml_priv is allocated + - spi: Prevent adding devices below an unregistering controller + - io_uring: find and cancel head link async work on files exit + - mm/vunmap: add cond_resched() in vunmap_pmd_range + - romfs: fix uninitialized memory leak in romfs_dev_read() + - kernel/relay.c: fix memleak on destroy relay channel + - uprobes: __replace_page() avoid BUG in munlock_vma_page() + - squashfs: avoid bio_alloc() failure with 1Mbyte blocks + - mm: include CMA pages in lowmem_reserve at boot + - mm, page_alloc: fix core hung in free_pcppages_bulk() + - ASoC: amd: renoir: restore two more registers during resume + - RDMA/hfi1: Correct an interlock issue for TID RDMA WRITE request + - opp: Enable resources again if they were disabled earlier + - opp: Put opp table in dev_pm_opp_set_rate() for empty tables + - opp: Put opp table in dev_pm_opp_set_rate() if _set_opp_bw() fails + - ext4: do not block RWF_NOWAIT dio write on unallocated space + - ext4: fix checking of directory entry validity for inline directories + - jbd2: add the missing unlock_buffer() in the error path of + jbd2_write_superblock() + - scsi: zfcp: Fix use-after-free in request timeout handlers + - selftests: kvm: Use a shorter encoding to clear RAX + - s390/pci: fix zpci_bus_link_virtfn() + - s390/pci: re-introduce zpci_remove_device() + - s390/pci: fix PF/VF linking on hot plug + - s390/pci: ignore stale configuration request event + - mm/memory.c: skip spurious TLB flush for retried page fault + - drm: amdgpu: Use the correct size when allocating memory + - drm/amdgpu/display: use GFP_ATOMIC in dcn20_validate_bandwidth_internal + - drm/amd/display: Fix incorrect backlight register offset for DCN + - drm/amd/display: Fix EDID parsing after resume from suspend + - drm/amd/display: Blank stream before destroying HDCP session + - drm/amd/display: Fix DFPstate hang due to view port changed + - drm/amd/display: fix pow() crashing when given base 0 + - drm/i915/pmu: Prefer drm_WARN_ON over WARN_ON + - drm/i915: Provide the perf pmu.module + - scsi: ufs: Add DELAY_BEFORE_LPM quirk for Micron devices + - scsi: target: tcmu: Fix crash in tcmu_flush_dcache_range on ARM + - media: budget-core: Improve exception handling in budget_register() + - media: coda: jpeg: add NULL check after kmalloc + - f2fs: fix to check page dirty status before writeback + - rtc: goldfish: Enable interrupt in set_alarm() when necessary + - media: vpss: clean up resources in init + - f2fs: should avoid inode eviction in synchronous path + - Input: psmouse - add a newline when printing 'proto' by sysfs + - MIPS: Fix unable to reserve memory for Crash kernel + - m68knommu: fix overwriting of bits in ColdFire V3 cache control + - svcrdma: Fix another Receive buffer leak + - xfs: fix inode quota reservation checks + - drm/ttm: fix offset in VMAs with a pg_offs in ttm_bo_vm_access + - riscv: Fixup static_obj() fail + - jffs2: fix UAF problem + - ceph: fix use-after-free for fsc->mdsc + - swiotlb-xen: use vmalloc_to_page on vmalloc virt addresses + - cpufreq: intel_pstate: Fix cpuinfo_max_freq when MSR_TURBO_RATIO_LIMIT is 0 + - scsi: libfc: Free skb in fc_disc_gpn_id_resp() for valid cases + - virtio_ring: Avoid loop when vq is broken in virtqueue_poll + - media: camss: fix memory leaks on error handling paths in probe + - tools/testing/selftests/cgroup/cgroup_util.c: cg_read_strcmp: fix null + pointer dereference + - xfs: Fix UBSAN null-ptr-deref in xfs_sysfs_init + - alpha: fix annotation of io{read,write}{16,32}be() + - fat: fix fat_ra_init() for data clusters == 0 + - fs/signalfd.c: fix inconsistent return codes for signalfd4 + - ext4: fix potential negative array index in do_split() + - drm/virtio: fix missing dma_fence_put() in virtio_gpu_execbuffer_ioctl() + - ext4: don't allow overlapping system zones + - ext4: check journal inode extents more carefully + - netfilter: nf_tables: nft_exthdr: the presence return value should be + little-endian + - spi: stm32: fixes suspend/resume management + - ASoC: q6afe-dai: mark all widgets registers as SND_SOC_NOPM + - ASoC: q6routing: add dummy register read/write function + - tools/bpftool: Make skeleton code C++17-friendly by dropping typeof() + - bpf: sock_ops ctx access may stomp registers in corner case + - bpf: sock_ops sk access may stomp registers when dst_reg = src_reg + - libbpf: Fix BTF-defined map-in-map initialization on 32-bit host arches + - can: j1939: fix kernel-infoleak in j1939_sk_sock2sockaddr_can() + - can: j1939: transport: j1939_simple_recv(): ignore local J1939 messages send + not by J1939 stack + - can: j1939: transport: add j1939_session_skb_find_by_offset() function + - igc: Fix PTP initialization + - i40e: Set RX_ONLY mode for unicast promiscuous on VLAN + - i40e: Fix crash during removing i40e driver + - net: fec: correct the error path for regulator disable in probe + - bonding: show saner speed for broadcast mode + - can: j1939: fix support for multipacket broadcast message + - can: j1939: cancel rxtimer on multipacket broadcast session complete + - can: j1939: abort multipacket broadcast session when timeout occurs + - can: j1939: add rxtimer for multipacket broadcast session + - bonding: fix a potential double-unregister + - ipvlan: fix device features + - s390/runtime_instrumentation: fix storage key handling + - s390/ptrace: fix storage key handling + - ASoC: msm8916-wcd-analog: fix register Interrupt offset + - ASoC: intel: Fix memleak in sst_media_open + - watch_queue: Limit the number of watches a user can hold + - vfio-pci: Avoid recursive read-lock usage + - vfio/type1: Add proper error unwind for vfio_iommu_replay() + - arch/ia64: Restore arch-specific pgd_offset_k implementation + - kvm: x86: Toggling CR4.SMAP does not load PDPTEs in PAE mode + - kvm: x86: Toggling CR4.PKE does not load PDPTEs in PAE mode + - scsi: ufs: ti-j721e-ufs: Fix error return in ti_j721e_ufs_probe() + - scsi: ufs: Add quirk to fix mishandling utrlclr/utmrlclr + - scsi: ufs: Add quirk to disallow reset of interrupt aggregation + - scsi: ufs: Add quirk to enable host controller without hce + - scsi: ufs: Introduce UFSHCD_QUIRK_PRDT_BYTE_GRAN quirk + - scsi: ufs: Add quirk to fix abnormal ocs fatal error + - scsi: ufs-pci: Add quirk for broken auto-hibernate for Intel EHL + - scsi: ufs: Fix interrupt error message for shared interrupts + - Revert "scsi: qla2xxx: Disable T10-DIF feature with FC-NVMe during probe" + - kconfig: qconf: do not limit the pop-up menu to the first row + - kconfig: qconf: fix signal connection to invalid slots + - efi: avoid error message when booting under Xen + - Fix build error when CONFIG_ACPI is not set/enabled: + - RDMA/bnxt_re: Do not add user qps to flushlist + - Revert "RDMA/hns: Reserve one sge in order to avoid local length error" + - afs: Fix key ref leak in afs_put_operation() + - kconfig: qconf: remove qInfo() to get back Qt4 support + - afs: Fix NULL deref in afs_dynroot_depopulate() + - ARM64: vdso32: Install vdso32 from vdso_install + - powerpc/fixmap: Fix the size of the early debug area + - bpf: Use get_file_rcu() instead of get_file() for task_file iterator + - powerpc/pseries/hotplug-cpu: wait indefinitely for vCPU death + - bonding: fix active-backup failover for current ARP slave + - net: ena: Prevent reset after device destruction + - net: ena: Change WARN_ON expression in ena_del_napi_in_range() + - net: gemini: Fix missing free_netdev() in error path of + gemini_ethernet_port_probe() + - selftests/bpf: Remove test_align leftovers + - hv_netvsc: Fix the queue_mapping in netvsc_vf_xmit() + - net: dsa: b53: check for timeout + - epoll: Keep a reference on files added to the check list + - powerpc: Fix P10 PVR revision in /proc/cpuinfo for SMT4 cores + - powerpc/pseries: Do not initiate shutdown when system is running on UPS + - EDAC/{i7core,sb,pnd2,skx}: Fix error event severity + - efi/x86: Mark kernel rodata non-executable for mixed mode + - efi: add missed destroy_workqueue when efisubsys_init fails + - efi/libstub: Stop parsing arguments at "--" + - efi/libstub: Handle NULL cmdline + - efi/libstub: Handle unterminated cmdline + - do_epoll_ctl(): clean the failure exits up a bit + - KVM: Pass MMU notifier range flags to kvm_unmap_hva_range() + - KVM: arm64: Only reschedule if MMU_NOTIFIER_RANGE_BLOCKABLE is not set + - Revert "drm/amd/display: Improve DisplayPort monitor interop" + - Linux 5.8.4 + - [Config] Update configs following 5.8.4 stable update + * Miscellaneous Ubuntu changes + - SAUCE: Revert "ARM64: vdso32: Install vdso32 from vdso_install" + + -- Paolo Pisati Thu, 27 Aug 2020 19:23:03 +0200 + +linux-azure (5.8.0-1003.3) groovy; urgency=medium + + * groovy/linux-azure: 5.8.0-1003.3 -proposed tracker (LP: #1892954) + + * Packaging resync (LP: #1786013) + - [Packaging] update variants + - [Packaging] update update.conf + + [ Ubuntu: 5.8.0-17.18 ] + + * groovy/linux: 5.8.0-17.18 -proposed tracker (LP: #1892959) + * Packaging resync (LP: #1786013) + - [Packaging] update helper scripts + - update dkms package versions + * [Hyper-V] VSS and File Copy daemons intermittently fails to start + (LP: #1891224) + - [Packaging] Bind hv_vss_daemon startup to hv_vss device + - [Packaging] bind hv_fcopy_daemon startup to hv_fcopy device + * Fix non-working USB devices plugged during system sleep (LP: #1892678) + - xhci: Do warm-reset when both CAS and XDEV_RESUME are set + * ASPM not enabled on child devices behind VMD controller (LP: #1889384) + - SAUCE: PCI/ASPM: Enable ASPM for links under VMD domain + * Groovy update: v5.8.3 upstream stable release (LP: #1892774) + - [Config] update config for ARMADA_AP_CPU_CLK + - ALSA: hda/realtek - Fix unused variable warning + - smb3: warn on confusing error scenario with sec=krb5 + - SMB3: Fix mkdir when idsfromsid configured on mount + - genirq/affinity: Make affinity setting if activated opt-in + - genirq: Unlock irq descriptor after errors + - genirq/PM: Always unlock IRQ descriptor in rearm_wake_irq() + - PCI: hotplug: ACPI: Fix context refcounting in acpiphp_grab_context() + - PCI/ATS: Add pci_pri_supported() to check device or associated PF + - PCI: Add device even if driver attach failed + - PCI: qcom: Define some PARF params needed for ipq8064 SoC + - PCI: qcom: Add support for tx term offset for rev 2.1.0 + - btrfs: allow use of global block reserve for balance item deletion + - btrfs: free anon block device right after subvolume deletion + - btrfs: don't allocate anonymous block device for user invisible roots + - btrfs: preallocate anon block device at first phase of snapshot creation + - btrfs: ref-verify: fix memory leak in add_block_entry + - btrfs: only commit the delayed inode when doing a full fsync + - btrfs: stop incremening log_batch for the log root tree when syncing log + - btrfs: only commit delayed items at fsync if we are logging a directory + - btrfs: remove no longer needed use of log_writers for the log root tree + - btrfs: don't traverse into the seed devices in show_devname + - btrfs: pass checksum type via BTRFS_IOC_FS_INFO ioctl + - btrfs: open device without device_list_mutex + - btrfs: move the chunk_mutex in btrfs_read_chunk_tree + - btrfs: relocation: review the call sites which can be interrupted by signal + - btrfs: add missing check for nocow and compression inode flags + - btrfs: avoid possible signal interruption of btrfs_drop_snapshot() on + relocation tree + - btrfs: return EROFS for BTRFS_FS_STATE_ERROR cases + - btrfs: sysfs: use NOFS for device creation + - btrfs: don't WARN if we abort a transaction with EROFS + - btrfs: fix race between page release and a fast fsync + - btrfs: don't show full path of bind mounts in subvol= + - btrfs: fix messages after changing compression level by remount + - btrfs: only search for left_info if there is no right_info in + try_merge_free_space + - btrfs: inode: fix NULL pointer dereference if inode doesn't need compression + - btrfs: fix memory leaks after failure to lookup checksums during inode + logging + - btrfs: trim: fix underflow in trim length to prevent access beyond device + boundary + - btrfs: make sure SB_I_VERSION doesn't get unset by remount + - btrfs: fix return value mixup in btrfs_get_extent + - btrfs: check correct variable after allocation in btrfs_backref_iter_alloc + - arm64: dts: qcom: sc7180: Drop the unused non-MSA SID + - arm64: perf: Correct the event index in sysfs + - dt-bindings: iio: io-channel-mux: Fix compatible string in example code + - iio: dac: ad5592r: fix unbalanced mutex unlocks in ad5592r_read_raw() + - iio: imu: st_lsm6dsx: reset hw ts after resume + - xtensa: add missing exclusive access state management + - xtensa: fix xtensa_pmu_setup prototype + - cifs: Fix leak when handling lease break for cached root fid + - powerpc/ptdump: Fix build failure in hashpagetable.c + - powerpc: Allow 4224 bytes of stack expansion for the signal frame + - powerpc: Fix circular dependency between percpu.h and mmu.h + - pinctrl: ingenic: Enhance support for IRQ_TYPE_EDGE_BOTH + - pinctrl: ingenic: Properly detect GPIO direction when configured for IRQ + - media: venus: fix multiple encoder crash + - media: vsp1: dl: Fix NULL pointer dereference on unbind + - net: ethernet: stmmac: Disable hardware multicast filter + - net: stmmac: dwmac1000: provide multicast filter fallback + - irqchip/loongson-liointc: Fix misuse of gc->mask_cache + - irqchip/gic-v4.1: Ensure accessing the correct RD when writing INVALLR + - pidfd: Add missing sock updates for pidfd_getfd() + - net/compat: Add missing sock updates for SCM_RIGHTS + - selftests/seccomp: Set NNP for TSYNC ESRCH flag test + - md/raid5: Fix Force reconstruct-write io stuck in degraded raid5 + - bcache: allocate meta data pages as compound pages + - bcache: fix overflow in offset_to_stripe() + - bcache: avoid nr_stripes overflow in bcache_device_init() + - bcache: fix bio_{start,end}_io_acct with proper device + - bcache: use disk_{start,end}_io_acct() to count I/O for bcache device + - mac80211: fix misplaced while instead of if + - appletalk: Fix atalk_proc_init() return path + - driver core: Avoid binding drivers to dead devices + - MIPS: CPU#0 is not hotpluggable + - MIPS: qi_lb60: Fix routing to audio amplifier + - MIPS: SGI-IP27: always enable NUMA in Kconfig + - ext2: fix missing percpu_counter_inc + - khugepaged: collapse_pte_mapped_thp() flush the right range + - mm/hugetlb: fix calculation of adjust_range_if_pmd_sharing_possible + - khugepaged: collapse_pte_mapped_thp() protect the pmd lock + - khugepaged: retract_page_tables() remember to test exit + - hugetlbfs: remove call to huge_pte_alloc without i_mmap_rwsem + - mm/shuffle: don't move pages between zones and don't read garbage memmaps + - mm: fix kthread_use_mm() vs TLB invalidate + - ocfs2: change slot number type s16 to u16 + - mm/page_counter.c: fix protection usage propagation + - cma: don't quit at first error when activating reserved areas + - mm/memory_hotplug: fix unpaired mem_hotplug_begin/done + - ftrace: Setup correct FTRACE_FL_REGS flags for module + - kprobes: Fix NULL pointer dereference at kprobe_ftrace_handler + - tracing/hwlat: Honor the tracing_cpumask + - tracing: Use trace_sched_process_free() instead of exit() for pid tracing + - watchdog: f71808e_wdt: indicate WDIOF_CARDRESET support in + watchdog_info.options + - watchdog: f71808e_wdt: remove use of wrong watchdog_info option + - watchdog: f71808e_wdt: clear watchdog timeout occurred flag + - ceph: set sec_context xattr on symlink creation + - ceph: handle zero-length feature mask in session messages + - pseries: Fix 64 bit logical memory block panic + - dm ebs: Fix incorrect checking for REQ_OP_FLUSH + - dm: don't call report zones for more than the user requested + - module: Correctly truncate sysfs sections output + - bootconfig: Fix to find the initargs correctly + - perf probe: Fix wrong variable warning when the probe point is not found + - perf probe: Fix memory leakage when the probe point is not found + - perf intel-pt: Fix FUP packet state + - perf intel-pt: Fix duplicate branch after CBR + - gfs2: Fix refcount leak in gfs2_glock_poke + - gfs2: Never call gfs2_block_zero_range with an open transaction + - remoteproc: qcom: q6v5: Update running state before requesting stop + - remoteproc: qcom_q6v5_mss: Validate MBA firmware size before load + - remoteproc: qcom_q6v5_mss: Validate modem blob firmware size before load + - libnvdimm: Validate command family indices + - drm/imx: imx-ldb: Disable both channels for split mode in enc->disable() + - drm/ingenic: Fix incorrect assumption about plane->index + - crypto: algif_aead - Only wake up when ctx->more is zero + - mfd: arizona: Ensure 32k clock is put on driver unbind and error + - octeontx2-af: change (struct qmem)->entry_sz from u8 to u16 + - mtd: rawnand: fsl_upm: Remove unused mtd var + - mtd: rawnand: brcmnand: ECC error handling on EDU transfers + - platform/chrome: cros_ec_ishtp: Fix a double-unlock issue + - drm/amdgpu/debugfs: fix memory leak when pm_runtime_get_sync failed + - RDMA/ipoib: Return void from ipoib_ib_dev_stop() + - RDMA/ipoib: Fix ABBA deadlock with ipoib_reap_ah() + - rtc: cpcap: fix range + - media: staging: rkisp1: remove macro RKISP1_DIR_SINK_SRC + - media: staging: rkisp1: rename macros 'RKISP1_DIR_*' to 'RKISP1_ISP_SD_*' + - media: staging: rkisp1: rsz: set default format if the given format is not + RKISP1_ISP_SD_SRC + - media: rockchip: rga: Introduce color fmt macros and refactor CSC mode logic + - media: rockchip: rga: Only set output CSC mode for RGB input + - IB/uverbs: Set IOVA on IB MR in uverbs layer + - sched/uclamp: Protect uclamp fast path code with static key + - selftests/bpf: Test_progs indicate to shell on non-actions + - bpf: selftests: Restore netns after each test + - selftests/bpf: test_progs use another shell exit on non-actions + - selftests/bpf: test_progs avoid minus shell exit codes + - USB: serial: ftdi_sio: make process-packet buffer unsigned + - USB: serial: ftdi_sio: clean up receive processing + - crypto: af_alg - Fix regression on empty requests + - devres: keep both device name and resource name in pretty name + - RDMA/counter: Only bind user QPs in auto mode + - RDMA/counter: Allow manually bind QPs with different pids to same counter + - mmc: renesas_sdhi_internal_dmac: clean up the code for dma complete + - rtw88: pci: disable aspm for platform inter-op with module parameter + - rtc: pl031: fix set_alarm by adding back call to alarm_irq_enable + - crypto: caam - Remove broken arc4 support + - gpu: ipu-v3: image-convert: Combine rotate/no-rotate irq handlers + - gpu: ipu-v3: image-convert: Wait for all EOFs before completing a tile + - dm rq: don't call blk_mq_queue_stopped() in dm_stop_queue() + - ima: Fail rule parsing when appraise_flag=blacklist is unsupportable + - f2fs: compress: fix to avoid memory leak on cc->cpages + - clk: actions: Fix h_clk for Actions S500 SoC + - selftests/powerpc: ptrace-pkey: Rename variables to make it easier to follow + code + - selftests/powerpc: ptrace-pkey: Update the test to mark an invalid pkey + correctly + - selftests/powerpc: ptrace-pkey: Don't update expected UAMOR value + - iommu/omap: Check for failure of a call to omap_iommu_dump_ctx + - clk: qcom: gcc: fix sm8150 GPU and NPU clocks + - clk: qcom: clk-alpha-pll: remove unused/incorrect PLL_CAL_VAL + - iommu/vt-d: Handle non-page aligned address + - iommu/vt-d: Enforce PASID devTLB field mask + - iommu/vt-d: Warn on out-of-range invalidation address + - iommu/vt-d: Disable multiple GPASID-dev bind + - i2c: rcar: slave: only send STOP event when we have been addressed + - f2fs: compress: fix to update isize when overwriting compressed file + - clk: qcom: gcc-sdm660: Fix up gcc_mss_mnoc_bimc_axi_clk + - clk: clk-atlas6: fix return value check in atlas6_clk_init() + - nvme: fix deadlock in disconnect during scan_work and/or ana_work + - sched/uclamp: Fix a deadlock when enabling uclamp static key + - pwm: bcm-iproc: handle clk_get_rate() return + - perf tools: Fix term parsing for raw syntax + - tools build feature: Use CC and CXX from parent + - i2c: rcar: avoid race when unregistering slave + - nfs: ensure correct writeback errors are returned on close() + - ubi: fastmap: Don't produce the initial next anchor PEB when fastmap is + disabled + - ubi: fastmap: Free fastmap next anchor peb during detach + - ubifs: Fix wrong orphan node deletion in ubifs_jnl_update|rename + - [Config] update config for CLK_HSDK + - clk: hsdk: Fix bad dependency on IOMEM + - clk: bcm2835: Do not use prediv with bcm2711's PLLs + - libnvdimm/security: fix a typo + - libnvdimm/security: ensure sysfs poll thread woke up and fetch updated attr + - openrisc: Fix oops caused when dumping stack + - perf evsel: Don't set sample_regs_intr/sample_regs_user for dummy event + - scsi: lpfc: nvmet: Avoid hang / use-after-free again when destroying + targetport + - nfs: nfs_file_write() should check for writeback errors + - watchdog: initialize device before misc_register + - watchdog: rti-wdt: balance pm runtime enable calls + - md-cluster: Fix potential error pointer dereference in resize_bitmaps() + - kprobes: Fix compiler warning for !CONFIG_KPROBES_ON_FTRACE + - x86/tsr: Fix tsc frequency enumeration bug on Lightning Mountain SoC + - x86/bugs/multihit: Fix mitigation reporting when VMX is not in use + - selftests/bpf: Prevent runqslower from racing on building bpftool + - Input: sentelic - fix error return when fsp_reg_write fails + - perf record: Skip side-band event setup if HAVE_LIBBPF_SUPPORT is not set + - selftests/bpf: Fix silent Makefile output + - vdpa_sim: init iommu lock + - recordmcount: Fix build failure on non arm64 + - vdpa: Fix pointer math bug in vdpasim_get_config() + - drm/vmwgfx: Use correct vmw_legacy_display_unit pointer + - drm/vmwgfx: Fix two list_for_each loop exit tests + - s390/test_unwind: fix possible memleak in test_unwind() + - s390/Kconfig: add missing ZCRYPT dependency to VFIO_AP + - net: qcom/emac: add missed clk_disable_unprepare in error path of + emac_clks_phase1_init + - nfs: Fix getxattr kernel panic and memory overflow + - NFS: Fix flexfiles read failover + - lib/test_lockup.c: fix return value of test_lockup_init() + - fs/minix: set s_maxbytes correctly + - fs/minix: fix block limit check for V1 filesystems + - fs/minix: remove expected error message in block_to_path() + - fs/ufs: avoid potential u32 multiplication overflow + - test_kmod: avoid potential double free in trigger_config_run_type() + - i2c: iproc: fix race between client unreg and isr + - mfd: dln2: Run event handler loop under spinlock + - crypto: algif_aead - fix uninitialized ctx->init + - ALSA: echoaudio: Fix potential Oops in snd_echo_resume() + - perf bench mem: Always memset source before memcpy + - tools build feature: Quote CC and CXX for their arguments + - perf/x86/rapl: Fix missing psys sysfs attributes + - sh: landisk: Add missing initialization of sh_io_port_base + - sh: fault: Fix duplicate printing of "PC:" + - drm/i915/gt: Force the GT reset on shutdown + - drm/panfrost: Use kvfree() to free bo->sgts + - drm/dp_mst: Fix the DDC I2C device registration of an MST port + - drm/dp_mst: Fix timeout handling of MST down messages + - drm/dp_mst: Fix the DDC I2C device unregistration of an MST port + - drm/omap: force runtime PM suspend on system suspend + - drm/tidss: fix modeset init for DPI panels + - drm: Added orientation quirk for ASUS tablet model T103HAF + - drm: fix drm_dp_mst_port refcount leaks in drm_dp_mst_allocate_vcpi + - drm/amdgpu: Fix bug where DPM is not enabled after hibernate and resume + - drm/amd/display: Fix dmesg warning from setting abm level + - drm/amd/display: dchubbub p-state warning during surface planes switch + - Linux 5.8.3 + * update ENA driver for LLQ acceleration mode, new hw support (LP: #1890845) + - ena_netdev: use generic power management + - net: ena: Fix using plain integer as NULL pointer in ena_init_napi_in_range + - net: ena: avoid unnecessary rearming of interrupt vector when busy-polling + - net: ena: add reserved PCI device ID + - net: ena: cosmetic: satisfy gcc warning + - net: ena: cosmetic: change ena_com_stats_admin stats to u64 + - net: ena: add support for traffic mirroring + - net: ena: enable support of rss hash key and function changes + - net: ena: move llq configuration from ena_probe to ena_device_init() + - net: ena: support new LLQ acceleration mode + * DMA config issues on Synquacer ARM64 platform cause SATA configuration + failures on boot (LP: #1892138) + - of/address: check for invalid range.cpu_addr + * [SRU] Fix acpi backlight issue on some thinkpads (LP: #1892010) + - platform/x86: thinkpad_acpi: not loading brightness_init when _BCL invalid + * Fix non-working Goodix touchpad after system sleep (LP: #1891998) + - HID: i2c-hid: Always sleep 60ms after I2C_HID_PWR_ON commands + * Groovy update: v5.8.2 upstream stable release (LP: #1892215) + - tracepoint: Mark __tracepoint_string's __used + - kunit: capture stderr on all make subprocess calls + - io_uring: abstract out task work running + - HID: input: Fix devices that return multiple bytes in battery report + - ARM: dts: stm32: fix uart nodes ordering in stm32mp15-pinctrl + - ARM: dts: stm32: fix uart7_pins_a comments in stm32mp15-pinctrl + - x86/mce/inject: Fix a wrong assignment of i_mce.status + - perf/x86/intel/uncore: Fix oops when counting IMC uncore events on some TGL + - x86, sched: check for counters overflow in frequency invariant accounting + - x86, sched: Bail out of frequency invariance if turbo frequency is unknown + - x86, sched: Bail out of frequency invariance if turbo_freq/base_freq gives 0 + - sched/fair: Fix NOHZ next idle balance + - sched: correct SD_flags returned by tl->sd_flags() + - arm64: dts: rockchip: fix rk3368-lion gmac reset gpio + - arm64: dts: rockchip: fix rk3399-puma vcc5v0-host gpio + - arm64: dts: rockchip: fix rk3399-puma gmac reset gpio + - EDAC: Fix reference count leaks + - crc-t10dif: Fix potential crypto notify dead-lock + - arm64: dts: qcom: msm8916: Replace invalid bias-pull-none property + - memory: tegra: Fix an error handling path in tegra186_emc_probe() + - soc: qcom: rpmh-rsc: Don't use ktime for timeout in write_tcs_reg_sync() + - crypto: ccree - fix resource leak on error path + - ARM: exynos: MCPM: Restore big.LITTLE cpuidle support + - rcu/tree: Repeat the monitor if any free channel is busy + - firmware: arm_scmi: Fix SCMI genpd domain probing + - arm64: dts: sun50i-pinephone: dldo4 must not be >= 1.8V + - arm64: dts: exynos: Fix silent hang after boot on Espresso + - sched/uclamp: Fix initialization of struct uclamp_rq + - crypto: qat - allow xts requests not multiple of block + - clk: scmi: Fix min and max rate when registering clocks with discrete rates + - m68k: mac: Don't send IOP message until channel is idle + - m68k: mac: Fix IOP status/control register writes + - platform/x86: intel-hid: Fix return value check in check_acpi_dev() + - platform/x86: intel-vbtn: Fix return value check in check_acpi_dev() + - ARM: dts: gose: Fix ports node name for adv7180 + - arm64: dts: renesas: Fix SD Card/eMMC interface device node names + - ARM: dts: gose: Fix ports node name for adv7612 + - ARM: at91: pm: add missing put_device() call in at91_pm_sram_init() + - ARM: dts: exynos: Disable frequency scaling for FSYS bus on Odroid XU3 + family + - reset: intel: fix a compile warning about REG_OFFSET redefined + - ARM: dts: at91: sama5d3_xplained: change phy-mode + - ARM: dts: sunxi: bananapi-m2-plus-v1.2: Add regulator supply to all CPU + cores + - ARM: dts: sunxi: bananapi-m2-plus-v1.2: Fix CPU supply voltages + - ARM: dts: stm32: Fix spi4 pins in stm32mp15-pinctrl + - spi: dw-dma: Fix Tx DMA channel working too fast + - spi: lantiq: fix: Rx overflow error in full duplex mode + - crypto: x86/crc32c - fix building with clang ias + - tpm: Require that all digests are present in TCG_PCR_EVENT2 structures + - recordmcount: only record relocation of type R_AARCH64_CALL26 on arm64. + - regulator: fix memory leak on error path of regulator_register() + - io_uring: fix sq array offset calculation + - arm64: dts: meson: misc fixups for w400 dtsi + - arm64: dts: meson: fix mmc0 tuning error on Khadas VIM3 + - soc: qcom: pdr: Reorder the PD state indication ack + - spi: rockchip: Fix error in SPI slave pio read + - ARM: socfpga: PM: add missing put_device() call in + socfpga_setup_ocram_self_refresh() + - iocost: Fix check condition of iocg abs_vdebt + - scripts/selinux/mdp: fix initial SID handling + - irqchip/ti-sci-inta: Fix return value about devm_ioremap_resource() + - seccomp: Fix ioctl number for SECCOMP_IOCTL_NOTIF_ID_VALID + - md: raid0/linear: fix dereference before null check on pointer mddev + - irqchip/loongson-htvec: Fix potential resource leak + - irqchip/loongson-htvec: Check return value of irq_domain_translate_onecell() + - irqchip/loongson-pch-pic: Check return value of + irq_domain_translate_twocell() + - irqchip/loongson-liointc: Fix potential dead lock + - kunit: tool: fix broken default args in unit tests + - kunit: tool: fix improper treatment of file location + - irqchip/irq-bcm7038-l1: Guard uses of cpu_logical_map + - irqchip/gic-v4.1: Use GFP_ATOMIC flag in allocate_vpe_l1_table() + - nvme-tcp: fix controller reset hang during traffic + - nvme-rdma: fix controller reset hang during traffic + - nvme-multipath: fix logic for non-optimized paths + - nvme-multipath: do not fall back to __nvme_find_path() for non-optimized + paths + - irqchip/loongson-pch-pic: Fix the misused irq flow handler + - block: don't do revalidate zones on invalid devices + - drm/tilcdc: fix leak & null ref in panel_connector_get_modes + - soc: qcom: rpmh-rsc: Set suppress_bind_attrs flag + - net: mscc: ocelot: fix encoding destination ports into multicast IPv4 + address + - ARM: exynos: clear L310_AUX_CTRL_FULL_LINE_ZERO in default l2c_aux_val + - Bluetooth: add a mutex lock to avoid UAF in do_enale_set + - loop: be paranoid on exit and prevent new additions / removals + - io_uring: fix req->work corruption + - fs/btrfs: Add cond_resched() for try_release_extent_mapping() stalls + - drm/amdgpu: avoid dereferencing a NULL pointer + - drm/radeon: Fix reference count leaks caused by pm_runtime_get_sync + - crypto: aesni - Fix build with LLVM_IAS=1 + - video: fbdev: savage: fix memory leak on error handling path in probe + - video: fbdev: neofb: fix memory leak in neo_scan_monitor() + - bus: ti-sysc: Add missing quirk flags for usb_host_hs + - md-cluster: fix wild pointer of unlock_all_bitmaps() + - rtw88: 8822ce: add support for device ID 0xc82f + - drm/nouveau/kms/nv50-: Fix disabling dithering + - arm64: dts: hisilicon: hikey: fixes to comply with adi, adv7533 DT binding + - drm/etnaviv: fix ref count leak via pm_runtime_get_sync + - ionic: rearrange reset and bus-master control + - memory: samsung: exynos5422-dmc: Do not ignore return code of regmap_read() + - drm/nouveau: fix reference count leak in nouveau_debugfs_strap_peek + - drm/nouveau: fix multiple instances of reference count leaks + - mmc: sdhci-cadence: do not use hardware tuning for SD mode + - btrfs: fix lockdep splat from btrfs_dump_space_info + - usb: mtu3: clear dual mode of u3port when disable device + - drm: msm: a6xx: fix gpu failure after system resume + - drm/msm: Fix a null pointer access in msm_gem_shrinker_count() + - drm/debugfs: fix plain echo to connector "force" attribute + - drm/radeon: disable AGP by default + - net: phy: mscc: restore the base page in vsc8514/8584_config_init + - irqchip/irq-mtk-sysirq: Replace spinlock with raw_spinlock + - mm/mmap.c: Add cond_resched() for exit_mmap() CPU stalls + - drm/amd/display: Improve DisplayPort monitor interop + - drm/amdgpu/debugfs: fix ref count leak when pm_runtime_get_sync fails + - drm/amdgpu/display bail early in dm_pp_get_static_clocks + - drm/amdgpu/display: properly guard the calls to swSMU functions + - drm/amd/display: allow query ddc data over aux to be read only operation + - drm/amd/powerplay: fix compile error with ARCH=arc + - bpf: Fix fds_example SIGSEGV error + - Bluetooth: hci_qca: Bug fixes for SSR + - brcmfmac: keep SDIO watchdog running when console_interval is non-zero + - brcmfmac: To fix Bss Info flag definition Bug + - brcmfmac: set state of hanger slot to FREE when flushing PSQ + - platform/x86: asus-nb-wmi: add support for ASUS ROG Zephyrus G14 and G15 + - iwlegacy: Check the return value of pcie_capability_read_*() + - gpu: host1x: debug: Fix multiple channels emitting messages simultaneously + - drm/amd/powerplay: suppress compile error around BUG_ON + - ionic: update eid test for overflow + - x86/uaccess: Make __get_user_size() Clang compliant on 32-bit + - mmc: sdhci-pci-o2micro: Bug fix for O2 host controller Seabird1 + - usb: gadget: net2280: fix memory leak on probe error handling paths + - bdc: Fix bug causing crash after multiple disconnects + - usb: bdc: Halt controller on suspend + - dyndbg: fix a BUG_ON in ddebug_describe_flags + - bcache: fix super block seq numbers comparision in register_cache_set() + - btrfs: allow btrfs_truncate_block() to fallback to nocow for data space + reservation + - btrfs: qgroup: free per-trans reserved space when a subvolume gets dropped + - ACPICA: Do not increment operation_region reference counts for field units + - io_uring: fix racy overflow count reporting + - io_uring: fix stalled deferred requests + - crypto: caam - silence .setkey in case of bad key length + - drm/msm: ratelimit crtc event overflow error + - drm/gem: Fix a leak in drm_gem_objects_lookup() + - drm/bridge: ti-sn65dsi86: Clear old error bits before AUX transfers + - drm/bridge: ti-sn65dsi86: Fix off-by-one error in clock choice + - drm/amdgpu: use the unlocked drm_gem_object_put + - agp/intel: Fix a memory leak on module initialisation failure + - mwifiex: Fix firmware filename for sd8977 chipset + - mwifiex: Fix firmware filename for sd8997 chipset + - btmrvl: Fix firmware filename for sd8977 chipset + - btmrvl: Fix firmware filename for sd8997 chipset + - video: fbdev: sm712fb: fix an issue about iounmap for a wrong address + - console: newport_con: fix an issue about leak related system resources + - video: pxafb: Fix the function used to balance a 'dma_alloc_coherent()' call + - Bluetooth: hci_qca: Fix an error pointer dereference + - drm/mm: fix hole size comparison + - Bluetooth: hci_qca: Only remove TX clock vote after TX is completed + - Bluetooth: Allow suspend even when preparation has failed + - ath10k: Acquire tx_lock in tx error paths + - Bluetooth: hci_qca: Bug fix during SSR timeout + - Bluetooth: hci_qca: Increase SoC idle timeout to 200ms + - iio: improve IIO_CONCENTRATION channel type description + - iio: amplifiers: ad8366: Change devm_gpiod_get() to optional and add the + missed check + - scsi: ufs: Fix imprecise load calculation in devfreq window + - drm/etnaviv: Fix error path on failure to enable bus clk + - drm/panfrost: Fix inbalance of devfreq record_busy/idle() + - drm/arm: fix unintentional integer overflow on left shift + - clk: bcm63xx-gate: fix last clock availability + - powerpc/mm: Fix typo in IS_ENABLED() + - powerpc/fixmap: Fix FIX_EARLY_DEBUG_BASE when page size is 256k + - leds: lm355x: avoid enum conversion warning + - ASoC: fsl_easrc: Fix uninitialized scalar variable in + fsl_easrc_set_ctx_format + - Bluetooth: btusb: fix up firmware download sequence + - Bluetooth: btmtksdio: fix up firmware download sequence + - media: cxusb-analog: fix V4L2 dependency + - media: marvell-ccic: Add missed v4l2_async_notifier_cleanup() + - media: omap3isp: Add missed v4l2_ctrl_handler_free() for + preview_init_entities() + - staging: most: avoid null pointer dereference when iface is null + - dpaa2-eth: fix condition for number of buffer acquire retries + - ASoC: SOF: nocodec: add missing .owner field + - ASoC: Intel: cml_rt1011_rt5682: add missing .owner field + - ASoC: Intel: sof_sdw: add missing .owner field + - ASoC: Intel: bxt_rt298: add missing .owner field + - ASoC: Intel: Boards: cml_rt1011_rt5682: use statically define codec config + - net: atlantic: MACSec offload statistics checkpatch fix + - scsi: cumana_2: Fix different dev_id between request_irq() and free_irq() + - scsi: ufs: Disable WriteBooster capability for non-supported UFS devices + - drm/mipi: use dcs write for mipi_dsi_dcs_set_tear_scanline + - cxl: Fix kobject memleak + - lkdtm: Avoid more compiler optimizations for bad writes + - selftests/lkdtm: Reset WARN_ONCE to avoid false negatives + - lkdtm: Make arch-specific tests always available + - net: ethernet: ti: am65-cpsw-nuss: restore vlan configuration while down/up + - tracing: Move pipe reference to trace array instead of current_tracer + - scsi: qla2xxx: Make __qla2x00_alloc_iocbs() initialize 32 bits of + request_t.handle + - drm/amdgpu/debugfs: fix memory leak when amdgpu_virt_enable_access_debugfs + failed + - drm/amdgpu: ensure 0 is returned for success in jpeg_v2_5_wait_for_idle + - drm/radeon: fix array out-of-bounds read and write issues + - staging: vchiq_arm: Add a matching unregister call + - iavf: fix error return code in iavf_init_get_resources() + - iavf: Fix updating statistics + - dma-buf: fix dma-fence-chain out of order test + - RDMA/core: Fix bogus WARN_ON during ib_unregister_device_queued() + - scsi: powertec: Fix different dev_id between request_irq() and free_irq() + - scsi: eesox: Fix different dev_id between request_irq() and free_irq() + - ipvs: allow connection reuse for unconfirmed conntrack + - media: firewire: Using uninitialized values in node_probe() + - media: allegro: Fix some NULL vs IS_ERR() checks in probe + - media: staging: rkisp1: rsz: supported formats are the isp's src formats, + not sink formats + - media: staging: rkisp1: rsz: fix resolution limitation on sink pad + - media: tvp5150: Add missed media_entity_cleanup() + - media: exynos4-is: Add missed check for pinctrl_lookup_state() + - media: cros-ec-cec: do not bail on device_init_wakeup failure + - xfs: preserve rmapbt swapext block reservation from freed blocks + - xfs: don't eat an EIO/ENOSPC writeback error when scrubbing data fork + - xfs: fix reflink quota reservation accounting error + - RDMA/rxe: Skip dgid check in loopback mode + - PCI: Fix pci_cfg_wait queue locking problem + - samples: bpf: Fix bpf programs with kprobe/sys_connect event + - drm/stm: repair runtime power management + - kobject: Avoid premature parent object freeing in kobject_cleanup() + - leds: core: Flush scheduled work for system suspend + - drm: panel: simple: Fix bpc for LG LB070WV8 panel + - phy: cadence: salvo: fix wrong bit definition + - dt-bindings: phy: uniphier: Fix incorrect clocks and clock-names for PXs3 + usb3-hsphy + - phy: exynos5-usbdrd: Calibrating makes sense only for USB2.0 PHY + - mmc: sdhci-of-arasan: Add missed checks for devm_clk_register() + - drm/bridge: sil_sii8620: initialize return of sii8620_readb + - scsi: scsi_debug: Add check for sdebug_max_queue during module init + - bpfilter: Initialize pos variable + - mwifiex: Prevent memory corruption handling keys + - kernfs: do not call fsnotify() with name without a parent + - powerpc/pseries: remove cede offline state for CPUs + - powerpc/rtas: don't online CPUs for partition suspend + - powerpc/vdso: Fix vdso cpu truncation + - Bluetooth: Fix update of connection state in `hci_encrypt_cfm` + - RDMA/qedr: SRQ's bug fixes + - RDMA/qedr: Add EDPM mode type for user-fw compatibility + - RDMA/qedr: Add EDPM max size to alloc ucontext response + - RDMA/rxe: Prevent access to wr->next ptr afrer wr is posted to send queue + - ima: Have the LSM free its audit rule + - ima: Free the entire rule when deleting a list of rules + - ima: Free the entire rule if it fails to parse + - ima: Fail rule parsing when buffer hook functions have an invalid action + - ima: Fail rule parsing when the KEXEC_CMDLINE hook is combined with an + invalid cond + - ima: Fail rule parsing when the KEY_CHECK hook is combined with an invalid + cond + - staging: rtl8192u: fix a dubious looking mask before a shift + - ASoC: meson: fixes the missed kfree() for axg_card_add_tdm_loopback + - PCI/ASPM: Add missing newline in sysfs 'policy' + - go7007: add sanity checking for endpoints + - media: s5p-g2d: Fix a memory leak in an error handling path in 'g2d_probe()' + - phy: renesas: rcar-gen3-usb2: move irq registration to init + - powerpc/mm/radix: Free PUD table when freeing pagetable + - powerpc/book3s64/pkeys: Use PVR check instead of cpu feature + - drm/imx: fix use after free + - drm/imx: tve: fix regulator_disable error path + - gpu: ipu-v3: Restore RGB32, BGR32 + - spi: lantiq-ssc: Fix warning by using WQ_MEM_RECLAIM + - PCI: loongson: Use DECLARE_PCI_FIXUP_EARLY for bridge_class_quirk() + - USB: serial: iuu_phoenix: fix led-activity helpers + - clk: qcom: gcc: Make disp gpll0 branch aon for sc7180/sdm845 + - usb: core: fix quirks_param_set() writing to a const pointer + - thermal: ti-soc-thermal: Fix reversed condition in + ti_thermal_expose_sensor() + - coresight: etmv4: Fix resource selector constant + - coresight: etmv4: Counter values not saved on disable + - coresight: tmc: Fix TMC mode read in tmc_read_unprepare_etb() + - coresight: etm4x: Fix save/restore during cpu idle + - powerpc/perf: Fix missing is_sier_aviable() during build + - mt76: mt7663u: fix memory leak in set key + - mt76: mt7663u: fix potential memory leak in mcu message handler + - mt76: mt7615: fix potential memory leak in mcu message handler + - mt76: mt7915: potential array overflow in mt7915_mcu_tx_rate_report() + - mt76: mt7915: add missing CONFIG_MAC80211_DEBUGFS + - mt76: mt7615: fix possible memory leak in mt7615_mcu_wtbl_sta_add + - phy: armada-38x: fix NETA lockup when repeatedly switching speeds + - s390/bpf: Use brcl for jumping to exit_ip if necessary + - s390/bpf: Tolerate not converging code shrinking + - tools/bpftool: Fix error handing in do_skeleton() + - ASoC: tas2770: Fix reset gpio property name + - qed: Fix ILT and XRCD bitmap memory leaks + - ASoC: hdac_hda: fix deadlock after PCM open error + - powerpc/spufs: Fix the type of ret in spufs_arch_write_note + - PCI: rcar: Fix runtime PM imbalance on error + - MIPS: OCTEON: add missing put_device() call in dwc3_octeon_device_init() + - thermal: int340x: processor_thermal: fix: update Jasper Lake PCI id + - usb: dwc3: meson-g12a: fix shared reset control use + - usb: dwc2: Fix error path in gadget registration + - usb: gadget: f_uac2: fix AC Interface Header Descriptor wTotalLength + - scsi: megaraid_sas: Clear affinity hint + - scsi: mesh: Fix panic after host or bus reset + - scsi: core: Add missing scsi_device_put() in scsi_host_block() + - net: dsa: mv88e6xxx: MV88E6097 does not support jumbo configuration + - bpf: Fix pos computation for bpf_iter seq_ops->start() + - powerpc/watchpoint: Fix 512 byte boundary limit + - powerpc/watchpoint: Fix DAWR exception constraint + - powerpc/watchpoint: Fix DAWR exception for CACHEOP + - macintosh/via-macii: Access autopoll_devs when inside lock + - gpio: regmap: fix type clash + - PCI: cadence: Fix cdns_pcie_{host|ep}_setup() error path + - PCI: cadence: Fix updating Vendor ID and Subsystem Vendor ID register + - RDMA/core: Fix return error value in _ib_modify_qp() to negative + - Smack: fix another vsscanf out of bounds + - Smack: prevent underflow in smk_set_cipso() + - power: supply: check if calc_soc succeeded in pm860x_init_battery + - Bluetooth: btusb: Fix and detect most of the Chinese Bluetooth controllers + - Bluetooth: hci_h5: Set HCI_UART_RESET_ON_INIT to correct flags + - Bluetooth: hci_serdev: Only unregister device if it was registered + - bpf: Fix bpf_ringbuf_output() signature to return long + - Bluetooth: Fix suspend notifier race + - Bluetooth: hci_qca: Stop collecting memdump again for command timeout during + SSR + - net: dsa: rtl8366: Fix VLAN semantics + - net: dsa: rtl8366: Fix VLAN set-up + - xfs: fix inode allocation block res calculation precedence + - xfs: clear XFS_DQ_FREEING if we can't lock the dquot buffer to flush + - selftests/powerpc: Squash spurious errors due to device removal + - powerpc/32s: Fix CONFIG_BOOK3S_601 uses + - powerpc/boot: Fix CONFIG_PPC_MPC52XX references + - selftests/powerpc: Fix CPU affinity for child process + - nvmem: sprd: Fix return value of sprd_efuse_probe() + - RDMA/rtrs-clt: add an additional random 8 seconds before reconnecting + - RDMA/rtrs: remove WQ_MEM_RECLAIM for rtrs_wq + - RDMA/netlink: Remove CAP_NET_RAW check when dump a raw QP + - PCI: Release IVRS table in AMD ACS quirk + - cpufreq: ap806: fix cpufreq driver needs ap cpu clk + - powerpc/pseries/hotplug-cpu: Remove double free in error path + - selftests/powerpc: Fix online CPU selection + - RDMA/hns: Fix error during modify qp RTS2RTS + - RDMA/hns: Fix the unneeded process when getting a general type of CQE error + - ASoC: meson: axg-tdm-interface: fix link fmt setup + - ASoC: meson: axg-tdmin: fix g12a skew + - ASoC: meson: axg-tdm-formatters: fix sclk inversion + - ASoC: soc-core: Fix regression causing sysfs entries to disappear + - net: ll_temac: Use devm_platform_ioremap_resource_byname() + - drm/msm/dpu: don't use INTF_INPUT_CTRL feature on sdm845 + - libbpf: Fix register in PT_REGS MIPS macros + - MIPS: only register FTLBPar exception handler for supported models + - ASoC: core: use less strict tests for dailink capabilities + - ASoC: meson: cards: deal dpcm flag change + - ASoC: fsl_sai: Fix value of FSL_SAI_CR1_RFW_MASK + - s390/qeth: tolerate pre-filled RX buffer + - s390/qeth: don't process empty bridge port events + - ice: Clear and free XLT entries on reset + - ice: Graceful error handling in HW table calloc failure + - netfilter: nft_meta: fix iifgroup matching + - rtw88: fix LDPC field for RA info + - rtw88: fix short GI capability based on current bandwidth + - rtw88: coex: only skip coex triggered by BT info + - qtnfmac: Missing platform_device_unregister() on error in + qtnf_core_mac_alloc() + - wl1251: fix always return 0 error + - tools, build: Propagate build failures from tools/build/Makefile.build + - tools, bpftool: Fix wrong return value in do_dump() + - net/mlx5: DR, Change push vlan action sequence + - net/mlx5: Delete extra dump stack that gives nothing + - net: mvpp2: fix memory leak in mvpp2_rx + - net: ethernet: aquantia: Fix wrong return value + - liquidio: Fix wrong return value in cn23xx_get_pf_num() + - net: sgi: ioc3-eth: Fix the size used in some 'dma_free_coherent()' calls + - net: spider_net: Fix the size used in a 'dma_free_coherent()' call + - fsl/fman: use 32-bit unsigned integer + - fsl/fman: fix dereference null return value + - fsl/fman: fix unreachable code + - fsl/fman: check dereferencing null pointer + - fsl/fman: fix eth hash table allocation + - gpio: don't use same lockdep class for all devm_gpiochip_add_data users + - net: thunderx: use spin_lock_bh in nicvf_set_rx_mode_task() + - net: macb: Properly handle phylink on at91sam9x + - dpaa2-eth: Fix passing zero to 'PTR_ERR' warning + - hv_netvsc: do not use VF device if link is down + - Revert "vxlan: fix tos value before xmit" + - net: thunderx: initialize VF's mailbox mutex before first usage + - media: mtk-mdp: Fix a refcounting bug on error in init + - dlm: Fix kobject memleak + - ocfs2: fix unbalanced locking + - pinctrl-single: fix pcs_parse_pinconf() return value + - mtd: rawnand: brcmnand: Don't default to edu transfer + - svcrdma: Fix page leak in svc_rdma_recv_read_chunk() + - nfsd: avoid a NULL dereference in __cld_pipe_upcall() + - x86/fsgsbase/64: Fix NULL deref in 86_fsgsbase_read_task + - crypto: aesni - add compatibility with IAS + - af_packet: TPACKET_V3: fix fill status rwlock imbalance + - drivers/net/wan/lapbether: Added needed_headroom and a skb->len check + - net: Fix potential memory leak in proto_register() + - net/nfc/rawsock.c: add CAP_NET_RAW check. + - net: phy: fix memory leak in device-create error path + - net: Set fput_needed iff FDPUT_FPUT is set + - net/tls: Fix kmap usage + - vmxnet3: use correct tcp hdr length when packet is encapsulated + - net: refactor bind_bucket fastreuse into helper + - net: initialize fastreuse on inet_inherit_port + - vsock: fix potential null pointer dereference in vsock_poll() + - net: phy: marvell10g: fix null pointer dereference + - r8152: Use MAC address from correct device tree node + - USB: serial: cp210x: re-enable auto-RTS on open + - USB: serial: cp210x: enable usb generic throttle/unthrottle + - usb: cdns3: gadget: always zeroed TRB buffer when enable endpoint + - iommu/vt-d: Skip TE disabling on quirky gfx dedicated iommu + - vdpasim: protect concurrent access to iommu iotlb + - ALSA: hda - fix the micmute led status for Lenovo ThinkCentre AIO + - ALSA: hda - reverse the setting value in the micmute_led_set + - ALSA: usb-audio: Creative USB X-Fi Pro SB1095 volume knob support + - ALSA: usb-audio: fix overeager device match for MacroSilicon MS2109 + - ALSA: usb-audio: work around streaming quirk for MacroSilicon MS2109 + - ALSA: usb-audio: add quirk for Pioneer DDJ-RB + - tpm: Unify the mismatching TPM space buffer sizes + - pstore: Fix linking when crypto API disabled + - crypto: hisilicon - don't sleep of CRYPTO_TFM_REQ_MAY_SLEEP was not + specified + - crypto: qat - fix double free in qat_uclo_create_batch_init_list + - crypto: ccp - Fix use of merged scatterlists + - crypto: cpt - don't sleep of CRYPTO_TFM_REQ_MAY_SLEEP was not specified + - tick/nohz: Narrow down noise while setting current task's tick dependency + - bitfield.h: don't compile-time validate _val in FIELD_FIT + - fs/minix: check return value of sb_getblk() + - fs/minix: don't allow getting deleted inodes + - fs/minix: reject too-large maximum file size + - kvm: x86: replace kvm_spec_ctrl_test_value with runtime test on the host + - 9p: Fix memory leak in v9fs_mount + - driver core: Fix probe_count imbalance in really_probe() + - media: media-request: Fix crash if memory allocation fails + - drm/ttm/nouveau: don't call tt destroy callback on alloc failure. + - io_uring: set ctx sq/cq entry count earlier + - io_uring: use TWA_SIGNAL for task_work uncondtionally + - io_uring: fail poll arm on queue proc failure + - io_uring: sanitize double poll handling + - NFS: Don't move layouts to plh_return_segs list while in use + - NFS: Don't return layout segments that are in use + - cpufreq: Fix locking issues with governors + - cpufreq: dt: fix oops on armada37xx + - MIPS: VZ: Only include loongson_regs.h for CPU_LOONGSON64 + - include/asm-generic/vmlinux.lds.h: align ro_after_init + - PM / devfreq: rk3399_dmc: Fix kernel oops when rockchip,pmu is absent + - PM / devfreq: Fix indentaion of devfreq_summary debugfs node + - spi: spidev: Align buffers for DMA + - mtd: rawnand: qcom: avoid write to unavailable register + - mtd: spi-nor: intel-spi: Simulate WRDI command + - erofs: fix extended inode could cross boundary + - Revert "mm/vmstat.c: do not show lowmem reserve protection information of + empty zone" + - Revert "parisc: Improve interrupt handling in arch_spin_lock_flags()" + - Revert "parisc: Drop LDCW barrier in CAS code when running UP" + - Revert "parisc: Use ldcw instruction for SMP spinlock release barrier" + - Revert "parisc: Revert "Release spinlocks using ordered store"" + - parisc: Do not use an ordered store in pa_tlb_lock() + - parisc: Implement __smp_store_release and __smp_load_acquire barriers + - parisc: mask out enable and reserved bits from sba imask + - ARM: dts: exynos: Extend all Exynos5800 A15's OPPs with max voltage data + - ARM: 8992/1: Fix unwind_frame for clang-built kernels + - firmware: qcom_scm: Fix legacy convention SCM accessors + - irqdomain/treewide: Free firmware node after domain removal + - firmware_loader: EFI firmware loader must handle pre-allocated buffer + - xen/balloon: fix accounting in alloc_xenballooned_pages error path + - xen/balloon: make the balloon wait interruptible + - xen/gntdev: Fix dmabuf import with non-zero sgt offset + - drm/xen-front: Fix misused IS_ERR_OR_NULL checks + - s390/dasd: fix inability to use DASD with DIAG driver + - s390/numa: set node distance to LOCAL_DISTANCE + - s390/gmap: improve THP splitting + - io_uring: Fix NULL pointer dereference in loop_rw_iter() + - io_uring: hold 'ctx' reference around task_work queue + execute + - io_uring: add missing REQ_F_COMP_LOCKED for nested requests + - io_uring: enable lookup of links holding inflight files + - task_work: only grab task signal lock when needed + - Linux 5.8.2 + * Regression on NFS: unable to handle page fault in mempool_alloc_slab + (LP: #1886277) // Groovy update: v5.8.2 upstream stable release + (LP: #1892215) + - SUNRPC: Fix ("SUNRPC: Add "@len" parameter to gss_unwrap()") + * Groovy update: v5.8.2 upstream stable release (LP: #1892215) // + CVE-2019-19770 which shows this issue is not a core debugfs issue, but + - blktrace: fix debugfs use after free + * Fix missing HDMI Audio on another HP Desktop (LP: #1891617) + - ALSA: hda/hdmi: Use force connectivity quirk on another HP desktop + * alsa/sof: support 1 and 3 dmics (LP: #1891585) + - SAUCE: ASoC: SOF: intel: hda: support also devices with 1 and 3 dmics + * fix ftrace pid filtering on linux 5.8 (LP: #1891528) + - ftrace: Fix ftrace_trace_task return value + * Fix false-negative return value for rtnetlink.sh in kselftests/net + (LP: #1890136) + - selftests: rtnetlink: correct the final return value for the test + - selftests: rtnetlink: make kci_test_encap() return sub-test result + * Disable Lenovo P620 Rear line-in volume control (LP: #1891281) + - ALSA: usb-audio: Disable Lenovo P620 Rear line-in volume control + * tcp_fastopen_backup_key.sh from net in ubuntu_kernel_selftests failed on + Eoan LPAR (LP: #1869134) + - tcp: correct read of TFO keys on big endian systems + * Groovy update: v5.8.1 upstream stable release (LP: #1891647) + - scsi: ufs: Fix and simplify setup_xfer_req variant operation + - USB: serial: qcserial: add EM7305 QDL product ID + - USB: iowarrior: fix up report size handling for some devices + - usb: xhci: define IDs for various ASMedia host controllers + - usb: xhci: Fix ASMedia ASM1142 DMA addressing + - Revert "ALSA: hda: call runtime_allow() for all hda controllers" + - ALSA: hda/realtek: Add alc269/alc662 pin-tables for Loongson-3 laptops + - ALSA: hda/ca0132 - Add new quirk ID for Recon3D. + - ALSA: hda/ca0132 - Fix ZxR Headphone gain control get value. + - ALSA: hda/ca0132 - Fix AE-5 microphone selection commands. + - ALSA: seq: oss: Serialize ioctls + - staging: android: ashmem: Fix lockdep warning for write operation + - staging: rtl8712: handle firmware load failure + - Staging: rtl8188eu: rtw_mlme: Fix uninitialized variable authmode + - Bluetooth: Fix slab-out-of-bounds read in hci_extended_inquiry_result_evt() + - Bluetooth: Prevent out-of-bounds read in hci_inquiry_result_evt() + - Bluetooth: Prevent out-of-bounds read in hci_inquiry_result_with_rssi_evt() + - omapfb: dss: Fix max fclk divider for omap36xx + - binder: Prevent context manager from incrementing ref 0 + - Smack: fix use-after-free in smk_write_relabel_self() + - scripts: add dummy report mode to add_namespace.cocci + - lkdtm/heap: Avoid edge and middle of slabs + - vgacon: Fix for missing check in scrollback handling + - mtd: properly check all write ioctls for permissions + - leds: wm831x-status: fix use-after-free on unbind + - leds: lm36274: fix use-after-free on unbind + - leds: da903x: fix use-after-free on unbind + - leds: lm3533: fix use-after-free on unbind + - leds: 88pm860x: fix use-after-free on unbind + - gpio: max77620: Fix missing release of interrupt + - xattr: break delegations in {set,remove}xattr + - Revert "powerpc/kasan: Fix shadow pages allocation failure" + - powerpc/kasan: Fix shadow pages allocation failure + - PCI: tegra: Revert tegra124 raw_violation_fixup + - ima: move APPRAISE_BOOTPARAM dependency on ARCH_POLICY to runtime + - random32: move the pseudo-random 32-bit definitions to prandom.h + - random: random.h should include archrandom.h, not the other way around + - arm64: kaslr: Use standard early random function + - Linux 5.8.1 + - [Config] Update annotations for changes in v5.8.1 + * bcache by-uuid links disappear after mounting bcache0 (LP: #1861941) + - SAUCE: Revert "UBUNTU: SAUCE: (no-up) bcache: decouple emitting a cached_dev + CHANGE uevent" + * Miscellaneous upstream changes + - Revert "ALSA: hda - Disable audio component for legacy Nvidia HDMI codecs" + + -- Paolo Pisati Wed, 26 Aug 2020 09:56:48 +0200 + +linux-azure (5.8.0-1002.2) groovy; urgency=medium + + * Packaging resync (LP: #1786013) + - [Packaging] update helper scripts + - [Packaging] update update.conf + + [ Ubuntu: 5.8.0-16.17 ] + + * groovy/linux: 5.8.0-16.17 -proposed tracker (LP: #1891233) + * Miscellaneous Ubuntu changes + - hio -- Update to use bio_{start,end}_io_acct with 5.8+ + - Enable hio driver + - [Packaging] Temporarily disable building doc package contents + + [ Ubuntu: 5.8.0-15.16 ] + + * groovy/linux: 5.8.0-15.16 -proposed tracker (LP: #1891177) + * Miscellaneous Ubuntu changes + - SAUCE: Documentation: import error c_funcptr_sig_re, c_sig_re (sphinx- + doc/sphinx@0f49e30c) + + [ Ubuntu: 5.8.0-14.15 ] + + * groovy/linux: 5.8.0-14.15 -proposed tracker (LP: #1891085) + * Packaging resync (LP: #1786013) + - [Packaging] update helper scripts + * msg_zerocopy.sh in net from ubuntu_kernel_selftests failed (LP: #1812620) + - selftests/net: relax cpu affinity requirement in msg_zerocopy test + * Fix missing HDMI/DP Audio on an HP Desktop (LP: #1890441) + - ALSA: hda/hdmi: Add quirk to force connectivity + * Add initial audio support for Lenovo ThinkStation P620 (LP: #1890317) + - ALSA: usb-audio: Add support for Lenovo ThinkStation P620 + * Fix IOMMU error on AMD Radeon Pro W5700 (LP: #1890306) + - PCI: Mark AMD Navi10 GPU rev 0x00 ATS as broken + * Enlarge hisi_sec2 capability (LP: #1890222) + - crypto: hisilicon - update SEC driver module parameter + * Miscellaneous Ubuntu changes + - [Config] Re-enable signing for ppc64el + + [ Ubuntu: 5.8.0-13.14 ] + + * Miscellaneous Ubuntu changes + - [Config] Remove i386 configs + - SAUCE: apply a workaround to re-enable CONFIG_CRYPTO_AEGIS128_SIMD + - SAUCE: export __get_vm_area_caller() and map_kernel_range() + - [Config] drop CONFIG_BINFMT_AOUT enforcement + * Miscellaneous upstream changes + - Revert "UBUNTU: [Config] disable CONFIG_CRYPTO_AEGIS128_SIMD" + * Rebase to v5.8 + + -- Paolo Pisati Tue, 25 Aug 2020 16:47:29 +0200 + +linux-azure (5.8.0-1001.1) groovy; urgency=medium + + * Miscellaneous Ubuntu changes + - [packaging] debhelper-compat (= 10) + - [Config] reset to groovy/generic config + - [Config] # X86_UV is not set + - [Config] # XEN is not set + - [Config] # ACPI_DEBUGGER is not set + - [Config] # ACPI_REV_OVERRIDE_POSSIBLE is not set + - [Config] # ACPI_AC is not set + - [Config] # ACPI_BATTERY is not set + - [Config] # ACPI_TAD is not set + - [Config] # ACPI_DOCK is not set + - [Config] # ACPI_THERMAL is not set + - [Config] # ACPI_TABLE_UPGRADE is not set + - [Config] # ACPI_DEBUG is not set + - [Config] # ACPI_PCI_SLOT is not set + - [Config] # ACPI_HOTPLUG_MEMORY is not set + - [Config] # ACPI_SBS is not set + - [Config] # ACPI_BGRT is not set + - [Config] # ACPI_APEI_GHES is not set + - [Config] # ACPI_APEI_EINJ is not set + - [Config] # ACPI_EXTLOG is not set + - [Config] # ACPI_CONFIGFS is not set + - [Config] # X86_AMD_FREQ_SENSITIVITY is not set + - [Config] # X86_P4_CLOCKMOD is not set + - [Config] # DMI_SYSFS is not set + - [Config] # FW_CFG_SYSFS is not set + - [Config] # IP_MROUTE_MULTIPLE_TABLES is not set + - [Config] # NETWORK_PHY_TIMESTAMPING is not set + - [Config] # TIPC_MEDIA_IB is not set + - [Config] # MKISS is not set + - [Config] # 6PACK is not set + - [Config] # BPQETHER is not set + - [Config] # BAYCOM_SER_FDX is not set + - [Config] # BAYCOM_SER_HDX is not set + - [Config] # BAYCOM_PAR is not set + - [Config] # YAM is not set + - [Config] # CAN_CC770 is not set + - [Config] # CAN_IFI_CANFD is not set + - [Config] # CAN_M_CAN is not set + - [Config] # CAN_SOFTING is not set + - [Config] # CAN_MCP251X is not set + - [Config] # CAN_8DEV_USB is not set + - [Config] # CAN_EMS_USB is not set + - [Config] # CAN_ESD_USB2 is not set + - [Config] # CAN_GS_USB is not set + - [Config] # CAN_KVASER_USB is not set + - [Config] # CAN_MCBA_USB is not set + - [Config] # CAN_PEAK_USB is not set + - [Config] # CAN_UCAN is not set + - [Config] # BT is not set + - [Config] # WIMAX is not set + - [Config] # NFC_TRF7970A is not set + - [Config] # NFC_SIM is not set + - [Config] # NFC_PORT100 is not set + - [Config] # NFC_FDP is not set + - [Config] # NFC_PN544_I2C is not set + - [Config] # NFC_PN533_USB is not set + - [Config] # NFC_PN533_I2C is not set + - [Config] # NFC_MICROREAD_I2C is not set + - [Config] # NFC_MRVL_USB is not set + - [Config] # NFC_MRVL_UART is not set + - [Config] # NFC_ST21NFCA_I2C is not set + - [Config] # NFC_ST_NCI_I2C is not set + - [Config] # NFC_ST_NCI_SPI is not set + - [Config] # NFC_NXP_NCI is not set + - [Config] # NFC_S3FWRN5_I2C is not set + - [Config] # NFC_ST95HF is not set + - [Config] # VMD is not set + - [Config] # PCMCIA is not set + - [Config] # RAPIDIO_TSI57X is not set + - [Config] # RAPIDIO_CPS_XX is not set + - [Config] # RAPIDIO_TSI568 is not set + - [Config] # RAPIDIO_CPS_GEN2 is not set + - [Config] # RAPIDIO_RXS_GEN3 is not set + - [Config] # MTD is not set + - [Config] # BLK_DEV_NULL_BLK is not set + - [Config] # BLK_DEV_FD is not set + - [Config] # PARIDE is not set + - [Config] # BLK_DEV_PCIESSD_MTIP32XX is not set + - [Config] # BLK_DEV_UMEM is not set + - [Config] # BLK_DEV_SKD is not set + - [Config] # BLK_DEV_SX8 is not set + - [Config] # ATA_OVER_ETH is not set + - [Config] # BLK_DEV_RSXX is not set + - [Config] # NVME_TARGET_LOOP is not set + - [Config] # NVME_TARGET_RDMA is not set + - [Config] # AD525X_DPOT is not set + - [Config] # HP_ILO is not set + - [Config] # C2PORT is not set + - [Config] # EEPROM_AT25 is not set + - [Config] # EEPROM_LEGACY is not set + - [Config] # EEPROM_MAX6875 is not set + - [Config] # EEPROM_93XX46 is not set + - [Config] # EEPROM_IDT_89HPESX is not set + - [Config] # TI_ST is not set + - [Config] # SENSORS_LIS3_I2C is not set + - [Config] # INTEL_MEI_TXE is not set + - [Config] # VMWARE_VMCI is not set + - [Config] # INTEL_MIC_BUS is not set + - [Config] # SCIF_BUS is not set + - [Config] # VOP_BUS is not set + - [Config] # ECHO is not set + - [Config] # MISC_RTSX_USB is not set + - [Config] # SCSI_CXGB3_ISCSI is not set + - [Config] # SCSI_CXGB4_ISCSI is not set + - [Config] # SCSI_BNX2_ISCSI is not set + - [Config] # BLK_DEV_3W_XXXX_RAID is not set + - [Config] # SCSI_UFSHCD is not set + - [Config] # VMWARE_PVSCSI is not set + - [Config] # LIBFC is not set + - [Config] # SCSI_ISCI is not set + - [Config] # SATA_ZPODD is not set + - [Config] # SATA_INIC162X is not set + - [Config] # SATA_ACARD_AHCI is not set + - [Config] # SATA_SIL24 is not set + - [Config] # SATA_QSTOR is not set + - [Config] # SATA_SX4 is not set + - [Config] # SATA_MV is not set + - [Config] # SATA_NV is not set + - [Config] # SATA_PROMISE is not set + - [Config] # SATA_SIL is not set + - [Config] # SATA_SIS is not set + - [Config] # SATA_SVW is not set + - [Config] # SATA_ULI is not set + - [Config] # SATA_VIA is not set + - [Config] # SATA_VITESSE is not set + - [Config] # LOOPBACK_TARGET is not set + - [Config] # ISCSI_TARGET_CXGB4 is not set + - [Config] # FIREWIRE is not set + - [Config] # MACINTOSH_DRIVERS is not set + - [Config] # NET_FC is not set + - [Config] # NET_TEAM is not set + - [Config] # CAIF_TTY is not set + - [Config] # CAIF_SPI_SLAVE is not set + - [Config] # CAIF_HSI is not set + - [Config] # NET_DSA_MV88E6060 is not set + - [Config] # NET_DSA_MV88E6XXX is not set + - [Config] # NET_DSA_QCA8K is not set + - [Config] # NET_VENDOR_3COM is not set + - [Config] # NET_VENDOR_ADAPTEC is not set + - [Config] # NET_VENDOR_ALTEON is not set + - [Config] # ALTERA_TSE is not set + - [Config] # NET_VENDOR_AMAZON is not set + - [Config] # NET_VENDOR_AMD is not set + - [Config] # NET_VENDOR_ARC is not set + - [Config] # NET_VENDOR_ATHEROS is not set + - [Config] # NET_VENDOR_AURORA is not set + - [Config] # NET_VENDOR_BROCADE is not set + - [Config] # MACB is not set + - [Config] # NET_VENDOR_CAVIUM is not set + - [Config] # NET_VENDOR_DEC is not set + - [Config] # NET_VENDOR_EZCHIP is not set + - [Config] # NET_VENDOR_MICREL is not set + - [Config] # ENC28J60 is not set + - [Config] # ENCX24J600 is not set + - [Config] # NET_VENDOR_MYRI is not set + - [Config] # NET_VENDOR_NATSEMI is not set + - [Config] # NET_VENDOR_NVIDIA is not set + - [Config] # NET_VENDOR_OKI is not set + - [Config] # NET_VENDOR_QLOGIC is not set + - [Config] # NET_VENDOR_QUALCOMM is not set + - [Config] # NET_VENDOR_RDC is not set + - [Config] # NET_VENDOR_RENESAS is not set + - [Config] # NET_VENDOR_ROCKER is not set + - [Config] # NET_VENDOR_SAMSUNG is not set + - [Config] # NET_VENDOR_SEEQ is not set + - [Config] # NET_VENDOR_SILAN is not set + - [Config] # NET_VENDOR_SIS is not set + - [Config] # NET_VENDOR_SMSC is not set + - [Config] # NET_VENDOR_SOCIONEXT is not set + - [Config] # NET_VENDOR_STMICRO is not set + - [Config] # NET_VENDOR_SUN is not set + - [Config] # NET_VENDOR_TEHUTI is not set + - [Config] # NET_VENDOR_TI is not set + - [Config] # NET_VENDOR_VIA is not set + - [Config] # NET_VENDOR_WIZNET is not set + - [Config] # MDIO_BITBANG is not set + - [Config] # MDIO_THUNDER is not set + - [Config] # LED_TRIGGER_PHY is not set + - [Config] # AMD_PHY is not set + - [Config] # AQUANTIA_PHY is not set + - [Config] # AT803X_PHY is not set + - [Config] # BCM87XX_PHY is not set + - [Config] # BROADCOM_PHY is not set + - [Config] # CICADA_PHY is not set + - [Config] # DAVICOM_PHY is not set + - [Config] # DP83848_PHY is not set + - [Config] # DP83867_PHY is not set + - [Config] # ICPLUS_PHY is not set + - [Config] # INTEL_XWAY_PHY is not set + - [Config] # LSI_ET1011C_PHY is not set + - [Config] # LXT_PHY is not set + - [Config] # MARVELL_PHY is not set + - [Config] # MICREL_PHY is not set + - [Config] # MICROSEMI_PHY is not set + - [Config] # NATIONAL_PHY is not set + - [Config] # QSEMI_PHY is not set + - [Config] # SMSC_PHY is not set + - [Config] # STE10XP is not set + - [Config] # TERANETICS_PHY is not set + - [Config] # XILINX_GMII2RGMII is not set + - [Config] # MICREL_KS8995MA is not set + - [Config] # PLIP is not set + - [Config] # WLAN is not set + - [Config] # LANMEDIA is not set + - [Config] # IEEE802154_FAKELB is not set + - [Config] # IEEE802154_AT86RF230 is not set + - [Config] # IEEE802154_MRF24J40 is not set + - [Config] # IEEE802154_CC2520 is not set + - [Config] # IEEE802154_ATUSB is not set + - [Config] # IEEE802154_ADF7242 is not set + - [Config] # VMXNET3 is not set + - [Config] # FUJITSU_ES is not set + - [Config] # ISDN is not set + - [Config] # NVM is not set + - [Config] # INPUT_LEDS is not set + - [Config] # KEYBOARD_ADP5588 is not set + - [Config] # KEYBOARD_ADP5589 is not set + - [Config] # KEYBOARD_QT1070 is not set + - [Config] # KEYBOARD_QT2160 is not set + - [Config] # KEYBOARD_LKKBD is not set + - [Config] # KEYBOARD_GPIO is not set + - [Config] # KEYBOARD_TCA6416 is not set + - [Config] # KEYBOARD_TCA8418 is not set + - [Config] # KEYBOARD_MATRIX is not set + - [Config] # KEYBOARD_LM8323 is not set + - [Config] # KEYBOARD_LM8333 is not set + - [Config] # KEYBOARD_MAX7359 is not set + - [Config] # KEYBOARD_MCS is not set + - [Config] # KEYBOARD_MPR121 is not set + - [Config] # KEYBOARD_NEWTON is not set + - [Config] # KEYBOARD_OPENCORES is not set + - [Config] # KEYBOARD_SAMSUNG is not set + - [Config] # KEYBOARD_STOWAWAY is not set + - [Config] # KEYBOARD_SUNKBD is not set + - [Config] # KEYBOARD_TM2_TOUCHKEY is not set + - [Config] # KEYBOARD_XTKBD is not set + - [Config] # INPUT_MOUSE is not set + - [Config] # INPUT_JOYSTICK is not set + - [Config] # TABLET_USB_ACECAD is not set + - [Config] # TABLET_USB_AIPTEK is not set + - [Config] # TABLET_USB_GTCO is not set + - [Config] # TABLET_USB_HANWANG is not set + - [Config] # TABLET_USB_KBTAB is not set + - [Config] # TABLET_USB_PEGASUS is not set + - [Config] # TABLET_SERIAL_WACOM4 is not set + - [Config] # INPUT_TOUCHSCREEN is not set + - [Config] # INPUT_AD714X is not set + - [Config] # INPUT_BMA150 is not set + - [Config] # INPUT_E3X0_BUTTON is not set + - [Config] # INPUT_PCSPKR is not set + - [Config] # INPUT_MC13783_PWRBUTTON is not set + - [Config] # INPUT_MMA8450 is not set + - [Config] # INPUT_APANEL is not set + - [Config] # INPUT_GPIO_BEEPER is not set + - [Config] # INPUT_GPIO_DECODER is not set + - [Config] # INPUT_ATLAS_BTNS is not set + - [Config] # INPUT_ATI_REMOTE2 is not set + - [Config] # INPUT_KEYSPAN_REMOTE is not set + - [Config] # INPUT_KXTJ9 is not set + - [Config] # INPUT_POWERMATE is not set + - [Config] # INPUT_YEALINK is not set + - [Config] # INPUT_CM109 is not set + - [Config] # INPUT_REGULATOR_HAPTIC is not set + - [Config] # INPUT_RETU_PWRBUTTON is not set + - [Config] # INPUT_AXP20X_PEK is not set + - [Config] # INPUT_PCF50633_PMU is not set + - [Config] # INPUT_PCF8574 is not set + - [Config] # INPUT_GPIO_ROTARY_ENCODER is not set + - [Config] # INPUT_DA9052_ONKEY is not set + - [Config] # INPUT_DA9063_ONKEY is not set + - [Config] # INPUT_WM831X_ON is not set + - [Config] # INPUT_PCAP is not set + - [Config] # INPUT_ADXL34X is not set + - [Config] # INPUT_IMS_PCU is not set + - [Config] # INPUT_CMA3000 is not set + - [Config] # INPUT_IDEAPAD_SLIDEBAR is not set + - [Config] # INPUT_DRV260X_HAPTICS is not set + - [Config] # INPUT_DRV2665_HAPTICS is not set + - [Config] # INPUT_DRV2667_HAPTICS is not set + - [Config] # GAMEPORT is not set + - [Config] # SERIAL_DEV_BUS is not set + - [Config] # MWAVE is not set + - [Config] # TCG_TIS_SPI is not set + - [Config] # TCG_TIS_I2C_ATMEL is not set + - [Config] # TCG_TIS_I2C_INFINEON is not set + - [Config] # TCG_TIS_I2C_NUVOTON is not set + - [Config] # TCG_NSC is not set + - [Config] # TCG_ATMEL is not set + - [Config] # TCG_INFINEON is not set + - [Config] # TCG_VTPM_PROXY is not set + - [Config] # TCG_TIS_ST33ZP24_I2C is not set + - [Config] # TCG_TIS_ST33ZP24_SPI is not set + - [Config] # XILLYBUS is not set + - [Config] # I2C_MUX_GPIO is not set + - [Config] # I2C_MUX_PCA9541 is not set + - [Config] # I2C_MUX_PCA954x is not set + - [Config] # I2C_MUX_REG is not set + - [Config] # I2C_MUX_MLXCPLD is not set + - [Config] # I2C_AMD_MP2 is not set + - [Config] # I2C_PIIX4 is not set + - [Config] # I2C_DIOLAN_U2C is not set + - [Config] # I2C_ROBOTFUZZ_OSIF is not set + - [Config] # I2C_TINY_USB is not set + - [Config] # SPMI is not set + - [Config] # HSI is not set + - [Config] # PPS_CLIENT_LDISC is not set + - [Config] # PPS_CLIENT_PARPORT is not set + - [Config] # PPS_CLIENT_GPIO is not set + - [Config] # PINCTRL_AMD is not set + - [Config] # PINCTRL_BROXTON is not set + - [Config] # PINCTRL_GEMINILAKE is not set + - [Config] # PINCTRL_SUNRISEPOINT is not set + - [Config] # PDA_POWER is not set + - [Config] # WM831X_BACKUP is not set + - [Config] # WM831X_POWER is not set + - [Config] # TEST_POWER is not set + - [Config] # BATTERY_DS2780 is not set + - [Config] # BATTERY_DS2781 is not set + - [Config] # BATTERY_DS2782 is not set + - [Config] # BATTERY_SBS is not set + - [Config] # CHARGER_SBS is not set + - [Config] # BATTERY_BQ27XXX is not set + - [Config] # BATTERY_DA9052 is not set + - [Config] # BATTERY_MAX17040 is not set + - [Config] # BATTERY_MAX17042 is not set + - [Config] # CHARGER_PCF50633 is not set + - [Config] # CHARGER_MAX8903 is not set + - [Config] # CHARGER_LP8727 is not set + - [Config] # CHARGER_GPIO is not set + - [Config] # CHARGER_MANAGER is not set + - [Config] # CHARGER_MAX14577 is not set + - [Config] # CHARGER_MAX77693 is not set + - [Config] # CHARGER_BQ2415X is not set + - [Config] # CHARGER_BQ24257 is not set + - [Config] # CHARGER_BQ24735 is not set + - [Config] # CHARGER_BQ25890 is not set + - [Config] # CHARGER_SMB347 is not set + - [Config] # BATTERY_GAUGE_LTC2941 is not set + - [Config] # BATTERY_RT5033 is not set + - [Config] # CHARGER_RT9455 is not set + - [Config] # PMBUS is not set + - [Config] # INT340X_THERMAL is not set + - [Config] # HP_WATCHDOG is not set + - [Config] # USBPCWATCHDOG is not set + - [Config] # MFD_DA9062 is not set + - [Config] # MFD_DA9150 is not set + - [Config] # MFD_DLN2 is not set + - [Config] # MFD_KEMPLD is not set + - [Config] # MFD_88PM800 is not set + - [Config] # MFD_MT6397 is not set + - [Config] # MFD_VIPERBOARD is not set + - [Config] # MFD_SI476X_CORE is not set + - [Config] # ABX500_CORE is not set + - [Config] # MFD_LM3533 is not set + - [Config] # REGULATOR_VIRTUAL_CONSUMER is not set + - [Config] # REGULATOR_USERSPACE_CONSUMER is not set + - [Config] # REGULATOR_ACT8865 is not set + - [Config] # REGULATOR_AD5398 is not set + - [Config] # REGULATOR_AXP20X is not set + - [Config] # REGULATOR_BCM590XX is not set + - [Config] # REGULATOR_DA9052 is not set + - [Config] # REGULATOR_DA9210 is not set + - [Config] # REGULATOR_DA9211 is not set + - [Config] # REGULATOR_FAN53555 is not set + - [Config] # REGULATOR_GPIO is not set + - [Config] # REGULATOR_ISL9305 is not set + - [Config] # REGULATOR_ISL6271A is not set + - [Config] # REGULATOR_LP3971 is not set + - [Config] # REGULATOR_LP3972 is not set + - [Config] # REGULATOR_LP872X is not set + - [Config] # REGULATOR_LP8755 is not set + - [Config] # REGULATOR_LTC3589 is not set + - [Config] # REGULATOR_LTC3676 is not set + - [Config] # REGULATOR_MAX14577 is not set + - [Config] # REGULATOR_MAX1586 is not set + - [Config] # REGULATOR_MAX8649 is not set + - [Config] # REGULATOR_MAX8660 is not set + - [Config] # REGULATOR_MAX8907 is not set + - [Config] # REGULATOR_MAX8952 is not set + - [Config] # REGULATOR_MAX77693 is not set + - [Config] # REGULATOR_MC13783 is not set + - [Config] # REGULATOR_MC13892 is not set + - [Config] # REGULATOR_MT6311 is not set + - [Config] # REGULATOR_PCAP is not set + - [Config] # REGULATOR_PCF50633 is not set + - [Config] # REGULATOR_PFUZE100 is not set + - [Config] # REGULATOR_PV88060 is not set + - [Config] # REGULATOR_PV88080 is not set + - [Config] # REGULATOR_PV88090 is not set + - [Config] # REGULATOR_RT5033 is not set + - [Config] # REGULATOR_SKY81452 is not set + - [Config] # REGULATOR_TPS51632 is not set + - [Config] # REGULATOR_TPS6105X is not set + - [Config] # REGULATOR_TPS62360 is not set + - [Config] # REGULATOR_TPS65023 is not set + - [Config] # REGULATOR_TPS6507X is not set + - [Config] # REGULATOR_TPS65086 is not set + - [Config] # REGULATOR_TPS6524X is not set + - [Config] # REGULATOR_TPS65912 is not set + - [Config] # REGULATOR_WM831X is not set + - [Config] # REGULATOR_WM8994 is not set + - [Config] # RC_ATI_REMOTE is not set + - [Config] # IR_IMON is not set + - [Config] # IR_IMON_RAW is not set + - [Config] # IR_MCEUSB is not set + - [Config] # IR_REDRAT3 is not set + - [Config] # IR_STREAMZAP is not set + - [Config] # IR_IGORPLUGUSB is not set + - [Config] # IR_IGUANA is not set + - [Config] # IR_TTUSBIR is not set + - [Config] # RC_XBOX_DVD is not set + - [Config] # MEDIA_CAMERA_SUPPORT is not set + - [Config] # MEDIA_ANALOG_TV_SUPPORT is not set + - [Config] # MEDIA_DIGITAL_TV_SUPPORT is not set + - [Config] # MEDIA_RADIO_SUPPORT is not set + - [Config] # MEDIA_SDR_SUPPORT is not set + - [Config] # MEDIA_USB_SUPPORT is not set + - [Config] # MEDIA_PCI_SUPPORT is not set + - [Config] # DRM_I2C_CH7006 is not set + - [Config] # DRM_I2C_SIL164 is not set + - [Config] # DRM_I2C_NXP_TDA998X is not set + - [Config] # HSA_AMD is not set + - [Config] # DRM_NOUVEAU is not set + - [Config] # DRM_I915_GVT_KVMGT is not set + - [Config] # DRM_VGEM is not set + - [Config] # DRM_VMWGFX is not set + - [Config] # DRM_UDL is not set + - [Config] # DRM_MGAG200 is not set + - [Config] # DRM_CIRRUS_QEMU is not set + - [Config] # DRM_BOCHS is not set + - [Config] # DRM_ANALOGIX_ANX78XX is not set + - [Config] # DRM_GM12U320 is not set + - [Config] # FB_CIRRUS is not set + - [Config] # FB_PM2 is not set + - [Config] # FB_CYBER2000 is not set + - [Config] # FB_ARC is not set + - [Config] # FB_ASILIANT is not set + - [Config] # FB_IMSTT is not set + - [Config] # FB_VGA16 is not set + - [Config] # FB_UVESA is not set + - [Config] # FB_VESA is not set + - [Config] # FB_EFI is not set + - [Config] # FB_N411 is not set + - [Config] # FB_HGA is not set + - [Config] # FB_OPENCORES is not set + - [Config] # FB_S1D13XXX is not set + - [Config] # FB_NVIDIA is not set + - [Config] # FB_RIVA is not set + - [Config] # FB_I740 is not set + - [Config] # FB_LE80578 is not set + - [Config] # FB_MATROX is not set + - [Config] # FB_RADEON is not set + - [Config] # FB_ATY128 is not set + - [Config] # FB_ATY is not set + - [Config] # FB_S3 is not set + - [Config] # FB_SAVAGE is not set + - [Config] # FB_SIS is not set + - [Config] # FB_NEOMAGIC is not set + - [Config] # FB_KYRO is not set + - [Config] # FB_3DFX is not set + - [Config] # FB_VOODOO1 is not set + - [Config] # FB_VT8623 is not set + - [Config] # FB_TRIDENT is not set + - [Config] # FB_ARK is not set + - [Config] # FB_PM3 is not set + - [Config] # FB_CARMINE is not set + - [Config] # FB_SMSCUFX is not set + - [Config] # FB_UDL is not set + - [Config] # FB_METRONOME is not set + - [Config] # FB_MB862XX is not set + - [Config] # FB_SIMPLE is not set + - [Config] # FB_SM712 is not set + - [Config] # LCD_CLASS_DEVICE is not set + - [Config] # BACKLIGHT_GENERIC is not set + - [Config] # BACKLIGHT_DA9052 is not set + - [Config] # BACKLIGHT_APPLE is not set + - [Config] # BACKLIGHT_SAHARA is not set + - [Config] # BACKLIGHT_WM831X is not set + - [Config] # BACKLIGHT_ADP8860 is not set + - [Config] # BACKLIGHT_ADP8870 is not set + - [Config] # BACKLIGHT_PCF50633 is not set + - [Config] # BACKLIGHT_LM3639 is not set + - [Config] # BACKLIGHT_SKY81452 is not set + - [Config] # BACKLIGHT_GPIO is not set + - [Config] # BACKLIGHT_LV5207LP is not set + - [Config] # BACKLIGHT_BD6107 is not set + - [Config] # FRAMEBUFFER_CONSOLE_DEFERRED_TAKEOVER is not set + - [Config] # SOUND is not set + - [Config] # HID_BATTERY_STRENGTH is not set + - [Config] # HID_A4TECH is not set + - [Config] # HID_ACRUX is not set + - [Config] # HID_APPLE is not set + - [Config] # HID_AUREAL is not set + - [Config] # HID_BELKIN is not set + - [Config] # HID_CHERRY is not set + - [Config] # HID_CHICONY is not set + - [Config] # HID_CORSAIR is not set + - [Config] # HID_CMEDIA is not set + - [Config] # HID_CYPRESS is not set + - [Config] # HID_DRAGONRISE is not set + - [Config] # HID_EMS_FF is not set + - [Config] # HID_ELECOM is not set + - [Config] # HID_EZKEY is not set + - [Config] # HID_GEMBIRD is not set + - [Config] # HID_GFRM is not set + - [Config] # HID_KEYTOUCH is not set + - [Config] # HID_KYE is not set + - [Config] # HID_WALTOP is not set + - [Config] # HID_GYRATION is not set + - [Config] # HID_ICADE is not set + - [Config] # HID_TWINHAN is not set + - [Config] # HID_KENSINGTON is not set + - [Config] # HID_LCPOWER is not set + - [Config] # HID_LENOVO is not set + - [Config] # HID_LOGITECH is not set + - [Config] # HID_MAGICMOUSE is not set + - [Config] # HID_MICROSOFT is not set + - [Config] # HID_MONTEREY is not set + - [Config] # HID_MULTITOUCH is not set + - [Config] # HID_ORTEK is not set + - [Config] # HID_PANTHERLORD is not set + - [Config] # HID_PETALYNX is not set + - [Config] # HID_PICOLCD is not set + - [Config] # HID_PLANTRONICS is not set + - [Config] # HID_PRIMAX is not set + - [Config] # HID_SAITEK is not set + - [Config] # HID_SAMSUNG is not set + - [Config] # HID_SPEEDLINK is not set + - [Config] # HID_STEELSERIES is not set + - [Config] # HID_SUNPLUS is not set + - [Config] # HID_RMI is not set + - [Config] # HID_GREENASIA is not set + - [Config] # HID_SMARTJOYPLUS is not set + - [Config] # HID_TIVO is not set + - [Config] # HID_TOPSEED is not set + - [Config] # HID_THRUSTMASTER is not set + - [Config] # HID_XINMO is not set + - [Config] # HID_ZEROPLUS is not set + - [Config] # HID_ZYDACRON is not set + - [Config] # HID_ALPS is not set + - [Config] # USB_HID is not set + - [Config] # HID_PID is not set + - [Config] # USB_KBD is not set + - [Config] # USB_MOUSE is not set + - [Config] # I2C_HID is not set + - [Config] # USB_LED_TRIG is not set + - [Config] # USB_CONN_GPIO is not set + - [Config] # USB_ANNOUNCE_NEW_DEVICES is not set + - [Config] # USB_DEFAULT_PERSIST is not set + - [Config] # USB_DYNAMIC_MINORS is not set + - [Config] # USB_LEDS_TRIGGER_USBPORT is not set + - [Config] # USB_MON is not set + - [Config] # USB_C67X00_HCD is not set + - [Config] # USB_EHCI_HCD is not set + - [Config] # USB_OXU210HP_HCD is not set + - [Config] # USB_ISP116X_HCD is not set + - [Config] # USB_FOTG210_HCD is not set + - [Config] # USB_MAX3421_HCD is not set + - [Config] # USB_OHCI_HCD is not set + - [Config] # USB_UHCI_HCD is not set + - [Config] # USB_SL811_HCD is not set + - [Config] # USB_R8A66597_HCD is not set + - [Config] # USB_HCD_BCMA is not set + - [Config] # USB_HCD_SSB is not set + - [Config] # USB_PRINTER is not set + - [Config] # USB_TMC is not set + - [Config] # USB_STORAGE is not set + - [Config] # USB_MDC800 is not set + - [Config] # USB_MICROTEK is not set + - [Config] # USBIP_CORE is not set + - [Config] # USB_CDNS3 is not set + - [Config] # USB_MUSB_HDRC is not set + - [Config] # USB_DWC3 is not set + - [Config] # USB_DWC2 is not set + - [Config] # USB_ISP1760 is not set + - [Config] # USB_USS720 is not set + - [Config] # USB_SERIAL is not set + - [Config] # USB_EMI62 is not set + - [Config] # USB_EMI26 is not set + - [Config] # USB_ADUTUX is not set + - [Config] # USB_SEVSEG is not set + - [Config] # USB_LEGOTOWER is not set + - [Config] # USB_LCD is not set + - [Config] # USB_CYPRESS_CY7C63 is not set + - [Config] # USB_CYTHERM is not set + - [Config] # USB_IDMOUSE is not set + - [Config] # USB_FTDI_ELAN is not set + - [Config] # USB_APPLEDISPLAY is not set + - [Config] # USB_LD is not set + - [Config] # USB_TRANCEVIBRATOR is not set + - [Config] # USB_IOWARRIOR is not set + - [Config] # USB_TEST is not set + - [Config] # USB_EHSET_TEST_FIXTURE is not set + - [Config] # USB_ISIGHTFW is not set + - [Config] # USB_YUREX is not set + - [Config] # USB_EZUSB_FX2 is not set + - [Config] # USB_HUB_USB251XB is not set + - [Config] # USB_HSIC_USB3503 is not set + - [Config] # USB_HSIC_USB4604 is not set + - [Config] # USB_LINK_LAYER_TEST is not set + - [Config] # USB_CHAOSKEY is not set + - [Config] # USB_ATM is not set + - [Config] # NOP_USB_XCEIV is not set + - [Config] # USB_GPIO_VBUS is not set + - [Config] # TAHVO_USB is not set + - [Config] # USB_ISP1301 is not set + - [Config] # USB_GADGET is not set + - [Config] # TYPEC is not set + - [Config] # MMC is not set + - [Config] # MEMSTICK is not set + - [Config] # LEDS_CLASS_FLASH is not set + - [Config] # LEDS_LM3530 is not set + - [Config] # LEDS_LM3642 is not set + - [Config] # LEDS_PCA9532 is not set + - [Config] # LEDS_LP3944 is not set + - [Config] # LEDS_LP3952 is not set + - [Config] # LEDS_LP5521 is not set + - [Config] # LEDS_LP5523 is not set + - [Config] # LEDS_LP5562 is not set + - [Config] # LEDS_LP8501 is not set + - [Config] # LEDS_CLEVO_MAIL is not set + - [Config] # LEDS_PCA955X is not set + - [Config] # LEDS_PCA963X is not set + - [Config] # LEDS_WM831X_STATUS is not set + - [Config] # LEDS_DA9052 is not set + - [Config] # LEDS_DAC124S085 is not set + - [Config] # LEDS_REGULATOR is not set + - [Config] # LEDS_BD2802 is not set + - [Config] # LEDS_INTEL_SS4200 is not set + - [Config] # LEDS_MC13783 is not set + - [Config] # LEDS_TCA6507 is not set + - [Config] # LEDS_TLC591XX is not set + - [Config] # LEDS_LM355x is not set + - [Config] # LEDS_MENF21BMC is not set + - [Config] # LEDS_BLINKM is not set + - [Config] # LEDS_MLXCPLD is not set + - [Config] # LEDS_USER is not set + - [Config] # LEDS_NIC78BX is not set + - [Config] # LEDS_TRIGGER_TIMER is not set + - [Config] # LEDS_TRIGGER_ONESHOT is not set + - [Config] # LEDS_TRIGGER_DISK is not set + - [Config] # LEDS_TRIGGER_HEARTBEAT is not set + - [Config] # LEDS_TRIGGER_BACKLIGHT is not set + - [Config] # LEDS_TRIGGER_CPU is not set + - [Config] # LEDS_TRIGGER_GPIO is not set + - [Config] # LEDS_TRIGGER_DEFAULT_ON is not set + - [Config] # LEDS_TRIGGER_TRANSIENT is not set + - [Config] # LEDS_TRIGGER_CAMERA is not set + - [Config] # LEDS_TRIGGER_PANIC is not set + - [Config] # INFINIBAND_CXGB4 is not set + - [Config] # INFINIBAND_I40IW is not set + - [Config] # INFINIBAND_OCRDMA is not set + - [Config] # INFINIBAND_BNXT_RE is not set + - [Config] # INFINIBAND_RDMAVT is not set + - [Config] # RDMA_RXE is not set + - [Config] # INFINIBAND_IPOIB_CM is not set + - [Config] # INFINIBAND_SRPT is not set + - [Config] # RTC_DRV_ABB5ZES3 is not set + - [Config] # RTC_DRV_ABX80X is not set + - [Config] # RTC_DRV_DS1307 is not set + - [Config] # RTC_DRV_DS1374 is not set + - [Config] # RTC_DRV_DS1672 is not set + - [Config] # RTC_DRV_MAX6900 is not set + - [Config] # RTC_DRV_MAX8907 is not set + - [Config] # RTC_DRV_RS5C372 is not set + - [Config] # RTC_DRV_ISL1208 is not set + - [Config] # RTC_DRV_ISL12022 is not set + - [Config] # RTC_DRV_X1205 is not set + - [Config] # RTC_DRV_PCF8523 is not set + - [Config] # RTC_DRV_PCF85063 is not set + - [Config] # RTC_DRV_PCF8563 is not set + - [Config] # RTC_DRV_PCF8583 is not set + - [Config] # RTC_DRV_M41T80 is not set + - [Config] # RTC_DRV_BQ32K is not set + - [Config] # RTC_DRV_S35390A is not set + - [Config] # RTC_DRV_FM3130 is not set + - [Config] # RTC_DRV_RX8010 is not set + - [Config] # RTC_DRV_RX8581 is not set + - [Config] # RTC_DRV_RX8025 is not set + - [Config] # RTC_DRV_EM3027 is not set + - [Config] # RTC_DRV_RV8803 is not set + - [Config] # RTC_DRV_M41T93 is not set + - [Config] # RTC_DRV_M41T94 is not set + - [Config] # RTC_DRV_DS1302 is not set + - [Config] # RTC_DRV_DS1305 is not set + - [Config] # RTC_DRV_DS1343 is not set + - [Config] # RTC_DRV_DS1347 is not set + - [Config] # RTC_DRV_DS1390 is not set + - [Config] # RTC_DRV_MAX6916 is not set + - [Config] # RTC_DRV_R9701 is not set + - [Config] # RTC_DRV_RX4581 is not set + - [Config] # RTC_DRV_RX6110 is not set + - [Config] # RTC_DRV_RS5C348 is not set + - [Config] # RTC_DRV_MAX6902 is not set + - [Config] # RTC_DRV_PCF2123 is not set + - [Config] # RTC_DRV_MCP795 is not set + - [Config] # RTC_DRV_DS3232 is not set + - [Config] # RTC_DRV_PCF2127 is not set + - [Config] # RTC_DRV_RV3029C2 is not set + - [Config] # RTC_DRV_DS1286 is not set + - [Config] # RTC_DRV_DS1511 is not set + - [Config] # RTC_DRV_DS1553 is not set + - [Config] # RTC_DRV_DS1685_FAMILY is not set + - [Config] # RTC_DRV_DS1742 is not set + - [Config] # RTC_DRV_DS2404 is not set + - [Config] # RTC_DRV_DA9052 is not set + - [Config] # RTC_DRV_DA9063 is not set + - [Config] # RTC_DRV_STK17TA8 is not set + - [Config] # RTC_DRV_M48T86 is not set + - [Config] # RTC_DRV_M48T35 is not set + - [Config] # RTC_DRV_M48T59 is not set + - [Config] # RTC_DRV_MSM6242 is not set + - [Config] # RTC_DRV_BQ4802 is not set + - [Config] # RTC_DRV_RP5C01 is not set + - [Config] # RTC_DRV_V3020 is not set + - [Config] # RTC_DRV_WM831X is not set + - [Config] # RTC_DRV_PCF50633 is not set + - [Config] # RTC_DRV_PCAP is not set + - [Config] # RTC_DRV_MC13XXX is not set + - [Config] # QCOM_HIDMA_MGMT is not set + - [Config] # QCOM_HIDMA is not set + - [Config] # DW_DMAC is not set + - [Config] # GREYBUS is not set + - [Config] # COMEDI is not set + - [Config] # SPEAKUP is not set + - [Config] # LTE_GDM724X is not set + - [Config] # GS_FPGABOOT is not set + - [Config] # WILC1000_SPI is not set + - [Config] # MOST_USB is not set + - [Config] # ACER_WMI is not set + - [Config] # ACERHDF is not set + - [Config] # ALIENWARE_WMI is not set + - [Config] # ASUS_LAPTOP is not set + - [Config] # DCDBAS is not set + - [Config] # DELL_LAPTOP is not set + - [Config] # DELL_WMI is not set + - [Config] # DELL_WMI_AIO is not set + - [Config] # DELL_SMO8800 is not set + - [Config] # DELL_RBTN is not set + - [Config] # DELL_RBU is not set + - [Config] # DELL_UART_BACKLIGHT is not set + - [Config] # FUJITSU_LAPTOP is not set + - [Config] # FUJITSU_TABLET is not set + - [Config] # AMILO_RFKILL is not set + - [Config] # HP_ACCEL is not set + - [Config] # HP_WIRELESS is not set + - [Config] # HP_WMI is not set + - [Config] # MSI_LAPTOP is not set + - [Config] # PANASONIC_LAPTOP is not set + - [Config] # COMPAL_LAPTOP is not set + - [Config] # SONY_LAPTOP is not set + - [Config] # IDEAPAD_LAPTOP is not set + - [Config] # SENSORS_HDAPS is not set + - [Config] # EEEPC_LAPTOP is not set + - [Config] # MSI_WMI is not set + - [Config] # TOPSTAR_LAPTOP is not set + - [Config] # TOSHIBA_BT_RFKILL is not set + - [Config] # TOSHIBA_HAPS is not set + - [Config] # ACPI_CMPC is not set + - [Config] # INTEL_VBTN is not set + - [Config] # IBM_RTL is not set + - [Config] # SAMSUNG_LAPTOP is not set + - [Config] # INTEL_OAKTRAIL is not set + - [Config] # SAMSUNG_Q10 is not set + - [Config] # APPLE_GMUX is not set + - [Config] # SURFACE_PRO3_BUTTON is not set + - [Config] # MFD_CROS_EC is not set + - [Config] # CHROME_PLATFORMS is not set + - [Config] # COMMON_CLK_WM831X is not set + - [Config] # COMMON_CLK_SI5351 is not set + - [Config] # COMMON_CLK_CDCE706 is not set + - [Config] # COMMON_CLK_CS2000_CP is not set + - [Config] # ALTERA_MBOX is not set + - [Config] # REMOTEPROC is not set + - [Config] # IIO is not set + - [Config] # NTB_PINGPONG is not set + - [Config] # NTB_TOOL is not set + - [Config] # NTB_PERF is not set + - [Config] # VME_USER is not set + - [Config] # PWM is not set + - [Config] # SERIAL_IPOCTAL is not set + - [Config] # BCM_KONA_USB2_PHY is not set + - [Config] # PHY_PXA_28NM_HSIC is not set + - [Config] # PHY_PXA_28NM_USB2 is not set + - [Config] # POWERCAP is not set + - [Config] # ANDROID is not set + - [Config] # STM is not set + - [Config] # INTEL_TH is not set + - [Config] # FPGA is not set + - [Config] # UNISYS_VISORBUS is not set + - [Config] # ORANGEFS_FS is not set + - [Config] # EROFS_FS_ZIP is not set + - [Config] # CRYPTO_AES_TI is not set + - [Config] # CRYPTO_DEV_QAT_C3XXX is not set + - [Config] # CRYPTO_DEV_QAT_C62X is not set + - [Config] # CRYPTO_DEV_QAT_C3XXXVF is not set + - [Config] # CRYPTO_DEV_QAT_C62XVF is not set + - [Config] # FONTS is not set + - [Config] # RUNTIME_TESTING_MENU is not set + - [Config] # SAMPLES is not set + - [Config] # EARLY_PRINTK_USB_XDBC is not set + - [Config] # ACPI_FAN is not set + - [Config] # CB710_CORE is not set + - [Config] # ALTERA_STAPL is not set + - [Config] # USB_NET_DRIVERS is not set + - [Config] # RMI4_CORE is not set + - [Config] # W1 is not set + - [Config] # MFD_WL1273_CORE is not set + - [Config] # USB_ULPI_BUS is not set + - [Config] # USB_WDM is not set + - [Config] # EXTCON is not set + - [Config] # MICROCHIP_PHY is not set + - [Config] # USB_ROLE_SWITCH is not set + - [Config] KERNEL_GZIP=y + - [Config] NO_HZ_FULL=y + - [Config] LEGACY_VSYSCALL_EMULATE=y + - [Config] ACPI_NFIT=y + - [Config] TRANSPARENT_HUGEPAGE_ALWAYS=y + - [Config] PCI_MESON=y + - [Config] BLK_DEV_NVME=y + - [Config] SCSI_FC_ATTRS=y + - [Config] VXLAN=y + - [Config] I2C=m + - [Config] GPIO_MOCKUP=m + - [Config] LEDS_CLASS=m + - [Config] INFINIBAND_IPOIB_DEBUG=y + - [Config] EDAC_DECODE_MCE=y + - [Config] HYPERV=y + - [Config] BLK_DEV_PMEM=y + - [Config] ND_BLK=y + - [Config] DEV_DAX=y + - [Config] DEV_DAX_PMEM=y + - [Config] OVERLAY_FS_REDIRECT_DIR=y + - [Config] SECURITY_APPARMOR_DEBUG=y + - [Config] LOCK_TORTURE_TEST=m + - [Config] HYPERV_STORAGE=y + - [Config] # SECURITY_APPARMOR_DEBUG_ASSERTS is not set + - [Config] # CONFIG_VBOXGUEST is not set + - [Config] CONFIG_USB_XHCI_PCI=y + - SAUCE: ubuntu/sgx: rename mmap_sem to mmap_lock + - [Config] GCC version update + + [ Ubuntu: 5.8.0-12.13 ] + + * groovy/linux: 5.8.0-12.13 -proposed tracker (LP: #1889481) + * Fix right speaker of HP laptop (LP: #1889375) + - SAUCE: hda/realtek: Fix right speaker of HP laptop + * blk_update_request error when mount nvme partition (LP: #1872383) + - SAUCE: nvme-pci: prevent SK hynix PC400 from using Write Zeroes command + * Add support for Atlantic NIC firmware v4 (LP: #1886908) + - Revert "UBUNTU: SAUCE: net: atlantic: Add support for firmware v4" + - net: atlantic: align return value of ver_match function with function name + - net: atlantic: add support for FW 4.x + * Miscellaneous Ubuntu changes + - [Debian] Fix debian/tests for linux-5.8 -> linux rename + - SAUCE: selftests/powerpc: return skip code for spectre_v2 + + [ Ubuntu: 5.8.0-11.12 ] + + * groovy/linux: 5.8.0-11.12 -proposed tracker (LP: #1889336) + * Miscellaneous Ubuntu changes + - [Packaging] dwarves is not required for linux-libc-dev or stage1 + + [ Ubuntu: 5.8.0-10.11 ] + + * groovy/linux: 5.8.0-10.11 -proposed tracker (LP: #1889316) + * Miscellaneous Ubuntu changes + - [Packaging] Add more packages to Build-Depends-Indep for docs + - [Debian] Specify python executable in kmake + - [Debian] Don't treat warnings as errors during perf builds + - [Config] Disable signing for ppc64el + + [ Ubuntu: 5.8.0-9.10 ] + + * groovy/linux: 5.8.0-9.10 -proposed tracker (LP: #1889140) + * Packaging resync (LP: #1786013) + - [Packaging] update helper scripts + * Miscellaneous Ubuntu changes + - SAUCE: Fix s390x compile error on F32 utils/stat-display.c + - [Packaging] Add python3-venv to Build-Depends-Indep + + [ Ubuntu: 5.8.0-8.9 ] + + * groovy/linux: 5.8.0-8.9 -proposed tracker (LP: #1889104) + * Packaging resync (LP: #1786013) + - [Packaging] update helper scripts + - update dkms package versions + - [Packaging] update variants + * Introduce the new NVIDIA 450-server and the 450 UDA series (LP: #1887674) + - [Packaging] NVIDIA -- Add signed modules for 450 450-server + * Introduce the new NVIDIA 418-server and 440-server series, and update the + current NVIDIA drivers (LP: #1881137) + - [packaging] add signed modules for the 418-server and the 440-server + flavours + * Miscellaneous Ubuntu changes + - SAUCE: Revert "radix-tree: Use local_lock for protection" + - [Config] CONFIG_DEBUG_INFO_COMPRESSED=n + - [Config] disable CONFIG_CRYPTO_AEGIS128_SIMD + - [Config] Enable nvidia dkms build + * Miscellaneous upstream changes + - usbip: tools: fix build error for multiple definition + * Rebase to v5.8-rc7 + + [ Ubuntu: 5.8.0-7.8 ] + + * Empty entry + + [ Ubuntu: 5.8.0-7.8 ] + + * soc/amd/renoir: detect dmic from acpi table (LP: #1887734) + - ASoC: amd: add logic to check dmic hardware runtime + - ASoC: amd: add ACPI dependency check + - ASoC: amd: fixed kernel warnings + * linux 4.15.0-109-generic network DoS regression vs -108 (LP: #1886668) + - SAUCE: Revert "netprio_cgroup: Fix unlimited memory leak of v2 cgroups" + * Add support for Atlantic NIC firmware v4 (LP: #1886908) + - SAUCE: net: atlantic: Add support for firmware v4 + * MGA G200e doesn't work under GDM Wayland (LP: #1886140) + - drm/mgag200: Remove HW cursor + - drm/mgag200: Clean up mga_set_start_address() + - drm/mgag200: Clean up mga_crtc_do_set_base() + - drm/mgag200: Move mode-setting code into separate helper function + - drm/mgag200: Split MISC register update into PLL selection, SYNC and I/O + - drm/mgag200: Update mode registers after plane registers + - drm/mgag200: Set pitch in a separate helper function + - drm/mgag200: Set primary plane's format in separate helper function + - drm/mgag200: Move TAGFIFO reset into separate function + - drm/mgag200: Move hiprilvl setting into separate functions + - drm/mgag200: Move register initialization into separate function + - drm/mgag200: Remove out-commented suspend/resume helpers + - drm/mgag200: Use simple-display data structures + - drm/mgag200: Convert to simple KMS helper + - drm/mgag200: Replace VRAM helpers with SHMEM helpers + * Miscellaneous Ubuntu changes + - SAUCE: s390/bpf: fix sign extension in branch_ku + - SAUCE: selftests: net: ip_defrag: modprobe missing nf_defrag_ipv6 support + - SAUCE: selftests: fib_nexthop_multiprefix: fix cleanup() netns deletion + - [packaging] debhelper-compat (= 10) (and retire debian/compat) + - [Config] Update configs after rebase to 5.8-rc6 + * Rebase to v5.8-rc6 + + [ Ubuntu: 5.8.0-6.7 ] + + * Packaging resync (LP: #1786013) + - update dkms package versions + * perf build broken after updating to bintuils 2.34.90.20200706-1ubuntu1 + (LP: #1887397) + - SAUCE: libtraceevent: Strip symbol version from nm output + + [ Ubuntu: 5.8.0-5.6 ] + + * linux-libc-dev broken for crossbuilding, Multi-Arch:same violation + (LP: #1886188) + - [Packaging] Produce linux-libc-deb package for riscv64 + - [Debian] Disallow building linux-libc-dev from linux-riscv + * Miscellaneous Ubuntu changes + - SAUCE: Revert "UBUNTU: SAUCE: test_bpf: remove expected fail for Ctx heavy + transformations test on s390" + - SAUCE: Revert "test_bpf: flag tests that cannot be jited on s390" + - [Config] Update configs (gcc update) + * Rebase to v5.8-rc5 + + [ Ubuntu: 5.8.0-4.5 ] + + * Add generic LED class support for audio LED (LP: #1885896) + - ALSA: hda: generic: Always call led-trigger for mic mute LED + - ALSA: hda: generic: Add a helper for mic-mute LED with LED classdev + - ALSA: hda/realtek: Convert to cdev-variant of mic-mute LED controls + - ALSA: hda/conexant: Convert to cdev-variant of mic-mute LED controls + - ALSA: hda/sigmatel: Convert to cdev-variant of mic-mute LED controls + - ALSA: hda: generic: Drop unused snd_hda_gen_fixup_micmute_led() + - ALSA: hda: generic: Drop the old mic-mute LED hook + - ALSA: hda: generic: Add vmaster mute LED helper + - ALSA: hda/realtek: Use the new vmaster mute LED helper + - ALSA: hda/conexant: Use the new vmaster mute LED helper + - ALSA: hda/sigmatel: Use the new vmaster mute LED helper + - ALSA: hda/realtek: Unify LED helper code + - ALSA: hda: Let LED cdev handling suspend/resume + * seccomp_bpf fails on powerpc (LP: #1885757) + - SAUCE: selftests/seccomp: fix ptrace tests on powerpc + * CVE-2020-11935 + - SAUCE: aufs: do not call i_readcount_inc() + * Miscellaneous Ubuntu changes + - SAUCE: Update aufs to 5.x-rcN 20200622 + - [Config] Update configs to set CONFIG_SND_HDA_GENERIC_LEDS value + - [Config] CONFIG_SECURITY_DMESG_RESTRICT=y + * Rebase to v5.8-rc4 + + [ Ubuntu: 5.8.0-3.4 ] + + * Packaging resync (LP: #1786013) + - [Packaging] update helper scripts + - update dkms package versions + * lxc 1:4.0.2-0ubuntu1 ADT test failure with linux-5.8 5.8.0-1.2 + (LP: #1884635) + - SAUCE: overlayfs: fix faulty rebase + * shiftfs: O_TMPFILE reports ESTALE (LP: #1872757) + - SAUCE: shiftfs: prevent ESTALE for LOOKUP_JUMP lookups + * shiftfs: fix btrfs regression (LP: #1884767) + - SAUCE: Revert "UBUNTU: SAUCE: shiftfs: fix dentry revalidation" + * Miscellaneous Ubuntu changes + - [Config] CONFIG_DEBUG_INFO_COMPRESSED=y + - SAUCE: regulator: rename da903x to da903x-regulator + - [Config] Add da903x to modules.ignore + - [Config] Update configs for rebase to 5.8-rc3 + * Rebase to v5.8-rc3 + + [ Ubuntu: 5.8.0-2.3 ] + + * Support Audio Mute LED for two new HP laptops (LP: #1884251) + - ALSA: hda/realtek: Add mute LED and micmute LED support for HP systems + * CVE-2019-16089 + - SAUCE: nbd_genl_status: null check for nla_nest_start + * tpm: fix TIS locality timeout problems (LP: #1881710) + - SAUCE: tpm: fix TIS locality timeout problems + * Packaging resync (LP: #1786013) + - update dkms package versions + * Miscellaneous Ubuntu changes + - SAUCE: security,perf: Allow further restriction of perf_event_open + - [Config] CONFIG_SECURITY_PERF_EVENTS_RESTRICT=y + - [Config] Update configs and annotations for 5.8-rc2 + - [Config] Enable zfs + - [Config] Enable CONFIG_DEBUG_INFO_BTF + * Rebase to v5.8-rc2 + + [ Ubuntu: 5.8.0-1.2 ] + + * Miscellaneous Ubuntu changes + - [Debian] Support linux-x.y in udeb package names + - [Packaging] Use SRCPKGNAME for udeb packages + + [ Ubuntu: 5.8.0-0.1 ] + + * Docker registry doesn't stay up and keeps restarting (LP: #1879690) + - Revert "UBUNTU: SAUCE: overlayfs: use shiftfs hacks only with shiftfs as underlay" + * Packaging resync (LP: #1786013) + - [Packaging] update variants + * Miscellaneous Ubuntu changes + - [Packaging] Update source package name to linux-5.8 + - SAUCE: (lockdown) Add efi_status_to_str() and rework efi_status_to_err(). + - SAUCE: (lockdown) Make get_cert_list() use efi_status_to_str() to print error messages. + - SAUCE: (lockdown) security: lockdown: expose a hook to lock the kernel down + - SAUCE: (lockdown) efi: Add an EFI_SECURE_BOOT flag to indicate secure boot mode + - SAUCE: (lockdown) efi: Lock down the kernel if booted in secure boot mode + - SAUCE: (lockdown) s390: Lock down the kernel when the IPL secure flag is set + - SAUCE: (lockdown) KEYS: Make use of platform keyring for module signature verify + - SAUCE: (lockdown) arm64: Allow locking down the kernel under EFI secure boot + - SAUCE: (lockdown) security: lockdown: Make CONFIG_LOCK_DOWN_IN_EFI_SECURE_BOOT more generic + - SAUCE: (lockdown) powerpc: lock down kernel in secure boot mode + - SAUCE: Import aufs driver + - [Config] Update configs for v5.8-rc1 + - [Config] Update annotations for v5.8-rc1 config changes + - SAUCE: shiftfs -- Fix build errors from missing fiemap definitions + - Disable hio driver + * Miscellaneous upstream changes + - acpi: disallow loading configfs acpi tables when locked down + * Rebase to v5.8-rc1 + + [ Ubuntu: 5.8.0-0.0 ] + + * Empty entry + + [ Ubuntu: 5.7.0-8.9 ] + + * Packaging resync (LP: #1786013) + - update dkms package versions + * Enforce all config annotations (LP: #1879327) + - [Config]: do not enforce CONFIG_VERSION_SIGNATURE + - [Config]: prepare to enforce all + - [Config]: enforce all config options + * Miscellaneous Ubuntu changes + - [Config]: annotations review after 5.7 rebase + - [Config] annotations: IXP4XX* depends on ARCH_IXP4XX + - [Config] THERMAL_GOV_POWER_ALLOCATOR=y + - [Config] annotations: SOC_CAMERA is marked as BROKEN + - [Config] annotations: NFSD_V4_2_INTER_SSC depends on NFS_FS=y + - [Config] annotations: CRYPTO_DEV_CHELSIO_TLS depends on legacy (and largely + unmantained) TLS_TOE + - [Config] annotations: SERIO_OLPC_APSP depends on ARCH_MMP + - [Config] RTW88_DEBUG=y + - [Config] annotations: ISDN_CAPI is a bool, and BT_CMTP depends on it + - [Config] annotations SND_SOC_SOF_DEVELOPER_SUPPORT depends on + SND_SOC_SOF_DEVELOPER_SUPPORT + - [Config] annotations: SND_SOC_SOF_BAYTRAIL_SUPPORT is mutually exclusive + with SND_SST_ATOM_HIFI2_PLATFORM_ACPI + - [Config] annotations: DEBUG_IMX_UART_PORT is defined only any + DEBUG_IMX*_UART is enabled + - [Config] annotations: HW_RANDOM_IMX_RNGC depends on SOC_IMX25 + - [Config] annotations: armhf: VIRTUALIZATION support was removed for arm32 + - [Config] annotations: arm64: remove DEBUG_ALIGN_RODATA + - [Config] annotations: ppc64: DATA_SHIFT defaults to PPC_PAGE_SHIFT + - [Config] arm64: enforce ARM64_USE_LSE_ATOMICS + - [Config] s390x: MOST is not set + - [Config] s390x: BCM84881_PHY is not set + - [Config] s390x: XILINX_LL_TEMAC is not set + - [Config] s390x: PHY_INTEL_EMMC requires GENERIC_PHY (off by default on + s390x) + - [Config] s390x: CHECK_STACK conflicts with VMAP_STACK + - [Config] annotations: s390x: NODES_SHIFT=1 + - [Config] annotations: import new symbols + - [Config] annotations: remove unmatched menu and options + + [ Ubuntu: 5.7.0-7.8 ] + + * Packaging resync (LP: #1786013) + - update dkms package versions + - [Packaging] update helper scripts + * [UBUNTU 20.04] s390x/pci: fix linking between PF and VF for multifunction + devices (LP: #1879704) + - PCI/IOV: Introduce pci_iov_sysfs_link() function + - s390/pci: create links between PFs and VFs + * Miscellaneous Ubuntu changes + - [Config] Disable UEFI signing for arm64 + - Rebase to v5.7.1 + * Rebase to v5.7.1 + + [ Ubuntu: 5.7.0-6.7 ] + + * Packaging resync (LP: #1786013) + - [Packaging] update helper scripts + - update dkms package versions + * shiftfs: fix btrfs snapshot deletion (LP: #1879688) + - SAUCE: shiftfs: let userns root destroy subvolumes from other users + * seccomp_benchmark times out on eoan (LP: #1881576) + - SAUCE: selftests/seccomp: use 90s as timeout + * Realtek 8723DE [10ec:d723] subsystem [10ec:d738] disconnects unsolicitedly + when Bluetooth is paired: Reason: 23=IEEE8021X_FAILED (LP: #1878147) + - SAUCE: Revert "UBUNTU: SAUCE: rtw88: Move driver IQK to set channel before + association for 11N chip" + - SAUCE: Revert "UBUNTU: SAUCE: rtw88: fix rate for a while after being + connected" + - SAUCE: Revert "UBUNTU: SAUCE: rtw88: No retry and report for auth and assoc" + - SAUCE: Revert "UBUNTU: SAUCE: rtw88: 8723d: Add coex support" + - rtw88: 8723d: Add coex support + - SAUCE: rtw88: coex: 8723d: set antanna control owner + - SAUCE: rtw88: coex: 8723d: handle BT inquiry cases + - SAUCE: rtw88: fix EAPOL 4-way failure by finish IQK earlier + * ASoC/amd: add audio driver for amd renoir (LP: #1881046) + - ASoC: amd: add Renoir ACP3x IP register header + - ASoC: amd: add Renoir ACP PCI driver + - ASoC: amd: add acp init/de-init functions + - ASoC: amd: create acp3x pdm platform device + - ASoC: amd: add ACP3x PDM platform driver + - ASoC: amd: irq handler changes for ACP3x PDM dma driver + - ASoC: amd: add acp3x pdm driver dma ops + - ASoC: amd: add ACP PDM DMA driver dai ops + - ASoC: amd: add Renoir ACP PCI driver PM ops + - ASoC: amd: add ACP PDM DMA driver pm ops + - ASoC: amd: enable Renoir acp3x drivers build + - ASoC: amd: create platform devices for Renoir + - ASoC: amd: RN machine driver using dmic + - ASoC: amd: enable build for RN machine driver + - ASoC: amd: fix kernel warning + - ASoC: amd: refactoring dai_hw_params() callback + - ASoC: amd: return error when acp de-init fails + - [Config]: enable amd renoir ASoC audio + * Slow send speed with Intel I219-V on Ubuntu 18.04.1 (LP: #1802691) + - e1000e: Disable TSO for buffer overrun workaround + * Fix incorrect speed/duplex when I210 device is runtime suspended + (LP: #1880656) + - igb: Report speed and duplex as unknown when device is runtime suspended + * Fix Pericom USB controller OHCI/EHCI PME# defect (LP: #1879321) + - serial: 8250_pci: Move Pericom IDs to pci_ids.h + - PCI: Avoid Pericom USB controller OHCI/EHCI PME# defect + * [UBUNTU 20.04] s390x/pci: enumerate pci functions per physical adapter + (LP: #1874056) + - s390/pci: Expose new port attribute for PCIe functions + - s390/pci: adaptation of iommu to multifunction + - s390/pci: define kernel parameters for PCI multifunction + - s390/pci: define RID and RID available + - s390/pci: create zPCI bus + - s390/pci: adapt events for zbus + - s390/pci: Handling multifunctions + - s390/pci: Do not disable PF when VFs exist + - s390/pci: Documentation for zPCI + - s390/pci: removes wrong PCI multifunction assignment + * add 16-bit width registers support for EEPROM at24 device (LP: #1876699) + - regmap-i2c: add 16-bit width registers support + * Miscellaneous Ubuntu changes + - [Config] Enable virtualbox guest and shared-folder modules + * Rebase to v5.7 + + [ Ubuntu: 5.7.0-5.6 ] + + * Packaging resync (LP: #1786013) + - update dkms package versions + * [UBUNTU 20.04] PSI generates overhead on s390x (LP: #1876044) + - Ubuntu: [Config] CONFIG_PSI is enabled by default, but creates additional + overhead on s390x, hence should be disabled by default on s390x only. + * Miscellaneous Ubuntu changes + - Rebase to v5.7-rc7 + - [Config] ppc64el: disable STRICT_KERNEL_RWX + * Rebase to v5.7-rc7 + + [ Ubuntu: 5.7.0-4.5 ] + + * Packaging resync (LP: #1786013) + - update dkms package versions + * update-initramfs complains of missing amdgpu firmware files (LP: #1873325) + - SAUCE: drm/amdgpu: Remove unreleased arcturus and navi12 firmware from + modinfo + * Support DMIC micmute LED on HP platforms (LP: #1876859) + - ALSA: hda/realtek - Introduce polarity for micmute LED GPIO + - ALSA: hda/realtek - Enable micmute LED on and HP system + - ALSA: hda/realtek - Add LED class support for micmute LED + - ALSA: hda/realtek - Fix unused variable warning w/o + CONFIG_LEDS_TRIGGER_AUDIO + - ASoC: SOF: Update correct LED status at the first time usage of + update_mute_led() + * Killer(R) Wi-Fi 6 AX1650i 160MHz Wireless Network Adapter (201NGW), + REV=0x354 [8086:a0f0] subsystem id [1a56:1651] wireless adapter not found + due to firmware crash (LP: #1874685) + - SAUCE: iwlwifi: pcie: handle QuZ configs with killer NICs as well + * rtkit-daemon[*]: Failed to make ourselves RT: Operation not permitted after + upgrade to 20.04 (LP: #1875665) + - [Config] Turn off CONFIG_RT_GROUP_SCHED everywhere + * Unable to handle kernel pointer dereference in virtual kernel address space + on Eoan (LP: #1876645) + - SAUCE: overlayfs: fix shitfs special-casing + * Miscellaneous Ubuntu changes + - SAUCE: skip building selftest 'runqslower' if kernel not built + - Rebase to v5.7-rc6 + - [Config] updateconfigs after 5.7-rc6 rebase + * Rebase to v5.7-rc6 + + [ Ubuntu: 5.7.0-3.4 ] + + * Rebase to v5.7-rc5 + * Packaging resync (LP: #1786013) + - update dkms package versions + * getitimer returns it_value=0 erroneously (LP: #1349028) + - [Config] CONTEXT_TRACKING_FORCE policy should be unset + * lockdown on power (LP: #1855668) // Ubuntu Kernel Support for OpenPOWER NV + Secure & Trusted Boot (LP: #1866909) + - [Config] Enable configs for OpenPOWER NV Secure & Trusted Boot + * Miscellaneous Ubuntu changes + - SAUCE: Import aufs driver + - [Config] Enable aufs + - [Config] annotations: remove SND_SOC_SOF_HDA_COMMON_HDMI_CODEC + - [Config] Remove CONFIG_SND_HDA_INTEL_DETECT_DMIC from annotations + - [Debian] final-checks -- Do not remove ~* from abi + - [Config] Enable 5-level page table support for x86 + - [Config] updateconfigs after 5.7-rc5 rebase + + [ Ubuntu: 5.7.0-2.3 ] + + * Packaging resync (LP: #1786013) + - [Packaging] update helper scripts + - update dkms package versions + - [Packaging] update helper scripts + * ASUS T100HAN boots to a blank screen with a cursor [i965: Failed to submit + batchbuffer: Input/output error] (LP: #1860754) + - [Config] CONFIG_PMIC_OPREGION=y and CONFIG_GPIO_CRYSTAL_COVE=y for amd64 + * ubuntu/focal64 fails to mount Vagrant shared folders (LP: #1873506) + - [Packaging] Move virtualbox modules to linux-modules + - [Packaging] Remove vbox and zfs modules from generic.inclusion-list + * built-using constraints preventing uploads (LP: #1875601) + - temporarily drop Built-Using data + * dkms artifacts may expire from the pool (LP: #1850958) + - [Packaging] autoreconstruct -- manage executable debian files + - [packaging] handle downloads from the librarian better + * Add signed modules for the 435 NVIDIA driver (LP: #1875888) + - [Packaging] NVIDIA -- add signed modules for the 435 NVIDIA driver + * [Selftests] Apply various fixes and improvements (LP: #1870543) + - SAUCE: selftests/seccomp -- Disable timeout for seccomp tests + * [17.04 FEAT] Integrate kernel message catalogue for s390x into Ubuntu + distribution (LP: #1628889) + - SAUCE: s390: kernel message catalog + * Overlayfs in user namespace leaks directory content of inaccessible + directories (LP: #1793458) // CVE-2018-6559 + - SAUCE: overlayfs: ensure mounter privileges when reading directories + * suspend only works once on ThinkPad X1 Carbon gen 7 (LP: #1865570) + - SAUCE: e1000e: Disable s0ix flow for X1 Carbon 7th + * [ICL] TC port in legacy/static mode can't be detected due TCCOLD + (LP: #1868936) + - drm/i915/display: Move out code to return the digital_port of the aux ch + - drm/i915/display: Add intel_legacy_aux_to_power_domain() + - drm/i915/display: Split hsw_power_well_enable() into two + - drm/i915/tc/icl: Implement TC cold sequences + - drm/i915/tc: Skip ref held check for TC legacy aux power wells + - drm/i915/tc/tgl: Implement TC cold sequences + - drm/i915/tc: Catch TC users accessing FIA registers without enable aux + - drm/i915/tc: Do not warn when aux power well of static TC ports timeout + * Touchpad doesn't work on Dell Inspiron 7000 2-in-1 (LP: #1851901) + - Revert "UBUNTU: SAUCE: mfd: intel-lpss: add quirk for Dell XPS 13 7390 + 2-in-1" + * 'Elan touchpad' not detected on 'Lenovo ThinkBook 15 IIL' (LP: #1861610) + - SAUCE: Input: elan_i2c - add more hardware ID for Lenovo laptop + * linux-image-5.0.0-35-generic breaks checkpointing of container + (LP: #1857257) + - SAUCE: overlayfs: use shiftfs hacks only with shiftfs as underlay + * alsa/sof: kernel oops on the machine without Intel hdmi audio codec (a + regression in the asoc machine driver) (LP: #1874359) + - ASoC: intel/skl/hda - fix oops on systems without i915 audio codec + * Add debian/rules targets to compile/run kernel selftests (LP: #1874286) + - [Packaging] add support to compile/run selftests + * 5.4.0-24.28 does not seem to apply rtprio, whereas -21 does. (LP: #1873315) + - [Config] lowlatency: turn off RT_GROUP_SCHED + * alsa/sof: external mic can't be deteced on Lenovo and HP laptops + (LP: #1872569) + - SAUCE: ASoC: intel/skl/hda - set autosuspend timeout for hda codecs + * shiftfs: O_TMPFILE reports ESTALE (LP: #1872757) + - SAUCE: shiftfs: fix dentry revalidation + * shiftfs: broken shiftfs nesting (LP: #1872094) + - SAUCE: shiftfs: record correct creator credentials + * lockdown on power (LP: #1855668) + - SAUCE: (lockdown) powerpc: lock down kernel in secure boot mode + * Add support for Realtek 8723DE wireless adapter (LP: #1780590) + - SAUCE: rtw88: add adaptivity support for EU/JP regulatory + - SAUCE: rtw88: update tx descriptor of mgmt and rsvd page packets + - SAUCE: rtw88: sar: dump sar information via debugfs + - SAUCE: rtw88: 8723d: add IQ calibration + - SAUCE: rtw88: 8723d: Add power tracking + - SAUCE: rtw88: 8723d: implement flush queue + - SAUCE: rtw88: 8723d: set ltecoex register address in chip_info + - SAUCE: rtw88: 8723d: Add coex support + - SAUCE: rtw88: 8723d: Add shutdown callback to disable BT USB suspend + * Fix authentication fail on Realtek WiFi 8723de (LP: #1871300) + - SAUCE: rtw88: No retry and report for auth and assoc + - SAUCE: rtw88: fix rate for a while after being connected + - SAUCE: rtw88: Move driver IQK to set channel before association for 11N chip + * Miscellaneous Ubuntu changes + - SAUCE: rtw88: fix 'const' mismatch in power suequence hooks + - SAUCE: rtw88: fix 'const' mismatch in + __priority_queue_cfg_legacy()/__priority_queue_cfg() + - [Config] RTW88=m + - SAUCE: (lockdown) Revert carried-forward lockdown patches + - SAUCE: (lockdown) Add efi_status_to_str() and rework efi_status_to_err(). + - SAUCE: (lockdown) Make get_cert_list() use efi_status_to_str() to print + error messages. + - SAUCE: (lockdown) security: lockdown: expose a hook to lock the kernel down + - SAUCE: (lockdown) efi: Add an EFI_SECURE_BOOT flag to indicate secure boot + mode + - SAUCE: (lockdown) efi: Lock down the kernel if booted in secure boot mode + - SAUCE: (lockdown) s390: Lock down the kernel when the IPL secure flag is set + - SAUCE: (lockdown) KEYS: Make use of platform keyring for module signature + verify + - SAUCE: (lockdown) arm64: Allow locking down the kernel under EFI secure boot + - SAUCE: (lockdown) security: lockdown: Make + CONFIG_LOCK_DOWN_IN_EFI_SECURE_BOOT more generic + - [Config] Add back CONFIG_LOCK_DOWN_IN_SECURE_BOOT annotation for ppc64el + - [Config] CONFIG_RT_GROUP_SCHED=y + - [Packaging] Include modules.builtin.modinfo in linux-modules + - SAUCE: LSM: Infrastructure management of the sock security + - SAUCE: Fix-up af_unix mediation for sock infrastructure management + - SAUCE: Revert "apparmor: Allow filtering based on secmark policy" + - SAUCE: Revert "apparmor: Parse secmark policy" + - SAUCE: Revert "apparmor: Add a wildcard secid" + - SAUCE: Revert "apparmor: fixup secid map conversion to using IDR" + - SAUCE: Revert "apparmor: Use an IDR to allocate apparmor secids" + - SAUCE: Revert "apparmor: add support for mapping secids and using secctxes" + - Update dropped.txt for restored apparmor patches + - Remove lockdown patches from dropped.txt + - SAUCE: powerpc/ima: require IMA module signatures only if MODULE_SIG is not + enabled + - SAUCE: selftests/ftrace: Use printf instead of echo in kprobe syntax error + tests + - SAUCE: selftests/net -- disable l2tp.sh test + - SAUCE: selftests/net -- disable timeout + - SAUCE: tools: hv: Update shebang to use python3 instead of python + - Remove dropped.txt + - [Packaging] move linux-doc and linux-libc-dev stubs to debian.master + - [Debian] Support generating configs for riscv64 + - [Config] CONFIG_KMSG_IDS=y for s390x + - [Packaging] add libcap-dev dependency + - [Config] CONFIG_AD5770R=m + - [Config] CONFIG_AL3010=m + - [Config] CONFIG_APPLE_MFI_FASTCHARGE=m + - [Config] CONFIG_BAREUDP=m + - [Config] CONFIG_CRYPTO_DEV_OCTEONTX_CPT=m + - [Config] CONFIG_CRYPTO_DEV_ZYNQMP_AES=m + - [Config] CONFIG_DRM_DISPLAY_CONNECTOR=m + - [Config] CONFIG_DRM_PANEL_BOE_TV101WUM_NL6=m + - [Config] CONFIG_DRM_PANEL_ELIDA_KD35T133=m + - [Config] CONFIG_DRM_PANEL_FEIXIN_K101_IM2BA02=m + - [Config] CONFIG_DRM_PANEL_NOVATEK_NT35510=m + - [Config] CONFIG_DRM_PANEL_SAMSUNG_S6E88A0_AMS452EF01=m + - [Config] CONFIG_DRM_PARADE_PS8640=m + - [Config] CONFIG_DRM_SIMPLE_BRIDGE=m + - [Config] CONFIG_DRM_TIDSS=m + - [Config] CONFIG_DRM_TI_TPD12S015=m + - [Config] CONFIG_DRM_TOSHIBA_TC358768=m + - [Config] CONFIG_EDAC_DMC520=m + - [Config] CONFIG_EXFAT_FS=m + - [Config] CONFIG_GP2AP002=m + - [Config] CONFIG_GPIO_MLXBF2=m + - [Config] CONFIG_HID_GLORIOUS=m + - [Config] CONFIG_HID_MCP2221=m + - [Config] CONFIG_HMC425=m + - [Config] CONFIG_ICP10100=m + - [Config] CONFIG_IMX8MM_THERMAL=m + - [Config] CONFIG_IMX_SC_THERMAL=m + - [Config] CONFIG_INTERCONNECT_QCOM_OSM_L3=m + - [Config] CONFIG_INTERCONNECT_QCOM_SC7180=m + - [Config] CONFIG_K3_RTI_WATCHDOG=m + - [Config] CONFIG_MDIO_IPQ8064=m + - [Config] CONFIG_MDIO_MVUSB=m + - [Config] CONFIG_MHI_BUS=m + - [Config] CONFIG_OCTEONTX2_VF=m + - [Config] CONFIG_PHY_CADENCE_TORRENT=m + - [Config] CONFIG_PHY_QCOM_USB_HS_28NM=m + - [Config] CONFIG_PHY_QCOM_USB_SS=m + - [Config] CONFIG_PINCTRL_DA9062=m + - [Config] CONFIG_PINCTRL_IPQ6018=m + - [Config] CONFIG_PTP_1588_CLOCK_IDT82P33=m + - [Config] CONFIG_PTP_1588_CLOCK_VMW=m + - [Config] CONFIG_QCOM_IPA=m + - [Config] CONFIG_REGULATOR_MP5416=m + - [Config] CONFIG_REGULATOR_MP886X=m + - [Config] CONFIG_RN5T618_ADC=m + - [Config] CONFIG_RTC_DRV_MT2712=m + - [Config] CONFIG_RTC_DRV_RC5T619=m + - [Config] CONFIG_SC_MSS_7180=m + - [Config] CONFIG_SENSORS_AXI_FAN_CONTROL=m + - [Config] CONFIG_SM_GCC_8250=m + - [Config] CONFIG_SND_BCM63XX_I2S_WHISTLER=m + - [Config] CONFIG_SND_MESON_AIU=m + - [Config] CONFIG_SND_MESON_G12A_TOACODEC=m + - [Config] CONFIG_SND_MESON_GX_SOUND_CARD=m + - [Config] CONFIG_SND_SOC_AMD_RV_RT5682_MACH=m + - [Config] CONFIG_SND_SOC_INTEL_SOF_PCM512x_MACH=m + - [Config] CONFIG_SND_SOC_MESON_T9015=m + - [Config] CONFIG_SND_SOC_RT5682_SDW=m + - [Config] CONFIG_SND_SOC_TLV320ADCX140=m + - [Config] CONFIG_SPI_FSI=m + - [Config] CONFIG_SPI_MTK_NOR=m + - [Config] CONFIG_SPI_MUX=m + - [Config] CONFIG_SPRD_THERMAL=m + - [Config] CONFIG_SURFACE_3_POWER_OPREGION=m + - [Config] CONFIG_TINYDRM_ILI9486=m + - [Config] CONFIG_TI_K3_AM65_CPSW_NUSS=m + - [Config] CONFIG_TYPEC_MUX_INTEL_PMC=m + - [Config] CONFIG_UACCE=m + - [Config] CONFIG_UNIPHIER_XDMAC=m + - [Config] CONFIG_USB_MAX3420_UDC=m + - [Config] CONFIG_USB_RAW_GADGET=m + - [Config] CONFIG_VHOST_VDPA=m + - [Config] CONFIG_VIDEO_IMX219=m + - [Config] CONFIG_VIDEO_SUN8I_ROTATE=m + - [Config] CONFIG_VIRTIO_VDPA=m + - [Config] CONFIG_MOST_COMPONENTS=m + - [Config] CONFIG_MFD_IQS62X=m + - packaging: getabis: switch to ckt-ppa:bootstrap/linux-5.7 + * Miscellaneous upstream changes + - Revert "UBUNTU: SAUCE: rtw88: add rtw_read8_mask and rtw_read16_mask" + - Revert "UBUNTU: SAUCE: drm/i915/fbc: disable framebuffer compression on + IceLake" + - Revert "UBUNTU: SAUCE: platform/x86: dell-uart-backlight: move retry block" + + [ Ubuntu: 5.7.0-1.2 ] + + * Packaging resync (LP: #1786013) + - [Packaging] update helper scripts + * Miscellaneous Ubuntu changes + - SAUCE: hio: pass make_request ptr directly to blk_alloc_queue() + - SAUCE: hio: locally define disk_map_sector_rcu() + - SAUCE: hio: Revert "block: unexport disk_map_sector_rcu" + - SAUCE: hio: include + - [Config] amd64: i386: HIO=m + - [Config] updateconfigs after 5.7-rc3 rebase + + [ Ubuntu: 5.7.0-0.1 ] + + * Miscellaneous Ubuntu changes + - [Config] updateconfigs after rebase to 5.7-rc1 + * Rebase to v5.7-rc1 + * Rebase to v5.7-rc2 + + [ Ubuntu: 5.7.0-0.0 ] + + * Dummy entry + + [ Ubuntu: 5.6.0-7.7 ] + + * Packaging resync (LP: #1786013) + - update dkms package versions + * Kernel Oops - general protection fault: 0000 [#1] SMP PTI after + disconnecting thunderbolt docking station (LP: #1864754) + - SAUCE: ptp: free ptp clock properly + * swap storms kills interactive use (LP: #1861359) + - SAUCE: mm/page_alloc.c: disable memory reclaim watermark boosting by default + * sysfs: incorrect network device permissions on network namespace change + (LP: #1865359) + - sysfs: add sysfs_file_change_owner() + - sysfs: add sysfs_link_change_owner() + - sysfs: add sysfs_group{s}_change_owner() + - sysfs: add sysfs_change_owner() + - device: add device_change_owner() + - drivers/base/power: add dpm_sysfs_change_owner() + - net-sysfs: add netdev_change_owner() + - net-sysfs: add queue_change_owner() + - net: fix sysfs permssions when device changes network namespace + - sysfs: fix static inline declaration of sysfs_groups_change_owner() + * Miscellaneous Ubuntu changes + - [Config] updateconfigs after rebase to 5.6 + * Rebase to v5.6 + + [ Ubuntu: 5.6.0-6.6 ] + + * suspend only works once on ThinkPad X1 Carbon gen 7 (LP: #1865570) + - SAUCE: e1000e: Disable s0ix flow for X1 Carbon 7th + * Make Dell WD19 dock more reliable after suspend (LP: #1868217) + - xhci: Ensure link state is U3 after setting USB_SS_PORT_LS_U3 + - xhci: Wait until link state trainsits to U0 after setting USB_SS_PORT_LS_U0 + - xhci: Finetune host initiated USB3 rootport link suspend and resume + * update-version-dkms doesn't add a BugLink (LP: #1867790) + - [Packaging] Add BugLink to update-version-dkms commit + * Add support for Realtek 8723DE wireless adapter (LP: #1780590) + - SAUCE: rtw88: add regulatory process strategy for different chipset + - SAUCE: rtw88: support dynamic user regulatory setting + - SAUCE: rtw88: Use secondary channel offset enumeration + - SAUCE: rtw88: 8822c: modify rf protection setting + - SAUCE: rtw88: disable TX-AMSDU on 2.4G band + - SAUCE: Revert "rtw88: disable TX-AMSDU on 2.4G band" + - SAUCE: rtw88: disable TX-AMSDU on 2.4G band + - SAUCE: rtw88: remove unused parameter vif in rtw_lps_pg_info_get() + - SAUCE: rtw88: add rtw_read8_mask and rtw_read16_mask + - SAUCE: rtw88: pci: 8822c should set clock delay to zero + - SAUCE: rtw88: move rtw_enter_ips() to the last when config + - SAUCE: rtw88: avoid holding mutex for cancel_delayed_work_sync() + - SAUCE: rtw88: add ciphers to suppress error message + - SAUCE: rtw88: 8822c: update power sequence to v16 + - SAUCE: rtw88: Fix incorrect beamformee role setting + - SAUCE: rtw88: don't hold all IRQs disabled for PS operations + - SAUCE: rtw88: extract alloc rsvd_page and h2c skb routines + - SAUCE: rtw88: associate reserved pages with each vif + - SAUCE: rtw88: add adaptivity support for EU/JP regulatory + - SAUCE: rtw88: 8723d: Add basic chip capabilities + - SAUCE: rtw88: 8723d: add beamform wrapper functions + - SAUCE: rtw88: 8723d: Add power sequence + - SAUCE: rtw88: 8723d: Add RF read/write ops + - SAUCE: rtw88: 8723d: Add mac/bb/rf/agc/power_limit tables + - SAUCE: rtw88: 8723d: Add cfg_ldo25 to control LDO25 + - SAUCE: rtw88: 8723d: Add new chip op efuse_grant() to control efuse access + - SAUCE: rtw88: 8723d: Add read_efuse to recognize efuse info from map + - SAUCE: rtw88: add legacy firmware download for 8723D devices + - SAUCE: rtw88: no need to send additional information to legacy firmware + - SAUCE: rtw88: 8723d: Add mac power-on/-off function + - SAUCE: rtw88: decompose while(1) loop of power sequence polling command + - SAUCE: rtw88: 8723d: 11N chips don't support H2C queue + - SAUCE: rtw88: 8723d: implement set_tx_power_index ops + - SAUCE: rtw88: 8723d: Organize chip TX/RX FIFO + - SAUCE: rtw88: 8723d: initialize mac/bb/rf basic functions + - SAUCE: rtw88: 8723d: Add DIG parameter + - SAUCE: rtw88: 8723d: Add query_rx_desc + - SAUCE: rtw88: 8723d: Add set_channel + - SAUCE: rtw88: handle C2H_CCX_TX_RPT to know if packet TX'ed successfully + - SAUCE: rtw88: 8723d: 11N chips don't support LDPC + - SAUCE: rtw88: set default port to firmware + - SAUCE: rtw88: update tx descriptor of mgmt and rsvd page packets + - SAUCE: rtw88: sar: add SAR of TX power limit + - SAUCE: rtw88: sar: Load static SAR table from ACPI WRDS method + - SAUCE: rtw88: sar: Load dynamic SAR table from ACPI methods + - SAUCE: rtw88: sar: apply dynamic SAR table to tx power limit + - SAUCE: rtw88: sar: add sar_work to poll if dynamic SAR table is changed + - SAUCE: rtw88: sar: dump sar information via debugfs + - SAUCE: rtw88: 8723d: Add chip_ops::false_alarm_statistics + - SAUCE: rtw88: 8723d: Set IG register for CCK rate + - SAUCE: rtw88: 8723d: add interface configurations table + - SAUCE: rtw88: 8723d: Add LC calibration + - SAUCE: rtw88: 8723d: add IQ calibration + - SAUCE: rtw88: 8723d: Add power tracking + - SAUCE: rtw88: 8723d: Add shutdown callback to disable BT USB suspend + - SAUCE: rtw88: 8723d: implement flush queue + - SAUCE: rtw88: 8723d: set ltecoex register address in chip_info + - SAUCE: rtw88: 8723d: Add coex support + - SAUCE: rtw88: fill zeros to words 0x06 and 0x07 of security cam entry + - SAUCE: rtw88: 8723d: Add 8723DE to Kconfig and Makefile + - [Config] CONFIG_RTW88_8723DE=y + * [Ubuntu 20.04] Unset HIBERNATION and PM kernel config options for focal + (LP: #1867753) + - [Config] CONFIG_HIBERNATION=n and CONFIG_PM=n for s390x + * [20.04 FEAT] Base KVM setup for secure guests - kernel part (LP: #1835531) + - s390/protvirt: introduce host side setup + - s390/protvirt: add ultravisor initialization + - s390/mm: provide memory management functions for protected KVM guests + - s390/mm: add (non)secure page access exceptions handlers + - s390/protvirt: Add sysfs firmware interface for Ultravisor information + - KVM: s390/interrupt: do not pin adapter interrupt pages + - KVM: s390: protvirt: Add UV debug trace + - KVM: s390: add new variants of UV CALL + - KVM: s390: protvirt: Add initial vm and cpu lifecycle handling + - KVM: s390: protvirt: Secure memory is not mergeable + - KVM: s390/mm: Make pages accessible before destroying the guest + - KVM: s390: protvirt: Handle SE notification interceptions + - KVM: s390: protvirt: Instruction emulation + - KVM: s390: protvirt: Implement interrupt injection + - KVM: s390: protvirt: Add SCLP interrupt handling + - KVM: s390: protvirt: Handle spec exception loops + - KVM: s390: protvirt: Add new gprs location handling + - KVM: S390: protvirt: Introduce instruction data area bounce buffer + - KVM: s390: protvirt: handle secure guest prefix pages + - KVM: s390/mm: handle guest unpin events + - KVM: s390: protvirt: Write sthyi data to instruction data area + - KVM: s390: protvirt: STSI handling + - KVM: s390: protvirt: disallow one_reg + - KVM: s390: protvirt: Do only reset registers that are accessible + - KVM: s390: protvirt: Only sync fmt4 registers + - KVM: s390: protvirt: Add program exception injection + - KVM: s390: protvirt: UV calls in support of diag308 0, 1 + - KVM: s390: protvirt: Report CPU state to Ultravisor + - KVM: s390: protvirt: Support cmd 5 operation state + - KVM: s390: protvirt: Mask PSW interrupt bits for interception 104 and 112 + - KVM: s390: protvirt: do not inject interrupts after start + - KVM: s390: protvirt: Add UV cpu reset calls + - DOCUMENTATION: Protected virtual machine introduction and IPL + - KVM: s390: protvirt: introduce and enable KVM_CAP_S390_PROTECTED + - KVM: s390: protvirt: Add KVM api documentation + - mm/gup/writeback: add callbacks for inaccessible pages + * All PS/2 ports on PS/2 Serial add-in bracket are not working after S3 + (LP: #1866734) + - SAUCE: Input: i8042 - fix the selftest retry logic + * Sys oopsed with sysfs test in ubuntu_stress_smoke_test on X-hwe ARM64 + (LP: #1866772) + - ACPI: sysfs: copy ACPI data using io memory copying + * Miscellaneous Ubuntu changes + - hio -- remove duplicated MODULE_DEVICE_TABLE declaration + - SAUCE: r8169: disable ASPM L1.1 + - [Config] update annotations from configs + - [Config] update configs after annotation file review + - SAUCE: Revert "tools/power turbostat: Fix 32-bit capabilities warning" + * Miscellaneous upstream changes + - drm/i915: Fix eDP DPCD aux max backlight calculations + - drm/dp: Introduce EDID-based quirks + - drm/i915: Force DPCD backlight mode on X1 Extreme 2nd Gen 4K AMOLED panel + - drm/i915: Force DPCD backlight mode for some Dell CML 2020 panels + * Rebase to v5.6-rc7 + + [ Ubuntu: 5.6.0-5.5 ] + + * please help enable CONFIG_EROFS_FS_ZIP (LP: #1867099) + - [Config] CONFIG_EROFS_FS_ZIP=y + - [Config] CONFIG_EROFS_FS_CLUSTER_PAGE_LIMIT=1 + * Miscellaneous Ubuntu changes + - Config: Fix SND_HDA_PREALLOC_SIZE annotations + - Config: Fix DATA_SHIFT annotations + - Config: remove ANDROID_VSOC from annotations + - Config: remove arm arch from annotations + - Config: Update SOC_R8A7796X annotations + - Config: Update CLK_R8A7796X annotations + - update dkms package versions + - [Config] updateconfigs after rebase to 5.6-rc6 + * Rebase to v5.6-rc6 + + [ Ubuntu: 5.6.0-4.4 ] + + * Packaging resync (LP: #1786013) + - [Packaging] resync getabis + - [Packaging] update helper scripts + * Add sysfs attribute to show remapped NVMe (LP: #1863621) + - SAUCE: ata: ahci: Add sysfs attribute to show remapped NVMe device count + * [20.04 FEAT] Compression improvements in Linux kernel (LP: #1830208) + - [Config] Introducing s390x specific kernel config option CONFIG_ZLIB_DFLTCC + * [UBUNTU 20.04] s390x/pci: increase CONFIG_PCI_NR_FUNCTIONS to 512 in kernel + config (LP: #1866056) + - [Config] Increase CONFIG_PCI_NR_FUNCTIONS from 64 to 512 starting with focal + on s390x + * CONFIG_IP_MROUTE_MULTIPLE_TABLES is not set (LP: #1865332) + - [Config] CONFIG_IP_MROUTE_MULTIPLE_TABLES=y + * [UBUNTU 20.04] Enable CONFIG_NET_SWITCHDEV in kernel config for s390x + starting with focal (LP: #1865452) + - [Config] Enable CONFIG_NET_SWITCHDEV in kernel config for s390x starting + with focal + * Miscellaneous Ubuntu changes + - SAUCE: Revert "UBUNTU: SAUCE: blk/core: Gracefully handle unset + make_request_fn" + - [Packaging] prevent duplicated entries in modules.ignore + - update dkms package versions + - [Config] updateconfigs after rebase to 5.6-rc5 + * Rebase to v5.6-rc5 + + [ Ubuntu: 5.6.0-3.3 ] + + * nsleep-lat / set-timer-lat / inconsistency-check / raw_skew from timer in + ubuntu_kernel_selftests timeout on 5.3 / 5.4 (LP: #1864626) + - selftests/timers: Turn off timeout setting + * Update kernel options CONFIG_NR_CPUS and CONFIG_NUMA_EMU for focal + (LP: #1864198) + - Ubuntu: [Config] Update kernel options CONFIG_NR_CPUS and CONFIG_NUMA_EMU + * alsa/hda/realtek: fix a mute led regression on Lenovo X1 Carbon + (LP: #1864576) + - SAUCE: ALSA: hda/realtek - Fix a regression for mute led on Lenovo Carbon X1 + * r8152 init may take up to 40 seconds at initialization with Dell WD19/WD19DC + during hotplug (LP: #1864284) + - UBUNTU SAUCE: r8151: check disconnect status after long sleep + * Another Dell AIO backlight issue (LP: #1863880) + - SAUCE: platform/x86: dell-uart-backlight: move retry block + * Backport GetFB2 ioctl (LP: #1863874) + - SAUCE: drm: Add getfb2 ioctl + * Focal Fossa (20.04) feature request - Enable CONFIG_X86_UV (LP: #1863810) + - [Config] CONFIG_X86_UV=y + * Miscellaneous Ubuntu changes + - debian: remove snapdragon config, rules and flavour + - remove snapdragon abi files + - update dkms package versions + - [Config] updateconfigs after rebase to 5.6-rc4 + * Miscellaneous upstream changes + - updateconfigs following snapdragon removal + * Rebase to v5.6-rc4 + + [ Ubuntu: 5.6.0-2.2 ] + + * Sometimes can't adjust brightness on Dell AIO (LP: #1862885) + - SAUCE: platform/x86: dell-uart-backlight: increase retry times + * Dell XPS 13 (7390) Display Flickering - 19.10 (LP: #1849947) + - SAUCE: drm/i915: Disable PSR by default on all platforms + * Miscellaneous Ubuntu changes + - [debian] ignore missing wireguard module + - SAUCE: (lockdown) Add efi_status_to_str() and rework efi_status_to_err(). + - SAUCE: (lockdown) security: lockdown: expose a hook to lock the kernel down + - SAUCE: (lockdown) efi: Add an EFI_SECURE_BOOT flag to indicate secure boot + mode + - SAUCE: (lockdown) efi: Lock down the kernel if booted in secure boot mode + - SAUCE: (lockdown) s390: Lock down the kernel when the IPL secure flag is set + - SAUCE: (lockdown) KEYS: Make use of platform keyring for module signature + verify + - SAUCE: (lockdown) arm64: Allow locking down the kernel under EFI secure boot + - SAUCE: (lockdown) security: lockdown: Make + CONFIG_LOCK_DOWN_IN_EFI_SECURE_BOOT more generic + - [Config] CONFIG_LOCK_DOWN_IN_SECURE_BOOT=y + - update dkms package versions + - [Config] updateconfigs after rebase to 5.6-rc3 + * Miscellaneous upstream changes + - Revert "UBUNTU: SAUCE: (lockdown) s390/ipl: lockdown kernel when booted + secure" + - Revert "UBUNTU: SAUCE: (lockdown) KEYS: Make use of platform keyring for + module signature verify" + - Revert "UBUNTU: SAUCE: (lockdown) Add a SysRq option to lift kernel + lockdown" + - Revert "UBUNTU: SAUCE: (lockdown) security: lockdown: expose a hook to lock + the kernel down" + - Revert "UBUNTU: SAUCE: (lockdown) Add efi_status_to_str() and rework + efi_status_to_err()." + + [ Ubuntu: 5.6.0-1.1 ] + + * Integrate Intel SGX driver into linux-azure (LP: #1844245) + - [Packaging] Add systemd service to load intel_sgx + * QAT drivers for C3XXX and C62X not included as modules (LP: #1845959) + - [Config] CRYPTO_DEV_QAT_C3XXX=m, CRYPTO_DEV_QAT_C62X=m and + CRYPTO_DEV_QAT_DH895xCC=m + * 5.4.0-11 crash on cryptsetup open (LP: #1860231) + - SAUCE: blk/core: Gracefully handle unset make_request_fn + * multi-zone raid0 corruption (LP: #1850540) + - SAUCE: md/raid0: Use kernel specific layout + * Miscellaneous Ubuntu changes + - update dkms package versions + - update dropped.txt after rebase to v5.6-rc1 + - [Config] updateconfigs after rebase to 5.6-rc1 + - hio -- proc_create() requires a "struct proc_ops" in 5.6 + - SAUCE: arm: fix build error in kvm tracepoint + * Miscellaneous upstream changes + - Revert "UBUNTU: [Config] Disable the uselib system call" + - Revert "UBUNTU: [Config] Disable legacy PTY naming" + - Revert "UBUNTU: [Config] Enforce filtered access to iomem" + - Revert "UBUNTU: [Config] Enable notifier call chain validations" + - Revert "UBUNTU: [Config] Enable scatterlist validation" + - Revert "UBUNTU: [Config] Enable cred sanity checks" + - Revert "UBUNTU: [Config] Enable linked list manipulation checks" + * Rebase to v5.6-rc1 + + [ Ubuntu: 5.6.0-0.0 ] + + * Dummy entry + + [ Ubuntu: 5.5.0-7.8 ] + + * CONFIG_USELIB should be disabled (LP: #1855341) + - [Config] Disable the uselib system call + * CONFIG_LEGACY_PTYS should be disabled (LP: #1855339) + - [Config] Disable legacy PTY naming + * CONFIG_IO_STRICT_DEVMEM should be enabled (LP: #1855338) + - [Config] Enforce filtered access to iomem + * CONFIG_DEBUG_NOTIFIERS should be enabled (LP: #1855337) + - [Config] Enable notifier call chain validations + * CONFIG_DEBUG_SG should be enabled (LP: #1855336) + - [Config] Enable scatterlist validation + * CONFIG_DEBUG_CREDENTIALS should be enabled (LP: #1855335) + - [Config] Enable cred sanity checks + * CONFIG_DEBUG_LIST should be enabled (LP: #1855334) + - [Config] Enable linked list manipulation checks + * shiftfs: prevent lower dentries from going negative during unlink + (LP: #1860041) + - SAUCE: shiftfs: prevent lower dentries from going negative during unlink + * [SRU][B/OEM-B/OEM-OSP1/D/E/Unstable] UBUNTU: SAUCE: Use native backlight on + Lenovo E41-25/45 (LP: #1859561) + - SAUCE: ACPI: video: Use native backlight on Lenovo E41-25/45 + * USB key cannot be detected by hotplug on Sunix USB Type-A 3.1 Gen 2 card + [1b21:2142] (LP: #1858988) + - SAUCE: PCI: Avoid ASMedia XHCI USB PME# from D0 defect + * Dell AIO can't adjust brightness (LP: #1858761) + - SAUCE: platform/x86: dell-uart-backlight: add retry for get scalar status + * Miscellaneous Ubuntu changes + - [Config] Fix typo in annotations file + - update dkms package versions + * Rebase to v5.5 + + [ Ubuntu: 5.5.0-6.7 ] + + * Miscellaneous Ubuntu changes + - [Packaging] Update ubuntu-regression-suite dependency to python2 + - [Packaging] Fix ubuntu-regression-suite python dependency for hwe kernel + - update dkms package versions + * Rebase to v5.5-rc7 + + [ Ubuntu: 5.5.0-5.6 ] + + * Miscellaneous Ubuntu changes + - update dkms package versions + * Rebase to v5.5-rc6 + + [ Ubuntu: 5.5.0-4.5 ] + + * linux build and autopkg tests need to use python2 instead of python + (LP: #1858487) + - [Packaging] Remove python-dev build dependency + + [ Ubuntu: 5.5.0-3.4 ] + + * [SRU][B/OEM-B/OEM-OSP1/D/E/F] Add LG I2C touchscreen multitouch support + (LP: #1857541) + - SAUCE: HID: multitouch: Add LG MELF0410 I2C touchscreen support + * Make vfio-pci built-in or xhci_hcd optional (LP: #1770845) + - [Config]: built-in VFIO_PCI for amd64 + * multi-zone raid0 corruption (LP: #1850540) + - SAUCE: md/raid0: Link to wiki with guidance on multi-zone RAID0 layout + migration + * Packaging resync (LP: #1786013) + - [Packaging] update variants + * Miscellaneous Ubuntu changes + - [Packaging] Change source package to linux-5.5 + - [Packaging] Don't use SRCPKGNAME for linux-libc-dev + - [Packaging] Remove linux-source-3 Provides: from linux-source + - [Packaging] Fix linux-doc in linux-image Suggests: + - [Debian] Read variants list into a variable + - [Packaging] Generate linux-libc-dev package only for primary variant + - [Packaging] Generate linux-doc for only the primary variant + - [Debian] Update linux source package name in debian/tests/* + - update dkms package versions + - [Config] updateconfigs after rebase to 5.5-rc3 + - [Config] disable PCI_MESON + - [Config] Add pinctrl-equilibrium to modules.ignore + * Rebase to v5.5-rc5 + + [ Ubuntu: 5.5.0-2.3 ] + + * Empty entry. + + [ Ubuntu: 5.5.0-2.3 ] + + * Support DPCD aux brightness control (LP: #1856134) + - SAUCE: drm/i915: Fix eDP DPCD aux max backlight calculations + - SAUCE: drm/i915: Assume 100% brightness when not in DPCD control mode + - SAUCE: drm/i915: Fix DPCD register order in intel_dp_aux_enable_backlight() + - SAUCE: drm/i915: Auto detect DPCD backlight support by default + - SAUCE: drm/i915: Force DPCD backlight mode on X1 Extreme 2nd Gen 4K AMOLED + panel + - USUNTU: SAUCE: drm/i915: Force DPCD backlight mode on Dell Precision 4K sku + * change kconfig of the soundwire bus driver from y to m (LP: #1855685) + - [Config]: SOUNDWIRE=m + * 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 + * Miscellaneous Ubuntu changes + - [Debian] add python depends to ubuntu-regression-suite + - SAUCE: selftests: net: tls: remove recv_rcvbuf test + - update dkms package versions + * Miscellaneous upstream changes + - [Config] updateconfigs after rebase to 5.5-rc2 + + [ Ubuntu: 5.5.0-1.2 ] + + * Miscellaneous Ubuntu changes + - [Config] disable nvidia dkms build + - [Config] disable virtualbox dkms build + - [Config] disable zfs dkms build + - update dropped.txt after rebase to v5.5-rc1 + - SAUCE: (lockdown) Make get_cert_list() not complain about cert lists that + aren't present. + - SAUCE: (lockdown) Add efi_status_to_str() and rework efi_status_to_err(). + - SAUCE: (lockdown) Make get_cert_list() use efi_status_to_str() to print + error messages. + - SAUCE: (lockdown) security: lockdown: expose a hook to lock the kernel down + - SAUCE: (lockdown) efi: Add an EFI_SECURE_BOOT flag to indicate secure boot + mode + - SAUCE: (lockdown) efi: Lock down the kernel if booted in secure boot mode + - SAUCE: (lockdown) Add a SysRq option to lift kernel lockdown + - SAUCE: (lockdown) KEYS: Make use of platform keyring for module signature + verify + - SAUCE: (lockdown) arm64: Allow locking down the kernel under EFI secure boot + - SAUCE: (lockdown) security: lockdown: Make + CONFIG_LOCK_DOWN_IN_EFI_SECURE_BOOT more generic + - SAUCE: (lockdown) s390/ipl: lockdown kernel when booted secure + - [Config] Enable lockdown under secure boot + - update dkms package versions + + [ Ubuntu: 5.5.0-0.1 ] + + * Miscellaneous Ubuntu changes + - [Config] updateconfigs after rebase to 5.5-rc1 + [ Upstream Kernel Changes ] + * Rebase to v5.5-rc1 + + [ Ubuntu: 5.5.0-0.0 ] + + * Dummy entry. + + -- Paolo Pisati Mon, 10 Aug 2020 12:27:33 +0200 + +linux-azure (5.8.0-1000.0) groovy; urgency=medium + + * Dummy entry. + + -- Paolo Pisati Mon, 10 Aug 2020 12:18:34 +0200 + +linux-azure (5.4.0-1022.22) focal; urgency=medium + + * focal/linux-azure: 5.4.0-1022.22 -proposed tracker (LP: #1887060) + + [ Ubuntu: 5.4.0-42.46 ] + + * focal/linux: 5.4.0-42.46 -proposed tracker (LP: #1887069) + * linux 4.15.0-109-generic network DoS regression vs -108 (LP: #1886668) + - SAUCE: Revert "netprio_cgroup: Fix unlimited memory leak of v2 cgroups" + + -- Khalid Elmously Fri, 10 Jul 2020 01:51:58 -0400 + +linux-azure (5.4.0-1021.21) focal; urgency=medium + + * focal/linux-azure: 5.4.0-1021.21 -proposed tracker (LP: #1885845) + + * module intel_sgx appears to be blacklisted by the kernel. (LP: #1862201) + - Revert "UBUNTU: [Packaging] linux-azure: Prevent intel_sgx from being + automatically loaded" + - [Packaging] linux-azure: Divert conf files blacklisting intel_sgx + + * Add XDP support to hv_netvsc driver (LP: #1877654) + - hv_netvsc: Add XDP support + - hv_netvsc: Update document for XDP support + - hv_netvsc: Fix XDP refcnt for synthetic and VF NICs + + * Request to include two NUMA related commits in Azure kernels (LP: #1880975) + - PCI: hv: Decouple the func definition in hv_dr_state from VSP message + - PCI: hv: Add support for protocol 1.3 and support PCI_BUS_RELATIONS2 + + [ Ubuntu: 5.4.0-41.45 ] + + * focal/linux: 5.4.0-41.45 -proposed tracker (LP: #1885855) + * Packaging resync (LP: #1786013) + - update dkms package versions + * CVE-2019-19642 + - kernel/relay.c: handle alloc_percpu returning NULL in relay_open + * CVE-2019-16089 + - SAUCE: nbd_genl_status: null check for nla_nest_start + * CVE-2020-11935 + - aufs: do not call i_readcount_inc() + * ip_defrag.sh in net from ubuntu_kernel_selftests failed with 5.0 / 5.3 / 5.4 + kernel (LP: #1826848) + - selftests: net: ip_defrag: ignore EPERM + * Update lockdown patches (LP: #1884159) + - SAUCE: acpi: disallow loading configfs acpi tables when locked down + * seccomp_bpf fails on powerpc (LP: #1885757) + - SAUCE: selftests/seccomp: fix ptrace tests on powerpc + * Introduce the new NVIDIA 418-server and 440-server series, and update the + current NVIDIA drivers (LP: #1881137) + - [packaging] add signed modules for the 418-server and the 440-server + flavours + + -- Marcelo Henrique Cerri Wed, 08 Jul 2020 17:24:21 -0300 + +linux-azure (5.4.0-1020.20) focal; urgency=medium + + * focal/linux-azure: 5.4.0-1020.20 -proposed tracker (LP: #1885048) + + * linux-azure: Update SGX version to version LD_1.33 (LP: #1881338) + - SAUCE: linux-azure: Update SGX to version LD_1.33 + - SAUCE: ubuntu/sgx: Add module alias for ACPI device INT0E0C + + * [linux-azure] Enable Hibernation on The 18.04 and 20.04 5.4 Kernels + (LP: #1880032) + - x86/hyperv: Initialize clockevents earlier in CPU onlining + - scsi: storvsc: Add the support of hibernation + - video: hyperv_fb: Add the support of hibernation + - hv_sock: Add the support of hibernation + - hv_netvsc: Add the support of hibernation + - x86/hyperv: Implement hv_is_hibernation_supported() + - hv_balloon: Add the support of hibernation + - HID: hyperv: Add the support of hibernation + - PCI: hv: Reorganize the code in preparation of hibernation + - PCI: hv: Add hibernation support + - clocksource/drivers/hyper-v: Suspend/resume Hyper-V clocksource for + hibernation + - Input: hyperv-keyboard: Add the support of hibernation + - video: hyperv_fb: Fix hibernation for the deferred IO feature + - Tools: hv: Reopen the devices if read() or write() returns errors + - hv_utils: Support host-initiated restart request + - hv_utils: Support host-initiated hibernation request + - hv_utils: Add the support of hibernation + - x86/hyperv: Suspend/resume the hypercall page for hibernation + - PM: hibernate: Propagate the return value of hibernation_restore() + - x86/hyperv: Suspend/resume the VP assist page for hibernation + - net/mlx5: Fix crash upon suspend/resume + + [ Ubuntu: 5.4.0-40.44 ] + + * linux-oem-5.6-tools-common and -tools-host should be dropped (LP: #1881120) + - [Packaging] Add Conflicts/Replaces to remove linux-oem-5.6-tools-common and + -tools-host + * Packaging resync (LP: #1786013) + - [Packaging] update helper scripts + * Slow send speed with Intel I219-V on Ubuntu 18.04.1 (LP: #1802691) + - e1000e: Disable TSO for buffer overrun workaround + * CVE-2020-0543 + - UBUNTU/SAUCE: x86/speculation/srbds: do not try to turn mitigation off when + not supported + * Realtek 8723DE [10ec:d723] subsystem [10ec:d738] disconnects unsolicitedly + when Bluetooth is paired: Reason: 23=IEEE8021X_FAILED (LP: #1878147) + - SAUCE: Revert "UBUNTU: SAUCE: rtw88: Move driver IQK to set channel before + association for 11N chip" + - SAUCE: Revert "UBUNTU: SAUCE: rtw88: fix rate for a while after being + connected" + - SAUCE: Revert "UBUNTU: SAUCE: rtw88: No retry and report for auth and assoc" + - SAUCE: Revert "UBUNTU: SAUCE: rtw88: 8723d: Add coex support" + - rtw88: add a debugfs entry to dump coex's info + - rtw88: add a debugfs entry to enable/disable coex mechanism + - rtw88: 8723d: Add coex support + - SAUCE: rtw88: coex: 8723d: set antanna control owner + - SAUCE: rtw88: coex: 8723d: handle BT inquiry cases + - SAUCE: rtw88: fix EAPOL 4-way failure by finish IQK earlier + * CPU stress test fails with focal kernel (LP: #1867900) + - [Config] Disable hisi_sec2 temporarily + * Enforce all config annotations (LP: #1879327) + - [Config]: do not enforce CONFIG_VERSION_SIGNATURE + - [Config]: prepare to enforce all + - [Config]: enforce all config options + * Focal update: v5.4.44 upstream stable release (LP: #1881927) + - ax25: fix setsockopt(SO_BINDTODEVICE) + - dpaa_eth: fix usage as DSA master, try 3 + - net: don't return invalid table id error when we fall back to PF_UNSPEC + - net: dsa: mt7530: fix roaming from DSA user ports + - net: ethernet: ti: cpsw: fix ASSERT_RTNL() warning during suspend + - __netif_receive_skb_core: pass skb by reference + - net: inet_csk: Fix so_reuseport bind-address cache in tb->fast* + - net: ipip: fix wrong address family in init error path + - net/mlx5: Add command entry handling completion + - net: mvpp2: fix RX hashing for non-10G ports + - net: nlmsg_cancel() if put fails for nhmsg + - net: qrtr: Fix passing invalid reference to qrtr_local_enqueue() + - net: revert "net: get rid of an signed integer overflow in + ip_idents_reserve()" + - net sched: fix reporting the first-time use timestamp + - net/tls: fix race condition causing kernel panic + - nexthop: Fix attribute checking for groups + - r8152: support additional Microsoft Surface Ethernet Adapter variant + - sctp: Don't add the shutdown timer if its already been added + - sctp: Start shutdown on association restart if in SHUTDOWN-SENT state and + socket is closed + - tipc: block BH before using dst_cache + - net/mlx5e: kTLS, Destroy key object after destroying the TIS + - net/mlx5e: Fix inner tirs handling + - net/mlx5: Fix memory leak in mlx5_events_init + - net/mlx5e: Update netdev txq on completions during closure + - net/mlx5: Fix error flow in case of function_setup failure + - net/mlx5: Annotate mutex destroy for root ns + - net/tls: fix encryption error checking + - net/tls: free record only on encryption error + - net: sun: fix missing release regions in cas_init_one(). + - net/mlx4_core: fix a memory leak bug. + - mlxsw: spectrum: Fix use-after-free of split/unsplit/type_set in case reload + fails + - ARM: dts: rockchip: fix phy nodename for rk3228-evb + - ARM: dts: rockchip: fix phy nodename for rk3229-xms6 + - arm64: dts: rockchip: fix status for &gmac2phy in rk3328-evb.dts + - arm64: dts: rockchip: swap interrupts interrupt-names rk3399 gpu node + - ARM: dts: rockchip: swap clock-names of gpu nodes + - ARM: dts: rockchip: fix pinctrl sub nodename for spi in rk322x.dtsi + - gpio: tegra: mask GPIO IRQs during IRQ shutdown + - ALSA: usb-audio: add mapping for ASRock TRX40 Creator + - net: microchip: encx24j600: add missed kthread_stop + - gfs2: move privileged user check to gfs2_quota_lock_check + - gfs2: Grab glock reference sooner in gfs2_add_revoke + - drm/amdgpu: drop unnecessary cancel_delayed_work_sync on PG ungate + - drm/amd/powerplay: perform PG ungate prior to CG ungate + - drm/amdgpu: Use GEM obj reference for KFD BOs + - cachefiles: Fix race between read_waiter and read_copier involving op->to_do + - usb: dwc3: pci: Enable extcon driver for Intel Merrifield + - usb: phy: twl6030-usb: Fix a resource leak in an error handling path in + 'twl6030_usb_probe()' + - usb: gadget: legacy: fix redundant initialization warnings + - net: freescale: select CONFIG_FIXED_PHY where needed + - IB/i40iw: Remove bogus call to netdev_master_upper_dev_get() + - riscv: stacktrace: Fix undefined reference to `walk_stackframe' + - clk: ti: am33xx: fix RTC clock parent + - csky: Fixup msa highest 3 bits mask + - csky: Fixup perf callchain unwind + - csky: Fixup remove duplicate irq_disable + - hwmon: (nct7904) Fix incorrect range of temperature limit registers + - cifs: Fix null pointer check in cifs_read + - csky: Fixup raw_copy_from_user() + - samples: bpf: Fix build error + - drivers: net: hamradio: Fix suspicious RCU usage warning in bpqether.c + - Input: usbtouchscreen - add support for BonXeon TP + - Input: evdev - call input_flush_device() on release(), not flush() + - Input: xpad - add custom init packet for Xbox One S controllers + - Input: dlink-dir685-touchkeys - fix a typo in driver name + - Input: i8042 - add ThinkPad S230u to i8042 reset list + - Input: synaptics-rmi4 - really fix attn_data use-after-free + - Input: synaptics-rmi4 - fix error return code in rmi_driver_probe() + - ARM: 8970/1: decompressor: increase tag size + - ARM: uaccess: consolidate uaccess asm to asm/uaccess-asm.h + - ARM: uaccess: integrate uaccess_save and uaccess_restore + - ARM: uaccess: fix DACR mismatch with nested exceptions + - gpio: exar: Fix bad handling for ida_simple_get error path + - arm64: dts: mt8173: fix vcodec-enc clock + - soc: mediatek: cmdq: return send msg error code + - gpu/drm: Ingenic: Fix opaque pointer casted to wrong type + - IB/qib: Call kobject_put() when kobject_init_and_add() fails + - ARM: dts/imx6q-bx50v3: Set display interface clock parents + - ARM: dts: bcm2835-rpi-zero-w: Fix led polarity + - ARM: dts: bcm: HR2: Fix PPI interrupt types + - mmc: block: Fix use-after-free issue for rpmb + - gpio: pxa: Fix return value of pxa_gpio_probe() + - gpio: bcm-kona: Fix return value of bcm_kona_gpio_probe() + - RDMA/pvrdma: Fix missing pci disable in pvrdma_pci_probe() + - ALSA: hwdep: fix a left shifting 1 by 31 UB bug + - ALSA: hda/realtek - Add a model for Thinkpad T570 without DAC workaround + - ALSA: usb-audio: mixer: volume quirk for ESS Technology Asus USB DAC + - exec: Always set cap_ambient in cap_bprm_set_creds + - clk: qcom: gcc: Fix parent for gpll0_out_even + - ALSA: usb-audio: Quirks for Gigabyte TRX40 Aorus Master onboard audio + - ALSA: hda/realtek - Add new codec supported for ALC287 + - libceph: ignore pool overlay and cache logic on redirects + - ceph: flush release queue when handling caps for unknown inode + - RDMA/core: Fix double destruction of uobject + - drm/amd/display: drop cursor position check in atomic test + - IB/ipoib: Fix double free of skb in case of multicast traffic in CM mode + - mm,thp: stop leaking unreleased file pages + - mm: remove VM_BUG_ON(PageSlab()) from page_mapcount() + - fs/binfmt_elf.c: allocate initialized memory in fill_thread_core_info() + - include/asm-generic/topology.h: guard cpumask_of_node() macro argument + - Revert "block: end bio with BLK_STS_AGAIN in case of non-mq devs and + REQ_NOWAIT" + - gpio: fix locking open drain IRQ lines + - iommu: Fix reference count leak in iommu_group_alloc. + - parisc: Fix kernel panic in mem_init() + - cfg80211: fix debugfs rename crash + - x86/syscalls: Revert "x86/syscalls: Make __X32_SYSCALL_BIT be unsigned long" + - mac80211: mesh: fix discovery timer re-arming issue / crash + - x86/dma: Fix max PFN arithmetic overflow on 32 bit systems + - copy_xstate_to_kernel(): don't leave parts of destination uninitialized + - xfrm: allow to accept packets with ipv6 NEXTHDR_HOP in xfrm_input + - xfrm: do pskb_pull properly in __xfrm_transport_prep + - xfrm: remove the xfrm_state_put call becofe going to out_reset + - xfrm: call xfrm_output_gso when inner_protocol is set in xfrm_output + - xfrm interface: fix oops when deleting a x-netns interface + - xfrm: fix a warning in xfrm_policy_insert_list + - xfrm: fix a NULL-ptr deref in xfrm_local_error + - xfrm: fix error in comment + - ip_vti: receive ipip packet by calling ip_tunnel_rcv + - netfilter: nft_reject_bridge: enable reject with bridge vlan + - netfilter: ipset: Fix subcounter update skip + - netfilter: conntrack: make conntrack userspace helpers work again + - netfilter: nfnetlink_cthelper: unbreak userspace helper support + - netfilter: nf_conntrack_pptp: prevent buffer overflows in debug code + - esp6: get the right proto for transport mode in esp6_gso_encap + - bnxt_en: Fix accumulation of bp->net_stats_prev. + - ieee80211: Fix incorrect mask for default PE duration + - xsk: Add overflow check for u64 division, stored into u32 + - qlcnic: fix missing release in qlcnic_83xx_interrupt_test. + - crypto: chelsio/chtls: properly set tp->lsndtime + - nexthops: Move code from remove_nexthop_from_groups to remove_nh_grp_entry + - nexthops: don't modify published nexthop groups + - nexthop: Expand nexthop_is_multipath in a few places + - ipv4: nexthop version of fib_info_nh_uses_dev + - net: dsa: declare lockless TX feature for slave ports + - bonding: Fix reference count leak in bond_sysfs_slave_add. + - netfilter: conntrack: comparison of unsigned in cthelper confirmation + - netfilter: conntrack: Pass value of ctinfo to __nf_conntrack_update + - netfilter: nf_conntrack_pptp: fix compilation warning with W=1 build + - perf: Make perf able to build with latest libbfd + - Linux 5.4.44 + * Focal update: v5.4.43 upstream stable release (LP: #1881178) + - i2c: dev: Fix the race between the release of i2c_dev and cdev + - KVM: SVM: Fix potential memory leak in svm_cpu_init() + - ima: Set file->f_mode instead of file->f_flags in ima_calc_file_hash() + - evm: Check also if *tfm is an error pointer in init_desc() + - ima: Fix return value of ima_write_policy() + - ubifs: fix wrong use of crypto_shash_descsize() + - ACPI: EC: PM: Avoid flushing EC work when EC GPE is inactive + - mtd: spinand: Propagate ECC information to the MTD structure + - fix multiplication overflow in copy_fdtable() + - ubifs: remove broken lazytime support + - i2c: fix missing pm_runtime_put_sync in i2c_device_probe + - iommu/amd: Fix over-read of ACPI UID from IVRS table + - evm: Fix a small race in init_desc() + - i2c: mux: demux-pinctrl: Fix an error handling path in + 'i2c_demux_pinctrl_probe()' + - ubi: Fix seq_file usage in detailed_erase_block_info debugfs file + - afs: Don't unlock fetched data pages until the op completes successfully + - mtd: Fix mtd not registered due to nvmem name collision + - kbuild: avoid concurrency issue in parallel building dtbs and dtbs_check + - net: drop_monitor: use IS_REACHABLE() to guard net_dm_hw_report() + - gcc-common.h: Update for GCC 10 + - HID: multitouch: add eGalaxTouch P80H84 support + - HID: alps: Add AUI1657 device ID + - HID: alps: ALPS_1657 is too specific; use U1_UNICORN_LEGACY instead + - scsi: qla2xxx: Fix hang when issuing nvme disconnect-all in NPIV + - scsi: qla2xxx: Delete all sessions before unregister local nvme port + - configfs: fix config_item refcnt leak in configfs_rmdir() + - vhost/vsock: fix packet delivery order to monitoring devices + - aquantia: Fix the media type of AQC100 ethernet controller in the driver + - component: Silence bind error on -EPROBE_DEFER + - net/ena: Fix build warning in ena_xdp_set() + - scsi: ibmvscsi: Fix WARN_ON during event pool release + - HID: i2c-hid: reset Synaptics SYNA2393 on resume + - x86/mm/cpa: Flush direct map alias during cpa + - ibmvnic: Skip fatal error reset after passive init + - x86/apic: Move TSC deadline timer debug printk + - gtp: set NLM_F_MULTI flag in gtp_genl_dump_pdp() + - HID: quirks: Add HID_QUIRK_NO_INIT_REPORTS quirk for Dell K12A keyboard-dock + - ceph: fix double unlock in handle_cap_export() + - stmmac: fix pointer check after utilization in stmmac_interrupt + - USB: core: Fix misleading driver bug report + - platform/x86: asus-nb-wmi: Do not load on Asus T100TA and T200TA + - iommu/amd: Call domain_flush_complete() in update_domain() + - drm/amd/display: Prevent dpcd reads with passive dongles + - KVM: selftests: Fix build for evmcs.h + - ARM: futex: Address build warning + - scripts/gdb: repair rb_first() and rb_last() + - ALSA: hda - constify and cleanup static NodeID tables + - ALSA: hda: patch_realtek: fix empty macro usage in if block + - ALSA: hda: Manage concurrent reg access more properly + - ALSA: hda/realtek - Add supported new mute Led for HP + - ALSA: hda/realtek - Add HP new mute led supported for ALC236 + - ALSA: hda/realtek: Add quirk for Samsung Notebook + - ALSA: hda/realtek - Enable headset mic of ASUS GL503VM with ALC295 + - ALSA: hda/realtek - Enable headset mic of ASUS UX550GE with ALC295 + - ALSA: hda/realtek: Enable headset mic of ASUS UX581LV with ALC295 + - KVM: x86: Fix pkru save/restore when guest CR4.PKE=0, move it to x86.c + - ALSA: iec1712: Initialize STDSP24 properly when using the model=staudio + option + - ALSA: pcm: fix incorrect hw_base increase + - ALSA: hda/realtek - Fix silent output on Gigabyte X570 Aorus Xtreme + - ALSA: hda/realtek - Add more fixup entries for Clevo machines + - scsi: qla2xxx: Do not log message when reading port speed via sysfs + - scsi: target: Put lun_ref at end of tmr processing + - arm64: Fix PTRACE_SYSEMU semantics + - drm/etnaviv: fix perfmon domain interation + - apparmor: Fix aa_label refcnt leak in policy_update + - dmaengine: tegra210-adma: Fix an error handling path in 'tegra_adma_probe()' + - drm/etnaviv: Fix a leak in submit_pin_objects() + - dmaengine: dmatest: Restore default for channel + - dmaengine: owl: Use correct lock in owl_dma_get_pchan() + - vsprintf: don't obfuscate NULL and error pointers + - drm/i915/gvt: Init DPLL/DDI vreg for virtual display instead of inheritance. + - drm/i915: Propagate error from completed fences + - powerpc: Remove STRICT_KERNEL_RWX incompatibility with RELOCATABLE + - powerpc/64s: Disable STRICT_KERNEL_RWX + - bpf: Avoid setting bpf insns pages read-only when prog is jited + - kbuild: Remove debug info from kallsyms linking + - Revert "gfs2: Don't demote a glock until its revokes are written" + - media: fdp1: Fix R-Car M3-N naming in debug message + - staging: iio: ad2s1210: Fix SPI reading + - staging: kpc2000: fix error return code in kp2000_pcie_probe() + - staging: greybus: Fix uninitialized scalar variable + - iio: sca3000: Remove an erroneous 'get_device()' + - iio: dac: vf610: Fix an error handling path in 'vf610_dac_probe()' + - iio: adc: ti-ads8344: Fix channel selection + - misc: rtsx: Add short delay after exit from ASPM + - tty: serial: add missing spin_lock_init for SiFive serial console + - mei: release me_cl object reference + - ipack: tpci200: fix error return code in tpci200_register() + - s390/kaslr: add support for R_390_JMP_SLOT relocation type + - device-dax: don't leak kernel memory to user space after unloading kmem + - rapidio: fix an error in get_user_pages_fast() error handling + - kasan: disable branch tracing for core runtime + - rxrpc: Fix the excessive initial retransmission timeout + - rxrpc: Fix a memory leak in rxkad_verify_response() + - s390/kexec_file: fix initrd location for kdump kernel + - flow_dissector: Drop BPF flow dissector prog ref on netns cleanup + - x86/unwind/orc: Fix unwind_get_return_address_ptr() for inactive tasks + - iio: adc: stm32-adc: Use dma_request_chan() instead + dma_request_slave_channel() + - iio: adc: stm32-adc: fix device used to request dma + - iio: adc: stm32-dfsdm: Use dma_request_chan() instead + dma_request_slave_channel() + - iio: adc: stm32-dfsdm: fix device used to request dma + - rxrpc: Trace discarded ACKs + - rxrpc: Fix ack discard + - tpm: check event log version before reading final events + - sched/fair: Reorder enqueue/dequeue_task_fair path + - sched/fair: Fix reordering of enqueue/dequeue_task_fair() + - sched/fair: Fix enqueue_task_fair() warning some more + - Linux 5.4.43 + * Focal update: v5.4.42 upstream stable release (LP: #1879759) + - net: dsa: Do not make user port errors fatal + - shmem: fix possible deadlocks on shmlock_user_lock + - net: phy: microchip_t1: add lan87xx_phy_init to initialize the lan87xx phy. + - KVM: arm: vgic: Synchronize the whole guest on GIC{D,R}_I{S,C}ACTIVER read + - gpio: pca953x: Fix pca953x_gpio_set_config + - SUNRPC: Add "@len" parameter to gss_unwrap() + - SUNRPC: Fix GSS privacy computation of auth->au_ralign + - net/sonic: Fix a resource leak in an error handling path in + 'jazz_sonic_probe()' + - net: moxa: Fix a potential double 'free_irq()' + - ftrace/selftests: workaround cgroup RT scheduling issues + - drop_monitor: work around gcc-10 stringop-overflow warning + - virtio-blk: handle block_device_operations callbacks after hot unplug + - sun6i: dsi: fix gcc-4.8 + - net_sched: fix tcm_parent in tc filter dump + - scsi: sg: add sg_remove_request in sg_write + - mmc: sdhci-acpi: Add SDHCI_QUIRK2_BROKEN_64_BIT_DMA for AMDI0040 + - dpaa2-eth: properly handle buffer size restrictions + - net: fix a potential recursive NETDEV_FEAT_CHANGE + - netlabel: cope with NULL catmap + - net: phy: fix aneg restart in phy_ethtool_set_eee + - net: stmmac: fix num_por initialization + - pppoe: only process PADT targeted at local interfaces + - Revert "ipv6: add mtu lock check in __ip6_rt_update_pmtu" + - tcp: fix error recovery in tcp_zerocopy_receive() + - tcp: fix SO_RCVLOWAT hangs with fat skbs + - virtio_net: fix lockdep warning on 32 bit + - dpaa2-eth: prevent array underflow in update_cls_rule() + - hinic: fix a bug of ndo_stop + - net: dsa: loop: Add module soft dependency + - net: ipv4: really enforce backoff for redirects + - netprio_cgroup: Fix unlimited memory leak of v2 cgroups + - net: tcp: fix rx timestamp behavior for tcp_recvmsg + - nfp: abm: fix error return code in nfp_abm_vnic_alloc() + - r8169: re-establish support for RTL8401 chip version + - umh: fix memory leak on execve failure + - riscv: fix vdso build with lld + - dmaengine: pch_dma.c: Avoid data race between probe and irq handler + - dmaengine: mmp_tdma: Do not ignore slave config validation errors + - dmaengine: mmp_tdma: Reset channel error on release + - selftests/ftrace: Check the first record for kprobe_args_type.tc + - cpufreq: intel_pstate: Only mention the BIOS disabling turbo mode once + - ALSA: hda/hdmi: fix race in monitor detection during probe + - drm/amd/powerplay: avoid using pm_en before it is initialized revised + - drm/amd/display: check if REFCLK_CNTL register is present + - drm/amd/display: Update downspread percent to match spreadsheet for DCN2.1 + - drm/qxl: lost qxl_bo_kunmap_atomic_page in qxl_image_init_helper() + - drm/amdgpu: simplify padding calculations (v2) + - drm/amdgpu: invalidate L2 before SDMA IBs (v2) + - ipc/util.c: sysvipc_find_ipc() incorrectly updates position index + - gfs2: Another gfs2_walk_metadata fix + - mmc: sdhci-pci-gli: Fix no irq handler from suspend + - IB/hfi1: Fix another case where pq is left on waitlist + - ACPI: EC: PM: Avoid premature returns from acpi_s2idle_wake() + - pinctrl: sunrisepoint: Fix PAD lock register offset for SPT-H + - pinctrl: baytrail: Enable pin configuration setting for GPIO chip + - pinctrl: qcom: fix wrong write in update_dual_edge + - pinctrl: cherryview: Add missing spinlock usage in chv_gpio_irq_handler + - bpf: Fix error return code in map_lookup_and_delete_elem() + - ALSA: firewire-lib: fix 'function sizeof not defined' error of tracepoints + format + - i40iw: Fix error handling in i40iw_manage_arp_cache() + - drm/i915: Don't enable WaIncreaseLatencyIPCEnabled when IPC is disabled + - bpf, sockmap: msg_pop_data can incorrecty set an sge length + - bpf, sockmap: bpf_tcp_ingress needs to subtract bytes from sg.size + - mmc: alcor: Fix a resource leak in the error path for ->probe() + - mmc: sdhci-pci-gli: Fix can not access GL9750 after reboot from Windows 10 + - mmc: core: Check request type before completing the request + - mmc: core: Fix recursive locking issue in CQE recovery path + - mmc: block: Fix request completion in the CQE timeout path + - gfs2: More gfs2_find_jhead fixes + - fork: prevent accidental access to clone3 features + - drm/amdgpu: force fbdev into vram + - NFS: Fix fscache super_cookie index_key from changing after umount + - nfs: fscache: use timespec64 in inode auxdata + - NFSv4: Fix fscache cookie aux_data to ensure change_attr is included + - netfilter: conntrack: avoid gcc-10 zero-length-bounds warning + - drm/i915/gvt: Fix kernel oops for 3-level ppgtt guest + - arm64: fix the flush_icache_range arguments in machine_kexec + - nfs: fix NULL deference in nfs4_get_valid_delegation + - SUNRPC: Signalled ASYNC tasks need to exit + - netfilter: nft_set_rbtree: Introduce and use nft_rbtree_interval_start() + - netfilter: nft_set_rbtree: Add missing expired checks + - RDMA/rxe: Always return ERR_PTR from rxe_create_mmap_info() + - IB/mlx4: Test return value of calls to ib_get_cached_pkey + - IB/core: Fix potential NULL pointer dereference in pkey cache + - RDMA/core: Fix double put of resource + - RDMA/iw_cxgb4: Fix incorrect function parameters + - hwmon: (da9052) Synchronize access with mfd + - s390/ism: fix error return code in ism_probe() + - mm, memcg: fix inconsistent oom event behavior + - NFSv3: fix rpc receive buffer size for MOUNT call + - pnp: Use list_for_each_entry() instead of open coding + - net/rds: Use ERR_PTR for rds_message_alloc_sgs() + - Stop the ad-hoc games with -Wno-maybe-initialized + - [Config] updateconfigs for CC_HAS_WARN_MAYBE_UNINITIALIZED + - gcc-10: disable 'zero-length-bounds' warning for now + - gcc-10: disable 'array-bounds' warning for now + - gcc-10: disable 'stringop-overflow' warning for now + - gcc-10: disable 'restrict' warning for now + - gcc-10 warnings: fix low-hanging fruit + - gcc-10: mark more functions __init to avoid section mismatch warnings + - gcc-10: avoid shadowing standard library 'free()' in crypto + - usb: usbfs: correct kernel->user page attribute mismatch + - USB: usbfs: fix mmap dma mismatch + - ALSA: hda/realtek - Limit int mic boost for Thinkpad T530 + - ALSA: hda/realtek - Add COEF workaround for ASUS ZenBook UX431DA + - ALSA: rawmidi: Fix racy buffer resize under concurrent accesses + - ALSA: usb-audio: Add control message quirk delay for Kingston HyperX headset + - usb: core: hub: limit HUB_QUIRK_DISABLE_AUTOSUSPEND to USB5534B + - usb: host: xhci-plat: keep runtime active when removing host + - usb: cdns3: gadget: prev_req->trb is NULL for ep0 + - usb: xhci: Fix NULL pointer dereference when enqueuing trbs from urb sg list + - Make the "Reducing compressed framebufer size" message be DRM_INFO_ONCE() + - ARM: dts: dra7: Fix bus_dma_limit for PCIe + - ARM: dts: imx27-phytec-phycard-s-rdk: Fix the I2C1 pinctrl entries + - ARM: dts: imx6dl-yapp4: Fix Ursa board Ethernet connection + - drm/amd/display: add basic atomic check for cursor plane + - powerpc/32s: Fix build failure with CONFIG_PPC_KUAP_DEBUG + - cifs: fix leaked reference on requeued write + - x86: Fix early boot crash on gcc-10, third try + - x86/unwind/orc: Fix error handling in __unwind_start() + - exec: Move would_dump into flush_old_exec + - clk: rockchip: fix incorrect configuration of rk3228 aclk_gpu* clocks + - dwc3: Remove check for HWO flag in dwc3_gadget_ep_reclaim_trb_sg() + - fanotify: fix merging marks masks with FAN_ONDIR + - usb: gadget: net2272: Fix a memory leak in an error handling path in + 'net2272_plat_probe()' + - usb: gadget: audio: Fix a missing error return value in audio_bind() + - usb: gadget: legacy: fix error return code in gncm_bind() + - usb: gadget: legacy: fix error return code in cdc_bind() + - clk: Unlink clock if failed to prepare or enable + - arm64: dts: meson-g12b-khadas-vim3: add missing frddr_a status property + - arm64: dts: meson-g12-common: fix dwc2 clock names + - arm64: dts: rockchip: Replace RK805 PMIC node name with "pmic" on rk3328 + boards + - arm64: dts: rockchip: Rename dwc3 device nodes on rk3399 to make dtc happy + - arm64: dts: imx8mn: Change SDMA1 ahb clock for imx8mn + - ARM: dts: r8a73a4: Add missing CMT1 interrupts + - arm64: dts: renesas: r8a77980: Fix IPMMU VIP[01] nodes + - ARM: dts: r8a7740: Add missing extal2 to CPG node + - SUNRPC: Revert 241b1f419f0e ("SUNRPC: Remove xdr_buf_trim()") + - bpf: Fix sk_psock refcnt leak when receiving message + - KVM: x86: Fix off-by-one error in kvm_vcpu_ioctl_x86_setup_mce + - Makefile: disallow data races on gcc-10 as well + - Linux 5.4.42 + * upgrading to 4.15.0-99-generic breaks the sound and the trackpad + (LP: #1875916) // Focal update: v5.4.42 upstream stable release + (LP: #1879759) + - Revert "ALSA: hda/realtek: Fix pop noise on ALC225" + * Pop sound from build-in speaker during cold boot and resume from S3 + (LP: #1866357) // Focal update: v5.4.42 upstream stable release + (LP: #1879759) + - ALSA: hda/realtek - Fix S3 pop noise on Dell Wyse + * tpm: fix TIS locality timeout problems (LP: #1881710) + - SAUCE: tpm: fix TIS locality timeout problems + * [UBUNTU 20.04] s390x/pci: fix linking between PF and VF for multifunction + devices (LP: #1879704) + - PCI/IOV: Introduce pci_iov_sysfs_link() function + - s390/pci: create links between PFs and VFs + * Performing function level reset of AMD onboard USB and audio devices causes + system lockup (LP: #1865988) + - SAUCE: PCI: Avoid FLR for AMD Matisse HD Audio & USB 3.0 + - SAUCE: PCI: Avoid FLR for AMD Starship USB 3.0 + * seccomp_benchmark times out on eoan (LP: #1881576) + - SAUCE: selftests/seccomp: use 90s as timeout + * ASoC/amd: add audio driver for amd renoir (LP: #1881046) + - ASoC: amd: add Renoir ACP3x IP register header + - ASoC: amd: add Renoir ACP PCI driver + - ASoC: amd: add acp init/de-init functions + - ASoC: amd: create acp3x pdm platform device + - ASoC: amd: add ACP3x PDM platform driver + - ASoC: amd: irq handler changes for ACP3x PDM dma driver + - ASoC: amd: add acp3x pdm driver dma ops + - ASoC: amd: add ACP PDM DMA driver dai ops + - ASoC: amd: add Renoir ACP PCI driver PM ops + - ASoC: amd: add ACP PDM DMA driver pm ops + - ASoC: amd: enable Renoir acp3x drivers build + - ASoC: amd: create platform devices for Renoir + - ASoC: amd: RN machine driver using dmic + - ASoC: amd: enable build for RN machine driver + - ASoC: amd: fix kernel warning + - ASoC: amd: refactoring dai_hw_params() callback + - ASoC: amd: return error when acp de-init fails + - [Config]: enable amd renoir ASoC audio + * Fix for secure boot rules in IMA arch policy on powerpc (LP: #1877955) + - powerpc/ima: Fix secure boot rules in ima arch policy + * [UBUNTU 20.04] s390x/pci: s390_pci_mmio_write/read fail when MIO + instructions are available (LP: #1874055) + - s390/pci: Fix s390_mmio_read/write with MIO + * security: lockdown: remove trailing semicolon before function body + (LP: #1880660) + - SAUCE: (lockdown) security: lockdown: remove trailing semicolon before + function body + * Fix incorrect speed/duplex when I210 device is runtime suspended + (LP: #1880656) + - igb: Report speed and duplex as unknown when device is runtime suspended + * [OMEN by HP Laptop 15-dh0xxx, Realtek ALC285, Black Mic, Left] Recording + problem (LP: #1874698) + - ASoC: SOF: Intel: hda: allow operation without i915 gfx + - ASoC: intel/skl/hda - add no-HDMI cases to generic HDA driver + * CVE-2020-13143 + - USB: gadget: fix illegal array access in binding with UDC + * rtl8723bu wifi issue after being turned off (LP: #1878296) + - rtl8xxxu: Improve TX performance of RTL8723BU on rtl8xxxu driver + - rtl8xxxu: add bluetooth co-existence support for single antenna + - rtl8xxxu: remove set but not used variable 'rate_mask' + - rtl8xxxu: Remove set but not used variable 'vif', 'dev', 'len' + * Fix Pericom USB controller OHCI/EHCI PME# defect (LP: #1879321) + - serial: 8250_pci: Move Pericom IDs to pci_ids.h + - PCI: Avoid Pericom USB controller OHCI/EHCI PME# defect + * shiftfs: fix btrfs snapshot deletion (LP: #1879688) + - SAUCE: shiftfs: let userns root destroy subvolumes from other users + * [UBUNTU 20.04] s390x/pci: enumerate pci functions per physical adapter + (LP: #1874056) + - s390/pci: Improve handling of unset UID + - s390/pci: embedding hotplug_slot in zdev + - s390/pci: Expose new port attribute for PCIe functions + - s390/pci: adaptation of iommu to multifunction + - s390/pci: define kernel parameters for PCI multifunction + - s390/pci: define RID and RID available + - s390/pci: create zPCI bus + - s390/pci: adapt events for zbus + - s390/pci: Handling multifunctions + - s390/pci: Do not disable PF when VFs exist + - s390/pci: Documentation for zPCI + - s390/pci: removes wrong PCI multifunction assignment + * update-initramfs complains of missing amdgpu firmware files (LP: #1873325) + - SAUCE: drm/amdgpu: Remove unreleased arcturus and navi12 firmware from + modinfo + + -- Marcelo Henrique Cerri Thu, 25 Jun 2020 16:37:28 -0300 + +linux-azure (5.4.0-1019.19) focal; urgency=medium + + + [ Ubuntu: 5.4.0-39.43 ] + + * dkms-build: downloads fail in private PPAs (LP: #1883874) + - dkms-build: apt-cache policy elides username:password information + * Packaging resync (LP: #1786013) + - update dkms package versions + + -- Kleber Sacilotto de Souza Fri, 19 Jun 2020 19:07:16 +0200 + +linux-azure (5.4.0-1016.16) focal; urgency=medium + + + [ Ubuntu: 5.4.0-37.41 ] + + * CVE-2020-0543 + - SAUCE: x86/speculation/spectre_v2: Exclude Zhaoxin CPUs from SPECTRE_V2 + - SAUCE: x86/cpu: Add a steppings field to struct x86_cpu_id + - SAUCE: x86/cpu: Add 'table' argument to cpu_matches() + - SAUCE: x86/speculation: Add Special Register Buffer Data Sampling (SRBDS) + mitigation + - SAUCE: x86/speculation: Add SRBDS vulnerability and mitigation documentation + - SAUCE: x86/speculation: Add Ivy Bridge to affected list + + -- Thadeu Lima de Souza Cascardo Thu, 04 Jun 2020 19:11:17 -0300 + +linux-azure (5.4.0-1013.13) focal; urgency=medium + + * focal/linux-azure: 5.4.0-1013.13 -proposed tracker (LP: #1878793) + + * Add support for Ambiq micro AM1805 RTC chip (LP: #1876667) + - SAUCE: rtc: add am-1805 RTC driver + + * linux-azure: Enable FSGSBASE instructions to support SGX (LP: #1877425) + - SAUCE: x86/ptrace: Prevent ptrace from clearing the FS/GS selector + - SAUCE: selftests/x86/fsgsbase: Test GS selector on ptracer-induced GS base + write + - SAUCE: x86/cpu: Add 'unsafe_fsgsbase' to enable CR4.FSGSBASE + - SAUCE: x86/entry/64: Clean up paranoid exit + - SAUCE: x86/entry/64: Switch CR3 before SWAPGS in paranoid entry + - SAUCE: x86/entry/64: Introduce the FIND_PERCPU_BASE macro + - SAUCE: x86/entry/64: Handle FSGSBASE enabled paranoid entry/exit + - SAUCE: x86/entry/64: Document GSBASE handling in the paranoid path + - SAUCE: x86/fsgsbase/64: Add intrinsics for FSGSBASE instructions + - SAUCE: x86/fsgsbase/64: Enable FSGSBASE instructions in helper functions + - SAUCE: x86/fsgsbase/64: Use FSGSBASE in switch_to() if available + - SAUCE: x86/fsgsbase/64: Use FSGSBASE instructions on thread copy and ptrace + - SAUCE: x86/speculation/swapgs: Check FSGSBASE in enabling SWAPGS mitigation + - SAUCE: selftests/x86/fsgsbase: Test ptracer-induced GS base write with + FSGSBASE + - SAUCE: x86/fsgsbase/64: Enable FSGSBASE on 64bit by default and add a + chicken bit + - SAUCE: x86/elf: Enumerate kernel FSGSBASE capability in AT_HWCAP2 + - SAUCE: Documentation/x86/64: Add documentation for GS/FS addressing mode + + * rtkit-daemon[*]: Failed to make ourselves RT: Operation not permitted after + upgrade to 20.04 (LP: #1875665) + - [Config] Turn off CONFIG_RT_GROUP_SCHED + + [ Ubuntu: 5.4.0-34.38 ] + + * focal/linux: 5.4.0-34.38 -proposed tracker (LP: #1880118) + * debian/scripts/file-downloader does not handle positive failures correctly + (LP: #1878897) + - [Packaging] file-downloader not handling positive failures correctly + * Focal update: v5.4.41 upstream stable release (LP: #1878649) + - USB: serial: qcserial: Add DW5816e support + - nvme: refactor nvme_identify_ns_descs error handling + - nvme: fix possible hang when ns scanning fails during error recovery + - tracing/kprobes: Fix a double initialization typo + - net: macb: Fix runtime PM refcounting + - drm/amdgpu: move kfd suspend after ip_suspend_phase1 + - drm/amdgpu: drop redundant cg/pg ungate on runpm enter + - vt: fix unicode console freeing with a common interface + - tty: xilinx_uartps: Fix missing id assignment to the console + - devlink: fix return value after hitting end in region read + - dp83640: reverse arguments to list_add_tail + - fq_codel: fix TCA_FQ_CODEL_DROP_BATCH_SIZE sanity checks + - ipv6: Use global sernum for dst validation with nexthop objects + - mlxsw: spectrum_acl_tcam: Position vchunk in a vregion list properly + - neigh: send protocol value in neighbor create notification + - net: dsa: Do not leave DSA master with NULL netdev_ops + - net: macb: fix an issue about leak related system resources + - net: macsec: preserve ingress frame ordering + - net/mlx4_core: Fix use of ENOSPC around mlx4_counter_alloc() + - net_sched: sch_skbprio: add message validation to skbprio_change() + - net: stricter validation of untrusted gso packets + - net: tc35815: Fix phydev supported/advertising mask + - net/tls: Fix sk_psock refcnt leak in bpf_exec_tx_verdict() + - net/tls: Fix sk_psock refcnt leak when in tls_data_ready() + - net: usb: qmi_wwan: add support for DW5816e + - nfp: abm: fix a memory leak bug + - sch_choke: avoid potential panic in choke_reset() + - sch_sfq: validate silly quantum values + - tipc: fix partial topology connection closure + - tunnel: Propagate ECT(1) when decapsulating as recommended by RFC6040 + - bnxt_en: Fix VF anti-spoof filter setup. + - bnxt_en: Reduce BNXT_MSIX_VEC_MAX value to supported CQs per PF. + - bnxt_en: Improve AER slot reset. + - bnxt_en: Return error when allocating zero size context memory. + - bnxt_en: Fix VLAN acceleration handling in bnxt_fix_features(). + - net/mlx5: DR, On creation set CQ's arm_db member to right value + - net/mlx5: Fix forced completion access non initialized command entry + - net/mlx5: Fix command entry leak in Internal Error State + - net: mvpp2: prevent buffer overflow in mvpp22_rss_ctx() + - net: mvpp2: cls: Prevent buffer overflow in mvpp2_ethtool_cls_rule_del() + - HID: wacom: Read HID_DG_CONTACTMAX directly for non-generic devices + - sctp: Fix bundling of SHUTDOWN with COOKIE-ACK + - Revert "HID: wacom: generic: read the number of expected touches on a per + collection basis" + - HID: usbhid: Fix race between usbhid_close() and usbhid_stop() + - HID: wacom: Report 2nd-gen Intuos Pro S center button status over BT + - USB: uas: add quirk for LaCie 2Big Quadra + - usb: chipidea: msm: Ensure proper controller reset using role switch API + - USB: serial: garmin_gps: add sanity checking for data length + - tracing: Add a vmalloc_sync_mappings() for safe measure + - crypto: arch/nhpoly1305 - process in explicit 4k chunks + - KVM: s390: Remove false WARN_ON_ONCE for the PQAP instruction + - KVM: VMX: Explicitly clear RFLAGS.CF and RFLAGS.ZF in VM-Exit RSB path + - KVM: arm: vgic: Fix limit condition when writing to GICD_I[CS]ACTIVER + - KVM: arm64: Fix 32bit PC wrap-around + - arm64: hugetlb: avoid potential NULL dereference + - drm: ingenic-drm: add MODULE_DEVICE_TABLE + - ipc/mqueue.c: change __do_notify() to bypass check_kill_permission() + - epoll: atomically remove wait entry on wake up + - eventpoll: fix missing wakeup for ovflist in ep_poll_callback + - mm/page_alloc: fix watchdog soft lockups during set_zone_contiguous() + - mm: limit boost_watermark on small zones + - ceph: demote quotarealm lookup warning to a debug message + - staging: gasket: Check the return value of gasket_get_bar_index() + - coredump: fix crash when umh is disabled + - iocost: protect iocg->abs_vdebt with iocg->waitq.lock + - batman-adv: fix batadv_nc_random_weight_tq + - batman-adv: Fix refcnt leak in batadv_show_throughput_override + - batman-adv: Fix refcnt leak in batadv_store_throughput_override + - batman-adv: Fix refcnt leak in batadv_v_ogm_process + - x86/entry/64: Fix unwind hints in register clearing code + - x86/entry/64: Fix unwind hints in kernel exit path + - x86/entry/64: Fix unwind hints in rewind_stack_do_exit() + - x86/unwind/orc: Don't skip the first frame for inactive tasks + - x86/unwind/orc: Prevent unwinding before ORC initialization + - x86/unwind/orc: Fix error path for bad ORC entry type + - x86/unwind/orc: Fix premature unwind stoppage due to IRET frames + - KVM: x86: Fixes posted interrupt check for IRQs delivery modes + - arch/x86/kvm/svm/sev.c: change flag passed to GUP fast in sev_pin_memory() + - netfilter: nat: never update the UDP checksum when it's 0 + - netfilter: nf_osf: avoid passing pointer to local var + - objtool: Fix stack offset tracking for indirect CFAs + - iommu/virtio: Reverse arguments to list_add + - scripts/decodecode: fix trapping instruction formatting + - mm, memcg: fix error return value of mem_cgroup_css_alloc() + - bdi: move bdi_dev_name out of line + - bdi: add a ->dev_name field to struct backing_dev_info + - fsnotify: replace inode pointer with an object id + - fanotify: merge duplicate events on parent and child + - Linux 5.4.41 + * Intel GPU Hangs : random screen freezing w/ Ubuntu 20.04 (Linux 5.4) + i915_active_acquire (LP: #1868551) + - drm/i915: Hold reference to intel_frontbuffer as we track activity + - drm/i915: fix uninitialized pointer reads on pointers to and from + * Kernel panic due to NULL ringbuffer vaddr dereference in i915 (LP: #1877394) + - Revert "UBUNTU: SAUCE: drm/i915: Synchronize active and retire callbacks" + - drm/i915/gt: Make intel_ring_unpin() safe for concurrent pint + * add 16-bit width registers support for EEPROM at24 device (LP: #1876699) + - regmap-i2c: add 16-bit width registers support + * [UBUNTU 20.04] PSI generates overhead on s390x (LP: #1876044) + - Ubuntu: [Config] Set CONFIG_PSI_DEFAULT_DISABLED=y on s390x + * Focal update: v5.4.40 upstream stable release (LP: #1878040) + - vhost: vsock: kick send_pkt worker once device is started + - drm/bridge: analogix_dp: Split bind() into probe() and real bind() + - ASoC: topology: Check return value of soc_tplg_create_tlv + - ASoC: topology: Check return value of soc_tplg_*_create + - ASoC: topology: Check soc_tplg_add_route return value + - ASoC: topology: Check return value of pcm_new_ver + - ASoC: topology: Check return value of soc_tplg_dai_config + - selftests/ipc: Fix test failure seen after initial test run + - ASoC: sgtl5000: Fix VAG power-on handling + - ASoC: topology: Fix endianness issue + - usb: dwc3: gadget: Properly set maxpacket limit + - ASoC: rsnd: Fix parent SSI start/stop in multi-SSI mode + - ASoC: rsnd: Fix HDMI channel mapping for multi-SSI mode + - ASoC: codecs: hdac_hdmi: Fix incorrect use of list_for_each_entry + - remoteproc: qcom_q6v5_mss: fix a bug in q6v5_probe() + - drm/amdgpu: Correctly initialize thermal controller for GPUs with Powerplay + table v0 (e.g Hawaii) + - wimax/i2400m: Fix potential urb refcnt leak + - net: stmmac: fix enabling socfpga's ptp_ref_clock + - net: stmmac: Fix sub-second increment + - ASoC: rsnd: Don't treat master SSI in multi SSI setup as parent + - ASoC: rsnd: Fix "status check failed" spam for multi-SSI + - cifs: protect updating server->dstaddr with a spinlock + - scripts/config: allow colons in option strings for sed + - cifs: do not share tcons with DFS + - tracing: Fix memory leaks in trace_events_hist.c + - lib/mpi: Fix building for powerpc with clang + - mac80211: sta_info: Add lockdep condition for RCU list usage + - net: bcmgenet: suppress warnings on failed Rx SKB allocations + - net: systemport: suppress warnings on failed Rx SKB allocations + - drm/i915: Extend WaDisableDARBFClkGating to icl,ehl,tgl + - sctp: Fix SHUTDOWN CTSN Ack in the peer restart case + - Revert "software node: Simplify software_node_release() function" + - hexagon: clean up ioremap + - hexagon: define ioremap_uc + - ALSA: hda: Match both PCI ID and SSID for driver blacklist + - x86/kvm: fix a missing-prototypes "vmread_error" + - platform/x86: GPD pocket fan: Fix error message when temp-limits are out of + range + - ACPI: PM: s2idle: Fix comment in acpi_s2idle_prepare_late() + - mac80211: add ieee80211_is_any_nullfunc() + - cgroup, netclassid: remove double cond_resched + - libbpf: Fix readelf output parsing for Fedora + - mm/mremap: Add comment explaining the untagging behaviour of mremap() + - Revert "drm/amd/display: setting the DIG_MODE to the correct value." + - tools headers UAPI: Sync copy of arm64's asm/unistd.h with the kernel + sources + - udp: document udp_rcv_segment special case for looped packets + - PM / devfreq: Add missing locking while setting suspend_freq + - Linux 5.4.40 + * Focal update: v5.4.39 upstream stable release (LP: #1877592) + - dma-buf: Fix SET_NAME ioctl uapi + - drm/edid: Fix off-by-one in DispID DTD pixel clock + - drm/amd/display: Fix green screen issue after suspend + - drm/qxl: qxl_release leak in qxl_draw_dirty_fb() + - drm/qxl: qxl_release leak in qxl_hw_surface_alloc() + - drm/qxl: qxl_release use after free + - NFSv4.1: fix handling of backchannel binding in BIND_CONN_TO_SESSION + - btrfs: fix transaction leak in btrfs_recover_relocation + - btrfs: fix block group leak when removing fails + - btrfs: fix partial loss of prealloc extent past i_size after fsync + - btrfs: transaction: Avoid deadlock due to bad initialization timing of + fs_info::journal_info + - mmc: cqhci: Avoid false "cqhci: CQE stuck on" by not open-coding timeout + loop + - mmc: sdhci-xenon: fix annoying 1.8V regulator warning + - mmc: sdhci-pci: Fix eMMC driver strength for BYT-based controllers + - mmc: sdhci-msm: Enable host capabilities pertains to R1b response + - mmc: meson-mx-sdio: Set MMC_CAP_WAIT_WHILE_BUSY + - mmc: meson-mx-sdio: remove the broken ->card_busy() op + - crypto: caam - fix the address of the last entry of S/G + - ALSA: hda/realtek - Two front mics on a Lenovo ThinkCenter + - ALSA: usb-audio: Correct a typo of NuPrime DAC-10 USB ID + - ALSA: hda/hdmi: fix without unlocked before return + - ALSA: line6: Fix POD HD500 audio playback + - ALSA: pcm: oss: Place the plugin buffer overflow checks correctly + - i2c: amd-mp2-pci: Fix Oops in amd_mp2_pci_init() error handling + - Drivers: hv: vmbus: Fix Suspend-to-Idle for Generation-2 VM + - dlmfs_file_write(): fix the bogosity in handling non-zero *ppos + - IB/rdmavt: Always return ERR_PTR from rvt_create_mmap_info() + - PM: ACPI: Output correct message on target power state + - PM: hibernate: Freeze kernel threads in software_resume() + - dm verity fec: fix hash block number in verity_fec_decode + - dm writecache: fix data corruption when reloading the target + - dm multipath: use updated MPATHF_QUEUE_IO on mapping for bio-based mpath + - ARM: dts: imx6qdl-sr-som-ti: indicate powering off wifi is safe + - scsi: qla2xxx: set UNLOADING before waiting for session deletion + - scsi: qla2xxx: check UNLOADING before posting async work + - RDMA/mlx5: Set GRH fields in query QP on RoCE + - RDMA/mlx4: Initialize ib_spec on the stack + - RDMA/siw: Fix potential siw_mem refcnt leak in siw_fastreg_mr() + - RDMA/core: Prevent mixed use of FDs between shared ufiles + - RDMA/core: Fix race between destroy and release FD object + - RDMA/cm: Fix ordering of xa_alloc_cyclic() in ib_create_cm_id() + - RDMA/cm: Fix an error check in cm_alloc_id_priv() + - i2c: iproc: generate stop event for slave writes + - vfio: avoid possible overflow in vfio_iommu_type1_pin_pages + - vfio/type1: Fix VA->PA translation for PFNMAP VMAs in vaddr_get_pfn() + - iommu/qcom: Fix local_base status check + - scsi: target/iblock: fix WRITE SAME zeroing + - iommu/amd: Fix legacy interrupt remapping for x2APIC-enabled system + - i2c: aspeed: Avoid i2c interrupt status clear race condition. + - ALSA: opti9xx: shut up gcc-10 range warning + - Fix use after free in get_tree_bdev() + - nvme: prevent double free in nvme_alloc_ns() error handling + - nfs: Fix potential posix_acl refcnt leak in nfs3_set_acl + - dmaengine: dmatest: Fix iteration non-stop logic + - dmaengine: dmatest: Fix process hang when reading 'wait' parameter + - arm64: vdso: Add -fasynchronous-unwind-tables to cflags + - selinux: properly handle multiple messages in selinux_netlink_send() + - Linux 5.4.39 + * Focal update: v5.4.38 upstream stable release (LP: #1876767) + - Linux 5.4.38 + * Focal update: v5.4.37 upstream stable release (LP: #1876765) + - remoteproc: Fix wrong rvring index computation + - ubifs: Fix ubifs_tnc_lookup() usage in do_kill_orphans() + - printk: queue wake_up_klogd irq_work only if per-CPU areas are ready + - ASoC: stm32: sai: fix sai probe + - usb: dwc3: gadget: Do link recovery for SS and SSP + - kbuild: fix DT binding schema rule again to avoid needless rebuilds + - usb: gadget: udc: bdc: Remove unnecessary NULL checks in bdc_req_complete + - usb: gadget: udc: atmel: Fix vbus disconnect handling + - afs: Make record checking use TASK_UNINTERRUPTIBLE when appropriate + - afs: Fix to actually set AFS_SERVER_FL_HAVE_EPOCH + - iio:ad7797: Use correct attribute_group + - propagate_one(): mnt_set_mountpoint() needs mount_lock + - counter: 104-quad-8: Add lock guards - generic interface + - s390/ftrace: fix potential crashes when switching tracers + - ASoC: q6dsp6: q6afe-dai: add missing channels to MI2S DAIs + - ASoC: tas571x: disable regulators on failed probe + - ASoC: wm8960: Fix wrong clock after suspend & resume + - drivers: soc: xilinx: fix firmware driver Kconfig dependency + - nfsd: memory corruption in nfsd4_lock() + - bpf: Forbid XADD on spilled pointers for unprivileged users + - i2c: altera: use proper variable to hold errno + - rxrpc: Fix DATA Tx to disable nofrag for UDP on AF_INET6 socket + - net/cxgb4: Check the return from t4_query_params properly + - xfs: acquire superblock freeze protection on eofblocks scans + - svcrdma: Fix trace point use-after-free race + - svcrdma: Fix leak of svc_rdma_recv_ctxt objects + - net/mlx5e: Don't trigger IRQ multiple times on XSK wakeup to avoid WQ + overruns + - net/mlx5e: Get the latest values from counters in switchdev mode + - PCI: Add ACS quirk for Zhaoxin multi-function devices + - PCI: Make ACS quirk implementations more uniform + - PCI: Unify ACS quirk desired vs provided checking + - PCI: Add Zhaoxin Vendor ID + - PCI: Add ACS quirk for Zhaoxin Root/Downstream Ports + - PCI: Move Apex Edge TPU class quirk to fix BAR assignment + - ARM: dts: bcm283x: Disable dsi0 node + - cpumap: Avoid warning when CONFIG_DEBUG_PER_CPU_MAPS is enabled + - s390/pci: do not set affinity for floating irqs + - net/mlx5: Fix failing fw tracer allocation on s390 + - sched/core: Fix reset-on-fork from RT with uclamp + - perf/core: fix parent pid/tid in task exit events + - netfilter: nat: fix error handling upon registering inet hook + - PM: sleep: core: Switch back to async_schedule_dev() + - blk-iocost: Fix error on iocost_ioc_vrate_adj + - um: ensure `make ARCH=um mrproper` removes + arch/$(SUBARCH)/include/generated/ + - bpf, x86_32: Fix incorrect encoding in BPF_LDX zero-extension + - bpf, x86_32: Fix clobbering of dst for BPF_JSET + - bpf, x86_32: Fix logic error in BPF_LDX zero-extension + - mm: shmem: disable interrupt when acquiring info->lock in userfaultfd_copy + path + - xfs: clear PF_MEMALLOC before exiting xfsaild thread + - bpf, x86: Fix encoding for lower 8-bit registers in BPF_STX BPF_B + - libbpf: Initialize *nl_pid so gcc 10 is happy + - net: fec: set GPR bit on suspend by DT configuration. + - x86: hyperv: report value of misc_features + - signal: check sig before setting info in kill_pid_usb_asyncio + - afs: Fix length of dump of bad YFSFetchStatus record + - xfs: fix partially uninitialized structure in xfs_reflink_remap_extent + - ALSA: hda: Release resources at error in delayed probe + - ALSA: hda: Keep the controller initialization even if no codecs found + - ALSA: hda: Explicitly permit using autosuspend if runtime PM is supported + - scsi: target: fix PR IN / READ FULL STATUS for FC + - scsi: target: tcmu: reset_ring should reset TCMU_DEV_BIT_BROKEN + - objtool: Fix CONFIG_UBSAN_TRAP unreachable warnings + - objtool: Support Clang non-section symbols in ORC dump + - xen/xenbus: ensure xenbus_map_ring_valloc() returns proper grant status + - ALSA: hda: call runtime_allow() for all hda controllers + - net: stmmac: socfpga: Allow all RGMII modes + - mac80211: fix channel switch trigger from unknown mesh peer + - arm64: Delete the space separator in __emit_inst + - ext4: use matching invalidatepage in ext4_writepage + - ext4: increase wait time needed before reuse of deleted inode numbers + - ext4: convert BUG_ON's to WARN_ON's in mballoc.c + - blk-mq: Put driver tag in blk_mq_dispatch_rq_list() when no budget + - hwmon: (jc42) Fix name to have no illegal characters + - taprio: do not use BIT() in TCA_TAPRIO_ATTR_FLAG_* definitions + - qed: Fix race condition between scheduling and destroying the slowpath + workqueue + - Crypto: chelsio - Fixes a hang issue during driver registration + - net: use indirect call wrappers for skb_copy_datagram_iter() + - qed: Fix use after free in qed_chain_free + - ext4: check for non-zero journal inum in ext4_calculate_overhead + - ASoC: soc-core: disable route checks for legacy devices + - ASoC: stm32: spdifrx: fix regmap status check + - Linux 5.4.37 + * Focal update: v5.4.36 upstream stable release (LP: #1876361) + - ext4: fix extent_status fragmentation for plain files + - f2fs: fix to avoid memory leakage in f2fs_listxattr + - net, ip_tunnel: fix interface lookup with no key + - [Config] updateconfigs for ARM64_ERRATUM_1542419 + - arm64: errata: Hide CTR_EL0.DIC on systems affected by Neoverse-N1 #1542419 + - arm64: Fake the IminLine size on systems affected by Neoverse-N1 #1542419 + - arm64: compat: Workaround Neoverse-N1 #1542419 for compat user-space + - arm64: Silence clang warning on mismatched value/register sizes + - tools/testing/nvdimm: Fix compilation failure without + CONFIG_DEV_DAX_PMEM_COMPAT + - watchdog: reset last_hw_keepalive time at start + - scsi: lpfc: Fix kasan slab-out-of-bounds error in lpfc_unreg_login + - scsi: lpfc: Fix crash after handling a pci error + - scsi: lpfc: Fix crash in target side cable pulls hitting WAIT_FOR_UNREG + - scsi: libfc: If PRLI rejected, move rport to PLOGI state + - ceph: return ceph_mdsc_do_request() errors from __get_parent() + - ceph: don't skip updating wanted caps when cap is stale + - pwm: rcar: Fix late Runtime PM enablement + - nvme-tcp: fix possible crash in write_zeroes processing + - scsi: iscsi: Report unbind session event when the target has been removed + - tools/test/nvdimm: Fix out of tree build + - ASoC: Intel: atom: Take the drv->lock mutex before calling + sst_send_slot_map() + - nvme: fix deadlock caused by ANA update wrong locking + - drm/amd/display: Update stream adjust in dc_stream_adjust_vmin_vmax + - dma-direct: fix data truncation in dma_direct_get_required_mask() + - kernel/gcov/fs.c: gcov_seq_next() should increase position index + - selftests: kmod: fix handling test numbers above 9 + - ipc/util.c: sysvipc_find_ipc() should increase position index + - kconfig: qconf: Fix a few alignment issues + - lib/raid6/test: fix build on distros whose /bin/sh is not bash + - s390/cio: generate delayed uevent for vfio-ccw subchannels + - s390/cio: avoid duplicated 'ADD' uevents + - loop: Better discard support for block devices + - Revert "powerpc/64: irq_work avoid interrupt when called with hardware irqs + enabled" + - powerpc/pseries: Fix MCE handling on pseries + - nvme: fix compat address handling in several ioctls + - pwm: renesas-tpu: Fix late Runtime PM enablement + - pwm: bcm2835: Dynamically allocate base + - perf/core: Disable page faults when getting phys address + - drm/amd/display: Calculate scaling ratios on every medium/full update + - ASoC: Intel: bytcr_rt5640: Add quirk for MPMAN MPWIN895CL tablet + - ALSA: usb-audio: Add Pioneer DJ DJM-250MK2 quirk + - drm/amd/display: Not doing optimize bandwidth if flip pending. + - cxgb4: fix adapter crash due to wrong MC size + - cxgb4: fix large delays in PTP synchronization + - ipv4: Update fib_select_default to handle nexthop objects + - ipv6: fix restrict IPV6_ADDRFORM operation + - macsec: avoid to set wrong mtu + - macvlan: fix null dereference in macvlan_device_event() + - mlxsw: Fix some IS_ERR() vs NULL bugs + - net: bcmgenet: correct per TX/RX ring statistics + - net/mlx4_en: avoid indirect call in TX completion + - net: netrom: Fix potential nr_neigh refcnt leak in nr_add_node + - net: openvswitch: ovs_ct_exit to be done under ovs_lock + - net: stmmac: dwmac-meson8b: Add missing boundary to RGMII TX clock array + - net/x25: Fix x25_neigh refcnt leak when receiving frame + - sched: etf: do not assume all sockets are full blown + - selftests: Fix suppress test in fib_tests.sh + - tcp: cache line align MAX_TCP_HEADER + - team: fix hang in team_mode_get() + - vrf: Fix IPv6 with qdisc and xfrm + - net: dsa: b53: Lookup VID in ARL searches when VLAN is enabled + - net: dsa: b53: Fix valid setting for MDB entries + - net: dsa: b53: Fix ARL register definitions + - net: dsa: b53: Rework ARL bin logic + - net: dsa: b53: b53_arl_rw_op() needs to select IVL or SVL + - vxlan: use the correct nlattr array in NL_SET_ERR_MSG_ATTR + - geneve: use the correct nlattr array in NL_SET_ERR_MSG_ATTR + - xfrm: Always set XFRM_TRANSFORMED in xfrm{4,6}_output_finish + - vrf: Check skb for XFRM_TRANSFORMED flag + - KEYS: Avoid false positive ENOMEM error on key read + - ALSA: hda: Remove ASUS ROG Zenith from the blacklist + - ALSA: usb-audio: Add static mapping table for ALC1220-VB-based mobos + - ALSA: usb-audio: Add connector notifier delegation + - iio: core: remove extra semi-colon from devm_iio_device_register() macro + - iio: st_sensors: rely on odr mask to know if odr can be set + - iio: adc: stm32-adc: fix sleep in atomic context + - iio: adc: ti-ads8344: properly byte swap value + - iio: xilinx-xadc: Fix ADC-B powerdown + - iio: xilinx-xadc: Fix clearing interrupt when enabling trigger + - iio: xilinx-xadc: Fix sequencer configuration for aux channels in + simultaneous mode + - iio: xilinx-xadc: Make sure not exceed maximum samplerate + - USB: sisusbvga: Change port variable from signed to unsigned + - USB: Add USB_QUIRK_DELAY_CTRL_MSG and USB_QUIRK_DELAY_INIT for Corsair K70 + RGB RAPIDFIRE + - USB: early: Handle AMD's spec-compliant identifiers, too + - USB: core: Fix free-while-in-use bug in the USB S-Glibrary + - USB: hub: Fix handling of connect changes during sleep + - USB: hub: Revert commit bd0e6c9614b9 ("usb: hub: try old enumeration scheme + first for high speed devices") + - tty: serial: owl: add "much needed" clk_prepare_enable() + - vmalloc: fix remap_vmalloc_range() bounds checks + - staging: gasket: Fix incongruency in handling of sysfs entries creation + - coredump: fix null pointer dereference on coredump + - mm/hugetlb: fix a addressing exception caused by huge_pte_offset + - mm/ksm: fix NULL pointer dereference when KSM zero page is enabled + - tools/vm: fix cross-compile build + - ALSA: usx2y: Fix potential NULL dereference + - ALSA: hda/realtek - Fix unexpected init_amp override + - ALSA: hda/realtek - Add new codec supported for ALC245 + - ALSA: hda/hdmi: Add module option to disable audio component binding + - ALSA: usb-audio: Fix usb audio refcnt leak when getting spdif + - ALSA: usb-audio: Filter out unsupported sample rates on Focusrite devices + - tpm/tpm_tis: Free IRQ if probing fails + - tpm: fix wrong return value in tpm_pcr_extend + - tpm: ibmvtpm: retry on H_CLOSED in tpm_ibmvtpm_send() + - KVM: s390: Return last valid slot if approx index is out-of-bounds + - KVM: Check validity of resolved slot when searching memslots + - KVM: VMX: Enable machine check support for 32bit targets + - tty: hvc: fix buffer overflow during hvc_alloc(). + - tty: rocket, avoid OOB access + - usb-storage: Add unusual_devs entry for JMicron JMS566 + - signal: Avoid corrupting si_pid and si_uid in do_notify_parent + - audit: check the length of userspace generated audit records + - ASoC: dapm: fixup dapm kcontrol widget + - mac80211: populate debugfs only after cfg80211 init + - SUNRPC: Fix backchannel RPC soft lockups + - iwlwifi: pcie: actually release queue memory in TVQM + - iwlwifi: mvm: beacon statistics shouldn't go backwards + - iwlwifi: mvm: limit maximum queue appropriately + - iwlwifi: mvm: Do not declare support for ACK Enabled Aggregation + - iwlwifi: mvm: fix inactive TID removal return value usage + - cifs: fix uninitialised lease_key in open_shroot() + - ARM: imx: provide v7_cpu_resume() only on ARM_CPU_SUSPEND=y + - powerpc/setup_64: Set cache-line-size based on cache-block-size + - staging: comedi: dt2815: fix writing hi byte of analog output + - staging: comedi: Fix comedi_device refcnt leak in comedi_open + - vt: don't hardcode the mem allocation upper bound + - vt: don't use kmalloc() for the unicode screen buffer + - staging: vt6656: Don't set RCR_MULTICAST or RCR_BROADCAST by default. + - staging: vt6656: Fix calling conditions of vnt_set_bss_mode + - staging: vt6656: Fix drivers TBTT timing counter. + - staging: vt6656: Fix pairwise key entry save. + - staging: vt6656: Power save stop wake_up_count wrap around. + - cdc-acm: close race betrween suspend() and acm_softint + - cdc-acm: introduce a cool down + - UAS: no use logging any details in case of ENODEV + - UAS: fix deadlock in error handling and PM flushing work + - fpga: dfl: pci: fix return value of cci_pci_sriov_configure + - usb: dwc3: gadget: Fix request completion check + - usb: f_fs: Clear OS Extended descriptor counts to zero in ffs_data_reset() + - usb: typec: tcpm: Ignore CC and vbus changes in PORT_RESET change + - usb: typec: altmode: Fix typec_altmode_get_partner sometimes returning an + invalid pointer + - xhci: Fix handling halted endpoint even if endpoint ring appears empty + - xhci: prevent bus suspend if a roothub port detected a over-current + condition + - xhci: Don't clear hub TT buffer on ep0 protocol stall + - serial: sh-sci: Make sure status register SCxSR is read in correct sequence + - Revert "serial: uartps: Fix uartps_major handling" + - Revert "serial: uartps: Use the same dynamic major number for all ports" + - Revert "serial: uartps: Fix error path when alloc failed" + - Revert "serial: uartps: Do not allow use aliases >= MAX_UART_INSTANCES" + - Revert "serial: uartps: Change uart ID port allocation" + - Revert "serial: uartps: Move Port ID to device data structure" + - Revert "serial: uartps: Register own uart console and driver structures" + - powerpc/kuap: PPC_KUAP_DEBUG should depend on PPC_KUAP + - powerpc/mm: Fix CONFIG_PPC_KUAP_DEBUG on PPC32 + - compat: ARM64: always include asm-generic/compat.h + - Linux 5.4.36 + * Focal update: v5.4.35 upstream stable release (LP: #1875660) + - ext4: use non-movable memory for superblock readahead + - watchdog: sp805: fix restart handler + - xsk: Fix out of boundary write in __xsk_rcv_memcpy + - arm, bpf: Fix bugs with ALU64 {RSH, ARSH} BPF_K shift by 0 + - arm, bpf: Fix offset overflow for BPF_MEM BPF_DW + - objtool: Fix switch table detection in .text.unlikely + - scsi: sg: add sg_remove_request in sg_common_write + - ALSA: hda: Honor PM disablement in PM freeze and thaw_noirq ops + - ARM: dts: imx6: Use gpc for FEC interrupt controller to fix wake on LAN. + - kbuild, btf: Fix dependencies for DEBUG_INFO_BTF + - netfilter: nf_tables: report EOPNOTSUPP on unsupported flags/object type + - irqchip/mbigen: Free msi_desc on device teardown + - ALSA: hda: Don't release card at firmware loading error + - xsk: Add missing check on user supplied headroom size + - of: unittest: kmemleak on changeset destroy + - of: unittest: kmemleak in of_unittest_platform_populate() + - of: unittest: kmemleak in of_unittest_overlay_high_level() + - of: overlay: kmemleak in dup_and_fixup_symbol_prop() + - x86/Hyper-V: Unload vmbus channel in hv panic callback + - x86/Hyper-V: Trigger crash enlightenment only once during system crash. + - x86/Hyper-V: Report crash register data or kmsg before running crash kernel + - x86/Hyper-V: Report crash register data when sysctl_record_panic_msg is not + set + - x86/Hyper-V: Report crash data in die() when panic_on_oops is set + - afs: Fix missing XDR advance in xdr_decode_{AFS,YFS}FSFetchStatus() + - afs: Fix decoding of inline abort codes from version 1 status records + - afs: Fix rename operation status delivery + - afs: Fix afs_d_validate() to set the right directory version + - afs: Fix race between post-modification dir edit and readdir/d_revalidate + - block, bfq: turn put_queue into release_process_ref in + __bfq_bic_change_cgroup + - block, bfq: make reparent_leaf_entity actually work only on leaf entities + - block, bfq: invoke flush_idle_tree after reparent_active_queues in + pd_offline + - rbd: avoid a deadlock on header_rwsem when flushing notifies + - rbd: call rbd_dev_unprobe() after unwatching and flushing notifies + - x86/Hyper-V: Free hv_panic_page when fail to register kmsg dump + - drm/ttm: flush the fence on the bo after we individualize the reservation + object + - clk: Don't cache errors from clk_ops::get_phase() + - clk: at91: usb: continue if clk_hw_round_rate() return zero + - net/mlx5e: Enforce setting of a single FEC mode + - f2fs: fix the panic in do_checkpoint() + - ARM: dts: rockchip: fix vqmmc-supply property name for rk3188-bqedison2qc + - arm64: dts: allwinner: a64: Fix display clock register range + - power: supply: bq27xxx_battery: Silence deferred-probe error + - clk: tegra: Fix Tegra PMC clock out parents + - arm64: tegra: Add PCIe endpoint controllers nodes for Tegra194 + - arm64: tegra: Fix Tegra194 PCIe compatible string + - arm64: dts: clearfog-gt-8k: set gigabit PHY reset deassert delay + - soc: imx: gpc: fix power up sequencing + - dma-coherent: fix integer overflow in the reserved-memory dma allocation + - rtc: 88pm860x: fix possible race condition + - NFS: alloc_nfs_open_context() must use the file cred when available + - NFSv4/pnfs: Return valid stateids in nfs_layout_find_inode_by_stateid() + - NFSv4.2: error out when relink swapfile + - ARM: dts: rockchip: fix lvds-encoder ports subnode for rk3188-bqedison2qc + - KVM: PPC: Book3S HV: Fix H_CEDE return code for nested guests + - f2fs: fix to show norecovery mount option + - phy: uniphier-usb3ss: Add Pro5 support + - NFS: direct.c: Fix memory leak of dreq when nfs_get_lock_context fails + - f2fs: Fix mount failure due to SPO after a successful online resize FS + - f2fs: Add a new CP flag to help fsck fix resize SPO issues + - s390/cpuinfo: fix wrong output when CPU0 is offline + - hibernate: Allow uswsusp to write to swap + - btrfs: add RCU locks around block group initialization + - powerpc/prom_init: Pass the "os-term" message to hypervisor + - powerpc/maple: Fix declaration made after definition + - s390/cpum_sf: Fix wrong page count in error message + - ext4: do not commit super on read-only bdev + - um: ubd: Prevent buffer overrun on command completion + - cifs: Allocate encryption header through kmalloc + - mm/hugetlb: fix build failure with HUGETLB_PAGE but not HUGEBTLBFS + - drm/nouveau/svm: check for SVM initialized before migrating + - drm/nouveau/svm: fix vma range check for migration + - include/linux/swapops.h: correct guards for non_swap_entry() + - percpu_counter: fix a data race at vm_committed_as + - compiler.h: fix error in BUILD_BUG_ON() reporting + - KVM: s390: vsie: Fix possible race when shadowing region 3 tables + - drm/nouveau: workaround runpm fail by disabling PCI power management on + certain intel bridges + - leds: core: Fix warning message when init_data + - x86: ACPI: fix CPU hotplug deadlock + - csky: Fixup cpu speculative execution to IO area + - drm/amdkfd: kfree the wrong pointer + - NFS: Fix memory leaks in nfs_pageio_stop_mirroring() + - csky: Fixup get wrong psr value from phyical reg + - f2fs: fix NULL pointer dereference in f2fs_write_begin() + - ACPICA: Fixes for acpiExec namespace init file + - um: falloc.h needs to be directly included for older libc + - drm/vc4: Fix HDMI mode validation + - iommu/virtio: Fix freeing of incomplete domains + - iommu/vt-d: Fix mm reference leak + - ext2: fix empty body warnings when -Wextra is used + - iommu/vt-d: Silence RCU-list debugging warning in dmar_find_atsr() + - iommu/vt-d: Fix page request descriptor size + - ext2: fix debug reference to ext2_xattr_cache + - sunrpc: Fix gss_unwrap_resp_integ() again + - csky: Fixup init_fpu compile warning with __init + - power: supply: axp288_fuel_gauge: Broaden vendor check for Intel Compute + Sticks. + - libnvdimm: Out of bounds read in __nd_ioctl() + - iommu/amd: Fix the configuration of GCR3 table root pointer + - f2fs: fix to wait all node page writeback + - drm/nouveau/gr/gp107,gp108: implement workaround for HW hanging during init + - net: dsa: bcm_sf2: Fix overflow checks + - dma-debug: fix displaying of dma allocation type + - fbdev: potential information leak in do_fb_ioctl() + - ARM: dts: sunxi: Fix DE2 clocks register range + - iio: si1133: read 24-bit signed integer for measurement + - fbmem: Adjust indentation in fb_prepare_logo and fb_blank + - tty: evh_bytechan: Fix out of bounds accesses + - locktorture: Print ratio of acquisitions, not failures + - mtd: rawnand: free the nand_device object + - mtd: spinand: Explicitly use MTD_OPS_RAW to write the bad block marker to + OOB + - docs: Fix path to MTD command line partition parser + - mtd: lpddr: Fix a double free in probe() + - mtd: phram: fix a double free issue in error path + - KEYS: Don't write out to userspace while holding key semaphore + - bpf: fix buggy r0 retval refinement for tracing helpers + - bpf: Test_verifier, bpf_get_stack return value add <0 + - bpf: Test_progs, add test to catch retval refine error handling + - SAUCE: bpf: Test_progs, fix test_get_stack_rawtp_err.c build + - bpf, test_verifier: switch bpf_get_stack's 0 s> r8 test + - Linux 5.4.35 + * Killer(R) Wi-Fi 6 AX1650i 160MHz Wireless Network Adapter (201NGW), + REV=0x354 [8086:a0f0] subsystem id [1a56:1651] wireless adapter not found + due to firmware crash (LP: #1874685) + - iwlwifi: pcie: handle QuZ configs with killer NICs as well + * Support DMIC micmute LED on HP platforms (LP: #1876859) + - ALSA: hda/realtek - Introduce polarity for micmute LED GPIO + - ALSA: hda/realtek - Enable micmute LED on and HP system + - ALSA: hda/realtek - Add LED class support for micmute LED + - ALSA: hda/realtek - Fix unused variable warning w/o + CONFIG_LEDS_TRIGGER_AUDIO + - ASoC: SOF: Update correct LED status at the first time usage of + update_mute_led() + * linux: riscv: set max_pfn to the PFN of the last page (LP: #1876885) + - riscv: set max_pfn to the PFN of the last page + * Dell XPS 13 9300 mirror mode doesn't work sometimes with WD19TB + (LP: #1877013) + - drm/i915/perf: Do not clear pollin for small user read buffers + * [UBUNTU 20.04] s390x/pci: do not allow to create more pci functions than + configured via CONFIG_PCI_NR_FUNCTIONS (LP: #1874057) + - s390/pci: Fix zpci_alloc_domain() over allocation + * [Ubuntu 20.04] net/mlx5e: Fix endianness handling in pedit mask + (LP: #1872726) + - net/mlx5e: Fix endianness handling in pedit mask + * rtkit-daemon[*]: Failed to make ourselves RT: Operation not permitted after + upgrade to 20.04 (LP: #1875665) + - [Config] Turn off CONFIG_RT_GROUP_SCHED everywhere + * ceph -- Unable to mount ceph volume on s390x (LP: #1875863) + - ceph: fix endianness bug when handling MDS session feature bits + * Do not treat unresolved test case in ftrace from ubuntu_kernel_selftests as + failure (LP: #1877958) + - ftrace/selftest: make unresolved cases cause failure if --fail-unresolved + set + * Add support for Ambiq micro AM1805 RTC chip (LP: #1876667) + - SAUCE: rtc: add am-1805 RTC driver + * alsa/sof: kernel oops on the machine without Intel hdmi audio codec (a + regression in the asoc machine driver) (LP: #1874359) + - SAUCE: ASoC: intel/skl/hda - fix oops on systems without i915 audio codec + * 'Elan touchpad' not detected on 'Lenovo ThinkBook 15 IIL' (LP: #1861610) + - SAUCE: Input: elan_i2c - add more hardware ID for Lenovo laptop + + [ Ubuntu: 5.4.0-33.37 ] + + * focal/linux: 5.4.0-33.37 -proposed tracker (LP: #1879926) + * Docker registry doesn't stay up and keeps restarting (LP: #1879690) + - Revert "UBUNTU: SAUCE: overlayfs: fix shitfs special-casing" + - Revert "UBUNTU: SAUCE: overlayfs: use shiftfs hacks only with shiftfs as + underlay" + + -- Marcelo Henrique Cerri Wed, 27 May 2020 15:18:18 -0300 + +linux-azure (5.4.0-1012.12) focal; urgency=medium + + * focal/linux-azure: 5.4.0-1012.12 -proposed tracker (LP: #1877998) + + [ Ubuntu: 5.4.0-31.35 ] + + * focal/linux: 5.4.0-31.35 -proposed tracker (LP: #1877253) + * Intermittent display blackouts on event (LP: #1875254) + - drm/i915: Limit audio CDCLK>=2*BCLK constraint back to GLK only + * Unable to handle kernel pointer dereference in virtual kernel address space + on Eoan (LP: #1876645) + - SAUCE: overlayfs: fix shitfs special-casing + + -- Stefan Bader Mon, 11 May 2020 15:19:48 +0200 + +linux-azure (5.4.0-1011.11) focal; urgency=medium + + * focal/linux-azure: 5.4.0-1011.11 -proposed tracker (LP: #1875380) + + * Packaging resync (LP: #1786013) + - [Packaging] add libcap-dev dependency + + [ Ubuntu: 5.4.0-30.34 ] + + * focal/linux: 5.4.0-30.34 -proposed tracker (LP: #1875385) + * ubuntu/focal64 fails to mount Vagrant shared folders (LP: #1873506) + - [Packaging] Move virtualbox modules to linux-modules + - [Packaging] Remove vbox and zfs modules from generic.inclusion-list + * linux-image-5.0.0-35-generic breaks checkpointing of container + (LP: #1857257) + - SAUCE: overlayfs: use shiftfs hacks only with shiftfs as underlay + * shiftfs: broken shiftfs nesting (LP: #1872094) + - SAUCE: shiftfs: record correct creator credentials + * Add debian/rules targets to compile/run kernel selftests (LP: #1874286) + - [Packaging] add support to compile/run selftests + * shiftfs: O_TMPFILE reports ESTALE (LP: #1872757) + - SAUCE: shiftfs: fix dentry revalidation + * LIO hanging in iscsit_free_session and iscsit_stop_session (LP: #1871688) + - scsi: target: iscsi: calling iscsit_stop_session() inside + iscsit_close_session() has no effect + * [ICL] TC port in legacy/static mode can't be detected due TCCOLD + (LP: #1868936) + - SAUCE: drm/i915: Align power domain names with port names + - SAUCE: drm/i915/display: Move out code to return the digital_port of the aux + ch + - SAUCE: drm/i915/display: Add intel_legacy_aux_to_power_domain() + - SAUCE: drm/i915/display: Split hsw_power_well_enable() into two + - SAUCE: drm/i915/tc/icl: Implement TC cold sequences + - SAUCE: drm/i915/tc: Skip ref held check for TC legacy aux power wells + - SAUCE: drm/i915/tc/tgl: Implement TC cold sequences + - SAUCE: drm/i915/tc: Catch TC users accessing FIA registers without enable + aux + - SAUCE: drm/i915/tc: Do not warn when aux power well of static TC ports + timeout + * alsa/sof: external mic can't be deteced on Lenovo and HP laptops + (LP: #1872569) + - SAUCE: ASoC: intel/skl/hda - set autosuspend timeout for hda codecs + * amdgpu kernel errors in Linux 5.4 (LP: #1871248) + - drm/amd/display: Stop if retimer is not available + * Focal update: v5.4.34 upstream stable release (LP: #1874111) + - amd-xgbe: Use __napi_schedule() in BH context + - hsr: check protocol version in hsr_newlink() + - l2tp: Allow management of tunnels and session in user namespace + - net: dsa: mt7530: fix tagged frames pass-through in VLAN-unaware mode + - net: ipv4: devinet: Fix crash when add/del multicast IP with autojoin + - net: ipv6: do not consider routes via gateways for anycast address check + - net: phy: micrel: use genphy_read_status for KSZ9131 + - net: qrtr: send msgs from local of same id as broadcast + - net: revert default NAPI poll timeout to 2 jiffies + - net: tun: record RX queue in skb before do_xdp_generic() + - net: dsa: mt7530: move mt7623 settings out off the mt7530 + - net: ethernet: mediatek: move mt7623 settings out off the mt7530 + - net/mlx5: Fix frequent ioread PCI access during recovery + - net/mlx5e: Add missing release firmware call + - net/mlx5e: Fix nest_level for vlan pop action + - net/mlx5e: Fix pfnum in devlink port attribute + - net: stmmac: dwmac-sunxi: Provide TX and RX fifo sizes + - ovl: fix value of i_ino for lower hardlink corner case + - scsi: ufs: Fix ufshcd_hold() caused scheduling while atomic + - platform/chrome: cros_ec_rpmsg: Fix race with host event + - jbd2: improve comments about freeing data buffers whose page mapping is NULL + - acpi/nfit: improve bounds checking for 'func' + - perf report: Fix no branch type statistics report issue + - pwm: pca9685: Fix PWM/GPIO inter-operation + - ext4: fix incorrect group count in ext4_fill_super error message + - ext4: fix incorrect inodes per group in error message + - clk: at91: sam9x60: fix usb clock parents + - clk: at91: usb: use proper usbs_mask + - ARM: dts: imx7-colibri: fix muxing of usbc_det pin + - arm64: dts: librem5-devkit: add a vbus supply to usb0 + - usb: dwc3: gadget: Don't clear flags before transfer ended + - ASoC: Intel: mrfld: fix incorrect check on p->sink + - ASoC: Intel: mrfld: return error codes when an error occurs + - ALSA: hda/realtek - Enable the headset mic on Asus FX505DT + - ALSA: usb-audio: Filter error from connector kctl ops, too + - ALSA: usb-audio: Don't override ignore_ctl_error value from the map + - ALSA: usb-audio: Don't create jack controls for PCM terminals + - ALSA: usb-audio: Check mapping at creating connector controls, too + - arm64: vdso: don't free unallocated pages + - keys: Fix proc_keys_next to increase position index + - tracing: Fix the race between registering 'snapshot' event trigger and + triggering 'snapshot' operation + - btrfs: check commit root generation in should_ignore_root + - nl80211: fix NL80211_ATTR_FTM_RESPONDER policy + - mac80211: fix race in ieee80211_register_hw() + - mac80211_hwsim: Use kstrndup() in place of kasprintf() + - net/mlx5e: Encapsulate updating netdev queues into a function + - net/mlx5e: Rename hw_modify to preactivate + - net/mlx5e: Use preactivate hook to set the indirection table + - drm/amd/powerplay: force the trim of the mclk dpm_levels if OD is enabled + - drm/amdgpu: fix the hw hang during perform system reboot and reset + - i2c: designware: platdrv: Remove DPM_FLAG_SMART_SUSPEND flag on BYT and CHT + - ext4: do not zeroout extents beyond i_disksize + - irqchip/ti-sci-inta: Fix processing of masked irqs + - x86/resctrl: Preserve CDP enable over CPU hotplug + - x86/resctrl: Fix invalid attempt at removing the default resource group + - scsi: target: remove boilerplate code + - scsi: target: fix hang when multiple threads try to destroy the same iscsi + session + - x86/microcode/AMD: Increase microcode PATCH_MAX_SIZE + - Linux 5.4.34 + * Focal update: v5.4.33 upstream stable release (LP: #1873481) + - ARM: dts: sun8i-a83t-tbs-a711: HM5065 doesn't like such a high voltage + - bus: sunxi-rsb: Return correct data when mixing 16-bit and 8-bit reads + - ARM: dts: Fix dm814x Ethernet by changing to use rgmii-id mode + - bpf: Fix deadlock with rq_lock in bpf_send_signal() + - iwlwifi: mvm: Fix rate scale NSS configuration + - Input: tm2-touchkey - add support for Coreriver TC360 variant + - soc: fsl: dpio: register dpio irq handlers after dpio create + - rxrpc: Abstract out the calculation of whether there's Tx space + - rxrpc: Fix call interruptibility handling + - net: stmmac: platform: Fix misleading interrupt error msg + - net: vxge: fix wrong __VA_ARGS__ usage + - hinic: fix a bug of waitting for IO stopped + - hinic: fix the bug of clearing event queue + - hinic: fix out-of-order excution in arm cpu + - hinic: fix wrong para of wait_for_completion_timeout + - hinic: fix wrong value of MIN_SKB_LEN + - selftests/net: add definition for SOL_DCCP to fix compilation errors for old + libc + - cxgb4/ptp: pass the sign of offset delta in FW CMD + - drm/scheduler: fix rare NULL ptr race + - cfg80211: Do not warn on same channel at the end of CSA + - qlcnic: Fix bad kzalloc null test + - i2c: st: fix missing struct parameter description + - i2c: pca-platform: Use platform_irq_get_optional + - media: rc: add keymap for Videostrong KII Pro + - cpufreq: imx6q: Fixes unwanted cpu overclocking on i.MX6ULL + - staging: wilc1000: avoid double unlocking of 'wilc->hif_cs' mutex + - media: venus: hfi_parser: Ignore HEVC encoding for V1 + - firmware: arm_sdei: fix double-lock on hibernate with shared events + - null_blk: Fix the null_add_dev() error path + - null_blk: Handle null_add_dev() failures properly + - null_blk: fix spurious IO errors after failed past-wp access + - media: imx: imx7_mipi_csis: Power off the source when stopping streaming + - media: imx: imx7-media-csi: Fix video field handling + - xhci: bail out early if driver can't accress host in resume + - x86: Don't let pgprot_modify() change the page encryption bit + - dma-mapping: Fix dma_pgprot() for unencrypted coherent pages + - block: keep bdi->io_pages in sync with max_sectors_kb for stacked devices + - debugfs: Check module state before warning in {full/open}_proxy_open() + - irqchip/versatile-fpga: Handle chained IRQs properly + - time/sched_clock: Expire timer in hardirq context + - media: allegro: fix type of gop_length in channel_create message + - sched: Avoid scale real weight down to zero + - selftests/x86/ptrace_syscall_32: Fix no-vDSO segfault + - PCI/switchtec: Fix init_completion race condition with poll_wait() + - block, bfq: move forward the getting of an extra ref in bfq_bfqq_move + - media: i2c: video-i2c: fix build errors due to 'imply hwmon' + - libata: Remove extra scsi_host_put() in ata_scsi_add_hosts() + - pstore/platform: fix potential mem leak if pstore_init_fs failed + - gfs2: Do log_flush in gfs2_ail_empty_gl even if ail list is empty + - gfs2: Don't demote a glock until its revokes are written + - cpufreq: imx6q: fix error handling + - x86/boot: Use unsigned comparison for addresses + - efi/x86: Ignore the memory attributes table on i386 + - genirq/irqdomain: Check pointer in irq_domain_alloc_irqs_hierarchy() + - block: Fix use-after-free issue accessing struct io_cq + - media: i2c: ov5695: Fix power on and off sequences + - usb: dwc3: core: add support for disabling SS instances in park mode + - irqchip/gic-v4: Provide irq_retrigger to avoid circular locking dependency + - md: check arrays is suspended in mddev_detach before call quiesce operations + - firmware: fix a double abort case with fw_load_sysfs_fallback + - spi: spi-fsl-dspi: Replace interruptible wait queue with a simple completion + - locking/lockdep: Avoid recursion in lockdep_count_{for,back}ward_deps() + - block, bfq: fix use-after-free in bfq_idle_slice_timer_body + - btrfs: qgroup: ensure qgroup_rescan_running is only set when the worker is + at least queued + - btrfs: remove a BUG_ON() from merge_reloc_roots() + - btrfs: restart relocate_tree_blocks properly + - btrfs: track reloc roots based on their commit root bytenr + - ASoC: fix regwmask + - ASoC: dapm: connect virtual mux with default value + - ASoC: dpcm: allow start or stop during pause for backend + - ASoC: topology: use name_prefix for new kcontrol + - usb: gadget: f_fs: Fix use after free issue as part of queue failure + - usb: gadget: composite: Inform controller driver of self-powered + - ALSA: usb-audio: Add mixer workaround for TRX40 and co + - ALSA: hda: Add driver blacklist + - ALSA: hda: Fix potential access overflow in beep helper + - ALSA: ice1724: Fix invalid access for enumerated ctl items + - ALSA: pcm: oss: Fix regression by buffer overflow fix + - ALSA: hda/realtek - a fake key event is triggered by running shutup + - ALSA: doc: Document PC Beep Hidden Register on Realtek ALC256 + - ALSA: hda/realtek - Set principled PC Beep configuration for ALC256 + - ALSA: hda/realtek - Remove now-unnecessary XPS 13 headphone noise fixups + - ALSA: hda/realtek - Add quirk for Lenovo Carbon X1 8th gen + - ALSA: hda/realtek - Add quirk for MSI GL63 + - media: venus: firmware: Ignore secure call error on first resume + - media: hantro: Read be32 words starting at every fourth byte + - media: ti-vpe: cal: fix disable_irqs to only the intended target + - media: ti-vpe: cal: fix a kernel oops when unloading module + - seccomp: Add missing compat_ioctl for notify + - acpi/x86: ignore unspecified bit positions in the ACPI global lock field + - ACPICA: Allow acpi_any_gpe_status_set() to skip one GPE + - ACPI: PM: s2idle: Refine active GPEs check + - thermal: devfreq_cooling: inline all stubs for CONFIG_DEVFREQ_THERMAL=n + - nvmet-tcp: fix maxh2cdata icresp parameter + - efi/x86: Add TPM related EFI tables to unencrypted mapping checks + - PCI: pciehp: Fix indefinite wait on sysfs requests + - PCI/ASPM: Clear the correct bits when enabling L1 substates + - PCI: Add boot interrupt quirk mechanism for Xeon chipsets + - PCI: qcom: Fix the fixup of PCI_VENDOR_ID_QCOM + - PCI: endpoint: Fix for concurrent memory allocation in OB address region + - sched/fair: Fix enqueue_task_fair warning + - tpm: Don't make log failures fatal + - tpm: tpm1_bios_measurements_next should increase position index + - tpm: tpm2_bios_measurements_next should increase position index + - cpu/hotplug: Ignore pm_wakeup_pending() for disable_nonboot_cpus() + - genirq/debugfs: Add missing sanity checks to interrupt injection + - irqchip/versatile-fpga: Apply clear-mask earlier + - io_uring: remove bogus RLIMIT_NOFILE check in file registration + - pstore: pstore_ftrace_seq_next should increase position index + - MIPS/tlbex: Fix LDDIR usage in setup_pw() for Loongson-3 + - MIPS: OCTEON: irq: Fix potential NULL pointer dereference + - PM / Domains: Allow no domain-idle-states DT property in genpd when parsing + - PM: sleep: wakeup: Skip wakeup_source_sysfs_remove() if device is not there + - ath9k: Handle txpower changes even when TPC is disabled + - signal: Extend exec_id to 64bits + - x86/tsc_msr: Use named struct initializers + - x86/tsc_msr: Fix MSR_FSB_FREQ mask for Cherry Trail devices + - x86/tsc_msr: Make MSR derived TSC frequency more accurate + - x86/entry/32: Add missing ASM_CLAC to general_protection entry + - platform/x86: asus-wmi: Support laptops where the first battery is named + BATT + - KVM: nVMX: Properly handle userspace interrupt window request + - KVM: s390: vsie: Fix region 1 ASCE sanity shadow address checks + - KVM: s390: vsie: Fix delivery of addressing exceptions + - KVM: x86: Allocate new rmap and large page tracking when moving memslot + - KVM: VMX: Always VMCLEAR in-use VMCSes during crash with kexec support + - KVM: x86: Gracefully handle __vmalloc() failure during VM allocation + - KVM: VMX: Add a trampoline to fix VMREAD error handling + - KVM: VMX: fix crash cleanup when KVM wasn't used + - smb3: fix performance regression with setting mtime + - CIFS: Fix bug which the return value by asynchronous read is error + - mtd: spinand: Stop using spinand->oobbuf for buffering bad block markers + - mtd: spinand: Do not erase the block before writing a bad block marker + - btrfs: Don't submit any btree write bio if the fs has errors + - Btrfs: fix crash during unmount due to race with delayed inode workers + - btrfs: reloc: clean dirty subvols if we fail to start a transaction + - btrfs: set update the uuid generation as soon as possible + - btrfs: drop block from cache on error in relocation + - btrfs: fix missing file extent item for hole after ranged fsync + - btrfs: unset reloc control if we fail to recover + - btrfs: fix missing semaphore unlock in btrfs_sync_file + - btrfs: use nofs allocations for running delayed items + - remoteproc: qcom_q6v5_mss: Don't reassign mpss region on shutdown + - remoteproc: qcom_q6v5_mss: Reload the mba region on coredump + - remoteproc: Fix NULL pointer dereference in rproc_virtio_notify + - crypto: rng - Fix a refcounting bug in crypto_rng_reset() + - crypto: mxs-dcp - fix scatterlist linearization for hash + - erofs: correct the remaining shrink objects + - io_uring: honor original task RLIMIT_FSIZE + - mmc: sdhci-of-esdhc: fix esdhc_reset() for different controller versions + - powerpc/pseries: Drop pointless static qualifier in vpa_debugfs_init() + - tools: gpio: Fix out-of-tree build regression + - net: qualcomm: rmnet: Allow configuration updates to existing devices + - arm64: dts: allwinner: h6: Fix PMU compatible + - sched/core: Remove duplicate assignment in sched_tick_remote() + - arm64: dts: allwinner: h5: Fix PMU compatible + - mm, memcg: do not high throttle allocators based on wraparound + - dm writecache: add cond_resched to avoid CPU hangs + - dm integrity: fix a crash with unusually large tag size + - dm verity fec: fix memory leak in verity_fec_dtr + - dm clone: Add overflow check for number of regions + - dm clone metadata: Fix return type of dm_clone_nr_of_hydrated_regions() + - XArray: Fix xas_pause for large multi-index entries + - xarray: Fix early termination of xas_for_each_marked + - crypto: caam/qi2 - fix chacha20 data size error + - crypto: caam - update xts sector size for large input length + - crypto: ccree - protect against empty or NULL scatterlists + - crypto: ccree - only try to map auth tag if needed + - crypto: ccree - dec auth tag size from cryptlen map + - scsi: zfcp: fix missing erp_lock in port recovery trigger for point-to-point + - scsi: ufs: fix Auto-Hibern8 error detection + - ARM: dts: exynos: Fix polarity of the LCD SPI bus on UniversalC210 board + - arm64: dts: ti: k3-am65: Add clocks to dwc3 nodes + - arm64: armv8_deprecated: Fix undef_hook mask for thumb setend + - selftests: vm: drop dependencies on page flags from mlock2 tests + - selftests/vm: fix map_hugetlb length used for testing read and write + - selftests/powerpc: Add tlbie_test in .gitignore + - vfio: platform: Switch to platform_get_irq_optional() + - drm/i915/gem: Flush all the reloc_gpu batch + - drm/etnaviv: rework perfmon query infrastructure + - drm: Remove PageReserved manipulation from drm_pci_alloc + - drm/amdgpu/powerplay: using the FCLK DPM table to set the MCLK + - drm/amdgpu: unify fw_write_wait for new gfx9 asics + - powerpc/pseries: Avoid NULL pointer dereference when drmem is unavailable + - nfsd: fsnotify on rmdir under nfsd/clients/ + - NFS: Fix use-after-free issues in nfs_pageio_add_request() + - NFS: Fix a page leak in nfs_destroy_unlinked_subrequests() + - ext4: fix a data race at inode->i_blocks + - fs/filesystems.c: downgrade user-reachable WARN_ONCE() to pr_warn_once() + - ocfs2: no need try to truncate file beyond i_size + - perf tools: Support Python 3.8+ in Makefile + - s390/diag: fix display of diagnose call statistics + - Input: i8042 - add Acer Aspire 5738z to nomux list + - ftrace/kprobe: Show the maxactive number on kprobe_events + - clk: ingenic/jz4770: Exit with error if CGU init failed + - clk: ingenic/TCU: Fix round_rate returning error + - kmod: make request_module() return an error when autoloading is disabled + - cpufreq: powernv: Fix use-after-free + - hfsplus: fix crash and filesystem corruption when deleting files + - ipmi: fix hung processes in __get_guid() + - xen/blkfront: fix memory allocation flags in blkfront_setup_indirect() + - powerpc/64/tm: Don't let userspace set regs->trap via sigreturn + - powerpc/fsl_booke: Avoid creating duplicate tlb1 entry + - powerpc/hash64/devmap: Use H_PAGE_THP_HUGE when setting up huge devmap PTE + entries + - powerpc/xive: Use XIVE_BAD_IRQ instead of zero to catch non configured IPIs + - powerpc/64: Setup a paca before parsing device tree etc. + - powerpc/xive: Fix xmon support on the PowerNV platform + - powerpc/kprobes: Ignore traps that happened in real mode + - powerpc/64: Prevent stack protection in early boot + - scsi: mpt3sas: Fix kernel panic observed on soft HBA unplug + - powerpc: Make setjmp/longjmp signature standard + - arm64: Always force a branch protection mode when the compiler has one + - dm zoned: remove duplicate nr_rnd_zones increase in dmz_init_zone() + - dm clone: replace spin_lock_irqsave with spin_lock_irq + - dm clone: Fix handling of partial region discards + - dm clone: Add missing casts to prevent overflows and data corruption + - Revert "drm/dp_mst: Remove VCPI while disabling topology mgr" + - drm/dp_mst: Fix clearing payload state on topology disable + - drm/amdgpu: fix gfx hang during suspend with video playback (v2) + - drm/i915/icl+: Don't enable DDI IO power on a TypeC port in TBT mode + - powerpc/kasan: Fix kasan_remap_early_shadow_ro() + - mmc: sdhci: Convert sdhci_set_timeout_irq() to non-static + - mmc: sdhci: Refactor sdhci_set_timeout() + - bpf: Fix tnum constraints for 32-bit comparisons + - mfd: dln2: Fix sanity checking for endpoints + - efi/x86: Fix the deletion of variables in mixed mode + - ASoC: stm32: sai: Add missing cleanup + - Linux 5.4.33 + - SUNRPC: fix krb5p mount to provide large enough buffer in rq_rcvsize + * Panic on suspend/resume Kernel panic - not syncing: stack-protector: Kernel + stack is corrupted in: sata_pmp_eh_recover+0xa2b/0xa40 (LP: #1821434) // + Focal update: v5.4.33 upstream stable release (LP: #1873481) + - libata: Return correct status in sata_pmp_eh_recover_pm() when + ATA_DFLAG_DETACH is set + * Focal update: v5.4.32 upstream stable release (LP: #1873292) + - cxgb4: fix MPS index overwrite when setting MAC address + - ipv6: don't auto-add link-local address to lag ports + - net: dsa: bcm_sf2: Do not register slave MDIO bus with OF + - net: dsa: bcm_sf2: Ensure correct sub-node is parsed + - net: dsa: mt7530: fix null pointer dereferencing in port5 setup + - net: phy: micrel: kszphy_resume(): add delay after genphy_resume() before + accessing PHY registers + - net_sched: add a temporary refcnt for struct tcindex_data + - net_sched: fix a missing refcnt in tcindex_init() + - net: stmmac: dwmac1000: fix out-of-bounds mac address reg setting + - tun: Don't put_page() for all negative return values from XDP program + - mlxsw: spectrum_flower: Do not stop at FLOW_ACTION_VLAN_MANGLE + - r8169: change back SG and TSO to be disabled by default + - s390: prevent leaking kernel address in BEAR + - random: always use batched entropy for get_random_u{32,64} + - usb: dwc3: gadget: Wrap around when skip TRBs + - uapi: rename ext2_swab() to swab() and share globally in swab.h + - slub: improve bit diffusion for freelist ptr obfuscation + - tools/accounting/getdelays.c: fix netlink attribute length + - hwrng: imx-rngc - fix an error path + - ACPI: PM: Add acpi_[un]register_wakeup_handler() + - platform/x86: intel_int0002_vgpio: Use acpi_register_wakeup_handler() + - ASoC: jz4740-i2s: Fix divider written at incorrect offset in register + - IB/hfi1: Call kobject_put() when kobject_init_and_add() fails + - IB/hfi1: Fix memory leaks in sysfs registration and unregistration + - IB/mlx5: Replace tunnel mpls capability bits for tunnel_offloads + - ARM: imx: Enable ARM_ERRATA_814220 for i.MX6UL and i.MX7D + - ARM: imx: only select ARM_ERRATA_814220 for ARMv7-A + - ceph: remove the extra slashes in the server path + - ceph: canonicalize server path in place + - include/uapi/linux/swab.h: fix userspace breakage, use __BITS_PER_LONG for + swap + - RDMA/ucma: Put a lock around every call to the rdma_cm layer + - RDMA/cma: Teach lockdep about the order of rtnl and lock + - RDMA/siw: Fix passive connection establishment + - Bluetooth: RFCOMM: fix ODEBUG bug in rfcomm_dev_ioctl + - RDMA/cm: Update num_paths in cma_resolve_iboe_route error flow + - blk-mq: Keep set->nr_hw_queues and set->map[].nr_queues in sync + - fbcon: fix null-ptr-deref in fbcon_switch + - iommu/vt-d: Allow devices with RMRRs to use identity domain + - Linux 5.4.32 + * Focal update: v5.4.31 upstream stable release (LP: #1871651) + - nvme-rdma: Avoid double freeing of async event data + - kconfig: introduce m32-flag and m64-flag + - drm/amd/display: Add link_rate quirk for Apple 15" MBP 2017 + - drm/bochs: downgrade pci_request_region failure from error to warning + - initramfs: restore default compression behavior + - drm/amdgpu: fix typo for vcn1 idle check + - [Packaging] add libcap-dev dependency + - tools/power turbostat: Fix gcc build warnings + - tools/power turbostat: Fix missing SYS_LPI counter on some Chromebooks + - tools/power turbostat: Fix 32-bit capabilities warning + - net/mlx5e: kTLS, Fix TCP seq off-by-1 issue in TX resync flow + - XArray: Fix xa_find_next for large multi-index entries + - padata: fix uninitialized return value in padata_replace() + - brcmfmac: abort and release host after error + - misc: rtsx: set correct pcr_ops for rts522A + - misc: pci_endpoint_test: Fix to support > 10 pci-endpoint-test devices + - misc: pci_endpoint_test: Avoid using module parameter to determine irqtype + - PCI: sysfs: Revert "rescan" file renames + - coresight: do not use the BIT() macro in the UAPI header + - mei: me: add cedar fork device ids + - nvmem: check for NULL reg_read and reg_write before dereferencing + - extcon: axp288: Add wakeup support + - power: supply: axp288_charger: Add special handling for HP Pavilion x2 10 + - Revert "dm: always call blk_queue_split() in dm_process_bio()" + - ALSA: hda/ca0132 - Add Recon3Di quirk to handle integrated sound on EVGA X99 + Classified motherboard + - soc: mediatek: knows_txdone needs to be set in Mediatek CMDQ helper + - net/mlx5e: kTLS, Fix wrong value in record tracker enum + - iwlwifi: consider HE capability when setting LDPC + - iwlwifi: yoyo: don't add TLV offset when reading FIFOs + - iwlwifi: dbg: don't abort if sending DBGC_SUSPEND_RESUME fails + - rxrpc: Fix sendmsg(MSG_WAITALL) handling + - IB/hfi1: Ensure pq is not left on waitlist + - tcp: fix TFO SYNACK undo to avoid double-timestamp-undo + - watchdog: iTCO_wdt: Export vendorsupport + - watchdog: iTCO_wdt: Make ICH_RES_IO_SMI optional + - i2c: i801: Do not add ICH_RES_IO_SMI for the iTCO_wdt device + - net: Fix Tx hash bound checking + - padata: always acquire cpu_hotplug_lock before pinst->lock + - mm: mempolicy: require at least one nodeid for MPOL_PREFERRED + - Linux 5.4.31 + * Add hw timestamps to received skbs in peak_canfd (LP: #1874124) + - can: peak_canfd: provide hw timestamps in rx skbs + * kselftest: seccomp kill_after_ptrace() timeout (LP: #1872047) + - SAUCE: kselftest/runner: allow to properly deliver signals to tests + + [ Ubuntu: 5.4.0-29.33 ] + + * focal/linux: 5.4.0-29.33 -proposed tracker (LP: #1875858) + * Packaging resync (LP: #1786013) + - update dkms package versions + * Add signed modules for the 435 NVIDIA driver (LP: #1875888) + - [Packaging] NVIDIA -- add signed modules for the 435 NVIDIA driver + * built-using constraints preventing uploads (LP: #1875601) + - temporarily drop Built-Using data + + [ Ubuntu: 5.4.0-28.32 ] + + * CVE-2020-11884 + - SAUCE: s390/mm: fix page table upgrade vs 2ndary address mode accesses + + [ Ubuntu: 5.4.0-26.30 ] + + * focal/linux: 5.4.0-26.30 -proposed tracker (LP: #1873882) + * Packaging resync (LP: #1786013) + - update dkms package versions + * swap storms kills interactive use (LP: #1861359) + - SAUCE: drm/i915: prevent direct writeback from the shrinker + * 5.4.0-24.28 does not seem to apply rtprio, whereas -21 does. (LP: #1873315) + - [Config] lowlatency: turn off RT_GROUP_SCHED + * [RTL810xE] No ethernet connection (LP: #1871182) + - net: phy: realtek: fix handling of RTL8105e-integrated PHY + + [ Ubuntu: 5.4.0-25.29 ] + + * focal/linux: 5.4.0-25.29 -proposed tracker (LP: #1873459) + * [TGL] VMD support in TGL (LP: #1855954) + - PCI: vmd: Add bus 224-255 restriction decode + - PCI: vmd: Add device id for VMD device 8086:9A0B + * Can not see the storage with Intel RAID On mode enabled on Intel Comet Lake + (LP: #1871812) + - ahci: Add Intel Comet Lake PCH RAID PCI ID + + -- Stefan Bader Tue, 05 May 2020 16:09:34 +0200 + +linux-azure (5.4.0-1010.10) focal; urgency=medium + + * focal/linux-azure: 5.4.0-1010.10 -proposed tracker (LP: #1871934) + + * Miscellaneous Ubuntu changes + - [Config] CONFIG_RT_GROUP_SCHED=y + + [ Ubuntu: 5.4.0-24.28 ] + + * focal/linux: 5.4.0-24.28 -proposed tracker (LP: #1871939) + * getitimer returns it_value=0 erroneously (LP: #1349028) + - [Config] CONTEXT_TRACKING_FORCE policy should be unset + * 12d1:1038 Dual-Role OTG device on non-HNP port - unable to enumerate USB + device on port 1 (LP: #1047527) + - [Config] USB_OTG_FSM policy not needed + * Add DCPD backlight support for HP CML system (LP: #1871589) + - SAUCE: drm/i915: Force DPCD backlight mode for HP CML 2020 system + * Backlight brightness cannot be adjusted using keys (LP: #1860303) + - SAUCE drm/i915: Force DPCD backlight mode for HP Spectre x360 Convertible + 13t-aw100 + * CVE-2020-11494 + - slcan: Don't transmit uninitialized stack data in padding + * Ubuntu Kernel Support for OpenPOWER NV Secure & Trusted Boot (LP: #1866909) + - powerpc: Detect the secure boot mode of the system + - powerpc/ima: Add support to initialize ima policy rules + - powerpc: Detect the trusted boot state of the system + - powerpc/ima: Define trusted boot policy + - ima: Make process_buffer_measurement() generic + - certs: Add wrapper function to check blacklisted binary hash + - ima: Check against blacklisted hashes for files with modsig + - powerpc/ima: Update ima arch policy to check for blacklist + - powerpc/ima: Indicate kernel modules appended signatures are enforced + - powerpc/powernv: Add OPAL API interface to access secure variable + - powerpc: expose secure variables to userspace via sysfs + - x86/efi: move common keyring handler functions to new file + - powerpc: Load firmware trusted keys/hashes into kernel keyring + - x86/efi: remove unused variables + * [roce-0227]sync mainline kernel 5.6rc3 roce patchset into ubuntu HWE kernel + branch (LP: #1864950) + - RDMA/hns: Cleanups of magic numbers + - RDMA/hns: Optimize eqe buffer allocation flow + - RDMA/hns: Add the workqueue framework for flush cqe handler + - RDMA/hns: Delayed flush cqe process with workqueue + - RDMA/hns: fix spelling mistake: "attatch" -> "attach" + - RDMA/hns: Initialize all fields of doorbells to zero + - RDMA/hns: Treat revision HIP08_A as a special case + - RDMA/hns: Use flush framework for the case in aeq + - RDMA/hns: Stop doorbell update while qp state error + - RDMA/hns: Optimize qp destroy flow + - RDMA/hns: Optimize qp context create and destroy flow + - RDMA/hns: Optimize qp number assign flow + - RDMA/hns: Optimize qp buffer allocation flow + - RDMA/hns: Optimize qp param setup flow + - RDMA/hns: Optimize kernel qp wrid allocation flow + - RDMA/hns: Optimize qp doorbell allocation flow + - RDMA/hns: Check if depth of qp is 0 before configure + * [hns3-0316]sync mainline kernel 5.6rc4 hns3 patchset into ubuntu HWE kernel + branch (LP: #1867586) + - net: hns3: modify an unsuitable print when setting unknown duplex to fibre + - net: hns3: add enabled TC numbers and DWRR weight info in debugfs + - net: hns3: add support for dump MAC ID and loopback status in debugfs + - net: hns3: add missing help info for QS shaper in debugfs + - net: hns3: fix some mixed type assignment + - net: hns3: rename macro HCLGE_MAX_NCL_CONFIG_LENGTH + - net: hns3: remove an unnecessary resetting check in + hclge_handle_hw_ras_error() + - net: hns3: delete some reduandant code + - net: hns3: add a check before PF inform VF to reset + - net: hns3: print out status register when VF receives unknown source + interrupt + - net: hns3: print out command code when dump fails in debugfs + - net: hns3: synchronize some print relating to reset issue + - net: hns3: delete unnecessary logs after kzalloc fails + * [SRU][F/U/OEM-5.6] UBUNTU: SAUCE: Fix amdgpu hang during acpi event + (LP: #1871316) + - SAUCE: drm/amdgpu: Fix oops when pp_funcs is unset in ACPI event + * alsa: make the dmic detection align to the mainline kernel-5.6 + (LP: #1871284) + - ALSA: hda: add Intel DSP configuration / probe code + - ALSA: hda: fix intel DSP config + - ALSA: hda: Allow non-Intel device probe gracefully + - ALSA: hda: More constifications + - ALSA: hda: Rename back to dmic_detect option + - [Config] SND_INTEL_DSP_CONFIG=m + * add_key05 from ubuntu_ltp_syscalls failed (LP: #1869644) + - KEYS: reaching the keys quotas correctly + * Fix authentication fail on Realtek WiFi 8723de (LP: #1871300) + - SAUCE: rtw88: No retry and report for auth and assoc + - SAUCE: rtw88: fix rate for a while after being connected + - SAUCE: rtw88: Move driver IQK to set channel before association for 11N chip + * Add Mute LED support for an HP laptop (LP: #1871090) + - ALSA: hda/realtek: Enable mute LED on an HP system + * dscr_sysfs_test / futex_bench / tm-unavailable in powerpc from + ubuntu_kernel_selftests timeout on PowerPC nodes with B-5.3 (LP: #1864642) + - Revert "UBUNTU: SAUCE: selftests/powerpc -- Disable timeout for benchmark + and tm tests" + - selftests/powerpc: Turn off timeout setting for benchmarks, dscr, signal, tm + * Update 20.0.4 NVMe Core, NVMe FC Transport and nvme-cli for Broadcom Emulex + lpfc driver 12.6.0.x dependencies (LP: #1856340) + - nvme-fc: Sync nvme-fc header to FC-NVME-2 + - nvme-fc and nvmet-fc: sync with FC-NVME-2 header changes + - nvme-fc: Set new cmd set indicator in nvme-fc cmnd iu + - nvme-fc: clarify error messages + - nvme-fc: ensure association_id is cleared regardless of a Disconnect LS + - nvme: resync include/linux/nvme.h with nvmecli + - nvme: Fix parsing of ANA log page + * Update Broadcom Emulex lpfc driver in 5.4 to 12.6.0.x from 5.5 + (LP: #1855303) + - scsi: lpfc: Fix pt2pt discovery on SLI3 HBAs + - scsi: lpfc: Fix premature re-enabling of interrupts in lpfc_sli_host_down + - scsi: lpfc: Fix miss of register read failure check + - scsi: lpfc: Fix NVME io abort failures causing hangs + - scsi: lpfc: Fix device recovery errors after PLOGI failures + - scsi: lpfc: Fix GPF on scsi command completion + - scsi: lpfc: Fix NVMe ABTS in response to receiving an ABTS + - scsi: lpfc: Fix coverity errors on NULL pointer checks + - scsi: lpfc: Fix host hang at boot or slow boot + - scsi: lpfc: Update async event logging + - scsi: lpfc: Complete removal of FCoE T10 PI support on SLI-4 adapters + - scsi: lpfc: cleanup: remove unused fcp_txcmlpq_cnt + - scsi: lpfc: Update lpfc version to 12.4.0.1 + - scsi: lpfc: Make function lpfc_defer_pt2pt_acc static + - scsi: lpfc: fix lpfc_nvmet_mrq to be bound by hdw queue count + - scsi: lpfc: Fix reporting of read-only fw error errors + - scsi: lpfc: Fix lockdep errors in sli_ringtx_put + - scsi: lpfc: fix coverity error of dereference after null check + - scsi: lpfc: Slight fast-path performance optimizations + - scsi: lpfc: Remove lock contention target write path + - scsi: lpfc: Revise interrupt coalescing for missing scenarios + - scsi: lpfc: Make FW logging dynamically configurable + - scsi: lpfc: Add log macros to allow print by serverity or verbosity setting + - scsi: lpfc: Add FA-WWN Async Event reporting + - scsi: lpfc: Add FC-AL support to lpe32000 models + - scsi: lpfc: Add additional discovery log messages + - scsi: lpfc: Update lpfc version to 12.6.0.0 + - scsi: lpfc: lpfc_attr: Fix Use plain integer as NULL pointer + - scsi: lpfc: lpfc_nvmet: Fix Use plain integer as NULL pointer + - scsi: lpfc: fix build error of lpfc_debugfs.c for vfree/vmalloc + - scsi: lpfc: fix spelling error in MAGIC_NUMER_xxx + - scsi: lpfc: Fix NULL check before mempool_destroy is not needed + - scsi: lpfc: Make lpfc_debugfs_ras_log_data static + - scsi: lpfc: Fix configuration of BB credit recovery in service parameters + - scsi: lpfc: Fix kernel crash at lpfc_nvme_info_show during remote port + bounce + - scsi: lpfc: Fix dynamic fw log enablement check + - scsi: lpfc: Sync with FC-NVMe-2 SLER change to require Conf with SLER + - scsi: lpfc: Clarify FAWNN error message + - scsi: lpfc: Add registration for CPU Offline/Online events + - scsi: lpfc: Change default IRQ model on AMD architectures + - scsi: lpfc: Add enablement of multiple adapter dumps + - scsi: lpfc: Update lpfc version to 12.6.0.1 + - scsi: lpfc: Fix a kernel warning triggered by lpfc_sli4_enable_intr() + - scsi: lpfc: Fix lpfc_cpumask_of_node_init() + - scsi: lpfc: fix inlining of lpfc_sli4_cleanup_poll_list() + - scsi: lpfc: Initialize cpu_map for not present cpus + - scsi: lpfc: revise nvme max queues to be hdwq count + - scsi: lpfc: Update lpfc version to 12.6.0.2 + - scsi: lpfc: size cpu map by last cpu id set + - scsi: lpfc: Fix incomplete NVME discovery when target + - scsi: lpfc: Fix missing check for CSF in Write Object Mbox Rsp + - scsi: lpfc: Fix Fabric hostname registration if system hostname changes + - scsi: lpfc: Fix ras_log via debugfs + - scsi: lpfc: Fix disablement of FC-AL on lpe35000 models + - scsi: lpfc: Fix unmap of dpp bars affecting next driver load + - scsi: lpfc: Fix MDS Latency Diagnostics Err-drop rates + - scsi: lpfc: Fix improper flag check for IO type + - scsi: lpfc: Update lpfc version to 12.6.0.3 + - scsi: lpfc: Fix RQ buffer leakage when no IOCBs available + - scsi: lpfc: Fix lpfc_io_buf resource leak in lpfc_get_scsi_buf_s4 error path + - scsi: lpfc: Fix broken Credit Recovery after driver load + - scsi: lpfc: Fix registration of ELS type support in fdmi + - scsi: lpfc: Fix release of hwq to clear the eq relationship + - scsi: lpfc: Fix compiler warning on frame size + - scsi: lpfc: Fix coverity errors in fmdi attribute handling + - scsi: lpfc: Remove handler for obsolete ELS - Read Port Status (RPS) + - scsi: lpfc: Clean up hba max_lun_queue_depth checks + - scsi: lpfc: Update lpfc version to 12.6.0.4 + - scsi: lpfc: Copyright updates for 12.6.0.4 patches + - scsi: fc: Update Descriptor definition and add RDF and Link Integrity FPINs + - scsi: lpfc: add RDF registration and Link Integrity FPIN logging + * lockdown on power (LP: #1855668) // Ubuntu Kernel Support for OpenPOWER NV + Secure & Trusted Boot (LP: #1866909) + - [Config] Enable configs for OpenPOWER NV Secure & Trusted Boot + * lockdown on power (LP: #1855668) + - SAUCE: (lockdown) powerpc: lock down kernel in secure boot mode + * Focal update: v5.4.30 upstream stable release (LP: #1870571) + - mac80211: Check port authorization in the ieee80211_tx_dequeue() case + - mac80211: fix authentication with iwlwifi/mvm + - serial: sprd: Fix a dereference warning + - vt: selection, introduce vc_is_sel + - vt: ioctl, switch VT_IS_IN_USE and VT_BUSY to inlines + - vt: switch vt_dont_switch to bool + - vt: vt_ioctl: remove unnecessary console allocation checks + - vt: vt_ioctl: fix VT_DISALLOCATE freeing in-use virtual console + - vt: vt_ioctl: fix use-after-free in vt_in_use() + - platform/x86: pmc_atom: Add Lex 2I385SW to critclk_systems DMI table + - bpf: Explicitly memset the bpf_attr structure + - bpf: Explicitly memset some bpf info structures declared on the stack + - gpiolib: acpi: Add quirk to ignore EC wakeups on HP x2 10 CHT + AXP288 model + - net: ks8851-ml: Fix IO operations, again + - clk: imx: Align imx sc clock msg structs to 4 + - clk: imx: Align imx sc clock parent msg structs to 4 + - clk: ti: am43xx: Fix clock parent for RTC clock + - libceph: fix alloc_msg_with_page_vector() memory leaks + - arm64: alternative: fix build with clang integrated assembler + - perf map: Fix off by one in strncpy() size argument + - ARM: dts: oxnas: Fix clear-mask property + - ARM: bcm2835-rpi-zero-w: Add missing pinctrl name + - ARM: dts: imx6: phycore-som: fix arm and soc minimum voltage + - ARM: dts: N900: fix onenand timings + - ARM: dts: sun8i: r40: Move AHCI device node based on address order + - arm64: dts: ls1043a-rdb: correct RGMII delay mode to rgmii-id + - arm64: dts: ls1046ardb: set RGMII interfaces to RGMII_ID mode + - Linux 5.4.30 + * Miscellaneous Ubuntu changes + - [Config] CONFIG_RT_GROUP_SCHED=y + - SAUCE: powerpc/ima: require IMA module signatures only if MODULE_SIG is not + enabled + - SAUCE: Update aufs to 5.4.3 20200302 + - SAUCE: drm/amdgpu: Remove missing firmware files from modinfo + - SAUCE: drm/i915: Fix ref->mutex deadlock in i915_active_wait() + - SAUCE: drm/i915: Synchronize active and retire callbacks + - SAUCE: apparmor: add a valid state flags check + - SAUCE: aapparmor: add consistency check between state and dfa diff encode + flags + - SAUCE: aapparmor: remove useless aafs_create_symlink + - SAUCE: aapparmor: fail unpack if profile mode is unknown + - SAUCE: apparmor: ensure that dfa state tables have entries + - SAUCE: apparmor: fix potential label refcnt leak in aa_change_profile + - SAUCE: security/apparmor/label.c: Clean code by removing redundant + instructions + - [Config] Remove PCIEASPM_DEBUG from annotations + - [Config] Remove HEADER_TEST from annotations + - SAUCE: selftests/seccomp: allow clock_nanosleep instead of nanosleep + - [Debian] Allow building linux-libc-dev from linux-riscv + - [Packaging] Remove riscv64 packaging from master kernel + - [Config] Remove CONFIG_SND_HDA_INTEL_DETECT_DMIC from annotations + * Miscellaneous upstream changes + - net/bpfilter: remove superfluous testing message + - apparmor: increase left match history buffer size + + [ Ubuntu: 5.4.0-23.27 ] + + * Miscellaneous Ubuntu changes + - [Packaging] Enable riscv64 build + + -- Seth Forshee Fri, 10 Apr 2020 11:19:48 -0500 + +linux-azure (5.4.0-1009.9) focal; urgency=medium + + * focal/linux-azure: 5.4.0-1009.9 -proposed tracker (LP: #1870498) + + * Focal update: v5.4.29 upstream stable release (LP: #1870142) + - [Config] azure: Update config for NET_REDIRECT + + * Packaging resync (LP: #1786013) + - [Packaging] update helper scripts + + * [linux-azure] overlayfs regression - internal getxattr operations without + sepolicy checking (LP: #1864669) + - SAUCE: overlayfs: internal getxattr operations without sepolicy checking + + [ Ubuntu: 5.4.0-22.26 ] + + * focal/linux: 5.4.0-22.26 -proposed tracker (LP: #1870502) + * Packaging resync (LP: #1786013) + - [Packaging] update variants + - [Packaging] update helper scripts + - update dkms package versions + * [SFC-0316]sync mainline kernel 5.7rc1 SFC patchset into ubuntu HWE kernel + branch (LP: #1867588) + - spi: Allow SPI controller override device buswidth + - spi: HiSilicon v3xx: Properly set CMD_CONFIG for Dual/Quad modes + - spi: HiSilicon v3xx: Use DMI quirk to set controller buswidth override bits + * [hns3-0316]sync mainline kernel 5.6rc4 hns3 patchset into ubuntu HWE kernel + branch (LP: #1867586) + - net: hns3: fix VF VLAN table entries inconsistent issue + - net: hns3: fix RMW issue for VLAN filter switch + - net: hns3: clear port base VLAN when unload PF + * [sas-0316]sync mainline kernel 5.6rc1 roce patchset into ubuntu HWE kernel + branch (LP: #1867587) + - scsi: hisi_sas: use threaded irq to process CQ interrupts + - scsi: hisi_sas: replace spin_lock_irqsave/spin_unlock_restore with + spin_lock/spin_unlock + - scsi: hisi_sas: Replace magic number when handle channel interrupt + - scsi: hisi_sas: Modify the file permissions of trigger_dump to write only + - scsi: hisi_sas: Add prints for v3 hw interrupt converge and automatic + affinity + - scsi: hisi_sas: Rename hisi_sas_cq.pci_irq_mask + * Revert "nvme_fc: add module to ops template to allow module references" + (LP: #1869947) + - SAUCE: Revert "nvme_fc: add module to ops template to allow module + references" + * suspend only works once on ThinkPad X1 Carbon gen 7 (LP: #1865570) + - Revert "UBUNTU: SAUCE: e1000e: Disable s0ix flow for X1 Carbon 7th" + - SAUCE: e1000e: bump up timeout to wait when ME un-configure ULP mode + * Focal update: v5.4.29 upstream stable release (LP: #1870142) + - mmc: core: Allow host controllers to require R1B for CMD6 + - mmc: core: Respect MMC_CAP_NEED_RSP_BUSY for erase/trim/discard + - mmc: core: Respect MMC_CAP_NEED_RSP_BUSY for eMMC sleep command + - mmc: sdhci-omap: Fix busy detection by enabling MMC_CAP_NEED_RSP_BUSY + - mmc: sdhci-tegra: Fix busy detection by enabling MMC_CAP_NEED_RSP_BUSY + - ACPI: PM: s2idle: Rework ACPI events synchronization + - cxgb4: fix throughput drop during Tx backpressure + - cxgb4: fix Txq restart check during backpressure + - geneve: move debug check after netdev unregister + - hsr: fix general protection fault in hsr_addr_is_self() + - ipv4: fix a RCU-list lock in inet_dump_fib() + - macsec: restrict to ethernet devices + - mlxsw: pci: Only issue reset when system is ready + - mlxsw: spectrum_mr: Fix list iteration in error path + - net/bpfilter: fix dprintf usage for /dev/kmsg + - net: cbs: Fix software cbs to consider packet sending time + - net: dsa: Fix duplicate frames flooded by learning + - net: dsa: mt7530: Change the LINK bit to reflect the link status + - net: dsa: tag_8021q: replace dsa_8021q_remove_header with __skb_vlan_pop + - net: ena: Add PCI shutdown handler to allow safe kexec + - net: mvneta: Fix the case where the last poll did not process all rx + - net/packet: tpacket_rcv: avoid a producer race condition + - net: phy: dp83867: w/a for fld detect threshold bootstrapping issue + - net: phy: mdio-bcm-unimac: Fix clock handling + - net: phy: mdio-mux-bcm-iproc: check clk_prepare_enable() return value + - net: qmi_wwan: add support for ASKEY WWHC050 + - net/sched: act_ct: Fix leak of ct zone template on replace + - net_sched: cls_route: remove the right filter from hashtable + - net_sched: hold rtnl lock in tcindex_partial_destroy_work() + - net_sched: keep alloc_hash updated after hash allocation + - net: stmmac: dwmac-rk: fix error path in rk_gmac_probe + - NFC: fdp: Fix a signedness bug in fdp_nci_send_patch() + - r8169: re-enable MSI on RTL8168c + - slcan: not call free_netdev before rtnl_unlock in slcan_open + - tcp: also NULL skb->dev when copy was needed + - tcp: ensure skb->dev is NULL before leaving TCP stack + - tcp: repair: fix TCP_QUEUE_SEQ implementation + - vxlan: check return value of gro_cells_init() + - bnxt_en: Fix Priority Bytes and Packets counters in ethtool -S. + - bnxt_en: fix memory leaks in bnxt_dcbnl_ieee_getets() + - bnxt_en: Return error if bnxt_alloc_ctx_mem() fails. + - bnxt_en: Free context memory after disabling PCI in probe error path. + - bnxt_en: Reset rings if ring reservation fails during open() + - net: ip_gre: Separate ERSPAN newlink / changelink callbacks + - net: ip_gre: Accept IFLA_INFO_DATA-less configuration + - hsr: use rcu_read_lock() in hsr_get_node_{list/status}() + - hsr: add restart routine into hsr_get_node_list() + - hsr: set .netnsok flag + - net/mlx5: DR, Fix postsend actions write length + - net/mlx5e: Enhance ICOSQ WQE info fields + - net/mlx5e: Fix missing reset of SW metadata in Striding RQ reset + - net/mlx5e: Fix ICOSQ recovery flow with Striding RQ + - net/mlx5e: Do not recover from a non-fatal syndrome + - cgroup-v1: cgroup_pidlist_next should update position index + - nfs: add minor version to nfs_server_key for fscache + - cpupower: avoid multiple definition with gcc -fno-common + - drivers/of/of_mdio.c:fix of_mdiobus_register() + - cgroup1: don't call release_agent when it is "" + - [Config] updateconfigs for DPAA_ERRATUM_A050385 + - dt-bindings: net: FMan erratum A050385 + - arm64: dts: ls1043a: FMan erratum A050385 + - fsl/fman: detect FMan erratum A050385 + - drm/amd/display: update soc bb for nv14 + - drm/amdgpu: correct ROM_INDEX/DATA offset for VEGA20 + - drm/exynos: Fix cleanup of IOMMU related objects + - iommu/vt-d: Silence RCU-list debugging warnings + - s390/qeth: don't reset default_out_queue + - s390/qeth: handle error when backing RX buffer + - scsi: ipr: Fix softlockup when rescanning devices in petitboot + - mac80211: Do not send mesh HWMP PREQ if HWMP is disabled + - dpaa_eth: Remove unnecessary boolean expression in dpaa_get_headroom + - sxgbe: Fix off by one in samsung driver strncpy size arg + - net: hns3: fix "tc qdisc del" failed issue + - iommu/vt-d: Fix debugfs register reads + - iommu/vt-d: Populate debugfs if IOMMUs are detected + - iwlwifi: mvm: fix non-ACPI function + - i2c: hix5hd2: add missed clk_disable_unprepare in remove + - Input: raydium_i2c_ts - fix error codes in raydium_i2c_boot_trigger() + - Input: fix stale timestamp on key autorepeat events + - Input: synaptics - enable RMI on HP Envy 13-ad105ng + - Input: avoid BIT() macro usage in the serio.h UAPI header + - IB/rdmavt: Free kernel completion queue when done + - RDMA/core: Fix missing error check on dev_set_name() + - gpiolib: Fix irq_disable() semantics + - RDMA/nl: Do not permit empty devices names during RDMA_NLDEV_CMD_NEWLINK/SET + - RDMA/mad: Do not crash if the rdma device does not have a umad interface + - ceph: check POOL_FLAG_FULL/NEARFULL in addition to OSDMAP_FULL/NEARFULL + - ceph: fix memory leak in ceph_cleanup_snapid_map() + - ARM: dts: dra7: Add bus_dma_limit for L3 bus + - ARM: dts: omap5: Add bus_dma_limit for L3 bus + - x86/ioremap: Fix CONFIG_EFI=n build + - perf probe: Fix to delete multiple probe event + - perf probe: Do not depend on dwfl_module_addrsym() + - rtlwifi: rtl8188ee: Fix regression due to commit d1d1a96bdb44 + - tools: Let O= makes handle a relative path with -C option + - scripts/dtc: Remove redundant YYLOC global declaration + - scsi: sd: Fix optimal I/O size for devices that change reported values + - nl80211: fix NL80211_ATTR_CHANNEL_WIDTH attribute type + - mac80211: drop data frames without key on encrypted links + - mac80211: mark station unauthorized before key removal + - mm/swapfile.c: move inode_lock out of claim_swapfile + - drivers/base/memory.c: indicate all memory blocks as removable + - mm/sparse: fix kernel crash with pfn_section_valid check + - mm: fork: fix kernel_stack memcg stats for various stack implementations + - gpiolib: acpi: Correct comment for HP x2 10 honor_wakeup quirk + - gpiolib: acpi: Rework honor_wakeup option into an ignore_wake option + - gpiolib: acpi: Add quirk to ignore EC wakeups on HP x2 10 BYT + AXP288 model + - bpf: Fix cgroup ref leak in cgroup_bpf_inherit on out-of-memory + - RDMA/core: Ensure security pkey modify is not lost + - afs: Fix handling of an abort from a service handler + - genirq: Fix reference leaks on irq affinity notifiers + - xfrm: handle NETDEV_UNREGISTER for xfrm device + - vti[6]: fix packet tx through bpf_redirect() in XinY cases + - RDMA/mlx5: Fix the number of hwcounters of a dynamic counter + - RDMA/mlx5: Fix access to wrong pointer while performing flush due to error + - RDMA/mlx5: Block delay drop to unprivileged users + - xfrm: fix uctx len check in verify_sec_ctx_len + - xfrm: add the missing verify_sec_ctx_len check in xfrm_add_acquire + - xfrm: policy: Fix doulbe free in xfrm_policy_timer + - afs: Fix client call Rx-phase signal handling + - afs: Fix some tracing details + - afs: Fix unpinned address list during probing + - ieee80211: fix HE SPR size calculation + - mac80211: set IEEE80211_TX_CTRL_PORT_CTRL_PROTO for nl80211 TX + - netfilter: flowtable: reload ip{v6}h in nf_flow_tuple_ip{v6} + - netfilter: nft_fwd_netdev: validate family and chain type + - netfilter: nft_fwd_netdev: allow to redirect to ifb via ingress + - i2c: nvidia-gpu: Handle timeout correctly in gpu_i2c_check_status() + - bpf, x32: Fix bug with JMP32 JSET BPF_X checking upper bits + - bpf: Initialize storage pointers to NULL to prevent freeing garbage pointer + - bpf/btf: Fix BTF verification of enum members in struct/union + - bpf, sockmap: Remove bucket->lock from sock_{hash|map}_free + - ARM: dts: sun8i-a83t-tbs-a711: Fix USB OTG mode detection + - vti6: Fix memory leak of skb if input policy check fails + - r8169: fix PHY driver check on platforms w/o module softdeps + - clocksource/drivers/hyper-v: Untangle stimers and timesync from clocksources + - USB: serial: option: add support for ASKEY WWHC050 + - USB: serial: option: add BroadMobi BM806U + - USB: serial: option: add Wistron Neweb D19Q1 + - USB: cdc-acm: restore capability check order + - USB: serial: io_edgeport: fix slab-out-of-bounds read in + edge_interrupt_callback + - usb: musb: fix crash with highmen PIO and usbmon + - media: flexcop-usb: fix endpoint sanity check + - media: usbtv: fix control-message timeouts + - staging: kpc2000: prevent underflow in cpld_reconfigure() + - staging: rtl8188eu: Add ASUS USB-N10 Nano B1 to device table + - staging: wlan-ng: fix ODEBUG bug in prism2sta_disconnect_usb + - staging: wlan-ng: fix use-after-free Read in hfa384x_usbin_callback + - ahci: Add Intel Comet Lake H RAID PCI ID + - libfs: fix infoleak in simple_attr_read() + - media: ov519: add missing endpoint sanity checks + - media: dib0700: fix rc endpoint lookup + - media: stv06xx: add missing descriptor sanity checks + - media: xirlink_cit: add missing descriptor sanity checks + - media: v4l2-core: fix a use-after-free bug of sd->devnode + - update wireguard dkms package version + - [Config] updateconfigs for NET_REDIRECT + - net: Fix CONFIG_NET_CLS_ACT=n and CONFIG_NFT_FWD_NETDEV={y, m} build + - Linux 5.4.29 + * Restore kernel control of PCIe DPC via option (LP: #1869423) + - PCI/DPC: Add "pcie_ports=dpc-native" to allow DPC without AER control + * swap storms kills interactive use (LP: #1861359) + - SAUCE: mm/page_alloc.c: disable memory reclaim watermark boosting by default + * sysfs: incorrect network device permissions on network namespace change + (LP: #1865359) + - sysfs: add sysfs_file_change_owner() + - sysfs: add sysfs_link_change_owner() + - sysfs: add sysfs_group{s}_change_owner() + - sysfs: add sysfs_change_owner() + - device: add device_change_owner() + - drivers/base/power: add dpm_sysfs_change_owner() + - net-sysfs: add netdev_change_owner() + - net-sysfs: add queue_change_owner() + - net: fix sysfs permssions when device changes network namespace + - sysfs: fix static inline declaration of sysfs_groups_change_owner() + * Kernel Oops - general protection fault: 0000 [#1] SMP PTI after + disconnecting thunderbolt docking station (LP: #1864754) + - SAUCE: ptp: free ptp clock properly + * [Selftests] Apply various fixes and improvements (LP: #1870543) + - SAUCE: selftests: net: ip_defrag: limit packet to 1000 fragments + - SAUCE: kselftest/runner: avoid using timeout if timeout is disabled + - SAUCE: selftests/seccomp -- Disable timeout for seccomp tests + * Focal update: v5.4.28 upstream stable release (LP: #1869061) + - locks: fix a potential use-after-free problem when wakeup a waiter + - locks: reinstate locks_delete_block optimization + - spi: spi-omap2-mcspi: Support probe deferral for DMA channels + - drm/mediatek: Find the cursor plane instead of hard coding it + - phy: ti: gmii-sel: fix set of copy-paste errors + - phy: ti: gmii-sel: do not fail in case of gmii + - ARM: dts: dra7-l4: mark timer13-16 as pwm capable + - spi: qup: call spi_qup_pm_resume_runtime before suspending + - powerpc: Include .BTF section + - cifs: fix potential mismatch of UNC paths + - cifs: add missing mount option to /proc/mounts + - ARM: dts: dra7: Add "dma-ranges" property to PCIe RC DT nodes + - spi: pxa2xx: Add CS control clock quirk + - spi/zynqmp: remove entry that causes a cs glitch + - drm/exynos: dsi: propagate error value and silence meaningless warning + - drm/exynos: dsi: fix workaround for the legacy clock name + - drm/exynos: hdmi: don't leak enable HDMI_EN regulator if probe fails + - drivers/perf: fsl_imx8_ddr: Correct the CLEAR bit definition + - drivers/perf: arm_pmu_acpi: Fix incorrect checking of gicc pointer + - altera-stapl: altera_get_note: prevent write beyond end of 'key' + - dm bio record: save/restore bi_end_io and bi_integrity + - dm integrity: use dm_bio_record and dm_bio_restore + - riscv: avoid the PIC offset of static percpu data in module beyond 2G limits + - ASoC: stm32: sai: manage rebind issue + - spi: spi_register_controller(): free bus id on error paths + - riscv: Force flat memory model with no-mmu + - riscv: Fix range looking for kernel image memblock + - drm/amdgpu: clean wptr on wb when gpu recovery + - drm/amd/display: Clear link settings on MST disable connector + - drm/amd/display: fix dcc swath size calculations on dcn1 + - xenbus: req->body should be updated before req->state + - xenbus: req->err should be updated before req->state + - block, bfq: fix overwrite of bfq_group pointer in bfq_find_set_group() + - parse-maintainers: Mark as executable + - binderfs: use refcount for binder control devices too + - Revert "drm/fbdev: Fallback to non tiled mode if all tiles not present" + - usb: quirks: add NO_LPM quirk for RTL8153 based ethernet adapters + - USB: serial: option: add ME910G1 ECM composition 0x110b + - usb: host: xhci-plat: add a shutdown + - USB: serial: pl2303: add device-id for HP LD381 + - usb: xhci: apply XHCI_SUSPEND_DELAY to AMD XHCI controller 1022:145c + - usb: typec: ucsi: displayport: Fix NULL pointer dereference + - usb: typec: ucsi: displayport: Fix a potential race during registration + - USB: cdc-acm: fix close_delay and closing_wait units in TIOCSSERIAL + - USB: cdc-acm: fix rounding error in TIOCSSERIAL + - ALSA: line6: Fix endless MIDI read loop + - ALSA: hda/realtek - Enable headset mic of Acer X2660G with ALC662 + - ALSA: hda/realtek - Enable the headset of Acer N50-600 with ALC662 + - ALSA: seq: virmidi: Fix running status after receiving sysex + - ALSA: seq: oss: Fix running status after receiving sysex + - ALSA: pcm: oss: Avoid plugin buffer overflow + - ALSA: pcm: oss: Remove WARNING from snd_pcm_plug_alloc() checks + - tty: fix compat TIOCGSERIAL leaking uninitialized memory + - tty: fix compat TIOCGSERIAL checking wrong function ptr + - iio: chemical: sps30: fix missing triggered buffer dependency + - iio: st_sensors: remap SMO8840 to LIS2DH12 + - iio: trigger: stm32-timer: disable master mode when stopping + - iio: accel: adxl372: Set iio_chan BE + - iio: magnetometer: ak8974: Fix negative raw values in sysfs + - iio: adc: stm32-dfsdm: fix sleep in atomic context + - iio: adc: at91-sama5d2_adc: fix differential channels in triggered mode + - iio: light: vcnl4000: update sampling periods for vcnl4200 + - iio: light: vcnl4000: update sampling periods for vcnl4040 + - mmc: rtsx_pci: Fix support for speed-modes that relies on tuning + - mmc: sdhci-of-at91: fix cd-gpios for SAMA5D2 + - mmc: sdhci-cadence: set SDHCI_QUIRK2_PRESET_VALUE_BROKEN for UniPhier + - CIFS: fiemap: do not return EINVAL if get nothing + - kbuild: Disable -Wpointer-to-enum-cast + - staging: rtl8188eu: Add device id for MERCUSYS MW150US v2 + - staging: greybus: loopback_test: fix poll-mask build breakage + - staging/speakup: fix get_word non-space look-ahead + - intel_th: msu: Fix the unexpected state warning + - intel_th: Fix user-visible error codes + - intel_th: pci: Add Elkhart Lake CPU support + - modpost: move the namespace field in Module.symvers last + - rtc: max8907: add missing select REGMAP_IRQ + - arm64: compat: Fix syscall number of compat_clock_getres + - xhci: Do not open code __print_symbolic() in xhci trace events + - btrfs: fix log context list corruption after rename whiteout error + - drm/amd/amdgpu: Fix GPR read from debugfs (v2) + - drm/lease: fix WARNING in idr_destroy + - stm class: sys-t: Fix the use of time_after() + - memcg: fix NULL pointer dereference in __mem_cgroup_usage_unregister_event + - mm, memcg: fix corruption on 64-bit divisor in memory.high throttling + - mm, memcg: throttle allocators based on ancestral memory.high + - mm/hotplug: fix hot remove failure in SPARSEMEM|!VMEMMAP case + - mm: do not allow MADV_PAGEOUT for CoW pages + - epoll: fix possible lost wakeup on epoll_ctl() path + - mm: slub: be more careful about the double cmpxchg of freelist + - mm, slub: prevent kmalloc_node crashes and memory leaks + - page-flags: fix a crash at SetPageError(THP_SWAP) + - x86/mm: split vmalloc_sync_all() + - futex: Fix inode life-time issue + - futex: Unbreak futex hashing + - arm64: smp: fix smp_send_stop() behaviour + - arm64: smp: fix crash_smp_send_stop() behaviour + - nvmet-tcp: set MSG_MORE only if we actually have more to send + - drm/bridge: dw-hdmi: fix AVI frame colorimetry + - staging: greybus: loopback_test: fix potential path truncation + - staging: greybus: loopback_test: fix potential path truncations + - Linux 5.4.28 + * Pop sound from build-in speaker during cold boot and resume from S3 + (LP: #1866357) // Focal update: v5.4.28 upstream stable release + (LP: #1869061) + - ALSA: hda/realtek: Fix pop noise on ALC225 + * Focal update: v5.4.28 upstream stable release (LP: #1869061) + - perf/x86/amd: Add support for Large Increment per Cycle Events + - EDAC/amd64: Add family ops for Family 19h Models 00h-0Fh + - x86/MCE/AMD, EDAC/mce_amd: Add new Load Store unit McaType + - EDAC/mce_amd: Always load on SMCA systems + - x86/amd_nb: Add Family 19h PCI IDs + - EDAC/amd64: Drop some family checks for newer systems + * Update mpt3sas Driver to 33.100.00.00 for Ubuntu 20.04 (LP: #1863574) + - scsi: mpt3sas: Register trace buffer based on NVDATA settings + - scsi: mpt3sas: Display message before releasing diag buffer + - scsi: mpt3sas: Free diag buffer without any status check + - scsi: mpt3sas: Maintain owner of buffer through UniqueID + - scsi: mpt3sas: clear release bit when buffer reregistered + - scsi: mpt3sas: Reuse diag buffer allocated at load time + - scsi: mpt3sas: Add app owned flag support for diag buffer + - scsi: mpt3sas: Fail release cmnd if diag buffer is released + - scsi: mpt3sas: Use Component img header to get Package ver + - scsi: mpt3sas: Fix module parameter max_msix_vectors + - scsi: mpt3sas: Bump mpt3sas driver version to 32.100.00.00 + - scsi: mpt3sas: Clean up some indenting + - scsi: mpt3sas: change allocation option + - scsi: mpt3sas: Update MPI Headers to v02.00.57 + - scsi: mpt3sas: Add support for NVMe shutdown + - scsi: mpt3sas: renamed _base_after_reset_handler function + - scsi: mpt3sas: Add support IOCs new state named COREDUMP + - scsi: mpt3sas: Handle CoreDump state from watchdog thread + - scsi: mpt3sas: print in which path firmware fault occurred + - scsi: mpt3sas: Optimize mpt3sas driver logging + - scsi: mpt3sas: Print function name in which cmd timed out + - scsi: mpt3sas: Remove usage of device_busy counter + - scsi: mpt3sas: Update drive version to 33.100.00.00 + * Ubuntu 20.04: megaraid_sas driver update to version 07.713.01.00-rc1 + (LP: #1863581) + - scsi: megaraid_sas: Unique names for MSI-X vectors + - scsi: megaraid_sas: remove unused variables 'debugBlk','fusion' + - compat_ioctl: use correct compat_ptr() translation in drivers + - scsi: megaraid_sas: Make poll_aen_lock static + - scsi: megaraid_sas: Reset adapter if FW is not in READY state after device + resume + - scsi: megaraid_sas: Set no_write_same only for Virtual Disk + - scsi: megaraid_sas: Update optimal queue depth for SAS and NVMe devices + - scsi: megaraid_sas: Do not kill host bus adapter, if adapter is already dead + - scsi: megaraid_sas: Do not kill HBA if JBOD Seqence map or RAID map is + disabled + - scsi: megaraid_sas: Do not set HBA Operational if FW is not in operational + state + - scsi: megaraid_sas: Re-Define enum DCMD_RETURN_STATUS + - scsi: megaraid_sas: Limit the number of retries for the IOCTLs causing + firmware fault + - scsi: megaraid_sas: Use Block layer API to check SCSI device in-flight IO + requests + - scsi: megaraid_sas: Update driver version to 07.713.01.00-rc1 + - scsi: megaraid_sas: fixup MSIx interrupt setup during resume + + -- Stefan Bader Fri, 03 Apr 2020 18:52:00 +0200 + +linux-azure (5.4.0-1008.8) focal; urgency=medium + + + [ Ubuntu: 5.4.0-21.25 ] + + * CVE-2020-8835 + - SAUCE: bpf: undo incorrect __reg_bound_offset32 handling + + -- Thadeu Lima de Souza Cascardo Fri, 27 Mar 2020 17:57:04 -0300 + +linux-azure (5.4.0-1007.7) focal; urgency=medium + + * focal/linux-azure: 5.4.0-1007.7 -proposed tracker (LP: #1868343) + + * Packaging resync (LP: #1786013) + - [Packaging] update helper scripts + + * [linux-azure] Missing user mode io driver - uio_pci_generic (LP: #1863951) + - [Config] linux-azure: Move uio_pci_generic to the main modu + + * linux-azure: Update SGX version and udev rules (LP: #1867820) + - SAUCE: linux-azure: Update SGX to version LD_1.22 + - [Packaging] linux-azure: Add dependency to linux-base-sgx + + * Add XHCI/USB support to linux-azure (LP: #1867002) + - [Config] linux-azure: Enable xHCI for PCI passthrough + + * Miscellaneous Ubuntu changes + - [Config] updateconfigs following Ubuntu-5.4.0-19.23 rebase + + [ Ubuntu: 5.4.0-20.24 ] + + * Miscellaneous Ubuntu changes + - SAUCE: (lockdown) Reduce lockdown level to INTEGRITY for secure boot + + [ Ubuntu: 5.4.0-19.23 ] + + * focal/linux: 5.4.0-19.23 -proposed tracker (LP: #1868347) + * Packaging resync (LP: #1786013) + - [Packaging] update helper scripts + - update dkms package versions + * Focal update: v5.4.27 upstream stable release (LP: #1868538) + - netfilter: hashlimit: do not use indirect calls during gc + - netfilter: xt_hashlimit: unregister proc file before releasing mutex + - drm/amdgpu: Fix TLB invalidation request when using semaphore + - ACPI: watchdog: Allow disabling WDAT at boot + - HID: apple: Add support for recent firmware on Magic Keyboards + - ACPI: watchdog: Set default timeout in probe + - HID: hid-bigbenff: fix general protection fault caused by double kfree + - HID: hid-bigbenff: call hid_hw_stop() in case of error + - HID: hid-bigbenff: fix race condition for scheduled work during removal + - selftests/rseq: Fix out-of-tree compilation + - tracing: Fix number printing bug in print_synth_event() + - cfg80211: check reg_rule for NULL in handle_channel_custom() + - scsi: libfc: free response frame from GPN_ID + - net: usb: qmi_wwan: restore mtu min/max values after raw_ip switch + - net: ks8851-ml: Fix IRQ handling and locking + - mac80211: rx: avoid RCU list traversal under mutex + - net: ll_temac: Fix race condition causing TX hang + - net: ll_temac: Add more error handling of dma_map_single() calls + - net: ll_temac: Fix RX buffer descriptor handling on GFP_ATOMIC pressure + - net: ll_temac: Handle DMA halt condition caused by buffer underrun + - blk-mq: insert passthrough request into hctx->dispatch directly + - drm/amdgpu: fix memory leak during TDR test(v2) + - kbuild: add dtbs_check to PHONY + - kbuild: add dt_binding_check to PHONY in a correct place + - signal: avoid double atomic counter increments for user accounting + - slip: not call free_netdev before rtnl_unlock in slip_open + - net: phy: mscc: fix firmware paths + - hinic: fix a irq affinity bug + - hinic: fix a bug of setting hw_ioctxt + - hinic: fix a bug of rss configuration + - net: rmnet: fix NULL pointer dereference in rmnet_newlink() + - net: rmnet: fix NULL pointer dereference in rmnet_changelink() + - net: rmnet: fix suspicious RCU usage + - net: rmnet: remove rcu_read_lock in rmnet_force_unassociate_device() + - net: rmnet: do not allow to change mux id if mux id is duplicated + - net: rmnet: use upper/lower device infrastructure + - net: rmnet: fix bridge mode bugs + - net: rmnet: fix packet forwarding in rmnet bridge mode + - sfc: fix timestamp reconstruction at 16-bit rollover points + - jbd2: fix data races at struct journal_head + - blk-mq: insert flush request to the front of dispatch queue + - net: qrtr: fix len of skb_put_padto in qrtr_node_enqueue + - ARM: 8957/1: VDSO: Match ARMv8 timer in cntvct_functional() + - ARM: 8958/1: rename missed uaccess .fixup section + - mm: slub: add missing TID bump in kmem_cache_alloc_bulk() + - HID: google: add moonball USB id + - HID: add ALWAYS_POLL quirk to lenovo pixart mouse + - ARM: 8961/2: Fix Kbuild issue caused by per-task stack protector GCC plugin + - ipv4: ensure rcu_read_lock() in cipso_v4_error() + - Linux 5.4.27 + * This laptop contains a touchpadwhich is not recognized. (LP: #1858299) // + Focal update: v5.4.27 upstream stable release (LP: #1868538) + - HID: i2c-hid: add Trekstor Surfbook E11B to descriptor override + * suspend only works once on ThinkPad X1 Carbon gen 7 (LP: #1865570) + - SAUCE: e1000e: Disable s0ix flow for X1 Carbon 7th + * Make Dell WD19 dock more reliable after suspend (LP: #1868217) + - xhci: Ensure link state is U3 after setting USB_SS_PORT_LS_U3 + - xhci: Wait until link state trainsits to U0 after setting USB_SS_PORT_LS_U0 + - xhci: Finetune host initiated USB3 rootport link suspend and resume + - USB: Disable LPM on WD19's Realtek Hub + * update-version-dkms doesn't add a BugLink (LP: #1867790) + - [Packaging] Add BugLink to update-version-dkms commit + * enable realtek ethernet device ASPM function (LP: #1836030) + - PCI/ASPM: Add L1 PM substate support to pci_disable_link_state() + - PCI/ASPM: Allow re-enabling Clock PM + - PCI/ASPM: Remove pcie_aspm_enabled() unnecessary locking + - PCI/ASPM: Add pcie_aspm_get_link() + - PCI/ASPM: Add sysfs attributes for controlling ASPM link states + * Update SmartPQI driver in Focal to 1.2.10-025 (LP: #1864484) + - scsi: smartpqi: clean up indentation of a statement + - scsi: smartpqi: remove set but not used variable 'ctrl_info' + - scsi: smartpqi: clean up an indentation issue + - scsi: smartpqi: fix controller lockup observed during force reboot + - scsi: smartpqi: fix call trace in device discovery + - scsi: smartpqi: add inquiry timeouts + - scsi: smartpqi: fix LUN reset when fw bkgnd thread is hung + - scsi: smartpqi: change TMF timeout from 60 to 30 seconds + - scsi: smartpqi: correct syntax issue + - scsi: smartpqi: fix problem with unique ID for physical device + - scsi: smartpqi: remove unused manifest constants + - scsi: smartpqi: Align driver syntax with oob + - scsi: smartpqi: bump version + * [roce-0111]sync mainline kernel 5.5rc6 roce patchset into ubuntu HWE kernel + branch (LP: #1859269) + - RDMA/hns: Modify variable/field name from vlan to vlan_id + - RDMA/hns: Fix a spelling mistake in a macro + - RDMA/hns: Delete BITS_PER_BYTE redefinition + - RDMA/core: Move core content from ib_uverbs to ib_core + - RDMA/core: Create mmap database and cookie helper functions + - RDMA: Connect between the mmap entry and the umap_priv structure + - RDMA/hns: Remove unsupported modify_port callback + - RDMA/hns: Delete unnecessary variable max_post + - RDMA/hns: Remove unnecessary structure hns_roce_sqp + - RDMA/hns: Delete unnecessary uar from hns_roce_cq + - RDMA/hns: Modify fields of struct hns_roce_srq + - RDMA/hns: Replace not intuitive function/macro names + - RDMA/hns: Simplify doorbell initialization code + - RDMA/hns: Modify hns_roce_hw_v2_get_cfg to simplify the code + - RDMA/hns: Fix non-standard error codes + - RDMA/hns: Modify appropriate printings + - dma-mapping: remove the DMA_ATTR_WRITE_BARRIER flag + - IB/umem: remove the dmasync argument to ib_umem_get + - RDMA/hns: Redefine interfaces used in creating cq + - RDMA/hns: Redefine the member of hns_roce_cq struct + - RDMA/hns: Rename the functions used inside creating cq + - RDMA/hns: Delete unnecessary callback functions for cq + - RDMA/hns: Remove unused function hns_roce_init_eq_table() + - RDMA/hns: Update the value of qp type + - RDMA/hns: Delete unnessary parameters in hns_roce_v2_qp_modify() + - RDMA/hns: Remove redundant print information + - RDMA/hns: Replace custom macros HNS_ROCE_ALIGN_UP + - RDMA/hns: Fix coding style issues + - RDMA/hns: Add support for reporting wc as software mode + - RDMA/hns: Remove some redundant variables related to capabilities + - RDMA/hns: Add interfaces to get pf capabilities from firmware + - RDMA/hns: Get pf capabilities from firmware + - RDMA/hns: Add support for extended atomic in userspace + * dmaengine: hisilicon: Add Kunpeng DMA engine support (LP: #1864442) + - dmaengine: hisilicon: Add Kunpeng DMA engine support + - [Config] CONFIG_HISI_DMA=m + * Add support for Realtek 8723DE wireless adapter (LP: #1780590) + - rtw88: 8822c: fix boolreturn.cocci warnings + - rtw88: remove redundant flag check helper function + - rtw88: pci: reset H2C queue indexes in a single write + - rtw88: not to enter or leave PS under IRQ + - rtw88: not to control LPS by each vif + - rtw88: remove unused lps state check helper + - rtw88: LPS enter/leave should be protected by lock + - rtw88: leave PS state for dynamic mechanism + - rtw88: add deep power save support + - rtw88: not to enter LPS by coex strategy + - rtw88: select deep PS mode when module is inserted + - rtw88: add deep PS PG mode for 8822c + - rtw88: remove misleading module parameter rtw_fw_support_lps + - mac80211: simplify TX aggregation start + - rtw88: check firmware leave lps successfully + - rtw88: allows to set RTS in TX descriptor + - rtw88: add driver TX queue support + - rtw88: take over rate control from mac80211 + - rtw88: report tx rate to mac80211 stack + - rtw88: add TX-AMSDU support + - rtw88: flush hardware tx queues + - rtw88: Don't set RX_FLAG_DECRYPTED if packet has no encryption + - rtw88: configure TX queue EDCA parameters + - rtw88: raise firmware version debug level + - rtw88: use struct rtw_fw_hdr to access firmware header + - rtw88: Fix an error message + - rtw88: config 8822c multicast address in MAC init flow + - rtw88: add NL80211_EXT_FEATURE_CAN_REPLACE_PTK0 support + - rtw88: Use rtw_write8_set to set SYS_FUNC + - rtw88: pci: config phy after chip info is setup + - rtw88: use a for loop in rtw_power_mode_change(), not goto + - rtw88: include interrupt.h for tasklet_struct + - rtw88: mark rtw_fw_hdr __packed + - rtw88: use macro to check the current band + - rtw88: add power tracking support + - rtw88: Enable 802.11ac beamformee support + - rtw88: add set_bitrate_mask support + - rtw88: add phy_info debugfs to show Tx/Rx physical status + - rtw88: fix GENMASK_ULL for u64 + - rtw88: fix sparse warnings for DPK + - rtw88: fix sparse warnings for power tracking + - rtw88: 8822b: add RFE type 3 support + - rtw88: use rtw_phy_pg_cfg_pair struct, not arrays + - rtw88: rearrange if..else statements for rx rate indexes + - rtw88: avoid FW info flood + - rtw88: remove redundant null pointer check on arrays + - rtw88: raise LPS threshold to 50, for less power consumption + - rtw88: fix potential NULL pointer access for firmware + - rtw88: signal completion even on firmware-request failure + - rtw88: remove duplicated include from ps.c + - rtw88: pci: use macros to access PCI DBI/MDIO registers + - rtw88: pci: use for loop instead of while loop for DBI/MDIO + - rtw88: pci: enable CLKREQ function if host supports it + - rtw88: allows to enable/disable HCI link PS mechanism + - rtw88: pci: reset ring index when release skbs in tx ring + - rtw88: pci: reset dma when reset pci trx ring + - rtw88: add interface config for 8822c + - rtw88: load wowlan firmware if wowlan is supported + - rtw88: support wowlan feature for 8822c + - rtw88: Add wowlan pattern match support + - rtw88: Add wowlan net-detect support + - rtw88: fix TX secondary channel offset of 40M if current bw is 20M or 40M + - rtw88: 8822c: update power sequence to v15 + - rtw88: remove unused spinlock + - rtw88: remove unused variable 'in_lps' + - rtw88: remove unused vif pointer in struct rtw_vif + - rtw88: use rtw_hci_stop() instead of rtwdev->hci.ops->stop() + - rtw88: assign NULL to skb after being kfree()'ed + - rtw88: change max_num_of_tx_queue() definition to inline in pci.h + - rtw88: use true,false for bool variable + - rtw88: use shorter delay time to poll PS state + - rtw88: Fix return value of rtw_wow_check_fw_status + - SAUCE: rtw88: add regulatory process strategy for different chipset + - SAUCE: rtw88: support dynamic user regulatory setting + - SAUCE: rtw88: Use secondary channel offset enumeration + - SAUCE: rtw88: 8822c: modify rf protection setting + - SAUCE: rtw88: disable TX-AMSDU on 2.4G band + - SAUCE: Revert "rtw88: disable TX-AMSDU on 2.4G band" + - SAUCE: rtw88: disable TX-AMSDU on 2.4G band + - SAUCE: rtw88: remove unused parameter vif in rtw_lps_pg_info_get() + - SAUCE: rtw88: add rtw_read8_mask and rtw_read16_mask + - SAUCE: rtw88: pci: 8822c should set clock delay to zero + - SAUCE: rtw88: move rtw_enter_ips() to the last when config + - SAUCE: rtw88: avoid holding mutex for cancel_delayed_work_sync() + - SAUCE: rtw88: add ciphers to suppress error message + - SAUCE: rtw88: 8822c: update power sequence to v16 + - SAUCE: rtw88: Fix incorrect beamformee role setting + - SAUCE: rtw88: don't hold all IRQs disabled for PS operations + - SAUCE: rtw88: extract alloc rsvd_page and h2c skb routines + - SAUCE: rtw88: associate reserved pages with each vif + - SAUCE: rtw88: add adaptivity support for EU/JP regulatory + - SAUCE: rtw88: 8723d: Add basic chip capabilities + - SAUCE: rtw88: 8723d: add beamform wrapper functions + - SAUCE: rtw88: 8723d: Add power sequence + - SAUCE: rtw88: 8723d: Add RF read/write ops + - SAUCE: rtw88: 8723d: Add mac/bb/rf/agc/power_limit tables + - SAUCE: rtw88: 8723d: Add cfg_ldo25 to control LDO25 + - SAUCE: rtw88: 8723d: Add new chip op efuse_grant() to control efuse access + - SAUCE: rtw88: 8723d: Add read_efuse to recognize efuse info from map + - SAUCE: rtw88: add legacy firmware download for 8723D devices + - SAUCE: rtw88: no need to send additional information to legacy firmware + - SAUCE: rtw88: 8723d: Add mac power-on/-off function + - SAUCE: rtw88: decompose while(1) loop of power sequence polling command + - SAUCE: rtw88: 8723d: 11N chips don't support H2C queue + - SAUCE: rtw88: 8723d: implement set_tx_power_index ops + - SAUCE: rtw88: 8723d: Organize chip TX/RX FIFO + - SAUCE: rtw88: 8723d: initialize mac/bb/rf basic functions + - SAUCE: rtw88: 8723d: Add DIG parameter + - SAUCE: rtw88: 8723d: Add query_rx_desc + - SAUCE: rtw88: 8723d: Add set_channel + - SAUCE: rtw88: handle C2H_CCX_TX_RPT to know if packet TX'ed successfully + - SAUCE: rtw88: 8723d: 11N chips don't support LDPC + - SAUCE: rtw88: set default port to firmware + - SAUCE: rtw88: update tx descriptor of mgmt and rsvd page packets + - SAUCE: rtw88: sar: add SAR of TX power limit + - SAUCE: rtw88: sar: Load static SAR table from ACPI WRDS method + - SAUCE: rtw88: sar: Load dynamic SAR table from ACPI methods + - SAUCE: rtw88: sar: apply dynamic SAR table to tx power limit + - SAUCE: rtw88: sar: add sar_work to poll if dynamic SAR table is changed + - SAUCE: rtw88: sar: dump sar information via debugfs + - SAUCE: rtw88: 8723d: Add chip_ops::false_alarm_statistics + - SAUCE: rtw88: 8723d: Set IG register for CCK rate + - SAUCE: rtw88: 8723d: add interface configurations table + - SAUCE: rtw88: 8723d: Add LC calibration + - SAUCE: rtw88: 8723d: add IQ calibration + - SAUCE: rtw88: 8723d: Add power tracking + - SAUCE: rtw88: 8723d: Add shutdown callback to disable BT USB suspend + - SAUCE: rtw88: 8723d: implement flush queue + - SAUCE: rtw88: 8723d: set ltecoex register address in chip_info + - SAUCE: rtw88: 8723d: Add coex support + - SAUCE: rtw88: fill zeros to words 0x06 and 0x07 of security cam entry + - SAUCE: rtw88: 8723d: Add 8723DE to Kconfig and Makefile + - [Config] CONFIG_RTW88_8723DE=y + * [Ubuntu 20.04] Unset HIBERNATION and PM kernel config options for focal + (LP: #1867753) + - [Config] CONFIG_HIBERNATION=n and CONFIG_PM=n for s390x + * [20.04 FEAT] Base KVM setup for secure guests - kernel part (LP: #1835531) + - KVM: s390: Cleanup kvm_arch_init error path + - KVM: s390: Cleanup initial cpu reset + - KVM: s390: Add new reset vcpu API + - s390/protvirt: introduce host side setup + - s390/protvirt: add ultravisor initialization + - s390/mm: provide memory management functions for protected KVM guests + - s390/mm: add (non)secure page access exceptions handlers + - s390/protvirt: Add sysfs firmware interface for Ultravisor information + - KVM: s390/interrupt: do not pin adapter interrupt pages + - KVM: s390: protvirt: Add UV debug trace + - KVM: s390: add new variants of UV CALL + - KVM: s390: protvirt: Add initial vm and cpu lifecycle handling + - KVM: s390: protvirt: Secure memory is not mergeable + - KVM: s390/mm: Make pages accessible before destroying the guest + - KVM: s390: protvirt: Handle SE notification interceptions + - KVM: s390: protvirt: Instruction emulation + - KVM: s390: protvirt: Implement interrupt injection + - KVM: s390: protvirt: Add SCLP interrupt handling + - KVM: s390: protvirt: Handle spec exception loops + - KVM: s390: protvirt: Add new gprs location handling + - KVM: S390: protvirt: Introduce instruction data area bounce buffer + - KVM: s390: protvirt: handle secure guest prefix pages + - KVM: s390/mm: handle guest unpin events + - KVM: s390: protvirt: Write sthyi data to instruction data area + - KVM: s390: protvirt: STSI handling + - KVM: s390: protvirt: disallow one_reg + - KVM: s390: protvirt: Do only reset registers that are accessible + - KVM: s390: protvirt: Only sync fmt4 registers + - KVM: s390: protvirt: Add program exception injection + - KVM: s390: protvirt: UV calls in support of diag308 0, 1 + - KVM: s390: protvirt: Report CPU state to Ultravisor + - KVM: s390: protvirt: Support cmd 5 operation state + - KVM: s390: protvirt: Mask PSW interrupt bits for interception 104 and 112 + - KVM: s390: protvirt: do not inject interrupts after start + - KVM: s390: protvirt: Add UV cpu reset calls + - DOCUMENTATION: Protected virtual machine introduction and IPL + - KVM: s390: protvirt: introduce and enable KVM_CAP_S390_PROTECTED + - KVM: s390: protvirt: Add KVM api documentation + - mm/gup/writeback: add callbacks for inaccessible pages + * Sys oopsed with sysfs test in ubuntu_stress_smoke_test on X-hwe ARM64 + (LP: #1866772) + - ACPI: sysfs: copy ACPI data using io memory copying + * Focal update: v5.4.26 upstream stable release (LP: #1867903) + - virtio_balloon: Adjust label in virtballoon_probe + - ALSA: hda/realtek - More constifications + - cgroup, netclassid: periodically release file_lock on classid updating + - gre: fix uninit-value in __iptunnel_pull_header + - inet_diag: return classid for all socket types + - ipv6/addrconf: call ipv6_mc_up() for non-Ethernet interface + - ipvlan: add cond_resched_rcu() while processing muticast backlog + - ipvlan: do not add hardware address of master to its unicast filter list + - ipvlan: do not use cond_resched_rcu() in ipvlan_process_multicast() + - ipvlan: don't deref eth hdr before checking it's set + - macvlan: add cond_resched() during multicast processing + - net: dsa: fix phylink_start()/phylink_stop() calls + - net: dsa: mv88e6xxx: fix lockup on warm boot + - net: fec: validate the new settings in fec_enet_set_coalesce() + - net: hns3: fix a not link up issue when fibre port supports autoneg + - net/ipv6: use configured metric when add peer route + - netlink: Use netlink header as base to calculate bad attribute offset + - net: macsec: update SCI upon MAC address change. + - net: nfc: fix bounds checking bugs on "pipe" + - net/packet: tpacket_rcv: do not increment ring index on drop + - net: phy: bcm63xx: fix OOPS due to missing driver name + - net: stmmac: dwmac1000: Disable ACS if enhanced descs are not used + - net: systemport: fix index check to avoid an array out of bounds access + - sfc: detach from cb_page in efx_copy_channel() + - slip: make slhc_compress() more robust against malicious packets + - taprio: Fix sending packets without dequeueing them + - bonding/alb: make sure arp header is pulled before accessing it + - bnxt_en: reinitialize IRQs when MTU is modified + - bnxt_en: fix error handling when flashing from file + - cgroup: memcg: net: do not associate sock with unrelated cgroup + - net: memcg: late association of sock to memcg + - net: memcg: fix lockdep splat in inet_csk_accept() + - devlink: validate length of param values + - devlink: validate length of region addr/len + - fib: add missing attribute validation for tun_id + - nl802154: add missing attribute validation + - nl802154: add missing attribute validation for dev_type + - can: add missing attribute validation for termination + - macsec: add missing attribute validation for port + - net: fq: add missing attribute validation for orphan mask + - net: taprio: add missing attribute validation for txtime delay + - team: add missing attribute validation for port ifindex + - team: add missing attribute validation for array index + - tipc: add missing attribute validation for MTU property + - nfc: add missing attribute validation for SE API + - nfc: add missing attribute validation for deactivate target + - nfc: add missing attribute validation for vendor subcommand + - net: phy: avoid clearing PHY interrupts twice in irq handler + - net: phy: fix MDIO bus PM PHY resuming + - net/ipv6: need update peer route when modify metric + - net/ipv6: remove the old peer route if change it to a new one + - selftests/net/fib_tests: update addr_metric_test for peer route testing + - net: dsa: Don't instantiate phylink for CPU/DSA ports unless needed + - net: phy: Avoid multiple suspends + - cgroup: cgroup_procs_next should increase position index + - cgroup: Iterate tasks that did not finish do_exit() + - netfilter: nf_tables: fix infinite loop when expr is not available + - iwlwifi: mvm: Do not require PHY_SKU NVM section for 3168 devices + - iommu/vt-d: quirk_ioat_snb_local_iommu: replace WARN_TAINT with pr_warn + + add_taint + - netfilter: nf_conntrack: ct_cpu_seq_next should increase position index + - netfilter: synproxy: synproxy_cpu_seq_next should increase position index + - netfilter: xt_recent: recent_seq_next should increase position index + - netfilter: x_tables: xt_mttg_seq_next should increase position index + - workqueue: don't use wq_select_unbound_cpu() for bound works + - drm/amd/display: remove duplicated assignment to grph_obj_type + - drm/i915: be more solid in checking the alignment + - drm/i915: Defer semaphore priority bumping to a workqueue + - mmc: sdhci-pci-gli: Enable MSI interrupt for GL975x + - pinctrl: falcon: fix syntax error + - ktest: Add timeout for ssh sync testing + - cifs_atomic_open(): fix double-put on late allocation failure + - gfs2_atomic_open(): fix O_EXCL|O_CREAT handling on cold dcache + - KVM: x86: clear stale x86_emulate_ctxt->intercept value + - KVM: nVMX: avoid NULL pointer dereference with incorrect EVMCS GPAs + - ARC: define __ALIGN_STR and __ALIGN symbols for ARC + - fuse: fix stack use after return + - s390/dasd: fix data corruption for thin provisioned devices + - ipmi_si: Avoid spurious errors for optional IRQs + - blk-iocost: fix incorrect vtime comparison in iocg_is_idle() + - fscrypt: don't evict dirty inodes after removing key + - macintosh: windfarm: fix MODINFO regression + - x86/ioremap: Map EFI runtime services data as encrypted for SEV + - efi: Fix a race and a buffer overflow while reading efivars via sysfs + - efi: Add a sanity check to efivar_store_raw() + - i2c: designware-pci: Fix BUG_ON during device removal + - mt76: fix array overflow on receiving too many fragments for a packet + - perf/amd/uncore: Replace manual sampling check with CAP_NO_INTERRUPT flag + - x86/mce: Fix logic and comments around MSR_PPIN_CTL + - iommu/dma: Fix MSI reservation allocation + - iommu/vt-d: dmar: replace WARN_TAINT with pr_warn + add_taint + - iommu/vt-d: Fix RCU list debugging warnings + - iommu/vt-d: Fix a bug in intel_iommu_iova_to_phys() for huge page + - batman-adv: Don't schedule OGM for disabled interface + - clk: imx8mn: Fix incorrect clock defines + - pinctrl: meson-gxl: fix GPIOX sdio pins + - pinctrl: imx: scu: Align imx sc msg structs to 4 + - virtio_ring: Fix mem leak with vring_new_virtqueue() + - drm/i915/gvt: Fix dma-buf display blur issue on CFL + - pinctrl: core: Remove extra kref_get which blocks hogs being freed + - drm/i915/gvt: Fix unnecessary schedule timer when no vGPU exits + - driver code: clarify and fix platform device DMA mask allocation + - iommu/vt-d: Fix RCU-list bugs in intel_iommu_init() + - i2c: gpio: suppress error on probe defer + - nl80211: add missing attribute validation for critical protocol indication + - nl80211: add missing attribute validation for beacon report scanning + - nl80211: add missing attribute validation for channel switch + - perf bench futex-wake: Restore thread count default to online CPU count + - netfilter: cthelper: add missing attribute validation for cthelper + - netfilter: nft_payload: add missing attribute validation for payload csum + flags + - netfilter: nft_tunnel: add missing attribute validation for tunnels + - netfilter: nf_tables: dump NFTA_CHAIN_FLAGS attribute + - netfilter: nft_chain_nat: inet family is missing module ownership + - iommu/vt-d: Fix the wrong printing in RHSA parsing + - iommu/vt-d: Ignore devices with out-of-spec domain number + - i2c: acpi: put device when verifying client fails + - iommu/amd: Fix IOMMU AVIC not properly update the is_run bit in IRTE + - ipv6: restrict IPV6_ADDRFORM operation + - net/smc: check for valid ib_client_data + - net/smc: cancel event worker during device removal + - Linux 5.4.26 + * please help enable CONFIG_EROFS_FS_ZIP (LP: #1867099) + - [Config] CONFIG_EROFS_FS_ZIP=y + - [Config] CONFIG_EROFS_FS_CLUSTER_PAGE_LIMIT=1 + * All PS/2 ports on PS/2 Serial add-in bracket are not working after S3 + (LP: #1866734) + - SAUCE: Input: i8042 - fix the selftest retry logic + * [UBUNTU 20.04] virtio-blk disks can go dissfunctional when swiotlb fills up + (LP: #1867109) + - virtio-blk: fix hw_queue stopped on arbitrary error + - virtio-blk: improve virtqueue error to BLK_STS + * Focal update: v5.4.25 upstream stable release (LP: #1867178) + - block, bfq: get extra ref to prevent a queue from being freed during a group + move + - block, bfq: do not insert oom queue into position tree + - net: dsa: bcm_sf2: Forcibly configure IMP port for 1Gb/sec + - net: stmmac: fix notifier registration + - dm thin metadata: fix lockdep complaint + - RDMA/core: Fix pkey and port assignment in get_new_pps + - RDMA/core: Fix use of logical OR in get_new_pps + - kbuild: fix 'No such file or directory' warning when cleaning + - kprobes: Fix optimize_kprobe()/unoptimize_kprobe() cancellation logic + - blktrace: fix dereference after null check + - ALSA: hda: do not override bus codec_mask in link_get() + - serial: ar933x_uart: set UART_CS_{RX,TX}_READY_ORIDE + - selftests: fix too long argument + - usb: gadget: composite: Support more than 500mA MaxPower + - usb: gadget: ffs: ffs_aio_cancel(): Save/restore IRQ flags + - usb: gadget: serial: fix Tx stall after buffer overflow + - habanalabs: halt the engines before hard-reset + - habanalabs: do not halt CoreSight during hard reset + - habanalabs: patched cb equals user cb in device memset + - drm/msm/mdp5: rate limit pp done timeout warnings + - drm: msm: Fix return type of dsi_mgr_connector_mode_valid for kCFI + - drm/modes: Make sure to parse valid rotation value from cmdline + - drm/modes: Allow DRM_MODE_ROTATE_0 when applying video mode parameters + - scsi: megaraid_sas: silence a warning + - drm/msm/dsi: save pll state before dsi host is powered off + - drm/msm/dsi/pll: call vco set rate explicitly + - selftests: forwarding: use proto icmp for {gretap, ip6gretap}_mac testing + - selftests: forwarding: vxlan_bridge_1d: fix tos value + - net: atlantic: check rpc result and wait for rpc address + - net: ks8851-ml: Remove 8-bit bus accessors + - net: ks8851-ml: Fix 16-bit data access + - net: ks8851-ml: Fix 16-bit IO operation + - net: ethernet: dm9000: Handle -EPROBE_DEFER in dm9000_parse_dt() + - watchdog: da9062: do not ping the hw during stop() + - s390/cio: cio_ignore_proc_seq_next should increase position index + - s390: make 'install' not depend on vmlinux + - efi: Only print errors about failing to get certs if EFI vars are found + - net/mlx5: DR, Fix matching on vport gvmi + - nvme/pci: Add sleep quirk for Samsung and Toshiba drives + - nvme-pci: Use single IRQ vector for old Apple models + - x86/boot/compressed: Don't declare __force_order in kaslr_64.c + - s390/qdio: fill SL with absolute addresses + - nvme: Fix uninitialized-variable warning + - ice: Don't tell the OS that link is going down + - x86/xen: Distribute switch variables for initialization + - net: thunderx: workaround BGX TX Underflow issue + - csky/mm: Fixup export invalid_pte_table symbol + - csky: Set regs->usp to kernel sp, when the exception is from kernel + - csky/smp: Fixup boot failed when CONFIG_SMP + - csky: Fixup ftrace modify panic + - csky: Fixup compile warning for three unimplemented syscalls + - arch/csky: fix some Kconfig typos + - selftests: forwarding: vxlan_bridge_1d: use more proper tos value + - firmware: imx: scu: Ensure sequential TX + - binder: prevent UAF for binderfs devices + - binder: prevent UAF for binderfs devices II + - ALSA: hda/realtek - Add Headset Mic supported + - ALSA: hda/realtek - Add Headset Button supported for ThinkPad X1 + - ALSA: hda/realtek - Fix silent output on Gigabyte X570 Aorus Master + - ALSA: hda/realtek - Enable the headset of ASUS B9450FA with ALC294 + - cifs: don't leak -EAGAIN for stat() during reconnect + - cifs: fix rename() by ensuring source handle opened with DELETE bit + - usb: storage: Add quirk for Samsung Fit flash + - usb: quirks: add NO_LPM quirk for Logitech Screen Share + - usb: dwc3: gadget: Update chain bit correctly when using sg list + - usb: cdns3: gadget: link trb should point to next request + - usb: cdns3: gadget: toggle cycle bit before reset endpoint + - usb: core: hub: fix unhandled return by employing a void function + - usb: core: hub: do error out if usb_autopm_get_interface() fails + - usb: core: port: do error out if usb_autopm_get_interface() fails + - vgacon: Fix a UAF in vgacon_invert_region + - mm, numa: fix bad pmd by atomically check for pmd_trans_huge when marking + page tables prot_numa + - mm: fix possible PMD dirty bit lost in set_pmd_migration_entry() + - mm, hotplug: fix page online with DEBUG_PAGEALLOC compiled but not enabled + - fat: fix uninit-memory access for partial initialized inode + - btrfs: fix RAID direct I/O reads with alternate csums + - arm64: dts: socfpga: agilex: Fix gmac compatible + - arm: dts: dra76x: Fix mmc3 max-frequency + - tty:serial:mvebu-uart:fix a wrong return + - tty: serial: fsl_lpuart: free IDs allocated by IDA + - serial: 8250_exar: add support for ACCES cards + - vt: selection, close sel_buffer race + - vt: selection, push console lock down + - vt: selection, push sel_lock up + - media: hantro: Fix broken media controller links + - media: mc-entity.c: use & to check pad flags, not == + - media: vicodec: process all 4 components for RGB32 formats + - media: v4l2-mem2mem.c: fix broken links + - perf intel-pt: Fix endless record after being terminated + - perf intel-bts: Fix endless record after being terminated + - perf cs-etm: Fix endless record after being terminated + - perf arm-spe: Fix endless record after being terminated + - spi: spidev: Fix CS polarity if GPIO descriptors are used + - x86/pkeys: Manually set X86_FEATURE_OSPKE to preserve existing changes + - s390/pci: Fix unexpected write combine on resource + - s390/mm: fix panic in gup_fast on large pud + - dmaengine: imx-sdma: fix context cache + - dmaengine: imx-sdma: Fix the event id check to include RX event for UART6 + - dmaengine: tegra-apb: Fix use-after-free + - dmaengine: tegra-apb: Prevent race conditions of tasklet vs free list + - dm integrity: fix recalculation when moving from journal mode to bitmap mode + - dm integrity: fix a deadlock due to offloading to an incorrect workqueue + - dm integrity: fix invalid table returned due to argument count mismatch + - dm cache: fix a crash due to incorrect work item cancelling + - dm: report suspended device during destroy + - dm writecache: verify watermark during resume + - dm zoned: Fix reference counter initial value of chunk works + - dm: fix congested_fn for request-based device + - arm64: dts: meson-sm1-sei610: add missing interrupt-names + - ARM: dts: ls1021a: Restore MDIO compatible to gianfar + - spi: bcm63xx-hsspi: Really keep pll clk enabled + - drm/virtio: make resource id workaround runtime switchable. + - drm/virtio: fix resource id creation race + - ASoC: topology: Fix memleak in soc_tplg_link_elems_load() + - ASoC: topology: Fix memleak in soc_tplg_manifest_load() + - ASoC: SOF: Fix snd_sof_ipc_stream_posn() + - ASoC: intel: skl: Fix pin debug prints + - ASoC: intel: skl: Fix possible buffer overflow in debug outputs + - powerpc: define helpers to get L1 icache sizes + - powerpc: Convert flush_icache_range & friends to C + - powerpc/mm: Fix missing KUAP disable in flush_coherent_icache() + - ASoC: pcm: Fix possible buffer overflow in dpcm state sysfs output + - ASoC: pcm512x: Fix unbalanced regulator enable call in probe error path + - ASoC: Intel: Skylake: Fix available clock counter incrementation + - ASoC: dapm: Correct DAPM handling of active widgets during shutdown + - spi: atmel-quadspi: fix possible MMIO window size overrun + - drm/panfrost: Don't try to map on error faults + - drm: kirin: Revert "Fix for hikey620 display offset problem" + - drm/sun4i: Add separate DE3 VI layer formats + - drm/sun4i: Fix DE2 VI layer format support + - drm/sun4i: de2/de3: Remove unsupported VI layer formats + - drm/i915: Program MBUS with rmw during initialization + - drm/i915/selftests: Fix return in assert_mmap_offset() + - phy: mapphone-mdm6600: Fix timeouts by adding wake-up handling + - phy: mapphone-mdm6600: Fix write timeouts with shorter GPIO toggle interval + - ARM: dts: imx6: phycore-som: fix emmc supply + - arm64: dts: imx8qxp-mek: Remove unexisting Ethernet PHY + - firmware: imx: misc: Align imx sc msg structs to 4 + - firmware: imx: scu-pd: Align imx sc msg structs to 4 + - firmware: imx: Align imx_sc_msg_req_cpu_start to 4 + - soc: imx-scu: Align imx sc msg structs to 4 + - Revert "RDMA/cma: Simplify rdma_resolve_addr() error flow" + - RDMA/rw: Fix error flow during RDMA context initialization + - RDMA/nldev: Fix crash when set a QP to a new counter but QPN is missing + - RDMA/siw: Fix failure handling during device creation + - RDMA/iwcm: Fix iwcm work deallocation + - RDMA/core: Fix protection fault in ib_mr_pool_destroy + - regulator: stm32-vrefbuf: fix a possible overshoot when re-enabling + - RMDA/cm: Fix missing ib_cm_destroy_id() in ib_cm_insert_listen() + - IB/hfi1, qib: Ensure RCU is locked when accessing list + - ARM: imx: build v7_cpu_resume() unconditionally + - ARM: dts: am437x-idk-evm: Fix incorrect OPP node names + - ARM: dts: dra7xx-clocks: Fixup IPU1 mux clock parent source + - ARM: dts: imx7-colibri: Fix frequency for sd/mmc + - hwmon: (adt7462) Fix an error return in ADT7462_REG_VOLT() + - dma-buf: free dmabuf->name in dma_buf_release() + - dmaengine: coh901318: Fix a double lock bug in dma_tc_handle() + - arm64: dts: meson: fix gxm-khadas-vim2 wifi + - bus: ti-sysc: Fix 1-wire reset quirk + - EDAC/synopsys: Do not print an error with back-to-back snprintf() calls + - powerpc: fix hardware PMU exception bug on PowerVM compatibility mode + systems + - efi/x86: Align GUIDs to their size in the mixed mode runtime wrapper + - efi/x86: Handle by-ref arguments covering multiple pages in mixed mode + - efi: READ_ONCE rng seed size before munmap + - block, bfq: get a ref to a group when adding it to a service tree + - block, bfq: remove ifdefs from around gets/puts of bfq groups + - csky: Implement copy_thread_tls + - drm/virtio: module_param_named() requires linux/moduleparam.h + - Linux 5.4.25 + * Miscellaneous Ubuntu changes + - hio -- remove duplicated MODULE_DEVICE_TABLE declaration + - [Config] Add initial riscv64 config + - [Config] Bring riscv64 in line with other arches + - [Packaging] Add riscv64 arch support + - [Packaging] Add initial riscv64 abi + - [Config] updateconfigs for riscv64 + - [Config] Update annotations for riscv64 + - SAUCE: r8169: disable ASPM L1.1 + - update wireguard dkms package version + - [Config] garbage collect PCIEASPM_DEBUG + - [Config] gcc version updateconfigs + * Miscellaneous upstream changes + - Revert "UBUNTU: SAUCE: platform/x86: dell-uart-backlight: move retry block" + - RISC-V: Do not invoke SBI call if cpumask is empty + - RISC-V: Issue a local tlbflush if possible. + - RISC-V: Issue a tlb page flush if possible + - riscv: add support for SECCOMP and SECCOMP_FILTER + - riscv: reject invalid syscalls below -1 + - mtd: spi-nor: Add support for is25wp256 + - PCI/ASPM: Remove PCIEASPM_DEBUG Kconfig option and related code + + -- Paolo Pisati Tue, 24 Mar 2020 15:30:05 +0100 + +linux-azure (5.4.0-1006.6) focal; urgency=medium + + * focal/linux-azure: 5.4.0-1006.6 -proposed tracker (LP: #1866484) + + * Packaging resync (LP: #1786013) + - [Packaging] update helper scripts + + * Miscellaneous Ubuntu changes + - [Config] Update configs for 5.4 + + [ Ubuntu: 5.4.0-18.22 ] + + * focal/linux: 5.4.0-18.22 -proposed tracker (LP: #1866488) + * Packaging resync (LP: #1786013) + - [Packaging] resync getabis + - [Packaging] update helper scripts + * Add sysfs attribute to show remapped NVMe (LP: #1863621) + - SAUCE: ata: ahci: Add sysfs attribute to show remapped NVMe device count + * [20.04 FEAT] Compression improvements in Linux kernel (LP: #1830208) + - lib/zlib: add s390 hardware support for kernel zlib_deflate + - s390/boot: rename HEAP_SIZE due to name collision + - lib/zlib: add s390 hardware support for kernel zlib_inflate + - s390/boot: add dfltcc= kernel command line parameter + - lib/zlib: add zlib_deflate_dfltcc_enabled() function + - btrfs: use larger zlib buffer for s390 hardware compression + - [Config] Introducing s390x specific kernel config option CONFIG_ZLIB_DFLTCC + * [UBUNTU 20.04] s390x/pci: increase CONFIG_PCI_NR_FUNCTIONS to 512 in kernel + config (LP: #1866056) + - [Config] Increase CONFIG_PCI_NR_FUNCTIONS from 64 to 512 starting with focal + on s390x + * CONFIG_IP_MROUTE_MULTIPLE_TABLES is not set (LP: #1865332) + - [Config] CONFIG_IP_MROUTE_MULTIPLE_TABLES=y + * Dell XPS 13 9300 Intel 1650S wifi [34f0:1651] fails to load firmware + (LP: #1865962) + - iwlwifi: remove IWL_DEVICE_22560/IWL_DEVICE_FAMILY_22560 + - iwlwifi: 22000: fix some indentation + - iwlwifi: pcie: rx: use rxq queue_size instead of constant + - iwlwifi: allocate more receive buffers for HE devices + - iwlwifi: remove some outdated iwl22000 configurations + - iwlwifi: assume the driver_data is a trans_cfg, but allow full cfg + * [FOCAL][REGRESSION] Intel Gen 9 brightness cannot be controlled + (LP: #1861521) + - Revert "USUNTU: SAUCE: drm/i915: Force DPCD backlight mode on Dell Precision + 4K sku" + - Revert "UBUNTU: SAUCE: drm/i915: Force DPCD backlight mode on X1 Extreme 2nd + Gen 4K AMOLED panel" + - SAUCE: drm/dp: Introduce EDID-based quirks + - SAUCE: drm/i915: Force DPCD backlight mode on X1 Extreme 2nd Gen 4K AMOLED + panel + - SAUCE: drm/i915: Force DPCD backlight mode for some Dell CML 2020 panels + * [20.04 FEAT] Enable proper kprobes on ftrace support (LP: #1865858) + - s390/ftrace: save traced function caller + - s390: support KPROBES_ON_FTRACE + * alsa/sof: load different firmware on different platforms (LP: #1857409) + - ASoC: SOF: Intel: hda: use fallback for firmware name + - ASoC: Intel: acpi-match: split CNL tables in three + - ASoC: SOF: Intel: Fix CFL and CML FW nocodec binary names. + * [UBUNTU 20.04] Enable CONFIG_NET_SWITCHDEV in kernel config for s390x + starting with focal (LP: #1865452) + - [Config] Enable CONFIG_NET_SWITCHDEV in kernel config for s390x starting + with focal + * Focal update: v5.4.24 upstream stable release (LP: #1866333) + - io_uring: grab ->fs as part of async offload + - EDAC: skx_common: downgrade message importance on missing PCI device + - net: dsa: b53: Ensure the default VID is untagged + - net: fib_rules: Correctly set table field when table number exceeds 8 bits + - net: macb: ensure interface is not suspended on at91rm9200 + - net: mscc: fix in frame extraction + - net: phy: restore mdio regs in the iproc mdio driver + - net: sched: correct flower port blocking + - net/tls: Fix to avoid gettig invalid tls record + - nfc: pn544: Fix occasional HW initialization failure + - qede: Fix race between rdma destroy workqueue and link change event + - Revert "net: dev: introduce support for sch BYPASS for lockless qdisc" + - udp: rehash on disconnect + - sctp: move the format error check out of __sctp_sf_do_9_1_abort + - bnxt_en: Improve device shutdown method. + - bnxt_en: Issue PCIe FLR in kdump kernel to cleanup pending DMAs. + - bonding: add missing netdev_update_lockdep_key() + - net: export netdev_next_lower_dev_rcu() + - bonding: fix lockdep warning in bond_get_stats() + - ipv6: Fix route replacement with dev-only route + - ipv6: Fix nlmsg_flags when splitting a multipath route + - ipmi:ssif: Handle a possible NULL pointer reference + - drm/msm: Set dma maximum segment size for mdss + - sched/core: Don't skip remote tick for idle CPUs + - timers/nohz: Update NOHZ load in remote tick + - sched/fair: Prevent unlimited runtime on throttled group + - dax: pass NOWAIT flag to iomap_apply + - mac80211: consider more elements in parsing CRC + - cfg80211: check wiphy driver existence for drvinfo report + - s390/zcrypt: fix card and queue total counter wrap + - qmi_wwan: re-add DW5821e pre-production variant + - qmi_wwan: unconditionally reject 2 ep interfaces + - NFSv4: Fix races between open and dentry revalidation + - perf/smmuv3: Use platform_get_irq_optional() for wired interrupt + - perf/x86/intel: Add Elkhart Lake support + - perf/x86/cstate: Add Tremont support + - perf/x86/msr: Add Tremont support + - ceph: do not execute direct write in parallel if O_APPEND is specified + - ARM: dts: sti: fixup sound frame-inversion for stihxxx-b2120.dtsi + - drm/amd/display: Do not set optimized_require to false after plane disable + - RDMA/siw: Remove unwanted WARN_ON in siw_cm_llp_data_ready() + - drm/amd/display: Check engine is not NULL before acquiring + - drm/amd/display: Limit minimum DPPCLK to 100MHz. + - drm/amd/display: Add initialitions for PLL2 clock source + - amdgpu: Prevent build errors regarding soft/hard-float FP ABI tags + - soc/tegra: fuse: Fix build with Tegra194 configuration + - i40e: Fix the conditional for i40e_vc_validate_vqs_bitmaps + - net: ena: fix potential crash when rxfh key is NULL + - net: ena: fix uses of round_jiffies() + - net: ena: add missing ethtool TX timestamping indication + - net: ena: fix incorrect default RSS key + - net: ena: rss: do not allocate key when not supported + - net: ena: rss: fix failure to get indirection table + - net: ena: rss: store hash function as values and not bits + - net: ena: fix incorrectly saving queue numbers when setting RSS indirection + table + - net: ena: fix corruption of dev_idx_to_host_tbl + - net: ena: ethtool: use correct value for crc32 hash + - net: ena: ena-com.c: prevent NULL pointer dereference + - ice: update Unit Load Status bitmask to check after reset + - cifs: Fix mode output in debugging statements + - cfg80211: add missing policy for NL80211_ATTR_STATUS_CODE + - mac80211: fix wrong 160/80+80 MHz setting + - nvme/tcp: fix bug on double requeue when send fails + - nvme: prevent warning triggered by nvme_stop_keep_alive + - nvme/pci: move cqe check after device shutdown + - ext4: potential crash on allocation error in ext4_alloc_flex_bg_array() + - audit: fix error handling in audit_data_to_entry() + - audit: always check the netlink payload length in audit_receive_msg() + - ACPICA: Introduce ACPI_ACCESS_BYTE_WIDTH() macro + - ACPI: watchdog: Fix gas->access_width usage + - KVM: VMX: check descriptor table exits on instruction emulation + - HID: ite: Only bind to keyboard USB interface on Acer SW5-012 keyboard dock + - HID: core: fix off-by-one memset in hid_report_raw_event() + - HID: core: increase HID report buffer size to 8KiB + - drm/amdgpu: Drop DRIVER_USE_AGP + - drm/radeon: Inline drm_get_pci_dev + - macintosh: therm_windtunnel: fix regression when instantiating devices + - tracing: Disable trace_printk() on post poned tests + - Revert "PM / devfreq: Modify the device name as devfreq(X) for sysfs" + - amdgpu/gmc_v9: save/restore sdpif regs during S3 + - cpufreq: Fix policy initialization for internal governor drivers + - io_uring: fix 32-bit compatability with sendmsg/recvmsg + - netfilter: ipset: Fix "INFO: rcu detected stall in hash_xxx" reports + - net/smc: transfer fasync_list in case of fallback + - vhost: Check docket sk_family instead of call getname + - netfilter: ipset: Fix forceadd evaluation path + - netfilter: xt_hashlimit: reduce hashlimit_mutex scope for htable_put() + - HID: alps: Fix an error handling path in 'alps_input_configured()' + - HID: hiddev: Fix race in in hiddev_disconnect() + - MIPS: VPE: Fix a double free and a memory leak in 'release_vpe()' + - i2c: altera: Fix potential integer overflow + - i2c: jz4780: silence log flood on txabrt + - drm/i915/gvt: Fix orphan vgpu dmabuf_objs' lifetime + - drm/i915/gvt: Separate display reset from ALL_ENGINES reset + - nl80211: fix potential leak in AP start + - mac80211: Remove a redundant mutex unlock + - kbuild: fix DT binding schema rule to detect command line changes + - hv_netvsc: Fix unwanted wakeup in netvsc_attach() + - usb: charger: assign specific number for enum value + - nvme-pci: Hold cq_poll_lock while completing CQEs + - s390/qeth: vnicc Fix EOPNOTSUPP precedence + - net: netlink: cap max groups which will be considered in netlink_bind() + - net: atlantic: fix use after free kasan warn + - net: atlantic: fix potential error handling + - net: atlantic: fix out of range usage of active_vlans array + - net/smc: no peer ID in CLC decline for SMCD + - net: ena: make ena rxfh support ETH_RSS_HASH_NO_CHANGE + - selftests: Install settings files to fix TIMEOUT failures + - kbuild: remove header compile test + - kbuild: move headers_check rule to usr/include/Makefile + - kbuild: remove unneeded variable, single-all + - kbuild: make single target builds even faster + - namei: only return -ECHILD from follow_dotdot_rcu() + - mwifiex: drop most magic numbers from mwifiex_process_tdls_action_frame() + - mwifiex: delete unused mwifiex_get_intf_num() + - KVM: SVM: Override default MMIO mask if memory encryption is enabled + - KVM: Check for a bad hva before dropping into the ghc slow path + - sched/fair: Optimize select_idle_cpu + - f2fs: fix to add swap extent correctly + - RDMA/hns: Simplify the calculation and usage of wqe idx for post verbs + - RDMA/hns: Bugfix for posting a wqe with sge + - drivers: net: xgene: Fix the order of the arguments of + 'alloc_etherdev_mqs()' + - ima: ima/lsm policy rule loading logic bug fixes + - kprobes: Set unoptimized flag after unoptimizing code + - lib/vdso: Make __arch_update_vdso_data() logic understandable + - lib/vdso: Update coarse timekeeper unconditionally + - pwm: omap-dmtimer: put_device() after of_find_device_by_node() + - perf hists browser: Restore ESC as "Zoom out" of DSO/thread/etc + - perf ui gtk: Add missing zalloc object + - x86/resctrl: Check monitoring static key in the MBM overflow handler + - KVM: x86: Remove spurious kvm_mmu_unload() from vcpu destruction path + - KVM: x86: Remove spurious clearing of async #PF MSR + - rcu: Allow only one expedited GP to run concurrently with wakeups + - ubifs: Fix ino_t format warnings in orphan_delete() + - thermal: db8500: Depromote debug print + - thermal: brcmstb_thermal: Do not use DT coefficients + - netfilter: nft_tunnel: no need to call htons() when dumping ports + - netfilter: nf_flowtable: fix documentation + - bus: tegra-aconnect: Remove PM_CLK dependency + - xfs: clear kernel only flags in XFS_IOC_ATTRMULTI_BY_HANDLE + - locking/lockdep: Fix lockdep_stats indentation problem + - mm/debug.c: always print flags in dump_page() + - mm/gup: allow FOLL_FORCE for get_user_pages_fast() + - mm/huge_memory.c: use head to check huge zero page + - mm, thp: fix defrag setting if newline is not used + - kvm: nVMX: VMWRITE checks VMCS-link pointer before VMCS field + - kvm: nVMX: VMWRITE checks unsupported field before read-only field + - blktrace: Protect q->blk_trace with RCU + - Linux 5.4.24 + * Focal update: v5.4.23 upstream stable release (LP: #1866165) + - iommu/qcom: Fix bogus detach logic + - ALSA: hda: Use scnprintf() for printing texts for sysfs/procfs + - ALSA: hda/realtek - Apply quirk for MSI GP63, too + - ALSA: hda/realtek - Apply quirk for yet another MSI laptop + - ASoC: codec2codec: avoid invalid/double-free of pcm runtime + - ASoC: sun8i-codec: Fix setting DAI data format + - tpm: Initialize crypto_id of allocated_banks to HASH_ALGO__LAST + - ecryptfs: fix a memory leak bug in parse_tag_1_packet() + - ecryptfs: fix a memory leak bug in ecryptfs_init_messaging() + - btrfs: handle logged extent failure properly + - thunderbolt: Prevent crash if non-active NVMem file is read + - USB: misc: iowarrior: add support for 2 OEMed devices + - USB: misc: iowarrior: add support for the 28 and 28L devices + - USB: misc: iowarrior: add support for the 100 device + - e1000e: Use rtnl_lock to prevent race conditions between net and pci/pm + - floppy: check FDC index for errors before assigning it + - vt: fix scrollback flushing on background consoles + - vt: selection, handle pending signals in paste_selection + - vt: vt_ioctl: fix race in VT_RESIZEX + - staging: android: ashmem: Disallow ashmem memory from being remapped + - staging: vt6656: fix sign of rx_dbm to bb_pre_ed_rssi. + - xhci: Force Maximum Packet size for Full-speed bulk devices to valid range. + - xhci: fix runtime pm enabling for quirky Intel hosts + - xhci: apply XHCI_PME_STUCK_QUIRK to Intel Comet Lake platforms + - xhci: Fix memory leak when caching protocol extended capability PSI tables - + take 2 + - usb: host: xhci: update event ring dequeue pointer on purpose + - USB: core: add endpoint-blacklist quirk + - USB: quirks: blacklist duplicate ep on Sound Devices USBPre2 + - usb: uas: fix a plug & unplug racing + - USB: Fix novation SourceControl XL after suspend + - USB: hub: Don't record a connect-change event during reset-resume + - USB: hub: Fix the broken detection of USB3 device in SMSC hub + - usb: dwc2: Fix SET/CLEAR_FEATURE and GET_STATUS flows + - usb: dwc3: gadget: Check for IOC/LST bit in TRB->ctrl fields + - usb: dwc3: debug: fix string position formatting mixup with ret and len + - scsi: Revert "target/core: Inline transport_lun_remove_cmd()" + - staging: rtl8188eu: Fix potential security hole + - staging: rtl8188eu: Fix potential overuse of kernel memory + - staging: rtl8723bs: Fix potential security hole + - staging: rtl8723bs: Fix potential overuse of kernel memory + - drm/panfrost: perfcnt: Reserve/use the AS attached to the perfcnt MMU + context + - powerpc/8xx: Fix clearing of bits 20-23 in ITLB miss + - powerpc/eeh: Fix deadlock handling dead PHB + - powerpc/tm: Fix clearing MSR[TS] in current when reclaiming on signal + delivery + - powerpc/entry: Fix an #if which should be an #ifdef in entry_32.S + - powerpc/hugetlb: Fix 512k hugepages on 8xx with 16k page size + - powerpc/hugetlb: Fix 8M hugepages on 8xx + - arm64: memory: Add missing brackets to untagged_addr() macro + - jbd2: fix ocfs2 corrupt when clearing block group bits + - x86/ima: use correct identifier for SetupMode variable + - x86/mce/amd: Publish the bank pointer only after setup has succeeded + - x86/mce/amd: Fix kobject lifetime + - x86/cpu/amd: Enable the fixed Instructions Retired counter IRPERF + - serial: 8250: Check UPF_IRQ_SHARED in advance + - tty/serial: atmel: manage shutdown in case of RS485 or ISO7816 mode + - tty: serial: imx: setup the correct sg entry for tx dma + - tty: serial: qcom_geni_serial: Fix RX cancel command failure + - serdev: ttyport: restore client ops on deregistration + - MAINTAINERS: Update drm/i915 bug filing URL + - ACPI: PM: s2idle: Check fixed wakeup events in acpi_s2idle_wake() + - mm/memcontrol.c: lost css_put in memcg_expand_shrinker_maps() + - nvme-multipath: Fix memory leak with ana_log_buf + - genirq/irqdomain: Make sure all irq domain flags are distinct + - mm/vmscan.c: don't round up scan size for online memory cgroup + - mm/sparsemem: pfn_to_page is not valid yet on SPARSEMEM + - lib/stackdepot.c: fix global out-of-bounds in stack_slabs + - mm: Avoid creating virtual address aliases in brk()/mmap()/mremap() + - drm/amdgpu/soc15: fix xclk for raven + - drm/amdgpu/gfx9: disable gfxoff when reading rlc clock + - drm/amdgpu/gfx10: disable gfxoff when reading rlc clock + - drm/nouveau/kms/gv100-: Re-set LUT after clearing for modesets + - drm/i915: Wean off drm_pci_alloc/drm_pci_free + - drm/i915: Update drm/i915 bug filing URL + - sched/psi: Fix OOB write when writing 0 bytes to PSI files + - KVM: nVMX: Don't emulate instructions in guest mode + - KVM: x86: don't notify userspace IOAPIC on edge-triggered interrupt EOI + - ext4: fix a data race in EXT4_I(inode)->i_disksize + - ext4: add cond_resched() to __ext4_find_entry() + - ext4: fix potential race between online resizing and write operations + - ext4: fix potential race between s_group_info online resizing and access + - ext4: fix potential race between s_flex_groups online resizing and access + - ext4: fix mount failure with quota configured as module + - ext4: rename s_journal_flag_rwsem to s_writepages_rwsem + - ext4: fix race between writepages and enabling EXT4_EXTENTS_FL + - KVM: nVMX: Refactor IO bitmap checks into helper function + - KVM: nVMX: Check IO instruction VM-exit conditions + - KVM: nVMX: clear PIN_BASED_POSTED_INTR from nested pinbased_ctls only when + apicv is globally disabled + - KVM: nVMX: handle nested posted interrupts when apicv is disabled for L1 + - KVM: apic: avoid calculating pending eoi from an uninitialized val + - btrfs: destroy qgroup extent records on transaction abort + - btrfs: fix bytes_may_use underflow in prealloc error condtition + - btrfs: reset fs_root to NULL on error in open_ctree + - btrfs: do not check delayed items are empty for single transaction cleanup + - Btrfs: fix btrfs_wait_ordered_range() so that it waits for all ordered + extents + - Btrfs: fix race between shrinking truncate and fiemap + - btrfs: don't set path->leave_spinning for truncate + - Btrfs: fix deadlock during fast fsync when logging prealloc extents beyond + eof + - Revert "dmaengine: imx-sdma: Fix memory leak" + - drm/i915/gvt: more locking for ppgtt mm LRU list + - drm/bridge: tc358767: fix poll timeouts + - drm/i915/gt: Protect defer_request() from new waiters + - drm/msm/dpu: fix BGR565 vs RGB565 confusion + - scsi: Revert "RDMA/isert: Fix a recently introduced regression related to + logout" + - scsi: Revert "target: iscsi: Wait for all commands to finish before freeing + a session" + - usb: gadget: composite: Fix bMaxPower for SuperSpeedPlus + - usb: dwc2: Fix in ISOC request length checking + - staging: rtl8723bs: fix copy of overlapping memory + - staging: greybus: use after free in gb_audio_manager_remove_all() + - ASoC: atmel: fix atmel_ssc_set_audio link failure + - ASoC: fsl_sai: Fix exiting path on probing failure + - ecryptfs: replace BUG_ON with error handling code + - iommu/vt-d: Fix compile warning from intel-svm.h + - crypto: rename sm3-256 to sm3 in hash_algo_name + - genirq/proc: Reject invalid affinity masks (again) + - bpf, offload: Replace bitwise AND by logical AND in + bpf_prog_offload_info_fill + - arm64: lse: Fix LSE atomics with LLVM + - io_uring: fix __io_iopoll_check deadlock in io_sq_thread + - ALSA: rawmidi: Avoid bit fields for state flags + - ALSA: seq: Avoid concurrent access to queue flags + - ALSA: seq: Fix concurrent access to queue current tick/time + - netfilter: xt_hashlimit: limit the max size of hashtable + - rxrpc: Fix call RCU cleanup using non-bh-safe locks + - io_uring: prevent sq_thread from spinning when it should stop + - ata: ahci: Add shutdown to freeze hardware resources of ahci + - xen: Enable interrupts when calling _cond_resched() + - net/mlx5e: Reset RQ doorbell counter before moving RQ state from RST to RDY + - net/mlx5: Fix sleep while atomic in mlx5_eswitch_get_vepa + - net/mlx5e: Fix crash in recovery flow without devlink reporter + - s390/kaslr: Fix casts in get_random + - s390/mm: Explicitly compare PAGE_DEFAULT_KEY against zero in + storage_key_init_range + - bpf: Selftests build error in sockmap_basic.c + - ASoC: SOF: Intel: hda: Add iDisp4 DAI + - Linux 5.4.23 + * Miscellaneous Ubuntu changes + - SAUCE: selftests/net -- disable timeout + - SAUCE: selftests/net -- disable l2tp.sh test + - SAUCE: selftests/ftrace: Use printf instead of echo in kprobe syntax error + tests + - SAUCE: selftests/powerpc -- Disable timeout for benchmark and tm tests + - SAUCE: selftests/ftrace: Escape additional strings in kprobe syntax error + tests + - SAUCE: Revert "UBUNTU: SAUCE: blk/core: Gracefully handle unset + make_request_fn" + - [Packaging] prevent duplicated entries in modules.ignore + - update dkms package versions + + [ Ubuntu: 5.4.0-17.21 ] + + * focal/linux: 5.4.0-17.20 -proposed tracker (LP: #1865025) + * Packaging resync (LP: #1786013) + - [Packaging] update helper scripts + * Miscellaneous Ubuntu changes + - SAUCE: drm/i915/execlists: fix off by one in execlists_update_context() + + -- Andrea Righi Mon, 09 Mar 2020 17:05:02 +0100 + +linux-azure (5.4.0-1005.5) focal; urgency=medium + + * focal/linux-azure: 5.4.0-1005.5 -proposed tracker (LP: #1865021) + + * Packaging resync (LP: #1786013) + - [Packaging] update helper scripts + + [ Ubuntu: 5.4.0-17.20 ] + + * focal/linux: 5.4.0-17.20 -proposed tracker (LP: #1865025) + * Packaging resync (LP: #1786013) + - [Packaging] update helper scripts + * Miscellaneous Ubuntu changes + - SAUCE: drm/i915/execlists: fix off by one in execlists_update_context() + + -- Seth Forshee Thu, 27 Feb 2020 14:55:20 -0600 + +linux-azure (5.4.0-1004.4) focal; urgency=medium + + * focal/linux-azure: 5.4.0-1004.4 -proposed tracker (LP: #1864884) + + [ Ubuntu: 5.4.0-16.19 ] + + * focal/linux: 5.4.0-16.19 -proposed tracker (LP: #1864889) + * system hang: i915 Resetting rcs0 for hang on rcs0 (LP: #1861395) + - drm/i915/execlists: Always force a context reload when rewinding RING_TAIL + * nsleep-lat / set-timer-lat / inconsistency-check / raw_skew from timer in + ubuntu_kernel_selftests timeout on 5.3 / 5.4 (LP: #1864626) + - selftests/timers: Turn off timeout setting + * [sfc-0121]enable the HiSilicon v3xx SFC driver (LP: #1860401) + - spi: Add HiSilicon v3xx SPI NOR flash controller driver + - MAINTAINERS: Add a maintainer for the HiSilicon v3xx SFC driver + - [Config] CONFIG_SPI_HISI_SFC_V3XX=m + * [hns3-0217]sync mainline kernel 5.6rc1 hns3 patchset into ubuntu HWE kernel + branch (LP: #1863575) + - net: hns3: add management table after IMP reset + - net: hns3: fix VF bandwidth does not take effect in some case + - net: hns3: fix a copying IPv6 address error in hclge_fd_get_flow_tuples() + * [hns3-0111]sync mainline kernel 5.5rc6 hns3 patchset into ubuntu HWE kernel + branch Edit (LP: #1859261) + - net: hns3: schedule hclgevf_service by using delayed workqueue + - net: hns3: remove mailbox and reset work in hclge_main + - net: hns3: remove unnecessary work in hclgevf_main + - net: hns3: allocate WQ with WQ_MEM_RECLAIM flag + - net: hns3: do not schedule the periodic task when reset fail + - net: hns3: check FE bit before calling hns3_add_frag() + - net: hns3: remove useless mutex vport_cfg_mutex in the struct hclge_dev + - net: hns3: optimization for CMDQ uninitialization + - net: hns3: get FD rules location before dump in debugfs + - net: hns3: implement ndo_features_check ops for hns3 driver + - net: hns3: add some VF VLAN information for command "ip link show" + - net: hns3: add a log for getting chain failure in + hns3_nic_uninit_vector_data() + - net: hns3: only print misc interrupt status when handling fails + - net: hns3: add trace event support for HNS3 driver + - net: hns3: re-organize vector handle + - net: hns3: modify the IRQ name of TQP vector + - net: hns3: modify an unsuitable log in hclge_map_ring_to_vector() + - net: hns3: modify the IRQ name of misc vectors + - net: hns3: add protection when get SFP speed as 0 + - net: hns3: replace an unsuitable variable type in + hclge_inform_reset_assert_to_vf() + - net: hns3: modify an unsuitable reset level for hardware error + - net: hns3: split hclge_reset() into preparing and rebuilding part + - net: hns3: split hclgevf_reset() into preparing and rebuilding part + - net: hns3: refactor the precedure of PF FLR + - net: hns3: refactor the procedure of VF FLR + - net: hns3: enlarge HCLGE_RESET_WAIT_CNT + - net: hns3: modify hclge_func_reset_sync_vf()'s return type to void + - net: hns3: refactor the notification scheme of PF reset + * alsa/hda/realtek: fix a mute led regression on Lenovo X1 Carbon + (LP: #1864576) + - SAUCE: ALSA: hda/realtek - Fix a regression for mute led on Lenovo Carbon X1 + * ipc/sem.c : process loops infinitely in exit_sem() (LP: #1858834) + - Revert "ipc, sem: remove uneeded sem_undo_list lock usage in exit_sem()" + * r8152 init may take up to 40 seconds at initialization with Dell WD19/WD19DC + during hotplug (LP: #1864284) + - UBUNTU SAUCE: r8151: check disconnect status after long sleep + * Update kernel options CONFIG_NR_CPUS and CONFIG_NUMA_EMU for focal + (LP: #1864198) + - Ubuntu: [Config] Update kernel options CONFIG_NR_CPUS and CONFIG_NUMA_EMU + * ftrace test in ubuntu_kernel_selftests will timeout randomly (LP: #1864172) + - tracing/selftests: Turn off timeout setting + * Another Dell AIO backlight issue (LP: #1863880) + - SAUCE: platform/x86: dell-uart-backlight: move retry block + * Backport GetFB2 ioctl (LP: #1863874) + - SAUCE: drm: Add getfb2 ioctl + * [20.04] Allow to reset an opencapi adapter (LP: #1862121) + - powerpc/powernv/ioda: Fix ref count for devices with their own PE + - powerpc/powernv/ioda: Protect PE list + - powerpc/powernv/ioda: set up PE on opencapi device when enabling + - powerpc/powernv/ioda: Release opencapi device + - powerpc/powernv/ioda: Find opencapi slot for a device node + - pci/hotplug/pnv-php: Remove erroneous warning + - pci/hotplug/pnv-php: Improve error msg on power state change failure + - pci/hotplug/pnv-php: Register opencapi slots + - pci/hotplug/pnv-php: Relax check when disabling slot + - pci/hotplug/pnv-php: Wrap warnings in macro + - ocxl: Add PCI hotplug dependency to Kconfig + * alsa/asoc: export the number of dmic to userspace to work with the latest + ucm2 (focal) (LP: #1864400) + - ASoC: add control components management + - ASoC: intel/skl/hda - export number of digital microphones via control + components + * alsa/sof: let sof driver work with topology with volume and led control + (focal) (LP: #1864398) + - ASoC: SOF: enable dual control for pga + - AsoC: SOF: refactor control load code + - ASoC: SOF: acpi led support for switch controls + - ASoC: SOF: topology: check errors when parsing LED tokens + * machine doesn't come up after suspend and re-opening the lid (LP: #1861837) + - ASoC: SOF: trace: fix unconditional free in trace release + * 5.3.0-23-generic causes fans to spin when idle (LP: #1853044) + - drm/i915/gt: Close race between engine_park and intel_gt_retire_requests + - drm/i915/gt: Adapt engine_park synchronisation rules for engine_retire + - drm/i915/gt: Schedule request retirement when timeline idles + * Focal update: 5.4.22 upstream stable release (LP: #1864488) + - core: Don't skip generic XDP program execution for cloned SKBs + - enic: prevent waking up stopped tx queues over watchdog reset + - net/smc: fix leak of kernel memory to user space + - net: dsa: tag_qca: Make sure there is headroom for tag + - net/sched: matchall: add missing validation of TCA_MATCHALL_FLAGS + - net/sched: flower: add missing validation of TCA_FLOWER_FLAGS + - drm/gma500: Fixup fbdev stolen size usage evaluation + - ath10k: Fix qmi init error handling + - wil6210: fix break that is never reached because of zero'ing of a retry + counter + - drm/qxl: Complete exception handling in qxl_device_init() + - rcu/nocb: Fix dump_tree hierarchy print always active + - rcu: Fix missed wakeup of exp_wq waiters + - rcu: Fix data-race due to atomic_t copy-by-value + - f2fs: preallocate DIO blocks when forcing buffered_io + - f2fs: call f2fs_balance_fs outside of locked page + - media: meson: add missing allocation failure check on new_buf + - clk: meson: pll: Fix by 0 division in __pll_params_to_rate() + - cpu/hotplug, stop_machine: Fix stop_machine vs hotplug order + - brcmfmac: Fix memory leak in brcmf_p2p_create_p2pdev() + - brcmfmac: Fix use after free in brcmf_sdio_readframes() + - PCI: Fix pci_add_dma_alias() bitmask size + - drm/amd/display: Map ODM memory correctly when doing ODM combine + - leds: pca963x: Fix open-drain initialization + - ext4: fix ext4_dax_read/write inode locking sequence for IOCB_NOWAIT + - ALSA: ctl: allow TLV read operation for callback type of element in locked + case + - gianfar: Fix TX timestamping with a stacked DSA driver + - pinctrl: sh-pfc: sh7264: Fix CAN function GPIOs + - printk: fix exclusive_console replaying + - drm/mipi_dbi: Fix off-by-one bugs in mipi_dbi_blank() + - drm/msm/adreno: fix zap vs no-zap handling + - pxa168fb: Fix the function used to release some memory in an error handling + path + - media: ov5640: Fix check for PLL1 exceeding max allowed rate + - media: i2c: mt9v032: fix enum mbus codes and frame sizes + - media: sun4i-csi: Deal with DRAM offset + - media: sun4i-csi: Fix data sampling polarity handling + - media: sun4i-csi: Fix [HV]sync polarity handling + - clk: at91: sam9x60: fix programmable clock prescaler + - powerpc/powernv/iov: Ensure the pdn for VFs always contains a valid PE + number + - clk: meson: meson8b: make the CCF use the glitch-free mali mux + - gpio: gpio-grgpio: fix possible sleep-in-atomic-context bugs in + grgpio_irq_map/unmap() + - iommu/vt-d: Fix off-by-one in PASID allocation + - x86/fpu: Deactivate FPU state after failure during state load + - char/random: silence a lockdep splat with printk() + - media: sti: bdisp: fix a possible sleep-in-atomic-context bug in + bdisp_device_run() + - kernel/module: Fix memleak in module_add_modinfo_attrs() + - IB/core: Let IB core distribute cache update events + - pinctrl: baytrail: Do not clear IRQ flags on direct-irq enabled pins + - efi/x86: Map the entire EFI vendor string before copying it + - MIPS: Loongson: Fix potential NULL dereference in loongson3_platform_init() + - sparc: Add .exit.data section. + - net: ethernet: ixp4xx: Standard module init + - raid6/test: fix a compilation error + - uio: fix a sleep-in-atomic-context bug in uio_dmem_genirq_irqcontrol() + - drm/amdgpu/sriov: workaround on rev_id for Navi12 under sriov + - spi: fsl-lpspi: fix only one cs-gpio working + - drm/nouveau/nouveau: fix incorrect sizeof on args.src an args.dst + - usb: gadget: udc: fix possible sleep-in-atomic-context bugs in gr_probe() + - usb: dwc2: Fix IN FIFO allocation + - clocksource/drivers/bcm2835_timer: Fix memory leak of timer + - drm/amd/display: Clear state after exiting fixed active VRR state + - kselftest: Minimise dependency of get_size on C library interfaces + - jbd2: clear JBD2_ABORT flag before journal_reset to update log tail info + when load journal + - ext4: fix deadlock allocating bio_post_read_ctx from mempool + - clk: ti: dra7: fix parent for gmac_clkctrl + - x86/sysfb: Fix check for bad VRAM size + - pwm: omap-dmtimer: Simplify error handling + - udf: Allow writing to 'Rewritable' partitions + - dmaengine: fsl-qdma: fix duplicated argument to && + - wan/hdlc_x25: fix skb handling + - powerpc/iov: Move VF pdev fixup into pcibios_fixup_iov() + - tracing: Fix tracing_stat return values in error handling paths + - tracing: Fix very unlikely race of registering two stat tracers + - ARM: 8952/1: Disable kmemleak on XIP kernels + - ext4, jbd2: ensure panic when aborting with zero errno + - ath10k: Correct the DMA direction for management tx buffers + - rtw88: fix rate mask for 1SS chip + - brcmfmac: sdio: Fix OOB interrupt initialization on brcm43362 + - selftests: settings: tests can be in subsubdirs + - rtc: i2c/spi: Avoid inclusion of REGMAP support when not needed + - drm/amd/display: Retrain dongles when SINK_COUNT becomes non-zero + - tracing: Simplify assignment parsing for hist triggers + - nbd: add a flush_workqueue in nbd_start_device + - KVM: s390: ENOTSUPP -> EOPNOTSUPP fixups + - Btrfs: keep pages dirty when using btrfs_writepage_fixup_worker + - drivers/block/zram/zram_drv.c: fix error return codes not being returned in + writeback_store + - block, bfq: do not plug I/O for bfq_queues with no proc refs + - kconfig: fix broken dependency in randconfig-generated .config + - clk: qcom: Don't overwrite 'cfg' in clk_rcg2_dfs_populate_freq() + - clk: qcom: rcg2: Don't crash if our parent can't be found; return an error + - drm/amdkfd: Fix a bug in SDMA RLC queue counting under HWS mode + - bpf, sockhash: Synchronize_rcu before free'ing map + - drm/amdgpu: remove 4 set but not used variable in + amdgpu_atombios_get_connector_info_from_object_table + - ath10k: correct the tlv len of ath10k_wmi_tlv_op_gen_config_pno_start + - drm/amdgpu: Ensure ret is always initialized when using SOC15_WAIT_ON_RREG + - drm/panel: simple: Add Logic PD Type 28 display support + - arm64: dts: rockchip: Fix NanoPC-T4 cooling maps + - modules: lockdep: Suppress suspicious RCU usage warning + - ASoC: intel: sof_rt5682: Add quirk for number of HDMI DAI's + - ASoC: intel: sof_rt5682: Add support for tgl-max98357a-rt5682 + - regulator: rk808: Lower log level on optional GPIOs being not available + - net/wan/fsl_ucc_hdlc: reject muram offsets above 64K + - NFC: port100: Convert cpu_to_le16(le16_to_cpu(E1) + E2) to use + le16_add_cpu(). + - arm64: dts: allwinner: H6: Add PMU mode + - arm64: dts: allwinner: H5: Add PMU node + - arm: dts: allwinner: H3: Add PMU node + - opp: Free static OPPs on errors while adding them + - selinux: ensure we cleanup the internal AVC counters on error in + avc_insert() + - arm64: dts: qcom: msm8996: Disable USB2 PHY suspend by core + - padata: validate cpumask without removed CPU during offline + - clk: imx: Add correct failure handling for clk based helpers + - ARM: exynos_defconfig: Bring back explicitly wanted options + - ARM: dts: imx6: rdu2: Disable WP for USDHC2 and USDHC3 + - ARM: dts: imx6: rdu2: Limit USBH1 to Full Speed + - bus: ti-sysc: Implement quirk handling for CLKDM_NOAUTO + - PCI: iproc: Apply quirk_paxc_bridge() for module as well as built-in + - media: cx23885: Add support for AVerMedia CE310B + - PCI: Add generic quirk for increasing D3hot delay + - PCI: Increase D3 delay for AMD Ryzen5/7 XHCI controllers + - gpu/drm: ingenic: Avoid null pointer deference in plane atomic update + - selftests/net: make so_txtime more robust to timer variance + - media: v4l2-device.h: Explicitly compare grp{id,mask} to zero in v4l2_device + macros + - reiserfs: Fix spurious unlock in reiserfs_fill_super() error handling + - samples/bpf: Set -fno-stack-protector when building BPF programs + - r8169: check that Realtek PHY driver module is loaded + - fore200e: Fix incorrect checks of NULL pointer dereference + - netfilter: nft_tunnel: add the missing ERSPAN_VERSION nla_policy + - ALSA: usx2y: Adjust indentation in snd_usX2Y_hwdep_dsp_status + - PCI: Add nr_devfns parameter to pci_add_dma_alias() + - PCI: Add DMA alias quirk for PLX PEX NTB + - b43legacy: Fix -Wcast-function-type + - ipw2x00: Fix -Wcast-function-type + - iwlegacy: Fix -Wcast-function-type + - rtlwifi: rtl_pci: Fix -Wcast-function-type + - orinoco: avoid assertion in case of NULL pointer + - drm/amdgpu: fix KIQ ring test fail in TDR of SRIOV + - clk: qcom: smd: Add missing bimc clock + - ACPICA: Disassembler: create buffer fields in ACPI_PARSE_LOAD_PASS1 + - nfsd: Clone should commit src file metadata too + - scsi: ufs: Complete pending requests in host reset and restore path + - scsi: aic7xxx: Adjust indentation in ahc_find_syncrate + - crypto: inside-secure - add unspecified HAS_IOMEM dependency + - drm/mediatek: handle events when enabling/disabling crtc + - clk: renesas: rcar-gen3: Allow changing the RPC[D2] clocks + - ARM: dts: r8a7779: Add device node for ARM global timer + - selinux: ensure we cleanup the internal AVC counters on error in + avc_update() + - scsi: lpfc: Fix: Rework setting of fdmi symbolic node name registration + - arm64: dts: qcom: db845c: Enable ath10k 8bit host-cap quirk + - iommu/amd: Check feature support bit before accessing MSI capability + registers + - iommu/amd: Only support x2APIC with IVHD type 11h/40h + - iommu/iova: Silence warnings under memory pressure + - clk: actually call the clock init before any other callback of the clock + - dmaengine: Store module owner in dma_device struct + - dmaengine: imx-sdma: Fix memory leak + - bpf: Print error message for bpftool cgroup show + - net: phy: realtek: add logging for the RGMII TX delay configuration + - crypto: chtls - Fixed memory leak + - x86/vdso: Provide missing include file + - PM / devfreq: exynos-ppmu: Fix excessive stack usage + - PM / devfreq: rk3399_dmc: Add COMPILE_TEST and HAVE_ARM_SMCCC dependency + - drm/fbdev: Fallback to non tiled mode if all tiles not present + - pinctrl: sh-pfc: sh7269: Fix CAN function GPIOs + - reset: uniphier: Add SCSSI reset control for each channel + - ASoC: soc-topology: fix endianness issues + - fbdev: fix numbering of fbcon options + - RDMA/rxe: Fix error type of mmap_offset + - clk: sunxi-ng: add mux and pll notifiers for A64 CPU clock + - ALSA: sh: Fix unused variable warnings + - clk: Use parent node pointer during registration if necessary + - clk: uniphier: Add SCSSI clock gate for each channel + - ALSA: hda/realtek - Apply mic mute LED quirk for Dell E7xx laptops, too + - ALSA: sh: Fix compile warning wrt const + - net: phy: fixed_phy: fix use-after-free when checking link GPIO + - tools lib api fs: Fix gcc9 stringop-truncation compilation error + - vfio/spapr/nvlink2: Skip unpinning pages on error exit + - ASoC: Intel: sof_rt5682: Ignore the speaker amp when there isn't one. + - ACPI: button: Add DMI quirk for Razer Blade Stealth 13 late 2019 lid switch + - iommu/vt-d: Match CPU and IOMMU paging mode + - iommu/vt-d: Avoid sending invalid page response + - drm/amdkfd: Fix permissions of hang_hws + - mlx5: work around high stack usage with gcc + - RDMA/hns: Avoid printing address of mtt page + - drm: remove the newline for CRC source name. + - usb: dwc3: use proper initializers for property entries + - ARM: dts: stm32: Add power-supply for DSI panel on stm32f469-disco + - usbip: Fix unsafe unaligned pointer usage + - udf: Fix free space reporting for metadata and virtual partitions + - drm/mediatek: Add gamma property according to hardware capability + - staging: rtl8188: avoid excessive stack usage + - IB/hfi1: Add software counter for ctxt0 seq drop + - IB/hfi1: Add RcvShortLengthErrCnt to hfi1stats + - soc/tegra: fuse: Correct straps' address for older Tegra124 device trees + - efi/x86: Don't panic or BUG() on non-critical error conditions + - rcu: Use WRITE_ONCE() for assignments to ->pprev for hlist_nulls + - Input: edt-ft5x06 - work around first register access error + - bnxt: Detach page from page pool before sending up the stack + - x86/nmi: Remove irq_work from the long duration NMI handler + - wan: ixp4xx_hss: fix compile-testing on 64-bit + - clocksource: davinci: only enable clockevents once tim34 is initialized + - arm64: dts: rockchip: fix dwmmc clock name for px30 + - arm64: dts: rockchip: add reg property to brcmf sub-nodes + - ARM: dts: rockchip: add reg property to brcmf sub node for + rk3188-bqedison2qc + - ALSA: usb-audio: Add boot quirk for MOTU M Series + - ASoC: atmel: fix build error with CONFIG_SND_ATMEL_SOC_DMA=m + - raid6/test: fix a compilation warning + - tty: synclinkmp: Adjust indentation in several functions + - tty: synclink_gt: Adjust indentation in several functions + - misc: xilinx_sdfec: fix xsdfec_poll()'s return type + - visorbus: fix uninitialized variable access + - driver core: platform: Prevent resouce overflow from causing infinite loops + - driver core: Print device when resources present in really_probe() + - ASoC: SOF: Intel: hda-dai: fix compilation warning in pcm_prepare + - bpf: Return -EBADRQC for invalid map type in __bpf_tx_xdp_map + - vme: bridges: reduce stack usage + - drm/nouveau/secboot/gm20b: initialize pointer in gm20b_secboot_new() + - drm/nouveau/gr/gk20a,gm200-: add terminators to method lists read from fw + - drm/nouveau: Fix copy-paste error in nouveau_fence_wait_uevent_handler + - drm/nouveau/drm/ttm: Remove set but not used variable 'mem' + - drm/nouveau/fault/gv100-: fix memory leak on module unload + - dm thin: don't allow changing data device during thin-pool reload + - gpiolib: Set lockdep class for hierarchical irq domains + - drm/vmwgfx: prevent memory leak in vmw_cmdbuf_res_add + - perf/imx_ddr: Fix cpu hotplug state cleanup + - usb: musb: omap2430: Get rid of musb .set_vbus for omap2430 glue + - kbuild: remove *.tmp file when filechk fails + - iommu/arm-smmu-v3: Use WRITE_ONCE() when changing validity of an STE + - ALSA: usb-audio: unlock on error in probe + - f2fs: set I_LINKABLE early to avoid wrong access by vfs + - f2fs: free sysfs kobject + - scsi: ufs: pass device information to apply_dev_quirks + - scsi: ufs-mediatek: add apply_dev_quirks variant operation + - scsi: iscsi: Don't destroy session if there are outstanding connections + - crypto: essiv - fix AEAD capitalization and preposition use in help text + - ALSA: usb-audio: add implicit fb quirk for MOTU M Series + - RDMA/mlx5: Don't fake udata for kernel path + - arm64: lse: fix LSE atomics with LLVM's integrated assembler + - arm64: fix alternatives with LLVM's integrated assembler + - drm/amd/display: fixup DML dependencies + - EDAC/sifive: Fix return value check in ecc_register() + - KVM: PPC: Remove set but not used variable 'ra', 'rs', 'rt' + - arm64: dts: ti: k3-j721e-main: Add missing power-domains for smmu + - sched/core: Fix size of rq::uclamp initialization + - sched/topology: Assert non-NUMA topology masks don't (partially) overlap + - perf/x86/amd: Constrain Large Increment per Cycle events + - watchdog/softlockup: Enforce that timestamp is valid on boot + - debugobjects: Fix various data races + - ASoC: SOF: Intel: hda: Fix SKL dai count + - regulator: vctrl-regulator: Avoid deadlock getting and setting the voltage + - f2fs: fix memleak of kobject + - x86/mm: Fix NX bit clearing issue in kernel_map_pages_in_pgd + - pwm: omap-dmtimer: Remove PWM chip in .remove before making it unfunctional + - cmd64x: potential buffer overflow in cmd64x_program_timings() + - ide: serverworks: potential overflow in svwks_set_pio_mode() + - pwm: Remove set but not set variable 'pwm' + - btrfs: fix possible NULL-pointer dereference in integrity checks + - btrfs: safely advance counter when looking up bio csums + - btrfs: device stats, log when stats are zeroed + - module: avoid setting info->name early in case we can fall back to + info->mod->name + - remoteproc: Initialize rproc_class before use + - regulator: core: Fix exported symbols to the exported GPL version + - irqchip/mbigen: Set driver .suppress_bind_attrs to avoid remove problems + - ALSA: hda/hdmi - add retry logic to parse_intel_hdmi() + - spi: spi-fsl-qspi: Ensure width is respected in spi-mem operations + - kbuild: use -S instead of -E for precise cc-option test in Kconfig + - objtool: Fix ARCH=x86_64 build error + - x86/decoder: Add TEST opcode to Group3-2 + - s390: adjust -mpacked-stack support check for clang 10 + - s390/ftrace: generate traced function stack frame + - driver core: platform: fix u32 greater or equal to zero comparison + - bpf, btf: Always output invariant hit in pahole DWARF to BTF transform + - ALSA: hda - Add docking station support for Lenovo Thinkpad T420s + - sunrpc: Fix potential leaks in sunrpc_cache_unhash() + - drm/nouveau/mmu: fix comptag memory leak + - powerpc/sriov: Remove VF eeh_dev state when disabling SR-IOV + - media: uvcvideo: Add a quirk to force GEO GC6500 Camera bits-per-pixel value + - btrfs: separate definition of assertion failure handlers + - btrfs: Fix split-brain handling when changing FSID to metadata uuid + - bcache: cached_dev_free needs to put the sb page + - bcache: rework error unwinding in register_bcache + - bcache: fix use-after-free in register_bcache() + - iommu/vt-d: Remove unnecessary WARN_ON_ONCE() + - alarmtimer: Make alarmtimer platform device child of RTC device + - selftests: bpf: Reset global state between reuseport test runs + - jbd2: switch to use jbd2_journal_abort() when failed to submit the commit + record + - jbd2: make sure ESHUTDOWN to be recorded in the journal superblock + - powerpc/pseries/lparcfg: Fix display of Maximum Memory + - selftests/eeh: Bump EEH wait time to 60s + - ARM: 8951/1: Fix Kexec compilation issue. + - ALSA: usb-audio: add quirks for Line6 Helix devices fw>=2.82 + - hostap: Adjust indentation in prism2_hostapd_add_sta + - rtw88: fix potential NULL skb access in TX ISR + - iwlegacy: ensure loop counter addr does not wrap and cause an infinite loop + - cifs: fix unitialized variable poential problem with network I/O cache lock + patch + - cifs: Fix mount options set in automount + - cifs: fix NULL dereference in match_prepath + - bpf: map_seq_next should always increase position index + - powerpc/mm: Don't log user reads to 0xffffffff + - ceph: check availability of mds cluster on mount after wait timeout + - rbd: work around -Wuninitialized warning + - drm/amd/display: do not allocate display_mode_lib unnecessarily + - irqchip/gic-v3: Only provision redistributors that are enabled in ACPI + - drm/nouveau/disp/nv50-: prevent oops when no channel method map provided + - char: hpet: Fix out-of-bounds read bug + - ftrace: fpid_next() should increase position index + - trigger_next should increase position index + - radeon: insert 10ms sleep in dce5_crtc_load_lut + - powerpc: Do not consider weak unresolved symbol relocations as bad + - btrfs: do not do delalloc reservation under page lock + - ocfs2: make local header paths relative to C files + - ocfs2: fix a NULL pointer dereference when call + ocfs2_update_inode_fsync_trans() + - lib/scatterlist.c: adjust indentation in __sg_alloc_table + - reiserfs: prevent NULL pointer dereference in reiserfs_insert_item() + - bcache: fix memory corruption in bch_cache_accounting_clear() + - bcache: explicity type cast in bset_bkey_last() + - bcache: fix incorrect data type usage in btree_flush_write() + - irqchip/gic-v3-its: Reference to its_invall_cmd descriptor when building + INVALL + - nvmet: Pass lockdep expression to RCU lists + - nvme-pci: remove nvmeq->tags + - iwlwifi: mvm: Fix thermal zone registration + - iwlwifi: mvm: Check the sta is not NULL in iwl_mvm_cfg_he_sta() + - asm-generic/tlb: add missing CONFIG symbol + - microblaze: Prevent the overflow of the start + - brd: check and limit max_part par + - drm/amdgpu/smu10: fix smu10_get_clock_by_type_with_latency + - drm/amdgpu/smu10: fix smu10_get_clock_by_type_with_voltage + - NFS: Fix memory leaks + - help_next should increase position index + - i40e: Relax i40e_xsk_wakeup's return value when PF is busy + - cifs: log warning message (once) if out of disk space + - virtio_balloon: prevent pfn array overflow + - fuse: don't overflow LLONG_MAX with end offset + - mlxsw: spectrum_dpipe: Add missing error path + - drm/amdgpu/display: handle multiple numbers of fclks in dcn_calcs.c (v2) + - bcache: properly initialize 'path' and 'err' in register_bcache() + - rtc: Kconfig: select REGMAP_I2C when necessary + - Linux 5.4.22 + * Focal update: 5.4.22 upstream stable release (LP: #1864488) // + CVE-2019-19076. + - Revert "nfp: abm: fix memory leak in nfp_abm_u32_knode_replace" + * Miscellaneous Ubuntu changes + - [Debian] Revert "UBUNTU: [Debian] Update linux source package name in + debian/tests/*" + - SAUCE: selftests: fix undefined lable cleanup build error + - SAUCE: selftests: fix undefined macro RET_IF() build error + - [Packaging] Include modules.builtin.modinfo in linux-modules + - update dkms package versions + - Revert "UBUNTU: [Debian] Update package name in getabis repo list" + * Miscellaneous upstream changes + - libbpf: Extract and generalize CPU mask parsing logic + + -- Seth Forshee Wed, 26 Feb 2020 13:47:15 -0600 + +linux-azure (5.4.0-1003.3) focal; urgency=medium + + * focal/linux-azure: 5.4.0-1003.3 -proposed tracker (LP: #1864081) + + * Integrate Intel SGX driver into linux-azure (LP: #1844245) + - SAUCE: linux-azure: Include Intel SGX driver to the main modules package + + * Miscellaneous Ubuntu changes + - SAUCE: intel_sgx: use mmu_notifier_unregister w/o "no_release" + - [Config] updateconfigs following rebase to 5.4.0-15.18 + + [ Ubuntu: 5.4.0-15.18 ] + + * focal/linux: 5.4.0-15.18 -proposed tracker (LP: #1864085) + * Focal update: v5.4.21 upstream stable release (LP: #1864046) + - Input: synaptics - switch T470s to RMI4 by default + - Input: synaptics - enable SMBus on ThinkPad L470 + - Input: synaptics - remove the LEN0049 dmi id from topbuttonpad list + - ALSA: usb-audio: Fix UAC2/3 effect unit parsing + - ALSA: hda/realtek - Add more codec supported Headset Button + - ALSA: hda/realtek - Fix silent output on MSI-GL73 + - ALSA: usb-audio: Apply sample rate quirk for Audioengine D1 + - ACPI: EC: Fix flushing of pending work + - ACPI: PM: s2idle: Avoid possible race related to the EC GPE + - ACPICA: Introduce acpi_any_gpe_status_set() + - ACPI: PM: s2idle: Prevent spurious SCIs from waking up the system + - ALSA: usb-audio: sound: usb: usb true/false for bool return type + - ALSA: usb-audio: Add clock validity quirk for Denon MC7000/MCX8000 + - ext4: don't assume that mmp_nodename/bdevname have NUL + - ext4: fix support for inode sizes > 1024 bytes + - ext4: fix checksum errors with indexed dirs + - ext4: add cond_resched() to ext4_protect_reserved_inode + - ext4: improve explanation of a mount failure caused by a misconfigured + kernel + - Btrfs: fix race between using extent maps and merging them + - btrfs: ref-verify: fix memory leaks + - btrfs: print message when tree-log replay starts + - btrfs: log message when rw remount is attempted with unclean tree-log + - ARM: npcm: Bring back GPIOLIB support + - gpio: xilinx: Fix bug where the wrong GPIO register is written to + - arm64: ssbs: Fix context-switch when SSBS is present on all CPUs + - xprtrdma: Fix DMA scatter-gather list mapping imbalance + - cifs: make sure we do not overflow the max EA buffer size + - EDAC/sysfs: Remove csrow objects on errors + - EDAC/mc: Fix use-after-free and memleaks during device removal + - KVM: nVMX: Use correct root level for nested EPT shadow page tables + - perf/x86/amd: Add missing L2 misses event spec to AMD Family 17h's event map + - s390/pkey: fix missing length of protected key on return + - s390/uv: Fix handling of length extensions + - drm/vgem: Close use-after-free race in vgem_gem_create + - drm/panfrost: Make sure the shrinker does not reclaim referenced BOs + - bus: moxtet: fix potential stack buffer overflow + - nvme: fix the parameter order for nvme_get_log in nvme_get_fw_slot_info + - drivers: ipmi: fix off-by-one bounds check that leads to a out-of-bounds + write + - IB/mlx5: Return failure when rts2rts_qp_counters_set_id is not supported + - IB/hfi1: Acquire lock to release TID entries when user file is closed + - IB/hfi1: Close window for pq and request coliding + - IB/rdmavt: Reset all QPs when the device is shut down + - IB/umad: Fix kernel crash while unloading ib_umad + - RDMA/core: Fix invalid memory access in spec_filter_size + - RDMA/iw_cxgb4: initiate CLOSE when entering TERM + - RDMA/hfi1: Fix memory leak in _dev_comp_vect_mappings_create + - RDMA/rxe: Fix soft lockup problem due to using tasklets in softirq + - RDMA/core: Fix protection fault in get_pkey_idx_qp_list + - s390/time: Fix clk type in get_tod_clock + - sched/uclamp: Reject negative values in cpu_uclamp_write() + - spmi: pmic-arb: Set lockdep class for hierarchical irq domains + - perf/x86/intel: Fix inaccurate period in context switch for auto-reload + - hwmon: (pmbus/ltc2978) Fix PMBus polling of MFR_COMMON definitions. + - mac80211: fix quiet mode activation in action frames + - cifs: fix mount option display for sec=krb5i + - arm64: dts: fast models: Fix FVP PCI interrupt-map property + - KVM: x86: Mask off reserved bit from #DB exception payload + - perf stat: Don't report a null stalled cycles per insn metric + - NFSv4.1 make cachethis=no for writes + - Revert "drm/sun4i: drv: Allow framebuffer modifiers in mode config" + - jbd2: move the clearing of b_modified flag to the journal_unmap_buffer() + - jbd2: do not clear the BH_Mapped flag when forgetting a metadata buffer + - ext4: choose hardlimit when softlimit is larger than hardlimit in + ext4_statfs_project() + - KVM: x86/mmu: Fix struct guest_walker arrays for 5-level paging + - gpio: add gpiod_toggle_active_low() + - mmc: core: Rework wp-gpio handling + - Linux 5.4.21 + * Fix AMD Stoney Ridge screen flickering under 4K resolution (LP: #1864005) + - iommu/amd: Disable IOMMU on Stoney Ridge systems + * Focal Fossa (20.04) feature request - Enable CONFIG_X86_UV (LP: #1863810) + - [Config] CONFIG_X86_UV=y + * [UBUNTU 20.04] Enable proper reset/recovery of s390x/pci functions in error + state (LP: #1863768) + - s390/pci: Recover handle in clp_set_pci_fn() + - s390/pci: Fix possible deadlock in recover_store() + * [20.04 FEAT] Enhanced handling of secure keys and protected keys + (LP: #1853303) + - s390/zcrypt: enable card/domain autoselect on ep11 cprbs + - s390/zcrypt: ep11 structs rework, export zcrypt_send_ep11_cprb + - s390/zcrypt: add new low level ep11 functions support file + - s390/zcrypt: extend EP11 card and queue sysfs attributes + - s390/pkey/zcrypt: Support EP11 AES secure keys + * [20.04 FEAT] paes self test (LP: #1854948) + - s390/pkey: use memdup_user() to simplify code + - s390/pkey: Add support for key blob with clear key value + - s390/crypto: Rework on paes implementation + - s390/crypto: enable clear key values for paes ciphers + - crypto/testmgr: enable selftests for paes-s390 ciphers + * Sometimes can't adjust brightness on Dell AIO (LP: #1862885) + - SAUCE: platform/x86: dell-uart-backlight: increase retry times + * change the ASoC card name and card longname to meet the requirement of alsa- + lib-1.2.1 (Focal) (LP: #1862712) + - ASoC: improve the DMI long card code in asoc-core + - ASoC: DMI long name - avoid to add board name if matches with product name + - ASoC: intel - fix the card names + * Support Headset Mic on HP cPC (LP: #1862313) + - ALSA: hda/realtek - Add Headset Mic supported for HP cPC + - ALSA: hda/realtek - Fixed one of HP ALC671 platform Headset Mic supported + * [hns3-0205]sync mainline kernel 5.5rc7 hns3 patchset into ubuntu HWE kernel + branch (LP: #1861972) + - net: hns3: replace snprintf with scnprintf in hns3_dbg_cmd_read + - net: hns3: replace snprintf with scnprintf in hns3_update_strings + - net: hns3: limit the error logging in the hns3_clean_tx_ring() + - net: hns3: do not reuse pfmemalloc pages + - net: hns3: set VF's default reset_type to HNAE3_NONE_RESET + - net: hns3: move duplicated macro definition into header + - net: hns3: refine the input parameter 'size' for snprintf() + - net: hns3: rewrite a log in hclge_put_vector() + - net: hns3: delete unnecessary blank line and space for cleanup + - net: hns3: remove redundant print on ENOMEM + * [acc-0205]sync mainline kernel 5.5rc6 acc patchset into ubuntu HWE kernel + branch (LP: #1861976) + - crypto: hisilicon/sec2 - Use atomics instead of __sync + - crypto: hisilicon - still no need to check return value of debugfs_create + functions + - crypto: hisilicon - Update debugfs usage of SEC V2 + - crypto: hisilicon - fix print/comment of SEC V2 + - crypto: hisilicon - Update some names on SEC V2 + - crypto: hisilicon - Update QP resources of SEC V2 + - crypto: hisilicon - Adjust some inner logic + - crypto: hisilicon - Add callback error check + - crypto: hisilicon - Add branch prediction macro + - crypto: hisilicon - redefine skcipher initiation + - crypto: hisilicon - Add aead support on SEC2 + - crypto: hisilicon - Bugfixed tfm leak + - crypto: hisilicon - Fixed some tiny bugs of HPRE + - crypto: hisilicon - adjust hpre_crt_para_get + - crypto: hisilicon - add branch prediction macro + - crypto: hisilicon - fix spelling mistake "disgest" -> "digest" + * [spi-0115]spi: dw: use "smp_mb()" to avoid sending spi data error + (LP: #1859744) + - spi: dw: use "smp_mb()" to avoid sending spi data error + * [tpm-0115]EFI/stub: tpm: enable tpm eventlog function for ARM64 platform + (LP: #1859743) + - efi: libstub/tpm: enable tpm eventlog function for ARM platforms + * Restrict xmon to read-only-mode if kernel is locked down (LP: #1863562) + - powerpc/xmon: Restrict when kernel is locked down + * [CML-H] Add intel_thermal_pch driver support Comet Lake -H (LP: #1853219) + - thermal: intel: intel_pch_thermal: Add Comet Lake (CML) platform support + * Root can lift kernel lockdown via USB/IP (LP: #1861238) + - Revert "UBUNTU: SAUCE: (lockdown) Add a SysRq option to lift kernel + lockdown" + * Dell XPS 13 (7390) Display Flickering - 19.10 (LP: #1849947) + - SAUCE: drm/i915: Disable PSR by default on all platforms + * Focal update: v5.4.20 upstream stable release (LP: #1863589) + - ASoC: pcm: update FE/BE trigger order based on the command + - hv_sock: Remove the accept port restriction + - IB/mlx4: Fix memory leak in add_gid error flow + - IB/srp: Never use immediate data if it is disabled by a user + - IB/mlx4: Fix leak in id_map_find_del + - RDMA/netlink: Do not always generate an ACK for some netlink operations + - RDMA/i40iw: fix a potential NULL pointer dereference + - RDMA/core: Fix locking in ib_uverbs_event_read + - RDMA/uverbs: Verify MR access flags + - RDMA/cma: Fix unbalanced cm_id reference count during address resolve + - RDMA/umem: Fix ib_umem_find_best_pgsz() + - scsi: ufs: Fix ufshcd_probe_hba() reture value in case + ufshcd_scsi_add_wlus() fails + - PCI/IOV: Fix memory leak in pci_iov_add_virtfn() + - ath10k: pci: Only dump ATH10K_MEM_REGION_TYPE_IOREG when safe + - PCI/switchtec: Use dma_set_mask_and_coherent() + - PCI/switchtec: Fix vep_vector_number ioread width + - PCI: tegra: Fix afi_pex2_ctrl reg offset for Tegra30 + - PCI: Don't disable bridge BARs when assigning bus resources + - PCI/AER: Initialize aer_fifo + - iwlwifi: mvm: avoid use after free for pmsr request + - bpftool: Don't crash on missing xlated program instructions + - bpf, sockmap: Don't sleep while holding RCU lock on tear-down + - bpf, sockhash: Synchronize_rcu before free'ing map + - selftests/bpf: Test freeing sockmap/sockhash with a socket in it + - bpf: Improve bucket_log calculation logic + - bpf, sockmap: Check update requirements after locking + - nfs: NFS_SWAP should depend on SWAP + - NFS: Revalidate the file size on a fatal write error + - NFS/pnfs: Fix pnfs_generic_prepare_to_resend_writes() + - NFS: Fix fix of show_nfs_errors + - NFSv4: pnfs_roc() must use cred_fscmp() to compare creds + - NFSv4: try lease recovery on NFS4ERR_EXPIRED + - NFSv4.0: nfs4_do_fsinfo() should not do implicit lease renewals + - x86/boot: Handle malformed SRAT tables during early ACPI parsing + - rtc: hym8563: Return -EINVAL if the time is known to be invalid + - rtc: cmos: Stop using shared IRQ + - watchdog: qcom: Use platform_get_irq_optional() for bark irq + - ARC: [plat-axs10x]: Add missing multicast filter number to GMAC node + - platform/x86: intel_mid_powerbtn: Take a copy of ddata + - arm64: dts: qcom: msm8998: Fix tcsr syscon size + - arm64: dts: uDPU: fix broken ethernet + - ARM: dts: at91: Reenable UART TX pull-ups + - ARM: dts: am43xx: add support for clkout1 clock + - arm64: dts: renesas: r8a77990: ebisu: Remove clkout-lr-synchronous from + sound + - arm64: dts: marvell: clearfog-gt-8k: fix switch cpu port node + - ARM: dts: meson8: use the actual frequency for the GPU's 182.1MHz OPP + - ARM: dts: meson8b: use the actual frequency for the GPU's 364MHz OPP + - ARM: dts: at91: sama5d3: fix maximum peripheral clock rates + - ARM: dts: at91: sama5d3: define clock rate range for tcb1 + - tools/power/acpi: fix compilation error + - soc: qcom: rpmhpd: Set 'active_only' for active only power domains + - Revert "powerpc/pseries/iommu: Don't use dma_iommu_ops on secure guests" + - powerpc/ptdump: Fix W+X verification call in mark_rodata_ro() + - powerpc/ptdump: Only enable PPC_CHECK_WX with STRICT_KERNEL_RWX + - powerpc/papr_scm: Fix leaking 'bus_desc.provider_name' in some paths + - powerpc/pseries/vio: Fix iommu_table use-after-free refcount warning + - powerpc/pseries: Allow not having ibm, hypertas-functions::hcall-multi-tce + for DDW + - iommu/arm-smmu-v3: Populate VMID field for CMDQ_OP_TLBI_NH_VA + - ARM: at91: pm: use SAM9X60 PMC's compatible + - ARM: at91: pm: use of_device_id array to find the proper shdwc node + - KVM: arm/arm64: vgic-its: Fix restoration of unmapped collections + - ARM: 8949/1: mm: mark free_memmap as __init + - sched/uclamp: Fix a bug in propagating uclamp value in new cgroups + - arm64: cpufeature: Fix the type of no FP/SIMD capability + - arm64: cpufeature: Set the FP/SIMD compat HWCAP bits properly + - arm64: ptrace: nofpsimd: Fail FP/SIMD regset operations + - KVM: arm/arm64: Fix young bit from mmu notifier + - KVM: arm: Fix DFSR setting for non-LPAE aarch32 guests + - KVM: arm: Make inject_abt32() inject an external abort instead + - KVM: arm64: pmu: Don't increment SW_INCR if PMCR.E is unset + - KVM: arm64: pmu: Fix chained SW_INCR counters + - KVM: arm64: Treat emulated TVAL TimerValue as a signed 32-bit integer + - arm64: nofpsmid: Handle TIF_FOREIGN_FPSTATE flag cleanly + - mtd: onenand_base: Adjust indentation in onenand_read_ops_nolock + - mtd: sharpslpart: Fix unsigned comparison to zero + - crypto: testmgr - don't try to decrypt uninitialized buffers + - crypto: artpec6 - return correct error code for failed setkey() + - crypto: atmel-sha - fix error handling when setting hmac key + - crypto: caam/qi2 - fix typo in algorithm's driver name + - drivers: watchdog: stm32_iwdg: set WDOG_HW_RUNNING at probe + - media: i2c: adv748x: Fix unsafe macros + - dt-bindings: iio: adc: ad7606: Fix wrong maxItems value + - bcache: avoid unnecessary btree nodes flushing in btree_flush_write() + - selinux: revert "stop passing MAY_NOT_BLOCK to the AVC upon follow_link" + - selinux: fix regression introduced by move_mount(2) syscall + - pinctrl: sh-pfc: r8a77965: Fix DU_DOTCLKIN3 drive/bias control + - pinctrl: sh-pfc: r8a7778: Fix duplicate SDSELF_B and SD1_CLK_B + - regmap: fix writes to non incrementing registers + - mfd: max77650: Select REGMAP_IRQ in Kconfig + - clk: meson: g12a: fix missing uart2 in regmap table + - dmaengine: axi-dmac: add a check for devm_regmap_init_mmio + - mwifiex: Fix possible buffer overflows in mwifiex_ret_wmm_get_status() + - mwifiex: Fix possible buffer overflows in mwifiex_cmd_append_vsie_tlv() + - libertas: don't exit from lbs_ibss_join_existing() with RCU read lock held + - libertas: make lbs_ibss_join_existing() return error code on rates overflow + - selinux: fall back to ref-walk if audit is required + - Linux 5.4.20 + * Focal update: v5.4.19 upstream stable release (LP: #1863588) + - sparc32: fix struct ipc64_perm type definition + - bnxt_en: Move devlink_register before registering netdev + - cls_rsvp: fix rsvp_policy + - gtp: use __GFP_NOWARN to avoid memalloc warning + - l2tp: Allow duplicate session creation with UDP + - net: hsr: fix possible NULL deref in hsr_handle_frame() + - net_sched: fix an OOB access in cls_tcindex + - net: stmmac: Delete txtimer in suspend() + - bnxt_en: Fix TC queue mapping. + - rxrpc: Fix use-after-free in rxrpc_put_local() + - rxrpc: Fix insufficient receive notification generation + - rxrpc: Fix missing active use pinning of rxrpc_local object + - rxrpc: Fix NULL pointer deref due to call->conn being cleared on disconnect + - tcp: clear tp->total_retrans in tcp_disconnect() + - tcp: clear tp->delivered in tcp_disconnect() + - tcp: clear tp->data_segs{in|out} in tcp_disconnect() + - tcp: clear tp->segs_{in|out} in tcp_disconnect() + - ionic: fix rxq comp packet type mask + - MAINTAINERS: correct entries for ISDN/mISDN section + - netdevsim: fix stack-out-of-bounds in nsim_dev_debugfs_init() + - bnxt_en: Fix logic that disables Bus Master during firmware reset. + - media: uvcvideo: Avoid cyclic entity chains due to malformed USB descriptors + - mfd: dln2: More sanity checking for endpoints + - netfilter: ipset: fix suspicious RCU usage in find_set_and_id + - ipc/msg.c: consolidate all xxxctl_down() functions + - tracing/kprobes: Have uname use __get_str() in print_fmt + - tracing: Fix sched switch start/stop refcount racy updates + - rcu: Use *_ONCE() to protect lockless ->expmask accesses + - rcu: Avoid data-race in rcu_gp_fqs_check_wake() + - srcu: Apply *_ONCE() to ->srcu_last_gp_end + - rcu: Use READ_ONCE() for ->expmask in rcu_read_unlock_special() + - nvmet: Fix error print message at nvmet_install_queue function + - nvmet: Fix controller use after free + - Bluetooth: btusb: fix memory leak on fw + - Bluetooth: btusb: Disable runtime suspend on Realtek devices + - brcmfmac: Fix memory leak in brcmf_usbdev_qinit + - usb: dwc3: gadget: Check END_TRANSFER completion + - usb: dwc3: gadget: Delay starting transfer + - usb: typec: tcpci: mask event interrupts when remove driver + - objtool: Silence build output + - usb: gadget: f_fs: set req->num_sgs as 0 for non-sg transfer + - usb: gadget: legacy: set max_speed to super-speed + - usb: gadget: f_ncm: Use atomic_t to track in-flight request + - usb: gadget: f_ecm: Use atomic_t to track in-flight request + - ALSA: usb-audio: Fix endianess in descriptor validation + - ALSA: usb-audio: Annotate endianess in Scarlett gen2 quirk + - ALSA: dummy: Fix PCM format loop in proc output + - memcg: fix a crash in wb_workfn when a device disappears + - mm/sparse.c: reset section's mem_map when fully deactivated + - mmc: sdhci-pci: Make function amd_sdhci_reset static + - utimes: Clamp the timestamps in notify_change() + - mm/memory_hotplug: fix remove_memory() lockdep splat + - mm: thp: don't need care deferred split queue in memcg charge move path + - mm: move_pages: report the number of non-attempted pages + - media/v4l2-core: set pages dirty upon releasing DMA buffers + - media: v4l2-core: compat: ignore native command codes + - media: v4l2-rect.h: fix v4l2_rect_map_inside() top/left adjustments + - lib/test_kasan.c: fix memory leak in kmalloc_oob_krealloc_more() + - irqdomain: Fix a memory leak in irq_domain_push_irq() + - x86/cpu: Update cached HLE state on write to TSX_CTRL_CPUID_CLEAR + - platform/x86: intel_scu_ipc: Fix interrupt support + - ALSA: hda: Apply aligned MMIO access only conditionally + - ALSA: hda: Add Clevo W65_67SB the power_save blacklist + - ALSA: hda: Add JasperLake PCI ID and codec vid + - arm64: acpi: fix DAIF manipulation with pNMI + - KVM: arm64: Correct PSTATE on exception entry + - KVM: arm/arm64: Correct CPSR on exception entry + - KVM: arm/arm64: Correct AArch32 SPSR on exception entry + - KVM: arm64: Only sign-extend MMIO up to register width + - MIPS: syscalls: fix indentation of the 'SYSNR' message + - MIPS: fix indentation of the 'RELOCS' message + - MIPS: boot: fix typo in 'vmlinux.lzma.its' target + - s390/mm: fix dynamic pagetable upgrade for hugetlbfs + - powerpc/mmu_gather: enable RCU_TABLE_FREE even for !SMP case + - powerpc/ptdump: Fix W+X verification + - powerpc/xmon: don't access ASDR in VMs + - powerpc/pseries: Advance pfn if section is not present in lmb_is_removable() + - powerpc/32s: Fix bad_kuap_fault() + - powerpc/32s: Fix CPU wake-up from sleep mode + - tracing: Fix now invalid var_ref_vals assumption in trace action + - PCI: tegra: Fix return value check of pm_runtime_get_sync() + - PCI: keystone: Fix outbound region mapping + - PCI: keystone: Fix link training retries initiation + - PCI: keystone: Fix error handling when "num-viewport" DT property is not + populated + - mmc: spi: Toggle SPI polarity, do not hardcode it + - ACPI: video: Do not export a non working backlight interface on MSI MS-7721 + boards + - ACPI / battery: Deal with design or full capacity being reported as -1 + - ACPI / battery: Use design-cap for capacity calculations if full-cap is not + available + - ACPI / battery: Deal better with neither design nor full capacity not being + reported + - alarmtimer: Unregister wakeup source when module get fails + - fscrypt: don't print name of busy file when removing key + - ubifs: don't trigger assertion on invalid no-key filename + - ubifs: Fix wrong memory allocation + - ubifs: Fix FS_IOC_SETFLAGS unexpectedly clearing encrypt flag + - ubifs: Fix deadlock in concurrent bulk-read and writepage + - mmc: sdhci-of-at91: fix memleak on clk_get failure + - ASoC: SOF: core: free trace on errors + - hv_balloon: Balloon up according to request page number + - mfd: axp20x: Mark AXP20X_VBUS_IPSOUT_MGMT as volatile + - nvmem: core: fix memory abort in cleanup path + - crypto: api - Check spawn->alg under lock in crypto_drop_spawn + - crypto: ccree - fix backlog memory leak + - crypto: ccree - fix AEAD decrypt auth fail + - crypto: ccree - fix pm wrongful error reporting + - crypto: ccree - fix FDE descriptor sequence + - crypto: ccree - fix PM race condition + - padata: Remove broken queue flushing + - fs: allow deduplication of eof block into the end of the destination file + - scripts/find-unused-docs: Fix massive false positives + - erofs: fix out-of-bound read for shifted uncompressed block + - scsi: megaraid_sas: Do not initiate OCR if controller is not in ready state + - scsi: qla2xxx: Fix mtcp dump collection failure + - cpupower: Revert library ABI changes from commit ae2917093fb60bdc1ed3e + - power: supply: axp20x_ac_power: Fix reporting online status + - power: supply: ltc2941-battery-gauge: fix use-after-free + - ovl: fix wrong WARN_ON() in ovl_cache_update_ino() + - ovl: fix lseek overflow on 32bit + - f2fs: choose hardlimit when softlimit is larger than hardlimit in + f2fs_statfs_project() + - f2fs: fix miscounted block limit in f2fs_statfs_project() + - f2fs: code cleanup for f2fs_statfs_project() + - f2fs: fix dcache lookup of !casefolded directories + - f2fs: fix race conditions in ->d_compare() and ->d_hash() + - PM: core: Fix handling of devices deleted during system-wide resume + - cpufreq: Avoid creating excessively large stack frames + - of: Add OF_DMA_DEFAULT_COHERENT & select it on powerpc + - ARM: dma-api: fix max_pfn off-by-one error in __dma_supported() + - dm zoned: support zone sizes smaller than 128MiB + - dm space map common: fix to ensure new block isn't already in use + - dm writecache: fix incorrect flush sequence when doing SSD mode commit + - dm crypt: fix GFP flags passed to skcipher_request_alloc() + - dm crypt: fix benbi IV constructor crash if used in authenticated mode + - dm thin metadata: use pool locking at end of dm_pool_metadata_close + - scsi: qla2xxx: Fix stuck login session using prli_pend_timer + - ASoC: SOF: Introduce state machine for FW boot + - ASoC: SOF: core: release resources on errors in probe_continue + - tracing: Annotate ftrace_graph_hash pointer with __rcu + - tracing: Annotate ftrace_graph_notrace_hash pointer with __rcu + - ftrace: Add comment to why rcu_dereference_sched() is open coded + - ftrace: Protect ftrace_graph_hash with ftrace_sync + - crypto: pcrypt - Avoid deadlock by using per-instance padata queues + - btrfs: fix improper setting of scanned for range cyclic write cache pages + - btrfs: Handle another split brain scenario with metadata uuid feature + - riscv, bpf: Fix broken BPF tail calls + - selftests/bpf: Fix perf_buffer test on systems w/ offline CPUs + - bpf, devmap: Pass lockdep expression to RCU lists + - libbpf: Fix realloc usage in bpf_core_find_cands + - tc-testing: fix eBPF tests failure on linux fresh clones + - samples/bpf: Don't try to remove user's homedir on clean + - samples/bpf: Xdp_redirect_cpu fix missing tracepoint attach + - selftests/bpf: Fix test_attach_probe + - selftests/bpf: Skip perf hw events test if the setup disabled it + - selftests: bpf: Use a temporary file in test_sockmap + - selftests: bpf: Ignore FIN packets for reuseport tests + - crypto: api - fix unexpectedly getting generic implementation + - crypto: hisilicon - Use the offset fields in sqe to avoid need to split + scatterlists + - crypto: ccp - set max RSA modulus size for v3 platform devices as well + - crypto: arm64/ghash-neon - bump priority to 150 + - crypto: pcrypt - Do not clear MAY_SLEEP flag in original request + - crypto: atmel-aes - Fix counter overflow in CTR mode + - crypto: api - Fix race condition in crypto_spawn_alg + - crypto: picoxcell - adjust the position of tasklet_init and fix missed + tasklet_kill + - powerpc/futex: Fix incorrect user access blocking + - scsi: qla2xxx: Fix unbound NVME response length + - NFS: Fix memory leaks and corruption in readdir + - NFS: Directory page cache pages need to be locked when read + - nfsd: fix filecache lookup + - jbd2_seq_info_next should increase position index + - ext4: fix deadlock allocating crypto bounce page from mempool + - ext4: fix race conditions in ->d_compare() and ->d_hash() + - Btrfs: fix missing hole after hole punching and fsync when using NO_HOLES + - Btrfs: make deduplication with range including the last block work + - Btrfs: fix infinite loop during fsync after rename operations + - btrfs: set trans->drity in btrfs_commit_transaction + - btrfs: drop log root for dropped roots + - Btrfs: fix race between adding and putting tree mod seq elements and nodes + - btrfs: flush write bio if we loop in extent_write_cache_pages + - btrfs: Correctly handle empty trees in find_first_clear_extent_bit + - ARM: tegra: Enable PLLP bypass during Tegra124 LP1 + - iwlwifi: don't throw error when trying to remove IGTK + - mwifiex: fix unbalanced locking in mwifiex_process_country_ie() + - sunrpc: expiry_time should be seconds not timeval + - gfs2: fix gfs2_find_jhead that returns uninitialized jhead with seq 0 + - gfs2: move setting current->backing_dev_info + - gfs2: fix O_SYNC write handling + - drm: atmel-hlcdc: use double rate for pixel clock only if supported + - drm: atmel-hlcdc: enable clock before configuring timing engine + - drm: atmel-hlcdc: prefer a lower pixel-clock than requested + - drm/rect: Avoid division by zero + - media: iguanair: fix endpoint sanity check + - media: rc: ensure lirc is initialized before registering input device + - tools/kvm_stat: Fix kvm_exit filter name + - xen/balloon: Support xend-based toolstack take two + - watchdog: fix UAF in reboot notifier handling in watchdog core code + - bcache: add readahead cache policy options via sysfs interface + - eventfd: track eventfd_signal() recursion depth + - aio: prevent potential eventfd recursion on poll + - KVM: x86: Refactor picdev_write() to prevent Spectre-v1/L1TF attacks + - KVM: x86: Refactor prefix decoding to prevent Spectre-v1/L1TF attacks + - KVM: x86: Protect pmu_intel.c from Spectre-v1/L1TF attacks + - KVM: x86: Protect DR-based index computations from Spectre-v1/L1TF attacks + - KVM: x86: Protect kvm_lapic_reg_write() from Spectre-v1/L1TF attacks + - KVM: x86: Protect kvm_hv_msr_[get|set]_crash_data() from Spectre-v1/L1TF + attacks + - KVM: x86: Protect ioapic_write_indirect() from Spectre-v1/L1TF attacks + - KVM: x86: Protect MSR-based index computations in pmu.h from Spectre-v1/L1TF + attacks + - KVM: x86: Protect ioapic_read_indirect() from Spectre-v1/L1TF attacks + - KVM: x86: Protect MSR-based index computations from Spectre-v1/L1TF attacks + in x86.c + - KVM: x86: Protect x86_decode_insn from Spectre-v1/L1TF attacks + - KVM: x86: Protect MSR-based index computations in fixed_msr_to_seg_unit() + from Spectre-v1/L1TF attacks + - KVM: x86: Fix potential put_fpu() w/o load_fpu() on MPX platform + - KVM: PPC: Book3S HV: Uninit vCPU if vcore creation fails + - KVM: PPC: Book3S PR: Free shared page if mmu initialization fails + - kvm/svm: PKU not currently supported + - KVM: VMX: Add non-canonical check on writes to RTIT address MSRs + - KVM: x86: Don't let userspace set host-reserved cr4 bits + - KVM: x86: Free wbinvd_dirty_mask if vCPU creation fails + - KVM: x86: Handle TIF_NEED_FPU_LOAD in kvm_{load,put}_guest_fpu() + - KVM: x86: Ensure guest's FPU state is loaded when accessing for emulation + - KVM: x86: Revert "KVM: X86: Fix fpu state crash in kvm guest" + - KVM: s390: do not clobber registers during guest reset/store status + - ocfs2: fix oops when writing cloned file + - mm/page_alloc.c: fix uninitialized memmaps on a partially populated last + section + - arm64: dts: qcom: qcs404-evb: Set vdd_apc regulator in high power mode + - mm/mmu_gather: invalidate TLB correctly on batch allocation failure and + flush + - clk: tegra: Mark fuse clock as critical + - drm/amd/dm/mst: Ignore payload update failures + - virtio-balloon: initialize all vq callbacks + - virtio-pci: check name when counting MSI-X vectors + - fix up iter on short count in fuse_direct_io() + - broken ping to ipv6 linklocal addresses on debian buster + - percpu: Separate decrypted varaibles anytime encryption can be enabled + - ASoC: meson: axg-fifo: fix fifo threshold setup + - scsi: qla2xxx: Fix the endianness of the qla82xx_get_fw_size() return type + - scsi: csiostor: Adjust indentation in csio_device_reset + - scsi: qla4xxx: Adjust indentation in qla4xxx_mem_free + - scsi: ufs: Recheck bkops level if bkops is disabled + - mtd: spi-nor: Split mt25qu512a (n25q512a) entry into two + - phy: qualcomm: Adjust indentation in read_poll_timeout + - ext2: Adjust indentation in ext2_fill_super + - powerpc/44x: Adjust indentation in ibm4xx_denali_fixup_memsize + - drm: msm: mdp4: Adjust indentation in mdp4_dsi_encoder_enable + - NFC: pn544: Adjust indentation in pn544_hci_check_presence + - ppp: Adjust indentation into ppp_async_input + - net: smc911x: Adjust indentation in smc911x_phy_configure + - net: tulip: Adjust indentation in {dmfe, uli526x}_init_module + - IB/mlx5: Fix outstanding_pi index for GSI qps + - IB/core: Fix ODP get user pages flow + - nfsd: fix delay timer on 32-bit architectures + - nfsd: fix jiffies/time_t mixup in LRU list + - nfsd: Return the correct number of bytes written to the file + - virtio-balloon: Fix memory leak when unloading while hinting is in progress + - virtio_balloon: Fix memory leaks on errors in virtballoon_probe() + - ubi: fastmap: Fix inverted logic in seen selfcheck + - ubi: Fix an error pointer dereference in error handling code + - ubifs: Fix memory leak from c->sup_node + - regulator: core: Add regulator_is_equal() helper + - ASoC: sgtl5000: Fix VDDA and VDDIO comparison + - bonding/alb: properly access headers in bond_alb_xmit() + - devlink: report 0 after hitting end in region read + - dpaa_eth: support all modes with rate adapting PHYs + - net: dsa: b53: Always use dev->vlan_enabled in b53_configure_vlan() + - net: dsa: bcm_sf2: Only 7278 supports 2Gb/sec IMP port + - net: dsa: microchip: enable module autoprobe + - net: mvneta: move rx_dropped and rx_errors in per-cpu stats + - net_sched: fix a resource leak in tcindex_set_parms() + - net: stmmac: fix a possible endless loop + - net: systemport: Avoid RBUF stuck in Wake-on-LAN mode + - net/mlx5: IPsec, Fix esp modify function attribute + - net/mlx5: IPsec, fix memory leak at mlx5_fpga_ipsec_delete_sa_ctx + - net: macb: Remove unnecessary alignment check for TSO + - net: macb: Limit maximum GEM TX length in TSO + - taprio: Fix enabling offload with wrong number of traffic classes + - taprio: Fix still allowing changing the flags during runtime + - taprio: Add missing policy validation for flags + - taprio: Use taprio_reset_tc() to reset Traffic Classes configuration + - taprio: Fix dropping packets when using taprio + ETF offloading + - ipv6/addrconf: fix potential NULL deref in inet6_set_link_af() + - qed: Fix timestamping issue for L2 unicast ptp packets. + - drop_monitor: Do not cancel uninitialized work item + - net/mlx5: Fix deadlock in fs_core + - net/mlx5: Deprecate usage of generic TLS HW capability bit + - ASoC: Intel: skl_hda_dsp_common: Fix global-out-of-bounds bug + - mfd: da9062: Fix watchdog compatible string + - mfd: rn5t618: Mark ADC control register volatile + - mfd: bd70528: Fix hour register mask + - x86/timer: Don't skip PIT setup when APIC is disabled or in legacy mode + - btrfs: use bool argument in free_root_pointers() + - btrfs: free block groups after free'ing fs trees + - drm/dp_mst: Remove VCPI while disabling topology mgr + - KVM: x86/mmu: Apply max PA check for MMIO sptes to 32-bit KVM + - KVM: x86: use CPUID to locate host page table reserved bits + - KVM: x86: Use gpa_t for cr2/gpa to fix TDP support on 32-bit KVM + - KVM: x86: fix overlap between SPTE_MMIO_MASK and generation + - KVM: nVMX: vmread should not set rflags to specify success in case of #PF + - KVM: Use vcpu-specific gva->hva translation when querying host page size + - KVM: Play nice with read-only memslots when querying host page size + - cifs: fail i/o on soft mounts if sessionsetup errors out + - x86/apic/msi: Plug non-maskable MSI affinity race + - clocksource: Prevent double add_timer_on() for watchdog_timer + - perf/core: Fix mlock accounting in perf_mmap() + - rxrpc: Fix service call disconnection + - regulator fix for "regulator: core: Add regulator_is_equal() helper" + - powerpc/kuap: Fix set direction in allow/prevent_user_access() + - Linux 5.4.19 + - [Config] updateconfigs following v5.4.19 stable update + * 5.4.0-11 crash on cryptsetup open (LP: #1860231) // Focal update: v5.4.19 + upstream stable release (LP: #1863588) + - dm: fix potential for q->make_request_fn NULL pointer + * Miscellaneous Ubuntu changes + - update dkms package versions + - [debian] ignore missing wireguard module + - debian: remove snapdragon config, rules and flavour + - [Config] updateconfigs following snapdragon removal + - remove snapdragon abi files + + -- Seth Forshee Fri, 21 Feb 2020 08:52:59 -0600 + +linux-azure (5.4.0-1002.2) focal; urgency=medium + + * Change package name to linux-azure. + + -- Seth Forshee Fri, 21 Feb 2020 08:31:29 -0600 + +linux-azure-5.4 (5.4.0-1002.2) focal; urgency=medium + + * focal/linux-azure-5.4: 5.4.0-1002.2 -proposed tracker (LP: #1862250) + + * installing linux-modules-nvidia does not remove nvidia-dkms, and the kernel + prioritizes the wrong version of the module from disk (LP: #1856414) + - Revert "UBUNTU: [Packaging] dkms -- add Provides: specifiers" + + * Miscellaneous Ubuntu changes + - [Debian] Add upstream version to packagenames in getabis + + [ Ubuntu: 5.4.0-14.17 ] + + * focal/linux-5.4: 5.4.0-14.17 -proposed tracker (LP: #1862255) + * Packaging resync (LP: #1786013) + - [Packaging] update helper scripts + * Boot log is swamped with "debugfs: Directory 'imc' with parent 'powerpc' + already present" messages on kernel 5.4 (LP: #1861379) + - powerpc/powernv: Avoid re-registration of imc debugfs directory + * CVE-2019-3016 + - SAUCE: x86/kvm: Be careful not to clear KVM_VCPU_FLUSH_TLB bit + - SAUCE: x86/kvm: Introduce kvm_(un)map_gfn() + - SAUCE: x86/kvm: Cache gfn to pfn translation + - SAUCE: x86/KVM: Make sure KVM_VCPU_FLUSH_TLB flag is not missed + - SAUCE: x86/KVM: Clean up host's steal time structure + * installing linux-modules-nvidia does not remove nvidia-dkms, and the kernel + prioritizes the wrong version of the module from disk (LP: #1856414) + - Revert "UBUNTU: [Packaging] dkms -- switch basic provides to *-modules" + - Revert "UBUNTU: [Packaging] dkms -- add Provides: specifiers for existing + zfs/nvidia/vbox" + - Revert "UBUNTU: [packaging] dkms-build -- include versioned provides" + - [Packaging] wireguard -- drop provides + * Focal update: v5.4.18 upstream stable release (LP: #1862203) + - vfs: fix do_last() regression + - cifs: fix soft mounts hanging in the reconnect code + - x86/resctrl: Fix a deadlock due to inaccurate reference + - x86/resctrl: Fix use-after-free when deleting resource groups + - x86/resctrl: Fix use-after-free due to inaccurate refcount of rdtgroup + - e1000e: Drop unnecessary __E1000_DOWN bit twiddling + - e1000e: Revert "e1000e: Make watchdog use delayed work" + - gfs2: Another gfs2_find_jhead fix + - perf c2c: Fix return type for histogram sorting comparision functions + - PM / devfreq: Add new name attribute for sysfs + - tools lib: Fix builds when glibc contains strlcpy() + - arm64: kbuild: remove compressed images on 'make ARCH=arm64 (dist)clean' + - mm/mempolicy.c: fix out of bounds write in mpol_parse_str() + - reiserfs: Fix memory leak of journal device string + - media: digitv: don't continue if remote control state can't be read + - media: af9005: uninitialized variable printked + - media: vp7045: do not read uninitialized values if usb transfer fails + - media: gspca: zero usb_buf + - media: dvb-usb/dvb-usb-urb.c: initialize actlen to 0 + - tomoyo: Use atomic_t for statistics counter + - ttyprintk: fix a potential deadlock in interrupt context issue + - Bluetooth: Fix race condition in hci_release_sock() + - cgroup: Prevent double killing of css when enabling threaded cgroup + - clk: sunxi-ng: v3s: Fix incorrect number of hw_clks. + - arm64: dts: meson-sm1-sei610: add gpio bluetooth interrupt + - ARM: dts: sun8i: a83t: Correct USB3503 GPIOs polarity + - ARM: dts: am57xx-beagle-x15/am57xx-idk: Remove "gpios" for endpoint dt nodes + - ARM: dts: beagle-x15-common: Model 5V0 regulator + - soc: ti: wkup_m3_ipc: Fix race condition with rproc_boot + - tools lib traceevent: Fix memory leakage in filter_event + - rseq: Unregister rseq for clone CLONE_VM + - clk: sunxi-ng: sun8i-r: Fix divider on APB0 clock + - clk: sunxi-ng: h6-r: Fix AR100/R_APB2 parent order + - mac80211: mesh: restrict airtime metric to peered established plinks + - clk: mmp2: Fix the order of timer mux parents + - ASoC: rt5640: Fix NULL dereference on module unload + - s390/zcrypt: move ap device reset from bus to driver code + - i40e: Fix virtchnl_queue_select bitmap validation + - ixgbevf: Remove limit of 10 entries for unicast filter list + - ixgbe: Fix calculation of queue with VFs and flow director on interface flap + - igb: Fix SGMII SFP module discovery for 100FX/LX. + - iavf: remove current MAC address filter on VF reset + - platform/x86: GPD pocket fan: Allow somewhat lower/higher temperature limits + - platform/x86: intel_pmc_core: update Comet Lake platform driver + - ASoC: hdac_hda: Fix error in driver removal after failed probe + - ASoC: sti: fix possible sleep-in-atomic + - qmi_wwan: Add support for Quectel RM500Q + - parisc: Use proper printk format for resource_size_t + - lkdtm/bugs: fix build error in lkdtm_UNSET_SMEP + - wireless: fix enabling channel 12 for custom regulatory domain + - cfg80211: Fix radar event during another phy CAC + - mac80211: Fix TKIP replay protection immediately after key setup + - wireless: wext: avoid gcc -O3 warning + - perf/x86/intel/uncore: Add PCI ID of IMC for Xeon E3 V5 Family + - perf/x86/intel/uncore: Remove PCIe3 unit for SNR + - riscv: delete temporary files + - XArray: Fix xas_pause at ULONG_MAX + - iwlwifi: pcie: allocate smaller dev_cmd for TX headers + - iwlwifi: Don't ignore the cap field upon mcc update + - iwlwifi: dbg: force stop the debug monitor HW + - Input: evdev - convert kzalloc()/vzalloc() to kvzalloc() + - ARM: dts: am335x-boneblack-common: fix memory size + - xfrm: interface: do not confirm neighbor when do pmtu update + - Input: max77650-onkey - add of_match table + - scsi: fnic: do not queue commands during fwreset + - ARM: 8955/1: virt: Relax arch timer version check during early boot + - led: max77650: add of_match table + - tee: optee: Fix compilation issue with nommu + - r8152: get default setting of WOL before initializing + - r8152: disable U2P3 for RTL8153B + - r8152: Disable PLA MCU clock speed down + - r8152: disable test IO for RTL8153B + - r8152: avoid the MCU to clear the lanwake + - r8152: disable DelayPhyPwrChg + - ARM: dts: am43x-epos-evm: set data pin directions for spi0 and spi1 + - qlcnic: Fix CPU soft lockup while collecting firmware dump + - powerpc/fsl/dts: add fsl,erratum-a011043 + - net/fsl: treat fsl,erratum-a011043 + - net: fsl/fman: rename IF_MODE_XGMII to IF_MODE_10G + - seq_tab_next() should increase position index + - l2t_seq_next should increase position index + - netfilter: conntrack: sctp: use distinct states for new SCTP connections + - netfilter: nf_tables_offload: fix check the chain offload flag + - net: Fix skb->csum update in inet_proto_csum_replace16(). + - btrfs: do not zero f_bavail if we have available space + - cpuidle: teo: Avoid using "early hits" incorrectly + - flow_dissector: Fix to use new variables for port ranges in bpf hook + - dm thin: fix use-after-free in metadata_pre_commit_callback + - perf report: Fix no libunwind compiled warning break s390 issue + - mm/migrate.c: also overwrite error when it is bigger than zero + - ASoC: topology: fix soc_tplg_fe_link_create() - link->dobj initialization + order + - Revert "rsi: fix potential null dereference in rsi_probe()" + - tracing/uprobe: Fix to make trace_uprobe_filter alignment safe + - Linux 5.4.18 + * Integrate Intel SGX driver into linux-azure (LP: #1844245) + - [Packaging] Add systemd service to load intel_sgx + * Focal update: v5.4.17 upstream stable release (LP: #1861784) + - Bluetooth: btusb: fix non-atomic allocation in completion handler + - orinoco_usb: fix interface sanity check + - rsi_91x_usb: fix interface sanity check + - usb: dwc3: pci: add ID for the Intel Comet Lake -V variant + - usb: host: xhci-tegra: set MODULE_FIRMWARE for tegra186 + - USB: serial: ir-usb: add missing endpoint sanity check + - USB: serial: ir-usb: fix link-speed handling + - USB: serial: ir-usb: fix IrLAP framing + - usb: dwc3: turn off VBUS when leaving host mode + - usb: typec: wcove: fix "op-sink-microwatt" default that was in mW + - usb: typec: fusb302: fix "op-sink-microwatt" default that was in mW + - staging: most: net: fix buffer overflow + - staging: wlan-ng: ensure error return is actually returned + - staging: vt6656: correct packet types for CTS protect, mode. + - staging: vt6656: use NULLFUCTION stack on mac80211 + - staging: vt6656: Fix false Tx excessive retries reporting. + - serial: 8250_bcm2835aux: Fix line mismatch on driver unbind + - serial: imx: fix a race condition in receive path + - debugfs: Return -EPERM when locked down + - component: do not dereference opaque pointer in debugfs + - binder: fix log spam for existing debugfs file creation. + - mei: hdcp: bind only with i915 on the same PCH + - mei: me: add comet point (lake) H device ids + - iio: adc: stm32-dfsdm: fix single conversion + - iio: st_gyro: Correct data for LSM9DS0 gyro + - driver core: Fix test_async_driver_probe if NUMA is disabled + - crypto: chelsio - fix writing tfm flags to wrong place + - CIFS: Fix task struct use-after-free on reconnect + - cifs: set correct max-buffer-size for smb2_ioctl_init() + - cifs: Fix memory allocation in __smb2_handle_cancelled_cmd() + - ath9k: fix storage endpoint lookup + - brcmfmac: fix interface sanity check + - rtl8xxxu: fix interface sanity check + - zd1211rw: fix storage endpoint lookup + - net_sched: ematch: reject invalid TCF_EM_SIMPLE + - net_sched: fix ops->bind_class() implementations + - net_sched: walk through all child classes in tc_bind_tclass() + - net: socionext: fix possible user-after-free in netsec_process_rx + - net: socionext: fix xdp_result initialization in netsec_process_rx + - udp: segment looped gso packets correctly + - mlxsw: minimal: Fix an error handling path in 'mlxsw_m_port_create()' + - net: include struct nhmsg size in nh nlmsg size + - rxrpc: Fix use-after-free in rxrpc_receive_data() + - arc: eznps: fix allmodconfig kconfig warning + - HID: Add quirk for Xin-Mo Dual Controller + - HID: ite: Add USB id match for Acer SW5-012 keyboard dock + - HID: asus: Ignore Asus vendor-page usage-code 0xff events + - HID: Add quirk for incorrect input length on Lenovo Y720 + - HID: intel-ish-hid: ipc: add CMP device id + - HID: wacom: Recognize new MobileStudio Pro PID + - ASoC: SOF: fix fault at driver unload after failed probe + - ASoC: SOF: Intel: hda: hda-dai: fix oops on hda_link .hw_free + - drivers/hid/hid-multitouch.c: fix a possible null pointer access. + - phy: qcom-qmp: Increase PHY ready timeout + - ASoC: fsl_audmix: add missed pm_runtime_disable + - ASoC: topology: Prevent use-after-free in snd_soc_get_pcm_runtime() + - phy: cpcap-usb: Prevent USB line glitches from waking up modem + - HID: intel-ish-hid: ipc: Add Tiger Lake PCI device ID + - watchdog: max77620_wdt: fix potential build errors + - watchdog: rn5t618_wdt: fix module aliases + - watchdog: orion: fix platform_get_irq() complaints + - usb: musb: jz4740: Silence error if code is -EPROBE_DEFER + - can: tcan4x5x: tcan4x5x_parse_config(): reset device before register access + - spi: spi-dw: Add lock protect dw_spi rx/tx to prevent concurrent calls + - net: Google gve: Remove dma_wmb() before ringing doorbell + - drivers/net/b44: Change to non-atomic bit operations on pwol_mask + - net: wan: sdla: Fix cast from pointer to integer of different size + - gpio: max77620: Add missing dependency on GPIOLIB_IRQCHIP + - iommu/dma: fix variable 'cookie' set but not used + - drm/amd/display: Reduce HDMI pixel encoding if max clock is exceeded + - stmmac: debugfs entry name is not be changed when udev rename device name. + - atm: eni: fix uninitialized variable warning + - HID: steam: Fix input device disappearing + - extcon-intel-cht-wc: Don't reset USB data connection at probe + - ASoC: Intel: cht_bsw_rt5645: Add quirk for boards using pmc_plt_clk_0 + - drm/amdgpu/SRIOV: add navi12 pci id for SRIOV (v2) + - libbpf: Fix BTF-defined map's __type macro handling of arrays + - staging: mt7621-pci: add quirks for 'E2' revision using + 'soc_device_attribute' + - platform/x86: dell-laptop: disable kbd backlight on Inspiron 10xx + - PCI: Add DMA alias quirk for Intel VCA NTB + - media: dvbsky: add support for eyeTV Geniatech T2 lite + - bus: ti-sysc: Handle mstandby quirk and use it for musb + - bus: ti-sysc: Use swsup quirks also for am335x musb + - spi: pxa2xx: Add support for Intel Comet Lake-H + - iommu/amd: Support multiple PCI DMA aliases in device table + - iommu/amd: Support multiple PCI DMA aliases in IRQ Remapping + - perf/imx_ddr: Add enhanced AXI ID filter support + - ARM: config: aspeed-g5: Enable 8250_DW quirks + - ARM: OMAP2+: SmartReflex: add omap_sr_pdata definition + - mmc: sdhci-pci: Quirk for AMD SDHC Device 0x7906 + - mmc: sdhci-pci: Add support for Intel JSL + - bus: ti-sysc: Add module enable quirk for audio AESS + - usb-storage: Disable UAS on JMicron SATA enclosure + - ALSA: hda/realtek - Move some alc236 pintbls to fallback table + - Bluetooth: Allow combination of BDADDR_PROPERTY and INVALID_BDADDR quirks + - Bluetooth: btbcm: Use the BDADDR_PROPERTY quirk + - bus: ti-sysc: Fix missing force mstandby quirk handling + - rsi: fix use-after-free on failed probe and unbind + - rsi: fix use-after-free on probe errors + - rsi: fix memory leak on failed URB submission + - rsi: fix non-atomic allocation in completion handler + - crypto: af_alg - Use bh_lock_sock in sk_destruct + - crypto: vmx - reject xts inputs that are too short + - crypto: caam - do not reset pointer size from MCFGR register + - crypto: pcrypt - Fix user-after-free on module unload + - KVM: arm64: Write arch.mdcr_el2 changes since last vcpu_load on VHE + - Revert "um: Enable CONFIG_CONSTRUCTORS" + - power/supply: ingenic-battery: Don't change scale if there's only one + - Linux 5.4.17 + * Miscellaneous Ubuntu changes + - [Packaging] dkms -- switch basic provides to *-modules + - update dkms package versions + + -- Seth Forshee Wed, 12 Feb 2020 15:50:12 -0600 + +linux-azure-5.4 (5.4.0-1001.1) focal; urgency=medium + + * Packaging resync (LP: #1786013) + - [Packaging] update variants + - [Packaging] update update.conf + - [Packaging] update helper scripts + + * Miscellaneous Ubuntu changes + - [Packaging] Change package name to linux-azure-5.4 + - [Packaging] Remove i386 arch from control stubs + - [Packaging] Remove python-dev build-depends + - [Packaging] dkms -- add Provides: specifiers + - [Packaging] Replace wget with curl in build-depends + - [Config] Enable wireguard dkms build + - [Config] Update configs and annotations for 5.4 + - Revert "UBUNTU: SAUCE: linux-azure: Include Intel SGX driver to the main + modules package" + + -- Seth Forshee Thu, 30 Jan 2020 16:54:31 -0600 + +linux-azure-5.4 (5.4.0-1000.0) focal; urgency=medium + + * Empty entry. + + -- Seth Forshee Thu, 30 Jan 2020 13:59:12 -0600 + +linux-azure (5.3.0-1010.11) eoan; urgency=medium + + * eoan/linux-azure: 5.3.0-1010.11 -proposed tracker (LP: #1859820) + + * Integrate Intel SGX driver into linux-azure (LP: #1844245) + - SAUCE: linux-azure: Include Intel SGX driver to the main modules package + - [Packaging] linux-azure: Prevent intel_sgx from being automatically loaded + + [ Ubuntu: 5.3.0-28.30 ] + + * eoan/linux: 5.3.0-28.30 -proposed tracker (LP: #1859694) + * CVE-2019-14615 + - drm/i915/gen9: Clear residual context state on context switch + * PAN is broken for execute-only user mappings on ARMv8 (LP: #1858815) + - arm64: Revert support for execute-only user mappings + * Miscellaneous Ubuntu changes + - update dkms package versions + + [ Ubuntu: 5.3.0-27.29 ] + + * eoan/linux: 5.3.0-27.29 -proposed tracker (LP: #1858943) + * [Regression] usb usb2-port2: Cannot enable. Maybe the USB cable is bad? + (LP: #1856608) + - SAUCE: Revert "usb: handle warm-reset port requests on hub resume" + + [ Ubuntu: 5.3.0-26.28 ] + + * eoan/linux: 5.3.0-26.28 -proposed tracker (LP: #1856807) + * nvidia-435 is in eoan, linux-restricted-modules only builds against 430, + ubiquity gives me the self-signed modules experience instead of using the + Canonical-signed modules (LP: #1856407) + - Add nvidia-435 dkms build + + -- Connor Kuehl Wed, 15 Jan 2020 10:34:34 -0800 + +linux-azure (5.3.0-1009.10) eoan; urgency=medium + + * eoan/linux-azure: 5.3.0-1009.10 -proposed tracker (LP: #1854749) + + [ Ubuntu: 5.3.0-25.27 ] + + * eoan/linux: 5.3.0-25.27 -proposed tracker (LP: #1854762) + * CVE-2019-14901 + - SAUCE: mwifiex: Fix heap overflow in mmwifiex_process_tdls_action_frame() + * CVE-2019-14896 // CVE-2019-14897 + - SAUCE: libertas: Fix two buffer overflows at parsing bss descriptor + * CVE-2019-14895 + - SAUCE: mwifiex: fix possible heap overflow in mwifiex_process_country_ie() + * [CML] New device id's for CMP-H (LP: #1846335) + - mmc: sdhci-pci: Add another Id for Intel CML + - i2c: i801: Add support for Intel Comet Lake PCH-H + - mtd: spi-nor: intel-spi: Add support for Intel Comet Lake-H SPI serial flash + - mfd: intel-lpss: Add Intel Comet Lake PCH-H PCI IDs + * i915: Display flickers (monitor loses signal briefly) during "flickerfree" + boot, while showing the BIOS logo on a black background (LP: #1836858) + - [Config] FRAMEBUFFER_CONSOLE_DEFERRED_TAKEOVER=y + * Please add patch fixing RK818 ID detection (LP: #1853192) + - SAUCE: mfd: rk808: Fix RK818 ID template + * Kernel build log filled with "/bin/bash: line 5: warning: command + substitution: ignored null byte in input" (LP: #1853843) + - [Debian] Fix warnings when checking for modules signatures + * Lenovo dock MAC Address pass through doesn't work in Ubuntu (LP: #1827961) + - r8152: Add macpassthru support for ThinkPad Thunderbolt 3 Dock Gen 2 + * Dell XPS 13 9350/9360 headphone audio hiss (LP: #1654448) // [XPS 13 9360, + Realtek ALC3246, Black Headphone Out, Front] High noise floor (LP: #1845810) + - ALSA: hda/realtek: Reduce the Headphone static noise on XPS 9350/9360 + * no HDMI video output since GDM greeter after linux-oem-osp1 version + 5.0.0-1026 (LP: #1852386) + - drm/i915: Add new CNL PCH ID seen on a CML platform + - SAUCE: drm/i915: Fix detection for a CMP-V PCH + * [broadwell-rt286, playback] Since Linux 5.2rc2 audio playback no longer + works on Dell Venue 11 Pro 7140 (LP: #1846539) + - [Config] Drop snd-sof-intel-bdw build + - SAUCE: ASoC: SOF: Intel: Broadwell: clarify mutual exclusion with legacy + driver + * [CML-S62] Need enable turbostat patch support for Comet lake- S 6+2 + (LP: #1847451) + - SAUCE: tools/power turbostat: Add Cometlake support + * External microphone can't work on some dell machines with the codec alc256 + or alc236 (LP: #1853791) + - SAUCE: ALSA: hda/realtek - Move some alc256 pintbls to fallback table + - SAUCE: ALSA: hda/realtek - Move some alc236 pintbls to fallback table + * Memory leak in net/xfrm/xfrm_state.c - 8 pages per ipsec connection + (LP: #1853197) + - xfrm: Fix memleak on xfrm state destroy + * CVE-2019-18660: patches for Ubuntu (LP: #1853142) // CVE-2019-18660 + - powerpc/64s: support nospectre_v2 cmdline option + - powerpc/book3s64: Fix link stack flush on context switch + - KVM: PPC: Book3S HV: Flush link stack on guest exit to host kernel + * Raydium Touchscreen on ThinkPad L390 does not work (LP: #1849721) + - HID: i2c-hid: fix no irq after reset on raydium 3118 + * Make Goodix I2C touchpads work (LP: #1853842) + - HID: i2c-hid: Remove runtime power management + - HID: i2c-hid: Send power-on command after reset + * Touchpad doesn't work on Dell Inspiron 7000 2-in-1 (LP: #1851901) + - Revert "UBUNTU: SAUCE: mfd: intel-lpss: add quirk for Dell XPS 13 7390 + 2-in-1" + - lib: devres: add a helper function for ioremap_uc + - mfd: intel-lpss: Use devm_ioremap_uc for MMIO + * CVE-2019-19055 + - nl80211: fix memory leak in nl80211_get_ftm_responder_stats + * CML: perf enabling for core (LP: #1848978) + - perf/x86/intel: Add Comet Lake CPU support + - perf/x86/msr: Add Comet Lake CPU support + - perf/x86/cstate: Add Comet Lake CPU support + - perf/x86/msr: Add new CPU model numbers for Ice Lake + - perf/x86/cstate: Update C-state counters for Ice Lake + * Boot hangs after "Loading initial ramdisk ..." (LP: #1852586) + - SAUCE: Revert "tpm_tis_core: Set TPM_CHIP_FLAG_IRQ before probing for + interrupts" + - SAUCE: Revert "tpm_tis_core: Turn on the TPM before probing IRQ's" + * [CML-S62] Need enable intel_rapl patch support for Comet lake- S 6+2 + (LP: #1847454) + - powercap/intel_rapl: add support for CometLake Mobile + - powercap/intel_rapl: add support for Cometlake desktop + * [CML-S62] Need enable intel_pmc_core driver patch for Comet lake- S 6+2 + (LP: #1847450) + - SAUCE: platform/x86: intel_pmc_core: Add Comet Lake (CML) platform support + to intel_pmc_core driver + * update ENA driver for DIMLIB dynamic interrupt moderation (LP: #1853180) + - net: ena: add intr_moder_rx_interval to struct ena_com_dev and use it + - net: ena: switch to dim algorithm for rx adaptive interrupt moderation + - net: ena: reimplement set/get_coalesce() + - net: ena: enable the interrupt_moderation in driver_supported_features + - net: ena: remove code duplication in + ena_com_update_nonadaptive_moderation_interval _*() + - net: ena: remove old adaptive interrupt moderation code from ena_netdev + - net: ena: remove ena_restore_ethtool_params() and relevant fields + - net: ena: remove all old adaptive rx interrupt moderation code from ena_com + - net: ena: fix update of interrupt moderation register + - net: ena: fix retrieval of nonadaptive interrupt moderation intervals + - net: ena: fix incorrect update of intr_delay_resolution + - net: ena: Select DIMLIB for ENA_ETHERNET + - SAUCE: net: ena: fix issues in setting interrupt moderation params in + ethtool + - SAUCE: net: ena: fix too long default tx interrupt moderation interval + * CONFIG_ARCH_ROCKCHIP is not set in ubuntu 18.04 aarch64,arm64 (LP: #1825222) + - [Config] Enable ROCKCHIP support for arm64 + * remount of multilower moved pivoted-root overlayfs root, results in I/O + errors on some modified files (LP: #1824407) + - SAUCE: ovl: fix lookup failure on multi lower squashfs + * Eoan update: 5.3.13 upstream stable release (LP: #1853882) + - net: cdc_ncm: Signedness bug in cdc_ncm_set_dgram_size() + - block, bfq: deschedule empty bfq_queues not referred by any process + - mm/memory_hotplug: don't access uninitialized memmaps in shrink_pgdat_span() + - mm/memory_hotplug: fix updating the node span + - arm64: uaccess: Ensure PAN is re-enabled after unhandled uaccess fault + - fbdev: Ditch fb_edid_add_monspecs + - Linux 5.3.13 + * Eoan update: 5.3.12 upstream stable release (LP: #1853475) + - scsi: core: Handle drivers which set sg_tablesize to zero + - ax88172a: fix information leak on short answers + - devlink: disallow reload operation during device cleanup + - ipmr: Fix skb headroom in ipmr_get_route(). + - mlxsw: core: Enable devlink reload only on probe + - net: gemini: add missed free_netdev + - net/smc: fix fastopen for non-blocking connect() + - net: usb: qmi_wwan: add support for Foxconn T77W968 LTE modules + - slip: Fix memory leak in slip_open error path + - tcp: remove redundant new line from tcp_event_sk_skb + - dpaa2-eth: free already allocated channels on probe defer + - devlink: Add method for time-stamp on reporter's dump + - net/smc: fix refcount non-blocking connect() -part 2 + - ALSA: usb-audio: Fix missing error check at mixer resolution test + - ALSA: usb-audio: not submit urb for stopped endpoint + - ALSA: usb-audio: Fix incorrect NULL check in create_yamaha_midi_quirk() + - ALSA: usb-audio: Fix incorrect size check for processing/extension units + - Btrfs: fix log context list corruption after rename exchange operation + - cgroup: freezer: call cgroup_enter_frozen() with preemption disabled in + ptrace_stop() + - Input: ff-memless - kill timer in destroy() + - Input: synaptics-rmi4 - fix video buffer size + - Input: synaptics-rmi4 - disable the relative position IRQ in the F12 driver + - Input: synaptics-rmi4 - do not consume more data than we have (F11, F12) + - Input: synaptics-rmi4 - clear IRQ enables for F54 + - Input: synaptics-rmi4 - destroy F54 poller workqueue when removing + - KVM: MMU: Do not treat ZONE_DEVICE pages as being reserved + - IB/hfi1: Ensure r_tid_ack is valid before building TID RDMA ACK packet + - IB/hfi1: Calculate flow weight based on QP MTU for TID RDMA + - IB/hfi1: TID RDMA WRITE should not return IB_WC_RNR_RETRY_EXC_ERR + - IB/hfi1: Ensure full Gen3 speed in a Gen4 system + - IB/hfi1: Use a common pad buffer for 9B and 16B packets + - i2c: acpi: Force bus speed to 400KHz if a Silead touchscreen is present + - SAUCE: Revert "UBUNTU: SAUCE: x86/intel: Disable HPET on Intel Coffe Lake + platforms" + - x86/quirks: Disable HPET on Intel Coffe Lake platforms + - ecryptfs_lookup_interpose(): lower_dentry->d_inode is not stable + - ecryptfs_lookup_interpose(): lower_dentry->d_parent is not stable either + - io_uring: ensure registered buffer import returns the IO length + - drm/i915: update rawclk also on resume + - Revert "drm/i915/ehl: Update MOCS table for EHL" + - ntp/y2038: Remove incorrect time_t truncation + - net: ethernet: dwmac-sun8i: Use the correct function in exit path + - iommu/vt-d: Fix QI_DEV_IOTLB_PFSID and QI_DEV_EIOTLB_PFSID macros + - mm: mempolicy: fix the wrong return value and potential pages leak of mbind + - mm: memcg: switch to css_tryget() in get_mem_cgroup_from_mm() + - mm: hugetlb: switch to css_tryget() in hugetlb_cgroup_charge_cgroup() + - mm: slub: really fix slab walking for init_on_free + - mm/memory_hotplug: fix try_offline_node() + - mm/page_io.c: do not free shared swap slots + - mmc: sdhci-of-at91: fix quirk2 overwrite + - slcan: Fix memory leak in error path + - Linux 5.3.12 + * Eoan update: 5.3.11 upstream stable release (LP: #1852338) + - bonding: fix state transition issue in link monitoring + - CDC-NCM: handle incomplete transfer of MTU + - ipv4: Fix table id reference in fib_sync_down_addr + - net: ethernet: octeon_mgmt: Account for second possible VLAN header + - net: fix data-race in neigh_event_send() + - net: qualcomm: rmnet: Fix potential UAF when unregistering + - net/tls: fix sk_msg trim on fallback to copy mode + - net: usb: qmi_wwan: add support for DW5821e with eSIM support + - NFC: fdp: fix incorrect free object + - nfc: netlink: fix double device reference drop + - NFC: st21nfca: fix double free + - qede: fix NULL pointer deref in __qede_remove() + - net: mscc: ocelot: don't handle netdev events for other netdevs + - net: mscc: ocelot: fix NULL pointer on LAG slave removal + - net/tls: don't pay attention to sk_write_pending when pushing partial + records + - net/tls: add a TX lock + - selftests/tls: add test for concurrent recv and send + - ipv6: fixes rt6_probe() and fib6_nh->last_probe init + - net: hns: Fix the stray netpoll locks causing deadlock in NAPI path + - net: prevent load/store tearing on sk->sk_stamp + - net: sched: prevent duplicate flower rules from tcf_proto destroy race + - net/smc: fix ethernet interface refcounting + - vsock/virtio: fix sock refcnt holding during the shutdown + - r8169: fix page read in r8168g_mdio_read + - ALSA: timer: Fix incorrectly assigned timer instance + - ALSA: bebob: fix to detect configured source of sampling clock for Focusrite + Saffire Pro i/o series + - ALSA: hda/ca0132 - Fix possible workqueue stall + - mm: memcontrol: fix NULL-ptr deref in percpu stats flush + - mm: memcontrol: fix network errors from failing __GFP_ATOMIC charges + - mm, meminit: recalculate pcpu batch and high limits after init completes + - mm: thp: handle page cache THP correctly in PageTransCompoundMap + - mm, vmstat: hide /proc/pagetypeinfo from normal users + - dump_stack: avoid the livelock of the dump_lock + - mm: slab: make page_cgroup_ino() to recognize non-compound slab pages + properly + - btrfs: Consider system chunk array size for new SYSTEM chunks + - btrfs: tree-checker: Fix wrong check on max devid + - btrfs: save i_size to avoid double evaluation of i_size_read in + compress_file_range + - tools: gpio: Use !building_out_of_srctree to determine srctree + - pinctrl: intel: Avoid potential glitches if pin is in GPIO mode + - perf tools: Fix time sorting + - perf map: Use zalloc for map_groups + - drm/radeon: fix si_enable_smc_cac() failed issue + - HID: wacom: generic: Treat serial number and related fields as unsigned + - mm/khugepaged: fix might_sleep() warn with CONFIG_HIGHPTE=y + - soundwire: depend on ACPI + - soundwire: depend on ACPI || OF + - soundwire: bus: set initial value to port_status + - blkcg: make blkcg_print_stat() print stats only for online blkgs + - arm64: Do not mask out PTE_RDONLY in pte_same() + - ASoC: rsnd: dma: fix SSI9 4/5/6/7 busif dma address + - ceph: fix use-after-free in __ceph_remove_cap() + - ceph: fix RCU case handling in ceph_d_revalidate() + - ceph: add missing check in d_revalidate snapdir handling + - ceph: don't try to handle hashed dentries in non-O_CREAT atomic_open + - ceph: don't allow copy_file_range when stripe_count != 1 + - iio: adc: stm32-adc: fix stopping dma + - iio: imu: adis16480: make sure provided frequency is positive + - iio: imu: inv_mpu6050: fix no data on MPU6050 + - iio: srf04: fix wrong limitation in distance measuring + - ARM: sunxi: Fix CPU powerdown on A83T + - ARM: dts: imx6-logicpd: Re-enable SNVS power key + - cpufreq: intel_pstate: Fix invalid EPB setting + - clone3: validate stack arguments + - netfilter: nf_tables: Align nft_expr private data to 64-bit + - netfilter: ipset: Fix an error code in ip_set_sockfn_get() + - intel_th: gth: Fix the window switching sequence + - intel_th: pci: Add Comet Lake PCH support + - intel_th: pci: Add Jasper Lake PCH support + - x86/dumpstack/64: Don't evaluate exception stacks before setup + - x86/apic/32: Avoid bogus LDR warnings + - SMB3: Fix persistent handles reconnect + - can: usb_8dev: fix use-after-free on disconnect + - can: flexcan: disable completely the ECC mechanism + - can: c_can: c_can_poll(): only read status register after status IRQ + - can: peak_usb: fix a potential out-of-sync while decoding packets + - can: rx-offload: can_rx_offload_queue_sorted(): fix error handling, avoid + skb mem leak + - can: gs_usb: gs_can_open(): prevent memory leak + - can: dev: add missing of_node_put() after calling of_get_child_by_name() + - can: mcba_usb: fix use-after-free on disconnect + - can: peak_usb: fix slab info leak + - configfs: fix a deadlock in configfs_symlink() + - ALSA: usb-audio: More validations of descriptor units + - ALSA: usb-audio: Simplify parse_audio_unit() + - ALSA: usb-audio: Unify the release of usb_mixer_elem_info objects + - ALSA: usb-audio: Remove superfluous bLength checks + - ALSA: usb-audio: Clean up check_input_term() + - ALSA: usb-audio: Fix possible NULL dereference at create_yamaha_midi_quirk() + - ALSA: usb-audio: remove some dead code + - ALSA: usb-audio: Fix copy&paste error in the validator + - usbip: Implement SG support to vhci-hcd and stub driver + - HID: google: add magnemite/masterball USB ids + - dmaengine: sprd: Fix the link-list pointer register configuration issue + - bpf: lwtunnel: Fix reroute supplying invalid dst + - dmaengine: xilinx_dma: Fix 64-bit simple AXIDMA transfer + - dmaengine: xilinx_dma: Fix control reg update in vdma_channel_set_config + - dmaengine: sprd: Fix the possible memory leak issue + - HID: intel-ish-hid: fix wrong error handling in ishtp_cl_alloc_tx_ring() + - powerpc/32s: fix allow/prevent_user_access() when crossing segment + boundaries. + - RDMA/mlx5: Clear old rate limit when closing QP + - iw_cxgb4: fix ECN check on the passive accept + - RDMA/siw: free siw_base_qp in kref release routine + - RDMA/qedr: Fix reported firmware version + - IB/core: Use rdma_read_gid_l2_fields to compare GID L2 fields + - net/mlx5e: Tx, Fix assumption of single WQEBB of NOP in cleanup flow + - net/mlx5e: kTLS, Release reference on DUMPed fragments in shutdown flow + - net/mlx5e: TX, Fix consumer index of error cqe dump + - net/mlx5: prevent memory leak in mlx5_fpga_conn_create_cq + - net/mlx5: fix memory leak in mlx5_fw_fatal_reporter_dump + - selftests/bpf: More compatible nc options in test_tc_edt + - scsi: qla2xxx: fixup incorrect usage of host_byte + - scsi: lpfc: Check queue pointer before use + - scsi: ufs-bsg: Wake the device before sending raw upiu commands + - ARC: [plat-hsdk]: Enable on-board SPI NOR flash IC + - RDMA/uverbs: Prevent potential underflow + - bpf: Fix use after free in subprog's jited symbol removal + - net: stmmac: Fix the problem of tso_xmit + - net: openvswitch: free vport unless register_netdevice() succeeds + - scsi: lpfc: Honor module parameter lpfc_use_adisc + - scsi: qla2xxx: Initialized mailbox to prevent driver load failure + - bpf: Fix use after free in bpf_get_prog_name + - iwlwifi: pcie: fix PCI ID 0x2720 configs that should be soc + - iwlwifi: pcie: fix all 9460 entries for qnj + - iwlwifi: pcie: 0x2720 is qu and 0x30DC is not + - netfilter: nf_flow_table: set timeout before insertion into hashes + - drm/v3d: Fix memory leak in v3d_submit_cl_ioctl + - xsk: Fix registration of Rx-only sockets + - net: phy: smsc: LAN8740: add PHY_RST_AFTER_CLK_EN flag + - ipvs: don't ignore errors in case refcounting ip_vs module fails + - ipvs: move old_secure_tcp into struct netns_ipvs + - netfilter: nft_payload: fix missing check for matching length in offloads + - RDMA/nldev: Skip counter if port doesn't match + - bonding: fix unexpected IFF_BONDING bit unset + - bonding: use dynamic lockdep key instead of subclass + - macsec: fix refcnt leak in module exit routine + - virt_wifi: fix refcnt leak in module exit routine + - scsi: sd: define variable dif as unsigned int instead of bool + - usb: dwc3: select CONFIG_REGMAP_MMIO + - usb: fsl: Check memory resource before releasing it + - usb: gadget: udc: atmel: Fix interrupt storm in FIFO mode. + - usb: gadget: composite: Fix possible double free memory bug + - usb: dwc3: pci: prevent memory leak in dwc3_pci_probe + - usb: gadget: configfs: fix concurrent issue between composite APIs + - usb: dwc3: remove the call trace of USBx_GFLADJ + - perf/x86/amd/ibs: Fix reading of the IBS OpData register and thus precise + RIP validity + - perf/x86/amd/ibs: Handle erratum #420 only on the affected CPU family (10h) + - perf/x86/uncore: Fix event group support + - USB: Skip endpoints with 0 maxpacket length + - USB: ldusb: use unsigned size format specifiers + - usbip: tools: Fix read_usb_vudc_device() error path handling + - RDMA/iw_cxgb4: Avoid freeing skb twice in arp failure case + - RDMA/hns: Prevent memory leaks of eq->buf_list + - hwmon: (ina3221) Fix read timeout issue + - scsi: qla2xxx: stop timer in shutdown path + - sched/topology: Don't try to build empty sched domains + - sched/topology: Allow sched_asym_cpucapacity to be disabled + - nvme-multipath: fix possible io hang after ctrl reconnect + - fjes: Handle workqueue allocation failure + - net: hisilicon: Fix "Trying to free already-free IRQ" + - wimax: i2400: Fix memory leak in i2400m_op_rfkill_sw_toggle + - net: mscc: ocelot: fix vlan_filtering when enslaving to bridge before link + is up + - net: mscc: ocelot: refuse to overwrite the port's native vlan + - iommu/amd: Apply the same IVRS IOAPIC workaround to Acer Aspire A315-41 + - mt76: dma: fix buffer unmap with non-linear skbs + - drm/amdgpu/sdma5: do not execute 0-sized IBs (v2) + - drm/sched: Set error to s_fence if HW job submission failed. + - drm/amdgpu: If amdgpu_ib_schedule fails return back the error. + - drm/amd/display: do not synchronize "drr" displays + - drm/amd/display: add 50us buffer as WA for pstate switch in active + - drm/amd/display: Passive DP->HDMI dongle detection fix + - dc.c:use kzalloc without test + - SUNRPC: The TCP back channel mustn't disappear while requests are + outstanding + - SUNRPC: The RDMA back channel mustn't disappear while requests are + outstanding + - SUNRPC: Destroy the back channel when we destroy the host transport + - hv_netvsc: Fix error handling in netvsc_attach() + - efi/tpm: Return -EINVAL when determining tpm final events log size fails + - efi: libstub/arm: Account for firmware reserved memory at the base of RAM + - x86, efi: Never relocate kernel below lowest acceptable address + - arm64: cpufeature: Enable Qualcomm Falkor errata 1009 for Kryo + - usb: dwc3: gadget: fix race when disabling ep with cancelled xfers + - arm64: apply ARM64_ERRATUM_845719 workaround for Brahma-B53 core + - arm64: Brahma-B53 is SSB and spectre v2 safe + - arm64: apply ARM64_ERRATUM_843419 workaround for Brahma-B53 core + - NFSv4: Don't allow a cached open with a revoked delegation + - net: ethernet: arc: add the missed clk_disable_unprepare + - igb: Fix constant media auto sense switching when no cable is connected + - e1000: fix memory leaks + - gve: Fixes DMA synchronization. + - ocfs2: protect extent tree in ocfs2_prepare_inode_for_write() + - pinctrl: cherryview: Fix irq_valid_mask calculation + - clk: imx8m: Use SYS_PLL1_800M as intermediate parent of CLK_ARM + - timekeeping/vsyscall: Update VDSO data unconditionally + - mm/filemap.c: don't initiate writeback if mapping has no dirty pages + - cgroup,writeback: don't switch wbs immediately on dead wbs if the memcg is + dead + - ARM: dts: stm32: change joystick pinctrl definition on stm32mp157c-ev1 + - ASoC: SOF: Intel: hda-stream: fix the CONFIG_ prefix missing + - usbip: Fix free of unallocated memory in vhci tx + - bonding: fix using uninitialized mode_lock + - netfilter: ipset: Copy the right MAC address in hash:ip,mac IPv6 sets + - arm64: errata: Update stale comment + - net/ibmvnic: unlock rtnl_lock in reset so linkwatch_event can run + - SAUCE: Revert "UBUNTU: SAUCE: kvm: x86: mmu: Recovery of shattered NX large + pages" + - SAUCE: Revert "UBUNTU: SAUCE: kvm: Add helper function for creating VM + worker threads" + - SAUCE: Revert "UBUNTU: SAUCE: kvm: mmu: ITLB_MULTIHIT mitigation" + - SAUCE: Revert "kvm: x86, powerpc: do not allow clearing largepages debugfs + entry" + - SAUCE: Revert "UBUNTU: SAUCE: cpu/speculation: Uninline and export CPU + mitigations helpers" + - SAUCE: Revert "UBUNTU: SAUCE: x86: Add ITLB_MULTIHIT bug infrastructure" + - SAUCE: Revert "x86/tsx: Add config options to set tsx=on|off|auto" + - SAUCE: Revert "x86/speculation/taa: Add documentation for TSX Async Abort" + - SAUCE: Revert "x86/tsx: Add "auto" option to the tsx= cmdline parameter" + - SAUCE: Revert "kvm/x86: Export MDS_NO=0 to guests when TSX is enabled" + - SAUCE: Revert "x86/speculation/taa: Add sysfs reporting for TSX Async Abort" + - SAUCE: Revert "x86/speculation/taa: Add mitigation for TSX Async Abort" + - SAUCE: Revert "x86/cpu: Add a "tsx=" cmdline option with TSX disabled by + default" + - SAUCE: Revert "x86/cpu: Add a helper function x86_read_arch_cap_msr()" + - SAUCE: Revert "x86/msr: Add the IA32_TSX_CTRL MSR" + - SAUCE: Revert "UBUNTU: SAUCE: drm/i915/cmdparser: Fix jump whitelist + clearing" + - SAUCE: Revert "UBUNTU: SAUCE: drm/i915/gen8+: Add RC6 CTX corruption WA" + - SAUCE: Revert "UBUNTU: SAUCE: drm/i915: Lower RM timeout to avoid DSI hard + hangs" + - SAUCE: Revert "UBUNTU: SAUCE: drm/i915/cmdparser: Ignore Length operands + during command matching" + - SAUCE: Revert "UBUNTU: SAUCE: drm/i915/cmdparser: Add support for backward + jumps" + - SAUCE: Revert "UBUNTU: SAUCE: drm/i915/cmdparser: Use explicit goto for + error paths" + - SAUCE: Revert "UBUNTU: SAUCE: drm/i915: Add gen9 BCS cmdparsing" + - SAUCE: Revert "UBUNTU: SAUCE: drm/i915: Allow parsing of unsized batches" + - SAUCE: Revert "UBUNTU: SAUCE: drm/i915: Support ro ppgtt mapped cmdparser + shadow buffers" + - SAUCE: Revert "UBUNTU: SAUCE: drm/i915: Add support for mandatory + cmdparsing" + - SAUCE: Revert "UBUNTU: SAUCE: drm/i915: Remove Master tables from cmdparser" + - SAUCE: Revert "UBUNTU: SAUCE: drm/i915: Disable Secure Batches for gen6+" + - SAUCE: Revert "UBUNTU: SAUCE: drm/i915: Rename gen7 cmdparser tables" + - drm/i915: Rename gen7 cmdparser tables + - drm/i915: Disable Secure Batches for gen6+ + - drm/i915: Remove Master tables from cmdparser + - drm/i915: Add support for mandatory cmdparsing + - drm/i915: Support ro ppgtt mapped cmdparser shadow buffers + - drm/i915: Allow parsing of unsized batches + - drm/i915: Add gen9 BCS cmdparsing + - drm/i915/cmdparser: Use explicit goto for error paths + - drm/i915/cmdparser: Add support for backward jumps + - drm/i915/cmdparser: Ignore Length operands during command matching + - drm/i915: Lower RM timeout to avoid DSI hard hangs + - drm/i915/gen8+: Add RC6 CTX corruption WA + - drm/i915/cmdparser: Fix jump whitelist clearing + - x86/msr: Add the IA32_TSX_CTRL MSR + - x86/cpu: Add a helper function x86_read_arch_cap_msr() + - x86/cpu: Add a "tsx=" cmdline option with TSX disabled by default + - x86/speculation/taa: Add mitigation for TSX Async Abort + - x86/speculation/taa: Add sysfs reporting for TSX Async Abort + - kvm/x86: Export MDS_NO=0 to guests when TSX is enabled + - x86/tsx: Add "auto" option to the tsx= cmdline parameter + - x86/speculation/taa: Add documentation for TSX Async Abort + - x86/tsx: Add config options to set tsx=on|off|auto + - x86/speculation/taa: Fix printing of TAA_MSG_SMT on IBRS_ALL CPUs + - x86/bugs: Add ITLB_MULTIHIT bug infrastructure + - x86/cpu: Add Tremont to the cpu vulnerability whitelist + - cpu/speculation: Uninline and export CPU mitigations helpers + - Documentation: Add ITLB_MULTIHIT documentation + - kvm: x86, powerpc: do not allow clearing largepages debugfs entry + - kvm: mmu: ITLB_MULTIHIT mitigation + - kvm: Add helper function for creating VM worker threads + - kvm: x86: mmu: Recovery of shattered NX large pages + - Linux 5.3.11 + * The alsa hda driver is not loaded due to the missing of PCIID for Comet + Lake-S [8086:a3f0] (LP: #1852070) + - SAUCE: ALSA: hda: Add Cometlake-S PCI ID + * Can't adjust brightness on DELL UHD dGPU AIO (LP: #1813877) + - SAUCE: platform/x86: dell-uart-backlight: add missing status command + - SAUCE: platform/x86: dell-uart-backlight: load driver by scalar status + - SAUCE: platform/x86: dell-uart-backlight: add force parameter + - SAUCE: platform/x86: dell-uart-backlight: add quirk for old platforms + * Disable unreliable HPET on CFL-H system (LP: #1852216) + - SAUCE: x86/intel: Disable HPET on Intel Coffe Lake H platforms + * i40e: Setting VF MAC address causes General Protection Fault (LP: #1852432) + - i40e: Fix crash caused by stress setting of VF MAC addresses + * CVE-2019-19072 + - tracing: Have error path in predicate_parse() free its allocated memory + * i40e: general protection fault in i40e_config_vf_promiscuous_mode + (LP: #1852663) + - SAUCE: i40e Fix GPF when deleting VMs + * hwe-edge kernel 5.3.0-23.25 kernel does not boot on Precision 5720 AIO + (LP: #1852581) + - [Packaging] Fix module signing with older modinfo + + -- Sultan Alsawaf Wed, 04 Dec 2019 15:54:06 -0800 + +linux-azure (5.3.0-1008.9) eoan; urgency=medium + + * eoan/linux-azure: 5.3.0-1008.9 -proposed tracker (LP: #1852225) + + [ Ubuntu: 5.3.0-24.26 ] + + * eoan/linux: 5.3.0-24.26 -proposed tracker (LP: #1852232) + * Eoan update: 5.3.9 upstream stable release (LP: #1851550) + - io_uring: fix up O_NONBLOCK handling for sockets + - dm snapshot: introduce account_start_copy() and account_end_copy() + - dm snapshot: rework COW throttling to fix deadlock + - Btrfs: fix inode cache block reserve leak on failure to allocate data space + - btrfs: qgroup: Always free PREALLOC META reserve in + btrfs_delalloc_release_extents() + - iio: adc: meson_saradc: Fix memory allocation order + - iio: fix center temperature of bmc150-accel-core + - libsubcmd: Make _FORTIFY_SOURCE defines dependent on the feature + - perf tests: Avoid raising SEGV using an obvious NULL dereference + - perf map: Fix overlapped map handling + - perf script brstackinsn: Fix recovery from LBR/binary mismatch + - perf jevents: Fix period for Intel fixed counters + - perf tools: Propagate get_cpuid() error + - perf annotate: Propagate perf_env__arch() error + - perf annotate: Fix the signedness of failure returns + - perf annotate: Propagate the symbol__annotate() error return + - perf annotate: Fix arch specific ->init() failure errors + - perf annotate: Return appropriate error code for allocation failures + - perf annotate: Don't return -1 for error when doing BPF disassembly + - staging: rtl8188eu: fix null dereference when kzalloc fails + - RDMA/siw: Fix serialization issue in write_space() + - RDMA/hfi1: Prevent memory leak in sdma_init + - RDMA/iw_cxgb4: fix SRQ access from dump_qp() + - RDMA/iwcm: Fix a lock inversion issue + - HID: hyperv: Use in-place iterator API in the channel callback + - kselftest: exclude failed TARGETS from runlist + - selftests/kselftest/runner.sh: Add 45 second timeout per test + - nfs: Fix nfsi->nrequests count error on nfs_inode_remove_request + - arm64: cpufeature: Effectively expose FRINT capability to userspace + - arm64: Fix incorrect irqflag restore for priority masking for compat + - arm64: ftrace: Ensure synchronisation in PLT setup for Neoverse-N1 #1542419 + - tty: serial: owl: Fix the link time qualifier of 'owl_uart_exit()' + - tty: serial: rda: Fix the link time qualifier of 'rda_uart_exit()' + - serial/sifive: select SERIAL_EARLYCON + - tty: n_hdlc: fix build on SPARC + - misc: fastrpc: prevent memory leak in fastrpc_dma_buf_attach + - RDMA/core: Fix an error handling path in 'res_get_common_doit()' + - RDMA/cm: Fix memory leak in cm_add/remove_one + - RDMA/nldev: Reshuffle the code to avoid need to rebind QP in error path + - RDMA/mlx5: Do not allow rereg of a ODP MR + - RDMA/mlx5: Order num_pending_prefetch properly with synchronize_srcu + - RDMA/mlx5: Add missing synchronize_srcu() for MW cases + - gpio: max77620: Use correct unit for debounce times + - fs: cifs: mute -Wunused-const-variable message + - arm64: vdso32: Fix broken compat vDSO build warnings + - arm64: vdso32: Detect binutils support for dmb ishld + - serial: mctrl_gpio: Check for NULL pointer + - serial: 8250_omap: Fix gpio check for auto RTS/CTS + - arm64: Default to building compat vDSO with clang when CONFIG_CC_IS_CLANG + - arm64: vdso32: Don't use KBUILD_CPPFLAGS unconditionally + - efi/cper: Fix endianness of PCIe class code + - efi/x86: Do not clean dummy variable in kexec path + - MIPS: include: Mark __cmpxchg as __always_inline + - riscv: avoid kernel hangs when trapped in BUG() + - riscv: avoid sending a SIGTRAP to a user thread trapped in WARN() + - riscv: Correct the handling of unexpected ebreak in do_trap_break() + - x86/xen: Return from panic notifier + - ocfs2: clear zero in unaligned direct IO + - fs: ocfs2: fix possible null-pointer dereferences in + ocfs2_xa_prepare_entry() + - fs: ocfs2: fix a possible null-pointer dereference in + ocfs2_write_end_nolock() + - fs: ocfs2: fix a possible null-pointer dereference in + ocfs2_info_scan_inode_alloc() + - btrfs: silence maybe-uninitialized warning in clone_range + - arm64: armv8_deprecated: Checking return value for memory allocation + - sched/fair: Scale bandwidth quota and period without losing quota/period + ratio precision + - sched/vtime: Fix guest/system mis-accounting on task switch + - perf/core: Rework memory accounting in perf_mmap() + - perf/core: Fix corner case in perf_rotate_context() + - perf/x86/amd: Change/fix NMI latency mitigation to use a timestamp + - drm/amdgpu: fix memory leak + - iio: imu: adis16400: release allocated memory on failure + - iio: imu: adis16400: fix memory leak + - iio: imu: st_lsm6dsx: fix waitime for st_lsm6dsx i2c controller + - MIPS: include: Mark __xchg as __always_inline + - MIPS: fw: sni: Fix out of bounds init of o32 stack + - s390/cio: fix virtio-ccw DMA without PV + - virt: vbox: fix memory leak in hgcm_call_preprocess_linaddr + - nbd: fix possible sysfs duplicate warning + - NFSv4: Fix leak of clp->cl_acceptor string + - SUNRPC: fix race to sk_err after xs_error_report + - s390/uaccess: avoid (false positive) compiler warnings + - tracing: Initialize iter->seq after zeroing in tracing_read_pipe() + - perf annotate: Fix multiple memory and file descriptor leaks + - perf/aux: Fix tracking of auxiliary trace buffer allocation + - USB: legousbtower: fix a signedness bug in tower_probe() + - nbd: verify socket is supported during setup + - fuse: flush dirty data/metadata before non-truncate setattr + - fuse: truncate pending writes on O_TRUNC + - ALSA: bebob: Fix prototype of helper function to return negative value + - ALSA: timer: Fix mutex deadlock at releasing card + - ath10k: fix latency issue for QCA988x + - UAS: Revert commit 3ae62a42090f ("UAS: fix alignment of scatter/gather + segments") + - nl80211: fix validation of mesh path nexthop + - USB: gadget: Reject endpoints with 0 maxpacket value + - usb-storage: Revert commit 747668dbc061 ("usb-storage: Set + virt_boundary_mask to avoid SG overflows") + - USB: ldusb: fix ring-buffer locking + - USB: ldusb: fix control-message timeout + - usb: xhci: fix Immediate Data Transfer endianness + - usb: xhci: fix __le32/__le64 accessors in debugfs code + - USB: serial: whiteheat: fix potential slab corruption + - USB: serial: whiteheat: fix line-speed endianness + - xhci: Fix use-after-free regression in xhci clear hub TT implementation + - scsi: qla2xxx: Fix partial flash write of MBI + - scsi: target: cxgbit: Fix cxgbit_fw4_ack() + - HID: i2c-hid: add Trekstor Primebook C11B to descriptor override + - HID: Fix assumption that devices have inputs + - HID: fix error message in hid_open_report() + - HID: logitech-hidpp: split g920_get_config() + - HID: logitech-hidpp: rework device validation + - HID: logitech-hidpp: do all FF cleanup in hidpp_ff_destroy() + - um-ubd: Entrust re-queue to the upper layers + - s390/unwind: fix mixing regs and sp + - s390/cmm: fix information leak in cmm_timeout_handler() + - s390/idle: fix cpu idle time calculation + - ARC: perf: Accommodate big-endian CPU + - IB/hfi1: Avoid excessive retry for TID RDMA READ request + - arm64: Ensure VM_WRITE|VM_SHARED ptes are clean by default + - arm64: cpufeature: Enable Qualcomm Falkor/Kryo errata 1003 + - virtio_ring: fix stalls for packed rings + - rtlwifi: rtl_pci: Fix problem of too small skb->len + - dmaengine: qcom: bam_dma: Fix resource leak + - dmaengine: tegra210-adma: fix transfer failure + - dmaengine: imx-sdma: fix size check for sdma script_number + - dmaengine: cppi41: Fix cppi41_dma_prep_slave_sg() when idle + - drm/amdgpu/gmc10: properly set BANK_SELECT and FRAGMENT_SIZE + - drm/i915: Fix PCH reference clock for FDI on HSW/BDW + - drm/amdgpu/gfx10: update gfx golden settings + - drm/amdgpu/powerplay/vega10: allow undervolting in p7 + - drm/amdgpu: Fix SDMA hang when performing VKexample test + - NFS: Fix an RCU lock leak in nfs4_refresh_delegation_stateid() + - io_uring: ensure we clear io_kiocb->result before each issue + - iommu/vt-d: Fix panic after kexec -p for kdump + - batman-adv: Avoid free/alloc race when handling OGM buffer + - llc: fix sk_buff leak in llc_sap_state_process() + - llc: fix sk_buff leak in llc_conn_service() + - rxrpc: Fix call ref leak + - rxrpc: rxrpc_peer needs to hold a ref on the rxrpc_local record + - rxrpc: Fix trace-after-put looking at the put peer record + - NFC: pn533: fix use-after-free and memleaks + - bonding: fix potential NULL deref in bond_update_slave_arr + - netfilter: conntrack: avoid possible false sharing + - net: usb: sr9800: fix uninitialized local variable + - sch_netem: fix rcu splat in netem_enqueue() + - net: sched: sch_sfb: don't call qdisc_put() while holding tree lock + - iwlwifi: exclude GEO SAR support for 3168 + - sched/fair: Fix low cpu usage with high throttling by removing expiration of + cpu-local slices + - ALSA: usb-audio: DSD auto-detection for Playback Designs + - ALSA: usb-audio: Update DSD support quirks for Oppo and Rotel + - ALSA: usb-audio: Add DSD support for Gustard U16/X26 USB Interface + - RDMA/mlx5: Use irq xarray locking for mkey_table + - sched/fair: Fix -Wunused-but-set-variable warnings + - powerpc/powernv: Fix CPU idle to be called with IRQs disabled + - Revert "nvme: allow 64-bit results in passthru commands" + - Revert "ALSA: hda: Flush interrupts on disabling" + - Linux 5.3.9 + - [Config] Remove CONFIG_GENERIC_COMPAT_VDSO and + CONFIG_CROSS_COMPILE_COMPAT_VDSO + * Eoan update: v5.3.8 upstream stable release (LP: #1850456) + - drm: Free the writeback_job when it with an empty fb + - drm: Clear the fence pointer when writeback job signaled + - clk: ti: dra7: Fix mcasp8 clock bits + - ARM: dts: Fix wrong clocks for dra7 mcasp + - nvme-pci: Fix a race in controller removal + - scsi: ufs: skip shutdown if hba is not powered + - scsi: megaraid: disable device when probe failed after enabled device + - scsi: qla2xxx: Silence fwdump template message + - scsi: qla2xxx: Fix unbound sleep in fcport delete path. + - scsi: qla2xxx: Fix stale mem access on driver unload + - scsi: qla2xxx: Fix N2N link reset + - scsi: qla2xxx: Fix N2N link up fail + - ARM: dts: Fix gpio0 flags for am335x-icev2 + - ARM: OMAP2+: Fix missing reset done flag for am3 and am43 + - ARM: OMAP2+: Add missing LCDC midlemode for am335x + - ARM: OMAP2+: Fix warnings with broken omap2_set_init_voltage() + - nvme-tcp: fix wrong stop condition in io_work + - nvme-pci: Save PCI state before putting drive into deepest state + - nvme: fix an error code in nvme_init_subsystem() + - nvme-rdma: Fix max_hw_sectors calculation + - Added QUIRKs for ADATA XPG SX8200 Pro 512GB + - nvme: Add quirk for Kingston NVME SSD running FW E8FK11.T + - nvme: allow 64-bit results in passthru commands + - drm/komeda: prevent memory leak in komeda_wb_connector_add + - nvme-rdma: fix possible use-after-free in connect timeout + - blk-mq: honor IO scheduler for multiqueue devices + - ieee802154: ca8210: prevent memory leak + - ARM: dts: am4372: Set memory bandwidth limit for DISPC + - net: dsa: qca8k: Use up to 7 ports for all operations + - MIPS: dts: ar9331: fix interrupt-controller size + - xen/efi: Set nonblocking callbacks + - loop: change queue block size to match when using DIO + - nl80211: fix null pointer dereference + - mac80211: fix txq null pointer dereference + - netfilter: nft_connlimit: disable bh on garbage collection + - net: mscc: ocelot: add missing of_node_put after calling + of_get_child_by_name + - net: dsa: rtl8366rb: add missing of_node_put after calling + of_get_child_by_name + - net: stmmac: xgmac: Not all Unicast addresses may be available + - net: stmmac: dwmac4: Always update the MAC Hash Filter + - net: stmmac: Correctly take timestamp for PTPv2 + - net: stmmac: Do not stop PHY if WoL is enabled + - net: ag71xx: fix mdio subnode support + - RISC-V: Clear load reservations while restoring hart contexts + - riscv: Fix memblock reservation for device tree blob + - drm/amdgpu: fix multiple memory leaks in acp_hw_init + - drm/amd/display: memory leak + - mips: Loongson: Fix the link time qualifier of 'serial_exit()' + - net: hisilicon: Fix usage of uninitialized variable in function + mdio_sc_cfg_reg_write() + - net: stmmac: Avoid deadlock on suspend/resume + - selftests: kvm: Fix libkvm build error + - lib: textsearch: fix escapes in example code + - s390/mm: fix -Wunused-but-set-variable warnings + - net: phy: allow for reset line to be tied to a sleepy GPIO controller + - net: phy: fix write to mii-ctrl1000 register + - namespace: fix namespace.pl script to support relative paths + - Convert filldir[64]() from __put_user() to unsafe_put_user() + - elf: don't use MAP_FIXED_NOREPLACE for elf executable mappings + - Make filldir[64]() verify the directory entry filename is valid + - uaccess: implement a proper unsafe_copy_to_user() and switch filldir over to + it + - filldir[64]: remove WARN_ON_ONCE() for bad directory entries + - net_sched: fix backward compatibility for TCA_KIND + - net_sched: fix backward compatibility for TCA_ACT_KIND + - libata/ahci: Fix PCS quirk application + - Revert "drm/radeon: Fix EEH during kexec" + - ocfs2: fix panic due to ocfs2_wq is null + - nvme-pci: Set the prp2 correctly when using more than 4k page + - ipv4: fix race condition between route lookup and invalidation + - ipv4: Return -ENETUNREACH if we can't create route but saddr is valid + - net: avoid potential infinite loop in tc_ctl_action() + - net: bcmgenet: Fix RGMII_MODE_EN value for GENET v1/2/3 + - net: bcmgenet: Set phydev->dev_flags only for internal PHYs + - net: i82596: fix dma_alloc_attr for sni_82596 + - net/ibmvnic: Fix EOI when running in XIVE mode. + - net: ipv6: fix listify ip6_rcv_finish in case of forwarding + - net: stmmac: disable/enable ptp_ref_clk in suspend/resume flow + - rxrpc: Fix possible NULL pointer access in ICMP handling + - sched: etf: Fix ordering of packets with same txtime + - sctp: change sctp_prot .no_autobind with true + - net: aquantia: temperature retrieval fix + - net: aquantia: when cleaning hw cache it should be toggled + - net: aquantia: do not pass lro session with invalid tcp checksum + - net: aquantia: correctly handle macvlan and multicast coexistence + - net: phy: micrel: Discern KSZ8051 and KSZ8795 PHYs + - net: phy: micrel: Update KSZ87xx PHY name + - net: avoid errors when trying to pop MLPS header on non-MPLS packets + - net/sched: fix corrupted L2 header with MPLS 'push' and 'pop' actions + - netdevsim: Fix error handling in nsim_fib_init and nsim_fib_exit + - net: ethernet: broadcom: have drivers select DIMLIB as needed + - net: phy: Fix "link partner" information disappear issue + - rxrpc: use rcu protection while reading sk->sk_user_data + - io_uring: fix bad inflight accounting for SETUP_IOPOLL|SETUP_SQTHREAD + - io_uring: Fix corrupted user_data + - USB: legousbtower: fix memleak on disconnect + - ALSA: hda/realtek - Add support for ALC711 + - ALSA: hda/realtek - Enable headset mic on Asus MJ401TA + - ALSA: usb-audio: Disable quirks for BOSS Katana amplifiers + - ALSA: hda - Force runtime PM on Nvidia HDMI codecs + - usb: udc: lpc32xx: fix bad bit shift operation + - USB: serial: ti_usb_3410_5052: fix port-close races + - USB: ldusb: fix memleak on disconnect + - USB: usblp: fix use-after-free on disconnect + - USB: ldusb: fix read info leaks + - binder: Don't modify VMA bounds in ->mmap handler + - MIPS: tlbex: Fix build_restore_pagemask KScratch restore + - staging: wlan-ng: fix exit return when sme->key_idx >= NUM_WEPKEYS + - scsi: zfcp: fix reaction on bit error threshold notification + - scsi: sd: Ignore a failure to sync cache due to lack of authorization + - scsi: core: save/restore command resid for error handling + - scsi: core: try to get module before removing device + - scsi: ch: Make it possible to open a ch device multiple times again + - Revert "Input: elantech - enable SMBus on new (2018+) systems" + - Input: da9063 - fix capability and drop KEY_SLEEP + - Input: synaptics-rmi4 - avoid processing unknown IRQs + - Input: st1232 - fix reporting multitouch coordinates + - ASoC: rsnd: Reinitialize bit clock inversion flag for every format setting + - ACPI: CPPC: Set pcc_data[pcc_ss_id] to NULL in acpi_cppc_processor_exit() + - ACPI: NFIT: Fix unlock on error in scrub_show() + - iwlwifi: pcie: change qu with jf devices to use qu configuration + - cfg80211: wext: avoid copying malformed SSIDs + - mac80211: Reject malformed SSID elements + - drm/ttm: Restore ttm prefaulting + - drm/panfrost: Handle resetting on timeout better + - drm/amdgpu: Bail earlier when amdgpu.cik_/si_support is not set to 1 + - drm/amdgpu/sdma5: fix mask value of POLL_REGMEM packet for pipe sync + - drm/i915/userptr: Never allow userptr into the mappable GGTT + - drm/i915: Favor last VBT child device with conflicting AUX ch/DDC pin + - drm/amdgpu/vce: fix allocation size in enc ring test + - drm/amdgpu/vcn: fix allocation size in enc ring test + - drm/amdgpu/uvd6: fix allocation size in enc ring test (v2) + - drm/amdgpu/uvd7: fix allocation size in enc ring test (v2) + - drm/amdgpu: user pages array memory leak fix + - drivers/base/memory.c: don't access uninitialized memmaps in + soft_offline_page_store() + - fs/proc/page.c: don't access uninitialized memmaps in fs/proc/page.c + - io_uring: Fix broken links with offloading + - io_uring: Fix race for sqes with userspace + - io_uring: used cached copies of sq->dropped and cq->overflow + - mmc: mxs: fix flags passed to dmaengine_prep_slave_sg + - mmc: cqhci: Commit descriptors before setting the doorbell + - mmc: sdhci-omap: Fix Tuning procedure for temperatures < -20C + - mm/memory-failure.c: don't access uninitialized memmaps in memory_failure() + - mm/slub: fix a deadlock in show_slab_objects() + - mm/page_owner: don't access uninitialized memmaps when reading + /proc/pagetypeinfo + - mm/memunmap: don't access uninitialized memmap in memunmap_pages() + - mm: memcg/slab: fix panic in __free_slab() caused by premature memcg pointer + release + - mm, compaction: fix wrong pfn handling in __reset_isolation_pfn() + - mm: memcg: get number of pages on the LRU list in memcgroup base on + lru_zone_size + - mm: memblock: do not enforce current limit for memblock_phys* family + - hugetlbfs: don't access uninitialized memmaps in pfn_range_valid_gigantic() + - mm/memory-failure: poison read receives SIGKILL instead of SIGBUS if mmaped + more than once + - zram: fix race between backing_dev_show and backing_dev_store + - xtensa: drop EXPORT_SYMBOL for outs*/ins* + - xtensa: fix change_bit in exclusive access option + - s390/zcrypt: fix memleak at release + - s390/kaslr: add support for R_390_GLOB_DAT relocation type + - lib/vdso: Make clock_getres() POSIX compliant again + - parisc: Fix vmap memory leak in ioremap()/iounmap() + - EDAC/ghes: Fix Use after free in ghes_edac remove path + - arm64: KVM: Trap VM ops when ARM64_WORKAROUND_CAVIUM_TX2_219_TVM is set + - arm64: Avoid Cavium TX2 erratum 219 when switching TTBR + - arm64: Enable workaround for Cavium TX2 erratum 219 when running SMT + - arm64: Allow CAVIUM_TX2_ERRATUM_219 to be selected + - CIFS: avoid using MID 0xFFFF + - cifs: Fix missed free operations + - CIFS: Fix use after free of file info structures + - perf/aux: Fix AUX output stopping + - tracing: Fix race in perf_trace_buf initialization + - fs/dax: Fix pmd vs pte conflict detection + - dm cache: fix bugs when a GFP_NOWAIT allocation fails + - irqchip/sifive-plic: Switch to fasteoi flow + - x86/boot/64: Make level2_kernel_pgt pages invalid outside kernel area + - x86/apic/x2apic: Fix a NULL pointer deref when handling a dying cpu + - x86/hyperv: Make vapic support x2apic mode + - pinctrl: cherryview: restore Strago DMI workaround for all versions + - pinctrl: armada-37xx: fix control of pins 32 and up + - pinctrl: armada-37xx: swap polarity on LED group + - btrfs: block-group: Fix a memory leak due to missing btrfs_put_block_group() + - Btrfs: add missing extents release on file extent cluster relocation error + - btrfs: don't needlessly create extent-refs kernel thread + - Btrfs: fix qgroup double free after failure to reserve metadata for delalloc + - Btrfs: check for the full sync flag while holding the inode lock during + fsync + - btrfs: tracepoints: Fix wrong parameter order for qgroup events + - btrfs: tracepoints: Fix bad entry members of qgroup events + - KVM: PPC: Book3S HV: XIVE: Ensure VP isn't already in use + - memstick: jmb38x_ms: Fix an error handling path in 'jmb38x_ms_probe()' + - cpufreq: Avoid cpufreq_suspend() deadlock on system shutdown + - ceph: just skip unrecognized info in ceph_reply_info_extra + - xen/netback: fix error path of xenvif_connect_data() + - PCI: PM: Fix pci_power_up() + - opp: of: drop incorrect lockdep_assert_held() + - of: reserved_mem: add missing of_node_put() for proper ref-counting + - blk-rq-qos: fix first node deletion of rq_qos_del() + - RDMA/cxgb4: Do not dma memory off of the stack + - Linux 5.3.8 + - [Config] CONFIG_CAVIUM_TX2_ERRATUM_219=y + * Eoan update: 5.3.10 upstream stable release (LP: #1852111) + - regulator: of: fix suspend-min/max-voltage parsing + - ASoC: samsung: arndale: Add missing OF node dereferencing + - ASoC: wm8994: Do not register inapplicable controls for WM1811 + - regulator: da9062: fix suspend_enable/disable preparation + - ASoC: topology: Fix a signedness bug in soc_tplg_dapm_widget_create() + - arm64: dts: allwinner: a64: pine64-plus: Add PHY regulator delay + - arm64: dts: allwinner: a64: Drop PMU node + - arm64: dts: allwinner: a64: sopine-baseboard: Add PHY regulator delay + - arm64: dts: Fix gpio to pinmux mapping + - regulator: ti-abb: Fix timeout in ti_abb_wait_txdone/ti_abb_clear_all_txdone + - pinctrl: intel: Allocate IRQ chip dynamic + - ASoC: SOF: loader: fix kernel oops on firmware boot failure + - ASoC: SOF: topology: fix parse fail issue for byte/bool tuple types + - ASoC: SOF: Intel: hda: fix warnings during FW load + - ASoC: SOF: Intel: initialise and verify FW crash dump data. + - ASoC: SOF: Intel: hda: Disable DMI L1 entry during capture + - ASoC: rt5682: add NULL handler to set_jack function + - ASoC: intel: sof_rt5682: add remove function to disable jack + - ASoC: intel: bytcr_rt5651: add null check to support_button_press + - regulator: pfuze100-regulator: Variable "val" in pfuze100_regulator_probe() + could be uninitialized + - ASoC: wm_adsp: Don't generate kcontrols without READ flags + - ASoc: rockchip: i2s: Fix RPM imbalance + - arm64: dts: rockchip: fix Rockpro64 RK808 interrupt line + - ARM: dts: logicpd-torpedo-som: Remove twl_keypad + - arm64: dts: rockchip: fix RockPro64 vdd-log regulator settings + - arm64: dts: rockchip: fix RockPro64 sdhci settings + - pinctrl: ns2: Fix off by one bugs in ns2_pinmux_enable() + - pinctrl: stmfx: fix null pointer on remove + - arm64: dts: zii-ultra: fix ARM regulator states + - ARM: dts: am3874-iceboard: Fix 'i2c-mux-idle-disconnect' usage + - ASoC: msm8916-wcd-digital: add missing MIX2 path for RX1/2 + - ASoC: simple_card_utils.h: Fix potential multiple redefinition error + - ARM: dts: Use level interrupt for omap4 & 5 wlcore + - ARM: mm: fix alignment handler faults under memory pressure + - scsi: qla2xxx: fix a potential NULL pointer dereference + - scsi: scsi_dh_alua: handle RTPG sense code correctly during state + transitions + - scsi: sni_53c710: fix compilation error + - scsi: fix kconfig dependency warning related to 53C700_LE_ON_BE + - ARM: 8908/1: add __always_inline to functions called from __get_user_check() + - ARM: 8914/1: NOMMU: Fix exc_ret for XIP + - arm64: dts: rockchip: fix RockPro64 sdmmc settings + - arm64: dts: rockchip: Fix usb-c on Hugsun X99 TV Box + - arm64: dts: lx2160a: Correct CPU core idle state name + - ARM: dts: imx6q-logicpd: Re-Enable SNVS power key + - ARM: dts: vf610-zii-scu4-aib: Specify 'i2c-mux-idle-disconnect' + - ARM: dts: imx7s: Correct GPT's ipg clock source + - arm64: dts: imx8mq: Use correct clock for usdhc's ipg clk + - arm64: dts: imx8mm: Use correct clock for usdhc's ipg clk + - perf tools: Fix resource leak of closedir() on the error paths + - perf c2c: Fix memory leak in build_cl_output() + - 8250-men-mcb: fix error checking when get_num_ports returns -ENODEV + - perf kmem: Fix memory leak in compact_gfp_flags() + - ARM: davinci: dm365: Fix McBSP dma_slave_map entry + - drm/amdgpu: fix potential VM faults + - drm/amdgpu: fix error handling in amdgpu_bo_list_create + - scsi: target: core: Do not overwrite CDB byte 1 + - scsi: hpsa: add missing hunks in reset-patch + - ASoC: Intel: sof-rt5682: add a check for devm_clk_get + - ASoC: SOF: control: return true when kcontrol values change + - tracing: Fix "gfp_t" format for synthetic events + - ARM: dts: bcm2837-rpi-cm3: Avoid leds-gpio probing issue + - i2c: aspeed: fix master pending state handling + - drm/komeda: Don't flush inactive pipes + - ARM: 8926/1: v7m: remove register save to stack before svc + - selftests: kvm: vmx_set_nested_state_test: don't check for VMX support twice + - selftests: kvm: fix sync_regs_test with newer gccs + - ALSA: hda: Add Tigerlake/Jasperlake PCI ID + - of: unittest: fix memory leak in unittest_data_add + - MIPS: bmips: mark exception vectors as char arrays + - irqchip/gic-v3-its: Use the exact ITSList for VMOVP + - i2c: mt65xx: fix NULL ptr dereference + - i2c: stm32f7: fix first byte to send in slave mode + - i2c: stm32f7: fix a race in slave mode with arbitration loss irq + - i2c: stm32f7: remove warning when compiling with W=1 + - cifs: Fix cifsInodeInfo lock_sem deadlock when reconnect occurs + - irqchip/sifive-plic: Skip contexts except supervisor in plic_init() + - nbd: protect cmd->status with cmd->lock + - nbd: handle racing with error'ed out commands + - cxgb4: fix panic when attaching to ULD fail + - cxgb4: request the TX CIDX updates to status page + - dccp: do not leak jiffies on the wire + - erspan: fix the tun_info options_len check for erspan + - inet: stop leaking jiffies on the wire + - net: annotate accesses to sk->sk_incoming_cpu + - net: annotate lockless accesses to sk->sk_napi_id + - net: dsa: bcm_sf2: Fix IMP setup for port different than 8 + - net: ethernet: ftgmac100: Fix DMA coherency issue with SW checksum + - net: fix sk_page_frag() recursion from memory reclaim + - net: hisilicon: Fix ping latency when deal with high throughput + - net/mlx4_core: Dynamically set guaranteed amount of counters per VF + - netns: fix GFP flags in rtnl_net_notifyid() + - net: rtnetlink: fix a typo fbd -> fdb + - net: usb: lan78xx: Disable interrupts before calling generic_handle_irq() + - SAUCE: Revert "UBUNTU: SAUCE: (no-up) net: Zeroing the structure + ethtool_wolinfo in ethtool_get_wol()" + - net: Zeroing the structure ethtool_wolinfo in ethtool_get_wol() + - selftests: net: reuseport_dualstack: fix uninitalized parameter + - udp: fix data-race in udp_set_dev_scratch() + - vxlan: check tun_info options_len properly + - net: add skb_queue_empty_lockless() + - udp: use skb_queue_empty_lockless() + - net: use skb_queue_empty_lockless() in poll() handlers + - net: use skb_queue_empty_lockless() in busy poll contexts + - net: add READ_ONCE() annotation in __skb_wait_for_more_packets() + - ipv4: fix route update on metric change. + - selftests: fib_tests: add more tests for metric update + - net/smc: fix closing of fallback SMC sockets + - net/smc: keep vlan_id for SMC-R in smc_listen_work() + - keys: Fix memory leak in copy_net_ns + - net: phylink: Fix phylink_dbg() macro + - rxrpc: Fix handling of last subpacket of jumbo packet + - net/mlx5e: Determine source port properly for vlan push action + - net/mlx5e: Remove incorrect match criteria assignment line + - net/mlx5e: Initialize on stack link modes bitmap + - net/mlx5: Fix flow counter list auto bits struct + - net/smc: fix refcounting for non-blocking connect() + - net/mlx5: Fix rtable reference leak + - mlxsw: core: Unpublish devlink parameters during reload + - r8169: fix wrong PHY ID issue with RTL8168dp + - net/mlx5e: Fix ethtool self test: link speed + - net/mlx5e: Fix handling of compressed CQEs in case of low NAPI budget + - ipv4: fix IPSKB_FRAG_PMTU handling with fragmentation + - net: bcmgenet: don't set phydev->link from MAC + - net: dsa: b53: Do not clear existing mirrored port mask + - net: dsa: fix switch tree list + - net: ensure correct skb->tstamp in various fragmenters + - net: hns3: fix mis-counting IRQ vector numbers issue + - net: netem: fix error path for corrupted GSO frames + - net: reorder 'struct net' fields to avoid false sharing + - net: usb: lan78xx: Connect PHY before registering MAC + - r8152: add device id for Lenovo ThinkPad USB-C Dock Gen 2 + - net: netem: correct the parent's backlog when corrupted packet was dropped + - net: phy: bcm7xxx: define soft_reset for 40nm EPHY + - net: bcmgenet: reset 40nm EPHY on energy detect + - net/flow_dissector: switch to siphash + - platform/x86: pmc_atom: Add Siemens SIMATIC IPC227E to critclk_systems DMI + table + - CIFS: Fix retry mid list corruption on reconnects + - selftests/powerpc: Add test case for tlbie vs mtpidr ordering issue + - selftests/powerpc: Fix compile error on tlbie_test due to newer gcc + - ASoC: pcm3168a: The codec does not support S32_LE + - arm64: dts: ti: k3-am65-main: Fix gic-its node unit-address + - usb: gadget: udc: core: Fix segfault if udc_bind_to_driver() for pending + driver fails + - Linux 5.3.10 + - [Config] SND_SOC_SOF_HDA_ALWAYS_ENABLE_DMI_L1=n + * Some EFI systems fail to boot in efi_init() when booted via maas + (LP: #1851810) + - efi: efi_get_memory_map -- increase map headroom + * dkms artifacts may expire from the pool (LP: #1850958) + - [Packaging] dkms -- try launchpad librarian for pool downloads + - [Packaging] dkms -- dkms-build quieten wget verbiage + * update ENA driver to version 2.1.0 (LP: #1850175) + - net: ena: don't wake up tx queue when down + - net: ena: clean up indentation issue + * drm/i915: Add support for another CMP-H PCH (LP: #1848491) + - drm/i915/cml: Add second PCH ID for CMP + * Add Intel Comet Lake ethernet support (LP: #1848555) + - SAUCE: e1000e: Add support for Comet Lake + * seccomp: fix SECCOMP_USER_NOTIF_FLAG_CONTINUE test (LP: #1849281) + - SAUCE: seccomp: rework define for SECCOMP_USER_NOTIF_FLAG_CONTINUE + - SAUCE: seccomp: avoid overflow in implicit constant conversion + - SAUCE: seccomp: fix SECCOMP_USER_NOTIF_FLAG_CONTINUE test + * tsc marked unstable after entered PC10 on Intel CoffeeLake (LP: #1840239) + - SAUCE: x86/intel: Disable HPET on Intel Coffe Lake platforms + - SAUCE: x86/intel: Disable HPET on Intel Ice Lake platforms + * cloudimg: no iavf/i40evf module so no network available with SR-IOV enabled + cloud (LP: #1848481) + - [Packaging] include iavf/i40evf in generic + * High power consumption using 5.0.0-25-generic (LP: #1840835) + - PCI: Add a helper to check Power Resource Requirements _PR3 existence + - ALSA: hda: Allow HDA to be runtime suspended when dGPU is not bound to a + driver + - PCI: Fix missing inline for pci_pr3_present() + * CML CPUIDs (LP: #1843794) + - x86/cpu: Add Comet Lake to the Intel CPU models header + * shiftfs: prevent exceeding project quotas (LP: #1849483) + - SAUCE: shiftfs: drop CAP_SYS_RESOURCE from effective capabilities + * shiftfs: fix fallocate() (LP: #1849482) + - SAUCE: shiftfs: setup correct s_maxbytes limit + * Bluetooth: hidp: Fix assumptions on the return value of hidp_send_message + (LP: #1850443) + - Bluetooth: hidp: Fix assumptions on the return value of hidp_send_message + * [SRU][B/OEM-B/OEM-OSP1/D/E] UBUNTU: SAUCE: add rtl623 codec support and fix + mic issues (LP: #1850599) + - SAUCE: ALSA: hda/realtek - Add support for ALC623 + - SAUCE: ALSA: hda/realtek - Fix 2 front mics of codec 0x623 + * Suppress "hid_field_extract() called with n (192) > 32!" message floods + (LP: #1850600) + - HID: core: reformat and reduce hid_printk macros + - HID: core: Add printk_once variants to hid_warn() etc + - HID: core: fix dmesg flooding if report field larger than 32bit + * ubuntu-aufs-modified mmap_region() breaks refcounting in overlayfs/shiftfs + error path (LP: #1850994) // CVE-2019-15794 + - SAUCE: shiftfs: Restore vm_file value when lower fs mmap fails + - SAUCE: ovl: Restore vm_file value when lower fs mmap fails + * s_iflags overlap prevents unprivileged overlayfs mounts (LP: #1851677) + - SAUCE: fs: Move SB_I_NOSUID to the top of s_iflags + * root can lift kernel lockdown (LP: #1851380) + - SAUCE: (efi-lockdown) Really don't allow lifting lockdown from userspace + * Colour banding in Lenovo G50-80 laptop display (i915) (LP: #1819968) // Eoan + update: v5.3.8 upstream stable release (LP: #1850456) + - drm/edid: Add 6 bpc quirk for SDC panel in Lenovo G50 + + [ Ubuntu: 5.3.0-23.25 ] + + * Incomplete i915 fix for 64-bit x86 kernels (LP: #1852141) // CVE-2019-0155 + - SAUCE: drm/i915/cmdparser: Fix jump whitelist clearing + + -- Kleber Sacilotto de Souza Thu, 14 Nov 2019 16:49:20 +0100 + +linux-azure (5.3.0-1007.8) eoan; urgency=medium + + * CVE-2019-11135 + - [Config] azure: Disable TSX by default when possible + + [ Ubuntu: 5.3.0-22.24 ] + + * [REGRESSION] md/raid0: cannot assemble multi-zone RAID0 with default_layout + setting (LP: #1849682) + - Revert "md/raid0: avoid RAID0 data corruption due to layout confusion." + * refcount underflow and type confusion in shiftfs (LP: #1850867) // CVE-2019-15793 + - SAUCE: shiftfs: Correct id translation for lower fs operations + - SAUCE: shiftfs: prevent type confusion + - SAUCE: shiftfs: Fix refcount underflow in btrfs ioctl handling + * CVE-2018-12207 + - kvm: x86, powerpc: do not allow clearing largepages debugfs entry + - SAUCE: KVM: vmx, svm: always run with EFER.NXE=1 when shadow paging is + active + - SAUCE: x86: Add ITLB_MULTIHIT bug infrastructure + - SAUCE: kvm: mmu: ITLB_MULTIHIT mitigation + - SAUCE: kvm: Add helper function for creating VM worker threads + - SAUCE: kvm: x86: mmu: Recovery of shattered NX large pages + - SAUCE: cpu/speculation: Uninline and export CPU mitigations helpers + - SAUCE: kvm: x86: mmu: Apply global mitigations knob to ITLB_MULTIHIT + * CVE-2019-11135 + - x86/msr: Add the IA32_TSX_CTRL MSR + - x86/cpu: Add a helper function x86_read_arch_cap_msr() + - x86/cpu: Add a "tsx=" cmdline option with TSX disabled by default + - x86/speculation/taa: Add mitigation for TSX Async Abort + - x86/speculation/taa: Add sysfs reporting for TSX Async Abort + - kvm/x86: Export MDS_NO=0 to guests when TSX is enabled + - x86/tsx: Add "auto" option to the tsx= cmdline parameter + - x86/speculation/taa: Add documentation for TSX Async Abort + - x86/tsx: Add config options to set tsx=on|off|auto + - [Config] Disable TSX by default when possible + * CVE-2019-0154 + - SAUCE: drm/i915: Lower RM timeout to avoid DSI hard hangs + - SAUCE: drm/i915/gen8+: Add RC6 CTX corruption WA + * CVE-2019-0155 + - SAUCE: drm/i915: Rename gen7 cmdparser tables + - SAUCE: drm/i915: Disable Secure Batches for gen6+ + - SAUCE: drm/i915: Remove Master tables from cmdparser + - SAUCE: drm/i915: Add support for mandatory cmdparsing + - SAUCE: drm/i915: Support ro ppgtt mapped cmdparser shadow buffers + - SAUCE: drm/i915: Allow parsing of unsized batches + - SAUCE: drm/i915: Add gen9 BCS cmdparsing + - SAUCE: drm/i915/cmdparser: Use explicit goto for error paths + - SAUCE: drm/i915/cmdparser: Add support for backward jumps + - SAUCE: drm/i915/cmdparser: Ignore Length operands during command matching + + -- Stefan Bader Mon, 11 Nov 2019 10:04:26 +0100 + +linux-azure (5.3.0-1006.6) eoan; urgency=medium + + * eoan/linux-azure: 5.3.0-1006.6 -proposed tracker (LP: #1850480) + + [ Ubuntu: 5.3.0-21.22 ] + + * eoan/linux: 5.3.0-21.22 -proposed tracker (LP: #1850486) + * Fix signing of staging modules in eoan (LP: #1850234) + - [Packaging] Leave unsigned modules unsigned after adding .gnu_debuglink + + -- Sultan Alsawaf Tue, 29 Oct 2019 16:34:47 -0700 + +linux-azure (5.3.0-1005.5) eoan; urgency=medium + + * eoan/linux-azure: 5.3.0-1005.5 -proposed tracker (LP: #1849058) + + * eoan: alsa/sof: Enable SOF_HDA link and codec (LP: #1848490) + - [Config] linux-azure: ignore SOF_HDA link and codec + + * Eoan update: v5.3.5 upstream stable release (LP: #1848047) + - [Config] disable CONFIG_RTC_DRV_BD70528 + + * Eoan update: 5.3.7 upstream stable release (LP: #1848750) + - [Config] disable CONFIG_FB_TFT + + [ Ubuntu: 5.3.0-20.21 ] + + * eoan/linux: 5.3.0-20.21 -proposed tracker (LP: #1849064) + * eoan: alsa/sof: Enable SOF_HDA link and codec (LP: #1848490) + - [Config] Enable SOF_HDA link and codec + * Eoan update: 5.3.7 upstream stable release (LP: #1848750) + - panic: ensure preemption is disabled during panic() + - [Config] updateconfigs for USB_RIO500 + - USB: rio500: Remove Rio 500 kernel driver + - USB: yurex: Don't retry on unexpected errors + - USB: yurex: fix NULL-derefs on disconnect + - USB: usb-skeleton: fix runtime PM after driver unbind + - USB: usb-skeleton: fix NULL-deref on disconnect + - xhci: Fix false warning message about wrong bounce buffer write length + - xhci: Prevent device initiated U1/U2 link pm if exit latency is too long + - xhci: Check all endpoints for LPM timeout + - xhci: Fix USB 3.1 capability detection on early xHCI 1.1 spec based hosts + - usb: xhci: wait for CNR controller not ready bit in xhci resume + - xhci: Prevent deadlock when xhci adapter breaks during init + - xhci: Fix NULL pointer dereference in xhci_clear_tt_buffer_complete() + - USB: adutux: fix use-after-free on disconnect + - USB: adutux: fix NULL-derefs on disconnect + - USB: adutux: fix use-after-free on release + - USB: iowarrior: fix use-after-free on disconnect + - USB: iowarrior: fix use-after-free on release + - USB: iowarrior: fix use-after-free after driver unbind + - USB: usblp: fix runtime PM after driver unbind + - USB: chaoskey: fix use-after-free on release + - USB: ldusb: fix NULL-derefs on driver unbind + - serial: uartlite: fix exit path null pointer + - serial: uartps: Fix uartps_major handling + - USB: serial: keyspan: fix NULL-derefs on open() and write() + - USB: serial: ftdi_sio: add device IDs for Sienna and Echelon PL-20 + - USB: serial: option: add Telit FN980 compositions + - USB: serial: option: add support for Cinterion CLS8 devices + - USB: serial: fix runtime PM after driver unbind + - USB: usblcd: fix I/O after disconnect + - USB: microtek: fix info-leak at probe + - USB: dummy-hcd: fix power budget for SuperSpeed mode + - usb: renesas_usbhs: gadget: Do not discard queues in + usb_ep_set_{halt,wedge}() + - usb: renesas_usbhs: gadget: Fix usb_ep_set_{halt,wedge}() behavior + - usb: typec: tcpm: usb: typec: tcpm: Fix a signedness bug in + tcpm_fw_get_caps() + - usb: typec: ucsi: ccg: Remove run_isr flag + - usb: typec: ucsi: displayport: Fix for the mode entering routine + - USB: legousbtower: fix slab info leak at probe + - USB: legousbtower: fix deadlock on disconnect + - USB: legousbtower: fix potential NULL-deref on disconnect + - USB: legousbtower: fix open after failed reset request + - USB: legousbtower: fix use-after-free on release + - mei: me: add comet point (lake) LP device ids + - mei: avoid FW version request on Ibex Peak and earlier + - gpio: eic: sprd: Fix the incorrect EIC offset when toggling + - staging/fbtft: Depend on OF + - staging: bcm2835-audio: Fix draining behavior regression + - Staging: fbtft: fix memory leak in fbtft_framebuffer_alloc + - staging: rtl8188eu: fix HighestRate check in odm_ARFBRefresh_8188E() + - staging: vt6655: Fix memory leak in vt6655_probe + - iio: adc: hx711: fix bug in sampling of data + - iio: adc: ad799x: fix probe error handling + - iio: adc: axp288: Override TS pin bias current for some models + - iio: adc: stm32-adc: move registers definitions + - iio: adc: stm32-adc: fix a race when using several adcs with dma and irq + - iio: light: opt3001: fix mutex unlock race + - iio: light: add missing vcnl4040 of_compatible + - iio: accel: adxl372: Fix/remove limitation for FIFO samples + - iio: accel: adxl372: Fix push to buffers lost samples + - iio: accel: adxl372: Perform a reset at start up + - efivar/ssdt: Don't iterate over EFI vars if no SSDT override was specified + - perf llvm: Don't access out-of-scope array + - perf inject jit: Fix JIT_CODE_MOVE filename + - drm/i915: Perform GGTT restore much earlier during resume + - selinux: fix context string corruption in convert_context() + - CIFS: Gracefully handle QueryInfo errors during open + - CIFS: Force revalidate inode when dentry is stale + - CIFS: Force reval dentry if LOOKUP_REVAL flag is set + - cifs: use cifsInodeInfo->open_file_lock while iterating to avoid a panic + - kernel/sysctl.c: do not override max_threads provided by userspace + - mm/z3fold.c: claim page in the beginning of free + - mm/page_alloc.c: fix a crash in free_pages_prepare() + - mm/vmpressure.c: fix a signedness bug in vmpressure_register_event() + - IB/core: Fix wrong iterating on ports + - firmware: google: increment VPD key_len properly + - gpio: fix getting nonexclusive gpiods from DT + - gpiolib: don't clear FLAG_IS_OUT when emulating open-drain/open-source + - btrfs: relocation: fix use-after-free on dead relocation roots + - btrfs: allocate new inode in NOFS context + - btrfs: fix balance convert to single on 32-bit host CPUs + - Btrfs: fix memory leak due to concurrent append writes with fiemap + - btrfs: fix incorrect updating of log root tree + - btrfs: fix uninitialized ret in ref-verify + - NFS: Fix O_DIRECT accounting of number of bytes read/written + - MIPS: Disable Loongson MMI instructions for kernel build + - MIPS: elf_hwcap: Export userspace ASEs + - RDMA/vmw_pvrdma: Free SRQ only once + - ACPI/PPTT: Add support for ACPI 6.3 thread flag + - arm64: topology: Use PPTT to determine if PE is a thread + - iio: light: fix vcnl4000 devicetree hooks + - Fix the locking in dcache_readdir() and friends + - drm/i915: Bump skl+ max plane width to 5k for linear/x-tiled + - drm/i915: Whitelist COMMON_SLICE_CHICKEN2 + - drm/i915: Mark contents as dirty on a write fault + - drm/msm: Use the correct dma_sync calls harder + - media: stkwebcam: fix runtime PM after driver unbind + - arm64/sve: Fix wrong free for task->thread.sve_state + - tracing/hwlat: Report total time spent in all NMIs during the sample + - tracing/hwlat: Don't ignore outer-loop duration when calculating max_latency + - ftrace: Get a reference counter for the trace_array on filter files + - tracing: Get trace_array reference for available_tracers files + - hwmon: Fix HWMON_P_MIN_ALARM mask + - mtd: rawnand: au1550nd: Fix au_read_buf16() prototype + - x86/asm: Fix MWAITX C-state hint value + - io_uring: only flush workqueues on fileset removal + - efi/tpm: Fix sanity check of unsigned tbl_size being less than zero + - Linux 5.3.7 + - [Packaging] Remove now un-used modules for amd64 + - [Config] Remove Rio500 + - [Config] Remove deselected modules + * Eoan update: v5.3.5 upstream stable release (LP: #1848047) + - drm/vkms: Fix crc worker races + - drm/mcde: Fix uninitialized variable + - drm/bridge: tc358767: Increase AUX transfer length limit + - drm/vkms: Avoid assigning 0 for possible_crtc + - drm/panel: simple: fix AUO g185han01 horizontal blanking + - drm/amd/display: add monitor patch to add T7 delay + - drm/amd/display: Power-gate all DSCs at driver init time + - drm/amd/display: fix not calling ppsmu to trigger PME + - drm/amd/display: Clear FEC_READY shadow register if DPCD write fails + - drm/amd/display: Copy GSL groups when committing a new context + - video: ssd1307fb: Start page range at page_offset + - drm/tinydrm/Kconfig: drivers: Select BACKLIGHT_CLASS_DEVICE + - drm/stm: attach gem fence to atomic state + - drm/bridge: sii902x: fix missing reference to mclk clock + - drm/panel: check failure cases in the probe func + - drm/rockchip: Check for fast link training before enabling psr + - drm/amdgpu: Fix hard hang for S/G display BOs. + - drm/amd/display: Use proper enum conversion functions + - drm/radeon: Fix EEH during kexec + - gpu: drm: radeon: Fix a possible null-pointer dereference in + radeon_connector_set_property() + - clk: imx8mq: Mark AHB clock as critical + - PCI: rpaphp: Avoid a sometimes-uninitialized warning + - pinctrl: stmfx: update pinconf settings + - ipmi_si: Only schedule continuously in the thread in maintenance mode + - clk: qoriq: Fix -Wunused-const-variable + - clk: ingenic/jz4740: Fix "pll half" divider not read/written properly + - clk: sunxi-ng: v3s: add missing clock slices for MMC2 module clocks + - drm/amd/display: fix issue where 252-255 values are clipped + - drm/amd/display: Fix frames_to_insert math + - drm/amd/display: reprogram VM config when system resume + - drm/amd/display: Register VUPDATE_NO_LOCK interrupts for DCN2 + - powerpc/powernv/ioda2: Allocate TCE table levels on demand for default DMA + window + - clk: actions: Don't reference clk_init_data after registration + - clk: sirf: Don't reference clk_init_data after registration + - clk: meson: axg-audio: Don't reference clk_init_data after registration + - clk: sprd: Don't reference clk_init_data after registration + - clk: zx296718: Don't reference clk_init_data after registration + - clk: sunxi: Don't call clk_hw_get_name() on a hw that isn't registered + - powerpc/xmon: Check for HV mode when dumping XIVE info from OPAL + - powerpc/rtas: use device model APIs and serialization during LPM + - powerpc/ptdump: fix walk_pagetables() address mismatch + - powerpc/futex: Fix warning: 'oldval' may be used uninitialized in this + function + - powerpc/64s/radix: Fix memory hotplug section page table creation + - powerpc/pseries/mobility: use cond_resched when updating device tree + - powerpc/perf: fix imc allocation failure handling + - pinctrl: tegra: Fix write barrier placement in pmx_writel + - powerpc/eeh: Clear stale EEH_DEV_NO_HANDLER flag + - vfio_pci: Restore original state on release + - drm/amdgpu/sdma5: fix number of sdma5 trap irq types for navi1x + - drm/nouveau/kms/tu102-: disable input lut when input is already FP16 + - drm/nouveau/volt: Fix for some cards having 0 maximum voltage + - pinctrl: amd: disable spurious-firing GPIO IRQs + - clk: renesas: mstp: Set GENPD_FLAG_ALWAYS_ON for clock domain + - clk: renesas: cpg-mssr: Set GENPD_FLAG_ALWAYS_ON for clock domain + - drm/amd/display: support spdif + - drm/amd/powerpaly: fix navi series custom peak level value error + - drm/amd/display: fix MPO HUBP underflow with Scatter Gather + - drm/amd/display: fix trigger not generated for freesync + - selftests/powerpc: Retry on host facility unavailable + - kbuild: Do not enable -Wimplicit-fallthrough for clang for now + - drm/amdgpu/si: fix ASIC tests + - powerpc/64s/exception: machine check use correct cfar for late handler + - pstore: fs superblock limits + - powerpc/eeh: Clean up EEH PEs after recovery finishes + - clk: qcom: gcc-sdm845: Use floor ops for sdcc clks + - powerpc/pseries: correctly track irq state in default idle + - pinctrl: meson-gxbb: Fix wrong pinning definition for uart_c + - mailbox: mediatek: cmdq: clear the event in cmdq initial flow + - ARM: dts: dir685: Drop spi-cpol from the display + - arm64: fix unreachable code issue with cmpxchg + - clk: at91: select parent if main oscillator or bypass is enabled + - clk: imx: pll14xx: avoid glitch when set rate + - clk: imx: clk-pll14xx: unbypass PLL by default + - clk: Make clk_bulk_get_all() return a valid "id" + - powerpc: dump kernel log before carrying out fadump or kdump + - mbox: qcom: add APCS child device for QCS404 + - clk: sprd: add missing kfree + - scsi: core: Reduce memory required for SCSI logging + - dma-buf/sw_sync: Synchronize signal vs syncpt free + - f2fs: fix to drop meta/node pages during umount + - ext4: fix potential use after free after remounting with noblock_validity + - MIPS: Ingenic: Disable broken BTB lookup optimization. + - MIPS: Don't use bc_false uninitialized in __mm_isBranchInstr + - MIPS: tlbex: Explicitly cast _PAGE_NO_EXEC to a boolean + - i2c-cht-wc: Fix lockdep warning + - PCI: tegra: Fix OF node reference leak + - HID: wacom: Fix several minor compiler warnings + - rtc: bd70528: fix driver dependencies + - mips/atomic: Fix loongson_llsc_mb() wreckage + - PCI: pci-hyperv: Fix build errors on non-SYSFS config + - PCI: layerscape: Add the bar_fixed_64bit property to the endpoint driver + - livepatch: Nullify obj->mod in klp_module_coming()'s error path + - mips/atomic: Fix smp_mb__{before,after}_atomic() + - ARM: 8898/1: mm: Don't treat faults reported from cache maintenance as + writes + - soundwire: intel: fix channel number reported by hardware + - PCI: mobiveil: Fix the CPU base address setup in inbound window + - ARM: 8875/1: Kconfig: default to AEABI w/ Clang + - rtc: snvs: fix possible race condition + - rtc: pcf85363/pcf85263: fix regmap error in set_time + - power: supply: register HWMON devices with valid names + - selinux: fix residual uses of current_security() for the SELinux blob + - PCI: Add pci_info_ratelimited() to ratelimit PCI separately + - HID: apple: Fix stuck function keys when using FN + - PCI: rockchip: Propagate errors for optional regulators + - PCI: histb: Propagate errors for optional regulators + - PCI: imx6: Propagate errors for optional regulators + - PCI: exynos: Propagate errors for optional PHYs + - security: smack: Fix possible null-pointer dereferences in + smack_socket_sock_rcv_skb() + - PCI: Use static const struct, not const static struct + - ARM: 8905/1: Emit __gnu_mcount_nc when using Clang 10.0.0 or newer + - ARM: 8903/1: ensure that usable memory in bank 0 starts from a PMD-aligned + address + - i2c: tegra: Move suspend handling to NOIRQ phase + - block, bfq: push up injection only after setting service time + - fat: work around race with userspace's read via blockdev while mounting + - pktcdvd: remove warning on attempting to register non-passthrough dev + - hypfs: Fix error number left in struct pointer member + - tools/power/x86/intel-speed-select: Fix high priority core mask over count + - crypto: hisilicon - Fix double free in sec_free_hw_sgl() + - mm: add dummy can_do_mlock() helper + - kbuild: clean compressed initramfs image + - ocfs2: wait for recovering done after direct unlock request + - kmemleak: increase DEBUG_KMEMLEAK_EARLY_LOG_SIZE default to 16K + - arm64: consider stack randomization for mmap base only when necessary + - mips: properly account for stack randomization and stack guard gap + - arm: properly account for stack randomization and stack guard gap + - arm: use STACK_TOP when computing mmap base address + - cxgb4:Fix out-of-bounds MSI-X info array access + - erspan: remove the incorrect mtu limit for erspan + - hso: fix NULL-deref on tty open + - ipv6: drop incoming packets having a v4mapped source address + - ipv6: Handle missing host route in __ipv6_ifa_notify + - net: ipv4: avoid mixed n_redirects and rate_tokens usage + - net: qlogic: Fix memory leak in ql_alloc_large_buffers + - net: sched: taprio: Fix potential integer overflow in + taprio_set_picos_per_byte + - net: Unpublish sk from sk_reuseport_cb before call_rcu + - nfc: fix memory leak in llcp_sock_bind() + - qmi_wwan: add support for Cinterion CLS8 devices + - rxrpc: Fix rxrpc_recvmsg tracepoint + - sch_cbq: validate TCA_CBQ_WRROPT to avoid crash + - sch_dsmark: fix potential NULL deref in dsmark_init() + - tipc: fix unlimited bundling of small messages + - udp: fix gso_segs calculations + - vsock: Fix a lockdep warning in __vsock_release() + - net: dsa: rtl8366: Check VLAN ID and not ports + - tcp: adjust rto_base in retransmits_timed_out() + - udp: only do GSO if # of segs > 1 + - net/rds: Fix error handling in rds_ib_add_one() + - net: dsa: sja1105: Initialize the meta_lock + - xen-netfront: do not use ~0U as error return value for xennet_fill_frags() + - net: dsa: sja1105: Fix sleeping while atomic in .port_hwtstamp_set + - ptp_qoriq: Initialize the registers' spinlock before calling + ptp_qoriq_settime + - net: dsa: sja1105: Ensure PTP time for rxtstamp reconstruction is not in the + past + - net: dsa: sja1105: Prevent leaking memory + - net: socionext: netsec: always grab descriptor lock + - net: sched: cbs: Avoid division by zero when calculating the port rate + - net: sched: taprio: Avoid division by zero on invalid link speed + - Smack: Don't ignore other bprm->unsafe flags if LSM_UNSAFE_PTRACE is set + - smack: use GFP_NOFS while holding inode_smack::smk_lock + - dm raid: fix updating of max_discard_sectors limit + - dm zoned: fix invalid memory access + - NFC: fix attrs checks in netlink interface + - kexec: bail out upon SIGKILL when allocating memory. + - KVM: hyperv: Fix Direct Synthetic timers assert an interrupt w/o + lapic_in_kernel + - 9p/cache.c: Fix memory leak in v9fs_cache_session_get_cookie + - vfs: set fs_context::user_ns for reconfigure + - Linux 5.3.5 + - [Config] add rtc-bd70528 to modules.ignore + - [Packaging] remove rtc-bd70528 from modules + * Suspend stopped working from 4.4.0-157 onwards (LP: #1844021) // Eoan + update: 5.3.7 upstream stable release (LP: #1848750) + - xhci: Increase STS_SAVE timeout in xhci_suspend() + * CVE-2019-17666 + - SAUCE: rtlwifi: Fix potential overflow on P2P code + * md raid0/linear doesn't show error state if an array member is removed and + allows successful writes (LP: #1847773) + - md raid0/linear: Mark array as 'broken' and fail BIOs if a member is gone + * linux won't build when new virtualbox version is present on the archive + (LP: #1848788) + - [Packaging]: download virtualbox from sources + * seccomp: add SECCOMP_USER_NOTIF_FLAG_CONTINUE (LP: #1847744) + - SAUCE: seccomp: add SECCOMP_USER_NOTIF_FLAG_CONTINUE + - SAUCE: seccomp: test SECCOMP_USER_NOTIF_FLAG_CONTINUE + * Change Config Option CONFIG_MEMORY_HOTPLUG_DEFAULT_ONLINE for s390x from yes + to no (LP: #1848492) + - [Config] Change Config Option CONFIG_MEMORY_HOTPLUG_DEFAULT_ONLINE for s390x + from yes to no + * shiftfs: rework how shiftfs opens files (LP: #1846265) + - SAUCE: shiftfs: rework how shiftfs opens files + * fdatasync performance regression on 5.0 kernels (LP: #1847641) + - blk-wbt: fix performance regression in wbt scale_up/scale_down + * bcache: Performance degradation when querying priority_stats (LP: #1840043) + - bcache: add cond_resched() in __bch_cache_cmp() + * drm/i915: Fix the issue of "azx_get_response timeout" for hdmi audio on ICL + platforms (LP: #1847192) + - SAUCE: drm/i915: Fix audio power up sequence for gen10+ display + - SAUCE: drm/i915: extend audio CDCLK>=2*BCLK constraint to more platforms + * Add installer support for iwlmvm adapters (LP: #1848236) + - d-i: Add iwlmvm to nic-modules + * Eoan update: v5.3.6 upstream stable release (LP: #1848039) + - s390/process: avoid potential reading of freed stack + - KVM: s390: Test for bad access register and size at the start of S390_MEM_OP + - s390/topology: avoid firing events before kobjs are created + - s390/cio: avoid calling strlen on null pointer + - s390/cio: exclude subchannels with no parent from pseudo check + - KVM: s390: fix __insn32_query() inline assembly + - KVM: PPC: Book3S: Enable XIVE native capability only if OPAL has required + functions + - KVM: PPC: Book3S HV: XIVE: Free escalation interrupts before disabling the + VP + - KVM: PPC: Book3S HV: Don't push XIVE context when not using XIVE device + - KVM: PPC: Book3S HV: Fix race in re-enabling XIVE escalation interrupts + - KVM: PPC: Book3S HV: Check for MMU ready on piggybacked virtual cores + - KVM: PPC: Book3S HV: Don't lose pending doorbell request on migration on P9 + - KVM: X86: Fix userspace set invalid CR4 + - nbd: fix max number of supported devs + - PM / devfreq: tegra: Fix kHz to Hz conversion + - ASoC: Define a set of DAPM pre/post-up events + - ASoC: sgtl5000: Improve VAG power and mute control + - powerpc/xive: Implement get_irqchip_state method for XIVE to fix shutdown + race + - powerpc/mce: Fix MCE handling for huge pages + - powerpc/mce: Schedule work from irq_work + - powerpc/603: Fix handling of the DIRTY flag + - powerpc/32s: Fix boot failure with DEBUG_PAGEALLOC without KASAN. + - powerpc/ptdump: Fix addresses display on PPC32 + - powerpc/powernv: Restrict OPAL symbol map to only be readable by root + - powerpc/pseries: Fix cpu_hotplug_lock acquisition in resize_hpt() + - powerpc/powernv/ioda: Fix race in TCE level allocation + - powerpc/kasan: Fix parallel loading of modules. + - powerpc/kasan: Fix shadow area set up for modules. + - powerpc/book3s64/mm: Don't do tlbie fixup for some hardware revisions + - powerpc/book3s64/radix: Rename CPU_FTR_P9_TLBIE_BUG feature flag + - powerpc/mm: Add a helper to select PAGE_KERNEL_RO or PAGE_READONLY + - powerpc/mm: Fix an Oops in kasan_mmu_init() + - powerpc/mm: Fixup tlbie vs mtpidr/mtlpidr ordering issue on POWER9 + - can: mcp251x: mcp251x_hw_reset(): allow more time after a reset + - tools lib traceevent: Fix "robust" test of do_generate_dynamic_list_file + - tools lib traceevent: Do not free tep->cmdlines in add_new_comm() on failure + - crypto: qat - Silence smp_processor_id() warning + - crypto: skcipher - Unmap pages after an external error + - crypto: cavium/zip - Add missing single_release() + - crypto: caam/qi - fix error handling in ERN handler + - crypto: caam - fix concurrency issue in givencrypt descriptor + - crypto: ccree - account for TEE not ready to report + - crypto: ccree - use the full crypt length value + - MIPS: Treat Loongson Extensions as ASEs + - power: supply: sbs-battery: use correct flags field + - power: supply: sbs-battery: only return health when battery present + - tracing: Make sure variable reference alias has correct var_ref_idx + - usercopy: Avoid HIGHMEM pfn warning + - timer: Read jiffies once when forwarding base clk + - PCI: vmd: Fix config addressing when using bus offsets + - PCI: hv: Avoid use of hv_pci_dev->pci_slot after freeing it + - PCI: vmd: Fix shadow offsets to reflect spec changes + - selftests/tpm2: Add the missing TEST_FILES assignment + - selftests: pidfd: Fix undefined reference to pthread_create() + - watchdog: imx2_wdt: fix min() calculation in imx2_wdt_set_timeout + - perf tools: Fix segfault in cpu_cache_level__read() + - perf stat: Fix a segmentation fault when using repeat forever + - drm/i915/dp: Fix dsc bpp calculations, v5. + - drm/atomic: Reject FLIP_ASYNC unconditionally + - drm/atomic: Take the atomic toys away from X + - drm: mali-dp: Mark expected switch fall-through + - drm/omap: fix max fclk divider for omap36xx + - drm/msm/dsi: Fix return value check for clk_get_parent + - drm/nouveau/kms/nv50-: Don't create MSTMs for eDP connectors + - drm/amd/powerplay: change metrics update period from 1ms to 100ms + - drm/i915/gvt: update vgpu workload head pointer correctly + - drm/i915: to make vgpu ppgtt notificaiton as atomic operation + - mac80211: keep BHs disabled while calling drv_tx_wake_queue() + - mmc: tegra: Implement ->set_dma_mask() + - mmc: sdhci: improve ADMA error reporting + - mmc: sdhci-of-esdhc: set DMA snooping based on DMA coherence + - mmc: sdhci: Let drivers define their DMA mask + - Revert "locking/pvqspinlock: Don't wait if vCPU is preempted" + - libnvdimm/altmap: Track namespace boundaries in altmap + - DTS: ARM: gta04: introduce legacy spi-cs-high to make display work again + - xen/balloon: Set pages PageOffline() in balloon_add_region() + - xen/xenbus: fix self-deadlock after killing user process + - ieee802154: atusb: fix use-after-free at disconnect + - nl80211: validate beacon head + - cfg80211: validate SSID/MBSSID element ordering assumption + - cfg80211: initialize on-stack chandefs + - drivers: thermal: qcom: tsens: Fix memory leak from qfprom read + - ima: always return negative code for error + - ima: fix freeing ongoing ahash_request + - fs: nfs: Fix possible null-pointer dereferences in encode_attrs() + - xprtrdma: Toggle XPRT_CONGESTED in xprtrdma's slot methods + - xprtrdma: Send Queue size grows after a reconnect + - 9p: Transport error uninitialized + - 9p: avoid attaching writeback_fid on mmap with type PRIVATE + - xen/pci: reserve MCFG areas earlier + - fuse: fix request limit + - ceph: fix directories inode i_blkbits initialization + - ceph: fetch cap_gen under spinlock in ceph_add_cap + - ceph: reconnect connection if session hang in opening state + - SUNRPC: RPC level errors should always set task->tk_rpc_status + - watchdog: aspeed: Add support for AST2600 + - netfilter: nf_tables: allow lookups in dynamic sets + - drm/amdgpu: Fix KFD-related kernel oops on Hawaii + - drm/amdgpu: Check for valid number of registers to read + - perf probe: Fix to clear tev->nargs in clear_probe_trace_event() + - pNFS: Ensure we do clear the return-on-close layout stateid on fatal errors + - SUNRPC: Don't try to parse incomplete RPC messages + - pwm: stm32-lp: Add check in case requested period cannot be achieved + - selftests/seccomp: fix build on older kernels + - x86/purgatory: Disable the stackleak GCC plugin for the purgatory + - ntb: point to right memory window index + - thermal: Fix use-after-free when unregistering thermal zone device + - thermal_hwmon: Sanitize thermal_zone type + - iommu/amd: Fix downgrading default page-sizes in alloc_pte() + - libnvdimm/region: Initialize bad block for volatile namespaces + - libnvdimm: Fix endian conversion issues + - fuse: fix memleak in cuse_channel_open + - libnvdimm/nfit_test: Fix acpi_handle redefinition + - sched/membarrier: Call sync_core only before usermode for same mm + - sched/membarrier: Fix private expedited registration check + - sched/core: Fix migration to invalid CPU in __set_cpus_allowed_ptr() + - perf build: Add detection of java-11-openjdk-devel package + - include/trace/events/writeback.h: fix -Wstringop-truncation warnings + - selftests/bpf: adjust strobemeta loop to satisfy latest clang + - kernel/elfcore.c: include proper prototypes + - libbpf: fix false uninitialized variable warning + - blk-mq: move lockdep_assert_held() into elevator_exit + - bpf: Fix bpf_event_output re-entry issue + - net: dsa: microchip: Always set regmap stride to 1 + - perf unwind: Fix libunwind build failure on i386 systems + - mlxsw: spectrum_flower: Fail in case user specifies multiple mirror actions + - nfp: abm: fix memory leak in nfp_abm_u32_knode_replace + - drm/radeon: Bail earlier when radeon.cik_/si_support=0 is passed + - Btrfs: fix selftests failure due to uninitialized i_mode in test inodes + - KVM: nVMX: Fix consistency check on injected exception error code + - tick: broadcast-hrtimer: Fix a race in bc_set_next + - perf stat: Reset previous counts on repeat with interval + - riscv: Avoid interrupts being erroneously enabled in handle_exception() + - vfs: Fix EOVERFLOW testing in put_compat_statfs64 + - coresight: etm4x: Use explicit barriers on enable/disable + - staging: erofs: fix an error handling in erofs_readdir() + - staging: erofs: some compressed cluster should be submitted for corrupted + images + - staging: erofs: add two missing erofs_workgroup_put for corrupted images + - staging: erofs: avoid endless loop of invalid lookback distance 0 + - staging: erofs: detect potential multiref due to corrupted images + - libnvdimm: prevent nvdimm from requesting key when security is disabled + - Linux 5.3.6 + * Eoan update: v5.3.4 upstream stable release (LP: #1848046) + - arcnet: provide a buffer big enough to actually receive packets + - cdc_ncm: fix divide-by-zero caused by invalid wMaxPacketSize + - macsec: drop skb sk before calling gro_cells_receive + - net/phy: fix DP83865 10 Mbps HDX loopback disable function + - net: qrtr: Stop rx_worker before freeing node + - net/sched: act_sample: don't push mac header on ip6gre ingress + - net_sched: add max len check for TCA_KIND + - net: stmmac: Fix page pool size + - nfp: flower: fix memory leak in nfp_flower_spawn_vnic_reprs + - nfp: flower: prevent memory leak in nfp_flower_spawn_phy_reprs + - openvswitch: change type of UPCALL_PID attribute to NLA_UNSPEC + - ppp: Fix memory leak in ppp_write + - sch_netem: fix a divide by zero in tabledist() + - selftests: Update fib_tests to handle missing ping6 + - skge: fix checksum byte order + - tcp_bbr: fix quantization code to not raise cwnd if not probing bandwidth + - usbnet: ignore endpoints with invalid wMaxPacketSize + - usbnet: sanity checking of packet sizes and device mtu + - net/rds: Check laddr_check before calling it + - net/mlx5e: Fix matching on tunnel addresses type + - ipv6: fix a typo in fib6_rule_lookup() + - selftests: Update fib_nexthop_multiprefix to handle missing ping6 + - net: phy: micrel: add Asym Pause workaround for KSZ9021 + - net/sched: cbs: Fix not adding cbs instance to list + - ipv4: Revert removal of rt_uses_gateway + - net_sched: add policy validation for action attributes + - vrf: Do not attempt to create IPv6 mcast rule if IPv6 is disabled + - net/mlx5e: Fix traffic duplication in ethtool steering + - net: sched: fix possible crash in tcf_action_destroy() + - tcp: better handle TCP_USER_TIMEOUT in SYN_SENT state + - net/mlx5: Add device ID of upcoming BlueField-2 + - ALSA: hda: Flush interrupts on disabling + - ASoC: SOF: Intel: hda: Make hdac_device device-managed + - cpufreq: ap806: Add NULL check after kcalloc + - ALSA: hda/hdmi - Don't report spurious jack state changes + - regulator: lm363x: Fix off-by-one n_voltages for lm3632 ldo_vpos/ldo_vneg + - regulator: lm363x: Fix n_voltages setting for lm36274 + - spi: dw-mmio: Clock should be shut when error occurs + - ASoC: tlv320aic31xx: suppress error message for EPROBE_DEFER + - ASoC: sgtl5000: Fix of unmute outputs on probe + - ASoC: sgtl5000: Fix charge pump source assignment + - firmware: qcom_scm: Use proper types for dma mappings + - dmaengine: bcm2835: Print error in case setting DMA mask fails + - leds: leds-lp5562 allow firmware files up to the maximum length + - ASoC: SOF: reset DMA state in prepare + - media: dib0700: fix link error for dibx000_i2c_set_speed + - media: mtk-cir: lower de-glitch counter for rc-mm protocol + - ASoC: SOF: pci: mark last_busy value at runtime PM init + - media: exynos4-is: fix leaked of_node references + - media: vivid:add sanity check to avoid divide error and set value to 1 if 0. + - media: vb2: reorder checks in vb2_poll() + - media: vivid: work around high stack usage with clang + - media: hdpvr: Add device num check and handling + - media: i2c: ov5640: Check for devm_gpiod_get_optional() error + - time/tick-broadcast: Fix tick_broadcast_offline() lockdep complaint + - sched/fair: Fix imbalance due to CPU affinity + - sched/core: Fix CPU controller for !RT_GROUP_SCHED + - x86/apic: Make apic_pending_intr_clear() more robust + - sched/deadline: Fix bandwidth accounting at all levels after offline + migration + - x86/reboot: Always use NMI fallback when shutdown via reboot vector IPI + fails + - rcu/tree: Call setschedule() gp ktread to SCHED_FIFO outside of atomic + region + - x86/apic: Soft disable APIC before initializing it + - ALSA: hda - Show the fatal CORB/RIRB error more clearly + - ALSA: i2c: ak4xxx-adda: Fix a possible null pointer dereference in + build_adc_controls() + - rcu: Add destroy_work_on_stack() to match INIT_WORK_ONSTACK() + - EDAC/mc: Fix grain_bits calculation + - arm64: dts: imx8mq: Correct OPP table according to latest datasheet + - media: iguanair: add sanity checks + - cpuidle: teo: Allow tick to be stopped if PM QoS is used + - gpio: madera: Add support for Cirrus Logic CS47L15 + - gpio: madera: Add support for Cirrus Logic CS47L92 + - arm64: mm: free the initrd reserved memblock in a aligned manner + - soc: amlogic: meson-clk-measure: protect measure with a mutex + - base: soc: Export soc_device_register/unregister APIs + - ALSA: usb-audio: Skip bSynchAddress endpoint check if it is invalid + - ia64:unwind: fix double free for mod->arch.init_unw_table + - EDAC/altera: Use the proper type for the IRQ status bits + - ASoC: rsnd: don't call clk_get_rate() under atomic context + - arm64/prefetch: fix a -Wtype-limits warning + - md/raid1: end bio when the device faulty + - md: don't call spare_active in md_reap_sync_thread if all member devices + can't work + - md: don't set In_sync if array is frozen + - media: media/platform: fsl-viu.c: fix build for MICROBLAZE + - media: staging: tegra-vde: Fix build error + - RAS: Build debugfs.o only when enabled in Kconfig + - ASoC: hdac_hda: fix page fault issue by removing race + - ACPI / processor: don't print errors for processorIDs == 0xff + - loop: Add LOOP_SET_DIRECT_IO to compat ioctl + - perf tools: Fix paths in include statements + - EDAC, pnd2: Fix ioremap() size in dnv_rd_reg() + - efi: cper: print AER info of PCIe fatal error + - firmware: arm_scmi: Check if platform has released shmem before using + - sched/fair: Use rq_lock/unlock in online_fair_sched_group + - idle: Prevent late-arriving interrupts from disrupting offline + - blk-mq: Fix memory leak in blk_mq_init_allocated_queue error handling + - media: gspca: zero usb_buf on error + - perf config: Honour $PERF_CONFIG env var to specify alternate .perfconfig + - perf test vfs_getname: Disable ~/.perfconfig to get default output + - media: mtk-mdp: fix reference count on old device tree + - media: i2c: tda1997x: prevent potential NULL pointer access + - media: fdp1: Reduce FCP not found message level to debug + - media: em28xx: modules workqueue not inited for 2nd device + - arm64/efi: Move variable assignments after SECTIONS + - perf unwind: Fix libunwind when tid != pid + - media: rc: imon: Allow iMON RC protocol for ffdc 7e device + - dmaengine: iop-adma: use correct printk format strings + - ARM: xscale: fix multi-cpu compilation + - perf record: Support aarch64 random socket_id assignment + - media: vsp1: fix memory leak of dl on error return path + - media: i2c: ov5645: Fix power sequence + - media: omap3isp: Don't set streaming state on random subdevs + - media: imx: mipi csi-2: Don't fail if initial state times-out + - kasan/arm64: fix CONFIG_KASAN_SW_TAGS && KASAN_INLINE + - net: lpc-enet: fix printk format strings + - m68k: Prevent some compiler warnings in Coldfire builds + - ARM: dts: imx7d: cl-som-imx7: make ethernet work again + - arm64: dts: qcom: qcs404-evb: Mark WCSS clocks protected + - ARM: dts: imx7-colibri: disable HS400 + - x86/platform/intel/iosf_mbi Rewrite locking + - media: radio/si470x: kill urb on error + - media: hdpvr: add terminating 0 at end of string + - ASoC: uniphier: Fix double reset assersion when transitioning to suspend + state + - powerpc/Makefile: Always pass --synthetic to nm if supported + - tools headers: Fixup bitsperlong per arch includes + - ASoC: sun4i-i2s: Don't use the oversample to calculate BCLK + - ASoC: mchp-i2s-mcc: Wait for RX/TX RDY only if controller is running + - led: triggers: Fix a memory leak bug + - ASoC: mchp-i2s-mcc: Fix unprepare of GCLK + - nbd: add missing config put + - ACPI / APEI: Release resources if gen_pool_add() fails + - arm64: entry: Move ct_user_exit before any other exception + - s390/kasan: provide uninstrumented __strlen + - media: mceusb: fix (eliminate) TX IR signal length limit + - media: dvb-frontends: use ida for pll number + - posix-cpu-timers: Sanitize bogus WARNONS + - media: dvb-core: fix a memory leak bug + - EDAC/amd64: Support more than two controllers for chip selects handling + - cpufreq: imx-cpufreq-dt: Add i.MX8MN support + - libperf: Fix alignment trap with xyarray contents in 'perf stat' + - EDAC/amd64: Recognize DRAM device type ECC capability + - EDAC/amd64: Decode syndrome before translating address + - ARM: at91: move platform-specific asm-offset.h to arch/arm/mach-at91 + - soc: renesas: rmobile-sysc: Set GENPD_FLAG_ALWAYS_ON for always-on domain + - soc: renesas: Enable ARM_ERRATA_754322 for affected Cortex-A9 + - PM / devfreq: Fix kernel oops on governor module load + - ARM: OMAP2+: move platform-specific asm-offset.h to arch/arm/mach-omap2 + - PM / devfreq: passive: Use non-devm notifiers + - PM / devfreq: exynos-bus: Correct clock enable sequence + - media: cec-notifier: clear cec_adap in cec_notifier_unregister + - media: saa7146: add cleanup in hexium_attach() + - media: cpia2_usb: fix memory leaks + - media: saa7134: fix terminology around saa7134_i2c_eeprom_md7134_gate() + - perf trace beauty ioctl: Fix off-by-one error in cmd->string table + - perf report: Fix --ns time sort key output + - perf script: Fix memory leaks in list_scripts() + - media: aspeed-video: address a protential usage of an unitialized var + - media: ov9650: add a sanity check + - leds: lm3532: Fixes for the driver for stability + - ASoC: es8316: fix headphone mixer volume table + - ACPI / CPPC: do not require the _PSD method + - sched/cpufreq: Align trace event behavior of fast switching + - arm64: dts: meson: fix boards regulators states format + - x86/apic/vector: Warn when vector space exhaustion breaks affinity + - arm64: kpti: ensure patched kernel text is fetched from PoU + - perf evlist: Use unshare(CLONE_FS) in sb threads to let setns(CLONE_NEWNS) + work + - arm64: Use correct ll/sc atomic constraints + - jump_label: Don't warn on __exit jump entries + - x86/mm/pti: Do not invoke PTI functions when PTI is disabled + - ASoC: fsl_ssi: Fix clock control issue in master mode + - x86/mm/pti: Handle unaligned address gracefully in pti_clone_pagetable() + - nvmet: fix data units read and written counters in SMART log + - nvme-multipath: fix ana log nsid lookup when nsid is not found + - ALSA: firewire-motu: add support for MOTU 4pre + - iommu/amd: Silence warnings under memory pressure + - ASoC: Intel: Haswell: Adjust machine device private context + - libata/ahci: Drop PCS quirk for Denverton and beyond + - iommu/iova: Avoid false sharing on fq_timer_on + - libtraceevent: Change users plugin directory + - ASoC: dt-bindings: sun4i-spdif: Fix dma-names warning + - ARM: dts: exynos: Mark LDO10 as always-on on Peach Pit/Pi Chromebooks + - x86/amd_nb: Add PCI device IDs for family 17h, model 70h + - ACPI: custom_method: fix memory leaks + - ACPI / PCI: fix acpi_pci_irq_enable() memory leak + - closures: fix a race on wakeup from closure_sync + - hwmon: (k10temp) Add support for AMD family 17h, model 70h CPUs + - hwmon: (acpi_power_meter) Change log level for 'unsafe software power cap' + - md/raid1: fail run raid1 array when active disk less than one + - dmaengine: ti: edma: Do not reset reserved paRAM slots + - kprobes: Prohibit probing on BUG() and WARN() address + - x86/mm: Fix cpumask_of_node() error condition + - irqchip/sifive-plic: set max threshold for ignored handlers + - s390/crypto: xts-aes-s390 fix extra run-time crypto self tests finding + - irqchip/gic-v3-its: Fix LPI release for Multi-MSI devices + - x86/cpu: Add Tiger Lake to Intel family + - platform/x86: intel_pmc_core: Do not ioremap RAM + - platform/x86: intel_pmc_core_pltdrv: Module removal warning fix + - ASoC: dmaengine: Make the pcm->name equal to pcm->id if the name is not set + - tools/power/x86/intel-speed-select: Fix memory leak + - spi: bcm2835: Work around DONE bit erratum + - io_uring: fix wrong sequence setting logic + - block: make rq sector size accessible for block stats + - raid5: don't set STRIPE_HANDLE to stripe which is in batch list + - mmc: core: Clarify sdio_irq_pending flag for MMC_CAP2_SDIO_IRQ_NOTHREAD + - sched/psi: Correct overly pessimistic size calculation + - mmc: sdhci: Fix incorrect switch to HS mode + - mmc: core: Add helper function to indicate if SDIO IRQs is enabled + - mmc: dw_mmc: Re-store SDIO IRQs mask at system resume + - raid5: don't increment read_errors on EILSEQ return + - mmc: mtk-sd: Re-store SDIO IRQs mask at system resume + - libertas: Add missing sentinel at end of if_usb.c fw_table + - ALSA: hda - Add a quirk model for fixing Huawei Matebook X right speaker + - ALSA: hda - Drop unsol event handler for Intel HDMI codecs + - drm/amd/powerplay/smu7: enforce minimal VBITimeout (v2) + - media: ttusb-dec: Fix info-leak in ttusb_dec_send_command() + - drm: fix module name in edid_firmware log message + - ALSA: hda/realtek - Blacklist PC beep for Lenovo ThinkCentre M73/93 + - zd1211rw: remove false assertion from zd_mac_clear() + - btrfs: delayed-inode: Kill the BUG_ON() in btrfs_delete_delayed_dir_index() + - btrfs: extent-tree: Make sure we only allocate extents from block groups + with the same type + - btrfs: tree-checker: Add ROOT_ITEM check + - btrfs: Detect unbalanced tree with empty leaf before crashing btree + operations + - kvm: Nested KVM MMUs need PAE root too + - media: omap3isp: Set device on omap3isp subdevs + - PM / devfreq: passive: fix compiler warning + - ARM: dts: logicpd-torpedo-baseboard: Fix missing video + - ARM: omap2plus_defconfig: Fix missing video + - iwlwifi: fw: don't send GEO_TX_POWER_LIMIT command to FW version 36 + - ALSA: firewire-tascam: handle error code when getting current source of + clock + - ALSA: firewire-tascam: check intermediate state of clock status and retry + - scsi: scsi_dh_rdac: zero cdb in send_mode_select() + - scsi: qla2xxx: Fix Relogin to prevent modifying scan_state flag + - printk: Do not lose last line in kmsg buffer dump + - IB/mlx5: Free mpi in mp_slave mode + - IB/hfi1: Define variables as unsigned long to fix KASAN warning + - IB/hfi1: Do not update hcrc for a KDETH packet during fault injection + - RDMA: Fix double-free in srq creation error flow + - randstruct: Check member structs in is_pure_ops_struct() + - ARM: dts: am3517-evm: Fix missing video + - rcu/tree: Fix SCHED_FIFO params + - ALSA: hda/realtek - PCI quirk for Medion E4254 + - blk-mq: add callback of .cleanup_rq + - scsi: implement .cleanup_rq callback + - powerpc/imc: Dont create debugfs files for cpu-less nodes + - tpm_tis_core: Turn on the TPM before probing IRQ's + - tpm_tis_core: Set TPM_CHIP_FLAG_IRQ before probing for interrupts + - tpm: Wrap the buffer from the caller to tpm_buf in tpm_send() + - fuse: fix deadlock with aio poll and fuse_iqueue::waitq.lock + - fuse: fix missing unlock_page in fuse_writepage() + - fuse: fix beyond-end-of-page access in fuse_parse_cache() + - parisc: Disable HP HSC-PCI Cards to prevent kernel crash + - platform/x86: intel_int0002_vgpio: Fix wakeups not working on Cherry Trail + - KVM: x86: always stop emulation on page fault + - KVM: x86: set ctxt->have_exception in x86_decode_insn() + - KVM: x86: Manually calculate reserved bits when loading PDPTRS + - KVM: x86: Disable posted interrupts for non-standard IRQs delivery modes + - kvm: x86: Add "significant index" flag to a few CPUID leaves + - KVM: x86/mmu: Use fast invalidate mechanism to zap MMIO sptes + - media: videobuf-core.c: poll_wait needs a non-NULL buf pointer + - media: sn9c20x: Add MSI MS-1039 laptop to flip_dmi_table + - media: hantro: Set DMA max segment size + - media: don't drop front-end reference count for ->detach + - media: vivid: fix device init when no_error_inj=1 and fb disabled + - spi: ep93xx: Repair SPI CS lookup tables + - spi: spi-fsl-dspi: Exit the ISR with IRQ_NONE when it's not ours + - binfmt_elf: Do not move brk for INTERP-less ET_EXEC + - ASoC: Intel: NHLT: Fix debug print format + - ASoC: Intel: Skylake: Use correct function to access iomem space + - ASoC: Intel: Fix use of potentially uninitialized variable + - staging: erofs: cannot set EROFS_V_Z_INITED_BIT if fill_inode_lazy fails + - ARM: samsung: Fix system restart on S3C6410 + - ARM: zynq: Use memcpy_toio instead of memcpy on smp bring-up + - arm64: tlb: Ensure we execute an ISB following walk cache invalidation + - arm64: dts: rockchip: limit clock rate of MMC controllers for RK3328 + - iommu/arm-smmu-v3: Disable detection of ATS and PRI + - alarmtimer: Use EOPNOTSUPP instead of ENOTSUPP + - iommu/vt-d: Fix wrong analysis whether devices share the same bus + - regulator: Defer init completion for a while after late_initcall + - efifb: BGRT: Improve efifb_bgrt_sanity_check + - gfs2: clear buf_in_tr when ending a transaction in sweep_bh_for_rgrps + - z3fold: fix retry mechanism in page reclaim + - z3fold: fix memory leak in kmem cache + - mm/compaction.c: clear total_{migrate,free}_scanned before scanning a new + zone + - memcg, oom: don't require __GFP_FS when invoking memcg OOM killer + - memcg, kmem: do not fail __GFP_NOFAIL charges + - lib/lzo/lzo1x_compress.c: fix alignment bug in lzo-rle + - mt76: round up length on mt76_wr_copy + - KEYS: trusted: correctly initialize digests and fix locking issue + - ath10k: fix channel info parsing for non tlv target + - i40e: check __I40E_VF_DISABLE bit in i40e_sync_filters_subtask + - block: mq-deadline: Fix queue restart handling + - block: fix null pointer dereference in blk_mq_rq_timed_out() + - smb3: allow disabling requesting leases + - smb3: fix unmount hang in open_shroot + - smb3: fix leak in "open on server" perf counter + - ovl: Fix dereferencing possible ERR_PTR() + - ovl: filter of trusted xattr results in audit + - btrfs: fix allocation of free space cache v1 bitmap pages + - Btrfs: fix use-after-free when using the tree modification log + - btrfs: Relinquish CPUs in btrfs_compare_trees + - btrfs: adjust dirty_metadata_bytes after writeback failure of extent buffer + - btrfs: qgroup: Fix the wrong target io_tree when freeing reserved data space + - btrfs: qgroup: Fix reserved data space leak if we have multiple reserve + calls + - Btrfs: fix race setting up and completing qgroup rescan workers + - btrfs: Fix a regression which we can't convert to SINGLE profile + - SUNRPC: Dequeue the request from the receive queue while we're re-encoding + - SUNRPC: Fix buffer handling of GSS MIC without slack + - ACPI / LPSS: Save/restore LPSS private registers also on Lynxpoint + - md/raid6: Set R5_ReadError when there is read failure on parity disk + - md: don't report active array_state until after revalidate_disk() completes. + - md: only call set_in_sync() when it is expected to succeed. + - cfg80211: Purge frame registrations on iftype change + - /dev/mem: Bail out upon SIGKILL. + - fs: Export generic_fadvise() + - mm: Handle MADV_WILLNEED through vfs_fadvise() + - xfs: Fix stale data exposure when readahead races with hole punch + - ipmi: move message error checking to avoid deadlock + - mtd: rawnand: stm32_fmc2: avoid warnings when building with W=1 option + - ext4: fix warning inside ext4_convert_unwritten_extents_endio + - ext4: fix punch hole for inline_data file systems + - quota: fix wrong condition in is_quota_modification() + - hwrng: core - don't wait on add_early_randomness() + - i2c: riic: Clear NACK in tend isr + - CIFS: fix max ea value size + - CIFS: Fix oplock handling for SMB 2.1+ protocols + - drm/amd/display: Restore backlight brightness after system resume + - drm/amd/display: dce11.x /dce12 update formula input + - drm/amd/display: Add missing HBM support and raise Vega20's uclk. + - drm/amdgpu/display: fix 64 bit divide + - md/raid0: avoid RAID0 data corruption due to layout confusion. + - mt76: mt7615: always release sem in mt7615_load_patch + - mt76: mt7615: fix mt7615 firmware path definitions + - platform/chrome: cros_ec_rpmsg: Fix race with host command when probe failed + - Linux 5.3.4 + * ELAN469D touch pad not working (LP: #1795292) // Ubuntu won't boot on Dell + Inspiron 7375 (LP: #1837688) // Eoan update: v5.3.4 upstream stable release + (LP: #1848046) + - iommu/amd: Override wrong IVRS IOAPIC on Raven Ridge systems + * Eoan update: v5.3.3 upstream stable release (LP: #1848045) + - Linux 5.3.2 + - Revert "Linux 5.3.2" + - Linux 5.3.3 + * Eoan update: v5.3.2 upstream stable release (LP: #1848042) + - netfilter: add missing IS_ENABLED(CONFIG_NF_TABLES) check to header-file. + - clocksource/drivers/timer-of: Do not warn on deferred probe + - clocksource/drivers: Do not warn on probe defer + - drm/amd/display: Allow cursor async updates for framebuffer swaps + - drm/amd/display: Skip determining update type for async updates + - drm/amd/display: Don't replace the dc_state for fast updates + - drm/amd/display: readd -msse2 to prevent Clang from emitting libcalls to + undefined SW FP routines + - powerpc/xive: Fix bogus error code returned by OPAL + - HID: prodikeys: Fix general protection fault during probe + - HID: sony: Fix memory corruption issue on cleanup. + - HID: logitech: Fix general protection fault caused by Logitech driver + - HID: logitech-dj: Fix crash when initial logi_dj_recv_query_paired_devices + fails + - HID: hidraw: Fix invalid read in hidraw_ioctl + - HID: Add quirk for HP X500 PIXART OEM mouse + - mtd: cfi_cmdset_0002: Use chip_good() to retry in do_write_oneword() + - crypto: talitos - fix missing break in switch statement + - clk: imx: imx8mm: fix audio pll setting + - Revert "mm/z3fold.c: fix race between migration and destruction" + - ALSA: usb-audio: Add Hiby device family to quirks for native DSD support + - ALSA: usb-audio: Add DSD support for EVGA NU Audio + - ALSA: dice: fix wrong packet parameter for Alesis iO26 + - ALSA: hda - Add laptop imic fixup for ASUS M9V laptop + - ALSA: hda - Apply AMD controller workaround for Raven platform + - platform/x86: i2c-multi-instantiate: Derive the device name from parent + - objtool: Clobber user CFLAGS variable + - Linux 5.3.2 + * Check for CPU Measurement sampling (LP: #1847590) + - s390/cpumsf: Check for CPU Measurement sampling + * revert the revert of ext4: make __ext4_get_inode_loc plug (LP: #1846486) + - random: try to actively add entropy rather than passively wait for it + - Revert "Revert "ext4: make __ext4_get_inode_loc plug"" + * Fix non-working Realtek USB ethernet after system resume (LP: #1847063) + - r8152: Set macpassthru in reset_resume callback + * overlayfs: allow with shiftfs as underlay (LP: #1846272) + - SAUCE: overlayfs: allow with shiftfs as underlay + * [regression] NoNewPrivileges incompatible with Apparmor (LP: #1844186) + - SAUCE: apparmor: fix nnp subset test for unconfined + * PM / hibernate: fix potential memory corruption (LP: #1847118) + - PM / hibernate: memory_bm_find_bit(): Tighten node optimisation + * Miscellaneous Ubuntu changes + - update dkms package versions + + -- Andrea Righi Thu, 24 Oct 2019 17:05:41 +0200 + +linux-azure (5.3.0-1004.4) eoan; urgency=medium + + * eoan/linux-azure: 5.3.0-1004.4 -proposed tracker (LP: #1848632) + + [ Ubuntu: 5.3.0-19.20 ] + + * eoan/linux: 5.3.0-19.20 -proposed tracker (LP: #1848648) + * eoan kernel does not contain "ipv6: do not free rt if FIB_LOOKUP_NOREF is + set on suppress rule" (LP: #1847478) + - ipv6: do not free rt if FIB_LOOKUP_NOREF is set on suppress rule + + -- Kleber Sacilotto de Souza Fri, 18 Oct 2019 13:33:57 +0200 + +linux-azure (5.3.0-1003.3) eoan; urgency=medium + + * eoan/linux-azure: 5.3.0-1003.3 -proposed tracker (LP: #1847292) + + * Use pyhon3-sphinx instead of python-sphinx for building html docs + (LP: #1845808) + - [Packaging] Update sphinx build dependencies to python3 packages + + * Add bpftool to linux-tools-common (LP: #1774815) + - [Debian] Enable bpftool in linux-tools + + * Miscellaneous Ubuntu changes + - update dkms package versions + + [ Ubuntu: 5.3.0-18.19 ] + + * eoan/linux: 5.3.0-18.19 -proposed tracker (LP: #1847298) + * Enable the Dragonboards out of Eoan/master arm64 kernel (LP: #1846704) + - [Packaging] arm64: snapdragon: introduce a snapdragon flavour + - [Packaging] arm64: snapdragon: switch kernel format to Image + - [Config] arm64: snapdragon: CONFIG_PINCTRL_MSM8916=y + - [Config] arm64: snapdragon: CONFIG_PINCTRL_MSM8994=y + - [Config] arm64: snapdragon: CONFIG_PINCTRL_MSM8996=y + - [Config] arm64: snapdragon: CONFIG_PINCTRL_MSM8998=y + - [Config] arm64: snapdragon: CONFIG_REGULATOR_QCOM_RPMH=y + - [Config] arm64: snapdragon: CONFIG_QCOM_BAM_DMA=y + - [Config] arm64: snapdragon: CONFIG_QCOM_HIDMA_MGMT=y + - [Config] arm64: snapdragon: CONFIG_QCOM_HIDMA=y + - [Config] arm64: snapdragon: CONFIG_COMMON_CLK_QCOM=y + - [Config] arm64: snapdragon: CONFIG_QCOM_CLK_RPMH=y + - [Config] arm64: snapdragon: CONFIG_MSM_GCC_8916=y + - [Config] arm64: snapdragon: CONFIG_MSM_GCC_8994=y + - [Config] arm64: snapdragon: CONFIG_MSM_MMCC_8996=y + - [Config] arm64: snapdragon: CONFIG_MSM_GCC_8998=y + - [Config] arm64: snapdragon: CONFIG_HWSPINLOCK_QCOM=y + - [Config] arm64: snapdragon: CONFIG_QCOM_APCS_IPC=y + - [Config] arm64: snapdragon: CONFIG_RPMSG_QCOM_GLINK_RPM=y + - [Config] arm64: snapdragon: CONFIG_QCOM_GENI_SE=y + - [Config] arm64: snapdragon: CONFIG_QCOM_SMEM=y + - [Config] arm64: snapdragon: CONFIG_QCOM_SMD_RPM=y + - [Config] arm64: snapdragon: CONFIG_QCOM_SMP2P=y + - [Config] arm64: snapdragon: CONFIG_QCOM_SMSM=y + - [Config] arm64: snapdragon: CONFIG_QCOM_QFPROM=y + - [Config] arm64: snapdragon: CONFIG_SERIAL_QCOM_GENI=y + - [Config] arm64: snapdragon: CONFIG_QCOM_TSENS=y + - [Config] arm64: snapdragon: CONFIG_REGULATOR_QCOM_SMD_RPM=y + - [Config] arm64: snapdragon: CONFIG_QCOM_CLK_SMD_RPM=y + - [Config] arm64: snapdragon: CONFIG_RPMSG_QCOM_SMD=y + - [Config] arm64: snapdragon: CONFIG_MFD_QCOM_RPM=y + - [Config] arm64: snapdragon: CONFIG_SCSI_UFSHCD=y + - [Config] arm64: snapdragon: CONFIG_SCSI_UFSHCD_PLATFORM=y + - [Config] arm64: snapdragon: CONFIG_SCSI_UFS_HISI=y + - [Config] arm64: snapdragon: CONFIG_MMC_SDHCI=y + - [Config] arm64: snapdragon: CONFIG_MMC_SDHCI_PLTFM=y + - [Config] arm64: snapdragon: CONFIG_MMC_SDHCI_MSM=y + - [Config] arm64: snapdragon: CONFIG_REGULATOR_QCOM_SPMI=y + - [Config] arm64: snapdragon: CONFIG_PINCTRL_QCOM_SPMI_PMIC=y + - [Config] arm64: snapdragon: CONFIG_PHY_QCOM_USB_HS=y + - [Config] arm64: snapdragon: CONFIG_PHY_QCOM_QMP=y + - [Config] arm64: snapdragon: CONFIG_PHY_QCOM_UFS=y + - [Config] arm64: snapdragon: CONFIG_PHY_QCOM_USB_HSIC=y + - [Config] arm64: snapdragon: CONFIG_USB_CHIPIDEA_OF=y + - [Config] arm64: snapdragon: CONFIG_USB_EHCI_HCD_PLATFORM=y + - [Config] arm64: snapdragon: CONFIG_EXTCON_USB_GPIO=y + - [Config] arm64: snapdragon: CONFIG_REGULATOR_FIXED_VOLTAGE=y + - [Config] arm64: snapdragon: CONFIG_LEDS_GPIO=y + - [Config] arm64: snapdragon: CONFIG_USB_HSIC_USB3503=y + - [Config] arm64: snapdragon: CONFIG_USB_NET_DRIVERS=y + - [Config] arm64: snapdragon: CONFIG_USB_OTG=y + - [Config] arm64: snapdragon: CONFIG_USB_XHCI_PLATFORM=y + - [Config] arm64: snapdragon: CONFIG_USB_OHCI_HCD_PLATFORM=y + - [Config] arm64: snapdragon: CONFIG_USB_MUSB_HDRC=y + - [Config] arm64: snapdragon: CONFIG_USB_DWC3=y + - [Config] arm64: snapdragon: CONFIG_USB_DWC3_PCI=y + - [Config] arm64: snapdragon: CONFIG_USB_DWC3_OF_SIMPLE=y + - [Config] arm64: snapdragon: CONFIG_USB_DWC3_QCOM=y + - [Config] arm64: snapdragon: CONFIG_LEDS_PWM=y + - [Config] arm64: snapdragon: CONFIG_LEDS_TRIGGER_HEARTBEAT=y + - [Config] arm64: snapdragon: CONFIG_LEDS_TRIGGER_DEFAULT_ON=y + - [Config] arm64: snapdragon: CONFIG_QCOM_A53PLL=y + - [Config] arm64: snapdragon: CONFIG_QCOM_CLK_APCS_MSM8916=y + - [Config] arm64: snapdragon: CONFIG_NLS_ISO8859_1=y + - [Config] arm64: snapdragon: CONFIG_USB_USBNET=y + - [Config] arm64: snapdragon: CONFIG_CRYPTO_DEV_QCOM_RNG=y + - [Config] arm64: snapdragon: CONFIG_POWER_RESET_QCOM_PON=y + - [Config] arm64: snapdragon: CONFIG_INPUT_PM8941_PWRKEY=y + - [Config] arm64: snapdragon: CONFIG_KEYBOARD_GPIO=y + - [Config] arm64: snapdragon: CONFIG_RTC_DRV_PM8XXX=y + + -- Paolo Pisati Thu, 10 Oct 2019 11:14:34 +0200 + +linux-azure (5.3.0-1002.2) eoan; urgency=medium + + * Miscellaneous Ubuntu changes + - [Packaging]: really ignore modules + + -- Thadeu Lima de Souza Cascardo Fri, 04 Oct 2019 15:50:48 -0300 + +linux-azure (5.3.0-1001.1) eoan; urgency=medium + + * eoan/linux-azure: 5.3.0-1001.1 -proposed tracker (LP: #1846616) + + * CONFIG_LSM should not specify loadpin since it is not built (LP: #1845383) + - [Config] loadpin shouldn't be in CONFIG_LSM + + * Packaging resync (LP: #1786013) + - [Packaging] update update.conf + + * Miscellaneous Ubuntu changes + - [Config]: Update config based on master + - [Config]: CONFIG_INTEGRITY_PLATFORM_KEYRING=y + - SAUCE: temporarily disable vmbus-rdma + + [ Ubuntu: 5.3.0-17.18 ] + + * eoan/linux: 5.3.0-17.18 -proposed tracker (LP: #1846641) + * CVE-2019-17056 + - nfc: enforce CAP_NET_RAW for raw sockets + * CVE-2019-17055 + - mISDN: enforce CAP_NET_RAW for raw sockets + * CVE-2019-17054 + - appletalk: enforce CAP_NET_RAW for raw sockets + * CVE-2019-17053 + - ieee802154: enforce CAP_NET_RAW for raw sockets + * CVE-2019-17052 + - ax25: enforce CAP_NET_RAW for raw sockets + * CVE-2019-15098 + - ath6kl: fix a NULL-ptr-deref bug in ath6kl_usb_alloc_urb_from_pipe() + * xHCI on AMD Stoney Ridge cannot detect USB 2.0 or 1.1 devices. + (LP: #1846470) + - x86/PCI: Avoid AMD FCH XHCI USB PME# from D0 defect + * Re-enable linux-libc-dev build on i386 (LP: #1846508) + - [Packaging] Build only linux-libc-dev for i386 + - [Debian] final-checks -- ignore archtictures with no binaries + * arm64: loop on boot after installing linux-generic-hwe-18.04-edge/bionic- + proposed (LP: #1845820) + - [Config] Disable CONFIG_ARM_SMMU_DISABLE_BYPASS_BY_DEFAULT + * Revert ESE DASD discard support (LP: #1846219) + - SAUCE: Revert "s390/dasd: Add discard support for ESE volumes" + * Miscellaneous Ubuntu changes + - update dkms package versions + + [ Ubuntu: 5.3.0-16.17 ] + + * eoan/linux: 5.3.0-16.17 -proposed tracker (LP: #1846204) + * zfs fails to build on s390x with debug symbols enabled (LP: #1846143) + - SAUCE: s390: Mark atomic const ops always inline + + [ Ubuntu: 5.3.0-15.16 ] + + * eoan/linux: 5.3.0-15.16 -proposed tracker (LP: #1845987) + * Drop i386 build for 19.10 (LP: #1845714) + - [Packaging] Remove x32 arch references from control files + - [Debian] final-checks -- Get arch list from debian/control + * ZFS kernel modules lack debug symbols (LP: #1840704) + - [Debian] Fix conditional for setting zfs debug package path + * Use pyhon3-sphinx instead of python-sphinx for building html docs + (LP: #1845808) + - [Packaging] Update sphinx build dependencies to python3 packages + * Kernel panic with 19.10 beta image (LP: #1845454) + - efi/tpm: Don't access event->count when it isn't mapped. + - efi/tpm: don't traverse an event log with no events + - efi/tpm: only set efi_tpm_final_log_size after successful event log parsing + + [ Ubuntu: 5.3.0-14.15 ] + + * eoan/linux: 5.3.0-14.15 -proposed tracker (LP: #1845728) + * Drop i386 build for 19.10 (LP: #1845714) + - [Debian] Remove support for producing i386 kernels + - [Debian] Don't use CROSS_COMPILE for i386 configs + * udevadm trigger will fail when trying to add /sys/devices/vio/ + (LP: #1845572) + - SAUCE: powerpc/vio: drop bus_type from parent device + * Trying to online dasd drive results in invalid input/output from the kernel + on z/VM (LP: #1845323) + - SAUCE: s390/dasd: Fix error handling during online processing + * intel-lpss driver conflicts with write-combining MTRR region (LP: #1845584) + - SAUCE: mfd: intel-lpss: add quirk for Dell XPS 13 7390 2-in-1 + * Support Hi1620 zip hw accelerator (LP: #1845355) + - [Config] Enable HiSilicon QM/ZIP as modules + - crypto: hisilicon - add queue management driver for HiSilicon QM module + - crypto: hisilicon - add hardware SGL support + - crypto: hisilicon - add HiSilicon ZIP accelerator support + - crypto: hisilicon - add SRIOV support for ZIP + - Documentation: Add debugfs doc for hisi_zip + - crypto: hisilicon - add debugfs for ZIP and QM + - MAINTAINERS: add maintainer for HiSilicon QM and ZIP controller driver + - crypto: hisilicon - fix kbuild warnings + - crypto: hisilicon - add dependency for CRYPTO_DEV_HISI_ZIP + - crypto: hisilicon - init curr_sgl_dma to fix compile warning + - crypto: hisilicon - add missing single_release + - crypto: hisilicon - fix error handle in hisi_zip_create_req_q + - crypto: hisilicon - Fix warning on printing %p with dma_addr_t + - crypto: hisilicon - Fix return value check in hisi_zip_acompress() + - crypto: hisilicon - avoid unused function warning + * SafeSetID LSM should be built but disabled by default (LP: #1845391) + - LSM: SafeSetID: Stop releasing uninitialized ruleset + - [Config] Build SafeSetID LSM but don't enable it by default + * CONFIG_LSM should not specify loadpin since it is not built (LP: #1845383) + - [Config] loadpin shouldn't be in CONFIG_LSM + * Add new pci-id's for CML-S, ICL (LP: #1845317) + - drm/i915/icl: Add missing device ID + - drm/i915/cml: Add Missing PCI IDs + * Thunderbolt support for ICL (LP: #1844680) + - thunderbolt: Correct path indices for PCIe tunnel + - thunderbolt: Move NVM upgrade support flag to struct icm + - thunderbolt: Use 32-bit writes when writing ring producer/consumer + - thunderbolt: Do not fail adding switch if some port is not implemented + - thunderbolt: Hide switch attributes that are not set + - thunderbolt: Expose active parts of NVM even if upgrade is not supported + - thunderbolt: Add support for Intel Ice Lake + - ACPI / property: Add two new Thunderbolt property GUIDs to the list + * Ubuntu 19.10 - Additional PCI patch and fix (LP: #1844668) + - s390/pci: fix MSI message data + * Enhanced Hardware Support - Finalize Naming (LP: #1842774) + - s390: add support for IBM z15 machines + - [Config] CONFIG_MARCH_Z15=n, CONFIG_TUNE_Z15=n + * Eoan update: v5.3.1 upstream stable release (LP: #1845642) + - USB: usbcore: Fix slab-out-of-bounds bug during device reset + - media: tm6000: double free if usb disconnect while streaming + - phy: renesas: rcar-gen3-usb2: Disable clearing VBUS in over-current + - ip6_gre: fix a dst leak in ip6erspan_tunnel_xmit + - net/sched: fix race between deactivation and dequeue for NOLOCK qdisc + - net_sched: let qdisc_put() accept NULL pointer + - udp: correct reuseport selection with connected sockets + - xen-netfront: do not assume sk_buff_head list is empty in error handling + - net: dsa: Fix load order between DSA drivers and taggers + - net: stmmac: Hold rtnl lock in suspend/resume callbacks + - KVM: coalesced_mmio: add bounds checking + - Documentation: sphinx: Add missing comma to list of strings + - firmware: google: check if size is valid when decoding VPD data + - serial: sprd: correct the wrong sequence of arguments + - tty/serial: atmel: reschedule TX after RX was started + - nl80211: Fix possible Spectre-v1 for CQM RSSI thresholds + - Revert "arm64: Remove unnecessary ISBs from set_{pte,pmd,pud}" + - ovl: fix regression caused by overlapping layers detection + - phy: qcom-qmp: Correct ready status, again + - floppy: fix usercopy direction + - media: technisat-usb2: break out of loop at end of buffer + - Linux 5.3.1 + * ZFS kernel modules lack debug symbols (LP: #1840704) + - [Debian]: Remove hardcoded $(pkgdir) in debug symbols handling + - [Debian]: Handle debug symbols for modules in extras too + - [Debian]: Check/link modules with debug symbols after DKMS modules + - [Debian]: Warn about modules without debug symbols + - [Debian]: dkms-build: new parameter for debug package directory + - [Debian]: dkms-build: zfs: support for debug symbols + - [Debian]: dkms-build: Avoid executing post-processor scripts twice + - [Debian]: dkms-build: Move zfs special-casing into configure script + * /proc/self/maps paths missing on live session (was vlc won't start; eoan + 19.10 & bionic 18.04 ubuntu/lubuntu/kubuntu/xubuntu/ubuntu-mate dailies) + (LP: #1842382) + - SAUCE: Revert "UBUNTU: SAUCE: shiftfs: enable overlayfs on shiftfs" + + [ Ubuntu: 5.3.0-13.14 ] + + * eoan/linux: 5.3.0-13.14 -proposed tracker (LP: #1845105) + * Packaging resync (LP: #1786013) + - [Packaging] update helper scripts + * Miscellaneous Ubuntu changes + - [Debian] Remove binutils-dev build dependency + + [ Ubuntu: 5.3.0-12.13 ] + + * Change kernel compression method to improve boot speed (LP: #1840934) + - [Packaging] Add lz4 build dependency for s390x + * Miscellaneous Ubuntu changes + - SAUCE: Remove spl and zfs source + + [ Ubuntu: 5.3.0-11.12 ] + + * eoan/linux: 5.3.0-11.12 -proposed tracker (LP: #1844144) + * Suspend to RAM(S3) does not wake up for latest megaraid and mpt3sas + adapters(SAS3.5 onwards) (LP: #1838751) + - PCI: Restore Resizable BAR size bits correctly for 1MB BARs + * s390/setup: Actually init kernel lock down (LP: #1843961) + - SAUCE: (lockdown) s390/setup: Actually init kernel lock down + * cherrypick has_sipl fix (LP: #1843960) + - SAUCE: s390/sclp: Fix bit checked for has_sipl + * Change kernel compression method to improve boot speed (LP: #1840934) + - [Config]: Switch kernel compression from LZO to LZ4 on s390x + * Installation fails on eoan/PowerVM : missing /dev/nvram (LP: #1837726) + - [Config] CONFIG_NVRAM=y for ppc64el + * Miscellaneous Ubuntu changes + - [Config]: remove nvram from ppc64el modules ABI + - [Config] Update annotations for recent config changes + - SAUCE: sched: Add __ASSEMBLY__ guards around struct clone_args + - SAUCE: i2c: qcom-geni: Disable DMA processing on the Lenovo Yoga C630 + - SAUCE: arm64: dts: qcom: Add Lenovo Yoga C630 + - update dkms package versions + * Rebase to v5.3 + + [ Ubuntu: 5.3.0-10.11 ] + + * eoan/linux: 5.3.0-10.11 -proposed tracker (LP: #1843232) + * No sound inputs from the external microphone and headset on a Dell machine + (LP: #1842265) + - SAUCE: ALSA: hda - Expand pin_match function to match upcoming new tbls + - SAUCE: ALSA: hda - Define a fallback_pin_fixup_tbl for alc269 family + * Horizontal corrupted line at top of screen caused by framebuffer compression + (LP: #1840236) + - SAUCE: drm/i915/fbc: disable framebuffer compression on IceLake + * Add bpftool to linux-tools-common (LP: #1774815) + - [Debian] package bpftool in linux-tools-common + * Miscellaneous Ubuntu changes + - update dkms package versions + * Rebase to v5.3-rc8 + + [ Ubuntu: 5.3.0-9.10 ] + + * eoan/linux: 5.3.0-9.10 -proposed tracker (LP: #1842393) + * shiftfs: mark kmem_cache as reclaimable (LP: #1842059) + - SAUCE: shiftfs: mark slab objects SLAB_RECLAIM_ACCOUNT + * shiftfs: drop entries from cache on unlink (LP: #1841977) + - SAUCE: shiftfs: fix buggy unlink logic + * Fix touchpad IRQ storm after S3 (LP: #1841396) + - pinctrl: intel: remap the pin number to gpio offset for irq enabled pin + * Please include DTBs for arm64 laptops (LP: #1842050) + - arm64: dts: qcom: Add Lenovo Miix 630 + - arm64: dts: qcom: Add HP Envy x2 + - arm64: dts: qcom: Add Asus NovaGo TP370QL + * Miscellaneous Ubuntu changes + - SAUCE: import aufs driver + - [Packaging]: ignore vbox modules when vbox is disabled + * Rebase to v5.3-rc7 + + [ Ubuntu: 5.3.0-8.9 ] + + * Packaging resync (LP: #1786013) + - [Packaging] resync getabis + * Change kernel compression method to improve boot speed (LP: #1840934) + - [Config] change kernel compression method to improve boot speed + - [Packaging] add build dependencies for compression algorithms + * realtek r8822be kernel module fails after update to linux kernel-headers + 5.0.0-21 (LP: #1838133) + - rtw88: Fix misuse of GENMASK macro + - rtw88: pci: Rearrange the memory usage for skb in RX ISR + - rtw88: pci: Use DMA sync instead of remapping in RX ISR + - rtw88: debug: dump tx power indexes in use + - rtw88: use txpwr_lmt_cfg_pair struct, not arrays + - rtw88: pci: remove set but not used variable 'ip_sel' + - rtw88: allow c2h operation in irq context + - rtw88: enclose c2h cmd handle with mutex + - rtw88: add BT co-existence support + - SAUCE: rtw88: pci: enable MSI interrupt + * VIMC module not available (CONFIG_VIDEO_VIMC not set) (LP: #1831482) + - [Config] Enable VIMC module + * Goodix touchpad may drop first input event (LP: #1840075) + - Revert "UBUNTU: SAUCE: i2c: designware: add G3 3590 into i2c quirk" + - Revert "UBUNTU: SAUCE: i2c: designware: add Inpiron 7591 into i2c quirk" + - Revert "UBUNTU: SAUCE: i2c: designware: add Inpiron/Vostro 7590 into i2c + quirk" + - Revert "UBUNTU: SAUCE: i2c: designware: Add disable runtime pm quirk" + - mfd: intel-lpss: Remove D3cold delay + * Include Sunix serial/parallel driver (LP: #1826716) + - serial: 8250_pci: Add support for Sunix serial boards + - parport: parport_serial: Add support for Sunix Multi I/O boards + * enable lockdown on s390x when Secure IPL is performed (LP: #1839622) + - SAUCE: (lockdown) s390/ipl: lockdown kernel when booted secure + - Ubuntu: [Config] Enable CONFIG_LOCK_DOWN_KERNEL on s390x. + * UBUNTU: SAUCE: shiftfs: pass correct point down (LP: #1837231) + - SAUCE: shiftfs: pass correct point down + * shiftfs: add O_DIRECT support (LP: #1837223) + - SAUCE: shiftfs: add O_DIRECT support + * Miscellaneous Ubuntu changes + - [Config] enable secureboot signing on s390x + - [Config] CONFIG_TEST_BLACKHOLE_DEV=m + - SAUCE: selftests: fib_tests: assign address to dummy1 for rp_filter tests + - [Debian] disable dkms builds for autopktest rebuilds + - update dkms package versions + - [Config] updateconfigs after v5.3-rc6 rebase + * Rebase to v5.3-rc5 + + [ Ubuntu: 5.3.0-7.8 ] + + * Packaging resync (LP: #1786013) + - [Packaging] resync getabis + * Miscellaneous Ubuntu changes + - [Config] updateconfigs after v5.3-rc5 rebase + - remove missing module after updateconfigs + * Rebase to v5.3-rc5 + + [ Ubuntu: 5.3.0-6.7 ] + + * Miscellaneous Ubuntu changes + - SAUCE: selftests/bpf: prevent headers to be compiled as C code + + [ Ubuntu: 5.3.0-5.6 ] + + * Miscellaneous Ubuntu changes + - update dkms package versions + - [Config] enable zfs build + + [ Ubuntu: 5.3.0-4.5 ] + + * Packaging resync (LP: #1786013) + - [Packaging] resync getabis + - [Packaging] update helper scripts + * bcache: bch_allocator_thread(): hung task timeout (LP: #1784665) // Tight + timeout for bcache removal causes spurious failures (LP: #1796292) + - SAUCE: bcache: fix deadlock in bcache_allocator + * shiftfs: allow overlayfs (LP: #1838677) + - SAUCE: shiftfs: enable overlayfs on shiftfs + * Miscellaneous Ubuntu changes + - SAUCE: Revert "kbuild: modpost: do not parse unnecessary rules for vmlinux + modpost" + - update dkms package versions + - enable nvidia dkms build + * Rebase to v5.3-rc4 + + [ Ubuntu: 5.3.0-3.4 ] + + * Miscellaneous Ubuntu changes + - update dkms package versions + - SAUCE: aufs: add "WITH Linux-syscall-note" to SPDX tag of uapi headers + - [Config] add mux-* to modules.ignore + * Rebase to v5.3-rc3 + + [ Ubuntu: 5.3.0-2.3 ] + + * Miscellaneous Ubuntu changes + - [Packaging] add build dependincy on fontconfig + + [ Ubuntu: 5.3.0-1.2 ] + + * System does not auto detect disconnection of external monitor (LP: #1835001) + - SAUCE: drm/i915: Add support for retrying hotplug + - SAUCE: drm/i915: Enable hotplug retry + * Please enable CONFIG_SCSI_UFS_QCOM as a module on arm64 (LP: #1837332) + - [Config] Enable CONFIG_SCSI_UFS_QCOM as a module on arm64. + * Add arm64 CONFIG_ARCH_MESON=y and related configs Edit (LP: #1820530) + - [Config] enable ARCH_MESON + - remove missing module + - [Config] update annotations after enabling ARCH_MESON for arm64 + * Miscellaneous Ubuntu changes + - SAUCE: KVM: PPC: comment implicit fallthrough + - update dkms package versions + - [Config] enable vbox dkms build + * Rebase to v5.3-rc2 + + [ Ubuntu: 5.3.0-0.1 ] + + * Packaging resync (LP: #1786013) + - [Packaging] resync git-ubuntu-log + * Miscellaneous Ubuntu changes + - SAUCE: (efi-lockdown) Add the ability to lock down access to the running + kernel image + - SAUCE: (efi-lockdown) Enforce module signatures if the kernel is locked down + - SAUCE: (efi-lockdown) Restrict /dev/{mem,kmem,port} when the kernel is + locked down + - SAUCE: (efi-lockdown) kexec_load: Disable at runtime if the kernel is locked + down + - SAUCE: (efi-lockdown) Copy secure_boot flag in boot params across kexec + reboot + - SAUCE: (efi-lockdown) kexec_file: split KEXEC_VERIFY_SIG into KEXEC_SIG and + KEXEC_SIG_FORCE + - SAUCE: (efi-lockdown) kexec_file: Restrict at runtime if the kernel is + locked down + - SAUCE: (efi-lockdown) hibernate: Disable when the kernel is locked down + - SAUCE: (efi-lockdown) uswsusp: Disable when the kernel is locked down + - SAUCE: (efi-lockdown) PCI: Lock down BAR access when the kernel is locked + down + - SAUCE: (efi-lockdown) x86: Lock down IO port access when the kernel is + locked down + - SAUCE: (efi-lockdown) x86/msr: Restrict MSR access when the kernel is locked + down + - SAUCE: (efi-lockdown) ACPI: Limit access to custom_method when the kernel is + locked down + - SAUCE: (efi-lockdown) acpi: Ignore acpi_rsdp kernel param when the kernel + has been locked down + - SAUCE: (efi-lockdown) acpi: Disable ACPI table override if the kernel is + locked down + - SAUCE: (efi-lockdown) acpi: Disable APEI error injection if the kernel is + locked down + - SAUCE: (efi-lockdown) Prohibit PCMCIA CIS storage when the kernel is locked + down + - SAUCE: (efi-lockdown) Lock down TIOCSSERIAL + - SAUCE: (efi-lockdown) Lock down module params that specify hardware + parameters (eg. ioport) + - SAUCE: (efi-lockdown) x86/mmiotrace: Lock down the testmmiotrace module + - SAUCE: (efi-lockdown) Lock down /proc/kcore + - SAUCE: (efi-lockdown) Lock down kprobes + - SAUCE: (efi-lockdown) bpf: Restrict kernel image access functions when the + kernel is locked down + - SAUCE: (efi-lockdown) Lock down perf + - SAUCE: (efi-lockdown) debugfs: Restrict debugfs when the kernel is locked + down + - SAUCE: (efi-lockdown) lockdown: Print current->comm in restriction messages + - SAUCE: (efi-lockdown) kexec: Allow kexec_file() with appropriate IMA policy + when locked down + - SAUCE: (efi-lockdown) Add a SysRq option to lift kernel lockdown + - SAUCE: (efi-lockdown) debugfs: avoid EPERM when no open file operation + defined + - SAUCE: (efi-lockdown) Make get_cert_list() not complain about cert lists + that aren't present. + - SAUCE: (efi-lockdown) Add efi_status_to_str() and rework + efi_status_to_err(). + - SAUCE: (efi-lockdown) Make get_cert_list() use efi_status_to_str() to print + error messages. + - SAUCE: (efi-lockdown) efi: Add an EFI_SECURE_BOOT flag to indicate secure + boot mode + - SAUCE: (efi-lockdown) efi: Lock down the kernel if booted in secure boot + mode + - SAUCE: (efi-lockdown) KEYS: Make use of platform keyring for module + signature verify + - SAUCE: (efi-lockdown) efi: Sanitize boot_params in efi stub + - SAUCE: (efi-lockdown) furter KEXEC_VERIFY_SIG -> KEXEC_SIG updates + - SAUCE: (efi-lockdown) arm64: add kernel config option to lock down when in + Secure Boot mode + - SAUCE: import aufs driver + - SAUCE: aufs: rwsem owner changed to atmoic_long_t in 5.3 + - [Config] disable zfs dkms build + - [Config] disable nvidia dkms build + - [Config] disable vbox dkms build + - SAUCE: perf diff: use llabs for s64 vaules + * Rebase to v5.3-rc1 + + [ Ubuntu: 5.3.0-0.0 ] + + * Dummy entry. + + [ Ubuntu: 5.2.0-9.10 ] + + * Packaging resync (LP: #1786013) + - [Packaging] update helper scripts + * input/mouse: alps trackpoint-only device doesn't work (LP: #1836752) + - SAUCE: Input: alps - don't handle ALPS cs19 trackpoint-only device + - SAUCE: Input: alps - fix a mismatch between a condition check and its + comment + * System does not auto detect disconnection of external monitor (LP: #1835001) + - SAUCE: drm/i915: Add support for retrying hotplug + - SAUCE: drm/i915: Enable hotplug retry + * alsa/hdmi: add icelake hdmi audio support for a Dell machine (LP: #1836916) + - SAUCE: ALSA: hda/hdmi - Remove duplicated define + - SAUCE: ALSA: hda/hdmi - Fix i915 reverse port/pin mapping + * First click on Goodix touchpad doesn't be recognized after runtime suspended + (LP: #1836836) + - SAUCE: i2c: designware: add G3 3590 into i2c quirk + * ixgbe{vf} - Physical Function gets IRQ when VF checks link state + (LP: #1836760) + - ixgbevf: Use cached link state instead of re-reading the value for ethtool + * Doing multiple squashfs (and other loop?) mounts in parallel breaks + (LP: #1836914) + - SAUCE: Revert "loop: Don't change loop device under exclusive opener" + * hibmc-drm Causes Unreadable Display for Huawei amd64 Servers (LP: #1762940) + - SAUCE: Make CONFIG_DRM_HISI_HIBMC depend on ARM64 + - [Config] Set CONFIG_DRM_HISI_HIBMC to arm64 only + - [Config] add hibmc-drm to modules.ignore + * hda/realtek: can't detect external mic on a Dell machine (LP: #1836755) + - ALSA: hda/realtek: apply ALC891 headset fixup to one Dell machine + * Enable Armada SOCs and MVPP2 NIC driver for disco/generic arm64 + (LP: #1835054) + - [Config] Enable Armada SOCs and MVPP2 NIC driver for disco/generic arm64 + * Unhide Nvidia HDA audio controller (LP: #1836308) + - PCI: Enable NVIDIA HDA controllers + * Intel ethernet I219 may wrongly detect connection speed as 10Mbps + (LP: #1836177) + - e1000e: Make watchdog use delayed work + * Sometimes touchpad(goodix) can't use tap function (LP: #1836020) + - SAUCE: i2c: designware: add Inpiron/Vostro 7590 into i2c quirk + - SAUCE: i2c: designware: add Inpiron 7591 into i2c quirk + * Intel ethernet I219 has slow RX speed (LP: #1836152) + - e1000e: add workaround for possible stalled packet + - e1000e: disable force K1-off feature + * bcache: risk of data loss on I/O errors in backing or caching devices + (LP: #1829563) + - Revert "bcache: set CACHE_SET_IO_DISABLE in bch_cached_dev_error()" + * bnx2x driver causes 100% CPU load (LP: #1832082) + - bnx2x: Prevent ptp_task to be rescheduled indefinitely + * fcf-protection=none patch with new version + - Revert "UBUNTU: SAUCE: kbuild: add -fcf-protection=none to retpoline flags" + - SAUCE: kbuild: add -fcf-protection=none when using retpoline flags + * CVE-2019-12614 + - powerpc/pseries/dlpar: Fix a missing check in dlpar_parse_cc_property() + * Eoan update: v5.2.1 upstream stable release (LP: #1836622) + - crypto: lrw - use correct alignmask + - crypto: talitos - rename alternative AEAD algos. + - fscrypt: don't set policy for a dead directory + - udf: Fix incorrect final NOT_ALLOCATED (hole) extent length + - media: stv0297: fix frequency range limit + - ALSA: usb-audio: Fix parse of UAC2 Extension Units + - ALSA: hda/realtek - Headphone Mic can't record after S3 + - tpm: Actually fail on TPM errors during "get random" + - tpm: Fix TPM 1.2 Shutdown sequence to prevent future TPM operations + - block: fix .bi_size overflow + - block, bfq: NULL out the bic when it's no longer valid + - perf intel-pt: Fix itrace defaults for perf script + - perf auxtrace: Fix itrace defaults for perf script + - perf intel-pt: Fix itrace defaults for perf script intel-pt documentation + - perf pmu: Fix uncore PMU alias list for ARM64 + - perf thread-stack: Fix thread stack return from kernel for kernel-only case + - perf header: Assign proper ff->ph in perf_event__synthesize_features() + - x86/ptrace: Fix possible spectre-v1 in ptrace_get_debugreg() + - x86/tls: Fix possible spectre-v1 in do_get_thread_area() + - Documentation: Add section about CPU vulnerabilities for Spectre + - Documentation/admin: Remove the vsyscall=native documentation + - mwifiex: Don't abort on small, spec-compliant vendor IEs + - USB: serial: ftdi_sio: add ID for isodebug v1 + - USB: serial: option: add support for GosunCn ME3630 RNDIS mode + - Revert "serial: 8250: Don't service RX FIFO if interrupts are disabled" + - p54usb: Fix race between disconnect and firmware loading + - usb: gadget: f_fs: data_len used before properly set + - usb: gadget: ether: Fix race between gether_disconnect and rx_submit + - usb: dwc2: use a longer AHB idle timeout in dwc2_core_reset() + - usb: renesas_usbhs: add a workaround for a race condition of workqueue + - drivers/usb/typec/tps6598x.c: fix portinfo width + - drivers/usb/typec/tps6598x.c: fix 4CC cmd write + - p54: fix crash during initialization + - staging: comedi: dt282x: fix a null pointer deref on interrupt + - staging: wilc1000: fix error path cleanup in wilc_wlan_initialize() + - staging: bcm2835-camera: Restore return behavior of ctrl_set_bitrate() + - staging: comedi: amplc_pci230: fix null pointer deref on interrupt + - staging: mt7621-pci: fix PCIE_FTS_NUM_LO macro + - HID: Add another Primax PIXART OEM mouse quirk + - lkdtm: support llvm-objcopy + - binder: fix memory leak in error path + - binder: return errors from buffer copy functions + - iio: adc: stm32-adc: add missing vdda-supply + - coresight: Potential uninitialized variable in probe() + - coresight: etb10: Do not call smp_processor_id from preemptible + - coresight: tmc-etr: Do not call smp_processor_id() from preemptible + - coresight: tmc-etr: alloc_perf_buf: Do not call smp_processor_id from + preemptible + - coresight: tmc-etf: Do not call smp_processor_id from preemptible + - carl9170: fix misuse of device driver API + - Revert "x86/build: Move _etext to actual end of .text" + - VMCI: Fix integer overflow in VMCI handle arrays + - staging: vchiq_2835_arm: revert "quit using custom down_interruptible()" + - staging: vchiq: make wait events interruptible + - staging: vchiq: revert "switch to wait_for_completion_killable" + - staging: fsl-dpaa2/ethsw: fix memory leak of switchdev_work + - staging: bcm2835-camera: Replace spinlock protecting context_map with mutex + - staging: bcm2835-camera: Ensure all buffers are returned on disable + - staging: bcm2835-camera: Remove check of the number of buffers supplied + - staging: bcm2835-camera: Handle empty EOS buffers whilst streaming + - staging: rtl8712: reduce stack usage, again + - Linux 5.2.1 + - [Config] updateconfigs after v5.2.1 stable update + * fcf-protection=none patch with upstream version + - Revert "UBUNTU: SAUCE: add -fcf-protection=none to retpoline flags" + - SAUCE: kbuild: add -fcf-protection=none to retpoline flags + * Miscellaneous Ubuntu changes + - SAUCE: selftests/ftrace: avoid failure when trying to probe a notrace + function + - SAUCE: selftests/powerpc/ptrace: fix build failure + - update dkms package versions + - [Packaging] add zlua to zfs-modules.ignore + - update dkms package versions + + [ Ubuntu: 5.2.0-8.9 ] + + * linux: 5.2.0-8.9 -proposed tracker (LP: #1835700) + * Miscellaneous Ubuntu changes + - [Packaging] replace zfs and spl build with zfs 0.8.1-1ubuntu1 + - SAUCE: test_bpf: remove expected fail for Ctx heavy transformations test on + s390 + - SAUCE: add -fcf-protection=none to retpoline flags + - SAUCE: usbip: ensure strings copied using strncpy are null-terminated + - SAUCE: usbip: add -Wno-address-of-packed-member to EXTRA_CFLAGS + - SAUCE: perf jvmti: ensure strncpy result is null-terminated + - update dkms package versions + - add removed zfs modules to modules.ignore + * Rebase to v5.2 + + [ Ubuntu: 5.2.0-7.8 ] + + * Kernel panic upon resetting ixgbe SR-IOV VFIO virtual function using 5.0 + kernel (LP: #1829652) + - SAUCE: ixgbe: Avoid NULL pointer dereference with VF on non-IPsec hw + * Hi1620 driver updates from upstream 5.2 merge window (LP: #1830815) + - net: hns3: initialize CPU reverse mapping + - net: hns3: refine the flow director handle + - net: hns3: add aRFS support for PF + - net: hns3: fix for FEC configuration + - RDMA/hns: Remove unnecessary print message in aeq + - RDMA/hns: Update CQE specifications + - RDMA/hns: Move spin_lock_irqsave to the correct place + - RDMA/hns: Remove jiffies operation in disable interrupt context + - RDMA/hns: Replace magic numbers with #defines + - net: hns3: fix compile warning without CONFIG_RFS_ACCEL + - net: hns3: fix for HNS3_RXD_GRO_SIZE_M macro + - net: hns3: add support for dump firmware statistics by debugfs + - net: hns3: use HCLGE_STATE_NIC_REGISTERED to indicate PF NIC client has + registered + - net: hns3: use HCLGE_STATE_ROCE_REGISTERED to indicate PF ROCE client has + registered + - net: hns3: use HCLGEVF_STATE_NIC_REGISTERED to indicate VF NIC client has + registered + - net: hns3: modify hclge_init_client_instance() + - net: hns3: modify hclgevf_init_client_instance() + - net: hns3: add handshake with hardware while doing reset + - net: hns3: stop schedule reset service while unloading driver + - net: hns3: adjust hns3_uninit_phy()'s location in the hns3_client_uninit() + - net: hns3: fix a memory leak issue for hclge_map_unmap_ring_to_vf_vector + - RDMA/hns: Bugfix for posting multiple srq work request + - net: hns3: remove redundant core reset + - net: hns3: don't configure new VLAN ID into VF VLAN table when it's full + - net: hns3: fix VLAN filter restore issue after reset + - net: hns3: set the port shaper according to MAC speed + - net: hns3: add a check to pointer in error_detected and slot_reset + - net: hns3: set ops to null when unregister ad_dev + - net: hns3: add handling of two bits in MAC tunnel interrupts + - net: hns3: remove setting bit of reset_requests when handling mac tunnel + interrupts + - net: hns3: add opcode about query and clear RAS & MSI-X to special opcode + - net: hns3: delay and separate enabling of NIC and ROCE HW errors + - RDMA/hns: fix inverted logic of readl read and shift + - RDMA/hns: Bugfix for filling the sge of srq + - net: hns3: log detail error info of ROCEE ECC and AXI errors + - net: hns3: fix wrong size of mailbox responding data + - net: hns3: make HW GRO handling compliant with SW GRO + - net: hns3: replace numa_node_id with numa_mem_id for buffer reusing + - net: hns3: refactor hns3_get_new_int_gl function + - net: hns3: trigger VF reset if a VF has an over_8bd_nfe_err + - net: hns3: delete the redundant user NIC codes + - net: hns3: small changes for magic numbers + - net: hns3: use macros instead of magic numbers + - net: hns3: refactor PF/VF RSS hash key configuration + - net: hns3: some modifications to simplify and optimize code + - net: hns3: fix some coding style issues + - net: hns3: delay setting of reset level for hw errors until slot_reset is + called + - net: hns3: fix avoid unnecessary resetting for the H/W errors which do not + require reset + - net: hns3: process H/W errors occurred before HNS dev initialization + - net: hns3: add recovery for the H/W errors occurred before the HNS dev + initialization + - net: hns3: some changes of MSI-X bits in PPU(RCB) + - net: hns3: extract handling of mpf/pf msi-x errors into functions + - net: hns3: clear restting state when initializing HW device + - net: hns3: free irq when exit from abnormal branch + - net: hns3: fix for dereferencing before null checking + - net: hns3: fix for skb leak when doing selftest + - net: hns3: delay ring buffer clearing during reset + - net: hns3: some variable modification + - net: hns3: fix dereference of ae_dev before it is null checked + - scsi: hisi_sas: Delete PHY timers when rmmod or probe failed + - scsi: hisi_sas: Fix the issue of argument mismatch of printing ecc errors + - scsi: hisi_sas: Reduce HISI_SAS_SGE_PAGE_CNT in size + - scsi: hisi_sas: Change the type of some numbers to unsigned + - scsi: hisi_sas: Ignore the error code between phy down to phy up + - scsi: hisi_sas: Disable stash for v3 hw + - net: hns3: Add missing newline at end of file + - RDMa/hns: Don't stuck in endless timeout loop + * Sometimes touchpad automatically trigger double click (LP: #1833484) + - SAUCE: i2c: designware: Add disable runtime pm quirk + * Add pointstick support on HP ZBook 17 G5 (LP: #1833387) + - Revert "HID: multitouch: Support ALPS PTP stick with pid 0x120A" + * depmod may prefer unsigned l-r-m nvidia modules to signed modules + (LP: #1834479) + - [Packaging] dkms-build--nvidia-N -- clean up unsigned ko files + * Miscellaneous Ubuntu changes + - SAUCE: selftests/powerpc: disable signal_fuzzer test + * Rebase to v5.2-rc7 + + [ Ubuntu: 5.2.0-6.7 ] + + * hinic: fix oops due to race in set_rx_mode (LP: #1832048) + - hinic: fix a bug in set rx mode + * Miscellaneous Ubuntu changes + - rebase to v5.2-rc6 + * Rebase to v5.2-rc6 + + [ Ubuntu: 5.2.0-5.6 ] + + * QCA9377 isn't being recognized sometimes (LP: #1757218) + - SAUCE: USB: Disable USB2 LPM at shutdown + * shiftfs: allow changing ro/rw for subvolumes (LP: #1832316) + - SAUCE: shiftfs: allow changing ro/rw for subvolumes + * Miscellaneous Ubuntu changes + - update dkms package versions + - [Packaging] replace nvidia-418 dkms build with nvidia-430 + - SAUCE: import aufs driver + * Rebase to v5.2-rc5 + + [ Ubuntu: 5.2.0-4.5 ] + + * arm64: cma_alloc errors at boot (LP: #1823753) + - [Config] Bump CMA_SIZE_MBYTES to 32 on arm64 + - dma-contiguous: add dma_{alloc,free}_contiguous() helpers + - dma-contiguous: use fallback alloc_pages for single pages + - dma-contiguous: fix !CONFIG_DMA_CMA version of dma_{alloc, + free}_contiguous() + * Miscellaneous Ubuntu changes + - [Config] CONFIG_MFD_TQMX86=n for s390x + - [Config] CONFIG_GPIO_AMD_FCH=n for s390x + - [Config] CONFIG_BACKLIGHT_CLASS_DEVICE=n on s390x + - [Config] CONFIG_LCD_CLASS_DEVICE=n for s390x + - [Config] CONFIG_DRM_ETNAVIV=m for armhf generic-lpae + - [Config] CONFIG_DRM_NOUVEAU_SVM=n + - [Config] CONFIG_HWMON=n for s390x + - [Config] CONFIG_NEW_LEDS=n for s390x + - [Config] CONFIG_MTD_NAND_OMAP2=y for armhf + - [Config] CONFIG_VOP_BUS=n for non-amd64 arches + - [Config] CONFIG_TI_CPSW_PHY_SEL=n + - [Config] CONFIG_INTERCONNECT=n for s390x + - [Config] CONFIG_SCSI_GDTH=n for s390x + - [Config] CONFIG_PACKING=n for s390x + - [Config] CONFIG_ARCH_MILBEAUT=y for armhf + - [Config] update annotations following config review + - update dkms package versions + - [Config] enable nvidia dkms build + * Rebase to v5.2-rc4 + + [ Ubuntu: 5.2.0-3.4 ] + + * [18.04/18.10] File libperf-jvmti.so is missing in linux-tools-common deb on + Ubuntu (LP: #1761379) + - [Packaging] Support building libperf-jvmti.so + * Miscellaneous Ubuntu changes + - SAUCE: Revert "bpf, selftest: test global data/bss/rodata sections" + - update dkms package versions + - [Config] enable zfs + - rebase to v5.2-rc3 + * Rebase to v5.2-rc3 + + [ Ubuntu: 5.2.0-2.3 ] + + * Miscellaneous Ubuntu changes + - SAUCE: perf arm64: Fix mksyscalltbl when system kernel headers are ahead of + the kernel + + [ Ubuntu: 5.2.0-1.2 ] + + * Miscellaneous Ubuntu changes + - [Config] CONFIG_INTEGRITY_PLATFORM_KEYRING=y + - update dkms package versions + - [Config] enable vbox dkms build + - update dkms package versions + * Rebase to v5.2-rc2 + + [ Ubuntu: 5.2.0-0.1 ] + + * Miscellaneous Ubuntu changes + - SAUCE: import aufs driver + - [Packaging] disable ZFS + - [Packaging] disable nvidia + - [Packaging] dkms-build -- expand paths searched for make.log files + - add virtualbox-guest-dkms dkms package build + - enable vbox dkms build for amd64 and i386 + - update dkms package versions + - SAUCE: (efi-lockdown) Add the ability to lock down access to the running + kernel image + - SAUCE: (efi-lockdown) Enforce module signatures if the kernel is locked down + - SAUCE: (efi-lockdown) Restrict /dev/{mem,kmem,port} when the kernel is + locked down + - SAUCE: (efi-lockdown) kexec_load: Disable at runtime if the kernel is locked + down + - SAUCE: (efi-lockdown) Copy secure_boot flag in boot params across kexec + reboot + - SAUCE: (efi-lockdown) kexec_file: split KEXEC_VERIFY_SIG into KEXEC_SIG and + KEXEC_SIG_FORCE + - SAUCE: (efi-lockdown) kexec_file: Restrict at runtime if the kernel is + locked down + - SAUCE: (efi-lockdown) hibernate: Disable when the kernel is locked down + - SAUCE: (efi-lockdown) uswsusp: Disable when the kernel is locked down + - SAUCE: (efi-lockdown) PCI: Lock down BAR access when the kernel is locked + down + - SAUCE: (efi-lockdown) x86: Lock down IO port access when the kernel is + locked down + - SAUCE: (efi-lockdown) x86/msr: Restrict MSR access when the kernel is locked + down + - SAUCE: (efi-lockdown) ACPI: Limit access to custom_method when the kernel is + locked down + - SAUCE: (efi-lockdown) acpi: Ignore acpi_rsdp kernel param when the kernel + has been locked down + - SAUCE: (efi-lockdown) acpi: Disable ACPI table override if the kernel is + locked down + - SAUCE: (efi-lockdown) acpi: Disable APEI error injection if the kernel is + locked down + - SAUCE: (efi-lockdown) Prohibit PCMCIA CIS storage when the kernel is locked + down + - SAUCE: (efi-lockdown) Lock down TIOCSSERIAL + - SAUCE: (efi-lockdown) Lock down module params that specify hardware + parameters (eg. ioport) + - SAUCE: (efi-lockdown) x86/mmiotrace: Lock down the testmmiotrace module + - SAUCE: (efi-lockdown) Lock down /proc/kcore + - SAUCE: (efi-lockdown) Lock down kprobes + - SAUCE: (efi-lockdown) bpf: Restrict kernel image access functions when the + kernel is locked down + - SAUCE: (efi-lockdown) Lock down perf + - SAUCE: (efi-lockdown) debugfs: Restrict debugfs when the kernel is locked + down + - SAUCE: (efi-lockdown) lockdown: Print current->comm in restriction messages + - SAUCE: (efi-lockdown) kexec: Allow kexec_file() with appropriate IMA policy + when locked down + - SAUCE: (efi-lockdown) Make get_cert_list() not complain about cert lists + that aren't present. + - SAUCE: (efi-lockdown) Add efi_status_to_str() and rework + efi_status_to_err(). + - SAUCE: (efi-lockdown) Make get_cert_list() use efi_status_to_str() to print + error messages. + - SAUCE: (efi-lockdown) efi: Add an EFI_SECURE_BOOT flag to indicate secure + boot mode + - SAUCE: (efi-lockdown) efi: Lock down the kernel if booted in secure boot + mode + - SAUCE: (efi-lockdown) KEYS: Make use of platform keyring for module + signature verify + - SAUCE: (efi-lockdown) debugfs: avoid EPERM when no open file operation + defined + - SAUCE: (efi-lockdown) efi: Sanitize boot_params in efi stub + - SAUCE: (efi-lockdown) furter KEXEC_VERIFY_SIG -> KEXEC_SIG updates + - SAUCE: (efi-lockdown) arm64: add kernel config option to lock down when in + Secure Boot mode + - update dkms package versions + - [Config] disable vbox build + - SAUCE: s390: mark __cpacf_check_opcode() and cpacf_query_func() as + __always_inline + - SAUCE: IB/mlx5: use size_t instead of u64 when dividing + * Rebase to v5.2-rc1 + + [ Ubuntu: 5.2.0-0.0 ] + + * Dummy entry. + + [ Ubuntu: 5.1.0-2.2 ] + + * Packaging resync (LP: #1786013) + - [Packaging] resync git-ubuntu-log + * Eoan update: v5.1.2 upstream stable release (LP: #1829050) + - x86/msr-index: Cleanup bit defines + - x86/speculation: Consolidate CPU whitelists + - x86/speculation/mds: Add basic bug infrastructure for MDS + - x86/speculation/mds: Add BUG_MSBDS_ONLY + - x86/kvm: Expose X86_FEATURE_MD_CLEAR to guests + - x86/speculation/mds: Add mds_clear_cpu_buffers() + - x86/speculation/mds: Clear CPU buffers on exit to user + - x86/kvm/vmx: Add MDS protection when L1D Flush is not active + - x86/speculation/mds: Conditionally clear CPU buffers on idle entry + - x86/speculation/mds: Add mitigation control for MDS + - x86/speculation/mds: Add sysfs reporting for MDS + - x86/speculation/mds: Add mitigation mode VMWERV + - Documentation: Move L1TF to separate directory + - Documentation: Add MDS vulnerability documentation + - x86/speculation/mds: Add mds=full,nosmt cmdline option + - x86/speculation: Move arch_smt_update() call to after mitigation decisions + - x86/speculation/mds: Add SMT warning message + - x86/speculation/mds: Fix comment + - x86/speculation/mds: Print SMT vulnerable on MSBDS with mitigations off + - cpu/speculation: Add 'mitigations=' cmdline option + - x86/speculation: Support 'mitigations=' cmdline option + - powerpc/speculation: Support 'mitigations=' cmdline option + - s390/speculation: Support 'mitigations=' cmdline option + - x86/speculation/mds: Add 'mitigations=' support for MDS + - x86/mds: Add MDSUM variant to the MDS documentation + - Documentation: Correct the possible MDS sysfs values + - x86/speculation/mds: Fix documentation typo + - Linux 5.1.2 + * Eoan update: v5.1.1 upstream stable release (LP: #1829046) + - Drivers: hv: vmbus: Remove the undesired put_cpu_ptr() in hv_synic_cleanup() + - ubsan: Fix nasty -Wbuiltin-declaration-mismatch GCC-9 warnings + - staging: greybus: power_supply: fix prop-descriptor request size + - staging: wilc1000: Avoid GFP_KERNEL allocation from atomic context. + - staging: most: cdev: fix chrdev_region leak in mod_exit + - staging: most: sound: pass correct device when creating a sound card + - usb: dwc3: Allow building USB_DWC3_QCOM without EXTCON + - usb: dwc3: Fix default lpm_nyet_threshold value + - USB: serial: f81232: fix interrupt worker not stop + - USB: cdc-acm: fix unthrottle races + - usb-storage: Set virt_boundary_mask to avoid SG overflows + - genirq: Prevent use-after-free and work list corruption + - intel_th: pci: Add Comet Lake support + - iio: adc: qcom-spmi-adc5: Fix of-based module autoloading + - cpufreq: armada-37xx: fix frequency calculation for opp + - ACPI / LPSS: Use acpi_lpss_* instead of acpi_subsys_* functions for + hibernate + - soc: sunxi: Fix missing dependency on REGMAP_MMIO + - scsi: lpfc: change snprintf to scnprintf for possible overflow + - scsi: qla2xxx: Fix incorrect region-size setting in optrom SYSFS routines + - scsi: qla2xxx: Set remote port devloss timeout to 0 + - scsi: qla2xxx: Fix device staying in blocked state + - Bluetooth: hidp: fix buffer overflow + - Bluetooth: Align minimum encryption key size for LE and BR/EDR connections + - Bluetooth: Fix not initializing L2CAP tx_credits + - Bluetooth: hci_bcm: Fix empty regulator supplies for Intel Macs + - UAS: fix alignment of scatter/gather segments + - ASoC: Intel: avoid Oops if DMA setup fails + - i3c: Fix a shift wrap bug in i3c_bus_set_addr_slot_status() + - locking/futex: Allow low-level atomic operations to return -EAGAIN + - arm64: futex: Bound number of LDXR/STXR loops in FUTEX_WAKE_OP + - Linux 5.1.1 + * shiftfs: lock security sensitive superblock flags (LP: #1827122) + - SAUCE: shiftfs: lock down certain superblock flags + * Please package libbpf (which is done out of the kernel src) in Debian [for + 19.10] (LP: #1826410) + - SAUCE: tools -- fix add ability to disable libbfd + * ratelimit cma_alloc messages (LP: #1828092) + - SAUCE: cma: ratelimit cma_alloc error messages + * Headphone jack switch sense is inverted: plugging in headphones disables + headphone output (LP: #1824259) + - ASoC: rt5645: Headphone Jack sense inverts on the LattePanda board + * There are 4 HDMI/Displayport audio output listed in sound setting without + attach any HDMI/DP monitor (LP: #1827967) + - ALSA: hda/hdmi - Read the pin sense from register when repolling + - ALSA: hda/hdmi - Consider eld_valid when reporting jack event + * CONFIG_LOG_BUF_SHIFT set to 14 is too low on arm64 (LP: #1824864) + - [Config] CONFIG_LOG_BUF_SHIFT=18 on all 64bit arches + * CTAUTO:DevOps:860.50:devops4fp1:Error occurred during LINUX Dmesg error + Checking for all LINUX clients for devops4p10 (LP: #1766201) + - SAUCE: integrity: downgrade error to warning + * linux-buildinfo: pull out ABI information into its own package + (LP: #1806380) + - [Packaging] autoreconstruct -- base tag is always primary mainline version + * [SRU] Please sync vbox modules from virtualbox 6.0.6 on next kernel update + (LP: #1825210) + - vbox-update: updates for renamed makefiles + - ubuntu: vbox -- update to 6.0.6-dfsg-1 + * autofs kernel module missing (LP: #1824333) + - [Config] Update autofs4 path in inclusion list + * The Realtek card reader does not enter PCIe 1.1/1.2 (LP: #1825487) + - SAUCE: misc: rtsx: Fixed rts5260 power saving parameter and sd glitch + * CVE-2019-3874 + - sctp: implement memory accounting on tx path + - sctp: implement memory accounting on rx path + * apparmor does not start in Disco LXD containers (LP: #1824812) + - SAUCE: shiftfs: use separate llseek method for directories + * Miscellaneous Ubuntu changes + - [Packaging] autoreconstruct -- remove for -rc kernels + - SAUCE: (efi-lockdown) debugfs: avoid EPERM when no open file operation + defined + - SAUCE: (efi-lockdown) efi: Sanitize boot_params in efi stub + - SAUCE: (efi-lockdown) furter KEXEC_VERIFY_SIG -> KEXEC_SIG updates + - [Config] (efi-lockdown): update configs after efi lockdown patch refresh + - [Packaging] don't delete efi_parser.c + - vbox-update -- do not fix up KERN_DIR or KBUILD_EXTMOD + - ubuntu: vbox -- update to 6.0.6-dfsg-2 + - add nvidia-418 dkms build + - remove virtualbox guest drivers + - [Packaging] dkms-build -- expand paths searched for make.log files + - add virtualbox-guest-dkms dkms package build + - enable vbox dkms build for amd64 and i386 + - [Config] update configs for v5.1(-rc7)? rebase + - update dkms package versions + - Add the ability to lock down access to the running kernel image + - Enforce module signatures if the kernel is locked down + - Restrict /dev/{mem,kmem,port} when the kernel is locked down + - kexec_load: Disable at runtime if the kernel is locked down + - Copy secure_boot flag in boot params across kexec reboot + - kexec_file: split KEXEC_VERIFY_SIG into KEXEC_SIG and KEXEC_SIG_FORCE + - kexec_file: Restrict at runtime if the kernel is locked down + - hibernate: Disable when the kernel is locked down + - uswsusp: Disable when the kernel is locked down + - PCI: Lock down BAR access when the kernel is locked down + - x86: Lock down IO port access when the kernel is locked down + - x86/msr: Restrict MSR access when the kernel is locked down + - ACPI: Limit access to custom_method when the kernel is locked down + - acpi: Ignore acpi_rsdp kernel param when the kernel has been locked down + - acpi: Disable ACPI table override if the kernel is locked down + - acpi: Disable APEI error injection if the kernel is locked down + - Prohibit PCMCIA CIS storage when the kernel is locked down + - Lock down TIOCSSERIAL + - Lock down module params that specify hardware parameters (eg. ioport) + - x86/mmiotrace: Lock down the testmmiotrace module + - Lock down /proc/kcore + - Lock down kprobes + - bpf: Restrict kernel image access functions when the kernel is locked down + - Lock down perf + - debugfs: Restrict debugfs when the kernel is locked down + - lockdown: Print current->comm in restriction messages + - kexec: Allow kexec_file() with appropriate IMA policy when locked down + - Make get_cert_list() not complain about cert lists that aren't present. + - Add efi_status_to_str() and rework efi_status_to_err(). + - Make get_cert_list() use efi_status_to_str() to print error messages. + - efi: Add an EFI_SECURE_BOOT flag to indicate secure boot mode + - efi: Lock down the kernel if booted in secure boot mode + - KEYS: Make use of platform keyring for module signature verify + * Miscellaneous upstream changes + - ALSA: hdea/realtek - Headset fixup for System76 Gazelle (gaze14) + + [ Ubuntu: 5.1.0-1.1 ] + + * bionic: fork out linux-snapdragon into its own topic kernel (LP: #1820868) + - [Packaging]: really drop snapdragon + * Miscellaneous Ubuntu changes + - SAUCE: fix vbox use of MAP_SHARED + - SAUCE: fix vbox use of vm_fault_t + - [Packaging] disable ZFS + - [Packaging] disable nvidia + - SAUCE: perf annotate: Fix build on 32 bit for BPF annotation + - [Config]: updateconfig after rebase to v5.1-rc + - [Config]: build ETNAVIV only on arm platforms + - [Config]: Disable CMA on non-arm platforms + - [Config]: MMC_CQHCI is needed by some built-in drivers + - [Config]: a.out support has been deprecated + - [Config]: R3964 was marked as BROKEN + - [Config]: Add SENSIRION_SGP30 module + * Miscellaneous upstream changes + - Revert "UBUNTU: SAUCE: tools: lib/bpf -- add generated headers to search + path" + - Revert "UBUNTU: SAUCE: btqcomsmd: introduce BT_QCOMSMD_HACK" + + [ Ubuntu: 5.1.0-0.0 ] + + * Dummy entry. + + -- Thadeu Lima de Souza Cascardo Fri, 04 Oct 2019 12:16:16 -0300 + +linux-azure (5.3.0-1000.0) eoan; urgency=medium + + * Empty entry + + -- Thadeu Lima de Souza Cascardo Thu, 03 Oct 2019 16:34:07 -0300 + +linux-azure (5.0.0-1018.19) disco; urgency=medium + + * disco/linux-azure: 5.0.0-1018.19 -proposed tracker (LP: #1840803) + + [ Ubuntu: 5.0.0-27.28 ] + + * disco/linux: 5.0.0-27.28 -proposed tracker (LP: #1840816) + * [Potential Regression] System crashes when running ftrace test in + ubuntu_kernel_selftests (LP: #1840750) + - x86/kprobes: Set instruction page as executable + + -- Khalid Elmously Tue, 20 Aug 2019 17:01:28 -0400 + +linux-azure (5.0.0-1017.18) disco; urgency=medium + + * disco/linux-azure: 5.0.0-1017.18 -proposed tracker (LP: #1840326) + + * [linux-azure] Important InfiniBand patches for Ubuntu 18.04 (LP: #1839673) + - SAUCE: Don't wait in hvnd_query_gid after interface is already bound to ND + - SAUCE: Expose extended attributes for user IB verbs QUERY_DEVICE, CREATE_CQ + and CREATE_QP + + * [linux-azure] CRI-RDOS | Live migration only takes 10 seconds, but the VM + was unavailable for 2 hours (LP: #1837661) + - PCI: hv: Fix a use-after-free bug in hv_eject_device_work() + - SAUCE: PCI: hv: Fix panic by calling hv_pci_remove_slots() earlier + + [ Ubuntu: 5.0.0-26.27 ] + + * disco/linux: 5.0.0-26.27 -proposed tracker (LP: #1839972) + * Packaging resync (LP: #1786013) + - [Packaging] update helper scripts + * alsa/hdmi: add icelake hdmi audio support for a Dell machine (LP: #1836916) + - ALSA: hda: hdmi - add Icelake support + - ALSA: hda/hdmi - Remove duplicated define + - ALSA: hda/hdmi - Fix i915 reverse port/pin mapping + * input/mouse: alps trackpoint-only device doesn't work (LP: #1836752) + - Input: alps - don't handle ALPS cs19 trackpoint-only device + - Input: alps - fix a mismatch between a condition check and its comment + * [18.04 FEAT] Enhanced hardware support (LP: #1836857) + - s390: report new CPU capabilities + - s390: add alignment hints to vector load and store + * System does not auto detect disconnection of external monitor (LP: #1835001) + - drm/i915: Add support for retrying hotplug + - drm/i915: Enable hotplug retry + * [18.04 FEAT] Enhanced CPU-MF hardware counters - kernel part (LP: #1836860) + - s390/cpum_cf: Add support for CPU-MF SVN 6 + - s390/cpumf: Add extended counter set definitions for model 8561 and 8562 + * EeePC 1005px laptop backlight is off after system boot up (LP: #1837117) + - platform/x86: asus-wmi: Only Tell EC the OS will handle display hotkeys from + asus_nb_wmi + * br_netfilter: namespace sysctl operations (LP: #1836910) + - netfilter: bridge: port sysctls to use brnf_net + - netfilter: bridge: namespace bridge netfilter sysctls + - netfilter: bridge: prevent UAF in brnf_exit_net() + * ideapad_laptop disables WiFi/BT radios on Lenovo Y540 (LP: #1837136) + - platform/x86: ideapad-laptop: Remove no_hw_rfkill_list + * shiftfs: allow overlayfs (LP: #1838677) + - SAUCE: shiftfs: enable overlayfs on shiftfs + * bcache: bch_allocator_thread(): hung task timeout (LP: #1784665) + - bcache: never writeback a discard operation + - bcache: improve bcache_reboot() + - SAUCE: bcache: fix deadlock in bcache_allocator + * Regressions in CMA allocation rework (LP: #1839395) + - dma-contiguous: do not overwrite align in dma_alloc_contiguous() + - dma-contiguous: page-align the size in dma_free_contiguous() + * CVE-2019-3900 + - vhost: introduce vhost_exceeds_weight() + - vhost_net: fix possible infinite loop + - vhost: vsock: add weight support + - vhost: scsi: add weight support + * Disco update: 5.0.21 upstream stable release (LP: #1837518) + - bonding/802.3ad: fix slave link initialization transition states + - cxgb4: offload VLAN flows regardless of VLAN ethtype + - inet: switch IP ID generator to siphash + - ipv4/igmp: fix another memory leak in igmpv3_del_delrec() + - ipv4/igmp: fix build error if !CONFIG_IP_MULTICAST + - ipv6: Consider sk_bound_dev_if when binding a raw socket to an address + - ipv6: Fix redirect with VRF + - llc: fix skb leak in llc_build_and_send_ui_pkt() + - mlxsw: spectrum_acl: Avoid warning after identical rules insertion + - net: dsa: mv88e6xxx: fix handling of upper half of STATS_TYPE_PORT + - net: fec: fix the clk mismatch in failed_reset path + - net-gro: fix use-after-free read in napi_gro_frags() + - net: mvneta: Fix err code path of probe + - net: mvpp2: fix bad MVPP2_TXQ_SCHED_TOKEN_CNTR_REG queue value + - net: phy: marvell10g: report if the PHY fails to boot firmware + - net: sched: don't use tc_action->order during action dump + - net: stmmac: fix reset gpio free missing + - r8169: fix MAC address being lost in PCI D3 + - usbnet: fix kernel crash after disconnect + - net/mlx5: Avoid double free in fs init error unwinding path + - tipc: Avoid copying bytes beyond the supplied data + - net/mlx5: Allocate root ns memory using kzalloc to match kfree + - net/mlx5e: Disable rxhash when CQE compress is enabled + - net: stmmac: fix ethtool flow control not able to get/set + - net: stmmac: dma channel control register need to be init first + - bnxt_en: Fix aggregation buffer leak under OOM condition. + - bnxt_en: Fix possible BUG() condition when calling pci_disable_msix(). + - bnxt_en: Reduce memory usage when running in kdump kernel. + - net/tls: fix state removal with feature flags off + - net/tls: don't ignore netdev notifications if no TLS features + - cxgb4: Revert "cxgb4: Remove SGE_HOST_PAGE_SIZE dependency on page size" + - net: correct zerocopy refcnt with udp MSG_MORE + - crypto: vmx - ghash: do nosimd fallback manually + - xen/pciback: Don't disable PCI_COMMAND on PCI device reset. + - Revert "tipc: fix modprobe tipc failed after switch order of device + registration" + - tipc: fix modprobe tipc failed after switch order of device registration + - Linux 5.0.21 + * Disco update: 5.0.20 upstream stable release (LP: #1837517) + - x86: Hide the int3_emulate_call/jmp functions from UML + - ext4: do not delete unlinked inode from orphan list on failed truncate + - ext4: wait for outstanding dio during truncate in nojournal mode + - KVM: x86: fix return value for reserved EFER + - bio: fix improper use of smp_mb__before_atomic() + - sbitmap: fix improper use of smp_mb__before_atomic() + - Revert "scsi: sd: Keep disk read-only when re-reading partition" + - crypto: hash - fix incorrect HASH_MAX_DESCSIZE + - crypto: vmx - CTR: always increment IV as quadword + - mmc: sdhci-iproc: cygnus: Set NO_HISPD bit to fix HS50 data hold time + problem + - mmc: sdhci-iproc: Set NO_HISPD bit to fix HS50 data hold time problem + - kvm: svm/avic: fix off-by-one in checking host APIC ID + - libnvdimm/pmem: Bypass CONFIG_HARDENED_USERCOPY overhead + - arm64/kernel: kaslr: reduce module randomization range to 2 GB + - arm64/iommu: handle non-remapped addresses in ->mmap and ->get_sgtable + - gfs2: Fix sign extension bug in gfs2_update_stats + - btrfs: don't double unlock on error in btrfs_punch_hole + - Btrfs: do not abort transaction at btrfs_update_root() after failure to COW + path + - Btrfs: avoid fallback to transaction commit during fsync of files with holes + - Btrfs: fix race between ranged fsync and writeback of adjacent ranges + - btrfs: sysfs: Fix error path kobject memory leak + - btrfs: sysfs: don't leak memory when failing add fsid + - fbdev: fix divide error in fb_var_to_videomode + - cifs: fix credits leak for SMB1 oplock breaks + - arm64: errata: Add workaround for Cortex-A76 erratum #1463225 + - [Config] Add CONFIG_ARM64_ERRATUM_1463225 + - btrfs: honor path->skip_locking in backref code + - ovl: relax WARN_ON() for overlapping layers use case + - fbdev: fix WARNING in __alloc_pages_nodemask bug + - media: cpia2: Fix use-after-free in cpia2_exit + - media: serial_ir: Fix use-after-free in serial_ir_init_module + - media: vb2: add waiting_in_dqbuf flag + - media: vivid: use vfree() instead of kfree() for dev->bitmap_cap + - ssb: Fix possible NULL pointer dereference in ssb_host_pcmcia_exit + - bpf: devmap: fix use-after-free Read in __dev_map_entry_free + - batman-adv: mcast: fix multicast tt/tvlv worker locking + - at76c50x-usb: Don't register led_trigger if usb_register_driver failed + - acct_on(): don't mess with freeze protection + - netfilter: ctnetlink: Resolve conntrack L3-protocol flush regression + - Revert "btrfs: Honour FITRIM range constraints during free space trim" + - gfs2: Fix lru_count going negative + - cxgb4: Fix error path in cxgb4_init_module + - afs: Fix getting the afs.fid xattr + - NFS: make nfs_match_client killable + - gfs2: fix race between gfs2_freeze_func and unmount + - IB/hfi1: Fix WQ_MEM_RECLAIM warning + - gfs2: Fix occasional glock use-after-free + - mmc: core: Verify SD bus width + - tools/bpf: fix perf build error with uClibc (seen on ARC) + - selftests/bpf: set RLIMIT_MEMLOCK properly for test_libbpf_open.c + - bpftool: exclude bash-completion/bpftool from .gitignore pattern + - ice: Separate if conditions for ice_set_features() + - blk-mq: split blk_mq_alloc_and_init_hctx into two parts + - blk-mq: grab .q_usage_counter when queuing request from plug code path + - dmaengine: tegra210-dma: free dma controller in remove() + - net: ena: gcc 8: fix compilation warning + - net: ena: fix: set freed objects to NULL to avoid failing future allocations + - hv_netvsc: fix race that may miss tx queue wakeup + - Bluetooth: Ignore CC events not matching the last HCI command + - pinctrl: zte: fix leaked of_node references + - ASoC: Intel: kbl_da7219_max98357a: Map BTN_0 to KEY_PLAYPAUSE + - usb: dwc2: gadget: Increase descriptors count for ISOC's + - usb: dwc3: move synchronize_irq() out of the spinlock protected block + - usb: gadget: f_fs: don't free buffer prematurely + - ASoC: hdmi-codec: unlock the device on startup errors + - powerpc/perf: Return accordingly on invalid chip-id in + - powerpc/boot: Fix missing check of lseek() return value + - powerpc/perf: Fix loop exit condition in nest_imc_event_init + - spi: atmel-quadspi: fix crash while suspending + - ASoC: imx: fix fiq dependencies + - spi: pxa2xx: fix SCR (divisor) calculation + - brcm80211: potential NULL dereference in + brcmf_cfg80211_vndr_cmds_dcmd_handler() + - ACPI / property: fix handling of data_nodes in acpi_get_next_subnode() + - drm/nouveau/bar/nv50: ensure BAR is mapped + - media: stm32-dcmi: return appropriate error codes during probe + - ARM: vdso: Remove dependency with the arch_timer driver internals + - arm64: Fix compiler warning from pte_unmap() with -Wunused-but-set-variable + - x86/ftrace: Set trampoline pages as executable + - powerpc/watchdog: Use hrtimers for per-CPU heartbeat + - sched/cpufreq: Fix kobject memleak + - scsi: qla2xxx: Fix a qla24xx_enable_msix() error path + - scsi: qla2xxx: Fix abort handling in tcm_qla2xxx_write_pending() + - scsi: qla2xxx: Avoid that lockdep complains about unsafe locking in + tcm_qla2xxx_close_session() + - scsi: qla2xxx: Fix hardirq-unsafe locking + - x86/modules: Avoid breaking W^X while loading modules + - Btrfs: fix data bytes_may_use underflow with fallocate due to failed quota + reserve + - btrfs: fix panic during relocation after ENOSPC before writeback happens + - btrfs: Don't panic when we can't find a root key + - iwlwifi: pcie: don't crash on invalid RX interrupt + - rtc: 88pm860x: prevent use-after-free on device remove + - rtc: stm32: manage the get_irq probe defer case + - scsi: qedi: Abort ep termination if offload not scheduled + - s390/kexec_file: Fix detection of text segment in ELF loader + - ALSA: hda: fix unregister device twice on ASoC driver + - sched/nohz: Run NOHZ idle load balancer on HK_FLAG_MISC CPUs + - net: ethernet: ti: cpsw: fix allmulti cfg in dual_mac mode + - w1: fix the resume command API + - net: phy: improve genphy_soft_reset + - s390: qeth: address type mismatch warning + - dmaengine: pl330: _stop: clear interrupt status + - mac80211/cfg80211: update bss channel on channel switch + - libbpf: fix samples/bpf build failure due to undefined UINT32_MAX + - slimbus: fix a potential NULL pointer dereference in + of_qcom_slim_ngd_register + - ASoC: fsl_sai: Update is_slave_mode with correct value + - Fix nfs4.2 return -EINVAL when do dedupe operation + - mwifiex: prevent an array overflow + - rsi: Fix NULL pointer dereference in kmalloc + - net: cw1200: fix a NULL pointer dereference + - nvme: set 0 capacity if namespace block size exceeds PAGE_SIZE + - nvme-rdma: fix a NULL deref when an admin connect times out + - nvme-tcp: fix a NULL deref when an admin connect times out + - crypto: sun4i-ss - Fix invalid calculation of hash end + - bcache: avoid potential memleak of list of journal_replay(s) in the + CACHE_SYNC branch of run_cache_set + - bcache: return error immediately in bch_journal_replay() + - bcache: fix failure in journal relplay + - bcache: add failure check to run_cache_set() for journal replay + - bcache: avoid clang -Wunintialized warning + - RDMA/cma: Consider scope_id while binding to ipv6 ll address + - vfio-ccw: Do not call flush_workqueue while holding the spinlock + - vfio-ccw: Release any channel program when releasing/removing vfio-ccw mdev + - x86/build: Move _etext to actual end of .text + - smpboot: Place the __percpu annotation correctly + - x86/uaccess: Dont leak the AC flag into __put_user() argument evaluation + - x86/mm: Remove in_nmi() warning from 64-bit implementation of + vmalloc_fault() + - mm/uaccess: Use 'unsigned long' to placate UBSAN warnings on older GCC + versions + - Bluetooth: hci_qca: Give enough time to ROME controller to bootup. + - Bluetooth: btbcm: Add default address for BCM43341B + - HID: logitech-hidpp: use RAP instead of FAP to get the protocol version + - pinctrl: pistachio: fix leaked of_node references + - pinctrl: st: fix leaked of_node references + - pinctrl: samsung: fix leaked of_node references + - clk: rockchip: undo several noc and special clocks as critical on rk3288 + - perf/arm-cci: Remove broken race mitigation + - dmaengine: at_xdmac: remove BUG_ON macro in tasklet + - media: coda: clear error return value before picture run + - media: ov6650: Move v4l2_clk_get() to ov6650_video_probe() helper + - media: au0828: stop video streaming only when last user stops + - media: ov2659: make S_FMT succeed even if requested format doesn't match + - audit: fix a memory leak bug + - media: stm32-dcmi: fix crash when subdev do not expose any formats + - media: au0828: Fix NULL pointer dereference in au0828_analog_stream_enable() + - media: pvrusb2: Prevent a buffer overflow + - iio: adc: stm32-dfsdm: fix unmet direct dependencies detected + - block: fix use-after-free on gendisk + - powerpc/numa: improve control of topology updates + - powerpc/64: Fix booting large kernels with STRICT_KERNEL_RWX + - random: fix CRNG initialization when random.trust_cpu=1 + - random: add a spinlock_t to struct batched_entropy + - cgroup: protect cgroup->nr_(dying_)descendants by css_set_lock + - sched/core: Check quota and period overflow at usec to nsec conversion + - sched/rt: Check integer overflow at usec to nsec conversion + - sched/core: Handle overflow in cpu_shares_write_u64 + - staging: vc04_services: handle kzalloc failure + - drm/msm/dpu: release resources on modeset failure + - drm/msm: a5xx: fix possible object reference leak + - drm/msm: dpu: Don't set frame_busy_mask for async updates + - drm/msm: Fix NULL pointer dereference + - irq_work: Do not raise an IPI when queueing work on the local CPU + - thunderbolt: Take domain lock in switch sysfs attribute callbacks + - s390/qeth: handle error from qeth_update_from_chp_desc() + - USB: core: Don't unbind interfaces following device reset failure + - x86/irq/64: Limit IST stack overflow check to #DB stack + - drm: etnaviv: avoid DMA API warning when importing buffers + - dt-bindings: phy-qcom-qmp: Add UFS PHY reset + - phy: sun4i-usb: Make sure to disable PHY0 passby for peripheral mode + - phy: mapphone-mdm6600: add gpiolib dependency + - dpaa2-eth: Fix Rx classification status + - i40e: Able to add up to 16 MAC filters on an untrusted VF + - i40e: don't allow changes to HW VLAN stripping on active port VLANs + - ACPI/IORT: Reject platform device creation on NUMA node mapping failure + - arm64: vdso: Fix clock_getres() for CLOCK_REALTIME + - RDMA/cxgb4: Fix null pointer dereference on alloc_skb failure + - perf/x86/msr: Add Icelake support + - perf/x86/intel/rapl: Add Icelake support + - perf/x86/intel/cstate: Add Icelake support + - PM / devfreq: Fix static checker warning in try_then_request_governor + - hwmon: (vt1211) Use request_muxed_region for Super-IO accesses + - hwmon: (smsc47m1) Use request_muxed_region for Super-IO accesses + - hwmon: (smsc47b397) Use request_muxed_region for Super-IO accesses + - hwmon: (pc87427) Use request_muxed_region for Super-IO accesses + - hwmon: (f71805f) Use request_muxed_region for Super-IO accesses + - mmc: core: make pwrseq_emmc (partially) support sleepy GPIO controllers + - mmc_spi: add a status check for spi_sync_locked + - mmc: sdhci-of-esdhc: add erratum eSDHC5 support + - mmc: sdhci-of-esdhc: add erratum A-009204 support + - mmc: sdhci-of-esdhc: add erratum eSDHC-A001 and A-008358 support + - drm/amdgpu: fix old fence check in amdgpu_fence_emit + - PM / core: Propagate dev->power.wakeup_path when no callbacks + - clk: rockchip: Fix video codec clocks on rk3288 + - extcon: arizona: Disable mic detect if running when driver is removed + - clk: rockchip: Make rkpwm a critical clock on rk3288 + - clk: zynqmp: fix check for fractional clock + - s390: zcrypt: initialize variables before_use + - x86/microcode: Fix the ancient deprecated microcode loading method + - s390/mm: silence compiler warning when compiling without CONFIG_PGSTE + - s390: cio: fix cio_irb declaration + - selftests: cgroup: fix cleanup path in test_memcg_subtree_control() + - qmi_wwan: Add quirk for Quectel dynamic config + - cpufreq: ppc_cbe: fix possible object reference leak + - cpufreq/pasemi: fix possible object reference leak + - cpufreq: pmac32: fix possible object reference leak + - cpufreq: kirkwood: fix possible object reference leak + - cpufreq: imx6q: fix possible object reference leak + - block: sed-opal: fix IOC_OPAL_ENABLE_DISABLE_MBR + - samples/bpf: fix build with new clang + - x86/build: Keep local relocations with ld.lld + - regulator: core: Avoid potential deadlock on regulator_unregister + - drm/pl111: fix possible object reference leak + - iio: ad_sigma_delta: Properly handle SPI bus locking vs CS assertion + - iio: hmc5843: fix potential NULL pointer dereferences + - iio: common: ssp_sensors: Initialize calculated_time in + ssp_common_process_data + - iio: adc: ti-ads7950: Fix improper use of mlock + - selftests/bpf: ksym_search won't check symbols exists + - rtlwifi: fix a potential NULL pointer dereference + - mwifiex: Fix mem leak in mwifiex_tm_cmd + - brcmfmac: fix missing checks for kmemdup + - b43: shut up clang -Wuninitialized variable warning + - brcmfmac: convert dev_init_lock mutex to completion + - brcmfmac: fix WARNING during USB disconnect in case of unempty psq + - brcmfmac: fix race during disconnect when USB completion is in progress + - brcmfmac: fix Oops when bringing up interface during USB disconnect + - rtc: xgene: fix possible race condition + - rtlwifi: fix potential NULL pointer dereference + - scsi: ufs: Fix regulator load and icc-level configuration + - scsi: ufs: Avoid configuring regulator with undefined voltage range + - drm/panel: otm8009a: Add delay at the end of initialization + - drm/amd/display: Prevent cursor hotspot overflow for RV overlay planes + - arm64: cpu_ops: fix a leaked reference by adding missing of_node_put + - locking/static_key: Fix false positive warnings on concurrent dec/inc + - wil6210: fix return code of wmi_mgmt_tx and wmi_mgmt_tx_ext + - x86/uaccess, ftrace: Fix ftrace_likely_update() vs. SMAP + - x86/uaccess, signal: Fix AC=1 bloat + - x86/ia32: Fix ia32_restore_sigcontext() AC leak + - x86/uaccess: Fix up the fixup + - chardev: add additional check for minor range overlap + - sh: sh7786: Add explicit I/O cast to sh7786_mm_sel() + - HID: core: move Usage Page concatenation to Main item + - ASoC: eukrea-tlv320: fix a leaked reference by adding missing of_node_put + - ASoC: fsl_utils: fix a leaked reference by adding missing of_node_put + - cxgb3/l2t: Fix undefined behaviour + - clk: renesas: rcar-gen3: Correct parent clock of SYS-DMAC + - block: pass page to xen_biovec_phys_mergeable + - clk: renesas: rcar-gen3: Correct parent clock of Audio-DMAC + - HID: logitech-hidpp: change low battery level threshold from 31 to 30 + percent + - spi: tegra114: reset controller on probe + - kobject: Don't trigger kobject_uevent(KOBJ_REMOVE) twice. + - media: video-mux: fix null pointer dereferences + - media: wl128x: prevent two potential buffer overflows + - media: gspca: Kill URBs on USB device disconnect + - efifb: Omit memory map check on legacy boot + - thunderbolt: property: Fix a missing check of kzalloc + - thunderbolt: Fix to check the return value of kmemdup + - drm: rcar-du: lvds: Set LVEN and LVRES bits together on D3 + - timekeeping: Force upper bound for setting CLOCK_REALTIME + - scsi: qedf: Add missing return in qedf_post_io_req() in the fcport offload + check + - virtio_console: initialize vtermno value for ports + - tty: ipwireless: fix missing checks for ioremap + - staging: mt7621-mmc: Initialize completions a single time during probe + - overflow: Fix -Wtype-limits compilation warnings + - x86/mce: Fix machine_check_poll() tests for error types + - rcutorture: Fix cleanup path for invalid torture_type strings + - x86/mce: Handle varying MCA bank counts + - rcuperf: Fix cleanup path for invalid perf_type strings + - rcu: Do a single rhp->func read in rcu_head_after_call_rcu() + - spi: stm32-qspi: add spi_master_put in release function + - usb: core: Add PM runtime calls to usb_hcd_platform_shutdown + - scsi: qla4xxx: avoid freeing unallocated dma memory + - scsi: lpfc: avoid uninitialized variable warning + - ice: Prevent unintended multiple chain resets + - selinux: avoid uninitialized variable warning + - batman-adv: allow updating DAT entry timeouts on incoming ARP Replies + - dmaengine: tegra210-adma: use devm_clk_*() helpers + - x86/CPU/hygon: Fix phys_proc_id calculation logic for multi-die processors + - staging: mt7621-mmc: Check for nonzero number of scatterlist entries + - hwrng: omap - Set default quality + - thunderbolt: Fix to check return value of ida_simple_get + - thunderbolt: Fix to check for kmemdup failure + - drm/amd/display: fix releasing planes when exiting odm + - drm/amd/display: Link train only when link is DP and backend is enabled + - drm/amd/display: Reset alpha state for planes to the correct values + - thunderbolt: property: Fix a NULL pointer dereference + - media: v4l2-fwnode: The first default data lane is 0 on C-PHY + - media: staging/intel-ipu3: mark PM function as __maybe_unused + - tinydrm/mipi-dbi: Use dma-safe buffers for all SPI transfers + - igb: Exclude device from suspend direct complete optimization + - media: si2165: fix a missing check of return value + - media: dvbsky: Avoid leaking dvb frontend + - media: m88ds3103: serialize reset messages in m88ds3103_set_frontend + - drm/amd/display: add pipe lock during stream update + - media: staging: davinci_vpfe: disallow building with COMPILE_TEST + - drm/amd/display: Fix Divide by 0 in memory calculations + - drm/amd/display: Set stream->mode_changed when connectors change + - scsi: ufs: fix a missing check of devm_reset_control_get + - media: vimc: stream: fix thread state before sleep + - media: gspca: do not resubmit URBs when streaming has stopped + - media: go7007: avoid clang frame overflow warning with KASAN + - media: vimc: zero the media_device on probe + - media: vim2m: replace devm_kzalloc by kzalloc + - media: cedrus: Add a quirk for not setting DMA offset + - scsi: lpfc: Fix FDMI manufacturer attribute value + - scsi: lpfc: Fix fc4type information for FDMI + - media: saa7146: avoid high stack usage with clang + - scsi: lpfc: Fix SLI3 commands being issued on SLI4 devices + - scsi: lpfc: Fix use-after-free mailbox cmd completion + - audit: fix a memleak caused by auditing load module + - spi : spi-topcliff-pch: Fix to handle empty DMA buffers + - drm: writeback: Fix leak of writeback job + - drm/omap: dsi: Fix PM for display blank with paired dss_pll calls + - drm/omap: Notify all devices in the pipeline of output disconnection + - spi: rspi: Fix sequencer reset during initialization + - regulator: wm831x ldo: Fix notifier mutex lock warning + - regulator: wm831x isink: Fix notifier mutex lock warning + - regulator: ltc3676: Fix notifier mutex lock warning + - regulator: ltc3589: Fix notifier mutex lock warning + - regulator: pv88060: Fix notifier mutex lock warning + - spi: imx: stop buffer overflow in RX FIFO flush + - regulator: lp8755: Fix notifier mutex lock warning + - regulator: da9211: Fix notifier mutex lock warning + - regulator: da9063: Fix notifier mutex lock warning + - regulator: pv88080: Fix notifier mutex lock warning + - regulator: wm831x: Fix notifier mutex lock warning + - regulator: pv88090: Fix notifier mutex lock warning + - regulator: da9062: Fix notifier mutex lock warning + - regulator: da9055: Fix notifier mutex lock warning + - spi: Fix zero length xfer bug + - ASoC: davinci-mcasp: Fix clang warning without CONFIG_PM + - ASoC: ti: fix davinci_mcasp_probe dependencies + - drm/v3d: Handle errors from IRQ setup. + - drm/drv: Hold ref on parent device during drm_device lifetime + - drm: Wake up next in drm_read() chain if we are forced to putback the event + - drm/sun4i: dsi: Change the start delay calculation + - vfio-ccw: Prevent quiesce function going into an infinite loop + - ice: Put __ICE_PREPARED_FOR_RESET check in ice_prepare_for_reset + - drm/sun4i: dsi: Enforce boundaries on the start delay + - NFS: Fix a double unlock from nfs_match,get_client + - Linux 5.0.20 + * Disco update: 5.0.19 upstream stable release (LP: #1837516) + - ipv6: fix src addr routing with the exception table + - ipv6: prevent possible fib6 leaks + - net: Always descend into dsa/ + - net: avoid weird emergency message + - net/mlx4_core: Change the error print to info print + - net: test nouarg before dereferencing zerocopy pointers + - net: usb: qmi_wwan: add Telit 0x1260 and 0x1261 compositions + - nfp: flower: add rcu locks when accessing netdev for tunnels + - ppp: deflate: Fix possible crash in deflate_init + - rtnetlink: always put IFLA_LINK for links with a link-netnsid + - tipc: switch order of device registration to fix a crash + - vsock/virtio: free packets during the socket release + - tipc: fix modprobe tipc failed after switch order of device registration + - vsock/virtio: Initialize core virtio vsock before registering the driver + - net/mlx5e: Add missing ethtool driver info for representors + - net/mlx5e: Additional check for flow destination comparison + - net/mlx5: Imply MLXFW in mlx5_core + - net/mlx5e: Fix ethtool rxfh commands when CONFIG_MLX5_EN_RXNFC is disabled + - blk-mq: free hw queue's resource in hctx's release handler + - regulator: core: fix error path for regulator_set_voltage_unlocked + - parisc: Export running_on_qemu symbol for modules + - parisc: Add memory clobber to TLB purges + - parisc: Skip registering LED when running in QEMU + - parisc: Add memory barrier to asm pdc and sync instructions + - parisc: Allow live-patching of __meminit functions + - parisc: Use PA_ASM_LEVEL in boot code + - parisc: Rename LEVEL to PA_ASM_LEVEL to avoid name clash with DRBD code + - stm class: Fix channel free in stm output free path + - stm class: Fix channel bitmap on 32-bit systems + - brd: re-enable __GFP_HIGHMEM in brd_insert_page() + - proc: prevent changes to overridden credentials + - Revert "MD: fix lock contention for flush bios" + - md: batch flush requests. + - md: add mddev->pers to avoid potential NULL pointer dereference + - md: add a missing endianness conversion in check_sb_changes + - dcache: sort the freeing-without-RCU-delay mess for good. + - intel_th: msu: Fix single mode with IOMMU + - p54: drop device reference count if fails to enable device + - of: fix clang -Wunsequenced for be32_to_cpu() + - brcmfmac: Add DMI nvram filename quirk for ACEPC T8 and T11 mini PCs + - phy: ti-pipe3: fix missing bit-wise or operator when assigning val + - media: ov6650: Fix sensor possibly not detected on probe + - media: imx: csi: Allow unknown nearest upstream entities + - media: imx: Clear fwnode link struct for each endpoint iteration + - RDMA/mlx5: Use get_zeroed_page() for clock_info + - RDMA/ipoib: Allow user space differentiate between valid dev_port + - NFS4: Fix v4.0 client state corruption when mount + - PNFS fallback to MDS if no deviceid found + - clk: hi3660: Mark clk_gate_ufs_subsys as critical + - clk: tegra: Fix PLLM programming on Tegra124+ when PMC overrides divider + - clk: mediatek: Disable tuner_en before change PLL rate + - clk: rockchip: fix wrong clock definitions for rk3328 + - udlfb: delete the unused parameter for dlfb_handle_damage + - udlfb: fix sleeping inside spinlock + - udlfb: introduce a rendering mutex + - fuse: fix writepages on 32bit + - fuse: honor RLIMIT_FSIZE in fuse_file_fallocate + - ovl: fix missing upper fs freeze protection on copy up for ioctl + - gcc-plugins: arm_ssp_per_task_plugin: Fix for older GCC < 6 + - iommu/tegra-smmu: Fix invalid ASID bits on Tegra30/114 + - ceph: flush dirty inodes before proceeding with remount + - x86_64: Add gap to int3 to allow for call emulation + - x86_64: Allow breakpoints to emulate call instructions + - ftrace/x86_64: Emulate call function while updating in breakpoint handler + - tracing: Fix partial reading of trace event's id file + - tracing: probeevent: Fix to make the type of $comm string + - memory: tegra: Fix integer overflow on tick value calculation + - perf intel-pt: Fix instructions sampling rate + - perf intel-pt: Fix improved sample timestamp + - perf intel-pt: Fix sample timestamp wrt non-taken branches + - MIPS: perf: Fix build with CONFIG_CPU_BMIPS5000 enabled + - objtool: Allow AR to be overridden with HOSTAR + - x86/mpx, mm/core: Fix recursive munmap() corruption + - fbdev/efifb: Ignore framebuffer memmap entries that lack any memory types + - fbdev: sm712fb: fix brightness control on reboot, don't set SR30 + - fbdev: sm712fb: fix VRAM detection, don't set SR70/71/74/75 + - fbdev: sm712fb: fix white screen of death on reboot, don't set CR3B-CR3F + - fbdev: sm712fb: fix boot screen glitch when sm712fb replaces VGA + - fbdev: sm712fb: fix crashes during framebuffer writes by correctly mapping + VRAM + - fbdev: sm712fb: fix support for 1024x768-16 mode + - fbdev: sm712fb: use 1024x768 by default on non-MIPS, fix garbled display + - fbdev: sm712fb: fix crashes and garbled display during DPMS modesetting + - PCI: Mark AMD Stoney Radeon R7 GPU ATS as broken + - PCI: Mark Atheros AR9462 to avoid bus reset + - PCI: Reset Lenovo ThinkPad P50 nvgpu at boot if necessary + - PCI: Init PCIe feature bits for managed host bridge alloc + - PCI/AER: Change pci_aer_init() stub to return void + - PCI: rcar: Add the initialization of PCIe link in resume_noirq() + - PCI: Factor out pcie_retrain_link() function + - PCI: Work around Pericom PCIe-to-PCI bridge Retrain Link erratum + - dm cache metadata: Fix loading discard bitset + - dm zoned: Fix zone report handling + - dm delay: fix a crash when invalid device is specified + - dm crypt: move detailed message into debug level + - dm integrity: correctly calculate the size of metadata area + - dm mpath: always free attached_handler_name in parse_path() + - fuse: Add FOPEN_STREAM to use stream_open() + - xfrm: policy: Fix out-of-bound array accesses in __xfrm_policy_unlink + - xfrm: Reset secpath in xfrm failure + - xfrm6_tunnel: Fix potential panic when unloading xfrm6_tunnel module + - vti4: ipip tunnel deregistration fixes. + - xfrm: clean up xfrm protocol checks + - esp4: add length check for UDP encapsulation + - xfrm: Honor original L3 slave device in xfrmi policy lookup + - xfrm4: Fix uninitialized memory read in _decode_session4 + - ARC: PAE40: don't panic and instead turn off hw ioc + - clk: sunxi-ng: nkmp: Avoid GENMASK(-1, 0) + - KVM: PPC: Book3S HV: Perserve PSSCR FAKE_SUSPEND bit on guest exit + - KVM: PPC: Book3S: Protect memslots while validating user address + - power: supply: cpcap-battery: Fix division by zero + - securityfs: fix use-after-free on symlink traversal + - apparmorfs: fix use-after-free on symlink traversal + - PCI: Fix issue with "pci=disable_acs_redir" parameter being ignored + - x86: kvm: hyper-v: deal with buggy TLB flush requests from WS2012 + - mac80211: Fix kernel panic due to use of txq after free + - net: ieee802154: fix missing checks for regmap_update_bits + - KVM: arm/arm64: Ensure vcpu target is unset on reset failure + - power: supply: sysfs: prevent endless uevent loop with + CONFIG_POWER_SUPPLY_DEBUG + - tools: bpftool: fix infinite loop in map create + - bpf: Fix preempt_enable_no_resched() abuse + - qmi_wwan: new Wistron, ZTE and D-Link devices + - iwlwifi: mvm: check for length correctness in iwl_mvm_create_skb() + - sched/cpufreq: Fix kobject memleak + - x86/mm/mem_encrypt: Disable all instrumentation for early SME setup + - KVM: fix KVM_CLEAR_DIRTY_LOG for memory slots of unaligned size + - KVM: selftests: make hyperv_cpuid test pass on AMD + - ufs: fix braino in ufs_get_inode_gid() for solaris UFS flavour + - i2c: designware: ratelimit 'transfer when suspended' errors + - perf bench numa: Add define for RUSAGE_THREAD if not present + - perf cs-etm: Always allocate memory for cs_etm_queue::prev_packet + - perf/x86/intel: Fix race in intel_pmu_disable_event() + - Revert "Don't jump to compute_result state from check_result state" + - md/raid: raid5 preserve the writeback action after the parity check + - driver core: Postpone DMA tear-down until after devres release for probe + failure + - bpf: relax inode permission check for retrieving bpf program + - bpf: add map_lookup_elem_sys_only for lookups from syscall side + - bpf, lru: avoid messing with eviction heuristics upon syscall lookup + - fbdev: sm712fb: fix memory frequency by avoiding a switch/case fallthrough + - Linux 5.0.19 + * CVE-2019-13648 + - powerpc/tm: Fix oops on sigreturn on systems without TM + * bcache kernel warning when attaching device (LP: #1837788) + - bcache: only set BCACHE_DEV_WB_RUNNING when cached device attached + * CVE-2019-14283 + - floppy: fix out-of-bounds read in copy_buffer + * CVE-2019-14284 + - floppy: fix div-by-zero in setup_format_params + * alsa/hda: neither mute led nor mic-mute led work on several Lenovo laptops + (LP: #1837963) + - SAUCE: ALSA: hda - Add a conexant codec entry to let mute led work + + -- Marcelo Henrique Cerri Thu, 15 Aug 2019 16:42:52 -0300 + +linux-azure (5.0.0-1016.17) disco; urgency=medium + + * disco/linux-azure: 5.0.0-1016.17 -proposed tracker (LP: #1840275) + + * Azure: Backport vIOMMU driver (increase vCPU limits) (LP: #1826447) + - x86/Hyper-V: Set x2apic destination mode to physical when x2apic is + available + - iommu/hyper-v: Add Hyper-V stub IOMMU driver + - PCI: hv: Replace hv_vp_set with hv_vpset + - PCI: hv: Refactor hv_irq_unmask() to use cpumask_to_vpset() + - [Config] linux-azure: CONFIG_HYPERV_IOMMU=y + + * Packaging resync (LP: #1786013) + - [Packaging] update helper scripts + + -- Marcelo Henrique Cerri Thu, 15 Aug 2019 12:07:56 -0300 + +linux-azure (5.0.0-1014.14) disco; urgency=medium + + * hibmc-drm Causes Unreadable Display for Huawei amd64 Servers (LP: #1762940) + - [Config] Unset CONFIG_DRM_HISI_HIBMC + + * Make possible to load Mellanox OFED modules (LP: #1837397) + - [Config] linux-azure: CONFIG_MLX{4,5}_INFINIBAND=m + + [ Ubuntu: 5.0.0-25.26 ] + + * CVE-2019-1125 + - x86/cpufeatures: Carve out CQM features retrieval + - x86/cpufeatures: Combine word 11 and 12 into a new scattered features word + - x86/speculation: Prepare entry code for Spectre v1 swapgs mitigations + - x86/speculation: Enable Spectre v1 swapgs mitigations + - x86/entry/64: Use JMP instead of JMPQ + - x86/speculation/swapgs: Exclude ATOMs from speculation through SWAPGS + + [ Ubuntu: 5.0.0-24.25 ] + + * disco/linux: 5.0.0-24.25 -proposed tracker (LP: #1838395) + * Packaging resync (LP: #1786013) + - [Packaging] resync git-ubuntu-log + * hibmc-drm Causes Unreadable Display for Huawei amd64 Servers (LP: #1762940) + - [Config] Set CONFIG_DRM_HISI_HIBMC to arm64 only + - SAUCE: Make CONFIG_DRM_HISI_HIBMC depend on ARM64 + * [18.04 FEAT] zKVM: Add hardware CPU Model - kernel part (LP: #1836153) + - KVM: s390: add debug logging for cpu model subfunctions + - KVM: s390: implement subfunction processor calls + - KVM: s390: add vector enhancements facility 2 to cpumodel + - KVM: s390: add vector BCD enhancements facility to cpumodel + - KVM: s390: add MSA9 to cpumodel + - KVM: s390: provide query function for instructions returning 32 byte + - KVM: s390: add enhanced sort facilty to cpu model + - KVM: s390: add deflate conversion facilty to cpu model + - KVM: s390: enable MSA9 keywrapping functions depending on cpu model + * bcache: risk of data loss on I/O errors in backing or caching devices + (LP: #1829563) + - Revert "bcache: set CACHE_SET_IO_DISABLE in bch_cached_dev_error()" + * Intel ethernet I219 has slow RX speed (LP: #1836152) + - SAUCE: e1000e: add workaround for possible stalled packet + - SAUCE: e1000e: disable force K1-off feature + * Intel ethernet I219 may wrongly detect connection speed as 10Mbps + (LP: #1836177) + - SAUCE: e1000e: Make watchdog use delayed work + * Unhide Nvidia HDA audio controller (LP: #1836308) + - PCI: Enable NVIDIA HDA controllers + * Enable Armada SOCs and MVPP2 NIC driver for disco/generic arm64 + (LP: #1835054) + - [Config] Enable Armada SOCs and MVPP2 NIC driver for disco/generic arm64 + * ixgbe{vf} - Physical Function gets IRQ when VF checks link state + (LP: #1836760) + - ixgbevf: Use cached link state instead of re-reading the value for ethtool + * Two crashes on raid0 error path (during a member device removal) + (LP: #1836806) + - block: Fix a NULL pointer dereference in generic_make_request() + - md/raid0: Do not bypass blocking queue entered for raid0 bios + * CVE-2019-13233 + - x86/insn-eval: Fix use-after-free access to LDT entry + * cifs set_oplock buffer overflow in strcat (LP: #1824981) + - cifs: fix strcat buffer overflow and reduce raciness in + smb21_set_oplock_level() + * CVE-2019-13272 + - ptrace: Fix ->ptracer_cred handling for PTRACE_TRACEME + * hda/realtek: can't detect external mic on a Dell machine (LP: #1836755) + - ALSA: hda/realtek: apply ALC891 headset fixup to one Dell machine + * CVE-2019-12614 + - powerpc/pseries/dlpar: Fix a missing check in dlpar_parse_cc_property() + * bnx2x driver causes 100% CPU load (LP: #1832082) + - bnx2x: Prevent ptp_task to be rescheduled indefinitely + * Sometimes touchpad detected as mouse(i2c designware fails to get adapter + number) (LP: #1835150) + - i2c: i2c-designware-platdrv: Cleanup setting of the adapter number + - i2c: i2c-designware-platdrv: Always use a dynamic adapter number + * Disco update: 5.0.18 upstream stable release (LP: #1836614) + - locking/rwsem: Prevent decrement of reader count before increment + - x86/speculation/mds: Revert CPU buffer clear on double fault exit + - x86/speculation/mds: Improve CPU buffer clear documentation + - objtool: Fix function fallthrough detection + - arm64: dts: rockchip: fix IO domain voltage setting of APIO5 on rockpro64 + - arm64: dts: rockchip: Disable DCMDs on RK3399's eMMC controller. + - ARM: dts: qcom: ipq4019: enlarge PCIe BAR range + - ARM: dts: exynos: Fix interrupt for shared EINTs on Exynos5260 + - ARM: dts: exynos: Fix audio (microphone) routing on Odroid XU3 + - mmc: sdhci-of-arasan: Add DTS property to disable DCMDs. + - ARM: exynos: Fix a leaked reference by adding missing of_node_put + - power: supply: axp288_charger: Fix unchecked return value + - power: supply: axp288_fuel_gauge: Add ACEPC T8 and T11 mini PCs to the + blacklist + - arm64: mmap: Ensure file offset is treated as unsigned + - arm64: arch_timer: Ensure counter register reads occur with seqlock held + - arm64: compat: Reduce address limit + - arm64: Clear OSDLR_EL1 on CPU boot + - arm64: Save and restore OSDLR_EL1 across suspend/resume + - sched/x86: Save [ER]FLAGS on context switch + - x86/MCE: Add an MCE-record filtering function + - x86/MCE/AMD: Turn off MC4_MISC thresholding on all family 0x15 models + - x86/MCE/AMD: Carve out the MC4_MISC thresholding quirk + - x86/MCE: Group AMD function prototypes in + - x86/MCE/AMD: Don't report L1 BTB MCA errors on some family 17h models + - crypto: crypto4xx - fix ctr-aes missing output IV + - crypto: crypto4xx - fix cfb and ofb "overran dst buffer" issues + - crypto: salsa20 - don't access already-freed walk.iv + - crypto: lrw - don't access already-freed walk.iv + - crypto: chacha-generic - fix use as arm64 no-NEON fallback + - crypto: chacha20poly1305 - set cra_name correctly + - crypto: ccp - Do not free psp_master when PLATFORM_INIT fails + - crypto: vmx - fix copy-paste error in CTR mode + - crypto: skcipher - don't WARN on unprocessed data after slow walk step + - crypto: crct10dif-generic - fix use via crypto_shash_digest() + - crypto: x86/crct10dif-pcl - fix use via crypto_shash_digest() + - crypto: arm64/gcm-aes-ce - fix no-NEON fallback code + - crypto: gcm - fix incompatibility between "gcm" and "gcm_base" + - crypto: rockchip - update IV buffer to contain the next IV + - crypto: caam/qi2 - fix zero-length buffer DMA mapping + - crypto: caam/qi2 - fix DMA mapping of stack memory + - crypto: caam/qi2 - generate hash keys in-place + - crypto: arm/aes-neonbs - don't access already-freed walk.iv + - crypto: arm64/aes-neonbs - don't access already-freed walk.iv + - mmc: tegra: fix ddr signaling for non-ddr modes + - mmc: core: Fix tag set memory leak + - mmc: sdhci-pci: Fix BYT OCP setting + - ALSA: line6: toneport: Fix broken usage of timer for delayed execution + - ALSA: usb-audio: Fix a memory leak bug + - ALSA: hda/realtek - EAPD turn on later + - ASoC: max98090: Fix restore of DAPM Muxes + - ASoC: RT5677-SPI: Disable 16Bit SPI Transfers + - ASoC: fsl_esai: Fix missing break in switch statement + - ASoC: codec: hdac_hdmi add device_link to card device + - bpf, arm64: remove prefetch insn in xadd mapping + - crypto: ccree - remove special handling of chained sg + - crypto: ccree - fix mem leak on error path + - crypto: ccree - don't map MAC key on stack + - crypto: ccree - use correct internal state sizes for export + - crypto: ccree - don't map AEAD key and IV on stack + - crypto: ccree - pm resume first enable the source clk + - crypto: ccree - HOST_POWER_DOWN_EN should be the last CC access during + suspend + - crypto: ccree - add function to handle cryptocell tee fips error + - crypto: ccree - handle tee fips error during power management resume + - mm/mincore.c: make mincore() more conservative + - mm/huge_memory: fix vmf_insert_pfn_{pmd, pud}() crash, handle unaligned + addresses + - mm/hugetlb.c: don't put_page in lock of hugetlb_lock + - hugetlb: use same fault hash key for shared and private mappings + - ocfs2: fix ocfs2 read inode data panic in ocfs2_iget + - userfaultfd: use RCU to free the task struct when fork fails + - ACPI: PM: Set enable_for_wake for wakeup GPEs during suspend-to-idle + - mfd: da9063: Fix OTP control register names to match datasheets for + DA9063/63L + - mfd: max77620: Fix swapped FPS_PERIOD_MAX_US values + - mtd: spi-nor: intel-spi: Avoid crossing 4K address boundary on read/write + - mtd: maps: physmap: Store gpio_values correctly + - mtd: maps: Allow MTD_PHYSMAP with MTD_RAM + - tty: vt.c: Fix TIOCL_BLANKSCREEN console blanking if blankinterval == 0 + - tty/vt: fix write/write race in ioctl(KDSKBSENT) handler + - jbd2: check superblock mapped prior to committing + - ext4: make sanity check in mballoc more strict + - ext4: ignore e_value_offs for xattrs with value-in-ea-inode + - ext4: avoid drop reference to iloc.bh twice + - ext4: fix use-after-free race with debug_want_extra_isize + - ext4: actually request zeroing of inode table after grow + - ext4: fix ext4_show_options for file systems w/o journal + - btrfs: Check the first key and level for cached extent buffer + - btrfs: Correctly free extent buffer in case btree_read_extent_buffer_pages + fails + - btrfs: Honour FITRIM range constraints during free space trim + - Btrfs: send, flush dellaloc in order to avoid data loss + - Btrfs: do not start a transaction during fiemap + - Btrfs: do not start a transaction at iterate_extent_inodes() + - Btrfs: fix race between send and deduplication that lead to failures and + crashes + - bcache: fix a race between cache register and cacheset unregister + - bcache: never set KEY_PTRS of journal key to 0 in journal_reclaim() + - ipmi:ssif: compare block number correctly for multi-part return messages + - crypto: ccm - fix incompatibility between "ccm" and "ccm_base" + - fs/writeback.c: use rcu_barrier() to wait for inflight wb switches going + into workqueue when umount + - tty: Don't force RISCV SBI console as preferred console + - ext4: fix data corruption caused by overlapping unaligned and aligned IO + - ext4: fix use-after-free in dx_release() + - ext4: avoid panic during forced reboot due to aborted journal + - ALSA: hda/realtek - Fix for Lenovo B50-70 inverted internal microphone bug + - jbd2: fix potential double free + - KVM: Fix the bitmap range to copy during clear dirty + - KVM: x86: Skip EFER vs. guest CPUID checks for host-initiated writes + - KVM: lapic: Busy wait for timer to expire when using hv_timer + - kbuild: turn auto.conf.cmd into a mandatory include file + - xen/pvh: set xen_domain_type to HVM in xen_pvh_init + - xen/pvh: correctly setup the PV EFI interface for dom0 + - libnvdimm/namespace: Fix label tracking error + - iov_iter: optimize page_copy_sane() + - mm/gup: Remove the 'write' parameter from gup_fast_permitted() + - s390/mm: make the pxd_offset functions more robust + - s390/mm: convert to the generic get_user_pages_fast code + - ext4: fix compile error when using BUFFER_TRACE + - ext4: don't update s_rev_level if not required + - Linux 5.0.18 + * Disco update: 5.0.17 upstream stable release (LP: #1836577) + - bfq: update internal depth state when queue depth changes + - platform/x86: sony-laptop: Fix unintentional fall-through + - platform/x86: thinkpad_acpi: Disable Bluetooth for some machines + - platform/x86: dell-laptop: fix rfkill functionality + - hwmon: (pwm-fan) Disable PWM if fetching cooling data fails + - hwmon: (occ) Fix extended status bits + - selftests/seccomp: Handle namespace failures gracefully + - kernfs: fix barrier usage in __kernfs_new_node() + - virt: vbox: Sanity-check parameter types for hgcm-calls coming from + userspace + - USB: serial: fix unthrottle races + - iio: adc: xilinx: fix potential use-after-free on remove + - iio: adc: xilinx: fix potential use-after-free on probe + - iio: adc: xilinx: prevent touching unclocked h/w on remove + - acpi/nfit: Always dump _DSM output payload + - libnvdimm/namespace: Fix a potential NULL pointer dereference + - HID: input: add mapping for Expose/Overview key + - HID: input: add mapping for keyboard Brightness Up/Down/Toggle keys + - HID: input: add mapping for "Toggle Display" key + - libnvdimm/btt: Fix a kmemdup failure check + - s390/dasd: Fix capacity calculation for large volumes + - mac80211: fix unaligned access in mesh table hash function + - mac80211: Increase MAX_MSG_LEN + - cfg80211: Handle WMM rules in regulatory domain intersection + - mac80211: fix memory accounting with A-MSDU aggregation + - nl80211: Add NL80211_FLAG_CLEAR_SKB flag for other NL commands + - libnvdimm/security: provide fix for secure-erase to use zero-key + - libnvdimm/pmem: fix a possible OOB access when read and write pmem + - tools/testing/nvdimm: Retain security state after overwrite + - s390/3270: fix lockdep false positive on view->lock + - drm/ttm: fix dma_fence refcount imbalance on error path + - drm/amd/display: extending AUX SW Timeout + - clocksource/drivers/npcm: select TIMER_OF + - clocksource/drivers/oxnas: Fix OX820 compatible + - selftests: fib_tests: Fix 'Command line is not complete' errors + - drm/amdgpu: shadow in shadow_list without tbo.mem.start cause page fault in + sriov TDR + - mISDN: Check address length before reading address family + - vxge: fix return of a free'd memblock on a failed dma mapping + - qede: fix write to free'd pointer error and double free of ptp + - afs: Unlock pages for __pagevec_release() + - afs: Fix in-progess ops to ignore server-level callback invalidation + - qed: Delete redundant doorbell recovery types + - qed: Fix the doorbell address sanity check + - qed: Fix missing DORQ attentions + - qed: Fix the DORQ's attentions handling + - drm/amd/display: If one stream full updates, full update all planes + - s390/pkey: add one more argument space for debug feature entry + - x86/build/lto: Fix truncated .bss with -fdata-sections + - x86/mm: Prevent bogus warnings with "noexec=off" + - x86/reboot, efi: Use EFI reboot for Acer TravelMate X514-51T + - KVM: nVMX: always use early vmcs check when EPT is disabled + - KVM: fix spectrev1 gadgets + - KVM: x86: avoid misreporting level-triggered irqs as edge-triggered in + tracing + - tools lib traceevent: Fix missing equality check for strcmp + - perf top: Always sample time to satisfy needs of use of ordered queuing + - ipmi: ipmi_si_hardcode.c: init si_type array to fix a crash + - ocelot: Don't sleep in atomic context (irqs_disabled()) + - perf tools: Fix map reference counting + - scsi: aic7xxx: fix EISA support + - slab: store tagged freelist for off-slab slabmgmt + - mm/hotplug: treat CMA pages as unmovable + - mm: fix inactive list balancing between NUMA nodes and cgroups + - init: initialize jump labels before command line option parsing + - drm: bridge: dw-hdmi: Fix overflow workaround for Rockchip SoCs + - selftests: netfilter: check icmp pkttoobig errors are set as related + - ipvs: do not schedule icmp errors from tunnels + - netfilter: ctnetlink: don't use conntrack/expect object addresses as id + - netfilter: nf_tables: prevent shift wrap in nft_chain_parse_hook() + - netfilter: nat: fix icmp id randomization + - MIPS: perf: ath79: Fix perfcount IRQ assignment + - IB/mlx5: Fix scatter to CQE in DCT QP creation + - s390: ctcm: fix ctcm_new_device error return code + - drm/sun4i: Set device driver data at bind time for use in unbind + - drm/sun4i: Fix component unbinding and component master deletion + - of_net: Fix residues after of_get_nvmem_mac_address removal + - selftests/net: correct the return value for run_afpackettests + - netfilter: never get/set skb->tstamp + - netfilter: fix nf_l4proto_log_invalid to log invalid packets + - dmaengine: bcm2835: Avoid GFP_KERNEL in device_prep_slave_sg + - gpu: ipu-v3: dp: fix CSC handling + - drm/imx: don't skip DP channel disable for background plane + - ARM: fix function graph tracer and unwinder dependencies + - ARM: 8856/1: NOMMU: Fix CCR register faulty initialization when MPU is + disabled + - spi: Micrel eth switch: declare missing of table + - spi: ST ST95HF NFC: declare missing of table + - ceph: handle the case where a dentry has been renamed on outstanding req + - Revert "drm/virtio: drop prime import/export callbacks" + - drm/sun4i: Unbind components before releasing DRM and memory + - Input: snvs_pwrkey - make it depend on ARCH_MXC + - Input: synaptics-rmi4 - fix possible double free + - net: vrf: Fix operation not supported when set vrf mac + - gpio: Fix gpiochip_add_data_with_key() error path + - mm/memory_hotplug.c: drop memory device reference after find_memory_block() + - mm/page_alloc.c: avoid potential NULL pointer dereference + - bpf: only test gso type on gso packets + - net: sched: fix cleanup NULL pointer exception in act_mirr + - net: mvpp2: fix validate for PPv2.1 + - drm/rockchip: fix for mailbox read validation. + - cw1200: fix missing unlock on error in cw1200_hw_scan() + - mwl8k: Fix rate_idx underflow + - rtlwifi: rtl8723ae: Fix missing break in switch statement + - Don't jump to compute_result state from check_result state + - bonding: fix arp_validate toggling in active-backup mode + - bridge: Fix error path for kobject_init_and_add() + - dpaa_eth: fix SG frame cleanup + - fib_rules: return 0 directly if an exactly same rule exists when NLM_F_EXCL + not supplied + - ipv4: Fix raw socket lookup for local traffic + - net: dsa: Fix error cleanup path in dsa_init_module + - net: ethernet: stmmac: dwmac-sun8i: enable support of unicast filtering + - net: macb: Change interrupt and napi enable order in open + - net: seeq: fix crash caused by not set dev.parent + - net: ucc_geth - fix Oops when changing number of buffers in the ring + - packet: Fix error path in packet_init + - selinux: do not report error on connect(AF_UNSPEC) + - tipc: fix hanging clients using poll with EPOLLOUT flag + - vlan: disable SIOCSHWTSTAMP in container + - vrf: sit mtu should not be updated when vrf netdev is the link + - tuntap: fix dividing by zero in ebpf queue selection + - tuntap: synchronize through tfiles array instead of tun->numqueues + - net: phy: fix phy_validate_pause + - flow_dissector: disable preemption around BPF calls + - isdn: bas_gigaset: use usb_fill_int_urb() properly + - drivers/virt/fsl_hypervisor.c: dereferencing error pointers in ioctl + - drivers/virt/fsl_hypervisor.c: prevent integer overflow in ioctl + - powerpc/book3s/64: check for NULL pointer in pgd_alloc() + - powerpc/powernv/idle: Restore IAMR after idle + - powerpc/booke64: set RI in default MSR + - virtio_ring: Fix potential mem leak in virtqueue_add_indirect_packed + - PCI: hv: Fix a memory leak in hv_eject_device_work() + - PCI: hv: Add hv_pci_remove_slots() when we unload the driver + - PCI: hv: Add pci_destroy_slot() in pci_devices_present_work(), if necessary + - f2fs: Fix use of number of devices + - Linux 5.0.17 + - [Config] update configs after update to 5.0.17 + * Disco update: 5.0.16 upstream stable release (LP: #1835580) + - Linux 5.0.16 + * CVE-2019-10126 + - mwifiex: Fix heap overflow in mwifiex_uap_parse_tail_ies() + * CVE-2019-3846 + - mwifiex: Fix possible buffer overflows at parsing bss descriptor + * CVE-2019-12984 + - nfc: Ensure presence of required attributes in the deactivate_target handler + * Sometimes touchpad(goodix) can't use tap function (LP: #1836020) + - SAUCE: i2c: designware: add Inpiron/Vostro 7590 into i2c quirk + * proc_thermal flooding dmesg (LP: #1824690) + - drivers: thermal: processor_thermal: Downgrade error message + + [ Ubuntu: 5.0.0-23.24 ] + + * disco/linux: 5.0.0-23.24 -proposed tracker (LP: #1838271) + * linux hwe i386 kernel 5.0.0-21.22~18.04.1 crashes on Lenovo x220 + (LP: #1838115) + - x86/mm: Check for pfn instead of page in vmalloc_sync_one() + - x86/mm: Sync also unmappings in vmalloc_sync_all() + - mm/vmalloc.c: add priority threshold to __purge_vmap_area_lazy() + - mm/vmalloc: Sync unmappings in __purge_vmap_area_lazy() + + -- Kleber Sacilotto de Souza Thu, 01 Aug 2019 16:14:53 +0200 + +linux-azure (5.0.0-1012.12) disco; urgency=medium + + * linux-azure: 5.0.0-1012.12 -proposed tracker (LP: #1834888) + + * Disco update: 5.0.12 upstream stable release (LP: #1830934) + - [Config] Document drop of axis-fifo for amd64/i386 + + * AX88772A USB to Ethernet dongle doesn't work (LP: #1834114) + - [Config] update configs and annotations for ASIX renamed + + [ Ubuntu: 5.0.0-21.22 ] + + * linux: 5.0.0-21.22 -proposed tracker (LP: #1834902) + * Disco update: 5.0.15 upstream stable release (LP: #1834529) + - net: stmmac: Use bfsize1 in ndesc_init_rx_desc + - Drivers: hv: vmbus: Remove the undesired put_cpu_ptr() in hv_synic_cleanup() + - ubsan: Fix nasty -Wbuiltin-declaration-mismatch GCC-9 warnings + - staging: greybus: power_supply: fix prop-descriptor request size + - staging: wilc1000: Avoid GFP_KERNEL allocation from atomic context. + - staging: most: cdev: fix chrdev_region leak in mod_exit + - staging: most: sound: pass correct device when creating a sound card + - ASoC: tlv320aic3x: fix reset gpio reference counting + - ASoC: hdmi-codec: fix S/PDIF DAI + - ASoC: stm32: sai: fix iec958 controls indexation + - ASoC: stm32: sai: fix exposed capabilities in spdif mode + - ASoC: stm32: sai: fix race condition in irq handler + - ASoC:soc-pcm:fix a codec fixup issue in TDM case + - ASoC:hdac_hda:use correct format to setup hda codec + - ASoC:intel:skl:fix a simultaneous playback & capture issue on hda platform + - ASoC: dpcm: prevent snd_soc_dpcm use after free + - ASoC: nau8824: fix the issue of the widget with prefix name + - ASoC: nau8810: fix the issue of widget with prefixed name + - ASoC: samsung: odroid: Fix clock configuration for 44100 sample rate + - ASoC: rt5682: Check JD status when system resume + - ASoC: rt5682: fix jack type detection issue + - ASoC: rt5682: recording has no sound after booting + - ASoC: wm_adsp: Add locking to wm_adsp2_bus_error + - clk: meson-gxbb: round the vdec dividers to closest + - ASoC: stm32: dfsdm: manage multiple prepare + - ASoC: stm32: dfsdm: fix debugfs warnings on entry creation + - ASoC: cs4270: Set auto-increment bit for register writes + - ASoC: dapm: Fix NULL pointer dereference in snd_soc_dapm_free_kcontrol + - drm/omap: hdmi4_cec: Fix CEC clock handling for PM + - IB/hfi1: Clear the IOWAIT pending bits when QP is put into error state + - IB/hfi1: Eliminate opcode tests on mr deref + - IB/hfi1: Fix the allocation of RSM table + - MIPS: KGDB: fix kgdb support for SMP platforms. + - ASoC: tlv320aic32x4: Fix Common Pins + - drm/mediatek: Fix an error code in mtk_hdmi_dt_parse_pdata() + - perf/x86/intel: Fix handling of wakeup_events for multi-entry PEBS + - perf/x86/intel: Initialize TFA MSR + - linux/kernel.h: Use parentheses around argument in u64_to_user_ptr() + - iov_iter: Fix build error without CONFIG_CRYPTO + - xtensa: fix initialization of pt_regs::syscall in start_thread + - ASoC: rockchip: pdm: fix regmap_ops hang issue + - drm/amdkfd: Add picasso pci id + - drm/amdgpu: Adjust IB test timeout for XGMI configuration + - drm/amdgpu: amdgpu_device_recover_vram always failed if only one node in + shadow_list + - drm/amd/display: fix cursor black issue + - ASoC: cs35l35: Disable regulators on driver removal + - objtool: Add rewind_stack_do_exit() to the noreturn list + - slab: fix a crash by reading /proc/slab_allocators + - drm/sun4i: tcon top: Fix NULL/invalid pointer dereference in + sun8i_tcon_top_un/bind + - virtio_pci: fix a NULL pointer reference in vp_del_vqs + - RDMA/vmw_pvrdma: Fix memory leak on pvrdma_pci_remove + - RDMA/hns: Fix bug that caused srq creation to fail + - KEYS: trusted: fix -Wvarags warning + - scsi: csiostor: fix missing data copy in csio_scsi_err_handler() + - drm/mediatek: fix possible object reference leak + - drm/mediatek: fix the rate and divder of hdmi phy for MT2701 + - drm/mediatek: make implementation of recalc_rate() for MT2701 hdmi phy + - drm/mediatek: remove flag CLK_SET_RATE_PARENT for MT2701 hdmi phy + - drm/mediatek: using new factor for tvdpll for MT2701 hdmi phy + - drm/mediatek: no change parent rate in round_rate() for MT2701 hdmi phy + - ASoC: Intel: kbl: fix wrong number of channels + - ASoC: stm32: sai: fix master clock management + - ALSA: hda: Fix racy display power access + - virtio-blk: limit number of hw queues by nr_cpu_ids + - blk-mq: introduce blk_mq_complete_request_sync() + - nvme: cancel request synchronously + - nvme-fc: correct csn initialization and increments on error + - nvmet: fix discover log page when offsets are used + - platform/x86: pmc_atom: Drop __initconst on dmi table + - NFSv4.1 fix incorrect return value in copy_file_range + - perf/core: Fix perf_event_disable_inatomic() race + - genirq: Prevent use-after-free and work list corruption + - usb: dwc3: Allow building USB_DWC3_QCOM without EXTCON + - usb: dwc3: Fix default lpm_nyet_threshold value + - USB: serial: f81232: fix interrupt worker not stop + - USB: cdc-acm: fix unthrottle races + - usb-storage: Set virt_boundary_mask to avoid SG overflows + - intel_th: pci: Add Comet Lake support + - iio: adc: qcom-spmi-adc5: Fix of-based module autoloading + - cpufreq: armada-37xx: fix frequency calculation for opp + - ACPI / LPSS: Use acpi_lpss_* instead of acpi_subsys_* functions for + hibernate + - soc: sunxi: Fix missing dependency on REGMAP_MMIO + - scsi: lpfc: change snprintf to scnprintf for possible overflow + - scsi: qla2xxx: Fix incorrect region-size setting in optrom SYSFS routines + - scsi: qla2xxx: Fix device staying in blocked state + - Bluetooth: Align minimum encryption key size for LE and BR/EDR connections + - Bluetooth: Fix not initializing L2CAP tx_credits + - Bluetooth: hci_bcm: Fix empty regulator supplies for Intel Macs + - UAS: fix alignment of scatter/gather segments + - ASoC: Intel: avoid Oops if DMA setup fails + - i3c: Fix a shift wrap bug in i3c_bus_set_addr_slot_status() + - locking/futex: Allow low-level atomic operations to return -EAGAIN + - arm64: futex: Bound number of LDXR/STXR loops in FUTEX_WAKE_OP + - Linux 5.0.15 + - Revert "Bluetooth: Align minimum encryption key size for LE and BR/EDR + connections" + * QCA9377 isn't being recognized sometimes (LP: #1757218) + - SAUCE: USB: Disable USB2 LPM at shutdown + * Cache line contention prevents scaling of 100Gbps performance (LP: #1832909) + - iommu/iova: Separate atomic variables to improve performance + * net: hns: Fix loopback test failed at copper ports (LP: #1833132) + - net: hns: Fix loopback test failed at copper ports + * hns: fix ICMP6 neighbor solicitation messages discard problem (LP: #1833140) + - net: hns: fix unsigned comparison to less than zero + * [UBUNTU] pkey: Indicate old mkvp only if old and curr. mkvp are different + (LP: #1832625) + - pkey: Indicate old mkvp only if old and current mkvp are different + * [UBUNTU] kernel: Fix gcm-aes-s390 wrong scatter-gather list processing + (LP: #1832623) + - s390/crypto: fix gcm-aes-s390 selftest failures + * AX88772A USB to Ethernet dongle doesn't work (LP: #1834114) + - net: phy: rename Asix Electronics PHY driver + - [Config] update configs and annotations for ASIX renamed + * Add nvidia-418 dkms build support to disco (LP: #1834476) + - add nvidia-418 dkms build + * depmod may prefer unsigned l-r-m nvidia modules to signed modules + (LP: #1834479) + - [Packaging] dkms-build--nvidia-N -- clean up unsigned ko files + * Hi1620 driver updates from upstream 5.2 merge window (LP: #1830815) + - ethtool: Added support for 50Gbps per lane link modes + - net: hns3: Make hclgevf_update_link_mode static + - net: hns3: Make hclge_destroy_cmd_queue static + - RDMA/hns: Only assign the relatived fields of psn if IB_QP_SQ_PSN is set + - RDMA/hns: Only assign the fields of the rq psn if IB_QP_RQ_PSN is set + - RDMA/hns: Update the range of raq_psn field of qp context + - RDMA/hns: Only assgin some fields if the relatived attr_mask is set + - RDMA/hns: Hide error print information with roce vf device + - RDMA/hns: Bugfix for sending with invalidate + - RDMA/hns: Delete unused variable in hns_roce_v2_modify_qp function + - RDMA/hns: Limit scope of hns_roce_cmq_send() + - RDMA/hns: Convert cq_table to XArray + - RDMA/hns: Convert qp_table_tree to XArray + - RDMA/hns: Fix bad endianess of port_pd variable + - net: hns3: check 1000M half for hns3_ethtool_ops.set_link_ksettings + - net: hns3: reduce resources use in kdump kernel + - net: hns3: modify the VF network port media type acquisition method + - net: hns3: return 0 and print warning when hit duplicate MAC + - net: hns3: minor optimization for ring_space + - net: hns3: minor optimization for datapath + - net: hns3: simplify hclgevf_cmd_csq_clean + - net: hns3: add protect when handling mac addr list + - net: hns3: check resetting status in hns3_get_stats() + - net: hns3: prevent change MTU when resetting + - net: hns3: modify HNS3_NIC_STATE_INITED flag in + hns3_reset_notify_uninit_enet + - net: hns3: split function hnae3_match_n_instantiate() + - RDMA/hns: Dump detailed driver-specific CQ + - RDMA/hns: Support to create 1M srq queue + - RDMA/hns: Bugfix for SCC hem free + - net: hns3: set vport alive state to default while resetting + - net: hns3: set up the vport alive state while reinitializing + - net: hns3: not reset vport who not alive when PF reset + - net: hns3: adjust the timing of hns3_client_stop when unloading + - net: hns3: deactive the reset timer when reset successfully + - net: hns3: ignore lower-level new coming reset + - net: hns3: do not request reset when hardware resetting + - net: hns3: handle pending reset while reset fail + - net: hns3: stop mailbox handling when command queue need re-init + - net: hns3: add error handler for initializing command queue + - net: hns3: remove resetting check in hclgevf_reset_task_schedule + - net: hns3: fix keep_alive_timer not stop problem + - scsi: hisi_sas: add host reset interface for test + - scsi: hisi_sas: Remedy inconsistent PHY down state in software + - scsi: hisi_sas: Fix for setting the PHY linkrate when disconnected + - scsi: hisi_sas: Adjust the printk format of functions hisi_sas_init_device() + - scsi: hisi_sas: allocate different SAS address for directly attached + situation + - scsi: hisi_sas: Support all RAS events with MSI interrupts + - scsi: hisi_sas: Don't hard reset disk during controller reset + - scsi: hisi_sas: Don't fail IT nexus reset for Open Reject timeout + - scsi: hisi_sas: Some misc tidy-up + - net: hns3: modify VLAN initialization to be compatible with port based VLAN + - net: hns3: fix VLAN offload handle for VLAN inserted by port + - net: hns3: fix set port based VLAN for PF + - net: hns3: fix set port based VLAN issue for VF + - net: hns3: minor refactor for hns3_rx_checksum + - net: hns3: add hns3_gro_complete for HW GRO process + - net: hns3: always assume no drop TC for performance reason + - net: hns3: divide shared buffer between TC + - net: hns3: set dividual reset level for all RAS and MSI-X errors + - net: hns3: do not initialize MDIO bus when PHY is inexistent + - net: hns3: free the pending skb when clean RX ring + - net: hns3: code optimization for command queue' spin lock + - net: hns3: fix sparse: warning when calling hclge_set_vlan_filter_hw() + - net: hns3: fix for vport->bw_limit overflow problem + - net: hns3: add reset statistics info for PF + - net: hns3: add reset statistics for VF + - net: hns3: add some debug information for hclge_check_event_cause + - net: hns3: add some debug info for hclgevf_get_mbx_resp() + - net: hns3: refine tx timeout count handle + - net: hns3: fix loop condition of hns3_get_tx_timeo_queue_info() + - net: hns3: dump more information when tx timeout happens + - net: hns3: Add support for netif message level settings + - net: hns3: add support for dump ncl config by debugfs + - net: hns3: Add handling of MAC tunnel interruption + - net: hns3: add queue's statistics update to service task + - net: hns3: add function type check for debugfs help information + - RDMA/hns: Bugfix for mapping user db + - net: hns3: fix data race between ring->next_to_clean + - net: hns3: fix for TX clean num when cleaning TX BD + - net: hns3: handle the BD info on the last BD of the packet + - net: hns3: stop sending keep alive msg when VF command queue needs reinit + - net: hns3: use atomic_t replace u32 for arq's count + - net: hns3: use a reserved byte to identify need_resp flag + - net: hns3: not reset TQP in the DOWN while VF resetting + - net: hns3: fix pause configure fail problem + - net: hns3: extend the loopback state acquisition time + - net: hns3: prevent double free in hns3_put_ring_config() + - net: hns3: remove reset after command send failed + - net: hns3: add support for multiple media type + - net: hns3: add autoneg and change speed support for fibre port + - net: hns3: add support for FEC encoding control + - net: hns3: unify maybe_stop_tx for TSO and non-TSO case + - net: hns3: use napi_schedule_irqoff in hard interrupts handlers + - net: hns3: add counter for times RX pages gets allocated + - net: hns3: add linearizing checking for TSO case + - net: hns3: fix for tunnel type handling in hns3_rx_checksum + - net: hns3: refactor BD filling for l2l3l4 info + - net: hns3: combine len and checksum handling for inner and outer header. + - net: hns3: fix error handling for desc filling + - net: hns3: optimize the barrier using when cleaning TX BD + - net: hns3: unify the page reusing for page size 4K and 64K + - net: hns3: some cleanup for struct hns3_enet_ring + - net: hns3: use devm_kcalloc when allocating desc_cb + - net: hns3: remove redundant assignment of l2_hdr to itself + - net: hns3: initialize CPU reverse mapping + - net: hns3: refine the flow director handle + - net: hns3: add aRFS support for PF + - net: hns3: fix for FEC configuration + - RDMA/hns: Remove unnecessary print message in aeq + - RDMA/hns: Update CQE specifications + - RDMA/hns: Move spin_lock_irqsave to the correct place + - RDMA/hns: Remove jiffies operation in disable interrupt context + - RDMA/hns: Replace magic numbers with #defines + - net: hns3: fix compile warning without CONFIG_RFS_ACCEL + - net: hns3: fix for HNS3_RXD_GRO_SIZE_M macro + - net: hns3: add support for dump firmware statistics by debugfs + - net: hns3: use HCLGE_STATE_NIC_REGISTERED to indicate PF NIC client has + registered + - net: hns3: use HCLGE_STATE_ROCE_REGISTERED to indicate PF ROCE client has + registered + - net: hns3: use HCLGEVF_STATE_NIC_REGISTERED to indicate VF NIC client has + registered + - net: hns3: modify hclge_init_client_instance() + - net: hns3: modify hclgevf_init_client_instance() + - net: hns3: add handshake with hardware while doing reset + - net: hns3: stop schedule reset service while unloading driver + - net: hns3: adjust hns3_uninit_phy()'s location in the hns3_client_uninit() + - net: hns3: fix a memory leak issue for hclge_map_unmap_ring_to_vf_vector + - RDMA/hns: Bugfix for posting multiple srq work request + - net: hns3: remove redundant core reset + - net: hns3: don't configure new VLAN ID into VF VLAN table when it's full + - net: hns3: fix VLAN filter restore issue after reset + - net: hns3: set the port shaper according to MAC speed + - net: hns3: add a check to pointer in error_detected and slot_reset + - net: hns3: set ops to null when unregister ad_dev + - net: hns3: add handling of two bits in MAC tunnel interrupts + - net: hns3: remove setting bit of reset_requests when handling mac tunnel + interrupts + - net: hns3: add opcode about query and clear RAS & MSI-X to special opcode + - net: hns3: delay and separate enabling of NIC and ROCE HW errors + - RDMA/hns: fix inverted logic of readl read and shift + - RDMA/hns: Bugfix for filling the sge of srq + - net: hns3: log detail error info of ROCEE ECC and AXI errors + - net: hns3: fix wrong size of mailbox responding data + - net: hns3: make HW GRO handling compliant with SW GRO + - net: hns3: replace numa_node_id with numa_mem_id for buffer reusing + - net: hns3: refactor hns3_get_new_int_gl function + - net: hns3: trigger VF reset if a VF has an over_8bd_nfe_err + - net: hns3: delete the redundant user NIC codes + - net: hns3: small changes for magic numbers + - net: hns3: use macros instead of magic numbers + - net: hns3: refactor PF/VF RSS hash key configuration + - net: hns3: some modifications to simplify and optimize code + - net: hns3: fix some coding style issues + - net: hns3: delay setting of reset level for hw errors until slot_reset is + called + - net: hns3: fix avoid unnecessary resetting for the H/W errors which do not + require reset + - net: hns3: process H/W errors occurred before HNS dev initialization + - net: hns3: add recovery for the H/W errors occurred before the HNS dev + initialization + - net: hns3: some changes of MSI-X bits in PPU(RCB) + - net: hns3: extract handling of mpf/pf msi-x errors into functions + - net: hns3: clear restting state when initializing HW device + - net: hns3: free irq when exit from abnormal branch + - net: hns3: fix for dereferencing before null checking + - net: hns3: fix for skb leak when doing selftest + - net: hns3: delay ring buffer clearing during reset + - net: hns3: some variable modification + - net: hns3: fix dereference of ae_dev before it is null checked + - scsi: hisi_sas: Delete PHY timers when rmmod or probe failed + - scsi: hisi_sas: Fix the issue of argument mismatch of printing ecc errors + - scsi: hisi_sas: Reduce HISI_SAS_SGE_PAGE_CNT in size + - scsi: hisi_sas: Change the type of some numbers to unsigned + - scsi: hisi_sas: Ignore the error code between phy down to phy up + - scsi: hisi_sas: Disable stash for v3 hw + - net: hns3: Add missing newline at end of file + - net: hns3: Fix inconsistent indenting + - RDMa/hns: Don't stuck in endless timeout loop + * Kernel modules generated incorrectly when system is localized to a non- + English language (LP: #1828084) + - scripts: override locale from environment when running recordmcount.pl + * [UBUNTU] kernel: Fix wrong dispatching for control domain CPRBs + (LP: #1832624) + - s390/zcrypt: Fix wrong dispatching for control domain CPRBs + * shiftfs: allow changing ro/rw for subvolumes (LP: #1832316) + - SAUCE: shiftfs: allow changing ro/rw for subvolumes + * Sound device not detected after resume from hibernate (LP: #1826868) + - drm/i915: Force 2*96 MHz cdclk on glk/cnl when audio power is enabled + - drm/i915: Save the old CDCLK atomic state + - drm/i915: Remove redundant store of logical CDCLK state + - drm/i915: Skip modeset for cdclk changes if possible + * [raven] fix screen corruption on modprobe (LP: #1831846) + - drm/amdgpu: keep stolen memory on picasso + - drm/amdgpu: reserve stollen vram for raven series + * Handle overflow in proc_get_long of sysctl (LP: #1833935) + - sysctl: handle overflow in proc_get_long + * Oops during sas expander hotplugging (LP: #1831799) + - scsi: libsas: delete sas port if expander discover failed + * [SRU][B/B-OEM/C/D/OEM-OSP1] Add RTL8822 wifi driver rtw88 (LP: #1831828) + - rtw88: new Realtek 802.11ac driver + - rtw88: fix shift of more than 32 bits of a integer + - rtw88: phy: mark expected switch fall-throughs + - rtw88: Make RA_MASK macros ULL + - [Config] Add realtek wifi RTW88 support + * Dell XPS 13 (9370) defaults to s2idle sleep/suspend instead of deep, NVMe + drains lots of power under s2idle (LP: #1808957) + - Revert "UBUNTU: SAUCE: pci/nvme: prevent WDC PC SN720 NVMe from entering D3 + and being disabled" + - Revert "UBUNTU: SAUCE: nvme: add quirk to not call disable function when + suspending" + - Revert "UBUTU: SAUCE: pci: prevent Intel NVMe SSDPEKKF from entering D3" + - Revert "UBUNTU: SAUCE: nvme: add quirk to not call disable function when + suspending" + - Revert "UBUNTU: SAUCE: pci: prevent sk hynix nvme from entering D3" + - PCI: PM: Avoid possible suspend-to-idle issue + - PCI: PM: Skip devices in D0 for suspend-to-idle + - nvme-pci: Sync queues on reset + - nvme: Export get and set features + - nvme-pci: Use host managed power state for suspend + * arm64: cma_alloc errors at boot (LP: #1823753) + - [Config] Bump CMA_SIZE_MBYTES to 32 on arm64 + - dma-contiguous: add dma_{alloc, free}_contiguous() helpers + - dma-contiguous: use fallback alloc_pages for single pages + - dma-contiguous: fix !CONFIG_DMA_CMA version of dma_{alloc, + free}_contiguous() + * libsas: old linkrate advertised after phy disabled (LP: #1830435) + - scsi: libsas: Inject revalidate event for root port event + - scsi: libsas: Do discovery on empty PHY to update PHY info + * fanotify06 from ubuntu_ltp_syscalls failed (LP: #1833028) + - ovl: do not generate duplicate fsnotify events for "fake" path + * hinic: fix oops due to race in set_rx_mode (LP: #1832048) + - hinic: fix a bug in set rx mode + * ubuntu 18.04 flickering screen with Radeon X1600 (LP: #1791312) + - drm/radeon: prefer lower reference dividers + * [ALSA] [PATCH] Headset fixup for System76 Gazelle (gaze14) (LP: #1827555) + - ALSA: hda/realtek - Headset fixup for System76 Gazelle (gaze14) + - ALSA: hda/realtek - Corrected fixup for System76 Gazelle (gaze14) + * ftrace in ubuntu_kernel_selftests complains "Illegal number" because of the + absence of tput (LP: #1828989) + - selftests/ftrace: Handle the absence of tput + * CVE-2019-11833 + - ext4: zero out the unused memory region in the extent tree block + * Disco update: 5.0.14 upstream stable release (LP: #1832775) + - selftests/seccomp: Prepare for exclusive seccomp flags + - seccomp: Make NEW_LISTENER and TSYNC flags exclusive + - ARC: memset: fix build with L1_CACHE_SHIFT != 6 + - iwlwifi: fix driver operation for 5350 + - mwifiex: Make resume actually do something useful again on SDIO cards + - mtd: rawnand: marvell: Clean the controller state before each operation + - mac80211: don't attempt to rename ERR_PTR() debugfs dirs + - i2c: synquacer: fix enumeration of slave devices + - i2c: imx: correct the method of getting private data in notifier_call + - i2c: Prevent runtime suspend of adapter when Host Notify is required + - ALSA: hda/realtek - Add new Dell platform for headset mode + - USB: yurex: Fix protection fault after device removal + - USB: w1 ds2490: Fix bug caused by improper use of altsetting array + - USB: dummy-hcd: Fix failure to give back unlinked URBs + - usb: usbip: fix isoc packet num validation in get_pipe + - USB: core: Fix unterminated string returned by usb_string() + - USB: core: Fix bug caused by duplicate interface PM usage counter + - KVM: lapic: Disable timer advancement if adaptive tuning goes haywire + - KVM: x86: Consider LAPIC TSC-Deadline timer expired if deadline too short + - KVM: lapic: Track lapic timer advance per vCPU + - KVM: lapic: Allow user to disable adaptive tuning of timer advancement + - KVM: lapic: Convert guest TSC to host time domain if necessary + - arm64: dts: rockchip: fix rk3328-roc-cc gmac2io tx/rx_delay + - HID: logitech: check the return value of create_singlethread_workqueue + - HID: debug: fix race condition with between rdesc_show() and device removal + - rtc: cros-ec: Fail suspend/resume if wake IRQ can't be configured + - rtc: sh: Fix invalid alarm warning for non-enabled alarm + - ARM: OMAP2+: add missing of_node_put after of_device_is_available + - batman-adv: Reduce claim hash refcnt only for removed entry + - batman-adv: Reduce tt_local hash refcnt only for removed entry + - batman-adv: Reduce tt_global hash refcnt only for removed entry + - batman-adv: fix warning in function batadv_v_elp_get_throughput + - ARM: dts: rockchip: Fix gpu opp node names for rk3288 + - reset: meson-audio-arb: Fix missing .owner setting of reset_controller_dev + - ARM: dts: Fix dcan clkctrl clock for am3 + - i40e: fix i40e_ptp_adjtime when given a negative delta + - ixgbe: fix mdio bus registration + - i40e: fix WoL support check + - riscv: fix accessing 8-byte variable from RV32 + - HID: quirks: Fix keyboard + touchpad on Lenovo Miix 630 + - net: hns3: fix compile error + - xdp: fix cpumap redirect SKB creation bug + - net/mlx5: E-Switch, Protect from invalid memory access in offload fdb table + - net/mlx5: E-Switch, Fix esw manager vport indication for more vport commands + - bonding: show full hw address in sysfs for slave entries + - net: stmmac: use correct DMA buffer size in the RX descriptor + - net: stmmac: ratelimit RX error logs + - net: stmmac: don't stop NAPI processing when dropping a packet + - net: stmmac: don't overwrite discard_frame status + - net: stmmac: fix dropping of multi-descriptor RX frames + - net: stmmac: don't log oversized frames + - jffs2: fix use-after-free on symlink traversal + - debugfs: fix use-after-free on symlink traversal + - mfd: twl-core: Disable IRQ while suspended + - block: use blk_free_flush_queue() to free hctx->fq in blk_mq_init_hctx + - rtc: da9063: set uie_unsupported when relevant + - HID: input: add mapping for Assistant key + - vfio/pci: use correct format characters + - scsi: core: add new RDAC LENOVO/DE_Series device + - scsi: storvsc: Fix calculation of sub-channel count + - arm/mach-at91/pm : fix possible object reference leak + - blk-mq: do not reset plug->rq_count before the list is sorted + - arm64: fix wrong check of on_sdei_stack in nmi context + - net: hns: fix KASAN: use-after-free in hns_nic_net_xmit_hw() + - net: hns: Fix probabilistic memory overwrite when HNS driver initialized + - net: hns: fix ICMP6 neighbor solicitation messages discard problem + - net: hns: Fix WARNING when remove HNS driver with SMMU enabled + - libcxgb: fix incorrect ppmax calculation + - KVM: SVM: prevent DBG_DECRYPT and DBG_ENCRYPT overflow + - kmemleak: powerpc: skip scanning holes in the .bss section + - hugetlbfs: fix memory leak for resv_map + - sh: fix multiple function definition build errors + - null_blk: prevent crash from bad home_node value + - xsysace: Fix error handling in ace_setup + - fs: stream_open - opener for stream-like files so that read and write can + run simultaneously without deadlock + - ARM: orion: don't use using 64-bit DMA masks + - ARM: iop: don't use using 64-bit DMA masks + - perf/x86/amd: Update generic hardware cache events for Family 17h + - Bluetooth: btusb: request wake pin with NOAUTOEN + - Bluetooth: mediatek: fix up an error path to restore bdev->tx_state + - clk: qcom: Add missing freq for usb30_master_clk on 8998 + - usb: dwc3: Reset num_trbs after skipping + - staging: iio: adt7316: allow adt751x to use internal vref for all dacs + - staging: iio: adt7316: fix the dac read calculation + - staging: iio: adt7316: fix handling of dac high resolution option + - staging: iio: adt7316: fix the dac write calculation + - scsi: RDMA/srpt: Fix a credit leak for aborted commands + - ASoC: Intel: bytcr_rt5651: Revert "Fix DMIC map headsetmic mapping" + - ASoC: rsnd: gen: fix SSI9 4/5/6/7 busif related register address + - ASoC: sunxi: sun50i-codec-analog: Rename hpvcc regulator supply to cpvdd + - ASoC: wm_adsp: Correct handling of compressed streams that restart + - ASoC: dpcm: skip missing substream while applying symmetry + - ASoC: stm32: fix sai driver name initialisation + - KVM: VMX: Save RSI to an unused output in the vCPU-run asm blob + - KVM: nVMX: Remove a rogue "rax" clobber from nested_vmx_check_vmentry_hw() + - kvm: vmx: Fix typos in vmentry/vmexit control setting + - KVM: lapic: Check for in-kernel LAPIC before deferencing apic pointer + - platform/x86: intel_pmc_core: Fix PCH IP name + - platform/x86: intel_pmc_core: Handle CFL regmap properly + - IB/core: Unregister notifier before freeing MAD security + - IB/core: Fix potential memory leak while creating MAD agents + - IB/core: Destroy QP if XRC QP fails + - Input: snvs_pwrkey - initialize necessary driver data before enabling IRQ + - Input: stmfts - acknowledge that setting brightness is a blocking call + - gpio: mxc: add check to return defer probe if clock tree NOT ready + - selinux: avoid silent denials in permissive mode under RCU walk + - selinux: never allow relabeling on context mounts + - mac80211: Honor SW_CRYPTO_CONTROL for unicast keys in AP VLAN mode + - powerpc/mm/hash: Handle mmap_min_addr correctly in get_unmapped_area topdown + search + - x86/mce: Improve error message when kernel cannot recover, p2 + - clk: x86: Add system specific quirk to mark clocks as critical + - x86/mm/KASLR: Fix the size of the direct mapping section + - x86/mm: Fix a crash with kmemleak_scan() + - x86/mm/tlb: Revert "x86/mm: Align TLB invalidation info" + - i2c: i2c-stm32f7: Fix SDADEL minimum formula + - media: v4l2: i2c: ov7670: Fix PLL bypass register values + - ASoC: wm_adsp: Check for buffer in trigger stop + - mm/kmemleak.c: fix unused-function warning + - Linux 5.0.14 + * [ZenBook S UX391UA, Realtek ALC294, Mic, Internal] No sound at all + (LP: #1784485) // Disco update: 5.0.14 upstream stable release + (LP: #1832775) + - ALSA: hda/realtek - Apply the fixup for ASUS Q325UAR + * Support new ums-realtek device (LP: #1831840) + - USB: usb-storage: Add new ID to ums-realtek + * amd_iommu possible data corruption (LP: #1823037) + - iommu/amd: Set exclusion range correctly + * Add new sound card PCIID into the alsa driver (LP: #1832299) + - ALSA: hda/intel: add CometLake PCI IDs + * idle-page oopses when accessing page frames that are out of range + (LP: #1833410) + - mm/page_idle.c: fix oops because end_pfn is larger than max_pfn + * Sometimes touchpad automatically trigger double click (LP: #1833484) + - SAUCE: i2c: designware: Add disable runtime pm quirk + * Disco update: 5.0.13 upstream stable release (LP: #1832749) + - ipv4: ip_do_fragment: Preserve skb_iif during fragmentation + - ipv6: A few fixes on dereferencing rt->from + - ipv6: fix races in ip6_dst_destroy() + - ipv6/flowlabel: wait rcu grace period before put_pid() + - ipv6: invert flowlabel sharing check in process and user mode + - l2ip: fix possible use-after-free + - l2tp: use rcu_dereference_sk_user_data() in l2tp_udp_encap_recv() + - net: dsa: bcm_sf2: fix buffer overflow doing set_rxnfc + - net: phy: marvell: Fix buffer overrun with stats counters + - net/tls: avoid NULL pointer deref on nskb->sk in fallback + - rxrpc: Fix net namespace cleanup + - sctp: avoid running the sctp state machine recursively + - selftests: fib_rule_tests: print the result and return 1 if any tests failed + - packet: validate msg_namelen in send directly + - packet: in recvmsg msg_name return at least sizeof sockaddr_ll + - selftests: fib_rule_tests: Fix icmp proto with ipv6 + - tcp: add sanity tests in tcp_add_backlog() + - udp: fix GRO reception in case of length mismatch + - udp: fix GRO packet of death + - bnxt_en: Improve multicast address setup logic. + - bnxt_en: Free short FW command HWRM memory in error path in bnxt_init_one() + - bnxt_en: Fix possible crash in bnxt_hwrm_ring_free() under error conditions. + - bnxt_en: Pass correct extended TX port statistics size to firmware. + - bnxt_en: Fix statistics context reservation logic. + - bnxt_en: Fix uninitialized variable usage in bnxt_rx_pkt(). + - net/tls: don't copy negative amounts of data in reencrypt + - net/tls: fix copy to fragments in reencrypt + - KVM: x86: Whitelist port 0x7e for pre-incrementing %rip + - KVM: nVMX: Fix size checks in vmx_set_nested_state + - ALSA: line6: use dynamic buffers + - iwlwifi: mvm: properly check debugfs dentry before using it + - ath10k: Drop WARN_ON()s that always trigger during system resume + - Linux 5.0.13 + * Add pointstick support on HP ZBook 17 G5 (LP: #1833387) + - Revert "HID: multitouch: Support ALPS PTP stick with pid 0x120A" + - SAUCE: HID: multitouch: Add pointstick support for ALPS Touchpad + * [SRU][B/B-OEM/B-OEM-OSP-1/C/D/E] Add trackpoint middle button support of 2 + new thinpads (LP: #1833637) + - Input: elantech - enable middle button support on 2 ThinkPads + * Kernel panic upon resetting ixgbe SR-IOV VFIO virtual function using 5.0 + kernel (LP: #1829652) + - SAUCE: ixgbe: Avoid NULL pointer dereference with VF on non-IPsec hw + * CVE-2019-11884 + - Bluetooth: hidp: fix buffer overflow + * TPM module can not initial (LP: #1826142) + - spi: Optionally use GPIO descriptors for CS GPIOs + - spi: dw: Convert to use CS GPIO descriptors + - spi: dw: fix warning unused variable 'ret' + - spi: Support high CS when using descriptors + - spi: dw: Fix default polarity of native chipselect + - gpio: of: Fix logic inversion + - spi: Add missing error handling for CS GPIOs + * CVE-2018-12126 // CVE-2018-12127 // CVE-2018-12130 // CVE-2019-11091 + - SAUCE: Synchronize MDS mitigations with upstream + - Documentation: Correct the possible MDS sysfs values + - x86/speculation/mds: Fix documentation typo + * CVE-2019-11091 + - x86/mds: Add MDSUM variant to the MDS documentation + * Regression for ubuntu_kernel_selftests [net] ubuntu_bpf test case fails to + build on disco (LP: #1829812) + - tools: bpftool: add basic probe capability, probe syscall availability + - tools: bpftool: add probes for eBPF program types + * POSIX fix for ftrace test in ubuntu_kernel_selftests (LP: #1828995) + - selftests/ftrace: Replace \e with \033 + - selftests/ftrace: Replace echo -e with printf + * Disco update: 5.0.12 upstream stable release (LP: #1830934) + - selinux: use kernel linux/socket.h for genheaders and mdp + - Revert "ACPICA: Clear status of GPEs before enabling them" + - drm/i915: Do not enable FEC without DSC + - mm: make page ref count overflow check tighter and more explicit + - mm: add 'try_get_page()' helper function + - mm: prevent get_user_pages() from overflowing page refcount + - fs: prevent page refcount overflow in pipe_buf_get + - arm64: dts: renesas: r8a77990: Fix SCIF5 DMA channels + - ARM: dts: bcm283x: Fix hdmi hpd gpio pull + - s390: limit brk randomization to 32MB + - mt76x02: fix hdr pointer in write txwi for USB + - mt76: mt76x2: fix external LNA gain settings + - mt76: mt76x2: fix 2.4 GHz channel gain settings + - net: ieee802154: fix a potential NULL pointer dereference + - ieee802154: hwsim: propagate genlmsg_reply return code + - Btrfs: fix file corruption after snapshotting due to mix of buffered/DIO + writes + - net: stmmac: don't set own bit too early for jumbo frames + - net: stmmac: fix jumbo frame sending with non-linear skbs + - qlcnic: Avoid potential NULL pointer dereference + - xsk: fix umem memory leak on cleanup + - staging: axis-fifo: add CONFIG_OF dependency + - staging, mt7621-pci: fix build without pci support + - netfilter: nft_set_rbtree: check for inactive element after flag mismatch + - netfilter: bridge: set skb transport_header before entering + NF_INET_PRE_ROUTING + - netfilter: fix NETFILTER_XT_TARGET_TEE dependencies + - netfilter: ip6t_srh: fix NULL pointer dereferences + - s390/qeth: fix race when initializing the IP address table + - ARM: imx51: fix a leaked reference by adding missing of_node_put + - sc16is7xx: missing unregister/delete driver on error in sc16is7xx_init() + - serial: ar933x_uart: Fix build failure with disabled console + - KVM: arm64: Reset the PMU in preemptible context + - arm64: KVM: Always set ICH_HCR_EL2.EN if GICv4 is enabled + - KVM: arm/arm64: vgic-its: Take the srcu lock when writing to guest memory + - KVM: arm/arm64: vgic-its: Take the srcu lock when parsing the memslots + - usb: dwc3: pci: add support for Comet Lake PCH ID + - usb: gadget: net2280: Fix overrun of OUT messages + - usb: gadget: net2280: Fix net2280_dequeue() + - usb: gadget: net2272: Fix net2272_dequeue() + - ARM: dts: pfla02: increase phy reset duration + - i2c: i801: Add support for Intel Comet Lake + - KVM: arm/arm64: Fix handling of stage2 huge mappings + - net: ks8851: Dequeue RX packets explicitly + - net: ks8851: Reassert reset pin if chip ID check fails + - net: ks8851: Delay requesting IRQ until opened + - net: ks8851: Set initial carrier state to down + - staging: rtl8188eu: Fix potential NULL pointer dereference of kcalloc + - staging: rtlwifi: rtl8822b: fix to avoid potential NULL pointer dereference + - staging: rtl8712: uninitialized memory in read_bbreg_hdl() + - staging: rtlwifi: Fix potential NULL pointer dereference of kzalloc + - net: phy: Add DP83825I to the DP83822 driver + - net: macb: Add null check for PCLK and HCLK + - net/sched: don't dereference a->goto_chain to read the chain index + - ARM: dts: imx6qdl: Fix typo in imx6qdl-icore-rqs.dtsi + - drm/tegra: hub: Fix dereference before check + - NFS: Fix a typo in nfs_init_timeout_values() + - net: xilinx: fix possible object reference leak + - net: ibm: fix possible object reference leak + - net: ethernet: ti: fix possible object reference leak + - drm: Fix drm_release() and device unplug + - gpio: aspeed: fix a potential NULL pointer dereference + - drm/meson: Fix invalid pointer in meson_drv_unbind() + - drm/meson: Uninstall IRQ handler + - ARM: davinci: fix build failure with allnoconfig + - sbitmap: order READ/WRITE freed instance and setting clear bit + - staging: vc04_services: Fix an error code in vchiq_probe() + - scsi: mpt3sas: Fix kernel panic during expander reset + - scsi: aacraid: Insure we don't access PCIe space during AER/EEH + - scsi: qla4xxx: fix a potential NULL pointer dereference + - usb: usb251xb: fix to avoid potential NULL pointer dereference + - leds: trigger: netdev: fix refcnt leak on interface rename + - SUNRPC: fix uninitialized variable warning + - x86/realmode: Don't leak the trampoline kernel address + - usb: u132-hcd: fix resource leak + - ceph: fix use-after-free on symlink traversal + - scsi: zfcp: reduce flood of fcrscn1 trace records on multi-element RSCN + - x86/mm: Don't exceed the valid physical address space + - libata: fix using DMA buffers on stack + - kbuild: skip parsing pre sub-make code for recursion + - afs: Fix StoreData op marshalling + - gpio: of: Check propname before applying "cs-gpios" quirks + - gpio: of: Check for "spi-cs-high" in child instead of parent node + - KVM: nVMX: Do not inherit quadrant and invalid for the root shadow EPT + - KVM: SVM: Workaround errata#1096 (insn_len maybe zero on SMAP violation) + - kvm/x86: Move MSR_IA32_ARCH_CAPABILITIES to array emulated_msrs + - x86/kvm/hyper-v: avoid spurious pending stimer on vCPU init + - KVM: selftests: assert on exit reason in CR4/cpuid sync test + - KVM: selftests: explicitly disable PIE for tests + - KVM: selftests: disable stack protector for all KVM tests + - KVM: selftests: complete IO before migrating guest state + - gpio: of: Fix of_gpiochip_add() error path + - nvme-multipath: relax ANA state check + - nvmet: fix building bvec from sg list + - nvmet: fix error flow during ns enable + - perf cs-etm: Add missing case value + - perf machine: Update kernel map address and re-order properly + - kconfig/[mn]conf: handle backspace (^H) key + - iommu/amd: Reserve exclusion range in iova-domain + - kasan: fix variable 'tag' set but not used warning + - ptrace: take into account saved_sigmask in PTRACE{GET,SET}SIGMASK + - leds: pca9532: fix a potential NULL pointer dereference + - leds: trigger: netdev: use memcpy in device_name_store + - Linux 5.0.12 + - [Config] Document drop of axis-fifo for amd64/i386 + * Disco update: 5.0.11 upstream stable release (LP: #1830929) + - netfilter: nf_tables: bogus EBUSY when deleting set after flush + - netfilter: nf_tables: bogus EBUSY in helper removal from transaction + - intel_th: gth: Fix an off-by-one in output unassigning + - powerpc/vdso32: fix CLOCK_MONOTONIC on PPC64 + - ALSA: hda/realtek - Move to ACT_INIT state + - fs/proc/proc_sysctl.c: Fix a NULL pointer dereference + - block, bfq: fix use after free in bfq_bfqq_expire + - cifs: fix memory leak in SMB2_read + - cifs: fix page reference leak with readv/writev + - cifs: do not attempt cifs operation on smb2+ rename error + - tracing: Fix a memory leak by early error exit in trace_pid_write() + - tracing: Fix buffer_ref pipe ops + - crypto: xts - Fix atomic sleep when walking skcipher + - crypto: lrw - Fix atomic sleep when walking skcipher + - gpio: eic: sprd: Fix incorrect irq type setting for the sync EIC + - zram: pass down the bvec we need to read into in the work struct + - lib/Kconfig.debug: fix build error without CONFIG_BLOCK + - MIPS: scall64-o32: Fix indirect syscall number load + - trace: Fix preempt_enable_no_resched() abuse + - mm: do not boost watermarks to avoid fragmentation for the DISCONTIG memory + model + - arm64: mm: Ensure tail of unaligned initrd is reserved + - IB/rdmavt: Fix frwr memory registration + - RDMA/mlx5: Do not allow the user to write to the clock page + - RDMA/mlx5: Use rdma_user_map_io for mapping BAR pages + - RDMA/ucontext: Fix regression with disassociate + - sched/numa: Fix a possible divide-by-zero + - ceph: only use d_name directly when parent is locked + - ceph: ensure d_name stability in ceph_dentry_hash() + - ceph: fix ci->i_head_snapc leak + - nfsd: Don't release the callback slot unless it was actually held + - nfsd: wake waiters blocked on file_lock before deleting it + - nfsd: wake blocked file lock waiters before sending callback + - sunrpc: don't mark uninitialised items as VALID. + - perf/x86/intel: Update KBL Package C-state events to also include + PC8/PC9/PC10 counters + - Input: synaptics-rmi4 - write config register values to the right offset + - dmaengine: sh: rcar-dmac: With cyclic DMA residue 0 is valid + - dmaengine: sh: rcar-dmac: Fix glitch in dmaengine_tx_status + - dmaengine: mediatek-cqdma: fix wrong register usage in mtk_cqdma_start + - ARM: 8857/1: efi: enable CP15 DMB instructions before cleaning the cache + - powerpc/mm/radix: Make Radix require HUGETLB_PAGE + - drm/vc4: Fix memory leak during gpu reset. + - drm/ttm: fix re-init of global structures + - drm/vc4: Fix compilation error reported by kbuild test bot + - ext4: fix some error pointer dereferences + - loop: do not print warn message if partition scan is successful + - tipc: handle the err returned from cmd header function + - slip: make slhc_free() silently accept an error pointer + - workqueue: Try to catch flush_work() without INIT_WORK(). + - sched/deadline: Correctly handle active 0-lag timers + - mac80211_hwsim: calculate if_combination.max_interfaces + - NFS: Forbid setting AF_INET6 to "struct sockaddr_in"->sin_family. + - netfilter: ebtables: CONFIG_COMPAT: drop a bogus WARN_ON + - fm10k: Fix a potential NULL pointer dereference + - tipc: check bearer name with right length in tipc_nl_compat_bearer_enable + - tipc: check link name with right length in tipc_nl_compat_link_set + - net: netrom: Fix error cleanup path of nr_proto_init + - net/rds: Check address length before reading address family + - rxrpc: fix race condition in rxrpc_input_packet() + - pin iocb through aio. + - aio: fold lookup_kiocb() into its sole caller + - aio: keep io_event in aio_kiocb + - aio: store event at final iocb_put() + - Fix aio_poll() races + - x86, retpolines: Raise limit for generating indirect calls from switch-case + - x86/retpolines: Disable switch jump tables when retpolines are enabled + - rdma: fix build errors on s390 and MIPS due to bad ZERO_PAGE use + - ipv4: add sanity checks in ipv4_link_failure() + - ipv4: set the tcp_min_rtt_wlen range from 0 to one day + - mlxsw: spectrum: Fix autoneg status in ethtool + - net/mlx5e: ethtool, Remove unsupported SFP EEPROM high pages query + - net: rds: exchange of 8K and 1M pool + - net/rose: fix unbound loop in rose_loopback_timer() + - net: stmmac: move stmmac_check_ether_addr() to driver probe + - net/tls: fix refcount adjustment in fallback + - stmmac: pci: Adjust IOT2000 matching + - team: fix possible recursive locking when add slaves + - net: socionext: replace napi_alloc_frag with the netdev variant on init + - net/ncsi: handle overflow when incrementing mac address + - mlxsw: pci: Reincrease PCI reset timeout + - mlxsw: spectrum: Put MC TCs into DWRR mode + - net/mlx5e: Fix the max MTU check in case of XDP + - net/mlx5e: Fix use-after-free after xdp_return_frame + - net/tls: avoid potential deadlock in tls_set_device_offload_rx() + - net/tls: don't leak IV and record seq when offload fails + - Linux 5.0.11 + * Disco update: 5.0.10 upstream stable release (LP: #1830922) + - bonding: fix event handling for stacked bonds + - failover: allow name change on IFF_UP slave interfaces + - net: atm: Fix potential Spectre v1 vulnerabilities + - net: bridge: fix per-port af_packet sockets + - net: bridge: multicast: use rcu to access port list from + br_multicast_start_querier + - net: fec: manage ahb clock in runtime pm + - net: Fix missing meta data in skb with vlan packet + - net: fou: do not use guehdr after iptunnel_pull_offloads in gue_udp_recv + - tcp: tcp_grow_window() needs to respect tcp_space() + - team: set slave to promisc if team is already in promisc mode + - tipc: missing entries in name table of publications + - vhost: reject zero size iova range + - ipv4: recompile ip options in ipv4_link_failure + - ipv4: ensure rcu_read_lock() in ipv4_link_failure() + - mlxsw: spectrum_switchdev: Add MDB entries in prepare phase + - mlxsw: core: Do not use WQ_MEM_RECLAIM for EMAD workqueue + - mlxsw: core: Do not use WQ_MEM_RECLAIM for mlxsw ordered workqueue + - mlxsw: core: Do not use WQ_MEM_RECLAIM for mlxsw workqueue + - mlxsw: spectrum_router: Do not check VRF MAC address + - net: thunderx: raise XDP MTU to 1508 + - net: thunderx: don't allow jumbo frames with XDP + - net/tls: fix the IV leaks + - net/tls: don't leak partially sent record in device mode + - net: strparser: partially revert "strparser: Call skb_unclone conditionally" + - net/tls: fix build without CONFIG_TLS_DEVICE + - net: bridge: fix netlink export of vlan_stats_per_port option + - net/mlx5e: XDP, Avoid checksum complete when XDP prog is loaded + - net/mlx5e: Protect against non-uplink representor for encap + - net/mlx5e: Switch to Toeplitz RSS hash by default + - net/mlx5e: Rx, Fixup skb checksum for packets with tail padding + - net/mlx5e: Rx, Check ip headers sanity + - Revert "net/mlx5e: Enable reporting checksum unnecessary also for L3 + packets" + - net/mlx5: FPGA, tls, hold rcu read lock a bit longer + - net/tls: prevent bad memory access in tls_is_sk_tx_device_offloaded() + - net/mlx5: FPGA, tls, idr remove on flow delete + - route: Avoid crash from dereferencing NULL rt->from + - nfp: flower: replace CFI with vlan present + - nfp: flower: remove vlan CFI bit from push vlan action + - sch_cake: Use tc_skb_protocol() helper for getting packet protocol + - sch_cake: Make sure we can write the IP header before changing DSCP bits + - NFC: nci: Add some bounds checking in nci_hci_cmd_received() + - nfc: nci: Potential off by one in ->pipes[] array + - sch_cake: Simplify logic in cake_select_tin() + - CIFS: keep FileInfo handle live during oplock break + - cifs: Fix lease buffer length error + - cifs: Fix use-after-free in SMB2_write + - cifs: Fix use-after-free in SMB2_read + - cifs: fix handle leak in smb2_query_symlink() + - fs/dax: Deposit pagetable even when installing zero page + - KVM: x86: Don't clear EFER during SMM transitions for 32-bit vCPU + - KVM: x86: svm: make sure NMI is injected after nmi_singlestep + - Staging: iio: meter: fixed typo + - staging: iio: ad7192: Fix ad7193 channel address + - iio: gyro: mpu3050: fix chip ID reading + - iio/gyro/bmg160: Use millidegrees for temperature scale + - iio:chemical:bme680: Fix, report temperature in millidegrees + - iio:chemical:bme680: Fix SPI read interface + - iio: cros_ec: Fix the maths for gyro scale calculation + - iio: ad_sigma_delta: select channel when reading register + - iio: dac: mcp4725: add missing powerdown bits in store eeprom + - iio: Fix scan mask selection + - iio: adc: at91: disable adc channel interrupt in timeout case + - iio: core: fix a possible circular locking dependency + - io: accel: kxcjk1013: restore the range after resume. + - staging: most: core: use device description as name + - staging: comedi: vmk80xx: Fix use of uninitialized semaphore + - staging: comedi: vmk80xx: Fix possible double-free of ->usb_rx_buf + - staging: comedi: ni_usb6501: Fix use of uninitialized mutex + - staging: comedi: ni_usb6501: Fix possible double-free of ->usb_rx_buf + - ALSA: core: Fix card races between register and disconnect + - Input: elan_i2c - add hardware ID for multiple Lenovo laptops + - serial: sh-sci: Fix HSCIF RX sampling point adjustment + - serial: sh-sci: Fix HSCIF RX sampling point calculation + - vt: fix cursor when clearing the screen + - scsi: core: set result when the command cannot be dispatched + - Revert "scsi: fcoe: clear FC_RP_STARTED flags when receiving a LOGO" + - i3c: dw: Fix dw_i3c_master_disable controller by using correct mask + - i3c: Fix the verification of random PID + - Revert "svm: Fix AVIC incomplete IPI emulation" + - coredump: fix race condition between mmget_not_zero()/get_task_mm() and core + dumping + - x86/kvm: move kvm_load/put_guest_xcr0 into atomic context + - ipmi: fix sleep-in-atomic in free_user at cleanup SRCU user->release_barrier + - crypto: x86/poly1305 - fix overflow during partial reduction + - drm/ttm: fix out-of-bounds read in ttm_put_pages() v2 + - arm64: futex: Restore oldval initialization to work around buggy compilers + - x86/kprobes: Verify stack frame on kretprobe + - kprobes: Mark ftrace mcount handler functions nokprobe + - x86/kprobes: Avoid kretprobe recursion bug + - kprobes: Fix error check when reusing optimized probes + - rt2x00: do not increment sequence number while re-transmitting + - mac80211: do not call driver wake_tx_queue op during reconfig + - s390/mem_detect: Use IS_ENABLED(CONFIG_BLK_DEV_INITRD) + - drm/amdgpu/gmc9: fix VM_L2_CNTL3 programming + - perf/x86/amd: Add event map for AMD Family 17h + - x86/cpu/bugs: Use __initconst for 'const' init data + - perf/x86: Fix incorrect PEBS_REGS + - x86/speculation: Prevent deadlock on ssb_state::lock + - timers/sched_clock: Prevent generic sched_clock wrap caused by tick_freeze() + - nfit/ars: Remove ars_start_flags + - nfit/ars: Introduce scrub_flags + - nfit/ars: Allow root to busy-poll the ARS state machine + - nfit/ars: Avoid stale ARS results + - tpm/tpm_i2c_atmel: Return -E2BIG when the transfer is incomplete + - tpm: Fix the type of the return value in calc_tpm2_event_size() + - Revert "kbuild: use -Oz instead of -Os when using clang" + - sched/fair: Limit sched_cfs_period_timer() loop to avoid hard lockup + - tpm: fix an invalid condition in tpm_common_poll + - mt76x02: avoid status_list.lock and sta->rate_ctrl_lock dependency + - device_cgroup: fix RCU imbalance in error case + - perf/ring_buffer: Fix AUX record suppression + - mm/memory_hotplug: do not unlock after failing to take the + device_hotplug_lock + - mm/vmstat.c: fix /proc/vmstat format for CONFIG_DEBUG_TLBFLUSH=y + CONFIG_SMP=n + - ALSA: info: Fix racy addition/deletion of nodes + - percpu: stop printing kernel addresses + - kernel/sysctl.c: fix out-of-bounds access when setting file-max + - Linux 5.0.10 + * Disco update: 5.0.9 upstream stable release (LP: #1830906) + - ARC: u-boot args: check that magic number is correct + - arc: hsdk_defconfig: Enable CONFIG_BLK_DEV_RAM + - perf/core: Restore mmap record type correctly + - mips: bcm47xx: Enable USB power on Netgear WNDR3400v2 + - ext4: avoid panic during forced reboot + - ext4: add missing brelse() in add_new_gdb_meta_bg() + - ext4: report real fs size after failed resize + - ALSA: echoaudio: add a check for ioremap_nocache + - ALSA: sb8: add a check for request_region + - auxdisplay: hd44780: Fix memory leak on ->remove() + - drm/udl: use drm_gem_object_put_unlocked. + - IB/mlx4: Fix race condition between catas error reset and aliasguid flows + - i40iw: Avoid panic when handling the inetdev event + - mmc: davinci: remove extraneous __init annotation + - ALSA: opl3: fix mismatch between snd_opl3_drum_switch definition and + declaration + - paride/pf: cleanup queues when detection fails + - paride/pcd: cleanup queues when detection fails + - thermal/intel_powerclamp: fix __percpu declaration of worker_data + - thermal: samsung: Fix incorrect check after code merge + - thermal: bcm2835: Fix crash in bcm2835_thermal_debugfs + - thermal/int340x_thermal: Add additional UUIDs + - thermal/int340x_thermal: fix mode setting + - thermal/intel_powerclamp: fix truncated kthread name + - scsi: iscsi: flush running unbind operations when removing a session + - sched/cpufreq: Fix 32-bit math overflow + - sched/core: Fix buffer overflow in cgroup2 property cpu.max + - x86/mm: Don't leak kernel addresses + - tools/power turbostat: return the exit status of a command + - scsi: core: Also call destroy_rcu_head() for passthrough requests + - scsi: qla2xxx: Fix NULL pointer crash due to stale CPUID + - perf stat: Fix --no-scale + - perf list: Don't forget to drop the reference to the allocated thread_map + - perf tools: Fix errors under optimization level '-Og' + - perf config: Fix an error in the config template documentation + - perf config: Fix a memory leak in collect_config() + - perf build-id: Fix memory leak in print_sdt_events() + - perf top: Fix error handling in cmd_top() + - perf hist: Add missing map__put() in error case + - perf map: Remove map from 'names' tree in __maps__remove() + - perf maps: Purge all maps from the 'names' tree + - perf top: Fix global-buffer-overflow issue + - perf evsel: Free evsel->counts in perf_evsel__exit() + - perf tests: Fix a memory leak of cpu_map object in the + openat_syscall_event_on_all_cpus test + - perf tests: Fix memory leak by expr__find_other() in test__expr() + - perf tests: Fix a memory leak in test__perf_evsel__tp_sched_test() + - ACPI / utils: Drop reference in test for device presence + - PM / Domains: Avoid a potential deadlock + - blk-iolatency: #include "blk.h" + - drm/exynos/mixer: fix MIXER shadow registry synchronisation code + - irqchip/stm32: Don't clear rising/falling config registers at init + - irqchip/stm32: Don't set rising configuration registers at init + - irqchip/mbigen: Don't clear eventid when freeing an MSI + - x86/hpet: Prevent potential NULL pointer dereference + - x86/hyperv: Prevent potential NULL pointer dereference + - x86/cpu/cyrix: Use correct macros for Cyrix calls on Geode processors + - drm/nouveau/debugfs: Fix check of pm_runtime_get_sync failure + - iommu/vt-d: Check capability before disabling protected memory + - iommu/vt-d: Save the right domain ID used by hardware + - x86/hw_breakpoints: Make default case in hw_breakpoint_arch_parse() return + an error + - cifs: fix that return -EINVAL when do dedupe operation + - fix incorrect error code mapping for OBJECTID_NOT_FOUND + - cifs: Fix slab-out-of-bounds when tracing SMB tcon + - x86/gart: Exclude GART aperture from kcore + - ext4: prohibit fstrim in norecovery mode + - lkdtm: Print real addresses + - lkdtm: Add tests for NULL pointer dereference + - drm/amdgpu: psp_ring_destroy cause psp->km_ring.ring_mem NULL + - drm/panel: panel-innolux: set display off in innolux_panel_unprepare + - crypto: axis - fix for recursive locking from bottom half + - Revert "ACPI / EC: Remove old CLEAR_ON_RESUME quirk" + - coresight: cpu-debug: Support for CA73 CPUs + - PCI: Blacklist power management of Gigabyte X299 DESIGNARE EX PCIe ports + - PCI/ASPM: Save LTR Capability for suspend/resume + - f2fs: sync filesystem after roll-forward recovery + - drm/nouveau/volt/gf117: fix speedo readout register + - platform/x86: intel_pmc_core: Quirk to ignore XTAL shutdown + - ARM: 8839/1: kprobe: make patch_lock a raw_spinlock_t + - drm/amdkfd: use init_mqd function to allocate object for hid_mqd (CI) + - appletalk: Fix use-after-free in atalk_proc_exit + - cifs: return -ENODATA when deleting an xattr that does not exist + - lib/div64.c: off by one in shift + - rxrpc: Fix client call connect/disconnect race + - f2fs: fix to dirty inode for i_mode recovery + - f2fs: fix to use kvfree instead of kzfree + - f2fs: fix to add refcount once page is tagged PG_private + - include/linux/swap.h: use offsetof() instead of custom __swapoffset macro + - bpf: fix use after free in bpf_evict_inode + - IB/hfi1: Failed to drain send queue when QP is put into error state + - paride/pf: Fix potential NULL pointer dereference + - paride/pcd: Fix potential NULL pointer dereference and mem leak + - Linux 5.0.9 + * crashdump fails on HiSilicon D06 (LP: #1828868) + - iommu/arm-smmu-v3: Don't disable SMMU in kdump kernel + * Eletrical noise occurred when external headset enter powersaving mode on a + DEll machine (LP: #1828798) + - ALSA: hda/realtek - Fixup headphone noise via runtime suspend + * [18.04/18.10] File libperf-jvmti.so is missing in linux-tools-common deb on + Ubuntu (LP: #1761379) + - [Packaging] Support building libperf-jvmti.so + * ethtool identify command doesn't blink LED on Hi1620 NICs (LP: #1829306) + - net: phy: marvell: add new default led configure for m88e151x + * Add support to Comet Lake LPSS (LP: #1830175) + - mfd: intel-lpss: Add Intel Comet Lake PCI IDs + * Reduce NAPI weight in hns driver from 256 to 64 (LP: #1830587) + - net: hns: Use NAPI_POLL_WEIGHT for hns driver + + -- Khalid Elmously Thu, 04 Jul 2019 03:39:18 -0400 + +linux-azure (5.0.0-1011.11) disco; urgency=medium + + * linux-azure: 5.0.0-1011.11 -proposed tracker (LP: #1834706) + + * linux-azure: mlx4, mlx5, ibverbs, ib_umad are not being loaded by default + (LP: #1834696) + - Revert "UBUNTU: [Config] linux-azure: CONFIG_MLX{4,5}_INFINIBAND=m" + + -- Marcelo Henrique Cerri Fri, 28 Jun 2019 22:13:08 -0300 + +linux-azure (5.0.0-1010.10) disco; urgency=medium + + * linux-azure: 5.0.0-1010.10 -proposed tracker (LP: #1833924) + + * Enable eBPF JIT in the linux-azure kernels (LP: #1827916) + - [Config] linux-azure: CONFIG_MLX{4,5}_INFINIBAND=m + + * linux-azure: Add the Catapult FPGA Driver (LP: #1824879) + - SAUCE: linux-azure: Include Catapult FPGA PCI driver + - [Config] linux-azure: CONFIG_CATAPULT_PCI=m + + * [Packaging] Improve config annotations check on custom kernels + (LP: #1820075) + - [Config] linux-azure: Include custom annotations files + + [ Ubuntu: 5.0.0-20.21 ] + + * linux: 5.0.0-20.21 -proposed tracker (LP: #1833934) + * CVE-2019-11479 + - SAUCE: tcp: add tcp_min_snd_mss sysctl + - SAUCE: tcp: enforce tcp_min_snd_mss in tcp_mtu_probing() + * Remote denial of service (resource exhaustion) caused by TCP SACK scoreboard + manipulation (LP: #1831638) // CVE-2019-11478 + - tcp: refine memory limit test in tcp_fragment() + + [ Ubuntu: 5.0.0-19.20 ] + + * CVE-2019-12817 + - SAUCE: powerpc/mm/64s/hash: Reallocate context ids on fork + + -- Marcelo Henrique Cerri Tue, 25 Jun 2019 10:36:47 -0300 + +linux-azure (5.0.0-1008.8) disco; urgency=medium + + + [ Ubuntu: 5.0.0-17.18 ] + + * Remote denial of service (resource exhaustion) caused by TCP SACK scoreboard + manipulation (LP: #1831638) + - SAUCE: tcp: tcp_fragment() should apply sane memory limits + * Remote denial of service (system crash) caused by integer overflow in TCP + SACK handling (LP: #1831637) + - SAUCE: tcp: limit payload size of sacked skbs + + -- Marcelo Henrique Cerri Tue, 04 Jun 2019 22:43:16 -0300 + +linux-azure (5.0.0-1007.7) disco; urgency=medium + + * linux-azure: 5.0.0-1007.7 -proposed tracker (LP: #1829166) + + * Disco update: 5.0.8 upstream stable release (LP: #1828415) + - [Config]: remove CONFIG_R3964 + - [Config]: add CONFIG_LDISC_AUTOLOAD=y + + [ Ubuntu: 5.0.0-16.17 ] + + * linux: 5.0.0-16.17 -proposed tracker (LP: #1829173) + * shiftfs: lock security sensitive superblock flags (LP: #1827122) + - SAUCE: shiftfs: lock down certain superblock flags + * Please package libbpf (which is done out of the kernel src) in Debian [for + 19.10] (LP: #1826410) + - SAUCE: tools -- fix add ability to disable libbfd + * Disco update: 5.0.8 upstream stable release (LP: #1828415) + - drm/i915/gvt: do not let pin count of shadow mm go negative + - kbuild: pkg: use -f $(srctree)/Makefile to recurse to top Makefile + - netfilter: nft_compat: use .release_ops and remove list of extension + - netfilter: nf_tables: use-after-free in dynamic operations + - netfilter: nf_tables: add missing ->release_ops() in error path of newrule() + - hv_netvsc: Fix unwanted wakeup after tx_disable + - ibmvnic: Fix completion structure initialization + - ip6_tunnel: Match to ARPHRD_TUNNEL6 for dev type + - ipv6: Fix dangling pointer when ipv6 fragment + - ipv6: sit: reset ip header pointer in ipip6_rcv + - kcm: switch order of device registration to fix a crash + - net: ethtool: not call vzalloc for zero sized memory request + - net-gro: Fix GRO flush when receiving a GSO packet. + - net/mlx5: Decrease default mr cache size + - netns: provide pure entropy for net_hash_mix() + - net: rds: force to destroy connection if t_sock is NULL in + rds_tcp_kill_sock(). + - net/sched: act_sample: fix divide by zero in the traffic path + - net/sched: fix ->get helper of the matchall cls + - qmi_wwan: add Olicard 600 + - r8169: disable ASPM again + - sctp: initialize _pad of sockaddr_in before copying to user memory + - tcp: Ensure DCTCP reacts to losses + - tcp: fix a potential NULL pointer dereference in tcp_sk_exit + - vrf: check accept_source_route on the original netdevice + - net/mlx5e: Fix error handling when refreshing TIRs + - net/mlx5e: Add a lock on tir list + - nfp: validate the return code from dev_queue_xmit() + - nfp: disable netpoll on representors + - bnxt_en: Improve RX consumer index validity check. + - bnxt_en: Reset device on RX buffer errors. + - net: ip_gre: fix possible use-after-free in erspan_rcv + - net: ip6_gre: fix possible use-after-free in ip6erspan_rcv + - net: bridge: always clear mcast matching struct on reports and leaves + - net: thunderx: fix NULL pointer dereference in nicvf_open/nicvf_stop + - net: vrf: Fix ping failed when vrf mtu is set to 0 + - net: core: netif_receive_skb_list: unlist skb before passing to pt->func + - r8169: disable default rx interrupt coalescing on RTL8168 + - net: mlx5: Add a missing check on idr_find, free buf + - net/mlx5e: Update xoff formula + - net/mlx5e: Update xon formula + - kbuild: clang: choose GCC_TOOLCHAIN_DIR not on LD + - lib/string.c: implement a basic bcmp + - Revert "clk: meson: clean-up clock registration" + - tty: mark Siemens R3964 line discipline as BROKEN + - [Config]: remove CONFIG_R3964 + - [Config]: add CONFIG_LDISC_AUTOLOAD=y + - tty: ldisc: add sysctl to prevent autoloading of ldiscs + - hwmon: (w83773g) Select REGMAP_I2C to fix build error + - hwmon: (occ) Fix power sensor indexing + - SMB3: Allow persistent handle timeout to be configurable on mount + - HID: logitech: Handle 0 scroll events for the m560 + - ACPICA: Clear status of GPEs before enabling them + - ACPICA: Namespace: remove address node from global list after method + termination + - ALSA: seq: Fix OOB-reads from strlcpy + - ALSA: hda/realtek: Enable headset MIC of Acer TravelMate B114-21 with ALC233 + - ALSA: hda/realtek - Add quirk for Tuxedo XC 1509 + - ALSA: xen-front: Do not use stream buffer size before it is set + - mm/huge_memory.c: fix modifying of page protection by insert_pfn_pmd() + - arm64: dts: rockchip: fix rk3328 sdmmc0 write errors + - mmc: alcor: don't write data before command has completed + - mmc: sdhci-omap: Don't finish_mrq() on a command error during tuning + - parisc: Detect QEMU earlier in boot process + - parisc: regs_return_value() should return gpr28 + - parisc: also set iaoq_b in instruction_pointer_set() + - alarmtimer: Return correct remaining time + - drm/i915/gvt: do not deliver a workload if its creation fails + - drm/sun4i: DW HDMI: Lower max. supported rate for H6 + - drm/udl: add a release method and delay modeset teardown + - kvm: svm: fix potential get_num_contig_pages overflow + - include/linux/bitrev.h: fix constant bitrev + - mm: writeback: use exact memcg dirty counts + - ASoC: intel: Fix crash at suspend/resume after failed codec registration + - ASoC: fsl_esai: fix channel swap issue when stream starts + - Btrfs: do not allow trimming when a fs is mounted with the nologreplay + option + - btrfs: prop: fix zstd compression parameter validation + - btrfs: prop: fix vanished compression property after failed set + - riscv: Fix syscall_get_arguments() and syscall_set_arguments() + - block: Revert v5.0 blk_mq_request_issue_directly() changes + - block: do not leak memory in bio_copy_user_iov() + - block: fix the return errno for direct IO + - genirq: Respect IRQCHIP_SKIP_SET_WAKE in irq_chip_set_wake_parent() + - genirq: Initialize request_mutex if CONFIG_SPARSE_IRQ=n + - virtio: Honour 'may_reduce_num' in vring_create_virtqueue + - ARM: OMAP1: ams-delta: Fix broken GPIO ID allocation + - ARM: dts: rockchip: fix rk3288 cpu opp node reference + - ARM: dts: am335x-evmsk: Correct the regulators for the audio codec + - ARM: dts: am335x-evm: Correct the regulators for the audio codec + - ARM: dts: rockchip: Fix SD card detection on rk3288-tinker + - ARM: dts: at91: Fix typo in ISC_D0 on PC9 + - arm64: futex: Fix FUTEX_WAKE_OP atomic ops with non-zero result value + - arm64: dts: rockchip: Fix vcc_host1_5v GPIO polarity on rk3328-rock64 + - arm64: dts: rockchip: fix rk3328 rgmii high tx error rate + - arm64: backtrace: Don't bother trying to unwind the userspace stack + - IB/mlx5: Reset access mask when looping inside page fault handler + - xen: Prevent buffer overflow in privcmd ioctl + - sched/fair: Do not re-read ->h_load_next during hierarchical load + calculation + - xtensa: fix return_address + - csky: Fix syscall_get_arguments() and syscall_set_arguments() + - x86/asm: Remove dead __GNUC__ conditionals + - x86/asm: Use stricter assembly constraints in bitops + - x86/perf/amd: Resolve race condition when disabling PMC + - x86/perf/amd: Resolve NMI latency issues for active PMCs + - x86/perf/amd: Remove need to check "running" bit in NMI handler + - PCI: Add function 1 DMA alias quirk for Marvell 9170 SATA controller + - PCI: pciehp: Ignore Link State Changes after powering off a slot + - xprtrdma: Fix helper that drains the transport + - powerpc/64s/radix: Fix radix segment exception handling + - dm integrity: change memcmp to strncmp in dm_integrity_ctr + - dm: revert 8f50e358153d ("dm: limit the max bio size as BIO_MAX_PAGES * + PAGE_SIZE") + - dm table: propagate BDI_CAP_STABLE_WRITES to fix sporadic checksum errors + - dm: disable DISCARD if the underlying storage no longer supports it + - dm integrity: fix deadlock with overlapping I/O + - drm/virtio: do NOT reuse resource ids + - Linux 5.0.8 + * Disco update: 5.0.7 upstream stable release (LP: #1828410) + - ext4: cleanup bh release code in ext4_ind_remove_space() + - CIFS: fix POSIX lock leak and invalid ptr deref + - nvme-fc: fix numa_node when dev is null + - nvme-loop: init nvmet_ctrl fatal_err_work when allocate + - h8300: use cc-cross-prefix instead of hardcoding h8300-unknown-linux- + - f2fs: fix to adapt small inline xattr space in __find_inline_xattr() + - f2fs: fix to avoid deadlock in f2fs_read_inline_dir() + - tracing: kdb: Fix ftdump to not sleep + - net/mlx5e: Fix access to non-existing receive queue + - net/mlx5: Avoid panic when setting vport rate + - net/mlx5: Avoid panic when setting vport mac, getting vport config + - xsk: fix to reject invalid flags in xsk_bind + - clk: ti: clkctrl: Fix clkdm_name regression for TI_CLK_CLKCTRL_COMPAT + - gpio: gpio-omap: fix level interrupt idling + - include/linux/relay.h: fix percpu annotation in struct rchan + - sysctl: handle overflow for file-max + - net: stmmac: Avoid sometimes uninitialized Clang warnings + - enic: fix build warning without CONFIG_CPUMASK_OFFSTACK + - libbpf: force fixdep compilation at the start of the build + - iio: adc: fix warning in Qualcomm PM8xxx HK/XOADC driver + - x86/hyperv: Fix kernel panic when kexec on HyperV + - perf c2c: Fix c2c report for empty numa node + - mm/sparse: fix a bad comparison + - mm/cma.c: cma_declare_contiguous: correct err handling + - mm/page_ext.c: fix an imbalance with kmemleak + - mm, swap: bounds check swap_info array accesses to avoid NULL derefs + - docs/core-api/mm: fix user memory accessors formatting + - mm,oom: don't kill global init via memory.oom.group + - memcg: killed threads should not invoke memcg OOM killer + - mm, mempolicy: fix uninit memory access + - mm/vmalloc.c: fix kernel BUG at mm/vmalloc.c:512! + - mm/slab.c: kmemleak no scan alien caches + - ocfs2: fix a panic problem caused by o2cb_ctl + - f2fs: do not use mutex lock in atomic context + - f2fs: fix to data block override node segment by mistake + - fs/file.c: initialize init_files.resize_wait + - page_poison: play nicely with KASAN + - kasan: fix kasan_check_read/write definitions + - cifs: use correct format characters + - dm thin: add sanity checks to thin-pool and external snapshot creation + - f2fs: fix to check inline_xattr_size boundary correctly + - cifs: Accept validate negotiate if server return NT_STATUS_NOT_SUPPORTED + - cifs: Fix NULL pointer dereference of devname + - perf beauty msg_flags: Add missing %s lost when adding prefix suppression + logic + - netfilter: nf_tables: check the result of dereferencing base_chain->stats + - PCI: mediatek: Fix memory mapped IO range size computation + - netfilter: conntrack: tcp: only close if RST matches exact sequence + - iommu/vt-d: Disable ATS support on untrusted devices + - jbd2: fix invalid descriptor block checksum + - ext4: fix bigalloc cluster freeing when hole punching under load + - fs: fix guard_bio_eod to check for real EOD errors + - tools lib traceevent: Fix buffer overflow in arg_eval + - mm/resource: Return real error codes from walk failures + - PCI/PME: Fix hotplug/sysfs remove deadlock in pcie_pme_remove() + - wil6210: check null pointer in _wil_cfg80211_merge_extra_ies + - mt76: fix a leaked reference by adding a missing of_node_put + - ath10k: Fix the wrong updation of BW in tx_stats debugfs entry + - lockdep/lib/tests: Fix run_tests.sh + - crypto: crypto4xx - add missing of_node_put after of_device_is_available + - crypto: cavium/zip - fix collision with generic cra_driver_name + - tools/bpf: selftests: add map lookup to test_map_in_map bpf prog + - usb: chipidea: Grab the (legacy) USB PHY by phandle first + - powerpc/powernv/ioda: Fix locked_vm counting for memory used by IOMMU tables + - scsi: core: replace GFP_ATOMIC with GFP_KERNEL in scsi_scan.c + - kbuild: invoke syncconfig if include/config/auto.conf.cmd is missing + - kbuild: make -r/-R effective in top Makefile for old Make versions + - btrfs: save drop_progress if we drop refs at all + - drm/amd/display: Fix reference counting for struct dc_sink. + - ath10k: don't report unset rssi values to mac80211 + - powerpc/xmon: Fix opcode being uninitialized in print_insn_powerpc + - coresight: etm4x: Add support to enable ETMv4.2 + - serial: 8250_pxa: honor the port number from devicetree + - ARM: 8840/1: use a raw_spinlock_t in unwind + - ARM: 8845/1: use unified assembler in c files + - iommu/io-pgtable-arm-v7s: Only kmemleak_ignore L2 tables + - powerpc/hugetlb: Handle mmap_min_addr correctly in get_unmapped_area + callback + - net: dsa: mv88e6xxx: Default CMODE to 1000BaseX only on 6390X + - ice: fix ice_remove_rule_internal vsi_list handling + - perf script: Handle missing fields with -F +.. + - btrfs: qgroup: Make qgroup async transaction commit more aggressive + - btrfs: don't enospc all tickets on flush failure + - mmc: omap: fix the maximum timeout setting + - net: dsa: mv88e6xxx: Add lockdep classes to fix false positive splat + - veth: Fix -Wformat-truncation + - e1000e: Fix -Wformat-truncation warnings + - mlxsw: spectrum: Avoid -Wformat-truncation warnings + - i2c: Allow recovery of the initial IRQ by an I2C client device. + - platform/x86: ideapad-laptop: Fix no_hw_rfkill_list for Lenovo RESCUER + R720-15IKBN + - platform/mellanox: mlxreg-hotplug: Fix KASAN warning + - loop: set GENHD_FL_NO_PART_SCAN after blkdev_reread_part() + - i2c: designware: Do not allow i2c_dw_xfer() calls while suspended + - IB/mlx4: Increase the timeout for CM cache + - clk: fractional-divider: check parent rate only if flag is set + - perf annotate: Fix getting source line failure + - powerpc/44x: Force PCI on for CURRITUCK + - ASoC: qcom: Fix of-node refcount unbalance in qcom_snd_parse_of() + - cpufreq: acpi-cpufreq: Report if CPU doesn't support boost technologies + - efi: cper: Fix possible out-of-bounds access + - s390/ism: ignore some errors during deregistration + - scsi: megaraid_sas: return error when create DMA pool failed + - scsi: fcoe: make use of fip_mode enum complete + - drm/amd/display: Clear stream->mode_changed after commit + - perf test: Fix failure of 'evsel-tp-sched' test on s390 + - mwifiex: don't advertise IBSS features without FW support + - perf report: Don't shadow inlined symbol with different addr range + - SoC: imx-sgtl5000: add missing put_device() + - media: ov7740: fix runtime pm initialization + - media: sh_veu: Correct return type for mem2mem buffer helpers + - media: s5p-jpeg: Correct return type for mem2mem buffer helpers + - media: rockchip/rga: Correct return type for mem2mem buffer helpers + - media: s5p-g2d: Correct return type for mem2mem buffer helpers + - media: mx2_emmaprp: Correct return type for mem2mem buffer helpers + - media: mtk-jpeg: Correct return type for mem2mem buffer helpers + - media: rockchip/vpu: Correct return type for mem2mem buffer helpers + - mt76: usb: do not run mt76u_queues_deinit twice + - gpio: of: Apply regulator-gpio quirk only to enable-gpios + - xen/gntdev: Do not destroy context while dma-bufs are in use + - vfs: fix preadv64v2 and pwritev64v2 compat syscalls with offset == -1 + - HID: intel-ish-hid: avoid binding wrong ishtp_cl_device + - cgroup, rstat: Don't flush subtree root unless necessary + - efi: Fix build error due to enum collision between efi.h and ima.h + - drm/sched: Fix entities with 0 rqs. + - regulator: core: Take lock before applying system load + - jbd2: fix race when writing superblock + - leds: lp55xx: fix null deref on firmware load failure + - tools build: Add -lrt to FEATURE_CHECK_LDFLAGS-libaio + - tools build: Add test-reallocarray.c to test-all.c to fix the build + - perf beauty waitid options: Fix up prefix showing logic + - perf trace: Check if the 'fd' is negative when mapping it to pathname + - perf report: Add s390 diagnosic sampling descriptor size + - perf coresight: Do not test for libopencsd by default + - iwlwifi: pcie: fix emergency path + - ACPI / video: Refactor and fix dmi_is_desktop() + - selftests: ir: fix warning: "%s" directive output may be truncated ’ + directive output may be truncated + - selftests: skip seccomp get_metadata test if not real root + - kprobes: Prohibit probing on bsearch() + - kprobes: Prohibit probing on RCU debug routine + - netfilter: conntrack: fix cloned unconfirmed skb->_nfct race in + __nf_conntrack_confirm + - ARM: 8833/1: Ensure that NEON code always compiles with Clang + - ARM: dts: meson8b: fix the Ethernet data line signals in eth_rgmii_pins + - ALSA: PCM: check if ops are defined before suspending PCM + - ath10k: fix shadow register implementation for WCN3990 + - usb: f_fs: Avoid crash due to out-of-scope stack ptr access + - sched/topology: Fix percpu data types in struct sd_data & struct s_data + - bcache: fix input overflow to cache set sysfs file io_error_halflife + - bcache: fix input overflow to sequential_cutoff + - bcache: fix potential div-zero error of writeback_rate_i_term_inverse + - bcache: improve sysfs_strtoul_clamp() + - genirq: Avoid summation loops for /proc/stat + - net: marvell: mvpp2: fix stuck in-band SGMII negotiation + - iw_cxgb4: fix srqidx leak during connection abort + - net: phy: consider latched link-down status in polling mode + - fbdev: fbmem: fix memory access if logo is bigger than the screen + - cdrom: Fix race condition in cdrom_sysctl_register + - drm: rcar-du: add missing of_node_put + - drm/amd/display: Don't re-program planes for DPMS changes + - bpf: test_maps: fix possible out of bound access warning + - x86/kexec: Fill in acpi_rsdp_addr from the first kernel + - powerpc/ptrace: Mitigate potential Spectre v1 + - drm/amd/display: Disconnect mpcc when changing tg + - perf/aux: Make perf_event accessible to setup_aux() + - e1000e: fix cyclic resets at link up with active tx + - e1000e: Exclude device from suspend direct complete optimization + - platform/x86: intel_pmc_core: Fix PCH IP sts reading + - i2c: of: Try to find an I2C adapter matching the parent + - staging: spi: mt7621: Add return code check on device_reset() + - iwlwifi: mvm: fix RFH config command with >=10 CPUs + - ASoC: fsl-asoc-card: fix object reference leaks in fsl_asoc_card_probe + - sched/debug: Initialize sd_sysctl_cpus if !CONFIG_CPUMASK_OFFSTACK + - efi/memattr: Don't bail on zero VA if it equals the region's PA + - sched/core: Use READ_ONCE()/WRITE_ONCE() in + move_queued_task()/task_rq_lock() + - drm/vkms: Bugfix racing hrtimer vblank handle + - drm/vkms: Bugfix extra vblank frame + - ARM: dts: lpc32xx: Remove leading 0x and 0s from bindings notation + - soc: qcom: gsbi: Fix error handling in gsbi_probe() + - drm/msm/dpu: Convert to a chained irq chip + - mt7601u: bump supported EEPROM version + - ARM: 8830/1: NOMMU: Toggle only bits in EXC_RETURN we are really care of + - ARM: avoid Cortex-A9 livelock on tight dmb loops + - block, bfq: fix in-service-queue check for queue merging + - block, bfq: fix queue removal from weights tree + - bpf: fix missing prototype warnings + - selftests/bpf: skip verifier tests for unsupported program types + - powerpc/64s: Clear on-stack exception marker upon exception return + - cgroup/pids: turn cgroup_subsys->free() into cgroup_subsys->release() to fix + the accounting + - backlight: pwm_bl: Use gpiod_get_value_cansleep() to get initial state + - tty: increase the default flip buffer limit to 2*640K + - powerpc/pseries: Perform full re-add of CPU for topology update post- + migration + - drm/amd/display: Enable vblank interrupt during CRC capture + - ALSA: dice: add support for Solid State Logic Duende Classic/Mini + - regulator: mcp16502: Include linux/gpio/consumer.h to fix build error + - usb: dwc3: gadget: Fix OTG events when gadget driver isn't loaded + - platform/x86: intel-hid: Missing power button release on some Dell models + - perf trace: Fixup etcsnoop example + - perf script python: Use PyBytes for attr in trace-event-python + - perf script python: Add trace_context extension module to sys.modules + - media: mt9m111: set initial frame size other than 0x0 + - hwrng: virtio - Avoid repeated init of completion + - soc/tegra: fuse: Fix illegal free of IO base address + - selftests/bpf: suppress readelf stderr when probing for BTF support + - HID: intel-ish: ipc: handle PIMR before ish_wakeup also clear PISR + busy_clear bit + - f2fs: UBSAN: set boolean value iostat_enable correctly + - f2fs: fix to initialize variable to avoid UBSAN/smatch warning + - hpet: Fix missing '=' character in the __setup() code of hpet_mmap_enable + - pinctrl: meson: fix G12A ao pull registers base address + - pinctrl: sh-pfc: r8a77990: Fix MOD_SEL bit numbering + - pinctrl: sh-pfc: r8a77995: Fix MOD_SEL bit numbering + - cpu/hotplug: Mute hotplug lockdep during init + - dmaengine: imx-dma: fix warning comparison of distinct pointer types + - dmaengine: qcom_hidma: assign channel cookie correctly + - dmaengine: qcom_hidma: initialize tx flags in hidma_prep_dma_* + - netfilter: physdev: relax br_netfilter dependency + - media: rcar-vin: Allow independent VIN link enablement + - media: s5p-jpeg: Check for fmt_ver_flag when doing fmt enumeration + - PCI: pciehp: Assign ctrl->slot_ctrl before writing it to hardware + - audit: hand taken context to audit_kill_trees for syscall logging + - regulator: act8865: Fix act8600_sudcdc_voltage_ranges setting + - pinctrl: meson: meson8b: add the eth_rxd2 and eth_rxd3 pins + - drm: Auto-set allow_fb_modifiers when given modifiers at plane init + - drm/nouveau: Stop using drm_crtc_force_disable + - x86/build: Specify elf_i386 linker emulation explicitly for i386 objects + - selinux: do not override context on context mounts + - brcmfmac: Use firmware_request_nowarn for the clm_blob + - wlcore: Fix memory leak in case wl12xx_fetch_firmware failure + - x86/build: Mark per-CPU symbols as absolute explicitly for LLD + - drm/fb-helper: fix leaks in error path of drm_fb_helper_fbdev_setup + - clk: meson: clean-up clock registration + - ARM: shmobile: Fix R-Car Gen2 regulator quirk + - clk: rockchip: fix frac settings of GPLL clock for rk3328 + - dmaengine: tegra: avoid overflow of byte tracking + - staging: iio: adt7316: fix dac_bits assignment + - Input: soc_button_array - fix mapping of the 5th GPIO in a PNP0C40 device + - ASoC: simple-card-utils: check "reg" property on + asoc_simple_card_get_dai_id() + - drm: Reorder set_property_atomic to avoid returning with an active ww_ctx + - drm/dp/mst: Configure no_stop_bit correctly for remote i2c xfers + - net: stmmac: Avoid one more sometimes uninitialized Clang warning + - appletalk: Fix compile regression + - gpio: of: Restrict enable-gpio quirk to regulator-gpio + - ACPI / video: Extend chassis-type detection with a "Lunch Box" check + - bcache: fix potential div-zero error of writeback_rate_p_term_inverse + - kbuild: add workaround for Debian make-kpkg + - kbuild: skip sub-make for in-tree build with GNU Make 4.x + - Linux 5.0.7 + * enabling ftrace on Hi1620 CS causes an Oops (LP: #1822871) + - arm64/ftrace: fix inadvertent BUG() in trampoline check + - arm64/module: ftrace: deal with place relative nature of PLTs + * The noise keeps occurring when Headset is plugged in on a Dell machine + (LP: #1827972) + - ALSA: hda/realtek - Fixed Dell AIO speaker noise + * CONFIG_LOG_BUF_SHIFT set to 14 is too low on arm64 (LP: #1824864) + - [Config] CONFIG_LOG_BUF_SHIFT=18 on all 64bit arches + * There are 4 HDMI/Displayport audio output listed in sound setting without + attach any HDMI/DP monitor (LP: #1827967) + - ALSA: hda/hdmi - Read the pin sense from register when repolling + - ALSA: hda/hdmi - Consider eld_valid when reporting jack event + * Headphone jack switch sense is inverted: plugging in headphones disables + headphone output (LP: #1824259) + - ASoC: rt5645: Headphone Jack sense inverts on the LattePanda board + * ratelimit cma_alloc messages (LP: #1828092) + - SAUCE: cma: ratelimit cma_alloc error messages + * linux-buildinfo: pull out ABI information into its own package + (LP: #1806380) + - [Packaging] autoreconstruct -- base tag is always primary mainline version + * CTAUTO:DevOps:860.50:devops4fp1:Error occurred during LINUX Dmesg error + Checking for all LINUX clients for devops4p10 (LP: #1766201) + - SAUCE: integrity: downgrade error to warning + * False positive test result in run_netsocktests from net in + ubuntu_kernel_selftest (LP: #1825777) + - selftests/net: correct the return value for run_netsocktests + + -- Andrea Righi Thu, 16 May 2019 15:27:23 +0200 + +linux-azure (5.0.0-1006.6) disco; urgency=medium + + + [ Ubuntu: 5.0.0-15.16 ] + + * CVE-2019-11683 + - udp: fix GRO reception in case of length mismatch + - udp: fix GRO packet of death + * CVE-2018-12126 // CVE-2018-12127 // CVE-2018-12130 + - x86/msr-index: Cleanup bit defines + - x86/speculation: Consolidate CPU whitelists + - x86/speculation/mds: Add basic bug infrastructure for MDS + - x86/speculation/mds: Add BUG_MSBDS_ONLY + - x86/kvm: Expose X86_FEATURE_MD_CLEAR to guests + - x86/speculation/mds: Add mds_clear_cpu_buffers() + - x86/speculation/mds: Clear CPU buffers on exit to user + - x86/kvm/vmx: Add MDS protection when L1D Flush is not active + - x86/speculation/mds: Conditionally clear CPU buffers on idle entry + - x86/speculation/mds: Add mitigation control for MDS + - x86/speculation/mds: Add sysfs reporting for MDS + - x86/speculation/mds: Add mitigation mode VMWERV + - Documentation: Move L1TF to separate directory + - Documentation: Add MDS vulnerability documentation + - x86/speculation/mds: Add mds=full,nosmt cmdline option + - x86/speculation: Move arch_smt_update() call to after mitigation decisions + - x86/speculation/mds: Add SMT warning message + - x86/speculation/mds: Fix comment + - x86/speculation/mds: Print SMT vulnerable on MSBDS with mitigations off + - x86/speculation/mds: Add 'mitigations=' support for MDS + * CVE-2017-5715 // CVE-2017-5753 + - s390/speculation: Support 'mitigations=' cmdline option + * CVE-2017-5715 // CVE-2017-5753 // CVE-2017-5754 // CVE-2018-3639 + - powerpc/speculation: Support 'mitigations=' cmdline option + * CVE-2017-5715 // CVE-2017-5754 // CVE-2018-3620 // CVE-2018-3639 // + CVE-2018-3646 + - cpu/speculation: Add 'mitigations=' cmdline option + - x86/speculation: Support 'mitigations=' cmdline option + * Packaging resync (LP: #1786013) + - [Packaging] resync git-ubuntu-log + + -- Stefan Bader Tue, 07 May 2019 11:45:56 +0200 + +linux-azure (5.0.0-1005.5) disco; urgency=medium + + * linux-azure: 5.0.0-1005.5 -proposed tracker (LP: #1826143) + + [ Ubuntu: 5.0.0-14.15 ] + + * linux: 5.0.0-14.15 -proposed tracker (LP: #1826150) + * [SRU] Please sync vbox modules from virtualbox 6.0.6 on next kernel update + (LP: #1825210) + - vbox-update: updates for renamed makefiles + - ubuntu: vbox -- update to 6.0.6-dfsg-1 + * Intel I210 Ethernet card not working after hotplug [8086:1533] + (LP: #1818490) + - igb: Fix WARN_ONCE on runtime suspend + * [regression][snd_hda_codec_realtek] repeating crackling noise after 19.04 + upgrade (LP: #1821663) + - ALSA: hda - Add two more machines to the power_save_blacklist + * CVE-2019-9500 + - brcmfmac: assure SSID length from firmware is limited + * CVE-2019-9503 + - brcmfmac: add subtype check for event handling in data path + * CVE-2019-3882 + - vfio/type1: Limit DMA mappings per container + * autofs kernel module missing (LP: #1824333) + - [Config] Update autofs4 path in inclusion list + * The Realtek card reader does not enter PCIe 1.1/1.2 (LP: #1825487) + - misc: rtsx: Enable OCP for rts522a rts524a rts525a rts5260 + - SAUCE: misc: rtsx: Fixed rts5260 power saving parameter and sd glitch + * headset-mic doesn't work on two Dell laptops. (LP: #1825272) + - ALSA: hda/realtek - add two more pin configuration sets to quirk table + * CVE-2019-3887 + - KVM: x86: nVMX: close leak of L0's x2APIC MSRs (CVE-2019-3887) + - KVM: x86: nVMX: fix x2APIC VTPR read intercept + * CVE-2019-3874 + - sctp: implement memory accounting on tx path + - sctp: implement memory accounting on rx path + * CVE-2019-1999 + - binder: fix race between munmap() and direct reclaim + * apparmor does not start in Disco LXD containers (LP: #1824812) + - SAUCE: shiftfs: use separate llseek method for directories + + -- Stefan Bader Thu, 25 Apr 2019 17:00:04 +0200 + +linux-azure (5.0.0-1004.4) disco; urgency=medium + + * linux-azure: 5.0.0-1004.4 -proposed tracker (LP: #1824834) + + [ Ubuntu: 5.0.0-13.14 ] + + * linux: 5.0.0-13.14 -proposed tracker (LP: #1824819) + * Display only has 640x480 (LP: #1824677) + - Revert "UBUNTU: SAUCE: drm/nouveau: Disable nouveau driver by default" + * shiftfs: use after free when checking mount options (LP: #1824735) + - SAUCE: shiftfs: prevent use-after-free when verifying mount options + + [ Ubuntu: 5.0.0-12.13 ] + + * linux: 5.0.0-12.13 -proposed tracker (LP: #1824726) + * Linux 5.0 black screen on boot, display flickers (i915 regression with + certain laptop panels) (LP: #1824216) + - drm/i915/dp: revert back to max link rate and lane count on eDP + * kernel BUG at fs/attr.c:287 when using shiftfs (LP: #1824717) + - SAUCE: shiftfs: fix passing of attrs to underaly for setattr + + -- Seth Forshee Mon, 15 Apr 2019 10:32:08 -0500 + +linux-azure (5.0.0-1003.3) disco; urgency=medium + + * linux-azure: 5.0.0-1003.3 -proposed tracker (LP: #1824376) + + [ Ubuntu: 5.0.0-11.12 ] + + * linux: 5.0.0-11.12 -proposed tracker (LP: #1824383) + * hns3: PPU_PF_ABNORMAL_INT_ST over_8bd_no_fe found [error status=0x1] + (LP: #1824194) + - net: hns3: fix for not calculating tx bd num correctly + * disco: unable to use iptables/enable ufw under -virtual kernel + (LP: #1823862) + - [Packaging] add bpfilter to linux-modules + * Make shiftfs a module rather than built-in (LP: #1824354) + - [Config] CONFIG_SHIFT_FS=m + * shiftfs: chown sets untranslated ids in lower fs (LP: #1824350) + - SAUCE: shiftfs: use translated ids when chaning lower fs attrs + * [Hyper-V] KVP daemon fails to start on first boot of disco VM (LP: #1820063) + - [Packaging] bind hv_kvp_daemon startup to hv_kvp device + + -- Seth Forshee Thu, 11 Apr 2019 12:28:21 -0500 + +linux-azure (5.0.0-1002.2) disco; urgency=medium + + * linux-azure: 5.0.0-1002.2 -proposed tracker (LP: #1823220) + + * Set CONFIG_RANDOM_TRUST_CPU=y (LP: #1823754) + - [Config] CONFIG_RANDOM_TRUST_CPU=y + + * PAGE_POISONING / PAGE_POISONING_NO_SANITY / PAGE_POISONING_ZERO option was + expected to be set in C-KVM (LP: #1812624) + - [Config]: enable PAGE_POISONING, PAGE_POISONING_NO_SANITY, + PAGE_POISONING_ZERO + + * Add CONFIG_NO_HZ_FULL=y to linux-azure kernels (LP: #1818138) + - [Config] linux-azure: CONFIG_NO_HZ_FULL=y + + * Miscellaneous Ubuntu changes + - [Config] update configs after rebase to 5.0.0-10.11 + - Revert "UBUNTU: [Config] azure: CONFIG_HOTPLUG_CPU=n" + + [ Ubuntu: 5.0.0-10.11 ] + + * linux: 5.0.0-10.11 -proposed tracker (LP: #1823936) + * Apparmor enforcement failure in lxc selftests (LP: #1823379) + - SAUCE: apparmor: Restore Y/N in /sys for apparmor's "enabled" + * systemd cause kernel trace "BUG: unable to handle kernel paging request at + 6db23a14" on Cosmic i386 (LP: #1813244) + - openvswitch: fix flow actions reallocation + + [ Ubuntu: 5.0.0-9.10 ] + + * linux: 5.0.0-9.10 -proposed tracker (LP: #1823228) + * Packaging resync (LP: #1786013) + - [Packaging] resync git-ubuntu-log + - [Packaging] update helper scripts + - [Packaging] resync retpoline extraction + * Huawei Hi1822 NIC has poor performance (LP: #1820187) + - net-next/hinic: replace disable_irq_nosync/enable_irq + * Add uid shifting overlay filesystem (shiftfs) (LP: #1823186) + - shiftfs: uid/gid shifting bind mount + - shiftfs: rework and extend + - shiftfs: support some btrfs ioctls + - [Config] enable shiftfs + * Cannot boot or install - have to use nomodeset (LP: #1821820) + - Revert "drm/i915/fbdev: Actually configure untiled displays" + * Disco update: v5.0.6 upstream stable release (LP: #1823060) + - netfilter: nf_tables: fix set double-free in abort path + - dccp: do not use ipv6 header for ipv4 flow + - genetlink: Fix a memory leak on error path + - gtp: change NET_UDP_TUNNEL dependency to select + - ipv6: make ip6_create_rt_rcu return ip6_null_entry instead of NULL + - mac8390: Fix mmio access size probe + - mISDN: hfcpci: Test both vendor & device ID for Digium HFC4S + - net: aquantia: fix rx checksum offload for UDP/TCP over IPv6 + - net: datagram: fix unbounded loop in __skb_try_recv_datagram() + - net/packet: Set __GFP_NOWARN upon allocation in alloc_pg_vec + - net: phy: meson-gxl: fix interrupt support + - net: rose: fix a possible stack overflow + - net: stmmac: fix memory corruption with large MTUs + - net-sysfs: call dev_hold if kobject_init_and_add success + - net: usb: aqc111: Extend HWID table by QNAP device + - packets: Always register packet sk in the same order + - rhashtable: Still do rehash when we get EEXIST + - sctp: get sctphdr by offset in sctp_compute_cksum + - sctp: use memdup_user instead of vmemdup_user + - tcp: do not use ipv6 header for ipv4 flow + - tipc: allow service ranges to be connect()'ed on RDM/DGRAM + - tipc: change to check tipc_own_id to return in tipc_net_stop + - tipc: fix cancellation of topology subscriptions + - tun: properly test for IFF_UP + - vrf: prevent adding upper devices + - vxlan: Don't call gro_cells_destroy() before device is unregistered + - thunderx: enable page recycling for non-XDP case + - thunderx: eliminate extra calls to put_page() for pages held for recycling + - net: dsa: mv88e6xxx: fix few issues in mv88e6390x_port_set_cmode + - net: mii: Fix PAUSE cap advertisement from linkmode_adv_to_lcl_adv_t() + helper + - net: phy: don't clear BMCR in genphy_soft_reset + - r8169: fix cable re-plugging issue + - ila: Fix rhashtable walker list corruption + - tun: add a missing rcu_read_unlock() in error path + - powerpc/fsl: Fix the flush of branch predictor. + - Btrfs: fix incorrect file size after shrinking truncate and fsync + - btrfs: remove WARN_ON in log_dir_items + - btrfs: don't report readahead errors and don't update statistics + - btrfs: Fix bound checking in qgroup_trace_new_subtree_blocks + - btrfs: Avoid possible qgroup_rsv_size overflow in + btrfs_calculate_inode_block_rsv_size + - Btrfs: fix assertion failure on fsync with NO_HOLES enabled + - locks: wake any locks blocked on request before deadlock check + - tracing: initialize variable in create_dyn_event() + - ARM: imx6q: cpuidle: fix bug that CPU might not wake up at expected time + - powerpc: bpf: Fix generation of load/store DW instructions + - vfio: ccw: only free cp on final interrupt + - NFS: Fix nfs4_lock_state refcounting in nfs4_alloc_{lock,unlock}data() + - NFS: fix mount/umount race in nlmclnt. + - NFSv4.1 don't free interrupted slot on open + - net: dsa: qca8k: remove leftover phy accessors + - ALSA: rawmidi: Fix potential Spectre v1 vulnerability + - ALSA: seq: oss: Fix Spectre v1 vulnerability + - ALSA: pcm: Fix possible OOB access in PCM oss plugins + - ALSA: pcm: Don't suspend stream in unrecoverable PCM state + - ALSA: hda/realtek - Fixed Headset Mic JD not stable + - ALSA: hda/realtek: merge alc_fixup_headset_jack to alc295_fixup_chromebook + - ALSA: hda/realtek - Add support headset mode for DELL WYSE AIO + - ALSA: hda/realtek - Add support headset mode for New DELL WYSE NB + - ALSA: hda/realtek: Enable headset MIC of Acer AIO with ALC286 + - ALSA: hda/realtek: Enable headset MIC of Acer Aspire Z24-890 with ALC286 + - ALSA: hda/realtek - Add support for Acer Aspire E5-523G/ES1-432 headset mic + - ALSA: hda/realtek: Enable ASUS X441MB and X705FD headset MIC with ALC256 + - ALSA: hda/realtek: Enable headset mic of ASUS P5440FF with ALC256 + - ALSA: hda/realtek: Enable headset MIC of ASUS X430UN and X512DK with ALC256 + - ALSA: hda/realtek - Fix speakers on Acer Predator Helios 500 Ryzen laptops + - kbuild: modversions: Fix relative CRC byte order interpretation + - fs/open.c: allow opening only regular files during execve() + - ocfs2: fix inode bh swapping mixup in ocfs2_reflink_inodes_lock + - scsi: sd: Fix a race between closing an sd device and sd I/O + - scsi: sd: Quiesce warning if device does not report optimal I/O size + - scsi: zfcp: fix rport unblock if deleted SCSI devices on Scsi_Host + - scsi: zfcp: fix scsi_eh host reset with port_forced ERP for non-NPIV FCP + devices + - drm/rockchip: vop: reset scale mode when win is disabled + - tty/serial: atmel: Add is_half_duplex helper + - tty/serial: atmel: RS485 HD w/DMA: enable RX after TX is stopped + - tty: mxs-auart: fix a potential NULL pointer dereference + - tty: atmel_serial: fix a potential NULL pointer dereference + - tty: serial: qcom_geni_serial: Initialize baud in qcom_geni_console_setup + - staging: comedi: ni_mio_common: Fix divide-by-zero for DIO cmdtest + - staging: olpc_dcon_xo_1: add missing 'const' qualifier + - staging: speakup_soft: Fix alternate speech with other synths + - staging: vt6655: Remove vif check from vnt_interrupt + - staging: vt6655: Fix interrupt race condition on device start up. + - staging: erofs: fix to handle error path of erofs_vmap() + - staging: erofs: fix error handling when failed to read compresssed data + - staging: erofs: keep corrupted fs from crashing kernel in erofs_readdir() + - serial: max310x: Fix to avoid potential NULL pointer dereference + - serial: mvebu-uart: Fix to avoid a potential NULL pointer dereference + - serial: sh-sci: Fix setting SCSCR_TIE while transferring data + - USB: serial: cp210x: add new device id + - USB: serial: ftdi_sio: add additional NovaTech products + - USB: serial: mos7720: fix mos_parport refcount imbalance on error path + - USB: serial: option: set driver_info for SIM5218 and compatibles + - USB: serial: option: add support for Quectel EM12 + - USB: serial: option: add Olicard 600 + - ACPI / CPPC: Fix guaranteed performance handling + - Disable kgdboc failed by echo space to /sys/module/kgdboc/parameters/kgdboc + - fs/proc/proc_sysctl.c: fix NULL pointer dereference in put_links + - drivers/block/zram/zram_drv.c: fix idle/writeback string compare + - blk-mq: fix sbitmap ws_active for shared tags + - cpufreq: intel_pstate: Also use CPPC nominal_perf for base_frequency + - cpufreq: scpi: Fix use after free + - drm/vgem: fix use-after-free when drm_gem_handle_create() fails + - drm/vkms: fix use-after-free when drm_gem_handle_create() fails + - drm/i915: Mark AML 0x87CA as ULX + - drm/i915/gvt: Fix MI_FLUSH_DW parsing with correct index check + - drm/i915/icl: Fix the TRANS_DDI_FUNC_CTL2 bitfield macro + - gpio: exar: add a check for the return value of ida_simple_get fails + - gpio: adnp: Fix testing wrong value in adnp_gpio_direction_input + - phy: sun4i-usb: Support set_mode to USB_HOST for non-OTG PHYs + - usb: mtu3: fix EXTCON dependency + - USB: gadget: f_hid: fix deadlock in f_hidg_write() + - usb: common: Consider only available nodes for dr_mode + - mm/memory.c: fix modifying of page protection by insert_pfn() + - usb: host: xhci-rcar: Add XHCI_TRUST_TX_LENGTH quirk + - xhci: Fix port resume done detection for SS ports with LPM enabled + - usb: xhci: dbc: Don't free all memory with spinlock held + - xhci: Don't let USB3 ports stuck in polling state prevent suspend + - usb: cdc-acm: fix race during wakeup blocking TX traffic + - usb: typec: tcpm: Try PD-2.0 if sink does not respond to 3.0 source-caps + - usb: typec: Fix unchecked return value + - mm/hotplug: fix offline undo_isolate_page_range() + - mm: add support for kmem caches in DMA32 zone + - iommu/io-pgtable-arm-v7s: request DMA32 memory, and improve debugging + - mm: mempolicy: make mbind() return -EIO when MPOL_MF_STRICT is specified + - mm/debug.c: fix __dump_page when mapping->host is not set + - mm/memory_hotplug.c: fix notification in offline error path + - mm/page_isolation.c: fix a wrong flag in set_migratetype_isolate() + - mm/migrate.c: add missing flush_dcache_page for non-mapped page migrate + - perf pmu: Fix parser error for uncore event alias + - perf intel-pt: Fix TSC slip + - objtool: Query pkg-config for libelf location + - powerpc/pseries/energy: Use OF accessor functions to read ibm,drc-indexes + - powerpc/64: Fix memcmp reading past the end of src/dest + - powerpc/pseries/mce: Fix misleading print for TLB mutlihit + - watchdog: Respect watchdog cpumask on CPU hotplug + - cpu/hotplug: Prevent crash when CPU bringup fails on CONFIG_HOTPLUG_CPU=n + - x86/smp: Enforce CONFIG_HOTPLUG_CPU when SMP=y + - KVM: Reject device ioctls from processes other than the VM's creator + - KVM: x86: Emulate MSR_IA32_ARCH_CAPABILITIES on AMD hosts + - KVM: x86: update %rip after emulating IO + - bpf: do not restore dst_reg when cur_state is freed + - mt76x02u: use usb_bulk_msg to upload firmware + - Linux 5.0.6 + * RDMA/hns updates for disco (LP: #1822897) + - RDMA/hns: Fix the bug with updating rq head pointer when flush cqe + - RDMA/hns: Bugfix for the scene without receiver queue + - RDMA/hns: Add constraint on the setting of local ACK timeout + - RDMA/hns: Modify the pbl ba page size for hip08 + - RDMA/hns: RDMA/hns: Assign rq head pointer when enable rq record db + - RDMA/hns: Add the process of AEQ overflow for hip08 + - RDMA/hns: Add SCC context allocation support for hip08 + - RDMA/hns: Add SCC context clr support for hip08 + - RDMA/hns: Add timer allocation support for hip08 + - RDMA/hns: Remove set but not used variable 'rst' + - RDMA/hns: Make some function static + - RDMA/hns: Fix the Oops during rmmod or insmod ko when reset occurs + - RDMA/hns: Fix the chip hanging caused by sending mailbox&CMQ during reset + - RDMA/hns: Fix the chip hanging caused by sending doorbell during reset + - RDMA/hns: Limit minimum ROCE CQ depth to 64 + - RDMA/hns: Fix the state of rereg mr + - RDMA/hns: Set allocated memory to zero for wrid + - RDMA/hns: Delete useful prints for aeq subtype event + - RDMA/hns: Configure capacity of hns device + - RDMA/hns: Modify qp&cq&pd specification according to UM + - RDMA/hns: Bugfix for set hem of SCC + - RDMA/hns: Use GFP_ATOMIC in hns_roce_v2_modify_qp + * autopkgtests run too often, too much and don't skip enough (LP: #1823056) + - Set +x on rebuild testcase. + - Skip rebuild test, for regression-suite deps. + - Make ubuntu-regression-suite skippable on unbootable kernels. + - make rebuild use skippable error codes when skipping. + - Only run regression-suite, if requested to. + * touchpad not working on lenovo yoga 530 (LP: #1787775) + - Revert "UBUNTU: SAUCE: i2c:amd Depends on ACPI" + - Revert "UBUNTU: SAUCE: i2c:amd move out pointer in union i2c_event_base" + - i2c: add extra check to safe DMA buffer helper + - i2c: Add drivers for the AMD PCIe MP2 I2C controller + - [Config] Update config for AMD MP2 I2C driver + * Detect SMP PHY control command errors (LP: #1822680) + - scsi: libsas: Check SMP PHY control function result + * disable a.out support (LP: #1818552) + - [Config] Disable a.out support + - [Config] remove binfmt_aout from abi for i386 lowlatency + * bionic: fork out linux-snapdragon into its own topic kernel (LP: #1820868) + - [Packaging] remove snapdragon flavour support + - Revert "UBUNTU: SAUCE: (snapdragon) drm/msm/adv7511: wrap hacks under + CONFIG_ADV7511_SNAPDRAGON_HACKS #ifdefs" + - Revert "UBUNTU: SAUCE: (snapdragon) media: ov5645: skip address change if dt + addr == default addr" + - Revert "UBUNTU: SAUCE: (snapdragon) DT: leds: Add Qualcomm Light Pulse + Generator binding" + - Revert "UBUNTU: SAUCE: (snapdragon) MAINTAINERS: Add Qualcomm Camera Control + Interface driver" + - Revert "UBUNTU: SAUCE: (snapdragon) dt-bindings: media: Binding document for + Qualcomm Camera Control Interface driver" + - Revert "UBUNTU: SAUCE: (snapdragon) leds: Add driver for Qualcomm LPG" + - Revert "UBUNTU: SAUCE: (snapdragon) HACK: drm/msm/adv7511: Don't rely on + interrupts for EDID parsing" + - Revert "UBUNTU: SAUCE: (snapdragon) drm/bridge/adv7511: Delay clearing of + HPD interrupt status" + - Revert "UBUNTU: SAUCE: (snapdragon) media: ov5645: Fix I2C address" + - Revert "UBUNTU: SAUCE: (snapdragon) i2c-qcom-cci: Fix I2C address bug" + - Revert "UBUNTU: SAUCE: (snapdragon) i2c-qcom-cci: Fix run queue completion + timeout" + - Revert "UBUNTU: SAUCE: (snapdragon) camss: Do not register if no cameras are + present" + - Revert "UBUNTU: SAUCE: (snapdragon) i2c: Add Qualcomm Camera Control + Interface driver" + - Revert "UBUNTU: SAUCE: (snapdragon) ov5645: I2C address change" + - Revert "UBUNTU: SAUCE: (snapdragon) regulator: smd: Allow + REGULATOR_QCOM_SMD_RPM=m" + - Revert "UBUNTU: SAUCE: (snapdragon) cpufreq: Add apq8016 to cpufreq-dt- + platdev blacklist" + - Revert "UBUNTU: SAUCE: (snapdragon) PM / OPP: Add a helper to get an opp + regulator for device" + - Revert "UBUNTU: SAUCE: (snapdragon) PM / OPP: HACK: Allow to set regulator + without opp_list" + - Revert "UBUNTU: SAUCE: (snapdragon) PM / OPP: Drop RCU usage in + dev_pm_opp_adjust_voltage()" + - Revert "UBUNTU: SAUCE: (snapdragon) PM / OPP: Support adjusting OPP voltages + at runtime" + - Revert "UBUNTU: SAUCE: (snapdragon) regulator: smd: Add floor and corner + operations" + - Revert "UBUNTU: SAUCE: (snapdragon) power: avs: cpr: Register with cpufreq- + dt" + - Revert "UBUNTU: SAUCE: (snapdragon) power: avs: cpr: fix with new + reg_sequence structures" + - Revert "UBUNTU: SAUCE: (snapdragon) power: avs: cpr: Use raw mem access for + qfprom" + - Revert "UBUNTU: SAUCE: (snapdragon) power: avs: Add support for CPR (Core + Power Reduction)" + - Revert "UBUNTU: SAUCE: (snapdragon) HACK: drm/msm/iommu: Remove runtime_put + calls in map/unmap" + - Revert "UBUNTU: SAUCE: (snapdragon) arm64: defconfig: enable LEDS_QCOM_LPG" + - Revert "UBUNTU: SAUCE: (snapdragon) kernel: distro.config: enable 'BBR' TCP + congestion algorithm" + - Revert "UBUNTU: SAUCE: (snapdragon) kernel: distro.config: enable 'fq' and + 'fq_codel' qdiscs" + - Revert "UBUNTU: SAUCE: (snapdragon) kernel: distro.config: enable + 'schedutil' CPUfreq governor" + - Revert "UBUNTU: SAUCE: (snapdragon) kernel: configs: set USB_CONFIG_F_FS in + distro.config" + - Revert "UBUNTU: SAUCE: (snapdragon) arm64: defconfig: enable + CONFIG_USB_CONFIGFS_F_FS by default" + - Revert "UBUNTU: SAUCE: (snapdragon) kernel: configs: add freq stat to sysfs" + - Revert "UBUNTU: SAUCE: (snapdragon) arm64: configs: Enable camera drivers" + - Revert "UBUNTU: SAUCE: (snapdragon) arm64: defconfig: disable ANALOG_TV and + DIGITAL_TV" + - Revert "UBUNTU: SAUCE: (snapdragon) kernel: configs: add more USB net + drivers" + - Revert "UBUNTU: SAUCE: (snapdragon) arm64: configs: enable BT_QCOMSMD" + - Revert "UBUNTU: SAUCE: (snapdragon) arm64: defconfig: enable + CFG80211_DEFAULT_PS by default" + - Revert "UBUNTU: SAUCE: (snapdragon) Force the SMD regulator driver to be + compiled-in" + - Revert "UBUNTU: SAUCE: (snapdragon) kernel: configs: enable dm_mod and + dm_crypt" + - Revert "UBUNTU: SAUCE: (snapdragon) arm64: defconfig: Enable a53/apcs and + avs" + - Revert "UBUNTU: SAUCE: (snapdragon) arm64: configs: enable QCOM Venus" + - Revert "UBUNTU: SAUCE: (snapdragon) kernel: distro.config: enable debug + friendly USB network adpater" + - Revert "UBUNTU: SAUCE: (snapdragon) arm64: configs: enable WCN36xx" + - Revert "UBUNTU: SAUCE: (snapdragon) kernel: configs; add distro.config" + - Revert "UBUNTU: SAUCE: (snapdragon) arm64: defconfig: enable QCOM audio + drivers for APQ8016 and DB410c" + - Revert "UBUNTU: SAUCE: (snapdragon) arm64: defconfig: enable REMOTEPROC" + - [Config] fix abi for remove i2c-qcom-cci module + - [Config] update annotations + - [Config] update configs following snapdragon removal + * Disco update: v5.0.5 upstream stable release (LP: #1822671) + - Revert "ALSA: hda - Enforces runtime_resume after S3 and S4 for each codec" + - ALSA: hda - add Lenovo IdeaCentre B550 to the power_save_blacklist + - ALSA: firewire-motu: use 'version' field of unit directory to identify model + - mmc: pxamci: fix enum type confusion + - mmc: alcor: fix DMA reads + - mmc: mxcmmc: "Revert mmc: mxcmmc: handle highmem pages" + - mmc: renesas_sdhi: limit block count to 16 bit for old revisions + - drm/amdgpu: fix invalid use of change_bit + - drm/vmwgfx: Don't double-free the mode stored in par->set_mode + - drm/vmwgfx: Return 0 when gmrid::get_node runs out of ID's + - iommu/amd: fix sg->dma_address for sg->offset bigger than PAGE_SIZE + - iommu/iova: Fix tracking of recently failed iova address + - libceph: wait for latest osdmap in ceph_monc_blacklist_add() + - udf: Fix crash on IO error during truncate + - mips: loongson64: lemote-2f: Add IRQF_NO_SUSPEND to "cascade" irqaction. + - MIPS: Ensure ELF appended dtb is relocated + - MIPS: Fix kernel crash for R6 in jump label branch function + - powerpc/vdso64: Fix CLOCK_MONOTONIC inconsistencies across Y2038 + - powerpc/security: Fix spectre_v2 reporting + - net/mlx5: Fix DCT creation bad flow + - scsi: core: Avoid that a kernel warning appears during system resume + - scsi: qla2xxx: Fix FC-AL connection target discovery + - scsi: ibmvscsi: Protect ibmvscsi_head from concurrent modificaiton + - scsi: ibmvscsi: Fix empty event pool access during host removal + - futex: Ensure that futex address is aligned in handle_futex_death() + - perf probe: Fix getting the kernel map + - objtool: Move objtool_file struct off the stack + - irqchip/gic-v3-its: Fix comparison logic in lpi_range_cmp + - clocksource/drivers/riscv: Fix clocksource mask + - ALSA: ac97: Fix of-node refcount unbalance + - ext4: fix NULL pointer dereference while journal is aborted + - ext4: fix data corruption caused by unaligned direct AIO + - ext4: brelse all indirect buffer in ext4_ind_remove_space() + - media: v4l2-ctrls.c/uvc: zero v4l2_event + - Bluetooth: hci_uart: Check if socket buffer is ERR_PTR in h4_recv_buf() + - Bluetooth: Fix decrementing reference count twice in releasing socket + - Bluetooth: hci_ldisc: Initialize hci_dev before open() + - Bluetooth: hci_ldisc: Postpone HCI_UART_PROTO_READY bit set in + hci_uart_set_proto() + - drm/vkms: Fix flush_work() without INIT_WORK(). + - RDMA/cma: Rollback source IP address if failing to acquire device + - f2fs: fix to avoid deadlock of atomic file operations + - aio: simplify - and fix - fget/fput for io_submit() + - netfilter: ebtables: remove BUGPRINT messages + - loop: access lo_backing_file only when the loop device is Lo_bound + - x86/unwind: Handle NULL pointer calls better in frame unwinder + - x86/unwind: Add hardcoded ORC entry for NULL + - locking/lockdep: Add debug_locks check in __lock_downgrade() + - ALSA: hda - Record the current power state before suspend/resume calls + - ALSA: hda - Enforces runtime_resume after S3 and S4 for each codec + - Linux 5.0.5 + * hisi_sas updates for disco (LP: #1822385) + - scsi: hisi_sas: send primitive NOTIFY to SSP situation only + - scsi: hisi_sas: shutdown axi bus to avoid exception CQ returned + - scsi: hisi_sas: remove the check of sas_dev status in + hisi_sas_I_T_nexus_reset() + - scsi: hisi_sas: Remove unused parameter of function hisi_sas_alloc() + - scsi: hisi_sas: Reject setting programmed minimum linkrate > 1.5G + - scsi: hisi_sas: Fix losing directly attached disk when hot-plug + - scsi: hisi_sas: Correct memory allocation size for DQ debugfs + - scsi: hisi_sas: Some misc tidy-up + - scsi: hisi_sas: Fix to only call scsi_get_prot_op() for non-NULL scsi_cmnd + - scsi: hisi_sas: Add missing seq_printf() call in hisi_sas_show_row_32() + - scsi: hisi_sas: Add support for DIX feature for v3 hw + - scsi: hisi_sas: Add manual trigger for debugfs dump + - scsi: hisi_sas: change queue depth from 512 to 4096 + - scsi: hisi_sas: Issue internal abort on all relevant queues + - scsi: hisi_sas: Use pci_irq_get_affinity() for v3 hw as experimental + - scsi: hisi_sas: Do some more tidy-up + - scsi: hisi_sas: Change return variable type in phy_up_v3_hw() + - scsi: hisi_sas: Fix a timeout race of driver internal and SMP IO + - scsi: hisi_sas: print PHY RX errors count for later revision of v3 hw + - scsi: hisi_sas: Set PHY linkrate when disconnected + - scsi: hisi_sas: Send HARD RESET to clear the previous affiliation of STP + target port + - scsi: hisi_sas: Change SERDES_CFG init value to increase reliability of + HiLink + - scsi: hisi_sas: Add softreset in hisi_sas_I_T_nexus_reset() + * [Patch][Raven 2] kernel 5.0.0 cannot boot because of psp response + (LP: #1822267) + - drm/amdgpu/psp: Fix can't detect psp INVOKE command failed + - drm/amdgpu/psp: ignore psp response status + * 3b080b2564287be91605bfd1d5ee985696e61d3c in ubuntu_btrfs_kernel_fixes + triggers system hang on i386 (LP: #1812845) + - btrfs: raid56: properly unmap parity page in finish_parity_scrub() + * enable CONFIG_DRM_BOCHS (LP: #1795857) + - [Config] Reenable DRM_BOCHS as module + * [Dell Precision 7530/5530 with Nvidia Quadro P1000] Live USB freezes or + cannot complete install when nouveau driver is loaded (crashing in GP100 + code) (LP: #1822026) + - SAUCE: drm/nouveau: Disable nouveau driver by default + * Need to add Intel CML related pci-id's (LP: #1821863) + - drm/i915/cml: Add CML PCI IDS + - drm/i915/cml: Introduce Comet Lake PCH + * ARM: Add support for the SDEI interface (LP: #1822005) + - ACPI / APEI: Don't wait to serialise with oops messages when panic()ing + - ACPI / APEI: Remove silent flag from ghes_read_estatus() + - ACPI / APEI: Switch estatus pool to use vmalloc memory + - ACPI / APEI: Make hest.c manage the estatus memory pool + - ACPI / APEI: Make estatus pool allocation a static size + - ACPI / APEI: Don't store CPER records physical address in struct ghes + - ACPI / APEI: Remove spurious GHES_TO_CLEAR check + - ACPI / APEI: Don't update struct ghes' flags in read/clear estatus + - ACPI / APEI: Generalise the estatus queue's notify code + - ACPI / APEI: Don't allow ghes_ack_error() to mask earlier errors + - ACPI / APEI: Move NOTIFY_SEA between the estatus-queue and NOTIFY_NMI + - ACPI / APEI: Switch NOTIFY_SEA to use the estatus queue + - KVM: arm/arm64: Add kvm_ras.h to collect kvm specific RAS plumbing + - arm64: KVM/mm: Move SEA handling behind a single 'claim' interface + - ACPI / APEI: Move locking to the notification helper + - ACPI / APEI: Let the notification helper specify the fixmap slot + - ACPI / APEI: Pass ghes and estatus separately to avoid a later copy + - ACPI / APEI: Make GHES estatus header validation more user friendly + - ACPI / APEI: Split ghes_read_estatus() to allow a peek at the CPER length + - ACPI / APEI: Only use queued estatus entry during in_nmi_queue_one_entry() + - ACPI / APEI: Use separate fixmap pages for arm64 NMI-like notifications + - firmware: arm_sdei: Add ACPI GHES registration helper + - ACPI / APEI: Add support for the SDEI GHES Notification type + * CVE-2019-9857 + - inotify: Fix fsnotify_mark refcount leak in inotify_update_existing_watch() + * scsi: libsas: Support SATA PHY connection rate unmatch fixing during + discovery (LP: #1821408) + - scsi: libsas: Support SATA PHY connection rate unmatch fixing during + discovery + * Qualcomm Atheros QCA9377 wireless does not work (LP: #1818204) + - platform/x86: ideapad-laptop: Add Ideapad 530S-14ARR to no_hw_rfkill list + * Lenovo ideapad 330-15ICH Wifi rfkill hard blocked (LP: #1811815) + - platform/x86: ideapad: Add ideapad 330-15ICH to no_hw_rfkill + * hid-sensor-hub spamming dmesg in 4.20 (LP: #1818547) + - HID: Increase maximum report size allowed by hid_field_extract() + * [disco] [5.0.0-7.8] can't mount guest cifs share (LP: #1821053) + - cifs: allow guest mounts to work for smb3.11 + - SMB3: Fix SMB3.1.1 guest mounts to Samba + * Add HiSilicon SoC quirk for cpufreq (LP: #1821620) + - ACPI / CPPC: Add a helper to get desired performance + - cpufreq / cppc: Work around for Hisilicon CPPC cpufreq + * Disco update: v5.0.4 upstream stable release (LP: #1821607) + - 9p: use inode->i_lock to protect i_size_write() under 32-bit + - 9p/net: fix memory leak in p9_client_create + - ASoC: fsl_esai: fix register setting issue in RIGHT_J mode + - ASoC: codecs: pcm186x: fix wrong usage of DECLARE_TLV_DB_SCALE() + - ASoC: codecs: pcm186x: Fix energysense SLEEP bit + - iio: adc: exynos-adc: Fix NULL pointer exception on unbind + - iio: adc: exynos-adc: Use proper number of channels for Exynos4x12 + - mei: hbm: clean the feature flags on link reset + - mei: bus: move hw module get/put to probe/release + - stm class: Prevent division by zero + - stm class: Fix an endless loop in channel allocation + - crypto: caam - fix hash context DMA unmap size + - crypto: ccree - fix missing break in switch statement + - crypto: caam - fixed handling of sg list + - crypto: caam - fix DMA mapping of stack memory + - crypto: ccree - fix free of unallocated mlli buffer + - crypto: ccree - unmap buffer before copying IV + - crypto: ccree - don't copy zero size ciphertext + - crypto: cfb - add missing 'chunksize' property + - crypto: cfb - remove bogus memcpy() with src == dest + - crypto: ofb - fix handling partial blocks and make thread-safe + - crypto: ahash - fix another early termination in hash walk + - crypto: rockchip - fix scatterlist nents error + - crypto: rockchip - update new iv to device in multiple operations + - dax: Flush partial PMDs correctly + - nfit: Fix nfit_intel_shutdown_status() command submission + - nfit: acpi_nfit_ctl(): Check out_obj->type in the right place + - acpi/nfit: Fix bus command validation + - nfit/ars: Attempt a short-ARS whenever the ARS state is idle at boot + - nfit/ars: Attempt short-ARS even in the no_init_ars case + - libnvdimm/label: Clear 'updating' flag after label-set update + - libnvdimm, pfn: Fix over-trim in trim_pfn_device() + - libnvdimm/pmem: Honor force_raw for legacy pmem regions + - libnvdimm: Fix altmap reservation size calculation + - fix cgroup_do_mount() handling of failure exits + - crypto: aead - set CRYPTO_TFM_NEED_KEY if ->setkey() fails + - crypto: aegis - fix handling chunked inputs + - crypto: arm/crct10dif - revert to C code for short inputs + - crypto: arm64/aes-neonbs - fix returning final keystream block + - crypto: arm64/crct10dif - revert to C code for short inputs + - crypto: hash - set CRYPTO_TFM_NEED_KEY if ->setkey() fails + - crypto: morus - fix handling chunked inputs + - crypto: pcbc - remove bogus memcpy()s with src == dest + - crypto: skcipher - set CRYPTO_TFM_NEED_KEY if ->setkey() fails + - crypto: testmgr - skip crc32c context test for ahash algorithms + - crypto: x86/aegis - fix handling chunked inputs and MAY_SLEEP + - crypto: x86/aesni-gcm - fix crash on empty plaintext + - crypto: x86/morus - fix handling chunked inputs and MAY_SLEEP + - crypto: arm64/aes-ccm - fix logical bug in AAD MAC handling + - crypto: arm64/aes-ccm - fix bugs in non-NEON fallback routine + - CIFS: Fix leaking locked VFS cache pages in writeback retry + - CIFS: Do not reset lease state to NONE on lease break + - CIFS: Do not skip SMB2 message IDs on send failures + - CIFS: Fix read after write for files with read caching + - smb3: make default i/o size for smb3 mounts larger + - tracing: Use strncpy instead of memcpy for string keys in hist triggers + - tracing: Do not free iter->trace in fail path of tracing_open_pipe() + - tracing/perf: Use strndup_user() instead of buggy open-coded version + - vmw_balloon: release lock on error in vmballoon_reset() + - xen: fix dom0 boot on huge systems + - ACPI / device_sysfs: Avoid OF modalias creation for removed device + - mmc: sdhci-esdhc-imx: fix HS400 timing issue + - mmc: renesas_sdhi: Fix card initialization failure in high speed mode + - mmc:fix a bug when max_discard is 0 + - spi: ti-qspi: Fix mmap read when more than one CS in use + - spi: pxa2xx: Setup maximum supported DMA transfer length + - spi: omap2-mcspi: Fix DMA and FIFO event trigger size mismatch + - spi: spi-gpio: fix SPI_CS_HIGH capability + - regulator: s2mps11: Fix steps for buck7, buck8 and LDO35 + - regulator: max77620: Initialize values for DT properties + - regulator: s2mpa01: Fix step values for some LDOs + - mt76: fix corrupted software generated tx CCMP PN + - clocksource/drivers/exynos_mct: Move one-shot check from tick clear to ISR + - clocksource/drivers/exynos_mct: Clear timer interrupt when shutdown + - clocksource/drivers/arch_timer: Workaround for Allwinner A64 timer + instability + - s390: vfio_ap: link the vfio_ap devices to the vfio_ap bus subsystem + - s390/setup: fix early warning messages + - s390/virtio: handle find on invalid queue gracefully + - scsi: virtio_scsi: don't send sc payload with tmfs + - scsi: aacraid: Fix performance issue on logical drives + - scsi: sd: Optimal I/O size should be a multiple of physical block size + - scsi: target/iscsi: Avoid iscsit_release_commands_from_conn() deadlock + - scsi: qla2xxx: Fix LUN discovery if loop id is not assigned yet by firmware + - scsi: qla2xxx: Avoid PCI IRQ affinity mapping when multiqueue is not + supported + - scsi: qla2xxx: Use complete switch scan for RSCN events + - fs/devpts: always delete dcache dentry-s in dput() + - splice: don't merge into linked buffers + - ovl: During copy up, first copy up data and then xattrs + - ovl: Do not lose security.capability xattr over metadata file copy-up + - m68k: Add -ffreestanding to CFLAGS + - Btrfs: setup a nofs context for memory allocation at btrfs_create_tree() + - Btrfs: setup a nofs context for memory allocation at __btrfs_set_acl + - btrfs: scrub: fix circular locking dependency warning + - btrfs: drop the lock on error in btrfs_dev_replace_cancel + - btrfs: ensure that a DUP or RAID1 block group has exactly two stripes + - btrfs: init csum_list before possible free + - Btrfs: fix corruption reading shared and compressed extents after hole + punching + - Btrfs: fix deadlock between clone/dedupe and rename + - soc: qcom: rpmh: Avoid accessing freed memory from batch API + - libertas_tf: don't set URB_ZERO_PACKET on IN USB transfer + - irqchip/gic-v3-its: Avoid parsing _indirect_ twice for Device table + - irqchip/brcmstb-l2: Use _irqsave locking variants in non-interrupt code + - x86/kprobes: Prohibit probing on optprobe template code + - cpufreq: kryo: Release OPP tables on module removal + - cpufreq: tegra124: add missing of_node_put() + - cpufreq: pxa2xx: remove incorrect __init annotation + - ext4: fix check of inode in swap_inode_boot_loader + - ext4: cleanup pagecache before swap i_data + - mm: hwpoison: fix thp split handing in soft_offline_in_use_page() + - mm/vmalloc: fix size check for remap_vmalloc_range_partial() + - mm/memory.c: do_fault: avoid usage of stale vm_area_struct + - kernel/sysctl.c: add missing range check in do_proc_dointvec_minmax_conv + - nvmem: core: don't check the return value of notifier chain call + - device property: Fix the length used in PROPERTY_ENTRY_STRING() + - intel_th: Don't reference unassigned outputs + - parport_pc: fix find_superio io compare code, should use equal test. + - i2c: tegra: fix maximum transfer size + - i2c: tegra: update maximum transfer size + - media: i2c: ov5640: Fix post-reset delay + - gpio: pca953x: Fix dereference of irq data in shutdown + - ext4: update quota information while swapping boot loader inode + - ext4: add mask of ext4 flags to swap + - ext4: fix crash during online resizing + - dma: Introduce dma_max_mapping_size() + - swiotlb: Introduce swiotlb_max_mapping_size() + - swiotlb: Add is_swiotlb_active() function + - PCI/ASPM: Use LTR if already enabled by platform + - PCI/DPC: Fix print AER status in DPC event handling + - PCI: qcom: Don't deassert reset GPIO during probe + - PCI: dwc: skip MSI init if MSIs have been explicitly disabled + - PCI: pci-bridge-emul: Create per-bridge copy of register behavior + - PCI: pci-bridge-emul: Extend pci_bridge_emul_init() with flags + - IB/hfi1: Close race condition on user context disable and close + - IB/rdmavt: Fix loopback send with invalidate ordering + - IB/rdmavt: Fix concurrency panics in QP post_send and modify to error + - cxl: Wrap iterations over afu slices inside 'afu_list_lock' + - ext2: Fix underflow in ext2_max_size() + - clk: uniphier: Fix update register for CPU-gear + - clk: clk-twl6040: Fix imprecise external abort for pdmclk + - clk: samsung: exynos5: Fix possible NULL pointer exception on + platform_device_alloc() failure + - clk: samsung: exynos5: Fix kfree() of const memory on setting + driver_override + - clk: ingenic: Fix round_rate misbehaving with non-integer dividers + - clk: ingenic: Fix doc of ingenic_cgu_div_info + - usb: chipidea: tegra: Fix missed ci_hdrc_remove_device() + - usb: typec: tps6598x: handle block writes separately with plain-I2C adapters + - dmaengine: usb-dmac: Make DMAC system sleep callbacks explicit + - serial: uartps: Fix stuck ISR if RX disabled with non-empty FIFO + - serial: 8250_of: assume reg-shift of 2 for mrvl,mmp-uart + - serial: 8250_pci: Fix number of ports for ACCES serial cards + - serial: 8250_pci: Have ACCES cards that use the four port Pericom PI7C9X7954 + chip use the pci_pericom_setup() + - jbd2: clear dirty flag when revoking a buffer from an older transaction + - jbd2: fix compile warning when using JBUFFER_TRACE + - selinux: add the missing walk_size + len check in selinux_sctp_bind_connect + - security/selinux: fix SECURITY_LSM_NATIVE_LABELS on reused superblock + - powerpc/32: Clear on-stack exception marker upon exception return + - powerpc/wii: properly disable use of BATs when requested. + - powerpc/powernv: Make opal log only readable by root + - powerpc/83xx: Also save/restore SPRG4-7 during suspend + - powerpc/kvm: Save and restore host AMR/IAMR/UAMOR + - powerpc/powernv: Don't reprogram SLW image on every KVM guest entry/exit + - powerpc/64s/hash: Fix assert_slb_presence() use of the slbfee. instruction + - powerpc: Fix 32-bit KVM-PR lockup and host crash with MacOS guest + - powerpc/ptrace: Simplify vr_get/set() to avoid GCC warning + - powerpc/hugetlb: Don't do runtime allocation of 16G pages in LPAR + configuration + - powerpc/smp: Fix NMI IPI timeout + - powerpc/smp: Fix NMI IPI xmon timeout + - powerpc/traps: fix recoverability of machine check handling on book3s/32 + - powerpc/traps: Fix the message printed when stack overflows + - ARM: s3c24xx: Fix boolean expressions in osiris_dvs_notify + - arm64: Fix HCR.TGE status for NMI contexts + - arm64: debug: Don't propagate UNKNOWN FAR into si_code for debug signals + - arm64: debug: Ensure debug handlers check triggering exception level + - arm64: KVM: Fix architecturally invalid reset value for FPEXC32_EL2 + - Revert "KVM/MMU: Flush tlb directly in the kvm_zap_gfn_range()" + - ipmi_si: Fix crash when using hard-coded device + - ipmi_si: fix use-after-free of resource->name + - dm: fix to_sector() for 32bit + - dm integrity: limit the rate of error messages + - media: cx25840: mark pad sig_types to fix cx231xx init + - mfd: sm501: Fix potential NULL pointer dereference + - cpcap-charger: generate events for userspace + - cpuidle: governor: Add new governors to cpuidle_governors again + - NFS: Fix I/O request leakages + - NFS: Fix an I/O request leakage in nfs_do_recoalesce + - NFS: Don't recoalesce on error in nfs_pageio_complete_mirror() + - nfsd: fix performance-limiting session calculation + - nfsd: fix memory corruption caused by readdir + - nfsd: fix wrong check in write_v4_end_grace() + - NFSv4.1: Reinitialise sequence results before retransmitting a request + - svcrpc: fix UDP on servers with lots of threads + - PM / wakeup: Rework wakeup source timer cancellation + - PM / OPP: Update performance state when freq == old_freq + - bcache: treat stale && dirty keys as bad keys + - bcache: use (REQ_META|REQ_PRIO) to indicate bio for metadata + - stable-kernel-rules.rst: add link to networking patch queue + - vt: perform safe console erase in the right order + - x86/unwind/orc: Fix ORC unwind table alignment + - perf intel-pt: Fix CYC timestamp calculation after OVF + - perf tools: Fix split_kallsyms_for_kcore() for trampoline symbols + - perf auxtrace: Define auxtrace record alignment + - perf intel-pt: Fix overlap calculation for padding + - perf/x86/intel/uncore: Fix client IMC events return huge result + - perf intel-pt: Fix divide by zero when TSC is not available + - md: Fix failed allocation of md_register_thread + - x86/kvmclock: set offset for kvm unstable clock + - x86/ftrace: Fix warning and considate ftrace_jmp_replace() and + ftrace_call_replace() + - tpm/tpm_crb: Avoid unaligned reads in crb_recv() + - tpm: Unify the send callback behaviour + - rcu: Do RCU GP kthread self-wakeup from softirq and interrupt + - media: imx: prpencvf: Stop upstream before disabling IDMA channel + - media: lgdt330x: fix lock status reporting + - media: sun6i: Fix CSI regmap's max_register + - media: uvcvideo: Avoid NULL pointer dereference at the end of streaming + - media: vimc: Add vimc-streamer for stream control + - media: imx-csi: Input connections to CSI should be optional + - media: imx: csi: Disable CSI immediately after last EOF + - media: imx: csi: Stop upstream before disabling IDMA channel + - drm/fb-helper: generic: Fix drm_fbdev_client_restore() + - drm/radeon/evergreen_cs: fix missing break in switch statement + - drm/amd/powerplay: correct power reading on fiji + - drm/amd/display: don't call dm_pp_ function from an fpu block + - KVM: Call kvm_arch_memslots_updated() before updating memslots + - KVM: VMX: Compare only a single byte for VMCS' "launched" in vCPU-run + - KVM: VMX: Zero out *all* general purpose registers after VM-Exit + - KVM: x86/mmu: Detect MMIO generation wrap in any address space + - KVM: x86/mmu: Do not cache MMIO accesses while memslots are in flux + - KVM: nVMX: Sign extend displacements of VMX instr's mem operands + - KVM: nVMX: Apply addr size mask to effective address for VMX instructions + - KVM: nVMX: Ignore limit checks on VMX instructions using flat segments + - KVM: nVMX: Check a single byte for VMCS "launched" in nested early checks + - net: dsa: lantiq_gswip: fix use-after-free on failed probe + - net: dsa: lantiq_gswip: fix OF child-node lookups + - s390/setup: fix boot crash for machine without EDAT-1 + - SUNRPC: Prevent thundering herd when the socket is not connected + - SUNRPC: Fix up RPC back channel transmission + - SUNRPC: Respect RPC call timeouts when retrying transmission + - Linux 5.0.4 + - [Config] update configs for 5.0.4 stable update + * New Intel Wireless-AC 9260 [8086:2526] card not correctly probed in Ubuntu + system (LP: #1821271) + - iwlwifi: add new card for 9260 series + * [CONFIG] please enable highdpi font FONT_TER16x32 (LP: #1819881) + - [Config]: enable highdpi Terminus 16x32 font support + * [SRU][B/B-OEM/C/D] Fix AMD IOMMU NULL dereference (LP: #1820990) + - iommu/amd: Fix NULL dereference bug in match_hid_uid + * some codecs stop working after S3 (LP: #1820930) + - ALSA: hda - Enforces runtime_resume after S3 and S4 for each codec + - ALSA: hda - Don't trigger jackpoll_work in azx_resume + * tcm_loop.ko: move from modules-extra into main modules package + (LP: #1817786) + - [Packaging] move tcm_loop.lo to main linux-modules package + * C++ demangling support missing from perf (LP: #1396654) + - [Packaging] fix a mistype + * r8169 doesn't get woken up by ethernet cable plugging, no PME generated + (LP: #1817676) + - PCI: pciehp: Disable Data Link Layer State Changed event on suspend + * Disco update: v5.0.3 upstream stable release (LP: #1821074) + - connector: fix unsafe usage of ->real_parent + - fou, fou6: avoid uninit-value in gue_err() and gue6_err() + - gro_cells: make sure device is up in gro_cells_receive() + - ipv4/route: fail early when inet dev is missing + - l2tp: fix infoleak in l2tp_ip6_recvmsg() + - lan743x: Fix RX Kernel Panic + - lan743x: Fix TX Stall Issue + - net: hsr: fix memory leak in hsr_dev_finalize() + - net/hsr: fix possible crash in add_timer() + - net: sit: fix UBSAN Undefined behaviour in check_6rd + - net/x25: fix use-after-free in x25_device_event() + - net/x25: reset state in x25_connect() + - pptp: dst_release sk_dst_cache in pptp_sock_destruct + - ravb: Decrease TxFIFO depth of Q3 and Q2 to one + - route: set the deleted fnhe fnhe_daddr to 0 in ip_del_fnhe to fix a race + - rxrpc: Fix client call queueing, waiting for channel + - sctp: remove sched init from sctp_stream_init + - tcp: do not report TCP_CM_INQ of 0 for closed connections + - tcp: Don't access TCP_SKB_CB before initializing it + - tcp: handle inet_csk_reqsk_queue_add() failures + - vxlan: Fix GRO cells race condition between receive and link delete + - vxlan: test dev->flags & IFF_UP before calling gro_cells_receive() + - net/mlx4_core: Fix reset flow when in command polling mode + - net/mlx4_core: Fix locking in SRIOV mode when switching between events and + polling + - net/mlx4_core: Fix qp mtt size calculation + - net: dsa: mv88e6xxx: Set correct interface mode for CPU/DSA ports + - vsock/virtio: fix kernel panic from virtio_transport_reset_no_sock + - net: sched: flower: insert new filter to idr after setting its mask + - f2fs: wait on atomic writes to count F2FS_CP_WB_DATA + - perf/x86: Fixup typo in stub functions + - ALSA: bebob: use more identical mod_alias for Saffire Pro 10 I/O against + Liquid Saffire 56 + - ALSA: firewire-motu: fix construction of PCM frame for capture direction + - ALSA: hda: Extend i915 component bind timeout + - ALSA: hda - add more quirks for HP Z2 G4 and HP Z240 + - ALSA: hda/realtek: Enable audio jacks of ASUS UX362FA with ALC294 + - ALSA: hda/realtek - Reduce click noise on Dell Precision 5820 headphone + - ALSA: hda/realtek: Enable headset MIC of Acer TravelMate X514-51T with + ALC255 + - perf/x86/intel: Fix memory corruption + - perf/x86/intel: Make dev_attr_allow_tsx_force_abort static + - It's wrong to add len to sector_nr in raid10 reshape twice + - drm: Block fb changes for async plane updates + - Linux 5.0.3 + * Disco update: v5.0.2 upstream stable release (LP: #1820318) + - media: uvcvideo: Fix 'type' check leading to overflow + - Input: wacom_serial4 - add support for Wacom ArtPad II tablet + - Input: elan_i2c - add id for touchpad found in Lenovo s21e-20 + - iscsi_ibft: Fix missing break in switch statement + - scsi: aacraid: Fix missing break in switch statement + - x86/PCI: Fixup RTIT_BAR of Intel Denverton Trace Hub + - arm64: dts: zcu100-revC: Give wifi some time after power-on + - arm64: dts: hikey: Give wifi some time after power-on + - arm64: dts: hikey: Revert "Enable HS200 mode on eMMC" + - ARM: dts: exynos: Fix pinctrl definition for eMMC RTSN line on Odroid X2/U3 + - ARM: dts: exynos: Add minimal clkout parameters to Exynos3250 PMU + - ARM: dts: exynos: Fix max voltage for buck8 regulator on Odroid XU3/XU4 + - drm: disable uncached DMA optimization for ARM and arm64 + - media: Revert "media: rc: some events are dropped by userspace" + - Revert "PCI/PME: Implement runtime PM callbacks" + - bpf: Stop the psock parser before canceling its work + - gfs2: Fix missed wakeups in find_insert_glock + - staging: erofs: keep corrupted fs from crashing kernel in erofs_namei() + - staging: erofs: compressed_pages should not be accessed again after freed + - scripts/gdb: replace flags (MS_xyz -> SB_xyz) + - ath9k: Avoid OF no-EEPROM quirks without qca,no-eeprom + - perf/x86/intel: Make cpuc allocations consistent + - perf/x86/intel: Generalize dynamic constraint creation + - x86: Add TSX Force Abort CPUID/MSR + - perf/x86/intel: Implement support for TSX Force Abort + - Linux 5.0.2 + * Linux security module stacking support + - LSM: Introduce LSM_FLAG_LEGACY_MAJOR + - LSM: Provide separate ordered initialization + - LSM: Plumb visibility into optional "enabled" state + - LSM: Lift LSM selection out of individual LSMs + - LSM: Build ordered list of LSMs to initialize + - LSM: Introduce CONFIG_LSM + - LSM: Introduce "lsm=" for boottime LSM selection + - LSM: Tie enabling logic to presence in ordered list + - LSM: Prepare for reorganizing "security=" logic + - LSM: Refactor "security=" in terms of enable/disable + - LSM: Separate idea of "major" LSM from "exclusive" LSM + - apparmor: Remove SECURITY_APPARMOR_BOOTPARAM_VALUE + - selinux: Remove SECURITY_SELINUX_BOOTPARAM_VALUE + - LSM: Add all exclusive LSMs to ordered initialization + - LSM: Split LSM preparation from initialization + - LoadPin: Initialize as ordered LSM + - Yama: Initialize as ordered LSM + - LSM: Introduce enum lsm_order + - capability: Initialize as LSM_ORDER_FIRST + - procfs: add smack subdir to attrs + - Smack: Abstract use of cred security blob + - SELinux: Abstract use of cred security blob + - SELinux: Remove cred security blob poisoning + - SELinux: Remove unused selinux_is_enabled + - AppArmor: Abstract use of cred security blob + - TOMOYO: Abstract use of cred security blob + - Infrastructure management of the cred security blob + - SELinux: Abstract use of file security blob + - Smack: Abstract use of file security blob + - LSM: Infrastructure management of the file security + - SELinux: Abstract use of inode security blob + - Smack: Abstract use of inode security blob + - LSM: Infrastructure management of the inode security + - LSM: Infrastructure management of the task security + - SELinux: Abstract use of ipc security blobs + - Smack: Abstract use of ipc security blobs + - LSM: Infrastructure management of the ipc security blob + - TOMOYO: Update LSM flags to no longer be exclusive + - LSM: generalize flag passing to security_capable + - LSM: Make lsm_early_cred() and lsm_early_task() local functions. + - LSM: Make some functions static + - apparmor: Adjust offset when accessing task blob. + - LSM: Ignore "security=" when "lsm=" is specified + - LSM: Update list of SECURITYFS users in Kconfig + - apparmor: delete the dentry in aafs_remove() to avoid a leak + - apparmor: fix double free when unpack of secmark rules fails + - SAUCE: LSM: Infrastructure management of the sock security + - SAUCE: LSM: Limit calls to certain module hooks + - SAUCE: LSM: Special handling for secctx lsm hooks + - SAUCE: LSM: Specify which LSM to display with /proc/self/attr/display + - SAUCE: Fix-up af_unix mediation for sock infrastructure management + - SAUCE: Revert "apparmor: Fix warning about unused function + apparmor_ipv6_postroute" + - SAUCE: Revert "apparmor: fix checkpatch error in Parse secmark policy" + - SAUCE: Revert "apparmor: add #ifdef checks for secmark filtering" + - SAUCE: Revert "apparmor: Allow filtering based on secmark policy" + - SAUCE: Revert "apparmor: Parse secmark policy" + - SAUCE: Revert "apparmor: Add a wildcard secid" + - SAUCE: Revert "apparmor: fix bad debug check in apparmor_secid_to_secctx()" + - SAUCE: Revert "apparmor: fixup secid map conversion to using IDR" + - SAUCE: Revert "apparmor: Use an IDR to allocate apparmor secids" + - SAUCE: Revert "apparmor: Fix memory leak of rule on error exit path" + - SAUCE: Revert "apparmor: modify audit rule support to support profile + stacks" + - SAUCE: Revert "apparmor: Add support for audit rule filtering" + - SAUCE: Revert "apparmor: add the ability to get a task's secid" + - SAUCE: Revert "apparmor: add support for mapping secids and using secctxes" + - SAUCE: apparmor: add proc subdir to attrs + - SAUCE: apparmor: add an apparmorfs entry to access current attrs + - SAUCE: apparmor: update flags to no longer be exclusive + - SAUCE: update configs and annotations for LSM stacking + * Miscellaneous Ubuntu changes + - [Config] CONFIG_EARLY_PRINTK_USB_XDBC=y + - SAUCE: (efi-lockdown) bpf: Restrict kernel image access functions when the + kernel is locked down + - [Config] CONFIG_RANDOM_TRUST_CPU=y + - [Config] refresh annotations for recent config changes + - ubuntu: vbox -- update to 6.0.4-dfsg-7 + - Revert "UBUNTU: SAUCE: i2c:amd I2C Driver based on PCI Interface for + upcoming platform" + + -- Seth Forshee Tue, 09 Apr 2019 13:47:42 -0500 + +linux-azure (5.0.0-1001.1) disco; urgency=medium + + * linux-azure: 5.0.0-1001.1 -proposed tracker (LP: #1820605) + + * Packaging resync (LP: #1786013) + - [Packaging] update update.conf + + * Miscellaneous Ubuntu changes + - [Config] update configs following rebase to 5.0.0-8.9 + - [Packaging] sync packaging updates from master + - [Packaging] enable nvidia dkms build + - [Packaging] add linux-modules-extra to getabis + - SAUCE: vbus-rdma: forward port to 5.0 + + -- Seth Forshee Mon, 18 Mar 2019 14:36:27 -0500 + +linux-azure (5.0.0-1000.0) disco; urgency=medium + + * Emtpy entry + + -- Seth Forshee Mon, 18 Mar 2019 07:16:53 -0500 + +linux-azure (4.18.0-1013.13) cosmic; urgency=medium + + * linux-azure: 4.18.0-1013.13 -proposed tracker (LP: #1818128) + + * linux-azure - Add the same 4.15 InfiniBand configuration settings to the + 4.18 kernel (LP: #1818141) + - [Config] linux-azure: CONFIG_INFINIBAND_{USER_MAD,IPOIB,IPOIB_DEBUG}=y + + * Packaging resync (LP: #1786013) + - [Packaging] resync getabis + - [Packaging] update helper scripts + + * [Hyper-V][SAUCE] pci-hyperv: Use only 16 bit integer for PCI domain + (LP: #1684971) + - SAUCE: pci-hyperv: Use only 16 bit integer for PCI domain + + -- Marcelo Henrique Cerri Thu, 28 Feb 2019 19:09:26 -0300 + +linux-azure (4.18.0-1012.12) cosmic; urgency=medium + + * linux-azure: 4.18.0-1012.12 -proposed tracker (LP: #1816783) + + * Packaging resync (LP: #1786013) + - [Packaging] update helper scripts + + [ Ubuntu: 4.18.0-16.17 ] + + * linux: 4.18.0-16.17 -proposed tracker (LP: #1814749) + * Packaging resync (LP: #1786013) + - [Packaging] update helper scripts + * CVE-2018-16880 + - vhost: fix OOB in get_rx_bufs() + * RTL8822BE WiFi Disabled in Kernel 4.18.0-12 (LP: #1806472) + - SAUCE: staging: rtlwifi: allow RTLWIFI_DEBUG_ST to be disabled + - [Config] CONFIG_RTLWIFI_DEBUG_ST=n + - SAUCE: Add r8822be to signature inclusion list + * kernel oops in bcache module (LP: #1793901) + - SAUCE: bcache: never writeback a discard operation + * CVE-2018-18397 + - userfaultfd: use ENOENT instead of EFAULT if the atomic copy user fails + - userfaultfd: shmem: allocate anonymous memory for MAP_PRIVATE shmem + - userfaultfd: shmem/hugetlbfs: only allow to register VM_MAYWRITE vmas + - userfaultfd: shmem: add i_size checks + - userfaultfd: shmem: UFFDIO_COPY: set the page dirty if VM_WRITE is not set + * Ignore "incomplete report" from Elan touchpanels (LP: #1813733) + - HID: i2c-hid: Ignore input report if there's no data present on Elan + touchpanels + * Vsock connect fails with ENODEV for large CID (LP: #1813934) + - vhost/vsock: fix vhost vsock cid hashing inconsistent + * Fix non-working pinctrl-intel (LP: #1811777) + - pinctrl: intel: Do pin translation in other GPIO operations as well + * ip6_gre: fix tunnel list corruption for x-netns (LP: #1812875) + - ip6_gre: fix tunnel list corruption for x-netns + * Backported commit breaks audio (fixed upstream) (LP: #1811566) + - ASoC: intel: cht_bsw_max98090_ti: Add quirk for boards using pmc_plt_clk_0 + - ASoC: intel: cht_bsw_max98090_ti: Add pmc_plt_clk_0 quirk for Chromebook + Clapper + - ASoC: intel: cht_bsw_max98090_ti: Add pmc_plt_clk_0 quirk for Chromebook + Gnawty + * kvm_stat : missing python dependency (LP: #1798776) + - tools/kvm_stat: switch to python3 + * [SRU] Fix Xorg crash with nomodeset when BIOS enable 64-bit fb addr + (LP: #1812797) + - vgaarb: Add support for 64-bit frame buffer address + - vgaarb: Keep adding VGA device in queue + * Fix non-working QCA Rome Bluetooth after S3 (LP: #1812812) + - USB: Add new USB LPM helpers + - USB: Consolidate LPM checks to avoid enabling LPM twice + * [SRU] IO's are issued with incorrect Scatter Gather Buffer (LP: #1795453) + - scsi: megaraid_sas: Use 63-bit DMA addressing + * x86/mm: Found insecure W+X mapping at address (ptrval)/0xc00a0000 + (LP: #1813532) + - x86/mm: Do not warn about PCI BIOS W+X mappings + * CVE-2019-6133 + - fork: record start_time late + * Fix not working Goodix touchpad (LP: #1811929) + - HID: i2c-hid: Disable runtime PM on Goodix touchpad + * bluetooth controller not detected with 4.15 kernel (LP: #1810797) + - SAUCE: btqcomsmd: introduce BT_QCOMSMD_HACK + - [Config] arm64: snapdragon: BT_QCOMSMD_HACK=y + * X1 Extreme: only one of the two SSDs is loaded (LP: #1811755) + - nvme-core: rework a NQN copying operation + - nvme: pad fake subsys NQN vid and ssvid with zeros + - nvme: introduce NVME_QUIRK_IGNORE_DEV_SUBNQN + * Crash on "ip link add foo type ipip" (LP: #1811803) + - SAUCE: fan: Fix NULL pointer dereference + + -- Kleber Sacilotto de Souza Thu, 21 Feb 2019 11:52:18 +0100 + +linux-azure (4.18.0-1011.11) cosmic; urgency=medium + + * linux-azure: 4.18.0-1011.11 -proposed tracker (LP: #1816081) + + * 4.15.0-1037 does not see all PCI devices on GPU VMs (LP: #1816106) + - Revert "PCI: hv: Make sure the bus domain is really unique" + + -- Stefan Bader Fri, 15 Feb 2019 17:16:24 +0100 + +linux-azure (4.18.0-1009.9) cosmic; urgency=medium + + * Allow I/O schedulers to be loaded with modprobe in linux-azure + (LP: #1813211) + - [Config] linux-azure: Enable all IO schedulers as modules + + * [Hyper-V] srcu: Lock srcu_data structure in srcu_gp_start() (LP: #1802021) + - srcu: Lock srcu_data structure in srcu_gp_start() + + * CONFIG_SECURITY_SELINUX_DISABLE should be disabled on 4.15/4.18 Azure + (LP: #1813866) + - [Config]: disable CONFIG_SECURITY_SELINUX_DISABLE + + [ Ubuntu: 4.18.0-15.16 ] + + * Ubuntu boot failure. 4.18.0-14 boot stalls. (does not boot) (LP: #1814555) + - Revert "drm/i915/ringbuffer: Delay after EMIT_INVALIDATE for gen4/gen5" + * Userspace break as a result of missing patch backport (LP: #1813873) + - tty: Don't hold ldisc lock in tty_reopen() if ldisc present + + -- Stefan Bader Fri, 08 Feb 2019 12:49:37 +0100 + +linux-azure (4.18.0-1008.8) cosmic; urgency=medium + + * linux-azure: 4.18.0-1008.8 -proposed tracker (LP: #1811415) + + * Cosmic update: 4.18.19 upstream stable release (LP: #1810820) + - [Config] Update config after 4.18.0-14.15 rebase + + * Packaging resync (LP: #1786013) + - [Packaging] update helper scripts + + [ Ubuntu: 4.18.0-14.15 ] + + * linux: 4.18.0-14.15 -proposed tracker (LP: #1811406) + * CPU hard lockup with rigorous writes to NVMe drive (LP: #1810998) + - blk-wbt: Avoid lock contention and thundering herd issue in wbt_wait + - blk-wbt: move disable check into get_limit() + - blk-wbt: use wq_has_sleeper() for wq active check + - blk-wbt: fix has-sleeper queueing check + - blk-wbt: abstract out end IO completion handler + - blk-wbt: improve waking of tasks + * To reduce the Realtek USB cardreader power consumption (LP: #1811337) + - mmc: core: Introduce MMC_CAP_SYNC_RUNTIME_PM + - mmc: rtsx_usb_sdmmc: Don't runtime resume the device while changing led + - mmc: rtsx_usb_sdmmc: Re-work runtime PM support + - mmc: rtsx_usb_sdmmc: Re-work card detection/removal support + - memstick: rtsx_usb_ms: Add missing pm_runtime_disable() in probe function + - misc: rtsx_usb: Use USB remote wakeup signaling for card insertion detection + - memstick: Prevent memstick host from getting runtime suspended during card + detection + - memstick: rtsx_usb_ms: Use ms_dev() helper + - memstick: rtsx_usb_ms: Support runtime power management + * Support non-strict iommu mode on arm64 (LP: #1806488) + - iommu/io-pgtable-arm: Fix race handling in split_blk_unmap() + - iommu/arm-smmu-v3: Implement flush_iotlb_all hook + - iommu/dma: Add support for non-strict mode + - iommu: Add "iommu.strict" command line option + - iommu/io-pgtable-arm: Add support for non-strict mode + - iommu/arm-smmu-v3: Add support for non-strict mode + - iommu/io-pgtable-arm-v7s: Add support for non-strict mode + - iommu/arm-smmu: Support non-strict mode + * [Regression] crashkernel fails on HiSilicon D05 (LP: #1806766) + - efi: honour memory reservations passed via a linux specific config table + - efi/arm: libstub: add a root memreserve config table + - efi: add API to reserve memory persistently across kexec reboot + - irqchip/gic-v3-its: Change initialization ordering for LPIs + - irqchip/gic-v3-its: Simplify LPI_PENDBASE_SZ usage + - irqchip/gic-v3-its: Split property table clearing from allocation + - irqchip/gic-v3-its: Move pending table allocation to init time + - irqchip/gic-v3-its: Keep track of property table's PA and VA + - irqchip/gic-v3-its: Allow use of pre-programmed LPI tables + - irqchip/gic-v3-its: Use pre-programmed redistributor tables with kdump + kernels + - irqchip/gic-v3-its: Check that all RDs have the same property table + - irqchip/gic-v3-its: Register LPI tables with EFI config table + - irqchip/gic-v3-its: Allow use of LPI tables in reserved memory + - arm64: memblock: don't permit memblock resizing until linear mapping is up + - efi/arm: Defer persistent reservations until after paging_init() + - efi: Permit calling efi_mem_reserve_persistent() from atomic context + - efi: Prevent GICv3 WARN() by mapping the memreserve table before first use + * ELAN900C:00 04F3:2844 touchscreen doesn't work (LP: #1811335) + - pinctrl: cannonlake: Fix community ordering for H variant + - pinctrl: cannonlake: Fix HOSTSW_OWN register offset of H variant + * Add Cavium ThunderX2 SoC UNCORE PMU driver (LP: #1811200) + - Documentation: perf: Add documentation for ThunderX2 PMU uncore driver + - drivers/perf: Add Cavium ThunderX2 SoC UNCORE PMU driver + - [Config] New config CONFIG_THUNDERX2_PMU=m + * iptables connlimit allows more connections than the limit when using + multiple CPUs (LP: #1811094) + - netfilter: nf_conncount: don't skip eviction when age is negative + * CVE-2018-16882 + - KVM: Fix UAF in nested posted interrupt processing + * Cannot initialize ATA disk if IDENTIFY command fails (LP: #1809046) + - scsi: libsas: check the ata device status by ata_dev_enabled() + * scsi: libsas: fix a race condition when smp task timeout (LP: #1808912) + - scsi: libsas: fix a race condition when smp task timeout + * CVE-2018-14625 + - vhost/vsock: fix use-after-free in network stack callers + * Fix and issue that LG I2C touchscreen stops working after reboot + (LP: #1805085) + - HID: i2c-hid: Disable runtime PM for LG touchscreen + * Drivers: hv: vmbus: Offload the handling of channels to two workqueues + (LP: #1807757) + - Drivers: hv: vmbus: check the creation_status in vmbus_establish_gpadl() + - Drivers: hv: vmbus: Offload the handling of channels to two workqueues + * Disable LPM for Raydium Touchscreens (LP: #1802248) + - USB: quirks: Add no-lpm quirk for Raydium touchscreens + * Power leakage at S5 with Qualcomm Atheros QCA9377 802.11ac Wireless Network + Adapter (LP: #1805607) + - SAUCE: ath10k: provide reset function for QCA9377 chip + * CVE-2018-19407 + - KVM: X86: Fix scan ioapic use-before-initialization + * Fix USB2 device wrongly detected as USB1 (LP: #1806534) + - xhci: Add quirk to workaround the errata seen on Cavium Thunder-X2 Soc + * Add support for ALC3277 codec on new Dell edge gateways (LP: #1807334) + - SAUCE: ASoC: rt5660: (no-up) Move platform code to board file + - ASoC: Intel: kbl_rt5660: Add a new machine driver for kbl with rt5660 + - [Config] CONFIG_SND_SOC_INTEL_KBL_RT5660_MACH=m + * armhf guests fail to boot in EFI mode (LP: #1809488) + - efi/arm: Revert deferred unmap of early memmap mapping + * audio output has constant noise on a Dell machine (LP: #1810891) + - ALSA: hda/realtek - Fixed headphone issue for ALC700 + * ldisc crash on reopened tty (LP: #1791758) + - tty: Hold tty_ldisc_lock() during tty_reopen() + - tty: Don't block on IO when ldisc change is pending + - tty: Simplify tty->count math in tty_reopen() + * efi-lockdown patch causes -EPERM for some debugfs files even though + CONFIG_LOCK_DOWN_KERNEL is not set (LP: #1807686) + - SAUCE: debugfs: avoid EPERM when no open file operation defined + * SATA device is not going to DEVSLP (LP: #1781533) + - ata: ahci: Support state with min power but Partial low power state + - ata: ahci: Enable DEVSLP by default on x86 with SLP_S0 + * Console got stuck using serial tty after logout (LP: #1808097) + - tty: do not set TTY_IO_ERROR flag if console port + * Workaround CSS timeout on AMD SNPS 3.0 xHC (LP: #1806838) + - xhci: workaround CSS timeout on AMD SNPS 3.0 xHC + * Add pointstick support for Cirque Touchpad (LP: #1805081) + - HID: multitouch: Add pointstick support for Cirque Touchpad + * Update hisilicon SoC-specific drivers (LP: #1810457) + - SAUCE: Revert "net: hns3: Updates RX packet info fetch in case of multi BD" + - net: hns3: remove redundant variable 'protocol' + - scsi: hisi_sas: Drop hisi_sas_slot_abort() + - net: hns: Make many functions static + - net: hns: make hns_dsaf_roce_reset non static + - net: hisilicon: hns: Replace mdelay() with msleep() + - net: hns3: fix return value error while hclge_cmd_csq_clean failed + - net: hns: remove redundant variables 'max_frm' and 'tmp_mac_key' + - net: hns: Mark expected switch fall-through + - net: hns3: Mark expected switch fall-through + - net: hns3: Remove tx ring BD len register in hns3_enet + - net: hns: modify variable type in hns_nic_reuse_page + - net: hns: use eth_get_headlen interface instead of hns_nic_get_headlen + - net: hns3: modify variable type in hns3_nic_reuse_page + - net: hns3: Fix for multicast failure + - net: hns3: Fix error of checking used vlan id + - net: hns3: Implement shutdown ops in hns3 pci driver + - net: hns3: Fix for loopback selftest failed problem + - net: hns3: Only update mac configuation when necessary + - net: hns3: Change the dst mac addr of loopback packet + - net: hns3: Remove redundant codes of query advertised flow control abilitiy + - net: hns3: Refine hns3_get_link_ksettings() + - net: hns: make function hns_gmac_wait_fifo_clean() static + - net: hns3: Add default irq affinity + - net: hns3: Add unlikely for buf_num check + - net: hns3: Remove tx budget to clean more TX descriptors in a napi + - net: hns3: Remove packet statistics of public + - net: hns3: Add support for hns3_nic_netdev_ops.ndo_do_ioctl + - net: hns3: Fix for setting speed for phy failed problem + - net: hns3: Fix cmdq registers initialization issue for vf + - net: hns3: Clear client pointer when initialize client failed or unintialize + finished + - net: hns3: Fix client initialize state issue when roce client initialize + failed + - net: hns3: Fix parameter type for q_id in hclge_tm_q_to_qs_map_cfg() + - net: hns3: Unify the type convert for desc.data + - net: hns3: Adjust prefix of tx/rx statistic names + - net: hns3: Fix tqp array traversal condition for vf + - net: hns3: Unify the prefix of vf functions + - net: hns3: Add handle for default case + - net: hns3: Add unlikely for dma_mapping_error check + - net: hns3: Remove print messages for error packet + - net: hns3: Add get_media_type ops support for VF + - net: hns3: Fix speed/duplex information loss problem when executing ethtool + ethx cmd of VF + - net: hns3: Remove redundant hclge_get_port_type() + - net: hns3: Add support for sctp checksum offload + - net: hns3: Set extra mac address of pause param for HW + - net: hns3: Rename loop mode + - net: hns3: Rename mac loopback to app loopback + - net: hns3: Add serdes parallel inner loopback support + - net: hns3: Fix for netdev not up problem when setting mtu + - net: hns3: Change return type of hclge_tm_schd_info_update() + - net: hns3: Modify hns3_get_max_available_channels + - net: hns3: Fix loss of coal configuration while doing reset + - net: hns: remove ndo_poll_controller + - hns3: Fix the build. + - hns3: Another build fix. + - net: hns3: Add flow director initialization + - net: hns3: Add input key and action config support for flow director + - net: hns3: Add support for rule add/delete for flow director + - net: hns3: Add support for rule query of flow director + - net: hns3: Add reset handle for flow director + - net: hns3: Remove all flow director rules when unload hns3 driver + - net: hns3: Add support for enable/disable flow director + - net: hns3: Remove the default mask configuration for mac vlan table + - net: hns3: Clear mac vlan table entries when unload driver or function reset + - net: hns3: Optimize for unicast mac vlan table + - net: hns3: Drop depricated mta table support + - net: hns3: Add egress/ingress vlan filter for revision 0x21 + - net: hns3: Fix for rx vlan id handle to support Rev 0x21 hardware + - net: hns3: Add new RSS hash algorithm support for PF + - net: hns3: Add RSS general configuration support for VF + - net: hns3: Add RSS tuples support for VF + - net: hns3: Add HW RSS hash information to RX skb + - net: hns3: Enable promisc mode when mac vlan table is full + - net: hns3: Resume promisc mode and vlan filter status after reset + - net: hns3: Resume promisc mode and vlan filter status after loopback test + - scsi: hisi_sas: Feed back linkrate(max/min) when re-attached + - scsi: hisi_sas: Move evaluation of hisi_hba in hisi_sas_task_prep() + - scsi: hisi_sas: Fix the race between IO completion and timeout for + SMP/internal IO + - scsi: hisi_sas: Free slot later in slot_complete_vx_hw() + - scsi: hisi_sas: unmask interrupts ent72 and ent74 + - scsi: hisi_sas: Use block layer tag instead for IPTT + - scsi: hisi_sas: Update v3 hw AIP_LIMIT and CFG_AGING_TIME register values + - net: hns3: remove hns3_fill_desc_tso + - net: hns3: move DMA map into hns3_fill_desc + - net: hns3: add handling for big TX fragment + - net: hns3: rename hns_nic_dma_unmap + - net: hns3: fix for multiple unmapping DMA problem + - scsi: hisi_sas: Fix spin lock management in slot_index_alloc_quirk_v2_hw() + - scsi: hisi_sas: Fix NULL pointer dereference + - net: hns3: Add PCIe AER callback error_detected + - net: hns3: Add PCIe AER error recovery + - net: hns3: Add support to enable and disable hw errors + - net: hns3: Add enable and process common ecc errors + - net: hns3: Add enable and process hw errors from IGU, EGU and NCSI + - net: hns3: Add enable and process hw errors from PPP + - net: hns3: Add enable and process hw errors of TM scheduler + - net: hns3: Fix for warning uninitialized symbol hw_err_lst3 + - net: hns3: fix spelling mistake "intrerrupt" -> "interrupt" + - net: hns3: add error handler for hns3_nic_init_vector_data() + - net: hns3: bugfix for buffer not free problem during resetting + - net: hns3: bugfix for reporting unknown vector0 interrupt repeatly problem + - net: hns3: bugfix for the initialization of command queue's spin lock + - net: hns3: remove unnecessary queue reset in the hns3_uninit_all_ring() + - net: hns3: bugfix for is_valid_csq_clean_head() + - net: hns3: bugfix for hclge_mdio_write and hclge_mdio_read + - net: hns3: fix incorrect return value/type of some functions + - net: hns3: bugfix for handling mailbox while the command queue reinitialized + - net: hns3: bugfix for rtnl_lock's range in the hclge_reset() + - net: hns3: bugfix for rtnl_lock's range in the hclgevf_reset() + - net: hns3: Fix for out-of-bounds access when setting pfc back pressure + - scsi: hisi_sas: Remove set but not used variable 'dq_list' + - net: hns3: bugfix for not checking return value + - net: hns: Incorrect offset address used for some registers. + - net: hns: All ports can not work when insmod hns ko after rmmod. + - net: hns: Some registers use wrong address according to the datasheet. + - net: hns: Fixed bug that netdev was opened twice + - net: hns: Clean rx fbd when ae stopped. + - net: hns: Free irq when exit from abnormal branch + - net: hns: Avoid net reset caused by pause frames storm + - net: hns: Fix ntuple-filters status error. + - net: hns: Add mac pcs config when enable|disable mac + - net: hns: Fix ping failed when use net bridge and send multicast + - net: hns3: use HNS3_NIC_STATE_INITED to indicate the initialization state of + enet + - net: hns3: add set_default_reset_request in the hnae3_ae_ops + - net: hns3: provide some interface & information for the client + - net: hns3: adjust the location of clearing the table when doing reset + - net: hns3: enable/disable ring in the enet while doing UP/DOWN + - net: hns3: use HNS3_NIC_STATE_RESETTING to indicate resetting + - net: hns3: ignore new coming low-level reset while doing high-level reset + - net: hns3: move some reset information from hnae3_handle into + hclge_dev/hclgevf_dev + - net: hns3: adjust the process of PF reset + - net: hns3: call roce's reset notify callback when resetting + - net: hns3: add error handler for hclge_reset() + - net: hns3: fix for cmd queue memory not freed problem during reset + - net: hns3: Remove set but not used variable 'reset_level' + - net: hns3: fix spelling mistake, "assertting" -> "asserting" + - net: hns3: add reset_hdev to reinit the hdev in VF's reset process + - net: hns3: adjust VF's reset process + - net: hns3: add reset handling for VF when doing PF reset + - net: hns3: add reset handling for VF when doing Core/Global/IMP reset + - net: hns3: stop handling command queue while resetting VF + - net: hns3: add error handler for hclgevf_reset() + - net: hns3: stop napi polling when HNS3_NIC_STATE_DOWN is set + - net: hns3: implement the IMP reset processing for PF + - net: hns3: add PCIe FLR support for PF + - net: hns3: do VF's pci re-initialization while PF doing FLR + - net: hns3: add PCIe FLR support for VF + - net: hns3: Enable HW GRO for Rev B(=0x21) HNS3 hardware + - net: hns3: Add handling of GRO Pkts not fully RX'ed in NAPI poll + - net: hns3: Add support for ethtool -K to enable/disable HW GRO + - net: hns3: Add skb chain when num of RX buf exceeds MAX_SKB_FRAGS + - net: hns3: Adds GRO params to SKB for the stack + - scsi: hisi_sas: use dma_set_mask_and_coherent + - scsi: hisi_sas: Create separate host attributes per HBA + - scsi: hisi_sas: Add support for interrupt converge for v3 hw + - scsi: hisi_sas: Add support for interrupt coalescing for v3 hw + - scsi: hisi_sas: Relocate some codes to avoid an unused check + - scsi: hisi_sas: change the time of SAS SSP connection + - net: hns3: fix spelling mistake "failded" -> "failed" + - net: hns3: Support two vlan header when setting mtu + - net: hns3: Refactor mac mtu setting related functions + - net: hns3: Add vport alive state checking support + - net: hns3: Add mtu setting support for vf + - net: hns3: up/down netdev in hclge module when setting mtu + - net: hns3: add common validation in hclge_dcb + - net: hns3: Add debugfs framework registration + - net: hns3: Add "queue info" query function + - net: hns3: Add "FD flow table" info query function + - net: hns3: Add "tc config" info query function + - net: hns3: Add "tm config" info query function + - net: hns3: Add "qos pause" config info query function + - net: hns3: Add "qos prio map" info query function + - net: hns3: Add "qos buffer" config info query function + - net: hns3: Support "ethtool -d" for HNS3 VF driver + - net: hns3: Adds support to dump(using ethool-d) PCIe regs in HNS3 PF driver + - net: hns3: remove existing process error functions and reorder hw_blk table + - net: hns3: rename enable error interrupt functions + - net: hns3: re-enable error interrupts on hw reset + - net: hns3: deletes unnecessary settings of the descriptor data + - net: hns3: rename process_hw_error function + - net: hns3: add optimization in the hclge_hw_error_set_state + - net: hns3: add handling of hw ras errors using new set of commands + - net: hns3: deleted logging 1 bit errors + - net: hns3: add handling of hw errors reported through MSIX + - net: hns3: add handling of hw errors of MAC + - net: hns3: handle hw errors of PPP PF + - net: hns3: handle hw errors of PPU(RCB) + - net: hns3: handle hw errors of SSU + - net: hns3: add handling of RDMA RAS errors + - net: hns3: fix spelling mistake "offser" -> "offset" + - scsi: hisi_sas: Fix warnings detected by sparse + - scsi: hisi_sas: Relocate some code to reduce complexity + - scsi: hisi_sas: Make sg_tablesize consistent value + - hns3: prevent building without CONFIG_INET + - net: hns3: Add "bd info" query function + - net: hns3: Add "manager table" information query function + - net: hns3: Add "status register" information query function + - net: hns3: Add "dcb register" status information query function + - net: hns3: Add "queue map" information query function + - net: hns3: Add "tm map" status information query function + - net: hns3: fix error handling int the hns3_get_vector_ring_chain + - net: hns3: uninitialize pci in the hclgevf_uninit + - net: hns3: fix napi_disable not return problem + - net: hns3: update some variables while hclge_reset()/hclgevf_reset() done + - net: hns3: remove unnecessary configuration recapture while resetting + - net: hns3: fix incomplete uninitialization of IRQ in the + hns3_nic_uninit_vector_data() + - net: hns3: update coalesce param per second + - net: hns3: remove 1000M/half support of phy + - net: hns3: synchronize speed and duplex from phy when phy link up + - net: hns3: getting tx and dv buffer size through firmware + - net: hns3: aligning buffer size in SSU to 256 bytes + - net: hns3: fix a SSU buffer checking bug + - scsi: hisi_sas: Add support for DIF feature for v2 hw + - net: hns3: refine the handle for hns3_nic_net_open/stop() + - net: hns3: change default tc state to close + - net: hns3: fix a bug caused by udelay + - net: hns3: add max vector number check for pf + - net: hns3: reset tqp while doing DOWN operation + - net: hns3: fix vf id check issue when add flow director rule + - net: hns3: don't restore rules when flow director is disabled + - net: hns3: fix the descriptor index when get rss type + - net: hns3: remove redundant variable initialization + - net: hns3: call hns3_nic_net_open() while doing HNAE3_UP_CLIENT + * Cosmic update: 4.18.20 upstream stable release (LP: #1810821) + - powerpc/traps: restore recoverability of machine_check interrupts + - powerpc/64/module: REL32 relocation range check + - powerpc/mm: Fix page table dump to work on Radix + - powerpc/mm: fix always true/false warning in slice.c + - drm/amd/display: fix bug of accessing invalid memory + - Input: wm97xx-ts - fix exit path + - powerpc/Makefile: Fix PPC_BOOK3S_64 ASFLAGS + - powerpc/eeh: Fix possible null deref in eeh_dump_dev_log() + - tty: check name length in tty_find_polling_driver() + - tracing/kprobes: Check the probe on unloaded module correctly + - drm/amdgpu/powerplay: fix missing break in switch statements + - ARM: imx_v6_v7_defconfig: Select CONFIG_TMPFS_POSIX_ACL + - powerpc/nohash: fix undefined behaviour when testing page size support + - powerpc/mm: Don't report hugepage tables as memory leaks when using kmemleak + - drm/omap: fix memory barrier bug in DMM driver + - drm/amd/display: fix gamma not being applied + - drm/hisilicon: hibmc: Do not carry error code in HiBMC framebuffer pointer + - media: pci: cx23885: handle adding to list failure + - media: coda: don't overwrite h.264 profile_idc on decoder instance + - MIPS: kexec: Mark CPU offline before disabling local IRQ + - powerpc/boot: Ensure _zimage_start is a weak symbol + - powerpc/memtrace: Remove memory in chunks + - MIPS/PCI: Call pcie_bus_configure_settings() to set MPS/MRRS + - sc16is7xx: Fix for multi-channel stall + - media: tvp5150: fix width alignment during set_selection() + - powerpc/selftests: Wait all threads to join + - staging:iio:ad7606: fix voltage scales + - drm: rcar-du: Update Gen3 output limitations + - drm/amdgpu: Fix SDMA TO after GPU reset v3 + - staging: most: video: fix registration of an empty comp core_component + - 9p locks: fix glock.client_id leak in do_lock + - udf: Prevent write-unsupported filesystem to be remounted read-write + - ARM: dts: imx6ull: keep IMX6UL_ prefix for signals on both i.MX6UL and + i.MX6ULL + - 9p: clear dangling pointers in p9stat_free + - ovl: fix error handling in ovl_verify_set_fh() + - ovl: check whiteout in ovl_create_over_whiteout() + - serial: sh-sci: Fix could not remove dev_attr_rx_fifo_timeout + - scsi: qla2xxx: Fix incorrect port speed being set for FC adapters + - scsi: qla2xxx: Fix process response queue for ISP26XX and above + - scsi: qla2xxx: Remove stale debug trace message from tcm_qla2xxx + - scsi: qla2xxx: shutdown chip if reset fail + - scsi: qla2xxx: Fix duplicate switch database entries + - scsi: qla2xxx: Fix driver hang when FC-NVMe LUNs are configured + - fuse: Fix use-after-free in fuse_dev_do_read() + - fuse: Fix use-after-free in fuse_dev_do_write() + - fuse: fix blocked_waitq wakeup + - fuse: set FR_SENT while locked + - ovl: fix recursive oi->lock in ovl_link() + - scsi: qla2xxx: Fix re-using LoopID when handle is in use + - scsi: qla2xxx: Fix NVMe session hang on unload + - arm64: dts: stratix10: Support Ethernet Jumbo frame + - arm64: dts: stratix10: fix multicast filtering + - clk: meson-gxbb: set fclk_div3 as CLK_IS_CRITICAL + - clk: meson: axg: mark fdiv2 and fdiv3 as critical + - zram: close udev startup race condition as default groups + - MIPS: Loongson-3: Fix CPU UART irq delivery problem + - MIPS: Loongson-3: Fix BRIDGE irq delivery problem + - xtensa: add NOTES section to the linker script + - xtensa: make sure bFLT stack is 16 byte aligned + - xtensa: fix boot parameters address translation + - um: Drop own definition of PTRACE_SYSEMU/_SINGLESTEP + - clk: s2mps11: Fix matching when built as module and DT node contains + compatible + - clk: at91: Fix division by zero in PLL recalc_rate() + - clk: sunxi-ng: h6: fix bus clocks' divider position + - clk: rockchip: fix wrong mmc sample phase shift for rk3328 + - clk: rockchip: Fix static checker warning in rockchip_ddrclk_get_parent call + - libceph: bump CEPH_MSG_MAX_DATA_LEN + - Revert "ceph: fix dentry leak in splice_dentry()" + - thermal: core: Fix use-after-free in thermal_cooling_device_destroy_sysfs + - mach64: fix display corruption on big endian machines + - mach64: fix image corruption due to reading accelerator registers + - acpi/nfit, x86/mce: Handle only uncorrectable machine checks + - acpi/nfit, x86/mce: Validate a MCE's address before using it + - acpi, nfit: Fix ARS overflow continuation + - reset: hisilicon: fix potential NULL pointer dereference + - vhost/scsi: truncate T10 PI iov_iter to prot_bytes + - scsi: qla2xxx: Initialize port speed to avoid setting lower speed + - SCSI: fix queue cleanup race before queue initialization is done + - Revert "powerpc/8xx: Use L1 entry APG to handle _PAGE_ACCESSED for + CONFIG_SWAP" + - soc: ti: QMSS: Fix usage of irq_set_affinity_hint + - ocfs2: fix a misuse a of brelse after failing ocfs2_check_dir_entry + - ocfs2: free up write context when direct IO failed + - mm: thp: relax __GFP_THISNODE for MADV_HUGEPAGE mappings + - memory_hotplug: cond_resched in __remove_pages + - netfilter: conntrack: fix calculation of next bucket number in early_drop + - ARM: 8809/1: proc-v7: fix Thumb annotation of cpu_v7_hvc_switch_mm + - bonding/802.3ad: fix link_failure_count tracking + - mtd: spi-nor: cadence-quadspi: Return error code in + cqspi_direct_read_execute() + - mtd: nand: Fix nanddev_neraseblocks() + - mtd: docg3: don't set conflicting BCH_CONST_PARAMS option + - hwmon: (core) Fix double-free in __hwmon_device_register() + - perf stat: Handle different PMU names with common prefix + - of, numa: Validate some distance map rules + - x86/cpu/vmware: Do not trace vmware_sched_clock() + - x86/hyper-v: Enable PIT shutdown quirk + - termios, tty/tty_baudrate.c: fix buffer overrun + - arch/alpha, termios: implement BOTHER, IBSHIFT and termios2 + - watchdog/core: Add missing prototypes for weak functions + - btrfs: fix pinned underflow after transaction aborted + - Btrfs: fix cur_offset in the error case for nocow + - Btrfs: fix infinite loop on inode eviction after deduplication of eof block + - Btrfs: fix data corruption due to cloning of eof block + - clockevents/drivers/i8253: Add support for PIT shutdown quirk + - ext4: add missing brelse() update_backups()'s error path + - ext4: add missing brelse() in set_flexbg_block_bitmap()'s error path + - ext4: add missing brelse() add_new_gdb_meta_bg()'s error path + - ext4: avoid potential extra brelse in setup_new_flex_group_blocks() + - ext4: missing !bh check in ext4_xattr_inode_write() + - ext4: fix possible inode leak in the retry loop of ext4_resize_fs() + - ext4: avoid buffer leak on shutdown in ext4_mark_iloc_dirty() + - ext4: avoid buffer leak in ext4_orphan_add() after prior errors + - ext4: fix missing cleanup if ext4_alloc_flex_bg_array() fails while resizing + - ext4: avoid possible double brelse() in add_new_gdb() on error path + - ext4: fix possible leak of sbi->s_group_desc_leak in error path + - ext4: fix possible leak of s_journal_flag_rwsem in error path + - ext4: fix buffer leak in ext4_xattr_get_block() on error path + - ext4: release bs.bh before re-using in ext4_xattr_block_find() + - ext4: fix buffer leak in ext4_xattr_move_to_block() on error path + - ext4: fix buffer leak in ext4_expand_extra_isize_ea() on error path + - ext4: fix buffer leak in __ext4_read_dirblock() on error path + - mount: Prevent MNT_DETACH from disconnecting locked mounts + - mnt: fix __detach_mounts infinite loop + - kdb: use correct pointer when 'btc' calls 'btt' + - kdb: print real address of pointers instead of hashed addresses + - sunrpc: correct the computation for page_ptr when truncating + - NFSv4: Don't exit the state manager without clearing + NFS4CLNT_MANAGER_RUNNING + - nfsd: COPY and CLONE operations require the saved filehandle to be set + - rtc: hctosys: Add missing range error reporting + - fuse: fix use-after-free in fuse_direct_IO() + - fuse: fix leaked notify reply + - selinux: check length properly in SCTP bind hook + - configfs: replace strncpy with memcpy + - gfs2: Put bitmap buffers in put_super + - gfs2: Fix metadata read-ahead during truncate (2) + - libata: blacklist SAMSUNG MZ7TD256HAFV-000L9 SSD + - crypto: user - fix leaking uninitialized memory to userspace + - lib/ubsan.c: don't mark __ubsan_handle_builtin_unreachable as noreturn + - hugetlbfs: fix kernel BUG at fs/hugetlbfs/inode.c:444! + - mm/swapfile.c: use kvzalloc for swap_info_struct allocation + - efi/arm/libstub: Pack FDT after populating it + - drm/rockchip: Allow driver to be shutdown on reboot/kexec + - drm/msm: fix OF child-node lookup + - drm/amdgpu: Fix typo in amdgpu_vmid_mgr_init + - drm/amdgpu: add missing CHIP_HAINAN in amdgpu_ucode_get_load_type + - drm/nouveau: Check backlight IDs are >= 0, not > 0 + - drm/nouveau: Fix nv50_mstc->best_encoder() + - drm/amd/powerplay: Enable/Disable NBPSTATE on On/OFF of UVD + - drm/etnaviv: fix bogus fence complete check in timeout handler + - drm/dp_mst: Check if primary mstb is null + - drm: panel-orientation-quirks: Add quirk for Acer One 10 (S1003) + - drm/i915/dp: Link train Fallback on eDP only if fallback link BW can fit + panel's native mode + - drm/i915: Restore vblank interrupts earlier + - drm/i915: Don't unset intel_connector->mst_port + - drm/i915: Skip vcpi allocation for MSTB ports that are gone + - drm/i915: Large page offsets for pread/pwrite + - drm/i915/dp: Fix link retraining comment in intel_dp_long_pulse() + - drm/i915/dp: Restrict link retrain workaround to external monitors + - drm/i915/hdmi: Add HDMI 2.0 audio clock recovery N values + - drm/i915: Fix error handling for the NV12 fb dimensions check + - drm/i915: Fix ilk+ watermarks when disabling pipes + - drm/i915: Compare user's 64b GTT offset even on 32b + - drm/i915: Don't oops during modeset shutdown after lpe audio deinit + - drm/i915: Mark pin flags as u64 + - drm/i915/ringbuffer: Delay after EMIT_INVALIDATE for gen4/gen5 + - drm/i915/execlists: Force write serialisation into context image vs + execution + - drm/i915: Fix possible race in intel_dp_add_mst_connector() + - CONFIG_XEN_PV breaks xen_create_contiguous_region on ARM + - Linux 4.18.20 + * Cosmic update: 4.18.19 upstream stable release (LP: #1810820) + - mtd: rawnand: marvell: fix the IRQ handler complete() condition + - mtd: spi-nor: fsl-quadspi: fix read error for flash size larger than 16MB + - mtd: spi-nor: intel-spi: Add support for Intel Ice Lake SPI serial flash + - mtd: spi-nor: fsl-quadspi: Don't let -EINVAL on the bus + - spi: spi-mem: Adjust op len based on message/transfer size limitations + - spi: bcm-qspi: switch back to reading flash using smaller chunks + - spi: bcm-qspi: fix calculation of address length + - bcache: trace missed reading by cache_missed + - bcache: correct dirty data statistics + - bcache: fix miss key refill->end in writeback + - hwmon: (pmbus) Fix page count auto-detection. + - jffs2: free jffs2_sb_info through jffs2_kill_sb() + - block: setup bounce bio_sets properly + - block: don't deal with discard limit in blkdev_issue_discard() + - block: make sure discard bio is aligned with logical block size + - block: make sure writesame bio is aligned with logical block size + - cpufreq: conservative: Take limits changes into account properly + - dma-mapping: fix panic caused by passing empty cma command line argument + - pcmcia: Implement CLKRUN protocol disabling for Ricoh bridges + - ACPI / OSL: Use 'jiffies' as the time bassis for acpi_os_get_timer() + - ACPICA: AML Parser: fix parse loop to correctly skip erroneous extended + opcodes + - kprobes/x86: Use preempt_enable() in optimized_callback() + - mailbox: PCC: handle parse error + - acpi, nfit: Fix Address Range Scrub completion tracking + - parisc: Fix address in HPMC IVA + - parisc: Fix map_pages() to not overwrite existing pte entries + - parisc: Fix exported address of os_hpmc handler + - ALSA: hda - Add quirk for ASUS G751 laptop + - ALSA: hda - Fix headphone pin config for ASUS G751 + - ALSA: hda - Add mic quirk for the Lenovo G50-30 (17aa:3905) + - ALSA: hda: Add 2 more models to the power_save blacklist + - ALSA: ca0106: Disable IZD on SB0570 DAC to fix audio pops + - x86/speculation: Enable cross-hyperthread spectre v2 STIBP mitigation + - x86/xen: Fix boot loader version reported for PVH guests + - x86/corruption-check: Fix panic in memory_corruption_check() when boot + option without value is provided + - x86/mm/pat: Disable preemption around __flush_tlb_all() + - ARM: dts: exynos: Disable pull control for MAX8997 interrupts on Origen + - drm: fix use of freed memory in drm_mode_setcrtc + - bpf: do not blindly change rlimit in reuseport net selftest + - nvme: remove ns sibling before clearing path + - Revert "perf tools: Fix PMU term format max value calculation" + - selftests: usbip: add wait after attach and before checking port status + - xsk: do not call synchronize_net() under RCU read lock + - xfrm: policy: use hlist rcu variants on insert + - perf vendor events intel: Fix wrong filter_band* values for uncore events + - nfp: flower: fix pedit set actions for multiple partial masks + - nfp: flower: use offsets provided by pedit instead of index for ipv6 + - sched/fair: Fix the min_vruntime update logic in dequeue_entity() + - perf evsel: Store ids for events with their own cpus + perf_event__synthesize_event_update_cpus + - perf tools: Fix use of alternatives to find JDIR + - perf cpu_map: Align cpu map synthesized events properly. + - perf report: Don't crash on invalid inline debug information + - x86/fpu: Remove second definition of fpu in __fpu__restore_sig() + - net: qla3xxx: Remove overflowing shift statement + - drm: Get ref on CRTC commit object when waiting for flip_done + - selftests: ftrace: Add synthetic event syntax testcase + - i2c: rcar: cleanup DMA for all kinds of failure + - net: socionext: Reset tx queue in ndo_stop + - locking/lockdep: Fix debug_locks off performance problem + - netfilter: xt_nat: fix DNAT target for shifted portmap ranges + - ataflop: fix error handling during setup + - swim: fix cleanup on setup error + - arm64: cpufeature: ctr: Fix cpu capability check for late CPUs + - nfp: devlink port split support for 1x100G CXP NIC + - tun: Consistently configure generic netdev params via rtnetlink + - s390/sthyi: Fix machine name validity indication + - hwmon: (pwm-fan) Set fan speed to 0 on suspend + - lightnvm: pblk: fix race on sysfs line state + - lightnvm: pblk: fix two sleep-in-atomic-context bugs + - lightnvm: pblk: fix race condition on metadata I/O + - spi: spi-ep93xx: Use dma_data_direction for ep93xx_spi_dma_{finish,prepare} + - perf tools: Free temporary 'sys' string in read_event_files() + - perf tools: Cleanup trace-event-info 'tdata' leak + - perf strbuf: Match va_{add,copy} with va_end + - cpupower: Fix coredump on VMWare + - bcache: Populate writeback_rate_minimum attribute + - mmc: sdhci-pci-o2micro: Add quirk for O2 Micro dev 0x8620 rev 0x01 + - sdhci: acpi: add free_slot callback + - mtd: rawnand: denali: set SPARE_AREA_SKIP_BYTES register to 8 if unset + - iwlwifi: pcie: avoid empty free RB queue + - iwlwifi: mvm: clear HW_RESTART_REQUESTED when stopping the interface + - iwlwifi: mvm: check for n_profiles validity in EWRD ACPI + - x86/olpc: Indicate that legacy PC XO-1 platform should not register RTC + - ACPI/PPTT: Handle architecturally unknown cache types + - ACPI / PM: LPIT: Register sysfs attributes based on FADT + - ACPI / processor: Fix the return value of acpi_processor_ids_walk() + - cpufreq: dt: Try freeing static OPPs only if we have added them + - x86/intel_rdt: Show missing resctrl mount options + - mtd: rawnand: atmel: Fix potential NULL pointer dereference + - signal: Introduce COMPAT_SIGMINSTKSZ for use in compat_sys_sigaltstack + - ice: fix changing of ring descriptor size (ethtool -G) + - ice: update fw version check logic + - net: hns3: Fix for packet buffer setting bug + - Bluetooth: btbcm: Add entry for BCM4335C0 UART bluetooth + - x86: boot: Fix EFI stub alignment + - net: hns3: Add nic state check before calling netif_tx_wake_queue + - net: hns3: Fix ets validate issue + - pinctrl: sunxi: fix 'pctrl->functions' allocation in + sunxi_pinctrl_build_state + - pinctrl: qcom: spmi-mpp: Fix err handling of pmic_mpp_set_mux + - brcmfmac: fix for proper support of 160MHz bandwidth + - net: hns3: Check hdev state when getting link status + - net: hns3: Set STATE_DOWN bit of hdev state when stopping net + - net: phy: phylink: ensure the carrier is off when starting phylink + - block, bfq: correctly charge and reset entity service in all cases + - arm64: entry: Allow handling of undefined instructions from EL1 + - kprobes: Return error if we fail to reuse kprobe instead of BUG_ON() + - spi: gpio: No MISO does not imply no RX + - ACPI / LPSS: Add alternative ACPI HIDs for Cherry Trail DMA controllers + - pinctrl: qcom: spmi-mpp: Fix drive strength setting + - bpf/verifier: fix verifier instability + - failover: Add missing check to validate 'slave_dev' in + net_failover_slave_unregister + - perf tests: Fix record+probe_libc_inet_pton.sh without ping's debuginfo + - pinctrl: spmi-mpp: Fix pmic_mpp_config_get() to be compliant + - pinctrl: ssbi-gpio: Fix pm8xxx_pin_config_get() to be compliant + - net: hns3: Preserve vlan 0 in hardware table + - net: hns3: Fix ping exited problem when doing lp selftest + - net: hns3: Fix for vf vlan delete failed problem + - net: dsa: mv88e6xxx: Fix writing to a PHY page. + - rsi: fix memory alignment issue in ARM32 platforms + - iwlwifi: mvm: fix BAR seq ctrl reporting + - gpio: brcmstb: allow 0 width GPIO banks + - ixgbe: disallow IPsec Tx offload when in SR-IOV mode + - ixgbevf: VF2VF TCP RSS + - ath10k: schedule hardware restart if WMI command times out + - libata: Apply NOLPM quirk for SAMSUNG MZ7TD256HAFV-000L9 + - thermal: rcar_thermal: Prevent doing work after unbind + - thermal: da9062/61: Prevent hardware access during system suspend + - cgroup, netclassid: add a preemption point to write_classid + - net: stmmac: dwmac-sun8i: fix OF child-node lookup + - f2fs: fix to account IO correctly for cgroup writeback + - MD: Memory leak when flush bio size is zero + - md: fix memleak for mempool + - scsi: esp_scsi: Track residual for PIO transfers + - scsi: ufs: Schedule clk gating work on correct queue + - UAPI: ndctl: Fix g++-unsupported initialisation in headers + - KVM: nVMX: Clear reserved bits of #DB exit qualification + - scsi: megaraid_sas: fix a missing-check bug + - RDMA/core: Do not expose unsupported counters + - IB/ipoib: Clear IPCB before icmp_send + - RDMA/bnxt_re: Avoid accessing nq->bar_reg_iomem in failure case + - RDMA/bnxt_re: Fix recursive lock warning in debug kernel + - usb: host: ohci-at91: fix request of irq for optional gpio + - PCI: mediatek: Fix mtk_pcie_find_port() endpoint/port matching logic + - PCI: cadence: Use AXI region 0 to signal interrupts from EP + - usb: typec: tcpm: Report back negotiated PPS voltage and current + - tpm: suppress transmit cmd error logs when TPM 1.2 is disabled/deactivated + - f2fs: clear PageError on the read path + - Drivers: hv: vmbus: Use cpumask_var_t for on-stack cpu mask + - VMCI: Resource wildcard match fixed + - PCI / ACPI: Enable wake automatically for power managed bridges + - xprtrdma: Reset credit grant properly after a disconnect + - irqchip/pdc: Setup all edge interrupts as rising edge at GIC + - usb: dwc2: fix a race with external vbus supply + - usb: gadget: udc: atmel: handle at91sam9rl PMC + - ext4: fix argument checking in EXT4_IOC_MOVE_EXT + - MD: fix invalid stored role for a disk + - nvmem: check the return value of nvmem_add_cells() + - xhci: Avoid USB autosuspend when resuming USB2 ports. + - f2fs: fix to recover inode's crtime during POR + - f2fs: fix to recover inode's i_flags during POR + - PCI/MSI: Warn and return error if driver enables MSI/MSI-X twice + - coresight: etb10: Fix handling of perf mode + - PCI: dwc: pci-dra7xx: Enable errata i870 for both EP and RC mode + - crypto: caam - fix implicit casts in endianness helpers + - usb: chipidea: Prevent unbalanced IRQ disable + - Smack: ptrace capability use fixes + - driver/dma/ioat: Call del_timer_sync() without holding prep_lock + - firmware: coreboot: Unmap ioregion after device population + - IB/mlx5: Allow transition of DCI QP to reset + - uio: ensure class is registered before devices + - scsi: lpfc: Correct soft lockup when running mds diagnostics + - scsi: lpfc: Correct race with abort on completion path + - f2fs: avoid sleeping under spin_lock + - f2fs: report error if quota off error during umount + - signal: Always deliver the kernel's SIGKILL and SIGSTOP to a pid namespace + init + - mfd: menelaus: Fix possible race condition and leak + - dmaengine: dma-jz4780: Return error if not probed from DT + - IB/rxe: fix for duplicate request processing and ack psns + - ALSA: hda: Check the non-cached stream buffers more explicitly + - cpupower: Fix AMD Family 0x17 msr_pstate size + - Revert "f2fs: fix to clear PG_checked flag in set_page_dirty()" + - f2fs: fix to recover cold bit of inode block during POR + - f2fs: fix to account IO correctly + - OPP: Free OPP table properly on performance state irregularities + - arm: dts: exynos: Add missing cooling device properties for CPUs + - ARM: dts: exynos: Convert exynos5250.dtsi to opp-v2 bindings + - ARM: dts: exynos: Mark 1 GHz CPU OPP as suspend OPP on Exynos5250 + - xen-swiotlb: use actually allocated size on check physical continuous + - tpm: Restore functionality to xen vtpm driver. + - xen/blkfront: avoid NULL blkfront_info dereference on device removal + - xen/balloon: Support xend-based toolstack + - xen: fix race in xen_qlock_wait() + - xen: make xen_qlock_wait() nestable + - xen/pvh: increase early stack size + - xen/pvh: don't try to unplug emulated devices + - libertas: don't set URB_ZERO_PACKET on IN USB transfer + - usbip:vudc: BUG kmalloc-2048 (Not tainted): Poison overwritten + - usb: typec: tcpm: Fix APDO PPS order checking to be based on voltage + - usb: gadget: udc: renesas_usb3: Fix b-device mode for "workaround" + - mt76: mt76x2: fix multi-interface beacon configuration + - iwlwifi: mvm: check return value of rs_rate_from_ucode_rate() + - net/ipv4: defensive cipso option parsing + - dmaengine: ppc4xx: fix off-by-one build failure + - libnvdimm: Hold reference on parent while scheduling async init + - libnvdimm, region: Fail badblocks listing for inactive regions + - libnvdimm, pmem: Fix badblocks population for 'raw' namespaces + - ASoC: intel: skylake: Add missing break in skl_tplg_get_token() + - ASoC: sta32x: set ->component pointer in private struct + - IB/mlx5: Fix MR cache initialization + - IB/rxe: Revise the ib_wr_opcode enum + - jbd2: fix use after free in jbd2_log_do_checkpoint() + - gfs2_meta: ->mount() can get NULL dev_name + - ext4: fix EXT4_IOC_SWAP_BOOT + - ext4: initialize retries variable in ext4_da_write_inline_data_begin() + - ext4: fix setattr project check in fssetxattr ioctl + - ext4: propagate error from dquot_initialize() in EXT4_IOC_FSSETXATTR + - ext4: fix use-after-free race in ext4_remount()'s error path + - selinux: fix mounting of cgroup2 under older policies + - HID: wacom: Work around HID descriptor bug in DTK-2451 and DTH-2452 + - HID: hiddev: fix potential Spectre v1 + - EDAC, amd64: Add Family 17h, models 10h-2fh support + - EDAC, {i7core,sb,skx}_edac: Fix uncorrected error counting + - EDAC, skx_edac: Fix logical channel intermediate decoding + - ARM: dts: dra7: Fix up unaligned access setting for PCIe EP + - PCI/ASPM: Fix link_state teardown on device removal + - PCI: Add Device IDs for Intel GPU "spurious interrupt" quirk + - PCI: vmd: White list for fast interrupt handlers + - signal/GenWQE: Fix sending of SIGKILL + - signal: Guard against negative signal numbers in copy_siginfo_from_user32 + - crypto: lrw - Fix out-of bounds access on counter overflow + - crypto: tcrypt - fix ghash-generic speed test + - crypto: aesni - don't use GFP_ATOMIC allocation if the request doesn't cross + a page in gcm + - crypto: morus/generic - fix for big endian systems + - crypto: aegis/generic - fix for big endian systems + - [config] remove deprecated CRYPTO_SPECK, CRYPTO_SPECK_NEON + - crypto: speck - remove Speck + - mm: /proc/pid/smaps_rollup: fix NULL pointer deref in smaps_pte_range() + - ima: fix showing large 'violations' or 'runtime_measurements_count' + - hugetlbfs: dirty pages as they are added to pagecache + - mm/rmap: map_pte() was not handling private ZONE_DEVICE page properly + - mm/hmm: fix race between hmm_mirror_unregister() and mmu_notifier callback + - KVM: arm/arm64: Ensure only THP is candidate for adjustment + - KVM: arm64: Fix caching of host MDCR_EL2 value + - kbuild: fix kernel/bounds.c 'W=1' warning + - iio: ad5064: Fix regulator handling + - iio: adc: imx25-gcq: Fix leak of device_node in mx25_gcq_setup_cfgs() + - iio: adc: at91: fix acking DRDY irq on simple conversions + - iio: adc: at91: fix wrong channel number in triggered buffer mode + - w1: omap-hdq: fix missing bus unregister at removal + - smb3: allow stats which track session and share reconnects to be reset + - smb3: do not attempt cifs operation in smb3 query info error path + - smb3: on kerberos mount if server doesn't specify auth type use krb5 + - printk: Fix panic caused by passing log_buf_len to command line + - genirq: Fix race on spurious interrupt detection + - NFC: nfcmrvl_uart: fix OF child-node lookup + - NFSv4.1: Fix the r/wsize checking + - nfs: Fix a missed page unlock after pg_doio() + - nfsd: correctly decrement odstate refcount in error path + - nfsd: Fix an Oops in free_session() + - lockd: fix access beyond unterminated strings in prints + - dm ioctl: harden copy_params()'s copy_from_user() from malicious users + - dm zoned: fix metadata block ref counting + - dm zoned: fix various dmz_get_mblock() issues + - media: ov7670: make "xclk" clock optional + - fsnotify: Fix busy inodes during unmount + - powerpc/msi: Fix compile error on mpc83xx + - powerpc/tm: Fix HFSCR bit for no suspend case + - powerpc/64s/hash: Do not use PPC_INVALIDATE_ERAT on CPUs before POWER9 + - MIPS: memset: Fix CPU_DADDI_WORKAROUNDS `small_fixup' regression + - MIPS: OCTEON: fix out of bounds array access on CN68XX + - rtc: ds1307: fix ds1339 wakealarm support + - rtc: cmos: Fix non-ACPI undefined reference to `hpet_rtc_interrupt' + - rtc: cmos: Remove the `use_acpi_alarm' module parameter for !ACPI + - power: supply: twl4030-charger: fix OF sibling-node lookup + - ocxl: Fix access to the AFU Descriptor Data + - iommu/arm-smmu: Ensure that page-table updates are visible before TLBI + - TC: Set DMA masks for devices + - net: bcmgenet: fix OF child-node lookup + - media: v4l2-tpg: fix kernel oops when enabling HFLIP and OSD + - Revert "media: dvbsky: use just one mutex for serializing device R/W ops" + - kgdboc: Passing ekgdboc to command line causes panic + - media: cec: make cec_get_edid_spa_location() an inline function + - media: cec: integrate cec_validate_phys_addr() in cec-api.c + - xen: fix xen_qlock_wait() + - xen: remove size limit of privcmd-buf mapping interface + - xen-blkfront: fix kernel panic with negotiate_mq error path + - media: cec: add new tx/rx status bits to detect aborts/timeouts + - media: cec: fix the Signal Free Time calculation + - media: cec: forgot to cancel delayed work + - media: em28xx: use a default format if TRY_FMT fails + - media: tvp5150: avoid going past array on v4l2_querymenu() + - media: em28xx: fix input name for Terratec AV 350 + - media: em28xx: make v4l2-compliance happier by starting sequence on zero + - media: em28xx: fix handler for vidioc_s_input() + - media: adv7604: when the EDID is cleared, unconfigure CEC as well + - media: adv7842: when the EDID is cleared, unconfigure CEC as well + - drm/mediatek: fix OF sibling-node lookup + - media: media colorspaces*.rst: rename AdobeRGB to opRGB + - media: replace ADOBERGB by OPRGB + - media: hdmi.h: rename ADOBE_RGB to OPRGB and ADOBE_YCC to OPYCC + - arm64: lse: remove -fcall-used-x0 flag + - rpmsg: smd: fix memory leak on channel create + - Cramfs: fix abad comparison when wrap-arounds occur + - ARM: dts: socfpga: Fix SDRAM node address for Arria10 + - arm64: dts: stratix10: Correct System Manager register size + - soc: qcom: rmtfs-mem: Validate that scm is available + - soc/tegra: pmc: Fix child-node lookup + - selftests/ftrace: Fix synthetic event test to delete event correctly + - selftests/powerpc: Fix ptrace tm failure + - tracing: Return -ENOENT if there is no target synthetic event + - btrfs: qgroup: Avoid calling qgroup functions if qgroup is not enabled + - btrfs: Handle owner mismatch gracefully when walking up tree + - btrfs: locking: Add extra check in btrfs_init_new_buffer() to avoid deadlock + - btrfs: fix error handling in free_log_tree + - btrfs: fix error handling in btrfs_dev_replace_start + - btrfs: Enhance btrfs_trim_fs function to handle error better + - btrfs: Ensure btrfs_trim_fs can trim the whole filesystem + - btrfs: iterate all devices during trim, instead of fs_devices::alloc_list + - btrfs: don't attempt to trim devices that don't support it + - btrfs: keep trim from interfering with transaction commits + - btrfs: wait on caching when putting the bg cache + - Btrfs: don't clean dirty pages during buffered writes + - btrfs: release metadata before running delayed refs + - btrfs: protect space cache inode alloc with GFP_NOFS + - btrfs: reset max_extent_size on clear in a bitmap + - btrfs: make sure we create all new block groups + - Btrfs: fix warning when replaying log after fsync of a tmpfile + - Btrfs: fix wrong dentries after fsync of file that got its parent replaced + - btrfs: qgroup: Dirty all qgroups before rescan + - Btrfs: fix null pointer dereference on compressed write path error + - Btrfs: fix assertion on fsync of regular file when using no-holes feature + - Btrfs: fix deadlock when writing out free space caches + - btrfs: reset max_extent_size properly + - btrfs: set max_extent_size properly + - btrfs: don't use ctl->free_space for max_extent_size + - btrfs: only free reserved extent if we didn't insert it + - btrfs: fix insert_reserved error handling + - btrfs: don't run delayed_iputs in commit + - btrfs: move the dio_sem higher up the callchain + - Btrfs: fix use-after-free during inode eviction + - Btrfs: fix use-after-free when dumping free space + - net: sched: Remove TCA_OPTIONS from policy + - bpf: wait for running BPF programs when updating map-in-map + - MD: fix invalid stored role for a disk - try2 + - Linux 4.18.19 + * Cosmic update: 4.18.18 upstream stable release (LP: #1810818) + - eeprom: at24: Add support for address-width property + - vfs: swap names of {do,vfs}_clone_file_range() + - bpf: fix partial copy of map_ptr when dst is scalar + - gpio: mxs: Get rid of external API call + - clk: sunxi-ng: sun4i: Set VCO and PLL bias current to lowest setting + - fscache: Fix incomplete initialisation of inline key space + - cachefiles: fix the race between cachefiles_bury_object() and rmdir(2) + - fscache: Fix out of bound read in long cookie keys + - ptp: fix Spectre v1 vulnerability + - drm/edid: VSDB yCBCr420 Deep Color mode bit definitions + - drm: fb-helper: Reject all pixel format changing requests + - RDMA/ucma: Fix Spectre v1 vulnerability + - IB/ucm: Fix Spectre v1 vulnerability + - cdc-acm: do not reset notification buffer index upon urb unlinking + - cdc-acm: correct counting of UART states in serial state notification + - cdc-acm: fix race between reset and control messaging + - usb: usbip: Fix BUG: KASAN: slab-out-of-bounds in vhci_hub_control() + - usb: gadget: storage: Fix Spectre v1 vulnerability + - usb: roles: intel_xhci: Fix Unbalanced pm_runtime_enable + - usb: xhci: pci: Enable Intel USB role mux on Apollo Lake platforms + - USB: fix the usbfs flag sanitization for control transfers + - tracing: Fix synthetic event to accept unsigned modifier + - tracing: Fix synthetic event to allow semicolon at end + - Input: elan_i2c - add ACPI ID for Lenovo IdeaPad 330-15IGM + - drm/sun4i: Fix an ulong overflow in the dotclock driver + - sched/fair: Fix throttle_list starvation with low CFS quota + - x86/tsc: Force inlining of cyc2ns bits + - x86, hibernate: Fix nosave_regions setup for hibernation + - x86/percpu: Fix this_cpu_read() + - x86/time: Correct the attribute on jiffies' definition + - x86/swiotlb: Enable swiotlb for > 4GiG RAM on 32-bit kernels + - x86/fpu: Fix i486 + no387 boot crash by only saving FPU registers on context + switch if there is an FPU + - Linux 4.18.18 + * Colour banding in HP Pavilion 15-n233sl integrated display (LP: #1794387) // + Cosmic update: 4.18.18 upstream stable release (LP: #1810818) + - drm/edid: Add 6 bpc quirk for BOE panel in HP Pavilion 15-n233sl + * lineout jack can't work on a Dell machine (LP: #1810892) + - ALSA: hda/realtek - Support Dell headset mode for New AIO platform + * Ethernet[10ec:8136] doesn't work after S3 with kernel 4.15.0.43.64 + (LP: #1809847) + - r8169: Enable MSI-X on RTL8106e + - r8169: re-enable MSI-X on RTL8168g + * Support new Realtek ethernet chips (LP: #1811055) + - r8169: Add support for new Realtek Ethernet + * PC SN720 NVMe WDC 256GB consumes more power in S2Idle than during long idle + (LP: #1805775) + - SAUCE: pci/nvme: prevent WDC PC SN720 NVMe from entering D3 and being + disabled + * Power consumption during s2idle is higher than long idle (Intel SSDPEKKF) + (LP: #1804588) + - SAUCE: pci: prevent Intel NVMe SSDPEKKF from entering D3 + - SAUCE: nvme: add quirk to not call disable function when suspending + * mpt3sas - driver using the wrong register to update a queue index in FW + (LP: #1810781) + - scsi: mpt3sas: As per MPI-spec, use combined reply queue for SAS3.5 + controllers when HBA supports more than 16 MSI-x vectors. + * Enable new Realtek card reader (LP: #1806335) + - USB: usb-storage: Add new IDs to ums-realtek + - SAUCE: (noup) USB: usb-storage: Make MMC support optional on ums-realtek + * The line-out on the Dell Dock station can't work (LP: #1806532) + - ALSA: usb-audio: Add vendor and product name for Dell WD19 Dock + * linux-buildinfo: pull out ABI information into its own package + (LP: #1806380) + - [Packaging] getabis -- handle all known package combinations + - [Packaging] getabis -- support parsing a simple version + * Fix Intel I210 doesn't work when ethernet cable gets plugged (LP: #1806818) + - igb: Fix an issue that PME is not enabled during runtime suspend + * Fix Terminus USB hub that may breaks connected USB devices after S3 + (LP: #1806850) + - USB: Wait for extra delay time after USB_PORT_FEAT_RESET for quirky hub + * Add support for 0cf3:535b QCA_ROME device (LP: #1807333) + - Bluetooth: btusb: Add support for 0cf3:535b QCA_ROME device + * the new Steam Controller driver breaks it on Steam (LP: #1798583) + - HID: steam: remove input device when a hid client is running. + * The mute led can't work anymore on the lenovo x1 carbon (LP: #1808465) + - ALSA: hda/realtek - Fix the mute LED regresion on Lenovo X1 Carbon + * click/pop noise in the headphone on several lenovo laptops (LP: #1805079) // + click/pop noise in the headphone on several lenovo laptops (LP: #1805079) + - ALSA: hda/realtek - fix the pop noise on headphone for lenovo laptops + * MAC address pass through on RTL8153-BND for docking station (LP: #1808729) + - r8152: Add support for MAC address pass through on RTL8153-BND + * powerpc test in ubuntu_kernel_selftest failed on Cosmic P8/P9 (LP: #1808318) + - selftests/powerpc: Fix Makefiles for headers_install change + * [Ubuntu] kernel: zcrypt: reinit ap queue state machine (LP: #1805414) + - s390/zcrypt: reinit ap queue state machine during device probe + * [UBUNTU] qeth: fix length check in SNMP processing (LP: #1805802) + - s390/qeth: fix length check in SNMP processing + * ASPEED server console output extremely slow after upgrade to 18.04 + (LP: #1808183) + - drm/ast: Remove existing framebuffers before loading driver + + -- Stefan Bader Mon, 14 Jan 2019 16:28:20 +0100 + +linux-azure (4.18.0-1007.7) cosmic; urgency=medium + + * linux-azure: 4.18.0-1007.7 -proposed tracker (LP: #1806422) + + * Packaging resync (LP: #1786013) + - [Packaging] update helper scripts + - [Packaging] update update.conf + + [ Ubuntu: 4.18.0-13.14 ] + + * linux: 4.18.0-13.14 -proposed tracker (LP: #1806409) + * linux-buildinfo: pull out ABI information into its own package + (LP: #1806380) + - [Packaging] limit preparation to linux-libc-dev in headers + - [Packaging] commonise debhelper invocation + - [Packaging] ABI -- accumulate abi information at the end of the build + - [Packaging] buildinfo -- add basic build information + - [Packaging] buildinfo -- add firmware information to the flavour ABI + - [Packaging] buildinfo -- add compiler information to the flavour ABI + - [Packaging] buildinfo -- add buildinfo support to getabis + * linux packages should own /usr/lib/linux/triggers (LP: #1770256) + - [Packaging] own /usr/lib/linux/triggers + * Regression: hinic performance degrades over time (LP: #1805248) + - Revert "net-next/hinic: add checksum offload and TSO support" + * CVE-2018-18710 + - cdrom: fix improper type cast, which can leat to information leak. + + -- Marcelo Henrique Cerri Thu, 06 Dec 2018 18:04:26 +0000 + +linux-azure (4.18.0-1006.6) cosmic; urgency=medium + + * linux-azure: 4.18.0-1006.6 -proposed tracker (LP: #1805244) + + * Accelerated networking (SR-IOV VF) broken in 18.10 daily (LP: #1794477) + - [Packaging] Move pci-hyperv and autofs4 back to linux-modules + + -- Marcelo Henrique Cerri Mon, 26 Nov 2018 21:48:04 +0000 + +linux-azure (4.18.0-1005.5) cosmic; urgency=medium + + * linux-azure: 4.18.0-1005.5 -proposed tracker (LP: #1802752) + + * [Hyper-V] Fix IRQ spreading on NVMe devices with lower numbers of channels + (LP: #1802358) + - SAUCE: genirq/affinity: Spread IRQs to all available NUMA nodes + - SAUCE: irq/matrix: Split out the CPU selection code into a helper + - SAUCE: irq/matrix: Spread managed interrupts on allocation + - SAUCE: genirq/matrix: Improve target CPU selection for managed interrupts. + + [ Ubuntu: 4.18.0-12.13 ] + + * linux: 4.18.0-12.13 -proposed tracker (LP: #1802743) + * [FEAT] Guest-dedicated Crypto Adapters (LP: #1787405) + - s390/zcrypt: Add ZAPQ inline function. + - s390/zcrypt: Review inline assembler constraints. + - s390/zcrypt: Integrate ap_asm.h into include/asm/ap.h. + - s390/zcrypt: fix ap_instructions_available() returncodes + - KVM: s390: vsie: simulate VCPU SIE entry/exit + - KVM: s390: introduce and use KVM_REQ_VSIE_RESTART + - KVM: s390: refactor crypto initialization + - s390: vfio-ap: base implementation of VFIO AP device driver + - s390: vfio-ap: register matrix device with VFIO mdev framework + - s390: vfio-ap: sysfs interfaces to configure adapters + - s390: vfio-ap: sysfs interfaces to configure domains + - s390: vfio-ap: sysfs interfaces to configure control domains + - s390: vfio-ap: sysfs interface to view matrix mdev matrix + - KVM: s390: interface to clear CRYCB masks + - s390: vfio-ap: implement mediated device open callback + - s390: vfio-ap: implement VFIO_DEVICE_GET_INFO ioctl + - s390: vfio-ap: zeroize the AP queues + - s390: vfio-ap: implement VFIO_DEVICE_RESET ioctl + - KVM: s390: Clear Crypto Control Block when using vSIE + - KVM: s390: vsie: Do the CRYCB validation first + - KVM: s390: vsie: Make use of CRYCB FORMAT2 clear + - KVM: s390: vsie: Allow CRYCB FORMAT-2 + - KVM: s390: vsie: allow CRYCB FORMAT-1 + - KVM: s390: vsie: allow CRYCB FORMAT-0 + - KVM: s390: vsie: allow guest FORMAT-0 CRYCB on host FORMAT-1 + - KVM: s390: vsie: allow guest FORMAT-1 CRYCB on host FORMAT-2 + - KVM: s390: vsie: allow guest FORMAT-0 CRYCB on host FORMAT-2 + - KVM: s390: device attrs to enable/disable AP interpretation + - KVM: s390: CPU model support for AP virtualization + - s390: doc: detailed specifications for AP virtualization + - KVM: s390: fix locking for crypto setting error path + - KVM: s390: Tracing APCB changes + - s390: vfio-ap: setup APCB mask using KVM dedicated function + - [Config:] Enable CONFIG_S390_AP_IOMMU and set CONFIG_VFIO_AP to module. + * Bypass of mount visibility through userns + mount propagation (LP: #1789161) + - mount: Retest MNT_LOCKED in do_umount + - mount: Don't allow copying MNT_UNBINDABLE|MNT_LOCKED mounts + * CVE-2018-18955: nested user namespaces with more than five extents + incorrectly grant privileges over inode (LP: #1801924) // CVE-2018-18955 + - userns: also map extents in the reverse map to kernel IDs + * kdump fail due to an IRQ storm (LP: #1797990) + - SAUCE: x86/PCI: Export find_cap() to be used in early PCI code + - SAUCE: x86/quirks: Add parameter to clear MSIs early on boot + - SAUCE: x86/quirks: Scan all busses for early PCI quirks + * crash in ENA driver on removing an interface (LP: #1802341) + - SAUCE: net: ena: fix crash during ena_remove() + * Ubuntu 18.04.1 - [s390x] Kernel panic while stressing network bonding + (LP: #1797367) + - s390/qeth: reduce hard-coded access to ccw channels + - s390/qeth: sanitize strings in debug messages + * Add checksum offload and TSO support for HiNIC adapters (LP: #1800664) + - net-next/hinic: add checksum offload and TSO support + * smartpqi updates for ubuntu 18.04.2 (LP: #1798208) + - scsi: smartpqi: improve handling for sync requests + - scsi: smartpqi: improve error checking for sync requests + - scsi: smartpqi: add inspur advantech ids + - scsi: smartpqi: fix critical ARM issue reading PQI index registers + - scsi: smartpqi: bump driver version to 1.1.4-130 + * [GLK/CLX] Enhanced IBRS (LP: #1786139) + - x86/speculation: Remove SPECTRE_V2_IBRS in enum spectre_v2_mitigation + - x86/speculation: Support Enhanced IBRS on future CPUs + * Enable keyboard wakeup for S2Idle laptops (LP: #1798552) + - Input: i8042 - enable keyboard wakeups by default when s2idle is used + * Overlayfs in user namespace leaks directory content of inaccessible + directories (LP: #1793458) // CVE-2018-6559 + - SAUCE: overlayfs: ensure mounter privileges when reading directories + * Update ENA driver to version 2.0.1K (LP: #1798182) + - net: ena: remove ndo_poll_controller + - net: ena: fix auto casting to boolean + - net: ena: minor performance improvement + - net: ena: complete host info to match latest ENA spec + - net: ena: introduce Low Latency Queues data structures according to ENA spec + - net: ena: add functions for handling Low Latency Queues in ena_com + - net: ena: add functions for handling Low Latency Queues in ena_netdev + - net: ena: use CSUM_CHECKED device indication to report skb's checksum status + - net: ena: explicit casting and initialization, and clearer error handling + - net: ena: limit refill Rx threshold to 256 to avoid latency issues + - net: ena: change rx copybreak default to reduce kernel memory pressure + - net: ena: remove redundant parameter in ena_com_admin_init() + - net: ena: update driver version to 2.0.1 + - net: ena: fix indentations in ena_defs for better readability + - net: ena: Fix Kconfig dependency on X86 + - net: ena: enable Low Latency Queues + - net: ena: fix compilation error in xtensa architecture + * Cosmic update: 4.18.17 upstream stable release (LP: #1802119) + - xfrm: Validate address prefix lengths in the xfrm selector. + - xfrm6: call kfree_skb when skb is toobig + - xfrm: reset transport header back to network header after all input + transforms ahave been applied + - xfrm: reset crypto_done when iterating over multiple input xfrms + - mac80211: Always report TX status + - cfg80211: reg: Init wiphy_idx in regulatory_hint_core() + - mac80211: fix pending queue hang due to TX_DROP + - cfg80211: Address some corner cases in scan result channel updating + - mac80211: TDLS: fix skb queue/priority assignment + - mac80211: fix TX status reporting for ieee80211s + - ARM: 8799/1: mm: fix pci_ioremap_io() offset check + - xfrm: validate template mode + - drm/i2c: tda9950: fix timeout counter check + - drm/i2c: tda9950: set MAX_RETRIES for errors only + - netfilter: bridge: Don't sabotage nf_hook calls from an l3mdev + - netfilter: conntrack: get rid of double sizeof + - arm64: hugetlb: Fix handling of young ptes + - ARM: dts: BCM63xx: Fix incorrect interrupt specifiers + - net: macb: Clean 64b dma addresses if they are not detected + - soc: fsl: qbman: qman: avoid allocating from non existing gen_pool + - soc: fsl: qe: Fix copy/paste bug in ucc_get_tdm_sync_shift() + - nl80211: Fix possible Spectre-v1 for NL80211_TXRATE_HT + - mac80211_hwsim: fix locking when iterating radios during ns exit + - mac80211_hwsim: fix race in radio destruction from netlink notifier + - mac80211_hwsim: do not omit multicast announce of first added radio + - Bluetooth: SMP: fix crash in unpairing + - pxa168fb: prepare the clock + - qed: Avoid implicit enum conversion in qed_set_tunn_cls_info + - qed: Fix mask parameter in qed_vf_prep_tunn_req_tlv + - qed: Avoid implicit enum conversion in qed_roce_mode_to_flavor + - qed: Avoid constant logical operation warning in qed_vf_pf_acquire + - qed: Avoid implicit enum conversion in qed_iwarp_parse_rx_pkt + - nl80211: Fix possible Spectre-v1 for CQM RSSI thresholds + - scsi: qedi: Initialize the stats mutex lock + - rxrpc: Fix checks as to whether we should set up a new call + - rxrpc: Fix RTT gathering + - rxrpc: Fix transport sockopts to get IPv4 errors on an IPv6 socket + - rxrpc: Fix error distribution + - netfilter: nft_set_rbtree: add missing rb_erase() in GC routine + - netfilter: avoid erronous array bounds warning + - asix: Check for supported Wake-on-LAN modes + - ax88179_178a: Check for supported Wake-on-LAN modes + - lan78xx: Check for supported Wake-on-LAN modes + - sr9800: Check for supported Wake-on-LAN modes + - r8152: Check for supported Wake-on-LAN Modes + - smsc75xx: Check for Wake-on-LAN modes + - smsc95xx: Check for Wake-on-LAN modes + - cfg80211: fix use-after-free in reg_process_hint() + - KVM: nVMX: Do not expose MPX VMX controls when guest MPX disabled + - KVM: x86: Do not use kvm_x86_ops->mpx_supported() directly + - KVM: nVMX: Fix emulation of VM_ENTRY_LOAD_BNDCFGS + - perf/core: Fix perf_pmu_unregister() locking + - perf/x86/intel/uncore: Use boot_cpu_data.phys_proc_id instead of hardcorded + physical package ID 0 + - perf/ring_buffer: Prevent concurent ring buffer access + - perf/x86/intel/uncore: Fix PCI BDF address of M3UPI on SKX + - perf/x86/amd/uncore: Set ThreadMask and SliceMask for L3 Cache perf events + - thunderbolt: Do not handle ICM events after domain is stopped + - thunderbolt: Initialize after IOMMUs + - net: fec: fix rare tx timeout + - declance: Fix continuation with the adapter identification message + - RISCV: Fix end PFN for low memory + - Revert "serial: 8250_dw: Fix runtime PM handling" + - locking/ww_mutex: Fix runtime warning in the WW mutex selftest + - drm/amd/display: Signal hw_done() after waiting for flip_done() + - be2net: don't flip hw_features when VXLANs are added/deleted + - powerpc/numa: Skip onlining a offline node in kdump path + - net: cxgb3_main: fix a missing-check bug + - yam: fix a missing-check bug + - ocfs2: fix crash in ocfs2_duplicate_clusters_by_page() + - mm/gup_benchmark: fix unsigned comparison to zero in __gup_benchmark_ioctl + - mm/migrate.c: split only transparent huge pages when allocation fails + - x86/paravirt: Fix some warning messages + - clk: mvebu: armada-37xx-periph: Remove unused var num_parents + - libertas: call into generic suspend code before turning off power + - perf report: Don't try to map ip to invalid map + - tls: Fix improper revert in zerocopy_from_iter + - HID: i2c-hid: Remove RESEND_REPORT_DESCR quirk and its handling + - compiler.h: Allow arch-specific asm/compiler.h + - ARM: dts: imx53-qsb: disable 1.2GHz OPP + - perf python: Use -Wno-redundant-decls to build with PYTHON=python3 + - perf record: Use unmapped IP for inline callchain cursors + - rxrpc: Don't check RXRPC_CALL_TX_LAST after calling rxrpc_rotate_tx_window() + - rxrpc: Carry call state out of locked section in rxrpc_rotate_tx_window() + - rxrpc: Only take the rwind and mtu values from latest ACK + - rxrpc: Fix connection-level abort handling + - KVM: x86: support CONFIG_KVM_AMD=y with CONFIG_CRYPTO_DEV_CCP_DD=m + - net: ena: fix warning in rmmod caused by double iounmap + - net: ena: fix rare bug when failed restart/resume is followed by driver + removal + - net: ena: fix NULL dereference due to untimely napi initialization + - gpio: Assign gpio_irq_chip::parents to non-stack pointer + - IB/mlx5: Unmap DMA addr from HCA before IOMMU + - rds: RDS (tcp) hangs on sendto() to unresponding address + - selftests: rtnetlink.sh explicitly requires bash. + - selftests: udpgso_bench.sh explicitly requires bash + - vmlinux.lds.h: Fix incomplete .text.exit discards + - vmlinux.lds.h: Fix linker warnings about orphan .LPBX sections + - afs: Fix cell proc list + - fs/fat/fatent.c: add cond_resched() to fat_count_free_clusters() + - Revert "mm: slowly shrink slabs with a relatively small number of objects" + - Revert "netfilter: ipv6: nf_defrag: drop skb dst before queueing" + - perf tools: Disable parallelism for 'make clean' + - bridge: do not add port to router list when receives query with source + 0.0.0.0 + - ipv6: mcast: fix a use-after-free in inet6_mc_check + - ipv6/ndisc: Preserve IPv6 control buffer if protocol error handlers are + called + - ipv6: rate-limit probes for neighbourless routes + - llc: set SOCK_RCU_FREE in llc_sap_add_socket() + - net: fec: don't dump RX FIFO register when not available + - net/ipv6: Fix index counter for unicast addresses in in6_dump_addrs + - net/mlx5e: fix csum adjustments caused by RXFCS + - net: sched: gred: pass the right attribute to gred_change_table_def() + - net: socket: fix a missing-check bug + - net: stmmac: Fix stmmac_mdio_reset() when building stmmac as modules + - net: udp: fix handling of CHECKSUM_COMPLETE packets + - r8169: fix NAPI handling under high load + - rtnetlink: Disallow FDB configuration for non-Ethernet device + - sctp: fix race on sctp_id2asoc + - tipc: fix unsafe rcu locking when accessing publication list + - udp6: fix encap return code for resubmitting + - vhost: Fix Spectre V1 vulnerability + - virtio_net: avoid using netif_tx_disable() for serializing tx routine + - ethtool: fix a privilege escalation bug + - bonding: fix length of actor system + - ip6_tunnel: Fix encapsulation layout + - openvswitch: Fix push/pop ethernet validation + - net: ipmr: fix unresolved entry dumps + - net/mlx5: Take only bit 24-26 of wqe.pftype_wq for page fault type + - net: bcmgenet: Poll internal PHY for GENETv5 + - net: sched: Fix for duplicate class dump + - net/sched: cls_api: add missing validation of netlink attributes + - net/ipv6: Allow onlink routes to have a device mismatch if it is the default + route + - sctp: fix the data size calculation in sctp_data_size + - sctp: not free the new asoc when sctp_wait_for_connect returns err + - net/mlx5: Fix memory leak when setting fpga ipsec caps + - net/smc: fix smc_buf_unuse to use the lgr pointer + - mlxsw: spectrum_switchdev: Don't ignore deletions of learned MACs + - net: bpfilter: use get_pid_task instead of pid_task + - net: drop skb on failure in ip_check_defrag() + - net: fix pskb_trim_rcsum_slow() with odd trim offset + - mlxsw: core: Fix devlink unregister flow + - sparc64: Export __node_distance. + - sparc64: Make corrupted user stacks more debuggable. + - sparc64: Make proc_id signed. + - sparc64: Set %l4 properly on trap return after handling signals. + - sparc64: Wire up compat getpeername and getsockname. + - sparc: Fix single-pcr perf event counter management. + - sparc: Fix syscall fallback bugs in VDSO. + - sparc: Throttle perf events properly. + - net: bridge: remove ipv6 zero address check in mcast queries + - Linux 4.18.17 + * Cosmic update: 4.18.16 upstream stable release (LP: #1802100) + - soundwire: Fix duplicate stream state assignment + - soundwire: Fix incorrect exit after configuring stream + - soundwire: Fix acquiring bus lock twice during master release + - media: af9035: prevent buffer overflow on write + - spi: gpio: Fix copy-and-paste error + - batman-adv: Avoid probe ELP information leak + - batman-adv: Fix segfault when writing to throughput_override + - batman-adv: Fix segfault when writing to sysfs elp_interval + - batman-adv: Prevent duplicated gateway_node entry + - batman-adv: Prevent duplicated nc_node entry + - batman-adv: Prevent duplicated softif_vlan entry + - batman-adv: Prevent duplicated global TT entry + - batman-adv: Prevent duplicated tvlv handler + - batman-adv: fix backbone_gw refcount on queue_work() failure + - batman-adv: fix hardif_neigh refcount on queue_work() failure + - cxgb4: fix abort_req_rss6 struct + - clocksource/drivers/ti-32k: Add CLOCK_SOURCE_SUSPEND_NONSTOP flag for non- + am43 SoCs + - scsi: ibmvscsis: Fix a stringop-overflow warning + - scsi: ibmvscsis: Ensure partition name is properly NUL terminated + - intel_th: pci: Add Ice Lake PCH support + - Input: atakbd - fix Atari keymap + - Input: atakbd - fix Atari CapsLock behaviour + - selftests: pmtu: properly redirect stderr to /dev/null + - net: emac: fix fixed-link setup for the RTL8363SB switch + - ravb: do not write 1 to reserved bits + - net/smc: fix non-blocking connect problem + - net/smc: fix sizeof to int comparison + - qed: Fix populating the invalid stag value in multi function mode. + - qed: Do not add VLAN 0 tag to untagged frames in multi-function mode. + - PCI: dwc: Fix scheduling while atomic issues + - RDMA/uverbs: Fix validity check for modify QP + - scsi: lpfc: Synchronize access to remoteport via rport + - drm: mali-dp: Call drm_crtc_vblank_reset on device init + - scsi: ipr: System hung while dlpar adding primary ipr adapter back + - scsi: sd: don't crash the host on invalid commands + - bpf: sockmap only allow ESTABLISHED sock state + - bpf: sockmap, fix transition through disconnect without close + - bpf: test_maps, only support ESTABLISHED socks + - net/mlx4: Use cpumask_available for eq->affinity_mask + - clocksource/drivers/fttmr010: Fix set_next_event handler + - RDMA/bnxt_re: Fix system crash during RDMA resource initialization + - RISC-V: include linux/ftrace.h in asm-prototypes.h + - iommu/rockchip: Free irqs in shutdown handler + - pinctrl/amd: poll InterruptEnable bits in amd_gpio_irq_set_type + - powerpc/tm: Fix userspace r13 corruption + - powerpc/tm: Avoid possible userspace r1 corruption on reclaim + - powerpc/numa: Use associativity if VPHN hcall is successful + - iommu/amd: Return devid as alias for ACPI HID devices + - x86/boot: Fix kexec booting failure in the SEV bit detection code + - Revert "vfs: fix freeze protection in mnt_want_write_file() for overlayfs" + - mremap: properly flush TLB before releasing the page + - ARC: build: Get rid of toolchain check + - ARC: build: Don't set CROSS_COMPILE in arch's Makefile + - Linux 4.18.16 + * Cosmic update: 4.18.15 upstream stable release (LP: #1802082) + - bnxt_en: Fix TX timeout during netpoll. + - bnxt_en: free hwrm resources, if driver probe fails. + - bonding: avoid possible dead-lock + - ip6_tunnel: be careful when accessing the inner header + - ip_tunnel: be careful when accessing the inner header + - ipv4: fix use-after-free in ip_cmsg_recv_dstaddr() + - ipv6: take rcu lock in rawv6_send_hdrinc() + - net: dsa: bcm_sf2: Call setup during switch resume + - net: hns: fix for unmapping problem when SMMU is on + - net: ipv4: update fnhe_pmtu when first hop's MTU changes + - net/ipv6: Display all addresses in output of /proc/net/if_inet6 + - netlabel: check for IPV4MASK in addrinfo_get + - net: mvpp2: Extract the correct ethtype from the skb for tx csum offload + - net: mvpp2: fix a txq_done race condition + - net: sched: Add policy validation for tc attributes + - net: sched: cls_u32: fix hnode refcounting + - net: systemport: Fix wake-up interrupt race during resume + - net/usb: cancel pending work when unbinding smsc75xx + - qlcnic: fix Tx descriptor corruption on 82xx devices + - qmi_wwan: Added support for Gemalto's Cinterion ALASxx WWAN interface + - rtnl: limit IFLA_NUM_TX_QUEUES and IFLA_NUM_RX_QUEUES to 4096 + - sctp: update dst pmtu with the correct daddr + - team: Forbid enslaving team device to itself + - tipc: fix flow control accounting for implicit connect + - udp: Unbreak modules that rely on external __skb_recv_udp() availability + - net: qualcomm: rmnet: Skip processing loopback packets + - net: qualcomm: rmnet: Fix incorrect allocation flag in transmit + - net: qualcomm: rmnet: Fix incorrect allocation flag in receive path + - tun: remove unused parameters + - tun: initialize napi_mutex unconditionally + - tun: napi flags belong to tfile + - net: stmmac: Fixup the tail addr setting in xmit path + - net/packet: fix packet drop as of virtio gso + - net: dsa: bcm_sf2: Fix unbind ordering + - net/mlx5e: Set vlan masks for all offloaded TC rules + - net: aquantia: memory corruption on jumbo frames + - net/mlx5: E-Switch, Fix out of bound access when setting vport rate + - bonding: pass link-local packets to bonding master also. + - bonding: fix warning message + - net: stmmac: Rework coalesce timer and fix multi-queue races + - nfp: avoid soft lockups under control message storm + - bnxt_en: don't try to offload VLAN 'modify' action + - net-ethtool: ETHTOOL_GUFO did not and should not require CAP_NET_ADMIN + - net: phy: phylink: fix SFP interface autodetection + - sfp: fix oops with ethtool -m + - tcp/dccp: fix lockdep issue when SYN is backlogged + - inet: make sure to grab rcu_read_lock before using ireq->ireq_opt + - net: dsa: b53: Keep CPU port as tagged in all VLANs + - rtnetlink: Fail dump if target netnsid is invalid + - bnxt_en: Fix VNIC reservations on the PF. + - net: ipv4: don't let PMTU updates increase route MTU + - net/mlx5: Check for SQ and not RQ state when modifying hairpin SQ + - bnxt_en: Fix enables field in HWRM_QUEUE_COS2BW_CFG request + - bnxt_en: get the reduced max_irqs by the ones used by RDMA + - net/ipv6: Remove extra call to ip6_convert_metrics for multipath case + - net/ipv6: stop leaking percpu memory in fib6 info + - net: mscc: fix the frame extraction into the skb + - qed: Fix shmem structure inconsistency between driver and the mfw. + - r8169: fix network stalls due to missing bit TXCFG_AUTO_FIFO + - r8169: set RX_MULTI_EN bit in RxConfig for 8168F-family chips + - vxlan: fill ttl inherit info + - ASoC: dapm: Fix NULL pointer deference on CODEC to CODEC DAIs + - ASoC: max98373: Added speaker FS gain cotnrol register to volatile. + - ASoC: rt5514: Fix the issue of the delay volume applied again + - selftests: android: move config up a level + - selftests: kselftest: Remove outdated comment + - ASoC: max98373: Added 10ms sleep after amp software reset + - ASoC: wm8804: Add ACPI support + - ASoC: sigmadsp: safeload should not have lower byte limit + - ASoC: q6routing: initialize data correctly + - selftests: add headers_install to lib.mk + - selftests/efivarfs: add required kernel configs + - selftests: memory-hotplug: add required configs + - ASoC: rsnd: adg: care clock-frequency size + - ASoC: rsnd: don't fallback to PIO mode when -EPROBE_DEFER + - hwmon: (nct6775) Fix access to fan pulse registers + - Fix cg_read_strcmp() + - ASoC: AMD: Ensure reset bit is cleared before configuring + - drm/pl111: Make sure of_device_id tables are NULL terminated + - Bluetooth: SMP: Fix trying to use non-existent local OOB data + - Bluetooth: Use correct tfm to generate OOB data + - Bluetooth: hci_ldisc: Free rw_semaphore on close + - mfd: omap-usb-host: Fix dts probe of children + - KVM: PPC: Book3S HV: Don't use compound_order to determine host mapping size + - scsi: iscsi: target: Don't use stack buffer for scatterlist + - scsi: qla2xxx: Fix an endian bug in fcpcmd_is_corrupted() + - sound: enable interrupt after dma buffer initialization + - sound: don't call skl_init_chip() to reset intel skl soc + - bpf: btf: Fix end boundary calculation for type section + - bpf: use __GFP_COMP while allocating page + - hwmon: (nct6775) Fix virtual temperature sources for NCT6796D + - hwmon: (nct6775) Fix RPM output for fan7 on NCT6796D + - stmmac: fix valid numbers of unicast filter entries + - hwmon: (nct6775) Use different register to get fan RPM for fan7 + - net: ethernet: ti: add missing GENERIC_ALLOCATOR dependency + - net: macb: disable scatter-gather for macb on sama5d3 + - ARM: dts: at91: add new compatibility string for macb on sama5d3 + - PCI: hv: support reporting serial number as slot information + - clk: x86: add "ether_clk" alias for Bay Trail / Cherry Trail + - clk: x86: Stop marking clocks as CLK_IS_CRITICAL + - pinctrl: cannonlake: Fix gpio base for GPP-E + - x86/kvm/lapic: always disable MMIO interface in x2APIC mode + - drm/amdgpu: Fix SDMA HQD destroy error on gfx_v7 + - drm/amdkfd: Change the control stack MTYPE from UC to NC on GFX9 + - drm/amdkfd: Fix ATS capablity was not reported correctly on some APUs + - mm: slowly shrink slabs with a relatively small number of objects + - mm/vmstat.c: fix outdated vmstat_text + - afs: Fix afs_server struct leak + - afs: Fix clearance of reply + - MIPS: Fix CONFIG_CMDLINE handling + - MIPS: VDSO: Always map near top of user memory + - mach64: detect the dot clock divider correctly on sparc + - vsprintf: Fix off-by-one bug in bstr_printf() processing dereferenced + pointers + - percpu: stop leaking bitmap metadata blocks + - perf script python: Fix export-to-postgresql.py occasional failure + - perf script python: Fix export-to-sqlite.py sample columns + - s390/cio: Fix how vfio-ccw checks pinned pages + - dm cache: destroy migration_cache if cache target registration failed + - dm: fix report zone remapping to account for partition offset + - dm linear: eliminate linear_end_io call if CONFIG_DM_ZONED disabled + - dm linear: fix linear_end_io conditional definition + - cgroup: Fix dom_cgrp propagation when enabling threaded mode + - Input: xpad - add support for Xbox1 PDP Camo series gamepad + - drm/nouveau/drm/nouveau: Grab runtime PM ref in nv50_mstc_detect() + - mmc: block: avoid multiblock reads for the last sector in SPI mode + - pinctrl: mcp23s08: fix irq and irqchip setup order + - arm64: perf: Reject stand-alone CHAIN events for PMUv3 + - mm/mmap.c: don't clobber partially overlapping VMA with MAP_FIXED_NOREPLACE + - mm/thp: fix call to mmu_notifier in set_pmd_migration_entry() v2 + - filesystem-dax: Fix dax_layout_busy_page() livelock + - mm: Preserve _PAGE_DEVMAP across mprotect() calls + - i2c: i2c-scmi: fix for i2c_smbus_write_block_data + - KVM: PPC: Book3S HV: Avoid crash from THP collapse during radix page fault + - Linux 4.18.15 + * Cosmic update: 4.18.14 upstream stable release (LP: #1801986) + - perf/core: Add sanity check to deal with pinned event failure + - mm: migration: fix migration of huge PMD shared pages + - mm, thp: fix mlocking THP page with migration enabled + - mm/vmstat.c: skip NR_TLB_REMOTE_FLUSH* properly + - KVM: VMX: check for existence of secondary exec controls before accessing + - blk-mq: I/O and timer unplugs are inverted in blktrace + - pstore/ram: Fix failure-path memory leak in ramoops_init + - clocksource/drivers/timer-atmel-pit: Properly handle error cases + - fbdev/omapfb: fix omapfb_memory_read infoleak + - mmc: core: Fix debounce time to use microseconds + - mmc: slot-gpio: Fix debounce time to use miliseconds again + - mac80211: allocate TXQs for active monitor interfaces + - drm/amdgpu: Fix vce work queue was not cancelled when suspend + - drm: fix use-after-free read in drm_mode_create_lease_ioctl() + - x86/vdso: Fix asm constraints on vDSO syscall fallbacks + - selftests/x86: Add clock_gettime() tests to test_vdso + - x86/vdso: Only enable vDSO retpolines when enabled and supported + - x86/vdso: Fix vDSO syscall fallback asm constraint regression + - Revert "UBUNTU: SAUCE: PCI: Reprogram bridge prefetch registers on resume" + - PCI: Reprogram bridge prefetch registers on resume + - mac80211: fix setting IEEE80211_KEY_FLAG_RX_MGMT for AP mode keys + - PM / core: Clear the direct_complete flag on errors + - dm mpath: fix attached_handler_name leak and dangling hw_handler_name + pointer + - dm cache metadata: ignore hints array being too small during resize + - dm cache: fix resize crash if user doesn't reload cache table + - xhci: Add missing CAS workaround for Intel Sunrise Point xHCI + - usb: xhci-mtk: resume USB3 roothub first + - USB: serial: simple: add Motorola Tetra MTP6550 id + - USB: serial: option: improve Quectel EP06 detection + - USB: serial: option: add two-endpoints device-id flag + - usb: cdc_acm: Do not leak URB buffers + - tty: Drop tty->count on tty_reopen() failure + - of: unittest: Disable interrupt node tests for old world MAC systems + - powerpc: Avoid code patching freed init sections + - powerpc/lib: fix book3s/32 boot failure due to code patching + - ARC: clone syscall to setp r25 as thread pointer + - f2fs: fix invalid memory access + - tipc: call start and done ops directly in __tipc_nl_compat_dumpit() + - ucma: fix a use-after-free in ucma_resolve_ip() + - ubifs: Check for name being NULL while mounting + - rds: rds_ib_recv_alloc_cache() should call alloc_percpu_gfp() instead + - ath10k: fix scan crash due to incorrect length calculation + - Linux 4.18.14 + * Cosmic update: 4.18.13 upstream stable release (LP: #1801931) + - rseq/selftests: fix parametrized test with -fpie + - mac80211: Run TXQ teardown code before de-registering interfaces + - mac80211_hwsim: require at least one channel + - Btrfs: fix unexpected failure of nocow buffered writes after snapshotting + when low on space + - KVM: PPC: Book3S HV: Don't truncate HPTE index in xlate function + - cfg80211: remove division by size of sizeof(struct ieee80211_wmm_rule) + - btrfs: btrfs_shrink_device should call commit transaction at the end + - scsi: csiostor: add a check for NULL pointer after kmalloc() + - scsi: csiostor: fix incorrect port capabilities + - scsi: libata: Add missing newline at end of file + - scsi: aacraid: fix a signedness bug + - bpf, sockmap: fix potential use after free in bpf_tcp_close + - bpf, sockmap: fix psock refcount leak in bpf_tcp_recvmsg + - bpf: sockmap, decrement copied count correctly in redirect error case + - mac80211: correct use of IEEE80211_VHT_CAP_RXSTBC_X + - mac80211_hwsim: correct use of IEEE80211_VHT_CAP_RXSTBC_X + - cfg80211: make wmm_rule part of the reg_rule structure + - mac80211_hwsim: Fix possible Spectre-v1 for hwsim_world_regdom_custom + - nl80211: Fix nla_put_u8 to u16 for NL80211_WMMR_TXOP + - nl80211: Pass center frequency in kHz instead of MHz + - bpf: fix several offset tests in bpf_msg_pull_data + - gpio: adp5588: Fix sleep-in-atomic-context bug + - mac80211: mesh: fix HWMP sequence numbering to follow standard + - mac80211: avoid kernel panic when building AMSDU from non-linear SKB + - gpiolib: acpi: Switch to cansleep version of GPIO library call + - gpiolib-acpi: Register GpioInt ACPI event handlers from a late_initcall + - gpio: dwapb: Fix error handling in dwapb_gpio_probe() + - bpf: fix msg->data/data_end after sg shift repair in bpf_msg_pull_data + - bpf: fix shift upon scatterlist ring wrap-around in bpf_msg_pull_data + - bpf: fix sg shift repair start offset in bpf_msg_pull_data + - tipc: switch to rhashtable iterator + - sh_eth: Add R7S9210 support + - net: mvpp2: initialize port of_node pointer + - tc-testing: add test-cases for numeric and invalid control action + - cfg80211: nl80211_update_ft_ies() to validate NL80211_ATTR_IE + - mac80211: do not convert to A-MSDU if frag/subframe limited + - mac80211: always account for A-MSDU header changes + - tools/kvm_stat: fix python3 issues + - tools/kvm_stat: fix handling of invalid paths in debugfs provider + - tools/kvm_stat: fix updates for dead guests + - gpio: Fix crash due to registration race + - ARC: atomics: unbork atomic_fetch_##op() + - Revert "blk-throttle: fix race between blkcg_bio_issue_check() and + cgroup_rmdir()" + - md/raid5-cache: disable reshape completely + - RAID10 BUG_ON in raise_barrier when force is true and conf->barrier is 0 + - selftests: pmtu: maximum MTU for vti4 is 2^16-1-20 + - selftests: pmtu: detect correct binary to ping ipv6 addresses + - ibmvnic: Include missing return code checks in reset function + - bpf: Fix bpf_msg_pull_data() + - bpf: avoid misuse of psock when TCP_ULP_BPF collides with another ULP + - i2c: uniphier: issue STOP only for last message or I2C_M_STOP + - i2c: uniphier-f: issue STOP only for last message or I2C_M_STOP + - net: cadence: Fix a sleep-in-atomic-context bug in macb_halt_tx() + - fs/cifs: don't translate SFM_SLASH (U+F026) to backslash + - mac80211: fix an off-by-one issue in A-MSDU max_subframe computation + - cfg80211: fix a type issue in ieee80211_chandef_to_operating_class() + - mac80211: fix WMM TXOP calculation + - mac80211: fix a race between restart and CSA flows + - mac80211: Fix station bandwidth setting after channel switch + - mac80211: don't Tx a deauth frame if the AP forbade Tx + - mac80211: shorten the IBSS debug messages + - fsnotify: fix ignore mask logic in fsnotify() + - net/ibm/emac: wrong emac_calc_base call was used by typo + - nds32: fix logic for module + - nds32: add NULL entry to the end of_device_id array + - nds32: Fix empty call trace + - nds32: Fix get_user/put_user macro expand pointer problem + - nds32: fix build error because of wrong semicolon + - tools/vm/slabinfo.c: fix sign-compare warning + - tools/vm/page-types.c: fix "defined but not used" warning + - nds32: linker script: GCOV kernel may refers data in __exit + - ceph: avoid a use-after-free in ceph_destroy_options() + - firmware: arm_scmi: fix divide by zero when sustained_perf_level is zero + - afs: Fix cell specification to permit an empty address list + - mm: madvise(MADV_DODUMP): allow hugetlbfs pages + - bpf: 32-bit RSH verification must truncate input before the ALU op + - netfilter: xt_cluster: add dependency on conntrack module + - netfilter: xt_checksum: ignore gso skbs + - HID: intel-ish-hid: Enable Sunrise Point-H ish driver + - HID: add support for Apple Magic Keyboards + - usb: gadget: fotg210-udc: Fix memory leak of fotg210->ep[i] + - HID: hid-saitek: Add device ID for RAT 7 Contagion + - scsi: iscsi: target: Set conn->sess to NULL when iscsi_login_set_conn_values + fails + - scsi: iscsi: target: Fix conn_ops double free + - scsi: qedi: Add the CRC size within iSCSI NVM image + - perf annotate: Properly interpret indirect call + - perf evsel: Fix potential null pointer dereference in perf_evsel__new_idx() + - perf util: Fix bad memory access in trace info. + - perf probe powerpc: Ignore SyS symbols irrespective of endianness + - perf annotate: Fix parsing aarch64 branch instructions after objdump update + - netfilter: kconfig: nat related expression depend on nftables core + - netfilter: nf_tables: release chain in flushing set + - Revert "iio: temperature: maxim_thermocouple: add MAX31856 part" + - iio: imu: st_lsm6dsx: take into account ts samples in wm configuration + - RDMA/ucma: check fd type in ucma_migrate_id() + - riscv: Do not overwrite initrd_start and initrd_end + - HID: sensor-hub: Restore fixup for Lenovo ThinkPad Helix 2 sensor hub report + - usb: host: xhci-plat: Iterate over parent nodes for finding quirks + - USB: yurex: Check for truncation in yurex_read() + - nvmet-rdma: fix possible bogus dereference under heavy load + - bnxt_re: Fix couple of memory leaks that could lead to IOMMU call traces + - net/mlx5: Consider PCI domain in search for next dev + - dm raid: fix reshape race on small devices + - drm/nouveau: fix oops in client init failure path + - drm/nouveau/mmu: don't attempt to dereference vmm without valid instance + pointer + - drm/nouveau/TBDdevinit: don't fail when PMU/PRE_OS is missing from VBIOS + - drm/nouveau/disp: fix DP disable race + - drm/nouveau/disp/gm200-: enforce identity-mapped SOR assignment for LVDS/eDP + panels + - dm raid: fix stripe adding reshape deadlock + - dm raid: fix rebuild of specific devices by updating superblock + - dm raid: fix RAID leg rebuild errors + - r8169: set TxConfig register after TX / RX is enabled, just like RxConfig + - fs/cifs: suppress a string overflow warning + - perf/x86/intel: Add support/quirk for the MISPREDICT bit on Knights Landing + CPUs + - sched/topology: Set correct NUMA topology type + - dm thin metadata: try to avoid ever aborting transactions + - netfilter: nfnetlink_queue: Solve the NFQUEUE/conntrack clash for NF_REPEAT + - netfilter: xt_hashlimit: use s->file instead of s->private + - arch/hexagon: fix kernel/dma.c build warning + - hexagon: modify ffs() and fls() to return int + - drm/amdgpu: Fix SDMA hang in prt mode v2 + - arm64: jump_label.h: use asm_volatile_goto macro instead of "asm goto" + - drm/amdgpu: fix error handling in amdgpu_cs_user_fence_chunk + - r8169: Clear RTL_FLAG_TASK_*_PENDING when clearing RTL_FLAG_TASK_ENABLED + - s390/qeth: don't dump past end of unknown HW header + - cifs: read overflow in is_valid_oplock_break() + - asm-generic: io: Fix ioport_map() for !CONFIG_GENERIC_IOMAP && + CONFIG_INDIRECT_PIO + - xen/manage: don't complain about an empty value in control/sysrq node + - xen: avoid crash in disable_hotplug_cpu + - xen: fix GCC warning and remove duplicate EVTCHN_ROW/EVTCHN_COL usage + - x86/APM: Fix build warning when PROC_FS is not enabled + - new primitive: discard_new_inode() + - vfs: don't evict uninitialized inode + - ovl: set I_CREATING on inode being created + - ovl: fix access beyond unterminated strings + - ovl: fix memory leak on unlink of indexed file + - ovl: fix format of setxattr debug + - sysfs: Do not return POSIX ACL xattrs via listxattr + - b43: fix DMA error related regression with proprietary firmware + - firmware: Fix security issue with request_firmware_into_buf() + - firmware: Always initialize the fw_priv list object + - cpufreq: qcom-kryo: Fix section annotations + - smb2: fix missing files in root share directory listing + - iommu/amd: Clear memory encryption mask from physical address + - crypto: qat - Fix KASAN stack-out-of-bounds bug in adf_probe() + - crypto: chelsio - Fix memory corruption in DMA Mapped buffers. + - crypto: mxs-dcp - Fix wait logic on chan threads + - crypto: caam/jr - fix ablkcipher_edesc pointer arithmetic + - gpiolib: Free the last requested descriptor + - Drivers: hv: vmbus: Use get/put_cpu() in vmbus_connect() + - tools: hv: fcopy: set 'error' in case an unknown operation was requested + - proc: restrict kernel stack dumps to root + - ocfs2: fix locking for res->tracking and dlm->tracking_list + - HID: i2c-hid: disable runtime PM operations on hantick touchpad + - ixgbe: check return value of napi_complete_done() + - dm thin metadata: fix __udivdi3 undefined on 32-bit + - Revert "drm/amd/pp: Send khz clock values to DC for smu7/8" + - Linux 4.18.13 + * Volume control not working Dell XPS 27 (7760) (LP: #1775068) // Cosmic + update: 4.18.13 upstream stable release (LP: #1801931) + - ALSA: hda/realtek - Cannot adjust speaker's volume on Dell XPS 27 7760 + * [Bionic][Cosmic] ipmi: Fix timer race with module unload (LP: #1799281) + - ipmi: Fix timer race with module unload + * [Bionic][Cosmic] Fix to ipmi to support vendor specific messages greater + than 255 bytes (LP: #1799794) + - ipmi:ssif: Add support for multi-part transmit messages > 2 parts + * 18.10 kernel does not appear to validate kernel module signatures correctly + (LP: #1798863) // CVE-2018-18653 + - SAUCE: (efi-lockdown) module: remove support for deferring module signature + verification to IMA + * 18.10 kernel does not appear to validate kernel module signatures correctly + (LP: #1798863) + - SAUCE: (efi-lockdown) module: trust keys from secondary keyring for module + signing + * [Ubuntu] net/af_iucv: fix skb leaks for HiperTransport (LP: #1800639) + - net/af_iucv: drop inbound packets with invalid flags + - net/af_iucv: fix skb handling on HiperTransport xmit error + * Power consumption during s2idle is higher than long idle(sk hynix) + (LP: #1801875) + - SAUCE: pci: prevent sk hynix nvme from entering D3 + - SAUCE: nvme: add quirk to not call disable function when suspending + * NULL pointer dereference at 0000000000000020 when access + dst_orig->ops->family in function xfrm_lookup_with_ifid() (LP: #1801878) + - xfrm: Fix NULL pointer dereference when skb_dst_force clears the dst_entry. + * hns3: map tx ring to tc (LP: #1802023) + - net: hns3: Set tx ring' tc info when netdev is up + * [Ubuntu] qeth: Fix potential array overrun in cmd/rc lookup (LP: #1800641) + - s390: qeth_core_mpc: Use ARRAY_SIZE instead of reimplementing its function + - s390: qeth: Fix potential array overrun in cmd/rc lookup + * Mellanox CX5 stops pinging with rx_wqe_err (mlx5_core) (LP: #1799393) + - net/mlx5: WQ, fixes for fragmented WQ buffers API + * Vulkan applications cause permanent memory leak with Intel GPU + (LP: #1798165) + - drm/syncobj: Don't leak fences when WAIT_FOR_SUBMIT is set + * Packaging resync (LP: #1786013) + - [Package] add support for specifying the primary makefile + + -- Khalid Elmously Thu, 15 Nov 2018 21:20:34 -0500 + +linux-azure (4.18.0-1004.4) cosmic; urgency=medium + + * linux-azure: 4.18.0-1004.4 -proposed tracker (LP: #1799451) + + * Shared folders cannot be mounted in ubuntu/cosmic64 due to missing vbox + modules (LP: #1796647) + - [Config] azure: CONFIG_VBOXGUEST=n + + * netfilter: nf_conntrack: resolve clash for matching conntracks + (LP: #1795493) + - SAUCE: netfilter: nf_conntrack: resolve clash for matching conntracks + - SAUCE: netfilter: nf_nat: return the same reply tuple for matching CTs + + * [Hyper-V] Enable NVME devices (LP: #1793386) + - [Config] linux-azure: CONFIG_BLK_DEV_NVME=y + + * linux-azure: fix getabis information (LP: #1793462) + - [Packaging] linux-azure: fix getabis + + [ Ubuntu: 4.18.0-11.12 ] + + * linux: 4.18.0-11.12 -proposed tracker (LP: #1799445) + * arm64: snapdragon: WARNING: CPU: 0 PID: 1 arch/arm64/kernel/setup.c:271 + reserve_memblock_reserved_regions (LP: #1797139) + - SAUCE: arm64: Fix /proc/iomem for reserved but not memory regions + * arm64: snapdragon: WARNING: CPU: 0 PID: 1 at drivers/irqchip/irq-gic.c:1016 + gic_irq_domain_translate (LP: #1797143) + - SAUCE: arm64: dts: msm8916: camms: fix gic_irq_domain_translate warnings + * The front MIC can't work on the Lenovo M715 (LP: #1797292) + - ALSA: hda/realtek - Fix the problem of the front MIC on the Lenovo M715 + * Provide mode where all vCPUs on a core must be the same VM (LP: #1792957) + - KVM: PPC: Book3S HV: Provide mode where all vCPUs on a core must be the same + VM + * fscache: bad refcounting in fscache_op_complete leads to OOPS (LP: #1797314) + - SAUCE: fscache: Fix race in decrementing refcount of op->npages + * hns3: autoneg settings get lost on down/up (LP: #1797654) + - net: hns3: Fix for information of phydev lost problem when down/up + * not able to unwind the stack from within __kernel_clock_gettime in the Linux + vDSO (LP: #1797963) + - powerpc/vdso: Correct call frame information + * Signal 7 error when running GPFS tracing in cluster (LP: #1792195) + - powerpc/mm/books3s: Add new pte bit to mark pte temporarily invalid. + - powerpc/mm/radix: Only need the Nest MMU workaround for R -> RW transition + * Support Edge Gateway's WIFI LED (LP: #1798330) + - SAUCE: mwifiex: Switch WiFi LED state according to the device status + * Support Edge Gateway's Bluetooth LED (LP: #1798332) + - SAUCE: Bluetooth: Support for LED on Edge Gateways + * kvm doesn't work on 36 physical bits systems (LP: #1798427) + - KVM: x86: fix L1TF's MMIO GFN calculation + * CVE-2018-15471 + - xen-netback: fix input validation in xenvif_set_hash_mapping() + * regression in 'ip --family bridge neigh' since linux v4.12 (LP: #1796748) + - rtnetlink: fix rtnl_fdb_dump() for ndmsg header + + [ Ubuntu: 4.18.0-10.11 ] + + * linux: 4.18.0-10.11 -proposed tracker (LP: #1797379) + * the machine of lenovo M715 with the AMD GPU (Radeon Vega 8 Mobile, rev ca, + 1002:15dd) often hangs randomly (LP: #1796789) + - drm/amd: Add missing fields in atom_integrated_system_info_v1_11 + * Miscellaneous Ubuntu changes + - [Config] CONFIG_VBOXGUEST=n + - ubuntu: vbox -- update to 5.2.18-dfsg-2 + - ubuntu: enable vbox build + + -- Stefan Bader Wed, 24 Oct 2018 14:21:28 +0200 + +linux-azure (4.18.0-1003.3) cosmic; urgency=medium + + * linux-azure: 4.18.0-1003.3 -proposed tracker (LP: #1796350) + + * iptables --list --numeric fails on -virtual kernel / -virtual missing + bpfilter (LP: #1795036) + - [Config] add bpfilter.ko to generic inclusion list + + [ Ubuntu: 4.18.0-9.10 ] + + * linux: 4.18.0-9.10 -proposed tracker (LP: #1796346) + * Cosmic update: v4.18.12 upstream stable release (LP: #1796139) + - crypto: skcipher - Fix -Wstringop-truncation warnings + - iio: adc: ina2xx: avoid kthread_stop() with stale task_struct + - tsl2550: fix lux1_input error in low light + - misc: ibmvmc: Use GFP_ATOMIC under spin lock + - vmci: type promotion bug in qp_host_get_user_memory() + - siox: don't create a thread without starting it + - x86/numa_emulation: Fix emulated-to-physical node mapping + - staging: rts5208: fix missing error check on call to rtsx_write_register + - power: supply: axp288_charger: Fix initial constant_charge_current value + - misc: sram: enable clock before registering regions + - serial: sh-sci: Stop RX FIFO timer during port shutdown + - uwb: hwa-rc: fix memory leak at probe + - power: vexpress: fix corruption in notifier registration + - iommu/amd: make sure TLB to be flushed before IOVA freed + - Bluetooth: Add a new Realtek 8723DE ID 0bda:b009 + - USB: serial: kobil_sct: fix modem-status error handling + - 6lowpan: iphc: reset mac_header after decompress to fix panic + - iommu/msm: Don't call iommu_device_{,un}link from atomic context + - s390/mm: correct allocate_pgste proc_handler callback + - power: remove possible deadlock when unregistering power_supply + - drm/amd/display/dc/dce: Fix multiple potential integer overflows + - drm/amd/display: fix use of uninitialized memory + - md-cluster: clear another node's suspend_area after the copy is finished + - cxgb4: Fix the condition to check if the card is T5 + - RDMA/bnxt_re: Fix a couple off by one bugs + - RDMA/i40w: Hold read semaphore while looking after VMA + - RDMA/bnxt_re: Fix a bunch of off by one bugs in qplib_fp.c + - IB/core: type promotion bug in rdma_rw_init_one_mr() + - media: exynos4-is: Prevent NULL pointer dereference in __isp_video_try_fmt() + - IB/mlx4: Test port number before querying type. + - powerpc/kdump: Handle crashkernel memory reservation failure + - media: fsl-viu: fix error handling in viu_of_probe() + - vhost_net: Avoid tx vring kicks during busyloop + - media: staging/imx: fill vb2_v4l2_buffer field entry + - IB/mlx5: Fix GRE flow specification + - include/rdma/opa_addr.h: Fix an endianness issue + - x86/tsc: Add missing header to tsc_msr.c + - ARM: hwmod: RTC: Don't assume lock/unlock will be called with irq enabled + - x86/entry/64: Add two more instruction suffixes + - ARM: dts: ls1021a: Add missing cooling device properties for CPUs + - scsi: target/iscsi: Make iscsit_ta_authentication() respect the output + buffer size + - thermal: i.MX: Allow thermal probe to fail gracefully in case of bad + calibration. + - scsi: klist: Make it safe to use klists in atomic context + - scsi: ibmvscsi: Improve strings handling + - scsi: target: Avoid that EXTENDED COPY commands trigger lock inversion + - usb: wusbcore: security: cast sizeof to int for comparison + - ath10k: sdio: use same endpoint id for all packets in a bundle + - ath10k: sdio: set skb len for all rx packets + - powerpc/powernv/ioda2: Reduce upper limit for DMA window size + - platform/x86: asus-wireless: Fix uninitialized symbol usage + - ACPI / button: increment wakeup count only when notified + - s390/sysinfo: add missing #ifdef CONFIG_PROC_FS + - alarmtimer: Prevent overflow for relative nanosleep + - s390/dasd: correct numa_node in dasd_alloc_queue + - s390/scm_blk: correct numa_node in scm_blk_dev_setup + - s390/extmem: fix gcc 8 stringop-overflow warning + - mtd: rawnand: atmel: add module param to avoid using dma + - iio: accel: adxl345: convert address field usage in iio_chan_spec + - posix-timers: Make forward callback return s64 + - posix-timers: Sanitize overrun handling + - ALSA: snd-aoa: add of_node_put() in error path + - selftests: forwarding: Tweak tc filters for mirror-to-gretap tests + - ath10k: use locked skb_dequeue for rx completions + - media: s3c-camif: ignore -ENOIOCTLCMD from v4l2_subdev_call for s_power + - media: soc_camera: ov772x: correct setting of banding filter + - media: omap3isp: zero-initialize the isp cam_xclk{a,b} initial data + - media: ov772x: add checks for register read errors + - staging: android: ashmem: Fix mmap size validation + - media: ov772x: allow i2c controllers without I2C_FUNC_PROTOCOL_MANGLING + - staging: mt7621-eth: Fix memory leak in mtk_add_mac() error path + - drivers/tty: add error handling for pcmcia_loop_config + - arm64: dts: renesas: salvator-common: Fix adv7482 decimal unit addresses + - serial: pxa: Fix an error handling path in 'serial_pxa_probe()' + - staging: mt7621-dts: Fix remaining pcie warnings + - media: tm6000: add error handling for dvb_register_adapter + - ASoC: qdsp6: qdafe: fix some off by one bugs + - net: phy: xgmiitorgmii: Check read_status results + - ath10k: protect ath10k_htt_rx_ring_free with rx_ring.lock + - drm/sun4i: Enable DW HDMI PHY clock + - net: phy: xgmiitorgmii: Check phy_driver ready before accessing + - drm/sun4i: Fix releasing node when enumerating enpoints + - ath10k: transmit queued frames after processing rx packets + - mt76x2: fix mrr idx/count estimation in mt76x2_mac_fill_tx_status() + - rndis_wlan: potential buffer overflow in rndis_wlan_auth_indication() + - brcmsmac: fix wrap around in conversion from constant to s16 + - bitfield: fix *_encode_bits() + - wlcore: Add missing PM call for wlcore_cmd_wait_for_event_or_timeout() + - drm/omap: gem: Fix mm_list locking + - ARM: mvebu: declare asm symbols as character arrays in pmsu.c + - RDMA/uverbs: Don't overwrite NULL pointer with ZERO_SIZE_PTR + - Documentation/process: fix reST table border error + - perf/hw_breakpoint: Split attribute parse and commit + - arm: dts: mediatek: Add missing cooling device properties for CPUs + - HID: hid-ntrig: add error handling for sysfs_create_group + - HID: i2c-hid: Use devm to allocate i2c_hid struct + - MIPS: boot: fix build rule of vmlinux.its.S + - arm64: dts: renesas: Fix VSPD registers range + - drm/v3d: Take a lock across GPU scheduler job creation and queuing. + - perf/x86/intel/lbr: Fix incomplete LBR call stack + - scsi: bnx2i: add error handling for ioremap_nocache + - iomap: complete partial direct I/O writes synchronously + - spi: orion: fix CS GPIO handling again + - scsi: megaraid_sas: Update controller info during resume + - ASoC: Intel: bytcr_rt5640: Fix Acer Iconia 8 over-current detect threshold + - ASoC: rt1305: Use ULL suffixes for 64-bit constants + - ASoC: rsnd: SSI parent cares SWSP bit + - EDAC, i7core: Fix memleaks and use-after-free on probe and remove + - ASoC: dapm: Fix potential DAI widget pointer deref when linking DAIs + - module: exclude SHN_UNDEF symbols from kallsyms api + - gpio: Fix wrong rounding in gpio-menz127 + - nfsd: fix corrupted reply to badly ordered compound + - EDAC: Fix memleak in module init error path + - EDAC, altera: Fix an error handling path in altr_s10_sdram_probe() + - staging: pi433: fix race condition in pi433_ioctl + - ath10k: fix incorrect size of dma_free_coherent in + ath10k_ce_alloc_src_ring_64 + - ath10k: snoc: use correct bus-specific pointer in RX retry + - fs/lock: skip lock owner pid translation in case we are in init_pid_ns + - ath10k: fix memory leak of tpc_stats + - Input: xen-kbdfront - fix multi-touch XenStore node's locations + - iio: 104-quad-8: Fix off-by-one error in register selection + - drm/vc4: Add missing formats to vc4_format_mod_supported(). + - ARM: dts: dra7: fix DCAN node addresses + - drm/vc4: plane: Expand the lower bits by repeating the higher bits + - perf tests: Fix indexing when invoking subtests + - gpio: tegra: Fix tegra_gpio_irq_set_type() + - block: fix deadline elevator drain for zoned block devices + - x86/mm: Expand static page table for fixmap space + - tty: serial: lpuart: avoid leaking struct tty_struct + - serial: imx: restore handshaking irq for imx1 + - serial: mvebu-uart: Fix reporting of effective CSIZE to userspace + - serial: cpm_uart: return immediately from console poll + - intel_th: Fix device removal logic + - intel_th: Fix resource handling for ACPI glue layer + - spi: tegra20-slink: explicitly enable/disable clock + - spi: sh-msiof: Fix invalid SPI use during system suspend + - spi: sh-msiof: Fix handling of write value for SISTR register + - spi: rspi: Fix invalid SPI use during system suspend + - spi: rspi: Fix interrupted DMA transfers + - regulator: fix crash caused by null driver data + - regulator: Fix 'do-nothing' value for regulators without suspend state + - USB: fix error handling in usb_driver_claim_interface() + - USB: handle NULL config in usb_find_alt_setting() + - usb: roles: Take care of driver module reference counting + - usb: musb: dsps: do not disable CPPI41 irq in driver teardown + - USB: usbdevfs: sanitize flags more + - USB: usbdevfs: restore warning for nonsensical flags + - Revert "usb: cdc-wdm: Fix a sleep-in-atomic-context bug in + service_outstanding_interrupt()" + - USB: remove LPM management from usb_driver_claim_interface() + - uaccess: Fix is_source param for check_copy_size() in copy_to_iter_mcsafe() + - ext2, dax: set ext2_dax_aops for dax files + - filesystem-dax: Fix use of zero page + - IB/srp: Avoid that sg_reset -d ${srp_device} triggers an infinite loop + - IB/hfi1: Fix SL array bounds check + - IB/hfi1: Invalid user input can result in crash + - IB/hfi1: Fix context recovery when PBC has an UnsupportedVL + - IB/hfi1: Fix destroy_qp hang after a link down + - ACPI / hotplug / PCI: Don't scan for non-hotplug bridges if slot is not + bridge + - RDMA/uverbs: Atomically flush and mark closed the comp event queue + - arm64: KVM: Tighten guest core register access from userspace + - ARM: OMAP2+: Fix null hwmod for ti-sysc debug + - ARM: OMAP2+: Fix module address for modules using mpu_rt_idx + - bus: ti-sysc: Fix module register ioremap for larger offsets + - qed: Wait for ready indication before rereading the shmem + - qed: Wait for MCP halt and resume commands to take place + - qed: Prevent a possible deadlock during driver load and unload + - qed: Avoid sending mailbox commands when MFW is not responsive + - thermal: of-thermal: disable passive polling when thermal zone is disabled + - isofs: reject hardware sector size > 2048 bytes + - mmc: atmel-mci: fix bad logic of sg_copy_{from,to}_buffer conversion + - mmc: android-goldfish: fix bad logic of sg_copy_{from,to}_buffer conversion + - bus: ti-sysc: Fix no_console_suspend handling + - ARM: dts: omap4-droid4: fix vibrations on Droid 4 + - bpf, sockmap: fix sock_hash_alloc and reject zero-sized keys + - bpf, sockmap: fix sock hash count in alloc_sock_hash_elem + - tls: possible hang when do_tcp_sendpages hits sndbuf is full case + - bpf: sockmap: write_space events need to be passed to TCP handler + - drm/amdgpu: fix VM clearing for the root PD + - drm/amdgpu: fix preamble handling + - amdgpu: fix multi-process hang issue + - net/ncsi: Fixup .dumpit message flags and ID check in Netlink handler + - tcp_bbr: add bbr_check_probe_rtt_done() helper + - tcp_bbr: in restart from idle, see if we should exit PROBE_RTT + - net: hns: fix length and page_offset overflow when CONFIG_ARM64_64K_PAGES + - net: hns: fix skb->truesize underestimation + - net: hns3: fix page_offset overflow when CONFIG_ARM64_64K_PAGES + - ice: Fix multiple static analyser warnings + - ice: Report stats for allocated queues via ethtool stats + - ice: Clean control queues only when they are initialized + - ice: Fix bugs in control queue processing + - ice: Use order_base_2 to calculate higher power of 2 + - ice: Set VLAN flags correctly + - tools: bpftool: return from do_event_pipe() on bad arguments + - ice: Fix a few null pointer dereference issues + - ice: Fix potential return of uninitialized value + - e1000: check on netif_running() before calling e1000_up() + - e1000: ensure to free old tx/rx rings in set_ringparam() + - ixgbe: fix driver behaviour after issuing VFLR + - i40e: Fix for Tx timeouts when interface is brought up if DCB is enabled + - i40e: fix condition of WARN_ONCE for stat strings + - crypto: chtls - fix null dereference chtls_free_uld() + - crypto: cavium/nitrox - fix for command corruption in queue full case with + backlog submissions. + - hwmon: (ina2xx) fix sysfs shunt resistor read access + - hwmon: (adt7475) Make adt7475_read_word() return errors + - Revert "ARM: dts: imx7d: Invert legacy PCI irq mapping" + - drm/amdgpu: Enable/disable gfx PG feature in rlc safe mode + - drm/amdgpu: Update power state at the end of smu hw_init. + - ata: ftide010: Add a quirk for SQ201 + - nvme-fcloop: Fix dropped LS's to removed target port + - ARM: dts: omap4-droid4: Fix emmc errors seen on some devices + - drm/amdgpu: Need to set moved to true when evict bo + - arm/arm64: smccc-1.1: Make return values unsigned long + - arm/arm64: smccc-1.1: Handle function result as parameters + - i2c: i801: Allow ACPI AML access I/O ports not reserved for SMBus + - clk: x86: Set default parent to 48Mhz + - x86/pti: Fix section mismatch warning/error + - KVM: PPC: Book3S HV: Fix guest r11 corruption with POWER9 TM workarounds + - powerpc: fix csum_ipv6_magic() on little endian platforms + - powerpc/pkeys: Fix reading of ibm, processor-storage-keys property + - powerpc/pseries: Fix unitialized timer reset on migration + - arm64: KVM: Sanitize PSTATE.M when being set from userspace + - media: v4l: event: Prevent freeing event subscriptions while accessed + - Linux 4.18.12 + * Fix usbcore.quirks when used at boot (LP: #1795784) + - usb: core: safely deal with the dynamic quirk lists + * Dell new AIO requires a new uart backlight driver (LP: #1727235) + - SAUCE: platform/x86: dell-uart-backlight: new backlight driver for DELL AIO + - updateconfigs for Dell UART backlight driver + * Please make CONFIG_PWM_LPSS_PCI and CONFIG_PWM_LPSS_PLATFORM built in to + make brightness adjustment working on various BayTrail/CherryTrail-based + devices (LP: #1783964) + - [Config]: Make PWM_LPSS_* built-in + * CVE-2018-5391 + - SAUCE: Revert "net: increase fragment memory usage limits" + * check and fix zkey required kernel modules locations in debs, udebs, and + initramfs (LP: #1794346) + - [Config] add s390 crypto modules to crypt-modules udeb + * iptables --list --numeric fails on -virtual kernel / -virtual missing + bpfilter (LP: #1795036) + - [Config] add bpfilter.ko to generic inclusion list + * fails to build on armhf because of module rename (LP: #1795665) + - [Config] omapfb was renamed to omap2fb + * qeth: use vzalloc for QUERY OAT buffer (LP: #1793086) + - s390/qeth: use vzalloc for QUERY OAT buffer + * Cosmic update to 4.18.11 stable release (LP: #1795486) + - gso_segment: Reset skb->mac_len after modifying network header + - ipv6: fix possible use-after-free in ip6_xmit() + - net/appletalk: fix minor pointer leak to userspace in SIOCFINDIPDDPRT + - net: hp100: fix always-true check for link up state + - pppoe: fix reception of frames with no mac header + - qmi_wwan: set DTR for modems in forced USB2 mode + - udp4: fix IP_CMSG_CHECKSUM for connected sockets + - tls: don't copy the key out of tls12_crypto_info_aes_gcm_128 + - tls: zero the crypto information from tls_context before freeing + - tls: clear key material from kernel memory when do_tls_setsockopt_conf fails + - neighbour: confirm neigh entries when ARP packet is received + - udp6: add missing checks on edumux packet processing + - net/sched: act_sample: fix NULL dereference in the data path + - hv_netvsc: fix schedule in RCU context + - net: dsa: mv88e6xxx: Fix ATU Miss Violation + - socket: fix struct ifreq size in compat ioctl + - tls: fix currently broken MSG_PEEK behavior + - ipv6: use rt6_info members when dst is set in rt6_fill_node + - net/ipv6: do not copy dst flags on rt init + - net: mvpp2: let phylink manage the carrier state + - net: rtnl_configure_link: fix dev flags changes arg to __dev_notify_flags + - NFC: Fix possible memory corruption when handling SHDLC I-Frame commands + - NFC: Fix the number of pipes + - ASoC: wm9712: fix replace codec to component + - ASoC: cs4265: fix MMTLR Data switch control + - ASoC: tas6424: Save last fault register even when clear + - ASoC: rsnd: fixup not to call clk_get/set under non-atomic + - ASoC: uapi: fix sound/skl-tplg-interface.h userspace compilation errors + - ALSA: bebob: fix memory leak for M-Audio FW1814 and ProjectMix I/O at error + path + - ALSA: bebob: use address returned by kmalloc() instead of kernel stack for + streaming DMA mapping + - ALSA: emu10k1: fix possible info leak to userspace on + SNDRV_EMU10K1_IOCTL_INFO + - ALSA: fireface: fix memory leak in ff400_switch_fetching_mode() + - ALSA: firewire-digi00x: fix memory leak of private data + - ALSA: firewire-tascam: fix memory leak of private data + - ALSA: fireworks: fix memory leak of response buffer at error path + - ALSA: oxfw: fix memory leak for model-dependent data at error path + - ALSA: oxfw: fix memory leak of discovered stream formats at error path + - ALSA: oxfw: fix memory leak of private data + - mtd: devices: m25p80: Make sure the buffer passed in op is DMA-able + - mtd: rawnand: denali: fix a race condition when DMA is kicked + - platform/x86: dell-smbios-wmi: Correct a memory leak + - platform/x86: alienware-wmi: Correct a memory leak + - xen/netfront: don't bug in case of too many frags + - xen/x86/vpmu: Zero struct pt_regs before calling into sample handling code + - spi: fix IDR collision on systems with both fixed and dynamic SPI bus + numbers + - Revert "PCI: Add ACS quirk for Intel 300 series" + - ring-buffer: Allow for rescheduling when removing pages + - crypto: x86/aegis,morus - Do not require OSXSAVE for SSE2 + - fork: report pid exhaustion correctly + - mm: disable deferred struct page for 32-bit arches + - mm: shmem.c: Correctly annotate new inodes for lockdep + - Revert "rpmsg: core: add support to power domains for devices" + - bpf/verifier: disallow pointer subtraction + - Revert "uapi/linux/keyctl.h: don't use C++ reserved keyword as a struct + member name" + - scsi: target: iscsi: Use bin2hex instead of a re-implementation + - Revert "ubifs: xattr: Don't operate on deleted inodes" + - libata: mask swap internal and hardware tag + - ocfs2: fix ocfs2 read block panic + - drm/i915/bdw: Increase IPS disable timeout to 100ms + - drm/nouveau: Reset MST branching unit before enabling + - drm/nouveau: Only write DP_MSTM_CTRL when needed + - drm/nouveau: Remove duplicate poll_enable() in pmops_runtime_suspend() + - drm/nouveau: Fix deadlocks in nouveau_connector_detect() + - drm/nouveau/drm/nouveau: Don't forget to cancel hpd_work on suspend/unload + - drm/nouveau/drm/nouveau: Fix bogus drm_kms_helper_poll_enable() placement + - drm/nouveau/drm/nouveau: Fix deadlock with fb_helper with async RPM requests + - drm/nouveau/drm/nouveau: Use pm_runtime_get_noresume() in connector_detect() + - drm/nouveau/drm/nouveau: Prevent handling ACPI HPD events too early + - drm/vc4: Fix the "no scaling" case on multi-planar YUV formats + - drm: udl: Destroy framebuffer only if it was initialized + - drm/amdgpu: add new polaris pci id + - tty: vt_ioctl: fix potential Spectre v1 + - ext4: check to make sure the rename(2)'s destination is not freed + - ext4: avoid divide by zero fault when deleting corrupted inline directories + - ext4: avoid arithemetic overflow that can trigger a BUG + - ext4: recalucate superblock checksum after updating free blocks/inodes + - ext4: fix online resize's handling of a too-small final block group + - ext4: fix online resizing for bigalloc file systems with a 1k block size + - ext4: don't mark mmp buffer head dirty + - ext4: show test_dummy_encryption mount option in /proc/mounts + - ext4, dax: add ext4_bmap to ext4_dax_aops + - ext4, dax: set ext4_dax_aops for dax files + - sched/fair: Fix vruntime_normalized() for remote non-migration wakeup + - vmw_balloon: include asm/io.h + - iw_cxgb4: only allow 1 flush on user qps + - spi: Fix double IDR allocation with DT aliases + - Linux 4.18.11 + * CVE-2018-14633 + - scsi: target: iscsi: Use hex2bin instead of a re-implementation + * Cosmic update to 4.18.10 stable release (LP: #1794597) + - be2net: Fix memory leak in be_cmd_get_profile_config() + - net/mlx5: Fix use-after-free in self-healing flow + - net: qca_spi: Fix race condition in spi transfers + - rds: fix two RCU related problems + - tipc: orphan sock in tipc_release() + - net/mlx5: E-Switch, Fix memory leak when creating switchdev mode FDB tables + - net/tls: Set count of SG entries if sk_alloc_sg returns -ENOSPC + - net/mlx5: Check for error in mlx5_attach_interface + - net/mlx5: Fix debugfs cleanup in the device init/remove flow + - erspan: fix error handling for erspan tunnel + - erspan: return PACKET_REJECT when the appropriate tunnel is not found + - tcp: really ignore MSG_ZEROCOPY if no SO_ZEROCOPY + - net/mlx5: Fix not releasing read lock when adding flow rules + - net/mlx5: Fix possible deadlock from lockdep when adding fte to fg + - net/mlx5: Use u16 for Work Queue buffer fragment size + - usb: dwc3: change stream event enable bit back to 13 + - iommu/arm-smmu-v3: sync the OVACKFLG to PRIQ consumer register + - iommu/io-pgtable-arm-v7s: Abort allocation when table address overflows the + PTE + - iommu/io-pgtable-arm: Fix pgtable allocation in selftest + - ALSA: msnd: Fix the default sample sizes + - ALSA: usb-audio: Add support for Encore mDSD USB DAC + - ALSA: usb-audio: Fix multiple definitions in AU0828_DEVICE() macro + - xfrm: fix 'passing zero to ERR_PTR()' warning + - amd-xgbe: use dma_mapping_error to check map errors + - nfp: don't fail probe on pci_sriov_set_totalvfs() errors + - iwlwifi: cancel the injective function between hw pointers to tfd entry + index + - gfs2: Special-case rindex for gfs2_grow + - clk: imx6ul: fix missing of_node_put() + - clk: imx6sll: fix missing of_node_put() + - clk: mvebu: armada-37xx-periph: Fix wrong return value in get_parent + - Input: pxrc - fix freeing URB on device teardown + - clk: core: Potentially free connection id + - clk: clk-fixed-factor: Clear OF_POPULATED flag in case of failure + - kbuild: add .DELETE_ON_ERROR special target + - kbuild: do not update config when running install targets + - media: tw686x: Fix oops on buffer alloc failure + - dmaengine: pl330: fix irq race with terminate_all + - MIPS: ath79: fix system restart + - media: videobuf2-core: check for q->error in vb2_core_qbuf() + - IB/rxe: Drop QP0 silently + - block: allow max_discard_segments to be stacked + - IB/ipoib: Fix error return code in ipoib_dev_init() + - mtd/maps: fix solutionengine.c printk format warnings + - media: ov5645: Supported external clock is 24MHz + - perf test: Fix subtest number when showing results + - gfs2: Don't reject a supposedly full bitmap if we have blocks reserved + - perf tools: Synthesize GROUP_DESC feature in pipe mode + - perf tests: Fix record+probe_libc_inet_pton.sh for powerpc64 + - perf tests: Fix record+probe_libc_inet_pton.sh when event exists + - perf tests: Fix record+probe_libc_inet_pton.sh to ensure cleanups + - fbdev: omapfb: off by one in omapfb_register_client() + - perf tools: Fix struct comm_str removal crash + - video: goldfishfb: fix memory leak on driver remove + - fbdev/via: fix defined but not used warning + - perf powerpc: Fix callchain ip filtering when return address is in a + register + - video: fbdev: pxafb: clear allocated memory for video modes + - fbdev: Distinguish between interlaced and progressive modes + - omapfb: rename omap2 module to omap2fb.ko + - ARM: exynos: Clear global variable on init error path + - perf powerpc: Fix callchain ip filtering + - nvmet: fix file discard return status + - nvme-rdma: unquiesce queues when deleting the controller + - KVM: arm/arm64: vgic: Fix possible spectre-v1 write in vgic_mmio_write_apr() + - powerpc/powernv: opal_put_chars partial write fix + - perf script: Show correct offsets for DWARF-based unwinding + - staging: bcm2835-camera: fix timeout handling in wait_for_completion_timeout + - staging: bcm2835-camera: handle wait_for_completion_timeout return properly + - ASoC: rt5514: Fix the issue of the delay volume applied + - MIPS: jz4740: Bump zload address + - mac80211: restrict delayed tailroom needed decrement + - Smack: Fix handling of IPv4 traffic received by PF_INET6 sockets + - wan/fsl_ucc_hdlc: use IS_ERR_VALUE() to check return value of qe_muram_alloc + - arm64: fix possible spectre-v1 write in ptrace_hbp_set_event() + - reset: imx7: Fix always writing bits as 0 + - ALSA: usb-audio: Generic DSD detection for Thesycon-based implementations + - nfp: avoid buffer leak when FW communication fails + - xen-netfront: fix queue name setting + - arm64: dts: qcom: db410c: Fix Bluetooth LED trigger + - ARM: dts: qcom: msm8974-hammerhead: increase load on l20 for sdhci + - soc: qcom: smem: Correct check for global partition + - s390/qeth: fix race in used-buffer accounting + - s390/qeth: reset layer2 attribute on layer switch + - platform/x86: toshiba_acpi: Fix defined but not used build warnings + - KVM: arm/arm64: Fix vgic init race + - drivers/base: stop new probing during shutdown + - i2c: aspeed: Fix initial values of master and slave state + - drm/amd/pp: Set Max clock level to display by default + - regulator: qcom_spmi: Use correct regmap when checking for error + - regulator: qcom_spmi: Fix warning Bad of_node_put() + - iommu/ipmmu-vmsa: IMUCTRn.TTSEL needs a special usage on R-Car Gen3 + - dmaengine: mv_xor_v2: kill the tasklets upon exit + - crypto: sharah - Unregister correct algorithms for SAHARA 3 + - x86/pti: Check the return value of pti_user_pagetable_walk_p4d() + - x86/pti: Check the return value of pti_user_pagetable_walk_pmd() + - x86/mm/pti: Add an overflow check to pti_clone_pmds() + - PCI/AER: Honor "pcie_ports=native" even if HEST sets FIRMWARE_FIRST + - xen-netfront: fix warn message as irq device name has '/' + - RDMA/cma: Protect cma dev list with lock + - pstore: Fix incorrect persistent ram buffer mapping + - xen/netfront: fix waiting for xenbus state change + - IB/ipoib: Avoid a race condition between start_xmit and cm_rep_handler + - mmc: omap_hsmmc: fix wakeirq handling on removal + - ipmi: Rework SMI registration failure + - ipmi: Move BT capabilities detection to the detect call + - ipmi: Fix I2C client removal in the SSIF driver + - ovl: fix oopses in ovl_fill_super() failure paths + - vmbus: don't return values for uninitalized channels + - Tools: hv: Fix a bug in the key delete code + - misc: ibmvsm: Fix wrong assignment of return code + - misc: hmc6352: fix potential Spectre v1 + - xhci: Fix use after free for URB cancellation on a reallocated endpoint + - usb: Don't die twice if PCI xhci host is not responding in resume + - usb: xhci: fix interrupt transfer error happened on MTK platforms + - usb: mtu3: fix error of xhci port id when enable U3 dual role + - mei: ignore not found client in the enumeration + - mei: bus: fix hw module get/put balance + - mei: bus: need to unlink client before freeing + - dm verity: fix crash on bufio buffer that was allocated with vmalloc + - USB: Add quirk to support DJI CineSSD + - usb: uas: add support for more quirk flags + - usb: Avoid use-after-free by flushing endpoints early in usb_set_interface() + - usb: host: u132-hcd: Fix a sleep-in-atomic-context bug in u132_get_frame() + - USB: add quirk for WORLDE Controller KS49 or Prodipe MIDI 49C USB controller + - usb: gadget: udc: renesas_usb3: fix maxpacket size of ep0 + - USB: net2280: Fix erroneous synchronization change + - USB: serial: io_ti: fix array underflow in completion handler + - usb: misc: uss720: Fix two sleep-in-atomic-context bugs + - USB: serial: ti_usb_3410_5052: fix array underflow in completion handler + - USB: yurex: Fix buffer over-read in yurex_write() + - usb: cdc-wdm: Fix a sleep-in-atomic-context bug in + service_outstanding_interrupt() + - Revert "cdc-acm: implement put_char() and flush_chars()" + - cifs: prevent integer overflow in nxt_dir_entry() + - CIFS: fix wrapping bugs in num_entries() + - cifs: integer overflow in in SMB2_ioctl() + - xtensa: ISS: don't allocate memory in platform_setup + - perf/core: Force USER_DS when recording user stack data + - perf tools: Fix maps__find_symbol_by_name() + - of: fix phandle cache creation for DTs with no phandles + - x86/EISA: Don't probe EISA bus for Xen PV guests + - NFSv4: Fix a tracepoint Oops in initiate_file_draining() + - NFSv4.1 fix infinite loop on I/O. + - of: add helper to lookup compatible child node + - mmc: meson-mx-sdio: fix OF child-node lookup + - binfmt_elf: Respect error return from `regset->active' + - net/mlx5: Add missing SET_DRIVER_VERSION command translation + - arm64: dts: uniphier: Add missing cooling device properties for CPUs + - audit: fix use-after-free in audit_add_watch + - mtdchar: fix overflows in adjustment of `count` + - vfs: fix freeze protection in mnt_want_write_file() for overlayfs + - bpf: fix rcu annotations in compute_effective_progs() + - spi: dw: fix possible race condition + - Bluetooth: Use lock_sock_nested in bt_accept_enqueue + - evm: Don't deadlock if a crypto algorithm is unavailable + - KVM: PPC: Book3S HV: Add of_node_put() in success path + - security: check for kstrdup() failure in lsm_append() + - PM / devfreq: use put_device() instead of kfree() + - KVM: PPC: Book3S: Fix matching of hardware and emulated TCE tables + - MIPS: loongson64: cs5536: Fix PCI_OHCI_INT_REG reads + - configfs: fix registered group removal + - pinctrl: mt7622: Fix probe fail by misuse the selector + - pinctrl: rza1: Fix selector use for groups and functions + - arm64: dts: mt7622: update a clock property for UART0 + - sched/core: Use smp_mb() in wake_woken_function() + - efi/esrt: Only call efi_mem_reserve() for boot services memory + - ARM: hisi: handle of_iomap and fix missing of_node_put + - ARM: hisi: fix error handling and missing of_node_put + - ARM: hisi: check of_iomap and fix missing of_node_put + - liquidio: fix hang when re-binding VF host drv after running DPDK VF driver + - gpu: ipu-v3: csi: pass back mbus_code_to_bus_cfg error codes + - ASoC: hdmi-codec: fix routing + - serial: 8250: of: Correct of_platform_serial_setup() error handling + - tty: fix termios input-speed encoding when using BOTHER + - tty: fix termios input-speed encoding + - mmc: sdhci-of-esdhc: set proper dma mask for ls104x chips + - mmc: tegra: prevent HS200 on Tegra 3 + - mmc: sdhci: do not try to use 3.3V signaling if not supported + - drm/nouveau: Fix runtime PM leak in drm_open() + - drm/nouveau/debugfs: Wake up GPU before doing any reclocking + - drm/nouveau: tegra: Detach from ARM DMA/IOMMU mapping + - tls: Fix zerocopy_from_iter iov handling + - parport: sunbpp: fix error return code + - sched/fair: Fix util_avg of new tasks for asymmetric systems + - coresight: Handle errors in finding input/output ports + - coresight: tpiu: Fix disabling timeouts + - coresight: ETM: Add support for Arm Cortex-A73 and Cortex-A35 + - f2fs: do checkpoint in kill_sb + - tools/testing/nvdimm: Fix support for emulating controller temperature + - drm/amd/display: support access ddc for mst branch + - ASoC: qdsp6: q6afe-dai: fix a range check in of_q6afe_parse_dai_data() + - lightnvm: pblk: assume that chunks are closed on 1.2 devices + - lightnvm: pblk: enable line minor version detection + - staging: bcm2835-audio: Don't leak workqueue if open fails + - gpio: pxa: Fix potential NULL dereference + - gpiolib: Mark gpio_suffixes array with __maybe_unused + - net: gemini: Allow multiple ports to instantiate + - net: mvpp2: make sure we use single queue mode on PPv2.1 + - rcutorture: Use monotonic timestamp for stall detection + - mfd: 88pm860x-i2c: switch to i2c_lock_bus(..., I2C_LOCK_SEGMENT) + - input: rohm_bu21023: switch to i2c_lock_bus(..., I2C_LOCK_SEGMENT) + - drm/amdkfd: Fix kernel queue 64 bit doorbell offset calculation + - drm/amdkfd: Fix error codes in kfd_get_process + - rtc: bq4802: add error handling for devm_ioremap + - selftests: vDSO - fix to return KSFT_SKIP when test couldn't be run + - selftests/android: initialize heap_type to avoid compiling warning + - ALSA: pcm: Fix snd_interval_refine first/last with open min/max + - scsi: libfc: fixup 'sleeping function called from invalid context' + - scsi: lpfc: Fix NVME Target crash in defer rcv logic + - scsi: lpfc: Fix panic if driver unloaded when port is offline + - remoteproc: qcom: q6v5-pil: fix modem hang on SDM845 after axis2 clk unvote + - selftest: timers: Tweak raw_skew to SKIP when ADJ_OFFSET/other clock + adjustments are in progress + - ASoC: rt5651: Fix workqueue cancel vs irq free race on remove + - drm/panel: type promotion bug in s6e8aa0_read_mtp_id() + - arm64: perf: Disable PMU while processing counter overflows + - drm/amd/pp: Send khz clock values to DC for smu7/8 + - dmaengine: sh: rcar-dmac: avoid to write CHCR.TE to 1 if TCR is set to 0 + - staging: fsl-dpaa2/eth: Fix DMA mapping direction + - block/DAC960.c: fix defined but not used build warnings + - IB/mlx5: fix uaccess beyond "count" in debugfs read/write handlers + - blk-mq: only attempt to merge bio if there is rq in sw queue + - blk-mq: avoid to synchronize rcu inside blk_cleanup_queue() + - pinctrl: msm: Fix msm_config_group_get() to be compliant + - pinctrl: qcom: spmi-gpio: Fix pmic_gpio_config_get() to be compliant + - clk: tegra: bpmp: Don't crash when a clock fails to register + - mei: bus: type promotion bug in mei_nfc_if_version() + - crypto: ccp - add timeout support in the SEV command + - Linux 4.18.10 + * Fix MCE handling for user access of poisoned device-dax mapping + (LP: #1774366) + - x86/mce: Fix set_mce_nospec() to avoid #GP fault + * [Ubuntu] s390/crypto: Fix return code checking in cbc_paes_crypt. + (LP: #1794294) + - s390/crypto: Fix return code checking in cbc_paes_crypt() + * Oracle cosmic image does not find broadcom network device in Shape + VMStandard2.1 (LP: #1790652) + - SAUCE: bnxt_en: Fix VF mac address regression. + * Page leaking in cachefiles_read_backing_file while vmscan is active + (LP: #1793430) + - SAUCE: cachefiles: Page leaking in cachefiles_read_backing_file while vmscan + is active + * hns3: enable ethtool rx-vlan-filter on supported hw (LP: #1793394) + - net: hns3: Add vlan filter setting by ethtool command -K + * hns3: Modifying channel parameters will reset ring parameters back to + defaults (LP: #1793404) + - net: hns3: Fix desc num set to default when setting channel + * hisi_sas: Add SATA FIX check for v3 hw (LP: #1794151) + - scsi: hisi_sas: Add SATA FIS check for v3 hw + * Fix potential corruption using SAS controller on HiSilicon arm64 boards + (LP: #1794156) + - scsi: hisi_sas: add memory barrier in task delivery function + * hisi_sas: Reduce unnecessary spin lock contention (LP: #1794165) + - scsi: hisi_sas: Tidy hisi_sas_task_prep() + * Add functional level reset support for the SAS controller on HiSilicon D06 + systems (LP: #1794166) + - scsi: hisi_sas: tidy host controller reset function a bit + - scsi: hisi_sas: relocate some common code for v3 hw + - scsi: hisi_sas: Implement handlers of PCIe FLR for v3 hw + * HiSilicon SAS controller doesn't recover from PHY STP link timeout + (LP: #1794172) + - scsi: hisi_sas: tidy channel interrupt handler for v3 hw + - scsi: hisi_sas: Fix the failure of recovering PHY from STP link timeout + * Cosmic update to 4.18.9 stable release (LP: #1793682) + - i2c: xiic: Make the start and the byte count write atomic + - i2c: i801: fix DNV's SMBCTRL register offset + - HID: multitouch: fix Elan panels with 2 input modes declaration + - HID: core: fix grouping by application + - HID: input: fix leaking custom input node name + - mm/hugetlb: filter out hugetlb pages if HUGEPAGE migration is not supported. + - memory_hotplug: fix kernel_panic on offline page processing + - mac80211: don't update the PM state of a peer upon a multicast frame + - scsi: lpfc: Correct MDS diag and nvmet configuration + - nbd: don't allow invalid blocksize settings + - block: don't warn when doing fsync on read-only devices + - block: bfq: swap puts in bfqg_and_blkg_put + - android: binder: fix the race mmap and alloc_new_buf_locked + - MIPS: VDSO: Match data page cache colouring when D$ aliases + - SMB3: Backup intent flag missing for directory opens with backupuid mounts + - smb3: check for and properly advertise directory lease support + - cifs: connect to servername instead of IP for IPC$ share + - btrfs: fix qgroup_free wrong num_bytes in btrfs_subvolume_reserve_metadata + - Btrfs: fix data corruption when deduplicating between different files + - arm64: KVM: Only force FPEXC32_EL2.EN if trapping FPSIMD + - KVM: arm/arm64: Clean dcache to PoC when changing PTE due to CoW + - KVM: PPC: Book3S HV: Use correct pagesize in kvm_unmap_radix() + - KVM: s390: vsie: copy wrapping keys to right place + - KVM: x86: SVM: Set EMULTYPE_NO_REEXECUTE for RSM emulation + - KVM: VMX: Do not allow reexecute_instruction() when skipping MMIO instr + - KVM: x86: Invert emulation re-execute behavior to make it opt-in + - KVM: x86: Merge EMULTYPE_RETRY and EMULTYPE_ALLOW_REEXECUTE + - KVM: x86: Default to not allowing emulation retry in kvm_mmu_page_fault + - KVM: x86: Do not re-{try,execute} after failed emulation in L2 + - ARC: [plat-axs*/plat-hsdk]: Allow U-Boot to pass MAC-address to the kernel + - ACPI / LPSS: Force LPSS quirks on boot + - memory: ti-aemif: fix a potential NULL-pointer dereference + - ALSA: hda - Fix cancel_work_sync() stall from jackpoll work + - cpu/hotplug: Adjust misplaced smb() in cpuhp_thread_fun() + - cpu/hotplug: Prevent state corruption on error rollback + - x86/microcode: Make sure boot_cpu_data.microcode is up-to-date + - x86/microcode: Update the new microcode revision unconditionally + - x86/process: Don't mix user/kernel regs in 64bit __show_regs() + - x86/apic/vector: Make error return value negative + - switchtec: Fix Spectre v1 vulnerability + - ARC: [plat-axs*]: Enable SWAP + - tc-testing: flush gact actions on test teardown + - tc-testing: remove duplicate spaces in connmark match patterns + - misc: mic: SCIF Fix scif_get_new_port() error handling + - ALSA: hda/realtek - Add mute LED quirk for HP Spectre x360 + - ethtool: Remove trailing semicolon for static inline + - i2c: aspeed: Add an explicit type casting for *get_clk_reg_val + - Bluetooth: h5: Fix missing dependency on BT_HCIUART_SERDEV + - pinctrl: berlin: fix 'pctrl->functions' allocation in + berlin_pinctrl_build_state + - gpio: tegra: Move driver registration to subsys_init level + - powerpc/4xx: Fix error return path in ppc4xx_msi_probe() + - selftests/bpf: fix a typo in map in map test + - media: davinci: vpif_display: Mix memory leak on probe error path + - media: dw2102: Fix memleak on sequence of probes + - net: phy: Fix the register offsets in Broadcom iProc mdio mux driver + - scsi: qla2xxx: Fix unintended Logout + - scsi: qla2xxx: Fix session state stuck in Get Port DB + - scsi: qla2xxx: Silent erroneous message + - clk: scmi: Fix the rounding of clock rate + - blk-mq: fix updating tags depth + - scsi: lpfc: Fix driver crash when re-registering NVME rports. + - scsi: target: fix __transport_register_session locking + - md/raid5: fix data corruption of replacements after originals dropped + - timers: Clear timer_base::must_forward_clk with timer_base::lock held + - media: camss: csid: Configure data type and decode format properly + - gpu: ipu-v3: default to id 0 on missing OF alias + - misc: ti-st: Fix memory leak in the error path of probe() + - uio: potential double frees if __uio_register_device() fails + - firmware: vpd: Fix section enabled flag on vpd_section_destroy + - Drivers: hv: vmbus: Cleanup synic memory free path + - tty: rocket: Fix possible buffer overwrite on register_PCI + - uio: fix possible circular locking dependency + - iwlwifi: pcie: don't access periphery registers when not available + - IB/IPoIB: Set ah valid flag in multicast send flow + - f2fs: fix to active page in lru list for read path + - f2fs: do not set free of current section + - f2fs: Keep alloc_valid_block_count in sync + - f2fs: issue discard align to section in LFS mode + - f2fs: fix defined but not used build warnings + - f2fs: fix to detect looped node chain correctly + - ASoC: soc-pcm: Use delay set in component pointer function + - perf tools: Allow overriding MAX_NR_CPUS at compile time + - device-dax: avoid hang on error before devm_memremap_pages() + - NFSv4.0 fix client reference leak in callback + - perf c2c report: Fix crash for empty browser + - perf evlist: Fix error out while applying initial delay and LBR + - powerpc/pseries: fix EEH recovery of some IOV devices + - macintosh/via-pmu: Add missing mmio accessors + - perf build: Fix installation directory for eBPF + - ath9k: report tx status on EOSP + - ath9k_hw: fix channel maximum power level test + - ath10k: prevent active scans on potential unusable channels + - wlcore: Set rx_status boottime_ns field on rx + - rpmsg: core: add support to power domains for devices + - mtd: rawnand: make subop helpers return unsigned values + - scsi: tcmu: do not set max_blocks if data_bitmap has been setup + - MIPS: Fix ISA virt/bus conversion for non-zero PHYS_OFFSET + - ata: libahci: Allow reconfigure of DEVSLP register + - ata: libahci: Correct setting of DEVSLP register + - nfs: Referrals not inheriting proto setting from parent + - scsi: 3ware: fix return 0 on the error path of probe + - tools/testing/nvdimm: kaddr and pfn can be NULL to ->direct_access() + - ath10k: disable bundle mgmt tx completion event support + - media: em28xx: explicitly disable TS packet filter + - PCI: mobiveil: Add missing ../pci.h include + - PCI: mobiveil: Fix struct mobiveil_pcie.pcie_reg_base address type + - powerpc/mm: Don't report PUDs as memory leaks when using kmemleak + - Bluetooth: hidp: Fix handling of strncpy for hid->name information + - x86/mm: Remove in_nmi() warning from vmalloc_fault() + - regulator: tps65217: Fix NULL pointer dereference on probe + - pinctrl: imx: off by one in imx_pinconf_group_dbg_show() + - gpio: pxa: disable pinctrl calls for PXA3xx + - gpio: ml-ioh: Fix buffer underwrite on probe error path + - pinctrl/amd: only handle irq if it is pending and unmasked + - net: mvneta: fix mtu change on port without link + - f2fs: try grabbing node page lock aggressively in sync scenario + - pktcdvd: Fix possible Spectre-v1 for pkt_devs + - f2fs: fix to skip GC if type in SSA and SIT is inconsistent + - tpm_tis_spi: Pass the SPI IRQ down to the driver + - tpm/tpm_i2c_infineon: switch to i2c_lock_bus(..., I2C_LOCK_SEGMENT) + - f2fs: fix to do sanity check with reserved blkaddr of inline inode + - MIPS: Octeon: add missing of_node_put() + - MIPS: generic: fix missing of_node_put() + - thermal: rcar_thermal: avoid NULL dereference in absence of IRQ resources + - thermal_hwmon: Sanitize attribute name passed to hwmon + - net: dcb: For wild-card lookups, use priority -1, not 0 + - dm cache: only allow a single io_mode cache feature to be requested + - Input: atmel_mxt_ts - only use first T9 instance + - media: s5p-mfc: Fix buffer look up in s5p_mfc_handle_frame_{new, copy_time} + functions + - media: rcar-csi2: update stream start for V3M + - media: helene: fix xtal frequency setting at power on + - drm/amd/display: Prevent PSR from being enabled if initialization fails + - media: em28xx: Fix dual transport stream operation + - iommu/arm-smmu-v3: Abort all transactions if SMMU is enabled in kdump kernel + - f2fs: fix to wait on page writeback before updating page + - f2fs: Fix uninitialized return in f2fs_ioc_shutdown() + - media: em28xx: Fix DualHD disconnect oops + - f2fs: avoid potential deadlock in f2fs_sbi_store + - f2fs: fix to do sanity check with secs_per_zone + - mfd: rave-sp: Initialize flow control and parity of the port + - iommu/ipmmu-vmsa: Fix allocation in atomic context + - mfd: ti_am335x_tscadc: Fix struct clk memory leak + - f2fs: fix to do sanity check with {sit,nat}_ver_bitmap_bytesize + - f2fs: fix to propagate return value of scan_nat_page() + - f2fs: fix to do sanity check with extra_attr feature + - RDMA/hns: Add illegal hop_num judgement + - NFSv4.1: Fix a potential layoutget/layoutrecall deadlock + - RDMA/hns: Update the data type of immediate data + - MIPS: WARN_ON invalid DMA cache maintenance, not BUG_ON + - MIPS: mscc: ocelot: fix length of memory address space for MIIM + - RDMA/cma: Do not ignore net namespace for unbound cm_id + - clocksource: Revert "Remove kthread" + - autofs: fix autofs_sbi() does not check super block type + - mm: get rid of vmacache_flush_all() entirely + - Linux 4.18.9 + * SRU: Enable middle button of touchpad on ThinkPad P72 (LP: #1793463) + - Input: elantech - enable middle button of touchpad on ThinkPad P72 + * Improvements to the kernel source package preparation (LP: #1793461) + - [Packaging] startnewrelease: add support for backport kernels + * hns3: Retrieve RoCE MSI-X config from firmware (LP: #1793221) + - net: hns3: Fix MSIX allocation issue for VF + - net: hns3: Refine the MSIX allocation for PF + * Fix unusable NVIDIA GPU after S3 (LP: #1793338) + - SAUCE: PCI: Reprogram bridge prefetch registers on resume + * net: hns: Avoid hang when link is changed while handling packets + (LP: #1792209) + - net: hns: add the code for cleaning pkt in chip + - net: hns: add netif_carrier_off before change speed and duplex + * Cosmic update to v4.18.8 stable release (LP: #1793069) + - act_ife: fix a potential use-after-free + - ipv4: tcp: send zero IPID for RST and ACK sent in SYN-RECV and TIME-WAIT + state + - net: bcmgenet: use MAC link status for fixed phy + - net: macb: do not disable MDIO bus at open/close time + - net: sched: Fix memory exposure from short TCA_U32_SEL + - qlge: Fix netdev features configuration. + - r8169: add support for NCube 8168 network card + - tcp: do not restart timewait timer on rst reception + - vti6: remove !skb->ignore_df check from vti6_xmit() + - act_ife: move tcfa_lock down to where necessary + - act_ife: fix a potential deadlock + - net: sched: action_ife: take reference to meta module + - bnxt_en: Clean up unused functions. + - bnxt_en: Do not adjust max_cp_rings by the ones used by RDMA. + - net/sched: act_pedit: fix dump of extended layered op + - tipc: fix a missing rhashtable_walk_exit() + - hv_netvsc: Fix a deadlock by getting rtnl lock earlier in netvsc_probe() + - tipc: fix the big/little endian issue in tipc_dest + - sctp: remove useless start_fail from sctp_ht_iter in proc + - erspan: set erspan_ver to 1 by default when adding an erspan dev + - net: macb: Fix regression breaking non-MDIO fixed-link PHYs + - ipv6: don't get lwtstate twice in ip6_rt_copy_init() + - net/ipv6: init ip6 anycast rt->dst.input as ip6_input + - net/ipv6: Only update MTU metric if it set + - net/ipv6: Put lwtstate when destroying fib6_info + - net/mlx5: Fix SQ offset in QPs with small RQ + - r8169: set RxConfig after tx/rx is enabled for RTL8169sb/8110sb devices + - Revert "net: stmmac: Do not keep rearming the coalesce timer in stmmac_xmit" + - ip6_vti: fix creating fallback tunnel device for vti6 + - ip6_vti: fix a null pointer deference when destroy vti6 tunnel + - nfp: wait for posted reconfigs when disabling the device + - sctp: hold transport before accessing its asoc in sctp_transport_get_next + - mlxsw: spectrum_switchdev: Do not leak RIFs when removing bridge + - vhost: correctly check the iova range when waking virtqueue + - hv_netvsc: ignore devices that are not PCI + - cifs: check if SMB2 PDU size has been padded and suppress the warning + - hfsplus: don't return 0 when fill_super() failed + - hfs: prevent crash on exit from failed search + - sunrpc: Don't use stack buffer with scatterlist + - fork: don't copy inconsistent signal handler state to child + - fs/proc/vmcore.c: hide vmcoredd_mmap_dumps() for nommu builds + - reiserfs: change j_timestamp type to time64_t + - iommu/rockchip: Handle errors returned from PM framework + - hfsplus: fix NULL dereference in hfsplus_lookup() + - iommu/rockchip: Move irq request past pm_runtime_enable + - fs/proc/kcore.c: use __pa_symbol() for KCORE_TEXT list entries + - fat: validate ->i_start before using + - workqueue: skip lockdep wq dependency in cancel_work_sync() + - workqueue: re-add lockdep dependencies for flushing + - scripts: modpost: check memory allocation results + - apparmor: fix an error code in __aa_create_ns() + - virtio: pci-legacy: Validate queue pfn + - x86/mce: Add notifier_block forward declaration + - i2c: core: ACPI: Make acpi_gsb_i2c_read_bytes() check i2c_transfer return + value + - IB/hfi1: Invalid NUMA node information can cause a divide by zero + - pwm: meson: Fix mux clock names + - powerpc/topology: Get topology for shared processors at boot + - mm/fadvise.c: fix signed overflow UBSAN complaint + - mm: make DEFERRED_STRUCT_PAGE_INIT explicitly depend on SPARSEMEM + - fs/dcache.c: fix kmemcheck splat at take_dentry_name_snapshot() + - platform/x86: intel_punit_ipc: fix build errors + - bpf, sockmap: fix map elem deletion race with smap_stop_sock + - tcp, ulp: fix leftover icsk_ulp_ops preventing sock from reattach + - bpf, sockmap: fix sock_map_ctx_update_elem race with exist/noexist + - net/xdp: Fix suspicious RCU usage warning + - bpf, sockmap: fix leakage of smap_psock_map_entry + - samples/bpf: all XDP samples should unload xdp/bpf prog on SIGTERM + - netfilter: ip6t_rpfilter: set F_IFACE for linklocal addresses + - s390/kdump: Fix memleak in nt_vmcoreinfo + - ipvs: fix race between ip_vs_conn_new() and ip_vs_del_dest() + - mfd: sm501: Set coherent_dma_mask when creating subdevices + - netfilter: x_tables: do not fail xt_alloc_table_info too easilly + - platform/x86: asus-nb-wmi: Add keymap entry for lid flip action on UX360 + - netfilter: fix memory leaks on netlink_dump_start error + - tcp, ulp: add alias for all ulp modules + - ubi: Initialize Fastmap checkmapping correctly + - RDMA/hns: Fix usage of bitmap allocation functions return values + - ACPICA: ACPICA: add status check for acpi_hw_read before assigning return + value + - perf arm spe: Fix uninitialized record error variable + - net: hns3: Fix for command format parsing error in + hclge_is_all_function_id_zero + - block: don't warn for flush on read-only device + - PCI: Match Root Port's MPS to endpoint's MPSS as necessary + - drm/amd/display: Guard against null crtc in CRC IRQ + - coccicheck: return proper error code on fail + - perf tools: Check for null when copying nsinfo. + - f2fs: avoid race between zero_range and background GC + - f2fs: fix avoid race between truncate and background GC + - RISC-V: Use KBUILD_CFLAGS instead of KCFLAGS when building the vDSO + - irqchip/stm32: Fix init error handling + - irqchip/bcm7038-l1: Hide cpu offline callback when building for !SMP + - net/9p/trans_fd.c: fix race by holding the lock + - net/9p: fix error path of p9_virtio_probe + - f2fs: fix to clear PG_checked flag in set_page_dirty() + - pinctrl: axp209: Fix NULL pointer dereference after allocation + - bpf: fix bpffs non-array map seq_show issue + - powerpc/uaccess: Enable get_user(u64, *p) on 32-bit + - powerpc: Fix size calculation using resource_size() + - perf probe powerpc: Fix trace event post-processing + - block: bvec_nr_vecs() returns value for wrong slab + - brcmfmac: fix brcmf_wiphy_wowl_params() NULL pointer dereference + - s390/dasd: fix hanging offline processing due to canceled worker + - s390/dasd: fix panic for failed online processing + - ACPI / scan: Initialize status to ACPI_STA_DEFAULT + - blk-mq: count the hctx as active before allocating tag + - scsi: aic94xx: fix an error code in aic94xx_init() + - NFSv4: Fix error handling in nfs4_sp4_select_mode() + - Input: do not use WARN() in input_alloc_absinfo() + - xen/balloon: fix balloon initialization for PVH Dom0 + - PCI: mvebu: Fix I/O space end address calculation + - dm kcopyd: avoid softlockup in run_complete_job + - staging: comedi: ni_mio_common: fix subdevice flags for PFI subdevice + - ASoC: rt5677: Fix initialization of rt5677_of_match.data + - iommu/omap: Fix cache flushes on L2 table entries + - selftests/powerpc: Kill child processes on SIGINT + - selinux: cleanup dentry and inodes on error in selinuxfs + - RDS: IB: fix 'passing zero to ERR_PTR()' warning + - cfq: Suppress compiler warnings about comparisons + - smb3: fix reset of bytes read and written stats + - CIFS: fix memory leak and remove dead code + - SMB3: Number of requests sent should be displayed for SMB3 not just CIFS + - smb3: if server does not support posix do not allow posix mount option + - powerpc/platforms/85xx: fix t1042rdb_diu.c build errors & warning + - powerpc/64s: Make rfi_flush_fallback a little more robust + - um: fix parallel building with O= option + - powerpc/pseries: Avoid using the size greater than RTAS_ERROR_LOG_MAX. + - clk: rockchip: Add pclk_rkpwm_pmu to PMU critical clocks in rk3399 + - drm/amd/display: Read back max backlight value at boot + - KVM: vmx: track host_state.loaded using a loaded_vmcs pointer + - kvm: nVMX: Fix fault vector for VMX operation at CPL > 0 + - drm/etnaviv: fix crash in GPU suspend when init failed due to buffer + placement + - btrfs: Exit gracefully when chunk map cannot be inserted to the tree + - btrfs: replace: Reset on-disk dev stats value after replace + - btrfs: fix in-memory value of total_devices after seed device deletion + - btrfs: relocation: Only remove reloc rb_trees if reloc control has been + initialized + - btrfs: tree-checker: Detect invalid and empty essential trees + - btrfs: check-integrity: Fix NULL pointer dereference for degraded mount + - btrfs: lift uuid_mutex to callers of btrfs_open_devices + - btrfs: Don't remove block group that still has pinned down bytes + - btrfs: Fix a C compliance issue + - arm64: rockchip: Force CONFIG_PM on Rockchip systems + - ARM: rockchip: Force CONFIG_PM on Rockchip systems + - btrfs: do btrfs_free_stale_devices outside of device_list_add + - btrfs: extend locked section when adding a new device in device_list_add + - btrfs: rename local devices for fs_devices in btrfs_free_stale_devices( + - btrfs: use device_list_mutex when removing stale devices + - btrfs: lift uuid_mutex to callers of btrfs_scan_one_device + - btrfs: lift uuid_mutex to callers of btrfs_parse_early_options + - btrfs: reorder initialization before the mount locks uuid_mutex + - btrfs: fix mount and ioctl device scan ioctl race + - drm/i915/lpe: Mark LPE audio runtime pm as "no callbacks" + - drm/i915: Nuke the LVDS lid notifier + - drm/i915: Increase LSPCON timeout + - drm/i915: Free write_buf that we allocated with kzalloc. + - drm/amdgpu: update uvd_v6_0_ring_vm_funcs to use new nop packet + - drm/amdgpu: fix a reversed condition + - drm/amdgpu: Fix RLC safe mode test in gfx_v9_0_enter_rlc_safe_mode + - drm/amd/pp: Convert voltage unit in mV*4 to mV on CZ/ST + - drm/amd/powerplay: fixed uninitialized value + - drm/amd/pp/Polaris12: Fix a chunk of registers missed to program + - drm/edid: Quirk Vive Pro VR headset non-desktop. + - drm/amd/display: fix type of variable + - drm/amd/display: Don't share clk source between DP and HDMI + - drm/amd/display: update clk for various HDMI color depths + - drm/amd/display: Use requested HDMI aspect ratio + - drm/amd/display: Report non-DP display as disconnected without EDID + - drm/rockchip: lvds: add missing of_node_put + - drm/rockchip: vop: split out core clock enablement into separate functions + - drm/rockchip: vop: fix irq disabled after vop driver probed + - drm/amd/display: Pass connector id when executing VBIOS CT + - drm/amd/display: Check if clock source in use before disabling + - drm/amdgpu: update tmr mc address + - drm/amdgpu:add tmr mc address into amdgpu_firmware_info + - drm/amdgpu:add new firmware id for VCN + - drm/amdgpu:add VCN support in PSP driver + - drm/amdgpu:add VCN booting with firmware loaded by PSP + - drm/amdgpu: fix incorrect use of fcheck + - drm/amdgpu: fix incorrect use of drm_file->pid + - drm/i915: Re-apply "Perform link quality check, unconditionally during long + pulse" + - uapi/linux/keyctl.h: don't use C++ reserved keyword as a struct member name + - mm: respect arch_dup_mmap() return value + - drm/i915: set DP Main Stream Attribute for color range on DDI platforms + - x86/tsc: Prevent result truncation on 32bit + - drm/amdgpu: Keep track of amount of pinned CPU visible VRAM + - drm/amdgpu: Make pin_size values atomic + - drm/amdgpu: Warn and update pin_size values when destroying a pinned BO + - drm/amdgpu: Don't warn on destroying a pinned BO + - debugobjects: Make stack check warning more informative + - x86/pae: use 64 bit atomic xchg function in native_ptep_get_and_clear + - x86/xen: don't write ptes directly in 32-bit PV guests + - kbuild: make missing $DEPMOD a Warning instead of an Error + - kvm: x86: Set highest physical address bits in non-present/reserved SPTEs + - x86: kvm: avoid unused variable warning + - HID: redragon: fix num lock and caps lock LEDs + - ASoC: wm8994: Fix missing break in switch + - Linux 4.18.8 + * [Regression] Colour banding appears on Lenovo B50-80 integrated display + (LP: #1788308) // Cosmic update to v4.18.8 stable release (LP: #1793069) + - drm/edid: Add 6 bpc quirk for SDC panel in Lenovo B50-80 + * Fix I2C touchpanels' interrupt storms after system suspend (LP: #1792309) + - HID: i2c-hid: Fix flooded incomplete report after S3 on Rayd touchscreen + - HID: i2c-hid: Don't reset device upon system resume + * Error reported when creating ZFS pool with "-t" option, despite successful + pool creation (LP: #1769937) + - SAUCE: (noup) Update zfs to 0.7.9-3ubuntu6 + * update ENA driver to latest mainline version (LP: #1792044) + - net: ena: fix surprise unplug NULL dereference kernel crash + - net: ena: fix driver when PAGE_SIZE == 64kB + - net: ena: fix device destruction to gracefully free resources + - net: ena: fix potential double ena_destroy_device() + - net: ena: fix missing lock during device destruction + - net: ena: fix missing calls to READ_ONCE + - net: ena: fix incorrect usage of memory barriers + * device hotplug of vfio devices can lead to deadlock in vfio_pci_release + (LP: #1792099) + - SAUCE: vfio -- release device lock before userspace requests + * [AEP-bug] ext4: more rare direct I/O vs unmap failures (LP: #1787089) + - dax: dax_layout_busy_page() warn on !exceptional + - ext4: handle layout changes to pinned DAX mappings + - xfs: Close race between direct IO and xfs_break_layouts() + * [Bug][CLX]assertion failure with util_range_rw using libpmemlog, possible + kernel DAX bug (LP: #1789146) + - dax: remove VM_MIXEDMAP for fsdax and device dax + * [Feature] Optimize huge page clear/copy cache behavior (LP: #1730836) + - mm, clear_huge_page: move order algorithm into a separate function + - mm, huge page: copy target sub-page last when copy huge page + - mm, hugetlbfs: rename address to haddr in hugetlb_cow() + - mm, hugetlbfs: pass fault address to cow handler + * [ICL] Touch support (LP: #1771245) + - mfd: intel-lpss: Add Ice Lake PCI IDs + * Miscellaneous Ubuntu changes + - [Packaging] retpoline -- fix temporary filenaming + - SAUCE: update aufs to aufs4.18 20180910 + - CONFIG_BCH_CONST_PARAMS=n + - Packaging: final-checks: remove trailing backport suffix + + -- Marcelo Henrique Cerri Tue, 09 Oct 2018 14:07:50 -0300 + +linux-azure (4.18.0-1002.2) cosmic; urgency=medium + + * linux-azure: 4.18.0-1002.2 -proposed tracker (LP: #1791664) + + * Miscellaneous Ubuntu changes + - [Config] updateconfigs after rebase to Ubuntu-4.18.0-8.9 + + [ Ubuntu: 4.18.0-8.9 ] + + * linux: 4.18.0-8.9 -proposed tracker (LP: #1791663) + * Cosmic update to v4.18.7 stable release (LP: #1791660) + - rcu: Make expedited GPs handle CPU 0 being offline + - net: 6lowpan: fix reserved space for single frames + - net: mac802154: tx: expand tailroom if necessary + - 9p/net: Fix zero-copy path in the 9p virtio transport + - spi: davinci: fix a NULL pointer dereference + - spi: pxa2xx: Add support for Intel Ice Lake + - spi: spi-fsl-dspi: Fix imprecise abort on VF500 during probe + - spi: cadence: Change usleep_range() to udelay(), for atomic context + - mmc: block: Fix unsupported parallel dispatch of requests + - mmc: renesas_sdhi_internal_dmac: mask DMAC interrupts + - mmc: renesas_sdhi_internal_dmac: fix #define RST_RESERVED_BITS + - readahead: stricter check for bdi io_pages + - block: fix infinite loop if the device loses discard capability + - block: blk_init_allocated_queue() set q->fq as NULL in the fail case + - block: really disable runtime-pm for blk-mq + - blkcg: Introduce blkg_root_lookup() + - block: Introduce blk_exit_queue() + - block: Ensure that a request queue is dissociated from the cgroup controller + - apparmor: fix bad debug check in apparmor_secid_to_secctx() + - dma-buf: Move BUG_ON from _add_shared_fence to _add_shared_inplace + - libertas: fix suspend and resume for SDIO connected cards + - media: Revert "[media] tvp5150: fix pad format frame height" + - mailbox: xgene-slimpro: Fix potential NULL pointer dereference + - Replace magic for trusting the secondary keyring with #define + - Fix kexec forbidding kernels signed with keys in the secondary keyring to + boot + - powerpc/fadump: handle crash memory ranges array index overflow + - powerpc/64s: Fix page table fragment refcount race vs speculative references + - powerpc/pseries: Fix endianness while restoring of r3 in MCE handler. + - powerpc/pkeys: Give all threads control of their key permissions + - powerpc/pkeys: Deny read/write/execute by default + - powerpc/pkeys: key allocation/deallocation must not change pkey registers + - powerpc/pkeys: Save the pkey registers before fork + - powerpc/pkeys: Fix calculation of total pkeys. + - powerpc/pkeys: Preallocate execute-only key + - powerpc/nohash: fix pte_access_permitted() + - powerpc64/ftrace: Include ftrace.h needed for enable/disable calls + - powerpc/powernv/pci: Work around races in PCI bridge enabling + - cxl: Fix wrong comparison in cxl_adapter_context_get() + - IB/mlx5: Honor cnt_set_id_valid flag instead of set_id + - IB/mlx5: Fix leaking stack memory to userspace + - IB/srpt: Fix srpt_cm_req_recv() error path (1/2) + - IB/srpt: Fix srpt_cm_req_recv() error path (2/2) + - IB/srpt: Support HCAs with more than two ports + - overflow.h: Add arithmetic shift helper + - RDMA/mlx5: Fix shift overflow in mlx5_ib_create_wq + - ib_srpt: Fix a use-after-free in srpt_close_ch() + - ib_srpt: Fix a use-after-free in __srpt_close_all_ch() + - RDMA/rxe: Set wqe->status correctly if an unexpected response is received + - 9p: fix multiple NULL-pointer-dereferences + - fs/9p/xattr.c: catch the error of p9_client_clunk when setting xattr failed + - 9p/virtio: fix off-by-one error in sg list bounds check + - net/9p/client.c: version pointer uninitialized + - net/9p/trans_fd.c: fix race-condition by flushing workqueue before the + kfree() + - dm integrity: change 'suspending' variable from bool to int + - dm thin: stop no_space_timeout worker when switching to write-mode + - dm cache metadata: save in-core policy_hint_size to on-disk superblock + - dm cache metadata: set dirty on all cache blocks after a crash + - dm crypt: don't decrease device limits + - dm writecache: fix a crash due to reading past end of dirty_bitmap + - uart: fix race between uart_put_char() and uart_shutdown() + - Drivers: hv: vmbus: Fix the offer_in_progress in vmbus_process_offer() + - Drivers: hv: vmbus: Reset the channel callback in vmbus_onoffer_rescind() + - iio: sca3000: Fix missing return in switch + - iio: ad9523: Fix displayed phase + - iio: ad9523: Fix return value for ad952x_store() + - extcon: Release locking when sending the notification of connector state + - eventpoll.h: wrap casts in () properly + - vmw_balloon: fix inflation of 64-bit GFNs + - vmw_balloon: do not use 2MB without batching + - vmw_balloon: VMCI_DOORBELL_SET does not check status + - vmw_balloon: fix VMCI use when balloon built into kernel + - rtc: omap: fix resource leak in registration error path + - rtc: omap: fix potential crash on power off + - tracing: Do not call start/stop() functions when tracing_on does not change + - tracing/blktrace: Fix to allow setting same value + - printk/tracing: Do not trace printk_nmi_enter() + - livepatch: Validate module/old func name length + - uprobes: Use synchronize_rcu() not synchronize_sched() + - mfd: hi655x: Fix regmap area declared size for hi655x + - ovl: fix wrong use of impure dir cache in ovl_iterate() + - ACPICA: AML Parser: skip opcodes that open a scope upon parse failure + - ACPICA: Clear status of all events when entering sleep states + - drivers/block/zram/zram_drv.c: fix bug storing backing_dev + - sched: idle: Avoid retaining the tick when it has been stopped + - cpuidle: menu: Handle stopped tick more aggressively + - cpufreq: governor: Avoid accessing invalid governor_data + - PM / sleep: wakeup: Fix build error caused by missing SRCU support + - ALSA: ac97: fix device initialization in the compat layer + - ALSA: ac97: fix check of pm_runtime_get_sync failure + - ALSA: ac97: fix unbalanced pm_runtime_enable + - i2c: designware: Re-init controllers with pm_disabled set on resume + - KVM: VMX: fixes for vmentry_l1d_flush module parameter + - KVM: PPC: Book3S: Fix guest DMA when guest partially backed by THP pages + - xtensa: limit offsets in __loop_cache_{all,page} + - xtensa: increase ranges in ___invalidate_{i,d}cache_all + - block, bfq: return nbytes and not zero from struct cftype .write() method + - pnfs/blocklayout: off by one in bl_map_stripe() + - nfsd: fix leaked file lock with nfs exported overlayfs + - NFSv4 client live hangs after live data migration recovery + - NFSv4: Fix locking in pnfs_generic_recover_commit_reqs + - NFSv4: Fix a sleep in atomic context in nfs4_callback_sequence() + - ARM: tegra: Fix Tegra30 Cardhu PCA954x reset + - ARM: dts: am57xx-idk: Enable dual role for USB2 port + - pwm: omap-dmtimer: Return -EPROBE_DEFER if no dmtimer platform data + - mm/tlb: Remove tlb_remove_table() non-concurrent condition + - iommu/ipmmu-vmsa: Don't register as BUS IOMMU if machine doesn't have IPMMU- + VMSA + - iommu/vt-d: Add definitions for PFSID + - iommu/vt-d: Fix dev iotlb pfsid use + - sys: don't hold uts_sem while accessing userspace memory + - userns: move user access out of the mutex + - ubifs: Fix memory leak in lprobs self-check + - Revert "UBIFS: Fix potential integer overflow in allocation" + - ubifs: Check data node size before truncate + - ubifs: xattr: Don't operate on deleted inodes + - ubifs: Fix directory size calculation for symlinks + - ubifs: Fix synced_i_size calculation for xattr inodes + - pwm: tiehrpwm: Don't use emulation mode bits to control PWM output + - pwm: tiehrpwm: Fix disabling of output of PWMs + - fb: fix lost console when the user unplugs a USB adapter + - udlfb: fix semaphore value leak + - udlfb: fix display corruption of the last line + - udlfb: don't switch if we are switching to the same videomode + - udlfb: set optimal write delay + - udlfb: make a local copy of fb_ops + - udlfb: handle allocation failure + - udlfb: set line_length in dlfb_ops_set_par + - getxattr: use correct xattr length + - libnvdimm: Use max contiguous area for namespace size + - libnvdimm: fix ars_status output length calculation + - bcache: release dc->writeback_lock properly in bch_writeback_thread() + - kconfig: fix "Can't open ..." in parallel build + - perf auxtrace: Fix queue resize + - crypto: vmx - Fix sleep-in-atomic bugs + - crypto: aesni - Use unaligned loads from gcm_context_data + - crypto: arm64/sm4-ce - check for the right CPU feature bit + - crypto: caam - fix DMA mapping direction for RSA forms 2 & 3 + - crypto: caam/jr - fix descriptor DMA unmapping + - crypto: caam/qi - fix error path in xts setkey + - fs/quota: Fix spectre gadget in do_quotactl + - udf: Fix mounting of Win7 created UDF filesystems + - cpuidle: menu: Retain tick when shallow state is selected + - arm64: mm: always enable CONFIG_HOLES_IN_ZONE + - Linux 4.18.7 + * CVE-2017-5715 + - s390: detect etoken facility + - KVM: s390: add etoken support for guests + * Missing Intel GPU pci-id's (LP: #1789924) + - drm/i915/whl: Introducing Whiskey Lake platform + - drm/i915/aml: Introducing Amber Lake platform + - drm/i915/cfl: Add a new CFL PCI ID. + * [18.10 FEAT] Add kernel config options for SMC-R/D (LP: #1789934) + - s390/ism: add device driver for internal shared memory + - CONFIG_ISM=y for s390 + * Cosmic update to v4.18.6 stable release (LP: #1791105) + - PATCH scripts/kernel-doc + - scripts/kernel-doc: Escape all literal braces in regexes + - scsi: libsas: dynamically allocate and free ata host + - xprtrdma: Fix disconnect regression + - mei: don't update offset in write + - cifs: add missing support for ACLs in SMB 3.11 + - CIFS: fix uninitialized ptr deref in smb2 signing + - cifs: add missing debug entries for kconfig options + - cifs: use a refcount to protect open/closing the cached file handle + - cifs: check kmalloc before use + - smb3: enumerating snapshots was leaving part of the data off end + - smb3: Do not send SMB3 SET_INFO if nothing changed + - smb3: don't request leases in symlink creation and query + - smb3: fill in statfs fsid and correct namelen + - btrfs: use correct compare function of dirty_metadata_bytes + - btrfs: don't leak ret from do_chunk_alloc + - Btrfs: fix mount failure after fsync due to hard link recreation + - Btrfs: fix btrfs_write_inode vs delayed iput deadlock + - Btrfs: fix send failure when root has deleted files still open + - Btrfs: send, fix incorrect file layout after hole punching beyond eof + - hwmon: (k10temp) 27C Offset needed for Threadripper2 + - bpf, arm32: fix stack var offset in jit + - regulator: arizona-ldo1: Use correct device to get enable GPIO + - iommu/arm-smmu: Error out only if not enough context interrupts + - printk: Split the code for storing a message into the log buffer + - printk: Create helper function to queue deferred console handling + - printk/nmi: Prevent deadlock when accessing the main log buffer in NMI + - kprobes/arm64: Fix %p uses in error messages + - arm64: Fix mismatched cache line size detection + - arm64: Handle mismatched cache type + - arm64: mm: check for upper PAGE_SHIFT bits in pfn_valid() + - arm64: dts: rockchip: corrected uart1 clock-names for rk3328 + - KVM: arm/arm64: Fix potential loss of ptimer interrupts + - KVM: arm/arm64: Fix lost IRQs from emulated physcial timer when blocked + - KVM: arm/arm64: Skip updating PMD entry if no change + - KVM: arm/arm64: Skip updating PTE entry if no change + - s390/kvm: fix deadlock when killed by oom + - perf kvm: Fix subcommands on s390 + - stop_machine: Reflow cpu_stop_queue_two_works() + - stop_machine: Atomically queue and wake stopper threads + - ext4: check for NUL characters in extended attribute's name + - ext4: use ext4_warning() for sb_getblk failure + - ext4: sysfs: print ext4_super_block fields as little-endian + - ext4: reset error code in ext4_find_entry in fallback + - ext4: fix race when setting the bitmap corrupted flag + - x86/gpu: reserve ICL's graphics stolen memory + - platform/x86: wmi: Do not mix pages and kmalloc + - platform/x86: ideapad-laptop: Apply no_hw_rfkill to Y20-15IKBM, too + - mm: move tlb_table_flush to tlb_flush_mmu_free + - mm/tlb, x86/mm: Support invalidating TLB caches for RCU_TABLE_FREE + - x86/speculation/l1tf: Fix overflow in l1tf_pfn_limit() on 32bit + - x86/speculation/l1tf: Fix off-by-one error when warning that system has too + much RAM + - x86/speculation/l1tf: Suggest what to do on systems with too much RAM + - x86/vdso: Fix vDSO build if a retpoline is emitted + - x86/process: Re-export start_thread() + - KVM: x86: ensure all MSRs can always be KVM_GET/SET_MSR'd + - KVM: x86: SVM: Call x86_spec_ctrl_set_guest/host() with interrupts disabled + - fuse: Don't access pipe->buffers without pipe_lock() + - fuse: fix initial parallel dirops + - fuse: fix double request_end() + - fuse: fix unlocked access to processing queue + - fuse: umount should wait for all requests + - fuse: Fix oops at process_init_reply() + - fuse: Add missed unlock_page() to fuse_readpages_fill() + - lib/vsprintf: Do not handle %pO[^F] as %px + - udl-kms: change down_interruptible to down + - udl-kms: handle allocation failure + - udl-kms: fix crash due to uninitialized memory + - udl-kms: avoid division + - b43legacy/leds: Ensure NUL-termination of LED name string + - b43/leds: Ensure NUL-termination of LED name string + - ASoC: dpcm: don't merge format from invalid codec dai + - ASoC: zte: Fix incorrect PCM format bit usages + - ASoC: sirf: Fix potential NULL pointer dereference + - ASoC: wm_adsp: Correct DSP pointer for preloader control + - soc: qcom: rmtfs-mem: fix memleak in probe error paths + - pinctrl: freescale: off by one in imx1_pinconf_group_dbg_show() + - scsi: qla2xxx: Fix stalled relogin + - x86/vdso: Fix lsl operand order + - x86/nmi: Fix NMI uaccess race against CR3 switching + - x86/irqflags: Mark native_restore_fl extern inline + - x86/spectre: Add missing family 6 check to microcode check + - x86/speculation/l1tf: Increase l1tf memory limit for Nehalem+ + - hwmon: (nct6775) Fix potential Spectre v1 + - x86/entry/64: Wipe KASAN stack shadow before rewind_stack_do_exit() + - x86: Allow generating user-space headers without a compiler + - s390/mm: fix addressing exception after suspend/resume + - s390/lib: use expoline for all bcr instructions + - s390: fix br_r1_trampoline for machines without exrl + - s390/qdio: reset old sbal_state flags + - s390/numa: move initial setup of node_to_cpumask_map + - s390/purgatory: Fix crash with expoline enabled + - s390/purgatory: Add missing FORCE to Makefile targets + - kprobes: Show blacklist addresses as same as kallsyms does + - kprobes: Replace %p with other pointer types + - kprobes/arm: Fix %p uses in error messages + - kprobes: Make list and blacklist root user read only + - MIPS: Correct the 64-bit DSP accumulator register size + - MIPS: memset.S: Fix byte_fixup for MIPSr6 + - MIPS: Always use -march=, not - shortcuts + - MIPS: Change definition of cpu_relax() for Loongson-3 + - MIPS: lib: Provide MIPS64r6 __multi3() for GCC < 7 + - tpm: Return the actual size when receiving an unsupported command + - tpm: separate cmd_ready/go_idle from runtime_pm + - scsi: mpt3sas: Fix calltrace observed while running IO & reset + - scsi: mpt3sas: Fix _transport_smp_handler() error path + - scsi: sysfs: Introduce sysfs_{un,}break_active_protection() + - scsi: core: Avoid that SCSI device removal through sysfs triggers a deadlock + - iscsi target: fix session creation failure handling + - mtd: rawnand: hynix: Use ->exec_op() in hynix_nand_reg_write_op() + - mtd: rawnand: fsmc: Stop using chip->read_buf() + - mtd: rawnand: marvell: add suspend and resume hooks + - mtd: rawnand: qcom: wait for desc completion in all BAM channels + - clk: rockchip: fix clk_i2sout parent selection bits on rk3399 + - clk: npcm7xx: fix memory allocation + - PM / clk: signedness bug in of_pm_clk_add_clks() + - power: generic-adc-battery: fix out-of-bounds write when copying channel + properties + - power: generic-adc-battery: check for duplicate properties copied from iio + channels + - watchdog: Mark watchdog touch functions as notrace + - cdrom: Fix info leak/OOB read in cdrom_ioctl_drive_status + - x86/dumpstack: Don't dump kernel memory based on usermode RIP + - Linux 4.18.6 + - updateconfigs after v4.18.6 stable update + * random oopses on s390 systems using NVMe devices (LP: #1790480) + - s390/pci: fix out of bounds access during irq setup + * [18.10 FEAT] zcrypt DD: introduce APQN tags to support deterministic driver + binding (LP: #1784331) + - s390/zcrypt: code beautify + - s390/zcrypt: AP bus support for alternate driver(s) + - s390/zcrypt: hex string mask improvements for apmask and aqmask. + * performance drop with ATS enabled (LP: #1788097) + - powerpc/powernv: Fix concurrency issue with npu->mmio_atsd_usage + * Fix MCE handling for user access of poisoned device-dax mapping + (LP: #1774366) + - device-dax: Convert to vmf_insert_mixed and vm_fault_t + - device-dax: Enable page_mapping() + - device-dax: Set page->index + - filesystem-dax: Set page->index + - mm, madvise_inject_error: Disable MADV_SOFT_OFFLINE for ZONE_DEVICE pages + - mm, dev_pagemap: Do not clear ->mapping on final put + - mm, madvise_inject_error: Let memory_failure() optionally take a page + reference + - mm, memory_failure: Collect mapping size in collect_procs() + - filesystem-dax: Introduce dax_lock_mapping_entry() + - mm, memory_failure: Teach memory_failure() about dev_pagemap pages + - x86/mm/pat: Prepare {reserve, free}_memtype() for "decoy" addresses + - x86/memory_failure: Introduce {set, clear}_mce_nospec() + - libnvdimm, pmem: Restore page attributes when clearing errors + * Reconcile hns3 SAUCE patches with upstream (LP: #1787477) + - Revert "UBUNTU: SAUCE: {topost} net: hns3: fix comments for + hclge_get_ring_chain_from_mbx" + - Revert "UBUNTU: SAUCE: {topost} net: hns3: fix for using wrong mask and + shift in hclge_get_ring_chain_from_mbx" + - Revert "UBUNTU: SAUCE: {topost} net: hns3: fix for reset_level default + assignment probelm" + - Revert "UBUNTU: SAUCE: {topost} net: hns3: remove unnecessary ring + configuration operation while resetting" + - Revert "UBUNTU: SAUCE: {topost} net: hns3: fix return value error in + hns3_reset_notify_down_enet" + - Revert "UBUNTU: SAUCE: net: hns3: Fix for phy link issue when using marvell + phy driver" + - Revert "UBUNTU: SAUCE: {topost} net: hns3: separate roce from nic when + resetting" + - Revert "UBUNTU: SAUCE: {topost} net: hns3: correct reset event status + register" + - Revert "UBUNTU: SAUCE: {topost} net: hns3: prevent to request reset + frequently" + - Revert "UBUNTU: SAUCE: {topost} net: hns3: reset net device with rtnl_lock" + - Revert "UBUNTU: SAUCE: {topost} net: hns3: modify the order of initializeing + command queue register" + - Revert "UBUNTU: SAUCE: {topost} net: hns3: prevent sending command during + global or core reset" + - Revert "UBUNTU: SAUCE: {topost} net: hns3: Use roce handle when calling roce + callback function" + - Revert "UBUNTU: SAUCE: {topost} net: hns3: remove the warning when clear + reset cause" + - Revert "UBUNTU: SAUCE: {topost} net: hns3: fix get_vector ops in + hclgevf_main module" + - Revert "UBUNTU: SAUCE: {topost} net: hns3: fix warning bug when doing lp + selftest" + - Revert "UBUNTU: SAUCE: {topost} net: hns3: Add configure for mac minimal + frame size" + - Revert "UBUNTU: SAUCE: {topost} net: hns3: fix for mailbox message truncated + problem" + - Revert "UBUNTU: SAUCE: {topost} net: hns3: fix for l4 checksum offload bug" + - Revert "UBUNTU: SAUCE: {topost} net: hns3: fix for waterline not setting + correctly" + - Revert "UBUNTU: SAUCE: {topost} net: hns3: fix for mac pause not disable in + pfc mode" + - Revert "UBUNTU: SAUCE: {topost} net: hns3: fix tc setup when netdev is first + up" + - Revert "UBUNTU: SAUCE: {topost} net: hns3: Add calling roce callback + function when link status change" + - Revert "UBUNTU: SAUCE: {topost} net: hns3: optimize the process of notifying + roce client" + - Revert "UBUNTU: SAUCE: {topost} net: hns3: Add pf reset for hip08 RoCE" + - Revert "UBUNTU: SAUCE: {topost} net: hns3: Add SPDX tags to hns3 driver" + - Revert "UBUNTU: SAUCE: {topost} net: hns3: remove unused struct member and + definition" + - Revert "UBUNTU: SAUCE: {topost} net: hns3: fix mislead parameter name" + - Revert "UBUNTU: SAUCE: {topost} net: hns3: modify inconsistent bit mask + macros" + - Revert "UBUNTU: SAUCE: {topost} net: hns3: use decimal for bit offset + macros" + - Revert "UBUNTU: SAUCE: {topost} net: hns3: fix unreasonable code comments" + - Revert "UBUNTU: SAUCE: {topost} net: hns3: remove extra space and brackets" + - Revert "UBUNTU: SAUCE: {topost} net: hns3: standardize the handle of return + value" + - Revert "UBUNTU: SAUCE: {topost} net: hns3: remove some redundant + assignments" + - Revert "UBUNTU: SAUCE: {topost} net: hns3: modify hnae_ to hnae3_" + - Revert "UBUNTU: SAUCE: {topost} net: hns3: use dma_zalloc_coherent instead + of kzalloc/dma_map_single" + - Revert "UBUNTU: SAUCE: {topost} net: hns3: give default option while + dependency HNS3 set" + - Revert "UBUNTU: SAUCE: {topost} net: hns3: remove some unused members of + some structures" + - Revert "UBUNTU: SAUCE: {topost} net: hns3: remove a redundant + hclge_cmd_csq_done" + - Revert "UBUNTU: SAUCE: {topost} net: hns3: using modulo for cyclic counters + in hclge_cmd_send" + - Revert "UBUNTU: SAUCE: {topost} net: hns3: simplify hclge_cmd_csq_clean" + - Revert "UBUNTU: SAUCE: {topost} net: hns3: remove some redundant + assignments" + - Revert "UBUNTU: SAUCE: {topost} net: hns3: remove useless code in + hclge_cmd_send" + - Revert "UBUNTU: SAUCE: {topost} net: hns3: remove unused + hclge_ring_to_dma_dir" + - Revert "UBUNTU: SAUCE: {topost} net: hns3: use lower_32_bits and + upper_32_bits" + - Revert "UBUNTU: SAUCE: {topost} net: hns3: remove back in struct hclge_hw" + - Revert "UBUNTU: SAUCE: {topost} net: hns3: add unlikely for error check" + - Revert "UBUNTU: SAUCE: {topost} net: hns3: remove the Redundant put_vector + in hns3_client_uninit" + - Revert "UBUNTU: SAUCE: {topost} net: hns3: print the ret value in error + information" + - Revert "UBUNTU: SAUCE: {topost} net: hns3: extraction an interface for state + state init|uninit" + - Revert "UBUNTU: SAUCE: {topost} net: hns3: remove unused head file in + hnae3.c" + - Revert "UBUNTU: SAUCE: {topost} net: hns3: add l4_type check for both ipv4 + and ipv6" + - Revert "UBUNTU: SAUCE: {topost} net: hns3: add vector status check before + free vector" + - Revert "UBUNTU: SAUCE: {topost} net: hns3: rename the interface for + init_client_instance and uninit_client_instance" + - Revert "UBUNTU: SAUCE: {topost} net: hns3: remove hclge_get_vector_index + from hclge_bind_ring_with_vector" + - Revert "UBUNTU: SAUCE: {topost} net: hns3: RX BD information valid only in + last BD except VLD bit and buffer size" + - Revert "UBUNTU: SAUCE: {topost} net: hns3: add support for serdes loopback + selftest" + - net: hns3: Updates RX packet info fetch in case of multi BD + - net: hns3: remove hclge_get_vector_index from hclge_bind_ring_with_vector + - net: hns3: rename the interface for init_client_instance and + uninit_client_instance + - net: hns3: add vector status check before free vector + - net: hns3: add l4_type check for both ipv4 and ipv6 + - net: hns3: add unlikely for error check + - net: hns3: remove unused head file in hnae3.c + - net: hns3: extraction an interface for state init|uninit + - net: hns3: print the ret value in error information + - net: hns3: remove the Redundant put_vector in hns3_client_uninit + - net: hns3: remove back in struct hclge_hw + - net: hns3: use lower_32_bits and upper_32_bits + - net: hns3: remove unused hclge_ring_to_dma_dir + - net: hns3: remove useless code in hclge_cmd_send + - net: hns3: remove some redundant assignments + - net: hns3: simplify hclge_cmd_csq_clean + - net: hns3: remove a redundant hclge_cmd_csq_done + - net: hns3: remove some unused members of some structures + - net: hns3: give default option while dependency HNS3 set + - net: hns3: use dma_zalloc_coherent instead of kzalloc/dma_map_single + - net: hns3: modify hnae_ to hnae3_ + - net: hns3: Fix tc setup when netdev is first up + - net: hns3: Fix for mac pause not disable in pfc mode + - net: hns3: Fix for waterline not setting correctly + - net: hns3: Fix for l4 checksum offload bug + - net: hns3: Fix for mailbox message truncated problem + - net: hns3: Add configure for mac minimal frame size + - net: hns3: Fix warning bug when doing lp selftest + - net: hns3: Fix get_vector ops in hclgevf_main module + - net: hns3: Remove the warning when clear reset cause + - net: hns3: Prevent sending command during global or core reset + - net: hns3: Modify the order of initializing command queue register + - net: hns3: Reset net device with rtnl_lock + - net: hns3: Prevent to request reset frequently + - net: hns3: Correct reset event status register + - net: hns3: Fix return value error in hns3_reset_notify_down_enet + - net: hns3: remove unnecessary ring configuration operation while resetting + - net: hns3: Fix for reset_level default assignment probelm + - net: hns3: Fix for using wrong mask and shift in + hclge_get_ring_chain_from_mbx + - net: hns3: Fix comments for hclge_get_ring_chain_from_mbx + - net: hns3: Remove some redundant assignments + - net: hns3: Standardize the handle of return value + - net: hns3: Remove extra space and brackets + - net: hns3: Correct unreasonable code comments + - net: hns3: Use decimal for bit offset macros + - net: hns3: Modify inconsistent bit mask macros + - net: hns3: Fix misleading parameter name + - net: hns3: Remove unused struct member and definition + - net: hns3: Add SPDX tags to HNS3 PF driver + - net: hns3: Add support for serdes loopback selftest + - net: hns3: Fix for phy link issue when using marvell phy driver + * [Regression] kernel crashdump fails on arm64 (LP: #1786878) + - arm64: export memblock_reserve()d regions via /proc/iomem + - drivers: acpi: add dependency of EFI for arm64 + - efi/arm: preserve early mapping of UEFI memory map longer for BGRT + - efi/arm: map UEFI memory map even w/o runtime services enabled + - arm64: acpi: fix alignment fault in accessing ACPI + - [Config] CONFIG_ARCH_SUPPORTS_ACPI=y + - arm64: fix ACPI dependencies + - ACPI: fix menuconfig presentation of ACPI submenu + * TB 16 issue on Dell Lattitude 7490 with large amount of data (LP: #1785780) + - r8152: disable RX aggregation on new Dell TB16 dock + * Support Power Management for Thunderbolt Controller (LP: #1789358) + - thunderbolt: Use 64-bit DMA mask if supported by the platform + - thunderbolt: Do not unnecessarily call ICM get route + - thunderbolt: No need to take tb->lock in domain suspend/complete + - thunderbolt: Use correct ICM commands in system suspend + - thunderbolt: Add support for runtime PM + * Enable AMD PCIe MP2 for AMDI0011 (LP: #1773940) + - SAUCE: i2c:amd I2C Driver based on PCI Interface for upcoming platform + - SAUCE: i2c:amd move out pointer in union i2c_event_base + - SAUCE: i2c:amd Depends on ACPI + - [Config] i2c: CONFIG_I2C_AMD_MP2=y on x86 + * Microphone cannot be detected with front panel audio combo jack on HP Z8-G4 + machine (LP: #1789145) + - ALSA: hda/realtek - Fix HP Headset Mic can't record + * Please enable CONFIG_PAGE_POISONING (LP: #1783651) + - [Config] Enable CONFIG_PAGE_POISONING configs + * Tango platform uses __initcall without further checks (LP: #1787945) + - [Config] disable ARCH_TANGO + * [18.10 FEAT] SMC-Direct (LP: #1786902) + - net/smc: determine port attributes independent from pnet table + - net/smc: add pnetid support + - net/smc: add base infrastructure for SMC-D and ISM + - net/smc: add pnetid support for SMC-D and ISM + - net/smc: add SMC-D support in CLC messages + - net/smc: add SMC-D support in data transfer + - net/smc: add SMC-D support in af_smc + - net/smc: add SMC-D diag support + - net/smc: provide smc mode in smc_diag.c + - net/smc: eliminate cursor read and write calls + - net/smc: add function to get link group from link + - net/smc: use DECLARE_BITMAP for rtokens_used_mask + - net/smc: remove local variable page in smc_rx_splice() + - net/smc: Remove a WARN_ON() statement + - net/smc: Simplify ib_post_(send|recv|srq_recv)() calls + - net/smc: fewer parameters for smc_llc_send_confirm_link() + - net/smc: use correct vlan gid of RoCE device + - net/smc: provide fallback reason code + - net/smc: improve delete link processing + - net: simplify sock_poll_wait + - net/smc: send response to test link signal + * Miscellaneous Ubuntu changes + - [Config] update annotations for CONFIG_CRYPTO_SPECK_NEON + - [Config] fix up annotatios for CONFIG_CRYPTO_SPECK + + -- Marcelo Henrique Cerri Mon, 17 Sep 2018 10:52:13 -0300 + +linux-azure (4.18.0-1001.1) cosmic; urgency=medium + + * linux-azure: 4.18.0-1001.1 -proposed tracker (LP: #1791377) + + * linux-azure: make sure CONFIG_MLX{4,5}_INFINIBAND stays as "y" + (LP: #1785822) + - [Config] azure: Ensure CONFIG_MLX5_INFINIBAND=y + + * Miscellaneous Ubuntu changes + - SAUCE: vmbus-rdma: do not use rdma_addr_{un,}register_client anymore + - [Config] updateconfigs after rebase to Ubuntu-4.18.0-7.8 + + [ Ubuntu: 4.18.0-7.8 ] + + * linux: 4.18.0-7.8 -proposed tracker (LP: #1789459) + * pmtu.sh fails on 4.18 kernel (LP: #1789436) + - SAUCE: Revert "vti6: fix PMTU caching and reporting on xmit" + + [ Ubuntu: 4.18.0-6.7 ] + + * linux: 4.18.0-6.7 -proposed tracker (LP: #1788881) + * systemd 237-3ubuntu10 ADT test failure with linux 4.18.0-5.6 (LP: #1787440) + - Config: Disable BPF_JIT_ALWAYS_ON on i386 + * execveat03 in ubuntu_ltp_syscalls failed on X/B (LP: #1786729) + - cap_inode_getsecurity: use d_find_any_alias() instead of d_find_alias() + * Cosmic update to v4.18.5 stable release (LP: #1788874) + - EDAC: Add missing MEM_LRDDR4 entry in edac_mem_types[] + - pty: fix O_CLOEXEC for TIOCGPTPEER + - mm: Allow non-direct-map arguments to free_reserved_area() + - x86/mm/init: Pass unconverted symbol addresses to free_init_pages() + - x86/mm/init: Add helper for freeing kernel image pages + - x86/mm/init: Remove freed kernel image areas from alias mapping + - powerpc64s: Show ori31 availability in spectre_v1 sysfs file not v2 + - ext4: fix spectre gadget in ext4_mb_regular_allocator() + - drm/i915/kvmgt: Fix potential Spectre v1 + - drm/amdgpu/pm: Fix potential Spectre v1 + - parisc: Remove unnecessary barriers from spinlock.h + - parisc: Remove ordered stores from syscall.S + - PCI: Restore resized BAR state on resume + - PCI / ACPI / PM: Resume all bridges on suspend-to-RAM + - PCI: hotplug: Don't leak pci_slot on registration failure + - PCI: aardvark: Size bridges before resources allocation + - PCI: Skip MPS logic for Virtual Functions (VFs) + - PCI: pciehp: Fix use-after-free on unplug + - PCI: pciehp: Fix unprotected list iteration in IRQ handler + - i2c: core: ACPI: Properly set status byte to 0 for multi-byte writes + - i2c: imx: Fix race condition in dma read + - reiserfs: fix broken xattr handling (heap corruption, bad retval) + - Linux 4.18.5 + * [18.10 FEAT] Add kernel config option "CONFIG_SCLP_OFB" (LP: #1787898) + - [Config] CONFIG_SCLP_OFB=y for s390x + * errors when scanning partition table of corrupted AIX disk (LP: #1787281) + - partitions/aix: fix usage of uninitialized lv_info and lvname structures + - partitions/aix: append null character to print data from disk + * Apply NVMe bugfix from Google that bjf asked for (LP: #1787635) + - nvme-pci: add a memory barrier to nvme_dbbuf_update_and_check_event + * ThinkPad systems have no HDMI sound when using the nvidia GPU (LP: #1787058) + - ACPI / OSI: Add OEM _OSI string to enable NVidia HDMI audio + * Cosmic update to v4.18.4 stable release (LP: #1788454) + - l2tp: use sk_dst_check() to avoid race on sk->sk_dst_cache + - net_sched: fix NULL pointer dereference when delete tcindex filter + - net_sched: Fix missing res info when create new tc_index filter + - r8169: don't use MSI-X on RTL8168g + - ALSA: hda - Sleep for 10ms after entering D3 on Conexant codecs + - ALSA: hda - Turn CX8200 into D3 as well upon reboot + - ALSA: vx222: Fix invalid endian conversions + - ALSA: virmidi: Fix too long output trigger loop + - ALSA: cs5535audio: Fix invalid endian conversion + - ALSA: dice: fix wrong copy to rx parameters for Alesis iO26 + - ALSA: hda: Correct Asrock B85M-ITX power_save blacklist entry + - ALSA: memalloc: Don't exceed over the requested size + - ALSA: vxpocket: Fix invalid endian conversions + - ALSA: seq: Fix poll() error return + - media: gl861: fix probe of dvb_usb_gl861 + - USB: serial: sierra: fix potential deadlock at close + - USB: serial: pl2303: add a new device id for ATEN + - USB: option: add support for DW5821e + - ACPI / PM: save NVS memory for ASUS 1025C laptop + - tty: serial: 8250: Revert NXP SC16C2552 workaround + - serial: 8250_exar: Read INT0 from slave device, too + - serial: 8250_dw: always set baud rate in dw8250_set_termios + - serial: 8250_dw: Add ACPI support for uart on Broadcom SoC + - uio: fix wrong return value from uio_mmap() + - misc: sram: fix resource leaks in probe error path + - Revert "uio: use request_threaded_irq instead" + - Bluetooth: avoid killing an already killed socket + - isdn: Disable IIOCDBGVAR + - net: sock_diag: Fix spectre v1 gadget in __sock_diag_cmd() + - hv/netvsc: Fix NULL dereference at single queue mode fallback + - r8169: don't use MSI-X on RTL8106e + - ip_vti: fix a null pointer deferrence when create vti fallback tunnel + - net: ethernet: mvneta: Fix napi structure mixup on armada 3700 + - net: mvneta: fix mvneta_config_rss on armada 3700 + - cls_matchall: fix tcf_unbind_filter missing + - Linux 4.18.4 + * Cosmic update to v4.18.3 stable release (LP: #1788453) + - x86/speculation/l1tf: Exempt zeroed PTEs from inversion + - Linux 4.18.3 + * Cosmic update to v4.18.2 stable release (LP: #1788452) + - x86/l1tf: Fix build error seen if CONFIG_KVM_INTEL is disabled + - x86: i8259: Add missing include file + - x86/hyper-v: Check for VP_INVAL in hyperv_flush_tlb_others() + - x86/platform/UV: Mark memblock related init code and data correctly + - x86/mm/pti: Clear Global bit more aggressively + - xen/pv: Call get_cpu_address_sizes to set x86_virt/phys_bits + - x86/mm: Disable ioremap free page handling on x86-PAE + - kbuild: verify that $DEPMOD is installed + - crypto: ccree - fix finup + - crypto: ccree - fix iv handling + - crypto: ccp - Check for NULL PSP pointer at module unload + - crypto: ccp - Fix command completion detection race + - crypto: x86/sha256-mb - fix digest copy in sha256_mb_mgr_get_comp_job_avx2() + - crypto: vmac - require a block cipher with 128-bit block size + - crypto: vmac - separate tfm and request context + - crypto: blkcipher - fix crash flushing dcache in error path + - crypto: ablkcipher - fix crash flushing dcache in error path + - crypto: skcipher - fix aligning block size in skcipher_copy_iv() + - crypto: skcipher - fix crash flushing dcache in error path + - ioremap: Update pgtable free interfaces with addr + - x86/mm: Add TLB purge to free pmd/pte page interfaces + - Linux 4.18.2 + * Cosmic update to v4.18.2 stable release (LP: #1788452) // CVE-2018-9363 + - Bluetooth: hidp: buffer overflow in hidp_process_report + * linux-cloud-tools-common: Ensure hv-kvp-daemon.service starts before + walinuxagent.service (LP: #1739107) + - [Debian] hyper-v -- Ensure that hv-kvp-daemon.service starts before + walinuxagent.service + * Miscellaneous Ubuntu changes + - SAUCE: ipvs: remove nbsp characters from Kconfig + - [Config] CONFIG_MPROFILE_KERNEL=y for ppc64el + - [Config] CONFIG_DRM_RCAR_LVDS=m for snapdragon + - [Config] CONFIG_MDIO_MSCC_MIIM=n for s390x + - [Config] CONFIG_NET_VENDOR_MICROSEMI=n, CONFIG_NET_VENDOR_NI=n for s390x + - [Config] update annotations following config review + - [Debian] set CROSS_COMPILE when generating kernel configs + - [Config] Disable the Speck cipher + + [ Ubuntu: 4.18.0-5.6 ] + + * Cosmic update to v4.18.1 stable release (LP: #1787264) + - x86/paravirt: Fix spectre-v2 mitigations for paravirt guests + - x86/speculation: Protect against userspace-userspace spectreRSB + - kprobes/x86: Fix %p uses in error messages + - x86/irqflags: Provide a declaration for native_save_fl + - x86/speculation/l1tf: Increase 32bit PAE __PHYSICAL_PAGE_SHIFT + - x86/speculation/l1tf: Change order of offset/type in swap entry + - x86/speculation/l1tf: Protect swap entries against L1TF + - x86/speculation/l1tf: Protect PROT_NONE PTEs against speculation + - x86/speculation/l1tf: Make sure the first page is always reserved + - x86/speculation/l1tf: Add sysfs reporting for l1tf + - x86/speculation/l1tf: Disallow non privileged high MMIO PROT_NONE mappings + - x86/speculation/l1tf: Limit swap file size to MAX_PA/2 + - x86/bugs: Move the l1tf function and define pr_fmt properly + - sched/smt: Update sched_smt_present at runtime + - x86/smp: Provide topology_is_primary_thread() + - x86/topology: Provide topology_smt_supported() + - cpu/hotplug: Make bringup/teardown of smp threads symmetric + - cpu/hotplug: Split do_cpu_down() + - cpu/hotplug: Provide knobs to control SMT + - x86/cpu: Remove the pointless CPU printout + - x86/cpu/AMD: Remove the pointless detect_ht() call + - x86/cpu/common: Provide detect_ht_early() + - x86/cpu/topology: Provide detect_extended_topology_early() + - x86/cpu/intel: Evaluate smp_num_siblings early + - x86/CPU/AMD: Do not check CPUID max ext level before parsing SMP info + - x86/cpu/AMD: Evaluate smp_num_siblings early + - x86/apic: Ignore secondary threads if nosmt=force + - x86/speculation/l1tf: Extend 64bit swap file size limit + - x86/cpufeatures: Add detection of L1D cache flush support. + - x86/CPU/AMD: Move TOPOEXT reenablement before reading smp_num_siblings + - x86/speculation/l1tf: Protect PAE swap entries against L1TF + - x86/speculation/l1tf: Fix up pte->pfn conversion for PAE + - Revert "x86/apic: Ignore secondary threads if nosmt=force" + - cpu/hotplug: Boot HT siblings at least once + - x86/KVM: Warn user if KVM is loaded SMT and L1TF CPU bug being present + - x86/KVM/VMX: Add module argument for L1TF mitigation + - x86/KVM/VMX: Add L1D flush algorithm + - x86/KVM/VMX: Add L1D MSR based flush + - x86/KVM/VMX: Add L1D flush logic + - x86/KVM/VMX: Split the VMX MSR LOAD structures to have an host/guest numbers + - x86/KVM/VMX: Add find_msr() helper function + - x86/KVM/VMX: Separate the VMX AUTOLOAD guest/host number accounting + - x86/KVM/VMX: Extend add_atomic_switch_msr() to allow VMENTER only MSRs + - x86/KVM/VMX: Use MSR save list for IA32_FLUSH_CMD if required + - cpu/hotplug: Online siblings when SMT control is turned on + - x86/litf: Introduce vmx status variable + - x86/kvm: Drop L1TF MSR list approach + - x86/l1tf: Handle EPT disabled state proper + - x86/kvm: Move l1tf setup function + - x86/kvm: Add static key for flush always + - x86/kvm: Serialize L1D flush parameter setter + - x86/kvm: Allow runtime control of L1D flush + - cpu/hotplug: Expose SMT control init function + - cpu/hotplug: Set CPU_SMT_NOT_SUPPORTED early + - x86/bugs, kvm: Introduce boot-time control of L1TF mitigations + - Documentation: Add section about CPU vulnerabilities + - x86/speculation/l1tf: Unbreak !__HAVE_ARCH_PFN_MODIFY_ALLOWED architectures + - x86/KVM/VMX: Initialize the vmx_l1d_flush_pages' content + - Documentation/l1tf: Fix typos + - cpu/hotplug: detect SMT disabled by BIOS + - x86/KVM/VMX: Don't set l1tf_flush_l1d to true from vmx_l1d_flush() + - x86/KVM/VMX: Replace 'vmx_l1d_flush_always' with 'vmx_l1d_flush_cond' + - x86/KVM/VMX: Move the l1tf_flush_l1d test to vmx_l1d_flush() + - x86/irq: Demote irq_cpustat_t::__softirq_pending to u16 + - x86/KVM/VMX: Introduce per-host-cpu analogue of l1tf_flush_l1d + - x86: Don't include linux/irq.h from asm/hardirq.h + - x86/irq: Let interrupt handlers set kvm_cpu_l1tf_flush_l1d + - x86/KVM/VMX: Don't set l1tf_flush_l1d from vmx_handle_external_intr() + - Documentation/l1tf: Remove Yonah processors from not vulnerable list + - x86/speculation: Simplify sysfs report of VMX L1TF vulnerability + - x86/speculation: Use ARCH_CAPABILITIES to skip L1D flush on vmentry + - KVM: VMX: Tell the nested hypervisor to skip L1D flush on vmentry + - cpu/hotplug: Fix SMT supported evaluation + - x86/speculation/l1tf: Invert all not present mappings + - x86/speculation/l1tf: Make pmd/pud_mknotpresent() invert + - x86/mm/pat: Make set_memory_np() L1TF safe + - x86/mm/kmmio: Make the tracer robust against L1TF + - tools headers: Synchronise x86 cpufeatures.h for L1TF additions + - x86/microcode: Allow late microcode loading with SMT disabled + - x86/smp: fix non-SMP broken build due to redefinition of + apic_id_is_primary_thread + - cpu/hotplug: Non-SMP machines do not make use of booted_once + - x86/init: fix build with CONFIG_SWAP=n + - Linux 4.18.1 + - [Config] updateconfigs after v4.18.1 stable update + * Consider enabling CONFIG_NETWORK_PHY_TIMESTAMPING (LP: #1785816) + - [Config] Enable timestamping in network PHY devices + * Miscellaneous Ubuntu changes + - [Config] CONFIG_SYSCTL_SYSCALL=n + * Rebase to v4.18 + + [ Ubuntu: 4.18.0-4.5 ] + + * Rebase to v4.18-rc8 + + [ Ubuntu: 4.18.0-3.4 ] + + * Suspend fails in Ubuntu and Kubuntu 18.04 but works fine in Ubuntu and + Kubuntu 17.10 (and on Kubuntu 18.04 using kernel 4.14.47) (LP: #1774950) + - ACPI / LPSS: Avoid PM quirks on suspend and resume from hibernation + * hinic interfaces aren't getting predictable names (LP: #1783138) + - hinic: Link the logical network device to the pci device in sysfs + * libvirtd is unable to configure bridge devices inside of LXD containers + (LP: #1784501) + - kernfs: allow creating kernfs objects with arbitrary uid/gid + - sysfs, kobject: allow creating kobject belonging to arbitrary users + - kobject: kset_create_and_add() - fetch ownership info from parent + - driver core: set up ownership of class devices in sysfs + - net-sysfs: require net admin in the init ns for setting tx_maxrate + - net-sysfs: make sure objects belong to container's owner + - net: create reusable function for getting ownership info of sysfs inodes + - bridge: make sure objects belong to container's owner + - sysfs: Fix regression when adding a file to an existing group + * locking sockets broken due to missing AppArmor socket mediation patches + (LP: #1780227) + - UBUNTU SAUCE: apparmor: fix apparmor mediating locking non-fs, unix sockets + * Update2 for ocxl driver (LP: #1781436) + - ocxl: Fix page fault handler in case of fault on dying process + * HDMI/DP audio can't work on the laptop of Dell Latitude 5495 (LP: #1782689) + - ALSA: hda: use PCI_BASE_CLASS_DISPLAY to replace PCI_CLASS_DISPLAY_VGA + - vga_switcheroo: set audio client id according to bound GPU id + * Allow Raven Ridge's audio controller to be runtime suspended (LP: #1782540) + - ALSA: hda: Add AZX_DCAPS_PM_RUNTIME for AMD Raven Ridge + * Invoking obsolete 'firmware_install' target breaks snap build (LP: #1782166) + - snapcraft.yaml: stop invoking the obsolete (and non-existing) + 'firmware_install' target + * snapcraft.yaml: missing ubuntu-retpoline-extract-one script breaks the build + (LP: #1782116) + - snapcraft.yaml: copy retpoline-extract-one to scripts before build + * Rebase to v4.18-rc7 + + [ Ubuntu: 4.18.0-2.3 ] + + * Kernel error "task zfs:pid blocked for more than 120 seconds" (LP: #1781364) + - SAUCE: (noup) zfs to 0.7.9-3ubuntu4 + * [Regression] EXT4-fs error (device sda1): ext4_validate_inode_bitmap:99: + comm stress-ng: Corrupt inode bitmap (LP: #1780137) + - SAUCE: ext4: fix ext4_validate_inode_bitmap: comm stress-ng: Corrupt inode + bitmap + * Cloud-init causes potentially huge boot delays with 4.15 kernels + (LP: #1780062) + - random: Make getrandom() ready earlier + * hisi_sas_v3_hw: internal task abort: timeout and not done. (LP: #1777736) + - scsi: hisi_sas: Update a couple of register settings for v3 hw + * hisi_sas: Add missing PHY spinlock init (LP: #1777734) + - scsi: hisi_sas: Add missing PHY spinlock init + * hisi_sas: improve read performance by pre-allocating slot DMA buffers + (LP: #1777727) + - scsi: hisi_sas: Use dmam_alloc_coherent() + - scsi: hisi_sas: Pre-allocate slot DMA buffers + * hisi_sas: Failures during host reset (LP: #1777696) + - scsi: hisi_sas: Only process broadcast change in phy_bcast_v3_hw() + - scsi: hisi_sas: Fix the conflict between dev gone and host reset + - scsi: hisi_sas: Adjust task reject period during host reset + - scsi: hisi_sas: Add a flag to filter PHY events during reset + - scsi: hisi_sas: Release all remaining resources in clear nexus ha + * Miscellaneous Ubuntu changes + - SAUCE: (noup) Update spl to 0.7.9-3ubuntu2, zfs to 0.7.9-3ubuntu3 + - SAUCE: mm: Fix exports that inadvertently make put_page() EXPORT_SYMBOL_GPL + - Enable zfs build + - SAUCE: Import aufs driver + - Revert "UBUNTU: [Config]: set CONFIG_EDAC_DEBUG=y for ARM64" + - [Config] retpoline -- review and accept retpoline changes + * Rebase to v4.18-rc5 + * Rebase to v4.18-rc6 + + [ Ubuntu: 4.18.0-1.2 ] + + * Rebase to v4.18-rc4 + + [ Ubuntu: 4.18.0-0.1 ] + + * Miscellaneous Ubuntu changes + - ubuntu -- disable vbox build + - Disable zfs build + - SAUCE: (efi-lockdown) Add the ability to lock down access to the running + kernel image + - SAUCE: (efi-lockdown) Add a SysRq option to lift kernel lockdown + - SAUCE: (efi-lockdown) ima: require secure_boot rules in lockdown mode + - SAUCE: (efi-lockdown) Enforce module signatures if the kernel is locked down + - SAUCE: (efi-lockdown) Restrict /dev/{mem,kmem,port} when the kernel is + locked down + - SAUCE: (efi-lockdown) kexec_load: Disable at runtime if the kernel is locked + down + - SAUCE: (efi-lockdown) hibernate: Disable when the kernel is locked down + - SAUCE: (efi-lockdown) uswsusp: Disable when the kernel is locked down + - SAUCE: (efi-lockdown) PCI: Lock down BAR access when the kernel is locked + down + - SAUCE: (efi-lockdown) x86: Lock down IO port access when the kernel is + locked down + - SAUCE: (efi-lockdown) x86/msr: Restrict MSR access when the kernel is locked + down + - SAUCE: (efi-lockdown) ACPI: Limit access to custom_method when the kernel is + locked down + - SAUCE: (efi-lockdown) acpi: Ignore acpi_rsdp kernel param when the kernel + has been locked down + - SAUCE: (efi-lockdown) acpi: Disable ACPI table override if the kernel is + locked down + - SAUCE: (efi-lockdown) acpi: Disable APEI error injection if the kernel is + locked down + - SAUCE: (efi-lockdown) Prohibit PCMCIA CIS storage when the kernel is locked + down + - SAUCE: (efi-lockdown) Lock down TIOCSSERIAL + - SAUCE: (efi-lockdown) Lock down module params that specify hardware + parameters (eg. ioport) + - SAUCE: (efi-lockdown) x86/mmiotrace: Lock down the testmmiotrace module + - SAUCE: (efi-lockdown) Lock down /proc/kcore + - SAUCE: (efi-lockdown) Lock down kprobes + - SAUCE: (efi-lockdown) bpf: Restrict kernel image access functions when the + kernel is locked down + - SAUCE: (efi-lockdown) Lock down perf + - SAUCE: (efi-lockdown) debugfs: Restrict debugfs when the kernel is locked + down + - SAUCE: (efi-lockdown) Copy secure_boot flag in boot params across kexec + reboot + - SAUCE: (efi-lockdown) efi: Add an EFI_SECURE_BOOT flag to indicate secure + boot mode + - SAUCE: (efi-lockdown) efi: Lock down the kernel if booted in secure boot + mode + - SAUCE: (efi-lockdown) KEYS: Allow unrestricted boot-time addition of keys to + secondary keyring + - SAUCE: (efi-lockdown) efi: Add EFI signature data types + - SAUCE: (efi-lockdown) efi: Add an EFI signature blob parser + - SAUCE: (efi-lockdown) MODSIGN: Import certificates from UEFI Secure Boot + - SAUCE: (efi-lockdown) MODSIGN: Allow the "db" UEFI variable to be suppressed + - SAUCE: (efi-lockdown) Make get_cert_list() not complain about cert lists + that aren't present. + - SAUCE: (efi-lockdown) Add efi_status_to_str() and rework + efi_status_to_err(). + - SAUCE: (efi-lockdown) Make get_cert_list() use efi_status_to_str() to print + error messages. + - SAUCE: (efi-lockdown) lockdown: fix coordination of kernel module signature + verification + - SAUCE: (efi-lockdown) efi: Sanitize boot_params in efi stub + - SAUCE: (efi-lockdown) efi: Don't print secure boot state from the efi stub + - SAUCE: (namespace) block_dev: Support checking inode permissions in + lookup_bdev() + - SAUCE: (namespace) block_dev: Check permissions towards block device inode + when mounting + - SAUCE: (namespace) mtd: Check permissions towards mtd block device inode + when mounting + - SAUCE: (namespace) ext4: Add support for unprivileged mounts from user + namespaces + - SAUCE: (namespace) ext4: Add module parameter to enable user namespace + mounts + - SAUCE: (namespace) block_dev: Forbid unprivileged mounting when device is + opened for writing + - SAUCE: Import aufs driver + - Update dropped.txt + - [Config] updateconfigs after 4.18-rc3 rebase + - SAUCE: (no-up): ASoC: Intel: bytcr-rt5660: Remove snd_soc_codec use for 4.18 + * Rebase to v4.18-rc3 + + [ Ubuntu: 4.18.0-0.0 ] + + * Dummy entry. + + -- Marcelo Henrique Cerri Fri, 07 Sep 2018 18:01:04 -0300 + +linux-azure (4.18.0-1000.0) cosmic; urgency=medium + + * Kernel 4.18. + + -- Marcelo Henrique Cerri Fri, 07 Sep 2018 14:41:00 -0300 + +linux-azure (4.17.0-1001.1) cosmic; urgency=medium + + * linux-azure: 4.17.0-1001.1 -proposed tracker (LP: #1783766) + + * Miscellaneous Ubuntu changes + - [Config] updateconfigs after rebase to Ubuntu-4.17.0-4.5 + - [Config] updateconfigs after rebase to Ubuntu-4.17.0-6.7 + + [ Ubuntu: 4.17.0-6.7 ] + + * linux: 4.17.0-6.7 -proposed tracker (LP: #1783396) + * [Regression] EXT4-fs error (device sda2): ext4_validate_block_bitmap:383: + comm stress-ng: bg 4705: bad block bitmap checksum (LP: #1781709) + - SAUCE: Revert "UBUNTU: SAUCE: ext4: fix ext4_validate_inode_bitmap: comm + stress-ng: Corrupt inode bitmap" + - SAUCE: ext4: check for allocation block validity with block group locked + * Cosmic update to 4.17.9 stable release (LP: #1783201) + - userfaultfd: hugetlbfs: fix userfaultfd_huge_must_wait() pte access + - mm: hugetlb: yield when prepping struct pages + - mm: teach dump_page() to correctly output poisoned struct pages + - PCI / ACPI / PM: Resume bridges w/o drivers on suspend-to-RAM + - ACPICA: Drop leading newlines from error messages + - ACPI / battery: Safe unregistering of hooks + - drm/amdgpu: Make struct amdgpu_atif private to amdgpu_acpi.c + - tracing: Avoid string overflow + - tracing: Fix missing return symbol in function_graph output + - scsi: sg: mitigate read/write abuse + - scsi: aacraid: Fix PD performance regression over incorrect qd being set + - scsi: target: Fix truncated PR-in ReadKeys response + - s390: Correct register corruption in critical section cleanup + - drbd: fix access after free + - vfio: Use get_user_pages_longterm correctly + - ARM: dts: imx51-zii-rdu1: fix touchscreen pinctrl + - ARM: dts: omap3: Fix am3517 mdio and emac clock references + - ARM: dts: dra7: Disable metastability workaround for USB2 + - cifs: Fix use after free of a mid_q_entry + - cifs: Fix memory leak in smb2_set_ea() + - cifs: Fix slab-out-of-bounds in send_set_info() on SMB2 ACE setting + - cifs: Fix infinite loop when using hard mount option + - drm: Use kvzalloc for allocating blob property memory + - drm/udl: fix display corruption of the last line + - drm/amdgpu: Add amdgpu_atpx_get_dhandle() + - drm/amdgpu: Dynamically probe for ATIF handle (v2) + - jbd2: don't mark block as modified if the handle is out of credits + - ext4: add corruption check in ext4_xattr_set_entry() + - ext4: always verify the magic number in xattr blocks + - ext4: make sure bitmaps and the inode table don't overlap with bg + descriptors + - ext4: always check block group bounds in ext4_init_block_bitmap() + - ext4: only look at the bg_flags field if it is valid + - ext4: verify the depth of extent tree in ext4_find_extent() + - ext4: include the illegal physical block in the bad map ext4_error msg + - ext4: clear i_data in ext4_inode_info when removing inline data + - ext4: never move the system.data xattr out of the inode body + - ext4: avoid running out of journal credits when appending to an inline file + - ext4: add more inode number paranoia checks + - ext4: add more mount time checks of the superblock + - ext4: check superblock mapped prior to committing + - HID: i2c-hid: Fix "incomplete report" noise + - HID: hiddev: fix potential Spectre v1 + - HID: debug: check length before copy_to_user() + - HID: core: allow concurrent registration of drivers + - i2c: core: smbus: fix a potential missing-check bug + - i2c: smbus: kill memory leak on emulated and failed DMA SMBus xfers + - fs: allow per-device dax status checking for filesystems + - dax: change bdev_dax_supported() to support boolean returns + - dax: check for QUEUE_FLAG_DAX in bdev_dax_supported() + - dm: prevent DAX mounts if not supported + - mtd: cfi_cmdset_0002: Change definition naming to retry write operation + - mtd: cfi_cmdset_0002: Change erase functions to retry for error + - mtd: cfi_cmdset_0002: Change erase functions to check chip good only + - netfilter: nf_log: don't hold nf_log_mutex during user access + - staging: comedi: quatech_daqp_cs: fix no-op loop daqp_ao_insn_write() + - Revert mm/vmstat.c: fix vmstat_update() preemption BUG + - Linux 4.17.6 + - bpf: reject passing modified ctx to helper functions + - MIPS: Call dump_stack() from show_regs() + - MIPS: Use async IPIs for arch_trigger_cpumask_backtrace() + - MIPS: Fix ioremap() RAM check + - drm/etnaviv: Check for platform_device_register_simple() failure + - drm/etnaviv: Fix driver unregistering + - drm/etnaviv: bring back progress check in job timeout handler + - ACPICA: Clear status of all events when entering S5 + - mmc: sdhci-esdhc-imx: allow 1.8V modes without 100/200MHz pinctrl states + - mmc: dw_mmc: fix card threshold control configuration + - mmc: renesas_sdhi_internal_dmac: Cannot clear the RX_IN_USE in abort + - ibmasm: don't write out of bounds in read handler + - staging: rtl8723bs: Prevent an underflow in rtw_check_beacon_data(). + - staging: r8822be: Fix RTL8822be can't find any wireless AP + - ata: Fix ZBC_OUT command block check + - ata: Fix ZBC_OUT all bit handling + - mei: discard messages from not connected client during power down. + - mtd: spi-nor: cadence-quadspi: Fix direct mode write timeouts + - tracing/kprobe: Release kprobe print_fmt properly + - vmw_balloon: fix inflation with batching + - ahci: Add Intel Ice Lake LP PCI ID + - ahci: Disable LPM on Lenovo 50 series laptops with a too old BIOS + - thunderbolt: Notify userspace when boot_acl is changed + - USB: serial: ch341: fix type promotion bug in ch341_control_in() + - USB: serial: cp210x: add another USB ID for Qivicon ZigBee stick + - USB: serial: keyspan_pda: fix modem-status error handling + - USB: yurex: fix out-of-bounds uaccess in read handler + - USB: serial: mos7840: fix status-register error handling + - usb: quirks: add delay quirks for Corsair Strafe + - xhci: xhci-mem: off by one in xhci_stream_id_to_ring() + - Fix up non-directory creation in SGID directories + - mm: zero unavailable pages before memmap init + - ALSA: hda/realtek - two more lenovo models need fixup of MIC_LOCATION + - ALSA: hda - Handle pm failure during hotplug + - mm: do not drop unused pages when userfaultd is running + - fs/proc/task_mmu.c: fix Locked field in /proc/pid/smaps* + - x86/purgatory: add missing FORCE to Makefile target + - fs, elf: make sure to page align bss in load_elf_library + - mm: do not bug_on on incorrect length in __mm_populate() + - tracing: Reorder display of TGID to be after PID + - kbuild: delete INSTALL_FW_PATH from kbuild documentation + - acpi, nfit: Fix scrub idle detection + - arm64: neon: Fix function may_use_simd() return error status + - tools build: fix # escaping in .cmd files for future Make + - IB/hfi1: Fix incorrect mixing of ERR_PTR and NULL return values + - i2c: tegra: Fix NACK error handling + - i2c: recovery: if possible send STOP with recovery pulses + - iw_cxgb4: correctly enforce the max reg_mr depth + - xen: remove global bit from __default_kernel_pte_mask for pv guests + - xen: setup pv irq ops vector earlier + - bsg: fix bogus EINVAL on non-data commands + - crypto: x86/salsa20 - remove x86 salsa20 implementations + - uprobes/x86: Remove incorrect WARN_ON() in uprobe_init_insn() + - netfilter: nf_queue: augment nfqa_cfg_policy + - crypto: don't optimize keccakf() + - netfilter: x_tables: initialise match/target check parameter struct + - loop: add recursion validation to LOOP_CHANGE_FD + - xfs: fix inobt magic number check + - PM / hibernate: Fix oops at snapshot_write() + - RDMA/ucm: Mark UCM interface as BROKEN + - loop: remember whether sysfs_create_group() was done + - kvm: vmx: Nested VM-entry prereqs for event inj. + - f2fs: give message and set need_fsck given broken node id + - f2fs: avoid bug_on on corrupted inode + - f2fs: sanity check on sit entry + - f2fs: sanity check for total valid node blocks + - ARM: dts: armada-38x: use the new thermal binding + - Linux 4.17.7 + - mm: don't do zero_resv_unavail if memmap is not allocated + - Linux 4.17.8 + - compiler-gcc.h: Add __attribute__((gnu_inline)) to all inline declarations + - x86/asm: Add _ASM_ARG* constants for argument registers to + - x86/paravirt: Make native_save_fl() extern inline + - pinctrl: sh-pfc: r8a77970: remove SH_PFC_PIN_CFG_DRIVE_STRENGTH flag + - pinctrl: mt7622: fix error path on failing at groups building + - pinctrl: mt7622: stop using the deprecated pinctrl_add_gpio_range + - pinctrl: mt7622: fix a kernel panic when gpio-hog is being applied + - alx: take rtnl before calling __alx_open from resume + - atm: Preserve value of skb->truesize when accounting to vcc + - atm: zatm: Fix potential Spectre v1 + - hv_netvsc: split sub-channel setup into async and sync + - ipv6: sr: fix passing wrong flags to crypto_alloc_shash() + - ipvlan: fix IFLA_MTU ignored on NEWLINK + - ixgbe: split XDP_TX tail and XDP_REDIRECT map flushing + - net: dccp: avoid crash in ccid3_hc_rx_send_feedback() + - net: dccp: switch rx_tstamp_last_feedback to monotonic clock + - net: fix use-after-free in GRO with ESP + - net: macb: Fix ptp time adjustment for large negative delta + - net/mlx5e: Avoid dealing with vport representors if not being e-switch + manager + - net/mlx5e: Don't attempt to dereference the ppriv struct if not being + eswitch manager + - net/mlx5: E-Switch, Avoid setup attempt if not being e-switch manager + - net/mlx5: Fix command interface race in polling mode + - net/mlx5: Fix incorrect raw command length parsing + - net/mlx5: Fix required capability for manipulating MPFS + - net/mlx5: Fix wrong size allocation for QoS ETC TC regitster + - net: mvneta: fix the Rx desc DMA address in the Rx path + - net/packet: fix use-after-free + - net/sched: act_ife: fix recursive lock and idr leak + - net/sched: act_ife: preserve the action control in case of error + - net_sched: blackhole: tell upper qdisc about dropped packets + - net: sungem: fix rx checksum support + - net/tcp: Fix socket lookups with SO_BINDTODEVICE + - qede: Adverstise software timestamp caps when PHC is not available. + - qed: Fix setting of incorrect eswitch mode. + - qed: Fix use of incorrect size in memcpy call. + - qed: Limit msix vectors in kdump kernel to the minimum required count. + - qmi_wwan: add support for the Dell Wireless 5821e module + - r8152: napi hangup fix after disconnect + - s390/qeth: don't clobber buffer on async TX completion + - stmmac: fix DMA channel hang in half-duplex mode + - strparser: Remove early eaten to fix full tcp receive buffer stall + - tcp: fix Fast Open key endianness + - tcp: prevent bogus FRTO undos with non-SACK flows + - vhost_net: validate sock before trying to put its fd + - VSOCK: fix loopback on big-endian systems + - hinic: reset irq affinity before freeing irq + - nfp: flower: fix mpls ether type detection + - net: macb: initialize bp->queues[0].bp for at91rm9200 + - net: use dev_change_tx_queue_len() for SIOCSIFTXQLEN + - nfp: reject binding to shared blocks + - xen-netfront: Fix mismatched rtnl_unlock + - xen-netfront: Update features after registering netdev + - enic: do not overwrite error code + - i40e: split XDP_TX tail and XDP_REDIRECT map flushing + - IB/mlx5: Avoid dealing with vport representors if not being e-switch manager + - Revert "s390/qeth: use Read device to query hypervisor for MAC" + - s390/qeth: avoid using is_multicast_ether_addr_64bits on (u8 *)[6] + - s390/qeth: fix race when setting MAC address + - sfc: correctly initialise filter rwsem for farch + - virtio_net: split XDP_TX kick and XDP_REDIRECT map flushing + - x86/kvm/Kconfig: Ensure CRYPTO_DEV_CCP_DD state at minimum matches KVM_AMD + - net: cxgb3_main: fix potential Spectre v1 + - rtlwifi: Fix kernel Oops "Fw download fail!!" + - rtlwifi: rtl8821ae: fix firmware is not ready to run + - net: lan78xx: Fix race in tx pending skb size calculation + - crypto: af_alg - Initialize sg_num_bytes in error code path + - PCI: hv: Disable/enable IRQs rather than BH in hv_compose_msi_msg() + - netfilter: ebtables: reject non-bridge targets + - reiserfs: fix buffer overflow with long warning messages + - KEYS: DNS: fix parsing multiple options + - tls: Stricter error checking in zerocopy sendmsg path + - autofs: fix slab out of bounds read in getname_kernel() + - nsh: set mac len based on inner packet + - netfilter: ipv6: nf_defrag: drop skb dst before queueing + - bdi: Fix another oops in wb_workfn() + - bpf: reject any prog that failed read-only lock + - rds: avoid unenecessary cong_update in loop transport + - block: don't use blocking queue entered for recursive bio submits + - bpf: sockmap, fix crash when ipv6 sock is added + - bpf: sockmap, consume_skb in close path + - bpf: don't leave partial mangled prog in jit_subprogs error path + - net/nfc: Avoid stalls when nfc_alloc_send_skb() returned NULL. + - ipvs: initialize tbl->entries after allocation + - ipvs: initialize tbl->entries in ip_vs_lblc_init_svc() + - arm/arm64: smccc: Add SMCCC-specific return codes + - arm64: Call ARCH_WORKAROUND_2 on transitions between EL0 and EL1 + - arm64: Add per-cpu infrastructure to call ARCH_WORKAROUND_2 + - arm64: Add ARCH_WORKAROUND_2 probing + - arm64: Add 'ssbd' command-line option + - arm64: ssbd: Add global mitigation state accessor + - arm64: ssbd: Skip apply_ssbd if not using dynamic mitigation + - arm64: ssbd: Restore mitigation status on CPU resume + - arm64: ssbd: Introduce thread flag to control userspace mitigation + - arm64: ssbd: Add prctl interface for per-thread mitigation + - arm64: KVM: Add HYP per-cpu accessors + - arm64: KVM: Add ARCH_WORKAROUND_2 support for guests + - arm64: KVM: Handle guest's ARCH_WORKAROUND_2 requests + - arm64: KVM: Add ARCH_WORKAROUND_2 discovery through ARCH_FEATURES_FUNC_ID + - bpf: enforce correct alignment for instructions + - bpf, arm32: fix to use bpf_jit_binary_lock_ro api + - bpf: undo prog rejection on read-only lock failure + - Linux 4.17.9 + * linux 4.17.0-5 fails to build on ppc64el with gcc-8 (LP: #1783167) + - kbuild: add macro for controlling warnings to linux/compiler.h + - disable -Wattribute-alias warning for SYSCALL_DEFINEx() + - powerpc/64: Fix strncpy() related build failures with GCC 8.1 + * Kernel error "task zfs:pid blocked for more than 120 seconds" (LP: #1781364) + - SAUCE: (noup) zfs to 0.7.9-3ubuntu4 + * [Regression] EXT4-fs error (device sda1): ext4_validate_inode_bitmap:99: + comm stress-ng: Corrupt inode bitmap (LP: #1780137) + - SAUCE: ext4: fix ext4_validate_inode_bitmap: comm stress-ng: Corrupt inode + bitmap + * Miscellaneous Ubuntu changes + - SAUCE: (noup) Update spl to 0.7.9-3ubuntu2, zfs to 0.7.9-3ubuntu3 + - ABI: ib_ucm is being dropped upstream + - ABI: salsa20-{x86_64,i586} modules are no longer upstream + - [Config] updateconfigs after applying stable fixes + - [Config] retpoline -- review and accept retpoline changes + * Miscellaneous upstream changes + - Revert "UBUNTU: [Config]: set CONFIG_EDAC_DEBUG=y for ARM64" + + [ Ubuntu: 4.17.0-5.6 ] + + * linux: 4.17.0-5.6 -proposed tracker (LP: #1780956) + * Cloud-init causes potentially huge boot delays with 4.15 kernels + (LP: #1780062) + - random: Make getrandom() ready earlier + * xhci_hcd 0000:00:14.0: Root hub is not suspended (LP: #1779823) + - usb: xhci: dbc: Don't decrement runtime PM counter if DBC is not started + * hisi_sas_v3_hw: internal task abort: timeout and not done. (LP: #1777736) + - scsi: hisi_sas: Update a couple of register settings for v3 hw + * hisi_sas: Add missing PHY spinlock init (LP: #1777734) + - scsi: hisi_sas: Add missing PHY spinlock init + * hisi_sas: improve read performance by pre-allocating slot DMA buffers + (LP: #1777727) + - scsi: hisi_sas: use dma_zalloc_coherent() + - scsi: hisi_sas: Use dmam_alloc_coherent() + - scsi: hisi_sas: Pre-allocate slot DMA buffers + * hisi_sas: Failures during host reset (LP: #1777696) + - scsi: hisi_sas: Only process broadcast change in phy_bcast_v3_hw() + - scsi: hisi_sas: Fix the conflict between dev gone and host reset + - scsi: hisi_sas: Adjust task reject period during host reset + - scsi: hisi_sas: Add a flag to filter PHY events during reset + - scsi: hisi_sas: Release all remaining resources in clear nexus ha + * Cosmic update to v4.17.5 stable release (LP: #1780833) + - usb: cdc_acm: Add quirk for Uniden UBC125 scanner + - USB: serial: cp210x: add CESINEL device ids + - USB: serial: cp210x: add Silicon Labs IDs for Windows Update + - usb: dwc2: fix the incorrect bitmaps for the ports of multi_tt hub + - usb: typec: tcpm: fix logbuffer index is wrong if _tcpm_log is re-entered + - acpi: Add helper for deactivating memory region + - usb: typec: ucsi: acpi: Workaround for cache mode issue + - usb: typec: ucsi: Fix for incorrect status data issue + - xhci: Fix kernel oops in trace_xhci_free_virt_device + - n_tty: Fix stall at n_tty_receive_char_special(). + - n_tty: Access echo_* variables carefully. + - staging: android: ion: Return an ERR_PTR in ion_map_kernel + - iio: mma8452: Fix ignoring MMA8452_INT_DRDY + - serial: 8250_pci: Remove stalled entries in blacklist + - serdev: fix memleak on module unload + - vt: prevent leaking uninitialized data to userspace via /dev/vcs* + - drm/amdgpu: Add APU support in vi_set_uvd_clocks + - drm/amdgpu: Add APU support in vi_set_vce_clocks + - drm/amdgpu: fix the missed vcn fw version report + - drm/amdgpu: Grab/put runtime PM references in atomic_commit_tail() + - drm/amdgpu: fix clear_all and replace handling in the VM (v2) + - drm/sti: Depend on OF rather than selecting it + - drm/amd/display: Clear connector's edid pointer + - drm/i915/dp: Send DPCD ON for MST before phy_up + - drm/qxl: Call qxl_bo_unref outside atomic context + - drm/atmel-hlcdc: check stride values in the first plane + - Revert "drm/sun4i: Handle DRM_BUS_FLAG_PIXDATA_*EDGE" + - drm/amdgpu: Don't default to DC support for Kaveri and older + - drm/amdgpu: Use kvmalloc_array for allocating VRAM manager nodes array + - drm/amdgpu: Refactor amdgpu_vram_mgr_bo_invisible_size helper + - drm/amdgpu: Make amdgpu_vram_mgr_bo_invisible_size always accurate + - drm/amdgpu: Update pin_size values before unpinning BO + - drm/amdgpu: GPU vs CPU page size fixes in amdgpu_vm_bo_split_mapping + - drm/amdgpu: Count disabled CRTCs in commit tail earlier + - drm/amd/display: release spinlock before committing updates to stream + - drm/i915: Allow DBLSCAN user modes with eDP/LVDS/DSI + - drm/i915: Fix PIPESTAT irq ack on i965/g4x + - drm/i915: Disallow interlaced modes on g4x DP outputs + - drm/i915: Turn off g4x DP port in .post_disable() + - drm/i915: Enable provoking vertex fix on Gen9 systems. + - netfilter: ip6t_rpfilter: provide input interface for route lookup + - netfilter: xt_connmark: fix list corruption on rmmod + - netfilter: nf_tables: use WARN_ON_ONCE instead of BUG_ON in nft_do_chain() + - ARM64: dts: meson-gxl-s905x-p212: Add phy-supply for usb0 + - x86/mm: Don't free P4D table when it is folded at runtime + - ARM: dts: imx6q: Use correct SDMA script for SPI5 core + - Linux 4.17.5 + * Cosmic update to v4.17.4 stable release (LP: #1780832) + - x86/spectre_v1: Disable compiler optimizations over + array_index_mask_nospec() + - x86/xen: Add call of speculative_store_bypass_ht_init() to PV paths + - x86/platform/UV: Add adjustable set memory block size function + - x86/platform/UV: Use new set memory block size function + - x86/platform/UV: Add kernel parameter to set memory block size + - x86/mce: Improve error message when kernel cannot recover + - x86/mce: Check for alternate indication of machine check recovery on Skylake + - x86/mce: Fix incorrect "Machine check from unknown source" message + - x86/mce: Do not overwrite MCi_STATUS in mce_no_way_out() + - x86: Call fixup_exception() before notify_die() in math_error() + - m68k/mm: Adjust VM area to be unmapped by gap size for __iounmap() + - m68k/mac: Fix SWIM memory resource end address + - platform/chrome: cros_ec_lpc: do not try DMI match when ACPI device found + - hwmon: (k10temp) Add support for Stoney Ridge and Bristol Ridge CPUs + - mtd: spi-nor: intel-spi: Fix atomic sequence handling + - serial: sh-sci: Use spin_{try}lock_irqsave instead of open coding version + - signal/xtensa: Consistenly use SIGBUS in do_unaligned_user + - PM / Domains: Fix error path during attach in genpd + - PCI / PM: Do not clear state_saved for devices that remain suspended + - ACPI / LPSS: Avoid PM quirks on suspend and resume from S3 + - PM / core: Fix supplier device runtime PM usage counter imbalance + - PM / OPP: Update voltage in case freq == old_freq + - mmc: renesas_sdhi: really fix WP logic regressions + - usb: do not reset if a low-speed or full-speed device timed out + - 1wire: family module autoload fails because of upper/lower case mismatch. + - ASoC: dapm: delete dapm_kcontrol_data paths list before freeing it + - ASoC: cs35l35: Add use_single_rw to regmap config + - ASoC: mediatek: preallocate pages use platform device + - ASoC: cirrus: i2s: Fix LRCLK configuration + - ASoC: cirrus: i2s: Fix {TX|RX}LinCtrlData setup + - thermal: bcm2835: Stop using printk format %pCr + - clk: renesas: cpg-mssr: Stop using printk format %pCr + - lib/vsprintf: Remove atomic-unsafe support for %pCr + - ftrace/selftest: Have the reset_trigger code be a bit more careful + - mips: ftrace: fix static function graph tracing + - branch-check: fix long->int truncation when profiling branches + - ipmi:bt: Set the timeout before doing a capabilities check + - Bluetooth: hci_qca: Avoid missing rampatch failure with userspace fw loader + - printk: fix possible reuse of va_list variable + - fuse: fix congested state leak on aborted connections + - fuse: atomic_o_trunc should truncate pagecache + - fuse: don't keep dead fuse_conn at fuse_fill_super(). + - fuse: fix control dir setup and teardown + - powerpc/mm/hash: Add missing isync prior to kernel stack SLB switch + - powerpc/pkeys: Detach execute_only key on !PROT_EXEC + - powerpc/ptrace: Fix setting 512B aligned breakpoints with + PTRACE_SET_DEBUGREG + - powerpc/ptrace: Fix enforcement of DAWR constraints + - powerpc/powernv/ioda2: Remove redundant free of TCE pages + - powerpc/powernv: copy/paste - Mask SO bit in CR + - cpuidle: powernv: Fix promotion from snooze if next state disabled + - powerpc/fadump: Unregister fadump on kexec down path. + - libnvdimm, pmem: Do not flush power-fail protected CPU caches + - soc: rockchip: power-domain: Fix wrong value when power up pd with writemask + - powerpc/64s/radix: Fix radix_kvm_prefetch_workaround paca access of not + possible CPU + - powerpc/e500mc: Set assembler machine type to e500mc + - powerpc/64s: Fix DT CPU features Power9 DD2.1 logic + - ARM: 8764/1: kgdb: fix NUMREGBYTES so that gdb_regs[] is the correct size + - ARM: dts: sun8i: h3: fix ALL-H3-CC H3 ver VDD-CPUX voltage + - ARM: dts: sun8i: h3: fix ALL-H3-CC H3 ver VCC-1V2 regulator voltage + - ARM: dts: Fix SPI node for Arria10 + - ARM: dts: socfpga: Fix NAND controller node compatible + - ARM: dts: socfpga: Fix NAND controller clock supply + - ARM: dts: socfpga: Fix NAND controller node compatible for Arria10 + - hwrng: core - Always drop the RNG in hwrng_unregister() + - softirq: Reorder trace_softirqs_on to prevent lockdep splat + - arm64: Fix syscall restarting around signal suppressed by tracer + - crypto: arm64/aes-blk - fix and move skcipher_walk_done out of + kernel_neon_begin, _end + - arm64: kpti: Use early_param for kpti= command-line option + - arm64: mm: Ensure writes to swapper are ordered wrt subsequent cache + maintenance + - arm64: dts: marvell: fix CP110 ICU node size + - arm64: dts: stratix10: Fix SPI nodes for Stratix10 + - ARM64: dts: meson: disable sd-uhs modes on the libretech-cc + - ARM64: dts: meson-gx: fix ATF reserved memory region + - of: overlay: validate offset from property fixups + - of: unittest: for strings, account for trailing \0 in property length field + - of: platform: stop accessing invalid dev in of_platform_device_destroy + - tpm: fix use after free in tpm2_load_context() + - tpm: fix race condition in tpm_common_write() + - efi/libstub/tpm: Initialize efi_physical_addr_t vars to zero for mixed mode + - IB/qib: Fix DMA api warning with debug kernel + - IB/{hfi1, qib}: Add handling of kernel restart + - IB/mlx4: Mark user MR as writable if actual virtual memory is writable + - IB/core: Make testing MR flags for writability a static inline function + - IB/mlx5: Fetch soft WQE's on fatal error state + - IB/isert: Fix for lib/dma_debug check_sync warning + - IB/isert: fix T10-pi check mask setting + - IB/hfi1: Fix fault injection init/exit issues + - IB/hfi1: Reorder incorrect send context disable + - IB/hfi1: Optimize kthread pointer locking when queuing CQ entries + - IB/hfi1: Fix user context tail allocation for DMA_RTAIL + - IB/uverbs: Fix ordering of ucontext check in ib_uverbs_write + - RDMA/mlx4: Discard unknown SQP work requests + - xprtrdma: Return -ENOBUFS when no pages are available + - RDMA/core: Save kernel caller name when creating CQ using ib_create_cq() + - mtd: rawnand: Do not check FAIL bit when executing a SET_FEATURES op + - mtd: cfi_cmdset_0002: Change write buffer to check correct value + - mtd: rawnand: denali_dt: set clk_x_rate to 200 MHz unconditionally + - mtd: rawnand: fix return value check for bad block status + - mtd: rawnand: mxc: set spare area size register explicitly + - mtd: rawnand: micron: add ONFI_FEATURE_ON_DIE_ECC to supported features + - mtd: rawnand: All AC chips have a broken GET_FEATURES(TIMINGS). + - mtd: cfi_cmdset_0002: Use right chip in do_ppb_xxlock() + - mtd: cfi_cmdset_0002: fix SEGV unlocking multiple chips + - mtd: cfi_cmdset_0002: Fix unlocking requests crossing a chip boudary + - mtd: cfi_cmdset_0002: Avoid walking all chips when unlocking. + - MIPS: BCM47XX: Enable 74K Core ExternalSync for PCIe erratum + - clk:aspeed: Fix reset bits for PCI/VGA and PECI + - PCI: hv: Make sure the bus domain is really unique + - PCI: Add ACS quirk for Intel 7th & 8th Gen mobile + - PCI: Add ACS quirk for Intel 300 series + - PCI: pciehp: Clear Presence Detect and Data Link Layer Status Changed on + resume + - PCI: Account for all bridges on bus when distributing bus numbers + - auxdisplay: fix broken menu + - pinctrl: armada-37xx: Fix spurious irq management + - pinctrl: samsung: Correct EINTG banks order + - pinctrl: devicetree: Fix pctldev pointer overwrite + - cpufreq: intel_pstate: Fix scaling max/min limits with Turbo 3.0 + - MIPS: pb44: Fix i2c-gpio GPIO descriptor table + - MIPS: io: Add barrier after register read in inX() + - time: Make sure jiffies_to_msecs() preserves non-zero time periods + - irqchip/gic-v3-its: Don't bind LPI to unavailable NUMA node + - locking/rwsem: Fix up_read_non_owner() warning with DEBUG_RWSEMS + - X.509: unpack RSA signatureValue field from BIT STRING + - Btrfs: fix return value on rename exchange failure + - iio: adc: ad7791: remove sample freq sysfs attributes + - iio: sca3000: Fix an error handling path in 'sca3000_probe()' + - mm: fix __gup_device_huge vs unmap + - scsi: scsi_debug: Fix memory leak on module unload + - scsi: hpsa: disable device during shutdown + - scsi: qla2xxx: Delete session for nport id change + - scsi: qla2xxx: Fix setting lower transfer speed if GPSC fails + - scsi: qla2xxx: Mask off Scope bits in retry delay + - scsi: qla2xxx: Spinlock recursion in qla_target + - scsi: zfcp: fix missing SCSI trace for result of eh_host_reset_handler + - scsi: zfcp: fix missing SCSI trace for retry of abort / scsi_eh TMF + - scsi: zfcp: fix misleading REC trigger trace where erp_action setup failed + - scsi: zfcp: fix missing REC trigger trace on terminate_rport_io early return + - scsi: zfcp: fix missing REC trigger trace on terminate_rport_io for + ERP_FAILED + - scsi: zfcp: fix missing REC trigger trace for all objects in ERP_FAILED + - scsi: zfcp: fix missing REC trigger trace on enqueue without ERP thread + - linvdimm, pmem: Preserve read-only setting for pmem devices + - libnvdimm, pmem: Unconditionally deep flush on *sync + - clk: meson: meson8b: mark fclk_div2 gate clocks as CLK_IS_CRITICAL + - clk: at91: PLL recalc_rate() now using cached MUL and DIV values + - rtc: sun6i: Fix bit_idx value for clk_register_gate + - md: fix two problems with setting the "re-add" device state. + - rpmsg: smd: do not use mananged resources for endpoints and channels + - ubi: fastmap: Cancel work upon detach + - ubi: fastmap: Correctly handle interrupted erasures in EBA + - UBIFS: Fix potential integer overflow in allocation + - backlight: as3711_bl: Fix Device Tree node lookup + - backlight: max8925_bl: Fix Device Tree node lookup + - backlight: tps65217_bl: Fix Device Tree node lookup + - Revert "iommu/amd_iommu: Use CONFIG_DMA_DIRECT_OPS=y and + dma_direct_{alloc,free}()" + - f2fs: don't use GFP_ZERO for page caches + - um: Fix initialization of vector queues + - um: Fix raw interface options + - mfd: twl-core: Fix clock initialization + - mfd: intel-lpss: Program REMAP register in PIO mode + - mfd: intel-lpss: Fix Intel Cannon Lake LPSS I2C input clock + - remoteproc: Prevent incorrect rproc state on xfer mem ownership failure + - arm: dts: mt7623: fix invalid memory node being generated + - perf tools: Fix symbol and object code resolution for vdso32 and vdsox32 + - perf intel-pt: Fix sync_switch INTEL_PT_SS_NOT_TRACING + - perf intel-pt: Fix decoding to accept CBR between FUP and corresponding TIP + - perf intel-pt: Fix MTC timing after overflow + - perf intel-pt: Fix "Unexpected indirect branch" error + - perf intel-pt: Fix packet decoding of CYC packets + - media: vsp1: Release buffers for each video node + - Revert "UBUNTU: SAUCE: media: uvcvideo: Support realtek's UVC 1.5 device" + - media: cx231xx: Ignore an i2c mux adapter + - media: v4l2-compat-ioctl32: prevent go past max size + - media: rc: mce_kbd decoder: fix stuck keys + - media: dvb_frontend: fix locking issues at dvb_frontend_get_event() + - nfsd: restrict rd_maxcount to svc_max_payload in nfsd_encode_readdir + - NFSv4: Fix possible 1-byte stack overflow in + nfs_idmap_read_and_verify_message + - NFSv4: Revert commit 5f83d86cf531d ("NFSv4.x: Fix wraparound issues..") + - NFSv4: Fix a typo in nfs41_sequence_process + - video: uvesafb: Fix integer overflow in allocation + - ACPI / LPSS: Add missing prv_offset setting for byt/cht PWM devices + - Input: silead - add MSSL0002 ACPI HID + - Input: elan_i2c - add ELAN0618 (Lenovo v330 15IKB) ACPI ID + - pwm: lpss: platform: Save/restore the ctrl register over a suspend/resume + - rbd: flush rbd_dev->watch_dwork after watch is unregistered + - mm/ksm.c: ignore STABLE_FLAG of rmap_item->address in rmap_walk_ksm() + - mm: fix devmem_is_allowed() for sub-page System RAM intersections + - tracing: Check for no filter when processing event filters + - xen: Remove unnecessary BUG_ON from __unbind_from_irq() + - net: ethernet: fix suspend/resume in davinci_emac + - udf: Detect incorrect directory size + - Input: xpad - fix GPD Win 2 controller name + - Input: psmouse - fix button reporting for basic protocols + - Input: elan_i2c_smbus - fix more potential stack buffer overflows + - Input: elantech - enable middle button of touchpads on ThinkPad P52 + - Input: elantech - fix V4 report decoding for module with middle key + - ALSA: timer: Fix UBSAN warning at SNDRV_TIMER_IOCTL_NEXT_DEVICE ioctl + - ALSA: hda - Force to link down at runtime suspend on ATI/AMD HDMI + - ALSA: hda/realtek - Fix pop noise on Lenovo P50 & co + - ALSA: hda/realtek - Add a quirk for FSC ESPRIMO U9210 + - ALSA: hda/realtek - Fix the problem of two front mics on more machines + - Revert "i2c: algo-bit: init the bus to a known state" + - i2c: gpio: initialize SCL to HIGH again + - slub: fix failure when we delete and create a slab cache + - kasan: depend on CONFIG_SLUB_DEBUG + - dm: use bio_split() when splitting out the already processed bio + - pmem: only set QUEUE_FLAG_DAX for fsdax mode + - block: Fix transfer when chunk sectors exceeds max + - block: Fix cloning of requests with a special payload + - x86/e820: put !E820_TYPE_RAM regions into memblock.reserved + - selinux: move user accesses in selinuxfs out of locked regions + - x86/entry/64/compat: Fix "x86/entry/64/compat: Preserve r8-r11 in int $0x80" + - x86/efi: Fix efi_call_phys_epilog() with CONFIG_X86_5LEVEL=y + - dm zoned: avoid triggering reclaim from inside dmz_map() + - dm thin: handle running out of data space vs concurrent discard + - virt: vbox: Only copy_from_user the request-header once + - Linux 4.17.4 + * Support AverMedia DVD EZMaker 7 USB video capture dongle (LP: #1620762) // + Cosmic update to v4.17.4 stable release (LP: #1780832) + - media: cx231xx: Add support for AverMedia DVD EZMaker 7 + + [ Ubuntu: 4.17.0-4.5 ] + + * linux: 4.17.0-4.5 -proposed tracker (LP: #1779399) + * Update to ocxl driver for 18.04.1 (LP: #1775786) + - powerpc: Add TIDR CPU feature for POWER9 + - powerpc: Use TIDR CPU feature to control TIDR allocation + - powerpc: use task_pid_nr() for TID allocation + - ocxl: Rename pnv_ocxl_spa_remove_pe to clarify it's action + - ocxl: Expose the thread_id needed for wait on POWER9 + - ocxl: Add an IOCTL so userspace knows what OCXL features are available + - ocxl: Document new OCXL IOCTLs + - ocxl: Fix missing unlock on error in afu_ioctl_enable_p9_wait() + * Please include ax88179_178a and r8152 modules in d-i udeb (LP: #1771823) + - [Config:] d-i: Add ax88179_178a and r8152 to nic-modules + * glibc pkeys test fail on powerpc (LP: #1776967) + - [Config] Temporarily disable CONFIG_PPC_MEM_KEYS + * After update to 4.13-43 Intel Graphics are Laggy (LP: #1773520) + - Revert "drm/i915/edp: Allow alternate fixed mode for eDP if available." + * Miscellaneous Ubuntu changes + - SAUCE: (noup) Update spl to 0.7.9-3ubuntu1, zfs to 0.7.9-3ubuntu1 + + [ Ubuntu: 4.17.0-3.4 ] + + * linux: 4.17.0-3.4 -proposed tracker (LP: #1779124) + * Cosmic update to v4.17.3 stable release (LP: #1778997) + - net: aquantia: fix unsigned numvecs comparison with less than zero + - bonding: re-evaluate force_primary when the primary slave name changes + - cdc_ncm: avoid padding beyond end of skb + - ipv6: allow PMTU exceptions to local routes + - net: dsa: add error handling for pskb_trim_rcsum + - net: phy: dp83822: use BMCR_ANENABLE instead of BMSR_ANEGCAPABLE for DP83620 + - net/sched: act_simple: fix parsing of TCA_DEF_DATA + - tcp: verify the checksum of the first data segment in a new connection + - tls: fix use-after-free in tls_push_record + - tls: fix waitall behavior in tls_sw_recvmsg + - socket: close race condition between sock_close() and sockfs_setattr() + - udp: fix rx queue len reported by diag and proc interface + - net: in virtio_net_hdr only add VLAN_HLEN to csum_start if payload holds + vlan + - hv_netvsc: Fix a network regression after ifdown/ifup + - ACPICA: AML parser: attempt to continue loading table after error + - ext4: fix hole length detection in ext4_ind_map_blocks() + - ext4: update mtime in ext4_punch_hole even if no blocks are released + - ext4: do not allow external inodes for inline data + - ext4: bubble errors from ext4_find_inline_data_nolock() up to ext4_iget() + - ext4: correctly handle a zero-length xattr with a non-zero e_value_offs + - ext4: fix fencepost error in check for inode count overflow during resize + - driver core: Don't ignore class_dir_create_and_add() failure. + - Btrfs: allow empty subvol= again + - Btrfs: fix clone vs chattr NODATASUM race + - Btrfs: fix memory and mount leak in btrfs_ioctl_rm_dev_v2() + - btrfs: return error value if create_io_em failed in cow_file_range + - btrfs: scrub: Don't use inode pages for device replace + - ALSA: usb-audio: Disable the quirk for Nura headset + - ALSA: hda/conexant - Add fixup for HP Z2 G4 workstation + - ALSA: hda - Handle kzalloc() failure in snd_hda_attach_pcm_stream() + - ALSA: hda: add dock and led support for HP EliteBook 830 G5 + - ALSA: hda: add dock and led support for HP ProBook 640 G4 + - x86/MCE: Fix stack out-of-bounds write in mce-inject.c: Flags_read() + - smb3: fix various xid leaks + - smb3: on reconnect set PreviousSessionId field + - CIFS: 511c54a2f69195b28afb9dd119f03787b1625bb4 adds a check for session + expiry + - cifs: For SMB2 security informaion query, check for minimum sized security + descriptor instead of sizeof FileAllInformation class + - nbd: fix nbd device deletion + - nbd: update size when connected + - nbd: use bd_set_size when updating disk size + - blk-mq: reinit q->tag_set_list entry only after grace period + - bdi: Move cgroup bdi_writeback to a dedicated low concurrency workqueue + - cpufreq: Fix new policy initialization during limits updates via sysfs + - cpufreq: ti-cpufreq: Fix an incorrect error return value + - cpufreq: governors: Fix long idle detection logic in load calculation + - libata: zpodd: small read overflow in eject_tray() + - libata: Drop SanDisk SD7UB3Q*G1001 NOLPM quirk + - nvme/pci: Sync controller reset for AER slot_reset + - w1: mxc_w1: Enable clock before calling clk_get_rate() on it + - x86/vector: Fix the args of vector_alloc tracepoint + - x86/apic/vector: Prevent hlist corruption and leaks + - x86/apic: Provide apic_ack_irq() + - x86/ioapic: Use apic_ack_irq() + - x86/platform/uv: Use apic_ack_irq() + - irq_remapping: Use apic_ack_irq() + - genirq/generic_pending: Do not lose pending affinity update + - genirq/affinity: Defer affinity setting if irq chip is busy + - genirq/migration: Avoid out of line call if pending is not set + - x86/intel_rdt: Enable CMT and MBM on new Skylake stepping + - media: uvcvideo: Prevent setting unavailable flags + - media: rc: ensure input/lirc device can be opened after register + - iwlwifi: fw: harden page loading code + - orangefs: set i_size on new symlink + - orangefs: report attributes_mask and attributes for statx + - HID: intel_ish-hid: ipc: register more pm callbacks to support hibernation + - HID: wacom: Correct logical maximum Y for 2nd-gen Intuos Pro large + - vhost: fix info leak due to uninitialized memory + - mm, page_alloc: do not break __GFP_THISNODE by zonelist reset + - Linux 4.17.3 + * Use-after-free in sk_peer_label (LP: #1778646) + - SAUCE: apparmor: fix use after free in sk_peer_label + * kernel: Fix memory leak on CCA and EP11 CPRB processing. (LP: #1775390) + - s390/zcrypt: Fix CCA and EP11 CPRB processing failure memory leak. + * Various fixes for CXL kernel module (LP: #1774471) + - cxl: Configure PSL to not use APC virtual machines + - cxl: Disable prefault_mode in Radix mode + * Bluetooth not working (LP: #1764645) + - Bluetooth: btusb: Apply QCA Rome patches for some ATH3012 models + * Fake SAS addresses for SATA disks on HiSilicon D05 are non-unique + (LP: #1776750) + - scsi: hisi_sas: make SAS address of SATA disks unique + * linux-snapdragon: wcn36xx: mac address generation on boot (LP: #1776491) + - [Config] arm64: snapdragon: WCN36XX_SNAPDRAGON_HACKS=y + - SAUCE: wcn36xx: read MAC from file or randomly generate one + * Lenovo V330 needs patch in ideapad_laptop module for rfkill (LP: #1774636) + - SAUCE: Add Lenovo V330 to the ideapad_laptop rfkill blacklist + * register on binfmt_misc may overflow and crash the system (LP: #1775856) + - fs/binfmt_misc.c: do not allow offset overflow + * Network installs fail on SocioNext board (LP: #1775884) + - net: socionext: reset hardware in ndo_stop + - net: netsec: enable tx-irq during open callback + * Fix several bugs in RDMA/hns driver (LP: #1770974) + - RDMA/hns: Drop local zgid in favor of core defined variable + - RDMA/hns: Add 64KB page size support for hip08 + - RDMA/hns: Rename the idx field of db + - RDMA/hns: Modify uar allocation algorithm to avoid bitmap exhaust + - RDMA/hns: Increase checking CMQ status timeout value + - RDMA/hns: Add reset process for RoCE in hip08 + - RDMA/hns: Fix the illegal memory operation when cross page + - RDMA/hns: Implement the disassociate_ucontext API + * powerpc/livepatch: Implement reliable stack tracing for the consistency + model (LP: #1771844) + - powerpc/livepatch: Implement reliable stack tracing for the consistency + model + * Adding back alx WoL feature (LP: #1772610) + - SAUCE: Revert "alx: remove WoL support" + - SAUCE: alx: add enable_wol paramenter + * Lancer A0 Asic HBA's won't boot with 18.04 (LP: #1768103) + - scsi: lpfc: Fix WQ/CQ creation for older asic's. + - scsi: lpfc: Fix 16gb hbas failing cq create. + * [LTCTest][OPAL][OP920] cpupower idle-info is not listing stop4 and stop5 + idle states when all CORES are guarded (LP: #1771780) + - powerpc/powernv/cpuidle: Init all present cpus for deep states + * Huawei 25G/100G Network Adapters Unsupported (LP: #1770970) + - net-next/hinic: add pci device ids for 25ge and 100ge card + * Expose arm64 CPU topology to userspace (LP: #1770231) + - drivers: base: cacheinfo: move cache_setup_of_node() + - drivers: base: cacheinfo: setup DT cache properties early + - cacheinfo: rename of_node to fw_token + - arm64/acpi: Create arch specific cpu to acpi id helper + - ACPI/PPTT: Add Processor Properties Topology Table parsing + - [Config] CONFIG_ACPI_PPTT=y + - ACPI: Enable PPTT support on ARM64 + - drivers: base cacheinfo: Add support for ACPI based firmware tables + - arm64: Add support for ACPI based firmware tables + - arm64: topology: rename cluster_id + - arm64: topology: enable ACPI/PPTT based CPU topology + - ACPI: Add PPTT to injectable table list + - arm64: topology: divorce MC scheduling domain from core_siblings + * Vcs-Git header on bionic linux source package points to zesty git tree + (LP: #1766055) + - [Packaging]: Update Vcs-Git + * Request to revert SAUCE patches in the 18.04 SRU and update with upstream + version (LP: #1768431) + - scsi: cxlflash: Handle spurious interrupts + - scsi: cxlflash: Remove commmands from pending list on timeout + - scsi: cxlflash: Synchronize reset and remove ops + - SAUCE: (no-up) cxlflash: OCXL diff between v2 and v3 + * hisi_sas robustness fixes (LP: #1774466) + - scsi: hisi_sas: delete timer when removing hisi_sas driver + - scsi: hisi_sas: print device id for errors + - scsi: hisi_sas: Add some checks to avoid free'ing a sas_task twice + - scsi: hisi_sas: check host frozen before calling "done" function + - scsi: hisi_sas: check sas_dev gone earlier in hisi_sas_abort_task() + - scsi: hisi_sas: stop controller timer for reset + - scsi: hisi_sas: update PHY linkrate after a controller reset + - scsi: hisi_sas: change slot index allocation mode + - scsi: hisi_sas: Change common allocation mode of device id + - scsi: hisi_sas: Reset disks when discovered + - scsi: hisi_sas: Create a scsi_host_template per HW module + - scsi: hisi_sas: Init disks after controller reset + - scsi: hisi_sas: Try wait commands before before controller reset + - scsi: hisi_sas: Include TMF elements in struct hisi_sas_slot + - scsi: hisi_sas: Add v2 hw force PHY function for internal ATA command + - scsi: hisi_sas: Terminate STP reject quickly for v2 hw + - scsi: hisi_sas: Fix return value when get_free_slot() failed + - scsi: hisi_sas: Mark PHY as in reset for nexus reset + * hisi_sas: Support newer v3 hardware (LP: #1774467) + - scsi: hisi_sas: update RAS feature for later revision of v3 HW + - scsi: hisi_sas: check IPTT is valid before using it for v3 hw + - scsi: hisi_sas: fix PI memory size + - scsi: hisi_sas: config ATA de-reset as an constrained command for v3 hw + - scsi: hisi_sas: remove redundant handling to event95 for v3 + - scsi: hisi_sas: add readl poll timeout helper wrappers + - scsi: hisi_sas: workaround a v3 hw hilink bug + - scsi: hisi_sas: Add LED feature for v3 hw + * hisi_sas: improve performance by optimizing DQ locking (LP: #1774472) + - scsi: hisi_sas: optimise the usage of DQ locking + - scsi: hisi_sas: relocate smp sg map + - scsi: hisi_sas: make return type of prep functions void + - scsi: hisi_sas: allocate slot buffer earlier + - scsi: hisi_sas: Don't lock DQ for complete task sending + - scsi: hisi_sas: Use device lock to protect slot alloc/free + - scsi: hisi_sas: add check of device in hisi_sas_task_exec() + - scsi: hisi_sas: fix a typo in hisi_sas_task_prep() + * FS-Cache: Assertion failed: FS-Cache: 6 == 5 is false (LP: #1774336) + - SAUCE: CacheFiles: fix a read_waiter/read_copier race + * enable mic-mute hotkey and led on Lenovo M820z and M920z (LP: #1774306) + - ALSA: hda/realtek - Enable mic-mute hotkey for several Lenovo AIOs + * hns3 driver updates (LP: #1768670) + - net: hns3: Remove error log when getting pfc stats fails + - net: hns3: fix to correctly fetch l4 protocol outer header + - net: hns3: Fixes the out of bounds access in hclge_map_tqp + - net: hns3: Fixes the error legs in hclge_init_ae_dev function + - net: hns3: fix for phy_addr error in hclge_mac_mdio_config + - net: hns3: Fix to support autoneg only for port attached with phy + - net: hns3: fix a dead loop in hclge_cmd_csq_clean + - net: hns3: Fix for packet loss due wrong filter config in VLAN tbls + - net: hns3: Remove packet statistics in the range of 8192~12287 + - net: hns3: Add support of hardware rx-vlan-offload to HNS3 VF driver + - net: hns3: Fix for setting mac address when resetting + - net: hns3: remove add/del_tunnel_udp in hns3_enet module + - net: hns3: fix for cleaning ring problem + - net: hns3: refactor the loopback related function + - net: hns3: Fix for deadlock problem occurring when unregistering ae_algo + - net: hns3: Fix for the null pointer problem occurring when initializing + ae_dev failed + - net: hns3: Add a check for client instance init state + - net: hns3: Change return type of hnae3_register_ae_dev + - net: hns3: Change return type of hnae3_register_ae_algo + - net: hns3: Change return value in hnae3_register_client + - net: hns3: Fixes the back pressure setting when sriov is enabled + - net: hns3: Fix for fiber link up problem + - net: hns3: Add support of .sriov_configure in HNS3 driver + - net: hns3: Fixes the missing PCI iounmap for various legs + - net: hns3: Fixes error reported by Kbuild and internal review + - net: hns3: Fixes API to fetch ethernet header length with kernel default + - net: hns3: cleanup of return values in hclge_init_client_instance() + - net: hns3: Fix the missing client list node initialization + - net: hns3: Fix for hns3 module is loaded multiple times problem + - net: hns3: Use enums instead of magic number in hclge_is_special_opcode + - net: hns3: Fix for netdev not running problem after calling net_stop and + net_open + - net: hns3: Fixes kernel panic issue during rmmod hns3 driver + - net: hns3: Fix for CMDQ and Misc. interrupt init order problem + - net: hns3: Updates RX packet info fetch in case of multi BD + - net: hns3: Add support for tx_accept_tag2 and tx_accept_untag2 config + - net: hns3: Add STRP_TAGP field support for hardware revision 0x21 + - net: hns3: Add support to enable TX/RX promisc mode for H/W rev(0x21) + - net: hns3: Fix for PF mailbox receving unknown message + - net: hns3: Fixes the state to indicate client-type initialization + - net: hns3: Fixes the init of the VALID BD info in the descriptor + - net: hns3: Removes unnecessary check when clearing TX/RX rings + - net: hns3: Clear TX/RX rings when stopping port & un-initializing client + - net: hns3: Remove unused led control code + - net: hns3: Adds support for led locate command for copper port + - net: hns3: Fixes initalization of RoCE handle and makes it conditional + - net: hns3: Disable vf vlan filter when vf vlan table is full + - net: hns3: Add support for IFF_ALLMULTI flag + - net: hns3: Add repeat address checking for setting mac address + - net: hns3: Fix setting mac address error + - net: hns3: Fix for service_task not running problem after resetting + - net: hns3: Fix for hclge_reset running repeatly problem + - net: hns3: Fix for phy not link up problem after resetting + - net: hns3: Add missing break in misc_irq_handle + - net: hns3: Fix for vxlan tx checksum bug + - net: hns3: Optimize the PF's process of updating multicast MAC + - net: hns3: Optimize the VF's process of updating multicast MAC + - SAUCE: {topost} net: hns3: add support for serdes loopback selftest + - SAUCE: {topost} net: hns3: RX BD information valid only in last BD except + VLD bit and buffer size + - SAUCE: {topost} net: hns3: remove hclge_get_vector_index from + hclge_bind_ring_with_vector + - SAUCE: {topost} net: hns3: rename the interface for init_client_instance and + uninit_client_instance + - SAUCE: {topost} net: hns3: add vector status check before free vector + - SAUCE: {topost} net: hns3: add l4_type check for both ipv4 and ipv6 + - SAUCE: {topost} net: hns3: remove unused head file in hnae3.c + - SAUCE: {topost} net: hns3: extraction an interface for state state + init|uninit + - SAUCE: {topost} net: hns3: print the ret value in error information + - SAUCE: {topost} net: hns3: remove the Redundant put_vector in + hns3_client_uninit + - SAUCE: {topost} net: hns3: add unlikely for error check + - SAUCE: {topost} net: hns3: remove back in struct hclge_hw + - SAUCE: {topost} net: hns3: use lower_32_bits and upper_32_bits + - SAUCE: {topost} net: hns3: remove unused hclge_ring_to_dma_dir + - SAUCE: {topost} net: hns3: remove useless code in hclge_cmd_send + - SAUCE: {topost} net: hns3: remove some redundant assignments + - SAUCE: {topost} net: hns3: simplify hclge_cmd_csq_clean + - SAUCE: {topost} net: hns3: using modulo for cyclic counters in + hclge_cmd_send + - SAUCE: {topost} net: hns3: remove a redundant hclge_cmd_csq_done + - SAUCE: {topost} net: hns3: remove some unused members of some structures + - SAUCE: {topost} net: hns3: give default option while dependency HNS3 set + - SAUCE: {topost} net: hns3: use dma_zalloc_coherent instead of + kzalloc/dma_map_single + - SAUCE: {topost} net: hns3: modify hnae_ to hnae3_ + - SAUCE: {topost} net: hns3: fix unused function warning in VF driver + - SAUCE: {topost} net: hns3: remove some redundant assignments + - SAUCE: {topost} net: hns3: standardize the handle of return value + - SAUCE: {topost} net: hns3: remove extra space and brackets + - SAUCE: {topost} net: hns3: fix unreasonable code comments + - SAUCE: {topost} net: hns3: use decimal for bit offset macros + - SAUCE: {topost} net: hns3: modify inconsistent bit mask macros + - SAUCE: {topost} net: hns3: fix mislead parameter name + - SAUCE: {topost} net: hns3: remove unused struct member and definition + - SAUCE: {topost} net: hns3: Add SPDX tags to hns3 driver + - SAUCE: {topost} net: hns3: Add pf reset for hip08 RoCE + - SAUCE: {topost} net: hns3: optimize the process of notifying roce client + - SAUCE: {topost} net: hns3: Add calling roce callback function when link + status change + - SAUCE: {topost} net: hns3: fix tc setup when netdev is first up + - SAUCE: {topost} net: hns3: fix for mac pause not disable in pfc mode + - SAUCE: {topost} net: hns3: fix for waterline not setting correctly + - SAUCE: {topost} net: hns3: fix for l4 checksum offload bug + - SAUCE: {topost} net: hns3: fix for mailbox message truncated problem + - SAUCE: {topost} net: hns3: Add configure for mac minimal frame size + - SAUCE: {topost} net: hns3: fix warning bug when doing lp selftest + - SAUCE: {topost} net: hns3: fix get_vector ops in hclgevf_main module + - SAUCE: {topost} net: hns3: remove the warning when clear reset cause + - SAUCE: {topost} net: hns3: Use roce handle when calling roce callback + function + - SAUCE: {topost} net: hns3: prevent sending command during global or core + reset + - SAUCE: {topost} net: hns3: modify the order of initializeing command queue + register + - SAUCE: {topost} net: hns3: reset net device with rtnl_lock + - SAUCE: {topost} net: hns3: prevent to request reset frequently + - SAUCE: {topost} net: hns3: correct reset event status register + - SAUCE: {topost} net: hns3: separate roce from nic when resetting + - SAUCE: net: hns3: Fix for phy link issue when using marvell phy driver + - SAUCE: {topost} net: hns3: fix return value error in + hns3_reset_notify_down_enet + - SAUCE: {topost} net: hns3: remove unnecessary ring configuration operation + while resetting + - SAUCE: {topost} net: hns3: fix for reset_level default assignment probelm + - SAUCE: {topost} net: hns3: fix for using wrong mask and shift in + hclge_get_ring_chain_from_mbx + - SAUCE: {topost} net: hns3: fix comments for hclge_get_ring_chain_from_mbx + - SAUCE: net: hns3: Fix for VF mailbox cannot receiving PF response + - SAUCE: net: hns3: Fix for VF mailbox receiving unknown message + - SAUCE: net: hns3: Optimize PF CMDQ interrupt switching process + * CVE-2018-7755 + - SAUCE: floppy: Do not copy a kernel pointer to user memory in FDGETPRM ioctl + * Incorrect blacklist of bcm2835_wdt (LP: #1766052) + - [Packaging] Fix missing watchdog for Raspberry Pi + * kernel: Fix arch random implementation (LP: #1775391) + - s390/archrandom: Rework arch random implementation. + * [Ubuntu 1804][boston][ixgbe] EEH causes kernel BUG at /build/linux- + jWa1Fv/linux-4.15.0/drivers/pci/msi.c:352 (i2S) (LP: #1776389) + - ixgbe/ixgbevf: Free IRQ when PCI error recovery removes the device + * Cosmic update to v4.17.2 stable release (LP: #1779117) + - crypto: chelsio - request to HW should wrap + - blkdev_report_zones_ioctl(): Use vmalloc() to allocate large buffers + - KVM: X86: Fix reserved bits check for MOV to CR3 + - KVM: x86: introduce linear_{read,write}_system + - kvm: fix typo in flag name + - kvm: nVMX: Enforce cpl=0 for VMX instructions + - KVM: x86: pass kvm_vcpu to kvm_read_guest_virt and + kvm_write_guest_virt_system + - kvm: x86: use correct privilege level for sgdt/sidt/fxsave/fxrstor access + - staging: android: ion: Switch to pr_warn_once in ion_buffer_destroy + - NFC: pn533: don't send USB data off of the stack + - usbip: vhci_sysfs: fix potential Spectre v1 + - usb-storage: Add support for FL_ALWAYS_SYNC flag in the UAS driver + - usb-storage: Add compatibility quirk flags for G-Technologies G-Drive + - Input: xpad - add GPD Win 2 Controller USB IDs + - phy: qcom-qusb2: Fix crash if nvmem cell not specified + - usb: core: message: remove extra endianness conversion in + usb_set_isoch_delay + - usb: typec: wcove: Remove dependency on HW FSM + - usb: gadget: function: printer: avoid wrong list handling in printer_write() + - usb: gadget: udc: renesas_usb3: fix double phy_put() + - usb: gadget: udc: renesas_usb3: should remove debugfs + - usb: gadget: udc: renesas_usb3: should call pm_runtime_enable() before add + udc + - usb: gadget: udc: renesas_usb3: should call devm_phy_get() before add udc + - usb: gadget: udc: renesas_usb3: should fail if devm_phy_get() returns error + - usb: gadget: udc: renesas_usb3: disable the controller's irqs for + reconnecting + - serial: sh-sci: Stop using printk format %pCr + - tty/serial: atmel: use port->name as name in request_irq() + - serial: samsung: fix maxburst parameter for DMA transactions + - serial: 8250: omap: Fix idling of clocks for unused uarts + - vmw_balloon: fixing double free when batching mode is off + - doc: fix sysfs ABI documentation + - arm64: defconfig: Enable CONFIG_PINCTRL_MT7622 by default + - tty: pl011: Avoid spuriously stuck-off interrupts + - crypto: ccree - correct host regs offset + - Input: goodix - add new ACPI id for GPD Win 2 touch screen + - Input: elan_i2c - add ELAN0612 (Lenovo v330 14IKB) ACPI ID + - crypto: caam - strip input zeros from RSA input buffer + - crypto: caam - fix DMA mapping dir for generated IV + - crypto: caam - fix IV DMA mapping and updating + - crypto: caam/qi - fix IV DMA mapping and updating + - crypto: caam - fix size of RSA prime factor q + - crypto: cavium - Fix fallout from CONFIG_VMAP_STACK + - crypto: cavium - Limit result reading attempts + - crypto: vmx - Remove overly verbose printk from AES init routines + - crypto: vmx - Remove overly verbose printk from AES XTS init + - crypto: omap-sham - fix memleak + - Linux 4.17.2 + * Cosmic update to v4.17.1 stable release (LP: #1779116) + - netfilter: nf_flow_table: attach dst to skbs + - bnx2x: use the right constant + - ip6mr: only set ip6mr_table from setsockopt when ip6mr_new_table succeeds + - ipv6: omit traffic class when calculating flow hash + - l2tp: fix refcount leakage on PPPoL2TP sockets + - netdev-FAQ: clarify DaveM's position for stable backports + - net: metrics: add proper netlink validation + - net/packet: refine check for priv area size + - rtnetlink: validate attributes in do_setlink() + - sctp: not allow transport timeout value less than HZ/5 for hb_timer + - team: use netdev_features_t instead of u32 + - vrf: check the original netdevice for generating redirect + - net: dsa: b53: Fix for brcm tag issue in Cygnus SoC + - ipmr: fix error path when ipmr_new_table fails + - PCI: hv: Do not wait forever on a device that has disappeared + - Linux 4.17.1 + * Miscellaneous Ubuntu changes + - Revert "UBUNTU: SAUCE: crypto: thunderx_zip: Fix fallout from + CONFIG_VMAP_STACK" + - Revert "UBUNTU: SAUCE: cred: Add clone_cred() interface" + - SAUCE: apparmor: userspace queries + - SAUCE: apparmor: patch to provide compatibility with v2.x net rules + - SAUCE: apparmor: af_unix mediation + + [ Ubuntu: 4.17.0-2.3 ] + + * linux: 4.17.0-2.3 -proposed tracker (LP: #1776276) + * Miscellaneous Ubuntu changes + - Config: remove IrDA from annotations + - Config: remove scsi drivers from annotations + - Config: remove BT_HCIBTUART from annotations + - Config: pstore zlib support was renamed + - Config: disable NVRAM for armhf on annotations + - Config: Disable VT on s390x + - Config: Update SSB and B43/B44 options + - Config: some options not supported on some arches anymore + - Config: renamed and removed options + - Config: TCG_CRB is required for IMA on ACPI systems + - Config: EXTCON_AXP288 depends on X86 + - Config: CONFIG_FSI depends on OF + - Config: DRM_RCAR_LVDS now depends on DRM + - CONFIG: Allow CONFIG_LEDS_MLXCPLD for i386 + - Config: Enable HINIC on arm64 + - Config: Set PPS and PTP_1588_CLOCK as y + - Config: Some NF_TABLES options are built-in now + - Config: GENERIC_CPU for ppc64el + - Config: KEXEC_FILE=n for s390x + - Config: CRYPTO_DEFLATE is needed by PSTORE_DEFLATE_COMPRESS + - Config: Disable STM32 support + - Config: Enable FORTIFY_SOURCE for armhf + - Config: use STRONG instead of AUTO for CC_STACKPROTECTOR + * Rebase to v4.17 + + [ Ubuntu: 4.17.0-1.2 ] + + * [Config] enable EDAC_DEBUG on ARM64 (LP: #1772516) + - [Config]: set CONFIG_EDAC_DEBUG=y for ARM64 + * Ubuntu 18.04 kernel crashed while in degraded mode (LP: #1770849) + - SAUCE: powerpc/perf: Fix memory allocation for core-imc based on + num_possible_cpus() + * Integrated Webcam Realtek Integrated_Webcam_HD (0bda:58f4) not working in + DELL XPS 13 9370 with firmware 1.50 (LP: #1763748) + - SAUCE: media: uvcvideo: Support realtek's UVC 1.5 device + * Switch Build-Depends: transfig to fig2dev (LP: #1770770) + - [Config] update Build-Depends: transfig to fig2dev + * update-initramfs not adding i915 GuC firmware for Kaby Lake, firmware fails + to load (LP: #1728238) + - Revert "UBUNTU: SAUCE: (no-up) i915: Remove MODULE_FIRMWARE statements for + unreleased firmware" + * No driver for Huawei network adapters on arm64 (LP: #1769899) + - net-next/hinic: add arm64 support + * linux-snapdragon: reduce EPROBEDEFER noise during boot (LP: #1768761) + - [Config] snapdragon: DRM_I2C_ADV7511=y + * Add d-i support for Huawei NICs (LP: #1767490) + - d-i: add hinic to nic-modules udeb + * Acer Swift sf314-52 power button not managed (LP: #1766054) + - SAUCE: platform/x86: acer-wmi: add another KEY_POWER keycode + * Include nfp driver in linux-modules (LP: #1768526) + - [Config] Add nfp.ko to generic inclusion list + * Miscellaneous Ubuntu changes + - SAUCE: Import aufs driver + - [Config] Enable AUFS config options + - SAUCE: (efi-lockdown) Fix for module sig verification + - SAUCE: (efi-lockdown) Copy secure_boot flag in boot params across kexec + reboot + - SAUCE: (efi-lockdown) efi: Add an EFI_SECURE_BOOT flag to indicate secure + boot mode + - SAUCE: (efi-lockdown) efi: Lock down the kernel if booted in secure boot + mode + - SAUCE: (efi-lockdown) efi: Sanitize boot_params in efi stub + - SAUCE: (efi-lockdown) efi: Don't print secure boot state from the efi stub + - [Config] CONFIG_LOCK_DOWN_IN_EFI_SECURE_BOOT=y + - SAUCE: (efi-lockdown) really lock down kernel under EFI secure boot + - SAUCE: (noup) Update spl to 0.7.5-1ubuntu3, zfs to 0.7.5-1ubuntu17 + - enable zfs build + * Miscellaneous upstream changes + - Revert "UBUNTU: SAUCE: (efi-lockdown) ima: require secure_boot rules in + lockdown mode" + - Rebased to v4.17-rc6 + + [ Ubuntu: 4.17.0-0.1 ] + + * Rebase to v4.17-rc4 + + [ Ubuntu: 4.17.0-0.0 ] + + * Dummy entry. + + [ Ubuntu: 4.16.0-4.5 ] + + * [18.04 FEAT] Add kvm_stat from kernel tree (LP: #1734130) + - tools/kvm_stat: Fix python3 syntax + - tools/kvm_stat: Don't use deprecated file() + - tools/kvm_stat: Remove unused function + - [Packaging] Add linux-tools-host package for VM host tools + - [Config] do_tools_host=true for amd64 + * [Featire] CNL: Enable RAPL support (LP: #1685712) + - powercap: RAPL: Add support for Cannon Lake + * Bionic update to v4.16.2 stable release (LP: #1763388) + - sparc64: Oracle DAX driver depends on SPARC64 + - arp: fix arp_filter on l3slave devices + - net: dsa: Discard frames from unused ports + - net/ipv6: Increment OUTxxx counters after netfilter hook + - net/sched: fix NULL dereference in the error path of tcf_bpf_init() + - pptp: remove a buggy dst release in pptp_connect() + - sctp: do not leak kernel memory to user space + - sctp: sctp_sockaddr_af must check minimal addr length for AF_INET6 + - vlan: also check phy_driver ts_info for vlan's real device + - net: fool proof dev_valid_name() + - ip_tunnel: better validate user provided tunnel names + - ipv6: sit: better validate user provided tunnel names + - ip6_gre: better validate user provided tunnel names + - ip6_tunnel: better validate user provided tunnel names + - vti6: better validate user provided tunnel names + - net_sched: fix a missing idr_remove() in u32_delete_key() + - nfp: use full 40 bits of the NSP buffer address + - Linux 4.16.2 + * sky2 gigabit ethernet driver sometimes stops working after lid-open resume + from sleep (88E8055) (LP: #1758507) // Bionic update to v4.16.2 stable + release (LP: #1763388) + - sky2: Increase D3 delay to sky2 stops working after suspend + * Merge the linux-snapdragon kernel into bionic master/snapdragon + (LP: #1763040) + - arm64: defconfig: enable REMOTEPROC + - arm64: defconfig: enable QCOM audio drivers for APQ8016 and DB410c + - kernel: configs; add distro.config + - arm64: configs: enable WCN36xx + - kernel: distro.config: enable debug friendly USB network adpater + - arm64: configs: enable QCOM Venus + - arm64: defconfig: Enable a53/apcs and avs + - arm64: defconfig: enable ondemand governor as default + - arm64: defconfig: enable QCOM_TSENS + - kernel: configs: enable dm_mod and dm_crypt + - Force the SMD regulator driver to be compiled-in + - arm64: defconfig: enable CFG80211_DEFAULT_PS by default + - arm64: configs: enable BT_QCOMSMD + - kernel: configs: add more USB net drivers + - arm64: defconfig: disable ANALOG_TV and DIGITAL_TV + - arm64: configs: Enable camera drivers + - kernel: configs: add freq stat to sysfs + - arm64: defconfig: enable CONFIG_USB_CONFIGFS_F_FS by default + - arm64: defconfig: Enable QRTR features + - kernel: configs: set USB_CONFIG_F_FS in distro.config + - kernel: distro.config: enable 'schedutil' CPUfreq governor + - kernel: distro.config: enable 'fq' and 'fq_codel' qdiscs + - kernel: distro.config: enable 'BBR' TCP congestion algorithm + - arm64: defconfig: enable LEDS_QCOM_LPG + - HACK: drm/msm/iommu: Remove runtime_put calls in map/unmap + - power: avs: Add support for CPR (Core Power Reduction) + - power: avs: cpr: Use raw mem access for qfprom + - power: avs: cpr: fix with new reg_sequence structures + - power: avs: cpr: Register with cpufreq-dt + - regulator: smd: Add floor and corner operations + - PM / OPP: Support adjusting OPP voltages at runtime + - PM / OPP: Drop RCU usage in dev_pm_opp_adjust_voltage() + - PM / OPP: HACK: Allow to set regulator without opp_list + - PM / OPP: Add a helper to get an opp regulator for device + - cpufreq: Add apq8016 to cpufreq-dt-platdev blacklist + - regulator: smd: Allow REGULATOR_QCOM_SMD_RPM=m + - ov5645: I2C address change + - i2c: Add Qualcomm Camera Control Interface driver + - camss: vfe: Skip first four frames from sensor + - camss: Do not register if no cameras are present + - i2c-qcom-cci: Fix run queue completion timeout + - i2c-qcom-cci: Fix I2C address bug + - media: ov5645: Fix I2C address + - drm/bridge/adv7511: Delay clearing of HPD interrupt status + - HACK: drm/msm/adv7511: Don't rely on interrupts for EDID parsing + - leds: Add driver for Qualcomm LPG + - wcn36xx: Fix warning due to duplicate scan_completed notification + - arm64: dts: Add CPR DT node for msm8916 + - arm64: dts: add spmi-regulator nodes + - arm64: dts: msm8916: Add cpufreq support + - arm64: dts: msm8916: Add a shared CPU opp table + - arm64: dts: msm8916: Add cpu cooling maps + - arm64: dts: pm8916: Mark the s2 regulator as always-on + - arm64: dts: qcom: msm8916: Add msm8916 A53 PLL DT node + - arm64: dts: qcom: msm8916: Use the new APCS mailbox driver + - arm64: dts: qcom: msm8916: Add clock properties to the APCS node + - dt-bindings: media: Binding document for Qualcomm Camera Control Interface + driver + - MAINTAINERS: Add Qualcomm Camera Control Interface driver + - DT: leds: Add Qualcomm Light Pulse Generator binding + - arm64: dts: qcom: msm8996: Add mpp and lpg blocks + - arm64: dts: qcom: Add pwm node for pm8916 + - arm64: dts: qcom: Add user LEDs on db820c + - arm64: dts: qcom: Add WiFI/BT LEDs on db820c + - ARM: dts: qcom: Add LPG node to pm8941 + - ARM: dts: qcom: honami: Add LPG node and RGB LED + - arm64: dts: qcom: Add Camera Control Interface support + - arm64: dts: qcom: Add apps_iommu vfe child node + - arm64: dts: qcom: Add camss device node + - arm64: dts: qcom: Add ov5645 device nodes + - arm64: dts: msm8916: Fix camera sensors I2C addresses + - arm: dts: qcom: db410c: Enable PWM signal on MPP4 + - packaging: arm64: add a uboot flavour - part1 + - packaging: arm64: add a uboot flavour - part2 + - packaging: arm64: add a uboot flavour - part3 + - packaging: arm64: add a uboot flavour - part4 + - packaging: arm64: add a uboot flavour - part5 + - packaging: arm64: rename uboot flavour to snapdragon + - [Config] updateconfigs after qcomlt import + - [Config] arm64: snapdragon: COMMON_CLK_QCOM=y + - [Config] arm64: snapdragon: MSM_GCC_8916=y + - [Config] arm64: snapdragon: REGULATOR_FIXED_VOLTAGE=y + - [Config] arm64: snapdragon: PINCTRL_MSM8916=y + - [Config] arm64: snapdragon: HWSPINLOCK_QCOM=y + - [Config] arm64: snapdragon: SPMI=y, SPMI_MSM_PMIC_ARB=y + - [Config] arm64: snapdragon: REGMAP_SPMI=y, PINCTRL_QCOM_SPMI_PMIC=y + - [Config] arm64: snapdragon: REGULATOR_QCOM_SPMI=y + - [Config] arm64: snapdragon: MFD_SPMI_PMIC=y + - [Config] arm64: snapdragon: QCOM_SMEM=y + - [Config] arm64: snapdragon: RPMSG=y, RPMSG_QCOM_SMD=y + - [Config] arm64: snapdragon: QCOM_SMD_RPM=y, REGULATOR_QCOM_SMD_RPM=y + - [Config] arm64: snapdragon: QCOM_CLK_SMD_RPM=y + - [Config] arm64: snapdragon: QCOM_BAM_DMA=y + - [Config] arm64: snapdragon: QCOM_HIDMA=y, QCOM_HIDMA_MGMT=y + - [Config] arm64: snapdragon: QCOM_CPR=y + - [Config] arm64: snapdragon: QCOM_QFPROM=y, QCOM_TSENS=y + - [Config] arm64: snapdragon: MMC_SDHCI=y, MMC_SDHCI_PLTFM=y, MMC_SDHCI_MSM=y + - [Config] turn off DRM_MSM_REGISTER_LOGGING + - [Config] arm64: snapdragon: I2C_QUP=y + - [Config] arm64: snapdragon: SPI_QUP=y + - [Config] arm64: snapdragon: USB_ULPI_BUS=y, PHY_QCOM_USB_HS=y + - [Config] arm64: snapdragon: QCOM_APCS_IPC=y + - [Config] arm64: snapdragon: QCOM_WCNSS_CTRL=y + - [Config] arm64: snapdragon: QCOM_SMSM=y + - [Config] arm64: snapdragon: QCOM_SMP2P=y + - [Config] arm64: snapdragon: DRM_MSM=y + - [Config] arm64: snapdragon: SND_SOC=y + - [Config] arm64: snapdragon: QCOM_WCNSS_PIL=m + - [Config] arm64: snapdragon: INPUT_PM8941_PWRKEY=y + - [Config] arm64: snapdragon: MEDIA_SUBDRV_AUTOSELECT=y, VIDEO_OV5645=m + - [Config] arm64: snapdragon: SND_SOC_APQ8016_SBC=y, SND_SOC_LPASS_APQ8016=y + - [Config] arm64: snapdragon: SND_SOC_MSM8916_WCD_ANALOG=y, + SND_SOC_MSM8916_WCD_DIGITAL=y + - SAUCE: media: ov5645: skip address change if dt addr == default addr + - SAUCE: drm/msm/adv7511: wrap hacks under CONFIG_ADV7511_SNAPDRAGON_HACKS + #ifdefs + - [Config] arm64: snapdragon: ADV7511_SNAPDRAGON_HACKS=y + - [Packaging] fix up snapdragon abi paths + * LSM stacking patches for bionic (LP: #1763062) + - SAUCE: LSM stacking: procfs: add smack subdir to attrs + - SAUCE: LSM stacking: LSM: Manage credential security blobs + - SAUCE: LSM stacking: LSM: Manage file security blobs + - SAUCE: LSM stacking: LSM: Manage task security blobs + - SAUCE: LSM stacking: LSM: Manage remaining security blobs + - SAUCE: LSM stacking: LSM: General stacking + - SAUCE: LSM stacking: fixup initialize task->security + - SAUCE: LSM stacking: fixup: alloc_task_ctx is dead code + - SAUCE: LSM stacking: add support for stacking getpeersec_stream + - SAUCE: LSM stacking: add stacking support to apparmor network hooks + - SAUCE: LSM stacking: fixup apparmor stacking enablement + - SAUCE: LSM stacking: fixup stacking kconfig + - SAUCE: LSM stacking: allow selecting multiple LSMs using kernel boot params + - SAUCE: LSM stacking: provide prctl interface for setting context + - SAUCE: LSM stacking: inherit current display LSM + - SAUCE: LSM stacking: keep an index for each registered LSM + - SAUCE: LSM stacking: verify display LSM + - SAUCE: LSM stacking: provide a way to specify the default display lsm + - SAUCE: LSM stacking: make sure LSM blob align on 64 bit boundaries + - SAUCE: LSM stacking: add /proc//attr/display_lsm + - SAUCE: LSM stacking: add Kconfig to set default display LSM + - SAUCE: LSM stacking: add configs for LSM stacking + - SAUCE: LSM stacking: add apparmor and selinux proc dirs + - SAUCE: LSM stacking: remove procfs context interface + * linux 4.13.0-13.14 ADT test failure with linux 4.13.0-13.14 + (LP: #1720779) // LSM stacking patches for bionic (LP: #1763062) + - SAUCE: LSM stacking: check for invalid zero sized writes + * Support cq/rq record doorbell for RDMA on HSilicon hip08 systems + (LP: #1762755) + - RDMA/hns: Support rq record doorbell for the user space + - RDMA/hns: Support cq record doorbell for the user space + - RDMA/hns: Support rq record doorbell for kernel space + - RDMA/hns: Support cq record doorbell for kernel space + - RDMA/hns: Fix cqn type and init resp + - RDMA/hns: Fix init resp when alloc ucontext + - RDMA/hns: Fix cq record doorbell enable in kernel + * Replace LPC patchset with upstream version (LP: #1762758) + - Revert "UBUNTU: SAUCE: MAINTAINERS: Add maintainer for HiSilicon LPC driver" + - Revert "UBUNTU: SAUCE: HISI LPC: Add ACPI support" + - Revert "UBUNTU: SAUCE: ACPI / scan: do not enumerate Indirect IO host + children" + - Revert "UBUNTU: SAUCE: HISI LPC: Support the LPC host on Hip06/Hip07 with DT + bindings" + - Revert "UBUNTU: SAUCE: OF: Add missing I/O range exception for indirect-IO + devices" + - Revert "UBUNTU: SAUCE: PCI: Apply the new generic I/O management on PCI IO + hosts" + - Revert "UBUNTU: SAUCE: PCI: Add fwnode handler as input param of + pci_register_io_range()" + - Revert "UBUNTU: SAUCE: PCI: Remove unused __weak attribute in + pci_register_io_range()" + - Revert "UBUNTU: SAUCE: LIB: Introduce a generic PIO mapping method" + - lib: Add generic PIO mapping method + - PCI: Remove __weak tag from pci_register_io_range() + - PCI: Add fwnode handler as input param of pci_register_io_range() + - PCI: Apply the new generic I/O management on PCI IO hosts + - of: Add missing I/O range exception for indirect-IO devices + - HISI LPC: Support the LPC host on Hip06/Hip07 with DT bindings + - ACPI / scan: Rename acpi_is_serial_bus_slave() for more general use + - ACPI / scan: Do not enumerate Indirect IO host children + - HISI LPC: Add ACPI support + - MAINTAINERS: Add John Garry as maintainer for HiSilicon LPC driver + * Enable Tunneled Operations on POWER9 (LP: #1762448) + - powerpc/powernv: Enable tunneled operations + - cxl: read PHB indications from the device tree + * PSL traces reset after PERST for debug AFU image (LP: #1762462) + - cxl: Enable NORST bit in PSL_DEBUG register for PSL9 + * NFS + sec=krb5 is broken (LP: #1759791) + - sunrpc: remove incorrect HMAC request initialization + * Raspberry Pi 3 microSD support missing from the installer (LP: #1729128) + - d-i: add bcm2835 to block-modules + * Backport USB core quirks (LP: #1762695) + - usb: core: Add "quirks" parameter for usbcore + - usb: core: Copy parameter string correctly and remove superfluous null check + - usb: core: Add USB_QUIRK_DELAY_CTRL_MSG to usbcore quirks + * [Ubuntu 18.04] cryptsetup: 'device-mapper: reload ioctl on failed' when + setting up a second end-to-end encrypted disk (LP: #1762353) + - SAUCE: s390/crypto: Adjust s390 aes and paes cipher + * System Z {kernel} UBUNTU18.04 wrong kernel config (LP: #1762719) + - s390: move nobp parameter functions to nospec-branch.c + - s390: add automatic detection of the spectre defense + - s390: report spectre mitigation via syslog + - s390: add sysfs attributes for spectre + - [Config] CONFIG_EXPOLINE_AUTO=y, CONFIG_KERNEL_NOBP=n for s390 + - s390: correct nospec auto detection init order + * Additional spectre and meltdown patches (LP: #1760099) // CVE-2017-5715 + - powerpc/64s: Wire up cpu_show_spectre_v2() + * Additional spectre and meltdown patches (LP: #1760099) // CVE-2017-5753 + - powerpc/64s: Wire up cpu_show_spectre_v1() + * Additional spectre and meltdown patches (LP: #1760099) // CVE-2017-5754 + - powerpc/rfi-flush: Move the logic to avoid a redo into the debugfs code + - powerpc/rfi-flush: Make it possible to call setup_rfi_flush() again + - powerpc/rfi-flush: Always enable fallback flush on pseries + - powerpc/rfi-flush: Differentiate enabled and patched flush types + - powerpc/rfi-flush: Call setup_rfi_flush() after LPM migration + - powerpc/64s: Move cpu_show_meltdown() + - powerpc/64s: Enhance the information in cpu_show_meltdown() + - powerpc/powernv: Use the security flags in pnv_setup_rfi_flush() + - powerpc/pseries: Use the security flags in pseries_setup_rfi_flush() + * Additional spectre and meltdown patches (LP: #1760099) // CVE-2017-5715 // + CVE-2017-5753 // CVE-2017-5754 + - powerpc/pseries: Add new H_GET_CPU_CHARACTERISTICS flags + - powerpc: Add security feature flags for Spectre/Meltdown + - powerpc/pseries: Set or clear security feature flags + - powerpc/powernv: Set or clear security feature flags + * Hisilicon network subsystem 3 support (LP: #1761610) + - net: hns3: export pci table of hclge and hclgevf to userspace + - d-i: Add hns3 drivers to nic-modules + * "ip a" command on a guest VM shows UNKNOWN status (LP: #1761534) + - virtio-net: Fix operstate for virtio when no VIRTIO_NET_F_STATUS + * perf vendor events arm64: Enable JSON events for ThunderX2 B0 (LP: #1760712) + - perf vendor events: Drop incomplete multiple mapfile support + - perf vendor events: Fix error code in json_events() + - perf vendor events: Drop support for unused topic directories + - perf vendor events: Add support for pmu events vendor subdirectory + - perf vendor events arm64: Relocate ThunderX2 JSON to cavium subdirectory + - perf vendor events arm64: Relocate Cortex A53 JSONs to arm subdirectory + - perf vendor events: Add support for arch standard events + - perf vendor events arm64: Add armv8-recommended.json + - perf vendor events arm64: Fixup ThunderX2 to use recommended events + - perf vendor events arm64: fixup A53 to use recommended events + - perf vendor events arm64: add HiSilicon hip08 JSON file + - perf vendor events arm64: Enable JSON events for ThunderX2 B0 + * Warning "cache flush timed out!" seen when unloading the cxl driver + (LP: #1762367) + - cxl: Check if PSL data-cache is available before issue flush request + * Bionic update to v4.16.1 stable release (LP: #1763170) + - bitmap: fix memset optimization on big-endian systems + - USB: serial: ftdi_sio: add RT Systems VX-8 cable + - USB: serial: ftdi_sio: add support for Harman FirmwareHubEmulator + - USB: serial: cp210x: add ELDAT Easywave RX09 id + - serial: 8250: Add Nuvoton NPCM UART + - mei: remove dev_err message on an unsupported ioctl + - /dev/mem: Avoid overwriting "err" in read_mem() + - media: usbtv: prevent double free in error case + - parport_pc: Add support for WCH CH382L PCI-E single parallel port card. + - crypto: lrw - Free rctx->ext with kzfree + - crypto: ccp - Fill the result buffer only on digest, finup, and final ops + - crypto: talitos - don't persistently map req_ctx->hw_context and + req_ctx->buf + - crypto: inside-secure - fix clock management + - crypto: testmgr - Fix incorrect values in PKCS#1 test vector + - crypto: talitos - fix IPsec cipher in length + - crypto: ahash - Fix early termination in hash walk + - crypto: caam - Fix null dereference at error path + - crypto: ccp - return an actual key size from RSA max_size callback + - crypto: arm,arm64 - Fix random regeneration of S_shipped + - crypto: x86/cast5-avx - fix ECB encryption when long sg follows short one + - Bluetooth: hci_bcm: Add 6 new ACPI HIDs + - Btrfs: fix unexpected cow in run_delalloc_nocow + - siox: fix possible buffer overflow in device_add_store + - staging: comedi: ni_mio_common: ack ai fifo error interrupts. + - Revert "base: arch_topology: fix section mismatch build warnings" + - Input: ALPS - fix TrackStick detection on Thinkpad L570 and Latitude 7370 + - Input: i8042 - add Lenovo ThinkPad L460 to i8042 reset list + - Input: i8042 - enable MUX on Sony VAIO VGN-CS series to fix touchpad + - vt: change SGR 21 to follow the standards + - Fix slab name "biovec-(1<<(21-12))" + - signal: Correct the offset of si_pkey and si_lower in struct siginfo on m68k + - Linux 4.16.1 + * [18.04][config] regression: nvme and nvme_core couldn't be built as modules + starting 4.15-rc2 (LP: #1759893) + - SAUCE: Revert "lightnvm: include NVM Express driver if OCSSD is selected for + build" + - [Config] CONFIG_BLK_DEV_NMVE=m + * FFe: Enable configuring resume offset via sysfs (LP: #1760106) + - PM / hibernate: Make passing hibernate offsets more friendly + * Ubuntu18.04:POWER9:DD2.2 - Unable to start a KVM guest with default machine + type(pseries-bionic) complaining "KVM implementation does not support + Transactional Memory, try cap-htm=off" (kvm) (LP: #1752026) + - powerpc: Use feature bit for RTC presence rather than timebase presence + - powerpc: Book E: Remove unused CPU_FTR_L2CSR bit + - powerpc: Free up CPU feature bits on 64-bit machines + - powerpc: Add CPU feature bits for TM bug workarounds on POWER9 v2.2 + - powerpc/powernv: Provide a way to force a core into SMT4 mode + - KVM: PPC: Book3S HV: Work around transactional memory bugs in POWER9 + - KVM: PPC: Book3S HV: Work around XER[SO] bug in fake suspend mode + - KVM: PPC: Book3S HV: Work around TEXASR bug in fake suspend state + * [Feature][CFL][ICL] [CNL]Thunderbolt support (Titan Ridge) (LP: #1730775) + - thunderbolt: Resume control channel after hibernation image is created + - thunderbolt: Serialize PCIe tunnel creation with PCI rescan + - thunderbolt: Handle connecting device in place of host properly + - thunderbolt: Do not overwrite error code when domain adding fails + - thunderbolt: Wait a bit longer for root switch config space + - thunderbolt: Wait a bit longer for ICM to authenticate the active NVM + - thunderbolt: Handle rejected Thunderbolt devices + - thunderbolt: Factor common ICM add and update operations out + - thunderbolt: Correct function name in kernel-doc comment + - thunderbolt: Add tb_switch_get() + - thunderbolt: Add tb_switch_find_by_route() + - thunderbolt: Add tb_xdomain_find_by_route() + - thunderbolt: Add constant for approval timeout + - thunderbolt: Move driver ready handling to struct icm + - thunderbolt: Add 'boot' attribute for devices + - thunderbolt: Add support for preboot ACL + - thunderbolt: Introduce USB only (SL4) security level + - thunderbolt: Add support for Intel Titan Ridge + * QCA9377 requires more IRAM banks for its new firmware (LP: #1748345) + - ath10k: update the IRAM bank number for QCA9377 + * Fix an issue that when system in S3, USB keyboard can't wake up the system. + (LP: #1759511) + - ACPI / PM: Allow deeper wakeup power states with no _SxD nor _SxW + * cxl: Fix timebase synchronization status on POWER9 missing (CAPI) + (LP: #1757228) + - cxl: Fix timebase synchronization status on P9 + * [Feature]Update Ubuntu 18.04 lpfc FC driver with 32/64GB HBA support and bug + fixes (LP: #1752182) + - scsi: lpfc: Fix frequency of Release WQE CQEs + - scsi: lpfc: Increase CQ and WQ sizes for SCSI + - scsi: lpfc: move placement of target destroy on driver detach + - scsi: lpfc: correct debug counters for abort + - scsi: lpfc: Add WQ Full Logic for NVME Target + - scsi: lpfc: Fix PRLI handling when topology type changes + - scsi: lpfc: Fix IO failure during hba reset testing with nvme io. + - scsi: lpfc: Fix RQ empty firmware trap + - scsi: lpfc: Allow set of maximum outstanding SCSI cmd limit for a target + - scsi: lpfc: Fix soft lockup in lpfc worker thread during LIP testing + - scsi: lpfc: Fix issue_lip if link is disabled + - scsi: lpfc: Indicate CONF support in NVMe PRLI + - scsi: lpfc: Fix SCSI io host reset causing kernel crash + - scsi: lpfc: Validate adapter support for SRIU option + - scsi: lpfc: Fix header inclusion in lpfc_nvmet + - scsi: lpfc: Treat SCSI Write operation Underruns as an error + - scsi: lpfc: Fix nonrecovery of NVME controller after cable swap. + - scsi: lpfc: update driver version to 11.4.0.7 + - scsi: lpfc: Update 11.4.0.7 modified files for 2018 Copyright + - scsi: lpfc: Rework lpfc to allow different sli4 cq and eq handlers + - scsi: lpfc: Rework sli4 doorbell infrastructure + - scsi: lpfc: Add SLI-4 if_type=6 support to the code base + - scsi: lpfc: Add push-to-adapter support to sli4 + - scsi: lpfc: Add PCI Ids for if_type=6 hardware + - scsi: lpfc: Add 64G link speed support + - scsi: lpfc: Add if_type=6 support for cycling valid bits + - scsi: lpfc: Enable fw download on if_type=6 devices + - scsi: lpfc: Add embedded data pointers for enhanced performance + - scsi: lpfc: Fix nvme embedded io length on new hardware + - scsi: lpfc: Work around NVME cmd iu SGL type + - scsi: lpfc: update driver version to 12.0.0.0 + - scsi: lpfc: Change Copyright of 12.0.0.0 modified files to 2018 + - scsi: lpfc: use __raw_writeX on DPP copies + - scsi: lpfc: Add missing unlock in WQ full logic + * /dev/bcache/by-uuid links not created after reboot (LP: #1729145) + - SAUCE: (no-up) bcache: decouple emitting a cached_dev CHANGE uevent + * DKMS driver builds fail with: Cannot use CONFIG_STACK_VALIDATION=y, please + install libelf-dev, libelf-devel or elfutils-libelf-devel (LP: #1760876) + - [Packaging] include the retpoline extractor in the headers + * Use med_with_dipm SATA LPM to save more power for mobile platforms + (LP: #1759547) + - [Config] CONFIG_SATA_MOBILE_LPM_POLICY=3 + * Miscellaneous Ubuntu changes + - [Packaging] Only install cloud init files when do_tools_common=true + - SAUCE: Import aufs driver + - [Config] Enable AUFS config options + + [ Ubuntu: 4.16.0-3.4 ] + + * Allow multiple mounts of zfs datasets (LP: #1759848) + - SAUCE: Allow mounting datasets more than once (LP: #1759848) + * zfs system process hung on container stop/delete (LP: #1754584) + - SAUCE: Fix non-prefaulted page deadlock (LP: #1754584) + - Revert "UBUNTU: SAUCE: Fix non-prefaulted page deadlock (LP: #1754584)" + - SAUCE: Fix non-prefaulted page deadlock (LP: #1754584) + * ubuntu_zram_smoke test will cause soft lockup on Artful ThunderX ARM64 + (LP: #1755073) + - SAUCE: crypto: thunderx_zip: Fix fallout from CONFIG_VMAP_STACK + * CAPI Flash (cxlflash) update (LP: #1752672) + - SAUCE: cxlflash: Preserve number of interrupts for master contexts + - SAUCE: cxlflash: Avoid clobbering context control register value + - SAUCE: cxlflash: Add argument identifier names + - SAUCE: cxlflash: Introduce OCXL backend + - SAUCE: cxlflash: Hardware AFU for OCXL + - SAUCE: cxlflash: Read host function configuration + - SAUCE: cxlflash: Setup function acTag range + - SAUCE: cxlflash: Read host AFU configuration + - SAUCE: cxlflash: Setup AFU acTag range + - SAUCE: cxlflash: Setup AFU PASID + - SAUCE: cxlflash: Adapter context support for OCXL + - SAUCE: cxlflash: Use IDR to manage adapter contexts + - SAUCE: cxlflash: Support adapter file descriptors for OCXL + - SAUCE: cxlflash: Support adapter context discovery + - SAUCE: cxlflash: Support image reload policy modification + - SAUCE: cxlflash: MMIO map the AFU + - SAUCE: cxlflash: Support starting an adapter context + - SAUCE: cxlflash: Support process specific mappings + - SAUCE: cxlflash: Support AFU state toggling + - SAUCE: cxlflash: Support reading adapter VPD data + - SAUCE: cxlflash: Setup function OCXL link + - SAUCE: cxlflash: Setup OCXL transaction layer + - SAUCE: cxlflash: Support process element lifecycle + - SAUCE: cxlflash: Support AFU interrupt management + - SAUCE: cxlflash: Support AFU interrupt mapping and registration + - SAUCE: cxlflash: Support starting user contexts + - SAUCE: cxlflash: Support adapter context polling + - SAUCE: cxlflash: Support adapter context reading + - SAUCE: cxlflash: Support adapter context mmap and release + - SAUCE: cxlflash: Support file descriptor mapping + - SAUCE: cxlflash: Introduce object handle fop + - SAUCE: cxlflash: Setup LISNs for user contexts + - SAUCE: cxlflash: Setup LISNs for master contexts + - SAUCE: cxlflash: Update synchronous interrupt status bits + - SAUCE: cxlflash: Introduce OCXL context state machine + - SAUCE: cxlflash: Register for translation errors + - SAUCE: cxlflash: Support AFU reset + - SAUCE: cxlflash: Enable OCXL operations + * [Artful][Wyse 3040] System hang when trying to enable an offlined CPU core + (LP: #1736393) + - SAUCE: drm/i915:Don't set chip specific data + - SAUCE: drm/i915: make previous commit affects Wyse 3040 only + * zed process consuming 100% cpu (LP: #1751796) + - SAUCE: Fix ioctl loop-spin in zed (LP: #1751796) + * Ubuntu18.04:PowerPC - Set Transparent Huge Pages (THP) by default to + "always" (LP: #1753708) + - Config: Set TRANSPARENT_HUGEPAGE_ALWAYS=y on ppc64el + * retpoline hints: primary infrastructure and initial hints (LP: #1758856) + - [Packaging] retpoline -- add safe usage hint support + - [Packaging] retpoline-check -- only report additions + - [Packaging] retpoline -- widen indirect call/jmp detection + - [Packaging] retpoline -- elide %rip relative indirections + - [Packaging] retpoline -- clear hint information from packages + - SAUCE: apm -- annotate indirect calls within + firmware_restrict_branch_speculation_{start,end} + - SAUCE: EFI -- annotate indirect calls within + firmware_restrict_branch_speculation_{start,end} + - SAUCE: early/late -- annotate indirect calls in early/late initialisation + code + - SAUCE: vga_set_mode -- avoid jump tables + - [Config] retpoine -- switch to new format + * Miscellaneous Ubuntu changes + - [Packaging] final-checks -- remove check for empty retpoline files + - [Packaging] skip cloud tools packaging when not building package + * Rebase to v4.16 + + [ Ubuntu: 4.16.0-2.3 ] + + * devpts: handle bind-mounts (LP: #1755857) + - SAUCE: devpts: hoist out check for DEVPTS_SUPER_MAGIC + - SAUCE: devpts: resolve devpts bind-mounts + - SAUCE: devpts: comment devpts_mntget() + - SAUCE: selftests: add devpts selftests + * [bionic][arm64] d-i: add hisi_sas_v3_hw to scsi-modules (LP: #1756103) + - d-i: add hisi_sas_v3_hw to scsi-modules + * [Bionic][ARM64] PCI and SAS driver patches for hip08 SoCs (LP: #1756094) + - SAUCE: scsi: hisi_sas: config for hip08 ES + - SAUCE: scsi: hisi_sas: export device table of v3 hw to userspace + * s390/crypto: Fix kernel crash on aes_s390 module remove (LP: #1753424) + - SAUCE: s390/crypto: Fix kernel crash on aes_s390 module remove. + * Fix ARC hit rate (LP: #1755158) + - SAUCE: Fix ARC hit rate (LP: #1755158) + * ZFS setgid broken on 0.7 (LP: #1753288) + - SAUCE: Fix ZFS setgid + * CONFIG_EFI=y on armhf (LP: #1726362) + - [Config] CONFIG_EFI=y on armhf, reconcile secureboot EFI settings + * [Feature] Add xHCI debug device support in the driver (LP: #1730832) + - [Config] CONFIG_USB_XHCI_DBGCAP=y + * retpoline: ignore %cs:0xNNN constant indirections (LP: #1752655) + - [Packaging] retpoline -- elide %cs:0xNNNN constants on i386 + - [Config] retpoline -- clean up i386 retpoline files + * Miscellaneous Ubuntu changes + - [Packaging] retpoline-extract: flag *0xNNN(%reg) branches + - [Config] fix up retpoline abi files + - [Config] fix up retpoline abi files + - d-i: Add netsec to nic-modules + * Rebase to v4.16-rc6 + + [ Ubuntu: 4.16.0-1.2 ] + + * Driver not found in Ubuntu kernel does not detect interface (LP: #1745927) + - d-i: add cxgb4 to nic-modules + * Support low-pin-count devices on Hisilicon SoCs (LP: #1677319) + - [Config] CONFIG_INDIRECT_PIO=y + - SAUCE: LIB: Introduce a generic PIO mapping method + - SAUCE: PCI: Remove unused __weak attribute in pci_register_io_range() + - SAUCE: PCI: Add fwnode handler as input param of pci_register_io_range() + - SAUCE: PCI: Apply the new generic I/O management on PCI IO hosts + - SAUCE: OF: Add missing I/O range exception for indirect-IO devices + - [Config] CONFIG_HISILICON_LPC=y + - SAUCE: HISI LPC: Support the LPC host on Hip06/Hip07 with DT bindings + - SAUCE: ACPI / scan: do not enumerate Indirect IO host children + - SAUCE: HISI LPC: Add ACPI support + - SAUCE: MAINTAINERS: Add maintainer for HiSilicon LPC driver + * Miscellaneous Ubuntu changes + - SAUCE: tools: use CC for linking acpi tools + * Rebase to v4.16-rc3 + + [ Ubuntu: 4.16.0-0.1 ] + + * retpoline abi files are empty on i386 (LP: #1751021) + - [Packaging] retpoline-extract -- instantiate retpoline files for i386 + - [Packaging] final-checks -- sanity checking ABI contents + - [Packaging] final-checks -- check for empty retpoline files + * Miscellaneous upstream changes + - disable vbox build + - Disable zfs build + * Rebase to v4.16-rc2 + + [ Ubuntu: 4.16.0-0.0 ] + + * Dummy entry + + -- Marcelo Henrique Cerri Thu, 26 Jul 2018 09:49:11 -0300 + +linux-azure (4.17.0-1000.0) cosmic; urgency=medium + + * Empty. + + -- Marcelo Henrique Cerri Mon, 23 Jul 2018 11:16:46 -0300 + +linux-azure (4.15.0-1018.18) bionic; urgency=medium + + * linux-azure: 4.15.0-1018.18 -proposed tracker (LP: #1782178) + + + [ Ubuntu: 4.15.0-29.31 ] + + * linux: 4.15.0-29.31 -proposed tracker (LP: #1782173) + * [SRU Bionic][Cosmic] kernel panic in ipmi_ssif at msg_done_handler + (LP: #1777716) + - ipmi_ssif: Fix kernel panic at msg_done_handler + * Update to ocxl driver for 18.04.1 (LP: #1775786) + - misc: ocxl: use put_device() instead of device_unregister() + - powerpc: Add TIDR CPU feature for POWER9 + - powerpc: Use TIDR CPU feature to control TIDR allocation + - powerpc: use task_pid_nr() for TID allocation + - ocxl: Rename pnv_ocxl_spa_remove_pe to clarify it's action + - ocxl: Expose the thread_id needed for wait on POWER9 + - ocxl: Add an IOCTL so userspace knows what OCXL features are available + - ocxl: Document new OCXL IOCTLs + - ocxl: Fix missing unlock on error in afu_ioctl_enable_p9_wait() + * Critical upstream bugfix missing in Ubuntu 18.04 - frequent Xorg crash after + suspend (LP: #1776887) + - ocxl: Document the OCXL_IOCTL_GET_METADATA IOCTL + * Hard LOCKUP observed on stressing Ubuntu 18 04 (LP: #1777194) + - powerpc: use NMI IPI for smp_send_stop + - powerpc: Fix smp_send_stop NMI IPI handling + * IPL: ppc64_cpu --frequency hang with INFO: rcu_sched detected stalls on + CPUs/tasks on w34 and wsbmc016 with 920.1714.20170330n (LP: #1773964) + - rtc: opal: Fix OPAL RTC driver OPAL_BUSY loops + * [Regression] EXT4-fs error (device sda2): ext4_validate_block_bitmap:383: + comm stress-ng: bg 4705: bad block bitmap checksum (LP: #1781709) + - SAUCE: Revert "UBUNTU: SAUCE: ext4: fix ext4_validate_inode_bitmap: comm + stress-ng: Corrupt inode bitmap" + - SAUCE: ext4: check for allocation block validity with block group locked + + [ Ubuntu: 4.15.0-28.30 ] + + * linux: 4.15.0-28.30 -proposed tracker (LP: #1781433) + * Cannot set MTU higher than 1500 in Xen instance (LP: #1781413) + - xen-netfront: Fix mismatched rtnl_unlock + - xen-netfront: Update features after registering netdev + + -- Marcelo Henrique Cerri Thu, 19 Jul 2018 09:03:45 -0300 + +linux-azure (4.15.0-1017.17) bionic; urgency=medium + + * linux-azure: 4.15.0-1017.17 -proposed tracker (LP: #1781066) + + * [Hyper-V] Please set CONFIG_BLK_DEV_DRBD to "m" (LP: #1780309) + - [Config] linux-azure: CONFIG_BLK_DEV_DRBD=m + + [ Ubuntu: 4.15.0-27.29 ] + + * linux: 4.15.0-27.29 -proposed tracker (LP: #1781062) + * [Regression] EXT4-fs error (device sda1): ext4_validate_inode_bitmap:99: + comm stress-ng: Corrupt inode bitmap (LP: #1780137) + - SAUCE: ext4: fix ext4_validate_inode_bitmap: comm stress-ng: Corrupt inode + bitmap + + -- Marcelo Henrique Cerri Wed, 11 Jul 2018 18:53:37 -0300 + +linux-azure (4.15.0-1016.16) bionic; urgency=medium + + * linux-azure: 4.15.0-1016.16 -proposed tracker (LP: #1780117) + + + [ Ubuntu: 4.15.0-26.28 ] + + * linux: 4.15.0-26.28 -proposed tracker (LP: #1780112) + * failure to boot with linux-image-4.15.0-24-generic (LP: #1779827) // Cloud- + init causes potentially huge boot delays with 4.15 kernels (LP: #1780062) + - random: Make getrandom() ready earlier + + -- Marcelo Henrique Cerri Wed, 04 Jul 2018 14:17:07 -0300 + +linux-azure (4.15.0-1015.15) bionic; urgency=medium + + * linux-azure: 4.15.0-1015.15 -proposed tracker (LP: #1779360) + + * linux-azure: fix Vcs-Git tag (LP: #1779929) + - [Packaging]: Update Vcs-Git + + [ Ubuntu: 4.15.0-25.27 ] + + * linux: 4.15.0-25.27 -proposed tracker (LP: #1779354) + * hisi_sas_v3_hw: internal task abort: timeout and not done. (LP: #1777736) + - scsi: hisi_sas: Update a couple of register settings for v3 hw + * hisi_sas: Add missing PHY spinlock init (LP: #1777734) + - scsi: hisi_sas: Add missing PHY spinlock init + * hisi_sas: improve read performance by pre-allocating slot DMA buffers + (LP: #1777727) + - scsi: hisi_sas: use dma_zalloc_coherent() + - scsi: hisi_sas: Use dmam_alloc_coherent() + - scsi: hisi_sas: Pre-allocate slot DMA buffers + * hisi_sas: Failures during host reset (LP: #1777696) + - scsi: hisi_sas: Only process broadcast change in phy_bcast_v3_hw() + - scsi: hisi_sas: Fix the conflict between dev gone and host reset + - scsi: hisi_sas: Adjust task reject period during host reset + - scsi: hisi_sas: Add a flag to filter PHY events during reset + - scsi: hisi_sas: Release all remaining resources in clear nexus ha + * Fake SAS addresses for SATA disks on HiSilicon D05 are non-unique + (LP: #1776750) + - scsi: hisi_sas: make SAS address of SATA disks unique + * Vcs-Git header on bionic linux source package points to zesty git tree + (LP: #1766055) + - [Packaging]: Update Vcs-Git + * large KVM instances run out of IRQ routes (LP: #1778261) + - SAUCE: kvm -- increase KVM_MAX_IRQ_ROUTES to 2048 on x86 + + -- Marcelo Henrique Cerri Tue, 03 Jul 2018 16:17:05 -0300 + +linux-azure (4.15.0-1014.14) bionic; urgency=medium + + * linux-azure: 4.15.0-1014.14 -proposed tracker (LP: #1776342) + + * [Hyper-V] Disable CONFIG_HOTPLUG_CPU in linux-azure (LP: #1776293) + - [Config] azure: CONFIG_HOTPLUG_CPU=n + + * [Hyper-V] IB/mlx5: Respect new UMR capabilities (LP: #1762554) + - IB/mlx5: Enable ECN capable bits for UD RoCE v2 QPs + - IB/mlx5: Respect new UMR capabilities + + [ Ubuntu: 4.15.0-24.26 ] + + * linux: 4.15.0-24.26 -proposed tracker (LP: #1776338) + * Bionic update: upstream stable patchset 2018-06-06 (LP: #1775483) + - drm: bridge: dw-hdmi: Fix overflow workaround for Amlogic Meson GX SoCs + - i40e: Fix attach VF to VM issue + - tpm: cmd_ready command can be issued only after granting locality + - tpm: tpm-interface: fix tpm_transmit/_cmd kdoc + - tpm: add retry logic + - Revert "ath10k: send (re)assoc peer command when NSS changed" + - bonding: do not set slave_dev npinfo before slave_enable_netpoll in + bond_enslave + - ipv6: add RTA_TABLE and RTA_PREFSRC to rtm_ipv6_policy + - ipv6: sr: fix NULL pointer dereference in seg6_do_srh_encap()- v4 pkts + - KEYS: DNS: limit the length of option strings + - l2tp: check sockaddr length in pppol2tp_connect() + - net: validate attribute sizes in neigh_dump_table() + - llc: delete timers synchronously in llc_sk_free() + - tcp: don't read out-of-bounds opsize + - net: af_packet: fix race in PACKET_{R|T}X_RING + - tcp: md5: reject TCP_MD5SIG or TCP_MD5SIG_EXT on established sockets + - net: fix deadlock while clearing neighbor proxy table + - team: avoid adding twice the same option to the event list + - net/smc: fix shutdown in state SMC_LISTEN + - team: fix netconsole setup over team + - packet: fix bitfield update race + - tipc: add policy for TIPC_NLA_NET_ADDR + - pppoe: check sockaddr length in pppoe_connect() + - vlan: Fix reading memory beyond skb->tail in skb_vlan_tagged_multi + - amd-xgbe: Add pre/post auto-negotiation phy hooks + - sctp: do not check port in sctp_inet6_cmp_addr + - amd-xgbe: Improve KR auto-negotiation and training + - strparser: Do not call mod_delayed_work with a timeout of LONG_MAX + - amd-xgbe: Only use the SFP supported transceiver signals + - strparser: Fix incorrect strp->need_bytes value. + - net: sched: ife: signal not finding metaid + - tcp: clear tp->packets_out when purging write queue + - net: sched: ife: handle malformed tlv length + - net: sched: ife: check on metadata length + - llc: hold llc_sap before release_sock() + - llc: fix NULL pointer deref for SOCK_ZAPPED + - net: ethernet: ti: cpsw: fix tx vlan priority mapping + - virtio_net: split out ctrl buffer + - virtio_net: fix adding vids on big-endian + - KVM: s390: force bp isolation for VSIE + - s390: correct module section names for expoline code revert + - microblaze: Setup dependencies for ASM optimized lib functions + - commoncap: Handle memory allocation failure. + - scsi: mptsas: Disable WRITE SAME + - cdrom: information leak in cdrom_ioctl_media_changed() + - m68k/mac: Don't remap SWIM MMIO region + - block/swim: Check drive type + - block/swim: Don't log an error message for an invalid ioctl + - block/swim: Remove extra put_disk() call from error path + - block/swim: Rename macros to avoid inconsistent inverted logic + - block/swim: Select appropriate drive on device open + - block/swim: Fix array bounds check + - block/swim: Fix IO error at end of medium + - tracing: Fix missing tab for hwlat_detector print format + - s390/cio: update chpid descriptor after resource accessibility event + - s390/dasd: fix IO error for newly defined devices + - s390/uprobes: implement arch_uretprobe_is_alive() + - ACPI / video: Only default only_lcd to true on Win8-ready _desktops_ + - docs: ip-sysctl.txt: fix name of some ipv6 variables + - net: mvpp2: Fix DMA address mask size + - net: stmmac: Disable ACS Feature for GMAC >= 4 + - l2tp: hold reference on tunnels in netlink dumps + - l2tp: hold reference on tunnels printed in pppol2tp proc file + - l2tp: hold reference on tunnels printed in l2tp/tunnels debugfs file + - l2tp: fix {pppol2tp, l2tp_dfs}_seq_stop() in case of seq_file overflow + - s390/qeth: fix error handling in adapter command callbacks + - s390/qeth: avoid control IO completion stalls + - s390/qeth: handle failure on workqueue creation + - bnxt_en: Fix memory fault in bnxt_ethtool_init() + - virtio-net: add missing virtqueue kick when flushing packets + - VSOCK: make af_vsock.ko removable again + - hwmon: (k10temp) Add temperature offset for Ryzen 2700X + - hwmon: (k10temp) Add support for AMD Ryzen w/ Vega graphics + - s390/cpum_cf: rename IBM z13/z14 counter names + - kprobes: Fix random address output of blacklist file + - Revert "pinctrl: intel: Initialize GPIO properly when used through irqchip" + * Lenovo V330 needs patch in ideapad_laptop module for rfkill (LP: #1774636) + - SAUCE: Add Lenovo V330 to the ideapad_laptop rfkill blacklist + * bluetooth controller fail after suspend with USB autosuspend on XPS 13 9360 + (LP: #1775217) + - Bluetooth: btusb: Add Dell XPS 13 9360 to btusb_needs_reset_resume_table + * [Hyper-V] PCI: hv: Fix 2 hang issues in hv_compose_msi_msg (LP: #1758378) + - PCI: hv: Only queue new work items in hv_pci_devices_present() if necessary + - PCI: hv: Remove the bogus test in hv_eject_device_work() + - PCI: hv: Fix a comment typo in _hv_pcifront_read_config() + * register on binfmt_misc may overflow and crash the system (LP: #1775856) + - fs/binfmt_misc.c: do not allow offset overflow + * CVE-2018-11508 + - compat: fix 4-byte infoleak via uninitialized struct field + * Network installs fail on SocioNext board (LP: #1775884) + - net: netsec: reduce DMA mask to 40 bits + - net: socionext: reset hardware in ndo_stop + - net: netsec: enable tx-irq during open callback + * r8169 ethernet card don't work after returning from suspension + (LP: #1752772) + - PCI: Add pcim_set_mwi(), a device-managed pci_set_mwi() + - r8169: switch to device-managed functions in probe + - r8169: remove netif_napi_del in probe error path + - r8169: remove some WOL-related dead code + - r8169: disable WOL per default + - r8169: improve interrupt handling + - r8169: fix interrupt number after adding support for MSI-X interrupts + * ISST-LTE:KVM:Ubuntu18.04:BostonLC:boslcp3:boslcp3g3:Guest conosle hangs + after hotplug CPU add operation. (LP: #1759723) + - genirq/affinity: assign vectors to all possible CPUs + - genirq/affinity: Don't return with empty affinity masks on error + - genirq/affinity: Rename *node_to_possible_cpumask as *node_to_cpumask + - genirq/affinity: Move actual irq vector spreading into a helper function + - genirq/affinity: Allow irq spreading from a given starting point + - genirq/affinity: Spread irq vectors among present CPUs as far as possible + - blk-mq: simplify queue mapping & schedule with each possisble CPU + - blk-mq: make sure hctx->next_cpu is set correctly + - blk-mq: Avoid that blk_mq_delay_run_hw_queue() introduces unintended delays + - blk-mq: make sure that correct hctx->next_cpu is set + - blk-mq: avoid to write intermediate result to hctx->next_cpu + - blk-mq: introduce blk_mq_hw_queue_first_cpu() to figure out first cpu + - blk-mq: don't check queue mapped in __blk_mq_delay_run_hw_queue() + - nvme: pci: pass max vectors as num_possible_cpus() to pci_alloc_irq_vectors + - scsi: hpsa: fix selection of reply queue + - scsi: megaraid_sas: fix selection of reply queue + - scsi: core: introduce force_blk_mq + - scsi: virtio_scsi: fix IO hang caused by automatic irq vector affinity + - scsi: virtio_scsi: unify scsi_host_template + * Fix several bugs in RDMA/hns driver (LP: #1770974) + - RDMA/hns: Use structs to describe the uABI instead of opencoding + - RDMA/hns: Remove unnecessary platform_get_resource() error check + - RDMA/hns: Remove unnecessary operator + - RDMA/hns: Add names to function arguments in function pointers + - RDMA/hns: Fix misplaced call to hns_roce_cleanup_hem_table + - RDMA/hns: Fix a bug with modifying mac address + - RDMA/hns: Use free_pages function instead of free_page + - RDMA/hns: Replace __raw_write*(cpu_to_le*()) with LE write*() + - RDMA/hns: Bugfix for init hem table + - RDMA/hns: Intercept illegal RDMA operation when use inline data + - RDMA/hns: Fix the qp context state diagram + - RDMA/hns: Only assign mtu if IB_QP_PATH_MTU bit is set + - RDMA/hns: Remove some unnecessary attr_mask judgement + - RDMA/hns: Only assign dqpn if IB_QP_PATH_DEST_QPN bit is set + - RDMA/hns: Adjust the order of cleanup hem table + - RDMA/hns: Update assignment method for owner field of send wqe + - RDMA/hns: Submit bad wr + - RDMA/hns: Fix a couple misspellings + - RDMA/hns: Add rq inline flags judgement + - RDMA/hns: Bugfix for rq record db for kernel + - RDMA/hns: Load the RoCE dirver automatically + - RDMA/hns: Update convert function of endian format + - RDMA/hns: Add return operation when configured global param fail + - RDMA/hns: Not support qp transition from reset to reset for hip06 + - RDMA/hns: Fix the bug with rq sge + - RDMA/hns: Set desc_dma_addr for zero when free cmq desc + - RDMA/hns: Enable inner_pa_vld filed of mpt + - RDMA/hns: Set NULL for __internal_mr + - RDMA/hns: Fix the bug with NULL pointer + - RDMA/hns: Bugfix for cq record db for kernel + - RDMA/hns: Move the location for initializing tmp_len + - RDMA/hns: Drop local zgid in favor of core defined variable + - RDMA/hns: Add 64KB page size support for hip08 + - RDMA/hns: Rename the idx field of db + - RDMA/hns: Modify uar allocation algorithm to avoid bitmap exhaust + - RDMA/hns: Increase checking CMQ status timeout value + - RDMA/hns: Add reset process for RoCE in hip08 + - RDMA/hns: Fix the illegal memory operation when cross page + - RDMA/hns: Implement the disassociate_ucontext API + * powerpc/livepatch: Implement reliable stack tracing for the consistency + model (LP: #1771844) + - powerpc/livepatch: Implement reliable stack tracing for the consistency + model + * vmxnet3: update to latest ToT (LP: #1768143) + - vmxnet3: avoid xmit reset due to a race in vmxnet3 + - vmxnet3: use correct flag to indicate LRO feature + - vmxnet3: fix incorrect dereference when rxvlan is disabled + * 4.15.0-22-generic fails to boot on IBM S822LC (POWER8 (raw), altivec + supported) (LP: #1773162) + - Revert "powerpc/64s: Add support for a store forwarding barrier at kernel + entry/exit" + - powerpc/64s: Add support for a store forwarding barrier at kernel entry/exit + * Decode ARM CPER records in kernel (LP: #1770244) + - [Config] CONFIG_UEFI_CPER_ARM=y + - efi: Move ARM CPER code to new file + - efi: Parse ARM error information value + * Adding back alx WoL feature (LP: #1772610) + - SAUCE: Revert "alx: remove WoL support" + - SAUCE: alx: add enable_wol paramenter + * Lancer A0 Asic HBA's won't boot with 18.04 (LP: #1768103) + - scsi: lpfc: Fix WQ/CQ creation for older asic's. + - scsi: lpfc: Fix 16gb hbas failing cq create. + * [LTCTest][OPAL][OP920] cpupower idle-info is not listing stop4 and stop5 + idle states when all CORES are guarded (LP: #1771780) + - SAUCE: cpuidle/powernv : init all present cpus for deep states + * Huawei 25G/100G Network Adapters Unsupported (LP: #1770970) + - net-next/hinic: add pci device ids for 25ge and 100ge card + * [Ubuntu 18.04.1] POWER9 - Nvidia Volta - Kernel changes to enable Nvidia + driver on bare metal (LP: #1772991) + - powerpc/powernv/npu: Fix deadlock in mmio_invalidate() + - powerpc/powernv/mce: Don't silently restart the machine + - powerpc/npu-dma.c: Fix crash after __mmu_notifier_register failure + - powerpc/mm: Flush cache on memory hot(un)plug + - powerpc/powernv/memtrace: Let the arch hotunplug code flush cache + - powerpc/powernv/npu: Add lock to prevent race in concurrent context + init/destroy + - powerpc/powernv/npu: Prevent overwriting of pnv_npu2_init_contex() callback + parameters + - powerpc/powernv/npu: Do a PID GPU TLB flush when invalidating a large + address range + - powerpc/mce: Fix a bug where mce loops on memory UE. + * cpum_sf: ensure sample freq is non-zero (LP: #1772593) + - s390/cpum_sf: ensure sample frequency of perf event attributes is non-zero + * PCIe link speeds of 16 GT/s are shown as "Unknown speed" (LP: #1773243) + - PCI: Add decoding for 16 GT/s link speed + * False positive ACPI _PRS error messages (LP: #1773295) + - ACPI / PCI: pci_link: Allow the absence of _PRS and change log level + * Dell systems crash when disabling Nvidia dGPU (LP: #1773299) + - ACPI / OSI: Add OEM _OSI strings to disable NVidia RTD3 + * wlp3s0: failed to remove key (1, ff:ff:ff:ff:ff:ff) from hardware (-22) + (LP: #1720930) + - iwlwifi: mvm: fix "failed to remove key" message + * Expose arm64 CPU topology to userspace (LP: #1770231) + - ACPICA: ACPI 6.2: Additional PPTT flags + - drivers: base: cacheinfo: move cache_setup_of_node() + - drivers: base: cacheinfo: setup DT cache properties early + - cacheinfo: rename of_node to fw_token + - arm64/acpi: Create arch specific cpu to acpi id helper + - ACPI/PPTT: Add Processor Properties Topology Table parsing + - [Config] CONFIG_ACPI_PPTT=y + - ACPI: Enable PPTT support on ARM64 + - drivers: base cacheinfo: Add support for ACPI based firmware tables + - arm64: Add support for ACPI based firmware tables + - arm64: topology: rename cluster_id + - arm64: topology: enable ACPI/PPTT based CPU topology + - ACPI: Add PPTT to injectable table list + - arm64: topology: divorce MC scheduling domain from core_siblings + * hisi_sas robustness fixes (LP: #1774466) + - scsi: hisi_sas: delete timer when removing hisi_sas driver + - scsi: hisi_sas: print device id for errors + - scsi: hisi_sas: Add some checks to avoid free'ing a sas_task twice + - scsi: hisi_sas: check host frozen before calling "done" function + - scsi: hisi_sas: check sas_dev gone earlier in hisi_sas_abort_task() + - scsi: hisi_sas: stop controller timer for reset + - scsi: hisi_sas: update PHY linkrate after a controller reset + - scsi: hisi_sas: change slot index allocation mode + - scsi: hisi_sas: Change common allocation mode of device id + - scsi: hisi_sas: Reset disks when discovered + - scsi: hisi_sas: Create a scsi_host_template per HW module + - scsi: hisi_sas: Init disks after controller reset + - scsi: hisi_sas: Try wait commands before before controller reset + - scsi: hisi_sas: Include TMF elements in struct hisi_sas_slot + - scsi: hisi_sas: Add v2 hw force PHY function for internal ATA command + - scsi: hisi_sas: Terminate STP reject quickly for v2 hw + - scsi: hisi_sas: Fix return value when get_free_slot() failed + - scsi: hisi_sas: Mark PHY as in reset for nexus reset + * hisi_sas: Support newer v3 hardware (LP: #1774467) + - scsi: hisi_sas: update RAS feature for later revision of v3 HW + - scsi: hisi_sas: check IPTT is valid before using it for v3 hw + - scsi: hisi_sas: fix PI memory size + - scsi: hisi_sas: config ATA de-reset as an constrained command for v3 hw + - scsi: hisi_sas: remove redundant handling to event95 for v3 + - scsi: hisi_sas: add readl poll timeout helper wrappers + - scsi: hisi_sas: workaround a v3 hw hilink bug + - scsi: hisi_sas: Add LED feature for v3 hw + * hisi_sas: improve performance by optimizing DQ locking (LP: #1774472) + - scsi: hisi_sas: initialize dq spinlock before use + - scsi: hisi_sas: optimise the usage of DQ locking + - scsi: hisi_sas: relocate smp sg map + - scsi: hisi_sas: make return type of prep functions void + - scsi: hisi_sas: allocate slot buffer earlier + - scsi: hisi_sas: Don't lock DQ for complete task sending + - scsi: hisi_sas: Use device lock to protect slot alloc/free + - scsi: hisi_sas: add check of device in hisi_sas_task_exec() + - scsi: hisi_sas: fix a typo in hisi_sas_task_prep() + * Request to revert SAUCE patches in the 18.04 SRU and update with upstream + version (LP: #1768431) + - scsi: cxlflash: Handle spurious interrupts + - scsi: cxlflash: Remove commmands from pending list on timeout + - scsi: cxlflash: Synchronize reset and remove ops + - SAUCE: (no-up) cxlflash: OCXL diff between v2 and v3 + * After update to 4.13-43 Intel Graphics are Laggy (LP: #1773520) + - SAUCE: Revert "drm/i915/edp: Allow alternate fixed mode for eDP if + available." + * ELANPAD ELAN0612 does not work, patch available (LP: #1773509) + - SAUCE: Input: elan_i2c - add ELAN0612 to the ACPI table + * FS-Cache: Assertion failed: FS-Cache: 6 == 5 is false (LP: #1774336) + - SAUCE: CacheFiles: fix a read_waiter/read_copier race + * hns3 driver updates (LP: #1768670) + - net: hns3: VF should get the real rss_size instead of rss_size_max + - net: hns3: set the cmdq out_vld bit to 0 after used + - net: hns3: fix endian issue when PF get mbx message flag + - net: hns3: fix the queue id for tqp enable&&reset + - net: hns3: set the max ring num when alloc netdev + - net: hns3: add support for VF driver inner interface + hclgevf_ops.get_tqps_and_rss_info + - net: hns3: refactor the hclge_get/set_rss function + - net: hns3: refactor the hclge_get/set_rss_tuple function + - net: hns3: fix for RSS configuration loss problem during reset + - net: hns3: fix for pause configuration lost during reset + - net: hns3: fix for use-after-free when setting ring parameter + - net: hns3: refactor the get/put_vector function + - net: hns3: fix for coalesce configuration lost during reset + - net: hns3: refactor the coalesce related struct + - net: hns3: fix for coal configuation lost when setting the channel + - net: hns3: add existence check when remove old uc mac address + - net: hns3: fix for netdev not running problem after calling net_stop and + net_open + - net: hns3: fix for ipv6 address loss problem after setting channels + - net: hns3: unify the pause params setup function + - net: hns3: fix rx path skb->truesize reporting bug + - net: hns3: add support for querying pfc puase packets statistic + - net: hns3: fix for loopback failure when vlan filter is enable + - net: hns3: fix for buffer overflow smatch warning + - net: hns3: fix error type definition of return value + - net: hns3: fix return value error of hclge_get_mac_vlan_cmd_status() + - net: hns3: add existence checking before adding unicast mac address + - net: hns3: add result checking for VF when modify unicast mac address + - net: hns3: reallocate tx/rx buffer after changing mtu + - net: hns3: fix the VF queue reset flow error + - net: hns3: fix for vlan table lost problem when resetting + - net: hns3: increase the max time for IMP handle command + - net: hns3: change GL update rate + - net: hns3: change the time interval of int_gl calculating + - net: hns3: fix for getting wrong link mode problem + - net: hns3: add get_link support to VF + - net: hns3: add querying speed and duplex support to VF + - net: hns3: fix for not returning problem in get_link_ksettings when phy + exists + - net: hns3: Changes to make enet watchdog timeout func common for PF/VF + - net: hns3: Add VF Reset Service Task to support event handling + - net: hns3: Add VF Reset device state and its handling + - net: hns3: Add support to request VF Reset to PF + - net: hns3: Add support to reset the enet/ring mgmt layer + - net: hns3: Add support to re-initialize the hclge device + - net: hns3: Changes to support ARQ(Asynchronous Receive Queue) + - net: hns3: Add *Asserting Reset* mailbox message & handling in VF + - net: hns3: Changes required in PF mailbox to support VF reset + - net: hns3: hclge_inform_reset_assert_to_vf() can be static + - net: hns3: fix for returning wrong value problem in hns3_get_rss_key_size + - net: hns3: fix for returning wrong value problem in hns3_get_rss_indir_size + - net: hns3: fix for the wrong shift problem in hns3_set_txbd_baseinfo + - net: hns3: fix for not initializing VF rss_hash_key problem + - net: hns3: never send command queue message to IMP when reset + - net: hns3: remove unnecessary pci_set_drvdata() and devm_kfree() + - net: hns3: fix length overflow when CONFIG_ARM64_64K_PAGES + - net: hns3: Remove error log when getting pfc stats fails + - net: hns3: fix to correctly fetch l4 protocol outer header + - net: hns3: Fixes the out of bounds access in hclge_map_tqp + - net: hns3: Fixes the error legs in hclge_init_ae_dev function + - net: hns3: fix for phy_addr error in hclge_mac_mdio_config + - net: hns3: Fix to support autoneg only for port attached with phy + - net: hns3: fix a dead loop in hclge_cmd_csq_clean + - net: hns3: Fix for packet loss due wrong filter config in VLAN tbls + - net: hns3: Remove packet statistics in the range of 8192~12287 + - net: hns3: Add support of hardware rx-vlan-offload to HNS3 VF driver + - net: hns3: Fix for setting mac address when resetting + - net: hns3: remove add/del_tunnel_udp in hns3_enet module + - net: hns3: fix for cleaning ring problem + - net: hns3: refactor the loopback related function + - net: hns3: Fix for deadlock problem occurring when unregistering ae_algo + - net: hns3: Fix for the null pointer problem occurring when initializing + ae_dev failed + - net: hns3: Add a check for client instance init state + - net: hns3: Change return type of hnae3_register_ae_dev + - net: hns3: Change return type of hnae3_register_ae_algo + - net: hns3: Change return value in hnae3_register_client + - net: hns3: Fixes the back pressure setting when sriov is enabled + - net: hns3: Fix for fiber link up problem + - net: hns3: Add support of .sriov_configure in HNS3 driver + - net: hns3: Fixes the missing PCI iounmap for various legs + - net: hns3: Fixes error reported by Kbuild and internal review + - net: hns3: Fixes API to fetch ethernet header length with kernel default + - net: hns3: cleanup of return values in hclge_init_client_instance() + - net: hns3: Fix the missing client list node initialization + - net: hns3: Fix for hns3 module is loaded multiple times problem + - net: hns3: Use enums instead of magic number in hclge_is_special_opcode + - net: hns3: Fix for netdev not running problem after calling net_stop and + net_open + - net: hns3: Fixes kernel panic issue during rmmod hns3 driver + - net: hns3: Fix for CMDQ and Misc. interrupt init order problem + - net: hns3: Updates RX packet info fetch in case of multi BD + - net: hns3: Add support for tx_accept_tag2 and tx_accept_untag2 config + - net: hns3: Add STRP_TAGP field support for hardware revision 0x21 + - net: hns3: Add support to enable TX/RX promisc mode for H/W rev(0x21) + - net: hns3: Fix for PF mailbox receving unknown message + - net: hns3: Fixes the state to indicate client-type initialization + - net: hns3: Fixes the init of the VALID BD info in the descriptor + - net: hns3: Removes unnecessary check when clearing TX/RX rings + - net: hns3: Clear TX/RX rings when stopping port & un-initializing client + - net: hns3: Remove unused led control code + - net: hns3: Adds support for led locate command for copper port + - net: hns3: Fixes initalization of RoCE handle and makes it conditional + - net: hns3: Disable vf vlan filter when vf vlan table is full + - net: hns3: Add support for IFF_ALLMULTI flag + - net: hns3: Add repeat address checking for setting mac address + - net: hns3: Fix setting mac address error + - net: hns3: Fix for service_task not running problem after resetting + - net: hns3: Fix for hclge_reset running repeatly problem + - net: hns3: Fix for phy not link up problem after resetting + - net: hns3: Add missing break in misc_irq_handle + - net: hns3: Fix for vxlan tx checksum bug + - net: hns3: Optimize the PF's process of updating multicast MAC + - net: hns3: Optimize the VF's process of updating multicast MAC + - SAUCE: {topost} net: hns3: add support for serdes loopback selftest + - SAUCE: {topost} net: hns3: RX BD information valid only in last BD except + VLD bit and buffer size + - SAUCE: {topost} net: hns3: remove hclge_get_vector_index from + hclge_bind_ring_with_vector + - SAUCE: {topost} net: hns3: rename the interface for init_client_instance and + uninit_client_instance + - SAUCE: {topost} net: hns3: add vector status check before free vector + - SAUCE: {topost} net: hns3: add l4_type check for both ipv4 and ipv6 + - SAUCE: {topost} net: hns3: remove unused head file in hnae3.c + - SAUCE: {topost} net: hns3: extraction an interface for state state + init|uninit + - SAUCE: {topost} net: hns3: print the ret value in error information + - SAUCE: {topost} net: hns3: remove the Redundant put_vector in + hns3_client_uninit + - SAUCE: {topost} net: hns3: add unlikely for error check + - SAUCE: {topost} net: hns3: remove back in struct hclge_hw + - SAUCE: {topost} net: hns3: use lower_32_bits and upper_32_bits + - SAUCE: {topost} net: hns3: remove unused hclge_ring_to_dma_dir + - SAUCE: {topost} net: hns3: remove useless code in hclge_cmd_send + - SAUCE: {topost} net: hns3: remove some redundant assignments + - SAUCE: {topost} net: hns3: simplify hclge_cmd_csq_clean + - SAUCE: {topost} net: hns3: using modulo for cyclic counters in + hclge_cmd_send + - SAUCE: {topost} net: hns3: remove a redundant hclge_cmd_csq_done + - SAUCE: {topost} net: hns3: remove some unused members of some structures + - SAUCE: {topost} net: hns3: give default option while dependency HNS3 set + - SAUCE: {topost} net: hns3: use dma_zalloc_coherent instead of + kzalloc/dma_map_single + - SAUCE: {topost} net: hns3: modify hnae_ to hnae3_ + - SAUCE: {topost} net: hns3: fix unused function warning in VF driver + - SAUCE: {topost} net: hns3: remove some redundant assignments + - SAUCE: {topost} net: hns3: standardize the handle of return value + - SAUCE: {topost} net: hns3: remove extra space and brackets + - SAUCE: {topost} net: hns3: fix unreasonable code comments + - SAUCE: {topost} net: hns3: use decimal for bit offset macros + - SAUCE: {topost} net: hns3: modify inconsistent bit mask macros + - SAUCE: {topost} net: hns3: fix mislead parameter name + - SAUCE: {topost} net: hns3: remove unused struct member and definition + - SAUCE: {topost} net: hns3: Add SPDX tags to hns3 driver + - SAUCE: {topost} net: hns3: Add pf reset for hip08 RoCE + - SAUCE: {topost} net: hns3: optimize the process of notifying roce client + - SAUCE: {topost} net: hns3: Add calling roce callback function when link + status change + - SAUCE: {topost} net: hns3: fix tc setup when netdev is first up + - SAUCE: {topost} net: hns3: fix for mac pause not disable in pfc mode + - SAUCE: {topost} net: hns3: fix for waterline not setting correctly + - SAUCE: {topost} net: hns3: fix for l4 checksum offload bug + - SAUCE: {topost} net: hns3: fix for mailbox message truncated problem + - SAUCE: {topost} net: hns3: Add configure for mac minimal frame size + - SAUCE: {topost} net: hns3: fix warning bug when doing lp selftest + - SAUCE: {topost} net: hns3: fix get_vector ops in hclgevf_main module + - SAUCE: {topost} net: hns3: remove the warning when clear reset cause + - SAUCE: {topost} net: hns3: Use roce handle when calling roce callback + function + - SAUCE: {topost} net: hns3: prevent sending command during global or core + reset + - SAUCE: {topost} net: hns3: modify the order of initializeing command queue + register + - SAUCE: {topost} net: hns3: reset net device with rtnl_lock + - SAUCE: {topost} net: hns3: prevent to request reset frequently + - SAUCE: {topost} net: hns3: correct reset event status register + - SAUCE: {topost} net: hns3: separate roce from nic when resetting + - SAUCE: net: hns3: Fix for phy link issue when using marvell phy driver + - SAUCE: {topost} net: hns3: fix return value error in + hns3_reset_notify_down_enet + - SAUCE: {topost} net: hns3: remove unnecessary ring configuration operation + while resetting + - SAUCE: {topost} net: hns3: fix for reset_level default assignment probelm + - SAUCE: {topost} net: hns3: fix for using wrong mask and shift in + hclge_get_ring_chain_from_mbx + - SAUCE: {topost} net: hns3: fix comments for hclge_get_ring_chain_from_mbx + - SAUCE: net: hns3: Fix for VF mailbox cannot receiving PF response + - SAUCE: net: hns3: Fix for VF mailbox receiving unknown message + - SAUCE: net: hns3: Optimize PF CMDQ interrupt switching process + * enable mic-mute hotkey and led on Lenovo M820z and M920z (LP: #1774306) + - ALSA: hda/realtek - Enable mic-mute hotkey for several Lenovo AIOs + * Bionic update: upstream stable patchset 2018-05-29 (LP: #1774063) + - cifs: do not allow creating sockets except with SMB1 posix exensions + - btrfs: fix unaligned access in readdir + - x86/acpi: Prevent X2APIC id 0xffffffff from being accounted + - clocksource/imx-tpm: Correct -ETIME return condition check + - x86/tsc: Prevent 32bit truncation in calc_hpet_ref() + - drm/vc4: Fix memory leak during BO teardown + - drm/i915/gvt: throw error on unhandled vfio ioctls + - drm/i915/audio: Fix audio detection issue on GLK + - drm/i915: Do no use kfree() to free a kmem_cache_alloc() return value + - drm/i915: Fix LSPCON TMDS output buffer enabling from low-power state + - drm/i915/bxt, glk: Increase PCODE timeouts during CDCLK freq changing + - usb: musb: fix enumeration after resume + - usb: musb: call pm_runtime_{get,put}_sync before reading vbus registers + - usb: musb: Fix external abort in musb_remove on omap2430 + - firewire-ohci: work around oversized DMA reads on JMicron controllers + - x86/tsc: Allow TSC calibration without PIT + - NFSv4: always set NFS_LOCK_LOST when a lock is lost. + - ACPI / LPSS: Do not instiate platform_dev for devs without MMIO resources + - ALSA: hda - Use IS_REACHABLE() for dependency on input + - ASoC: au1x: Fix timeout tests in au1xac97c_ac97_read() + - kvm: x86: fix KVM_XEN_HVM_CONFIG ioctl + - RDMA/core: Clarify rdma_ah_find_type + - KVM: PPC: Book3S HV: Enable migration of decrementer register + - netfilter: ipv6: nf_defrag: Pass on packets to stack per RFC2460 + - tracing/hrtimer: Fix tracing bugs by taking all clock bases and modes into + account + - KVM: s390: use created_vcpus in more places + - platform/x86: dell-laptop: Filter out spurious keyboard backlight change + events + - xprtrdma: Fix backchannel allocation of extra rpcrdma_reps + - selftest: ftrace: Fix to pick text symbols for kprobes + - PCI: Add function 1 DMA alias quirk for Marvell 9128 + - Input: psmouse - fix Synaptics detection when protocol is disabled + - libbpf: Makefile set specified permission mode + - Input: synaptics - reset the ABS_X/Y fuzz after initializing MT axes + - i40iw: Free IEQ resources + - i40iw: Zero-out consumer key on allocate stag for FMR + - perf unwind: Do not look just at the global callchain_param.record_mode + - tools lib traceevent: Simplify pointer print logic and fix %pF + - perf callchain: Fix attr.sample_max_stack setting + - tools lib traceevent: Fix get_field_str() for dynamic strings + - perf record: Fix failed memory allocation for get_cpuid_str + - iommu/exynos: Don't unconditionally steal bus ops + - powerpc: System reset avoid interleaving oops using die synchronisation + - iommu/vt-d: Use domain instead of cache fetching + - dm thin: fix documentation relative to low water mark threshold + - dm mpath: return DM_MAPIO_REQUEUE on blk-mq rq allocation failure + - ubifs: Fix uninitialized variable in search_dh_cookie() + - net: stmmac: dwmac-meson8b: fix setting the RGMII TX clock on Meson8b + - net: stmmac: dwmac-meson8b: propagate rate changes to the parent clock + - spi: a3700: Clear DATA_OUT when performing a read + - IB/cq: Don't force IB_POLL_DIRECT poll context for ib_process_cq_direct + - nfs: Do not convert nfs_idmap_cache_timeout to jiffies + - MIPS: Fix clean of vmlinuz.{32,ecoff,bin,srec} + - PCI: Add dummy pci_irqd_intx_xlate() for CONFIG_PCI=n build + - watchdog: sp5100_tco: Fix watchdog disable bit + - kconfig: Don't leak main menus during parsing + - kconfig: Fix automatic menu creation mem leak + - kconfig: Fix expr_free() E_NOT leak + - ipmi/powernv: Fix error return code in ipmi_powernv_probe() + - Btrfs: set plug for fsync + - btrfs: Fix out of bounds access in btrfs_search_slot + - Btrfs: fix scrub to repair raid6 corruption + - btrfs: fail mount when sb flag is not in BTRFS_SUPER_FLAG_SUPP + - Btrfs: fix unexpected EEXIST from btrfs_get_extent + - Btrfs: raid56: fix race between merge_bio and rbio_orig_end_io + - RDMA/cma: Check existence of netdevice during port validation + - f2fs: avoid hungtask when GC encrypted block if io_bits is set + - scsi: devinfo: fix format of the device list + - scsi: fas216: fix sense buffer initialization + - Input: stmfts - set IRQ_NOAUTOEN to the irq flag + - HID: roccat: prevent an out of bounds read in kovaplus_profile_activated() + - nfp: fix error return code in nfp_pci_probe() + - block: Set BIO_TRACE_COMPLETION on new bio during split + - bpf: test_maps: cleanup sockmaps when test ends + - i40evf: Don't schedule reset_task when device is being removed + - i40evf: ignore link up if not running + - platform/x86: thinkpad_acpi: suppress warning about palm detection + - KVM: s390: vsie: use READ_ONCE to access some SCB fields + - blk-mq-debugfs: don't allow write on attributes with seq_operations set + - ASoC: rockchip: Use dummy_dai for rt5514 dsp dailink + - igb: Allow to remove administratively set MAC on VFs + - igb: Clear TXSTMP when ptp_tx_work() is timeout + - fm10k: fix "failed to kill vid" message for VF + - x86/hyperv: Stop suppressing X86_FEATURE_PCID + - tty: serial: exar: Relocate sleep wake-up handling + - device property: Define type of PROPERTY_ENRTY_*() macros + - crypto: artpec6 - remove select on non-existing CRYPTO_SHA384 + - RDMA/uverbs: Use an unambiguous errno for method not supported + - jffs2: Fix use-after-free bug in jffs2_iget()'s error handling path + - ixgbe: don't set RXDCTL.RLPML for 82599 + - i40e: program fragmented IPv4 filter input set + - i40e: fix reported mask for ntuple filters + - samples/bpf: Partially fixes the bpf.o build + - powerpc/numa: Use ibm,max-associativity-domains to discover possible nodes + - powerpc/numa: Ensure nodes initialized for hotplug + - RDMA/mlx5: Avoid memory leak in case of XRCD dealloc failure + - ntb_transport: Fix bug with max_mw_size parameter + - gianfar: prevent integer wrapping in the rx handler + - x86/hyperv: Check for required priviliges in hyperv_init() + - netfilter: x_tables: fix pointer leaks to userspace + - tcp_nv: fix potential integer overflow in tcpnv_acked + - kvm: Map PFN-type memory regions as writable (if possible) + - x86/kvm/vmx: do not use vm-exit instruction length for fast MMIO when + running nested + - fs/dax.c: release PMD lock even when there is no PMD support in DAX + - ocfs2: return -EROFS to mount.ocfs2 if inode block is invalid + - ocfs2/acl: use 'ip_xattr_sem' to protect getting extended attribute + - ocfs2: return error when we attempt to access a dirty bh in jbd2 + - mm/mempolicy: fix the check of nodemask from user + - mm/mempolicy: add nodes_empty check in SYSC_migrate_pages + - asm-generic: provide generic_pmdp_establish() + - sparc64: update pmdp_invalidate() to return old pmd value + - mm: thp: use down_read_trylock() in khugepaged to avoid long block + - mm: pin address_space before dereferencing it while isolating an LRU page + - mm/fadvise: discard partial page if endbyte is also EOF + - openvswitch: Remove padding from packet before L3+ conntrack processing + - blk-mq: fix discard merge with scheduler attached + - IB/hfi1: Re-order IRQ cleanup to address driver cleanup race + - IB/hfi1: Fix for potential refcount leak in hfi1_open_file() + - IB/ipoib: Fix for potential no-carrier state + - IB/core: Map iWarp AH type to undefined in rdma_ah_find_type + - drm/nouveau/pmu/fuc: don't use movw directly anymore + - s390/eadm: fix CONFIG_BLOCK include dependency + - netfilter: ipv6: nf_defrag: Kill frag queue on RFC2460 failure + - x86/power: Fix swsusp_arch_resume prototype + - x86/dumpstack: Avoid uninitlized variable + - firmware: dmi_scan: Fix handling of empty DMI strings + - ACPI: processor_perflib: Do not send _PPC change notification if not ready + - ACPI / bus: Do not call _STA on battery devices with unmet dependencies + - ACPI / scan: Use acpi_bus_get_status() to initialize ACPI_TYPE_DEVICE devs + - MIPS: TXx9: use IS_BUILTIN() for CONFIG_LEDS_CLASS + - perf record: Fix period option handling + - MIPS: Generic: Support GIC in EIC mode + - perf evsel: Fix period/freq terms setup + - xen-netfront: Fix race between device setup and open + - xen/grant-table: Use put_page instead of free_page + - bpf: sockmap, fix leaking maps with attached but not detached progs + - RDS: IB: Fix null pointer issue + - arm64: spinlock: Fix theoretical trylock() A-B-A with LSE atomics + - proc: fix /proc/*/map_files lookup + - PM / domains: Fix up domain-idle-states OF parsing + - cifs: silence compiler warnings showing up with gcc-8.0.0 + - bcache: properly set task state in bch_writeback_thread() + - bcache: fix for allocator and register thread race + - bcache: fix for data collapse after re-attaching an attached device + - bcache: return attach error when no cache set exist + - cpufreq: intel_pstate: Enable HWP during system resume on CPU0 + - selftests/ftrace: Add some missing glob checks + - rxrpc: Don't put crypto buffers on the stack + - svcrdma: Fix Read chunk round-up + - net: Extra '_get' in declaration of arch_get_platform_mac_address + - tools/libbpf: handle issues with bpf ELF objects containing .eh_frames + - SUNRPC: Don't call __UDPX_INC_STATS() from a preemptible context + - net: stmmac: discard disabled flags in interrupt status register + - bpf: fix rlimit in reuseport net selftest + - ACPI / EC: Restore polling during noirq suspend/resume phases + - PM / wakeirq: Fix unbalanced IRQ enable for wakeirq + - vfs/proc/kcore, x86/mm/kcore: Fix SMAP fault when dumping vsyscall user page + - powerpc/mm/hash64: Zero PGD pages on allocation + - x86/platform/UV: Fix GAM Range Table entries less than 1GB + - locking/qspinlock: Ensure node->count is updated before initialising node + - powerpc/powernv: IMC fix out of bounds memory access at shutdown + - perf test: Fix test trace+probe_libc_inet_pton.sh for s390x + - irqchip/gic-v3: Ignore disabled ITS nodes + - cpumask: Make for_each_cpu_wrap() available on UP as well + - irqchip/gic-v3: Change pr_debug message to pr_devel + - RDMA/core: Reduce poll batch for direct cq polling + - alarmtimer: Init nanosleep alarm timer on stack + - netfilter: x_tables: cap allocations at 512 mbyte + - netfilter: x_tables: add counters allocation wrapper + - netfilter: compat: prepare xt_compat_init_offsets to return errors + - netfilter: compat: reject huge allocation requests + - netfilter: x_tables: limit allocation requests for blob rule heads + - perf: Fix sample_max_stack maximum check + - perf: Return proper values for user stack errors + - RDMA/mlx5: Fix NULL dereference while accessing XRC_TGT QPs + - Revert "KVM: X86: Fix SMRAM accessing even if VM is shutdown" + - mac80211_hwsim: fix use-after-free bug in hwsim_exit_net + - btrfs: Fix race condition between delayed refs and blockgroup removal + - mm,vmscan: Allow preallocating memory for register_shrinker(). + * Bionic update: upstream stable patchset 2018-05-24 (LP: #1773233) + - tty: make n_tty_read() always abort if hangup is in progress + - cpufreq: CPPC: Use transition_delay_us depending transition_latency + - ubifs: Check ubifs_wbuf_sync() return code + - ubi: fastmap: Don't flush fastmap work on detach + - ubi: Fix error for write access + - ubi: Reject MLC NAND + - mm/ksm.c: fix inconsistent accounting of zero pages + - mm/hmm: hmm_pfns_bad() was accessing wrong struct + - task_struct: only use anon struct under randstruct plugin + - fs/reiserfs/journal.c: add missing resierfs_warning() arg + - resource: fix integer overflow at reallocation + - ipc/shm: fix use-after-free of shm file via remap_file_pages() + - mm, slab: reschedule cache_reap() on the same CPU + - usb: musb: gadget: misplaced out of bounds check + - phy: allwinner: sun4i-usb: poll vbus changes on A23/A33 when driving VBUS + - usb: gadget: udc: core: update usb_ep_queue() documentation + - ARM64: dts: meson: reduce odroid-c2 eMMC maximum rate + - KVM: arm/arm64: vgic-its: Fix potential overrun in vgic_copy_lpi_list + - ARM: EXYNOS: Fix coupled CPU idle freeze on Exynos4210 + - arm: dts: mt7623: fix USB initialization fails on bananapi-r2 + - ARM: dts: at91: at91sam9g25: fix mux-mask pinctrl property + - ARM: dts: exynos: Fix IOMMU support for GScaler devices on Exynos5250 + - ARM: dts: at91: sama5d4: fix pinctrl compatible string + - spi: atmel: init FIFOs before spi enable + - spi: Fix scatterlist elements size in spi_map_buf + - spi: Fix unregistration of controller with fixed SPI bus number + - media: atomisp_fops.c: disable atomisp_compat_ioctl32 + - media: vivid: check if the cec_adapter is valid + - media: vsp1: Fix BRx conditional path in WPF + - x86/xen: Delay get_cpu_cap until stack canary is established + - regmap: Fix reversed bounds check in regmap_raw_write() + - ACPI / video: Add quirk to force acpi-video backlight on Samsung 670Z5E + - ACPI / hotplug / PCI: Check presence of slot itself in get_slot_status() + - USB: gadget: f_midi: fixing a possible double-free in f_midi + - USB:fix USB3 devices behind USB3 hubs not resuming at hibernate thaw + - usb: dwc3: prevent setting PRTCAP to OTG from debugfs + - usb: dwc3: pci: Properly cleanup resource + - usb: dwc3: gadget: never call ->complete() from ->ep_queue() + - cifs: fix memory leak in SMB2_open() + - fix smb3-encryption breakage when CONFIG_DEBUG_SG=y + - smb3: Fix root directory when server returns inode number of zero + - HID: i2c-hid: fix size check and type usage + - i2c: i801: Save register SMBSLVCMD value only once + - i2c: i801: Restore configuration at shutdown + - CIFS: refactor crypto shash/sdesc allocation&free + - CIFS: add sha512 secmech + - CIFS: fix sha512 check in cifs_crypto_secmech_release + - powerpc/64s: Fix dt_cpu_ftrs to have restore_cpu clear unwanted LPCR bits + - powerpc/64: Call H_REGISTER_PROC_TBL when running as a HPT guest on POWER9 + - powerpc/64: Fix smp_wmb barrier definition use use lwsync consistently + - powerpc/kprobes: Fix call trace due to incorrect preempt count + - powerpc/kexec_file: Fix error code when trying to load kdump kernel + - powerpc/powernv: define a standard delay for OPAL_BUSY type retry loops + - powerpc/powernv: Fix OPAL NVRAM driver OPAL_BUSY loops + - HID: Fix hid_report_len usage + - HID: core: Fix size as type u32 + - soc: mediatek: fix the mistaken pointer accessed when subdomains are added + - ASoC: ssm2602: Replace reg_default_raw with reg_default + - ASoC: topology: Fix kcontrol name string handling + - irqchip/gic: Take lock when updating irq type + - random: use a tighter cap in credit_entropy_bits_safe() + - extcon: intel-cht-wc: Set direction and drv flags for V5 boost GPIO + - block: use 32-bit blk_status_t on Alpha + - jbd2: if the journal is aborted then don't allow update of the log tail + - ext4: shutdown should not prevent get_write_access + - ext4: eliminate sleep from shutdown ioctl + - ext4: pass -ESHUTDOWN code to jbd2 layer + - ext4: don't update checksum of new initialized bitmaps + - ext4: protect i_disksize update by i_data_sem in direct write path + - ext4: limit xattr size to INT_MAX + - ext4: always initialize the crc32c checksum driver + - ext4: don't allow r/w mounts if metadata blocks overlap the superblock + - ext4: move call to ext4_error() into ext4_xattr_check_block() + - ext4: add bounds checking to ext4_xattr_find_entry() + - ext4: add extra checks to ext4_xattr_block_get() + - dm crypt: limit the number of allocated pages + - RDMA/ucma: Don't allow setting RDMA_OPTION_IB_PATH without an RDMA device + - RDMA/mlx5: Protect from NULL pointer derefence + - RDMA/rxe: Fix an out-of-bounds read + - ALSA: pcm: Fix UAF at PCM release via PCM timer access + - IB/srp: Fix srp_abort() + - IB/srp: Fix completion vector assignment algorithm + - dmaengine: at_xdmac: fix rare residue corruption + - cxl: Fix possible deadlock when processing page faults from cxllib + - tpm: self test failure should not cause suspend to fail + - libnvdimm, dimm: fix dpa reservation vs uninitialized label area + - libnvdimm, namespace: use a safe lookup for dimm device name + - nfit, address-range-scrub: fix scrub in-progress reporting + - nfit: skip region registration for incomplete control regions + - ring-buffer: Check if memory is available before allocation + - um: Compile with modern headers + - um: Use POSIX ucontext_t instead of struct ucontext + - iommu/vt-d: Fix a potential memory leak + - mmc: jz4740: Fix race condition in IRQ mask update + - mmc: tmio: Fix error handling when issuing CMD23 + - PCI: Mark Broadcom HT1100 and HT2000 Root Port Extended Tags as broken + - clk: mvebu: armada-38x: add support for missing clocks + - clk: fix false-positive Wmaybe-uninitialized warning + - clk: mediatek: fix PWM clock source by adding a fixed-factor clock + - clk: bcm2835: De-assert/assert PLL reset signal when appropriate + - pwm: rcar: Fix a condition to prevent mismatch value setting to duty + - thermal: imx: Fix race condition in imx_thermal_probe() + - dt-bindings: clock: mediatek: add binding for fixed-factor clock axisel_d4 + - watchdog: f71808e_wdt: Fix WD_EN register read + - ALSA: pcm: Use ERESTARTSYS instead of EINTR in OSS emulation + - ALSA: pcm: Avoid potential races between OSS ioctls and read/write + - ALSA: pcm: Return -EBUSY for OSS ioctls changing busy streams + - ALSA: pcm: Fix mutex unbalance in OSS emulation ioctls + - ALSA: pcm: Fix endless loop for XRUN recovery in OSS emulation + - drm/amdgpu: Add an ATPX quirk for hybrid laptop + - drm/amdgpu: Fix always_valid bos multiple LRU insertions. + - drm/amdgpu/sdma: fix mask in emit_pipeline_sync + - drm/amdgpu: Fix PCIe lane width calculation + - drm/amdgpu/si: implement get/set pcie_lanes asic callback + - drm/rockchip: Clear all interrupts before requesting the IRQ + - drm/radeon: add PX quirk for Asus K73TK + - drm/radeon: Fix PCIe lane width calculation + - ALSA: line6: Use correct endpoint type for midi output + - ALSA: rawmidi: Fix missing input substream checks in compat ioctls + - ALSA: hda - New VIA controller suppor no-snoop path + - random: fix crng_ready() test + - random: use a different mixing algorithm for add_device_randomness() + - random: crng_reseed() should lock the crng instance that it is modifying + - random: add new ioctl RNDRESEEDCRNG + - HID: input: fix battery level reporting on BT mice + - HID: hidraw: Fix crash on HIDIOCGFEATURE with a destroyed device + - HID: wacom: bluetooth: send exit report for recent Bluetooth devices + - MIPS: uaccess: Add micromips clobbers to bzero invocation + - MIPS: memset.S: EVA & fault support for small_memset + - MIPS: memset.S: Fix return of __clear_user from Lpartial_fixup + - MIPS: memset.S: Fix clobber of v1 in last_fixup + - powerpc/eeh: Fix enabling bridge MMIO windows + - powerpc/lib: Fix off-by-one in alternate feature patching + - udf: Fix leak of UTF-16 surrogates into encoded strings + - fanotify: fix logic of events on child + - mmc: sdhci-pci: Only do AMD tuning for HS200 + - drm/i915: Correctly handle limited range YCbCr data on VLV/CHV + - jffs2_kill_sb(): deal with failed allocations + - hypfs_kill_super(): deal with failed allocations + - orangefs_kill_sb(): deal with allocation failures + - rpc_pipefs: fix double-dput() + - Don't leak MNT_INTERNAL away from internal mounts + - autofs: mount point create should honour passed in mode + - mm/filemap.c: fix NULL pointer in page_cache_tree_insert() + - Revert "media: lirc_zilog: driver only sends LIRCCODE" + - media: staging: lirc_zilog: incorrect reference counting + - writeback: safer lock nesting + - Bluetooth: hci_bcm: Add irq_polarity module option + - mm: hwpoison: disable memory error handling on 1GB hugepage + - media: rc: oops in ir_timer_keyup after device unplug + - acpi, nfit: rework NVDIMM leaf method detection + - ceph: always update atime/mtime/ctime for new inode + - ext4: fix offset overflow on 32-bit archs in ext4_iomap_begin() + - ext4: force revalidation of directory pointer after seekdir(2) + - RDMA/core: Avoid that ib_drain_qp() triggers an out-of-bounds stack access + - xprtrdma: Fix latency regression on NUMA NFS/RDMA clients + - xprtrdma: Fix corner cases when handling device removal + - IB/srpt: Fix an out-of-bounds stack access in srpt_zerolength_write() + - drivers/infiniband/core/verbs.c: fix build with gcc-4.4.4 + - drivers/infiniband/ulp/srpt/ib_srpt.c: fix build with gcc-4.4.4 + - mmc: core: Prevent bus reference leak in mmc_blk_init() + - drm/amd/display: HDMI has no sound after Panel power off/on + - trace_uprobe: Use %lx to display offset + - clk: tegra: Mark HCLK, SCLK and EMC as critical + - pwm: mediatek: Fix up PWM4 and PWM5 malfunction on MT7623 + - pwm: mediatek: Improve precision in rate calculation + - HID: i2c-hid: Fix resume issue on Raydium touchscreen device + - s390: add support for IBM z14 Model ZR1 + - drm/i915: Fix hibernation with ACPI S0 target state + - libnvdimm, dimm: handle EACCES failures from label reads + - device-dax: allow MAP_SYNC to succeed + - HID: i2c-hid: fix inverted return value from i2c_hid_command() + * CVE-2018-7755 + - SAUCE: floppy: Do not copy a kernel pointer to user memory in FDGETPRM ioctl + + -- Marcelo Henrique Cerri Thu, 14 Jun 2018 10:55:10 -0300 + +linux-azure (4.15.0-1013.13) bionic; urgency=medium + + * linux-azure: 4.15.0-1013.13 -proposed tracker (LP: #1772930) + + * Switch Build-Depends: transfig to fig2dev (LP: #1770770) + - [Config] update Build-Depends: transfig to fig2dev + + [ Ubuntu: 4.15.0-23.25 ] + + * linux: 4.15.0-23.25 -proposed tracker (LP: #1772927) + * arm64 SDEI support needs trampoline code for KPTI (LP: #1768630) + - arm64: mmu: add the entry trampolines start/end section markers into + sections.h + - arm64: sdei: Add trampoline code for remapping the kernel + * Some PCIe errors not surfaced through rasdaemon (LP: #1769730) + - ACPI: APEI: handle PCIe AER errors in separate function + - ACPI: APEI: call into AER handling regardless of severity + * qla2xxx: Fix page fault at kmem_cache_alloc_node() (LP: #1770003) + - scsi: qla2xxx: Fix session cleanup for N2N + - scsi: qla2xxx: Remove unused argument from qlt_schedule_sess_for_deletion() + - scsi: qla2xxx: Serialize session deletion by using work_lock + - scsi: qla2xxx: Serialize session free in qlt_free_session_done + - scsi: qla2xxx: Don't call dma_free_coherent with IRQ disabled. + - scsi: qla2xxx: Fix warning in qla2x00_async_iocb_timeout() + - scsi: qla2xxx: Prevent relogin trigger from sending too many commands + - scsi: qla2xxx: Fix double free bug after firmware timeout + - scsi: qla2xxx: Fixup locking for session deletion + * Several hisi_sas bug fixes (LP: #1768974) + - scsi: hisi_sas: dt-bindings: add an property of signal attenuation + - scsi: hisi_sas: support the property of signal attenuation for v2 hw + - scsi: hisi_sas: fix the issue of link rate inconsistency + - scsi: hisi_sas: fix the issue of setting linkrate register + - scsi: hisi_sas: increase timer expire of internal abort task + - scsi: hisi_sas: remove unused variable hisi_sas_devices.running_req + - scsi: hisi_sas: fix return value of hisi_sas_task_prep() + - scsi: hisi_sas: Code cleanup and minor bug fixes + * [bionic] machine stuck and bonding not working well when nvmet_rdma module + is loaded (LP: #1764982) + - nvmet-rdma: Don't flush system_wq by default during remove_one + - nvme-rdma: Don't flush delete_wq by default during remove_one + * Warnings/hang during error handling of SATA disks on SAS controller + (LP: #1768971) + - scsi: libsas: defer ata device eh commands to libata + * Hotplugging a SATA disk into a SAS controller may cause crash (LP: #1768948) + - ata: do not schedule hot plug if it is a sas host + * ISST-LTE:pKVM:Ubuntu1804: rcu_sched self-detected stall on CPU follow by CPU + ATTEMPT TO RE-ENTER FIRMWARE! (LP: #1767927) + - powerpc/powernv: Handle unknown OPAL errors in opal_nvram_write() + - powerpc/64s: return more carefully from sreset NMI + - powerpc/64s: sreset panic if there is no debugger or crash dump handlers + * fsnotify: Fix fsnotify_mark_connector race (LP: #1765564) + - fsnotify: Fix fsnotify_mark_connector race + * Hang on network interface removal in Xen virtual machine (LP: #1771620) + - xen-netfront: Fix hang on device removal + * HiSilicon HNS NIC names are truncated in /proc/interrupts (LP: #1765977) + - net: hns: Avoid action name truncation + * Ubuntu 18.04 kernel crashed while in degraded mode (LP: #1770849) + - SAUCE: powerpc/perf: Fix memory allocation for core-imc based on + num_possible_cpus() + * Switch Build-Depends: transfig to fig2dev (LP: #1770770) + - [Config] update Build-Depends: transfig to fig2dev + * smp_call_function_single/many core hangs with stop4 alone (LP: #1768898) + - cpufreq: powernv: Fix hardlockup due to synchronous smp_call in timer + interrupt + * Add d-i support for Huawei NICs (LP: #1767490) + - d-i: add hinic to nic-modules udeb + * unregister_netdevice: waiting for eth0 to become free. Usage count = 5 + (LP: #1746474) + - xfrm: reuse uncached_list to track xdsts + * Include nfp driver in linux-modules (LP: #1768526) + - [Config] Add nfp.ko to generic inclusion list + * Kernel panic on boot (m1.small in cn-north-1) (LP: #1771679) + - x86/xen: Reset VCPU0 info pointer after shared_info remap + * CVE-2018-3639 (x86) + - x86/bugs: Fix the parameters alignment and missing void + - KVM: SVM: Move spec control call after restore of GS + - x86/speculation: Use synthetic bits for IBRS/IBPB/STIBP + - x86/cpufeatures: Disentangle MSR_SPEC_CTRL enumeration from IBRS + - x86/cpufeatures: Disentangle SSBD enumeration + - x86/cpufeatures: Add FEATURE_ZEN + - x86/speculation: Handle HT correctly on AMD + - x86/bugs, KVM: Extend speculation control for VIRT_SPEC_CTRL + - x86/speculation: Add virtualized speculative store bypass disable support + - x86/speculation: Rework speculative_store_bypass_update() + - x86/bugs: Unify x86_spec_ctrl_{set_guest,restore_host} + - x86/bugs: Expose x86_spec_ctrl_base directly + - x86/bugs: Remove x86_spec_ctrl_set() + - x86/bugs: Rework spec_ctrl base and mask logic + - x86/speculation, KVM: Implement support for VIRT_SPEC_CTRL/LS_CFG + - KVM: SVM: Implement VIRT_SPEC_CTRL support for SSBD + - x86/bugs: Rename SSBD_NO to SSB_NO + - bpf: Prevent memory disambiguation attack + - KVM: VMX: Expose SSBD properly to guests. + * Suspend to idle: Open lid didn't resume (LP: #1771542) + - ACPI / PM: Do not reconfigure GPEs for suspend-to-idle + * Fix initialization failure detection in SDEI for device-tree based systems + (LP: #1768663) + - firmware: arm_sdei: Fix return value check in sdei_present_dt() + * No driver for Huawei network adapters on arm64 (LP: #1769899) + - net-next/hinic: add arm64 support + * CVE-2018-1092 + - ext4: fail ext4_iget for root directory if unallocated + * kernel 4.15 breaks nouveau on Lenovo P50 (LP: #1763189) + - drm/nouveau: Fix deadlock in nv50_mstm_register_connector() + * update-initramfs not adding i915 GuC firmware for Kaby Lake, firmware fails + to load (LP: #1728238) + - Revert "UBUNTU: SAUCE: (no-up) i915: Remove MODULE_FIRMWARE statements for + unreleased firmware" + * Battery drains when laptop is off (shutdown) (LP: #1745646) + - PCI / PM: Check device_may_wakeup() in pci_enable_wake() + * Dell Latitude 5490/5590 BIOS update 1.1.9 causes black screen at boot + (LP: #1764194) + - drm/i915/bios: filter out invalid DDC pins from VBT child devices + * Intel 9462 A370:42A4 doesn't work (LP: #1748853) + - iwlwifi: add shared clock PHY config flag for some devices + - iwlwifi: add a bunch of new 9000 PCI IDs + * Fix an issue that some PCI devices get incorrectly suspended (LP: #1764684) + - PCI / PM: Always check PME wakeup capability for runtime wakeup support + * [SRU][Bionic/Artful] fix false positives in W+X checking (LP: #1769696) + - init: fix false positives in W+X checking + * Bionic update to v4.15.18 stable release (LP: #1769723) + - netfilter: ipset: Missing nfnl_lock()/nfnl_unlock() is added to + ip_set_net_exit() + - cdc_ether: flag the Cinterion AHS8 modem by gemalto as WWAN + - rds: MP-RDS may use an invalid c_path + - slip: Check if rstate is initialized before uncompressing + - vhost: fix vhost_vq_access_ok() log check + - l2tp: fix races in tunnel creation + - l2tp: fix race in duplicate tunnel detection + - ip_gre: clear feature flags when incompatible o_flags are set + - vhost: Fix vhost_copy_to_user() + - lan78xx: Correctly indicate invalid OTP + - media: v4l2-compat-ioctl32: don't oops on overlay + - media: v4l: vsp1: Fix header display list status check in continuous mode + - ipmi: Fix some error cleanup issues + - parisc: Fix out of array access in match_pci_device() + - parisc: Fix HPMC handler by increasing size to multiple of 16 bytes + - Drivers: hv: vmbus: do not mark HV_PCIE as perf_device + - PCI: hv: Serialize the present and eject work items + - PCI: hv: Fix 2 hang issues in hv_compose_msi_msg() + - KVM: PPC: Book3S HV: trace_tlbie must not be called in realmode + - perf/core: Fix use-after-free in uprobe_perf_close() + - x86/mce/AMD: Get address from already initialized block + - hwmon: (ina2xx) Fix access to uninitialized mutex + - ath9k: Protect queue draining by rcu_read_lock() + - x86/apic: Fix signedness bug in APIC ID validity checks + - f2fs: fix heap mode to reset it back + - block: Change a rcu_read_{lock,unlock}_sched() pair into + rcu_read_{lock,unlock}() + - nvme: Skip checking heads without namespaces + - lib: fix stall in __bitmap_parselist() + - blk-mq: order getting budget and driver tag + - blk-mq: don't keep offline CPUs mapped to hctx 0 + - ovl: fix lookup with middle layer opaque dir and absolute path redirects + - xen: xenbus_dev_frontend: Fix XS_TRANSACTION_END handling + - hugetlbfs: fix bug in pgoff overflow checking + - nfsd: fix incorrect umasks + - scsi: qla2xxx: Fix small memory leak in qla2x00_probe_one on probe failure + - block/loop: fix deadlock after loop_set_status + - nfit: fix region registration vs block-data-window ranges + - s390/qdio: don't retry EQBS after CCQ 96 + - s390/qdio: don't merge ERROR output buffers + - s390/ipl: ensure loadparm valid flag is set + - get_user_pages_fast(): return -EFAULT on access_ok failure + - mm/gup_benchmark: handle gup failures + - getname_kernel() needs to make sure that ->name != ->iname in long case + - Bluetooth: Fix connection if directed advertising and privacy is used + - Bluetooth: hci_bcm: Treat Interrupt ACPI resources as always being active- + low + - rtl8187: Fix NULL pointer dereference in priv->conf_mutex + - ovl: set lower layer st_dev only if setting lower st_ino + - Linux 4.15.18 + * Kernel bug when unplugging Thunderbolt 3 cable, leaves xHCI host controller + dead (LP: #1768852) + - xhci: Fix Kernel oops in xhci dbgtty + * Incorrect blacklist of bcm2835_wdt (LP: #1766052) + - [Packaging] Fix missing watchdog for Raspberry Pi + * CVE-2018-8087 + - mac80211_hwsim: fix possible memory leak in hwsim_new_radio_nl() + * Integrated Webcam Realtek Integrated_Webcam_HD (0bda:58f4) not working in + DELL XPS 13 9370 with firmware 1.50 (LP: #1763748) + - SAUCE: media: uvcvideo: Support realtek's UVC 1.5 device + * [ALSA] [PATCH] Clevo P950ER ALC1220 Fixup (LP: #1769721) + - SAUCE: ALSA: hda/realtek - Clevo P950ER ALC1220 Fixup + * Bionic: Intermittently sent to Emergency Mode on boot with unhandled kernel + NULL pointer dereference at 0000000000000980 (LP: #1768292) + - thunderbolt: Prevent crash when ICM firmware is not running + * linux-snapdragon: reduce EPROBEDEFER noise during boot (LP: #1768761) + - [Config] snapdragon: DRM_I2C_ADV7511=y + * regression Aquantia Corp. AQC107 4.15.0-13-generic -> 4.15.0-20-generic ? + (LP: #1767088) + - net: aquantia: Regression on reset with 1.x firmware + - net: aquantia: oops when shutdown on already stopped device + * e1000e msix interrupts broken in linux-image-4.15.0-15-generic + (LP: #1764892) + - e1000e: Remove Other from EIAC + * Acer Swift sf314-52 power button not managed (LP: #1766054) + - SAUCE: platform/x86: acer-wmi: add another KEY_POWER keycode + * set PINCFG_HEADSET_MIC to parse_flags for Dell precision 3630 (LP: #1766398) + - ALSA: hda/realtek - set PINCFG_HEADSET_MIC to parse_flags + * Change the location for one of two front mics on a lenovo thinkcentre + machine (LP: #1766477) + - ALSA: hda/realtek - adjust the location of one mic + * SRU: bionic: apply 50 ZFS upstream bugfixes (LP: #1764690) + - SAUCE: (noup) Update zfs to 0.7.5-1ubuntu15 (LP: #1764690) + * [8086:3e92] display becomes blank after S3 (LP: #1763271) + - drm/i915/edp: Do not do link training fallback or prune modes on EDP + + -- Marcelo Henrique Cerri Thu, 24 May 2018 10:44:42 -0300 + +linux-azure (4.15.0-1012.12) bionic; urgency=medium + + * linux-image-4.15.0-20-generic install after upgrade from xenial breaks + (LP: #1767133) + - Packaging: Add versioned dependency for linux-base + + [ Ubuntu: 4.15.0-22.24 ] + + * CVE-2018-3639 (powerpc) + - powerpc/64s: Add support for a store forwarding barrier at kernel entry/exit + - stf-barrier: set eieio instruction bit 6 for future optimisations + * CVE-2018-3639 (x86) + - x86/nospec: Simplify alternative_msr_write() + - x86/bugs: Concentrate bug detection into a separate function + - x86/bugs: Concentrate bug reporting into a separate function + - x86/bugs: Read SPEC_CTRL MSR during boot and re-use reserved bits + - x86/bugs, KVM: Support the combination of guest and host IBRS + - x86/bugs: Expose /sys/../spec_store_bypass + - x86/cpufeatures: Add X86_FEATURE_RDS + - x86/bugs: Provide boot parameters for the spec_store_bypass_disable + mitigation + - x86/bugs/intel: Set proper CPU features and setup RDS + - x86/bugs: Whitelist allowed SPEC_CTRL MSR values + - x86/bugs/AMD: Add support to disable RDS on Fam[15,16,17]h if requested + - x86/KVM/VMX: Expose SPEC_CTRL Bit(2) to the guest + - x86/speculation: Create spec-ctrl.h to avoid include hell + - prctl: Add speculation control prctls + - x86/process: Allow runtime control of Speculative Store Bypass + - x86/speculation: Add prctl for Speculative Store Bypass mitigation + - nospec: Allow getting/setting on non-current task + - proc: Provide details on speculation flaw mitigations + - seccomp: Enable speculation flaw mitigations + - x86/bugs: Make boot modes __ro_after_init + - prctl: Add force disable speculation + - seccomp: Use PR_SPEC_FORCE_DISABLE + - seccomp: Add filter flag to opt-out of SSB mitigation + - seccomp: Move speculation migitation control to arch code + - x86/speculation: Make "seccomp" the default mode for Speculative Store + Bypass + - x86/bugs: Rename _RDS to _SSBD + - proc: Use underscores for SSBD in 'status' + - Documentation/spec_ctrl: Do some minor cleanups + - x86/bugs: Fix __ssb_select_mitigation() return type + - x86/bugs: Make cpu_show_common() static + * LSM Stacking prctl values should be redefined as to not collide with + upstream prctls (LP: #1769263) // CVE-2018-3639 + - SAUCE: LSM stacking: adjust prctl values + + [ Ubuntu: 4.15.0-21.22 ] + + * linux: 4.15.0-21.22 -proposed tracker (LP: #1767397) + * initramfs-tools exception during pm.DoInstall with do-release-upgrade from + 16.04 to 18.04 (LP: #1766727) + - Add linux-image-* Breaks on s390-tools (<< 2.3.0-0ubuntu3) + * linux-image-4.15.0-20-generic install after upgrade from xenial breaks + (LP: #1767133) + - Packaging: Depends on linux-base that provides the necessary tools + * linux-image packages need to Breaks flash-kernel << 3.90ubuntu2 + (LP: #1766629) + - linux-image-* breaks on flash-kernel (<< 3.90ubuntu2) + + -- Stefan Bader Wed, 16 May 2018 18:31:36 +0200 + +linux-azure (4.15.0-1011.11) bionic; urgency=medium + + * linux-azure: 4.15.0-1011.11 -proposed tracker (LP: #1770294) + + * fsnotify: Fix fsnotify_mark_connector race (LP: #1765564) + - fsnotify: Fix fsnotify_mark_connector race + + -- Kamal Mostafa Wed, 09 May 2018 18:43:32 -0700 + +linux-azure (4.15.0-1009.9) bionic; urgency=medium + + * linux-azure: 4.15.0-1009.9 -proposed tracker (LP: #1766467) + + [ Ubuntu: 4.15.0-20.21 ] + + * linux: 4.15.0-20.21 -proposed tracker (LP: #1766452) + * package shim-signed (not installed) failed to install/upgrade: installed + shim-signed package post-installation script subprocess returned error exit + status 5 (LP: #1766391) + - [Packaging] fix invocation of header postinst hooks + + -- Kleber Sacilotto de Souza Tue, 24 Apr 2018 12:19:14 +0200 + +linux-azure (4.15.0-1008.8) bionic; urgency=medium + + * linux-azure: 4.15.0-1008.8 -proposed tracker (LP: #1766025) + + [ Ubuntu: 4.15.0-19.20 ] + + * linux: 4.15.0-19.20 -proposed tracker (LP: #1766021) + * Kernel 4.15.0-15 breaks Dell PowerEdge 12th Gen servers (LP: #1765232) + - Revert "blk-mq: simplify queue mapping & schedule with each possisble CPU" + - Revert "genirq/affinity: assign vectors to all possible CPUs" + + -- Seth Forshee Sat, 21 Apr 2018 20:11:42 -0500 + +linux-azure (4.15.0-1007.7) bionic; urgency=medium + + * linux-azure: 4.15.0-1007.7 -proposed tracker (LP: #1765495) + + * Miscellaneous Ubuntu changes + - [Config] updateconfigs after rebase to Ubuntu-4.15.0-18.19 + - [Packaging] update flavour-control.stub for signing changes + + [ Ubuntu: 4.15.0-18.19 ] + + * linux: 4.15.0-18.19 -proposed tracker (LP: #1765490) + * [regression] Ubuntu 18.04:[4.15.0-17-generic #18] KVM Guest Kernel: + meltdown: rfi/fallback displacement flush not enabled bydefault (kvm) + (LP: #1765429) + - powerpc/pseries: Fix clearing of security feature flags + * signing: only install a signed kernel (LP: #1764794) + - [Packaging] update to Debian like control scripts + - [Packaging] switch to triggers for postinst.d postrm.d handling + - [Packaging] signing -- switch to raw-signing tarballs + - [Packaging] signing -- switch to linux-image as signed when available + - [Config] signing -- enable Opal signing for ppc64el + - [Packaging] printenv -- add signing options + * [18.04 FEAT] Sign POWER host/NV kernels (LP: #1696154) + - [Packaging] signing -- add support for signing Opal kernel binaries + * Please cherrypick s390 unwind fix (LP: #1765083) + - s390/compat: fix setup_frame32 + * Ubuntu 18.04 installer does not detect any IPR based HDD/RAID array [S822L] + [ipr] (LP: #1751813) + - d-i: move ipr to storage-core-modules on ppc64el + * drivers/gpu/drm/bridge/adv7511/adv7511.ko missing (LP: #1764816) + - SAUCE: (no-up) rename the adv7511 drm driver to adv7511_drm + * Miscellaneous Ubuntu changes + - [Packaging] Add linux-oem to rebuild test blacklist. + + [ Ubuntu: 4.15.0-17.18 ] + + * linux: 4.15.0-17.18 -proposed tracker (LP: #1764498) + * Eventual OOM with profile reloads (LP: #1750594) + - SAUCE: apparmor: fix memory leak when duplicate profile load + + [ Ubuntu: 4.15.0-16.17 ] + + * linux: 4.15.0-16.17 -proposed tracker (LP: #1763785) + * [18.04] [bug] CFL-S(CNP)/CNL GPIO testing failed (LP: #1757346) + - [Config]: Set CONFIG_PINCTRL_CANNONLAKE=y + * [Ubuntu 18.04] USB Type-C test failed on GLK (LP: #1758797) + - SAUCE: usb: typec: ucsi: Increase command completion timeout value + * Fix trying to "push" an already active pool VP (LP: #1763386) + - SAUCE: powerpc/xive: Fix trying to "push" an already active pool VP + * hisi_sas: Revert and replace SAUCE patches w/ upstream (LP: #1762824) + - Revert "UBUNTU: SAUCE: scsi: hisi_sas: export device table of v3 hw to + userspace" + - Revert "UBUNTU: SAUCE: scsi: hisi_sas: config for hip08 ES" + - scsi: hisi_sas: modify some register config for hip08 + - scsi: hisi_sas: add v3 hw MODULE_DEVICE_TABLE() + * Realtek card reader - RTS5243 [VEN_10EC&DEV_5260] (LP: #1737673) + - misc: rtsx: Move Realtek Card Reader Driver to misc + - updateconfigs for Realtek Card Reader Driver + - misc: rtsx: Add support for RTS5260 + - misc: rtsx: Fix symbol clashes + * Mellanox [mlx5] [bionic] UBSAN: Undefined behaviour in + ./include/linux/net_dim.h (LP: #1763269) + - net/mlx5e: Fix int overflow + * apparmor bug fixes for bionic (LP: #1763427) + - apparmor: fix logging of the existence test for signals + - apparmor: make signal label match work when matching stacked labels + - apparmor: audit unknown signal numbers + - apparmor: fix memory leak on buffer on error exit path + - apparmor: fix mediation of prlimit + * dangling symlinks to loaded apparmor policy (LP: #1755563) // apparmor bug + fixes for bionic (LP: #1763427) + - apparmor: fix dangling symlinks to policy rawdata after replacement + * [OPAL] Assert fail: + core/mem_region.c:447:lock_held_by_me(®ion->free_list_lock) + (LP: #1762913) + - powerpc/watchdog: remove arch_trigger_cpumask_backtrace + * [LTC Test] Ubuntu 18.04: tm_trap_test failed on P8 compat mode guest + (LP: #1762928) + - powerpc/tm: Fix endianness flip on trap + * Add support for RT5660 codec based sound cards on Baytrail (LP: #1657674) + - SAUCE: (no-up) ASoC: Intel: Support machine driver for RT5660 on Baytrail + - SAUCE: (no-up) ASoC: rt5660: Add ACPI support + - SAUCE: (no-up): ASoC: Intel: bytcr-rt5660: Add MCLK, quirks + - [Config] CONFIG_SND_SOC_INTEL_BYTCR_RT5660_MACH=m, CONFIG_SND_SOC_RT5660=m + * /dev/ipmi enumeration flaky on Cavium Sabre nodes (LP: #1762812) + - i2c: xlp9xx: return ENXIO on slave address NACK + - i2c: xlp9xx: Handle transactions with I2C_M_RECV_LEN properly + - i2c: xlp9xx: Check for Bus state before every transfer + - i2c: xlp9xx: Handle NACK on DATA properly + * [18.04 FEAT] Add kvm_stat from kernel tree (LP: #1734130) + - tools/kvm_stat: simplify the sortkey function + - tools/kvm_stat: use a namedtuple for storing the values + - tools/kvm_stat: use a more pythonic way to iterate over dictionaries + - tools/kvm_stat: avoid 'is' for equality checks + - tools/kvm_stat: fix crash when filtering out all non-child trace events + - tools/kvm_stat: print error on invalid regex + - tools/kvm_stat: fix debugfs handling + - tools/kvm_stat: mark private methods as such + - tools/kvm_stat: eliminate extra guest/pid selection dialog + - tools/kvm_stat: separate drilldown and fields filtering + - tools/kvm_stat: group child events indented after parent + - tools/kvm_stat: print 'Total' line for multiple events only + - tools/kvm_stat: Fix python3 syntax + - tools/kvm_stat: Don't use deprecated file() + - tools/kvm_stat: Remove unused function + - [Packaging] Add linux-tools-host package for VM host tools + - [Config] do_tools_host=true for amd64 + * Bionic update to v4.15.17 stable release (LP: #1763366) + - i40iw: Fix sequence number for the first partial FPDU + - i40iw: Correct Q1/XF object count equation + - i40iw: Validate correct IRD/ORD connection parameters + - clk: meson: mpll: use 64-bit maths in params_from_rate + - ARM: dts: ls1021a: add "fsl,ls1021a-esdhc" compatible string to esdhc node + - Bluetooth: Add a new 04ca:3015 QCA_ROME device + - ipv6: Reinject IPv6 packets if IPsec policy matches after SNAT + - thermal: power_allocator: fix one race condition issue for thermal_instances + list + - perf probe: Find versioned symbols from map + - perf probe: Add warning message if there is unexpected event name + - perf evsel: Fix swap for samples with raw data + - perf evsel: Enable ignore_missing_thread for pid option + - l2tp: fix missing print session offset info + - rds; Reset rs->rs_bound_addr in rds_add_bound() failure path + - ACPI / video: Default lcd_only to true on Win8-ready and newer machines + - IB/mlx5: Report inner RSS capability + - VFS: close race between getcwd() and d_move() + - watchdog: dw_wdt: add stop watchdog operation + - clk: divider: fix incorrect usage of container_of + - PM / devfreq: Fix potential NULL pointer dereference in governor_store + - gpiolib: don't dereference a desc before validation + - net_sch: red: Fix the new offload indication + - selftests/net: fix bugs in address and port initialization + - thermal/drivers/hisi: Remove bogus const from function return type + - RDMA/cma: Mark end of CMA ID messages + - hwmon: (ina2xx) Make calibration register value fixed + - f2fs: fix lock dependency in between dio_rwsem & i_mmap_sem + - clk: sunxi-ng: a83t: Add M divider to TCON1 clock + - media: videobuf2-core: don't go out of the buffer range + - ASoC: Intel: Skylake: Disable clock gating during firmware and library + download + - ASoC: Intel: cht_bsw_rt5645: Analog Mic support + - drm/msm: Fix NULL deref in adreno_load_gpu + - IB/ipoib: Fix for notify send CQ failure messages + - spi: sh-msiof: Fix timeout failures for TX-only DMA transfers + - scsi: mpt3sas: Proper handling of set/clear of "ATA command pending" flag. + - irqchip/ompic: fix return value check in ompic_of_init() + - irqchip/gic-v3: Fix the driver probe() fail due to disabled GICC entry + - ACPI: EC: Fix debugfs_create_*() usage + - mac80211: Fix setting TX power on monitor interfaces + - vfb: fix video mode and line_length being set when loaded + - crypto: crypto4xx - perform aead icv check in the driver + - gpio: label descriptors using the device name + - arm64: asid: Do not replace active_asids if already 0 + - powernv-cpufreq: Add helper to extract pstate from PMSR + - IB/rdmavt: Allocate CQ memory on the correct node + - blk-mq: avoid to map CPU into stale hw queue + - blk-mq: fix race between updating nr_hw_queues and switching io sched + - backlight: tdo24m: Fix the SPI CS between transfers + - nvme-fabrics: protect against module unload during create_ctrl + - nvme-fabrics: don't check for non-NULL module in nvmf_register_transport + - pinctrl: baytrail: Enable glitch filter for GPIOs used as interrupts + - nvme_fcloop: disassocate local port structs + - nvme_fcloop: fix abort race condition + - tpm: return a TPM_RC_COMMAND_CODE response if command is not implemented + - perf report: Fix a no annotate browser displayed issue + - staging: lustre: disable preempt while sampling processor id. + - ASoC: Intel: sst: Fix the return value of 'sst_send_byte_stream_mrfld()' + - power: supply: axp288_charger: Properly stop work on probe-error / remove + - rt2x00: do not pause queue unconditionally on error path + - wl1251: check return from call to wl1251_acx_arp_ip_filter + - net/mlx5: Fix race for multiple RoCE enable + - bcache: ret IOERR when read meets metadata error + - bcache: stop writeback thread after detaching + - bcache: segregate flash only volume write streams + - net: Fix netdev_WARN_ONCE macro + - net/mlx5e: IPoIB, Use correct timestamp in child receive flow + - blk-mq: fix kernel oops in blk_mq_tag_idle() + - tty: n_gsm: Allow ADM response in addition to UA for control dlci + - block, bfq: put async queues for root bfq groups too + - serdev: Fix serdev_uevent failure on ACPI enumerated serdev-controllers + - EDAC, mv64x60: Fix an error handling path + - uio_hv_generic: check that host supports monitor page + - Bluetooth: hci_bcm: Mandate presence of shutdown and device wake GPIO + - Bluetooth: hci_bcm: Validate IRQ before using it + - Bluetooth: hci_bcm: Make shutdown and device wake GPIO optional + - i40evf: don't rely on netif_running() outside rtnl_lock() + - drm/amd/powerplay: fix memory leakage when reload (v2) + - cxgb4vf: Fix SGE FL buffer initialization logic for 64K pages + - PM / domains: Don't skip driver's ->suspend|resume_noirq() callbacks + - scsi: megaraid_sas: Error handling for invalid ldcount provided by firmware + in RAID map + - scsi: megaraid_sas: unload flag should be set after scsi_remove_host is + called + - RDMA/cma: Fix rdma_cm path querying for RoCE + - gpio: thunderx: fix error return code in thunderx_gpio_probe() + - x86/gart: Exclude GART aperture from vmcore + - sdhci: Advertise 2.0v supply on SDIO host controller + - Input: goodix - disable IRQs while suspended + - mtd: mtd_oobtest: Handle bitflips during reads + - crypto: aes-generic - build with -Os on gcc-7+ + - perf tools: Fix copyfile_offset update of output offset + - tcmu: release blocks for partially setup cmds + - thermal: int3400_thermal: fix error handling in int3400_thermal_probe() + - drm/i915/cnp: Ignore VBT request for know invalid DDC pin. + - drm/i915/cnp: Properly handle VBT ddc pin out of bounds. + - x86/microcode: Propagate return value from updating functions + - x86/CPU: Add a microcode loader callback + - x86/CPU: Check CPU feature bits after microcode upgrade + - x86/microcode: Get rid of struct apply_microcode_ctx + - x86/microcode/intel: Check microcode revision before updating sibling + threads + - x86/microcode/intel: Writeback and invalidate caches before updating + microcode + - x86/microcode: Do not upload microcode if CPUs are offline + - x86/microcode/intel: Look into the patch cache first + - x86/microcode: Request microcode on the BSP + - x86/microcode: Synchronize late microcode loading + - x86/microcode: Attempt late loading only when new microcode is present + - x86/microcode: Fix CPU synchronization routine + - arp: fix arp_filter on l3slave devices + - ipv6: the entire IPv6 header chain must fit the first fragment + - lan78xx: Crash in lan78xx_writ_reg (Workqueue: events + lan78xx_deferred_multicast_write) + - net: dsa: Discard frames from unused ports + - net: fix possible out-of-bound read in skb_network_protocol() + - net/ipv6: Fix route leaking between VRFs + - net/ipv6: Increment OUTxxx counters after netfilter hook + - netlink: make sure nladdr has correct size in netlink_connect() + - net/mlx5e: Verify coalescing parameters in range + - net sched actions: fix dumping which requires several messages to user space + - net/sched: fix NULL dereference in the error path of tcf_bpf_init() + - pptp: remove a buggy dst release in pptp_connect() + - r8169: fix setting driver_data after register_netdev + - sctp: do not leak kernel memory to user space + - sctp: sctp_sockaddr_af must check minimal addr length for AF_INET6 + - vhost: correctly remove wait queue during poll failure + - vlan: also check phy_driver ts_info for vlan's real device + - vrf: Fix use after free and double free in vrf_finish_output + - bonding: fix the err path for dev hwaddr sync in bond_enslave + - bonding: move dev_mc_sync after master_upper_dev_link in bond_enslave + - bonding: process the err returned by dev_set_allmulti properly in + bond_enslave + - net: fool proof dev_valid_name() + - ip_tunnel: better validate user provided tunnel names + - ipv6: sit: better validate user provided tunnel names + - ip6_gre: better validate user provided tunnel names + - ip6_tunnel: better validate user provided tunnel names + - vti6: better validate user provided tunnel names + - net/mlx5e: Set EQE based as default TX interrupt moderation mode + - net_sched: fix a missing idr_remove() in u32_delete_key() + - net/sched: fix NULL dereference in the error path of tcf_vlan_init() + - net/mlx5e: Avoid using the ipv6 stub in the TC offload neigh update path + - net/mlx5e: Fix memory usage issues in offloading TC flows + - net/sched: fix NULL dereference in the error path of tcf_sample_init() + - nfp: use full 40 bits of the NSP buffer address + - ipv6: sr: fix seg6 encap performances with TSO enabled + - net/mlx5e: Don't override vport admin link state in switchdev mode + - net/mlx5e: Sync netdev vxlan ports at open + - net/sched: fix NULL dereference in the error path of tunnel_key_init() + - net/sched: fix NULL dereference on the error path of tcf_skbmod_init() + - strparser: Fix sign of err codes + - net/mlx4_en: Fix mixed PFC and Global pause user control requests + - net/mlx5e: Fix traffic being dropped on VF representor + - vhost: validate log when IOTLB is enabled + - route: check sysctl_fib_multipath_use_neigh earlier than hash + - team: move dev_mc_sync after master_upper_dev_link in team_port_add + - vhost_net: add missing lock nesting notation + - net/mlx4_core: Fix memory leak while delete slave's resources + - Linux 4.15.17 + * sky2 gigabit ethernet driver sometimes stops working after lid-open resume + from sleep (88E8055) (LP: #1758507) // Bionic update to v4.15.17 stable + release (LP: #1763366) + - sky2: Increase D3 delay to sky2 stops working after suspend + * [Featire] CNL: Enable RAPL support (LP: #1685712) + - powercap: RAPL: Add support for Cannon Lake + * System Z {kernel} UBUNTU18.04 wrong kernel config (LP: #1762719) + - s390: move nobp parameter functions to nospec-branch.c + - s390: add automatic detection of the spectre defense + - s390: report spectre mitigation via syslog + - s390: add sysfs attributes for spectre + - [Config] CONFIG_EXPOLINE_AUTO=y, CONFIG_KERNEL_NOBP=n for s390 + - s390: correct nospec auto detection init order + * Merge the linux-snapdragon kernel into bionic master/snapdragon + (LP: #1763040) + - drm/msm: fix spelling mistake: "ringubffer" -> "ringbuffer" + - drm/msm: fix msm_rd_dump_submit prototype + - drm/msm: gpu: Only sync fences on rings that exist + - wcn36xx: set default BTLE coexistence config + - wcn36xx: Add hardware scan offload support + - wcn36xx: Reduce spinlock in indication handler + - wcn36xx: fix incorrect assignment to msg_body.min_ch_time + - wcn36xx: release DMA memory in case of error + - mailbox: qcom: Convert APCS IPC driver to use regmap + - mailbox: qcom: Create APCS child device for clock controller + - clk: qcom: Add A53 PLL support + - clk: qcom: Add regmap mux-div clocks support + - clk: qcom: Add APCS clock controller support + - clk: qcom: msm8916: Fix return value check in qcom_apcs_msm8916_clk_probe() + - media: venus: venc: set correctly GOP size and number of B-frames + - media: venus: venc: configure entropy mode + - media: venus: venc: Apply inloop deblocking filter + - media: venus: cleanup set_property controls + - arm64: defconfig: enable REMOTEPROC + - arm64: defconfig: enable QCOM audio drivers for APQ8016 and DB410c + - kernel: configs; add distro.config + - arm64: configs: enable WCN36xx + - kernel: distro.config: enable debug friendly USB network adpater + - arm64: configs: enable QCOM Venus + - arm64: defconfig: Enable a53/apcs and avs + - arm64: defconfig: enable ondemand governor as default + - arm64: defconfig: enable QCOM_TSENS + - arm64: defconfig: enable new trigger modes for leds + - kernel: configs: enable dm_mod and dm_crypt + - Force the SMD regulator driver to be compiled-in + - arm64: defconfig: enable CFG80211_DEFAULT_PS by default + - arm64: configs: enable BT_QCOMSMD + - kernel: configs: add more USB net drivers + - arm64: defconfig: disable ANALOG_TV and DIGITAL_TV + - arm64: configs: Enable camera drivers + - kernel: configs: add freq stat to sysfs + - arm64: defconfig: enable CONFIG_USB_CONFIGFS_F_FS by default + - arm64: defconfig: Enable QRTR features + - kernel: configs: set USB_CONFIG_F_FS in distro.config + - kernel: distro.config: enable 'schedutil' CPUfreq governor + - kernel: distro.config: enable 'fq' and 'fq_codel' qdiscs + - kernel: distro.config: enable 'BBR' TCP congestion algorithm + - arm64: defconfig: enable LEDS_QCOM_LPG + - HACK: drm/msm/iommu: Remove runtime_put calls in map/unmap + - power: avs: Add support for CPR (Core Power Reduction) + - power: avs: cpr: Use raw mem access for qfprom + - power: avs: cpr: fix with new reg_sequence structures + - power: avs: cpr: Register with cpufreq-dt + - regulator: smd: Add floor and corner operations + - PM / OPP: Support adjusting OPP voltages at runtime + - PM / OPP: Drop RCU usage in dev_pm_opp_adjust_voltage() + - PM / OPP: HACK: Allow to set regulator without opp_list + - PM / OPP: Add a helper to get an opp regulator for device + - cpufreq: Add apq8016 to cpufreq-dt-platdev blacklist + - regulator: smd: Allow REGULATOR_QCOM_SMD_RPM=m + - ov5645: I2C address change + - i2c: Add Qualcomm Camera Control Interface driver + - camss: vfe: Skip first four frames from sensor + - camss: Do not register if no cameras are present + - i2c-qcom-cci: Fix run queue completion timeout + - i2c-qcom-cci: Fix I2C address bug + - media: ov5645: Fix I2C address + - drm/bridge/adv7511: Delay clearing of HPD interrupt status + - HACK: drm/msm/adv7511: Don't rely on interrupts for EDID parsing + - leds: Add driver for Qualcomm LPG + - wcn36xx: Fix warning due to duplicate scan_completed notification + - arm64: dts: Add CPR DT node for msm8916 + - arm64: dts: add spmi-regulator nodes + - arm64: dts: msm8916: Add cpufreq support + - arm64: dts: msm8916: Add a shared CPU opp table + - arm64: dts: msm8916: Add cpu cooling maps + - arm64: dts: pm8916: Mark the s2 regulator as always-on + - dt-bindings: mailbox: qcom: Document the APCS clock binding + - arm64: dts: qcom: msm8916: Add msm8916 A53 PLL DT node + - arm64: dts: qcom: msm8916: Use the new APCS mailbox driver + - arm64: dts: qcom: msm8916: Add clock properties to the APCS node + - arm64: dts: qcom: apq8016-sbc: Allow USR4 LED to notify kernel panic + - dt-bindings: media: Binding document for Qualcomm Camera Control Interface + driver + - MAINTAINERS: Add Qualcomm Camera Control Interface driver + - DT: leds: Add Qualcomm Light Pulse Generator binding + - arm64: dts: qcom: msm8996: Add mpp and lpg blocks + - arm64: dts: qcom: Add pwm node for pm8916 + - arm64: dts: qcom: Add user LEDs on db820c + - arm64: dts: qcom: Add WiFI/BT LEDs on db820c + - ARM: dts: qcom: Add LPG node to pm8941 + - ARM: dts: qcom: honami: Add LPG node and RGB LED + - arm64: dts: qcom: Add Camera Control Interface support + - arm64: dts: qcom: Add apps_iommu vfe child node + - arm64: dts: qcom: Add camss device node + - arm64: dts: qcom: Add ov5645 device nodes + - arm64: dts: msm8916: Fix camera sensors I2C addresses + - arm: dts: qcom: db410c: Enable PWM signal on MPP4 + - packaging: arm64: add a uboot flavour - part1 + - packaging: arm64: add a uboot flavour - part2 + - packaging: arm64: add a uboot flavour - part3 + - packaging: arm64: add a uboot flavour - part4 + - packaging: arm64: add a uboot flavour - part5 + - packaging: arm64: rename uboot flavour to snapdragon + - [Config] updateconfigs after qcomlt import + - [Config] arm64: snapdragon: COMMON_CLK_QCOM=y + - [Config] arm64: snapdragon: MSM_GCC_8916=y + - [Config] arm64: snapdragon: REGULATOR_FIXED_VOLTAGE=y + - [Config] arm64: snapdragon: PINCTRL_MSM8916=y + - [Config] arm64: snapdragon: HWSPINLOCK_QCOM=y + - [Config] arm64: snapdragon: SPMI=y, SPMI_MSM_PMIC_ARB=y + - [Config] arm64: snapdragon: REGMAP_SPMI=y, PINCTRL_QCOM_SPMI_PMIC=y + - [Config] arm64: snapdragon: REGULATOR_QCOM_SPMI=y + - [Config] arm64: snapdragon: MFD_SPMI_PMIC=y + - [Config] arm64: snapdragon: QCOM_SMEM=y + - [Config] arm64: snapdragon: RPMSG=y, RPMSG_QCOM_SMD=y + - [Config] arm64: snapdragon: QCOM_SMD_RPM=y, REGULATOR_QCOM_SMD_RPM=y + - [Config] arm64: snapdragon: QCOM_CLK_SMD_RPM=y + - [Config] arm64: snapdragon: QCOM_BAM_DMA=y + - [Config] arm64: snapdragon: QCOM_HIDMA=y, QCOM_HIDMA_MGMT=y + - [Config] arm64: snapdragon: QCOM_CPR=y + - [Config] arm64: snapdragon: QCOM_QFPROM=y, QCOM_TSENS=y + - [Config] arm64: snapdragon: MMC_SDHCI=y, MMC_SDHCI_PLTFM=y, MMC_SDHCI_MSM=y + - [Config] turn off DRM_MSM_REGISTER_LOGGING + - [Config] arm64: snapdragon: I2C_QUP=y + - [Config] arm64: snapdragon: SPI_QUP=y + - [Config] arm64: snapdragon: USB_ULPI_BUS=y, PHY_QCOM_USB_HS=y + - [Config] arm64: snapdragon: QCOM_APCS_IPC=y + - [Config] arm64: snapdragon: QCOM_WCNSS_CTRL=y + - [Config] arm64: snapdragon: QCOM_SMSM=y + - [Config] arm64: snapdragon: QCOM_SMP2P=y + - [Config] arm64: snapdragon: DRM_MSM=y + - [Config] arm64: snapdragon: SND_SOC=y + - [Config] arm64: snapdragon: QCOM_WCNSS_PIL=m + - [Config] arm64: snapdragon: QCOM_A53PLL=y, QCOM_CLK_APCS_MSM8916=y + - [Config] arm64: snapdragon: INPUT_PM8941_PWRKEY=y + - [Config] arm64: snapdragon: MEDIA_SUBDRV_AUTOSELECT=y, VIDEO_OV5645=m + - [Config] arm64: snapdragon: SND_SOC_APQ8016_SBC=y, SND_SOC_LPASS_APQ8016=y + - [Config] arm64: snapdragon: SND_SOC_MSM8916_WCD_ANALOG=y, + SND_SOC_MSM8916_WCD_DIGITAL=y + - SAUCE: media: ov5645: skip address change if dt addr == default addr + - SAUCE: drm/msm/adv7511: wrap hacks under CONFIG_ADV7511_SNAPDRAGON_HACKS + #ifdefs + - [Config] arm64: snapdragon: ADV7511_SNAPDRAGON_HACKS=y + - packaging: snapdragon: fixup ABI paths + * LSM stacking patches for bionic (LP: #1763062) + - SAUCE: LSM stacking: procfs: add smack subdir to attrs + - SAUCE: LSM stacking: LSM: Manage credential security blobs + - SAUCE: LSM stacking: LSM: Manage file security blobs + - SAUCE: LSM stacking: LSM: Manage task security blobs + - SAUCE: LSM stacking: LSM: Manage remaining security blobs + - SAUCE: LSM stacking: LSM: General stacking + - SAUCE: LSM stacking: fixup initialize task->security + - SAUCE: LSM stacking: fixup: alloc_task_ctx is dead code + - SAUCE: LSM stacking: add support for stacking getpeersec_stream + - SAUCE: LSM stacking: add stacking support to apparmor network hooks + - SAUCE: LSM stacking: fixup apparmor stacking enablement + - SAUCE: LSM stacking: fixup stacking kconfig + - SAUCE: LSM stacking: allow selecting multiple LSMs using kernel boot params + - SAUCE: LSM stacking: provide prctl interface for setting context + - SAUCE: LSM stacking: inherit current display LSM + - SAUCE: LSM stacking: keep an index for each registered LSM + - SAUCE: LSM stacking: verify display LSM + - SAUCE: LSM stacking: provide a way to specify the default display lsm + - SAUCE: LSM stacking: make sure LSM blob align on 64 bit boundaries + - SAUCE: LSM stacking: add /proc//attr/display_lsm + - SAUCE: LSM stacking: add Kconfig to set default display LSM + - SAUCE: LSM stacking: add configs for LSM stacking + - SAUCE: LSM stacking: add apparmor and selinux proc dirs + - SAUCE: LSM stacking: remove procfs context interface + * linux 4.13.0-13.14 ADT test failure with linux 4.13.0-13.14 + (LP: #1720779) // LSM stacking patches for bionic (LP: #1763062) + - SAUCE: LSM stacking: check for invalid zero sized writes + * RDMA/hns: ensure for-loop actually iterates and free's buffers + (LP: #1762757) + - RDMA/hns: ensure for-loop actually iterates and free's buffers + * Support cq/rq record doorbell for RDMA on HSilicon hip08 systems + (LP: #1762755) + - RDMA/hns: Fix the endian problem for hns + - RDMA/hns: Support rq record doorbell for the user space + - RDMA/hns: Support cq record doorbell for the user space + - RDMA/hns: Support rq record doorbell for kernel space + - RDMA/hns: Support cq record doorbell for kernel space + - RDMA/hns: Fix cqn type and init resp + - RDMA/hns: Fix init resp when alloc ucontext + - RDMA/hns: Fix cq record doorbell enable in kernel + * Replace LPC patchset with upstream version (LP: #1762758) + - Revert "UBUNTU: SAUCE: MAINTAINERS: Add maintainer for HiSilicon LPC driver" + - Revert "UBUNTU: SAUCE: HISI LPC: Add ACPI support" + - Revert "UBUNTU: SAUCE: ACPI / scan: do not enumerate Indirect IO host + children" + - Revert "UBUNTU: SAUCE: HISI LPC: Support the LPC host on Hip06/Hip07 with DT + bindings" + - Revert "UBUNTU: SAUCE: OF: Add missing I/O range exception for indirect-IO + devices" + - Revert "UBUNTU: SAUCE: PCI: Apply the new generic I/O management on PCI IO + hosts" + - Revert "UBUNTU: SAUCE: PCI: Add fwnode handler as input param of + pci_register_io_range()" + - Revert "UBUNTU: SAUCE: PCI: Remove unused __weak attribute in + pci_register_io_range()" + - Revert "UBUNTU: SAUCE: LIB: Introduce a generic PIO mapping method" + - lib: Add generic PIO mapping method + - PCI: Remove __weak tag from pci_register_io_range() + - PCI: Add fwnode handler as input param of pci_register_io_range() + - PCI: Apply the new generic I/O management on PCI IO hosts + - of: Add missing I/O range exception for indirect-IO devices + - HISI LPC: Support the LPC host on Hip06/Hip07 with DT bindings + - ACPI / scan: Rename acpi_is_serial_bus_slave() for more general use + - ACPI / scan: Do not enumerate Indirect IO host children + - HISI LPC: Add ACPI support + - MAINTAINERS: Add John Garry as maintainer for HiSilicon LPC driver + * Enable Tunneled Operations on POWER9 (LP: #1762448) + - powerpc/powernv: Enable tunneled operations + - cxl: read PHB indications from the device tree + * PSL traces reset after PERST for debug AFU image (LP: #1762462) + - cxl: Enable NORST bit in PSL_DEBUG register for PSL9 + * NFS + sec=krb5 is broken (LP: #1759791) + - sunrpc: remove incorrect HMAC request initialization + * Raspberry Pi 3 microSD support missing from the installer (LP: #1729128) + - d-i: add bcm2835 to block-modules + * Backport USB core quirks (LP: #1762695) + - usb: core: Add "quirks" parameter for usbcore + - usb: core: Copy parameter string correctly and remove superfluous null check + - usb: core: Add USB_QUIRK_DELAY_CTRL_MSG to usbcore quirks + * [Ubuntu 18.04] cryptsetup: 'device-mapper: reload ioctl on failed' when + setting up a second end-to-end encrypted disk (LP: #1762353) + - SAUCE: s390/crypto: Adjust s390 aes and paes cipher + * Additional spectre and meltdown patches (LP: #1760099) // CVE-2017-5715 + - powerpc/64s: Wire up cpu_show_spectre_v2() + * Additional spectre and meltdown patches (LP: #1760099) // CVE-2017-5753 + - powerpc/64s: Wire up cpu_show_spectre_v1() + * Additional spectre and meltdown patches (LP: #1760099) // CVE-2017-5754 + - powerpc/rfi-flush: Move the logic to avoid a redo into the debugfs code + - powerpc/rfi-flush: Make it possible to call setup_rfi_flush() again + - powerpc/rfi-flush: Always enable fallback flush on pseries + - powerpc/rfi-flush: Differentiate enabled and patched flush types + - powerpc/rfi-flush: Call setup_rfi_flush() after LPM migration + - powerpc/64s: Move cpu_show_meltdown() + - powerpc/64s: Enhance the information in cpu_show_meltdown() + - powerpc/powernv: Use the security flags in pnv_setup_rfi_flush() + - powerpc/pseries: Use the security flags in pseries_setup_rfi_flush() + * Additional spectre and meltdown patches (LP: #1760099) // CVE-2017-5715 // + CVE-2017-5753 // CVE-2017-5754 + - powerpc/pseries: Add new H_GET_CPU_CHARACTERISTICS flags + - powerpc: Add security feature flags for Spectre/Meltdown + - powerpc/pseries: Set or clear security feature flags + - powerpc/powernv: Set or clear security feature flags + * Hisilicon network subsystem 3 support (LP: #1761610) + - net: hns3: export pci table of hclge and hclgevf to userspace + - d-i: Add hns3 drivers to nic-modules + * "ip a" command on a guest VM shows UNKNOWN status (LP: #1761534) + - virtio-net: Fix operstate for virtio when no VIRTIO_NET_F_STATUS + * perf vendor events arm64: Enable JSON events for ThunderX2 B0 (LP: #1760712) + - perf vendor events aarch64: Add JSON metrics for ARM Cortex-A53 Processor + - perf vendor events: Drop incomplete multiple mapfile support + - perf vendor events: Fix error code in json_events() + - perf vendor events: Drop support for unused topic directories + - perf vendor events: Add support for pmu events vendor subdirectory + - perf vendor events arm64: Relocate ThunderX2 JSON to cavium subdirectory + - perf vendor events arm64: Relocate Cortex A53 JSONs to arm subdirectory + - perf vendor events: Add support for arch standard events + - perf vendor events arm64: Add armv8-recommended.json + - perf vendor events arm64: Fixup ThunderX2 to use recommended events + - perf vendor events arm64: fixup A53 to use recommended events + - perf vendor events arm64: add HiSilicon hip08 JSON file + - perf vendor events arm64: Enable JSON events for ThunderX2 B0 + * Warning "cache flush timed out!" seen when unloading the cxl driver + (LP: #1762367) + - cxl: Check if PSL data-cache is available before issue flush request + * Bionic update to 4.15.16 stable release (LP: #1762370) + - ARM: OMAP: Fix SRAM W+X mapping + - ARM: 8746/1: vfp: Go back to clearing vfp_current_hw_state[] + - ARM: dts: sun6i: a31s: bpi-m2: improve pmic properties + - ARM: dts: sun6i: a31s: bpi-m2: add missing regulators + - mtd: jedec_probe: Fix crash in jedec_read_mfr() + - mtd: nand: atmel: Fix get_sectorsize() function + - ALSA: usb-audio: Add native DSD support for TEAC UD-301 + - ALSA: pcm: Use dma_bytes as size parameter in dma_mmap_coherent() + - ALSA: pcm: potential uninitialized return values + - x86/platform/uv/BAU: Add APIC idt entry + - perf/hwbp: Simplify the perf-hwbp code, fix documentation + - ceph: only dirty ITER_IOVEC pages for direct read + - ipc/shm.c: add split function to shm_vm_ops + - i2c: i2c-stm32f7: fix no check on returned setup + - powerpc/mm: Add tracking of the number of coprocessors using a context + - powerpc/mm: Workaround Nest MMU bug with TLB invalidations + - powerpc/64s: Fix i-side SLB miss bad address handler saving nonvolatile GPRs + - partitions/msdos: Unable to mount UFS 44bsd partitions + - xfrm_user: uncoditionally validate esn replay attribute struct + - RDMA/ucma: Check AF family prior resolving address + - RDMA/ucma: Fix use-after-free access in ucma_close + - RDMA/ucma: Ensure that CM_ID exists prior to access it + - RDMA/rdma_cm: Fix use after free race with process_one_req + - RDMA/ucma: Check that device is connected prior to access it + - RDMA/ucma: Check that device exists prior to accessing it + - RDMA/ucma: Introduce safer rdma_addr_size() variants + - ipv6: fix possible deadlock in rt6_age_examine_exception() + - net: xfrm: use preempt-safe this_cpu_read() in ipcomp_alloc_tfms() + - xfrm: Refuse to insert 32 bit userspace socket policies on 64 bit systems + - percpu: add __GFP_NORETRY semantics to the percpu balancing path + - netfilter: x_tables: make allocation less aggressive + - netfilter: bridge: ebt_among: add more missing match size checks + - l2tp: fix races with ipv4-mapped ipv6 addresses + - netfilter: drop template ct when conntrack is skipped. + - netfilter: x_tables: add and use xt_check_proc_name + - phy: qcom-ufs: add MODULE_LICENSE tag + - Bluetooth: Fix missing encryption refresh on Security Request + - drm/i915/dp: Write to SET_POWER dpcd to enable MST hub. + - bitmap: fix memset optimization on big-endian systems + - USB: serial: ftdi_sio: add RT Systems VX-8 cable + - USB: serial: ftdi_sio: add support for Harman FirmwareHubEmulator + - USB: serial: cp210x: add ELDAT Easywave RX09 id + - serial: 8250: Add Nuvoton NPCM UART + - mei: remove dev_err message on an unsupported ioctl + - /dev/mem: Avoid overwriting "err" in read_mem() + - media: usbtv: prevent double free in error case + - parport_pc: Add support for WCH CH382L PCI-E single parallel port card. + - crypto: lrw - Free rctx->ext with kzfree + - crypto: talitos - don't persistently map req_ctx->hw_context and + req_ctx->buf + - crypto: inside-secure - fix clock management + - crypto: testmgr - Fix incorrect values in PKCS#1 test vector + - crypto: talitos - fix IPsec cipher in length + - crypto: ahash - Fix early termination in hash walk + - crypto: caam - Fix null dereference at error path + - crypto: ccp - return an actual key size from RSA max_size callback + - crypto: arm,arm64 - Fix random regeneration of S_shipped + - crypto: x86/cast5-avx - fix ECB encryption when long sg follows short one + - Btrfs: fix unexpected cow in run_delalloc_nocow + - staging: comedi: ni_mio_common: ack ai fifo error interrupts. + - Revert "base: arch_topology: fix section mismatch build warnings" + - Input: ALPS - fix TrackStick detection on Thinkpad L570 and Latitude 7370 + - Input: i8042 - add Lenovo ThinkPad L460 to i8042 reset list + - Input: i8042 - enable MUX on Sony VAIO VGN-CS series to fix touchpad + - vt: change SGR 21 to follow the standards + - ARM: dts: DRA76-EVM: Set powerhold property for tps65917 + - net: hns: Fix ethtool private flags + - Fix slab name "biovec-(1<<(21-12))" + - Revert "ARM: dts: am335x-pepper: Fix the audio CODEC's reset pin" + - Revert "ARM: dts: omap3-n900: Fix the audio CODEC's reset pin" + - Revert "cpufreq: Fix governor module removal race" + - Revert "ip6_vti: adjust vti mtu according to mtu of lower device" + - Linux 4.15.16 + * [18.04][config] regression: nvme and nvme_core couldn't be built as modules + starting 4.15-rc2 (LP: #1759893) + - SAUCE: Revert "lightnvm: include NVM Express driver if OCSSD is selected for + build" + - [Config] CONFIG_BLK_DEV_NMVE=m + * Miscellaneous Ubuntu changes + - [Packaging] Only install cloud init files when do_tools_common=true + + -- Seth Forshee Fri, 20 Apr 2018 11:29:31 -0500 + +linux-azure (4.15.0-1006.6) bionic; urgency=medium + + * linux-azure: 4.15.0-1006.6 -proposed tracker (LP: #1763772) + + * zram module is missing in linux-azure (LP: #1762756) + - [Config] linux-azure: CONFIG_ZRAM=m + + * Disable nouveau driver in linux-azure kernel (LP: #1763456) + - [Config] linux-azure: CONFIG_DRM_NOUVEAU=n + + * linux-azure-edge should follow bionic/linux-azure in a similar way to linux- + hwe (LP: #1763494) + - [Packaging] Increase version + + -- Marcelo Henrique Cerri Fri, 13 Apr 2018 13:33:53 -0300 + +linux-azure (4.15.0-1004.4) bionic; urgency=medium + + * linux-azure: 4.15.0-1004.4 -proposed tracker (LP: #1761181) + + * [Hyper-V] hv_netvsc: enable multicast if necessary (LP: #1759885) + - hv_netvsc: fix filter flags + - SAUCE: hv_netvsc: enable multicast if necessary + + * [Hyper-V][linux-azure] Change config for MLX4 and MLX5 (LP: #1759656) + - [Config] azure: CONFIG_MLX{4,5}_INFINIBAND=y + + * [Hyper-V] Improvements for UDP on SRIOV (LP: #1756414) + - SAUCE: hv_netvsc: avoid retry on send during shutdown + - SAUCE: hv_netvsc: only wake transmit queue if link is up + - SAUCE: hv_netvsc: fix error unwind handling if vmbus_open fails + - SAUCE: hv_netvsc: cancel subchannel setup before halting device + - SAUCE: hv_netvsc: fix race in napi poll when rescheduling + - SAUCE: hv_netvsc: use napi_schedule_irqoff + - SAUCE: hv_netvsc: defer queue selection to VF + - SAUCE: hv_netvsc: filter multicast/broadcast + - SAUCE: hv_netvsc: propagate rx filters to VF + + * [Hyper-V] PCI: hv: Fix 2 hang issues in hv_compose_msi_msg (LP: #1758378) + - SAUCE: PCI: hv: Serialize the present and eject work items + - SAUCE: PCI: hv: Fix 2 hang issues in hv_compose_msi_msg() + - SAUCE: PCI: hv: Fix a comment typo in _hv_pcifront_read_config() + - SAUCE: PCI: hv: Remove the bogus test in hv_eject_device_work() + - SAUCE: PCI: hv: Only queue new work items in hv_pci_devices_present() if + necessary + + * Miscellaneous Ubuntu changes + - [Packaging] Only install cloud init files when do_tools_common=true + + [ Ubuntu: 4.15.0-15.16 ] + + * linux: 4.15.0-15.16 -proposed tracker (LP: #1761177) + * FFe: Enable configuring resume offset via sysfs (LP: #1760106) + - PM / hibernate: Make passing hibernate offsets more friendly + * /dev/bcache/by-uuid links not created after reboot (LP: #1729145) + - SAUCE: (no-up) bcache: decouple emitting a cached_dev CHANGE uevent + * Ubuntu18.04:POWER9:DD2.2 - Unable to start a KVM guest with default machine + type(pseries-bionic) complaining "KVM implementation does not support + Transactional Memory, try cap-htm=off" (kvm) (LP: #1752026) + - powerpc: Use feature bit for RTC presence rather than timebase presence + - powerpc: Book E: Remove unused CPU_FTR_L2CSR bit + - powerpc: Free up CPU feature bits on 64-bit machines + - powerpc: Add CPU feature bits for TM bug workarounds on POWER9 v2.2 + - powerpc/powernv: Provide a way to force a core into SMT4 mode + - KVM: PPC: Book3S HV: Work around transactional memory bugs in POWER9 + - KVM: PPC: Book3S HV: Work around XER[SO] bug in fake suspend mode + - KVM: PPC: Book3S HV: Work around TEXASR bug in fake suspend state + * Important Kernel fixes to be backported for Power9 (kvm) (LP: #1758910) + - powerpc/mm: Fixup tlbie vs store ordering issue on POWER9 + * Ubuntu 18.04 - IO Hang on some namespaces when running HTX with 16 + namespaces (Bolt / NVMe) (LP: #1757497) + - powerpc/64s: Fix lost pending interrupt due to race causing lost update to + irq_happened + * fwts-efi-runtime-dkms 18.03.00-0ubuntu1: fwts-efi-runtime-dkms kernel module + failed to build (LP: #1760876) + - [Packaging] include the retpoline extractor in the headers + + [ Ubuntu: 4.15.0-14.15 ] + + * linux: 4.15.0-14.15 -proposed tracker (LP: #1760678) + * [Bionic] mlx4 ETH - mlnx_qos failed when set some TC to vendor + (LP: #1758662) + - net/mlx4_en: Change default QoS settings + * AT_BASE_PLATFORM in AUXV is absent on kernels available on Ubuntu 17.10 + (LP: #1759312) + - powerpc/64s: Fix NULL AT_BASE_PLATFORM when using DT CPU features + * Bionic update to 4.15.15 stable release (LP: #1760585) + - net: dsa: Fix dsa_is_user_port() test inversion + - openvswitch: meter: fix the incorrect calculation of max delta_t + - qed: Fix MPA unalign flow in case header is split across two packets. + - tcp: purge write queue upon aborting the connection + - qed: Fix non TCP packets should be dropped on iWARP ll2 connection + - sysfs: symlink: export sysfs_create_link_nowarn() + - net: phy: relax error checking when creating sysfs link netdev->phydev + - devlink: Remove redundant free on error path + - macvlan: filter out unsupported feature flags + - net: ipv6: keep sk status consistent after datagram connect failure + - ipv6: old_dport should be a __be16 in __ip6_datagram_connect() + - ipv6: sr: fix NULL pointer dereference when setting encap source address + - ipv6: sr: fix scheduling in RCU when creating seg6 lwtunnel state + - mlxsw: spectrum_buffers: Set a minimum quota for CPU port traffic + - net: phy: Tell caller result of phy_change() + - ipv6: Reflect MTU changes on PMTU of exceptions for MTU-less routes + - net sched actions: return explicit error when tunnel_key mode is not + specified + - ppp: avoid loop in xmit recursion detection code + - rhashtable: Fix rhlist duplicates insertion + - test_rhashtable: add test case for rhltable with duplicate objects + - kcm: lock lower socket in kcm_attach + - sch_netem: fix skb leak in netem_enqueue() + - ieee802154: 6lowpan: fix possible NULL deref in lowpan_device_event() + - net: use skb_to_full_sk() in skb_update_prio() + - net: Fix hlist corruptions in inet_evict_bucket() + - s390/qeth: free netdevice when removing a card + - s390/qeth: when thread completes, wake up all waiters + - s390/qeth: lock read device while queueing next buffer + - s390/qeth: on channel error, reject further cmd requests + - soc/fsl/qbman: fix issue in qman_delete_cgr_safe() + - dpaa_eth: fix error in dpaa_remove() + - dpaa_eth: remove duplicate initialization + - dpaa_eth: increment the RX dropped counter when needed + - dpaa_eth: remove duplicate increment of the tx_errors counter + - dccp: check sk for closed state in dccp_sendmsg() + - ipv6: fix access to non-linear packet in ndisc_fill_redirect_hdr_option() + - l2tp: do not accept arbitrary sockets + - net: ethernet: arc: Fix a potential memory leak if an optional regulator is + deferred + - net: ethernet: ti: cpsw: add check for in-band mode setting with RGMII PHY + interface + - net: fec: Fix unbalanced PM runtime calls + - net/iucv: Free memory obtained by kzalloc + - netlink: avoid a double skb free in genlmsg_mcast() + - net: Only honor ifindex in IP_PKTINFO if non-0 + - net: systemport: Rewrite __bcm_sysport_tx_reclaim() + - qede: Fix qedr link update + - skbuff: Fix not waking applications when errors are enqueued + - team: Fix double free in error path + - Linux 4.15.15 + * Ubuntu 18.04 [ WSP DD2.2 with stop4 and stop5 enabled ]: kdump fails to + capture dump when smt=2 or off. (LP: #1758206) + - powerpc/crash: Remove the test for cpu_online in the IPI callback + - powernv/kdump: Fix cases where the kdump kernel can get HMI's + - powerpc/kdump: Fix powernv build break when KEXEC_CORE=n + * [Intel Ubuntu 18.04 Bug] Null pointer dereference, when disconnecting RAID + rebuild target (LP: #1759279) + - md: document lifetime of internal rdev pointer. + * [Feature]Crystal Ridge:add support for the platform capabilities NFIT sub- + table in ACPI 6.2A (LP: #1730829) + - ACPICA: ACPI 6.0A: Changes to the NFIT ACPI table + - acpi: nfit: Add support for detect platform CPU cache flush on power loss + - acpi: nfit: add persistent memory control flag for nd_region + - libnvdimm: expose platform persistence attribute for nd_region + - libnvdimm: re-enable deep flush for pmem devices via fsync() + - libnvdimm, nfit: fix persistence domain reporting + * Allow multiple mounts of zfs datasets (LP: #1759848) + - SAUCE: Allow mounting datasets more than once (LP: #1759848) + * Update Aquantia driver to fix various issues (LP: #1759303) + - net: aquantia: Eliminate AQ_DIMOF, replace with ARRAY_SIZE + - net: aquantia: Cleanup status flags accesses + - net: aquantia: Cleanup hardware access modules + - net: aquantia: Remove duplicate hardware descriptors declarations + - net: aquantia: Add const qualifiers for hardware ops tables + - net: aquantia: Simplify dependencies between pci modules + - net: aquantia: Eliminate aq_nic structure abstraction + - net: aquantia: Fix register definitions to linux style + - net: aquantia: Prepend hw access functions declarations with prefix + - net: aquantia: Fix internal stats calculation on rx + - net: aquantia: Introduce new device ids and constants + - net: aquantia: Introduce new AQC devices and capabilities + - net: aquantia: Convert hw and caps structures to const static pointers + - net: aquantia: Cleanup pci functions module + - net: aquantia: Remove create/destroy from hw ops + - net: aquantia: Change confusing no_ff_addr to more meaningful name + - net: aquantia: Introduce firmware ops callbacks + - net: aquantia: Introduce support for new firmware on AQC cards + - net: aquantia: Introduce global AQC hardware reset sequence + - net: aquantia: Report correct mediatype via ethtool + - net: aquantia: bump driver version to match aquantia internal numbering + - net: aquantia: Fix hardware reset when SPI may rarely hangup + - net: aquantia: Fix a regression with reset on old firmware + - net: aquantia: Change inefficient wait loop on fw data reads + - net: aquantia: Add tx clean budget and valid budget handling logic + - net: aquantia: Allow live mac address changes + - net: aquantia: Implement pci shutdown callback + - net: aquantia: driver version bump + * ISST-LTE:KVM:Ubuntu1804:BostonLC:boslcp3: cpu hotplug on boslcp3g4 guest + dumping call traces continuously. (LP: #1759722) + - blk-mq: turn WARN_ON in __blk_mq_run_hw_queue into printk + * ISST-LTE:KVM:Ubuntu18.04:BostonLC:boslcp3:boslcp3g3:Guest conosle hangs + after hotplug CPU add operation. (LP: #1759723) + - genirq/affinity: assign vectors to all possible CPUs + - blk-mq: simplify queue mapping & schedule with each possisble CPU + * test_bpf fails (LP: #1756150) + - test_bpf: Fix testing with CONFIG_BPF_JIT_ALWAYS_ON=y on other arches + * Bionic update to v4.15.14 stable release (LP: #1759655) + - MIPS: ralink: Remove ralink_halt() + - MIPS: ralink: Fix booting on MT7621 + - MIPS: lantiq: Fix Danube USB clock + - MIPS: lantiq: Enable AHB Bus for USB + - MIPS: lantiq: ase: Enable MFD_SYSCON + - iio: chemical: ccs811: Corrected firmware boot/application mode transition + - iio: st_pressure: st_accel: pass correct platform data to init + - iio: adc: meson-saradc: unlock on error in meson_sar_adc_lock() + - ALSA: usb-audio: Fix parsing descriptor of UAC2 processing unit + - ALSA: aloop: Sync stale timer before release + - ALSA: aloop: Fix access to not-yet-ready substream via cable + - ALSA: hda - Force polling mode on CFL for fixing codec communication + - ALSA: hda/realtek - Fix speaker no sound after system resume + - ALSA: hda/realtek - Fix Dell headset Mic can't record + - ALSA: hda/realtek - Always immediately update mute LED with pin VREF + - mmc: core: Fix tracepoint print of blk_addr and blksz + - mmc: core: Disable HPI for certain Micron (Numonyx) eMMC cards + - mmc: block: fix updating ext_csd caches on ioctl call + - mmc: dw_mmc: Fix the DTO/CTO timeout overflow calculation for 32-bit systems + - mmc: dw_mmc: exynos: fix the suspend/resume issue for exynos5433 + - mmc: dw_mmc: fix falling from idmac to PIO mode when dw_mci_reset occurs + - PCI: Add function 1 DMA alias quirk for Highpoint RocketRAID 644L + - ahci: Add PCI-id for the Highpoint Rocketraid 644L card + - lockdep: fix fs_reclaim warning + - clk: bcm2835: Fix ana->maskX definitions + - clk: bcm2835: Protect sections updating shared registers + - clk: sunxi-ng: a31: Fix CLK_OUT_* clock ops + - RDMA/mlx5: Fix crash while accessing garbage pointer and freed memory + - Drivers: hv: vmbus: Fix ring buffer signaling + - pinctrl: samsung: Validate alias coming from DT + - Bluetooth: btusb: Remove Yoga 920 from the btusb_needs_reset_resume_table + - Bluetooth: btusb: Add Dell OptiPlex 3060 to btusb_needs_reset_resume_table + - Bluetooth: btusb: Fix quirk for Atheros 1525/QCA6174 + - libata: fix length validation of ATAPI-relayed SCSI commands + - libata: remove WARN() for DMA or PIO command without data + - libata: don't try to pass through NCQ commands to non-NCQ devices + - libata: Apply NOLPM quirk to Crucial MX100 512GB SSDs + - libata: Enable queued TRIM for Samsung SSD 860 + - libata: Apply NOLPM quirk to Crucial M500 480 and 960GB SSDs + - libata: Make Crucial BX100 500GB LPM quirk apply to all firmware versions + - libata: Modify quirks for MX100 to limit NCQ_TRIM quirk to MU01 version + - sched, cgroup: Don't reject lower cpu.max on ancestors + - cgroup: fix rule checking for threaded mode switching + - nfsd: remove blocked locks on client teardown + - media: tegra-cec: reset rx_buf_cnt when start bit detected + - hugetlbfs: check for pgoff value overflow + - h8300: remove extraneous __BIG_ENDIAN definition + - mm/vmalloc: add interfaces to free unmapped page table + - x86/mm: implement free pmd/pte page interfaces + - mm/khugepaged.c: convert VM_BUG_ON() to collapse fail + - mm/thp: do not wait for lock_page() in deferred_split_scan() + - mm/shmem: do not wait for lock_page() in shmem_unused_huge_shrink() + - Revert "mm: page_alloc: skip over regions of invalid pfns where possible" + - drm/vmwgfx: Fix black screen and device errors when running without fbdev + - drm/vmwgfx: Fix a destoy-while-held mutex problem. + - drm/radeon: Don't turn off DP sink when disconnected + - drm/amd/display: We shouldn't set format_default on plane as atomic driver + - drm/amd/display: Add one to EDID's audio channel count when passing to DC + - drm: Reject getfb for multi-plane framebuffers + - drm: udl: Properly check framebuffer mmap offsets + - mm/vmscan: wake up flushers for legacy cgroups too + - module: propagate error in modules_open() + - acpi, numa: fix pxm to online numa node associations + - ACPI / watchdog: Fix off-by-one error at resource assignment + - libnvdimm, {btt, blk}: do integrity setup before add_disk() + - brcmfmac: fix P2P_DEVICE ethernet address generation + - rtlwifi: rtl8723be: Fix loss of signal + - tracing: probeevent: Fix to support minus offset from symbol + - mtdchar: fix usage of mtd_ooblayout_ecc() + - mtd: nand: fsl_ifc: Fix nand waitfunc return value + - mtd: nand: fsl_ifc: Fix eccstat array overflow for IFC ver >= 2.0.0 + - mtd: nand: fsl_ifc: Read ECCSTAT0 and ECCSTAT1 registers for IFC 2.0 + - staging: ncpfs: memory corruption in ncp_read_kernel() + - can: peak/pcie_fd: fix echo_skb is occupied! bug + - can: peak/pcie_fd: remove useless code when interface starts + - can: ifi: Repair the error handling + - can: ifi: Check core revision upon probe + - can: cc770: Fix stalls on rt-linux, remove redundant IRQ ack + - can: cc770: Fix queue stall & dropped RTR reply + - can: cc770: Fix use after free in cc770_tx_interrupt() + - tty: vt: fix up tabstops properly + - x86/entry/64: Don't use IST entry for #BP stack + - selftests/x86/ptrace_syscall: Fix for yet more glibc interference + - x86/vsyscall/64: Use proper accessor to update P4D entry + - x86/efi: Free efi_pgd with free_pages() + - posix-timers: Protect posix clock array access against speculation + - kvm/x86: fix icebp instruction handling + - x86/build/64: Force the linker to use 2MB page size + - x86/boot/64: Verify alignment of the LOAD segment + - hwmon: (k10temp) Only apply temperature offset if result is positive + - hwmon: (k10temp) Add temperature offset for Ryzen 1900X + - perf/x86/intel/uncore: Fix Skylake UPI event format + - perf stat: Fix CVS output format for non-supported counters + - perf/core: Fix ctx_event_type in ctx_resched() + - trace/bpf: remove helper bpf_perf_prog_read_value from tracepoint type + programs + - perf/x86/intel: Don't accidentally clear high bits in bdw_limit_period() + - perf/x86/intel/uncore: Fix multi-domain PCI CHA enumeration bug on Skylake + servers + - iio: ABI: Fix name of timestamp sysfs file + - iio: imu: st_lsm6dsx: fix endianness in st_lsm6dsx_read_oneshot() + - iio: imu: st_lsm6dsx: introduce conf_lock mutex + - staging: android: ion: Zero CMA allocated memory + - kbuild: disable clang's default use of -fmerge-all-constants + - bpf: skip unnecessary capability check + - bpf, x64: increase number of passes + - Linux 4.15.14 + * System fails to start (boot) on battery due to read-only root file-system + (LP: #1726930) // Bionic update to v4.15.14 stable release (LP: #1759655) + - libata: disable LPM for Crucial BX100 SSD 500GB drive + * [Feature][CFL][ICL] [CNL]Thunderbolt support (Titan Ridge) (LP: #1730775) + - thunderbolt: Resume control channel after hibernation image is created + - thunderbolt: Serialize PCIe tunnel creation with PCI rescan + - thunderbolt: Handle connecting device in place of host properly + - thunderbolt: Do not overwrite error code when domain adding fails + - thunderbolt: Wait a bit longer for root switch config space + - thunderbolt: Wait a bit longer for ICM to authenticate the active NVM + - thunderbolt: Handle rejected Thunderbolt devices + - thunderbolt: Factor common ICM add and update operations out + - thunderbolt: Correct function name in kernel-doc comment + - thunderbolt: Add tb_switch_get() + - thunderbolt: Add tb_switch_find_by_route() + - thunderbolt: Add tb_xdomain_find_by_route() + - thunderbolt: Add constant for approval timeout + - thunderbolt: Move driver ready handling to struct icm + - thunderbolt: Add 'boot' attribute for devices + - thunderbolt: Add support for preboot ACL + - Documentation/admin-guide: fixes for thunderbolt.rst + - thunderbolt: Introduce USB only (SL4) security level + - thunderbolt: Add support for Intel Titan Ridge + * QCA9377 requires more IRAM banks for its new firmware (LP: #1748345) + - ath10k: update the IRAM bank number for QCA9377 + * nfp: fix disabling on hw-tc-offload in flower (LP: #1752828) + - nfp: bpf: require ETH table + - nfp: don't advertise hw-tc-offload on non-port netdevs + - nfp: forbid disabling hw-tc-offload on representors while offload active + * Fix an issue that when system in S3, USB keyboard can't wake up the system. + (LP: #1759511) + - ACPI / PM: Allow deeper wakeup power states with no _SxD nor _SxW + * retpoline hints: primary infrastructure and initial hints (LP: #1758856) + - [Packaging] retpoline -- add safe usage hint support + - [Packaging] retpoline-check -- only report additions + - [Packaging] retpoline -- widen indirect call/jmp detection + - [Packaging] retpoline -- elide %rip relative indirections + - [Packaging] retpoline -- clear hint information from packages + - SAUCE: apm -- annotate indirect calls within + firmware_restrict_branch_speculation_{start,end} + - SAUCE: EFI -- annotate indirect calls within + firmware_restrict_branch_speculation_{start,end} + - SAUCE: early/late -- annotate indirect calls in early/late initialisation + code + - SAUCE: vga_set_mode -- avoid jump tables + - [Config] retpoine -- switch to new format + * zfs system process hung on container stop/delete (LP: #1754584) + - SAUCE: Fix non-prefaulted page deadlock (LP: #1754584) + - Revert "UBUNTU: SAUCE: Fix non-prefaulted page deadlock (LP: #1754584)" + - SAUCE: Fix non-prefaulted page deadlock (LP: #1754584) + * Important KVM fixes for ppc64el (LP: #1759045) + - KVM: PPC: Book3S HV: Do SLB load/unload with guest LPCR value loaded + - KVM: PPC: Book3S HV: Fix handling of secondary HPTEG in HPT resizing code + - KVM: PPC: Book3S HV: Make HPT resizing work on POWER9 + - KVM: PPC: Book3S: Add MMIO emulation for VMX instructions + - KVM: PPC: Book3S: Fix compile error that occurs with some gcc versions + - KVM: PPC: Book3S HV: Fix trap number return from __kvmppc_vcore_entry + - KVM: PPC: Book3S HV: Fix duplication of host SLB entries + * ubuntu_zram_smoke test will cause soft lockup on Artful ThunderX ARM64 + (LP: #1755073) + - SAUCE: crypto: thunderx_zip: Fix fallout from CONFIG_VMAP_STACK + * Update to ocxl driver (LP: #1755161) + - ocxl: fix signed comparison with less than zero + - ocxl: Fix potential bad errno on irq allocation + - ocxl: Add get_metadata IOCTL to share OCXL information to userspace + * CAPI Flash (cxlflash) update (LP: #1752672) + - scsi: cxlflash: Update cxl-specific arguments to generic cookie + - scsi: cxlflash: Explicitly cache number of interrupts per context + - scsi: cxlflash: Remove embedded CXL work structures + - scsi: cxlflash: Adapter context init can return error + - scsi: cxlflash: Staging to support future accelerators + - SAUCE: cxlflash: Preserve number of interrupts for master contexts + - SAUCE: cxlflash: Avoid clobbering context control register value + - SAUCE: cxlflash: Add argument identifier names + - SAUCE: cxlflash: Introduce OCXL backend + - SAUCE: cxlflash: Hardware AFU for OCXL + - SAUCE: cxlflash: Read host function configuration + - SAUCE: cxlflash: Setup function acTag range + - SAUCE: cxlflash: Read host AFU configuration + - SAUCE: cxlflash: Setup AFU acTag range + - SAUCE: cxlflash: Setup AFU PASID + - SAUCE: cxlflash: Adapter context support for OCXL + - SAUCE: cxlflash: Use IDR to manage adapter contexts + - SAUCE: cxlflash: Support adapter file descriptors for OCXL + - SAUCE: cxlflash: Support adapter context discovery + - SAUCE: cxlflash: Support image reload policy modification + - SAUCE: cxlflash: MMIO map the AFU + - SAUCE: cxlflash: Support starting an adapter context + - SAUCE: cxlflash: Support process specific mappings + - SAUCE: cxlflash: Support AFU state toggling + - SAUCE: cxlflash: Support reading adapter VPD data + - SAUCE: cxlflash: Setup function OCXL link + - SAUCE: cxlflash: Setup OCXL transaction layer + - SAUCE: cxlflash: Support process element lifecycle + - SAUCE: cxlflash: Support AFU interrupt management + - SAUCE: cxlflash: Support AFU interrupt mapping and registration + - SAUCE: cxlflash: Support starting user contexts + - SAUCE: cxlflash: Support adapter context polling + - SAUCE: cxlflash: Support adapter context reading + - SAUCE: cxlflash: Support adapter context mmap and release + - SAUCE: cxlflash: Support file descriptor mapping + - SAUCE: cxlflash: Introduce object handle fop + - SAUCE: cxlflash: Setup LISNs for user contexts + - SAUCE: cxlflash: Setup LISNs for master contexts + - SAUCE: cxlflash: Update synchronous interrupt status bits + - SAUCE: cxlflash: Introduce OCXL context state machine + - SAUCE: cxlflash: Register for translation errors + - SAUCE: cxlflash: Support AFU reset + - SAUCE: cxlflash: Enable OCXL operations + * [Feature][CFL] Enable pmc_core driver for H, S, and U SKUs (LP: #1730770) + - platform/x86: intel_pmc_core: Remove unused EXPORTED API + - platform/x86: intel_pmc_core: Change driver to a module + - platform/x86: intel_pmc_core: Fix file permission warnings + - platform/x86: intel_pmc_core: Refactor debugfs entries + - platform/x86: intel_pmc_core: Substitute PCI with CPUID enumeration + - platform/x86: intel_pmc_core: Convert to ICPU macro + - platform/x86: intel_pmc_core: Remove unused header file + - ACPI / LPIT: Export lpit_read_residency_count_address() + - platform/x86: intel_pmc_core: Read base address from LPIT + - x86/cpu: Add Cannonlake to Intel family + - platform/x86: intel_pmc_core: Add CannonLake PCH support + - platform/x86: intel_pmc_core: Special case for Coffeelake + * Cpu utilization showing system time for kvm guests (performance) (sysstat) + (LP: #1755979) + - KVM: PPC: Book3S HV: Fix guest time accounting with VIRT_CPU_ACCOUNTING_GEN + * [Artful][Wyse 3040] System hang when trying to enable an offlined CPU core + (LP: #1736393) + - SAUCE: drm/i915:Don't set chip specific data + - SAUCE: drm/i915: make previous commit affects Wyse 3040 only + * [Bug] ISH support for CFL-H (LP: #1739522) + - HID: intel-ish-hid: Enable Cannon Lake and Coffee Lake laptop/desktop + * ath9k can't connect to wifi AP (LP: #1727228) + - ath9k: add MSI support + - ath9k: add a quirk to set use_msi automatically + * [P9,Power NV][Witherspoon][Ubuntu 18.04][Perf] : PMU events by name it is + not listed under perf list (LP: #1755470) + - iperf vendor events: Use more flexible pattern matching for CPU + identification for mapfile.csv + * zed process consuming 100% cpu (LP: #1751796) + - SAUCE: Fix ioctl loop-spin in zed (LP: #1751796) + * Bionic update to 4.15.13 stable release (LP: #1758886) + - scsi: megaraid_sas: Do not use 32-bit atomic request descriptor for Ventura + controllers + - staging: android: ashmem: Fix possible deadlock in ashmem_ioctl + - drm/amdgpu: use polling mem to set SDMA3 wptr for VF + - Bluetooth: hci_qca: Avoid setup failure on missing rampatch + - Bluetooth: btqcomsmd: Fix skb double free corruption + - cpufreq: longhaul: Revert transition_delay_us to 200 ms + - media: c8sectpfe: fix potential NULL pointer dereference in + c8sectpfe_timer_interrupt + - drm/msm: fix leak in failed get_pages + - IB/ipoib: Warn when one port fails to initialize + - RDMA/iwpm: Fix uninitialized error code in iwpm_send_mapinfo() + - hv_netvsc: Fix the receive buffer size limit + - hv_netvsc: Fix the TX/RX buffer default sizes + - tcp: allow TLP in ECN CWR + - spi: sh-msiof: Avoid writing to registers from spi_master.setup() + - libbpf: prefer global symbols as bpf program name source + - rtlwifi: rtl_pci: Fix the bug when inactiveps is enabled. + - rtlwifi: always initialize variables given to RT_TRACE() + - media: bt8xx: Fix err 'bt878_probe()' + - ath10k: handling qos at STA side based on AP WMM enable/disable + - media: [RESEND] media: dvb-frontends: Add delay to Si2168 restart + - qmi_wwan: set FLAG_SEND_ZLP to avoid network initiated disconnect + - tty: goldfish: Enable 'earlycon' only if built-in + - serial: 8250_dw: Disable clock on error + - cros_ec: fix nul-termination for firmware build info + - watchdog: Fix potential kref imbalance when opening watchdog + - watchdog: Fix kref imbalance seen if handle_boot_enabled=0 + - platform/chrome: Use proper protocol transfer function + - dmaengine: zynqmp_dma: Fix race condition in the probe + - drm/tilcdc: ensure nonatomic iowrite64 is not used + - mmc: avoid removing non-removable hosts during suspend + - mmc: block: fix logical error to avoid memory leak + - /dev/mem: Add bounce buffer for copy-out + - net: phy: meson-gxl: check phy_write return value + - sfp: fix EEPROM reading in the case of non-SFF8472 SFPs + - sfp: fix non-detection of PHY + - media: s5p-mfc: Fix lock contention - request_firmware() once + - rtc: ac100: Fix multiple race conditions + - IB/ipoib: Avoid memory leak if the SA returns a different DGID + - RDMA/cma: Use correct size when writing netlink stats + - IB/umem: Fix use of npages/nmap fields + - iser-target: avoid reinitializing rdma contexts for isert commands + - bpf/cgroup: fix a verification error for a CGROUP_DEVICE type prog + - vgacon: Set VGA struct resource types + - omapdrm: panel: fix compatible vendor string for td028ttec1 + - mmc: sdhci-xenon: wait 5ms after set 1.8V signal enable + - drm/omap: DMM: Check for DMM readiness after successful transaction commit + - pty: cancel pty slave port buf's work in tty_release + - coresight: Fix disabling of CoreSight TPIU + - PCI: designware-ep: Fix ->get_msi() to check MSI_EN bit + - PCI: endpoint: Fix find_first_zero_bit() usage + - PCI: rcar: Handle rcar_pcie_parse_request_of_pci_ranges() failures + - media: davinci: fix a debug printk + - clk: check ops pointer on clock register + - dt-bindings: display: panel: Fix compatible string for Toshiba LT089AC29000 + - clk: use round rate to bail out early in set_rate + - pinctrl: Really force states during suspend/resume + - pinctrl: rockchip: enable clock when reading pin direction register + - iommu/vt-d: clean up pr_irq if request_threaded_irq fails + - ip6_vti: adjust vti mtu according to mtu of lower device + - ip_gre: fix error path when erspan_rcv failed + - ip_gre: fix potential memory leak in erspan_rcv + - soc: qcom: smsm: fix child-node lookup + - RDMA/ocrdma: Fix permissions for OCRDMA_RESET_STATS + - ARM: dts: aspeed-evb: Add unit name to memory node + - nfsd4: permit layoutget of executable-only files + - clk: at91: pmc: Wait for clocks when resuming + - clk: Don't touch hardware when reparenting during registration + - clk: axi-clkgen: Correctly handle nocount bit in recalc_rate() + - clk: si5351: Rename internal plls to avoid name collisions + - crypto: artpec6 - set correct iv size for gcm(aes) + - hwrng: core - Clean up RNG list when last hwrng is unregistered + - dmaengine: ti-dma-crossbar: Fix event mapping for TPCC_EVT_MUX_60_63 + - IB/mlx5: Fix integer overflows in mlx5_ib_create_srq + - IB/mlx5: Fix out-of-bounds read in create_raw_packet_qp_rq + - RDMA/vmw_pvrdma: Fix usage of user response structures in ABI file + - serial: 8250_pci: Don't fail on multiport card class + - RDMA/core: Do not use invalid destination in determining port reuse + - clk: migrate the count of orphaned clocks at init + - RDMA/ucma: Fix access to non-initialized CM_ID object + - RDMA/ucma: Don't allow join attempts for unsupported AF family + - Linux 4.15.13 + * Ubuntu18.04:PowerPC - Set Transparent Huge Pages (THP) by default to + "always" (LP: #1753708) + - Config: Set TRANSPARENT_HUGEPAGE_ALWAYS=y on ppc64el + * Bionic update to 4.15.12 stable release (LP: #1757465) + - x86/cpufeatures: Add Intel Total Memory Encryption cpufeature + - x86/cpufeatures: Add Intel PCONFIG cpufeature + - selftests/x86/entry_from_vm86: Exit with 1 if we fail + - selftests/x86/entry_from_vm86: Add test cases for POPF + - x86/vm86/32: Fix POPF emulation + - x86/speculation, objtool: Annotate indirect calls/jumps for objtool on + 32-bit kernels + - x86/speculation: Remove Skylake C2 from Speculation Control microcode + blacklist + - KVM: x86: Fix device passthrough when SME is active + - x86/mm: Fix vmalloc_fault to use pXd_large + - parisc: Handle case where flush_cache_range is called with no context + - ALSA: pcm: Fix UAF in snd_pcm_oss_get_formats() + - ALSA: hda - Revert power_save option default value + - ALSA: seq: Fix possible UAF in snd_seq_check_queue() + - ALSA: seq: Clear client entry before deleting else at closing + - drm/nouveau/bl: Fix oops on driver unbind + - drm/nouveau/mmu: ALIGN_DOWN correct variable + - drm/amdgpu: fix prime teardown order + - drm/radeon: fix prime teardown order + - drm/amdgpu/dce: Don't turn off DP sink when disconnected + - fs: Teach path_connected to handle nfs filesystems with multiple roots. + - KVM: arm/arm64: Reduce verbosity of KVM init log + - KVM: arm/arm64: Reset mapped IRQs on VM reset + - kvm: arm/arm64: vgic-v3: Tighten synchronization for guests using v2 on v3 + - KVM: arm/arm64: vgic: Don't populate multiple LRs with the same vintid + - lock_parent() needs to recheck if dentry got __dentry_kill'ed under it + - fs/aio: Add explicit RCU grace period when freeing kioctx + - fs/aio: Use RCU accessors for kioctx_table->table[] + - RDMAVT: Fix synchronization around percpu_ref + - irqchip/gic-v3-its: Ensure nr_ites >= nr_lpis + - nvme: fix subsystem multiple controllers support check + - xfs: preserve i_rdev when recycling a reclaimable inode + - btrfs: Fix NULL pointer exception in find_bio_stripe + - btrfs: add missing initialization in btrfs_check_shared + - btrfs: alloc_chunk: fix DUP stripe size handling + - btrfs: Fix use-after-free when cleaning up fs_devs with a single stale + device + - btrfs: remove spurious WARN_ON(ref->count < 0) in find_parent_nodes + - btrfs: Fix memory barriers usage with device stats counters + - scsi: qla2xxx: Fix smatch warning in qla25xx_delete_{rsp|req}_que + - scsi: qla2xxx: Fix NULL pointer access for fcport structure + - scsi: qla2xxx: Fix logo flag for qlt_free_session_done() + - scsi: qla2xxx: Fix crashes in qla2x00_probe_one on probe failure + - usb: dwc2: fix STM32F7 USB OTG HS compatible + - dt-bindings: usb: fix the STM32F7 DWC2 OTG HS core binding + - USB: gadget: udc: Add missing platform_device_put() on error in + bdc_pci_probe() + - usb: dwc3: Fix GDBGFIFOSPACE_TYPE values + - usb: dwc3: core: Power-off core/PHYs on system_suspend in host mode + - usb: dwc3: of-simple: fix oops by unbalanced clk disable call + - usb: gadget: udc: renesas_usb3: fix oops in renesas_usb3_remove() + - phy: phy-brcm-usb: Fix two DT properties to match bindings doc + - phy: phy-brcm-usb-init: Some Low Speed keyboards fail on 7271 + - phy: phy-brcm-usb-init: DRD mode can cause crash on startup + - phy: phy-brcm-usb-init: Power down USB 3.0 PHY when XHCI disabled + - Linux 4.15.12 + * cxl: Fix timebase synchronization status on POWER9 missing (CAPI) + (LP: #1757228) + - cxl: Fix timebase synchronization status on P9 + * [Feature][GLK] Enable L2 CDP (Code and Data Prioritization) (LP: #1737873) + - x86/intel_rdt: Enumerate L2 Code and Data Prioritization (CDP) feature + - x86/intel_rdt: Add command line parameter to control L2_CDP + * [Feature] Crystal Ridge-Restrict DAX to configurations with struct page + (LP: #1751724) + - mm, dax: introduce pfn_t_special() + - ext2: auto disable dax instead of failing mount + - ext4: auto disable dax instead of failing mount + - dax: require 'struct page' by default for filesystem dax + - Config: Enable CONFIG_FS_DAX_LIMITED + * Bionic update to 4.15.11 stable release (LP: #1756978) + - x86: Treat R_X86_64_PLT32 as R_X86_64_PC32 + - ASoC: sun4i-i2s: Fix RX slot number of SUN8I + - ASoC: sgtl5000: Fix suspend/resume + - ASoC: wm_adsp: For TLV controls only register TLV get/set + - ASoC: rt5651: Fix regcache sync errors on resume + - usb: host: xhci-rcar: add support for r8a77965 + - xhci: Fix front USB ports on ASUS PRIME B350M-A + - xhci: fix endpoint context tracer output + - serial: sh-sci: prevent lockup on full TTY buffers + - tty/serial: atmel: add new version check for usart + - uas: fix comparison for error code + - staging: comedi: fix comedi_nsamples_left. + - staging: android: ashmem: Fix lockdep issue during llseek + - scsi: sd_zbc: Fix potential memory leak + - USB: storage: Add JMicron bridge 152d:2567 to unusual_devs.h + - usbip: vudc: fix null pointer dereference on udc->lock + - usb: quirks: add control message delay for 1b1c:1b20 + - usb: usbmon: Read text within supplied buffer size + - usb: gadget: f_fs: Fix use-after-free in ffs_fs_kill_sb() + - usb: dwc3: Fix lock-up on ID change during system suspend/resume + - serial: 8250_pci: Add Brainboxes UC-260 4 port serial device + - serial: core: mark port as initialized in autoconfig + - earlycon: add reg-offset to physical address before mapping + - dm mpath: fix passing integrity data + - Revert "btrfs: use proper endianness accessors for super_copy" + - gfs2: Clean up {lookup,fillup}_metapath + - gfs2: Fixes to "Implement iomap for block_map" (2) + - drm/panel: rpi-touchscreen: propagate errors in rpi_touchscreen_i2c_read() + - spi: imx: Fix failure path leak on GPIO request error correctly + - HID: multitouch: Only look at non touch fields in first packet of a frame + - KVM: PPC: Book3S HV: Avoid shifts by negative amounts + - drm/edid: set ELD connector type in drm_edid_to_eld() + - dma-buf/fence: Fix lock inversion within dma-fence-array + - video/hdmi: Allow "empty" HDMI infoframes + - KVM: PPC: Book3S HV: Fix typo in kvmppc_hv_get_dirty_log_radix() + - HID: elo: clear BTN_LEFT mapping + - iwlwifi: mvm: rs: don't override the rate history in the search cycle + - ARM: dts: koelsch: Move cec_clock to root node + - clk: meson: gxbb: fix wrong clock for SARADC/SANA + - ARM: dts: exynos: Correct Trats2 panel reset line + - drm/amdgpu: fix get_max_engine_clock_in_mhz + - staging: rtl8822be: fix missing null check on dev_alloc_skb return + - typec: tcpm: fusb302: Resolve out of order messaging events + - USB: ledtrig-usbport: fix of-node leak + - dt-bindings: serial: Add common rs485 binding for RTS polarity + - sched: Stop switched_to_rt() from sending IPIs to offline CPUs + - sched: Stop resched_cpu() from sending IPIs to offline CPUs + - crypto: chelsio - Fix an error code in chcr_hash_dma_map() + - crypto: ecc - Fix NULL pointer deref. on no default_rng + - crypto: keywrap - Add missing ULL suffixes for 64-bit constants + - crypto: cavium - fix memory leak on info + - test_firmware: fix setting old custom fw path back on exit + - drm/vblank: Fix vblank timestamp debugs + - net: ieee802154: adf7242: Fix bug if defined DEBUG + - rtc: brcmstb-waketimer: fix error handling in brcmstb_waketmr_probe() + - perf report: Fix -D output for user metadata events + - net: xfrm: allow clearing socket xfrm policies. + - gpiolib: don't allow OPEN_DRAIN & OPEN_SOURCE flags simultaneously + - mtd: nand: fix interpretation of NAND_CMD_NONE in nand_command[_lp]() + - net: thunderx: Set max queue count taking XDP_TX into account + - ARM: dts: am335x-pepper: Fix the audio CODEC's reset pin + - ARM: dts: omap3-n900: Fix the audio CODEC's reset pin + - mtd: nand: ifc: update bufnum mask for ver >= 2.0.0 + - userns: Don't fail follow_automount based on s_user_ns + - xfrm: Fix xfrm_replay_overflow_offload_esn + - leds: pm8058: Silence pointer to integer size warning + - bpf: fix stack state printing in verifier log + - power: supply: sbs-message: double left shift bug in sbsm_select() + - power: supply: ab8500_charger: Fix an error handling path + - power: supply: ab8500_charger: Bail out in case of error in + 'ab8500_charger_init_hw_registers()' + - drm/etnaviv: make THERMAL selectable + - iio: adc: ina2xx: Shift bus voltage register to mask flag bits + - iio: health: max30102: Add power enable parameter to get_temp function + - ath10k: update tdls teardown state to target + - cpufreq: Fix governor module removal race + - KVM: X86: Restart the guest when insn_len is zero and SEV is enabled + - drm/amdgpu:fix random missing of FLR NOTIFY + - scsi: ses: don't ask for diagnostic pages repeatedly during probe + - pwm: stmpe: Fix wrong register offset for hwpwm=2 case + - drm/sun4i: Fix format mask in DE2 driver + - pinctrl: sh-pfc: r8a7791: Add can_clk function + - pinctrl: sh-pfc: r8a7795-es1: Fix MOD_SEL1 bit[25:24] to 0x3 when using + STP_ISEN_1_D + - perf annotate: Fix unnecessary memory allocation for s390x + - perf annotate: Fix objdump comment parsing for Intel mov dissassembly + - iwlwifi: mvm: avoid dumping assert log when device is stopped + - drm/amdgpu:fix virtual dce bug + - drm/amdgpu: fix amdgpu_sync_resv v2 + - bnxt_en: Uninitialized variable in bnxt_tc_parse_actions() + - clk: qcom: msm8916: fix mnd_width for codec_digcodec + - mwifiex: cfg80211: do not change virtual interface during scan processing + - ath10k: fix invalid STS_CAP_OFFSET_MASK + - tools/usbip: fixes build with musl libc toolchain + - spi: sun6i: disable/unprepare clocks on remove + - bnxt_en: Don't print "Link speed -1 no longer supported" messages. + - scsi: core: scsi_get_device_flags_keyed(): Always return device flags + - scsi: devinfo: apply to HP XP the same flags as Hitachi VSP + - scsi: dh: add new rdac devices + - clk: renesas: r8a77970: Add LVDS clock + - staging: fsl-dpaa2/eth: Fix access to FAS field + - media: vsp1: Prevent suspending and resuming DRM pipelines + - dm raid: fix raid set size revalidation + - media: cpia2: Fix a couple off by one bugs + - media: davinci: vpif_capture: add NULL check on devm_kzalloc return value + - virtio_net: Disable interrupts if napi_complete_done rescheduled napi + - net: sched: drop qdisc_reset from dev_graft_qdisc + - veth: set peer GSO values + - drm/amdkfd: Fix memory leaks in kfd topology + - powerpc/64: Don't trace irqs-off at interrupt return to soft-disabled + context + - arm64: dts: renesas: salvator-common: Add EthernetAVB PHY reset + - agp/intel: Flush all chipset writes after updating the GGTT + - mac80211_hwsim: enforce PS_MANUAL_POLL to be set after PS_ENABLED + - mac80211: remove BUG() when interface type is invalid + - crypto: caam/qi - use correct print specifier for size_t + - ASoC: nuc900: Fix a loop timeout test + - mmc: mmc_test: Ensure command queue is disabled for testing + - Fix misannotated out-of-line _copy_to_user() + - ipvlan: add L2 check for packets arriving via virtual devices + - rcutorture/configinit: Fix build directory error message + - locking/locktorture: Fix num reader/writer corner cases + - ima: relax requiring a file signature for new files with zero length + - IB/mlx5: revisit -Wmaybe-uninitialized warning + - dmaengine: qcom_hidma: check pending interrupts + - drm/i915/glk: Disable Guc and HuC on GLK + - Linux 4.15.11 + - Config: Enable CONFIG_DRM_ETNAVIV_THERMAL=y + * [FFE][Feature] KVM CLX avx512_vnni (LP: #1739665) + - KVM: x86: add support for UMIP + - KVM: Expose new cpu features to guest + * Ubuntu18.04[P9 DD2.2 Boston]:Unable to boot power8 compat mode + guests(ubuntu14.04.5) (kvm) (LP: #1756254) + - KVM: PPC: Book3S HV: Allow HPT and radix on the same core for POWER9 v2.2 + * Allow hugepage backing for "p8compat" mode kvm guests (LP: #1754206) + - KVM: PPC: Book3S HV: Fix VRMA initialization with 2MB or 1GB memory backing + * [Bug][KVM][Crystal Ridge] Terrible performance of vNVDIMM on QEMU with + device DAX backend (LP: #1745899) + - x86/mm: add a function to check if a pfn is UC/UC-/WC + - KVM: MMU: consider host cache mode in MMIO page check + * nfp: read ME frequency from vNIC ctrl memory (LP: #1752818) + - nfp: add TLV capabilities to the BAR + - nfp: read ME frequency from vNIC ctrl memory + - nfp: fix TLV offset calculation + * Miscellaneous Ubuntu changes + - [Packaging] skip cloud tools packaging when not building package + - [Packaging] final-checks -- remove check for empty retpoline files + + -- Marcelo Henrique Cerri Wed, 04 Apr 2018 18:08:55 -0300 + +linux-azure (4.15.0-1003.3) bionic; urgency=medium + + * linux-azure: 4.15.0-1003.3 -proposed tracker (LP: #1757167) + + * Enable secure boot on linux-azure (LP: #1754042) + - Revert "UBUNTU: [debian] azure: do not build uefi signed binary" + + * [Hyper-v] Set CONFIG_I2C_PIIX4 to "n" (LP: #1752999) + - [Config] azure: CONFIG_I2C_PIIX4=n + + * [Hyper-V] set config: CONFIG_EDAC_DECODE_MCE=y (LP: #1751123) + - [Config] azure: CONFIG_EDAC_DECODE_MCE=y + + * Miscellaneous Ubuntu changes + - [Config] updateconfigs after rebase to Ubuntu-4.15.0-13.14 + - [Config] fix up retpoline abi files + + [ Ubuntu: 4.15.0-13.14 ] + + * linux: 4.15.0-13.14 -proposed tracker (LP: #1756408) + * devpts: handle bind-mounts (LP: #1755857) + - SAUCE: devpts: hoist out check for DEVPTS_SUPER_MAGIC + - SAUCE: devpts: resolve devpts bind-mounts + - SAUCE: devpts: comment devpts_mntget() + - SAUCE: selftests: add devpts selftests + * [bionic][arm64] d-i: add hisi_sas_v3_hw to scsi-modules (LP: #1756103) + - d-i: add hisi_sas_v3_hw to scsi-modules + * [Bionic][ARM64] enable ROCE and HNS3 driver support for hip08 SoC + (LP: #1756097) + - RDMA/hns: Refactor eq code for hip06 + - RDMA/hns: Add eq support of hip08 + - RDMA/hns: Add detailed comments for mb() call + - RDMA/hns: Add rq inline data support for hip08 RoCE + - RDMA/hns: Update the usage of sr_max and rr_max field + - RDMA/hns: Set access flags of hip08 RoCE + - RDMA/hns: Filter for zero length of sge in hip08 kernel mode + - RDMA/hns: Fix QP state judgement before sending work requests + - RDMA/hns: Assign dest_qp when deregistering mr + - RDMA/hns: Fix endian problems around imm_data and rkey + - RDMA/hns: Assign the correct value for tx_cqn + - RDMA/hns: Create gsi qp in hip08 + - RDMA/hns: Add gsi qp support for modifying qp in hip08 + - RDMA/hns: Fill sq wqe context of ud type in hip08 + - RDMA/hns: Assign zero for pkey_index of wc in hip08 + - RDMA/hns: Update the verbs of polling for completion + - RDMA/hns: Set the guid for hip08 RoCE device + - net: hns3: Refactor of the reset interrupt handling logic + - net: hns3: Add reset service task for handling reset requests + - net: hns3: Refactors the requested reset & pending reset handling code + - net: hns3: Add HNS3 VF IMP(Integrated Management Proc) cmd interface + - net: hns3: Add mailbox support to VF driver + - net: hns3: Add HNS3 VF HCL(Hardware Compatibility Layer) Support + - net: hns3: Add HNS3 VF driver to kernel build framework + - net: hns3: Unified HNS3 {VF|PF} Ethernet Driver for hip08 SoC + - net: hns3: Add mailbox support to PF driver + - net: hns3: Change PF to add ring-vect binding & resetQ to mailbox + - net: hns3: Add mailbox interrupt handling to PF driver + - net: hns3: add support to query tqps number + - net: hns3: add support to modify tqps number + - net: hns3: change the returned tqp number by ethtool -x + - net: hns3: free the ring_data structrue when change tqps + - net: hns3: get rss_size_max from configuration but not hardcode + - net: hns3: add a mask initialization for mac_vlan table + - net: hns3: add vlan offload config command + - net: hns3: add ethtool related offload command + - net: hns3: add handling vlan tag offload in bd + - net: hns3: cleanup mac auto-negotiation state query + - net: hns3: fix for getting auto-negotiation state in hclge_get_autoneg + - net: hns3: add support for set_pauseparam + - net: hns3: add support to update flow control settings after autoneg + - net: hns3: add Asym Pause support to phy default features + - net: hns3: add support for querying advertised pause frame by ethtool ethx + - net: hns3: Increase the default depth of bucket for TM shaper + - net: hns3: change TM sched mode to TC-based mode when SRIOV enabled + - net: hns3: hns3_get_channels() can be static + - net: hns3: Add ethtool interface for vlan filter + - net: hns3: Disable VFs change rxvlan offload status + - net: hns3: Unify the strings display of packet statistics + - net: hns3: Fix spelling errors + - net: hns3: Remove repeat statistic of rx_errors + - net: hns3: Modify the update period of packet statistics + - net: hns3: Mask the packet statistics query when NIC is down + - net: hns3: Fix an error of total drop packet statistics + - net: hns3: Fix a loop index error of tqp statistics query + - net: hns3: Fix an error macro definition of HNS3_TQP_STAT + - net: hns3: Remove a useless member of struct hns3_stats + - net: hns3: Add packet statistics of netdev + - net: hns3: Fix a response data read error of tqp statistics query + - net: hns3: fix for updating fc_mode_last_time + - net: hns3: fix for setting MTU + - net: hns3: fix for changing MTU + - net: hns3: add MTU initialization for hardware + - net: hns3: fix for not setting pause parameters + - net: hns3: remove redundant semicolon + - net: hns3: Add more packet size statisctics + - Revert "net: hns3: Add packet statistics of netdev" + - net: hns3: report the function type the same line with hns3_nic_get_stats64 + - net: hns3: add ethtool_ops.get_channels support for VF + - net: hns3: remove TSO config command from VF driver + - net: hns3: add ethtool_ops.get_coalesce support to PF + - net: hns3: add ethtool_ops.set_coalesce support to PF + - net: hns3: refactor interrupt coalescing init function + - net: hns3: refactor GL update function + - net: hns3: remove unused GL setup function + - net: hns3: change the unit of GL value macro + - net: hns3: add int_gl_idx setup for TX and RX queues + - net: hns3: add feature check when feature changed + - net: hns3: check for NULL function pointer in hns3_nic_set_features + - net: hns: Fix for variable may be used uninitialized warnings + - net: hns3: add support for get_regs + - net: hns3: add manager table initialization for hardware + - net: hns3: add ethtool -p support for fiber port + - net: hns3: add net status led support for fiber port + - net: hns3: converting spaces into tabs to avoid checkpatch.pl warning + - net: hns3: add get/set_coalesce support to VF + - net: hns3: add int_gl_idx setup for VF + - [Config]: enable CONFIG_HNS3_HCLGEVF as module. + * [Bionic][ARM64] add RAS extension and SDEI features (LP: #1756096) + - KVM: arm64: Store vcpu on the stack during __guest_enter() + - KVM: arm/arm64: Convert kvm_host_cpu_state to a static per-cpu allocation + - KVM: arm64: Change hyp_panic()s dependency on tpidr_el2 + - arm64: alternatives: use tpidr_el2 on VHE hosts + - KVM: arm64: Stop save/restoring host tpidr_el1 on VHE + - Docs: dt: add devicetree binding for describing arm64 SDEI firmware + - firmware: arm_sdei: Add driver for Software Delegated Exceptions + - arm64: Add vmap_stack header file + - arm64: uaccess: Add PAN helper + - arm64: kernel: Add arch-specific SDEI entry code and CPU masking + - firmware: arm_sdei: Add support for CPU and system power states + - firmware: arm_sdei: add support for CPU private events + - arm64: acpi: Remove __init from acpi_psci_use_hvc() for use by SDEI + - firmware: arm_sdei: Discover SDEI support via ACPI + - arm64: sysreg: Move to use definitions for all the SCTLR bits + - arm64: cpufeature: Detect CPU RAS Extentions + - arm64: kernel: Survive corrected RAS errors notified by SError + - arm64: Unconditionally enable IESB on exception entry/return for firmware- + first + - arm64: kernel: Prepare for a DISR user + - KVM: arm/arm64: mask/unmask daif around VHE guests + - KVM: arm64: Set an impdef ESR for Virtual-SError using VSESR_EL2. + - KVM: arm64: Save/Restore guest DISR_EL1 + - KVM: arm64: Save ESR_EL2 on guest SError + - KVM: arm64: Handle RAS SErrors from EL1 on guest exit + - KVM: arm64: Handle RAS SErrors from EL2 on guest exit + - KVM: arm64: Emulate RAS error registers and set HCR_EL2's TERR & TEA + - [Config]: enable RAS_EXTN and ARM_SDE_INTERFACE + * [Bionic][ARM64] PCI and SAS driver patches for hip08 SoCs (LP: #1756094) + - scsi: hisi_sas: fix dma_unmap_sg() parameter + - scsi: ata: enhance the definition of SET MAX feature field value + - scsi: hisi_sas: relocate clearing ITCT and freeing device + - scsi: hisi_sas: optimise port id refresh function + - scsi: hisi_sas: some optimizations of host controller reset + - scsi: hisi_sas: modify hisi_sas_dev_gone() for reset + - scsi: hisi_sas: add an mechanism to do reset work synchronously + - scsi: hisi_sas: change ncq process for v3 hw + - scsi: hisi_sas: add RAS feature for v3 hw + - scsi: hisi_sas: add some print to enhance debugging + - scsi: hisi_sas: improve int_chnl_int_v2_hw() consistency with v3 hw + - scsi: hisi_sas: add v2 hw port AXI error handling support + - scsi: hisi_sas: use an general way to delay PHY work + - scsi: hisi_sas: do link reset for some CHL_INT2 ints + - scsi: hisi_sas: judge result of internal abort + - scsi: hisi_sas: add internal abort dev in some places + - scsi: hisi_sas: fix SAS_QUEUE_FULL problem while running IO + - scsi: hisi_sas: re-add the lldd_port_deformed() + - scsi: hisi_sas: add v3 hw suspend and resume + - scsi: hisi_sas: Change frame type for SET MAX commands + - scsi: hisi_sas: make local symbol host_attrs static + - scsi: hisi_sas: fix a bug in hisi_sas_dev_gone() + - SAUCE: scsi: hisi_sas: config for hip08 ES + - SAUCE: scsi: hisi_sas: export device table of v3 hw to userspace + - PM / core: Add LEAVE_SUSPENDED driver flag + - PCI / PM: Support for LEAVE_SUSPENDED driver flag + - PCI/AER: Skip recovery callbacks for correctable errors from ACPI APEI + - PCI/ASPM: Calculate LTR_L1.2_THRESHOLD from device characteristics + - PCI/ASPM: Enable Latency Tolerance Reporting when supported + - PCI/ASPM: Unexport internal ASPM interfaces + - PCI: Make PCI_SCAN_ALL_PCIE_DEVS work for Root as well as Downstream Ports + - PCI/AER: Return error if AER is not supported + - PCI/DPC: Enable DPC only if AER is available + * [CVE] Spectre: System Z {kernel} UBUNTU18.04 (LP: #1754580) + - s390: scrub registers on kernel entry and KVM exit + - s390: add optimized array_index_mask_nospec + - s390/alternative: use a copy of the facility bit mask + - s390: add options to change branch prediction behaviour for the kernel + - s390: run user space and KVM guests with modified branch prediction + - s390: introduce execute-trampolines for branches + - s390: Replace IS_ENABLED(EXPOLINE_*) with IS_ENABLED(CONFIG_EXPOLINE_*) + - s390: do not bypass BPENTER for interrupt system calls + - s390/entry.S: fix spurious zeroing of r0 + * s390/crypto: Fix kernel crash on aes_s390 module remove (LP: #1753424) + - SAUCE: s390/crypto: Fix kernel crash on aes_s390 module remove. + * [Feature]Update Ubuntu 18.04 lpfc FC driver with 32/64GB HBA support and bug + fixes (LP: #1752182) + - scsi: lpfc: FLOGI failures are reported when connected to a private loop. + - scsi: lpfc: Expand WQE capability of every NVME hardware queue + - scsi: lpfc: Handle XRI_ABORTED_CQE in soft IRQ + - scsi: lpfc: Fix NVME LS abort_xri + - scsi: lpfc: Raise maximum NVME sg list size for 256 elements + - scsi: lpfc: Driver fails to detect direct attach storage array + - scsi: lpfc: Fix display for debugfs queInfo + - scsi: lpfc: Adjust default value of lpfc_nvmet_mrq + - scsi: lpfc: Fix ndlp ref count for pt2pt mode issue RSCN + - scsi: lpfc: Linux LPFC driver does not process all RSCNs + - scsi: lpfc: correct port registrations with nvme_fc + - scsi: lpfc: Correct driver deregistrations with host nvme transport + - scsi: lpfc: Fix crash during driver unload with running nvme traffic + - scsi: lpfc: Fix driver handling of nvme resources during unload + - scsi: lpfc: small sg cnt cleanup + - scsi: lpfc: Fix random heartbeat timeouts during heavy IO + - scsi: lpfc: update driver version to 11.4.0.5 + - scsi: lpfc: Fix -EOVERFLOW behavior for NVMET and defer_rcv + - scsi: lpfc: Fix receive PRLI handling + - scsi: lpfc: Increase SCSI CQ and WQ sizes. + - scsi: lpfc: Fix SCSI LUN discovery when SCSI and NVME enabled + - scsi: lpfc: Fix issues connecting with nvme initiator + - scsi: lpfc: Fix infinite wait when driver unregisters a remote NVME port. + - scsi: lpfc: Beef up stat counters for debug + - scsi: lpfc: update driver version to 11.4.0.6 + - scsi: lpfc: correct sg_seg_cnt attribute min vs default + - scsi: scsi_transport_fc: fix typos on 64/128 GBit define names + - scsi: lpfc: don't dereference localport before it has been null checked + - scsi: lpfc: fix a couple of minor indentation issues + - treewide: Use DEVICE_ATTR_RW + - treewide: Use DEVICE_ATTR_RO + - treewide: Use DEVICE_ATTR_WO + - scsi: lpfc: Fix frequency of Release WQE CQEs + - scsi: lpfc: Increase CQ and WQ sizes for SCSI + - scsi: lpfc: move placement of target destroy on driver detach + - scsi: lpfc: correct debug counters for abort + - scsi: lpfc: Add WQ Full Logic for NVME Target + - scsi: lpfc: Fix PRLI handling when topology type changes + - scsi: lpfc: Fix IO failure during hba reset testing with nvme io. + - scsi: lpfc: Fix RQ empty firmware trap + - scsi: lpfc: Allow set of maximum outstanding SCSI cmd limit for a target + - scsi: lpfc: Fix soft lockup in lpfc worker thread during LIP testing + - scsi: lpfc: Fix issue_lip if link is disabled + - scsi: lpfc: Indicate CONF support in NVMe PRLI + - scsi: lpfc: Fix SCSI io host reset causing kernel crash + - scsi: lpfc: Validate adapter support for SRIU option + - scsi: lpfc: Fix header inclusion in lpfc_nvmet + - scsi: lpfc: Treat SCSI Write operation Underruns as an error + - scsi: lpfc: Fix nonrecovery of NVME controller after cable swap. + - scsi: lpfc: update driver version to 11.4.0.7 + - scsi: lpfc: Update 11.4.0.7 modified files for 2018 Copyright + - scsi: lpfc: Rework lpfc to allow different sli4 cq and eq handlers + - scsi: lpfc: Rework sli4 doorbell infrastructure + - scsi: lpfc: Add SLI-4 if_type=6 support to the code base + - scsi: lpfc: Add push-to-adapter support to sli4 + - scsi: lpfc: Add PCI Ids for if_type=6 hardware + - scsi: lpfc: Add 64G link speed support + - scsi: lpfc: Add if_type=6 support for cycling valid bits + - scsi: lpfc: Enable fw download on if_type=6 devices + - scsi: lpfc: Add embedded data pointers for enhanced performance + - scsi: lpfc: Fix nvme embedded io length on new hardware + - scsi: lpfc: Work around NVME cmd iu SGL type + - scsi: lpfc: update driver version to 12.0.0.0 + - scsi: lpfc: Change Copyright of 12.0.0.0 modified files to 2018 + - scsi: lpfc: use __raw_writeX on DPP copies + - scsi: lpfc: Add missing unlock in WQ full logic + * CVE-2018-8043 + - net: phy: mdio-bcm-unimac: fix potential NULL dereference in + unimac_mdio_probe() + * Bionic update to 4.15.10 stable release (LP: #1756100) + - Revert "UBUNTU: SAUCE: ALSA: hda/realtek - Add support headset mode for DELL + WYSE" + - RDMA/ucma: Limit possible option size + - RDMA/ucma: Check that user doesn't overflow QP state + - RDMA/mlx5: Fix integer overflow while resizing CQ + - bpf: cpumap: use GFP_KERNEL instead of GFP_ATOMIC in __cpu_map_entry_alloc() + - IB/uverbs: Improve lockdep_check + - mac80211_hwsim: don't use WQ_MEM_RECLAIM + - net/smc: fix NULL pointer dereference on sock_create_kern() error path + - regulator: stm32-vrefbuf: fix check on ready flag + - drm/i915: Check for fused or unused pipes + - drm/i915/audio: fix check for av_enc_map overflow + - drm/i915: Fix rsvd2 mask when out-fence is returned + - drm/i915: Clear the in-use marker on execbuf failure + - drm/i915: Disable DC states around GMBUS on GLK + - drm/i915: Update watermark state correctly in sanitize_watermarks + - drm/i915: Try EDID bitbanging on HDMI after failed read + - drm/i915/perf: fix perf stream opening lock + - scsi: core: Avoid that ATA error handling can trigger a kernel hang or oops + - scsi: qla2xxx: Fix NULL pointer crash due to active timer for ABTS + - drm/i915: Always call to intel_display_set_init_power() in resume_early. + - workqueue: Allow retrieval of current task's work struct + - drm: Allow determining if current task is output poll worker + - drm/nouveau: Fix deadlock on runtime suspend + - drm/radeon: Fix deadlock on runtime suspend + - drm/amdgpu: Fix deadlock on runtime suspend + - drm/nouveau: prefer XBGR2101010 for addfb ioctl + - drm/amd/powerplay/smu7: allow mclk switching with no displays + - drm/amd/powerplay/vega10: allow mclk switching with no displays + - Revert "drm/radeon/pm: autoswitch power state when in balanced mode" + - drm/amd/display: check for ipp before calling cursor operations + - drm/radeon: insist on 32-bit DMA for Cedar on PPC64/PPC64LE + - drm/amd/powerplay: fix power over limit on Fiji + - drm/amd/display: Default HDMI6G support to true. Log VBIOS table error. + - drm/amdgpu: used cached pcie gen info for SI (v2) + - drm/amdgpu: Notify sbios device ready before send request + - drm/radeon: fix KV harvesting + - drm/amdgpu: fix KV harvesting + - drm/amdgpu:Correct max uvd handles + - drm/amdgpu:Always save uvd vcpu_bo in VM Mode + - ovl: redirect_dir=nofollow should not follow redirect for opaque lower + - MIPS: BMIPS: Do not mask IPIs during suspend + - MIPS: ath25: Check for kzalloc allocation failure + - MIPS: OCTEON: irq: Check for null return on kzalloc allocation + - PCI: dwc: Fix enumeration end when reaching root subordinate + - Input: matrix_keypad - fix race when disabling interrupts + - Revert "Input: synaptics - Lenovo Thinkpad T460p devices should use RMI" + - bug: use %pB in BUG and stack protector failure + - lib/bug.c: exclude non-BUG/WARN exceptions from report_bug() + - mm/memblock.c: hardcode the end_pfn being -1 + - Documentation/sphinx: Fix Directive import error + - loop: Fix lost writes caused by missing flag + - virtio_ring: fix num_free handling in error case + - KVM: s390: fix memory overwrites when not using SCA entries + - arm64: mm: fix thinko in non-global page table attribute check + - IB/core: Fix missing RDMA cgroups release in case of failure to register + device + - Revert "nvme: create 'slaves' and 'holders' entries for hidden controllers" + - kbuild: Handle builtin dtb file names containing hyphens + - dm bufio: avoid false-positive Wmaybe-uninitialized warning + - IB/mlx5: Fix incorrect size of klms in the memory region + - bcache: fix crashes in duplicate cache device register + - bcache: don't attach backing with duplicate UUID + - x86/MCE: Save microcode revision in machine check records + - x86/MCE: Serialize sysfs changes + - perf tools: Fix trigger class trigger_on() + - x86/spectre_v2: Don't check microcode versions when running under + hypervisors + - ALSA: hda/realtek - Add support headset mode for DELL WYSE + - ALSA: hda/realtek - Add headset mode support for Dell laptop + - ALSA: hda/realtek: Limit mic boost on T480 + - ALSA: hda/realtek - Fix dock line-out volume on Dell Precision 7520 + - ALSA: hda/realtek - Make dock sound work on ThinkPad L570 + - ALSA: seq: More protection for concurrent write and ioctl races + - ALSA: hda: add dock and led support for HP EliteBook 820 G3 + - ALSA: hda: add dock and led support for HP ProBook 640 G2 + - scsi: qla2xxx: Fix NULL pointer crash due to probe failure + - scsi: qla2xxx: Fix recursion while sending terminate exchange + - dt-bindings: Document mti,mips-cpc binding + - MIPS: CPC: Map registers using DT in mips_cpc_default_phys_base() + - nospec: Kill array_index_nospec_mask_check() + - nospec: Include dependency + - x86/entry: Reduce the code footprint of the 'idtentry' macro + - x86/entry/64: Use 'xorl' for faster register clearing + - x86/mm: Remove stale comment about KMEMCHECK + - x86/asm: Improve how GEN_*_SUFFIXED_RMWcc() specify clobbers + - x86/IO-APIC: Avoid warning in 32-bit builds + - x86/LDT: Avoid warning in 32-bit builds with older gcc + - x86-64/realmode: Add instruction suffix + - Revert "x86/retpoline: Simplify vmexit_fill_RSB()" + - x86/speculation: Use IBRS if available before calling into firmware + - x86/retpoline: Support retpoline builds with Clang + - x86/speculation, objtool: Annotate indirect calls/jumps for objtool + - x86/speculation: Move firmware_restrict_branch_speculation_*() from C to CPP + - x86/paravirt, objtool: Annotate indirect calls + - x86/boot, objtool: Annotate indirect jump in secondary_startup_64() + - x86/mm/sme, objtool: Annotate indirect call in sme_encrypt_execute() + - objtool: Use existing global variables for options + - objtool: Add retpoline validation + - objtool: Add module specific retpoline rules + - objtool, retpolines: Integrate objtool with retpoline support more closely + - objtool: Fix another switch table detection issue + - objtool: Fix 32-bit build + - x86/kprobes: Fix kernel crash when probing .entry_trampoline code + - watchdog: hpwdt: SMBIOS check + - watchdog: hpwdt: Check source of NMI + - watchdog: hpwdt: fix unused variable warning + - watchdog: hpwdt: Remove legacy NMI sourcing. + - netfilter: add back stackpointer size checks + - netfilter: ipt_CLUSTERIP: fix a race condition of proc file creation + - netfilter: xt_hashlimit: fix lock imbalance + - netfilter: x_tables: fix missing timer initialization in xt_LED + - netfilter: nat: cope with negative port range + - netfilter: IDLETIMER: be syzkaller friendly + - netfilter: ebtables: CONFIG_COMPAT: don't trust userland offsets + - netfilter: bridge: ebt_among: add missing match size checks + - netfilter: ipv6: fix use-after-free Write in nf_nat_ipv6_manip_pkt + - netfilter: use skb_to_full_sk in ip6_route_me_harder + - tpm_tis: Move ilb_base_addr to tpm_tis_data + - tpm: Keep CLKRUN enabled throughout the duration of transmit_cmd() + - tpm: delete the TPM_TIS_CLK_ENABLE flag + - tpm: remove unused variables + - tpm: only attempt to disable the LPC CLKRUN if is already enabled + - x86/xen: Calculate __max_logical_packages on PV domains + - scsi: qla2xxx: Fix system crash for Notify ack timeout handling + - scsi: qla2xxx: Fix gpnid error processing + - scsi: qla2xxx: Move session delete to driver work queue + - scsi: qla2xxx: Skip IRQ affinity for Target QPairs + - scsi: qla2xxx: Fix re-login for Nport Handle in use + - scsi: qla2xxx: Retry switch command on time out + - scsi: qla2xxx: Serialize GPNID for multiple RSCN + - scsi: qla2xxx: Fix login state machine stuck at GPDB + - scsi: qla2xxx: Fix NPIV host cleanup in target mode + - scsi: qla2xxx: Relogin to target port on a cable swap + - scsi: qla2xxx: Fix Relogin being triggered too fast + - scsi: qla2xxx: Fix PRLI state check + - scsi: qla2xxx: Fix abort command deadlock due to spinlock + - scsi: qla2xxx: Replace fcport alloc with qla2x00_alloc_fcport + - scsi: qla2xxx: Fix scan state field for fcport + - scsi: qla2xxx: Clear loop id after delete + - scsi: qla2xxx: Defer processing of GS IOCB calls + - scsi: qla2xxx: Remove aborting ELS IOCB call issued as part of timeout. + - scsi: qla2xxx: Fix system crash in qlt_plogi_ack_unref + - scsi: qla2xxx: Fix memory leak in dual/target mode + - NFS: Fix an incorrect type in struct nfs_direct_req + - pNFS: Prevent the layout header refcount going to zero in pnfs_roc() + - NFS: Fix unstable write completion + - Linux 4.15.10 + * Bionic update to 4.15.10 stable release (LP: #1756100) // CVE-2018-1000004. + - ALSA: seq: Don't allow resizing pool in use + * nfp: prioritize stats updates (LP: #1752061) + - nfp: flower: prioritize stats updates + * Ubuntu 18.04 - Kernel crash on nvme subsystem-reset /dev/nvme0 (Bolt / NVMe) + (LP: #1753371) + - nvme-pci: Fix EEH failure on ppc + * sbsa watchdog crashes thunderx2 system (LP: #1755595) + - watchdog: sbsa: use 32-bit read for WCV + * KVM: s390: add vcpu stat counters for many instruction (LP: #1755132) + - KVM: s390: diagnoses are instructions as well + - KVM: s390: add vcpu stat counters for many instruction + * CIFS SMB2/SMB3 does not work for domain based DFS (LP: #1747572) + - CIFS: make IPC a regular tcon + - CIFS: use tcon_ipc instead of use_ipc parameter of SMB2_ioctl + - CIFS: dump IPC tcon in debug proc file + * i2c-thunderx: erroneous error message "unhandled state: 0" (LP: #1754076) + - i2c: octeon: Prevent error message on bus error + * Boston-LC:bos1u1: Stress test on Qlogic Fibre Channel on Ubuntu KVM guest + that caused KVM host crashed in qlt_free_session_done call (LP: #1750441) + - scsi: qla2xxx: Fix memory corruption during hba reset test + * Ubuntu 18.04 - Performance: Radix page fault handler bug in KVM + (LP: #1752236) + - KVM: PPC: Book3S HV: Fix handling of large pages in radix page fault handler + * Fix ARC hit rate (LP: #1755158) + - SAUCE: Fix ARC hit rate (LP: #1755158) + * Bionic update to 4.15.9 stable release (LP: #1755275) + - bpf: fix mlock precharge on arraymaps + - bpf: fix memory leak in lpm_trie map_free callback function + - bpf: fix rcu lockdep warning for lpm_trie map_free callback + - bpf, x64: implement retpoline for tail call + - bpf, arm64: fix out of bounds access in tail call + - bpf: add schedule points in percpu arrays management + - bpf: allow xadd only on aligned memory + - bpf, ppc64: fix out of bounds access in tail call + - scsi: mpt3sas: fix oops in error handlers after shutdown/unload + - scsi: mpt3sas: wait for and flush running commands on shutdown/unload + - KVM: x86: fix backward migration with async_PF + - Linux 4.15.9 + * Bionic update to 4.15.8 stable release (LP: #1755179) + - hrtimer: Ensure POSIX compliance (relative CLOCK_REALTIME hrtimers) + - ipmi_si: Fix error handling of platform device + - platform/x86: dell-laptop: Allocate buffer on heap rather than globally + - powerpc/pseries: Enable RAS hotplug events later + - Bluetooth: btusb: Use DMI matching for QCA reset_resume quirking + - ixgbe: fix crash in build_skb Rx code path + - tpm: st33zp24: fix potential buffer overruns caused by bit glitches on the + bus + - tpm: fix potential buffer overruns caused by bit glitches on the bus + - tpm_i2c_infineon: fix potential buffer overruns caused by bit glitches on + the bus + - tpm_i2c_nuvoton: fix potential buffer overruns caused by bit glitches on the + bus + - tpm_tis: fix potential buffer overruns caused by bit glitches on the bus + - ALSA: usb-audio: Add a quirck for B&W PX headphones + - ALSA: control: Fix memory corruption risk in snd_ctl_elem_read + - ALSA: x86: Fix missing spinlock and mutex initializations + - ALSA: hda: Add a power_save blacklist + - ALSA: hda - Fix pincfg at resume on Lenovo T470 dock + - mmc: sdhci-pci: Fix S0i3 for Intel BYT-based controllers + - mmc: dw_mmc-k3: Fix out-of-bounds access through DT alias + - mmc: dw_mmc: Avoid accessing registers in runtime suspended state + - mmc: dw_mmc: Factor out dw_mci_init_slot_caps + - mmc: dw_mmc: Fix out-of-bounds access for slot's caps + - timers: Forward timer base before migrating timers + - parisc: Use cr16 interval timers unconditionally on qemu + - parisc: Reduce irq overhead when run in qemu + - parisc: Fix ordering of cache and TLB flushes + - parisc: Hide virtual kernel memory layout + - btrfs: use proper endianness accessors for super_copy + - block: fix the count of PGPGOUT for WRITE_SAME + - block: kyber: fix domain token leak during requeue + - block: pass inclusive 'lend' parameter to truncate_inode_pages_range + - vfio: disable filesystem-dax page pinning + - cpufreq: s3c24xx: Fix broken s3c_cpufreq_init() + - dax: fix vma_is_fsdax() helper + - direct-io: Fix sleep in atomic due to sync AIO + - x86/xen: Zero MSR_IA32_SPEC_CTRL before suspend + - x86/platform/intel-mid: Handle Intel Edison reboot correctly + - x86/cpu_entry_area: Sync cpu_entry_area to initial_page_table + - bridge: check brport attr show in brport_show + - fib_semantics: Don't match route with mismatching tclassid + - hdlc_ppp: carrier detect ok, don't turn off negotiation + - ipv6 sit: work around bogus gcc-8 -Wrestrict warning + - net: amd-xgbe: fix comparison to bitshift when dealing with a mask + - net: ethernet: ti: cpsw: fix net watchdog timeout + - net: fix race on decreasing number of TX queues + - net: ipv4: don't allow setting net.ipv4.route.min_pmtu below 68 + - netlink: ensure to loop over all netns in genlmsg_multicast_allns() + - net: sched: report if filter is too large to dump + - ppp: prevent unregistered channels from connecting to PPP units + - sctp: verify size of a new chunk in _sctp_make_chunk() + - udplite: fix partial checksum initialization + - net/mlx5e: Fix TCP checksum in LRO buffers + - sctp: fix dst refcnt leak in sctp_v4_get_dst + - mlxsw: spectrum_switchdev: Check success of FDB add operation + - net/mlx5e: Specify numa node when allocating drop rq + - net: phy: fix phy_start to consider PHY_IGNORE_INTERRUPT + - tcp: Honor the eor bit in tcp_mtu_probe + - rxrpc: Fix send in rxrpc_send_data_packet() + - tcp_bbr: better deal with suboptimal GSO + - doc: Change the min default value of tcp_wmem/tcp_rmem. + - net/mlx5e: Fix loopback self test when GRO is off + - net_sched: gen_estimator: fix broken estimators based on percpu stats + - net/sched: cls_u32: fix cls_u32 on filter replace + - sctp: do not pr_err for the duplicated node in transport rhlist + - mlxsw: spectrum_router: Fix error path in mlxsw_sp_vr_create + - net: ipv4: Set addr_type in hash_keys for forwarded case + - sctp: fix dst refcnt leak in sctp_v6_get_dst() + - bridge: Fix VLAN reference count problem + - net/mlx5e: Verify inline header size do not exceed SKB linear size + - tls: Use correct sk->sk_prot for IPV6 + - amd-xgbe: Restore PCI interrupt enablement setting on resume + - cls_u32: fix use after free in u32_destroy_key() + - mlxsw: spectrum_router: Do not unconditionally clear route offload + indication + - netlink: put module reference if dump start fails + - tcp: purge write queue upon RST + - tuntap: correctly add the missing XDP flush + - tuntap: disable preemption during XDP processing + - virtio-net: disable NAPI only when enabled during XDP set + - cxgb4: fix trailing zero in CIM LA dump + - net/mlx5: Fix error handling when adding flow rules + - net: phy: Restore phy_resume() locking assumption + - tcp: tracepoint: only call trace_tcp_send_reset with full socket + - l2tp: don't use inet_shutdown on tunnel destroy + - l2tp: don't use inet_shutdown on ppp session destroy + - l2tp: fix races with tunnel socket close + - l2tp: fix race in pppol2tp_release with session object destroy + - l2tp: fix tunnel lookup use-after-free race + - s390/qeth: fix underestimated count of buffer elements + - s390/qeth: fix SETIP command handling + - s390/qeth: fix overestimated count of buffer elements + - s390/qeth: fix IP removal on offline cards + - s390/qeth: fix double-free on IP add/remove race + - Revert "s390/qeth: fix using of ref counter for rxip addresses" + - s390/qeth: fix IP address lookup for L3 devices + - s390/qeth: fix IPA command submission race + - tcp: revert F-RTO middle-box workaround + - tcp: revert F-RTO extension to detect more spurious timeouts + - blk-mq: don't call io sched's .requeue_request when requeueing rq to + ->dispatch + - media: m88ds3103: don't call a non-initalized function + - EDAC, sb_edac: Fix out of bound writes during DIMM configuration on KNL + - KVM: s390: take care of clock-comparator sign control + - KVM: s390: provide only a single function for setting the tod (fix SCK) + - KVM: s390: consider epoch index on hotplugged CPUs + - KVM: s390: consider epoch index on TOD clock syncs + - nospec: Allow index argument to have const-qualified type + - x86/mm: Fix {pmd,pud}_{set,clear}_flags() + - ARM: orion: fix orion_ge00_switch_board_info initialization + - ARM: dts: rockchip: Remove 1.8 GHz operation point from phycore som + - ARM: mvebu: Fix broken PL310_ERRATA_753970 selects + - ARM: kvm: fix building with gcc-8 + - KVM: X86: Fix SMRAM accessing even if VM is shutdown + - KVM: mmu: Fix overlap between public and private memslots + - KVM/x86: Remove indirect MSR op calls from SPEC_CTRL + - KVM: x86: move LAPIC initialization after VMCS creation + - KVM/VMX: Optimize vmx_vcpu_run() and svm_vcpu_run() by marking the RDMSR + path as unlikely() + - KVM: x86: fix vcpu initialization with userspace lapic + - KVM/x86: remove WARN_ON() for when vm_munmap() fails + - ACPI / bus: Parse tables as term_list for Dell XPS 9570 and Precision M5530 + - ARM: dts: LogicPD SOM-LV: Fix I2C1 pinmux + - ARM: dts: LogicPD Torpedo: Fix I2C1 pinmux + - powerpc/64s/radix: Boot-time NULL pointer protection using a guard-PID + - md: only allow remove_and_add_spares when no sync_thread running. + - platform/x86: dell-laptop: fix kbd_get_state's request value + - Linux 4.15.8 + * ZFS setgid broken on 0.7 (LP: #1753288) + - SAUCE: Fix ZFS setgid + * /proc/kallsyms prints "(null)" for null addresses in 4.15 (LP: #1754297) + - vsprintf: avoid misleading "(null)" for %px + * Miscellaneous Ubuntu changes + - d-i: Add netsec to nic-modules + - [Config] fix up retpoline abi files + - [Config] set NOBP and expoline options for s390 + + [ Ubuntu: 4.15.0-12.13 ] + + * linux: 4.15.0-12.13 -proposed tracker (LP: #1754059) + * CONFIG_EFI=y on armhf (LP: #1726362) + - [Config] CONFIG_EFI=y on armhf, reconcile secureboot EFI settings + * ppc64el: Support firmware disable of RFI flush (LP: #1751994) + - powerpc/pseries: Support firmware disable of RFI flush + - powerpc/powernv: Support firmware disable of RFI flush + * [Feature] CFL/CNL (PCH:CNP-H): New GPIO Commit added (GPIO Driver needed) + (LP: #1751714) + - gpio / ACPI: Drop unnecessary ACPI GPIO to Linux GPIO translation + - pinctrl: intel: Allow custom GPIO base for pad groups + - pinctrl: cannonlake: Align GPIO number space with Windows + * [Feature] Add xHCI debug device support in the driver (LP: #1730832) + - usb: xhci: Make some static functions global + - usb: xhci: Add DbC support in xHCI driver + - [Config] USB_XHCI_DBGCAP=y for commit mainline dfba2174dc42. + * [SRU] Lenovo E41 Mic mute hotkey is not responding (LP: #1753347) + - platform/x86: ideapad-laptop: Increase timeout to wait for EC answer + * headset mic can't be detected on two Dell machines (LP: #1748807) + - ALSA: hda - Fix a wrong FIXUP for alc289 on Dell machines + * hisi_sas: Add disk LED support (LP: #1752695) + - scsi: hisi_sas: directly attached disk LED feature for v2 hw + * [Feature] [Graphics]Whiskey Lake (Coffelake-U 4+2) new PCI Device ID adds + (LP: #1742561) + - drm/i915/cfl: Adding more Coffee Lake PCI IDs. + * [Bug] [USB Function][CFL-CNL PCH]Stall Error and USB Transaction Error in + trace, Disable of device-initiated U1/U2 failed and rebind failed: -517 + during suspend/resume with usb storage. (LP: #1730599) + - usb: Don't print a warning if interface driver rebind is deferred at resume + * retpoline: ignore %cs:0xNNN constant indirections (LP: #1752655) + - [Packaging] retpoline -- elide %cs:0xNNNN constants on i386 + - [Config] retpoline -- clean up i386 retpoline files + * hisilicon hibmc regression due to ea642c3216cb ("drm/ttm: add io_mem_pfn + callback") (LP: #1738334) + - drm/ttm: add ttm_bo_io_mem_pfn to check io_mem_pfn + * [Asus UX360UA] battery status in unity-panel is not changing when battery is + being charged (LP: #1661876) // AC adapter status not detected on Asus + ZenBook UX410UAK (LP: #1745032) + - ACPI / battery: Add quirk for Asus UX360UA and UX410UAK + * ASUS UX305LA - Battery state not detected correctly (LP: #1482390) + - ACPI / battery: Add quirk for Asus GL502VSK and UX305LA + * [18.04 FEAT] Automatically detect layer2 setting in the qeth device driver + (LP: #1747639) + - s390/diag: add diag26c support for VNIC info + - s390/qeth: support early setup for z/VM NICs + * Bionic update to v4.15.7 stable release (LP: #1752317) + - netfilter: drop outermost socket lock in getsockopt() + - arm64: mm: don't write garbage into TTBR1_EL1 register + - kconfig.h: Include compiler types to avoid missed struct attributes + - MIPS: boot: Define __ASSEMBLY__ for its.S build + - xtensa: fix high memory/reserved memory collision + - scsi: ibmvfc: fix misdefined reserved field in ibmvfc_fcp_rsp_info + - MIPS: Drop spurious __unused in struct compat_flock + - cfg80211: fix cfg80211_beacon_dup + - i2c: designware: must wait for enable + - i2c: bcm2835: Set up the rising/falling edge delays + - X.509: fix BUG_ON() when hash algorithm is unsupported + - X.509: fix NULL dereference when restricting key with unsupported_sig + - PKCS#7: fix certificate chain verification + - PKCS#7: fix certificate blacklisting + - extcon: int3496: process id-pin first so that we start with the right status + - genirq/matrix: Handle CPU offlining proper + - RDMA/uverbs: Protect from races between lookup and destroy of uobjects + - RDMA/uverbs: Protect from command mask overflow + - RDMA/uverbs: Fix bad unlock balance in ib_uverbs_close_xrcd + - RDMA/uverbs: Fix circular locking dependency + - RDMA/uverbs: Sanitize user entered port numbers prior to access it + - iio: adc: stm32: fix stm32h7_adc_enable error handling + - iio: srf08: fix link error "devm_iio_triggered_buffer_setup" undefined + - iio: buffer: check if a buffer has been set up when poll is called + - iio: adis_lib: Initialize trigger before requesting interrupt + - Kbuild: always define endianess in kconfig.h + - x86/apic/vector: Handle vector release on CPU unplug correctly + - x86/oprofile: Fix bogus GCC-8 warning in nmi_setup() + - mm, swap, frontswap: fix THP swap if frontswap enabled + - mm: don't defer struct page initialization for Xen pv guests + - uapi/if_ether.h: move __UAPI_DEF_ETHHDR libc define + - irqchip/gic-v3: Use wmb() instead of smb_wmb() in gic_raise_softirq() + - irqchip/mips-gic: Avoid spuriously handling masked interrupts + - PCI/cxgb4: Extend T3 PCI quirk to T4+ devices + - net: thunderbolt: Tear down connection properly on suspend + - net: thunderbolt: Run disconnect flow asynchronously when logout is received + - ohci-hcd: Fix race condition caused by ohci_urb_enqueue() and + io_watchdog_func() + - usb: ohci: Proper handling of ed_rm_list to handle race condition between + usb_kill_urb() and finish_unlinks() + - arm64: Remove unimplemented syscall log message + - arm64: Disable unhandled signal log messages by default + - arm64: cpufeature: Fix CTR_EL0 field definitions + - Add delay-init quirk for Corsair K70 RGB keyboards + - usb: host: ehci: use correct device pointer for dma ops + - usb: dwc3: gadget: Set maxpacket size for ep0 IN + - usb: dwc3: ep0: Reset TRB counter for ep0 IN + - usb: phy: mxs: Fix NULL pointer dereference on i.MX23/28 + - usb: ldusb: add PIDs for new CASSY devices supported by this driver + - Revert "usb: musb: host: don't start next rx urb if current one failed" + - usb: gadget: f_fs: Process all descriptors during bind + - usb: gadget: f_fs: Use config_ep_by_speed() + - usb: renesas_usbhs: missed the "running" flag in usb_dmac with rx path + - drm/cirrus: Load lut in crtc_commit + - drm/atomic: Fix memleak on ERESTARTSYS during non-blocking commits + - drm: Handle unexpected holes in color-eviction + - drm/amdgpu: disable MMHUB power gating on raven + - drm/amdgpu: fix VA hole handling on Vega10 v3 + - drm/amdgpu: Add dpm quirk for Jet PRO (v2) + - drm/amdgpu: only check mmBIF_IOV_FUNC_IDENTIFIER on tonga/fiji + - drm/amdgpu: Avoid leaking PM domain on driver unbind (v2) + - drm/amdgpu: add new device to use atpx quirk + - arm64: __show_regs: Only resolve kernel symbols when running at EL1 + - drm/i915/breadcrumbs: Ignore unsubmitted signalers + - microblaze: fix endian handling + - Linux 4.15.7 + * [regression] Colour banding and artefacts appear system-wide on an Asus + Zenbook UX303LA with Intel HD 4400 graphics (LP: #1749420) // Bionic update + to v4.15.7 stable release (LP: #1752317) + - drm/edid: Add 6 bpc quirk for CPT panel in Asus UX303LA + * errors with sas hotplug (LP: #1752146) + - scsi: libsas: fix memory leak in sas_smp_get_phy_events() + - scsi: libsas: fix error when getting phy events + - scsi: libsas: initialize sas_phy status according to response of DISCOVER + - scsi: libsas: Use dynamic alloced work to avoid sas event lost + - scsi: libsas: shut down the PHY if events reached the threshold + - scsi: libsas: make the event threshold configurable + - scsi: libsas: Use new workqueue to run sas event and disco event + - scsi: libsas: use flush_workqueue to process disco events synchronously + - scsi: libsas: direct call probe and destruct + - scsi: libsas: notify event PORTE_BROADCAST_RCVD in sas_enable_revalidation() + * rtnetlink: enable namespace identifying properties in rtnetlink requests + (LP: #1748232) + - rtnetlink: enable IFLA_IF_NETNSID in do_setlink() + - rtnetlink: enable IFLA_IF_NETNSID for RTM_SETLINK + - rtnetlink: enable IFLA_IF_NETNSID for RTM_DELLINK + - rtnetlink: enable IFLA_IF_NETNSID for RTM_NEWLINK + - rtnetlink: remove check for IFLA_IF_NETNSID + - rtnetlink: require unique netns identifier + * Bionic update to v4.15.6 stable release (LP: #1752119) + - tun: fix tun_napi_alloc_frags() frag allocator + - ptr_ring: fail early if queue occupies more than KMALLOC_MAX_SIZE + - ptr_ring: try vmalloc() when kmalloc() fails + - selinux: ensure the context is NUL terminated in + security_context_to_sid_core() + - selinux: skip bounded transition processing if the policy isn't loaded + - media: pvrusb2: properly check endpoint types + - crypto: x86/twofish-3way - Fix %rbp usage + - staging: android: ion: Add __GFP_NOWARN for system contig heap + - staging: android: ion: Switch from WARN to pr_warn + - blk_rq_map_user_iov: fix error override + - KVM: x86: fix escape of guest dr6 to the host + - kcov: detect double association with a single task + - netfilter: x_tables: fix int overflow in xt_alloc_table_info() + - netfilter: x_tables: avoid out-of-bounds reads in + xt_request_find_{match|target} + - netfilter: ipt_CLUSTERIP: fix out-of-bounds accesses in clusterip_tg_check() + - netfilter: on sockopt() acquire sock lock only in the required scope + - netfilter: xt_cgroup: initialize info->priv in cgroup_mt_check_v1() + - netfilter: xt_RATEEST: acquire xt_rateest_mutex for hash insert + - rds: tcp: correctly sequence cleanup on netns deletion. + - rds: tcp: atomically purge entries from rds_tcp_conn_list during netns + delete + - net: avoid skb_warn_bad_offload on IS_ERR + - net_sched: gen_estimator: fix lockdep splat + - soc: qcom: rmtfs_mem: add missing MODULE_DESCRIPTION/AUTHOR/LICENSE + - ASoC: ux500: add MODULE_LICENSE tag + - video: fbdev/mmp: add MODULE_LICENSE + - ARM: 8743/1: bL_switcher: add MODULE_LICENSE tag + - arm64: dts: add #cooling-cells to CPU nodes + - dn_getsockoptdecnet: move nf_{get/set}sockopt outside sock lock + - ANDROID: binder: remove WARN() for redundant txn error + - ANDROID: binder: synchronize_rcu() when using POLLFREE. + - staging: android: ashmem: Fix a race condition in pin ioctls + - binder: check for binder_thread allocation failure in binder_poll() + - binder: replace "%p" with "%pK" + - staging: fsl-mc: fix build testing on x86 + - staging: iio: adc: ad7192: fix external frequency setting + - staging: iio: ad5933: switch buffer mode to software + - xhci: Fix NULL pointer in xhci debugfs + - xhci: Fix xhci debugfs devices node disappearance after hibernation + - xhci: xhci debugfs device nodes weren't removed after device plugged out + - xhci: fix xhci debugfs errors in xhci_stop + - usbip: keep usbip_device sockfd state in sync with tcp_socket + - crypto: s5p-sss - Fix kernel Oops in AES-ECB mode + - mei: me: add cannon point device ids + - mei: me: add cannon point device ids for 4th device + - vmalloc: fix __GFP_HIGHMEM usage for vmalloc_32 on 32b systems + - Linux 4.15.6 + * Unable to insert test_bpf module on Bionic s390x (LP: #1751234) + - bpf: fix selftests/bpf test_kmod.sh failure when CONFIG_BPF_JIT_ALWAYS_ON=y + * [Ubuntu 18.04 FEAT] OpenCAPI enabling (LP: #1746988) + - powerpc/powernv: Introduce new PHB type for opencapi links + - powerpc/powernv: Set correct configuration space size for opencapi devices + - powerpc/powernv: Add opal calls for opencapi + - powerpc/powernv: Add platform-specific services for opencapi + - powerpc/powernv: Capture actag information for the device + - ocxl: Driver code for 'generic' opencapi devices + - ocxl: Add AFU interrupt support + - ocxl: Add a kernel API for other opencapi drivers + - ocxl: Add trace points + - ocxl: Add Makefile and Kconfig + - [Config] CONFIG_OCXL=m for ppc64el + - cxl: Remove support for "Processing accelerators" class + - ocxl: Documentation + - ocxl: add MAINTAINERS entry + - cxl: Add support for ASB_Notify on POWER9 + * Request to update 18.04 kernel aacraid to upstream 4.16 version + (LP: #1746801) + - scsi: aacraid: remove unused variable managed_request_id + - scsi: aacraid: Do not attempt abort when Fw panicked + - scsi: aacraid: Do not remove offlined devices + - scsi: aacraid: Fix ioctl reset hang + - scsi: aacraid: Allow reset_host sysfs var to recover Panicked Fw + - scsi: aacraid: Refactor reset_host store function + - scsi: aacraid: Move code to wait for IO completion to shutdown func + - scsi: aacraid: Create bmic submission function from bmic identify + - scsi: aacraid: Change phy luns function to use common bmic function + - scsi: aacraid: Refactor and rename to make mirror existing changes + - scsi: aacraid: Add target setup helper function + - scsi: aacraid: Untangle targets setup from report phy luns + - scsi: aacraid: Move function around to match existing code + - scsi: aacraid: Create helper functions to get lun info + - scsi: aacraid: Save bmic phy information for each phy + - scsi: aacraid: Add helper function to set queue depth + - scsi: aacraid: Merge func to get container information + - scsi: aacraid: Process hba and container hot plug events in single function + - scsi: aacraid: Added macros to help loop through known buses and targets + - scsi: aacraid: Refactor resolve luns code and scsi functions + - scsi: aacraid: Merge adapter setup with resolve luns + - scsi: aacraid: Block concurrent hotplug event handling + - scsi: aacraid: Use hotplug handling function in place of scsi_scan_host + - scsi: aacraid: Reschedule host scan in case of failure + - scsi: aacraid: Fix hang while scanning in eh recovery + - scsi: aacraid: Skip schedule rescan in case of kdump + - scsi: aacraid: Remove unused rescan variable + - scsi: aacraid: Remove AAC_HIDE_DISK check in queue command + - scsi: aacraid: Update driver version to 50877 + - scsi: aacraid: Fix driver oops with dead battery + - scsi: aacraid: remove redundant setting of variable c + - scsi: aacraid: Get correct lun count + - scsi: aacraid: Delay for rescan worker needs to be 10 seconds + * [18.04] kpatch - Add livepatch hook support for ppc64le (LP: #1741992) + - powerpc/modules: Add REL24 relocation support of livepatch symbols + - powerpc/modules: Don't try to restore r2 after a sibling call + - powerpc/modules: Improve restore_r2() error message + * Ubuntu 18.04 - Include latest ibmvnic fixes in Ubuntu kernel (LP: #1748517) + - ibmvnic: Rename IBMVNIC_MAX_TX_QUEUES to IBMVNIC_MAX_QUEUES + - ibmvnic: Increase maximum number of RX/TX queues + - ibmvnic: Include header descriptor support for ARP packets + - ibmvnic: Don't handle RX interrupts when not up. + - ibmvnic: Wait for device response when changing MAC + - ibmvnic: fix firmware version when no firmware level has been provided by + the VIOS server + - ibmvnic: fix empty firmware version and errors cleanup + - ibmvnic: Fix rx queue cleanup for non-fatal resets + - ibmvnic: Ensure that buffers are NULL after free + - ibmvnic: queue reset when CRQ gets closed during reset + - ibmvnic: Reset long term map ID counter + - ibmvnic: Remove skb->protocol checks in ibmvnic_xmit + - ibmvnic: Wait until reset is complete to set carrier on + - ibmvnic: Fix login buffer memory leaks + - ibmvnic: Fix NAPI structures memory leak + - ibmvnic: Free RX socket buffer in case of adapter error + - ibmvnic: Clean RX pool buffers during device close + - ibmvnic: Check for NULL skb's in NAPI poll routine + - ibmvnic: Fix early release of login buffer + * Power9 DD 2.2 needs HMI fixup backport of upstream + patch(d075745d893c78730e4a3b7a60fca23c2f764081) into kernel (LP: #1751834) + - KVM: PPC: Book3S HV: Improve handling of debug-trigger HMIs on POWER9 + * Driver not found in Ubuntu kernel does not detect interface (LP: #1745927) + - d-i: add cxgb4 to nic-modules + * BCM5719/tg3 loses connectivity due to missing heartbeats between fw and + driver (LP: #1751337) + - tg3: APE heartbeat changes + * Miscellaneous Ubuntu changes + - ubuntu: vbox -- update to 5.2.6-dfsg-5 + - Revert "UBUNTU: SAUCE: Import aufs driver" + - SAUCE: Import aufs driver + - Revert "UBUNTU: SAUCE: (no-up) Convert bnx2x firmware files to ihex format" + - [Packaging] retpoline-extract: flag *0xNNN(%reg) branches + - [Config] fix up retpoline abi files + - ubuntu: vbox -- update to 5.2.8-dfsg-2 + + [ Ubuntu: 4.15.0-11.12 ] + + * linux: 4.15.0-11.12 -proposed tracker (LP: #1751285) + * Support low-pin-count devices on Hisilicon SoCs (LP: #1677319) + - [Config] CONFIG_INDIRECT_PIO=y + - SAUCE: LIB: Introduce a generic PIO mapping method + - SAUCE: PCI: Remove unused __weak attribute in pci_register_io_range() + - SAUCE: PCI: Add fwnode handler as input param of pci_register_io_range() + - SAUCE: PCI: Apply the new generic I/O management on PCI IO hosts + - SAUCE: OF: Add missing I/O range exception for indirect-IO devices + - [Config] CONFIG_HISILICON_LPC=y + - SAUCE: HISI LPC: Support the LPC host on Hip06/Hip07 with DT bindings + - SAUCE: ACPI / scan: do not enumerate Indirect IO host children + - SAUCE: HISI LPC: Add ACPI support + - SAUCE: MAINTAINERS: Add maintainer for HiSilicon LPC driver + * Bionic update to v4.15.5 stable release (LP: #1751131) + - scsi: smartpqi: allow static build ("built-in") + - IB/umad: Fix use of unprotected device pointer + - IB/qib: Fix comparison error with qperf compare/swap test + - IB/mlx4: Fix incorrectly releasing steerable UD QPs when have only ETH ports + - IB/core: Fix two kernel warnings triggered by rxe registration + - IB/core: Fix ib_wc structure size to remain in 64 bytes boundary + - IB/core: Avoid a potential OOPs for an unused optional parameter + - selftests: seccomp: fix compile error seccomp_bpf + - kselftest: fix OOM in memory compaction test + - RDMA/rxe: Fix a race condition related to the QP error state + - RDMA/rxe: Fix a race condition in rxe_requester() + - RDMA/rxe: Fix rxe_qp_cleanup() + - cpufreq: powernv: Dont assume distinct pstate values for nominal and pmin + - PM / devfreq: Propagate error from devfreq_add_device() + - mwifiex: resolve reset vs. remove()/shutdown() deadlocks + - ocfs2: try a blocking lock before return AOP_TRUNCATED_PAGE + - trace_uprobe: Display correct offset in uprobe_events + - powerpc/radix: Remove trace_tlbie call from radix__flush_tlb_all + - powerpc/kernel: Block interrupts when updating TIDR + - powerpc/vas: Don't set uses_vas for kernel windows + - powerpc/numa: Invalidate numa_cpu_lookup_table on cpu remove + - powerpc/mm: Flush radix process translations when setting MMU type + - powerpc/xive: Use hw CPU ids when configuring the CPU queues + - dma-buf: fix reservation_object_wait_timeout_rcu once more v2 + - s390: fix handling of -1 in set{,fs}[gu]id16 syscalls + - arm64: dts: msm8916: Correct ipc references for smsm + - ARM: lpc3250: fix uda1380 gpio numbers + - ARM: dts: STi: Add gpio polarity for "hdmi,hpd-gpio" property + - ARM: dts: nomadik: add interrupt-parent for clcd + - arm: dts: mt7623: fix card detection issue on bananapi-r2 + - arm: spear600: Add missing interrupt-parent of rtc + - arm: spear13xx: Fix dmas cells + - arm: spear13xx: Fix spics gpio controller's warning + - x86/gpu: add CFL to early quirks + - x86/kexec: Make kexec (mostly) work in 5-level paging mode + - x86/xen: init %gs very early to avoid page faults with stack protector + - x86: PM: Make APM idle driver initialize polling state + - mm, memory_hotplug: fix memmap initialization + - x86/entry/64: Clear extra registers beyond syscall arguments, to reduce + speculation attack surface + - x86/entry/64/compat: Clear registers for compat syscalls, to reduce + speculation attack surface + - compiler-gcc.h: Introduce __optimize function attribute + - compiler-gcc.h: __nostackprotector needs gcc-4.4 and up + - crypto: sun4i_ss_prng - fix return value of sun4i_ss_prng_generate + - crypto: sun4i_ss_prng - convert lock to _bh in sun4i_ss_prng_generate + - powerpc/mm/radix: Split linear mapping on hot-unplug + - x86/mm/pti: Fix PTI comment in entry_SYSCALL_64() + - x86/speculation: Update Speculation Control microcode blacklist + - x86/speculation: Correct Speculation Control microcode blacklist again + - Revert "x86/speculation: Simplify indirect_branch_prediction_barrier()" + - KVM/x86: Reduce retpoline performance impact in slot_handle_level_range(), + by always inlining iterator helper methods + - X86/nVMX: Properly set spec_ctrl and pred_cmd before merging MSRs + - KVM/nVMX: Set the CPU_BASED_USE_MSR_BITMAPS if we have a valid L02 MSR + bitmap + - x86/speculation: Clean up various Spectre related details + - PM / runtime: Update links_count also if !CONFIG_SRCU + - PM: cpuidle: Fix cpuidle_poll_state_init() prototype + - platform/x86: wmi: fix off-by-one write in wmi_dev_probe() + - x86/entry/64: Clear registers for exceptions/interrupts, to reduce + speculation attack surface + - x86/entry/64: Merge SAVE_C_REGS and SAVE_EXTRA_REGS, remove unused + extensions + - x86/entry/64: Merge the POP_C_REGS and POP_EXTRA_REGS macros into a single + POP_REGS macro + - x86/entry/64: Interleave XOR register clearing with PUSH instructions + - x86/entry/64: Introduce the PUSH_AND_CLEAN_REGS macro + - x86/entry/64: Use PUSH_AND_CLEAN_REGS in more cases + - x86/entry/64: Get rid of the ALLOC_PT_GPREGS_ON_STACK and + SAVE_AND_CLEAR_REGS macros + - x86/entry/64: Indent PUSH_AND_CLEAR_REGS and POP_REGS properly + - x86/entry/64: Fix paranoid_entry() frame pointer warning + - x86/entry/64: Remove the unused 'icebp' macro + - selftests/x86: Fix vDSO selftest segfault for vsyscall=none + - selftests/x86: Clean up and document sscanf() usage + - selftests/x86/pkeys: Remove unused functions + - selftests/x86: Fix build bug caused by the 5lvl test which has been moved to + the VM directory + - selftests/x86: Do not rely on "int $0x80" in test_mremap_vdso.c + - gfs2: Fixes to "Implement iomap for block_map" + - selftests/x86: Do not rely on "int $0x80" in single_step_syscall.c + - selftests/x86: Disable tests requiring 32-bit support on pure 64-bit systems + - objtool: Fix segfault in ignore_unreachable_insn() + - x86/debug, objtool: Annotate WARN()-related UD2 as reachable + - x86/debug: Use UD2 for WARN() + - x86/speculation: Fix up array_index_nospec_mask() asm constraint + - nospec: Move array_index_nospec() parameter checking into separate macro + - x86/speculation: Add dependency + - x86/mm: Rename flush_tlb_single() and flush_tlb_one() to + __flush_tlb_one_[user|kernel]() + - selftests/x86/mpx: Fix incorrect bounds with old _sigfault + - x86/cpu: Rename cpu_data.x86_mask to cpu_data.x86_stepping + - x86/spectre: Fix an error message + - x86/cpu: Change type of x86_cache_size variable to unsigned int + - x86/entry/64: Fix CR3 restore in paranoid_exit() + - drm/ttm: Don't add swapped BOs to swap-LRU list + - drm/ttm: Fix 'buf' pointer update in ttm_bo_vm_access_kmap() (v2) + - drm/qxl: unref cursor bo when finished with it + - drm/qxl: reapply cursor after resetting primary + - drm/amd/powerplay: Fix smu_table_entry.handle type + - drm/ast: Load lut in crtc_commit + - drm: Check for lessee in DROP_MASTER ioctl + - arm64: Add missing Falkor part number for branch predictor hardening + - drm/radeon: Add dpm quirk for Jet PRO (v2) + - drm/radeon: adjust tested variable + - x86/smpboot: Fix uncore_pci_remove() indexing bug when hot-removing a + physical CPU + - rtc-opal: Fix handling of firmware error codes, prevent busy loops + - mbcache: initialize entry->e_referenced in mb_cache_entry_create() + - mmc: sdhci: Implement an SDHCI-specific bounce buffer + - mmc: bcm2835: Don't overwrite max frequency unconditionally + - Revert "mmc: meson-gx: include tx phase in the tuning process" + - mlx5: fix mlx5_get_vector_affinity to start from completion vector 0 + - Revert "apple-gmux: lock iGP IO to protect from vgaarb changes" + - jbd2: fix sphinx kernel-doc build warnings + - ext4: fix a race in the ext4 shutdown path + - ext4: save error to disk in __ext4_grp_locked_error() + - ext4: correct documentation for grpid mount option + - mm: hide a #warning for COMPILE_TEST + - mm: Fix memory size alignment in devm_memremap_pages_release() + - MIPS: Fix typo BIG_ENDIAN to CPU_BIG_ENDIAN + - MIPS: CPS: Fix MIPS_ISA_LEVEL_RAW fallout + - MIPS: Fix incorrect mem=X@Y handling + - PCI: Disable MSI for HiSilicon Hip06/Hip07 only in Root Port mode + - PCI: iproc: Fix NULL pointer dereference for BCMA + - PCI: pciehp: Assume NoCompl+ for Thunderbolt ports + - PCI: keystone: Fix interrupt-controller-node lookup + - video: fbdev: atmel_lcdfb: fix display-timings lookup + - console/dummy: leave .con_font_get set to NULL + - rbd: whitelist RBD_FEATURE_OPERATIONS feature bit + - xen: Fix {set,clear}_foreign_p2m_mapping on autotranslating guests + - xenbus: track caller request id + - seq_file: fix incomplete reset on read from zero offset + - tracing: Fix parsing of globs with a wildcard at the beginning + - mpls, nospec: Sanitize array index in mpls_label_ok() + - rtlwifi: rtl8821ae: Fix connection lost problem correctly + - arm64: proc: Set PTE_NG for table entries to avoid traversing them twice + - xprtrdma: Fix calculation of ri_max_send_sges + - xprtrdma: Fix BUG after a device removal + - blk-wbt: account flush requests correctly + - target/iscsi: avoid NULL dereference in CHAP auth error path + - iscsi-target: make sure to wake up sleeping login worker + - dm: correctly handle chained bios in dec_pending() + - Btrfs: fix deadlock in run_delalloc_nocow + - Btrfs: fix crash due to not cleaning up tree log block's dirty bits + - Btrfs: fix extent state leak from tree log + - Btrfs: fix btrfs_evict_inode to handle abnormal inodes correctly + - Btrfs: fix use-after-free on root->orphan_block_rsv + - Btrfs: fix unexpected -EEXIST when creating new inode + - 9p/trans_virtio: discard zero-length reply + - mtd: nand: vf610: set correct ooblayout + - ALSA: usb-audio: Fix UAC2 get_ctl request with a RANGE attribute + - ALSA: hda/realtek - Add headset mode support for Dell laptop + - ALSA: hda/realtek - Enable Thinkpad Dock device for ALC298 platform + - ALSA: hda/realtek: PCI quirk for Fujitsu U7x7 + - ALSA: usb-audio: add implicit fb quirk for Behringer UFX1204 + - ALSA: usb: add more device quirks for USB DSD devices + - ALSA: seq: Fix racy pool initializations + - mvpp2: fix multicast address filter + - usb: Move USB_UHCI_BIG_ENDIAN_* out of USB_SUPPORT + - x86/mm, mm/hwpoison: Don't unconditionally unmap kernel 1:1 pages + - ARM: dts: exynos: fix RTC interrupt for exynos5410 + - ARM: pxa/tosa-bt: add MODULE_LICENSE tag + - arm64: dts: msm8916: Add missing #phy-cells + - ARM: dts: s5pv210: add interrupt-parent for ohci + - arm: dts: mt7623: Update ethsys binding + - arm: dts: mt2701: Add reset-cells + - ARM: dts: Delete bogus reference to the charlcd + - media: r820t: fix r820t_write_reg for KASAN + - mmc: sdhci-of-esdhc: fix eMMC couldn't work after kexec + - mmc: sdhci-of-esdhc: fix the mmc error after sleep on ls1046ardb + - Linux 4.15.5 + * retpoline abi files are empty on i386 (LP: #1751021) + - [Packaging] retpoline-extract -- instantiate retpoline files for i386 + - [Packaging] final-checks -- sanity checking ABI contents + - [Packaging] final-checks -- check for empty retpoline files + - [Config] Disable i386 retpoline check for next upload + * Bionic update to v4.15.4 stable release (LP: #1751064) + - watchdog: indydog: Add dependency on SGI_HAS_INDYDOG + - cifs: Fix missing put_xid in cifs_file_strict_mmap + - cifs: Fix autonegotiate security settings mismatch + - CIFS: zero sensitive data when freeing + - cpufreq: mediatek: add mediatek related projects into blacklist + - dmaengine: dmatest: fix container_of member in dmatest_callback + - ssb: Do not disable PCI host on non-Mips + - watchdog: gpio_wdt: set WDOG_HW_RUNNING in gpio_wdt_stop + - Revert "drm/i915: mark all device info struct with __initconst" + - sched/rt: Use container_of() to get root domain in rto_push_irq_work_func() + - sched/rt: Up the root domain ref count when passing it around via IPIs + - media: dvb-usb-v2: lmedm04: Improve logic checking of warm start + - media: dvb-usb-v2: lmedm04: move ts2020 attach to dm04_lme2510_tuner + - media: hdpvr: Fix an error handling path in hdpvr_probe() + - arm64: mm: Use non-global mappings for kernel space + - arm64: mm: Temporarily disable ARM64_SW_TTBR0_PAN + - arm64: mm: Move ASID from TTBR0 to TTBR1 + - arm64: mm: Remove pre_ttbr0_update_workaround for Falkor erratum #E1003 + - arm64: mm: Rename post_ttbr0_update_workaround + - arm64: mm: Fix and re-enable ARM64_SW_TTBR0_PAN + - arm64: mm: Allocate ASIDs in pairs + - arm64: mm: Add arm64_kernel_unmapped_at_el0 helper + - arm64: mm: Invalidate both kernel and user ASIDs when performing TLBI + - arm64: entry: Add exception trampoline page for exceptions from EL0 + - arm64: mm: Map entry trampoline into trampoline and kernel page tables + - arm64: entry: Explicitly pass exception level to kernel_ventry macro + - arm64: entry: Hook up entry trampoline to exception vectors + - arm64: erratum: Work around Falkor erratum #E1003 in trampoline code + - arm64: cpu_errata: Add Kryo to Falkor 1003 errata + - arm64: tls: Avoid unconditional zeroing of tpidrro_el0 for native tasks + - arm64: entry: Add fake CPU feature for unmapping the kernel at EL0 + - arm64: kaslr: Put kernel vectors address in separate data page + - arm64: use RET instruction for exiting the trampoline + - arm64: Kconfig: Add CONFIG_UNMAP_KERNEL_AT_EL0 + - arm64: Kconfig: Reword UNMAP_KERNEL_AT_EL0 kconfig entry + - arm64: Take into account ID_AA64PFR0_EL1.CSV3 + - arm64: capabilities: Handle duplicate entries for a capability + - arm64: mm: Introduce TTBR_ASID_MASK for getting at the ASID in the TTBR + - arm64: kpti: Fix the interaction between ASID switching and software PAN + - arm64: cputype: Add MIDR values for Cavium ThunderX2 CPUs + - arm64: kpti: Make use of nG dependent on arm64_kernel_unmapped_at_el0() + - arm64: mm: Permit transitioning from Global to Non-Global without BBM + - arm64: kpti: Add ->enable callback to remap swapper using nG mappings + - arm64: Force KPTI to be disabled on Cavium ThunderX + - arm64: entry: Reword comment about post_ttbr_update_workaround + - arm64: idmap: Use "awx" flags for .idmap.text .pushsection directives + - perf: arm_spe: Fail device probe when arm64_kernel_unmapped_at_el0() + - arm64: barrier: Add CSDB macros to control data-value prediction + - arm64: Implement array_index_mask_nospec() + - arm64: Make USER_DS an inclusive limit + - arm64: Use pointer masking to limit uaccess speculation + - arm64: entry: Ensure branch through syscall table is bounded under + speculation + - arm64: uaccess: Prevent speculative use of the current addr_limit + - arm64: uaccess: Don't bother eliding access_ok checks in __{get, put}_user + - arm64: uaccess: Mask __user pointers for __arch_{clear, copy_*}_user + - arm64: futex: Mask __user pointers prior to dereference + - arm64: cpufeature: __this_cpu_has_cap() shouldn't stop early + - arm64: Run enable method for errata work arounds on late CPUs + - arm64: cpufeature: Pass capability structure to ->enable callback + - drivers/firmware: Expose psci_get_version through psci_ops structure + - arm64: Move post_ttbr_update_workaround to C code + - arm64: Add skeleton to harden the branch predictor against aliasing attacks + - arm64: Move BP hardening to check_and_switch_context + - arm64: KVM: Use per-CPU vector when BP hardening is enabled + - arm64: entry: Apply BP hardening for high-priority synchronous exceptions + - arm64: entry: Apply BP hardening for suspicious interrupts from EL0 + - arm64: cputype: Add missing MIDR values for Cortex-A72 and Cortex-A75 + - arm64: Implement branch predictor hardening for affected Cortex-A CPUs + - arm64: Implement branch predictor hardening for Falkor + - arm64: Branch predictor hardening for Cavium ThunderX2 + - arm64: KVM: Increment PC after handling an SMC trap + - arm/arm64: KVM: Consolidate the PSCI include files + - arm/arm64: KVM: Add PSCI_VERSION helper + - arm/arm64: KVM: Add smccc accessors to PSCI code + - arm/arm64: KVM: Implement PSCI 1.0 support + - arm/arm64: KVM: Advertise SMCCC v1.1 + - arm64: KVM: Make PSCI_VERSION a fast path + - arm/arm64: KVM: Turn kvm_psci_version into a static inline + - arm64: KVM: Report SMCCC_ARCH_WORKAROUND_1 BP hardening support + - arm64: KVM: Add SMCCC_ARCH_WORKAROUND_1 fast handling + - firmware/psci: Expose PSCI conduit + - firmware/psci: Expose SMCCC version through psci_ops + - arm/arm64: smccc: Make function identifiers an unsigned quantity + - arm/arm64: smccc: Implement SMCCC v1.1 inline primitive + - arm64: Add ARM_SMCCC_ARCH_WORKAROUND_1 BP hardening support + - arm64: Kill PSCI_GET_VERSION as a variant-2 workaround + - mtd: cfi: convert inline functions to macros + - mtd: nand: brcmnand: Disable prefetch by default + - mtd: nand: Fix nand_do_read_oob() return value + - mtd: nand: sunxi: Fix ECC strength choice + - ubi: Fix race condition between ubi volume creation and udev + - ubi: fastmap: Erase outdated anchor PEBs during attach + - ubi: block: Fix locking for idr_alloc/idr_remove + - ubifs: free the encrypted symlink target + - nfs/pnfs: fix nfs_direct_req ref leak when i/o falls back to the mds + - nfs41: do not return ENOMEM on LAYOUTUNAVAILABLE + - NFS: Add a cond_resched() to nfs_commit_release_pages() + - NFS: Fix nfsstat breakage due to LOOKUPP + - NFS: commit direct writes even if they fail partially + - NFS: reject request for id_legacy key without auxdata + - NFS: Fix a race between mmap() and O_DIRECT + - nfsd: Detect unhashed stids in nfsd4_verify_open_stid() + - kernfs: fix regression in kernfs_fop_write caused by wrong type + - ahci: Annotate PCI ids for mobile Intel chipsets as such + - ahci: Add PCI ids for Intel Bay Trail, Cherry Trail and Apollo Lake AHCI + - ahci: Add Intel Cannon Lake PCH-H PCI ID + - crypto: hash - introduce crypto_hash_alg_has_setkey() + - crypto: cryptd - pass through absence of ->setkey() + - crypto: mcryptd - pass through absence of ->setkey() + - crypto: poly1305 - remove ->setkey() method + - crypto: hash - annotate algorithms taking optional key + - crypto: hash - prevent using keyed hashes without setting key + - media: v4l2-ioctl.c: use check_fmt for enum/g/s/try_fmt + - media: v4l2-ioctl.c: don't copy back the result for -ENOTTY + - media: v4l2-compat-ioctl32.c: add missing VIDIOC_PREPARE_BUF + - media: v4l2-compat-ioctl32.c: fix the indentation + - media: v4l2-compat-ioctl32.c: move 'helper' functions to + __get/put_v4l2_format32 + - media: v4l2-compat-ioctl32.c: avoid sizeof(type) + - media: v4l2-compat-ioctl32.c: copy m.userptr in put_v4l2_plane32 + - media: v4l2-compat-ioctl32.c: fix ctrl_is_pointer + - media: v4l2-compat-ioctl32.c: copy clip list in put_v4l2_window32 + - media: v4l2-compat-ioctl32.c: drop pr_info for unknown buffer type + - media: v4l2-compat-ioctl32.c: don't copy back the result for certain errors + - media: v4l2-compat-ioctl32.c: refactor compat ioctl32 logic + - media: v4l2-compat-ioctl32.c: make ctrl_is_pointer work for subdevs + - crypto: caam - fix endless loop when DECO acquire fails + - crypto: sha512-mb - initialize pending lengths correctly + - crypto: talitos - fix Kernel Oops on hashing an empty file + - arm: KVM: Fix SMCCC handling of unimplemented SMC/HVC calls + - KVM: nVMX: Fix races when sending nested PI while dest enters/leaves L2 + - KVM: nVMX: Fix bug of injecting L2 exception into L1 + - KVM: PPC: Book3S HV: Make sure we don't re-enter guest without XIVE loaded + - KVM: PPC: Book3S HV: Drop locks before reading guest memory + - KVM: arm/arm64: Handle CPU_PM_ENTER_FAILED + - KVM: PPC: Book3S PR: Fix broken select due to misspelling + - ASoC: acpi: fix machine driver selection based on quirk + - ASoC: rockchip: i2s: fix playback after runtime resume + - ASoC: skl: Fix kernel warning due to zero NHTL entry + - ASoC: compress: Correct handling of copy callback + - watchdog: imx2_wdt: restore previous timeout after suspend+resume + - afs: Add missing afs_put_cell() + - afs: Need to clear responded flag in addr cursor + - afs: Fix missing cursor clearance + - afs: Fix server list handling + - btrfs: Handle btrfs_set_extent_delalloc failure in fixup worker + - Btrfs: raid56: iterate raid56 internal bio with bio_for_each_segment_all + - kasan: don't emit builtin calls when sanitization is off + - kasan: rework Kconfig settings + - media: dvb_frontend: be sure to init dvb_frontend_handle_ioctl() return code + - media: dvb-frontends: fix i2c access helpers for KASAN + - media: dt-bindings/media/cec-gpio.txt: mention the CEC/HPD max voltages + - media: ts2020: avoid integer overflows on 32 bit machines + - media: vivid: fix module load error when enabling fb and no_error_inj=1 + - media: cxusb, dib0700: ignore XC2028_I2C_FLUSH + - fs/proc/kcore.c: use probe_kernel_read() instead of memcpy() + - kernel/async.c: revert "async: simplify lowest_in_progress()" + - kernel/relay.c: revert "kernel/relay.c: fix potential memory leak" + - pipe: actually allow root to exceed the pipe buffer limits + - pipe: fix off-by-one error when checking buffer limits + - HID: quirks: Fix keyboard + touchpad on Toshiba Click Mini not working + - Bluetooth: btsdio: Do not bind to non-removable BCM43341 + - ipmi: use dynamic memory for DMI driver override + - signal/openrisc: Fix do_unaligned_access to send the proper signal + - signal/sh: Ensure si_signo is initialized in do_divide_error + - alpha: fix crash if pthread_create races with signal delivery + - alpha: osf_sys.c: fix put_tv32 regression + - alpha: Fix mixed up args in EXC macro in futex operations + - alpha: fix reboot on Avanti platform + - alpha: fix formating of stack content + - xtensa: fix futex_atomic_cmpxchg_inatomic + - EDAC, octeon: Fix an uninitialized variable warning + - genirq: Make legacy autoprobing work again + - pinctrl: intel: Initialize GPIO properly when used through irqchip + - pinctrl: mcp23s08: fix irq setup order + - pinctrl: sx150x: Unregister the pinctrl on release + - pinctrl: sx150x: Register pinctrl before adding the gpiochip + - pinctrl: sx150x: Add a static gpio/pinctrl pin range mapping + - pktcdvd: Fix pkt_setup_dev() error path + - pktcdvd: Fix a recently introduced NULL pointer dereference + - blk-mq: quiesce queue before freeing queue + - clocksource/drivers/stm32: Fix kernel panic with multiple timers + - lib/ubsan.c: s/missaligned/misaligned/ + - lib/ubsan: add type mismatch handler for new GCC/Clang + - objtool: Fix switch-table detection + - arm64: dts: marvell: add Ethernet aliases + - drm/i915: Avoid PPS HW/SW state mismatch due to rounding + - ACPI: sbshc: remove raw pointer from printk() message + - acpi, nfit: fix register dimm error handling + - ovl: force r/o mount when index dir creation fails + - ovl: fix failure to fsync lower dir + - ovl: take mnt_want_write() for work/index dir setup + - ovl: take mnt_want_write() for removing impure xattr + - ovl: hash directory inodes for fsnotify + - mn10300/misalignment: Use SIGSEGV SEGV_MAPERR to report a failed user copy + - devpts: fix error handling in devpts_mntget() + - ftrace: Remove incorrect setting of glob search field + - scsi: core: Ensure that the SCSI error handler gets woken up + - scsi: lpfc: Fix crash after bad bar setup on driver attachment + - scsi: cxlflash: Reset command ioasc + - rcu: Export init_rcu_head() and destroy_rcu_head() to GPL modules + - Linux 4.15.4 + - updateconfigs after v4.14.4 stable updates + * Bionic update to v4.15.4 stable release (LP: #1751064) // CVE-2017-5754 and + do not need KPTI when KASLR is off. + - arm64: Turn on KPTI only on CPUs that need it + * Miscellaneous Ubuntu changes + - [Config] fix up removed retpoline call sites + + -- Marcelo Henrique Cerri Wed, 21 Mar 2018 18:25:41 -0300 + +linux-azure (4.15.0-1002.2) bionic; urgency=medium + + * linux-azure: 4.15.0-1002.2 -proposed tracker (LP: #1749771) + + * CVE-2017-5715 (Spectre v2 retpoline) + - [Config] azure: disable retpoline checks for another upload + + * [Hyper-V] Fixes for Network Direct InfiniBand/RDMA driver (LP: #1749332) + - SAUCE: vmbus-rdma: ND142: don't wait forever for disconnection from remote + connector + - SAUCE: vmbus-rdma: ND142: remove idr handle before calling ND on freeing CQ + and QP + - SAUCE: vmbus-rdma: ND142: do not crash on idr allocation failure - warn + instead + - SAUCE: vmbus-rdma: ND144: don't wait forever for disconnection from remote + connector + - SAUCE: vmbus-rdma: ND144: remove idr handle before calling ND on freeing CQ + and QP + - SAUCE: vmbus-rdma: ND144: do not crash on idr allocation failure - warn + instead + + * [Hyper-V] Drivers: hv: vmbus: Fix ring buffer signaling (LP: #1748662) + - Revert "UBUNTU: SAUCE: vmbus: fix performance regression" + - SAUCE: hv: vmbus: Fix ring buffer signaling + + * Update the source code location in the debian package for cloud kernels + (LP: #1747890) + - [Debian] Update git repository URI + + * Miscellaneous upstream changes + - [Config] updateconfigs after rebase to Ubuntu-4.15.0-10.11 + + [ Ubuntu: 4.15.0-10.11 ] + + * linux: 4.15.0-10.11 -proposed tracker (LP: #1749250) + * "swiotlb: coherent allocation failed" dmesg spam with linux 4.15.0-9.10 + (LP: #1749202) + - swiotlb: suppress warning when __GFP_NOWARN is set + - drm/ttm: specify DMA_ATTR_NO_WARN for huge page pools + * linux-tools: perf incorrectly linking libbfd (LP: #1748922) + - SAUCE: tools -- add ability to disable libbfd + - [Packaging] correct disablement of libbfd + * [Artful] Realtek ALC225: 2 secs noise when a headset plugged in + (LP: #1744058) + - ALSA: hda/realtek - update ALC225 depop optimize + * [Artful] Support headset mode for DELL WYSE (LP: #1723913) + - SAUCE: ALSA: hda/realtek - Add support headset mode for DELL WYSE + * headset mic can't be detected on two Dell machines (LP: #1748807) + - ALSA: hda/realtek - Support headset mode for ALC215/ALC285/ALC289 + - ALSA: hda - Fix headset mic detection problem for two Dell machines + * Bionic update to v4.15.3 stable release (LP: #1749191) + - ip6mr: fix stale iterator + - net: igmp: add a missing rcu locking section + - qlcnic: fix deadlock bug + - qmi_wwan: Add support for Quectel EP06 + - r8169: fix RTL8168EP take too long to complete driver initialization. + - tcp: release sk_frag.page in tcp_disconnect + - vhost_net: stop device during reset owner + - ipv6: addrconf: break critical section in addrconf_verify_rtnl() + - ipv6: change route cache aging logic + - Revert "defer call to mem_cgroup_sk_alloc()" + - net: ipv6: send unsolicited NA after DAD + - rocker: fix possible null pointer dereference in + rocker_router_fib_event_work + - tcp_bbr: fix pacing_gain to always be unity when using lt_bw + - cls_u32: add missing RCU annotation. + - ipv6: Fix SO_REUSEPORT UDP socket with implicit sk_ipv6only + - soreuseport: fix mem leak in reuseport_add_sock() + - net_sched: get rid of rcu_barrier() in tcf_block_put_ext() + - net: sched: fix use-after-free in tcf_block_put_ext + - media: mtk-vcodec: add missing MODULE_LICENSE/DESCRIPTION + - media: soc_camera: soc_scale_crop: add missing + MODULE_DESCRIPTION/AUTHOR/LICENSE + - media: tegra-cec: add missing MODULE_DESCRIPTION/AUTHOR/LICENSE + - gpio: uniphier: fix mismatch between license text and MODULE_LICENSE + - crypto: tcrypt - fix S/G table for test_aead_speed() + - Linux 4.15.3 + * bnx2x_attn_int_deasserted3:4323 MC assert! (LP: #1715519) // + CVE-2018-1000026 + - net: create skb_gso_validate_mac_len() + - bnx2x: disable GSO where gso_size is too big for hardware + * ethtool -p fails to light NIC LED on HiSilicon D05 systems (LP: #1748567) + - net: hns: add ACPI mode support for ethtool -p + * CVE-2017-5715 (Spectre v2 Intel) + - [Packaging] retpoline files must be sorted + - [Packaging] pull in retpoline files + * [Feature] PXE boot with Intel Omni-Path (LP: #1712031) + - d-i: Add hfi1 to nic-modules + * CVE-2017-5715 (Spectre v2 retpoline) + - [Packaging] retpoline -- add call site validation + - [Config] disable retpoline checks for first upload + * Do not duplicate changelog entries assigned to more than one bug or CVE + (LP: #1743383) + - [Packaging] git-ubuntu-log -- handle multiple bugs/cves better + + [ Ubuntu: 4.15.0-9.10 ] + + * linux: 4.15.0-9.10 -proposed tracker (LP: #1748244) + * Miscellaneous Ubuntu changes + - [Debian] tests -- remove gcc-multilib dependency for arm64 + + [ Ubuntu: 4.15.0-8.9 ] + + * linux: 4.15.0-8.9 -proposed tracker (LP: #1748075) + * Bionic update to v4.15.2 stable release (LP: #1748072) + - KVM: x86: Make indirect calls in emulator speculation safe + - KVM: VMX: Make indirect call speculation safe + - module/retpoline: Warn about missing retpoline in module + - x86/cpufeatures: Add CPUID_7_EDX CPUID leaf + - x86/cpufeatures: Add Intel feature bits for Speculation Control + - x86/cpufeatures: Add AMD feature bits for Speculation Control + - x86/msr: Add definitions for new speculation control MSRs + - x86/pti: Do not enable PTI on CPUs which are not vulnerable to Meltdown + - x86/cpufeature: Blacklist SPEC_CTRL/PRED_CMD on early Spectre v2 microcodes + - x86/speculation: Add basic IBPB (Indirect Branch Prediction Barrier) support + - x86/alternative: Print unadorned pointers + - x86/nospec: Fix header guards names + - x86/bugs: Drop one "mitigation" from dmesg + - x86/cpu/bugs: Make retpoline module warning conditional + - x86/cpufeatures: Clean up Spectre v2 related CPUID flags + - x86/retpoline: Simplify vmexit_fill_RSB() + - x86/speculation: Simplify indirect_branch_prediction_barrier() + - auxdisplay: img-ascii-lcd: add missing MODULE_DESCRIPTION/AUTHOR/LICENSE + - iio: adc/accel: Fix up module licenses + - pinctrl: pxa: pxa2xx: add missing MODULE_DESCRIPTION/AUTHOR/LICENSE + - ASoC: pcm512x: add missing MODULE_DESCRIPTION/AUTHOR/LICENSE + - KVM: nVMX: Eliminate vmcs02 pool + - KVM: VMX: introduce alloc_loaded_vmcs + - objtool: Improve retpoline alternative handling + - objtool: Add support for alternatives at the end of a section + - objtool: Warn on stripped section symbol + - x86/mm: Fix overlap of i386 CPU_ENTRY_AREA with FIX_BTMAP + - x86/spectre: Check CONFIG_RETPOLINE in command line parser + - x86/entry/64: Remove the SYSCALL64 fast path + - x86/entry/64: Push extra regs right away + - x86/asm: Move 'status' from thread_struct to thread_info + - Documentation: Document array_index_nospec + - array_index_nospec: Sanitize speculative array de-references + - x86: Implement array_index_mask_nospec + - x86: Introduce barrier_nospec + - x86: Introduce __uaccess_begin_nospec() and uaccess_try_nospec + - x86/usercopy: Replace open coded stac/clac with __uaccess_{begin, end} + - x86/uaccess: Use __uaccess_begin_nospec() and uaccess_try_nospec + - x86/get_user: Use pointer masking to limit speculation + - x86/syscall: Sanitize syscall table de-references under speculation + - vfs, fdtable: Prevent bounds-check bypass via speculative execution + - nl80211: Sanitize array index in parse_txq_params + - x86/spectre: Report get_user mitigation for spectre_v1 + - x86/spectre: Fix spelling mistake: "vunerable"-> "vulnerable" + - x86/cpuid: Fix up "virtual" IBRS/IBPB/STIBP feature bits on Intel + - x86/speculation: Use Indirect Branch Prediction Barrier in context switch + - x86/paravirt: Remove 'noreplace-paravirt' cmdline option + - KVM: VMX: make MSR bitmaps per-VCPU + - x86/kvm: Update spectre-v1 mitigation + - x86/retpoline: Avoid retpolines for built-in __init functions + - x86/spectre: Simplify spectre_v2 command line parsing + - x86/pti: Mark constant arrays as __initconst + - x86/speculation: Fix typo IBRS_ATT, which should be IBRS_ALL + - KVM/x86: Update the reverse_cpuid list to include CPUID_7_EDX + - KVM/x86: Add IBPB support + - KVM/VMX: Emulate MSR_IA32_ARCH_CAPABILITIES + - KVM/VMX: Allow direct access to MSR_IA32_SPEC_CTRL + - KVM/SVM: Allow direct access to MSR_IA32_SPEC_CTRL + - serial: core: mark port as initialized after successful IRQ change + - fpga: region: release of_parse_phandle nodes after use + - Linux 4.15.2 + * Add support for the NIC on SynQuacer E-Series boards (LP: #1747792) + - net: phy: core: remove now uneeded disabling of interrupts + - [Config] CONFIG_NET_VENDOR_SOCIONEXT=y & CONFIG_SNI_NETSEC=m + - net: socionext: Add Synquacer NetSec driver + - net: socionext: include linux/io.h to fix build + - net: socionext: Fix error return code in netsec_netdev_open() + * [Artful/Bionic] [Config] enable EDAC_GHES for ARM64 (LP: #1747746) + - [Config] CONFIG_EDAC_GHES=y + * support thunderx2 vendor pmu events (LP: #1747523) + - perf pmu: Pass pmu as a parameter to get_cpuid_str() + - perf tools arm64: Add support for get_cpuid_str function. + - perf pmu: Add helper function is_pmu_core to detect PMU CORE devices + - perf vendor events arm64: Add ThunderX2 implementation defined pmu core + events + - perf pmu: Add check for valid cpuid in perf_pmu__find_map() + * linux 4.14.0-7.9 ADT test failure with linux 4.14.0-7.9 (LP: #1732463) + - SAUCE: mm: disable vma based swap readahead by default + - SAUCE: mm: fix memory hotplug in ZONE_HIGHMEM + * Miscellaneous Ubuntu changes + - [Config] Fix CONFIG_PROFILE_ALL_BRANCHES annotations + + [ Ubuntu: 4.15.0-7.8 ] + + * Bionic update to v4.15.1 stable release (LP: #1747169) + - Bluetooth: hci_serdev: Init hci_uart proto_lock to avoid oops + - tools/gpio: Fix build error with musl libc + - gpio: stmpe: i2c transfer are forbiden in atomic context + - gpio: Fix kernel stack leak to userspace + - ALSA: hda - Reduce the suspend time consumption for ALC256 + - crypto: ecdh - fix typo in KPP dependency of CRYPTO_ECDH + - crypto: aesni - handle zero length dst buffer + - crypto: aesni - fix typo in generic_gcmaes_decrypt + - crypto: aesni - add wrapper for generic gcm(aes) + - crypto: aesni - Fix out-of-bounds access of the data buffer in generic-gcm- + aesni + - crypto: aesni - Fix out-of-bounds access of the AAD buffer in generic-gcm- + aesni + - crypto: inside-secure - fix hash when length is a multiple of a block + - crypto: inside-secure - avoid unmapping DMA memory that was not mapped + - crypto: sha3-generic - fixes for alignment and big endian operation + - crypto: af_alg - whitelist mask and type + - HID: wacom: EKR: ensure devres groups at higher indexes are released + - HID: wacom: Fix reporting of touch toggle (WACOM_HID_WD_MUTE_DEVICE) events + - power: reset: zx-reboot: add missing MODULE_DESCRIPTION/AUTHOR/LICENSE + - gpio: iop: add missing MODULE_DESCRIPTION/AUTHOR/LICENSE + - gpio: ath79: add missing MODULE_DESCRIPTION/LICENSE + - mtd: nand: denali_pci: add missing MODULE_DESCRIPTION/AUTHOR/LICENSE + - igb: Free IRQs when device is hotplugged + - ima/policy: fix parsing of fsuuid + - scsi: aacraid: Fix udev inquiry race condition + - scsi: aacraid: Fix hang in kdump + - scsi: storvsc: missing error code in storvsc_probe() + - staging: lustre: separate a connection destroy from free struct kib_conn + - staging: ccree: NULLify backup_info when unused + - staging: ccree: fix fips event irq handling build + - tty: fix data race between tty_init_dev and flush of buf + - usb: option: Add support for FS040U modem + - USB: serial: pl2303: new device id for Chilitag + - USB: cdc-acm: Do not log urb submission errors on disconnect + - CDC-ACM: apply quirk for card reader + - USB: serial: io_edgeport: fix possible sleep-in-atomic + - usbip: prevent bind loops on devices attached to vhci_hcd + - usbip: list: don't list devices attached to vhci_hcd + - USB: serial: simple: add Motorola Tetra driver + - usb: f_fs: Prevent gadget unbind if it is already unbound + - usb: uas: unconditionally bring back host after reset + - usb/gadget: Fix "high bandwidth" check in usb_gadget_ep_match_desc() + - ANDROID: binder: remove waitqueue when thread exits. + - android: binder: use VM_ALLOC to get vm area + - mei: me: allow runtime pm for platform with D0i3 + - serial: 8250_of: fix return code when probe function fails to get reset + - serial: 8250_uniphier: fix error return code in uniphier_uart_probe() + - serial: 8250_dw: Revert "Improve clock rate setting" + - serial: imx: Only wakeup via RTSDEN bit if the system has RTS/CTS + - spi: imx: do not access registers while clocks disabled + - iio: adc: stm32: fix scan of multiple channels with DMA + - iio: chemical: ccs811: Fix output of IIO_CONCENTRATION channels + - test_firmware: fix missing unlock on error in config_num_requests_store() + - Input: synaptics-rmi4 - unmask F03 interrupts when port is opened + - Input: synaptics-rmi4 - do not delete interrupt memory too early + - x86/efi: Clarify that reset attack mitigation needs appropriate userspace + - Linux 4.15.1 + * Dell XPS 13 9360 bluetooth (Atheros) won't connect after resume + (LP: #1744712) + - Revert "Bluetooth: btusb: fix QCA Rome suspend/resume" + - Bluetooth: btusb: Restore QCA Rome suspend/resume fix with a "rewritten" + version + * apparmor profile load in stacked policy container fails (LP: #1746463) + - SAUCE: apparmor: fix display of .ns_name for containers + + -- Marcelo Henrique Cerri Thu, 15 Feb 2018 16:19:59 -0200 + +linux-azure (4.15.0-1001.1) bionic; urgency=low + + * linux-azure: 4.15.0-1001.1 -proposed tracker (LP: #1746739) + + * ubuntu/xr-usb-serial didn't get built in zesty and artful (LP: #1733281) + - ubuntu: Only build ubuntu/xr-usb-serial when USB is enabled + + * Miscellaneous Ubuntu changes + - [Config] updateconfigs after rebase to Ubuntu-4.15.0-5.6 + + [ Ubuntu: 4.15.0-6.7 ] + + * upload urgency should be medium by default (LP: #1745338) + - [Packaging] update urgency to medium by default + * Shutdown hang on 16.04 with iscsi targets (LP: #1569925) + - scsi: libiscsi: Allow sd_shutdown on bad transport + * Miscellaneous Ubuntu changes + - SAUCE: (noup) Update spl to 0.7.5-1ubuntu1, zfs to 0.7.5-1ubuntu1 + - Revert "UBUNTU: SAUCE: mm: fix memory hotplug in ZONE_HIGHMEM" + - Revert "UBUNTU: SAUCE: mm: disable vma based swap readahead by default" + * Rebase to v4.15 + + [ Ubuntu: 4.15.0-5.6 ] + + * $(LOCAL_ENV_CC) and $(LOCAL_ENV_DISTCC_HOSTS) should be properly quoted + (LP: #1744077) + - [Debian] pass LOCAL_ENV_CC and LOCAL_ENV_DISTCC_HOSTS properly + * Missing install-time driver for QLogic QED 25/40/100Gb Ethernet NIC + (LP: #1743638) + - [d-i] Add qede to nic-modules udeb + * boot failure on AMD Raven + WesternXT (LP: #1742759) + - SAUCE: drm/amdgpu: add atpx quirk handling (v2) + * Unable to handle kernel NULL pointer dereference at isci_task_abort_task + (LP: #1726519) + - SAUCE: Revert "scsi: libsas: allow async aborts" + * Update Ubuntu-4.15.0 config to support Intel Atom devices (LP: #1739939) + - [Config] CONFIG_SERIAL_DEV_BUS=y, CONFIG_SERIAL_DEV_CTRL_TTYPORT=y + * Miscellaneous Ubuntu changes + - Rebase to v4.15-rc7 + - [Config] CONFIG_CPU_ISOLATION=y + - [Config] Update annotations following config review + - Revert "UBUNTU: SAUCE: Import aufs driver" + - SAUCE: Import aufs driver + - ubuntu: vbox -- update to 5.2.6-dfsg-1 + - ubuntu: vbox: build fixes for 4.15 + - ubuntu: vbox -- update to 5.2.6-dfsg-2 + - hio: updates for timer api changes in 4.15 + - enable hio build + - Rebase to v4.15-rc9 + * Rebase to v4.15-rc9 + + [ Ubuntu: 4.15.0-4.5 ] + + * [0cf3:e010] QCA6174A XR failed to pair with bt 4.0 device (LP: #1741166) + - SAUCE: Bluetooth: btusb: Add support for 0cf3:e010 + * External HDMI monitor failed to show screen on Lenovo X1 series + (LP: #1738523) + - SAUCE: drm/i915: Disable writing of TMDS_OE on Lenovo ThinkPad X1 series + * Miscellaneous Ubuntu changes + - [Debian] autoreconstruct - add resoration of execute permissions + * Rebase to v4.15-rc4 + + [ Ubuntu: 4.15.0-3.4 ] + + * ubuntu/xr-usb-serial didn't get built in zesty and artful (LP: #1733281) + - SAUCE: make sure ubuntu/xr-usb-serial builds for x86 + * Rebase to v4.15-rc6 + + [ Ubuntu: 4.15.0-2.3 ] + + * nvidia-graphics-drivers-384 384.90-0ubuntu6 ADT test failure with linux + 4.15.0-1.2 (LP: #1737752) + - x86/mm: Unbreak modules that use the DMA API + * Ubuntu 17.10 corrupting BIOS - many LENOVO laptops models (LP: #1734147) + - [Config] CONFIG_SPI_INTEL_SPI_*=n + * power: commonise configs IBMVETH/IBMVSCSI and ensure both are in linux-image + and udebs (LP: #1521712) + - [Config] Include ibmvnic in nic-modules + * Enable arm64 emulation of removed ARMv7 instructions (LP: #1545542) + - [Config] Enable support for emulation of deprecated ARMv8 instructions + * Miscellaneous Ubuntu changes + - SAUCE: (noup) Update spl with 4.15 compat fix (LP:#1737761) + - Enable zfs build + - [Debian] add icp to zfs-modules.ignore + * Rebase to v4.15-rc4 + + [ Ubuntu: 4.15.0-1.2 ] + + * Disabling zfs does not always disable module checks for the zfs modules + (LP: #1737176) + - [Packaging] disable zfs module checks when zfs is disabled + * Miscellaneous Ubuntu changes + - [Config] CONFIG_UNWINDER_FRAME_POINTER=y for amd64 + * Rebase to v4.15-rc3 + + [ Ubuntu: 4.15.0-0.1 ] + + * Miscellaneous Ubuntu changes + - ubuntu: vbox -- update to 5.2.2-dfsg-2 + - ubuntu: vbox: build fixes for 4.15 + - disable hio build + - [Config] Update kernel lockdown options to fix build errors + - Disable zfs build + - SAUCE: Import aufs driver + - [Config] Enable AUFS config options + * Rebase to v4.15-rc2 + + [ Ubuntu: 4.14.0-11.13 ] + + * linux: 4.14.0-11.13 -proposed tracker (LP: #1736168) + * CVE-2017-1000405 + - mm, thp: Do not make page table dirty unconditionally in touch_p[mu]d() + * linux 4.14.0-7.9 ADT test failure with linux 4.14.0-7.9 (LP: #1732463) + - SAUCE: mm: disable vma based swap readahead by default + - SAUCE: mm: fix memory hotplug in ZONE_HIGHMEM + * Bionic update to v4.14.3 stable release (LP: #1735843) + - s390: fix transactional execution control register handling + - s390/noexec: execute kexec datamover without DAT + - s390/runtime instrumention: fix possible memory corruption + - s390/guarded storage: fix possible memory corruption + - s390/disassembler: add missing end marker for e7 table + - s390/disassembler: increase show_code buffer size + - ACPI / PM: Fix acpi_pm_notifier_lock vs flush_workqueue() deadlock + - ACPI / EC: Fix regression related to triggering source of EC event handling + - cpufreq: schedutil: Reset cached_raw_freq when not in sync with next_freq + - serdev: fix registration of second slave + - sched: Make resched_cpu() unconditional + - lib/mpi: call cond_resched() from mpi_powm() loop + - x86/boot: Fix boot failure when SMP MP-table is based at 0 + - x86/decoder: Add new TEST instruction pattern + - x86/entry/64: Fix entry_SYSCALL_64_after_hwframe() IRQ tracing + - x86/entry/64: Add missing irqflags tracing to native_load_gs_index() + - perf/x86/intel: Hide TSX events when RTM is not supported + - arm64: Implement arch-specific pte_access_permitted() + - ARM: 8722/1: mm: make STRICT_KERNEL_RWX effective for LPAE + - ARM: 8721/1: mm: dump: check hardware RO bit for LPAE + - uapi: fix linux/tls.h userspace compilation error + - uapi: fix linux/rxrpc.h userspace compilation errors + - MIPS: cmpxchg64() and HAVE_VIRT_CPU_ACCOUNTING_GEN don't work for 32-bit SMP + - MIPS: ralink: Fix MT7628 pinmux + - MIPS: ralink: Fix typo in mt7628 pinmux function + - net: mvneta: fix handling of the Tx descriptor counter + - nbd: wait uninterruptible for the dead timeout + - nbd: don't start req until after the dead connection logic + - PM / OPP: Add missing of_node_put(np) + - PCI/ASPM: Account for downstream device's Port Common_Mode_Restore_Time + - PCI/ASPM: Use correct capability pointer to program LTR_L1.2_THRESHOLD + - PCI: hv: Use effective affinity mask + - PCI: Set Cavium ACS capability quirk flags to assert RR/CR/SV/UF + - PCI: Apply Cavium ThunderX ACS quirk to more Root Ports + - ALSA: hda: Add Raven PCI ID + - dm integrity: allow unaligned bv_offset + - dm cache: fix race condition in the writeback mode overwrite_bio + optimisation + - dm crypt: allow unaligned bv_offset + - dm zoned: ignore last smaller runt zone + - dm mpath: remove annoying message of 'blk_get_request() returned -11' + - dm bufio: fix integer overflow when limiting maximum cache size + - ovl: Put upperdentry if ovl_check_origin() fails + - dm: allocate struct mapped_device with kvzalloc + - sched/rt: Simplify the IPI based RT balancing logic + - MIPS: pci: Remove KERN_WARN instance inside the mt7620 driver + - dm: fix race between dm_get_from_kobject() and __dm_destroy() + - dm: discard support requires all targets in a table support discards + - MIPS: Fix odd fp register warnings with MIPS64r2 + - MIPS: Fix MIPS64 FP save/restore on 32-bit kernels + - MIPS: dts: remove bogus bcm96358nb4ser.dtb from dtb-y entry + - MIPS: Fix an n32 core file generation regset support regression + - MIPS: BCM47XX: Fix LED inversion for WRT54GSv1 + - MIPS: math-emu: Fix final emulation phase for certain instructions + - rt2x00usb: mark device removed when get ENOENT usb error + - mm/z3fold.c: use kref to prevent page free/compact race + - autofs: don't fail mount for transient error + - nilfs2: fix race condition that causes file system corruption + - fscrypt: lock mutex before checking for bounce page pool + - eCryptfs: use after free in ecryptfs_release_messaging() + - libceph: don't WARN() if user tries to add invalid key + - bcache: check ca->alloc_thread initialized before wake up it + - fs: guard_bio_eod() needs to consider partitions + - fanotify: fix fsnotify_prepare_user_wait() failure + - isofs: fix timestamps beyond 2027 + - btrfs: change how we decide to commit transactions during flushing + - f2fs: expose some sectors to user in inline data or dentry case + - NFS: Fix typo in nomigration mount option + - NFS: Revert "NFS: Move the flock open mode check into nfs_flock()" + - nfs: Fix ugly referral attributes + - NFS: Avoid RCU usage in tracepoints + - NFS: revalidate "." etc correctly on "open". + - nfsd: deal with revoked delegations appropriately + - rtlwifi: rtl8192ee: Fix memory leak when loading firmware + - rtlwifi: fix uninitialized rtlhal->last_suspend_sec time + - iwlwifi: fix firmware names for 9000 and A000 series hw + - md: fix deadlock error in recent patch. + - md: don't check MD_SB_CHANGE_CLEAN in md_allow_write + - Bluetooth: btqcomsmd: Add support for BD address setup + - md/bitmap: revert a patch + - fsnotify: clean up fsnotify_prepare/finish_user_wait() + - fsnotify: pin both inode and vfsmount mark + - fsnotify: fix pinning group in fsnotify_prepare_user_wait() + - ata: fixes kernel crash while tracing ata_eh_link_autopsy event + - ext4: fix interaction between i_size, fallocate, and delalloc after a crash + - ext4: prevent data corruption with inline data + DAX + - ext4: prevent data corruption with journaling + DAX + - ALSA: pcm: update tstamp only if audio_tstamp changed + - ALSA: usb-audio: Add sanity checks to FE parser + - ALSA: usb-audio: Fix potential out-of-bound access at parsing SU + - ALSA: usb-audio: Add sanity checks in v2 clock parsers + - ALSA: timer: Remove kernel warning at compat ioctl error paths + - ALSA: hda/realtek - Fix ALC275 no sound issue + - ALSA: hda: Fix too short HDMI/DP chmap reporting + - ALSA: hda - Fix yet remaining issue with vmaster 0dB initialization + - ALSA: hda/realtek - Fix ALC700 family no sound issue + - ASoC: sun8i-codec: Invert Master / Slave condition + - ASoC: sun8i-codec: Fix left and right channels inversion + - ASoC: sun8i-codec: Set the BCLK divider + - mfd: lpc_ich: Avoton/Rangeley uses SPI_BYT method + - fix a page leak in vhost_scsi_iov_to_sgl() error recovery + - 9p: Fix missing commas in mount options + - fs/9p: Compare qid.path in v9fs_test_inode + - net/9p: Switch to wait_event_killable() + - scsi: qla2xxx: Suppress a kernel complaint in qla_init_base_qpair() + - scsi: sd_zbc: Fix sd_zbc_read_zoned_characteristics() + - scsi: lpfc: fix pci hot plug crash in timer management routines + - scsi: lpfc: fix pci hot plug crash in list_add call + - scsi: lpfc: Fix crash receiving ELS while detaching driver + - scsi: lpfc: Fix FCP hba_wqidx assignment + - scsi: lpfc: Fix oops if nvmet_fc_register_targetport fails + - iscsi-target: Make TASK_REASSIGN use proper se_cmd->cmd_kref + - iscsi-target: Fix non-immediate TMR reference leak + - target: fix null pointer regression in core_tmr_drain_tmr_list + - target: fix buffer offset in core_scsi3_pri_read_full_status + - target: Fix QUEUE_FULL + SCSI task attribute handling + - target: Fix caw_sem leak in transport_generic_request_failure + - target: Fix quiese during transport_write_pending_qf endless loop + - target: Avoid early CMD_T_PRE_EXECUTE failures during ABORT_TASK + - mtd: Avoid probe failures when mtd->dbg.dfs_dir is invalid + - mtd: nand: Export nand_reset() symbol + - mtd: nand: atmel: Actually use the PM ops + - mtd: nand: omap2: Fix subpage write + - mtd: nand: Fix writing mtdoops to nand flash. + - mtd: nand: mtk: fix infinite ECC decode IRQ issue + - mailbox: bcm-flexrm-mailbox: Fix FlexRM ring flush sequence + - p54: don't unregister leds when they are not initialized + - block: Fix a race between blk_cleanup_queue() and timeout handling + - raid1: prevent freeze_array/wait_all_barriers deadlock + - genirq: Track whether the trigger type has been set + - irqchip/gic-v3: Fix ppi-partitions lookup + - lockd: double unregister of inetaddr notifiers + - KVM: PPC: Book3S HV: Don't call real-mode XICS hypercall handlers if not + enabled + - KVM: nVMX: set IDTR and GDTR limits when loading L1 host state + - KVM: SVM: obey guest PAT + - kvm: vmx: Reinstate support for CPUs without virtual NMI + - dax: fix PMD faults on zero-length files + - dax: fix general protection fault in dax_alloc_inode + - SUNRPC: Fix tracepoint storage issues with svc_recv and svc_rqst_status + - clk: ti: dra7-atl-clock: fix child-node lookups + - libnvdimm, dimm: clear 'locked' status on successful DIMM enable + - libnvdimm, pfn: make 'resource' attribute only readable by root + - libnvdimm, namespace: fix label initialization to use valid seq numbers + - libnvdimm, region : make 'resource' attribute only readable by root + - libnvdimm, namespace: make 'resource' attribute only readable by root + - svcrdma: Preserve CB send buffer across retransmits + - IB/srpt: Do not accept invalid initiator port names + - IB/cm: Fix memory corruption in handling CM request + - IB/hfi1: Fix incorrect available receive user context count + - IB/srp: Avoid that a cable pull can trigger a kernel crash + - IB/core: Avoid crash on pkey enforcement failed in received MADs + - IB/core: Only maintain real QPs in the security lists + - NFC: fix device-allocation error return + - spi-nor: intel-spi: Fix broken software sequencing codes + - i40e: Use smp_rmb rather than read_barrier_depends + - igb: Use smp_rmb rather than read_barrier_depends + - igbvf: Use smp_rmb rather than read_barrier_depends + - ixgbevf: Use smp_rmb rather than read_barrier_depends + - i40evf: Use smp_rmb rather than read_barrier_depends + - fm10k: Use smp_rmb rather than read_barrier_depends + - ixgbe: Fix skb list corruption on Power systems + - parisc: Fix validity check of pointer size argument in new CAS + implementation + - powerpc: Fix boot on BOOK3S_32 with CONFIG_STRICT_KERNEL_RWX + - powerpc/mm/radix: Fix crashes on Power9 DD1 with radix MMU and STRICT_RWX + - powerpc/perf/imc: Use cpu_to_node() not topology_physical_package_id() + - powerpc/signal: Properly handle return value from uprobe_deny_signal() + - powerpc/64s: Fix masking of SRR1 bits on instruction fault + - powerpc/64s/radix: Fix 128TB-512TB virtual address boundary case allocation + - powerpc/64s/hash: Fix 512T hint detection to use >= 128T + - powerpc/64s/hash: Fix 128TB-512TB virtual address boundary case allocation + - powerpc/64s/hash: Fix fork() with 512TB process address space + - powerpc/64s/hash: Allow MAP_FIXED allocations to cross 128TB boundary + - media: Don't do DMA on stack for firmware upload in the AS102 driver + - media: rc: check for integer overflow + - media: rc: nec decoder should not send both repeat and keycode + - cx231xx-cards: fix NULL-deref on missing association descriptor + - media: v4l2-ctrl: Fix flags field on Control events + - media: venus: fix wrong size on dma_free + - media: venus: venc: fix bytesused v4l2_plane field + - media: venus: reimplement decoder stop command + - ARM64: dts: meson-gxl: Add alternate ARM Trusted Firmware reserved memory + zone + - iwlwifi: fix wrong struct for a000 device + - iwlwifi: add a new a000 device + - iwlwifi: pcie: sort IDs for the 9000 series for easier comparisons + - iwlwifi: add new cards for a000 series + - iwlwifi: add new cards for 8265 series + - iwlwifi: add new cards for 8260 series + - iwlwifi: fix PCI IDs and configuration mapping for 9000 series + - iwlwifi: mvm: support version 7 of the SCAN_REQ_UMAC FW command + - e1000e: Fix error path in link detection + - e1000e: Fix return value test + - e1000e: Separate signaling for link check/link up + - e1000e: Avoid receiver overrun interrupt bursts + - e1000e: fix buffer overrun while the I219 is processing DMA transactions + - Linux 4.14.3 + * Miscellaneous Ubuntu changes + - SAUCE: s390/topology: don't inline cpu_to_node + - SAUCE: (noup) Update spl to 0.7.3-1ubuntu1, zfs to 0.7.3-1ubuntu1 + + [ Ubuntu: 4.14.0-10.12 ] + + * linux: 4.14.0-10.12 -proposed tracker (LP: #1734901) + * Miscellaneous Ubuntu changes + - SAUCE: Enable the ACPI kernel debugger and acpidbg tool + - [Packaging] Include arch/arm64/kernel/ftrace-mod.o in headers package + + [ Ubuntu: 4.14.0-9.11 ] + + * linux: 4.14.0-9.11 -proposed tracker (LP: #1734728) + * Miscellaneous Ubuntu changes + - Revert "UBUNTU: SAUCE: (noup) Update spl to 0.7.3-1ubuntu1, zfs to + 0.7.3-1ubuntu1" + + [ Ubuntu: 4.14.0-8.10 ] + + * linux: 4.14.0-8.10 -proposed tracker (LP: #1734695) + * Bionic update to v4.14.2 stable release (LP: #1734694) + - bio: ensure __bio_clone_fast copies bi_partno + - af_netlink: ensure that NLMSG_DONE never fails in dumps + - vxlan: fix the issue that neigh proxy blocks all icmpv6 packets + - net: cdc_ncm: GetNtbFormat endian fix + - fealnx: Fix building error on MIPS + - net/sctp: Always set scope_id in sctp_inet6_skb_msgname + - ima: do not update security.ima if appraisal status is not INTEGRITY_PASS + - serial: omap: Fix EFR write on RTS deassertion + - serial: 8250_fintek: Fix finding base_port with activated SuperIO + - tpm-dev-common: Reject too short writes + - rcu: Fix up pending cbs check in rcu_prepare_for_idle + - mm/pagewalk.c: report holes in hugetlb ranges + - ocfs2: fix cluster hang after a node dies + - ocfs2: should wait dio before inode lock in ocfs2_setattr() + - ipmi: fix unsigned long underflow + - mm/page_alloc.c: broken deferred calculation + - mm/page_ext.c: check if page_ext is not prepared + - coda: fix 'kernel memory exposure attempt' in fsync + - ipmi: Prefer ACPI system interfaces over SMBIOS ones + - Linux 4.14.2 + * Bionic update to v4.14.1 stable release (LP: #1734693) + - EDAC, sb_edac: Don't create a second memory controller if HA1 is not present + - dmaengine: dmatest: warn user when dma test times out + - media: imon: Fix null-ptr-deref in imon_probe + - media: dib0700: fix invalid dvb_detach argument + - crypto: dh - Fix double free of ctx->p + - crypto: dh - Don't permit 'p' to be 0 + - crypto: dh - Don't permit 'key' or 'g' size longer than 'p' + - crypto: brcm - Explicity ACK mailbox message + - USB: early: Use new USB product ID and strings for DbC device + - USB: usbfs: compute urb->actual_length for isochronous + - USB: Add delay-init quirk for Corsair K70 LUX keyboards + - usb: gadget: f_fs: Fix use-after-free in ffs_free_inst + - USB: serial: metro-usb: stop I/O after failed open + - USB: serial: Change DbC debug device binding ID + - USB: serial: qcserial: add pid/vid for Sierra Wireless EM7355 fw update + - USB: serial: garmin_gps: fix I/O after failed probe and remove + - USB: serial: garmin_gps: fix memory leak on probe errors + - selftests/x86/protection_keys: Fix syscall NR redefinition warnings + - x86/MCE/AMD: Always give panic severity for UC errors in kernel context + - platform/x86: peaq-wmi: Add DMI check before binding to the WMI interface + - platform/x86: peaq_wmi: Fix missing terminating entry for peaq_dmi_table + - HID: cp2112: add HIDRAW dependency + - HID: wacom: generic: Recognize WACOM_HID_WD_PEN as a type of pen collection + - rpmsg: glink: Add missing MODULE_LICENSE + - staging: wilc1000: Fix bssid buffer offset in Txq + - staging: sm750fb: Fix parameter mistake in poke32 + - staging: ccree: fix 64 bit scatter/gather DMA ops + - staging: greybus: spilib: fix use-after-free after deregistration + - staging: rtl8188eu: Revert 4 commits breaking ARP + - spi: fix use-after-free at controller deregistration + - sparc32: Add cmpxchg64(). + - sparc64: mmu_context: Add missing include files + - sparc64: Fix page table walk for PUD hugepages + - Linux 4.14.1 + * Set PANIC_TIMEOUT=10 on Power Systems (LP: #1730660) + - [Config]: Set PANIC_TIMEOUT=10 on ppc64el + * enable CONFIG_SND_SOC_INTEL_BYT_CHT_NOCODEC_MACH easily confuse users + (LP: #1732627) + - [Config] CONFIG_SND_SOC_INTEL_BYT_CHT_NOCODEC_MACH=n + * Miscellaneous Ubuntu changes + - SAUCE: (noup) Update spl to 0.7.3-1ubuntu1, zfs to 0.7.3-1ubuntu1 + + [ Ubuntu: 4.14.0-7.9 ] + + * Miscellaneous Ubuntu changes + - SAUCE: apparmor: add base infastructure for socket mediation + - SAUCE: apparmor: af_unix mediation + - SAUCE: LSM stacking: procfs: add smack subdir to attrs + - SAUCE: LSM stacking: LSM: manage credential security blobs + - SAUCE: LSM stacking: LSM: Manage file security blobs + - SAUCE: LSM stacking: LSM: manage task security blobs + - SAUCE: LSM stacking: LSM: Infrastructure management of the remaining blobs + - SAUCE: LSM stacking: LSM: general but not extreme module stacking + - SAUCE: LSM stacking: LSM: Complete task_alloc hook + - SAUCE: LSM stacking: fixup procsfs: add smack subdir to attrs + - SAUCE: LSM stacking: fixup initialize task->security + - SAUCE: LSM stacking: fixup: alloc_task_ctx is dead code + - SAUCE: LSM stacking: add support for stacking getpeersec_stream + - SAUCE: LSM stacking: add stacking support to apparmor network hooks + - SAUCE: LSM stacking: fixup apparmor stacking enablement + - SAUCE: LSM stacking: fixup stacking kconfig + - SAUCE: LSM stacking: allow selecting multiple LSMs using kernel boot params + - SAUCE: LSM stacking: provide prctl interface for setting context + - SAUCE: LSM stacking: inherit current display LSM + - SAUCE: LSM stacking: keep an index for each registered LSM + - SAUCE: LSM stacking: verify display LSM + - SAUCE: LSM stacking: provide a way to specify the default display lsm + - SAUCE: LSM stacking: make sure LSM blob align on 64 bit boundaries + - SAUCE: LSM stacking: add /proc//attr/display_lsm + - SAUCE: LSM stacking: add Kconfig to set default display LSM + - SAUCE: LSM stacking: add configs for LSM stacking + - SAUCE: LSM stacking: check for invalid zero sized writes + - [Config] Run updateconfigs after merging LSM stacking + - [Config] CONFIG_AMD_MEM_ENCRYPT=y + * Rebase to v4.14 + + [ Ubuntu: 4.14.0-6.8 ] + + * Miscellaneous Ubuntu changes + - SAUCE: add workarounds to enable ZFS for 4.14 + * Rebase to v4.14-rc8 + + [ Ubuntu: 4.14.0-5.7 ] + + * Miscellaneous Ubuntu changes + - [Debian] Fix invocation of dh_prep for dbgsym packages + + [ Ubuntu: 4.14.0-4.5 ] + + * Miscellaneous Ubuntu changes + - [Packaging] virtualbox -- reduce in kernel module versions + - vbox-update: Fix up KERN_DIR definitions + - ubuntu: vbox -- update to 5.2.0-dfsg-2 + - [Config] CONFIG_AMD_MEM_ENCRYPT=n + * Rebase to v4.14-rc7 + + [ Ubuntu: 4.14.0-3.4 ] + + * Touchpad and TrackPoint Dose Not Work on Lenovo X1C6 and X280 (LP: #1723986) + - SAUCE: Input: synaptics-rmi4 - RMI4 can also use SMBUS version 3 + - SAUCE: Input: synaptics - Lenovo X1 Carbon 5 should use SMBUS/RMI + - SAUCE: Input: synaptics - add Intertouch support on X1 Carbon 6th and X280 + * powerpc/64s: Add workaround for P9 vector CI load issuenext (LP: #1721070) + - powerpc/64s: Add workaround for P9 vector CI load issue + * Miscellaneous Ubuntu changes + - SAUCE: staging: vboxvideo: Fix reporting invalid suggested-offset-properties + - [Config] CONFIG_DRM_VBOXVIDEO=m + - SAUCE: Import aufs driver + - [Config] Enable aufs + - [Config] Reorder annotations file after enabling aufs + - vbox-update: Disable imported vboxvideo module + - ubuntu: vbox -- update to 5.1.30-dfsg-1 + - Enable vbox + - hio: Use correct sizes when initializing ssd_index_bits* arrays + - hio: Update io stat accounting for 4.14 + - Enable hio + * Rebase to v4.14-rc5 + * Rebase to v4.14-rc6 + + [ Ubuntu: 4.14.0-2.3 ] + + * [Bug] USB controller failed to respond on Denverton after loading + intel_th_pci module (LP: #1715833) + - SAUCE: PCI: Disable broken RTIT_BAR of Intel TH + * CONFIG_DEBUG_FS is not enabled by "make zfcpdump_defconfig" with Ubuntu + 17.10 (kernel 4.13) (LP: #1719290) + - SAUCE: s390: update zfcpdump_defconfig + * Add installer support for Broadcom BCM573xx network drivers. (LP: #1720466) + - d-i: Add bnxt_en to nic-modules. + * Miscellaneous Ubuntu changes + - [Config] Update annotations for 4.14-rc2 + * Rebase to v4.14-rc3 + * Rebase to v4.14-rc4 + + [ Ubuntu: 4.14.0-1.2 ] + + * [Bug] USB 3.1 Gen2 works as 5Gbps (LP: #1720045) + - xhci: set missing SuperSpeedPlus Link Protocol bit in roothub descriptor + * Please make linux-libc-dev Provide: aufs-dev (LP: #1716091) + - [Packaging] Add aufs-dev to the Provides: for linux-libc-dev + * Upgrade to 4.13.0-11.12 in artful amd64 VM breaks display on wayland + (LP: #1718679) + - [Config] CONFIG_DRM_VBOXVIDEO=n + * ipmmu-vmsa driver breaks arm64 boots (LP: #1718734) + - [Config] Disable CONFIG_IPMMU_VMSA on arm64 + * autopkgtest profile fails to build on armhf (LP: #1717920) + - [Packaging] autopkgtest -- disable d-i when dropping flavours + * Miscellaneous Ubuntu changes + - [Config] CONFIG_I2C_XLP9XX=m + - [Packaging] Use SRCPKGNAME rather than hard-coding the source package name + * Rebase to v4.14-rc2 + + [ Ubuntu: 4.14.0-0.1 ] + + * Miscellaneous Ubuntu changes + - Disable vbox build + - Disable hio build + - Disable zfs build + * Rebase to v4.14-rc1 + + -- Marcelo Henrique Cerri Thu, 01 Feb 2018 11:56:07 -0200 + +linux-azure (4.15.0-1000.0) bionic; urgency=low + + * Empty. + + -- Marcelo Henrique Cerri Wed, 31 Jan 2018 15:15:26 -0200 + +linux-azure (4.13.0-1008.11) xenial; urgency=low + + * linux-azure: 4.13.0-1008.11 -proposed tracker (LP: #1745669) + + * [Hyper-V] x86/hyperv: Stop suppressing X86_FEATURE_PCID (LP: #1745247) + - x86/hyperv: Stop suppressing X86_FEATURE_PCID + + * [Hyper-V] scsi: storvsc: Spread interrupts when picking a channel for I/O + requests (LP: #1745260) + - SAUCE: scsi: storvsc: Spread interrupts when picking a channel for I/O + requests + + * [Hyper-V] scsi: storvsc: Increase cmd_per_lun for higher speed devices + (LP: #1745261) + - SAUCE: scsi: storvsc: Increase cmd_per_lun for higher speed devices + - [Config] CONFIG_SCSI_MQ_DEFAULT=y + + -- Marcelo Henrique Cerri Mon, 29 Jan 2018 10:58:22 -0200 + +linux-azure (4.13.0-1007.9) xenial; urgency=low + + [ Ubuntu: 4.13.0-32.35 ] + + * CVE-2017-5715 // CVE-2017-5753 + - SAUCE: x86/entry: Fix up retpoline assembler labels + + [ Ubuntu: 4.13.0-31.34 ] + + * linux: 4.13.0-31.34 -proposed tracker (LP: #1744294) + * CVE-2017-5715 // CVE-2017-5753 + - SAUCE: s390: improve cpu alternative handling for gmb and nobp + - SAUCE: s390: print messages for gmb and nobp + - [Config] KERNEL_NOBP=y + + [ Ubuntu: 4.13.0-30.33 ] + + * linux: 4.13.0-30.33 -proposed tracker (LP: #1743412) + * Do not duplicate changelog entries assigned to more than one bug or CVE + (LP: #1743383) + - [Packaging] git-ubuntu-log -- handle multiple bugs/cves better + * Unable to handle kernel NULL pointer dereference at isci_task_abort_task + (LP: #1726519) + - Revert "scsi: libsas: allow async aborts" + * CVE-2017-5715 // CVE-2017-5753 + - SAUCE: x86/microcode: Extend post microcode reload to support IBPB feature + -- repair missmerge + - Revert "x86/svm: Add code to clear registers on VM exit" + - kvm: vmx: Scrub hardware GPRs at VM-exit + + -- Stefan Bader Thu, 25 Jan 2018 11:18:29 +0100 + +linux-azure (4.13.0-1006.8) xenial; urgency=low + + * linux-azure: 4.13.0-1006.8 -proposed tracker (LP: #1742723) + + + [ Ubuntu: 4.13.0-29.32 ] + + * linux: 4.13.0-29.32 -proposed tracker (LP: #1742722) + * CVE-2017-5754 + - Revert "x86/cpu: Implement CPU vulnerabilites sysfs functions" + - Revert "sysfs/cpu: Fix typos in vulnerability documentation" + - Revert "sysfs/cpu: Add vulnerability folder" + - Revert "UBUNTU: [Config] updateconfigs to enable + GENERIC_CPU_VULNERABILITIES" + + [ Ubuntu: 4.13.0-28.31 ] + + * CVE-2017-5753 + - SAUCE: x86/kvm: Fix stuff_RSB() for 32-bit + * CVE-2017-5715 + - SAUCE: x86/kvm: Fix stuff_RSB() for 32-bit + + [ Ubuntu: 4.13.0-27.30 ] + + * CVE-2017-5753 + - locking/barriers: introduce new memory barrier gmb() + - bpf: prevent speculative execution in eBPF interpreter + - x86, bpf, jit: prevent speculative execution when JIT is enabled + - uvcvideo: prevent speculative execution + - carl9170: prevent speculative execution + - p54: prevent speculative execution + - qla2xxx: prevent speculative execution + - cw1200: prevent speculative execution + - Thermal/int340x: prevent speculative execution + - userns: prevent speculative execution + - ipv6: prevent speculative execution + - fs: prevent speculative execution + - net: mpls: prevent speculative execution + - udf: prevent speculative execution + - x86/feature: Enable the x86 feature to control Speculation + - x86/feature: Report presence of IBPB and IBRS control + - x86/enter: MACROS to set/clear IBRS and set IBPB + - x86/enter: Use IBRS on syscall and interrupts + - x86/idle: Disable IBRS entering idle and enable it on wakeup + - x86/idle: Disable IBRS when offlining cpu and re-enable on wakeup + - x86/mm: Set IBPB upon context switch + - x86/mm: Only set IBPB when the new thread cannot ptrace current thread + - x86/entry: Stuff RSB for entry to kernel for non-SMEP platform + - x86/kvm: add MSR_IA32_SPEC_CTRL and MSR_IA32_PRED_CMD to kvm + - x86/kvm: Set IBPB when switching VM + - x86/kvm: Toggle IBRS on VM entry and exit + - x86/kvm: Pad RSB on VM transition + - x86/spec_ctrl: Add sysctl knobs to enable/disable SPEC_CTRL feature + - x86/spec_ctrl: Add lock to serialize changes to ibrs and ibpb control + - x86/syscall: Clear unused extra registers on syscall entrance + - x86/syscall: Clear unused extra registers on 32-bit compatible syscall + entrance + - x86/entry: Use retpoline for syscall's indirect calls + - x86/cpu/AMD: Add speculative control support for AMD + - x86/microcode: Extend post microcode reload to support IBPB feature + - KVM: SVM: Do not intercept new speculative control MSRs + - x86/svm: Set IBRS value on VM entry and exit + - x86/svm: Set IBPB when running a different VCPU + - KVM: x86: Add speculative control CPUID support for guests + - x86/svm: Add code to clobber the RSB on VM exit + - x86/svm: Add code to clear registers on VM exit + - x86/cpu/AMD: Remove now unused definition of MFENCE_RDTSC feature + - powerpc: add gmb barrier + - s390/spinlock: add gmb memory barrier + - x86/microcode/AMD: Add support for fam17h microcode loading + * CVE-2017-5715 + - locking/barriers: introduce new memory barrier gmb() + - bpf: prevent speculative execution in eBPF interpreter + - x86, bpf, jit: prevent speculative execution when JIT is enabled + - uvcvideo: prevent speculative execution + - carl9170: prevent speculative execution + - p54: prevent speculative execution + - qla2xxx: prevent speculative execution + - cw1200: prevent speculative execution + - Thermal/int340x: prevent speculative execution + - userns: prevent speculative execution + - ipv6: prevent speculative execution + - fs: prevent speculative execution + - net: mpls: prevent speculative execution + - udf: prevent speculative execution + - x86/feature: Enable the x86 feature to control Speculation + - x86/feature: Report presence of IBPB and IBRS control + - x86/enter: MACROS to set/clear IBRS and set IBPB + - x86/enter: Use IBRS on syscall and interrupts + - x86/idle: Disable IBRS entering idle and enable it on wakeup + - x86/idle: Disable IBRS when offlining cpu and re-enable on wakeup + - x86/mm: Set IBPB upon context switch + - x86/mm: Only set IBPB when the new thread cannot ptrace current thread + - x86/entry: Stuff RSB for entry to kernel for non-SMEP platform + - x86/kvm: add MSR_IA32_SPEC_CTRL and MSR_IA32_PRED_CMD to kvm + - x86/kvm: Set IBPB when switching VM + - x86/kvm: Toggle IBRS on VM entry and exit + - x86/kvm: Pad RSB on VM transition + - x86/spec_ctrl: Add sysctl knobs to enable/disable SPEC_CTRL feature + - x86/spec_ctrl: Add lock to serialize changes to ibrs and ibpb control + - x86/syscall: Clear unused extra registers on syscall entrance + - x86/syscall: Clear unused extra registers on 32-bit compatible syscall + entrance + - x86/entry: Use retpoline for syscall's indirect calls + - x86/cpu/AMD: Add speculative control support for AMD + - x86/microcode: Extend post microcode reload to support IBPB feature + - KVM: SVM: Do not intercept new speculative control MSRs + - x86/svm: Set IBRS value on VM entry and exit + - x86/svm: Set IBPB when running a different VCPU + - KVM: x86: Add speculative control CPUID support for guests + - x86/svm: Add code to clobber the RSB on VM exit + - x86/svm: Add code to clear registers on VM exit + - x86/cpu/AMD: Remove now unused definition of MFENCE_RDTSC feature + - powerpc: add gmb barrier + - s390/spinlock: add gmb memory barrier + - x86/microcode/AMD: Add support for fam17h microcode loading + * CVE-2017-5754 + - x86/pti: Enable PTI by default + - x86/pti: Make sure the user/kernel PTEs match + - x86/dumpstack: Fix partial register dumps + - x86/dumpstack: Print registers for first stack frame + - x86/process: Define cpu_tss_rw in same section as declaration + - x86/mm: Set MODULES_END to 0xffffffffff000000 + - x86/mm: Map cpu_entry_area at the same place on 4/5 level + - x86/kaslr: Fix the vaddr_end mess + - x86/events/intel/ds: Use the proper cache flush method for mapping ds + buffers + - x86/tlb: Drop the _GPL from the cpu_tlbstate export + - x86/alternatives: Add missing '\n' at end of ALTERNATIVE inline asm + - x86/pti: Rename BUG_CPU_INSECURE to BUG_CPU_MELTDOWN + - x86/pti: Unbreak EFI old_memmap + - x86/Documentation: Add PTI description + - x86/cpufeatures: Add X86_BUG_SPECTRE_V[12] + - sysfs/cpu: Add vulnerability folder + - x86/cpu: Implement CPU vulnerabilites sysfs functions + - x86/tboot: Unbreak tboot with PTI enabled + - x86/mm/pti: Remove dead logic in pti_user_pagetable_walk*() + - x86/cpu/AMD: Make LFENCE a serializing instruction + - x86/cpu/AMD: Use LFENCE_RDTSC in preference to MFENCE_RDTSC + - sysfs/cpu: Fix typos in vulnerability documentation + - x86/alternatives: Fix optimize_nops() checking + - x86/pti: Make unpoison of pgd for trusted boot work for real + - s390: introduce CPU alternatives + - s390: add ppa to kernel entry / exit + - SAUCE: powerpc: Secure memory rfi flush + - SAUCE: rfi-flush: Make DEBUG_RFI a CONFIG option + - SAUCE: rfi-flush: Add HRFI_TO_UNKNOWN and use it in denorm + - SAUCE: rfi-flush: kvmppc_skip_(H)interrupt returns to host kernel + - SAUCE: KVM: Revert the implementation of H_GET_CPU_CHARACTERISTICS + - SAUCE: rfi-flush: Implement congruence-first fallback flush + - SAUCE: rfi-flush: Make l1d_flush_type bit flags + - SAUCE: rfi-flush: Push the instruction selection down to the patching + routine + - SAUCE: rfi-flush: Expand the RFI section to two nop slots + - SAUCE: rfi-flush: Support more than one flush type at once + - SAUCE: rfi-flush: Allow HV to advertise multiple flush types + - SAUCE: rfi-flush: Add speculation barrier before ori 30,30,0 flush + - SAUCE: rfi-flush: Add barriers to the fallback L1D flushing + - SAUCE: rfi-flush: Rework powernv logic to be more cautious + - SAUCE: rfi-flush: Rework pseries logic to be more cautious + - SAUCE: rfi-flush: Put the fallback flushes in the real trampoline section + - SAUCE: rfi-flush: Fix the fallback flush to actually activate + - SAUCE: rfi-flush: Fix HRFI_TO_UNKNOWN + - SAUCE: rfi-flush: Refactor the macros so the nops are defined once + - SAUCE: rfi-flush: Add no_rfi_flush and nopti comandline options + - SAUCE: rfi-flush: Use rfi-flush in printks + - SAUCE: rfi-flush: Fallback flush add load dependency + - SAUCE: rfi-flush: Fix the 32-bit KVM build + - SAUCE: rfi-flush: Fix some RFI conversions in the KVM code + - SAUCE: rfi-flush: Make the fallback robust against memory corruption + - [Config] Disable CONFIG_PPC_DEBUG_RFI + - [Config] updateconfigs to enable GENERIC_CPU_VULNERABILITIES + * powerpc: flush L1D on return to use (LP: #1742772) + - SAUCE: powerpc: Secure memory rfi flush + - SAUCE: rfi-flush: Make DEBUG_RFI a CONFIG option + - SAUCE: rfi-flush: Add HRFI_TO_UNKNOWN and use it in denorm + - SAUCE: rfi-flush: kvmppc_skip_(H)interrupt returns to host kernel + - SAUCE: KVM: Revert the implementation of H_GET_CPU_CHARACTERISTICS + - SAUCE: rfi-flush: Implement congruence-first fallback flush + - SAUCE: rfi-flush: Make l1d_flush_type bit flags + - SAUCE: rfi-flush: Push the instruction selection down to the patching + routine + - SAUCE: rfi-flush: Expand the RFI section to two nop slots + - SAUCE: rfi-flush: Support more than one flush type at once + - SAUCE: rfi-flush: Allow HV to advertise multiple flush types + - SAUCE: rfi-flush: Add speculation barrier before ori 30,30,0 flush + - SAUCE: rfi-flush: Add barriers to the fallback L1D flushing + - SAUCE: rfi-flush: Rework powernv logic to be more cautious + - SAUCE: rfi-flush: Rework pseries logic to be more cautious + - SAUCE: rfi-flush: Put the fallback flushes in the real trampoline section + - SAUCE: rfi-flush: Fix the fallback flush to actually activate + - SAUCE: rfi-flush: Fix HRFI_TO_UNKNOWN + - SAUCE: rfi-flush: Refactor the macros so the nops are defined once + - SAUCE: rfi-flush: Add no_rfi_flush and nopti comandline options + - SAUCE: rfi-flush: Use rfi-flush in printks + - SAUCE: rfi-flush: Fallback flush add load dependency + - SAUCE: rfi-flush: Fix the 32-bit KVM build + - SAUCE: rfi-flush: Fix some RFI conversions in the KVM code + - SAUCE: rfi-flush: Make the fallback robust against memory corruption + - [Config] Disable CONFIG_PPC_DEBUG_RFI + * s390: add ppa to kernel entry/exit (LP: #1742771) + - s390: introduce CPU alternatives + - s390: add ppa to kernel entry / exit + + -- Marcelo Henrique Cerri Fri, 12 Jan 2018 10:09:43 -0200 + +linux-azure (4.13.0-1005.7) xenial; urgency=low + + * linux-azure: 4.13.0-1005.7 -proposed tracker (LP: #1741957) + + * CVE-2017-5754 + - Revert "UBUNTU: [Config] azure: updateconfigs to enable PTI" + - [Config] azure: Enable PTI with UNWINDER_FRAME_POINTER + + [ Ubuntu: 4.13.0-25.29 ] + + * linux: 4.13.0-25.29 -proposed tracker (LP: #1741955) + * CVE-2017-5754 + - Revert "UBUNTU: [Config] updateconfigs to enable PTI" + - [Config] Enable PTI with UNWINDER_FRAME_POINTER + + -- Marcelo Henrique Cerri Mon, 08 Jan 2018 19:15:21 -0200 + +linux-azure (4.13.0-1004.6) xenial; urgency=low + + * linux-azure: 4.13.0-1004.6 -proposed tracker (LP: #1741747) + + + [ Ubuntu: 4.13.0-24.28 ] + + * linux: 4.13.0-24.28 -proposed tracker (LP: #1741745) + * CVE-2017-5754 + - x86/cpu, x86/pti: Do not enable PTI on AMD processors + + -- Marcelo Henrique Cerri Sun, 07 Jan 2018 14:35:50 -0200 + +linux-azure (4.13.0-1003.5) xenial; urgency=low + + * linux-azure: 4.13.0-1003.5 -proposed tracker (LP: #1741557) + + * CVE-2017-5754 + - [Config] azure: updateconfigs to enable PTI + + [ Ubuntu: 4.13.0-23.27 ] + + * linux: 4.13.0-23.27 -proposed tracker (LP: #1741556) + * CVE-2017-5754 + - x86/mm: Add the 'nopcid' boot option to turn off PCID + - x86/mm: Enable CR4.PCIDE on supported systems + - x86/mm: Document how CR4.PCIDE restore works + - x86/entry/64: Refactor IRQ stacks and make them NMI-safe + - x86/entry/64: Initialize the top of the IRQ stack before switching stacks + - x86/entry/64: Add unwind hint annotations + - xen/x86: Remove SME feature in PV guests + - x86/xen/64: Rearrange the SYSCALL entries + - irq: Make the irqentry text section unconditional + - x86/xen/64: Fix the reported SS and CS in SYSCALL + - x86/paravirt/xen: Remove xen_patch() + - x86/traps: Simplify pagefault tracing logic + - x86/idt: Unify gate_struct handling for 32/64-bit kernels + - x86/asm: Replace access to desc_struct:a/b fields + - x86/xen: Get rid of paravirt op adjust_exception_frame + - x86/paravirt: Remove no longer used paravirt functions + - x86/entry: Fix idtentry unwind hint + - x86/mm/64: Initialize CR4.PCIDE early + - objtool: Add ORC unwind table generation + - objtool, x86: Add facility for asm code to provide unwind hints + - x86/unwind: Add the ORC unwinder + - x86/kconfig: Consolidate unwinders into multiple choice selection + - objtool: Upgrade libelf-devel warning to error for CONFIG_ORC_UNWINDER + - x86/ldt/64: Refresh DS and ES when modify_ldt changes an entry + - x86/mm: Give each mm TLB flush generation a unique ID + - x86/mm: Track the TLB's tlb_gen and update the flushing algorithm + - x86/mm: Rework lazy TLB mode and TLB freshness tracking + - x86/mm: Implement PCID based optimization: try to preserve old TLB entries + using PCID + - x86/mm: Factor out CR3-building code + - x86/mm/64: Stop using CR3.PCID == 0 in ASID-aware code + - x86/mm: Flush more aggressively in lazy TLB mode + - Revert "x86/mm: Stop calling leave_mm() in idle code" + - kprobes/x86: Set up frame pointer in kprobe trampoline + - x86/tracing: Introduce a static key for exception tracing + - x86/boot: Add early cmdline parsing for options with arguments + - mm, x86/mm: Fix performance regression in get_user_pages_fast() + - x86/asm: Remove unnecessary \n\t in front of CC_SET() from asm templates + - objtool: Don't report end of section error after an empty unwind hint + - x86/head: Remove confusing comment + - x86/head: Remove unused 'bad_address' code + - x86/head: Fix head ELF function annotations + - x86/boot: Annotate verify_cpu() as a callable function + - x86/xen: Fix xen head ELF annotations + - x86/xen: Add unwind hint annotations + - x86/head: Add unwind hint annotations + - ACPI / APEI: adjust a local variable type in ghes_ioremap_pfn_irq() + - x86/unwinder: Make CONFIG_UNWINDER_ORC=y the default in the 64-bit defconfig + - x86/fpu/debug: Remove unused 'x86_fpu_state' and 'x86_fpu_deactivate_state' + tracepoints + - x86/unwind: Rename unwinder config options to 'CONFIG_UNWINDER_*' + - x86/unwind: Make CONFIG_UNWINDER_ORC=y the default in kconfig for 64-bit + - bitops: Add clear/set_bit32() to linux/bitops.h + - x86/cpuid: Add generic table for CPUID dependencies + - x86/fpu: Parse clearcpuid= as early XSAVE argument + - x86/fpu: Make XSAVE check the base CPUID features before enabling + - x86/fpu: Remove the explicit clearing of XSAVE dependent features + - x86/platform/UV: Convert timers to use timer_setup() + - objtool: Print top level commands on incorrect usage + - x86/cpuid: Prevent out of bound access in do_clear_cpu_cap() + - x86/entry: Use SYSCALL_DEFINE() macros for sys_modify_ldt() + - mm/sparsemem: Allocate mem_section at runtime for CONFIG_SPARSEMEM_EXTREME=y + - x86/kasan: Use the same shadow offset for 4- and 5-level paging + - x86/xen: Provide pre-built page tables only for CONFIG_XEN_PV=y and + CONFIG_XEN_PVH=y + - x86/xen: Drop 5-level paging support code from the XEN_PV code + - ACPI / APEI: remove the unused dead-code for SEA/NMI notification type + - x86/asm: Don't use the confusing '.ifeq' directive + - x86/build: Beautify build log of syscall headers + - x86/mm/64: Rename the register_page_bootmem_memmap() 'size' parameter to + 'nr_pages' + - x86/cpufeatures: Enable new SSE/AVX/AVX512 CPU features + - x86/mm: Relocate page fault error codes to traps.h + - x86/boot: Relocate definition of the initial state of CR0 + - ptrace,x86: Make user_64bit_mode() available to 32-bit builds + - x86/entry/64: Remove the restore_c_regs_and_iret label + - x86/entry/64: Split the IRET-to-user and IRET-to-kernel paths + - x86/entry/64: Move SWAPGS into the common IRET-to-usermode path + - x86/entry/64: Simplify reg restore code in the standard IRET paths + - x86/entry/64: Shrink paranoid_exit_restore and make labels local + - x86/entry/64: Use pop instead of movq in syscall_return_via_sysret + - x86/entry/64: Merge the fast and slow SYSRET paths + - x86/entry/64: Use POP instead of MOV to restore regs on NMI return + - x86/entry/64: Remove the RESTORE_..._REGS infrastructure + - xen, x86/entry/64: Add xen NMI trap entry + - x86/entry/64: De-Xen-ify our NMI code + - x86/entry/32: Pull the MSR_IA32_SYSENTER_CS update code out of + native_load_sp0() + - x86/entry/64: Pass SP0 directly to load_sp0() + - x86/entry: Add task_top_of_stack() to find the top of a task's stack + - x86/xen/64, x86/entry/64: Clean up SP code in cpu_initialize_context() + - x86/entry/64: Stop initializing TSS.sp0 at boot + - x86/entry/64: Remove all remaining direct thread_struct::sp0 reads + - x86/entry/32: Fix cpu_current_top_of_stack initialization at boot + - x86/entry/64: Remove thread_struct::sp0 + - x86/traps: Use a new on_thread_stack() helper to clean up an assertion + - x86/entry/64: Shorten TEST instructions + - x86/cpuid: Replace set/clear_bit32() + - bitops: Revert cbe96375025e ("bitops: Add clear/set_bit32() to + linux/bitops.h") + - x86/mm: Define _PAGE_TABLE using _KERNPG_TABLE + - x86/cpufeatures: Re-tabulate the X86_FEATURE definitions + - x86/cpufeatures: Fix various details in the feature definitions + - selftests/x86/protection_keys: Fix syscall NR redefinition warnings + - selftests/x86/ldt_gdt: Robustify against set_thread_area() and LAR oddities + - selftests/x86/ldt_gdt: Add infrastructure to test set_thread_area() + - selftests/x86/ldt_gdt: Run most existing LDT test cases against the GDT as + well + - selftests/x86/ldt_get: Add a few additional tests for limits + - ACPI / APEI: Replace ioremap_page_range() with fixmap + - x86/virt, x86/platform: Merge 'struct x86_hyper' into 'struct x86_platform' + and 'struct x86_init' + - x86/virt: Add enum for hypervisors to replace x86_hyper + - drivers/misc/intel/pti: Rename the header file to free up the namespace + - x86/cpufeature: Add User-Mode Instruction Prevention definitions + - x86: Make X86_BUG_FXSAVE_LEAK detectable in CPUID on AMD + - perf/x86: Enable free running PEBS for REGS_USER/INTR + - bpf: fix build issues on um due to mising bpf_perf_event.h + - locking/barriers: Add implicit smp_read_barrier_depends() to READ_ONCE() + - locking/barriers: Convert users of lockless_dereference() to READ_ONCE() + - x86/mm/kasan: Don't use vmemmap_populate() to initialize shadow + - mm/sparsemem: Fix ARM64 boot crash when CONFIG_SPARSEMEM_EXTREME=y + - objtool: Move synced files to their original relative locations + - objtool: Move kernel headers/code sync check to a script + - objtool: Fix cross-build + - tools/headers: Sync objtool UAPI header + - objtool: Fix 64-bit build on 32-bit host + - x86/decoder: Fix and update the opcodes map + - x86/decoder: Add new TEST instruction pattern + - x86/insn-eval: Add utility functions to get segment selector + - x86/entry/64/paravirt: Use paravirt-safe macro to access eflags + - x86/unwinder/orc: Dont bail on stack overflow + - x86/unwinder: Handle stack overflows more gracefully + - x86/irq: Remove an old outdated comment about context tracking races + - x86/irq/64: Print the offending IP in the stack overflow warning + - x86/entry/64: Allocate and enable the SYSENTER stack + - x86/dumpstack: Add get_stack_info() support for the SYSENTER stack + - x86/entry/gdt: Put per-CPU GDT remaps in ascending order + - x86/mm/fixmap: Generalize the GDT fixmap mechanism, introduce struct + cpu_entry_area + - x86/kasan/64: Teach KASAN about the cpu_entry_area + - x86/entry: Fix assumptions that the HW TSS is at the beginning of cpu_tss + - x86/dumpstack: Handle stack overflow on all stacks + - x86/entry: Move SYSENTER_stack to the beginning of struct tss_struct + - x86/entry: Remap the TSS into the CPU entry area + - x86/entry/64: Separate cpu_current_top_of_stack from TSS.sp0 + - x86/espfix/64: Stop assuming that pt_regs is on the entry stack + - x86/entry/64: Use a per-CPU trampoline stack for IDT entries + - x86/entry/64: Return to userspace from the trampoline stack + - x86/entry/64: Create a per-CPU SYSCALL entry trampoline + - x86/entry/64: Move the IST stacks into struct cpu_entry_area + - x86/entry/64: Remove the SYSENTER stack canary + - x86/entry: Clean up the SYSENTER_stack code + - x86/entry/64: Make cpu_entry_area.tss read-only + - x86/paravirt: Dont patch flush_tlb_single + - x86/paravirt: Provide a way to check for hypervisors + - x86/cpufeatures: Make CPU bugs sticky + - x86/Kconfig: Limit NR_CPUS on 32-bit to a sane amount + - x86/mm/dump_pagetables: Check PAGE_PRESENT for real + - x86/mm/dump_pagetables: Make the address hints correct and readable + - x86/vsyscall/64: Explicitly set _PAGE_USER in the pagetable hierarchy + - x86/vsyscall/64: Warn and fail vsyscall emulation in NATIVE mode + - arch, mm: Allow arch_dup_mmap() to fail + - x86/ldt: Rework locking + - x86/ldt: Prevent LDT inheritance on exec + - x86/mm/64: Improve the memory map documentation + - x86/doc: Remove obvious weirdnesses from the x86 MM layout documentation + - x86/entry: Rename SYSENTER_stack to CPU_ENTRY_AREA_entry_stack + - x86/uv: Use the right TLB-flush API + - x86/microcode: Dont abuse the TLB-flush interface + - x86/mm: Use __flush_tlb_one() for kernel memory + - x86/mm: Remove superfluous barriers + - x86/mm: Add comments to clarify which TLB-flush functions are supposed to + flush what + - x86/mm: Move the CR3 construction functions to tlbflush.h + - x86/mm: Remove hard-coded ASID limit checks + - x86/mm: Put MMU to hardware ASID translation in one place + - x86/mm: Create asm/invpcid.h + - x86/cpu_entry_area: Move it to a separate unit + - x86/cpu_entry_area: Move it out of the fixmap + - init: Invoke init_espfix_bsp() from mm_init() + - x86/cpu_entry_area: Prevent wraparound in setup_cpu_entry_area_ptes() on + 32bit + - x86/cpufeatures: Add X86_BUG_CPU_INSECURE + - x86/mm/pti: Disable global pages if PAGE_TABLE_ISOLATION=y + - x86/mm/pti: Prepare the x86/entry assembly code for entry/exit CR3 switching + - x86/mm/pti: Add infrastructure for page table isolation + - x86/pti: Add the pti= cmdline option and documentation + - x86/mm/pti: Add mapping helper functions + - x86/mm/pti: Allow NX poison to be set in p4d/pgd + - x86/mm/pti: Allocate a separate user PGD + - x86/mm/pti: Populate user PGD + - x86/mm/pti: Add functions to clone kernel PMDs + - x86/mm/pti: Force entry through trampoline when PTI active + - x86/mm/pti: Share cpu_entry_area with user space page tables + - x86/entry: Align entry text section to PMD boundary + - x86/mm/pti: Share entry text PMD + - x86/mm/pti: Map ESPFIX into user space + - x86/cpu_entry_area: Add debugstore entries to cpu_entry_area + - x86/events/intel/ds: Map debug buffers in cpu_entry_area + - x86/mm/64: Make a full PGD-entry size hole in the memory map + - x86/pti: Put the LDT in its own PGD if PTI is on + - x86/pti: Map the vsyscall page if needed + - x86/mm: Allow flushing for future ASID switches + - x86/mm: Abstract switching CR3 + - x86/mm: Use/Fix PCID to optimize user/kernel switches + - x86/mm: Optimize RESTORE_CR3 + - x86/mm: Use INVPCID for __native_flush_tlb_single() + - x86/mm: Clarify the whole ASID/kernel PCID/user PCID naming + - x86/dumpstack: Indicate in Oops whether PTI is configured and enabled + - x86/mm/pti: Add Kconfig + - x86/mm/dump_pagetables: Add page table directory to the debugfs VFS + hierarchy + - x86/mm/dump_pagetables: Check user space page table for WX pages + - x86/mm/dump_pagetables: Allow dumping current pagetables + - x86/ldt: Make the LDT mapping RO + - x86/smpboot: Remove stale TLB flush invocations + - x86/mm: Remove preempt_disable/enable() from __native_flush_tlb() + - x86/ldt: Plug memory leak in error path + - x86/ldt: Make LDT pgtable free conditional + - [Config] updateconfigs to enable PTI + - kvm: x86: fix RSM when PCID is non-zero + - x86/pti: Switch to kernel CR3 at early in entry_SYSCALL_compat() + - SAUCE: only attempt to use PCID in 64 bit builds + - SAUCE: BODGE: temporarily disable some kprobe trace points which are + cratering + - s390/mm: use generic mm_hooks + - objtool: use sh to invoke sync-check.sh in the Makefile + * CVE-2017-17862 + - bpf: fix branch pruning logic + * CVE-2017-17864 + - SAUCE: bpf/verifier: Fix states_equal() comparison of pointer and UNKNOWN + * CVE-2017-16995 + - bpf: fix incorrect sign extension in check_alu_op() + * CVE-2017-17863 + - SAUCE: bpf: reject out-of-bounds stack pointer calculation + + [ Ubuntu: 4.13.0-21.24 ] + + * linux: 4.13.0-21.24 -proposed tracker (LP: #1738823) + * Ubuntu 17.10 corrupting BIOS - many LENOVO laptops models (LP: #1734147) + - [Config] CONFIG_SPI_INTEL_SPI_PLATFORM=n + + -- Marcelo Henrique Cerri Sat, 06 Jan 2018 19:32:50 -0200 + +linux-azure (4.13.0-1002.3) xenial; urgency=low + + * linux-azure: 4.13.0-1002.3 -proposed tracker (LP: #1737951) + + * [hyper-v] reloading netvsc issue on linux-azure 4.13.0-1001.1 (LP: #1735546) + - hv_netvsc: netvsc_teardown_gpadl() split + + * linux-azure-edge: [Ubuntu-azure-edge-4.13.0-1005.5]: refresh the rescind- + handling, hv_sock and vPCI drivers (LP: #1736283) + - Revert "UBUNTU: SAUCE: hv-sock: avoid double FINs if shutdown() is called" + - Revert "UBUNTU: SAUCE: hv-sock: a temporary workaround for the + pending_send_size issue" + - Revert "UBUNTU: SAUCE: hvsock: fix a race in hvs_stream_dequeue()" + - Revert "UBUNTU: SAUCE: hv_sock: add the support of auto-loading" + - Revert "UBUNTU: SAUCE: hv_sock: implements Hyper-V transport for Virtual + Sockets (AF_VSOCK)" + - Revert "UBUNTU: SAUCE: vmbus: dynamically enqueue/dequeue a channel on + vmbus_open/close" + - Revert "UBUNTU: SAUCE: vmbus: remove "goto error_clean_msglist" in + vmbus_open()" + - Revert "UBUNTU: SAUCE: vmbus: vmbus_open(): reset onchannel_callback on + error" + - Revert "UBUNTU: SAUCE: tools: hv_sock: 2 simple test cases." + - Revert "UBUNTU: SAUCE: hvsock: fix vsock_dequeue/enqueue_accept race" + - Revert "UBUNTU:SAUCE: vmbus: suppress uevents for hv_sock devices" + - Revert "UBUNTU: SAUCE: vmbus: add vmbus onoffer/onoffer_rescind sync." + - Revert "UBUNTU: SAUCE: vmbus: fix hv_percpu_channel_deq/enq race" + - SAUCE: vmbus: unregister device_obj->channels_kset + - Drivers: hv: vmbus: Fix a rescind issue + - vmbus: hvsock: add proper sync for vmbus_hvsock_device_unregister() + - hv_sock: implements Hyper-V transport for Virtual Sockets (AF_VSOCK) + - hv_sock: add locking in the open/close/release code paths + - PCI: hv: Use effective affinity mask + + [ Ubuntu: 4.13.0-19.22 ] + + * linux: 4.13.0-19.22 -proposed tracker (LP: #1736118) + * CVE-2017-1000405 + - mm, thp: Do not make page table dirty unconditionally in touch_p[mu]d() + + -- Marcelo Henrique Cerri Wed, 13 Dec 2017 09:00:12 -0200 + +linux-azure (4.13.0-1001.1) xenial; urgency=low + + * linux-azure: 4.13.0-1001.1 -proposed tracker (LP: #1733535) + + * TLB updates from 4.14 for linux-azure (LP: #1729412) + - x86/hyperv: Clear vCPU banks between calls to avoid flushing unneeded vCPUs + - x86/hyperv: Don't use percpu areas for pcpu_flush/pcpu_flush_ex structures + - x86/hyperv: Fix hypercalls with extended CPU ranges for TLB flushing + + * Update linux-azure and linux-azure-edge kernels with 4.13 patches + (LP: #1731994) + - SAUCE: Adding file to support building user level daemon + - vmbus: remove unused vmbus_sendpacket_multipagebuffer + - vmbus: remove unused vmbus_sendpacket_ctl + - SAUCE: x86/hyper-v: sync fast hypercall implementation with 4.14 + - x86/hyper-v: Use hypercall for remote TLB flush + - x86/hyper-v: Support extended CPU ranges for TLB flush hypercalls + - tracing/hyper-v: Trace hyperv_mmu_flush_tlb_others() + - netvsc: force link update after MTU change + - netvsc: need rcu_derefence when accessing internal device info + - netvsc: save pointer to parent netvsc_device in channel table + - netvsc: add rtnl annotations in rndis + - netvsc: fix ptr_ret.cocci warnings + - netvsc: remove bogus rtnl_unlock + - netvsc: Remove redundant use of ipv6_hdr() + - netvsc: fix netvsc_set_channels + - netvsc: remove no longer used max_num_rss queues + - netvsc: fix return value for set_channels + - netvsc: fix warnings reported by lockdep + - netvsc: don't print pointer value in error message + - netvsc: remove unnecessary indirection of page_buffer + - netvsc: fix error unwind on device setup failure + - netvsc: signal host if receive ring is emptied + - hyperv: netvsc: Neaten netvsc_send_pkt by using a temporary + - netvsc: check error return when restoring channels and mtu + - netvsc: no need to allocate send/receive on numa node + - netvsc: keep track of some non-fatal overload conditions + - Tools: hv: vss: Skip freezing filesystems backed by loop + - Drivers: hv: balloon: Correctly update onlined page count + - Drivers: hv: balloon: Show the max dynamic memory assigned + - Drivers: hv: balloon: Initialize last_post_time on startup + - Drivers: hv: kvp: Use MAX_ADAPTER_ID_SIZE for translating adapter id + - netvsc: don't signal host twice if empty + - SAUCE: vmbus: simplify packet iterator + - SAUCE: vmbus: fix performance regression + - netvsc: whitespace cleanup + - netvsc: remove unnecessary cast of void pointer + - netvsc: remove unnecessary check for NULL hdr + - Tools: hv: fix snprintf warning in kvp_daemon + - Tools: hv: update buffer handling in hv_fcopy_daemon + - SAUCE: vmbus: suppress uevents for hv_sock devices + - hv_netvsc: Clean up unused parameter from netvsc_get_hash() + - hv_netvsc: Clean up unused parameter from netvsc_get_rss_hash_opts() + - hv_netvsc: Add ethtool handler to set and get UDP hash levels + - SAUCE: vmbus: add per-channel sysfs info + - SAUCE: vmbus: expose per-channel interrupts and events counters + - SAUCE: vmbus: make vmbus_set_event local + - hv_netvsc: Fix rndis_filter_close error during netvsc_remove + - netvsc: cleanup datapath switch + - netvsc: allow driver to be removed even if VF is present + - hv_netvsc: Clean up an unused parameter in rndis_filter_set_rss_param() + - hv_netvsc: Simplify num_chn checking in rndis_filter_device_add() + - hv_netvsc: Simplify the limit check in netvsc_set_channels() + - hv_netvsc: Fix the channel limit in netvsc_set_rxfh() + - SAUCE: netvsc: defer initializing sub-channels + - hv_netvsc: avoid unnecessary wakeups on subchannel creation + - netvsc: pass net_device to netvsc_init_buf and netvsc_connect_vsp + + * linux-azure-edge: Rebase to Artful Ubuntu-4.13.0-17.20 (LP: #1730444) + - [Debian] Sync debian/control templates with Artful + - [Config] updateconfigs after rebase to Ubuntu-4.13.0-17.20 + + * Rebase linux-azure to 4.13 (LP: #1719610) + - SAUCE: netvsc: do not use get_outbound_net_device() + - SAUCE: vmbus-rdma: rename struct ib_ah_attr to rdma_ah_attr + - [Config] updateconfigs for 4.13 + + [ Ubuntu: 4.13.0-18.21 ] + + * linux: 4.13.0-18.21 -proposed tracker (LP: #1733530) + * NVMe timeout is too short (LP: #1729119) + - nvme: update timeout module parameter type + * CPU call trace on AMD Raven Ridge after S3 (LP: #1732894) + - x86/mce/AMD: Allow any CPU to initialize the smca_banks array + * Set PANIC_TIMEOUT=10 on Power Systems (LP: #1730660) + - [Config]: Set PANIC_TIMEOUT=10 on ppc64el + * Cannot pair BLE remote devices when using combo BT SoC (LP: #1731467) + - Bluetooth: increase timeout for le auto connections + * enable CONFIG_SND_SOC_INTEL_BYT_CHT_NOCODEC_MACH easily confuse users + (LP: #1732627) + - [Config] CONFIG_SND_SOC_INTEL_BYT_CHT_NOCODEC_MACH=n + * Plantronics P610 does not support sample rate reading (LP: #1719853) + - ALSA: usb-audio: Add sample rate quirk for Plantronics P610 + * Allow drivers to use Relaxed Ordering on capable root ports (LP: #1721365) + - Revert commit 1a8b6d76dc5b ("net:add one common config...") + - net: ixgbe: Use new PCI_DEV_FLAGS_NO_RELAXED_ORDERING flag + * support GICv3 ITS save/restore & migration (LP: #1710019) + - KVM: arm/arm64: vgic-its: Fix return value for device table restore + * Device hotplugging with MPT SAS cannot work for VMWare ESXi (LP: #1730852) + - scsi: mptsas: Fixup device hotplug for VMWare ESXi + * Artful update to 4.13.13 stable release (LP: #1732726) + - netfilter: nat: Revert "netfilter: nat: convert nat bysrc hash to + rhashtable" + - netfilter: nft_set_hash: disable fast_ops for 2-len keys + - workqueue: Fix NULL pointer dereference + - crypto: ccm - preserve the IV buffer + - crypto: x86/sha1-mb - fix panic due to unaligned access + - crypto: x86/sha256-mb - fix panic due to unaligned access + - KEYS: fix NULL pointer dereference during ASN.1 parsing [ver #2] + - ACPI / PM: Blacklist Low Power S0 Idle _DSM for Dell XPS13 9360 + - ARM: 8720/1: ensure dump_instr() checks addr_limit + - ALSA: timer: Limit max instances per timer + - ALSA: usb-audio: support new Amanero Combo384 firmware version + - ALSA: hda - fix headset mic problem for Dell machines with alc274 + - ALSA: seq: Fix OSS sysex delivery in OSS emulation + - ALSA: seq: Avoid invalid lockdep class warning + - MIPS: Fix CM region target definitions + - MIPS: BMIPS: Fix missing cbr address + - MIPS: AR7: Defer registration of GPIO + - MIPS: AR7: Ensure that serial ports are properly set up + - KVM: PPC: Book3S HV: Fix exclusion between HPT resizing and other HPT + updates + - Input: elan_i2c - add ELAN060C to the ACPI table + - rbd: use GFP_NOIO for parent stat and data requests + - drm/vmwgfx: Fix Ubuntu 17.10 Wayland black screen issue + - Revert "x86: CPU: Fix up "cpu MHz" in /proc/cpuinfo" + - can: sun4i: handle overrun in RX FIFO + - can: peak: Add support for new PCIe/M2 CAN FD interfaces + - can: ifi: Fix transmitter delay calculation + - can: c_can: don't indicate triple sampling support for D_CAN + - x86/debug: Handle warnings before the notifier chain, to fix KGDB crash + - x86/smpboot: Make optimization of delay calibration work correctly + - x86/oprofile/ppro: Do not use __this_cpu*() in preemptible context + - Linux 4.13.13 + * ELANTECH Touchpad is not detected in 'Lenovo Ideapad 320 14AST' after fresh + install (LP: #1727544) + - Input: elan_i2c - add ELAN060C to the ACPI table + * Power8 Nest PMU Instrumentation support (LP: #1481347) + - powerpc/powernv: Add IMC OPAL APIs + - powerpc/powernv: Detect and create IMC device + - powerpc/perf: Add nest IMC PMU support + - powerpc/perf: Add core IMC PMU support + - powerpc/perf: Add thread IMC PMU support + - powerpc/perf: Fix double unlock in imc_common_cpuhp_mem_free() + - powerpc/perf/imc: Fix nest events on muti socket system + - powerpc/powernv: Fix build error in opal-imc.c when NUMA=n + - powerpc/perf: Fix usage of nest_imc_refc + - powerpc/perf: Fix for core/nest imc call trace on cpuhotplug + - powerpc/perf: Add ___GFP_NOWARN flag to alloc_pages_node() + - powerpc/perf: Fix IMC initialization crash + * Artful update to 4.13.12 stable release (LP: #1731971) + - ALSA: timer: Add missing mutex lock for compat ioctls + - ALSA: seq: Fix nested rwsem annotation for lockdep splat + - cifs: check MaxPathNameComponentLength != 0 before using it + - KEYS: return full count in keyring_read() if buffer is too small + - KEYS: trusted: fix writing past end of buffer in trusted_read() + - KEYS: fix out-of-bounds read during ASN.1 parsing + - ASoC: adau17x1: Workaround for noise bug in ADC + - virtio_blk: Fix an SG_IO regression + - arm64: ensure __dump_instr() checks addr_limit + - KVM: arm64: its: Fix missing dynamic allocation check in scan_its_table + - arm/arm64: KVM: set right LR register value for 32 bit guest when inject + abort + - arm/arm64: kvm: Disable branch profiling in HYP code + - ARM: dts: mvebu: pl310-cache disable double-linefill + - ARM: 8715/1: add a private asm/unaligned.h + - drm/amdgpu: return -ENOENT from uvd 6.0 early init for harvesting + - drm/amdgpu: allow harvesting check for Polaris VCE + - userfaultfd: hugetlbfs: prevent UFFDIO_COPY to fill beyond the end of i_size + - ocfs2: fstrim: Fix start offset of first cluster group during fstrim + - fs/hugetlbfs/inode.c: fix hwpoison reserve accounting + - mm, swap: fix race between swap count continuation operations + - drm/i915: Do not rely on wm preservation for ILK watermarks + - drm/i915/edp: read edp display control registers unconditionally + - Revert "powerpc64/elfv1: Only dereference function descriptor for non-text + symbols" + - MIPS: bpf: Fix a typo in build_one_insn() + - MIPS: smp-cmp: Use right include for task_struct + - MIPS: microMIPS: Fix incorrect mask in insn_table_MM + - MIPS: SMP: Fix deadlock & online race + - Revert "x86: do not use cpufreq_quick_get() for /proc/cpuinfo "cpu MHz"" + - x86: CPU: Fix up "cpu MHz" in /proc/cpuinfo + - powerpc/kprobes: Dereference function pointers only if the address does not + belong to kernel text + - futex: Fix more put_pi_state() vs. exit_pi_state_list() races + - perf/cgroup: Fix perf cgroup hierarchy support + - x86/mcelog: Get rid of RCU remnants + - irqchip/irq-mvebu-gicp: Add missing spin_lock init + - Linux 4.13.12 + * Artful update to 4.13.11 stable release (LP: #1731961) + - workqueue: replace pool->manager_arb mutex with a flag + - nvme-fc: fix iowait hang + - ALSA: hda/realtek - Add support for ALC236/ALC3204 + - ALSA: hda - fix headset mic problem for Dell machines with alc236 + - ceph: unlock dangling spinlock in try_flush_caps() + - Fix tracing sample code warning. + - KVM: PPC: Fix oops when checking KVM_CAP_PPC_HTM + - KVM: PPC: Book3S HV: POWER9 more doorbell fixes + - KVM: PPC: Book3S: Protect kvmppc_gpa_to_ua() with SRCU + - s390/kvm: fix detection of guest machine checks + - nbd: handle interrupted sendmsg with a sndtimeo set + - spi: uapi: spidev: add missing ioctl header + - spi: a3700: Return correct value on timeout detection + - spi: bcm-qspi: Fix use after free in bcm_qspi_probe() in error path + - spi: armada-3700: Fix failing commands with quad-SPI + - ovl: add NULL check in ovl_alloc_inode + - ovl: fix EIO from lookup of non-indexed upper + - ovl: handle ENOENT on index lookup + - ovl: do not cleanup unsupported index entries + - fuse: fix READDIRPLUS skipping an entry + - xen/gntdev: avoid out of bounds access in case of partial gntdev_mmap() + - xen: fix booting ballooned down hvm guest + - cifs: Select all required crypto modules + - CIFS: Fix NULL pointer deref on SMB2_tcon() failure + - Input: elan_i2c - add ELAN0611 to the ACPI table + - Input: gtco - fix potential out-of-bound access + - Fix encryption labels and lengths for SMB3.1.1 + - SMB3: Validate negotiate request must always be signed + - assoc_array: Fix a buggy node-splitting case + - scsi: zfcp: fix erp_action use-before-initialize in REC action trace + - scsi: aacraid: Fix controller initialization failure + - scsi: qla2xxx: Initialize Work element before requesting IRQs + - scsi: sg: Re-fix off by one in sg_fill_request_table() + - x86/cpu/AMD: Apply the Erratum 688 fix when the BIOS doesn't + - drm/amd/powerplay: fix uninitialized variable + - drm/i915/perf: fix perf enable/disable ioctls with 32bits userspace + - can: sun4i: fix loopback mode + - can: kvaser_usb: Correct return value in printout + - can: kvaser_usb: Ignore CMD_FLUSH_QUEUE_REPLY messages + - cfg80211: fix connect/disconnect edge cases + - ipsec: Fix aborted xfrm policy dump crash + - regulator: fan53555: fix I2C device ids + - powerpc/xive: Fix the size of the cpumask used in xive_find_target_in_mask() + - Linux 4.13.11 + * Touchpad not detected - Lenovo ideapad 320-15IKB (LP: #1723736) + - Input: elan_i2c - add ELAN0611 to the ACPI table + * Artful update to 4.13.10 stable release (LP: #1731951) + - staging: bcm2835-audio: Fix memory corruption + - USB: devio: Revert "USB: devio: Don't corrupt user memory" + - USB: core: fix out-of-bounds access bug in usb_get_bos_descriptor() + - USB: serial: metro-usb: add MS7820 device id + - usb: cdc_acm: Add quirk for Elatec TWN3 + - usb: quirks: add quirk for WORLDE MINI MIDI keyboard + - usb: hub: Allow reset retry for USB2 devices on connect bounce + - ALSA: usb-audio: Add native DSD support for Pro-Ject Pre Box S2 Digital + - can: gs_usb: fix busy loop if no more TX context is available + - scsi: qla2xxx: Fix uninitialized work element + - nbd: don't set the device size until we're connected + - s390/cputime: fix guest/irq/softirq times after CPU hotplug + - parisc: Fix double-word compare and exchange in LWS code on 32-bit kernels + - parisc: Fix detection of nonsynchronous cr16 cycle counters + - iio: dummy: events: Add missing break + - usb: musb: sunxi: Explicitly release USB PHY on exit + - USB: musb: fix session-bit runtime-PM quirk + - USB: musb: fix late external abort on suspend + - usb: musb: musb_cppi41: Fix the address of teardown and autoreq registers + - usb: musb: musb_cppi41: Fix cppi41_set_dma_mode() for DA8xx + - usb: musb: musb_cppi41: Configure the number of channels for DA8xx + - usb: musb: Check for host-mode using is_host_active() on reset interrupt + - xhci: Identify USB 3.1 capable hosts by their port protocol capability + - xhci: Cleanup current_cmd in xhci_cleanup_command_queue() + - usb: xhci: Reset halted endpoint if trb is noop + - usb: xhci: Handle error condition in xhci_stop_device() + - can: esd_usb2: Fix can_dlc value for received RTR, frames + - can: af_can: can_pernet_init(): add missing error handling for kzalloc + returning NULL + - can: flexcan: fix state transition regression + - can: flexcan: rename legacy error state quirk + - can: flexcan: implement error passive state quirk + - can: flexcan: fix i.MX6 state transition issue + - can: flexcan: fix i.MX28 state transition issue + - can: flexcan: fix p1010 state transition issue + - KEYS: encrypted: fix dereference of NULL user_key_payload + - mmc: sdhci-pci: Fix default d3_retune for Intel host controllers + - drm/i915: Use bdw_ddi_translations_fdi for Broadwell + - drm/nouveau/kms/nv50: fix oops during DP IRQ handling on non-MST boards + - drm/nouveau/bsp/g92: disable by default + - drm/nouveau/mmu: flush tlbs before deleting page tables + - media: s5p-cec: add NACK detection support + - media: cec: Respond to unregistered initiators, when applicable + - media: dvb: i2c transfers over usb cannot be done from stack + - tracing/samples: Fix creation and deletion of simple_thread_fn creation + - ALSA: seq: Enable 'use' locking in all configurations + - ALSA: hda: Remove superfluous '-' added by printk conversion + - ALSA: hda: Abort capability probe at invalid register read + - i2c: ismt: Separate I2C block read from SMBus block read + - i2c: piix4: Fix SMBus port selection for AMD Family 17h chips + - Revert "tools/power turbostat: stop migrating, unless '-m'" + - Input: stmfts - fix setting ABS_MT_POSITION_* maximum size + - brcmfmac: Add check for short event packets + - brcmsmac: make some local variables 'static const' to reduce stack size + - ARM: dts: sun6i: Fix endpoint IDs in second display pipeline + - bus: mbus: fix window size calculation for 4GB windows + - clockevents/drivers/cs5535: Improve resilience to spurious interrupts + - rtlwifi: rtl8821ae: Fix connection lost problem + - x86/microcode/intel: Disable late loading on model 79 + - lib/digsig: fix dereference of NULL user_key_payload + - fscrypt: fix dereference of NULL user_key_payload + - ecryptfs: fix dereference of NULL user_key_payload + - KEYS: Fix race between updating and finding a negative key + - FS-Cache: fix dereference of NULL user_key_payload + - KEYS: don't let add_key() update an uninstantiated key + - pkcs7: Prevent NULL pointer dereference, since sinfo is not always set. + - arm64: dts: rockchip: correct vqmmc voltage for rk3399 platforms + - ALSA: hda - Fix incorrect TLV callback check introduced during set_fs() + removal + - iomap_dio_rw: Allocate AIO completion queue before submitting dio + - xfs: don't unconditionally clear the reflink flag on zero-block files + - xfs: evict CoW fork extents when performing finsert/fcollapse + - fs/xfs: Use %pS printk format for direct addresses + - xfs: report zeroed or not correctly in xfs_zero_range() + - xfs: update i_size after unwritten conversion in dio completion + - xfs: perag initialization should only touch m_ag_max_usable for AG 0 + - xfs: Capture state of the right inode in xfs_iflush_done + - xfs: always swap the cow forks when swapping extents + - xfs: handle racy AIO in xfs_reflink_end_cow + - xfs: Don't log uninitialised fields in inode structures + - xfs: move more RT specific code under CONFIG_XFS_RT + - xfs: don't change inode mode if ACL update fails + - xfs: reinit btree pointer on attr tree inactivation walk + - xfs: handle error if xfs_btree_get_bufs fails + - xfs: cancel dirty pages on invalidation + - xfs: trim writepage mapping to within eof + - xfs: move two more RT specific functions into CONFIG_XFS_RT + - Linux 4.13.10 + * Artful update to 4.13.9 stable release (LP: #1731926) + - perf pmu: Unbreak perf record for arm/arm64 with events with explicit PMU + - mm: page_vma_mapped: ensure pmd is loaded with READ_ONCE outside of lock + - HID: hid-elecom: extend to fix descriptor for HUGE trackball + - Drivers: hv: vmbus: Fix rescind handling issues + - Drivers: hv: vmbus: Fix bugs in rescind handling + - vmbus: simplify hv_ringbuffer_read + - vmbus: refactor hv_signal_on_read + - vmbus: eliminate duplicate cached index + - vmbus: more host signalling avoidance + - Linux 4.13.9 + + [ Ubuntu: 4.13.0-17.20 ] + + * linux: 4.13.0-17.20 -proposed tracker (LP: #1728927) + * thunderx2 ahci errata workaround needs additional delays (LP: #1724117) + - SAUCE: ahci: thunderx2: stop engine fix update + * usb 3-1: 2:1: cannot get freq at ep 0x1 (LP: #1708499) + - ALSA: usb-audio: Add sample rate quirk for Plantronics C310/C520-M + * Plantronics Blackwire C520-M - Cannot get freq at ep 0x1, 0x81 + (LP: #1709282) + - ALSA: usb-audio: Add sample rate quirk for Plantronics C310/C520-M + * TSC_DEADLINE incorrectly disabled inside virtual guests (LP: #1724912) + - x86/apic: Silence "FW_BUG TSC_DEADLINE disabled due to Errata" on CPUs + without the feature + - x86/apic: Silence "FW_BUG TSC_DEADLINE disabled due to Errata" on + hypervisors + * x86/apic: Update TSC_DEADLINE quirk with additional SKX stepping + (LP: #1724612) + - x86/apic: Update TSC_DEADLINE quirk with additional SKX stepping + * [Artful] Add support for Dell/Wyse 3040 audio codec (LP: #1723916) + - SAUCE: ASoC: rt5670: Add support for Wyse 3040 + * [Artful] Some Dell Monitors Doesn't Work Well with Dell/Wyse 3040 + (LP: #1723915) + - SAUCE: drm/i915: Workaround for DP DPMS D3 on Dell monitor + * [Artful] Support headset mode for DELL WYSE (LP: #1723913) + - SAUCE: ALSA: hda/realtek - Add support headset mode for DELL WYSE + * Touchpad and TrackPoint Dose Not Work on Lenovo X1C6 and X280 (LP: #1723986) + - SAUCE: Input: synaptics-rmi4 - RMI4 can also use SMBUS version 3 + - SAUCE: Input: synaptics - Lenovo X1 Carbon 5 should use SMBUS/RMI + - SAUCE: Input: synaptics - add Intertouch support on X1 Carbon 6th and X280 + * Artful update to v4.13.8 stable release (LP: #1724669) + - USB: dummy-hcd: Fix deadlock caused by disconnect detection + - MIPS: math-emu: Remove pr_err() calls from fpu_emu() + - MIPS: bpf: Fix uninitialised target compiler error + - mei: always use domain runtime pm callbacks. + - dmaengine: edma: Align the memcpy acnt array size with the transfer + - dmaengine: ti-dma-crossbar: Fix possible race condition with dma_inuse + - NFS: Fix uninitialized rpc_wait_queue + - nfs/filelayout: fix oops when freeing filelayout segment + - HID: usbhid: fix out-of-bounds bug + - crypto: skcipher - Fix crash on zero-length input + - crypto: shash - Fix zero-length shash ahash digest crash + - KVM: MMU: always terminate page walks at level 1 + - KVM: nVMX: fix guest CR4 loading when emulating L2 to L1 exit + - usb: renesas_usbhs: Fix DMAC sequence for receiving zero-length packet + - pinctrl/amd: Fix build dependency on pinmux code + - iommu/amd: Finish TLB flush in amd_iommu_unmap() + - device property: Track owner device of device property + - Revert "vmalloc: back off when the current task is killed" + - fs/mpage.c: fix mpage_writepage() for pages with buffers + - ALSA: usb-audio: Kill stray URB at exiting + - ALSA: seq: Fix use-after-free at creating a port + - ALSA: seq: Fix copy_from_user() call inside lock + - ALSA: caiaq: Fix stray URB at probe error path + - ALSA: line6: Fix NULL dereference at podhd_disconnect() + - ALSA: line6: Fix missing initialization before error path + - ALSA: line6: Fix leftover URB at error-path during probe + - drm/atomic: Unref duplicated drm_atomic_state in drm_atomic_helper_resume() + - drm/i915/edp: Get the Panel Power Off timestamp after panel is off + - drm/i915: Read timings from the correct transcoder in intel_crtc_mode_get() + - drm/i915/bios: parse DDI ports also for CHV for HDMI DDC pin and DP AUX + channel + - drm/i915: Use crtc_state_is_legacy_gamma in intel_color_check + - usb: gadget: configfs: Fix memory leak of interface directory data + - usb: gadget: composite: Fix use-after-free in + usb_composite_overwrite_options + - PCI: aardvark: Move to struct pci_host_bridge IRQ mapping functions + - Revert "PCI: tegra: Do not allocate MSI target memory" + - direct-io: Prevent NULL pointer access in submit_page_section + - fix unbalanced page refcounting in bio_map_user_iov + - more bio_map_user_iov() leak fixes + - bio_copy_user_iov(): don't ignore ->iov_offset + - perf script: Add missing separator for "-F ip,brstack" (and brstackoff) + - genirq/cpuhotplug: Enforce affinity setting on startup of managed irqs + - genirq/cpuhotplug: Add sanity check for effective affinity mask + - USB: serial: ftdi_sio: add id for Cypress WICED dev board + - USB: serial: cp210x: fix partnum regression + - USB: serial: cp210x: add support for ELV TFD500 + - USB: serial: option: add support for TP-Link LTE module + - USB: serial: qcserial: add Dell DW5818, DW5819 + - USB: serial: console: fix use-after-free on disconnect + - USB: serial: console: fix use-after-free after failed setup + - RAS/CEC: Use the right length for "cec_disable" + - x86/microcode: Do the family check first + - x86/alternatives: Fix alt_max_short macro to really be a max() + - KVM: nVMX: update last_nonleaf_level when initializing nested EPT + - Linux 4.13.8 + * Artful update to v4.13.7 stable release (LP: #1724668) + - watchdog: Revert "iTCO_wdt: all versions count down twice" + - Linux 4.13.7 + * libvirt - vnc port selection regression with newer kernels (LP: #1722702) + - net: set tb->fast_sk_family + - net: use inet6_rcv_saddr to compare sockets + - inet: fix improper empty comparison + * powerpc/64s: Add workaround for P9 vector CI load issue (LP: #1721070) + - powerpc/mce: Move 64-bit machine check code into mce.c + - powerpc/64s: Add workaround for P9 vector CI load issue + * Artful update to v4.13.6 stable release (LP: #1723145) + - imx-media-of: avoid uninitialized variable warning + - usb: dwc3: ep0: fix DMA starvation by assigning req->trb on ep0 + - mlxsw: spectrum: Fix EEPROM access in case of SFP/SFP+ + - net: bonding: Fix transmit load balancing in balance-alb mode if specified + by sysfs + - openvswitch: Fix an error handling path in 'ovs_nla_init_match_and_action()' + - mlxsw: spectrum: Prevent mirred-related crash on removal + - net: bonding: fix tlb_dynamic_lb default value + - net_sched: gen_estimator: fix scaling error in bytes/packets samples + - net: sched: fix use-after-free in tcf_action_destroy and tcf_del_walker + - sctp: potential read out of bounds in sctp_ulpevent_type_enabled() + - tcp: update skb->skb_mstamp more carefully + - bpf/verifier: reject BPF_ALU64|BPF_END + - tcp: fix data delivery rate + - udpv6: Fix the checksum computation when HW checksum does not apply + - ip6_gre: skb_push ipv6hdr before packing the header in ip6gre_header + - net: phy: Fix mask value write on gmii2rgmii converter speed register + - ip6_tunnel: do not allow loading ip6_tunnel if ipv6 is disabled in cmdline + - net/sched: cls_matchall: fix crash when used with classful qdisc + - 8139too: revisit napi_complete_done() usage + - bpf: do not disable/enable BH in bpf_map_free_id() + - tcp: fastopen: fix on syn-data transmit failure + - net: emac: Fix napi poll list corruption + - net: ipv6: fix regression of no RTM_DELADDR sent after DAD failure + - packet: hold bind lock when rebinding to fanout hook + - bpf: one perf event close won't free bpf program attached by another perf + event + - net: change skb->mac_header when Generic XDP calls adjust_head + - isdn/i4l: fetch the ppp_write buffer in one shot + - net_sched: always reset qdisc backlog in qdisc_reset() + - net: stmmac: Cocci spatch "of_table" + - net: qcom/emac: specify the correct size when mapping a DMA buffer + - vti: fix use after free in vti_tunnel_xmit/vti6_tnl_xmit + - l2tp: fix race condition in l2tp_tunnel_delete + - tun: bail out from tun_get_user() if the skb is empty + - net: dsa: mv88e6xxx: Allow dsa and cpu ports in multiple vlans + - net: dsa: Fix network device registration order + - packet: in packet_do_bind, test fanout with bind_lock held + - packet: only test po->has_vnet_hdr once in packet_snd + - net: dsa: mv88e6xxx: lock mutex when freeing IRQs + - net: Set sk_prot_creator when cloning sockets to the right proto + - net/mlx5e: IPoIB, Fix access to invalid memory address + - netlink: do not proceed if dump's start() errs + - ip6_gre: ip6gre_tap device should keep dst + - ip6_tunnel: update mtu properly for ARPHRD_ETHER tunnel device in tx path + - IPv4: early demux can return an error code + - tipc: use only positive error codes in messages + - l2tp: fix l2tp_eth module loading + - socket, bpf: fix possible use after free + - net: rtnetlink: fix info leak in RTM_GETSTATS call + - bpf: fix bpf_tail_call() x64 JIT + - usb: gadget: core: fix ->udc_set_speed() logic + - USB: gadgetfs: Fix crash caused by inadequate synchronization + - USB: gadgetfs: fix copy_to_user while holding spinlock + - usb: gadget: udc: atmel: set vbus irqflags explicitly + - usb: gadget: udc: renesas_usb3: fix for no-data control transfer + - usb: gadget: udc: renesas_usb3: fix Pn_RAMMAP.Pn_MPKT value + - usb: gadget: udc: renesas_usb3: Fix return value of usb3_write_pipe() + - usb-storage: unusual_devs entry to fix write-access regression for Seagate + external drives + - usb-storage: fix bogus hardware error messages for ATA pass-thru devices + - usb: renesas_usbhs: fix the BCLR setting condition for non-DCP pipe + - usb: renesas_usbhs: fix usbhsf_fifo_clear() for RX direction + - ALSA: usb-audio: Check out-of-bounds access by corrupted buffer descriptor + - usb: pci-quirks.c: Corrected timeout values used in handshake + - USB: cdc-wdm: ignore -EPIPE from GetEncapsulatedResponse + - USB: dummy-hcd: fix connection failures (wrong speed) + - USB: dummy-hcd: fix infinite-loop resubmission bug + - USB: dummy-hcd: Fix erroneous synchronization change + - USB: devio: Prevent integer overflow in proc_do_submiturb() + - USB: devio: Don't corrupt user memory + - USB: g_mass_storage: Fix deadlock when driver is unbound + - USB: uas: fix bug in handling of alternate settings + - USB: core: harden cdc_parse_cdc_header + - usb: Increase quirk delay for USB devices + - USB: fix out-of-bounds in usb_set_configuration + - usb: xhci: Free the right ring in xhci_add_endpoint() + - xhci: fix finding correct bus_state structure for USB 3.1 hosts + - xhci: fix wrong endpoint ESIT value shown in tracing + - usb: host: xhci-plat: allow sysdev to inherit from ACPI + - xhci: Fix sleeping with spin_lock_irq() held in ASmedia 1042A workaround + - Revert "xhci: Limit USB2 port wake support for AMD Promontory hosts" + - iio: adc: twl4030: Fix an error handling path in 'twl4030_madc_probe()' + - iio: adc: twl4030: Disable the vusb3v1 rugulator in the error handling path + of 'twl4030_madc_probe()' + - iio: ad_sigma_delta: Implement a dedicated reset function + - staging: iio: ad7192: Fix - use the dedicated reset function avoiding dma + from stack. + - iio: core: Return error for failed read_reg + - IIO: BME280: Updates to Humidity readings need ctrl_reg write! + - iio: trigger: stm32-timer: preset shouldn't be buffered + - iio: trigger: stm32-timer: fix a corner case to write preset + - iio: ad7793: Fix the serial interface reset + - iio: adc: stm32: fix bad error check on max_channels + - iio: adc: mcp320x: Fix readout of negative voltages + - iio: adc: mcp320x: Fix oops on module unload + - uwb: properly check kthread_run return value + - uwb: ensure that endpoint is interrupt + - staging: vchiq_2835_arm: Fix NULL ptr dereference in free_pagelist + - ksm: fix unlocked iteration over vmas in cmp_and_merge_page() + - mm, hugetlb, soft_offline: save compound page order before page migration + - mm, oom_reaper: skip mm structs with mmu notifiers + - mm: fix RODATA_TEST failure "rodata_test: test data was not read only" + - mm: avoid marking swap cached page as lazyfree + - mm: fix data corruption caused by lazyfree page + - userfaultfd: non-cooperative: fix fork use after free + - lib/ratelimit.c: use deferred printk() version + - lsm: fix smack_inode_removexattr and xattr_getsecurity memleak + - ALSA: compress: Remove unused variable + - Revert "ALSA: echoaudio: purge contradictions between dimension matrix + members and total number of members" + - ALSA: usx2y: Suppress kernel warning at page allocation failures + - powerpc/powernv: Increase memory block size to 1GB on radix + - powerpc: Fix action argument for cpufeatures-based TLB flush + - powerpc/64s: Use emergency stack for kernel TM Bad Thing program checks + - powerpc/tm: Fix illegal TM state in signal handler + - percpu: make this_cpu_generic_read() atomic w.r.t. interrupts + - intel_th: pci: Add Lewisburg PCH support + - driver core: platform: Don't read past the end of "driver_override" buffer + - cgroup: Reinit cgroup_taskset structure before cgroup_migrate_execute() + returns + - Drivers: hv: fcopy: restore correct transfer length + - vmbus: don't acquire the mutex in vmbus_hvsock_device_unregister() + - stm class: Fix a use-after-free + - auxdisplay: charlcd: properly restore atomic counter on error path + - ftrace: Fix kmemleak in unregister_ftrace_graph + - ovl: fix error value printed in ovl_lookup_index() + - ovl: fix dput() of ERR_PTR in ovl_cleanup_index() + - ovl: fix dentry leak in ovl_indexdir_cleanup() + - ovl: fix missing unlock_rename() in ovl_do_copy_up() + - ovl: fix regression caused by exclusive upper/work dir protection + - arm64: dt marvell: Fix AP806 system controller size + - arm64: Ensure the instruction emulation is ready for userspace + - HID: rmi: Make sure the HID device is opened on resume + - HID: i2c-hid: allocate hid buffers for real worst case + - HID: wacom: leds: Don't try to control the EKR's read-only LEDs + - HID: wacom: Properly report negative values from Intuos Pro 2 Bluetooth + - HID: wacom: Correct coordinate system of touchring and pen twist + - HID: wacom: generic: Send MSC_SERIAL and ABS_MISC when leaving prox + - HID: wacom: generic: Clear ABS_MISC when tool leaves proximity + - HID: wacom: Always increment hdev refcount within wacom_get_hdev_data + - HID: wacom: bits shifted too much for 9th and 10th buttons + - btrfs: avoid overflow when sector_t is 32 bit + - Btrfs: fix overlap of fs_info::flags values + - rocker: fix rocker_tlv_put_* functions for KASAN + - netlink: fix nla_put_{u8,u16,u32} for KASAN + - dm crypt: reject sector_size feature if device length is not aligned to it + - dm ioctl: fix alignment of event number in the device list + - dm crypt: fix memory leak in crypt_ctr_cipher_old() + - KVM: PPC: Book3S: Fix server always zero from kvmppc_xive_get_xive() + - kvm/x86: Avoid async PF preempting the kernel incorrectly + - iwlwifi: mvm: use IWL_HCMD_NOCOPY for MCAST_FILTER_CMD + - scsi: sd: Implement blacklist option for WRITE SAME w/ UNMAP + - scsi: sd: Do not override max_sectors_kb sysfs setting + - brcmfmac: add length check in brcmf_cfg80211_escan_handler() + - brcmfmac: setup passive scan if requested by user-space + - drm/i915: always update ELD connector type after get modes + - drm/i915/bios: ignore HDMI on port A + - bsg-lib: fix use-after-free under memory-pressure + - nvme-pci: Use PCI bus address for data/queues in CMB + - mmc: core: add driver strength selection when selecting hs400es + - nl80211: Define policy for packet pattern attributes + - clk: samsung: exynos4: Enable VPLL and EPLL clocks for suspend/resume cycle + - udp: perform source validation for mcast early demux + - udp: fix bcast packet reception + - base: arch_topology: fix section mismatch build warnings + - Linux 4.13.6 + * Artful update to v4.13.5 stable release (LP: #1721777) + - cifs: check rsp for NULL before dereferencing in SMB2_open + - cifs: release cifs root_cred after exit_cifs + - cifs: release auth_key.response for reconnect. + - nvme-pci: fix host memory buffer allocation fallback + - nvme-pci: use appropriate initial chunk size for HMB allocation + - nvme-pci: propagate (some) errors from host memory buffer setup + - dax: remove the pmem_dax_ops->flush abstraction + - dm integrity: do not check integrity for failed read operations + - mmc: block: Fix incorrectly initialized requests + - fs/proc: Report eip/esp in /prod/PID/stat for coredumping + - scsi: scsi_transport_fc: fix NULL pointer dereference in fc_bsg_job_timeout + - SMB3: Add support for multidialect negotiate (SMB2.1 and later) + - mac80211: fix VLAN handling with TXQs + - mac80211_hwsim: Use proper TX power + - mac80211: flush hw_roc_start work before cancelling the ROC + - mac80211: fix deadlock in driver-managed RX BA session start + - genirq: Make sparse_irq_lock protect what it should protect + - genirq/msi: Fix populating multiple interrupts + - genirq: Fix cpumask check in __irq_startup_managed() + - KVM: PPC: Book3S HV: Hold kvm->lock around call to kvmppc_update_lpcr + - KVM: PPC: Book3S HV: Fix bug causing host SLB to be restored incorrectly + - KVM: PPC: Book3S HV: Don't access XIVE PIPR register using byte accesses + - tracing: Fix trace_pipe behavior for instance traces + - tracing: Erase irqsoff trace with empty write + - tracing: Remove RCU work arounds from stack tracer + - md/raid5: fix a race condition in stripe batch + - md/raid5: preserve STRIPE_ON_UNPLUG_LIST in break_stripe_batch_list + - scsi: scsi_transport_iscsi: fix the issue that iscsi_if_rx doesn't parse + nlmsg properly + - scsi: aacraid: Fix 2T+ drives on SmartIOC-2000 + - scsi: aacraid: Add a small delay after IOP reset + - drm/exynos: Fix locking in the suspend/resume paths + - drm/i915/gvt: Fix incorrect PCI BARs reporting + - Revert "drm/i915/bxt: Disable device ready before shutdown command" + - drm/amdgpu: revert tile table update for oland + - drm/radeon: disable hard reset in hibernate for APUs + - crypto: drbg - fix freeing of resources + - crypto: talitos - Don't provide setkey for non hmac hashing algs. + - crypto: talitos - fix sha224 + - crypto: talitos - fix hashing + - security/keys: properly zero out sensitive key material in big_key + - security/keys: rewrite all of big_key crypto + - KEYS: fix writing past end of user-supplied buffer in keyring_read() + - KEYS: prevent creating a different user's keyrings + - KEYS: prevent KEYCTL_READ on negative key + - libnvdimm, namespace: fix btt claim class crash + - powerpc/eeh: Create PHB PEs after EEH is initialized + - powerpc/pseries: Fix parent_dn reference leak in add_dt_node() + - powerpc/tm: Flush TM only if CPU has TM feature + - MIPS: Fix perf event init + - s390/perf: fix bug when creating per-thread event + - s390/mm: make pmdp_invalidate() do invalidation only + - s390/mm: fix write access check in gup_huge_pmd() + - PM: core: Fix device_pm_check_callbacks() + - Revert "IB/ipoib: Update broadcast object if PKey value was changed in index + 0" + - Fix SMB3.1.1 guest authentication to Samba + - SMB3: Fix endian warning + - SMB3: Warn user if trying to sign connection that authenticated as guest + - SMB: Validate negotiate (to protect against downgrade) even if signing off + - SMB3: handle new statx fields + - SMB3: Don't ignore O_SYNC/O_DSYNC and O_DIRECT flags + - vfs: Return -ENXIO for negative SEEK_HOLE / SEEK_DATA offsets + - libceph: don't allow bidirectional swap of pg-upmap-items + - nl80211: check for the required netlink attributes presence + - brd: fix overflow in __brd_direct_access + - gfs2: Fix debugfs glocks dump + - bsg-lib: don't free job in bsg_prepare_job + - iw_cxgb4: drop listen destroy replies if no ep found + - iw_cxgb4: remove the stid on listen create failure + - iw_cxgb4: put ep reference in pass_accept_req() + - rcu: Allow for page faults in NMI handlers + - mmc: sdhci-pci: Fix voltage switch for some Intel host controllers + - extable: Consolidate *kernel_text_address() functions + - extable: Enable RCU if it is not watching in kernel_text_address() + - seccomp: fix the usage of get/put_seccomp_filter() in seccomp_get_filter() + - arm64: Make sure SPsel is always set + - arm64: fault: Route pte translation faults via do_translation_fault + - KVM: VMX: extract __pi_post_block + - KVM: VMX: avoid double list add with VT-d posted interrupts + - KVM: VMX: simplify and fix vmx_vcpu_pi_load + - KVM: nVMX: fix HOST_CR3/HOST_CR4 cache + - kvm/x86: Handle async PF in RCU read-side critical sections + - kvm: nVMX: Don't allow L2 to access the hardware CR8 + - xfs: validate bdev support for DAX inode flag + - fix infoleak in waitid(2) + - sched/sysctl: Check user input value of sysctl_sched_time_avg + - irq/generic-chip: Don't replace domain's name + - mtd: Fix partition alignment check on multi-erasesize devices + - mtd: nand: atmel: fix buffer overflow in atmel_pmecc_user + - etnaviv: fix submit error path + - etnaviv: fix gem object list corruption + - futex: Fix pi_state->owner serialization + - md: fix a race condition for flush request handling + - md: separate request handling + - PCI: Fix race condition with driver_override + - btrfs: fix NULL pointer dereference from free_reloc_roots() + - btrfs: clear ordered flag on cleaning up ordered extents + - btrfs: finish ordered extent cleaning if no progress is found + - btrfs: propagate error to btrfs_cmp_data_prepare caller + - btrfs: prevent to set invalid default subvolid + - platform/x86: fujitsu-laptop: Don't oops when FUJ02E3 is not presnt + - PM / OPP: Call notifier without holding opp_table->lock + - x86/mm: Fix fault error path using unsafe vma pointer + - x86/fpu: Don't let userspace set bogus xcomp_bv + - KVM: VMX: do not change SN bit in vmx_update_pi_irte() + - KVM: VMX: remove WARN_ON_ONCE in kvm_vcpu_trigger_posted_interrupt + - KVM: VMX: use cmpxchg64 + - video: fbdev: aty: do not leak uninitialized padding in clk to userspace + - Linux 4.13.5 + - [Config] Update configs for v4.13.5 + + [ Ubuntu: 4.13.0-16.19 ] + + * 20170817 - ISO hangs on boot on qemu with splash screen enabled and qxl + graphics driver (LP: #1711358) + - qxl: fix framebuffer unpinning + * [Bug] USB controller failed to respond on Denverton after loading + intel_th_pci module (LP: #1715833) + - SAUCE: PCI: Disable broken RTIT_BAR of Intel TH + * CVE-2017-5123 + - waitid(): Add missing access_ok() checks + + [ Ubuntu: 4.13.0-15.16 ] + + * linux: 4.13.0-15.16 -proposed tracker (LP: #1721373) + * Boot regression on POWER9 (LP: #1721391) + - Revert "crypto/nx: Add P9 NX support for 842 compression engine" + - Revert "crypto/nx: Add P9 NX specific error codes for 842 engine" + - Revert "crypto/nx: Use kzalloc for workmem allocation" + - Revert "crypto/nx: Add nx842_add_coprocs_list function" + - Revert "crypto/nx: Create nx842_delete_coprocs function" + - Revert "crypto/nx: Create nx842_configure_crb function" + - Revert "crypto/nx: Rename nx842_powernv_function as icswx function" + - Revert "UBUNTU: [Config] CONFIG_PPC_VAS=y" + - Revert "powerpc/powernv/vas: Define copy/paste interfaces" + - Revert "powerpc/powernv/vas: Define vas_tx_win_open()" + - Revert "powerpc/powernv/vas: Define vas_win_close() interface" + - Revert "powerpc/powernv/vas: Define vas_rx_win_open() interface" + - Revert "powerpc/powernv/vas: Define helpers to alloc/free windows" + - Revert "powerpc/powernv/vas: Define helpers to init window context" + - Revert "powerpc/powernv/vas: Define helpers to access MMIO regions" + - Revert "powerpc/powernv/vas: Define vas_init() and vas_exit()" + - Revert "powerpc/powernv: Move GET_FIELD/SET_FIELD to vas.h" + - Revert "powerpc/powernv/vas: Define macros, register fields and structures" + - Revert "powerpc/powernv: Enable PCI peer-to-peer" + - Revert "powerpc/powernv: Add support to set power-shifting-ratio" + - Revert "powerpc/powernv: Add support for powercap framework" + - Revert "powerpc/perf: Add nest IMC PMU support" + - Revert "powerpc/powernv: Detect and create IMC device" + - Revert "powerpc/powernv: Add IMC OPAL APIs" + * smartpqi patches for Artful (LP: #1721381) + - scsi: smartpqi: add pqi reset quiesce support + - scsi: smartpqi: enhance BMIC cache flush + - scsi: smartpqi: update pqi passthru ioctl + - scsi: smartpqi: cleanup doorbell register usage. + - scsi: smartpqi: update kexec and power down support + - scsi: smartpqi: add in new controller ids + - scsi: smartpqi: change driver version to 1.1.2-125 + * CONFIG_DEBUG_FS is not enabled by "make zfcpdump_defconfig" with Ubuntu + 17.10 (kernel 4.13) (LP: #1719290) + - SAUCE: s390: update zfcpdump_defconfig + * [Feature] PXE boot with Intel Omni-Path (LP: #1712031) + - d-i: Add hfi1 to nic-modules + * [Feature]CNL:New device IDs for CNL (LP: #1685729) + - pinctrl: intel: Add Intel Cannon Lake PCH-H pin controller support + + [ Ubuntu: 4.13.0-14.15 ] + + * linux: 4.13.0-14.15 -proposed tracker (LP: #1721122) + * [Artful] ltp rwtest - Unable to handle kernel paging request at virtual + address (LP: #1721067) + - arm64: mm: Use READ_ONCE when dereferencing pointer to pte table + * linux 4.13.0-13.14 ADT test failure with linux 4.13.0-13.14 (LP: #1720779) + - SAUCE: LSM stacking: check for invalid zero sized writes + * Add installer support for Broadcom BCM573xx network drivers. (LP: #1720466) + - d-i: Add bnxt_en to nic-modules. + * Miscellaneous Ubuntu changes + - [Packaging] Include arch/arm64/kernel/ftrace-mod.o in headers package + + [ Ubuntu: 4.13.0-13.14 ] + + * linux: 4.13.0-13.14 -proposed tracker (LP: #1720239) + * [Bug] USB 3.1 Gen2 works as 5Gbps (LP: #1720045) + - xhci: set missing SuperSpeedPlus Link Protocol bit in roothub descriptor + * [Feature]Memory Bandwidth Monitoring(MBM) port to new Cache Quality + Monitoring (CQM) (LP: #1591609) + - x86/perf/cqm: Wipe out perf based cqm + - x86/intel_rdt/cqm: Documentation for resctrl based RDT Monitoring + - x86/intel_rdt: Introduce a common compile option for RDT + - x86/intel_rdt: Change file names to accommodate RDT monitor code + - x86/intel_rdt: Mark rdt_root and closid_alloc as static + - x86/intel_rdt: Cleanup namespace to support RDT monitoring + - x86/intel_rdt: Make rdt_resources_all more readable + - x86/intel_rdt/cqm: Add RDT monitoring initialization + - x86/intel_rdt/cqm: Add RMID (Resource monitoring ID) management + - x86/intel_rdt: Simplify info and base file lists + - x86/intel_rdt/cqm: Add info files for RDT monitoring + - x86/intel_rdt: Prepare for RDT monitoring mkdir support + - x86/intel_rdt/cqm: Add mkdir support for RDT monitoring + - x86/intel_rdt: Change closid type from int to u32 + - x86/intel_rdt/cqm: Add tasks file support + - x86/intel_rdt: Prepare to add RDT monitor cpus file support + - x86/intel_rdt/cqm: Add cpus file support + - x86/intel_rdt: Prepare for RDT monitor data support + - x86/intel_rdt/cqm: Add mon_data + - x86/intel_rdt: Separate the ctrl bits from rmdir + - x86/intel_rdt/cqm: Add rmdir support + - x86/intel_rdt/cqm: Add mount,umount support + - x86/intel_rdt: Introduce rdt_enable_key for scheduling + - x86/intel_rdt/cqm: Add sched_in support + - x86/intel_rdt/cqm: Add CPU hotplug support + - x86/intel_rdt/mbm: Basic counting of MBM events (total and local) + - x86/intel_rdt/mbm: Add mbm counter initialization + - x86/intel_rdt/mbm: Handle counter overflow + - x86/intel_rdt: Show bitmask of shareable resource with other executing units + - x86/intel_rdt/cqm: Clear the default RMID during hotcpu + - x86/intel_rdt: Modify the intel_pqr_state for better performance + - x86/intel_rdt/mbm: Fix MBM overflow handler during CPU hotplug + - x86/intel_rdt/cqm: Improve limbo list processing + - x86/intel_rdt: Remove redundant ternary operator on return + - [Config] CONFIG_INTEL_RDT=y + * [Feature] RDT: Disable most RDT features on Skylake server (LP: #1713619) + - x86/intel_rdt: Move special case code for Haswell to a quirk function + - x86/intel_rdt: Add command line options for resource director technology + - x86/intel_rdt: Turn off most RDT features on Skylake + * CVE-2017-1000252 + - KVM: VMX: Do not BUG() on out-of-bounds guest IRQ + * POWER9: NX842 module changes (LP: #1718292) + - crypto/nx: Rename nx842_powernv_function as icswx function + - crypto/nx: Create nx842_configure_crb function + - crypto/nx: Create nx842_delete_coprocs function + - crypto/nx: Add nx842_add_coprocs_list function + - crypto/nx: Use kzalloc for workmem allocation + - crypto/nx: Add P9 NX specific error codes for 842 engine + - crypto/nx: Add P9 NX support for 842 compression engine + * [Ubuntu 17.10] POWER9 - Base - Integrate P9 VAS (Virtual Accelerator + Switchboard) support in kernel (LP: #1718293) + - powerpc/powernv: Add IMC OPAL APIs + - powerpc/powernv: Detect and create IMC device + - powerpc/perf: Add nest IMC PMU support + - powerpc/powernv: Add support for powercap framework + - powerpc/powernv: Add support to set power-shifting-ratio + - powerpc/powernv: Enable PCI peer-to-peer + - powerpc/powernv/vas: Define macros, register fields and structures + - powerpc/powernv: Move GET_FIELD/SET_FIELD to vas.h + - powerpc/powernv/vas: Define vas_init() and vas_exit() + - powerpc/powernv/vas: Define helpers to access MMIO regions + - powerpc/powernv/vas: Define helpers to init window context + - powerpc/powernv/vas: Define helpers to alloc/free windows + - powerpc/powernv/vas: Define vas_rx_win_open() interface + - powerpc/powernv/vas: Define vas_win_close() interface + - powerpc/powernv/vas: Define vas_tx_win_open() + - powerpc/powernv/vas: Define copy/paste interfaces + - [Config] CONFIG_PPC_VAS=y + * Artful update to v4.13.4 stable release (LP: #1720154) + - orangefs: Don't clear SGID when inheriting ACLs + - : Fix copy_in_user() declaration + - IB/hfi1: Revert egress pkey check enforcement + - IB/{qib, hfi1}: Avoid flow control testing for RDMA write operation + - IB/mlx5: Fix cached MR allocation flow + - srcu: Provide ordering for CPU not involved in grace period + - smp/hotplug: Handle removal correctly in cpuhp_store_callbacks() + - Input: xpad - validate USB endpoint type during probe + - drm/amdgpu: read reg in each iterator of psp_wait_for loop + - tty: improve tty_insert_flip_char() fast path + - tty: improve tty_insert_flip_char() slow path + - tty: fix __tty_insert_flip_char regression + - pinctrl: samsung: Fix invalid register offset used for Exynos5433 external + interrupts + - pinctrl: samsung: Fix NULL pointer exception on external interrupts on + S3C24xx + - pinctrl/amd: save pin registers over suspend/resume + - MIPS: math-emu: .: Fix quiet NaN propagation + - MIPS: math-emu: .: Fix cases of both inputs zero + - MIPS: math-emu: .: Fix cases of both inputs negative + - MIPS: math-emu: .: Fix cases of input values with opposite + signs + - MIPS: math-emu: .: Fix cases of both infinite inputs + - MIPS: math-emu: MINA.: Fix some cases of infinity and zero inputs + - MIPS: math-emu: .: Fix NaN propagation + - MIPS: math-emu: .: Fix some cases of infinite inputs + - MIPS: math-emu: .: Fix some cases of zero inputs + - MIPS: math-emu: .: Clean up "maddf_flags" enumeration + - MIPS: math-emu: .S: Fix accuracy (32-bit case) + - MIPS: math-emu: .D: Fix accuracy (64-bit case) + - docs: disable KASLR when debugging kernel + - crypto: ccp - Fix XTS-AES-128 support on v5 CCPs + - crypto: scompress - don't sleep with preemption disabled + - crypto: caam/qi - fix typo in authenc alg driver name + - crypto: caam/qi - properly set IV after {en,de}crypt + - crypto: AF_ALG - remove SGL terminator indicator when chaining + - regulator: cpcap: Fix standby mode + - wcn36xx: Introduce mutual exclusion of fw configuration + - ext4: in ext4_seek_{hole,data}, return -ENXIO for negative offsets + - ext4: fix incorrect quotaoff if the quota feature is enabled + - ext4: fix quota inconsistency during orphan cleanup for read-only mounts + - cxl: Fix driver use count + - powerpc/powernv/npu: Move tlb flush before launching ATSD + - powerpc/pseries: Don't attempt to acquire drc during memory hot add for + assigned lmbs + - powerpc: Fix DAR reporting when alignment handler faults + - block: Relax a check in blk_start_queue() + - block: directly insert blk-mq request from blk_insert_cloned_request() + - md/bitmap: copy correct data for bitmap super + - md/bitmap: disable bitmap_resize for file-backed bitmaps. + - skd: Avoid that module unloading triggers a use-after-free + - skd: Submit requests to firmware before triggering the doorbell + - scsi: zfcp: fix queuecommand for scsi_eh commands when DIX enabled + - scsi: zfcp: add handling for FCP_RESID_OVER to the fcp ingress path + - scsi: zfcp: fix capping of unsuccessful GPN_FT SAN response trace records + - scsi: zfcp: fix passing fsf_req to SCSI trace on TMF to correlate with HBA + - scsi: zfcp: fix missing trace records for early returns in TMF eh handlers + - scsi: zfcp: fix payload with full FCP_RSP IU in SCSI trace records + - scsi: zfcp: trace HBA FSF response by default on dismiss or timedout late + response + - scsi: zfcp: trace high part of "new" 64 bit SCSI LUN + - scsi: qedi: off by one in qedi_get_cmd_from_tid() + - scsi: aacraid: Fix command send race condition + - scsi: megaraid_sas: mismatch of allocated MFI frame size and length exposed + in MFI MPT pass through command + - scsi: megaraid_sas: set minimum value of resetwaittime to be 1 secs + - scsi: megaraid_sas: Check valid aen class range to avoid kernel panic + - scsi: megaraid_sas: Return pended IOCTLs with cmd_status + MFI_STAT_WRONG_STATE in case adapter is dead + - scsi: storvsc: fix memory leak on ring buffer busy + - scsi: sg: factor out sg_fill_request_table() + - scsi: sg: fixup infoleak when using SG_GET_REQUEST_TABLE + - scsi: qla2xxx: Update fw_started flags at qpair creation. + - scsi: qla2xxx: Correction to vha->vref_count timeout + - scsi: qla2xxx: Fix target multiqueue configuration + - scsi: qla2xxx: Use BIT_6 to acquire FAWWPN from switch + - scsi: qla2xxx: Use fabric name for Get Port Speed command + - scsi: qla2xxx: Fix an integer overflow in sysfs code + - mailbox: bcm-flexrm-mailbox: Fix mask used in CMPL_START_ADDR_VALUE() + - ftrace: Fix debug preempt config name in stack_tracer_{en,dis}able + - ftrace: Fix selftest goto location on error + - ftrace: Fix memleak when unregistering dynamic ops when tracing disabled + - tracing: Add barrier to trace_printk() buffer nesting modification + - tracing: Fix clear of RECORDED_TGID flag when disabling trace event + - tracing: Apply trace_clock changes to instance max buffer + - ARC: Re-enable MMU upon Machine Check exception + - PCI: shpchp: Enable bridge bus mastering if MSI is enabled + - PCI: pciehp: Report power fault only once until we clear it + - net/netfilter/nf_conntrack_core: Fix net_conntrack_lock() + - media: v4l2-compat-ioctl32: Fix timespec conversion + - media: Revert "[media] lirc_dev: remove superfluous get/put_device() calls" + - media: venus: fix copy/paste error in return_buf_error + - media: uvcvideo: Prevent heap overflow when accessing mapped controls + - media: adv7180: add missing adv7180cp, adv7180st i2c device IDs + - PM / devfreq: Fix memory leak when fail to register device + - ALSA: seq: Cancel pending autoload work at unbinding device + - bcache: initialize dirty stripes in flash_dev_run() + - bcache: Fix leak of bdev reference + - bcache: do not subtract sectors_to_gc for bypassed IO + - bcache: correct cache_dirty_target in __update_writeback_rate() + - bcache: Correct return value for sysfs attach errors + - bcache: fix sequential large write IO bypass + - bcache: fix for gc and write-back race + - bcache: fix bch_hprint crash and improve output + - sched/cpuset/pm: Fix cpuset vs. suspend-resume bugs + - iwlwifi: add workaround to disable wide channels in 5GHz + - Linux 4.13.4 + * [17.10 FEAT] KVM: CPU Model z14 (LP: #1719297) + - KVM: s390: Support Configuration z/Architecture Mode + * sata reset hangs w/ early cn99xx silicon (LP: #1719031) + - SAUCE: ahci: thunderx2: Fix for errata that affects stop engine + - SAUCE: ahci: thunderx2: stop engine fix update + * PCI quirk required for SATA on early cn99xx silicon (LP: #1718760) + - SAUCE: PCI: Vulcan: AHCI PCI bar fix for Broadcom Vulcan early silicon + * Please make linux-libc-dev Provide: aufs-dev (LP: #1716091) + - [Packaging] Add aufs-dev to the Provides: for linux-libc-dev + * Miscellaneous Ubuntu changes + - [Packaging] Use SRCPKGNAME rather than hard-coding the source package name + - SAUCE: LSM stacking: procfs: add smack subdir to attrs + - SAUCE: LSM stacking: LSM: manage credential security blobs + - SAUCE: LSM stacking: LSM: Manage file security blobs + - SAUCE: LSM stacking: LSM: manage task security blobs + - SAUCE: LSM stacking: LSM: Infrastructure management of the remaining blobs + - SAUCE: LSM stacking: LSM: general but not extreme module stacking + - SAUCE: LSM stacking: LSM: Complete task_alloc hook + - SAUCE: LSM stacking: fixup procsfs: add smack subdir to attrs + - SAUCE: LSM stacking: fixup initialize task->security + - SAUCE: LSM stacking: fixup: alloc_task_ctx is dead code + - SAUCE: LSM stacking: add support for stacking getpeersec_stream + - SAUCE: LSM stacking: add stacking support to apparmor network hooks + - SAUCE: LSM stacking: fixup apparmor stacking enablement + - SAUCE: LSM stacking: fixup stacking kconfig + - SAUCE: LSM stacking: allow selecting multiple LSMs using kernel boot params + - SAUCE: LSM stacking: provide prctl interface for setting context + - SAUCE: LSM stacking: inherit current display LSM + - SAUCE: LSM stacking: keep an index for each registered LSM + - SAUCE: LSM stacking: verify display LSM + - SAUCE: LSM stacking: provide a way to specify the default display lsm + - SAUCE: LSM stacking: make sure LSM blob align on 64 bit boundaries + - SAUCE: LSM stacking: add /proc//attr/display_lsm + - SAUCE: LSM stacking: add Kconfig to set default display LSM + - SAUCE: LSM stacking: add configs for LSM stacking + - [Config] Run updateconfigs after merging LSM stacking + + [ Ubuntu: 4.13.0-12.13 ] + + * linux: 4.13.0-12.13 -proposed tracker (LP: #1718980) + * [Feature] SKX: Support crystall ridge / far / near memory indication in PEBS + (LP: #1591813) + - perf/x86: Move Nehalem PEBS code to flag + - perf/x86: Fix data source decoding for Skylake + * Upgrade to 4.13.0-11.12 in artful amd64 VM breaks display on wayland + (LP: #1718679) + - [Config] CONFIG_DRM_VBOXVIDEO=n + * ipmmu-vmsa driver breaks arm64 boots (LP: #1718734) + - [Config] Disable CONFIG_IPMMU_VMSA on arm64 + * Vlun resize request could fail with cxlflash driver (LP: #1713575) + - scsi: cxlflash: Fix vlun resize failure in the shrink path + * multipath -ll is not showing the disks which are actually multipath + (LP: #1718397) + - fs: aio: fix the increment of aio-nr and counting against aio-max-nr + * [Feature] Crystal Ridge - BTT - Rework error clearing (LP: #1704350) + - libnvdimm, btt: fix a missed NVDIMM_IO_ATOMIC case in the write path + - libnvdimm, btt: refactor map entry operations with macros + - libnvdimm, btt: ensure that flags were also unchanged during a map_read + - libnvdimm, btt: cache sector_size in arena_info + - libnvdimm: fix potential deadlock while clearing errors + - libnvdimm, btt: rework error clearing + * [Feature] Crystal Ridge - have 4k DAX faults use a common zero page + (LP: #1704439) + - mm: add vm_insert_mixed_mkwrite() + - dax: relocate some dax functions + - dax: use common 4k zero page for dax mmap reads + - dax: remove DAX code from page_cache_tree_insert() + - dax: move all DAX radix tree defs to fs/dax.c + * [bug] 17.10: CDP test fail on platform of Purley-2S/4S/Neoncity,BDW- + de/ep/ex, (LP: #1716843) + - SAUCE: (no-up) x86/intel_rdt: Fix cdp info directory files issue + * [featue] GPIO support for Denverton (LP: #1591829) + - pinctrl: intel: Add Intel Denverton pin controller support + * ETPS/2 Elantech Touchpad inconsistently detected (Gigabyte P57W laptop) + (LP: #1594214) + - Input: i8042 - add Gigabyte P57 to the keyboard reset table + * autopkgtest profile fails to build on armhf (LP: #1717920) + - [Packaging] autopkgtest -- disable d-i when dropping flavours + * Artful update to v4.13.3 stable release (LP: #1718412) + - Revert "net: use lib/percpu_counter API for fragmentation mem accounting" + - Revert "net: fix percpu memory leaks" + - gianfar: Fix Tx flow control deactivation + - vhost_net: correctly check tx avail during rx busy polling + - ip6_gre: update mtu properly in ip6gre_err + - udp: drop head states only when all skb references are gone + - ipv6: fix memory leak with multiple tables during netns destruction + - ipv6: fix typo in fib6_net_exit() + - sctp: fix missing wake ups in some situations + - tcp: fix a request socket leak + - ip_tunnel: fix setting ttl and tos value in collect_md mode + - f2fs: let fill_super handle roll-forward errors + - f2fs: check hot_data for roll-forward recovery + - x86/fsgsbase/64: Fully initialize FS and GS state in start_thread_common + - x86/fsgsbase/64: Report FSBASE and GSBASE correctly in core dumps + - x86/switch_to/64: Rewrite FS/GS switching yet again to fix AMD CPUs + - x86/mm, mm/hwpoison: Clear PRESENT bit for kernel 1:1 mappings of poison + pages + - ovl: fix false positive ESTALE on lookup + - fuse: allow server to run in different pid_ns + - idr: remove WARN_ON_ONCE() when trying to replace negative ID + - libnvdimm, btt: check memory allocation failure + - libnvdimm: fix integer overflow static analysis warning + - xfs: write unmount record for ro mounts + - xfs: toggle readonly state around xfs_log_mount_finish + - xfs: Add infrastructure needed for error propagation during buffer IO + failure + - xfs: Properly retry failed inode items in case of error during buffer + writeback + - xfs: fix recovery failure when log record header wraps log end + - xfs: always verify the log tail during recovery + - xfs: fix log recovery corruption error due to tail overwrite + - xfs: handle -EFSCORRUPTED during head/tail verification + - xfs: stop searching for free slots in an inode chunk when there are none + - xfs: evict all inodes involved with log redo item + - xfs: check for race with xfs_reclaim_inode() in xfs_ifree_cluster() + - xfs: open-code xfs_buf_item_dirty() + - xfs: remove unnecessary dirty bli format check for ordered bufs + - xfs: ordered buffer log items are never formatted + - xfs: refactor buffer logging into buffer dirtying helper + - xfs: don't log dirty ranges for ordered buffers + - xfs: skip bmbt block ino validation during owner change + - xfs: move bmbt owner change to last step of extent swap + - xfs: disallow marking previously dirty buffers as ordered + - xfs: relog dirty buffers during swapext bmbt owner change + - xfs: disable per-inode DAX flag + - xfs: fix incorrect log_flushed on fsync + - xfs: don't set v3 xflags for v2 inodes + - xfs: open code end_buffer_async_write in xfs_finish_page_writeback + - xfs: use kmem_free to free return value of kmem_zalloc + - md/raid1/10: reset bio allocated from mempool + - md/raid5: release/flush io in raid5_do_work() + - xfs: fix compiler warnings + - Linux 4.13.3 + * Artful update to v4.13.2 stable release (LP: #1717549) + - mtd: nand: make Samsung SLC NAND usable again + - mtd: nand: hynix: add support for 20nm NAND chips + - mtd: nand: mxc: Fix mxc_v1 ooblayout + - mtd: nand: qcom: fix read failure without complete bootchain + - mtd: nand: qcom: fix config error for BCH + - nvme-fabrics: generate spec-compliant UUID NQNs + - btrfs: resume qgroup rescan on rw remount + - rtlwifi: btcoexist: Fix breakage of ant_sel for rtl8723be + - rtlwifi: btcoexist: Fix antenna selection code + - radix-tree: must check __radix_tree_preload() return value + - brcmfmac: feature check for multi-scheduled scan fails on bcm4345 devices + - kselftests: timers: leap-a-day: Change default arguments to help test runs + - selftests: timers: Fix run_destructive_tests target to handle skipped tests + - selftests/x86/fsgsbase: Test selectors 1, 2, and 3 + - mm: kvfree the swap cluster info if the swap file is unsatisfactory + - mm/swapfile.c: fix swapon frontswap_map memory leak on error + - mm/sparse.c: fix typo in online_mem_sections + - mm/memory.c: fix mem_cgroup_oom_disable() call missing + - KVM: SVM: Limit PFERR_NESTED_GUEST_PAGE error_code check to L1 guest + - Revert "firmware: add sanity check on shutdown/suspend" + - rt2800: fix TX_PIN_CFG setting for non MT7620 chips + - ARM64: dts: marvell: armada-37xx: Fix GIC maintenance interrupt + - ARM: 8692/1: mm: abort uaccess retries upon fatal signal + - NFS: Fix 2 use after free issues in the I/O code + - NFS: Sync the correct byte range during synchronous writes + - NFSv4: Fix up mirror allocation + - xfs: XFS_IS_REALTIME_INODE() should be false if no rt device present + - Linux 4.13.2 + * [Bug] Thunderbolt-patches: Related to the way the key for secure connection + is handled (LP: #1717430) + - thunderbolt: Remove superfluous check + - thunderbolt: Make key root-only accessible + - thunderbolt: Allow clearing the key + * [Bug] Thunderbolt-patches: Fixes the issue regarding the order of ACPI calls + w.r.t. PCI enumeration (LP: #1717431) + - ACPICA: Dispatch active GPEs at init time + - ACPICA: Make it possible to enable runtime GPEs earlier + - ACPI / scan: Enable GPEs before scanning the namespace + * Miscellaneous Ubuntu changes + - ubuntu: vbox -- update to 5.1.28-dfsg-1 + - [Config] CONFIG_PINCTRL_DENVERTON=m + - [Config] CONFIG_I2C_XLP9XX=m + * Miscellaneous upstream changes + - Introduce v3 namespaced file capabilities + + [ Ubuntu: 4.13.0-11.12 ] + + * linux: 4.13.0-11.12 -proposed tracker (LP: #1716699) + * kernel panic -not syncing: Fatal exception: panic_on_oops (LP: #1708399) + - s390/mm: fix local TLB flushing vs. detach of an mm address space + - s390/mm: fix race on mm->context.flush_mm + * CVE-2017-1000251 + - Bluetooth: Properly check L2CAP config option output buffer length + + [ Ubuntu: 4.13.0-10.11 ] + + * linux: 4.13.0-10.11 -proposed tracker (LP: #1716287) + * please add aufs-dkms to the Provides: for the kernel packages (LP: #1716093) + - [Packaging] Add aufs-dkms to the Provides: for kernel packages + * Artful update to v4.13.1 stable release (LP: #1716284) + - usb: quirks: add delay init quirk for Corsair Strafe RGB keyboard + - USB: serial: option: add support for D-Link DWM-157 C1 + - usb: Add device quirk for Logitech HD Pro Webcam C920-C + - usb:xhci:Fix regression when ATI chipsets detected + - USB: musb: fix external abort on suspend + - ANDROID: binder: add padding to binder_fd_array_object. + - ANDROID: binder: add hwbinder,vndbinder to BINDER_DEVICES. + - USB: core: Avoid race of async_completed() w/ usbdev_release() + - staging/rts5208: fix incorrect shift to extract upper nybble + - staging: ccree: save ciphertext for CTS IV + - staging: fsl-dpaa2/eth: fix off-by-one FD ctrl bitmaks + - iio: adc: ti-ads1015: fix incorrect data rate setting update + - iio: adc: ti-ads1015: fix scale information for ADS1115 + - iio: adc: ti-ads1015: enable conversion when CONFIG_PM is not set + - iio: adc: ti-ads1015: avoid getting stale result after runtime resume + - iio: adc: ti-ads1015: don't return invalid value from buffer setup callbacks + - iio: adc: ti-ads1015: add adequate wait time to get correct conversion + - driver core: bus: Fix a potential double free + - HID: wacom: Do not completely map WACOM_HID_WD_TOUCHRINGSTATUS usage + - binder: free memory on error + - crypto: caam/qi - fix compilation with CONFIG_DEBUG_FORCE_WEAK_PER_CPU=y + - crypto: caam/qi - fix compilation with DEBUG enabled + - thunderbolt: Fix reset response_type + - fpga: altera-hps2fpga: fix multiple init of l3_remap_lock + - intel_th: pci: Add Cannon Lake PCH-H support + - intel_th: pci: Add Cannon Lake PCH-LP support + - ath10k: fix memory leak in rx ring buffer allocation + - drm/vgem: Pin our pages for dmabuf exports + - drm/ttm: Fix accounting error when fail to get pages for pool + - drm/dp/mst: Handle errors from drm_atomic_get_private_obj_state() correctly + - rtlwifi: rtl_pci_probe: Fix fail path of _rtl_pci_find_adapter + - Bluetooth: Add support of 13d3:3494 RTL8723BE device + - iwlwifi: pci: add new PCI ID for 7265D + - dlm: avoid double-free on error path in dlm_device_{register,unregister} + - mwifiex: correct channel stat buffer overflows + - MCB: add support for SC31 to mcb-lpc + - s390/mm: avoid empty zero pages for KVM guests to avoid postcopy hangs + - drm/nouveau/pci/msi: disable MSI on big-endian platforms by default + - drm/nouveau: Fix error handling in nv50_disp_atomic_commit + - workqueue: Fix flag collision + - ahci: don't use MSI for devices with the silly Intel NVMe remapping scheme + - cs5536: add support for IDE controller variant + - scsi: sg: protect against races between mmap() and SG_SET_RESERVED_SIZE + - scsi: sg: recheck MMAP_IO request length with lock held + - of/device: Prevent buffer overflow in of_device_modalias() + - rtlwifi: Fix memory leak when firmware request fails + - rtlwifi: Fix fallback firmware loading + - Linux 4.13.1 + * Kernel has trouble recognizing Corsair Strafe RGB keyboard (LP: #1678477) + - usb: quirks: add delay init quirk for Corsair Strafe RGB keyboard + * SRIOV: warning if unload VFs (LP: #1715073) + - PCI: Disable VF decoding before pcibios_sriov_disable() updates resources + * [Patch] network-i40e:NVM bug fixes (cherrypick from 4.14) (LP: #1715578) + - i40e: avoid NVM acquire deadlock during NVM update + - i40e: point wb_desc at the nvm_wb_desc during i40e_read_nvm_aq + * [P9,POwer NV] Perf PMU event : pm_br_2path and pm_ld_miss_l1 is counted + twice when perf stat is done (perf:) (LP: #1714571) + - perf vendor events powerpc: Remove duplicate events + * Unable to install Ubuntu on the NVMe disk under VMD PCI domain + (LP: #1703339) + - [Config] Include vmd in storage-core-modules udeb + * 17.10 fails to boot on POWER9 DD2.0 with Deep stop states (LP: #1715064) + - powerpc/powernv: Save/Restore additional SPRs for stop4 cpuidle + - powerpc/powernv: Clear PECE1 in LPCR via stop-api only on Hotplug + - SAUCE: powerpc/powernv: Clear LPCR[PECE1] via stop-api only for deep state + offline + * Miscellaneous Ubuntu changes + - SAUCE: selftests/seccomp: Support glibc 2.26 siginfo_t.h + - Revert "UBUNTU: SAUCE: Import aufs driver" + - SAUCE: Import aufs driver + + [ Ubuntu: 4.13.0-9.10 ] + + * linux: 4.13.0-9.10 -proposed tracker (LP: #1715145) + * EDAC sbridge: Failed to register device with error -22. (LP: #1714112) + - [Config] CONFIG_EDAC_GHES=n + * Miscellaneous Ubuntu changes + - ubuntu: vbox -- update to 5.1.26-dfsg-2 + * Rebase to v4.13 + + [ Ubuntu: 4.13.0-8.9 ] + + * snapd 2.27.3+17.10 ADT test failure with linux 4.13.0-6.7 (LP: #1713103) + - SAUCE: apparmor: fix apparmorfs DAC access, permissions + * enable ARCH_SUNXI (and friends) in arm64 kernel .config (LP: #1701137) + - [Config] Enable CONFIG_ARCH_SUNXI and related options for arm64 + * [Bug] Harrisonville: pnd2_edac always fail to load on B1 stepping + Harrisonville SDP (LP: #1709257) + - EDAC, pnd2: Build in a minimal sideband driver for Apollo Lake + - EDAC, pnd2: Mask off the lower four bits of a BAR + - EDAC, pnd2: Conditionally unhide/hide the P2SB PCI device to read BAR + - EDAC, pnd2: Properly toggle hidden state for P2SB PCI device + - SAUCE: i2c: i801: Restore the presence state of P2SB PCI device after + reading BAR + * Miscellaneous Ubuntu changes + - Revert "UBUNTU: SAUCE: Import aufs driver" + - SAUCE: Import aufs driver + - SAUCE: selftests/powerpc: Disable some ptrace selftests + - [Config] CONFIG_CRYPTO_DEV_NITROX_CNN55XX=n for s390x + - [Config] CONFIG_I2C_SLAVE=n for amd64, i386, ppc64el + - [Config] Disable CONFIG_MDIO_* options for s390x + - [Config] CONFIG_SCSI_MQ_DEFAULT=n for s390x + - [Config] Update annotations for 4.13 + + [ Ubuntu: 4.13.0-7.8 ] + + * linux 4.12.0-11.12 ADT test failure with linux 4.12.0-11.12 (LP: #1710904) + - SAUCE: selftests/powerpc: Use snprintf to construct DSCR sysfs interface + paths + * Miscellaneous Ubuntu changes + - Revert "UBUNTU: SAUCE: seccomp: log actions even when audit is disabled" + * Miscellaneous upstream changes + - seccomp: Provide matching filter for introspection + - seccomp: Sysctl to display available actions + - seccomp: Operation for checking if an action is available + - seccomp: Sysctl to configure actions that are allowed to be logged + - seccomp: Selftest for detection of filter flag support + - seccomp: Filter flag to log all actions except SECCOMP_RET_ALLOW + - seccomp: Action to log before allowing + * Rebase to v4.13-rc7 + + [ Ubuntu: 4.13.0-6.7 ] + + * HID: multitouch: Support ALPS PTP Stick and Touchpad devices (LP: #1712481) + - SAUCE: HID: multitouch: Support ALPS PTP stick with pid 0x120A + * sort ABI files with C.UTF-8 locale (LP: #1712345) + - [Packaging] sort ABI files with C.UTF-8 locale + * igb: Support using Broadcom 54616 as PHY (LP: #1712024) + - SAUCE: igb: add support for using Broadcom 54616 as PHY + * RPT related fixes missing in Ubuntu 16.04.3 (LP: #1709220) + - powerpc/mm/radix: Improve _tlbiel_pid to be usable for PWC flushes + - powerpc/mm/radix: Improve TLB/PWC flushes + - powerpc/mm/radix: Avoid flushing the PWC on every flush_tlb_range + * Linux 4.12 refuses to load self-signed modules under Secure Boot with + properly enrolled keys (LP: #1712168) + - SAUCE: (efi-lockdown) MODSIGN: Fix module signature verification + * [17.10 FEAT] Enable NVMe driver - kernel (LP: #1708432) + - [Config] CONFIG_BLK_DEV_NVME=m for s390 + * Artful: 4.12.0-11.12: Boot panic in vlv2_plat_configure_clock+0x3b/0xa0 + (LP: #1711298) + - [Config] CONFIG_INTEL_ATOMISP=n + * Miscellaneous Ubuntu changes + - SAUCE: apparmor: af_unix mediation + * Miscellaneous upstream changes + - apparmor: Fix shadowed local variable in unpack_trans_table() + - apparmor: Fix logical error in verify_header() + - apparmor: Fix an error code in aafs_create() + - apparmor: Redundant condition: prev_ns. in [label.c:1498] + - apparmor: add the ability to mediate signals + - apparmor: add mount mediation + - apparmor: cleanup conditional check for label in label_print + - apparmor: add support for absolute root view based labels + - apparmor: make policy_unpack able to audit different info messages + - apparmor: add more debug asserts to apparmorfs + - apparmor: add base infastructure for socket mediation + - apparmor: move new_null_profile to after profile lookup fns() + - apparmor: fix race condition in null profile creation + - apparmor: ensure unconfined profiles have dfas initialized + - apparmor: fix incorrect type assignment when freeing proxies + * Rebase to v4.13-rc6 + + [ Ubuntu: 4.13.0-5.6 ] + + * Ubuntu17.10 - perf: Update Power9 PMU event JSON files (LP: #1708630) + - perf pmu-events: Support additional POWER8+ PVR in mapfile + - perf vendor events: Add POWER9 PMU events + - perf vendor events: Add POWER9 PVRs to mapfile + - SAUCE: perf vendor events powerpc: remove suffix in mapfile + - SAUCE: perf vendor events powerpc: Update POWER9 events + * Disable CONFIG_MEMORY_HOTPLUG_DEFAULT_ONLINE (LP: #1709171) + - [Config] CONFIG_MEMORY_HOTPLUG_DEFAULT_ONLINE=n for ppc64el + * Please only recommend or suggest initramfs-tools | linux-initramfs-tool for + kernels able to boot without initramfs (LP: #1700972) + - [Debian] Don't depend on initramfs-tools + * Miscellaneous Ubuntu changes + - SAUCE: Import aufs driver + - SAUCE: aufs -- Add missing argument to loop_switch() call + - [Config] Enable aufs + - SAUCE: (noup) Update spl to 0.6.5.11-ubuntu1, zfs to 0.6.5.11-1ubuntu3 + - Enable zfs build + - SAUCE: powerpc: Always initialize input array when calling epapr_hypercall() + - [Packaging] switch up to debhelper 9 + * Rebase to v4.13-rc5 + + [ Ubuntu: 4.13.0-4.5 ] + + * Lenovo Yoga 910 Sensors (LP: #1708120) + - SAUCE: (no-up) HID: Add quirk for Lenovo Yoga 910 with ITE Chips + * Unable to install Ubuntu on the NVMe disk under VMD PCI domain + (LP: #1703339) + - [Config] Add vmd driver to generic inclusion list + * Set CONFIG_SATA_HIGHBANK=y on armhf (LP: #1703430) + - [Config] CONFIG_SATA_HIGHBANK=y + * Miscellaneous Ubuntu changes + - ubuntu: vbox -- update to 5.1.26-dfsg-1 + - SAUCE: hio: Build fixes for 4.13 + - Enable hio build + - SAUCE: (noup) Update spl to 0.6.5.11-1, zfs to 0.6.5.11-1ubuntu1 + - [debian] use all rather than amd64 dkms debs for sync + * Rebase to v4.13-rc4 + + [ Ubuntu: 4.13.0-3.4 ] + + * Adt tests of src:linux time out often on armhf lxc containers (LP: #1705495) + - [Packaging] tests -- reduce rebuild test to one flavour + - [Packaging] tests -- reduce rebuild test to one flavour -- use filter + * snapd 2.26.8+17.10 ADT test failure with linux 4.12.0-6.7 (LP: #1704158) + - SAUCE: virtio_net: Revert mergeable buffer handling rework + * Rebase to v4.13-rc3 + + [ Ubuntu: 4.13.0-2.3 ] + + * Change CONFIG_IBMVETH to module (LP: #1704479) + - [Config] CONFIG_IBMVETH=m + * Rebase to v4.13-rc2 + + [ Ubuntu: 4.13.0-1.2 ] + + * Miscellaneous Ubuntu changes + - [Debian] Support sphinx-based kernel documentation + + [ Ubuntu: 4.13.0-0.1 ] + + * Miscellaneous Ubuntu changes + - Disable hio + - Disable zfs build + - ubuntu: vbox -- update to 5.1.24-dfsg-1 + * Rebase to v4.13-rc1 + + [ Ubuntu: 4.12.0-7.8 ] + + * ThunderX: soft lockup on 4.8+ kernels when running qemu-efi with vhost=on + (LP: #1673564) + - arm64: Add a facility to turn an ESR syndrome into a sysreg encoding + - KVM: arm/arm64: vgic-v3: Add accessors for the ICH_APxRn_EL2 registers + - KVM: arm64: Make kvm_condition_valid32() accessible from EL2 + - KVM: arm64: vgic-v3: Add hook to handle guest GICv3 sysreg accesses at EL2 + - KVM: arm64: vgic-v3: Add ICV_BPR1_EL1 handler + - KVM: arm64: vgic-v3: Add ICV_IGRPEN1_EL1 handler + - KVM: arm64: vgic-v3: Add ICV_IAR1_EL1 handler + - KVM: arm64: vgic-v3: Add ICV_EOIR1_EL1 handler + - KVM: arm64: vgic-v3: Add ICV_AP1Rn_EL1 handler + - KVM: arm64: vgic-v3: Add ICV_HPPIR1_EL1 handler + - KVM: arm64: vgic-v3: Enable trapping of Group-1 system registers + - KVM: arm64: Enable GICv3 Group-1 sysreg trapping via command-line + - KVM: arm64: vgic-v3: Add ICV_BPR0_EL1 handler + - KVM: arm64: vgic-v3: Add ICV_IGNREN0_EL1 handler + - KVM: arm64: vgic-v3: Add misc Group-0 handlers + - KVM: arm64: vgic-v3: Enable trapping of Group-0 system registers + - KVM: arm64: Enable GICv3 Group-0 sysreg trapping via command-line + - arm64: Add MIDR values for Cavium cn83XX SoCs + - arm64: Add workaround for Cavium Thunder erratum 30115 + - KVM: arm64: vgic-v3: Add ICV_DIR_EL1 handler + - KVM: arm64: vgic-v3: Add ICV_RPR_EL1 handler + - KVM: arm64: vgic-v3: Add ICV_CTLR_EL1 handler + - KVM: arm64: vgic-v3: Add ICV_PMR_EL1 handler + - KVM: arm64: Enable GICv3 common sysreg trapping via command-line + - KVM: arm64: vgic-v3: Log which GICv3 system registers are trapped + - KVM: arm64: Log an error if trapping a read-from-write-only GICv3 access + - KVM: arm64: Log an error if trapping a write-to-read-only GICv3 access + * hns: under heavy load, NIC may fail and require reboot (LP: #1704146) + - net: hns: Bugfix for Tx timeout handling in hns driver + * New ACPI identifiers for ThunderX SMMU (LP: #1703437) + - iommu/arm-smmu: Plumb in new ACPI identifiers + * Transparent hugepages should default to enabled=madvise (LP: #1703742) + - SAUCE: use CONFIG_TRANSPARENT_HUGEPAGE_MADVISE=y as default + * Artful update to v4.12.1 stable release (LP: #1703858) + - driver core: platform: fix race condition with driver_override + - RDMA/uverbs: Check port number supplied by user verbs cmds + - usb: dwc3: replace %p with %pK + - USB: serial: cp210x: add ID for CEL EM3588 USB ZigBee stick + - usb: usbip: set buffer pointers to NULL after free + - Add USB quirk for HVR-950q to avoid intermittent device resets + - usb: Fix typo in the definition of Endpoint[out]Request + - USB: core: fix device node leak + - USB: serial: option: add two Longcheer device ids + - USB: serial: qcserial: new Sierra Wireless EM7305 device ID + - xhci: Limit USB2 port wake support for AMD Promontory hosts + - gfs2: Fix glock rhashtable rcu bug + - Add "shutdown" to "struct class". + - tpm: Issue a TPM2_Shutdown for TPM2 devices. + - tpm: fix a kernel memory leak in tpm-sysfs.c + - powerpc/powernv: Fix CPU_HOTPLUG=n idle.c compile error + - x86/uaccess: Optimize copy_user_enhanced_fast_string() for short strings + - sched/fair, cpumask: Export for_each_cpu_wrap() + - sched/core: Implement new approach to scale select_idle_cpu() + - sched/numa: Use down_read_trylock() for the mmap_sem + - sched/numa: Override part of migrate_degrades_locality() when idle balancing + - sched/fair: Simplify wake_affine() for the single socket case + - sched/numa: Implement NUMA node level wake_affine() + - sched/fair: Remove effective_load() + - sched/numa: Hide numa_wake_affine() from UP build + - xen: avoid deadlock in xenbus driver + - crypto: drbg - Fixes panic in wait_for_completion call + - Linux 4.12.1 + * cxlflash update request in the Xenial SRU stream (LP: #1702521) + - scsi: cxlflash: Combine the send queue locks + - scsi: cxlflash: Update cxlflash_afu_sync() to return errno + - scsi: cxlflash: Reset hardware queue context via specified register + - scsi: cxlflash: Schedule asynchronous reset of the host + - scsi: cxlflash: Handle AFU sync failures + - scsi: cxlflash: Track pending scsi commands in each hardware queue + - scsi: cxlflash: Flush pending commands in cleanup path + - scsi: cxlflash: Add scsi command abort handler + - scsi: cxlflash: Create character device to provide host management interface + - scsi: cxlflash: Separate AFU internal command handling from AFU sync + specifics + - scsi: cxlflash: Introduce host ioctl support + - scsi: cxlflash: Refactor AFU capability checking + - scsi: cxlflash: Support LUN provisioning + - scsi: cxlflash: Support AFU debug + - scsi: cxlflash: Support WS16 unmap + - scsi: cxlflash: Remove zeroing of private command data + - scsi: cxlflash: Update TMF command processing + - scsi: cxlflash: Avoid double free of character device + - scsi: cxlflash: Update send_tmf() parameters + - scsi: cxlflash: Update debug prints in reset handlers + * make snap-pkg support (LP: #1700747) + - make snap-pkg support + * Quirk for non-compliant PCI bridge on HiSilicon D05 board (LP: #1698706) + - SAUCE: PCI: Support hibmc VGA cards behind a misbehaving HiSilicon bridge + * arm64: fix crash reading /proc/kcore (LP: #1702749) + - fs/proc: kcore: use kcore_list type to check for vmalloc/module address + - arm64: mm: select CONFIG_ARCH_PROC_KCORE_TEXT + * Opal and POWER9 DD2 (LP: #1702159) + - SAUCE: powerpc/powernv: Tell OPAL about our MMU mode on POWER9 + * Data corruption with hio driver (LP: #1701316) + - SAUCE: hio: Fix incorrect use of enum req_opf values + * Miscellaneous Ubuntu changes + - SAUCE: (noup) Update spl to 0.6.5.10-1, zfs to 0.6.5.10-1ubuntu2 + - snapcraft.yaml: Sync with xenial + - [Config] CONFIG_CAVIUM_ERRATUM_30115=y + * Miscellaneous upstream changes + - Revert "UBUNTU: SAUCE: (efi-lockdown) efi: Add sysctls for secureboot and + MokSBState" + + [ Ubuntu: 4.12.0-6.7 ] + + * update ENA driver to 1.2.0k from net-next (LP: #1701575) + - net: ena: change return value for unsupported features unsupported return + value + - net: ena: add hardware hints capability to the driver + - net: ena: change sizeof() argument to be the type pointer + - net: ena: add reset reason for each device FLR + - net: ena: add support for out of order rx buffers refill + - net: ena: allow the driver to work with small number of msix vectors + - net: ena: use napi_schedule_irqoff when possible + - net: ena: separate skb allocation to dedicated function + - net: ena: use lower_32_bits()/upper_32_bits() to split dma address + - net: ena: update driver's rx drop statistics + - net: ena: update ena driver to version 1.2.0 + * APST gets enabled against explicit kernel option (LP: #1699004) + - nvme: explicitly disable APST on quirked devices + * Miscellaneous Ubuntu changes + - SAUCE: hio: Update to Huawei ES3000_V2 (2.1.0.40) + - SAUCE: hio updates for 4.12 + - SAUCE: Enable hio build + + [ Ubuntu: 4.12.0-5.6 ] + + * ERAT invalidate on context switch removal (LP: #1700819) + - powerpc: Only do ERAT invalidate on radix context switch on P9 DD1 + * powerpc: Invalidate ERAT on powersave wakeup for POWER9 (LP: #1700521) + - SAUCE: powerpc: Invalidate ERAT on powersave wakeup for POWER9 + * Miscellaneous Ubuntu changes + - d-i: Move qcom-emac from arm64 to shared nic-modules + * Rebase to v4.12 + + [ Ubuntu: 4.12.0-4.5 ] + + * aacraid driver may return uninitialized stack data to userspace + (LP: #1700077) + - SAUCE: scsi: aacraid: Don't copy uninitialized stack memory to userspace + * KILLER1435-S[0489:e0a2] BT cannot search BT 4.0 device (LP: #1699651) + - Bluetooth: btusb: Add support for 0489:e0a2 QCA_ROME device + * AACRAID for power9 platform (LP: #1689980) + - scsi: aacraid: Remove __GFP_DMA for raw srb memory + - scsi: aacraid: Fix DMAR issues with iommu=pt + - scsi: aacraid: Added 32 and 64 queue depth for arc natives + - scsi: aacraid: Set correct Queue Depth for HBA1000 RAW disks + - scsi: aacraid: Remove reset support from check_health + - scsi: aacraid: Change wait time for fib completion + - scsi: aacraid: Log count info of scsi cmds before reset + - scsi: aacraid: Print ctrl status before eh reset + - scsi: aacraid: Using single reset mask for IOP reset + - scsi: aacraid: Rework IOP reset + - scsi: aacraid: Add periodic checks to see IOP reset status + - scsi: aacraid: Rework SOFT reset code + - scsi: aacraid: Rework aac_src_restart + - scsi: aacraid: Use correct function to get ctrl health + - scsi: aacraid: Make sure ioctl returns on controller reset + - scsi: aacraid: Enable ctrl reset for both hba and arc + - scsi: aacraid: Add reset debugging statements + - scsi: aacraid: Remove reference to Series-9 + - scsi: aacraid: Update driver version to 50834 + * hibmc driver does not include "pci:" prefix in bus ID (LP: #1698700) + - SAUCE: drm: hibmc: Use set_busid function from drm core + * HiSilicon D05: installer doesn't appear on VGA (LP: #1698954) + - d-i: Add hibmc-drm to kernel-image udeb + * Fix /proc/cpuinfo revision for POWER9 DD2 (LP: #1698844) + - SAUCE: powerpc: Fix /proc/cpuinfo revision for POWER9 DD2 + * Miscellaneous Ubuntu changes + - [Config] CONFIG_SATA_MV=n and CONFIG_GENERIC_PHY=n for s390x + - [Config] CONFIG_ATA=n for s390x + - [Config] Update annotations for 4.12 + * Rebase to v4.12-rc7 + + [ Ubuntu: 4.12.0-3.4 ] + + * Miscellaneous upstream changes + - ufs: fix the logics for tail relocation + * Rebase to v4.12-rc6 + + [ Ubuntu: 4.12.0-2.3 ] + + * CVE-2014-9900 + - SAUCE: (no-up) net: Zeroing the structure ethtool_wolinfo in + ethtool_get_wol() + * System doesn't boot properly on Gigabyte AM4 motherboards (AMD Ryzen) + (LP: #1671360) + - pinctrl/amd: Use regular interrupt instead of chained + * extend-diff-ignore should use exact matches (LP: #1693504) + - [Packaging] exact extend-diff-ignore matches + * Miscellaneous Ubuntu changes + - SAUCE: efi: Don't print secure boot state from the efi stub + - ubuntu: vbox -- Update to 5.1.22-dfsg-1 + - SAUCE: vbox fixes for 4.12 + - Re-enable virtualbox build + - [Config] CONFIG_ORANGEFS_FS=m + - SAUCE: (noup) Update spl to 0.6.5.9-1ubuntu2, zfs to 0.6.5.9-5ubuntu7 + - Enable zfs build + * Rebase to v4.12-rc4 + * Rebase to v4.12-rc5 + + [ Ubuntu: 4.12.0-1.2 ] + + * Enable Matrox driver for Ubuntu 16.04.3 (LP: #1693337) + - [Config] Enable CONFIG_DRM_MGAG200 as module + * Support low-pin-count devices on Hisilicon SoCs (LP: #1677319) + - [Config] CONFIG_LIBIO=y on arm64 only + - SAUCE: LIBIO: Introduce a generic PIO mapping method + - SAUCE: OF: Add missing I/O range exception for indirect-IO devices + - [Config] CONFIG_HISILICON_LPC=y + - SAUCE: LPC: Support the device-tree LPC host on Hip06/Hip07 + - SAUCE: LIBIO: Support the dynamically logical PIO registration of ACPI host + I/O + - SAUCE: LPC: Add the ACPI LPC support + - SAUCE: PCI: Apply the new generic I/O management on PCI IO hosts + - SAUCE: PCI: Restore codepath for !CONFIG_LIBIO + * POWER9: Additional patches for TTY and CPU_IDLE (LP: #1674325) + - SAUCE: tty: Fix ldisc crash on reopened tty + * Miscellaneous Ubuntu changes + - [Debian] Add build-dep on libnuma-dev to enable 'perf bench numa' + - Rebase to v4.12-rc3 + * Rebase to v4.12-rc3 + + [ Ubuntu: 4.12.0-0.1 ] + + * please enable CONFIG_ARM64_LSE_ATOMICS (LP: #1691614) + - [Config] CONFIG_ARM64_LSE_ATOMICS=y + * [Regression] NUMA_BALANCING disabled on arm64 (LP: #1690914) + - [Config] CONFIG_NUMA_BALANCING{,_DEFAULT_ENABLED}=y on arm64 + * exec'ing a setuid binary from a threaded program sometimes fails to setuid + (LP: #1672819) + - SAUCE: exec: ensure file system accounting in check_unsafe_exec is correct + * Miscellaneous Ubuntu changes + - Update find-missing-sauce.sh to compare to artful + - Update dropped.txt + - SAUCE: (efi-lockdown) efi: Add EFI_SECURE_BOOT bit + - SAUCE: (efi-lockdown) Add the ability to lock down access to the running + kernel image + - SAUCE: (efi-lockdown) efi: Lock down the kernel if booted in secure boot + mode + - SAUCE: (efi-lockdown) Enforce module signatures if the kernel is locked down + - SAUCE: (efi-lockdown) Restrict /dev/mem and /dev/kmem when the kernel is + locked down + - SAUCE: (efi-lockdown) Add a sysrq option to exit secure boot mode + - SAUCE: (efi-lockdown) kexec: Disable at runtime if the kernel is locked down + - SAUCE: (efi-lockdown) Copy secure_boot flag in boot params across kexec + reboot + - SAUCE: (efi-lockdown) kexec_file: Disable at runtime if securelevel has been + set + - SAUCE: (efi-lockdown) hibernate: Disable when the kernel is locked down + - SAUCE: (efi-lockdown) uswsusp: Disable when the kernel is locked down + - SAUCE: (efi-lockdown) PCI: Lock down BAR access when the kernel is locked + down + - SAUCE: (efi-lockdown) x86: Lock down IO port access when the kernel is + locked down + - SAUCE: (efi-lockdown) x86: Restrict MSR access when the kernel is locked + down + - SAUCE: (efi-lockdown) asus-wmi: Restrict debugfs interface when the kernel + is locked down + - SAUCE: (efi-lockdown) ACPI: Limit access to custom_method when the kernel is + locked down + - SAUCE: (efi-lockdown) acpi: Ignore acpi_rsdp kernel param when the kernel + has been locked down + - SAUCE: (efi-lockdown) acpi: Disable ACPI table override if the kernel is + locked down + - SAUCE: (efi-lockdown) acpi: Disable APEI error injection if the kernel is + locked down + - SAUCE: (efi-lockdown) Enable cold boot attack mitigation + - SAUCE: (efi-lockdown) bpf: Restrict kernel image access functions when the + kernel is locked down + - SAUCE: (efi-lockdown) scsi: Lock down the eata driver + - SAUCE: (efi-lockdown) Prohibit PCMCIA CIS storage when the kernel is locked + down + - SAUCE: (efi-lockdown) Lock down TIOCSSERIAL + - SAUCE: (efi-lockdown) KEYS: Allow unrestricted boot-time addition of keys to + secondary keyring + - SAUCE: (efi-lockdown) efi: Add EFI signature data types + - SAUCE: (efi-lockdown) efi: Add an EFI signature blob parser + - SAUCE: (efi-lockdown) MODSIGN: Import certificates from UEFI Secure Boot + - SAUCE: (efi-lockdown) MODSIGN: Allow the "db" UEFI variable to be suppressed + - SAUCE: (efi-lockdown) efi: Sanitize boot_params in efi stub + - SAUCE: (efi-lockdown) efi: Add secure_boot state and status bit for + MokSBState + - SAUCE: (efi-lockdown) efi: Add sysctls for secureboot and MokSBState + - [Config] Set values for UEFI secure boot lockdown options + - Disable virtualbox build + - Disable hio build + - SAUCE: securityfs: Replace CURRENT_TIME with current_time() + - Disable zfs build + - [Debian] Work out upstream tag for use with gen-auto-reconstruct + - SAUCE: Import aufs driver + - SAUCE: aufs -- Include linux/mm.h in fs/aufs/file.h + - [Config] Enable aufs + - SAUCE: perf callchain: Include errno.h on x86 unconditinally + * Rebase to v4.12-rc2 + + -- Marcelo Henrique Cerri Wed, 22 Nov 2017 13:58:15 -0200 + +linux-azure (4.13.0-1000.0) xenial; urgency=low + + * Empty. + + -- Marcelo Henrique Cerri Wed, 22 Nov 2017 11:17:34 -0200 + +linux-azure (4.11.0-1016.16) xenial; urgency=low + + * linux-azure: 4.11.0-1016.16 -proposed tracker (LP: #1736123) + + * CVE-2017-1000405 + - mm, thp: Do not make page table dirty unconditionally in touch_p[mu]d() + + * CVE-2017-16939 + - ipsec: Fix aborted xfrm policy dump crash + + -- Marcelo Henrique Cerri Tue, 05 Dec 2017 14:20:03 -0200 + +linux-azure (4.11.0-1015.15) xenial; urgency=low + + * linux-azure: 4.11.0-1015.15 -proposed tracker (LP: #1728930) + + * CVE-2017-12188 + - KVM: nVMX: update last_nonleaf_level when initializing nested EPT + - KVM: MMU: always terminate page walks at level 1 + + -- Kleber Sacilotto de Souza Thu, 02 Nov 2017 17:43:02 +0100 + +linux-azure (4.11.0-1014.14) xenial; urgency=low + + * linux-azure: 4.11.0-1014.14 -proposed tracker (LP: #1724060) + + * [Hyper-V] linux-azure cifs mount error caused by missing nls_utf8.ko module + (LP: #1719624) + - [config] azure: move nls_utf8.ko to linux-image package + + -- Thadeu Lima de Souza Cascardo Mon, 16 Oct 2017 17:24:42 -0200 + +linux-azure (4.11.0-1013.13) xenial; urgency=low + + * linux-azure: 4.11.0-1013.13 -proposed tracker (LP: #1720818) + + * [Hyper-V] Docker failures with linux-azure 4.11.0-1011 (LP: #1719045) + - Revert "UBUNTU: SAUCE: tracing/hyper-v: trace hyperv_mmu_flush_tlb_others()" + - Revert "UBUNTU: SAUCE: x86/hyper-v: support extended CPU ranges for TLB + flush hypercalls" + - Revert "UBUNTU: SAUCE: x86/hyper-v: use hypercall for remote TLB flush" + + -- Marcelo Henrique Cerri Mon, 02 Oct 2017 12:20:26 -0300 + +linux-azure (4.11.0-1012.12) xenial; urgency=low + + * linux-azure: 4.11.0-1012.12 -proposed tracker (LP: #1718763) + + * linux-azure: KVM nested virtualization is disabled (LP: #1718740) + - [Config] azure: enable KVM support + + -- Marcelo Henrique Cerri Thu, 21 Sep 2017 16:41:14 -0300 + +linux-azure (4.11.0-1011.11) xenial; urgency=low + + * linux-azure: 4.11.0-1011.11 -proposed tracker (LP: #1718265) + + * KVP scripts location for linux-azure image (LP: #1718264) + - SAUCE: azure: hv_kvp_daemon: search for HV scripts in /usr/sbin/ + + * [linux-azure] RTC options not present in kernel config (LP: #1718262) + - [Config] azure: Enable RTC + + -- Marcelo Henrique Cerri Tue, 19 Sep 2017 15:47:22 -0300 + +linux-azure (4.11.0-1010.10) xenial; urgency=low + + * linux-azure: 4.11.0-1010.10 -proposed tracker (LP: #1717616) + + * linux-azure: persistent memory is not working (LP: #1715755) + - ext4: fix fault handling when mounted with -o dax,ro + - [Config] azure: CONFIG_ND_BLK=y + - [Config] azure: CONFIG_ACPI_NFIT=y + + * [Hyper-V] 16.04 kexec-tools doesn't match linux-azure (LP: #1712867) + - x86/KASLR: Fix kexec kernel boot crash when KASLR randomization fails + + -- Marcelo Henrique Cerri Fri, 15 Sep 2017 20:06:10 -0300 + +linux-azure (4.11.0-1009.9) xenial; urgency=low + + * linux-azure: 4.11.0-1009.9 -proposed tracker (LP: #1715731) + + * [Hyper-V] Read TSC frequency from a synthetic MSR (LP: #1715489) + - x86/hyperv: Check frequency MSRs presence according to the specification + - x86/hyperv: Read TSC frequency from a synthetic MSR + + * [Hyper-V] linux-azure: rdma_ucm should autoload on HPC images (LP: #1712915) + - azure: force rdma_ucm to be loaded when hv_network_direct_* is loaded + + -- Marcelo Henrique Cerri Thu, 07 Sep 2017 16:28:39 -0300 + +linux-azure (4.11.0-1008.8) xenial; urgency=low + + * linux-azure: 4.11.0-1008.8 -proposed tracker (LP: #1713823) + + * linux-azure: add support for opengcs (LP: #1713812) + - SAUCE: Added vsock transport support to 9pfs + - SAUCE: NVDIMM: reducded ND_MIN_NAMESPACE_SIZE from 4MB to 4KB (page size) + + -- Marcelo Henrique Cerri Tue, 29 Aug 2017 18:14:56 -0300 + +linux-azure (4.11.0-1007.7) xenial; urgency=low + + * linux-azure: 4.11.0-1007.7 -proposed tracker (LP: #1712446) + + * [Hyper-V] linux-azure merge netvsc upstream VF & misc patches (LP: #1711243) + - netvsc: delay setup of VF device + - netvsc: Initialize 64-bit stats seqcount + - netvsc: fix race on sub channel creation + - netvsc: propagate MAC address change to VF slave + - netvsc: optimize receive completions + + * linux-azure: Please move the rdma_ucm driver from -extras to the main kernel + package (LP: #1711408) + - azure: move rdma_ucm module to the main kernel package + + * linux-azure: enable DAX config options (LP: #1711230) + - [config] azure: DAX support + + * Miscellaneous upstream changes + - Revert "UBUNTU: [Config] select gcc-6 explicitly" + + [ Ubuntu: 4.11.0-14.22 ] + + * CVE-2017-1000112 + - udp: consistently apply ufo or fragmentation + * CVE-2017-1000111 + - packet: fix tp_reserve race in packet_set_ring + * linux 4.11.0-13.19 ADT test failure with linux 4.11.0-13.19 (LP: #1709590) + - SAUCE: ZFS: Don't take spin lock on rwlock owner + * [Config] select gcc-6 explicitly + + [ Ubuntu: 4.11.0-13.19 ] + + * CVE-2017-7533 + - dentry name snapshots + + [ Ubuntu: 4.11.0-12.18 ] + + * linux: 4.11.0-12.18 -proposed tracker (LP: #1707635) + - no change rebuild to pick up the new binutils. + * Adt tests of src:linux time out often on armhf lxc containers (LP: #1705495) + - [Packaging] tests -- reduce rebuild test to one flavour + - [Packaging] tests -- reduce rebuild test to one flavour -- use filter + * [ARM64] config EDAC_GHES=y depends on EDAC_MM_EDAC=y (LP: #1706141) + - [Config] set EDAC_MM_EDAC=y for ARM64 + * [Hyper-V] hv_netvsc: Exclude non-TCP port numbers from vRSS hashing + (LP: #1690174) + - hv_netvsc: Exclude non-TCP port numbers from vRSS hashing + * ath10k doesn't report full RSSI information (LP: #1706531) + - ath10k: add per chain RSSI reporting + * ideapad_laptop don't support v310-14isk (LP: #1705378) + - platform/x86: ideapad-laptop: Add several models to no_hw_rfkill + * Ubuntu 16.04.3: Qemu fails on P9 (LP: #1686019) + - KVM: PPC: Pass kvm* to kvmppc_find_table() + - KVM: PPC: Use preregistered memory API to access TCE list + - KVM: PPC: VFIO: Add in-kernel acceleration for VFIO + - powerpc/powernv/iommu: Add real mode version of iommu_table_ops::exchange() + - powerpc/iommu/vfio_spapr_tce: Cleanup iommu_table disposal + - powerpc/vfio_spapr_tce: Add reference counting to iommu_table + - powerpc/mmu: Add real mode support for IOMMU preregistered memory + - KVM: PPC: Reserve KVM_CAP_SPAPR_TCE_VFIO capability number + - KVM: PPC: Book3S HV: Add radix checks in real-mode hypercall handlers + * hns: ethtool selftest crashes system (LP: #1705712) + - net/hns:bugfix of ethtool -t phy self_test + * ThunderX: soft lockup on 4.8+ kernels when running qemu-efi with vhost=on + (LP: #1673564) + - KVM: arm/arm64: vgic-v3: Use PREbits to infer the number of ICH_APxRn_EL2 + registers + - KVM: arm/arm64: vgic-v3: Fix nr_pre_bits bitfield extraction + - arm64: Add a facility to turn an ESR syndrome into a sysreg encoding + - KVM: arm/arm64: vgic-v3: Add accessors for the ICH_APxRn_EL2 registers + - KVM: arm64: Make kvm_condition_valid32() accessible from EL2 + - KVM: arm64: vgic-v3: Add hook to handle guest GICv3 sysreg accesses at EL2 + - KVM: arm64: vgic-v3: Add ICV_BPR1_EL1 handler + - KVM: arm64: vgic-v3: Add ICV_IGRPEN1_EL1 handler + - KVM: arm64: vgic-v3: Add ICV_IAR1_EL1 handler + - KVM: arm64: vgic-v3: Add ICV_EOIR1_EL1 handler + - KVM: arm64: vgic-v3: Add ICV_AP1Rn_EL1 handler + - KVM: arm64: vgic-v3: Add ICV_HPPIR1_EL1 handler + - KVM: arm64: vgic-v3: Enable trapping of Group-1 system registers + - KVM: arm64: Enable GICv3 Group-1 sysreg trapping via command-line + - KVM: arm64: vgic-v3: Add ICV_BPR0_EL1 handler + - KVM: arm64: vgic-v3: Add ICV_IGNREN0_EL1 handler + - KVM: arm64: vgic-v3: Add misc Group-0 handlers + - KVM: arm64: vgic-v3: Enable trapping of Group-0 system registers + - KVM: arm64: Enable GICv3 Group-0 sysreg trapping via command-line + - arm64: Add MIDR values for Cavium cn83XX SoCs + - arm64: Add workaround for Cavium Thunder erratum 30115 + - KVM: arm64: vgic-v3: Add ICV_DIR_EL1 handler + - KVM: arm64: vgic-v3: Add ICV_RPR_EL1 handler + - KVM: arm64: vgic-v3: Add ICV_CTLR_EL1 handler + - KVM: arm64: vgic-v3: Add ICV_PMR_EL1 handler + - KVM: arm64: Enable GICv3 common sysreg trapping via command-line + - KVM: arm64: vgic-v3: Log which GICv3 system registers are trapped + - arm64: KVM: Make unexpected reads from WO registers inject an undef + - KVM: arm64: Log an error if trapping a read-from-write-only GICv3 access + - KVM: arm64: Log an error if trapping a write-to-read-only GICv3 access + * ath9k freezes suspend resume Ubuntu 17.04 (LP: #1697027) + - ath9k: fix an invalid pointer dereference in ath9k_rng_stop() + * xhci_hcd: ERROR Transfer event TRB DMA ptr not part of current TD ep_index 2 + comp_code 13 (LP: #1667750) + - xhci: Bad Ethernet performance plugged in ASM1042A host + * Migrating KSM page causes the VM lock up as the KSM page merging list is too + large (LP: #1680513) + - ksm: introduce ksm_max_page_sharing per page deduplication limit + - ksm: fix use after free with merge_across_nodes = 0 + - ksm: cleanup stable_node chain collapse case + - ksm: swap the two output parameters of chain/chain_prune + - ksm: optimize refile of stable_node_dup at the head of the chain + * Artful update to v4.11.12 stable release (LP: #1706067) + - net/phy: micrel: configure intterupts after autoneg workaround + - ipv6: avoid unregistering inet6_dev for loopback + - netvsc: don't access netdev->num_rx_queues directly + - sfc: Fix MCDI command size for filter operations + - net: account for current skb length when deciding about UFO + - net: dp83640: Avoid NULL pointer dereference. + - tcp: reset sk_rx_dst in tcp_disconnect() + - net: prevent sign extension in dev_get_stats() + - virtio-net: serialize tx routine during reset + - net: sched: Fix one possible panic when no destroy callback + - mlxsw: spectrum_router: Fix NULL pointer dereference + - rocker: move dereference before free + - bpf: prevent leaking pointer via xadd on unpriviledged + - net: handle NAPI_GRO_FREE_STOLEN_HEAD case also in napi_frags_finish() + - net/mlx5: Cancel delayed recovery work when unloading the driver + - net/mlx5e: Fix TX carrier errors report in get stats ndo + - ipv6: dad: don't remove dynamic addresses if link is down + - vxlan: fix hlist corruption + - geneve: fix hlist corruption + - net: core: Fix slab-out-of-bounds in netdev_stats_to_stats64 + - liquidio: fix bug in soft reset failure detection + - net: ipv6: Compare lwstate in detecting duplicate nexthops + - vrf: fix bug_on triggered by rx when destroying a vrf + - rds: tcp: use sock_create_lite() to create the accept socket + - net/mlx5e: Initialize CEE's getpermhwaddr address buffer to 0xff + - cxgb4: fix BUG() on interrupt deallocating path of ULD + - tap: convert a mutex to a spinlock + - bridge: mdb: fix leak on complete_info ptr on fail path + - brcmfmac: fix possible buffer overflow in brcmf_cfg80211_mgmt_tx() + - sfc: don't read beyond unicast address list + - Adding asm-prototypes.h for genksyms to generate crc + - sed regex in Makefile.build requires line break between exported symbols + - Adding the type of exported symbols + - sparc64: Fix gup_huge_pmd + - block: Fix a blk_exit_rl() regression + - brcmfmac: Fix a memory leak in error handling path in + 'brcmf_cfg80211_attach' + - brcmfmac: Fix glom_skb leak in brcmf_sdiod_recv_chain + - efi: Process the MEMATTR table only if EFI_MEMMAP is enabled + - cfg80211: Define nla_policy for NL80211_ATTR_LOCAL_MESH_POWER_MODE + - cfg80211: Validate frequencies nested in NL80211_ATTR_SCAN_FREQUENCIES + - cfg80211: Check if PMKID attribute is of expected size + - cfg80211: Check if NAN service ID is of expected size + - drm/amdgpu/gfx6: properly cache mc_arb_ramcfg + - irqchip/gic-v3: Fix out-of-bound access in gic_set_affinity + - parisc: Report SIGSEGV instead of SIGBUS when running out of stack + - parisc: use compat_sys_keyctl() + - parisc: DMA API: return error instead of BUG_ON for dma ops on non dma devs + - parisc/mm: Ensure IRQs are off in switch_mm() + - tools/lib/lockdep: Reduce MAX_LOCK_DEPTH to avoid overflowing lock_chain/: + Depth + - thp, mm: fix crash due race in MADV_FREE handling + - kernel/extable.c: mark core_kernel_text notrace + - mm/list_lru.c: fix list_lru_count_node() to be race free + - fs/dcache.c: fix spin lockup issue on nlru->lock + - checkpatch: silence perl 5.26.0 unescaped left brace warnings + - binfmt_elf: use ELF_ET_DYN_BASE only for PIE + - arm: move ELF_ET_DYN_BASE to 4MB + - arm64: move ELF_ET_DYN_BASE to 4GB / 4MB + - powerpc: move ELF_ET_DYN_BASE to 4GB / 4MB + - s390: reduce ELF_ET_DYN_BASE + - exec: Limit arg stack to at most 75% of _STK_LIM + - powerpc/kexec: Fix radix to hash kexec due to IAMR/AMOR + - ARM64: dts: marvell: armada37xx: Fix timer interrupt specifiers + - arm64: Preventing READ_IMPLIES_EXEC propagation + - vt: fix unchecked __put_user() in tioclinux ioctls + - rcu: Add memory barriers for NOCB leader wakeup + - nvmem: core: fix leaks on registration errors + - Drivers: hv: vmbus: Close timing hole that can corrupt per-cpu page + - mnt: In umount propagation reparent in a separate pass + - mnt: In propgate_umount handle visiting mounts in any order + - mnt: Make propagate_umount less slow for overlapping mount propagation trees + - selftests/capabilities: Fix the test_execve test + - mm: fix overflow check in expand_upwards() + - crypto: talitos - Extend max key length for SHA384/512-HMAC and AEAD + - crypto: atmel - only treat EBUSY as transient if backlog + - crypto: sha1-ssse3 - Disable avx2 + - crypto: caam - properly set IV after {en,de}crypt + - crypto: caam - fix signals handling + - sched/fair, cpumask: Export for_each_cpu_wrap() + - sched/topology: Fix building of overlapping sched-groups + - sched/topology: Optimize build_group_mask() + - sched/topology: Fix overlapping sched_group_mask + - PM / wakeirq: Convert to SRCU + - ALSA: x86: Clear the pdata.notify_lpe_audio pointer before teardown + - PM / QoS: return -EINVAL for bogus strings + - kvm: vmx: Do not disable intercepts for BNDCFGS + - kvm: x86: Guest BNDCFGS requires guest MPX support + - kvm: vmx: Check value written to IA32_BNDCFGS + - kvm: vmx: allow host to access guest MSR_IA32_BNDCFGS + - Linux 4.11.12 + * Artful update to v4.11.11 stable release (LP: #1706066) + - mqueue: fix a use-after-free in sys_mq_notify() + - proc: Fix proc_sys_prune_dcache to hold a sb reference + - locking/rwsem-spinlock: Fix EINTR branch in __down_write_common() + - staging: vt6556: vnt_start Fix missing call to vnt_key_init_table. + - staging: comedi: fix clean-up of comedi_class in comedi_init() + - crypto: caam - fix gfp allocation flags (part I) + - crypto: rsa-pkcs1pad - use constant time memory comparison for MACs + - ext4: check return value of kstrtoull correctly in reserved_clusters_store + - x86/mm/pat: Don't report PAT on CPUs that don't support it + - Linux 4.11.11 + * Change CONFIG_IBMVETH to module (LP: #1704479) + - [Config] CONFIG_IBMVETH=m + * hns: use after free in hns_nic_net_xmit_hw (LP: #1704885) + - net: hns: Fix a skb used after free bug + * Opal and POWER9 DD2 (LP: #1702159) + - powerpc/powernv: Fix boot on Power8 bare metal due to opal_configure_cores() + * CVE-2017-1000364 + - mm/mmap.c: do not blow on PROT_NONE MAP_FIXED holes in the stack + - mm/mmap.c: expand_downwards: don't require the gap if !vm_prev + * [Xenial] nvme: Quirks for PM1725 controllers (LP: #1704435) + - nvme: Quirks for PM1725 controllers + * bonding: stack dump when unregistering a netdev (LP: #1704102) + - bonding: avoid NETDEV_CHANGEMTU event when unregistering slave + * Ubuntu 16.04 IOB Error when the Mustang board rebooted (LP: #1693673) + - drivers: net: xgene: Fix redundant prefetch buffer cleanup + * Ubuntu16.04: NVMe 4K+T10 DIF/DIX format returns I/O error on dd with split + op (LP: #1689946) + - blk-mq: NVMe 512B/4K+T10 DIF/DIX format returns I/O error on dd with split + op + * linux >= 4.2: bonding 802.3ad does not work with 5G, 25G and 50G link speeds + (LP: #1697892) + - bonding: add 802.3ad support for 25G speeds + - bonding: fix 802.3ad support for 5G and 50G speeds + * hns: under heavy load, NIC may fail and require reboot (LP: #1704146) + - net: hns: Bugfix for Tx timeout handling in hns driver + * New ACPI identifiers for ThunderX SMMU (LP: #1703437) + - iommu/arm-smmu: Plumb in new ACPI identifiers + * Transparent hugepages should default to enabled=madvise (LP: #1703742) + - [Config] use CONFIG_TRANSPARENT_HUGEPAGE_MADVISE=y as default + * Miscellaneous Ubuntu changes + - [Config] CONFIG_CAVIUM_ERRATUM_30115=y + * Miscellaneous upstream changes + - platform/x86: thinkpad_acpi: guard generic hotkey case + - platform/x86: thinkpad_acpi: add mapping for new hotkeys + - selftest/memfd/Makefile: Fix build error + + -- Marcelo Henrique Cerri Tue, 22 Aug 2017 20:28:34 -0300 + +linux-azure (4.11.0-1006.6) xenial; urgency=low + + * linux-azure: 4.11.0-1006.6 -proposed tracker (LP: #1710944) + + * Please only recommend or suggest initramfs-tools | linux-initramfs-tool for + kernels able to boot without initramfs (LP: #1700972) + - [Debian] Don't abort installation if update-initramfs is missing + + * linux-azure: vmbus-rdma: Use underscore to separate major and minor host OS + version (LP: #1709101) + - SAUCE: vmbus-rdma: Use _ to separate major and minor host OS version + + * linux-azure: prevent RDMA drivers from being hot plugged (LP: #1708699) + - azure: Prevent hv_network_direct_* drivers from being hot plugged + + * Infiniband: add missing values in queue pair attributes (LP: #1709681) + - RDMA/core: Initialize port_num in qp_attr + + * [Hyper-V] Transparent SR-IOV solves bonding race conditions (LP: #1708469) + - Revert "UBUNTU: SAUCE: netvsc: keep track of vf passthrough statistics" + - Revert "UBUNTU: SAUCE: netvsc: optional transparent fail over" + - Revert "UBUNTU: SAUCE: netvsc: optimize calculation of number of slots" + - hv_netvsc: Fix the carrier state error when data path is off + - SAUCE: netvsc: add some rtnl_dereference annotations + - SAUCE: netvsc: include rtnetlink.h + - SAUCE: netvsc: transparent VF management + - SAUCE: netvsc: add documentation + - netvsc: remove bonding setup script + - SAUCE: netvsc: make sure and unregister datapath + + * [Hyper-V] netvsc: fix rtnl deadlock on unregister of vf (LP: #1708995) + - SAUCE: netvsc: fix rtnl deadlock on unregister of vf + + -- Kamal Mostafa Tue, 15 Aug 2017 11:40:28 -0700 + +linux-azure (4.11.0-1005.5) xenial; urgency=low + + * linux-azure: 4.11.0-1005.5 -proposed tracker (LP: #1708017) + + * linux-azure: Update Hyper-V support (LP: #1707285) + - x86/hyperv: Implement hv_get_tsc_page() + - x86/hyperv: Move TSC reading method to asm/mshyperv.h + - x86/vdso: Add VCLOCK_HVCLOCK vDSO clock read method + - netvsc: fix hang on netvsc module removal + - hyperv: remove unnecessary return variable + - vmbus: simplify hv_ringbuffer_read + - scsi: storvsc: use in place iterator function + - netvsc: Fix a bug in sub-channel handling + - vmbus: refactor hv_signal_on_read + - vmbus: eliminate duplicate cached index + - vmbus: more host signalling avoidance + - tools: hv: properly handle long paths + - HV: properly delay KVP packets when negotiation is in progress + - netvsc: Initialize all channel related state prior to opening the channel + - netvsc: use napi_consume_skb + - netvsc: fix use after free on module removal + - netvsc: pass net_device to netvsc_init_buf and netvsc_connect_vsp + - netvsc: move filter setting to rndis_device + - netvsc: Properly initialize the return value + - netvsc: change order of steps in setting queues + - netvsc: change logic for change mtu and set_queues + - netvsc: use ERR_PTR to avoid dereference issues + - netvsc: prefetch the first incoming ring element + - SAUCE: netvsc: convert ring_size to unsigned + - SAUCE: netvsc: allow overriding send/recv buffer size + - hv_utils: drop .getcrosststamp() support from PTP driver + - vmbus: add prefetch to ring buffer iterator + - netvsc: make sure napi enabled before vmbus_open + - Drivers: hv: util: Make hv_poll_channel() a little more efficient + - hv_utils: fix TimeSync work on pre-TimeSync-v4 hosts + - x86/hyper-v: stash the max number of virtual/logical processor + - SAUCE: x86/hyper-v: make hv_do_hypercall() inline + - SAUCE: x86/hyper-v: fast hypercall implementation + - SAUCE: hyper-v: use fast hypercall for HVCALL_SIGNAL_EVENT + - SAUCE: x86/hyper-v: implement rep hypercalls + - SAUCE: hyper-v: globalize vp_index + - SAUCE: x86/hyper-v: use hypercall for remote TLB flush + - SAUCE: x86/hyper-v: support extended CPU ranges for TLB flush hypercalls + - SAUCE: tracing/hyper-v: trace hyperv_mmu_flush_tlb_others() + - netvsc: fix net poll mode + - netvsc: fix RCU warning in get_stats + - Drivers: hv: vmbus: Close timing hole that can corrupt per-cpu page + - PCI: hv: Convert hv_pci_dev.refs from atomic_t to refcount_t + - PCI: hv: Fix comment formatting and use proper integer fields + - PCI: hv: Use page allocation for hbus structure + - PCI: hv: Temporary own CPU-number-to-vCPU-number infra + - PCI: hv: Add vPCI version protocol negotiation + - PCI: hv: Use vPCI protocol version 1.2 + - Revert "UBUNTU: SAUCE: vmbus: add the matching tasklet_enable() in + vmbus_close_internal()" + - vmbus: re-enable channel tasklet + - SAUCE: vmbus: don't need to check interrupt mask on read side + - netvsc: use hv_get_bytes_to_read + - SAUCE: netvsc: optimize calculation of number of slots + - SAUCE: netvsc: optional transparent fail over + - SAUCE: netvsc: keep track of vf passthrough statistics + - SAUCE: hv-sock: a temporary workaround for the pending_send_size issue + - SAUCE: hv-sock: avoid double FINs if shutdown() is called + + -- Marcelo Henrique Cerri Tue, 01 Aug 2017 17:52:08 -0300 + +linux-azure (4.11.0-1004.4) xenial; urgency=low + + * linux-azure: 4.11.0-1004.4 -proposed tracker (LP: #1707061) + + * Please only recommend or suggest initramfs-tools | linux-initramfs-tool for + kernels able to boot without initramfs (LP: #1700972) + - [Debian] Don't depend on initramfs-tools + + * [Hyper-V] hv_netvsc: Exclude non-TCP port numbers from vRSS hashing + (LP: #1690174) + - hv_netvsc: Exclude non-TCP port numbers from vRSS hashing + + * [Hyper-V] Add infiniband support for Azure HPC (LP: #1701744) + - SAUCE: Add infiniband driver for Azure HPC + - SAUCE: Add driver build configuration to infiniband + - SAUCE: move vmbus-rdma to vmbus-rdma/vmbus-rdma-142 + - SAUCE: vmbus-rdma: add driver for host OS version 144 + - [Config] CONFIG_HYPERV_INFINIBAND_ND=m + - SAUCE: vmbus-rdma: add minor host OS version to modules + + * linux-azure: disable unused modules in the -extra package (LP: #1706165) + - [Config] Remove unused modules from -extra package + + [ Ubuntu: 4.11.0-11.16 ] + + * linux: 4.11.0-11.16 -proposed tracker (LP: #1703901) + * Artful update to v4.11.10 stable release (LP: #1703854) + - fs: add a VALID_OPEN_FLAGS + - fs: completely ignore unknown open flags + - driver core: platform: fix race condition with driver_override + - RDMA/uverbs: Check port number supplied by user verbs cmds + - ceph: choose readdir frag based on previous readdir reply + - tracing/kprobes: Allow to create probe with a module name starting with a + digit + - usb: dwc3: replace %p with %pK + - USB: serial: cp210x: add ID for CEL EM3588 USB ZigBee stick + - Add USB quirk for HVR-950q to avoid intermittent device resets + - usb: usbip: set buffer pointers to NULL after free + - usb: Fix typo in the definition of Endpoint[out]Request + - USB: core: fix device node leak + - arm: remove wrong CONFIG_PROC_SYSCTL ifdef + - pinctrl: sh-pfc: r8a7794: Swap ATA signals + - pinctrl: sh-pfc: r8a7791: Fix SCIF2 pinmux data + - pinctrl: sh-pfc: r8a7791: Add missing DVC_MUTE signal + - pinctrl: sh-pfc: r8a7795: Fix hscif2_clk_b and hscif4_ctrl + - pinctrl: meson: meson8b: fix the NAND DQS pins + - pinctrl: stm32: Fix bad function call + - pinctrl: sunxi: Fix SPDIF function name for A83T + - pinctrl: core: Fix warning by removing bogus code + - pinctrl: mxs: atomically switch mux and drive strength config + - pinctrl: sh-pfc: r8a7791: Add missing HSCIF1 pinmux data + - pinctrl: sh-pfc: Update info pointer after SoC-specific init + - USB: serial: option: add two Longcheer device ids + - USB: serial: qcserial: new Sierra Wireless EM7305 device ID + - xhci: Limit USB2 port wake support for AMD Promontory hosts + - gfs2: Fix glock rhashtable rcu bug + - Add "shutdown" to "struct class". + - tpm: Issue a TPM2_Shutdown for TPM2 devices. + - tpm: fix a kernel memory leak in tpm-sysfs.c + - x86/uaccess: Optimize copy_user_enhanced_fast_string() for short strings + - xen: avoid deadlock in xenbus driver + - crypto: drbg - Fixes panic in wait_for_completion call + - rt286: add Thinkpad Helix 2 to force_combo_jack_table + - Linux 4.11.10 + * CVE-2017-10810 + - drm/virtio: don't leak bo on drm_gem_object_init failure + * cxlflash update request in the Xenial SRU stream (LP: #1702521) + - scsi: cxlflash: Separate RRQ processing from the RRQ interrupt handler + - scsi: cxlflash: Serialize RRQ access and support offlevel processing + - scsi: cxlflash: Implement IRQ polling for RRQ processing + - scsi: cxlflash: Update sysfs helper routines to pass config structure + - scsi: cxlflash: Support dynamic number of FC ports + - scsi: cxlflash: Remove port configuration assumptions + - scsi: cxlflash: Hide FC internals behind common access routine + - scsi: cxlflash: SISlite updates to support 4 ports + - scsi: cxlflash: Support up to 4 ports + - scsi: cxlflash: Fence EEH during probe + - scsi: cxlflash: Remove unnecessary DMA mapping + - scsi: cxlflash: Fix power-of-two validations + - scsi: cxlflash: Fix warnings/errors + - scsi: cxlflash: Improve asynchronous interrupt processing + - scsi: cxlflash: Support multiple hardware queues + - scsi: cxlflash: Add hardware queues attribute + - scsi: cxlflash: Introduce hardware queue steering + - cxl: Enable PCI device IDs for future IBM CXL adapters + - scsi: cxlflash: Select IRQ_POLL + - scsi: cxlflash: Combine the send queue locks + - scsi: cxlflash: Update cxlflash_afu_sync() to return errno + - scsi: cxlflash: Reset hardware queue context via specified register + - scsi: cxlflash: Schedule asynchronous reset of the host + - scsi: cxlflash: Handle AFU sync failures + - scsi: cxlflash: Track pending scsi commands in each hardware queue + - scsi: cxlflash: Flush pending commands in cleanup path + - scsi: cxlflash: Add scsi command abort handler + - scsi: cxlflash: Create character device to provide host management interface + - scsi: cxlflash: Separate AFU internal command handling from AFU sync + specifics + - scsi: cxlflash: Introduce host ioctl support + - scsi: cxlflash: Refactor AFU capability checking + - scsi: cxlflash: Support LUN provisioning + - scsi: cxlflash: Support AFU debug + - scsi: cxlflash: Support WS16 unmap + - scsi: cxlflash: Remove zeroing of private command data + - scsi: cxlflash: Update TMF command processing + - scsi: cxlflash: Avoid double free of character device + - scsi: cxlflash: Update send_tmf() parameters + - scsi: cxlflash: Update debug prints in reset handlers + * make snap-pkg support (LP: #1700747) + - make snap-pkg support + * Quirk for non-compliant PCI bridge on HiSilicon D05 board (LP: #1698706) + - SAUCE: PCI: Support hibmc VGA cards behind a misbehaving HiSilicon bridge + * arm64: fix crash reading /proc/kcore (LP: #1702749) + - fs/proc: kcore: use kcore_list type to check for vmalloc/module address + - arm64: mm: select CONFIG_ARCH_PROC_KCORE_TEXT + * Opal and POWER9 DD2 (LP: #1702159) + - SAUCE: powerpc/powernv: Tell OPAL about our MMU mode on POWER9 + * Data corruption with hio driver (LP: #1701316) + - SAUCE: hio: Fix incorrect use of enum req_opf values + * Artful update to v4.11.9 stable release (LP: #1702515) + - net: don't call strlen on non-terminated string in dev_set_alias() + - net: Fix inconsistent teardown and release of private netdev state. + - net: s390: fix up for "Fix inconsistent teardown and release of private + netdev state" + - mac80211: free netdev on dev_alloc_name() error + - decnet: dn_rtmsg: Improve input length sanitization in + dnrmg_receive_user_skb + - net: Zero ifla_vf_info in rtnl_fill_vfinfo() + - net: ipv6: Release route when device is unregistering + - net: vrf: Make add_fib_rules per network namespace flag + - af_unix: Add sockaddr length checks before accessing sa_family in bind and + connect handlers + - Fix an intermittent pr_emerg warning about lo becoming free. + - sctp: disable BH in sctp_for_each_endpoint + - net: caif: Fix a sleep-in-atomic bug in cfpkt_create_pfx + - net: tipc: Fix a sleep-in-atomic bug in tipc_msg_reverse + - net/mlx5: Remove several module events out of ethtool stats + - net/mlx5e: Added BW check for DIM decision mechanism + - net/mlx5e: Fix wrong indications in DIM due to counter wraparound + - net/mlx5: Enable 4K UAR only when page size is bigger than 4K + - proc: snmp6: Use correct type in memset + - igmp: acquire pmc lock for ip_mc_clear_src() + - igmp: add a missing spin_lock_init() + - qmi_wwan: new Telewell and Sierra device IDs + - net: don't global ICMP rate limit packets originating from loopback + - ipv6: fix calling in6_ifa_hold incorrectly for dad work + - sctp: return next obj by passing pos + 1 into sctp_transport_get_idx + - net/mlx5e: Fix min inline value for VF rep SQs + - net/mlx5e: Avoid doing a cleanup call if the profile doesn't have it + - net/mlx5: Wait for FW readiness before initializing command interface + - net/mlx5e: Fix timestamping capabilities reporting + - decnet: always not take dst->__refcnt when inserting dst into hash table + - net: 8021q: Fix one possible panic caused by BUG_ON in free_netdev + - ipv6: Do not leak throw route references + - rtnetlink: add IFLA_GROUP to ifla_policy + - netfilter: synproxy: fix conntrackd interaction + - NFSv4.x/callback: Create the callback service through svc_create_pooled + - xen/blkback: don't use xen_blkif_get() in xen-blkback kthread + - MIPS: head: Reorder instructions missing a delay slot + - MIPS: Avoid accidental raw backtrace + - MIPS: pm-cps: Drop manual cache-line alignment of ready_count + - MIPS: Fix IRQ tracing & lockdep when rescheduling + - ALSA: hda - Fix endless loop of codec configure + - ALSA: hda - set input_path bitmap to zero after moving it to new place + - NFSv4.2: Don't send mode again in post-EXCLUSIVE4_1 SETATTR with umask + - NFSv4.1: Fix a race in nfs4_proc_layoutget + - Revert "NFS: nfs_rename() handle -ERESTARTSYS dentry left behind" + - ovl: copy-up: don't unlock between lookup and link + - gpiolib: fix filtering out unwanted events + - x86/intel_rdt: Fix memory leak on mount failure + - perf/x86/intel/uncore: Fix wrong box pointer check + - drm/vmwgfx: Free hash table allocated by cmdbuf managed res mgr + - dm thin: do not queue freed thin mapping for next stage processing + - x86/mm: Fix boot crash caused by incorrect loop count calculation in + sync_global_pgds() + - mm/vmalloc.c: huge-vmap: fail gracefully on unexpected huge vmap mappings + - xen/blkback: don't free be structure too early + - xfrm6: Fix IPv6 payload_len in xfrm6_transport_finish + - xfrm: move xfrm_garbage_collect out of xfrm_policy_flush + - xfrm: fix stack access out of bounds with CONFIG_XFRM_SUB_POLICY + - xfrm: NULL dereference on allocation failure + - xfrm: Oops on error in pfkey_msg2xfrm_state() + - watchdog: bcm281xx: Fix use of uninitialized spinlock. + - ARM64: PCI: Fix struct acpi_pci_root_ops allocation failure path + - ARM64/ACPI: Fix BAD_MADT_GICC_ENTRY() macro implementation + - ARM: 8685/1: ensure memblock-limit is pmd-aligned + - ARM: davinci: PM: Free resources in error handling path in 'davinci_pm_init' + - ARM: davinci: PM: Do not free useful resources in normal path in + 'davinci_pm_init' + - tools arch: Sync arch/x86/lib/memcpy_64.S with the kernel + - Revert "x86/entry: Fix the end of the stack for newly forked tasks" + - x86/mshyperv: Remove excess #includes from mshyperv.h + - x86/boot/KASLR: Fix kexec crash due to 'virt_addr' calculation bug + - perf/x86: Fix spurious NMI with PEBS Load Latency event + - x86/mpx: Correctly report do_mpx_bt_fault() failures to user-space + - x86/mm: Fix flush_tlb_page() on Xen + - ocfs2: o2hb: revert hb threshold to keep compatible + - ocfs2: fix deadlock caused by recursive locking in xattr + - iommu/dma: Don't reserve PCI I/O windows + - iommu/amd: Fix incorrect error handling in amd_iommu_bind_pasid() + - iommu/amd: Fix interrupt remapping when disable guest_mode + - infiniband: hns: avoid gcc-7.0.1 warning for uninitialized data + - mtd: nand: brcmnand: Check flash #WP pin status before nand erase/program + - mtd: nand: fsmc: fix NAND width handling + - KVM: x86: fix emulation of RSM and IRET instructions + - KVM: x86/vPMU: fix undefined shift in intel_pmu_refresh() + - KVM: x86: zero base3 of unusable segments + - KVM: nVMX: Fix exception injection + - esp4: Fix udpencap for local TCP packets. + - hsi: Fix build regression due to netdev destructor fix. + - Linux 4.11.9 + * update ENA driver to 1.2.0k from net-next (LP: #1701575) + - net/ena: switch to pci_alloc_irq_vectors + - net: ena: fix rare uncompleted admin command false alarm + - net: ena: fix bug that might cause hang after consecutive open/close + interface. + - net: ena: add missing return when ena_com_get_io_handlers() fails + - net: ena: fix race condition between submit and completion admin command + - net: ena: add missing unmap bars on device removal + - net: ena: fix theoretical Rx hang on low memory systems + - net: ena: disable admin msix while working in polling mode + - net: ena: bug fix in lost tx packets detection mechanism + - net: ena: update ena driver to version 1.1.7 + - net: ena: change return value for unsupported features unsupported return + value + - net: ena: add hardware hints capability to the driver + - net: ena: change sizeof() argument to be the type pointer + - net: ena: add reset reason for each device FLR + - net: ena: add support for out of order rx buffers refill + - net: ena: allow the driver to work with small number of msix vectors + - net: ena: use napi_schedule_irqoff when possible + - net: ena: separate skb allocation to dedicated function + - net: ena: use lower_32_bits()/upper_32_bits() to split dma address + - net: ena: update driver's rx drop statistics + - net: ena: update ena driver to version 1.2.0 + * APST gets enabled against explicit kernel option (LP: #1699004) + - nvme: Display raw APST configuration via DYNAMIC_DEBUG + - nvme: Add nvme_core.force_apst to ignore the NO_APST quirk + - nvme: explicitly disable APST on quirked devices + * New NVLINK2 patches (LP: #1701272) + - powerpc/powernv/npu-dma: Add explicit flush when sending an ATSD + - powerpc/npu-dma: Remove spurious WARN_ON when a PCI device has no of_node + * ERAT invalidate on context switch removal (LP: #1700819) + - powerpc: Only do ERAT invalidate on radix context switch on P9 DD1 + * Miscellaneous Ubuntu changes + - SAUCE: (noup) Update spl to 0.6.5.10-1, zfs to 0.6.5.10-1ubuntu2 + - snapcraft.yaml: Sync with xenial + * Miscellaneous upstream changes + - Revert "UBUNTU: SAUCE: (efi-lockdown) efi: Add sysctls for secureboot and + MokSBState" + + [ Ubuntu: 4.11.0-10.15 ] + + * linux: 4.11.0-10.15 -proposed tracker (LP: #1701271) + * Artful update to v4.11.8 stable release (LP: #1701269) + - clk: sunxi-ng: a31: Correct lcd1-ch1 clock register offset + - clk: sunxi-ng: v3s: Fix usb otg device reset bit + - clk: sunxi-ng: sun5i: Fix ahb_bist_clk definition + - xen/blkback: fix disconnect while I/Os in flight + - xen-blkback: don't leak stack data via response ring + - ALSA: firewire-lib: Fix stall of process context at packet error + - ALSA: pcm: Don't treat NULL chmap as a fatal error + - ALSA: hda - Add Coffelake PCI ID + - ALSA: hda - Apply quirks to Broxton-T, too + - fs/exec.c: account for argv/envp pointers + - powerpc/perf: Fix oops when kthread execs user process + - autofs: sanity check status reported with AUTOFS_DEV_IOCTL_FAIL + - fs/dax.c: fix inefficiency in dax_writeback_mapping_range() + - lib/cmdline.c: fix get_options() overflow while parsing ranges + - perf/x86/intel: Add 1G DTLB load/store miss support for SKL + - perf probe: Fix probe definition for inlined functions + - KVM: x86: fix singlestepping over syscall + - KVM: MIPS: Fix maybe-uninitialized build failure + - KVM: s390: gaccess: fix real-space designation asce handling for gmap + shadows + - KVM: PPC: Book3S HV: Cope with host using large decrementer mode + - KVM: PPC: Book3S HV: Preserve userspace HTM state properly + - KVM: PPC: Book3S HV: Ignore timebase offset on POWER9 DD1 + - KVM: PPC: Book3S HV: Context-switch EBB registers properly + - KVM: PPC: Book3S HV: Restore critical SPRs to host values on guest exit + - KVM: PPC: Book3S HV: Save/restore host values of debug registers + - CIFS: Improve readdir verbosity + - CIFS: Fix some return values in case of error in 'crypt_message' + - cxgb4: notify uP to route ctrlq compl to rdma rspq + - HID: Add quirk for Dell PIXART OEM mouse + - random: silence compiler warnings and fix race + - signal: Only reschedule timers on signals timers have sent + - powerpc/kprobes: Pause function_graph tracing during jprobes handling + - powerpc/64s: Handle data breakpoints in Radix mode + - Input: i8042 - add Fujitsu Lifebook AH544 to notimeout list + - brcmfmac: add parameter to pass error code in firmware callback + - brcmfmac: use firmware callback upon failure to load + - brcmfmac: unbind all devices upon failure in firmware callback + - time: Fix clock->read(clock) race around clocksource changes + - time: Fix CLOCK_MONOTONIC_RAW sub-nanosecond accounting + - arm64/vdso: Fix nsec handling for CLOCK_MONOTONIC_RAW + - target: Fix kref->refcount underflow in transport_cmd_finish_abort + - iscsi-target: Fix delayed logout processing greater than + SECONDS_FOR_LOGOUT_COMP + - iscsi-target: Reject immediate data underflow larger than SCSI transfer + length + - drm/radeon: add a PX quirk for another K53TK variant + - drm/radeon: add a quirk for Toshiba Satellite L20-183 + - drm/amdgpu/atom: fix ps allocation size for EnableDispPowerGating + - drm/amdgpu: adjust default display clock + - drm/amdgpu: add Polaris12 DID + - ACPI / scan: Apply default enumeration to devices with ACPI drivers + - ACPI / scan: Fix enumeration for special SPI and I2C devices + - rxrpc: Fix several cases where a padded len isn't checked in ticket decode + - drm: Fix GETCONNECTOR regression + - usb: gadget: f_fs: avoid out of bounds access on comp_desc + - spi: double time out tolerance + - net: phy: fix marvell phy status reading + - brcmfmac: fix uninitialized warning in brcmf_usb_probe_phase2() + - Linux 4.11.8 + * powerpc: Invalidate ERAT on powersave wakeup for POWER9 (LP: #1700521) + - SAUCE: powerpc: Invalidate ERAT on powersave wakeup for POWER9 + * Miscellaneous Ubuntu changes + - d-i: Move qcom-emac from arm64 to shared nic-modules + + -- Marcelo Henrique Cerri Thu, 27 Jul 2017 17:24:12 -0300 + +linux-azure (4.11.0-1003.3) xenial; urgency=low + + * linux-azure: 4.11.0-1003.3 -proposed tracker (LP: #1700833) + + + [ Ubuntu: 4.11.0-9.14 ] + + * linux: 4.11.0-9.14 -proposed tracker (LP: #1700537) + * Artful update to v4.11.7 stable release (LP: #1700372) + - Revert "Allow stack to grow up to address space limit" + - Revert "UBUNTU: SAUCE: mm: fix new crash in unmapped_area_topdown()" + - Revert "mm: larger stack guard gap, between vmas" + - fs: pass on flags in compat_writev + - configfs: Fix race between create_link and configfs_rmdir + - can: gs_usb: fix memory leak in gs_cmd_reset() + - ila_xlat: add missing hash secret initialization + - cpufreq: conservative: Allow down_threshold to take values from 1 to 10 + - vb2: Fix an off by one error in 'vb2_plane_vaddr' + - cec: race fix: don't return -ENONET in cec_receive() + - selinux: fix double free in selinux_parse_opts_str() + - mac80211: don't look at the PM bit of BAR frames + - mac80211/wpa: use constant time memory comparison for MACs + - drm: mxsfb_crtc: Reset the eLCDIF controller + - drm/amdgpu: Fix overflow of watermark calcs at > 4k resolutions. + - drm/i915: Fix GVT-g PVINFO version compatibility check + - drm/i915: Fix scaling check for 90/270 degree plane rotation + - drm/i915: Do not sync RCU during shrinking + - mac80211: fix IBSS presp allocation size + - mac80211: strictly check mesh address extension mode + - mac80211: fix dropped counter in multiqueue RX + - mac80211: don't send SMPS action frame in AP mode when not needed + - drm/mediatek: fix mtk_hdmi_setup_vendor_specific_infoframe mistake + - drm/vc4: Fix OOPSes from trying to cache a partially constructed BO. + - serial: efm32: Fix parity management in 'efm32_uart_console_get_options()' + - serial: 8250_lpss: Unconditionally set PCI master for Quark + - serial: sh-sci: Fix (AUTO)RTS in sci_init_pins() + - serial: sh-sci: Fix late enablement of AUTORTS + - x86/mm/32: Set the '__vmalloc_start_set' flag in initmem_init() + - mfd: omap-usb-tll: Fix inverted bit use for USB TLL mode + - mfd: axp20x: Add support for dts property "xpowers,master-mode" + - dt-bindings: mfd: axp20x: Add "xpowers,master-mode" property for AXP806 + PMICs + - mfd: cpcap: Fix interrupt to use level interrupt + - mfd: cpcap: Use ack_invert interrupts + - mfd: cpcap: Fix bad use of IRQ sense register + - phy: rcar-gen3-usb2: fix implementation for runtime PM + - mtd: physmap_of: really fix the physmap add-ons + - powerpc/mm: Add physical address to Linux page table dump + - staging: rtl8188eu: prevent an underflow in rtw_check_beacon_data() + - staging: bcm2835-camera: fix error handling in init + - staging: iio: tsl2x7x_core: Fix standard deviation calculation + - iio: imu: st_lsm6dsx: do not apply ODR configuration in write_raw handler + - iio: proximity: as3935: recalibrate RCO after resume + - iio: adc: ti_am335x_adc: allocating too much in probe + - ALSA: hda: Add Geminilake id to SKL_PLUS + - ALSA: usb-audio: fix Amanero Combo384 quirk on big-endian hosts + - usb: gadget: udc: renesas_usb3: fix pm_runtime functions calling + - usb: gadget: udc: renesas_usb3: fix deadlock by spinlock + - usb: gadget: udc: renesas_usb3: lock for PN_ registers access + - USB: hub: fix SS max number of ports + - usb: core: fix potential memory leak in error path during hcd creation + - USB: usbip: fix nonconforming hub descriptor + - usb: dwc3: gadget: Fix ISO transfer performance + - pvrusb2: reduce stack usage pvr2_eeprom_analyze() + - USB: gadget: dummy_hcd: fix hub-descriptor removable fields + - usb: r8a66597-hcd: select a different endpoint on timeout + - usb: r8a66597-hcd: decrease timeout + - coda: restore original firmware locations + - drivers/misc/c2port/c2port-duramar2150.c: checking for NULL instead of + IS_ERR() + - usb: xhci: Fix USB 3.1 supported protocol parsing + - usb: xhci: ASMedia ASM1042A chipset need shorts TX quirk + - USB: gadget: fix GPF in gadgetfs + - USB: gadgetfs, dummy-hcd, net2280: fix locking for callbacks + - mm/memory-failure.c: use compound_head() flags for huge pages + - swap: cond_resched in swap_cgroup_prepare() + - mm: numa: avoid waiting on freed migrated pages + - userfaultfd: shmem: handle coredumping in handle_userfault() + - iio: imu: inv_mpu6050: add accel lpf setting for chip >= MPU6500 + - staging: iio: ad7152: Fix deadlock in ad7152_write_raw_samp_freq() + - iio: adc: meson-saradc: fix potential crash in meson_sar_adc_clear_fifo + - sched/core: Idle_task_exit() shouldn't use switch_mm_irqs_off() + - genirq: Release resources in __setup_irq() error path + - alarmtimer: Prevent overflow of relative timers + - alarmtimer: Rate limit periodic intervals + - virtio_balloon: disable VIOMMU support + - MIPS: Fix bnezc/jialc return address calculation + - MIPS: .its targets depend on vmlinux + - crypto: Work around deallocated stack frame reference gcc bug on sparc. + - ARM: dts: am335x-sl50: Fix card detect pin for mmc1 + - ARM: dts: am335x-sl50: Fix cannot claim requested pins for spi0 + - mm: larger stack guard gap, between vmas + - Allow stack to grow up to address space limit + - mm: fix new crash in unmapped_area_topdown() + - Linux 4.11.7 + * aacraid driver may return uninitialized stack data to userspace + (LP: #1700077) + - SAUCE: scsi: aacraid: Don't copy uninitialized stack memory to userspace + * KILLER1435-S[0489:e0a2] BT cannot search BT 4.0 device (LP: #1699651) + - Bluetooth: btusb: Add support for 0489:e0a2 QCA_ROME device + * arm64 kernel crashdump support (LP: #1694859) + - memblock: add memblock_clear_nomap() + - memblock: add memblock_cap_memory_range() + - arm64: limit memory regions based on DT property, usable-memory-range + - arm64: kdump: reserve memory for crash dump kernel + - arm64: mm: add set_memory_valid() + - arm64: kdump: protect crash dump kernel memory + - arm64: hibernate: preserve kdump image around hibernation + - arm64: kdump: implement machine_crash_shutdown() + - arm64: kdump: add VMCOREINFO's for user-space tools + - [Config] CONFIG_CRASH_DUMP=y on arm64 + - arm64: kdump: provide /proc/vmcore file + - Documentation: kdump: describe arm64 port + - Documentation: dt: chosen properties for arm64 kdump + - efi/libstub/arm*: Set default address and size cells values for an empty dtb + * AACRAID for power9 platform (LP: #1689980) + - scsi: aacraid: pci_alloc_consistent() failures on ARM64 + - scsi: aacraid: Remove __GFP_DMA for raw srb memory + - scsi: aacraid: Fix DMAR issues with iommu=pt + - scsi: aacraid: Added 32 and 64 queue depth for arc natives + - scsi: aacraid: Set correct Queue Depth for HBA1000 RAW disks + - scsi: aacraid: Remove reset support from check_health + - scsi: aacraid: Change wait time for fib completion + - scsi: aacraid: Log count info of scsi cmds before reset + - scsi: aacraid: Print ctrl status before eh reset + - scsi: aacraid: Using single reset mask for IOP reset + - scsi: aacraid: Rework IOP reset + - scsi: aacraid: Add periodic checks to see IOP reset status + - scsi: aacraid: Rework SOFT reset code + - scsi: aacraid: Rework aac_src_restart + - scsi: aacraid: Use correct function to get ctrl health + - scsi: aacraid: Make sure ioctl returns on controller reset + - scsi: aacraid: Enable ctrl reset for both hba and arc + - scsi: aacraid: Add reset debugging statements + - scsi: aacraid: Remove reference to Series-9 + - scsi: aacraid: Update driver version to 50834 + * Miscellaneous upstream changes + - Allow stack to grow up to address space limit + + [ Ubuntu: 4.11.0-8.13 ] + + * Release Tracking Bug + - LP: #1699184 + * hibmc driver does not include "pci:" prefix in bus ID (LP: #1698700) + - SAUCE: drm: hibmc: Use set_busid function from drm core + * HiSilicon D05: installer doesn't appear on VGA (LP: #1698954) + - d-i: Add hibmc-drm to kernel-image udeb + * Fix /proc/cpuinfo revision for POWER9 DD2 (LP: #1698844) + - SAUCE: powerpc: Fix /proc/cpuinfo revision for POWER9 DD2 + * Miscellaneous Ubuntu changes + - SAUCE: mm: fix new crash in unmapped_area_topdown() + + -- Marcelo Henrique Cerri Tue, 27 Jun 2017 17:02:07 -0300 + +linux-azure (4.11.0-1002.2) xenial; urgency=low + + * linux-azure: 4.11.0-1002.2 -proposed tracker (LP: #1699331) + + * Azure: add support for Hyper-V sockets via VSOCK (LP: #1698425) + - SAUCE: vmbus: vmbus_open(): reset onchannel_callback on error + - SAUCE: vmbus: add the matching tasklet_enable() in vmbus_close_internal() + - SAUCE: vmbus: remove "goto error_clean_msglist" in vmbus_open() + - SAUCE: vmbus: dynamically enqueue/dequeue a channel on vmbus_open/close + - SAUCE: hv_sock: implements Hyper-V transport for Virtual Sockets (AF_VSOCK) + - SAUCE: VMCI: only try to load on VMware hypervisor + - SAUCE: hv_sock: add the support of auto-loading + - SAUCE: tools: hv_sock: 2 simple test cases. + - SAUCE: hvsock: fix a race in hvs_stream_dequeue() + - SAUCE: hvsock: fix vsock_dequeue/enqueue_accept race + - SAUCE: Drivers: hv: vmbus: Fix rescind handling + - SAUCE: vmbus: fix hv_percpu_channel_deq/enq race + - SAUCE: vmbus: add vmbus onoffer/onoffer_rescind sync. + - [Config] CONFIG_HYPERV_VSOCKETS=m + + * Re-enable -extra package for linux-azure (LP: #1699157) + - Revert "UBUNTU: [config] azure: ship_extras_package=false" + + -- Marcelo Henrique Cerri Tue, 20 Jun 2017 17:44:18 -0300 + +linux-azure (4.11.0-1001.1) xenial; urgency=low + + * linux-azure: 4.11.0-1001.1 -proposed tracker (LP: #1698442) + + * Azure: throughput performance regression after #1690177 (LP: #1698371) + - Revert "vmbus: only reschedule tasklet if time limit exceeded" + + * Azure: remove AF_HYPERV socket (LP: #1698372) + - Revert "UBUNTU: SAUCE: 9p: net/9p: add hv_sock transport" + - Revert "UBUNTU: SAUCE: azure: hv_sock: 4.11 update" + - Revert "UBUNTU: [Config] azure: CONFIG_HYPERV_SOCK=m" + - Revert "UBUNTU: SAUCE: azure: hv_sock: introduce Hyper-V Sockets" + + * Rebase linux-azure to 4.11 (LP: #1698367) + - [Config] updateconfigs for 4.11 + - SAUCE: Fix check for PF_MAX after rebase to 4.11 + - [Config] update module list for 4.11 + - [Config] CONFIG_LOCK_DOWN_KERNEL=y + + -- Marcelo Henrique Cerri Fri, 16 Jun 2017 15:22:32 -0300 + +linux-azure (4.11.0-1000.0) xenial; urgency=low + + [ Marcelo Henrique Cerri ] + + * empty entry + + -- Marcelo Henrique Cerri Fri, 09 Jun 2017 14:04:22 -0300 + +linux-azure (4.10.0-1006.6) xenial; urgency=low + + [ Marcelo Cerri ] + + * linux-azure: 4.10.0-1006.6 -proposed tracker (LP: #1694731) + + * [Hyper-V][SAUCE] hv_sock for 4.10 (LP: #1690196) + - SAUCE: azure: hv_sock: introduce Hyper-V Sockets + - [Config] azure: CONFIG_HYPERV_SOCK=m + - SAUCE: azure: hv_sock: 4.11 update + - SAUCE: 9p: net/9p: add hv_sock transport + + * Azure kernel fails in ADT tests (LP: #1693494) + - Revert "UBUNTU: [config] azure: disable VIRTIO drivers" + + * linux-azure should be able to boot in a local Hyper-V (LP: #1692920) + - Revert "UBUNTU: [config] azure: disable CONFIG_EFI" + + * [Hyper-V] Rebase Hyper-V to upstream 4.11 kernel plus some cherry-picks from + linux-next (LP: #1690177) + - Input: serio - drop unnecessary calls to device_init_wakeup + - scsi: mvumi: remove fake transport template + - scsi: libsas: remove sas_scsi_timed_out + - scsi: remove eh_timed_out methods in the transport template + - netvsc: negotiate checksum and segmentation parameters + - netvsc: report number of rx queues in ethtool + - netvsc: add ethtool ops to get/set RSS key + - netvsc: allow more flexible setting of number of channels + - netvsc: remove unused variables + - netvsc: remove no longer needed receive staging buffers + - netvsc: enhance transmit select_queue + - netvsc: group all per-channel state together + - netvsc: optimize receive path + - netvsc: don't pass void * to internal device_add + - netvsc: simplify rndis_filter_remove + - netvsc: eliminate per-device outstanding send counter + - netvsc: account for packets/bytes transmitted after completion + - netvsc: call netif_receive_skb + - vmbus: use kernel bitops for traversing interrupt mask + - vmbus: drop no longer used kick_q argument + - vmbus: remove no longer used signal_policy + - vmbus: remove unused kickq argument to sendpacket + - vmbus: put related per-cpu variable together + - vmbus: callback is in softirq not workqueue + - vmbus: change to per channel tasklet + - vmbus: add direct isr callback mode + - vmbus: expose hv_begin/end_read + - vmbus: remove conditional locking of vmbus_write + - vmbus: constify parameters where possible + - net-next: treewide use is_vlan_dev() helper function. + - scripts/spelling.txt: add "intialization" pattern and fix typo instances + - netvsc: handle select_queue when device is being removed + - netvsc: simplify get next send section + - netvsc: fix calculation of available send sections + - PCI: hv: Specify CPU_AFFINITY_ALL for MSI affinity when >= 32 CPUs + - refcount_t: Introduce a special purpose refcount type + - locking/refcounts: Out-of-line everything + - locking/refcounts: Add missing kernel.h header to have UINT_MAX defined + - locking/refcount: Add refcount_t API kernel-doc comments + - netvsc: don't overload variable in same function + - vmbus: introduce in-place packet iterator + - netvsc: implement NAPI + - netvsc: replace netdev_alloc_skb_ip_align with napi_alloc_skb + - net: hyperv: use new api ethtool_{get|set}_link_ksettings + - vmbus: only reschedule tasklet if time limit exceeded + - vmbus: remove useless return's + - vmbus: remove unnecessary initialization + - vmbus: fix spelling errors + - vmbus: make channel_message table constant + - vmbus: cleanup header file style + - vmbus: expose debug info for drivers + - Drivers: hv: Fix a typo + - Drivers: hv: Base autoeoi enablement based on hypervisor hints + - scsi: storvsc: Prefer kcalloc over kzalloc with multiply + - scsi: storvsc: remove return at end of void function + - scsi: scsi_transport_fc: Add dummy initiator role to rport + - scsi: storvsc: Add support for FC rport. + - netvsc: remove unused #define + - netvsc: need napi scheduled during removal + - netvsc: avoid race with callback + - netvsc: add comments about callback's and NAPI + - netvsc: fix NAPI performance regression + - netvsc: allow get/set of RSS indirection table + - netvsc: handle offline mtu and channel change + - netvsc: change max channel calculation + - qed*: Update to dual-license + - qede: Break datapath logic into its own file + - qede: Split filtering logic to its own file + - qed*: Change maximal number of queues + - qede: Postpone reallocation until NAPI end + - qed*: RSS indirection based on queue-handles + - qed*: Add support for ndo_set_vf_trust + - net: make ndo_get_stats64 a void function + - netvsc: report per-channel stats in ethtool statistics + - netvsc: enable GRO + - netvsc: use RCU to protect inner device structure + - netvsc: fix use-after-free in netvsc_change_mtu() + - netvsc: uses RCU instead of removal flag + - SAUCE: include refcount.h in hyperv_net.h + - netvsc: use refcount_t for keeping track of sub channels + - netvsc: remove unnecessary lock on shutdown + - netvsc: eliminate unnecessary skb == NULL checks + - netvsc: fix and cleanup rndis_filter_set_packet_filter + - Drivers: hv: Issue explicit EOI when autoeoi is not enabled + - hv_netvsc: Fix the queue index computation in forwarding case + - hv_netvsc: change netvsc device default duplex to FULL + - netvsc: Deal with rescinded channels correctly + + -- Marcelo Henrique Cerri Wed, 31 May 2017 11:59:08 -0300 + +linux-azure (4.10.0-1005.5) xenial; urgency=low + + [ Marcelo Henrique Cerri ] + * Azure: make it possible to boot without initrd (LP: #1690136) + - [Config] CONFIG_HYPERV_STORAGE=y + + * linux-aws/linux-gke incorrectly producing an empty linux-*-source package-* + (LP: #1690183) + - [Packaging] drop linux-azure-source-* package + + * linux-aws/linux-gke incorrectly producing and using linux-*-tools- + common/linux-*-cloud-tools-common (LP: #1688579) + - [Config] linux-tools-* linux-cloud-tools-* share -common packages with linux + + -- Thadeu Lima de Souza Cascardo Mon, 15 May 2017 22:48:23 -0300 + +linux-azure (4.10.0-1004.4) xenial; urgency=low + + * Azure: update configs based on Zesty 4.10.0-21.23 (LP: #1688296) + - [Config] Sync debian.azure with zesty 4.10.0-21.23 + + * move aufs.ko from -extra to linux-image package (LP: #1673498) + - [config] aufs.ko moved to linux-image package + + [ Ubuntu: 4.10.0-21.23 ] + + * linux: 4.10.0-21.23 -proposed tracker (LP: #1686414) + * Need to stop using bzip2 compression in packages for zesty onward + (LP: #1686782) + - [Debian] Use default compression for all packages + * [Hyper-V][SAUCE] pci-hyperv: Use only 16 bit integer for PCI domain + (LP: #1684971) + - SAUCE: pci-hyperv: Use only 16 bit integer for PCI domain + * CVE-2017-7477: macsec: avoid heap overflow in skb_to_sgvec (LP: #1685892) + - macsec: avoid heap overflow in skb_to_sgvec + - macsec: dynamically allocate space for sglist + * Zesty update to 4.10.11 stable release (LP: #1685140) + - drm/i915: Fix forcewake active domain tracking + - drm/i915: Move updating color management to before vblank evasion + - drm/i915/fbdev: Stop repeating tile configuration on stagnation + - drm/i915: Squelch any ktime/jiffie rounding errors for wait-ioctl + - drm/i915/gen9: Increase PCODE request timeout to 50ms + - drm/i915: Store a permanent error in obj->mm.pages + - drm/i915: Nuke debug messages from the pipe update critical section + - drm/i915: Avoid tweaking evaluation thresholds on Baytrail v3 + - drm/i915: Reject HDMI 12bpc if the sink doesn't indicate support + - drm/i915: Only enable hotplug interrupts if the display interrupts are + enabled + - drm/i915: Drop support for I915_EXEC_CONSTANTS_* execbuf parameters. + - drm/i915: Stop using RP_DOWN_EI on Baytrail + - drm/i915: Avoid rcu_barrier() from reclaim paths (shrinker) + - drm/i915: Do .init_clock_gating() earlier to avoid it clobbering watermarks + - orangefs: Dan Carpenter influenced cleanups... + - orangefs: fix buffer size mis-match between kernel space and user space. + - nfs: flexfiles: fix kernel OOPS if MDS returns unsupported DS type + - rt2x00usb: fix anchor initialization + - rt2x00usb: do not anchor rx and tx urb's + - MIPS: Introduce irq_stack + - MIPS: Stack unwinding while on IRQ stack + - MIPS: Only change $28 to thread_info if coming from user mode + - MIPS: Switch to the irq_stack in interrupts + - MIPS: Select HAVE_IRQ_EXIT_ON_IRQ_STACK + - MIPS: IRQ Stack: Fix erroneous jal to plat_irq_dispatch + - crypto: caam - fix RNG deinstantiation error checking + - crypto: caam - fix invalid dereference in caam_rsa_init_tfm() + - dma-buf: add support for compat ioctl + - Linux 4.10.11 + * Zesty update to v4.10.10 stable release (LP: #1682130) + - drm/vmwgfx: Type-check lookups of fence objects + - drm/vmwgfx: NULL pointer dereference in vmw_surface_define_ioctl() + - drm/vmwgfx: avoid calling vzalloc with a 0 size in vmw_get_cap_3d_ioctl() + - drm/ttm, drm/vmwgfx: Relax permission checking when opening surfaces + - drm/vmwgfx: Remove getparam error message + - drm/vmwgfx: fix integer overflow in vmw_surface_define_ioctl() + - PCI: thunder-pem: Add legacy firmware support for Cavium ThunderX host + controller + - PCI: thunder-pem: Fix legacy firmware PEM-specific resources + - sysfs: be careful of error returns from ops->show() + - staging: android: ashmem: lseek failed due to no FMODE_LSEEK. + - arm/arm64: KVM: Take mmap_sem in stage2_unmap_vm + - arm/arm64: KVM: Take mmap_sem in kvm_arch_prepare_memory_region + - kvm: arm/arm64: Fix locking for kvm_free_stage2_pgd + - iio: core: Fix IIO_VAL_FRACTIONAL_LOG2 for negative values + - iio: st_pressure: initialize lps22hb bootime + - iio: bmg160: reset chip when probing + - arm64: mm: unaligned access by user-land should be received as SIGBUS + - cfg80211: check rdev resume callback only for registered wiphy + - Reset TreeId to zero on SMB2 TREE_CONNECT + - mm/page_alloc.c: fix print order in show_free_areas() + - ptrace: fix PTRACE_LISTEN race corrupting task->state + - dax: fix radix tree insertion race + - dm verity fec: limit error correction recursion + - dm verity fec: fix bufio leaks + - ACPI / gpio: do not fall back to parsing _CRS when we get a deferral + - ACPI / scan: Prefer devices without _HID for _ADR matching + - Kbuild: use cc-disable-warning consistently for maybe-uninitialized + - jump label: fix passing kbuild_cflags when checking for asm goto support + - orangefs: move features validation to fix filesystem hang + - xfs: Honor FALLOC_FL_KEEP_SIZE when punching ends of files + - ring-buffer: Fix return value check in test_ringbuffer() + - mac80211: unconditionally start new netdev queues with iTXQ support + - brcmfmac: use local iftype avoiding use-after-free of virtual interface + - metag/usercopy: Drop unused macros + - metag/usercopy: Fix alignment error checking + - metag/usercopy: Add early abort to copy_to_user + - metag/usercopy: Zero rest of buffer from copy_from_user + - metag/usercopy: Set flags before ADDZ + - metag/usercopy: Fix src fixup in from user rapf loops + - metag/usercopy: Add missing fixups + - drm/msm: adreno: fix build error without debugfs + - powerpc: Disable HFSCR[TM] if TM is not supported + - powerpc/mm: Add missing global TLB invalidate if cxl is active + - powerpc/64: Fix flush_(d|i)cache_range() called from modules + - powerpc: Don't try to fix up misaligned load-with-reservation instructions + - powerpc/crypto/crc32c-vpmsum: Fix missing preempt_disable() + - dm raid: fix NULL pointer dereference for raid1 without bitmap + - x86/mce: Don't print MCEs when mcelog is active + - nios2: reserve boot memory for device tree + - xtensa: make __pa work with uncached KSEG addresses + - s390/decompressor: fix initrd corruption caused by bss clear + - s390/uaccess: get_user() should zero on failure (again) + - MIPS: Force o32 fp64 support on 32bit MIPS64r6 kernels + - MIPS: ralink: Fix typos in rt3883 pinctrl + - MIPS: End spinlocks with .insn + - MIPS: Lantiq: fix missing xbar kernel panic + - MIPS: Check TLB before handle_ri_rdhwr() for Loongson-3 + - MIPS: Add MIPS_CPU_FTLB for Loongson-3A R2 + - MIPS: Flush wrong invalid FTLB entry for huge page + - MIPS: c-r4k: Fix Loongson-3's vcache/scache waysize calculation + - drm/i915/gvt: Fix gvt scheduler interval time + - drm/i915/kvmgt: fix suspicious rcu dereference usage + - usb: dwc3: gadget: delay unmap of bounced requests + - Documentation: stable-kernel-rules: fix stable-tag format + - mm/mempolicy.c: fix error handling in set_mempolicy and mbind. + - random: use chacha20 for get_random_int/long + - kvm: fix page struct leak in handle_vmon + - drm/edid: constify edid quirk list + - drm/i915: fix INTEL_BDW_IDS definition + - drm/i915: more .is_mobile cleanups for BDW + - drm/i915: actually drive the BDW reserved IDs + - ASoC: Intel: bytcr_rt5640: quirks for Insyde devices + - usb: chipidea: msm: Rely on core to override AHBBURST + - serial: 8250_omap: Add OMAP_DMA_TX_KICK quirk for AM437x + - usb: xhci: add quirk flag for broken PED bits + - usb: host: xhci-plat: enable BROKEN_PED quirk if platform requested + - usb: dwc3: host: pass quirk-broken-port-ped property for known broken + revisions + - drm/mga: remove device_is_agp callback + - PCI: Add ACS quirk for Intel Union Point + - PCI: xgene: Fix double free on init error + - sata: ahci-da850: implement a workaround for the softreset quirk + - ACPI / button: Change default behavior to lid_init_state=open + - ASoC: codecs: rt5670: add quirk for Lenovo Thinkpad 10 + - ASoC: Intel: Baytrail: add quirk for Lenovo Thinkpad 10 + - ASoC: Intel: cht_bsw_rt5645: harden ACPI device detection + - ASoC: Intel: cht_bsw_rt5645: add Baytrail MCLK support + - ACPI: save NVS memory for Lenovo G50-45 + - ASoC: sun4i-i2s: Add quirks to handle a31 compatible + - HID: wacom: don't apply generic settings to old devices + - arm: kernel: Add SMC structure parameter + - firmware: qcom: scm: Fix interrupted SCM calls + - ARM: smccc: Update HVC comment to describe new quirk parameter + - PCI: Add Broadcom Northstar2 PAXC quirk for device class and MPSS + - PCI: Disable MSI for HiSilicon Hip06/Hip07 Root Ports + - mmc: sdhci-of-esdhc: remove default broken-cd for ARM + - PCI: Sort the list of devices with D3 delay quirk by ID + - watchdog: s3c2410: Fix infinite interrupt in soft mode + - platform/x86: asus-wmi: Detect quirk_no_rfkill from the DSDT + - x86/reboot/quirks: Add ASUS EeeBook X205TA reboot quirk + - x86/reboot/quirks: Add ASUS EeeBook X205TA/W reboot quirk + - usb-storage: Add ignore-residue quirk for Initio INIC-3619 + - x86/reboot/quirks: Fix typo in ASUS EeeBook X205TA reboot quirk + - Linux 4.10.10 + * Broken PowerNV PCI hotplug driver - Patch backporting to zesty + (LP: #1680328) + - drivers/pci/hotplug: Mask PDC interrupt if required + * Zesty update to v4.10.9 stable release (LP: #1681875) + - libceph: force GFP_NOIO for socket allocations + - KVM: nVMX: fix nested EPT detection + - xfs: pull up iolock from xfs_free_eofblocks() + - xfs: sync eofblocks scans under iolock are livelock prone + - xfs: fix eofblocks race with file extending async dio writes + - xfs: fix toctou race when locking an inode to access the data map + - xfs: fail _dir_open when readahead fails + - xfs: filter out obviously bad btree pointers + - xfs: check for obviously bad level values in the bmbt root + - xfs: verify free block header fields + - xfs: allow unwritten extents in the CoW fork + - xfs: mark speculative prealloc CoW fork extents unwritten + - xfs: reset b_first_retry_time when clear the retry status of xfs_buf_t + - xfs: reject all unaligned direct writes to reflinked files + - xfs: update ctime and mtime on clone destinatation inodes + - xfs: correct null checks and error processing in xfs_initialize_perag + - xfs: don't fail xfs_extent_busy allocation + - xfs: handle indlen shortage on delalloc extent merge + - xfs: split indlen reservations fairly when under reserved + - xfs: fix uninitialized variable in _reflink_convert_cow + - xfs: don't reserve blocks for right shift transactions + - xfs: Use xfs_icluster_size_fsb() to calculate inode chunk alignment + - xfs: tune down agno asserts in the bmap code + - xfs: only reclaim unwritten COW extents periodically + - xfs: fix and streamline error handling in xfs_end_io + - xfs: Use xfs_icluster_size_fsb() to calculate inode alignment mask + - xfs: use iomap new flag for newly allocated delalloc blocks + - xfs: try any AG when allocating the first btree block when reflinking + - scsi: sg: check length passed to SG_NEXT_CMD_LEN + - scsi: libsas: fix ata xfer length + - scsi: scsi_dh_alua: Check scsi_device_get() return value + - scsi: scsi_dh_alua: Ensure that alua_activate() calls the completion + function + - PCI: iproc: Save host bridge window resource in struct iproc_pcie + - PCI: thunder-pem: Use Cavium assigned hardware ID for ThunderX host + controller + - ALSA: seq: Fix race during FIFO resize + - ALSA: hda - fix a problem for lineout on a Dell AIO machine + - ASoC: atmel-classd: fix audio clock rate + - ASoC: Intel: Skylake: fix invalid memory access due to wrong reference of + pointer + - ASoC: rt5665: fix getting wrong work handler container + - HID: wacom: Don't add ghost interface as shared data + - mmc: sdhci: Disable runtime pm when the sdio_irq is enabled + - mmc: sdhci-of-at91: fix MMC_DDR_52 timing selection + - crypto: ccp - Make some CCP DMA channels private + - crypto: xts,lrw - fix out-of-bounds write after kmalloc failure + - ARCv2: SLC: Make sure busy bit is set properly on SLC flushing + - NFSv4.1 fix infinite loop on IO BAD_STATEID error + - nfsd: map the ENOKEY to nfserr_perm for avoiding warning + - dt-bindings: rng: clocks property on omap_rng not always mandatory + - parisc: Clean up fixup routines for get_user()/put_user() + - parisc: Avoid stalled CPU warnings after system shutdown + - parisc: Fix access fault handling in pa_memcpy() + - ACPI: Fix incompatibility with mcount-based function graph tracing + - ACPI: Do not create a platform_device for IOAPIC/IOxAPIC + - tty/serial: atmel: fix race condition (TX+DMA) + - tty/serial: atmel: fix TX path in atmel_console_write() + - xhci: Set URB actual length for stopped control transfers + - USB: fix linked-list corruption in rh_call_control() + - serial: mxs-auart: Fix baudrate calculation + - KVM: x86: clear bus pointer when destroyed + - KVM: kvm_io_bus_unregister_dev() should never fail + - drm/radeon: Override fpfn for all VRAM placements in radeon_evict_flags + - drm/vc4: Allocate the right amount of space for boot-time CRTC state. + - drm/etnaviv: (re-)protect fence allocation with GPU mutex + - drm/i915/kvmgt: Hold struct kvm reference + - x86/mm/KASLR: Exclude EFI region from KASLR VA space randomization + - x86/mce: Fix copy/paste error in exception table entries + - lib/syscall: Clear return values when no stack + - mm: rmap: fix huge file mmap accounting in the memcg stats + - mm: workingset: fix premature shadow node shrinking with cgroups + - mm, hugetlb: use pte_present() instead of pmd_present() in follow_huge_pmd() + - drm/armada: Fix compile fail + - ARM: dts: BCM5301X: Correct GIC_PPI interrupt flags + - MIPS: Lantiq: Fix cascaded IRQ setup + - blk: improve order of bio handling in generic_make_request() + - blk: Ensure users for current->bio_list can see the full list. + - padata: avoid race in reordering + - nvme/core: Fix race kicking freed request_queue + - nvme/pci: Disable on removal when disconnected + - drm/i915: Move the release of PT page to the upper caller + - drm/i915: Let execlist_update_context() cover !FULL_PPGTT mode. + - drm/i915: A hotfix for making aliasing PPGTT work for GVT-g + - Linux 4.10.9 + * POWER9: Improve performance on memory management (LP: #1681429) + - SAUCE: powerpc/mm/radix: Don't do page walk cache flush when doing full mm + flush + - SAUCE: powerpc/mm/radix: Remove unnecessary ptesync + * Disable CONFIG_HVC_UDBG on ppc64el (LP: #1680888) + - [Config] Disable CONFIG_HVC_UDBG on ppc64el + + [ Ubuntu: 4.10.0-20.22 ] + + * linux: 4.10.0-20.22 -proposed tracker (LP: #1684491) + * [Hyper-V] hv: util: move waiting for release to hv_utils_transport itself + (LP: #1682561) + - Drivers: hv: util: move waiting for release to hv_utils_transport itself + + [ Ubuntu: 4.10.0-19.21 ] + + * Release Tracking Bug + - LP: #1680535 + * ADT regressions caused by "audit: fix auditd/kernel connection state + tracking" (LP: #1680532) + - SAUCE: Revert "audit: fix auditd/kernel connection state tracking" + * Miscellaneous Ubuntu changes + - [Config] updateconfigs to update CONFIG_GENERIC_CSUM for ppc64el + This cleans up behind a Kconfig change that went undetected. + + [ Ubuntu: 4.10.0-18.20 ] + + * Release Tracking Bug + - LP: #1680168 + * smartpqi driver needed in initram disk and installer (LP: #1680156) + - UBUNU: [Config] Add smartpqi to d-i + + [ Ubuntu: 4.10.0-17.19 ] + + * Release Tracking Bug + - LP: #1679718 + * Fix CVE-2017-7308 (LP: #1678009) + - net/packet: fix overflow in check for priv area size + - net/packet: fix overflow in check for tp_frame_nr + - net/packet: fix overflow in check for tp_reserve + * apparmor: oops on boot if parameters set on grub command line (LP: #1678048) + - SAUCE: apparmor: fix parameters so that the permission test is bypassed at boot + * apparmor: does not provide a way to detect policy updataes (LP: #1678032) + - SAUCE: apparmor: add policy revision file interface + * apparmor does not make support of query data visible (LP: #1678023) + - SAUCE: apparmor: add label data availability to the feature set + * apparmor query interface does not make supported query info available + (LP: #1678030) + - SAUCE: apparmor: add information about the query inteface to the feature set + * change_profile incorrect when using namespaces with a compound stack + (LP: #1677959) + - SAUCE: apparmor: fix label parse for stacked labels + * Zesty update to v4.10.8 stable release (LP: #1678930) + - xfrm: policy: init locks early + - xfrm_user: validate XFRM_MSG_NEWAE XFRMA_REPLAY_ESN_VAL replay_window + - xfrm_user: validate XFRM_MSG_NEWAE incoming ESN size harder + - KVM: nVMX: Fix nested VPID vmx exec control + - KVM: x86: cleanup the page tracking SRCU instance + - virtio_balloon: init 1st buffer in stats vq + - pinctrl: qcom: Don't clear status bit on irq_unmask + - c6x/ptrace: Remove useless PTRACE_SETREGSET implementation + - h8300/ptrace: Fix incorrect register transfer count + - mips/ptrace: Preserve previous registers for short regset write + - sparc/ptrace: Preserve previous registers for short regset write + - metag/ptrace: Preserve previous registers for short regset write + - metag/ptrace: Provide default TXSTATUS for short NT_PRSTATUS + - metag/ptrace: Reject partial NT_METAG_RPIPE writes + - qla2xxx: Allow vref count to timeout on vport delete. + - sched/rt: Add a missing rescheduling point + - usb: musb: fix possible spinlock deadlock + - Linux 4.10.8 + * [Hyper-V] pci-hyperv: Use device serial number as PCI domain (LP: #1667527) + - net/mlx4_core: Use cq quota in SRIOV when creating completion EQs + - PCI: hv: Use device serial number as PCI domain + * Miscellaneous Ubuntu changes + - [Config] flash-kernel should be a Breaks + - [Config] drop the info directory + - [Config] drop NOTES as obsolete + - [Config] drop changelog.historical as obsolete + + [ Ubuntu: 4.10.0-16.18 ] + + * Release Tracking Bug + - LP: #1677697 + * [Feature] ISH (Intel Sensor Hub) support (LP: #1645521) + - iio: accel: hid-sensor-accel-3d: Add timestamp + * Zesty update to v4.10.7 stable release (LP: #1677589) + - net/openvswitch: Set the ipv6 source tunnel key address attribute correctly + - net: bcmgenet: Do not suspend PHY if Wake-on-LAN is enabled + - net: properly release sk_frag.page + - amd-xgbe: Fix jumbo MTU processing on newer hardware + - openvswitch: Add missing case OVS_TUNNEL_KEY_ATTR_PAD + - net: unix: properly re-increment inflight counter of GC discarded candidates + - qmi_wwan: add Dell DW5811e + - net: vrf: Reset rt6i_idev in local dst after put + - net/mlx5: Add missing entries for set/query rate limit commands + - net/mlx5e: Use the proper UAPI values when offloading TC vlan actions + - net/mlx5: Increase number of max QPs in default profile + - net/mlx5e: Count GSO packets correctly + - net/mlx5e: Count LRO packets correctly + - ipv6: make sure to initialize sockc.tsflags before first use + - net: bcmgenet: remove bcmgenet_internal_phy_setup() + - ipv4: provide stronger user input validation in nl_fib_input() + - socket, bpf: fix sk_filter use after free in sk_clone_lock + - genetlink: fix counting regression on ctrl_dumpfamily() + - tcp: initialize icsk_ack.lrcvtime at session start time + - amd-xgbe: Fix the ECC-related bit position definitions + - net: solve a NAPI race + - HID: sony: Fix input device leak when connecting a DS4 twice using USB/BT + - Input: ALPS - fix V8+ protocol handling (73 03 28) + - Input: ALPS - fix trackstick button handling on V8 devices + - Input: elan_i2c - add ASUS EeeBook X205TA special touchpad fw + - Input: i8042 - add noloop quirk for Dell Embedded Box PC 3000 + - Input: iforce - validate number of endpoints before using them + - Input: ims-pcu - validate number of endpoints before using them + - Input: hanwang - validate number of endpoints before using them + - Input: yealink - validate number of endpoints before using them + - Input: cm109 - validate number of endpoints before using them + - Input: kbtab - validate number of endpoints before using them + - Input: sur40 - validate number of endpoints before using them + - ALSA: seq: Fix racy cell insertions during snd_seq_pool_done() + - ALSA: ctxfi: Fix the incorrect check of dma_set_mask() call + - ALSA: hda - Adding a group of pin definition to fix headset problem + - USB: serial: option: add Quectel UC15, UC20, EC21, and EC25 modems + - USB: serial: qcserial: add Dell DW5811e + - ACM gadget: fix endianness in notifications + - usb: gadget: f_uvc: Fix SuperSpeed companion descriptor's wBytesPerInterval + - dvb-usb-firmware: don't do DMA on stack + - usb-core: Add LINEAR_FRAME_INTR_BINTERVAL USB quirk + - USB: uss720: fix NULL-deref at probe + - USB: lvtest: fix NULL-deref at probe + - USB: idmouse: fix NULL-deref at probe + - USB: wusbcore: fix NULL-deref at probe + - usb: musb: cppi41: don't check early-TX-interrupt for Isoch transfer + - usb: hub: Fix crash after failure to read BOS descriptor + - USB: usbtmc: add missing endpoint sanity check + - USB: usbtmc: fix probe error path + - uwb: i1480-dfu: fix NULL-deref at probe + - uwb: hwa-rc: fix NULL-deref at probe + - mmc: ushc: fix NULL-deref at probe + - nl80211: fix dumpit error path RTNL deadlocks + - mmc: core: Fix access to HS400-ES devices + - iio: adc: ti_am335x_adc: fix fifo overrun recovery + - iio: sw-device: Fix config group initialization + - iio: hid-sensor-trigger: Change get poll value function order to avoid + sensor properties losing after resume from S3 + - iio: magnetometer: ak8974: remove incorrect __exit markups + - mei: fix deadlock on mei reset + - mei: don't wait for os version message reply + - parport: fix attempt to write duplicate procfiles + - ppdev: fix registering same device name + - ext4: mark inode dirty after converting inline directory + - powerpc/64s: Fix idle wakeup potential to clobber registers + - audit: fix auditd/kernel connection state tracking + - mmc: sdhci-of-at91: Support external regulators + - mmc: sdhci-of-arasan: fix incorrect timeout clock + - mmc: sdhci: Do not disable interrupts while waiting for clock + - mmc: sdhci-pci: Do not disable interrupts in sdhci_intel_set_power + - hwrng: amd - Revert managed API changes + - hwrng: geode - Revert managed API changes + - clk: sunxi-ng: sun6i: Fix enable bit offset for hdmi-ddc module clock + - clk: sunxi-ng: mp: Adjust parent rate for pre-dividers + - mwifiex: pcie: don't leak DMA buffers when removing + - ath10k: fix incorrect wlan_mac_base in qca6174_regs + - crypto: ccp - Assign DMA commands to the channel's CCP + - fscrypt: remove broken support for detecting keyring key revocation + - vfio: Rework group release notifier warning + - xen/acpi: upload PM state from init-domain to Xen + - iommu/vt-d: Fix NULL pointer dereference in device_to_iommu + - iommu/exynos: Block SYSMMU while invalidating FLPD cache + - iommu/exynos: Workaround FLPD cache flush issues for SYSMMU v5 + - Revert "ARM: at91/dt: sama5d2: Use new compatible for ohci node" + - ARM: at91: pm: cpu_idle: switch DDR to power-down mode + - arm64: kaslr: Fix up the kernel image alignment + - cpufreq: Restore policy min/max limits on CPU online + - cgroup, net_cls: iterate the fds of only the tasks which are being migrated + - blk-mq: don't complete un-started request in timeout handler + - cpsw/netcp: cpts depends on posix_timers + - drm/amdgpu: reinstate oland workaround for sclk + - drm/amd/amdgpu: add POLARIS12 PCI ID + - auxdisplay: img-ascii-lcd: add missing sentinel entry in + img_ascii_lcd_matches + - jbd2: don't leak memory if setting up journal fails + - intel_th: Don't leak module refcount on failure to activate + - Drivers: hv: vmbus: Don't leak channel ids + - Drivers: hv: vmbus: Don't leak memory when a channel is rescinded + - mmc: block: Fix is_waiting_last_req set incorrectly + - libceph: don't set weight to IN when OSD is destroyed + - device-dax: fix pmd/pte fault fallback handling + - scsi: sd: Check for unaligned partial completion + - cpuidle: Validate cpu_dev in cpuidle_add_sysfs() + - xen: do not re-use pirq number cached in pci device msi msg data + - drm: reference count event->completion + - fbcon: Fix vc attr at deinit + - crypto: algif_hash - avoid zero-sized array + - Linux 4.10.7 + * PS/2 mouse does not work on Dell embedded computer (LP: #1591053) + - Input: i8042 - add noloop quirk for Dell Embedded Box PC 3000 + * [Zesty] mlx5_core Kernel oops with bonding mode 1 and 6 (LP: #1676786) + - SAUCE: (no-up) net/mlx5: Avoid dereferencing uninitialized pointer + * [Hyper-V] Implement Hyper-V PTP Source (LP: #1676635) + - Revert "hv: don't reset hv_context.tsc_page on crash" + - Revert "Drivers: hv: vmbus: Raise retry/wait limits in vmbus_post_msg()" + - Revert "hv: allocate synic pages for all present CPUs" + - Revert "hv: init percpu_list in hv_synic_alloc()" + - Revert "Drivers: hv: vmbus: Prevent sending data on a rescinded channel" + - Revert "Drivers: hv: vmbus: Fix a rescind handling bug" + - Revert "Drivers: hv: util: kvp: Fix a rescind processing issue" + - Revert "Drivers: hv: util: Fcopy: Fix a rescind processing issue" + - Revert "Drivers: hv: util: Backup: Fix a rescind processing issue" + - Revert "drivers: hv: Turn off write permission on the hypercall page" + - Revert "UBUNTU: SAUCE: (no-up) hv: Supply vendor ID and package ABI" + - Drivers: hv: vmbus: Raise retry/wait limits in vmbus_post_msg() + - hv: allocate synic pages for all present CPUs + - hv: init percpu_list in hv_synic_alloc() + - hv: don't reset hv_context.tsc_page on crash + - Drivers: hv: vmbus: Prevent sending data on a rescinded channel + - hv: switch to cpuhp state machine for synic init/cleanup + - hv: make CPU offlining prevention fine-grained + - Drivers: hv: vmbus: Fix a rescind handling bug + - Drivers: hv: util: kvp: Fix a rescind processing issue + - Drivers: hv: util: Fcopy: Fix a rescind processing issue + - Drivers: hv: util: Backup: Fix a rescind processing issue + - Drivers: hv: vmbus: Move the definition of hv_x64_msr_hypercall_contents + - Drivers: hv: vmbus: Move the definition of generate_guest_id() + - Drivers: hv vmbus: Move Hypercall page setup out of common code + - Drivers: hv: vmbus: Move Hypercall invocation code out of common code + - Drivers: hv: vmbus: Consolidate all Hyper-V specific clocksource code + - Drivers: hv: vmbus: Move the extracting of Hypervisor version information + - Drivers: hv: vmbus: Move the crash notification function + - Drivers: hv: vmbus: Move the check for hypercall page setup + - Drivers: hv: vmbus: Move the code to signal end of message + - Drivers: hv: vmbus: Restructure the clockevents code + - Drivers: hv: util: Use hv_get_current_tick() to get current tick + - Drivers: hv: vmbus: Get rid of an unsused variable + - Drivers: hv: vmbus: Define APIs to manipulate the message page + - Drivers: hv: vmbus: Define APIs to manipulate the event page + - Drivers: hv: vmbus: Define APIs to manipulate the synthetic interrupt controller + - Drivers: hv: vmbus: Define an API to retrieve virtual processor index + - Drivers: hv: vmbus: Define an APIs to manage interrupt state + - Drivers: hv: vmbus: Cleanup hyperv_vmbus.h + - hv_util: switch to using timespec64 + - Drivers: hv: restore hypervcall page cleanup before kexec + - Drivers: hv: restore TSC page cleanup before kexec + - Drivers: hv: balloon: add a fall through comment to hv_memory_notifier() + - Drivers: hv: vmbus: Use all supported IC versions to negotiate + - Drivers: hv: Log the negotiated IC versions. + - Drivers: hv: Fix the bug in generating the guest ID + - hv: export current Hyper-V clocksource + - hv_utils: implement Hyper-V PTP source + - SAUCE: (no-up) hv: Supply vendor ID and package ABI + - drivers: hv: Turn off write permission on the hypercall page + * Populating Hyper-V MSR for Ubuntu 13.10 (LP: #1193172) + - SAUCE: (no-up) hv: Supply vendor ID and package ABI + * Ubuntu 16.10: Network checksum fixes needed for IPoIB for Mellanox CX4/CX5 + card (LP: #1670247) + - powerpc/64: Fix checksum folding in csum_tcpudp_nofold and ip_fast_csum_nofold + - powerpc/64: Use optimized checksum routines on little-endian + * Kernel linux-image-4.4.0-67-generic prevent the boot on Microsoft Hyper-v + 2012r2 Gen2 VM (LP: #1674635) + - scsi: storvsc: Workaround for virtual DVD SCSI version + * POWER9 Radix mode KVM (LP: #1675806) + - Revert "powerpc: Update to new option-vector-5 format for CAS" + - Revert "powerpc/powernv: Initialise nest mmu" + - Revert "KVM: PPC: Book 3S: XICS: Don't lock twice when checking for resend" + - KVM: PPC: Book3S: Change interrupt call to reduce scratch space use on HV + - KVM: PPC: Book3S: Move 64-bit KVM interrupt handler out from alt section + - KVM: PPC: Book3S: 64-bit CONFIG_RELOCATABLE support for interrupts + - powerpc/64: More definitions for POWER9 + - powerpc/64: Export pgtable_cache and pgtable_cache_add for KVM + - powerpc/64: Make type of partition table flush depend on partition type + - powerpc/64: Allow for relocation-on interrupts from guest to host + - KVM: PPC: Book3S HV: Add userspace interfaces for POWER9 MMU + - KVM: PPC: Book3S HV: Set process table for HPT guests on POWER9 + - KVM: PPC: Book3S HV: Use ASDR for HPT guests on POWER9 + - KVM: PPC: Book3S HV: Add basic infrastructure for radix guests + - KVM: PPC: Book3S HV: Modify guest entry/exit paths to handle radix guests + - KVM: PPC: Book3S HV: Page table construction and page faults for radix guests + - KVM: PPC: Book3S HV: MMU notifier callbacks for radix guests + - KVM: PPC: Book3S HV: Implement dirty page logging for radix guests + - KVM: PPC: Book3S HV: Make HPT-specific hypercalls return error in radix mode + - KVM: PPC: Book3S HV: Invalidate TLB on radix guest vcpu movement + - KVM: PPC: Book3S HV: Allow guest exit path to have MMU on + - KVM: PPC: Book3S HV: Invalidate ERAT on guest entry/exit for POWER9 DD1 + - KVM: PPC: Book3S HV: Enable radix guest support + - powerpc/64: CONFIG_RELOCATABLE support for hmi interrupts + - KVM: PPC: Book3S HV: Fix software walk of guest process page tables + - KVM: PPC: Book3S HV: Don't use ASDR for real-mode HPT faults on POWER9 + - KVM: PPC: Book3S HV: Don't try to signal cpu -1 + - KVM: PPC: Book 3S: Fix error return in kvm_vm_ioctl_create_spapr_tce() + - powerpc/64: Invalidate process table caching after setting process table + - powerpc: Update to new option-vector-5 format for CAS + - KVM: PPC: Book 3S: XICS: Don't lock twice when checking for resend + - powerpc/powernv: Initialise nest mmu + - powerpc/powernv: Remove separate entry for OPAL real mode calls + * [Hyper-V][Mellanox] net/mlx4_core: Avoid delays during VF driver device shutdown (LP: #1672785) + - net/mlx4_core: Avoid delays during VF driver device shutdown + * [zesty] mlx4_core OOM with 32 bit arch (LP: #1676858) + - mlx4: reduce OOM risk on arches with large pages + * [Feature] GLK Northpeak Enabling (LP: #1645963) + - intel_th: pci: Add Denverton SOC support + - intel_th: pci: Add Gemini Lake support + * [zesty] mlx5e OVS fixes (LP: #1676388) + - net/mlx5: Fix create autogroup prev initializer + - net/mlx5e: Avoid supporting udp tunnel port ndo for VF reps + - net/mlx5e: Avoid wrong identification of rules on deletion + - devlink: fix the name of eswitch commands + - devlink: rename devlink_eswitch_fill to devlink_nl_eswitch_fill + - devlink: use nla_put_failure goto label instead of out + - devlink: allow to fillup eswitch attrs even if mode_get op does not exist + - net/mlx5e: Change the TC offload rule add/del code path to be per NIC or E-Switch + - net/mlx5: E-Switch, Don't allow changing inline mode when flows are configured + * [ARM64] Support systems where the physical memory footprint exceeds the size + of the linear mapping. (LP: #1675046) + - SAUCE: efi: arm-stub: Correct FDT and initrd allocation rules for arm64 + - SAUCE: efi: arm-stub: Round up FDT allocation to mapping size + * AACRAID Driver: Add 3 patch fixes to Kernel release (LP: #1675872) + - scsi: aacraid: remove redundant zero check on ret + - scsi: aacraid: Fix typo in blink status + - scsi: aacraid: Fix potential null access + * stress_smoke_test passing and exiting rc=9 (linux 4.9.0-12.13 ADT test + failure with linux 4.9.0-12.13) (LP: #1658633) + - ext4: lock the xattr block before checksuming it + * ARM arch_timer erratum (LP: #1675509) + - arm64: ptrace: add XZR-safe regs accessors + - SAUCE: arm64: Allow checking of a CPU-local erratum + - SAUCE: arm64: Add CNTVCT_EL0 trap handler + - SAUCE: arm64: Define Cortex-A73 MIDR + - SAUCE: arm64: cpu_errata: Allow an erratum to be match for all revisions of a core + - SAUCE: arm64: cpu_errata: Add capability to advertise Cortex-A73 erratum 858921 + - SAUCE: arm64: arch_timer: Add infrastructure for multiple erratum detection methods + - SAUCE: arm64: arch_timer: Add erratum handler for globally defined capability + - SAUCE: arm64: arch_timer: Add erratum handler for CPU-specific capability + - SAUCE: arm64: arch_timer: Move arch_timer_reg_read/write around + - SAUCE: arm64: arch_timer: Get rid of erratum_workaround_set_sne + - SAUCE: arm64: arch_timer: Rework the set_next_event workarounds + - SAUCE: arm64: arch_timer: Make workaround methods optional + - SAUCE: arm64: arch_timer: Allows a CPU-specific erratum to only affect a subset of CPUs + - SAUCE: arm64: arch_timer: Move clocksource_counter and co around + - SAUCE: arm64: arch_timer: Enable CNTVCT_EL0 trap if workaround is enabled + - SAUCE: arm64: arch_timer: Workaround for Cortex-A73 erratum 858921 + - SAUCE: arm64: arch_timer: Allow erratum matching with ACPI OEM information + - SAUCE: arm64: arch_timer: Add HISILICON_ERRATUM_161010101 ACPI matching data + - SAUCE: arm64: arch_timer: Add check for unknown erratum + * Zesty update to v4.10.6 stable release (LP: #1676429) + - give up on gcc ilog2() constant optimizations + - qla2xxx: Fix memory leak for abts processing + - qla2xxx: Fix request queue corruption. + - parisc: Optimize flush_kernel_vmap_range and invalidate_kernel_vmap_range + - parisc: support R_PARISC_SECREL32 relocation in modules + - parisc: Fix system shutdown halt + - perf/core: Fix use-after-free in perf_release() + - perf/core: Fix event inheritance on fork() + - md/r5cache: fix set_syndrome_sources() for data in cache + - xprtrdma: Squelch kbuild sparse complaint + - NFS prevent double free in async nfs4_exchange_id + - cpufreq: Fix and clean up show_cpuinfo_cur_freq() + - powerpc/boot: Fix zImage TOC alignment + - hwrng: omap - write registers after enabling the clock + - hwrng: omap - use devm_clk_get() instead of of_clk_get() + - hwrng: omap - Do not access INTMASK_REG on EIP76 + - md/raid1/10: fix potential deadlock + - target/pscsi: Fix TYPE_TAPE + TYPE_MEDIMUM_CHANGER export + - scsi: lpfc: Add shutdown method for kexec + - scsi: libiscsi: add lock around task lists to fix list corruption regression + - scsi: mpt3sas: Avoid sleeping in interrupt context + - target: Fix VERIFY_16 handling in sbc_parse_cdb + - isdn/gigaset: fix NULL-deref at probe + - gfs2: Avoid alignment hole in struct lm_lockname + - percpu: acquire pcpu_lock when updating pcpu_nr_empty_pop_pages + - cgroup/pids: remove spurious suspicious RCU usage warning + - drm/amdgpu/si: add dpm quirk for Oland + - Linux 4.10.6 + * Miscellaneous Ubuntu changes + - [Config] CONFIG_ARM64_ERRATUM_858921=y + - [Debian] add rprovides for spl-modules and zfs-modules + + [ Ubuntu: 4.10.0-15.17 ] + + * Release Tracking Bug + - LP: #1675868 + * In ZZ-BML (POWER9):ubuntu17.04 installation Fails (LP: #1675771) + - powerpc/64s: fix handling of non-synchronous machine checks + - powerpc/64s: allow machine check handler to set severity and initiator + - powerpc/64s: POWER9 machine check handler + * [Feature] R3 mwait support for Knights Mill (LP: #1637550) + - x86/cpufeature: Enable RING3MWAIT for Knights Landing + - x86/cpufeature: Enable RING3MWAIT for Knights Mill + - x86/msr: Add MSR_MISC_FEATURE_ENABLES and RING3MWAIT bit + - x86/elf: Add HWCAP2 to expose ring 3 MONITOR/MWAIT + - x86/cpufeature: Add RING3MWAIT to CPU features + * [Feature] GLK:New device IDs (LP: #1645951) + - mfd: intel-lpss: Add Intel Gemini Lake PCI IDs + - pwm: lpss: Add Intel Gemini Lake PCI ID + - i2c: i801: Add support for Intel Gemini Lake + - spi: pxa2xx: Add support for Intel Gemini Lake + - [Config] CONFIG_PINCTRL_GEMINILAKE=m + - pinctrl: intel: Add Intel Gemini Lake pin controller support + * Zesty update to v4.10.5 stable release (LP: #1675032) + - net/mlx5e: Register/unregister vport representors on interface attach/detach + - net/mlx5e: Do not reduce LRO WQE size when not using build_skb + - net/mlx5e: Fix broken CQE compression initialization + - net/mlx5e: Update MPWQE stride size when modifying CQE compress state + - net/mlx5e: Fix wrong CQE decompression + - vxlan: correctly validate VXLAN ID against VXLAN_N_VID + - vti6: return GRE_KEY for vti6 + - vxlan: don't allow overwrite of config src addr + - ipv4: add missing initialization for flowi4_uid + - ipv4: mask tos for input route + - sctp: set sin_port for addr param when checking duplicate address + - net sched actions: decrement module reference count after table flush. + - l2tp: avoid use-after-free caused by l2tp_ip_backlog_recv + - vxlan: lock RCU on TX path + - geneve: lock RCU on TX path + - mlxsw: spectrum_router: Avoid potential packets loss + - net: bridge: allow IPv6 when multicast flood is disabled + - net: don't call strlen() on the user buffer in packet_bind_spkt() + - net: net_enable_timestamp() can be called from irq contexts + - ipv6: orphan skbs in reassembly unit + - dccp: Unlock sock before calling sk_free() + - amd-xgbe: Stop the PHY before releasing interrupts + - amd-xgbe: Be sure to set MDIO modes on device (re)start + - amd-xgbe: Don't overwrite SFP PHY mod_absent settings + - bonding: use ETH_MAX_MTU as max mtu + - strparser: destroy workqueue on module exit + - tcp: fix various issues for sockets morphing to listen state + - net: fix socket refcounting in skb_complete_wifi_ack() + - net: fix socket refcounting in skb_complete_tx_timestamp() + - net/sched: act_skbmod: remove unneeded rcu_read_unlock in tcf_skbmod_dump + - dccp: fix use-after-free in dccp_feat_activate_values + - team: use ETH_MAX_MTU as max mtu + - vrf: Fix use-after-free in vrf_xmit + - net/tunnel: set inner protocol in network gro hooks + - uapi: fix linux/packet_diag.h userspace compilation error + - amd-xgbe: Enable IRQs only if napi_complete_done() is true + - act_connmark: avoid crashing on malformed nlattrs with null parms + - mpls: Send route delete notifications when router module is unloaded + - mpls: Do not decrement alive counter for unregister events + - ipv6: make ECMP route replacement less greedy + - ipv6: avoid write to a possibly cloned skb + - net: use net->count to check whether a netns is alive or not + - dccp/tcp: fix routing redirect race + - tun: fix premature POLLOUT notification on tun devices + - dccp: fix memory leak during tear-down of unsuccessful connection request + - arm64: KVM: VHE: Clear HCR_TGE when invalidating guest TLBs + - drm/i915/lspcon: Enable AUX interrupts for resume time initialization + - drm/i915/gen9+: Enable hotplug detection early + - drm/i915/lspcon: Fix resume time initialization due to unasserted HPD + - x86/unwind: Fix last frame check for aligned function stacks + - x86/tsc: Fix ART for TSC_KNOWN_FREQ + - x86/kasan: Fix boot with KASAN=y and PROFILE_ANNOTATED_BRANCHES=y + - x86/intel_rdt: Put group node in rdtgroup_kn_unlock + - x86/perf: Fix CR4.PCE propagation to use active_mm instead of mm + - futex: Fix potential use-after-free in FUTEX_REQUEUE_PI + - futex: Add missing error handling to FUTEX_REQUEUE_PI + - locking/rwsem: Fix down_write_killable() for CONFIG_RWSEM_GENERIC_SPINLOCK=y + - crypto: powerpc - Fix initialisation of crc32c context + - crypto: s5p-sss - Fix spinlock recursion on LRW(AES) + - Linux 4.10.5 + * Ubuntu server enables screenblanking, concealing crashdumps (DPMS is not + used) (LP: #869017) + - SAUCE: Disable default console blanking interval + * CVE-CVE-2017-5986 + - sctp: deny peeloff operation on asocs with threads sleeping on it + * tty: acpi/spcr: QDF2400 E44 checks for wrong OEM revision (LP: #1674466) + - tty: acpi/spcr: QDF2400 E44 checks for wrong OEM revision + * Ubuntu 17.04: machine crashes with Oops in dccp_v4_ctl_send_reset while + running stress-ng. (LP: #1654073) + - tcp/dccp: block BH for SYN processing + * POWER9: Additional patches for TTY and CPU_IDLE (LP: #1674325) + - tty: Fix ldisc crash on reopened tty + - SAUCE: powerpc/powernv/cpuidle: Pass correct drv->cpumask for registration + * Fix MODULE_FIRMWARE for intel 6030 wireless (LP: #1674334) + - iwlwifi: fix MODULE_FIRMWARE for 6030 + * [zesty] net sched actions - Adding support for user cookies (LP: #1674087) + - net sched actions: Add support for user cookies + - net sched actions: do not overwrite status of action creation. + * Zesty update to v4.10.4 stable release (LP: #1674288) + - iio: 104-quad-8: Fix off-by-one error when addressing flag register + - ARM: qcom_defconfig: Enable RPM/RPM-SMD clocks + - USB: serial: digi_acceleport: fix OOB data sanity check + - USB: serial: digi_acceleport: fix OOB-event processing + - crypto: improve gcc optimization flags for serpent and wp512 + - MIPS: Update defconfigs for NF_CT_PROTO_DCCP/UDPLITE change + - MIPS: VDSO: avoid duplicate CAC_BASE definition + - MIPS: ip27: Disable qlge driver in defconfig + - MIPS: Update ip27_defconfig for SCSI_DH change + - MIPS: ip22: Fix ip28 build for modern gcc + - MIPS: Update lemote2f_defconfig for CPU_FREQ_STAT change + - mtd: pmcmsp: use kstrndup instead of kmalloc+strncpy + - MIPS: ralink: Cosmetic change to prom_init(). + - MIPS: ralink: Remove unused timer functions + - MIPS: ralink: Remove unused rt*_wdt_reset functions + - i2c: bcm2835: Avoid possible NULL ptr dereference + - tracing: Add #undef to fix compile error + - ucount: Remove the atomicity from ucount->count + - efi/arm: Fix boot crash with CONFIG_CPUMASK_OFFSTACK=y + - dw2102: don't do DMA on stack + - i2c: add missing of_node_put in i2c_mux_del_adapters + - powerpc: Emulation support for load/store instructions on LE + - powerpc/booke: Fix boot crash due to null hugepd + - powerpc/xics: Work around limitations of OPAL XICS priority handling + - PCI: Prevent VPD access for QLogic ISP2722 + - usb: gadget: dummy_hcd: clear usb_gadget region before registration + - usb: dwc3: gadget: make Set Endpoint Configuration macros safe + - usb: dwc3-omap: Fix missing break in dwc3_omap_set_mailbox() + - usb: ohci-at91: Do not drop unhandled USB suspend control requests + - usb: gadget: function: f_fs: pass companion descriptor along + - Revert "usb: gadget: uvc: Add missing call for additional setup data" + - usb: host: xhci-dbg: HCIVERSION should be a binary number + - usb: host: xhci-plat: Fix timeout on removal of hot pluggable xhci controllers + - USB: serial: safe_serial: fix information leak in completion handler + - USB: serial: omninet: fix reference leaks at open + - USB: iowarrior: fix NULL-deref at probe + - USB: iowarrior: fix NULL-deref in write + - USB: serial: io_ti: fix NULL-deref in interrupt callback + - USB: serial: io_ti: fix information leak in completion handler + - serial: samsung: Continue to work if DMA request fails + - KVM: s390: Fix guest migration for huge guests resulting in panic + - KVM: arm/arm64: Let vcpu thread modify its own active state + - drm/i915/gvt: Fix superfluous newline in GVT_DISPLAY_READY env var + - serial_ir: ensure we're ready to receive interrupts + - dm: flush queued bios when process blocks to avoid deadlock + - rc: raw decoder for keymap protocol is not loaded on register + - ext4: don't BUG when truncating encrypted inodes on the orphan list + - IB/mlx5: Verify that Q counters are supported + - Linux 4.10.4 + * ip_rcv_finish() NULL pointer kernel panic (LP: #1672470) + - bridge: drop netfilter fake rtable unconditionally + * Miscellaneous Ubuntu changes + - [Config] Remove powerpc architecture build + - [Config] updateconfigs after removing powerpc builds + - [Config] Update annotations after removing powerpc configs + + [ Ubuntu: 4.10.0-14.16 ] + + * Release Tracking Bug + - LP: #1673805 + * msleep() bug causes Nuvoton I2C TPM device driver delays (LP: #1667567) + - tpm: msleep() delays - replace with usleep_range() in i2c nuvoton driver + - SAUCE: tpm: add sleep only for retry in i2c_nuvoton_write_status() + * C++ demangling support missing from perf (LP: #1396654) + - [Config] added binutils-dev to Build-deps + * dm-queue-length module is not included in installer/initramfs (LP: #1673350) + - [Config] d-i: Also add dm-queue-length to multipath modules + * move aufs.ko from -extra to linux-image package (LP: #1673498) + - [config] aufs.ko moved to linux-image package + * Using an NVMe drive causes huge power drain (LP: #1664602) + - nvme: Add a quirk mechanism that uses identify_ctrl + - nvme: Enable autonomous power state transitions + * Broadcom bluetooth modules sometimes fail to initialize (LP: #1483101) + - Bluetooth: btbcm: Add a delay for module reset + * Need support of Broadcom bluetooth device [413c:8143] (LP: #1166113) + - Bluetooth: btusb: Add support for 413c:8143 + * Zesty update to v4.10.3 stable release (LP: #1673118) + - serial: 8250_pci: Add MKS Tenta SCOM-0800 and SCOM-0801 cards + - KVM: s390: Disable dirty log retrieval for UCONTROL guests + - KVM: VMX: use correct vmcs_read/write for guest segment selector/base + - Bluetooth: Add another AR3012 04ca:3018 device + - phy: qcom-ufs: Don't kfree devres resource + - phy: qcom-ufs: Fix misplaced jump label + - s390/qdio: clear DSCI prior to scanning multiple input queues + - s390/dcssblk: fix device size calculation in dcssblk_direct_access() + - s390/kdump: Use "LINUX" ELF note name instead of "CORE" + - s390/chsc: Add exception handler for CHSC instruction + - s390: TASK_SIZE for kernel threads + - s390/topology: correct allocation of topology information + - s390: make setup_randomness work + - s390: use correct input data address for setup_randomness + - net: mvpp2: fix DMA address calculation in mvpp2_txq_inc_put() + - cxl: Prevent read/write to AFU config space while AFU not configured + - cxl: fix nested locking hang during EEH hotplug + - brcmfmac: fix incorrect event channel deduction + - mnt: Tuck mounts under others instead of creating shadow/side mounts. + - IB/ipoib: Fix deadlock between rmmod and set_mode + - IB/IPoIB: Add destination address when re-queue packet + - IB/mlx5: Fix out-of-bound access + - IB/SRP: Avoid using IB_MR_TYPE_SG_GAPS + - IB/srp: Avoid that duplicate responses trigger a kernel bug + - IB/srp: Fix race conditions related to task management + - Btrfs: fix data loss after truncate when using the no-holes feature + - orangefs: Use RCU for destroy_inode + - memory/atmel-ebi: Fix ns <-> cycles conversions + - tracing: Fix return value check in trace_benchmark_reg() + - ktest: Fix child exit code processing + - ceph: remove req from unsafe list when unregistering it + - target: Fix NULL dereference during LUN lookup + active I/O shutdown + - drivers/pci/hotplug: Handle presence detection change properly + - drivers/pci/hotplug: Fix initial state for empty slot + - nlm: Ensure callback code also checks that the files match + - pwm: pca9685: Fix period change with same duty cycle + - xtensa: move parse_tag_fdt out of #ifdef CONFIG_BLK_DEV_INITRD + - nfit, libnvdimm: fix interleave set cookie calculation + - mac80211: flush delayed work when entering suspend + - mac80211: don't reorder frames with SN smaller than SSN + - mac80211: don't handle filtered frames within a BA session + - mac80211: use driver-indicated transmitter STA only for data frames + - drm/amdgpu: add more cases to DCE11 possible crtc mask setup + - drm/amdgpu/pm: check for headless before calling compute_clocks + - Revert "drm/amdgpu: update tile table for oland/hainan" + - drm/ast: Fix AST2400 POST failure without BMC FW or VBIOS + - drm/radeon: handle vfct with multiple vbios images + - drm/edid: Add EDID_QUIRK_FORCE_8BPC quirk for Rotel RSX-1058 + - drm/ttm: Make sure BOs being swapped out are cacheable + - drm/vmwgfx: Work around drm removal of control nodes + - drm/imx: imx-tve: Do not set the regulator voltage + - drm/atomic: fix an error code in mode_fixup() + - drm/i915/gvt: Disable access to stolen memory as a guest + - drm: Cancel drm_fb_helper_dirty_work on unload + - drm: Cancel drm_fb_helper_resume_work on unload + - drm/i915: Recreate internal objects with single page segments if dmar fails + - drm/i915: Avoid spurious WARNs about the wrong pipe in the PPS code + - drm/i915: Check for timeout completion when waiting for the rq to submitted + - drm/i915: Pass timeout==0 on to i915_gem_object_wait_fence() + - drm/i915: Fix not finding the VBT when it overlaps with OPREGION_ASLE_EXT + - libceph: use BUG() instead of BUG_ON(1) + - x86, mm: fix gup_pte_range() vs DAX mappings + - x86/tlb: Fix tlb flushing when lguest clears PGE + - thp: fix another corner case of munlock() vs. THPs + - mm: do not call mem_cgroup_free() from within mem_cgroup_alloc() + - kasan: resched in quarantine_remove_cache() + - fat: fix using uninitialized fields of fat_inode/fsinfo_inode + - drivers: hv: Turn off write permission on the hypercall page + - Linux 4.10.3 + * Zesty update to v4.10.2 stable release (LP: #1672544) + - MIPS: pic32mzda: Fix linker error for pic32_get_pbclk() + - MIPS: Fix special case in 64 bit IP checksumming. + - MIPS: BCM47XX: Fix button inversion for Asus WL-500W + - MIPS: OCTEON: Fix copy_from_user fault handling for large buffers + - MIPS: Lantiq: Keep ethernet enabled during boot + - MIPS: Clear ISA bit correctly in get_frame_info() + - MIPS: Prevent unaligned accesses during stack unwinding + - MIPS: Fix get_frame_info() handling of microMIPS function size + - MIPS: Fix is_jump_ins() handling of 16b microMIPS instructions + - MIPS: Calculate microMIPS ra properly when unwinding the stack + - MIPS: Handle microMIPS jumps in the same way as MIPS32/MIPS64 jumps + - mmc: sdhci-acpi: support deferred probe + - am437x-vpfe: always assign bpp variable + - uvcvideo: Fix a wrong macro + - media: fix dm1105.c build error + - cxd2820r: fix gpio null pointer dereference + - dvb-usb: don't use stack for firmware load + - lirc_dev: LIRC_{G,S}ET_REC_MODE do not work + - media: Properly pass through media entity types in entity enumeration + - ext4: fix deadlock between inline_data and ext4_expand_extra_isize_ea() + - spi: s3c64xx: fix inconsistency between binding and driver + - ARM: at91: define LPDDR types + - ARM: dts: at91: Enable DMA on sama5d4_xplained console + - ARM: dts: at91: Enable DMA on sama5d2_xplained console + - ALSA: hda/realtek - Cannot adjust speaker's volume on a Dell AIO + - ALSA: hda - fix Lewisburg audio issue + - ALSA: timer: Reject user params with too small ticks + - ALSA: ctxfi: Fallback DMA mask to 32bit + - ALSA: seq: Fix link corruption by event error handling + - ALSA: hda - Add subwoofer support for Dell Inspiron 17 7000 Gaming + - ALSA: hda - Fix micmute hotkey problem for a lenovo AIO machine + - hwmon: (it87) Do not overwrite bit 2..6 of pwm control registers + - hwmon: (it87) Ensure that pwm control cache is current before updating values + - staging: greybus: loopback: fix broken udelay + - staging/lustre/lnet: Fix allocation size for sv_cpt_data + - staging: rtl: fix possible NULL pointer dereference + - coresight: STM: Balance enable/disable + - coresight: fix kernel panic caused by invalid CPU + - regulator: Fix regulator_summary for deviceless consumers + - tpm_tis: use default timeout value if chip reports it as zero + - tpm_tis: fix the error handling of init_tis() + - iommu/vt-d: Fix some macros that are incorrectly specified in intel-iommu + - iommu/vt-d: Tylersburg isoch identity map check is done too late. + - CIFS: Fix splice read for non-cached files + - mm, devm_memremap_pages: hold device_hotplug lock over mem_hotplug_{begin, done} + - mm/page_alloc: fix nodes for reclaim in fast path + - mm: vmpressure: fix sending wrong events on underflow + - mm: do not access page->mapping directly on page_endio + - mm balloon: umount balloon_mnt when removing vb device + - mm, vmscan: cleanup lru size claculations + - mm, vmscan: consider eligible zones in get_scan_count + - sigaltstack: support SS_AUTODISARM for CONFIG_COMPAT + - ipc/shm: Fix shmat mmap nil-page protection + - ima: fix ima_d_path() possible race with rename + - PM / devfreq: Fix available_governor sysfs + - PM / devfreq: Fix wrong trans_stat of passive devfreq device + - dm cache: fix corruption seen when using cache > 2TB + - dm stats: fix a leaked s->histogram_boundaries array + - dm round robin: revert "use percpu 'repeat_count' and 'current_path'" + - dm raid: fix data corruption on reshape request + - scsi: qla2xxx: Cleaned up queue configuration code. + - scsi: qla2xxx: Fix response queue count for Target mode. + - scsi: qla2xxx: Fix Regression introduced by pci_alloc_irq_vectors_affinity call. + - Revert "scsi: aacraid: Reorder Adapter status check" + - scsi: aacraid: Reorder Adapter status check + - scsi: use 'scsi_device_from_queue()' for scsi_dh + - power: reset: at91-poweroff: timely shutdown LPDDR memories + - Fix: Disable sys_membarrier when nohz_full is enabled + - jbd2: don't leak modified metadata buffers on an aborted journal + - block/loop: fix race between I/O and set_status + - loop: fix LO_FLAGS_PARTSCAN hang + - ext4: Include forgotten start block on fallocate insert range + - ext4: do not polute the extents cache while shifting extents + - ext4: trim allocation requests to group size + - ext4: fix data corruption in data=journal mode + - ext4: fix use-after-iput when fscrypt contexts are inconsistent + - ext4: fix inline data error paths + - ext4: preserve the needs_recovery flag when the journal is aborted + - ext4: return EROFS if device is r/o and journal replay is needed + - ext4: fix fencepost in s_first_meta_bg validation + - samples/seccomp: fix 64-bit comparison macros + - mei: remove support for broken parallel read + - ath10k: fix boot failure in UTF mode/testmode + - ath5k: drop bogus warning on drv_set_key with unsupported cipher + - ath9k: fix race condition in enabling/disabling IRQs + - ath9k: use correct OTP register offsets for the AR9340 and AR9550 + - PCI: hv: Fix wslot_to_devfn() to fix warnings on device removal + - PCI: altera: Fix TLP_CFG_DW0 for TLP write + - Drivers: hv: vmbus: Raise retry/wait limits in vmbus_post_msg() + - crypto: xts - Add ECB dependency + - crypto: testmgr - Pad aes_ccm_enc_tv_template vector + - crypto: xts - Propagate NEED_FALLBACK bit + - crypto: api - Add crypto_requires_off helper + - fuse: add missing FR_FORCE + - x86/pkeys: Check against max pkey to avoid overflows + - arm/arm64: KVM: Enforce unconditional flush to PoC when mapping to stage-2 + - arm64: dma-mapping: Fix dma_mapping_error() when bypassing SWIOTLB + - arm64: fix erroneous __raw_read_system_reg() cases + - KVM: arm/arm64: vgic: Stop injecting the MSI occurrence twice + - Revert "arm64: mm: set the contiguous bit for kernel mappings where appropriate" + - iio: pressure: mpl115: do not rely on structure field ordering + - iio: pressure: mpl3115: do not rely on structure field ordering + - can: gs_usb: Don't use stack memory for USB transfers + - can: usb_8dev: Fix memory leak of priv->cmd_msg_buffer + - w1: don't leak refcount on slave attach failure in w1_attach_slave_device() + - w1: ds2490: USB transfer buffers need to be DMAable + - usb: musb: da8xx: Remove CPPI 3.0 quirk and methods + - usb: dwc3: gadget: skip Set/Clear Halt when invalid + - usb: host: xhci: plat: check hcc_params after add hcd + - usb: gadget: udc-core: Rescan pending list on driver unbind + - usb: gadget: udc: fsl: Add missing complete function. + - usb: gadget: f_hid: fix: Free out requests + - usb: gadget: f_hid: fix: Prevent accessing released memory + - usb: gadget: f_hid: Use spinlock instead of mutex + - usb: gadget: f_hid: fix: Move IN request allocation to set_alt() + - hv: allocate synic pages for all present CPUs + - hv: init percpu_list in hv_synic_alloc() + - Drivers: hv: vmbus: Prevent sending data on a rescinded channel + - Drivers: hv: vmbus: Fix a rescind handling bug + - Drivers: hv: util: kvp: Fix a rescind processing issue + - Drivers: hv: util: Fcopy: Fix a rescind processing issue + - Drivers: hv: util: Backup: Fix a rescind processing issue + - RDMA/core: Fix incorrect structure packing for booleans + - rdma_cm: fail iwarp accepts w/o connection params + - gfs2: Add missing rcu locking for glock lookup + - remoteproc: qcom: mdt_loader: Don't overwrite firmware object + - rtlwifi: Fix alignment issues + - rtlwifi: rtl8192c-common: Fix "BUG: KASAN: + - VME: restore bus_remove function causing incomplete module unload + - nfsd: minor nfsd_setattr cleanup + - nfsd: special case truncates some more + - NFSv4: Fix memory and state leak in _nfs4_open_and_get_state + - NFSv4: Fix reboot recovery in copy offload + - pNFS/flexfiles: If the layout is invalid, it must be updated before retrying + - Revert "NFSv4.1: Handle NFS4ERR_BADSESSION/NFS4ERR_DEADSESSION replies to OP_SEQUENCE" + - NFSv4: fix getacl head length estimation + - NFSv4: fix getacl ERANGE for some ACL buffer sizes + - f2fs: fix a problem of using memory after free + - f2fs: fix multiple f2fs_add_link() calls having same name + - f2fs: add ovp valid_blocks check for bg gc victim to fg_gc + - f2fs: avoid to issue redundant discard commands + - f2fs: Fix zoned block device support + - rtc: sun6i: Disable the build as a module + - rtc: sun6i: Add some locking + - rtc: sun6i: Switch to the external oscillator + - md linear: fix a race between linear_add() and linear_congested() + - bcma: use (get|put)_device when probing/removing device driver + - mtd: nand: ifc: Fix location of eccstat registers for IFC V1.0 + - dmaengine: ipu: Make sure the interrupt routine checks all interrupts. + - xprtrdma: Fix Read chunk padding + - xprtrdma: Per-connection pad optimization + - xprtrdma: Disable pad optimization by default + - xprtrdma: Reduce required number of send SGEs + - powerpc/xmon: Fix data-breakpoint + - powerpc/mm: Add MMU_FTR_KERNEL_RO to possible feature mask + - module: fix memory leak on early load_module() failures + - MIPS: IP22: Reformat inline assembler code to modern standards. + - MIPS: IP22: Fix build error due to binutils 2.25 uselessnes. + - ceph: update readpages osd request according to size of pages + - Linux 4.10.2 + * kernel selftests ADT failure with linux 4.10.0-13.15 on ppc64el (LP: #1672510) + - SAUCE: Add '-fno-ie -no-pie' to cflags for powerpc ptrace tests + * arm64: Workaround QDF2400 erratum 0065 (LP: #1672486) + - [Config] CONFIG_QCOM_QDF2400_ERRATUM_0065=y + - irqchip/gicv3-its: Add workaround for QDF2400 ITS erratum 0065 + * arm64 MSI/PCIe passthrough patches break build of certain configs (LP: #1672502) + - irqdomain: Add empty irq_domain_check_msi_remap + * pinctrl: qcom: add get_direction function (LP: #1672504) + - pinctrl: qcom: add get_direction function + * perf probes on arm64 don't work with 4.10 kernel b/c of register name issue (LP: #1671917) + - perf probe: Fix wrong register name for arm64 + * cleanup primary tree for linux-hwe layering issues (LP: #1637473) + - [Config] linux-source-* is in the primary linux namespace + * hv_set_ifconfig script parsing fails for certain configuration (LP: #1640109) + - hv_set_ifconfig -- handle DHCP interfaces correctly + - hv_set_ifconfig -- ensure we include the last stanza + * Revert "UBUNTU: SAUCE: Disable timers selftest for now" (LP: #1672372) + - Revert "UBUNTU: SAUCE: Disable timers selftest for now" + * Ubuntu 16.10: Network checksum fixes needed for IPoIB for Mellanox CX4/CX5 card (LP: #1670247) + - powerpc/64: Fix checksum folding in csum_add() + * POWER9: Additional power9 patches (LP: #1671613) + - mm/autonuma: don't use set_pte_at when updating protnone ptes + - mm/autonuma: let architecture override how the write bit should be stashed in a protnone pte. + - powerpc/mm/autonuma: switch ppc64 to its own implementation of saved write + - mm/gup: check for protnone only if it is a PTE entry + - mm/thp/autonuma: use TNF flag instead of vm fault + - SAUCE: powerpc/mm: handle protnone ptes on fork + - SAUCE: power/mm: update pte_write and pte_wrprotect to handle savedwrite + - mm/ksm: improve deduplication of zero pages with colouring + - mm: introduce page_vma_mapped_walk() + - mm, ksm: convert write_protect_page() to use page_vma_mapped_walk() + - mm/ksm: handle protnone saved writes when making page write protect + * POWER9 : Enable Stop 0-2 with ESL=EC=0 (LP: #1666197) + - powerpc/powernv: Fix bug due to labeling ambiguity in power_enter_stop + * Miscellaneous Ubuntu changes + - [Debian] consider renames in gen-auto-reconstruct + + [ Ubuntu: 4.10.0-13.15 ] + + * Release Tracking Bug + - LP: #1671614 + * ehci-platform needed in usb-modules udeb (LP: #1671589) + - d-i: add ehci-platform to usb-modules + * irqchip/gic-v3-its: Enable cacheable attribute Read-allocate hints + (LP: #1671598) + - irqchip/gic-v3-its: Enable cacheable attribute Read-allocate hints + * iommu: Fix static checker warning in iommu_insert_device_resv_regions + (LP: #1671599) + - iommu: Fix static checker warning in iommu_insert_device_resv_regions + * QDF2400: Fix panic introduced by erratum 1003 (LP: #1671602) + - arm64: Avoid clobbering mm in erratum workaround on QDF2400 + * QDF2400 PCI ports require ACS quirk (LP: #1671601) + - PCI: Add ACS quirk for Qualcomm QDF2400 and QDF2432 + * tty: pl011: Work around QDF2400 E44 stuck BUSY bit (LP: #1671600) + - tty: pl011: Work around QDF2400 E44 stuck BUSY bit + * CVE-2017-2636 + - tty: n_hdlc: get rid of racy n_hdlc.tbuf + * Sync virtualbox to 5.1.16-dfsg-1 in zesty (LP: #1671470) + - ubuntu: vbox -- Update to 5.1.16-dfsg-1 + + [ Ubuntu: 4.10.0-12.14 ] + + * Release Tracking Bug + - LP: #1671235 + * POWER9: Improve CAS negotiation (LP: #1671169) + - powerpc: Parse the command line before calling CAS + - powerpc: Update to new option-vector-5 format for CAS + * lowlatency kernel is lacking support for latencytop (LP: #1655986) + - [Config] CONFIG_LATENCYTOP=y for amd64 lowlatency + * Power9 kernel: add virtualization patches (LP: #1670800) + - powerpc: Add POWER9 architected mode to cputable + * h-prod does not function across cores (LP: #1670726) + - KVM: PPC: Book3S HV: Fix H_PROD to actually wake the target vcpu + * CIFS: Enable encryption for SMB3 (LP: #1670508) + - cifs: Simplify SMB2 and SMB311 dependencies + - cifs: Only select the required crypto modules + - cifs: Add soft dependencies + - CIFS: Separate SMB2 header structure + - CIFS: Make SendReceive2() takes resp iov + - CIFS: Make send_cancel take rqst as argument + - CIFS: Send RFC1001 length in a separate iov + - CIFS: Separate SMB2 sync header processing + - CIFS: Separate RFC1001 length processing for SMB2 read + - CIFS: Add capability to transform requests before sending + - CIFS: Enable encryption during session setup phase + - CIFS: Encrypt SMB3 requests before sending + - CIFS: Add transform header handling callbacks + - CIFS: Add mid handle callback + - CIFS: Add copy into pages callback for a read operation + - CIFS: Decrypt and process small encrypted packets + - CIFS: Add capability to decrypt big read responses + - CIFS: Allow to switch on encryption with seal mount option + - CIFS: Fix possible use after free in demultiplex thread + * FC Adapter (LPe32000-based) prints "iotag out of range", goes offline, and + delays boot a lot (Ubuntu17.04/Emulex/lpfc)) (LP: #1670490) + - scsi: lpfc: Correct WQ creation for pagesize + - scsi: lpfc: Add missing memory barrier + * Ubuntu 17.04: Guest does not reflect all the cpus hotplugged (LP: #1670315) + - powerpc/64: Don't try to use radix MMU under a hypervisor + - powerpc/pseries: Fixes for the "ibm,architecture-vec-5" options + - powerpc/64: Enable use of radix MMU under hypervisor on POWER9 + - powerpc/pseries: Advertise HPT resizing support via CAS + - powerpc/pseries: Advertise Hot Plug Event support to firmware + - powerpc/pseries: Report DLPAR capabilities + - powerpc/pseries: Make the acquire/release of the drc for memory a seperate step + - powerpc/pseries: Introduce memory hotplug READD operation + - powerpc/pseries: Fix build break when MEMORY_HOTREMOVE=n + - powerpc/pseries: Implement indexed-count hotplug memory add + - powerpc/pseries: Implement indexed-count hotplug memory remove + - powerpc/pseries: Revert 'Auto-online hotplugged memory' + * Allow Unity8 to run inside Virtualbox (LP: #1669807) + - ubuntu: vbox -- Update to 5.1.14-dfsg-3 + * ecryptfs fails to load block cipher on ppc64el (LP: #1666483) + - crypto: vmx - Use skcipher for cbc fallback + - crypto: vmx - Use skcipher for xts fallback + - [Config] CONFIG_CRYPTO_DEV_VMX=y + * Regression in 4.4.0-65-generic causes very frequent system crashes + (LP: #1669611) + - Revert "UBUNTU: SAUCE: apparmor: fix lock ordering for mkdir" + - Revert "UBUNTU: SAUCE: apparmor: fix leak on securityfs pin count" + - Revert "UBUNTU: SAUCE: apparmor: fix reference count leak when securityfs_setup_d_inode() fails" + - Revert "UBUNTU: SAUCE: apparmor: fix not handling error case when securityfs_pin_fs() fails" + * [ubuntu 16.10] Enable OPTPROBES for powerpc (LP: #1585741) + - powerpc/optprobes: Fix TOC handling in optprobes trampoline + * [Ubuntu 17.04] Kernel panics when large number of hugepages is passed as an + boot argument to kernel. (LP: #1665113) + - SAUCE: mm/cgroup: avoid panic when init with low memory + * bcache device numbers increase by 16 (LP: #1667078) + - SAUCE: bcache: Fix bcache device names + * [Feature] GLK Intel PT write (LP: #1645962) + - perf/x86/intel/pt: Add format strings for PTWRITE and power event tracing + * arm64: ACPI platform MSI support required for new systems (LP: #1669061) + - SAUCE: ACPI: IORT: fix the indentation in iort_scan_node() + - SAUCE: ACPI: IORT: add missing comment for iort_dev_find_its_id() + - SAUCE: ACPI: IORT: minor cleanup for iort_match_node_callback() + - SAUCE: irqchip: gic-v3-its: keep the head file include in alphabetic order + - SAUCE: irqchip: gicv3-its: platform-msi: refactor its_pmsi_prepare() + - SAUCE: irqchip: gicv3-its: platform-msi: refactor its_pmsi_init() to prepare for ACPI + - SAUCE: irqchip: gicv3-its: platform-msi: scan MADT to create platform msi domain + - SAUCE: ACPI: IORT: rename iort_node_map_rid() to make it generic + - SAUCE: ACPI: IORT: introduce iort_node_map_platform_id() to retrieve dev id + - SAUCE: ACPI: platform-msi: retrieve dev id from IORT + - SAUCE: ACPI: platform: setup MSI domain for ACPI based platform device + - SAUCE: msi: platform: make platform_msi_create_device_domain() ACPI aware + - SAUCE: irqchip: mbigen: drop module owner + - SAUCE: irqchip: mbigen: introduce mbigen_of_create_domain() + - SAUCE: irqchip: mbigen: Add ACPI support + * Miscellaneous Ubuntu changes + - [Debian] Don't attempt to sign files if CONFIG_MODULE_SIG=n + + [ Ubuntu: 4.10.0-11.13 ] + + * Release Tracking Bug + - LP: #1669127 + * linux-tools-common should Depends: lsb-release (LP: #1667571) + - [Config] linux-tools-common depends on lsb-release + * Ubuntu (Zesty): When we miss LSI/INTx interrupts on slot, message is too + imprecise (LP: #1668382) + - of/irq: improve error report on irq discovery process failure + * Zesty update to v4.10.1 stable release (LP: #1668993) + - ptr_ring: fix race conditions when resizing + - ip: fix IP_CHECKSUM handling + - net: socket: fix recvmmsg not returning error from sock_error + - tty: serial: msm: Fix module autoload + - USB: serial: mos7840: fix another NULL-deref at open + - USB: serial: cp210x: add new IDs for GE Bx50v3 boards + - USB: serial: ftdi_sio: fix modem-status error handling + - USB: serial: ftdi_sio: fix extreme low-latency setting + - USB: serial: ftdi_sio: fix line-status over-reporting + - USB: serial: spcp8x5: fix modem-status handling + - USB: serial: opticon: fix CTS retrieval at open + - USB: serial: ark3116: fix register-accessor error handling + - USB: serial: console: fix uninitialised spinlock + - x86/platform/goldfish: Prevent unconditional loading + - goldfish: Sanitize the broken interrupt handler + - netfilter: nf_ct_helper: warn when not applying default helper assignment + - ACPICA: Linuxize: Restore and fix Intel compiler build + - block: fix double-free in the failure path of cgwb_bdi_init() + - rtlwifi: rtl_usb: Fix for URB leaking when doing ifconfig up/down + - xfs: clear delalloc and cache on buffered write failure + - Linux 4.10.1 + * [UBUNTU Zesty] mlx5 - Improve OVS offload driver (LP: #1668019) + - net/sched: cls_flower: Disallow duplicate internal elements + - net/sched: cls_flower: Properly handle classifier flags dumping + - net/sched: cls_matchall: Dump the classifier flags + - net/sched: Reflect HW offload status + - net/sched: cls_flower: Reflect HW offload status + - net/sched: cls_matchall: Reflect HW offloading status + - net/sched: cls_u32: Reflect HW offload status + - net/sched: cls_bpf: Reflect HW offload status + - net/mlx5: Push min-inline mode resolution helper into the core + - IB/mlx5: Enable Eth VFs to query their min-inline value for user-space + - net/mlx5: Use exact encap header size for the FW input buffer + - net/mlx5e: Add TC offloads matching on IPv6 encapsulation headers + - net/mlx5e: TC ipv4 tunnel encap offload cosmetic changes + - net/mlx5e: Use the full tunnel key info for encapsulation offload house- keeping + - net/mlx5e: Maximize ip tunnel key usage on the TC offloading path + - net/mlx5e: Support SRIOV TC encapsulation offloads for IPv6 tunnels + - net/mlx5: E-Switch, Enlarge the FDB size for the switchdev mode + - net/mlx5: Fix static checker warnings + * [Hyper-V] Ubuntu 14.04.2 LTS Generation 2 SCSI Errors on VSS Based Backups + (LP: #1470250) + - SAUCE: Tools: hv: vss: Thaw the filesystem and continue after freeze fails + * Ubuntu17.04: Need more patches for aacraid to bring up Boston System + (LP: #1668726) + - scsi: aacraid: Remove duplicate irq management code + - scsi: aacraid: Added aacraid.h include guard + - scsi: aacraid: added support for init_struct_8 + - scsi: aacraid: Added sa firmware support + - scsi: aacraid: Retrieve and update the device types + - scsi: aacraid: Reworked scsi command submission path + - scsi: aacraid: Process Error for response I/O + - scsi: aacraid: Added support for response path + - scsi: aacraid: Added support for read medium error + - scsi: aacraid: Reworked aac_command_thread + - scsi: aacraid: Added support for periodic wellness sync + - scsi: aacraid: Retrieve Queue Depth from Adapter FW + - scsi: aacraid: Added support to set QD of attached drives + - scsi: aacraid: Added support for hotplug + - scsi: aacraid: Include HBA direct interface + - scsi: aacraid: Add task management functionality + - scsi: aacraid: Added support to abort cmd and reset lun + - scsi: aacraid: VPD 83 type3 support + - scsi: aacraid: Added new IWBR reset + - scsi: aacraid: Added ioctl to trigger IOP/IWBR reset + - scsi: aacraid: Retrieve HBA host information ioctl + - scsi: aacraid: Update copyrights + - scsi: aacraid: Change Driver Version Prefix + - scsi: aacraid: update version + - scsi: aacraid: rcode is unsigned and should be signed int + - scsi: aacraid: avoid open-coded upper_32_bits + - scsi: aacraid: Fix camel case + - scsi: aacraid: Use correct channel number for raw srb + - scsi: aacraid: Fix for excessive prints on EEH + - scsi: aacraid: Prevent E3 lockup when deleting units + - scsi: aacraid: Fix memory leak in fib init path + - scsi: aacraid: Added sysfs for driver version + - scsi: aacraid: Fix sync fibs time out on controller reset + - scsi: aacraid: Skip wellness sync on controller failure + - scsi: aacraid: Reload offlined drives after controller reset + - scsi: aacraid: Decrease adapter health check interval + - scsi: aacraid: Skip IOP reset on controller panic(SMART Family) + - scsi: aacraid: Reorder Adapter status check + - scsi: aacraid: Save adapter fib log before an IOP reset + - scsi: aacraid: Fix a potential spinlock double unlock bug + - scsi: aacraid: Update driver version + - scsi: aacraid: Fixed expander hotplug for SMART family + * Ubuntu 17.04: "Oops: Exception in kernel mode, sig: 5 [#1]" seen during + fadump over ssh on Alpine machine. (LP: #1655241) + - Revert "UBUNTU: SAUCE: powerpc/fadump: set an upper limit for boot memory size" + - SAUCE: powerpc/fadump: set an upper limit for boot memory size (V2) + * CAPI:Ubuntu: Kernel panic while rebooting (LP: #1667599) + - pci/hotplug/pnv-php: Remove WARN_ON() in pnv_php_put_slot() + - pci/hotplug/pnv-php: Disable surprise hotplug capability on conflicts + - pci/hotplug/pnv-php: Disable MSI and PCI device properly + * Nvlink2: Additional patches (LP: #1667081) + - powerpc/powernv: Initialise nest mmu + - powerpc/powernv: Use OPAL call for TCE kill on NVLink2 + - powerpc/mm: refactor radix physical page mapping + - powerpc/mm: add radix__create_section_mapping() + - powerpc/mm: add radix__remove_section_mapping() + - powerpc/mm: unstub radix__vmemmap_remove_mapping() + - [Config] Enforce CONFIG_MOVABLE_NODE=y for ppc64el + * PowerNV: No rate limit for kernel error "KVM can't copy data from" + (LP: #1667416) + - SAUCE: KVM: PPC: Book3S: Ratelimit copy data failure error messages + * Please disable unnecessary config options in the Ubuntu 17.04 kernel config + (LP: #1667490) + - [Config] Disable experimental IMA options + * POWER9: AST: Improve AST 2500 support (LP: #1667424) + - SAUCE: drm/ast: Handle configuration without P2A bridge + - SAUCE: drm/ast: const'ify mode setting tables + - SAUCE: drm/ast: Remove spurrious include + - SAUCE: drm/ast: Fix calculation of MCLK + - SAUCE: drm/ast: Base support for AST2500 + - SAUCE: drm/ast: Fixed vram size incorrect issue on POWER + - SAUCE: drm/ast: Factor mmc_test code in POST code + - SAUCE: drm/ast: Rename ast_init_dram_2300 to ast_post_chip_2300 + - SAUCE: drm/ast: POST code for the new AST2500 + - SAUCE: drm/ast: Fix test for VGA enabled + - SAUCE: drm/ast: Call open_key before enable_mmio in POST code + * POWER9: Additional patches for 17.04 and 16.04.2 (LP: #1667116) + - powerpc/mm: Update PROTFAULT handling in the page fault path + - powerpc/mm/radix: Update pte update sequence for pte clear case + - powerpc/mm/radix: Use ptep_get_and_clear_full when clearing pte for full mm + - powerpc/mm/radix: Skip ptesync in pte update helpers + - SAUCE: powerpc/mm/hash: Always clear UPRT and Host Radix bits when setting up CPU + * POWER9: Improve PMU capabilites (LP: #1667413) + - powerpc/perf: use is_kernel_addr macro in perf_get_misc_flags() + - powerpc/perf: Avoid FAB_*_MATCH checks for power9 + - powerpc/perf: Add restrictions to PMC5 in power9 DD1 + - powerpc/perf: Use Instruction Counter value + - powerpc/perf: Use PM_INST_DISP for generic instructions sample + - powerpc/perf: Add alternative event table and function for power9 + - powerpc/perf: Add PM_INST_DISP event to Power9 event list + - powerpc/perf: Factor out event_alternative function + * Miscellaneous Ubuntu changes + - [Config] CONFIG_QCOM_FALKOR_ERRATUM_1009=y + - [Config] CONFIG_QCOM_L2_PMU=y + - [Config] CONFIG_QCOM_FALKOR_ERRATUM_1003=y + - ubuntu: vbox -- Update to 5.1.14-dfsg-2 + * Miscellaneous upstream changes + - arm64: errata: Provide macro for major and minor cpu revisions + - arm64: Define Falkor v1 CPU + - arm64: Use __tlbi() macros in KVM code + - arm64: Work around Falkor erratum 1009 + - perf: add qcom l2 cache perf events driver + - arm64: arch_timer: document Hisilicon erratum 161010101 + - arm64: Work around Falkor erratum 1003 + - ACPI/IORT: Fix iort_node_get_id() mapping entries indexing + - net: qcom/emac: add ethtool support + - Revert "net: qcom/emac: configure the external phy to allow pause frames" + - net: qcom/emac: rename emac_phy to emac_sgmii and move it + - net: qcom/emac: claim the irq only when the device is opened + - net: qcom/emac: display the phy driver info after we connect + - net: qcom/emac: always use autonegotiation to configure the SGMII link + - net: qcom/emac: do not call emac_mac_start twice + - net: qcom/emac: remove extraneous wake-on-lan code + - net: qcom/emac: add an error interrupt handler for the sgmii + - net: qcom/emac: add ethool support for setting pause parameters + - net: qcom/emac: fix semicolon.cocci warnings + - net: qcom/emac: add ethtool support for reading hardware registers + - net: qcom/emac: add ethtool support for setting ring parameters + - net: qcom/emac: fix a sizeof() typo + + [ Ubuntu: 4.10.0-10.12 ] + + * Release Tracking Bug + - LP: #1666636 + * POWER9 : Enable Stop 0-2 with ESL=EC=0 (LP: #1666197) + - powernv:idle: Add IDLE_STATE_ENTER_SEQ_NORET macro + - powernv:stop: Rename pnv_arch300_idle_init to pnv_power9_idle_init + - cpuidle:powernv: Add helper function to populate powernv idle states. + - powernv: Pass PSSCR value and mask to power9_idle_stop + - Documentation:powerpc: Add device-tree bindings for power-mgt + * ecryptfs fails to load block cipher on ppc64el (LP: #1666483) + - [Config] CONFIG_CRYPTO_DEV_VMX=n + * [ubuntu 16.10] Enable OPTPROBES for powerpc (LP: #1585741) + - powerpc/bpf: Introduce __PPC_SH64() + - powerpc: Add helper to check if offset is within relative branch range + - powerpc/kprobes: Fixes for kprobe_lookup_name() on BE + - powerpc/kprobes: Implement Optprobes + - powerpc/kprobes: Optimize kprobe in kretprobe_trampoline() + * Miscellaneous Ubuntu changes + - [Config] CONFIG_QCOM_IRQ_COMBINER=y + - [Config] CONFIG_ARM_ARCH_TIMER_OOL_WORKAROUND=y + - [Config] CONFIG_HISILICON_ERRATUM_161010101=y + * Miscellaneous upstream changes + - ACPI: Generic GSI: Do not attempt to map non-GSI IRQs during bus scan + - ACPI: Add support for ResourceSource/IRQ domain mapping + - irqchip/qcom: Add IRQ combiner driver + - clocksource/drivers/arm_arch_timer: Add dt binding for hisilicon-161010101 erratum + - clocksource/drivers/arm_arch_timer: Remove fsl-a008585 parameter + - clocksource/drivers/arm_arch_timer: Introduce generic errata handling infrastructure + - clocksource/drivers/arm_arch_timer: Work around Hisilicon erratum 161010101 + - iommu/dma: Allow MSI-only cookies + - iommu: Rename iommu_dm_regions into iommu_resv_regions + - iommu: Add a new type field in iommu_resv_region + - iommu: iommu_alloc_resv_region + - iommu: Only map direct mapped regions + - iommu: iommu_get_group_resv_regions + - iommu: Implement reserved_regions iommu-group sysfs file + - iommu/vt-d: Implement reserved region get/put callbacks + - iommu/amd: Declare MSI and HT regions as reserved IOVA regions + - iommu/arm-smmu: Implement reserved region get/put callbacks + - iommu/arm-smmu-v3: Implement reserved region get/put callbacks + - irqdomain: Add irq domain MSI and MSI_REMAP flags + - genirq/msi: Set IRQ_DOMAIN_FLAG_MSI on MSI domain creation + - irqdomain: irq_domain_check_msi_remap + - irqchip/gicv3-its: Sets IRQ_DOMAIN_FLAG_MSI_REMAP + - vfio/type1: Allow transparent MSI IOVA allocation + - vfio/type1: Check MSI remapping at irq domain level + - iommu/arm-smmu: Do not advertise IOMMU_CAP_INTR_REMAP anymore + - iommu/arm-smmu-v3: Clear prior settings when updating STEs + - iommu/arm-smmu-v3: limit use of 2-level stream tables + - iommu/arm-smmu: Support for Extended Stream ID (16 bit) + - iommu/arm-smmu: Fix for ThunderX erratum #27704 + + -- Stefan Bader Thu, 27 Apr 2017 17:53:22 +0200 + +linux-azure (4.10.0-1003.3) xenial; urgency=low + + * CVE-2017-7184 + - xfrm_user: validate XFRM_MSG_NEWAE XFRMA_REPLAY_ESN_VAL replay_window + - xfrm_user: validate XFRM_MSG_NEWAE incoming ESN size harder + + * Miscellaneous Ubuntu changes + - getabis: fix source and package list + + -- Stefan Bader Fri, 24 Mar 2017 15:42:16 +0100 + +linux-azure (4.10.0-1002.2) xenial; urgency=low + + * [Hyper-V][Mellanox] net/mlx4_core: Avoid delays during VF driver device + shutdown (LP: #1672785) + - SAUCE: net/mlx4_core: Avoid delays during VF driver device shutdown + + * CIFS: Enable encryption for SMB3 (LP: #1670508) + - cifs: Simplify SMB2 and SMB311 dependencies + - cifs: Only select the required crypto modules + - cifs: Add soft dependencies + - CIFS: Separate SMB2 header structure + - CIFS: Make SendReceive2() takes resp iov + - CIFS: Make send_cancel take rqst as argument + - CIFS: Send RFC1001 length in a separate iov + - CIFS: Separate SMB2 sync header processing + - CIFS: Separate RFC1001 length processing for SMB2 read + - CIFS: Add capability to transform requests before sending + - CIFS: Enable encryption during session setup phase + - CIFS: Encrypt SMB3 requests before sending + - CIFS: Add transform header handling callbacks + - CIFS: Add mid handle callback + - CIFS: Add copy into pages callback for a read operation + - CIFS: Decrypt and process small encrypted packets + - CIFS: Add capability to decrypt big read responses + - CIFS: Allow to switch on encryption with seal mount option + - CIFS: Fix possible use after free in demultiplex thread + + * [Hyper-V] pci-hyperv: Use device serial number as PCI domain (LP: #1667527) + - net/mlx4_core: Use cq quota in SRIOV when creating completion EQs + - PCI: hv: Use device serial number as PCI domain + + * linux-azure: disable unused hypervisors and misc configs (LP: #1671203) + - [config] azure: disable CONFIG_KVM + - [config] azure: disable VMware drivers + - [config] azure: disable VIRTIO drivers + - [config] azure: disable USB + - [config] azure: disable CONFIG_EFI + - [config] azure: limit elevator to noop + - [config] azure: disable CONFIG_ACPI_HOTPLUG_MEMORY + - [config] azure: disable CONFIG_NET_FC + - [config] azure: disable CONFIG_LIBFC + + -- Marcelo Henrique Cerri Thu, 16 Mar 2017 12:28:53 -0300 + +linux-azure (4.10.0-1001.1) xenial; urgency=low + + * [Hyper-V] SAUCE: pci-hyperv fixes for SR-IOV on Azure (LP: #1665097) + - SAUCE: pci-hyperv: properly handle pci bus remove + - SAUCE: pci-hyperv: lock pci bus on device eject + - SAUCE: PCI: hv: Fix wslot_to_devfn() to fix warnings on device removal + + * Miscellaneous Ubuntu changes + - linux-azure packaging + - [config] azure: ship_extras_package=false + - SAUCE: Increase the ext4 default commit age + - [config] disable CONFIG_POWERCAP as azure does not make use of this + - [config] disable CONFIG_FUJITSU_ES driver, it is not used by azure + - [config] Disable CONFIG_INPUT_LEDS for azure + - [config] Disable ATA drivers that azure does not use + - [config] azure: Disable x86 platform drivers where appropriate + - [config] disable sound for azure + - [config] azure: disable unnecessary ACPI features + - [config] azure: Disable joystick drivers + - [config] azure: Disable touchscreen drivers + - [config] azure: disable CONFIG_MEDIA_RADIO_SUPPORT + - [config] azure: Disable Blue Tooth support + - [config] azure: disable CONFIG_MEDIA_CAMERA_SUPPORT + - [config] azure: disable MEDIA_ANALOG_TV_SUPPORT + - [config] azure: disable MEDIA_DIGITAL_TV_SUPPORT + - [config] azure: disable MEDIA_RC_SUPPORT + - [config] azure: disable MEDIA_SDR_SUPPORT + - [config] azure: disable MEDIA_PCI_SUPPORT + - [config] azure disable CONFIG_SPEAKUP synth + - [config] azure: disable LED support + - [config] azure: disable comedi data acquisition support + - [config] azure: disable charger configs + - [config] azure: disable firewire + - [config] azure: disable gameport + - [config] azure: disable CONFIG_MOUSE + - [config] azure: disable CONFIG_ISDN + - [config] azure: disable various misc LCD drivers + - [config] azure disable CONFIG_MACINTOSH_DRIVERS + - [config] azure: disable CONFIG_PCMCIA + - [config] azure: disable misc backlight drivers + - [config] disable CONFIG_MTD for azure + - [config] azure: disable some battery drivers + - [config] azure: disable WLAN wireless + - [config] azure: disable WIMAX support + - [config] azure: disable Dallas 1 wire support + - [config] azure: disable Ultra Wideband devices + - [config] azure disable FPGA support + - [Config] azure: Move some drivers to the main kernel package + - [config] azure: disable CONFIG_MMC + - [config] azure: disable CONFIG_THUNDERBOLT + - [config] azure: disable CONFIG_FMC (FPGA Mezzanine Carrier) + - [config] azure: disable Chrome OS support + - [config] azure: disable CONFIG_XEN + - [config] azure: disable CONFIG_AUXDISPLAY + - [config] azure: disable CONFIG_MEMSTICK + - [config] azure: disable additional ACPI configs + - [config] azure: disable some ADC/DAC drivers + - [config] azure: disable some block devices + - [config] azure: disable some ambient light drivers + - [config] azure: disable some graphic drivers + - [config] azure: disable some HID drivers + - [config] azure: disable CONFIG_NET_VENDOR_* + + -- Brad Figg Mon, 27 Feb 2017 12:33:00 -0800 + +linux-azure (4.10.0-1000.0) xenial; urgency=low + + [ Marcelo Henrique Cerri ] + + * empty entry + + -- Marcelo Henrique Cerri Tue, 14 Feb 2017 15:04:42 -0200 + +linux (4.10.0-8.10) zesty; urgency=low + + [ Tim Gardner ] + + * Release Tracking Bug + - LP: #1664217 + + * [Hyper-V] Bug fixes for storvsc (tagged queuing, error conditions) + (LP: #1663687) + - scsi: storvsc: Enable tracking of queue depth + - scsi: storvsc: Remove the restriction on max segment size + - scsi: storvsc: Enable multi-queue support + - scsi: storvsc: use tagged SRB requests if supported by the device + - scsi: storvsc: properly handle SRB_ERROR when sense message is present + - scsi: storvsc: properly set residual data length on errors + + * Ubuntu16.10-KVM:Big configuration with multiple guests running SRIOV VFs + caused KVM host hung and all KVM guests down. (LP: #1651248) + - KVM: PPC: Book 3S: XICS cleanup: remove XICS_RM_REJECT + - KVM: PPC: Book 3S: XICS: correct the real mode ICP rejecting counter + - KVM: PPC: Book 3S: XICS: Fix potential issue with duplicate IRQ resends + - KVM: PPC: Book 3S: XICS: Implement ICS P/Q states + - KVM: PPC: Book 3S: XICS: Don't lock twice when checking for resend + + * overlay: mkdir fails if directory exists in lowerdir in a user namespace + (LP: #1531747) + - SAUCE: overlayfs: Skip permission checking for trusted.overlayfs.* xattrs + + * CVE-2016-1575 (LP: #1534961) + - SAUCE: overlayfs: Skip permission checking for trusted.overlayfs.* xattrs + + * CVE-2016-1576 (LP: #1535150) + - SAUCE: overlayfs: Skip permission checking for trusted.overlayfs.* xattrs + + * Miscellaneous Ubuntu changes + - SAUCE: md/raid6 algorithms: scale test duration for speedier boots + - SAUCE: Import aufs driver + - d-i: Build message-modules udeb for arm64 + - rebase to v4.10-rc8 + + * Miscellaneous upstream changes + - Revert "UBUNTU: SAUCE: aufs -- remove .readlink assignment" + - Revert "UBUNTU: SAUCE: (no-up) aufs: for v4.9-rc1, support setattr_prepare()" + - Revert "UBUNTU: SAUCE: aufs -- Add flags argument to aufs_rename()" + - Revert "UBUNTU: SAUCE: aufs -- Convert to use xattr handlers" + - Revert "UBUNTU: SAUCE: Import aufs driver" + + [ Upstream Kernel Changes ] + + * rebase to v4.10-rc8 + + -- Tim Gardner Mon, 06 Feb 2017 08:34:24 -0700 + +linux (4.10.0-7.9) zesty; urgency=low + + [ Tim Gardner ] + + * Release Tracking Bug + - LP: #1662201 + + * AMDGPU support for CIK parts in kernel config? (LP: #1661887) + - [Config] CONFIG_DRM_AMDGPU_CIK=y + + * regession tests failing after stackprofile test is run (LP: #1661030) + - fix regression with domain change in complain mode + + * Permission denied and inconsistent behavior in complain mode with 'ip netns + list' command (LP: #1648903) + - fix regression with domain change in complain mode + + * flock not mediated by 'k' (LP: #1658219) + - SAUCE: apparmor: flock mediation is not being enforced on cache check + + * unexpected errno=13 and disconnected path when trying to open /proc/1/ns/mnt + from a unshared mount namespace (LP: #1656121) + - SAUCE: apparmor: null profiles should inherit parent control flags + + * apparmor refcount leak of profile namespace when removing profiles + (LP: #1660849) + - SAUCE: apparmor: fix ns ref count link when removing profiles from policy + + * tor in lxd: apparmor="DENIED" operation="change_onexec" + namespace="root//CONTAINERNAME_" profile="unconfined" + name="system_tor" (LP: #1648143) + - SAUCE: apparmor: Fix no_new_privs blocking change_onexec when using stacked + namespaces + + * apparmor_parser hangs indefinitely when called by multiple threads + (LP: #1645037) + - SAUCE: apparmor: fix lock ordering for mkdir + + * apparmor leaking securityfs pin count (LP: #1660846) + - SAUCE: apparmor: fix leak on securityfs pin count + + * apparmor reference count leak when securityfs_setup_d_inode\ () fails + (LP: #1660845) + - SAUCE: apparmor: fix reference count leak when securityfs_setup_d_inode() + fails + + * apparmor not checking error if security_pin_fs() fails (LP: #1660842) + - SAUCE: apparmor: fix not handling error case when securityfs_pin_fs() fails + + * apparmor oops in bind_mnt when dev_path lookup fails (LP: #1660840) + - SAUCE: apparmor: fix oops in bind_mnt when dev_path lookup fails + + * apparmor auditing denied access of special apparmor .null fi\ le + (LP: #1660836) + - SAUCE: apparmor: Don't audit denied access of special apparmor .null file + + * apparmor label leak when new label is unused (LP: #1660834) + - SAUCE: apparmor: fix label leak when new label is unused + + * apparmor reference count bug in label_merge_insert() (LP: #1660833) + - SAUCE: apparmor: fix reference count bug in label_merge_insert() + + * apparmor's raw_data file in securityfs is sometimes truncated (LP: #1638996) + - SAUCE: apparmor: fix replacement race in reading rawdata + + * unix domain socket cross permission check failing with nested namespaces + (LP: #1660832) + - SAUCE: apparmor: fix cross ns perm of unix domain sockets + + * Regression tests can not detect binfmt_elf mmpa semantic change + (LP: #1630069) + - SAUCE: apparmor: add flag to detect semantic change, to binfmt_elf mmap + + * Support snaps inside of lxd containers (LP: #1611078) + - apparmor: add interface to be able to grab loaded policy + - apparmor: refactor aa_prepare_ns into prepare_ns and create_ns routines + - apparmor: add __aa_find_ns fn + - apparmor: add mkdir/rmdir interface to manage policy namespaces + - apparmor: fix oops in pivot_root mediation + - apparmor: fix warning that fn build_pivotroot discards const + - apparmor: add interface to advertise status of current task stacking + - apparmor: update policy permissions to consider ns being viewed/managed + - apparmor: add per ns policy management interface + - apparmor: bump domain stacking version to 1.2 + + * change_hat is logging failures during expected hat probing (LP: #1615893) + - SAUCE: apparmor: Fix auditing behavior for change_hat probing + + * deleted files outside of the namespace are not being treated as disconnected + (LP: #1615892) + - SAUCE: apparmor: deleted dentries can be disconnected + + * stacking to unconfined in a child namespace confuses mediation + (LP: #1615890) + - SAUCE: apparmor: special case unconfined when determining the mode + + * apparmor module parameters can be changed after the policy is locked + (LP: #1615895) + - SAUCE: apparmor: fix: parameters can be changed after policy is locked + + * AppArmor profile reloading causes an intermittent kernel BUG (LP: #1579135) + - SAUCE: apparmor: fix vec_unique for vectors larger than 8 + + * label vec reductions can result in reference labels instead of direct access + to labels (LP: #1615889) + - SAUCE: apparmor: reduction of vec to single entry is just that entry + + * profiles from different namespaces can block other namespaces from being + able to load a profile (LP: #1615887) + - SAUCE: apparmor: profiles in one ns can affect mediation in another ns + + * The label build for onexec when stacking is wrong (LP: #1615881) + - SAUCE: apparmor: Fix label build for onexec stacking. + + * The inherit check for new to old label comparison for domain transitions is + wrong (LP: #1615880) + - SAUCE: apparmor: Fix new to old label comparison for domain transitions + + * warning stack trace while playing with apparmor namespaces (LP: #1593874) + - SAUCE: apparmor: fix stack trace when removing namespace with profiles + + * __label_update proxy comparison test is wrong (LP: #1615878) + - SAUCE: apparmor: Fix __label_update proxy comparison test + + * reading /sys/kernel/security/apparmor/profiles requires CAP_MAC_ADMIN + (LP: #1560583) + - SAUCE: apparmor: Allow ns_root processes to open profiles file + - SAUCE: apparmor: Consult sysctl when reading profiles in a user ns + + * policy namespace stacking (LP: #1379535) + - SAUCE: (no-up) apparmor: rebase of apparmor3.5-beta1 snapshot for 4.8 + - SAUCE: add a sysctl to enable unprivileged user ns AppArmor policy loading + + * brd module compiled as built-in (LP: #1593293) + - [Config] CONFIG_BLK_DEV_RAM=m + + * Miscellaneous Ubuntu changes + - SAUCE: apparmor: Fix FTBFS due to bad include path + - SAUCE: apparmor: add data query support + - rebase to v4.10-rc7 + + * Miscellaneous upstream changes + - fixup backout policy view capable for forward port + - apparmor: fix: Rework the iter loop for label_update + - apparmor: add more assertions for updates/merges to help catch errors + - apparmor: Make pivot root transitions work with stacking + - apparmor: convert delegating deleted files to mediate deleted files + - apparmor: add missing parens. not a bug fix but highly recommended + - apparmor: add a stack_version file to allow detection of bug fixes + - apparmor: push path lookup into mediation loop + - apparmor: default to allowing unprivileged userns policy + - apparmor: fix: permissions test to view and manage policy + - apparmor: Add Basic ns cross check condition for ipc + + [ Upstream Kernel Changes ] + + * rebase to v4.10-rc7 + + -- Tim Gardner Thu, 02 Feb 2017 10:48:30 -0700 + +linux (4.10.0-6.8) zesty; urgency=low + + [ Tim Gardner ] + + * Release Tracking Bug + - LP: #1661300 + + * flock not mediated by 'k' (LP: #1658219) + - SAUCE: apparmor: flock mediation is not being enforced on cache check + + * unexpected errno=13 and disconnected path when trying to open /proc/1/ns/mnt + from a unshared mount namespace (LP: #1656121) + - SAUCE: apparmor: null profiles should inherit parent control flags + + * apparmor refcount leak of profile namespace when removing profiles + (LP: #1660849) + - SAUCE: apparmor: fix ns ref count link when removing profiles from policy + + * tor in lxd: apparmor="DENIED" operation="change_onexec" + namespace="root//CONTAINERNAME_" profile="unconfined" + name="system_tor" (LP: #1648143) + - SAUCE: apparmor: Fix no_new_privs blocking change_onexec when using stacked + namespaces + + * apparmor_parser hangs indefinitely when called by multiple threads + (LP: #1645037) + - SAUCE: apparmor: fix lock ordering for mkdir + + * apparmor leaking securityfs pin count (LP: #1660846) + - SAUCE: apparmor: fix leak on securityfs pin count + + * apparmor reference count leak when securityfs_setup_d_inode\ () fails + (LP: #1660845) + - SAUCE: apparmor: fix reference count leak when securityfs_setup_d_inode() + fails + + * apparmor not checking error if security_pin_fs() fails (LP: #1660842) + - SAUCE: apparmor: fix not handling error case when securityfs_pin_fs() fails + + * apparmor oops in bind_mnt when dev_path lookup fails (LP: #1660840) + - SAUCE: apparmor: fix oops in bind_mnt when dev_path lookup fails + + * apparmor auditing denied access of special apparmor .null fi\ le + (LP: #1660836) + - SAUCE: apparmor: Don't audit denied access of special apparmor .null file + + * apparmor label leak when new label is unused (LP: #1660834) + - SAUCE: apparmor: fix label leak when new label is unused + + * apparmor reference count bug in label_merge_insert() (LP: #1660833) + - SAUCE: apparmor: fix reference count bug in label_merge_insert() + + * apparmor's raw_data file in securityfs is sometimes truncated (LP: #1638996) + - SAUCE: apparmor: fix replacement race in reading rawdata + + * unix domain socket cross permission check failing with nested namespaces + (LP: #1660832) + - SAUCE: apparmor: fix cross ns perm of unix domain sockets + + * Kdump through NMI SMP and single core not working on Ubuntu16.10 + (LP: #1630924) + - hv: don't reset hv_context.tsc_page on crash + + * [17.04 FEAT] Integrate kernel message catalogue for s390x into Ubuntu + distribution (LP: #1628889) + - SAUCE: s390: kernel message catalog + + * Miscellaneous Ubuntu changes + - [Config] Drop powerpc ABI files + + -- Tim Gardner Wed, 01 Feb 2017 15:21:35 -0700 + +linux (4.10.0-5.7) zesty; urgency=low + + * [regression 4.8.0-14 -> 4.8.0-17] keyboard and touchscreen lost on Acer + Chromebook R11 (LP: #1630238) + - [Config] CONFIG_TOUCHSCREEN_ELAN=y,CONFIG_PINCTRL_CHERRYVIEW=y for amd64 + + * Enable CONFIG_NET_DROP_MONITOR=m in Ubuntu Kernel (LP: #1660634) + - [Config] Update annotations for CONFIG_NET_DROP_MONITOR + + * Miscellaneous Ubuntu changes + - d-i: initrd needs msm_emac on amberwing platform. + - [Config] Remove powerpc architecture builds + - [Config] updateconfigs after removing powerpc configs + - [Config] Update annotations after removing powerpc configs + - SAUCE: Disable timers selftest for now + - Rebase to v4.10-rc6 + - SAUCE: (no-up) Update zfs to 0.6.5.8-0ubuntu9 + - Enable zfs build + - [Config] CONFIG_NET_DROP_MONITOR=m + + [ Upstream Kernel Changes ] + + * rebase to v4.10-rc6 + + -- Seth Forshee Wed, 01 Feb 2017 12:26:09 -0600 + +linux (4.10.0-4.6) zesty; urgency=low + + * Miscellaneous upstream changes + - Revert "UBUNTU: Disable all flavors for the powerpc architecture" + + -- Seth Forshee Tue, 24 Jan 2017 07:13:15 -0600 + +linux (4.10.0-3.5) zesty; urgency=low + + * KVM module handling different per Architecture - ppc64el (LP: #1657734) + - [Config] powerpc: Add kvm-hv and kvm-pr to the generic inclusion list + + * ENA network driver moved to -extra (LP: #1657767) + - [Config] Move Amazon ENA network driver to the main kernel package + + * [Hyper-V] mkfs regression in 4.10 fixed by patch in "for-4.11" + (LP: #1657539) + - block: relax check on sg gap + + * i915 module requests unreleased GUC firmware files (LP: #1626740) + - SAUCE: (no-up) i915: Remove MODULE_FIRMWARE statements for unreleased + firmware + + * [17.04 FEAT] Integrate kernel message catalogue for s390x into Ubuntu + distribution (LP: #1628889) + - [Config] CONFIG_KMSG_IDS=y for s390 + - SAUCE: s390 Kernel message catalog + + * Miscellaneous Ubuntu changes + - ubuntu: vbox -- Update to 5.1.14-dfsg-1 + - SAUCE: vbox -- remove .readlink assignment + - Enable vbox build + - [Config] CONFIG_DEFAULT_IOSCHED=cfq + - [Config] Bump CONFIG_NR_CPUS up to 256 on arm64 + - [Config] Fix up s390x config options changed during 4.10 rebase + - [Config] Update annotations for 4.10 + - Disable all flavors for the powerpc architecture + + [ Upstream Kernel Changes ] + + * rebase to v4.10-rc5 + + -- Seth Forshee Mon, 23 Jan 2017 15:48:35 -0600 + +linux (4.10.0-2.4) zesty; urgency=low + + * Move some kernel modules to the main kernel package (part 2) (LP: #1655002) + - [Config] Add IBM power drivers to the inclusion list + + * Miscellaneous Ubuntu changes + - [Config] linux-source Provides should not be a macro + - [Config] Correct the note URL for LATENCYTOP + - rebase to v4.10-rc4 + + [ Upstream Kernel Changes ] + + * rebase to v4.10-rc4 + + -- Tim Gardner Wed, 11 Jan 2017 07:17:34 -0700 + +linux (4.10.0-1.3) zesty; urgency=low + + [ Upstream Kernel Changes ] + + * rebase to v4.10-rc3 + + -- Seth Forshee Mon, 09 Jan 2017 11:41:13 -0600 + +linux (4.10.0-0.2) zesty; urgency=low + + * [17.04 FEAT] Build IMA and the TPM device drivers into the KVM on POWER + host/NV kernel (LP: #1643652) + - [Config] Update and enforce IMA options + + * Miscellaneous Ubuntu changes + - [Config] Disble stack protector for powerpc-smp + + -- Seth Forshee Sat, 07 Jan 2017 19:07:55 -0600 + +linux (4.10.0-0.1) zesty; urgency=low + + * IP-over-DDP packets dropped (LP: #1559772) + - [Config] CONFIG_IPDDP=n + + * Miscellaneous Ubuntu changes + - [Config] Update annotations with recent config changes + - SAUCE: aufs -- remove .readlink assignment + - disable vbox build + - disable ZFS build + + [ Upstream Kernel Changes ] + + * rebase to v4.10-rc2 + + -- Seth Forshee Fri, 06 Jan 2017 07:55:57 -0600 + +linux (4.9.0-11.12) zesty; urgency=low + + * Miscellaneous Ubuntu changes + - UBUNTU: SAUCE: Add '-fno-pie -no-pie' to cflags for x86 selftests + - UBUNTU: SAUCE: (no-up) aufs: for v4.9-rc1, support setattr_prepare() + + [ Upstream Kernel Changes ] + + * rebase to v4.9 + + -- Tim Gardner Mon, 12 Dec 2016 06:40:40 -0700 + +linux (4.9.0-10.11) zesty; urgency=low + + * d-i is missing usb support for platforms that use the xhci-platform driver + (LP: #1625222) + - d-i initrd needs additional usb modules to support the merlin platform + + * Miscellaneous Ubuntu changes + - SAUCE: Import aufs driver + - SAUCE: aufs -- Convert to use xattr handlers + - SAUCE: aufs -- Add flags argument to aufs_rename() + - [Config] Enable aufs + - [Config] CONFIG_FSL_FMAN=y for powerpc + - SAUCE: powerpc64: Fix legacy cmpi mneomonic assumption + - [Config] Restore powerpc64-emb + + -- Tim Gardner Thu, 08 Dec 2016 20:38:12 -0700 + +linux (4.9.0-9.10) zesty; urgency=low + + * Kernel Fixes to get TCMU File Backed Optical to work (LP: #1646204) + - SAUCE: target/user: Fix use-after-free of tcmu_cmds if they are expired + + * Yakkety: arm64: CONFIG_ARM64_ERRATUM_845719 isn't enabled (LP: #1647793) + - [Config] CONFIG_ARM64_ERRATUM_845719=y + + * Update hio driver to 2.1.0.28 (LP: #1646643) + - SAUCE: hio: update to Huawei ES3000_V2 (2.1.0.28) + + * Miscellaneous Ubuntu changes + - ubuntu: vbox -- Update to 5.1.10-dfsg-2 + - Build vbox for ARCH=x86 + - SAUCE: Add aufs driver + - SAUCE: aufs -- Convert to use xattr handlers + - SAUCE: aufs -- Updates for rename2 + - SAUCE: Export symbols used by aufs + - [Config] Enable aufs + + -- Tim Gardner Mon, 05 Dec 2016 13:02:18 -0700 + +linux (4.9.0-8.9) zesty; urgency=low + + * Miscellaneous Ubuntu changes + - SAUCE: xr-usb-serial: only build for x86 + Fixes s390x FTBS + + -- Tim Gardner Mon, 05 Dec 2016 12:35:33 -0700 + +linux (4.9.0-7.8) zesty; urgency=low + + * Driver for Exar USB UART (LP: #1645591) + - SAUCE: xr-usb-serial: Driver for Exar USB serial ports + - SAUCE: xr-usb-serial: interface for switching modes + - SAUCE: cdc-acm: Exclude Exar USB serial ports + + [ Upstream Kernel Changes ] + + * rebase to v4.9-rc8 + + -- Tim Gardner Mon, 05 Dec 2016 07:41:58 -0700 + +linux (4.9.0-6.7) zesty; urgency=low + + * Miscellaneous Ubuntu changes + - Set build_arch=x86 for i386 + + -- Tim Gardner Thu, 01 Dec 2016 21:00:11 -0700 + +linux (4.9.0-5.6) zesty; urgency=low + + * Miscellaneous Ubuntu changes + - [Debian] restore tools build + - Set build_arch=x86 for amd64 and x32 + + -- Tim Gardner Thu, 01 Dec 2016 07:06:20 -0700 + +linux (4.9.0-4.5) zesty; urgency=low + + * linux: Staging modules should be unsigned (LP: #1642368) + - [Debian] Suppress module signing for staging drivers + - SAUCE: Add rtl drivers to signature inclusion list + + * [17.04 FEAT] Build IMA and the TPM device drivers into the KVM on POWER + host/NV kernel (LP: #1643652) + - [Config] CONFIG_IMA=y + + * Miscellaneous Ubuntu changes + - [Debian] config-check -- Make it easier to find annotations syntax errors + - [Config] Enable various drivers for ARM platforms + - [Config] Fix s390x config carnage + - [Config] Set CONFIG_KEXEC=y for all architectures + - [Config] Fix up CONFIG_I2C_SLAVE values + - [Config] Set CONFIG_WLAN_VENDOR_TI=y for all supported kernels + - [Config] Set CONFIG_PWM_PCA9685=m for amd64 and i386 + - [Config] Set CONFIG_ZONE_DMA=m for amd64-generic + - [Config] Update annotations + - [Config] CONFIG_NR_CPUS=8192 for amd64 + + -- Tim Gardner Mon, 28 Nov 2016 12:57:09 -0700 + +linux (4.9.0-3.4) zesty; urgency=low + + * Miscellaneous Ubuntu changes + - SAUCE: (namespace) security/integrity: Harden against malformed xattrs + - SAUCE: (namespace) block_dev: Support checking inode permissions in lookup_bdev() + - SAUCE: (namespace) block_dev: Check permissions towards block device inode when mounting + - SAUCE: (namespace) mtd: Check permissions towards mtd block device inode when mounting + - SAUCE: (namespace) fs: Allow superblock owner to change ownership of inodes + - SAUCE: (namespace) fs: Don't remove suid for CAP_FSETID for userns root + - SAUCE: (namespace) fs: Allow superblock owner to access do_remount_sb() + - SAUCE: (namespace) capabilities: Allow privileged user in s_user_ns to set security.* xattrs + - SAUCE: (namespace) fs: Allow CAP_SYS_ADMIN in s_user_ns to freeze and thaw filesystems + - SAUCE: (namespace) posix_acl: Export posix_acl_fix_xattr_userns() to modules + - SAUCE: (namespace) fuse: Add support for pid namespaces + - SAUCE: (namespace) fuse: Support fuse filesystems outside of init_user_ns + - SAUCE: (namespace) fuse: Translate ids in posix acl xattrs + - SAUCE: (namespace) fuse: Restrict allow_other to the superblock's namespace or a descendant + - SAUCE: (namespace) fuse: Allow user namespace mounts + - SAUCE: (namespace) ext4: Add support for unprivileged mounts from user namespaces + - SAUCE: (namespace) ext4: Add module parameter to enable user namespace mounts + - SAUCE: (namespace) block_dev: Forbid unprivileged mounting when device is opened for writing + - SAUCE: (noup) Update spl to 0.6.5.8-0ubuntu7, zfs to 0.6.5.8-2ubuntu1 + + * Miscellaneous upstream changes + - Revert "UBUNTU: SAUCE: overlayfs: Skip permission checking for trusted.overlayfs.* xattrs" + + [ Upstream Kernel Changes ] + + * rebase to v4.9-rc7 + + -- Tim Gardner Tue, 22 Nov 2016 07:51:48 -0700 + +linux (4.9.0-2.3) zesty; urgency=low + + * Fix Kernel Crashing under IBM Virtual Scsi Driver (LP: #1642299) + - SAUCE: ibmvscsis: Rearrange functions for future patches + - SAUCE: ibmvscsis: Synchronize cmds at tpg_enable_store time + - SAUCE: ibmvscsis: Synchronize cmds at remove time + - SAUCE: ibmvscsis: Clean up properly if target_submit_cmd/tmr fails + - SAUCE: ibmvscsis: Return correct partition name/# to client + - SAUCE: ibmvscsis: Issues from Dan Carpenter/Smatch + + * Move some kernel modules to the main kernel package (LP: #1642228) + - [Config] Move some powerpc kernel modules to the main kernel package + + * linux: Staging modules should be unsigned (LP: #1642368) + - [Debian] Suppress module signing for staging drivers + + * Miscellaneous Ubuntu changes + - SAUCE: UEFI: bpf: disable bpf when module security is enabled + + [ Upstream Kernel Changes ] + + * rebase to v4.9-rc6 + + -- Tim Gardner Tue, 15 Nov 2016 10:59:54 -0700 + +linux (4.9.0-1.2) zesty; urgency=low + + * hio: SSD data corruption under stress test (LP: #1638700) + - SAUCE: hio: set bi_error field to signal an I/O error on a BIO + - SAUCE: hio: splitting bio in the entry of .make_request_fn + + * hio Ubuntu sauce driver needs porting to 4.8 (LP: #1635594) + - SAUCE: import Huawei ES3000_V2 (2.1.0.23) + - SAUCE: hio: bio_endio() no longer takes errors arg + - SAUCE: hio: blk_queue make_request_fn now returns a blk_qc_t + - SAUCE: hio: use alloc_cpumask_var to avoid -Wframe-larger-than + - SAUCE: hio: fix mask maybe-uninitialized warning + - SAUCE: hio: port to v4.8 base + - [config] enable CONFIG_HIO (Huawei ES3000_V2 PCIe SSD driver) + - SAUCE: hio: Makefile and Kconfig + - [Config] Enforce CONFIG_HIO + + * Miscellaneous Ubuntu changes + - rebase to v4.9-rc5 + - zfs: remove the never implemented aio_fsync file operation + - [Config] Disable powerpc64-emb for FTBS + + [ Upstream Kernel Changes ] + + * rebase to v4.9-rc5 + + -- Tim Gardner Tue, 08 Nov 2016 08:02:32 -0700 + +linux (4.9.0-0.1) zesty; urgency=low + + [ Upstream Kernel Changes ] + + * rebase to v4.9-rc4 + - LP: #1465724 + - LP: #1535802 + + -- Tim Gardner Sun, 16 Oct 2016 21:46:31 -0600 + +linux (4.9.0-0.0) yakkety; urgency=low + + [ Seth Forshee ] + + * Release Tracking Bug + - LP: #1632918 + + * Revert "If zone is so small that watermarks are the same, stop zone balance" + in yakkety (LP: #1632894) + - Revert "UBUNTU: SAUCE: (no-up) If zone is so small that watermarks are the + same, stop zone balance." + + -- Seth Forshee Wed, 12 Oct 2016 21:57:07 -0500 + +linux (4.8.0-24.26) yakkety; urgency=low + + [ Seth Forshee ] + + * Release Tracking Bug + - LP: #1632749 + + * lts-yakkety 4.8 cannot mount lvm raid1 (LP: #1631298) + - SAUCE: (no-up) dm raid: fix compat_features validation + + * kswapd0 100% CPU usage (LP: #1518457) + - SAUCE: (no-up) If zone is so small that watermarks are the same, stop zone + balance. + + -- Seth Forshee Wed, 12 Oct 2016 10:21:44 -0500 + +linux (4.8.0-23.25) yakkety; urgency=low + + [ Seth Forshee ] + + * Release Tracking Bug + - LP: #1632484 + + * [Trusty->Yakkety] powerpc/64: Fix incorrect return value from + __copy_tofrom_user (LP: #1632462) + - SAUCE: (no-up) powerpc/64: Fix incorrect return value from + __copy_tofrom_user + + * Ubuntu 16.10: Oops panic in move_page_tables/page_remove_rmap after running + memory_stress_ng. (LP: #1628976) + - SAUCE: (no-up) powerpc/pseries: Fix stack corruption in htpe code + + * Paths not failed properly when unmapping virtual FC ports in VIOS (using + ibmvfc) (LP: #1632116) + - scsi: ibmvfc: Fix I/O hang when port is not mapped + + * [Ubuntu16.10]KV4.8: kernel livepatch config options are not set + (LP: #1626983) + - [Config] Enable live patching on powerpc/ppc64el + + * CONFIG_AUFS_XATTR is not set (LP: #1557776) + - [Config] CONFIG_AUFS_XATTR=y + + * Yakkety update to 4.8.1 stable release (LP: #1632445) + - arm64: debug: avoid resetting stepping state machine when TIF_SINGLESTEP + - Using BUG_ON() as an assert() is _never_ acceptable + - usb: misc: legousbtower: Fix NULL pointer deference + - Staging: fbtft: Fix bug in fbtft-core + - usb: usbip: vudc: fix left shift overflow + - USB: serial: cp210x: Add ID for a Juniper console + - Revert "usbtmc: convert to devm_kzalloc" + - ALSA: hda - Adding one more ALC255 pin definition for headset problem + - ALSA: hda - Fix headset mic detection problem for several Dell laptops + - ALSA: hda - Add the top speaker pin config for HP Spectre x360 + - Linux 4.8.1 + + * PSL data cache should be flushed before resetting CAPI adapter + (LP: #1632049) + - cxl: Flush PSL cache before resetting the adapter + + * thunder nic: avoid link delays due to RX_PACKET_DIS (LP: #1630038) + - net: thunderx: Don't set RX_PACKET_DIS while initializing + + * crypto/vmx/p8_ghash memory corruption (LP: #1630970) + - crypto: ghash-generic - move common definitions to a new header file + - crypto: vmx - Fix memory corruption caused by p8_ghash + - crypto: vmx - Ensure ghash-generic is enabled + + * arm64: SPCR console not autodetected (LP: #1630311) + - of/serial: move earlycon early_param handling to serial + - [Config] CONFIG_ACPI_SPCR_TABLE=y + - ACPI: parse SPCR and enable matching console + - ARM64: ACPI: enable ACPI_SPCR_TABLE + - serial: pl011: add console matching function + + * include/linux/security.h header syntax error with !CONFIG_SECURITYFS + (LP: #1630990) + - SAUCE: (no-up) include/linux/security.h -- fix syntax error with + CONFIG_SECURITYFS=n + + * sha1-powerpc returning wrong results (LP: #1629977) + - crypto: sha1-powerpc - little-endian support + + -- Seth Forshee Tue, 11 Oct 2016 16:38:45 -0500 + +linux (4.8.0-22.24) yakkety; urgency=low + + * CVE-2016-7039 (LP: #1631287) + - SAUCE: net: add recursion limit to GRO + + -- Andy Whitcroft Fri, 07 Oct 2016 22:46:28 +0100 + +linux (4.8.0-21.23) yakkety; urgency=low + + [ Tim Gardner ] + + * Release Tracking Bug + - LP: #1630279 + + * powerpc 4.8.0-17 fails to boot on PowerMac G5 (LP: #1628968) + - Revert "Revert "powerpc: Simplify module TOC handling"" + + * Regression tests can not detect binfmt_elf mmpa semantic change + (LP: #1630069) + - SAUCE: apparmor: add flag to detect semantic change, to binfmt_elf mmap + + * Autofs parameter substitution broken in kernel 4.4.0-38 and 4.4.0-40 + (LP: #1629204) + - SAUCE: (namespace) autofs4: Use real_cred for requestor's ids + + -- Tim Gardner Tue, 04 Oct 2016 08:01:21 -0600 + +linux (4.8.0-20.22) yakkety; urgency=low + + [ Tim Gardner ] + + * Release Tracking Bug + - LP: #1629730 + + [ Upstream Kernel Changes ] + + * rebase to v4.8 + + -- Tim Gardner Sun, 02 Oct 2016 19:10:40 -0600 + +linux (4.8.0-19.21) yakkety; urgency=low + + [ Tim Gardner ] + + * Release Tracking Bug + - LP: #1629057 + + * 4.8.0 kernels do not complete boot process on VM (LP: #1627198) + - [Config] CONFIG_HARDENED_USERCOPY_PAGESPAN=n + + * mount-image-callback cannot mount partitioned disk image (LP: #1628336) + - SAUCE: nbd: Only delay uevent until connected + + * Support snaps inside of lxd containers (LP: #1611078) + - apparmor: add interface to be able to grab loaded policy + - securityfs: update interface to allow inode_ops, and setup from vfs fns + - apparmor: refactor aa_prepare_ns into prepare_ns and create_ns routines + - apparmor: add __aa_find_ns fn + - apparmor: add mkdir/rmdir interface to manage policy namespaces + - apparmor: fix oops in pivot_root mediation + - apparmor: fix warning that fn build_pivotroot discards const + - apparmor: add interface to advertise status of current task stacking + - apparmor: update policy permissions to consider ns being viewed/managed + - apparmor: add per ns policy management interface + - apparmor: bump domain stacking version to 1.2 + + * linux-image-extra-4.8.0-17-generic does not provide many sound card modules + (LP: #1628523) + - [Config] CONFIG_ZONE_DMA=y for generic + + * Yakkety - disable ARCH_ZX (LP: #1628503) + - [Config] armhf: disable ARCH_ZX + + * Enable switchdev config parameter for Yakkety (LP: #1628241) + - [Config] CONFIG_NET_SWITCHDEV=y for amd64/arm64 + + * Ubuntu 16.10 kernel v4.8: Installation failing on Habanero with Shiner card + (LP: #1628009) + - firmware: Update bnx2x to 7.13.1.0 + + * vNIC driver missing in 4.8 kernel package (LP: #1628187) + - [Config] Enable CONFIG_IBMVNIC=m + + * Yakkety - armhf: MFD_TPS65217 and REGULATOR_TPS65217 are boot essential + (LP: #1628112) + - [Config] armhf: MFD_TPS65217=y && REGULATOR_TPS65217=y + + * Miscellaneous Ubuntu changes + - Rebase to v4.8-rc8 + - [Config] skip Ubuntu-4.8.0-18.20 + - [Config] missing modules in armhf/s390x + + * Miscellaneous Ubuntu changes + - rebase to v4.8-rc8 + + -- Leann Ogasawara Sun, 25 Sep 2016 12:13:35 -0700 + +linux (4.8.0-17.19) yakkety; urgency=low + + * Release Tracking Bug + - LP: #1627387 + + * build squashfs into xenial kernels by default (LP: #1593134) + - Remove squashfs udeb + + * [Yakkety] Fix up ATA_GENERIC to match annotations file. (LP: #1627322) + - Add d-i support for ata_generic + + * [Yakkety] Fix up CONFIG_BLK_DEV_SD to match annotations (LP: #1627330) + - [Config] Enforce CONFIG_BLK_DEV_SD=y,CONFIG_BLK_DEV_SR=y + + * [Yakkety] Fix up ATA_PIIX to match annotations file (LP: #1627324) + - [Config] Enforce CONFIG_ATA_PIIX=y for amd64/i386 + + * Yakkety - USB drivers must be built in (LP: #1627323) + - Update annotation enforcement for CONFIG_USB_[E|O|U|X]HCI_HCD + + * 4.8.0-16.17: genirq: Flags mismatch serial vs goldfish_pdev_bus + (LP: #1627052) + - [Config] CONFIG_GOLDFISH=n + + * yakkety 4.8, remove module noise kernel-4.8 (LP: #1626104) + - Revert "UBUNTU: SAUCE: Clear Linux: bootstats: add printk's to measure boot + time in more detail" + + * Permission denied in CIFS with kernel 4.4.0-38 (LP: #1626112) + - SAUCE: Fix regression which breaks DFS mounting + + * Miscellaneous Ubuntu changes + - [Config] apply xenial configuration annotations + - s390x -- DEBUG_RODATA is now valid + - [Config] s390x -- CONFIG_SQUASHFS=y + - [Config] s390x -- CONFIG_ECRYPT_FS=y + - [Config] Enable CONFIG_ACPI_PCI_SLOT=y for arm64 + - [Config] Enable CONFIG_ACPI_HED=y for arm64 + - [Config] Enable CONFIG_QUICC_ENGINE=y + + * Miscellaneous upstream changes + - annotations: pull back to xenial + + -- Leann Ogasawara Sat, 24 Sep 2016 21:31:31 -0700 + +linux (4.8.0-16.17) yakkety; urgency=low + + [ Tim Gardner ] + + * Release Tracking Bug + - LP: #1626768 + + * Support ARM GIC ITS in ACPI mode (LP: #1626631) + - [Config] CONFIG_ACPI_IORT=y + - SAUCE: ACPI: I/O Remapping Table (IORT) initial support + - SAUCE: ACPI: Add new IORT functions to support MSI domain handling + - SAUCE: irqchip/gicv3-its: Cleanup for ITS domain initialization + - SAUCE: irqchip/gicv3-its: Refactor ITS DT init code to prepare for ACPI + - SAUCE: irqchip/gicv3-its: Probe ITS in the ACPI way + - SAUCE: irqchip/gicv3-its: Factor out PCI-MSI part that might be reused for ACPI + - SAUCE: irqchip/gicv3-its: Use MADT ITS subtable to do PCI/MSI domain initialization + - SAUCE: PCI/MSI: Setup MSI domain on a per-device basis using IORT ACPI table + + * 4.8 dropped CONFIG_ATA=y (breaks systemd's TEST-08-ISSUE-2730 upstream test) + (LP: #1626394) + - [Config] CONFIG_ATA=y + + * Yakkety: Enable drivers with respect to Xenial (LP: #1626543) + - [Config] CONFIG_VMD=m + - [Config] CONFIG_MAC80211_RC_MINSTREL_VHT=y for all arches + - [Config] CONFIG_OF=y for all arches + - [Config] CONFIG_BLK_DEV_NVME_SCSI=y + - [Config] Xenial device settings sync with amd64 + - [Config] Xenial device settings sync with i386 + - [Config] CONFIG_MTD_UBI_GLUEBI=m + - [Config] Xenial device settings sync with armhf + - [Config] Xenial device settings sync with arm64 + + * yakkety 4.8, missing config CONFIG_USERFAULTFD=y (LP: #1626149) + - [Config] CONFIG_USERFAULTFD=y + + * 4.8 regression: SLAB is being used instead of SLUB (LP: #1626564) + - [Config] CONFIG_SLUB=y + + * image won't boot after upgrading to yakkety's 4.8 kernel because efi + (LP: #1626158) + - add nls_cp437 to the generic.inclusion-list + + -- Tim Gardner Thu, 22 Sep 2016 06:51:45 -0600 + +linux (4.8.0-15.16) yakkety; urgency=low + + [ Tim Gardner ] + + * Release Tracking Bug + - LP: #1626239 + + * image won't boot after upgrading to yakkety's 4.8 kernel because efi + (LP: #1626158) + - [Config] CONFIG_FAT_DEFAULT_IOCHARSET=iso8859-1 + - [Config] CONFIG_NLS_CODEPAGE_437=y + - [Config] CONFIG_VFAT_FS=y + + * Miscellaneous Ubuntu changes + - SAUCE: seccomp: log actions even when audit is disabled + + -- Tim Gardner Wed, 21 Sep 2016 06:41:03 -0600 + +linux (4.8.0-14.15) yakkety; urgency=low + + * CVE-2016-1575 (LP: #1534961) + - SAUCE: overlayfs: Skip permission checking for trusted.overlayfs.* xattrs + - SAUCE: overlayfs: Be more careful about copying up sxid files + - SAUCE: overlayfs: Propogate nosuid from lower and upper mounts + + * CVE-2016-1576 (LP: #1535150) + - SAUCE: overlayfs: Skip permission checking for trusted.overlayfs.* xattrs + - SAUCE: overlayfs: Be more careful about copying up sxid files + - SAUCE: overlayfs: Propogate nosuid from lower and upper mounts + + * overlay: mkdir fails if directory exists in lowerdir in a user namespace + (LP: #1531747) + - SAUCE: overlayfs: Skip permission checking for trusted.overlayfs.* xattrs + + * Miscellaneous Ubuntu changes + - [Config] CONFIG_PM_WAKELOCKS=y + - [Config] CONFIG_CLEANCACHE=y + - [Config] CONFIG_WQ_POWER_EFFICIENT_DEFAULT=y + - [Config] CONFIG_PROCESSOR_SELECT=y + - [Config] Enabled some networking options + - SAUCE: overlayfs: Enable user namespace mounts + + -- Leann Ogasawara Tue, 20 Sep 2016 13:56:58 -0700 + +linux (4.8.0-13.14) yakkety; urgency=low + + [ Tim Gardner ] + + * Release Tracking Bug + - LP: #1625733 + + * fails to mount ext4 crypto-crc32 is missing (LP: #1625728) + - [Config] Add some CRC crypto modules to d-i + + * Linux netfilter IPT_SO_SET_REPLACE memory corruption (LP: #1555338) + - SAUCE: [nf,v2] netfilter: x_tables: don't rely on well-behaving userspace + + * Brightness control on Lenovo ThinkPad T430 does not work. (LP: #1183856) + - SAUCE: (no-up) ACPI: Disable Windows 8 compatibility for some Lenovo + ThinkPads + + * Option GE0301 3G modem doesn't work (LP: #348861) + - SAUCE: (no-up) Added quirk to recognize GE0301 3G modem as an interface. + + * [regression 4.4 -> 4.8] Please re-enable CONFIG_TOUCHSCREEN_ELAN + (LP: #1625259) + - [Config] CONFIG_TOUCHSCREEN_ELAN=m for all arches + + * Miscellaneous Ubuntu changes + - SAUCE: (namespace) block_dev: Forbid unprivileged mounting when device is + opened for writing + - SAUCE: fan: add VXLAN implementation + - [Config] CONFIG_VFIO=m for ppc64el + + -- Tim Gardner Mon, 19 Sep 2016 10:50:29 -0600 + +linux (4.8.0-12.13) yakkety; urgency=low + + [ Tim Gardner ] + + * Release Tracking Bug + - LP: #1625233 + + * Miscellaneous Ubuntu changes + - rebase to v4.8-rc7 + - [Config] CONFIG_SCSI_DEBUG=m for all arches + + -- Tim Gardner Mon, 19 Sep 2016 06:35:21 -0600 + +linux (4.8.0-11.12) yakkety; urgency=low + + * change_hat is logging failures during expected hat probing (LP: #1615893) + - SAUCE: apparmor: Fix auditing behavior for change_hat probing + + * deleted files outside of the namespace are not being treated as + disconnected + (LP: #1615892) + - SAUCE: apparmor: deleted dentries can be disconnected + + * stacking to unconfined in a child namespace confuses mediation + (LP: #1615890) + - SAUCE: apparmor: special case unconfined when determining the mode + + * apparmor module parameters can be changed after the policy is locked + (LP: #1615895) + - SAUCE: apparmor: fix: parameters can be changed after policy is locked + + * AppArmor profile reloading causes an intermittent kernel BUG (LP: + #1579135) + - SAUCE: apparmor: fix vec_unique for vectors larger than 8 + + * label vec reductions can result in reference labels instead of direct + access + to labels (LP: #1615889) + - SAUCE: apparmor: reduction of vec to single entry is just that entry + + * profiles from different namespaces can block other namespaces from being + able to load a profile (LP: #1615887) + - SAUCE: apparmor: profiles in one ns can affect mediation in another ns + + * The label build for onexec when stacking is wrong (LP: #1615881) + - SAUCE: apparmor: Fix label build for onexec stacking. + + * The inherit check for new to old label comparison for domain transitions + is + wrong (LP: #1615880) + - SAUCE: apparmor: Fix new to old label comparison for domain transitions + + * warning stack trace while playing with apparmor namespaces (LP: #1593874) + - SAUCE: apparmor: fix stack trace when removing namespace with profiles + + * __label_update proxy comparison test is wrong (LP: #1615878) + - SAUCE: apparmor: Fix __label_update proxy comparison test + + * reading /sys/kernel/security/apparmor/profiles requires CAP_MAC_ADMIN + (LP: #1560583) + - SAUCE: apparmor: Allow ns_root processes to open profiles file + - SAUCE: apparmor: Consult sysctl when reading profiles in a user ns + + * policy namespace stacking (LP: #1379535) + - SAUCE: (no-up) apparmor: rebase of apparmor3.5-beta1 snapshot for 4.8 + - SAUCE: add a sysctl to enable unprivileged user ns AppArmor policy loading + + * Miscellaneous Ubuntu changes + - [Debian] Dynamically determine linux udebs package name + - [Debian] d-i -- fix dtb handling in new kernel-wedge form + - SAUCE: apparmor: Fix FTBFS due to bad include path + - SAUCE: apparmor: add data query support + - [Config] Set CONFIG_SECURITY_APPARMOR_UNCONFINED_INIT=y + + * Miscellaneous upstream changes + - fixup backout policy view capable for forward port + - apparmor: fix: Rework the iter loop for label_update + - apparmor: add more assertions for updates/merges to help catch errors + - apparmor: Make pivot root transitions work with stacking + - apparmor: convert delegating deleted files to mediate deleted files + - apparmor: add missing parens. not a bug fix but highly recommended + - apparmor: add a stack_version file to allow detection of bug fixes + - apparmor: push path lookup into mediation loop + - apparmor: default to allowing unprivileged userns policy + - apparmor: fix: permissions test to view and manage policy + - apparmor: Add Basic ns cross check condition for ipc + + -- Leann Ogasawara Sat, 17 Sep 2016 10:03:16 -0700 + +linux (4.8.0-10.11) yakkety; urgency=low + + * Miscellaneous Ubuntu changes + - ubuntu: vbox -- update to 5.1.6-dfsg-1 + - SAUCE: Enable vbox build + + -- Tim Gardner Thu, 15 Sep 2016 07:10:51 -0600 + +linux (4.8.0-9.10) yakkety; urgency=low + + * Miscellaneous Ubuntu changes + - [Config] arm64: CONFIG_ARCH_THUNDER=y + - [Config] arm64: CONFIG_PCI_HOST_THUNDER_*=y + - [Config] arm64: CONFIG_NUMA_BALANCING_DEFAULT_ENABLED=y + - [Config] arm64: CONFIG_DRM_AST=m + - [Config] arm64: CONFIG_FRAMEBUFFER_CONSOLE=y + - d-i: initrd needs ext4 and scsi modules + - SAUCE: AUFS aufs4.x-rcN 20160912 + - [Config] Enable CONFIG_GPIO_XGENE* + - [Config] Disable CONFIG_POWER_RESET_XGENE + - [Config] CONFIG_EDAC_XGENE=m + - [Config] CONFIG_ARM64_ACPI_PARKING_PROTOCOL=y + - [Config] CONFIG_XGENE_DMA=m + + -- Tim Gardner Mon, 12 Sep 2016 10:26:12 -0600 + +linux (4.8.0-8.9) yakkety; urgency=low + + * New device ID for Kabypoint (LP: #1622469) + - mfd: lpss: Add Intel Kaby Lake PCH-H PCI IDs + - SAUCE: i2c: i801: Add support for Kaby Lake PCH-H + + * Miscellaneous Ubuntu changes + - rebase to v4.8-rc6 + - SAUCE: (noup) Update spl to 0.6.5.8-0ubuntu1, zfs to 0.6.5.8-0ubuntu1 + + [ Upstream Kernel Changes ] + + * rebase to v4.8-rc6 + - LP: #1617900 + + -- Tim Gardner Fri, 09 Sep 2016 10:53:40 -0600 + +linux (4.8.0-7.8) yakkety; urgency=low + + * Miscellaneous Ubuntu changes + - [Debian] Use src_pkg_name when constructing udeb control files + + -- Tim Gardner Fri, 09 Sep 2016 07:26:25 -0600 + +linux (4.8.0-6.7) yakkety; urgency=low + + * Enable virtual scsi server driver for Power (LP: #1615665) + - SAUCE: Ibmvscsis: Properly deregister target sessions + - SAUCE: Return TCMU-generated sense data to fabric module + - SAUCE: Ibmvscsis: Code cleanup of print statements + - SAUCE: Ibmvscsis: Fixed a bug reported by Dan Carpenter + + * Miscellaneous Ubuntu changes + - [Config] CONFIG_XEN_FBDEV_FRONTEND=m + - rebase to v4.8-rc5 + + [ Upstream Kernel Changes ] + + * rebase to v4.8-rc5 + + -- Tim Gardner Thu, 01 Sep 2016 12:09:26 -0600 + +linux (4.8.0-5.6) yakkety; urgency=low + + * support compressed kernels on arm64 (LP: #1384955) + - [Config] Switch to compressed Image on arm64 + + * Miscellaneous Ubuntu changes + - SAUCE: (namespace) security/integrity: Harden against malformed xattrs + - SAUCE: (namespace) block_dev: Support checking inode permissions in + lookup_bdev() + - SAUCE: (namespace) block_dev: Check permissions towards block device inode + when mounting + - SAUCE: (namespace) mtd: Check permissions towards mtd block device inode + when mounting + - SAUCE: (namespace) fs: Allow superblock owner to change ownership of inodes + - SAUCE: (namespace) fs: Don't remove suid for CAP_FSETID for userns root + - SAUCE: (namespace) fs: Allow superblock owner to access do_remount_sb() + - SAUCE: (namespace) capabilities: Allow privileged user in s_user_ns to set + security.* xattrs + - SAUCE: (namespace) fs: Allow CAP_SYS_ADMIN in s_user_ns to freeze and thaw + filesystems + - SAUCE: (namespace) posix_acl: Export posix_acl_fix_xattr_userns() to modules + - SAUCE: (namespace) fuse: Add support for pid namespaces + - SAUCE: (namespace) fuse: Support fuse filesystems outside of init_user_ns + - SAUCE: (namespace) fuse: Translate ids in posix acl xattrs + - SAUCE: (namespace) fuse: Restrict allow_other to the superblock's namespace + or a descendant + - SAUCE: (namespace) fuse: Allow user namespace mounts + - SAUCE: (namespace) ext4: Add support for unprivileged mounts from user + namespaces + - SAUCE: (namespace) ext4: Add module parameter to enable user namespace + mounts + - rebase to v4.8-rc4 + + [ Upstream Kernel Changes ] + + * rebase to v4.8-rc4 + + -- Tim Gardner Thu, 25 Aug 2016 07:13:03 -0600 + +linux (4.8.0-4.5) yakkety; urgency=low + + * Miscellaneous Ubuntu changes + - [Config] CONFIG_AUFS_FS=m + - SAUCE: AUFS 27ef55c6d5f4726b33f60b33a9888963d26fa7fb + + -- Tim Gardner Tue, 23 Aug 2016 12:25:59 -0600 + +linux (4.8.0-3.4) yakkety; urgency=low + + * MacBookPro11,4 fails to poweroff or suspend (LP: #1587714) + - SAUCE: PCI: Workaround to enable poweroff on Mac Pro 11 + + * Miscellaneous Ubuntu changes + - rebase to v4.8-rc3 + + -- Tim Gardner Thu, 18 Aug 2016 10:33:07 -0600 + +linux (4.8.0-2.3) yakkety; urgency=low + + * Miscellaneous Ubuntu changes + - [Config] Add fuse to inclusion list + - SAUCE: update spl/zfs to support v4.8 + + * Miscellaneous upstream changes + - Revert "UBUNTU: [Debian] do_zfs=false" + + -- Tim Gardner Wed, 17 Aug 2016 08:06:33 -0600 + +linux (4.8.0-1.2) yakkety; urgency=low + + * Miscellaneous Ubuntu changes + - [Config] Enabled enforcement for CONFIG_HOTPLUG_PCI_PCIE + - [Config] Enabled enforcement for CONFIG_NVRAM + - [Config] Enabled enforcement for CONFIG_FRAMEBUFFER_CONSOLE + - [Config] Enabled enforcement for CONFIG_DRM_MGAG200 + - [Config] Enabled enforcement for CONFIG_INPUT_UINPUT + - [Config] Enabled enforcement for CONFIG_THERM_ADT746X + - [Config] Enabled enforcement for CONFIG_REGULATOR_TWL4030 + - [Config] Enabled enforcement for CONFIG_SECCOMP + - [Config] Enabled enforcement for + - rebase to v4.8-rc2 + - [Config] Dropped CONFIG_OVERLAY_FS_V1 from annotations + - [Config] CONFIG_SECURITY_PERF_EVENTS_RESTRICT=y + - SAUCE: security,perf: Allow further restriction of perf_event_open + + [ Upstream Kernel Changes ] + + * rebase to v4.8-rc2 + + -- Tim Gardner Thu, 11 Aug 2016 11:08:14 -0600 + +linux (4.8.0-0.1) yakkety; urgency=low + + [ Upstream Kernel Changes ] + + * rebase to v4.8-rc1 + - LP: #1607647 + - LP: #1498667 + - LP: #1592547 + - LP: #1319984 + - LP: #1268727 + - LP: #1600623 + - LP: #1465724 + - LP: #1333569 + + -- Tim Gardner Tue, 02 Aug 2016 14:23:12 -0600 + +linux (4.8.0-0.0) yakkety; urgency=low + + * empty stanza + + -- Tim Gardner Tue, 02 Aug 2016 10:53:17 -0600 + +linux (4.7.0-0.2) yakkety; urgency=low + + * Miscellaneous Ubuntu changes fixing various FTBS issues + - [Config] CONFIG_BLK_DEV_CRYPTOLOOP=m + - [Config] make powerpc udeb block modules optional + - [Config] CONFIG_PLIP=m + - [Config] CONFIG_IRDA=m armhf/arm64 + - [Config] CONFIG_IPMI_HANDLER=m armhf/arm64 + - [Config] CONFIG_MOUSE_PS2=m + - [Config] remove ppc64el fb-modules + + -- Tim Gardner Mon, 01 Aug 2016 10:00:57 -0600 + +linux (4.7.0-0.1) yakkety; urgency=low + + [ Upstream Kernel Changes ] + + * rebase to v4.7 + - LP: #972604 + + -- Tim Gardner Mon, 06 Jun 2016 12:00:45 -0600 + +linux (4.7.0-0.0) yakkety; urgency=low + + [ Tim Gardner ] + + * Release Tracking Bug + - LP: #1588856 + + * linux: 4.6 kernel fails to boot on ppc64el multi-path system (LP: #1588421) + - scsi_dh_alua: do not fail for unknown VPD identification + + * [Hyper-V] Put tools/hv/lsvmbus in /usr/sbin (LP: #1585311) + - [Config] Install lsvmbus in cloud tools + - SAUCE: tools/hv/lsvmbus -- convert to python3 + - SAUCE: tools/hv/lsvmbus -- add manual page + + * boot stalls on USB detection errors (LP: #1437492) + - usb: core: hub: hub_port_init lock controller instead of bus + + * [Bug]KNL:Spread MWAIT cache lines over all nodes (LP: #1585850) + - kernek/fork.c: allocate idle task for a CPU always on its local node + + * VirtIO (and probably other modules as well) is built-in, make it modular... + (LP: #1475078) + - [Config] CONFIG_VIRTIO_*=m for all but s390x + - [Config] CONFIG_USB=m + - [Config] CONFIG_BLK_DEV_*=m + - [Config] CONFIG_ATA=m + - [Config] CONFIG_SCSI=m + - [Config] CONFIG_DEVFREQ_GOV_*=m + - [Config] CONFIG_XEN_NETDEV_*=m + - [Config] CONFIG_AGP=m + - [Config] CONFIG_ECRYPT_FS=m + - [Config] CONFIG_ACPI_*=m + - [Config] CONFIG_CPU_FREQ_GOV_*=m for all but powerpc/ppc64el + - [Config] Modularize some CRYPTO + - [Config] CONFIG_FDDI=m + - [Config] CONFIG_FIXED_PHY=m + - [Config] CONFIG_VFAT_FS=m for all but armhf + - [Config] CONFIG_TUN=m + - [Config] CONFIG_UNIX=m + - [Config] CONFIG_TRUSTED_KEYS=m + - [Config] CONFIG_LEDS_CLASS=m for amd64,i386,ppc64el + + * debian.master/.../getabis bogus warnings "inconsistant compiler versions" + and "not a git repository" (LP: #1584890) + - [debian] getabis: Only git add $abidir if running in local repo + - [debian] getabis: Fix inconsistent compiler versions check + + * conflicting modules in udebs - arc4.ko (LP: #1582991) + - [Config] Remove arc4 from nic-modules + + * arm64: statically link rtc-efi (LP: #1583738) + - [Config] Link rtc-efi statically on arm64 + + * Miscellaneous Ubuntu changes + - [Debian] zfs: transform symlink into referent file/dir + - [Debian] Added tristate.sh + - [Config] CONFIG_FUSE_FS=m + - [Config] CONFIG_ACPI_APEI_ERST_DEBUG=m + - [Config] CONFIG_PSTORE_CONSOLE=y + - Added Snapcraft files + - [Config] Mark CONFIG_UNIX enforced + + * Miscellaneous upstream changes + - Revert "UBUNTU: [Config] CONFIG_UNIX=m" + + -- Tim Gardner Tue, 17 May 2016 11:20:20 -0600 + +linux (4.6.0-6.7) yakkety; urgency=low + + [ Tim Gardner ] + + * Release Tracking Bug + - LP: #1582753 + + * Unsharing user and ipc namespaces simultaneously makes mqueue unmountable + (LP: #1582378) + - SAUCE: (namespace) mqueue: Super blocks must be owned by the user ns which + owns the ipc ns + + * Miscellaneous Ubuntu changes + - [Config] Add Description to kernel-image udeb + - SAUCE: (noup) mm: Use phys_addr_t for reserve_bootmem_region arguments + - SAUCE: (noup) Update spl to 0.6.5.7-0ubuntu1, zfs to 0.6.5.7-0ubuntu1 + + * Miscellaneous upstream changes + - Drivers: hv: vmbus: Introduce functions for estimating room in the ring buffer + - Drivers: hv: vmbus: Use READ_ONCE() to read variables that are volatile + - Drivers: hv: vmbus: Use the new virt_xx barrier code + - Drivers: hv: vmbus: Export the vmbus_set_event() API + - Drivers: hv: vmbus: Move some ring buffer functions to hyperv.h + - Drivers: hv: vmbus: Implement APIs to support "in place" consumption of vmbus packets + - drivers:hv: Lock access to hyperv_mmio resource tree + - drivers:hv: Make a function to free mmio regions through vmbus + - drivers:hv: Reverse order of resources in hyperv_mmio + - drivers:hv: Track allocations of children of hv_vmbus in private resource tree + - drivers:hv: Record MMIO range in use by frame buffer + - drivers:hv: Separate out frame buffer logic when picking MMIO range + - Drivers: hv: kvp: fix IP Failover + - Drivers: hv: vmbus: handle various crash scenarios + - Drivers: hv: balloon: don't crash when memory is added in non-sorted order + - Drivers: hv: balloon: reset host_specified_ha_region + + [ Tim Gardner ] + + * Dropped hv SAUCE patches in favor of linux-next. + + -- Tim Gardner Mon, 16 May 2016 13:50:30 -0600 + +linux (4.6.0-5.6) yakkety; urgency=low + + [ Tim Gardner ] + + * Release Tracking Bug + - LP: #1582351 + + * aufs CONFIG_AUFS_EXPORT build option should be enabled (LP: #1121699) + - [Config] enable CONFIG_AUFS_EXPORT + + * promote *_diag modules from linux-image-extra to linux-image (LP: #1580355) + - [Config] Update inclusion list for CRIU + + * zfs: disable module checks for zfs when cross-compiling (LP: #1581127) + - [Debian] disable zfs module checks when cross-compiling + + * insecure overlayfs xattrs handling in copy_up (LP: #1534961) + - SAUCE: overlayfs: Propogate nosuid from lower and upper mounts + + * overlayfs over fuse should refuse copy_up of files if uid/gid not mapped + (LP: #1535150) + - SAUCE: overlayfs: Propogate nosuid from lower and upper mounts + + * Ubuntu-4.6.0-5.6 configuration has CONFIG_GOLDFISH and CONFIG_GOLDFISH_BUS + enabled, breaking serial support on normal systems (LP: #1580960) + - [Config] disable CONFIG_GOLDFISH + + * Miscellaneous Ubuntu changes + - [Config] d-i -- update local configuration to new form + - [Config] kernel-wedge -- switch to explicit versions + - [Config] powerpc64-smp --> generic + - [Config] CONFIG_AUFS_FS=m + - SAUCE: AUFS + - SAUCE: (namespace) fs: Add user namesapace member to struct super_block + - SAUCE: (namespace) fs: Limit file caps to the user namespace of the super block + - SAUCE: (namespace) Smack: Add support for unprivileged mounts from user namespaces + - SAUCE: (namespace) fs: fix a posible leak of allocated superblock + - SAUCE: (namespace) fs: Allow sysfs and cgroupfs to share super blocks between user namespaces + - SAUCE: (namespace) block_dev: Support checking inode permissions in lookup_bdev() + - SAUCE: (namespace) block_dev: Check permissions towards block device inode when mounting + - SAUCE: (namespace) fs: Treat foreign mounts as nosuid + - SAUCE: (namespace) selinux: Add support for unprivileged mounts from user namespaces + - SAUCE: (namespace) userns: Replace in_userns with current_in_userns + - SAUCE: (namespace) Smack: Handle labels consistently in untrusted mounts + - SAUCE: (namespace) fs: Check for invalid i_uid in may_follow_link() + - SAUCE: (namespace) cred: Reject inodes with invalid ids in set_create_file_as() + - SAUCE: (namespace) fs: Refuse uid/gid changes which don't map into s_user_ns + - SAUCE: (namespace) fs: Update posix_acl support to handle user namespace mounts + - SAUCE: (namespace) fs: Allow superblock owner to change ownership of inodes with unmappable ids + - SAUCE: (namespace) fs: Don't remove suid for CAP_FSETID in s_user_ns + - SAUCE: (namespace) fs: Allow superblock owner to access do_remount_sb() + - SAUCE: (namespace) capabilities: Allow privileged user in s_user_ns to set security.* xattrs + - SAUCE: (namespace) fuse: Add support for pid namespaces + - SAUCE: (namespace) fuse: Support fuse filesystems outside of init_user_ns + - SAUCE: (namespace) fuse: Restrict allow_other to the superblock's namespace or a descendant + - SAUCE: (namespace) fuse: Allow user namespace mounts + - SAUCE: (namespace) mtd: Check permissions towards mtd block device inode when mounting + - SAUCE: (namespace) block_dev: Forbid unprivileged mounting when device is opened for writing + - SAUCE: (namespace) fs: Update i_[ug]id_(read|write) to translate relative to s_user_ns + - SAUCE: (namespace) quota: Add support for user namespace mounts + - SAUCE: (namespace) evm: Translate user/group ids relative to s_user_ns when computing HMAC + - SAUCE: (namespace) fs: Allow CAP_SYS_ADMIN in s_user_ns to freeze and thaw filesystems + - SAUCE: (namespace) ext4: Add support for unprivileged mounts from user namespaces + - SAUCE: (namespace) fuse: Add module parameter to enable user namespace mounts + - SAUCE: (namespace) ext4: Add module parameter to enable user namespace mounts + - rebase to v4.6 + - SAUCE: Powernv: Remove the usage of PACAR1 from opal wrappers + - SAUCE: powerpc/book3s: Fix TB corruption in guest exit path on HMI interrupt. + + * Miscellaneous upstream changes + - Revert "powerpc/eeh: Fix crash in eeh_add_device_early() on Cell" + - powerpc/iommu: Remove the dependency on EEH struct in DDW mechanism + + [ Upstream Kernel Changes ] + + * rebase to v4.6 + + -- Tim Gardner Mon, 09 May 2016 12:08:54 -0600 + +linux (4.6.0-4.5) yakkety; urgency=low + + * Kernel Panic on EC2 After Upgrading from 14.04 to 16.04 via do-release- + upgrade -d (LP: #1573231) + - SAUCE: (no-up) x86/topology: Handle CPUID bogosity gracefully + + * Really cleaned out the last of the i915_bpo SAUCE patches. ricotz on + IRC pointed out some leftover SAUCE patches that were causing issues. + + * Dropped the attempt to convert powerpc64-smb to generic. kernel-wedge + has some issues. + + -- Tim Gardner Mon, 09 May 2016 10:56:54 -0600 + +linux (4.6.0-3.4) xenial; urgency=low + + * Release Tracking Bug + - LP: #1579594 + + * linux-generic: enable linux-extra split on all architectures (LP: #1568832) + - [Config] Generate an -extras package for arm64 and powerpc + + * Missing libunwind support in perf (LP: #1248289) + - [Config] Add liblzma-dev to enable libunwind support in perf + + * ZFS is confused by user namespaces (uid/gid mapping) when used with + acltype=posixac (LP: #1567558) + - zfs: Fix user namespaces uid/gid mapping + + * Miscellaneous Ubuntu changes + - rebase to v4.6-rc7 + + [ Upstream Kernel Changes ] + + * rebase to v4.6-rc7 + + -- Tim Gardner Thu, 05 May 2016 14:03:17 -0600 + +linux (4.6.0-2.3) yakkety; urgency=low + + * Miscellaneous Ubuntu changes + - [Config] CONFIG_AUFS_FS=m + - SAUCE: AUFS + - zfs: gcc build error: -Wbool-compare in metaslab.c + - zfs: Linux 4.6 compat: PAGE_CACHE_SIZE removal + - zfs: Fix ZPL miswrite of default POSIX ACL + - zfs: Linux 4.5 compat: Use xattr_handler->name for acl + - SAUCE: Dropped ubuntu/i915 + - SAUCE: Dropped ubuntu/dm-raid4-5 + + * Miscellaneous upstream changes + - Revert "UBUNTU: [Debian] Disable ZFS until an update catches it up with the + kernel" + + -- Tim Gardner Thu, 05 May 2016 10:41:17 -0600 + +linux (4.6.0-1.2) yakkety; urgency=low + + * Miscellaneous Ubuntu changes + - [Config] CONFIG_NR_CPUS=8192 for amd64 + + -- Tim Gardner Thu, 05 May 2016 07:25:31 -0600 + +linux (4.6.0-0.1) yakkety; urgency=low + + + [ Upstream Kernel Changes ] + + * rebase to v4.6-rc6 + - LP: #1564712 + - LP: #1555912 + - LP: #1552925 + - LP: #1546694 + - LP: #1549660 + - LP: #1549620 + - LP: #1542944 + - LP: #1542564 + - LP: #1533009 + - LP: #1533461 + - LP: #1529624 + - LP: #1522949 + + -- Tim Gardner Mon, 25 Apr 2016 14:24:45 -0600 + +linux (4.6.0-0.0) yakkety; urgency=low + + [ Kamal Mostafa ] + + * Release Tracking Bug + - LP: #1573817 + + * autoreconstruct: need to also generate extend-diff-ignore options for links + (LP: #1574362) + - [Packaging] autoreconstruct -- generate extend-diff-ignore for links + + * tipc: missing linearization of sk_buff (LP: #1567064) + - tipc: move linearization of buffers to generic code + + * [Hyper-V] In-flight PCI Passthrough Patches (LP: #1570124) + - SAUCE:(noup) drivers:hv: Lock access to hyperv_mmio resource tree + - SAUCE:(noup) drivers:hv: Call vmbus_mmio_free() to reverse + vmbus_mmio_allocate() + - SAUCE:(noup) drivers:hv: Reverse order of resources in hyperv_mmio + - SAUCE:(noup) drivers:hv: Track allocations of children of hv_vmbus in + private resource tree + - SAUCE:(noup) drivers:hv: Record MMIO range in use by frame buffer + - SAUCE:(noup) drivers:hv: Separate out frame buffer logic when picking MMIO + range + + * vbox: resync with 5.0.18-dfsg-2build1 (LP: #1571156) + - ubuntu: vbox -- update to 5.0.18-dfsg-2build1 + + * CONFIG_AUFS_XATTR is not set (LP: #1557776) + - [Config] CONFIG_AUFS_XATTR=y + + * CVE-2016-3672 (LP: #1568523) + - x86/mm/32: Enable full randomization on i386 and X86_32 + + * CVE-2016-3955 (LP: #1572666) + - USB: usbip: fix potential out-of-bounds write + + * Xenial update to v4.4.8 stable release (LP: #1573034) + - hwmon: (max1111) Return -ENODEV from max1111_read_channel if not + instantiated + - PKCS#7: pkcs7_validate_trust(): initialize the _trusted output argument + - parisc: Avoid function pointers for kernel exception routines + - parisc: Fix kernel crash with reversed copy_from_user() + - parisc: Unbreak handling exceptions from kernel modules + - ALSA: timer: Use mod_timer() for rearming the system timer + - ALSA: hda - Asus N750JV external subwoofer fixup + - ALSA: hda - Fix white noise on Asus N750JV headphone + - ALSA: hda - Apply fix for white noise on Asus N550JV, too + - mm: fix invalid node in alloc_migrate_target() + - powerpc/mm: Fixup preempt underflow with huge pages + - libnvdimm: fix smart data retrieval + - libnvdimm, pfn: fix uuid validation + - compiler-gcc: disable -ftracer for __noclone functions + - arm64: opcodes.h: Add arm big-endian config options before including arm + header + - drm/dp: move hw_mutex up the call stack + - drm/udl: Use unlocked gem unreferencing + - drm/radeon: add a dpm quirk for sapphire Dual-X R7 370 2G D5 + - drm/radeon: add another R7 370 quirk + - drm/radeon: add a dpm quirk for all R7 370 parts + - drm/amdgpu/gmc: move vram type fetching into sw_init + - drm/amdgpu/gmc: use proper register for vram type on Fiji + - xen/events: Mask a moving irq + - tcp: convert cached rtt from usec to jiffies when feeding initial rto + - tunnel: Clear IPCB(skb)->opt before dst_link_failure called + - net: jme: fix suspend/resume on JMC260 + - net: vrf: Remove direct access to skb->data + - net: qca_spi: Don't clear IFF_BROADCAST + - net: qca_spi: clear IFF_TX_SKB_SHARING + - net: fix bridge multicast packet checksum validation + - sctp: lack the check for ports in sctp_v6_cmp_addr + - mld, igmp: Fix reserved tailroom calculation + - tipc: Revert "tipc: use existing sk_write_queue for outgoing packet chain" + - qmi_wwan: add Sierra Wireless EM74xx device ID + - ipv6: re-enable fragment header matching in ipv6_find_hdr + - vxlan: fix missing options_len update on RX with collect metadata + - cdc_ncm: toggle altsetting to force reset before setup + - udp6: fix UDP/IPv6 encap resubmit path + - tcp: fix tcpi_segs_in after connection establishment + - ppp: release rtnl mutex when interface creation fails + - net: validate variable length ll headers + - ax25: add link layer header validation function + - packet: validate variable length ll headers + - bpf: avoid copying junk bytes in bpf_get_current_comm() + - sh_eth: fix NULL pointer dereference in sh_eth_ring_format() + - sh_eth: advance 'rxdesc' later in sh_eth_ring_format() + - qlcnic: Remove unnecessary usage of atomic_t + - qlcnic: Fix mailbox completion handling during spurious interrupt + - macvtap: always pass ethernet header in linear + - mlxsw: spectrum: Check requested ageing time is valid + - rocker: set FDB cleanup timer according to lowest ageing time + - bridge: allow zero ageing time + - ipv4: Don't do expensive useless work during inetdev destroy. + - net: Fix use after free in the recvmmsg exit path + - mlx4: add missing braces in verify_qp_parameters + - farsync: fix off-by-one bug in fst_add_one + - ath9k: fix buffer overrun for ar9287 + - ppp: ensure file->private_data can't be overridden + - tcp/dccp: remove obsolete WARN_ON() in icmp handlers + - qlge: Fix receive packets drop. + - net: bcmgenet: fix dma api length mismatch + - bonding: fix bond_get_stats() + - ipv4: fix broadcast packets reception + - ipv4: initialize flowi4_flags before calling fib_lookup() + - ppp: take reference on channels netns + - xfrm: Fix crash observed during device unregistration and decryption + - qmi_wwan: add "D-Link DWM-221 B1" device id + - ipv6: udp: fix UDP_MIB_IGNOREDMULTI updates + - bridge: Allow set bridge ageing time when switchdev disabled + - rtnl: fix msg size calculation in if_nlmsg_size() + - tun, bpf: fix suspicious RCU usage in tun_{attach, detach}_filter + - tuntap: restore default qdisc + - ipv4: l2tp: fix a potential issue in l2tp_ip_recv + - ipv6: l2tp: fix a potential issue in l2tp_ip6_recv + - ip6_tunnel: set rtnl_link_ops before calling register_netdevice + - ipv6: Count in extension headers in skb->network_header + - mpls: find_outdev: check for err ptr in addition to NULL check + - USB: uas: Limit qdepth at the scsi-host level + - USB: uas: Add a new NO_REPORT_LUNS quirk + - cdc-acm: fix NULL pointer reference + - KVM: x86: Inject pending interrupt even if pending nmi exist + - KVM: x86: reduce default value of halt_poll_ns parameter + - MIPS: Fix MSA ld unaligned failure cases + - pinctrl: pistachio: fix mfio84-89 function description and pinmux. + - pinctrl: sh-pfc: only use dummy states for non-DT platforms + - pinctrl: sunxi: Fix A33 external interrupts not working + - pinctrl: nomadik: fix pull debug print inversion + - pinctrl: freescale: imx: fix bogus check of of_iomap() return value + - au0828: fix au0828_v4l2_close() dev_state race condition + - au0828: Fix dev_state handling + - coda: fix error path in case of missing pdata on non-DT platform + - v4l: vsp1: Set the SRU CTRL0 register when starting the stream + - pcmcia: db1xxx_ss: fix last irq_to_gpio user + - rbd: use GFP_NOIO consistently for request allocations + - virtio: virtio 1.0 cs04 spec compliance for reset + - mac80211: properly deal with station hashtable insert errors + - mac80211: avoid excessive stack usage in sta_info + - mac80211: fix ibss scan parameters + - mac80211: fix unnecessary frame drops in mesh fwding + - mac80211: fix txq queue related crashes + - usb: renesas_usbhs: avoid NULL pointer derefernce in usbhsf_pkt_handler() + - usb: renesas_usbhs: disable TX IRQ before starting TX DMAC transfer + - usb: renesas_usbhs: fix to avoid using a disabled ep in usbhsg_queue_done() + - iio: st_magn: always define ST_MAGN_TRIGGER_SET_STATE + - iio: accel: bmc150: fix endianness when reading axes + - iio: gyro: bmg160: fix buffer read values + - iio: gyro: bmg160: fix endianness when reading axes + - sd: Fix excessive capacity printing on devices with blocks bigger than 512 + bytes + - fs: add file_dentry() + - nfs: use file_dentry() + - btrfs: fix crash/invalid memory access on fsync when using overlayfs + - ext4: add lockdep annotations for i_data_sem + - ext4: ignore quota mount options if the quota feature is enabled + - iommu: Don't overwrite domain pointer when there is no default_domain + - Btrfs: fix file/data loss caused by fsync after rename and new inode + - arm64: replace read_lock to rcu lock in call_step_hook + - perf: Do not double free + - perf: Cure event->pending_disable race + - mmc: sdhci-pci: Add support and PCI IDs for more Broxton host controllers + - ALSA: hda - Fixup speaker pass-through control for nid 0x14 on ALC225 + - ALSA: hda - Fix headset support and noise on HP EliteBook 755 G2 + - ALSA: hda/realtek - Enable the ALC292 dock fixup on the Thinkpad T460s + - ALSA: usb-audio: Add a sample rate quirk for Phoenix Audio TMX320 + - ALSA: usb-audio: Add a quirk for Plantronics BT300 + - ALSA: usb-audio: Skip volume controls triggers hangup on Dell USB Dock + - HID: wacom: fix Bamboo ONE oops + - HID: usbhid: fix inconsistent reset/resume/reset-resume behavior + - Revert "x86/PCI: Don't alloc pcibios-irq when MSI is enabled" + - Revert "PCI: Add helpers to manage pci_dev->irq and pci_dev->irq_managed" + - Revert "PCI, x86: Implement pcibios_alloc_irq() and pcibios_free_irq()" + - staging: android: ion: Set the length of the DMA sg entries in buffer + - usbvision: fix crash on detecting device with invalid configuration + - Revert "usb: hub: do not clear BOS field during reset device" + - Linux 4.4.8 + + * Fix speaker volume on a Dell machine (LP: #1549660) + - ALSA: hda - Fixup speaker pass-through control for nid 0x14 on ALC225 + + * Xenial update to v4.4.7 stable release (LP: #1572722) + - regulator: core: avoid unused variable warning + - regulator: core: Fix nested locking of supplies + - ASoC: samsung: pass DMA channels as pointers + - mmc: sh_mmcif: rework dma channel handling + - mmc: sh_mmcif: Correct TX DMA channel allocation + - x86/microcode/intel: Make early loader look for builtin microcode too + - x86/microcode: Untangle from BLK_DEV_INITRD + - x86/entry/compat: Keep TS_COMPAT set during signal delivery + - perf/x86/intel: Add definition for PT PMI bit + - x86/PCI: Mark Broadwell-EP Home Agent & PCU as having non-compliant BARs + - KVM: i8254: change PIT discard tick policy + - KVM: fix spin_lock_init order on x86 + - KVM: VMX: avoid guest hang on invalid invept instruction + - KVM: VMX: avoid guest hang on invalid invvpid instruction + - KVM: VMX: fix nested vpid for old KVM guests + - perf/core: Fix perf_sched_count derailment + - perf tools: Dont stop PMU parsing on alias parse error + - perf tools: Fix checking asprintf return value + - perf tools: Fix python extension build + - sched/cputime: Fix steal_account_process_tick() to always return jiffies + - sched/preempt, sh: kmap_coherent relies on disabled preemption + - EDAC, amd64_edac: Shift wrapping issue in f1x_get_norm_dct_addr() + - s390: fix floating pointer register corruption (again) + - s390/cpumf: add missing lpp magic initialization + - pinctrl-bcm2835: Fix cut-and-paste error in "pull" parsing + - PCI: Disable IO/MEM decoding for devices with non-compliant BARs + - PCI: ACPI: IA64: fix IO port generic range check + - x86/irq: Cure live lock in fixup_irqs() + - x86/apic: Fix suspicious RCU usage in smp_trace_call_function_interrupt() + - x86/iopl/64: Properly context-switch IOPL on Xen PV + - x86/iopl: Fix iopl capability check on Xen PV + - x86/mm: TLB_REMOTE_SEND_IPI should count pages + - sg: fix dxferp in from_to case + - aacraid: Fix RRQ overload + - aacraid: Fix memory leak in aac_fib_map_free + - aacraid: Set correct msix count for EEH recovery + - sd: Fix discard granularity when LBPRZ=1 + - scsi: storvsc: fix SRB_STATUS_ABORTED handling + - be2iscsi: set the boot_kset pointer to NULL in case of failure + - aic7xxx: Fix queue depth handling + - libnvdimm: Fix security issue with DSM IOCTL. + - dm snapshot: disallow the COW and origin devices from being identical + - dm: fix excessive dm-mq context switching + - dm thin metadata: don't issue prefetches if a transaction abort has failed + - dm cache: make sure every metadata function checks fail_io + - dm: fix rq_end_stats() NULL pointer in dm_requeue_original_request() + - usb: retry reset if a device times out + - usb: hub: fix a typo in hub_port_init() leading to wrong logic + - USB: uas: Reduce can_queue to MAX_CMNDS + - USB: cdc-acm: more sanity checking + - USB: iowarrior: fix oops with malicious USB descriptors + - USB: usb_driver_claim_interface: add sanity checking + - USB: mct_u232: add sanity checking in probe + - USB: digi_acceleport: do sanity checking for the number of ports + - USB: cypress_m8: add endpoint sanity check + - USB: serial: cp210x: Adding GE Healthcare Device ID + - USB: serial: ftdi_sio: Add support for ICP DAS I-756xU devices + - USB: option: add "D-Link DWM-221 B1" device id + - pwc: Add USB id for Philips Spc880nc webcam + - Input: powermate - fix oops with malicious USB descriptors + - ALSA: usb-audio: Fix NULL dereference in create_fixed_stream_quirk() + - ALSA: usb-audio: Add sanity checks for endpoint accesses + - ALSA: usb-audio: add Microsoft HD-5001 to quirks + - ALSA: usb-audio: Minor code cleanup in create_fixed_stream_quirk() + - ALSA: usb-audio: Fix double-free in error paths after + snd_usb_add_audio_stream() call + - Bluetooth: btusb: Add new AR3012 ID 13d3:3395 + - Bluetooth: btusb: Add a new AR3012 ID 04ca:3014 + - Bluetooth: btusb: Add a new AR3012 ID 13d3:3472 + - crypto: ccp - Add hash state import and export support + - crypto: ccp - Limit the amount of information exported + - crypto: ccp - Don't assume export/import areas are aligned + - crypto: ccp - memset request context to zero during import + - crypto: keywrap - memzero the correct memory + - crypto: atmel - fix checks of error code returned by devm_ioremap_resource() + - crypto: ux500 - fix checks of error code returned by devm_ioremap_resource() + - crypto: marvell/cesa - forward devm_ioremap_resource() error code + - X.509: Fix leap year handling again + - mei: bus: check if the device is enabled before data transfer + - HID: logitech: fix Dual Action gamepad support + - HID: i2c-hid: fix OOB write in i2c_hid_set_or_send_report() + - HID: multitouch: force retrieving of Win8 signature blob + - HID: fix hid_ignore_special_drivers module parameter + - staging: comedi: ni_tiocmd: change mistaken use of start_src for start_arg + - staging: android: ion_test: fix check of platform_device_register_simple() + error code + - staging: comedi: ni_mio_common: fix the ni_write[blw]() functions + - tty: Fix GPF in flush_to_ldisc(), part 2 + - net: irda: Fix use-after-free in irtty_open() + - 8250: use callbacks to access UART_DLL/UART_DLM + - saa7134: Fix bytesperline not being set correctly for planar formats + - adv7511: TX_EDID_PRESENT is still 1 after a disconnect + - bttv: Width must be a multiple of 16 when capturing planar formats + - coda: fix first encoded frame payload + - media: v4l2-compat-ioctl32: fix missing length copy in put_v4l2_buffer32 + - mtip32xx: Avoid issuing standby immediate cmd during FTL rebuild + - mtip32xx: Fix broken service thread handling + - mtip32xx: Remove unwanted code from taskfile error handler + - mtip32xx: Print exact time when an internal command is interrupted + - mtip32xx: Fix for rmmod crash when drive is in FTL rebuild + - mtip32xx: Handle safe removal during IO + - mtip32xx: Handle FTL rebuild failure state during device initialization + - mtip32xx: Implement timeout handler + - mtip32xx: Cleanup queued requests after surprise removal + - ALSA: pcm: Avoid "BUG:" string for warnings again + - ALSA: intel8x0: Add clock quirk entry for AD1981B on IBM ThinkPad X41. + - ALSA: hda - Don't handle ELD notify from invalid port + - ALSA: hda - fix the mic mute button and led problem for a Lenovo AIO + - ALSA: hda - Fix unconditional GPIO toggle via automute + - tools/hv: Use include/uapi with __EXPORTED_HEADERS__ + - jbd2: fix FS corruption possibility in jbd2_journal_destroy() on umount path + - brd: Fix discard request processing + - IB/srpt: Simplify srpt_handle_tsk_mgmt() + - bcache: cleaned up error handling around register_cache() + - bcache: fix race of writeback thread starting before complete initialization + - bcache: fix cache_set_flush() NULL pointer dereference on OOM + - mm: memcontrol: reclaim when shrinking memory.high below usage + - mm: memcontrol: reclaim and OOM kill when shrinking memory.max below usage + - ia64: define ioremap_uc() + - watchdog: don't run proc_watchdog_update if new value is same as old + - watchdog: rc32434_wdt: fix ioctl error handling + - Bluetooth: Add new AR3012 ID 0489:e095 + - Bluetooth: Fix potential buffer overflow with Add Advertising + - cgroup: ignore css_sets associated with dead cgroups during migration + - net: mvneta: enable change MAC address when interface is up + - of: alloc anywhere from memblock if range not specified + - vfs: show_vfsstat: do not ignore errors from show_devname method + - splice: handle zero nr_pages in splice_to_pipe() + - xtensa: ISS: don't hang if stdin EOF is reached + - xtensa: fix preemption in {clear,copy}_user_highpage + - xtensa: clear all DBREAKC registers on start + - ARC: [BE] readl()/writel() to work in Big Endian CPU configuration + - ARC: bitops: Remove non relevant comments + - quota: Fix possible GPF due to uninitialised pointers + - xfs: fix two memory leaks in xfs_attr_list.c error paths + - raid1: include bio_end_io_list in nr_queued to prevent freeze_array hang + - md/raid5: Compare apples to apples (or sectors to sectors) + - RAID5: check_reshape() shouldn't call mddev_suspend + - RAID5: revert e9e4c377e2f563 to fix a livelock + - raid10: include bio_end_io_list in nr_queued to prevent freeze_array hang + - md/raid5: preserve STRIPE_PREREAD_ACTIVE in break_stripe_batch_list + - md: multipath: don't hardcopy bio in .make_request path + - Revert "UBUNTU: SAUCE: (noup) fuse: Add reference counting for fuse_io_priv" + - Revert "UBUNTU: SAUCE: (noup) fuse: do not use iocb after it may have been + freed" + - fuse: do not use iocb after it may have been freed + - fuse: Add reference counting for fuse_io_priv + - fs/coredump: prevent fsuid=0 dumps into user-controlled directories + - rapidio/rionet: fix deadlock on SMP + - ipr: Fix out-of-bounds null overwrite + - ipr: Fix regression when loading firmware + - iwlwifi: mvm: Fix paging memory leak + - drm/radeon: disable runtime pm on PX laptops without dGPU power control + - drm/radeon: Don't drop DP 2.7 Ghz link setup on some cards. + - drm/amdgpu: disable runtime pm on PX laptops without dGPU power control + - drm/amdgpu: include the right version of gmc header files for iceland + - IB/ipoib: fix for rare multicast join race condition + - tracing: Have preempt(irqs)off trace preempt disabled functions + - tracing: Fix crash from reading trace_pipe with sendfile + - tracing: Fix trace_printk() to print when not using bprintk() + - bitops: Do not default to __clear_bit() for __clear_bit_unlock() + - scripts/coccinelle: modernize & + - scripts/kconfig: allow building with make 3.80 again + - kbuild/mkspec: fix grub2 installkernel issue + - MAINTAINERS: Update mailing list and web page for hwmon subsystem + - ideapad-laptop: Add ideapad Y700 (15) to the no_hw_rfkill DMI list + - mmc: block: fix ABI regression of mmc_blk_ioctl + - mmc: mmc_spi: Add Card Detect comments and fix CD GPIO case + - mmc: sdhci: fix data timeout (part 1) + - mmc: sdhci: fix data timeout (part 2) + - mmc: sdhci: Fix override of timeout clk wrt max_busy_timeout + - clk: rockchip: rk3368: fix cpuclk mux bit of big cpu-cluster + - clk: rockchip: rk3368: fix cpuclk core dividers + - clk: rockchip: rk3368: fix parents of video encoder/decoder + - clk: rockchip: rk3368: fix hdmi_cec gate-register + - clk: rockchip: add hclk_cpubus to the list of rk3188 critical clocks + - clk: bcm2835: Fix setting of PLL divider clock rates + - target: Fix target_release_cmd_kref shutdown comp leak + - iser-target: Fix identification of login rx descriptor type + - iser-target: Add new state ISER_CONN_BOUND to isert_conn + - iser-target: Separate flows for np listeners and connections cma events + - iser-target: Rework connection termination + - nfsd4: fix bad bounds checking + - nfsd: fix deadlock secinfo+readdir compound + - ARM: dts: at91: sama5d3 Xplained: don't disable hsmci regulator + - ARM: dts: at91: sama5d4 Xplained: don't disable hsmci regulator + - ACPI / PM: Runtime resume devices when waking from hibernate + - writeback, cgroup: fix premature wb_put() in + locked_inode_to_wb_and_lock_list() + - writeback, cgroup: fix use of the wrong bdi_writeback which mismatches the + inode + - Revert "UBUNTU: SAUCE: (noup) Input: synaptics - handle spurious release of + trackstick buttons, again" + - Input: synaptics - handle spurious release of trackstick buttons, again + - Input: ims-pcu - sanity check against missing interfaces + - Input: ati_remote2 - fix crashes on detecting device with invalid descriptor + - ocfs2/dlm: fix race between convert and recovery + - ocfs2/dlm: fix BUG in dlm_move_lockres_to_recovery_list + - mm/page_alloc: prevent merging between isolated and other pageblocks + - mtd: onenand: fix deadlock in onenand_block_markbad + - PM / sleep: Clear pm_suspend_global_flags upon hibernate + - scsi_common: do not clobber fixed sense information + - sched/cputime: Fix steal time accounting vs. CPU hotplug + - perf/x86/pebs: Add workaround for broken OVFL status on HSW+ + - perf/x86/intel: Fix PEBS warning by only restoring active PMU in pmi + - perf/x86/intel: Fix PEBS data source interpretation on Nehalem/Westmere + - Linux 4.4.7 + + * QCA9565 / AR9565 bluetooth not work (LP: #1542944) + - Bluetooth: Add new AR3012 ID 0489:e095 + + * The mic mute key and led can't work on a Lenovo AIO machine (LP: #1555912) + - ALSA: hda - fix the mic mute button and led problem for a Lenovo AIO + + * 13d3:3472 bluetooth not working, 4.2 low latency kernel 14.04.1 on asus ROG + gl552jx (LP: #1552925) + - Bluetooth: btusb: Add a new AR3012 ID 13d3:3472 + + * Bluetooth cannot detect other devices (Lite-on 3014 + Atheros AR9565) + (LP: #1546694) + - Bluetooth: btusb: Add a new AR3012 ID 04ca:3014 + + * Atheros AR9462 Bluetooth cannot detect other devices (LP: #1542564) + - Bluetooth: btusb: Add new AR3012 ID 13d3:3395 + + * s390/pci: add extra padding to function measurement block (LP: #1572291) + - s390/pci: add extra padding to function measurement block + + * CVE-2016-3951 (LP: #1567191) + - cdc_ncm: do not call usbnet_link_change from cdc_ncm_bind + - usbnet: cleanup after bind() in probe() + + * linux: Add UEFI keyring for externally signed modules (LP: #1569924) + - efi: Remove redundant efi_set_variable_nonblocking() prototype + - efi/runtime-wrappers: Add a nonblocking version of QueryVariableInfo() + - efi: Add nonblocking option to efi_query_variable_store() + - efi: Add NV memory attribute + - efi: Reformat GUID tables to follow the format in UEFI spec + - efi: stub: implement efi_get_random_bytes() based on EFI_RNG_PROTOCOL + - SAUCE: (noup) Add EFI signature data types + - crypto: KEYS: convert public key and digsig asym to the akcipher api + - [Config] CONFIG_EFI_SIGNATURE_LIST_PARSER=y + - SAUCE: (noup) Add an EFI signature blob parser and key loader. + - [Config] CONFIG_IMA_MOK_KEYRING=y + - IMA: create machine owner and blacklist keyrings + - KEYS: Add an alloc flag to convey the builtinness of a key + - [Config] CONFIG_MODULE_SIG_UEFI=y, CONFIG_SYSTEM_BLACKLIST_KEYRING=y + - SAUCE: (noup) KEYS: Add a system blacklist keyring + - SAUCE: (noup) MODSIGN: Support not importing certs from db + + * Miscellaneous Ubuntu changes + - [Config] CONFIG_PUBLIC_KEY_ALGO_RSA=y + + -- Kamal Mostafa Sun, 24 Apr 2016 12:12:13 -0700 + +linux (4.4.0-21.37) xenial; urgency=low + + [ Tim Gardner ] + + * Release Tracking Bug + - LP: #1571791 + + * linux: MokSBState is ignored (LP: #1571691) + - SAUCE: (noup) MODSIGN: Import certificates from UEFI Secure Boot + - SAUCE: (noup) efi: Disable secure boot if shim is in insecure mode + - SAUCE: (noup) Display MOKSBState when disabled + + -- Tim Gardner Mon, 18 Apr 2016 07:00:22 -0600 + +linux (4.4.0-20.36) xenial; urgency=low + + [ Tim Gardner ] + + * Release Tracking Bug + - LP: #1571069 + + * sysfs mount failure during stateful lxd snapshots (LP: #1570906) + - SAUCE: kernfs: Do not match superblock in another user namespace when + mounting + + * Kernel Panic in Ubuntu 16.04 netboot installer (LP: #1570441) + - x86/topology: Fix logical package mapping + - x86/topology: Fix Intel HT disable + - x86/topology: Use total_cpus not nr_cpu_ids for logical packages + - xen/apic: Provide Xen-specific version of cpu_present_to_apicid APIC op + - x86/topology: Fix AMD core count + + * [regression]: Failed to call clock_adjtime(): Invalid argument + (LP: #1566465) + - ntp: Fix ADJ_SETOFFSET being used w/ ADJ_NANO + + -- Tim Gardner Thu, 14 Apr 2016 06:31:56 -0600 + +linux (4.4.0-19.35) xenial; urgency=low + + [ Tim Gardner ] + + * Release Tracking Bug + - LP: #1570348 + + * CVE-2016-2847 (LP: #1554260) + - pipe: limit the per-user amount of pages allocated in pipes + + * xenial kernel crash on HP BL460c G7 (qla24xx problem?) (LP: #1554003) + - SAUCE: (noup) qla2xxx: Add irq affinity notification V2 + + * arm64: guest hangs when ntpd is running (LP: #1549494) + - SAUCE: (noup) KVM: arm/arm64: Handle forward time correction gracefully + + * linux: Enforce signed module loading when UEFI secure boot (LP: #1566221) + - [Config] CONFIG_EFI_SECURE_BOOT_SIG_ENFORCE=y + + * s390/cpumf: Fix lpp detection (LP: #1555344) + - s390/facilities: use stfl mnemonic instead of insn magic + - s390/facilities: always use lowcore's stfle field for storing facility bits + - s390/cpumf: Fix lpp detection + + * s390x kernel image needs weightwatchers (LP: #1536245) + - [Config] s390x: Use compressed kernel bzImage + + * Surelock GA2 SP1: surelock02p05: Not seeing sgX devices for LUNs after + upgrading to Ubuntu 16.04 (LP: #1567581) + - Revert "UBUNTU: SAUCE: (noup) powerpc/pci: Assign fixed PHB number based on + device-tree properties" + + * Backport upstream bugfixes to ubuntu-16.04 (LP: #1555765) + - cpufreq: powernv: Define per_cpu chip pointer to optimize hot-path + - Revert "cpufreq: postfix policy directory with the first CPU in related_cpus" + - cpufreq: powernv: Add sysfs attributes to show throttle stats + + * systemd-modules-load.service: Failing due to missing module 'ib_iser' (LP: #1566468) + - [Config] Add ib_iser to generic inclusion list + + * thunderx nic performance improvements (LP: #1567093) + - net: thunderx: Set recevie buffer page usage count in bulk + - net: thunderx: Adjust nicvf structure to reduce cache misses + + * fixes for thunderx nic in multiqueue mode (LP: #1567091) + - net: thunderx: Fix for multiqset not configured upon interface toggle + - net: thunderx: Fix for HW TSO not enabled for secondary qsets + - net: thunderx: Fix receive packet stats + + * Miscellaneous Ubuntu changes + - [Config] updateconfigs after CONFIG_DRM_I915_BPO_PRELIMINARY_HW_SUPPORT=n + + * Miscellaneous upstream changes (LP: #1564901) + - Input: xpad - correctly handle concurrent LED and FF requests + + -- Tim Gardner Thu, 07 Apr 2016 07:32:16 +0100 + +linux (4.4.0-18.34) xenial; urgency=low + + [ Tim Gardner ] + + * Release Tracking Bug + - LP: #1566868 + + * [i915_bpo] Fix RC6 on SKL GT3 & GT4 (LP: #1564759) + - SAUCE: i915_bpo: drm/i915/skl: Fix rc6 based gpu/system hang + - SAUCE: i915_bpo: drm/i915/skl: Fix spurious gpu hang with gt3/gt4 revs + + * CONFIG_ARCH_ROCKCHIP not enabled in armhf generic kernel (LP: #1566283) + - [Config] CONFIG_ARCH_ROCKCHIP=y + + * [Feature] Memory Bandwidth Monitoring (LP: #1397880) + - perf/x86/cqm: Fix CQM handling of grouping events into a cache_group + - perf/x86/cqm: Fix CQM memory leak and notifier leak + - x86/cpufeature: Carve out X86_FEATURE_* + - Merge branch 'timers-core-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip + - x86/topology: Create logical package id + - perf/x86/mbm: Add Intel Memory B/W Monitoring enumeration and init + - perf/x86/mbm: Add memory bandwidth monitoring event management + - perf/x86/mbm: Implement RMID recycling + - perf/x86/mbm: Add support for MBM counter overflow handling + + * User namespace mount updates (LP: #1566505) + - SAUCE: quota: Require that qids passed to dqget() be valid and map into s_user_ns + - SAUCE: fs: Allow superblock owner to change ownership of inodes with unmappable ids + - SAUCE: fuse: Don't initialize user_id or group_id in mount options + - SAUCE: cgroup: Use a new super block when mounting in a cgroup namespace + - SAUCE: fs: fix a posible leak of allocated superblock + + * [arm64] kernel BUG at /build/linux-StrpB2/linux-4.4.0/fs/ext4/inode.c:2394! + (LP: #1566518) + - arm64: Honour !PTE_WRITE in set_pte_at() for kernel mappings + - arm64: Update PTE_RDONLY in set_pte_at() for PROT_NONE permission + + * [Feature]USB core and xHCI tasks for USB 3.1 SuperSpeedPlus (SSP) support + for Alpine Ridge on SKL (LP: #1519623) + - usb: define USB_SPEED_SUPER_PLUS speed for SuperSpeedPlus USB3.1 devices + - usb: set USB 3.1 roothub device speed to USB_SPEED_SUPER_PLUS + - usb: show speed "10000" in sysfs for USB 3.1 SuperSpeedPlus devices + - usb: add device descriptor for usb 3.1 root hub + - usb: Support USB 3.1 extended port status request + - xhci: Make sure xhci handles USB_SPEED_SUPER_PLUS devices. + - xhci: set roothub speed to USB_SPEED_SUPER_PLUS for USB3.1 capable controllers + - xhci: USB 3.1 add default Speed Attributes to SuperSpeedPlus device capability + - xhci: set slot context speed field to SuperSpeedPlus for USB 3.1 SSP devices + - usb: Add USB3.1 SuperSpeedPlus Isoc Endpoint Companion descriptor + - usb: Parse the new USB 3.1 SuperSpeedPlus Isoc endpoint companion descriptor + - usb: Add USB 3.1 Precision time measurement capability descriptor support + - xhci: refactor and cleanup endpoint initialization. + - xhci: Add SuperSpeedPlus high bandwidth isoc support to xhci endpoints + - xhci: cleanup isoc tranfers queuing code + - xhci: Support extended burst isoc TRB structure used by xhci 1.1 for USB 3.1 + - SAUCE: (noup) usb: fix regression in SuperSpeed endpoint descriptor parsing + + * wrong/missing permissions for device file /dev/prandom (prng.ko) + (LP: #1558275) + - s390/crypto: provide correct file mode at device register. + + * The Front MIC jack can't work on a HP desktop machine (LP: #1564712) + - ALSA: hda - fix front mic problem for a HP desktop + + * HP Notebook Probook 440 G3 HDA Intel PCH horrible sounds while booting + (LP: #1556228) + - ALSA: hda - Apply reboot D3 fix for CX20724 codec, too + + * please provide mmc-modules udeb (LP: #1565765) + - [Config] Add mmc block drivers to d-i + + * linux: Enforce signed module loading when UEFI secure boot (LP: #1566221) + - Add secure_modules() call + - PCI: Lock down BAR access when module security is enabled + - x86: Lock down IO port access when module security is enabled + - ACPI: Limit access to custom_method + - asus-wmi: Restrict debugfs interface when module loading is restricted + - Restrict /dev/mem and /dev/kmem when module loading is restricted + - acpi: Ignore acpi_rsdp kernel parameter when module loading is restricted + - kexec: Disable at runtime if the kernel enforces module loading restrictions + - x86: Restrict MSR access when module loading is restricted + - [Config] CONFIG_EFI_SECURE_BOOT_SIG_ENFORCE=n + - Add option to automatically enforce module signatures when in Secure Boot mode + - efi: Make EFI_SECURE_BOOT_SIG_ENFORCE depend on EFI + - efi: Add EFI_SECURE_BOOT bit + - hibernate: Disable in a signed modules environment + + * [Hyper-V] Additional PCI passthrough commits (LP: #1565967) + - PCI: Add fwnode_handle to x86 pci_sysdata + - PCI: Look up IRQ domain by fwnode_handle + - [Config] CONFIG_PCI_HYPERV=m + - PCI: hv: Add paravirtual PCI front-end for Microsoft Hyper-V VMs + + * [Bug]Lenovo Yoga 260 and Carbon X1 4th gen freeze on HWP enable + (LP: #1559923) + - ACPI / processor: Request native thermal interrupt handling via _OSC + + * Sync kernel zfs 0.6.5.6 - align with zfsutils-linux and spl packages + (LP: #1564591) + - SAUCE: (noup) Update spl to 0.6.5.6-0ubuntu1, zfs to 0.6.5.6-0ubuntu3 + + * [Ubuntu 16.04.1] RELEASE and ACQUIRE atomics on Power (LP: #1556096) + - atomics: Allow architectures to define their own __atomic_op_* helpers + - powerpc: atomic: Implement atomic{, 64}_*_return_* variants + - powerpc: atomic: Implement acquire/release/relaxed variants for xchg + - powerpc: atomic: Implement acquire/release/relaxed variants for cmpxchg + + * fix for do_tools_cpupower when cross-compiling (LP: #1564206) + - [Debian] cpupower uses non-standard CROSS + + * ISST:LTE: Regression: roselp2 Oops in kernel during setup io (LP: #1546439) + - SAUCE: block: partition: initialize percpuref before sending out KOBJ_ADD + + * Unable to migrate container (LP: #1563921) + - SAUCE: cgroup mount: ignore nsroot= + + * [Hyper-V] patch inclusion in 16.04 for NIC hot add/remove (LP: #1563688) + - hv_netvsc: Move subchannel waiting to rndis_filter_device_remove() + + * /proc/$pid/maps performance regression (LP: #1547231) + - proc: revert /proc//maps [stack:TID] annotation + + * TPM2.0 trusted keys fixes (LP: #1398274) + - tpm: remove unneeded include of actbl2.h + - tpm: fix checks for policy digest existence in tpm2_seal_trusted() + - tpm_crb: Use the common ACPI definition of struct acpi_tpm2 + - tpm_tis: Disable interrupt auto probing on a per-device basis + - tpm_tis: Do not fall back to a hardcoded address for TPM2 + - tpm_tis: Use devm_ioremap_resource + - tpm_tis: Clean up the force=1 module parameter + - tpm_crb: Drop le32_to_cpu(ioread32(..)) + - tpm_crb: Use devm_ioremap_resource + - tpm: fix the rollback in tpm_chip_register() + - tpm: fix the cleanup of struct tpm_chip + - tpm: fix: set continueSession attribute for the unseal operation + - tpm: fix: return rc when devm_add_action() fails + - tpm_eventlog.c: fix binary_bios_measurements + - tpm_crb/tis: fix: use dev_name() for /proc/iomem + - tpm_crb: tpm2_shutdown() must be called before tpm_chip_unregister() + - tpm_tis: fix build warning with tpm_tis_resume + + * [Feature]intel_idle driver support for Knights Landing (LP: #1461365) + - intel_idle: Support for Intel Xeon Phi Processor x200 Product Family + + * cxlflash: Backport upstream cxlflash commits and submitting a noup patch to + Xenial (LP: #1563485) + - cxlflash: Fix to avoid unnecessary scan with internal LUNs + - cxlflash: Increase cmd_per_lun for better throughput + - SAUCE: (noup) cxlflash: Move to exponential back-off when cmd_room is not available + + * Miscellaneous Ubuntu changes + - [Config] do_zfs_powerpc64-smp = true + - [Debian] fix linux_tools when cross-compiling + - [Config] do_zfs_powerpc64-smp use default value + - SAUCE: apparmor: Fix FTBFS due to bad include path + - SAUCE: i915_bpo: Disable preliminary hw support + + -- Tim Gardner Tue, 29 Mar 2016 15:31:33 -0600 + +linux (4.4.0-17.33) xenial; urgency=low + + [ Tim Gardner ] + + * Release Tracking Bug + - LP: #1563441 + + * ISST-LTE: pVM:high cpus number need a high crashkernel value in kdump + (LP: #1560552) + - SAUCE: (noup) ppc64 boot: Wait for boot cpu to show up if nr_cpus limit is + about to hit. + + * Predictable naming mechanism is leading to issues in DLPAR operations of + NICs (LP: #1560514) + - SAUCE: (noup) powerpc/pci: Assign fixed PHB number based on device-tree + properties + + * ThunderX: support alternative phy implementations (LP: #1562968) + - net: thunderx: Cleanup PHY probing code. + - [Config] CONFIG_MDIO_CAVIUM=m + - phy: mdio-octeon: Refactor into two files/modules + - [Config] CONFIG_MDIO_THUNDER=m + - phy: mdio-thunder: Add driver for Cavium Thunder SoC MDIO buses. + - phy: mdio-cavium: Add missing MODULE_* annotations. + - net: cavium: For Kconfig THUNDER_NIC_BGX, select MDIO_THUNDER. + - phy: mdio-thunder: Fix some Kconfig typos + - [d-i] Add phy drivers for Cavium ThunderX to nic-modules udeb + + * linux: exclude ZONE_DEVICE from GFP_ZONE_TABLE (LP: #1563293) + - Revert "mm: CONFIG_NR_ZONES_EXTENDED" + - mm: exclude ZONE_DEVICE from GFP_ZONE_TABLE + + * lots of printk to serial console can hang system for long time + (LP: #1534216) + - printk: set may_schedule for some of console_trylock() callers + + * [i915_bpo] Update i915 backport driver (LP: #1560395) + - SAUCE: i915_bpo: Update to drm-intel-next-fixes-2016-03-16 + - PM / runtime: Add new helper for conditional usage count incrementation + - drm/core: Add drm_for_each_encoder_mask, v2. + - drm/atomic-helper: Implement subsystem-level suspend/resume + + * [Hyper-V] VM Sockets (LP: #1541585) + - Drivers: hv: vmbus: Cleanup vmbus_set_event() + - Drivers: hv: vmbus: Add vendor and device atttributes + - Drivers: hv: vmbus: avoid infinite loop in init_vp_index() + - Drivers: hv: vmbus: avoid scheduling in interrupt context in vmbus_initiate_unload() + - Drivers: hv: vmbus: don't manipulate with clocksources on crash + - Drivers: hv: vmbus: add a helper function to set a channel's pending send size + - Drivers: hv: vmbus: define the new offer type for Hyper-V socket (hvsock) + - Drivers: hv: vmbus: vmbus_sendpacket_ctl: hvsock: avoid unnecessary signaling + - Drivers: hv: vmbus: define a new VMBus message type for hvsock + - Drivers: hv: vmbus: add a hvsock flag in struct hv_driver + - Drivers: hv: vmbus: add a per-channel rescind callback + - Drivers: hv: vmbus: add an API vmbus_hvsock_device_unregister() + - Drivers: hv: vmbus: Eliminate the spin lock on the read path + - Drivers: hv: vmbus: Give control over how the ring access is serialized + - drivers/hv: Move VMBus hypercall codes into Hyper-V UAPI header + - Drivers: hv: vmbus: don't loose HVMSG_TIMER_EXPIRED messages + - Drivers: hv: vmbus: avoid wait_for_completion() on crash + - Drivers: hv: vmbus: remove code duplication in message handling + - Drivers: hv: vmbus: avoid unneeded compiler optimizations in vmbus_wait_for_unload() + - Drivers: hv: util: Pass the channel information during the init call + - Drivers: hv: utils: Remove util transport handler from list if registration fails + - Revert "Drivers: hv: vmbus: Support handling messages on multiple CPUs" + - Drivers: hv: vmbus: Support handling messages on multiple CPUs + + * [Bug]SKL-H boot hang when c8+c9+c10 enabled by intel_idle driver + (LP: #1559918) + - intel_idle: prevent SKL-H boot failure when C8+C9+C10 enabled + + * ixgbe: Update to Fortville SW5 release (LP: #1562326) + - net: add tc offload feature flag + - net: tc: helper functions to query action types + - sctp: Rename NETIF_F_SCTP_CSUM to NETIF_F_SCTP_CRC + - net: rework ndo tc op to consume additional qdisc handle parameter + - net: rework setup_tc ndo op to consume general tc operand + - net: sched: add cls_u32 offload hooks for netdevs + - net: ixgbe: add support for tc_u32 offload + - net: ixgbe: abort with cls u32 divisor groups greater than 1 + + * Bring fm10k up to Fortville SW5 (LP: #1562310) + - net: add netif_is_team_master helper + - net: add netif_is_team_port helper + - net: add netif_is_lag_master helper + - net: add netif_is_lag_port helper + - ethtool: correctly ensure {GS}CHANNELS doesn't conflict with GS{RXFH} + - fm10k: don't reinitialize RSS flow table when RXFH configured + + * [Feature]Always Running Timer (ART) to System Time translation + (LP: #1519625) + - time: Verify time values in adjtimex ADJ_SETOFFSET to avoid overflow + - timekeeping: Provide internal function __ktime_get_real_seconds + - timekeeping: Cap adjustments so they don't exceed the maxadj value + - clocksource: Make clocksource validation work for all clocksources + - time: Add cycles to nanoseconds translation + - time: Add timekeeping snapshot code capturing system time and counter + - time: Remove duplicated code in ktime_get_raw_and_real() + - time: Add driver cross timestamp interface for higher precision time synchronization + - time: Add history to cross timestamp interface supporting slower devices + - time/timekeeping: Work around false positive GCC warning + - x86/tsc: Always Running Timer (ART) correlated clocksource + - ptp: Add PTP_SYS_OFFSET_PRECISE for driver crosstimestamping + - [Config] CONFIG_E1000E_HWTS=y + - e1000e: Adds hardware supported cross timestamp on e1000e nic + + * x-gene2: add SoC v2 support to clock (LP: #1561604) + - clk: xgene: Add SoC and PMD PLL clocks with v2 hardware + + * [Bug]Disable multi-record PEBS on Merom (LP: #1559914) + - perf/x86: Move perf_event.c ............... => x86/events/core.c + - perf/x86: Move perf_event_amd.c ........... => x86/events/amd/core.c + - perf/x86: Move perf_event_amd_ibs.c ....... => x86/events/amd/ibs.c + - perf/x86: Move perf_event_amd_iommu.[ch] .. => x86/events/amd/iommu.[ch] + - perf/x86: Move perf_event_amd_uncore.c .... => x86/events/amd/uncore.c + - perf/x86: Move perf_event_intel_bts.c ........ => x86/events/intel/bts.c + - perf/x86: Move perf_event_intel.c ............ => x86/events/intel/core.c + - perf/x86: Move perf_event_intel_cqm.c ........ => x86/events/intel/cqm.c + - perf/x86: Move perf_event_intel_cstate.c ..... => x86/events/intel/cstate.c + - perf/x86: Move perf_event_intel_ds.c ......... => x86/events/intel/ds.c + - perf/x86: Move perf_event_intel_lbr.c ........ => x86/events/intel/lbr.c + - perf/x86: Move perf_event_intel_pt.[ch] ...... => x86/events/intel/pt.[ch] + - perf/x86: Move perf_event_intel_rapl.c ....... => x86/events/intel/rapl.c + - perf/x86: Move perf_event_intel_uncore.[ch] .. => + x86/events/intel/uncore.[ch] + - perf/x86: Move perf_event_intel_uncore_nhmex.c => + x86/events/intel/uncore_nmhex.c + - perf/x86: Move perf_event_intel_uncore_snb.c => + x86/events/intel/uncore_snb.c + - perf/x86: Move perf_event_intel_uncore_snbep.c => + x86/events/intel/uncore_snbep.c + - perf/x86: Move perf_event_knc.c .............. => x86/events/intel/knc.c + - perf/x86: Move perf_event_p4.c ............... => x86/events/intel/p4.c + - perf/x86: Move perf_event_p6.c ............... => x86/events/intel/p6.c + - perf/x86: Move perf_event_msr.c .............. => x86/events/msr.c + - perf/x86: Move perf_event.h to its new home + - perf/x86/intel: Use PAGE_SIZE for PEBS buffer size on Core2 + + * [Feature] Enable I2C on Broxton-P (LP: #1520139) + - mfd: intel-lpss: Pass I2C configuration via properties on BXT + + -- Tim Gardner Thu, 24 Mar 2016 20:40:27 -0600 + +linux (4.4.0-16.32) xenial; urgency=low + + [ Tim Gardner ] + + * Release Tracking Bug + - LP: #1561727 + + * fix thermal throttling due to commit "Thermal: initialize thermal zone + device correctly" (LP: #1561676) + - Thermal: Ignore invalid trip points + + * Thinkpad T460: Trackpoint mouse buttons instantly generate "release" event + on press (LP: #1553811) + - SAUCE: (noup) Input: synaptics - handle spurious release of trackstick + buttons, again + + * reading /sys/kernel/security/apparmor/profiles requires CAP_MAC_ADMIN + (LP: #1560583) + - SAUCE: apparmor: Allow ns_root processes to open profiles file + - SAUCE: apparmor: Consult sysctl when reading profiles in a user ns + + * linux: sync virtualbox drivers to 5.0.16-dfsg-2 (LP: #1561492) + - ubuntu: vbox -- update to 5.0.16-dfsg-2 + + * s390/kconfig: CONFIG_NUMA without CONFIG_NUMA_EMU does not make any sense on + s390x (LP: #1557690) + - [Config] CONFIG_NUMA_BALANCING_DEFAULT_ENABLED=n for s390x + + * spl/zfs fails to build on s390x (LP: #1519814) + - [Config] s390x -- re-enable zfs + - [Config] zfs -- disable powerpc until the test failures can be resolved + + * linux: sync to ZFS 0.6.5.6 stable release (LP: #1561483) + - SAUCE: (noup) Update spl to 0.6.5.6-0ubuntu1, zfs to 0.6.5.6-0ubuntu1 + + * zfs: enable zfs for 64bit powerpc kernels (LP: #1558871) + - [Packaging] zfs -- handle rprovides via dpkg-gencontrol + - [Config] powerpc -- convert zfs configuration to custom_override + + * Memory arena corruption with FUSE (was Memory allocation failure crashes + kernel hard, presumably related to FUSE) (LP: #1505948) + - SAUCE: (noup) fuse: do not use iocb after it may have been freed + - SAUCE: (noup) fuse: Add reference counting for fuse_io_priv + + * cgroup namespaces: add a 'nsroot=' mountinfo field (LP: #1560489) + - SAUCE: (noup) cgroup namespaces: add a 'nsroot=' mountinfo field + + * linux packaging: clear remaining redundant delta (LP: #1560445) + - [Debian] Remove generated intermediate files on clean + + * arm64: guest hangs when ntpd is running (LP: #1549494) + - Revert "hrtimer: Add support for CLOCK_MONOTONIC_RAW" + - Revert "hrtimer: Catch illegal clockids" + - Revert "KVM: arm/arm64: timer: Switch to CLOCK_MONOTONIC_RAW" + + * Need enough contiguous memory to support GICv3 ITS table (LP: #1558828) + - [Config] CONFIG_FORCE_MAX_ZONEORDER=13 on arm64 + - SAUCE: (no-up) arm64: gicv3: its: Increase FORCE_MAX_ZONEORDER for Cavium + ThunderX + + * update arcmsr to version v1.30.00.22-20151126 to fix card timeouts + (LP: #1559609) + - arcmsr: fixed getting wrong configuration data + - arcmsr: fixes not release allocated resource + - arcmsr: make code more readable + - arcmsr: adds code to support new Areca adapter ARC1203 + - arcmsr: changes driver version number + - arcmsr: more readability improvements + - arcmsr: Split dma resource allocation to a new function + - arcmsr: change driver version to v1.30.00.22-20151126 + + * server image has no keyboard, desktop image works (LP: #1559692) + - [Config] Rework input-modules (d-i) list + + * PMU support for Cavium ThunderX (LP: #1559349) + - arm64: perf: Rename Cortex A57 events + - arm64/perf: Add Cavium ThunderX PMU support + - arm64: perf: Enable PMCR long cycle counter bit + - arm64: perf: Extend event mask for ARMv8.1 + - arm64: dts: Add Cavium ThunderX specific PMU + + * Show ARM PMU events in perf stat (LP: #1559350) + - drivers/perf: kill armpmu_register + - arm: perf: Convert event enums to #defines + - arm: perf: Add event descriptions + - arm64: perf: Convert event enums to #defines + - arm64: perf: Add event descriptions + - ARM: perf: add format entry to describe event -> config mapping + - arm64: perf: add format entry to describe event -> config mapping + + * [Bug]HSW/BDW EDAC driver reports wrong DIMM (LP: #1559904) + - EDAC/sb_edac: Fix computation of channel address + + * 5-10 second delay in kernel boot with kernel command line ip= (LP: #1259861) + - [Config] disable CONFIG_IP_PNP + + * Miscellaneous Ubuntu changes + - [Debian] Silence the reconstruct script + + -- Tim Gardner Mon, 21 Mar 2016 10:15:31 -0600 + +linux (4.4.0-15.31) xenial; urgency=low + + [ Tim Gardner ] + + * Release Tracking Bug + - LP: #1559252 + + * Xilinx KU3 Capi card does not show up in Ubuntu 16.04 (LP: #1557001) + - SAUCE: (noup) cxl: Allow initialization on timebase sync failures + + * policy namespace stacking (LP: #1379535) + - Revert "UBUNTU: SAUCE: Move replacedby allocation into label_alloc" + - Revert "UBUNTU: SAUCE: Fixup: __label_update() still doesn't handle some cases correctly." + - Revert "UBUNTU: SAUCE: fix: audit "no_new_privs" case for exec failure" + - Revert "UBUNTU: SAUCE: fixup: warning about aa_label_vec_find_or_create not being static" + - Revert "UBUNTU: SAUCE: apparmor: fix refcount race when finding a child profile" + - Revert "UBUNTU: SAUCE: fixup: cast poison values to remove warnings" + - Revert "UBUNTU: SAUCE: fixup: get rid of unused var build warning" + - Revert "UBUNTU: SAUCE: fixup: 20/23 locking issue around in __label_update" + - Revert "UBUNTU: SAUCE: fixup: make __share_replacedby private to get rid of build warning" + - Revert "UBUNTU: SAUCE: fix: replacedby forwarding is not being properly update when ns is destroyed" + - Revert "UBUNTU: SAUCE: apparmor: fix log of apparmor audit message when kern_path() fails" + - Revert "UBUNTU: SAUCE: fixup: cleanup return handling of labels" + - Revert "UBUNTU: SAUCE: apparmor: fix: ref count leak when profile sha1 hash is read" + - Revert "UBUNTU: SAUCE: apparmor: Fix: query label file permission" + - Revert "UBUNTU: SAUCE: apparmor: Don't remove label on rcu callback if the label has already been removed" + - Revert "UBUNTU: SAUCE: apparmor: Fix: break circular refcount for label that is directly freed." + - Revert "UBUNTU: SAUCE: apparmor: Fix: refcount bug when inserting label update that transitions ns" + - Revert "UBUNTU: SAUCE: apparmor: Fix: now that insert can force replacement use it instead of remove_and_insert" + - Revert "UBUNTU: SAUCE: apparmor Fix: refcount bug in pivotroot mediation" + - Revert "UBUNTU: SAUCE: apparmor: ensure that repacedby sharing is done correctly" + - Revert "UBUNTU: SAUCE: apparmor: Fix: update replacedby allocation to take a gfp parameter" + - Revert "UBUNTU: SAUCE: apparmor: Fix: convert replacedby update to be protected by the labelset lock" + - Revert "UBUNTU: SAUCE: apparmor: Fix: add required locking of __aa_update_replacedby on merge path" + - Revert "UBUNTU: SAUCE: apparmor: Fix: deadlock in aa_put_label() call chain" + - Revert "UBUNTU: SAUCE: apparmor: Fix: label_vec_merge insertion" + - Revert "UBUNTU: SAUCE: apparmor: Fix: ensure new labels resulting from merge have a replacedby" + - Revert "UBUNTU: SAUCE: apparmor: Fix: refcount leak in aa_label_merge" + - Revert "UBUNTU: SAUCE: apparmor: Fix: refcount race between locating in labelset and get" + - Revert "UBUNTU: SAUCE: apparmor: Fix: label merge handling of marking unconfined and stale" + - Revert "UBUNTU: SAUCE: apparmor: add underscores to indicate aa_label_next_not_in_set() use needs locking" + - Revert "UBUNTU: SAUCE: apparmor: debug: POISON label and replaceby pointer on free" + - Revert "UBUNTU: SAUCE: apparmor: Fix: ensure aa_get_newest will trip debugging if the replacedby is not setup" + - Revert "UBUNTU: SAUCE: apparmor: Fix: insert race between label_update and label_merge" + - Revert "UBUNTU: SAUCE: apparmor: rework retrieval of the current label in the profile update case" + - Revert "UBUNTU: SAUCE: apparmor: Disallow update of cred when then subjective != the objective cred" + - Revert "UBUNTU: SAUCE: apparmor: Fix: oops do to invalid null ptr deref in label print fns" + - Revert "UBUNTU: SAUCE: fix-up: kern_mount fail path should not be doing put_buffers()" + - Revert "UBUNTU: SAUCE: apparmor: fix sleep from invalid context" + - Revert "UBUNTU: SAUCE: (no-up): apparmor: fix for failed mediation of socket that is being shutdown" + - Revert "UBUNTU: SAUCE: (no-up) apparmor: Fix incompatible pointer type warnings" + - Revert "UBUNTU: SAUCE: (no-up) apparmor: fix mount not handling disconnected paths" + - Revert "UBUNTU: SAUCE: (no-up): apparmor: fix mediation of fs unix sockets" + - Revert "UBUNTU: apparmor -- follow change to this_cpu_ptr" + - Revert "UBUNTU: SAUCE: (no-up) fix: bad unix_addr_fs macro" + - Revert "UBUNTU: SAUCE: Revert: fix: only allow a single threaded process to ..." + - Revert "UBUNTU: SAUCE: (no-up) apparmor: Sync to apparmor3 - RC1 snapshot" + - Revert "UBUNTU: SAUCE: (no-up) apparmor: add parameter to control whether policy hashing is used" + - SAUCE: (no-up) apparmor: sync of apparmor3.5-beta1 snapshot + - SAUCE: add a sysctl to enable unprivileged user ns AppArmor policy loading + + * Add arm64 NUMA support (LP: #1558765) + - SAUCE: (noup) efi: ARM/arm64: ignore DT memory nodes instead of removing them + - SAUCE: (noup) Documentation, dt, numa: dt bindings for NUMA. + - [Config] CONFIG_OF_NUMA=y + - SAUCE: (noup) of, numa: Add NUMA of binding implementation. + - SAUCE: (noup) arm64: Move unflatten_device_tree() call earlier. + - [Config] CONFIG_NUMA=y and CONFIG_NODES_SHIFT=2 on arm64 + - SAUCE: (noup) arm64, numa: Add NUMA support for arm64 platforms. + - SAUCE: (noup) arm64, mm, numa: Add NUMA balancing support for arm64. + + * vivid/linux: total ADT test failures (LP: #1558447) + - Revert "Revert "af_unix: Revert 'lock_interruptible' in stream receive code"" + + * [Hyper-V] patches to allow kdump crash through NMI (LP: #1558720) + - Drivers: hv: vmbus: Support handling messages on multiple CPUs + - Drivers: hv: vmbus: Support kexec on ws2012 r2 and above + + * s390/pci: enforce fmb page boundary rule (LP: #1558625) + - s390/pci: enforce fmb page boundary rule + + * s390/pci: backport upstream commits since v4.4 (LP: #1558624) + - s390/pci_dma: fix DMA table corruption with > 4 TB main memory + - page_to_phys() always returns a multiple of PAGE_SIZE + - s390/pci: provide ZPCI_ADDR macro + - s390/pci: improve ZPCI_* macros + - s390/pci: resize iomap + - s390/pci: fix bar check + - s390/pci: set error state for unusable functions + - s390/pci: remove iomap sanity checks + - s390/pci: remove pdev pointer from arch data + - s390/pci: add ioctl interface for CLP + + * IMA-appraisal is unusable in Ubuntu 16.04 (LP: #1558553) + - [Config] CONFIG_SYSTEM_EXTRA_CERTIFICATE=y, CONFIG_SYSTEM_EXTRA_CERTIFICATE_SIZE=4096 + - KEYS: Use the symbol value for list size, updated by scripts/insert-sys-cert + - KEYS: Reserve an extra certificate symbol for inserting without recompiling + - SAUCE: (noup) KEYS: Support for inserting a certificate into x86 bzImage + + * skb_warn_bad_offload Crash (LP: #1558025) + - ipv4: only create late gso-skb if skb is already set up with CHECKSUM_PARTIAL + + * Add PCIe root complex to Cavium arm64 (LP: #1558342) + - [Config] CONFIG_PCI_HOST_COMMON=y + - [Config] CONFIG_PCI_HOST_THUNDER_PEM=y + - [Config] CONFIG_PCI_HOST_THUNDER_ECAM=y + - PCI: generic: Move structure definitions to separate header file + - PCI: generic: Add pci_host_common_probe(), based on gen_pci_probe() + - PCI: generic: Expose pci_host_common_probe() for use by other drivers + - PCI: thunder: Add PCIe host driver for ThunderX processors + - PCI: thunder: Add driver for ThunderX-pass{1,2} on-chip devices + + * [Hyper-V] vmbus: Fix a bug in hv_need_to_signal_on_read() (LP: #1556264) + - SAUCE: (noup) Drivers: hv: vmbus: Fix a bug in hv_need_to_signal_on_read() + + * Xenial update to v4.4.6 stable release (LP: #1558330) + - arm64: account for sparsemem section alignment when choosing vmemmap offset + - ARM: mvebu: fix overlap of Crypto SRAM with PCIe memory window + - ARM: dts: dra7: do not gate cpsw clock due to errata i877 + - ARM: OMAP2+: hwmod: Introduce ti,no-idle dt property + - PCI: Allow a NULL "parent" pointer in pci_bus_assign_domain_nr() + - kvm: cap halt polling at exactly halt_poll_ns + - KVM: VMX: disable PEBS before a guest entry + - KVM: s390: correct fprs on SIGP (STOP AND) STORE STATUS + - KVM: PPC: Book3S HV: Sanitize special-purpose register values on guest exit + - KVM: MMU: fix ept=0/pte.u=1/pte.w=0/CR0.WP=0/CR4.SMEP=1/EFER.NX=0 combo + - KVM: MMU: fix reserved bit check for ept=0/CR0.WP=0/CR4.SMEP=1/EFER.NX=0 + - s390/dasd: fix diag 0x250 inline assembly + - tracing: Fix check for cpu online when event is disabled + - dmaengine: at_xdmac: fix residue computation + - jffs2: reduce the breakage on recovery from halfway failed rename() + - ncpfs: fix a braino in OOM handling in ncp_fill_cache() + - ASoC: dapm: Fix ctl value accesses in a wrong type + - ASoC: samsung: Use IRQ safe spin lock calls + - ASoC: wm8994: Fix enum ctl accesses in a wrong type + - ASoC: wm8958: Fix enum ctl accesses in a wrong type + - ovl: ignore lower entries when checking purity of non-directory entries + - ovl: fix working on distributed fs as lower layer + - wext: fix message delay/ordering + - cfg80211/wext: fix message ordering + - can: gs_usb: fixed disconnect bug by removing erroneous use of kfree() + - iwlwifi: mvm: inc pending frames counter also when txing non-sta + - mac80211: minstrel: Change expected throughput unit back to Kbps + - mac80211: fix use of uninitialised values in RX aggregation + - mac80211: minstrel_ht: set default tx aggregation timeout to 0 + - mac80211: minstrel_ht: fix a logic error in RTS/CTS handling + - mac80211: check PN correctly for GCMP-encrypted fragmented MPDUs + - mac80211: Fix Public Action frame RX in AP mode + - gpu: ipu-v3: Do not bail out on missing optional port nodes + - drm/amdgpu: Fix error handling in amdgpu_flip_work_func. + - drm/radeon: Fix error handling in radeon_flip_work_func. + - Revert "drm/radeon/pm: adjust display configuration after powerstate" + - userfaultfd: don't block on the last VM updates at exit time + - ovl: fix getcwd() failure after unsuccessful rmdir + - MIPS: Fix build error when SMP is used without GIC + - MIPS: smp.c: Fix uninitialised temp_foreign_map + - block: don't optimize for non-cloned bio in bio_get_last_bvec() + - target: Drop incorrect ABORT_TASK put for completed commands + - ld-version: Fix awk regex compile failure + - Linux 4.4.6 + + * linux fails to load x.509 built-in certificate (LP: #1557250) + - lib/mpi: Endianness fix + + * s390/kconfig: setting for CONFIG...9P.... (LP: #1557994) + - [Config] CONFIG_NET_9P=m for s390x + + * mlx5_core kernel trace after "ethtool -C eth1 adaptive-rx on" flow + (LP: #1557950) + - net/mlx5e: Don't try to modify CQ moderation if it is not supported + - net/mlx5e: Don't modify CQ before it was created + + * [Feature]SD/SDIO/eMMC support for Broxton-P (LP: #1520454) + - mmc: sdhci: Do not BUG on invalid vdd + - mmc: enable MMC/SD/SDIO device to suspend/resume asynchronously + - mmc: It is not an error for the card to be removed while suspended + + * s390/kconfig: disable CONFIG_VIRTIO_MMIO (LP: #1557689) + - [Config] CONFIG_VIRTIO_MMIO=n for s390x + + * s390/kconfig: CONFIG_NUMA without CONFIG_NUMA_EMU does not make any sense on s390x (LP: #1557690) + - [Config] CONFIG_NUMA_EMU=y for s390x + + * Miscellaneous Ubuntu changes + - [Debian] git-ubuntu-log -- prevent bug references being split + - [Debian] git-ubuntu-log -- git log output is UTF-8 + + -- Tim Gardner Tue, 15 Mar 2016 13:18:58 -0600 + +linux (4.4.0-14.30) xenial; urgency=low + + [ Tim Gardner ] + + * Release Tracking Bug + - LP: #1557508 + + * Current 4.4 kernel won't boot on powerpc (LP: #1557130) + - powerpc: Fix dedotify for binutils >= 2.26 + + * ZFS: send fails to transmit some holes [corruption] (LP: #1557151) + - Illumos 6370 - ZFS send fails to transmit some holes + + * Request to cherry-pick uvcvideo patch for Xenial kernel support of RealSense + camera (LP: #1557138) + - UVC: Add support for ds4 depth camera + + * use after free of task_struct->numa_faults in task_numa_find_cpu (LP: #1527643) + - sched/numa: Fix use-after-free bug in the task_numa_compare + + * overlay fs regression: chmod fails with "Operation not permitted" on chowned + files (LP: #1555997) + - ovl: copy new uid/gid into overlayfs runtime inode + + * Miscellaneous Ubuntu changes + - SAUCE: Dump stack when X.509 certificates cannot be loaded + + -- Tim Gardner Mon, 14 Mar 2016 07:16:19 -0600 + +linux (4.4.0-13.29) xenial; urgency=low + + [ Tim Gardner ] + + * Release Tracking Bug + - LP: #1556247 + + * s390/mm: four page table levels vs. fork (LP: #1556141) + - s390/mm: four page table levels vs. fork + + * [Hyper-V] network performance patches for Xenial 16.04 (LP: #1556037) + - hv_netvsc: use skb_get_hash() instead of a homegrown implementation + - hv_netvsc: cleanup netdev feature flags for netvsc + + * fails to boot on megaraid (LP: #1552903) + - SAUCE: (noup) megaraid_sas: Don't issue kill adapter for MFI controllers in + case of PD list DCMD failure + + * ALSA: hda - add codec support for Kabylake display audio codec (LP: #1556002) + - ALSA: hda - add codec support for Kabylake display audio codec + + * Backport upstream bugfixes to ubuntu-16.04 (LP: #1555765) + - cpufreq: powernv: Free 'chips' on module exit + - cpufreq: powernv: Hot-plug safe the kworker thread + - cpufreq: powernv: Remove cpu_to_chip_id() from hot-path + - cpufreq: powernv/tracing: Add powernv_throttle tracepoint + - cpufreq: powernv: Replace pr_info with trace print for throttle event + - SAUCE: (noup) cpufreq: powernv: Fix bugs in powernv_cpufreq_{init/exit} + + * Linux netfilter IPT_SO_SET_REPLACE memory corruption (LP: #1555338) + - SAUCE: [nf,v2] netfilter: x_tables: don't rely on well-behaving userspace + + * integer overflow in xt_alloc_table_info (LP: #1555353) + - SAUCE: (noup) netfilter: x_tables: check for size overflow + + * linux: auto-generate the reconstruct information from the git tag (LP: #1555543) + - [Packaging] reconstruct -- automatically reconstruct against base tag + - [Config] reconstruct -- update to autoreconstruct output + - [Packaging] reconstruct -- update when inserting final changes + + * Xenial update to v4.4.5 stable release (LP: #1555640) + - use ->d_seq to get coherency between ->d_inode and ->d_flags + - drivers: sh: Restore legacy clock domain on SuperH platforms + - Btrfs: fix deadlock running delayed iputs at transaction commit time + - btrfs: Fix no_space in write and rm loop + - btrfs: async-thread: Fix a use-after-free error for trace + - block: Initialize max_dev_sectors to 0 + - PCI: keystone: Fix MSI code that retrieves struct pcie_port pointer + - parisc: Fix ptrace syscall number and return value modification + - mips/kvm: fix ioctl error handling + - kvm: x86: Update tsc multiplier on change. + - fbcon: set a default value to blink interval + - cifs: fix out-of-bounds access in lease parsing + - CIFS: Fix SMB2+ interim response processing for read requests + - Fix cifs_uniqueid_to_ino_t() function for s390x + - vfio: fix ioctl error handling + - KVM: x86: fix root cause for missed hardware breakpoints + - arm/arm64: KVM: Fix ioctl error handling + - iommu/amd: Apply workaround for ATS write permission check + - iommu/amd: Fix boot warning when device 00:00.0 is not iommu covered + - iommu/vt-d: Use BUS_NOTIFY_REMOVED_DEVICE in hotplug path + - target: Fix WRITE_SAME/DISCARD conversion to linux 512b sectors + - drm/ast: Fix incorrect register check for DRAM width + - drm/radeon/pm: update current crtc info after setting the powerstate + - drm/amdgpu/pm: update current crtc info after setting the powerstate + - drm/amdgpu: apply gfx_v8 fixes to gfx_v7 as well + - drm/amdgpu/gfx8: specify which engine to wait before vm flush + - drm/amdgpu: return from atombios_dp_get_dpcd only when error + - libata: fix HDIO_GET_32BIT ioctl + - libata: Align ata_device's id on a cacheline + - block: bio: introduce helpers to get the 1st and last bvec + - writeback: flush inode cgroup wb switches instead of pinning super_block + - Adding Intel Lewisburg device IDs for SATA + - arm64: vmemmap: use virtual projection of linear region + - PM / sleep / x86: Fix crash on graph trace through x86 suspend + - ata: ahci: don't mark HotPlugCapable Ports as external/removable + - tracing: Do not have 'comm' filter override event 'comm' field + - pata-rb532-cf: get rid of the irq_to_gpio() call + - Btrfs: fix loading of orphan roots leading to BUG_ON + - Revert "jffs2: Fix lock acquisition order bug in jffs2_write_begin" + - jffs2: Fix page lock / f->sem deadlock + - Fix directory hardlinks from deleted directories + - dmaengine: pxa_dma: fix cyclic transfers + - adv7604: fix tx 5v detect regression + - ALSA: usb-audio: Add a quirk for Plantronics DA45 + - ALSA: ctl: Fix ioctls for X32 ABI + - ALSA: hda - Fix mic issues on Acer Aspire E1-472 + - ALSA: rawmidi: Fix ioctls X32 ABI + - ALSA: timer: Fix ioctls for X32 ABI + - ALSA: pcm: Fix ioctls for X32 ABI + - ALSA: seq: oss: Don't drain at closing a client + - ALSA: hdspm: Fix wrong boolean ctl value accesses + - ALSA: hdsp: Fix wrong boolean ctl value accesses + - ALSA: hdspm: Fix zero-division + - ALSA: timer: Fix broken compat timer user status ioctl + - usb: chipidea: otg: change workqueue ci_otg as freezable + - USB: cp210x: Add ID for Parrot NMEA GPS Flight Recorder + - USB: qcserial: add Dell Wireless 5809e Gobi 4G HSPA+ (rev3) + - USB: qcserial: add Sierra Wireless EM74xx device ID + - USB: serial: option: add support for Telit LE922 PID 0x1045 + - USB: serial: option: add support for Quectel UC20 + - MIPS: scache: Fix scache init with invalid line size. + - MIPS: traps: Fix SIGFPE information leak from `do_ov' and `do_trap_or_bp' + - ubi: Fix out of bounds write in volume update code + - i2c: brcmstb: allocate correct amount of memory for regmap + - thermal: cpu_cooling: fix out of bounds access in time_in_idle + - block: check virt boundary in bio_will_gap() + - block: get the 1st and last bvec via helpers + - drm/i915: more virtual south bridge detection + - drm/i915: refine qemu south bridge detection + - modules: fix longstanding /proc/kallsyms vs module insertion race. + - drm/amdgpu: fix topaz/tonga gmc assignment in 4.4 stable + - Linux 4.4.5 + + * QEMU: causes vCPU steal time overflow on live migration (LP: #1494350) + - x86/mm: Fix slow_virt_to_phys() for X86_PAE again + + * TPM2.0 trusted keys fixes (LP: #1398274) + - tpm_tis: further simplify calculation of ordinal duration + - tpm_tis: Use devm_free_irq not free_irq + - tpm_tis: Ensure interrupts are disabled when the driver starts + - tpm: rework tpm_get_timeouts() + - tpm_tis: Get rid of the duplicate IRQ probing code + - tpm_tis: Refactor the interrupt setup + - tpm_tis: Tighten IRQ auto-probing + - tpm_ibmvtpm: properly handle interrupted packet receptions + + * linux: review all versioned depends/conflicts/replaces/breaks for validility (LP: #1555033) + - [Config] control.stub.in -- review versioned Build-Depends: + - [Config] control.stub.in -- review versioned + Depends/Breaks/Conflicts/Replaces + - [Config] flavour-control.stub -- review versioned Breaks/Conflicts/Replaces + - [Config] x86 vars.* -- review versioned Breaks/Conflicts/Replaces + + -- Tim Gardner Wed, 09 Mar 2016 05:11:51 -0700 + +linux (4.4.0-12.28) xenial; urgency=low + + * Miscellaneous Ubuntu changes + - reconstruct: Work around orig tarball packaging limitiations + Fixes FTBS + + -- Tim Gardner Tue, 08 Mar 2016 13:26:08 -0700 + +linux (4.4.0-12.27) xenial; urgency=low + + [ Tim Gardner ] + + * Release Tracking Bug + - LP: #1554704 + + * Fails to detect (second) display (LP: #1543683) + - drm/i915: Fix hpd live status bits for g4x + + * s390x -- various configuration changes (LP: #1543165) + - [Config] s390x -- enable CONFIG_NUMA + - [Config] s390x -- disable CONFIG_NET_VENDOR_EMULEX + - [Config] s390x -- disable CONFIG_NET_VENDOR_SYNOPSYS + - [Config] s390x -- disable CONFIG_NVMEM + - [Config] s390x -- switch preempt mode to none + + * Radeon hybrid graphics problem on resume (LP: #1554608) + - Revert "drm/radeon: call hpd_irq_event on resume" + + * Pull in upstream AMD code (amdgpu) in Xenial (LP: #1546572) + - [Config] CONFIG_DRM_AMD_POWERPLAY=y + - drm/amdgpu: use $(src) in Makefile (v2) + - drm/radeon: constify radeon_asic_ring structures + - drm/amdgpu: add a callback for reading the bios from the rom directly + - drm/amdgpu: add read_bios_from_rom callback for CI parts + - drm/amdgpu: add read_bios_from_rom callback for VI parts + - drm/amdgpu: Use new read bios from rom callback + - drm/amdgpu: Use unlocked gem unreferencing + - drm/radeon: Use unlocked gem unreferencing + - drm/amd: add new gfx8 register definitions for EDC + - drm/amdgpu: add EDC support for CZ (v3) + - drm/amd: abstract kernel rq and normal rq to priority of run queue + - drm/amdgpu/gfx8: Enable interrupt on ME1_PIPE3 + - drm/amdgpu/gfx8: update PA_SC_RASTER_CONFIG:PKR_MAP only + - drm/amdgpu: update rev id register for VI + - drm/amdgpu: add more debugging output for driver failures + - drm/amdgpu: add entity only when first job come + - drm/amdgpu: handle error case for ctx + - drm/amdgpu: unify AMDGPU_CTX_MAX_CS_PENDING and amdgpu_sched_jobs + - drm/amdgpu: change default sched jobs to 32 + - drm/amdgpu: limit visible vram if it's smaller than the BAR + - drm/amdgpu: restrict the sched jobs number to power of two + - drm/amdgpu: put VM page tables directly into duplicates list + - drm/amdgpu: split VM PD and PT handling during CS + - drm/amdgpu: keep the PTs validation list in the VM v2 + - drm/radeon: Update radeon_get_vblank_counter_kms() + - drm/radeon: only increment sync_seq when a fence is really emitted + - drm/fb-helper: Use proper plane mask for fb cleanup + - drm/amdgpu: fix dp link rate selection (v2) + - drm/radeon: fix dp link rate selection (v2) + - drm/amdgpu: share struct amdgpu_pm_state_type with powerplay module + - drm/amdgpu: mv some definition from amdgpu_acpi.c to amdgpu_acpi.h + - drm/amdgpu: mv amdgpu_acpi.h to amd/include/amd_acpi.h + - drm/amdgpu: implement new cgs interface for acpi function + - drm/amdgpu: implement cgs interface to query system info + - drm/amdgpu: add new cgs interface to get display info (v2) + - drm/amd/powerplay: add basic powerplay framework + - drm/amdgpu: disable legacy path of firmware check if powerplay is enabled + - drm/amdgpu: export amd_powerplay_func to amdgpu and other ip block + - drm/amd/powerplay: add SMU manager sub-component + - drm/amd/powerplay: add hardware manager sub-component + - SAUCE: amd: Include errno.h + - drm/amd/powerplay: add Carrizo smu support + - drm/amd/powerplay: add Carrizo dpm support + - drm/amd/powerplay: add CG and PG support for carrizo + - drm/amd/powerplay: add event manager sub-component + - drm/amd/powerplay: implement functions of amd_powerplay_func + - drm/amd/powerplay: Add ixSWRST_COMMAND_1 in bif_5_0_d.h + - drm/amd/powerplay: Move smu7*.h from amdgpu to powerplay. + - drm/amd/powerplay: add header file for tonga smu and dpm + - drm/amd/powerplay: Add Tonga SMU support + - drm/amd/powerplay: add Tonga dpm support (v3) + - drm/amd/powerplay: add/update headers for Fiji SMU and DPM + - drm/amd/powerplay: update atomctrl for fiji + - drm/amd/powerplay: add Fiji SMU support. + - drm/amd/powerplay: add Fiji DPM support. + - drm/amdgpu: add amdgpu.powerplay module option + - drm/amd/amdgpu: enable powerplay and smc firmware loading for Fiji. + - drm/amdgpu/powerplay: add function point in hwmgr_funcs for program display gap + - drm/amdgpu/poweprlay: export program display gap function to eventmgr + - drm/amdgpu/powerplay: implement pem_task for display_configuration_change + - drm/amdgpu/powerplay: program display gap for tonga. + - drm/amdgpu: enable powerplay module by default for tonga. + - drm/amdgpu: enable powerplay module by default for fiji. + - drm/amdgpu/powerplay: add some definition for other ip block to update cg pg. + - drm/amd/powerplay: add new function point in hwmgr_func for CG/PG. + - drm/amd/powerplay: Add CG and PG support for tonga + - drm/amdgpu/powerplay: add new function point in hwmgr_funcs for thermal control + - drm/amdgpu/powerplay: mv ppinterrupt.h to inc folder to share with other submodule. + - drm/amdgpu/powerplay: add thermal control interface in hwmgr. + - drm/amdgpu/powerplay: enable thermal interrupt task in eventmgr. + - drm/amdgpu/powerplay: implement thermal control for tonga. + - drm/amdgpu/powerplay: implement fan control interface in amd_powerplay_funcs + - drm/amdgpu: export fan control functions to amdgpu + - drm/amdgpu: enable sysfs interface for powerplay + - drm/amdgpu: support per device powerplay enablement (v2) + - drm/amd/powerplay: add and export hwmgr interface to eventmgr to check hw states. + - drm/amd/powerplay: implement new funcs to check current states for tonga. + - drm/amd/powerplay: refine the logic of whether need to update power state. + - drm/amd/powerplay/tonga: enable pcie and mclk forcing for low + - drm/amd/powerplay/fiji: enable pcie and mclk forcing for low + - drm/amdgpu: extract pcie helpers to common header + - drm: add drm_pcie_get_max_link_width helper (v2) + - drm/amdgpu: store pcie gen mask and link width + - drm/amdgpu/cgs: add sys info query for pcie gen and link width + - drm/amdgpu/powerplay/tonga: query supported pcie info from cgs (v2) + - drm/amdgpu/powerplay/fiji: query supported pcie info from cgs (v2) + - drm/amd/powerplay: fix boolreturn.cocci warnings + - drm/amd/powerplay/tonga: Add UVD DPM init + - drm/amd/amdgpu: add gfx clock gating support for Fiji. + - drm/amd/amdgpu: add gmc clock gating support for Fiji. + - drm/amdgpu: add sdma clock gating support for Fiji. + - drm/amd/powerplay: add parts of system clock gating support for Fiji. (v2) + - drm/amd/powerplay: enable clock gating for Fiji. + - drm/amd/powerplay: add atomctrl function to calculate CZ sclk dividers + - drm/amd/powerplay: implement smc state upload for CZ + - drm/amd/powerplay: fix warning of cast to pointer from integer of different size. + - drm/amd/powerplay: fix warning of cast to pointer from integer of different size. + - drm/amd/powerplay: add new function point in hwmgr. + - drm/amd/powerplay: add smc msg for NB P-State switch + - drm/amd/powerplay: export interface to DAL to init/change display configuration. + - drm/amd/powerplay: enable set_cpu_power_state task. (v2) + - drm/amd/powerplay: enable/disable NB pstate feature for Carrizo. + - drm/amd/powerplay: Add PPLib debug print macro. + - drm/amdgpu: rename tonga_smumgr.h to tonga_smum.h + - drm/amdgpu: rename fiji_smumgr.h to fiji_smum.h + - drm/amd/powerplay: add multimedia power gating support for Fiji. + - drm/amd/amdgpu: add uvd6.0 clock gating support. (v2) + - drm/amd/amdgpu: add vce3.0 clock gating support. (v2) + - drm/amd/amdgpu: enable uvd&vce clock gating for Fiji. + - drm/amdgpu: Prepare DKMS build for powerplay module. + - drm/amd/powerplay: add display configeration changed function in hwmgr for Fiji. + - drm/amd/powerplay: Add thermal protection support for Fiji. + - drm/amd/powerplay: Fix a bug in fan control setting default mode for Tonga and Fiji. + - drm/amd/powerplay: add functions set/get_fan_control_mode in hwmgr for Tonga. + - drm/amd/powerplay: add functions set/get_fan_control_mode in hwmgr for Fiji. + - drm/amd/powerplay: fix boolreturn.cocci warnings + - drm/amd/powerplay: fix bug that dpm funcs in debugfs/sysfs missing. + - drm/amd/powerplay: check whether enable dpm in powerplay. + - drm/amd/powerplay: move shared function of vi to hwmgr. (v2) + - drm/amdgpu/powerplay: enable sysfs and debugfs interfaces late + - drm/amd/powerplay: display gpu load when print performance for tonga. + - drm/powerplay: add debugging output to tonga_processpptables.c + - drm/powerplay: add debugging output to processpptables.c + - drm/powerplay/hwmgr: log errors in tonga_hwmgr_backend_init + - drm/amd/powerplay: Don't return an error if fan table is missing + - amd\powerplay Implement get dal power level + - amd/powerplay: Fix get dal power level + - amd/powerplay: Add structures required to report configuration change + - drm/amdgpu/powerplay: Program a calculated value as Deep Sleep clock. + - drm/amd/powerplay: add point check to avoid NULL point hang. + - drm/amd/powerplay: check whether need to enable thermal control. (v2) + - drm/amd/powerplay: show gpu load when print gpu performance for Cz. (v2) + - drm: powerplay: use div64_s64 instead of do_div + - drm/amd/powerplay: fix a reversed condition + - drm/amdgpu/cgs: cleanup some indenting + - drm/amd/powerplay: precedence bug in init_non_clock_fields() + - drm/amdgpu: fix NULL in vm_grab_id while S3 back + - drm/amd/powerplay: fix bug that NULL checks are reversed. + - drm/amd/powerplay: fix Smatch static checker warnings with indenting (v2) + - drm/amd/powerplay: fix Smatch static checker warnings + - drm/amd/powerplay: add powerplay valid check to avoid null point. (v2) + - drm/amd/powerplay: Reload and initialize the smc firmware on powerplay resume. + - drm/amdgpu: Show gpu load when display gpu performance for Ci. + - drm/amdgpu: Show gpu load when display gpu performance for Fiji of VI. + - drm/amdgpu: fix hex/decimal bug when show gpu load. + - drm/amd/powerplay: add thermal control task when resume. + - drm/amd/powerplay: enable set boot state task + - drm/amd/powerplay: enable power down asic task. (v2) + - drm/amd/powerplay: implement power down asic task for CZ + - drm/amdgpu: add warning to amdgpu_bo_gpu_offset() v2 + - drm/amdgpu/cgs: add an interface to access PCI resources + - drm/amdgpu: add irq domain support + - drm/amdgpu/powerplay: include asm/div64.h for do_div() + - drm/sysfs: use kobj_to_dev() + - drm/amd/powerplay: fix static checker warning for return meaningless value. + - drm/amdgpu/cz: add code to enable forcing UVD clocks + - drm/amdgpu/cz: add code to enable forcing VCE clocks + - drm/amdgpu/cz: force uvd clocks when sclks are forced + - drm/amdgpu/cz: force vce clocks when sclks are forced + - drm/amdgpu: use kobj_to_dev() + - drm/radeon: use kobj_to_dev() + - drm/ttm: fix adding foreign BOs to the LRU during init v2 + - drm/ttm: fix adding foreign BOs to the swap LRU + - drm/ttm: add ttm_bo_move_to_lru_tail function v2 + - drm/amdgpu: move VM page tables to the LRU end on CS v2 + - drm/amdgpu: validate duplicates first + - drm/amdgpu: add missing irq.h include + - drm/fb_cma_helper: Remove implicit call to disable_unused_functions + - drm/amdgpu: Add some tweaks to gfx 8 soft reset + - amdkfd: don't open-code memdup_user() + - amdkfd: Copy from the proper user command pointer + - drm/amdgpu: Use drm_calloc_large for VM page_tables array + - amd/powerplay: disable powerplay by default initially + - drm/amdgpu: Allow the driver to load if amdgpu.powerplay=1 on asics without powerplay support + - drm/atomic-helper: Export framebuffer_changed() + - drm/amd/amdgpu: Improve amdgpu_dpm* macros to avoid unexpected result (v2) + - drm/amdgpu: add a message to indicate when powerplay is enabled (v2) + - drm/amdgpu: fix next_rptr handling for debugfs + - drm/radeon: Ensure radeon bo is unreserved in radeon_gem_va_ioctl + - drm/radeon: only init fbdev if we have connectors + - drm/amdgpu: don't init fbdev if we don't have any connectors + - drm/amd/powerplay: Update SMU firmware loading for Stoney + - drm/amdgpu: fix non-ANSI declaration of amdgpu_amdkfd_gfx_*_get_functions() + - drm/amdkfd: Remove unnecessary cast in kfree + - drm/amdgpu: only move pt bos in LRU list on success + - drm/amdgpu: mask out WC from BO on unsupported arches + - drm/amdgpu/gfx8: enable cp inst/reg error interrupts + - drm/amdgpu/gfx7: enable cp inst/reg error interrupts + - drm/amdgpu: load MEC ucode manually on iceland + - drm/amdgpu: disable uvd and vce clockgating on Fiji + - drm/amdgpu: add pcie cap module parameters (v2) + - drm/amdgpu/cik: don't mess with aspm if gpu is root bus + - drm/amdgpu/dpm/ci: switch over to the common pcie caps interface + - drm/amdgpu: handle uvd pg flags properly + - drm/amdgpu: handle vce pg flags properly + - drm/amdgpu: clean up vce pg flags for cz/st + - drm/amdgpu: be consistent with uvd cg flags + - drm/amd/powerplay/cz: disable uvd pg + - drm/amd/powerplay/cz: disable vce pg + - drm/amd/powerplay/tonga: disable uvd pg + - drm/amd/powerplay/tonga: disable vce pg + - drm/amdgpu: add a cgs interface to fetch cg and pg flags + - drm/amdgpu: remove unused cg defines + - drma/dmgpu: move cg and pg flags into shared headers + - drm/amdgpu/tonga: plumb pg flags through to powerplay + - drm/amdgpu/cz: plumb pg flags through to powerplay + - SAUCE: drm/amdgpu/cz: enable/disable vce dpm even if vce pg is disabled + + * mlx4_core Set UAR page size to 4KB regardless of system page size (LP: + #1552632) + - net/mlx4_core: Set UAR page size to 4KB regardless of system page size + + * Miscellaneous Ubuntu changes + - [Config] CONFIG_CAVIUM_ERRATUM_27456=y + + * Miscellaneous upstream changes + - net: thunderx: Fix for Qset error due to CQ full + - ahci: Workaround for ThunderX Errata#22536 + - arm64: Add workaround for Cavium erratum 27456 + - tipc: fix nullptr crash during subscription cancel + + -- Tim Gardner Mon, 07 Mar 2016 05:04:22 -0700 + +linux (4.4.0-11.26) xenial; urgency=low + + [ Tim Gardner ] + + * Release Tracking Bug + - LP: #1553391 + + * Xenial update to v4.4.4 stable release (LP: #1553179) + - af_iucv: Validate socket address length in iucv_sock_bind() + - gro: Make GRO aware of lightweight tunnels. + - net: dp83640: Fix tx timestamp overflow handling. + - tunnels: Allow IPv6 UDP checksums to be correctly controlled. + - lwt: fix rx checksum setting for lwt devices tunneling over ipv6 + - tcp: fix NULL deref in tcp_v4_send_ack() + - af_unix: fix struct pid memory leak + - pptp: fix illegal memory access caused by multiple bind()s + - sctp: allow setting SCTP_SACK_IMMEDIATELY by the application + - net: dsa: fix mv88e6xxx switches + - tipc: fix connection abort during subscription cancel + - inet: frag: Always orphan skbs inside ip_defrag() + - switchdev: Require RTNL mutex to be held when sending FDB notifications + - tcp: beware of alignments in tcp_get_info() + - ipv6: enforce flowi6_oif usage in ip6_dst_lookup_tail() + - ipv6/udp: use sticky pktinfo egress ifindex on connect() + - ipv6: addrconf: Fix recursive spin lock call + - ipv6: fix a lockdep splat + - unix: correctly track in-flight fds in sending process user_struct + - tcp: do not drop syn_recv on all icmp reports + - net:Add sysctl_max_skb_frags + - tg3: Fix for tg3 transmit queue 0 timed out when too many gso_segs + - enic: increment devcmd2 result ring in case of timeout + - sctp: translate network order to host order when users get a hmacid + - net: Copy inner L3 and L4 headers as unaligned on GRE TEB + - flow_dissector: Fix unaligned access in __skb_flow_dissector when used by + eth_get_headlen + - bpf: fix branch offset adjustment on backjumps after patching ctx expansion + - bonding: Fix ARP monitor validation + - ipv4: fix memory leaks in ip_cmsg_send() callers + - af_unix: Don't set err in unix_stream_read_generic unless there was an error + - af_unix: Guard against other == sk in unix_dgram_sendmsg + - tipc: fix premature addition of node to lookup table + - tcp: md5: release request socket instead of listener + - qmi_wwan: add "4G LTE usb-modem U901" + - net/mlx4_en: Count HW buffer overrun only once + - net/mlx4_en: Avoid changing dev->features directly in run-time + - l2tp: Fix error creating L2TP tunnels + - pppoe: fix reference counting in PPPoE proxy + - net_sched fix: reclassification needs to consider ether protocol changes + - route: check and remove route cache when we get route + - tcp/dccp: fix another race at listener dismantle + - IFF_NO_QUEUE: Fix for drivers not calling ether_setup() + - rtnl: RTM_GETNETCONF: fix wrong return value + - tipc: unlock in error path + - unix_diag: fix incorrect sign extension in unix_lookup_by_ino + - sctp: Fix port hash table size computation + - ext4: fix bh->b_state corruption + - ARM: debug-ll: fix BCM63xx entry for multiplatform + - arm64: errata: Add -mpc-relative-literal-loads to build flags + - KVM: s390: fix guest fprs memory leak + - devm_memremap: Fix error value when memremap failed + - drm/gma500: Use correct unref in the gem bo create function + - ARM: 8457/1: psci-smp is built only for SMP + - lib/ucs2_string: Add ucs2 -> utf8 helper functions + - efi: Use ucs2_as_utf8 in efivarfs instead of open coding a bad version + - efi: Do variable name validation tests in utf8 + - efi: Make our variable validation list include the guid + - efi: Make efivarfs entries immutable by default + - efi: Add pstore variables to the deletion whitelist + - lib/ucs2_string: Correct ucs2 -> utf8 conversion + - bcache: fix a livelock when we cause a huge number of cache misses + - bcache: Add a cond_resched() call to gc + - bcache: clear BCACHE_DEV_UNLINK_DONE flag when attaching a backing device + - bcache: fix a leak in bch_cached_dev_run() + - bcache: unregister reboot notifier if bcache fails to unregister device + - bcache: allows use of register in udev to avoid "device_busy" error. + - bcache: Change refill_dirty() to always scan entire disk if necessary + - dm thin: fix race condition when destroying thin pool workqueue + - can: ems_usb: Fix possible tx overflow + - usb: dwc3: Fix assignment of EP transfer resources + - USB: cp210x: add IDs for GE B650V3 and B850V3 boards + - USB: option: add support for SIM7100E + - USB: option: add "4G LTE usb-modem U901" + - drivers: android: correct the size of struct binder_uintptr_t for + BC_DEAD_BINDER_DONE + - spi: omap2-mcspi: Prevent duplicate gpio_request + - iw_cxgb3: Fix incorrectly returning error on success + - drm/i915: shut up gen8+ SDE irq dmesg noise + - ocfs2: unlock inode if deleting inode from orphan fails + - mm: thp: fix SMP race condition between THP page fault and MADV_DONTNEED + - mm: numa: quickly fail allocations for NUMA balancing on full nodes + - genirq: Validate action before dereferencing it in handle_irq_event_percpu() + - clocksource/drivers/vt8500: Increase the minimum delta + - s390/kvm: remove dependency on struct save_area definition + - KVM: s390: fix memory overwrites when vx is disabled + - Btrfs: add missing brelse when superblock checksum fails + - Btrfs: igrab inode in writepage + - btrfs: statfs: report zero available if metadata are exhausted + - Btrfs: send, don't BUG_ON() when an empty symlink is found + - Btrfs: fix number of transaction units required to create symlink + - Btrfs: fix transaction handle leak on failure to create hard link + - Btrfs: Initialize btrfs_root->highest_objectid when loading tree root and + subvolume roots + - btrfs: initialize the seq counter in struct btrfs_device + - s390: fix normalization bug in exception table sorting + - s390/dasd: prevent incorrect length error under z/VM after PAV changes + - s390/dasd: fix refcount for PAV reassignment + - s390/dasd: fix performance drop + - uml: flush stdout before forking + - uml: fix hostfs mknod() + - um: link with -lpthread + - locks: fix unlock when fcntl_setlk races with a close + - rtlwifi: rtl_pci: Fix kernel panic + - rtlwifi: rtl8192cu: Add missing parameter setup + - rtlwifi: rtl8192ce: Fix handling of module parameters + - rtlwifi: rtl8192de: Fix incorrect module parameter descriptions + - rtlwifi: rtl8723ae: Fix initialization of module parameters + - rtlwifi: rtl8192se: Fix module parameter initialization + - rtlwifi: rtl8188ee: Fix module parameter initialization + - rtlwifi: rtl8723be: Fix module parameter initialization + - mei: fix fasync return value on error + - mei: validate request value in client notify request ioctl + - namei: ->d_inode of a pinned dentry is stable only for positives + - rc: sunxi-cir: Initialize the spinlock properly + - media: dvb-core: Don't force CAN_INVERSION_AUTO in oneshot mode + - si2157: return -EINVAL if firmware blob is too big + - gspca: ov534/topro: prevent a division by 0 + - vb2: fix a regression in poll() behavior for output,streams + - tda1004x: only update the frontend properties if locked + - dm space map metadata: remove unused variable in brb_pop() + - dm snapshot: fix hung bios when copy error occurs + - dm: fix dm_rq_target_io leak on faults with .request_fn DM w/ blk-mq paths + - coresight: checking for NULL string in coresight_name_match() + - irqchip/omap-intc: Add support for spurious irq handling + - irqchip/mxs: Add missing set_handle_irq() + - irqchip/atmel-aic: Fix wrong bit operation for IRQ priority + - irqchip/gic-v3-its: Fix double ICC_EOIR write for LPI in EOImode==1 + - posix-clock: Fix return code on the poll method's error path + - clockevents/tcb_clksrc: Prevent disabling an already disabled clock + - mmc: usdhi6rol0: handle NULL data in timeout + - mmc: sdhci-pci: Do not default to 33 Ohm driver strength for Intel SPT + - mmc: sdio: Fix invalid vdd in voltage switch power cycle + - mmc: mmc: Fix incorrect use of driver strength switching HS200 and HS400 + - mmc: sdhci: Fix sdhci_runtime_pm_bus_on/off() + - mmc: core: Enable tuning according to the actual timing + - mmc: mmci: fix an ages old detection error + - mmc: sdhci-acpi: Fix card detect race for Intel BXT/APL + - mmc: pxamci: fix again read-only gpio detection polarity + - mmc: sdhci-pci: Fix card detect race for Intel BXT/APL + - mmc: sdhci: Allow override of mmc host operations + - mmc: sdhci: Allow override of get_cd() called from sdhci_request() + - Bluetooth: Use continuous scanning when creating LE connections + - Bluetooth: Add support of Toshiba Broadcom based devices + - Bluetooth: Fix incorrect removing of IRKs + - Bluetooth: 6lowpan: Fix kernel NULL pointer dereferences + - Bluetooth: 6lowpan: Fix handling of uncompressed IPv6 packets + - time: Avoid signed overflow in timekeeping_get_ns() + - cputime: Prevent 32bit overflow in time[val|spec]_to_cputime() + - Revert "MIPS: Fix PAGE_MASK definition" + - MIPS: Loongson-3: Fix SMP_ASK_C0COUNT IPI handler + - MIPS: hpet: Choose a safe value for the ETIME check + - MIPS: Fix some missing CONFIG_CPU_MIPSR6 #ifdefs + - MIPS: Fix buffer overflow in syscall_get_arguments() + - EDAC: Robustify workqueues destruction + - EDAC, mc_sysfs: Fix freeing bus' name + - sparc64: fix incorrect sign extension in sys_sparc64_personality + - clk: exynos: use irqsave version of spin_lock to avoid deadlock with irqs + - regulator: axp20x: Fix GPIO LDO enable value for AXP22x + - regulator: mt6311: MT6311_REGULATOR needs to select REGMAP_I2C + - virtio_balloon: fix race by fill and leak + - virtio_balloon: fix race between migration and ballooning + - virtio_pci: fix use after free on release + - drm/vmwgfx: Fix an incorrect lock check + - drm/vmwgfx: Fix a width / pitch mismatch on framebuffer updates + - drm/vmwgfx: respect 'nomodeset' + - drm/amdgpu: Fix off-by-one errors in amdgpu_vm_bo_map + - drm/amdgpu: call hpd_irq_event on resume + - drm/amdgpu: fix lost sync_to if scheduler is enabled. + - drm/amdgpu: fix tonga smu resume + - drm/amdgpu: fix amdgpu_bo_pin_restricted VRAM placing v2 + - drm/amdgpu: no need to load MC firmware on fiji + - drm/amdgpu: move gmc7 support out of CIK dependency + - drm/amdgpu: iceland use CI based MC IP + - drm/amdgpu: The VI specific EXE bit should only apply to GMC v8.0 above + - drm/amdgpu: pull topaz gmc bits into gmc_v7 + - drm/amdgpu: drop topaz support from gmc8 module + - drm/amdgpu: don't load MEC2 on topaz + - drm/amdgpu: remove exp hardware support from iceland + - drm/amdgpu: fix s4 resume + - drm/amdgpu: remove unnecessary forward declaration + - drm/amdgpu: hold reference to fences in amdgpu_sa_bo_new (v2) + - drm/amdgpu: fix issue with overlapping userptrs + - drm/amdgpu: use post-decrement in error handling + - drm/amdgpu: Don't hang in amdgpu_flip_work_func on disabled crtc. + - drm/amdgpu/pm: adjust display configuration after powerstate + - drm/nouveau/kms: take mode_config mutex in connector hotplug path + - drm/nouveau/display: Enable vblank irqs after display engine is on again. + - drm/nouveau/disp/dp: ensure sink is powered up before attempting link + training + - drm/nouveau: platform: Fix deferred probe + - drm/dp/mst: process broadcast messages correctly + - drm/dp/mst: always send reply for UP request + - drm/dp/mst: fix in MSTB RAD initialization + - drm/dp/mst: fix in RAD element access + - drm: Add drm_fixp_from_fraction and drm_fixp2int_ceil + - drm/dp/mst: Calculate MST PBN with 31.32 fixed point + - drm/dp/mst: move GUID storage from mgr, port to only mst branch + - drm/dp/mst: Reverse order of MST enable and clearing VC payload table. + - drm/dp/mst: deallocate payload on port destruction + - drm/radeon: Fix off-by-one errors in radeon_vm_bo_set_addr + - drm/radeon: call hpd_irq_event on resume + - drm/radeon: Fix "slow" audio over DP on DCE8+ + - drm/radeon: clean up fujitsu quirks + - drm/radeon: properly byte swap vce firmware setup + - drm/radeon: cleaned up VCO output settings for DP audio + - drm/radeon: Add a common function for DFS handling + - drm/radeon: fix DP audio support for APU with DCE4.1 display engine + - drm: add helper to check for wc memory support + - drm/radeon: mask out WC from BO on unsupported arches + - drm/radeon: hold reference to fences in radeon_sa_bo_new + - drm: fix missing reference counting decrease + - drm/i915: Restore inhibiting the load of the default context + - drm/i915: intel_hpd_init(): Fix suspend/resume reprobing + - drm/i915: Init power domains early in driver load + - drm/i915: Make sure DC writes are coherent on flush. + - drm/i915/dp: fall back to 18 bpp when sink capability is unknown + - drm/i915: Don't reject primary plane windowing with color keying enabled on + SKL+ + - drm/i915/skl: Don't skip mst encoders in skl_ddi_pll_select() + - drm/i915/dsi: defend gpio table against out of bounds access + - drm/i915/dsi: don't pass arbitrary data to sideband + - drm/i915: fix error path in intel_setup_gmbus() + - drm/qxl: use kmalloc_array to alloc reloc_info in qxl_process_single_command + - drm/radeon: use post-decrement in error handling + - drm: No-Op redundant calls to drm_vblank_off() (v2) + - drm: Prevent vblank counter bumps > 1 with active vblank clients. (v2) + - drm: Fix drm_vblank_pre/post_modeset regression from Linux 4.4 + - drm: Fix treatment of drm_vblank_offdelay in drm_vblank_on() (v2) + - drm/radeon: Don't hang in radeon_flip_work_func on disabled crtc. (v2) + - drm/radeon/pm: adjust display configuration after powerstate + - make sure that freeing shmem fast symlinks is RCU-delayed + - toshiba_acpi: Fix blank screen at boot if transflective backlight is + supported + - ideapad-laptop: Add Lenovo ideapad Y700-17ISK to no_hw_rfkill dmi list + - ideapad-laptop: Add Lenovo Yoga 700 to no_hw_rfkill dmi list + - uapi: update install list after nvme.h rename + - lib: sw842: select crc32 + - ACPI / video: Add disable_backlight_sysfs_if quirk for the Toshiba Portege + R700 + - ACPI / video: Add disable_backlight_sysfs_if quirk for the Toshiba Satellite + R830 + - ACPI: Revert "ACPI / video: Add Dell Inspiron 5737 to the blacklist" + - ACPI / PCI / hotplug: unlock in error path in acpiphp_enable_slot() + - nfit: fix multi-interface dimm handling, acpi6.1 compatibility + - dmaengine: dw: fix cyclic transfer setup + - dmaengine: dw: fix cyclic transfer callbacks + - dmaengine: at_xdmac: fix resume for cyclic transfers + - dmaengine: dw: disable BLOCK IRQs for non-cyclic xfer + - IB/cm: Fix a recently introduced deadlock + - IB/qib: fix mcast detach when qp not attached + - IB/qib: Support creating qps with GFP_NOIO flag + - IB/mlx5: Expose correct maximum number of CQE capacity + - Thermal: initialize thermal zone device correctly + - Thermal: handle thermal zone device properly during system sleep + - Thermal: do thermal zone update after a cooling device registered + - hwmon: (dell-smm) Blacklist Dell Studio XPS 8000 + - hwmon: (gpio-fan) Remove un-necessary speed_index lookup for thermal hook + - hwmon: (ads1015) Handle negative conversion values correctly + - cpufreq: pxa2xx: fix pxa_cpufreq_change_voltage prototype + - cpufreq: Fix NULL reference crash while accessing policy->governor_data + - seccomp: always propagate NO_NEW_PRIVS on tsync + - libceph: fix ceph_msg_revoke() + - libceph: don't bail early from try_read() when skipping a message + - libceph: use the right footer size when skipping a message + - libceph: don't spam dmesg with stray reply warnings + - sd: Optimal I/O size is in bytes, not sectors + - Staging: speakup: Fix getting port information + - Revert "Staging: panel: usleep_range is preferred over udelay" + - cdc-acm:exclude Samsung phone 04e8:685d + - perf stat: Do not clean event's private stats + - tick/nohz: Set the correct expiry when switching to nohz/lowres mode + - rfkill: fix rfkill_fop_read wait_event usage + - mac80211: Requeue work after scan complete for all VIF types. + - workqueue: handle NUMA_NO_NODE for unbound pool_workqueue lookup + - Revert "workqueue: make sure delayed work run in local cpu" + - ALSA: hda - Apply clock gate workaround to Skylake, too + - ALSA: hda - Fixing background noise on Dell Inspiron 3162 + - target: Fix LUN_RESET active I/O handling for ACK_KREF + - target: Fix LUN_RESET active TMR descriptor handling + - target: Fix TAS handling for multi-session se_node_acls + - target: Fix remote-port TMR ABORT + se_cmd fabric stop + - target: Fix race with SCF_SEND_DELAYED_TAS handling + - spi: atmel: fix gpio chip-select in case of non-DT platform + - libata: fix sff host state machine locking while polling + - ARCv2: STAR 9000950267: Handle return from intr to Delay Slot #2 + - ARCv2: SMP: Emulate IPI to self using software triggered interrupt + - PCI/AER: Flush workqueue on device remove to avoid use-after-free + - cpuset: make mm migration asynchronous + - cgroup: make sure a parent css isn't offlined before its children + - writeback: keep superblock pinned during cgroup writeback association + switches + - phy: core: fix wrong err handle for phy_power_on + - i2c: i801: Adding Intel Lewisburg support for iTCO + - bio: return EINTR if copying to user space got interrupted + - block: fix use-after-free in dio_bio_complete + - nfs: fix nfs_size_to_loff_t + - NFSv4: Fix a dentry leak on alias use + - of/irq: Fix msi-map calculation for nonzero rid-base + - KVM: async_pf: do not warn on page allocation failures + - KVM: arm/arm64: vgic: Ensure bitmaps are long enough + - KVM: x86: fix missed hardware breakpoints + - KVM: x86: MMU: fix ubsan index-out-of-range warning + - powerpc/eeh: Fix partial hotplug criterion + - tracing: Fix showing function event in available_events + - sunrpc/cache: fix off-by-one in qword_get() + - kernel/resource.c: fix muxed resource handling in __request_region() + - do_last(): don't let a bogus return value from ->open() et.al. to confuse us + - ARM: OMAP2+: Fix onenand initialization to avoid filesystem corruption + - ARM: at91/dt: fix typo in sama5d2 pinmux descriptions + - xen/arm: correctly handle DMA mapping of compound pages + - xen/scsiback: correct frontend counting + - xen/pciback: Check PF instead of VF for PCI_COMMAND_MEMORY + - xen/pciback: Save the number of MSI-X entries to be copied later. + - xen/pcifront: Fix mysterious crashes when NUMA locality information was + extracted. + - should_follow_link(): validate ->d_seq after having decided to follow + - do_last(): ELOOP failure exit should be done after leaving RCU mode + - hpfs: don't truncate the file when delete fails + - x86/irq: Call chip->irq_set_affinity in proper context + - x86/irq: Fix a race in x86_vector_free_irqs() + - x86/irq: Validate that irq descriptor is still active + - x86/irq: Do not use apic_chip_data.old_domain as temporary buffer + - x86/irq: Reorganize the return path in assign_irq_vector + - x86/irq: Reorganize the search in assign_irq_vector + - x86/irq: Check vector allocation early + - x86/irq: Copy vectormask instead of an AND operation + - x86/irq: Get rid of code duplication + - x86/irq: Remove offline cpus from vector cleanup + - x86/irq: Clear move_in_progress before sending cleanup IPI + - x86/irq: Remove the cpumask allocation from send_cleanup_vector() + - x86/irq: Remove outgoing CPU from vector cleanup mask + - x86/irq: Call irq_force_move_complete with irq descriptor + - x86/irq: Plug vector cleanup race + - IB/cma: Fix RDMA port validation for iWarp + - iwlwifi: dvm: fix WoWLAN + - iwlwifi: pcie: properly configure the debug buffer size for 8000 + - iwlwifi: update and fix 7265 series PCI IDs + - iwlwifi: mvm: don't allow sched scans without matches to be started + - Revert "UBUNTU: SAUCE: bcache: prevent crash on changing writeback_running" + - bcache: prevent crash on changing writeback_running + - Linux 4.4.4 + + * mlx4_en didn't choose time-stamping shift value according to HW frequency + (LP: #1552627) + - net/mlx4_en: Choose time-stamping shift value according to HW frequency + + * [Ubuntu 16.04] Help to flush kernel panics to console (LP: #1552332) + - target/transport: add flag to indicate CPU Affinity is observed + - powerpc/powernv: Add a kmsg_dumper that flushes console output on panic + - powerpc/powernv: Fix OPAL_CONSOLE_FLUSH prototype and usages + + * [Ubuntu 16.04] Update qla2xxx driver for POWER (QLogic) (LP: #1541456) + - qla2xxx: Fix warning reported by static checker + - qla2xxx: Fix TMR ABORT interaction issue between qla2xxx and TCM + - qla2xxx: Fix stale pointer access. + - qla2xxx: Use ATIO type to send correct tmr response + - qla2xxx: use TARGET_SCF_USE_CPUID flag to indiate CPU Affinity + + * [s390x] zfcp.ko missing from scsi-modules udeb (LP: #1552314) + - [Config] Add s390x zfcp to scsi-modules udeb + + -- Tim Gardner Wed, 02 Mar 2016 08:08:16 -0700 + +linux (4.4.0-10.25) xenial; urgency=low + + [ Tim Gardner ] + + * Release Tracking Bug + - LP: #1552247 + + * linux: 4.4.0-9.X fails yama ptrace restrictions tests (LP: #1551894) + - security: let security modules use PTRACE_MODE_* with bitmasks + + * [wily][regression] systemtap script compilation broken by new kernels (LP: #1545330) + - SAUCE: (noup) locking/qspinlock: Move __ARCH_SPIN_LOCK_UNLOCKED to qspinlock_types.h + + * [Feature]SD/SDIO/eMMC support for Broxton-P (LP: #1520454) + - mmc: sdhci: 64-bit DMA actually has 4-byte alignment + - mmc: sdhci: Fix DMA descriptor with zero data length + + * Miscellaneous Ubuntu changes + - SAUCE: (noup) cgroup: fix and restructure error handling in copy_cgroup_ns() + + -- Tim Gardner Mon, 29 Feb 2016 13:04:14 -0700 + +linux (4.4.0-9.24) xenial; urgency=low + + [ Tim Gardner ] + + * Release Tracking Bug + - LP: #1551319 + + * AppArmor logs denial for when the device path is ENOENT (LP: #1482943) + - SAUCE: apparmor: fix log of apparmor audit message when kern_path() fails + + * BUG: unable to handle kernel NULL pointer dereference (aa_label_merge) (LP: + #1448912) + - SAUCE: apparmor: Fix: insert race between label_update and label_merge + - SAUCE: apparmor: Fix: ensure aa_get_newest will trip debugging if the + replacedby is not setup + - SAUCE: apparmor: Fix: label merge handling of marking unconfined and stale + - SAUCE: apparmor: Fix: refcount race between locating in labelset and get + - SAUCE: apparmor: Fix: ensure new labels resulting from merge have a + replacedby + - SAUCE: apparmor: Fix: label_vec_merge insertion + - SAUCE: apparmor: Fix: deadlock in aa_put_label() call chain + - SAUCE: apparmor: Fix: add required locking of __aa_update_replacedby on + merge path + - SAUCE: apparmor: Fix: convert replacedby update to be protected by the + labelset lock + - SAUCE: apparmor: Fix: update replacedby allocation to take a gfp parameter + + * apparmor kernel BUG kills firefox (LP: #1430546) + - SAUCE: apparmor: Disallow update of cred when then subjective != the + objective cred + - SAUCE: apparmor: rework retrieval of the current label in the profile update + case + + * sleep from invalid context in aa_move_mount (LP: #1539349) + - SAUCE: apparmor: fix sleep from invalid context + + * s390x: correct restore of high gprs on signal return (LP: #1550468) + - s390/compat: correct restore of high gprs on signal return + + * missing SMAP support (LP: #1550517) + - x86/entry/compat: Add missing CLAC to entry_INT80_32 + + * Floating-point exception handler receives empty Data-Exception Code in + Floating Point Control register (LP: #1548414) + - s390/fpu: signals vs. floating point control register + + * kvm fails to boot GNU Hurd kernels with 4.4 Xenial kernel (LP: #1550596) + - KVM: x86: fix conversion of addresses to linear in 32-bit protected mode + + * Surelock GA2 SP1: capiredp01: cxl_init_adapter fails for CAPI devices + 0000:01:00.0 and 0005:01:00.0 after upgrading to 840.10 Platform firmware + build fips840/b1208b_1604.840 (LP: #1532914) + - cxl: Fix PSL timebase synchronization detection + + * [Feature]EDAC support for Knights Landing (LP: #1519631) + - EDAC, sb_edac: Set fixed DIMM width on Xeon Knights Landing + + * Various failures of kernel_security suite on Xenial kernel on s390x arch + (LP: #1531327) + - [config] s390x -- CONFIG_DEFAULT_MMAP_MIN_ADDR=65536 + + * Unable to install VirtualBox Guest Service in 15.04 (LP: #1434579) + - [Config] Provides: virtualbox-guest-modules when appropriate + + * linux is missing provides for virtualbox-guest-modules [i386 amd64 x32] (LP: + #1507588) + - [Config] Provides: virtualbox-guest-modules when appropriate + + * Backport more recent driver for SKL, KBL and BXT graphics (LP: #1540390) + - SAUCE: i915_bpo: Provide a backport driver for SKL, KBL & BXT graphics + - SAUCE: i915_bpo: Update intel_ips.h file location + - SAUCE: i915_bpo: Rename the backport driver to i915_bpo + - SAUCE: i915_bpo: Add i915_bpo_*() calls for ubuntu/i915 + - drm/i915: remove an extra level of indirection in PCI ID list + - drm/i915/kbl: Add Kabylake PCI ID + - drm/i915/kbl: Add Kabylake GT4 PCI ID + - mm: Export nr_swap_pages + - async: export current_is_async() + - drm: fix potential dangling else problems in for_each_ macros + - dp/mst: add SDP stream support + - drm: Implement drm_modeset_lock_all_ctx() + - drm: Add "prefix" parameter to drm_rect_debug_print() + - drm/i915: Set connector_state->connector using the helper. + - drm/atomic: add connector mask to drm_crtc_state. + - drm/i915: Report context GTT size + - drm/i915: Add get_eld audio component + - SAUCE: Backport I915_PARAM_HAS_EXEC_SOFTPIN and EXEC_OBJECT_PINNED + - SAUCE: i915_bpo: Revert passing plane/encoder name + - SAUCE: sound/hda: Load i915_bpo from the hda driver on SKL/KBL/BXT + - SAUCE: i915_bpo: Support only SKL, KBL and BXT with the backport driver + - drm/i915/bxt: update list of PCIIDs + - drm/i915/skl: Add missing SKL ids + - SAUCE: i915_bpo: Revert "drm/i915: Defer probe if gmux is present but its + driver isn't" + - SAUCE: uapi/drm/i915: Backport I915_EXEC_BSD_MASK + - drm/atomic: Do not unset crtc when an encoder is stolen + - drm/i915: Update connector_mask during readout, v2. + - drm/atomic: Add encoder_mask to crtc_state, v3. + - SAUCE: drm/core: Add drm_encoder_index. + - SAUCE: i915_bpo: Revert "drm/i915: Switch DDC when reading the EDID" + - i915_bpo: [Config] Enable CONFIG_DRM_I915_BPO=m + + * arm64: guest hangs when ntpd is running (LP: #1549494) + - hrtimer: Add support for CLOCK_MONOTONIC_RAW + - hrtimer: Catch illegal clockids + - KVM: arm/arm64: timer: Switch to CLOCK_MONOTONIC_RAW + + * Miscellaneous Ubuntu changes + - [Debian] git-ubuntu-log -- wrap long bug and commit titles + - [Config] CONFIG_ARM_SMMU=y on arm64 + - rebase to v4.4.3 + - [Debian] git-ubuntu-log -- ensure we get the last commit + - [Config] fix up spelling of probably again + - [Debian] perf -- build in the context of the full generated local headers + - SAUCE: tools: lib/bpf -- add generated headers to search path + - SAUCE: proc: Always set super block owner to init_user_ns + - SAUCE: fix-up: kern_mount fail path should not be doing put_buffers() + - SAUCE: apparmor: Fix: oops do to invalid null ptr deref in label print fns + - SAUCE: apparmor: debug: POISON label and replaceby pointer on free + - SAUCE: apparmor: add underscores to indicate aa_label_next_not_in_set() use + needs locking + - SAUCE: apparmor: Fix: refcount leak in aa_label_merge + - SAUCE: apparmor: ensure that repacedby sharing is done correctly + - SAUCE: apparmor Fix: refcount bug in pivotroot mediation + - SAUCE: apparmor: Fix: now that insert can force replacement use it instead + of remove_and_insert + - SAUCE: apparmor: Fix: refcount bug when inserting label update that + transitions ns + - SAUCE: apparmor: Fix: break circular refcount for label that is directly + freed. + - SAUCE: apparmor: Don't remove label on rcu callback if the label has already + been removed + - SAUCE: apparmor: Fix: query label file permission + - SAUCE: apparmor: fix: ref count leak when profile sha1 hash is read + - SAUCE: fixup: cleanup return handling of labels + - SAUCE: fix: replacedby forwarding is not being properly update when ns is + destroyed + - SAUCE: fixup: make __share_replacedby private to get rid of build warning + - SAUCE: fixup: 20/23 locking issue around in __label_update + - SAUCE: fixup: get rid of unused var build warning + - SAUCE: fixup: cast poison values to remove warnings + - SAUCE: apparmor: fix refcount race when finding a child profile + - SAUCE: fixup: warning about aa_label_vec_find_or_create not being static + - SAUCE: fix: audit "no_new_privs" case for exec failure + - SAUCE: Fixup: __label_update() still doesn't handle some cases correctly. + - SAUCE: Move replacedby allocation into label_alloc + - [Debian] supply zfs dkms Provides: based on do_zfs + - [Config] supply zfs dkms Provides: based on do_zfs + - [Config] drop linux-image-3.0 provides + + * Miscellaneous upstream changes + - x86/mpx: Fix off-by-one comparison with nr_registers + + [ Upstream Kernel Changes ] + + * rebase to v4.4.3 + + -- Tim Gardner Thu, 25 Feb 2016 19:47:55 -0700 + +linux (4.4.0-8.23) xenial; urgency=low + + * cgroup namespace mounts broken in containers (LP: #1549398) + - SAUCE: kernfs: Always set super block owner to init_user_ns + + * 4.4.0-7.22 no longer boots on arm64 (LP: #1547718) + - arm64: mm: avoid calling apply_to_page_range on empty range + - UBUNTU SAUCE: arm: mm: avoid calling apply_to_page_range on empty range + + * kernel install failed /bin/cp: cannot stat ‘/boot/initrd.img-4.3.0-7-generic’: No such file or directory (LP: #1536810) + - [Config] postinst -- handle recreating symlinks when a real file is present + + * insecure overlayfs xattrs handling in copy_up (LP: #1534961) + - SAUCE: cred: Add clone_cred() interface + - SAUCE: overlayfs: Use mounter's credentials instead of selectively raising caps + - SAUCE: overlayfs: Skip permission checking for trusted.overlayfs.* xattrs + - SAUCE: overlayfs: Be more careful about copying up sxid files + - SAUCE: overlayfs: Propogate nosuid from lower and upper mounts + + * overlayfs over fuse should refuse copy_up of files if uid/gid not mapped (LP: #1535150) + - SAUCE: cred: Add clone_cred() interface + - SAUCE: overlayfs: Use mounter's credentials instead of selectively raising caps + - SAUCE: overlayfs: Skip permission checking for trusted.overlayfs.* xattrs + - SAUCE: overlayfs: Be more careful about copying up sxid files + - SAUCE: overlayfs: Propogate nosuid from lower and upper mounts + + * overlay: mkdir fails if directory exists in lowerdir in a user namespace (LP: #1531747) + - SAUCE: cred: Add clone_cred() interface + - SAUCE: overlayfs: Use mounter's credentials instead of selectively raising caps + - SAUCE: overlayfs: Skip permission checking for trusted.overlayfs.* xattrs + + * Update Intel ethernet drivers to Fortville SW5 (LP: #1547674) + - net: bulk free infrastructure for NAPI context, use napi_consume_skb + - net: Add eth_platform_get_mac_address() helper. + - i40e: Add mac_filter_element at the end of the list instead of HEAD + - i40e/i40evf: Fix RSS rx-flow-hash configuration through ethtool + - i40e: Replace X722 mac check in ethtool get_settings + - i40evf: allow channel bonding of VFs + - i40e: define function capabilities in only one place + - i40evf: null out ring pointers on free + - i40e: Cleanup the code with respect to restarting autoneg + - i40e: update features with right offload + - i40e: bump version to 1.4.10 + - i40e: add new device IDs for X722 + - i40e: Extend ethtool RSS hooks for X722 + - i40e/i40evf: Fix for UDP/TCP RSS for X722 + - i40evf: add new write-back mode + - i40e/i40evf: Use private workqueue + - i40e: add new proxy-wol bit for X722 + - i40e: Limit DCB FW version checks to X710/XL710 devices + - i40e: AQ Add Run PHY Activity struct + - i40e: AQ Geneve cloud tunnel type + - i40e: AQ Add external power class to get link status + - i40e: add 100Mb ethtool reporting + - ixgbe: bulk free SKBs during TX completion cleanup cycle + - igb: Remove unnecessary flag setting in igb_set_flag_queue_pairs() + - igb: Unpair the queues when changing the number of queues + - igb/igbvf: don't give up + - igb: clean up code for setting MAC address + - igb: Refactor VFTA configuration + - igb: Allow asymmetric configuration of MTU versus Rx frame size + - igb: Do not factor VLANs into RLPML calculation + - igb: Always enable VLAN 0 even if 8021q is not loaded + - igb: Merge VLVF configuration into igb_vfta_set + - igb: Clean-up configuration of VF port VLANs + - igb: Add support for VLAN promiscuous with SR-IOV and NTUPLE + - igb: Drop unnecessary checks in transmit path + - igb: Enable use of "bridge fdb add" to set unicast table entries + - igb: Add workaround for VLAN tag stripping on 82576 + - i40e: AQ Shared resource flags + - i40e: AQ Add set_switch_config + - i40e: AQ Add VXLAN-GPE tunnel type + - i40e: AQ thermal sensor control struct + - i40e: Bump AQ minor version to 1.5 for new FW features + - i40e: Store lan_vsi_idx and lan_vsi_id in the right size + - i40e: fix write-back-on-itr to work with legacy itr + - i40e: add counter for arq overflows + - i40e: add 20G speed for Tx bandwidth calculations + - i40e: refactor DCB function + - i40e: add a little more to an NVM update debug message + - i40evf: enable bus master after reset + - i40e: add netdev info to VSI dump + - i40e: remove VF device IDs from PF + - i40e: trivial: remove unnecessary local var + - i40e/i40evf: Bump i40e to 1.4.11 and i40evf to 1.4.7 + - net: ixgbe: add minimal parser details for ixgbe + - i40e: trivial: drop duplicate definition + - i40e: trivial: fix missing space + - i40e: fix bug in dma sync + - i40e: do TSO only if CHECKSUM_PARTIAL is set + - i40e: allocate memory safer + - i40e: fix: do not sleep in netdev_ops + - i40e: APIs to Add/remove port mirroring rules + - i40e: negate PHY int mask bits + - i40e: drop unused function + - i40e: count allocation errors + - i40e: avoid large memcpy by assigning struct + - i40e/i40evf: bump version to 1.4.12/1.4.8 + - i40e: Enable Geneve offload for FW API ver > 1.4 for XL710/X710 devices + - i40e: add priv flag for automatic rule eviction + - i40e: use eth_platform_get_mac_address() + - i40e: move sync_vsi_filters up in service_task + - i40e: Make the DCB firmware checks for X710/XL710 only + - i40e: set shared bit for multicast filters + - i40e: add VEB stat control and remove L2 cloud filter + - i40e: use new add_veb calling with VEB stats control + - i40e: Refactor force_wb and WB_ON_ITR functionality code + - i40evf: Change vf driver string to reflect all products i40evf supports + - i40e/i40evf: don't lose interrupts + - i40e/i40evf: try again after failure + - i40e: dump descriptor indexes in hex + - i40e/i40evf: use __GFP_NOWARN + - i40e/i40evf: use pages correctly in Rx + - i40e/i40evf: use logical operators, not bitwise + - i40e: properly show packet split status in debugfs + - i40e/i40evf: Bump version + - ixgbe: use u32 instead of __u32 in model header + - ixgbe: fix dates on header of ixgbe_model.h + - i40e: get rid of magic number + - i40e: drop unused debugfs file "dump" + - i40evf: support packet split receive + - i40e: trivial: cleanup use of pf->hw + - i40e: Add a SW workaround for lost interrupts + - i40e: Fix PROMISC mode for Multi-function per port (MFP) devices + - i40e: Removal of code which relies on BASE VEB SEID + - i40e/i40evf: avoid atomics + - i40e: Do not disable queues in the Legacy/MSI Interrupt handler + - i40e: expand comment + - i40e: better error reporting for nvmupdate + - i40evf: set adapter state on reset failure + - i40e: clean event descriptor before use + - i40e: When in promisc mode apply promisc mode to Tx Traffic as well + - i40e/i40evf: Bump i40e to 1.4.15 and i40evf to 1.4.11. + - i40e/i40evf: Drop outer checksum offload that was not requested + - i40e/i40evf: Use u64 values instead of casting them in TSO function + - i40e/i40evf: Factor out L4 header and checksum from L3 bits in TSO path + - i40e/i40evf: Consolidate all header changes into TSO function + - i40e/i40evf: Replace header pointers with unions of pointers in Tx checksum path + - i40e/i40evf: Add support for IPv4 encapsulated in IPv6 + - i40e/i40evf: Handle IPv6 extension headers in checksum offload + - i40e/i40evf: Do not write to descriptor unless we complete + - i40e/i40evf: Add exception handling for Tx checksum + - i40e/i40evf: Clean-up Rx packet checksum handling + - i40e/i40evf: Enable support for SKB_GSO_UDP_TUNNEL_CSUM + - i40e: Fix ATR in relation to tunnels + - i40e: Do not drop support for IPv6 VXLAN or GENEVE tunnels + - i40e: Update feature flags to reflect newly enabled features + - i40evf: Update feature flags to reflect newly enabled features + - i40e: Add support for ATR w/ IPv6 extension headers + - i40e/i40evf: Break up xmit_descriptor_count from maybe_stop_tx + - i40e/i40evf: Rewrite logic for 8 descriptor per packet check + - i40e/i40evf: Move Tx checksum closer to TSO + - i40e: Add functions to blink led on 10GBaseT PHY + - i40e: Fix led blink capability for 10GBaseT PHY + - i40e: Increase timeout when checking GLGEN_RSTAT_DEVSTATE bit + - i40e: Do not wait for Rx queue disable in DCB reconfig + - i40e: Fix for unexpected messaging + - i40e: Expose some registers to program parser, FD and RSS logic + - i40e: add check for null VSI + - i40e: add adminq commands for Rx CTL registers + - i40e: implement and use Rx CTL helper functions + - i40e: Use the new rx ctl register helpers. Don't use AQ calls from clear_hw. + - i40e: suspend scheduling during driver unload + - i40e: let go of the past + - i40e/i40evf: Bump i40e to 1.4.25 and i40evf to 1.4.15 + + * MPT3SAS Driver update for next kernel release (LP: #1512221) + - mpt3sas: A correction in unmap_resources + - mpt3sas: Added support for high port count HBA variants. + - mpt3sas: Used IEEE SGL instead of MPI SGL while framing a SMP Passthrough request message. + - mpt3sas: Fix static analyzer(coverity) tool identified defects + - mpt3sas: Never block the Enclosure device + - mpt3sas: Make use of additional HighPriority credit message frames for sending SCSI IO's + - mpt3sas: Added smp_affinity_enable module parameter. + - mpt3sas: Add support for configurable Chain Frame Size + - mpt3sas: Updated MPI Header to 2.00.42 + - mpt3sas: Fix for Asynchronous completion of timedout IO and task abort of timedout IO. + - mpt3sas: Updating mpt3sas driver version to 12.100.00.00 + - mpt3sas: Remove cpumask_clear for zalloc_cpumask_var and don't free free_cpu_mask_var before reply_q + + * /sys/class/scsi_host/hostN/partition_number and .../mad_version showing up BE on LE Ubuntu. (ibmvscsi) (LP: #1547153) + - ibmvscsi: Add endian conversions to sysfs attribute show functions + + * Miscellaneous Ubuntu changes + - [Packaging] git-ubuntu-log -- output should be utf-8 + - [Packaging] git-ubuntu-log -- handle invalid or private bugs + + -- Andy Whitcroft Wed, 24 Feb 2016 20:34:49 +0000 + +linux (4.4.0-7.22) xenial; urgency=low + + [ Tim Gardner ] + + * Release Tracking Bug + - LP: #1547205 + + * need arm64 acpi parking protocol support in xenial (LP: #1547047) + - [Config] Enabled ARM64_ACPI_PARKING_PROTOCOL + - arm64: kernel: implement ACPI parking protocol + + * Please pull cgroup namespaces (LP: #1546775) + - SAUCE: (noup) kernfs: Add API to generate relative kernfs path + - SAUCE: (noup) sched: new clone flag CLONE_NEWCGROUP for cgroup namespace + - SAUCE: (noup) cgroup: introduce cgroup namespaces + - SAUCE: (noup) cgroup: cgroup namespace setns support + - SAUCE: (noup) kernfs: define kernfs_node_dentry + - SAUCE: (noup) cgroup: mount cgroupns-root when inside non-init cgroupns + - SAUCE: (noup) Add FS_USERNS_FLAG to cgroup fs + - SAUCE: (noup) cgroup: Add documentation for cgroup namespaces + + * [Feature]Pulse-Width Modulation enabling on Broxton-P (LP: #1520436) + - [Config] CONFIG_PWM_OMAP_DMTIMER=m + - pwm: lpss: Remove ->free() callback + - pwm: bcm2835: Calculate scaler in ->config() + - pwm: bcm2835: Prevent division by zero + - pwm: bcm2835: Fix email address specification + - pwm: lpss: Update PWM setting for Broxton + - pwm: lpss: Select core part automatically + - pwm: lpss: Rework the sequence of programming PWM_SW_UPDATE + - pwm: fsl-ftm: Fix clock enable/disable when using PM + - pwm: lpc32xx: correct number of PWM channels from 2 to 1 + - pwm: lpc32xx: make device usable with common clock framework + - pwm: lpc32xx: fix and simplify duty cycle and period calculations + - pwm: lpc32xx: return ERANGE, if requested period is not supported + - pwm: rcar: Improve accuracy of frequency division setting + - pwm: Add PWM driver for OMAP using dual-mode timers + - pwm: add HAS_IOMEM dependency to PWM_FSL_FTM + - pwm: omap-dmtimer: Potential NULL dereference on error + - pwm: Mark all devices as "might sleep" + + * [Hyper-V] Netmask value is not parsed by hv_set_ifconfig - IP injection (LP: #1540586) + - [Debian] hv: hv_set_ifconfig -- switch to approved indentation + - [Debian] hv: hv_set_ifconfig -- fix numerous parameter handling issues + + * Update megaraid driver to MR6.10 (LP: #1544679) + - megaraid_sas: Do not allow PCI access during OCR + - megaraid_sas: MFI IO timeout handling + - megaraid_sas: Syncing request flags macro names with firmware + - megaraid_sas: Task management support + - megaraid_sas: Update device queue depth based on interface type + - megaraid_sas: Fastpath region lock bypass + - megaraid_sas: Reply Descriptor Post Queue (RDPQ) support + - megaraid_sas: Code optimization build_and_issue_cmd return-type + - megaraid_sas: Dual queue depth support + - megaraid_sas: IO throttling support + - megaraid_sas: Make adprecovery variable atomic + - megaraid_sas: MFI adapter OCR changes + - megaraid_sas: Introduce module parameter for SCSI command timeout + - megaraid_sas: SPERC OCR changes + - megaraid_sas: driver version upgrade + - megaraid: fix null pointer check in megasas_detach_one(). + - megaraid_sas: Fix for IO failing post OCR in SRIOV environment + - megaraid_sas: Fix SMAP issue + - megaraid_sas: Add an i/o barrier + + * Surelock-GA2:kernel panic @ cxl_configure_adapter+0x418/0x8b0 (LP: #1546145) + - powerpc/powernv: Fix stale PE primary bus + + * In A Single Power VM LPAR : Network Configuration Fails in Ubuntu16.04 while installation (LP: #1544321) + - [Config] Update bnx2x d-i firmware to 7.12.30 + + * Miscellaneous Ubuntu changes + - rebase to v4.4.2 + + * Miscellaneous upstream changes + - openvswitch: allow management from inside user namespaces + - net: thunderx: nicvf_queues: nivc_*_intr: remove duplication + - net, thunderx: Remove unnecessary rcv buffer start address management + - net: thunderx: HW TSO support for pass-2 hardware + - net: thunderx: Enable CQE count threshold interrupt + - net: cavium: liquidio: use helpers ns_to_timespec64() + - irqchip/gic-v3: Make sure read from ICC_IAR1_EL1 is visible on redestributor + - arm64: KVM: Configure TCR_EL2.PS at runtime + - arm64: prefetch: don't provide spin_lock_prefetch with LSE + - arm64: prefetch: add alternative pattern for CPUs without a prefetcher + - arm64: lib: improve copy_page to deal with 128 bytes at a time + - arm64: lib: patch in prfm for copy_page if requested + - arm64: prefetch: add missing #include for spin_lock_prefetch + - net, thunderx: Add TX timeout and RX buffer alloc failure stats. + - net: thunderx: Use napi_schedule_irqoff() + - net: thunderx: Assign affinity hints to vf's interrupts + - net: thunderx: bgx: Use standard firmware node infrastructure. + - net: thunderx: bgx: Add log message when setting mac address + - net: thunderx: Alloc higher order pages when pagesize is small + - net: cavium: liquidio: Return correct error code + - net: cavium: liquidio: fix check for in progress flag + - livepatch: add old_sympos as disambiguator field to klp_func + - livepatch: add sympos as disambiguator field to klp_reloc + - livepatch: function,sympos scheme in livepatch sysfs directory + - module: Use the same logic for setting and unsetting RO/NX + - gcov: use within_module() helper. + - module: use a structure to encapsulate layout. + - module: clean up RO/NX handling. + - module: keep percpu symbols in module's symtab + - livepatch: Cleanup module page permission changes + + [ Upstream Kernel Changes ] + + * rebase to v4.4.2 + + -- Tim Gardner Tue, 16 Feb 2016 14:24:45 -0700 + +linux (4.4.0-6.21) xenial; urgency=low + + [ Tim Gardner ] + + * Release Tracking Bug + - LP: #1546283 + + * Naples/Zen, NTB Driver (LP: #1542071) + - [Config] CONFIG_NTB_AMD=m + - NTB: Add support for AMD PCI-Express Non-Transparent Bridge + + * [Hyper-V] kernel panic occurs when installing Ubuntu Server x32 (LP: #1495983) + - SAUCE: storvsc: use small sg_tablesize on x86 + + * Enable arm64 emulation of removed ARMv7 instructions (LP: #1545542) + - [Config] CONFIG_ARMV8_DEPRECATED=y + + * Surelock-GA2:kernel panic/ exception @ pcibios_set_pcie_reset_state+0x118/0x280 + cxl_reset+0x5c/0xc0 (LP: #1545037) + - powerpc/eeh: Fix stale cached primary bus + + * Miscellaneous Ubuntu changes + - SAUCE: fs: Add user namesapace member to struct super_block + - SAUCE: fs: Limit file caps to the user namespace of the super block + - SAUCE: Smack: Add support for unprivileged mounts from user namespaces + - SAUCE: block_dev: Support checking inode permissions in lookup_bdev() + - SAUCE: block_dev: Check permissions towards block device inode when mounting + - SAUCE: fs: Treat foreign mounts as nosuid + - SAUCE: selinux: Add support for unprivileged mounts from user namespaces + - SAUCE: userns: Replace in_userns with current_in_userns + - SAUCE: Smack: Handle labels consistently in untrusted mounts + - SAUCE: fs: Check for invalid i_uid in may_follow_link() + - SAUCE: cred: Reject inodes with invalid ids in set_create_file_as() + - SAUCE: fs: Refuse uid/gid changes which don't map into s_user_ns + - SAUCE: fs: Update posix_acl support to handle user namespace mounts + - SAUCE: fs: Ensure the mounter of a filesystem is privileged towards its inodes + - SAUCE: fs: Don't remove suid for CAP_FSETID in s_user_ns + - SAUCE: fs: Allow superblock owner to access do_remount_sb() + - SAUCE: capabilities: Allow privileged user in s_user_ns to set security.* xattrs + - SAUCE: fuse: Add support for pid namespaces + - SAUCE: fuse: Support fuse filesystems outside of init_user_ns + - SAUCE: fuse: Restrict allow_other to the superblock's namespace or a descendant + - SAUCE: fuse: Allow user namespace mounts + - SAUCE: mtd: Check permissions towards mtd block device inode when mounting + - SAUCE: fs: Update i_[ug]id_(read|write) to translate relative to s_user_ns + - SAUCE: quota: Convert ids relative to s_user_ns + - SAUCE: evm: Translate user/group ids relative to s_user_ns when computing HMAC + - SAUCE: fs: Allow CAP_SYS_ADMIN in s_user_ns to freeze and thaw filesystems + - SAUCE: quota: Treat superblock owner as privilged + - SAUCE: ima/evm: Allow root in s_user_ns to set xattrs + - SAUCE: block_dev: Forbid unprivileged mounting when device is opened for writing + - SAUCE: ext4: Add support for unprivileged mounts from user namespaces + - SAUCE: ext4: Add module parameter to enable user namespace mounts + - SAUCE: fuse: Add module parameter to enable user namespace mounts + + * Miscellaneous upstream changes + - megaraid: Fix possible NULL pointer deference in mraid_mm_ioctl + - libahci: Implement the capability to override the generic ahci interrupt handler. + - ata: Remove the AHCI_HFLAG_EDGE_IRQ support from libahci. + - ahci_xgene: Implement the workaround to fix the missing of the edge interrupt for the HOST_IRQ_STAT. + + -- Tim Gardner Fri, 12 Feb 2016 09:49:05 -0700 + +linux (4.4.0-5.20) xenial; urgency=low + + [ Tim Gardner ] + + * Release Tracking Bug + - LP: #1544637 + + * s390/cio: update measurement characteristics (LP: #1541534) + - s390/cio: fix measurement characteristics memleak + - s390/cio: ensure consistent measurement state + - s390/cio: update measurement characteristics + + * qeth: layer2 reports unknown state to network tools. (LP: #1541907) + - qeth: initialize net_device with carrier off + + * Collateral damage due to kernel configuration change enabling CONFIG_ZONE_DEVICE (Kernel 4.4 amd64) (LP: #1534647) + - [Config] CONFIG_ZONE_DMA=y + - mm: CONFIG_NR_ZONES_EXTENDED + + * perf enahancements for ppc64 (LP: #1521678) + - perf kvm/{x86,s390}: Remove dependency on uapi/kvm_perf.h + - perf kvm/{x86,s390}: Remove const from kvm_events_tp + - perf kvm/powerpc: Port perf kvm stat to powerpc + - perf kvm/powerpc: Add support for HCALL reasons + + * Soft lockup with "block nbdX: Attempted send on closed socket" spam (LP: #1505564) + - SAUCE: nbd: ratelimit error msgs after socket close + + * sleep from invalid context in aa_move_mount (LP: #1539349) + - SAUCE: apparmor: fix sleep from invalid context + + * Introducing ConnectX-4 Ethernet SRIOV (LP: #1540435) + - net/mlx5_core: Modify enable/disable hca functions + - net/mlx5_core: Add base sriov support + - net/mlx5: Add HW capabilities and structs for SR-IOV E-Switch + - net/mlx5: Update access functions to Query/Modify vport MAC address + - net/mlx5: Introduce access functions to modify/query vport mac lists + - net/mlx5: Introduce access functions to modify/query vport state + - net/mlx5: Introduce access functions to modify/query vport promisc mode + - net/mlx5: Introduce access functions to modify/query vport vlans + - net/mlx5e: Write UC/MC list and promisc mode into vport context + - net/mlx5e: Write vlan list into vport context + - net/mlx5: Introducing E-Switch and l2 table + - net/mlx5: E-Switch, Introduce FDB hardware capabilities + - net/mlx5: E-Switch, Add SR-IOV (FDB) support + - net/mlx5: E-Switch, Introduce Vport administration functions + - net/mlx5: E-Switch, Introduce HCA cap and E-Switch vport context + - net/mlx5: E-Switch, Introduce set vport vlan (VST mode) + - net/mlx5: E-Switch, Introduce get vf statistics + - net/mlx5e: Add support for SR-IOV ndos + - net/mlx5: Fix query E-Switch capabilities + - net/mlx5e: Assign random MAC address if needed + + * make wacom_w8001 work well in xenial (LP: #1542771) + - Input: wacom_w8001 - use __set_bit for evbits + - Input: wacom_w8001 - set BTN_TOOL_DOUBLETAP if we have 2fg support + - Input: wacom_w8001 - handle touch error case correctly + - Input: wacom_w8001 - split pen and touch initialization up + - Input: wacom_w8001 - split the touch and pen devices into two devices + - Input: wacom_w8001 - drop use of ABS_MT_TOOL_TYPE + + * virtualbox: update to 5.0.14-dfsg-2 (LP: #1542728) + - ubuntu: vbox -- update to 5.0.14-dfsg-2 + + * Miscellaneous Ubuntu changes + - [Packaging] git-ubuntu-log -- fix empty section formatting + - SAUCE: (noup) Update spl to 0.6.5.4-0ubuntu2, zfs to 0.6.5.4-0ubuntu2 + + -- Andy Whitcroft Sat, 06 Feb 2016 22:32:10 +0000 + +linux (4.4.0-4.19) xenial; urgency=low + + * update ZFS and SPL to 0.6.5.4 (LP: #1542296) + - [Config] update spl/zfs version + - SAUCE: (noup) Update spl to 0.6.5.4-0ubuntu2, zfs to 0.6.5.4-0ubuntu1 + - [Config] reconstruct -- drop links for zfs userspace components + - [Config] reconstruct -- drop links for zfs userspace components -- restore spec links + + * recvmsg() fails SCM_CREDENTIALS request with EOPNOTSUPP. (LP: #1540731) + - Revert "af_unix: Revert 'lock_interruptible' in stream receive code" + + * lxc: ADT exercise test failing with linux-4.4.0-3.17 (LP: #1542049) + - Revert "UBUNTU: SAUCE: apparmor: fix sleep from invalid context" + + * WARNING: at /build/linux-lts-wily-W0lTWH/linux-lts-wily-4.2.0/net/core/skbuff.c:4174 (Travis IB) (LP: #1541326) + - SAUCE: IB/IPoIB: Do not set skb truesize since using one linearskb + + * backport Microsoft Precision Touchpad palm rejection patch (LP: #1541671) + - HID: multitouch: enable palm rejection if device implements confidence usage + + * [Ubuntu 16.04] Update qla2xxx driver for POWER (QLogic) (LP: #1541456) + - qla2xxx: Remove unavailable firmware files + - qla2xxx: Enable Extended Logins support + - qla2xxx: Enable Exchange offload support. + - qla2xxx: Enable Target counters in DebugFS. + - qla2xxx: Add FW resource count in DebugFS. + - qla2xxx: Added interface to send explicit LOGO. + - qla2xxx: Delete session if initiator is gone from FW + - qla2xxx: Wait for all conflicts before ack'ing PLOGI + - qla2xxx: Replace QLA_TGT_STATE_ABORTED with a bit. + - qla2xxx: Remove dependency on hardware_lock to reduce lock contention. + - qla2xxx: Add irq affinity notification + - qla2xxx: Add selective command queuing + - qla2xxx: Move atioq to a different lock to reduce lock contention + - qla2xxx: Disable ZIO at start time. + - qla2xxx: Set all queues to 4k + - qla2xxx: Check for online flag instead of active reset when transmitting responses + - scsi: qla2xxxx: avoid type mismatch in comparison + + * [Hyper-V] PCI Passthrough (LP: #1541120) + - x86/irq: Export functions to allow MSI domains in modules + - genirq/msi: Export functions to allow MSI domains in modules + + * Update lpfc driver to 11.0.0.10 (LP: #1541592) + - lpfc: Fix FCF Infinite loop in lpfc_sli4_fcf_rr_next_index_get. + - lpfc: Fix the FLOGI discovery logic to comply with T11 standards + - lpfc: Fix RegLogin failed error seen on Lancer FC during port bounce + - lpfc: Fix driver crash when module parameter lpfc_fcp_io_channel set to 16 + - lpfc: Fix crash in fcp command completion path. + - lpfc: Modularize and cleanup FDMI code in driver + - lpfc: Fix RDP Speed reporting. + - lpfc: Fix RDP ACC being too long. + - lpfc: Make write check error processing more resilient + - lpfc: Use new FDMI speed definitions for 10G, 25G and 40G FCoE. + - lpfc: Fix mbox reuse in PLOGI completion + - lpfc: Fix external loopback failure. + - lpfc: Add logging for misconfigured optics. + - lpfc: Delete unnecessary checks before the function call "mempool_destroy" + - lpfc: Use kzalloc instead of kmalloc + - lpfc: Update version to 11.0.0.10 for upstream patch set + + * Miscellaneous Ubuntu changes + - [Config] CONFIG_ARM64_VA_BITS=48 + - [Config] Fixed Vcs-Git + + * Miscellaneous upstream changes + - cxl: Fix possible idr warning when contexts are released + - cxl: use correct operator when writing pcie config space values + - cxlflash: drop unlikely before IS_ERR_OR_NULL + - cxl: Fix DSI misses when the context owning task exits + - cxlflash: Removed driver date print + - cxlflash: Fix to resolve cmd leak after host reset + - cxlflash: Resolve oops in wait_port_offline + - cxlflash: Enable device id for future IBM CXL adapter + - cxl: fix build for GCC 4.6.x + - cxl: use -Werror only with CONFIG_PPC_WERROR + - cxl: Enable PCI device ID for future IBM CXL adapter + + -- Andy Whitcroft Fri, 05 Feb 2016 14:58:51 +0000 + +linux (4.4.0-3.17) xenial; urgency=low + + [ Tim Gardner ] + + * Release Tracking Bug + - LP: #1541058 + * [Config] CONFIG_BLK_DEV_NVME_SCSI=y + - LP: #1531539 + * SAUCE: nvme merge cleanup + - LP: #1531539 + * rebase to v4.4.1 + + [ Andy Whitcroft ] + + * Revert "SAUCE: dm: introduce a target_ioctl op to allow target specific + ioctls" + - LP: #1538618 + * postinst -- detect symlinks correctly + - LP: #1536810 + + [ John Johansen ] + + * SAUCE: apparmor: fix sleep from invalid context + - LP: #1539349 + + [ Upstream Kernel Changes ] + + * powerpc/eeh: Fix PE location code + - LP: #1538909 + * powerpc/pseries: Limit EPOW reset event warnings + - LP: #1539102 + * lightnvm: fix bio submission issue + - LP: #1531539 + * lightnvm: fix incorrect nr_free_blocks stat + - LP: #1531539 + * lightnvm: add check after mempool allocation + - LP: #1531539 + * lightnvm: unlock rq and free ppa_list on submission fail + - LP: #1531539 + * lightnvm: move ppa erase logic to core + - LP: #1531539 + * lightnvm: refactor rqd ppa list into set/free + - LP: #1531539 + * lightnvm: refactor end_io functions for sync + - LP: #1531539 + * lightnvm: return the get_bb_tbl return value + - LP: #1531539 + * lightnvm: check bi_error in gc + - LP: #1531539 + * lightnvm: put block back to gc list on its reclaim fail + - LP: #1531539 + * lightnvm: fix locking and mempool in rrpc_lun_gc + - LP: #1531539 + * lightnvm: sectors first in ppa list + - LP: #1531539 + * lightnvm: move the pages per block check out of the loop + - LP: #1531539 + * lightnvm: support multiple ppas in nvm_erase_ppa + - LP: #1531539 + * lightnvm: move rq->error to nvm_rq->error + - LP: #1531539 + * lightnvm: introduce nvm_submit_ppa + - LP: #1531539 + * lightnvm: reference rrpc lun in rrpc block + - LP: #1531539 + * lightnvm: fix missing grown bad block type + - LP: #1531539 + * lightnvm: manage open and closed blocks separately + - LP: #1531539 + * lightnvm: add mccap support + - LP: #1531539 + * lightnvm: introduce mlc lower page table mappings + - LP: #1531539 + * lightnvm: core on-disk initialization + - LP: #1531539 + * lightnvm: introduce ioctl to initialize device + - LP: #1531539 + * lightnvm: use system block for mm initialization + - LP: #1531539 + * lightnvm: introduce factory reset + - LP: #1531539 + * lightnvm: ensure that nvm_dev_ops can be used without CONFIG_NVM + - LP: #1531539 + * blk-mq: add a flags parameter to blk_mq_alloc_request + - LP: #1531539 + * nvme: move struct nvme_iod to pci.c + - LP: #1531539 + * nvme: split command submission helpers out of pci.c + - LP: #1531539 + * nvme: use offset instead of a struct for registers + - LP: #1531539 + * nvme: split nvme_trans_device_id_page + - LP: #1531539 + * nvme: use vendor it from identify + - LP: #1531539 + * nvme: split a new struct nvme_ctrl out of struct nvme_dev + - LP: #1531539 + * nvme: simplify nvme_setup_prps calling convention + - LP: #1531539 + * nvme: refactor nvme_queue_rq + - LP: #1531539 + * nvme: factor out a nvme_unmap_data helper + - LP: #1531539 + * nvme: move nvme_error_status to common code + - LP: #1531539 + * nvme: move nvme_setup_flush and nvme_setup_rw to common code + - LP: #1531539 + * nvme: split __nvme_submit_sync_cmd + - LP: #1531539 + * nvme: use the block layer for userspace passthrough metadata + - LP: #1531539 + * nvme: move block_device_operations and ns/ctrl freeing to common code + - LP: #1531539 + * nvme: add explicit quirk handling + - LP: #1531539 + * nvme: move remaining CC setup into nvme_enable_ctrl + - LP: #1531539 + * nvme: move nvme_{enable,disable,shutdown}_ctrl to common code + - LP: #1531539 + * nvme: add a common helper to read Identify Controller data + - LP: #1531539 + * nvme: move the call to nvme_init_identify earlier + - LP: #1531539 + * nvme: move namespace scanning to common code + - LP: #1531539 + * nvme: move chardev and sysfs interface to common code + - LP: #1531539 + * nvme: refactor set_queue_count + - LP: #1531539 + * blk-integrity: empty implementation when disabled + - LP: #1531539 + * NVMe: fix build with CONFIG_NVM enabled + - LP: #1531539 + * nvme: fix another 32-bit build warning + - LP: #1531539 + * nvme: precedence bug in nvme_pr_clear() + - LP: #1531539 + * nvme: only ignore hardware errors in nvme_create_io_queues + - LP: #1531539 + * nvme: only add a controller to dev_list after it's been fully + initialized + - LP: #1531539 + * nvme: protect against simultaneous shutdown invocations + - LP: #1531539 + * nvme: don't take the I/O queue q_lock in nvme_timeout + - LP: #1531539 + * nvme: merge nvme_abort_req and nvme_timeout + - LP: #1531539 + * nvme: add NVME_SC_CANCELLED + - LP: #1531539 + * nvme: simplify resets + - LP: #1531539 + * nvme: do not restart the request timeout if we're resetting the + controller + - LP: #1531539 + * nvme: merge probe_work and reset_work + - LP: #1531539 + * nvme: remove dead controllers from a work item + - LP: #1531539 + * nvme: switch abort_limit to an atomic_t + - LP: #1531539 + * NVMe: Implement namespace list scanning + - LP: #1531539 + * NVMe: Use unbounded work queue for all work + - LP: #1531539 + * NVMe: Remove device management handles on remove + - LP: #1531539 + * NVMe: Simplify metadata setup + - LP: #1531539 + * nvme: fix admin queue depth + - LP: #1531539 + * nvme: factor out a few helpers from req_completion + - LP: #1531539 + * nvme: switch delete SQ/CQ to blk_execute_rq_nowait + - LP: #1531539 + * nvme: switch abort to blk_execute_rq_nowait + - LP: #1531539 + * nvme: special case AEN requests + - LP: #1531539 + * nvme: simplify completion handling + - LP: #1531539 + * nvme: properly free resources for cancelled command + - LP: #1531539 + * nvme: meta_sg doesn't have to be an array + - LP: #1531539 + * nvme: merge iod and cmd_info + - LP: #1531539 + * NVMe: Add pci error handlers + - LP: #1531539 + * NVMe: Export namespace attributes to sysfs + - LP: #1531539 + * nvme: Move nvme_freeze/unfreeze_queues to nvme core + - LP: #1531539 + * nvme: synchronize access to ctrl->namespaces + - LP: #1531539 + * nvme: fixes for NVME_IOCTL_IO_CMD on the char device + - LP: #1531539 + * nvme: make SG_IO support optional + - LP: #1531539 + * NVMe: Fix admin queue ring wrap + - LP: #1531539 + * NVMe: Use a retryable error code on reset + - LP: #1531539 + * NVMe: Remove queue freezing on resets + - LP: #1531539 + * NVMe: IO queue deletion re-write + - LP: #1531539 + * NVMe: Shutdown controller only for power-off + - LP: #1531539 + * NVMe: Export NVMe attributes to sysfs group + - LP: #1531539 + * i40e: fix build warnings + * net: i40e: shut up uninitialized variable warnings + * Drivers: hv: vmbus: fix build warning + * Drivers: hv: util: Increase the timeout for util services + * Drivers: hv: utils: run polling callback always in interrupt context + * tools: hv: report ENOSPC errors in hv_fcopy_daemon + * tools: hv: remove repeated HV_FCOPY string + * Drivers: hv: util: catch allocation errors + * Drivers: hv: utils: use memdup_user in hvt_op_write + * drivers/hv: cleanup synic msrs if vmbus connect failed + * drivers:hv: Export a function that maps Linux CPU num onto Hyper-V proc + num + * drivers:hv: Export the API to invoke a hypercall on Hyper-V + * drivers:hv: Define the channel type for Hyper-V PCI Express + pass-through + * Drivers: hv: vss: run only on supported host versions + * Drivers: hv: vmbus: Use uuid_le type consistently + * Drivers: hv: vmbus: Use uuid_le_cmp() for comparing GUIDs + * Drivers: hv: vmbus: Get rid of the unused macro + * Drivers: hv: vmbus: Get rid of the unused irq variable + * Drivers: hv: vmbus: serialize process_chn_event() and + vmbus_close_internal() + * Drivers: hv: vmbus: do sanity check of channel state in + vmbus_close_internal() + * Drivers: hv: vmbus: fix rescind-offer handling for device without a + driver + * Drivers: hv: vmbus: release relid on error in vmbus_process_offer() + * Drivers: hv: vmbus: channge vmbus_connection.channel_lock to mutex + * drivers:hv: Allow for MMIO claims that span ACPI _CRS records + * Drivers: hv: vmbus: Fix a Host signaling bug + * drivers/hv: correct tsc page sequence invalid value + * Drivers: hv: vmbus: Force all channel messages to be delivered on CPU 0 + * Drivers: hv: utils: Invoke the poll function after handshake + * tools: hv: vss: fix the write()'s argument: error -> vss_msg + * Drivers: hv: utils: fix memory leak on on_msg() failure + * Drivers: hv: utils: rename outmsg_lock + * Drivers: hv: utils: introduce HVUTIL_TRANSPORT_DESTROY mode + * Drivers: hv: utils: fix crash when device is removed from host side + * Drivers: hv: ring_buffer.c: fix comment style + * Drivers: hv: ring_buffer: remove stray smp_read_barrier_depends() + * Drivers: hv: ring_buffer: remove code duplication from + hv_ringbuffer_peek/read() + * Drivers: hv: remove code duplication between + vmbus_recvpacket()/vmbus_recvpacket_raw() + * Drivers: hv: ring_buffer: eliminate hv_ringbuffer_peek() + * drivers/hv: replace enum hv_message_type by u32 + * drivers/hv: Move HV_SYNIC_STIMER_COUNT into Hyper-V UAPI x86 header + * drivers/hv: Move struct hv_message into UAPI Hyper-V x86 header + * drivers/hv: Move struct hv_timer_message_payload into UAPI Hyper-V x86 + header + * Drivers: hv: vmbus: fix the building warning with hyperv-keyboard + * Drivers: hv: utils: fix hvt_op_poll() return value on transport destroy + * Drivers: hv: vmbus: Treat Fibre Channel devices as performance critical + + [ Upstream Kernel Changes ] + + * rebase to v4.4.1 + - LP: #1533461 + - LP: #1529624 + + -- Tim Gardner Fri, 29 Jan 2016 08:06:37 -0700 + +linux (4.4.0-2.16) xenial; urgency=low + + [ Andy Whitcroft ] + + * Release Tracking Bug + - LP: #1539090 + * SAUCE: hv: hv_set_ifconfig -- convert to python3 + - LP: #1506521 + * SAUCE: dm: introduce a target_ioctl op to allow target specific ioctls + - LP: #1538618 + + [ Colin Ian King ] + + * SAUCE: ACPI / tables: Add acpi_force_32bit_fadt_addr option to force 32 + bit FADT addresses (LP: #1529381) + - LP: #1529381 + + [ John Johansen ] + + * SAUCE: (no-up): apparmor: fix for failed mediation of socket that is + being shutdown + - LP: #1446906 + + [ Mahesh Salgaonkar ] + + * SAUCE: Powernv: Remove the usage of PACAR1 from opal wrappers + - LP: #1537881 + * SAUCE: powerpc/book3s: Fix TB corruption in guest exit path on HMI + interrupt. + - LP: #1537881 + * SAUCE: KVM: PPC: Book3S HV: Fix soft lockups in KVM on HMI for time + base errors + - LP: #1537881 + + [ Paolo Pisati ] + + * SAUCE: arm64: errata: Add -mpc-relative-literal-loads to erratum + #843419 build flags + - LP: #1533009 + * [Config] MFD_TPS65217=y && REGULATOR_TPS65217=y + * [Config] disable ARCH_ZX (ZTE ZX Soc) + + [ Tim Gardner ] + + * Revert "SAUCE: (noup) cxlflash: a couple off by one bugs" + * SAUCE: (no-up) Update bnx2x firmware to 7.12.30.0 + - LP: #1536719 + * SAUCE: drop obsolete bnx2x firmware + * SAUCE: i40e: Silence 'may be used uninitialized' warnings + - LP: #1536474 + * [Config] CONFIG_ZONE_DMA=y for amd64 lowlatency + - LP: #1534647 + * [Config] Add pvpanic to virtual flavour + - LP: #1537923 + * [Config] CONFIG_INTEL_PUNIT_IPC=m, CONFIG_INTEL_TELEMETRY=m + - LP: #1520457 + + [ Upstream Kernel Changes ] + + * i40evf: fix compiler warning of unused variable + - LP: #1536474 + * intel: i40e: fix confused code + - LP: #1536474 + * i40e/i40evf: remove unused tunnel parameter + - LP: #1536474 + * i40e: Change BUG_ON to WARN_ON in service event complete + - LP: #1536474 + * i40e: remove BUG_ON from feature string building + - LP: #1536474 + * i40e: remove BUG_ON from FCoE setup + - LP: #1536474 + * i40e: Workaround fix for mss < 256 issue + - LP: #1536474 + * i40e/i40evf: Add a stat to track how many times we have to do a force + WB + - LP: #1536474 + * i40e: Move the saving of old link info from handle_link_event to + link_event + - LP: #1536474 + * i40e/i40evf: Add comment to #endif + - LP: #1536474 + * i40e/i40evf: clean up error messages + - LP: #1536474 + * i40evf: handle many MAC filters correctly + - LP: #1536474 + * i40e: return the number of enabled queues for ETHTOOL_GRXRINGS + - LP: #1536474 + * i40e: rework the functions to configure RSS with similar parameters + - LP: #1536474 + * i40e: create a generic configure rss function + - LP: #1536474 + * i40e: Bump version to 1.4.2 + - LP: #1536474 + * i40e: add new fields to store user configuration + - LP: #1536474 + * i40e: rename rss_size to alloc_rss_size in i40e_pf + - LP: #1536474 + * i40e/i40evf: Fix RS bit update in Tx path and disable force WB + workaround + - LP: #1536474 + * i40e/i40evf: prefetch skb data on transmit + - LP: #1536474 + * i40evf: rename VF adapter specific RSS function + - LP: #1536474 + * i40evf: create a generic config RSS function + - LP: #1536474 + * i40evf: create a generic get RSS function + - LP: #1536474 + * i40evf: add new fields to store user configuration of RSS + - LP: #1536474 + * i40e: Update error messaging + - LP: #1536474 + * i40e: fix confusing message + - LP: #1536474 + * i40e: make error message more useful + - LP: #1536474 + * i40evf: quoth the VF driver, Nevermore + - LP: #1536474 + * i40evf: allocate queue vectors dynamically + - LP: #1536474 + * i40evf: allocate ring structs dynamically + - LP: #1536474 + * i40e/i40evf: Bump i40e version to 1.4.4 and i40evf to 1.4.1 + - LP: #1536474 + * i40e: fix: do not sleep in netdev_ops + - LP: #1536474 + * i40e: remove unused argument + - LP: #1536474 + * i40evf: increase max number of queues + - LP: #1536474 + * i40evf: set real num queues + - LP: #1536474 + * i40evf: remove duplicate string + - LP: #1536474 + * i40e: Detection and recovery of TX queue hung logic moved to + service_task from tx_timeout + - LP: #1536474 + * i40e: Fix memory leaks, sideband filter programming + - LP: #1536474 + * i40evf: don't use atomic allocation + - LP: #1536474 + * i40e: propagate properly + - LP: #1536474 + * i40evf: use correct types + - LP: #1536474 + * i40e: use priv flags to control packet split + - LP: #1536474 + * i40e: Remove separate functions gathering XOFF Rx stats + - LP: #1536474 + * i40e: fix whitespace + - LP: #1536474 + * i40e/i40evf: use logical operator + - LP: #1536474 + * i40e/i40evf: Bump version to 1.4.7 for i40e and 1.4.3 for i40evf + - LP: #1536474 + * i40e: trivial fixes + - LP: #1536474 + * i40e: Fix i40e_print_features() VEB mode output + - LP: #1536474 + * i40e: chomp the BIT(_ULL) + - LP: #1536474 + * i40e: properly delete VF MAC filters + - LP: #1536474 + * i40e: don't add zero MAC filter + - LP: #1536474 + * i40evf: check rings before freeing resources + - LP: #1536474 + * i40e: use explicit cast from u16 to u8 + - LP: #1536474 + * i40e: Opcode and structures required by OEM Post Update AQ command and + add new NVM arq message + - LP: #1536474 + * i40e: hush little warnings + - LP: #1536474 + * i40e/i40evf: Add a new offload for RSS PCTYPE V2 for X722 + - LP: #1536474 + * i40e: clean whole mac filter list + - LP: #1536474 + * i40evf: change version string generation + - LP: #1536474 + * i40e/i40evf: Bump i40e to 1.4.8 and i40evf to 1.4.4 + - LP: #1536474 + * geneve: UDP checksum configuration via netlink + - LP: #1536474 + * geneve: Add geneve udp port offload for ethernet devices + - LP: #1536474 + * i40e: geneve tunnel offload support + - LP: #1536474 + * geneve: Add geneve_get_rx_port support + - LP: #1536474 + * i40e: Call geneve_get_rx_port to get the existing Geneve ports + - LP: #1536474 + * i40e: change log messages and error returns + - LP: #1536474 + * i40e: allow zero MAC address for VFs + - LP: #1536474 + * i40e: Look up MAC address in Open Firmware or IDPROM + - LP: #1536474 + * i40e: Fix Rx hash reported to the stack by our driver + - LP: #1536474 + * i40e: remove forever unused ID + - LP: #1536474 + * igb: add 88E1543 initialization code + * igb: don't unmap NULL hw_addr + * igb: use the correct i210 register for EEMNGCTL + * igb: fix NULL derefs due to skipped SR-IOV enabling + * igb: improve handling of disconnected adapters + * igb: Remove GS40G specific defines/functions + * igb: Don't add PHY address to PCDL address + * igb: Improve cable length function for I210, etc. + * igb: Explicitly label self-test result indices + * ixgbe: drop null test before destroy functions + - LP: #1536473 + * ixgbe: Delete redundant include file + - LP: #1536473 + * ixgbe: fix multiple kernel-doc errors + - LP: #1536473 + * ixgbe: Fix handling of NAPI budget when multiple queues are enabled per + vector + - LP: #1536473 + * ixgbe: Add KR mode support for CS4227 chip + - LP: #1536473 + * ixgbevf: Limit lowest interrupt rate for adaptive interrupt moderation + to 12K + - LP: #1536473 + * ixgbe/ixgbevf: use napi_schedule_irqoff() + - LP: #1536473 + * ixgbe: Remove CS4227 diagnostic code + - LP: #1536473 + * ixgbevf: use ether_addr_copy instead of memcpy + - LP: #1536473 + * ixgbevf: fix spoofed packets with random MAC + - LP: #1536473 + * ixgbe: Prevent KR PHY reset in ixgbe_init_phy_ops_x550em + - LP: #1536473 + * ixgbe: Add support for newer thermal alarm + - LP: #1536473 + * ixgbe: Use private workqueue to avoid certain possible hangs + - LP: #1536473 + * ixgbevf: Use a private workqueue to avoid certain possible hangs + - LP: #1536473 + * ixgbevf: Minor cleanups + - LP: #1536473 + * ixgbe: Refactor MAC address configuration code + - LP: #1536473 + * ixgbe: Use __dev_uc_sync and __dev_uc_unsync for unicast addresses + - LP: #1536473 + * ixgbe: Allow FDB entries access to more RAR filters + - LP: #1536473 + * ixgbe: Update PTP to support X550EM_x devices + - LP: #1536473 + * ixgbe: Correct spec violations by waiting after reset + - LP: #1536473 + * ixgbe: Wait for master disable to be set + - LP: #1536473 + * ixgbe: Save VF info and take references + - LP: #1536473 + * ixgbe: Handle extended IPv6 headers in Tx path + - LP: #1536473 + * ixgbe: Always turn PHY power on when requested + - LP: #1536473 + * ixgbevf: Handle extended IPv6 headers in Tx path + - LP: #1536473 + * ixgbe: Return error on failure to allocate mac_table + - LP: #1536473 + * ixgbe: Fix SR-IOV VLAN pool configuration + - LP: #1536473 + * ixgbe: Simplify definitions for regidx and bit in set_vfta + - LP: #1536473 + * ixgbe: Reduce VT code indent in set_vfta by introducing jump label + - LP: #1536473 + * ixgbe: Simplify configuration of setting VLVF and VLVFB + - LP: #1536473 + * ixgbe: Add support for adding/removing VLAN on PF bypassing the VLVF + - LP: #1536473 + * ixgbe: Reorder search to work from the top down instead of bottom up + - LP: #1536473 + * ixgbe: Add support for VLAN promiscuous with SR-IOV + - LP: #1536473 + * ixgbe: Fix VLAN promisc in relation to SR-IOV + - LP: #1536473 + * ixgbe: Clear stale pool mappings + - LP: #1536473 + * ixgbe: Clean stale VLANs when changing port VLAN or resetting + - LP: #1536473 + * ixgbe: do not report 2.5 Gbps as supported + - LP: #1536473 + * ixgbevf: Fix handling of NAPI budget when multiple queues are enabled + per vector + - LP: #1536473 + * ixgbevf: minor cleanups for ixgbevf_set_itr() + - LP: #1536473 + * ixgbe: add support for QSFP PHY types in ixgbe_get_settings() + - LP: #1536473 + * ixgbe: report correct media type for KR, KX and KX4 interfaces + - LP: #1536473 + * ixgbe: Clean up redundancy in hw_enc_features + - LP: #1536473 + * ixgbe: fix RSS limit for X550 + - LP: #1536473 + * ixgbe: Correct X550EM_x revision check + - LP: #1536473 + * ixgbe: Fix bugs in ixgbe_clear_vf_vlans() + - LP: #1536473 + * ixgbe: Fill at least min credits to a TC credit refills + - LP: #1536473 + * ixgbe: use correct FCoE DDP max check + - LP: #1536473 + * ixgbe: fix broken PFC with X550 + - LP: #1536473 + * ixgbe: do not call check_link for ethtool in ixgbe_get_settings() + - LP: #1536473 + * ixgbe: Correct handling of any outer UDP checksum setting + - LP: #1536473 + * ixgbe: Fix to get FDMI HBA attributes information with X550 + - LP: #1536473 + * ixgbe: Fix MDD events generated when FCoE+SRIOV are enabled + - LP: #1536473 + * ixgbe: Make ATR recognize IPv6 extended headers + - LP: #1536473 + * e1000: make eeprom read/write scheduler friendly + * e1000: fix data race between tx_ring->next_to_clean + * e1000: Remove checkpatch coding style errors + * e1000: clean up the checking logic + * e1000: fix a typo in the comment + * e1000e: clean up the local variable + * e1000: fix kernel-doc argument being missing + * e1000: get rid of duplicate exit path + * e1000: Elementary checkpatch warnings and checks removed + * e1000e: fix division by zero on jumbo MTUs + * e1000e: Increase timeout of polling bit RSPCIPHY + * e1000e: initial support for i219-LM (3) + * e1000e: Switch e1000e_up to void, drop code checking for error result + * e1000e: Remove unreachable code + * e1000e: Do not read ICR in Other interrupt + * e1000e: Do not write lsc to ics in msi-x mode + * e1000e: Fix msi-x interrupt automask + * acpi: pci: Setup MSI domain for ACPI based pci devices + * irqdomain: Introduce is_fwnode_irqchip helper + * irqchip/gic-v2m: Refactor to prepare for ACPI support + * irqchip/gic-v2m: acpi: Introducing GICv2m ACPI support + * clk: xgene: Fix divider with non-zero shift value + * i2c: designware: Do not require clock when SSCN and FFCN are provided + * fm10k: do not assume VF always has 1 queue + - LP: #1536475 + * fm10k: Correct MTU for jumbo frames + - LP: #1536475 + * fm10k: Fix handling of NAPI budget when multiple queues are enabled per + vector + - LP: #1536475 + * fm10k: use napi_schedule_irqoff() + - LP: #1536475 + * fm10k: set netdev features in one location + - LP: #1536475 + * fm10k: reset max_queues on init_hw_vf failure + - LP: #1536475 + * fm10k: always check init_hw for errors + - LP: #1536475 + * fm10k: reinitialize queuing scheme after calling init_hw + - LP: #1536475 + * fm10k: Correct typecast in fm10k_update_xc_addr_pf + - LP: #1536475 + * fm10k: explicitly typecast vlan values to u16 + - LP: #1536475 + * fm10k: add statistics for actual DWORD count of mbmem mailbox + - LP: #1536475 + * fm10k: rename mbx_tx_oversized statistic to mbx_tx_dropped + - LP: #1536475 + * fm10k: Add support for ITR scaling based on PCIe link speed + - LP: #1536475 + * fm10k: introduce ITR_IS_ADAPTIVE macro + - LP: #1536475 + * fm10k: Update adaptive ITR algorithm + - LP: #1536475 + * fm10k: use macro for default Tx and Rx ITR values + - LP: #1536475 + * fm10k: change default Tx ITR to 25usec + - LP: #1536475 + * fm10k: TRIVIAL fix typo of hardware + - LP: #1536475 + * fm10k: TRIVIAL cleanup order at top of fm10k_xmit_frame + - LP: #1536475 + * fm10k: use ether_addr_copy to copy MAC address + - LP: #1536475 + * fm10k: do not use CamelCase + - LP: #1536475 + * fm10k: remove unnecessary else block from if statements with return + - LP: #1536475 + * fm10k: remove namespace pollution of fm10k_iov_msg_data_pf + - LP: #1536475 + * fm10k: consistently refer to VLANs and VLAN IDs + - LP: #1536475 + * fm10k: bump driver version + - LP: #1536475 + * fm10k: conditionally compile DCB and DebugFS support + - LP: #1536475 + * fm10k: Cleanup MSI-X interrupts in case of failure + - LP: #1536475 + * fm10k: Cleanup exception handling for mailbox interrupt + - LP: #1536475 + * fm10k: do not inline fm10k_iov_select_vid() + - LP: #1536475 + * fm10k: whitespace cleanups + - LP: #1536475 + * fm10k: use BIT() macro instead of open-coded bit-shifting + - LP: #1536475 + * fm10k: cleanup namespace pollution + - LP: #1536475 + * fm10k: cleanup overly long lines + - LP: #1536475 + * fm10k: initialize xps at driver load + - LP: #1536475 + * fm10k: don't initialize fm10k_workqueue at global level + - LP: #1536475 + * fm10k: correctly pack TLV structures and explain reasoning + - LP: #1536475 + * fm10k: Cleanup exception handling for changing queues + - LP: #1536475 + * fm10k: use ether_addr_equal instead of memcmp + - LP: #1536475 + * fm10k: address operator not needed when declaring function pointers + - LP: #1536475 + * fm10k: constify fm10k_mac_ops, fm10k_iov_ops and fm10k_info structures + - LP: #1536475 + * fm10k: remove unused struct element + - LP: #1536475 + * fm10k: use true/false for boolean get_host_state + - LP: #1536475 + * fm10k: cleanup mailbox code comments etc + - LP: #1536475 + * fm10k: IS_ENABLED() is not appropriate for boolean kconfig option + - LP: #1536475 + * device property: always check for fwnode type + - LP: #1533035 + * device property: rename helper functions + - LP: #1533035 + * device property: refactor built-in properties support + - LP: #1533035 + * device property: keep single value inplace + - LP: #1533035 + * device property: helper macros for property entry creation + - LP: #1533035 + * device property: improve readability of macros + - LP: #1533035 + * device property: return -EINVAL when property isn't found in ACPI + - LP: #1533035 + * device property: Fallback to secondary fwnode if primary misses the + property + - LP: #1533035 + * device property: Take a copy of the property set + - LP: #1533035 + * driver core: platform: Add support for built-in device properties + - LP: #1533035 + * driver core: Do not overwrite secondary fwnode with NULL if it is set + - LP: #1533035 + * mfd: core: propagate device properties to sub devices drivers + - LP: #1533035 + * mfd: intel-lpss: Add support for passing device properties + - LP: #1533035 + * mfd: intel-lpss: Pass SDA hold time to I2C host controller driver + - LP: #1533035 + * mfd: intel-lpss: Pass HSUART configuration via properties + - LP: #1533035 + * i2c: designware: Convert to use unified device property API + - LP: #1533035 + * keys, trusted: fix: *do not* allow duplicate key options + - LP: #1398274 + * keys, trusted: select hash algorithm for TPM2 chips + - LP: #1398274 + * keys, trusted: seal with a TPM2 authorization policy + - LP: #1398274 + * perf/x86/intel: Add perf core PMU support for Intel Knights Landing + - LP: #1461360 + * perf/x86/intel/uncore: Add Knights Landing uncore PMU support + - LP: #1461360 + * perf/x86/intel/uncore: Remove hard coding of PMON box control MSR + offset + - LP: #1461360 + * drm/i915: WaRsDisableCoarsePowerGating + - LP: #1527462 + * drm/i915/skl: Add SKL GT4 PCI IDs + - LP: #1527462 + * drm/i915/skl: Disable coarse power gating up until F0 + - LP: #1527462 + * platform:x86: add Intel P-Unit mailbox IPC driver + - LP: #1520457 + * intel_punit_ipc: add NULL check for input parameters + - LP: #1520457 + * platform/x86: Add Intel Telemetry Core Driver + - LP: #1520457 + * intel_pmc_ipc: update acpi resource structure for Punit + - LP: #1520457 + * platform:x86: Add Intel telemetry platform device + - LP: #1520457 + * platform:x86: Add Intel telemetry platform driver + - LP: #1520457 + * platform:x86: Add Intel Telemetry Debugfs interfaces + - LP: #1520457 + * cxlflash: a couple off by one bugs + + -- Andy Whitcroft Thu, 28 Jan 2016 13:56:00 +0000 + +linux (4.4.0-1.15) xenial; urgency=low + + [ Tim Gardner ] + + * Release Tracking Bug + - LP: #1536803 + + [ Upstream Kernel Changes ] + + * Revert "[SCSI] libiscsi: Reduce locking contention in fast path" + - LP: #1517142 + + -- Tim Gardner Wed, 20 Jan 2016 07:41:40 -0700 + +linux (4.4.0-0.14) xenial; urgency=low + + [ Upstream Kernel Changes ] + + * Revert "powerpc/pci: Remove unused struct pci_dn.pcidev field" + - LP: #1522415 + * powerpc: Add __raw_rm_writeq() function + - LP: #1522415 + + -- Tim Gardner Tue, 19 Jan 2016 11:24:26 -0700 + +linux (4.4.0-0.13) xenial; urgency=low + + [ Andy Whitcroft ] + + * [Config] s390x -- the kernel provides ppp-modules such as there are + * SAUCE: (no-up) add compat_uts_machine= kernel command line override + + [ Tim Gardner ] + + * [Config] Update annotations for VIRTIO_{NET,BLK} + - LP: #1533382 + + [ Upstream Kernel Changes ] + + * powerpc/powernv: Add support for Nvlink NPUs + - LP: #1522415 + * powerpc/powernv: Fix update of NVLink DMA mask + - LP: #1522415 + * powerpc/powernv: Change NPU PE# assignment + - LP: #1522415 + * powerpc/powernv: Reserve PE#0 on NPU + - LP: #1522415 + * KEYS: Fix keyring ref leak in join_session_keyring() + - LP: #1534887 + - CVE-2016-0728 + + -- Tim Gardner Tue, 19 Jan 2016 05:49:09 -0700 + +linux (4.4.0-0.12) xenial; urgency=low + + [ Eric Dumazet ] + + * SAUCE: (no-up) udp: properly support MSG_PEEK with truncated buffers + - LP: #1527902 + + [ Guilherme G. Piccoli ] + + * SAUCE: powerpc/eeh: Validate arch in eeh_add_device_early() + - LP: #1486180 + + [ Tim Gardner ] + + * SAUCE: AUFS - update to aufs4.x-rcN 20160111 + * [Config] CONFIG_VIRTIO_BLK=y, CONFIG_VIRTIO_NET=y for s390 + - LP: #1532886 + * [Config] nvme.ko moved to drivers/nvme/host + * [Config] scsi_dh morphed into 4 modules + * [Config] CONFIG_IBMVNIC=m + * [Config] Add DRM ast driver to udeb installer image + - LP: #1514711 + * [Config] CONFIG_KVM=y for s390x + - LP: #1532886 + * [Config] Install spl/zfs under the kernel modules directory + Fixes some errors in generic.inclusion-list.log + + [ Upstream Kernel Changes ] + + * perf/x86/intel/uncore: Add Broadwell-EP uncore support + - LP: #1524574 + * EDAC: Add DDR4 flag + - LP: #1519631 + * EDAC, sb_edac: Virtualize several hard-coded functions + - LP: #1519631 + * EDAC, sb_edac: Add support for duplicate device IDs + - LP: #1519631 + * EDAC, sb_edac: Add Knights Landing (Xeon Phi gen 2) support + - LP: #1519631 + * Driver for IBM System i/p VNIC protocol + - LP: #1532303 + + -- Tim Gardner Mon, 11 Jan 2016 09:57:16 -0700 + +linux (4.4.0-0.11) xenial; urgency=low + + [ Tim Gardner ] + + * [Config] Fix bogus reconstruct script + + -- Tim Gardner Mon, 11 Jan 2016 07:29:17 -0700 + +linux (4.4.0-0.10) xenial; urgency=low + + [ Haren Myneni ] + + * SAUCE: crypto: nx-842 - Mask XERS0 bit in return value + - LP: #1529666 + + [ Serge Hallyn ] + + * SAUCE: add a sysctl to disable unprivileged user namespace unsharing + + [ Tim Gardner ] + + * [Config] CONFIG_ZONE_DEVICE=y for amd64 + * [Config] CONFIG_BLK_DEV_LOOP=y for s390x + - LP: #1526869 + * SAUCE: (no-up) apparmor: Fix incompatible pointer type warnings + * SAUCE: radeon: r100: Silence 'may be used uninitialized' warnings + * SAUCE: dmaengine: ioatdma: Squelch framesize warnings + * rebase to v4.4 + + [ Upstream Kernel Changes ] + + * rebase to v4.4 + + -- Tim Gardner Mon, 04 Jan 2016 17:43:51 -0700 + +linux (4.4.0-0.9) xenial; urgency=low + + [ Tim Gardner ] + + * rebase to v4.4-rc8 + + [ Upstream Kernel Changes ] + + * rebase to v4.4-rc8 + + -- Tim Gardner Sun, 03 Jan 2016 18:50:33 -0700 + +linux (4.4.0-0.8) xenial; urgency=low + + [ Tim Gardner ] + + * rebase to v4.4-rc7 + + [ Upstream Kernel Changes ] + + * rebase to v4.4-rc7 + + -- Tim Gardner Mon, 28 Dec 2015 16:13:11 -0700 + +linux (4.4.0-0.7) xenial; urgency=low + + [ Hui Wang ] + + * [Config] CONFIG_I2C_DESIGNWARE_BAYTRAIL=y, CONFIG_IOSF_MBI=y + - LP: #1527096 + + [ Jann Horn ] + + * SAUCE: (noup) ptrace: being capable wrt a process requires mapped + uids/gids + - LP: #1527374 + + [ Tim Gardner ] + + * rebase to v4.4-rc6 + + [ Upstream Kernel Changes ] + + * rebase to v4.4-rc6 + - LP: #1526330 + + -- Tim Gardner Thu, 17 Dec 2015 05:28:27 -0700 + +linux (4.4.0-0.6) xenial; urgency=low + + [ Andy Whitcroft ] + + * [Config] disable CONFIG_ARM64_LSE_ATOMICS to avoid issues with ARMv8.1 + support in latest compilers + * [Config] disable CONFIG_CRYPTO_AES_ARM64_CE* to avoid issues with + ARMv8.1 support in latest compilers + + [ Tim Gardner ] + + * [Config] s390 -> s390x + * SAUCE: include/linux/mmdebug.h: #include + + -- Tim Gardner Tue, 15 Dec 2015 06:46:26 -0700 + +linux (4.4.0-0.5) xenial; urgency=low + + [ Andy Whitcroft ] + + * [Config] s390x -- enable tools + - LP: #1524319 + * [Config] s390x -- add architecture to getabis + * [Config] s390x -- add s390x ABI information + * [Config] s390x -- enable ABI checks + + [ Tim Gardner ] + + * [Debian] config-check and prepare using ${DEBIAN}/config/annotations + * [Config] Add s390 modules to nic-modules udeb + - LP: #1525297 + * rebase to v4.4-rc5 + + [ Upstream Kernel Changes ] + + * rebase to v4.4-rc5 + - LP: #1523517 + - LP: #1523232 + + -- Tim Gardner Mon, 14 Dec 2015 05:28:05 -0700 + +linux (4.4.0-0.4) xenial; urgency=low + + [ Upstream Kernel Changes ] + + * cgroup: make css_set pin its css's to avoid use-afer-free + * cgroup_freezer: simplify propagation of CGROUP_FROZEN clearing in + freezer_attach() + * cgroup: fix handling of multi-destination migration from + subtree_control enabling + + -- Tim Gardner Tue, 08 Dec 2015 11:20:41 -0700 + +linux (4.4.0-0.3) xenial; urgency=low + + [ Upstream Kernel Changes ] + + * rebase to v4.4-rc4 + + -- Tim Gardner Sun, 06 Dec 2015 16:50:15 -0700 + +linux (4.4.0-0.2) xenial; urgency=low + + [ Tim Gardner ] + + * [Config] Add spl/zfs provides to generic and powerpc64-smp + * [Config] Add zfs to d-i fs-core-modules + * [Config] Include all s390 specific drivers in linux-image + - LP: #1522210 + + -- Tim Gardner Thu, 03 Dec 2015 07:05:56 -0700 + +linux (4.4.0-0.1) xenial; urgency=low + + [ Andy Whitcroft ] + + * [Tests] gcc-multilib does not exist on ppc64el redux + - LP: #1515541 + * [Config] libunwind8-dev is not available on s390x + * [Debian] Disable SPL/ZFS for cross compiling -- redux + * [Config] s390x -- add dasd udebs + - LP: #1519833 + * [Config] s390x -- include dasd modules in linux-image + - LP: #1519833 + * [Config] s390x -- disable ZFS temporarily + - LP: #1519820 + * [Config] s390s -- disable ABI/module checks + * [Config] make IBMVETH consistent on powerpc/ppc64el + - LP: #1521712 + * [Config] follow ibmvscsi name change + - LP: #1521712 + * [Config] move ibm disk and ethernet drivers to linux-image + - LP: #1521712 + * [Config] include ibmveth in nic-modules for ppc64el + - LP: #1521712 + * [Config] s390x -- disable abi/module checks for s390x + + [ Joseph Salisbury ] + + * SAUCE: scsi_sysfs: protect against double execution of + __scsi_remove_device() + - LP: #1509029 + + [ Seth Forshee ] + + * [Config] CONFIG_DRM_AMDGPU_CIK=n + - LP: #1510405 + + [ Tim Gardner ] + + * [Debian] Disable SPL/ZFS for cross compiling + * [Config] CONFIG_SCSI_IBMVSCSI=m + - LP: #1515872 + * rebase to v4.4-rc2 + * [Config] updateconfigs + * [Config] CONFIG_WILC1000_DRIVER=n for FTBS + * SAUCE: do_zfs=false temporarily + * [Config] CONFIG_LUSTRE_FS=n + * [Debian] Disable udebs when cross compiling + * rebase to v4.4-rc3 + * [Config] CONFIG_AUFS_FS=m + * SAUCE: AUFS + + [ Upstream Kernel Changes ] + + * ZFS: Update with 4.4 support + * SPL: Update with 4.4 support + + [ Upstream Kernel Changes ] + + * rebase to v4.4-rc3 + - LP: #1519168 + * rebase to v4.4-rc2 + - LP: #1506615 + - LP: #1502781 + + -- Tim Gardner Mon, 23 Nov 2015 13:22:37 -0700 + +linux (4.3.0-0.8) xenial; urgency=low + + [ Andy Whitcroft ] + + * [Config] re-enable OSS support and blacklist + - LP: #1434842 + * [Config] enable CONFIG_CC_STACKPROTECTOR_STRONG=y + * [Packaging] config-check -- improve syntax diagnostics + * [Packaging] module-inclusion -- add dependency inclusion for a list + * [Packaging] config-check -- accumulate multi-line annotations correctly + * [Packaging] config-check -- handle V2 annotations format + * [Packaging] s390x -- add architecture to kernelconfig + - LP: #1488653 + * [Config] s390x -- initial configuration + * [Config] s390x -- add initial binary image + * [Config] s390x -- initial configuration update + * [Config] s390x -- produce linux-image + * [Config] s390x -- d-i module exclusions + * [Config] apply Device Drivers >> LED Support >> LED Class Support + * [Config] apply File systems >> Miscellaneous filesystems >> SquashFS 4.0 - Squashed file system support + * [Config] apply Device Drivers >> Generic Driver Options >> Userspace firmware loading support + * SAUCE: leds: lp55xx -- do not force use of the fallback loader + * [Config] -- s390x -- configuration review updates + * [Config] annotations -- add review marks + * [Config] annotations -- config review 4.3 updates + * [Config] annotations -- expose reviews + * [Config] updateconfigs following incoporation of s390x configs + * [Tests] gcc-multilib does not exist on ppc64el + - LP: #1515541 + + [ Dan Carpenter ] + + * SAUCE: (noup) cxlflash: a couple off by one bugs + - LP: #1499849 + + [ Haren Myneni ] + + * Revert "SAUCE: (noup) crypto: 842 - Add CRC and validation support" + + [ Jay Vosburgh ] + + * SAUCE: fan: add VXLAN implementation + + [ Manoj Kumar ] + + * SAUCE: (noup) cxlflash: Fix to escalate LINK_RESET also on port 1 + - LP: #1513583 + + [ Matthew R. Ochs ] + + * SAUCE: (noup) cxlflash: Fix to avoid virtual LUN failover failure + - LP: #1513583 + + [ Tim Gardner ] + + * [Config] CONFIG_AUFS_EXPORT=y + - LP: #1121699 + + [ Upstream Kernel Changes ] + + * misc/genwqe: get rid of atomic allocations + * crypto: 842 - Add CRC and validation support + - LP: #1497878 + * cxlflash: Fix to avoid invalid port_sel value + * cxlflash: Replace magic numbers with literals + * cxlflash: Fix read capacity timeout + * cxlflash: Fix potential oops following LUN removal + * cxlflash: Fix data corruption when vLUN used over multiple cards + * cxlflash: Fix to avoid sizeof(bool) + * cxlflash: Fix context encode mask width + * cxlflash: Fix to avoid CXL services during EEH + * cxlflash: Correct naming of limbo state and waitq + * cxlflash: Make functions static + * cxlflash: Refine host/device attributes + * cxlflash: Fix to avoid spamming the kernel log + * cxlflash: Fix to avoid stall while waiting on TMF + * cxlflash: Fix location of setting resid + * cxlflash: Fix host link up event handling + * cxlflash: Fix async interrupt bypass logic + * cxlflash: Remove dual port online dependency + * cxlflash: Fix AFU version access/storage and add check + * cxlflash: Correct usage of scsi_host_put() + * cxlflash: Fix to prevent workq from accessing freed memory + * cxlflash: Correct behavior in device reset handler following EEH + * cxlflash: Remove unnecessary scsi_block_requests + * cxlflash: Fix function prolog parameters and return codes + * cxlflash: Fix MMIO and endianness errors + * cxlflash: Fix to prevent EEH recovery failure + * cxlflash: Correct spelling, grammar, and alignment mistakes + * cxlflash: Fix to prevent stale AFU RRQ + * cxlflash: Fix to double the delay each time + * cxlflash: Fix to avoid corrupting adapter fops + * cxlflash: Correct trace string + * cxlflash: Fix to avoid potential deadlock on EEH + * cxlflash: Fix to avoid leaving dangling interrupt resources + * cxlflash: Fix to escalate to LINK_RESET on login timeout + * cxlflash: Fix to avoid corrupting port selection mask + * cxlflash: Fix to avoid lock instrumentation rejection + * cxlflash: Fix to avoid bypassing context cleanup + + -- Tim Gardner Fri, 06 Nov 2015 10:15:07 -0600 + +linux (4.3.0-0.7) xenial; urgency=low + + [ Tim Gardner ] + + * Revert "Bypass spl/zfs config" + Causes unresolved symbols on load. + * [Config] Enable ZFS for powerpc64-smp + + -- Tim Gardner Thu, 05 Nov 2015 11:42:37 -0600 + +linux (4.3.0-0.6) xenial; urgency=low + + [ Tim Gardner ] + + * Release Tracking Bug + - LP: #1512704 + * UBUNTU: SAUCE: AUFS aufs4.x-rcN 20151102 + + [ Andy Whitcroft ] + + * [Packaging] add feature interlock with mainline builds + * apparmor -- follow change to this_cpu_ptr + + [ John Johansen ] + + * SAUCE: (no-up) apparmor: add parameter to control whether policy hashing is used + - LP: #1383886 + * SAUCE: (no-up) apparmor: Sync to apparmor3 - RC1 snapshot + - LP: #1362199 + * SAUCE: Revert: fix: only allow a single threaded process to ... + - LP: #1371310 + * SAUCE: (no-up) fix: bad unix_addr_fs macro + - LP: #1390223 + * SAUCE: (no-up): apparmor: fix mediation of fs unix sockets + - LP: #1408833 + * SAUCE: (no-up) apparmor: fix mount not handling disconnected paths + - LP: #1496430 + + [ Tim Gardner ] + + * [Config] Add iscsi_ibft and iscsi_boot_sysfs to generic inclusion list + - LP: #1511006 + * rebase to v4.3 + * Bypass spl/zfs config + * SPL/ZFS: Add Makefiles in order to avoid the lengthy config + * [Config] Default AppArmor settings + + [ Upstream Kernel Changes ] + + * rebase to v4.3 + + -- Tim Gardner Thu, 29 Oct 2015 09:16:26 -0600 + +linux (4.3.0-0.5) xenial; urgency=low + + * Update spl to 0.6.5.3-0ubuntu1, zfs to 0.6.5.3-0ubuntu1 + + [ Upstream Kernel Changes ] + + * rebase to v4.3-rc7 + - LP: #1504778 + + -- Tim Gardner Fri, 23 Oct 2015 13:59:52 -0600 + +linux (4.3.0-0.4) xenial; urgency=low + + [ Tim Gardner ] + + * [Debian] Update to new signing key type and location + + -- Tim Gardner Wed, 21 Oct 2015 13:07:30 -0600 + +linux (4.3.0-0.3) wily; urgency=low + + [ Tim Gardner ] + + * [Debian] sign-file is now compiled + + -- Tim Gardner Wed, 21 Oct 2015 09:26:34 -0600 + +linux (4.3.0-0.2) wily; urgency=low + + [ Tim Gardner ] + + * [Config] Added libssl-dev to Build-Depends + + -- Tim Gardner Tue, 20 Oct 2015 14:01:55 -0600 + +linux (4.3.0-0.1) wily; urgency=low + + [ Upstream Kernel Changes ] + + * rebase to v4.3-rc6 + * rebase to v4.3-rc5 + * rebase to v4.3-rc4 + * rebase to v4.3-rc3 + * rebase to v4.3-rc2 + * rebase to v4.3-rc1 + - LP: #1492132 + - LP: #1481575 + + -- Tim Gardner Mon, 14 Sep 2015 07:30:36 -0600 + +linux (4.2.0-10.11) wily; urgency=low + + [ Andy Whitcroft ] + + * Release Tracking Bug + - LP: #1495208 + * No change rebuild to avoid issues with leading zero bytes on + internal module signing key. (see launchpad bug 1494943) + + [ Ming Lei ] + + * [Config] SERIAL_8250_DW=y for arm64 + + [ Upstream Kernel Changes ] + + * drm/i915: Move WaBarrierPerformanceFixDisable:skl to skl code from chv + code + - LP: #1484486 + * drm/i915/gen8: Add infrastructure to initialize WA batch buffers + - LP: #1484486 + * drm/i915/gen8: Re-order init pipe_control in lrc mode + - LP: #1484486 + * drm/i915/gen8: Add WaDisableCtxRestoreArbitration workaround + - LP: #1484486 + * drm/i915/gen8: Add WaFlushCoherentL3CacheLinesAtContextSwitch + workaround + - LP: #1484486 + * drm/i915: Bail out early if WA batch is not available for given Gen + - LP: #1484486 + * drm/i915/gen8: Add WaClearSlmSpaceAtContextSwitch workaround + - LP: #1484486 + * drm/i915: Update WaFlushCoherentL3CacheLinesAtContextSwitch + - LP: #1484486 + * drm/i915/gen9: Implement WaDisableKillLogic for gen 9 + - LP: #1484486 + * drm/i915: Enable WA batch buffers for Gen9 + - LP: #1484486 + * drm/i915/gen9: Add WaDisableCtxRestoreArbitration workaround + - LP: #1484486 + * drm/i915: Update wa_ctx_emit() macro as per kernel coding guidelines + - LP: #1484486 + * drm/i915/gen9: Add WaFlushCoherentL3CacheLinesAtContextSwitch + workaround + - LP: #1484486 + * drm/i915/gen9: Add + WaSetDisablePixMaskCammingAndRhwoInCommonSliceChicken + - LP: #1484486 + * drm/i915:skl: Add WaEnableGapsTsvCreditFix + - LP: #1484486 + * drm/i915/skl: revert duplicated WaBarrierPerformanceFixDisable:skl + - LP: #1484486 + * drm/i915/skl: Don't expose the top most plane on gen9 display + - LP: #1484486 + * drm/i915/skl WaDisableSbeCacheDispatchPortSharing + - LP: #1484486 + * drm/i915/skl: WaIgnoreDDIAStrap is forever, always init DDI A + - LP: #1484486 + * drm/i915: reduce indent in i9xx_hpd_irq_handler + - LP: #1484531 + * drm/i915: reduce duplicate conditions in i9xx_hpd_irq_handler + - LP: #1484531 + * drm/i915: reduce indent in intel_hpd_irq_handler + - LP: #1484531 + * drm/i915: group all hotplug related fields into a new struct in + dev_priv + - LP: #1484531 + * drm/i915: add for_each_hpd_pin to iterate over hotplug pins + - LP: #1484531 + * drm/i915: simplify conditions for skipping the 2nd hpd loop iterations + - LP: #1484531 + * drm/i915: put back the indent in intel_hpd_irq_handler + - LP: #1484531 + * drm/i915: merge the two hpd loops in intel_hpd_irq_handler to one + - LP: #1484531 + * drm/i915: simplify condition for digital port + - LP: #1484531 + * drm/i915: abstract away platform specific parts from hpd handling + - LP: #1484531 + * drm/i915: Handle HPD when it has actually occurred + - LP: #1484531 + * drm/i915: Set power domain for DDI-E + - LP: #1484531 + * drm/i915: Set alternate aux for DDI-E + - LP: #1484531 + * drm/i915/skl: enable DDI-E hotplug + - LP: #1484531 + * drm/i915/bxt: fix DDI PHY vswing scale value setting + - LP: #1494163 + * drm/i915/skl: Buffer translation improvements + - LP: #1494163 + * drm/i915: Per-DDI I_boost override + - LP: #1494163 + * drm/i915: fix VBT parsing for SDVO child device mapping + - LP: #1494163 + * drm/i915/bxt: edp1.4 Intermediate Freq support + - LP: #1494163 + * drm/i915: fix link rates reported for SKL + - LP: #1494163 + * drm/i915: Allow parsing of variable size child device entries from VBT + - LP: #1494163 + * drm/i915/skl: Update DDI buffer translation programming. + - LP: #1494163 + * drm/i915: Enable HDMI on DDI-E + - LP: #1484531 + * drm/i915/skl: Enable DDI-E + - LP: #1484531 + * drm/i915: eDP can be present on DDI-E + - LP: #1484531 + * drm/i915/skl: Adding DDI_E power well domain + - LP: #1484531 + * drm/i915: set CDCLK if DPLL0 enabled during resuming from S3 + - LP: #1490035 + * drm/i915: Split atomic wm update to pre and post variants + - LP: #1493746 + * drm/i915/skl: Drop the preliminary_hw_support flag + - LP: #1486868 + * drm/i915: set FDI translations to NULL on SKL + - LP: #1494163 + + -- Andy Whitcroft Sun, 13 Sep 2015 11:32:02 +0100 + +linux (4.2.0-9.9) wily; urgency=low + + [ Tim Gardner ] + + * Release Tracking Bug + - LP: #1493970 + * [Config] CONFIG_MFD_INTEL_LPSS=m + - LP: #1397876 + + [ dann frazier ] + + * [Config] Disable CONFIG_IPMI_SI_PROBE_DEFAULTS on armhf and arm64 + - LP: #1388952 + + [ Michael Ellerman ] + + * SAUCE: crypto: vmx - VMX crypto should depend on CONFIG_VSX + Fixes FTBS on 32 bit powerpc, patch sent upstream. + + [ Upstream Kernel Changes ] + + * thermal/powerclamp: add cpu id for skylake h/s + - LP: #1398269 + * perf/x86/intel/uncore: Add Broadwell-DE uncore support + - LP: #1397852 + * mfd: watchdog: iTCO_wdt: Expose watchdog properties using platform data + - LP: #1460905 + * i2c: i801: Create iTCO device on newer Intel PCHs + - LP: #1460905 + * watchdog: iTCO_wdt: Add support for TCO on Intel Sunrisepoint + - LP: #1460905 + * perf/x86: Add a native_perf_sched_clock_from_tsc() + - LP: #1397867 + * perf/x86/intel: Add support for PEBSv3 profiling + - LP: #1397867 + * perf/x86/intel/lbr: Allow time stamp for free running PEBSv3 + - LP: #1397867 + * x86: Add new MSRs and MSR bits used for Intel Skylake PMU support + - LP: #1397867 + * perf: Add cycles to branch_info + - LP: #1397867 + * perf/x86/intel/lbr: Add support for LBRv5 + - LP: #1397867 + * perf/x86/intel: Handle new arch perfmon v4 status bits + - LP: #1397867 + * perf/x86/intel: Move PMU ACK to after LBR read + - LP: #1397867 + * perf/x86/intel/lbr: Optimize v4 LBR unfreezing + - LP: #1397867 + * perf/x86/intel: Add Intel Skylake PMU support + - LP: #1397867 + * perf/x86/intel/lbr: Use correct index to save/restore LBR_INFO with + call stack + - LP: #1397867 + * perf/x86/intel/lbr: Limit LBR accesses to TOS in callstack mode + - LP: #1397867 + * perf/x86: Make merge_attr() global to use from perf_event_intel + - LP: #1397867 + * perf/x86/intel: Use 0x11 as extra reg test value + - LP: #1397867 + * perf tools: Add support for cycles, weight branch_info field + - LP: #1397867 + * perf report: Add flag for non ANY branch mode + - LP: #1397867 + * perf report: Add infrastructure for a cycles histogram + - LP: #1397867 + * perf report: Add processing for cycle histograms + - LP: #1397867 + * perf annotate: Compute IPC and basic block cycles + - LP: #1397867 + * perf annotate: Finally display IPC and cycle accounting + - LP: #1397867 + * perf top: Add branch annotation code to top + - LP: #1397867 + * perf report: Display cycles in branch sort mode + - LP: #1397867 + * perf annotate: Fix 32-bit compilation error in util/annotate.c + - LP: #1397867 + * PM / QoS: Make it possible to expose device latency tolerance to + userspace + - LP: #1460908 + * ACPI / PM: Attach ACPI power domain only once + - LP: #1460908 + * Driver core: wakeup the parent device before trying probe + - LP: #1460908 + * klist: implement klist_prev() + - LP: #1460908 + * driver core: implement device_for_each_child_reverse() + - LP: #1460908 + * mfd: make mfd_remove_devices() iterate in reverse order + - LP: #1460908 + * dmaengine: add a driver for Intel integrated DMA 64-bit + - LP: #1460908 + * mfd: Add support for Intel Sunrisepoint LPSS devices + - LP: #1460908 + * spi: pxa2xx: Add support for Intel Sunrisepoint + - LP: #1397876 + * spi: spi-pxa2xx: Remove unused legacy PXA DMA API channel numbers + - LP: #1397876 + * spi: pxa2xx: Add terminating entry for pxa2xx_spi_pci_compound_match + - LP: #1397876 + * spi: spi-pxa2xx: Remove unused legacy null dma buffer and allocation + for it + - LP: #1397876 + * intel_idle: Skylake Client Support + - LP: #1397877 + * powerpc/kernel: Switch to using MAX_ERRNO + - LP: #1458876 + * powerpc/kernel: Change the do_syscall_trace_enter() API + - LP: #1458876 + * powerpc: Drop unused syscall_get_error() + - LP: #1458876 + * powerpc: Don't negate error in syscall_set_return_value() + - LP: #1458876 + * powerpc: Rework syscall_get_arguments() so there is only one loop + - LP: #1458876 + * powerpc: Use orig_gpr3 in syscall_get_arguments() + - LP: #1458876 + * powerpc: Change syscall_get_nr() to return int + - LP: #1458876 + * powerpc/kernel: Add SIG_SYS support for compat tasks + - LP: #1458876 + * powerpc/kernel: Enable seccomp filter + - LP: #1458876 + * selftests/seccomp: Make seccomp tests work on big endian + - LP: #1458876 + * selftests/seccomp: Add powerpc support + - LP: #1458876 + * eCryptfs: Invalidate dcache entries when lower i_nlink is zero + + -- Tim Gardner Tue, 08 Sep 2015 19:17:57 -0600 + +linux (4.2.0-8.8) wily; urgency=low + + [ Tim Gardner ] + + * Release Tracking Bug + - LP: #1493357 + * [Config] CONFIG_CRYPTO_DEV_NX_COMPRESS_CRYPTO obsolete + - LP: #1488495 + * [Config] CONFIG_CXLFLASH=m + * [Config] CONFIG_CXL_EEH=y for ppc64el, powerpc64-smp + + + [ Andy Whitcroft ] + + * [Packaging] standardise on stage1 for the bootstrap stage in line with debian + * [Packaging] mark up control for stage1 + * [Config] kernel-versions -- clean up deps field + * [Config] s390x -- build linux-libc-dev + - LP: #1488653 + * [Packaging] control -- prepare for new kernel-wedge semantics + + [ Upstream Kernel Changes ] + + * crypto: vmx - Fixing AES-CTR counter bug + - LP: #1484519 + * crypto: vmx - Fixing GHASH Key issue on little endian + - LP: #1484519 + * powerpc: Uncomment and make enable_kernel_vsx() routine available + - LP: #1484519 + * crypto: vmx - Adding enable_kernel_vsx() to access VSX instructions + - LP: #1484519 + * crypto: nx - nx842_OF_upd_status should return ENODEV if device is not + 'okay' + - LP: #1488495 + * crypto: nx - rename nx842_{init, exit} to nx842_pseries_{init, exit} + - LP: #1488495 + * crypto: nx - do not emit extra output if status is disabled + - LP: #1488495 + * crypto: nx - reduce chattiness of platform drivers + - LP: #1488495 + * crypto: nx/842 - Fix context corruption + - LP: #1488495 + * crypto: nx - remove __init/__exit from VIO functions + - LP: #1488495 + * crypto: nx - remove pSeries NX 'status' field + - LP: #1488495 + * crypto: nx - move kzalloc() out of spinlock + - LP: #1488495 + * crypto: nx - don't register pSeries driver if ENODEV + - LP: #1488495 + * crypto: nx - use common code for both NX decompress success cases + - LP: #1488495 + * crypto: nx - merge nx-compress and nx-compress-crypto + - LP: #1488495 + * crypto: nx - rename nx-842-crypto.c to nx-842.c + - LP: #1488495 + * crypto: nx - make platform drivers directly register with crypto + - LP: #1488495 + * cxlflash: Base support for IBM CXL Flash Adapter + - LP: #1449121 + * cxlflash: Base error recovery support + - LP: #1449121 + * cxlflash: Superpipe support + - LP: #1449121 + * cxlflash: Virtual LUN support + - LP: #1449121 + * cxlflash: off by one bug in cxlflash_show_port_status() + - LP: #1449121 + * cxlflash: shift wrapping bug in afu_link_reset() + - LP: #1449121 + * cxlflash: Remove unused variable from queuecommand + - LP: #1449121 + * powerpc/powernv: move dma_get_required_mask from pnv_phb to + pci_controller_ops + * powerpc/eeh: Probe after unbalanced kref check + * misc: cxl: clean up afu_read_config() + * cxl: Add explicit precision specifiers + * cxl: use more common format specifier + * cxl: Destroy cxl_adapter_idr on module_exit + * cxl: Destroy afu->contexts_idr on release of an afu + * cxl: Don't ignore add_process_element() result when attaching context + * cxl: Compile with -Werror + * cxl: sparse: Make declarations static + * cxl: sparse: Silence iomem warning in debugfs file creation + * cxl: Convert MMIO read/write macros to inline functions + * cxl: Drop commands if the PCI channel is not in normal state + * cxl: Allocate and release the SPA with the AFU + * cxl: Make IRQ release idempotent + * cxl: Clean up adapter MMIO unmap path. + * cxl: Refactor adaptor init/teardown + * cxl: Refactor AFU init/teardown + * cxl: Don't remove AFUs/vPHBs in cxl_reset + * cxl: Allow the kernel to trust that an image won't change on PERST. + * cxl: EEH support + * cxl: Add CONFIG_CXL_EEH symbol + * cxl: Plug irq_bitmap getting leaked in cxl_context + * cxl: Add alternate MMIO error handling + * cxl: Allow release of contexts which have been OPENED but not STARTED + * cxl: Remove use of macro DEFINE_PCI_DEVICE_TABLE + * cxl: Release irqs if memory allocation fails + * cxl: Remove racy attempt to force EEH invocation in reset + * cxl: Fix + cleanup error paths in cxl_dev_context_init + * cxl: Fix force unmapping mmaps of contexts allocated through the kernel api + * cxl: Set up and enable PSL Timebase + + -- Tim Gardner Tue, 01 Sep 2015 07:38:43 -0600 + +linux (4.2.0-7.7) wily; urgency=low + + [ Tim Gardner ] + + * Release Tracking Bug + - LP: #1490564 + * rebase to v4.2 + + [ Wen Xiong ] + + * SAUCE: ipr: Byte swapping for device_id attribute in sysfs + - LP: #1453892 + + [ Upstream Kernel Changes ] + + * rebase to v4.2 + - LP: #1487345 + + -- Tim Gardner Wed, 26 Aug 2015 07:06:10 -0600 + +linux (4.2.0-6.6) wily; urgency=low + + [ Tim Gardner ] + + * Release Tracking Bug + - LP: #1488138 + + [ Andy Whitcroft ] + + * rebase to v4.2-rc8 + + [ Shilpasri G Bhat ] + + * SAUCE: cpufreq: powernv: Handle throttling due to Pmax capping at chip + level + - LP: #1480894 + * SAUCE: powerpc/powernv: Add definition of OPAL_MSG_OCC message type + - LP: #1480894 + * SAUCE: cpufreq: powernv: Register for OCC related opal_message + notification + - LP: #1480894 + * SAUCE: cpufreq: powernv: Call throttle_check() on receiving + OCC_THROTTLE + - LP: #1480894 + * SAUCE: cpufreq: powernv: Report Psafe only if PMSR.psafe_mode_active + bit is set + - LP: #1480894 + * SAUCE: cpufreq: powernv: Restore cpu frequency to policy->cur on + unthrottling + - LP: #1480894 + + [ Upstream Kernel Changes ] + + * rebase to v4.2-rc8 + - LP: #1483440 + - LP: #1484334 + + -- Tim Gardner Fri, 21 Aug 2015 07:12:11 -0600 + +linux (4.2.0-5.5) wily; urgency=low + + [ Tim Gardner ] + + * Release Tracking Bug + - LP: #1487173 + + [ Andy Whitcroft ] + + * [Packaging] correct spelling of probabaly on the tools packages + - LP: #1256822 + * rebase to v4.2-rc7 + + [ dann frazier ] + + * d-i: Add nicpf and nicvf to nic-modules + * d-i: Enable usb modules on arm64 + + [ Mahesh Salgaonkar ] + + * SAUCE: powerpc/powernv: display reason for Malfunction Alert HMI. + - LP: #1482343 + * SAUCE: powerpc/powernv: Pull all HMI events before panic. + - LP: #1482343 + * SAUCE: powerpc/powernv: Invoke opal_cec_reboot2() on unrecoverable + machine check errors. + - LP: #1482343 + * SAUCE: powerpc/powernv: Invoke opal_cec_reboot2() on unrecoverable HMI. + - LP: #1482343 + + [ Vipin K Parashar ] + + * SAUCE: powerpc/powernv: Add poweroff (EPOW, DPO) events support for + PowerNV platform + - LP: #1469771 + + [ Upstream Kernel Changes ] + + * rebase to v4.2-rc7 + + -- Tim Gardner Tue, 11 Aug 2015 09:48:40 -0600 + +linux (4.2.0-4.4) wily; urgency=low + + [ Tim Gardner ] + + * Release Tracking Bug + - LP: #1483677 + + [ Achiad Shochat ] + + * SAUCE: net/mlx5e: Support TX packet copy into WQE + * SAUCE: net/mlx5e: TX latency optimization to save DMA reads + * SAUCE: net/mlx5e: Cosmetics: use BIT() instead of "1 <<", and others + * SAUCE: net/mlx5e: Input IPSEC.SPI into the RX RSS hash function + + [ Adam Lee ] + + * SAUCE: serial: 8250_pci: Add support for Pericom PI7C9X795[1248] + - LP: #1480142 + + [ dann frazier ] + + * [Config] CONFIG_NR_CPUS=128 on arm64 + + [ Leann Ogasawara ] + + * [Config] d-i -- Add sfc to nic-modules udeb + - LP: #1481490 + + [ Saeed Mahameed ] + + * SAUCE: net/mlx5e: Support ETH_RSS_HASH_XOR + * SAUCE: net/mlx5e: Allocate DMA coherent memory on reader NUMA node + + [ Tim Gardner ] + + * [Config] CONFIG_X86_INTEL_MPX=y + - LP: #1460902 + * [Debian] change dependency on module-init-tools to kmod + - LP: #1481986 + * rebase to v4.2-rc6 + + [ Upstream Kernel Changes ] + + * rebase to v4.2-rc6 + + -- Tim Gardner Tue, 04 Aug 2015 16:59:45 -0600 + +linux (4.2.0-3.3) wily; urgency=low + + [ Tim Gardner ] + + * Release Tracking Bug + - LP: #1481462 + * SAUCE: workqueue: Make flush_workqueue() available again to non GPL modules + Fixes an FTBS for at least one DKMS package. + + -- Tim Gardner Tue, 04 Aug 2015 11:26:53 -0600 + +linux (4.2.0-2.2) wily; urgency=low + + [ Tim Gardner ] + + * Release Tracking Bug + - LP: #1481067 + * rebase to v4.2-rc5 + + [ Andy Whitcroft ] + + * [Packaging] module-inclusion -- commonise copy code and simplify + * [Packaging] module-inclusion -- add manual command entries + * [Packaging] module blacklists -- add support for manual blacklists + * [Packaging] do_common_tools should always be on + * [Packaging] initscripts need installing when making the package + * [Packaging] initscripts work around bug in debhelper systemd support + * [Config] exclude oss modules from linux-image + - LP: #1434842 + * hyper-v -- add hid and fb drivers to linux-virtual + - LP: #1444179 + * ubuntu: (no-squash) vbox -- infrastructure and updater + * ubuntu: vbox -- elide the new symlinks and reconstruct on clean: + - LP: #1426113 + * ubuntu: vbox -- update to 5.0.0-dfsg-1 + - LP: #1480879 + * SAUCE: vbox: follow v4.2 updates to follow_link()/put_link() API + * [Config] move vbox modules into linux-image + + [ Upstream Kernel Changes ] + + * rebase to v4.2-rc5 + - LP: #1478497 + - LP: #1477900 + + -- Andy Whitcroft Mon, 03 Aug 2015 12:20:10 +0100 + +linux (4.2.0-1.1~rc1) wily; urgency=low + + [ Andy Whitcroft ] + + * Release Tracking Bug + - LP: #1479903 + * Initial upload of v4.2 based kernel (currently v4.-rc4) + + [ Upstream Kernel Changes ] + + * rebase to v4.2-rc4 + - LP: #1476987 + - LP: #1476888 + * rebase to v4.2-rc3 + * rebase to v4.2-rc2 + * rebase to v4.2-rc1 + - LP: #1394368 + - LP: #1427680 + - LP: #1462614 + - LP: #1397021 + + -- Andy Whitcroft Thu, 30 Jul 2015 18:42:46 +0100 + +linux (4.1.0-3.3) wily; urgency=low + + [ Andy Whitcroft ] + + * Release Tracking Bug + - LP: #1478897 + + [ Colin Ian King ] + + * SAUCE: KEYS: ensure we free the assoc array edit if edit is valid + - CVE-2015-1333 + + [ Seth Forshee ] + + * SAUCE: overlayfs: Enable user namespace mounts for the "overlay" fstype + - LP: #1478578 + + [ Upstream Kernel Changes ] + + * sched/stop_machine: Fix deadlock between multiple stop_two_cpus() + - LP: #1461620 + * x86/nmi: Enable nested do_nmi() handling for 64-bit kernels + * x86/nmi/64: Remove asm code that saves cr2 + * x86/nmi/64: Switch stacks on userspace NMI entry + * x86/nmi/64: Reorder nested NMI checks + * x86/nmi/64: Use DF to avoid userspace RSP confusing nested NMI + detection + + -- Andy Whitcroft Tue, 28 Jul 2015 11:59:03 +0100 + +linux (4.1.0-2.4) wily; urgency=low + + [ Andy Whitcroft ] + + * SAUCE: overlayfs: when copying up and reading directories ensure + mounter had permissions V2 + - CVE-2015-1328 + + [ Leann Ogasawara ] + + * Release Tracking Bug + - LP: #1465419 + + -- Leann Ogasawara Mon, 15 Jun 2015 14:09:22 -0700 + +linux (4.1.0-2.2) wily; urgency=low + + [ Tim Gardner ] + + * rebase to v4.1.3 + * [Config] Add i40e[vf] to d-i + - LP: #1476393 + + [ Upstream Kernel Changes ] + + * rebase to v4.1.3 + - LP: #1427680 + - LP: #1462614 + - LP: #1394368 + + -- Tim Gardner Wed, 22 Jul 2015 09:13:02 -0600 + +linux (4.1.0-1.1) wily; urgency=low + + [ Andy Whitcroft ] + + * SAUCE: overlay: add backwards compatible overlayfs format support V3 + - LP: #1395877, #1410480 + * SAUCE: overlayfs: when copying up and reading directories ensure + mounter had permissions V2 + - CVE-2015-1328 + * [Packaging] fix up Vcs-Git: to point to launchpad + * [Config] correct linux-initramfs-tool virtual linkage + - LP: #1474810 + + [ Chris J Arges ] + + * [Config] Add dm-service-time to multipath-modules + - LP: #1469240 + * [Config] Add MTD_POWERNV_FLASH and OPAL_PRD + - LP: #1464560 + + [ Jay Vosburgh ] + + * SAUCE: fan: Proof of concept implementation (v2) + - LP: #1439706 + * SAUCE: fan: tunnel multiple mapping mode (v3) + - LP: #1470091 + + [ Leann Ogasawara ] + + * Revert "SAUCE: ext4: disable ext4_punch_hole for indirect filesystems" + * Revert "SAUCE: intel_pstate: inform user that thermald is worth + considering" + * Revert "SAUCE: Work around broken ACPI backlight on Dell Inspiron 5537" + * Revert "SAUCE: dm-crypt: never use write same" + * Release Tracking Bug + - LP: #1476333 + + [ Tim Gardner ] + + * Rebase to v4.1 + - LP: #1443371 + * [Config] Enable Apparmor + * [Config] CONFIG_OVERLAY_FS_V1=y + * [Config] DEFAULT_IOSCHED="deadline" for ppc64el + - LP: #1469829 + * [Config] CONFIG_VM86=n + - LP: #1473447 + * [Config] ACORN_PARTITION=n + - LP: #1453117 + + [ Timo Aaltonen ] + + * [Config] Disable CONFIG_DRM_I915_PRELIMINARY_HW_SUPPORT + - LP: #1473319 + + [ Upstream Kernel Changes ] + + * efi: efivar_create_sysfs_entry() should return negative error codes + * efi: Add esrt support + * x86, doc: Remove cmdline_size from list of fields to be filled in for + EFI handover + * efi/esrt: Fix some compiler warnings + * efi: dmi: List SMBIOS3 table before SMBIOS table + * efi: Add 'systab' information to Documentation/ABI + * ALSA: hda - restore the MIC FIXUP for some Dell machines + - LP: #1473560 + * mtd: powernv: Add powernv flash MTD abstraction driver + - LP: #1464560 + * powerpc/powernv: Expose OPAL APIs required by PRD interface + - LP: #1464560 + * powerpc/powernv: Add opal-prd channel + - LP: #1464560 + * powerpc/powernv: fix construction of opal PRD messages + - LP: #1464560 + * powerpc/include: Add opal-prd to installed uapi headers + - LP: #1464560 + * powerpc/powernv: Fix vma page prot flags in opal-prd driver + - LP: #1464560 + + -- Leann Ogasawara Mon, 20 Jul 2015 10:16:06 -0700 + +linux (4.0.0-2.4) wily; urgency=low + + [ Andy Whitcroft ] + + * SAUCE: overlayfs: when copying up and reading directories ensure + mounter had permissions V2 + - CVE-2015-1328 + + [ Leann Ogasawara ] + + * Release Tracking Bug + - LP: #1465419 + + -- Leann Ogasawara Mon, 15 Jun 2015 14:09:22 -0700 + +linux (4.0.0-1.2) wily; urgency=low + + [ Andy Whitcroft ] + + * SAUCE: overlay: add backwards compatible overlayfs format support V3 + - LP: #1395877, #1410480 + * [Config] enable CONFIG_OVERLAY_FS_V1 + + [ Tai Nguyen ] + + * SAUCE: power: reset: Add syscon reboot device node for APM X-Gene platform + - LP: #1463211 + + [ Tim Gardner ] + + * [Config] CONFIG_HIBERNATION=n for ppc64el + - LP: #1463836 + + -- Tim Gardner Fri, 12 Jun 2015 06:11:53 -0600 + +linux (4.0.0-1.1) wily; urgency=low + + [ Leann Ogasawara ] + + * Revert "md/raid0: fix bug with chunksize not a power of 2." + - LP: #1457510 + * powerpc/powernv: Check image loaded or not before calling flash + - LP: #1461553 + + [ Tim Gardner ] + + * [Config] armhf: CPUFREQ_DT=y + - LP: #1457781 + + [ Upstream Kernel Changes ] + + * rebase to v4.0.5 + - LP: #1429756 + - LP: #1452175 + - LP: #1454656 + - LP: #1447909 + - LP: #1446517 + - LP: #1428947 + - LP: #1410704 + - LP: #1412800 + - LP: #1400215 + - LP: #1411193 + - LP: #1412800 + - LP: #1408295 + - LP: #1436745 + + -- Leann Ogasawara Tue, 09 Jun 2015 05:58:46 -0700 + +linux (3.19.0-10.10) vivid; urgency=low + + [ Andy Whitcroft ] + + * [Packaging] control -- make element ordering deterministic + * [Config] allow dracult to support initramfs as well + - LP: #1109029 + * [Packaging] generate live watchdog blacklists + - LP: #1432837 + + [ Leann Ogasawara ] + + * [Config] CONFIG_KVM_GENERIC_DIRTYLOG_READ_PROTECT=y + - LP: #1397860 + * rebase to v3.19.2 + + [ Upstream Kernel Changes ] + + * thinkpad_acpi: support new BIOS version string pattern + - LP: #1417915 + * arm64: Invalidate the TLB corresponding to intermediate page table + levels + - LP: #1432546 + * perf tools: Support parsing parameterized events + - LP: #1430341 + * perf tools: Extend format_alias() to include event parameters + - LP: #1430341 + * perf Documentation: Add event parameters + - LP: #1430341 + * perf tools: Document parameterized and symbolic events + - LP: #1430341 + * perf: provide sysfs_show for struct perf_pmu_events_attr + - LP: #1430341 + * perf: add PMU_EVENT_ATTR_STRING() helper + - LP: #1430341 + * perf: define EVENT_DEFINE_RANGE_FORMAT_LITE helper + - LP: #1430341 + * powerpc/perf/hv-24x7: parse catalog and populate sysfs with events + - LP: #1430341 + * powerpc/perf/{hv-gpci, hv-common}: generate requests with counters + annotated + - LP: #1430341 + * powerpc/perf/hv-gpci: add the remaining gpci requests + - LP: #1430341 + * powerpc/perf/hv-24x7: Document sysfs event description entries + - LP: #1430341 + * powerpc/iommu: Remove IOMMU device references via bus notifier + - LP: #1425202 + * powerpc/pseries: Fix endian problems with LE migration + - LP: #1428351 + * intel_idle: support additional Broadwell model + - LP: #1400970 + * tools/power turbostat: support additional Broadwell model + - LP: #1400970 + * KVM: x86: flush TLB when D bit is manually changed. + - LP: #1397860 + * Optimize TLB flush in kvm_mmu_slot_remove_write_access. + - LP: #1397860 + * KVM: Add generic support for dirty page logging + - LP: #1397860 + * KVM: x86: switch to kvm_get_dirty_log_protect + - LP: #1397860 + * KVM: Rename kvm_arch_mmu_write_protect_pt_masked to be more generic for + log dirty + - LP: #1397860 + * KVM: MMU: Add mmu help functions to support PML + - LP: #1397860 + * KVM: MMU: Explicitly set D-bit for writable spte. + - LP: #1397860 + * KVM: x86: Change parameter of kvm_mmu_slot_remove_write_access + - LP: #1397860 + * KVM: x86: Add new dirty logging kvm_x86_ops for PML + - LP: #1397860 + * KVM: VMX: Add PML support in VMX + - LP: #1397860 + * HID: multitouch: add support of clickpads + * HID: multitouch: Add support for button type usage + + [ Upstream Kernel Changes ] + + * rebase to v3.19.2 + - LP: #1428947 + + -- Andy Whitcroft Mon, 23 Mar 2015 15:28:16 +0000 + +linux (3.19.0-9.9) vivid; urgency=low + + [ Leann Ogasawara ] + + * Release Tracking Bug + - LP: #1430930 + + [ Shachar Raindel ] + + * SAUCE: IB/core: Prevent integer overflow in ib_umem_get address + arithmetic + - LP: #1413741 + - CVE-2014-8159 + + -- Leann Ogasawara Wed, 11 Mar 2015 10:29:17 -0700 + +linux (3.19.0-8.8) vivid; urgency=low + + [ Andy Whitcroft ] + + * ubuntu: vbox -- elide the new symlinks and reconstruct on clean: + - LP: #1426113 + * rebase to stable v3.19.1 + + [ John Johansen ] + + * SAUCE: (no-up): apparmor: fix mediation of fs unix sockets + - LP: #1408833 + + [ Leann Ogasawara ] + + * Release Tracking Bug + - LP: #1429940 + + [ Upstream Kernel Changes ] + + * xen: correct bug in p2m list initialization + * net/mlx5_core: Fix configuration of log_uar_page_sz + - LP: #1419938 + * tpm/ibmvtpm: Additional LE support for tpm_ibmvtpm_send + - LP: #1420575 + * net/mlx4_core: Maintain a persistent memory for mlx4 device + - LP: #1422481 + * net/mlx4_core: Set device configuration data to be persistent across + reset + - LP: #1422481 + * net/mlx4_core: Refactor the catas flow to work per device + - LP: #1422481 + * net/mlx4_core: Enhance the catas flow to support device reset + - LP: #1422481 + * net/mlx4_core: Activate reset flow upon fatal command cases + - LP: #1422481 + * net/mlx4_core: Manage interface state for Reset flow cases + - LP: #1422481 + * net/mlx4_core: Handle AER flow properly + - LP: #1422481 + * net/mlx4_core: Enable device recovery flow with SRIOV + - LP: #1422481 + * net/mlx4_core: Reset flow activation upon SRIOV fatal command cases + - LP: #1422481 + * tg3: Hold tp->lock before calling tg3_halt() from tg3_init_one() + - LP: #1428111 + * rebase to v3.19.1 + - LP: #1410704 + - LP: #1411193 + - LP: #1400215 + + -- Leann Ogasawara Mon, 09 Mar 2015 10:08:29 -0700 + +linux (3.19.0-7.7) vivid; urgency=low + + [ Andy Whitcroft ] + + * Release Tracking Bug + - LP: #1426013 + + [ Upstream Kernel Changes ] + + * x86/irq: Fix regression caused by commit b568b8601f05 + * cxl: Fix leaking interrupts if attach process fails + - LP: #1415102 + * cxl: Early return from cxl_handle_fault for a shut down context + - LP: #1415102 + * cxl: Disable AFU debug flag + - LP: #1415102 + * cxl: Disable SPAP register when freeing SPA + - LP: #1415102 + * cxl: remove redundant increment of hwirq + - LP: #1415102 + * cxl: Add tracepoints + - LP: #1415102 + * cxl: Update CXL ABI documentation + - LP: #1415102 + * cxl: Use image state defaults for reloading FPGA + - LP: #1415102 + * cxl: Add image control to sysfs + - LP: #1415102 + * cxl: Enable CAPP recovery + - LP: #1415102 + * cxl: Add ability to reset the card + - LP: #1415102 + * cxl: Fix device_node reference counting + - LP: #1415102 + * cxl: Export optional AFU configuration record in sysfs + - LP: #1415102 + * cxl: Fail AFU initialisation if an invalid configuration record is + found + - LP: #1415102 + * cxl: Add missing return statement after handling AFU errror + - LP: #1415102 + * powerpc/eeh: Introduce flag EEH_PE_REMOVED + - LP: #1415102 + * powerpc/eeh: Allow to set maximal frozen times + - LP: #1415102 + * HID: i2c-hid: Limit reads to wMaxInputLength bytes for input events + + -- Andy Whitcroft Thu, 26 Feb 2015 16:00:18 +0000 + +linux (3.19.0-6.6) vivid; urgency=low + + [ Andy Whitcroft ] + + * systemd -- fix hyper-v units to be non-forking + - LP: #1401525 + * [Config] move vbox modules into linux-image + * ubuntu: vbox -- update to 4.3.22-dfsg-1 + + [ Brad Figg ] + + * SAUCE: DEP8 test to run our regression tests + + [ Paolo Pisati ] + + * [Config] I2C_CHARDEV=y + - LP: #1417032 + + [ Upstream Kernel Changes ] + + * PCI: Fix infinite loop with ROM image of size 0 + * tpm: Fix NULL return in tpm_ibmvtpm_get_desired_dma + * Bluetooth: ath3k: workaround the compatibility issue with xHCI + controller + - LP: #1400215 + + -- Andy Whitcroft Thu, 19 Feb 2015 12:44:43 +0000 + +linux (3.19.0-5.5) vivid; urgency=low + + [ Andy Whitcroft ] + + * [Config] CONFIG_FA_DUMP=y + - LP: #1415562 + * ubuntu: (no-squash) vbox -- infrastructure and updater + * ubuntu: vbox -- update to 4.3.20-dfsg-1ubuntu1 + * rebase to v3.19 final + + [ Chris J Arges ] + + * [Config] Add ibmvfc to d-i + - LP: #1416001 + * SAUCE: ext4: disable ext4_punch_hole for indirect filesystems + - LP: #1292234 + + [ Upstream Kernel Changes ] + + * rebase to v3.19 + + -- Andy Whitcroft Mon, 09 Feb 2015 10:41:11 +0000 + +linux (3.19.0-4.4) vivid; urgency=low + + [ Andy Whitcroft ] + + * [Config] apply Kernel hacking >> Tracers config defaults + * hyper-v -- fix comment handing in /etc/network/interfaces + - LP: #1413020 + * rebase to v3.19-rc7 + * updateconfigs following rebase to v3.19-rc7 + + [ Ben Hutchings ] + + * SAUCE: rtsx_usb_ms: Use msleep_interruptible() in polling loop + - LP: #1413149 + + [ Upstream Kernel Changes ] + + * rebase to v3.19-rc7 + + -- Andy Whitcroft Mon, 02 Feb 2015 17:03:07 +0200 + +linux (3.19.0-3.3) vivid; urgency=low + + [ Andy Whitcroft ] + + * [Debian] arm64 -- build ubuntu drivers + - LP: #1411284 + * [Packaging] config-check -- add support for enforced annotations + * [Config] annotations -- switch to ENFORCED annotations + * [Packaging] config-check -- drop support for enforce file + * [Packaging] enforce -- drop empty enforce file + * rebase to v3.19-rc5 + * [Config] add modules removed due to tighter dependencies + * [Config] updateconfigs following rebase to v3.19-rc5 + * [Config] enforce CONFIG_FHANDLE=y + - LP: #1412543 + * [Packaging] hyper-v -- daemons now require -n for non-forking startup + - LP: #1408355 + * [Config] CONFIG_DEBUG_INFO_SPLIT=n + - LP: #1413646 + * [Config] apply Device Drivers >> Character devices >> IPMI top-level + message handler config defaults + * [Config] apply Device Drivers >> Character devices >> Serial drivers + config defaults + * [Config] apply Device Drivers >> GPIO Support config defaults + * [Config] apply Device Drivers >> Graphics support >> Direct Rendering + Manager >> Direct Rendering Manager (XFree86 4.1.0 and higher DRI + support) config defaults + * [Config] apply Device Drivers >> Graphics support >> Frame buffer + Devices >> Support for frame buffer devices config defaults + * [Config] apply Device Drivers >> HID support >> HID bus support >> + Special HID drivers config defaults + * [Config] apply Device Drivers >> Hardware Monitoring support config + defaults + * [Config] apply Device Drivers >> I2C support >> I2C support >> I2C + Hardware Bus support config defaults + * [Config] apply Device Drivers >> Industrial I/O support >> Analog to + digital converters config defaults + * [Config] apply Device Drivers >> Industrial I/O support >> Humidity + sensors config defaults + * [Config] apply Device Drivers >> Industrial I/O support >> Pressure + sensors config defaults + * [Config] apply Device Drivers >> Input device support >> Generic input + layer (needed for keyboard, mouse, ...) >> Mice config defaults + * [Config] apply Device Drivers >> Input device support >> Generic input + layer (needed for keyboard, mouse, ...) >> Touchscreens config defaults + * [Config] apply Device Drivers >> LED Support >> LED Class Support + config defaults + * [Config] apply Device Drivers >> MMC/SD/SDIO card support config + defaults + * [Config] apply Device Drivers >> Multifunction device drivers config + defaults + * [Config] apply Device Drivers >> Multimedia support >> Cameras/video + grabbers support >> Media test drivers config defaults + * [Config] apply Device Drivers >> Multimedia support >> Media PCI + Adapters config defaults + * [Config] apply Device Drivers >> Multimedia support >> Remote + Controller devices config defaults + * [Config] apply Device Drivers >> Network device support >> Distributed + Switch Architecture drivers config defaults + * [Config] apply Device Drivers >> Network device support >> Network core + driver support config defaults + * [Config] apply Device Drivers >> Network device support >> Wireless LAN + >> Hermes chipset 802.11b support (Orinoco/Prism2/Symbol) config + defaults + * [Config] apply Device Drivers >> Network device support >> Wireless LAN + >> Intel PRO/Wireless 2200BG and 2915ABG Network Connection config + defaults + * [Config] apply Device Drivers >> PHY Subsystem config defaults + * [Config] apply Device Drivers >> Pin controllers config defaults + * [Config] apply Device Drivers >> SPI support config defaults + * [Config] apply Device Drivers >> Sound card support >> Advanced Linux + Sound Architecture >> ALSA for SoC audio support config defaults + * [Config] apply Device Drivers >> Sound card support >> Advanced Linux + Sound Architecture >> FireWire sound devices config defaults + * [Config] apply Device Drivers >> Sound card support >> Advanced Linux + Sound Architecture >> HD-Audio config defaults + * [Config] apply Device Drivers >> Staging drivers >> Lustre file system + client support config defaults + * [Config] apply Device Drivers >> Staging drivers >> Media staging + drivers config defaults + * [Config] apply Device Drivers >> USB support >> USB Gadget Support >> + USB Gadget Drivers >> USB functions configurable through configfs + config defaults + * [Config] apply Device Drivers >> USB support >> USB Gadget Support >> + USB Peripheral Controller config defaults + * [Config] apply Networking support >> NFC subsystem support >> Near + Field Communication (NFC) devices config defaults + * [Config] apply Networking support >> Networking options >> Network + packet filtering framework (Netfilter) >> Core Netfilter Configuration + >> Netfilter nf_tables support config defaults + * [Config] apply Networking support >> Networking options >> QoS and/or + fair queueing >> Actions config defaults + * [Config] apply Networking support >> Networking options >> TCP/IP + networking config defaults + * [Config] apply Networking support >> Wireless >> Generic IEEE 802.11 + Networking Stack (mac80211) config defaults + * [Config] apply Device Drivers >> Input device support >> Generic input + layer (needed for keyboard, mouse, ...) >> Keyboards config defaults + * [Config] apply Device Drivers >> Input device support >> Generic input + layer (needed for keyboard, mouse, ...) >> Mice config defaults + * [Config] apply Device Drivers >> Pulse-Width Modulation (PWM) Support + config defaults + * [Config] apply Networking support >> Networking options >> Network + packet filtering framework (Netfilter) >> IP: Netfilter Configuration + >> IPv4 NAT config defaults + * [Config] apply Networking support >> Networking options >> Network + packet filtering framework (Netfilter) >> IPv6: Netfilter Configuration + >> IPv6 NAT config defaults + * [Config] apply Kernel hacking >> Kernel debugging config defaults + * [Config] apply General setup >> Timers subsystem >> Timer tick handling + config defaults + * SAUCE: arm64 -- psci tell the compiler which registers we are needing + values in + - LP: #1414002 + * [Config] apply Device Drivers >> Network device support >> Wireless LAN + >> Intel Wireless WiFi Next Gen AGN - Wireless-N/Advanced-N/Ultimate-N + (iwlwifi) config defaults + * [Config] apply Device Drivers >> Real Time Clock config defaults + * [Config] apply Device Drivers >> SCSI device support >> SCSI device + support >> SCSI low-level drivers config defaults + * [Config] apply General setup >> CPU/Task time and stats accounting >> + Cputime accounting config defaults + * [Config] apply Device Drivers >> Mailbox Hardware Support config + defaults + * rebase to v3.19-rc6 + * [Config] updateconfigs following rebase to v3.19-rc6 + + [ Kamal Mostafa ] + + * [Packaging] force "dpkg-source -I -i" behavior + + [ Leann Ogasawara ] + + * [Config] Disable CONFIG_USB_OTG + - LP: #1411295 + + [ Upstream Kernel Changes ] + + * overlay: add backwards compatible overlayfs format support (fixes) + - LP: #1410480 + + [ Upstream Kernel Changes ] + + * rebase to v3.19-rc5 + * rebase to v3.19-rc6 + + -- Andy Whitcroft Mon, 26 Jan 2015 11:37:39 +0000 + +linux (3.19.0-2.2) vivid; urgency=low + + [ Andy Whitcroft ] + + * rebase to v3.19-rc4 + * [Config] updateconfigs following rebase to v3.19-rc4 + * [Packaging] install all dtb files + - LP: #1408002 + * [Config] switch on "all" dtbs + - LP: #1408002 + + [ Colin Ian King ] + + * SAUCE: drivers/rtc/interface.c: ignore exprired times when enqueing new + timers + - LP: #1333569 + + [ Joseph Salisbury ] + + * [Config] Enable CONFIG_N_GSM as module. + - LP: #1404670 + + [ K. Y. Srinivasan ] + + * SAUCE: storvsc: force SPC-3 compliance on win8 and win8 r2 hosts + - LP: #1406867 + + [ Steve McIntyre ] + + * SAUCE: efi: Expose underlying UEFI firmware platform size to userland + - LP: #1409750 + + [ Upstream Kernel Changes ] + + * rebase to v3.19-rc4 + + -- Andy Whitcroft Tue, 13 Jan 2015 12:35:58 +0000 + +linux (3.19.0-1.1) vivid; urgency=low + + [ Andy Whitcroft ] + + * Revert "SAUCE: AUFS -- aufs3-standalone.patch" + * Revert "SAUCE: AUFS -- aufs3-mmap.patch" + * Revert "SAUCE: AUFS -- aufs3-base.patch" + * ubuntu: AUFS3 -- follow switch to vfs_fallocate + * rebase to v3.19-rc1 + * rebase to v3.19-rc2 + * [Config] defaultconfigs following rebase to v3.19-rc2 + * ubuntu: aufs3 -- follow rename of d_child + * ubuntu: aufs3 -- follow switch to d_splice_alias + * ubuntu: aufs3 -- follow switch to get_unused_fd_flags() + * ubuntu: aufs3 -- follow rename for d_alias + * apparmor -- follow change to this_cpu_ptr + * disable module checks for rebase + * ubuntu: AUFS -- substrate: aufs3-base.patch + * ubuntu: AUFS -- substrate: aufs3-mmap.patch + * ubuntu: AUFS -- substrate: aufs3-standalone.patch + * ubuntu: AUFS -- update to 92ad9cc8bd289bf8e59b6bd8d83137d8e1a58c1c + * [Configs] updateconfigs following aufs update + * v3.19 series start + * rebase to v3.19-rc3 + * [Configs] updateconfigs following rebase to v3.19-rc3 + * [Packaging] uploadnum should be the remainder of the version + - LP: #1407755 + * [Packaging] handle dts directories + - LP: #1408004 + * [Config] follow move of arm64 dts' into vendor directories + + [ Upstream Kernel Changes ] + + * arm64: optimized copy_to_user and copy_from_user assembly code + - LP: #1400349 + * iommu/ipmmu-vmsa: follow flag switch to IOMMU_NOEXEC + + [ Upstream Kernel Changes ] + + * rebase to v3.19-rc1 + - LP: #1173681 + * rebase to v3.19-rc2 + * rebase to v3.19-rc3 + + -- Andy Whitcroft Tue, 06 Jan 2015 14:30:02 +0000 + +linux (3.18.0-7.8) vivid; urgency=low + + [ Leann Ogasawara ] + + * Release Tracking Bug + - LP: #1401590 + + [ John Johansen ] + + * SAUCE: (no-up) apparmor: Sync to apparmor3 - RC1 snapshot + - LP: #1362199 + * SAUCE: Revert: fix: only allow a single threaded process to ... + - LP: #1371310 + * SAUCE: (no-up) fix: bad unix_addr_fs macro + - LP: #1390223 + * SAUCE: (no-up) apparmor: add parameter to control whether policy + hashing is used + - LP: #1383886 + * [config] set apparmor config options + + [ Seth Forshee ] + + * [Config] CONFIG_FW_LOADER_USER_HELPER_FALLBACK=n + - LP: #1398458 + + [ Upstream Kernel Changes ] + + * mfd: rtsx: Fix PM suspend for 5227 & 5249 + - LP: #1359052 + * mmc: sdhci-pci-o2micro: Fix Dell E5440 issue + - LP: #1346067 + + -- Leann Ogasawara Thu, 11 Dec 2014 08:36:36 -0800 + +linux (3.18.0-6.7) vivid; urgency=low + + [ Andy Whitcroft ] + + * Revert "SAUCE: (no-up) arm64: optimized copy_to_user and copy_from_user + assembly code" + - LP: #1398596 + * rebase to v3.18 + + [ Chris J Arges ] + + * [Config] CONFIG_PCIEASPM_DEBUG=y + - LP: #1398544 + + [ Paolo Pisati ] + + * [Config] armhf: VIRTIO_[BALLOON|MMIO]=y + - LP: #1396470 + + [ Upstream Kernel Changes ] + + * drivers:scsi:storvsc: Fix a bug in handling ring buffer failures that + may result in I/O freeze + - LP: #1400289 + + [ Upstream Kernel Changes ] + + * rebase to v3.18 + + -- Leann Ogasawara Mon, 08 Dec 2014 09:15:17 -0800 + +linux (3.18.0-5.6) vivid; urgency=low + + [ Leann Ogasawara ] + + * Release Tracking Bug + - LP: #1398109 + + [ Andy Whitcroft ] + + * [Config] CONFIG_SCSI_MQ_DEFAULT=n + - LP: #1397061 + * rebase to v3.18-rc7 + + [ Chris J Arges ] + + * [Config] CONFIG_SCOM_DEBUGFS=y for powerpc/powerpc64-smp + ppc64el/generic + - LP: #1395855 + + [ Upstream Kernel Changes ] + + * rebase to v3.18-rc7 + - LP: #1389497 + + -- Leann Ogasawara Mon, 01 Dec 2014 10:09:09 -0800 + +linux (3.18.0-4.5) vivid; urgency=low + + [ Leann Ogasawara ] + + * Release Tracking Bug + - LP: #1395891 + + [ Andy Whitcroft ] + + * rebase to v3.18-rc6 + * [Config] update configs following rebase to v3.18-rc6 + * [Config] enable overlayfs v1 support + + [ Tim Gardner ] + + * rebase to v3.18-rc5 + + [ Upstream Kernel Changes ] + + * overlay: add backwards compatible overlayfs format support + - LP: #1395877 + + [ Upstream Kernel Changes ] + + * rebase to v3.18-rc5 + * rebase to v3.18-rc6 + + -- Leann Ogasawara Mon, 24 Nov 2014 13:12:48 -0800 + +linux (3.18.0-3.4) vivid; urgency=low + + [ Andy Whitcroft ] + + * Revert "[Config] CONFIG_AUFS_FS=n for FTBS" + * Revert "SAUCE: AUFS -- update to + dcf336a754c86d5ee1c3d50699fd75c586d037cb" + * Revert "SAUCE: aufs3 -- (no-up) aufs3-standalone.patch" + * Revert "SAUCE: aufs3 -- (no-up) aufs3-base.patch" + * [Config] amd64 is now the indep architecture + * [Debian] basic hook support + * SAUCE: AUFS -- aufs3-base.patch + * SAUCE: AUFS -- aufs3-mmap.patch + * SAUCE: AUFS -- aufs3-standalone.patch + * ubuntu: AUFS -- update to 9d5c349d5c452170b8e813d86956f896a0aef170 + * [Config] updateconfigs following aufs3 update + * SAUCE: AUFS (no-squash): basic framework and update machinary -- part 2 + + [ dann frazier ] + + * [Config] Disable CONFIG_IPMI_SI_PROBE_DEFAULTS on armhf and arm64 + - LP: #1388952 + * [Config] disable CONFIG_ARM64_RANDOMIZE_TEXT_OFFSET + * [Config] Disable CONFIG_RCU_USER_QS on arm64 + + [ Tim Gardner ] + + * rebase to v3.18-rc4 + + [ Upstream Kernel Changes ] + + * rebase to v3.18-rc4 + - LP: #1389497 + - LP: #1387128 + + -- Andy Whitcroft Tue, 11 Nov 2014 17:16:13 +0000 + +linux (3.18.0-2.2) vivid; urgency=low + + [ Tim Gardner ] + + * SAUCE: nft_reject_bridge.c: Include net/ip6_checksum.h + + [ Upstream Kernel Changes ] + + * rebase to v3.18-rc3 + + -- Tim Gardner Mon, 03 Nov 2014 06:09:06 -0700 + +linux (3.18.0-1.1) vivid; urgency=low + + [ Andy Whitcroft ] + + * Revert "[Config] Switch kernel to vmlinuz (from vmlinux) on ppc64el" + * [Config] tools -- only build common tools when enabled + * [Config] follow rename of DEB_BUILD_PROFILES + * [Config] linux-image-extra is additive to linux-image + - LP: #1375310 + * [Config] linux-image-extra postrm is not needed on purge + * [Config] enable cloud tools on i386 + - LP: #1367399 + + [ Marc Dietrich ] + + * [Config] arm/tegra/d-i: framebuffer and usb support for Tegra SoCs + + [ Paolo Pisati ] + + * [Config] armhf: REGULATOR_TWL4030=y + * [Config] armhf: disable JUMP_LABEL + - LP: #1378856 + + [ Tim Gardner ] + + * rebase to v3.17-rc2 + * updateconfigs + * [Config] CONFIG_NFC_ST21NFCB=n + * [Config] Added net/6lowpan/* to generic inclusion list + * [Config] Add arm64 to enforcer CONFIG_CC_STACKPROTECTOR + * rebase to v3.17-rc3 + * rebase to v3.17-rc4 + * rebase to v3.17-rc5 + * [Config] armhf: USB_[E|O]HCI_EXYNOS=y + * [Config] CONFIG_XMON=y + - LP: #1365655 + * [Config] CONFIG_KVM_BOOK3S_64=m for ppc64el + - LP: #1362514 + * [Config] CONFIG_KVM_BOOK3S_64_HV=m + - LP: #1362514 + * [Config] CONFIG_DMA_CMA=n + - LP: #1362261 + * [Config] Add mpt3sas to d-i + - LP: #1368907 + * [Debian] set do_*_tools after stage1 or bootstrap is determined + - LP: #1370211 + * [Config] CONFIG_USB_OHCI_HCD_PCI=y + - LP: #1244176 + * rebase to v3.17-rc6 + * SAUCE: usbip: Update include path + * [Debian] usbip tools packaging + - LP: #898003 + * [Config] Enable usbip tools + - LP: #898003 + * [Config] CONFIG_CRASH_DUMP=n for powerpc-smp + - LP: #1363180 + * [Config] Correct annotation regarding CONFIG_DMA_CMA + - LP: #1362261 + * [Config] CONFIG_SND_HDA_INTEL=n for ppc64el + - LP: #1374438 + * [Config] CONFIG_HOTPLUG_PCI_SHPC=n for ppc64el + - LP: #1374440 + * [Debian] Don't fail if a symlink already exists + * rebase to v3.17-rc7 + * [Config] CONFIG_HOTPLUG_PCI_PCIE=n for ppc64el + - LP: #1374440 + * rebase to v3.17 + * rebase to v3.18-rc1 + * [Config] CONFIG_AUFS_FS=n for FTBS + * Enable vivid + * [Config] CONFIG_SOUND_OSS_CORE_PRECLAIM=n + - LP: #1385510 + * rebase to v3.18-rc2 + * [Debian] Fix linux-doc dangling symlinks + - LP: #661306 + * CONFIG_MODULE_COMPRESS=n + * [Config] dropped scsi_tgt from generic inclusion list + * [Config] Added drivers/uio to generic inclusion list + * [Config] CONFIG_PATA_MACIO=y + - LP: #1378894 + * [Config] CONFIG_DRM_BOCHS=n + * [Debian] install usbipd + - LP: #898003 + + [ Upstream Kernel Changes ] + + * rebase to v3.18-rc2 + + [ Upstream Kernel Changes ] + + * rebase to v3.18-rc1 + - LP: #1316518 + - LP: #1371591 + - LP: #1357928 + + [ Upstream Kernel Changes ] + + * rebase to v3.17 + + [ Upstream Kernel Changes ] + + * rebase to v3.17-rc7 + + [ Upstream Kernel Changes ] + + * rebase to v3.17-rc6 + + [ Upstream Kernel Changes ] + + * rebase to v3.17-rc5 + + [ Upstream Kernel Changes ] + + * rebase to v3.17-rc4 + + [ Upstream Kernel Changes ] + + * rebase to v3.17-rc3 + + [ Upstream Kernel Changes ] + + * rebase to v3.17-rc2 + - LP: #1358116 + - LP: #1350148 + - LP: #1334950 + - LP: #1329580 + - LP: #1329580 + - LP: #1329580 + + [ Upstream Kernel Changes ] + + * rebase to v3.17-rc2 + + -- Tim Gardner Tue, 26 Aug 2014 10:36:19 -0600 + +linux (3.17.0-0.0) utopic; urgency=medium + + * Empty entry + + -- Tim Gardner Tue, 26 Aug 2014 10:34:44 -0600 + +linux (3.16.0-11.16) utopic; urgency=low + + [ Mauricio Faria de Oliveira ] + + * [Config] Switch kernel to vmlinuz (from vmlinux) on ppc64el + - LP: #1358920 + + [ Peter Zijlstra ] + + * SAUCE: (no-up) mmu_notifier: add call_srcu and sync function for listener to delay call and sync + - LP: #1361300 + + [ Tim Gardner ] + + * [Config] CONFIG_ZPOOL=y + - LP: #1360428 + * Release Tracking Bug + - LP: #1361308 + + [ Upstream Kernel Changes ] + + * Revert "net/mlx4_en: Fix bad use of dev_id" + - LP: #1347012 + * net/mlx4_en: Reduce memory consumption on kdump kernel + - LP: #1347012 + * net/mlx4_en: Fix mac_hash database inconsistency + - LP: #1347012 + * net/mlx4_en: Disable blueflame using ethtool private flags + - LP: #1347012 + * net/mlx4_en: current_mac isn't updated in port up + - LP: #1347012 + * net/mlx4_core: Use low memory profile on kdump kernel + - LP: #1347012 + * Drivers: scsi: storvsc: Change the limits to reflect the values on the host + - LP: #1347169 + * Drivers: scsi: storvsc: Set cmd_per_lun to reflect value supported by the Host + - LP: #1347169 + * Drivers: scsi: storvsc: Filter commands based on the storage protocol version + - LP: #1347169 + * Drivers: scsi: storvsc: Fix a bug in handling VMBUS protocol version + - LP: #1347169 + * Drivers: scsi: storvsc: Implement a eh_timed_out handler + - LP: #1347169 + * drivers: scsi: storvsc: Set srb_flags in all cases + - LP: #1347169 + * drivers: scsi: storvsc: Correctly handle TEST_UNIT_READY failure + - LP: #1347169 + * namespaces: Use task_lock and not rcu to protect nsproxy + - LP: #1328088 + * net: xgene: Check negative return value of xgene_enet_get_ring_size() + * mm/zbud: change zbud_alloc size type to size_t + - LP: #1360428 + * mm/zpool: implement common zpool api to zbud/zsmalloc + - LP: #1360428 + * mm/zpool: zbud/zsmalloc implement zpool + - LP: #1360428 + * mm/zpool: update zswap to use zpool + - LP: #1360428 + * ideapad-laptop: Change Lenovo Yoga 2 series rfkill handling + - LP: #1341296 + * iommu/amd: Fix for pasid initialization + - LP: #1361300 + * iommu/amd: Moving PPR fault flags macros definitions + - LP: #1361300 + * iommu/amd: Drop oprofile dependency + - LP: #1361300 + * iommu/amd: Fix typo in amd_iommu_v2 driver + - LP: #1361300 + * iommu/amd: Don't call mmu_notifer_unregister in __unbind_pasid + - LP: #1361300 + * iommu/amd: Don't free pasid_state in mn_release path + - LP: #1361300 + * iommu/amd: Get rid of __unbind_pasid + - LP: #1361300 + * iommu/amd: Drop pasid_state reference in ppr_notifer error path + - LP: #1361300 + * iommu/amd: Add pasid_state->invalid flag + - LP: #1361300 + * iommu/amd: Don't hold a reference to mm_struct + - LP: #1361300 + * iommu/amd: Don't hold a reference to task_struct + - LP: #1361300 + * iommu/amd: Don't call the inv_ctx_cb when pasid is not set up + - LP: #1361300 + * iommu/amd: Don't set pasid_state->mm to NULL in unbind_pasid + - LP: #1361300 + * iommu/amd: Remove change_pte mmu_notifier call-back + - LP: #1361300 + * iommu/amd: Fix device_state reference counting + - LP: #1361300 + * iommu/amd: Fix 2 typos in comments + - LP: #1361300 + + -- Tim Gardner Fri, 22 Aug 2014 08:45:54 -0400 + +linux (3.16.0-10.15) utopic; urgency=low + + [ dann frazier ] + + * [debian] Fix regression with ABI subversions and backport + + [ Feng Kan ] + + * SAUCE: (no-up) irqchip:gic: change access of gicc_ctrl register to read + modify write. + - LP: #1357527 + * SAUCE: (no-up) arm64: optimized copy_to_user and copy_from_user + assembly code + - LP: #1358949 + + [ Stefan Bader ] + + * SAUCE: bcache: prevent crash on changing writeback_running + - LP: #1357295 + + [ Tim Gardner ] + + * [Config] CONFIG_XFRM_STATISTICS=y + * [Config] CONFIG_SECURITY_NETWORK_XFRM=y + * [Config] CONFIG_SENSORS_IBMPOWERNV=m + - LP: #1353005 + * Release Tracking Bug + - LP: #1359783 + + [ Upstream Kernel Changes ] + + * intel_idle: Broadwell support + - LP: #1256170 + * powerpc/book3s: Add basic infrastructure to handle HMI in Linux. + - LP: #1357108 + * powerpc/powernv: Invoke opal call to handle hmi. + - LP: #1357108 + * powerpc/book3s: handle HMIs for cpus in nap mode. + - LP: #1357108 + * powerpc/book3s: Fix endianess issue for HMI handling on napping cpus. + - LP: #1357108 + * powerpc: Add smp_mb() to arch_spin_is_locked() + - LP: #1358569 + * powerpc: Add smp_mb()s to arch_spin_unlock_wait() + - LP: #1358569 + * hwmon: (powerpc/powernv) hwmon driver for power, fan rpm, voltage and + temperature + - LP: #1353005 + * tools/testing/selftests/ptrace/peeksiginfo.c: add PAGE_SIZE definition + - LP: #1358855 + * printk: Add function to return log buffer address and size + - LP: #1359423 + * powerpc/powernv: Interface to register/unregister opal dump region + - LP: #1359423 + * bcache: fix crash on shutdown in passthrough mode + - LP: #1357295 + * bcache: fix uninterruptible sleep in writeback thread + - LP: #1357295 + + [ Vinayak Kale ] + + * SAUCE: (no-up) dt-bindings: Add Potenza PMU binding + - LP: #1357527 + * SAUCE: (no-up) arm64: dts: Add PMU node for APM X-Gene Storm SOC + - LP: #1357527 + + -- Tim Gardner Fri, 15 Aug 2014 12:34:33 -0600 + +linux (3.16.0-9.14) utopic; urgency=low + + [ Tim Gardner ] + + * Release Tracking Bug + - LP: #1357370 + + [ Serge Hallyn ] + + * SAUCE: Overlayfs: allow unprivileged mounts + - LP: #1357025 + + [ Upstream Kernel Changes ] + + * MAINTAINERS: Add entry for APM X-Gene SoC ethernet driver + * Documentation: dts: Add bindings for APM X-Gene SoC ethernet driver + * dts: Add bindings for APM X-Gene SoC ethernet driver + * drivers: net: Add APM X-Gene SoC ethernet driver support. + * powerpc/thp: Add write barrier after updating the valid bit + - LP: #1357014 + * powerpc/thp: Don't recompute vsid and ssize in loop on invalidate + - LP: #1357014 + * powerpc/thp: Invalidate old 64K based hash page mapping before insert + of 4k pte + - LP: #1357014 + * powerpc/thp: Handle combo pages in invalidate + - LP: #1357014 + * powerpc/thp: Invalidate with vpn in loop + - LP: #1357014 + * powerpc/thp: Use ACCESS_ONCE when loading pmdp + - LP: #1357014 + * powerpc/mm: Use read barrier when creating real_pte + - LP: #1357014 + * powerpc/thp: Add tracepoints to track hugepage invalidate + - LP: #1357014 + * rebase to v3.16.1 + + -- Tim Gardner Thu, 14 Aug 2014 08:18:02 -0400 + +linux (3.16.0-8.13) utopic; urgency=low + + [ Tim Gardner ] + + * Release Tracking Bug + - LP: #1356403 + + [ dann frazier ] + + * [debian] Allow for package revisions condusive for branching + + [ Upstream Kernel Changes ] + + * ahci_xgene: Fix the watermark threshold for the APM X-Gene SATA host controller driver. + - LP: #1350087 + * ahci_xgene: Use correct OOB tunning parameters for APM X-Gene SoC AHCI SATA Host controller driver. + - LP: #1350087 + * powerpc/powernv: Enable M64 aperatus for PHB3 + - LP: #1355469 + * powerpc: Fail remap_4k_pfn() if PFN doesn't fit inside PTE + - LP: #1352994 + * powerpc: Add machine_early_initcall() + - LP: #1352640 + * powerpc/powernv: Switch powernv drivers to use machine_xxx_initcall() + - LP: #1352640 + * powerpc/eeh: Avoid event on passed PE + - LP: #1352640 + * powerpc/eeh: EEH support for VFIO PCI device + - LP: #1352640 + * powerpc/eeh: sysfs entries lost + - LP: #1352640 + * powerpc/powernv: Fix IOMMU table for VFIO dev + - LP: #1352640 + * powerpc/eeh: Fetch IOMMU table in reliable way + - LP: #1352640 + * powerpc/eeh: Refactor EEH flag accessors + - LP: #1352640 + * powerpc/eeh: Selectively enable IO for error log + - LP: #1352640 + * powerpc/eeh: Reduce lines of log dump + - LP: #1352640 + * powerpc/eeh: Replace pr_warning() with pr_warn() + - LP: #1352640 + * powerpc/eeh: Make diag-data not endian dependent + - LP: #1352640 + * powerpc/eeh: Aux PE data for error log + - LP: #1352640 + * PCI: Support BAR sizes up to 128GB + - LP: #1352640 + * powerpc/powernv: Allow to freeze PE + - LP: #1352640 + * powerpc/powernv: Split ioda_eeh_get_state() + - LP: #1352640 + * powerpc/powernv: Handle compound PE + - LP: #1352640 + * powerpc/powernv: Handle compound PE for EEH + - LP: #1352640 + * powerpc/powernv: Handle compound PE in config accessors + - LP: #1352640 + * mnt: Only change user settable mount flags in remount + - LP: #1356318 + - CVE-2014-5206 + * mnt: Move the test for MNT_LOCK_READONLY from change_mount_flags into do_remount + - LP: #1356318 + - CVE-2014-5206 + * mnt: Correct permission checks in do_remount + - LP: #1356323 + - CVE-2014-5207 + * mnt: Change the default remount atime from relatime to the existing value + - LP: #1356323 + - CVE-2014-5207 + + -- Tim Gardner Sun, 10 Aug 2014 09:10:51 -0600 + +linux (3.16.0-7.12) utopic; urgency=low + + [ Andy Whitcroft ] + + * rebase to v3.16 final + * [Config] d-i -- add virtio_scsi to virtio-modules + - LP: #1342000 + + [ dann frazier ] + + * [Packaging] Fix 'printchanges' to work with versions containing '+' + + [ Tim Gardner ] + + * [Config] CONFIG_MICROCODE=y + - LP: #1084373 + * [Config] CONFIG_CONTEXT_TRACKING_FORCE=n + - LP: #1349028 + * [Config] Add hv_balloon to d-i virtio-modules + - LP: #1292216 + * Release Tracking Bug + - LP: #1354530 + + [ Upstream Kernel Changes ] + + * rebase to v3.16 + + -- Tim Gardner Tue, 29 Jul 2014 09:55:15 -0400 + +linux (3.16.0-6.11) utopic; urgency=low + + [ Paolo Pisati ] + + * [Config] armhf: MXS_DMA=y && MTD_NAND_GPMI_NAND=m + * [Config] armhf: KEYBOARD_IMX=m + * [Config] armhf: build cubox & imx6 DTBs + * [Config] armhf: RTC_DRV_PCF8523=y + + [ Tim Gardner ] + + * [Config] CONFIG_KEYS_DEBUG_PROC_KEYS=y + - LP: #1344405 + * [Config] CONFIG_SCSI_IPR_TRACE=y, CONFIG_SCSI_IPR_DUMP=y + - LP: #1343109 + * Release Tracking Bug + - LP: #1349196 + + [ Upstream Kernel Changes ] + + * rebase to v3.16-rc7 + + -- Tim Gardner Thu, 24 Jul 2014 09:08:55 -0400 + +linux (3.16.0-5.10) utopic; urgency=low + + [ Tim Gardner ] + + * Release Tracking Bug + - LP: #1346298 + * [Config] CONFIG_GPIO_SYSFS=y + - LP: #1342153 + * rebase to v3.16-rc6 + + [ Paolo Pisati ] + + * [Config] enable ARCH_MVEBU* + * [Config] AHCI_MVEBU=m + * [Config] ARMADA_THERMAL=y + * [Config] ARM_ARMADA_370_XP_CPUIDLE=y + * [Config] CRYPTO_DEV_MV_CESA=m + * [Config] I2C_MV64XXX=m + * [Config] MMC_MVSDIO=m + * [Config] MMC_SDHCI_DOVE=m + * [Config] MTD_NAND_ORION=m + * [Config] MTD_NAND_PXA3xx=m + * [Config] MVNETA=m + * [Config] MV_XOR=y + * [Config] ORION_WATCHDOG=m + * [Config] PCI_MVEBU=y + * [Config] RTC_DRV_MV=y + * [Config] SND_KIRKWOOD_SOC*=m + * [Config] SPI_ORION=m + * [Config] USB_XHCI_MVEBU=m + * [Config] armhf: build all Armada and Dove DTBs + * [Config] armhf: SERIAL_8250_DW=y + + [ Upstream Kernel Changes ] + + * rebase to v3.16-rc6 + + -- Tim Gardner Tue, 15 Jul 2014 07:49:42 -0400 + +linux (3.16.0-4.9) utopic; urgency=low + + [ Tim Gardner ] + + * Release Tracking Bug + - LP: #1341543 + + [ Upstream Kernel Changes ] + + * rebase to v3.16-rc5 + + -- Tim Gardner Sun, 13 Jul 2014 21:30:27 -0400 + +linux (3.16.0-3.8) utopic; urgency=low + + [ Tim Gardner ] + + * Release Tracking Bug + - LP: #1340091 + + -- Tim Gardner Thu, 10 Jul 2014 10:06:47 +0100 + +linux (3.16.0-2.7) utopic; urgency=low + + [ Andy Whitcroft ] + + * ubuntu: aufs3 -- avoid aufs3-mmap.patch include hell for arm64 + ubuntu: aufs3 -- (no-up) aufs3-mmap.patch + + -- Tim Gardner Wed, 09 Jul 2014 16:16:28 +0100 + +linux (3.16.0-2.6) utopic; urgency=low + + [ Andy Whitcroft ] + + * Revert "ubuntu: aufs3 -- (no-up) aufs3-mmap.patch" + Fixes FTBS. + + -- Tim Gardner Tue, 08 Jul 2014 17:29:26 +0100 + +linux (3.16.0-2.5) utopic; urgency=low + + [ Andy Whitcroft ] + + * ubuntu -- fix basic format for ubuntu/Makefile + * ubuntu: AUFS (no-squash): basic framework and update machinary + * ubuntu: aufs3 -- update update scripting + * ubuntu: aufs3 -- (no-up) aufs3-base.patch + * ubuntu: aufs3 -- (no-up) aufs3-mmap.patch + * ubuntu: aufs3 -- (no-up) aufs3-standalone.patch + * ubuntu: AUFS -- update to dcf336a754c86d5ee1c3d50699fd75c586d037cb + * [Configs] AUFS configs + * ubuntu: aufs3 -- reenable + + [ Tim Gardner ] + + * CONFIG_LATENCYTOP=n + + -- Tim Gardner Tue, 08 Jul 2014 15:27:35 +0100 + +linux (3.16.0-2.4) utopic; urgency=low + + [ Andy Whitcroft ] + + * [Config] flip VIRTIO*=y + * [Config] commonise CONFIG_SWIOTLB=y + * [Config] apply Bus options (PCI etc.) >> PCI support config defaults + * [Config] apply Device Drivers >> ATA/ATAPI/MFM/RLL support (DEPRECATED) + config defaults + * [Config] apply Device Drivers >> Block devices config defaults + * [Config] apply Device Drivers >> Character devices config defaults + * [Config] apply Device Drivers >> DMA Engine support config defaults + * [Config] apply Device Drivers >> EDAC (Error Detection And Correction) + reporting config defaults + * [Config] apply Device Drivers >> Graphics support >> Direct Rendering + Manager >> Direct Rendering Manager (XFree86 4.1.0 and higher DRI + support) config defaults + * [Config] apply Device Drivers >> GPIO Support config defaults + * [Config] apply Device Drivers >> Graphics support >> Console display + driver support config defaults + * [Config] apply Device Drivers >> IIO staging drivers >> Accelerometers + config defaults + * [Config] apply Device Drivers >> IOMMU Hardware Support config defaults + * [Config] apply Device Drivers >> Input device support >> Generic input + layer (needed for keyboard, mouse, ...) >> Miscellaneous devices config + defaults + * [Config] apply Device Drivers >> Input device support >> Hardware I/O + ports config defaults + * [Config] apply Device Drivers >> LED Support >> LED Class Support + config defaults + * [Config] apply Device Drivers >> Hardware Spinlock drivers config + defaults + * [Config] apply Device Drivers >> Multimedia support >> Cameras/video + grabbers support config defaults + * [Config] apply Security options config defaults + * [Config] apply Networking options >> Network packet filtering framework + (Netfilter) >> Core Netfilter Configuration config defaults + * [Config] apply Device Drivers >> MMC/SD/SDIO card support config + defaults + * [Config] apply Device Drivers >> Graphics support >> Frame buffer + Devices >> Support for frame buffer devices config defaults + * [Config] apply Power management and ACPI options >> CPU Frequency + scaling config defaults + * [Config] apply Processor type and features config defaults + * [Config] apply Partition Types config defaults + * [Config] apply Power management and ACPI options config defaults + * [Config] apply Device Drivers >> InfiniBand support config defaults + * [Config] apply Device Drivers >> Misc devices config defaults + * [Config] apply Device Drivers >> Multifunction device drivers config + defaults + * [Config] apply Device Drivers >> SCSI device support >> SCSI device + support >> SCSI low-level drivers config defaults + * [Config] apply Device Drivers >> Network device support >> Ethernet + driver support config defaults + * [Config] apply Device Drivers >> Network device support >> Network core + driver support config defaults + * [Config] apply Device Drivers >> Network device support >> PHY Device + support and infrastructure config defaults + * [Config] apply File systems >> Network File Systems config defaults + * [Config] apply Device Drivers >> Input device support >> Generic input + layer (needed for keyboard, mouse, ...) >> Touchscreens config defaults + * [Config] apply Device Drivers >> Memory Technology Device (MTD) support + >> NAND Device Support config defaults + * [Config] apply Device Drivers >> Network device support >> Wireless LAN + >> Ralink driver support config defaults + * [Config] apply Device Drivers >> Staging drivers config defaults + * [Config] apply Cryptographic API >> Hardware crypto devices config + defaults + * [Config] apply Device Drivers >> Macintosh device drivers config + defaults + * [Config] apply Device Drivers >> Network device support >> Wireless LAN + config defaults + * [Config] apply Device Drivers >> PPS support config defaults + * [Config] apply Device Drivers >> Sound card support config defaults + * [Config] apply Networking support >> RF switch subsystem support config + defaults + * [Config] apply Library routines config defaults + * [Config] apply Device Drivers >> CODEC drivers config defaults + * [Config] apply Device Drivers >> PHY Subsystem config defaults + * [Config] apply Device Drivers >> Pulse-Width Modulation (PWM) Support + config defaults + * [Config] apply Kernel hacking >> Tracers config defaults + * [Config] apply Kernel hacking >> Runtime Testing config defaults + * [Config] apply Kernel hacking >> Architecture: powerpc config defaults + * [Config] apply Device Drivers >> USB support config defaults + * [Config] apply Device Drivers >> Power supply class support config + defaults + * [Config] apply Device Drivers >> USB Network Adapters config defaults + * [Config] apply General setup >> IRQ subsystem config defaults + * [Config] apply General setup config defaults + * [Config] apply File systems >> Miscellaneous filesystems config + defaults + * [Config] apply File systems config defaults + * [Config] apply Device Drivers >> Userspace I/O drivers config defaults + * [Config] apply Device Drivers >> Virtio drivers config defaults + * [Config] apply Device Drivers >> USB Peripheral Controller config + defaults + * [Config] apply Device Drivers >> SCSI device support >> SCSI device + support >> SCSI Transports config defaults + * [Config] apply Device Drivers >> Real Time Clock config defaults + * [Config] apply Device Drivers >> Serial ATA and Parallel ATA drivers + (libata) config defaults + * [Config] apply Device Drivers >> SoC Audio for Freescale CPUs config + defaults + * [Config] apply Device Drivers >> Voltage and Current Regulator Support + config defaults + * [Config] apply Device Drivers >> USB Physical Layer drivers config + defaults + * [Config] apply Device Drivers >> Watchdog Timer Support config defaults + * [Config] powerpc-powerpc-e500mc FTBFS -- CONFIG_CRASH_DUMP=n + * [Config] powerpc-powerpc64-emb FTBFS -- CONFIG_IMA=n + * [Config] powerpc-powerpc64-emb FTBFS -- CONFIG_HIBERNATION=n + CONFIG_HOTPLUG_CPU=n + * [Config] ppc64el-generic FTBFS -- CONFIG_LUSTRE_FS=n + * [Config] drivers/message/fusion needs scsi_transport_spi in virtual + * [Config] drivers/acpi/acpi_ipmi.ko needs + drivers/char/ipmi/ipmi_msghandler.ko in virtual + * [Config] armhf-* FTBFS -- CONFIG_STACK_TRACER=n + CONFIG_FUNCTION_TRACER=n + * [Config] ignore modules changing following major config changes + + [ Tim Gardner ] + + * rebase to v3.16-rc4 + + [ Upstream Kernel Changes ] + + * rebase to v3.16-rc4 + - LP: #1297581 + + -- Andy Whitcroft Thu, 03 Jul 2014 11:00:43 +0100 + +linux (3.16.0-1.3) utopic; urgency=low + + [ Andy Whitcroft ] + + * Revert "Disable do_tools_perf for FTBS" + * SAUCE: fix perf_regs definitions for arm64 + + [ Paolo Pisati ] + + * [Config] armhf: ARCH_EXYNOS5* support + * [Config] armhf: CPU_IDLE=y and ARM_EXYNOS_CPUIDLE=y + * [Config] armhf: EXYNOS_THERMAL=y + * [Config] armhf: EXYNOS_IOMMU=y + * [Config] armhf: EXYNOS_ADC=m + * [Config] armhf: EXYNOS_I2C_EXYNOS5=m + * [Config] armhf: MMC_SDHCI_S3C=m + * [Config] armhf: PCI_EXYNOS=y + * [Config] armhf: PHY_EXYNOS5250_SATA=y + * [Config] armhf: USB_[E|O]HCI_EXYNOS=y && SAMSUNG_USBPHY=y + * [Config] armhf: PWM_SAMSUNG=m + * [Config] armhf: RTC_DRV_S3C=y + * [Config] armhf: S3C2410_WATCHDOG=m + * [Config] armhf: MMC_DW_EXYNOS=m + * [Config] armhf: SERIAL_SAMSUNG=y + * [Config] armhf: SND_SOC_SAMSUNG=m + * [Config] armhf: SPI_S3C64XX=m + * [Config] armhf: EXYNOS_VIDEO=y and VIDEO_SAMSUNG*=m + * [Config] armhf: FB_S3C=m + * [Config] armhf: build all Exynos 5 DTBs + * [Config] armhf: disable CPUFREQ_EXYNOS + + [ Tim Gardner ] + + * rebase to v3.16-rc3 + + [ Upstream Kernel Changes ] + + * rebase to v3.16-rc3 + - LP: #1331915 + + -- Tim Gardner Tue, 24 Jun 2014 08:58:09 -0600 + +linux (3.16.0-0.2) utopic; urgency=low + + [ Tim Gardner ] + + * Revert "SAUCE: intel_pstate -- toggle default to disable" + - LP: #1333322 + * CONFIG_BOOKE_WDT=y + * Disable do_tools_perf for FTBS (just until I can figure it out) + + -- Tim Gardner Mon, 23 Jun 2014 13:37:53 -0600 + +linux (3.16.0-0.1) utopic; urgency=low + + [ Tim Gardner ] + + * Release Tracking Bug + - LP: #1333265 + + [ Andy Whitcroft ] + + * [Config] cloud-tools -- add systemd units + - LP: #1329027 + + [ dann frazier ] + + * [Config] CONFIG_RTC_DRV_XGENE=y for arm64 + * [Config] CONFIG_NET_XGENE=m for arm64 + * [Config] Restrict CONFIG_POWER_RESET_SYSCON to arm64 only + + [ Feng Kan ] + + * SAUCE: (no-up) arm64: dts: Add X-Gene reboot driver dts node + * SAUCE: (no-up) Add documentation for generic SYSCON reboot driver. + * SAUCE: (no-up) Select reboot driver for X-Gene platform. + + [ Iyappan Subramanian ] + + * SAUCE: (no-up) MAINTAINERS: Add entry for APM X-Gene SoC ethernet driver + * SAUCE: (no-up) Documentation: dts: Add bindings for APM X-Gene SoC ethernet driver + * SAUCE: (no-up) dts: Add bindings for APM X-Gene SoC ethernet driver + * SAUCE: (no-up) drivers: net: Add APM X-Gene SoC ethernet driver support. + + [ Tim Gardner ] + + * updateconfigs + * Fix arm64 crypto Makefile + * [Config] CONFIG_BOOKE_WDT=n for FTBS + * [Debian] Add UTS_UBUNTU_RELEASE_ABI to utsrelease.h + - LP: #1327619 + * Disabled powerpc64-emb for FTBS + * [Config] CONFIG_DRM_TEGRA=m + * [Config] CONFIG_CMA_SIZE_MBYTES=64 + * rebase to v3.16-rc2 + * Clean up generic.inclusion-list warnings + + [ Upstream Kernel Changes ] + + * rebase to v3.16-rc2 + - LP: #1328587 + - LP: #1319291 + - LP: #1310512 + - LP: #1310512 + - LP: #1305480 + + -- Tim Gardner Thu, 12 Jun 2014 12:26:09 +0000 + +linux (3.15.0-6.11) utopic; urgency=low + + [ Adam Conrad ] + + * Enable building the sata-modules udeb on ppc64el. + - LP: #1323980 + * [Packaging] Set bootloader and loader on ppc64el to grub + + [ Adam Lee ] + + * SAUCE: (no-up) rtlwifi: rtl8723be: disable MSI interrupts mode + - LP: #1310512, #1320070 + + [ Alex Hung ] + + * SAUCE: (no-up) dell-led: add mic mute led interface + - LP: #1308297 + + [ Andy Whitcroft ] + + * [Config] d-i -- add hyperv_keyboard to serial-modules udeb + - LP: #1285434 + * [Config] tools -- enable cpupower on ppc64el + * [Config] ppc64el -- enable perf tools + * [Config] powerpc -- enable perf tools + * [Config] ppc64el -- reduce MAX_ORDER with 64k pages + * [Config] arm64 -- enable tools + - LP: #1326050 + * [Config] switch hyper-keyboard to virtual + - LP: #1325306 + * [Config] fix up Breaks/Replaces on linux-cloud-tools-common to fix + upgrades + * SAUCE: kvm: BIOS disabled kvm support should be a warning + - LP: #1300247 + * SAUCE: nouveau: missing outputs should be warnings + - LP: #1300244 + * [Config] d-i -- add nvme devices to block-modules udeb + - LP: #1303710 + + [ Anton Blanchard ] + + * SAUCE: (no-up) powerpc: 64bit sendfile is capped at 2GB + - LP: #1328230 + + [ Colin Ian King ] + + * SAUCE: intel_pstate: inform user that thermald is worth considering + + [ Dave Chiluk ] + + * [Config] Enable CONFIG_IP_VS_IPV6=y + - LP: #1300739 + + [ Paolo Pisati ] + + * [Config] build vexpress a9 dtb + - LP: #1303657 + + [ Tetsuo Handa ] + + * SAUCE: kthread: Do not leave kthread_create() immediately upon SIGKILL. + + [ Tim Gardner ] + + * Release Tracking Bug + - LP: #1329045 + * [Debian] Treat vdso install as an environment variable + - LP: #1325713 + * [Config] Treat vdso install as an environment variable + - LP: #1325713 + * [config] Set IPMI suppoort default to "y" + * [Config] powerpc -- CONFIG_SCSI_IBMVSCSI=y + * [Config] CONFIG_RT_GROUP_SCHED=n + - LP: #1284731 + * [Config] ppc64el -- switch to 64K system pages + * [Config] CONFIG_MICROCODE_EARLY=y + * [Config] SND_DAVINCI_SOC && SND_AM33XX_SOC_EVM =m + * [Config] armhf: DRM_TILCDC=m + * SAUCE: (no-up) mei_me: Add module parameter to disable MSI + * [Config] arm64: KVM=y + * [Config] armhf: LEDS_TRIGGER_HEARTBEAT=y + * [Config] armhf: generic: disable CPU_IDLE + * [Config] armhf: CPU_FREQ=y + * [Config] Add new mlx modules to d-i + * [Config] Added Muti-Arch support for linux-headers-PKGVER-ABINUM, linux-tools-common, and linux-cloud-tools-common + - LP: #1295112 + * [Config] CONFIG_EXYNOS_ADC=n, CONFIG_HW_RANDOM_EXYNOS=n, CONFIG_MMC_DW_EXYNOS=n, CONFIG_USB_DWC3_EXYNOS=n + - LP: #1294353 + * [Config] CONFIG_ABX500_CORE=y for ppc64el + * [Config] CONFIG_ALX=m for powerpc + * [Config] CONFIG_ACENIC_OMIT_TIGON_I=n for ppc64el + * [Config] CONFIG_ACORN_PARTITION_*=n for ppc64el + * [Config] CONFIG_ANDROID=n for powerpc + * [Config] CONFIG_ASYNC_RAID6_TEST=m for ppc64el + * [Config] CONFIG_BIG_KEYS=y for ppc64el + * [Config] CONFIG_BSD_PROCESS_ACCT=y for ppc64el + * rebase to v3.15 + * [Config] CONFIG_PHY_XGENE=y + * [Config] CONFIG_MLX4_DEBUG=y + - LP: #1328256 + * [Config] CONFIG_POWERNV_CPUFREQ=y for powerpc, ppc64el + - LP: #1324571 + * [Config] CONFIG_BLK_DEV_SR_VENDOR=n for ppc64el + * [Config] CONFIG_CFG80211=m for ppc64el + * [Config] CONFIG_CHARGER_BQ24190=m for powerpc + * [Config] CONFIG_CHARGER_BQ24735=m for powerpc + * [Config] CONFIG_EXPERT=y for ppc64el + * [Config] CONFIG_ATA_SFF=y on ppc64el + * [Config] CONFIG_ATA_GENERIC=y for ppc64el, powerpc + * [Config] CONFIG_CHR_DEV_ST=m for ppc64el + * [Config] CONFIG_CHECKPOINT_RESTORE=y for ppc64el + * [Config] CONFIG_CHELSIO_T1_1G=y for ppc64el + * [Config] CONFIG_CHR_DEV_OSST=m for ppc64el + * [Config] CONFIG_CHR_DEV_SCH=m for ppc64el + * [Config] CONFIG_CPU_FREQ_STAT=y for powerpc + * [Config] CONFIG_DDR=y for ppc64el + * [Config] CONFIG_DEBUG_BUGVERBOSE=y for powerpc + * [Config] CONFIG_E100=m, CONFIG_E1000=m, CONFIG_E1000E=m for ppc64el + * [Config] CONFIG_EZX_PCAP=n for all arches + * [Config] CONFIG_DYNAMIC_DEBUG=y for powerpc + * [Config] CONFIG_ENABLE_MUST_CHECK=n for ppc64el + * [Config] CONFIG_ENABLE_WARN_DEPRECATED=n for ppc64el + * [Config] CONFIG_FB_3DFX=m for all arches + * [Config] CONFIG_FB_MATROX=m for ppc64el + * [Config] CONFIG_FB_RADEON=m for ppc64el + * [Config] CONFIG_FB_SAVAGE_I2C=y for all arches + * [Config] CONFIG_FIREWIRE=m for ppc64el + * [Config] CONFIG_FTR_FIXUP_SELFTEST=n for ppc64el + * [Config] CONFIG_HAMRADIO=y for ppc64el + * [Config] CONFIG_I2C_CHARDEV=m for ppc64el + * [Config] CONFIG_I2C_MUX=m for ppc64el + * [Config] CONFIG_I2C_STUB=m for ppc64el + * [Config] CONFIG_I2O=m for ppc64el + * [Config] CONFIG_INET_XFRM_MODE_BEET=m, CONFIG_INET_XFRM_MODE_TRANSPORT=m, CONFIG_INET_XFRM_MODE_TUNNEL=m for ppc64el + * [Config] CONFIG_INFINIBAND_IPOIB_DEBUG=n, CONFIG_INFINIBAND_MTHCA_DEBUG=n for ppc64el + * [Config] CONFIG_INFINIBAND_NES=m, CONFIG_INFINIBAND_OCRDMA=m, CONFIG_INFINIBAND_QIB=m for ppc64el + * [Config] CONFIG_INPUT_FF_MEMLESS=m for ppc64el + * [Config] CONFIG_INTERVAL_TREE_TEST=m for ppc64el + * [Config] CONFIG_IPACK_BUS=m for ppc64el + * [Config] CONFIG_ISDN=y for ppc64el + * [Config] CONFIG_ISO9660_FS=m for ppc64el + * [Config] CONFIG_KGDB=y for ppc64el + * [Config] CONFIG_KVM_GUEST=y for ppc64el + * [Config] CONFIG_L2TP_V3=y for powerpc + * [Config] CONFIG_MAILBOX=y for ppc64el + * [Config] CONFIG_MD_LINEAR=m, CONFIG_MD_RAID0=m, CONFIG_MD_RAID1=m for ppc64el + * [Config] CONFIG_MEDIA_SUPPORT=m for ppc64el + * [Config] CONFIG_MEMORY=y for ppc64el + * [Config] CONFIG_MEMSTICK=m for ppc64el + * [Config] CONFIG_MFD_SM501_GPIO=n for ppc64el + * [Config] CONFIG_MMC_BLOCK=m for ppc64el + * [Config] CONFIG_MOUSE_PS2=m for ppc64el + * [Config] CONFIG_NET_9P=m for ppc64el + * [Config] CONFIG_MSDOS_FS=m for ppc64el + * [Config] CONFIG_MSI_BITMAP_SELFTEST=n for ppc64el + * [Config] CONFIG_MTD=m for arm64 + * [Config] CONFIG_NETCONSOLE=m for ppc64el + * [Config] CONFIG_NETFILTER_XT_TARGET_NOTRACK=m for ppc64el + * [Config] CONFIG_NET_IPIP=m for ppc64el + * [Config] CONFIG_NET_TEAM=m for all arches + * [Config] CONFIG_NFC=m for ppc64el + * [Config] CONFIG_NL80211_TESTMODE=n for all arches + * [Config] CONFIG_NLS_CODEPAGE_437=y for powerpc + * [Config] CONFIG_NLS_ASCII=m, CONFIG_NLS_ISO8859_1=m, CONFIG_NLS_UTF8=m for ppc64el + * [Config] CONFIG_NOP_USB_XCEIV=m for ppc64el + * [Config] CONFIG_NOTIFIER_ERROR_INJECTION=m for ppc64el + * [Config] CONFIG_OPROFILE=m for ppc64el + * [Config] CONFIG_PARPORT_1284=y for ppc64el + * [Config] CONFIG_PARPORT_AX88796=m, CONFIG_PARPORT_PC_FIFO=y, CONFIG_PARPORT_SERIAL=m for ppc64el + * [Config] CONFIG_8723AU_P2P=n + * [Config] CONFIG_PCI_IOV=y, CONFIG_PCI_PASID=y, CONFIG_PCI_PRI=y, CONFIG_PCI_REALLOC_ENABLE_AUTO=y, CONFIG_PCI_STUB=m for ppc64el + * [Config] CONFIG_PCNET32=m for ppc64el + * [Config] CONFIG_SCSI_DH_EMC=m for ppc64el + * [Config] CONFIG_SCSI_DH_HP_SW=m for ppc64el + * [Config] CONFIG_SCSI_FC_ATTRS=m for ppc64el + * [Config] CONFIG_SCSI_IPR=m for ppc64el + * [Config] CONFIG_SCSI_LOGGING=y for ppc64el + * [Config] CONFIG_SCSI_OSD_INITIATOR=m for ppc64el + * [Config] CONFIG_SCSI_SCAN_ASYNC=y for ppc64el + * [Config] CONFIG_SCSI_SYM53C8XX_2=m for ppc64el + * [Config] CONFIG_XILINX_LL_TEMAC=m for powerpc + * [Config] CONFIG_WQ_POWER_EFFICIENT_DEFAULT=y for ppc64el + * [Config] CONFIG_WLAN=y for arm64 + * [Config] CONFIG_VORTEX=m for ppc64el + * [Config] CONFIG_WIMAX=m for ppc64el + * [Config] CONFIG_WATCHDOG=y for ppc64el + * [Config] CONFIG_VIRT_DRIVERS=y for ppc64el + * [Config] CONFIG_VERSION_SIGNATURE="" for powerpc64-emb + * [Config] CONFIG_UWB=m for ppc64el + * [Config] CONFIG_USB_STORAGE=y + * [Config] CONFIG_SATA_AHCI_PLATFORM=y for armhf + * [Config] CONFIG_HID_RMI=m + * [Config] CONFIG_HVC_DCC=n + - LP: #1303657 + + [ Upstream Kernel Changes ] + + * mm/numa: Remove BUG_ON() in __handle_mm_fault() + - LP: #1323165 + * powerpc/powernv: Add calls to support little endian host + - LP: #1327400 + * HID: rmi: introduce RMI driver for Synaptics touchpads + * HID: rmi: do not stop the device at the end of probe + * HID: rmi: check for the existence of some optional queries before reading query 12 + * HID: rmi: do not fetch more than 16 bytes in a query + * HID: rmi: fix wrong struct field name + * HID: rmi: fix masks for x and w_x data + * HID: rmi: do not handle touchscreens through hid-rmi + * ALSA: pcm: 'BUG:' message unnecessarily triggers kerneloops + - LP: #1305480 + * rebase to v3.15 + + -- Tim Gardner Tue, 03 Jun 2014 17:02:49 +0000 + +linux (3.15.0-5.10) utopic; urgency=low + + [ Tim Gardner ] + + * Release Tracking Bug + - LP: #1325596 + * [Config] CONFIG_POWERNV_CPUFREQ=y for ppc64el + * rebase to v3.15-rc8 + + [ Upstream Kernel Changes ] + + * rebase to v3.15-rc8 + + -- Tim Gardner Mon, 02 Jun 2014 12:59:34 +0000 + +linux (3.15.0-4.9) utopic; urgency=low + + * no change rebuild to fix embeded debhelper. + + -- Andy Whitcroft Thu, 29 May 2014 12:41:58 +0100 + +linux (3.15.0-4.8) utopic; urgency=low + + [ Andy Whitcroft ] + + * Release Tracking Bug + - LP: #1324107 + * [Config] enable SECURITY_APPARMOR_UNCONFINED_INIT + + [ Javier Martinez Canillas ] + + * SAUCE: (no-up) apparmor: fix bug that constantly spam the console + - LP: #1323526 + + [ John Johansen ] + + * SAUCE: (no-up) apparmor: Sync to apparmor3 - alpha6 snapshot + - LP: #1323528 + * SAUCE: (no-up) apparmor: fix apparmor spams log with warning message + - LP: #1308761 + * SAUCE: (no-up) apparmor: fix refcount bug in apparmor pivotroot + - LP: #1308765 + * SAUCE: (no-up): apparmor: fix apparmor refcount bug in apparmor_kill + - LP: #1308764 + * SAUCE: (no-up): apparmor: use custom write_is_locked macro + - LP: #1323530 + + [ Kamal Mostafa ] + + * [Config] add debian/gbp.conf + + [ Tim Gardner ] + + * [Config] CONFIG_SATA_AHCI=m for ppc64el + - LP: #1323980 + + -- Andy Whitcroft Wed, 28 May 2014 12:47:17 +0100 + +linux (3.15.0-3.7) utopic; urgency=low + + [ Tim Gardner ] + + * Release Tracking Bug + - LP: #1323189 + + [ Andy Whitcroft ] + + * [Config] autopkgtest -- need fakeroot for tests + + [ Upstream Kernel Changes ] + + * rebase to v3.15-rc7 + + -- Tim Gardner Mon, 26 May 2014 08:12:50 +0200 + +linux (3.15.0-2.6) utopic; urgency=low + + [ Andy Whitcroft ] + + * [Config] remove the kernel-image firmware list on clean + + [ Martin Pitt ] + + * [Config] autopkgtest -- switch to significantly faster rebuild + + [ Stefan Bader ] + + * [Config]: Add missing modules to inclusion list + + [ Tim Gardner ] + + * [debian] Dynamically generate the kernel-image udebs firmware list + * [d-i] firmware/kernel-image is generated + * rebase to v3.15-rc6 + * Release Tracking Bug + - LP: #1322251 + + [ Upstream Kernel Changes ] + + * rebase to v3.15-rc6 + - LP: #1297581 + + -- Tim Gardner Wed, 21 May 2014 10:51:29 -0700 + +linux (3.15.0-1.5) utopic; urgency=low + + [ Tim Gardner ] + + * [Config] Add apm-mustang.dtb to kernel-image udeb + + -- Tim Gardner Mon, 19 May 2014 14:47:42 -0700 + +linux (3.15.0-1.4) utopic; urgency=low + + [ Andy Whitcroft ] + + * Revert "SAUCE: (no-up) hv -- bodge hv_vss_daemon so it can use the + local linux/hyperv.h" + * Revert "SAUCE: (no-up) hv -- bodge hv_kvp_daemon so it can use the + local linux/hyperv.h" + * [Packaging] tools -- hv tools build correctly against the built headers + * [Packaging] cloud-tools -- add the hv_fcopy_daemon to the package + * cloud-tools -- pull in init scripts for Hyper-V daemons + * cloud-tools -- detect Hyper-V VM to avoid starting + * cloud-tools -- update IF_NAME to DEVICE in hv_* scripts + - LP: #1295401 + * [Config] cloud-tools: reenable cloud-tools + + -- Andy Whitcroft Sun, 18 May 2014 19:21:04 +0100 + +linux (3.15.0-1.3) utopic; urgency=low + + [ Andy Whitcroft ] + + * [Packaging] ppc64el is a powerpc kernel arch and needs its quirks + - LP: #1318848 + + [ Ben Collins ] + + * [Config] Switch to grub-ieee1275 as recommended on book3e systems + - LP: #1318629 + + [ Tim Gardner ] + + * [Config] CONFIG_FSL_PAMU=n + - LP: #1311738 + * Release Tracking Bug + - LP: #1320239 + + -- Tim Gardner Fri, 16 May 2014 07:37:07 -0600 + +linux (3.15.0-1.2) utopic; urgency=low + + [ Tim Gardner ] + + * Release Tracking Bug + - LP: #1318171 + * Add rpcsec_gss_krb5 to generic inclusion list + - LP: #769527 + * rebase to v3.15-rc5 + + [ Upstream Kernel Changes ] + + * rebase to v3.15-rc5 + - LP: #1297581 + + -- Tim Gardner Tue, 06 May 2014 15:20:10 -0500 + +linux (3.15.0-0.1) utopic; urgency=low + + [ Upstream Kernel Changes ] + + * rebase to v3.15-rc4 + - LP: #1297581 + - LP: #1297581 + - LP: #1305133 + - LP: #1297581 + - LP: #1297581 + - LP: #871808 + - LP: #1260303 + - LP: #1268468 + - LP: #1248116 + - LP: #1211920 + - LP: #1259790 + - LP: #1259437 + - LP: #1259435 + - LP: #1268468 + + -- Tim Gardner Fri, 07 Feb 2014 09:35:13 -0700 + +linux (3.15.0-0.0) utopic; urgency=low + + * Initial version for 3.15. + + -- Andy Whitcroft Fri, 02 May 2014 15:06:39 +0100 + +linux (3.13.0-8.27) trusty; urgency=low + + [ John Johansen ] + + * SAUCE: Add config option to disable new apparmor 3 semantics + -LP: #1270215 + + [ Tim Gardner ] + + * [debian] Fix indep_hdrs_pkg_name + - LP: #1134441 + * Update lttng to 00808267d3ba7cdcddfed7bec7e62a40463c1307 Version 2.4.0-rc3 + * Enabled lttng build + * Don't build lttng for armhf + lttng hates gcc-4.8 for armhf + * Release Tracking Bug + - LP: #1277309 + + [ Upstream Kernel Changes ] + + * rebase to v3.13.2 + - LP: #1260303 + - LP: #1260303 + - LP: #1268468 + + -- Tim Gardner Thu, 06 Feb 2014 09:25:51 -0700 + +linux (3.13.0-7.26) trusty; urgency=low + + [ John Johansen ] + + * SAUCE: apparmor: fix uninitialized lsm_audit membe + - LP: #1268727 + * Add config option to optionally enable new apparmor 3 semantics + + [ Tim Gardner ] + + * [Config] Add lowlatency to getabis + * [Config] CONFIG_SECURITY_APPARMOR_AA3_SEMANTICS=y + - LP: #1270215 + * Release Tracking Bug + - LP: #1276810 + + [ Upstream Kernel Changes ] + + * x86, x32: Correct invalid use of user timespec in the kernel + - LP: #1274349 + - CVE-2014-0038 + + -- Tim Gardner Wed, 05 Feb 2014 15:49:44 -0500 + +linux (3.13.0-7.25) trusty; urgency=low + + [ Andy Whitcroft ] + + * Revert "SAUCE: fix fmd headers" + * SAUCE: fix fmd headers + + -- Andy Whitcroft Tue, 04 Feb 2014 09:36:09 +0000 + +linux (3.13.0-7.24) trusty; urgency=low + + [ Stefan Bader ] + + * [Config] Make vmwgfx driver enable the framebuffer device + + [ Tim Gardner ] + + * rebase to v3.13.1 + * [Config] CONFIG_NFS_FS=m for ppc64el + * [Config] CONFIG_X86_SYSFB=n + https://lists.ubuntu.com/archives/kernel-team/2014-February/038166.html + * Release Tracking Bug + - LP: #1275898 + + [ Upstream Kernel Changes ] + + * i2c: piix4: Add support for AMD ML and CZ SMBus changes + - LP: #1272525 + * i2c: piix4: Use different message for AMD Auxiliary SMBus Controller + - LP: #1272525 + * mm: ignore VM_SOFTDIRTY on VMA merging + - LP: #1274917 + * drm/radeon: disable dpm on BTC + - LP: #1266984 + + [ Upstream Kernel Changes ] + + * rebase to v3.13.1 + + -- Tim Gardner Thu, 30 Jan 2014 15:24:48 +0000 + +linux (3.13.0-6.23) trusty; urgency=low + + [ Andy Whitcroft ] + + * [Config] fix up architecture for linux-tools + + -- Andy Whitcroft Thu, 30 Jan 2014 09:00:41 +0000 + +linux (3.13.0-6.22) trusty; urgency=low + + [ Andy Whitcroft ] + + * [Packaging] limit linux-udebs- to matching arch + * [Config] powerpc -- disable perf to fix FTBFS + * [Config] ppc64el -- fix up missing udebs + + -- Andy Whitcroft Wed, 29 Jan 2014 16:00:28 +0000 + +linux (3.13.0-6.21) trusty; urgency=low + + [ Andy Fleming ] + + * SAUCE: net: Add support for handling queueing in hardware + * SAUCE: of_mdio: Add of_phy_attach function + * SAUCE: phylib: Add generic 10G driver + * SAUCE: phylib: Support attaching to gen10g_driver + * SAUCE: phylib: Add Clause 45 read/write functions + + [ Andy Whitcroft ] + + * SAUCE: fix fmd headers + * [Packaging] lowlatency -- merge out of tree flavours + * SAUCE: allow IRQs to be irq-threaded by default via config + * [Config]: enable CONFIG_IRQ_FORCED_THREADING_DEFAULT for lowlatency + * [Config] powerpc -- fix up Build-depends: + * Release Tracking Bug + - LP: #1273747 + + [ Ben Collins ] + + * SAUCE: PPC: PCI: Fix pcibios_io_space_offset() so it works for 32-bit + ptr/64-bit rsrcs + * SAUCE: Revert "phy: vitesse make vsc824x_add_skew static" + * SAUCE: Fixup freescale usb phy driver to work on ppc64 + * SAUCE: xgmac_mdio: Silence read errors + * SAUCE: Provide booke stub for kvmppc_is_bigendian() + * SAUCE: Fix stack overflow on ppc32 + * SAUCE: Use resource_size_t instead of long for PCI resource address + * SAUCE: net/phy: Export function for use by dpaa_eth + * [Packaging] powerpc -- merge out of tree powerpc arch + + [ Bjorn Helgaas ] + + * SAUCE: Revert "EISA: Log device resources in dmesg" + - LP: #1251816 + * SAUCE: Revert "EISA: Initialize device before its resources" + - LP: #1251816 + + [ Emil Medve ] + + * SAUCE: phylib: Minimum hack to get the generic 10G PHY driver to work + with 10G "fixed-link"s + + [ Kumar Gala ] + + * SAUCE: fsl_qbman: Add drivers for Freescale DPAA Qman & Bman + * SAUCE: fsl_pme2: Add support for DPAA PME + * SAUCE: fmd: FMD14 integration + * SAUCE: dpaa_eth: Ethernet driver for Freescale QorIQ DPA Architecture + * SAUCE: powerpc/85xx: Add DPAA/networking support for CoreNet + + [ Madalin Bucur ] + + * SAUCE: net/flow: remove sleeping and deferral mechanism from + flow_cache_flush + * SAUCE: net/phy: abort genphy_read_status when link changes during speed + and duplex reading + + [ Stefan Bader ] + + * [Config] move some VMWare related modules into main package + - LP: #1271669 + + [ Tim Gardner ] + + * [Config] Add r815x to nic-modules + - LP: #1273735 + * [Config] CONFIG_FRAMEBUFFER_CONSOLE_ROTATION=y + - LP: #239479 + + [ Upstream Kernel Changes ] + + * mmc: sdhci-pci: break out definitions to header file + - LP: #1239938 + * mmc: sdhci-pci: add support of O2Micro/BayHubTech SD hosts + - LP: #1239938 + * powerpc/book3e: rename interrupt_end_book3e with __end_interrupts + * powerpc/book3e: support CONFIG_RELOCATABLE + * book3e/kexec/kdump: enable kexec for kernel + * book3e/kexec/kdump: create a 1:1 TLB mapping + * book3e/kexec/kdump: introduce a kexec kernel flag + * book3e/kexec/kdump: implement ppc64 kexec specfic + * book3e/kexec/kdump: redefine VIRT_PHYS_OFFSET + * book3e/kexec/kdump: recover "r4 = 0" to create the initial TLB + + -- Andy Whitcroft Tue, 28 Jan 2014 22:59:46 +0000 + +linux (3.13.0-5.20) trusty; urgency=low + + [ Andy Whitcroft ] + + * [Packaging] tools -- do not make symlinks when not making packages + * [Packaging] tools -- tidy up control.stub.in ordering + * [Packaging] tools -- tools-common is shared and not conditional + * rebase to v3.13 + + [ Dirk Brandewie ] + + * SAUCE: intel_pstate: Add setting voltage value for baytrail P states. + + [ KY Srinivasan ] + + * SAUCE: Drivers: hv: vmbus: Specify the target CPU that should receive + notification + + [ Upstream Kernel Changes ] + + * rebase to v3.13 + - LP: #1270603 + + -- Andy Whitcroft Fri, 17 Jan 2014 15:45:31 +0000 + +linux (3.13.0-4.19) trusty; urgency=low + + [ Andy Whitcroft ] + + * [Config] libunwind8-dev is now available for ppc64el + * [Packaging] tools -- make cpupower optional + * [Packaging] tools -- enable correctly for x86 + + [ Tim Gardner ] + + * Release Tracking Bug + - LP: #1269872 + + [ Upstream Kernel Changes ] + + * SAUCE: ARM: OMAP: hwmod: Add SYSC offsets for AES IP + * SAUCE: ARM: OMAP4: hwmod: Add hwmod data for AES IP + * SAUCE: OMAP: AM33xx: hwmod: Correct AES module SYSC type + * SAUCE: crypto: omap-aes: add error check for pm_runtime_get_sync + + [ Upstream Kernel Changes ] + + * rebase to 85ce70fdf48aa290b4845311c2dd815d7f8d1fa5 + + -- Tim Gardner Wed, 15 Jan 2014 13:23:05 +0000 + +linux (3.13.0-3.18) trusty; urgency=low + + [ Andy Whitcroft ] + + * rebase to v3.13-rc8 + * [Packaging] efi -- allow EFI signatures on any arch + + [ Tim Gardner ] + + * [Config] Fix vcs-git path + * Release Tracking Bug + - LP: #1268683 + + [ Upstream Kernel Changes ] + + * rebase to v3.13-rc8 + + -- Andy Whitcroft Sun, 12 Jan 2014 11:58:01 +0000 + +linux (3.13.0-2.17) trusty; urgency=low + + [ Andy Whitcroft ] + + * Release Tracking Bug + - LP: #1267809 + * [Config] apply Platform support>>CPUIdle driver>>CPU Idle config + defaults + * [Config] apply Platform support>>CPU Frequency scaling config defaults + * [Config] CONFIG_PARIDE_EPATC8=y + * [Config] apply Device Drivers >> Broadcom specific AMBA config defaults + * [Config] apply Bus options >> PCI support >> RapidIO support >> RapidIO + Switch drivers config defaults + * [Config] apply Cryptographic API config defaults + * [Config] apply Device Drivers >> Common Clock Framework config defaults + * [Config] apply Device Drivers >> Distributed Switch Architecture + drivers config defaults + * [Config] apply Device Drivers >> Graphics support >> Backlight & LCD + device support config defaults + * [Config] apply Device Drivers >> Graphics support >> Support for frame + buffer devices >> Bootup logo config defaults + * annotations -- update in tree annotations + * [Config] apply Bus options >> PCI support >> RapidIO support config + defaults + * [Config] CONFIG_POWER_AVS=y CONFIG_RESET_CONTROLLER=y + * [Config] apply Device Drivers >> 1-wire Bus Masters config defaults + * [Config] apply CAN Device Drivers >> Platform CAN drivers with Netlink + support config defaults + * [Config] apply Device Drivers >> Character devices >> Serial drivers + config defaults + * [Config] apply Device Drivers >> Generic Thermal sysfs driver config + defaults + * [Config] apply Device Drivers >> Character devices >> TPM Hardware + Support config defaults + * [Config] apply Device Drivers >> Character devices config defaults + * [Config] apply Device Drivers >> HID support >> USB HID support >> USB + HID transport layer config defaults + * [Config] apply Device Drivers >> HID support >> HID bus support config + defaults + * [Config] apply Device Drivers >> HID support >> USB HID support config + defaults + * annotations -- update in tree annotations + * [Config] apply Device Drivers >> GPIO Support config defaults + * [Config] update configs for apparmour update + + [ John Johansen ] + + * SAUCE: (no-up) apparmor: Sync to apparmor 3 - alpha 4 snapshot + * SAUCE: apparmor: fix unix domain sockets to be mediated on connection + - LP: #1208988 + * SAUCE: apparmor: allocate path lookup buffers during init + - LP: #1208988 + * SAUCE: (no-up) apparmor: Fix tasks not subject to, reloaded policy + - LP: #1236455 + + [ Tim Gardner ] + + * Revert "[Debian] getabis: Preface module with package name" + * [Config] Added ppc64el to getabis + * [packaging] Bump ABI for every new release + + -- Andy Whitcroft Fri, 10 Jan 2014 11:48:39 +0000 + +linux (3.13.0-1.16) trusty; urgency=low + + * First 3.13 upload. + * Release tracker + - LP: #1266852 + + -- Tim Gardner Tue, 07 Jan 2014 09:21:26 -0700 + +linux (3.13.0-0.15) trusty; urgency=low + + [ Tim Gardner ] + + * rebase to v3.13-rc7 + + [ Upstream Kernel Changes ] + + * rebase to v3.13-rc7 + + -- Tim Gardner Sun, 05 Jan 2014 06:13:33 -0700 + +linux (3.13.0-0.14) trusty; urgency=low + + [ Andy Whitcroft ] + + * rebase to 7a262d2ed9fa42fad8c4f243f8025580b58cf2f6 + + [ Tim Gardner ] + + * Remove ubuntu/dm-raid4-5 in favor of CONFIG_MD_RAID456 + * Update lttng to Version 2.4.0-rc2 + * lttng: Disabled trace_kvm_async_pf_completed + * [Config] CONFIG_IMA=y + - LP: #1244627 + + [ Upstream Kernel Changes ] + + * rebase to 7a262d2ed9fa42fad8c4f243f8025580b58cf2f6 + + -- Tim Gardner Thu, 02 Jan 2014 12:57:13 -0700 + +linux (3.13.0-0.13) trusty; urgency=low + + [ Andy Whitcroft ] + + * ubuntu: aufs3 -- (no-up) aufs3-base.patch + * ubuntu: aufs3 -- (no-up) aufs3-mmap.patch + * ubuntu: aufs3 -- (no-up) aufs3-standalone.patch + * ubuntu: AUFS (no-squash): basic framework and update machinary + * ubuntu: AUFS -- update to 7b136a27b021da9010d8b6c101939dd298e46be7 + * ubuntu: aufs3 -- enable + * ubuntu: aufs3 -- update configs + + -- Andy Whitcroft Thu, 02 Jan 2014 09:41:02 +0000 + +linux (3.13.0-0.12) trusty; urgency=low + + [ Upstream Kernel Changes ] + + * rebase to v3.13-rc6 + + -- Tim Gardner Tue, 31 Dec 2013 06:16:03 -0700 + +linux (3.13.0-0.11) trusty; urgency=low + + [ Andy Whitcroft ] + + * SAUCE: suspicious unlocked ->status reading and writing in ipc/sem.c + * [Config] ppc64el -- initial defconfig based -generic flavour + * [Config] initial defconfig for ppc64el + * [Config] ubuntuise ppc64el config + * [Config] ubuntuise ppc64el config part 2 + * [Config] d-i -- update empty udebs list + * [Config] ppc64el -- split extras package + + [ Anton Blanchard ] + + * SAUCE: KVM: PPC: Book3S HV: Add little-endian guest support + + [ Benjamin Herrenschmidt ] + + * SAUCE: powerpc/powernv: Add calls to support little endian + + [ Cédric Le Goater ] + + * SAUCE: KVM: PPC: Book3S: add helper routine to load guest instructions + * SAUCE: KVM: PPC: Book3S: add helper routines to detect endian order + * SAUCE: KVM: PPC: Book3S: MMIO emulation support for little endian + guests + + [ Paul E. McKenney ] + + * SAUCE: powerpc: Make 64-bit non-VMX copy_tofrom_user() bi-endian + + -- Andy Whitcroft Fri, 27 Dec 2013 16:48:55 +0000 + +linux (3.13.0-0.10) trusty; urgency=low + + [ Andy Whitcroft ] + + * rebase to v3.13-rc5 + * [Config] updateconfigs following rebase to v3.13-rc5 + + [ Upstream Kernel Changes ] + + * rebase to v3.13-rc5 + - LP: #1260303 + - LP: #1260303 + - LP: #1260225 + + -- Andy Whitcroft Mon, 23 Dec 2013 12:48:28 +0000 + +linux (3.13.0-0.9) trusty; urgency=low + + [ Andy Whitcroft ] + + * [Config] d-i -- allow missing firmware + + -- Andy Whitcroft Fri, 20 Dec 2013 17:57:06 +0000 + +linux (3.13.0-0.8) trusty; urgency=low + + [ Andy Whitcroft ] + + * [Config] annotations -- first pass over entire config + * [Config] drop libunwind8-dev from Build-Depends for ppc64el + + [ Tim Gardner ] + + * [Config] Add arm64 device tree files + - LP: #1262901 + + -- Andy Whitcroft Thu, 19 Dec 2013 18:36:43 +0000 + +linux (3.13.0-0.7) trusty; urgency=low + + [ Rajesh B Prathipati ] + + * SAUCE: powerpc: Make unaligned accesses endian-safe for powerpc + + [ Tim Gardner ] + + * [Config] CONFIG_REGULATOR_S2MPS11=n for FTBS + + [ Upstream Kernel Changes ] + + * rebase to v3.13-rc4 + - LP: #1259790 + - LP: #1259437 + - LP: #1259435 + + -- Tim Gardner Fri, 13 Dec 2013 07:56:34 -0700 + +linux (3.13.0-0.6) trusty; urgency=low + + [ Paolo Pisati ] + + * [Config] armhf: arm64: VIRTIO_[BLK|MMIO|NET|CONSOLE|BALLOON]=y + * [Config] i386: amd64: VIRTIO_CONSOLE=y + + [ Tim Gardner ] + + * [Config] CONFIG_TRANSPARENT_HUGEPAGE_ALWAYS=y + + -- Tim Gardner Sun, 08 Dec 2013 09:22:01 -0700 + +linux (3.13.0-0.5) trusty; urgency=low + + [ Andy Whitcroft ] + + * correct bug listing for v3.13-rc2 rebase + * [Config] ppc64el -- create linux-libc-dev + * [Debian] Improve tools version message + - LP: #1257715 + + [ Serge Hallyn ] + + * SAUCE: fork: Allow CLONE_PARENT after setns(CLONE_NEWPID)] + - LP: #1248590 + * SAUCE: vfs: Fix a regression in mounting proc + + [ Tim Gardner ] + + * [Config] Build-in ohci-pci + - LP: #1244176 + * Rebase to v3.13-rc3 + + [ Upstream Kernel Changes ] + + * Revert "Revert "fork: unify and tighten up CLONE_NEWUSER/CLONE_NEWPID + checks"" + - LP: #1248590 + + [ Upstream Kernel Changes ] + + * rebase to v3.13-rc3 + - LP: #1256840 + - LP: #1256212 + + -- Tim Gardner Sat, 07 Dec 2013 07:55:39 -0700 + +linux (3.13.0-0.4) trusty; urgency=low + + [ Tim Gardner ] + + * Rebase to v3.13-rc2 + + [ Upstream Kernel Changes ] + + * rebase to v3.13-rc2 + + -- Tim Gardner Fri, 29 Nov 2013 23:54:05 -0500 + +linux (3.13.0-0.3) trusty; urgency=low + + [ Andy Whitcroft ] + + * Revert "SAUCE: Fix DocBook FTBS" + + [ Tim Gardner ] + + * [Debian] Re-sign modules after debug objcopy + - LP: #1253155 + * [Config] CONFIG_EXT4_USE_FOR_EXT23=y + + [ Upstream Kernel Changes ] + + * doc: fix generation of device-drivers + * rebase to b975dc3689fc6a3718ad288ce080924f9cb7e176 + + -- Tim Gardner Tue, 26 Nov 2013 12:24:42 -0700 + +linux (3.13.0-0.2) trusty; urgency=low + + [ Tim Gardner ] + + * SAUCE: Fix DocBook FTBS + + -- Tim Gardner Mon, 25 Nov 2013 13:24:15 -0700 + +linux (3.13.0-0.1) trusty; urgency=low + + [ Upstream Kernel Changes ] + + * rebase to 7e3528c3660a2e8602abc7858b0994d611f74bc3 + + -- Tim Gardner Tue, 12 Nov 2013 07:28:53 -0700 + +linux (3.13.0-0.0) trusty; urgency=low + + * Major release bump. + + -- Andy Whitcroft Tue, 12 Nov 2013 21:37:52 +0000 + +linux (3.12.0-2.7) trusty; urgency=low + + * Fixed armhf ABI build failure. + * Release tracker + - LP: #1249477 + + -- Tim Gardner Fri, 08 Nov 2013 16:22:45 -0700 + +linux (3.12.0-2.6) trusty; urgency=low + + [ Joseph Salisbury ] + + * SAUCE: tg3: Add support for new 57786 device id. + - LP: #1242610 + + [ Tim Gardner ] + + * [Config] CONFIG_OABI_COMPAT=n + * [Config] add the wandboard to shipped dtb + - LP: #1249421 + * Release tracker + - LP: #1249477 + + -- Tim Gardner Fri, 08 Nov 2013 12:23:18 -0700 + +linux (3.12.0-2.5) trusty; urgency=low + + [ Andy Whitcroft ] + + * rebase to mainline v3.12 + * [Config] updateconfigs following rebase to v3.12 + * postinst -- improve relative symlink detection with missing files + - LP: #1248053 + * postinst -- fix unchanged link detection + * [Config] update configs following addition of apparmor fixes + + [ Anthony Wong ] + + * SAUCE: Work around broken ACPI backlight on Dell Inspiron 5537 + - LP: #1231305 + + [ John Johansen ] + + * SAUCE: (no-up) apparmor: Sync to apparmor 3 - alpha 4 snapshot + * SAUCE: apparmor: fix unix domain sockets to be mediated on connection + - LP: #1208988 + * SAUCE: apparmor: allocate path lookup buffers during init + - LP: #1208988 + + [ Tim Gardner ] + + * [Config] Remove superfluous ubuntu/lttng-modules + + [ Upstream Kernel Changes ] + + * Revert "fork: unify and tighten up CLONE_NEWUSER/CLONE_NEWPID checks" + - LP: #1248590 + + [ Upstream Kernel Changes ] + + * rebase to v3.12 + - LP: #1222850 + + [ Adam Conrad ] + * etc/getabis: Fetch arm64/generic abis as well + + -- Andy Whitcroft Wed, 06 Nov 2013 21:00:21 +0000 + +linux (3.12.0-1.3) trusty; urgency=low + + [ Andy Whitcroft ] + + * [Config] arm64 -- add arch to the configuration handlers + * [Config] arm64 -- add generic flavour + * [Config] arm64 -- default config + * [Config] arm64 -- fix up various FTBFS config options + * SAUCE: arm64: export __copy_in_user to modules + * [Config] arm64 -- disable ABI/module checks + * [Config] arm64 -- enforcer -- add arm64 to the enforcer + * [Config] arm64 -- enable udebs for arm64 + + [ Colin Watson ] + + * [Config] Clean up various udeb Provides + + [ Paolo Pisati ] + + * [Config] AHCI_IMX=y + * [Config] build imx*-wandboard dtbs + + [ Serge Hallyn ] + + * SAUCE: device_cgroup: remove can_attach + + [ Tim Gardner ] + + * rebase to v3.12-rc7 + * SAUCE: KVM: Fix modprobe failure for kvm_intel/kvm_amd + * Release tracker + - LP: #1245932 + + [ Upstream Kernel Changes ] + + * rebase to v3.12-rc7 + - LP: #1180881 + - LP: #1180881 + - LP: #1217957 + + -- Tim Gardner Sun, 27 Oct 2013 22:08:55 -0600 + +linux (3.12.0-0.2) trusty; urgency=low + + [ Andy Whitcroft ] + + * Revert "SAUCE: (no-up) scsi: hyper-v storage -- mark as preferring READ + CAPACITY (16) at SPC-2" + * Revert "SAUCE: (no-up) scsi: hyper-v storage -- mark as VPD capable at + SPC-2" + * Revert "SAUCE: (no-up) scsi: add scsi device flag to request READ + CAPACITY (16) be preferred" + * Revert "SAUCE: (no-up) scsi: add scsi device flag to request VPD pages + be used at SPC-2" + * Revert "overlayfs: Update to v19" + * Revert "ubuntu: overlayfs v18 -- -- overlayfs: implement show_options" + * Revert "ubuntu: overlayfs v18 -- -- overlayfs: add statfs support" + * Revert "ubuntu: overlayfs v18 -- -- overlay filesystem" + * Revert "ubuntu: overlayfs v18 -- -- vfs: introduce + clone_private_mount()" + * Revert "ubuntu: overlayfs v18 -- -- vfs: export do_splice_direct() to + modules" + * Revert "ubuntu: overlayfs v18 -- -- overlay: overlay filesystem + documentation" + * ubuntu: overlayfs v20 -- overlayfs: add statfs support + * [Config] fix linux-libc-dev generation for arm64 + * [Config] fix linux-libc-dev generation for x32 + * [Config] add linux-libc-dev generation for ppc64el + + [ Erez Zadok ] + + * ubuntu: overlayfs v20 -- overlayfs: implement show_options + + [ Miklos Szeredi ] + + * ubuntu: overlayfs v20 -- vfs: add i_op->dentry_open() + * ubuntu: overlayfs v20 -- vfs: export do_splice_direct() to modules + * ubuntu: overlayfs v20 -- vfs: export __inode_permission() to modules + * ubuntu: overlayfs v20 -- vfs: introduce clone_private_mount() + * ubuntu: overlayfs v20 -- overlay filesystem + * ubuntu: overlayfs v20 -- fs: limit filesystem stacking depth + + [ Neil Brown ] + + * ubuntu: overlayfs v20 -- overlay: overlay filesystem documentation + + [ Paolo Pisati ] + + * [Config] arm: VIRTIO_[BLK|NET|MMIO]=y + + [ Seth Forshee ] + + * SAUCE: (no-up) ACPI: Disable Windows 8 compatibility for some Lenovo + ThinkPads + - LP: #1183856 + + [ Tim Gardner ] + + * [Config] CONFIG_CRYPTO_CRCT10DIF=y, CONFIG_CRYPTO_CRCT10DIF_PCLMUL=m + * rebase to v3.12-rc2 + * updateconfigs + * [Config] disable CONFIG_FB_VESA enforcer check + * [Config] Disable lttng for FTBS + * rebase to v3.12-rc3 + * rebase to v3.12-rc4 + * [Config] CONFIG_ANDROID=n + - LP: #1235161 + * [Config] CONFIG_L2TP_V3=y + - LP: #1235914 + * [Config] CONFIG_USB_OTG=n for all arches + * Release tracker + - LP: #1242811 + + [ Upstream Kernel Changes ] + + * scsi: hyper-v storsvc switch up to SPC-3 + + * rebase to v3.12-rc6 + - LP: #1235977 + - LP: #1235523 + - LP: #1239392 + - LP: #1227491 + + * rebase to v3.12-rc3 + - LP: #1231931 + + * rebase to v3.12-rc2 + - LP: #1213820 + - LP: #1213055 + - LP: #1198030 + + -- Tim Gardner Mon, 23 Sep 2013 07:41:07 -0600 + +linux (3.11.0-8.15) saucy; urgency=low + + [ Tim Gardner ] + + * Release tracker + - LP: #1227969 + + * Update lttng + Updated to git://git.lttng.org/lttng-modules.git 9998f5216f4641a79e158135 + Version 2.3.0+ + + [ Upstream Kernel Changes ] + + * igb: Add additional get_phy_id call for i354 devices + - LP: #1219619 + * igb: Read flow control for i350 from correct EEPROM section + - LP: #1219619 + * timekeeping: Fix HRTICK related deadlock from ntp lock changes + Required for lttng update. + + -- Tim Gardner Thu, 19 Sep 2013 07:41:49 -0600 + +linux (3.11.0-7.14) saucy; urgency=low + + [ Andy Whitcroft ] + + * [Packaging] sort out linux-tools naming + - LP: #1205284 + * [Packaging] linux-tools: switch to common generic version helper + + [ Paolo Pisati ] + + * [Config] highbank: ecx1000: CPU_IDLE causes instabilities, disable it + + [ Tim Gardner ] + + * Release tracker + - LP: #1226160 + + [ Tony Lindgren ] + + * SAUCE: ARM: dts: Fix muxing and regulator for wl12xx on the SDIO bus + for pandaboard + + [ Upstream Kernel Changes ] + + * USB: handle LPM errors during device suspend correctly + - LP: #1011415 + * usb: don't check pm qos NO_POWER_OFF flag in usb_port_suspend() + - LP: #1011415 + * usb: Don't fail port power resume on device disconnect. + - LP: #1011415 + + [ Upstream Kernel Changes ] + + * rebase to v3.11.1 + + -- Tim Gardner Wed, 11 Sep 2013 07:30:17 -0600 + +linux (3.11.0-7.13) saucy; urgency=low + + * Release tracker + - LP: #1223545 + + [ Andy Whitcroft ] + + * SAUCE: (no-up) scsi: add scsi device flag to request VPD pages be used at SPC-2 + - LP: #1223499 + * SAUCE: (no-up) scsi: add scsi device flag to request READ CAPACITY (16) be preferred + - LP: #1223499 + * SAUCE: (no-up) scsi: hyper-v storage -- mark as VPD capable at SPC-2 + - LP: #1223499 + * SAUCE: (no-up) scsi: hyper-v storage -- mark as preferring READ CAPACITY (16) at SPC-2 + - LP: #1223499 + + [ Maximiliano Curia ] + + * SAUCE: (no-up) Only let characters through when there are active readers. + - LP: #1208740 + + [ Tim Gardner ] + + * [Debian] getabis: Commit new ABI directory, remove the old + * [Config] CONFIG_EFIVAR_FS=y + - LP: #1223195 + * [Config] CONFIG_EFI_VARS_PSTORE=m, + CONFIG_EFI_VARS_PSTORE_DEFAULT_DISABLE=n + * SAUCE: (no-up) USB: input: cm109.c: Convert high volume dev_err() to dev_err_ratelimited() + - LP: #1222850 + + [ Upstream Kernel Changes ] + + * Intel xhci: refactor EHCI/xHCI port switching + - LP: #1210858 + + -- Tim Gardner Tue, 10 Sep 2013 09:00:19 -0600 + +linux (3.11.0-6.12) saucy; urgency=low + + * Release tracker + - LP: #1222893 + + [ Andy Whitcroft ] + + * Revert "ubuntu: (no-squash) AUFS3 -- aufs3-standalone.patch" + * Revert "ubuntu: (no-squash) AUFS3 -- aufs3-base.patch" + * ubuntu: (no-squash) AUFS3 -- aufs3-base.patch + * ubuntu: (no-squash) AUFS3 -- aufs3-standalone.patch + - LP: #1222407 + + [ Paolo Pisati ] + + * [Config] restore mmc boot on panda + + [ Tyler Hicks ] + + * SAUCE: apparmor: Use shash crypto API interface for profile hashes + - LP: #1216294 + + [ Upstream Kernel Changes ] + + * net: calxedaxgmac: remove NETIF_F_FRAGLIST setting + * net: calxedaxgmac: read correct field in xgmac_desc_get_buf_len + * net: calxedaxgmac: fix race between xgmac_tx_complete and xgmac_tx_err + * net: calxedaxgmac: fix possible skb free before tx complete + * net: calxedaxgmac: update ring buffer tx_head after barriers + * net: calxedaxgmac: fix race with tx queue stop/wake + * net: calxedaxgmac: enable interrupts after napi_enable + * net: calxedaxgmac: fix various errors in xgmac_set_rx_mode + * net: calxedaxgmac: remove some unused statistic counters + * net: calxedaxgmac: fix rx DMA mapping API size mismatches + * net: calxedaxgmac: fix xgmac_xmit DMA mapping error handling + * mfd: rtsx: Read vendor setting from config space + - LP: #1201698 + + -- Tim Gardner Mon, 09 Sep 2013 07:21:06 -0600 + +linux (3.11.0-5.11) saucy; urgency=low + + * Release tracker + - LP: #1221886 + + [ Adam Lee ] + + * SAUCE: Bluetooth: Add support for 04ca:2007 + - LP: #1153448 + * SAUCE: Bluetooth: Add support for 105b:e065 + - LP: #1161261 + + [ Gavin Guo ] + + * SAUCE: Bluetooth: Add support for Broadcom 413c:8143 + - LP: #1166113 + + [ Upstream Kernel Changes ] + + * igb: Reset the link when EEE setting changed + - LP: #1219619 + * igb: Read register for latch_on without return value + - LP: #1219619 + * igb: Added rcu_lock to avoid race + - LP: #1219619 + * igb: don't allow SR-IOV without MSI-X + - LP: #1219619 + * igb: Update MTU so that it is always at least a standard frame size + - LP: #1219619 + * igb: Refactor of init_nvm_params + - LP: #1219619 + * igb: Refactor NVM read functions to accommodate devices with no flash + - LP: #1219619 + * igb: Add device support for flashless SKU of i210 device + - LP: #1219619 + * igb: Fix get_fw_version function for all parts + - LP: #1219619 + * igb: Add macro for size of RETA indirection table + - LP: #1219619 + * igb: Expose RSS indirection table for ethtool + - LP: #1219619 + * igb: Don't look for a PBA in the iNVM when flashless + - LP: #1219619 + * igb: Implementation of 1-sec delay for i210 devices + - LP: #1219619 + * igb: New PHY_ID for i354 device + - LP: #1219619 + * igb: M88E1543 PHY downshift implementation + - LP: #1219619 + * igb: No PHPM support in i354 devices + - LP: #1219619 + * igb: Support to get 2_5G link status for appropriate media type + - LP: #1219619 + * igb: Get speed and duplex for 1G non_copper devices + - LP: #1219619 + * igb: Implementation to report advertised/supported link on i354 devices + - LP: #1219619 + * igb: Update version number + - LP: #1219619 + * Bluetooth: Take proper tty_struct references + - LP: #1189998 + * Bluetooth: Remove the device from the list in the destructor + - LP: #1189998 + * Bluetooth: Move the tty initialization and cleanup out of open/close + - LP: #1189998 + * Bluetooth: Implement .activate, .shutdown and .carrier_raised methods + - LP: #1189998 + * Bluetooth: Fix the reference counting of tty_port + - LP: #1189998 + * Bluetooth: Purge the dlc->tx_queue to avoid circular dependency + - LP: #1189998 + + [ Wen-chien Jesse Sung ] + + * SAUCE: Bluetooth: Support for loading broadcom patchram firmware + - LP: #1065400 + * SAUCE: Bluetooth: Add support for 13d3:3388 and 13d3:3389 + - LP: #1065400 + + -- Tim Gardner Thu, 05 Sep 2013 08:06:17 -0600 + +linux (3.11.0-5.10) saucy; urgency=low + + [ Andy Whitcroft ] + + * Release tracker + - LP: #1220222 + * Revert "[Config] Fix ubuntu directoy Kbuilds" + * Revert "aufs update dropped some Kbuild files" + * Revert "ubuntu: AUFS -- follow rename of loop.h into drivers/block" + * Revert "ubuntu: AUFS -- update to + 8e503d4142c189ed6c47a2177ad2cd058e8d340e" + * Revert "ubuntu: (no-squash) AUFS3 -- aufs3-standalone.patch" + * Revert "ubuntu: (no-squash) AUFS3 -- aufs3-base.patch" + * rebase to v3.11 final + * [Config] clean up ubuntu/Kconfig and ubuntu/Makefile + * ubuntu: AUFS (no-squash): basic framework and update machinary + * ubuntu: (no-squash) AUFS3 -- aufs3-base.patch + * ubuntu: (no-squash) AUFS3 -- aufs3-standalone.patch + * ubuntu: AUFS -- update to 5ac5fe26a90a818218310e208d17688fddb07622 + * ubuntu: (no-squash) AUFS -- enable aufs + * ubuntu: AUFS -- fix remaining d_count references to use accessor + * ubuntu: lttng -- follow rename of pid_ns + * SAUCE: disable stack-protector for ARM compressed bootloader + + [ Paolo Pisati ] + + * [Config] ARM_ATAG_DTB_COMPAT=y + + [ Rob Herring ] + + * [Config] Enable KVM and virtio for armhf generic-lpae + + [ Tim Gardner ] + + * [Config] CONFIG_ARPD=y + * [Config] CONFIG_ZSWAP=y + - LP: #1215379 + + [ Upstream Kernel Changes ] + + * uvcvideo: quirk PROBE_DEF for Dell SP2008WFP monitor. + - LP: #1217957 + * ARM: use phys_addr_t for DMA zone sizes + * ARM: highbank: enable DMA zone for LPAE + * ARM: highbank: select ARCH_HAS_HOLES_MEMORYMODEL + * ARM: highbank: select required errata work-arounds + * DMA: fix AMBA PL08x compilation issue with 64bit DMA address type + * DMA: fix printk warning in AMBA PL08x DMA driver + * ARM: highbank: select ARCH_DMA_ADDR_T_64BIT for LPAE + * ARM: move outer_cache declaration out of ifdef + * ARM: highbank: avoid L2 cache smc calls when PL310 is not present + * ARM: highbank: clean-up some unused includes + * ARM: xen: only set pm function ptrs for Xen guests + + [ Upstream Kernel Changes ] + + * rebase to v3.11 + + -- Andy Whitcroft Tue, 03 Sep 2013 17:08:06 +0100 + +linux (3.11.0-4.9) saucy; urgency=low + + [ Tim Gardner ] + + * rebase to v3.11-rc7 + * Release tracker + - LP: #1216962 + + [ Upstream Kernel Changes ] + + * mwifiex: do not create AP and P2P interfaces upon driver loading + - LP: #1212720 + + -- Tim Gardner Mon, 26 Aug 2013 06:25:35 -0600 + +linux (3.11.0-3.8) saucy; urgency=low + + [ Johannes Berg ] + + * SAUCE: mac80211: ignore (E)CSA in probe response frames + - LP: #1201470 + + -- Tim Gardner Fri, 23 Aug 2013 09:47:36 -0600 + +linux (3.11.0-3.7) saucy; urgency=low + + [ Tim Gardner ] + + * SAUCE: (no-up) hv_vss_daemon -- prevent self-daemonising to allow + upstart to track + * SAUCE: (no-up) hv -- bodge hv_vss_daemon so it can use the local + linux/hyperv.h + * SAUCE: hv: Add vss daemon to Makefile + * [Debian] Add hv_vss_daemon to tools package + - LP: #1213282 + * [Config] Fix ubuntu directoy Kbuilds + - LP: #1181755 + + -- Tim Gardner Tue, 20 Aug 2013 08:34:05 -0600 + +linux (3.11.0-3.6) saucy; urgency=low + + [ Andy Whitcroft ] + + * [Packaging] tools: conditionalise x86 and hyper-v tools sensibly + * [Config] tools: enable x86 and hyper-v + + [ John Johansen ] + + * Revert "SAUCE: (no-up) apparmor: Sync to apparmor 3 dev stable + snapshot" + * Revert "SAUCE: (no-up) apparmor: fix apparmor module status for none + root users" + * SAUCE: (no-up) apparmor: Sync to apparmor 3 - alpha 4 snapshot + + [ Joseph Salisbury ] + + * SAUCE: (no-up) intel_ips: blacklist ASUSTek G60JX laptops + - LP: #1210848 + + [ Kamal Mostafa ] + + * [debian] tools: ship 'cpupower' in linux-tools + - LP: #1158668 + * [Config] Build-dep on libpci-dev for cpu tools + - LP: #1158668 + + [ Tim Gardner ] + + * rebase to v3.11-rc6 + * Release tracker + - LP: #1213941 + + -- Tim Gardner Fri, 16 Aug 2013 07:02:07 -0600 + +linux (3.11.0-2.5) saucy; urgency=low + + [ Tim Gardner ] + + * [Config] CONFIG_PM_DEBUG=y + - LP: #1210539 + * rebase to v3.11-rc5 + * Release tracker + - LP: #1211378 + + -- Tim Gardner Mon, 12 Aug 2013 06:10:39 -0600 + +linux (3.11.0-1.4) saucy; urgency=low + + [ Tim Gardner ] + + * Bump ABI when making changes to the inclusion list lest + you cause conflicts with existing installed kernel + packages. + - LP: #1210331 + + -- Tim Gardner Fri, 09 Aug 2013 03:03:51 +0100 + +linux (3.11.0-0.3) saucy; urgency=low + + [ Tim Gardner ] + + * [Config] Include rbd and kvm in the virtual inclusion list + - LP: #1206961 + * [Config] Removed obsolete inclusion list entries + + -- Tim Gardner Tue, 06 Aug 2013 08:52:14 +0100 + +linux (3.11.0-0.2) saucy; urgency=low + + [ Bruce Allan ] + + * SAUCE: (no-up) e1000e: fix I217/I218 PHY initialization flow + - LP: #1206757 + * SAUCE: (no-up) e1000e: enable support for new device IDs + - LP: #1206757 + + [ John Johansen ] + + * SAUCE: (no-up) apparmor: Sync to apparmor 3 dev stable snapshot + + [ Paolo Pisati ] + + * build vexpress a15 dtb + * [Config] disable Broadcom bcm support (ARCH_BCM) + * [Config] disable Allwinner a1x support (ARCH_SUNXI) + * [Config] disable WonderMedia WM8850 support (ARCH_WM8850) + * [Config] disable Rockchip support (ARCH_ROCKCHIP) + * [Config] disable STMicroelectronics STiH41x SOCs (ARCH_STI) + * [Config] disable TI Keystone, AM43xx and OMAP5 support + * [Config] ARM_APPENDED_DTB=y + + [ Tim Gardner ] + + * rebase to v3.11-rc4 + * overlayfs: Update to v19 + * [Config] Enable overlayfs + * SAUCE: Fix lttng compile errors + + [ Upstream Kernel Changes ] + + * rebase to v3.11-rc4 + - LP: #1163720 + - LP: #1162026 + - LP: #1195636 + - LP: #1195597 + - LP: #1180409 + - LP: #1168430 + + -- Tim Gardner Sun, 04 Aug 2013 03:45:31 -0600 + +linux (3.11.0-0.1) saucy; urgency=low + + [ Upstream Kernel Changes ] + + * rebase to 64ccccf8525fee499625b517c0faadf784c79e93 + - LP: #1163720 + - LP: #1162026 + - LP: #1195636 + - LP: #1195597 + - LP: #1180409 + - LP: #1168430 + + -- Tim Gardner Mon, 08 Jul 2013 08:50:46 -0600 + +linux (3.10.0-2.10) saucy; urgency=low + + [ Andy Whitcroft ] + + * [Config] CONFIG_INTEL_MEI*=m + - LP: #1196155 + * [Config] CONFIG_DEBUG_INFO=y + + [ Stephen Warren ] + + * [Config] fix Calxeda xgmac module filename + + [ Upstream Kernel Changes ] + + * Revert "serial: 8250_pci: add support for another kind of NetMos + Technology PCI 9835 Multi-I/O Controller" + - LP: #1190967 + * mfd: lpc_ich: Add support for Intel Avoton SoC + - LP: #1196658 + + -- Andy Whitcroft Fri, 05 Jul 2013 18:08:02 +0100 + +linux (3.10.0-2.9) saucy; urgency=low + + [ Andy Whitcroft ] + + * rebase to v3.10 + + [ John Johansen ] + + * Revert "SAUCE: (no-up) apparmor: Fix quieting of audit messages for + network mediation" + * Revert "SAUCE: (no-up) apparmor: Fix compile warnings" + * Revert "SAUCE: (no-up) AppArmor: basic networking rules" + * Revert "SAUCE: (no-up) apparmor: Add the ability to mediate mount" + * Revert "SAUCE: (no-up) AppArmor: Add profile introspection file to + interface" + * Revert "SAUCE: (no-up) AppArmor: Disable Add PR_{GET,SET}_NO_NEW_PRIVS + to prevent execve from granting privs" + * SAUCE: (no-up) apparmor: Sync to apparmor 3 dev stable snapshot + + [ Upstream Kernel Changes ] + + * rebase to v3.10 + + -- Andy Whitcroft Mon, 01 Jul 2013 17:42:29 +0100 + +linux (3.10.0-1.8) saucy; urgency=low + + [ Andy Whitcroft ] + + * Release Tracking Bug + - LP: #1195717 + + [ Andy Whitcroft ] + + * Revert "ubuntu: overlayfs -- follow change to do_splice_direct + interface" + * Revert "ubuntu: overlayfs -- expose do_splice_direct prototype" + * Revert "SAUCE: ubuntu: overlayfs -- ovl_path_open should not take path + reference" + * Revert "ubuntu: overlayfs -- add FS_ALIAS" + * Revert "ubuntu: overlayfs -- + overlayfs-copy-up-i_uid-i_gid-from-the-underlying-inode" + * Revert "ubuntu: overlayfs -- ovl-switch-to-inode_permission" + * Revert "ubuntu: overlayfs -- vfs-export-inode_permission-to-modules" + * Revert "ubuntu: overlayfs -- overlayfs-create-new-inode-in-ovl_link" + * Revert "ubuntu: overlayfs -- + overlayfs-fix-possible-leak-in-ovl_new_inode" + * Revert "ubuntu: overlayfs -- fs-limit-filesystem-stacking-depth" + * Revert "ubuntu: overlayfs -- overlay-overlay-filesystem-documentation" + * Revert "ubuntu: overlayfs -- overlayfs-implement-show_options" + * Revert "ubuntu: overlayfs -- overlayfs-add-statfs-support" + * Revert "ubuntu: overlayfs -- overlay filesystem" + * Revert "ubuntu: overlayfs -- vfs-introduce-clone_private_mount" + * Revert "ubuntu: overlayfs -- vfs-export-do_splice_direct-to-modules" + * Revert "ubuntu: overlayfs -- vfs-add-i_op-dentry_open" + * ubuntu: overlayfs v18 -- -- overlayfs: add statfs support + + [ Erez Zadok ] + + * ubuntu: overlayfs v18 -- -- overlayfs: implement show_options + + [ Miklos Szeredi ] + + * ubuntu: overlayfs v18 -- -- vfs: add i_op->dentry_open() + * ubuntu: overlayfs v18 -- -- vfs: export do_splice_direct() to modules + * ubuntu: overlayfs v18 -- -- vfs: export __inode_permission() to modules + * ubuntu: overlayfs v18 -- -- vfs: introduce clone_private_mount() + * ubuntu: overlayfs v18 -- -- overlay filesystem + * ubuntu: overlayfs v18 -- -- fs: limit filesystem stacking depth + + [ Neil Brown ] + + * ubuntu: overlayfs v18 -- -- overlay: overlay filesystem documentation + + [ Tim Gardner ] + + * [Config] CONFIG_SUNRPC_DEBUG=y + - LP: #1127319 + + -- Andy Whitcroft Fri, 28 Jun 2013 10:26:52 +0100 + +linux (3.10.0-0.7) saucy; urgency=low + + [ Andy Whitcroft ] + + * autopkgtest: switch Depends: to build-essential + + -- Andy Whitcroft Tue, 25 Jun 2013 08:40:55 +0100 + +linux (3.10.0-0.6) saucy; urgency=low + + [ Andy Whitcroft ] + + * [Config] enable CONFIG_ARCH_TEGRA to fix FTBFS on armhf + * SAUCE: ubuntu: overlayfs -- ovl_path_open should not take path reference + - LP: #1098378 + * ubuntu: AUFS -- update to 4f14cef47eb7c23eda7198931fbab1040866b6ee + * ubuntu: overlayfs -- expose do_splice_direct prototype + * ubuntu: overlayfs -- follow change to do_splice_direct interface + * [Config] flip CONFIG_NO_HZ_FULL_ALL off as it is overheating machines + - LP: #1192691 + + [ Stefan Bader ] + + * (d-i) Add dm-snapshot to md-modules + - LP: #1191726 + + [ Tim Gardner ] + + * Release tracker + - LP: #1194149 + * [Config] CONFIG_WIL6210=n for armhf + * [Config] d-i: Add calxedaxgmac to nic-modules + - LP: #1192358 + * [debian] Use dh_strip + - LP: #1192759 + * [Config] Enable perf for armhf + * do_tools=false when cross compiling + * [Config] CONFIG_CORE_DUMP_DEFAULT_ELF_HEADERS=y + - LP: #1108082 + + [ Upstream Kernel Changes ] + + * nsp32: switch reset delay to msleep() as it is tooo long + * alx: add a simple AR816x/AR817x device driver + Plucked from linux-next. replaces ubuntu/alx in favor of + 'to be merged' version in 3.11. + * rebase to v3.10-rc7 + - LP: #1189363 + + -- Tim Gardner Sat, 22 Jun 2013 18:10:31 -0600 + +linux (3.10.0-0.5) saucy; urgency=low + + [ Andy Whitcroft ] + + * rebase to v3.10-rc6 + * [Config] updateconfigs following rebase to v3.10-rc6 + + [ Upstream Kernel Changes ] + + * rebase to v3.10-rc6 + + -- Andy Whitcroft Mon, 17 Jun 2013 11:12:39 +0100 + +linux (3.10.0-0.4) saucy; urgency=low + + [ Andy Whitcroft ] + + * [Config] updateconfigs following rebase to v3.10-rc4 + + -- Andy Whitcroft Mon, 10 Jun 2013 11:42:28 +0100 + +linux (3.10.0-0.3) saucy; urgency=low + + [ Andy Whitcroft ] + + * rebase to v3.10-rc5 + + [ Upstream Kernel Changes ] + + * rebase to v3.10-rc5 + - LP: #1186170 + + -- Andy Whitcroft Mon, 10 Jun 2013 09:23:31 +0100 + +linux (3.10.0-0.2) saucy; urgency=low + + [ Andy Whitcroft ] + + * rebase to v3.10-rc4 + * [Config] CONFIG_BINFMT_SCRIPT=y to fix booting initramfs scripts + * [Config] enable SND_PCM_DEBUG SND_PCM_XRUN_DEBUG + - LP: #1187744 + * [Config] enforce CONFIG_BINFMT_SCRIPT=y + + [ Dave Chiluk ] + + * SAUCE: ncpfs: fix rmdir returns Device or resource busy + - LP: #1035226 + + [ Tim Gardner ] + + * rebase to v3.10-rc3 + * [Config] sparc be gone + * [Config] ia64 be gone + * d-i: block-modules provides nbd-modules + + [ Upstream Kernel Changes ] + + * rebase to v3.10-rc4 + * rebase to v3.10-rc3 + + -- Tim Gardner Tue, 28 May 2013 06:16:46 -0600 + +linux (3.10.0-0.1) saucy; urgency=low + + [ Tim Gardner ] + + * UBUNTU: Disabled lttng + * UBUNTU: Disable aufs for FTBS + * UBUNTU: Disabled alx + * UBUNTU: alx: rename NETIF_F_HW_VLAN_* feature flags to NETIF_F_HW_VLAN_CTAG_* + * UBUNTU: rebase to v3.10-rc2 + * UBUNTU: SAUCE: uvcvideo: quirk PROBE_DEF for Alienware X51 OmniVision webcam + + [ Andy Whitcroft ] + + * UBUNTU: [Config] update standards version to 3.9.4.0 + * UBUNTU: [Config] squash duplicate package description (long and short) + * UBUNTU: [Config] fix up Vcs-git: to point to saucy + * UBUNTU: [Config] drop depenancy on util-linux as is Essential + * UBUNTU: [Config] drop redundant Build-Conficts: + + [ Upstream Kernel Changes ] + + * rebase to v3.10-rc2 + - LP: #1180351 + + [ Upstream Kernel Changes ] + + * rebase to v3.10-rc1 + - LP: #1172151 + - LP: #1089795 + - LP: #1167270 + - LP: #1128840 + + -- Tim Gardner Tue, 14 May 2013 13:41:07 -0600 + +linux (3.10.0-0.0) saucy; urgency=low + + * Dummy + + -- Tim Gardner Thu, 09 May 2013 20:30:40 +0100 + +linux (3.9.0-2.6) saucy; urgency=low + + [ Tim Gardner ] + + * rebase to v3.9.2 + + -- Tim Gardner Thu, 09 May 2013 20:30:40 +0100 + +linux (3.9.0-1.5) saucy; urgency=low + + [ Tim Gardner ] + + * rebase to v3.9.1 + + -- Tim Gardner Wed, 08 May 2013 12:49:45 -0400 + +linux (3.9.0-0.4) saucy; urgency=low + + [ Andy Whitcroft ] + + * ubuntu: overlayfs -- add FS_ALIAS + + [ Tim Gardner ] + + * Added lttng + - LP: #1175784 + + -- Tim Gardner Thu, 02 May 2013 17:17:13 -0400 + +linux (3.9.0-0.3) saucy; urgency=low + + [ Upstream Kernel Changes ] + + * rebase to v3.9 + + -- Tim Gardner Mon, 29 Apr 2013 18:20:00 -0400 + +linux (3.9.0-0.2) saucy; urgency=low + + [ Tim Gardner ] + + * Enable extras packaging for amd64/i386. + Fixes build depenencies with brittany and linux-meta. + + -- Tim Gardner Mon, 29 Apr 2013 05:37:01 -0600 + +linux (3.9.0-0.1) saucy; urgency=low + + [ Upstream Kernel Changes ] + + * rebase to v3.9-rc8 + + [ Upstream Kernel Changes ] + + * rebase to v3.9-rc7 + - LP: #1128840 + + [ Upstream Kernel Changes ] + + * rebase to v3.9-rc6 + + [ Upstream Kernel Changes ] + + * rebase to v3.9-rc5 + + [ Upstream Kernel Changes ] + + * rebase to v3.8-rc4 + - LP: #1095315 + - LP: #886975 + - LP: #1086921 + + [ Upstream Kernel Changes ] + + * rebase to v3.9-rc3 + - LP: #1155016 + - LP: #1103594 + + [ Upstream Kernel Changes ] + + * rebase to v3.9-rc2 + + [ Upstream Kernel Changes ] + + * rebase to v3.9-rc1 + - LP: #901105 + - LP: #961286 + - LP: #1011792 + - LP: #1128934 + - LP: #886975 + - LP: #978807 + + -- Tim Gardner Wed, 20 Feb 2013 09:12:39 -0700 + +linux (3.8.0-7.14) raring; urgency=low + + [ Andy Whitcroft ] + + * [Config] CONFIG_RCU_USER_QS=n + * [Config] CONFIG_MTD_ONENAND_SIM=n + * annotations: add annotations for CONFIG_CC_STACKPROTECTOR + + [ Upstream Kernel Changes ] + + * rebase to v3.8 + + [Tim Gardner] + + * Release Tracking Bug + - LP: #1130111 + * UBUNTU: SAUCE: rt2x00: rt2x00pci_regbusy_read() - only print register access failure once + - LP: #1128840 + + -- Tim Gardner Mon, 18 Feb 2013 09:25:56 -0700 + +linux (3.8.0-6.13) raring; urgency=low + + [Tim Gardner] + + * Release Tracking Bug + - LP: #1125364 + * Add ahci modules to d-i + - LP: #1124415 + + + [ Chris Wilson ] + + * SAUCE: drm/i915: Wait for pending flips to complete before tearing down + the encoders + - LP: #1097315 + + -- Tim Gardner Wed, 13 Feb 2013 12:16:48 -0700 + +linux (3.8.0-6.12) raring; urgency=low + + [Tim Gardner] + + * perf: NO_LIBPERL=1 + * Fix linux-headers dependency + * Release Tracking Bug + - LP: #1124362 + + [ Andy Whitcroft ] + + * [Config] enable CONFIG_AUFS_EXPORT to allow nfs exports + - LP: #1121699 + + [ Daniel Vetter ] + + * SAUCE: drm/i915: write backlight harder + - LP: #954661 + + -- Tim Gardner Wed, 13 Feb 2013 10:25:11 -0700 + +linux (3.8.0-6.11) raring; urgency=low + + [Tim Gardner] + + * Release Tracking Bug + - LP: #1122071 + * rebase to v3.8-rc7 + * Add libaudit-dev as a build dependency + * Build perf with NO_LIBPYTHON=1 to avoid a python build dependency. + + [ Leann Ogasawara ] + + * [Config] Remove CONFIG_SATA_AHCI annotation + + -- Tim Gardner Fri, 08 Feb 2013 07:41:13 -0500 + +linux (3.8.0-5.10) raring; urgency=low + + [Tim Gardner] + + * Release Tracking Bug + - LP: #1118568 + + * Bump ABI to fix install issue with 3.8.0-4.8. + Moving drivers/ata/*ahci* to linux-image caused an + install conflict with linux-image-extras without an + ABI bump. + + [ Jan Beulich ] + + * SAUCE: xen-pciback: rate limit error messages from + xen_pcibk_enable_msi{, x}() + - LP: #1117336 + - CVE-2013-0231 + + -- Tim Gardner Thu, 07 Feb 2013 05:38:12 -0700 + +linux (3.8.0-4.9) raring; urgency=low + + [ Herton Ronaldo Krzesinski ] + + * d-i: Add mellanox ethernet drivers to nic-modules + - LP: #1015339 + + [ Joseph Salisbury ] + + * SAUCE: ACPI: Add DMI entry for Sony VGN-FW41E_H + - LP: #1113547 + + [ Kamal Mostafa ] + + * SAUCE: alx driver import script + + [ Qualcomm Atheros, Inc ] + + * SAUCE: alx: Update to heads/master + + [ Tim Gardner ] + + * Release Tracking Bug + - LP: #1117673 + + * [debian] Remove dangling symlink from headers package + - LP: #1112442 + * [config] CONFIG_ALX=m + * [Config] Add alx to d-i nic-modules + * [Config] CONFIG_SATA_AHCI=m + - LP: #1056563 + + -- Leann Ogasawara Tue, 05 Feb 2013 05:54:32 -0800 + +linux (3.8.0-4.8) raring; urgency=low + + [ Allen Ibara ] + + * SAUCE: imx6: dts: Add IMX6Q AHCI support + + [ Andy Whitcroft ] + + * rebase to v3.8-rc6 + * updateconfigs following rebase to v3.8-rc6 + + [Leann Ogasawara] + + * Release Tracking Bug + - LP: #1112573 + + [ Paolo Pisati ] + + * SAUCE: imx6: enable sata clk if SATA_AHCI_PLATFORM + * [Config] SERIAL_AMBA_PL011=y (vexpress serial console) + * [Config] MMC_ARMMMCI=y (vexpress mmc) + * [Config] FB_ARMCLCD=y (vexpress framebuffer) + + [ Seth Forshee ] + + * [Config] CONFIG_MAC80211_MESSAGE_TRACING=y + + [ Upstream Kernel Changes ] + + * rebase to v3.8-rc6 + - LP: #1107477 + + -- Leann Ogasawara Fri, 01 Feb 2013 07:20:59 -0800 + +linux (3.8.0-3.7) raring; urgency=low + + [ Andy Green ] + + * SAUCE: ARM: OMAP2+: add cpu id register to MAC address helper + * SAUCE: ARM: omap2 add mac address allocation register api + * SAUCE: ARM: omap2 panda register ethernet and wlan for automatic mac + allocation + + [ Leann Ogasawara ] + + * rebase to v3.8-rc5 + * Release Tracking Bug + - LP: #1111486 + + [ Paolo Pisati ] + + * SAUCE: davinci: vpss: compilation fix + * [Config] enable TI OMAP4 support (Pandaboard/ES) + * [Config] OMAP_USB2=y (since TWL6030_USB depends on it) + * [Config] enable Freescale IMX6 support (SabreLite) + * [Config] SERIAL_IMX_CONSOLE=y + * [Config] MMC_*_IMX=y + * [Config] disable USB_SUSPEND + * [Config] USB_MXS_PHY=y + * [Config] USB_CHIPIDEA=y + * SAUCE: DTB: add support for multiple DTBs + * SAUCE: DTB: build imx6q-sabrelite + * SAUCE: DTB: build beaglexm + * SAUCE: DTB: build panda/panda es + * [Config] disable CPU_FREQ + * [Config] PANEL_TFP410=y (video DVI output) + * [Config] SND_OMAP_SOC*=y + * [Config] SND_IMX_SOC*=y + * [Config] I2C_IMX=y + * [Config] SPI_IMX=m + + [ Stefan Bader ] + + * [Config] Move 9p modules into generic package + - LP: #1107658 + + [ Tony Lindgren ] + + * SAUCE: ARM: OMAP2+: Limit omap initcalls to omap only on multiplatform + kernels + * SAUCE: ARM: OMAP2+: Use omap initcalls + * SAUCE: ARM: OMAP: Fix i2c cmdline initcall for multiplatform + * SAUCE: ARM: OMAP: Fix dmaengine init for multiplatform + * SAUCE: ARM: OMAP2+: Add multiplatform debug_ll support + * SAUCE: ARM: OMAP2+: Disable code that currently does not work with + multiplaform + * SAUCE: ARM: OMAP2+: Enable ARCH_MULTIPLATFORM support + * SAUCE: ARM: OMAP2+: Add minimal support for booting vexpress + * SAUCE: ARM: OMAP2+: Remove now obsolete uncompress.h and debug-macro.S + + [ Upstream Kernel Changes ] + + * rebase to v3.8-rc5 + - LP: #1096789 + + -- Leann Ogasawara Thu, 31 Jan 2013 06:44:52 -0800 + +linux (3.8.0-2.6) raring; urgency=low + + [ Adam Conrad ] + + * Fix up linux-tools -> SRCPKGNAME-tools rename + + [ Andy Whitcroft ] + + * [Config] re-disable CONFIG_SOUND_OSS + - LP: #1105230 + + [ Arend van Spriel ] + + * SAUCE: brcmsmac: fix tx status processing + + [Leann Ogasawara] + + * Release Tracking Bug + - LP: #1105104 + + -- Leann Ogasawara Fri, 25 Jan 2013 11:56:30 -0800 + +linux (3.8.0-1.5) raring; urgency=low + + [Tim Gardner] + + * Release Tracking Bug + - LP: #1101235 + + [ Dudley Du ] + + * SAUCE: Input: add support for Cypress PS/2 Trackpads + - LP: #978807 + + [ Kamal Mostafa ] + + * SAUCE: Input: increase struct ps2dev cmdbuf[] to 8 bytes + * SAUCE: Input: Cypress PS/2 Trackpad simulated multitouch + * [Config] Add CONFIG_PS2_CYPRESS + + [ Tim Gardner ] + + * rebase to v3.8-rc4 + + [ Upstream Kernel Changes ] + + * rebase to v3.8-rc4 + - LP: #1095315 + - LP: #886975 + - LP: #1086921 + + -- Leann Ogasawara Thu, 17 Jan 2013 10:50:22 -0800 + +linux (3.8.0-0.4) raring; urgency=low + + [ Leann Ogasawara ] + + * [Config] Update CONFIG_TOUCHSCREEN_EGALAX build annotation + * [Config] Update CONFIG_IIO build annotation + * [Config] Update CONFIG_TOUCHSCREEN_EETI annotation + * [Config] Remove CONFIG_SPI_DW_MMIO annotation + * [Config] Remove CONFIG_SPI_PL022 annotation + * [Config] Update CONFIG_EZX_PCAP annotation + * [Config] Update CONFIG_SENSORS_AK8975 annotation + * [Config] Disable CONFIG_DRM_MGAG200 + - LP: #1042903 + + -- Leann Ogasawara Mon, 14 Jan 2013 10:01:50 -0800 + +linux (3.8.0-0.3) raring; urgency=low + + [ Andy Whitcroft ] + + * Revert "SAUCE: (no-up) trace: add trace events for open(), exec() and + uselib()" + + [ Scott James Remnant ] + + * SAUCE: (no-up) trace: add trace events for open(), exec() and uselib() + (for v3.7+) + - LP: #1085766, #462111 + + -- Andy Whitcroft Fri, 11 Jan 2013 16:57:27 +0000 + +linux (3.8.0-0.2) raring; urgency=low + + [ Tim Gardner ] + + * [packaging] Add macro to selectively disable building perf + * [packaging] Cannot depend on universe package libaudit-dev + + -- Tim Gardner Thu, 10 Jan 2013 12:43:24 -0700 + +linux (3.8.0-0.1) raring; urgency=low + + + [ Upstream Kernel Changes ] + + * rebase to v3.8-rc3 + - LP: #1096789 + + [ Upstream Kernel Changes ] + + * rebase to v3.8-rc2 + - LP: #1082357 + - LP: #1075882 + + -- Andy Whitcroft Mon, 17 Dec 2012 10:35:09 +0000 + +linux (3.7.0-7.15) raring; urgency=low + + [ Chris J Arges ] + + * SAUCE: add eeprom_bad_csum_allow module parameter + - LP: #1070182 + + [ Leann Ogasawara ] + + * Add ceph to linux-image for virtual instances + - LP: #1063784 + + [ Serge Hallyn ] + + * SAUCE: net: dev_change_net_namespace: send a KOBJ_REMOVED/KOBJ_ADD + + [ Tim Gardner ] + + * [Config] CONFIG_SLUB_DEBUG=y + - LP: #1090308 + + [ Upstream Kernel Changes ] + + * Revert "[SCSI] sd: Implement support for WRITE SAME" + - LP: #1089818 + + -- Leann Ogasawara Wed, 12 Dec 2012 06:50:20 -0800 + +linux (3.7.0-6.14) raring; urgency=low + + [ Andy Whitcroft ] + + * [Config] annotations: all new annotations scheme including defaults + * [Configs] apply annotation updates to main configs (top section) + + [ Leann Ogasawara ] + + * Revert "SAUCE: include and for mmc_core arm + build" + * Revert "SAUCE: [arm] fixup __aeabi_uldivmod undefined build error" + * Temporarily disable module check for build + + [ Stefan Bader ] + + * ubuntu: dm-raid45: Adapt to upstream interface changes + * Re-enable build of dm-raid45 + + [ Tim Gardner ] + + * SAUCE: Moved scripts/fw-to-ihex.sh to debian/scripts/misc + * SAUCE: ACPICA: Fix ACPI mutex object allocation memory leak on error + * SAUCE: drm: Fix possible EDID memory allocation oops + * SAUCE: ttm: Fix possible _manager memory allocation oops + * SAUCE: iwlwifi: iwlagn_request_scan: Fix check for priv->scan_request + * SAUCE: i915: intel_set_mode: Reduce stack allocation from 500 bytes to + 2 pointers + + [ Tomas Hozza ] + + * SAUCE: tools: hv: Netlink source address validation allows DoS + - LP: #1084777 + - CVE-2012-5532 + + [ Upstream Kernel Changes ] + + * rebase to v3.7 + + -- Leann Ogasawara Wed, 05 Dec 2012 14:11:12 -0800 + +linux (3.7.0-5.13) raring; urgency=low + + [ Lino Sanfilippo ] + + * SAUCE: inotify, fanotify: replace fsnotify_put_group() with + fsnotify_destroy_group() + - LP: #922906 + * SAUCE: fsnotify: introduce fsnotify_get_group() + - LP: #922906 + * SAUCE: fsnotify: use reference counting for groups + - LP: #922906 + * SAUCE: fsnotify: take groups mark_lock before mark lock + - LP: #922906 + * SAUCE: fanotify: add an extra flag to mark_remove_from_mask that + indicates wheather a mark should be destroyed + - LP: #922906 + * SAUCE: fsnotify: use a mutex instead of a spinlock to protect a groups + mark list + - LP: #922906 + * SAUCE: fsnotify: pass group to fsnotify_destroy_mark() + - LP: #922906 + * SAUCE: fsnotify: introduce locked versions of fsnotify_add_mark() and + fsnotify_remove_mark() + - LP: #922906 + * SAUCE: fsnotify: dont put marks on temporary list when clearing marks + by group + - LP: #922906 + * SAUCE: fsnotify: change locking order + - LP: #922906 + + [ Tim Gardner ] + + * [Config] CONFIG_NFC_LLCP=y + * [Config] get-firmware: Filter new files through fwinfo + * [Config] CONFIG_MTD_NAND_DOCG4=m for all arches + * [Config] CONFIG_DRM_EXYNOS_HDMI=y + * [Config] CONFIG_XEN=y for all arches + * [Config] CONFIG_SND_OMAP_SOC_ZOOM2=m + * [Config] CONFIG_MMC_DW_EXYNOS=m + * [Config] CONFIG_GPIO_ADNP=m + * [Config] find-obsolete-firmware: Use correct path + * rebase to v3.7-rc8 + - LP: #1084640 + + [ Upstream Kernel Changes ] + + * Revert "VFS: don't do protected {sym,hard}links by default" + - LP: #1084192 + + -- Tim Gardner Wed, 28 Nov 2012 16:07:08 +0000 + +linux (3.7.0-4.12) raring; urgency=low + + [ Tim Gardner ] + + * Revert "[Config] Use -j1 for headers_install" + * Revert "[Config] install-arch-headers needs a valid config" + Strayed into the weeds in search of the root cause of the periodic + build failure. + Fixes powerpc FTBS introduced in -4.11. + * [Config] hmake -j1 + The kernel makefile appears to have parallel dependency + problems for the install_headers target. This appears to be root + cause for a periodic build failure on N-way machines. + + -- Leann Ogasawara Tue, 27 Nov 2012 12:33:06 -0800 + +linux (3.7.0-4.11) raring; urgency=low + + [ Tim Gardner ] + + * [Config] Use -j1 for headers_install + Also fixes a powerpc FTBS introduced by + "[Config] install-arch-headers needs a valid config". + + -- Tim Gardner Tue, 27 Nov 2012 10:19:30 -0700 + +linux (3.7.0-4.10) raring; urgency=low + + [ Andy Whitcroft ] + + * [Config] add rebuild-test support for autopkgtest + - LP: #1081500 + * [tests] move build tests out of the way + - LP: #1081500 + * [tests] add an autopkgtest rebuild test + - LP: #1081500 + + [ Tim Gardner ] + + * rebase to v3.7-rc7 + * SAUCE: Remove emi62 files duplicated in linux-firmware + * SAUCE: Remove sb16 files duplicated in linux-firmware + * SAUCE: Remove whiteheat files duplicated in linux-firmware + * SAUCE: Remove yamaha files duplicated in linux-firmware + * SAUCE: Remove dsp56k files used only by m68k + * SAUCE: firmware: Remove last vestiges of dabusb + * SAUCE: Remove vicam files duplicated in linux-firmware + * [Config] install-arch-headers needs a valid config + + [ Upstream Kernel Changes ] + + * rebase to v3.7-rc7 + - LP: #1076840 + - LP: #1081466 + + -- Leann Ogasawara Wed, 21 Nov 2012 06:07:23 -0800 + +linux (3.7.0-3.9) raring; urgency=low + + [ Leann Ogasawara ] + + * [Config] Enable CONFIG_X86_CPUFREQ_NFORCE2=y + - LP: #1079900 + * Add nfsv3 to nfs-modules udeb + + [ Paolo Pisati ] + + * [Config] SND_OMAP_SOC*=y + - LP: #1019321 + + [ Stefan Bader ] + + * SAUCE: (no-up) xen/netfront: handle compound page fragments on transmit + - LP: #1078926 + + [ Tim Gardner ] + + * Revert "SAUCE: SECCOMP: audit: always report seccomp violations" + - LP: #1079469 + * Revert "SAUCE: omap3 clocks .dev_id = NULL" + * rebase to v3.7-rc6 + * SAUCE: script to detect obsolete firmware + * SAUCE: Remove yam files duplicated in linux-firmware + * SAUCE: Remove tehuti files duplicated in linux-firmware + * SAUCE: Remove matrox files duplicated in linux-firmware + * SAUCE: Remove cxgb3 files duplicated in linux-firmware + * SAUCE: Remove r128 files duplicated in linux-firmware + * SAUCE: Remove acenic files duplicated in linux-firmware + * SAUCE: Remove keyspan files duplicated in linux-firmware + * SAUCE: Remove sun files duplicated in linux-firmware + * SAUCE: Remove radeon files duplicated in linux-firmware + * SAUCE: Update bnx2x firmware to 7.8.2.0 + * [Config] generic.inclusion-list: econet has disappeared + + [ Upstream Kernel Changes ] + + * seccomp: forcing auditing of kill condition + - LP: #1079469 + * rebase to v3.7-rc6 + + -- Leann Ogasawara Tue, 20 Nov 2012 12:28:55 -0800 + +linux (3.7.0-2.8) raring; urgency=low + + [ Andy Whitcroft ] + + * Revert "overlayfs: disable until FTBS is fixed" + * Revert "ubuntu: overlayfs" + * Revert "ubuntu: AUFS" + * ubuntu: overlayfs -- overlayfs: add statfs support + * ubuntu: overlayfs -- ovl: switch to __inode_permission() + * ubuntu: overlayfs -- overlayfs: copy up i_uid/i_gid from the underlying + inode + - LP: #944386 + * ubuntu: AUFS (no-squash): basic framework and update machinary + * ubuntu: AUFS (no-squash) -- aufs3-base.patch + * ubuntu: AUFS (no-squash) -- aufs3-standalone.patch + * ubuntu: AUFS: aufs-update -- follow the uapi header changes + * ubuntu: AUFS -- update to f2873474324d0a31af4340554b9715f51331bc7f + * ubuntu: AUFS (no-squash) -- reenable + - LP: #1079193 + + [ Erez Zadok ] + + * ubuntu: overlayfs -- overlayfs: implement show_options + + [ Miklos Szeredi ] + + * ubuntu: overlayfs -- vfs: add i_op->dentry_open() + * ubuntu: overlayfs -- vfs: export do_splice_direct() to modules + * ubuntu: overlayfs -- vfs: introduce clone_private_mount() + * ubuntu: overlayfs -- overlay filesystem + * ubuntu: overlayfs -- fs: limit filesystem stacking depth + * ubuntu: overlayfs -- vfs: export __inode_permission() to modules + + [ Neil Brown ] + + * ubuntu: overlayfs -- overlay: overlay filesystem documentation + + [ Robin Dong ] + + * ubuntu: overlayfs -- overlayfs: fix possible leak in ovl_new_inode + * ubuntu: overlayfs -- overlayfs: create new inode in ovl_link + + -- Andy Whitcroft Thu, 15 Nov 2012 13:35:12 +0000 + +linux (3.7.0-1.7) raring; urgency=low + + [ Tim Gardner ] + + * [Config] Drop dependency on libaudit-dev + Its a universe package which causes an FTBS on the builders. + libaudit-dev is not strictly required for the perf tools build. + + -- Tim Gardner Wed, 14 Nov 2012 10:08:13 -0700 + +linux (3.7.0-1.6) raring; urgency=low + + [ Andy Whitcroft ] + + * [Config] enforce -- switch CONFIG_NVRAM to more readable form + * [Config] better encode the CONFIG_NVRAM constaint + * enforcer -- fix debugging output + + [ Ben Collins ] + + * [Config] Add custom_override rule to allow for alternate kernel + file/install + * [Config] Use SRCPKGNAME as prefix for indep linux headers package + + [ Tim Gardner ] + + * [Config] Dropped armel + * Drop highbank from ABI fetch list + * [Config] Use dh_prep instead of 'dh_clean -k' + * [Config] Build depend on libaudit-dev, libunwind8-dev for tools + * [Config] Document binary-indep dependency chain + * rebase to v3.7-rc5 + + [ Upstream Kernel Changes ] + + * rebase to v3.7-rc5 + + -- Tim Gardner Tue, 13 Nov 2012 07:13:37 -0500 + +linux (3.7.0-0.5) raring; urgency=low + + [ Tim Gardner ] + + * [Config] CONFIG_AMD_IOMMU_V2=m + - LP: #1071520 + * [Config] CONFIG_MTD_ONENAND_SIM=n for armel + Fixes FTBS + + -- Tim Gardner Thu, 08 Nov 2012 15:45:39 -0500 + +linux (3.7.0-0.4) raring; urgency=low + + [ Ben Collins ] + + * [Config] Update enforce rule for CONFIG_NVRAM to better suit flavours + + [ Tim Gardner ] + + * [Config] do_tools=false for arm + + -- Tim Gardner Thu, 08 Nov 2012 05:39:51 -0700 + +linux (3.7.0-0.3) raring; urgency=low + + [ Tim Gardner ] + + * [Config] CONFIG_DRM_EXYNOS_HDMI=n for armhf + * [Config] CONFIG_MTD_NAND_DOCG4=n for armel/armhf + * [Config] Drop highbank harder + + -- Tim Gardner Wed, 07 Nov 2012 18:11:45 +0000 + +linux (3.7.0-0.2) raring; urgency=low + + [ Andy Whitcroft ] + + * [Config] add fs/udf to linux-image to support DVD/CD formats in virtual + instances + - LP: #1066921 + * [Config] drop highbank builds + + [ Jeremy Kerr ] + + * SAUCE: efivarfs: Implement exclusive access for {get, set}_variable + - LP: #1063061 + + [ Leann Ogasawara ] + + * Reinstate dropped.txt from Ubuntu-3.7.0-0.1-rc1 + + [ Tim Gardner ] + + * [Config] Dropped powerpc/ppc64 in favour of the community kernel + * [Config] CONFIG_MODULE_SIG=y for amd64,i386, and highbank + * rebase to v3.7-rc4 + * SAUCE: MODSIGN: Emit error for incorrectly signed module + + [ Upstream Kernel Changes ] + + * rebase to v3.7-rc4 + + -- Tim Gardner Mon, 05 Nov 2012 05:35:41 -0700 + +linux (3.7.0-0.1) raring; urgency=low + + + [ Upstream Kernel Changes ] + + * rebase to v3.7-rc3 + - LP: #1056078 + + [ Upstream Kernel Changes ] + + * rebase to v3.7-rc2 + - LP: #1060729 + - LP: #1059523 + - LP: #1006690 + - LP: #1049623 + - LP: #1046512 + - LP: #1052499 + - LP: #1037642 + - LP: #559939 + - LP: #1052460 + - LP: #939161 + - LP: #1046734 + + -- Tim Gardner Tue, 02 Oct 2012 08:13:07 -0600 + +linux (3.6.0-0.1) UNRELEASED; urgency=low + + + [ Upstream Kernel Changes ] + + * rebase to v3.6 + + [ Upstream Kernel Changes ] + + * rebase to v3.6-rc7 + + [ Upstream Kernel Changes ] + + * rebase to v3.6-rc6 + - LP: #1000424 + + [ Upstream Kernel Changes ] + + * rebase to v3.6-rc5 + - LP: #1040077 + + [ Upstream Kernel Changes ] + + * rebase to v3.6-rc4 + + [ Upstream Kernel Changes ] + + * rebase to v3.6-rc3 + - LP: #1038651 + - LP: #1034779 + + -- Leann Ogasawara Tue, 24 Jul 2012 06:37:09 -0700 + +linux (3.5.0-6.6) quantal-proposed; urgency=low + + [ Andy Whitcroft ] + + * [Config] CONFIG_INET6_XFRM_MODE_ROUTEOPTIMIZATION enable IPv6 + experimental features + * SAUCE: highbank -- export clock functions for modules + * [Config] highbank -- reenable CONFIG_TOUCHSCREEN_W90X900 + * [Config] highbank -- renenable CONFIG_SERIO_AMBAKMI + * [Config] highbank -- reenable CONFIG_RFKILL_GPIO + * [Config] highbank -- reenable CONFIG_MMC_SDHCI_PXAV3 + * [Config] highbank -- reenable CONFIG_MMC_SDHCI_PXAV3 + * [Config] highbank -- reenable CONFIG_KEYBOARD_SAMSUNG + * [Config] highbank -- reenable CONFIG_FB_ARMCLCD + * [Config] highbank -- reenable CONFIG_DW_DMAC + * [Config] highbank -- reenable CONFIG_USB_R8A66597_HCD + * [Config] highbank -- reenable CONFIG_USB_MV_UDC + * [Config] highbank -- reenable CONFIG_USB_DWC3 + * [Config] highbank -- reenable CONFIG_SATA_MV + * [Config] highbank -- reenable CONFIG_PATA_ARASAN_CF + * [Config] highbank -- CONFIG_CAN_C_CAN_PLATFORM + * [Config] highbank -- reenable CONFIG_MMC_ARMMMCI + * [Config] highbank -- reenable CONFIG_SERIAL_AMBA_PL010 + * [Config] highbank -- reenable CONFIG_ATMEL_PWM + * [Config] highbank -- enable CONFIG_CHECKPOINT_RESTORE + * [Config] highbank -- enable CONFIG_EXPERT + * [Config] highbank -- enable CONFIG_CHECKPOINT_RESTORE + * [Config] enable CONFIG_USB_DYNAMIC_MINORS + * [Config] enable CONFIG_USB_EHCI_TT_NEWSCHED + * [Config] enable CONFIG_USB_ETH_EEM + * [Config] enable CONFIG_USB_HCD_BCMA/CONFIG_USB_HCD_SSB + * [Config] disable CONFIG_USB_M66592 + * [Config] enable CONFIG_USB_NET2272 + * [Config] enable CONFIG_USB_R8A66597 + * [Config] annotate: CONFIG_USB_OMAP not required for our h/w + * [Config] set CONFIG_USB_MUSB_HDRC=m for omap + * [Config] annotate: CONFIG_USB_G_MULTI fix rule + * [Config] CONFIG_USB_GPIO_VBUS=m for OMAP + * [Config] Enable CONFIG_DRM_AST/_CIRRUS_QEMU/_MGAG200 + * [Config] sync configuration armhf omap -> armel omap + * [Config] annotate: CONFIG_IIO triggers build failures on OMAP4 + * [Config] disable CONFIG_OMAP_IOVMM is deprecated + + [ Bryan Wu ] + + * [Config] change default IO scheduler from CFQ to Deadline + + [ Leann Ogasawara ] + + * Revert "[Config] Temporarily disable CONFIG_MV643XX_ETH on powerpc" + * [Config] Disable CONFIG_MOUSE_INPORT + + [ Tim Gardner ] + + * SAUCE: firmware: Update bnx2x to current firmware version 7.2.51 + * [Config] Add bnx2x firmware to nic-modules udeb + * SAUCE: Add script to convert firmware to ihex format + * SAUCE: firmware: Upgrade bnx2 to current versions + * [Config] Add tigon firmware to nic-modules udeb + * [Config] CONFIG_EARLY_PRINTK_DBGP=y + - LP: #1026761 + * SAUCE: Remove redundant cis firmware + * SAUCE: Remove redundant emi26 firmware + * SAUCE: Remove redundant ttusb-budget firmware + * SAUCE: Remove redundant sun/cassini firmware + * SAUCE: Remove redundant ositech/Xilinx7OD firmware + * SAUCE: Remove redundant 3com/typhoon.bin firmware + * SAUCE: Remove redundant yamaha/ds1 firmware + * SAUCE: Remove redundant keyspan_pda firmware + * rebase to v3.5 + + [ Upstream Kernel Changes ] + + * rebase to v3.5 + - LP: #1027828 + + -- Leann Ogasawara Mon, 23 Jul 2012 05:57:04 -0700 + +linux (3.5.0-5.5) quantal-proposed; urgency=low + + [ Andy Whitcroft ] + + * [Config] annotations: initial import of configuration annotations + + [ Bryan Wu ] + + * [Config] enforcer -- add CONFIG_I2C_DESIGNWARE_PLATFORM enforce checker + + [ Leann Ogasawara ] + + * Rebase to v3.5-rc7 + + [ Manoj Iyer ] + + * SAUCE: Bluetooth: btusb: Add vendor specific ID (0a5c:21f4) BCM20702A0 + - LP: #1010281 + + [ Tim Gardner ] + + * [Config] enable CONFIG_I2C_HELPER_AUTO for all flavours as policy + expects + * [Config] CONFIG_I2O_CONFIG_OLD_IOCTL=n + * [Config] CONFIG_BRIDGE_EBT_ULOG=n + * [Config] CONFIG_IP_NF_QUEUE=n + * [Config] CONFIG_MTD_DOC2000=n + * [Config] CONFIG_PRINT_QUOTA_WARNING=n + * [Config] CONFIG_PRISM54=n + * [Config] CONFIG_SCx200_I2C=n + * [Config] CONFIG_USB_ANNOUNCE_NEW_DEVICES=y + + [ Upstream Kernel Changes ] + + * rebase to v3.5-rc7 + + -- Leann Ogasawara Mon, 16 Jul 2012 15:38:41 -0700 + +linux (3.5.0-4.4) quantal-proposed; urgency=low + + [ Andy Whitcroft ] + + * [Packaging] getabis should be extracting all packages + - LP: #1021174 + * [Config] getabis -- series uses linux-image-extra + - LP: #1021174 + * rebase to v3.5-rc6 + + [ Bryan Wu ] + + * [Config] built-in CONFIG_MICREL_PHY as other PHY drivers for all + flavours + * [Config] sync CONFIG_MOUSE_PS2_ config for all flavours + + [ Leann Ogasawara ] + + * [Config] Enable CONFIG_RT2800USB_RT35XX and CONFIG_RT2800USB_RT53XX + - LP: #1019561 + + [ Paolo Pisati ] + + * [Config] SND_OMAP_SOC, SND_OMAP_SOC_MCBSP and SND_OMAP_SOC_OMAP3_BEAGLE =y + - LP: #1019321 + + [ Stefan Bader ] + + * SAUCE: (pre-up) net: dont use __netdev_alloc_skb for bounce buffer + - LP: #1018456 + * (config) Disable ACPI_PROCFS_POWER + + [ Tim Gardner ] + + * [Config] CONFIG_ACPI_BGRT=y + * Extract firmware module info during getabi + - LP: #1021174 + + [ Upstream Kernel Changes ] + + * rebase to v3.5-rc6 + + -- Leann Ogasawara Mon, 09 Jul 2012 08:50:20 -0700 + +linux (3.5.0-3.3) quantal-proposed; urgency=low + + [ Andy Whitcroft ] + + * [Config] enable CONFIG_MEMTEST=y + - LP: #1004535 + * [Config] config-check: add support for a cut operation + * [Config] enforcer -- switch to cut where appropriate + + [ Leann Ogasawara ] + + * Rebase to v3.5-rc5 + * [Config] Updateconfigs after rebase to v3.5-rc5 + + [ Luis Henriques ] + + * SAUCE: ocfs2: Fix NULL pointer dereferrence in + __ocfs2_change_file_space + - LP: #1006012 + + [ Seth Forshee ] + + * SAUCE: (drop after 3.5) drm/i915: ignore pipe select bit when checking + for LVDS register initialization + - LP: #1012800 + + [ Upstream Kernel Changes ] + + * rebase to v3.5-rc5 + - LP: #1013183 + - LP: #1017017 + - LP: #884652 + + -- Leann Ogasawara Mon, 02 Jul 2012 06:41:58 -0700 + +linux (3.5.0-2.2) quantal-proposed; urgency=low + + [ Andy Whitcroft ] + + * rebase to v3.5-rc4 + + [ Arend van Spriel ] + + * SAUCE: (drop after 3.5) brcmsmac: fix NULL pointer crash in + brcms_c_regd_init() + - LP: #950320 + + [ Bryan Wu ] + + * [Config] Sync CONFIG_CGROUP_MEM_RES_CTLR_SWAP for ARM + + [ Chris J Arges ] + + * PACKAGING: add .gnu_debuglink sections to .ko files + - LP: #669641 + + [ Leann Ogasawara ] + + * d-i: Add hid-generic to input-modules + - LP: #1017879 + + [ Ming Lei ] + + * SAUCE: Revert "mmc: omap_hsmmc: Enable Auto CMD12" + - LP: #1017717, #225 + + [ Paolo Pisati ] + + * SAUCE: Revert "Fix OMAP EHCI suspend/resume failure (i693)" + - LP: #1017718 + * [Config] Disable generic USB_EHCI_HCD_PLATFORM on omap3 + + [ Seth Forshee ] + + * SAUCE: (drop after 3.5) brcm80211: smac: don't set up tx power limits + during initialization + - LP: #950320 + * SAUCE: (drop after 3.5) brcm80211: smac: always set channel specified + by mac80211 + - LP: #950320 + * SAUCE: (drop after 3.5) brcm80211: smac: remove unused code for 40MHz + channels + - LP: #950320 + * SAUCE: (drop after 3.5) brcm80211: smac: clean up channel.c + - LP: #950320 + * SAUCE: (drop after 3.5) brcm80211: smac: inform mac80211 of the X2 + regulatory domain + - LP: #950320 + * SAUCE: (drop after 3.5) brcm80211: smac: enable/disable radio on + regulatory updates + - LP: #950320 + * SAUCE: (drop after 3.5) brcm80211: smac: use mac80211 channel data for + tx power limits + - LP: #950320 + * SAUCE: (drop after 3.5) brcm80211: smac: don't validate channels + against internal regulatory data + - LP: #950320 + * SAUCE: (drop after 3.5) brcm80211: smac: use current regulatory domain + when checking whether OFDM is allowed + - LP: #950320 + + [ Tim Gardner ] + + * [Config] Enable CONFIG_CGROUPS for highbank + - LP: #1014692 + * [Config] FB_OMAP*=y and PANEL_TFP410=y + + [ Upstream Kernel Changes ] + + * rebase to v3.5-rc4 + + -- Leann Ogasawara Tue, 26 Jun 2012 06:21:05 -0700 + +linux (3.5.0-1.1) quantal-proposed; urgency=low + + [ Andy Whitcroft ] + + * [Config] highbank -- enable CONFIG_RFKILL=y and CONFIG_CAN=m + + [ Leann Ogasawara ] + + * Rebase to v3.5-rc1 + * [Config] Remove USB_DEVICEFS from the config enforcer + * [Config] Updateconfigs after rebase to v3.5-rc1 + * [Config] Temporarily disable CONFIG_MACH_NOKIA_RX51 on arm + * [Config] Temporarily disable CONFIG_TOUCHSCREEN_EETI on arm + * [Config] Temporarily disable CONFIG_TOUCHSCREEN_EGALAX on arm + * [Config] Temporarily disable CONFIG_EZX_PCAP on arm + * [Config] Temporarily disable CONFIG_LIS3L02DQ on arm + * [Config] Temporarily disable CONFIG_TI_CPSW on arm + * [Config] Temporarily disable CONFIG_GPIO_EM on arm + * [Config] Temporarily disable CONFIG_SERIAL_8250_EM on armhf + * [Config] Temporarily disable CONFIG_STMMAC_ETH on armhf + * [Config] Temporarily disable CONFIG_HW_RANDOM_ATMEL on armhf + * Rebase to v3.5-rc2 + * [Config] Updateconfigs after rebase to v3.5-rc2 + * [Config] Temporarily disable CONFIG_MV643XX_ETH on powerpc + * Rebase to v3.5-rc3 + * [Config] Updateconfigs after rebase to v3.5-rc3 + + [ Paul Mundt ] + + * SAUCE: fix bug.h's inclusion of kernel.h + + [ Stefan Bader ] + + * SAUCE: Fix compile failures of dm-raid45 + * [Config] Enable dm-raid45 + * Move dependency on crda to extra package + - LP: #657901 + * SAUCE: Mask CR4 writes on older Xen hypervisors + + [ Upstream Kernel Changes ] + + * rebase to v3.5-rc3 + - LP: #993162 + - LP: #925577 + * rebase to v3.5-rc2 + * rebase to v3.5-rc1 + - LP: #955892 + - LP: #978038 + - LP: #987371 + - LP: #929545 + - LP: #942316 + - LP: #903853 + + -- Leann Ogasawara Fri, 08 Jun 2012 14:28:46 -0700 + +linux (3.4.0-5.11) quantal-proposed; urgency=low + + [ Leann Ogasawara ] + + * [Config] Disable CONFIG_ARM_LPAE + - LP: #1009061 + + [ Oleksij Rempel ] + + * SAUCE: b43: do not call ieee80211_unregister_hw if we are not registred + - LP: #1008905 + + [ Paolo Pisati ] + + * [Config] omap3: MFD_OMAP_USB_HOST is usb host in omap2+. + - LP: #1009061 + + -- Leann Ogasawara Tue, 05 Jun 2012 08:06:28 -0700 + +linux (3.4.0-4.10) quantal; urgency=low + + [ Leann Ogasawara ] + + * Temporarily disable ABI and module check + + -- Leann Ogasawara Mon, 04 Jun 2012 20:27:31 -0700 + +linux (3.4.0-4.9) quantal; urgency=low + + [ Andy Whitcroft ] + + * [Config] fix config split to avoid the shared config + * [Config] updateconfigs following split config fix + * [Config] linux-image-extras needs full postinst + * [Config] CONFIG_BLK_DEV_NVME commonise across architectures + * [Config] CONFIG_HP_WATCHDOG enable as module + * [Config] CONFIG_PDC_ADMA is not boot essential + * [Config] CONFIG_XEN_ACPI_PROCESSOR should be enabled on x86 + * [Config] CONFIG_VT6655/CONFIG_VT6656=m + * [Config] CONFIG_TRANZPORT=m commonise + * [Config] CONFIG_R3964=m commonise + * [Config] CONFIG_SCSI_DH=m commonise + * [Config] CONFIG_SCSI_IBMVSCSIS=m commonise + * [Config] CONFIG_AMD_PHY=y phys are not autoloadable + * [Config] CONFIG_SCSI_QLA_ISCSI=m commonise + * [Config] CONFIG_SCSI_SPI_ATTR=m commonise + * [Config] CONFIG_USB_SN9C102 is deprecated disable + * [Config] CONFIG_USB_SI470X=m commonise + * [Config] CONFIG_USB_ET61X251=m commonise + * [Config] CONFIG_RTS_PSTOR=m commonise + * [Config] CONFIG_SCANLOG=m commonise + * [Config] CONFIG_SCSI_SYM53C8XX_2=m commonise + * [Config] CONFIG_SM_FTL=m commonise + * [Config] CONFIG_SOLO6X10=m commonise + * [Config] CONFIG_SND_PCM_OSS=n using pulseaudio emulation instead + * [Config] CONFIG_SPI_DESIGNWARE=m commonise + * [Config] CONFIG_SPI_SPIDEV=m commonise + * [Config] CONFIG_TABLET_USB_WACOM=m commonise + * [Config] CONFIG_TPS65010=m commonise + * [Config] CONFIG_STE10XP=y commonise + * [Config] CONFIG_X25_ASY=m commonise + * [Config] CONFIG_USB_MON=m commonise + * [Config] CONFIG_VME_BUS=m commonise + * [Config] CONFIG_W35UND=m commonise + * [Config] -CONFIG_TCG_TPM=y commonise + * [Config] highbank -- commonise filesystems + * [Config] highbank -- commonise subsystems + * [Config] highbank -- commonise network protocols + * [Config] highbank -- commonise input drivers + * [Config] highbank -- commonise CRYPTO options + * [Config] highbank -- commonise HID options + * [Config] highbank -- commonise sensors options + * [Config] highbank -- commonise EXPORTFS/FHANDLE + * [Config] highbank -- commonise CONFIG_CRYPTO_LZO + * [Config] highbank -- commonise ENCRYPTED_KEYS + * [Config] highbank -- commonise CONFIG_ATALK + * [Config] highbank -- commonise INET/INET6 + * [Config] highbank -- commonise NLS + * [Config] highbank -- commonise BLK/CHR + * [Config] highbank -- CONFIG_EXT2_FS=y boot essential on highbank + * [Config] highbank -- commonise INET/INET6 part 2 + * [Config] highbank -- commonise PHY settings + * [Config] highbank -- commonise CRC settings + * [Config] highbank -- commonise BINFMT settings + * [Config] highbank -- commonise DM settings + * [Config] highbank -- commonise RTC_DRV settings + * [Config] highbank -- commonise KEYBOARD/MOUSE settings + * [Config] highbank -- commonise USB settings + * [Config] highbank -- commonise GPIO settings + * [Config] highbank -- commonise I2C settings + * [Config] highbank -- commonise numerous subsystem selectors + * [Config] highbank -- commonise A-C modules missmatches + * [Config] highbank -- commonise D-F modules missmatches + * [Config] CONFIG_AUDIT_LOGINUID_IMMUTABLE incompatible with upstart + * [Config] highbank -- commonise G-I modules missmatches + * [Config] highbank -- commonise J-L modules missmatches + * [Config] highbank -- commonise M modules missmatches + * [Config] highbank -- commonise N-P modules missmatches + * [Config] highbank -- commonise Q-R modules missmatches + * [Config] highbank -- commonise S modules missmatches -- part 1 + * [Config] highbank -- commonise S modules missmatches -- part 2 + * [Config] highbank -- commonise T modules missmatches + * [Config] highbank -- commonise U-Z modules missmatches + + [ Ike Panhc ] + + * [Config] add highbank flavour + - LP: #1000831 + + [ Mark Langsdorf ] + + * SAUCE: arm highbank: add support for pl320-ipc driver + - LP: #1000831 + + [ Rob Herring ] + + * SAUCE: input: add a key driver for highbank + - LP: #1000831 + * SAUCE: ARM: highbank: Add smc calls to enable/disable the L2 + - LP: #1000831 + * SAUCE: force DMA buffers to non-bufferable on highbank + - LP: #1000831 + * SAUCE: net: calxedaxgmac: fix net timeout recovery + - LP: #1000831 + + [ Tim Gardner ] + + * [Config] CONFIG_IWLWIFI_EXPERIMENTAL_MFP=n + * [Config] CONFIG_PCI_REALLOC_ENABLE_AUTO=y + * [Config] CONFIG_CIFS_EXPERIMENTAL has disappeared + * [Config] Homogenize CIFS configs across all arches + * [Config] armhf should not be skipabi or skipmodules + - LP: #1006913 + + -- Leann Ogasawara Mon, 04 Jun 2012 05:52:49 -0700 + +linux (3.4.0-3.8) quantal; urgency=low + + [ Andy Whitcroft ] + + * [Config] include include/generated/compile.h + - LP: #942569 + * [Config] fix up postinst to ensure we know which error is which + - LP: #1002388 + + [ Herton Ronaldo Krzesinski ] + + * SAUCE: async_populate_rootfs: fix build warnings + - LP: #1003417 + + [ John Johansen ] + + * Revert "SAUCE: AppArmor: Add the ability to mediate mount" + * SAUCE: apparmor: Add the ability to mediate mount + * SAUCE: AppArmor: basic networking rules + * SAUCE: apparmor: fix profile lookup for unconfined + - LP: #978038, #987371 + * SAUCE: apparmor: fix long path failure due to disconnected path + - LP: #955892 + + [ Mario Limonciello ] + + * SAUCE: dell-laptop: rfkill blacklist Dell XPS 13z, 15 + - LP: #901410 + + [ Stefan Bader ] + + * (config) Built-in xen-acpi-processor + + [ Tim Gardner ] + + * [Config] CONFIG_NET_DSA=m + - LP: #1004148 + * [Config] Ensure CONFIG_XEN_ACPI_PROCESSOR=y for amd64 + + -- Leann Ogasawara Fri, 25 May 2012 11:38:33 -0700 + +linux (3.4.0-3.7) quantal; urgency=low + + [ Andy Whitcroft ] + + * [Config] drop the virtual flavour in favour of a split generic et al + * [Config] enforcer -- drop IDLE enforcement + * [Config] enable CONFIG_SCSI_VIRTIO=m for amd64 + * [Config] updateconfigs following removal of -virtual + + [ Leann Ogasawara ] + + * Rebase to v3.4 + + [ Seth Forshee ] + + * [Config] disable CONFIG_B43_BCMA_EXTRA + + [ Tim Gardner ] + + * [Config] Check for extras when building udebs + * [Config] Collapsed generic-pae into generic [i386] + + [ Upstream Kernel Changes ] + + * rebase to v3.4 + + -- Leann Ogasawara Mon, 21 May 2012 07:23:47 -0700 + +linux (3.4.0-2.6) quantal; urgency=low + + [ Andy Whitcroft ] + + * Revert "ubuntu: overlayfs -- overlayfs: update touch_atime() usage" + * Revert "ubuntu: overlayfs -- overlayfs: switch from d_alloc_root() to + d_make_root()" + * Revert "ubuntu: overlayfs -- overlayfs: follow header cleanup" + * Revert "ubuntu: overlayfs -- overlayfs: apply device cgroup and + security permissions to overlay files" + * Revert "ubuntu: overlayfs -- fs: limit filesystem stacking depth" + * Revert "ubuntu: overlayfs -- overlay: overlay filesystem documentation" + * Revert "ubuntu: overlayfs -- overlayfs: implement show_options" + * Revert "ubuntu: overlayfs -- overlayfs: add statfs support" + * Revert "ubuntu: overlayfs -- overlay filesystem" + * Revert "ubuntu: overlayfs -- vfs: introduce clone_private_mount()" + * Revert "ubuntu: overlayfs -- vfs: export do_splice_direct() to modules" + * Revert "ubuntu: overlayfs -- vfs: add i_op->open()" + * Revert "ubuntu: overlayfs -- vfs: pass struct path to __dentry_open()" + * ubuntu: overlayfs -- overlayfs: add statfs support + * ubuntu: overlayfs -- inode_only_permission: export inode level + permissions checks + * ubuntu: overlayfs -- overlayfs: switch to use inode_only_permissions + + [ Erez Zadok ] + + * ubuntu: overlayfs -- overlayfs: implement show_options + + [ Miklos Szeredi ] + + * ubuntu: overlayfs -- vfs: pass struct path to __dentry_open() + * ubuntu: overlayfs -- vfs: add i_op->open() + * ubuntu: overlayfs -- vfs: export do_splice_direct() to modules + * ubuntu: overlayfs -- vfs: introduce clone_private_mount() + * ubuntu: overlayfs -- overlay filesystem + * ubuntu: overlayfs -- fs: limit filesystem stacking depth + + [ Neil Brown ] + + * ubuntu: overlayfs -- overlay: overlay filesystem documentation + + [ Robin Dong ] + + * ubuntu: overlayfs -- overlayfs: fix possible leak in ovl_new_inode + * ubuntu: overlayfs -- overlayfs: create new inode in ovl_link + + [ Tim Gardner ] + + * [Config] perarch and indep tools builds need separate build directories + * Prevent upgrading a non-PAE CPU + * perf is not parallel build safe + + -- Leann Ogasawara Wed, 16 May 2012 08:43:18 -0700 + +linux (3.4.0-2.5) quantal; urgency=low + + [ Andy Whitcroft ] + + * [Config] perarch and indep tools builds need separate build directories + + [ Tim Gardner ] + + * Prevent upgrading a non-PAE CPU + * [Config] build debug + * [Config] perf tools are not parallel build safe + + -- Leann Ogasawara Tue, 15 May 2012 11:37:53 -0700 + +linux (3.4.0-2.4) quantal; urgency=low + + [ Leann Ogasawara ] + + * Revert "SAUCE: fsam7400: use UMH_WAIT_PROC consistently" + * Revert "ubuntu: fsam7400 select CHECK_SIGNATURE and depend on X86" + * Revert "ubuntu: fsam7400: Depend on CHECK_SIGNATURE" + * Revert "ubuntu: fsam7400 -- Cleanup Makefile" + * Revert "ubuntu: fsam7400 -- kill switch for Fujitsu Siemens Amilo M + 7400" + * Revert "ubuntu: omnibook: fix source file newline" + * Revert "ubuntu: omnibook -- update BOM" + * Revert "SAUCE: Make CONFIG_{OMNIBOOK, AVERATEC_5100P, PACKARDBELL_E5} + depend on X86" + * Revert "ubuntu: omnibook -- Added missing BOM file" + * Revert "ubuntu: omnibook -- support Toshiba (HP) netbooks" + * Revert "ubuntu: nx-emu - i386: mmap randomization for executable + mappings" + * Revert "SAUCE: disable_nx should not be in __cpuinitdata section for + X86_32" + * Revert "ubuntu: nx-emu - i386: NX emulation" + * Revert "ubuntu: rfkill drivers -- version 1.3" + * Temporarily disable module check + * [Config] Remove CONFIG_FSAM7400 + * [Config] Remove CONFIG_OMNIBOOK + * [Config] Update configs + * Rebase to v3.4-rc7 + * SAUCE: genirq: export handle_edge_irq() and irq_to_desc() + + [ Tim Gardner ] + + * Updated generic-pae description + * Rebase to v3.4-rc6 + * install-tools depends on build targets + + [ Upstream Kernel Changes ] + + * kconfig: in debug mode some 0 length message prints occur + * rebase to v3.4-rc7 + * rebase to v3.3-rc6 + + -- Leann Ogasawara Mon, 14 May 2012 08:22:56 -0700 + +linux (3.4.0-1.3) quantal; urgency=low + + [ Andy Whitcroft ] + + * [Config] control.stub is an intermediate product not a dependancy + - LP: #992414 + + [ Leann Ogasawara ] + + * remove i386 generic from getabis + + [ Upstream Kernel Changes ] + + * (pre-stable) b43: only reload config after successful initialization + - LP: #950295 + + -- Leann Ogasawara Wed, 02 May 2012 09:48:14 -0700 + +linux (3.4.0-1.2) quantal; urgency=low + + [ Andy Whitcroft ] + + * [Config] add build depends for flex, bison and pkg-config + + -- Andy Whitcroft Tue, 01 May 2012 13:15:41 +0100 + +linux (3.4.0-1.1) quantal; urgency=low + + [ Andy Whitcroft ] + + * ubuntu: overlayfs -- overlayfs: apply device cgroup and security + permissions to overlay files + - LP: #915941, #918212 + - CVE-2012-0055 + + [ Leann Ogasawara ] + + * Open Q + * Rebase to v3.4-rc5 + * [Config] Temporarily disable CONFIG_TOUCHSCREEN_EETI on arm + * [Config] Temporarily disable CONFIG_TOUCHSCREEN_EGALAX on arm + * [Config] Temporarily disable CONFIG_EZX_PCAP on arm + * [Config] Temporarily disable CONFIG_MFD_OMAP_USB_HOST on arm + * [Config] Temporarily disable CONFIG_LIS3L02DQ on arm + * [Config] Temporarily disable CONFIG_USB_EHCI_HCD_PLATFORM on arm + * [Config] Temporarily disable CONFIG_TI_CPSW on arm + * [Config] Temporarily disable CONFIG_AX88796 on arm + + [ Upstream Kernel Changes ] + + * vfs: pass struct path to __dentry_open() + * vfs: add i_op->open() + * vfs: export do_splice_direct() to modules + * vfs: introduce clone_private_mount() + * overlay filesystem + * overlayfs: add statfs support + * overlayfs: implement show_options + * overlay: overlay filesystem documentation + * fs: limit filesystem stacking depth + * overlayfs: follow header cleanup + * overlayfs: switch from d_alloc_root() to d_make_root() + * overlayfs: update touch_atime() usage + * rebase to v3.4-rc5 + - LP: #950490 + * rebase to v3.4-rc4 + * rebase to v3.4-rc3 + * rebase to v3.4-rc2 + * rebase to v3.4-rc1 + * rebase to v3.3 + * rebase to v3.3-rc7 + * rebase to v3.3-rc6 + * rebase to v3.3-rc5 + * rebase to v3.3-rc4 + - LP: #900802 + - LP: #930842 + * rebase to v3.3-rc3 + - LP: #924320 + - LP: #923316 + - LP: #923409 + - LP: #918254 + * rebase to v3.3-rc2 + * rebase to v3.3-rc1 + - LP: #795823 + - LP: #909419 + - LP: #910792 + - LP: #878701 + - LP: #724831 + + -- Leann Ogasawara Wed, 25 Jan 2012 06:50:04 -0800 + +linux (3.2.0-10.18) precise; urgency=low + + [ Tim Gardner ] + + * SAUCE: ecryptfs: Print inode on metadata error + + [ Upstream Kernel Changes ] + + * Revert "proc: enable writing to /proc/pid/mem" + - LP: #919115 + - CVE-2012-0056 + * (pre-stable) ALSA: HDA: Use LPIB position fix for Macbook Pro 7, 1 + - LP: #909419 + + -- Andy Whitcroft Tue, 24 Jan 2012 10:15:12 +0000 + +linux (3.2.0-10.17) precise; urgency=low + + [ Andy Whitcroft ] + + * Revert "SAUCE: overlayfs -- fs: limit filesystem stacking depth" + * Revert "SAUCE: overlayfs -- overlay: overlay filesystem documentation" + * Revert "SAUCE: overlayfs -- overlayfs: implement show_options" + * Revert "SAUCE: overlayfs -- overlayfs: add statfs support" + * Revert "SAUCE: overlayfs -- overlay filesystem" + * Revert "SAUCE: overlayfs -- vfs: introduce clone_private_mount()" + * Revert "SAUCE: overlayfs -- vfs: export do_splice_direct() to modules" + * Revert "SAUCE: overlayfs -- vfs: add i_op->open()" + * ensure debian/ is not excluded from git by default + * add new scripting to handle buglinks in rebases + * ubuntu: overlayfs -- overlayfs: add statfs support + * ubuntu: overlayfs -- overlayfs: apply device cgroup and security + permissions to overlay files + - LP: #915941, #918212 + - CVE-2012-0055 + + [ Erez Zadok ] + + * ubuntu: overlayfs -- overlayfs: implement show_options + + [ Leann Ogasawara ] + + * Revert "SAUCE: dmar: disable if ricoh multifunction detected" + * [Config] Disable CONFIG_INTEL_IOMMU_DEFAULT_ON + - LP: #907377, #911236 + * [Config] Enable CONFIG_IRQ_REMAP + + [ Miklos Szeredi ] + + * ubuntu: overlayfs -- vfs: pass struct path to __dentry_open() + * ubuntu: overlayfs -- vfs: add i_op->open() + * ubuntu: overlayfs -- vfs: export do_splice_direct() to modules + * ubuntu: overlayfs -- vfs: introduce clone_private_mount() + * ubuntu: overlayfs -- overlay filesystem + * ubuntu: overlayfs -- fs: limit filesystem stacking depth + + [ Neil Brown ] + + * ubuntu: overlayfs -- overlay: overlay filesystem documentation + + [ Upstream Kernel Changes ] + + * (pre-stable) x86/PCI: amd: factor out MMCONFIG discovery + - LP: #647043 + * (pre-stable) PNP: work around Dell 1536/1546 BIOS MMCONFIG bug that + breaks USB + - LP: #647043 + + -- Leann Ogasawara Mon, 16 Jan 2012 07:10:08 -0800 + +linux (3.2.0-9.16) precise; urgency=low + + [ Andy Whitcroft ] + + * [Config] Enable numerous CONFIG_VIDEO_* cards on ARM + * [Config] pull ARM sound modules =m + * [Config] CONFIG_RTC_DRV_TEST is for testing only + * [Config] CONFIG_USB_DUMMY_HCD is testing only + * [Config] CONFIG_USB_FILE_STORAGE is deprecated + + [ Leann Ogasawara ] + + * Revert "[Config] Temporarily disable CONFIG_CAN_TI_HECC on armel" + * [Config] Enable CONFIG_HW_RANDOM_PASEMI=m + * [Config] Enable CONFIG_MMC_TMIO=m + * [Config] Enable CONFIG_MTD_NAND_FSL_ELBC=m + * [Config] Enable CONFIG_ISI=m + * [Config] Enable CONFIG_MMC=y + * [Config] Enable CONFIG_LIRC_PARALLEL=m + * [Config] Enable CONFIG_MAC_EMUMOUSEBTN=m + * [Config] Enable CONFIG_CHR_DEV_SG=y + * [Config] Enable CONFIG_GPIO_PCA953X=m + * [Config] Enable CONFIG_GPIO_TWL4030=m + * [Config] Enable CONFIG_INET_DIAG=m + * [Config] Enable CONFIG_NLS_ISO8859_1=m + * [Config] Enable CONFIG_NVRAM=m + * [Config] Enable CONFIG_SLIP=m + * [Config] Enable CONFIG_PC300TOO=m + * [Config] Enable CONFIG_TUN=y + * [Config] Enable CONFIG_NET_CLS_CGROUP=m + * [Config] Enable CONFIG_THERMAL=y + * [Config] Enable CONFIG_PPP=y + * [Config] Enable CONFIG_PCI_STUB=m + * Rebase to v3.2.1 + * [Config] Enable CONFIG_RTL8192E=m + * [Config] Enable CONFIG_RTS5139=m + + [ Stefan Bader ] + + * [Config] Make CONFIG_VIRTIO_(NET|BLK)=y + + [ Upstream Kernel Changes ] + + * ARM: restart: add restart hook to machine_desc record + * ARM: restart: allow platforms more flexibility specifying restart mode + * ARM: restart: move reboot failure handing into machine_restart() + * ARM: restart: remove argument to setup_mm_for_reboot() + * ARM: 7159/1: OMAP: Introduce local common.h files + * ARM: restart: only perform setup for restart when soft-restarting + * ARM: 7189/1: OMAP3: Fix build break in cpuidle34xx.c because of irq + function + * ARM: idmap: populate identity map pgd at init time using .init.text + * ARM: suspend: use idmap_pgd instead of suspend_pgd + * ARM: proc-*.S: place cpu_reset functions into .idmap.text section + * ARM: idmap: use idmap_pgd when setting up mm for reboot + * ARM: head.S: only include __turn_mmu_on in the initial identity mapping + * ARM: SMP: use idmap_pgd for mapping MMU enable during secondary booting + * ARM: 7194/1: OMAP: Fix build after a merge between v3.2-rc4 and ARM + restart changes + * ARM: lib: add call_with_stack function for safely changing stack + * ARM: reset: implement soft_restart for jumping to a physical address + * ARM: stop: execute platform callback from cpu_stop code + * ARM: kexec: use soft_restart for branching to the reboot buffer + * ARM: restart: omap: use new restart hook + * topdown mmap support + - LP: #861296 + + [ Upstream Kernel Changes ] + + * Rebase to v3.2.1 + + -- Leann Ogasawara Fri, 13 Jan 2012 20:32:08 +0100 + +linux (3.2.0-8.15) precise; urgency=low + + [ Leann Ogasawara ] + + * [Config] Disable CONFIG_ACPI_PROCFS + * Remove server from getabis + * Temporarily disable module check + * [Config] Disable CONFIG_MTD_TESTS + * [Config] Disable CONFIG_X86_E_POWERSAVER + * [Config] Set CONFIG_ARCNET=m + * [Config] Enable CONFIG_ATM_DUMMY=m + * [Config] Enable CONFIG_BLK_DEV_MD=y + * ubuntu: fsam7400 select CHECK_SIGNATURE and depend on X86 + * [Config] Enable CONFIG_BLK_DEV_SD=y + * [Config] Enable CONFIG_BLK_DEV_SR=y + * [Config] Enable CONFIG_BLK_DEV_UB=m + * [Config] Enable CONFIG_COPS=m + * [Config] Enable CONFIG_DVB_USB_EC168=m + * [Config] Enable CONFIG_ENC28J60=m + * [Config] Enable CONFIG_FB_UVESA=m + * [Config] Enable CONFIG_FB_ATY=m + * [Config] Enable CONFIG_BROADCOM_PHY=y + * [Config] Enable CONFIG_CICADA_PHY=y + * [Config] Enable CONFIG_DAVICOM_PHY=y + * [Config] Enable CONFIG_ICPLUS_PHY=y + * [Config] Enable CONFIG_LSI_ET1011C_PHY=y + * [Config] Enable CONFIG_LXT_PHY=y + * [Config] Enable CONFIG_MARVELL_PHY=y + * [Config] Enable CONFIG_NATIONAL_PHY=y + * [Config] Enable CONFIG_QSEMI_PHY=y + * [Config] Enable CONFIG_SMSC_PHY=y + * [Config] Enable CONFIG_VITESSE_PHY=y + * Add 3w-sas to scsi-modules + - LP: #776542 + + [ Mathieu Trudel-Lapierre ] + + * SAUCE: ipv6: make the net.ipv6.conf.all.use_tempaddr sysctl propagate + to interface settings + + [ Paolo Pisati ] + + * Revert "SAUCE: omap3: beagle: if rev unknown, assume xM revision C" + - LP: #912199 + * Revert "SAUCE: omap3: beagle: detect new xM revision B" + - LP: #912199 + * Revert "SAUCE: omap3: beaglexm: fix DVI initialization" + - LP: #912199 + + [ Upstream Kernel Changes ] + + * Bluetooth: Add support for BCM20702A0 [0a5c:21e3] + - LP: #906832 + + -- Leann Ogasawara Fri, 06 Jan 2012 10:02:03 -0800 + +linux (3.2.0-8.14) precise; urgency=low + + [ Andy Whitcroft ] + + * [Config] enable CONFIG_SND_USB_6FIRE + - LP: #912197 + * rebase to mainline v3.2 final release + * updateconfigs following rebase to v3.2 final + * ubuntu: AUFS -- add BOM and automated update script + * ubuntu: AUFS -- include the aufs_types.h file in linux-libc-headers + - LP: #684666 + * ubuntu: AUFS -- update aufs-update to track new locations of headers + * ubuntu: AUFS -- clean up the aufs updater and BOM + * ubuntu: AUFS -- documentation on updating aufs2 + * ubuntu: AUFS -- aufs3-base.patch + * ubuntu: AUFS -- aufs3-standalone.patch + * ubuntu: AUFS -- fix undefined __devcgroup_inode_permission + * ubuntu: AUFS -- fix undefined security_path_link + * ubuntu: AUFS -- update to 4cf5db36bcd9748e8e7270022f295f84d1fc2245 + * ubuntu: AUFS -- updateconfigs following update + * ubuntu: AUFS -- suppress benign plink warning messages + - LP: #621195 + * ubuntu: AUFS -- enable in config and makefile + * ubuntu: AUFS -- disable in favor of overlayfs + * [Config] linux-virtual -- should include the extX modules + - LP: #912308 + + [ Tyler Hicks ] + + * SAUCE: eCryptfs: Improve statfs reporting + - LP: #885744 + + [ Upstream Kernel Changes ] + + * rebase to upstream v3.2 + + -- Leann Ogasawara Mon, 26 Dec 2011 20:24:30 -0800 + +linux (3.2.0-7.13) precise; urgency=low + + [ Upstream Kernel Changes ] + + * rebase to upstream 3.2-rc7 + + -- Leann Ogasawara Mon, 19 Dec 2011 09:14:34 -0800 + +linux (3.2.0-6.12) precise; urgency=low + + [ Upstream Kernel Changes ] + + * rebase to upstream v3.2-rc6 + + -- Leann Ogasawara Fri, 16 Dec 2011 10:19:02 -0800 + +linux (3.2.0-5.11) precise; urgency=low + + [ Andy Whitcroft ] + + * enforcer -- allow arch and flavour predicates to take lists + * enforcer -- simplify armel/armhf specific options + * enforcer -- fix incorrectly specified flavour matches + + [ Leann Ogasawara ] + + * [Config] Disable IRQ_REMAP + * [Config] Enable CONFIG_SENSORS_LM95245=m + * [Config] Enable CONFIG_SENSORS_MAX1668=m + * [Config] Enable CONFIG_SENSORS_NTC_THERMISTOR=m + * [Config] Enable CONFIG_SENSORS_MAX6639=m + * [Config] Enable CONFIG_SENSORS_MAX6642=m + * [Config] Enable CONFIG_SENSORS_LINEAGE=m + * [Config] Enable CONFIG_CRYPTO_SALSA20=m + * [Config] Enable CONFIG_PATA_TOSHIBA=m + * [Config] Enable CONFIG_POHMELFS=m + * [Config] Enable CONFIG_NET_PACKET_ENGINE=y + * [Config] Enable CONFIG_PATA_OPTI=m + * add overlayfs to virtual inclusion list + - LP: #903897 + * add veth to virtual inclusion list + - LP: #903897 + * SAUCE: resolve WARNING: at drivers/block/floppy.c:2929 do_fd_request + + [ Paolo Pisati ] + + * [Config] DEFAULT_MMAP_MIN_ADDR=32k on arm + - LP: #903346 + + [ Tim Gardner ] + + * [Config] CONFIG_LOCKUP_DETECTOR=y + - LP: #903615 + + [ Upstream Kernel Changes ] + + * rebase to upstream 55b02d2f + + -- Leann Ogasawara Mon, 12 Dec 2011 07:08:10 -0800 + +linux (3.2.0-4.10) precise; urgency=low + + [ Kyle McMartin ] + + * SAUCE: dmar: disable if ricoh multifunction detected + - LP: #894070 + + [ Seth Forshee ] + + * SAUCE: dell-wmi: Demote unknown WMI event message to pr_debug + - LP: #581312 + + [ Tim Gardner ] + + * Start new release, Bump ABI, rebase to 3.2-rc5 + + [ Leann Ogasawara ] + + * [Config] Enable CONFIG_SENSORS_AK8975=m + + -- Tim Gardner Sat, 10 Dec 2011 08:57:04 -0700 + +linux (3.2.0-3.9) precise; urgency=low + + [ Andy Whitcroft ] + + * SAUCE: ext4: correct partial write discard size calculation + - LP: #894768 + + [ Leann Ogasawara ] + + * Revert "SAUCE: x86, microcode, AMD: Restrict microcode reporting" + - LP: #892615 + + [ Matthew Garrett ] + + * SAUCE: pci: Rework ASPM disable code + + [ Upstream Kernel Changes ] + + * x86: Fix boot failures on older AMD CPU's + - LP: #892615 + * EHCI : Fix a regression in the ISO scheduler + - LP: #899165 + + -- Leann Ogasawara Mon, 05 Dec 2011 10:37:36 -0800 + +linux (3.2.0-3.8) precise; urgency=low + + [ Andy Whitcroft ] + + * armhf -- add d-i configuration + * armhf -- disable ABI checks for armhf + * armhf -- add arch to getabis config + + -- Andy Whitcroft Sat, 03 Dec 2011 14:22:52 +0000 + +linux (3.2.0-3.7) precise; urgency=low + + [ Stefan Bader ] + + * SAUCE: x86/paravirt: PTE updates in k(un)map_atomic need to be + synchronous, regardless of lazy_mmu mode + - LP: #854050 + + [ Tim Gardner ] + + * rebase to v3.2-rc4 + + -- Leann Ogasawara Fri, 02 Dec 2011 11:53:56 -0800 + +linux (3.2.0-2.6) precise; urgency=low + + [ Andy Whitcroft ] + + * armhf -- fix omap flavour to build on armhf + * [Config] CONFIG_PATA_MACIO=y to fix MAC qemu boot + + [ Borislav Petkov ] + + * SAUCE: x86, microcode, AMD: Restrict microcode reporting + - LP: #892615 + + [ Colin Watson ] + + * Add pata_macio to pata-modules + + [ Tim Gardner ] + + * [Config] Prefer crda over wireless-crda + * [Config] Fix virtual inclusion list. + - LP: #897795 + + -- Leann Ogasawara Wed, 30 Nov 2011 06:09:35 -0800 + +linux (3.2.0-2.5) precise; urgency=low + + [ Paolo Pisati ] + + * [Config] PANEL_DVI=y + + -- Leann Ogasawara Mon, 28 Nov 2011 09:13:24 -0800 + +linux (3.2.0-2.4) precise; urgency=low + + [ Andy Whitcroft ] + + * rebase to v3.2-rc3 + + [ Leann Ogasawara ] + + * Revert "SAUCE: xen: Do not use pv spinlocks on HVM" + * Revert "fix ERROR: __devcgroup_inode_permission undefined" + * Revert "olpc_dcon_xo_1_5 needs delay.h" + * Revert "olpc_dcon_xo_1 needs delay.h" + * rebase to 6fe4c6d4 + * [Config] updateconfigs after rebase to 6fe4c6d4 + + [ Tim Gardner ] + + * [Config] Replace wireless-crda with crda,wireless-regdb + - LP: #856421 + * [Config] Relax the dependencies on crda + + [ Upstream Kernel Changes ] + + * (pre-stable) HID: bump maximum global item tag report size to 96 bytes + - LP: #724831 + * Ubuntu: remove coreutils|fileutils package dependency + - LP: #892814 + * iio: iio_event_getfd -- fix ev_int build failure + + [ Upstream Kernel Changes ] + + * Rebase to v3.2-rc3 + + -- Andy Whitcroft Thu, 24 Nov 2011 16:20:45 +0000 + +linux (3.2.0-1.3) precise; urgency=low + + [ Upstream Kernel Changes ] + + * Ubuntu: Add ext2 to fs-core-modules + - LP: #893395 + + -- Leann Ogasawara Mon, 21 Nov 2011 20:42:33 -0800 + +linux (3.2.0-1.2) precise; urgency=low + + [ Andy Whitcroft ] + + * [Config] enable CONFIG_NFC and associated devices + * SAUCE: allow brcmsmac and b43 to both build + + [ Soren Hansen ] + + * Add ixgbe driver to d-i + - LP: #891969 + + -- Leann Ogasawara Mon, 21 Nov 2011 08:33:46 -0800 + +linux (3.2.0-1.1) precise; urgency=low + [ Andy Whitcroft ] + + * armhf -- enable armhf and create the first flavours + * SAUCE: ensure root is ready before running usermodehelpers in it + * [Config] enforcer -- ensure CONFIG_FAT_FS is built-in on arm + + [ Leann Ogasawara ] + + * Temporarily ignore module check + * [Config] Enable PCI_IOV on powerpc + * [Config] Temporarily disable CONFIG_PASEMI_MAC on powerpc + * rebase to v3.2-rc2 + * SAUCE: include for cpuidle34xx arm build + * SAUCE: include for linux/mtd/map.h arm build + * SAUCE: include and for mmc_core arm build + * SAUCE: select ARM_AMBA if OMAP3_EMU + * [Config] updateconfigs after select ARM_AMBA + * [Config] Temporarily disable CONFIG_KVM_BOOK3S_32 on powerpc + * [Config] Enable CONFIG_EXT2_FS=m + * [Config] Build in CONFIG_SATA_AHCI=y + * Resolve linux-image-extra's install dependency + + [ Seth Forshee ] + + * [Config] Enable EVENT_POWER_TRACING_DEPRECATED=y for powertop + * SAUCE: (drop after 3.2) Input: ALPS - move protocol information to + Documentation + * SAUCE: (drop after 3.2) Input: ALPS - add protocol version field in + alps_model_info + * SAUCE: (drop after 3.2) Input: ALPS - remove assumptions about packet + size + * SAUCE: (drop after 3.2) Input: ALPS - add support for protocol versions + 3 and 4 + * SAUCE: (drop after 3.2) Input: ALPS - add semi-MT support for v3 + protocol + * SAUCE: (drop after 3.2) Input: ALPS - add documentation for protocol + versions 3 and 4 + + [ Stefan Bader ] + + * [Config] Built-in xen-netfront and xen-blkfront + * Fix build of dm-raid45 and re-enable it + + [ Tim Gardner ] + + * [Config] CONFIG_USB_XHCI_HCD=y + - LP: #886167 + * [Config] CONFIG_R6040=m + - LP: #650899 + * SAUCE: Add a new entry (413c:8197) to Bluetooth USB device ID table + - LP: #854399 + * [Config] Consolidated amd64 server flavour into generic + * [Config] updateconfigs after rebase to 3.2-rc1 + * [Config] Disabled dm-raid4-5 + * [Config] Disabled ndiswrapper + * [Config] Disable vt6656 + * [Config] exclude ppp-modules for virtual flavour + * [Config] CONFIG_MEMSTICK_R592=m + - LP: #238208 + + [ Upstream Kernel Changes ] + + * CHROMIUM: seccomp_filter: new mode with configurable syscall filters + - LP: #887780 + * CHROMIUM: seccomp_filter: add process state reporting + - LP: #887780 + * CHROMIUM: seccomp_filter: Document what seccomp_filter is and how it + works. + - LP: #887780 + * CHROMIUM: x86: add HAVE_SECCOMP_FILTER and seccomp_execve + - LP: #887780 + * CHROMIUM: arm: select HAVE_SECCOMP_FILTER + - LP: #887780 + * CHROMIUM: seccomp_filters: move to btrees + * CHROMIUM: enable CONFIG_BTREE + * CHROMIUM: seccomp_filter: kill NR_syscall references + * CHROMIUM: seccomp_filters: guard all ftrace wrapper code + * CHROMIUM: seccomp_filters: clean up warnings; kref mistake + * CHROMIUM: seccomp_filter: remove "skip" from copy and add drop helper + * CHROMIUM: seccomp_filter: allow CAP_SYS_ADMIN management of execve + * CHROMIUM: seccomp_filter: inheritance documentation + * CHROMIUM: seccomp_filter: make inherited filters composable + * CHROMIUM: Fix seccomp_t compile error + - LP: #887780 + * CHROMIUM: Fix kref usage + - LP: #887780 + * CHROMIUM: enable CONFIG_SECCOMP_FILTER and CONFIG_HAVE_SECCOMP_FILTER + * rebase to v3.2-rc2 + + -- Leann Ogasawara Mon, 31 Oct 2011 09:24:39 -0400 + +linux (3.1.0-2.3) precise; urgency=low + + [ Tim Gardner ] + + * Add postinit and postrm scripts to the extras package + - LP: #882120 + + -- Leann Ogasawara Fri, 28 Oct 2011 12:48:33 -0700 + +linux (3.1.0-2.2) precise; urgency=low + + [ Andy Whitcroft ] + + * debian: add locking to protect debian/files from parallel update + + [ Leann Ogasawara ] + + * rebase to v3.1 + + [ Upstream Kernel Changes ] + + * rebase to v3.1 + + -- Leann Ogasawara Wed, 19 Oct 2011 07:12:38 -0700 + +linux (3.1.0-1.1) precise; urgency=low + + [ Andiry Xu ] + + * SAUCE: (drop during 3.2 merge) xHCI: AMD isoc link TRB chain bit quirk + - LP: #872811 + + [ Andy Whitcroft ] + + * Revert "ubuntu: compcache -- follow changes to bd_claim/bd_release" + - LP: #832694 + * Revert "ubuntu: compcache -- version 0.5.3" + - LP: #832694 + * [Config] standardise CONFIG_NETFILTER_XT_TARGET_TCPOPTSTRIP=m + * [Config] Enable CONFIG_MACVTAP=m + - LP: #822601 + * record the compiler in the ABI and check for inconsistant builds + * [Config] move ECRYPT_FS back to =y for all architectures + - LP: #827197 + * [Config] enable CONFIG_DRM_VMWGFX=m + - LP: #698009 + * [Config] re-fix ECRYPT_FS=y + - LP: #827197 + * enforcer -- ensure we have CONFIG_ECRYPT_FS=y + - LP: #827197 + * [Config] dropping compcache configuration options + * [Config] standardise on HZ=250 + * SAUCE: headers_install: fix #include "..." usage for userspace + - LP: #824377 + * make module-inclusion selection retain the left overs + * add a new linux-image-extras package for virtual + + [ Colin Watson ] + + * Deliver more Atheros, Ralink, and iwlagn NIC drivers to d-i + + [ edwin_rong ] + + * SAUCE: Staging: add driver for Realtek RTS5139 cardreader + - LP: #824273 + + [ Greg Kroah-Hartman ] + + * SAUCE: staging: rts5139: add vmalloc.h to some files to fix the build. + - LP: #824273 + + [ Jesse Sung ] + + * SAUCE: Unregister input device only if it is registered + - LP: #839238 + + [ Jiri Kosina ] + + * SAUCE: HID: add MacBookAir4, 2 to hid_have_special_driver[] + + [ Joshua V. Dillon ] + + * SAUCE: HID: add support for MacBookAir4,2 keyboard. + + [ Kees Cook ] + + * [Config] enable and enforce SECCOMP_FILTER on x86 + + [ Keng-Yu Lin ] + + * [Config] Enable CONFIG_RTS5139=m on i386/amd64 + - LP: #824273 + + [ Leann Ogasawara ] + + * Revert "ubuntu: overlayfs -- ovl: make lower mount read-only" + * Revert "ubuntu: overlayfs -- fs: limit filesystem stacking depth" + * Revert "ubuntu: overlayfs -- ovl: improve stack use of lookup and + readdir" + * Revert "ubuntu: overlayfs -- ovl: fix overlayfs over overlayfs" + * Revert "ubuntu: overlayfs -- overlayfs: implement show_options" + * Revert "ubuntu: overlayfs -- overlayfs: add statfs support" + * Revert "ubuntu: overlayfs -- overlay filesystem" + * Revert "ubuntu: overlayfs -- overlay: overlay filesystem documentation" + * Revert "SAUCE: ARM: OMAP: Add macros for comparing silicon revision" + * Revert "SAUCE: OMAP: DSS2: check for both cpu type and revision, rather + than just revision" + * Revert "SAUCE: OMAP: DSS2: enable hsclk in dsi_pll_init for OMAP36XX" + * Revert "ubuntu: fsam7400 disable driver" + - LP: #876030 + * rebase to v3.1-rc1 + * [Config] updateconfigs after rebase to v3.1-rc1 + * rebase to v3.1-rc2 + * [Config] Updateconfigs after rebase to v3.1-rc2 + * ubuntu: Yama - update calls to generic_permission() and + inode->i_op->permission() + * ubuntu: ndiswrapper -- remove netdev_priv macro + * ubuntu: aufs -- Temporarily disable due to build failure + * [Config] Diable INTEL_MID_PTI on armel + * [Config] Temporarily disable CONFIG_FTMAC100 on armel + * [Config] Temporarily disable CONFIG_FTGMAC100 on armel + * [Config] Temporarily disable CONFIG_CAN_TI_HECC on armel + * [Config] Temporarily disable CONFIG_VIDEO_OMAP2_VOUT on armel + * [Config] Set CONFIG_DM_MIRROR=m on amd64, i386, and arm + * [Config] Set CONFIG_DM_MULTIPATH=m on amd64, i386, and arm + * [Config] Set CONFIG_DM_SNAPSHOT=m on amd64, i386, and arm + * [Config] Enable CONFIG_EDAC_AMD8111=m on powerpc + * [Config] Enable CONFIG_EDAC_AMD8131=m on powerpc + * [Config] Enable CONFIG_EDAC_CPC925=m on powerpc + * [Config] Enable CONFIG_EDAC_PASEMI=m on powerpc + * [Config] Enable CONFIG_ECHO=m on powerpc + * [Config] Enable CONFIG_ET131X=m on powerpc + * [Config] Set CONFIG_FB_MATROX=m + * [Config] Enable CONFIG_FB_UDL=m on powerpc + * [Config] Set CONFIG_FB_VIRTUAL=n + * [Config] Enable CONFIG_FB_VGA16=m on powerpc + * [Config] Enable CONFIG_GPIO_MAX732X=m on arm + * [Config] Enable CONFIG_GPIO_PCF857X=m on arm + * [Config] Set CONFIG_HOTPLUG_PCI_FAKE=m + * [Config] Enable CONFIG_HOTPLUG_PCI=y on powerpc + * [Config] Enable CONFIG_HOTPLUG_PCI_CPCI=y on powerpc + * [Config] Enable CONFIG_HP_ILO=m on powerpc-smp + * [Config] Enable CONFIG_I2C_PASEMI=m on powerpc + * [Config] Enable CONFIG_IBM_BSR=m on powerpc + * [Config] Enable CONFIG_IBMVETH=m on powerpc + * [Config] Enable CONFIG_IDE_PHISON=m on powerpc + * [Config] Enable CONFIG_IGB=m on powerpc + * [Config] Enable CONFIG_IIO=m on powerpc + * [Config] Enable CONFIG_INFINIBAND_NES=m + * [Config] Enable CONFIG_IPMI_HANDLER=m on arm + * [Config] Enable CONFIG_IWL3945=m on powerpc + * [Config] Disable CONFIG_KVM_BOOK3S_64 + * [Config] Enable CONFIG_LAPBETHER=m on arm + * [Config] Enable CONFIG_LEDS_GPIO=m on powerpc + * [Config] Enable CONFIG_LEDS_CLEVO_MAIL=m all arch's + * [Config] Enable CONFIG_LEDS_PCA9532=m on powerpc + * [Config] Enable CONFIG_LEDS_PCA955X=m on powerpc + * [Config] Enable CONFIG_LEDS_TRIGGER_DEFAULT_ON=m on powerpc + * [Config] Set CONFIG_LEDS_TRIGGER_HEARTBEAT=m on arm and powerpc + * [Config] Set CONFIG_LEDS_TRIGGER_TIMER=m on powerpc + * [Config] Enable CONFIG_LINE6_USB=m on arm and powerpc + * [Config] Enable CONFIG_MEMSTICK=m on arm + * [Config] Enable CONFIG_MTD_AFS_PARTS=m on arm + * [Config] Enable CONFIG_MTD_ALAUDA=m on arm + * [Config] Enable CONFIG_MTD_AR7_PARTS=m on arm + * [Config] Enable CONFIG_MTD_ARM_INTEGRATOR=m on arm + * [Config] Enable CONFIG_MOXA_SMARTIO=m on powerpc + * [Config] Enable CONFIG_MTD_DATAFLASH=m on arm + * [Config] Enable CONFIG_MTD_GPIO_ADDR=m on arm + * [Config] Enable CONFIG_MTD_IMPA7=m on arm + * [Config] Enable CONFIG_MTD_NAND_GPIO=m on arm + * [Config] Enable CONFIG_MTD_NAND_NANDSIM=m on arm + * [Config] Enable CONFIG_MTD_NAND_PASEMI=m on powerpc + * [Config] Enable CONFIG_MTD_NAND_PLATFORM=m on arm + * [Config] Enable CONFIG_MTD_NAND_TMIO=m on arm + * [Config] Enable CONFIG_MTD_SST25L=m on arm + * [Config] Enable CONFIG_NET_CLS_CGROUP=y on arm + * [Config] Enable CONFIG_NET_CLS_FLOW=m on arm + * [Config] Enable CONFIG_NET_CLS_U32=m on arm + * [Config] Enable CONFIG_NET_DCCPPROBE=m on arm + * [Config] Enable CONFIG_NET_SCH_INGRESS=m on arm + * [Config] Enable CONFIG_NET_TCPPROBE=m on arm + * [Config] Enable CONFIG_PASEMI_MAC=m on powerpc + * [Config] Enable CONFIG_PATA_NS87410=m on powerpc + * [Config] Enable CONFIG_I2C_GPIO=m on powerpc64-smp + * [Config] Enable CONFIG_PANEL=m on powerpc + * [Config] Enable CONFIG_PATA_CMD640_PCI=m on powerpc + * SAUCE: x86: reboot: Make Dell Latitude E6520 use reboot=pci + - LP: #833705 + * [Config] Add CONFIG_EFI_VARS=y to the enforcer + - LP: #837332 + * [Config] Update CONFIG_EFI_VARS enforcer check + * [Config] Add aufs to virtual flavor inclusion list + - LP: #844159 + * SAUCE: x86: reboot: Make Dell Optiplex 790 use reboot=pci + - LP: #818933 + * SAUCE: x86: reboot: Make Dell Optiplex 990 use reboot=pci + - LP: #768039 + * SAUCE: x86: reboot: Make Dell Latitude E6220 use reboot=pci + - LP: #838402 + * [Config] Add igbvf to the virtual flavor inclusion list + - LP: #794570 + * [Config] Add ixgbevf to the virtual inclusion list + - LP: #872411 + * [Config] Transition -generic and -server to be identical + * rebase to v3.1-rc10 + + [ Luke Yelavich ] + + * [Config] Disable legacy IDE drivers on powerpc + + [ Ming Lei ] + + * SAUCE: fireware: add NO_MSI quirks for o2micro controller + - LP: #801719 + * SAUCE: ata_piix: make DVD Drive recognisable on systems with Intel + Sandybridge chipsets(v2) + - LP: #737388, #782389, #794642 + + [ Paolo Pisati ] + + * [Config] Compile-in vfat support for armel + - LP: #853783 + + [ Randy Dunlap ] + + * SAUCE: staging: fix rts5139 depends & build + - LP: #824273 + + [ Rene Bolldorf ] + + * SAUCE: (drop after 3.0) ideapad: Check if acpi already handle backlight + power in 'ideapad_backlight_notify_power' to avoid a page fault + + [ Seth Forshee ] + + * SAUCE: (no-up) Input: elantech - Add v3 hardware support + - LP: #681904 + * SAUCE: (drop after 3.1) usb_storage: Don't freeze in usb-stor-scan + - LP: #810020 + + [ Stefan Bader ] + + * (config) Package macvlan and macvtap for virtual + * [Config] Force perf to use libiberty for demangling + - LP: #783660 + * SAUCE: xen: Do not use pv spinlocks on HVM + - LP: #838026 + + [ Tim Gardner ] + + * [Config] Clean up tools rules + * [Config] Package x86_energy_perf_policy and turbostat + - LP: #797556 + * rebase to v3.1-rc3 + * [Config] Simplify binary-udebs dependencies + * [Config] kernel preparation cannot be parallelized + * [Config] Linearize module/abi checks + * [Config] Linearize and simplify tree preparation rules + * [Config] Build kernel image in parallel with modules + * [Config] Set concurrency for kmake invocations + * [Config] Improve install-arch-headers speed + * [Config] Fix binary-perarch dependencies + * [Config] Removed stamp-flavours target + * [Config] Serialize binary indep targets + * [Config] Use build stamp directly + * [Config] Restore prepare-% target + * rebase to v3.1-rc4 + * rebase to v3.1-rc5 + * [Config] Disable makedumpfile for i386/amd64 + * rebase to v3.1-rc6 + * [Config] Fix binary-% build target + * rebase to v3.1-rc7 + * rebase to v3.1-rc8 + * SAUCE: Add a new entry (413c:8197) to Bluetooth USB device ID table + - LP: #854399 + * [Config] Enable ftrace support in the mac80211 layer + - LP: #865171 + * rebase to v3.1-rc9 + * SAUCE: usb/core/devio.c: Check for printer class specific request + - LP: #872711 + + [ Upstream Kernel Changes ] + + * overlay filesystem + * overlayfs: add statfs support + * overlayfs: implement show_options + * overlay: overlay filesystem documentation + * fs: limit filesystem stacking depth + + [ Will Drewry ] + + * SAUCE: seccomp_filter: new mode with configurable syscall filters + * SAUCE: seccomp_filter: add process state reporting + * SAUCE: seccomp_filter: Document what seccomp_filter is and how it + works. + * SAUCE: seccomp_filter: add HAVE_SECCOMP_FILTER and seccomp_execve + + [ Upstream Kernel Changes ] + + * rebase to v3.1-rc1 + * rebase to v3.1-rc2 + * rebase to v3.1-rc3 + +CONFIG_BLK_DEV_BSGLIB=y + +CONFIG_BLK_DEV_LOOP_MIN_COUNT=8 + -CONFIG_VIDEO_OMAP2_VOUT_VRFB=y + * rebase to v3.1-rc4 + * rebase to v3.1-rc5 + * rebase to v3.1-rc6 + * rebase to v3.1-rc7 + * rebase to v3.1-rc8 + * rebase to v3.1-rc9 + * rebase to v3.1-rc10 + + -- Leann Ogasawara Wed, 10 Aug 2011 15:43:38 -0700 + +linux (3.1.0-1.0) oneiric; urgency=low + + [ Leann Ogasawara ] + + * Open P-series + + -- Leann Ogasawara Wed, 10 Aug 2011 13:42:40 -0700 + +linux (3.0.0-8.10) oneiric; urgency=low + + [ Adam Jackson ] + + * SAUCE: drm/i915/pch: Fix integer math bugs in panel fitting + - LP: #753994 + + [ John Johansen ] + + * [Config] Enable missing IPv6 options + + [ Leann Ogasawara ] + + * [Config] Disable config IWLWIFI_DEVICE_SVTOOL + - LP: #819925 + * Rebase to 3.0.1 + + [ Upstream Kernel Changes ] + + * x86, intel, power: Correct the MSR_IA32_ENERGY_PERF_BIAS message + * ALSA: hda - Turn on extra EAPDs on Conexant codecs + - LP: #783582 + * KVM: Remove SMEP bit from CR4_RESERVED_BITS + - LP: #796476 + * KVM: Add SMEP support when setting CR4 + - LP: #796476 + * KVM: Mask function7 ebx against host capability word9 + - LP: #796476 + * KVM: Add instruction fetch checking when walking guest page table + - LP: #796476 + + [ Upstream Kernel Changes ] + + * rebase to v3.0.1 + + -- Leann Ogasawara Fri, 05 Aug 2011 11:32:25 -0700 + +linux (3.0.0-7.9) oneiric; urgency=low + + [ Andy Whitcroft ] + + * Revert "[Upstream] add local prefix to oss local change_bits" + * Revert "SAUCE: add tracing for user initiated readahead requests" + * Revert "SAUCE: vfs: Add a trace point in the mark_inode_dirty function" + * Revert "SAUCE: Input: ALPS - Enable Intellimouse mode for Lenovo + Zhaoyang E47" + * Revert "SAUCE: fix documentation strings for struct input_keymap_entry" + * Revert "SAUCE: vt -- fix handoff numbering to 1..n and add range checks + (grub)" + * Revert "SAUCE: vt -- fix handoff numbering to 1..n and add range + checks" + * Revert "SAUCE: vt -- allow grub to request automatic vt_handoff" + * Revert "SAUCE: vt -- maintain bootloader screen mode and content until + vt switch" + * [Config] enable CONFIG_MTRR_SANITIZER_ENABLE_DEFAULT=1 + - LP: #816035 + * ubuntu: Yama: if an underlying filesystem provides a permissions op use + it + * SAUCE: (no-up) add tracing for user initiated readahead requests + * SAUCE: vt -- maintain bootloader screen mode and content until vt + switch + * SAUCE: vt -- allow grub to request automatic vt_handoff + + [ Arjan van de Ven ] + + * SAUCE: (no-up) vfs: Add a trace point in the mark_inode_dirty function + + [ Kees Cook ] + + * Revert "SAUCE: (no-up) Disable building the ACPI debugfs source" + * [Config] enforce ACPI_CUSTOM_METHOD disabled + + [ Keng-Yu Lin ] + + * SAUCE: (no-up) Input: ALPS - Enable Intellimouse mode for Lenovo + Zhaoyang E47 + - LP: #632884, #803005 + + [ Leann Ogasawara ] + + * [Config] Enable CONFIG_BLK_DEV_CMD64X=m on powerpc + - LP: #513131 + * [Config] Enable CONFIG_RT2800PCI_RT53XX=y + - LP: #815064 + + [ Rezwanul Kabir ] + + * SAUCE: (no-up) Add support for Intellimouse Mode in ALPS touchpad on + Dell E2 series Laptops + - LP: #632884 + + [ Upstream Kernel Changes ] + + * Revert "yama: if an underlying filesystem provides a permissions op use + it" + * Revert "Add support for Intellimouse Mode in ALPS touchpad on Dell E2 + series Laptops" + * Revert "tty: include linux/slab.h for kfree" + * Revert "gpio/ml_ioh_gpio: include linux/slab.h for kfree" + * Revert "pch_dma: add include/slab.h for kfree" + * mmc: Added quirks for Ricoh 1180:e823 lower base clock frequency + - LP: #773524 + * oss: rename local change_bits to avoid powerpc bitsops.h definition + + -- Leann Ogasawara Mon, 25 Jul 2011 09:08:01 -0700 + +linux (3.0.0-7.8) oneiric; urgency=low + + [ Andy Whitcroft ] + + * ubuntu: overlayfs -- overlayfs: add statfs support + * [Config] enable CONFIG_OVERLAYFS + + [ Erez Zadok ] + + * ubuntu: overlayfs -- overlayfs: implement show_options + + [ Leann Ogasawara ] + + * [Config] Enable CONFIG_ALIM7101_WDT=m on powerpc + * [Config] Enable CONFIG_ASUS_OLED=m on powerpc + * [Config] Disable CONFIG_ATM_DUMMY on arm + * [Config] Enable CONFIG_BLK_DEV_DRBD=m on powerpc + * Temporarily disable module check on arm + * Rebase to 3.0 final + * [Config] Enable CONFIG_CAN_TI_HECC=m on arm + * [Config] Set CONFIG_CDROM_PKTCDVD=m on amd64 and i386 + * [Config] Enable CONFIG_CRYPTO_CCM=m on powerpc + * [Config] Enable CONFIG_CRYPTO_DEV_HIFN_795X=m on powerpc + * [Config] Enable CONFIG_CRYPTO_GCM=m on powerpc + * [Config] Set CRYPTO_LZO=m on powerpc64-smp + * [Config] Enable CONFIG_DM9000=m on arm + * [Config] Set CONFIG_DISPLAY_SUPPORT=m on arm + * [Config] Enable CONFIG_DL2K=m on amd64 and i386 + + [ Miklos Szeredi ] + + * ubuntu: overlayfs -- vfs: add i_op->open() + * ubuntu: overlayfs -- vfs: export do_splice_direct() to modules + * ubuntu: overlayfs -- vfs: introduce clone_private_mount() + * ubuntu: overlayfs -- overlay filesystem + * ubuntu: overlayfs -- ovl: fix overlayfs over overlayfs + * ubuntu: overlayfs -- ovl: improve stack use of lookup and readdir + * ubuntu: overlayfs -- fs: limit filesystem stacking depth + * ubuntu: overlayfs -- ovl: make lower mount read-only + + [ Neil Brown ] + + * ubuntu: overlayfs -- overlay: overlay filesystem documentation + + [ Tim Gardner ] + + * [Config] Add enic/fnic to udebs + - LP: #801610 + + [ Upstream Kernel Changes ] + + * yama: if an underlying filesystem provides a permissions op use it + + [ Major Kernel Changes ] + + * Rebase to 3.0 final + + -- Leann Ogasawara Thu, 21 Jul 2011 07:01:32 -0700 + +linux (3.0.0-6.7) oneiric; urgency=low + + [ Eagon Yager ] + + * [Config] Fix misspelled 'skipmodule' in arm makefile. + + [ Keng-Yu Lin ] + + * SAUCE: Input: ALPS - Enable Intellimouse mode for Lenovo Zhaoyang E47 + - LP: #632884, #803005 + + [ Leann Ogasawara ] + + * Revert "[Config] Temporarily disable CONFIG_SMC91X on armel-omap" + * Revert "[Config] Temporarily Disable CONFIG_BRCMSMAC on arm" + * Revert "[Config] Temporarily Disable CONFIG_RTL8192SE on powerpc" + * Revert "[Config] Temporarily Disable CONFIG_RTL8192SE on arm" + * Revert "[Config] Temporarily disable CONFIG_BRCMSMAC on powerpc" + * [Config] Set CONFIG_ACPI_PCI_SLOT=m + * [Config] Set CONFIG_ACPI_SBS=m + * [Config] Set CONFIG_ACPI_WMI=m + * [Config] Set CONFIG_AD7150=m on arm + * [Config] Set CONFIG_AD7152=m on arm + * [Config] Drop CONFIG_GPIO_S5PV210 + * [Config] Drop CONFIG_GPIO_S5PC100 + * [Config] Drop CONFIG_GPIO_PLAT_SAMSUNG + * [Config] Drop CONFIG_GPIO_EXYNOS4 + + [ Stefan Bader ] + + * SAUCE: Re-enable RODATA for i386 virtual + - LP: #809838 + + [ Upstream Kernel Changes ] + + * Revert "Quirk to fix suspend/resume on Lenovo Edge 11,13,14,15" + * (drop after 3.0.0) acer-wmi: Add support for Aspire 1830 wlan hotkey + - LP: #771758 + + -- Leann Ogasawara Wed, 20 Jul 2011 06:36:02 -0700 + +linux (3.0.0-5.6) oneiric; urgency=low + + [ Tim Gardner ] + + * [Config] CONFIG_RTL8192CU=m + * Rebase to -rc7 + + -- Tim Gardner Mon, 11 Jul 2011 22:13:50 +0100 + +linux (3.0.0-4.5) oneiric; urgency=low + + [ Ming Lei ] + + * SAUCE: fix yama_ptracer_del lockdep warning + - LP: #791019 + + [ Seth Forshee ] + + * SAUCE: (drop after 3.0) asus-wmi: Add callback for hotkey filtering + * SAUCE: (drop after 3.0) eeepc-wmi: Add support for T101MT Home/Express Gate key + * SAUCE: (drop after 3.0) asus-wmi: Enable autorepeat for hotkey input device + * [Config] CONFIG_{ASUS,ASUS_NB,EEEPC}_WMI=m + - LP: #805218 + + [ Tim Gardner ] + + * [Config] updateconfigs after rebase to -rc6+ + Rebased against 4dd1b49c6d215dc41ce50c80b4868388b93f31a3 + * Adopt a 3 digit verion, e.g., 3.0.0-x.x + * Revert "UBUNTU: add dependancies for module-init-tools" + This dependency is no longer required for a 3 digit version. + + -- Tim Gardner Tue, 05 Jul 2011 14:03:04 +0100 + +linux (3.0-3.4) oneiric; urgency=low + + [ Keng-Yu Lin ] + + * SAUCE: Revert: "dell-laptop: Toggle the unsupported hardware + killswitch" + - LP: #775281 + + [ Leann Ogasawara ] + + * rebase to v3.0-rc5 + * [Config] updateconfigs after rebase to 3.0-rc5 + + [ Tim Gardner ] + + * [Config] Remove ubuntu/rtl8192se + * [Config] Added armel ABI files + * [Config] Removed armel versatile flavour + * [Config] CONFIG_INTEL_MEI=m + - LP: #716867 + + [ Upstream Kernel Changes ] + + * ALSA: hda - Enable auto-parser as default for Conexant codecs + + [ Upstream Kernel Changes ] + + * rebase to v3.0-rc5 + + -- Leann Ogasawara Thu, 30 Jun 2011 14:27:10 +0100 + +linux (3.0-2.3) oneiric; urgency=low + + [ Andy Whitcroft ] + + * ubuntu: AUFS -- update to 0e2bafab74f0d1463383faeb93f9fc5eb8c2c54e + + [ Leann Ogasawara ] + + * rebase to v3.0-rc4 + * [Config] updateconfigs after rebase to 3.0-rc4 + * fix ERROR: __devcgroup_inode_permission undefined + + [ Stefan Bader ] + + * SAUCE: iscsitarget: Remove driver from the kernel + + [ Tim Gardner ] + + * SAUCE: rtl8192se: Force a build for a 2.6/3.0 kernel + * [Config] Add grub-efi as a recommended bootloader for server and + generic + - LP: #800910 + + [ Upstream Kernel Changes ] + + * Fix node_start/end_pfn() definition for mm/page_cgroup.c + + [ Leann Ogasawara ] + + * rebase to v3.0-rc4 + + -- Leann Ogasawara Fri, 24 Jun 2011 11:51:12 -0700 + +linux (3.0-1.2) oneiric; urgency=low + + [ Andy Whitcroft ] + + * [Config] enable CONFIG_CAN_CALC_BITTIMING + + [ Leann Ogasawara ] + + * rebase to v3.0-rc3 + * [Config] updateconfigs after rebase to 3.0-rc3 + + [ Upstream Kernel Changes ] + + * perf: clear out make flags when calling kernel make kernelver + + [ Leann Ogasawara ] + + * rebase to v3.0-rc3 + + -- Leann Ogasawara Tue, 14 Jun 2011 07:25:35 -0700 + +linux (3.0-0.1) oneiric; urgency=low + + [ Andy Whitcroft ] + + * use the packaging version in the kernel + * use the kernels idea of its version for version_signature + * add dependancies for module-init-tools + * update control files to version 3 + * printchanges/insertchanges allow override of prev_release + * correct Vcs-Git: to point to oneiric + + [ Leann Ogasawara ] + + * rebase to v3.0-rc1 + * [Config] updateconfigs after rebase to 3.0-rc1 + * ubuntu: dm-raid4-5 fix up build failure + * [Config] Temporarily Disable CONFIG_GPIO_EXYNOS4 on arm + * [Config] Temporarily Disable CONFIG_GPIO_PLAT_SAMSUNG on arm + * [Config] Temporarily Disable CONFIG_GPIO_S5PC100 on arm + * [Config] Temporarily Disable CONFIG_GPIO_S5PV210 on arm + * [Config] Temporarily disable CONFIG_BRCMSMAC on powerpc + * [Config] Temporarily Disable CONFIG_BRCMSMAC on arm + * [Config] Temporarily Disable CONFIG_RTL8192SE on arm + * [Config] Temporarily Disable CONFIG_RTL8192SE on powerpc + * [Config] Temporarily disable CONFIG_SMC91X on armel-omap + * rebase to v3.0-rc2 + + [ Manoj Iyer ] + + * SAUCE: mmc: Enable MMC card reader for RICOH [1180:e823] + - LP: #790754 + + [ Upstream Kernel Changes ] + + * Revert "x86 idle: EXPORT_SYMBOL(default_idle, pm_idle) only when APM + demands it" + * drm/i915: fix regression after clock gating init split + + [ Major Kernel Changes ] + + * rebase from v2.6.39 to v3.0-rc1 + * rebase from v3.0-rc1 to v3.0-rc2 + + -- Andy Whitcroft Thu, 09 Jun 2011 15:18:33 +0100 + +linux (2.6.39-3.10) oneiric; urgency=low + + [ Colin Ian King ] + + * SAUCE: S3 early resume debug via keyboard LEDs + + [ Ingo Molnar ] + + * ubuntu: nx-emu - i386: NX emulation + * ubuntu: nx-emu - i386: mmap randomization for executable mappings + + [ Leann Ogasawara ] + + * Revert "[Config] Disable CONFIG_FT1000 on powerpc64-smp" + * Revert "[Config] Disable CONFIG_DM_RAID45" + * [Config] enable CONFIG_BRCMFMAC=y + * [Config] enable CONFIG_MDIO_BITBANG=m across all arch's and flavors + * [Config] enable CONFIG_VIDEO_OUTPUT_CONTROL=m on armel-omap + + [ Robert Nelson ] + + * SAUCE: omap3: beagle: detect new xM revision B + - LP: #770679 + * SAUCE: omap3: beagle: detect new xM revision C + - LP: #770679 + * SAUCE: omap3: beagle: if rev unknown, assume xM revision C + - LP: #770679 + + [ Stefan Bader ] + + * SAUCE: Convert dm-raid45 to new block plugging + + -- Leann Ogasawara Mon, 23 May 2011 11:46:43 -0700 + +linux (2.6.39-3.9) oneiric; urgency=low + + [ Leann Ogasawara ] + + * [Config] Disable CONFIG_SCSI_LPFC_DEBUG_FS + * rebase to v2.6.39 + * [Config] enable CONFIG_LLC2=m across all arch's and flavours + * [Config] enable CONFIG_INPUT_APANEL=m + + [ Thomas Schlichter ] + + * SAUCE: vesafb: mtrr module parameter is uint, not bool + - LP: #778043 + * SAUCE: vesafb: enable mtrr WC by default + - LP: #778043 + + [ Major Kernel Changes ] + + * rebase from v2.6.39-rc7 to v2.6.39 + + -- Andy Whitcroft Fri, 20 May 2011 09:52:32 +0100 + +linux (2.6.39-2.8) oneiric; urgency=low + + [ Andy Whitcroft ] + + * Revert "ubuntu: AUFS -- aufs2-standalone.patch aufs2.1-37" + * Revert "ubuntu: AUFS -- aufs2-base.patch aufs2.1-37" + * Revert "[Config] Disable CONFIG_AUFS_FS" + * ubuntu: AUFS -- aufs2-base.patch aufs2.1-39 + * ubuntu: AUFS -- aufs2-standalone.patch aufs2.1-39 + * ubuntu: AUFS -- update to c6b76974311efc5bf3eddf921cd015b6aae46935 + * ubuntu: AUFS -- clean up the aufs updater and BOM + * ubuntu: AUFS -- documentation on updating aufs2 + + [ Kees Cook ] + + * ubuntu: Yama - LSM hooks + * ubuntu: Yama - create task_free security callback + * ubuntu: Yama - add ptrace relationship tracking interface + * ubuntu: Yama - unconditionally chain to Yama LSM + + [ Leann Ogasawara ] + + * Revert "SAUCE: Fix drivers/staging/easycap FTBS" + * Revert "[Config] Disable CONFIG_EASYCAP" + * ubuntu: fsam7400 disable driver + * ubuntu: omnibook disable driver + * ubuntu: rfkill disable driver + + [ Tim Gardner ] + + * SAUCE: Fix extra reference in fb_open() + + -- Leann Ogasawara Mon, 16 May 2011 09:23:56 -0700 + +linux (2.6.39-2.7) oneiric; urgency=low + + [ Leann Ogasawara ] + + * rebase to v2.6.39-rc7 + + [ Major Kernel Changes ] + + * rebase from v2.6.39-rc6 to v2.6.39-rc7 + + -- Leann Ogasawara Tue, 10 May 2011 10:18:28 +0200 + +linux (2.6.39-1.6) oneiric; urgency=low + + [ Leann Ogasawara ] + + * rebase to v2.6.39-rc6 + * SAUCE: [arm] fixup __aeabi_uldivmod undefined build error + + [ Tim Gardner ] + + * [Config] updateconfigs after rebase to 2.6.39-rc6 + + [ Major Kernel Changes ] + + * rebase from v2.6.39-rc5 to v2.6.39-rc6 + - LP: #740126 + + -- Leann Ogasawara Thu, 05 May 2011 09:46:12 -0700 + +linux (2.6.39-0.5) oneiric; urgency=low + + [ Herton Ronaldo Krzesinski ] + + * SAUCE: Revert "x86, hibernate: Initialize mmu_cr4_features during boot" + - LP: #764758 + + [ Leann Ogasawara ] + + * rebase to v2.6.39-rc5 + * [Config] updateconfigs following rebase to v2.6.39-rc5 + + [ Paolo Pisati ] + + * [Config] s/USB_MUSB_TUSB6010/USB_MUSB_OMAP2PLUS/ on omap3 to get musb + - LP: #759913 + + [ Stefan Bader ] + + * Include nls_iso8859-1 for virtual images + - LP: #732046 + + [ Major Kernel Changes ] + + * rebase from v2.6.39-rc4 to v2.6.39-rc5 + + -- Leann Ogasawara Wed, 27 Apr 2011 06:39:42 -0700 + +linux (2.6.39-0.4) oneiric; urgency=low + + [ Leann Ogasawara ] + + * rebase to v2.6.39-rc4 + * [Config] updateconfigs following rebase to v2.6.39-rc4 + * fixup powerpc implicit declaration of function + 'crash_kexec_wait_realmode' + * [Config] Disable CONFIG_FT1000 on powerpc64-smp + + [ Tim Gardner ] + + * [Config] CONFIG_TRANSPARENT_HUGEPAGE=y + - LP: #769503 + * [Config] Add cachefiles.ko to virtual flavour + - LP: #770430 + + [ Major Kernel Changes ] + + * rebase from v2.6.39-rc3 to v2.6.39-rc4 + + -- Leann Ogasawara Tue, 19 Apr 2011 06:25:20 -0700 + +linux (2.6.39-0.3) oneiric; urgency=low + + [ Leann Ogasawara ] + + * rebase to v2.6.39-rc3 + * crash_kexec_wait_realmode() undefined when !SMP + + [ Tim Gardner ] + + * [Config] CONFIG_PM_ADVANCED_DEBUG=y for i386/amd64 + - LP: #632327 + + [ Major Kernel Changes ] + + * rebase from v2.6.39-rc2 to v2.6.39-rc3 + + -- Leann Ogasawara Tue, 12 Apr 2011 06:52:24 -0700 + +linux (2.6.39-0.2) oneiric; urgency=low + + [ Gustavo F. Padovan ] + + * SAUCE: Revert "Bluetooth: Add new PID for Atheros 3011" + - LP: #720949 + + [ John Johansen ] + + * AppArmor: Fix masking of capabilities in complain mode + - LP: #748656 + + [ Leann Ogasawara ] + + * rebase to v2.6.39-rc2 + * [Config] updateconfigs following rebase to v2.6.39-rc2 + * hv_mouse needs delay.h + * olpc_dcon_xo_1 needs delay.h + * olpc_dcon_xo_1_5 needs delay.h + * Update dropped.txt for Oneiric + + [ Steve Langasek ] + + * [Config] Make linux-libc-dev coinstallable under multiarch + - LP: #750585 + + [ Upstream Kernel Changes ] + + * x86, hibernate: Initialize mmu_cr4_features during boot + - LP: #752870 + + [ Major Kernel Changes ] + + * rebase from v2.6.39-rc1 to v2.6.39-rc2 + + -- Leann Ogasawara Wed, 06 Apr 2011 11:04:15 -0700 + +linux (2.6.39-0.1) oneiric; urgency=low + + [ Brad Figg ] + + * [Config] Set CONFIG_NR_CPUS=256 for amd64 generic + - LP: #737124 + + [ Henrik Rydberg ] + + * SAUCE: HID: hid-ntrig: add support for 1b96:0006 model + * SAUCE: HID: ntrig: fix suspend/resume on recent models + + [ Herton Ronaldo Krzesinski ] + + * SAUCE: (drop after 2.6.39) v4l: make sure drivers supply a zeroed + struct v4l2_subdev + - LP: #745213 + + [ Kees Cook ] + + * [Config] packaging: adjust perms on vmlinuz as well + * SAUCE: nx-emu: further clarify dmesg reporting + - LP: #745181 + + [ Leann Ogasawara ] + + * rebase to v2.6.39-rc1 + * [Config] updateconfigs following rebase to v2.6.39-rc1 + * [Config] Disable CONFIG_DM_RAID45 + * [Config] Disable CONFIG_SCSI_ISCSITARGET + * [Config] Disable CONFIG_EASYCAP + * [Config] Disable CONFIG_AUFS_FS + * update bnx2 firmware files in d-i/firmware/nic-modules + * xhci-pci.c resolve implicit declaration of kzalloc + * [Config] Enable CONFIG_DRM_PSB for only x86 + * [Config] Enable CONFIG_RTS_PSTOR for only x86 + * mfd/asic3: Fix typo, s/irq_data/data/ + + [ Luke Yelavich ] + + * [Config] Disable CONFIG_CRASH_DUMP on 32-bit powerpc kernels + - LP: #745358 + * [Config] Disable CONFIG_DRM_RADEON_KMS on powerpc kernels + * [Config] Build some framebuffer drivers as modules for powerpc kernels. + + [ Manoj Iyer ] + + * SAUCE: thinkpad-acpi: module autoloading for newer Lenovo ThinkPads. + - LP: #745217 + + [ Tim Gardner ] + + * SAUCE: INR_OPEN=4096 + - LP: #663090 + * SAUCE: Increase the default hard limit for open FDs to 4096 + - LP: #663090 + + [ Upstream Kernel Changes ] + + * (drop after 2.6.39-rc1) arm: versatile : Fix typo introduced in irq + namespace cleanup + * (drop after 2.6.39-rc1) [media] staging: altera-jtag needs delay.h + * ALSA: pcm: fix infinite loop in snd_pcm_update_hw_ptr0() + + [ Major Kernel Changes ] + + * rebase from v2.6.38 to v2.6.39-rc1 + + -- Leann Ogasawara Thu, 31 Mar 2011 12:50:10 -0700 + +linux (2.6.39-0.0) oneiric; urgency=low + + [ Leann Ogasawara ] + + * Open Oneiric + + -- Leann Ogasawara Thu, 31 Mar 2011 12:29:23 -0700 + +linux (2.6.38-7.39) natty; urgency=low + + [ Leann Ogasawara ] + + * No change upload. This is just to rebuild with gcc-4.5.2-7ubuntu1. + + -- Leann Ogasawara Thu, 24 Mar 2011 09:27:45 -0700 + +linux (2.6.38-7.38) natty; urgency=low + + [ Leann Ogasawara ] + + * No change upload take 2. 2.6.38-7.37 was accidentally uploaded before + gcc-4.5.2-6ubuntu5 finished building on all arches. + + -- Leann Ogasawara Tue, 22 Mar 2011 06:12:47 -0700 + +linux (2.6.38-7.37) natty; urgency=low + + [ Leann Ogasawara ] + + * No change upload. This is just to rebuild with gcc-4.5.2-6ubuntu5. + + -- Leann Ogasawara Sun, 20 Mar 2011 16:02:48 -0700 + +linux (2.6.38-7.36) natty; urgency=low + + [ Andy Whitcroft ] + + * Revert "SAUCE: KLUDGE: work around failed 'shrink-wrap' compiler + optimisation" + * purge last vestiges of maverick + * [Config] switch CONFIG_FB_VESA back to module + + [ Chris Wilson ] + + * SAUCE: drm/i915: Fix pipelined fencing + - LP: #717114 + + [ Loïc Minier ] + + * Include nls_cp437 module in virtual for fat + - LP: #732046 + * Support arch= cross-compilation for any arch + * Fix couple of typos in 0-common-vars.mk + * Enforce DEFAULT_MMAP_MIN_ADDR on armhf + * Add armhf to Debian -> Linux arch map + * Add initial armhf.mk + * Enable common packages for armhf + + [ Upstream Kernel Changes ] + + * Yama: fix default relationship to check thread group + - LP: #737676 + + -- Andy Whitcroft Fri, 18 Mar 2011 18:18:02 +0000 + +linux (2.6.38-7.35) natty; urgency=low + + [ Andy Whitcroft ] + + * rebase to 2fbfac4e053861925fa3fffcdc327649b09af54c + * rebase fixes bug #715330 + * [Config] disable CONFIG_SCSI_QLA_ISCSI for powerpc 32bit to fix FTBS + * rebase to v2.6.38 final + + [ Herton Ronaldo Krzesinski ] + + * SAUCE: Apply OPTION_BLACKLIST_SENDSETUP also for ZTE MF626 + - LP: #636091 + + [ Tim Gardner ] + + * [Confg] CONFIG_BOOT_PRINTK_DELAY=y + + [ Upstream Kernel Changes ] + + * Yama: use thread group leader when creating match + - LP: #729839 + * (drop after 2.6.38) ahci: AHCI mode SATA patch for Intel Patsburg SATA + RAID controller + - LP: #735240 + * (drop after v2.6.38) x86, quirk: Fix SB600 revision check + + [ Major Kernel Changes ] + + * rebase from v2.6.38-rc8 to v2.6.38 final + - LP: #715330 + + -- Andy Whitcroft Tue, 15 Mar 2011 19:04:19 +0000 + +linux (2.6.38-6.34) natty; urgency=low + + [ Andy Whitcroft ] + + * [Config] normalise CONFIG_INTEL_TXT + * SAUCE: KLUDGE: work around failed 'shrink-wrap' compiler optimisation + - LP: #730860 + * rebase to mainline v2.6.38-rc8 + + [ Major Kernel Changes ] + + * rebase from v2.6.38-rc7 + fb62c00a6d8942775abc23d1621db1252e2d93d1 + to v2.6.38-rc8 + + -- Andy Whitcroft Tue, 08 Mar 2011 11:54:48 +0000 + +linux (2.6.38-6.33) natty; urgency=low + + [ Andy Whitcroft ] + + * d-i -- enable speakup-modules udeb + - LP: #672699 + * rebase to 493f3358cb289ccf716c5a14fa5bb52ab75943e5 + * [Config] debian PPC64 configuration + * [Config] cleanup powerpc config fixing unexpected inconsistancies + * [Config] resync ppc64 configuration + * SAUCE: match up ENTRY/END naming for 32/64 bit + * rebase to fb62c00a6d8942775abc23d1621db1252e2d93d1 + * [Config] update configs after rebase to + fb62c00a6d8942775abc23d1621db1252e2d93d1 + * [Config] pps_gen_parport no longer built + + [ Corentin Chary ] + + * SAUCE: (drop after 2.6.38) eeepc-wmi: reorder keymap + - LP: #689393 + * SAUCE: (drop after 2.6.38) eeepc-wmi: add wlan key found on 1015P + - LP: #689393 + + [ John Johansen ] + + * SAUCE: Fix aufs calling of security_path_mknod + - LP: #724456 + + [ Kees Cook ] + + * SAUCE: proc: hide kernel addresses via %pK in /proc//stack + + [ Tim Gardner ] + + * rebase to 2.6.38-rc7 + + [ Upstream Kernel Changes ] + + * Revert "drm/i915: fix corruptions on i8xx due to relaxed fencing" + + [ Major Kernel Changes ] + + * rebase from v2.6.38-rc6 to v2.6.38-rc7 + + fb62c00a6d8942775abc23d1621db1252e2d93d1 + - LP: #721389 + - LP: #722925 + - LP: #723672 + - LP: #723676 + - LP: #715318 + + -- Andy Whitcroft Mon, 07 Mar 2011 15:33:17 +0000 + +linux (2.6.38-5.32) natty; urgency=low + + [ Andy Whitcroft ] + + * rebase to mainline 6f576d57f1fa0d6026b495d8746d56d949989161 + * [Config] updateconfigs following rebase to v2.6.38-rc6 + * [Config] enable CONFIG_DMAR + - LP: #552311 + + [ Upstream Kernel Changes ] + + * drm/i915: skip FDI & PCH enabling for DP_A + - LP: #561802, #600453, #681877 + + [ Major Kernel Changes ] + + * rebase from v2.6.38-rc5 to v2.6.38-rc6 + - LP: #718402 + - LP: #719524 + - LP: #721126 + - LP: #719691 + - LP: #722689 + - LP: #722310 + + -- Andy Whitcroft Tue, 22 Feb 2011 13:28:39 +0000 + +linux (2.6.38-4.31) natty; urgency=low + + [ Andy Whitcroft ] + + * add in bugs closed by upstream patches pulled in by rebases + * rebase to 795abaf1e4e188c4171e3cd3dbb11a9fcacaf505 + * [Config] enable CONFIG_VSX to allow use of vector instuctions + * resync with maverick 98defa1c5773a3d7e4c524967eb01d5bae035816 + * rebase to mainline v2.6.38-rc5 + * SAUCE: ecryptfs: read on a directory should return EISDIR if not + supported + - LP: #719691 + + [ Colin Ian King ] + + * SAUCE: Dell All-In-One: Remove need for Dell module alias + + [ Manoj Iyer ] + + * SAUCE: (drop after 2.6.38) add ricoh 0xe823 pci id. + - LP: #717435 + + [ Tim Gardner ] + + * [Config] CONFIG_CRYPTO_CRC32C_INTEL=y + + [ Upstream Kernel Changes ] + + * Quirk to fix suspend/resume on Lenovo Edge 11,13,14,15 + - LP: #702434 + * vfs: fix BUG_ON() in fs/namei.c:1461 + + [ Vladislav P ] + + * SAUCE: Release BTM while sleeping to avoid deadlock. + - LP: #713837 + + [ Major Kernel Changes ] + + * rebase from v2.6.38-rc4 to v2.6.38-rc5 + - LP: #579276 + - LP: #715877 + - LP: #713769 + - LP: #716811 + * resync with Maverick Ubuntu-2.6.35-27.47 + + -- Andy Whitcroft Fri, 11 Feb 2011 17:24:09 +0000 + +linux (2.6.38-3.30) natty; urgency=low + + [ Andy Whitcroft ] + + * rebase to v2.6.38-rc4 + * ppc64 -- add basic architecture + * ubuntu: AUFS -- update to 65835da20b77c98fb538c9114fc31f5de1328230 + + [ Colin Ian King ] + + * SAUCE: Add WMI hotkeys support for Dell All-In-One series + - LP: #676997 + * SAUCE: Add WMI hotkeys support for another Dell All-In-One series + - LP: #701530 + * SAUCE: Dell WMI: Use sparse keymaps and tidy up code. + - LP: #701530 + + [ Dan Rosenberg ] + + * SAUCE: (drop after 2.6.38) Convert net %p usage %pK + + [ Kees Cook ] + + * Revert "SAUCE: kernel: make /proc/kallsyms mode 400 to reduce ease of + attacking" + * SAUCE: (drop after 2.6.38) use %pK for /proc/kallsyms and /proc/modules + + [ Tim Gardner ] + + * [Config] CONFIG_BLK_CGROUP=y + - LP: #706394 + * [Config] CONFIG_DELL_WMI_AIO=m + + [ Upstream Kernel Changes ] + + * drm/i915/lvds: Restore dithering on native modes for gen2/3 + - LP: #711568 + + [ Upstream Kernel Changes ] + + * rebase from v2.6.38-rc3 to v2.6.38-rc4. + - LP: #701271 + - LP: #708521 + - LP: #710371 + + -- Andy Whitcroft Tue, 08 Feb 2011 02:07:18 +0000 + +linux (2.6.38-2.29) natty; urgency=low + + [ Andy Whitcroft ] + + * rebase to 1f0324caefd39985e9fe052fac97da31694db31e + * [Config] updateconfigs following rebase to + 1f0324caefd39985e9fe052fac97da31694db31e + * rebase to 70d1f365568e0cdbc9f4ab92428e1830fdb09ab0 + * [Config] reenable HIBERNATE + - LP: #710877 + * rebase to v2.6.38-rc3 + * [Config] reenable CONFIG_CRASH_DUMP + + [ Kamal Mostafa ] + + * SAUCE: rtl8192se: fix source file perms + * SAUCE: rtl8192se: fix source file newline + * SAUCE: omnibook: fix source file newline + + [ Kees Cook ] + + * [Config] packaging: really make System.map mode 0600 + + [ Ricardo Salveti de Araujo ] + + * SAUCE: OMAP3630: PM: don't warn the user with a trace in case of + PM34XX_ERRATUM + + [ Soren Hansen ] + + * SAUCE: nbd: Remove module-level ioctl mutex + + [ Tim Gardner ] + + * SAUCE: Disable building the ACPI debugfs source + + [ Upstream Kernel Changes ] + + * Set physical start and alignment 1M for virtual i386 + - LP: #710754 + + [ Upstream Kernel Changes ] + + * rebase from v2.6.38-rc2 + c723fdab8aa728dc2bf0da6a0de8bb9c3f588d84 + to v2.6.38-rc3 + - LP: #707902 + + -- Andy Whitcroft Fri, 28 Jan 2011 16:30:32 +0000 + +linux (2.6.38-1.28) natty; urgency=low + + [ Andy Whitcroft ] + + * ubuntu: AUFS -- update to b1cee06249dfa0ab30951e7f06490a75c155b620 + + [ Ricardo Salveti de Araujo ] + + * SAUCE: omap3: beaglexm: fix DVI initialization + * [Config] omap: move CONFIG_PANEL_GENERIC_DPI to build in to make + display work at Beagle + + -- Andy Whitcroft Fri, 28 Jan 2011 10:51:57 +0000 + +linux (2.6.38-1.27) natty; urgency=low + + [ Andy Whitcroft ] + + * ubuntu: AUFS -- update aufs-update to track new locations of headers + * ubuntu: AUFS -- update to c5021514085a5d96364e096dbd34cadb2251abfd + * SAUCE: ensure root is ready before running usermodehelpers in it + * correct the Vcs linkage to point to natty + * rebase to linux tip e78bf5e6cbe837daa6ab628a5f679548742994d3 + * [Config] update configs following rebase + e78bf5e6cbe837daa6ab628a5f679548742994d3 + * SAUCE: Yama: follow changes to generic_permission + * ubuntu: compcache -- follow changes to bd_claim/bd_release + * ubuntu: iscsitarget -- follow changes to open_bdev_exclusive + * ubuntu: ndiswrapper -- fix interaction between __packed and packed + * ubuntu: AUFS -- update to 806051bcbeec27748aae2b7957726a4e63ff308e + * update package version to match payload version + * rebase to e6f597a1425b5af64917be3448b29e2d5a585ac8 + * rebase to v2.6.38-rc1 + * [Config] updateconfigs following rebase to v2.6.38-rc1 + * SAUCE: x86 fix up jiffies/jiffies_64 handling + * rebase to linus tip 2b1caf6ed7b888c95a1909d343799672731651a5 + * [Config] updateconfigs following rebase to + 2b1caf6ed7b888c95a1909d343799672731651a5 + * [Config] disable CONFIG_TRANSPARENT_HUGEPAGE to fix i386 boot crashes + * ubuntu: AUFS -- suppress benign plink warning messages + - LP: #621195 + * [Config] CONFIG_NR_CPUS=256 for amd64 -server flavour + * rebase to v2.6.38-rc2 + * rebase to mainline d315777b32a4696feb86f2a0c9e9f39c94683649 + * rebase to c723fdab8aa728dc2bf0da6a0de8bb9c3f588d84 + * [Config] update configs following rebase to + c723fdab8aa728dc2bf0da6a0de8bb9c3f588d84 + * [Config] disable CONFIG_AD7152 to fix FTBS on armel versatile + * [Config] disable CONFIG_AD7150 to fix FTBS on armel versatile + * [Config] disable CONFIG_RTL8192CE to fix FTBS on armel omap + * [Config] disable CONFIG_MANTIS_CORE to fix FTBS on armel versatile + + [ Kees Cook ] + + * SAUCE: kernel: make /proc/kallsyms mode 400 to reduce ease of attacking + + [ Stefan Bader ] + + * Temporarily disable RODATA for virtual i386 + - LP: #699828 + + [ Tim Gardner ] + + * [Config] CONFIG_NLS_DEFAULT=utf8 + - LP: #683690 + * [Config] CONFIG_HIBERNATION=n + * update bnx2 firmware files in d-i/firmware/nic-modules + + [ Upstream Kernel Changes ] + + * Revert "drm/radeon/bo: add some fallback placements for VRAM only + objects." + * packaging: make System.map mode 0600 + * thinkpad_acpi: Always report scancodes for hotkeys + - LP: #702407 + * sched: tg->se->load should be initialised to tg->shares + * Input: sysrq -- ensure sysrq_enabled and __sysrq_enabled are consistent + * brcm80211: include linux/slab.h for kfree + * pch_dma: add include/slab.h for kfree + * i2c-eg20t: include linux/slab.h for kfree + * gpio/ml_ioh_gpio: include linux/slab.h for kfree + * tty: include linux/slab.h for kfree + * winbond: include linux/delay.h for mdelay et al + + [ Upstream Kernel Changes ] + + * mark the start of v2.6.38 versioning + * rebase v2.6.37 to v2.6.38-rc2 + c723fdab8aa728dc2bf0da6a0de8bb9c3f588d84 + - LP: #689886 + - LP: #702125 + - LP: #608775 + - LP: #215802 + - LP: #686333 + - LP: #677830 + - LP: #677652 + - LP: #696493 + - LP: #697240 + - LP: #689036 + - LP: #705323 + - LP: #686692 + + -- Andy Whitcroft Sun, 09 Jan 2011 13:44:52 +0000 + +linux (2.6.37-12.26) natty; urgency=low + + [ Andy Whitcroft ] + + * rebase to v2.6.37-rc8 + * [Config] armel -- reenable omap flavour + * [Config] disable CONFIG_MACH_OMAP3517EVM to fix FTBS on armel omap + * [Config] disable CONFIG_GPIO_VX855 to fix FTBS on omap armel + * [Config] disable CONFIG_WESTBRIDGE_ASTORIA to fix FTBS on omap armel + * [Config] disable CONFIG_TI_DAVINCI_EMAC to fix FTBS on omap armel + * rebase to mainline 989d873fc5b6a96695b97738dea8d9f02a60f8ab + * [Config] track missing modules + * rebase to v2.6.37 final + + [ Chase Douglas ] + + * SAUCE: (drop after 2.6.37) HID: magicmouse: Don't report REL_{X, Y} for + Magic Trackpad + + [ Stefan Bader ] + + * Revert "SAUCE: blkfront: default to sd devices" + - LP: #684875 + + [ Tim Gardner ] + + * Revert "SAUCE: (no-up) libata: Ignore HPA by default." + - LP: #380138 + * [Config] Added autofs4.ko to -virtual flavour + - LP: #692917 + + [ Upstream Kernel Changes ] + + * Add support for Intellimouse Mode in ALPS touchpad on Dell E2 series + Laptops + - LP: #632884 + + [ Upstream Kernel Changes ] + + * rebase to v2.6.37-rc8 + * rebase to mainline 989d873fc5b6a96695b97738dea8d9f02a60f8ab + * rebase to v2.6.37 final + + -- Andy Whitcroft Thu, 23 Dec 2010 18:34:13 +0000 + +linux (2.6.37-11.25) natty; urgency=low + + [ Andy Whitcroft ] + + * [Config] d-i -- add hpsa to the list of block devices + - LP: #684304 + * [Config] add vmw-balloon driver to -virtual flavour + - LP: #592039 + * rebase to v2.6.37-rc7 + + [ Upstream Kernel Changes ] + + * rebase to v2.6.37-rc7 + + -- Andy Whitcroft Tue, 21 Dec 2010 13:35:28 +0000 + +linux (2.6.37-10.24) natty; urgency=low + + [ Andy Whitcroft ] + + * rebase to v2.6.37-rc6 + * updateconfigs following rebase to v2.6.37-rc6 + + [ Upstream Kernel Changes ] + + * rebase to v2.6.37-rc6 + + -- Andy Whitcroft Thu, 16 Dec 2010 12:34:19 +0000 + +linux (2.6.37-9.23) natty; urgency=low + + [ Andy Whitcroft ] + + * SAUCE: vt -- fix handoff numbering to 1..n and add range checks + - LP: #689606 + * SAUCE: vt -- fix handoff numbering to 1..n and add range checks (grub) + - LP: #689606 + + [ Kees Cook ] + + * SAUCE: RO/NX protection for loadable kernel, fix ftrace + - LP: #690190 + + -- Andy Whitcroft Wed, 15 Dec 2010 19:29:57 +0000 + +linux (2.6.37-9.22) natty; urgency=low + + [ Andy Whitcroft ] + + * rebase to v2.6.35-rc5 + * [Config] updateconfigs following rebase to v2.6.37-rc5 + * (no-up) add support for installed header files to ubuntu directory + - LP: #684666 + * ubuntu: AUFS -- include the aufs_types.h file in linux-libc-headers + - LP: #684666 + * ubuntu: dm-raid4-5 -- follow changes to bio flags + * ubuntu: dm-raid4-5 -- re-enable + * ubuntu: omnibook -- update BOM + * ubuntu: ndiswrapper -- update BOM to match actual version + * ubuntu: ndiswrapper -- follow removal of the BKL and locked ioctl + * ubuntu: ndiswrapper -- re-enable + * ubuntu: iscsitarget -- re-instate copy_io_context + * ubuntu: iscsitarget -- follow changes to semaphore initialisation + * ubuntu: iscsitarget -- convert NIPQUAD to %pI4 + * ubuntu: iscsitarget -- re-enable + + [ Kees Cook ] + + * [Config] update config for CONFIG_DEBUG_SET_MODULE_RONX + + [ Manoj Iyer ] + + * SAUCE: Enable jack sense for Thinkpad Edge 13 + - LP: #685015 + + [ Tim Gardner ] + + * [Config] CONFIG_9P_FSCACHE=y,CONFIG_9P_FS_POSIX_ACL=y + * [Config] CONFIG_CRYPTO_CRC32C=y + - LP: #681819 + * [Config] CONFIG_9P_FSCACHE=n + * [Config] Add nfsd modules to -virtual flavour + - LP: #688070 + + [ Upstream Kernel Changes ] + + * Revert "Staging: zram: work around oops due to startup ordering snafu" + * NFS: Fix panic after nfs_umount() + - LP: #683938 + * x86: Add NX protection for kernel data + * x86: Add RO/NX protection for loadable kernel modules + * x86: Resume trampoline must be executable + * x86: RO/NX protection for loadable kernel, jump_table fix + + [ Upstream Kernel Changes ] + + * rebase to v2.6.37-rc5 + + -- Andy Whitcroft Thu, 09 Dec 2010 18:15:35 +0000 + +linux (2.6.37-8.21) natty; urgency=low + + [ Andy Whitcroft ] + + * Revert "ubuntu: AUFS -- include the aufs_types.h file in + linux-libc-headers" + * Revert "(no-up) add support for installed header files to ubuntu + directory" + + -- Andy Whitcroft Sun, 05 Dec 2010 17:33:28 +0000 + +linux (2.6.37-8.20) natty; urgency=low + + [ Andy Whitcroft ] + + * Revert "[Upstream] drivers/serial/mfd.c: Fix ARM compile error" + * Revert "SAUCE: Nouveau: Disable acceleration on MacBook Pros" + * Revert "SAUCE: Nouveau: Add quirk framework to disable acceleration" + * Revert "SAUCE: i915 -- disable powersave by default" + * SAUCE: enable Marvell 9128 PCIe SATA controller + - LP: #658521 + * [Config] evtchn has been renamed + * (no-up) add support for installed header files to ubuntu directory + - LP: #684666 + * ubuntu: AUFS -- include the aufs_types.h file in linux-libc-headers + - LP: #684666 + + [ Tim Gardner ] + + * [Config] MISS: evtchn, NEW : xen-evtchn + * rebase to v2.6.37-rc4 + + [ Upstream Kernel Changes ] + + * drm/i915: Clean conflicting modesetting registers upon init + - LP: #683775 + * rebase to v2.6.37-rc4 + + -- Andy Whitcroft Fri, 03 Dec 2010 18:42:07 +0000 + +linux (2.6.37-7.19) natty; urgency=low + + [ Tim Gardner ] + + * [Config] Add bnx2 firmware to nic-modules udeb + - LP: #676245 + + -- Andy Whitcroft Fri, 26 Nov 2010 17:53:45 +0000 + +linux (2.6.37-7.18) natty; urgency=low + + [ Andy Whitcroft ] + + * Revert "[Upstream] USB: option: Remove duplicate AMOI_VENDOR_ID" + * Revert "SAUCE: Add extra headers to linux-libc-dev" + * Revert "SAUCE: Enable speedstep for sonoma processors." + * [Config] enable CONFIG_BT_HCIUART_ATH3K + * [Config] enable CONFIG_IWLWIFI_DEBUGFS + * [Config] standardise CONFIG_MII + * [Config] standardise CONFIG_PRISM2_USB + * [Config] standardise CONFIG_SCSI_QLA_ISCSI + * [Config] build in CONFIG_AGP + * [Config] build in CONFIG_AGP_INTEL + * [Config] build in CONFIG_AGP_AMD + * [Config] build in CONFIG_AGP_AMD64 + * [Config] build in CONFIG_AGP_NVIDIA + * [Config] build in CONFIG_AGP_VIA + * [Config] disable CONFIG_SCSI_QLA_ISCSI for FTBS (arm) + * (no-up): document the new ## scheme + * [Config] harmonise CONFIG_SERIAL_8250_NR_UARTS + * [Config] update CONFIG_SERIAL_8250_RUNTIME_UARTS=32 + - LP: #675453 + + [ Mathieu J. Poirier ] + + * SAUCE: ARM: Adding vdd_sdi regulator supply to OMAP3EVM + + [ Upstream Kernel Changes ] + + * nx-emu: fix inverted report of disable_nx + + -- Andy Whitcroft Tue, 23 Nov 2010 21:00:39 +0000 + +linux (2.6.37-6.17) natty; urgency=low + + [ Andy Whitcroft ] + + * Revert "ubuntu: AUFS -- aufs2-standalone.patch + aufs2.1-36-UNRELEASED-20101103" + * Revert "ubuntu: AUFS -- aufs2-base.patch + aufs2.1-36-UNRELEASED-20101103" + * [Config] standardise CONFIG_BT + * [Config] standardise CONFIG_IRDA + * [Config] standardise CONFIG_LAPB + * [Config] standardise CONFIG_RDS + * [Config] standardise CONFIG_RFKILL + * [Config] standardise CONFIG_TIPC + * [Config] standardise CONFIG_X25 + * [Config] standardise CONFIG_INPUT_EVDEV + * [Config] standardise CONFIG_INPUT_JOYDEV + * [Config] standardise CONFIG_INPUT_JOYSTICK + * [Config] standardise CONFIG_INPUT_TOUCHSCREEN + * [Config] CONFIG_INPUT_TOUCHSCREEN=n for FTBS (arm) + * [Config] CONFIG_IRDA=n for FTBS (arm) + * ubuntu: AUFS -- aufs2-base.patch aufs2.1-37 + * ubuntu: AUFS -- aufs2-standalone.patch aufs2.1-37 + * ubuntu: AUFS -- update to 097bf62d6f49619359d34bf17f242df38562489a + + [ Tim Gardner ] + + * SAUCE: Fix drivers/staging/easycap FTBS + * [Config] CONFIG_EASYCAP=m after fixing FTBS + + [ Upstream Kernel Changes ] + + * Revert "x86: Add NX protection for kernel data" + + -- Andy Whitcroft Mon, 22 Nov 2010 18:09:10 +0000 + +linux (2.6.37-6.16) natty; urgency=low + + [ Andy Whitcroft ] + + * Revert "[Config] update config for CONFIG_DEBUG_SET_MODULE_RONX" + * rebase to v2.6.37-rc3 + + [ Tim Gardner ] + + * [Config] CONFIG_SCHED_AUTOGROUP=y + + [ Upstream Kernel Changes ] + + * Revert "x86: Add RO/NX protection for loadable kernel modules" + * sched: automated per session task groups + * rebase to v2.6.37-rc3 + + -- Andy Whitcroft Mon, 22 Nov 2010 10:11:13 +0000 + +linux (2.6.37-6.15) natty; urgency=low + + [ Andy Whitcroft ] + + * [Config] standardise CONFIG_CEPH_FS + * [Config] standardise CONFIG_SCSI_LPFC_DEBUG_FS + * [Config] standardise CONFIG_SCSI_PROC_FS + * [Config] standardise CONFIG_UBIFS_FS + * [Config] standardise CONFIG_USB_GADGET_DEBUG_FS + + [ Kees Cook ] + + * [Config] update config for CONFIG_DEBUG_SET_MODULE_RONX + + [ Manoj Iyer ] + + * SAUCE: Enable jack sense for Thinkpad Edge 11 + - LP: #677210 + * SAUCE: enable rfkill for rtl8192se driver + - LP: #640992 + + [ Tim Gardner ] + + * [Config] CONFIG_EASYCAP=n for FTBS + * Rebase to v2.6.32-rc2+git + + [ Upstream Kernel Changes ] + + * x86: Fix improper large page preservation + * x86: Add NX protection for kernel data + * x86: Add RO/NX protection for loadable kernel modules + + [ Upstream Kernel Changes ] + + * Rebase to Linus 2.6.37-rc2+git + + -- Andy Whitcroft Sat, 20 Nov 2010 11:40:00 +0000 + +linux (2.6.37-5.14) natty; urgency=low + + [ Upstream Kernel Changes ] + + * PCI: fix offset check for sysfs mmapped files + - LP: #676963 + + -- Andy Whitcroft Thu, 18 Nov 2010 18:12:27 +0000 + +linux (2.6.37-5.13) natty; urgency=low + + [ Andy Whitcroft ] + + * rebased to v2.6.37-rc2 + * updateconfigs following rebase to v2.6.37-rc2 + + [ Tim Gardner ] + + * [Config] Added NFS and related modules to virtual flavour + - LP: #659084 + + [ Upstream Kernel Changes ] + + * x86, cpu: Rename verify_cpu_64.S to verify_cpu.S + * x86, cpu: Clear XD_DISABLED flag on Intel to regain NX + * x86, cpu: Call verify_cpu during 32bit CPU startup + * x86, cpu: Only CPU features determine NX capabilities + + [ Upstream Changes ] + + * rebased to v2.67.37-rc2 + + -- Andy Whitcroft Tue, 16 Nov 2010 13:13:29 +0000 + +linux (2.6.37-4.12) natty; urgency=low + + [ Andy Whitcroft ] + + * Revert "[Upstream] HID: magicmouse: add param for scroll speed" + * Revert "[Upstream] HID: magicmouse: properly account for scroll + movement in state" + * Revert "[Upstream] HID: magicmouse: disable and add module param for + scroll acceleration" + * Revert "[Upstream] HID: magicmouse: scroll on entire surface, not just + middle of mouse" + + [ Henrik Rydberg ] + + * SAUCE: hid: ntrig: remove sysfs nodes + * SAUCE: hid: ntrig: Setup input filtering manually + * SAUCE: hid: ntrig: New ghost-filtering event logic + + [ Manoj Iyer ] + + * SAUCE: Added quirk to recognize GE0301 3G modem as an interface. + - LP: #348861 + + [ Upstream Kernel Changes ] + + * Revert "mmc: fix all hangs related to mmc/sd card insert/removal during + suspend/resume" + * Revert "[ARM] implement arch_randomize_brk()" + * Revert "ARM: stack protector: change the canary value per task" + * Revert "ARM: initial stack protector (-fstack-protector) support" + * Revert "ALSA: hda - Handle pin NID 0x1a on ALC259/269" + * Revert "ALSA: hda - Handle missing NID 0x1b on ALC259 codec" + * Revert "perf probe: Add kernel source path option" + * hid: ntrig: Support single-touch devices + * hid: ntrig: Mask pen switch events + * net: rtnetlink.h -- only include linux/netdevice.h when used by the + kernel + - LP: #673073 + * Fix userspace build of linux/fs.h + + -- Andy Whitcroft Mon, 15 Nov 2010 19:31:44 +0000 + +linux (2.6.37-3.11) natty; urgency=low + + [ Andy Whitcroft ] + + * Revert "ubuntu: AUFS -- update to + b37c575759dc4535ccc03241c584ad5fe69e3b25" + * Revert "ubuntu: AUFS -- track changes to the arguements to fop fsync()" + * Revert "ubuntu: AUFS -- update to standalone 2.6.35-rcN as at 20100601" + * Revert "ubuntu: AUFS -- update to standalone 2.6.34 as at 20100601" + * Revert "ubuntu: AUFS -- aufs2 base patch for linux-2.6.34" + * [Config] Disable intel_idle for -virtual kernels + - LP: #651370 + * [Config] enforcer -- ensure we never enable CONFIG_IMA + * debian -- pass the correct flavour name when checking configs + * [Config] enforcer -- ensure CONFIG_INTEL_IDLE is off for -virtual + * [Config] ensure CONFIG_IPV6=y for powerpc + * [Config] enforcer -- ensure CONFIG_IPV6=y + * ubuntu: AUFS -- aufs2-base.patch aufs2.1-36-UNRELEASED-20101103 + * ubuntu: AUFS -- aufs2-standalone.patch aufs2.1-36-UNRELEASED-20101103 + * ubuntu: AUFS -- update to aufs2.1-36-UNRELEASED-20101103 + * ubuntu: AUFS -- re-enable + * ubuntu: AUFS -- track changes to work queue initialisation + * ubuntu: AUFS -- track changes to llseek in v2.6.37-rc1 + * SAUCE: fbcon -- fix race between open and removal of framebuffers + * SAUCE: fbcon -- fix OOPs triggered by race prevention fixes + - LP: #614008 + * SAUCE: drm -- stop early access to drm devices + + [ Jeremy Kerr ] + + * [Config] Build-in powermac ZILOG serial driver + - LP: #673346 + + [ Kees Cook ] + + * SAUCE: nx-emu: use upstream ASLR when possible + + [ Tim Gardner ] + + * [Config] Use correct be2iscsi module name in d-i/modules/scsi-modules + - LP: #628776 + + [ Upstream Kernel Changes ] + + * i386: NX emulation + * nx-emu: drop exec-shield sysctl, merge with disable_nx + * nx-emu: standardize boottime message prefix + * mmap randomization for executable mappings on 32-bit + * exec-randomization: brk away from exec rand area + + -- Andy Whitcroft Thu, 11 Nov 2010 23:46:37 +0000 + +linux (2.6.37-2.10) natty; urgency=low + + [ Andy Whitcroft ] + + * reinstate armel config changes: + * [Config] CONFIG_GPIO_PCH=n for armel FTBS + * [Config] CONFIG_GPIO_VX855=n for armel FTBS + + -- Andy Whitcroft Wed, 03 Nov 2010 22:20:35 +0000 + +linux (2.6.37-2.9) natty; urgency=low + + [ Andy Whitcroft ] + + * config -- fix genportsconfig + * [Config] move powerpc over from ports to distro + * bump master version number to match contained kernel + * SAUCE: fix documentation strings for struct input_keymap_entry + * usb: gadget: goku_udc: add registered flag bit + + -- Andy Whitcroft Tue, 02 Nov 2010 15:14:11 +0000 + +linux (2.6.36-2.8) natty; urgency=low + + [ Tim Gardner ] + + * [Config]: fix changed CONFIG_SYSFS_DEPRECATED_V2 enforcement rules + * [Config]: TWL4030_CORE=n for FTBS + * [Config]: CONFIG_ATH6K_LEGACY=n for FTBS + * [Config]: CONFIG_SOLO6X10=n for FTBS + * [Config]: CONFIG_GPIO_PCH=n for armel FTBS + * [Config]: CONFIG_GPIO_VX855=n for armel FTBS + * [Config]: CONFIG_DRM_NOUVEAU=n for armel FTBS + * [Config]: CONFIG_LINE6_USB=n for armel FTBS + * [Config]: CONFIG_SENSORS_AK8975=n for armel FTBS + * [Config]: CONFIG_I2C_I801=n for armel FTBS + * UBUNTU: SAUCE: AppArmor: Fix unpack of network tables. + * AppArmor: compatibility patch for v5 interface + * AppArmor: compatibility patch for v5 network controll + * Dropped (pre-stable): input: Support Clickpad devices in ClickZone mode + * Dropped: UBUNTU: SAUCE: libata: Add ALPM power state accounting to the AHCI driver + * Dropped: UBUNTU: SAUCE: Added quirk to recognize GE0301 3G modem as an interface. + * Dropped: hid: 3m: Convert to MT slots + * Dropped: HID: magicmouse: don't allow hidinput to initialize the device + * Dropped: HID: magicmouse: simplify touch data bit manipulation + * Dropped: HID: magicmouse: simplify touch down logic + * Dropped: HID: magicmouse: enable Magic Trackpad support + * Dropped: UBUNTU: SAUCE: hid: ntrig: remove sysfs nodes + * Dropped: UBUNTU: SAUCE: hid: ntrig: Setup input filtering manually + * Dropped: UBUNTU: SAUCE: hid: ntrig: New ghost-filtering event logic + * Dropped: UBUNTU: SAUCE: hid: ntrig: identify firmware version (wiggled) + * Dropped: UBUNTU: (pre-stable): input: Support Clickpad devices in ClickZone mode + * Dropped: UBUNTU: SAUCE: KMS: cache the EDID information of the LVDS + * Dropped: UBUNTU: SAUCE: fbcon -- fix race between open and removal of framebuffers + * Dropped: UBUNTU: SAUCE: fbcon -- fix OOPs triggered by race prevention fixes + * Dropped: UBUNTU: SAUCE: x86: implement cs-limit nx-emulation for ia32 + * Dropped: UBUNTU: SAUCE: x86: more tightly confine cs-limit nx-emulation to ia32 only + * Dropped: UBUNTU: SAUCE: [um] Don't use nx_enabled under UML + * Dropped: UBUNTU: SAUCE: x86: brk away from exec rand area + + [ Upstream Kernel Changes ] + + * rebased against 2.6.27-rc1 + + -- Tim Gardner Fri, 22 Oct 2010 19:35:05 -0600 + +linux (2.6.36-1.7) natty; urgency=low + + [ Andy Whitcroft ] + + * rebased to v2.6.36 final + * [Config] update configs following rebase to v2.6.36 final + * [Config] update ports configs following rebase to v2.6.36 final + + [ Upstream Kernel Changes ] + + * rebased to v2.6.36 final + + -- Andy Whitcroft Thu, 21 Oct 2010 14:28:57 +0100 + +linux (2.6.36-1.6) natty; urgency=low + + [ Upstream Kernel Changes ] + + * drop broadcom staging driver preview: + * Revert "Staging: Add initial release of brcm80211 - Broadcom 802.11n + wireless LAN driver." + + -- Andy Whitcroft Wed, 20 Oct 2010 10:41:25 +0100 + +linux (2.6.36-1.5) natty; urgency=low + + [ Andy Whitcroft ] + + * rebase to v2.6.36-rc8 + * updateconfigs following rebase to v2.6.36-rc8 + * updateportsconfigs following rebase to v2.6.36-rc8 + * config -- simplify the kernelconfig interface + * config -- add new config mode 'dumpconfigs' + + [ Tim Gardner ] + + * Simplify the use of CROSS_COMPILER + + [ Upstream Kernel Changes ] + + * drop broadcom staging driver preview: + * Revert "staging: brcm80211: Make compiling of brcm80211.ko and + brcmfmac.ko mutually exclusive." + * Revert "staging: brcm80211: Fix compile issue when BRCM80211_PCI is not + set." + * Revert "Staging: brcm80211: remove driver specific -W options" + * Revert "Staging: brcm80211: clean up makefile cflag lines" + * Revert "staging: brcm80211: add fullmac driver" + * Revert "staging: brcm80211: use string native library" + * Revert "staging: brcm80211: use native ctype library" + * Revert "staging: brcm80211: fix remaining checkpatch errors." + * Revert "staging: brcm80211: fix "ERROR: trailing whitespace."" + * Revert "staging: brcm80211: fix "ERROR: spaces required around that + ..."" + * Revert "staging: brcm80211: fix "ERROR: spaces prohibited around that + ':' ..."" + * Revert "staging: brcm80211: fix "ERROR: space required before that + ..."" + * Revert "staging: brcm80211: fix "ERROR: space required after that ..."" + * Revert "staging: brcm80211: fix "ERROR: space required after that close + brace"" + * Revert "staging: brcm80211: fix "ERROR: space prohibited before + ...close square bracket"" + * Revert "staging: brcm80211: fix "ERROR: space prohibited after that + ..."" + * Revert "staging: brcm80211: fix "ERROR: need consistent spacing around + '*'"" + * Revert "staging: brcm80211: fix 'ERROR: "(foo*)" should be "(foo *)"'" + * Revert "staging: brcm80211: fix "ERROR: Macros w/ mult. statements ... + do - while loop"" + * Revert "staging: brcm80211: fix "ERROR: Macros w/ complex values ... + parenthesis"" + * Revert "staging: brcm80211: fix "ERROR: do not initialise statics to 0 + or NULL"" + * Revert "staging: brcm80211: fix "ERROR: do not initialise globals to 0 + or NULL"" + * Revert "staging: brcm80211: fix "ERROR: while should follow close brace + '}'"" + * Revert "staging: brcm80211: fix "ERROR: that open brace { ... prev + line"" + * Revert "staging: brcm80211: fix "ERROR: trailing statements should be + on next line"" + * Revert "staging: brcm80211: fix "ERROR: do not use assignment in if + condition"" + * Revert "staging: brcm80211: fix "ERROR: return is not a function, + paren..."" + * Revert "staging: brcm80211: fix "ERROR: open brace '{' following + function dec..."" + * Revert "staging: brcm80211: fix 'ERROR: "foo * bar" should be "foo + *bar"'" + * Revert "staging: brcm80211: Fix URLs for firmware files." + * Revert "staging: brcm80211: use '%pM' format to print MAC address" + * Revert "staging: brcm80211: Add contact info to TODO list." + * Revert "staging: brcm80211: Fix some initialisation failure paths" + * Export dump_{write,seek} to binary loader modules + * rebase to v2.6.36-rc8. + + -- Andy Whitcroft Tue, 19 Oct 2010 18:58:11 +0100 + +linux (2.6.36-0.4) natty; urgency=low + + [ Andy Whitcroft ] + + * SAUCE: perf: increase stack footprint to avoid stack-protector warning + (fixes FTBS on powerpc) + + -- Andy Whitcroft Thu, 14 Oct 2010 13:16:16 +0100 + +linux (2.6.36-0.3) natty; urgency=low + + [ Andy Whitcroft ] + + * [Config] disable CONFIG_SCSI_QLA_ISCSI to fix FTBS on powerpc + + -- Andy Whitcroft Thu, 14 Oct 2010 03:01:30 +0100 + +linux (2.6.36-0.2) natty; urgency=low + + [ Andy Whitcroft ] + + * [Config] updateportsconfigs following rebase to 2.6.36-rc7 + (fix FTBS on powerpc) + + -- Andy Whitcroft Wed, 13 Oct 2010 23:25:12 +0100 + +linux (2.6.36-0.1) natty; urgency=low + + [ Andy Whitcroft ] + + * reduce disk usage during buildd builds + - LP: #645653 + * [Config] enforcer -- ensure CONFIG_INIT_PASS_ALL_PARAMS is y + * [Config] armel -- drop omap flavour + + [ Tim Gardner ] + + * Added dropped patch list + * more dropped patches + * [Config] Disable aufs, dmraid-4.5, ndis-wrapper + * [Config] Add support for cross compiling armel + * [Config] CONFIG_SCSI_QLA_ISCSI=n for armel + * [Upstream] drivers/serial/mfd.c: Fix ARM compile error + * [Config]: updateconfigs after adding brcm80211 + * staging: brcm80211: Fix Makefile syntax error + * rebased to v2.6.36-rc7 + + [ Upstream Kernel Changes ] + + * (upstream) IPS driver: don't toggle CPU turbo on unsupported CPUs + * (upstream) IPS driver: verify BIOS provided limits + * intel_ips: Print MCP limit exceeded values. + * Staging: Add initial release of brcm80211 - Broadcom 802.11n wireless + LAN driver. + * staging: brcm80211: Fix some initialisation failure paths + * staging: brcm80211: Add contact info to TODO list. + * staging: brcm80211: use '%pM' format to print MAC address + * staging: brcm80211: Fix URLs for firmware files. + * staging: brcm80211: fix 'ERROR: "foo * bar" should be "foo *bar"' + * staging: brcm80211: fix "ERROR: open brace '{' following function + dec..." + * staging: brcm80211: fix "ERROR: return is not a function, paren..." + * staging: brcm80211: fix "ERROR: do not use assignment in if condition" + * staging: brcm80211: fix "ERROR: trailing statements should be on next + line" + * staging: brcm80211: fix "ERROR: that open brace { ... prev line" + * staging: brcm80211: fix "ERROR: while should follow close brace '}'" + * staging: brcm80211: fix "ERROR: do not initialise globals to 0 or NULL" + * staging: brcm80211: fix "ERROR: do not initialise statics to 0 or NULL" + * staging: brcm80211: fix "ERROR: Macros w/ complex values ... + parenthesis" + * staging: brcm80211: fix "ERROR: Macros w/ mult. statements ... do - + while loop" + * staging: brcm80211: fix 'ERROR: "(foo*)" should be "(foo *)"' + * staging: brcm80211: fix "ERROR: need consistent spacing around '*'" + * staging: brcm80211: fix "ERROR: space prohibited after that ..." + * staging: brcm80211: fix "ERROR: space prohibited before ...close square + bracket" + * staging: brcm80211: fix "ERROR: space required after that close brace" + * staging: brcm80211: fix "ERROR: space required after that ..." + * staging: brcm80211: fix "ERROR: space required before that ..." + * staging: brcm80211: fix "ERROR: spaces prohibited around that ':' ..." + * staging: brcm80211: fix "ERROR: spaces required around that ..." + * staging: brcm80211: fix "ERROR: trailing whitespace." + * staging: brcm80211: fix remaining checkpatch errors. + * staging: brcm80211: use native ctype library + * staging: brcm80211: use string native library + * staging: brcm80211: add fullmac driver + * Staging: brcm80211: clean up makefile cflag lines + * Staging: brcm80211: remove driver specific -W options + * staging: brcm80211: Fix compile issue when BRCM80211_PCI is not set. + * staging: brcm80211: Make compiling of brcm80211.ko and brcmfmac.ko + mutually exclusive. + + -- Andy Whitcroft Tue, 12 Oct 2010 16:00:27 +0100 + +linux (2.6.35-22.33) maverick; urgency=low + + [ Andy Whitcroft ] + + * Revert "SAUCE: Add support for Intellimouse Mode in ALPS touchpad on + Dell E2 series Laptops" + - LP: #641320 + + [ Brian Rogers ] + + * SAUCE: ir-core: Fix null dereferences in the protocols sysfs interface + - LP: #624701 + + [ Christopher James Halse Rogers ] + + * SAUCE: Nouveau: Add quirk framework to disable acceleration + - LP: #544088, #546393 + * SAUCE: Nouveau: Disable acceleration on MacBook Pros + - LP: #546393 + + [ John Johansen ] + + * Revert "SAUCE: AppArmor: allow newer tools to load policy on older + kernels" + * SAUCE: AppArmor: allow newer tools to load policy on older kernels + - LP: #639758 + + [ Mathieu J. Poirier ] + + * SAUCE: Adding vdd_sdi regulator supply to OMAP3EVM + + [ Upstream Kernel Changes ] + + * ALSA: HDA: Enable internal speaker on Dell M101z + - LP: #640254 + + -- Leann Ogasawara Fri, 17 Sep 2010 13:21:28 -0700 + +linux (2.6.35-22.32) maverick; urgency=low + + [ Arjan van de Ven ] + + * SAUCE: libata: Add ALPM power state accounting to the AHCI driver + + [ David Henningsson ] + + * SAUCE: ALSA: HDA: Enable internal mic on Dell E6410 and Dell E6510 + - LP: #605047, #628961 + + [ John Johansen ] + + * [Upstream] AppArmor: Fix splitting an fqname into separate namespace + and profile names + - LP: #615947 + * [Upstream] AppArmor: Fix locking from removal of profile namespace + - LP: #615947 + * SAUCE: AppArmor: allow newer tools to load policy on older kernels + - LP: #639758 + * SAUCE: Improve Amazon EBS performance for EC2 + - LP: #634316 + + [ Leann Ogasawara ] + + * Revert "SAUCE: i915 KMS -- blacklist i855" + * Revert "SAUCE: i915 KMS -- blacklist i845g" + * Revert "SAUCE: i915 KMS -- blacklist i830" + * Revert "SAUCE: i915 KMS -- support disabling KMS for known broken + devices" + * execute module-inclusion within a subshell + - LP: #621175 + + [ Upstream Kernel Changes ] + + * (pre-stable) bounce: call flush_dcache_page() after bounce_copy_vec() + - LP: #633227 + * (pre-stable) drm/i915: don't enable self-refresh on Ironlake + - LP: #629711 + * (pre-stable) mm: Move vma_stack_continue into mm.h + * x86, hwmon: Fix unsafe smp_processor_id() in thermal_throttle_add_dev + - LP: #601073 + * PM / Runtime: Make runtime_status attribute not debug-only (v. 2) + * PM / Runtime: Add runtime PM statistics (v3) + * compat: Make compat_alloc_user_space() incorporate the access_ok() + - CVE-2010-3081 + * x86-64, compat: Test %rax for the syscall number, not %eax + - CVE-2010-3301 + * x86-64, compat: Retruncate rax after ia32 syscall entry tracing + - CVE-2010-3301 + + -- Leann Ogasawara Tue, 14 Sep 2010 08:46:49 -0700 + +linux (2.6.35-21.31) maverick; urgency=low + + [ Andy Whitcroft ] + + * bodge linux-libc-dev package version due to ti-omap4 error + * linux-libc-dev -- ensure we can only build this on debian.master + + -- Leann Ogasawara Mon, 13 Sep 2010 09:54:31 -0700 + +linux (2.6.35-21.30) maverick; urgency=low + + [ Andy Whitcroft ] + + * SAUCE: fbcon -- fix OOPs triggered by race prevention fixes + - LP: #614008 + + [ Daniel Lezcano ] + + * SAUCE: fix compilation warning when CONFIG_SECURITY is not set + + [ Henrik Rydberg ] + + * SAUCE: Input: wacom - add fuzz parameters to features + * SAUCE: Input: wacom - collect device quirks into single function + * SAUCE: Input: wacom - add support for the Bamboo Touch trackpad + * SAUCE: Input: wacom - add a quirk for low resolution Bamboo devices + * SAUCE: hid: ntrig: Remove unused device ids + * SAUCE: hid: ntrig: remove sysfs nodes + * SAUCE: hid: ntrig: Correct logic for quirks + * SAUCE: hid: ntrig: zero-initialize ntrig struct + * SAUCE: hid: ntrig: Setup input filtering manually + * SAUCE: hid: ntrig: New ghost-filtering event logic + + [ Leann Ogasawara ] + + * SAUCE: ndiswrapper: Initialize buffer index and check its value + - LP: #613796 + + [ Manoj Iyer ] + + * SAUCE: Add support for Intellimouse Mode in ALPS touchpad on Dell E2 + series Laptops + - LP: #632884 + + [ Ping Cheng ] + + * SAUCE: Input: wacom - parse the Bamboo device family + + [ Rafi Rubin ] + + * SAUCE: hid: ntrig: identify firmware version (wiggled) + + [ Tim Gardner ] + + * [Config] CONFIG_NL80211_TESTMODE=n + + [ Upstream Kernel Changes ] + + * Revert "input: mt: Add support for the Bamboo Touch trackpad" + * e1000e: initial support for 82579 LOMs + * e1000e: correct MAC-PHY interconnect register offset for 82579 + * (pre-stable) ALSA: hda - Add a new hp-laptop model for Conexant 5066, + tested on HP G60 + - LP: #587388 + * DSS2: Don't power off a panel twice + - LP: #588243 + * mmc: build fix: mmc_pm_notify is only available with CONFIG_PM=y + * Input: i8042 - reset keyboard controller wehen resuming from S2R + - LP: #86820 + * ALSA: hda - Fix beep frequency on IDT 92HD73xx and 92HD71Bxx codecs + - LP: #414795 + * agp/intel: Support the extended physical addressing bits on + Sandybridge. + - LP: #632488 + * drm/i915,intel_agp: Add support for Sandybridge D0 + - LP: #632488 + * (pre-stable) intel_agp,i915: Add more sandybridge graphics device ids + - LP: #632488 + * mmc: omap: fix for bus width which improves SD card's peformance. + + -- Leann Ogasawara Tue, 07 Sep 2010 09:58:52 -0700 + +linux (2.6.35-20.29) maverick; urgency=low + + [ Andy Whitcroft ] + + * SAUCE: i915 KMS -- support disabling KMS for known broken devices + - LP: #563277 + * SAUCE: i915 KMS -- blacklist i830 + - LP: #542208, #563277 + * SAUCE: i915 KMS -- blacklist i845g + - LP: #541492, #563277 + * SAUCE: i915 KMS -- blacklist i855 + - LP: #511001, #541511, #563277 + + [ Leann Ogasawara ] + + * [Config] Enable CONFIG_SENSORS_PKGTEMP=m + - LP: #601073 + * ARM: Temporarily disable module check for armel + * rebase to v2.6.35.4 + * [Config] update configs following rebase to v2.6.35.4 + + [ Ricardo Salveti de Araujo ] + + * [Config] Change CONFIG_LEDS_TRIGGER_HEARTBEAT from module to built-in + in Omap + + [ Tim Gardner ] + + * [Config] Added be2net, be2scsi to udebs + - LP: #628776 + + [ Upstream Kernel Changes ] + + * x86, cpu: Package Level Thermal Control, Power Limit Notification + definitions + - LP: #601073 + * x86, hwmon: Package Level Thermal/Power: pkgtemp hwmon driver + - LP: #601073 + * x86, hwmon: Package Level Thermal/Power: thermal throttling handler + - LP: #601073 + * x86, hwmon: Package Level Thermal/Power: power limit + - LP: #601073 + * x86, hwmon: Package Level Thermal/Power: pkgtemp documentation + - LP: #601073 + * hid: 3m: Adjust to sequential MT HID protocol + * hid: 3m: Convert to MT slots + * hid: 3m: Correct touchscreen emulation + * hid: 3m: Adjust major / minor axes to scale + * input: bcm5974: Adjust major / minor to scale + * HID: magicmouse: don't allow hidinput to initialize the device + * HID: magicmouse: simplify multitouch feature request + * HID: magicmouse: simplify touch data bit manipulation + * HID: magicmouse: simplify touch down logic + * HID: magicmouse: remove timestamp logic + * HID: magicmouse: enable Magic Trackpad support + * HID: magicmouse: Adjust major / minor axes to scale + * mmc: fix all hangs related to mmc/sd card insert/removal during + suspend/resume + - LP: #477106 + * drm/i915: fix VGA plane disable for Ironlake+ + - LP: #602281 + + -- Leann Ogasawara Mon, 30 Aug 2010 08:38:01 -0700 + +linux (2.6.35-19.28) maverick; urgency=low + + [ Leann Ogasawara ] + + * No changes from 2.6.35-19.27. Some armel udebs were accidentally deleted + from the archive and a no-change rebuild was attempted. However, the ABI + did not get bumped and resulted in build failures for 2.6.35-19.27. Fix + up the ABI and re-upload. + + -- Leann Ogasawara Sat, 28 Aug 2010 16:42:27 -0700 + +linux (2.6.35-19.27) maverick; urgency=low + + [ Leann Ogasawara ] + + * No changes from 2.6.35-19.26. Some armel udebs were accidentally deleted + from the archive. + + -- Leann Ogasawara Fri, 27 Aug 2010 08:58:35 -0700 + +linux (2.6.35-19.26) maverick; urgency=low + + [ Upstream Kernel Changes ] + + * ARM: OMAP: Beagle: revision detection + * ARM: OMAP: Beagle: only Cx boards use pin 23 for write protect + * ARM: OMAP: Beagle: no gpio_wp pin connection on xM + + -- Leann Ogasawara Thu, 26 Aug 2010 09:15:09 -0700 + +linux (2.6.35-19.25) maverick; urgency=low + + [ Jarod Wilson ] + + * SAUCE: Bring in staging/lirc from 2.6.36 + - LP: #609234 + * SAUCE: Update ir-core to linuxtv/other which should be merged for + 2.6.36. + - LP: #609234 + * SAUCE: Fix memleaks in imon and mceusb drivers + - LP: #609234 + * SAUCE: Bring in streamzap support from linuxtv/other + - LP: #609234 + + [ Mario Limonciello ] + + * Remove ubuntu/lirc in favor of staging/lirc from 2.6.36 + - LP: #609234 + + [ Mathieu J. Poirier ] + + * SAUCE: ARM: adding i2c eeprom driver to read EDID + - LP: #608279 + + [ Upstream Kernel Changes ] + + * intel_idle: disable module support + - LP: #615265 + * (pre-stable) ALSA: hda - Ensure codec patch files are checked for the + correct codec ID + * (pre-stable) ALSA: hda - Rename iMic to Int Mic on Lenovo NB0763 + - LP: #605101 + * (pre-stable) ALSA: HDA: Use model=auto for LG R510 + - LP: #495134 + * (pre-stable) ALSA: HDA: Add Sony VAIO quirk for ALC269 + - LP: #519066 + * (pre-stable) ALSA: HDA: Fix front mic on Dell Precision M6500 + - LP: #519066 + * input: mt: Initialize slots to unused (rev2) + * input: mt: Add support for the Bamboo Touch trackpad + * hid: Add a hid quirk for input sync override + + -- Leann Ogasawara Mon, 23 Aug 2010 12:42:52 -0700 + +linux (2.6.35-18.24) maverick; urgency=low + + [ Colin Watson ] + + * Pass DEB_MAINT_PARAMS to hook scripts + + [ Leann Ogasawara ] + + * [Config] Add CONFIG_INPUT_UINPUT=y to config enforcer + - LP: #584812 + * rebase to v2.6.35.3 + + [ Upstream Kernel Changes ] + + * (pre-stable) dell-wmi: Add support for eject key on Dell Studio 1555 + - LP: #609234 + * can: add limit for nframes and clean up signed/unsigned variables + - CVE-2010-2959 + * drm: Initialize ioctl struct when no user data is present + - CVE-2010-2803 + * ARM: initial stack protector (-fstack-protector) support + * ARM: stack protector: change the canary value per task + * [ARM] implement arch_randomize_brk() + * [ARM] add address randomization to mmap() + * ARM: fix ASLR of PIE executables + + -- Leann Ogasawara Sun, 22 Aug 2010 19:22:04 -0700 + +linux (2.6.35-17.23) maverick; urgency=low + + [ Jeremy Kerr ] + + * [Config] build-in uinput module + - LP: #584812 + + [ Leann Ogasawara ] + + * Revert "[Config] [FTBS] ia64: Temporarily disable CONFIG_CEPH_FS" + * Revert "[Config] [FTBS] ia64: Temporarily disable gpiolib" + * Revert "[Config] [FTBS] sparc: Temporarily disable + CONFIG_MTD_NAND_DENALI" + * Revert "[Config] [FTBS] sparc: Temporarily disable + CONFIG_MFD_JANZ_CMODIO" + * Revert "[Config] [FTBS] sparc: Temporarily disable + CONFIG_INFINIBAND_QIB" + * [Config] Enable INTEL_IPS + - LP: #601057 + * Remove ia64 support + * [Config] Update portsconfigs after removing ia64 support + * Remove sparc support + * [Config] Update portsconfigs after removing sparc support + + [ Linus Torvalds ] + + * (pre-stable) mm: fix page table unmap for stack guard page properly + + [ Mathieu J. Poirier ] + + * SAUCE: (no-up) ARM: Resetting power_mode to its original value. + - LP: #591941 + + [ Upstream Kernel Changes ] + + * timer: add on-stack deferrable timer interfaces + - LP: #601057 + * x86 platform driver: intelligent power sharing driver + - LP: #601057 + * IPS driver: add GPU busy and turbo checking + - LP: #601057 + * X86: intel_ips, check for kzalloc properly + - LP: #601057 + * ips driver: make it less chatty + - LP: #601057 + + -- Leann Ogasawara Tue, 17 Aug 2010 09:38:08 -0700 + +linux (2.6.35-16.22) maverick; urgency=low + + [ Andy Whitcroft ] + + * debian -- more agressivly clean up after depmod on purge + - LP: #618591 + + [ Henrik Rydberg ] + + * SAUCE: hid: 3m: Simplify touchsreen emulation logic + + [ Leann Ogasawara ] + + * ubuntu: iscsitarget -- version 1.4.20.2 + * ubuntu: rtl8192se -- update to version 0017.0507.2010 + * rebase to v2.6.35.2 + * [Config] update configs following rebase to v2.6.35.2 + * [Config] update ports configs following rebase to v2.6.35.2 + + [ Luke Yelavich ] + + * [Config] Enable new firewire stack on powerpc + + [ Mathieu J. Poirier ] + + * SAUCE: (drop after 2.6.35) ARM: Using gpmc function to init nand flash. + - LP: #608266 + + -- Leann Ogasawara Thu, 12 Aug 2010 09:58:01 -0700 + +linux (2.6.35-15.21) maverick; urgency=low + + [ Luke Yelavich ] + + * [Config] CONFIG_SND_USB_UA101=m for all architectures + + [ Upstream Kernel Changes ] + + * Input: introduce MT event slots + * Input: document the MT event slot protocol + * (pre-stable) sched: Revert nohz_ratelimit() for now + * (pre-stable) drm/radeon/kms: add missing copy from user + - LP: #606081 + + [ Leann Ogasawara ] + + * rebase to v2.6.35.1 + + -- Leann Ogasawara Mon, 09 Aug 2010 09:24:04 -0700 + +linux (2.6.35-14.20) maverick; urgency=low + + [ Andy Whitcroft ] + + * update Vcs-Git to point to maverick repo + * debian -- include the debian packaging in the -source package + - LP: #608674 + * select debian source format 1.0 + * add support for building selected stages of kernel + - LP: #603087 + * cleanup conditional dependancy handling + - LP: #603087 + + [ Upstream Kernel Changes ] + + * ALSA: hda - Handle missing NID 0x1b on ALC259 codec + - LP: #582199, #586418, #588031 + * ALSA: hda - Handle pin NID 0x1a on ALC259/269 + - LP: #582199, #586418, #588031 + * sched: Revert nohz_ratelimit() for now + + -- Leann Ogasawara Tue, 03 Aug 2010 08:46:47 -0700 + +linux (2.6.35-14.19) maverick; urgency=low + + [ Leann Ogasawara ] + + * rebase to v2.6.35 + + -- Leann Ogasawara Sun, 01 Aug 2010 10:35:56 -0700 + +linux (2.6.35-13.18) maverick; urgency=low + + [ Andy Whitcroft ] + + * SAUCE: (no-up) Modularize vesafb -- fix initialisation + * SAUCE: add tracing for user initiated readahead requests + * SAUCE: vt -- maintain bootloader screen mode and content until vt + switch + * SAUCE: vt -- allow grub to request automatic vt_handoff + * SAUCE: fbcon -- fix race between open and removal of framebuffers + * SAUCE: drm -- stop early access to drm devices + + [ Bryan Wu ] + + * CONFIG: compile in OTG driver and Transceiver driver + - LP: #566645 + * remove OTG modules from modules list file + + [ John Johansen ] + + * SAUCE: AppArmor: -- sync to AppArmor mainline 2010-07-27 + - LP: #581525, #599450 + * SAUCE: AppArmor: -- sync to AppArmor mainline 2010-07-29 + * SAUCE: AppArmor 2.4 compatibility patch + * SAUCE: AppArmor: Allow dfa backward compatibility with broken userspace + * SAUCE: fix pv-ops for legacy Xen + * SAUCE: blkfront: default to sd devices + * [Config] Build in drivers required for Xen pv-ops + + [ Leann Ogasawara ] + + * Revert "[Upstream] i915: Use the correct mask to detect i830 aperture + size." + + [ Lee Jones ] + + * SAUCE: ARM: OMAP: Add macros for comparing silicon revision + - LP: #608095 + * SAUCE: OMAP: DSS2: check for both cpu type and revision, rather than + just revision + - LP: #608095 + * SAUCE: OMAP: DSS2: enable hsclk in dsi_pll_init for OMAP36XX + - LP: #608095 + * SAUCE: ARM: OMAP: Beagle: support twl gpio differences on xM + - LP: #608095 + + [ Upstream Kernel Changes ] + + * agp/intel: Use the correct mask to detect i830 aperture size. + - LP: #597075 + + -- Leann Ogasawara Fri, 30 Jul 2010 15:46:59 -0700 + +linux (2.6.35-12.17) maverick; urgency=low + + [ Leann Ogasawara ] + + * rebase to v2.6.35-rc6 + * [Config] update configs following rebase to v2.6.35-rc6 + * [Config] update ports configs following rebase to v2.6.35-rc6 + * SAUCE: [FTBS] armel: define KEY_F10 and KEYF11 + + [ Leann Ogasawara ] + + * rebase to v2.6.35-rc6 + + -- Leann Ogasawara Fri, 23 Jul 2010 16:16:38 +0200 + +linux (2.6.35-11.16) maverick; urgency=low + + [ Leann Ogasawara ] + + * Bump ABI for new compiler update + + -- Leann Ogasawara Fri, 23 Jul 2010 10:24:58 +0200 + +linux (2.6.35-10.15) maverick; urgency=low + + [ Leann Ogasawara ] + + * Revert "SAUCE: ensure vga16fb loads if no other driver claims the VGA + device" + * [Config] Enable CONFIG_M686=y + - LP: #592495 + + [ Upstream Kernel Changes ] + + * tracing: Add alignment to syscall metadata declarations + + -- Leann Ogasawara Tue, 20 Jul 2010 18:18:49 +0200 + +linux (2.6.35-9.14) maverick; urgency=low + + [ Andy Whitcroft ] + + * ubuntu: AUFS -- add BOM and automated update script + * ubuntu: AUFS -- update to b37c575759dc4535ccc03241c584ad5fe69e3b25 + + [ John Johansen ] + + * [Config] Enable DRBD as a module + + [ Kees Cook ] + + * SAUCE: Yama: verify inode is symlink to avoid bind mounts + - LP: #604407 + + [ Leann Ogasawara ] + + * [Config] Disable CONFIG_DRM_VMWGFX (staging driver) + - LP: #606139 + * [Config] ports: Disable CONFIG_DRM_VMWGFX (staging driver) + - LP: #606139 + * [Config] Enable CONFIG_DEBUG_STRICT_USER_COPY_CHECKS=y + * [Config] ports: Enable CONFIG_DEBUG_STRICT_USER_COPY_CHECKS=y + + [ Lee Jones ] + + * Stop ARM boards crashing when CUPS is loaded + - LP: #601226 + + [ Upstream Kernel Changes ] + + * perf probe: Support tracing an entry of array + * perf probe: Support static and global variables + + -- Leann Ogasawara Fri, 16 Jul 2010 14:38:17 -0700 + +linux (2.6.35-8.13) maverick; urgency=low + + [ Kees Cook ] + + * SAUCE: Yama: check PTRACE using thread group leader + * SAUCE: Yama: search for PTRACE exceptions via thread group leader + - LP: #603716 + + [ Leann Ogasawara ] + + * rebase to v2.6.35-rc5 + * [Config] update configs following rebase to v2.6.35-rc5 + + [ Nicolas Pitre ] + + * SAUCE: make ndiswrapper available on X86 only + + [ Tim Gardner ] + + * [Config] Added ums-cypress to udeb + - LP: #576066 + * SAUCE: fix build error with CONFIG_BLK_DEV_INITRD=n + * [Config] CONFIG_NDISWRAPPER=m across all configs + + [ Upstream Kernel Changes ] + + * HID: magicmouse: report last touch up + * rebase to 2.6.35-rc5 + + -- Leann Ogasawara Tue, 13 Jul 2010 18:57:59 -0700 + +linux (2.6.35-7.12) maverick; urgency=low + + [ Tim Gardner ] + + * [Upstream] i915: Use the correct mask to detect i830 aperture size. + - LP: #597075 + + [ Upstream Kernel Changes ] + + * (drop after 2.6.35) drm/radeon/kms: add ioport register access + (squashed) + + -- Tim Gardner Thu, 08 Jul 2010 09:53:13 -0600 + +linux (2.6.35-7.11) maverick; urgency=low + + [ Tim Gardner ] + + * [Config] CONFIG_X86_MRST=n + + [ Upstream Kernel Changes ] + + * (drop after 2.6.35-rc5) writeback: remove writeback_inodes_wbc + * (drop after 2.6.35-rc5) writeback: split writeback_inodes_wb + * (drop after 2.6.35-rc5) writeback: simplify the write back thread queue + + -- Tim Gardner Tue, 06 Jul 2010 18:39:08 -0600 + +linux (2.6.35-7.10) maverick; urgency=low + + [ Kees Cook ] + + * SAUCE: security: create task_free security callback + * SAUCE: Yama: add PTRACE exception tracking and interface + * SAUCE: security: unconditionally chain to Yama LSM + * Revert "SAUCE: ptrace: restrict ptrace scope to children" + * Revert "SAUCE: fs: block hardlinks to non-accessible sources" + * Revert "SAUCE: fs: block cross-uid sticky symlinks" + * [Upstream] security: Yama LSM + * [Config] Enable CONFIG_SECURITY_YAMA=y + + [ Tim Gardner ] + + * [Config] updateconfigs/updateportsconfigs after rebase to 2.6.35-rc4 + + [ Upstream Kernel Changes ] + + * rebase to 2.6.35-rc4 + + -- Leann Ogasawara Thu, 01 Jul 2010 08:55:57 -0700 + +linux (2.6.35-6.9) maverick; urgency=low + + [ Tim Gardner ] + + * [Upstream] direct_splice_actor() should not use pos in sd + - LP: #588861 + + -- Leann Ogasawara Mon, 28 Jun 2010 12:35:49 -0700 + +linux (2.6.35-6.8) maverick; urgency=low + + [ Mathieu J. Poirier ] + + * ARM: Adding regulator supply for vdds_sdi. + - LP: #597904 + + -- Leann Ogasawara Sun, 27 Jun 2010 16:34:43 -0700 + +linux (2.6.35-6.7) maverick; urgency=low + + [ Alberto Milone ] + + * [Upstream] Add support for the ATIF ACPI method to the radeon driver + + [ Chase Douglas ] + + * [Upstream] HID: magicmouse: scroll on entire surface, not just middle + of mouse + * [Upstream] HID: magicmouse: disable and add module param for scroll + acceleration + * [Upstream] HID: magicmouse: properly account for scroll movement in + state + * [Upstream] HID: magicmouse: add param for scroll speed + * [Upstream] HID: magicmouse: enable horizontal scrolling + + [ Henrik Rydberg ] + + * [Upstream] Input: evdev - convert to dynamic event buffer + * [Upstream] Input: evdev - use driver hint to compute size of event + buffer + * [Upstream] Input: bcm5974 - set the average number of events per MT + event packet + * [Upstream] Input: hid-input - use a larger event buffer for MT devices + * [Upstream] Input: evdev - never leave the client buffer empty after + write + + [ John Johansen ] + + * SAUCE: AppArmor: -- mainline 2010-06-23 + * SAUCE: AppArmor 2.4 compatibility patch + * SAUCE: fs: block hardlinks to non-accessible sources AppArmor portion + + [ Leann Ogasawara ] + + * [Config] Enable CONFIG_INTR_REMAP=y + - LP: #597091 + * [Config] Enable CONFIG_X86_X2APIC + - LP: #597091 + + [ Mathieu J. Poirier ] + + * [Config] ARM: Turning off CONFIG_CPU_IDLE on omap + - LP: #594382 + + -- Leann Ogasawara Thu, 24 Jun 2010 12:19:48 -0700 + +linux (2.6.35-5.6) maverick; urgency=low + + [ Amit Kucheria ] + + * [Config] update omap flavour description + + [ Andy Whitcroft ] + + * update to ubuntu-debian:508b7aa34b578c0d1e51bfb571f2bfb824dc65ac + - LP: #570500, #576274 + * SAUCE: add option to hand off all kernel parameters to init + - LP: #586386 + * [Config] enable passing all kernel command line to init + - LP: #586386 + * [Config] disable CONFIG_VMI + - LP: #537601 + * [Config] enable CONFIG_IPV6_SIT_6RD + - LP: #591869 + * [Config] enable CONFIG_VMWARE_BALOON as module + - LP: #592039 + + [ Leann Ogasawara ] + + * Revert "SAUCE: pm: Config option to disable handling of console during + suspend/resume" + - LP: #594885 + * [Config] Remove CONFIG_PM_DISABLE_CONSOLE + * [Config] ports: enable passing all kernel command line to init + - LP: #586386 + * [Config] Enable CONFIG_FB_VESA=y for x86 + * [Config] Add CONFIG_FRAMEBUFFER_CONSOLE=y to config enforcer + * [Config] Add CONFIG_FB_VESA=y for x86 to config enforcer + * [Config] Enable CONFIG_TASK_DELAY_ACCT=y + - LP: #493156 + + [ Mathieu Poirier ] + + * ARM: Adding MosChip MCS7830 to nic-usb + - LP: #584920 + + [ Upstream Kernel Changes ] + + * Revert "[Upstream] docbook: need xmldoclinks for all doc types" + * docbook: need xmldoclinks for all doc types + * perf probe: Add kernel source path option + + -- Leann Ogasawara Thu, 17 Jun 2010 08:05:29 -0700 + +linux (2.6.35-4.5) maverick; urgency=low + + [ Leann Ogasawara ] + + * Revert "[Upstream] (evdev) Use driver hint to compute the evdev buffer + size (rev2)" + * Revert "[Upstream] (evdev) Convert to dynamic event buffer (rev4)" + * Revert "[Upstream] (evdev) Use multi-reader buffer to save space + (rev4)" + * Revert "SAUCE: drivers: Remove some duplicate device entries in various + modules" + * [Upstream] USB: option: Remove duplicate AMOI_VENDOR_ID + * [Upstream] Revert "USB: Adding support for HTC Smartphones to ipaq" + * [Upstream] p54usb: Comment out duplicate Medion MD40900 device id + + [ Tim Gardner ] + + * [Config] CONFIG_NFS_FSCACHE=y + - LP: #440522 + * [Config] CONFIG_FSCACHE_STATS=y, CONFIG_FSCACHE_HISTOGRAM=y + - LP: #440522 + + -- Leann Ogasawara Wed, 16 Jun 2010 08:43:07 -0700 + +linux (2.6.35-3.4) maverick; urgency=low + + [ Andy Whitcroft ] + + * debian -- ensure the version number is clean + + [ Henrik Rydberg ] + + * [Upstream] Introduce MT event slots (rev 5) + * [Upstream] Document the MT event slot protocol (rev5) + * [Upstream] (evdev) Use multi-reader buffer to save space (rev4) + * [Upstream] (evdev) Convert to dynamic event buffer (rev4) + * [Upstream] (evdev) Use driver hint to compute the evdev buffer size + (rev2) + + [ Leann Ogasawara ] + + * Revert "SAUCE: Add MODULE_ALIAS for Dell WMI module" + * Revert "SAUCE: hostap: send events on data interface as well as master + interface" + * Revert "Fix webcam having USB ID 0ac8:303b" + * Revert "SAUCE: toshiba_acpi -- pull in current -dev version of driver" + * rebase to v2.6.35-rc3 + + [ Maxim Levitsky ] + + * [Config] Enable new Smartmedia/xD translation layer + - LP: #202490 + + [ Upstream Kernel Changes ] + + * net: fix deliver_no_wcard regression on loopback device + + [ Upstream changes ] + + * rebased to v2.6.35-rc3 + + -- Leann Ogasawara Thu, 10 Jun 2010 16:15:22 -0700 + +linux (2.6.35-2.3) maverick; urgency=low + + [ Bryan Wu ] + + * CONFIG: enforce -- make sure we disable CONFIG_LOCALVERSION_AUTO + + [ Leann Ogasawara ] + + * [Config] armel: Enable CONFIG_BNX2=m + * [Config] ports: Enable CONFIG_BNX2X=m + * SAUCE: armel: define get_dma_ops to fix FTBS + + [ Tim Gardner ] + + * [Upstream] net: Print num_rx_queues imbalance warning only when there + are allocated queues + - LP: #591416 + + -- Leann Ogasawara Wed, 09 Jun 2010 08:27:41 -0700 + +linux (2.6.35-2.2) maverick; urgency=low + + [ Andy Whitcroft ] + + * [Config] d-i: make armel configuration versatile flavour specific + - LP: #588805 + * [Config] d-i: enable .udebs for omap flavour + - LP: #588805 + + [ Kees Cook ] + + * ptrace: limit scope to attach only (allow read) + - LP: #589656 + + [ Leann Ogasawara ] + + * rebase to v2.6.35-rc2 + * [Config] update configs following rebase to v2.6.35-rc2 + * [Config] update port configs following rebase to v2.6.35-rc2 + + [ Lee Jones ] + + * Enable perf to be more helpful when perf_ does not exist. + - LP: #570500 + * 'fdr editconfig' modification. Easily skip over unwanted menuconfigs. + + [ Tim Gardner ] + + * [Config] Update bnx2 udeb firmware files + - LP: #589304 + + [ Upstream changes ] + + * rebased to v2.6.35-rc2 + + -- Leann Ogasawara Mon, 07 Jun 2010 09:45:04 -0700 + +linux (2.6.35-1.1) maverick; urgency=low + + [ Andy Whitcroft ] + + * ubuntu: AUFS -- update to standalone 2.6.35-rcN as at 20100601 + - LP: #587888 + * ubuntu: AUFS -- track changes to the arguements to fop fsync() + + [ Leann Ogasawara ] + + * rebase to v2.6.35-rc1 + * [Config] update configs following rebase to v2.6.35-rc1 + * [Config] update port configs following rebase to v2.6.35-rc1 + * SAUCE: lirc: rename usb_buffer_alloc() and usb_buffer_free() + * SAUCE: ndiswrapper: rename usb_buffer_alloc() and usb_buffer_free() + * SAUCE: ndiswrapper: convert multicast list to list_head + * [Config] [FTBS] armel: Temporarily disable CONFIG_GPIO_JANZ_TTL + * [Config] [FTBS] ia64: Temporarily disable gpiolib + * [Config] [FTBS] ia64: Temporarily disable CONFIG_CEPH_FS + * [Config] [FTBS] sparc: Temporarily disable CONFIG_INFINIBAND_QIB + * [Config] [FTBS] sparc: Temporarily disable CONFIG_MFD_JANZ_CMODIO + * [Config] [FTBS] armel: Temporarily disable CONFIG_MFD_JANZ_CMODIO + * [Config] [FTBS] armel: Temporarily disable CONFIG_DT3155 + * [Config] [FTBS] sparc: Temporarily disable CONFIG_MTD_NAND_DENALI + * [Config] [FTBS] armel: Temporarily disable bnx2 + * [Config] [FTBS] armel: Temporarily disable CONFIG_SERIAL_UARTLITE + * SAUCE: [FTBS] armel: Don't include asm/agp.h for ttm + * SAUCE: [FTBS] armel: include linux/dma-mapping.h + * SAUCE: [FTBS] armel: replace omap_set_gpio_debounce with + gpio_set_debounce + + [ Upstream Kernel Changes ] + + * of/usb: fix build error due to of_node pointer move + * n2_crypto: Fix build after of_device/of_platform_driver changes. + * powerpc/fsl-booke: fix the case where we are not in the first page + * powerpc/fsl-booke: Move the entry setup code into a seperate file + * powerpc/kexec: Add support for FSL-BookE + * greth: Fix build after OF device conversions. + + [ Upstream changes ] + + * rebased to v2.6.35-rc1 + + -- Leann Ogasawara Fri, 04 Jun 2010 23:01:52 -0700 + +linux (2.6.35-1.0) UNRELEASED; urgency=low + + [ Leann Ogasawara ] + + * Null entry. + + -- Leann Ogasawara Wed, 02 Jun 2010 15:17:41 -0700 + +linux (2.6.34-5.14) maverick; urgency=low + + [ Tim Gardner ] + + * [Config] Added module inclusion support + * [Config] Added virtual flavour module inclusion list and d-i package + definitions + + -- Leann Ogasawara Wed, 02 Jun 2010 12:58:14 -0700 + +linux (2.6.34-5.13) maverick; urgency=low + + [ Andy Whitcroft ] + + * Revert "ubuntu: AUFS -- aufs2 20091209" + * Revert "ubuntu: AUFS -- export various core functions + (aufs2-standalone.patch)" + * Revert "ubuntu: AUFS -- export various core functions + (aufs2-base.patch)" + * ubuntu: AUFS -- aufs2 base patch for linux-2.6.34 + - LP: #587888 + * ubuntu: AUFS -- aufs2 standalone patch for linux-2.6.34 + - LP: #587888 + * ubuntu: AUFS -- update to standalone 2.6.34 as at 20100601 + - LP: #587888 + * [Config] AUFS -- enable aufs options + - LP: #587888 + + -- Leann Ogasawara Tue, 01 Jun 2010 08:56:43 -0700 + +linux (2.6.34-5.12) maverick; urgency=low + + [ Andy Whitcroft ] + + * enforce -- ensure SYSFS compatibility is disabled + + [ Chase Douglas ] + + * build with libdw-dev for perf probe symbol support + * maverick ftrace configuration changes + + [ Kees Cook ] + + * Revert "SAUCE: x86: brk away from exec rand area" + * Revert "SAUCE: [um] Don't use nx_enabled under UML" + * Revert "SAUCE: [x86] implement cs-limit nx-emulation for ia32" + * SAUCE: x86: implement cs-limit nx-emulation for ia32 + - LP: #369978 + * SAUCE: x86: more tightly confine cs-limit nx-emulation to ia32 only + * SAUCE: x86: brk away from exec rand area + - LP: #452175 + * SAUCE: ptrace: restrict ptrace scope to children + + [ Leann Ogasawara ] + + * Add new omap flavour to getabis + * [Config] Enable CONFIG_FRAMEBUFFER_CONSOLE=y for all archs + - LP: #585490 + * build/modules: Temorarily add ignore.modules + * ubuntu: iscsitarget -- version 1.4.20.1 + + [ Loïc Minier ] + + * SAUCE: [um] Don't use nx_enabled under UML + - LP: #524849 + + -- Leann Ogasawara Fri, 28 May 2010 08:27:17 -0700 + +linux (2.6.34-4.11) maverick; urgency=low + + [ Amit Kucheria ] + + * SAUCE: omap: remove calls to usb_nop_xceiv_register from board files + * [Config] Add support for OMAP-mainline flavour + + [ Andy Whitcroft ] + + * SAUCE: powerpc: fix compile error when ptrace.h is included from + userspace + - LP: #583733 + + [ Chase Douglas ] + + * Revert "SAUCE: Don't register vga16fb framebuffer if other framebuffers + are present" + * Revert "SAUCE: Disable function tracing after hitting __schedule_bug" + * Revert "SAUCE: drm/i915: don't change DRM configuration when releasing + load detect pipe" + + [ Kees Cook ] + + * SAUCE: fs: block cross-uid sticky symlinks + * SAUCE: fs: block hardlinks to non-accessible sources + + [ Koen Kooi ] + + * SAUCE: board-omap3-beagle: add DSS2 support + + [ Leann Ogasawara ] + + * Revert "staging/go7007 -- disable" + * Revert "[Config] staging/winbond -- disable" + * Revert "Disable 4MB page tables for Atom, work around errata AAE44" + * Revert "SAUCE: sync before umount to reduce time taken by ext4 umount" + * Revert "SAUCE: Enable an e1000e Intel Corporation 82567 Gigabit + controller" + * Revert "SAUCE: Fix MODULE_IMPORT/MODULE_EXPORT" + * Revert "SAUCE: Created MODULE_EXPORT/MODULE_IMPORT macros" + * Revert "SAUCE: input/mouse/alps: Do not call psmouse_reset() for alps" + * Revert "SAUCE: r8169: disable TSO by default for RTL8111/8168B + chipsets." + * Revert "[Upstream] b43: Declare all possible firmware files." + * Revert "add Breaks: against hardy lvm2" + * Revert "SAUCE: Guest OS does not recognize a lun with non zero target + id on Vmware ESX Server" + * Revert "SAUCE: Catch nonsense keycodes and silently ignore" + * [Config] Enable CONFIG_ECRYPT_FS=y for ports + * [Config] Enable CONFIG_USB=y for armel and sparc + * [Config] Enable CONFIG_SCSI=y for ia64 and sparc + * [Config] Enable CONFIG_RFKILL=y for ports + * [Config] Enable CONFIG_ATH9K_DEBUGFS=y + * [Config] Enable CONFIG_IWMC3200TOP_DEBUGFS=y + * [Config] Enable CONFIG_RCU_FAST_NO_HZ=y + * [Config] Enable CONFIG_IWLWIFI_DEVICE_TRACING=y + * [Config] Enable CONFIG_LIBERTAS_MESH=y + * [Config] Enable CONFIG_MMC_RICOH_MMC=y + * [Config] CONFIG_RT2800USB_UNKNOWN=y + * [Config] Enable CONFIG_VGA_SWITCHEROO=y + * [Config] Enable CONFIG_CEPH_FS=m + * [Config] Enable CONFIG_CRYPTO_PCRYPT=m + * [Config] Enable CONFIG_EEEPC_WMI=m + * [Config] Enable CONFIG_RT2800PCI=m + * [Config] Enable CONFIG_SCSI_HPSA=m + * [Config] Enable CONFIG_VHOST_NET=m + * [Config] Disable CONFIG_SND_HDA_INPUT_BEEP_MODE by default + - LP: #582350 + * [Config] Disable CONFIG_SOUND_OSS* and CONFIG_SND_*OSS + - LP: #579300 + * [Config] Enable CONFIG_PCIEASPM=y + - LP: #333990 + * [Config] updateconfigs for OMAP flavour + + [ Loïc Minier ] + + * Enable perf tools on armel + + [ Tim Gardner ] + + * SAUCE: Updated ndiswrapper to 1.56 + - LP: #582555 + * [Config] Added virtual flavour + * [Config] Remove support for sub-flavours + * [Config] Removed amd64 preempt flavour + * [Config] updateconfigs, updateportsconfigs after flavour munging + + -- Leann Ogasawara Tue, 25 May 2010 09:34:55 -0700 + +linux (2.6.34-3.10) maverick; urgency=low + + [ Leann Ogasawara ] + + * rebase to v2.6.34 + + [ Upstream changes ] + + * rebased to v2.6.34 + + -- Leann Ogasawara Tue, 18 May 2010 17:35:35 -0700 + +linux (2.6.34-2.9) maverick; urgency=low + + [ Leann Ogasawara ] + + * [Config] [FTBS] Disable comedi for armel + + -- Leann Ogasawara Thu, 13 May 2010 23:20:55 +0200 + +linux (2.6.34-2.8) maverick; urgency=low + + [ Leann Ogasawara ] + + * Drop lpia + * [Config] [FTBS] disable KVM + * [Config] [FTBS] disable ipr for armel + + -- Leann Ogasawara Thu, 13 May 2010 16:07:52 +0200 + +linux (2.6.34-2.7) maverick; urgency=low + + [ Leann Ogasawara ] + + * [Config] disable CONFIG_SCSI_IPR on powerpc + * [Config] Remove 386 flavour per UDS discussion + + -- Leann Ogasawara Wed, 12 May 2010 18:26:43 +0200 + +linux (2.6.34-1.6) maverick; urgency=low + + [ Chase Douglas ] + + * enforce CONFIG_TMPFS_POSIX_ACL=y + - LP: #575940 + * don't force module dependency checking + - LP: #577029 + + [ Kees Cook ] + + * SAUCE: mmap_min_addr check CAP_SYS_RAWIO only for write + - LP: #568844 + + [ Leann Ogasawara ] + + * Revert "SAUCE: ata: blacklist FUJITSU MHW2160BH PL" + * rebase to v2.6.34-rc7 + * [Config] update configs following rebase to v2.6.34-rc7 + * [Config] update port configs following rebase to v2.6.34-rc7 + * Add btrfs to the udebs + + [ Tim Gardner ] + + * [Config] Add atl1c to nic-modules udeb + - LP: #557130 + + [ Upstream changes ] + + * rebased to v2.6.34-rc7 + + -- Leann Ogasawara Tue, 11 May 2010 11:29:08 +0200 + +linux (2.6.34-1.5) UNRELEASED; urgency=low + + [ Leann Ogasawara ] + + * rebase to v2.6.34-rc6 + * [Config] update configs following rebase to v2.6.34-rc6 + * [Config] update port configs following rebase to v2.6.34-rc6 + + [ Upstream changes ] + + * rebased to v2.6.34-rc6 + + -- Leann Ogasawara Fri, 30 Apr 2010 15:54:05 +0100 + +linux (2.6.34-1.4) UNRELEASED; urgency=low + + [ Leann Ogasawara ] + + * rebase to v2.6.34-rc5 + * [Config] update ports configs following rebase to v2.6.34-rc5 + + [ Upstream changes ] + + * rebased to v2.6.34-rc5 + + -- Leann Ogasawara Thu, 22 Apr 2010 15:36:12 -0700 + +linux (2.6.34-1.3) UNRELEASED; urgency=low + + [ Leann Ogasawara ] + + * rebase to v2.6.34-rc4 + * [Config] update configs following rebase to v2.6.34-rc4 + * [Config] update port configs following rebase to v2.6.34-rc4 + * ubuntu: dm-raid4-5 -- update to compile with 2.6.34-rc4 + + [ Upstream changes ] + + * rebased to v2.6.34-rc4 + + -- Leann Ogasawara Tue, 13 Apr 2010 18:33:44 -0700 + +linux (2.6.34-1.2) UNRELEASED; urgency=low + + [ Leann Ogasawara ] + + * Temorarily disable building linux-doc + * rebase to v2.6.34-rc3 + * [Config] update configs following rebase to v2.6.34-rc3 + * [Config] update port configs following rebase to v2.6.34-rc3 + + [ Upstream changes ] + + * rebased to v2.6.34-rc3 + + -- Leann Ogasawara Tue, 30 Mar 2010 16:55:44 -0700 + +linux (2.6.34-1.1) UNRELEASED; urgency=low + + [ Leann Ogasawara ] + + * rebase to v2.6.34-rc2 + * ubuntu: dm-raid4-5 -- update to compile with 2.6.34-rc2 + * [Config] update port configs following rebase to v2.6.34-rc2 + * [Config] update configs following rebase to v2.6.34-rc2 + + [ Upstream changes ] + + * rebased to v2.6.34-rc2 + + -- Leann Ogasawara Wed, 24 Mar 2010 23:00:39 -0700 + +linux (2.6.33-1.1) UNRELEASED; urgency=low + + [ Leann Ogasawara ] + + * ubuntu: dm-raid4-5 -- update to compile with 2.6.33 + * ubuntu: lirc -- drop explicit include of linux/autoconf.h + * ubuntu: lirc -- pass kfifo to kfifo_alloc and move spinlock + * ubuntu: lirc -- rename kfifo_put and kfifo_get + * ubuntu: iscsitarget -- rename daddr inet_sock field + * rebased to v2.6.33 + * [Config] update configs following rebase to v2.6.33 + * [Config] update ports configs following rebase to v2.6.33 + + [ Upstream changes ] + + * rebased to v2.6.33 + + -- Leann Ogasawara Tue, 23 Mar 2010 03:55:46 -0700 + +linux (2.6.33-0.0) UNRELEASED; urgency=low + + [ Leann Ogasawara ] + + * Null entry. + + -- Leann Ogasawara Wed, 17 Mar 2010 07:48:56 -0700 + +linux (2.6.32-16.25) lucid; urgency=low + + [ Andy Whitcroft ] + + * linux-tools -- move to Suggests: with explicit seeding + - LP: #534635 + + [ Tim Gardner ] + + * [Config] CONFIG_HID=m + + [ Upstream Kernel Changes ] + + * (pre-stable) sched: Fix SMT scheduler regression in + find_busiest_queue() + * KVM: introduce kvm_vcpu_on_spin + * KVM: VMX: Add support for Pause-Loop Exiting + + -- Andy Whitcroft Tue, 09 Mar 2010 14:13:51 +0000 + +linux (2.6.32-16.24) lucid; urgency=low + + [ Andy Whitcroft ] + + * armel -- perf userspace does not support arm + * ia64 -- libelf-dev/binutils-dev to not provide necessary libraries + + -- Andy Whitcroft Sat, 06 Mar 2010 11:42:12 +0000 + +linux (2.6.32-16.23) lucid; urgency=low + + [ Andy Whitcroft ] + + * SAUCE: PM report driver and device suspend/resume times -- move config + * update to standards version 3.8.4.0 + * printenv -- expose all of the package selectors + * source package -- cleanup source content control + * doc package -- ensure we do build package content on buildd + * lintian -- correct the address in the debian/copyright + * lintian -- update debhelper package version dependancy + * lintian -- fix ghostscript dependancy + * lintian -- add required misc:Depends + * lintian -- move our debhelper compat level to debian/compat + * perf -- build the kernel carried tools + * perf -- add linux-tools carrying the version switches and manuals + * SAUCE: fix up Kconfig for staging drivers + * [Config] enable NOUVEAU etc following drm backport + * update DRM to mainline v2.6.33 + * [Config] Remove AppArmor config options that no longer exist (ports) + * [Config] updateportsconfigs following drm update + + [ John Johansen ] + + * ubuntu: AppArmor -- update to mainline 2010-03-04 + * SAUCE: AppArmor: Reintroduce AppArmor 2.4 compatibility + * SAUCE: AppArmor: replace strim with strstrip for 2.6.32 kernels + * [Config] Remove AppArmor config options that no longer exist + + [ Manoj Iyer ] + + * ubuntu: rtl8192se -- version 2010-0115,0014 + - LP: #530275 + * [Config] added CONFIG_RTL8192SE module. + - LP: #530275 + + [ Tim Gardner ] + + * [Config] Added vmw_pvscsi to d-i/scsi-modules + - LP: #531017 + * [Upstream] netfilter: xt_recent: Add an entry reaper + + [ Upstream Kernel Changes ] + + * Revert "KVM: x86 emulator: Check CPL level during privilege instruction + emulation" + * Revert "KVM: x86 emulator: Fix popf emulation" + * Revert "KVM: x86 emulator: Check IOPL level during io instruction + emulation" + * Revert "KVM: x86 emulator: Add Virtual-8086 mode of emulation" + * Revert "KVM: fix memory access during x86 emulation." + * Add vlan (8021.Q) module package for d-i. + * (pre-stable) drm/i915: blacklist lid status: Sony VGN-BX196VP, Dell + Inspiron 700m + - LP: #515246 + * [Upstream] docbook: need xmldoclinks for all doc types + * x86: set_personality_ia32() misses force_personality32 + * lib: Introduce generic list_sort function + * drm/nv50: Implement ctxprog/state generation. + * drm/nv50: Remove redundant/incorrect ctxvals initialisation. + * (pre-stable) drm/i915: blacklist lid status: Sony VGN-BX196VP, Dell + Inspiron 700m + - LP: #515246 + + -- Andy Whitcroft Fri, 05 Mar 2010 15:40:38 +0000 + +linux (2.6.32-15.22) lucid; urgency=low + + [ Andy Whitcroft ] + + * Revert "[Config] added new config option CONFIG_SR_REPORT_TIME_LIMIT" + * Revert "SAUCE: PM report driver and device suspend/resume times." + * [Config] set CONFIG_SR_REPORT_TIME_LIMIT + + [ Manoj Iyer ] + + * SAUCE: PM report driver and device suspend/resume times. + + -- Andy Whitcroft Tue, 02 Mar 2010 01:35:37 +0000 + +linux (2.6.32-15.21) lucid; urgency=low + + [ Andy Whitcroft ] + + * Revert "(pre-stable) drm/i915: Increase fb alignment to 64k" + * Revert "[Config] lenovo-sl-laptop -- enable" + * Revert "ubuntu: lenovo-sl-laptop -- git tip (b19a08f81f)" + * armel -- cramfs module will no longer be built + * d-i -- make all modules optional + * rename the debug packages to match archive standard + - LP: #527837 + * lenovo-sl-laptop is no longer built + + [ Colin Ian King ] + + * Disable 4MB page tables for Atom, work around errata AAE44 + - LP: #523112 + + [ Colin Watson ] + + * ubuntu: dm-raid4-5: Depend on XOR_BLOCKS + * ubuntu: fsam7400: Depend on CHECK_SIGNATURE + + [ Jesse Barnes ] + + * SAUCE: drm/i915: don't change DRM configuration when releasing load + detect pipe + - LP: #488328 + + [ Loïc Minier ] + + * [Config] armel Update versatile initrd configs + - LP: #524893 + * SAUCE: [um] Don't use nx_enabled under UML + - LP: #524849 + + [ Manoj Iyer ] + + * [Config] added new config option CONFIG_SR_REPORT_TIME_LIMIT + + [ Mario Limonciello ] + + * SAUCE: v3 - Add Dell Business Class Netbook LED driver + + [ Rafael J. Wysocki ] + + * SAUCE: PM report driver and device suspend/resume times. + + [ Surbhi Palande ] + + * Revert "[Upstream] e1000e: enhance frame fragment detection" + - CVE-2009-4538 + * Revert "[Upstream] e1000: enhance frame fragment detection" + - CVE-2009-4536 + + [ Tim Gardner ] + + * [Config] Enabled CONFIG_LEDS_DELL_NETBOOKS=m + * SAUCE: (pre-stable) netfilter: xt_recent: fix buffer overflow + * SAUCE: (pre-stable) netfilter: xt_recent: fix false match + + [ Upstream Kernel Changes ] + + * Revert "(pre-stable) eCryptfs: Add getattr function" + * Fix potential crash with sys_move_pages + * futex_lock_pi() key refcnt fix + * futex: Handle user space corruption gracefully + * futex: Handle futex value corruption gracefully + * Fix race in tty_fasync() properly + * hwmon: (w83781d) Request I/O ports individually for probing + * hwmon: (lm78) Request I/O ports individually for probing + * hwmon: (adt7462) Wrong ADT7462_VOLT_COUNT + * ALSA: ctxfi - fix PTP address initialization + * drm/i915: disable hotplug detect before Ironlake CRT detect + * drm/i915: enable self-refresh on 965 + * drm/i915: Disable SR when more than one pipe is enabled + * drm/i915: Fix DDC on some systems by clearing BIOS GMBUS setup. + * drm/i915: Add HP nx9020/SamsungSX20S to ACPI LID quirk list + * drm/i915: Fix the incorrect DMI string for Samsung SX20S laptop + * drm/i915: Add MALATA PC-81005 to ACPI LID quirk list + * usb: r8a66597-hcd: Flush the D-cache for the pipe-in transfer buffers. + * i2c-tiny-usb: Fix on big-endian systems + * drm/i915: handle FBC and self-refresh better + * drm/i915: Increase fb alignment to 64k + * drm/i915: Update write_domains on active list after flush. + * regulator: Fix display of null constraints for regulators + * ALSA: hda-intel: Avoid divide by zero crash + * CPUFREQ: Fix use after free of struct powernow_k8_data + * freeze_bdev: don't deactivate successfully frozen MS_RDONLY sb + * cciss: Make cciss_seq_show handle holes in the h->drv[] array + * ioat: fix infinite timeout checking in ioat2_quiesce + * resource: add helpers for fetching rlimits + * fs/exec.c: restrict initial stack space expansion to rlimit + * cifs: fix length calculation for converted unicode readdir names + * NFS: Fix a reference leak in nfs_wb_cancel_page() + * NFS: Try to commit unstable writes in nfs_release_page() + * NFSv4: Don't allow posix locking against servers that don't support it + * NFSv4: Ensure that the NFSv4 locking can recover from stateid errors + * NFS: Fix an Oops when truncating a file + * NFS: Fix a umount race + * NFS: Fix a bug in nfs_fscache_release_page() + * NFS: Fix the mapping of the NFSERR_SERVERFAULT error + * md: fix 'degraded' calculation when starting a reshape. + * V4L/DVB: dvb-core: fix initialization of feeds list in demux filter + * Export the symbol of getboottime and mmonotonic_to_bootbased + * kvmclock: count total_sleep_time when updating guest clock + * KVM: PIT: control word is write-only + * tpm_infineon: fix suspend/resume handler for pnp_driver + * amd64_edac: Do not falsely trigger kerneloops + * netfilter: nf_conntrack: fix memory corruption with multiple namespaces + * netfilter: nf_conntrack: per netns nf_conntrack_cachep + * netfilter: nf_conntrack: restrict runtime expect hashsize modifications + * netfilter: xtables: compat out of scope fix + * netfilter: nf_conntrack: fix hash resizing with namespaces + * drm/i915: remove full registers dump debug + * drm/i915: add i915_lp_ring_sync helper + * drm/i915: Don't wait interruptible for possible plane buffer flush + * dasd: remove strings from s390dbf + * crypto: padlock-sha - Add import/export support + * wmi: Free the allocated acpi objects through wmi_get_event_data + * dell-wmi, hp-wmi, msi-wmi: check wmi_get_event_data() return value + * /dev/mem: introduce size_inside_page() + * devmem: check vmalloc address on kmem read/write + * devmem: fix kmem write bug on memory holes + * SCSI: mptfusion : mptscsih_abort return value should be SUCCESS instead + of value 0. + * sh: Couple kernel and user write page perm bits for CONFIG_X2TLB + * ALSA: hda - use WARN_ON_ONCE() for zero-division detection + * dst: call cond_resched() in dst_gc_task() + * ALSA: hda - Improved MacBook (Pro) 5,1 / 5,2 support + * befs: fix leak + * rtc-fm3130: add missing braces + * Call flush_dcache_page after PIO data transfers in libata-sff.c + * ahci: add Acer G725 to broken suspend list + * pktgen: Fix freezing problem + * x86/amd-iommu: Fix IOMMU-API initialization for iommu=pt + * x86/amd-iommu: Fix deassignment of a device from the pt_domain + * x86: Re-get cfg_new in case reuse/move irq_desc + * Staging: fix rtl8187se compilation errors with mac80211 + * ALSA: usb-audio - Avoid Oops after disconnect + * serial: 8250: add serial transmitter fully empty test + * sysfs: sysfs_sd_setattr set iattrs unconditionally + * class: Free the class private data in class_release + * USB: usbfs: only copy the actual data received + * USB: usbfs: properly clean up the as structure on error paths + * rtl8187: Add new device ID + * ACPI: Add NULL pointer check in acpi_bus_start + * ACPI: fix High cpu temperature with 2.6.32 + * drm/radeon/kms: use udelay for short delays + * NFS: Too many GETATTR and ACCESS calls after direct I/O + * eCryptfs: Add getattr function + * b43: Fix throughput regression + * ath9k: Fix sequence numbers for PAE frames + * mac80211: Fix probe request filtering in IBSS mode + * iwlwifi: Fix to set correct ht configuration + * dm stripe: avoid divide by zero with invalid stripe count + * dm log: userspace fix overhead_size calcuations + * Linux 2.6.32.9 + * sfc: Fix SFE4002 initialisation + * sfc: Fix sign of efx_mcdi_poll_reboot() error in efx_mcdi_poll() + * sfc: SFE4002/SFN4112F: Widen temperature and voltage tolerances + * (pre-stable) HID: handle joysticks with large number of buttons + - LP: #492056 + * (pre-stable) HID: extend mask for BUTTON usage page + - LP: #492056 + * PM: Measure device suspend and resume times + * e1000: enhance frame fragment detection + - CVE-2009-4536 + * e1000e: enhance frame fragment detection + - CVE-2009-4538 + * KVM: fix memory access during x86 emulation. + - CVE-2010-0306 + * KVM: x86 emulator: Add Virtual-8086 mode of emulation + - CVE-2010-0306 + * KVM: x86 emulator: Check IOPL level during io instruction emulation + - CVE-2010-0306 + * KVM: x86 emulator: Fix popf emulation + - CVE-2010-0306 + * KVM: x86 emulator: Check CPL level during privilege instruction + emulation + - CVE-2010-0306 + * Input: wacom - ensure the device is initialized properly upon resume + * Input: wacom - add defines for packet lengths of various devices + * Input: wacom - add support for new LCD tablets + - LP: #516777 + + -- Andy Whitcroft Mon, 01 Mar 2010 22:56:28 +0000 + +linux (2.6.32-14.20) lucid; urgency=low + + [ Andy Whitcroft ] + + * rebuild following the GCC update to match compiler for out of tree modules + * Revert "[Config] drbd -- enable" + * Revert "ubuntu: drbd -- version 8.3.1" + * SAUCE: khubd -- switch USB product/manufacturer/serial handling to RCU + - LP: #510937 + + -- Andy Whitcroft Fri, 19 Feb 2010 18:47:18 +0000 + +linux (2.6.32-14.19) lucid; urgency=low + + [ Andy Whitcroft ] + + * ensure we build the source package contents when enabled + - LP: #522308 + * [Config] enable CONFIG_X86_MCE_XEON75XX + * SAUCE: AppArmor -- add linux/kref.h for struct kref + * [Config] enable CONFIG_HID_ORTEK + * enable udeb generation for arm versatile flavour + - LP: #522515 + + [ John Johansen ] + + * ubuntu: AppArmor -- update to mainline 2010-02-18 + - LP: #439560, #496110, #507069 + + [ Johnathon Harris ] + + * SAUCE: HID: add support for Ortek WKB-2000 + - LP: #405390 + + [ Upstream Kernel Changes ] + + * tpm_tis: TPM_STS_DATA_EXPECT workaround + - LP: #490487 + * x86, mce: Xeon75xx specific interface to get corrected memory error + information + * x86, mce: Rename cpu_specific_poll to mce_cpu_specific_poll + * x86, mce: Make xeon75xx memory driver dependent on PCI + * drm/edid: Unify detailed block parsing between base and extension + blocks + - LP: #500999 + * (pre-stable) eCryptfs: Add getattr function + - LP: #390833 + + -- Andy Whitcroft Thu, 18 Feb 2010 19:22:02 +0000 + +linux (2.6.32-13.18) lucid; urgency=low + + [ Andy Whitcroft ] + + * Revert "enforcer -- make the enforcement configuration common" + * Revert "(pre-stable) Input: ALPS - add interleaved protocol support + (Dell E6x00 series)" + * Revert "(pre-stable) driver-core: fix devtmpfs crash on s390" + * Revert "(pre-stable) Driver-Core: devtmpfs - set root directory mode to + 0755" + * Revert "SAUCE: Adds support for COMPAL JHL90 webcam" + * Revert "SAUCE: fix kernel oops in VirtualBox during paravirt patching" + * Revert "SAUCE: make fc transport removal of target configurable" + * enforcer -- make the enforcement configuration common + * getabis -- add preempt flavour to the list + * [Config] enforce DEVTMPFS options + * [Config] armel -- cleanup to-be builtin modules + * [Config] cleanup ports configs + * [Config] enable CRYPTO_GHASH_CLMUL_NI_INTEL + - LP: #485536 + * add printdebian target to find branch target + * distclean -- do not remove debian.env + * [Config] generic-pae switch to M586TSC + - LP: #519448 + * git-ubuntu-log -- commonise duplicated log handling + * git-ubuntu-log -- tighten up Bug: NNNN matching + * git-ubuntu-log -- sort the bug numbers + + [ Chris Wilson ] + + * (pre-stable) drm/i915: Increase fb alignment to 64k + - LP: #404064 + + [ Eric Miao ] + + * arm -- enable ubuntu/ directory + + [ Huang Ying ] + + * SAUCE: crypto: ghash - Add PCLMULQDQ accelerated implementation + * SAUCE: crypto: ghash-intel - Fix building failure on x86_32 + + [ Loïc Minier ] + + * [Config] cleanup preempt configuration + * [Config] versatile: Fix video output + - LP: #517594 + * [Config] armel DEFAULT_MMAP_MIN_ADDR=32768 + * [Config] Large update to armel/versatile + * [Config] versatile: Add RTC support + * [Config] armel: Enable NEON + * [Config] versatile: Builtin MMC support + * [Config] versatile Builtin SCSI controller + * [Config] armel Disable dma_cache_sync callers + * [Config] armel Disable asm/time.h users + * [Config] armel Disable out of range udelay() + * [Config] armel Disable flush_cache_range() users + * [Config] armel -- Enable ubuntu/ drivers + + [ Steve Conklin ] + + * SAUCE: drm/i915: Add display hotplug event on Ironlake + * SAUCE: drm/i915: Add ACPI OpRegion support for Ironlake + + [ Upstream Kernel Changes ] + + * Revert "[Upstream]: oprofile/x86: add Xeon 7500 series support" + * Revert "Revert "[Bluetooth] Eliminate checks for impossible conditions + in IRQ handler"" + * clockevent: Don't remove broadcast device when cpu is dead + * clockevents: Add missing include to pacify sparse + * ACPI: don't cond_resched if irq is disabled + * be2net: Add support for next generation of BladeEngine device. + * be2net: Add the new PCI IDs to PCI_DEVICE_TABLE. + * mpt2sas: New device SAS2208 support is added + * ar9170: Add support for D-Link DWA 160 A2 + * powerpc/fsl: Add PCI device ids for new QoirQ chips + * davinci: dm646x: Add support for 3.x silicon revision + * Input: ALPS - add interleaved protocol support (Dell E6x00 series) + * Driver-Core: devtmpfs - set root directory mode to 0755 + * driver-core: fix devtmpfs crash on s390 + * vfs: get_sb_single() - do not pass options twice + * ALSA: hda - Add PCI IDs for Nvidia G2xx-series + * V4L/DVB (13569): smsusb: add autodetection support for five additional + Hauppauge USB IDs + * USB: mos7840: add device IDs for B&B electronics devices + * USB: ftdi_sio: add USB device ID's for B&B Electronics line + * V4L/DVB (13168): Add support for Asus Europa Hybrid DVB-T card (SAA7134 + SubVendor ID: 0x1043 Device ID: 0x4847) + * iTCO_wdt: Add support for Intel Ibex Peak + * atl1c:use common_task instead of reset_task and link_chg_task + * atl1e:disable NETIF_F_TSO6 for hardware limit + * V4L/DVB (13680a): DocBook/media: copy images after building HTML + * V4L/DVB (13680b): DocBook/media: create links for included sources + * netfilter: xtables: fix conntrack match v1 ipt-save output + * partitions: read whole sector with EFI GPT header + * partitions: use sector size for EFI GPT + * ALSA: ice1724 - Patch for suspend/resume for ESI Juli@ + * sched: Fix isolcpus boot option + * sched: Fix missing sched tunable recalculation on cpu add/remove + * nohz: Prevent clocksource wrapping during idle + * nfsd: Fix sort_pacl in fs/nfsd/nf4acl.c to actually sort groups + * timers, init: Limit the number of per cpu calibration bootup messages + * PCI: Always set prefetchable base/limit upper32 registers + * iscsi class: modify handling of replacement timeout + * NFS: Revert default r/wsize behavior + * HID: fixup quirk for NCR devices + * scsi_devinfo: update Hitachi entries (v2) + * scsi_dh: create sysfs file, dh_state for all SCSI disk devices + * scsi_transport_fc: remove invalid BUG_ON + * lpfc: fix hang on SGI ia64 platform + * libfc: fix typo in retry check on received PRLI + * libfc: fix ddp in fc_fcp for 0 xid + * fcoe: remove redundant checking of netdev->netdev_ops + * libfc: Fix wrong scsi return status under FC_DATA_UNDRUN + * libfc: lport: fix minor documentation errors + * libfc: don't WARN_ON in lport_timeout for RESET state + * fcoe: initialize return value in fcoe_destroy + * libfc: Fix frags in frame exceeding SKB_MAX_FRAGS in fc_fcp_send_data + * libfc: fix memory corruption caused by double frees and bad error + handling + * libfc: fix free of fc_rport_priv with timer pending + * libfc: remote port gets stuck in restart state without really + restarting + * fcoe, libfc: fix an libfc issue with queue ramp down in libfc + * fcoe: Fix checking san mac address + * fcoe: Fix getting san mac for VLAN interface + * qlge: Remove explicit setting of PCI Dev CTL reg. + * qlge: Set PCIE max read request size. + * qlge: Don't fail open when port is not initialized. + * qlge: Add handler for DCBX firmware event. + * qlge: Bonding fix for mode 6. + * PCI: AER: fix aer inject result in kernel oops + * DMI: allow omitting ident strings in DMI tables + * Input: i8042 - remove identification strings from DMI tables + * Input: i8042 - add Gigabyte M1022M to the noloop list + * Input: i8042 - add Dritek quirk for Acer Aspire 5610. + * ALSA: hda - select IbexPeak handler for Calpella + * ALSA: hda - Fix quirk for Maxdata obook4-1 + * ALSA: hda - Add missing Line-Out and PCM switches as slave + * iTCO_wdt.c - cleanup chipset documentation + * iTCO_wdt: add PCI ID for the Intel EP80579 (Tolapai) SoC + * iTCO_wdt: Add Intel Cougar Point and PCH DeviceIDs + * ahci: disable SNotification capability for ich8 + * ata_piix: fix MWDMA handling on PIIX3 + * md: fix small irregularity with start_ro module parameter + * V4L/DVB (13826): uvcvideo: Fix controls blacklisting + * cio: fix double free in case of probe failure + * cio: dont panic in non-fatal conditions + * netiucv: displayed TX bytes value much too high + * ipc ns: fix memory leak (idr) + * ALSA: hda - Fix HP T5735 automute + * hwmon: (fschmd) Fix a memleak on multiple opens of /dev/watchdog + * UBI: fix memory leak in update path + * UBI: initialise update marker + * ASoC: fix a memory-leak in wm8903 + * mac80211: check that ieee80211_set_power_mgmt only handles STA + interfaces. + * cfg80211: fix channel setting for wext + * KVM: S390: fix potential array overrun in intercept handling + * KVM: only allow one gsi per fd + * KVM: Fix race between APIC TMR and IRR + * KVM: MMU: bail out pagewalk on kvm_read_guest error + * KVM: x86: Fix host_mapping_level() + * KVM: x86: Fix probable memory leak of vcpu->arch.mce_banks + * KVM: x86: Fix leak of free lapic date in kvm_arch_vcpu_init() + * KVM: fix lock imbalance in kvm_*_irq_source_id() + * KVM: only clear irq_source_id if irqchip is present + * IPoIB: Clear ipoib_neigh.dgid in ipoib_neigh_alloc() + * x86: Reenable TSC sync check at boot, even with NONSTOP_TSC + * ACPI: enable C2 and Turbo-mode on Nehalem notebooks on A/C + - LP: #516325 + * iwlwifi: Fix throughput stall issue in HT mode for 5000 + * fnctl: f_modown should call write_lock_irqsave/restore + * x86, msr/cpuid: Pass the number of minors when unregistering MSR and + CPUID drivers. + * Linux 2.6.32.7 + * scsi_lib: Fix bug in completion of bidi commands + * mptsas: Fix issue with chain pools allocation on katmai + * mm: add new 'read_cache_page_gfp()' helper function + * drm/i915: Selectively enable self-reclaim + * firewire: ohci: fix crashes with TSB43AB23 on 64bit systems + * S390: fix single stepped svcs with TRACE_IRQFLAGS=y + * x86: Set hotpluggable nodes in nodes_possible_map + * x86: Remove "x86 CPU features in debugfs" (CONFIG_X86_CPU_DEBUG) + * libata: retry FS IOs even if it has failed with AC_ERR_INVALID + * zcrypt: Do not remove coprocessor for error 8/72 + * dasd: fix possible NULL pointer errors + * ACPI: Add a generic API for _OSC -v2 + * ACPI: Add platform-wide _OSC support. + * ACPI: fix OSC regression that caused aer and pciehp not to load + * ACPI: Advertise to BIOS in _OSC: _OST on _PPC changes + * UBI: fix volume creation input checking + * e1000/e1000e: don't use small hardware rx buffers + * drm/i915: Reload hangcheck timer too for Ironlake + * Fix a leak in affs_fill_super() + * Fix failure exits in bfs_fill_super() + * fix oops in fs/9p late mount failure + * fix leak in romfs_fill_super() + * Fix remount races with symlink handling in affs + * fix affs parse_options() + * Fix failure exit in ipathfs + * mm: fix migratetype bug which slowed swapping + * FDPIC: Respect PT_GNU_STACK exec protection markings when creating + NOMMU stack + * Split 'flush_old_exec' into two functions + * sparc: TIF_ABI_PENDING bit removal + * x86: get rid of the insane TIF_ABI_PENDING bit + * Input: winbond-cir - remove dmesg spam + * x86: Disable HPET MSI on ATI SB700/SB800 + * iwlwifi: set default aggregation frame count limit to 31 + * drm/i915: only enable hotplug for detected outputs + * firewire: core: add_descriptor size check + * SECURITY: selinux, fix update_rlimit_cpu parameter + * regulator: Specify REGULATOR_CHANGE_STATUS for WM835x LED constraints + * x86: Add Dell OptiPlex 760 reboot quirk + - LP: #488319 + * x86: Add quirk for Intel DG45FC board to avoid low memory corruption + * x86/amd-iommu: Fix possible integer overflow + * clocksource: fix compilation if no GENERIC_TIME + * tcp: update the netstamp_needed counter when cloning sockets + * sky2: Fix oops in sky2_xmit_frame() after TX timeout + * net: restore ip source validation + * af_packet: Don't use skb after dev_queue_xmit() + * ax25: netrom: rose: Fix timer oopses + * KVM: allow userspace to adjust kvmclock offset + * oprofile/x86: add Xeon 7500 series support + * oprofile/x86: fix crash when profiling more than 28 events + * libata: retry link resume if necessary + * mm: percpu-vmap fix RCU list walking + * mm: purge fragmented percpu vmap blocks + * block: fix bio_add_page for non trivial merge_bvec_fn case + * Fix 'flush_old_exec()/setup_new_exec()' split + * random: drop weird m_time/a_time manipulation + * random: Remove unused inode variable + * block: fix bugs in bio-integrity mempool usage + * usb: r8a66597-hdc disable interrupts fix + * connector: Delete buggy notification code. + * be2net: Bug fix to support newer generation of BE ASIC + * be2net: Fix memset() arg ordering. + * mm: flush dcache before writing into page to avoid alias + * mac80211: fix NULL pointer dereference when ftrace is enabled + * imxfb: correct location of callbacks in suspend and resume + * mx3fb: some debug and initialisation fixes + * starfire: clean up properly if firmware loading fails + * kernel/cred.c: use kmem_cache_free + * uartlite: fix crash when using as console + * pktcdvd: removing device does not remove its sysfs dir + * ath9k: fix eeprom INI values override for 2GHz-only cards + * ath9k: fix beacon slot/buffer leak + * powerpc: TIF_ABI_PENDING bit removal + * NET: fix oops at bootime in sysctl code + * Linux 2.6.32.8 + + -- Andy Whitcroft Wed, 10 Feb 2010 18:56:52 +0000 + +linux (2.6.32-12.17) lucid; urgency=low + + [ Andy Whitcroft ] + + * restore linux-image prefix -- master + * enforce -- we require SELINUX enabled -- master + * enforce -- ensure APPARMOR is our default LSM -- master + * make doc package completely optional -- master + * make source package completely optional -- master + * make linux-libc-dev completly optional -- master + * convert package disable to a deps list -- master + * allow common headers to switch from indep to arch -- master + * convert binary package disable to a deps list -- master + * add configuration option for a full source build tree -- master + * add support for uImage kernels in package control scripts + * getabis -- cleanup and parameterise repository list -- master + * getabis -- move configuration to etc/getabi -- master + * kernelconfig -- move configuration to etc -- master + * rules -- make debian/debian.env master for branch name + * set the current branch name -- master + * pull back common debian.master files into debian -- master + * enforcer -- make the enforcement configuration common + * insert-changes -- correctly link to debian/rules in DROOT + + [ Colin Watson ] + + * future-proof ddeb handling against buildd changes + + [ Eric Miao ] + + * SAUCE: Make CONFIG_{OMNIBOOK, AVERATEC_5100P, PACKARDBELL_E5} depend on + X86 + + [ Loïc Minier ] + + * Add modules.builtin.bin to prerm rm list + - LP: #516584 + + [ Tim Gardner ] + + * [Config] Implement the amd64 preempt flavour + + [ Upstream Kernel Changes ] + + * syslog: distinguish between /proc/kmsg and syscalls + - LP: #515623 + * sfc: Fix polling for slow MCDI operations + * sfc: Fix conditions for MDIO self-test + * sfc: QT202x: Remove unreliable MMD check at initialisation + * sfc: Add workspace for GMAC bug workaround to MCDI MAC_STATS buffer + * sfc: Use fixed-size buffers for MCDI NVRAM requests + + -- Andy Whitcroft Fri, 05 Feb 2010 07:09:31 +0000 + +linux (2.6.32-12.16) lucid; urgency=low + + [ Andy Whitcroft ] + + * Revert "SAUCE: acpi battery -- delay first lookup of the battery until + first use" + * SAUCE: acpi battery -- move first lookup asynchronous + - LP: #507211 + * [Config] update configs to cleanup generic configs + * [Config] disable CONFIG_X86_CPU_DEBUG for amd64 + * [Config] enable USER_NS + - LP: #480739, #509808 + + [ Heiko Carstens ] + + * (pre-stable) driver-core: fix devtmpfs crash on s390 + - LP: #512370 + + [ John Johansen ] + + * [Config] for server and virtual flavours make CONFIG_SCSI_SYM53C8XX_2=y + - LP: #494565 + * [Config] VIRTIO=y for server/virtual flavours + - LP: #494565 + + [ Kay Sievers ] + + * (pre-stable) Driver-Core: devtmpfs - set root directory mode to 0755 + - LP: #512370 + + [ Kees Cook ] + + * SAUCE: x86: brk away from exec rand area + - LP: #452175 + + [ Leann Ogasawara ] + + * [Upstream] e1000: enhance frame fragment detection + - CVE-2009-4536 + * [Upstream] e1000e: enhance frame fragment detection + - CVE-2009-4538 + + [ Sebastian Kapfer ] + + * (pre-stable) Input: ALPS - add interleaved protocol support (Dell E6x00 + series) + - LP: #296610 + + [ Upstream Kernel Changes ] + + * inotify: do not reuse watch descriptors + - LP: #485556 + * inotify: only warn once for inotify problems + * revert "drivers/video/s3c-fb.c: fix clock setting for Samsung SoC + Framebuffer" + * memcg: ensure list is empty at rmdir + * drm/i915: remove loop in Ironlake interrupt handler + * block: Fix incorrect reporting of partition alignment + * x86, mce: Thermal monitoring depends on APIC being enabled + * futexes: Remove rw parameter from get_futex_key() + * page allocator: update NR_FREE_PAGES only when necessary + * x86, apic: use physical mode for IBM summit platforms + * edac: i5000_edac critical fix panic out of bounds + * x86: SGI UV: Fix mapping of MMIO registers + * mfd: WM835x GPIO direction register is not locked + * mfd: Correct WM835x ISINK ramp time defines + * ALSA: hda - Fix missing capture mixer for ALC861/660 codecs + * V4L/DVB (13868): gspca - sn9c20x: Fix test of unsigned. + * reiserfs: truncate blocks not used by a write + * HID: add device IDs for new model of Apple Wireless Keyboard + * PCI/cardbus: Add a fixup hook and fix powerpc + * Input: pmouse - move Sentelic probe down the list + * asus-laptop: add Lenovo SL hotkey support + * sched: Fix cpu_clock() in NMIs, on !CONFIG_HAVE_UNSTABLE_SCHED_CLOCK + * sparc64: Fix NMI programming when perf events are active. + * sparc64: Fix Niagara2 perf event handling. + * i2c: Do not use device name after device_unregister + * i2c/pca: Don't use *_interruptible + * serial/8250_pnp: add a new Fujitsu Wacom Tablet PC device + * sched: Fix task priority bug + * vfs: Fix vmtruncate() regression + * Linux 2.6.32.5 + * x86, msr/cpuid: Register enough minors for the MSR and CPUID drivers + * V4L/DVB (13900): gspca - sunplus: Fix bridge exchanges. + * Staging: asus_oled: fix oops in 2.6.32.2 + * Staging: hv: fix smp problems in the hyperv core code + * tty: fix race in tty_fasync + * ecryptfs: use after free + * ecryptfs: initialize private persistent file before dereferencing + pointer + * nozomi: quick fix for the close/close bug + * serial: 8250_pnp: use wildcard for serial Wacom tablets + * usb: serial: fix memory leak in generic driver + * USB: fix bitmask merge error + * USB: Don't use GFP_KERNEL while we cannot reset a storage device + * USB: EHCI: fix handling of unusual interrupt intervals + * USB: EHCI & UHCI: fix race between root-hub suspend and port resume + * USB: add missing delay during remote wakeup + * USB: add speed values for USB 3.0 and wireless controllers + * ACPI: EC: Accelerate query execution + * ACPI: EC: Add wait for irq storm + * SCSI: enclosure: fix oops while iterating enclosure_status array + * drm/i915: Read the response after issuing DDC bus switch command + * drm/i915: try another possible DDC bus for the SDVO device with + multiple outputs + * block: bdev_stack_limits wrapper + * DM: Fix device mapper topology stacking + * x86/PCI/PAT: return EINVAL for pci mmap WC request for !pat_enabled + * USB: fix usbstorage for 2770:915d delivers no FAT + * vmalloc: remove BUG_ON due to racy counting of VM_LAZY_FREE + * perf timechart: Use tid not pid for COMM change + * perf events: Dont report side-band events on each cpu for + per-task-per-cpu events + * perf: Honour event state for aux stream data + * Linux 2.6.32.6 + + -- Andy Whitcroft Wed, 27 Jan 2010 16:40:23 +0000 + +linux (2.6.32-11.15) lucid; urgency=low + + [ Andy Whitcroft ] + + * Revert "(pre-stable) drm/radeon/kms: fix crtc vblank update for r600" + * Revert "(pre-stable) sched: Fix balance vs hotplug race" + * Revert "[Upstream] acerhdf: Limit modalias matching to supported + boards" + * Revert "[Upstream] mmc: prevent dangling block device from accessing + stale queues" + * Revert "SAUCE: Fix nx_enable reporting" + * Revert "SAUCE: [x86] fix report of cs-limit nx-emulation" + * Revert "SAUCE: [x86] implement cs-limit nx-emulation for ia32" + * SAUCE: i915 -- disable powersave by default + - LP: #492392 + + [ Kees Cook ] + + * SAUCE: [x86] implement cs-limit nx-emulation for ia32 + - LP: #369978 + * SAUCE: [x86] fix report of cs-limit nx-emulation + - LP: #454285 + * SAUCE: Fix nx_enable reporting + - LP: #454285 + + [ Tim Gardner ] + + * [Upstream] b43: Declare all possible firmware files. + - LP: #488636 + * [Config] updateconfigs after adding pvscsi + - LP: #497156 + * [Config] CONFIG_BT=m + + [ Upstream Kernel Changes ] + + * Revert "x86: Side-step lguest problem by only building cmpxchg8b_emu + for pre-Pentium" + * SCSI: ipr: fix EEH recovery + * SCSI: qla2xxx: dpc thread can execute before scsi host has been added + * SCSI: st: fix mdata->page_order handling + * SCSI: fc class: fix fc_transport_init error handling + * sched: Fix task_hot() test order + * x86, cpuid: Add "volatile" to asm in native_cpuid() + * sched: Select_task_rq_fair() must honour SD_LOAD_BALANCE + * clockevents: Prevent clockevent_devices list corruption on cpu hotplug + * pata_hpt3x2n: fix clock turnaround + * pata_cmd64x: fix overclocking of UDMA0-2 modes + * ASoC: wm8974: fix a wrong bit definition + * sound: sgio2audio/pdaudiocf/usb-audio: initialize PCM buffer + * ALSA: hda - Fix missing capsrc_nids for ALC88x + * acerhdf: limit modalias matching to supported + - LP: #435958 + * ACPI: EC: Fix MSI DMI detection + * ACPI: Use the return result of ACPI lid notifier chain correctly + * powerpc: Handle VSX alignment faults correctly in little-endian mode + * ASoC: Do not write to invalid registers on the wm9712. + * drm/radeon: fix build on 64-bit with some compilers. + * USB: emi62: fix crash when trying to load EMI 6|2 firmware + * USB: option: support hi speed for modem Haier CE100 + * USB: Fix a bug on appledisplay.c regarding signedness + * USB: musb: gadget_ep0: avoid SetupEnd interrupt + * Bluetooth: Prevent ill-timed autosuspend in USB driver + * USB: rename usb_configure_device + * USB: fix bugs in usb_(de)authorize_device + * drivers/net/usb: Correct code taking the size of a pointer + * x86: SGI UV: Fix writes to led registers on remote uv hubs + * md: Fix unfortunate interaction with evms + * dma: at_hdmac: correct incompatible type for argument 1 of + 'spin_lock_bh' + * dma-debug: Do not add notifier when dma debugging is disabled. + * dma-debug: Fix bug causing build warning + * cifs: NULL out tcon, pSesInfo, and srvTcp pointers when chasing DFS + referrals + * x86/amd-iommu: Fix initialization failure panic + * ioat3: fix p-disabled q-continuation + * ioat2,3: put channel hardware in known state at init + * KVM: MMU: remove prefault from invlpg handler + * KVM: LAPIC: make sure IRR bitmap is scanned after vm load + * Libertas: fix buffer overflow in lbs_get_essid() + * iwmc3200wifi: fix array out-of-boundary access + * mac80211: fix propagation of failed hardware reconfigurations + * mac80211: fix WMM AP settings application + * mac80211: Fix IBSS merge + * cfg80211: fix race between deauth and assoc response + * ath5k: fix SWI calibration interrupt storm + * ath9k: wake hardware for interface IBSS/AP/Mesh removal + * ath9k: Fix TX queue draining + * ath9k: fix missed error codes in the tx status check + * ath9k: wake hardware during AMPDU TX actions + * ath9k: fix suspend by waking device prior to stop + * ath9k_hw: Fix possible OOB array indexing in gen_timer_index[] on + 64-bit + * ath9k_hw: Fix AR_GPIO_INPUT_EN_VAL_BT_PRIORITY_BB and its shift value + in 0x4054 + * iwl3945: disable power save + * iwl3945: fix panic in iwl3945 driver + * iwlwifi: fix EEPROM/OTP reading endian annotations and a bug + * iwlwifi: fix more eeprom endian bugs + * iwlwifi: fix 40MHz operation setting on cards that do not allow it + * mac80211: fix race with suspend and dynamic_ps_disable_work + * NOMMU: Optimise away the {dac_,}mmap_min_addr tests + * 'sysctl_max_map_count' should be non-negative + * kernel/sysctl.c: fix the incomplete part of + sysctl_max_map_count-should-be-non-negative.patch + * V4L/DVB (13596): ov511.c typo: lock => unlock + * x86/ptrace: make genregs[32]_get/set more robust + * memcg: avoid oom-killing innocent task in case of use_hierarchy + * e100: Fix broken cbs accounting due to missing memset. + * ipv6: reassembly: use seperate reassembly queues for conntrack and + local delivery + * netfilter: fix crashes in bridge netfilter caused by fragment jumps + * hwmon: (sht15) Off-by-one error in array index + incorrect constants + * b43: avoid PPC fault during resume + * Keys: KEYCTL_SESSION_TO_PARENT needs TIF_NOTIFY_RESUME architecture + support + * sched: Fix balance vs hotplug race + * drm/radeon/kms: fix crtc vblank update for r600 + * drm: disable all the possible outputs/crtcs before entering KMS mode + * S390: dasd: support DIAG access for read-only devices + * xen: fix is_disconnected_device/exists_disconnected_device + * xen: improvement to wait_for_devices() + * xen: wait up to 5 minutes for device connetion + * orinoco: fix GFP_KERNEL in orinoco_set_key with interrupts disabled + * udf: Try harder when looking for VAT inode + * Add unlocked version of inode_add_bytes() function + * quota: decouple fs reserved space from quota reservation + * ext4: Convert to generic reserved quota's space management. + * ext4: fix sleep inside spinlock issue with quota and dealloc (#14739) + * x86, msr: Unify rdmsr_on_cpus/wrmsr_on_cpus + * cpumask: use modern cpumask style in drivers/edac/amd64_edac.c + * amd64_edac: unify MCGCTL ECC switching + * x86, msr: Add support for non-contiguous cpumasks + * x86, msr: msrs_alloc/free for CONFIG_SMP=n + * amd64_edac: fix driver instance freeing + * amd64_edac: make driver loading more robust + * amd64_edac: fix forcing module load/unload + * sched: Sched_rt_periodic_timer vs cpu hotplug + * ext4: Update documentation to correct the inode_readahead_blks option + name + * lguest: fix bug in setting guest GDT entry + * vmscan: do not evict inactive pages when skipping an active list scan + * ksm: fix mlockfreed to munlocked + * rt2x00: Disable powersaving for rt61pci and rt2800pci. + * generic_permission: MAY_OPEN is not write access + * Linux 2.6.32.3 + * untangle the do_mremap() mess + * fasync: split 'fasync_helper()' into separate add/remove functions + * ASoC: fix params_rate() macro use in several codecs + * modules: Skip empty sections when exporting section notes + * exofs: simple_write_end does not mark_inode_dirty + * nfsd: make sure data is on disk before calling ->fsync + * sunrpc: fix peername failed on closed listener + * SUNRPC: Fix up an error return value in + gss_import_sec_context_kerberos() + * SUNRPC: Fix the return value in gss_import_sec_context() + * sunrpc: on successful gss error pipe write, don't return error + * drm/i915: Update LVDS connector status when receiving ACPI LID event + * drm/i915: fix order of fence release wrt flushing + * drm/i915: Permit pinning whilst the device is 'suspended' + * drm: remove address mask param for drm_pci_alloc() + * drm/i915: Enable/disable the dithering for LVDS based on VBT setting + * drm/i915: Make the BPC in FDI rx/transcoder be consistent with that in + pipeconf on Ironlake + * drm/i915: Select the correct BPC for LVDS on Ironlake + * drm/i915: fix unused var + * rtc_cmos: convert shutdown to new pnp_driver->shutdown + * drivers/cpuidle/governors/menu.c: fix undefined reference to + `__udivdi3' + * cgroups: fix 2.6.32 regression causing BUG_ON() in cgroup_diput() + * lib/rational.c needs module.h + * dma-debug: allow DMA_BIDIRECTIONAL mappings to be synced with + DMA_FROM_DEVICE and + * kernel/signal.c: fix kernel information leak with print-fatal-signals=1 + * mmc_block: add dev_t initialization check + * mmc_block: fix probe error cleanup bug + * mmc_block: fix queue cleanup + * ALSA: hda - Fix ALC861-VD capture source mixer + * ALSA: ac97: Add Dell Dimension 2400 to Headphone/Line Jack Sense + blacklist + * ALSA: atiixp: Specify codec for Foxconn RC4107MA-RS2 + - LP: #498863 + * ASoC: Fix WM8350 DSP mode B configuration + * netfilter: ebtables: enforce CAP_NET_ADMIN + * netfilter: nf_ct_ftp: fix out of bounds read in update_nl_seq() + * hwmon: (coretemp) Fix TjMax for Atom N450/D410/D510 CPUs + * hwmon: (adt7462) Fix pin 28 monitoring + * quota: Fix dquot_transfer for filesystems different from ext4 + * xen: fix hang on suspend. + * iwlwifi: fix iwl_queue_used bug when read_ptr == write_ptr + * ath5k: Fix eeprom checksum check for custom sized eeproms + * cfg80211: fix syntax error on user regulatory hints + * iwl: off by one bug + * mac80211: add missing sanity checks for action frames + * drm/i915: remove render reclock support + * libertas: Remove carrier signaling from the scan code + * kernel/sysctl.c: fix stable merge error in NOMMU mmap_min_addr + * mac80211: fix skb buffering issue (and fixes to that) + * fix braindamage in audit_tree.c untag_chunk() + * fix more leaks in audit_tree.c tag_chunk() + * module: handle ppc64 relocating kcrctabs when CONFIG_RELOCATABLE=y + * ipv6: skb_dst() can be NULL in ipv6_hop_jumbo(). + * agp/intel-agp: Clear entire GTT on startup + * Linux 2.6.32.4 + * ethtool: Add reset operation + * gro: Name the GRO result enumeration type + * gro: Change all receive functions to return GRO result codes + * sfc: 10Xpress: Initialise pause advertising flags + * sfc: 10Xpress: Report support for pause frames + * sfc: Remove redundant header gmii.h + * sfc: Remove redundant hardware initialisation + * sfc: Rename Falcon-specific board code and types + * sfc: Remove boards.h, moving last remaining declaration to falcon.h + * sfc: Remove versioned bitfield macros + * sfc: Move RX data FIFO thresholds out of struct efx_nic_type + * sfc: Update hardware definitions for Siena + * sfc: Rename register I/O header and functions used by both Falcon and + Siena + * sfc: Eliminate indirect lookups of queue size constants + * sfc: Define DMA address mask explicitly in terms of descriptor field + width + * sfc: Move all TX DMA length limiting into tx.c + * sfc: Change order of device removal to reverse of probe order + * sfc: Remove declarations of nonexistent functions + * sfc: Move efx_xmit_done() declaration into correct stanza + * sfc: Move shared members of struct falcon_nic_data into struct efx_nic + * sfc: Maintain interrupt moderation values in ticks, not microseconds + * sfc: Removed kernel-doc for nonexistent member of efx_phy_operations + * sfc: Remove pointless abstraction of memory BAR number + * sfc: Remove incorrect assertion from efx_pci_remove_main() + * sfc: Remove unnecessary tests of efx->membase + * sfc: Move MTD probe after netdev registration and name allocation + * sfc: Remove unused code for non-autoneg speed/duplex switching + * sfc: Rename 'xfp' file and functions to reflect reality + * sfc: Really allow RX checksum offload to be disabled + * sfc: Feed GRO result into RX allocation policy and interrupt moderation + * sfc: Enable heuristic selection between page and skb RX buffers + * sfc: Remove pointless abstraction of memory BAR number (2) + * sfc: Remove redundant gotos from __efx_rx_packet() + * sfc: Remove ridiculously paranoid assertions + * sfc: Move assertions and buffer cleanup earlier in efx_rx_packet_lro() + * sfc: Record RX queue number on GRO path + * sfc: SFT9001: Reset LED configuration correctly after blinking + * sfc: Use a single blink implementation + * sfc: Rename efx_board::init_leds to init_phy and use for SFN4111T + * sfc: Make board information explicitly Falcon-specific + * sfc: Move definition of struct falcon_nic_data into falcon.h + * sfc: Move struct falcon_board into struct falcon_nic_data + * sfc: Move all I2C stuff into struct falcon_board + * sfc: Gather link state fields in struct efx_nic into new struct + efx_link_state + * sfc: Remove unnecessary casts to struct sk_buff * + * sfc: Remove redundant efx_xmit() function + * sfc: Combine high-level header files + * sfc: Log interrupt and reset type names, not numbers + * sfc: Fix descriptor cache sizes + * sfc: Treat all MAC registers as 128-bit + * sfc: Strengthen EFX_ASSERT_RESET_SERIALISED + * sfc: Comment corrections + * sfc: Remove unused constant + * sfc: Clean up struct falcon_board and struct falcon_board_data + * sfc: Fix bugs in RX queue flushing + * sfc: Remove unused function efx_flush_queues() + * sfc: Only switch Falcon MAC clocks as necessary + * sfc: Hold MAC lock for longer in efx_init_port() + * sfc: Split MAC stats DMA initiation and completion + * sfc: Move Falcon board/PHY/MAC monitoring code to falcon.c + * sfc: Simplify XMAC link polling + * sfc: Change MAC promiscuity and multicast hash at the same time + * sfc: Move inline comment into kernel-doc + * sfc: Do not set net_device::trans_start in self-test + * sfc: Simplify PHY polling + * sfc: QT202x: Reset before reading PHY id + * sfc: Replace MDIO spinlock with mutex + * sfc: Always start Falcon using the XMAC + * sfc: Limit some hardware workarounds to Falcon + * sfc: Remove EFX_WORKAROUND_9141 macro + * sfc: Remove another unused workaround macro + * sfc: Remove some redundant whitespace + * sfc: Decouple NIC revision number from Falcon PCI revision number + * sfc: Move descriptor cache base addresses to struct efx_nic_type + * sfc: Clean up RX event handling + * sfc: Remove redundant writes to INT_ADR_KER + * sfc: Remove duplicate hardware structure definitions + * sfc: Turn pause frame generation on and off at the MAC, not the RX FIFO + * sfc: Move Falcon NIC operations to efx_nic_type + * sfc: Refactor link configuration + * sfc: Generalise link state monitoring + * sfc: Add power-management and wake-on-LAN support + * sfc: Implement ethtool reset operation + * sfc: Add efx_nic_type operation for register self-test + * sfc: Add efx_nic_type operation for NVRAM self-test + * sfc: Add efx_nic_type operation for identity LED control + * sfc: Separate shared NIC code from Falcon-specific and rename + accordingly + * sfc: Fold falcon_probe_nic_variant() into falcon_probe_nic() + * sfc: Extend loopback mode enumeration + * sfc: Remove static PHY data and enumerations + * sfc: Extend MTD driver for use with new NICs + * sfc: Allow for additional checksum offload features + * sfc: Rename falcon.h to nic.h + * sfc: Move shared NIC code from falcon.c to new source file nic.c + * sfc: Add firmware protocol definitions (MCDI) + * sfc: Add support for SFC9000 family (1) + * sfc: Add support for SFC9000 family (2) + * sfc: Implement TSO for TCP/IPv6 + * sfc: Update version, copyright dates, authors + * drivers/net/sfc: Correct code taking the size of a pointer + * sfc: Move PHY software state initialisation from init() into probe() + * sfc: Include XGXS in XMAC link status check except in XGMII loopback + * sfc: Fix DMA mapping cleanup in case of an error in TSO + * sfc: QT2025C: Work around PHY bug + * sfc: QT2025C: Switch into self-configure mode when not in loopback + * sfc: QT2025C: Work around PHY firmware initialisation bug + * sfc: QT2025C: Add error message for suspected bad SFP+ cables + * sfc: Disable TX descriptor prefetch watchdog + * [SCSI] vmw_pvscsi: SCSI driver for VMware's virtual HBA. + - LP: #497156 + + -- Andy Whitcroft Tue, 19 Jan 2010 16:12:47 +0000 + +linux (2.6.32-10.14) lucid; urgency=low + + [ Alex Deucher ] + + * SAUCE: drm/radeon/kms: fix LVDS setup on r4xx + - LP: #493795 + + [ Andy Whitcroft ] + + * Revert "(pre-stable) acpi: Use the ARB_DISABLE for the CPU which model + id is less than 0x0f." + * config-check -- ensure the checks get run at build time + * config-check -- check the processed config during updateconfigs + * config-check -- CONFIG_SECCOMP may not be present + * TUN is now built in ignore + * SAUCE: acpi battery -- delay first lookup of the battery until first + use + * SAUCE: async_populate_rootfs: move rootfs init earlier + * ubuntu: AppArmor -- update to mainline 2010-01-06 + * SAUCE: move RLIMIT_CORE pipe dumper marker to 1 + - LP: #498525 + + [ Dave Airlie ] + + * (pre-stable) drm/radeon/kms: fix crtc vblank update for r600 + + [ Leann Ogasawara ] + + * Add asix to nic-usb-modules file + - LP: #499785 + + [ Peter Zijlstra ] + + * (pre-stable) sched: Fix balance vs hotplug race + + [ Tim Gardner ] + + * [Config] Enable CONFIG_FUNCTION_TRACER + - LP: #497989 + * [Config] Drop lpia from getabis + * [Config] Build in TUN/TAP driver + - LP: #499491 + * [Config] DH_COMPAT=5 + + [ Upstream Kernel Changes ] + + * Revert "(pre-stable) drm/i915: Avoid NULL dereference with + component_only tv_modes" + * Revert "(pre-stable) drm/i915: Fix sync to vblank when VGA output is + turned off" + * USB: usb-storage: fix bug in fill_inquiry + * USB: option: add pid for ZTE + * firewire: ohci: handle receive packets with a data length of zero + * rcu: Prepare for synchronization fixes: clean up for non-NO_HZ handling + of ->completed counter + * rcu: Fix synchronization for rcu_process_gp_end() uses of ->completed + counter + * rcu: Fix note_new_gpnum() uses of ->gpnum + * rcu: Remove inline from forward-referenced functions + * perf_event: Fix invalid type in ioctl definition + * perf_event: Initialize data.period in perf_swevent_hrtimer() + * perf: Don't free perf_mmap_data until work has been done + * PM / Runtime: Fix lockdep warning in __pm_runtime_set_status() + * sched: Check for an idle shared cache in select_task_rq_fair() + * sched: Fix affinity logic in select_task_rq_fair() + * sched: Rate-limit newidle + * sched: Fix and clean up rate-limit newidle code + * x86/amd-iommu: attach devices to pre-allocated domains early + * x86/amd-iommu: un__init iommu_setup_msi + * x86, Calgary IOMMU quirk: Find nearest matching Calgary while walking + up the PCI tree + * x86: Fix iommu=nodac parameter handling + * x86: GART: pci-gart_64.c: Use correct length in strncmp + * x86: ASUS P4S800 reboot=bios quirk + - LP: #366682 + * x86, apic: Enable lapic nmi watchdog on AMD Family 11h + * ssb: Fix range check in sprom write + * ath5k: allow setting txpower to 0 + * ath5k: enable EEPROM checksum check + * hrtimer: Fix /proc/timer_list regression + * ALSA: hrtimer - Fix lock-up + * ALSA: hda - Terradici HDA controllers does not support 64-bit mode + * KVM: x86 emulator: limit instructions to 15 bytes + * KVM: s390: Fix prefix register checking in arch/s390/kvm/sigp.c + * KVM: s390: Make psw available on all exits, not just a subset + * KVM: fix irq_source_id size verification + * KVM: x86: include pvclock MSRs in msrs_to_save + * x86: Prevent GCC 4.4.x (pentium-mmx et al) function prologue wreckage + * x86: Use -maccumulate-outgoing-args for sane mcount prologues + * x86, mce: don't restart timer if disabled + * x86/mce: Set up timer unconditionally + * x86: SGI UV: Fix BAU initialization + * x86: Fix duplicated UV BAU interrupt vector + * x86: Add new Intel CPU cache size descriptors + * x86: Fix typo in Intel CPU cache size descriptor + * pata_hpt{37x|3x2n}: fix timing register masks (take 2) + * s390: clear high-order bits of registers after sam64 + * V4L/DVB: Fix test in copy_reg_bits() + * bsdacct: fix uid/gid misreporting + * UBI: flush wl before clearing update marker + * jbd2: don't wipe the journal on a failed journal checksum + * USB: xhci: Add correct email and files to MAINTAINERS entry. + * USB: musb_gadget_ep0: fix unhandled endpoint 0 IRQs, again + * USB: option.c: add support for D-Link DWM-162-U5 + * USB: usbtmc: repeat usb_bulk_msg until whole message is transfered + * USB: usb-storage: add BAD_SENSE flag + * USB: Close usb_find_interface race v3 + * pxa/em-x270: fix usb hub power up/reset sequence + * hfs: fix a potential buffer overflow + * SUNRPC: IS_ERR/PTR_ERR confusion + * NFS: Fix nfs_migrate_page() + * md/bitmap: protect against bitmap removal while being updated. + * futex: Take mmap_sem for get_user_pages in fault_in_user_writeable + * devpts_get_tty() should validate inode + * debugfs: fix create mutex racy fops and private data + * Driver core: fix race in dev_driver_string + * Serial: Do not read IIR in serial8250_start_tx when UART_BUG_TXEN + * mac80211: Fix bug in computing crc over dynamic IEs in beacon + * mac80211: Fixed bug in mesh portal paths + * mac80211: Revert 'Use correct sign for mesh active path refresh' + * mac80211: fix scan abort sanity checks + * wireless: correctly report signal value for IEEE80211_HW_SIGNAL_UNSPEC + * rtl8187: Fix wrong rfkill switch mask for some models + * x86: Fix bogus warning in apic_noop.apic_write() + * mm: hugetlb: fix hugepage memory leak in mincore() + * mm: hugetlb: fix hugepage memory leak in walk_page_range() + * powerpc/windfarm: Add detection for second cpu pump + * powerpc/therm_adt746x: Record pwm invert bit at module load time] + * powerpc: Fix usage of 64-bit instruction in 32-bit altivec code + * drm/radeon/kms: Add quirk for HIS X1300 board + * drm/radeon/kms: handle vblanks properly with dpms on + * drm/radeon/kms: fix legacy crtc2 dpms + * drm/radeon/kms: fix vram setup on rs600 + * drm/radeon/kms: rs6xx/rs740: clamp vram to aperture size + * drm/ttm: Fix build failure due to missing struct page + * drm/i915: Set the error code after failing to insert new offset into mm + ht. + * drm/i915: Add the missing clonemask for display port on Ironlake + * xen/xenbus: make DEVICE_ATTR()s static + * xen: re-register runstate area earlier on resume. + * xen: restore runstate_info even if !have_vcpu_info_placement + * xen: correctly restore pfn_to_mfn_list_list after resume + * xen: register timer interrupt with IRQF_TIMER + * xen: register runstate on secondary CPUs + * xen: don't call dpm_resume_noirq() with interrupts disabled. + * xen: register runstate info for boot CPU early + * xen: call clock resume notifier on all CPUs + * xen: improve error handling in do_suspend. + * xen: don't leak IRQs over suspend/resume. + * xen: use iret for return from 64b kernel to 32b usermode + * xen: explicitly create/destroy stop_machine workqueues outside + suspend/resume region. + * Xen balloon: fix totalram_pages counting. + * xen: try harder to balloon up under memory pressure. + * dm exception store: free tmp_store on persistent flag error + * dm snapshot: only take lock for statustype info not table + * dm crypt: move private iv fields to structs + * dm crypt: restructure essiv error path + * dm: avoid _hash_lock deadlock + * dm snapshot: cope with chunk size larger than origin + * dm crypt: separate essiv allocation from initialisation + * dm crypt: make wipe message also wipe essiv key + * slc90e66: fix UDMA handling + * tcp: Stalling connections: Fix timeout calculation routine + * ip_fragment: also adjust skb->truesize for packets not owned by a + socket + * b44 WOL setup: one-bit-off stack corruption kernel panic fix + * sparc64: Don't specify IRQF_SHARED for LDC interrupts. + * sparc64: Fix overly strict range type matching for PCI devices. + * sparc64: Fix stack debugging IRQ stack regression. + * sparc: Set UTS_MACHINE correctly. + * b43legacy: avoid PPC fault during resume + * tracing: Fix event format export + * ath9k: Fix TX hang poll routine + * ath9k: fix processing of TX PS null data frames + * ath9k: Fix maximum tx fifo settings for single stream devices + * ath9k: fix tx status reporting + * mac80211: Fix dynamic power save for scanning. + * drm/i915: Fix sync to vblank when VGA output is turned off + * memcg: fix memory.memsw.usage_in_bytes for root cgroup + * thinkpad-acpi: fix default brightness_mode for R50e/R51 + * thinkpad-acpi: preserve rfkill state across suspend/resume + * ipw2100: fix rebooting hang with driver loaded + * matroxfb: fix problems with display stability + * acerhdf: add new BIOS versions + * asus-laptop: change light sens default values. + * vmalloc: conditionalize build of pcpu_get_vm_areas() + * ACPI: Use the ARB_DISABLE for the CPU which model id is less than 0x0f. + * net: Fix userspace RTM_NEWLINK notifications. + * ext3: Fix data / filesystem corruption when write fails to copy data + * V4L/DVB (13116): gspca - ov519: Webcam 041e:4067 added. + * bcm63xx_enet: fix compilation failure after get_stats_count removal + * x86: Under BIOS control, restore AP's APIC_LVTTHMR to the BSP value + * drm/i915: Avoid NULL dereference with component_only tv_modes + * drm/i915: PineView only has LVDS and CRT ports + * drm/i915: Fix LVDS stability issue on Ironlake + * mm: sigbus instead of abusing oom + * ipvs: zero usvc and udest + * jffs2: Fix long-standing bug with symlink garbage collection. + * intel-iommu: Detect DMAR in hyperspace at probe time. + * intel-iommu: Apply BIOS sanity checks for interrupt remapping too. + * intel-iommu: Check for an RMRR which ends before it starts. + * intel-iommu: Fix oops with intel_iommu=igfx_off + * intel-iommu: ignore page table validation in pass through mode + * netfilter: xtables: document minimal required version + * perf_event: Fix incorrect range check on cpu number + * implement early_io{re,un}map for ia64 + * Linux 2.6.32.2 + + -- Andy Whitcroft Thu, 07 Jan 2010 15:28:43 +0000 + +linux (2.6.32-9.13) lucid; urgency=low + + [ Andy Whitcroft ] + + * [Config] enable CONFIG_B43_PHY_LP + - LP: #493059 + * include modules.builtin in the binary debs + * config-check -- add a configuration enforcer + * config-check -- add a unit-test suite to the checker + * [Config] Enable CONFIG_SYN_COOKIES for versatile + * [Config] Enable CONFIG_SECURITY_SMACK for ports + * [Config] Enable CONFIG_SECURITY_FILE_CAPABILITIES for ports + * [Config] Disable CONFIG_COMPAT_BRK for ports + * getabis -- add armel versatile to the list + + [ Brad Figg ] + + * SAUCE: Increase the default prealloc buffer for HDA audio devices + (non-modem) + + [ Manoj Iyer ] + + * ubuntu: onmibook -- Added missing BOM file + + [ Tim Gardner ] + + * ubuntu: fsam7400 -- Cleanup Makefile + + [ Upstream Kernel Changes ] + + * Revert "ext4: Fix insufficient checks in EXT4_IOC_MOVE_EXT" + * signal: Fix alternate signal stack check + * SCSI: scsi_lib_dma: fix bug with dma maps on nested scsi objects + * SCSI: osd_protocol.h: Add missing #include + * SCSI: megaraid_sas: fix 64 bit sense pointer truncation + * ext4: fix potential buffer head leak when add_dirent_to_buf() returns + ENOSPC + * ext4: avoid divide by zero when trying to mount a corrupted file system + * ext4: fix the returned block count if EXT4_IOC_MOVE_EXT fails + * ext4: fix lock order problem in ext4_move_extents() + * ext4: fix possible recursive locking warning in EXT4_IOC_MOVE_EXT + * ext4: plug a buffer_head leak in an error path of ext4_iget() + * ext4: make sure directory and symlink blocks are revoked + * ext4: fix i_flags access in ext4_da_writepages_trans_blocks() + * ext4: journal all modifications in ext4_xattr_set_handle + * ext4: don't update the superblock in ext4_statfs() + * ext4: fix uninit block bitmap initialization when s_meta_first_bg is + non-zero + * ext4: fix block validity checks so they work correctly with meta_bg + * ext4: avoid issuing unnecessary barriers + * ext4: fix error handling in ext4_ind_get_blocks() + * ext4: make trim/discard optional (and off by default) + * ext4: make "norecovery" an alias for "noload" + * ext4: Fix double-free of blocks with EXT4_IOC_MOVE_EXT + * ext4: initialize moved_len before calling ext4_move_extents() + * ext4: move_extent_per_page() cleanup + * jbd2: Add ENOMEM checking in and for + jbd2_journal_write_metadata_buffer() + * ext4: Return the PTR_ERR of the correct pointer in + setup_new_group_blocks() + * ext4: Avoid data / filesystem corruption when write fails to copy data + * ext4: wait for log to commit when umounting + * ext4: remove blocks from inode prealloc list on failure + * ext4: ext4_get_reserved_space() must return bytes instead of blocks + * ext4: quota macros cleanup + * ext4: fix incorrect block reservation on quota transfer. + * ext4: Wait for proper transaction commit on fsync + * ext4: Fix insufficient checks in EXT4_IOC_MOVE_EXT + * ext4: Fix potential fiemap deadlock (mmap_sem vs. i_data_sem) + * Linux 2.6.32.1 + * kbuild: generate modules.builtin + * (pre-stable) drm/i915: Fix sync to vblank when VGA output is turned off + - LP: #494461 + * (pre-stable) drm/i915: Avoid NULL dereference with component_only + tv_modes + - LP: #494045 + + [ Zhao Yakui ] + + * (pre-stable) acpi: Use the ARB_DISABLE for the CPU which model id is + less than 0x0f. + - LP: #481765 + + -- Andy Whitcroft Thu, 17 Dec 2009 15:41:21 +0000 + +linux (2.6.32-8.12) lucid; urgency=low + + [ Andy Whitcroft ] + + * SAUCE: AppArmor -- add linux/err.h for ERR_PTR + + -- Andy Whitcroft Sat, 12 Dec 2009 10:56:16 +0000 + +linux (2.6.32-8.11) lucid; urgency=low + + [ Andy Whitcroft ] + + * Revert "SAUCE: default ATI Radeon KMS to off until userspace catches + up" + * Revert "SAUCE: AppArmor: Fix oops there is no tracer and doing unsafe + transition." + * Revert "SAUCE: AppArmor: Fix refcounting bug causing leak of creds" + * Revert "SAUCE: AppArmor: Fix cap audit_caching preemption disabling" + * Revert "SAUCE: AppArmor: Fix Oops when in apparmor_bprm_set_creds" + * Revert "SAUCE: AppArmor: Fix oops after profile removal" + * Revert "SAUCE: AppArmor: AppArmor disallows truncate of deleted files." + * Revert "SAUCE: AppArmor: AppArmor fails to audit change_hat correctly" + * Revert "SAUCE: AppArmor: Policy load and replacement can fail to alloc + mem" + * Revert "SAUCE: AppArmor: AppArmor wrongly reports allow perms as + denied" + * Revert "SAUCE: AppArmor: Fix mediation of "deleted" paths" + * Revert "SAUCE: AppArmor: Fix off by 2 error in getprocattr mem + allocation" + * Revert "SAUCE: AppArmor: Set error code after structure + initialization." + * Revert "AppArmor -- fix pstrace_may_access rename" + * Revert "ubuntu: AppArmor security module" + * Revert "SAUCE: Add config option to set a default LSM" + * Revert "ubuntu: fsam7400 -- sw kill switch driver" + * Revert "[Config] fsam7400 -- enable" + * Revert "[Config] AUFS -- enable" + * Revert "ubuntu: AUFS -- aufs2-30 20090727" + * Revert "ubuntu: AUFS -- export various core functions -- fixes" + * Revert "ubuntu: AUFS -- export various core functions" + * Revert "[Config] ubuntu/iscsitarget -- disable" + * Revert "[Config] iscsitarget -- enable" + * Revert "ubuntu: iscsitarget -- SVN revision r214" + * update Vcs-Git to point to the correct repository + - LP: #493589 + * update build environment overrides to lucid + - LP: #493589 + * [Config] enable CONFIG_DEVTMPFS + * [Config] update all configs following AppArmor 2009-12-08 update + * SAUCE: isapnp_init: make isa PNP scans occur async + * [Config] fsam7400 -- enable + * [Config] omnibook -- enable + * [Config] cleanup CONFIG_AUDIT + * ubuntu: AUFS -- export various core functions (aufs2-base.patch) + * ubuntu: AUFS -- export various core functions (aufs2-standalone.patch) + * ubuntu: AUFS -- aufs2 20091209 + * [Config] AUFS -- enable + * [Config] iscsitarget -- enable + + [ Arjan van de Ven ] + + * SAUCE: KMS: cache the EDID information of the LVDS + + [ Colin Watson ] + + * bnx2: update d-i firmware filenames + - LP: #494052 + * add cdc_ether to nic-usb-modules udeb + - LP: #495060 + + [ John Johansen ] + + * ubuntu: AppArmor -- mainline 2009-10-08 + + [ Manoj Iyer ] + + * ubuntu: fsam7400 -- kill switch for Fujitsu Siemens Amilo M 7400 + * ubuntu: omnibook -- support Toshiba (HP) netbooks + * ubuntu: iscsitarget --- version 1.4.19 + - LP: #494693 + + [ Surbhi Palande ] + + * SAUCE: Make populate_rootfs asynchronous + + [ Tim Gardner ] + + * Parallelize flavour builds and packaging + * [Config] Enable CONFIG_KSM + + [ Upstream Kernel Changes ] + + * Config option to set a default LSM + * LSM: Add security_path_chroot(). + * LSM: Add security_path_chroot(). + * LSM: Move security_path_chmod()/security_path_chown() to after + mutex_lock(). + * ext4: Fix insufficient checks in EXT4_IOC_MOVE_EXT + + -- Andy Whitcroft Fri, 11 Dec 2009 17:45:19 +0000 + +linux (2.6.32-7.10) lucid; urgency=low + + [ Andy Whitcroft ] + + * [Config] disable CONFIG_THUMB2_KERNEL to fix arm FTBFS + + -- Andy Whitcroft Sun, 06 Dec 2009 12:56:48 +0000 + +linux (2.6.32-7.9) lucid; urgency=low + + [ Andy Whitcroft ] + + * SAUCE: set /proc/acpi/video/*/DOS to 4 by default + - LP: #458982 + * SAUCE: ensure vga16fb loads if no other driver claims the VGA device + * [Config] update configs following versatile switch to V7 + * rebased to v2.6.32 + * [Config] update configs following rebase to v2.6.32 + * [Config] update ports configs following rebase to v2.6.32 + * SAUCE: default ATI Radeon KMS to off until userspace catches up + + [ Arjan van de Ven ] + + * SAUCE: vfs: Add a trace point in the mark_inode_dirty function + + [ Leann Ogasawara ] + + * [SCSI] megaraid_sas: remove sysfs poll_mode_io world writeable + permissions + - CVE-2009-3939 + + [ Loic Minier ] + + * SAUCE: select a v7 CPU for versatile + + [ Takashi Iwai ] + + * SAUCE: ALSA: hda - Add power on/off counter + + [ Upstream changes ] + + * rebased to v2.6.32 + + -- Andy Whitcroft Fri, 04 Dec 2009 10:44:50 +0000 + +linux (2.6.32-6.8) lucid; urgency=low + + [ Andy Whitcroft ] + + * [Config] disable SSB devices for armel + + -- Andy Whitcroft Sat, 28 Nov 2009 12:16:40 +0000 + +linux (2.6.32-6.7) lucid; urgency=low + + [ Andy Whitcroft ] + + * Revert "SAUCE: default ATI Radeon KMS to off until userspace catches up" + * Revert "SAUCE: Dell XPS710 reboot quirk" + * Revert "SAUCE: Link acpi-cpufreq.o first" + * Revert "SAUCE: LPIA Logical reset of USB port on resume" + * Revert "SAUCE: LPIA Reboot fix for Intel Crownbeach development boards" + * Revert "SAUCE: Enable HDMI audio codec on Studio XPS 1340" + * Revert "SAUCE: Dell laptop digital mic does not work, PCI 1028:0271" + * Revert "Add Dell Dimension 9200 reboot quirk" + * Revert "SAUCE: Correctly blacklist Thinkpad r40e in ACPI" + * Revert "SAUCE: tulip: Define ULI PCI ID's" + * Revert "SAUCE: Lower warning level of some PCI messages" + * Revert "mac80211: fix two issues in debugfs" + Drop a number of known redundant commits as identified in the Ubuntu + delta review blueprint. + + * reenable armel versatile flavour + * [Config] disable CONFIG_USB_DEVICEFS + + [ Tim Gardner ] + + * [Config] udeb: Add squashfs to fs-core-modules + - LP: #352615 + * [Config] Create a real squashfs udeb + - LP: #352615 + + + -- Andy Whitcroft Fri, 27 Nov 2009 17:31:16 +0000 + +linux (2.6.32-5.6) lucid; urgency=low + + [ Andy Whitcroft ] + + * rebase to v2.6.32-rc8 + * update configs following rebase to v2.6.32-rc8 + * update ports configs since rebase to v2.6.32-rc8 + * [Config] enable cgroup options + - LP: #480739 + + [ Upstream Kernel Changes ] + + * rebase to v2.6.32-rc8 + + -- Andy Whitcroft Mon, 23 Nov 2009 11:16:14 +0000 + +linux (2.6.32-4.5) lucid; urgency=low + + [ Andy Whitcroft ] + + * [Config] SERIO_LIBPS2 and SERIO_I8042 must match + * rebase to v2.6.32-rc7 + * resync with Karmic proposed + + [ John Johansen ] + + * SAUCE: AppArmor: Fix oops after profile removal + - LP: #475619 + * SAUCE: AppArmor: Fix Oops when in apparmor_bprm_set_creds + - LP: #437258 + * SAUCE: AppArmor: Fix cap audit_caching preemption disabling + - LP: #479102 + * SAUCE: AppArmor: Fix refcounting bug causing leak of creds + - LP: #479115 + * SAUCE: AppArmor: Fix oops there is no tracer and doing unsafe + transition. + - LP: #480112 + + [ Ubuntu Changes ] + + * resync with Karmic proposed (ddbc670a86a3dee18541a3734149f250ff307adf) + + [ Upstream Kernel Changes ] + + * rebase to v2.6.32-rc7 + + -- Andy Whitcroft Fri, 13 Nov 2009 11:35:13 +0000 + +linux (2.6.32-3.4) lucid; urgency=low + + [ Andy Whitcroft ] + + * [Config] SERIO_LIBPS2 and SERIO_I8042 must match + * [Upstream] add local prefix to oss local change_bits + + [ Upstream Kernel Changes ] + + * mtd/maps: gpio-addr-flash: pull in linux/ headers rather than asm/ + * mtd/maps: gpio-addr-flash: depend on GPIO arch support + + -- Andy Whitcroft Wed, 11 Nov 2009 14:47:04 +0000 + +linux (2.6.32-3.3) lucid; urgency=low + + [ Andy Whitcroft ] + + * rebase to v2.6.32-rc6 + * [Config] update configs following rebase to v2.6.32-rc6 + * [Config] update ports configs following rebase to v2.6.32-rc6 + * resync with Karmic Ubuntu-2.6.31-15.49 + * [Config] add module ignores for broken drivers + + [ John Johansen ] + + * SAUCE: AppArmor: AppArmor wrongly reports allow perms as denied + - LP: #453335 + * SAUCE: AppArmor: Policy load and replacement can fail to alloc mem + - LP: #458299 + * SAUCE: AppArmor: AppArmor fails to audit change_hat correctly + - LP: #462824 + * SAUCE: AppArmor: AppArmor disallows truncate of deleted files. + - LP: #451375 + + [ Kees Cook ] + + * SAUCE: Fix nx_enable reporting + - LP: #454285 + + [ Scott James Remnant ] + + * Revert "SAUCE: trace: add trace_event for the open() syscall" + * SAUCE: trace: add trace events for open(), exec() and uselib() + - LP: #462111 + + [ Stefan Bader ] + + * SAUCE: Fix sub-flavour script to not stop on missing directories + - LP: #453073 + + [ Ubuntu Changes ] + + * resync with Karmic Ubuntu-2.6.31-15.49 + + [ Upstream Kernel Changes ] + + * rebase to v2.6.32-rc6 + - LP: #464552 + + -- Andy Whitcroft Tue, 10 Nov 2009 15:00:57 +0000 + +linux (2.6.32-2.2) lucid; urgency=low + + [ Andy Whitcroft ] + + * install the full changelog with the binary package + * changelog -- explicitly note rebases and clean history + * reinstate armel.mk with no flavours + - LP: #449637 + * [Upstream] block: silently error unsupported empty barriers too + - LP: #420423 + * [Config] udate configs following karmic resync + * [Config] update ports configs following karmic resync + * [Upstream] lirc -- follow removal of .id element + + [ Colin Watson ] + + * Use section 'admin' rather than 'base' + * Add more e100 firmware to nic-modules + - LP: #451872 + * Add qla1280 firmware to scsi-modules + - LP: #381037 + + [ John Johansen ] + + * SAUCE: AppArmor: Set error code after structure initialization. + - LP: #427948 + * SAUCE: AppArmor: Fix off by 2 error in getprocattr mem allocation + - LP: #446595 + * SAUCE: AppArmor: Fix mediation of "deleted" paths + + [ Kees Cook ] + + * SAUCE: [x86] fix report of cs-limit nx-emulation + - LP: #454285 + + [ Leann Ogasawara ] + + * SAUCE: (drop after 2.6.31) input: Add support for filtering input + events + - LP: #430809 + * SAUCE: (drop after 2.6.31) dell-laptop: Trigger rfkill updates on wifi + toggle switch press + - LP: #430809 + + [ Luke Yelavich ] + + * SAUCE: Add sr_mod to the scsi-modules udeb for powerpc + * [Config] Add sd_mod to scsi-modules udeb for powerpc + + [ Mario Limonciello ] + + * SAUCE: Update to LIRC 0.8.6 + - LP: #432678 + * SAUCE: dell-laptop: Store the HW switch status internally rather than + requerying every time + - LP: #430809 + * SAUCE: dell-laptop: Blacklist machines not supporting dell-laptop + - LP: #430809 + + [ Stefan Bader ] + + * [Upstream] acerhdf: Limit modalias matching to supported boards + - LP: #435958 + + [ Tim Gardner ] + + * [Upstream] i915: Fix i2c init message + - LP: #409361 + * [Config] Add sym53c8xx.ko to virtual sub-flavour + - LP: #439415 + * [Config] Add d101m_ucode.bin to d-i/firmware/nic-modules + - LP: #439456 + * [Config] Set default I/O scheduler back to CFQ for desktop flavours + - LP: #381300 + * SAUCE: Created MODULE_EXPORT/MODULE_IMPORT macros + - LP: #430694 + * SAUCE: Use MODULE_IMPORT macro to tie intel_agp to i915 + - LP: #430694 + * [Config] CONFIG_GFS2_FS_LOCKING_DLM=y + - LP: #416325 + * SAUCE: Fix MODULE_IMPORT/MODULE_EXPORT + - LP: #430694 + * SAUCE: Raise the default console 'quiet' level to 2 + * [Config] CONFIG_X86_PAT=y + * [Config] Add armel arch to linux-libc-dev arches. + - LP: #449637 + * [Config] CONFIG_X86_MCE + * [Upstream] (drop after 2.6.31) Input: synaptics - add another Protege + M300 to rate blacklist + - LP: #433801 + + [ Upstream Kernel Changes ] + + * sgi-gru: Fix kernel stack buffer overrun, CVE-2009-2584 + * drm/i915: Fix FDI M/N setting according with correct color depth + - LP: #416792 + + -- Andy Whitcroft Thu, 22 Oct 2009 16:53:33 +0100 + +linux (2.6.32-1.1) lucid; urgency=low + + [ Andy Whitcroft ] + + * rebase to v2.6.32-rc3 + * [Config] update configs following rebase to 2.6.32-rc3 + * [Config] update ports configs following rebase to 2.6.32-rc3 + * AppArmor -- fix pstrace_may_access rename + * staging/android -- disable + * ubuntu: dm-raid-45 -- update to compile with 2.6.32 + * ubuntu: drbd -- disable + * staging/comdi -- disable + * staging/go7007 -- disable + * [Config] staging/winbond -- disable + * [Config] ubuntu/iscsitarget -- disable + * [d-i] cbc and ecb are builtin make them optional in udebs + * rebase to v2.6.32-rc5 + * [Config] update configs following rebase to v2.6.32-rc5 + * [Config] update ports configs following rebase to v2.6.31-rc5 + + [ Tim Gardner ] + + * [Config] Add cpio as a build dependency. + + [ Upstream Kernel Changes ] + + * rebase to v2.6.32-rc3 + * rebase to v2.6.32-rc5 + + -- Andy Whitcroft Mon, 05 Oct 2009 15:48:58 +0100 + +linux (2.6.31-11.37) karmic; urgency=low + + [ Tim Gardner ] + + * [Config] Increase kernel log buffer to 256K for amd64 flavours + - LP: #424810 + * [Config] Set HZ=100 for amd64 flavours + - LP: #438234 + * [Upstream] e1000e: Emit notice instead of an error when + pci_enable_pcie_error_reporting() fails + - LP: #436370 + + [ Upstream Kernel Changes ] + + * n_tty: honor opost flag for echoes + * n_tty: move echoctl check and clean up logic + - LP: #438310 + + * Revert "[Upstream] drm/i915: Check that the relocation points to within + the target" - Use upstream cherry-pick. + * drm/i915: Check that the relocation points to within the target + - LP: #429241 + + * drm/i915: fix tiling on IGDNG + * drm/i915: add B43 chipset support + * agp/intel: Add B43 chipset support + Intel request from kernel team mailing list. + + * HID: completely remove apple mightymouse from blacklist + - LP: #428111 + + -- Tim Gardner Mon, 28 Sep 2009 11:47:29 -0600 + +linux (2.6.31-11.36) karmic; urgency=low + + [ Brian Rogers ] + + * SAUCE: (drop after 2.6.31) em28xx: ir-kbd-i2c init data needs a + persistent object + * SAUCE: (drop after 2.6.31) saa7134: ir-kbd-i2c init data needs a + persistent object + + [ Takashi Iwai ] + + * [Upstream] ALSA: hda - Add another entry for Nvidia HDMI device + - LP: #416482 + + [ Tyler Hicks ] + + * SAUCE: (drop after 2.6.31) eCryptfs: Prevent lower dentry from going + negative during unlink + + [ Upstream Kernel Changes ] + + * sg: fix oops in the error path in sg_build_indirect() + * mpt2sas : Rescan topology from Interrupt context instead of work thread + * mpt2sas: Prevent sending command to FW while Host Reset + * mpt2sas: setting SDEV into RUNNING state from Interrupt context + * mpt2sas: Raid 10 Volume is showing as Raid 1E in dmesg + * SCSI: fix oops during scsi scanning + * SCSI: libsrp: fix memory leak in srp_ring_free() + * cfg80211: fix looping soft lockup in find_ie() + * ath5k: write PCU registers on initial reset + * binfmt_elf: fix PT_INTERP bss handling + * TPM: Fixup boot probe timeout for tpm_tis driver + * md: Fix "strchr" [drivers/md/dm-log-userspace.ko] undefined! + * x86/amd-iommu: fix broken check in amd_iommu_flush_all_devices + * fix undefined reference to user_shm_unlock + * perf_counter: Fix buffer overflow in perf_copy_attr() + * perf_counter: Start counting time enabled when group leader gets + enabled + * powerpc/perf_counters: Reduce stack usage of power_check_constraints + * powerpc: Fix bug where perf_counters breaks oprofile + * powerpc/ps3: Workaround for flash memory I/O error + * block: don't assume device has a request list backing in nr_requests + store + * agp/intel: remove restore in resume + * ALSA: cs46xx - Fix minimum period size + * ASoC: Fix WM835x Out4 capture enumeration + * sound: oxygen: work around MCE when changing volume + * mlx4_core: Allocate and map sufficient ICM memory for EQ context + * perf stat: Change noise calculation to use stddev + * x86: Fix x86_model test in es7000_apic_is_cluster() + * x86/i386: Make sure stack-protector segment base is cache aligned + * PCI: apply nv_msi_ht_cap_quirk on resume too + * x86, pat: Fix cacheflush address in change_page_attr_set_clr() + * ARM: 5691/1: fix cache aliasing issues between kmap() and kmap_atomic() + with highmem + * KVM guest: do not batch pte updates from interrupt context + * KVM: Fix coalesced interrupt reporting in IOAPIC + * KVM: VMX: Check cpl before emulating debug register access + * KVM guest: fix bogus wallclock physical address calculation + * KVM: x86: Disallow hypercalls for guest callers in rings > 0 + * KVM: VMX: Fix cr8 exiting control clobbering by EPT + * KVM: x86 emulator: Implement zero-extended immediate decoding + * KVM: MMU: make __kvm_mmu_free_some_pages handle empty list + * KVM: x86 emulator: fix jmp far decoding (opcode 0xea) + * KVM: limit lapic periodic timer frequency + * libata: fix off-by-one error in ata_tf_read_block() + * PCI quirk: update 82576 device ids in SR-IOV quirks list + * PCI: Unhide the SMBus on the Compaq Evo D510 USDT + * powerpc/pseries: Fix to handle slb resize across migration + * Linux 2.6.31.1 + + -- Tim Gardner Thu, 24 Sep 2009 13:04:28 -0600 + +linux (2.6.31-10.35) karmic; urgency=low + + [ Amit Kucheria ] + + * Disable CONFIG_UEVENT_HELPER_PATH + + [ Andy Whitcroft ] + + * [Config] Enable CONFIG_USB_GADGET_DUMMY_HCD + * remove the tlsup driver + * remove lmpcm logitech driver support + + [ Bryan Wu ] + + * Add 3 missing files to prerm remove file list + - LP: #345623, #415832 + + [ Chris Wilson ] + + * [Upstream] drm/i915: Check that the relocation points to within the + target + - LP: #429241 + + [ Luke Yelavich ] + + * [Config] Set CONFIG_EXT4_FS=y on ports architectures + + [ Manoj Iyer ] + + * SAUCE: Added quirk to recognize GE0301 3G modem as an interface. + - LP: #348861 + + [ Tim Gardner ] + + * Revert "[Upstream] ACPI: Add Thinkpad W500, W700, & W700ds to OSI(Linux) white-list" + * Revert "[Upstream] ACPI: Add Thinkpad R400 & Thinkpad R500 to OSI(Linux) white-list" + * Revert "[Upstream] ACPI: Add Thinkpad X300 & Thinkpad X301 to OSI(Linux) white-list" + * Revert "[Upstream] ACPI: Add Thinkpad X200, X200s, X200t to OSI(Linux) white-list" + * Revert "[Upstream] ACPI: Add Thinkpad T400 & Thinkpad T500 to OSI(Linux) white-list" + Upstream suggests that this is not the right approach. + + * [Config] Set default I/O scheduler to DEADLINE + CFQ seems to have some load related problems which are often exacerbated by sreadahead. + - LP: #381300 + + [ ubuntu@tjworld.net ] + + * SAUCE: ipw2200: Enable LED by default + - LP: #21367 + + [ Upstream Kernel Changes ] + + * ALSA: hda - Add support for new AMD HD audio devices + - LP: #430564 + + -- Andy Whitcroft Wed, 16 Sep 2009 15:37:49 +0100 + +linux (2.6.31-10.34) karmic; urgency=low + + [ Ted Tso ] + + * [Upstream] ext3: Don't update superblock write time when filesystem is + read-only + - LP: #427822 + + -- Tim Gardner Tue, 15 Sep 2009 16:00:45 -0600 + +linux (2.6.31-10.33) karmic; urgency=low + + [ Leann Ogasawara ] + + * [Upstream] dvb-usb: fix tuning with Cinergy T2 + - LP: #421258 + + [ Tim Gardner ] + + * [Config] Unconditionally copy files from sub-flavours lists. + (really, really fix it this time) + - LP: #423426 + * [Config] Set CONFIG_CACHEFILES=m for all flavours + + [ Upstream Kernel Changes ] + + * ext4: Don't update superblock write time when filesystem is read-only + - LP: #427822 + + -- Tim Gardner Tue, 15 Sep 2009 07:50:21 -0600 + +linux (2.6.31-10.32) karmic; urgency=low + + [ Eric Miao ] + + * [Config] enable module support for memory stick + - LP: #159951 + + [ Tim Gardner ] + + * [Config] Unconditionally copy files from sub-flavours lists. + - LP: #423426 + + -- Tim Gardner Thu, 10 Sep 2009 15:57:55 -0600 + +linux (2.6.31-10.31) karmic; urgency=low + + [ Andy Whitcroft ] + + * rebase to v2.6.31 final + + [ Colin Watson ] + + * [Config] Recommend grub-pc in linux-image + - LP: #385741 + + [ Ike Panhc ] + + * [Upstream] Pull latest update of lenovo-sl-laptop + + [ Peter Feuerer ] + + * [Upstream] (drop after 2.6.31) acerhdf: fix fan control for AOA150 + model + - LP: #426691 + + [ Tim Gardner ] + + * [Config] De-macro some package names. + + [ Upstream Changes ] + + * rebase to 2.6.31 final. + + -- Andy Whitcroft Thu, 10 Sep 2009 09:38:10 +0100 + +linux (2.6.31-10.30) karmic; urgency=low + + [ Amit Kucheria ] + + * [Config] Enable CONFIG_USB_DEVICEFS + - LP: #417748 + * [Config] Populate the config-update template a bit more + + [ Andy Whitcroft ] + + * rebase to v2.6.31-rc9 + * [Config] update configs following rebase to v2.6.31-rc9 + * [Config] update ports configs following rebase to v2.6.31-rc9 + + [ Colin Ian King ] + + * SAUCE: wireless: hostap, fix oops due to early probing interrupt + - LP: #254837 + + [ Jerone Young ] + + * [Upstream] ACPI: Add Thinkpad T400 & Thinkpad T500 to OSI(Linux) + white-list + - LP: #281732 + * [Upstream] ACPI: Add Thinkpad X200, X200s, X200t to OSI(Linux) + white-list + - LP: #281732 + * [Upstream] ACPI: Add Thinkpad X300 & Thinkpad X301 to OSI(Linux) + white-list + - LP: #281732 + * [Upstream] ACPI: Add Thinkpad R400 & Thinkpad R500 to OSI(Linux) + white-list + - LP: #281732 + * [Upstream] ACPI: Add Thinkpad W500, W700, & W700ds to OSI(Linux) + white-list + - LP: #281732 + + [ John Johansen ] + + * SAUCE: AppArmor: Fix profile attachment for regexp based profile names + - LP: #419308 + * SAUCE: AppArmor: Return the correct error codes on profile + addition/removal + - LP: #408473 + * SAUCE: AppArmor: Fix OOPS in profile listing, and display full list + - LP: #408454 + * SAUCE: AppArmor: Fix mapping of pux to new internal permission format + - LP: #419222 + * SAUCE: AppArmor: Fix change_profile failure + - LP: #401931 + * SAUCE: AppArmor: Tell git to ignore generated include files + - LP: #419505 + + [ Stefan Bader ] + + * [Upstream] acpi: video: Loosen strictness of video bus detection code + - LP: #333386 + * SAUCE: Remove ov511 driver from ubuntu subdirectory + + [ Tim Gardner ] + + * [Config] Exclude char-modules from non-x86 udeb creation + * SAUCE: Notify the ACPI call chain of AC events + * [Config] CONFIG_SATA_VIA=m + - LP: #403385 + * [Config] Build in all phylib support modules. + * [Config] Don't fail when sub-flavour files are missing + - LP: #423426 + * [Config] Set CONFIG_LSM_MMAP_MIN_ADDR=0 + - LP: #423513 + + [ Upstream ] + + * Rebased against v2.6.31-rc9 + + -- Andy Whitcroft Mon, 07 Sep 2009 11:33:45 +0100 + +linux (2.6.31-9.29) karmic; urgency=low + + [ Leann Ogasawara ] + + * [Upstream] agp/intel: support for new chip variant of IGDNG mobile + - LP: #419993 + * [Config] d-i/modules: Add new char-modules file, initialize with + intel-agp + - LP: #420605 + + [ Upstream ] + + * Rebased against 2.6.31-rc8 plus some inotify regression patches: + up through git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux-2.6.git + adda766193ea1cf3137484a9521972d080d0b7af. + + -- Tim Gardner Fri, 28 Aug 2009 06:31:30 -0600 + +linux (2.6.31-8.28) karmic; urgency=low + + [ Ike Panhc ] + + * [Config] Let nic-shared-modules depends on crypto-modules + - LP: #360966 + + [ Leann Ogasawara ] + + * [Upstream] (drop after 2.6.31) drm/i915: increase default latency + constant + - LP: #412492 + + [ Mario Limonciello ] + + * [Upstream]: (drop after 2.6.31) dell-laptop: don't change softblock + status if HW switch is disabled + - LP: #418721 + * [Upstream]: (drop after 2.6.31) compal-laptop: Add support for known + Compal made Dell laptops + * [Upstream]: (drop after 2.6.31) compal-laptop: Replace sysfs support + with rfkill support + + [ Tim Gardner ] + + * [Config] Add acpiphp to virtual sub-flavour + - LP: #364916 + * Drop KSM patch set for now because of instabilities with encrypted swap. + - LP: #418781 + + -- Tim Gardner Wed, 26 Aug 2009 08:14:26 -0600 + +linux (2.6.31-7.27) karmic; urgency=low + + [ Tim Gardner ] + + * [Config] updateconfigs updateportsconfigs after 2.6.31-rc7 rebase + * SAUCE: (drop after 2.6.31) Added KSM from mmotm-2009-08-20-19-18 + Replaces previous ksm patches from 2.6.31-6.25 + * [Config] KSM=y + + [ Upstream ] + + * Rebased against v2.6.31-rc7 + + -- Tim Gardner Sat, 22 Aug 2009 20:32:11 -0600 + +linux (2.6.31-6.26) karmic; urgency=low + + [ Andy Whitcroft ] + + * [Config] enable CONFIG_AUFS_BR_RAMFS + - LP: #414738 + * split out debian directory ready for abstraction + * add printdebian target to find branch target + * abstracted debian -- debian/files is not abstracted + * abstracted debian -- packages must be built in debian/ + * abstracted debian -- kernel-wedge needs to work in debian/ + * abstracted debian -- ensure we install the copyright file + * abstracted-debian -- drop the debian directories from headers + * abstracted-debian -- drop the debian directories from headers part 2 + * SAUCE: ubuntu-insert-changes -- follow abstracted debian + * [Upstream] aoe: ensure we initialise the request_queue correctly V2 + - LP: #410198 + + [ Luke Yelavich ] + + * [Config] Ports: Disable CONFIG_CPU_FREQ_DEBUG on powerpc-smp + * [Config] Ports: Re-enable windfarm modules on powerpc64-smp + - LP: #413150 + * [Config] Ports: Build all cpu frequency scaling governors into ports + kernels + * [Config] Ports: Build ext2 and ext3 modules into ports kernels + * [Config] Ports: CONFIG_PACKET=y for all ports kernels + * [Config] Ports: Enable PS3 network driver + + [ Stefan Bader ] + + * abstracted debian -- call $(DEBIAN)/rules using make + + [ Tim Gardner ] + + * [Config] Abstract the debian directory + * SAUCE: Improve error reporting in postinst + - LP: #358564 + + -- Tim Gardner Sun, 16 Aug 2009 20:33:28 -0600 + +linux (2.6.31-6.25) karmic; urgency=low + + [ Andy Whitcroft ] + + * script to generate Ubuntu changes from changelog + * [Config] standardise ANDROID options + * [Config] standardise CONFIG_ATM as module + * [Config] standardise CONFIG_LIB80211 as module + * [Config] disable CONFIG_PRINT_QUOTA_WARNING + * [Config] set CONFIG_CRAMFS as module + * [Config] enable CONFIG_DAB and modules + * [Config] set CONFIG_MAC80211_HWSIM as module + * [Config] set CONFIG_NET_CLS_FLOW as module + * [Config] set CONFIG_NF_CONNTRACK_SANE as module + * [Config] set CONFIG_NF_CT_PROTO_DCCP as module + * [Config] set CONFIG_RTC_DRV_DS1511 as module + * [Config] set CONFIG_RTC_DRV_R9701 as module + * [Config] set CONFIG_RTC_DRV_S35390A as module + * [Config] set CONFIG_TOIM3232_DONGLE as module + * [Config] standardise CONFIG_USB_MIDI_GADGET as module + * [Config] standardise CONFIG_USB_G_PRINTER as module + * [Config] standardise CONFIG_USB_SERIAL_IR as module + * [Config] set CONFIG_USB_SERIAL_IUU as module + * [Config] standardise CONFIG_USB_STORAGE_CYPRESS_ATACB as module + * [Config] standardise CONFIG_USB_STORAGE_ONETOUCH as module + * cleanup remains of dm-loop + * drop thinkpad ec and smapi support + * drop appleir + * [Config] update configs following rebase to v2.6.31-rc6 + * rebase to v2.6.31-rc6 + + [ Hugh Dickins ] + + * SAUCE: ksm patch 1, drop after 2.6.31 + * SAUCE: ksm patch 2, drop after 2.6.31 + * SAUCE: ksm patch 3, drop after 2.6.31 + * SAUCE: ksm patch 4, drop after 2.6.31 + * SAUCE: ksm patch 5, drop after 2.6.31 + * SAUCE: ksm patch 7, drop after 2.6.31 + + [ Izik Eidus ] + + * SAUCE: ksm patch 0, drop after 2.6.31 + * SAUCE: ksm patch 6, drop after 2.6.31 + * SAUCE: ksm patch 8, drop after 2.6.31 + * SAUCE: ksm patch 9, drop after 2.6.31 + + [ Luke Yelavich ] + + * [Config] Ports: Re-add PS3 modules to udebs + + [ Michael Casadevall ] + + * [Config] Update SPARC config and d-i files to reflect what can be built + + [ Tim Gardner ] + + * [Config] Removed armel package support + * [Config] Enabled CONFIG_KSM=y + + [ Upstream Kernel Changes ] + + * Rebased against v2.6.31-rc6 + * ARM: Cleanup: Revert "ARM: Add more cache memory types macros" + * ARM: Cleanup: Revert "Do not use OOB with MLC NAND" + * ARM: Cleanup: Revert "ARM: Make ARM arch aware of ubuntu/ drivers" + * ARM: Cleanup: Revert "ARM: IMX51: Make video capture drivers compile" + * ARM: Cleanup: Revert "ARM: IMX51: Fix isl29003 HWMON driver for i2c + changes" + * ARM: Cleanup: Revert "ARM: IMX51: IPU irq handler deadlock fix" + * ARM: Cleanup: Revert "ARM: IMX51: Babbage 2.5 needs a different system + revision" + * ARM: Cleanup: Revert "ARM: IMX51: Compile-in the IMX51 cpufreq driver + by default" + * ARM: Cleanup: Revert "ARM: IMX51: Enable ZONE_DMA for ARCH_MXC" + * ARM: Cleanup: Revert "ARM: IMX51: Make ARCH_MXC auto-enable + ARCH_MXC_CANONICAL" + * ARM: Cleanup: Revert "ARM: IMX51: Unconditionally disable + CONFIG_GPIOLIB" + * ARM: Cleanup: Revert "ARM: IMX51: Minimal changes for USB to work on + 2.6.31" + * ARM: Cleanup: Revert "ARM: IMX51: Fix plat-mxc/timer.c to handle imx51" + * ARM: Cleanup: Revert "ARM: IMX51: Make it compile." + * ARM: Cleanup: Revert "ARM: IMX51: Clean-up the craziness of including + mxc_uart.h _everywhere_" + * ARM: Cleanup: Revert "ARM: IMX51: Move board-mx51* header files to the + correct location" + * ARM: Cleanup: Revert "ARM: IMX51: Changed from snd_card_new to + snd_card_create" + * ARM: Cleanup: Revert "ARM: IMX51: Fix up merge error in Kconfig" + * ARM: Cleanup: Revert "ARM: IMX51: mxc_timer_init prototype" + * ARM: Cleanup: Revert "ARM: IMX51: Removed the mxc_gpio_port structure." + * ARM: Cleanup: Revert "ARM: IMX51: Added external declaration for + mxc_map_io." + * ARM: Cleanup: Revert "ARM: IMX51: Get to bus_id by calling dev_name." + * ARM: Cleanup: Revert "ARM: IMX51: Get to bus_id by calling dev_name." + * ARM: Cleanup: Revert "ARM: IMX51: snd_soc_machine structure replaced + with snd_soc_card." + * ARM: Cleanup: Revert "ARM: IMX51: codec structure was moved to the card + structure" + * ARM: Cleanup: Revert "ARM: IMX51: Hack to add defines for + DMA_MODE_READ/WRITE/MASK" + * ARM: Cleanup: Revert "ARM: IMX51: Add SoC and board support for + Freescale mx51 platform" + * Driver core: add new device to bus's list before probing + * [Upstream] (drop after 2.6.31) ALSA: hda - Reduce click noise at + power-saving + - LP: #381693, #399750, #380892 + + -- Andy Whitcroft Fri, 14 Aug 2009 11:32:23 +0100 + +linux (2.6.31-5.24) karmic; urgency=low + + [ Amit Kucheria ] + + * ARM: IMX51: Make video capture drivers compile + * [Config] IMX51: Config updates + + [ Andy Whitcroft ] + + * remove leftovers of dm-bbr + + [ Leann Ogasawara ] + + * Add pata_cs5535 to pata-modules + - LP: #318805 + + [ Luke Yelavich ] + + * [Config] CONFIG_PPC64=y for powerpc64-smp + * [Config] Set the maximum number of CPUs to 1024 for powerpc64-smp + * [Config] CONFIG_PPC_PS3=y for powerpc64-smp + * [Config] CONFIG_PPC_MAPLE=y on powerpc64-smp + * [Config] CONFIG_PPC_PASEMI=y on powerpc64-smp + * [Config] CONFIG_CPU_FREQ_PMAC64=y on powerpc64-smp + * [Config] Enable all PS3 drivers in powerpc64-smp + + [ Mario Limonciello ] + + * LIRC -- fix lirc-i2c 2.6.31 compilation + + [ Matthew Garrett ] + + * [Upstream] dell-laptop: Fix rfkill state queries + + [ Tim Gardner ] + + * [Config] Ignore armel ABI and module changes + * [Config] Update configs after rebase against 2.6.31-rc5 + + [ Upstream ] + + * Rebased to 2.6.31-rc5 + + -- Andy Whitcroft Tue, 28 Jul 2009 10:10:09 +0100 + +linux (2.6.31-4.23) karmic; urgency=low + + [ Andy Whitcroft ] + + * AUFS -- update to aufs2-30 20090727 + * [Config] enable AUFS FUSE support + + [ Luke Yelavich ] + + * [Config] CONFIG_JFS_FS=m on sparc + + [ Tim Gardner ] + + * [Upstream] dell-laptop: Fix rfkill state setting. + + -- Andy Whitcroft Mon, 27 Jul 2009 11:11:47 +0100 + +linux (2.6.31-4.22) karmic; urgency=low + + [ Amit Kucheria ] + + * ARM: IMX51: Add SoC and board support for Freescale mx51 platform + * ARM: IMX51: Move board-mx51* header files to the correct location + * ARM: IMX51: Clean-up the craziness of including mxc_uart.h _everywhere_ + * ARM: IMX51: Make it compile. + * ARM: IMX51: Unconditionally disable CONFIG_GPIOLIB + * ARM: IMX51: Make ARCH_MXC auto-enable ARCH_MXC_CANONICAL + * ARM: IMX51: Enable ZONE_DMA for ARCH_MXC + * ARM: IMX51: Compile-in the IMX51 cpufreq driver by default + * ARM: IMX51: Fix isl29003 HWMON driver for i2c changes + * ARM: USB: musb: Refer to musb_otg_timer_func under correct #ifdef + * ARM: staging: udlfb: Add vmalloc.h include + * UBUNTU [Config]: Bring imx51 config upto date with other flavours + + [ Brad Figg ] + + * ARM: IMX51: Hack to add defines for DMA_MODE_READ/WRITE/MASK + * ARM: IMX51: codec structure was moved to the card structure + * ARM: IMX51: snd_soc_machine structure replaced with snd_soc_card. + * ARM: IMX51: Get to bus_id by calling dev_name. + * ARM: IMX51: Get to bus_id by calling dev_name. + * ARM: IMX51: Added external declaration for mxc_map_io. + * ARM: IMX51: Removed the mxc_gpio_port structure. + * ARM: IMX51: mxc_timer_init prototype + * ARM: IMX51: Fix up merge error in Kconfig + * ARM: IMX51: Changed from snd_card_new to snd_card_create + + [ Dinh Nguyen ] + + * ARM: IMX51: Fix plat-mxc/timer.c to handle imx51 + * ARM: IMX51: Minimal changes for USB to work on 2.6.31 + * ARM: IMX51: Babbage 2.5 needs a different system revision + * ARM: IMX51: IPU irq handler deadlock fix + + [ Tim Gardner ] + + * [Config] Enabled CONFIG_CAN=m + - LP: #327243 + * [Config] Enabled CONFIG_SERIAL=m + - LP: #397189 + + -- Tim Gardner Fri, 24 Jul 2009 06:19:10 -0600 + +linux (2.6.31-4.21) karmic; urgency=low + + [ Amit Kucheria ] + + * dm-raid-4-5: Add missing brackets around test_bit() + + [ John Johansen ] + + * AppArmor: Fix change_profile failing lpn401931 + * AppArmor: Fix determination of forced AUDIT messages. + * AppArmor: Fix oops in auditing of the policy interface offset + + -- Andy Whitcroft Thu, 23 Jul 2009 19:18:30 +0100 + +linux (2.6.31-4.20) karmic; urgency=low + + [ Andy Whitcroft ] + + * SAUCE: iscsitarget -- update to SVN revision r214 + * SAUCE: iscsitarget -- renable driver + * [Config] consolidate lpia/lpia and i386/generic configs + * [Config] enable CRYPTO modules for all architectures + * [Config] enable cryptoloop + * [Config] enable various filesystems for armel + * [Config] sync i386 generic and generic-pae + * [Config] add the 386 (486 processors and above) flavour + * [Config] re-set DEFAULT_MMAP_MIN_ADDR + - LP: #399914 + * add genconfigs/genportsconfigs to extract the built configs + * updateconfigs -- alter concatenation order allow easier updates + * intelfb -- INTELFB now conflicts with DRM_I915 + * printchanges -- rebase tree does not have stable tags use changelog + * AppArmor: fix argument size missmatch on 64 bit builds + + [ Ike Panhc ] + + * Ship bnx2x firmware in nic-modules udeb + - LP: #360966 + + [ Jeff Mahoney ] + + * AppArmor: fix build failure on ia64 + + [ John Johansen ] + + * AppArmour: ensure apparmor enabled parmater is off if AppArmor fails to + initialize. + * AppArmour: fix auditing of domain transitions to include target profile + information + * AppArmor: fix C99 violation + * AppArmor: revert reporting of create to write permission. + * SAUCE: Add config option to set a default LSM + * [Config] enable AppArmor by default + * AppArmor: Fix NULL pointer dereference oops in profile attachment. + + [ Keith Packard ] + + * SAUCE: drm/i915: Allow frame buffers up to 4096x4096 on 915/945 class + hardware + - LP: #351756 + + [ Luke Yelavich ] + + * [Config] add .o files found in arch/powerpc/lib to all powerpc kernel + header packages + - LP: #355344 + + [ Michael Casadevall ] + + * [Config] update SPARC config files to allow success build + + [ Scott James Remnant ] + + * SAUCE: trace: add trace_event for the open() syscall + + [ Stefan Bader ] + + * SAUCE: jfs: Fix early release of acl in jfs_get_acl + - LP: #396780 + + [ Tim Gardner ] + + * [Upstream] Fix Soltech TA12 volume hotkeys not sending key release + - LP: #397499 + * [Upstream] USB Option driver - Add USB ID for Novatel MC727/U727/USB727 + refresh + - LP: #365291 + * [Config] SSB/B44 are common across all arches/flavours. + + [ Upstream ] + + * Rebased to 2.6.31-rc4 + + -- Andy Whitcroft Thu, 23 Jul 2009 08:41:39 +0100 + +linux (2.6.31-3.19) karmic; urgency=low + + [ Andy Whitcroft ] + + * Revert "[Config] Disabled NDISWRAPPER" + * ndiswrapper -- fix i386 compilation failures on cmpxchg8b + * AUFS -- export various core functions + * AUFS -- export various core functions -- fixes + * AUFS -- core filesystem + * AUFS -- track changes in v2.6.31 + * [Config] Enable AUFS + * droppped 'iwl3945: do not send scan command if channel count zero' as it + is already upstream but failed to auto-drop on rebase. + + [ Eric Paris ] + + * SAUCE: fsnotify: use def_bool in kconfig instead of letting the user + choose + * SAUCE: inotify: check filename before dropping repeat events + * SAUCE: fsnotify: fix inotify tail drop check with path entries + + -- Andy Whitcroft Tue, 14 Jul 2009 12:52:55 +0100 + +linux (2.6.31-3.18) karmic; urgency=low + + [ Andy Whitcroft ] + + * Revert "Add splice-2.6.23.patch from AUFS to export a symbol needed by + AUFS" + * Revert "Add put_filp.patch from AUFS to export a symbol needed by AUFS" + * Revert "Add sec_perm-2.6.24.patch from AUFS - export + security_inode_permission" + * clear out left over AUFS files and modifications + + [ Luke Yelavich ] + + * [Config] Enable CONFIG_USB_ISP116X_HCD on sparc + * SAUCE: Explicitly include header files to allow apparmor to build on + powerpc + * [Config] Enable CONFIG_BLK_DEV_IDECD on powerpc + + [ Tim Gardner ] + + * [Config] Dropped ubuntu/misc/wireless/acx + * [Config] Disabled NDISWRAPPER until the compile issues are fixed. + + [ Upstream ] + + * Rebased to 2.6.31-rc3 + + -- Andy Whitcroft Fri, 10 Jul 2009 18:59:33 +0100 + +linux (2.6.31-2.17) karmic; urgency=low + + [ Andy Whitcroft ] + + * [Config] CONFIG_BLK_DEV_CRYPTOLOOP=m for sparc + * compcache -- remove redundant Kconfig entries part 2 + * compcache -- clean up CCFLAGS declarations + * [Config] enable AppArmor + * AppArmor: fix operator precidence issue in as_path_link + + [ John Johansen ] + + * AppArmor security module + * AppArmor: Correct mapping of file permissions. + * AppArmor: Turn auditing of ptrace on + + [ Luke Yelavich ] + + * [Config] disable CONFIG_DM_RAID45 on powerpc + + -- Andy Whitcroft Fri, 10 Jul 2009 15:02:05 +0100 + +linux (2.6.31-2.16) karmic; urgency=low + + [ Andy Whitcroft ] + + * compcache -- remove redundant Kconfig entries + added ignore and ignore.modules for all arches since the compcache update + changes the modules names as well as some compcache ABI values. + + [ Manoj Iyer ] + + * SAUCE: updated dm-raid45 module version to 2009.04.24 (2.6.30-rc3) + * SAUCE: update compcache version to 0.5.3 + + [ Tim Gardner ] + + * [Config]: Fix sparc FTBS by adding ignore.modules + + -- Tim Gardner Mon, 06 Jul 2009 13:35:29 -0600 + +linux (2.6.31-2.15) karmic; urgency=low + + [ Andy Whitcroft ] + + * SAUCE: default ATI Radeon KMS to off until userspace catches up + * [Config] Update configs following rebase to 2.6.31-rc2 + * [Config] update ports configs following update to 2.6.31-rc2 + + [ Luke Yelavich ] + + * [Config] powerpc - Disable CONFIG_RDS + + [ Matt Zimmerman ] + + * Rename linux-doc-PKGVER to linux-doc and clean up its description + - LP: #382115 + + [ Upstream Kernel Changes ] + + * rebased to mainline 2.6.31-rc2 + + -- Andy Whitcroft Sat, 04 Jul 2009 17:39:13 +0100 + +linux (2.6.31-1.14) karmic; urgency=low + + [ Andy Whitcroft ] + + * update ndiswrapper to 1.55 + * remove leftovers of gfs + * [Config] powerpc: enable CONFIG_PPC_DISABLE_WERROR + + [ Luke Yelavich ] + + * [Config] re-enable and build the ide-pmac driver into powerpc kernels + * [Config] Build the ServerWorks Frodo / Apple K2 SATA driver into the + kernel + + [ Manoj Iyer ] + + * Remove snd-bt-sco ubuntu driver + + [ Michael Casadevall ] + + * [Config] updates ia64 config and d-i folders to allow succesful build + * [Config] Update powerpc and sparc for 2.6.31 + + [ Upstream Kernel Changes ] + + * intel-iommu: fix Identity Mapping to be arch independent + - LP: #384695 + * ACPI: video: prevent NULL deref in acpi_get_pci_dev() + + -- Andy Whitcroft Tue, 30 Jun 2009 17:47:32 +0100 + +linux (2.6.31-1.13) karmic; urgency=low + + [ Andy Whitcroft ] + + * REBASE: rebased to mainline 2.6.31-rc1 + - "UBUNTU: SAUCE: UHCI USB quirk for resume" + no longer applies, using deprecated interfaces, LPIA only, dropped + - "UBUNTU: SAUCE: Mask off garbage in Dell WMI scan code data" + changes now upstream, dropped + * [Config] Update configs following rebase to 2.6.31-rc1 + * [Config] update ports configs following update to 2.6.31-rc1 + + * [Config] disable broken staging driver CONFIG_STLC45XX + * SAUCE: fix compcache to use updates accessors + * [Config] disable staging driver CONFIG_VT6655 + * SAUCE: fix DRDB to use updates accessors + * [Disable] ndiswrapper needs update + * [Disable] LIRC I2C needs update + * [Disable] CONFIG_LENOVO_SL_LAPTOP needs update + * [Config] disable I2C_DESIGNWARE does not compile + * [Config] disable CONFIG_TLSUP for lpia + * [Config] disable CONFIG_FB_UDL for arm + * SAUCE: disable adding scsi headers to linux-libc-dev + + [ Mario Limonciello ] + + * SAUCE: Add LIRC drivers + + -- Andy Whitcroft Thu, 25 Jun 2009 12:06:22 +0100 + +linux (2.6.30-10.12) karmic; urgency=low + + [ Andy Whitcroft ] + + * [Config] split out the ports configs into their own family + * [Config] update configs following introduction of ports family + + [ Upstream Kernel Changes ] + + * Revert "Rename linux-doc-PKGVER to linux-doc and clean up its + description". Fixes linux-doc package name conflicts for now. + - LP: #382115 + + -- Tim Gardner Mon, 22 Jun 2009 09:17:14 -0600 + +linux (2.6.30-10.11) karmic; urgency=low + + [ Amit Kucheria ] + + * [Config] Comment splitconfig.pl and misc cleanup + * [Config] Rename all configs to the new naming scheme + * [Config] Splitconfig rework + * [Config] Rename scripts/misc/oldconfig to kernelconfig + * [Config] Fix build system for new config split + * [Config] Run updateconfigs after the splitconfig rework + + [ Andy Whitcroft ] + + * Revert "SAUCE: Default to i915.modeset=0 if CONFIG_DRM_I915_KMS=y" + * [Config] standardise CONFIG_STAGING=y + * [Config] standardise CONFIG_RD_LZMA=y + * [Config] CONFIG_PCI_IOV=y + * [Config] CONFIG_PCI_STUB=m + * [Config] merge kernel configs more agressively + + [ Colin Watson ] + + * [Config] Run kernel-wedge in $(builddir) rather than at the top level + * [Config] Add support for including firmware in udebs + * [Config] Ship bnx2 firmware in nic-modules udeb + - LP: #384861 + + [ Luke Yelavich ] + + * [Config] ports - Import of ports architectures into kernel packaging + infrastructure + * [Config] ports - Do not update ports kernel configurations by default + * [Config] ports - Disable ABI checking for ports architectures + * [Config] ports - Build drivers in ubuntu sub-directory on powerpc + * [Config] ports - Add control.d/vars.* files for ports architectures + * [Config] ports - Add ports architectures for linux-libc-dev + * [Config] ports - Create powerpc specific message-modules and + block-modules udebs + * [Config] ports - Add configuration files for ports architectures + + [ Manoj Iyer ] + + * [Config] Enable CONFIG_BLK_DEV_AEC62XX=m for amd64 and i386 + - LP: #329864 + + [ Michael Casadevall ] + + * [Config] ports - Fix compression of kernels + + [ Stefan Bader ] + + * [Upstream] mmc: prevent dangling block device from accessing stale + queues + - LP: #383668 + + [ Tim Gardner ] + + * [Config] Recommend grub-pc in linux-image + - LP: #385741 + * [Config] Implement i386 generic and generic-pae flavours + * [Config] ports - Add control info after integrating ports arches + * [Config] Removed auto-generated files from git + * [Config] Added netxen_nic to nic-modules + - LP: #389603 + + [ Matt Zimmerman ] + + * Rename linux-doc-PKGVER to linux-doc and clean up its description + - LP: #382115 + + -- Tim Gardner Mon, 15 Jun 2009 14:38:26 -0600 + +linux (2.6.30-9.10) karmic; urgency=low + + [ Andy Whitcroft ] + + * [Config] CONFIG_SECURITY_TOMOYO=y (amd64, i386, lpia) + * [Config] CONFIG_KEXEC_JUMP=y (amd64, lpia) + * [Config] CONFIG_LENOVO_SL_LAPTOP=m (amd64, lpia) + * [Config] CONFIG_POHMELFS_CRYPTO=y (i386, amd64) + * [Config] CONFIG_SERIAL_MAX3100=m (i386, amd64, lpia) + * [Config] CONFIG_VIDEO_GO7007=m (amd64, i386) + + [ Upstream Kernel Changes ] + + * rebased to 2.6.30 final + + -- Andy Whitcroft Fri, 05 Jun 2009 11:42:53 +0100 + +linux (2.6.30-8.9) karmic; urgency=low + + [ Andy Whitcroft ] + + * Config update removed the following options: + CONFIG_EDAC_AMD8111=m + CONFIG_EDAC_AMD8131=m + + [ Upstream Kernel Changes ] + + * rebased to 2.6.30-rc8 + + -- Andy Whitcroft Wed, 03 Jun 2009 09:21:13 +0100 + +linux (2.6.30-7.8) karmic; urgency=low + + [ Andy Whitcroft ] + + * Enabled NEW configration options: + Paravirtualization layer for spinlocks (PARAVIRT_SPINLOCKS) [N/y/?] Y + Cisco FNIC Driver (FCOE_FNIC) [N/m/y/?] M + + [ Upstream Kernel Changes ] + + * rebased to 2.6.30-rc7 + + -- Andy Whitcroft Sat, 23 May 2009 23:47:24 +0100 + +linux (2.6.30-6.7) karmic; urgency=low + + [ Andy Whitcroft ] + + * Dropped: UBUNTU: SAUCE: input: Blacklist digitizers from joydev.c (now + upstream) + + [ Upstream Kernel Changes ] + + * rebased to 2.6.30-rc6 + + -- Andy Whitcroft Mon, 18 May 2009 18:05:54 +0100 + +linux (2.6.30-5.6) karmic; urgency=low + + [ Tim Gardner ] + + * [Config] Enable Keyspan USB serial device firmware in kernel module + - LP: #334285 + + [ Upstream Kernel Changes ] + + * rebased to 2.6.30-rc5 + + -- Tim Gardner Mon, 11 May 2009 12:02:16 -0600 + +linux (2.6.30-4.5) karmic; urgency=low + + [ Colin Watson ] + + * Build-Conflict with findutils (= 4.4.1-1ubuntu1), to avoid + /usr/include/asm/* going missing + - LP: #373214 + + -- Stefan Bader Fri, 08 May 2009 11:09:08 +0200 + +linux (2.6.30-3.4) karmic; urgency=low + + [ Kees Cook ] + + * SAUCE: [x86] implement cs-limit nx-emulation for ia32 + - LP: #369978 + + [ Stefan Bader ] + + * SAUCE: input: Blacklist digitizers from joydev.c + - LP: #300143 + + -- Tim Gardner Fri, 01 May 2009 14:00:42 -0600 + +linux (2.6.30-2.3) karmic; urgency=low + + [ Tim Gardner ] + + * [Config] Enabled CC_STACKPROTECTOR=y for all x86en + - LP: #369152 + * SAUCE: Default to i915_modeset=0 if CONFIG_DRM_I915_KMS=y + * [Config] CONFIG_DRM_I915_KMS=y + * [Config] Set CONFIG_SECURITY_DEFAULT_MMAP_MIN_ADDR to appropriate ARCH + minimums + + [ Upstream Kernel Changes ] + + * rebased to 2.6.30-rc4 + + -- Tim Gardner Thu, 30 Apr 2009 09:17:05 -0600 + +linux (2.6.30-1.2) karmic; urgency=low + + [ Tim Gardner ] + + * [Config] armel: disable staging drivers, fixes FTBS + * [Config] armel imx51: Disable CONFIG_MTD_NAND_MXC, fixes FTBS + + [ Upstream Kernel Changes ] + + * mpt2sas: Change reset_type enum to avoid namespace collision. + Submitted upstream. + + -- Tim Gardner Tue, 28 Apr 2009 16:54:41 -0600 + +linux (2.6.30-1.1) karmic; urgency=low + + * Initial release after rebasing against v2.6.30-rc3 + + -- Tim Gardner Thu, 12 Mar 2009 19:16:07 -0600 + --- linux-azure-5.8-5.8.0.orig/debian/cloud-tools/hv_get_dhcp_info +++ linux-azure-5.8-5.8.0/debian/cloud-tools/hv_get_dhcp_info @@ -0,0 +1,55 @@ +#!/bin/bash + +# This example script retrieves the DHCP state of a given interface. +# In the interest of keeping the KVP daemon code free of distro specific +# information; the kvp daemon code invokes this external script to gather +# DHCP setting for the specific interface. +# +# Input: Name of the interface +# +# Output: The script prints the string "Enabled" to stdout to indicate +# that DHCP is enabled on the interface. If DHCP is not enabled, +# the script prints the string "Disabled" to stdout. +# +# Each Distro is expected to implement this script in a distro specific +# fashion. + +#set -x + +IF_FILE="/etc/network/interfaces" +NMCMD="nmcli" + +function checknetworkmanager { + #Assumes if $NMCMD exists, inteface exists and interface is not + # in $IF_FILE then dhcp is being used by NM + if hash $NMCMD >/dev/null 2>&1 ; then + if $NMCMD dev status |grep -q $1 ; then + echo "Enabled" + else + echo "Disabled" + fi + else + #Give up + echo "Disabled" + fi +} + +if [ -z $1 ] ; then echo "Disabled"; exit; fi + +if [ -e $IF_FILE ]; then + if grep -v -e "^#" $IF_FILE|grep -q $1 ; then + #interface exists so + if grep -q -e $1\.\*dhcp $IF_FILE; then + echo "Enabled"; exit; + else + echo "Disabled"; exit; + fi + else + checknetworkmanager $1 + exit + fi +else + checknetworkmanager $1 + exit +fi + --- linux-azure-5.8-5.8.0.orig/debian/cloud-tools/hv_get_dns_info +++ linux-azure-5.8-5.8.0/debian/cloud-tools/hv_get_dns_info @@ -0,0 +1,13 @@ +#!/bin/bash + +# This example script parses /etc/resolv.conf to retrive DNS information. +# In the interest of keeping the KVP daemon code free of distro specific +# information; the kvp daemon code invokes this external script to gather +# DNS information. +# This script is expected to print the nameserver values to stdout. +# Each Distro is expected to implement this script in a distro specific +# fashion. For instance on Distros that ship with Network Manager enabled, +# this script can be based on the Network Manager APIs for retrieving DNS +# entries. + +cat /etc/resolv.conf 2>/dev/null | awk '/^nameserver/ { print $2 }' --- linux-azure-5.8-5.8.0.orig/debian/cloud-tools/hv_set_ifconfig +++ linux-azure-5.8-5.8.0/debian/cloud-tools/hv_set_ifconfig @@ -0,0 +1,288 @@ +#!/usr/bin/python3 +# +# hv_set_ifconfig -- take the hv_kvp_daemon generated configuration +# file and apply it to the Ubuntu configuration. +# + +# CONFIG example: +# HWADDR=11:22:33:44:55:66 +# DEVICE=foo1 +# DHCP=yes + +# CONFIG example: +# HWADDR=11:22:33:44:55:66 +# DEVICE=foo1 +# IPADDR=192.168.99.10 +# GATEWAY=192.168.99.1 +# DNS1=192.168.88.250 +# IPADDR2=192.168.99.11 +# IPV6ADDR=2001:DB8:99::10 +# IPV6NETMASK=64 +# IPV6_DEFAULTGW=2001:DB8:99::10 + +# set interfaces in hv_kvp_daemon style +import fileinput +import sys +import errno +import os +import shutil +import tempfile +import subprocess + +if_filename="/etc/network/interfaces" + +# Drop our output (XXX?) +sys.stdout = open(os.devnull, 'w') +sys.stderr = open(os.devnull, 'w') + +# Confirm we can open the network configuration. +try: + if_file=open(if_filename,"r+") +except IOError as e: + exit(e.errno) +else: + if_file.close() + +# Usage: hv_set_ifconfig +if len(sys.argv) != 2 : + exit(errno.EINVAL) + +# +# Here is the format of the ip configuration file: +# +# HWADDR=macaddr +# DEVICE=interface name +# BOOTPROTO= (where is "dhcp" if DHCP is configured +# or "none" if no boot-time protocol should be used) +# +# IPADDR0=ipaddr1 +# IPADDR1=ipaddr2 +# IPADDRx=ipaddry (where y = x + 1) +# +# NETMASK0=netmask1 +# NETMASKx=netmasky (where y = x + 1) +# +# GATEWAY=ipaddr1 +# GATEWAYx=ipaddry (where y = x + 1) +# +# DNSx=ipaddrx (where first DNS address is tagged as DNS1 etc) +# +# IPV6 addresses will be tagged as IPV6ADDR, IPV6 gateway will be +# tagged as IPV6_DEFAULTGW and IPV6 NETMASK will be tagged as +# IPV6NETMASK. +# + +kvp=dict(line.strip().split("=") for line in fileinput.input()) + +# Setting the hwaddress to something azure is not expecting is fatal +# to networking. +if not "HWADDR" in kvp : + exit(errno.EPROTO) + +# Confirm we have a device specified. +if not "DEVICE" in kvp : + exit(1) + +autolist = [] +output=[] +basename=kvp["DEVICE"] + +# DNS entries will go with the first interface and there can be a max +# of three. These will be emitted with the first interface. +dns = [] +for count in (1, 2, 3): + key = "DNS" + str(count) + if key in kvp: + dns += [kvp[key]] +dns_emitted = False + +# IPV4 may either be dhcp or static. +if ("DHCP" in kvp and kvp["DHCP"] == "yes") or \ + ("BOOTPROTO" in kvp and kvp["BOOTPROTO"] == "dhcp"): + autolist.append(basename) + output += ["iface " + basename + " inet dhcp"] + output += [""] +else: + # Matchup the interface specific lines + + # No real max for the number of interface + aliases ... + # only required is the address (but mate everything up that comes in. + + # IPv4 -- ensure we sort by numeric suffixes. + v4names = [ int(name[6:]) for name in kvp.keys() if name.startswith("IPADDR") ] + v4names.sort() + + for if_count in v4names: + ifname = basename + which = str(if_count) + + if if_count: + ifname += ":" + str(if_count) + which_gw = which + else: + which_gw = "" + + if not ifname in autolist: + autolist += [ifname] + + output += [ "iface " + ifname + " inet static" ] + output += [ "\t" + "address " + kvp["IPADDR" + which] ] + if "NETMASK" + which in kvp: + output += [ "\tnetmask " + kvp["NETMASK" + which] ] + if "GATEWAY" + which_gw in kvp: + output += ["\tgateway " + kvp["GATEWAY" + which_gw]] + + if not dns_emitted: + dns_emitted = True + output += ["\tdns-nameservers " + ' '.join(dns)] + output += [""] + +# IPv6 requires a netmask +# If an ipv6 exists, you'll want to turn off /proc/sys/net/ipv6/conf/all/autoconf with +# echo 0 > /proc/sys/net/ipv6/conf/all/autoconf +v6names = [ int(name[8:]) for name in kvp.keys() if name.startswith("IPV6ADDR") ] +v6names.sort() + +for if6_count in v6names: + ifname = basename + which = str(if6_count) + + if if6_count: + ifname += ":" + str(if6_count) + which_gw = which + else: + which_gw = "" + + if not ifname in autolist: + autolist += [ifname] + + if "IPV6NETMASK" + which in kvp: + output += [ "iface " + ifname + " inet6 static"] + output += [ "\taddress " + kvp["IPV6ADDR" + which]] + output += [ "\tnetmask " + kvp["IPV6NETMASK" + which]] + if "IPV6_DEFAULTGW" + which_gw in kvp: + output += [ "\tgateway " + kvp["IPV6_DEFAULTGW" + which_gw] ] + if not dns_emitted: + dns_emitted = True + output += ["\tdns-nameservers " + ' '.join(dns)] + output += [""] + +# Mark this new interface for automatic up. +if len(autolist): + output = ["auto "+" ".join(autolist)] + output + +print("===================================") +print(output) +print("===================================") + + +# Time to clean out the existing interface file + +# Markers. +start_mark = "# The following stanza(s) added by hv_set_ifconfig" +end_mark = "#End of hv_set_ifconfig stanzas" + +f=open(if_filename,"r") +flines=f.readlines() +f.close() +newfile=[] +pitchstanza=0 +inastanza=0 +stanza=[] +prev_line=None +for line in flines: + if line.startswith("auto"): + if inastanza: + if not pitchstanza: + newfile.extend(stanza) + stanza=[] + inastanza=0 + newline="" + autoline=line.strip().split(" ") + for word in autoline: + if (not word == basename) and (not word.startswith(basename+":")): + newline+=word + " " + newline = newline.strip() + if not newline == "auto": + newfile += [newline.strip()] + elif line.startswith(("iface","mapping","source")): + '''Read a stanza''' + '''A Stanza can also start with allow- ie allow-hotplug''' + if inastanza: + if not pitchstanza: + newfile.extend(stanza) + stanza=[] + inastanza=1 + pitchstanza=0 + autoline=line.strip().split(" ") + for word in autoline: + if (word == basename) or (word.startswith(basename+":")): + pitchstanza=1 + if not pitchstanza: + stanza+=[line.strip()] + elif line.strip() in (start_mark, end_mark): + if inastanza: + if not pitchstanza: + newfile.extend(stanza) + stanza=[] + inastanza = 0 + pitchstanza = 0 + # Deduplicate markers. + if line != prev_line: + newfile += [line.strip()] + else: + if inastanza: + if not pitchstanza: + stanza+=[line.strip()] + else: + if not pitchstanza: + newfile += [line.strip()] + prev_line=line + +# Include pending stanza if any. +if inastanza and not pitchstanza: + newfile.extend(stanza) + + +def emit(line): + print(line) + output = line + "\n" + os.write(fd, output.encode('utf-8')) + +# Insert the new output at the end and inside the existing markers if found. +emitted = False +fd, path = tempfile.mkstemp() +for line in newfile: + if line == end_mark: + emit("\n".join(output)) + emitted = True + emit(line) +if not emitted: + emit(start_mark) + emit("\n".join(output)) + emit(end_mark) +os.close(fd) + +shutil.copy(path,if_filename) +os.chmod(if_filename,0o644) + +#print("TMPFILE is at: " + path) +#print("Copied file is at: " + if_filename) + +try: + retcode = subprocess.call("ifdown "+basename , shell=True) + if retcode < 0: + print("Child was terminated by signal", -retcode, file=sys.stderr) + else: + print("Child returned", retcode, file=sys.stderr) +except OSError as e: + print("Execution failed:", e, file=sys.stderr) + +try: + retcode = subprocess.call("ifup "+basename , shell=True) + if retcode < 0: + print("Child was terminated by signal", -retcode, file=sys.stderr) + else: + print("Child returned", retcode, file=sys.stderr) +except OSError as e: + print("Execution failed:", e, file=sys.stderr) --- linux-azure-5.8-5.8.0.orig/debian/commit-templates/bumpabi +++ linux-azure-5.8-5.8.0/debian/commit-templates/bumpabi @@ -0,0 +1,3 @@ +UBUNTU: Bump ABI + +Ignore: yes --- linux-azure-5.8-5.8.0.orig/debian/commit-templates/config-updates +++ linux-azure-5.8-5.8.0/debian/commit-templates/config-updates @@ -0,0 +1,15 @@ +# +# This template is used for commit messages that don't need to +# show up in debian/changelog. Administrative stuff like config +# updates, ABI bumps, etc. Setting 'Ignore: yes' prevents +# 'debian/rules insertchanges' from inserting this commit meesage +# as a changelog entry. +# +# Please give a one-line description of the config change followed +# by a detailed explanation if necessary + +UBUNTU: [Config] XXXX + +# BugLink: http://bugs.launchpad.net/bugs/ +# Ignore: yes +# Other text below here. --- linux-azure-5.8-5.8.0.orig/debian/commit-templates/external-driver +++ linux-azure-5.8-5.8.0/debian/commit-templates/external-driver @@ -0,0 +1,20 @@ +# Ubuntu external driver commit. +# +# NOTE: This gets reformatted for README.Ubuntu-External-Drivers and +# debian/changelog. +# +# This is only needed when a driver is added, updated or removed. It is +# not needed when patches or fixes are applied to the driver. If the +# driver is being removed, add the line: +# +# Removing: yes +# +# to the commit, and you can remove all other tags (except UBUNTU:). +# +UBUNTU: + +ExternalDriver: +Description: +Url: +Mask: +Version: --- linux-azure-5.8-5.8.0.orig/debian/commit-templates/missing-modules +++ linux-azure-5.8-5.8.0/debian/commit-templates/missing-modules @@ -0,0 +1,3 @@ +UBUNTU: build/modules: Add modules that have intentionally gone missing + +Ignore: yes --- linux-azure-5.8-5.8.0.orig/debian/commit-templates/newrelease +++ linux-azure-5.8-5.8.0/debian/commit-templates/newrelease @@ -0,0 +1,3 @@ +UBUNTU: Start new release + +Ignore: yes --- linux-azure-5.8-5.8.0.orig/debian/commit-templates/sauce-patch +++ linux-azure-5.8-5.8.0/debian/commit-templates/sauce-patch @@ -0,0 +1,40 @@ +# Ubuntu commit template. +# +# NOTE: This gets reformatted for debian/changelog +# +# +# SAUCE refers to the fact that this patch might not go upstream, but we need to +# carry it to successive releases. In most cases you DONOT want to use this +# template. +# +# An example of a SAUCE patch is the ACPI DSDT-in-initramfs patch which has been +# refused upstream, but still provides useful functionality to users with broken +# BIOSes. +# +#------------------------------------------------------------------------- +# +# The initial UBUNTU is a flag that this is an Ubuntu commit. It will be +# referenced to the Author in the debian/changelog entry. +# +# The text following is the short message that will be placed in the +# changelog. Extra text on the following lines will be ignored, but left +# in the git commit. Lines with # will be ignored in the commit. +# +# OriginalAuthor allows for alternate attribution. +# +# OriginalLocation allows for a URL or description of where the patch came +# from. +# +# BugLink is a URL to a Malone bug. +# +# Ignore: yes will keep this commit from showing up in the changelog. +# +UBUNTU: SAUCE: + + + +# OriginalAuthor: +# OriginalLocation: +# BugLink: http://bugs.launchpad.net/bugs/ +# Ignore: yes +# Other text below here. --- linux-azure-5.8-5.8.0.orig/debian/commit-templates/upstream-patch +++ linux-azure-5.8-5.8.0/debian/commit-templates/upstream-patch @@ -0,0 +1,27 @@ +# Ubuntu commit template. +# +# NOTE: This gets reformatted for debian/changelog +# +# The initial UBUNTU is a flag that this is an Ubuntu commit. It will be +# referenced to the Author in the debian/changelog entry. +# +# The text following is the short message that will be placed in the +# changelog. Extra text on the following lines will be ignored, but left +# in the git commit. Lines with # will be ignored in the commit. +# +# OriginalAuthor allows for alternate attribution. +# +# OriginalLocation allows for a URL or description of where the patch came +# from. +# +# BugLink is a URL to a Malone bug. +# +# Ignore: yes will keep this commit from showing up in the changelog. +# +UBUNTU: [Upstream] + +# OriginalAuthor: +# OriginalLocation: +# BugLink: http://bugs.launchpad.net/bugs/ +# Ignore: yes +# Other text below here. --- linux-azure-5.8-5.8.0.orig/debian/control +++ linux-azure-5.8-5.8.0/debian/control @@ -0,0 +1,234 @@ +Source: linux-azure-5.8 +Section: devel +Priority: optional +Maintainer: Ubuntu Kernel Team +Standards-Version: 3.9.4.0 +Build-Depends: + debhelper-compat (= 10), + dh-systemd, + cpio, + kernel-wedge, + kmod , + libcap-dev , + makedumpfile [amd64] , + libelf-dev , + libnewt-dev , + libiberty-dev , + rsync , + libdw-dev , + libpci-dev , + pkg-config , + flex , + bison , + libunwind8-dev [amd64 arm64 armhf ppc64el] , + liblzma-dev , + openssl , + libssl-dev , + libaudit-dev , + bc , + gawk , + libudev-dev , + autoconf , + automake , + libtool , + uuid-dev , + libnuma-dev [amd64 arm64 ppc64el s390x] , + dkms , + curl , + dwarves, +Build-Depends-Indep: + xmlto , + docbook-utils , + ghostscript , + fig2dev , + bzip2 , + sharutils , + asciidoc , + python3-sphinx , + python3-sphinx-rtd-theme , + python3-docutils , +Vcs-Git: git://git.launchpad.net/~canonical-kernel/ubuntu/+source/linux-azure/+git/focal +XS-Testsuite: autopkgtest +#XS-Testsuite-Depends: gcc-4.7 binutils + +Package: linux-azure-5.8-headers-5.8.0-1030 +Build-Profiles: +Architecture: all +Multi-Arch: foreign +Section: devel +Priority: optional +Depends: ${misc:Depends}, coreutils +Description: Header files related to Linux kernel version 5.8.0 + This package provides kernel header files for version 5.8.0, for sites + that want the latest kernel headers. Please read + /usr/share/doc/linux-azure-5.8-headers-5.8.0-1030/debian.README.gz for details + +Package: linux-azure-5.8-tools-5.8.0-1030 +Build-Profiles: +Architecture: amd64 +Section: devel +Priority: optional +Depends: ${misc:Depends}, ${shlibs:Depends}, linux-tools-common +Description: Linux kernel version specific tools for version 5.8.0-1030 + This package provides the architecture dependant parts for kernel + version locked tools (such as perf and x86_energy_perf_policy) for + version 5.8.0-1030 on + 64 bit x86. + You probably want to install linux-tools-5.8.0-1030-. + +Package: linux-azure-5.8-cloud-tools-5.8.0-1030 +Build-Profiles: +Architecture: amd64 +Section: devel +Priority: optional +Depends: ${misc:Depends}, ${shlibs:Depends}, linux-cloud-tools-common +Description: Linux kernel version specific cloud tools for version 5.8.0-1030 + This package provides the architecture dependant parts for kernel + version locked tools for cloud tools for version 5.8.0-1030 on + 64 bit x86. + You probably want to install linux-cloud-tools-5.8.0-1030-. + + + +Package: linux-image-unsigned-5.8.0-1030-azure +Build-Profiles: +Architecture: amd64 +Section: kernel +Priority: optional +Provides: linux-image, fuse-module, aufs-dkms, kvm-api-4, redhat-cluster-modules, ivtv-modules, virtualbox-guest-modules [amd64], ${linux:rprovides} +Depends: ${misc:Depends}, ${shlibs:Depends}, kmod, linux-base (>= 4.5ubuntu1~16.04.1), linux-modules-5.8.0-1030-azure +Recommends: grub-pc [amd64] | grub-efi-amd64 [amd64] | grub-efi-ia32 [amd64] | grub [amd64] +Breaks: flash-kernel (<< 3.0~rc.4ubuntu64) [arm64] +Conflicts: linux-image-5.8.0-1030-azure +Suggests: fdutils, linux-azure-5.8-doc-5.8.0 | linux-azure-5.8-source-5.8.0, linux-azure-5.8-tools, linux-headers-5.8.0-1030-azure, initramfs-tools | linux-initramfs-tool +Description: Linux kernel image for version 5.8.0 on 64 bit x86 SMP + This package contains the unsigned Linux kernel image for version 5.8.0 on + 64 bit x86 SMP. + . + Supports Azure processors. + . + Geared toward Azure systems. + . + You likely do not want to install this package directly. Instead, install + the linux-azure meta-package, which will ensure that upgrades work + correctly, and that supporting packages are also installed. + +Package: linux-modules-5.8.0-1030-azure +Build-Profiles: +Architecture: amd64 +Section: kernel +Priority: optional +Depends: ${misc:Depends}, ${shlibs:Depends}, linux-base-sgx +Built-Using: ${linux:BuiltUsing} +Description: Linux kernel extra modules for version 5.8.0 on 64 bit x86 SMP + Contains the corresponding System.map file, the modules built by the + packager, and scripts that try to ensure that the system is not left in an + unbootable state after an update. + . + Supports Azure processors. + . + Geared toward Azure systems. + . + You likely do not want to install this package directly. Instead, install + the linux-azure meta-package, which will ensure that upgrades work + correctly, and that supporting packages are also installed. + +Package: linux-modules-extra-5.8.0-1030-azure +Build-Profiles: +Architecture: amd64 +Section: kernel +Priority: optional +Depends: ${misc:Depends}, ${shlibs:Depends}, linux-image-5.8.0-1030-azure | linux-image-unsigned-5.8.0-1030-azure, crda | wireless-crda +Description: Linux kernel extra modules for version 5.8.0 on 64 bit x86 SMP + This package contains the Linux kernel extra modules for version 5.8.0 on + 64 bit x86 SMP. + . + Also includes the corresponding System.map file, the modules built by the + packager, and scripts that try to ensure that the system is not left in an + unbootable state after an update. + . + Supports Azure processors. + . + Geared toward Azure systems. + . + You likely do not want to install this package directly. Instead, install + the linux-azure meta-package, which will ensure that upgrades work + correctly, and that supporting packages are also installed. + +Package: linux-headers-5.8.0-1030-azure +Build-Profiles: +Architecture: amd64 +Section: devel +Priority: optional +Depends: ${misc:Depends}, linux-azure-5.8-headers-5.8.0-1030, ${shlibs:Depends} +Provides: linux-headers, linux-headers-3.0 +Description: Linux kernel headers for version 5.8.0 on 64 bit x86 SMP + This package provides kernel header files for version 5.8.0 on + 64 bit x86 SMP. + . + This is for sites that want the latest kernel headers. Please read + /usr/share/doc/linux-headers-5.8.0-1030/debian.README.gz for details. + +Package: linux-image-unsigned-5.8.0-1030-azure-dbgsym +Build-Profiles: +Architecture: amd64 +Section: devel +Priority: optional +Depends: ${misc:Depends} +Provides: linux-debug +Description: Linux kernel debug image for version 5.8.0 on 64 bit x86 SMP + This package provides the unsigned kernel debug image for version 5.8.0 on + 64 bit x86 SMP. + . + This is for sites that wish to debug the kernel. + . + The kernel image contained in this package is NOT meant to boot from. It + is uncompressed, and unstripped. This package also includes the + unstripped modules. + +Package: linux-tools-5.8.0-1030-azure +Build-Profiles: +Architecture: amd64 +Section: devel +Priority: optional +Depends: ${misc:Depends}, linux-azure-5.8-tools-5.8.0-1030 +Description: Linux kernel version specific tools for version 5.8.0-1030 + This package provides the architecture dependant parts for kernel + version locked tools (such as perf and x86_energy_perf_policy) for + version 5.8.0-1030 on + 64 bit x86. + +Package: linux-cloud-tools-5.8.0-1030-azure +Build-Profiles: +Architecture: amd64 +Section: devel +Priority: optional +Depends: ${misc:Depends}, linux-azure-5.8-cloud-tools-5.8.0-1030 +Description: Linux kernel version specific cloud tools for version 5.8.0-1030 + This package provides the architecture dependant parts for kernel + version locked tools for cloud for version 5.8.0-1030 on + 64 bit x86. + +Package: linux-udebs-azure +Build-Profiles: +XC-Package-Type: udeb +Section: debian-installer +Architecture: amd64 +Depends: ${udeb:Depends} +Description: Metapackage depending on kernel udebs + This package depends on the all udebs that the kernel build generated, + for easier version and migration tracking. + + +Package: linux-buildinfo-5.8.0-1030-azure +Build-Profiles: +Architecture: amd64 +Section: kernel +Priority: optional +Depends: ${misc:Depends}, ${shlibs:Depends} +Built-Using: ${linux:BuiltUsing} +Description: Linux kernel buildinfo for version 5.8.0 on 64 bit x86 SMP + This package contains the Linux kernel buildinfo for version 5.8.0 on + 64 bit x86 SMP. + . + You likely do not want to install this package. --- linux-azure-5.8-5.8.0.orig/debian/control.d/flavour-buildinfo.stub +++ linux-azure-5.8-5.8.0/debian/control.d/flavour-buildinfo.stub @@ -0,0 +1,13 @@ + +Package: linux-buildinfo-PKGVER-ABINUM-FLAVOUR +Build-Profiles: +Architecture: ARCH +Section: kernel +Priority: optional +Depends: ${misc:Depends}, ${shlibs:Depends} +Built-Using: ${linux:BuiltUsing} +Description: Linux kernel buildinfo for version PKGVER on DESC + This package contains the Linux kernel buildinfo for version PKGVER on + DESC. + . + You likely do not want to install this package. --- linux-azure-5.8-5.8.0.orig/debian/copyright +++ linux-azure-5.8-5.8.0/debian/copyright @@ -0,0 +1,29 @@ +This is the Ubuntu prepackaged version of the Linux kernel. +Linux was written by Linus Torvalds +and others. + +This package was put together by the Ubuntu Kernel Team, from +sources retrieved from upstream linux git. +The sources may be found at most Linux ftp sites, including +ftp://ftp.kernel.org/pub/linux/kernel/ + +This package is currently maintained by the +Ubuntu Kernel Team + +Linux is copyrighted by Linus Torvalds and others. + + This program is free software; you can redistribute it and/or modify + it under the terms of the GNU General Public License as published by + the Free Software Foundation; version 2 dated June, 1991. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License + along with this program; if not, write to the Free Software + Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA + +On Ubuntu Linux systems, the complete text of the GNU General +Public License v2 can be found in `/usr/share/common-licenses/GPL-2'. --- linux-azure-5.8-5.8.0.orig/debian/debian.env +++ linux-azure-5.8-5.8.0/debian/debian.env @@ -0,0 +1 @@ +DEBIAN=debian.azure-5.8 --- linux-azure-5.8-5.8.0.orig/debian/dkms-versions +++ linux-azure-5.8-5.8.0/debian/dkms-versions @@ -0,0 +1,7 @@ +zfs-linux 0.8.4-1ubuntu11.2 +nvidia-graphics-drivers-390 390.141-0ubuntu0.20.10.2 +nvidia-graphics-drivers-450 450.102.04-0ubuntu0.20.10.2 transition=nvidia-graphics-drivers-440 +nvidia-graphics-drivers-460 460.56-0ubuntu0.20.10.1 transition=nvidia-graphics-drivers-455 transition=nvidia-graphics-drivers-435 +nvidia-graphics-drivers-418-server 418.181.07-0ubuntu0.20.10.2 +nvidia-graphics-drivers-450-server 450.102.04-0ubuntu0.20.10.2 transition=nvidia-graphics-drivers-440-server +nvidia-graphics-drivers-460-server 460.32.03-0ubuntu0.20.10.2 --- linux-azure-5.8-5.8.0.orig/debian/docs/README.inclusion-list +++ linux-azure-5.8-5.8.0/debian/docs/README.inclusion-list @@ -0,0 +1,51 @@ +This README describes the reason for, and the use of, module +inclusion lists. + +The original Hardy release had the notion of sub-flavours, +e.g., a flavour that was constructed as a subset of an existing flavour. +For example, the virtual flavour was extracted from the server flavour using +a subset of the server flavour modules. However, there were some difficult +mainteneance issues with regard to packaging, make rules, and scripts. This +re-implementation of the sub-flavours philosophy is hopefully simpler, +and retrofitable to all releases. + +A module inclusion list looks at the problem of of constructing a package +from the perspective of what modules do we _want_ in the package, as opposed +to what modules we _don't_ want. As the kernel matures, more and more devices are added +which makes the problem of configuration maintenance a real pain in the ass. +If we took the approach of disabling all of the config options that we don't want, +then the differences between flavours will quickly become quite large, making +it difficult to quickly compare the individual flavour configs. Each time a +new config option is added then we also have to make a decision about disabling in +order to continue to keep the minimal number of modules. + +A module inclusion list is applied on a per-flavour basis. For example, +debian./control.d/${flavour}.inclusion-list. For example, the +config for virtual is very close to server and generic, but the inclusion list +causes the virtual package to be constructed with _only_ the modules described +in the inclusion list. + +The inclusion list format is a simple bash regular expression list of files. For example, + +arch/*/{crypto,kernel,oprofile} +drivers/acpi/* +drivers/ata/ahci.ko + +These 3 regular expression forms are suitable for expansion by bash and as inputs to 'find'. +See debian/scripts/module-inclusion for details. + +There are 2 log files created as a side effect of the application of the module +inclusion list; $(flavour).inclusion-list.log and $(flavour).depmod.log. + +$(flavour).inclusion-list.log : This log is created while the inclusion list +modules are being copied. If any are missing, then those warnings go in this log. +While its not considered a fatal error, you should endevour to correct your inclusion +list such that there are no missing modules. + +$(flavour).depmod.log : The log is created as a result of running depmod on the +resulting set of modules. If there are missing symbols then you'll find that information +here. Again, you should modify your inclusion list such that there are no missing +symbols. + +Tim Gardner +June 2, 2010 --- linux-azure-5.8-5.8.0.orig/debian/gbp.conf +++ linux-azure-5.8-5.8.0/debian/gbp.conf @@ -0,0 +1,2 @@ +[buildpackage] +debian-tag = Ubuntu-%(version)s --- linux-azure-5.8-5.8.0.orig/debian/linux-cloud-tools-common.hv-fcopy-daemon.service +++ linux-azure-5.8-5.8.0/debian/linux-cloud-tools-common.hv-fcopy-daemon.service @@ -0,0 +1,14 @@ +# On Azure/Hyper-V systems start the hv_fcopy_daemon +# +# author "Andy Whitcroft " +[Unit] +Description=Hyper-V File Copy Protocol Daemon +ConditionVirtualization=microsoft +ConditionPathExists=/dev/vmbus/hv_fcopy +BindsTo=sys-devices-virtual-misc-vmbus\x21hv_fcopy.device + +[Service] +ExecStart=/usr/sbin/hv_fcopy_daemon -n + +[Install] +WantedBy=multi-user.target --- linux-azure-5.8-5.8.0.orig/debian/linux-cloud-tools-common.hv-fcopy-daemon.udev +++ linux-azure-5.8-5.8.0/debian/linux-cloud-tools-common.hv-fcopy-daemon.udev @@ -0,0 +1 @@ +SUBSYSTEM=="misc", KERNEL=="vmbus/hv_fcopy", TAG+="systemd", ENV{SYSTEMD_WANTS}+="hv-fcopy-daemon.service" --- linux-azure-5.8-5.8.0.orig/debian/linux-cloud-tools-common.hv-fcopy-daemon.upstart +++ linux-azure-5.8-5.8.0/debian/linux-cloud-tools-common.hv-fcopy-daemon.upstart @@ -0,0 +1,22 @@ +# On Azure/Hyper-V systems start the hv_fcopy_daemon +# +description "Hyper-V File Copy Protocol Daemon" +author "Andy Whitcroft " + +start on runlevel [2345] +stop on runlevel [!2345] +console log + +pre-start script + if [ -e "/etc/default/hv-kvp-daemon-init" ]; then + . /etc/default/hv-kvp-daemon-init + fi + [ "$RUN_FCOPY_DAEMON" -eq 0 ] && { stop; exit 0; } + if [ -d /sys/class/dmi/id/. ]; then + read company " +[Unit] +Description=Hyper-V KVP Protocol Daemon +ConditionVirtualization=microsoft +DefaultDependencies=no +BindsTo=sys-devices-virtual-misc-vmbus\x21hv_kvp.device +After=sys-devices-virtual-misc-vmbus\x21hv_kvp.device systemd-remount-fs.service +Before=shutdown.target cloud-init-local.service walinuxagent.service +Conflicts=shutdown.target +RequiresMountsFor=/var/lib/hyperv + +[Service] +ExecStart=/usr/sbin/hv_kvp_daemon -n + +[Install] +WantedBy=multi-user.target --- linux-azure-5.8-5.8.0.orig/debian/linux-cloud-tools-common.hv-kvp-daemon.udev +++ linux-azure-5.8-5.8.0/debian/linux-cloud-tools-common.hv-kvp-daemon.udev @@ -0,0 +1 @@ +SUBSYSTEM=="misc", KERNEL=="vmbus/hv_kvp", TAG+="systemd", ENV{SYSTEMD_WANTS}+="hv-kvp-daemon.service" --- linux-azure-5.8-5.8.0.orig/debian/linux-cloud-tools-common.hv-kvp-daemon.upstart +++ linux-azure-5.8-5.8.0/debian/linux-cloud-tools-common.hv-kvp-daemon.upstart @@ -0,0 +1,22 @@ +# On Azure/Hyper-V systems start the hv_kvp_daemon +# +description "Hyper-V KVP Protocol Daemon" +author "Adam Conrad " + +start on runlevel [2345] +stop on runlevel [!2345] +console log + +pre-start script + if [ -e "/etc/default/hv-kvp-daemon-init" ]; then + . /etc/default/hv-kvp-daemon-init + fi + [ "$RUN_KVP_DAEMON" = 0 ] && { stop; exit 0; } + if [ -d /sys/class/dmi/id/. ]; then + read company " +[Unit] +Description=Hyper-V VSS Protocol Daemon +ConditionVirtualization=microsoft +ConditionPathExists=/dev/vmbus/hv_vss +BindsTo=sys-devices-virtual-misc-vmbus\x21hv_vss.device + +[Service] +ExecStart=/usr/sbin/hv_vss_daemon -n + +[Install] +WantedBy=multi-user.target --- linux-azure-5.8-5.8.0.orig/debian/linux-cloud-tools-common.hv-vss-daemon.udev +++ linux-azure-5.8-5.8.0/debian/linux-cloud-tools-common.hv-vss-daemon.udev @@ -0,0 +1 @@ +SUBSYSTEM=="misc", KERNEL=="vmbus/hv_vss", TAG+="systemd", ENV{SYSTEMD_WANTS}+="hv-vss-daemon.service" --- linux-azure-5.8-5.8.0.orig/debian/linux-cloud-tools-common.hv-vss-daemon.upstart +++ linux-azure-5.8-5.8.0/debian/linux-cloud-tools-common.hv-vss-daemon.upstart @@ -0,0 +1,22 @@ +# On Azure/Hyper-V systems start the hv_vss_daemon +# +description "Hyper-V VSS Protocol Daemon" +author "Ben Howard " + +start on runlevel [2345] +stop on runlevel [!2345] +console log + +pre-start script + if [ -e "/etc/default/hv-kvp-daemon-init" ]; then + . /etc/default/hv-kvp-daemon-init + fi + [ "$RUN_VSS_DAEMON" -eq 0 ] && { stop; exit 0; } + if [ -d /sys/class/dmi/id/. ]; then + read company +# + +DEBIAN=$(shell awk -F= '($$1 == "DEBIAN") { print $$2 }' /dev/null || echo $$m >> $(prev_abidir)/../modules.ignore; done) +endif + +ifeq ($(do_dkms_wireguard),false) + do_wireguard_disable:=$(shell for m in $$(cat $(DROOT)/wireguard-modules.ignore); do grep -qxF $$m $(prev_abidir)/../modules.ignore 2>/dev/null || echo $$m >> $(prev_abidir)/../modules.ignore; done) +endif + +# Either tools package needs the common source preparation +do_any_tools=$(sort $(filter-out false,$(do_linux_tools) $(do_cloud_tools))) + +# Versions of dkms packages. +dkms_zfs_linux_version=$(shell gawk '/^zfs-linux / { print $$2; }' debian/dkms-versions) + +# NVIDIA DKMS package gross series split into desktop and server. +nvidia_desktop_series=$(shell sed -n -e 's/^nvidia-graphics-drivers-\([0-9][0-9]*\) .*/\1/p' debian/dkms-versions) +nvidia_server_series=$(shell sed -n -e 's/^nvidia-graphics-drivers-\([0-9][0-9]*-server\) .*/\1/p' debian/dkms-versions) + +# Debian Build System targets +binary: binary-indep binary-arch + +build: build-arch build-indep + +clean: debian/control debian/canonical-certs.pem + dh_testdir + dh_testroot + dh_clean + + # d-i stuff + rm -rf $(DEBIAN)/d-i-$(arch) + # Generated on the fly. + rm -f $(DEBIAN)/d-i/firmware/$(arch)/kernel-image + + # normal build junk + rm -rf $(DEBIAN)/abi/$(release)-$(revision) + rm -rf $(builddir) + rm -f $(stampdir)/stamp-* + rm -rf $(DEBIAN)/linux-* + + # This gets rid of the d-i packages in control + cp -f $(DEBIAN)/control.stub $(DROOT)/control + cp $(DEBIAN)/changelog debian/changelog + + # Install the copyright information. + cp $(DEBIAN)/copyright debian/copyright + + # Install the retpoline extractor. + cp $(DROOT)/scripts/retpoline-extract-one scripts/ubuntu-retpoline-extract-one + + # If we have a reconstruct script use it. + [ -f $(DEBIAN)/reconstruct ] && bash $(DEBIAN)/reconstruct || true + + # Remove generated intermediate files + rm -f $(DROOT)/control.stub $(DEBIAN)/control.stub + rm -f $(DROOT)/scripts/fix-filenames + +distclean: clean + rm -rf $(DROOT)/control debian/changelog \ + debian/control debian/control.stub debian/copyright \ + scripts/ubuntu-retpoline-extract-one + +# Builds the image, arch headers and debug packages +include $(DROOT)/rules.d/2-binary-arch.mk + +# Rules for building the udebs ($(DEBIAN)-installer) +include $(DROOT)/rules.d/5-udebs.mk + +# Builds the source, doc and linux-headers indep packages +include $(DROOT)/rules.d/3-binary-indep.mk + +# Various checks to be performed on builds +include $(DROOT)/rules.d/4-checks.mk + +control_files := $(DEBIAN)/control.stub.in +ifeq ($(do_libc_dev_package),true) +ifneq (,$(wildcard $(DEBIAN)/control.d/linux-libc-dev.stub)) + control_files += $(DEBIAN)/control.d/linux-libc-dev.stub +endif +endif +ifeq ($(do_doc_package),true) +ifneq (,$(wildcard $(DEBIAN)/control.d/linux-doc.stub)) + control_files += $(DEBIAN)/control.d/linux-doc.stub +endif +endif + +# Misc stuff +.PHONY: $(DEBIAN)/control.stub +$(DEBIAN)/control.stub: \ + $(DROOT)/scripts/control-create \ + $(control_files) \ + $(DEBIAN)/changelog \ + $(wildcard $(DEBIAN)/control.d/* $(DEBIAN)/sub-flavours/*.vars) + for i in $(control_files); do \ + cat $$i; \ + echo ""; \ + done | sed -e 's/PKGVER/$(release)/g' \ + -e 's/ABINUM/$(abinum)/g' \ + -e 's/SRCPKGNAME/$(src_pkg_name)/g' \ + -e 's/=HUMAN=/$(human_arch)/g' \ + -e 's/=SERIES=/$(series)/g' \ + > $(DEBIAN)/control.stub; + flavours="$(sort $(wildcard $(DEBIAN)/control.d/vars.* $(DEBIAN)/sub-flavours/*.vars))";\ + for i in $$flavours; do \ + $(SHELL) $(DROOT)/scripts/control-create $$i "$(any_signed)" | \ + sed -e 's/PKGVER/$(release)/g' \ + -e 's/ABINUM/$(abinum)/g' \ + -e 's/SRCPKGNAME/$(src_pkg_name)/g' \ + -e 's/=HUMAN=/$(human_arch)/g' \ + -e 's/=SERIES=/$(series)/g' \ + >> $(DEBIAN)/control.stub; \ + done + +.PHONY: debian/control +debian/control: $(DEBIAN)/control.stub + echo "# placebo control.stub for kernel-wedge flow change" >debian/control.stub + cp $(DEBIAN)/control.stub debian/control + export KW_DEFCONFIG_DIR=$(DEBIAN)/d-i && \ + export KW_CONFIG_DIR=$(DEBIAN)/d-i && \ + LANG=C kernel-wedge gen-control $(release)-$(abinum) | \ + perl -f $(DROOT)/scripts/misc/kernel-wedge-arch.pl $(arch) \ + >>$(CURDIR)/debian/control + +debian/canonical-certs.pem: $(wildcard $(DROOT)/certs/*-all.pem) $(wildcard $(DROOT)/certs/*-$(arch).pem) $(wildcard $(DEBIAN)/certs/*-all.pem) $(wildcard $(DEBIAN)/certs/*-$(arch).pem) + for cert in $(sort $(notdir $^)); \ + do \ + for dir in $(DEBIAN) $(DROOT); \ + do \ + if [ -f "$$dir/certs/$$cert" ]; then \ + cat "$$dir/certs/$$cert"; \ + break; \ + fi; \ + done; \ + done >"$@" --- linux-azure-5.8-5.8.0.orig/debian/rules.d/0-common-vars.mk +++ linux-azure-5.8-5.8.0/debian/rules.d/0-common-vars.mk @@ -0,0 +1,278 @@ +# Used when you need to 'escape' a comma. +comma = , + +# +# The source package name will be the first token from $(DEBIAN)/changelog +# +src_pkg_name=$(shell sed -n '1s/^\(.*\) (.*).*$$/\1/p' $(DEBIAN)/changelog) + +# Get the series +series=$(shell dpkg-parsechangelog -l$(DEBIAN)/changelog | sed -ne 's/^Distribution: *//p' | sed -e 's/-\(security\|updates\|proposed\)$$//') + +# Get some version info +release := $(shell sed -n '1s/^$(src_pkg_name).*(\(.*\)-.*).*$$/\1/p' $(DEBIAN)/changelog) +revisions := $(shell sed -n 's/^$(src_pkg_name)\ .*($(release)-\(.*\)).*$$/\1/p' $(DEBIAN)/changelog | tac) +revision ?= $(word $(words $(revisions)),$(revisions)) +prev_revisions := $(filter-out $(revision),0.0 $(revisions)) +prev_revision := $(word $(words $(prev_revisions)),$(prev_revisions)) + +prev_fullver ?= $(shell dpkg-parsechangelog -l$(DEBIAN)/changelog -o1 -c1 | sed -ne 's/^Version: *//p') + +# Get variants. Assume primary if debian/variants is not present. +variants = -- +ifneq (,$(wildcard $(DEBIAN)/variants)) + variants := $(shell cat $(DEBIAN)/variants) +endif + +# Get upstream version info +upstream_version := $(shell sed -n 's/^VERSION = \(.*\)$$/\1/p' Makefile) +upstream_patchlevel := $(shell sed -n 's/^PATCHLEVEL = \(.*\)$$/\1/p' Makefile) +upstream_tag := "v$(upstream_version).$(upstream_patchlevel)" + +family=ubuntu + +# This is an internally used mechanism for the daily kernel builds. It +# creates packages whose ABI is suffixed with a minimal representation of +# the current git HEAD sha. If .git/HEAD is not present, then it uses the +# uuidgen program, +# +# AUTOBUILD can also be used by anyone wanting to build a custom kernel +# image, or rebuild the entire set of Ubuntu packages using custom patches +# or configs. +AUTOBUILD= + +ifneq ($(AUTOBUILD),) +skipabi = true +skipmodule = true +skipretpoline = true +skipdbg = true +gitver=$(shell if test -f .git/HEAD; then cat .git/HEAD; else uuidgen; fi) +gitverpre=$(shell echo $(gitver) | cut -b -3) +gitverpost=$(shell echo $(gitver) | cut -b 38-40) +abi_suffix = -$(gitverpre)$(gitverpost) +endif + +ifneq ($(NOKERNLOG),) +ubuntu_log_opts += --no-kern-log +endif +ifneq ($(PRINTSHAS),) +ubuntu_log_opts += --print-shas +endif + +# Get the kernels own extra version to be added to the release signature. +raw_kernelversion=$(shell make kernelversion) + +# +# full_build -- are we doing a full buildd style build +# +ifeq ($(wildcard /CurrentlyBuilding),) +full_build?=false +else +full_build?=true +endif + +# +# The debug packages are ginormous, so you probably want to skip +# building them (as a developer). +# +ifeq ($(full_build),false) +skipdbg=true +endif + +abinum := $(shell echo $(revision) | sed -r -e 's/([^\+~]*)\.[^\.]+(~.*)?(\+.*)?$$/\1/')$(abi_suffix) +prev_abinum := $(shell echo $(prev_revision) | sed -r -e 's/([^\+~]*)\.[^\.]+(~.*)?(\+.*)?$$/\1/')$(abi_suffix) +abi_release := $(release)-$(abinum) + +uploadnum := $(shell echo $(revision) | sed -r -e 's/[^\+~]*\.([^\.~]+(~.*)?(\+.*)?$$)/\1/') +ifneq ($(full_build),false) + uploadnum := $(uploadnum)-Ubuntu +endif + +# XXX: linux-libc-dev got bumped to -803.N inadvertantly by a ti-omap4 upload +# shift our version higher for this package only. Ensure this only +# occurs for the v2.6.35 kernel so that we do not propogate this into +# any other series. +raw_uploadnum := $(shell echo $(revision) | sed -e 's/.*\.//') +libc_dev_version := +ifeq ($(DEBIAN),debian.master) +ifeq ($(release),2.6.35) +libc_dev_version := -v$(release)-$(shell expr "$(abinum)" + 1000).$(raw_uploadnum) +endif +endif + +DEB_HOST_MULTIARCH = $(shell dpkg-architecture -qDEB_HOST_MULTIARCH) +DEB_HOST_GNU_TYPE = $(shell dpkg-architecture -qDEB_HOST_GNU_TYPE) +DEB_BUILD_GNU_TYPE = $(shell dpkg-architecture -qDEB_BUILD_GNU_TYPE) +DEB_HOST_ARCH = $(shell dpkg-architecture -qDEB_HOST_ARCH) +DEB_BUILD_ARCH = $(shell dpkg-architecture -qDEB_BUILD_ARCH) + +# +# Detect invocations of the form 'fakeroot debian/rules binary arch=armhf' +# within an x86'en schroot. This only gets you part of the way since the +# packaging phase fails, but you can at least compile the kernel quickly. +# +arch := $(DEB_HOST_ARCH) +ifneq ($(arch),$(DEB_HOST_ARCH)) + CROSS_COMPILE ?= $(shell dpkg-architecture -a$(arch) -qDEB_HOST_GNU_TYPE -f 2>/dev/null)- +endif + +# +# Detect invocations of the form 'dpkg-buildpackage -B -aarmhf' within +# an x86'en schroot. This is the only way to build all of the packages +# (except for tools). +# +ifneq ($(DEB_BUILD_GNU_TYPE),$(DEB_HOST_GNU_TYPE)) + CROSS_COMPILE ?= $(DEB_HOST_GNU_TYPE)- +endif + +abidir := $(CURDIR)/$(DEBIAN)/abi/$(release)-$(revision)/$(arch) +prev_abidir := $(CURDIR)/$(DEBIAN)/abi/$(release)-$(prev_revision)/$(arch) +commonconfdir := $(CURDIR)/$(DEBIAN)/config +archconfdir := $(CURDIR)/$(DEBIAN)/config/$(arch) +sharedconfdir := $(CURDIR)/debian.master/config +builddir := $(CURDIR)/debian/build +stampdir := $(CURDIR)/debian/stamps + +# +# The binary package name always starts with linux-image-$KVER-$ABI.$UPLOAD_NUM. There +# are places that you'll find linux-image hard coded, but I guess thats OK since the +# assumption that the binary package always starts with linux-image will never change. +# +bin_pkg_name_signed=linux-image-$(abi_release) +bin_pkg_name_unsigned=linux-image-unsigned-$(abi_release) +mods_pkg_name=linux-modules-$(abi_release) +mods_extra_pkg_name=linux-modules-extra-$(abi_release) +bldinfo_pkg_name=linux-buildinfo-$(abi_release) +hdrs_pkg_name=linux-headers-$(abi_release) +indep_hdrs_pkg_name=$(src_pkg_name)-headers-$(abi_release) + +# +# The generation of content in the doc package depends on both 'AUTOBUILD=' and +# 'do_doc_package_content=true'. There are usually build errors during the development +# cycle, so its OK to leave 'do_doc_package_content=false' until those build +# failures get sorted out. Finally, the doc package doesn't really need to be built +# for developer testing (its kind of slow), so only do it if on a buildd. +ifneq ($(filter --,$(variants)),) +do_doc_package=true +else +do_doc_package=false +endif +do_doc_package_content=true +ifeq ($(full_build),false) +do_doc_package_content=false +endif +doc_pkg_name=$(src_pkg_name)-doc + +# +# Similarly with the linux-source package, you need not build it as a developer. Its +# somewhat I/O intensive and utterly useless. +# +do_source_package=true +do_source_package_content=true +ifeq ($(full_build),false) +do_source_package_content=false +endif + +# linux-libc-dev may not be needed, default to building it only for the +# primary variant +ifneq ($(filter --,$(variants)),) +do_libc_dev_package=true +else +do_libc_dev_package=false +endif + +# common headers normally is built as an indep package, but may be arch +do_common_headers_indep=true + +# add a 'full source' mode +do_full_source=false + +# build tools +ifneq ($(wildcard $(CURDIR)/tools),) + ifeq ($(do_tools),) + ifneq ($(DEB_BUILD_GNU_TYPE),$(DEB_HOST_GNU_TYPE)) + do_tools=false + endif + endif + do_tools?=true +else + do_tools?=false +endif +tools_pkg_name=$(src_pkg_name)-tools-$(abi_release) +tools_common_pkg_name=$(src_pkg_name)-tools-common +tools_flavour_pkg_name=linux-tools-$(abi_release) +cloud_pkg_name=$(src_pkg_name)-cloud-tools-$(abi_release) +cloud_common_pkg_name=$(src_pkg_name)-cloud-tools-common +cloud_flavour_pkg_name=linux-cloud-tools-$(abi_release) +hosttools_pkg_name=$(src_pkg_name)-tools-host + +# The general flavour specific image package. +do_flavour_image_package=true + +# The general flavour specific header package. +do_flavour_header_package=true + +# DTBs +do_dtbs=false + +# Support parallel= in DEB_BUILD_OPTIONS (see #209008) +# +# These 2 environment variables set the -j value of the kernel build. For example, +# CONCURRENCY_LEVEL=16 fakeroot $(DEBIAN)/rules binary-debs +# or +# DEB_BUILD_OPTIONS=parallel=16 fakeroot $(DEBIAN)/rules binary-debs +# +# The default is to use the number of CPUs. +# +COMMA=, +DEB_BUILD_OPTIONS_PARA = $(subst parallel=,,$(filter parallel=%,$(subst $(COMMA), ,$(DEB_BUILD_OPTIONS)))) +ifneq (,$(DEB_BUILD_OPTIONS_PARA)) + CONCURRENCY_LEVEL := $(DEB_BUILD_OPTIONS_PARA) +endif + +ifeq ($(CONCURRENCY_LEVEL),) + # Check the environment + CONCURRENCY_LEVEL := $(shell echo $$CONCURRENCY_LEVEL) + # No? Then build with the number of CPUs on the host. + ifeq ($(CONCURRENCY_LEVEL),) + CONCURRENCY_LEVEL := $(shell expr `getconf _NPROCESSORS_ONLN` \* 1) + endif + # Oh hell, give 'em one + ifeq ($(CONCURRENCY_LEVEL),) + CONCURRENCY_LEVEL := 1 + endif +endif + +conc_level = -j$(CONCURRENCY_LEVEL) + +PYTHON ?= $(firstword $(wildcard /usr/bin/python3) $(wildcard /usr/bin/python2) $(wildcard /usr/bin/python)) + +# target_flavour is filled in for each step +kmake = make ARCH=$(build_arch) \ + CROSS_COMPILE=$(CROSS_COMPILE) \ + KERNELVERSION=$(abi_release)-$(target_flavour) \ + CONFIG_DEBUG_SECTION_MISMATCH=y \ + KBUILD_BUILD_VERSION="$(uploadnum)" \ + LOCALVERSION= localver-extra= \ + CFLAGS_MODULE="-DPKG_ABI=$(abinum)" \ + PYTHON=$(PYTHON) +ifneq ($(LOCAL_ENV_CC),) +kmake += CC="$(LOCAL_ENV_CC)" DISTCC_HOSTS="$(LOCAL_ENV_DISTCC_HOSTS)" +endif + +# Locking is required in parallel builds to prevent loss of contents +# of the debian/files. +lockme_file = $(CURDIR)/debian/.LOCK +lockme_cmd = flock -w 60 +lockme = $(lockme_cmd) $(lockme_file) + +# Don't fail if a link already exists. +LN = ln -sf + +# Checks if a var is overriden by the custom rules. Called with var and +# flavour as arguments. +custom_override = \ + $(shell if [ -n "$($(1)_$(2))" ]; then echo "$($(1)_$(2))"; else echo "$($(1))"; fi) + +# selftests that Ubuntu cares about +ubuntu_selftests = breakpoints cpu-hotplug efivarfs memfd memory-hotplug mount net ptrace seccomp timers powerpc user ftrace --- linux-azure-5.8-5.8.0.orig/debian/rules.d/1-maintainer.mk +++ linux-azure-5.8-5.8.0/debian/rules.d/1-maintainer.mk @@ -0,0 +1,175 @@ +# The following targets are for the maintainer only! do not run if you don't +# know what they do. + +.PHONY: printenv updateconfigs printchanges insertchanges startnewrelease diffupstream help updateportsconfigs editportsconfigs autoreconstruct finalchecks + +help: + @echo "These are the targets in addition to the normal $(DEBIAN) ones:" + @echo + @echo " printenv : Print some variables used in the build" + @echo + @echo " updateconfigs : Update core arch configs" + @echo + @echo " editconfigs : Update core arch configs interractively" + @echo " genconfigs : Generate core arch configs in CONFIGS/*" + @echo + @echo " updateportsconfigs : Update ports arch configs" + @echo + @echo " editportsconfigs : Update ports arch configs interactivly" + @echo " genportconfigs : Generate ports arch configs in CONFIGS/*" + @echo + @echo " printchanges : Print the current changelog entries (from git)" + @echo + @echo " insertchanges : Insert current changelog entries (from git)" + @echo + @echo " startnewrelease : Start a new changelog set" + @echo + @echo " diffupstream : Diff stock kernel code against upstream (git)" + @echo + @echo " compileselftests : Only compile the selftests listed on ubuntu_selftests variable" + @echo + @echo " runselftests : Run the selftests listed on ubuntu_selftests variable" + @echo + @echo " help : If you are kernel hacking, you need the professional" + @echo " version of this" + @echo + @echo "Environment variables:" + @echo + @echo " NOKERNLOG : Do not add upstream kernel commits to changelog" + @echo " CONCURRENCY_LEVEL=X" + @echo " : Use -jX for kernel compile" + @echo " PRINTSHAS : Include SHAs for commits in changelog" + +printdebian: + @echo "$(DEBIAN)" + +updateconfigs defaultconfigs editconfigs genconfigs dumpconfigs: + dh_testdir; + $(SHELL) $(DROOT)/scripts/misc/kernelconfig $@ "$(do_enforce_all)" + rm -rf build + +updateportsconfigs defaultportsconfigs editportsconfigs genportsconfigs askconfigs: + dh_testdir; + $(SHELL) $(DROOT)/scripts/misc/kernelconfig $@ ports + rm -rf build + +printenv: + dh_testdir + @echo "src package name = $(src_pkg_name)" + @echo "series = $(series)" + @echo "release = $(release)" + @echo "revisions = $(revisions)" + @echo "revision = $(revision)" + @echo "uploadnum = $(uploadnum)" + @echo "prev_revisions = $(prev_revisions)" + @echo "prev_revision = $(prev_revision)" + @echo "abinum = $(abinum)" + @echo "upstream_tag = $(upstream_tag)" + @echo "gitver = $(gitver)" + @echo "variants = $(variants)" + @echo "flavours = $(flavours)" + @echo "skipabi = $(skipabi)" + @echo "skipmodule = $(skipmodule)" + @echo "skipdbg = $(skipdbg)" + @echo "ubuntu_log_opts = $(ubuntu_log_opts)" + @echo "CONCURRENCY_LEVEL = $(CONCURRENCY_LEVEL)" + @echo "ubuntu_selftests = $(ubuntu_selftests)" + @echo "bin package name = $(bin_pkg_name)" + @echo "hdr package name = $(hdrs_pkg_name)" + @echo "doc package name = $(doc_pkg_name)" + @echo "do_doc_package = $(do_doc_package)" + @echo "do_doc_package_content = $(do_doc_package_content)" + @echo "do_source_package = $(do_source_package)" + @echo "do_source_package_content = $(do_source_package_content)" + @echo "do_libc_dev_package = $(do_libc_dev_package)" + @echo "do_flavour_image_package = $(do_flavour_image_package)" + @echo "do_flavour_header_package = $(do_flavour_header_package)" + @echo "do_common_headers_indep = $(do_common_headers_indep)" + @echo "do_full_source = $(do_full_source)" + @echo "do_tools = $(do_tools)" + @echo "do_any_tools = $(do_any_tools)" + @echo "do_linux_tools = $(do_linux_tools)" + @echo " do_tools_cpupower = $(do_tools_cpupower)" + @echo " do_tools_perf = $(do_tools_perf)" + @echo " do_tools_bpftool = $(do_tools_bpftool)" + @echo " do_tools_x86 = $(do_tools_x86)" + @echo " do_tools_host = $(do_tools_host)" + @echo "do_cloud_tools = $(do_cloud_tools)" + @echo " do_tools_hyperv = $(do_tools_hyperv)" + @echo "any_signed = $(any_signed)" + @echo " uefi_signed = $(uefi_signed)" + @echo " opal_signed = $(opal_signed)" + @echo " sipl_signed = $(sipl_signed)" + @echo "full_build = $(full_build)" + @echo "libc_dev_version = $(libc_dev_version)" + @echo "DEB_HOST_GNU_TYPE = $(DEB_HOST_GNU_TYPE)" + @echo "DEB_BUILD_GNU_TYPE = $(DEB_BUILD_GNU_TYPE)" + @echo "DEB_HOST_ARCH = $(DEB_HOST_ARCH)" + @echo "DEB_BUILD_ARCH = $(DEB_BUILD_ARCH)" + @echo "arch = $(arch)" + @echo "kmake = $(kmake)" + +printchanges: + @baseCommit=$$(git log --pretty=format:'%H %s' | \ + gawk '/UBUNTU: '".*Ubuntu-.*`echo $(prev_fullver) | sed 's/+/\\\\+/'`"'(~.*)?$$/ { print $$1; exit }'); \ + if [ -z "$$baseCommit" ]; then \ + echo "WARNING: couldn't find a commit for the previous version. Using the lastest one." >&2; \ + baseCommit=$$(git log --pretty=format:'%H %s' | \ + gawk '/UBUNTU:\s*Ubuntu-.*$$/ { print $$1; exit }'); \ + fi; \ + git log "$$baseCommit"..HEAD | \ + $(DROOT)/scripts/misc/git-ubuntu-log $(ubuntu_log_opts) + +insertchanges: autoreconstruct finalchecks + @perl -w -f $(DROOT)/scripts/misc/insert-changes.pl $(DROOT) $(DEBIAN) + +autoreconstruct: + # No need for reconstruct for -rc kernels since we don't upload an + # orig tarball, so just remove it. + if grep -q "^EXTRAVERSION = -rc[0-9]\+$$" Makefile; then \ + echo "exit 0" >$(DEBIAN)/reconstruct; \ + else \ + $(DROOT)/scripts/misc/gen-auto-reconstruct $(upstream_tag) $(DEBIAN)/reconstruct $(DROOT)/source/options; \ + fi + +finalchecks: debian/control + $(DROOT)/scripts/misc/final-checks "$(DEBIAN)" "$(prev_fullver)" + +diffupstream: + @git diff-tree -p refs/remotes/linux-2.6/master..HEAD $(shell ls | grep -vE '^(ubuntu|$(DEBIAN)|\.git.*)') + +startnewrelease: + dh_testdir + @[ -f "$(DEBIAN)/etc/update.conf" ] && . "$(DEBIAN)/etc/update.conf"; \ + if [ -n "$$BACKPORT_SUFFIX" ]; then \ + ver="$$(dpkg-parsechangelog -l"$$DEBIAN_MASTER/changelog" -SVersion)$${BACKPORT_SUFFIX}.1"; \ + prev_ver="$$(dpkg-parsechangelog -l"$(DEBIAN)/changelog" -SVersion)"; \ + if [ "$${ver%.*}" = "$${prev_ver%.*}" ]; then \ + ver="$${ver%.*}.$$(( $${prev_ver##*.} +1 ))"; \ + fi; \ + else \ + ver="$(release)-$$(echo "$(revision)" | \ + perl -ne 'if (/^(\d*)\.(\d*)(.*)?$$/) { printf("%d.%d%s\n", $$1 + 1, $$2 +1, $$3) }')"; \ + fi; \ + now="$(shell date -R)"; \ + echo "Creating new changelog set for $$ver..."; \ + echo -e "$(src_pkg_name) ($$ver) UNRELEASED; urgency=medium\n" > $(DEBIAN)/changelog.new; \ + echo " CHANGELOG: Do not edit directly. Autogenerated at release." >> \ + $(DEBIAN)/changelog.new; \ + echo " CHANGELOG: Use the printchanges target to see the curent changes." \ + >> $(DEBIAN)/changelog.new; \ + echo " CHANGELOG: Use the insertchanges target to create the final log." \ + >> $(DEBIAN)/changelog.new; \ + echo -e "\n -- $$DEBFULLNAME <$$DEBEMAIL> $$now\n" >> \ + $(DEBIAN)/changelog.new ; \ + cat $(DEBIAN)/changelog >> $(DEBIAN)/changelog.new; \ + mv $(DEBIAN)/changelog.new $(DEBIAN)/changelog + +compileselftests: + # a loop is needed here to fail on errors + for test in $(ubuntu_selftests); do \ + $(kmake) -C tools/testing/selftests TARGETS="$$test"; \ + done; + +runselftests: + $(kmake) -C tools/testing/selftests TARGETS="$(ubuntu_selftests)" run_tests --- linux-azure-5.8-5.8.0.orig/debian/rules.d/2-binary-arch.mk +++ linux-azure-5.8-5.8.0/debian/rules.d/2-binary-arch.mk @@ -0,0 +1,807 @@ +# We don't want make removing intermediary stamps +.SECONDARY : + +# Prepare the out-of-tree build directory +ifeq ($(do_full_source),true) +build_cd = cd $(builddir)/build-$*; # +build_O = +else +build_cd = +build_O = O=$(builddir)/build-$* +endif + +# Typically supplied from the arch makefile, e.g., debian.master/control.d/armhf.mk +ifneq ($(gcc),) +kmake += CC=$(CROSS_COMPILE)$(gcc) +endif + +shlibdeps_opts = $(if $(CROSS_COMPILE),-- -l$(CROSS_COMPILE:%-=/usr/%)/lib) + +debian/scripts/fix-filenames: debian/scripts/fix-filenames.c + $(CC) -o $@ $^ + +$(stampdir)/stamp-prepare-%: config-prepare-check-% + @echo Debug: $@ + @touch $@ +$(stampdir)/stamp-prepare-tree-%: target_flavour = $* +$(stampdir)/stamp-prepare-tree-%: $(commonconfdir)/config.common.$(family) $(archconfdir)/config.common.$(arch) $(archconfdir)/config.flavour.% debian/scripts/fix-filenames + @echo Debug: $@ + install -d $(builddir)/build-$* + touch $(builddir)/build-$*/ubuntu-build + [ "$(do_full_source)" != 'true' ] && true || \ + rsync -a --exclude debian --exclude debian.master --exclude $(DEBIAN) * $(builddir)/build-$* + cat $(wordlist 1,3,$^) | sed -e 's/.*CONFIG_VERSION_SIGNATURE.*/CONFIG_VERSION_SIGNATURE="Ubuntu $(release)-$(revision)-$* $(raw_kernelversion)"/' > $(builddir)/build-$*/.config + find $(builddir)/build-$* -name "*.ko" | xargs rm -f + $(build_cd) $(kmake) $(build_O) -j1 syncconfig prepare scripts + touch $@ + +# Used by developers as a shortcut to prepare a tree for compilation. +prepare-%: $(stampdir)/stamp-prepare-% + @echo Debug: $@ +# Used by developers to allow efficient pre-building without fakeroot. +build-%: $(stampdir)/stamp-build-% + @echo Debug: $@ + +# Do the actual build, including image and modules +$(stampdir)/stamp-build-%: target_flavour = $* +$(stampdir)/stamp-build-%: bldimg = $(call custom_override,build_image,$*) +$(stampdir)/stamp-build-%: $(stampdir)/stamp-prepare-% + @echo Debug: $@ build_image $(build_image) bldimg $(bldimg) + $(build_cd) $(kmake) $(build_O) $(conc_level) $(bldimg) modules $(if $(filter true,$(do_dtbs)),dtbs) + + @touch $@ + +define build_dkms_sign = + $(shell set -x; if grep -q CONFIG_MODULE_SIG=y $(1)/.config; then + echo $(1)/scripts/sign-file $(MODHASHALGO) $(MODSECKEY) $(MODPUBKEY); + else + echo "-"; + fi + ) +endef +define build_dkms = + CROSS_COMPILE=$(CROSS_COMPILE) $(SHELL) $(DROOT)/scripts/dkms-build $(dkms_dir) $(abi_release)-$* '$(call build_dkms_sign,$(builddir)/build-$*)' $(1) $(2) $(3) $(4) $(5) +endef + +# nvidia_build_payload 450 450 450_450.102.04-0ubuntu0.20.04.1 +# nvidia_build_payload 450-server 450srv 50.102.04-0ubuntu0.20.04.1 +define nvidia_build_payload = + $(call build_dkms, $(bldinfo_pkg_name)-$*, $(pkgdir_bldinfo)/usr/lib/linux/$(abi_release)-$*/signatures, "", nvidia-$(2), pool/restricted/n/nvidia-graphics-drivers-$(1)/nvidia-kernel-source-$(1)_$(3)_$(arch).deb pool/restricted/n/nvidia-graphics-drivers-$(1)/nvidia-dkms-$(1)_$(3)_$(arch).deb) +endef +# nvidia_build 450 +# nvidia_build 450-server +define nvidia_build = + $(call nvidia_build_payload,$(1),$(shell echo $(1) | sed -e 's/-server/srv/'),$(shell awk '/^nvidia-graphics-drivers-$(1) / {print($$2);}' debian/dkms-versions)) + +endef + +define install_control = + for which in $(3); \ + do \ + template="$(DROOT)/templates/$(2).$$which.in"; \ + script="$(DROOT)/$(1).$$which"; \ + sed -e 's/@abiname@/$(abi_release)/g' \ + -e 's/@localversion@/-$*/g' \ + -e 's/@image-stem@/$(instfile)/g' \ + <"$$template" >"$$script"; \ + done +endef + +# Ensure the directory prefix is exactly 100 characters long so pathnames are the +# exact same length in any binary files produced by the builds. These will be +# commonised later. +dkms_20d=.................... +dkms_100d=$(dkms_20d)$(dkms_20d)$(dkms_20d)$(dkms_20d)$(dkms_20d) +dkms_100c=$(shell echo '$(dkms_100d)' | sed -e 's/\./_/g') +define dkms_dir_prefix = +$(shell echo $(1)/$(dkms_100c) | \ + sed -e 's/\($(dkms_100d)\).*/\1/' -e 's/^\(.*\)....$$/\1dkms/') +endef + +# Install the finished build +install-%: pkgdir_bin = $(CURDIR)/debian/$(bin_pkg_name)-$* +install-%: pkgdir = $(CURDIR)/debian/$(mods_pkg_name)-$* +install-%: pkgdir_ex = $(CURDIR)/debian/$(mods_extra_pkg_name)-$* +install-%: pkgdir_bldinfo = $(CURDIR)/debian/$(bldinfo_pkg_name)-$* +install-%: bindoc = $(pkgdir)/usr/share/doc/$(bin_pkg_name)-$* +install-%: dbgpkgdir = $(CURDIR)/debian/$(bin_pkg_name)-$*-dbgsym +install-%: signingv = $(CURDIR)/debian/$(bin_pkg_name)-signing/$(release)-$(revision) +install-%: toolspkgdir = $(CURDIR)/debian/$(tools_flavour_pkg_name)-$* +install-%: cloudpkgdir = $(CURDIR)/debian/$(cloud_flavour_pkg_name)-$* +install-%: basepkg = $(hdrs_pkg_name) +install-%: indeppkg = $(indep_hdrs_pkg_name) +install-%: kernfile = $(call custom_override,kernel_file,$*) +install-%: instfile = $(call custom_override,install_file,$*) +install-%: hdrdir = $(CURDIR)/debian/$(basepkg)-$*/usr/src/$(basepkg)-$* +install-%: target_flavour = $* +install-%: MODHASHALGO=sha512 +install-%: MODSECKEY=$(builddir)/build-$*/certs/signing_key.pem +install-%: MODPUBKEY=$(builddir)/build-$*/certs/signing_key.x509 +install-%: build_dir=$(builddir)/build-$* +install-%: dkms_dir=$(call dkms_dir_prefix,$(builddir)/build-$*) +install-%: enable_zfs = $(call custom_override,do_zfs,$*) +install-%: dbgpkgdir_zfs = $(if $(filter true,$(skipdbg)),"",$(dbgpkgdir)/usr/lib/debug/lib/modules/$(abi_release)-$*/kernel) +install-%: $(stampdir)/stamp-build-% install-headers + @echo Debug: $@ kernel_file $(kernel_file) kernfile $(kernfile) install_file $(install_file) instfile $(instfile) + dh_testdir + dh_testroot + dh_prep -p$(bin_pkg_name)-$* + dh_prep -p$(mods_pkg_name)-$* + dh_prep -p$(hdrs_pkg_name)-$* +ifneq ($(skipdbg),true) + dh_prep -p$(bin_pkg_name)-$*-dbgsym +endif + + # The main image + # compress_file logic required because not all architectures + # generate a zImage automatically out of the box +ifeq ($(compress_file),) + install -m600 -D $(builddir)/build-$*/$(kernfile) \ + $(pkgdir_bin)/boot/$(instfile)-$(abi_release)-$* +else + install -d $(pkgdir_bin)/boot + gzip -c9v $(builddir)/build-$*/$(kernfile) > \ + $(pkgdir_bin)/boot/$(instfile)-$(abi_release)-$* + chmod 600 $(pkgdir_bin)/boot/$(instfile)-$(abi_release)-$* +endif + +ifeq ($(uefi_signed),true) + install -d $(signingv) + # gzipped kernel images must be decompressed for signing + if [[ "$(kernfile)" =~ \.gz$$ ]]; then \ + < $(pkgdir_bin)/boot/$(instfile)-$(abi_release)-$* \ + gunzip -cv > $(signingv)/$(instfile)-$(abi_release)-$*.efi; \ + cp -p --attributes-only $(pkgdir_bin)/boot/$(instfile)-$(abi_release)-$* \ + $(signingv)/$(instfile)-$(abi_release)-$*.efi; \ + echo "GZIP=1" >> $(signingv)/$(instfile)-$(abi_release)-$*.efi.vars; \ + else \ + cp -p $(pkgdir_bin)/boot/$(instfile)-$(abi_release)-$* \ + $(signingv)/$(instfile)-$(abi_release)-$*.efi; \ + fi +endif +ifeq ($(opal_signed),true) + install -d $(signingv) + cp -p $(pkgdir_bin)/boot/$(instfile)-$(abi_release)-$* \ + $(signingv)/$(instfile)-$(abi_release)-$*.opal; +endif +ifeq ($(sipl_signed),true) + install -d $(signingv) + cp -p $(pkgdir_bin)/boot/$(instfile)-$(abi_release)-$* \ + $(signingv)/$(instfile)-$(abi_release)-$*.sipl; +endif + + install -d $(pkgdir)/boot + install -m644 $(builddir)/build-$*/.config \ + $(pkgdir)/boot/config-$(abi_release)-$* + install -m600 $(builddir)/build-$*/System.map \ + $(pkgdir)/boot/System.map-$(abi_release)-$* + if [ "$(filter true,$(do_dtbs))" ]; then \ + $(build_cd) $(kmake) $(build_O) $(conc_level) dtbs_install \ + INSTALL_DTBS_PATH=$(pkgdir)/lib/firmware/$(abi_release)-$*/device-tree; \ + ( cd $(pkgdir)/lib/firmware/$(abi_release)-$*/ && find device-tree -print ) | \ + while read dtb_file; do \ + echo "$$dtb_file ?" >> $(DEBIAN)/d-i/firmware/$(arch)/kernel-image; \ + done; \ + fi +ifeq ($(no_dumpfile),) + makedumpfile -g $(pkgdir)/boot/vmcoreinfo-$(abi_release)-$* \ + -x $(builddir)/build-$*/vmlinux + chmod 0600 $(pkgdir)/boot/vmcoreinfo-$(abi_release)-$* +endif + + $(build_cd) $(kmake) $(build_O) $(conc_level) modules_install $(vdso) \ + INSTALL_MOD_STRIP=1 INSTALL_MOD_PATH=$(pkgdir)/ \ + INSTALL_FW_PATH=$(pkgdir)/lib/firmware/$(abi_release)-$* + + # + # Build module blacklists: + # - blacklist all watchdog drivers (LP:1432837) + # + install -d $(pkgdir)/lib/modprobe.d + echo "# Kernel supplied blacklist for $(src_pkg_name) $(abi_release)-$* $(arch)" \ + >$(pkgdir)/lib/modprobe.d/blacklist_$(src_pkg_name)_$(abi_release)-$*.conf + for conf in $(arch)-$* $(arch) common.conf; do \ + if [ -f $(DEBIAN)/modprobe.d/$$conf ]; then \ + echo "# modprobe.d/$$conf"; \ + cat $(DEBIAN)/modprobe.d/$$conf; \ + fi; \ + done >>$(pkgdir)/lib/modprobe.d/blacklist_$(src_pkg_name)_$(abi_release)-$*.conf + echo "# Autogenerated watchdog blacklist" \ + >>$(pkgdir)/lib/modprobe.d/blacklist_$(src_pkg_name)_$(abi_release)-$*.conf + ls -1 $(pkgdir)/lib/modules/$(abi_release)-$*/kernel/drivers/watchdog/ | \ + grep -v '^bcm2835_wdt$$' | \ + sed -e 's/^/blacklist /' -e 's/.ko$$//' | \ + sort -u \ + >>$(pkgdir)/lib/modprobe.d/blacklist_$(src_pkg_name)_$(abi_release)-$*.conf + +ifeq ($(do_extras_package),true) + # + # Remove all modules not in the inclusion list. + # + if [ -f $(DEBIAN)/control.d/$(target_flavour).inclusion-list ] ; then \ + /sbin/depmod -v -b $(pkgdir) $(abi_release)-$* | \ + sed -e "s@$(pkgdir)/lib/modules/$(abi_release)-$*/kernel/@@g" | \ + awk '{ print $$1 " " $$NF}' >$(build_dir)/module-inclusion.depmap; \ + mkdir -p $(pkgdir_ex)/lib/modules/$(abi_release)-$*; \ + mv $(pkgdir)/lib/modules/$(abi_release)-$*/kernel \ + $(pkgdir_ex)/lib/modules/$(abi_release)-$*/kernel; \ + $(SHELL) $(DROOT)/scripts/module-inclusion --master \ + $(pkgdir_ex)/lib/modules/$(abi_release)-$*/kernel \ + $(pkgdir)/lib/modules/$(abi_release)-$*/kernel \ + $(DEBIAN)/control.d/$(target_flavour).inclusion-list \ + $(build_dir)/module-inclusion.depmap 2>&1 | \ + tee $(target_flavour).inclusion-list.log; \ + /sbin/depmod -b $(pkgdir) -ea -F $(pkgdir)/boot/System.map-$(abi_release)-$* \ + $(abi_release)-$* 2>&1 |tee $(target_flavour).depmod.log; \ + if [ `grep -c 'unknown symbol' $(target_flavour).depmod.log` -gt 0 ]; then \ + echo "EE: Unresolved module dependencies in base package!"; \ + exit 1; \ + fi \ + fi +endif + +ifeq ($(no_dumpfile),) + makedumpfile -g $(pkgdir)/boot/vmcoreinfo-$(abi_release)-$* \ + -x $(builddir)/build-$*/vmlinux + chmod 0600 $(pkgdir)/boot/vmcoreinfo-$(abi_release)-$* +endif + rm -f $(pkgdir)/lib/modules/$(abi_release)-$*/build + rm -f $(pkgdir)/lib/modules/$(abi_release)-$*/source + + # Some initramfs-tools specific modules + install -d $(pkgdir)/lib/modules/$(abi_release)-$*/initrd + if [ -f $(pkgdir)/lib/modules/$(abi_release)-$*/kernel/drivers/video/vesafb.ko ]; then\ + $(LN) $(pkgdir)/lib/modules/$(abi_release)-$*/kernel/drivers/video/vesafb.ko \ + $(pkgdir)/lib/modules/$(abi_release)-$*/initrd/; \ + fi + + echo "interest linux-update-$(abi_release)-$*" >"$(DROOT)/$(bin_pkg_name)-$*.triggers" + install -d $(pkgdir_bin)/usr/lib/linux/triggers + $(call install_control,$(bin_pkg_name)-$*,image,postinst postrm preinst prerm) + install -d $(pkgdir)/usr/lib/linux/triggers + $(call install_control,$(mods_pkg_name)-$*,extra,postinst postrm) +ifeq ($(do_extras_package),true) + # Install the postinit/postrm scripts in the extras package. + if [ -f $(DEBIAN)/control.d/$(target_flavour).inclusion-list ] ; then \ + install -d $(pkgdir_ex)/usr/lib/linux/triggers; \ + $(call install_control,$(mods_extra_pkg_name)-$*,extra,postinst postrm); \ + fi +endif + + # Install the full changelog. +ifeq ($(do_doc_package),true) + install -d $(bindoc) + cat $(DEBIAN)/changelog $(DEBIAN)/changelog.historical | \ + gzip -9 >$(bindoc)/changelog.Debian.old.gz + chmod 644 $(bindoc)/changelog.Debian.old.gz +endif + +ifneq ($(skipsub),true) + for sub in $($(*)_sub); do \ + if ! (TO=$$sub FROM=$* ABI_RELEASE=$(abi_release) $(SHELL) \ + $(DROOT)/scripts/sub-flavour); then exit 1; fi; \ + /sbin/depmod -b debian/$(bin_pkg_name)-$$sub \ + -ea -F debian/$(bin_pkg_name)-$$sub/boot/System.map-$(abi_release)-$* \ + $(abi_release)-$*; \ + $(call install_control,$(bin_pkg_name)--$$sub,image,postinst postrm preinst prerm); \ + done +endif + +ifneq ($(skipdbg),true) + # Debug image is simple + install -m644 -D $(builddir)/build-$*/vmlinux \ + $(dbgpkgdir)/usr/lib/debug/boot/vmlinux-$(abi_release)-$* + $(build_cd) $(kmake) $(build_O) modules_install $(vdso) \ + INSTALL_MOD_PATH=$(dbgpkgdir)/usr/lib/debug + # Add .gnu_debuglink sections only after all/DKMS modules are built. + rm -f $(dbgpkgdir)/usr/lib/debug/lib/modules/$(abi_release)-$*/build + rm -f $(dbgpkgdir)/usr/lib/debug/lib/modules/$(abi_release)-$*/source + rm -f $(dbgpkgdir)/usr/lib/debug/lib/modules/$(abi_release)-$*/modules.* + rm -fr $(dbgpkgdir)/usr/lib/debug/lib/firmware +endif + + # The flavour specific headers image + # TODO: Would be nice if we didn't have to dupe the original builddir + install -d -m755 $(hdrdir) + cat $(builddir)/build-$*/.config | \ + sed -e 's/.*CONFIG_DEBUG_INFO=.*/# CONFIG_DEBUG_INFO is not set/g' > \ + $(hdrdir)/.config + chmod 644 $(hdrdir)/.config + $(kmake) O=$(hdrdir) -j1 syncconfig prepare scripts + # We'll symlink this stuff + rm -f $(hdrdir)/Makefile + rm -rf $(hdrdir)/include2 $(hdrdir)/source + # We do not need the retpoline information. + find $(hdrdir) -name \*.o.ur-\* | xargs rm -f + # Copy over the compilation version. + cp "$(builddir)/build-$*/include/generated/compile.h" \ + "$(hdrdir)/include/generated/compile.h" + # Add UTS_UBUNTU_RELEASE_ABI since UTS_RELEASE is difficult to parse. + echo "#define UTS_UBUNTU_RELEASE_ABI $(abinum)" >> $(hdrdir)/include/generated/utsrelease.h + # powerpc kernel arch seems to need some .o files for external module linking. Add them in. +ifeq ($(build_arch),powerpc) + mkdir -p $(hdrdir)/arch/powerpc/lib + cp $(builddir)/build-$*/arch/powerpc/lib/*.o $(hdrdir)/arch/powerpc/lib +endif + # Copy over the new retpoline extractor. + cp scripts/ubuntu-retpoline-extract-one $(hdrdir)/scripts + # Script to symlink everything up + $(SHELL) $(DROOT)/scripts/link-headers "$(hdrdir)" "$(indeppkg)" "$*" + # The build symlink + install -d debian/$(basepkg)-$*/lib/modules/$(abi_release)-$* + $(LN) /usr/src/$(basepkg)-$* \ + debian/$(basepkg)-$*/lib/modules/$(abi_release)-$*/build + # And finally the symvers + install -m644 $(builddir)/build-$*/Module.symvers \ + $(hdrdir)/Module.symvers + + # Now the header scripts + $(call install_control,$(hdrs_pkg_name)-$*,headers,postinst) + + # At the end of the package prep, call the tests + DPKG_ARCH="$(arch)" KERN_ARCH="$(build_arch)" FLAVOUR="$*" \ + VERSION="$(abi_release)" REVISION="$(revision)" \ + PREV_REVISION="$(prev_revision)" ABI_NUM="$(abinum)" \ + PREV_ABI_NUM="$(prev_abinum)" BUILD_DIR="$(builddir)/build-$*" \ + INSTALL_DIR="$(pkgdir)" SOURCE_DIR="$(CURDIR)" \ + run-parts -v $(DROOT)/tests-build + + # + # Remove files which are generated at installation by postinst, + # except for modules.order and modules.builtin + # + # NOTE: need to keep this list in sync with postrm + # + mkdir $(pkgdir)/lib/modules/$(abi_release)-$*/_ + mv $(pkgdir)/lib/modules/$(abi_release)-$*/modules.order \ + $(pkgdir)/lib/modules/$(abi_release)-$*/_ + if [ -f $(pkgdir)/lib/modules/$(abi_release)-$*/modules.builtin ] ; then \ + mv $(pkgdir)/lib/modules/$(abi_release)-$*/modules.builtin \ + $(pkgdir)/lib/modules/$(abi_release)-$*/_; \ + fi + if [ -f $(pkgdir)/lib/modules/$(abi_release)-$*/modules.builtin.modinfo ] ; then \ + mv $(pkgdir)/lib/modules/$(abi_release)-$*/modules.builtin.modinfo \ + $(pkgdir)/lib/modules/$(abi_release)-$*/_; \ + fi + rm -f $(pkgdir)/lib/modules/$(abi_release)-$*/modules.* + mv $(pkgdir)/lib/modules/$(abi_release)-$*/_/* \ + $(pkgdir)/lib/modules/$(abi_release)-$* + rmdir $(pkgdir)/lib/modules/$(abi_release)-$*/_ + +ifeq ($(do_linux_tools),true) + # Create the linux-tools tool links + install -d $(toolspkgdir)/usr/lib/linux-tools/$(abi_release)-$* +ifeq ($(do_tools_usbip),true) + $(LN) ../../$(src_pkg_name)-tools-$(abi_release)/usbip $(toolspkgdir)/usr/lib/linux-tools/$(abi_release)-$* + $(LN) ../../$(src_pkg_name)-tools-$(abi_release)/usbipd $(toolspkgdir)/usr/lib/linux-tools/$(abi_release)-$* +endif +ifeq ($(do_tools_acpidbg),true) + $(LN) ../../$(src_pkg_name)-tools-$(abi_release)/acpidbg $(toolspkgdir)/usr/lib/linux-tools/$(abi_release)-$* +endif +ifeq ($(do_tools_cpupower),true) + $(LN) ../../$(src_pkg_name)-tools-$(abi_release)/cpupower $(toolspkgdir)/usr/lib/linux-tools/$(abi_release)-$* +endif +ifeq ($(do_tools_perf),true) + $(LN) ../../$(src_pkg_name)-tools-$(abi_release)/perf $(toolspkgdir)/usr/lib/linux-tools/$(abi_release)-$* +ifeq ($(do_tools_perf_jvmti),true) + $(LN) ../../$(src_pkg_name)-tools-$(abi_release)/libperf-jvmti.so $(toolspkgdir)/usr/lib/linux-tools/$(abi_release)-$* +endif +endif +ifeq ($(do_tools_bpftool),true) + $(LN) ../../$(src_pkg_name)-tools-$(abi_release)/bpftool $(toolspkgdir)/usr/lib/linux-tools/$(abi_release)-$* +endif +ifeq ($(do_tools_x86),true) + $(LN) ../../$(src_pkg_name)-tools-$(abi_release)/x86_energy_perf_policy $(toolspkgdir)/usr/lib/linux-tools/$(abi_release)-$* + $(LN) ../../$(src_pkg_name)-tools-$(abi_release)/turbostat $(toolspkgdir)/usr/lib/linux-tools/$(abi_release)-$* +endif +endif +ifeq ($(do_cloud_tools),true) +ifeq ($(do_tools_hyperv),true) + # Create the linux-hyperv tool links + install -d $(cloudpkgdir)/usr/lib/linux-tools/$(abi_release)-$* + $(LN) ../../$(src_pkg_name)-tools-$(abi_release)/hv_kvp_daemon $(cloudpkgdir)/usr/lib/linux-tools/$(abi_release)-$* + $(LN) ../../$(src_pkg_name)-tools-$(abi_release)/hv_vss_daemon $(cloudpkgdir)/usr/lib/linux-tools/$(abi_release)-$* + $(LN) ../../$(src_pkg_name)-tools-$(abi_release)/hv_fcopy_daemon $(cloudpkgdir)/usr/lib/linux-tools/$(abi_release)-$* + $(LN) ../../$(src_pkg_name)-tools-$(abi_release)/lsvmbus $(cloudpkgdir)/usr/lib/linux-tools/$(abi_release)-$* +endif +endif + + # Build a temporary "installed headers" directory. + install -d $(dkms_dir) $(dkms_dir)/headers $(dkms_dir)/build $(dkms_dir)/source + cp -rp "$(hdrdir)" "$(indep_hdrdir)" "$(dkms_dir)/headers" + + $(if $(filter true,$(enable_zfs)),$(call build_dkms, $(mods_pkg_name)-$*, $(pkgdir)/lib/modules/$(abi_release)-$*/kernel, $(dbgpkgdir_zfs), zfs, pool/universe/z/zfs-linux/zfs-dkms_$(dkms_zfs_linux_version)_all.deb)) + +ifeq ($(do_dkms_nvidia),true) + $(foreach series,$(nvidia_desktop_series),$(call nvidia_build,$(series))) +endif +ifeq ($(do_dkms_nvidia_server),true) + $(foreach series,$(nvidia_server_series),$(call nvidia_build,$(series))) +endif + +ifneq ($(skipdbg),true) + # Add .gnu_debuglink sections to each stripped .ko + # pointing to unstripped verson + find $(pkgdir) \ + $(if $(filter true,$(do_extras_package)),$(pkgdir_ex)) \ + -name '*.ko' | while read path_module ; do \ + module="/lib/modules/$${path_module#*/lib/modules/}"; \ + if [[ -f "$(dbgpkgdir)/usr/lib/debug/$$module" ]] ; then \ + while IFS= read -r -d '' signature < <(tail -c 28 "$$path_module"); do \ + break; \ + done; \ + $(CROSS_COMPILE)objcopy \ + --add-gnu-debuglink=$(dbgpkgdir)/usr/lib/debug/$$module \ + $$path_module; \ + if grep -q CONFIG_MODULE_SIG=y $(builddir)/build-$*/.config && \ + [ "$$signature" = $$'~Module signature appended~\n' ]; then \ + $(builddir)/build-$*/scripts/sign-file $(MODHASHALGO) \ + $(MODSECKEY) \ + $(MODPUBKEY) \ + $$path_module; \ + fi; \ + else \ + echo "WARNING: Missing debug symbols for module '$$module'."; \ + fi; \ + done +endif + + # Build the final ABI information. + install -d $(abidir) + sed -e 's/^\(.\+\)[[:space:]]\+\(.\+\)[[:space:]]\(.\+\)$$/\3 \2 \1/' \ + $(builddir)/build-$*/Module.symvers | sort > $(abidir)/$* + + # Build the final ABI modules information. + find $(pkgdir_bin) $(pkgdir) $(pkgdir_ex) -name \*.ko | \ + sed -e 's/.*\/\([^\/]*\)\.ko/\1/' | sort > $(abidir)/$*.modules + + # Build the final ABI firmware information. + find $(pkgdir_bin) $(pkgdir) $(pkgdir_ex) -name \*.ko | \ + while read ko; do \ + /sbin/modinfo $$ko | grep ^firmware || true; \ + done | sort -u >$(abidir)/$*.fwinfo + + # Build the final ABI compiler information. + ko=$$(find $(pkgdir_bin) $(pkgdir) $(pkgdir_ex) -name \*.ko | head -1); \ + readelf -p .comment "$$ko" | gawk ' \ + ($$1 == "[") { \ + printf("%s", $$3); \ + for (n=4; n<=NF; n++) { \ + printf(" %s", $$n); \ + } \ + print "" \ + }' | sort -u >$(abidir)/$*.compiler + + # Build the final ABI retpoline information. + if grep -q CONFIG_RETPOLINE=y $(builddir)/build-$*/.config; then \ + echo "# retpoline v1.0" >$(abidir)/$*.retpoline; \ + $(SHELL) $(DROOT)/scripts/retpoline-extract $(builddir)/build-$* $(CURDIR) | \ + sort >>$(abidir)/$*.retpoline; \ + else \ + echo "# RETPOLINE NOT ENABLED" >$(abidir)/$*.retpoline; \ + fi + + # Build the buildinfo package content. + install -d $(pkgdir_bldinfo)/usr/lib/linux/$(abi_release)-$* + install -m644 $(builddir)/build-$*/.config \ + $(pkgdir_bldinfo)/usr/lib/linux/$(abi_release)-$*/config + install -m644 $(abidir)/$* \ + $(pkgdir_bldinfo)/usr/lib/linux/$(abi_release)-$*/abi + install -m644 $(abidir)/$*.modules \ + $(pkgdir_bldinfo)/usr/lib/linux/$(abi_release)-$*/modules + install -m644 $(abidir)/$*.fwinfo \ + $(pkgdir_bldinfo)/usr/lib/linux/$(abi_release)-$*/fwinfo + install -m644 $(abidir)/$*.retpoline \ + $(pkgdir_bldinfo)/usr/lib/linux/$(abi_release)-$*/retpoline + install -m644 $(abidir)/$*.compiler \ + $(pkgdir_bldinfo)/usr/lib/linux/$(abi_release)-$*/compiler + +headers_tmp := $(CURDIR)/debian/tmp-headers +headers_dir := $(CURDIR)/debian/linux-libc-dev + +hmake := $(MAKE) -C $(CURDIR) O=$(headers_tmp) \ + KERNELVERSION=$(abi_release) INSTALL_HDR_PATH=$(headers_tmp)/install \ + SHELL="$(SHELL)" ARCH=$(header_arch) + +install-arch-headers: + @echo Debug: $@ + dh_testdir + dh_testroot +ifeq ($(do_libc_dev_package),true) + dh_prep -plinux-libc-dev +endif + + rm -rf $(headers_tmp) + install -d $(headers_tmp) $(headers_dir)/usr/include/ + + $(hmake) $(defconfig) + mv $(headers_tmp)/.config $(headers_tmp)/.config.old + sed -e 's/^# \(CONFIG_MODVERSIONS\) is not set$$/\1=y/' \ + -e 's/.*CONFIG_LOCALVERSION_AUTO.*/# CONFIG_LOCALVERSION_AUTO is not set/' \ + $(headers_tmp)/.config.old > $(headers_tmp)/.config + $(hmake) syncconfig + $(hmake) headers_install + + ( cd $(headers_tmp)/install/include/ && \ + find . -name '.' -o -name '.*' -prune -o -print | \ + cpio -pvd --preserve-modification-time \ + $(headers_dir)/usr/include/ ) + mkdir $(headers_dir)/usr/include/$(DEB_HOST_MULTIARCH) + mv $(headers_dir)/usr/include/asm $(headers_dir)/usr/include/$(DEB_HOST_MULTIARCH)/ + + rm -rf $(headers_tmp) + +define dh_all + dh_installchangelogs -p$(1) + dh_installdocs -p$(1) + dh_compress -p$(1) + dh_fixperms -p$(1) -X/boot/ + dh_shlibdeps -p$(1) $(shlibdeps_opts) + dh_installdeb -p$(1) + dh_installdebconf -p$(1) + $(lockme) dh_gencontrol -p$(1) -- -Vlinux:rprovides='$(rprovides)' + dh_md5sums -p$(1) + dh_builddeb -p$(1) +endef +define newline + + +endef +define dh_all_inline + $(subst ${newline},; \${newline},$(call dh_all,$(1))) +endef + +binary-arch-headers: install-arch-headers + @echo Debug: $@ + dh_testdir + dh_testroot +ifeq ($(do_libc_dev_package),true) +ifneq ($(DEBIAN),debian.master) + echo "non-master branch building linux-libc-dev, aborting" + exit 1 +endif + $(call dh_all,linux-libc-dev) +endif + +binary-%: pkgimg = $(bin_pkg_name)-$* +binary-%: pkgimg_mods = $(mods_pkg_name)-$* +binary-%: pkgimg_ex = $(mods_extra_pkg_name)-$* +binary-%: pkgdir_ex = $(CURDIR)/debian/$(extra_pkg_name)-$* +binary-%: pkgbldinfo = $(bldinfo_pkg_name)-$* +binary-%: pkghdr = $(hdrs_pkg_name)-$* +binary-%: dbgpkg = $(bin_pkg_name)-$*-dbgsym +binary-%: dbgpkgdir = $(CURDIR)/debian/$(bin_pkg_name)-$*-dbgsym +binary-%: pkgtools = $(tools_flavour_pkg_name)-$* +binary-%: pkgcloud = $(cloud_flavour_pkg_name)-$* +binary-%: rprovides = $(if $(filter true,$(call custom_override,do_zfs,$*)),spl-modules$(comma) spl-dkms$(comma) zfs-modules$(comma) zfs-dkms$(comma)) +binary-%: target_flavour = $* +binary-%: checks-% + @echo Debug: $@ + dh_testdir + dh_testroot + + $(call dh_all,$(pkgimg)) + $(call dh_all,$(pkgimg_mods)) + +ifeq ($(do_extras_package),true) + ifeq ($(ship_extras_package),false) + # If $(ship_extras_package) is explicitly set to false, then do not + # construct the linux-image-extra package; instead just log all of the + # "extra" modules which were pointlessly built yet won't be shipped. + find $(pkgdir_ex) -name '*.ko' | sort \ + | sed 's|^$(pkgdir_ex)/|NOT-SHIPPED |' \ + | tee -a $(target_flavour).not-shipped.log; + else + if [ -f $(DEBIAN)/control.d/$(target_flavour).inclusion-list ] ; then \ + $(call dh_all_inline,$(pkgimg_ex)); \ + fi + endif +endif + + $(call dh_all,$(pkgbldinfo)) + $(call dh_all,$(pkghdr)) + +ifneq ($(skipsub),true) + @set -e; for sub in $($(*)_sub); do \ + pkg=$(bin_pkg_name)-$$sub; \ + $(call dh_all_inline,$$pkg); \ + done +endif + +ifneq ($(skipdbg),true) + $(call dh_all,$(dbgpkg)) + + # Hokay...here's where we do a little twiddling... + # Renaming the debug package prevents it from getting into + # the primary archive, and therefore prevents this very large + # package from being mirrored. It is instead, through some + # archive admin hackery, copied to http://ddebs.ubuntu.com. + # + mv ../$(dbgpkg)_$(release)-$(revision)_$(arch).deb \ + ../$(dbgpkg)_$(release)-$(revision)_$(arch).ddeb + set -e; \ + ( \ + $(lockme_cmd) 9 || exit 1; \ + if grep -qs '^Build-Debug-Symbols: yes$$' /CurrentlyBuilding; then \ + sed -i '/^$(dbgpkg)_/s/\.deb /.ddeb /' debian/files; \ + else \ + grep -v '^$(dbgpkg)_.*$$' debian/files > debian/files.new; \ + mv debian/files.new debian/files; \ + fi; \ + ) 9>$(lockme_file) + # Now, the package wont get into the archive, but it will get put + # into the debug system. +endif + +ifeq ($(do_linux_tools),true) + $(call dh_all,$(pkgtools)) +endif +ifeq ($(do_cloud_tools),true) + $(call dh_all,$(pkgcloud)) +endif + +ifneq ($(full_build),false) + # Clean out this flavours build directory. + rm -rf $(builddir)/build-$* + # Clean out the debugging package source directory. + rm -rf $(dbgpkgdir) +endif + +# +# per-architecture packages +# +builddirpa = $(builddir)/tools-perarch + +$(stampdir)/stamp-prepare-perarch: + @echo Debug: $@ +ifeq ($(do_any_tools),true) + rm -rf $(builddirpa) + install -d $(builddirpa) + rsync -a --exclude debian --exclude debian.master --exclude $(DEBIAN) --exclude .git -a ./ $(builddirpa)/ +endif + touch $@ + +$(stampdir)/stamp-build-perarch: $(stampdir)/stamp-prepare-perarch install-arch-headers + @echo Debug: $@ +ifeq ($(do_linux_tools),true) +ifeq ($(do_tools_usbip),true) + chmod 755 $(builddirpa)/tools/usb/usbip/autogen.sh + cd $(builddirpa)/tools/usb/usbip && ./autogen.sh + chmod 755 $(builddirpa)/tools/usb/usbip/configure + cd $(builddirpa)/tools/usb/usbip && ./configure --prefix=$(builddirpa)/tools/usb/usbip/bin + cd $(builddirpa)/tools/usb/usbip && make install CFLAGS="-g -O2 -static" CROSS_COMPILE=$(CROSS_COMPILE) +endif +ifeq ($(do_tools_acpidbg),true) + cd $(builddirpa)/tools/power/acpi && make clean && make CFLAGS="-g -O2 -static -I$(builddirpa)/include" CROSS_COMPILE=$(CROSS_COMPILE) acpidbg +endif +ifeq ($(do_tools_cpupower),true) + # Allow for multiple installed versions of cpupower and libcpupower.so: + # Override LIB_MIN in order to to generate a versioned .so named + # libcpupower.so.$(abi_release) and link cpupower with that. + make -C $(builddirpa)/tools/power/cpupower \ + CROSS_COMPILE=$(CROSS_COMPILE) \ + CROSS=$(CROSS_COMPILE) \ + LIB_MIN=$(abi_release) CPUFREQ_BENCH=false +endif +ifeq ($(do_tools_perf),true) + cd $(builddirpa) && $(kmake) $(defconfig) + mv $(builddirpa)/.config $(builddirpa)/.config.old + sed -e 's/^# \(CONFIG_MODVERSIONS\) is not set$$/\1=y/' \ + -e 's/.*CONFIG_LOCALVERSION_AUTO.*/# CONFIG_LOCALVERSION_AUTO is not set/' \ + $(builddirpa)/.config.old > $(builddirpa)/.config + cd $(builddirpa) && $(kmake) syncconfig + cd $(builddirpa) && $(kmake) prepare + cd $(builddirpa)/tools/perf && \ + $(kmake) prefix=/usr HAVE_NO_LIBBFD=1 HAVE_CPLUS_DEMANGLE_SUPPORT=1 CROSS_COMPILE=$(CROSS_COMPILE) NO_LIBPYTHON=1 NO_LIBPERL=1 WERROR=0 +endif +ifeq ($(do_tools_bpftool),true) + $(kmake) CROSS_COMPILE=$(CROSS_COMPILE) -C $(builddirpa)/tools/bpf/bpftool +endif +ifeq ($(do_tools_x86),true) + cd $(builddirpa)/tools/power/x86/x86_energy_perf_policy && make CROSS_COMPILE=$(CROSS_COMPILE) + cd $(builddirpa)/tools/power/x86/turbostat && make CROSS_COMPILE=$(CROSS_COMPILE) +endif +endif +ifeq ($(do_cloud_tools),true) +ifeq ($(do_tools_hyperv),true) + cd $(builddirpa)/tools/hv && make CFLAGS="-I$(headers_dir)/usr/include -I$(headers_dir)/usr/include/$(DEB_HOST_MULTIARCH)" CROSS_COMPILE=$(CROSS_COMPILE) hv_kvp_daemon hv_vss_daemon hv_fcopy_daemon +endif +endif + @touch $@ + +install-perarch: toolspkgdir = $(CURDIR)/debian/$(tools_pkg_name) +install-perarch: cloudpkgdir = $(CURDIR)/debian/$(cloud_pkg_name) +install-perarch: $(stampdir)/stamp-build-perarch + @echo Debug: $@ + # Add the tools. +ifeq ($(do_linux_tools),true) + install -d $(toolspkgdir)/usr/lib + install -d $(toolspkgdir)/usr/lib/$(src_pkg_name)-tools-$(abi_release) +ifeq ($(do_tools_usbip),true) + install -m755 $(builddirpa)/tools/usb/usbip/bin/sbin/usbip \ + $(toolspkgdir)/usr/lib/$(src_pkg_name)-tools-$(abi_release) + install -m755 $(builddirpa)/tools/usb/usbip/bin/sbin/usbipd \ + $(toolspkgdir)/usr/lib/$(src_pkg_name)-tools-$(abi_release) +endif +ifeq ($(do_tools_acpidbg),true) + install -m755 $(builddirpa)/tools/power/acpi/acpidbg \ + $(toolspkgdir)/usr/lib/$(src_pkg_name)-tools-$(abi_release) +endif +ifeq ($(do_tools_cpupower),true) + install -m755 $(builddirpa)/tools/power/cpupower/cpupower \ + $(toolspkgdir)/usr/lib/$(src_pkg_name)-tools-$(abi_release) + # Install only the full versioned libcpupower.so.$(abi_release), not + # the usual symlinks to it. + install -m644 $(builddirpa)/tools/power/cpupower/libcpupower.so.$(abi_release) \ + $(toolspkgdir)/usr/lib/ +endif +ifeq ($(do_tools_perf),true) + install -m755 $(builddirpa)/tools/perf/perf $(toolspkgdir)/usr/lib/$(src_pkg_name)-tools-$(abi_release) +ifeq ($(do_tools_perf_jvmti),true) + install -m755 $(builddirpa)/tools/perf/libperf-jvmti.so $(toolspkgdir)/usr/lib/$(src_pkg_name)-tools-$(abi_release) +endif +endif +ifeq ($(do_tools_bpftool),true) + install -m755 $(builddirpa)/tools/bpf/bpftool/bpftool $(toolspkgdir)/usr/lib/$(src_pkg_name)-tools-$(abi_release) +endif +ifeq ($(do_tools_x86),true) + install -m755 $(builddirpa)/tools/power/x86/x86_energy_perf_policy/x86_energy_perf_policy \ + $(toolspkgdir)/usr/lib/$(src_pkg_name)-tools-$(abi_release) + install -m755 $(builddirpa)/tools/power/x86/turbostat/turbostat \ + $(toolspkgdir)/usr/lib/$(src_pkg_name)-tools-$(abi_release) +endif +endif +ifeq ($(do_cloud_tools),true) +ifeq ($(do_tools_hyperv),true) + install -d $(cloudpkgdir)/usr/lib + install -d $(cloudpkgdir)/usr/lib/$(src_pkg_name)-tools-$(abi_release) + install -m755 $(builddirpa)/tools/hv/hv_kvp_daemon \ + $(cloudpkgdir)/usr/lib/$(src_pkg_name)-tools-$(abi_release) + install -m755 $(builddirpa)/tools/hv/hv_vss_daemon \ + $(cloudpkgdir)/usr/lib/$(src_pkg_name)-tools-$(abi_release) + install -m755 $(builddirpa)/tools/hv/hv_fcopy_daemon \ + $(cloudpkgdir)/usr/lib/$(src_pkg_name)-tools-$(abi_release) + install -m755 $(builddirpa)/tools/hv/lsvmbus \ + $(cloudpkgdir)/usr/lib/$(src_pkg_name)-tools-$(abi_release) +endif +endif + +binary-perarch: toolspkg = $(tools_pkg_name) +binary-perarch: cloudpkg = $(cloud_pkg_name) +binary-perarch: install-perarch + @echo Debug: $@ +ifeq ($(do_linux_tools),true) + $(call dh_all,$(toolspkg)) +endif +ifeq ($(do_cloud_tools),true) + $(call dh_all,$(cloudpkg)) +endif + +binary-debs: signing = $(CURDIR)/debian/$(bin_pkg_name)-signing +binary-debs: signingv = $(CURDIR)/debian/$(bin_pkg_name)-signing/$(release)-$(revision) +binary-debs: signing_tar = $(src_pkg_name)_$(release)-$(revision)_$(arch).tar.gz +binary-debs: binary-perarch $(addprefix binary-,$(flavours)) + @echo Debug: $@ +ifeq ($(any_signed),true) + install -d $(signingv)/control + { echo "tarball"; } >$(signingv)/control/options + cd $(signing) && tar czvf ../../../$(signing_tar) . + dpkg-distaddfile $(signing_tar) raw-signing - +endif + +build-arch-deps-$(do_flavour_image_package) += $(addprefix $(stampdir)/stamp-build-,$(flavours)) +build-arch: $(build-arch-deps-true) + @echo Debug: $@ + +ifeq ($(AUTOBUILD),) +binary-arch-deps-$(do_flavour_image_package) += binary-udebs +else +binary-arch-deps-$(do_flavour_image_package) = binary-debs +endif +binary-arch-deps-$(do_libc_dev_package) += binary-arch-headers +ifneq ($(do_common_headers_indep),true) +binary-arch-deps-$(do_flavour_header_package) += binary-headers +endif +binary-arch: $(binary-arch-deps-true) + @echo Debug: $@ + --- linux-azure-5.8-5.8.0.orig/debian/rules.d/3-binary-indep.mk +++ linux-azure-5.8-5.8.0/debian/rules.d/3-binary-indep.mk @@ -0,0 +1,220 @@ +build-indep: + @echo Debug: $@ + +# The binary-indep dependency chain is: +# +# install-headers <- install-doc <- install-source <- install-tools <- install-indep <- binary-indep +# install-headers <- binary-headers +# +indep_hdrpkg = $(indep_hdrs_pkg_name) +indep_hdrdir = $(CURDIR)/debian/$(indep_hdrpkg)/usr/src/$(indep_hdrpkg) +install-headers: prepare-indep + @echo Debug: $@ + dh_testdir + dh_testroot + +ifeq ($(do_flavour_header_package),true) + install -d $(indep_hdrdir) + find . -path './debian' -prune -o -path './$(DEBIAN)' -prune \ + -o -path './include/*' -prune \ + -o -path './scripts/*' -prune -o -type f \ + \( -name 'Makefile*' -o -name 'Kconfig*' -o -name 'Kbuild*' -o \ + -name '*.sh' -o -name '*.pl' -o -name '*.lds' \) \ + -print | cpio -pd --preserve-modification-time $(indep_hdrdir) + cp -a scripts include $(indep_hdrdir) + (find arch -name include -type d -print | \ + xargs -n1 -i: find : -type f) | \ + cpio -pd --preserve-modification-time $(indep_hdrdir) +endif + +docpkg = $(doc_pkg_name) +docdir = $(CURDIR)/debian/$(docpkg)/usr/share/doc/$(docpkg) +install-doc: prepare-indep + @echo Debug: $@ +ifeq ($(do_doc_package),true) + dh_testdir + dh_testroot + + install -d $(docdir) +ifeq ($(do_doc_package_content),true) + # First the html docs. We skip these for autobuilds + if [ -z "$(AUTOBUILD)" ]; then \ + install -d $(docdir)/$(doc_pkg_name)-tmp; \ + $(kmake) O=$(docdir)/$(doc_pkg_name)-tmp htmldocs; \ + install -d $(docdir)/html; \ + rsync -aL $(docdir)/$(doc_pkg_name)-tmp/Documentation/output/ \ + $(docdir)/html/; \ + rm -rf $(docdir)/$(doc_pkg_name)-tmp; \ + fi +endif + # Copy the rest + cp -a Documentation/* $(docdir) + find $(docdir) -name .gitignore | xargs rm -f +endif + +srcpkg = linux-source-$(release) +srcdir = $(CURDIR)/debian/$(srcpkg)/usr/src/$(srcpkg) +balldir = $(CURDIR)/debian/$(srcpkg)/usr/src/$(srcpkg)/$(srcpkg) +install-source: prepare-indep + @echo Debug: $@ +ifeq ($(do_source_package),true) + + install -d $(srcdir) +ifeq ($(do_source_package_content),true) + find . -path './debian' -prune -o -path './$(DEBIAN)' -prune -o \ + -path './.*' -prune -o -print | \ + cpio -pd --preserve-modification-time $(balldir) + (cd $(srcdir); tar cf - $(srcpkg)) | bzip2 -9c > \ + $(srcdir)/$(srcpkg).tar.bz2 + rm -rf $(balldir) + find './debian' './$(DEBIAN)' \ + -path './debian/linux-*' -prune -o \ + -path './debian/$(src_pkg_name)-*' -prune -o \ + -path './debian/build' -prune -o \ + -path './debian/files' -prune -o \ + -path './debian/stamps' -prune -o \ + -path './debian/tmp' -prune -o \ + -print | \ + cpio -pd --preserve-modification-time $(srcdir) + $(LN) $(srcpkg)/$(srcpkg).tar.bz2 $(srcdir)/.. +endif +endif + +install-tools: toolspkg = $(tools_common_pkg_name) +install-tools: toolsbin = $(CURDIR)/debian/$(toolspkg)/usr/bin +install-tools: toolssbin = $(CURDIR)/debian/$(toolspkg)/usr/sbin +install-tools: toolsman = $(CURDIR)/debian/$(toolspkg)/usr/share/man +install-tools: toolsbashcomp = $(CURDIR)/debian/$(toolspkg)/usr/share/bash-completion/completions +install-tools: hosttoolspkg = $(hosttools_pkg_name) +install-tools: hosttoolsbin = $(CURDIR)/debian/$(hosttoolspkg)/usr/bin +install-tools: hosttoolsman = $(CURDIR)/debian/$(hosttoolspkg)/usr/share/man +install-tools: cloudpkg = $(cloud_common_pkg_name) +install-tools: cloudbin = $(CURDIR)/debian/$(cloudpkg)/usr/bin +install-tools: cloudsbin = $(CURDIR)/debian/$(cloudpkg)/usr/sbin +install-tools: cloudman = $(CURDIR)/debian/$(cloudpkg)/usr/share/man +install-tools: prepare-indep $(stampdir)/stamp-build-perarch + @echo Debug: $@ + +ifeq ($(do_tools_common),true) + rm -rf $(builddir)/tools + install -d $(builddir)/tools + for i in *; do $(LN) $(CURDIR)/$$i $(builddir)/tools/; done + rm $(builddir)/tools/tools + rsync -a tools/ $(builddir)/tools/tools/ + + install -d $(toolsbin) + install -d $(toolssbin) + install -d $(toolsman)/man1 + install -d $(toolsman)/man8 + install -d $(toolsbashcomp) + + install -m755 debian/tools/generic $(toolsbin)/usbip + install -m755 debian/tools/generic $(toolsbin)/usbipd + install -m644 $(CURDIR)/tools/usb/usbip/doc/*.8 $(toolsman)/man1/ + + install -m755 debian/tools/generic $(toolsbin)/cpupower + install -m644 $(CURDIR)/tools/power/cpupower/man/*.1 $(toolsman)/man1/ + + install -m755 debian/tools/generic $(toolsbin)/perf + + install -m755 debian/tools/generic $(toolssbin)/bpftool + make -C $(builddir)/tools/tools/bpf/bpftool doc + install -m644 $(builddir)/tools/tools/bpf/bpftool/Documentation/*.8 \ + $(toolsman)/man8 + install -m644 $(builddir)/tools/tools/bpf/bpftool/bash-completion/bpftool \ + $(toolsbashcomp) + + install -m755 debian/tools/generic $(toolsbin)/x86_energy_perf_policy + install -m755 debian/tools/generic $(toolsbin)/turbostat + + cd $(builddir)/tools/tools/perf && make man + install -m644 $(builddir)/tools/tools/perf/Documentation/*.1 \ + $(toolsman)/man1 + + install -m644 $(CURDIR)/tools/power/x86/x86_energy_perf_policy/*.8 $(toolsman)/man8 + install -m644 $(CURDIR)/tools/power/x86/turbostat/*.8 $(toolsman)/man8 + +ifeq ($(do_cloud_tools),true) +ifeq ($(do_tools_hyperv),true) + install -d $(cloudsbin) + install -m755 debian/tools/generic $(cloudsbin)/hv_kvp_daemon + install -m755 debian/tools/generic $(cloudsbin)/hv_vss_daemon + install -m755 debian/tools/generic $(cloudsbin)/hv_fcopy_daemon + install -m755 debian/tools/generic $(cloudsbin)/lsvmbus + install -m755 debian/cloud-tools/hv_get_dhcp_info $(cloudsbin) + install -m755 debian/cloud-tools/hv_get_dns_info $(cloudsbin) + install -m755 debian/cloud-tools/hv_set_ifconfig $(cloudsbin) + + install -d $(cloudman)/man8 + install -m644 $(CURDIR)/tools/hv/*.8 $(cloudman)/man8 +endif +endif + +ifeq ($(do_tools_acpidbg),true) + install -m755 debian/tools/generic $(toolsbin)/acpidbg +endif + +endif + +ifeq ($(do_tools_host),true) + install -d $(hosttoolsbin) + install -d $(hosttoolsman)/man1 + + install -m 755 $(CURDIR)/tools/kvm/kvm_stat/kvm_stat $(hosttoolsbin)/ + + cd $(builddir)/tools/tools/kvm/kvm_stat && make man + install -m644 $(builddir)/tools/tools/kvm/kvm_stat/*.1 \ + $(hosttoolsman)/man1 +endif + +prepare-indep: + @echo Debug: $@ + dh_prep -i + +install-indep: install-headers install-doc install-source install-tools + @echo Debug: $@ + +# This is just to make it easy to call manually. Normally done in +# binary-indep target during builds. +binary-headers: prepare-indep install-headers + @echo Debug: $@ + dh_installchangelogs -p$(indep_hdrpkg) + dh_installdocs -p$(indep_hdrpkg) + dh_compress -p$(indep_hdrpkg) + dh_fixperms -p$(indep_hdrpkg) + dh_installdeb -p$(indep_hdrpkg) + $(lockme) dh_gencontrol -p$(indep_hdrpkg) + dh_md5sums -p$(indep_hdrpkg) + dh_builddeb -p$(indep_hdrpkg) + +binary-indep: cloudpkg = $(cloud_common_pkg_name) +binary-indep: install-indep + @echo Debug: $@ + dh_installchangelogs -i + dh_installdocs -i + dh_compress -i + dh_fixperms -i +ifeq ($(do_tools_common),true) +ifeq ($(do_cloud_tools),true) +ifeq ($(do_tools_hyperv),true) + dh_installinit -p$(cloudpkg) -n --name hv-kvp-daemon + dh_installinit -p$(cloudpkg) -n --name hv-vss-daemon + dh_installinit -p$(cloudpkg) -n --name hv-fcopy-daemon + dh_installudev -p$(cloudpkg) -n --name hv-kvp-daemon + dh_installudev -p$(cloudpkg) -n --name hv-vss-daemon + dh_installudev -p$(cloudpkg) -n --name hv-fcopy-daemon + dh_systemd_enable -p$(cloudpkg) + dh_installinit -p$(cloudpkg) -o --name hv-kvp-daemon + dh_installinit -p$(cloudpkg) -o --name hv-vss-daemon + dh_installinit -p$(cloudpkg) -o --name hv-fcopy-daemon + dh_systemd_start -p$(cloudpkg) +endif + # Keep intel_sgx service disabled by default, so add it after dh_systemd_enable + # and dh_systemd_start are called: + dh_installinit -p$(cloudpkg) --no-start --no-enable --name intel-sgx-load-module +endif +endif + dh_installdeb -i + $(lockme) dh_gencontrol -i + dh_md5sums -i + dh_builddeb -i --- linux-azure-5.8-5.8.0.orig/debian/rules.d/4-checks.mk +++ linux-azure-5.8-5.8.0/debian/rules.d/4-checks.mk @@ -0,0 +1,28 @@ +# Check ABI for package against last release (if not same abinum) +abi-check-%: install-% + @echo Debug: $@ + @perl -f $(DROOT)/scripts/abi-check "$*" "$(prev_abinum)" "$(abinum)" \ + "$(prev_abidir)" "$(abidir)" "$(skipabi)" + +# Check the module list against the last release (always) +module-check-%: install-% + @echo Debug: $@ + @perl -f $(DROOT)/scripts/module-check "$*" \ + "$(prev_abidir)" "$(abidir)" $(skipmodule) + +# Check the reptoline jmp/call functions against the last release. +retpoline-check-%: install-% + @echo Debug: $@ + $(SHELL) $(DROOT)/scripts/retpoline-check "$*" \ + "$(prev_abidir)" "$(abidir)" "$(skipretpoline)" "$(builddir)/build-$*" + +checks-%: module-check-% abi-check-% retpoline-check-% + @echo Debug: $@ + +# Check the config against the known options list. +config-prepare-check-%: $(stampdir)/stamp-prepare-tree-% + @echo Debug: $@ + @perl -f $(DROOT)/scripts/config-check \ + $(builddir)/build-$*/.config "$(arch)" "$*" "$(commonconfdir)" \ + "$(skipconfig)" "$(do_enforce_all)" + --- linux-azure-5.8-5.8.0.orig/debian/rules.d/5-udebs.mk +++ linux-azure-5.8-5.8.0/debian/rules.d/5-udebs.mk @@ -0,0 +1,79 @@ +# Do udebs if not disabled in the arch-specific makefile +binary-udebs: binary-debs + @echo Debug: $@ +ifeq ($(disable_d_i),) + @$(MAKE) --no-print-directory -f $(DROOT)/rules DEBIAN=$(DEBIAN) \ + do-binary-udebs +endif + +do-binary-udebs: linux_udeb_name=$(shell if echo $(src_pkg_name)|egrep -q '(linux-lts|linux-hwe|linux-[0-9]+\.[0-9]+)'; then echo $(src_pkg_name); else echo linux; fi) +do-binary-udebs: debian/control + @echo Debug: $@ + dh_testdir + dh_testroot + + # unpack the kernels into a temporary directory + mkdir -p debian/d-i-${arch} + + imagelist=$$(cat $(CURDIR)/$(DEBIAN)/d-i/kernel-versions | grep ^${arch} | gawk '{print $$3}') && \ + for f in $$imagelist; do \ + i=$(release)-$(abinum)-$$f; \ + for f in \ + ../linux-image-$$i\_$(release)-$(revision)_${arch}.deb \ + ../linux-image-unsigned-$$i\_$(release)-$(revision)_${arch}.deb \ + ../linux-modules-$$i\_$(release)-$(revision)_${arch}.deb \ + ../linux-modules-extra-$$i\_$(release)-$(revision)_${arch}.deb; \ + do \ + [ -f $$f ] && dpkg -x $$f debian/d-i-${arch}; \ + done; \ + /sbin/depmod -b debian/d-i-${arch} $$i; \ + done + + # kernel-wedge will error if no modules unless this is touched + touch $(DEBIAN)/d-i/no-modules + + touch $(CURDIR)/$(DEBIAN)/d-i/ignore-dups + export KW_DEFCONFIG_DIR=$(CURDIR)/$(DEBIAN)/d-i && \ + export KW_CONFIG_DIR=$(CURDIR)/$(DEBIAN)/d-i && \ + export SOURCEDIR=$(CURDIR)/debian/d-i-${arch} && \ + kernel-wedge install-files $(release)-$(abinum) && \ + kernel-wedge check + + # Build just the udebs + dilist=$$(dh_listpackages -s | grep "\-di$$") && \ + [ -z "$dilist" ] || \ + for i in $$dilist; do \ + dh_fixperms -p$$i; \ + $(lockme) dh_gencontrol -p$$i; \ + dh_builddeb -p$$i; \ + done + + # Generate the meta-udeb dependancy lists. + @gawk ' \ + /^Package:/ { \ + package=$$2; flavour=""; parch="" } \ + (/Package-Type: udeb/ && package !~ /^$(linux_udeb_name)-udebs-/) { \ + match(package, "'$(release)'-'$(abinum)'-(.*)-di", bits); \ + flavour = bits[1]; \ + } \ + (/^Architecture:/ && $$0 " " ~ / '$(arch)'/) { \ + parch=$$0; \ + } \ + (flavour != "" && parch != "") { \ + udebs[flavour] = udebs[flavour] package ", "; \ + flavour=""; parch=""; \ + } \ + END { \ + for (flavour in udebs) { \ + package="$(linux_udeb_name)-udebs-" flavour; \ + file="debian/" package ".substvars"; \ + print("udeb:Depends=" udebs[flavour]) > file; \ + metas="'$(builddir)'/udeb-meta-packages"; \ + print(package) >metas \ + } \ + } \ + ' <$(CURDIR)/debian/control + @while read i; do \ + $(lockme) dh_gencontrol -p$$i; \ + dh_builddeb -p$$i; \ + done <$(builddir)/udeb-meta-packages --- linux-azure-5.8-5.8.0.orig/debian/scripts/abi-check +++ linux-azure-5.8-5.8.0/debian/scripts/abi-check @@ -0,0 +1,210 @@ +#!/usr/bin/perl -w + +my $flavour = shift; +my $prev_abinum = shift; +my $abinum = shift; +my $prev_abidir = shift; +my $abidir = shift; +my $skipabi = shift; + +my $fail_exit = 1; +my $EE = "EE:"; +my $errors = 0; +my $abiskip = 0; + +my $count; + +print "II: Checking ABI for $flavour...\n"; + +if (-f "$prev_abidir/ignore" + or -f "$prev_abidir/$flavour.ignore" or "$skipabi" eq "true") { + print "WW: Explicitly asked to ignore ABI, running in no-fail mode\n"; + $fail_exit = 0; + $abiskip = 1; + $EE = "WW:"; +} + +if ($prev_abinum != $abinum) { + print "II: Different ABI's, running in no-fail mode\n"; + $fail_exit = 0; + $EE = "WW:"; +} + +if (not -f "$abidir/$flavour" or not -f "$prev_abidir/$flavour") { + print "EE: Previous or current ABI file missing!\n"; + print " $abidir/$flavour\n" if not -f "$abidir/$flavour"; + print " $prev_abidir/$flavour\n" if not -f "$prev_abidir/$flavour"; + + # Exit if the ABI files are missing, but return status based on whether + # skip ABI was indicated. + if ("$abiskip" eq "1") { + exit(0); + } else { + exit(1); + } +} + +my %symbols; +my %symbols_ignore; +my %modules_ignore; +my %module_syms; + +# See if we have any ignores +my $ignore = 0; +print " Reading symbols/modules to ignore..."; + +for $file ("$prev_abidir/../blacklist", "$prev_abidir/../../perm-blacklist") { + if (-f $file) { + open(IGNORE, "< $file") or + die "Could not open $file"; + while () { + chomp; + if ($_ =~ m/M: (.*)/) { + $modules_ignore{$1} = 1; + } else { + $symbols_ignore{$_} = 1; + } + $ignore++; + } + close(IGNORE); + } +} +print "read $ignore symbols/modules.\n"; + +sub is_ignored($$) { + my ($mod, $sym) = @_; + + die "Missing module name in is_ignored()" if not defined($mod); + die "Missing symbol name in is_ignored()" if not defined($sym); + + if (defined($symbols_ignore{$sym}) or defined($modules_ignore{$mod})) { + return 1; + } + return 0; +} + +# Read new syms first +print " Reading new symbols ($abinum)..."; +$count = 0; +open(NEW, "< $abidir/$flavour") or + die "Could not open $abidir/$flavour"; +while () { + chomp; + m/^(\S+)\s(.+)\s(0x[0-9a-f]+)\s(.+)$/; + $symbols{$4}{'type'} = $1; + $symbols{$4}{'loc'} = $2; + $symbols{$4}{'hash'} = $3; + $module_syms{$2} = 0; + $count++; +} +close(NEW); +print "read $count symbols.\n"; + +# Now the old symbols, checking for missing ones +print " Reading old symbols ($prev_abinum)..."; +$count = 0; +open(OLD, "< $prev_abidir/$flavour") or + die "Could not open $prev_abidir/$flavour"; +while () { + chomp; + m/^(\S+)\s(.+)\s(0x[0-9a-f]+)\s(.+)$/; + $symbols{$4}{'old_type'} = $1; + $symbols{$4}{'old_loc'} = $2; + $symbols{$4}{'old_hash'} = $3; + $count++; +} +close(OLD); + +print "read $count symbols.\n"; + +print "II: Checking for missing symbols in new ABI..."; +$count = 0; +foreach $sym (keys(%symbols)) { + if (!defined($symbols{$sym}{'type'})) { + print "\n" if not $count; + printf(" MISS : %s%s\n", $sym, + is_ignored($symbols{$sym}{'old_loc'}, $sym) ? " (ignored)" : ""); + $count++ if !is_ignored($symbols{$sym}{'old_loc'}, $sym); + } +} +print " " if $count; +print "found $count missing symbols\n"; +if ($count) { + print "$EE Symbols gone missing (what did you do!?!)\n"; + $errors++; +} + + +print "II: Checking for new symbols in new ABI..."; +$count = 0; +foreach $sym (keys(%symbols)) { + if (!defined($symbols{$sym}{'old_type'})) { + print "\n" if not $count; + print " NEW : $sym\n"; + $count++; + } +} +print " " if $count; +print "found $count new symbols\n"; +if ($count and $prev_abinum == $abinum) { + print "WW: Found new symbols within same ABI. Not recommended\n"; +} + +print "II: Checking for changes to ABI...\n"; +$count = 0; +my $moved = 0; +my $changed_type = 0; +my $changed_hash = 0; +foreach $sym (keys(%symbols)) { + if (!defined($symbols{$sym}{'old_type'}) or + !defined($symbols{$sym}{'type'})) { + next; + } + + # Changes in location don't hurt us, but log it anyway + if ($symbols{$sym}{'loc'} ne $symbols{$sym}{'old_loc'}) { + printf(" MOVE : %-40s : %s => %s\n", $sym, $symbols{$sym}{'old_loc'}, + $symbols{$sym}{'loc'}); + $moved++; + } + + # Changes to export type are only bad if new type isn't + # EXPORT_SYMBOL. Changing things to GPL are bad. + if ($symbols{$sym}{'type'} ne $symbols{$sym}{'old_type'}) { + printf(" TYPE : %-40s : %s => %s%s\n", $sym, $symbols{$sym}{'old_type'}. + $symbols{$sym}{'type'}, is_ignored($symbols{$sym}{'loc'}, $sym) + ? " (ignored)" : ""); + $changed_type++ if $symbols{$sym}{'type'} ne "EXPORT_SYMBOL" + and !is_ignored($symbols{$sym}{'loc'}, $sym); + } + + # Changes to the hash are always bad + if ($symbols{$sym}{'hash'} ne $symbols{$sym}{'old_hash'}) { + printf(" HASH : %-40s : %s => %s%s\n", $sym, $symbols{$sym}{'old_hash'}, + $symbols{$sym}{'hash'}, is_ignored($symbols{$sym}{'loc'}, $sym) + ? " (ignored)" : ""); + $changed_hash++ if !is_ignored($symbols{$sym}{'loc'}, $sym); + $module_syms{$symbols{$sym}{'loc'}}++; + } +} + +print "WW: $moved symbols changed location\n" if $moved; +print "$EE $changed_type symbols changed export type and weren't ignored\n" if $changed_type; +print "$EE $changed_hash symbols changed hash and weren't ignored\n" if $changed_hash; + +$errors++ if $changed_hash or $changed_type; +if ($changed_hash) { + print "II: Module hash change summary...\n"; + foreach $mod (sort { $module_syms{$b} <=> $module_syms{$a} } keys %module_syms) { + next if ! $module_syms{$mod}; + printf(" %-40s: %d\n", $mod, $module_syms{$mod}); + } +} + +print "II: Done\n"; + +if ($errors) { + exit($fail_exit); +} else { + exit(0); +} --- linux-azure-5.8-5.8.0.orig/debian/scripts/config-check +++ linux-azure-5.8-5.8.0/debian/scripts/config-check @@ -0,0 +1,163 @@ +#!/usr/bin/perl +# +# check-config -- check the current config for issues +# +use strict; +use File::Basename; +use File::Spec; + +my $P = 'check-config'; + +my $test = -1; +if ($ARGV[0] eq '--test') { + $test = $ARGV[1] + 0; +} elsif ($#ARGV != 5) { + die "Usage: $P \n"; +} + +my ($configfile, $arch, $flavour, $commonconfig, $warn_only, $enforce_all) = @ARGV; + +my %values = (); + +# If we are in overridden then still perform the checks and emit the messages +# but do not return failure. Those items marked FATAL will alway trigger +# failure. +my $fail_exit = 1; +$fail_exit = 0 if ($warn_only eq 'true' || $warn_only eq '1'); +my $exit_val = 0; + +$enforce_all = 0 if $enforce_all eq "no" or $enforce_all eq "false"; + +# Load up the current configuration values -- FATAL if this fails +print "$P: $configfile: loading config\n"; +open(CONFIG, "<$configfile") || die "$P: $configfile: open failed -- $! -- aborting\n"; +while () { + # Pull out values. + /^#*\s*(CONFIG_\w+)[\s=](.*)$/ or next; + if ($2 eq 'is not set') { + $values{$1} = 'n'; + } else { + $values{$1} = $2; + } +} +close(CONFIG); + +sub read_annotations { + my ($filename) = @_; + my %annot; + my $form = 1; + my ($config, $value, $options); + + # Keep track of the configs that shouldn't be appended because + # they were include_annot from another annotations file. + # That's a hash of undefs, aka a set. + my %noappend; + + print "$P: $filename loading annotations\n"; + open(my $fd, "<$filename") || + die "$P: $filename: open failed -- $! -- aborting\n"; + while (<$fd>) { + if (/^# FORMAT: (\S+)/) { + die "$P: $1: unknown annotations format\n" if ($1 != 2 && $1 != 3); + $form = $1; + } + + # Format #3 adds the include directive on top of format #2: + if ($form == 3 && /^\s*include(\s|$)/) { + # Include quoted or unquoted files: + if (/^\s*include\s+"(.*)"\s*$/ || /^\s*include\s+(.*)$/) { + # The include is relative to the current file + my $include_filename = File::Spec->join(dirname($filename), $1); + # Append the include files + my %include_annot = read_annotations($include_filename); + %annot = ( %annot, %include_annot ); + # And marked them to not be appended: + my %included_noappend; + # Discard the values and keep only the keys + @included_noappend{keys %include_annot} = (); + %noappend = ( %noappend, %included_noappend ); + next; + } else { + die "$P: Invalid include: $_"; + } + } + + /^#/ && next; + chomp; + /^$/ && next; + /^CONFIG_/ || next; + + if ($form == 1) { + ($config, $value, $options) = split(' ', $_, 3); + } elsif ($form >= 2) { + ($config, $options) = split(' ', $_, 2); + } + + if (exists $noappend{$config}) { + delete $annot{$config}; + delete $noappend{$config}; + } + $annot{$config} = $annot{$config} . ' ' . $options; + } + close($fd); + return %annot; +} + +# ANNOTATIONS: check any annotations marked for enforcement +my $annotations = "$commonconfig/annotations"; +my %annot = read_annotations($annotations); + +my $pass = 0; +my $total = 0; +my ($config, $value, $options, $option, $check, $policy); +for $config (keys %annot) { + $check = $enforce_all; + $options = $annot{$config}; + + $policy = undef; + while ($options =~ /\s*([^\s<]+)<(.*?)?>/g) { + ($option, $value) = ($1, $2); + + if ($option eq 'mark' && $value eq 'ENFORCED') { + $check = 1; + + } elsif ($option eq 'policy') { + if ($value =~ /^{/) { + $value =~ s/:/=>/g; + $policy = eval($value); + warn "$config: $@" if ($@); + } else { + $policy = undef; + } + } + } + if ($check == 1 && !defined($policy)) { + print "$P: INVALID POLICY (use policy<{...}>) $config$options\n"; + $total++; + $check = 0; + } + if ($check) { + # CONFIG_VERSION_SIGNATURE is dynamically set during the build + next if ($config eq "CONFIG_VERSION_SIGNATURE"); + my $is = '-'; + $is = $values{$config} if (defined $values{$config}); + + my $value = '-'; + for my $which ("$arch-$flavour", "$arch-*", "*-$flavour", "$arch", "*") { + if (defined $policy->{$which}) { + $value = $policy->{$which}; + last; + } + } + if ($is eq $value) { + $pass++; + } else { + print "$P: FAIL ($is != $value): $config$options\n"; + $exit_val = $fail_exit; + } + $total++; + } +} + +print "$P: $pass/$total checks passed -- exit $exit_val\n"; +exit $exit_val; --- linux-azure-5.8-5.8.0.orig/debian/scripts/control-create +++ linux-azure-5.8-5.8.0/debian/scripts/control-create @@ -0,0 +1,40 @@ +#!/bin/bash + +. debian/debian.env + +vars=$1 +any_signed=$2 + +. $vars + +[ "$provides" != '' ] && provides="$provides, " + +if [ "$is_sub" = "" ]; then + flavour=$(basename $vars | sed 's/.*\.//') + stub="${DEBIAN}/control.d/flavour-control.stub debian/control.d/flavour-buildinfo.stub" + if [ "$any_signed" = 'true' ]; then + sign_me_pkg="-unsigned" + sign_me_txt=" unsigned" + sign_peer_pkg="" + else + sign_me_pkg="" + sign_me_txt="" + sign_peer_pkg="-unsigned" + fi +else + flavour=$(basename $vars .vars) + stub=${DEBIAN}/sub-flavours/control.stub +fi + +cat $stub | grep -v '^#' | sed \ + -e "s#FLAVOUR#$flavour#g" \ + -e "s#DESC#$desc#g" \ + -e "s#ARCH#$arch#g" \ + -e "s#SUPPORTED#$supported#g" \ + -e "s#TARGET#$target#g" \ + -e "s#BOOTLOADER#$bootloader#g" \ + -e "s#=PROVIDES=#$provides#g" \ + -e "s#=CONFLICTS=#$conflicts#g" \ + -e "s#=SIGN-ME-PKG=#$sign_me_pkg#g" \ + -e "s#=SIGN-ME-TXT=#$sign_me_txt#g" \ + -e "s#=SIGN-PEER-PKG=#$sign_peer_pkg#g" --- linux-azure-5.8-5.8.0.orig/debian/scripts/dkms-build +++ linux-azure-5.8-5.8.0/debian/scripts/dkms-build @@ -0,0 +1,259 @@ +#!/bin/bash +set -e + +dkms_dir="$1" +abi_flavour="$2" +sign="$3" +pkgname="$4" +pkgdir="$5" +dbgpkgdir="$6" +package="$7" +shift 7 + +here=$(dirname "$(readlink -f "${0}")") + +srcdir=$(pwd) +cd "$dkms_dir" || exit 1 + +built_using_record() +{ + local subst="$1" + local built_using="$2" + if [ ! -f "$subst" ]; then + touch "$subst" + fi + if ! grep -q -s "^linux:BuiltUsing=" "$subst"; then + echo "linux:BuiltUsing=" >>"$subst" + fi + sed -i -e "s/^\(linux:BuiltUsing=.*\)/\1$built_using, /" "$subst" +} + +# ABI: returns present in $? and located path in lpackage_path when found. +package_present() +{ + for lpackage_path in "$1"_*.deb + do + break + done + [ -f "$lpackage_path" ] +} + +# Download and extract the DKMS package -- note there may be more +# than one package to install. +for package_path in "$@" +do + package_file=$(basename "$package_path") + echo "II: dkms-build downloading $package ($package_file)" + rpackage=$( echo "$package_path" | sed -e 's@.*/@@' -e 's@_.*@@' ) + lpackage=$( echo "$rpackage" | sed -e 's@=.*@@' ) + + while true + do + if package_present "$lpackage"; then + break + fi + case "$package_path" in + pool/*) + # Attempt download from the launchpad librarian first. + "$here/file-downloader" "https://launchpad.net/ubuntu/+archive/primary/+files/$package_file" || true + if package_present "$lpackage"; then + break + fi + + # Download from the available pools. + for pool in $( grep -h '^deb ' /etc/apt/sources.list /etc/apt/sources.list.d/*.list | awk '{print $2}' | sort -u ) + do + if package_present "$lpackage"; then + break + fi + url="$pool/$package_path" + "$here/file-downloader" "$url" && break || true + # No components in PPAs. + url=$(echo "$url" | sed -e 's@/pool/[^/]*/@/pool/main/@') + "$here/file-downloader" "$url" && break || true + done + ;; + http*:*) + "$here/file-downloader" "$package_path" + ;; + */*) + cp -p "$package_path" . + ;; + *) + apt-get download "$rpackage" + ;; + esac + break + done + if ! package_present "$lpackage"; then + echo "EE: $lpackage not found" + exit 1 + fi + + dpkg -x "$lpackage"_*.deb "$package" + + lversion=$( echo "$lpackage_path" | sed -e 's@.*/@@' -e 's@_[^_]*$@@' -e 's@.*_@@') + #built_using_record "$srcdir/debian/$pkgname.substvars" "$built_using$lpackage (= $lversion)" +done + +# Pick out the package/version from the dkms.conf. +for dkms_conf in "$package/usr/src"/*/"dkms.conf" +do + break +done + +# It seems some packages have a # in the name which works fine if the +# package is installed directly, but not so much if we build it out +# of the normal location. +sed -i -e '/^PACKAGE_NAME=/ s/#//g' "$dkms_conf" + +# Run any dkms-package specfic configuration steps +dkms_config_specific="$srcdir/$0-configure--$package" +dkms_config_generic=$(echo "$dkms_config_specific" | sed -e 's/-[0-9][0-9]*$/-N/') +for dkms_config in "$dkms_config_specific" "$dkms_config_generic" +do + if [ -z "$dkms_config" -o ! -e "$dkms_config" ]; then + continue + fi + echo "II: dkms-build-configure $(basename "$dkms_config") found, executing" + $SHELL "$dkms_config" \ + "$srcdir" \ + "$dkms_conf" \ + "$dkms_dir" \ + "$abi_flavour" \ + "$sign" \ + "$pkgname" \ + "$pkgdir" \ + "$dbgpkgdir" \ + "$package" \ + "$@" || exit 1 + break +done + +cat - <<'EOF' >>"$dkms_conf" +POST_BUILD="ubuntu-save-objects ${dkms_tree}/${PACKAGE_NAME}/${PACKAGE_VERSION}/build ${dkms_tree}/${PACKAGE_NAME}/${PACKAGE_VERSION}/objects $POST_BUILD" +EOF +ubuntu_script="$(dirname "$dkms_conf")/ubuntu-save-objects" +cat - <<'EOF' >"$ubuntu_script" +#!/bin/sh +from="$1" +to="$2" +script="$3" +shift 2 + +# Copy the objects. +echo "II: copying objects to '$to'" +mkdir -p "$to" +(cd "$from" && find -name \*.o -o -name \*.o.ur-\* | cpio -Lpd "$to") + +# Call the original post_install script if there is one. +[ "$script" = '' ] && exit 0 + +shift +exec "$(dirname "$0")/$script" "$@" +EOF +chmod +x "$ubuntu_script" +dkms_package=$( sed -ne 's/PACKAGE_NAME="\(.*\)"/\1/p' "$dkms_conf" ) +dkms_version=$( sed -ne 's/PACKAGE_VERSION="\(.*\)"/\1/p' "$dkms_conf" ) + +# Build the DKMS binaries. +echo "II: dkms-build building $package" +rc=0 +/usr/sbin/dkms build --no-prepare-kernel --no-clean-kernel \ + -k "$abi_flavour" \ + --sourcetree "$dkms_dir/source" \ + --dkmstree "$dkms_dir/build" \ + --kernelsourcedir "$dkms_dir/headers/linux-headers-$abi_flavour" \ + "$dkms_conf" || rc=1 + +# Find the log and add it to our own. +for log in "$dkms_dir/build/$dkms_package/$dkms_version/$abi_flavour"/*/"log/make.log" "$dkms_dir/build/$dkms_package/$dkms_version/build/make.log" +do + [ -f "$log" ] && break +done +sed -e "s@$dkms_dir@<>@g" <"$log" + +# If this build failed then exit here. +[ "$rc" != 0 ] && exit "$rc" + +# Install the modules with debug symbols we possibly built, +# and strip the original modules for the next install step. +if [ -n "$dbgpkgdir" ]; then + dbgpkgdir="$dbgpkgdir/$package" + echo "II: dkms-build installing $package into $dbgpkgdir (debug symbols)" + install -d "$dbgpkgdir" + find "$dkms_dir/build/$dkms_package/$dkms_version/$abi_version" -name \*.ko | + while read module; do + vmodule=$( basename "$module" ) + + # Check for '.debug_info' section in order to copy module. + # Useful if debug symbols are requested but not built for + # any reason (including not yet supported by DKMS package). + # Strip module just in case even if section isn't present. + if ${CROSS_COMPILE}objdump -h -j '.debug_info' "$module" >/dev/null 2>&1 + then + echo "copying $vmodule" + cp "$module" "$dbgpkgdir" + else + echo "ignoring $vmodule (missing debug symbols)" + fi + + # Just 'strip -g' as '/usr/sbin/dkms' does. + echo "stripping $vmodule" + strip -g "$module" + done +fi + +# Install and optionally sign the modules we have built. +pkgdir="$pkgdir/$package" +echo "II: dkms-build installing $package into $pkgdir" +install -d "$pkgdir" +find "$dkms_dir/build/$dkms_package/$dkms_version/$abi_version" -name \*.ko | +while read module; do + vmodule=$( basename "$module" ) + case "$sign" in + --*) + echo "copying $vmodule" + cp "$module" "$pkgdir" + ;; + *) + echo "signing $vmodule" + $sign "$module" "$pkgdir/$vmodule" + ;; + esac +done + +find "$dkms_dir/build/$dkms_package/$dkms_version/objects" -name \*.o -print | \ +while read object +do + "$srcdir/debian/scripts/fix-filenames" "$object" "$dkms_dir" +done + +# Finally see if there is a dkms-package specific post processor present. Hand +# it the original source directory, destination package directory, the objects +# as squirreled away, and the log in case it is useful. Finally pass a formed +# signing command line in case we need to do that. +dkms_build_specific="$srcdir/$0--$package" +dkms_build_generic=$(echo "$dkms_build_specific" | sed -n -e 's/-[0-9][0-9]*[a-z]*$/-N/p') +for dkms_build in "$dkms_build_specific" "$dkms_build_generic" +do + if [ -z "$dkms_build" -o ! -e "$dkms_build" ]; then + continue + fi + echo "II: dkms-build override $(basename "$dkms_build") found, executing" + $SHELL "$dkms_build" \ + "$srcdir" \ + "$dkms_dir/build/$dkms_package/$dkms_version/objects" \ + "$log" \ + "$dkms_dir" \ + "$abi_flavour" \ + "$sign" \ + "$pkgname" \ + "$pkgdir" \ + "$dbgpkgdir" \ + "$package" \ + "$@" || exit 1 + break +done + +echo "II: dkms-build build $package complete" --- linux-azure-5.8-5.8.0.orig/debian/scripts/dkms-build--nvidia-N +++ linux-azure-5.8-5.8.0/debian/scripts/dkms-build--nvidia-N @@ -0,0 +1,112 @@ +#!/bin/sh + +srcdir="$1" +objects="$2" +log="$3" +shift 3 + +dkms_dir="$1" +abi_flavour="$2" +sign="$3" +pkgname="$4" +pkgdir="$5" +dbgpkgdir="$6" +package="$7" +shift 7 + +build="$( dirname "$objects" )/build" + +# Copy over the objects ready for reconstruction. The objects copy contains +# the *.o files and the *.o-ur* retpoline files to allow the kernel to track +# any retpoline sequences therein. For our purposes we only want the *.o +# files, elide the rest. +mkdir -p "$pkgdir/bits/scripts" +( + gcc_variant1=$(gcc --version | head -1 | sed -e 's/^gcc/GCC:/') + gcc_variant2=$(gcc --version | head -1 | sed -e 's/^\(gcc\) \((.*)\) \(.*\)$/\1 version \3 \2/') + cd "$objects" || exit 1 + find -name \*.o | \ + while read file + do + cp --parents "$file" "$pkgdir/bits" + "$srcdir/debian/scripts/fix-filenames" "$pkgdir/bits/$file" "$gcc_variant1" + "$srcdir/debian/scripts/fix-filenames" "$pkgdir/bits/$file" "$gcc_variant2" + done +) + +# Install the support files we need. +echo "II: copying support files ..." +for lds_src in \ + "$dkms_dir/headers/linux-headers-$abi_flavour/scripts/module.lds" \ + "/usr/src/linux-headers-$abi_flavour/scripts/module.lds" \ + "$dkms_dir/headers/linux-headers-$abi_flavour/scripts/module-common.lds" \ + "/usr/src/linux-headers-$abi_flavour/scripts/module-common.lds" +do + [ ! -f "$lds_src" ] && continue + echo "II: copying support files ... found $lds_src" + cp "$lds_src" "$pkgdir/bits/scripts" + break +done + +# Build helper scripts. +cat - <<'EOL' >"$pkgdir/bits/BUILD" +[ "$1" = "unsigned" ] && { signed_only=:; shift; } +[ "$1" = "nocheck" ] && { check_only=:; shift; } +EOL +grep /usr/bin/ld.bfd "$log" | grep -v scripts/genksyms/genksyms | sed -e "s@$build/@@g" >>"$pkgdir/bits/BUILD" +sed -e 's/.*-o *\([^ ]*\) .*/rm -f \1/g' <"$pkgdir/bits/BUILD" >"$pkgdir/bits/CLEAN" + +# As the builds contain the absolute filenames as used. Use RECONSTRUCT to +# rebuild the .ko's, sign them, pull off the signatures and then finally clean +# up again. +( + cd "$pkgdir/bits" || exit 1 + + # Add checksum check. + echo "\$check_only sha256sum -c SHA256SUMS || exit 1" >>"$pkgdir/bits/BUILD" + + # Add .ko handling to the CLEAN/BUILD dance. + for ko in "$pkgdir"/*.ko + do + ko=$(basename "$ko") + echo "\$signed_only cat '$ko' '$ko.sig' >'../$ko'" >>"$pkgdir/bits/BUILD" + echo "\$signed_only rm -f '$ko'" >>"$pkgdir/bits/BUILD" + echo "rm -f '../$ko'" >>"$pkgdir/bits/CLEAN" + done + + # Clear out anything we are not going to distribute and build unsigned .kos. + sh ./CLEAN + sh ./BUILD unsigned nocheck + + if [ "$sign" = "--custom" ]; then + # We are building for and archive custom signing upload. Keep everything. + : + elif [ "$sign" = "--lrm" ]; then + # We are in the LRM build; grab sha256 checksums and clean up. + sha256sum -b *.ko >"SHA256SUMS" + sh ./CLEAN + + else + # We are in the main kernel, put the .kos together as we will + # on the users machine, sign them, and keep just the signature. + : >"SHA256SUMS" + for ko in *.ko + do + echo "detached-signature $ko" + $sign "$ko" "$ko.signed" + length=$( stat --format %s "$ko" ) + dd if="$ko.signed" of="$ko.sig" bs=1 skip="$length" 2>/dev/null + + rm -f "$ko.signed" + # Keep a checksum of the pre-signed object so we can check it is + # built correctly in LRM. + sha256sum -b "$ko" >>"SHA256SUMS" + done + + # Clean out anything which not a signature. + mv "$pkgdir/bits/"*.sig "$pkgdir" + mv "$pkgdir/bits/SHA256SUMS" "$pkgdir" + find "$pkgdir" -name \*.sig -prune -o -name SHA256SUMS -prune -o -type f -print | xargs rm -f + find "$pkgdir" -depth -type d -print | xargs rmdir --ignore-fail-on-non-empty + fi +) || exit "$?" --- linux-azure-5.8-5.8.0.orig/debian/scripts/dkms-build-configure--zfs +++ linux-azure-5.8-5.8.0/debian/scripts/dkms-build-configure--zfs @@ -0,0 +1,23 @@ +#!/bin/sh + +srcdir="$1" +dkms_conf="$2" +shift 2 + +dkms_dir="$1" +abi_flavour="$2" +sign="$3" +pkgname="$4" +pkgdir="$5" +dbgpkgdir="$6" +package="$7" +shift 7 + +# ZFS debug symbols are enabled in dkms.conf via PACKAGE_CONFIG file. +if [ -n "$dbgpkgdir" ]; then + echo "enable zfs debug symbols" + pkg_cfg="$(dirname "$dkms_conf")/pkg_cfg" + echo 'ZFS_DKMS_ENABLE_DEBUGINFO=yes' >"$pkg_cfg" + echo 'ZFS_DKMS_DISABLE_STRIP=yes' >>"$pkg_cfg" + sed -i "s,^\(PACKAGE_CONFIG=\).*,\1$pkg_cfg," $dkms_conf +fi --- linux-azure-5.8-5.8.0.orig/debian/scripts/file-downloader +++ linux-azure-5.8-5.8.0/debian/scripts/file-downloader @@ -0,0 +1,34 @@ +#!/bin/sh + +if [ "$#" -ne 1 ]; then + echo "Usage: $0 " 1>&2 + exit 1 +fi +url="$1" + +to=$(basename "$url") + +count=0 +what='fetching' +while : +do + if [ "$count" -eq 20 ]; then + echo "EE: excessive redirects" 1>&2 + exit 1 + fi + count=$(($count+1)) + + echo "II: $what $url" + + curl --silent --fail --show-error "$url" -o "$to" -D "$to.hdr" || exit 1 + redirect=$(awk '/^Location: / {gsub(/^[[:space:]]+|[[:space:]]+$/,"",$2); print $2;}' "$to.hdr") + [ -z "$redirect" ] && break + what=' following' + + url=$(echo "$redirect" | sed -e 's@https://launchpadlibrarian.net/@http://launchpadlibrarian.net/@') + if [ "$redirect" != "$url" ]; then + echo "II: fixing $redirect" + fi +done + +exit 0 --- linux-azure-5.8-5.8.0.orig/debian/scripts/fix-filenames.c +++ linux-azure-5.8-5.8.0/debian/scripts/fix-filenames.c @@ -0,0 +1,80 @@ +/* + * fix-filenames: find a specified pathname prefix and remove it from + * C strings. + * + * Copyright (C) 2018 Canonical Ltd. + * Author: Andy Whitcroft + */ +#include +#include +#include +#include +#include +#include +#include +#include +#include + +int +main(int argc, char *argv[]) +{ + int rc; + char *in_name; + char *prefix; + int prefix_len; + int in_fd; + struct stat in_info; + char *in; + off_t size; + int length; + + if (argc != 3) { + fprintf(stderr, "Usage: %s \n", argv[0]); + exit(1); + } + in_name = argv[1]; + prefix = argv[2]; + prefix_len = strlen(prefix); + + in_fd = open(in_name, O_RDWR); + if (in_fd < 0) { + perror("open input failed"); + exit(1); + } + + rc = fstat(in_fd, &in_info); + if (rc < 0) { + perror("fstat input failed"); + exit(1); + } + size = in_info.st_size; + + in = mmap((void *)0, size, PROT_READ|PROT_WRITE, MAP_SHARED, in_fd, (off_t)0); + if (!in) { + perror("mmap failed"); + exit(1); + } + + for (; size > 0; size--, in++) { + if (*in != *prefix) + continue; + if (strncmp(in, prefix, prefix_len) != 0) + continue; + /* In the case of an exact match there there is nothing to move. */ + if (in[prefix_len] == '\0') + length = 0; + /* If this is a filename, strip the leading slash. */ + else if (in[prefix_len] == '/') + length = strlen(in + prefix_len + 1) + 1; + /* Otherwise just keep the suffix. */ + else + length = strlen(in + prefix_len) + 1; + + /* + * Copy the suffix portion down to the start and clear + * the remainder of the space to 0. + */ + memmove(in, in + prefix_len + 1, length); + memset(in + length, '\0', prefix_len); + } +} --- linux-azure-5.8-5.8.0.orig/debian/scripts/helpers/close +++ linux-azure-5.8-5.8.0/debian/scripts/helpers/close @@ -0,0 +1,195 @@ +#!/bin/bash -eu +export LC_ALL=C.UTF-8 + +usage() { + cat << EOF +Usage: ${P:-$(basename "$0")} [-h|--help] [-d|--dry-run] [-c|--include-config] [-s|--skip-master] [-b BASE_VERSION] + +Prepare the closing release commit. Include all the changelog entries +in the current release, including the changes from the base +kernel. Also close the changelog entry and check for config changes. + +Optional arguments: + -d, --dry-run Perform a trial run with no changes made + printing the commands instead. + -c, --include-config Include config changes in the closing commit. + -s, --skip-master Skip master kernel changelog entries (used when + bootstraping new kernels). + -b BASE_VERSION For derivatives and backports, force the changelog + entries to have the base version as provided (used + when changing the base derivative version of a + backport). + -h, --help Show this help message and exit. + +Examples: + Simply close a release: + \$ cranky close + + Also include any config changes to the closing commit: + \$ cranky close -c + +EOF +} + +dry_run=0 +commit_configs=0 +skip_master_entries=0 +base_version= +while [ "$#" -gt 0 ]; do + case "$1" in + -h|--help) + usage + exit 0 + ;; + -d|--dry-run) + dry_run=1 + ;; + -c|--include-config) + commit_configs=1 + ;; + -s|--skip-master) + skip_master_entries=1 + ;; + -b) + shift + base_version="$1" + ;; + *) + usage + exit 1 + ;; + esac + shift +done + +hl() { echo -e "\e[1m$*\e[0m"; } + +run() { + # Quote args for echo or eval + local quoted=() + for token; do + quoted+=( "$(printf '%q' "$token")" ) + done + # Run + if [ "$dry_run" -eq 1 ]; then + hl "DRY RUN: ${quoted[*]}" + else + hl "${quoted[*]}" + "$@" + echo + fi +} + +# Trick shellcheck so it doesn't complain every time it's necessary to +# use `run $CHROOT`. Use `chroot_run` instead. +shopt -s expand_aliases +alias chroot_run='run ${CHROOT:-}' + +DEBIAN= +# shellcheck disable=SC1091 +. debian/debian.env + +# Check if the "$DEBIAN" directory exists. +if [ ! -d "$DEBIAN" ]; then + echo "You must run this script from the top directory of this repository." + exit 1 +fi + +CONF="$DEBIAN/etc/update.conf" +if [ -f "$CONF" ]; then + # shellcheck disable=SC1090 + . "$CONF" +fi + +# Check if changelog is open +series=$(dpkg-parsechangelog -l"$DEBIAN/changelog" -SDistribution) +if [ "$series" != 'UNRELEASED' ]; then + echo "The last entry of the changelog is already released." + exit 1 +fi + +# Update configs +if [ -d "$DEBIAN/config" ]; then + chroot_run fakeroot debian/rules clean updateconfigs + changes=$(git diff HEAD -- "./$DEBIAN/config/") + if [ "$commit_configs" -eq 0 ] && [ -n "$changes" ]; then + echo "Config has changed! please, review it and commit." + exit 1 + fi +fi + +# For normal trees the fact that the update.conf file exists means that they are rebase +# kernels. There are some special trees which started with uc20-efi, which have that +# file because they logically depend on another source but do not have the directory +# which DEBIAN_MASTER points to. +# Skip inserting parent source entries if this is not a rebase tree. +if [ ! -f "$DEBIAN/etc/update.conf" ]; then + skip_master_entries=1 +elif [ "$DEBIAN_MASTER" != "" -a ! -d "$DEBIAN_MASTER" ]; then + skip_master_entries=1 +fi +if [ $skip_master_entries == 0 ]; then + if [ "$DEBIAN_MASTER" = "" ]; then + echo "DEBIAN_MASTER should be defined either in $DEBIAN/etc/update.conf or the environment" + exit 1 + fi + + if [ -z "${base_version}" ]; then + offset=0 + # If not provided as an option, loop through each entry of the current changelog, + # searching for an entry that refers to the master version used as base + # (ie a line containing "[ Ubuntu: 4.15.0-39.42 ]"): + while true; do + changes=$(dpkg-parsechangelog -l"$DEBIAN/changelog" -SChanges -c1 -o"$offset") + if ! [ "$changes" ]; then + echo "Failed to retrieve base master version from changelog file: $DEBIAN/changelog" + exit 1 + fi + base_version=$(echo "$changes" | sed -n -r -e '/^\s.*\[ Ubuntu: ([~0-9.-]*) \]$/{s//\1/p;q}') + [ "$base_version" ] && break + offset=$(( offset + 1 )) + done + fi + + master_version=$(dpkg-parsechangelog -l${DEBIAN_MASTER}/changelog -SVersion) + if ! [ "$master_version" ]; then + echo "Failed to retrieve current master version from changelog: $DEBIAN/changelog" + exit 1 + fi + run ./debian/scripts/misc/insert-ubuntu-changes "$DEBIAN/changelog" "$base_version" "$master_version" \ + "$DEBIAN_MASTER/changelog" +fi + +# Insert local changes +run fakeroot debian/rules insertchanges + +# This should be the last step. If there were no changes to the +# changelog, there is nothing to release, so nothing to commit. +changes=$(git diff HEAD) +if [ -z "$changes" ] && [ "$dry_run" -eq 0 ]; then + hl "No changes to commit." + exit 1 +fi + +# Find the current series from previous changelog entries: +series='' +offset=0 +while true; do + series=$(dpkg-parsechangelog -l"$DEBIAN/changelog" -SDistribution -c1 -o"$offset") + if [ "$series" ] && [ "$series" != 'UNRELEASED' ]; then + break + fi + offset=$(( offset + 1 )) +done +if ! [ "$series" ]; then + echo "Failed to retrieve the package series from changelog: $DEBIAN/changelog" + exit 1 +fi +# Close the changelog +run dch --nomultimaint -c "$DEBIAN/changelog" -r -D "$series" '' + +# Commit changes +package=$(dpkg-parsechangelog -l"$DEBIAN/changelog" -SSource) +prefix="Ubuntu$(echo "$package" | sed -r -e 's/linux(-?)/\1/')-" +version=$(dpkg-parsechangelog -l"$DEBIAN/changelog" -SVersion) +run git commit -sam "UBUNTU: $prefix$version" --- linux-azure-5.8-5.8.0.orig/debian/scripts/helpers/open +++ linux-azure-5.8-5.8.0/debian/scripts/helpers/open @@ -0,0 +1,219 @@ +#!/bin/bash -eu +export LC_ALL=C.UTF-8 + +usage() { + cat << EOF +Usage: ${P:-$(basename "$0")} [-h|--help] [-d|--dry-run] [-r|--reuse-abi] + +Create a "start new release" commit. The new commit will contain ABI +changes and any customization required by backport kernels. + +Optional arguments: + -d, --dry-run Perform a trial run with no changes made + printing the commands instead. + -r, --reuse-abi Do not download the previous release ABI files + for the new release and just rename the + current ABI directory. This might cause the + build to fail if the module list or the + retpoline information has changed. + -h, --help Show this help message and exit. + +Environment variable: + CRANKY_MAILENFORCE Regular expression used to validate \$DEBEMAIL. If not + set, it defaults to "@canonical.com$". + +Examples: + Simply start a new release (that will fetch the ABI files from the + archieve repositories): + \$ cranky open + + Start a new release re-using the ABI files already present in the + tree: + \$ cranky open --reuse-abi + +EOF +} + +dry_run=0 +reuse_abi=0 +while [ "$#" -gt 0 ]; do + case "$1" in + -h|--help) + usage + exit 0 + ;; + -d|--dry-run) + dry_run=1 + ;; + -r|--reuse-abi) + reuse_abi=1 + ;; + *) + usage + exit 1 + ;; + esac + shift +done + +hl() { echo -e "\e[1m$*\e[0m"; } + +run() { + # Quote args for echo or eval + local quoted=() + for token; do + quoted+=("$(printf '%q' "$token")") + done + # Run + if [ "$dry_run" -eq 1 ]; then + hl "DRY RUN: ${quoted[*]}" + else + hl "${quoted[*]}" + "$@" + echo + fi +} + +# Trick shellcheck so it doesn't complain every time it's necessary to +# use `run $CHROOT`. Use `chroot_run` instead. +shopt -s expand_aliases +alias chroot_run='run ${CHROOT:-}' + +# Check DEBEMAIL (used to create the new changelog stanza): +DEBEMAIL="${DEBEMAIL:-}" +CRANKY_MAILENFORCE="${CRANKY_MAILENFORCE:-@canonical.com\$}" +if [ -z "$DEBEMAIL" ] || ! echo "$DEBEMAIL" | grep -qE "$CRANKY_MAILENFORCE"; then + echo "DEBEMAIL is unset, or does not contain \"$CRANKY_MAILENFORCE\": $DEBEMAIL" >&2 + exit 1 +fi + +# Requires a git repo +if [ ! -e .git ]; then + echo "Not a git repository!" >&2 + exit 1 +fi + +# Check the debian directory +if [ ! -e debian/debian.env ]; then + echo "Cannot find debian/debian.env!" >&2 + exit 1 +fi +DEBIAN= +# shellcheck disable=SC1091 +. debian/debian.env +if [ -z "$DEBIAN" ] || [ ! -d "$DEBIAN" ]; then + echo "Invalid DEBIAN directory: $DEBIAN" >&2 + exit 1 +fi + +# Abort if changes or untracked files are found in the debian +# directory (ie, in "debian.master/"). cranky open is expected to +# change and commit files in this directory. +if ! git diff-index --quiet HEAD -- "$DEBIAN/" || \ + [ -n "$(git ls-files --others -- "$DEBIAN/")" ]; then + echo "\"$DEBIAN/\" is not clean!" >&2 + exit 1 +fi + +# Check changelog +series=$(dpkg-parsechangelog -l"$DEBIAN/changelog" -SDistribution) +if [ "$series" == 'UNRELEASED' ]; then + echo "$DEBIAN/changelog is not closed!" >&2 + exit 1 +fi + +# Load the info about derivative +BACKPORT_SUFFIX= +derivative_conf="$DEBIAN/etc/update.conf" +if [ -f "$derivative_conf" ]; then + # shellcheck disable=SC1090 + . "$derivative_conf" +fi + +# Run the update script used for backport kernels +if [ -n "$BACKPORT_SUFFIX" ]; then + update_from_master_script="$DEBIAN/scripts/helpers/copy-files" + if [ ! -x "$update_from_master_script" ]; then + echo "Backport kernel is missing the"\ + "\"$update_from_master_script\" script!"; + exit 1 + fi + # The tree should be clean at this point, since that is enforced at + # the beginning of the script. Because of that, it's safe to git add + # "$DEBIAN/". + run env CHROOT="$CHROOT" "$update_from_master_script" + run git add "$DEBIAN" + # Update configs after the necessary files were copied from + # the base kernel. It's not expected that `fdr updateconfigs` + # will fail at this point, because the base kernel's + # configuration and annotations file are expected to be in a + # correct state. `fdr updateconfigs` should only change a few + # configuration options that depend on the userspace tooling + # version, such as gcc. + if ! chroot_run fakeroot debian/rules clean updateconfigs; then + echo "Failed to update configs. Please review the previous" \ + "rebase operation and \"$update_from_master_script\""; + exit 1 + fi + run git add "$DEBIAN/config" +fi + +# fdr clean should be called after copy-files, that way we can git add +# any changes in "debian./" (`fdr clean` in trusty will +# usually generate changes in "debian./). Also, fdr clean +# removes an ABI that matches the current version in the +# changelog. Since `fdr startnewrelease` requires `fdr clean`, we need +# to call it before getabis. +chroot_run fakeroot debian/rules clean + +# Update ABI +if [ -d "$DEBIAN/abi" ]; then + # The new ABI directory should use the current version in the + # changelog since `fdr startnewrelease` was't called at this + # point yet: + new=$(dpkg-parsechangelog -l"$DEBIAN/changelog" -SVersion) + + if [ "$reuse_abi" -ne 0 ]; then + # Get the old ABI directory: + old=$(find "$DEBIAN/abi/" -mindepth 1 -maxdepth 1 -type d | \ + grep -P '/abi/[0-9]+\.[0-9]+\.[0-9]+-[0-9]+\.[0-9]+') + if [ -z "${old}" ] ; then + echo "Failed to find the previous ABI directory." \ + "Please check \"$DEBIAN/abi/\"!" >&2 + exit 1 + elif [ "$(echo "$old" | wc -l)" -gt 1 ]; then + echo "Failed to rename the current ABI directory." \ + "Multiple directories found. Please check \"$DEBIAN/abi/\"!" >&2 + exit 1 + fi + new="$DEBIAN/abi/$new" + # Rename the ABI directory + run git mv "$old" "$new" + else + # Call in-tree getabis: + # Use the single argument form since getabis is now + # updated by cranky fix. + run debian/scripts/misc/getabis "${new}" + # getabis already handles the necessary git add/rm calls. + fi +fi + +# Create the new changelog entry: +run fakeroot debian/rules startnewrelease +run git add "$DEBIAN/changelog" + +# Create the commit +run git commit -s -F debian/commit-templates/newrelease + +# Perform a basic ABI check +if [ "$dry_run" -eq 0 ]; then + version=$(dpkg-parsechangelog -l"$DEBIAN/changelog" -SVersion -c1 -o1) + abi_dir="$DEBIAN/abi/$version" + [ ! -d "$abi_dir" ] && hl "Warning: ABI directory is missing: $abi_dir" +fi + +# Mimic maint-startnewrelease +[ "$dry_run" -eq 0 ] && \ + hl "\n***** Now please inspect the commit before pushing *****" + +exit 0 --- linux-azure-5.8-5.8.0.orig/debian/scripts/helpers/rebase +++ linux-azure-5.8-5.8.0/debian/scripts/helpers/rebase @@ -0,0 +1,141 @@ +#!/bin/bash -e +# +# This script is intended as a helper when rebasing from its master branch. +# + +LOCAL_BRANCH= +RELEASE_REPO= +SOURCE_RELEASE_BRANCH= + +function out() +{ + local rc="${?}" + trap - EXIT INT TERM HUP + [ "${rc}" -eq 0 ] || echo "Error: Script failed" + exit "${rc}" +} + +trap out EXIT INT TERM HUP + +if [ -f debian/debian.env ]; then + # shellcheck disable=SC1091 + . debian/debian.env +fi + +if [ ! -d "${DEBIAN}" ]; then + echo You must run this script from the top directory of this repository. + exit 1 +fi + +CONF="${DEBIAN}"/etc/update.conf +if [ -f "${CONF}" ]; then + # shellcheck disable=SC1090 + . "${CONF}" +fi + +usage="$0 [-r RELEASE_REPO] [ -b REMOTE_BRANCH ] [-l LOCAL_BRANCH] [-d]"$'\n\n' +usage+="-r RELEASE_REPO Git repository to fetch the reference branch from."$'\n' +usage+="-b REMOTE_BRANCH Remote branch to fetch from."$'\n' +usage+="-l LOCAL_BRANCH Use LOCAL_BRANCH as the reference branch."$'\n' +usage+="-d Dry run (do not rebase)." + +# +# command line options: +# [-r RELEASE_REPO] - override default git repository. +# [-b REMOTE_BRANCH] - override default remote branch. +# [-l LOCAL_BRANCH] - do not fetch from remote repo, use a local branch. + +while getopts "r:b:l:d" opt; do + case $opt in + r ) RELEASE_REPO="$OPTARG" ;; + b ) SOURCE_RELEASE_BRANCH="$OPTARG" ;; + l ) LOCAL_BRANCH="$OPTARG" ;; + d ) DRY_RUN=1 ;; + \? ) echo "usage: ${usage}"; exit ;; + esac +done +shift $((OPTIND - 1)) + +# For normal trees the fact that the update.conf file exists means that they are rebase +# kernels. There are some special trees which started with uc20-efi, which have that +# file because they logically depend on another source but do not have the directory +# which DEBIAN_MASTER points to. +IS_REBASE_KERNEL=true +if [ ! -f "$DEBIAN/etc/update.conf" ]; then + IS_REBASE_KERNEL=false +elif [ "$DEBIAN_MASTER" != "" -a ! -d "$DEBIAN_MASTER" ]; then + IS_REBASE_KERNEL=false +fi +if ! $IS_REBASE_KERNEL; then + echo "This is not a rebase kernel, no rebase should be needed, please report if otherwise" + exit 0 +fi + +if [ "$DEBIAN_MASTER" = "" ]; then + echo "DEBIAN_MASTER should be defined either in ${DEBIAN}/etc/update.conf or the environment" + exit 1 +fi + +if [ -z "${LOCAL_BRANCH}" ]; then + if [ -z "${RELEASE_REPO}" ] || [ -z "${SOURCE_RELEASE_BRANCH}" ]; then + echo Missing update.conf or missing parameters for remote repo and branch. + exit 1 + fi + # + # Fetch the upstream branch. + # + git fetch "${RELEASE_REPO}" + git fetch "${RELEASE_REPO}" "${SOURCE_RELEASE_BRANCH}" + LOCAL_BRANCH=FETCH_HEAD +fi + +# +# Find the most recent tag on given upstream branch, then +# rebase against it. This avoids the case where there have been some +# commits since the last official tag. +# +MASTER_COMMIT=$(git log --pretty=one "${LOCAL_BRANCH}" "${DEBIAN_MASTER}" | \ + awk ' + /Ubuntu-/ { + if (match($0, /UBUNTU: Ubuntu-/)) { + print $1 + exit + } + } + ' +) +# +# Find the current merge point where current branch was based. +# +BASE_COMMIT=$(git log --pretty=one "${DEBIAN_MASTER}" | \ + awk ' + /Ubuntu-/ { + if (match($0, /UBUNTU: Ubuntu-/)) { + print $1 + exit + } + } + ' +) +if [ "${MASTER_COMMIT}" = "${BASE_COMMIT}" ]; then + echo Already up to date. + exit 0 +fi + +if [ -z "${MASTER_COMMIT}" ] || [ -z "${BASE_COMMIT}" ]; then + echo "Could not find either master or base commit." + echo "master commit: ${MASTER_COMMIT}" + echo "base commit: ${BASE_COMMIT}" + exit 1 +fi + +MASTER_VERSION=$(git show --format=%s -s "$MASTER_COMMIT" | sed 's/^UBUNTU: //') +BASE_VERSION=$(git show --format=%s -s "$BASE_COMMIT" | sed 's/^UBUNTU: //') +echo "Rebase still needed between $BASE_VERSION and $MASTER_VERSION." + +if [ "${DRY_RUN}" ]; then + echo "DRY RUN: git rebase --onto ${MASTER_COMMIT} ${BASE_COMMIT}" + exit 0 +fi + +git rebase --onto "${MASTER_COMMIT}" "${BASE_COMMIT}" --- linux-azure-5.8-5.8.0.orig/debian/scripts/link-headers +++ linux-azure-5.8-5.8.0/debian/scripts/link-headers @@ -0,0 +1,42 @@ +#!/bin/bash -e + +. debian/debian.env + +hdrdir="$1" +symdir="$2" +flavour="$3" + +echo "Symlinking and copying headers for $flavour..." + +excludes="( -path ./debian -prune -o -path ./${DEBIAN} -prune -o -path ./.git ) -prune -o" + +( +find . $excludes -type f \ + \( -name 'Makefile*' -o -name 'Kconfig*' -o -name 'Kbuild*' -o \ + -name '*.sh' -o -name '*.pl' -o -name '*.lds' \) -print +find ./include ./scripts -name .gitignore -prune -o -type f -print +find ./include -mindepth 1 -maxdepth 1 $excludes -type d -print +) | ( +while read file; do + dir=$file + lastdir=$file + + if [ -e "$hdrdir/$file" -o -L "$hdrdir/$file" ]; then + continue + fi + + while [ ! -e "$hdrdir/$dir" -a ! -L "$hdrdir/$dir" ]; do + lastdir=$dir + dir=`dirname $dir` + done + # If the last item to exist is a symlink we assume all is good + if [ ! -L "$hdrdir/$dir" ]; then + # Turns things like "./foo" into "../" + deref="`echo -n $lastdir | sed -e 's/^\.//' -e's,/[^/]*,../,g'`" + item="`echo -n $lastdir | sed -e 's/^\.\///'`" + ln -s $deref$symdir/$item $hdrdir/$item + fi +done +) + +exit --- linux-azure-5.8-5.8.0.orig/debian/scripts/misc/final-checks +++ linux-azure-5.8-5.8.0/debian/scripts/misc/final-checks @@ -0,0 +1,68 @@ +#!/bin/bash + +debian="$1" +abi="$2" + +. "$debian/etc/kernelconfig" +archs=$( awk '/^Architecture:/ { $1=""; for (i=1; i<=NF; i++) { if ($i != "all") { print $i }}}' debian/control | sort -u) + +fail=0 + +failure() +{ + echo "EE: $@" 1>&2 + fail=1 +} + +abi_check() +{ + local abidir="$1" + local arch="$2" + local flavour="$3" + + local abidir="$abidir/$arch" + + if [ ! -f "$abidir/$flavour" -a \ + ! -f "$abidir/$flavour.ignore" -a \ + ! -f "$abidir/ignore" ] + then + failure "$arch/$flavour ABI symbol file missing" + fi + + if [ ! -f "$abidir/$flavour.modules" -a \ + ! -f "$abidir/$flavour.ignore.modules" -a \ + ! -f "$abidir/ignore.modules" ] + then + failure "$arch/$flavour ABI modules file missing" + fi + + if [ ! -f "$abidir/$flavour.retpoline" -a \ + ! -f "$abidir/$flavour.ignore.retpoline" -a \ + ! -f "$abidir/ignore.retpoline" ] + then + failure "$arch/$flavour ABI retpoline file missing" + fi +} + +for arch in $archs +do + image_pkg=$(awk -F '\\s*=\\s*' '$1 == "do_flavour_image_package" { print $2 }' $debian/rules.d/$arch.mk) + if [ "$image_pkg" = "false" ]; then + continue + fi + if [ ! -f "$debian/rules.d/$arch.mk" ]; then + continue + fi + flavours=$( + awk '/^\s*flavours\s*=/{ + sub(/^\s*flavours\s*=\s*/, ""); + print + }' "$debian/rules.d/$arch.mk") + for flavour in $flavours + do + flavour=$(echo "$flavour" | sed -e 's@.*/config.flavour.@@') + abi_check "$debian/abi/$abi" "$arch" "$flavour" + done +done + +exit "$fail" --- linux-azure-5.8-5.8.0.orig/debian/scripts/misc/find-missing-sauce.sh +++ linux-azure-5.8-5.8.0/debian/scripts/misc/find-missing-sauce.sh @@ -0,0 +1,15 @@ +#!/bin/bash +# +# Find the 'UBUNTU: SAUCE:' patches that have been dropped from +# the previous release. +# +PREV_REL=focal +PREV_REPO=git://kernel.ubuntu.com/ubuntu/ubuntu-${PREV_REL}.git + +git fetch ${PREV_REPO} master-next +git log --pretty=oneline FETCH_HEAD|grep SAUCE|while read c m;do echo $m;done |sort > $$.prev-rel +git log --pretty=oneline |grep SAUCE|while read c m;do echo $m;done |sort > $$.curr-rel + +diff -u $$.prev-rel $$.curr-rel |grep "^-" +rm -f $$.prev-rel $$.curr-rel + --- linux-azure-5.8-5.8.0.orig/debian/scripts/misc/find-obsolete-firmware +++ linux-azure-5.8-5.8.0/debian/scripts/misc/find-obsolete-firmware @@ -0,0 +1,91 @@ +#!/bin/bash +# +# Find all duplicate or obsolete firmware that is being carried +# in the kernel firmware directory. Compare these files against +# the linux-firmware package for the approriate release. For example, +# assuming this is raring, then compare the kernel firmware files +# against the raring branch of linux-firmware. +# +# Example: $0 ~/ubuntu/linux-firmware-raring + +USEAGE="$0 LINUX-FIRMWARE" + +. debian/debian.env + +NFWINFO="`find $DEBIAN -name fwinfo|wc -l`" +if [ ! "$NFWINFO" = "1" ] +then + echo Your repo is hosed. There can only be one fwinfo file. + find $DEBIAN -name fwinfo + exit 1 +fi + +FWINFO="`pwd`/`find $DEBIAN -name fwinfo`" + +if [ "$1" = "" ] +then + echo $USEAGE + exit 1 +fi +FW="$1" + +if [ ! -f $FW/WHENCE ] +then + echo Bogus linux-firmware directory + exit 1 +fi +if ! egrep -q "^firmware:" $FWINFO +then + echo Bogus firmware info file + exit 1 +fi + +# +# Prepare the tree and make firmware. +# +TEE="tee -a" +LO=`pwd`/firmware.txt +LF=`pwd`/lib/firmware +rm -rf debian/build $LF $LO +fakeroot debian/rules clean prepare-generic +cp debian/build/build-generic/.config . +mkdir -p $LF +make firmware_install INSTALL_MOD_PATH=`pwd` + +(cd $LF +find . -type f | while read f +do + BN="`basename $f`" + + if ! grep -q $BN $FWINFO + then + echo "Unused firmware: $f" | $TEE $LO + else + if [ -f $FW/$f ] + then + if ! cmp $FW/$f $f + then + echo "$f differs" | $TEE $LO + else + echo "$f is duplicated" | $TEE $LO + fi + else + echo "$f does not exist in $FW" | $TEE $LO + fi + fi +done) + +# +# Check for firmware files referenced by the kernel +# that do not exist in either location. +# +cat $FWINFO | while read fwi f +do + if [ -s lib/firmware/$f ] || [ -s $FW/$f ] + then + continue + else + echo "Missing firmware $f" | $TEE $LO + fi +done + --- linux-azure-5.8-5.8.0.orig/debian/scripts/misc/fw-to-ihex.sh +++ linux-azure-5.8-5.8.0/debian/scripts/misc/fw-to-ihex.sh @@ -0,0 +1,18 @@ +#!/bin/bash + +F=$1 +if [ "$F" = "" ] +then + echo You must supply a firmware file. + exit 1 +fi + +echo "unsigned char d[] = {" > $F.c +hexdump -v -e '"\t" 8/1 "0x%02x, " "\n"' $F >> $F.c +echo "};" >> $F.c +sed -i 's/0x .*$//' $F.c + +O="`dirname $F`/`basename $F`.o" +gcc -o $O -c $F.c +objcopy -Oihex $F.o $F.ihex + --- linux-azure-5.8-5.8.0.orig/debian/scripts/misc/gen-auto-reconstruct +++ linux-azure-5.8-5.8.0/debian/scripts/misc/gen-auto-reconstruct @@ -0,0 +1,84 @@ +#!/bin/bash + +if [ "$#" -ne 3 ]; then + echo "Usage: $0 | " 1>&2 + exit 1 +fi +tag="$1" +reconstruct="$2" +options="$3" + +case "$tag" in +v*) ;; +*) tag="v${tag%.*}" ;; +esac + +# Validate the tag. +count=$( git tag -l "$tag" | wc -l ) +if [ "$count" != 1 ]; then + echo "$0: $tag: tag invalid" 1>&2 + exit 1 +fi + +#git ls-tree -r --full-tree HEAD | grep ^120 | \ +#while read mode type blobid name + +( + # Identify all new symlinks since the proffered tag. + echo "# Recreate any symlinks created since the orig." + git diff "$tag.." --raw --no-renames | awk '(/^:000000 120000/ && $5 == "A") { print $NF }' | \ + while read name + do + link=$( readlink "$name" ) + + echo "[ ! -L '$name' ] && ln -sf '$link' '$name'" + done + + # Identify all removed files since the proffered tag. + echo "# Remove any files deleted from the orig." + git diff "$tag.." --raw --no-renames | awk '(/^:/ && $5 == "D") { print $NF }' | \ + while read name + do + echo "rm -f '$name'" + done + + # Identify files with execute permissions added since the proffered tag. + git diff "$tag.." --raw --no-renames | awk -F '[: \t]' '{print $2, $3, $NF }' | \ + while IFS=" " read old new name + do + old=$( printf "0%s" $old ) + new=$( printf "0%s" $new ) + changed=$(( (old ^ new) & 0111 )) + if [ "$changed" -ne 0 ]; then + echo "chmod +x '$name'" + fi + done + + # All done, make sure this does not complete in error. + echo "exit 0" +) >"$reconstruct" + +( + # Identify all new symlinks since the proffered tag. + echo "# Ignore any symlinks created since the orig which are rebuilt by reconstruct." + git diff "$tag.." --raw --no-renames | awk '(/^:000000 120000/ && $5 == "A") { print $NF }' | \ + while read name + do + echo "extend-diff-ignore=^$name\$" + done +) >"$options.update" + + +head='^## autoreconstruct -- begin$' +foot='^## autoreconstruct -- end$' +sed -i -e " + /$head/,/$foot/{ + /$head/{ + p; + r $options.update + }; + /$foot/p; + d + } +" "$options" +rm -f "$options.update" --- linux-azure-5.8-5.8.0.orig/debian/scripts/misc/get-firmware +++ linux-azure-5.8-5.8.0/debian/scripts/misc/get-firmware @@ -0,0 +1,62 @@ +#!/bin/bash +# +# Find all files in linux-firmware that are new or different since the previous release +# and copy them into the kernel firmware directory. You should only do this on the +# backport branch since it would be redundant on the released kernel. It assumed you've +# unpacked linux-firmware from each release into separate directories. +# +# Example: $0 ~/ubuntu/linux-firmware-precise ~/ubuntu/linux-firmware-quantal + +if [ "$1" = "" ] || [ "$2" = "" ] || [ ! -f $1/WHENCE ] || [ ! -f $2/WHENCE ] +then + echo You must supply 2 firmware directories. + exit 1 +fi + +if [ ! -f debian/debian.env ] +then + echo You must run this script from the root of the repo + exit 1 +fi +. debian/debian.env + +NFWINFO="`find $DEBIAN -name fwinfo|wc -l`" +if [ ! "$NFWINFO" = "1" ] +then + echo Your repo is hosed. There can only be one fwinfo file. + find $DEBIAN -name fwinfo + exit 1 +fi + +FWINFO="`pwd`/`find $DEBIAN -name fwinfo`" + +CDIR=`pwd` +OFW=$1 +NFW=$2 + +cd $NFW +# +# Find all files in $NFW that are new or different from $1 +# +(find . -type f | egrep -v "debian|git|LICEN|WHEN|READ|Make|configure" | sed 's;\./;;' | \ +while read f +do + if grep -q $f $FWINFO + then + if [ ! -f $OFW/$f ] + then + echo $f + elif ! cmp $f $OFW/$f > /dev/null + then + echo $f + fi + fi +done) |\ +while read f +do + mkdir -p $CDIR/firmware/`dirname $f` + if [ ! -f $CDIR/firmware/`dirname $f`/`basename $f`.ihex ] + then + cp -v $f $CDIR/firmware/`dirname $f` + fi +done --- linux-azure-5.8-5.8.0.orig/debian/scripts/misc/getabis +++ linux-azure-5.8-5.8.0/debian/scripts/misc/getabis @@ -0,0 +1,194 @@ +#!/bin/bash + +export LC_ALL=C.UTF-8 + +if [ "$#" = "1" ]; then + set - $(echo "$1" | sed -e 's/-/ /') +fi +if [ "$#" != "2" ]; then + echo "Usage: $0 " 1>&2 + echo "Usage: $0 " 1>&2 + exit 1 +fi + +if [ "$DEBIAN" = "" ]; then + . debian/debian.env +fi + +ver=$1 +revision=$2 +abi=$(echo $revision | sed -r -e 's/([^\+~]*)\.[^\.]+(~.*)?(\+.*)?$/\1/') + +verabi=$ver-$abi +verfull=$ver-$revision + +WGET="wget --tries=1 --timeout=10 --quiet -c" + +abidir="`pwd`/$DEBIAN/abi/$verfull" +tmpdir="`pwd`/abi-tmp-$verfull" +origdir="`pwd`" +fwinfo=$abidir/fwinfo + +test -d $tmpdir || mkdir $tmpdir + +package_prefixes() { + : # no longer used ... +} + +getall() { + arch=$1 + shift + + mkdir -p $abidir/$arch + + for sub in $@; do + if [ -f $abidir/$arch/$sub ]; then + echo "Existing $sub($arch)..." + continue + fi + echo "Fetching $sub($arch)..." + getall_set "linux-buildinfo" "$arch" "$sub" || \ + getall_set "linux-image-unsigned linux-modules linux-modules-extra" "$arch" "$sub" || \ + getall_set "linux-image-unsigned linux-modules" "$arch" "$sub" || \ + getall_set "linux-image linux-modules linux-modules-extra" "$arch" "$sub" || \ + getall_set "linux-image linux-modules" "$arch" "$sub" || \ + getall_set "linux-image linux-image-extra" "$arch" "$sub" || \ + getall_set "linux-image" "$arch" "$sub" || \ + { echo "FAILED"; exit 1; } + done +} +getall_set() +{ + prefixes="$1" + arch="$2" + sub="$3" + ( + echo -n " set:" + filenames="" + cd $tmpdir + found=1 + for prefix in $prefixes + do + echo -n " $prefix=" + if [ "$found" = 0 ]; then + echo -n "-" + continue + fi + filename=${prefix}-${verabi}-${sub}_${verfull}_${arch}.deb + for r in "${repo_list[@]}" + do + if ! [ -f $filename ]; then + $WGET $r/$filename + rc="$?" + # If this was not successful or a valid error + # return from the server all bets are off, bail. + [ "$rc" != 0 -a "$rc" != 8 ] && return 2 + fi + if [ -f $filename ]; then + echo -n "y" + filenames="$filenames $filename" + break + fi + done + if [ ! -f "$filename" ]; then + echo -n "n" + found=0 + fi + done + echo "" + if [ "$found" = 0 ]; then + return 1 + fi + echo " extracting..." + for filename in $filenames + do + dpkg-deb --extract $filename tmp + done + # FORM 1: linux-image et al extracted here. + if [ -d tmp/boot ]; then + echo " images..." + find tmp -name "*.ko" | while read f; do + modinfo $f | grep ^firmware >> $fwinfo + done + if [ -f tmp/boot/abi-* ]; then + mv tmp/boot/abi-* $abidir/$arch/$sub + else + echo " NO ABI FILE" + fi + if [ -f tmp/boot/retpoline-* ]; then + mv tmp/boot/retpoline-* $abidir/$arch/$sub.retpoline + else + echo " NO RETPOLINE FILE" + fi + (cd tmp; find lib/modules/$verabi-$sub/kernel -name '*.ko') | \ + sed -e 's/.*\/\([^\/]*\)\.ko/\1/' | sort > \ + $abidir/$arch/$sub.modules + ( + cd tmp; + # Prevent exposing some errors when called by python scripts. SIGPIPE seems to get + # exposed when using the `find ...` form of the command. + ko=$(find lib/modules/$verabi-$sub/kernel \ + -name '*.ko' | head -1) + readelf -p .comment "$ko" | gawk ' + ($1 == "[") { + printf("%s", $3); + for (n=4; n<=NF; n++) { + printf(" %s", $n); + } + print "" + }' | sort -u >$abidir/$arch/$sub.compiler + version=`cat $abidir/$arch/$sub.compiler` + echo " $version" + ) + # FORM 2: moduleinfo packages + # cranky fix -- modinfo supported + else + echo " buildinfo..." + base="tmp/usr/lib/linux/${verabi}-${sub}" + mv "$base/abi" "$abidir/$arch/$sub" + for comp in 'modules' 'retpoline' 'compiler' + do + mv "$base/$comp" "$abidir/$arch/$sub.$comp" + done + cat "$base/fwinfo" >>"$fwinfo" + fi + rm -rf tmp $filenames + echo " done" + ) + rc="$?" + if [ "$rc" = 2 ]; then + echo "ERROR: downloads are reporting network failures" 1>&2 + exit 1 + fi + return "$rc" +} + +# MAIN + +# Setup abi directory +mkdir -p $abidir +echo $abi > $abidir/abiname + +# NOTE: The flavours are hardcoded, because they may have changed from the +# current build. + +. $DEBIAN/etc/getabis + +# Extract compiler source package version from e.g.: +# GCC: (Ubuntu/Linaro 4.8.2-19ubuntu1) 4.8.2 +compilers=`sed 's/^.*(.* \(.*\)).*$/\1/' $abidir/*/*.compiler | sort -u | wc -l` +if [ "$compilers" != 1 ]; then + echo "WARNING: inconsistent compiler versions detected:" 1>&2 + sort -u $abidir/*/*.compiler | sed 's/^/WARNING: /' 1>&2 +fi + +sort < $fwinfo | uniq > fwinfo.tmp +mv fwinfo.tmp $fwinfo + +rmdir $tmpdir + +# If this is running in a git repo, add the new ABI directory, remove the old +if [ -d ".git" ]; then + git add $abidir + find $DEBIAN/abi/* -maxdepth 0 -type d | grep -v $verfull | while read f; do git rm -r -f $f;done +fi --- linux-azure-5.8-5.8.0.orig/debian/scripts/misc/git-ubuntu-log +++ linux-azure-5.8-5.8.0/debian/scripts/misc/git-ubuntu-log @@ -0,0 +1,166 @@ +#!/usr/bin/python3 + +import sys + +import codecs +import urllib.request +import json + +import textwrap + +sys.stdin = codecs.getreader("utf-8")(sys.stdin.detach()) +sys.stdout = codecs.getwriter("utf-8")(sys.stdout.detach()) + +entries = [] + + +def add_entry(entry): + if entry and 'ignore' not in entry: + combo = [] + for bug in set(entry.get('bugs', [])): + combo.append(bug) + for cve in set(entry.get('cves', [])): + combo.append(cve) + combo = sorted(combo) + + if len(combo) == 0: + if entry.get('subject', "").startswith('UBUNTU'): + combo = '__packaging__' + else: + combo = '__mainline__' + else: + if entry.get('subject', "") == 'UBUNTU: link-to-tracker: update tracking bug': + # Construct a key with '__trackingbug__' on the first position + # and the tracking bug number afterwards + combo.insert(0, '__trackingbug__') + # Tracking bug goes at the top + keys.insert(0, combo) + else: + if combo not in keys: + keys.append(combo) + + entry['key'] = combo + entries.append(entry) + + +# Suck up the git log output and extract the information we need. +keys = [] +entry = None +subject_wait = False +for line in sys.stdin: + if line.startswith('commit '): + add_entry(entry) + entry = {} + subject_wait = True + + elif line.startswith('Author: '): + bits = line.strip().split(maxsplit=1) + entry['author'] = bits[1] + + elif subject_wait and line.startswith(' '): + subject_wait = False + entry['subject'] = line.strip() + + elif line.startswith(' BugLink: '): + bits = line.strip().split(maxsplit=2) + if len(bits) > 2: + # There is text after the URL, so use that (after stripping the + # enclosing characters) + entry.setdefault('bugs', []).append(bits[2][1:-1]) + elif 'launchpad.net' in bits[1]: + # Extract the bug number from the launchpad URL + bits = bits[1].split('/') + entry.setdefault('bugs', []).append(bits[-1]) + + elif line.startswith(' CVE-'): + entry.setdefault('cves', []).append(line.strip()) + + elif line.startswith(' Ignore:'): + entry['ignore'] = True + + elif line.startswith(' Properties:'): + for prop in line.strip().split()[1:]: + if prop in ('ignore', 'no-changelog'): + entry['ignore'] = True + +add_entry(entry) + +entries.reverse() + +# Go through the entries and clear out authors for upstream commits. +for entry in entries: + if entry['subject'].startswith('UBUNTU:'): + entry['subject'] = entry['subject'][7:].strip() + else: + del entry['author'] + +# Lump everything without a bug at the bottom. +keys.append('__packaging__') +keys.append('__mainline__') + +emit_nl = False +for key in keys: + if key == '__packaging__': + title_set = ['Miscellaneous Ubuntu changes'] + elif key == '__mainline__': + title_set = ['Miscellaneous upstream changes'] + else: + title_set = [] + for bug in key: + if bug.startswith('CVE-'): + title_set.append(bug) + elif bug == '__trackingbug__': + # Look for the tracking bug number on the second + # position of the key + continue + elif bug.isdigit(): + # Assume that it is an LP bug number if 'bug' contains only digits + bug_info = None + + try: + # urllib.request.urlcleanup() + request = urllib.request.Request('https://api.launchpad.net/devel/bugs/' + bug) + request.add_header('Cache-Control', 'max-age=0') + with urllib.request.urlopen(request) as response: + data = response.read() + bug_info = json.loads(data.decode('utf-8')) + + title = bug_info['title'] + if 'description' in bug_info: + for line in bug_info['description'].split('\n'): + if line.startswith('Kernel-Description:'): + title = line.split(' ', 1)[1] + + except urllib.error.HTTPError: + title = 'INVALID or PRIVATE BUG' + + title += ' (LP###' + bug + ')' + title_set.append(title) + else: + # Finally treat 'bug' itself as the title + title_set.append(bug) + + emit_title = True + for entry in entries: + if entry['key'] != key: + continue + + if emit_title: + if emit_nl: + print('') + emit_nl = True + + title_lines = textwrap.wrap('#// '.join(title_set), 76) + print(' * ' + title_lines[0].replace('LP###', 'LP: #').replace('#//', ' //')) + for line in title_lines[1:]: + line = line.replace('LP###', 'LP: #').replace('#//', ' //') + print(' ' + line) + + emit_title = False + + if key[0] != '__trackingbug__': + title_lines = textwrap.wrap(entry['subject'], 76) + print(' - ' + title_lines[0]) + for line in title_lines[1:]: + line = line.replace('LP###', 'LP: #') + print(' ' + line) --- linux-azure-5.8-5.8.0.orig/debian/scripts/misc/insert-changes.pl +++ linux-azure-5.8-5.8.0/debian/scripts/misc/insert-changes.pl @@ -0,0 +1,43 @@ +#!/usr/bin/perl -w + +my $debian; +$droot = $ARGV[0] if (defined $ARGV[0]); +$droot = 'debian' if (!defined $droot); +$debian = $ARGV[1] if (defined $ARGV[1]); +$debian = 'debian.master' if (!defined $debian); + +system("make -s -f $droot/rules printchanges > $debian/changes"); + +open(CHANGELOG, "< $debian/changelog") or die "Cannot open changelog"; +open(CHANGES, "< $debian/changes") or die "Cannot open new changes"; +open(NEW, "> $debian/changelog.new") or die "Cannot open new changelog"; + +$printed = 0; +my $skip_newline = 0; + +while () { + if (/^ CHANGELOG: /) { + next if $printed; + + $skip_newline = 1; + while () { + $skip_newline = 0; + print NEW; + } + + $printed = 1; + } else { + if (/^$/ && $skip_newline == 1) { + $skip_newline = 0; + next; + } + print NEW; + } +} + +close(NEW); +close(CHANGES); +close(CHANGELOG); + +rename("$debian/changelog.new", "$debian/changelog"); +unlink("$debian/changes"); --- linux-azure-5.8-5.8.0.orig/debian/scripts/misc/insert-mainline-changes +++ linux-azure-5.8-5.8.0/debian/scripts/misc/insert-mainline-changes @@ -0,0 +1,42 @@ +#!/usr/bin/perl + +if ($#ARGV != 2) { + warn "Usage: $0 \n"; + die " $0 debian.master/changelog v3.2.3 v3.2.2..v3.2.3\n"; +} +my ($changelog, $to, $range) = @ARGV; + +my @changes = (); + +push(@changes, "\n"); +push(@changes, " [ Upstream Kernel Changes ]\n\n"); +push(@changes, " * rebase to $to\n"); + +open(LOG, "git log '$range'|") || die "$0: git log failed: - $!\n"; +while () { + if (m@BugLink: .*launchpad.net/.*/([0-9]+)\s$@) { + push(@changes, " - LP: #$1\n"); + } +} +close(LOG); + +open(CHANGELOG, "< $changelog") or die "Cannot open changelog"; +open(NEW, "> $changelog.new") or die "Cannot open new changelog"; + +$printed = 3; +while () { + if (/^ CHANGELOG: /) { + $printed--; + print NEW; + if ($printed == 0) { + print NEW @changes; + } + next; + } + print NEW; +} + +close(NEW); +close(CHANGELOG); + +rename("$changelog.new", "$changelog"); --- linux-azure-5.8-5.8.0.orig/debian/scripts/misc/insert-ubuntu-changes +++ linux-azure-5.8-5.8.0/debian/scripts/misc/insert-ubuntu-changes @@ -0,0 +1,83 @@ +#!/usr/bin/perl + +if ($#ARGV != 2 && $#ARGV != 3) { + die "Usage: $0 []\n"; +} +if ($#ARGV == 2) { + push(@ARGV, "debian.master/changelog") +} +my ($changelog, $end, $start, $source_changelog) = @ARGV; + +$end =~ s/^\D+//; +$start =~ s/^\D+//; + +sub version_cmp($$) { + my @a = split(/[\.-]+/, $_[0]); + my @b = split(/[\.-]+/, $_[1]); + for (my $i = 1;; $i++) { + if (!defined $a[$i]) { + if (!defined $b[$i]) { + return 0; + } + return -1; + } + if (!defined $b[$i]) { + return 1; + } + if ($a[$i] < $b[$i]) { + return -1; + } + if ($a[$i] > $b[$i]) { + return 1; + } + } +} + +my @changes = (); +my $output = 0; +open(CHG, "<$source_changelog") || + open(CHG, ") { + if (/^\S+\s+\((.*)\)/) { + if (version_cmp($1, $end) <= 0) { + last; + } + if ($1 eq $start) { + $output = 1; + } + if ($output) { + push(@changes, "\n [ Ubuntu: $1 ]\n\n"); + next; + } + } + next if ($output == 0); + + next if (/^\s*$/); + next if (/^\s--/); + next if (/^\s\s[^\*\s]/); + + push(@changes, $_); +} +close(CHG); + +open(CHANGELOG, "< $changelog") or die "Cannot open changelog"; +open(NEW, "> $changelog.new") or die "Cannot open new changelog"; + +$printed = 3; +while () { + if (/^ CHANGELOG: /) { + $printed--; + print NEW; + if ($printed == 0) { + print NEW @changes; + } + next; + } + print NEW; +} + +close(NEW); +close(CHANGELOG); + +rename("$changelog.new", "$changelog"); --- linux-azure-5.8-5.8.0.orig/debian/scripts/misc/kernel-wedge-arch.pl +++ linux-azure-5.8-5.8.0/debian/scripts/misc/kernel-wedge-arch.pl @@ -0,0 +1,26 @@ +#!/usr/bin/perl +# +# kernel-wedge-arch.pl -- select only specifiers for the supplied arch. +# +use strict; + +require Dpkg::Control; +require Dpkg::Deps; + +my $fh = \*STDIN; + +my @entries; + +my $wanted = $ARGV[0]; + +my $entry; +while (!eof($fh)) { + $entry = Dpkg::Control->new(); + $entry->parse($fh, '???'); + + if ($entry->{'Architecture'} eq $wanted) { + print("\n" . $entry); + } +} + +close($fh); --- linux-azure-5.8-5.8.0.orig/debian/scripts/misc/kernelconfig +++ linux-azure-5.8-5.8.0/debian/scripts/misc/kernelconfig @@ -0,0 +1,207 @@ +#!/bin/bash + +. debian/debian.env + +# Script to merge all configs and run 'make syncconfig' on it to wade out bad juju. +# Then split the configs into distro-commmon and flavour-specific parts + +# We have to be in the top level kernel source directory +if [ ! -f MAINTAINERS ] || [ ! -f Makefile ]; then + echo "This does not appear to be the kernel source directory." 1>&2 + exit 1 +fi + +mode=${1:?"Usage: $0 (oldconfig|editconfig) [do_enforce_all]"} +do_enforce_all=${2:-0} +yes=0 +case "$mode" in + update*configs) mode='syncconfig' ;; + default*configs) mode='oldconfig'; yes=1 ;; + edit*configs) ;; # All is good + gen*configs) mode='genconfigs' ;; # All is good + dump*configs) mode='config'; yes=1 ;; + *) echo "$0 called with invalid mode" 1>&2 + exit 1 ;; +esac +kerneldir="`pwd`" +confdir="$kerneldir/${DEBIAN}/config" +variant="$2" + +. $DEBIAN/etc/kernelconfig + +bindir="`pwd`/${DROOT}/scripts/misc" +common_conf="$confdir/config.common.$family" +tmpdir=`mktemp -d` +mkdir "$tmpdir/CONFIGS" + +if [ "$mode" = "genconfigs" ]; then + keep=1 + mode="oldconfig" + test -d CONFIGS || mkdir CONFIGS +fi + +warning_partial= + +for arch in $archs; do + rm -rf build + mkdir build + + # Map debian archs to kernel archs + case "$arch" in + ppc64|ppc64el) kernarch="powerpc" ;; + amd64) kernarch="x86_64" ;; + lpia) kernarch="x86" ;; + sparc) kernarch="sparc64" ;; + armel|armhf) kernarch="arm" ;; + s390x) kernarch="s390" ;; + riscv64) kernarch="riscv" ;; + *) kernarch="$arch" ;; + esac + + # Determine cross toolchain to use for Kconfig compiler tests + cross_compile="" + deb_build_arch=$(dpkg-architecture -qDEB_BUILD_ARCH -a$arch 2>/dev/null) + deb_host_arch=$(dpkg-architecture -qDEB_HOST_ARCH -a$arch 2>/dev/null) + [ $deb_build_arch != $deb_host_arch ] && cross_compile="$(dpkg-architecture -qDEB_HOST_GNU_TYPE -a$arch 2>/dev/null)-" + + # Environment variables for 'make *config'. We omit CROSS_COMPILE + # for i386 since it is no longer supported after 19.04, however + # we maintain the configs for hwe. + modify_config=true + env="ARCH=$kernarch" + compiler_path=$(which "${cross_compile}gcc" || true) + if [ "$compiler_path" != '' ]; then + env="$env CROSS_COMPILE=$cross_compile" + else + echo "WARNING: ${cross_compile}gcc not installed" + modify_config= + warning_partial="$warning_partial $arch" + fi + + archconfdir=$confdir/$arch + flavourconfigs=$(cd $archconfdir && ls config.flavour.*) + + # Merge configs + # We merge config.common.ubuntu + config.common. + + # config.flavour. + + for config in $flavourconfigs; do + fullconf="$tmpdir/$arch-$config-full" + case $config in + *) + : >"$fullconf" + if [ -f $common_conf ]; then + cat $common_conf >> "$fullconf" + fi + if [ -f $archconfdir/config.common.$arch ]; then + cat $archconfdir/config.common.$arch >> "$fullconf" + fi + cat "$archconfdir/$config" >>"$fullconf" + if [ -f $confdir/OVERRIDES ]; then + cat $confdir/OVERRIDES >> "$fullconf" + fi + ;; + esac + done + + for config in $flavourconfigs; do + if [ -f $archconfdir/$config ]; then + fullconf="$tmpdir/$arch-$config-full" + cat "$fullconf" > build/.config + # Call oldconfig or menuconfig + if [ "$modify_config" ]; then + case "$mode" in + editconfigs) + # Interactively edit config parameters + while : ; do + echo -n "Do you want to edit config: $arch/$config? [Y/n] " + read choice + case "$choice" in + y* | Y* | "" ) + make O=`pwd`/build $env menuconfig + break ;; + n* | N* ) + # 'syncconfig' prevents + # errors for '-' options set + # in common config fragments + make O=`pwd`/build $env syncconfig + break ;; + *) + echo "Entry not valid" + esac + done + ;; + *) + echo "* Run $mode (yes=$yes) on $arch/$config ..." + if [ "$yes" -eq 1 ]; then + yes "" | make O=`pwd`/build $env "$mode" + else + make O=`pwd`/build $env "$mode" + fi ;; + esac + fi + cat build/.config > $archconfdir/$config + [ "$modify_config" ] && cat build/.config >"$tmpdir/CONFIGS/$arch-$config" + if [ "$keep" = "1" ]; then + cat build/.config > CONFIGS/$arch-$config + fi + else + echo "!! Config not found $archconfdir/$config..." + fi + done + + echo "Running splitconfig.pl for $arch" + echo + + # Can we make this more robust by avoiding $tmpdir completely? + # This approach was used for now because I didn't want to change + # splitconfig.pl + (cd $archconfdir; $bindir/splitconfig.pl config.flavour.*; mv config.common \ + config.common.$arch; cp config.common.$arch $tmpdir) +done + +rm -f $common_conf + +# Now run splitconfig.pl on all the config.common. copied to +# $tmpdir +(cd $tmpdir; $bindir/splitconfig.pl *) +( + cd $confdir; + rm -f *-full + grep -v 'is UNMERGABLE' <$tmpdir/config.common >$common_conf + for arch in $archs; do + grep -v 'is UNMERGABLE' <$tmpdir/config.common.$arch \ + >$arch/config.common.$arch + done +) + +echo "" +echo "Running config-check for all configurations ..." +echo "" +fail=0 +for arch in $archs; do + archconfdir=$confdir/$arch + flavourconfigs=$(cd $archconfdir && ls config.flavour.*) + for config in $flavourconfigs; do + flavour="${config##*.}" + if [ -f $archconfdir/$config ]; then + fullconf="$tmpdir/CONFIGS/$arch-$config" + [ ! -f "$fullconf" ] && continue + "$bindir/../config-check" "$fullconf" "$arch" "$flavour" "$confdir" "0" "$do_enforce_all" || let "fail=$fail+1" + fi + done +done + +if [ "$fail" != 0 ]; then + echo "" + echo "*** ERROR: $fail config-check failures detected" + echo "" +fi + +rm -rf build + +if [ "$warning_partial" ]; then + echo "" + echo "WARNING: configuration operation applied only to a subset of architectures (skipped$warning_partial)" 1>&2 + echo "" +fi --- linux-azure-5.8-5.8.0.orig/debian/scripts/misc/retag +++ linux-azure-5.8-5.8.0/debian/scripts/misc/retag @@ -0,0 +1,34 @@ +#!/usr/bin/perl -w + +open(TAGS, "git tag -l |") or die "Could not get list of tags"; +@tags = ; +close(TAGS); + +open(LOGS, "git log --pretty=short |") or die "ERROR: Calling git log"; +my $commit = ""; + +while () { + my $origtag; + + if (m|^commit (.*)$|) { + $commit = $1; + next; + } + + m|\s*UBUNTU: (Ubuntu-2\.6\..*)| or next; + + $tag = $1; + + ($origtag) = grep(/^$tag.orig$/, @tags); + + if (!defined($origtag)) { + print "I: Adding original tag for $tag\n"; + system("git tag -m $tag $tag.orig $tag"); + } + + print "I: Tagging $tag => $commit\n"; + + system("git tag -f -m $tag $tag $commit"); +} + +close(LOGS); --- linux-azure-5.8-5.8.0.orig/debian/scripts/misc/splitconfig.pl +++ linux-azure-5.8-5.8.0/debian/scripts/misc/splitconfig.pl @@ -0,0 +1,107 @@ +#!/usr/bin/perl -w + +%allconfigs = (); +%common = (); + +print "Reading config's ...\n"; + +for $config (@ARGV) { + # Only config.* + next if $config !~ /^config\..*/; + # Nothing that is disabled, or remnant + next if $config =~ /.*\.(default|disabled|stub)$/; + + %{$allconfigs{$config}} = (); + + print " processing $config ... "; + + open(CONFIG, "< $config"); + + while () { + # Skip comments + /^#*\s*CONFIG_(\w+)[\s=](.*)$/ or next; + + ${$allconfigs{$config}}{$1} = $2; + + $common{$1} = $2; + } + + close(CONFIG); + + print "done.\n"; +} + +print "\n"; + +print "Merging lists ... \n"; + +# %options - pointer to flavour config inside the allconfigs array +for $config (keys(%allconfigs)) { + my %options = %{$allconfigs{$config}}; + + print " processing $config ... "; + + for $key (keys(%common)) { + next if not defined $common{$key}; + + # If we don't have the common option, then it isn't + # common. If we do have that option, it must have the same + # value. EXCEPT where this file does not have a value at all + # which may safely be merged with any other value; the value + # will be elided during recombination of the parts. + if (!defined($options{$key})) { + # Its ok really ... let it merge + } elsif (not defined($options{$key})) { + undef $common{$key}; + } elsif ($common{$key} ne $options{$key}) { + undef $common{$key}; + } + } + + print "done.\n"; +} + +print "\n"; + +print "Creating common config ... "; + +open(COMMON, "> config.common"); +print COMMON "#\n# Common config options automatically generated by splitconfig.pl\n#\n"; + +for $key (sort(keys(%common))) { + if (not defined $common{$key}) { + print COMMON "# CONFIG_$key is UNMERGABLE\n"; + } elsif ($common{$key} eq "is not set") { + print COMMON "# CONFIG_$key is not set\n"; + } else { + print COMMON "CONFIG_$key=$common{$key}\n"; + } +} +close(COMMON); + +print "done.\n\n"; + +print "Creating stub configs ...\n"; + +for $config (keys(%allconfigs)) { + my %options = %{$allconfigs{$config}}; + + print " processing $config ... "; + + open(STUB, "> $config"); + print STUB "#\n# Config options for $config automatically generated by splitconfig.pl\n#\n"; + + for $key (sort(keys(%options))) { + next if defined $common{$key}; + + if ($options{$key} =~ /^is /) { + print STUB "# CONFIG_$key $options{$key}\n"; + } else { + print STUB "CONFIG_$key=$options{$key}\n"; + } + } + + close(STUB); + + print "done.\n"; +} --- linux-azure-5.8-5.8.0.orig/debian/scripts/misc/tristate.sh +++ linux-azure-5.8-5.8.0/debian/scripts/misc/tristate.sh @@ -0,0 +1,26 @@ +#!/bin/bash + +# +# Find config variables that might be able to transition from =y to =m +# +# Example: debian/scripts/misc/tristate.sh debian.master/config/config.common.ubuntu +# + +KC=Kconfig.tmp +rm -f ${KC} +find .|grep Kconfig | while read f +do + cat $f >> ${KC} +done + +grep =y $1 | sed -e 's/CONFIG_//' -e 's/=y//' | while read c +do + cat < tristate.awk +BEGIN { tristate=0; } +/^config ${c}\$/ { tristate=1; next; } +/tristate/ { if (tristate == 1) printf("CONFIG_%s=m\n","${c}"); next; } +{ if (tristate == 1) exit; } +EOF + + gawk -f tristate.awk ${KC} +done --- linux-azure-5.8-5.8.0.orig/debian/scripts/misc/update-aufs.sh +++ linux-azure-5.8-5.8.0/debian/scripts/misc/update-aufs.sh @@ -0,0 +1,50 @@ +#!/bin/bash + +AUFS=aufs4-standalone + +# +# Before you run this be sure you've removed or reverted the 'UBUNTU: SAUCE: AUFS" patch. +# +# +# Make sure the current working directory is at the top of the +# linux tree. +# +if ! grep PATCHLEVEL Makefile +then + echo "You must run this script from the top of the linux tree" + exit 1 +fi + +clean=0 +if [ "$#" = 1 ]; then + AUFS="$1" +else + clean=1 + rm -rf ${AUFS} + git clone https://github.com/sfjro/aufs5-standalone.git ${AUFS} + (cd ${AUFS}; git checkout -b aufs5.x-rcN remotes/origin/aufs5.x-rcN) +fi + +cp ${AUFS}/include/uapi/linux/aufs_type.h include/uapi/linux +rsync -av ${AUFS}/fs/ fs/ +rsync -av ${AUFS}/Documentation/ Documentation/ + +PATCHES="${PATCHES} aufs5-kbuild.patch" +PATCHES="${PATCHES} aufs5-base.patch" +PATCHES="${PATCHES} aufs5-mmap.patch" +PATCHES="${PATCHES} aufs5-standalone.patch" +PATCHES="${PATCHES} aufs5-loopback.patch" +#PATCHES="${PATCHES} vfs-ino.patch" +PATCHES="${PATCHES} tmpfs-idr.patch" + +for i in ${PATCHES} +do + patch -p1 < ${AUFS}/$i +done + +[ "$clean" = 1 ] && rm -rf ${AUFS} +git add mm/prfile.c +git add -u +find . -name "*.orig" | xargs rm +find . |grep aufs | xargs git add +git commit -s -m"UBUNTU: SAUCE: AUFS" --- linux-azure-5.8-5.8.0.orig/debian/scripts/module-check +++ linux-azure-5.8-5.8.0/debian/scripts/module-check @@ -0,0 +1,120 @@ +#!/usr/bin/perl -w + +$flavour = shift; +$prev_abidir = shift; +$abidir = shift; +$skipmodule = shift; + +print "II: Checking modules for $flavour..."; + +if (-f "$prev_abidir/ignore.modules" + or -f "$prev_abidir/$flavour.ignore.modules") { + print "explicitly ignoring modules\n"; + exit(0); +} + +if (not -f "$abidir/$flavour.modules" or not -f + "$prev_abidir/$flavour.modules") { + print "previous or current modules file missing!\n"; + print " $abidir/$flavour.modules\n"; + print " $prev_abidir/$flavour.modules\n"; + if (defined($skipmodule)) { + exit(0); + } else { + exit(1); + } +} + +print "\n"; + +my %modules; +my %modules_ignore; +my $missing = 0; +my $new = 0; +my $errors = 0; + +# See if we have any ignores +if (-f "$prev_abidir/../modules.ignore") { + my $ignore = 0; + open(IGNORE, "< $prev_abidir/../modules.ignore") or + die "Could not open $prev_abidir/../modules.ignore"; + print " reading modules to ignore..."; + while () { + chomp; + next if /\s*#/; + $modules_ignore{$_} = 1; + $ignore++; + } + close(IGNORE); + print "read $ignore modules.\n"; +} + +# Read new modules first +print " reading new modules..."; +$new_count = 0; +open(NEW, "< $abidir/$flavour.modules") or + die "Could not open $abidir/$flavour.modules"; +while () { + chomp; + $modules{$_} = 1; + $new_count++; +} +close(NEW); +print "read $new_count modules.\n"; + +# Now the old modules, checking for missing ones +print " reading old modules..."; +$old_count = 0; +open(OLD, "< $prev_abidir/$flavour.modules") or + die "Could not open $prev_abidir/$flavour.modules"; +while () { + chomp; + if (not defined($modules{$_})) { + print "\n" if not $missing; + $missing++; + if (not defined($modules_ignore{$_})) { + print " MISS: $_\n"; + $errors++; + } else { + print " MISS: $_ (ignored)\n"; + } + } else { + $modules{$_}++; + } + $old_count++; +} +close(OLD); +# Check for new modules +foreach $mod (keys(%modules)) { + if ($modules{$mod} < 2) { + print "\n" if not $missing and not $new; + print " NEW : $mod\n"; + $new++; + } +} +if ($new or $missing) { + print " read $old_count modules : new($new) missing($missing)\n"; +} else { + print "read $old_count modules.\n"; +} + + +# Let's see where we stand... +if ($errors) { + if (defined($skipmodule)) { + print "WW: Explicitly asked to ignore failures (probably not good)\n"; + } else { + print "EE: Missing modules (start begging for mercy)\n"; + exit 1 + } +} + +if ($new) { + print "II: New modules (you've been busy, wipe the poop off your nose)\n"; +} else { + print "II: No new modules (hope you're happy, slacker)\n"; +} + +print "II: Done\n"; + +exit(0); --- linux-azure-5.8-5.8.0.orig/debian/scripts/module-inclusion +++ linux-azure-5.8-5.8.0/debian/scripts/module-inclusion @@ -0,0 +1,104 @@ +#!/bin/bash + +# +# Build a new directory of modules based on an inclusion list. +# The includsion list format must be a bash regular expression. +# +# usage: $0 ROOT INCLUSION_LIST +# example: $0 \ +# debian/build/build-virtual-ALL debian/build/build-virtual \ +# debian.master/control.d/virtual.inclusion-list \ +# virtual.depmap +master=0 +if [ "$1" = "--master" ]; then + master=1 + shift +fi + +ROOT=$1 +NROOT=$2 +ILIST=$3 +DEPMAP=$4 + +tmp="/tmp/module-inclusion.$$" + +# +# Prep a destination directory. +# +mkdir -p ${NROOT} + +{ + # Copy over the framework into the master package. + if [ "$master" -eq 1 ]; then + (cd ${ROOT}; find . ! -name "*.ko" -type f) + fi + + # Copy over modules by name or pattern. + while read -r i + do + # + # 'find' blurts a warning if it cannot find any ko files. + # + case "$i" in + \!*) + (cd ${ROOT}; ${i#!} || true) + ;; + *\**) + (cd ${ROOT}; eval find "${i}" -name "*.ko" || true) + ;; + *) + echo "$i" + ;; + esac + done <"${ILIST}" +} >"$tmp" + +# Copy over the listed modules. +while read i +do + # If this is already moved over, all is good. + if [ -f "${NROOT}/$i" ]; then + : + + # If present in the source, moved it over. + elif [ -f "${ROOT}/$i" ]; then + mkdir -p "${NROOT}/`dirname $i`" + mv "${ROOT}/$i" "${NROOT}/$i" + + # Otherwise, it is missing. + else + echo "Warning: Could not find ${ROOT}/$i" 1>&2 + fi +done <"$tmp" + +# Copy over any dependancies, note if those are missing +# we know they are in a pre-requisite package as they must +# have existed at depmap generation time, and can only have +# moved into a package. +let n=0 || true +while [ -s "$tmp" ] +do + let n="$n+1" || true + [ "$n" = "20" ] && break || true + + echo "NOTE: pass $n: dependency scan" 1>&2 + + while read i + do + grep "^$i " "$DEPMAP" | \ + while read m d + do + if [ -f "${ROOT}/$d" ]; then + echo "NOTE: pass $n: ${i} pulls in ${d}" 1>&2 + echo "$d" + mkdir -p "${NROOT}/`dirname $d`" + mv "${ROOT}/$d" "${NROOT}/$d" + fi + done + done <"$tmp" >"$tmp.new" + mv -f "$tmp.new" "$tmp" +done + +rm -f "$tmp" + +exit 0 --- linux-azure-5.8-5.8.0.orig/debian/scripts/retpoline-check +++ linux-azure-5.8-5.8.0/debian/scripts/retpoline-check @@ -0,0 +1,47 @@ +#!/bin/bash + +flavour="$1" +prev_abidir="$2" +curr_abidir="$3" +skipretpoline="$4" + +echo "II: Checking retpoline indirections for $flavour..."; + +if [ "$skipretpoline" = 'true' ]; then + echo "manual request ignoring retpoline delta" +fi + +if [ -f "$prev_abidir/ignore.retpoline" -o \ + -f "$prev_abidir/$flavour.ignore.retpoline" ]; then + echo "explicitly ignoring retpoline delta" + skipretpoline='true' +fi + +prev="$prev_abidir/$flavour.retpoline" +curr="$curr_abidir/$flavour.retpoline" +if [ ! -f "$prev" ]; then + echo "previous retpoline file missing!" + echo " $prev" + prev="/dev/null" +fi +if [ ! -f "$curr" ]; then + echo "current retpoline file missing!" + echo " $curr" + curr="/dev/null" +fi + +echo "II: retpoline delta in this package..." +rc=0 +diff -u "$prev" "$curr" || true +count=$( diff -u "$prev" "$curr" | grep '^+[^+]' | wc -l ) +if [ "$count" != 0 ]; then + rc=1 + echo "WW: $count new retpoline sequences detected" +fi + +echo "II: Done"; +if [ "$skipretpoline" = 'true' -a "$rc" -ne 0 ]; then + echo "II: ignoring errors" + exit 0 +fi +exit "$rc" --- linux-azure-5.8-5.8.0.orig/debian/scripts/retpoline-extract +++ linux-azure-5.8-5.8.0/debian/scripts/retpoline-extract @@ -0,0 +1,23 @@ +#!/bin/bash + +cd "$1" || exit 1 + +# Find all valid retpoline information, collate the detected and +# safe information together. Join the result to find the detected +# but non-safe elements. These are our concern. +ur_detected=$(mktemp --tmpdir "retpoline-check-XXXXXX.ur-detected") +ur_safe=$(mktemp --tmpdir "retpoline-check-XXXXXX.ur-safe") + +find "." -path './drivers/firmware/efi/libstub' -prune -o \ + -path './arch/x86/boot' -prune -o \ + -path './arch/x86/purgatory' -prune -o \ + -name \*.ur-detected -print0 | xargs -0 cat | \ + sed -e "s@^$1@@" -e "s@ $2/@ @" -e "s@^/@@" | \ + sort -k 1b,1 >"$ur_detected" +find "." -name \*.ur-safe -print0 | xargs -0 cat | \ + sed -e "s@^$1@@" -e "s@^/@@" | \ + sort -k 1b,1 >"$ur_safe" + +join -v 1 -j 1 "$ur_detected" "$ur_safe" | sed -s 's/[^ ]* *//' + +rm -f "$ur_detected" "$ur_safe" --- linux-azure-5.8-5.8.0.orig/debian/scripts/retpoline-extract-one +++ linux-azure-5.8-5.8.0/debian/scripts/retpoline-extract-one @@ -0,0 +1,270 @@ +#!/bin/bash + +exec &2 + exit 1 + fi +} + +# Form an associative lookup for the section numbers in the ELF symbol table. +# Uses 8 character 0 expanded hexadecimal key for ease of consumption. +__sectionmap_init() +{ + readelf -W --headers "$1" | \ + awk ' + { sub("\\[", ""); sub("\\]", ""); } + ($1 ~ /^[0-9][0-9]*/) { printf("%08x %s %s %s\n", int($1), $2, $3, $4); } + ' | \ + { + while read section_num section_name section_type section_vma + do + echo "sectionmap_$section_num='$section_name'" + echo "sectionvma_$section_num='$section_vma'" + case "$section_type" in + REL|RELA) section_relocation="$section_type" ;; + esac + done + echo "section_relocation='$section_relocation'" + } +} +sectionmap_init() +{ + eval $(__sectionmap_init "$1") +} +sectionmap() +{ + eval RET="\$sectionmap_$1" + if [ "$RET" = '' ]; then + echo "sectionmap: $1: invalid section" 1>&2 + exit 1 + fi +} +sectionvma() +{ + eval RET="\$sectionvma_$1" + if [ "$RET" = '' ]; then + echo "sectionvma: $1: invalid section" 1>&2 + exit 1 + fi +} + +# Read and parse the hex-dump output. +hex="[0-9a-f]" +hex_8="$hex$hex$hex$hex$hex$hex$hex$hex" +hexspc="[0-9a-f ]" +hexspc_8="$hexspc$hexspc$hexspc$hexspc$hexspc$hexspc$hexspc$hexspc" + +raw32() +{ + readelf --hex-dump "$2" "$1" 2>/dev/null | + sed \ + -e '/^Hex/d' -e '/^$/d' -e '/^ *NOTE/d' \ + -e 's/ *[^ ][^ ]* *\('"$hex_8"'\) \('"$hexspc_8"'\) \('"$hexspc_8"'\) \('"$hexspc_8"'\) .*/\1 \2 \3 \4 /' \ + -e 's/\('"$hex$hex"'\)\('"$hex$hex"'\)\('"$hex$hex"'\)\('"$hex$hex"'\) /\4\3\2\1 /g' \ + -e 's/ $//g' -e 's/ /\n/g' +} +#-e 's/\([^ ][^ ][^ ][^ ][^ ][^ ][^ ][^ ]\) \([^ ][^ ][^ ][^ ][^ ][^ ][^ ][^ ]\) /\2\1 /g' \ + +rela() +{ + #file="$(basename "$1")" + file="$1" + + # Read relocation information for a 64bit binary. Each relocation entry + # is 3 long longs so we collect 6 quads here. Note that the dump is in + # listed in increasing byte order not withstanding the quad split. + # + # The record says to take the value of add and + # shove that into in the segment of the . + # + # Format: + # 64 bits + # 32 bits + # 32 bits + # 64 bits + raw32 "$1" ".rela$SECTION" | \ + { + a1=''; a2=''; a3=''; a4=''; a5='' + while read a6 + do + [ "$a1" = '' ] && { a1="$a6"; continue; } + [ "$a2" = '' ] && { a2="$a6"; continue; } + [ "$a3" = '' ] && { a3="$a6"; continue; } + [ "$a4" = '' ] && { a4="$a6"; continue; } + [ "$a5" = '' ] && { a5="$a6"; continue; } + + #echo ">$a1< >$a2< >$a3< >$a4< >$a5< >$a6<" 1>&2 + #echo "type<$a3> symbol<$a4> offset<$a2$a1> addr<$a6a5>" 1>&2 + + symbolmap "$a4"; section_num="$RET" + #echo "section_num<$section_num>" 1>&2 + + sectionmap "$section_num"; section="$RET" + sectionvma "$section_num"; vma="$RET" + #echo "section<$section> vma<$vma>" 1>&2 + + # Adjust the segment addressing by the segment offset. + printf -v addr "%u" "0x$a6$a5" + printf -v vma "%u" "0x$vma" + let offset="$addr + $vma" + printf -v offset "%x" "$offset" + + echo "$file-$section-$offset" + + a1=''; a2=''; a3=''; a4=''; a5='' + done + } | sed -e 's/-00*\([0-9a-f]\)/-\1/' +} + +# Form an associative lookup for the raw contents for an ELF section. +# Uses 8 character 0 expanded hexadecimal key for ease of consumption. +contentmap_init() +{ + raw32 "$1" "$2" >"$tmp" + let offset=0 + while read value + do + printf -v offset_hex "%08x" $offset + eval contentmap_$offset_hex=\'$value\' + + let offset="$offset + 4" + done <"$tmp" + rm -f "$tmp" +} +contentmap() +{ + eval RET="\$contentmap_$1" + if [ "$RET" = '' ]; then + echo "contentmap: $1: invalid offset" 1>&2 + exit 1 + fi +} + +rel() +{ + # Load up the current contents of the $SECTION segment + # as the offsets (see below) are recorded there and we will need + # those to calculate the actuall address. + contentmap_init "$1" "$SECTION" + + #file="$(basename "$1")" + file="$1" + + # Read relocation information for a 32bit binary. Each relocation entry + # is 3 longs so we collect 3 quads here. Note that the dump is in + # listed in increasing byte order not withstanding the quad split. + # + # The record says to take the value of and add that to the + # existing contents of in the segment of the . + # + # Format: + # 32 bits + # 24 bits + # 8 bits + raw32 "$1" ".rel$SECTION" | \ + { + a1='' + while read a2 + do + [ "$a1" = '' ] && { a1="$a2"; continue; } + + #echo ">$a1< >$a2<" + contentmap "$a1"; offset="$RET" + symbolmap "00${a2%??}"; section_num="$RET" + + sectionmap "$section_num"; section="$RET" + sectionvma "$section_num"; vma="$RET" + #echo ">$a1< >$a2< >$offset< >$section<" + + echo "$file-$section-$offset" + + a1='' + done + } | sed -e 's/-00*\([0-9a-f]\)/-\1/' +} + +tmp=$(mktemp --tmpdir "retpoline-extract-XXXXXX") + +disassemble() +{ + local object="$1" + local src="$2" + local options="$3" + local selector="$4" + + objdump $options --disassemble --no-show-raw-insn "$object" | \ + awk -F' ' ' + BEGIN { file="'"$object"'"; src="'"$src"'"; } + /Disassembly of section/ { segment=$4; sub(":", "", segment); } + /^[0-9a-f][0-9a-f]* <.*>:/ { tag=$0; sub(".*<", "", tag); sub(">.*", "", tag); } + $0 ~ /(call|jmp)q? *\*0x[0-9a-f]*\(%rip\)/ { + next + } + $0 ~ /(call|jmp)q? *\*.*%/ { + sub(":", "", $1); + if ('"$selector"') { + offset=$1 + $1=tag + print(file "-" segment "-" offset " " src " " segment " " $0); + } + } + ' +} + +# Accumulate potentially vunerable indirect call/jmp sequences. We do this +# by examining the raw disassembly for affected forms, recording the location +# of each. +case "$bit16" in +'') disassemble "$object" "$src" '' 'segment != ".init.text"' ;; +*) disassemble "$object" "$src" '--disassembler-options=i8086' 'segment != ".init.text" && segment != ".text32" && segment != ".text64"' + disassemble "$object" "$src" '--disassembler-options=i386' 'segment == ".text32"' + disassemble "$object" "$src" '--disassembler-options=x86-64' 'segment == ".text64"' + ;; +esac | sort -k 1b,1 >"$object.ur-detected" +[ ! -s "$object.ur-detected" ] && rm -f "$object.ur-detected" + +# Load up the symbol table and section mappings. +symbolmap_init "$object" +sectionmap_init "$object" + +# Accumulate annotated safe indirect call/jmp sequences. We do this by examining +# the $SECTION sections (and their associated relocation information), +# each entry represents the address of an instruction which has been marked +# as ok. +case "$section_relocation" in +REL) rel "$object" ;; +RELA) rela "$object" ;; +esac | sort -k 1b,1 >"$object.ur-safe" +[ ! -s "$object.ur-safe" ] && rm -f "$object.ur-safe" + +# We will perform the below join on the summarised and sorted fragments +# formed above. This is performed in retpoline-check. +#join -v 1 -j 1 "$tmp.extracted" "$tmp.safe" | sed -s 's/[^ ]* *//' + +rm -f "$tmp" --- linux-azure-5.8-5.8.0.orig/debian/scripts/sub-flavour +++ linux-azure-5.8-5.8.0/debian/scripts/sub-flavour @@ -0,0 +1,69 @@ +#!/bin/bash + +. debian/debian.env + +echo "SUB_PROCESS $FROM => $TO" + +export from_pkg="linux-image-$ABI_RELEASE-$FROM" +export to_pkg="linux-image-$ABI_RELEASE-$TO" + +from_moddir="debian/$from_pkg/lib/modules/$ABI_RELEASE-$FROM" +to_moddir="debian/$to_pkg/lib/modules/$ABI_RELEASE-$FROM" + +install -d "debian/$to_pkg/boot" +install -m644 debian/$from_pkg/boot/config-$ABI_RELEASE-$FROM \ + debian/$to_pkg/boot/ +install -m600 debian/$from_pkg/boot/{vmlinuz,System.map}-$ABI_RELEASE-$FROM \ + debian/$to_pkg/boot/ + +# +# Print some warnings if there are files in the sub-flavours list +# that do not actually exist. +# +cat ${DEBIAN}/sub-flavours/$TO.list | while read line +do +( + cd debian/$from_pkg/lib/modules/$ABI_RELEASE-$FROM/kernel; + # + # If its a wildcard, then check that there are files that match. + # + if echo "$line" | grep '\*' > /dev/null + then + if [ `eval find "$line" -name '*.ko' 2>/dev/null|wc -l` -lt 1 ] + then + echo SUB_INST Warning - No files in $line + fi + # + # Else it should be a single file reference. + # + elif [ ! -f "$line" ] + then + echo SUB_INST Warning - could not find "$line" + fi +) +done + +cat ${DEBIAN}/sub-flavours/$TO.list | while read line; do + ( + cd debian/$from_pkg/lib/modules/$ABI_RELEASE-$FROM/kernel; + if echo "$line" | grep '\*' > /dev/null + then + eval find "$line" -name '*.ko' 2>/dev/null || true + elif [ -f "$line" ] + then + echo "$line" + fi + ); +done | while read mod; do + echo "SUB_INST checking: $mod" + fromdir="/lib/modules/$ABI_RELEASE-$FROM/" + egrep "^($fromdir)?kernel/$mod:" \ + $from_moddir/modules.dep | sed -e "s|^$fromdir||" -e 's/://' -e 's/ /\n/g' | \ + while read m; do + m="${fromdir}$m" + test -f debian/$to_pkg/$m && continue + echo "SUB_INST installing: $m" + install -D -m644 debian/$from_pkg/$m \ + debian/$to_pkg/$m + done +done --- linux-azure-5.8-5.8.0.orig/debian/snapcraft.mk +++ linux-azure-5.8-5.8.0/debian/snapcraft.mk @@ -0,0 +1,11 @@ +ifeq ($(ARCH),) + arch := $(shell uname -m | sed -e s/i.86/i386/ -e s/x86_64/amd64/ \ + -e s/arm.*/armhf/ -e s/s390/s390x/ -e s/ppc.*/powerpc/ \ + -e s/aarch64.*/arm64/ ) +else ifeq ($(ARCH),arm) + arch := armhf +else + arch := $(ARCH) +endif +config: + cat debian.$(branch)/config/config.common.ubuntu debian.$(branch)/config/$(arch)/config.common.$(arch) debian.$(branch)/config/$(arch)/config.flavour.$(flavour) >.config --- linux-azure-5.8-5.8.0.orig/debian/source/format +++ linux-azure-5.8-5.8.0/debian/source/format @@ -0,0 +1 @@ +1.0 --- linux-azure-5.8-5.8.0.orig/debian/source/options +++ linux-azure-5.8-5.8.0/debian/source/options @@ -0,0 +1,8 @@ +# Ignore vbox symlinks, we will regenerate these at clean (LP:1426113) +## autoreconstruct -- begin +# Ignore any symlinks created since the orig which are rebuilt by reconstruct. +## autoreconstruct -- end + +# force "dpkg-source -I -i" behavior +diff-ignore +tar-ignore --- linux-azure-5.8-5.8.0.orig/debian/stamps/keep-dir +++ linux-azure-5.8-5.8.0/debian/stamps/keep-dir @@ -0,0 +1 @@ +Place holder --- linux-azure-5.8-5.8.0.orig/debian/templates/extra.postinst.in +++ linux-azure-5.8-5.8.0/debian/templates/extra.postinst.in @@ -0,0 +1,20 @@ +#!/bin/sh +set -e + +version=@abiname@@localversion@ +image_path=/boot/@image-stem@-$version + +if [ "$1" != configure ]; then + exit 0 +fi + +depmod -a -F /boot/System.map-$version $version || true +if [ -d /etc/kernel/postinst.d ]; then + cat - >/usr/lib/linux/triggers/$version </dev/null || true +# +# We should be rebuilding the initramfs here on removal to pare down the +# initramfs if it contains any of the objects we just removed. But people +# commonly remove kernels in order to free space in /boot, and rebuilding the +# initramfs now risks ENOSPC when we are trying to make space. The files we +# leave lying about could be confusing, but we trade that against safety on +# removal. +# +#if [ -d /etc/kernel/postinst.d ]; then +# # We want to behave as if linux-image (without us) was installed, therefore +# # we do not want the postinst support to know we are being removed, claim +# # this is an installation event. +# cat - >/usr/lib/linux/triggers/$version </usr/lib/linux/triggers/$version </dev/null; then + linux-update-symlinks remove $version $image_path +fi + +if [ -d /etc/kernel/postrm.d ]; then + # We cannot trigger ourselves as at the end of this we will no longer + # exist and can no longer respond to the trigger. The trigger would + # then become lost. Therefore we clear any pending trigger and apply + # postrm directly. + if [ -f /usr/lib/linux/triggers/$version ]; then + echo "$0 ... removing pending trigger" + rm -f /usr/lib/linux/triggers/$version + fi + DEB_MAINT_PARAMS="$*" run-parts --report --exit-on-error --arg=$version \ + --arg=$image_path /etc/kernel/postrm.d +fi + +if [ "$1" = purge ]; then + for extra_file in modules.dep modules.isapnpmap modules.pcimap \ + modules.usbmap modules.parportmap \ + modules.generic_string modules.ieee1394map \ + modules.ieee1394map modules.pnpbiosmap \ + modules.alias modules.ccwmap modules.inputmap \ + modules.symbols modules.ofmap \ + modules.seriomap modules.\*.bin \ + modules.softdep modules.devname; do + eval rm -f /lib/modules/$version/$extra_file + done + rmdir /lib/modules/$version || true +fi + +exit 0 --- linux-azure-5.8-5.8.0.orig/debian/templates/image.preinst.in +++ linux-azure-5.8-5.8.0/debian/templates/image.preinst.in @@ -0,0 +1,22 @@ +#!/bin/sh +set -e + +version=@abiname@@localversion@ +image_path=/boot/@image-stem@-$version + +if [ "$1" = abort-upgrade ]; then + exit 0 +fi + +if [ "$1" = install ]; then + # Create a flag file for postinst + mkdir -p /lib/modules/$version + touch /lib/modules/$version/.fresh-install +fi + +if [ -d /etc/kernel/preinst.d ]; then + DEB_MAINT_PARAMS="$*" run-parts --report --exit-on-error --arg=$version \ + --arg=$image_path /etc/kernel/preinst.d +fi + +exit 0 --- linux-azure-5.8-5.8.0.orig/debian/templates/image.prerm.in +++ linux-azure-5.8-5.8.0/debian/templates/image.prerm.in @@ -0,0 +1,18 @@ +#!/bin/sh +set -e + +version=@abiname@@localversion@ +image_path=/boot/@image-stem@-$version + +if [ "$1" != remove ]; then + exit 0 +fi + +linux-check-removal $version + +if [ -d /etc/kernel/prerm.d ]; then + DEB_MAINT_PARAMS="$*" run-parts --report --exit-on-error --arg=$version \ + --arg=$image_path /etc/kernel/prerm.d +fi + +exit 0 --- linux-azure-5.8-5.8.0.orig/debian/tests-build/README +++ linux-azure-5.8-5.8.0/debian/tests-build/README @@ -0,0 +1,21 @@ +Scripts placed in this directory get called one at a time by run-parts(8). +The scripts are expected to perform some sort of sanity checks on the +finished build. Scripts will be called once for each flavour. + +Some environment variables are exported to make life a little easier: + +DPKG_ARCH : The dpkg architecture (e.g. "amd64") +KERN_ARCH : The kernel architecture (e.g. "x86_64") +FLAVOUR : The specific flavour for this run (e.g. "generic") +VERSION : The full version of this build (e.g. 2.6.22-1) +REVISION : The exact revision of this build (e.g. 1.3) +PREV_REVISION : The revision prior to this one +ABI_NUM : The specific ABI number for this build (e.g. 2) +PREV_ABI_NUM : The previous ABI number. Can be the same as ABI_NUM. +BUILD_DIR : The directory where this build took place +INSTALL_DIR : The directory where the package is prepared +SOURCE_DIR : Where the main kernel source is + +Scripts are expected to have a zero exit status when no problems occur, +and non-zero when an error occurs that should stop the build. Scripts +should print whatever info they deem needed to deduce the problem. --- linux-azure-5.8-5.8.0.orig/debian/tests-build/check-aliases +++ linux-azure-5.8-5.8.0/debian/tests-build/check-aliases @@ -0,0 +1,24 @@ +#!/usr/bin/perl -w + +my %map; + +print "Checking for dupe aliases in $ENV{'FLAVOUR'}...\n"; + +$aliases = + "$ENV{'INSTALL_DIR'}/lib/modules/$ENV{'VERSION'}-$ENV{'FLAVOUR'}/modules.alias"; + +open(ALIASES, "< $aliases") or die "Could not open $aliases"; + +while () { + chomp; + my ($junk, $alias, $module) = split; + + if (defined($map{$alias})) { + printf("%s %20s / %-20s : %s \n", ("$map{$alias}" eq "$module") + ? "INT" : " ", $map{$alias}, $module, $alias); + } else { + $map{$alias} = $module; + } +} + +exit(0); --- linux-azure-5.8-5.8.0.orig/debian/tests/control +++ linux-azure-5.8-5.8.0/debian/tests/control @@ -0,0 +1,7 @@ +Tests: rebuild +Depends: @builddeps@, fakeroot +Restrictions: allow-stderr, skippable + +Tests: ubuntu-regression-suite +Depends: build-essential, gcc-multilib [amd64 armhf i386], gdb, git, python2 | python, bzr +Restrictions: allow-stderr, isolation-machine, breaks-testbed, skippable --- linux-azure-5.8-5.8.0.orig/debian/tests/rebuild +++ linux-azure-5.8-5.8.0/debian/tests/rebuild @@ -0,0 +1,20 @@ +#!/bin/sh + +# If we are triggering for just linux or linux-meta we know we have +# just built the kernel and there is no point in repeating that +# build, it just wastes time. (LP: #1498862) +build_needed=0 +for trigger in ${ADT_TEST_TRIGGERS:-force} +do + case "$trigger" in + linux/*|linux-lts-*/*|linux-meta*/*|linux-oem*/*|fakeroot/*|gdb/*|git/*|bzr/*|gcc-multilib/*) ;; + *) build_needed=1 ;; + esac +done +if [ "$build_needed" -eq 0 ]; then + echo "rebuild: short circuiting build for '${ADT_TEST_TRIGGERS}'" + exit 77 +fi + +set -e +dpkg-buildpackage -rfakeroot -us -uc -b -Pautopkgtest --- linux-azure-5.8-5.8.0.orig/debian/tests/ubuntu-regression-suite +++ linux-azure-5.8-5.8.0/debian/tests/ubuntu-regression-suite @@ -0,0 +1,45 @@ +#!/bin/sh +set -e + +# Only run regression-suite on kernels we can boot in canonistack +source=`dpkg-parsechangelog -SSource` +case $source in + linux|linux-hwe*|linux-kvm|linux-oem) + ;; + *) + echo "ubuntu-regression-suite is pointless, if one cannot boot the kernel" + exit 77 + ;; +esac + +# Only run regression-suite if we were requested to +have_meta=0 +for trigger in ${ADT_TEST_TRIGGERS} +do + case "$trigger" in + linux-meta/*|linux-meta-*/*) + have_meta=1 + ;; + esac +done +if [ -n "$ADT_TEST_TRIGGERS" ] && [ "$have_meta" -eq 0 ]; then + echo "ubuntu-regression-suite is not requested, as there is no linux-meta trigger" + exit 77 +fi + +sver=`dpkg-parsechangelog -SVersion` +read x rver x &2 + exit 1 +fi + +git clone git://kernel.ubuntu.com/ubuntu/kernel-testing +kernel-testing/run-dep8-tests --- linux-azure-5.8-5.8.0.orig/debian/tools/generic +++ linux-azure-5.8-5.8.0/debian/tools/generic @@ -0,0 +1,60 @@ +#!/bin/bash +full_version=`uname -r` + +# First check for a fully qualified version. +this="/usr/lib/linux-tools/$full_version/`basename $0`" +if [ -f "$this" ]; then + exec "$this" "$@" +fi + +# Removing flavour from version i.e. generic or server. +flavour_abi=${full_version#*-} +flavour=${flavour_abi#*-} +version=${full_version%-$flavour} +this="$0_$version" +if [ -f "$this" ]; then + exec "$this" "$@" +fi + +# Before saucy kernels we had no flavour linkage. +if dpkg --compare-versions "$version" lt "3.11.0"; then + flavour='' +else + flavour="-$flavour" +fi +# Hint at the cloud tools if they exist (trusty and later) +if dpkg --compare-versions "$version" ge "3.13.0"; then + cld="" +else + cld=":" +fi +# Work out if this is an LTS backport or not. +codename=`lsb_release -cs` +case "$codename" in +precise) base='3.2.0-9999' ;; +trusty) base='3.13.0-9999' ;; +*) base='' ;; +esac +std="" +lts=":" +if [ "$base" != "" ]; then + if dpkg --compare-versions "$version" gt "$base"; then + std=":" + lts="" + fi +fi + +# Give them a hint as to what to install. + echo "WARNING: `basename $0` not found for kernel $version" >&2 + echo "" >&2 + echo " You may need to install the following packages for this specific kernel:" >&2 + echo " linux-tools-$version$flavour" >&2 +$cld echo " linux-cloud-tools-$version$flavour" >&2 + echo "" >&2 + echo " You may also want to install one of the following packages to keep up to date:" >&2 +$std echo " linux-tools$flavour" >&2 +$std $cld echo " linux-cloud-tools$flavour" >&2 +$lts echo " linux-tools$flavour-lts-" >&2 +$lts $cld echo " linux-cloud-tools$flavour-lts-" >&2 + +exit 2 --- linux-azure-5.8-5.8.0.orig/debian/wireguard-modules.ignore +++ linux-azure-5.8-5.8.0/debian/wireguard-modules.ignore @@ -0,0 +1 @@ +wireguard --- linux-azure-5.8-5.8.0.orig/debian/zfs-modules.ignore +++ linux-azure-5.8-5.8.0/debian/zfs-modules.ignore @@ -0,0 +1,10 @@ +icp +spl +splat +zavl +zcommon +zfs +zlua +znvpair +zpios +zunicode --- linux-azure-5.8-5.8.0.orig/drivers/Kconfig +++ linux-azure-5.8-5.8.0/drivers/Kconfig @@ -235,4 +235,7 @@ source "drivers/counter/Kconfig" source "drivers/most/Kconfig" + +source "drivers/catapult/Kconfig" + endmenu --- linux-azure-5.8-5.8.0.orig/drivers/Makefile +++ linux-azure-5.8-5.8.0/drivers/Makefile @@ -59,14 +59,9 @@ # iommu/ comes before gpu as gpu are using iommu controllers obj-y += iommu/ -# gpu/ comes after char for AGP vs DRM startup and after iommu -obj-y += gpu/ obj-$(CONFIG_CONNECTOR) += connector/ -# i810fb and intelfb depend on char/agp/ -obj-$(CONFIG_FB_I810) += video/fbdev/i810/ -obj-$(CONFIG_FB_INTEL) += video/fbdev/intelfb/ obj-$(CONFIG_PARPORT) += parport/ obj-$(CONFIG_NVM) += lightnvm/ @@ -80,6 +75,12 @@ obj-y += scsi/ obj-y += nvme/ obj-$(CONFIG_ATA) += ata/ + +# gpu/ comes after char for AGP vs DRM startup and after iommu +obj-y += gpu/ +# i810fb and intelfb depend on char/agp/ +obj-$(CONFIG_FB_I810) += video/fbdev/i810/ +obj-$(CONFIG_FB_INTEL) += video/fbdev/intelfb/ obj-$(CONFIG_TARGET_CORE) += target/ obj-$(CONFIG_MTD) += mtd/ obj-$(CONFIG_SPI) += spi/ @@ -188,3 +189,6 @@ obj-$(CONFIG_INTERCONNECT) += interconnect/ obj-$(CONFIG_COUNTER) += counter/ obj-$(CONFIG_MOST) += most/ + +# Catapult FPGA driver for linux-azure +obj-$(CONFIG_CATAPULT_PCI) += catapult/ --- linux-azure-5.8-5.8.0.orig/drivers/acpi/acpi_configfs.c +++ linux-azure-5.8-5.8.0/drivers/acpi/acpi_configfs.c @@ -228,6 +228,7 @@ ACPI_INFO(("Host-directed Dynamic ACPI Table Unload")); acpi_unload_table(table->index); + config_item_put(cfg); } static struct configfs_group_operations acpi_table_group_ops = { @@ -267,7 +268,12 @@ acpi_table_group = configfs_register_default_group(root, "table", &acpi_tables_type); - return PTR_ERR_OR_ZERO(acpi_table_group); + if (IS_ERR(acpi_table_group)) { + configfs_unregister_subsystem(&acpi_configfs); + return PTR_ERR(acpi_table_group); + } + + return 0; } module_init(acpi_configfs_init); --- linux-azure-5.8-5.8.0.orig/drivers/acpi/acpi_dbg.c +++ linux-azure-5.8-5.8.0/drivers/acpi/acpi_dbg.c @@ -749,6 +749,9 @@ { int ret; + if (acpi_disabled) + return -ENODEV; + /* Initialize AML IO interface */ mutex_init(&acpi_aml_io.lock); init_waitqueue_head(&acpi_aml_io.wait); --- linux-azure-5.8-5.8.0.orig/drivers/acpi/acpi_extlog.c +++ linux-azure-5.8-5.8.0/drivers/acpi/acpi_extlog.c @@ -222,9 +222,9 @@ u64 cap; int rc; - rdmsrl(MSR_IA32_MCG_CAP, cap); - - if (!(cap & MCG_ELOG_P) || !extlog_get_l1addr()) + if (rdmsrl_safe(MSR_IA32_MCG_CAP, &cap) || + !(cap & MCG_ELOG_P) || + !extlog_get_l1addr()) return -ENODEV; rc = -EINVAL; --- linux-azure-5.8-5.8.0.orig/drivers/acpi/acpi_pnp.c +++ linux-azure-5.8-5.8.0/drivers/acpi/acpi_pnp.c @@ -317,6 +317,9 @@ { int i; + if (strlen(idstr) != strlen(list_id)) + return false; + if (memcmp(idstr, list_id, 3)) return false; --- linux-azure-5.8-5.8.0.orig/drivers/acpi/acpica/exprep.c +++ linux-azure-5.8-5.8.0/drivers/acpi/acpica/exprep.c @@ -473,10 +473,6 @@ (u8)access_byte_width; } } - /* An additional reference for the container */ - - acpi_ut_add_reference(obj_desc->field.region_obj); - ACPI_DEBUG_PRINT((ACPI_DB_BFIELD, "RegionField: BitOff %X, Off %X, Gran %X, Region %p\n", obj_desc->field.start_field_bit_offset, --- linux-azure-5.8-5.8.0.orig/drivers/acpi/acpica/utdelete.c +++ linux-azure-5.8-5.8.0/drivers/acpi/acpica/utdelete.c @@ -568,11 +568,6 @@ next_object = object->buffer_field.buffer_obj; break; - case ACPI_TYPE_LOCAL_REGION_FIELD: - - next_object = object->field.region_obj; - break; - case ACPI_TYPE_LOCAL_BANK_FIELD: next_object = object->bank_field.bank_obj; @@ -613,6 +608,7 @@ } break; + case ACPI_TYPE_LOCAL_REGION_FIELD: case ACPI_TYPE_REGION: default: --- linux-azure-5.8-5.8.0.orig/drivers/acpi/apei/ghes.c +++ linux-azure-5.8-5.8.0/drivers/acpi/apei/ghes.c @@ -879,7 +879,7 @@ estatus_node->task_work.func = ghes_kick_task_work; estatus_node->task_work_cpu = smp_processor_id(); ret = task_work_add(current, &estatus_node->task_work, - true); + TWA_RESUME); if (ret) estatus_node->task_work.func = NULL; } --- linux-azure-5.8-5.8.0.orig/drivers/acpi/arm64/iort.c +++ linux-azure-5.8-5.8.0/drivers/acpi/arm64/iort.c @@ -1069,6 +1069,11 @@ ncomp = (struct acpi_iort_named_component *)node->node_data; + if (!ncomp->memory_address_limit) { + pr_warn(FW_BUG "Named component missing memory address limit\n"); + return -EINVAL; + } + *size = ncomp->memory_address_limit >= 64 ? U64_MAX : 1ULL<memory_address_limit; @@ -1088,6 +1093,11 @@ rc = (struct acpi_iort_root_complex *)node->node_data; + if (!rc->memory_address_limit) { + pr_warn(FW_BUG "Root complex missing memory address limit\n"); + return -EINVAL; + } + *size = rc->memory_address_limit >= 64 ? U64_MAX : 1ULL<memory_address_limit; @@ -1135,8 +1145,8 @@ end = dmaaddr + size - 1; mask = DMA_BIT_MASK(ilog2(end) + 1); dev->bus_dma_limit = end; - dev->coherent_dma_mask = mask; - *dev->dma_mask = mask; + dev->coherent_dma_mask = min(dev->coherent_dma_mask, mask); + *dev->dma_mask = min(*dev->dma_mask, mask); } *dma_addr = dmaaddr; --- linux-azure-5.8-5.8.0.orig/drivers/acpi/button.c +++ linux-azure-5.8-5.8.0/drivers/acpi/button.c @@ -102,7 +102,18 @@ */ .matches = { DMI_MATCH(DMI_SYS_VENDOR, "MEDION"), - DMI_MATCH(DMI_PRODUCT_NAME, "E2215T MD60198"), + DMI_MATCH(DMI_PRODUCT_NAME, "E2215T"), + }, + .driver_data = (void *)(long)ACPI_BUTTON_LID_INIT_OPEN, + }, + { + /* + * Medion Akoya E2228T, notification of the LID device only + * happens on close, not on open and _LID always returns closed. + */ + .matches = { + DMI_MATCH(DMI_SYS_VENDOR, "MEDION"), + DMI_MATCH(DMI_PRODUCT_NAME, "E2228T"), }, .driver_data = (void *)(long)ACPI_BUTTON_LID_INIT_OPEN, }, @@ -153,6 +164,7 @@ int last_state; ktime_t last_time; bool suspended; + bool lid_state_initialized; }; static struct acpi_device *lid_device; @@ -383,6 +395,8 @@ static void acpi_lid_initialize_state(struct acpi_device *device) { + struct acpi_button *button = acpi_driver_data(device); + switch (lid_init_state) { case ACPI_BUTTON_LID_INIT_OPEN: (void)acpi_lid_notify_state(device, 1); @@ -394,13 +408,14 @@ default: break; } + + button->lid_state_initialized = true; } static void acpi_button_notify(struct acpi_device *device, u32 event) { struct acpi_button *button = acpi_driver_data(device); struct input_dev *input; - int users; switch (event) { case ACPI_FIXED_HARDWARE_EVENT: @@ -409,10 +424,7 @@ case ACPI_BUTTON_NOTIFY_STATUS: input = button->input; if (button->type == ACPI_BUTTON_TYPE_LID) { - mutex_lock(&button->input->mutex); - users = button->input->users; - mutex_unlock(&button->input->mutex); - if (users) + if (button->lid_state_initialized) acpi_lid_update_state(device, true); } else { int keycode; @@ -457,7 +469,7 @@ struct acpi_button *button = acpi_driver_data(device); button->suspended = false; - if (button->type == ACPI_BUTTON_TYPE_LID && button->input->users) { + if (button->type == ACPI_BUTTON_TYPE_LID) { button->last_state = !!acpi_lid_evaluate_state(device); button->last_time = ktime_get(); acpi_lid_initialize_state(device); --- linux-azure-5.8-5.8.0.orig/drivers/acpi/device_pm.c +++ linux-azure-5.8-5.8.0/drivers/acpi/device_pm.c @@ -749,7 +749,7 @@ static DEFINE_MUTEX(acpi_wakeup_lock); static int __acpi_device_wakeup_enable(struct acpi_device *adev, - u32 target_state, int max_count) + u32 target_state) { struct acpi_device_wakeup *wakeup = &adev->wakeup; acpi_status status; @@ -757,15 +757,26 @@ mutex_lock(&acpi_wakeup_lock); - if (wakeup->enable_count >= max_count) - goto out; - + /* + * If the device wakeup power is already enabled, disable it and enable + * it again in case it depends on the configuration of subordinate + * devices and the conditions have changed since it was enabled last + * time. + */ if (wakeup->enable_count > 0) - goto inc; + acpi_disable_wakeup_device_power(adev); error = acpi_enable_wakeup_device_power(adev, target_state); - if (error) + if (error) { + if (wakeup->enable_count > 0) { + acpi_disable_gpe(wakeup->gpe_device, wakeup->gpe_number); + wakeup->enable_count = 0; + } goto out; + } + + if (wakeup->enable_count > 0) + goto inc; status = acpi_enable_gpe(wakeup->gpe_device, wakeup->gpe_number); if (ACPI_FAILURE(status)) { @@ -778,7 +789,10 @@ (unsigned int)wakeup->gpe_number); inc: - wakeup->enable_count++; + if (wakeup->enable_count < INT_MAX) + wakeup->enable_count++; + else + acpi_handle_info(adev->handle, "Wakeup enable count out of bounds!\n"); out: mutex_unlock(&acpi_wakeup_lock); @@ -799,7 +813,7 @@ */ static int acpi_device_wakeup_enable(struct acpi_device *adev, u32 target_state) { - return __acpi_device_wakeup_enable(adev, target_state, 1); + return __acpi_device_wakeup_enable(adev, target_state); } /** @@ -829,8 +843,12 @@ mutex_unlock(&acpi_wakeup_lock); } -static int __acpi_pm_set_device_wakeup(struct device *dev, bool enable, - int max_count) +/** + * acpi_pm_set_device_wakeup - Enable/disable remote wakeup for given device. + * @dev: Device to enable/disable to generate wakeup events. + * @enable: Whether to enable or disable the wakeup functionality. + */ +int acpi_pm_set_device_wakeup(struct device *dev, bool enable) { struct acpi_device *adev; int error; @@ -850,37 +868,15 @@ return 0; } - error = __acpi_device_wakeup_enable(adev, acpi_target_system_state(), - max_count); + error = __acpi_device_wakeup_enable(adev, acpi_target_system_state()); if (!error) dev_dbg(dev, "Wakeup enabled by ACPI\n"); return error; } - -/** - * acpi_pm_set_device_wakeup - Enable/disable remote wakeup for given device. - * @dev: Device to enable/disable to generate wakeup events. - * @enable: Whether to enable or disable the wakeup functionality. - */ -int acpi_pm_set_device_wakeup(struct device *dev, bool enable) -{ - return __acpi_pm_set_device_wakeup(dev, enable, 1); -} EXPORT_SYMBOL_GPL(acpi_pm_set_device_wakeup); /** - * acpi_pm_set_bridge_wakeup - Enable/disable remote wakeup for given bridge. - * @dev: Bridge device to enable/disable to generate wakeup events. - * @enable: Whether to enable or disable the wakeup functionality. - */ -int acpi_pm_set_bridge_wakeup(struct device *dev, bool enable) -{ - return __acpi_pm_set_device_wakeup(dev, enable, INT_MAX); -} -EXPORT_SYMBOL_GPL(acpi_pm_set_bridge_wakeup); - -/** * acpi_dev_pm_low_power - Put ACPI device into a low-power state. * @dev: Device to put into a low-power state. * @adev: ACPI device node corresponding to @dev. --- linux-azure-5.8-5.8.0.orig/drivers/acpi/device_sysfs.c +++ linux-azure-5.8-5.8.0/drivers/acpi/device_sysfs.c @@ -251,20 +251,12 @@ if (add_uevent_var(env, "MODALIAS=")) return -ENOMEM; - len = create_pnp_modalias(adev, &env->buf[env->buflen - 1], - sizeof(env->buf) - env->buflen); - if (len < 0) - return len; - - env->buflen += len; - if (!adev->data.of_compatible) - return 0; - - if (len > 0 && add_uevent_var(env, "MODALIAS=")) - return -ENOMEM; - - len = create_of_modalias(adev, &env->buf[env->buflen - 1], - sizeof(env->buf) - env->buflen); + if (adev->data.of_compatible) + len = create_of_modalias(adev, &env->buf[env->buflen - 1], + sizeof(env->buf) - env->buflen); + else + len = create_pnp_modalias(adev, &env->buf[env->buflen - 1], + sizeof(env->buf) - env->buflen); if (len < 0) return len; --- linux-azure-5.8-5.8.0.orig/drivers/acpi/ec.c +++ linux-azure-5.8-5.8.0/drivers/acpi/ec.c @@ -2011,20 +2011,16 @@ if (acpi_any_gpe_status_set(first_ec->gpe)) return true; - if (ec_no_wakeup) - return false; - /* * Dispatch the EC GPE in-band, but do not report wakeup in any case * to allow the caller to process events properly after that. */ ret = acpi_dispatch_gpe(NULL, first_ec->gpe); - if (ret == ACPI_INTERRUPT_HANDLED) { + if (ret == ACPI_INTERRUPT_HANDLED) pm_pr_dbg("ACPI EC GPE dispatched\n"); - /* Flush the event and query workqueues. */ - acpi_ec_flush_work(); - } + /* Flush the event and query workqueues. */ + acpi_ec_flush_work(); return false; } --- linux-azure-5.8-5.8.0.orig/drivers/acpi/evged.c +++ linux-azure-5.8-5.8.0/drivers/acpi/evged.c @@ -101,7 +101,7 @@ switch (gsi) { case 0 ... 255: - sprintf(ev_name, "_%c%02hhX", + sprintf(ev_name, "_%c%02X", trigger == ACPI_EDGE_SENSITIVE ? 'E' : 'L', gsi); if (ACPI_SUCCESS(acpi_get_handle(handle, ev_name, &evt_handle))) --- linux-azure-5.8-5.8.0.orig/drivers/acpi/fan.c +++ linux-azure-5.8-5.8.0/drivers/acpi/fan.c @@ -351,6 +351,7 @@ struct acpi_fan_fps *fps = &fan->fps[i]; snprintf(fps->name, ACPI_FPS_NAME_LEN, "state%d", i); + sysfs_attr_init(&fps->dev_attr.attr); fps->dev_attr.show = show_state; fps->dev_attr.store = NULL; fps->dev_attr.attr.name = fps->name; --- linux-azure-5.8-5.8.0.orig/drivers/acpi/internal.h +++ linux-azure-5.8-5.8.0/drivers/acpi/internal.h @@ -97,7 +97,7 @@ extern struct list_head acpi_bus_id_list; struct acpi_device_bus_id { - char bus_id[15]; + const char *bus_id; unsigned int instance_no; struct list_head node; }; --- linux-azure-5.8-5.8.0.orig/drivers/acpi/nfit/core.c +++ linux-azure-5.8-5.8.0/drivers/acpi/nfit/core.c @@ -1552,7 +1552,7 @@ le16_to_cpu(nfit_dcr->dcr->code)); break; } - if (rc != ENXIO) + if (rc != -ENXIO) break; } mutex_unlock(&acpi_desc->init_mutex); @@ -1823,6 +1823,7 @@ static int acpi_nfit_add_dimm(struct acpi_nfit_desc *acpi_desc, struct nfit_mem *nfit_mem, u32 device_handle) { + struct nvdimm_bus_descriptor *nd_desc = &acpi_desc->nd_desc; struct acpi_device *adev, *adev_dimm; struct device *dev = acpi_desc->dev; unsigned long dsm_mask, label_mask; @@ -1834,6 +1835,7 @@ /* nfit test assumes 1:1 relationship between commands and dsms */ nfit_mem->dsm_mask = acpi_desc->dimm_cmd_force_en; nfit_mem->family = NVDIMM_FAMILY_INTEL; + set_bit(NVDIMM_FAMILY_INTEL, &nd_desc->dimm_family_mask); if (dcr->valid_fields & ACPI_NFIT_CONTROL_MFG_INFO_VALID) sprintf(nfit_mem->id, "%04x-%02x-%04x-%08x", @@ -1886,10 +1888,13 @@ * Note, that checking for function0 (bit0) tells us if any commands * are reachable through this GUID. */ + clear_bit(NVDIMM_FAMILY_INTEL, &nd_desc->dimm_family_mask); for (i = 0; i <= NVDIMM_FAMILY_MAX; i++) - if (acpi_check_dsm(adev_dimm->handle, to_nfit_uuid(i), 1, 1)) + if (acpi_check_dsm(adev_dimm->handle, to_nfit_uuid(i), 1, 1)) { + set_bit(i, &nd_desc->dimm_family_mask); if (family < 0 || i == default_dsm_family) family = i; + } /* limit the supported commands to those that are publicly documented */ nfit_mem->family = family; @@ -2153,6 +2158,9 @@ nd_desc->cmd_mask = acpi_desc->bus_cmd_force_en; nd_desc->bus_dsm_mask = acpi_desc->bus_nfit_cmd_force_en; + set_bit(ND_CMD_CALL, &nd_desc->cmd_mask); + set_bit(NVDIMM_BUS_FAMILY_NFIT, &nd_desc->bus_family_mask); + adev = to_acpi_dev(acpi_desc); if (!adev) return; @@ -2160,7 +2168,6 @@ for (i = ND_CMD_ARS_CAP; i <= ND_CMD_CLEAR_ERROR; i++) if (acpi_check_dsm(adev->handle, guid, 1, 1ULL << i)) set_bit(i, &nd_desc->cmd_mask); - set_bit(ND_CMD_CALL, &nd_desc->cmd_mask); dsm_mask = (1 << ND_CMD_ARS_CAP) | --- linux-azure-5.8-5.8.0.orig/drivers/acpi/nfit/nfit.h +++ linux-azure-5.8-5.8.0/drivers/acpi/nfit/nfit.h @@ -33,7 +33,6 @@ | ACPI_NFIT_MEM_RESTORE_FAILED | ACPI_NFIT_MEM_FLUSH_FAILED \ | ACPI_NFIT_MEM_NOT_ARMED | ACPI_NFIT_MEM_MAP_FAILED) -#define NVDIMM_FAMILY_MAX NVDIMM_FAMILY_HYPERV #define NVDIMM_CMD_MAX 31 #define NVDIMM_STANDARD_CMDMASK \ --- linux-azure-5.8-5.8.0.orig/drivers/acpi/numa/hmat.c +++ linux-azure-5.8-5.8.0/drivers/acpi/numa/hmat.c @@ -424,7 +424,8 @@ pr_info("HMAT: Memory Flags:%04x Processor Domain:%u Memory Domain:%u\n", p->flags, p->processor_PD, p->memory_PD); - if (p->flags & ACPI_HMAT_MEMORY_PD_VALID && hmat_revision == 1) { + if ((hmat_revision == 1 && p->flags & ACPI_HMAT_MEMORY_PD_VALID) || + hmat_revision > 1) { target = find_mem_target(p->memory_PD); if (!target) { pr_debug("HMAT: Memory Domain missing from SRAT\n"); --- linux-azure-5.8-5.8.0.orig/drivers/acpi/numa/srat.c +++ linux-azure-5.8-5.8.0/drivers/acpi/numa/srat.c @@ -31,7 +31,7 @@ int pxm_to_node(int pxm) { - if (pxm < 0) + if (pxm < 0 || pxm >= MAX_PXM_DOMAINS || numa_off) return NUMA_NO_NODE; return pxm_to_node_map[pxm]; } --- linux-azure-5.8-5.8.0.orig/drivers/acpi/osi.c +++ linux-azure-5.8-5.8.0/drivers/acpi/osi.c @@ -468,6 +468,77 @@ }, /* + * The following Lenovo models have a broken workaround in the + * acpi_video backlight implementation to meet the Windows 8 + * requirement of 101 backlight levels. Reverting to pre-Win8 + * behavior fixes the problem. + */ + { + .callback = dmi_disable_osi_win8, + .ident = "Lenovo ThinkPad L430", + .matches = { + DMI_MATCH(DMI_SYS_VENDOR, "LENOVO"), + DMI_MATCH(DMI_PRODUCT_VERSION, "ThinkPad L430"), + }, + }, + { + .callback = dmi_disable_osi_win8, + .ident = "Lenovo ThinkPad T430", + .matches = { + DMI_MATCH(DMI_SYS_VENDOR, "LENOVO"), + DMI_MATCH(DMI_PRODUCT_VERSION, "ThinkPad T430"), + }, + }, + { + .callback = dmi_disable_osi_win8, + .ident = "Lenovo ThinkPad T430s", + .matches = { + DMI_MATCH(DMI_SYS_VENDOR, "LENOVO"), + DMI_MATCH(DMI_PRODUCT_VERSION, "ThinkPad T430s"), + }, + }, + { + .callback = dmi_disable_osi_win8, + .ident = "Lenovo ThinkPad T530", + .matches = { + DMI_MATCH(DMI_SYS_VENDOR, "LENOVO"), + DMI_MATCH(DMI_PRODUCT_VERSION, "ThinkPad T530"), + }, + }, + { + .callback = dmi_disable_osi_win8, + .ident = "Lenovo ThinkPad W530", + .matches = { + DMI_MATCH(DMI_SYS_VENDOR, "LENOVO"), + DMI_MATCH(DMI_PRODUCT_VERSION, "ThinkPad W530"), + }, + }, + { + .callback = dmi_disable_osi_win8, + .ident = "Lenovo ThinkPad X1 Carbon", + .matches = { + DMI_MATCH(DMI_SYS_VENDOR, "LENOVO"), + DMI_MATCH(DMI_PRODUCT_VERSION, "ThinkPad X1 Carbon"), + }, + }, + { + .callback = dmi_disable_osi_win8, + .ident = "Lenovo ThinkPad X230", + .matches = { + DMI_MATCH(DMI_SYS_VENDOR, "LENOVO"), + DMI_MATCH(DMI_PRODUCT_VERSION, "ThinkPad X230"), + }, + }, + { + .callback = dmi_disable_osi_win8, + .ident = "Lenovo ThinkPad Edge E330", + .matches = { + DMI_MATCH(DMI_SYS_VENDOR, "LENOVO"), + DMI_MATCH(DMI_PRODUCT_VERSION, "ThinkPad Edge E330"), + }, + }, + + /* * BIOS invocation of _OSI(Linux) is almost always a BIOS bug. * Linux ignores it, except for the machines enumerated below. */ --- linux-azure-5.8-5.8.0.orig/drivers/acpi/pci_mcfg.c +++ linux-azure-5.8-5.8.0/drivers/acpi/pci_mcfg.c @@ -142,6 +142,26 @@ XGENE_V2_ECAM_MCFG(4, 0), XGENE_V2_ECAM_MCFG(4, 1), XGENE_V2_ECAM_MCFG(4, 2), + +#define ALTRA_ECAM_QUIRK(rev, seg) \ + { "Ampere", "Altra ", rev, seg, MCFG_BUS_ANY, &pci_32b_read_ops } + + ALTRA_ECAM_QUIRK(1, 0), + ALTRA_ECAM_QUIRK(1, 1), + ALTRA_ECAM_QUIRK(1, 2), + ALTRA_ECAM_QUIRK(1, 3), + ALTRA_ECAM_QUIRK(1, 4), + ALTRA_ECAM_QUIRK(1, 5), + ALTRA_ECAM_QUIRK(1, 6), + ALTRA_ECAM_QUIRK(1, 7), + ALTRA_ECAM_QUIRK(1, 8), + ALTRA_ECAM_QUIRK(1, 9), + ALTRA_ECAM_QUIRK(1, 10), + ALTRA_ECAM_QUIRK(1, 11), + ALTRA_ECAM_QUIRK(1, 12), + ALTRA_ECAM_QUIRK(1, 13), + ALTRA_ECAM_QUIRK(1, 14), + ALTRA_ECAM_QUIRK(1, 15), }; static char mcfg_oem_id[ACPI_OEM_ID_SIZE]; --- linux-azure-5.8-5.8.0.orig/drivers/acpi/property.c +++ linux-azure-5.8-5.8.0/drivers/acpi/property.c @@ -794,9 +794,6 @@ const union acpi_object *obj; int ret; - if (!val) - return -EINVAL; - if (proptype >= DEV_PROP_U8 && proptype <= DEV_PROP_U64) { ret = acpi_data_get_property(data, propname, ACPI_TYPE_INTEGER, &obj); if (ret) @@ -806,28 +803,43 @@ case DEV_PROP_U8: if (obj->integer.value > U8_MAX) return -EOVERFLOW; - *(u8 *)val = obj->integer.value; + + if (val) + *(u8 *)val = obj->integer.value; + break; case DEV_PROP_U16: if (obj->integer.value > U16_MAX) return -EOVERFLOW; - *(u16 *)val = obj->integer.value; + + if (val) + *(u16 *)val = obj->integer.value; + break; case DEV_PROP_U32: if (obj->integer.value > U32_MAX) return -EOVERFLOW; - *(u32 *)val = obj->integer.value; + + if (val) + *(u32 *)val = obj->integer.value; + break; default: - *(u64 *)val = obj->integer.value; + if (val) + *(u64 *)val = obj->integer.value; + break; } + + if (!val) + return 1; } else if (proptype == DEV_PROP_STRING) { ret = acpi_data_get_property(data, propname, ACPI_TYPE_STRING, &obj); if (ret) return ret; - *(char **)val = obj->string.pointer; + if (val) + *(char **)val = obj->string.pointer; return 1; } else { @@ -841,7 +853,7 @@ { int ret; - if (!adev) + if (!adev || !val) return -EINVAL; ret = acpi_data_prop_read_single(&adev->data, propname, proptype, val); @@ -935,10 +947,20 @@ const union acpi_object *items; int ret; - if (val && nval == 1) { + if (nval == 1 || !val) { ret = acpi_data_prop_read_single(data, propname, proptype, val); - if (ret >= 0) + /* + * The overflow error means that the property is there and it is + * single-value, but its type does not match, so return. + */ + if (ret >= 0 || ret == -EOVERFLOW) return ret; + + /* + * Reading this property as a single-value one failed, but its + * value may still be represented as one-element array, so + * continue. + */ } ret = acpi_data_get_property_array(data, propname, ACPI_TYPE_ANY, &obj); --- linux-azure-5.8-5.8.0.orig/drivers/acpi/resource.c +++ linux-azure-5.8-5.8.0/drivers/acpi/resource.c @@ -541,7 +541,7 @@ ret = c->preproc(ares, c->preproc_data); if (ret < 0) { c->error = ret; - return AE_CTRL_TERMINATE; + return AE_ABORT_METHOD; } else if (ret > 0) { return AE_OK; } --- linux-azure-5.8-5.8.0.orig/drivers/acpi/scan.c +++ linux-azure-5.8-5.8.0/drivers/acpi/scan.c @@ -486,6 +486,7 @@ acpi_device_bus_id->instance_no--; else { list_del(&acpi_device_bus_id->node); + kfree_const(acpi_device_bus_id->bus_id); kfree(acpi_device_bus_id); } break; @@ -585,6 +586,8 @@ if (!device) return -EINVAL; + *device = NULL; + status = acpi_get_data_full(handle, acpi_scan_drop_device, (void **)device, callback); if (ACPI_FAILURE(status) || !*device) { @@ -674,7 +677,14 @@ } if (!found) { acpi_device_bus_id = new_bus_id; - strcpy(acpi_device_bus_id->bus_id, acpi_device_hid(device)); + acpi_device_bus_id->bus_id = + kstrdup_const(acpi_device_hid(device), GFP_KERNEL); + if (!acpi_device_bus_id->bus_id) { + pr_err(PREFIX "Memory allocation error for bus id\n"); + result = -ENOMEM; + goto err_free_new_bus_id; + } + acpi_device_bus_id->instance_no = 0; list_add_tail(&acpi_device_bus_id->node, &acpi_bus_id_list); } @@ -709,6 +719,11 @@ if (device->parent) list_del(&device->node); list_del(&device->wakeup_list); + + err_free_new_bus_id: + if (!found) + kfree(new_bus_id); + mutex_unlock(&acpi_device_lock); err_detach: --- linux-azure-5.8-5.8.0.orig/drivers/acpi/thermal.c +++ linux-azure-5.8-5.8.0/drivers/acpi/thermal.c @@ -175,6 +175,8 @@ int tz_enabled; int kelvin_offset; /* in millidegrees */ struct work_struct thermal_check_work; + struct mutex thermal_check_lock; + refcount_t thermal_check_count; }; /* -------------------------------------------------------------------------- @@ -496,17 +498,6 @@ return 0; } -static void acpi_thermal_check(void *data) -{ - struct acpi_thermal *tz = data; - - if (!tz->tz_enabled) - return; - - thermal_zone_device_update(tz->thermal_zone, - THERMAL_EVENT_UNSPECIFIED); -} - /* sys I/F for generic thermal sysfs support */ static int thermal_get_temp(struct thermal_zone_device *thermal, int *temp) @@ -540,6 +531,8 @@ return 0; } +static void acpi_thermal_check_fn(struct work_struct *work); + static int thermal_set_mode(struct thermal_zone_device *thermal, enum thermal_device_mode mode) { @@ -565,7 +558,7 @@ ACPI_DEBUG_PRINT((ACPI_DB_INFO, "%s kernel ACPI thermal control\n", tz->tz_enabled ? "Enable" : "Disable")); - acpi_thermal_check(tz); + acpi_thermal_check_fn(&tz->thermal_check_work); } return 0; } @@ -725,27 +718,24 @@ return 0; } - -static int thermal_notify(struct thermal_zone_device *thermal, int trip, - enum thermal_trip_type trip_type) +static void acpi_thermal_zone_device_hot(struct thermal_zone_device *thermal) { - u8 type = 0; struct acpi_thermal *tz = thermal->devdata; - if (trip_type == THERMAL_TRIP_CRITICAL) - type = ACPI_THERMAL_NOTIFY_CRITICAL; - else if (trip_type == THERMAL_TRIP_HOT) - type = ACPI_THERMAL_NOTIFY_HOT; - else - return 0; - acpi_bus_generate_netlink_event(tz->device->pnp.device_class, - dev_name(&tz->device->dev), type, 1); + dev_name(&tz->device->dev), + ACPI_THERMAL_NOTIFY_HOT, 1); +} - if (trip_type == THERMAL_TRIP_CRITICAL && nocrt) - return 1; +static void acpi_thermal_zone_device_critical(struct thermal_zone_device *thermal) +{ + struct acpi_thermal *tz = thermal->devdata; - return 0; + acpi_bus_generate_netlink_event(tz->device->pnp.device_class, + dev_name(&tz->device->dev), + ACPI_THERMAL_NOTIFY_CRITICAL, 1); + + thermal_zone_device_critical(thermal); } static int acpi_thermal_cooling_device_cb(struct thermal_zone_device *thermal, @@ -862,7 +852,8 @@ .get_trip_temp = thermal_get_trip_temp, .get_crit_temp = thermal_get_crit_temp, .get_trend = thermal_get_trend, - .notify = thermal_notify, + .hot = acpi_thermal_zone_device_hot, + .critical = acpi_thermal_zone_device_critical, }; static int acpi_thermal_register_thermal_zone(struct acpi_thermal *tz) @@ -934,6 +925,12 @@ Driver Interface -------------------------------------------------------------------------- */ +static void acpi_queue_thermal_check(struct acpi_thermal *tz) +{ + if (!work_pending(&tz->thermal_check_work)) + queue_work(acpi_thermal_pm_queue, &tz->thermal_check_work); +} + static void acpi_thermal_notify(struct acpi_device *device, u32 event) { struct acpi_thermal *tz = acpi_driver_data(device); @@ -944,17 +941,17 @@ switch (event) { case ACPI_THERMAL_NOTIFY_TEMPERATURE: - acpi_thermal_check(tz); + acpi_queue_thermal_check(tz); break; case ACPI_THERMAL_NOTIFY_THRESHOLDS: acpi_thermal_trips_update(tz, ACPI_TRIPS_REFRESH_THRESHOLDS); - acpi_thermal_check(tz); + acpi_queue_thermal_check(tz); acpi_bus_generate_netlink_event(device->pnp.device_class, dev_name(&device->dev), event, 0); break; case ACPI_THERMAL_NOTIFY_DEVICES: acpi_thermal_trips_update(tz, ACPI_TRIPS_REFRESH_DEVICES); - acpi_thermal_check(tz); + acpi_queue_thermal_check(tz); acpi_bus_generate_netlink_event(device->pnp.device_class, dev_name(&device->dev), event, 0); break; @@ -1054,7 +1051,27 @@ { struct acpi_thermal *tz = container_of(work, struct acpi_thermal, thermal_check_work); - acpi_thermal_check(tz); + + if (!tz->tz_enabled) + return; + /* + * In general, it is not sufficient to check the pending bit, because + * subsequent instances of this function may be queued after one of them + * has started running (e.g. if _TMP sleeps). Avoid bailing out if just + * one of them is running, though, because it may have done the actual + * check some time ago, so allow at least one of them to block on the + * mutex while another one is running the update. + */ + if (!refcount_dec_not_one(&tz->thermal_check_count)) + return; + + mutex_lock(&tz->thermal_check_lock); + + thermal_zone_device_update(tz->thermal_zone, THERMAL_EVENT_UNSPECIFIED); + + refcount_inc(&tz->thermal_check_count); + + mutex_unlock(&tz->thermal_check_lock); } static int acpi_thermal_add(struct acpi_device *device) @@ -1086,6 +1103,8 @@ if (result) goto free_memory; + refcount_set(&tz->thermal_check_count, 3); + mutex_init(&tz->thermal_check_lock); INIT_WORK(&tz->thermal_check_work, acpi_thermal_check_fn); pr_info(PREFIX "%s [%s] (%ld C)\n", acpi_device_name(device), @@ -1151,7 +1170,7 @@ tz->state.active |= tz->trips.active[i].flags.enabled; } - queue_work(acpi_thermal_pm_queue, &tz->thermal_check_work); + acpi_queue_thermal_check(tz); return AE_OK; } --- linux-azure-5.8-5.8.0.orig/drivers/acpi/video_detect.c +++ linux-azure-5.8-5.8.0/drivers/acpi/video_detect.c @@ -282,6 +282,15 @@ DMI_MATCH(DMI_PRODUCT_NAME, "530U4E/540U4E"), }, }, + /* https://bugs.launchpad.net/bugs/1894667 */ + { + .callback = video_detect_force_video, + .ident = "HP 635 Notebook", + .matches = { + DMI_MATCH(DMI_SYS_VENDOR, "Hewlett-Packard"), + DMI_MATCH(DMI_PRODUCT_NAME, "HP 635 Notebook PC"), + }, + }, /* Non win8 machines which need native backlight nevertheless */ { --- linux-azure-5.8-5.8.0.orig/drivers/amba/bus.c +++ linux-azure-5.8-5.8.0/drivers/amba/bus.c @@ -299,10 +299,11 @@ { struct amba_device *pcdev = to_amba_device(dev); struct amba_driver *drv = to_amba_driver(dev->driver); - int ret; + int ret = 0; pm_runtime_get_sync(dev); - ret = drv->remove(pcdev); + if (drv->remove) + ret = drv->remove(pcdev); pm_runtime_put_noidle(dev); /* Undo the runtime PM settings in amba_probe() */ @@ -319,7 +320,9 @@ static void amba_shutdown(struct device *dev) { struct amba_driver *drv = to_amba_driver(dev->driver); - drv->shutdown(to_amba_device(dev)); + + if (drv->shutdown) + drv->shutdown(to_amba_device(dev)); } /** @@ -332,12 +335,13 @@ */ int amba_driver_register(struct amba_driver *drv) { - drv->drv.bus = &amba_bustype; + if (!drv->probe) + return -EINVAL; -#define SETFN(fn) if (drv->fn) drv->drv.fn = amba_##fn - SETFN(probe); - SETFN(remove); - SETFN(shutdown); + drv->drv.bus = &amba_bustype; + drv->drv.probe = amba_probe; + drv->drv.remove = amba_remove; + drv->drv.shutdown = amba_shutdown; return driver_register(&drv->drv); } --- linux-azure-5.8-5.8.0.orig/drivers/android/Kconfig +++ linux-azure-5.8-5.8.0/drivers/android/Kconfig @@ -9,7 +9,7 @@ if ANDROID config ANDROID_BINDER_IPC - bool "Android Binder IPC Driver" + tristate "Android Binder IPC Driver" depends on MMU default n help @@ -21,8 +21,8 @@ between said processes. config ANDROID_BINDERFS - bool "Android Binderfs filesystem" - depends on ANDROID_BINDER_IPC + tristate "Android Binderfs filesystem" + depends on (ANDROID_BINDER_IPC=y) || (ANDROID_BINDER_IPC=m && m) default n help Binderfs is a pseudo-filesystem for the Android Binder IPC driver --- linux-azure-5.8-5.8.0.orig/drivers/android/Makefile +++ linux-azure-5.8-5.8.0/drivers/android/Makefile @@ -1,6 +1,10 @@ # SPDX-License-Identifier: GPL-2.0-only ccflags-y += -I$(src) # needed for trace events -obj-$(CONFIG_ANDROID_BINDERFS) += binderfs.o -obj-$(CONFIG_ANDROID_BINDER_IPC) += binder.o binder_alloc.o -obj-$(CONFIG_ANDROID_BINDER_IPC_SELFTEST) += binder_alloc_selftest.o +binder_linux-y := binder.o binder_alloc.o +obj-$(CONFIG_ANDROID_BINDER_IPC) += binder_linux.o +binder_linux-$(CONFIG_ANDROID_BINDERFS) += binderfs.o +binder_linux-$(CONFIG_ANDROID_BINDER_IPC_SELFTEST) += binder_alloc_selftest.o + +# binder-$(CONFIG_ANDROID_BINDER_IPC) := binder.o binder_alloc.o +# binder-$(CONFIG_ANDROID_BINDERFS) += binderfs.o --- linux-azure-5.8-5.8.0.orig/drivers/android/binder.c +++ linux-azure-5.8-5.8.0/drivers/android/binder.c @@ -223,7 +223,7 @@ struct binder_work { struct list_head entry; - enum { + enum binder_work_type { BINDER_WORK_TRANSACTION = 1, BINDER_WORK_TRANSACTION_COMPLETE, BINDER_WORK_RETURN_ERROR, @@ -885,27 +885,6 @@ return w; } -/** - * binder_dequeue_work_head() - Dequeues the item at head of list - * @proc: binder_proc associated with list - * @list: list to dequeue head - * - * Removes the head of the list if there are items on the list - * - * Return: pointer dequeued binder_work, NULL if list was empty - */ -static struct binder_work *binder_dequeue_work_head( - struct binder_proc *proc, - struct list_head *list) -{ - struct binder_work *w; - - binder_inner_proc_lock(proc); - w = binder_dequeue_work_head_ilocked(list); - binder_inner_proc_unlock(proc); - return w; -} - static void binder_defer_work(struct binder_proc *proc, enum binder_deferred_state defer); static void binder_free_thread(struct binder_thread *thread); @@ -2251,7 +2230,7 @@ __close_fd_get_file(fd, &twcb->file); if (twcb->file) { filp_close(twcb->file, current->files); - task_work_add(current, &twcb->twork, true); + task_work_add(current, &twcb->twork, TWA_RESUME); } else { kfree(twcb); } @@ -2345,8 +2324,6 @@ * file is done when the transaction is torn * down. */ - WARN_ON(failed_at && - proc->tsk == current->group_leader); } break; case BINDER_TYPE_PTR: /* @@ -2861,8 +2838,7 @@ binder_size_t last_fixup_min_off = 0; struct binder_context *context = proc->context; int t_debug_id = atomic_inc_return(&binder_last_id); - char *secctx = NULL; - u32 secctx_sz = 0; + struct lsmcontext lsmctx = { }; e = binder_transaction_log_add(&binder_transaction_log); e->debug_id = t_debug_id; @@ -2982,6 +2958,12 @@ goto err_dead_binder; } e->to_node = target_node->debug_id; + if (WARN_ON(proc == target_proc)) { + return_error = BR_FAILED_REPLY; + return_error_param = -EINVAL; + return_error_line = __LINE__; + goto err_invalid_target_handle; + } if (security_binder_transaction(proc->tsk, target_proc->tsk) < 0) { return_error = BR_FAILED_REPLY; @@ -3106,18 +3088,18 @@ t->priority = task_nice(current); if (target_node && target_node->txn_security_ctx) { - u32 secid; + struct lsmblob blob; size_t added_size; - security_task_getsecid(proc->tsk, &secid); - ret = security_secid_to_secctx(secid, &secctx, &secctx_sz); + security_task_getsecid(proc->tsk, &blob); + ret = security_secid_to_secctx(&blob, &lsmctx, LSMBLOB_DISPLAY); if (ret) { return_error = BR_FAILED_REPLY; return_error_param = ret; return_error_line = __LINE__; goto err_get_secctx_failed; } - added_size = ALIGN(secctx_sz, sizeof(u64)); + added_size = ALIGN(lsmctx.len, sizeof(u64)); extra_buffers_size += added_size; if (extra_buffers_size < added_size) { /* integer overflow of extra_buffers_size */ @@ -3144,27 +3126,27 @@ t->buffer = NULL; goto err_binder_alloc_buf_failed; } - if (secctx) { + if (lsmctx.context) { int err; size_t buf_offset = ALIGN(tr->data_size, sizeof(void *)) + ALIGN(tr->offsets_size, sizeof(void *)) + ALIGN(extra_buffers_size, sizeof(void *)) - - ALIGN(secctx_sz, sizeof(u64)); + ALIGN(lsmctx.len, sizeof(u64)); t->security_ctx = (uintptr_t)t->buffer->user_data + buf_offset; err = binder_alloc_copy_to_buffer(&target_proc->alloc, t->buffer, buf_offset, - secctx, secctx_sz); + lsmctx.context, lsmctx.len); if (err) { t->security_ctx = 0; WARN_ON(1); } - security_release_secctx(secctx, secctx_sz); - secctx = NULL; + security_release_secctx(&lsmctx); } t->buffer->debug_id = t->debug_id; t->buffer->transaction = t; t->buffer->target_node = target_node; + t->buffer->clear_on_free = !!(t->flags & TF_CLEAR_BUF); trace_binder_transaction_alloc_buf(t->buffer); if (binder_alloc_copy_user_to_buffer( @@ -3216,7 +3198,7 @@ off_end_offset = off_start_offset + tr->offsets_size; sg_buf_offset = ALIGN(off_end_offset, sizeof(void *)); sg_buf_end_offset = sg_buf_offset + extra_buffers_size - - ALIGN(secctx_sz, sizeof(u64)); + ALIGN(lsmctx.len, sizeof(u64)); off_min = 0; for (buffer_offset = off_start_offset; buffer_offset < off_end_offset; buffer_offset += sizeof(binder_size_t)) { @@ -3492,8 +3474,8 @@ binder_alloc_free_buf(&target_proc->alloc, t->buffer); err_binder_alloc_buf_failed: err_bad_extra_size: - if (secctx) - security_release_secctx(secctx, secctx_sz); + if (lsmctx.context) + security_release_secctx(&lsmctx); err_get_secctx_failed: kfree(tcomplete); binder_stats_deleted(BINDER_STAT_TRANSACTION_COMPLETE); @@ -3635,10 +3617,17 @@ struct binder_node *ctx_mgr_node; mutex_lock(&context->context_mgr_node_lock); ctx_mgr_node = context->binder_context_mgr_node; - if (ctx_mgr_node) + if (ctx_mgr_node) { + if (ctx_mgr_node->proc == proc) { + binder_user_error("%d:%d context manager tried to acquire desc 0\n", + proc->pid, thread->pid); + mutex_unlock(&context->context_mgr_node_lock); + return -EINVAL; + } ret = binder_inc_ref_for_node( proc, ctx_mgr_node, strong, NULL, &rdata); + } mutex_unlock(&context->context_mgr_node_lock); } if (ret) @@ -4576,13 +4565,17 @@ struct list_head *list) { struct binder_work *w; + enum binder_work_type wtype; while (1) { - w = binder_dequeue_work_head(proc, list); + binder_inner_proc_lock(proc); + w = binder_dequeue_work_head_ilocked(list); + wtype = w ? w->type : 0; + binder_inner_proc_unlock(proc); if (!w) return; - switch (w->type) { + switch (wtype) { case BINDER_WORK_TRANSACTION: { struct binder_transaction *t; @@ -4616,9 +4609,11 @@ kfree(death); binder_stats_deleted(BINDER_STAT_DEATH); } break; + case BINDER_WORK_NODE: + break; default: pr_err("unexpected work type, %d, not freed\n", - w->type); + wtype); break; } } @@ -6190,9 +6185,20 @@ return ret; } -device_initcall(binder_init); +module_init(binder_init); +/* + * binder will have no exit function since binderfs instances can be mounted + * multiple times and also in user namespaces finding and destroying them all + * is not feasible without introducing insane locking. Just ignoring existing + * instances on module unload also wouldn't work since we would loose track of + * what major numer was dynamically allocated and also what minor numbers are + * already given out. So this would get us into all kinds of issues with device + * number reuse. So simply don't allow unloading unless we are forced to do so. + */ + +MODULE_AUTHOR("Google, Inc."); +MODULE_DESCRIPTION("Driver for Android binder device"); +MODULE_LICENSE("GPL v2"); #define CREATE_TRACE_POINTS #include "binder_trace.h" - -MODULE_LICENSE("GPL v2"); --- linux-azure-5.8-5.8.0.orig/drivers/android/binder_alloc.c +++ linux-azure-5.8-5.8.0/drivers/android/binder_alloc.c @@ -38,8 +38,7 @@ }; static uint32_t binder_alloc_debug_mask = BINDER_DEBUG_USER_ERROR; -module_param_named(debug_mask, binder_alloc_debug_mask, - uint, 0644); +module_param_named(alloc_debug_mask, binder_alloc_debug_mask, uint, 0644); #define binder_alloc_debug(mask, x...) \ do { \ @@ -646,6 +645,8 @@ binder_insert_free_buffer(alloc, buffer); } +static void binder_alloc_clear_buf(struct binder_alloc *alloc, + struct binder_buffer *buffer); /** * binder_alloc_free_buf() - free a binder buffer * @alloc: binder_alloc for this proc @@ -656,6 +657,18 @@ void binder_alloc_free_buf(struct binder_alloc *alloc, struct binder_buffer *buffer) { + /* + * We could eliminate the call to binder_alloc_clear_buf() + * from binder_alloc_deferred_release() by moving this to + * binder_alloc_free_buf_locked(). However, that could + * increase contention for the alloc mutex if clear_on_free + * is used frequently for large buffers. The mutex is not + * needed for correctness here. + */ + if (buffer->clear_on_free) { + binder_alloc_clear_buf(alloc, buffer); + buffer->clear_on_free = false; + } mutex_lock(&alloc->mutex); binder_free_buf_locked(alloc, buffer); mutex_unlock(&alloc->mutex); @@ -752,6 +765,10 @@ /* Transaction should already have been freed */ BUG_ON(buffer->transaction); + if (buffer->clear_on_free) { + binder_alloc_clear_buf(alloc, buffer); + buffer->clear_on_free = false; + } binder_free_buf_locked(alloc, buffer); buffers++; } @@ -1086,6 +1103,36 @@ } /** + * binder_alloc_clear_buf() - zero out buffer + * @alloc: binder_alloc for this proc + * @buffer: binder buffer to be cleared + * + * memset the given buffer to 0 + */ +static void binder_alloc_clear_buf(struct binder_alloc *alloc, + struct binder_buffer *buffer) +{ + size_t bytes = binder_alloc_buffer_size(alloc, buffer); + binder_size_t buffer_offset = 0; + + while (bytes) { + unsigned long size; + struct page *page; + pgoff_t pgoff; + void *kptr; + + page = binder_alloc_get_page(alloc, buffer, + buffer_offset, &pgoff); + size = min_t(size_t, bytes, PAGE_SIZE - pgoff); + kptr = kmap(page) + pgoff; + memset(kptr, 0, size); + kunmap(page); + bytes -= size; + buffer_offset += size; + } +} + +/** * binder_alloc_copy_user_to_buffer() - copy src user to tgt user * @alloc: binder_alloc for this proc * @buffer: binder buffer to be accessed --- linux-azure-5.8-5.8.0.orig/drivers/android/binder_alloc.h +++ linux-azure-5.8-5.8.0/drivers/android/binder_alloc.h @@ -6,6 +6,7 @@ #ifndef _LINUX_BINDER_ALLOC_H #define _LINUX_BINDER_ALLOC_H +#include #include #include #include @@ -23,6 +24,7 @@ * @entry: entry alloc->buffers * @rb_node: node for allocated_buffers/free_buffers rb trees * @free: %true if buffer is free + * @clear_on_free: %true if buffer must be zeroed after use * @allow_user_free: %true if user is allowed to free buffer * @async_transaction: %true if buffer is in use for an async txn * @debug_id: unique ID for debugging @@ -40,9 +42,10 @@ struct rb_node rb_node; /* free entry by size or allocated entry */ /* by address */ unsigned free:1; + unsigned clear_on_free:1; unsigned allow_user_free:1; unsigned async_transaction:1; - unsigned debug_id:29; + unsigned debug_id:28; struct binder_transaction *transaction; @@ -105,7 +108,7 @@ size_t pages_high; }; -#ifdef CONFIG_ANDROID_BINDER_IPC_SELFTEST +#if IS_ENABLED(CONFIG_ANDROID_BINDER_IPC_SELFTEST) void binder_selftest_alloc(struct binder_alloc *alloc); #else static inline void binder_selftest_alloc(struct binder_alloc *alloc) {} --- linux-azure-5.8-5.8.0.orig/drivers/android/binder_internal.h +++ linux-azure-5.8-5.8.0/drivers/android/binder_internal.h @@ -5,6 +5,7 @@ #include #include +#include #include #include #include @@ -75,7 +76,7 @@ extern char *binder_devices_param; -#ifdef CONFIG_ANDROID_BINDERFS +#if IS_ENABLED(CONFIG_ANDROID_BINDERFS) extern bool is_binderfs_device(const struct inode *inode); extern struct dentry *binderfs_create_file(struct dentry *dir, const char *name, const struct file_operations *fops, @@ -96,7 +97,7 @@ static inline void binderfs_remove_file(struct dentry *dentry) {} #endif -#ifdef CONFIG_ANDROID_BINDERFS +#if IS_ENABLED(CONFIG_ANDROID_BINDERFS) extern int __init init_binderfs(void); #else static inline int __init init_binderfs(void) --- linux-azure-5.8-5.8.0.orig/drivers/android/binderfs.c +++ linux-azure-5.8-5.8.0/drivers/android/binderfs.c @@ -113,7 +113,7 @@ struct super_block *sb = ref_inode->i_sb; struct binderfs_info *info = sb->s_fs_info; #if defined(CONFIG_IPC_NS) - bool use_reserve = (info->ipc_ns == &init_ipc_ns); + bool use_reserve = (info->ipc_ns == show_init_ipc_ns()); #else bool use_reserve = true; #endif @@ -399,7 +399,7 @@ struct dentry *root = sb->s_root; struct binderfs_info *info = sb->s_fs_info; #if defined(CONFIG_IPC_NS) - bool use_reserve = (info->ipc_ns == &init_ipc_ns); + bool use_reserve = (info->ipc_ns == show_init_ipc_ns()); #else bool use_reserve = true; #endif @@ -679,7 +679,7 @@ return -ENOMEM; info = sb->s_fs_info; - info->ipc_ns = get_ipc_ns(current->nsproxy->ipc_ns); + info->ipc_ns = get_ipc_ns_exported(current->nsproxy->ipc_ns); info->root_gid = make_kgid(sb->s_user_ns, 0); if (!gid_valid(info->root_gid)) --- linux-azure-5.8-5.8.0.orig/drivers/ata/ahci.h +++ linux-azure-5.8-5.8.0/drivers/ata/ahci.h @@ -240,6 +240,8 @@ as default lpm_policy */ AHCI_HFLAG_SUSPEND_PHYS = (1 << 26), /* handle PHYs during suspend/resume */ + AHCI_HFLAG_IGN_NOTSUPP_POWER_ON = (1 << 27), /* ignore -EOPNOTSUPP + from phy_power_on() */ /* ap->flags bits */ --- linux-azure-5.8-5.8.0.orig/drivers/ata/ahci_brcm.c +++ linux-azure-5.8-5.8.0/drivers/ata/ahci_brcm.c @@ -377,6 +377,10 @@ if (ret) return ret; + ret = ahci_platform_enable_regulators(hpriv); + if (ret) + goto out_disable_clks; + brcm_sata_init(priv); brcm_sata_phys_enable(priv); brcm_sata_alpm_init(hpriv); @@ -406,6 +410,8 @@ ahci_platform_disable_phys(hpriv); out_disable_phys: brcm_sata_phys_disable(priv); + ahci_platform_disable_regulators(hpriv); +out_disable_clks: ahci_platform_disable_clks(hpriv); return ret; } @@ -490,6 +496,10 @@ if (ret) goto out_reset; + ret = ahci_platform_enable_regulators(hpriv); + if (ret) + goto out_disable_clks; + /* Must be first so as to configure endianness including that * of the standard AHCI register space. */ @@ -499,7 +509,7 @@ priv->port_mask = brcm_ahci_get_portmask(hpriv, priv); if (!priv->port_mask) { ret = -ENODEV; - goto out_disable_clks; + goto out_disable_regulators; } /* Must be done before ahci_platform_enable_phys() */ @@ -524,6 +534,8 @@ ahci_platform_disable_phys(hpriv); out_disable_phys: brcm_sata_phys_disable(priv); +out_disable_regulators: + ahci_platform_disable_regulators(hpriv); out_disable_clks: ahci_platform_disable_clks(hpriv); out_reset: --- linux-azure-5.8-5.8.0.orig/drivers/ata/ahci_mvebu.c +++ linux-azure-5.8-5.8.0/drivers/ata/ahci_mvebu.c @@ -227,7 +227,7 @@ static const struct ahci_mvebu_plat_data ahci_mvebu_armada_3700_plat_data = { .plat_config = ahci_mvebu_armada_3700_config, - .flags = AHCI_HFLAG_SUSPEND_PHYS, + .flags = AHCI_HFLAG_SUSPEND_PHYS | AHCI_HFLAG_IGN_NOTSUPP_POWER_ON, }; static const struct of_device_id ahci_mvebu_of_match[] = { --- linux-azure-5.8-5.8.0.orig/drivers/ata/libahci_platform.c +++ linux-azure-5.8-5.8.0/drivers/ata/libahci_platform.c @@ -59,7 +59,7 @@ } rc = phy_power_on(hpriv->phys[i]); - if (rc) { + if (rc && !(rc == -EOPNOTSUPP && (hpriv->flags & AHCI_HFLAG_IGN_NOTSUPP_POWER_ON))) { phy_exit(hpriv->phys[i]); goto disable_phys; } --- linux-azure-5.8-5.8.0.orig/drivers/ata/libata-core.c +++ linux-azure-5.8-5.8.0/drivers/ata/libata-core.c @@ -3868,9 +3868,8 @@ /* https://bugzilla.kernel.org/show_bug.cgi?id=15573 */ { "C300-CTFDDAC128MAG", "0001", ATA_HORKAGE_NONCQ, }, - /* Some Sandisk SSDs lock up hard with NCQ enabled. Reported on - SD7SN6S256G and SD8SN8U256G */ - { "SanDisk SD[78]SN*G", NULL, ATA_HORKAGE_NONCQ, }, + /* Sandisk SD7/8/9s lock up hard on large trims */ + { "SanDisk SD[789]*", NULL, ATA_HORKAGE_MAX_TRIM_128M, }, /* devices which puke on READ_NATIVE_MAX */ { "HDS724040KLSA80", "KFAOA20N", ATA_HORKAGE_BROKEN_HPA, }, --- linux-azure-5.8-5.8.0.orig/drivers/ata/libata-scsi.c +++ linux-azure-5.8-5.8.0/drivers/ata/libata-scsi.c @@ -2080,6 +2080,7 @@ static unsigned int ata_scsiop_inq_b0(struct ata_scsi_args *args, u8 *rbuf) { + struct ata_device *dev = args->dev; u16 min_io_sectors; rbuf[1] = 0xb0; @@ -2105,7 +2106,12 @@ * with the unmap bit set. */ if (ata_id_has_trim(args->id)) { - put_unaligned_be64(65535 * ATA_MAX_TRIM_RNUM, &rbuf[36]); + u64 max_blocks = 65535 * ATA_MAX_TRIM_RNUM; + + if (dev->horkage & ATA_HORKAGE_MAX_TRIM_128M) + max_blocks = 128 << (20 - SECTOR_SHIFT); + + put_unaligned_be64(max_blocks, &rbuf[36]); put_unaligned_be32(1, &rbuf[28]); } --- linux-azure-5.8-5.8.0.orig/drivers/ata/sata_nv.c +++ linux-azure-5.8-5.8.0/drivers/ata/sata_nv.c @@ -2100,7 +2100,7 @@ pp->dhfis_bits &= ~done_mask; pp->dmafis_bits &= ~done_mask; pp->sdbfis_bits |= done_mask; - ata_qc_complete_multiple(ap, ap->qc_active ^ done_mask); + ata_qc_complete_multiple(ap, ata_qc_get_active(ap) ^ done_mask); if (!ap->qc_active) { DPRINTK("over\n"); --- linux-azure-5.8-5.8.0.orig/drivers/ata/sata_rcar.c +++ linux-azure-5.8-5.8.0/drivers/ata/sata_rcar.c @@ -120,7 +120,7 @@ /* Descriptor table word 0 bit (when DTA32M = 1) */ #define SATA_RCAR_DTEND BIT(0) -#define SATA_RCAR_DMA_BOUNDARY 0x1FFFFFFEUL +#define SATA_RCAR_DMA_BOUNDARY 0x1FFFFFFFUL /* Gen2 Physical Layer Control Registers */ #define RCAR_GEN2_PHY_CTL1_REG 0x1704 --- linux-azure-5.8-5.8.0.orig/drivers/atm/eni.c +++ linux-azure-5.8-5.8.0/drivers/atm/eni.c @@ -2239,7 +2239,7 @@ rc = dma_set_mask_and_coherent(&pci_dev->dev, DMA_BIT_MASK(32)); if (rc < 0) - goto out; + goto err_disable; rc = -ENOMEM; eni_dev = kmalloc(sizeof(struct eni_dev), GFP_KERNEL); --- linux-azure-5.8-5.8.0.orig/drivers/atm/firestream.c +++ linux-azure-5.8-5.8.0/drivers/atm/firestream.c @@ -998,6 +998,7 @@ error = make_rate (pcr, r, &tmc0, NULL); if (error) { kfree(tc); + kfree(vcc); return error; } } --- linux-azure-5.8-5.8.0.orig/drivers/atm/idt77252.c +++ linux-azure-5.8-5.8.0/drivers/atm/idt77252.c @@ -3606,7 +3606,7 @@ if ((err = dma_set_mask_and_coherent(&pcidev->dev, DMA_BIT_MASK(32)))) { printk("idt77252: can't enable DMA for PCI device at %s\n", pci_name(pcidev)); - return err; + goto err_out_disable_pdev; } card = kzalloc(sizeof(struct idt77252_dev), GFP_KERNEL); --- linux-azure-5.8-5.8.0.orig/drivers/atm/nicstar.c +++ linux-azure-5.8-5.8.0/drivers/atm/nicstar.c @@ -1706,6 +1706,8 @@ if (push_scqe(card, vc, scq, &scqe, skb) != 0) { atomic_inc(&vcc->stats->tx_err); + dma_unmap_single(&card->pcidev->dev, NS_PRV_DMA(skb), skb->len, + DMA_TO_DEVICE); dev_kfree_skb_any(skb); return -EIO; } --- linux-azure-5.8-5.8.0.orig/drivers/auxdisplay/ht16k33.c +++ linux-azure-5.8-5.8.0/drivers/auxdisplay/ht16k33.c @@ -117,8 +117,7 @@ { struct ht16k33_fbdev *fbdev = &priv->fbdev; - schedule_delayed_work(&fbdev->work, - msecs_to_jiffies(HZ / fbdev->refresh_rate)); + schedule_delayed_work(&fbdev->work, HZ / fbdev->refresh_rate); } /* --- linux-azure-5.8-5.8.0.orig/drivers/base/core.c +++ linux-azure-5.8-5.8.0/drivers/base/core.c @@ -114,6 +114,16 @@ #endif #endif /* !CONFIG_SRCU */ +static bool device_is_ancestor(struct device *dev, struct device *target) +{ + while (target->parent) { + target = target->parent; + if (dev == target) + return true; + } + return false; +} + /** * device_is_dependent - Check if one device depends on another one * @dev: Device to check dependencies for. @@ -127,7 +137,12 @@ struct device_link *link; int ret; - if (dev == target) + /* + * The "ancestors" check is needed to catch the case when the target + * device has not been completely initialized yet and it is still + * missing from the list of children of its parent device. + */ + if (dev == target || device_is_ancestor(dev, target)) return 1; ret = device_for_each_child(dev, target, device_is_dependent); @@ -562,8 +577,7 @@ dev_dbg(link->consumer, "Dropping the link to %s\n", dev_name(link->supplier)); - if (link->flags & DL_FLAG_PM_RUNTIME) - pm_runtime_drop_link(link->consumer); + pm_runtime_drop_link(link); list_del_rcu(&link->s_node); list_del_rcu(&link->c_node); @@ -577,8 +591,7 @@ dev_info(link->consumer, "Dropping the link to %s\n", dev_name(link->supplier)); - if (link->flags & DL_FLAG_PM_RUNTIME) - pm_runtime_drop_link(link->consumer); + pm_runtime_drop_link(link); list_del(&link->s_node); list_del(&link->c_node); @@ -1161,7 +1174,7 @@ struct device_link *link, *ln; mutex_lock(&wfs_lock); - list_del(&dev->links.needs_suppliers); + list_del_init(&dev->links.needs_suppliers); mutex_unlock(&wfs_lock); /* @@ -3988,9 +4001,10 @@ */ void set_primary_fwnode(struct device *dev, struct fwnode_handle *fwnode) { - if (fwnode) { - struct fwnode_handle *fn = dev->fwnode; + struct device *parent = dev->parent; + struct fwnode_handle *fn = dev->fwnode; + if (fwnode) { if (fwnode_is_primary(fn)) fn = fn->secondary; @@ -4000,8 +4014,13 @@ } dev->fwnode = fwnode; } else { - dev->fwnode = fwnode_is_primary(dev->fwnode) ? - dev->fwnode->secondary : NULL; + if (fwnode_is_primary(fn)) { + dev->fwnode = fn->secondary; + if (!(parent && fn == parent->fwnode)) + fn->secondary = NULL; + } else { + dev->fwnode = NULL; + } } } EXPORT_SYMBOL_GPL(set_primary_fwnode); --- linux-azure-5.8-5.8.0.orig/drivers/base/dd.c +++ linux-azure-5.8-5.8.0/drivers/base/dd.c @@ -276,7 +276,7 @@ list_for_each_entry_safe(private, p, &deferred_probe_pending_list, deferred_probe) dev_info(private->device, "deferred probe pending\n"); - wake_up(&probe_timeout_waitqueue); + wake_up_all(&probe_timeout_waitqueue); } static DECLARE_DELAYED_WORK(deferred_probe_timeout_work, deferred_probe_timeout_work_func); @@ -487,7 +487,8 @@ drv->bus->name, __func__, drv->name, dev_name(dev)); if (!list_empty(&dev->devres_head)) { dev_crit(dev, "Resources present before probing\n"); - return -EBUSY; + ret = -EBUSY; + goto done; } re_probe: @@ -607,7 +608,7 @@ ret = 0; done: atomic_dec(&probe_count); - wake_up(&probe_waitqueue); + wake_up_all(&probe_waitqueue); return ret; } @@ -843,7 +844,9 @@ int ret = 0; device_lock(dev); - if (dev->driver) { + if (dev->p->dead) { + goto out_unlock; + } else if (dev->driver) { if (device_is_bound(dev)) { ret = 1; goto out_unlock; @@ -1073,6 +1076,8 @@ drv = dev->driver; if (drv) { + pm_runtime_get_sync(dev); + while (device_links_busy(dev)) { __device_driver_unlock(dev, parent); @@ -1084,13 +1089,12 @@ * have released the driver successfully while this one * was waiting, so check for that. */ - if (dev->driver != drv) + if (dev->driver != drv) { + pm_runtime_put(dev); return; + } } - pm_runtime_get_sync(dev); - pm_runtime_clean_up_links(dev); - driver_sysfs_remove(dev); if (dev->bus) @@ -1106,6 +1110,13 @@ dev->bus->remove(dev); else if (drv->remove) drv->remove(dev); + /* + * A concurrent invocation of the same function might + * have released the driver successfully while this one + * was waiting, so check for that. + */ + if (dev->driver != drv) + return; device_links_driver_cleanup(dev); --- linux-azure-5.8-5.8.0.orig/drivers/base/firmware_loader/fallback_platform.c +++ linux-azure-5.8-5.8.0/drivers/base/firmware_loader/fallback_platform.c @@ -17,7 +17,7 @@ if (!(opt_flags & FW_OPT_FALLBACK_PLATFORM)) return -ENOENT; - rc = security_kernel_load_data(LOADING_FIRMWARE_EFI_EMBEDDED); + rc = security_kernel_load_data(LOADING_FIRMWARE); if (rc) return rc; @@ -25,7 +25,10 @@ if (rc) return rc; /* rc == -ENOENT when the fw was not found */ - fw_priv->data = vmalloc(size); + if (fw_priv->data && size > fw_priv->allocated_size) + return -ENOMEM; + if (!fw_priv->data) + fw_priv->data = vmalloc(size); if (!fw_priv->data) return -ENOMEM; --- linux-azure-5.8-5.8.0.orig/drivers/base/firmware_loader/firmware.h +++ linux-azure-5.8-5.8.0/drivers/base/firmware_loader/firmware.h @@ -142,10 +142,12 @@ void fw_free_paged_buf(struct fw_priv *fw_priv); int fw_grow_paged_buf(struct fw_priv *fw_priv, int pages_needed); int fw_map_paged_buf(struct fw_priv *fw_priv); +bool fw_is_paged_buf(struct fw_priv *fw_priv); #else static inline void fw_free_paged_buf(struct fw_priv *fw_priv) {} static inline int fw_grow_paged_buf(struct fw_priv *fw_priv, int pages_needed) { return -ENXIO; } static inline int fw_map_paged_buf(struct fw_priv *fw_priv) { return -ENXIO; } +static inline bool fw_is_paged_buf(struct fw_priv *fw_priv) { return false; } #endif #endif /* __FIRMWARE_LOADER_H */ --- linux-azure-5.8-5.8.0.orig/drivers/base/firmware_loader/main.c +++ linux-azure-5.8-5.8.0/drivers/base/firmware_loader/main.c @@ -252,9 +252,11 @@ list_del(&fw_priv->list); spin_unlock(&fwc->lock); - fw_free_paged_buf(fw_priv); /* free leftover pages */ - if (!fw_priv->allocated_size) + if (fw_is_paged_buf(fw_priv)) + fw_free_paged_buf(fw_priv); + else if (!fw_priv->allocated_size) vfree(fw_priv->data); + kfree_const(fw_priv->fw_name); kfree(fw_priv); } @@ -268,6 +270,11 @@ } #ifdef CONFIG_FW_LOADER_PAGED_BUF +bool fw_is_paged_buf(struct fw_priv *fw_priv) +{ + return fw_priv->is_paged_buf; +} + void fw_free_paged_buf(struct fw_priv *fw_priv) { int i; @@ -275,6 +282,8 @@ if (!fw_priv->pages) return; + vunmap(fw_priv->data); + for (i = 0; i < fw_priv->nr_pages; i++) __free_page(fw_priv->pages[i]); kvfree(fw_priv->pages); @@ -328,10 +337,6 @@ if (!fw_priv->data) return -ENOMEM; - /* page table is no longer needed after mapping, let's free */ - kvfree(fw_priv->pages); - fw_priv->pages = NULL; - return 0; } #endif @@ -465,14 +470,12 @@ int i, len; int rc = -ENOENT; char *path; - enum kernel_read_file_id id = READING_FIRMWARE; size_t msize = INT_MAX; void *buffer = NULL; /* Already populated data member means we're loading into a buffer */ if (!decompress && fw_priv->data) { buffer = fw_priv->data; - id = READING_FIRMWARE_PREALLOC_BUFFER; msize = fw_priv->allocated_size; } @@ -496,7 +499,8 @@ /* load firmware files from the mount namespace of init */ rc = kernel_read_file_from_path_initns(path, &buffer, - &size, msize, id); + &size, msize, + READING_FIRMWARE); if (rc) { if (rc != -ENOENT) dev_warn(device, "loading %s failed with error %d\n", --- linux-azure-5.8-5.8.0.orig/drivers/base/node.c +++ linux-azure-5.8-5.8.0/drivers/base/node.c @@ -761,14 +761,36 @@ return pfn_to_nid(pfn); } +static int do_register_memory_block_under_node(int nid, + struct memory_block *mem_blk) +{ + int ret; + + /* + * If this memory block spans multiple nodes, we only indicate + * the last processed node. + */ + mem_blk->nid = nid; + + ret = sysfs_create_link_nowarn(&node_devices[nid]->dev.kobj, + &mem_blk->dev.kobj, + kobject_name(&mem_blk->dev.kobj)); + if (ret) + return ret; + + return sysfs_create_link_nowarn(&mem_blk->dev.kobj, + &node_devices[nid]->dev.kobj, + kobject_name(&node_devices[nid]->dev.kobj)); +} + /* register memory section under specified node if it spans that node */ -static int register_mem_sect_under_node(struct memory_block *mem_blk, - void *arg) +static int register_mem_block_under_node_early(struct memory_block *mem_blk, + void *arg) { unsigned long memory_block_pfns = memory_block_size_bytes() / PAGE_SIZE; unsigned long start_pfn = section_nr_to_pfn(mem_blk->start_section_nr); unsigned long end_pfn = start_pfn + memory_block_pfns - 1; - int ret, nid = *(int *)arg; + int nid = *(int *)arg; unsigned long pfn; for (pfn = start_pfn; pfn <= end_pfn; pfn++) { @@ -785,39 +807,34 @@ } /* - * We need to check if page belongs to nid only for the boot - * case, during hotplug we know that all pages in the memory - * block belong to the same node. - */ - if (system_state == SYSTEM_BOOTING) { - page_nid = get_nid_for_pfn(pfn); - if (page_nid < 0) - continue; - if (page_nid != nid) - continue; - } - - /* - * If this memory block spans multiple nodes, we only indicate - * the last processed node. + * We need to check if page belongs to nid only at the boot + * case because node's ranges can be interleaved. */ - mem_blk->nid = nid; - - ret = sysfs_create_link_nowarn(&node_devices[nid]->dev.kobj, - &mem_blk->dev.kobj, - kobject_name(&mem_blk->dev.kobj)); - if (ret) - return ret; + page_nid = get_nid_for_pfn(pfn); + if (page_nid < 0) + continue; + if (page_nid != nid) + continue; - return sysfs_create_link_nowarn(&mem_blk->dev.kobj, - &node_devices[nid]->dev.kobj, - kobject_name(&node_devices[nid]->dev.kobj)); + return do_register_memory_block_under_node(nid, mem_blk); } /* mem section does not span the specified node */ return 0; } /* + * During hotplug we know that all pages in the memory block belong to the same + * node. + */ +static int register_mem_block_under_node_hotplug(struct memory_block *mem_blk, + void *arg) +{ + int nid = *(int *)arg; + + return do_register_memory_block_under_node(nid, mem_blk); +} + +/* * Unregister a memory block device under the node it spans. Memory blocks * with multiple nodes cannot be offlined and therefore also never be removed. */ @@ -832,11 +849,19 @@ kobject_name(&node_devices[mem_blk->nid]->dev.kobj)); } -int link_mem_sections(int nid, unsigned long start_pfn, unsigned long end_pfn) +int link_mem_sections(int nid, unsigned long start_pfn, unsigned long end_pfn, + enum meminit_context context) { + walk_memory_blocks_func_t func; + + if (context == MEMINIT_HOTPLUG) + func = register_mem_block_under_node_hotplug; + else + func = register_mem_block_under_node_early; + return walk_memory_blocks(PFN_PHYS(start_pfn), PFN_PHYS(end_pfn - start_pfn), (void *)&nid, - register_mem_sect_under_node); + func); } #ifdef CONFIG_HUGETLBFS --- linux-azure-5.8-5.8.0.orig/drivers/base/power/main.c +++ linux-azure-5.8-5.8.0/drivers/base/power/main.c @@ -1606,13 +1606,17 @@ } /* - * If a device configured to wake up the system from sleep states - * has been suspended at run time and there's a resume request pending - * for it, this is equivalent to the device signaling wakeup, so the - * system suspend operation should be aborted. + * Wait for possible runtime PM transitions of the device in progress + * to complete and if there's a runtime resume request pending for it, + * resume it before proceeding with invoking the system-wide suspend + * callbacks for it. + * + * If the system-wide suspend callbacks below change the configuration + * of the device, they must disable runtime PM for it or otherwise + * ensure that its runtime-resume callbacks will not be confused by that + * change in case they are invoked going forward. */ - if (pm_runtime_barrier(dev) && device_may_wakeup(dev)) - pm_wakeup_event(dev, 0); + pm_runtime_barrier(dev); if (pm_wakeup_pending()) { dev->power.direct_complete = false; --- linux-azure-5.8-5.8.0.orig/drivers/base/power/runtime.c +++ linux-azure-5.8-5.8.0/drivers/base/power/runtime.c @@ -291,8 +291,7 @@ device_links_read_lock_held()) { int retval; - if (!(link->flags & DL_FLAG_PM_RUNTIME) || - READ_ONCE(link->status) == DL_STATE_SUPPLIER_UNBIND) + if (!(link->flags & DL_FLAG_PM_RUNTIME)) continue; retval = pm_runtime_get_sync(link->supplier); @@ -312,8 +311,6 @@ list_for_each_entry_rcu(link, &dev->links.suppliers, c_node, device_links_read_lock_held()) { - if (READ_ONCE(link->status) == DL_STATE_SUPPLIER_UNBIND) - continue; while (refcount_dec_not_one(&link->rpm_active)) pm_runtime_put(link->supplier); @@ -1644,42 +1641,6 @@ } /** - * pm_runtime_clean_up_links - Prepare links to consumers for driver removal. - * @dev: Device whose driver is going to be removed. - * - * Check links from this device to any consumers and if any of them have active - * runtime PM references to the device, drop the usage counter of the device - * (as many times as needed). - * - * Links with the DL_FLAG_MANAGED flag unset are ignored. - * - * Since the device is guaranteed to be runtime-active at the point this is - * called, nothing else needs to be done here. - * - * Moreover, this is called after device_links_busy() has returned 'false', so - * the status of each link is guaranteed to be DL_STATE_SUPPLIER_UNBIND and - * therefore rpm_active can't be manipulated concurrently. - */ -void pm_runtime_clean_up_links(struct device *dev) -{ - struct device_link *link; - int idx; - - idx = device_links_read_lock(); - - list_for_each_entry_rcu(link, &dev->links.consumers, s_node, - device_links_read_lock_held()) { - if (!(link->flags & DL_FLAG_MANAGED)) - continue; - - while (refcount_dec_not_one(&link->rpm_active)) - pm_runtime_put_noidle(dev); - } - - device_links_read_unlock(idx); -} - -/** * pm_runtime_get_suppliers - Resume and reference-count supplier devices. * @dev: Consumer device. */ @@ -1730,7 +1691,7 @@ spin_unlock_irq(&dev->power.lock); } -void pm_runtime_drop_link(struct device *dev) +static void pm_runtime_drop_link_count(struct device *dev) { spin_lock_irq(&dev->power.lock); WARN_ON(dev->power.links_count == 0); @@ -1738,6 +1699,25 @@ spin_unlock_irq(&dev->power.lock); } +/** + * pm_runtime_drop_link - Prepare for device link removal. + * @link: Device link going away. + * + * Drop the link count of the consumer end of @link and decrement the supplier + * device's runtime PM usage counter as many times as needed to drop all of the + * PM runtime reference to it from the consumer. + */ +void pm_runtime_drop_link(struct device_link *link) +{ + if (!(link->flags & DL_FLAG_PM_RUNTIME)) + return; + + pm_runtime_drop_link_count(link->consumer); + + while (refcount_dec_not_one(&link->rpm_active)) + pm_runtime_put(link->supplier); +} + static bool pm_runtime_need_not_resume(struct device *dev) { return atomic_read(&dev->power.usage_count) <= 1 && --- linux-azure-5.8-5.8.0.orig/drivers/base/regmap/internal.h +++ linux-azure-5.8-5.8.0/drivers/base/regmap/internal.h @@ -259,7 +259,7 @@ int regcache_lookup_reg(struct regmap *map, unsigned int reg); int _regmap_raw_write(struct regmap *map, unsigned int reg, - const void *val, size_t val_len); + const void *val, size_t val_len, bool noinc); void regmap_async_complete_cb(struct regmap_async *async, int ret); --- linux-azure-5.8-5.8.0.orig/drivers/base/regmap/regcache.c +++ linux-azure-5.8-5.8.0/drivers/base/regmap/regcache.c @@ -717,7 +717,7 @@ map->cache_bypass = true; - ret = _regmap_raw_write(map, base, *data, count * val_bytes); + ret = _regmap_raw_write(map, base, *data, count * val_bytes, false); if (ret) dev_err(map->dev, "Unable to sync registers %#x-%#x. %d\n", base, cur - map->reg_stride, ret); --- linux-azure-5.8-5.8.0.orig/drivers/base/regmap/regmap-debugfs.c +++ linux-azure-5.8-5.8.0/drivers/base/regmap/regmap-debugfs.c @@ -583,8 +583,12 @@ devname = dev_name(map->dev); if (name) { - map->debugfs_name = kasprintf(GFP_KERNEL, "%s-%s", + if (!map->debugfs_name) { + map->debugfs_name = kasprintf(GFP_KERNEL, "%s-%s", devname, name); + if (!map->debugfs_name) + return; + } name = map->debugfs_name; } else { name = devname; @@ -592,9 +596,10 @@ if (!strcmp(name, "dummy")) { kfree(map->debugfs_name); - map->debugfs_name = kasprintf(GFP_KERNEL, "dummy%d", dummy_index); + if (!map->debugfs_name) + return; name = map->debugfs_name; dummy_index++; } --- linux-azure-5.8-5.8.0.orig/drivers/base/regmap/regmap-sdw.c +++ linux-azure-5.8-5.8.0/drivers/base/regmap/regmap-sdw.c @@ -12,7 +12,7 @@ struct device *dev = context; struct sdw_slave *slave = dev_to_sdw_dev(dev); - return sdw_write(slave, reg, val); + return sdw_write_no_pm(slave, reg, val); } static int regmap_sdw_read(void *context, unsigned int reg, unsigned int *val) @@ -21,7 +21,7 @@ struct sdw_slave *slave = dev_to_sdw_dev(dev); int read; - read = sdw_read(slave, reg); + read = sdw_read_no_pm(slave, reg); if (read < 0) return read; --- linux-azure-5.8-5.8.0.orig/drivers/base/regmap/regmap.c +++ linux-azure-5.8-5.8.0/drivers/base/regmap/regmap.c @@ -1469,7 +1469,7 @@ } static int _regmap_raw_write_impl(struct regmap *map, unsigned int reg, - const void *val, size_t val_len) + const void *val, size_t val_len, bool noinc) { struct regmap_range_node *range; unsigned long flags; @@ -1528,7 +1528,7 @@ win_residue, val_len / map->format.val_bytes); ret = _regmap_raw_write_impl(map, reg, val, win_residue * - map->format.val_bytes); + map->format.val_bytes, noinc); if (ret != 0) return ret; @@ -1542,7 +1542,7 @@ win_residue = range->window_len - win_offset; } - ret = _regmap_select_page(map, ®, range, val_num); + ret = _regmap_select_page(map, ®, range, noinc ? 1 : val_num); if (ret != 0) return ret; } @@ -1750,7 +1750,8 @@ map->work_buf + map->format.reg_bytes + map->format.pad_bytes, - map->format.val_bytes); + map->format.val_bytes, + false); } static inline void *_regmap_map_get_context(struct regmap *map) @@ -1844,7 +1845,7 @@ EXPORT_SYMBOL_GPL(regmap_write_async); int _regmap_raw_write(struct regmap *map, unsigned int reg, - const void *val, size_t val_len) + const void *val, size_t val_len, bool noinc) { size_t val_bytes = map->format.val_bytes; size_t val_count = val_len / val_bytes; @@ -1865,7 +1866,7 @@ /* Write as many bytes as possible with chunk_size */ for (i = 0; i < chunk_count; i++) { - ret = _regmap_raw_write_impl(map, reg, val, chunk_bytes); + ret = _regmap_raw_write_impl(map, reg, val, chunk_bytes, noinc); if (ret) return ret; @@ -1876,7 +1877,7 @@ /* Write remaining bytes */ if (val_len) - ret = _regmap_raw_write_impl(map, reg, val, val_len); + ret = _regmap_raw_write_impl(map, reg, val, val_len, noinc); return ret; } @@ -1909,7 +1910,7 @@ map->lock(map->lock_arg); - ret = _regmap_raw_write(map, reg, val, val_len); + ret = _regmap_raw_write(map, reg, val, val_len, false); map->unlock(map->lock_arg); @@ -1967,7 +1968,7 @@ write_len = map->max_raw_write; else write_len = val_len; - ret = _regmap_raw_write(map, reg, val, write_len); + ret = _regmap_raw_write(map, reg, val, write_len, true); if (ret) goto out_unlock; val = ((u8 *)val) + write_len; @@ -2444,7 +2445,7 @@ map->async = true; - ret = _regmap_raw_write(map, reg, val, val_len); + ret = _regmap_raw_write(map, reg, val, val_len, false); map->async = false; @@ -2455,7 +2456,7 @@ EXPORT_SYMBOL_GPL(regmap_raw_write_async); static int _regmap_raw_read(struct regmap *map, unsigned int reg, void *val, - unsigned int val_len) + unsigned int val_len, bool noinc) { struct regmap_range_node *range; int ret; @@ -2468,7 +2469,7 @@ range = _regmap_range_lookup(map, reg); if (range) { ret = _regmap_select_page(map, ®, range, - val_len / map->format.val_bytes); + noinc ? 1 : val_len / map->format.val_bytes); if (ret != 0) return ret; } @@ -2506,7 +2507,7 @@ if (!map->format.parse_val) return -EINVAL; - ret = _regmap_raw_read(map, reg, work_val, map->format.val_bytes); + ret = _regmap_raw_read(map, reg, work_val, map->format.val_bytes, false); if (ret == 0) *val = map->format.parse_val(work_val); @@ -2622,7 +2623,7 @@ /* Read bytes that fit into whole chunks */ for (i = 0; i < chunk_count; i++) { - ret = _regmap_raw_read(map, reg, val, chunk_bytes); + ret = _regmap_raw_read(map, reg, val, chunk_bytes, false); if (ret != 0) goto out; @@ -2633,7 +2634,7 @@ /* Read remaining bytes */ if (val_len) { - ret = _regmap_raw_read(map, reg, val, val_len); + ret = _regmap_raw_read(map, reg, val, val_len, false); if (ret != 0) goto out; } @@ -2708,7 +2709,7 @@ read_len = map->max_raw_read; else read_len = val_len; - ret = _regmap_raw_read(map, reg, val, read_len); + ret = _regmap_raw_read(map, reg, val, read_len, true); if (ret) goto out_unlock; val = ((u8 *)val) + read_len; --- linux-azure-5.8-5.8.0.orig/drivers/base/swnode.c +++ linux-azure-5.8-5.8.0/drivers/base/swnode.c @@ -443,14 +443,18 @@ struct swnode *c = to_swnode(child); if (!p || list_empty(&p->children) || - (c && list_is_last(&c->entry, &p->children))) + (c && list_is_last(&c->entry, &p->children))) { + fwnode_handle_put(child); return NULL; + } if (c) c = list_next_entry(c, entry); else c = list_first_entry(&p->children, struct swnode, entry); - return &c->fwnode; + + fwnode_handle_put(child); + return fwnode_handle_get(&c->fwnode); } static struct fwnode_handle * --- linux-azure-5.8-5.8.0.orig/drivers/block/Kconfig +++ linux-azure-5.8-5.8.0/drivers/block/Kconfig @@ -451,6 +451,7 @@ config BLK_DEV_RSXX tristate "IBM Flash Adapter 900GB Full Height PCIe Device Driver" depends on PCI + select CRC32 help Device driver for IBM's high speed PCIe SSD storage device: Flash Adapter 900GB Full Height. --- linux-azure-5.8-5.8.0.orig/drivers/block/loop.c +++ linux-azure-5.8-5.8.0/drivers/block/loop.c @@ -255,7 +255,8 @@ bd_set_size(bdev, size << SECTOR_SHIFT); - set_capacity_revalidate_and_notify(lo->lo_disk, size, false); + if (!set_capacity_revalidate_and_notify(lo->lo_disk, size, false)) + kobject_uevent(&disk_to_dev(bdev->bd_disk)->kobj, KOBJ_CHANGE); } static inline int @@ -648,6 +649,15 @@ lo->use_dio); } +static struct file *loop_real_file(struct file *file) +{ + struct file *f = NULL; + + if (file->f_path.dentry->d_sb->s_op->real_loop) + f = file->f_path.dentry->d_sb->s_op->real_loop(file); + return f; +} + static void loop_reread_partitions(struct loop_device *lo, struct block_device *bdev) { @@ -703,6 +713,7 @@ unsigned int arg) { struct file *file = NULL, *old_file; + struct file *f, *virt_file = NULL, *old_virt_file; int error; bool partscan; @@ -722,12 +733,19 @@ file = fget(arg); if (!file) goto out_err; + f = loop_real_file(file); + if (f) { + virt_file = file; + file = f; + get_file(file); + } error = loop_validate_file(file, bdev); if (error) goto out_err; old_file = lo->lo_backing_file; + old_virt_file = lo->lo_backing_virt_file; error = -EINVAL; @@ -739,6 +757,7 @@ blk_mq_freeze_queue(lo->lo_queue); mapping_set_gfp_mask(old_file->f_mapping, lo->old_gfp_mask); lo->lo_backing_file = file; + lo->lo_backing_virt_file = virt_file; lo->old_gfp_mask = mapping_gfp_mask(file->f_mapping); mapping_set_gfp_mask(file->f_mapping, lo->old_gfp_mask & ~(__GFP_IO|__GFP_FS)); @@ -752,6 +771,8 @@ * dependency. */ fput(old_file); + if (old_virt_file) + fput(old_virt_file); if (partscan) loop_reread_partitions(lo, bdev); return 0; @@ -760,9 +781,29 @@ mutex_unlock(&loop_ctl_mutex); if (file) fput(file); + if (virt_file) + fput(virt_file); return error; } +/* + * for AUFS + * no get/put for file. + */ +struct file *loop_backing_file(struct super_block *sb) +{ + struct file *ret; + struct loop_device *l; + + ret = NULL; + if (MAJOR(sb->s_dev) == LOOP_MAJOR) { + l = sb->s_bdev->bd_disk->private_data; + ret = l->lo_backing_file; + } + return ret; +} +EXPORT_SYMBOL_GPL(loop_backing_file); + /* loop sysfs attributes */ static ssize_t loop_attr_show(struct device *dev, char *page, @@ -877,6 +918,7 @@ struct file *file = lo->lo_backing_file; struct inode *inode = file->f_mapping->host; struct request_queue *q = lo->lo_queue; + u32 granularity, max_discard_sectors; /* * If the backing device is a block device, mirror its zeroing @@ -889,11 +931,10 @@ struct request_queue *backingq; backingq = bdev_get_queue(inode->i_bdev); - blk_queue_max_discard_sectors(q, - backingq->limits.max_write_zeroes_sectors); - blk_queue_max_write_zeroes_sectors(q, - backingq->limits.max_write_zeroes_sectors); + max_discard_sectors = backingq->limits.max_write_zeroes_sectors; + granularity = backingq->limits.discard_granularity ?: + queue_physical_block_size(backingq); /* * We use punch hole to reclaim the free space used by the @@ -902,23 +943,26 @@ * useful information. */ } else if (!file->f_op->fallocate || lo->lo_encrypt_key_size) { - q->limits.discard_granularity = 0; - q->limits.discard_alignment = 0; - blk_queue_max_discard_sectors(q, 0); - blk_queue_max_write_zeroes_sectors(q, 0); + max_discard_sectors = 0; + granularity = 0; } else { - q->limits.discard_granularity = inode->i_sb->s_blocksize; - q->limits.discard_alignment = 0; - - blk_queue_max_discard_sectors(q, UINT_MAX >> 9); - blk_queue_max_write_zeroes_sectors(q, UINT_MAX >> 9); + max_discard_sectors = UINT_MAX >> 9; + granularity = inode->i_sb->s_blocksize; } - if (q->limits.max_write_zeroes_sectors) + if (max_discard_sectors) { + q->limits.discard_granularity = granularity; + blk_queue_max_discard_sectors(q, max_discard_sectors); + blk_queue_max_write_zeroes_sectors(q, max_discard_sectors); blk_queue_flag_set(QUEUE_FLAG_DISCARD, q); - else + } else { + q->limits.discard_granularity = 0; + blk_queue_max_discard_sectors(q, 0); + blk_queue_max_write_zeroes_sectors(q, 0); blk_queue_flag_clear(QUEUE_FLAG_DISCARD, q); + } + q->limits.discard_alignment = 0; } static void loop_unprepare_queue(struct loop_device *lo) @@ -1067,7 +1111,7 @@ struct block_device *bdev, const struct loop_config *config) { - struct file *file; + struct file *file, *f, *virt_file = NULL; struct inode *inode; struct address_space *mapping; struct block_device *claimed_bdev = NULL; @@ -1083,6 +1127,12 @@ file = fget(config->fd); if (!file) goto out; + f = loop_real_file(file); + if (f) { + virt_file = file; + file = f; + get_file(file); + } /* * If we don't hold exclusive handle for the device, upgrade to it @@ -1111,8 +1161,6 @@ mapping = file->f_mapping; inode = mapping->host; - size = get_loop_size(lo, file); - if ((config->info.lo_flags & ~LOOP_CONFIGURE_SETTABLE_FLAGS) != 0) { error = -EINVAL; goto out_unlock; @@ -1141,6 +1189,7 @@ lo->use_dio = lo->lo_flags & LO_FLAGS_DIRECT_IO; lo->lo_device = bdev; lo->lo_backing_file = file; + lo->lo_backing_virt_file = virt_file; lo->old_gfp_mask = mapping_gfp_mask(mapping); mapping_set_gfp_mask(mapping, lo->old_gfp_mask & ~(__GFP_IO|__GFP_FS)); @@ -1162,6 +1211,8 @@ loop_update_rotational(lo); loop_update_dio(lo); loop_sysfs_init(lo); + + size = get_loop_size(lo, file); loop_set_size(lo, size); set_blocksize(bdev, S_ISBLK(inode->i_mode) ? @@ -1190,6 +1241,8 @@ bd_abort_claiming(bdev, claimed_bdev, loop_configure); out_putf: fput(file); + if (virt_file) + fput(virt_file); out: /* This is safe: open() is still holding a reference. */ module_put(THIS_MODULE); @@ -1199,6 +1252,7 @@ static int __loop_clr_fd(struct loop_device *lo, bool release) { struct file *filp = NULL; + struct file *virt_filp = lo->lo_backing_virt_file; gfp_t gfp = lo->old_gfp_mask; struct block_device *bdev = lo->lo_device; int err = 0; @@ -1222,6 +1276,7 @@ spin_lock_irq(&lo->lo_lock); lo->lo_backing_file = NULL; + lo->lo_backing_virt_file = NULL; spin_unlock_irq(&lo->lo_lock); loop_release_xfer(lo); @@ -1305,6 +1360,8 @@ */ if (filp) fput(filp); + if (virt_filp) + fput(virt_filp); return err; } @@ -2402,6 +2459,8 @@ range = max_loop ? max_loop << part_shift : 1UL << MINORBITS; + mutex_lock(&loop_ctl_mutex); + idr_for_each(&loop_index_idr, &loop_exit_cb, NULL); idr_destroy(&loop_index_idr); @@ -2409,6 +2468,8 @@ unregister_blkdev(LOOP_MAJOR, "loop"); misc_deregister(&loop_misc); + + mutex_unlock(&loop_ctl_mutex); } module_init(loop_init); --- linux-azure-5.8-5.8.0.orig/drivers/block/loop.h +++ linux-azure-5.8-5.8.0/drivers/block/loop.h @@ -46,7 +46,7 @@ int (*ioctl)(struct loop_device *, int cmd, unsigned long arg); - struct file * lo_backing_file; + struct file *lo_backing_file, *lo_backing_virt_file; struct block_device *lo_device; void *key_data; --- linux-azure-5.8-5.8.0.orig/drivers/block/nbd.c +++ linux-azure-5.8-5.8.0/drivers/block/nbd.c @@ -296,7 +296,7 @@ } } -static void nbd_size_update(struct nbd_device *nbd) +static void nbd_size_update(struct nbd_device *nbd, bool start) { struct nbd_config *config = nbd->config; struct block_device *bdev = bdget_disk(nbd->disk, 0); @@ -312,7 +312,8 @@ if (bdev) { if (bdev->bd_disk) { bd_set_size(bdev, config->bytesize); - set_blocksize(bdev, config->blksize); + if (start) + set_blocksize(bdev, config->blksize); } else bdev->bd_invalidated = 1; bdput(bdev); @@ -327,7 +328,7 @@ config->blksize = blocksize; config->bytesize = blocksize * nr_blocks; if (nbd->task_recv != NULL) - nbd_size_update(nbd); + nbd_size_update(nbd, false); } static void nbd_complete_rq(struct request *req) @@ -798,9 +799,9 @@ blk_mq_complete_request(blk_mq_rq_from_pdu(cmd)); } + nbd_config_put(nbd); atomic_dec(&config->recv_threads); wake_up(&config->recv_wq); - nbd_config_put(nbd); kfree(args); } @@ -1024,6 +1025,12 @@ if (!sock) return err; + /* + * We need to make sure we don't get any errant requests while we're + * reallocating the ->socks array. + */ + blk_mq_freeze_queue(nbd->disk->queue); + if (!netlink && !nbd->task_setup && !test_bit(NBD_RT_BOUND, &config->runtime_flags)) nbd->task_setup = current; @@ -1062,10 +1069,12 @@ nsock->cookie = 0; socks[config->num_connections++] = nsock; atomic_inc(&config->live_connections); + blk_mq_unfreeze_queue(nbd->disk->queue); return 0; put_socket: + blk_mq_unfreeze_queue(nbd->disk->queue); sockfd_put(sock); return err; } @@ -1304,7 +1313,7 @@ args->index = i; queue_work(nbd->recv_workq, &args->work); } - nbd_size_update(nbd); + nbd_size_update(nbd, true); return error; } @@ -1360,6 +1369,8 @@ nbd->tag_set.timeout = timeout * HZ; if (timeout) blk_queue_rq_timeout(nbd->disk->queue, timeout * HZ); + else + blk_queue_rq_timeout(nbd->disk->queue, 30 * HZ); } /* Must be called with config_lock held */ @@ -1511,6 +1522,7 @@ if (test_bit(NBD_RT_DISCONNECT_ON_CLOSE, &nbd->config->runtime_flags) && bdev->bd_openers == 0) nbd_disconnect_and_put(nbd); + bdput(bdev); nbd_config_put(nbd); nbd_put(nbd); @@ -2282,6 +2294,12 @@ } dev_list = nla_nest_start_noflag(reply, NBD_ATTR_DEVICE_LIST); + if (!dev_list) { + nlmsg_free(reply); + ret = -EMSGSIZE; + goto out; + } + if (index == -1) { ret = idr_for_each(&nbd_index_idr, &status_cb, reply); if (ret) { --- linux-azure-5.8-5.8.0.orig/drivers/block/null_blk.h +++ linux-azure-5.8-5.8.0/drivers/block/null_blk.h @@ -44,11 +44,14 @@ unsigned int nr_zones; struct blk_zone *zones; sector_t zone_size_sects; + spinlock_t zone_lock; + unsigned long *zone_locks; unsigned long size; /* device size in MB */ unsigned long completion_nsec; /* time in ns to complete a request */ unsigned long cache_size; /* disk cache size in MB */ unsigned long zone_size; /* zone size in MB if device is zoned */ + unsigned long zone_capacity; /* zone capacity in MB if device is zoned */ unsigned int zone_nr_conv; /* number of conventional zones */ unsigned int submit_queues; /* number of submission queues */ unsigned int home_node; /* home node for the device */ --- linux-azure-5.8-5.8.0.orig/drivers/block/null_blk_main.c +++ linux-azure-5.8-5.8.0/drivers/block/null_blk_main.c @@ -200,6 +200,10 @@ module_param_named(zone_size, g_zone_size, ulong, S_IRUGO); MODULE_PARM_DESC(zone_size, "Zone size in MB when block device is zoned. Must be power-of-two: Default: 256"); +static unsigned long g_zone_capacity; +module_param_named(zone_capacity, g_zone_capacity, ulong, 0444); +MODULE_PARM_DESC(zone_capacity, "Zone capacity in MB when block device is zoned. Can be less than or equal to zone size. Default: Zone size"); + static unsigned int g_zone_nr_conv; module_param_named(zone_nr_conv, g_zone_nr_conv, uint, 0444); MODULE_PARM_DESC(zone_nr_conv, "Number of conventional zones when block device is zoned. Default: 0"); @@ -341,6 +345,7 @@ NULLB_DEVICE_ATTR(cache_size, ulong, NULL); NULLB_DEVICE_ATTR(zoned, bool, NULL); NULLB_DEVICE_ATTR(zone_size, ulong, NULL); +NULLB_DEVICE_ATTR(zone_capacity, ulong, NULL); NULLB_DEVICE_ATTR(zone_nr_conv, uint, NULL); static ssize_t nullb_device_power_show(struct config_item *item, char *page) @@ -457,6 +462,7 @@ &nullb_device_attr_badblocks, &nullb_device_attr_zoned, &nullb_device_attr_zone_size, + &nullb_device_attr_zone_capacity, &nullb_device_attr_zone_nr_conv, NULL, }; @@ -510,7 +516,8 @@ static ssize_t memb_group_features_show(struct config_item *item, char *page) { - return snprintf(page, PAGE_SIZE, "memory_backed,discard,bandwidth,cache,badblocks,zoned,zone_size,zone_nr_conv\n"); + return snprintf(page, PAGE_SIZE, + "memory_backed,discard,bandwidth,cache,badblocks,zoned,zone_size,zone_capacity,zone_nr_conv\n"); } CONFIGFS_ATTR_RO(memb_group_, features); @@ -571,6 +578,7 @@ dev->use_per_node_hctx = g_use_per_node_hctx; dev->zoned = g_zoned; dev->zone_size = g_zone_size; + dev->zone_capacity = g_zone_capacity; dev->zone_nr_conv = g_zone_nr_conv; return dev; } @@ -1139,7 +1147,7 @@ len = bvec.bv_len; err = null_transfer(nullb, bvec.bv_page, len, bvec.bv_offset, op_is_write(req_op(rq)), sector, - req_op(rq) & REQ_FUA); + rq->cmd_flags & REQ_FUA); if (err) { spin_unlock_irq(&nullb->lock); return err; --- linux-azure-5.8-5.8.0.orig/drivers/block/null_blk_zoned.c +++ linux-azure-5.8-5.8.0/drivers/block/null_blk_zoned.c @@ -1,12 +1,12 @@ // SPDX-License-Identifier: GPL-2.0 #include +#include #include "null_blk.h" #define CREATE_TRACE_POINTS #include "null_blk_trace.h" -/* zone_size in MBs to sectors. */ -#define ZONE_SIZE_SHIFT 11 +#define MB_TO_SECTS(mb) (((sector_t)mb * SZ_1M) >> SECTOR_SHIFT) static inline unsigned int null_zone_no(struct nullb_device *dev, sector_t sect) { @@ -15,7 +15,7 @@ int null_init_zoned_dev(struct nullb_device *dev, struct request_queue *q) { - sector_t dev_size = (sector_t)dev->size * 1024 * 1024; + sector_t dev_capacity_sects, zone_capacity_sects; sector_t sector = 0; unsigned int i; @@ -28,14 +28,43 @@ return -EINVAL; } - dev->zone_size_sects = dev->zone_size << ZONE_SIZE_SHIFT; - dev->nr_zones = dev_size >> - (SECTOR_SHIFT + ilog2(dev->zone_size_sects)); + if (!dev->zone_capacity) + dev->zone_capacity = dev->zone_size; + + if (dev->zone_capacity > dev->zone_size) { + pr_err("null_blk: zone capacity (%lu MB) larger than zone size (%lu MB)\n", + dev->zone_capacity, dev->zone_size); + return -EINVAL; + } + + zone_capacity_sects = MB_TO_SECTS(dev->zone_capacity); + dev_capacity_sects = MB_TO_SECTS(dev->size); + dev->zone_size_sects = MB_TO_SECTS(dev->zone_size); + dev->nr_zones = dev_capacity_sects >> ilog2(dev->zone_size_sects); + if (dev_capacity_sects & (dev->zone_size_sects - 1)) + dev->nr_zones++; + dev->zones = kvmalloc_array(dev->nr_zones, sizeof(struct blk_zone), GFP_KERNEL | __GFP_ZERO); if (!dev->zones) return -ENOMEM; + /* + * With memory backing, the zone_lock spinlock needs to be temporarily + * released to avoid scheduling in atomic context. To guarantee zone + * information protection, use a bitmap to lock zones with + * wait_on_bit_lock_io(). Sleeping on the lock is OK as memory backing + * implies that the queue is marked with BLK_MQ_F_BLOCKING. + */ + spin_lock_init(&dev->zone_lock); + if (dev->memory_backed) { + dev->zone_locks = bitmap_zalloc(dev->nr_zones, GFP_KERNEL); + if (!dev->zone_locks) { + kvfree(dev->zones); + return -ENOMEM; + } + } + if (dev->zone_nr_conv >= dev->nr_zones) { dev->zone_nr_conv = dev->nr_zones - 1; pr_info("changed the number of conventional zones to %u", @@ -47,6 +76,7 @@ zone->start = sector; zone->len = dev->zone_size_sects; + zone->capacity = zone->len; zone->wp = zone->start + zone->len; zone->type = BLK_ZONE_TYPE_CONVENTIONAL; zone->cond = BLK_ZONE_COND_NOT_WP; @@ -58,7 +88,12 @@ struct blk_zone *zone = &dev->zones[i]; zone->start = zone->wp = sector; - zone->len = dev->zone_size_sects; + if (zone->start + dev->zone_size_sects > dev_capacity_sects) + zone->len = dev_capacity_sects - zone->start; + else + zone->len = dev->zone_size_sects; + zone->capacity = + min_t(sector_t, zone->len, zone_capacity_sects); zone->type = BLK_ZONE_TYPE_SEQWRITE_REQ; zone->cond = BLK_ZONE_COND_EMPTY; @@ -94,15 +129,30 @@ void null_free_zoned_dev(struct nullb_device *dev) { + bitmap_free(dev->zone_locks); kvfree(dev->zones); } +static inline void null_lock_zone(struct nullb_device *dev, unsigned int zno) +{ + if (dev->memory_backed) + wait_on_bit_lock_io(dev->zone_locks, zno, TASK_UNINTERRUPTIBLE); + spin_lock_irq(&dev->zone_lock); +} + +static inline void null_unlock_zone(struct nullb_device *dev, unsigned int zno) +{ + spin_unlock_irq(&dev->zone_lock); + if (dev->memory_backed) + clear_and_wake_up_bit(zno, dev->zone_locks); +} + int null_report_zones(struct gendisk *disk, sector_t sector, unsigned int nr_zones, report_zones_cb cb, void *data) { struct nullb *nullb = disk->private_data; struct nullb_device *dev = nullb->dev; - unsigned int first_zone, i; + unsigned int first_zone, i, zno; struct blk_zone zone; int error; @@ -113,15 +163,18 @@ nr_zones = min(nr_zones, dev->nr_zones - first_zone); trace_nullb_report_zones(nullb, nr_zones); - for (i = 0; i < nr_zones; i++) { + zno = first_zone; + for (i = 0; i < nr_zones; i++, zno++) { /* * Stacked DM target drivers will remap the zone information by * modifying the zone information passed to the report callback. * So use a local copy to avoid corruption of the device zone * array. */ - memcpy(&zone, &dev->zones[first_zone + i], - sizeof(struct blk_zone)); + null_lock_zone(dev, zno); + memcpy(&zone, &dev->zones[zno], sizeof(struct blk_zone)); + null_unlock_zone(dev, zno); + error = cb(&zone, i, data); if (error) return error; @@ -130,6 +183,10 @@ return nr_zones; } +/* + * This is called in the case of memory backing from null_process_cmd() + * with the target zone already locked. + */ size_t null_zone_valid_read_len(struct nullb *nullb, sector_t sector, unsigned int len) { @@ -158,13 +215,19 @@ trace_nullb_zone_op(cmd, zno, zone->cond); - if (zone->type == BLK_ZONE_TYPE_CONVENTIONAL) + if (zone->type == BLK_ZONE_TYPE_CONVENTIONAL) { + if (append) + return BLK_STS_IOERR; return null_process_cmd(cmd, REQ_OP_WRITE, sector, nr_sectors); + } + + null_lock_zone(dev, zno); switch (zone->cond) { case BLK_ZONE_COND_FULL: /* Cannot write to a full zone */ - return BLK_STS_IOERR; + ret = BLK_STS_IOERR; + break; case BLK_ZONE_COND_EMPTY: case BLK_ZONE_COND_IMP_OPEN: case BLK_ZONE_COND_EXP_OPEN: @@ -182,63 +245,101 @@ else cmd->rq->__sector = sector; } else if (sector != zone->wp) { - return BLK_STS_IOERR; + ret = BLK_STS_IOERR; + break; + } + + if (zone->wp + nr_sectors > zone->start + zone->capacity) { + ret = BLK_STS_IOERR; + break; } if (zone->cond != BLK_ZONE_COND_EXP_OPEN) zone->cond = BLK_ZONE_COND_IMP_OPEN; + if (dev->memory_backed) + spin_unlock_irq(&dev->zone_lock); ret = null_process_cmd(cmd, REQ_OP_WRITE, sector, nr_sectors); + if (dev->memory_backed) + spin_lock_irq(&dev->zone_lock); + if (ret != BLK_STS_OK) - return ret; + break; zone->wp += nr_sectors; - if (zone->wp == zone->start + zone->len) + if (zone->wp == zone->start + zone->capacity) zone->cond = BLK_ZONE_COND_FULL; - return BLK_STS_OK; + ret = BLK_STS_OK; + break; default: /* Invalid zone condition */ - return BLK_STS_IOERR; + ret = BLK_STS_IOERR; } + + null_unlock_zone(dev, zno); + + return ret; } static blk_status_t null_zone_mgmt(struct nullb_cmd *cmd, enum req_opf op, sector_t sector) { struct nullb_device *dev = cmd->nq->dev; - unsigned int zone_no = null_zone_no(dev, sector); - struct blk_zone *zone = &dev->zones[zone_no]; + unsigned int zone_no; + struct blk_zone *zone; + blk_status_t ret = BLK_STS_OK; size_t i; - switch (op) { - case REQ_OP_ZONE_RESET_ALL: - for (i = 0; i < dev->nr_zones; i++) { - if (zone[i].type == BLK_ZONE_TYPE_CONVENTIONAL) - continue; - zone[i].cond = BLK_ZONE_COND_EMPTY; - zone[i].wp = zone[i].start; + if (op == REQ_OP_ZONE_RESET_ALL) { + for (i = dev->zone_nr_conv; i < dev->nr_zones; i++) { + null_lock_zone(dev, i); + zone = &dev->zones[i]; + if (zone->cond != BLK_ZONE_COND_EMPTY) { + zone->cond = BLK_ZONE_COND_EMPTY; + zone->wp = zone->start; + trace_nullb_zone_op(cmd, i, zone->cond); + } + null_unlock_zone(dev, i); } - break; + return BLK_STS_OK; + } + + zone_no = null_zone_no(dev, sector); + zone = &dev->zones[zone_no]; + + null_lock_zone(dev, zone_no); + + switch (op) { case REQ_OP_ZONE_RESET: - if (zone->type == BLK_ZONE_TYPE_CONVENTIONAL) - return BLK_STS_IOERR; + if (zone->type == BLK_ZONE_TYPE_CONVENTIONAL) { + ret = BLK_STS_IOERR; + break; + } zone->cond = BLK_ZONE_COND_EMPTY; zone->wp = zone->start; break; case REQ_OP_ZONE_OPEN: - if (zone->type == BLK_ZONE_TYPE_CONVENTIONAL) - return BLK_STS_IOERR; - if (zone->cond == BLK_ZONE_COND_FULL) - return BLK_STS_IOERR; + if (zone->type == BLK_ZONE_TYPE_CONVENTIONAL) { + ret = BLK_STS_IOERR; + break; + } + if (zone->cond == BLK_ZONE_COND_FULL) { + ret = BLK_STS_IOERR; + break; + } zone->cond = BLK_ZONE_COND_EXP_OPEN; break; case REQ_OP_ZONE_CLOSE: - if (zone->type == BLK_ZONE_TYPE_CONVENTIONAL) - return BLK_STS_IOERR; - if (zone->cond == BLK_ZONE_COND_FULL) - return BLK_STS_IOERR; + if (zone->type == BLK_ZONE_TYPE_CONVENTIONAL) { + ret = BLK_STS_IOERR; + break; + } + if (zone->cond == BLK_ZONE_COND_FULL) { + ret = BLK_STS_IOERR; + break; + } if (zone->wp == zone->start) zone->cond = BLK_ZONE_COND_EMPTY; @@ -246,35 +347,54 @@ zone->cond = BLK_ZONE_COND_CLOSED; break; case REQ_OP_ZONE_FINISH: - if (zone->type == BLK_ZONE_TYPE_CONVENTIONAL) - return BLK_STS_IOERR; + if (zone->type == BLK_ZONE_TYPE_CONVENTIONAL) { + ret = BLK_STS_IOERR; + break; + } zone->cond = BLK_ZONE_COND_FULL; zone->wp = zone->start + zone->len; + ret = BLK_STS_OK; break; default: - return BLK_STS_NOTSUPP; + ret = BLK_STS_NOTSUPP; + break; } - trace_nullb_zone_op(cmd, zone_no, zone->cond); - return BLK_STS_OK; + if (ret == BLK_STS_OK) + trace_nullb_zone_op(cmd, zone_no, zone->cond); + + null_unlock_zone(dev, zone_no); + + return ret; } blk_status_t null_process_zoned_cmd(struct nullb_cmd *cmd, enum req_opf op, sector_t sector, sector_t nr_sectors) { + struct nullb_device *dev = cmd->nq->dev; + unsigned int zno = null_zone_no(dev, sector); + blk_status_t sts; + switch (op) { case REQ_OP_WRITE: - return null_zone_write(cmd, sector, nr_sectors, false); + sts = null_zone_write(cmd, sector, nr_sectors, false); + break; case REQ_OP_ZONE_APPEND: - return null_zone_write(cmd, sector, nr_sectors, true); + sts = null_zone_write(cmd, sector, nr_sectors, true); + break; case REQ_OP_ZONE_RESET: case REQ_OP_ZONE_RESET_ALL: case REQ_OP_ZONE_OPEN: case REQ_OP_ZONE_CLOSE: case REQ_OP_ZONE_FINISH: - return null_zone_mgmt(cmd, op, sector); + sts = null_zone_mgmt(cmd, op, sector); + break; default: - return null_process_cmd(cmd, op, sector, nr_sectors); + null_lock_zone(dev, zno); + sts = null_process_cmd(cmd, op, sector, nr_sectors); + null_unlock_zone(dev, zno); } + + return sts; } --- linux-azure-5.8-5.8.0.orig/drivers/block/rbd.c +++ linux-azure-5.8-5.8.0/drivers/block/rbd.c @@ -5120,6 +5120,9 @@ { struct rbd_device *rbd_dev = dev_to_rbd_dev(dev); + if (!capable(CAP_SYS_ADMIN)) + return -EPERM; + return sprintf(buf, "%s\n", rbd_dev->config_info); } @@ -5231,6 +5234,9 @@ struct rbd_device *rbd_dev = dev_to_rbd_dev(dev); int ret; + if (!capable(CAP_SYS_ADMIN)) + return -EPERM; + ret = rbd_dev_refresh(rbd_dev); if (ret) return ret; @@ -7059,6 +7065,9 @@ struct rbd_client *rbdc; int rc; + if (!capable(CAP_SYS_ADMIN)) + return -EPERM; + if (!try_module_get(THIS_MODULE)) return -ENODEV; @@ -7209,6 +7218,9 @@ bool force = false; int ret; + if (!capable(CAP_SYS_ADMIN)) + return -EPERM; + dev_id = -1; opt_buf[0] = '\0'; sscanf(buf, "%d %5s", &dev_id, opt_buf); --- linux-azure-5.8-5.8.0.orig/drivers/block/rnbd/rnbd-clt-sysfs.c +++ linux-azure-5.8-5.8.0/drivers/block/rnbd/rnbd-clt-sysfs.c @@ -433,8 +433,9 @@ * i.e. rnbd_clt_unmap_dev_store() leading to a sysfs warning because * of sysfs link already was removed already. */ - if (strlen(dev->blk_symlink_name) && try_module_get(THIS_MODULE)) { + if (dev->blk_symlink_name && try_module_get(THIS_MODULE)) { sysfs_remove_link(rnbd_devs_kobj, dev->blk_symlink_name); + kfree(dev->blk_symlink_name); module_put(THIS_MODULE); } } @@ -487,10 +488,17 @@ static int rnbd_clt_add_dev_symlink(struct rnbd_clt_dev *dev) { struct kobject *gd_kobj = &disk_to_dev(dev->gd)->kobj; - int ret; + int ret, len; + + len = strlen(dev->pathname) + strlen(dev->sess->sessname) + 2; + dev->blk_symlink_name = kzalloc(len, GFP_KERNEL); + if (!dev->blk_symlink_name) { + rnbd_clt_err(dev, "Failed to allocate memory for blk_symlink_name\n"); + return -ENOMEM; + } ret = rnbd_clt_get_path_name(dev, dev->blk_symlink_name, - sizeof(dev->blk_symlink_name)); + len); if (ret) { rnbd_clt_err(dev, "Failed to get /sys/block symlink path, err: %d\n", ret); @@ -508,7 +516,8 @@ return 0; out_err: - dev->blk_symlink_name[0] = '\0'; + kfree(dev->blk_symlink_name); + dev->blk_symlink_name = NULL ; return ret; } --- linux-azure-5.8-5.8.0.orig/drivers/block/rnbd/rnbd-clt.c +++ linux-azure-5.8-5.8.0/drivers/block/rnbd/rnbd-clt.c @@ -59,6 +59,7 @@ ida_simple_remove(&index_ida, dev->clt_device_id); mutex_unlock(&ida_lock); kfree(dev->hw_queues); + kfree(dev->pathname); rnbd_clt_put_sess(dev->sess); mutex_destroy(&dev->lock); kfree(dev); @@ -1392,10 +1393,16 @@ pathname, sess->sessname, ret); goto out_queues; } + + dev->pathname = kstrdup(pathname, GFP_KERNEL); + if (!dev->pathname) { + ret = -ENOMEM; + goto out_queues; + } + dev->clt_device_id = ret; dev->sess = sess; dev->access_mode = access_mode; - strlcpy(dev->pathname, pathname, sizeof(dev->pathname)); mutex_init(&dev->lock); refcount_set(&dev->refcount, 1); dev->dev_state = DEV_STATE_INIT; @@ -1424,8 +1431,8 @@ list_for_each_entry(sess, &sess_list, list) { mutex_lock(&sess->lock); list_for_each_entry(dev, &sess->devs_list, list) { - if (!strncmp(dev->pathname, pathname, - sizeof(dev->pathname))) { + if (strlen(dev->pathname) == strlen(pathname) && + !strcmp(dev->pathname, pathname)) { found = true; break; } @@ -1673,7 +1680,8 @@ */ list_for_each_entry_safe(sess, sn, &sess_list, list) { - WARN_ON(!rnbd_clt_get_sess(sess)); + if (!rnbd_clt_get_sess(sess)) + continue; close_rtrs(sess); list_for_each_entry_safe(dev, tn, &sess->devs_list, list) { /* --- linux-azure-5.8-5.8.0.orig/drivers/block/rnbd/rnbd-clt.h +++ linux-azure-5.8-5.8.0/drivers/block/rnbd/rnbd-clt.h @@ -108,7 +108,7 @@ u32 clt_device_id; struct mutex lock; enum rnbd_clt_dev_state dev_state; - char pathname[NAME_MAX]; + char *pathname; enum rnbd_access_mode access_mode; bool read_only; bool rotational; @@ -126,7 +126,7 @@ struct list_head list; struct gendisk *gd; struct kobject kobj; - char blk_symlink_name[NAME_MAX]; + char *blk_symlink_name; refcount_t refcount; struct work_struct unmap_on_rmmod_work; }; --- linux-azure-5.8-5.8.0.orig/drivers/block/virtio_blk.c +++ linux-azure-5.8-5.8.0/drivers/block/virtio_blk.c @@ -126,16 +126,31 @@ if (!range) return -ENOMEM; - __rq_for_each_bio(bio, req) { - u64 sector = bio->bi_iter.bi_sector; - u32 num_sectors = bio->bi_iter.bi_size >> SECTOR_SHIFT; + /* + * Single max discard segment means multi-range discard isn't + * supported, and block layer only runs contiguity merge like + * normal RW request. So we can't reply on bio for retrieving + * each range info. + */ + if (queue_max_discard_segments(req->q) == 1) { + range[0].flags = cpu_to_le32(flags); + range[0].num_sectors = cpu_to_le32(blk_rq_sectors(req)); + range[0].sector = cpu_to_le64(blk_rq_pos(req)); + n = 1; + } else { + __rq_for_each_bio(bio, req) { + u64 sector = bio->bi_iter.bi_sector; + u32 num_sectors = bio->bi_iter.bi_size >> SECTOR_SHIFT; - range[n].flags = cpu_to_le32(flags); - range[n].num_sectors = cpu_to_le32(num_sectors); - range[n].sector = cpu_to_le64(sector); - n++; + range[n].flags = cpu_to_le32(flags); + range[n].num_sectors = cpu_to_le32(num_sectors); + range[n].sector = cpu_to_le64(sector); + n++; + } } + WARN_ON_ONCE(n != segments); + req->special_vec.bv_page = virt_to_page(range); req->special_vec.bv_offset = offset_in_page(range); req->special_vec.bv_len = sizeof(*range) * segments; --- linux-azure-5.8-5.8.0.orig/drivers/block/xen-blkback/blkback.c +++ linux-azure-5.8-5.8.0/drivers/block/xen-blkback/blkback.c @@ -132,76 +132,15 @@ #define BLKBACK_INVALID_HANDLE (~0) -/* Number of free pages to remove on each call to gnttab_free_pages */ -#define NUM_BATCH_FREE_PAGES 10 - static inline bool persistent_gnt_timeout(struct persistent_gnt *persistent_gnt) { return pgrant_timeout && (jiffies - persistent_gnt->last_used >= HZ * pgrant_timeout); } -static inline int get_free_page(struct xen_blkif_ring *ring, struct page **page) -{ - unsigned long flags; - - spin_lock_irqsave(&ring->free_pages_lock, flags); - if (list_empty(&ring->free_pages)) { - BUG_ON(ring->free_pages_num != 0); - spin_unlock_irqrestore(&ring->free_pages_lock, flags); - return gnttab_alloc_pages(1, page); - } - BUG_ON(ring->free_pages_num == 0); - page[0] = list_first_entry(&ring->free_pages, struct page, lru); - list_del(&page[0]->lru); - ring->free_pages_num--; - spin_unlock_irqrestore(&ring->free_pages_lock, flags); - - return 0; -} - -static inline void put_free_pages(struct xen_blkif_ring *ring, struct page **page, - int num) -{ - unsigned long flags; - int i; - - spin_lock_irqsave(&ring->free_pages_lock, flags); - for (i = 0; i < num; i++) - list_add(&page[i]->lru, &ring->free_pages); - ring->free_pages_num += num; - spin_unlock_irqrestore(&ring->free_pages_lock, flags); -} - -static inline void shrink_free_pagepool(struct xen_blkif_ring *ring, int num) -{ - /* Remove requested pages in batches of NUM_BATCH_FREE_PAGES */ - struct page *page[NUM_BATCH_FREE_PAGES]; - unsigned int num_pages = 0; - unsigned long flags; - - spin_lock_irqsave(&ring->free_pages_lock, flags); - while (ring->free_pages_num > num) { - BUG_ON(list_empty(&ring->free_pages)); - page[num_pages] = list_first_entry(&ring->free_pages, - struct page, lru); - list_del(&page[num_pages]->lru); - ring->free_pages_num--; - if (++num_pages == NUM_BATCH_FREE_PAGES) { - spin_unlock_irqrestore(&ring->free_pages_lock, flags); - gnttab_free_pages(num_pages, page); - spin_lock_irqsave(&ring->free_pages_lock, flags); - num_pages = 0; - } - } - spin_unlock_irqrestore(&ring->free_pages_lock, flags); - if (num_pages != 0) - gnttab_free_pages(num_pages, page); -} - #define vaddr(page) ((unsigned long)pfn_to_kaddr(page_to_pfn(page))) -static int do_block_io_op(struct xen_blkif_ring *ring); +static int do_block_io_op(struct xen_blkif_ring *ring, unsigned int *eoi_flags); static int dispatch_rw_block_io(struct xen_blkif_ring *ring, struct blkif_request *req, struct pending_req *pending_req); @@ -331,7 +270,8 @@ unmap_data.count = segs_to_unmap; BUG_ON(gnttab_unmap_refs_sync(&unmap_data)); - put_free_pages(ring, pages, segs_to_unmap); + gnttab_page_cache_put(&ring->free_pages, pages, + segs_to_unmap); segs_to_unmap = 0; } @@ -371,7 +311,8 @@ if (++segs_to_unmap == BLKIF_MAX_SEGMENTS_PER_REQUEST) { unmap_data.count = segs_to_unmap; BUG_ON(gnttab_unmap_refs_sync(&unmap_data)); - put_free_pages(ring, pages, segs_to_unmap); + gnttab_page_cache_put(&ring->free_pages, pages, + segs_to_unmap); segs_to_unmap = 0; } kfree(persistent_gnt); @@ -379,7 +320,7 @@ if (segs_to_unmap > 0) { unmap_data.count = segs_to_unmap; BUG_ON(gnttab_unmap_refs_sync(&unmap_data)); - put_free_pages(ring, pages, segs_to_unmap); + gnttab_page_cache_put(&ring->free_pages, pages, segs_to_unmap); } } @@ -612,6 +553,8 @@ struct xen_vbd *vbd = &blkif->vbd; unsigned long timeout; int ret; + bool do_eoi; + unsigned int eoi_flags = XEN_EOI_FLAG_SPURIOUS; set_freezable(); while (!kthread_should_stop()) { @@ -636,16 +579,23 @@ if (timeout == 0) goto purge_gnt_list; + do_eoi = ring->waiting_reqs; + ring->waiting_reqs = 0; smp_mb(); /* clear flag *before* checking for work */ - ret = do_block_io_op(ring); + ret = do_block_io_op(ring, &eoi_flags); if (ret > 0) ring->waiting_reqs = 1; if (ret == -EACCES) wait_event_interruptible(ring->shutdown_wq, kthread_should_stop()); + if (do_eoi && !ring->waiting_reqs) { + xen_irq_lateeoi(ring->irq, eoi_flags); + eoi_flags |= XEN_EOI_FLAG_SPURIOUS; + } + purge_gnt_list: if (blkif->vbd.feature_gnt_persistent && time_after(jiffies, ring->next_lru)) { @@ -655,9 +605,10 @@ /* Shrink the free pages pool if it is too large. */ if (time_before(jiffies, blkif->buffer_squeeze_end)) - shrink_free_pagepool(ring, 0); + gnttab_page_cache_shrink(&ring->free_pages, 0); else - shrink_free_pagepool(ring, max_buffer_pages); + gnttab_page_cache_shrink(&ring->free_pages, + max_buffer_pages); if (log_stats && time_after(jiffies, ring->st_print)) print_stats(ring); @@ -688,7 +639,7 @@ ring->persistent_gnt_c = 0; /* Since we are shutting down remove all pages from the buffer */ - shrink_free_pagepool(ring, 0 /* All */); + gnttab_page_cache_shrink(&ring->free_pages, 0 /* All */); } static unsigned int xen_blkbk_unmap_prepare( @@ -727,7 +678,7 @@ but is this the best way to deal with this? */ BUG_ON(result); - put_free_pages(ring, data->pages, data->count); + gnttab_page_cache_put(&ring->free_pages, data->pages, data->count); make_response(ring, pending_req->id, pending_req->operation, pending_req->status); free_req(ring, pending_req); @@ -794,7 +745,8 @@ if (invcount) { ret = gnttab_unmap_refs(unmap, NULL, unmap_pages, invcount); BUG_ON(ret); - put_free_pages(ring, unmap_pages, invcount); + gnttab_page_cache_put(&ring->free_pages, unmap_pages, + invcount); } pages += batch; num -= batch; @@ -841,8 +793,14 @@ pages[i]->page = persistent_gnt->page; pages[i]->persistent_gnt = persistent_gnt; } else { - if (get_free_page(ring, &pages[i]->page)) - goto out_of_memory; + if (gnttab_page_cache_get(&ring->free_pages, + &pages[i]->page)) { + gnttab_page_cache_put(&ring->free_pages, + pages_to_gnt, + segs_to_map); + ret = -ENOMEM; + goto out; + } addr = vaddr(pages[i]->page); pages_to_gnt[segs_to_map] = pages[i]->page; pages[i]->persistent_gnt = NULL; @@ -858,10 +816,8 @@ break; } - if (segs_to_map) { + if (segs_to_map) ret = gnttab_map_refs(map, NULL, pages_to_gnt, segs_to_map); - BUG_ON(ret); - } /* * Now swizzle the MFN in our domain with the MFN from the other domain @@ -874,9 +830,10 @@ BUG_ON(new_map_idx >= segs_to_map); if (unlikely(map[new_map_idx].status != 0)) { pr_debug("invalid buffer -- could not remap it\n"); - put_free_pages(ring, &pages[seg_idx]->page, 1); + gnttab_page_cache_put(&ring->free_pages, + &pages[seg_idx]->page, 1); pages[seg_idx]->handle = BLKBACK_INVALID_HANDLE; - ret |= 1; + ret |= !ret; goto next; } pages[seg_idx]->handle = map[new_map_idx].handle; @@ -928,17 +885,18 @@ } segs_to_map = 0; last_map = map_until; - if (map_until != num) + if (!ret && map_until != num) goto again; - return ret; - -out_of_memory: - pr_alert("%s: out of memory\n", __func__); - put_free_pages(ring, pages_to_gnt, segs_to_map); - for (i = last_map; i < num; i++) +out: + for (i = last_map; i < num; i++) { + /* Don't zap current batch's valid persistent grants. */ + if(i >= last_map + segs_to_map) + pages[i]->persistent_gnt = NULL; pages[i]->handle = BLKBACK_INVALID_HANDLE; - return -ENOMEM; + } + + return ret; } static int xen_blkbk_map_seg(struct pending_req *pending_req) @@ -1121,7 +1079,7 @@ * and transmute it to the block API to hand it over to the proper block disk. */ static int -__do_block_io_op(struct xen_blkif_ring *ring) +__do_block_io_op(struct xen_blkif_ring *ring, unsigned int *eoi_flags) { union blkif_back_rings *blk_rings = &ring->blk_rings; struct blkif_request req; @@ -1144,6 +1102,9 @@ if (RING_REQUEST_CONS_OVERFLOW(&blk_rings->common, rc)) break; + /* We've seen a request, so clear spurious eoi flag. */ + *eoi_flags &= ~XEN_EOI_FLAG_SPURIOUS; + if (kthread_should_stop()) { more_to_do = 1; break; @@ -1202,13 +1163,13 @@ } static int -do_block_io_op(struct xen_blkif_ring *ring) +do_block_io_op(struct xen_blkif_ring *ring, unsigned int *eoi_flags) { union blkif_back_rings *blk_rings = &ring->blk_rings; int more_to_do; do { - more_to_do = __do_block_io_op(ring); + more_to_do = __do_block_io_op(ring, eoi_flags); if (more_to_do) break; --- linux-azure-5.8-5.8.0.orig/drivers/block/xen-blkback/common.h +++ linux-azure-5.8-5.8.0/drivers/block/xen-blkback/common.h @@ -289,9 +289,7 @@ struct work_struct persistent_purge_work; /* Buffer of free pages to map grant refs. */ - spinlock_t free_pages_lock; - int free_pages_num; - struct list_head free_pages; + struct gnttab_page_cache free_pages; struct work_struct free_work; /* Thread shutdown wait queue. */ --- linux-azure-5.8-5.8.0.orig/drivers/block/xen-blkback/xenbus.c +++ linux-azure-5.8-5.8.0/drivers/block/xen-blkback/xenbus.c @@ -144,8 +144,7 @@ INIT_LIST_HEAD(&ring->pending_free); INIT_LIST_HEAD(&ring->persistent_purge_list); INIT_WORK(&ring->persistent_purge_work, xen_blkbk_unmap_purged_grants); - spin_lock_init(&ring->free_pages_lock); - INIT_LIST_HEAD(&ring->free_pages); + gnttab_page_cache_init(&ring->free_pages); spin_lock_init(&ring->pending_free_lock); init_waitqueue_head(&ring->pending_free_wq); @@ -246,9 +245,8 @@ if (req_prod - rsp_prod > size) goto fail; - err = bind_interdomain_evtchn_to_irqhandler(blkif->domid, evtchn, - xen_blkif_be_int, 0, - "blkif-backend", ring); + err = bind_interdomain_evtchn_to_irqhandler_lateeoi(blkif->domid, + evtchn, xen_blkif_be_int, 0, "blkif-backend", ring); if (err < 0) goto fail; ring->irq = err; @@ -276,6 +274,7 @@ if (ring->xenblkd) { kthread_stop(ring->xenblkd); + ring->xenblkd = NULL; wake_up(&ring->shutdown_wq); } @@ -318,8 +317,7 @@ BUG_ON(atomic_read(&ring->persistent_gnt_in_use) != 0); BUG_ON(!list_empty(&ring->persistent_purge_list)); BUG_ON(!RB_EMPTY_ROOT(&ring->persistent_gnts)); - BUG_ON(!list_empty(&ring->free_pages)); - BUG_ON(ring->free_pages_num != 0); + BUG_ON(ring->free_pages.num_pages != 0); BUG_ON(ring->persistent_gnt_c != 0); WARN_ON(i != (XEN_BLKIF_REQS_PER_PAGE * blkif->nr_ring_pages)); ring->active = false; @@ -670,7 +668,8 @@ /* setup back pointer */ be->blkif->be = be; - err = xenbus_watch_pathfmt(dev, &be->backend_watch, backend_changed, + err = xenbus_watch_pathfmt(dev, &be->backend_watch, NULL, + backend_changed, "%s/%s", dev->nodename, "physical-device"); if (err) goto fail; --- linux-azure-5.8-5.8.0.orig/drivers/block/xen-blkfront.c +++ linux-azure-5.8-5.8.0/drivers/block/xen-blkfront.c @@ -945,7 +945,8 @@ if (info->feature_discard) { blk_queue_flag_set(QUEUE_FLAG_DISCARD, rq); blk_queue_max_discard_sectors(rq, get_capacity(gd)); - rq->limits.discard_granularity = info->discard_granularity; + rq->limits.discard_granularity = info->discard_granularity ?: + info->physical_sector_size; rq->limits.discard_alignment = info->discard_alignment; if (info->feature_secdiscard) blk_queue_flag_set(QUEUE_FLAG_SECERASE, rq); @@ -2170,19 +2171,12 @@ static void blkfront_setup_discard(struct blkfront_info *info) { - int err; - unsigned int discard_granularity; - unsigned int discard_alignment; - info->feature_discard = 1; - err = xenbus_gather(XBT_NIL, info->xbdev->otherend, - "discard-granularity", "%u", &discard_granularity, - "discard-alignment", "%u", &discard_alignment, - NULL); - if (!err) { - info->discard_granularity = discard_granularity; - info->discard_alignment = discard_alignment; - } + info->discard_granularity = xenbus_read_unsigned(info->xbdev->otherend, + "discard-granularity", + 0); + info->discard_alignment = xenbus_read_unsigned(info->xbdev->otherend, + "discard-alignment", 0); info->feature_secdiscard = !!xenbus_read_unsigned(info->xbdev->otherend, "discard-secure", 0); --- linux-azure-5.8-5.8.0.orig/drivers/bluetooth/btmrvl_sdio.c +++ linux-azure-5.8-5.8.0/drivers/bluetooth/btmrvl_sdio.c @@ -328,7 +328,7 @@ static const struct btmrvl_sdio_device btmrvl_sdio_sd8977 = { .helper = NULL, - .firmware = "mrvl/sd8977_uapsta.bin", + .firmware = "mrvl/sdsd8977_combo_v2.bin", .reg = &btmrvl_reg_8977, .support_pscan_win_report = true, .sd_blksz_fw_dl = 256, @@ -346,7 +346,7 @@ static const struct btmrvl_sdio_device btmrvl_sdio_sd8997 = { .helper = NULL, - .firmware = "mrvl/sd8997_uapsta.bin", + .firmware = "mrvl/sdsd8997_combo_v4.bin", .reg = &btmrvl_reg_8997, .support_pscan_win_report = true, .sd_blksz_fw_dl = 256, @@ -1831,6 +1831,6 @@ MODULE_FIRMWARE("mrvl/sd8797_uapsta.bin"); MODULE_FIRMWARE("mrvl/sd8887_uapsta.bin"); MODULE_FIRMWARE("mrvl/sd8897_uapsta.bin"); -MODULE_FIRMWARE("mrvl/sd8977_uapsta.bin"); +MODULE_FIRMWARE("mrvl/sdsd8977_combo_v2.bin"); MODULE_FIRMWARE("mrvl/sd8987_uapsta.bin"); -MODULE_FIRMWARE("mrvl/sd8997_uapsta.bin"); +MODULE_FIRMWARE("mrvl/sdsd8997_combo_v4.bin"); --- linux-azure-5.8-5.8.0.orig/drivers/bluetooth/btmtksdio.c +++ linux-azure-5.8-5.8.0/drivers/bluetooth/btmtksdio.c @@ -685,7 +685,7 @@ const u8 *fw_ptr; size_t fw_size; int err, dlen; - u8 flag; + u8 flag, param; err = request_firmware(&fw, fwname, &hdev->dev); if (err < 0) { @@ -693,6 +693,20 @@ return err; } + /* Power on data RAM the firmware relies on. */ + param = 1; + wmt_params.op = MTK_WMT_FUNC_CTRL; + wmt_params.flag = 3; + wmt_params.dlen = sizeof(param); + wmt_params.data = ¶m; + wmt_params.status = NULL; + + err = mtk_hci_wmt_sync(hdev, &wmt_params); + if (err < 0) { + bt_dev_err(hdev, "Failed to power on data RAM (%d)", err); + goto free_fw; + } + fw_ptr = fw->data; fw_size = fw->size; --- linux-azure-5.8-5.8.0.orig/drivers/bluetooth/btqcomsmd.c +++ linux-azure-5.8-5.8.0/drivers/bluetooth/btqcomsmd.c @@ -142,12 +142,16 @@ btq->cmd_channel = qcom_wcnss_open_channel(wcnss, "APPS_RIVA_BT_CMD", btqcomsmd_cmd_callback, btq); - if (IS_ERR(btq->cmd_channel)) - return PTR_ERR(btq->cmd_channel); + if (IS_ERR(btq->cmd_channel)) { + ret = PTR_ERR(btq->cmd_channel); + goto destroy_acl_channel; + } hdev = hci_alloc_dev(); - if (!hdev) - return -ENOMEM; + if (!hdev) { + ret = -ENOMEM; + goto destroy_cmd_channel; + } hci_set_drvdata(hdev, btq); btq->hdev = hdev; @@ -161,14 +165,21 @@ hdev->set_bdaddr = qca_set_bdaddr_rome; ret = hci_register_dev(hdev); - if (ret < 0) { - hci_free_dev(hdev); - return ret; - } + if (ret < 0) + goto hci_free_dev; platform_set_drvdata(pdev, btq); return 0; + +hci_free_dev: + hci_free_dev(hdev); +destroy_cmd_channel: + rpmsg_destroy_ept(btq->cmd_channel); +destroy_acl_channel: + rpmsg_destroy_ept(btq->acl_channel); + + return ret; } static int btqcomsmd_remove(struct platform_device *pdev) --- linux-azure-5.8-5.8.0.orig/drivers/bluetooth/btrtl.c +++ linux-azure-5.8-5.8.0/drivers/bluetooth/btrtl.c @@ -55,6 +55,7 @@ int fw_len; u8 *cfg_data; int cfg_len; + bool drop_fw; }; static const struct id_table ic_id_table[] = { @@ -563,6 +564,8 @@ u16 hci_rev, lmp_subver; u8 hci_ver; int ret; + u16 opcode; + u8 cmd[2]; btrtl_dev = kzalloc(sizeof(*btrtl_dev), GFP_KERNEL); if (!btrtl_dev) { @@ -584,6 +587,49 @@ hci_ver = resp->hci_ver; hci_rev = le16_to_cpu(resp->hci_rev); lmp_subver = le16_to_cpu(resp->lmp_subver); + + if (resp->hci_ver == 0x8 && le16_to_cpu(resp->hci_rev) == 0x826c && + resp->lmp_ver == 0x8 && le16_to_cpu(resp->lmp_subver) == 0xa99e) + btrtl_dev->drop_fw = true; + + if (btrtl_dev->drop_fw) { + opcode = hci_opcode_pack(0x3f, 0x66); + cmd[0] = opcode & 0xff; + cmd[1] = opcode >> 8; + + skb = bt_skb_alloc(sizeof(cmd), GFP_KERNEL); + if (!skb) + goto out_free; + + skb_put_data(skb, cmd, sizeof(cmd)); + hci_skb_pkt_type(skb) = HCI_COMMAND_PKT; + + hdev->send(hdev, skb); + + /* Ensure the above vendor command is sent to controller and + * process has done. + */ + msleep(200); + + /* Read the local version again. Expect to have the vanilla + * version as cold boot. + */ + skb = btrtl_read_local_version(hdev); + if (IS_ERR(skb)) { + ret = PTR_ERR(skb); + goto err_free; + } + + resp = (struct hci_rp_read_local_version *)skb->data; + rtl_dev_info(hdev, "examining hci_ver=%02x hci_rev=%04x lmp_ver=%02x lmp_subver=%04x", + resp->hci_ver, resp->hci_rev, + resp->lmp_ver, resp->lmp_subver); + + hci_ver = resp->hci_ver; + hci_rev = le16_to_cpu(resp->hci_rev); + lmp_subver = le16_to_cpu(resp->lmp_subver); + } +out_free: kfree_skb(skb); btrtl_dev->ic_info = btrtl_match_ic(lmp_subver, hci_rev, hci_ver, --- linux-azure-5.8-5.8.0.orig/drivers/bluetooth/btusb.c +++ linux-azure-5.8-5.8.0/drivers/bluetooth/btusb.c @@ -14,6 +14,7 @@ #include #include #include +#include #include #include #include @@ -1718,8 +1719,11 @@ static int btusb_setup_csr(struct hci_dev *hdev) { + struct btusb_data *data = hci_get_drvdata(hdev); + u16 bcdDevice = le16_to_cpu(data->udev->descriptor.bcdDevice); struct hci_rp_read_local_version *rp; struct sk_buff *skb; + bool is_fake = false; BT_DBG("%s", hdev->name); @@ -1739,18 +1743,75 @@ rp = (struct hci_rp_read_local_version *)skb->data; - /* Detect controllers which aren't real CSR ones. */ + /* Detect a wide host of Chinese controllers that aren't CSR. + * + * Known fake bcdDevices: 0x0100, 0x0134, 0x1915, 0x2520, 0x7558, 0x8891 + * + * The main thing they have in common is that these are really popular low-cost + * options that support newer Bluetooth versions but rely on heavy VID/PID + * squatting of this poor old Bluetooth 1.1 device. Even sold as such. + * + * We detect actual CSR devices by checking that the HCI manufacturer code + * is Cambridge Silicon Radio (10) and ensuring that LMP sub-version and + * HCI rev values always match. As they both store the firmware number. + */ if (le16_to_cpu(rp->manufacturer) != 10 || - le16_to_cpu(rp->lmp_subver) == 0x0c5c) { + le16_to_cpu(rp->hci_rev) != le16_to_cpu(rp->lmp_subver)) + is_fake = true; + + /* Known legit CSR firmware build numbers and their supported BT versions: + * - 1.1 (0x1) -> 0x0073, 0x020d, 0x033c, 0x034e + * - 1.2 (0x2) -> 0x04d9, 0x0529 + * - 2.0 (0x3) -> 0x07a6, 0x07ad, 0x0c5c + * - 2.1 (0x4) -> 0x149c, 0x1735, 0x1899 (0x1899 is a BlueCore4-External) + * - 4.0 (0x6) -> 0x1d86, 0x2031, 0x22bb + * + * e.g. Real CSR dongles with LMP subversion 0x73 are old enough that + * support BT 1.1 only; so it's a dead giveaway when some + * third-party BT 4.0 dongle reuses it. + */ + else if (le16_to_cpu(rp->lmp_subver) <= 0x034e && + le16_to_cpu(rp->hci_ver) > BLUETOOTH_VER_1_1) + is_fake = true; + + else if (le16_to_cpu(rp->lmp_subver) <= 0x0529 && + le16_to_cpu(rp->hci_ver) > BLUETOOTH_VER_1_2) + is_fake = true; + + else if (le16_to_cpu(rp->lmp_subver) <= 0x0c5c && + le16_to_cpu(rp->hci_ver) > BLUETOOTH_VER_2_0) + is_fake = true; + + else if (le16_to_cpu(rp->lmp_subver) <= 0x1899 && + le16_to_cpu(rp->hci_ver) > BLUETOOTH_VER_2_1) + is_fake = true; + + else if (le16_to_cpu(rp->lmp_subver) <= 0x22bb && + le16_to_cpu(rp->hci_ver) > BLUETOOTH_VER_4_0) + is_fake = true; + + /* Other clones which beat all the above checks */ + else if (bcdDevice == 0x0134 && + le16_to_cpu(rp->lmp_subver) == 0x0c5c && + le16_to_cpu(rp->hci_ver) == BLUETOOTH_VER_2_0) + is_fake = true; + + if (is_fake) { + bt_dev_warn(hdev, "CSR: Unbranded CSR clone detected; adding workarounds..."); + + /* Generally these clones have big discrepancies between + * advertised features and what's actually supported. + * Probably will need to be expanded in the future; + * without these the controller will lock up. + */ + set_bit(HCI_QUIRK_BROKEN_STORED_LINK_KEY, &hdev->quirks); + set_bit(HCI_QUIRK_BROKEN_ERR_DATA_REPORTING, &hdev->quirks); + /* Clear the reset quirk since this is not an actual * early Bluetooth 1.1 device from CSR. */ clear_bit(HCI_QUIRK_RESET_ON_CLOSE, &hdev->quirks); - - /* These fake CSR controllers have all a broken - * stored link key handling and so just disable it. - */ - set_bit(HCI_QUIRK_BROKEN_STORED_LINK_KEY, &hdev->quirks); + clear_bit(HCI_QUIRK_SIMULTANEOUS_DISCOVERY, &hdev->quirks); } kfree_skb(skb); @@ -2701,7 +2762,7 @@ skb = bt_skb_alloc(HCI_WMT_MAX_EVENT_SIZE, GFP_ATOMIC); if (!skb) { hdev->stat.err_rx++; - goto err_out; + return; } hci_skb_pkt_type(skb) = HCI_EVENT_PKT; @@ -2719,13 +2780,18 @@ */ if (test_bit(BTUSB_TX_WAIT_VND_EVT, &data->flags)) { data->evt_skb = skb_clone(skb, GFP_ATOMIC); - if (!data->evt_skb) - goto err_out; + if (!data->evt_skb) { + kfree_skb(skb); + return; + } } err = hci_recv_frame(hdev, skb); - if (err < 0) - goto err_free_skb; + if (err < 0) { + kfree_skb(data->evt_skb); + data->evt_skb = NULL; + return; + } if (test_and_clear_bit(BTUSB_TX_WAIT_VND_EVT, &data->flags)) { @@ -2734,11 +2800,6 @@ wake_up_bit(&data->flags, BTUSB_TX_WAIT_VND_EVT); } -err_out: - return; -err_free_skb: - kfree_skb(data->evt_skb); - data->evt_skb = NULL; return; } else if (urb->status == -ENOENT) { /* Avoid suspend failed when usb_kill_urb */ @@ -2797,6 +2858,7 @@ buf = kmalloc(size, GFP_KERNEL); if (!buf) { kfree(dr); + usb_free_urb(urb); return -ENOMEM; } @@ -2925,7 +2987,7 @@ const u8 *fw_ptr; size_t fw_size; int err, dlen; - u8 flag; + u8 flag, param; err = request_firmware(&fw, fwname, &hdev->dev); if (err < 0) { @@ -2933,6 +2995,20 @@ return err; } + /* Power on data RAM the firmware relies on. */ + param = 1; + wmt_params.op = BTMTK_WMT_FUNC_CTRL; + wmt_params.flag = 3; + wmt_params.dlen = sizeof(param); + wmt_params.data = ¶m; + wmt_params.status = NULL; + + err = btusb_mtk_hci_wmt_sync(hdev, &wmt_params); + if (err < 0) { + bt_dev_err(hdev, "Failed to power on data RAM (%d)", err); + goto err_release_fw; + } + fw_ptr = fw->data; fw_size = fw->size; @@ -3253,6 +3329,35 @@ return 0; } +#define BTUSB_EDGE_LED_COMMAND 0xfc77 + +static void btusb_edge_set_led(struct hci_dev *hdev, bool state) +{ + struct sk_buff *skb; + u8 config_led[] = { 0x09, 0x00, 0x01, 0x01 }; + + if (state) + config_led[1] = 0x01; + + skb = __hci_cmd_sync(hdev, BTUSB_EDGE_LED_COMMAND, sizeof(config_led), config_led, HCI_INIT_TIMEOUT); + if (IS_ERR(skb)) + BT_ERR("%s fail to set LED (%ld)", hdev->name, PTR_ERR(skb)); + else + kfree_skb(skb); +} + +static int btusb_edge_post_init(struct hci_dev *hdev) +{ + btusb_edge_set_led(hdev, true); + return 0; +} + +static int btusb_edge_shutdown(struct hci_dev *hdev) +{ + btusb_edge_set_led(hdev, false); + return 0; +} + static int btusb_set_bdaddr_ath3012(struct hci_dev *hdev, const bdaddr_t *bdaddr) { @@ -3520,6 +3625,13 @@ info = &qca_devices_table[i]; } if (!info) { + /* If the rom_version is not matched in the qca_devices_table + * and the high ROM version is not zero, we assume this chip no + * need to load the rampatch and nvm. + */ + if (ver_rom & ~0xffffU) + return 0; + bt_dev_err(hdev, "don't support firmware rome 0x%x", ver_rom); return -ENODEV; } @@ -3910,8 +4022,18 @@ set_bit(HCI_QUIRK_NON_PERSISTENT_DIAG, &hdev->quirks); } - if (id->driver_info & BTUSB_MARVELL) + if (id->driver_info & BTUSB_MARVELL) { + struct pci_dev *pdev; hdev->set_bdaddr = btusb_set_bdaddr_marvell; + pdev = pci_get_subsys(PCI_ANY_ID, PCI_ANY_ID, 0x1028, 0x0720, NULL); + if (!pdev) + pdev = pci_get_subsys(PCI_ANY_ID, PCI_ANY_ID, 0x1028, 0x0733, NULL); + if (pdev) { + pci_dev_put(pdev); + hdev->post_init = btusb_edge_post_init; + hdev->shutdown = btusb_edge_shutdown; + } + } if (IS_ENABLED(CONFIG_BT_HCIBTUSB_MTK) && (id->driver_info & BTUSB_MEDIATEK)) { @@ -4001,11 +4123,13 @@ if (bcdDevice < 0x117) set_bit(HCI_QUIRK_RESET_ON_CLOSE, &hdev->quirks); + /* This must be set first in case we disable it for fakes */ + set_bit(HCI_QUIRK_SIMULTANEOUS_DISCOVERY, &hdev->quirks); + /* Fake CSR devices with broken commands */ - if (bcdDevice <= 0x100 || bcdDevice == 0x134) + if (le16_to_cpu(udev->descriptor.idVendor) == 0x0a12 && + le16_to_cpu(udev->descriptor.idProduct) == 0x0001) hdev->setup = btusb_setup_csr; - - set_bit(HCI_QUIRK_SIMULTANEOUS_DISCOVERY, &hdev->quirks); } if (id->driver_info & BTUSB_SNIFFER) { --- linux-azure-5.8-5.8.0.orig/drivers/bluetooth/hci_h5.c +++ linux-azure-5.8-5.8.0/drivers/bluetooth/hci_h5.c @@ -245,6 +245,9 @@ skb_queue_purge(&h5->rel); skb_queue_purge(&h5->unrel); + kfree_skb(h5->rx_skb); + h5->rx_skb = NULL; + if (h5->vnd && h5->vnd->close) h5->vnd->close(h5); @@ -793,7 +796,7 @@ if (!h5) return -ENOMEM; - set_bit(HCI_UART_RESET_ON_INIT, &h5->serdev_hu.flags); + set_bit(HCI_UART_RESET_ON_INIT, &h5->serdev_hu.hdev_flags); h5->hu = &h5->serdev_hu; h5->serdev_hu.serdev = serdev; --- linux-azure-5.8-5.8.0.orig/drivers/bluetooth/hci_ldisc.c +++ linux-azure-5.8-5.8.0/drivers/bluetooth/hci_ldisc.c @@ -127,10 +127,9 @@ if (!test_bit(HCI_UART_PROTO_READY, &hu->flags)) goto no_schedule; - if (test_and_set_bit(HCI_UART_SENDING, &hu->tx_state)) { - set_bit(HCI_UART_TX_WAKEUP, &hu->tx_state); + set_bit(HCI_UART_TX_WAKEUP, &hu->tx_state); + if (test_and_set_bit(HCI_UART_SENDING, &hu->tx_state)) goto no_schedule; - } BT_DBG(""); @@ -174,10 +173,10 @@ kfree_skb(skb); } + clear_bit(HCI_UART_SENDING, &hu->tx_state); if (test_bit(HCI_UART_TX_WAKEUP, &hu->tx_state)) goto restart; - clear_bit(HCI_UART_SENDING, &hu->tx_state); wake_up_bit(&hu->tx_state, HCI_UART_SENDING); } @@ -538,6 +537,7 @@ clear_bit(HCI_UART_PROTO_READY, &hu->flags); percpu_up_write(&hu->proto_lock); + cancel_work_sync(&hu->init_ready); cancel_work_sync(&hu->write_work); if (hdev) { @@ -801,7 +801,8 @@ * We don't provide read/write/poll interface for user space. */ static ssize_t hci_uart_tty_read(struct tty_struct *tty, struct file *file, - unsigned char __user *buf, size_t nr) + unsigned char *buf, size_t nr, + void **cookie, unsigned long offset) { return 0; } @@ -818,29 +819,28 @@ return 0; } +static struct tty_ldisc_ops hci_uart_ldisc = { + .owner = THIS_MODULE, + .magic = TTY_LDISC_MAGIC, + .name = "n_hci", + .open = hci_uart_tty_open, + .close = hci_uart_tty_close, + .read = hci_uart_tty_read, + .write = hci_uart_tty_write, + .ioctl = hci_uart_tty_ioctl, + .compat_ioctl = hci_uart_tty_ioctl, + .poll = hci_uart_tty_poll, + .receive_buf = hci_uart_tty_receive, + .write_wakeup = hci_uart_tty_wakeup, +}; + static int __init hci_uart_init(void) { - static struct tty_ldisc_ops hci_uart_ldisc; int err; BT_INFO("HCI UART driver ver %s", VERSION); /* Register the tty discipline */ - - memset(&hci_uart_ldisc, 0, sizeof(hci_uart_ldisc)); - hci_uart_ldisc.magic = TTY_LDISC_MAGIC; - hci_uart_ldisc.name = "n_hci"; - hci_uart_ldisc.open = hci_uart_tty_open; - hci_uart_ldisc.close = hci_uart_tty_close; - hci_uart_ldisc.read = hci_uart_tty_read; - hci_uart_ldisc.write = hci_uart_tty_write; - hci_uart_ldisc.ioctl = hci_uart_tty_ioctl; - hci_uart_ldisc.compat_ioctl = hci_uart_tty_ioctl; - hci_uart_ldisc.poll = hci_uart_tty_poll; - hci_uart_ldisc.receive_buf = hci_uart_tty_receive; - hci_uart_ldisc.write_wakeup = hci_uart_tty_wakeup; - hci_uart_ldisc.owner = THIS_MODULE; - err = tty_register_ldisc(N_HCI, &hci_uart_ldisc); if (err) { BT_ERR("HCI line discipline registration failed. (%d)", err); --- linux-azure-5.8-5.8.0.orig/drivers/bluetooth/hci_qca.c +++ linux-azure-5.8-5.8.0/drivers/bluetooth/hci_qca.c @@ -46,7 +46,7 @@ #define HCI_MAX_IBS_SIZE 10 #define IBS_WAKE_RETRANS_TIMEOUT_MS 100 -#define IBS_BTSOC_TX_IDLE_TIMEOUT_MS 40 +#define IBS_BTSOC_TX_IDLE_TIMEOUT_MS 200 #define IBS_HOST_TX_IDLE_TIMEOUT_MS 2000 #define CMD_TRANS_TIMEOUT_MS 100 #define MEMDUMP_TIMEOUT_MS 8000 @@ -72,7 +72,8 @@ QCA_DROP_VENDOR_EVENT, QCA_SUSPENDING, QCA_MEMDUMP_COLLECTION, - QCA_HW_ERROR_EVENT + QCA_HW_ERROR_EVENT, + QCA_SSR_TRIGGERED }; enum qca_capabilities { @@ -862,6 +863,13 @@ BT_DBG("hu %p qca enq skb %p tx_ibs_state %d", hu, skb, qca->tx_ibs_state); + if (test_bit(QCA_SSR_TRIGGERED, &qca->flags)) { + /* As SSR is in progress, ignore the packets */ + bt_dev_dbg(hu->hdev, "SSR is in progress"); + kfree_skb(skb); + return 0; + } + /* Prepend skb with frame type */ memcpy(skb_push(skb, 1), &hci_skb_pkt_type(skb), 1); @@ -983,8 +991,11 @@ while ((skb = skb_dequeue(&qca->rx_memdump_q))) { mutex_lock(&qca->hci_memdump_lock); - /* Skip processing the received packets if timeout detected. */ - if (qca->memdump_state == QCA_MEMDUMP_TIMEOUT) { + /* Skip processing the received packets if timeout detected + * or memdump collection completed. + */ + if (qca->memdump_state == QCA_MEMDUMP_TIMEOUT || + qca->memdump_state == QCA_MEMDUMP_COLLECTED) { mutex_unlock(&qca->hci_memdump_lock); return; } @@ -1019,7 +1030,9 @@ dump_size = __le32_to_cpu(dump->dump_size); if (!(dump_size)) { bt_dev_err(hu->hdev, "Rx invalid memdump size"); + kfree(qca_memdump); kfree_skb(skb); + qca->qca_memdump = NULL; mutex_unlock(&qca->hci_memdump_lock); return; } @@ -1128,6 +1141,7 @@ struct hci_uart *hu = hci_get_drvdata(hdev); struct qca_data *qca = hu->priv; + set_bit(QCA_SSR_TRIGGERED, &qca->flags); skb_queue_tail(&qca->rx_memdump_q, skb); queue_work(qca->workqueue, &qca->ctrl_memdump_evt); @@ -1485,9 +1499,8 @@ { struct hci_uart *hu = hci_get_drvdata(hdev); struct qca_data *qca = hu->priv; - struct qca_memdump_data *qca_memdump = qca->qca_memdump; - char *memdump_buf = NULL; + set_bit(QCA_SSR_TRIGGERED, &qca->flags); set_bit(QCA_HW_ERROR_EVENT, &qca->flags); bt_dev_info(hdev, "mem_dump_status: %d", qca->memdump_state); @@ -1509,19 +1522,23 @@ qca_wait_for_dump_collection(hdev); } + mutex_lock(&qca->hci_memdump_lock); if (qca->memdump_state != QCA_MEMDUMP_COLLECTED) { bt_dev_err(hu->hdev, "clearing allocated memory due to memdump timeout"); - mutex_lock(&qca->hci_memdump_lock); - if (qca_memdump) - memdump_buf = qca_memdump->memdump_buf_head; - vfree(memdump_buf); - kfree(qca_memdump); - qca->qca_memdump = NULL; + if (qca->qca_memdump) { + vfree(qca->qca_memdump->memdump_buf_head); + kfree(qca->qca_memdump); + qca->qca_memdump = NULL; + } qca->memdump_state = QCA_MEMDUMP_TIMEOUT; cancel_delayed_work(&qca->ctrl_memdump_timeout); - skb_queue_purge(&qca->rx_memdump_q); - mutex_unlock(&qca->hci_memdump_lock); + } + mutex_unlock(&qca->hci_memdump_lock); + + if (qca->memdump_state == QCA_MEMDUMP_TIMEOUT || + qca->memdump_state == QCA_MEMDUMP_COLLECTED) { cancel_work_sync(&qca->ctrl_memdump_evt); + skb_queue_purge(&qca->rx_memdump_q); } clear_bit(QCA_HW_ERROR_EVENT, &qca->flags); @@ -1532,10 +1549,30 @@ struct hci_uart *hu = hci_get_drvdata(hdev); struct qca_data *qca = hu->priv; - if (qca->memdump_state == QCA_MEMDUMP_IDLE) + set_bit(QCA_SSR_TRIGGERED, &qca->flags); + if (qca->memdump_state == QCA_MEMDUMP_IDLE) { + set_bit(QCA_MEMDUMP_COLLECTION, &qca->flags); qca_send_crashbuffer(hu); - else - bt_dev_info(hdev, "Dump collection is in process"); + qca_wait_for_dump_collection(hdev); + } else if (qca->memdump_state == QCA_MEMDUMP_COLLECTING) { + /* Let us wait here until memory dump collected or + * memory dump timer expired. + */ + bt_dev_info(hdev, "waiting for dump to complete"); + qca_wait_for_dump_collection(hdev); + } + + mutex_lock(&qca->hci_memdump_lock); + if (qca->memdump_state != QCA_MEMDUMP_COLLECTED) { + qca->memdump_state = QCA_MEMDUMP_TIMEOUT; + if (!test_bit(QCA_HW_ERROR_EVENT, &qca->flags)) { + /* Inject hw error event to reset the device + * and driver. + */ + hci_reset_dev(hu->hdev); + } + } + mutex_unlock(&qca->hci_memdump_lock); } static int qca_wcn3990_init(struct hci_uart *hu) @@ -1641,11 +1678,15 @@ bt_dev_info(hdev, "setting up %s", qca_is_wcn399x(soc_type) ? "wcn399x" : "ROME/QCA6390"); + qca->memdump_state = QCA_MEMDUMP_IDLE; + retry: ret = qca_power_on(hdev); if (ret) return ret; + clear_bit(QCA_SSR_TRIGGERED, &qca->flags); + if (qca_is_wcn399x(soc_type)) { set_bit(HCI_QUIRK_USE_BDADDR_PROPERTY, &hdev->quirks); @@ -1788,9 +1829,6 @@ qca_flush(hu); spin_unlock_irqrestore(&qca->hci_ibs_lock, flags); - hu->hdev->hw_error = NULL; - hu->hdev->cmd_timeout = NULL; - /* Non-serdev device usually is powered by external power * and don't need additional action in driver for power down */ @@ -1812,6 +1850,9 @@ struct qca_data *qca = hu->priv; enum qca_btsoc_type soc_type = qca_soc_type(hu); + hu->hdev->hw_error = NULL; + hu->hdev->cmd_timeout = NULL; + /* Stop sending shutdown command if soc crashes. */ if (soc_type != QCA_ROME && qca->memdump_state == QCA_MEMDUMP_IDLE) { @@ -1819,7 +1860,6 @@ usleep_range(8000, 10000); } - qca->memdump_state = QCA_MEMDUMP_IDLE; qca_power_shutdown(hu); return 0; } @@ -1962,17 +2002,17 @@ } qcadev->susclk = devm_clk_get_optional(&serdev->dev, NULL); - if (!qcadev->susclk) { + if (IS_ERR(qcadev->susclk)) { dev_warn(&serdev->dev, "failed to acquire clk\n"); - } else { - err = clk_set_rate(qcadev->susclk, SUSCLK_RATE_32KHZ); - if (err) - return err; - - err = clk_prepare_enable(qcadev->susclk); - if (err) - return err; + return PTR_ERR(qcadev->susclk); } + err = clk_set_rate(qcadev->susclk, SUSCLK_RATE_32KHZ); + if (err) + return err; + + err = clk_prepare_enable(qcadev->susclk); + if (err) + return err; err = hci_uart_register_device(&qcadev->serdev_hu, &qca_proto); if (err) { @@ -2083,8 +2123,6 @@ qca->tx_ibs_state = HCI_IBS_TX_ASLEEP; qca->ibs_sent_slps++; - - qca_wq_serial_tx_clock_vote_off(&qca->ws_tx_vote_off); break; case HCI_IBS_TX_ASLEEP: @@ -2112,8 +2150,10 @@ qca->rx_ibs_state == HCI_IBS_RX_ASLEEP, msecs_to_jiffies(IBS_BTSOC_TX_IDLE_TIMEOUT_MS)); - if (ret > 0) + if (ret > 0) { + qca_wq_serial_tx_clock_vote_off(&qca->ws_tx_vote_off); return 0; + } if (ret == 0) ret = -ETIMEDOUT; --- linux-azure-5.8-5.8.0.orig/drivers/bluetooth/hci_serdev.c +++ linux-azure-5.8-5.8.0/drivers/bluetooth/hci_serdev.c @@ -83,9 +83,9 @@ hci_uart_tx_complete(hu, hci_skb_pkt_type(skb)); kfree_skb(skb); } - } while (test_bit(HCI_UART_TX_WAKEUP, &hu->tx_state)); - clear_bit(HCI_UART_SENDING, &hu->tx_state); + clear_bit(HCI_UART_SENDING, &hu->tx_state); + } while (test_bit(HCI_UART_TX_WAKEUP, &hu->tx_state)); } /* ------- Interface to HCI layer ------ */ @@ -355,7 +355,10 @@ struct hci_dev *hdev = hu->hdev; clear_bit(HCI_UART_PROTO_READY, &hu->flags); - hci_unregister_dev(hdev); + + cancel_work_sync(&hu->init_ready); + if (test_bit(HCI_UART_REGISTERED, &hu->flags)) + hci_unregister_dev(hdev); hci_free_dev(hdev); cancel_work_sync(&hu->write_work); --- linux-azure-5.8-5.8.0.orig/drivers/bus/fsl-mc/fsl-mc-allocator.c +++ linux-azure-5.8-5.8.0/drivers/bus/fsl-mc/fsl-mc-allocator.c @@ -292,8 +292,10 @@ goto error; mc_adev = resource->data; - if (!mc_adev) + if (!mc_adev) { + error = -EINVAL; goto error; + } mc_adev->consumer_link = device_link_add(&mc_dev->dev, &mc_adev->dev, --- linux-azure-5.8-5.8.0.orig/drivers/bus/fsl-mc/mc-io.c +++ linux-azure-5.8-5.8.0/drivers/bus/fsl-mc/mc-io.c @@ -129,7 +129,12 @@ */ void fsl_destroy_mc_io(struct fsl_mc_io *mc_io) { - struct fsl_mc_device *dpmcp_dev = mc_io->dpmcp_dev; + struct fsl_mc_device *dpmcp_dev; + + if (!mc_io) + return; + + dpmcp_dev = mc_io->dpmcp_dev; if (dpmcp_dev) fsl_mc_io_unset_dpmcp(mc_io); --- linux-azure-5.8-5.8.0.orig/drivers/bus/mhi/core/Makefile +++ linux-azure-5.8-5.8.0/drivers/bus/mhi/core/Makefile @@ -1,3 +1,3 @@ -obj-$(CONFIG_MHI_BUS) := mhi.o +obj-$(CONFIG_MHI_BUS) += mhi.o mhi-y := init.o main.o pm.o boot.o --- linux-azure-5.8-5.8.0.orig/drivers/bus/mhi/core/init.c +++ linux-azure-5.8-5.8.0/drivers/bus/mhi/core/init.c @@ -566,7 +566,7 @@ { struct mhi_event *mhi_event; struct mhi_event_config *event_cfg; - struct device *dev = &mhi_cntrl->mhi_dev->dev; + struct device *dev = mhi_cntrl->cntrl_dev; int i, num; num = config->num_events; @@ -651,7 +651,7 @@ struct mhi_controller_config *config) { struct mhi_channel_config *ch_cfg; - struct device *dev = &mhi_cntrl->mhi_dev->dev; + struct device *dev = mhi_cntrl->cntrl_dev; int i; u32 chan; @@ -1214,10 +1214,8 @@ mutex_unlock(&mhi_chan->mutex); } - read_lock_bh(&mhi_cntrl->pm_lock); while (mhi_dev->dev_wake) mhi_device_put(mhi_dev); - read_unlock_bh(&mhi_cntrl->pm_lock); return 0; } --- linux-azure-5.8-5.8.0.orig/drivers/bus/mhi/core/pm.c +++ linux-azure-5.8-5.8.0/drivers/bus/mhi/core/pm.c @@ -686,7 +686,8 @@ return -EIO; /* Return busy if there are any pending resources */ - if (atomic_read(&mhi_cntrl->dev_wake)) + if (atomic_read(&mhi_cntrl->dev_wake) || + atomic_read(&mhi_cntrl->pending_pkts)) return -EBUSY; /* Take MHI out of M2 state */ @@ -712,7 +713,8 @@ write_lock_irq(&mhi_cntrl->pm_lock); - if (atomic_read(&mhi_cntrl->dev_wake)) { + if (atomic_read(&mhi_cntrl->dev_wake) || + atomic_read(&mhi_cntrl->pending_pkts)) { write_unlock_irq(&mhi_cntrl->pm_lock); return -EBUSY; } --- linux-azure-5.8-5.8.0.orig/drivers/bus/mips_cdmm.c +++ linux-azure-5.8-5.8.0/drivers/bus/mips_cdmm.c @@ -544,10 +544,8 @@ dev_set_name(&dev->dev, "cdmm%u-%u", cpu, id); ++id; ret = device_register(&dev->dev); - if (ret) { + if (ret) put_device(&dev->dev); - kfree(dev); - } } } --- linux-azure-5.8-5.8.0.orig/drivers/bus/ti-sysc.c +++ linux-azure-5.8-5.8.0/drivers/bus/ti-sysc.c @@ -227,6 +227,9 @@ u32 sysc_mask, syss_done, rstval; int syss_offset, error = 0; + if (ddata->cap->regbits->srst_shift < 0) + return 0; + syss_offset = ddata->offsets[SYSC_SYSSTATUS]; sysc_mask = BIT(ddata->cap->regbits->srst_shift); @@ -970,9 +973,15 @@ return error; } } - error = sysc_wait_softreset(ddata); - if (error) - dev_warn(ddata->dev, "OCP softreset timed out\n"); + /* + * Some modules like i2c and hdq1w have unusable reset status unless + * the module reset quirk is enabled. Skip status check on enable. + */ + if (!(ddata->cfg.quirks & SYSC_MODULE_QUIRK_ENA_RESETDONE)) { + error = sysc_wait_softreset(ddata); + if (error) + dev_warn(ddata->dev, "OCP softreset timed out\n"); + } if (ddata->cfg.quirks & SYSC_QUIRK_OPT_CLKS_IN_RESET) sysc_disable_opt_clocks(ddata); @@ -1373,17 +1382,17 @@ SYSC_QUIRK("hdmi", 0, 0, 0x10, -ENODEV, 0x50030200, 0xffffffff, SYSC_QUIRK_OPT_CLKS_NEEDED), SYSC_QUIRK("hdq1w", 0, 0, 0x14, 0x18, 0x00000006, 0xffffffff, - SYSC_MODULE_QUIRK_HDQ1W), + SYSC_MODULE_QUIRK_HDQ1W | SYSC_MODULE_QUIRK_ENA_RESETDONE), SYSC_QUIRK("hdq1w", 0, 0, 0x14, 0x18, 0x0000000a, 0xffffffff, - SYSC_MODULE_QUIRK_HDQ1W), + SYSC_MODULE_QUIRK_HDQ1W | SYSC_MODULE_QUIRK_ENA_RESETDONE), SYSC_QUIRK("i2c", 0, 0, 0x20, 0x10, 0x00000036, 0x000000ff, - SYSC_MODULE_QUIRK_I2C), + SYSC_MODULE_QUIRK_I2C | SYSC_MODULE_QUIRK_ENA_RESETDONE), SYSC_QUIRK("i2c", 0, 0, 0x20, 0x10, 0x0000003c, 0x000000ff, - SYSC_MODULE_QUIRK_I2C), + SYSC_MODULE_QUIRK_I2C | SYSC_MODULE_QUIRK_ENA_RESETDONE), SYSC_QUIRK("i2c", 0, 0, 0x20, 0x10, 0x00000040, 0x000000ff, - SYSC_MODULE_QUIRK_I2C), + SYSC_MODULE_QUIRK_I2C | SYSC_MODULE_QUIRK_ENA_RESETDONE), SYSC_QUIRK("i2c", 0, 0, 0x10, 0x90, 0x5040000a, 0xfffff0f0, - SYSC_MODULE_QUIRK_I2C), + SYSC_MODULE_QUIRK_I2C | SYSC_MODULE_QUIRK_ENA_RESETDONE), SYSC_QUIRK("gpu", 0x50000000, 0x14, -ENODEV, -ENODEV, 0x00010201, 0xffffffff, 0), SYSC_QUIRK("gpu", 0x50000000, 0xfe00, 0xfe10, -ENODEV, 0x40000000 , 0xffffffff, SYSC_MODULE_QUIRK_SGX), @@ -1395,6 +1404,10 @@ SYSC_QUIRK_SWSUP_SIDLE | SYSC_QUIRK_SWSUP_MSTANDBY), SYSC_QUIRK("tptc", 0, 0, -ENODEV, -ENODEV, 0x40007c00, 0xffffffff, SYSC_QUIRK_SWSUP_SIDLE | SYSC_QUIRK_SWSUP_MSTANDBY), + SYSC_QUIRK("usb_host_hs", 0, 0, 0x10, 0x14, 0x50700100, 0xffffffff, + SYSC_QUIRK_SWSUP_SIDLE | SYSC_QUIRK_SWSUP_MSTANDBY), + SYSC_QUIRK("usb_host_hs", 0, 0, 0x10, -ENODEV, 0x50700101, 0xffffffff, + SYSC_QUIRK_SWSUP_SIDLE | SYSC_QUIRK_SWSUP_MSTANDBY), SYSC_QUIRK("usb_otg_hs", 0, 0x400, 0x404, 0x408, 0x00000050, 0xffffffff, SYSC_QUIRK_SWSUP_SIDLE | SYSC_QUIRK_SWSUP_MSTANDBY), SYSC_QUIRK("usb_otg_hs", 0, 0, 0x10, -ENODEV, 0x4ea2080d, 0xffffffff, @@ -1473,8 +1486,6 @@ SYSC_QUIRK("tpcc", 0, 0, -ENODEV, -ENODEV, 0x40014c00, 0xffffffff, 0), SYSC_QUIRK("usbhstll", 0, 0, 0x10, 0x14, 0x00000004, 0xffffffff, 0), SYSC_QUIRK("usbhstll", 0, 0, 0x10, 0x14, 0x00000008, 0xffffffff, 0), - SYSC_QUIRK("usb_host_hs", 0, 0, 0x10, 0x14, 0x50700100, 0xffffffff, 0), - SYSC_QUIRK("usb_host_hs", 0, 0, 0x10, -ENODEV, 0x50700101, 0xffffffff, 0), SYSC_QUIRK("venc", 0x58003000, 0, -ENODEV, -ENODEV, 0x00000002, 0xffffffff, 0), SYSC_QUIRK("vfpe", 0, 0, 0x104, -ENODEV, 0x4d001200, 0xffffffff, 0), #endif @@ -2878,7 +2889,7 @@ if ((ddata->cfg.quirks & SYSC_QUIRK_NO_RESET_ON_INIT) && (ddata->cfg.quirks & SYSC_QUIRK_NO_IDLE)) - return -EBUSY; + return -ENXIO; return 0; } --- linux-azure-5.8-5.8.0.orig/drivers/catapult/Kconfig +++ linux-azure-5.8-5.8.0/drivers/catapult/Kconfig @@ -0,0 +1,11 @@ +config CATAPULT_PCI + tristate "Catapult FPGA PCI Driver" + depends on PCI + help + Select this option to enable PCI driver for PCI-based + Field-Programmable Gate Array (FPGA) solutions which + implement the Catapult FPGA interface. This driver + provides interfaces for userspace applications to configure, + open and access the Catapult-based accelerators on the FPGA. + + To compile this as a module, choose M here. --- linux-azure-5.8-5.8.0.orig/drivers/catapult/Makefile +++ linux-azure-5.8-5.8.0/drivers/catapult/Makefile @@ -0,0 +1,27 @@ +# SPDX-License-Identifier: GPL-2.0 +# +# Makefile for the Catapult FPGA driver +# +obj-m += catapult.o +catapult-y := catapult-attributes.o \ + catapult-device.o \ + catapult-drv.o \ + catapult-ioctl.o \ + catapult-register.o + +ifeq "$(LIBMODULES)" "" + LIBMODULES=/lib/modules/$(shell uname -r) +endif + +ifeq "$(M)" "" + M=$(shell pwd) +endif + +ccflags-y +=-Wdeclaration-after-statement + +all: + make -C $(LIBMODULES)/build M=$(M) modules + +clean: + make -C $(LIBMODULES)/build M=$(M) clean + rm -f *.o.ur-safe --- linux-azure-5.8-5.8.0.orig/drivers/catapult/catapult-attributes.c +++ linux-azure-5.8-5.8.0/drivers/catapult/catapult-attributes.c @@ -0,0 +1,216 @@ +// SPDX-License-Identifier: GPL-2.0 +/* + * Copyright (C) 2019 Microsoft, Inc. + * + * Authors: + * Jesse Benson + */ + +#include "catapult-drv.h" +#include "catapult-shell.h" + +/* structures and callback functions for formatting an attribute */ + +struct catapult_attribute_handler { + struct device_attribute attr; + int (*get_value)(struct catapult_device *idev, + struct catapult_attribute_handler *handler, + void *value_buffer); + const char *format_string; +}; + +static ssize_t catapult_show_attribute_uint32(struct device *dev, + struct device_attribute *attr, + char *buf) +{ + struct catapult_device *idev = to_catapult_dev(dev); + struct catapult_attribute_handler *handler = NULL; + uint32_t data = 0; + int err = 0; + + handler = container_of(attr, struct catapult_attribute_handler, attr); + err = handler->get_value(idev, handler, &data); + if (err) + return err; + + return sprintf(buf, handler->format_string, data); +} + +static ssize_t catapult_show_attribute_uint64(struct device *dev, + struct device_attribute *attr, + char *buf) +{ + struct catapult_device *idev = to_catapult_dev(dev); + struct catapult_attribute_handler *handler = NULL; + uint64_t data = 0; + int err = 0; + + handler = container_of(attr, struct catapult_attribute_handler, attr); + err = handler->get_value(idev, handler, &data); + if (err) + return err; + + return sprintf(buf, handler->format_string, data); +} + +static ssize_t catapult_show_attribute_string(struct device *dev, + struct device_attribute *attr, + char *buf) +{ + struct catapult_device *idev = to_catapult_dev(dev); + struct catapult_attribute_handler *handler = NULL; + char *data = NULL; + int err = 0; + + handler = container_of(attr, struct catapult_attribute_handler, attr); + err = handler->get_value(idev, handler, &data); + if (err) + return err; + + return sprintf(buf, handler->format_string, data); +} + +/* + * Structures and handlers for converting fields in the device extension + * into read-only attributes. + */ + +struct catapult_attribute_field_handler { + struct catapult_attribute_handler base; + size_t field_offset; +}; + +static int catapult_get_field_uint32(struct catapult_device *idev, + struct catapult_attribute_handler *handler, + void *buffer) +{ + struct catapult_attribute_field_handler *h = + (struct catapult_attribute_field_handler *)handler; + uint32_t *value = (uint32_t *)buffer; + uint32_t *data = (uint32_t *)(((uintptr_t)idev) + h->field_offset); + *value = *data; + return 0; +} + +static int catapult_get_field_uint64(struct catapult_device *idev, + struct catapult_attribute_handler *handler, + void *buffer) +{ + struct catapult_attribute_field_handler *h = + (struct catapult_attribute_field_handler *)handler; + uint64_t *value = (uint64_t *)buffer; + uint64_t *data = (uint64_t *)(((uintptr_t)idev) + h->field_offset); + *value = *data; + return 0; +} + +static int catapult_get_field_string(struct catapult_device *idev, + struct catapult_attribute_handler *handler, + void *buffer) +{ + struct catapult_attribute_field_handler* h = + (struct catapult_attribute_field_handler *)handler; + char **value = (char **)buffer; + char **data = (char **)(((uintptr_t)idev) + h->field_offset); + *value = *data; + return 0; +} + +/* + * Structures and callbacks for attributes that read (or write) to + * shell registers directly. + */ + +struct catapult_attribute_register_handler { + struct catapult_attribute_handler base; + int interp_address; + int app_address; + uint32_t mask; + int right_shift; +}; + +static int +catapult_get_attribute_register(struct catapult_device *idev, + struct catapult_attribute_handler *handler, + void *buffer) +{ + struct catapult_attribute_register_handler *h = + (struct catapult_attribute_register_handler *)handler; + uint32_t *value = (uint32_t *)buffer; + uint32_t data = 0; + + data = catapult_low_level_read(idev->registers, + h->interp_address, + h->app_address); + + if (h->mask != 0) + data &= h->mask; + + data >>= h->right_shift; + + *value = data; + return 0; +} + +#define DECLARE_CATATTR(_name, _attr_type) static struct catapult_attribute_##_attr_type##_handler _name##_attr_handler + +#define CATDEV_ATTR_RO(_name, _type, _format, _get) \ +{ \ + .attr = __ATTR(_name, S_IRUGO, catapult_show_attribute_##_type, NULL), \ + .format_string = _format, \ + .get_value = _get, \ +} + +#define CATDEV_ATTR_FIELD_RO(_name, _type, _format, _field_name) \ + DECLARE_CATATTR(_name, field) = \ + { \ + .base = CATDEV_ATTR_RO(_name, _type, _format, catapult_get_field_##_type ), \ + .field_offset = offsetof(struct catapult_device, _field_name), \ + } + +#define CATDEV_ATTR_REGISTER_RO(_name, _format, _interp_addr, _app_addr, _mask, _shift) \ + DECLARE_CATATTR(_name, register) = \ + { \ + .base = CATDEV_ATTR_RO(_name, uint32, _format, catapult_get_attribute_register ), \ + .interp_address = _interp_addr, \ + .app_address = _app_addr, \ + .mask = _mask, \ + .right_shift = _shift, \ + } + +/* Bespoke attribute handler functions and attributes */ + +CATDEV_ATTR_FIELD_RO(chip_id, uint64, "%lld\n", chip_id ); +CATDEV_ATTR_FIELD_RO(endpoint_number, uint32, "%d\n", endpoint_number ); +CATDEV_ATTR_FIELD_RO(function_number, uint32, "%d\n", function_number ); +CATDEV_ATTR_FIELD_RO(function_type, string, "%s\n", function_type_name ); + +CATDEV_ATTR_REGISTER_RO(board_id, "%#08x\n", INTER_ADDR_GENERAL_PURPOSE_REG, GP_REGISTER_INDEX_BOARD_ID, 0, 0); +CATDEV_ATTR_REGISTER_RO(board_revision, "%#08x\n", INTER_ADDR_GENERAL_PURPOSE_REG, GP_REGISTER_INDEX_BOARD_REVISION, 0, 0); +CATDEV_ATTR_REGISTER_RO(shell_version, "%#08x\n", INTER_ADDR_GENERAL_PURPOSE_REG, GP_REGISTER_INDEX_SHELL_RELEASE_VERSION, 0, 0); +CATDEV_ATTR_REGISTER_RO(shell_id, "%#08x\n", INTER_ADDR_GENERAL_PURPOSE_REG, GP_REGISTER_INDEX_SHELL_ID, 0, 0); +CATDEV_ATTR_REGISTER_RO(role_version, "%#08x\n", INTER_ADDR_GENERAL_PURPOSE_REG, GP_REGISTER_INDEX_ROLE_VERSION, 0, 0); +CATDEV_ATTR_REGISTER_RO(role_id, "%#08x\n", INTER_ADDR_GENERAL_PURPOSE_REG, GP_REGISTER_INDEX_ROLE_ID, 0, 0); + +CATDEV_ATTR_REGISTER_RO(temperature, "%d C\n", INTER_ADDR_GENERAL_PURPOSE_REG, GP_REGISTER_INDEX_TEMPERATURE, 0x0000ff00, 8); + +#define INCLUDE_ATTRIBUTE(_name) &_name##_attr_handler.base.attr.attr + +static struct attribute *device_attrs[] = { + INCLUDE_ATTRIBUTE(shell_version), + INCLUDE_ATTRIBUTE(shell_id), + INCLUDE_ATTRIBUTE(role_version), + INCLUDE_ATTRIBUTE(role_id), + INCLUDE_ATTRIBUTE(board_id), + INCLUDE_ATTRIBUTE(board_revision), + INCLUDE_ATTRIBUTE(chip_id), + INCLUDE_ATTRIBUTE(endpoint_number), + INCLUDE_ATTRIBUTE(function_number), + INCLUDE_ATTRIBUTE(function_type), + INCLUDE_ATTRIBUTE(temperature), + NULL, +}; + +const struct attribute_group device_group = { + .attrs = device_attrs, +}; --- linux-azure-5.8-5.8.0.orig/drivers/catapult/catapult-device.c +++ linux-azure-5.8-5.8.0/drivers/catapult/catapult-device.c @@ -0,0 +1,408 @@ +// SPDX-License-Identifier: GPL-2.0 +/* + * device.c - device management routines + * + * Copyright (C) 2019 Microsoft, Inc. + * + * Authors: + * Jesse Benson + */ + +#include + +#include "catapult-device.h" +#include "catapult-drv.h" +#include "catapult-shell.h" + +/* Function type GUID to enum mapping table */ +struct catapult_function_type { + const guid_t *function_type_guid; + enum fpga_function_type function_type_enum; +}; + +static const struct catapult_function_type function_type_table[] = { + { &CATAPULT_GUID_LEGACY_FUNCTION, FPGA_FUNCTION_TYPE_LEGACY }, + { &CATAPULT_GUID_ROLE_FUNCTION, FPGA_FUNCTION_TYPE_ROLE }, + { &CATAPULT_GUID_MANAGEMENT_FUNCTION, FPGA_FUNCTION_TYPE_MANAGEMENT }, +}; + +static int catapult_read_dfh_register(struct catapult_device *idev, + uint32_t offset, + uint64_t *value) +{ + const uintptr_t base = (uintptr_t) idev->registers; + const size_t bar_length = idev->registers_cb; + + if (value == NULL) + return -EINVAL; + if (offset >= bar_length) + return -EINVAL; + if (offset % sizeof(uint64_t) != 0) + return -EINVAL; + + *value = catapult_register_read64((uint64_t *)(base + offset)); + return 0; +} + +static int catapult_write_dfh_register(struct catapult_device *idev, + uint32_t offset, + uint64_t value) +{ + const uintptr_t base = (uintptr_t) idev->registers; + const size_t bar_length = idev->registers_cb; + + if (offset >= bar_length) + return -EINVAL; + if (offset % sizeof(uint64_t) != 0) + return -EINVAL; + + catapult_register_write64((uint64_t *)(base + offset), value); + return 0; +} + +/** + * Cycle through the list of DFH (Device Feature Headers) to locate the feature + * specified in the function parameters. Returns offset from the BAR base + * address where the feature header can be found. + * + * @idev: A handle to the driver device file. + * @feature_guid: The feature GUID to find in the DFH. + */ +static uint32_t catapult_get_dfh_offset(struct catapult_device *idev, + const guid_t *feature_guid) +{ + union catapult_dfh_header dfh_header = { 0 }; + uint32_t offset = 0; + guid_t read_guid = { 0 }; + + /* + * Check to see if this image supports the DFH. If reading this + * register doesn't have 0x04 for it's afu_type, it doesn't support + * the DFH. + */ + if (idev->avoid_hip1_access == false) + catapult_read_dfh_register(idev, offset, + &dfh_header.as_ulonglong); + + while (dfh_header.afu_type > DFH_TYPE_NOT_SUPPORTED && + dfh_header.afu_type < DFH_TYPE_MAX && !dfh_header.afu_eol) { + /* Get the first feature header */ + offset += (uint32_t) dfh_header.afu_offset; + + catapult_read_dfh_register(idev, + offset, + &dfh_header.as_ulonglong); + catapult_read_dfh_register(idev, + offset + DFH_FEATURE_GUID_OFFSET_LOWER, + (uint64_t *) &(read_guid.b[0])); + catapult_read_dfh_register(idev, + offset + DFH_FEATURE_GUID_OFFSET_HIGHER, + (uint64_t *) &(read_guid.b[8])); + + /* Check to see if this is the feature we're interested in */ + if (guid_equal(&read_guid, feature_guid)) + return offset; + } + + return 0; +} + +/** + * Read the function type GUID from the DFH (Device Function Headers). + * + * @idev: A handle to the driver device file. + */ +int catapult_read_function_type(struct catapult_device *idev) +{ + union catapult_dfh_header dfh_header = { 0 }; + guid_t function_type_guid = { 0 }; + uint32_t i = 0; + int function_type_known = false; + + idev->function_type = FPGA_FUNCTION_TYPE_UNKNOWN; + + /* + * Check to see if this image supports the DFH. If reading this register + * doesn't have, 0x04 for it's afu_type, it doesn't support the DFH. + */ + if (idev->avoid_hip1_access == false) { + catapult_read_dfh_register(idev, 0, &dfh_header.as_ulonglong); + dev_info(idev->dev, "%s: reading dfh register returned %#llx\n", + __func__, dfh_header.as_ulonglong); + } + + if (dfh_header.afu_type > DFH_TYPE_NOT_SUPPORTED && + dfh_header.afu_type < DFH_TYPE_MAX) { + uint64_t tmp[2] = { 0 }; + + dev_info(idev->dev, "%s: dfh header type %x\n", + __func__, dfh_header.afu_type); + + idev->dfh_supported = true; + idev->function_type = FPGA_FUNCTION_TYPE_LEGACY; + + /* Let's query the function type from the DFH */ + catapult_read_dfh_register(idev, DFH_FEATURE_GUID_OFFSET_LOWER, + &tmp[0]); + catapult_read_dfh_register(idev, DFH_FEATURE_GUID_OFFSET_HIGHER, + &tmp[1]); + + dev_info(idev->dev, "%s: dfh function type guid %llx%016llx\n", + __func__, tmp[0], tmp[1]); + + memcpy(&function_type_guid, tmp, sizeof(guid_t)); + + for (i = 0; i < FPGA_FUNCTION_TYPE_MAX; i++) { + if (guid_equal(function_type_table[i].function_type_guid, &function_type_guid)) { + uint64_t *gtmp = (uint64_t*)function_type_table[i].function_type_guid; + dev_info(idev->dev, + "%s: dfh function type guid matches type %d (%016llx%016llx)\n", + __func__, + i, + gtmp[0], + gtmp[1]); + idev->function_type = function_type_table[i].function_type_enum; + break; + } + } + } else { + dev_info(idev->dev, + "%s: not a DFH function - function_type is legacy\n", + __func__); + idev->function_type = FPGA_FUNCTION_TYPE_LEGACY; + idev->dfh_supported = false; + } + + switch (idev->function_type) { + case FPGA_FUNCTION_TYPE_LEGACY: + idev->function_type_name = "legacy"; + function_type_known = true; + break; + + case FPGA_FUNCTION_TYPE_ROLE: + idev->function_type_name = "role"; + function_type_known = true; + break; + + case FPGA_FUNCTION_TYPE_MANAGEMENT: + idev->function_type_name = "management"; + function_type_known = true; + break; + + default: + idev->function_type_name = "unknown"; + break; + } + + if (function_type_known) { + dev_info(idev->dev, "%s: function_type_name set to %s\n", + __func__, idev->function_type_name); + } else { + dev_err(idev->dev, + "%s: function_type %d is unknown. Setting function_type_name to %s\n", + __func__, + idev->function_type, + idev->function_type_name); + } + + return 0; +} + +/** + * Ensure interrupts are enabled for the Catapult Role function. + * + * @idev: A handle to the driver device file. + */ +int catapult_enable_role_function(struct catapult_device *idev) +{ + uint32_t shell_ctrl_offset = 0; + union catapult_dma_control_register dma_ctrl_reg = { 0 }; + union catapult_role_control_register role_ctrl_reg = { 0 }; + + dev_info(idev->dev, "%s: switching to role function (if supported)\n", + __func__); + + if (!idev->dfh_supported) { + dev_info(idev->dev, + "%s: device does not support DFH - no action\n", + __func__); + return 0; + } + + /* Get the interrupt feature header offset */ + idev->interrupt_feature_offset = + catapult_get_dfh_offset(idev, &GUID_FPGA_INTERRUPT_FEATURE); + dev_info(idev->dev, "%s: interrupt_feature_offset = %#llx\n", + __func__, (uint64_t) idev->interrupt_feature_offset); + + /* Get the shell control feature header offset */ + shell_ctrl_offset = + catapult_get_dfh_offset(idev, &GUID_FPGA_SHELL_CONTROL_FEATURE); + if (shell_ctrl_offset == 0) { + /* This doesn't support the shell control feature */ + dev_info(idev->dev, "%s: shell control feature not supported\n", + __func__); + return 0; + } + + if (idev->function_type != FPGA_FUNCTION_TYPE_MANAGEMENT) { + dev_info(idev->dev, + "%s: function is type role or legacy, so cannot switch control\n", + __func__); + return 0; + } + + /* + * This is a management function. We can assume there will be a role + * function and we want to enable the role function. + */ + dev_info(idev->dev, + "%s: found management function - switching control to role\n", + __func__); + + /* + * Now let's assign the DMA engine to the Role function. + * The dma function select bit is a toggle. We must first + * check the previous value to see if we should set it. + */ + catapult_read_dfh_register(idev, + shell_ctrl_offset + DFH_FEATURE_DMA_CONTROL_REG_OFFSET, + &dma_ctrl_reg.as_ulonglong); + + if (dma_ctrl_reg.dma_function_select != DMA_FUNCTION_ROLE) { + dma_ctrl_reg.dma_function_select = DMA_FUNCTION_ROLE; + catapult_write_dfh_register(idev, + shell_ctrl_offset + DFH_FEATURE_DMA_CONTROL_REG_OFFSET, + dma_ctrl_reg.as_ulonglong); + } else { + dev_info(idev->dev, "%s: role was already selected\n", + __func__); + } + + /* + * Set the isolate role bit last. The role isolation bit is + * only settable and cannot be unset. + * + * We want to write back what's currently in the role_interrupt + * mask. If the mask is set to 1, that means that the role + * cannot generate interrupts and we want to flip the bit by + * writing to it. If it's set to 0, we want to keep it the same + * value since the role is generating interrupts. + */ + catapult_read_dfh_register(idev, + shell_ctrl_offset + DFH_FEATURE_ROLE_CONTROL_REG_OFFSET, + &role_ctrl_reg.as_ulonglong); + role_ctrl_reg.isolate_role = ROLE_ISOLATED; + catapult_write_dfh_register(idev, + shell_ctrl_offset + DFH_FEATURE_ROLE_CONTROL_REG_OFFSET, + role_ctrl_reg.as_ulonglong); + + /* + * We want to do a sanity check on the registers to ensure they + * are in the proper state. + */ + catapult_read_dfh_register(idev, + shell_ctrl_offset + DFH_FEATURE_ROLE_CONTROL_REG_OFFSET, + &role_ctrl_reg.as_ulonglong); + catapult_read_dfh_register(idev, + shell_ctrl_offset + DFH_FEATURE_DMA_CONTROL_REG_OFFSET, + &dma_ctrl_reg.as_ulonglong); + + if ((role_ctrl_reg.isolate_role != ROLE_ISOLATED) || + (role_ctrl_reg.role_interrupt_mask != ROLE_INTERRUPT_ENABLED) || + (dma_ctrl_reg.dma_function_select != DMA_FUNCTION_ROLE)) { + dev_err(idev->dev, + "%s: failed to isolate role or enable interrupt (%#x %#x %#x): %d\n", + __func__, + role_ctrl_reg.isolate_role, + role_ctrl_reg.role_interrupt_mask, + dma_ctrl_reg.dma_function_select, + -EPERM); + + return -EPERM; + } + + dev_info(idev->dev, "%s: control switched to role function\n", + __func__); + + return 0; +} + +/** + * Handles the Catapult DMA interrupt by signalling completion + * to the user-mode code. + * + * @irq: The interrupt request number. + * @dev_id: A handle to the driver device file. + */ +irqreturn_t catapult_interrupt_handler(int irq, void *dev_id) +{ + struct catapult_device *idev = dev_id; + uintptr_t bar0_registers = 0; + uintptr_t offset = 0; + uint32_t i = 0; + uint32_t read_val = 0; + union catapult_interrupt_status_register int_status_reg = { 0 }; + struct completion *event_obj = NULL; + + if (idev == NULL) + return IRQ_NONE; + + dev_dbg(idev->dev, "%s: enter\n", __func__); + + /* + * Is interrupt signaling enabled? If so, then signal the event and give + * the waiting thread a big priority boost so it can quickly respond to + * the interrupt. + * + * If the shell supports it, read the Interrupt Feature's Interrupt + * Status register to determine the type of interrupt that fired. + */ + if (idev->interrupt_feature_offset != 0) + catapult_read_dfh_register(idev, idev->interrupt_feature_offset + DFH_FEATURE_INTERRUPT_STATUS_REG_OFFSET, &int_status_reg.as_ulonglong); + + /* + * If this is a legacy shell (no Interrupt Feature in the DFH) or the + * Interrupt Status indicated a Slot DMA interrupt, handle it here. + */ + if (idev->interrupt_feature_offset == 0 || int_status_reg.slot_dma_interrupt) { + bar0_registers = (uintptr_t) idev->registers; + if (bar0_registers != 0) { + offset = catapult_register_offset(INTER_ADDR_INTERRUPT, 256); + read_val = catapult_register_read32((uint32_t *)(bar0_registers + offset)); + + if (read_val == 0xffffffff) { + dev_err(idev->dev, + "%s: interrupt status register is reading 0xffffffff - dropping interrupt\n", + __func__); + } else { + /* Look at bottom 2 bits to determine how many buffers the interrupt is for, can be 0 to 3 inclusive */ + uint32_t num_buffers = read_val & 3; + + for (i = 1; i <= num_buffers; i++) { + uint32_t which_buffer = (read_val >> (8 * i)) & 0xff; + + if (which_buffer >= idev->number_of_slots) { + dev_err(idev->dev, + "%s: interrupt reporting completion on invalid slot# (%d) - dropping interrupt\n", + __func__, + which_buffer); + continue; + } + + event_obj = &(idev->event_obj[which_buffer]); + + /* Verbose logging - this has significant effect on performance and disk usage */ + dev_dbg(idev->dev, + "%s: interrupt slot %d (%p) - signalling interrupt\n", + __func__, + which_buffer, + event_obj); + complete(event_obj); + } + } + } + } + + return IRQ_HANDLED; +} --- linux-azure-5.8-5.8.0.orig/drivers/catapult/catapult-device.h +++ linux-azure-5.8-5.8.0/drivers/catapult/catapult-device.h @@ -0,0 +1,23 @@ +// SPDX-License-Identifier: GPL-2.0 +/* + * catapult-device.h - device management routines + * + * Copyright (C) 2019 Microsoft, Inc. + * + * Authors: + * Jesse Benson + */ + +#ifndef __CATAPULT_DEVICE_H +#define __CATAPULT_DEVICE_H + +#include + +struct catapult_device; + +irqreturn_t catapult_interrupt_handler(int irq, void *dev_id); + +int catapult_read_function_type(struct catapult_device *idev); +int catapult_enable_role_function(struct catapult_device *idev); + +#endif /* __CATAPULT_DEVICE_H */ --- linux-azure-5.8-5.8.0.orig/drivers/catapult/catapult-drv.c +++ linux-azure-5.8-5.8.0/drivers/catapult/catapult-drv.c @@ -0,0 +1,860 @@ +// SPDX-License-Identifier: GPL-2.0 +/* + * catapult-drv.c - catapult driver for PCI 2.3 devices + * + * Copyright (C) 2019 Microsoft, Inc. + * + * Authors: + * Jesse Benson + */ + +#include +#include + +#include "catapult-device.h" +#include "catapult-drv.h" +#include "catapult-ioctl.h" +#include "catapult-shell.h" + +static dev_t catapult_dev = { 0 }; +static int catapult_major = 0; +static struct cdev *catapult_cdev = NULL; +static struct class *catapult_class = NULL; + +/* Catapult module parameters */ +static uint32_t dma_slot_count = SLOT_COUNT; +static uint32_t dma_slot_bytes = BYTES_PER_SLOT; + +DEFINE_IDR(catapult_idr); +DEFINE_MUTEX(minor_lock); + +extern const struct attribute_group device_group; +static const struct attribute_group *device_groups[] = { + &device_group, + NULL, +}; + +/* Convert a device pointer to a catapult device pointer */ +struct catapult_device *to_catapult_dev(struct device *dev) +{ + return (struct catapult_device *) dev_get_drvdata(dev); +} + +static char *catapult_devnode(struct device *dev, umode_t *mode) +{ + if (mode) + *mode = 0666; + + return NULL; +} + +/* Setup the PCI interrupt request handler for the catapult device */ +static int catapult_request_irq(struct catapult_device *idev) +{ + int err = 0; + int irq = 0; + + dev_info(idev->dev, "%s: requesting IRQ for device\n", __func__); + + err = pci_alloc_irq_vectors(idev->pdev, 1, 1, PCI_IRQ_MSI); + if (err < 0) { + dev_err(idev->dev, "%s: error requesting irq vectors: %d\n", + __func__, err); + return err; + } else if (err == 0) { + dev_err(idev->dev, "%s: failed to allocate irq vectors\n", + __func__); + return -ENODEV; + } + + irq = pci_irq_vector(idev->pdev, 0); + + err = request_threaded_irq(irq, NULL, catapult_interrupt_handler, + IRQF_ONESHOT, "catapult", idev); + if (err == 0) { + dev_info(idev->dev, "%s: registered irq line - %d\n", + __func__, irq); + idev->irq = irq; + } else { + dev_err(idev->dev, "%s: error requesting threaded irq: %d\n", + __func__, err); + } + + return err; +} + +static int catapult_slot_map_init(struct catapult_device *idev) +{ + int size = BITS_TO_LONGS(idev->number_of_slots) * sizeof(unsigned long); + unsigned long *bitmap = NULL; + pid_t *pid_map = NULL; + + bitmap = kmalloc(size, GFP_KERNEL); + if (!bitmap) + return -ENOMEM; + + idev->slot_map = bitmap; + bitmap_zero(idev->slot_map, idev->number_of_slots); + + /* Process id map where the pids which acquire the slot are held */ + pid_map = kzalloc(sizeof(pid_t) * idev->number_of_slots, GFP_KERNEL); + if (!pid_map) + return -ENOMEM; + + idev->slot_map_pids = pid_map; + + /* Single mutex lock for concurrent access of the bitmap */ + mutex_init(&idev->lock); + + return 0; +} + +static void catapult_slot_map_remove(struct catapult_device *idev) +{ + mutex_destroy(&idev->lock); + + if (idev->slot_map_pids) { + kfree(idev->slot_map_pids); + idev->slot_map_pids = NULL; + } + + if (idev->slot_map) { + kfree(idev->slot_map); + idev->slot_map = NULL; + } +} + +static void catapult_slot_map_release(struct catapult_device *idev, pid_t pid) +{ + uint32_t slot_count = idev->number_of_slots; + int slot = 0; + + if (idev->slot_map == NULL) { + WARN_ON(idev->slot_map == NULL); + return; + } + + mutex_lock(&idev->lock); + while (true) { + slot = find_next_bit(idev->slot_map, slot_count, slot); + if (slot < 0 || slot >= slot_count) + break; + + if (idev->slot_map_pids[slot] == pid) { + dev_err(idev->dev, + "%s: process id %d did not release slot %d before close. Force releasing the slot\n", + __func__, pid, slot); + clear_bit(slot, idev->slot_map); + } else { + slot++; + } + } + mutex_unlock(&idev->lock); +} + +static void catapult_dma_remove(struct catapult_device *idev) +{ + uint32_t i = 0; + + for (i = 0; i < idev->number_of_slots; i++) { + if (idev->dma_input_kernel_addr[i]) { + dma_free_coherent(&idev->pdev->dev, + idev->bytes_per_slot, + idev->dma_input_kernel_addr[i], + idev->dma_input_dma_addr[i]); + idev->dma_input_kernel_addr[i] = NULL; + } + if (idev->dma_output_kernel_addr[i]) { + dma_free_coherent(&idev->pdev->dev, + idev->bytes_per_slot, + idev->dma_output_kernel_addr[i], + idev->dma_output_dma_addr[i]); + idev->dma_output_kernel_addr[i] = NULL; + } + } + + if (idev->dma_control_kernel_addr) { + dma_free_coherent(&idev->pdev->dev, + idev->dma_control_len, + idev->dma_control_kernel_addr, + idev->dma_control_dma_addr); + idev->dma_control_kernel_addr = NULL; + } + if (idev->dma_result_kernel_addr) { + dma_free_coherent(&idev->pdev->dev, + idev->dma_result_len, + idev->dma_result_kernel_addr, + idev->dma_result_dma_addr); + idev->dma_result_kernel_addr = NULL; + } + + catapult_slot_map_remove(idev); +} + +static int catapult_dma_init(struct catapult_device *idev) +{ + int err = 0; + uint32_t i = 0; + uintptr_t registers = (uintptr_t) idev->registers; + uint32_t read_val = 0; + + idev->number_of_slots = dma_slot_count; + idev->bytes_per_slot = dma_slot_bytes; + + idev->dma_input_len = idev->number_of_slots * idev->bytes_per_slot; + idev->dma_output_len = idev->number_of_slots * idev->bytes_per_slot; + idev->dma_control_len = idev->number_of_slots * FPGA_CONTROL_SIZE; + idev->dma_result_len = idev->number_of_slots * FPGA_RESULT_SIZE; + + for (i = 0; i < idev->number_of_slots; i++) { + init_completion(&(idev->event_obj[i])); + } + + for (i = 0; i < idev->number_of_slots; i++) { + idev->dma_input_kernel_addr[i] = + dma_alloc_coherent(&idev->pdev->dev, + idev->bytes_per_slot, + &idev->dma_input_dma_addr[i], + GFP_KERNEL); + if (idev->dma_input_kernel_addr[i] == NULL) { + err = -EFAULT; + goto exit; + } + + idev->dma_output_kernel_addr[i] = + dma_alloc_coherent(&idev->pdev->dev, + idev->bytes_per_slot, + &idev->dma_output_dma_addr[i], + GFP_KERNEL); + if (idev->dma_output_kernel_addr[i] == NULL) { + err = -EFAULT; + goto exit; + } + } + + idev->dma_control_kernel_addr = + dma_alloc_coherent(&idev->pdev->dev, + idev->dma_control_len, + &idev->dma_control_dma_addr, + GFP_KERNEL); + if (idev->dma_control_kernel_addr == NULL) { + err = -EFAULT; + goto exit; + } + + idev->dma_result_kernel_addr = + dma_alloc_coherent(&idev->pdev->dev, + idev->dma_result_len, + &idev->dma_result_dma_addr, + GFP_KERNEL); + if (idev->dma_result_kernel_addr == NULL) { + err = -EFAULT; + goto exit; + } + + err = catapult_slot_map_init(idev); + if (err != 0) { + dev_err(&idev->pdev->dev, + "%s: error initializing the slot map - %d\n", + __func__, err); + goto exit; + } + + /* Write slot-specific buffer addresses to FPGA registers */ + for (i = 0; i < idev->number_of_slots; i++) { + catapult_register_write64((uint64_t *)(registers + DMA_SLOT_INPUT_BASE_ADDRESS + i * 0x20), idev->dma_input_dma_addr[i]); + catapult_register_write64((uint64_t *)(registers + DMA_SLOT_OUTPUT_BASE_ADDRESS + i * 0x20), idev->dma_output_dma_addr[i]); + catapult_register_write64((uint64_t *)(registers + DMA_SLOT_CONTROL_RESULT_BASE_ADDRESS + i * 0x20), idev->dma_result_dma_addr + i * FPGA_RESULT_SIZE); + } + + /* Flush any remaining unserviced interrupt from last time */ + do { + read_val = catapult_low_level_read(idev->registers, + INTER_ADDR_INTERRUPT, 256); + } while (read_val & 3); + + /* Set max payload size for FPGA TX engine back to default 128 bytes */ + catapult_low_level_write(idev->registers, + INTER_ADDR_HACK_OVERRIDE_OUT_DATA_SIZE, 2, 0); + + /* Set the number of interrupts to coalesce */ + catapult_low_level_write(idev->registers, + INTER_ADDR_INTERRUPT, 257, 1); + +exit: + if (err != 0) + catapult_dma_remove(idev); + + return err; +} + +/* Enable the PCI device for the corresponding catapult device */ +static int catapult_enable_pci(struct catapult_device *idev) +{ + int err = 0; + + dev_info(idev->dev, "%s: entry\n", __func__); + + err = pcim_enable_device(idev->pdev); + if (err) { + dev_err(idev->dev, "%s: pci_enable_device failed: %d\n", + __func__, err); + return err; + } + + if (idev->pdev->irq && !pci_intx_mask_supported(idev->pdev)) { + err = -ENODEV; + dev_err(&idev->pdev->dev, + "%s: device does not support INTX mask: %d\n", + __func__, err); + return err; + } + + err = catapult_request_irq(idev); + if (err != 0) { + dev_err(&idev->pdev->dev, + "%s: error requesting interrupt handler - %d\n", + __func__, err); + return err; + } + + err = pcim_iomap_regions(idev->pdev, 0x1, "catapult"); + if (err != 0) { + dev_err(&idev->pdev->dev, + "%s: error requesting BAR 0 region - %d\n", + __func__, err); + return err; + } + + idev->registers_cb = pci_resource_len(idev->pdev, 0); + idev->registers_physical_address = pci_resource_start(idev->pdev, 0); + idev->registers = pcim_iomap_table(idev->pdev)[0]; + + err = catapult_dma_init(idev); + if (err != 0) { + dev_err(&idev->pdev->dev, + "%s: error initializing DMA state - %d\n", + __func__, err); + return err; + } + + dev_info(&idev->pdev->dev, "%s: exit\n", __func__); + return 0; +} + +static void catapult_get_endpoint_info(struct catapult_device *idev) +{ + union catapult_shell_identity_register shell_id = { 0 }; + + idev->chip_id = catapult_low_level_read(idev->registers, INTER_ADDR_GENERAL_PURPOSE_REG, GP_REGISTER_INDEX_CHIP_ID_HIGH); + idev->chip_id <<= 32; + idev->chip_id |= catapult_low_level_read(idev->registers, INTER_ADDR_GENERAL_PURPOSE_REG, GP_REGISTER_INDEX_CHIP_ID_LOW); + + idev->board_id = catapult_low_level_read(idev->registers, INTER_ADDR_GENERAL_PURPOSE_REG, GP_REGISTER_INDEX_BOARD_ID); + idev->board_revision = catapult_low_level_read(idev->registers, INTER_ADDR_GENERAL_PURPOSE_REG, GP_REGISTER_INDEX_BOARD_REVISION); + idev->shell_version = catapult_low_level_read(idev->registers, INTER_ADDR_GENERAL_PURPOSE_REG, GP_REGISTER_INDEX_SHELL_RELEASE_VERSION); + idev->shell_id = catapult_low_level_read(idev->registers, INTER_ADDR_GENERAL_PURPOSE_REG, GP_REGISTER_INDEX_SHELL_ID); + idev->role_version = catapult_low_level_read(idev->registers, INTER_ADDR_GENERAL_PURPOSE_REG, GP_REGISTER_INDEX_ROLE_VERSION); + idev->role_id = catapult_low_level_read(idev->registers, INTER_ADDR_GENERAL_PURPOSE_REG, GP_REGISTER_INDEX_ROLE_ID); + + shell_id.as_ulong = catapult_low_level_read(idev->registers, INTER_ADDR_GENERAL_PURPOSE_REG, GP_REGISTER_INDEX_SHELL_IDENTITY); + + idev->endpoint_number = shell_id.endpoint_number; + idev->function_number = (unsigned short) (idev->pdev->devfn & 0xffff); + + switch (idev->pdev->device) { + case CATAPULT_PCI_DEVICE_ID_LP_HIP1_MANAGEMENT: + case CATAPULT_PCI_DEVICE_ID_LP_HIP2_MANAGEMENT: + idev->function_type_name = "management"; + break; + + case CATAPULT_PCI_DEVICE_ID_LP_HIP1_ROLE: + case CATAPULT_PCI_DEVICE_ID_LP_HIP2_ROLE: + idev->function_type_name = "role"; + break; + + default: + idev->function_type_name = "unknown"; + break; + } + + dev_info(&idev->pdev->dev, + "%s: chip_id = %llu, board_id = %d, board_rev = %d, fn = %d\n", + __func__, idev->chip_id, idev->board_id, + idev->board_revision, idev->function_number); + + snprintf(idev->name, sizeof(idev->name), "%llu:%d:%d", + idev->chip_id, idev->endpoint_number, idev->function_number); +} + +static int catapult_get_minor(struct catapult_device *idev) +{ + int retval = -ENOMEM; + + mutex_lock(&minor_lock); + retval = idr_alloc(&catapult_idr, idev, 0, + CATAPULT_MAX_DEVICES, GFP_KERNEL); + if (retval >= 0) { + idev->minor = retval; + retval = 0; + } else if (retval == -ENOSPC) { + dev_err(idev->dev, "too many catapult devices\n"); + retval = -EINVAL; + } + mutex_unlock(&minor_lock); + return retval; +} + +static void catapult_free_minor(struct catapult_device *idev) +{ + mutex_lock(&minor_lock); + idr_remove(&catapult_idr, idev->minor); + mutex_unlock(&minor_lock); +} + +static void catapult_release_device(void *context) +{ + struct catapult_device *idev = context; + + if (idev->irq) + free_irq(idev->irq, idev); + pci_free_irq_vectors(idev->pdev); + catapult_free_minor(idev); + kvfree(idev); +} + +static int catapult_create_device(struct device *parent, + struct catapult_device **result) +{ + struct catapult_device *idev = NULL; + struct device *dev = NULL; + int err = 0; + + *result = NULL; + + idev = kzalloc(sizeof(*idev), GFP_KERNEL); + if (!idev) { + err = -ENOMEM; + dev_err(parent, "%s: error allocating catapult_device - %d\n", + __func__, err); + return err; + } + + err = catapult_get_minor(idev); + if (err != 0) + goto exit1; + + /* + * initialize the device. After this succeeds, all cleanup should + * be attached to the device as an action + */ + dev = device_create_with_groups(catapult_class, + parent, + MKDEV(MAJOR(catapult_dev), idev->minor), + idev, + device_groups, + "catapult%d", + idev->minor); + if (dev == NULL) { + err = -ENOMEM; + dev_err(parent, "%s: error registering chrdev - %d\n", + __func__, err); + goto exit2; + } + + dev_info(parent, "%s: dev = %p devinfo = %p (kobj = %p)\n", + __func__, dev, dev_get_drvdata(dev), &(dev->kobj)); + + /* add a cleanup action to the device to free the containing device */ + err = devm_add_action(dev, catapult_release_device, idev); + if (err != 0) { + dev_err(parent, + "%s: error adding release action to device = %d\n", + __func__, err); + goto exit3; + } + + idev->dev = dev; + *result = idev; + return 0; + +exit3: + device_destroy(catapult_class, MKDEV(MAJOR(catapult_dev), idev->minor)); + +exit2: + catapult_free_minor(idev); + +exit1: + kvfree(idev); + return err; +} + +/* + * Probe indicates that a PCI device with the matching device ID has been + * discovered. Create the catapult device, then enable the PCI interface + * examine the function and create the appropriate character device + */ +static int catapult_probe(struct pci_dev *pdev, const struct pci_device_id *id) +{ + struct catapult_device *idev = NULL; + int err = 0; + + dev_info(&pdev->dev, "%s: entry\n", __func__); + + /* + * Create the idev for the device. this allows tracking of other + * resources under devm. + */ + err = catapult_create_device(&pdev->dev, &idev); + if (err) { + dev_err(&pdev->dev, "%s: failing probe - %d\n", __func__, err); + return err; + } + + idev->pdev = pdev; + pci_set_drvdata(pdev, idev); + + err = catapult_enable_pci(idev); + if (err) { + dev_err(&pdev->dev, "%s: catapult_enable_pci failed: %d\n", + __func__, err); + goto error; + } + + /* Read the hardware information from the endpoint */ + catapult_get_endpoint_info(idev); + + err = catapult_read_function_type(idev); + if (err) { + dev_err(&pdev->dev, + "%s: catapult_read_function_type failed: %d\n", + __func__, err); + goto error; + } + + dev_info(&pdev->dev, "%s: catapult_read_function_type got type %x\n", + __func__, idev->function_type); + + err = catapult_enable_role_function(idev); + if (err) { + dev_err(&pdev->dev, + "%s: catapult_enable_role_function failed: %d\n", + __func__, err); + goto error; + } + + return 0; + +error: + device_destroy(catapult_class, MKDEV(MAJOR(catapult_dev), idev->minor)); + return err; +} + +static void catapult_remove(struct pci_dev *pdev) +{ + dev_t dev; + struct catapult_device *idev = pci_get_drvdata(pdev); + + if (idev != NULL) { + catapult_dma_remove(idev); + dev = MKDEV(MAJOR(catapult_dev), idev->minor); + device_destroy(catapult_class, dev); + } +} + +static int catapult_open(struct inode *inode, struct file *filep) +{ + struct catapult_device *idev = NULL; + struct catapult_file *ifile = NULL; + int err = 0; + + pr_info("%s: inode = %p, filep = %p\n", __func__, inode, filep); + pr_info(" device # = (%d,%d)\n", imajor(inode), iminor(inode)); + + mutex_lock(&minor_lock); + idev = idr_find(&catapult_idr, iminor(inode)); + mutex_unlock(&minor_lock); + + if (idev == NULL) + return -ENODEV; + + if (!try_module_get(THIS_MODULE)) + return -ENODEV; + + ifile = kzalloc(sizeof(*ifile), GFP_KERNEL); + if (ifile == NULL) { + err = -ENOMEM; + goto error_alloc_file; + } + + ifile->inode = inode; + ifile->file = filep; + ifile->idev = idev; + + filep->private_data = ifile; + + return 0; + +error_alloc_file: + module_put(THIS_MODULE); + + return err; +} + +static int catapult_release(struct inode *inode, struct file *filep) +{ + struct catapult_file *ifile = filep->private_data; + struct catapult_device *idev = NULL; + + if (ifile == NULL) { + pr_err("%s: ifile was null\n", __func__); + return 0; + } + + idev = ifile->idev; + catapult_slot_map_release(idev, task_tgid_nr(current)); + + filep->private_data = NULL; + + kfree(ifile); + + module_put(THIS_MODULE); + + return 0; +} + +static const struct vm_operations_struct catapult_vm_ops = { +#ifdef CONFIG_HAVE_IOREMAP_PROT + .access = generic_access_phys, +#endif +}; + +static int catapult_mmap_get_slot(struct catapult_device *idev, + unsigned long offset, + unsigned long size, + uint32_t *slot) +{ + int err = 0; + + *slot = offset / idev->bytes_per_slot; + + if (*slot >= idev->number_of_slots) + return -EINVAL; + if (size != idev->bytes_per_slot) + return -EINVAL; + + /* Verify the current process acquired the requested slot */ + err = mutex_lock_interruptible(&idev->lock); + if (err == 0) { + BUG_ON(idev->slot_map == NULL); + if (!test_bit(*slot, idev->slot_map) || + idev->slot_map_pids[*slot] != task_tgid_nr(current)) + err = -EACCES; + + mutex_unlock(&idev->lock); + } + + return err; +} + +static int catapult_mmap(struct file *filep, struct vm_area_struct *vma) +{ + struct catapult_file *ifile = filep->private_data; + struct catapult_device *idev = ifile->idev; + int err = 0; + unsigned long offset = vma->vm_pgoff << PAGE_SHIFT; + uint32_t slot = 0; + uint64_t physical_address = 0; + + dev_dbg(idev->dev, "%s: request to mmap offset %lu and size %lu\n", + __func__, offset, vma->vm_end - vma->vm_start); + + if (vma->vm_end < vma->vm_start) + return -EINVAL; + + if (offset == CATAPULT_FPGA_REGISTER_ADDRESS) { + /* memory map BAR registers as non-cached */ + physical_address = idev->registers_physical_address; + vma->vm_page_prot = pgprot_noncached(vma->vm_page_prot); + } else if (offset == CATAPULT_FPGA_DMA_RESULT_ADDRESS) { + /* memory map the DMA result registers */ + physical_address = virt_to_phys(idev->dma_result_kernel_addr); + } else if (offset == CATAPULT_FPGA_DMA_CONTROL_ADDRESS) { + /* memory map the DMA control registers */ + physical_address = virt_to_phys(idev->dma_control_kernel_addr); + } else if ((offset & CATAPULT_FPGA_DMA_BASE_ADDRESS_MASK) == CATAPULT_FPGA_DMA_INPUT_BASE_ADDRESS) { + /* memory map an input DMA slot */ + if ((err = catapult_mmap_get_slot(idev, offset & ~CATAPULT_FPGA_DMA_BASE_ADDRESS_MASK, vma->vm_end - vma->vm_start, &slot)) != 0) + return err; + physical_address = virt_to_phys(idev->dma_input_kernel_addr[slot]); + } else if ((offset & CATAPULT_FPGA_DMA_BASE_ADDRESS_MASK) == CATAPULT_FPGA_DMA_OUTPUT_BASE_ADDRESS) { + /* memory map an output DMA slot */ + if ((err = catapult_mmap_get_slot(idev, offset & ~CATAPULT_FPGA_DMA_BASE_ADDRESS_MASK, vma->vm_end - vma->vm_start, &slot)) != 0) + return err; + physical_address = virt_to_phys(idev->dma_output_kernel_addr[slot]); + } else { + dev_err(idev->dev, "%s: invalid address offset - %lu\n", __func__, offset); + return -EINVAL; + } + + vma->vm_private_data = ifile; + vma->vm_ops = &catapult_vm_ops; + + err = remap_pfn_range(vma, + vma->vm_start, + physical_address >> PAGE_SHIFT, + vma->vm_end - vma->vm_start, + vma->vm_page_prot); + + if (err != 0) + dev_err(idev->dev, "%s: remap_pfn_range failed - %d\n", + __func__, err); + + return err; +} + +static const struct pci_device_id catapult_pci_id[] = { + { PCI_DEVICE(CATAPULT_PCI_VENDOR_ID, CATAPULT_PCI_DEVICE_ID_LP_HIP1_MANAGEMENT) }, + { PCI_DEVICE(CATAPULT_PCI_VENDOR_ID, CATAPULT_PCI_DEVICE_ID_LP_HIP2_MANAGEMENT) }, + { PCI_DEVICE(CATAPULT_PCI_VENDOR_ID, CATAPULT_PCI_DEVICE_ID_LP_HIP1_ROLE) }, + { PCI_DEVICE(CATAPULT_PCI_VENDOR_ID, CATAPULT_PCI_DEVICE_ID_LP_HIP2_ROLE) }, + { 0, }, +}; + +static struct pci_driver catapult_driver = { + .name = "catapult", + .id_table = catapult_pci_id, + .probe = catapult_probe, + .remove = catapult_remove, +}; + +static const struct file_operations catapult_fileops = { + .owner = THIS_MODULE, + .open = catapult_open, + .release = catapult_release, + .read = NULL, + .write = NULL, + .unlocked_ioctl = catapult_ioctl, + .mmap = catapult_mmap, + .poll = NULL, + .fasync = NULL, + .llseek = noop_llseek, +}; + +static void catapult_cleanup_module(void) +{ + dev_t dev; + + pr_info("%s: unloading %s (%s) v%s\n", __func__, + VER_PRODUCTNAME_STR, VER_INTERNALNAME_STR, PRODUCT_NUMBER_STR); + + if (catapult_driver.driver.name != NULL) + pci_unregister_driver(&catapult_driver); + + if (catapult_class != NULL) { + class_destroy(catapult_class); + catapult_class = NULL; + } + + if (catapult_dev != 0) { + cdev_del(catapult_cdev); + catapult_cdev = NULL; + } + + if (catapult_major != 0) { + pr_info("%s: unregistering major # %d\n", + __func__, catapult_major); + dev = MKDEV(catapult_major, 0); + unregister_chrdev_region(dev, CATAPULT_MAX_DEVICES); + } +} + +static int __init catapult_init_module(void) +{ + struct cdev *cdev = NULL; + int err = 0; + + pr_err("%s: loading %s (%s) v%s\n", __func__, + VER_PRODUCTNAME_STR, VER_INTERNALNAME_STR, PRODUCT_NUMBER_STR); + + /* Verify module parameters */ + if (dma_slot_count > SLOT_COUNT) { + pr_err("%s: dma_slot_count (%d) cannot exceed %d\n", + __func__, dma_slot_count, SLOT_COUNT); + err = -EINVAL; + goto exit; + } + + /* Allocate a range of character device major/minor numbers */ + err = alloc_chrdev_region(&catapult_dev, 0, CATAPULT_MAX_DEVICES, + "catapult"); + if (err) { + pr_err("%s: error allocating catapult_dev - %d\n", + __func__, err); + goto exit; + } + + pr_info("%s: catapult_dev = (%d,%d)\n", __func__, + MAJOR(catapult_dev), MINOR(catapult_dev)); + catapult_major = MAJOR(catapult_dev); + + /* Allocate a character device with the right set of minor numbers */ + cdev = cdev_alloc(); + if (cdev == NULL) { + err = -ENOMEM; + goto exit; + } + + cdev->owner = THIS_MODULE; + cdev->ops = &catapult_fileops; + kobject_set_name(&cdev->kobj, "catapult"); + + err = cdev_add(cdev, catapult_dev, CATAPULT_MAX_DEVICES); + if (err) { + kobject_put(&cdev->kobj); + goto exit; + } + + catapult_cdev = cdev; + + /* + * Allocate the catapult class object, to create our + * /sys/class/catapult directory. + */ + catapult_class = class_create(THIS_MODULE, "catapult"); + if (catapult_class == NULL) { + pr_err("%s: error creating /sys/class/catapult", __func__); + err = -ENOMEM; + goto exit; + } + + catapult_class->devnode = catapult_devnode; + + /* Register this driver as a PCI driver so that we can get probes */ + err = pci_register_driver(&catapult_driver); + if (err) { + pr_err("%s: error registering driver - %d\n", __func__, err); + goto exit; + } + + pr_info("%s: success\n", __func__); + +exit: + if (err) + catapult_cleanup_module(); + + return err; +} + +module_init(catapult_init_module); +module_exit(catapult_cleanup_module); + +module_param(dma_slot_count, uint, S_IRUSR); +MODULE_PARM_DESC(dma_slot_count, "The number of DMA slots to allocate"); +module_param(dma_slot_bytes, uint, S_IRUSR); +MODULE_PARM_DESC(dma_slot_bytes, "The size in bytes of each DMA buffer"); + +MODULE_VERSION(PRODUCT_NUMBER_STR); +MODULE_LICENSE("GPL v2"); +MODULE_AUTHOR("Microsoft Corporation"); +MODULE_DESCRIPTION(VER_PRODUCTNAME_STR); --- linux-azure-5.8-5.8.0.orig/drivers/catapult/catapult-drv.h +++ linux-azure-5.8-5.8.0/drivers/catapult/catapult-drv.h @@ -0,0 +1,145 @@ +// SPDX-License-Identifier: GPL-2.0 +/* + * Copyright (C) 2019 Microsoft, Inc. + * + * Authors: + * Jesse Benson + */ + +#ifndef __CATAPULT_DRV_H +#define __CATAPULT_DRV_H + +#include + +#include +#include +#include +#include +#include +#include +#include + +#include +#include + +#include "catapult.h" +#include "catapult-register.h" + +#define CATAPULT_MAX_DEVICES (1u << MINORBITS) +#define SLOT_COUNT 0x40 +#define BYTES_PER_SLOT (1024 * 1024) + +#define VER_PRODUCTNAME_STR "Catapult FPGA driver" +#define VER_INTERNALNAME_STR "catapult.ko" +#define PRODUCT_NUMBER_STR "5.1.4.12" +#define PRODUCT_MAJOR_NUMBER 5 +#define PRODUCT_MINOR_NUMBER 1 +#define BUILD_MAJOR_NUMBER 4 +#define BUILD_MINOR_NUMBER 12 + +/* Data structures related to the FPGA Function Type */ + +/* Role Function GUID */ +/* 4067F10B-C65B-44A7-AD6E-60E489BF32C5 */ +static const guid_t CATAPULT_GUID_ROLE_FUNCTION = + GUID_INIT(0x4067F10B, 0xC65B, 0x44A7, + 0xAD, 0x6E, 0x60, 0xE4, 0x89, 0xBF, 0x32, 0xC5); + +/* Management Function GUID */ +/* DC32A288-935D-4BA7-99CF-B51FBED5CA7C */ +static const guid_t CATAPULT_GUID_MANAGEMENT_FUNCTION = + GUID_INIT(0xDC32A288, 0x935D, 0x4BA7, + 0x99, 0xCF, 0xB5, 0x1F, 0xBE, 0xD5, 0xCA, 0x7C); + +/* + * Management/Role Function GUID + * Used for single function HIPs in a multi-function aware shell + */ +/* 2F97325A-6A0B-4A0E-8286-C5376CFFF60E */ +static const guid_t CATAPULT_GUID_MANAGEMENT_ROLE_FUNCTION = + GUID_INIT(0x2F97325A, 0x6A0B, 0x4A0E, + 0x82, 0x86, 0xC5, 0x37, 0x6C, 0xFF, 0xF6, 0x0E); + +/* + * Legacy Function GUID + * The Function Type GUID won't be set for Legacy, single function images. + * To simplify the code, declare this as a GUID filled with zeros + */ +/* 00000000-0000-0000-0000-000000000000 */ +static const guid_t CATAPULT_GUID_LEGACY_FUNCTION = + GUID_INIT(0x00000000, 0x0000, 0x0000, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00); + +enum fpga_function_type { + FPGA_FUNCTION_TYPE_LEGACY = 0, + FPGA_FUNCTION_TYPE_ROLE = 1, + FPGA_FUNCTION_TYPE_MANAGEMENT = 2, + FPGA_FUNCTION_TYPE_MAX = 3, + FPGA_FUNCTION_TYPE_UNKNOWN = 0xFF, +}; + +struct catapult_device { + uint64_t chip_id; + uint32_t board_id; + uint32_t board_revision; + + volatile void __iomem *registers; + size_t registers_cb; + uint64_t registers_physical_address; + + char name[32]; + int minor; + + bool dfh_supported; + bool avoid_hip1_access; + + int endpoint_number; + int function_number; + enum fpga_function_type function_type; + const char *function_type_name; + + uint32_t shell_version; + uint32_t shell_id; + uint32_t role_id; + uint32_t role_version; + + /* Completion event to signal when an interrupt occurs (e.g. for DMA) */ + struct completion event_obj[SLOT_COUNT]; + struct mutex lock; + + uint32_t number_of_slots; + uint32_t bytes_per_slot; + + uint32_t dma_input_len; + void *dma_input_kernel_addr[SLOT_COUNT]; + dma_addr_t dma_input_dma_addr[SLOT_COUNT]; + uint32_t dma_output_len; + void *dma_output_kernel_addr[SLOT_COUNT]; + dma_addr_t dma_output_dma_addr[SLOT_COUNT]; + uint32_t dma_control_len; + void *dma_control_kernel_addr; + dma_addr_t dma_control_dma_addr; + uint32_t dma_result_len; + void *dma_result_kernel_addr; + dma_addr_t dma_result_dma_addr; + + uint32_t interrupt_feature_offset; + int irq; + + struct pci_dev *pdev; + struct device *dev; + + unsigned long *slot_map; + pid_t *slot_map_pids; +}; + +struct catapult_file { + struct inode *inode; + struct file *file; + struct catapult_device *idev; + uint32_t registered_interrupt; +}; + +struct catapult_device *to_catapult_dev(struct device *dev); + +#endif /* __CATAPULT_DRV_H */ --- linux-azure-5.8-5.8.0.orig/drivers/catapult/catapult-ioctl.c +++ linux-azure-5.8-5.8.0/drivers/catapult/catapult-ioctl.c @@ -0,0 +1,480 @@ +// SPDX-License-Identifier: GPL-2.0 +/* + * catapult-ioctl.c - I/O request processing + * + * Copyright (C) 2019 Microsoft, Inc. + * + * Authors: + * Jesse Benson + */ + +#include + +#include "catapult.h" +#include "catapult-drv.h" +#include "catapult-ioctl.h" + +/* Invalid/unsupported control code. */ +static long catapult_unsupported_ioctl(struct catapult_device *idev, + struct file *filep, + unsigned int cmd, + void __user *arg) +{ + dev_err(idev->dev, "%s: unknown I/O control code 0x%08x\n", __func__, cmd); + return -EINVAL; +} + +/* Get metadata about the Catapult registers. */ +static long catapult_get_register_info(struct catapult_device *idev, + struct file *filep, + unsigned int cmd, + void __user *arg) +{ + struct catapult_register_info reg_info = { + .region_count = 1, + .region_size = { idev->registers_cb, 0 }, + }; + + if (copy_to_user(arg, ®_info, sizeof(reg_info))) + return -EFAULT; + + return 0; +} + +/* Disable signaling to user-mode when interrupts occur. */ +static long catapult_interrupt_disable(struct catapult_device *idev, + struct file *filep, + unsigned int cmd, + void __user *arg) +{ + struct catapult_file *ifile = filep->private_data; + + ifile->registered_interrupt = 0; + + dev_info(idev->dev, "%s: interrupts disabled\n", __func__); + + return 0; +} + +/* Enable signaling to user-mode when interrupts occur. */ +static long catapult_interrupt_enable(struct catapult_device *idev, + struct file *filep, + unsigned int cmd, + void __user *arg) +{ + struct catapult_file *ifile = filep->private_data; + + ifile->registered_interrupt = 1; + + dev_info(idev->dev, "%s: interrupts enabled\n", __func__); + + return 0; +} + +/* Get pointers to allocated buffer. */ +static long catapult_get_buffer_pointers(struct catapult_device *idev, + struct file *filep, + unsigned int cmd, + void __user *arg) +{ + struct catapult_buffer_ptrs info = { + .input_size = idev->dma_input_len, + .input = NULL, /* user-mode has to mmap */ + .input_phys = virt_to_phys(idev->dma_input_kernel_addr[0]), + + .output_size = idev->dma_output_len, + .output = NULL, /* user-mode has to mmap */ + .output_phys = virt_to_phys(idev->dma_output_kernel_addr[0]), + + .result_size = idev->dma_result_len, + .result = NULL, /* user-mode has to mmap */ + .result_phys = virt_to_phys(idev->dma_result_kernel_addr), + + .control_size = idev->dma_control_len, + .control = NULL, /* user-mode has to mmap */ + .control_phys = virt_to_phys(idev->dma_control_kernel_addr), + }; + + if (copy_to_user(arg, &info, sizeof(info))) + return -EFAULT; + + return 0; +} + +/* Get the driver version. */ +static long catapult_get_driver_version(struct catapult_device *idev, + struct file *filep, + unsigned int cmd, + void __user *arg) +{ + struct catapult_driver_version info = { + .product_major_version = PRODUCT_MAJOR_NUMBER, + .product_minor_version = PRODUCT_MINOR_NUMBER, + .build_major_version = BUILD_MAJOR_NUMBER, + .build_minor_version = BUILD_MINOR_NUMBER, + }; + + if (copy_to_user(arg, &info, sizeof(info))) + return -EFAULT; + + return 0; +} + +/* Acquire a free DMA slot. */ +static long catapult_acquire_slot(struct catapult_device *idev, + struct file *filep, + unsigned int cmd, + void __user *arg) +{ + long status = 0; + struct catapult_slot_reservation reservation = { + .slot = 0, + .input_buffer = NULL, + .output_buffer = NULL, + .result_buffer = NULL, + .control_buffer = NULL, + }; + + status = mutex_lock_interruptible(&idev->lock); + if (status == 0) { + BUG_ON(idev->slot_map == NULL); + reservation.slot = + bitmap_find_next_zero_area(idev->slot_map, + idev->number_of_slots, + /*start:*/ 0, + /*nr:*/ 1, + /*align_mask:*/ 0); + if (reservation.slot >= 0 && + reservation.slot < idev->number_of_slots) { + set_bit(reservation.slot, idev->slot_map); + idev->slot_map_pids[reservation.slot] = + task_tgid_nr(current); + } else { + status = -ENOSPC; + } + mutex_unlock(&idev->lock); + } + + if (status != 0) { + dev_err(idev->dev, "%s: failed to acquire slot - %ld\n", + __func__, status); + return status; + } + + if (copy_to_user(arg, &reservation, sizeof(reservation))) + status = -EFAULT; + + return status; +} + +/* Release a previously acquired DMA slot. */ +static long catapult_release_slot(struct catapult_device *idev, + struct file *filep, + unsigned int cmd, + void __user *arg) +{ + struct catapult_slot_reservation input; + long status = 0; + + if (copy_from_user(&input, arg, sizeof(input))) + return -EFAULT; + + if (input.slot < 0 || input.slot >= idev->number_of_slots) + return -EINVAL; + + mutex_lock(&idev->lock); + BUG_ON(idev->slot_map == NULL); + if (test_bit(input.slot, idev->slot_map) && + idev->slot_map_pids[input.slot] == task_tgid_nr(current)) { + clear_bit(input.slot, idev->slot_map); + idev->slot_map_pids[input.slot] = 0; + } else { + status = -EACCES; + } + mutex_unlock(&idev->lock); + + return status; +} + +/* Acquire a range of DMA slots. */ +static long catapult_acquire_slot_range(struct catapult_device *idev, + struct file *filep, + unsigned int cmd, + void __user *arg) +{ + long status = 0; + uint32_t i = 0; + uint32_t start = 0; + uint32_t end = 0; + struct catapult_acquire_slot_range *info = NULL; + + info = kzalloc(sizeof(*info), GFP_KERNEL); + if (info == NULL) + return -ENOMEM; + + if (copy_from_user(info, arg, sizeof(*info))) { + status = -EFAULT; + goto exit; + } + + /* For now only contiguous ranges are supported */ + if (info->slot_range.range_type != CATAPULT_SLOT_RANGE_CONTIGUOUS) { + status = -EINVAL; + goto exit; + } + + start = info->slot_range.start; + end = info->slot_range.end; + + if (start >= idev->number_of_slots || end >= idev->number_of_slots || + start > end) { + status = -EINVAL; + goto exit; + } + + /* Acquire the DMA slots */ + status = mutex_lock_interruptible(&idev->lock); + if (status != 0) + goto exit; + + BUG_ON(idev->slot_map == NULL); + for (i = start; i <= end; i++) { + if (test_bit(i, idev->slot_map)) { + status = -EBUSY; + break; + } + } + + if (status == 0) { + for (i = start; i <= end; i++) { + set_bit(i, idev->slot_map); + idev->slot_map_pids[i] = task_tgid_nr(current); + } + } + mutex_unlock(&idev->lock); + + /* Fill starting from info->reservations[0] */ + for (i = start; i <= end; i++) { + info->reservations[i - start].slot = i; + info->reservations[i - start].input_buffer = NULL; + info->reservations[i - start].output_buffer = NULL; + info->reservations[i - start].result_buffer = NULL; + info->reservations[i - start].control_buffer = NULL; + } + + if (copy_to_user(arg, info, sizeof(*info))) + status = -EFAULT; + +exit: + if (info != NULL) + kvfree(info); + + return status; +} + +/* Release all DMA slots previously acquired by the requesting process. */ +static long catapult_release_slot_range(struct catapult_device *idev, + struct file *filep, + unsigned int cmd, + void __user *arg) +{ + long status = 0; + uint32_t i = 0; + + mutex_lock(&idev->lock); + for (i = 0; i < idev->number_of_slots; i++) { + BUG_ON(idev->slot_map == NULL); + if (test_bit(i, idev->slot_map) && + idev->slot_map_pids[i] == task_tgid_nr(current)) { + clear_bit(i, idev->slot_map); + } + } + mutex_unlock(&idev->lock); + + return status; +} + +/* Ensure the slot event is ready for use by user space code. */ +static long catapult_get_slot_event(struct catapult_device *idev, + struct file *filep, + unsigned int cmd, + void __user *arg) +{ + struct catapult_get_slot_event input; + + if (copy_from_user(&input, arg, sizeof(input))) + return -EFAULT; + + if (input.slot_index >= idev->number_of_slots) + return -EINVAL; + + return 0; +} + +/* Block until the slot event has completed. */ +static long catapult_wait_slot_event(struct catapult_device *idev, + struct file *filep, + unsigned int cmd, + void __user *arg) +{ + struct catapult_wait_slot_event input; + struct completion *completion = NULL; + unsigned long timeout = 0; + long status = 0; + + if (copy_from_user(&input, arg, sizeof(input))) + return -EFAULT; + + if (input.slot_index >= idev->number_of_slots) + return -EINVAL; + + completion = &(idev->event_obj[input.slot_index]); + dev_dbg(idev->dev, "%s: waiting on slot %u (%p)\n", + __func__, input.slot_index, completion); + + if (input.wait) { + if (input.timeout == 0) { /* Infinite timeout */ + /* Returns 0 for success, <0 for failure */ + status = wait_for_completion_interruptible(completion); + } else { + timeout = msecs_to_jiffies(input.timeout); + + /* Returns >0 for success, 0 for timeout, + * <0 for failure */ + status = wait_for_completion_interruptible_timeout( + completion, timeout); + + /* Convert status codes above to our return values + * (0 for success, <0 for failure). */ + if (status == 0) { + status = -ETIMEDOUT; + } else if (status < 0) { + /* Use error status as is */ + } else { + status = 0; + } + } + } else { + if (try_wait_for_completion(completion)) + status = 0; + else + status = -EWOULDBLOCK; + } + + dev_dbg(idev->dev, "%s: waiting for slot %u completed with %ld\n", + __func__, input.slot_index, status); + return status; +} + +/* Get slot configuration for the given catapult device. */ +static long catapult_get_slot_config(struct catapult_device *idev, + struct file *filep, + unsigned int cmd, + void __user *arg) +{ + struct catapult_slot_configuration cfg = { + .bytes_per_slot = idev->bytes_per_slot, + .number_of_slots = idev->number_of_slots, + }; + + if (copy_to_user(arg, &cfg, sizeof(cfg))) + return -EFAULT; + + return 0; +} + +/* Reset the slot event so it can be signaled again. */ +static long catapult_reset_slot_event(struct catapult_device *idev, + struct file *filep, + unsigned int cmd, + void __user *arg) +{ + struct completion *completion = NULL; + struct catapult_reset_slot_event input; + + if (copy_from_user(&input, arg, sizeof(input))) + return -EFAULT; + + if (input.slot_index >= idev->number_of_slots) + return -EINVAL; + + completion = &(idev->event_obj[input.slot_index]); + reinit_completion(completion); + + return 0; +} + +/* Complete the slot event to signal any waiters. */ +static long catapult_complete_slot_event(struct catapult_device *idev, + struct file *filep, + unsigned int cmd, + void __user *arg) +{ + struct completion *completion = NULL; + struct catapult_complete_slot_event input; + + if (copy_from_user(&input, arg, sizeof(input))) + return -EFAULT; + + if (input.slot_index >= idev->number_of_slots) + return -EINVAL; + + completion = &(idev->event_obj[input.slot_index]); + complete(completion); + + return 0; +} + +long catapult_ioctl(struct file *filep, unsigned int cmd, unsigned long arg) +{ + struct catapult_file *ifile = filep->private_data; + struct catapult_device *idev = ifile->idev; + void __user *uarg = (void __user *)arg; + + switch (cmd) { + case CATAPULT_IOCTL_GET_REGISTER_INFO: + return catapult_get_register_info(idev, filep, cmd, uarg); + + case CATAPULT_IOCTL_INTERRUPT_DISABLE: + return catapult_interrupt_disable(idev, filep, cmd, uarg); + + case CATAPULT_IOCTL_INTERRUPT_ENABLE: + return catapult_interrupt_enable(idev, filep, cmd, uarg); + + case CATAPULT_IOCTL_GET_BUFFER_POINTERS: + return catapult_get_buffer_pointers(idev, filep, cmd, uarg); + + case CATAPULT_IOCTL_GET_DRIVER_VERSION: + return catapult_get_driver_version(idev, filep, cmd, uarg); + + case CATAPULT_IOCTL_ACQUIRE_SLOT: + return catapult_acquire_slot(idev, filep, cmd, uarg); + + case CATAPULT_IOCTL_RELEASE_SLOT: + return catapult_release_slot(idev, filep, cmd, uarg); + + case CATAPULT_IOCTL_ACQUIRE_SLOT_RANGE: + return catapult_acquire_slot_range(idev, filep, cmd, uarg); + + case CATAPULT_IOCTL_RELEASE_SLOT_RANGE: + return catapult_release_slot_range(idev, filep, cmd, uarg); + + case CATAPULT_IOCTL_GET_SLOT_EVENT: + return catapult_get_slot_event(idev, filep, cmd, uarg); + + case CATAPULT_IOCTL_WAIT_SLOT_EVENT: + return catapult_wait_slot_event(idev, filep, cmd, uarg); + + case CATAPULT_IOCTL_RESET_SLOT_EVENT: + return catapult_reset_slot_event(idev, filep, cmd, uarg); + + case CATAPULT_IOCTL_GET_SLOT_CONFIG: + return catapult_get_slot_config(idev, filep, cmd, uarg); + + case CATAPULT_IOCTL_COMPLETE_SLOT_EVENT: + return catapult_complete_slot_event(idev, filep, cmd, uarg); + + default: + return catapult_unsupported_ioctl(idev, filep, cmd, uarg); + } +} --- linux-azure-5.8-5.8.0.orig/drivers/catapult/catapult-ioctl.h +++ linux-azure-5.8-5.8.0/drivers/catapult/catapult-ioctl.h @@ -0,0 +1,16 @@ +// SPDX-License-Identifier: GPL-2.0 +/* + * catapult-ioctl.h - I/O request processing + * + * Copyright (C) 2019 Microsoft, Inc. + * + * Authors: + * Jesse Benson + */ + +#ifndef __CATAPULT_IOCTL_H +#define __CATAPULT_IOCTL_H + +long catapult_ioctl(struct file *filep, unsigned int cmd, unsigned long arg); + +#endif /* __CATAPULT_IOCTL_H */ --- linux-azure-5.8-5.8.0.orig/drivers/catapult/catapult-register.c +++ linux-azure-5.8-5.8.0/drivers/catapult/catapult-register.c @@ -0,0 +1,193 @@ +// SPDX-License-Identifier: GPL-2.0 +/* + * Copyright (C) 2019 Microsoft, Inc. + * + * Authors: + * Jesse Benson + */ + +#include +#include +#include + +#include "catapult-register.h" +#include "catapult-shell.h" + +/** + * catapult_register_read32 - Read a 32-bit device register. + * @address: Address of the memory mapped register + * + * Read a 32-bit value from a device register. This routine uses a barrier + * intrinsic to prevent re-ordering across the call and forces reads and + * writes to memory to complete at the point of the invocation. + */ +uint32_t catapult_register_read32(volatile uint32_t *address) +{ + mb(); + return readl((volatile void __iomem *)address); +} + +/** + * catapult_register_write32 - Write a 32-bit device register. + * @address: Address of the memory mapped register + * @value: Value to write + * + * Write a 32-bit value to a device register. This routine uses a barrier + * intrinsic to prevent re-ordering across the call and forces reads and + * writes to memory to complete at the point of the invocation. + */ +void catapult_register_write32(volatile uint32_t *address, uint32_t value) +{ + writel(value, (volatile void __iomem *)address); + mb(); +} + +/** + * catapult_register_read64 - Read a 64-bit device register. + * @address: Address of the memory mapped register + * + * Read a 64-bit value from a device register. This routine uses a barrier + * intrinsic to prevent re-ordering across the call and forces reads and + * writes to memory to complete at the point of the invocation. + */ +uint64_t catapult_register_read64(volatile uint64_t *address) +{ + mb(); + return readq((volatile void __iomem *)address); +} + +/** + * catapult_register_write64 - Write a 64-bit device register. + * @address: Address of the memory mapped register + * @value: Value to write + * + * Write a 64-bit value to a device register. This routine uses a barrier + * intrinsic to prevent re-ordering across the call and forces reads and + * writes to memory to complete at the point of the invocation. + */ +void catapult_register_write64(volatile uint64_t *address, uint64_t value) +{ + writeq(value, (volatile void __iomem *)address); + mb(); +} + +static uint32_t catapult_low_level_read_legacy(volatile void __iomem *registers, + uint32_t interp_address, + uint32_t app_address) +{ + uintptr_t byte_address = catapult_register_offset(interp_address, app_address); + return catapult_register_read32((uint32_t *)(registers + byte_address)); +} + +static void catapult_low_level_write_legacy(volatile void __iomem *registers, + uint32_t interp_address, + uint32_t app_address, + uint32_t value) +{ + uintptr_t byte_address = catapult_register_offset(interp_address, app_address); + catapult_register_write32((uint32_t *)(registers + byte_address), value); +} + +static uint64_t catapult_low_level_read_64(volatile void __iomem *registers, + uint32_t interp_address, + uint32_t app_address) +{ + uintptr_t byte_address = catapult_register_offset(interp_address, app_address); + return catapult_register_read64((uint64_t *)(registers + byte_address)); +} + +static void catapult_low_level_write_64(volatile void __iomem *registers, + uint32_t interp_address, + uint32_t app_address, + uint64_t value) +{ + uintptr_t byte_address = catapult_register_offset(interp_address, app_address); + catapult_register_write64((uint64_t *)(registers + byte_address), value); +} + +uint32_t catapult_low_level_read(volatile void __iomem *registers, + uint32_t interp_address, + uint32_t app_address) +{ + uint32_t readData = 0; + + switch (interp_address & 0xf) { + case INTER_ADDR_FULL_STATUS_REG: + /* Instead of 64 addresses each 1 bit, now it is 1 address + * with 64 bits, unpack results in software */ + readData = (uint32_t) ((catapult_low_level_read_64(registers, INTER_ADDR_SOFT_REG, SOFT_REG_SLOT_DMA_BASE_ADDR + 62) >> app_address) & 1); + break; + + case INTER_ADDR_DONE_STATUS_REG: + readData = (uint32_t) ((catapult_low_level_read_64(registers, INTER_ADDR_SOFT_REG, SOFT_REG_SLOT_DMA_BASE_ADDR + 61) >> app_address) & 1); + break; + + case INTER_ADDR_PEND_STATUS_REG: + readData = (uint32_t) ((catapult_low_level_read_64(registers, INTER_ADDR_SOFT_REG, SOFT_REG_SLOT_DMA_BASE_ADDR + 60) >> app_address) & 1); + break; + + case INTER_ADDR_GENERAL_PURPOSE_REG: + readData = catapult_low_level_read_legacy(registers, interp_address, app_address); + break; + + case INTER_ADDR_ASMI_RSU: + readData = catapult_low_level_read_legacy(registers, interp_address, app_address); + break; + + case INTER_ADDR_HACK_OVERRIDE_OUT_DATA_SIZE: + if (app_address >= 2 && app_address <= 6) + readData = (uint32_t) catapult_low_level_read_64(registers, INTER_ADDR_SOFT_REG, SOFT_REG_SLOT_DMA_BASE_ADDR + 55 + (app_address - 2)); + else + readData = 0; + break; + + case INTER_ADDR_INTERRUPT: + if (app_address == 257) + readData = (uint32_t) catapult_low_level_read_64(registers, INTER_ADDR_SOFT_REG, SOFT_REG_SLOT_DMA_BASE_ADDR + 54); + else + readData = 0; + break; + + case INTER_ADDR_DMA_DESCRIPTORS_AND_RESERVED: + if (app_address <= 53) { + /* force legacy, even if we have soft reg capability, role may not have these registers */ + if (app_address == 4 || app_address == 5 || app_address == 6) + readData = catapult_low_level_read_legacy(registers, interp_address, app_address); + else /* 0-3, 7-53 mapping for the factory tester registers */ + readData = (uint32_t) catapult_low_level_read_64(registers, INTER_ADDR_SOFT_REG, SOFT_REG_SLOT_DMA_BASE_ADDR + app_address); + } else { + readData = 0; + } + break; + + default: + readData = 0; + break; + } + + return readData; +} + +void catapult_low_level_write(volatile void __iomem *registers, + uint32_t interp_address, + uint32_t app_address, + uint32_t value) +{ + uint64_t write_data = 0; + + switch (interp_address & 0xf) { + case INTER_ADDR_GENERAL_PURPOSE_REG: + catapult_low_level_write_legacy(registers, interp_address, app_address, value); + break; + + case INTER_ADDR_ASMI_RSU: + catapult_low_level_write_legacy(registers, interp_address, app_address, value); + break; + + default: + write_data = catapult_register_offset(interp_address, app_address); + write_data = (write_data << 32) | value; + catapult_low_level_write_64(registers, INTER_ADDR_SOFT_REG, SOFT_REG_SLOT_DMA_BASE_ADDR + 63, write_data); + break; + } +} --- linux-azure-5.8-5.8.0.orig/drivers/catapult/catapult-register.h +++ linux-azure-5.8-5.8.0/drivers/catapult/catapult-register.h @@ -0,0 +1,36 @@ +// SPDX-License-Identifier: GPL-2.0 +/* + * Copyright (C) 2019 Microsoft, Inc. + * + * Authors: + * Jesse Benson + */ + +#ifndef __CATAPULT_REGISTER_H +#define __CATAPULT_REGISTER_H + +#include +#include + +uint32_t catapult_register_read32(volatile uint32_t *address); +void catapult_register_write32(volatile uint32_t *address, uint32_t value); + +uint64_t catapult_register_read64(volatile uint64_t *address); +void catapult_register_write64(volatile uint64_t *address, uint64_t value); + +uint32_t catapult_low_level_read(volatile void __iomem *registers, + uint32_t interp_address, + uint32_t app_address); + +void catapult_low_level_write(volatile void __iomem *registers, + uint32_t interp_address, + uint32_t app_address, + uint32_t value); + +static inline uintptr_t catapult_register_offset(uint32_t interp_addr, + uint32_t register_number) +{ + return (register_number << 8) | (interp_addr << 4) | 4; +} + +#endif /* __CATAPULT_REGISTER_H */ --- linux-azure-5.8-5.8.0.orig/drivers/catapult/catapult-shell.h +++ linux-azure-5.8-5.8.0/drivers/catapult/catapult-shell.h @@ -0,0 +1,215 @@ +// SPDX-License-Identifier: GPL-2.0 +/* + * Copyright (C) 2019 Microsoft, Inc. + * + * Authors: + * Jesse Benson + */ + +#ifndef __CATAPULT_SHELL_H +#define __CATAPULT_SHELL_H + +#define CATAPULT_PCI_VENDOR_ID 0x1414 +#define CATAPULT_PCI_DEVICE_ID_LP_HIP1_MANAGEMENT 0xB204 +#define CATAPULT_PCI_DEVICE_ID_LP_HIP2_MANAGEMENT 0xB205 +#define CATAPULT_PCI_DEVICE_ID_LP_HIP1_ROLE 0xB284 +#define CATAPULT_PCI_DEVICE_ID_LP_HIP2_ROLE 0xB285 + +#define INTER_ADDR_FULL_STATUS_REG 0 /* repurposed */ +#define INTER_ADDR_DONE_STATUS_REG 1 /* repurposed */ +#define INTER_ADDR_PEND_STATUS_REG 2 /* repurposed */ +#define INTER_ADDR_GENERAL_PURPOSE_REG 3 +#define INTER_ADDR_PROBE_IN_FPGA_BUFFER_0 4 +#define INTER_ADDR_PROBE_IN_FPGA_BUFFER_1 5 +#define INTER_ADDR_PROBE_OUT_FPGA_BUFFER_0 6 +#define INTER_ADDR_PROBE_OUT_FPGA_BUFFER_1 7 +#define INTER_ADDR_PROBE_RES_FPGA_BUFFER_0 8 /* repurposed */ +#define INTER_ADDR_PROBE_RES_FPGA_BUFFER_1 9 /* repurposed */ +#define INTER_ADDR_ASMI_RSU 10 +#define INTER_ADDR_AVALON 11 +#define INTER_ADDR_HACK_OVERRIDE_OUT_DATA_SIZE 12 +#define INTER_ADDR_ENABLE_DISABLE 13 +#define INTER_ADDR_INTERRUPT 14 +#define INTER_ADDR_DMA_DESCRIPTORS_AND_RESERVED 15 + +/* Repurposed interpretation address for 64-bit soft register interface */ +#define INTER_ADDR_SOFT_REG 8 +#define INTER_ADDR_SOFT_REG_CAPABILITY 9 +#define SOFT_REG_CAPABILITY_SIGNATURE 0x50F750F7 +#define SOFT_REG_SLOT_DMA_BASE_ADDR 0x7E00 +#define SOFT_REG_SLOT_DMA_MAGIC_ADDR (SOFT_REG_SLOT_DMA_BASE_ADDR + 63) +#define SOFT_REG_MAPPING_SLOT_DMA_MAGIC_VALUE 0x8926fc9c4e6256d9ULL +/* This magic value is defined in hardware in SoftRegs_Adapter.sv */ + +/* Repurposed interpretation address for multi-function images */ +#define INTER_ADDR_DFH_0 0 +#define INTER_ADDR_DFH_1 1 +#define INTER_ADDR_DFH_2 2 + +/* Definitions for Device Function Header */ +union catapult_dfh_header { + struct { + uint64_t afu_feature_id : 12; /* 11:0 */ + uint64_t afu_major : 4; /* 15:12 */ + uint64_t afu_offset : 24; /* 39:16 */ + uint64_t afu_eol : 1; /* 40 */ + uint64_t afu_rsvd0 : 7; /* 47:41 */ + uint64_t afu_minor : 4; /* 51:48 */ + uint64_t afu_rsvd1 : 8; /* 59:52 */ + uint64_t afu_type : 4; /* 63:60 =0x04 if DFH supported */ + }; + + uint64_t as_ulonglong; + uint32_t as_ulongs[2]; +}; + +enum catapult_dfh_type { + DFH_TYPE_NOT_SUPPORTED = 0, + DFH_TYPE_INTEL_AFU = 1, + DFH_TYPE_BASIC_BUILDING_BLOCK = 2, + DFH_TYPE_PRIVATE_FEATURE = 3, + DFH_TYPE_FIU = 4, + DFH_TYPE_MAX = 5, +}; + +#define DFH_FEATURE_GUID_OFFSET_LOWER 0x08 +#define DFH_FEATURE_GUID_OFFSET_HIGHER 0x10 + +/* Bit offsets for the afu_feature_id field in the DFH */ +#define DFH_FEATURE_ASMI_RSU_PRESENT_MASK 0x01 +#define DFH_FEATURE_SOFTSHELL_PRESENT_MASK 0x02 + +/* Definitions for shell control feature */ +static const guid_t GUID_FPGA_SHELL_CONTROL_FEATURE = + GUID_INIT(0x3ABD40CA, 0x48B5, 0x450D, + 0x94, 0x79, 0x1B, 0xD9, 0x70, 0x00, 0x7B, 0x8D); + +#define DFH_FEATURE_DMA_CONTROL_REG_OFFSET 0x18 +#define DFH_FEATURE_ROLE_CONTROL_REG_OFFSET 0x20 + +/* Registers for the shell control feature */ +union catapult_dma_control_register { + struct { + uint64_t dma_function_select : 1; + uint64_t reserved : 63; + }; + + uint64_t as_ulonglong; +}; + +#define DMA_FUNCTION_MANAGEMENT 0x0 +#define DMA_FUNCTION_ROLE 0x1 + +union catapult_role_control_register { + struct { + uint64_t role_interrupt_mask : 1; + uint64_t isolate_role : 1; + uint64_t reserved : 62; + }; + + uint64_t as_ulonglong; +}; + +#define ROLE_INTERRUPT_ENABLED 0x0 +#define ROLE_INTERRUPT_DISABLED 0x1 + +#define ROLE_NOT_ISOLATED 0x0 +#define ROLE_ISOLATED 0x1 + +/* Definitions for interrupt feature */ +static const guid_t GUID_FPGA_INTERRUPT_FEATURE = + GUID_INIT(0x73ACD711, 0x2CCF, 0x4305, + 0xA4, 0x1F, 0x3E, 0x0A, 0xD6, 0x76, 0xB2, 0x52); + +#define DFH_FEATURE_INTERRUPT_MASK_REG_OFFSET 0x18 +#define DFH_FEATURE_INTERRUPT_STATUS_REG_OFFSET 0x20 + +/* Registers for the interrupt feature */ +union catapult_interrupt_mask_register { + struct { + uint64_t slot_dma_interrupt : 1; + uint64_t reserved : 63; + }; + + uint64_t as_ulonglong; +}; + +union catapult_interrupt_status_register { + struct { + uint64_t slot_dma_interrupt : 1; + uint64_t reserved : 63; + }; + + uint64_t as_ulonglong; +}; + +/* Constants for general purpose (aka. shell) register addresses */ +#define GP_REGISTER_INDEX_BOARD_REVISION 56 +#define GP_REGISTER_INDEX_BOARD_ID 57 +#define GP_REGISTER_INDEX_SHELL_RELEASE_VERSION 58 +#define GP_REGISTER_INDEX_BUILD_INFO 59 +#define GP_REGISTER_INDEX_TFS_CHANGESET_NUMBER 60 +#define GP_REGISTER_INDEX_CHIP_ID_LOW 62 +#define GP_REGISTER_INDEX_CHIP_ID_HIGH 63 +#define GP_REGISTER_INDEX_SHELL_ID 64 +#define GP_REGISTER_INDEX_ROLE_VERSION 65 +#define GP_REGISTER_INDEX_SHELL_STATUS 68 +#define GP_REGISTER_INDEX_ROLE_STATUS 70 +#define GP_REGISTER_INDEX_TEMPERATURE 71 +#define GP_REGISTER_INDEX_SHELL_IDENTITY 91 +#define GP_REGISTER_INDEX_ROLE_ID 101 + +/* Format for the Shell Identity Register */ +union catapult_shell_identity_register { + struct { + uint32_t function_number : 16; + uint32_t endpoint_number : 4; + uint32_t reserved : 12; + }; + + uint32_t as_ulong; +}; + +/* Structure of the host-side, per-slot DMA control buffer */ +struct catapult_dma_control_buffer { + uint32_t reserved1; + uint32_t full_status; + uint32_t reserved2; + uint32_t done_status; + uint32_t reserved3[12]; +}; + +/* Structure of the host-side, per-slot DMA results buffer */ +struct catapult_dma_result_buffer { + uint32_t bytes_received; + uint32_t reserved[15]; +}; + +struct catapult_dma_iso_control_result_combined { + struct catapult_dma_control_buffer control_buffer; + struct catapult_dma_result_buffer result_buffer; +}; + +/* Constants specific to slot isolation capable shells */ +#define SOFT_REGISTER_SHIFT_OFFSET 3 +#define MSB_SHIFT_FPGA_NUM_SHELL_REG_ISO 18 +#define SOFT_REGISTER_BASE_ADDRESS 0x800000 +#define DMA_SLOT_INPUT_BASE_ADDRESS 0x901000 +#define DMA_SLOT_OUTPUT_BASE_ADDRESS 0x901008 +#define DMA_SLOT_CONTROL_RESULT_BASE_ADDRESS 0x901010 +#define DMA_SLOT_FULL_BASE_ADDRESS 0x980000 +#define DMA_SLOT_DONE_BASE_ADDRESS 0x980008 + +#define FPGA_CONTROL_SIZE sizeof(struct catapult_dma_control_buffer) +#define FPGA_RESULT_SIZE sizeof(struct catapult_dma_iso_control_result_combined) + +#define SHELL_ID_ABALONE 0xCA7A0ABA +#define SHELL_VERSION_ABALONE_ISOLATION_CAPABLE 0x00030000 +#define SHELL_ID_BEDROCK 0xBED70C +#define SHELL_VERSION_BEDROCK_ISOLATION_CAPABLE 0x00020000 +#define ROLE_VERSION_GOLDEN_10A 0xCA7A010A +#define ROLE_ID_GOLDEN_10A 0x601D + +#define SHELL_CHIP_ID_DISCONNECTED_VALUE 0xdeadbeefdeadbeef + +#endif /* __CATAPULT_SHELL_H */ --- linux-azure-5.8-5.8.0.orig/drivers/catapult/catapult.h +++ linux-azure-5.8-5.8.0/drivers/catapult/catapult.h @@ -0,0 +1,138 @@ +// SPDX-License-Identifier: GPL-2.0 +/* + * Header file for Catapult FPGA driver user API + * + * Copyright (C) 2019 Microsoft, Inc. + * + * Authors: + * Jesse Benson + */ + +#ifndef __CATAPULT_H +#define __CATAPULT_H + +/* + * The number of slots must be at least 2 otherwise it breaks the verilog syntax + * for some multiplexers in hardware conceptually the design will support 1 slot + * but there is no practical point given the FPGA is double buffered. The + * software ISR handshaking (32-bit PCIe reads) requires that slot numbers are + * representable on 8 bits, hence up to 256 can be used. + */ +#define MIN_FPGA_NUM_SLOTS 2 +#define MAX_FPGA_NUM_SLOTS 256 + +/* 64-bit base addresses to support mmap requests for BAR and DMA registers */ +#define CATAPULT_FPGA_REGISTER_ADDRESS 0x0000000000000000 +#define CATAPULT_FPGA_DMA_INPUT_BASE_ADDRESS 0x1000000000000000 +#define CATAPULT_FPGA_DMA_OUTPUT_BASE_ADDRESS 0x2000000000000000 +#define CATAPULT_FPGA_DMA_RESULT_ADDRESS 0x3000000000000000 +#define CATAPULT_FPGA_DMA_CONTROL_ADDRESS 0x4000000000000000 +#define CATAPULT_FPGA_DMA_BASE_ADDRESS_MASK 0xF000000000000000 + +#define CATAPULT_IOCTL_MAGIC 0xF0 /* Customer range is 32768 - 65535 */ + +struct catapult_register_info { + uint8_t region_count; + uint32_t region_size[6]; +}; + +struct catapult_get_slot_event { + uint32_t slot_index; +}; + +struct catapult_wait_slot_event { + uint32_t slot_index; + uint32_t timeout; /* timeout in milliseconds (or 0 for INFINITE) */ + bool wait; /* true: block until timeout + * false: test for completion and return immediately */ +}; + +struct catapult_reset_slot_event { + uint32_t slot_index; +}; + +struct catapult_complete_slot_event { + uint32_t slot_index; +}; + +struct catapult_buffer_ptrs { + uint32_t input_size; + void *input; + uint64_t input_phys; + uint32_t output_size; + void *output; + uint64_t output_phys; + uint32_t result_size; + void *result; + uint64_t result_phys; + uint32_t control_size; + void *control; + uint64_t control_phys; +}; + +/* + * The product major and minor versions are manually maintained by the + * developer, and should be considered an indicator of non-breaking (minor) + * or breaking (major) interface or behavioral changes. + */ +struct catapult_driver_version { + uint16_t product_major_version; + uint16_t product_minor_version; + uint16_t build_major_version; + uint16_t build_minor_version; +}; + +/* Used to describe the configured slot values of the driver. */ +struct catapult_slot_configuration { + uint32_t bytes_per_slot; + uint32_t number_of_slots; +}; + +/* Used to reserve a slot for exclusive use by the calling process. */ +struct catapult_slot_reservation { + uint32_t slot; + uint32_t *input_buffer; + uint32_t *output_buffer; + uint32_t *result_buffer; + uint32_t *control_buffer; +}; + +enum catapult_slot_range_type { + CATAPULT_SLOT_RANGE_INVALID = 0, + CATAPULT_SLOT_RANGE_CONTIGUOUS, + CATAPULT_SLOT_RANGE_DISCONTIGUOUS, +}; + +/* Used to reserve multiple slots for exclusive use by the calling process. */ +struct catapult_slot_range_reservation { + enum catapult_slot_range_type range_type; + uint32_t start; + uint32_t end; +}; + +struct catapult_acquire_slot_range { + struct catapult_slot_range_reservation slot_range; + struct catapult_slot_reservation reservations[MAX_FPGA_NUM_SLOTS]; +}; + +#define CATAPULT_IOCTL_GET_REGISTER_INFO _IOR (CATAPULT_IOCTL_MAGIC, 1, struct catapult_register_info) +#define CATAPULT_IOCTL_INTERRUPT_DISABLE _IO (CATAPULT_IOCTL_MAGIC, 2) +#define CATAPULT_IOCTL_INTERRUPT_ENABLE _IO (CATAPULT_IOCTL_MAGIC, 3) + +#define CATAPULT_IOCTL_GET_BUFFER_POINTERS _IOR (CATAPULT_IOCTL_MAGIC, 11, struct catapult_buffer_ptrs) + +#define CATAPULT_IOCTL_GET_DRIVER_VERSION _IOR (CATAPULT_IOCTL_MAGIC, 16, struct catapult_driver_version) +#define CATAPULT_IOCTL_GET_SLOT_CONFIG _IOR (CATAPULT_IOCTL_MAGIC, 17, struct catapult_slot_configuration) + +/* IOCTLs associated with process isolation */ +#define CATAPULT_IOCTL_ACQUIRE_SLOT _IOR (CATAPULT_IOCTL_MAGIC, 19, struct catapult_slot_reservation) +#define CATAPULT_IOCTL_RELEASE_SLOT _IOW (CATAPULT_IOCTL_MAGIC, 20, struct catapult_slot_reservation) +#define CATAPULT_IOCTL_ACQUIRE_SLOT_RANGE _IOWR(CATAPULT_IOCTL_MAGIC, 21, struct catapult_acquire_slot_range) +#define CATAPULT_IOCTL_RELEASE_SLOT_RANGE _IO (CATAPULT_IOCTL_MAGIC, 22) + +#define CATAPULT_IOCTL_GET_SLOT_EVENT _IOW (CATAPULT_IOCTL_MAGIC, 30, struct catapult_get_slot_event) +#define CATAPULT_IOCTL_WAIT_SLOT_EVENT _IOW (CATAPULT_IOCTL_MAGIC, 31, struct catapult_wait_slot_event) +#define CATAPULT_IOCTL_RESET_SLOT_EVENT _IOW (CATAPULT_IOCTL_MAGIC, 32, struct catapult_reset_slot_event) +#define CATAPULT_IOCTL_COMPLETE_SLOT_EVENT _IOW (CATAPULT_IOCTL_MAGIC, 33, struct catapult_complete_slot_event) + +#endif /* __CATAPULT_H */ --- linux-azure-5.8-5.8.0.orig/drivers/cdrom/cdrom.c +++ linux-azure-5.8-5.8.0/drivers/cdrom/cdrom.c @@ -291,7 +291,7 @@ /* default compatibility mode */ static bool autoclose=1; static bool autoeject; -static bool lockdoor = 1; +static bool lockdoor = 0; /* will we ever get to use this... sigh. */ static bool check_media_type; /* automatically restart mrw format */ --- linux-azure-5.8-5.8.0.orig/drivers/char/agp/intel-gtt.c +++ linux-azure-5.8-5.8.0/drivers/char/agp/intel-gtt.c @@ -304,8 +304,10 @@ if (intel_private.needs_dmar) { dma_addr = pci_map_page(intel_private.pcidev, page, 0, PAGE_SIZE, PCI_DMA_BIDIRECTIONAL); - if (pci_dma_mapping_error(intel_private.pcidev, dma_addr)) + if (pci_dma_mapping_error(intel_private.pcidev, dma_addr)) { + __free_page(page); return -EINVAL; + } intel_private.scratch_page_dma = dma_addr; } else --- linux-azure-5.8-5.8.0.orig/drivers/char/hw_random/Kconfig +++ linux-azure-5.8-5.8.0/drivers/char/hw_random/Kconfig @@ -491,15 +491,15 @@ config UML_RANDOM depends on UML - tristate "Hardware random number generator" + select HW_RANDOM + tristate "UML Random Number Generator support" help This option enables UML's "hardware" random number generator. It attaches itself to the host's /dev/random, supplying as much entropy as the host has, rather than the small amount the UML gets from its - own drivers. It registers itself as a standard hardware random number - generator, major 10, minor 183, and the canonical device name is - /dev/hwrng. - The way to make use of this is to install the rng-tools package - (check your distro, or download from - http://sourceforge.net/projects/gkernel/). rngd periodically reads - /dev/hwrng and injects the entropy into /dev/random. + own drivers. It registers itself as a rng-core driver thus providing + a device which is usually called /dev/hwrng. This hardware random + number generator does feed into the kernel's random number generator + entropy pool. + + If unsure, say Y. --- linux-azure-5.8-5.8.0.orig/drivers/char/hw_random/timeriomem-rng.c +++ linux-azure-5.8-5.8.0/drivers/char/hw_random/timeriomem-rng.c @@ -69,7 +69,7 @@ */ if (retval > 0) usleep_range(period_us, - period_us + min(1, period_us / 100)); + period_us + max(1, period_us / 100)); *(u32 *)data = readl(priv->io_base); retval += sizeof(u32); --- linux-azure-5.8-5.8.0.orig/drivers/char/ipmi/ipmi_si_intf.c +++ linux-azure-5.8-5.8.0/drivers/char/ipmi/ipmi_si_intf.c @@ -1963,7 +1963,7 @@ /* Do this early so it's available for logs. */ if (!new_smi->io.dev) { pr_err("IPMI interface added with no device\n"); - rv = EIO; + rv = -EIO; goto out_err; } --- linux-azure-5.8-5.8.0.orig/drivers/char/random.c +++ linux-azure-5.8-5.8.0/drivers/char/random.c @@ -1277,7 +1277,6 @@ fast_mix(fast_pool); add_interrupt_bench(cycles); - this_cpu_add(net_rand_state.s1, fast_pool->pool[cycles & 3]); if (unlikely(crng_init == 0)) { if ((fast_pool->count >= 64) && @@ -1973,7 +1972,7 @@ return -EPERM; if (crng_init < 2) return -ENODATA; - crng_reseed(&primary_crng, NULL); + crng_reseed(&primary_crng, &input_pool); crng_global_init_time = jiffies - 1; return 0; default: @@ -2023,10 +2022,10 @@ if (count > INT_MAX) count = INT_MAX; - if (!(flags & GRND_INSECURE) && !crng_ready()) { + if (!(flags & GRND_INSECURE) && (crng_init == 0)) { if (flags & GRND_NONBLOCK) return -EAGAIN; - ret = wait_for_random_bytes(); + ret = wait_event_interruptible(crng_init_wait, crng_init > 0); if (unlikely(ret)) return ret; } --- linux-azure-5.8-5.8.0.orig/drivers/char/tpm/eventlog/efi.c +++ linux-azure-5.8-5.8.0/drivers/char/tpm/eventlog/efi.c @@ -41,6 +41,11 @@ log_size = log_tbl->size; memunmap(log_tbl); + if (!log_size) { + pr_warn("UEFI TPM log area empty\n"); + return -EIO; + } + log_tbl = memremap(efi.tpm_log, sizeof(*log_tbl) + log_size, MEMREMAP_WB); if (!log_tbl) { --- linux-azure-5.8-5.8.0.orig/drivers/char/tpm/tpm-chip.c +++ linux-azure-5.8-5.8.0/drivers/char/tpm/tpm-chip.c @@ -386,13 +386,8 @@ chip->cdev.owner = THIS_MODULE; chip->cdevs.owner = THIS_MODULE; - chip->work_space.context_buf = kzalloc(PAGE_SIZE, GFP_KERNEL); - if (!chip->work_space.context_buf) { - rc = -ENOMEM; - goto out; - } - chip->work_space.session_buf = kzalloc(PAGE_SIZE, GFP_KERNEL); - if (!chip->work_space.session_buf) { + rc = tpm2_init_space(&chip->work_space, TPM2_SPACE_BUFFER_SIZE); + if (rc) { rc = -ENOMEM; goto out; } --- linux-azure-5.8-5.8.0.orig/drivers/char/tpm/tpm.h +++ linux-azure-5.8-5.8.0/drivers/char/tpm/tpm.h @@ -59,6 +59,9 @@ #define TPM_TAG_RQU_COMMAND 193 +/* TPM2 specific constants. */ +#define TPM2_SPACE_BUFFER_SIZE 16384 /* 16 kB */ + struct stclear_flags_t { __be16 tag; u8 deactivated; @@ -161,8 +164,6 @@ extern struct idr dev_nums_idr; ssize_t tpm_transmit(struct tpm_chip *chip, u8 *buf, size_t bufsiz); -ssize_t tpm_transmit_cmd(struct tpm_chip *chip, struct tpm_buf *buf, - size_t min_rsp_body_length, const char *desc); int tpm_get_timeouts(struct tpm_chip *); int tpm_auto_startup(struct tpm_chip *chip); @@ -191,8 +192,6 @@ int tpm_chip_start(struct tpm_chip *chip); void tpm_chip_stop(struct tpm_chip *chip); struct tpm_chip *tpm_find_get_ops(struct tpm_chip *chip); -__must_check int tpm_try_get_ops(struct tpm_chip *chip); -void tpm_put_ops(struct tpm_chip *chip); struct tpm_chip *tpm_chip_alloc(struct device *dev, const struct tpm_class_ops *ops); @@ -228,7 +227,7 @@ int tpm2_probe(struct tpm_chip *chip); int tpm2_get_cc_attrs_tbl(struct tpm_chip *chip); int tpm2_find_cc(struct tpm_chip *chip, u32 cc); -int tpm2_init_space(struct tpm_space *space); +int tpm2_init_space(struct tpm_space *space, unsigned int buf_size); void tpm2_del_space(struct tpm_chip *chip, struct tpm_space *space); void tpm2_flush_space(struct tpm_chip *chip); int tpm2_prepare_space(struct tpm_chip *chip, struct tpm_space *space, u8 *cmd, --- linux-azure-5.8-5.8.0.orig/drivers/char/tpm/tpm2-space.c +++ linux-azure-5.8-5.8.0/drivers/char/tpm/tpm2-space.c @@ -38,18 +38,21 @@ } } -int tpm2_init_space(struct tpm_space *space) +int tpm2_init_space(struct tpm_space *space, unsigned int buf_size) { - space->context_buf = kzalloc(PAGE_SIZE, GFP_KERNEL); + space->context_buf = kzalloc(buf_size, GFP_KERNEL); if (!space->context_buf) return -ENOMEM; - space->session_buf = kzalloc(PAGE_SIZE, GFP_KERNEL); + space->session_buf = kzalloc(buf_size, GFP_KERNEL); if (space->session_buf == NULL) { kfree(space->context_buf); + /* Prevent caller getting a dangling pointer. */ + space->context_buf = NULL; return -ENOMEM; } + space->buf_size = buf_size; return 0; } @@ -311,8 +314,10 @@ sizeof(space->context_tbl)); memcpy(&chip->work_space.session_tbl, &space->session_tbl, sizeof(space->session_tbl)); - memcpy(chip->work_space.context_buf, space->context_buf, PAGE_SIZE); - memcpy(chip->work_space.session_buf, space->session_buf, PAGE_SIZE); + memcpy(chip->work_space.context_buf, space->context_buf, + space->buf_size); + memcpy(chip->work_space.session_buf, space->session_buf, + space->buf_size); rc = tpm2_load_space(chip); if (rc) { @@ -492,7 +497,7 @@ continue; rc = tpm2_save_context(chip, space->context_tbl[i], - space->context_buf, PAGE_SIZE, + space->context_buf, space->buf_size, &offset); if (rc == -ENOENT) { space->context_tbl[i] = 0; @@ -509,9 +514,8 @@ continue; rc = tpm2_save_context(chip, space->session_tbl[i], - space->session_buf, PAGE_SIZE, + space->session_buf, space->buf_size, &offset); - if (rc == -ENOENT) { /* handle error saving session, just forget it */ space->session_tbl[i] = 0; @@ -557,8 +561,10 @@ sizeof(space->context_tbl)); memcpy(&space->session_tbl, &chip->work_space.session_tbl, sizeof(space->session_tbl)); - memcpy(space->context_buf, chip->work_space.context_buf, PAGE_SIZE); - memcpy(space->session_buf, chip->work_space.session_buf, PAGE_SIZE); + memcpy(space->context_buf, chip->work_space.context_buf, + space->buf_size); + memcpy(space->session_buf, chip->work_space.session_buf, + space->buf_size); return 0; out: --- linux-azure-5.8-5.8.0.orig/drivers/char/tpm/tpm_tis.c +++ linux-azure-5.8-5.8.0/drivers/char/tpm/tpm_tis.c @@ -27,6 +27,7 @@ #include #include #include +#include #include "tpm.h" #include "tpm_tis_core.h" @@ -49,8 +50,8 @@ return container_of(data, struct tpm_tis_tcg_phy, priv); } -static bool interrupts = true; -module_param(interrupts, bool, 0444); +static int interrupts = -1; +module_param(interrupts, int, 0444); MODULE_PARM_DESC(interrupts, "Enable interrupts"); static bool itpm; @@ -63,6 +64,28 @@ MODULE_PARM_DESC(force, "Force device probe rather than using ACPI entry"); #endif +static int tpm_tis_disable_irq(const struct dmi_system_id *d) +{ + if (interrupts == -1) { + pr_notice("tpm_tis: %s detected: disabling interrupts.\n", d->ident); + interrupts = 0; + } + + return 0; +} + +static const struct dmi_system_id tpm_tis_dmi_table[] = { + { + .callback = tpm_tis_disable_irq, + .ident = "ThinkPad T490s", + .matches = { + DMI_MATCH(DMI_SYS_VENDOR, "LENOVO"), + DMI_MATCH(DMI_PRODUCT_VERSION, "ThinkPad T490s"), + }, + }, + {} +}; + #if defined(CONFIG_PNP) && defined(CONFIG_ACPI) static int has_hid(struct acpi_device *dev, const char *hid) { @@ -192,6 +215,8 @@ int irq = -1; int rc; + dmi_check_system(tpm_tis_dmi_table); + rc = check_acpi_tpm2(dev); if (rc) return rc; --- linux-azure-5.8-5.8.0.orig/drivers/char/tpm/tpm_tis_core.c +++ linux-azure-5.8-5.8.0/drivers/char/tpm/tpm_tis_core.c @@ -125,7 +125,8 @@ if (rc < 0) return false; - if ((access & (TPM_ACCESS_ACTIVE_LOCALITY | TPM_ACCESS_VALID)) == + if ((access & (TPM_ACCESS_ACTIVE_LOCALITY | TPM_ACCESS_VALID + | TPM_ACCESS_REQUEST_USE)) == (TPM_ACCESS_ACTIVE_LOCALITY | TPM_ACCESS_VALID)) { priv->locality = l; return true; @@ -134,58 +135,13 @@ return false; } -static bool locality_inactive(struct tpm_chip *chip, int l) -{ - struct tpm_tis_data *priv = dev_get_drvdata(&chip->dev); - int rc; - u8 access; - - rc = tpm_tis_read8(priv, TPM_ACCESS(l), &access); - if (rc < 0) - return false; - - if ((access & (TPM_ACCESS_VALID | TPM_ACCESS_ACTIVE_LOCALITY)) - == TPM_ACCESS_VALID) - return true; - - return false; -} - static int release_locality(struct tpm_chip *chip, int l) { struct tpm_tis_data *priv = dev_get_drvdata(&chip->dev); - unsigned long stop, timeout; - long rc; tpm_tis_write8(priv, TPM_ACCESS(l), TPM_ACCESS_ACTIVE_LOCALITY); - stop = jiffies + chip->timeout_a; - - if (chip->flags & TPM_CHIP_FLAG_IRQ) { -again: - timeout = stop - jiffies; - if ((long)timeout <= 0) - return -1; - - rc = wait_event_interruptible_timeout(priv->int_queue, - (locality_inactive(chip, l)), - timeout); - - if (rc > 0) - return 0; - - if (rc == -ERESTARTSYS && freezing(current)) { - clear_thread_flag(TIF_SIGPENDING); - goto again; - } - } else { - do { - if (locality_inactive(chip, l)) - return 0; - tpm_msleep(TPM_TIMEOUT); - } while (time_before(jiffies, stop)); - } - return -1; + return 0; } static int request_locality(struct tpm_chip *chip, int l) --- linux-azure-5.8-5.8.0.orig/drivers/char/tpm/tpmrm-dev.c +++ linux-azure-5.8-5.8.0/drivers/char/tpm/tpmrm-dev.c @@ -21,7 +21,7 @@ if (priv == NULL) return -ENOMEM; - rc = tpm2_init_space(&priv->space); + rc = tpm2_init_space(&priv->space, TPM2_SPACE_BUFFER_SIZE); if (rc) { kfree(priv); return -ENOMEM; --- linux-azure-5.8-5.8.0.orig/drivers/char/virtio_console.c +++ linux-azure-5.8-5.8.0/drivers/char/virtio_console.c @@ -435,12 +435,12 @@ /* * Allocate DMA memory from ancestor. When a virtio * device is created by remoteproc, the DMA memory is - * associated with the grandparent device: - * vdev => rproc => platform-dev. + * associated with the parent device: + * virtioY => remoteprocX#vdevYbuffer. */ - if (!vdev->dev.parent || !vdev->dev.parent->parent) + buf->dev = vdev->dev.parent; + if (!buf->dev) goto free_buf; - buf->dev = vdev->dev.parent->parent; /* Increase device refcnt to avoid freeing it */ get_device(buf->dev); --- linux-azure-5.8-5.8.0.orig/drivers/clk/Kconfig +++ linux-azure-5.8-5.8.0/drivers/clk/Kconfig @@ -50,7 +50,7 @@ config CLK_HSDK bool "PLL Driver for HSDK platform" depends on OF || COMPILE_TEST - depends on IOMEM + depends on HAS_IOMEM help This driver supports the HSDK core, system, ddr, tunnel and hdmi PLLs control. --- linux-azure-5.8-5.8.0.orig/drivers/clk/actions/owl-s500.c +++ linux-azure-5.8-5.8.0/drivers/clk/actions/owl-s500.c @@ -183,7 +183,7 @@ static OWL_GATE(hdmi_clk, "hdmi_clk", "hosc", CMU_DEVCLKEN1, 3, 0, 0); /* divider clocks */ -static OWL_DIVIDER(h_clk, "h_clk", "ahbprevdiv_clk", CMU_BUSCLK1, 12, 2, NULL, 0, 0); +static OWL_DIVIDER(h_clk, "h_clk", "ahbprediv_clk", CMU_BUSCLK1, 12, 2, NULL, 0, 0); static OWL_DIVIDER(rmii_ref_clk, "rmii_ref_clk", "ethernet_pll_clk", CMU_ETHERNETPLL, 1, 1, rmii_ref_div_table, 0, 0); /* factor clocks */ --- linux-azure-5.8-5.8.0.orig/drivers/clk/at91/clk-main.c +++ linux-azure-5.8-5.8.0/drivers/clk/at91/clk-main.c @@ -437,12 +437,17 @@ return -EINVAL; regmap_read(regmap, AT91_CKGR_MOR, &tmp); - tmp &= ~MOR_KEY_MASK; if (index && !(tmp & AT91_PMC_MOSCSEL)) - regmap_write(regmap, AT91_CKGR_MOR, tmp | AT91_PMC_MOSCSEL); + tmp = AT91_PMC_MOSCSEL; else if (!index && (tmp & AT91_PMC_MOSCSEL)) - regmap_write(regmap, AT91_CKGR_MOR, tmp & ~AT91_PMC_MOSCSEL); + tmp = 0; + else + return 0; + + regmap_update_bits(regmap, AT91_CKGR_MOR, + AT91_PMC_MOSCSEL | MOR_KEY_MASK, + tmp | AT91_PMC_KEY); while (!clk_sam9x5_main_ready(regmap)) cpu_relax(); --- linux-azure-5.8-5.8.0.orig/drivers/clk/at91/sam9x60.c +++ linux-azure-5.8-5.8.0/drivers/clk/at91/sam9x60.c @@ -159,7 +159,6 @@ struct regmap *regmap; struct clk_hw *hw; int i; - bool bypass; i = of_property_match_string(np, "clock-names", "td_slck"); if (i < 0) @@ -194,10 +193,7 @@ if (IS_ERR(hw)) goto err_free; - bypass = of_property_read_bool(np, "atmel,osc-bypass"); - - hw = at91_clk_register_main_osc(regmap, "main_osc", mainxtal_name, - bypass); + hw = at91_clk_register_main_osc(regmap, "main_osc", mainxtal_name, 0); if (IS_ERR(hw)) goto err_free; --- linux-azure-5.8-5.8.0.orig/drivers/clk/bcm/clk-bcm2835.c +++ linux-azure-5.8-5.8.0/drivers/clk/bcm/clk-bcm2835.c @@ -314,6 +314,7 @@ struct device *dev; void __iomem *regs; spinlock_t regs_lock; /* spinlock for all clocks */ + unsigned int soc; /* * Real names of cprman clock parents looked up through @@ -525,6 +526,20 @@ A2W_PLL_CTRL_PRST_DISABLE; } +static u32 bcm2835_pll_get_prediv_mask(struct bcm2835_cprman *cprman, + const struct bcm2835_pll_data *data) +{ + /* + * On BCM2711 there isn't a pre-divisor available in the PLL feedback + * loop. Bits 13:14 of ANA1 (PLLA,PLLB,PLLC,PLLD) have been re-purposed + * for to for VCO RANGE bits. + */ + if (cprman->soc & SOC_BCM2711) + return 0; + + return data->ana->fb_prediv_mask; +} + static void bcm2835_pll_choose_ndiv_and_fdiv(unsigned long rate, unsigned long parent_rate, u32 *ndiv, u32 *fdiv) @@ -582,7 +597,7 @@ ndiv = (a2wctrl & A2W_PLL_CTRL_NDIV_MASK) >> A2W_PLL_CTRL_NDIV_SHIFT; pdiv = (a2wctrl & A2W_PLL_CTRL_PDIV_MASK) >> A2W_PLL_CTRL_PDIV_SHIFT; using_prediv = cprman_read(cprman, data->ana_reg_base + 4) & - data->ana->fb_prediv_mask; + bcm2835_pll_get_prediv_mask(cprman, data); if (using_prediv) { ndiv *= 2; @@ -665,6 +680,7 @@ struct bcm2835_pll *pll = container_of(hw, struct bcm2835_pll, hw); struct bcm2835_cprman *cprman = pll->cprman; const struct bcm2835_pll_data *data = pll->data; + u32 prediv_mask = bcm2835_pll_get_prediv_mask(cprman, data); bool was_using_prediv, use_fb_prediv, do_ana_setup_first; u32 ndiv, fdiv, a2w_ctl; u32 ana[4]; @@ -682,7 +698,7 @@ for (i = 3; i >= 0; i--) ana[i] = cprman_read(cprman, data->ana_reg_base + i * 4); - was_using_prediv = ana[1] & data->ana->fb_prediv_mask; + was_using_prediv = ana[1] & prediv_mask; ana[0] &= ~data->ana->mask0; ana[0] |= data->ana->set0; @@ -692,10 +708,10 @@ ana[3] |= data->ana->set3; if (was_using_prediv && !use_fb_prediv) { - ana[1] &= ~data->ana->fb_prediv_mask; + ana[1] &= ~prediv_mask; do_ana_setup_first = true; } else if (!was_using_prediv && use_fb_prediv) { - ana[1] |= data->ana->fb_prediv_mask; + ana[1] |= prediv_mask; do_ana_setup_first = false; } else { do_ana_setup_first = true; @@ -1321,8 +1337,10 @@ pll->hw.init = &init; ret = devm_clk_hw_register(cprman->dev, &pll->hw); - if (ret) + if (ret) { + kfree(pll); return NULL; + } return &pll->hw; } @@ -2238,6 +2256,7 @@ platform_set_drvdata(pdev, cprman); cprman->onecell.num = asize; + cprman->soc = pdata->soc; hws = cprman->onecell.hws; for (i = 0; i < asize; i++) { --- linux-azure-5.8-5.8.0.orig/drivers/clk/bcm/clk-bcm63xx-gate.c +++ linux-azure-5.8-5.8.0/drivers/clk/bcm/clk-bcm63xx-gate.c @@ -155,6 +155,7 @@ for (entry = table; entry->name; entry++) maxbit = max_t(u8, maxbit, entry->bit); + maxbit++; hw = devm_kzalloc(&pdev->dev, struct_size(hw, data.hws, maxbit), GFP_KERNEL); --- linux-azure-5.8-5.8.0.orig/drivers/clk/clk-ast2600.c +++ linux-azure-5.8-5.8.0/drivers/clk/clk-ast2600.c @@ -17,7 +17,8 @@ #define ASPEED_G6_NUM_CLKS 71 -#define ASPEED_G6_SILICON_REV 0x004 +#define ASPEED_G6_SILICON_REV 0x014 +#define CHIP_REVISION_ID GENMASK(23, 16) #define ASPEED_G6_RESET_CTRL 0x040 #define ASPEED_G6_RESET_CTRL2 0x050 @@ -190,18 +191,34 @@ static struct clk_hw *ast2600_calc_apll(const char *name, u32 val) { unsigned int mult, div; + u32 chip_id = readl(scu_g6_base + ASPEED_G6_SILICON_REV); - if (val & BIT(20)) { - /* Pass through mode */ - mult = div = 1; + if (((chip_id & CHIP_REVISION_ID) >> 16) >= 2) { + if (val & BIT(24)) { + /* Pass through mode */ + mult = div = 1; + } else { + /* F = 25Mhz * [(m + 1) / (n + 1)] / (p + 1) */ + u32 m = val & 0x1fff; + u32 n = (val >> 13) & 0x3f; + u32 p = (val >> 19) & 0xf; + + mult = (m + 1); + div = (n + 1) * (p + 1); + } } else { - /* F = 25Mhz * (2-od) * [(m + 2) / (n + 1)] */ - u32 m = (val >> 5) & 0x3f; - u32 od = (val >> 4) & 0x1; - u32 n = val & 0xf; - - mult = (2 - od) * (m + 2); - div = n + 1; + if (val & BIT(20)) { + /* Pass through mode */ + mult = div = 1; + } else { + /* F = 25Mhz * (2-od) * [(m + 2) / (n + 1)] */ + u32 m = (val >> 5) & 0x3f; + u32 od = (val >> 4) & 0x1; + u32 n = val & 0xf; + + mult = (2 - od) * (m + 2); + div = n + 1; + } } return clk_hw_register_fixed_factor(NULL, name, "clkin", 0, mult, div); --- linux-azure-5.8-5.8.0.orig/drivers/clk/clk-divider.c +++ linux-azure-5.8-5.8.0/drivers/clk/clk-divider.c @@ -493,8 +493,13 @@ else init.ops = &clk_divider_ops; init.flags = flags; - init.parent_names = (parent_name ? &parent_name: NULL); - init.num_parents = (parent_name ? 1 : 0); + init.parent_names = parent_name ? &parent_name : NULL; + init.parent_hws = parent_hw ? &parent_hw : NULL; + init.parent_data = parent_data; + if (parent_name || parent_hw || parent_data) + init.num_parents = 1; + else + init.num_parents = 0; /* struct clk_divider assignments */ div->reg = reg; --- linux-azure-5.8-5.8.0.orig/drivers/clk/clk-fsl-sai.c +++ linux-azure-5.8-5.8.0/drivers/clk/clk-fsl-sai.c @@ -68,9 +68,20 @@ if (IS_ERR(hw)) return PTR_ERR(hw); + platform_set_drvdata(pdev, hw); + return devm_of_clk_add_hw_provider(dev, of_clk_hw_simple_get, hw); } +static int fsl_sai_clk_remove(struct platform_device *pdev) +{ + struct clk_hw *hw = platform_get_drvdata(pdev); + + clk_hw_unregister_composite(hw); + + return 0; +} + static const struct of_device_id of_fsl_sai_clk_ids[] = { { .compatible = "fsl,vf610-sai-clock" }, { } @@ -79,6 +90,7 @@ static struct platform_driver fsl_sai_clk_driver = { .probe = fsl_sai_clk_probe, + .remove = fsl_sai_clk_remove, .driver = { .name = "fsl-sai-clk", .of_match_table = of_fsl_sai_clk_ids, --- linux-azure-5.8-5.8.0.orig/drivers/clk/clk-s2mps11.c +++ linux-azure-5.8-5.8.0/drivers/clk/clk-s2mps11.c @@ -195,6 +195,7 @@ return ret; err_reg: + of_node_put(s2mps11_clks[0].clk_np); while (--i >= 0) clkdev_drop(s2mps11_clks[i].lookup); --- linux-azure-5.8-5.8.0.orig/drivers/clk/clk-scmi.c +++ linux-azure-5.8-5.8.0/drivers/clk/clk-scmi.c @@ -103,6 +103,8 @@ static int scmi_clk_ops_init(struct device *dev, struct scmi_clk *sclk) { int ret; + unsigned long min_rate, max_rate; + struct clk_init_data init = { .flags = CLK_GET_RATE_NOCACHE, .num_parents = 0, @@ -112,9 +114,23 @@ sclk->hw.init = &init; ret = devm_clk_hw_register(dev, &sclk->hw); - if (!ret) - clk_hw_set_rate_range(&sclk->hw, sclk->info->range.min_rate, - sclk->info->range.max_rate); + if (ret) + return ret; + + if (sclk->info->rate_discrete) { + int num_rates = sclk->info->list.num_rates; + + if (num_rates <= 0) + return -EINVAL; + + min_rate = sclk->info->list.rates[0]; + max_rate = sclk->info->list.rates[num_rates - 1]; + } else { + min_rate = sclk->info->range.min_rate; + max_rate = sclk->info->range.max_rate; + } + + clk_hw_set_rate_range(&sclk->hw, min_rate, max_rate); return ret; } --- linux-azure-5.8-5.8.0.orig/drivers/clk/davinci/pll.c +++ linux-azure-5.8-5.8.0/drivers/clk/davinci/pll.c @@ -491,7 +491,7 @@ parent_name = postdiv_name; } - pllen = kzalloc(sizeof(*pllout), GFP_KERNEL); + pllen = kzalloc(sizeof(*pllen), GFP_KERNEL); if (!pllen) { ret = -ENOMEM; goto err_unregister_postdiv; --- linux-azure-5.8-5.8.0.orig/drivers/clk/imx/clk-imx8mq.c +++ linux-azure-5.8-5.8.0/drivers/clk/imx/clk-imx8mq.c @@ -157,10 +157,10 @@ "audio_pll2_out", "sys1_pll_266m", "sys3_pll_out", "sys1_pll_100m", }; static const char * const imx8mq_usdhc1_sels[] = {"osc_25m", "sys1_pll_400m", "sys1_pll_800m", "sys2_pll_500m", - "audio_pll2_out", "sys1_pll_266m", "sys3_pll_out", "sys1_pll_100m", }; + "sys3_pll_out", "sys1_pll_266m", "audio_pll2_out", "sys1_pll_100m", }; static const char * const imx8mq_usdhc2_sels[] = {"osc_25m", "sys1_pll_400m", "sys1_pll_800m", "sys2_pll_500m", - "audio_pll2_out", "sys1_pll_266m", "sys3_pll_out", "sys1_pll_100m", }; + "sys3_pll_out", "sys1_pll_266m", "audio_pll2_out", "sys1_pll_100m", }; static const char * const imx8mq_i2c1_sels[] = {"osc_25m", "sys1_pll_160m", "sys2_pll_50m", "sys3_pll_out", "audio_pll1_out", "video_pll1_out", "audio_pll2_out", "sys1_pll_133m", }; --- linux-azure-5.8-5.8.0.orig/drivers/clk/ingenic/cgu.c +++ linux-azure-5.8-5.8.0/drivers/clk/ingenic/cgu.c @@ -397,15 +397,21 @@ ingenic_clk_calc_hw_div(const struct ingenic_cgu_clk_info *clk_info, unsigned int div) { - unsigned int i; + unsigned int i, best_i = 0, best = (unsigned int)-1; for (i = 0; i < (1 << clk_info->div.bits) && clk_info->div.div_table[i]; i++) { - if (clk_info->div.div_table[i] >= div) - return i; + if (clk_info->div.div_table[i] >= div && + clk_info->div.div_table[i] < best) { + best = clk_info->div.div_table[i]; + best_i = i; + + if (div == best) + break; + } } - return i - 1; + return best_i; } static unsigned --- linux-azure-5.8-5.8.0.orig/drivers/clk/keystone/sci-clk.c +++ linux-azure-5.8-5.8.0/drivers/clk/keystone/sci-clk.c @@ -522,7 +522,7 @@ np = of_find_node_with_property(np, *clk_name); if (!np) { clk_name++; - break; + continue; } if (!of_device_is_available(np)) --- linux-azure-5.8-5.8.0.orig/drivers/clk/mediatek/clk-mt6779.c +++ linux-azure-5.8-5.8.0/drivers/clk/mediatek/clk-mt6779.c @@ -919,6 +919,8 @@ "pwm_sel", 19), GATE_INFRA0(CLK_INFRA_PWM, "infra_pwm", "pwm_sel", 21), + GATE_INFRA0(CLK_INFRA_UART0, "infra_uart0", + "uart_sel", 22), GATE_INFRA0(CLK_INFRA_UART1, "infra_uart1", "uart_sel", 23), GATE_INFRA0(CLK_INFRA_UART2, "infra_uart2", --- linux-azure-5.8-5.8.0.orig/drivers/clk/meson/Kconfig +++ linux-azure-5.8-5.8.0/drivers/clk/meson/Kconfig @@ -103,6 +103,7 @@ select COMMON_CLK_MESON_AO_CLKC select COMMON_CLK_MESON_EE_CLKC select COMMON_CLK_MESON_CPU_DYNDIV + select COMMON_CLK_MESON_VID_PLL_DIV select MFD_SYSCON help Support for the clock controller on Amlogic S905D2, S905X2 and S905Y2 --- linux-azure-5.8-5.8.0.orig/drivers/clk/meson/axg-audio.c +++ linux-azure-5.8-5.8.0/drivers/clk/meson/axg-audio.c @@ -1209,12 +1209,7 @@ }; -/* Convenience table to populate regmap in .probe() - * Note that this table is shared between both AXG and G12A, - * with spdifout_b clocks being exclusive to G12A. Since those - * clocks are not declared within the AXG onecell table, we do not - * feel the need to have separate AXG/G12A regmap tables. - */ +/* Convenience table to populate regmap in .probe(). */ static struct clk_regmap *const axg_clk_regmaps[] = { &ddr_arb, &pdm, @@ -1236,6 +1231,130 @@ &spdifout, &resample, &power_detect, + &mst_a_mclk_sel, + &mst_b_mclk_sel, + &mst_c_mclk_sel, + &mst_d_mclk_sel, + &mst_e_mclk_sel, + &mst_f_mclk_sel, + &mst_a_mclk_div, + &mst_b_mclk_div, + &mst_c_mclk_div, + &mst_d_mclk_div, + &mst_e_mclk_div, + &mst_f_mclk_div, + &mst_a_mclk, + &mst_b_mclk, + &mst_c_mclk, + &mst_d_mclk, + &mst_e_mclk, + &mst_f_mclk, + &spdifout_clk_sel, + &spdifout_clk_div, + &spdifout_clk, + &spdifin_clk_sel, + &spdifin_clk_div, + &spdifin_clk, + &pdm_dclk_sel, + &pdm_dclk_div, + &pdm_dclk, + &pdm_sysclk_sel, + &pdm_sysclk_div, + &pdm_sysclk, + &mst_a_sclk_pre_en, + &mst_b_sclk_pre_en, + &mst_c_sclk_pre_en, + &mst_d_sclk_pre_en, + &mst_e_sclk_pre_en, + &mst_f_sclk_pre_en, + &mst_a_sclk_div, + &mst_b_sclk_div, + &mst_c_sclk_div, + &mst_d_sclk_div, + &mst_e_sclk_div, + &mst_f_sclk_div, + &mst_a_sclk_post_en, + &mst_b_sclk_post_en, + &mst_c_sclk_post_en, + &mst_d_sclk_post_en, + &mst_e_sclk_post_en, + &mst_f_sclk_post_en, + &mst_a_sclk, + &mst_b_sclk, + &mst_c_sclk, + &mst_d_sclk, + &mst_e_sclk, + &mst_f_sclk, + &mst_a_lrclk_div, + &mst_b_lrclk_div, + &mst_c_lrclk_div, + &mst_d_lrclk_div, + &mst_e_lrclk_div, + &mst_f_lrclk_div, + &mst_a_lrclk, + &mst_b_lrclk, + &mst_c_lrclk, + &mst_d_lrclk, + &mst_e_lrclk, + &mst_f_lrclk, + &tdmin_a_sclk_sel, + &tdmin_b_sclk_sel, + &tdmin_c_sclk_sel, + &tdmin_lb_sclk_sel, + &tdmout_a_sclk_sel, + &tdmout_b_sclk_sel, + &tdmout_c_sclk_sel, + &tdmin_a_sclk_pre_en, + &tdmin_b_sclk_pre_en, + &tdmin_c_sclk_pre_en, + &tdmin_lb_sclk_pre_en, + &tdmout_a_sclk_pre_en, + &tdmout_b_sclk_pre_en, + &tdmout_c_sclk_pre_en, + &tdmin_a_sclk_post_en, + &tdmin_b_sclk_post_en, + &tdmin_c_sclk_post_en, + &tdmin_lb_sclk_post_en, + &tdmout_a_sclk_post_en, + &tdmout_b_sclk_post_en, + &tdmout_c_sclk_post_en, + &tdmin_a_sclk, + &tdmin_b_sclk, + &tdmin_c_sclk, + &tdmin_lb_sclk, + &tdmout_a_sclk, + &tdmout_b_sclk, + &tdmout_c_sclk, + &tdmin_a_lrclk, + &tdmin_b_lrclk, + &tdmin_c_lrclk, + &tdmin_lb_lrclk, + &tdmout_a_lrclk, + &tdmout_b_lrclk, + &tdmout_c_lrclk, +}; + +static struct clk_regmap *const g12a_clk_regmaps[] = { + &ddr_arb, + &pdm, + &tdmin_a, + &tdmin_b, + &tdmin_c, + &tdmin_lb, + &tdmout_a, + &tdmout_b, + &tdmout_c, + &frddr_a, + &frddr_b, + &frddr_c, + &toddr_a, + &toddr_b, + &toddr_c, + &loopback, + &spdifin, + &spdifout, + &resample, + &power_detect, &spdifout_b, &mst_a_mclk_sel, &mst_b_mclk_sel, @@ -1713,8 +1832,8 @@ }; static const struct audioclk_data g12a_audioclk_data = { - .regmap_clks = axg_clk_regmaps, - .regmap_clk_num = ARRAY_SIZE(axg_clk_regmaps), + .regmap_clks = g12a_clk_regmaps, + .regmap_clk_num = ARRAY_SIZE(g12a_clk_regmaps), .hw_onecell_data = &g12a_audio_hw_onecell_data, .reset_offset = AUDIO_SW_RESET, .reset_num = 26, --- linux-azure-5.8-5.8.0.orig/drivers/clk/meson/clk-pll.c +++ linux-azure-5.8-5.8.0/drivers/clk/meson/clk-pll.c @@ -365,13 +365,14 @@ { struct clk_regmap *clk = to_clk_regmap(hw); struct meson_clk_pll_data *pll = meson_clk_pll_data(clk); - unsigned int enabled, m, n, frac = 0, ret; + unsigned int enabled, m, n, frac = 0; unsigned long old_rate; + int ret; if (parent_rate == 0 || rate == 0) return -EINVAL; - old_rate = rate; + old_rate = clk_hw_get_rate(hw); ret = meson_clk_get_pll_settings(rate, parent_rate, &m, &n, pll); if (ret) @@ -393,7 +394,8 @@ if (!enabled) return 0; - if (meson_clk_pll_enable(hw)) { + ret = meson_clk_pll_enable(hw); + if (ret) { pr_warn("%s: pll did not lock, trying to restore old rate %lu\n", __func__, old_rate); /* @@ -405,7 +407,7 @@ meson_clk_pll_set_rate(hw, old_rate, parent_rate); } - return 0; + return ret; } /* --- linux-azure-5.8-5.8.0.orig/drivers/clk/meson/g12a.c +++ linux-azure-5.8-5.8.0/drivers/clk/meson/g12a.c @@ -298,6 +298,17 @@ &g12a_fclk_div2_div.hw }, .num_parents = 1, + /* + * Similar to fclk_div3, it seems that this clock is used by + * the resident firmware and is required by the platform to + * operate correctly. + * Until the following condition are met, we need this clock to + * be marked as critical: + * a) Mark the clock used by a firmware resource, if possible + * b) CCF has a clock hand-off mechanism to make the sure the + * clock stays on until the proper driver comes along + */ + .flags = CLK_IS_CRITICAL, }, }; --- linux-azure-5.8-5.8.0.orig/drivers/clk/mmp/clk-audio.c +++ linux-azure-5.8-5.8.0/drivers/clk/mmp/clk-audio.c @@ -392,7 +392,8 @@ return 0; } -static int __maybe_unused mmp2_audio_clk_suspend(struct device *dev) +#ifdef CONFIG_PM +static int mmp2_audio_clk_suspend(struct device *dev) { struct mmp2_audio_clk *priv = dev_get_drvdata(dev); @@ -404,7 +405,7 @@ return 0; } -static int __maybe_unused mmp2_audio_clk_resume(struct device *dev) +static int mmp2_audio_clk_resume(struct device *dev) { struct mmp2_audio_clk *priv = dev_get_drvdata(dev); @@ -415,6 +416,7 @@ return 0; } +#endif static const struct dev_pm_ops mmp2_audio_clk_pm_ops = { SET_RUNTIME_PM_OPS(mmp2_audio_clk_suspend, mmp2_audio_clk_resume, NULL) --- linux-azure-5.8-5.8.0.orig/drivers/clk/mvebu/armada-37xx-xtal.c +++ linux-azure-5.8-5.8.0/drivers/clk/mvebu/armada-37xx-xtal.c @@ -13,8 +13,8 @@ #include #include -#define NB_GPIO1_LATCH 0xC -#define XTAL_MODE BIT(31) +#define NB_GPIO1_LATCH 0x8 +#define XTAL_MODE BIT(9) static int armada_3700_xtal_clock_probe(struct platform_device *pdev) { --- linux-azure-5.8-5.8.0.orig/drivers/clk/qcom/clk-alpha-pll.c +++ linux-azure-5.8-5.8.0/drivers/clk/qcom/clk-alpha-pll.c @@ -56,7 +56,6 @@ #define PLL_STATUS(p) ((p)->offset + (p)->regs[PLL_OFF_STATUS]) #define PLL_OPMODE(p) ((p)->offset + (p)->regs[PLL_OFF_OPMODE]) #define PLL_FRAC(p) ((p)->offset + (p)->regs[PLL_OFF_FRAC]) -#define PLL_CAL_VAL(p) ((p)->offset + (p)->regs[PLL_OFF_CAL_VAL]) const u8 clk_alpha_pll_regs[][PLL_OFF_MAX_REGS] = { [CLK_ALPHA_PLL_TYPE_DEFAULT] = { @@ -115,7 +114,6 @@ [PLL_OFF_STATUS] = 0x30, [PLL_OFF_OPMODE] = 0x38, [PLL_OFF_ALPHA_VAL] = 0x40, - [PLL_OFF_CAL_VAL] = 0x44, }, [CLK_ALPHA_PLL_TYPE_LUCID] = { [PLL_OFF_L_VAL] = 0x04, --- linux-azure-5.8-5.8.0.orig/drivers/clk/qcom/gcc-msm8998.c +++ linux-azure-5.8-5.8.0/drivers/clk/qcom/gcc-msm8998.c @@ -135,7 +135,7 @@ static struct clk_alpha_pll gpll0 = { .offset = 0x0, - .regs = clk_alpha_pll_regs[CLK_ALPHA_PLL_TYPE_DEFAULT], + .regs = clk_alpha_pll_regs[CLK_ALPHA_PLL_TYPE_FABIA], .vco_table = fabia_vco, .num_vco = ARRAY_SIZE(fabia_vco), .clkr = { @@ -145,58 +145,58 @@ .name = "gpll0", .parent_names = (const char *[]){ "xo" }, .num_parents = 1, - .ops = &clk_alpha_pll_ops, + .ops = &clk_alpha_pll_fixed_fabia_ops, } }, }; static struct clk_alpha_pll_postdiv gpll0_out_even = { .offset = 0x0, - .regs = clk_alpha_pll_regs[CLK_ALPHA_PLL_TYPE_DEFAULT], + .regs = clk_alpha_pll_regs[CLK_ALPHA_PLL_TYPE_FABIA], .clkr.hw.init = &(struct clk_init_data){ .name = "gpll0_out_even", .parent_names = (const char *[]){ "gpll0" }, .num_parents = 1, - .ops = &clk_alpha_pll_postdiv_ops, + .ops = &clk_alpha_pll_postdiv_fabia_ops, }, }; static struct clk_alpha_pll_postdiv gpll0_out_main = { .offset = 0x0, - .regs = clk_alpha_pll_regs[CLK_ALPHA_PLL_TYPE_DEFAULT], + .regs = clk_alpha_pll_regs[CLK_ALPHA_PLL_TYPE_FABIA], .clkr.hw.init = &(struct clk_init_data){ .name = "gpll0_out_main", .parent_names = (const char *[]){ "gpll0" }, .num_parents = 1, - .ops = &clk_alpha_pll_postdiv_ops, + .ops = &clk_alpha_pll_postdiv_fabia_ops, }, }; static struct clk_alpha_pll_postdiv gpll0_out_odd = { .offset = 0x0, - .regs = clk_alpha_pll_regs[CLK_ALPHA_PLL_TYPE_DEFAULT], + .regs = clk_alpha_pll_regs[CLK_ALPHA_PLL_TYPE_FABIA], .clkr.hw.init = &(struct clk_init_data){ .name = "gpll0_out_odd", .parent_names = (const char *[]){ "gpll0" }, .num_parents = 1, - .ops = &clk_alpha_pll_postdiv_ops, + .ops = &clk_alpha_pll_postdiv_fabia_ops, }, }; static struct clk_alpha_pll_postdiv gpll0_out_test = { .offset = 0x0, - .regs = clk_alpha_pll_regs[CLK_ALPHA_PLL_TYPE_DEFAULT], + .regs = clk_alpha_pll_regs[CLK_ALPHA_PLL_TYPE_FABIA], .clkr.hw.init = &(struct clk_init_data){ .name = "gpll0_out_test", .parent_names = (const char *[]){ "gpll0" }, .num_parents = 1, - .ops = &clk_alpha_pll_postdiv_ops, + .ops = &clk_alpha_pll_postdiv_fabia_ops, }, }; static struct clk_alpha_pll gpll1 = { .offset = 0x1000, - .regs = clk_alpha_pll_regs[CLK_ALPHA_PLL_TYPE_DEFAULT], + .regs = clk_alpha_pll_regs[CLK_ALPHA_PLL_TYPE_FABIA], .vco_table = fabia_vco, .num_vco = ARRAY_SIZE(fabia_vco), .clkr = { @@ -206,58 +206,58 @@ .name = "gpll1", .parent_names = (const char *[]){ "xo" }, .num_parents = 1, - .ops = &clk_alpha_pll_ops, + .ops = &clk_alpha_pll_fixed_fabia_ops, } }, }; static struct clk_alpha_pll_postdiv gpll1_out_even = { .offset = 0x1000, - .regs = clk_alpha_pll_regs[CLK_ALPHA_PLL_TYPE_DEFAULT], + .regs = clk_alpha_pll_regs[CLK_ALPHA_PLL_TYPE_FABIA], .clkr.hw.init = &(struct clk_init_data){ .name = "gpll1_out_even", .parent_names = (const char *[]){ "gpll1" }, .num_parents = 1, - .ops = &clk_alpha_pll_postdiv_ops, + .ops = &clk_alpha_pll_postdiv_fabia_ops, }, }; static struct clk_alpha_pll_postdiv gpll1_out_main = { .offset = 0x1000, - .regs = clk_alpha_pll_regs[CLK_ALPHA_PLL_TYPE_DEFAULT], + .regs = clk_alpha_pll_regs[CLK_ALPHA_PLL_TYPE_FABIA], .clkr.hw.init = &(struct clk_init_data){ .name = "gpll1_out_main", .parent_names = (const char *[]){ "gpll1" }, .num_parents = 1, - .ops = &clk_alpha_pll_postdiv_ops, + .ops = &clk_alpha_pll_postdiv_fabia_ops, }, }; static struct clk_alpha_pll_postdiv gpll1_out_odd = { .offset = 0x1000, - .regs = clk_alpha_pll_regs[CLK_ALPHA_PLL_TYPE_DEFAULT], + .regs = clk_alpha_pll_regs[CLK_ALPHA_PLL_TYPE_FABIA], .clkr.hw.init = &(struct clk_init_data){ .name = "gpll1_out_odd", .parent_names = (const char *[]){ "gpll1" }, .num_parents = 1, - .ops = &clk_alpha_pll_postdiv_ops, + .ops = &clk_alpha_pll_postdiv_fabia_ops, }, }; static struct clk_alpha_pll_postdiv gpll1_out_test = { .offset = 0x1000, - .regs = clk_alpha_pll_regs[CLK_ALPHA_PLL_TYPE_DEFAULT], + .regs = clk_alpha_pll_regs[CLK_ALPHA_PLL_TYPE_FABIA], .clkr.hw.init = &(struct clk_init_data){ .name = "gpll1_out_test", .parent_names = (const char *[]){ "gpll1" }, .num_parents = 1, - .ops = &clk_alpha_pll_postdiv_ops, + .ops = &clk_alpha_pll_postdiv_fabia_ops, }, }; static struct clk_alpha_pll gpll2 = { .offset = 0x2000, - .regs = clk_alpha_pll_regs[CLK_ALPHA_PLL_TYPE_DEFAULT], + .regs = clk_alpha_pll_regs[CLK_ALPHA_PLL_TYPE_FABIA], .vco_table = fabia_vco, .num_vco = ARRAY_SIZE(fabia_vco), .clkr = { @@ -267,58 +267,58 @@ .name = "gpll2", .parent_names = (const char *[]){ "xo" }, .num_parents = 1, - .ops = &clk_alpha_pll_ops, + .ops = &clk_alpha_pll_fixed_fabia_ops, } }, }; static struct clk_alpha_pll_postdiv gpll2_out_even = { .offset = 0x2000, - .regs = clk_alpha_pll_regs[CLK_ALPHA_PLL_TYPE_DEFAULT], + .regs = clk_alpha_pll_regs[CLK_ALPHA_PLL_TYPE_FABIA], .clkr.hw.init = &(struct clk_init_data){ .name = "gpll2_out_even", .parent_names = (const char *[]){ "gpll2" }, .num_parents = 1, - .ops = &clk_alpha_pll_postdiv_ops, + .ops = &clk_alpha_pll_postdiv_fabia_ops, }, }; static struct clk_alpha_pll_postdiv gpll2_out_main = { .offset = 0x2000, - .regs = clk_alpha_pll_regs[CLK_ALPHA_PLL_TYPE_DEFAULT], + .regs = clk_alpha_pll_regs[CLK_ALPHA_PLL_TYPE_FABIA], .clkr.hw.init = &(struct clk_init_data){ .name = "gpll2_out_main", .parent_names = (const char *[]){ "gpll2" }, .num_parents = 1, - .ops = &clk_alpha_pll_postdiv_ops, + .ops = &clk_alpha_pll_postdiv_fabia_ops, }, }; static struct clk_alpha_pll_postdiv gpll2_out_odd = { .offset = 0x2000, - .regs = clk_alpha_pll_regs[CLK_ALPHA_PLL_TYPE_DEFAULT], + .regs = clk_alpha_pll_regs[CLK_ALPHA_PLL_TYPE_FABIA], .clkr.hw.init = &(struct clk_init_data){ .name = "gpll2_out_odd", .parent_names = (const char *[]){ "gpll2" }, .num_parents = 1, - .ops = &clk_alpha_pll_postdiv_ops, + .ops = &clk_alpha_pll_postdiv_fabia_ops, }, }; static struct clk_alpha_pll_postdiv gpll2_out_test = { .offset = 0x2000, - .regs = clk_alpha_pll_regs[CLK_ALPHA_PLL_TYPE_DEFAULT], + .regs = clk_alpha_pll_regs[CLK_ALPHA_PLL_TYPE_FABIA], .clkr.hw.init = &(struct clk_init_data){ .name = "gpll2_out_test", .parent_names = (const char *[]){ "gpll2" }, .num_parents = 1, - .ops = &clk_alpha_pll_postdiv_ops, + .ops = &clk_alpha_pll_postdiv_fabia_ops, }, }; static struct clk_alpha_pll gpll3 = { .offset = 0x3000, - .regs = clk_alpha_pll_regs[CLK_ALPHA_PLL_TYPE_DEFAULT], + .regs = clk_alpha_pll_regs[CLK_ALPHA_PLL_TYPE_FABIA], .vco_table = fabia_vco, .num_vco = ARRAY_SIZE(fabia_vco), .clkr = { @@ -328,58 +328,58 @@ .name = "gpll3", .parent_names = (const char *[]){ "xo" }, .num_parents = 1, - .ops = &clk_alpha_pll_ops, + .ops = &clk_alpha_pll_fixed_fabia_ops, } }, }; static struct clk_alpha_pll_postdiv gpll3_out_even = { .offset = 0x3000, - .regs = clk_alpha_pll_regs[CLK_ALPHA_PLL_TYPE_DEFAULT], + .regs = clk_alpha_pll_regs[CLK_ALPHA_PLL_TYPE_FABIA], .clkr.hw.init = &(struct clk_init_data){ .name = "gpll3_out_even", .parent_names = (const char *[]){ "gpll3" }, .num_parents = 1, - .ops = &clk_alpha_pll_postdiv_ops, + .ops = &clk_alpha_pll_postdiv_fabia_ops, }, }; static struct clk_alpha_pll_postdiv gpll3_out_main = { .offset = 0x3000, - .regs = clk_alpha_pll_regs[CLK_ALPHA_PLL_TYPE_DEFAULT], + .regs = clk_alpha_pll_regs[CLK_ALPHA_PLL_TYPE_FABIA], .clkr.hw.init = &(struct clk_init_data){ .name = "gpll3_out_main", .parent_names = (const char *[]){ "gpll3" }, .num_parents = 1, - .ops = &clk_alpha_pll_postdiv_ops, + .ops = &clk_alpha_pll_postdiv_fabia_ops, }, }; static struct clk_alpha_pll_postdiv gpll3_out_odd = { .offset = 0x3000, - .regs = clk_alpha_pll_regs[CLK_ALPHA_PLL_TYPE_DEFAULT], + .regs = clk_alpha_pll_regs[CLK_ALPHA_PLL_TYPE_FABIA], .clkr.hw.init = &(struct clk_init_data){ .name = "gpll3_out_odd", .parent_names = (const char *[]){ "gpll3" }, .num_parents = 1, - .ops = &clk_alpha_pll_postdiv_ops, + .ops = &clk_alpha_pll_postdiv_fabia_ops, }, }; static struct clk_alpha_pll_postdiv gpll3_out_test = { .offset = 0x3000, - .regs = clk_alpha_pll_regs[CLK_ALPHA_PLL_TYPE_DEFAULT], + .regs = clk_alpha_pll_regs[CLK_ALPHA_PLL_TYPE_FABIA], .clkr.hw.init = &(struct clk_init_data){ .name = "gpll3_out_test", .parent_names = (const char *[]){ "gpll3" }, .num_parents = 1, - .ops = &clk_alpha_pll_postdiv_ops, + .ops = &clk_alpha_pll_postdiv_fabia_ops, }, }; static struct clk_alpha_pll gpll4 = { .offset = 0x77000, - .regs = clk_alpha_pll_regs[CLK_ALPHA_PLL_TYPE_DEFAULT], + .regs = clk_alpha_pll_regs[CLK_ALPHA_PLL_TYPE_FABIA], .vco_table = fabia_vco, .num_vco = ARRAY_SIZE(fabia_vco), .clkr = { @@ -389,52 +389,52 @@ .name = "gpll4", .parent_names = (const char *[]){ "xo" }, .num_parents = 1, - .ops = &clk_alpha_pll_ops, + .ops = &clk_alpha_pll_fixed_fabia_ops, } }, }; static struct clk_alpha_pll_postdiv gpll4_out_even = { .offset = 0x77000, - .regs = clk_alpha_pll_regs[CLK_ALPHA_PLL_TYPE_DEFAULT], + .regs = clk_alpha_pll_regs[CLK_ALPHA_PLL_TYPE_FABIA], .clkr.hw.init = &(struct clk_init_data){ .name = "gpll4_out_even", .parent_names = (const char *[]){ "gpll4" }, .num_parents = 1, - .ops = &clk_alpha_pll_postdiv_ops, + .ops = &clk_alpha_pll_postdiv_fabia_ops, }, }; static struct clk_alpha_pll_postdiv gpll4_out_main = { .offset = 0x77000, - .regs = clk_alpha_pll_regs[CLK_ALPHA_PLL_TYPE_DEFAULT], + .regs = clk_alpha_pll_regs[CLK_ALPHA_PLL_TYPE_FABIA], .clkr.hw.init = &(struct clk_init_data){ .name = "gpll4_out_main", .parent_names = (const char *[]){ "gpll4" }, .num_parents = 1, - .ops = &clk_alpha_pll_postdiv_ops, + .ops = &clk_alpha_pll_postdiv_fabia_ops, }, }; static struct clk_alpha_pll_postdiv gpll4_out_odd = { .offset = 0x77000, - .regs = clk_alpha_pll_regs[CLK_ALPHA_PLL_TYPE_DEFAULT], + .regs = clk_alpha_pll_regs[CLK_ALPHA_PLL_TYPE_FABIA], .clkr.hw.init = &(struct clk_init_data){ .name = "gpll4_out_odd", .parent_names = (const char *[]){ "gpll4" }, .num_parents = 1, - .ops = &clk_alpha_pll_postdiv_ops, + .ops = &clk_alpha_pll_postdiv_fabia_ops, }, }; static struct clk_alpha_pll_postdiv gpll4_out_test = { .offset = 0x77000, - .regs = clk_alpha_pll_regs[CLK_ALPHA_PLL_TYPE_DEFAULT], + .regs = clk_alpha_pll_regs[CLK_ALPHA_PLL_TYPE_FABIA], .clkr.hw.init = &(struct clk_init_data){ .name = "gpll4_out_test", .parent_names = (const char *[]){ "gpll4" }, .num_parents = 1, - .ops = &clk_alpha_pll_postdiv_ops, + .ops = &clk_alpha_pll_postdiv_fabia_ops, }, }; --- linux-azure-5.8-5.8.0.orig/drivers/clk/qcom/gcc-sc7180.c +++ linux-azure-5.8-5.8.0/drivers/clk/qcom/gcc-sc7180.c @@ -642,7 +642,7 @@ .name = "gcc_sdcc1_ice_core_clk_src", .parent_data = gcc_parent_data_0, .num_parents = 4, - .ops = &clk_rcg2_ops, + .ops = &clk_rcg2_floor_ops, }, }; @@ -666,7 +666,7 @@ .name = "gcc_sdcc2_apps_clk_src", .parent_data = gcc_parent_data_5, .num_parents = 5, - .ops = &clk_rcg2_ops, + .ops = &clk_rcg2_floor_ops, }, }; @@ -1061,7 +1061,7 @@ .hw = &gpll0.clkr.hw, }, .num_parents = 1, - .ops = &clk_branch2_ops, + .ops = &clk_branch2_aon_ops, }, }, }; --- linux-azure-5.8-5.8.0.orig/drivers/clk/qcom/gcc-sdm660.c +++ linux-azure-5.8-5.8.0/drivers/clk/qcom/gcc-sdm660.c @@ -666,7 +666,7 @@ .cmd_rcgr = 0x48044, .mnd_width = 0, .hid_width = 5, - .parent_map = gcc_parent_map_xo_gpll0_gpll0_early_div, + .parent_map = gcc_parent_map_xo_gpll0, .freq_tbl = ftbl_hmss_rbcpr_clk_src, .clkr.hw.init = &(struct clk_init_data){ .name = "hmss_rbcpr_clk_src", @@ -1715,6 +1715,9 @@ static struct clk_branch gcc_mss_mnoc_bimc_axi_clk = { .halt_reg = 0x8a004, + .halt_check = BRANCH_HALT, + .hwcg_reg = 0x8a004, + .hwcg_bit = 1, .clkr = { .enable_reg = 0x8a004, .enable_mask = BIT(0), --- linux-azure-5.8-5.8.0.orig/drivers/clk/qcom/gcc-sdm845.c +++ linux-azure-5.8-5.8.0/drivers/clk/qcom/gcc-sdm845.c @@ -1,6 +1,6 @@ // SPDX-License-Identifier: GPL-2.0 /* - * Copyright (c) 2018, The Linux Foundation. All rights reserved. + * Copyright (c) 2018, 2020, The Linux Foundation. All rights reserved. */ #include @@ -1344,7 +1344,7 @@ "gpll0", }, .num_parents = 1, - .ops = &clk_branch2_ops, + .ops = &clk_branch2_aon_ops, }, }, }; --- linux-azure-5.8-5.8.0.orig/drivers/clk/qcom/gcc-sm8150.c +++ linux-azure-5.8-5.8.0/drivers/clk/qcom/gcc-sm8150.c @@ -1617,6 +1617,7 @@ }; static struct clk_branch gcc_gpu_gpll0_clk_src = { + .halt_check = BRANCH_HALT_SKIP, .clkr = { .enable_reg = 0x52004, .enable_mask = BIT(15), @@ -1632,13 +1633,14 @@ }; static struct clk_branch gcc_gpu_gpll0_div_clk_src = { + .halt_check = BRANCH_HALT_SKIP, .clkr = { .enable_reg = 0x52004, .enable_mask = BIT(16), .hw.init = &(struct clk_init_data){ .name = "gcc_gpu_gpll0_div_clk_src", .parent_hws = (const struct clk_hw *[]){ - &gcc_gpu_gpll0_clk_src.clkr.hw }, + &gpll0_out_even.clkr.hw }, .num_parents = 1, .flags = CLK_SET_RATE_PARENT, .ops = &clk_branch2_ops, @@ -1729,6 +1731,7 @@ }; static struct clk_branch gcc_npu_gpll0_clk_src = { + .halt_check = BRANCH_HALT_SKIP, .clkr = { .enable_reg = 0x52004, .enable_mask = BIT(18), @@ -1744,13 +1747,14 @@ }; static struct clk_branch gcc_npu_gpll0_div_clk_src = { + .halt_check = BRANCH_HALT_SKIP, .clkr = { .enable_reg = 0x52004, .enable_mask = BIT(19), .hw.init = &(struct clk_init_data){ .name = "gcc_npu_gpll0_div_clk_src", .parent_hws = (const struct clk_hw *[]){ - &gcc_npu_gpll0_clk_src.clkr.hw }, + &gpll0_out_even.clkr.hw }, .num_parents = 1, .flags = CLK_SET_RATE_PARENT, .ops = &clk_branch2_ops, --- linux-azure-5.8-5.8.0.orig/drivers/clk/qcom/gcc-sm8250.c +++ linux-azure-5.8-5.8.0/drivers/clk/qcom/gcc-sm8250.c @@ -722,7 +722,7 @@ .name = "gcc_sdcc2_apps_clk_src", .parent_data = gcc_parent_data_4, .num_parents = 5, - .ops = &clk_rcg2_ops, + .ops = &clk_rcg2_floor_ops, }, }; @@ -745,7 +745,7 @@ .name = "gcc_sdcc4_apps_clk_src", .parent_data = gcc_parent_data_0, .num_parents = 3, - .ops = &clk_rcg2_ops, + .ops = &clk_rcg2_floor_ops, }, }; --- linux-azure-5.8-5.8.0.orig/drivers/clk/renesas/r9a06g032-clocks.c +++ linux-azure-5.8-5.8.0/drivers/clk/renesas/r9a06g032-clocks.c @@ -55,7 +55,7 @@ u16 sel, g1, r1, g2, r2; } dual; }; -} __packed; +}; #define I_GATE(_clk, _rst, _rdy, _midle, _scon, _mirack, _mistat) \ { .gate = _clk, .reset = _rst, \ --- linux-azure-5.8-5.8.0.orig/drivers/clk/rockchip/clk-half-divider.c +++ linux-azure-5.8-5.8.0/drivers/clk/rockchip/clk-half-divider.c @@ -166,7 +166,7 @@ unsigned long flags, spinlock_t *lock) { - struct clk *clk; + struct clk *clk = ERR_PTR(-ENOMEM); struct clk_mux *mux = NULL; struct clk_gate *gate = NULL; struct clk_divider *div = NULL; --- linux-azure-5.8-5.8.0.orig/drivers/clk/rockchip/clk-rk3228.c +++ linux-azure-5.8-5.8.0/drivers/clk/rockchip/clk-rk3228.c @@ -137,7 +137,7 @@ PNAME(mux_hdmiphy_p) = { "hdmiphy_phy", "xin24m" }; PNAME(mux_aclk_cpu_src_p) = { "cpll_aclk_cpu", "gpll_aclk_cpu", "hdmiphy_aclk_cpu" }; -PNAME(mux_pll_src_4plls_p) = { "cpll", "gpll", "hdmiphy" "usb480m" }; +PNAME(mux_pll_src_4plls_p) = { "cpll", "gpll", "hdmiphy", "usb480m" }; PNAME(mux_pll_src_3plls_p) = { "cpll", "gpll", "hdmiphy" }; PNAME(mux_pll_src_2plls_p) = { "cpll", "gpll" }; PNAME(mux_sclk_hdmi_cec_p) = { "cpll", "gpll", "xin24m" }; --- linux-azure-5.8-5.8.0.orig/drivers/clk/samsung/clk-exynos4.c +++ linux-azure-5.8-5.8.0/drivers/clk/samsung/clk-exynos4.c @@ -927,7 +927,7 @@ GATE(CLK_PCIE, "pcie", "aclk133", GATE_IP_FSYS, 14, 0, 0), GATE(CLK_SMMU_PCIE, "smmu_pcie", "aclk133", GATE_IP_FSYS, 18, 0, 0), GATE(CLK_MODEMIF, "modemif", "aclk100", GATE_IP_PERIL, 28, 0, 0), - GATE(CLK_CHIPID, "chipid", "aclk100", E4210_GATE_IP_PERIR, 0, 0, 0), + GATE(CLK_CHIPID, "chipid", "aclk100", E4210_GATE_IP_PERIR, 0, CLK_IGNORE_UNUSED, 0), GATE(CLK_SYSREG, "sysreg", "aclk100", E4210_GATE_IP_PERIR, 0, CLK_IGNORE_UNUSED, 0), GATE(CLK_HDMI_CEC, "hdmi_cec", "aclk100", E4210_GATE_IP_PERIR, 11, 0, @@ -969,7 +969,7 @@ 0), GATE(CLK_TSADC, "tsadc", "aclk133", E4X12_GATE_BUS_FSYS1, 16, 0, 0), GATE(CLK_MIPI_HSI, "mipi_hsi", "aclk133", GATE_IP_FSYS, 10, 0, 0), - GATE(CLK_CHIPID, "chipid", "aclk100", E4X12_GATE_IP_PERIR, 0, 0, 0), + GATE(CLK_CHIPID, "chipid", "aclk100", E4X12_GATE_IP_PERIR, 0, CLK_IGNORE_UNUSED, 0), GATE(CLK_SYSREG, "sysreg", "aclk100", E4X12_GATE_IP_PERIR, 1, CLK_IGNORE_UNUSED, 0), GATE(CLK_HDMI_CEC, "hdmi_cec", "aclk100", E4X12_GATE_IP_PERIR, 11, 0, --- linux-azure-5.8-5.8.0.orig/drivers/clk/samsung/clk-exynos5420.c +++ linux-azure-5.8-5.8.0/drivers/clk/samsung/clk-exynos5420.c @@ -1655,6 +1655,11 @@ * main G3D clock enablement status. */ clk_prepare_enable(__clk_lookup("mout_sw_aclk_g3d")); + /* + * Keep top BPLL mux enabled permanently to ensure that DRAM operates + * properly. + */ + clk_prepare_enable(__clk_lookup("mout_bpll")); samsung_clk_of_add_provider(np, ctx); } --- linux-azure-5.8-5.8.0.orig/drivers/clk/sirf/clk-atlas6.c +++ linux-azure-5.8-5.8.0/drivers/clk/sirf/clk-atlas6.c @@ -135,7 +135,7 @@ for (i = pll1; i < maxclk; i++) { atlas6_clks[i] = clk_register(NULL, atlas6_clk_hw_array[i]); - BUG_ON(!atlas6_clks[i]); + BUG_ON(IS_ERR(atlas6_clks[i])); } clk_register_clkdev(atlas6_clks[cpu], NULL, "cpu"); clk_register_clkdev(atlas6_clks[io], NULL, "io"); --- linux-azure-5.8-5.8.0.orig/drivers/clk/socfpga/clk-s10.c +++ linux-azure-5.8-5.8.0/drivers/clk/socfpga/clk-s10.c @@ -209,7 +209,7 @@ { STRATIX10_EMAC_B_FREE_CLK, "emacb_free_clk", NULL, emacb_free_mux, ARRAY_SIZE(emacb_free_mux), 0, 0, 2, 0xB0, 1}, { STRATIX10_EMAC_PTP_FREE_CLK, "emac_ptp_free_clk", NULL, emac_ptp_free_mux, - ARRAY_SIZE(emac_ptp_free_mux), 0, 0, 4, 0xB0, 2}, + ARRAY_SIZE(emac_ptp_free_mux), 0, 0, 2, 0xB0, 2}, { STRATIX10_GPIO_DB_FREE_CLK, "gpio_db_free_clk", NULL, gpio_db_free_mux, ARRAY_SIZE(gpio_db_free_mux), 0, 0, 0, 0xB0, 3}, { STRATIX10_SDMMC_FREE_CLK, "sdmmc_free_clk", NULL, sdmmc_free_mux, --- linux-azure-5.8-5.8.0.orig/drivers/clk/sunxi-ng/ccu-sun50i-a64.c +++ linux-azure-5.8-5.8.0/drivers/clk/sunxi-ng/ccu-sun50i-a64.c @@ -389,6 +389,7 @@ { .val = 1, .div = 2 }, { .val = 2, .div = 4 }, { .val = 3, .div = 6 }, + { /* Sentinel */ }, }; static const char * const ths_parents[] = { "osc24M" }; static struct ccu_div ths_clk = { --- linux-azure-5.8-5.8.0.orig/drivers/clk/sunxi-ng/ccu-sun50i-h6.c +++ linux-azure-5.8-5.8.0/drivers/clk/sunxi-ng/ccu-sun50i-h6.c @@ -237,7 +237,7 @@ static SUNXI_CCU_MP_WITH_MUX(psi_ahb1_ahb2_clk, "psi-ahb1-ahb2", psi_ahb1_ahb2_parents, 0x510, - 0, 5, /* M */ + 0, 2, /* M */ 8, 2, /* P */ 24, 2, /* mux */ 0); @@ -246,19 +246,19 @@ "psi-ahb1-ahb2", "pll-periph0" }; static SUNXI_CCU_MP_WITH_MUX(ahb3_clk, "ahb3", ahb3_apb1_apb2_parents, 0x51c, - 0, 5, /* M */ + 0, 2, /* M */ 8, 2, /* P */ 24, 2, /* mux */ 0); static SUNXI_CCU_MP_WITH_MUX(apb1_clk, "apb1", ahb3_apb1_apb2_parents, 0x520, - 0, 5, /* M */ + 0, 2, /* M */ 8, 2, /* P */ 24, 2, /* mux */ 0); static SUNXI_CCU_MP_WITH_MUX(apb2_clk, "apb2", ahb3_apb1_apb2_parents, 0x524, - 0, 5, /* M */ + 0, 2, /* M */ 8, 2, /* P */ 24, 2, /* mux */ 0); @@ -682,7 +682,7 @@ .common = { .reg = 0xb10, - .features = CCU_FEATURE_VARIABLE_PREDIV, + .features = CCU_FEATURE_FIXED_PREDIV, .hw.init = CLK_HW_INIT_PARENTS("hdmi-cec", hdmi_cec_parents, &ccu_mux_ops, --- linux-azure-5.8-5.8.0.orig/drivers/clk/sunxi-ng/ccu-sun8i-h3.c +++ linux-azure-5.8-5.8.0/drivers/clk/sunxi-ng/ccu-sun8i-h3.c @@ -322,6 +322,7 @@ { .val = 1, .div = 2 }, { .val = 2, .div = 4 }, { .val = 3, .div = 6 }, + { /* Sentinel */ }, }; static SUNXI_CCU_DIV_TABLE_WITH_GATE(ths_clk, "ths", "osc24M", 0x074, 0, 2, ths_div_table, BIT(31), 0); --- linux-azure-5.8-5.8.0.orig/drivers/clk/sunxi-ng/ccu_mp.c +++ linux-azure-5.8-5.8.0/drivers/clk/sunxi-ng/ccu_mp.c @@ -108,7 +108,7 @@ max_m = cmp->m.max ?: 1 << cmp->m.width; max_p = cmp->p.max ?: 1 << ((1 << cmp->p.width) - 1); - if (!(clk_hw_get_flags(hw) & CLK_SET_RATE_PARENT)) { + if (!clk_hw_can_set_rate_parent(&cmp->common.hw)) { ccu_mp_find_best(*parent_rate, rate, max_m, max_p, &m, &p); rate = *parent_rate / p / m; } else { --- linux-azure-5.8-5.8.0.orig/drivers/clk/tegra/clk-dfll.c +++ linux-azure-5.8-5.8.0/drivers/clk/tegra/clk-dfll.c @@ -1856,13 +1856,13 @@ &td->reg_init_uV); if (!ret) { dev_err(td->dev, "couldn't get initialized voltage\n"); - return ret; + return -EINVAL; } ret = read_dt_param(td, "nvidia,pwm-period-nanoseconds", &pwm_period); if (!ret) { dev_err(td->dev, "couldn't get PWM period\n"); - return ret; + return -EINVAL; } td->pwm_rate = (NSEC_PER_SEC / pwm_period) * (MAX_DFLL_VOLTAGES - 1); --- linux-azure-5.8-5.8.0.orig/drivers/clk/tegra/clk-id.h +++ linux-azure-5.8-5.8.0/drivers/clk/tegra/clk-id.h @@ -227,6 +227,7 @@ tegra_clk_sdmmc4, tegra_clk_sdmmc4_8, tegra_clk_se, + tegra_clk_se_10, tegra_clk_soc_therm, tegra_clk_soc_therm_8, tegra_clk_sor0, --- linux-azure-5.8-5.8.0.orig/drivers/clk/tegra/clk-pll.c +++ linux-azure-5.8-5.8.0/drivers/clk/tegra/clk-pll.c @@ -1601,9 +1601,6 @@ unsigned long flags = 0; unsigned long input_rate; - if (clk_pll_is_enabled(hw)) - return 0; - input_rate = clk_hw_get_rate(clk_hw_get_parent(hw)); if (_get_table_rate(hw, &sel, pll->params->fixed_rate, input_rate)) --- linux-azure-5.8-5.8.0.orig/drivers/clk/tegra/clk-tegra-periph.c +++ linux-azure-5.8-5.8.0/drivers/clk/tegra/clk-tegra-periph.c @@ -630,7 +630,7 @@ INT8("host1x", mux_pllm_pllc2_c_c3_pllp_plla, CLK_SOURCE_HOST1X, 28, 0, tegra_clk_host1x_8), INT8("host1x", mux_pllc4_out1_pllc_pllc4_out2_pllp_clkm_plla_pllc4_out0, CLK_SOURCE_HOST1X, 28, 0, tegra_clk_host1x_9), INT8("se", mux_pllp_pllc2_c_c3_pllm_clkm, CLK_SOURCE_SE, 127, TEGRA_PERIPH_ON_APB, tegra_clk_se), - INT8("se", mux_pllp_pllc2_c_c3_clkm, CLK_SOURCE_SE, 127, TEGRA_PERIPH_ON_APB, tegra_clk_se), + INT8("se", mux_pllp_pllc2_c_c3_clkm, CLK_SOURCE_SE, 127, TEGRA_PERIPH_ON_APB, tegra_clk_se_10), INT8("2d", mux_pllm_pllc2_c_c3_pllp_plla, CLK_SOURCE_2D, 21, 0, tegra_clk_gr2d_8), INT8("3d", mux_pllm_pllc2_c_c3_pllp_plla, CLK_SOURCE_3D, 24, 0, tegra_clk_gr3d_8), INT8("vic03", mux_pllm_pllc_pllp_plla_pllc2_c3_clkm, CLK_SOURCE_VIC03, 178, 0, tegra_clk_vic03), --- linux-azure-5.8-5.8.0.orig/drivers/clk/tegra/clk-tegra210-emc.c +++ linux-azure-5.8-5.8.0/drivers/clk/tegra/clk-tegra210-emc.c @@ -12,6 +12,8 @@ #include #include +#include "clk.h" + #define CLK_SOURCE_EMC 0x19c #define CLK_SOURCE_EMC_2X_CLK_SRC GENMASK(31, 29) #define CLK_SOURCE_EMC_MC_EMC_SAME_FREQ BIT(16) --- linux-azure-5.8-5.8.0.orig/drivers/clk/tegra/clk-tegra30.c +++ linux-azure-5.8-5.8.0/drivers/clk/tegra/clk-tegra30.c @@ -1256,6 +1256,8 @@ { TEGRA30_CLK_I2S3_SYNC, TEGRA30_CLK_CLK_MAX, 24000000, 0 }, { TEGRA30_CLK_I2S4_SYNC, TEGRA30_CLK_CLK_MAX, 24000000, 0 }, { TEGRA30_CLK_VIMCLK_SYNC, TEGRA30_CLK_CLK_MAX, 24000000, 0 }, + { TEGRA30_CLK_HDA, TEGRA30_CLK_PLL_P, 102000000, 0 }, + { TEGRA30_CLK_HDA2CODEC_2X, TEGRA30_CLK_PLL_P, 48000000, 0 }, /* must be the last entry */ { TEGRA30_CLK_CLK_MAX, TEGRA30_CLK_CLK_MAX, 0, 0 }, }; --- linux-azure-5.8-5.8.0.orig/drivers/clk/ti/clockdomain.c +++ linux-azure-5.8-5.8.0/drivers/clk/ti/clockdomain.c @@ -148,10 +148,12 @@ if (!omap2_clk_is_hw_omap(clk_hw)) { pr_warn("can't setup clkdm for basic clk %s\n", __clk_get_name(clk)); + clk_put(clk); continue; } to_clk_hw_omap(clk_hw)->clkdm_name = clkdm_name; omap2_init_clk_clkdm(clk_hw); + clk_put(clk); } } --- linux-azure-5.8-5.8.0.orig/drivers/clk/ti/fapll.c +++ linux-azure-5.8-5.8.0/drivers/clk/ti/fapll.c @@ -498,6 +498,7 @@ { struct clk_init_data *init; struct fapll_synth *synth; + struct clk *clk = ERR_PTR(-ENOMEM); init = kzalloc(sizeof(*init), GFP_KERNEL); if (!init) @@ -520,13 +521,19 @@ synth->hw.init = init; synth->clk_pll = pll_clk; - return clk_register(NULL, &synth->hw); + clk = clk_register(NULL, &synth->hw); + if (IS_ERR(clk)) { + pr_err("failed to register clock\n"); + goto free; + } + + return clk; free: kfree(synth); kfree(init); - return ERR_PTR(-ENOMEM); + return clk; } static void __init ti_fapll_setup(struct device_node *node) --- linux-azure-5.8-5.8.0.orig/drivers/clk/versatile/clk-impd1.c +++ linux-azure-5.8-5.8.0/drivers/clk/versatile/clk-impd1.c @@ -109,8 +109,10 @@ for_each_available_child_of_node(np, child) { ret = integrator_impd1_clk_spawn(dev, np, child); - if (ret) + if (ret) { + of_node_put(child); break; + } } return ret; --- linux-azure-5.8-5.8.0.orig/drivers/clocksource/Kconfig +++ linux-azure-5.8-5.8.0/drivers/clocksource/Kconfig @@ -79,6 +79,7 @@ bool "Intel XScale IXP4xx timer driver" if COMPILE_TEST depends on HAS_IOMEM select CLKSRC_MMIO + select TIMER_OF if OF help Enables support for the Intel XScale IXP4xx SoC timer. --- linux-azure-5.8-5.8.0.orig/drivers/clocksource/arm_arch_timer.c +++ linux-azure-5.8-5.8.0/drivers/clocksource/arm_arch_timer.c @@ -396,10 +396,10 @@ ctrl &= ~ARCH_TIMER_CTRL_IT_MASK; if (access == ARCH_TIMER_PHYS_ACCESS) { - cval = evt + arch_counter_get_cntpct(); + cval = evt + arch_counter_get_cntpct_stable(); write_sysreg(cval, cntp_cval_el0); } else { - cval = evt + arch_counter_get_cntvct(); + cval = evt + arch_counter_get_cntvct_stable(); write_sysreg(cval, cntv_cval_el0); } @@ -822,15 +822,24 @@ static void arch_timer_configure_evtstream(void) { - int evt_stream_div, pos; + int evt_stream_div, lsb; + + /* + * As the event stream can at most be generated at half the frequency + * of the counter, use half the frequency when computing the divider. + */ + evt_stream_div = arch_timer_rate / ARCH_TIMER_EVT_STREAM_FREQ / 2; + + /* + * Find the closest power of two to the divisor. If the adjacent bit + * of lsb (last set bit, starts from 0) is set, then we use (lsb + 1). + */ + lsb = fls(evt_stream_div) - 1; + if (lsb > 0 && (evt_stream_div & BIT(lsb - 1))) + lsb++; - /* Find the closest power of two to the divisor */ - evt_stream_div = arch_timer_rate / ARCH_TIMER_EVT_STREAM_FREQ; - pos = fls(evt_stream_div); - if (pos > 1 && !(evt_stream_div & (1 << (pos - 2)))) - pos--; /* enable event stream */ - arch_timer_evtstrm_enable(min(pos, 15)); + arch_timer_evtstrm_enable(max(0, min(lsb, 15))); } static void arch_counter_set_user_access(void) --- linux-azure-5.8-5.8.0.orig/drivers/clocksource/h8300_timer8.c +++ linux-azure-5.8-5.8.0/drivers/clocksource/h8300_timer8.c @@ -169,7 +169,7 @@ return PTR_ERR(clk); } - ret = ENXIO; + ret = -ENXIO; base = of_iomap(node, 0); if (!base) { pr_err("failed to map registers for clockevent\n"); --- linux-azure-5.8-5.8.0.orig/drivers/clocksource/hyperv_timer.c +++ linux-azure-5.8-5.8.0/drivers/clocksource/hyperv_timer.c @@ -341,7 +341,7 @@ return read_hv_clock_tsc(); } -static u64 read_hv_sched_clock_tsc(void) +static u64 notrace read_hv_sched_clock_tsc(void) { return (read_hv_clock_tsc() - hv_sched_clock_offset) * (NSEC_PER_SEC / HV_CLOCK_HZ); @@ -404,7 +404,7 @@ return read_hv_clock_msr(); } -static u64 read_hv_sched_clock_msr(void) +static u64 notrace read_hv_sched_clock_msr(void) { return (read_hv_clock_msr() - hv_sched_clock_offset) * (NSEC_PER_SEC / HV_CLOCK_HZ); --- linux-azure-5.8-5.8.0.orig/drivers/clocksource/ingenic-timer.c +++ linux-azure-5.8-5.8.0/drivers/clocksource/ingenic-timer.c @@ -94,7 +94,7 @@ return IRQ_HANDLED; } -static struct clk * __init ingenic_tcu_get_clock(struct device_node *np, int id) +static struct clk *ingenic_tcu_get_clock(struct device_node *np, int id) { struct of_phandle_args args; --- linux-azure-5.8-5.8.0.orig/drivers/clocksource/mxs_timer.c +++ linux-azure-5.8-5.8.0/drivers/clocksource/mxs_timer.c @@ -131,10 +131,7 @@ /* Clear pending interrupt */ timrot_irq_acknowledge(); - -#ifdef DEBUG - pr_info("%s: changing mode to %s\n", __func__, state) -#endif /* DEBUG */ + pr_debug("%s: changing mode to %s\n", __func__, state); } static int mxs_shutdown(struct clock_event_device *evt) --- linux-azure-5.8-5.8.0.orig/drivers/clocksource/timer-cadence-ttc.c +++ linux-azure-5.8-5.8.0/drivers/clocksource/timer-cadence-ttc.c @@ -413,10 +413,8 @@ ttcce->ttc.clk = clk; err = clk_prepare_enable(ttcce->ttc.clk); - if (err) { - kfree(ttcce); - return err; - } + if (err) + goto out_kfree; ttcce->ttc.clk_rate_change_nb.notifier_call = ttc_rate_change_clockevent_cb; @@ -426,7 +424,7 @@ &ttcce->ttc.clk_rate_change_nb); if (err) { pr_warn("Unable to register clock notifier.\n"); - return err; + goto out_kfree; } ttcce->ttc.freq = clk_get_rate(ttcce->ttc.clk); @@ -455,15 +453,17 @@ err = request_irq(irq, ttc_clock_event_interrupt, IRQF_TIMER, ttcce->ce.name, ttcce); - if (err) { - kfree(ttcce); - return err; - } + if (err) + goto out_kfree; clockevents_config_and_register(&ttcce->ce, ttcce->ttc.freq / PRESCALE, 1, 0xfffe); return 0; + +out_kfree: + kfree(ttcce); + return err; } static int __init ttc_timer_probe(struct platform_device *pdev) --- linux-azure-5.8-5.8.0.orig/drivers/clocksource/timer-gx6605s.c +++ linux-azure-5.8-5.8.0/drivers/clocksource/timer-gx6605s.c @@ -28,6 +28,7 @@ void __iomem *base = timer_of_base(to_timer_of(ce)); writel_relaxed(GX6605S_STATUS_CLR, base + TIMER_STATUS); + writel_relaxed(0, base + TIMER_INI); ce->event_handler(ce); --- linux-azure-5.8-5.8.0.orig/drivers/clocksource/timer-orion.c +++ linux-azure-5.8-5.8.0/drivers/clocksource/timer-orion.c @@ -143,7 +143,8 @@ irq = irq_of_parse_and_map(np, 1); if (irq <= 0) { pr_err("%pOFn: unable to parse timer1 irq\n", np); - return -EINVAL; + ret = -EINVAL; + goto out_unprep_clk; } rate = clk_get_rate(clk); @@ -160,7 +161,7 @@ clocksource_mmio_readl_down); if (ret) { pr_err("Failed to initialize mmio timer\n"); - return ret; + goto out_unprep_clk; } sched_clock_register(orion_read_sched_clock, 32, rate); @@ -170,7 +171,7 @@ "orion_event", NULL); if (ret) { pr_err("%pOFn: unable to setup irq\n", np); - return ret; + goto out_unprep_clk; } ticks_per_jiffy = (clk_get_rate(clk) + HZ/2) / HZ; @@ -183,5 +184,9 @@ orion_delay_timer_init(rate); return 0; + +out_unprep_clk: + clk_disable_unprepare(clk); + return ret; } TIMER_OF_DECLARE(orion_timer, "marvell,orion-timer", orion_timer_init); --- linux-azure-5.8-5.8.0.orig/drivers/clocksource/timer-ti-dm-systimer.c +++ linux-azure-5.8-5.8.0/drivers/clocksource/timer-ti-dm-systimer.c @@ -69,12 +69,33 @@ return !(tidr >> 16); } +static void dmtimer_systimer_enable(struct dmtimer_systimer *t) +{ + u32 val; + + if (dmtimer_systimer_revision1(t)) + val = DMTIMER_TYPE1_ENABLE; + else + val = DMTIMER_TYPE2_ENABLE; + + writel_relaxed(val, t->base + t->sysc); +} + +static void dmtimer_systimer_disable(struct dmtimer_systimer *t) +{ + if (!dmtimer_systimer_revision1(t)) + return; + + writel_relaxed(DMTIMER_TYPE1_DISABLE, t->base + t->sysc); +} + static int __init dmtimer_systimer_type1_reset(struct dmtimer_systimer *t) { void __iomem *syss = t->base + OMAP_TIMER_V1_SYS_STAT_OFFSET; int ret; u32 l; + dmtimer_systimer_enable(t); writel_relaxed(BIT(1) | BIT(2), t->base + t->ifctrl); ret = readl_poll_timeout_atomic(syss, l, l & BIT(0), 100, DMTIMER_RESET_WAIT); @@ -88,6 +109,7 @@ void __iomem *sysc = t->base + t->sysc; u32 l; + dmtimer_systimer_enable(t); l = readl_relaxed(sysc); l |= BIT(0); writel_relaxed(l, sysc); @@ -336,26 +358,6 @@ return 0; } -static void dmtimer_systimer_enable(struct dmtimer_systimer *t) -{ - u32 val; - - if (dmtimer_systimer_revision1(t)) - val = DMTIMER_TYPE1_ENABLE; - else - val = DMTIMER_TYPE2_ENABLE; - - writel_relaxed(val, t->base + t->sysc); -} - -static void dmtimer_systimer_disable(struct dmtimer_systimer *t) -{ - if (!dmtimer_systimer_revision1(t)) - return; - - writel_relaxed(DMTIMER_TYPE1_DISABLE, t->base + t->sysc); -} - static int __init dmtimer_systimer_setup(struct device_node *np, struct dmtimer_systimer *t) { @@ -409,8 +411,8 @@ t->wakeup = regbase + _OMAP_TIMER_WAKEUP_EN_OFFSET; t->ifctrl = regbase + _OMAP_TIMER_IF_CTRL_OFFSET; - dmtimer_systimer_enable(t); dmtimer_systimer_reset(t); + dmtimer_systimer_enable(t); pr_debug("dmtimer rev %08x sysc %08x\n", readl_relaxed(t->base), readl_relaxed(t->base + t->sysc)); --- linux-azure-5.8-5.8.0.orig/drivers/counter/ti-eqep.c +++ linux-azure-5.8-5.8.0/drivers/counter/ti-eqep.c @@ -235,36 +235,6 @@ return len; } -static ssize_t ti_eqep_position_floor_read(struct counter_device *counter, - struct counter_count *count, - void *ext_priv, char *buf) -{ - struct ti_eqep_cnt *priv = counter->priv; - u32 qposinit; - - regmap_read(priv->regmap32, QPOSINIT, &qposinit); - - return sprintf(buf, "%u\n", qposinit); -} - -static ssize_t ti_eqep_position_floor_write(struct counter_device *counter, - struct counter_count *count, - void *ext_priv, const char *buf, - size_t len) -{ - struct ti_eqep_cnt *priv = counter->priv; - int err; - u32 res; - - err = kstrtouint(buf, 0, &res); - if (err < 0) - return err; - - regmap_write(priv->regmap32, QPOSINIT, res); - - return len; -} - static ssize_t ti_eqep_position_enable_read(struct counter_device *counter, struct counter_count *count, void *ext_priv, char *buf) @@ -302,11 +272,6 @@ .write = ti_eqep_position_ceiling_write, }, { - .name = "floor", - .read = ti_eqep_position_floor_read, - .write = ti_eqep_position_floor_write, - }, - { .name = "enable", .read = ti_eqep_position_enable_read, .write = ti_eqep_position_enable_write, @@ -368,7 +333,7 @@ .reg_bits = 32, .val_bits = 32, .reg_stride = 4, - .max_register = 0x24, + .max_register = QUPRD, }; static const struct regmap_config ti_eqep_regmap16_config = { @@ -376,7 +341,7 @@ .reg_bits = 16, .val_bits = 16, .reg_stride = 2, - .max_register = 0x1e, + .max_register = QCPRDLAT, }; static int ti_eqep_probe(struct platform_device *pdev) --- linux-azure-5.8-5.8.0.orig/drivers/cpufreq/Kconfig.arm +++ linux-azure-5.8-5.8.0/drivers/cpufreq/Kconfig.arm @@ -41,6 +41,7 @@ config ARM_ARMADA_8K_CPUFREQ tristate "Armada 8K CPUFreq driver" depends on ARCH_MVEBU && CPUFREQ_DT + select ARMADA_AP_CPU_CLK help This enables the CPUFreq driver support for Marvell Armada8k SOCs. --- linux-azure-5.8-5.8.0.orig/drivers/cpufreq/acpi-cpufreq.c +++ linux-azure-5.8-5.8.0/drivers/cpufreq/acpi-cpufreq.c @@ -26,6 +26,7 @@ #include #include +#include #include #include @@ -628,16 +629,53 @@ } #endif +#ifdef CONFIG_ACPI_CPPC_LIB +static u64 get_max_boost_ratio(unsigned int cpu) +{ + struct cppc_perf_caps perf_caps; + u64 highest_perf, nominal_perf; + int ret; + + if (acpi_pstate_strict) + return 0; + + ret = cppc_get_perf_caps(cpu, &perf_caps); + if (ret) { + pr_debug("CPU%d: Unable to get performance capabilities (%d)\n", + cpu, ret); + return 0; + } + + highest_perf = perf_caps.highest_perf; + nominal_perf = perf_caps.nominal_perf; + + if (!highest_perf || !nominal_perf) { + pr_debug("CPU%d: highest or nominal performance missing\n", cpu); + return 0; + } + + if (highest_perf < nominal_perf) { + pr_debug("CPU%d: nominal performance above highest\n", cpu); + return 0; + } + + return div_u64(highest_perf << SCHED_CAPACITY_SHIFT, nominal_perf); +} +#else +static inline u64 get_max_boost_ratio(unsigned int cpu) { return 0; } +#endif + static int acpi_cpufreq_cpu_init(struct cpufreq_policy *policy) { - unsigned int i; - unsigned int valid_states = 0; - unsigned int cpu = policy->cpu; + struct cpufreq_frequency_table *freq_table; + struct acpi_processor_performance *perf; struct acpi_cpufreq_data *data; + unsigned int cpu = policy->cpu; + struct cpuinfo_x86 *c = &cpu_data(cpu); + unsigned int valid_states = 0; unsigned int result = 0; - struct cpuinfo_x86 *c = &cpu_data(policy->cpu); - struct acpi_processor_performance *perf; - struct cpufreq_frequency_table *freq_table; + u64 max_boost_ratio; + unsigned int i; #ifdef CONFIG_SMP static int blacklisted; #endif @@ -691,7 +729,8 @@ cpumask_copy(policy->cpus, topology_core_cpumask(cpu)); } - if (check_amd_hwpstate_cpu(cpu) && !acpi_pstate_strict) { + if (check_amd_hwpstate_cpu(cpu) && boot_cpu_data.x86 < 0x19 && + !acpi_pstate_strict) { cpumask_clear(policy->cpus); cpumask_set_cpu(cpu, policy->cpus); cpumask_copy(data->freqdomain_cpus, @@ -784,6 +823,28 @@ valid_states++; } freq_table[valid_states].frequency = CPUFREQ_TABLE_END; + + max_boost_ratio = get_max_boost_ratio(cpu); + if (max_boost_ratio) { + unsigned int freq = freq_table[0].frequency; + + /* + * Because the loop above sorts the freq_table entries in the + * descending order, freq is the maximum frequency in the table. + * Assume that it corresponds to the CPPC nominal frequency and + * use it to set cpuinfo.max_freq. + */ + policy->cpuinfo.max_freq = freq * max_boost_ratio >> SCHED_CAPACITY_SHIFT; + } else { + /* + * If the maximum "boost" frequency is unknown, ask the arch + * scale-invariance code to use the "nominal" performance for + * CPU utilization scaling so as to prevent the schedutil + * governor from selecting inadequate CPU frequencies. + */ + arch_set_max_freq_ratio(true); + } + policy->freq_table = freq_table; perf->state = 0; @@ -857,8 +918,9 @@ { struct acpi_processor_performance *perf = per_cpu_ptr(acpi_perf_data, policy->cpu); + unsigned int freq = policy->freq_table[0].frequency; - if (perf->states[0].core_frequency * 1000 != policy->cpuinfo.max_freq) + if (perf->states[0].core_frequency * 1000 != freq) pr_warn(FW_WARN "P-state 0 is not max freq\n"); } --- linux-azure-5.8-5.8.0.orig/drivers/cpufreq/armada-37xx-cpufreq.c +++ linux-azure-5.8-5.8.0/drivers/cpufreq/armada-37xx-cpufreq.c @@ -456,6 +456,7 @@ /* Now that everything is setup, enable the DVFS at hardware level */ armada37xx_cpufreq_enable_dvfs(nb_pm_base); + memset(&pdata, 0, sizeof(pdata)); pdata.suspend = armada37xx_cpufreq_suspend; pdata.resume = armada37xx_cpufreq_resume; @@ -483,6 +484,12 @@ /* late_initcall, to guarantee the driver is loaded after A37xx clock driver */ late_initcall(armada37xx_cpufreq_driver_init); +static const struct of_device_id __maybe_unused armada37xx_cpufreq_of_match[] = { + { .compatible = "marvell,armada-3700-nb-pm" }, + { }, +}; +MODULE_DEVICE_TABLE(of, armada37xx_cpufreq_of_match); + MODULE_AUTHOR("Gregory CLEMENT "); MODULE_DESCRIPTION("Armada 37xx cpufreq driver"); MODULE_LICENSE("GPL"); --- linux-azure-5.8-5.8.0.orig/drivers/cpufreq/armada-8k-cpufreq.c +++ linux-azure-5.8-5.8.0/drivers/cpufreq/armada-8k-cpufreq.c @@ -204,6 +204,12 @@ } module_exit(armada_8k_cpufreq_exit); +static const struct of_device_id __maybe_unused armada_8k_cpufreq_of_match[] = { + { .compatible = "marvell,ap806-cpu-clock" }, + { }, +}; +MODULE_DEVICE_TABLE(of, armada_8k_cpufreq_of_match); + MODULE_AUTHOR("Gregory Clement "); MODULE_DESCRIPTION("Armada 8K cpufreq driver"); MODULE_LICENSE("GPL"); --- linux-azure-5.8-5.8.0.orig/drivers/cpufreq/brcmstb-avs-cpufreq.c +++ linux-azure-5.8-5.8.0/drivers/cpufreq/brcmstb-avs-cpufreq.c @@ -568,6 +568,16 @@ return ret; } +static void brcm_avs_prepare_uninit(struct platform_device *pdev) +{ + struct private_data *priv; + + priv = platform_get_drvdata(pdev); + + iounmap(priv->avs_intr_base); + iounmap(priv->base); +} + static int brcm_avs_cpufreq_init(struct cpufreq_policy *policy) { struct cpufreq_frequency_table *freq_table; @@ -703,21 +713,21 @@ brcm_avs_driver.driver_data = pdev; - return cpufreq_register_driver(&brcm_avs_driver); + ret = cpufreq_register_driver(&brcm_avs_driver); + if (ret) + brcm_avs_prepare_uninit(pdev); + + return ret; } static int brcm_avs_cpufreq_remove(struct platform_device *pdev) { - struct private_data *priv; int ret; ret = cpufreq_unregister_driver(&brcm_avs_driver); - if (ret) - return ret; + WARN_ON(ret); - priv = platform_get_drvdata(pdev); - iounmap(priv->base); - iounmap(priv->avs_intr_base); + brcm_avs_prepare_uninit(pdev); return 0; } --- linux-azure-5.8-5.8.0.orig/drivers/cpufreq/cpufreq.c +++ linux-azure-5.8-5.8.0/drivers/cpufreq/cpufreq.c @@ -621,6 +621,24 @@ return NULL; } +static struct cpufreq_governor *get_governor(const char *str_governor) +{ + struct cpufreq_governor *t; + + mutex_lock(&cpufreq_governor_mutex); + t = find_governor(str_governor); + if (!t) + goto unlock; + + if (!try_module_get(t->owner)) + t = NULL; + +unlock: + mutex_unlock(&cpufreq_governor_mutex); + + return t; +} + static unsigned int cpufreq_parse_policy(char *str_governor) { if (!strncasecmp(str_governor, "performance", CPUFREQ_NAME_LEN)) @@ -640,28 +658,14 @@ { struct cpufreq_governor *t; - mutex_lock(&cpufreq_governor_mutex); - - t = find_governor(str_governor); - if (!t) { - int ret; - - mutex_unlock(&cpufreq_governor_mutex); - - ret = request_module("cpufreq_%s", str_governor); - if (ret) - return NULL; - - mutex_lock(&cpufreq_governor_mutex); - - t = find_governor(str_governor); - } - if (t && !try_module_get(t->owner)) - t = NULL; + t = get_governor(str_governor); + if (t) + return t; - mutex_unlock(&cpufreq_governor_mutex); + if (request_module("cpufreq_%s", str_governor)) + return NULL; - return t; + return get_governor(str_governor); } /** @@ -815,12 +819,14 @@ goto out; } + mutex_lock(&cpufreq_governor_mutex); for_each_governor(t) { if (i >= (ssize_t) ((PAGE_SIZE / sizeof(char)) - (CPUFREQ_NAME_LEN + 2))) - goto out; + break; i += scnprintf(&buf[i], CPUFREQ_NAME_PLEN, "%s ", t->name); } + mutex_unlock(&cpufreq_governor_mutex); out: i += sprintf(&buf[i], "\n"); return i; @@ -1058,15 +1064,17 @@ struct cpufreq_governor *def_gov = cpufreq_default_governor(); struct cpufreq_governor *gov = NULL; unsigned int pol = CPUFREQ_POLICY_UNKNOWN; + int ret; if (has_target()) { /* Update policy governor to the one used before hotplug. */ - gov = find_governor(policy->last_governor); + gov = get_governor(policy->last_governor); if (gov) { pr_debug("Restoring governor %s for cpu %d\n", policy->governor->name, policy->cpu); } else if (def_gov) { gov = def_gov; + __module_get(gov->owner); } else { return -ENODATA; } @@ -1089,7 +1097,11 @@ return -ENODATA; } - return cpufreq_set_policy(policy, gov, pol); + ret = cpufreq_set_policy(policy, gov, pol); + if (gov) + module_put(gov->owner); + + return ret; } static int cpufreq_add_policy_cpu(struct cpufreq_policy *policy, unsigned int cpu) @@ -1895,6 +1907,18 @@ } /** + * cpufreq_driver_test_flags - Test cpufreq driver's flags against given ones. + * @flags: Flags to test against the current cpufreq driver's flags. + * + * Assumes that the driver is there, so callers must ensure that this is the + * case. + */ +bool cpufreq_driver_test_flags(u16 flags) +{ + return !!(cpufreq_driver->flags & flags); +} + +/** * cpufreq_get_current_driver - return current driver's name * * Return the name string of the currently loaded cpufreq driver @@ -2157,7 +2181,8 @@ * exactly same freq is called again and so we can save on few function * calls. */ - if (target_freq == policy->cur) + if (target_freq == policy->cur && + !(cpufreq_driver->flags & CPUFREQ_NEED_UPDATE_LIMITS)) return 0; /* Save last value to restore later on errors */ @@ -2211,7 +2236,7 @@ return -EINVAL; /* Platform doesn't want dynamic frequency switching ? */ - if (policy->governor->dynamic_switching && + if (policy->governor->flags & CPUFREQ_GOV_DYNAMIC_SWITCHING && cpufreq_driver->flags & CPUFREQ_NO_AUTO_DYNAMIC_SWITCHING) { struct cpufreq_governor *gov = cpufreq_fallback_governor(); @@ -2237,6 +2262,8 @@ } } + policy->strict_target = !!(policy->governor->flags & CPUFREQ_GOV_STRICT_TARGET); + return 0; } @@ -2651,6 +2678,20 @@ return 0; } +static char cpufreq_driver_name[CPUFREQ_NAME_LEN]; + +static int __init cpufreq_driver_setup(char *str) +{ + strlcpy(cpufreq_driver_name, str, CPUFREQ_NAME_LEN); + return 1; +} + +/* + * Set this name to only allow one specific cpu freq driver, e.g., + * cpufreq_driver=powernow-k8 + */ +__setup("cpufreq_driver=", cpufreq_driver_setup); + /** * cpufreq_register_driver - register a CPU Frequency driver * @driver_data: A struct cpufreq_driver containing the values# @@ -2685,7 +2726,13 @@ (!driver_data->online != !driver_data->offline)) return -EINVAL; - pr_debug("trying to register driver %s\n", driver_data->name); + pr_debug("trying to register driver %s, cpufreq_driver=%s\n", + driver_data->name, cpufreq_driver_name); + + if (cpufreq_driver_name[0]) + if (!driver_data->name || + strcmp(cpufreq_driver_name, driver_data->name)) + return -EINVAL; /* Protect against concurrent CPU online/offline. */ cpus_read_lock(); --- linux-azure-5.8-5.8.0.orig/drivers/cpufreq/cpufreq_governor.h +++ linux-azure-5.8-5.8.0/drivers/cpufreq/cpufreq_governor.h @@ -156,7 +156,7 @@ #define CPUFREQ_DBS_GOVERNOR_INITIALIZER(_name_) \ { \ .name = _name_, \ - .dynamic_switching = true, \ + .flags = CPUFREQ_GOV_DYNAMIC_SWITCHING, \ .owner = THIS_MODULE, \ .init = cpufreq_dbs_governor_init, \ .exit = cpufreq_dbs_governor_exit, \ --- linux-azure-5.8-5.8.0.orig/drivers/cpufreq/cpufreq_performance.c +++ linux-azure-5.8-5.8.0/drivers/cpufreq/cpufreq_performance.c @@ -20,6 +20,7 @@ static struct cpufreq_governor cpufreq_gov_performance = { .name = "performance", .owner = THIS_MODULE, + .flags = CPUFREQ_GOV_STRICT_TARGET, .limits = cpufreq_gov_performance_limits, }; --- linux-azure-5.8-5.8.0.orig/drivers/cpufreq/cpufreq_powersave.c +++ linux-azure-5.8-5.8.0/drivers/cpufreq/cpufreq_powersave.c @@ -21,6 +21,7 @@ .name = "powersave", .limits = cpufreq_gov_powersave_limits, .owner = THIS_MODULE, + .flags = CPUFREQ_GOV_STRICT_TARGET, }; static int __init cpufreq_gov_powersave_init(void) --- linux-azure-5.8-5.8.0.orig/drivers/cpufreq/freq_table.c +++ linux-azure-5.8-5.8.0/drivers/cpufreq/freq_table.c @@ -52,7 +52,13 @@ } policy->min = policy->cpuinfo.min_freq = min_freq; - policy->max = policy->cpuinfo.max_freq = max_freq; + policy->max = max_freq; + /* + * If the driver has set its own cpuinfo.max_freq above max_freq, leave + * it as is. + */ + if (policy->cpuinfo.max_freq < max_freq) + policy->max = policy->cpuinfo.max_freq = max_freq; if (policy->min == ~0) return -EINVAL; --- linux-azure-5.8-5.8.0.orig/drivers/cpufreq/highbank-cpufreq.c +++ linux-azure-5.8-5.8.0/drivers/cpufreq/highbank-cpufreq.c @@ -101,6 +101,13 @@ } module_init(hb_cpufreq_driver_init); +static const struct of_device_id __maybe_unused hb_cpufreq_of_match[] = { + { .compatible = "calxeda,highbank" }, + { .compatible = "calxeda,ecx-2000" }, + { }, +}; +MODULE_DEVICE_TABLE(of, hb_cpufreq_of_match); + MODULE_AUTHOR("Mark Langsdorf "); MODULE_DESCRIPTION("Calxeda Highbank cpufreq driver"); MODULE_LICENSE("GPL"); --- linux-azure-5.8-5.8.0.orig/drivers/cpufreq/intel_pstate.c +++ linux-azure-5.8-5.8.0/drivers/cpufreq/intel_pstate.c @@ -649,11 +649,12 @@ mutex_lock(&intel_pstate_limits_lock); if (boot_cpu_has(X86_FEATURE_HWP_EPP)) { - u64 value; - - ret = rdmsrl_on_cpu(cpu_data->cpu, MSR_HWP_REQUEST, &value); - if (ret) - goto return_pref; + /* + * Use the cached HWP Request MSR value, because the register + * itself may be updated by intel_pstate_hwp_boost_up() or + * intel_pstate_hwp_boost_down() at any time. + */ + u64 value = READ_ONCE(cpu_data->hwp_req_cached); value &= ~GENMASK_ULL(31, 24); @@ -661,13 +662,18 @@ epp = epp_values[pref_index - 1]; value |= (u64)epp << 24; + /* + * The only other updater of hwp_req_cached in the active mode, + * intel_pstate_hwp_set(), is called under the same lock as this + * function, so it cannot run in parallel with the update below. + */ + WRITE_ONCE(cpu_data->hwp_req_cached, value); ret = wrmsrl_on_cpu(cpu_data->cpu, MSR_HWP_REQUEST, value); } else { if (epp == -EINVAL) epp = (pref_index - 1) << 2; ret = intel_pstate_set_epb(cpu_data->cpu, epp); } -return_pref: mutex_unlock(&intel_pstate_limits_lock); return ret; @@ -749,14 +755,14 @@ NULL, }; -static void intel_pstate_get_hwp_max(unsigned int cpu, int *phy_max, +static void intel_pstate_get_hwp_max(struct cpudata *cpu, int *phy_max, int *current_max) { u64 cap; - rdmsrl_on_cpu(cpu, MSR_HWP_CAPABILITIES, &cap); - WRITE_ONCE(all_cpu_data[cpu]->hwp_cap_cached, cap); - if (global.no_turbo) + rdmsrl_on_cpu(cpu->cpu, MSR_HWP_CAPABILITIES, &cap); + WRITE_ONCE(cpu->hwp_cap_cached, cap); + if (global.no_turbo || global.turbo_disabled) *current_max = HWP_GUARANTEED_PERF(cap); else *current_max = HWP_HIGHEST_PERF(cap); @@ -1107,7 +1113,7 @@ continue; if (hwp_active) - intel_pstate_get_hwp_max(i, &turbo_max, &max_state); + intel_pstate_get_hwp_max(cpu, &turbo_max, &max_state); else turbo_max = cpu->pstate.turbo_pstate; @@ -1561,20 +1567,22 @@ static void intel_pstate_get_cpu_pstates(struct cpudata *cpu) { cpu->pstate.min_pstate = pstate_funcs.get_min(); - cpu->pstate.max_pstate = pstate_funcs.get_max(); cpu->pstate.max_pstate_physical = pstate_funcs.get_max_physical(); cpu->pstate.turbo_pstate = pstate_funcs.get_turbo(); cpu->pstate.scaling = pstate_funcs.get_scaling(); - cpu->pstate.max_freq = cpu->pstate.max_pstate * cpu->pstate.scaling; if (hwp_active && !hwp_mode_bdw) { unsigned int phy_max, current_max; - intel_pstate_get_hwp_max(cpu->cpu, &phy_max, ¤t_max); + intel_pstate_get_hwp_max(cpu, &phy_max, ¤t_max); cpu->pstate.turbo_freq = phy_max * cpu->pstate.scaling; + cpu->pstate.turbo_pstate = phy_max; + cpu->pstate.max_pstate = HWP_GUARANTEED_PERF(READ_ONCE(cpu->hwp_cap_cached)); } else { cpu->pstate.turbo_freq = cpu->pstate.turbo_pstate * cpu->pstate.scaling; + cpu->pstate.max_pstate = pstate_funcs.get_max(); } + cpu->pstate.max_freq = cpu->pstate.max_pstate * cpu->pstate.scaling; if (pstate_funcs.get_aperf_mperf_shift) cpu->aperf_mperf_shift = pstate_funcs.get_aperf_mperf_shift(); @@ -2041,9 +2049,9 @@ unsigned int policy_min, unsigned int policy_max) { - int max_freq = intel_pstate_get_max_freq(cpu); int32_t max_policy_perf, min_policy_perf; int max_state, turbo_max; + int max_freq; /* * HWP needs some special consideration, because on BDX the @@ -2051,12 +2059,13 @@ * rather than pure ratios. */ if (hwp_active) { - intel_pstate_get_hwp_max(cpu->cpu, &turbo_max, &max_state); + intel_pstate_get_hwp_max(cpu, &turbo_max, &max_state); } else { max_state = global.no_turbo || global.turbo_disabled ? cpu->pstate.max_pstate : cpu->pstate.turbo_pstate; turbo_max = cpu->pstate.turbo_pstate; } + max_freq = max_state * cpu->pstate.scaling; max_policy_perf = max_state * policy_max / max_freq; if (policy_max == policy_min) { @@ -2159,9 +2168,18 @@ static void intel_pstate_verify_cpu_policy(struct cpudata *cpu, struct cpufreq_policy_data *policy) { + int max_freq; + update_turbo_state(); - cpufreq_verify_within_limits(policy, policy->cpuinfo.min_freq, - intel_pstate_get_max_freq(cpu)); + if (hwp_active) { + int max_state, turbo_max; + + intel_pstate_get_hwp_max(cpu, &turbo_max, &max_state); + max_freq = max_state * cpu->pstate.scaling; + } else { + max_freq = intel_pstate_get_max_freq(cpu); + } + cpufreq_verify_within_limits(policy, policy->cpuinfo.min_freq, max_freq); intel_pstate_adjust_policy_max(cpu, policy); } @@ -2402,7 +2420,7 @@ cpu = all_cpu_data[policy->cpu]; if (hwp_active) - intel_pstate_get_hwp_max(policy->cpu, &turbo_max, &max_state); + intel_pstate_get_hwp_max(cpu, &turbo_max, &max_state); else turbo_max = cpu->pstate.turbo_pstate; @@ -2527,9 +2545,15 @@ { int ret; - if (size == 3 && !strncmp(buf, "off", size)) - return intel_pstate_driver ? - intel_pstate_unregister_driver() : -EINVAL; + if (size == 3 && !strncmp(buf, "off", size)) { + if (!intel_pstate_driver) + return -EINVAL; + + if (hwp_active) + return -EBUSY; + + return intel_pstate_unregister_driver(); + } if (size == 6 && !strncmp(buf, "active", size)) { if (intel_pstate_driver) { --- linux-azure-5.8-5.8.0.orig/drivers/cpufreq/loongson1-cpufreq.c +++ linux-azure-5.8-5.8.0/drivers/cpufreq/loongson1-cpufreq.c @@ -216,6 +216,7 @@ module_platform_driver(ls1x_cpufreq_platdrv); +MODULE_ALIAS("platform:ls1x-cpufreq"); MODULE_AUTHOR("Kelvin Cheung "); MODULE_DESCRIPTION("Loongson1 CPUFreq driver"); MODULE_LICENSE("GPL"); --- linux-azure-5.8-5.8.0.orig/drivers/cpufreq/mediatek-cpufreq.c +++ linux-azure-5.8-5.8.0/drivers/cpufreq/mediatek-cpufreq.c @@ -540,6 +540,7 @@ { } }; +MODULE_DEVICE_TABLE(of, mtk_cpufreq_machines); static int __init mtk_cpufreq_driver_init(void) { --- linux-azure-5.8-5.8.0.orig/drivers/cpufreq/powernow-k8.c +++ linux-azure-5.8-5.8.0/drivers/cpufreq/powernow-k8.c @@ -878,9 +878,9 @@ /* Take a frequency, and issue the fid/vid transition command */ static int transition_frequency_fidvid(struct powernow_k8_data *data, - unsigned int index) + unsigned int index, + struct cpufreq_policy *policy) { - struct cpufreq_policy *policy; u32 fid = 0; u32 vid = 0; int res; @@ -912,9 +912,6 @@ freqs.old = find_khz_freq_from_fid(data->currfid); freqs.new = find_khz_freq_from_fid(fid); - policy = cpufreq_cpu_get(smp_processor_id()); - cpufreq_cpu_put(policy); - cpufreq_freq_transition_begin(policy, &freqs); res = transition_fid_vid(data, fid, vid); cpufreq_freq_transition_end(policy, &freqs, res); @@ -969,7 +966,7 @@ powernow_k8_acpi_pst_values(data, newstate); - ret = transition_frequency_fidvid(data, newstate); + ret = transition_frequency_fidvid(data, newstate, pol); if (ret) { pr_err("transition frequency failed\n"); --- linux-azure-5.8-5.8.0.orig/drivers/cpufreq/powernv-cpufreq.c +++ linux-azure-5.8-5.8.0/drivers/cpufreq/powernv-cpufreq.c @@ -884,12 +884,15 @@ unsigned long action, void *unused) { int cpu; - struct cpufreq_policy cpu_policy; + struct cpufreq_policy *cpu_policy; rebooting = true; for_each_online_cpu(cpu) { - cpufreq_get_policy(&cpu_policy, cpu); - powernv_cpufreq_target_index(&cpu_policy, get_nominal_index()); + cpu_policy = cpufreq_cpu_get(cpu); + if (!cpu_policy) + continue; + powernv_cpufreq_target_index(cpu_policy, get_nominal_index()); + cpufreq_cpu_put(cpu_policy); } return NOTIFY_DONE; --- linux-azure-5.8-5.8.0.orig/drivers/cpufreq/qcom-cpufreq-nvmem.c +++ linux-azure-5.8-5.8.0/drivers/cpufreq/qcom-cpufreq-nvmem.c @@ -464,6 +464,7 @@ { .compatible = "qcom,msm8960", .data = &match_data_krait }, {}, }; +MODULE_DEVICE_TABLE(of, qcom_cpufreq_match_list); /* * Since the driver depends on smem and nvmem drivers, which may --- linux-azure-5.8-5.8.0.orig/drivers/cpufreq/scpi-cpufreq.c +++ linux-azure-5.8-5.8.0/drivers/cpufreq/scpi-cpufreq.c @@ -237,6 +237,7 @@ }; module_platform_driver(scpi_cpufreq_platdrv); +MODULE_ALIAS("platform:scpi-cpufreq"); MODULE_AUTHOR("Sudeep Holla "); MODULE_DESCRIPTION("ARM SCPI CPUFreq interface driver"); MODULE_LICENSE("GPL v2"); --- linux-azure-5.8-5.8.0.orig/drivers/cpufreq/sti-cpufreq.c +++ linux-azure-5.8-5.8.0/drivers/cpufreq/sti-cpufreq.c @@ -141,7 +141,8 @@ static const struct reg_field *sti_cpufreq_match(void) { if (of_machine_is_compatible("st,stih407") || - of_machine_is_compatible("st,stih410")) + of_machine_is_compatible("st,stih410") || + of_machine_is_compatible("st,stih418")) return sti_stih407_dvfs_regfields; return NULL; @@ -258,7 +259,8 @@ int ret; if ((!of_machine_is_compatible("st,stih407")) && - (!of_machine_is_compatible("st,stih410"))) + (!of_machine_is_compatible("st,stih410")) && + (!of_machine_is_compatible("st,stih418"))) return -ENODEV; ddata.cpu = get_cpu_device(0); @@ -290,6 +292,13 @@ } module_init(sti_cpufreq_init); +static const struct of_device_id __maybe_unused sti_cpufreq_of_match[] = { + { .compatible = "st,stih407" }, + { .compatible = "st,stih410" }, + { }, +}; +MODULE_DEVICE_TABLE(of, sti_cpufreq_of_match); + MODULE_DESCRIPTION("STMicroelectronics CPUFreq/OPP driver"); MODULE_AUTHOR("Ajitpal Singh "); MODULE_AUTHOR("Lee Jones "); --- linux-azure-5.8-5.8.0.orig/drivers/cpufreq/sun50i-cpufreq-nvmem.c +++ linux-azure-5.8-5.8.0/drivers/cpufreq/sun50i-cpufreq-nvmem.c @@ -167,6 +167,7 @@ { .compatible = "allwinner,sun50i-h6" }, {} }; +MODULE_DEVICE_TABLE(of, sun50i_cpufreq_match_list); static const struct of_device_id *sun50i_cpufreq_match_node(void) { --- linux-azure-5.8-5.8.0.orig/drivers/cpufreq/vexpress-spc-cpufreq.c +++ linux-azure-5.8-5.8.0/drivers/cpufreq/vexpress-spc-cpufreq.c @@ -599,6 +599,7 @@ }; module_platform_driver(ve_spc_cpufreq_platdrv); +MODULE_ALIAS("platform:vexpress-spc-cpufreq"); MODULE_AUTHOR("Viresh Kumar "); MODULE_AUTHOR("Sudeep Holla "); MODULE_DESCRIPTION("Vexpress SPC ARM big LITTLE cpufreq driver"); --- linux-azure-5.8-5.8.0.orig/drivers/cpuidle/cpuidle-psci.c +++ linux-azure-5.8-5.8.0/drivers/cpuidle/cpuidle-psci.c @@ -64,7 +64,7 @@ return -1; /* Do runtime PM to manage a hierarchical CPU toplogy. */ - pm_runtime_put_sync_suspend(pd_dev); + RCU_NONIDLE(pm_runtime_put_sync_suspend(pd_dev)); state = psci_get_domain_state(); if (!state) @@ -72,7 +72,7 @@ ret = psci_cpu_suspend_enter(state) ? -1 : idx; - pm_runtime_get_sync(pd_dev); + RCU_NONIDLE(pm_runtime_get_sync(pd_dev)); cpu_pm_exit(); --- linux-azure-5.8-5.8.0.orig/drivers/cpuidle/cpuidle-tegra.c +++ linux-azure-5.8-5.8.0/drivers/cpuidle/cpuidle-tegra.c @@ -172,7 +172,7 @@ static int tegra_cpuidle_state_enter(struct cpuidle_device *dev, int index, unsigned int cpu) { - int ret; + int err; /* * CC6 state is the "CPU cluster power-off" state. In order to @@ -183,34 +183,34 @@ * CPU cores, GIC and L2 cache). */ if (index == TEGRA_CC6) { - ret = tegra_cpuidle_coupled_barrier(dev); - if (ret) - return ret; + err = tegra_cpuidle_coupled_barrier(dev); + if (err) + return err; } local_fiq_disable(); - tegra_pm_set_cpu_in_lp2(); + RCU_NONIDLE(tegra_pm_set_cpu_in_lp2()); cpu_pm_enter(); switch (index) { case TEGRA_C7: - ret = tegra_cpuidle_c7_enter(); + err = tegra_cpuidle_c7_enter(); break; case TEGRA_CC6: - ret = tegra_cpuidle_cc6_enter(cpu); + err = tegra_cpuidle_cc6_enter(cpu); break; default: - ret = -EINVAL; + err = -EINVAL; break; } cpu_pm_exit(); - tegra_pm_clear_cpu_in_lp2(); + RCU_NONIDLE(tegra_pm_clear_cpu_in_lp2()); local_fiq_enable(); - return ret; + return err ?: index; } static int tegra_cpuidle_adjust_state_index(int index, unsigned int cpu) @@ -236,21 +236,27 @@ int index) { unsigned int cpu = cpu_logical_map(dev->cpu); - int err; + int ret; index = tegra_cpuidle_adjust_state_index(index, cpu); if (dev->states_usage[index].disable) return -1; if (index == TEGRA_C1) - err = arm_cpuidle_simple_enter(dev, drv, index); + ret = arm_cpuidle_simple_enter(dev, drv, index); else - err = tegra_cpuidle_state_enter(dev, index, cpu); + ret = tegra_cpuidle_state_enter(dev, index, cpu); - if (err && (err != -EINTR || index != TEGRA_CC6)) - pr_err_once("failed to enter state %d err: %d\n", index, err); + if (ret < 0) { + if (ret != -EINTR || index != TEGRA_CC6) + pr_err_once("failed to enter state %d err: %d\n", + index, ret); + index = -1; + } else { + index = ret; + } - return err ? -1 : index; + return index; } static void tegra114_enter_s2idle(struct cpuidle_device *dev, --- linux-azure-5.8-5.8.0.orig/drivers/cpuidle/cpuidle.c +++ linux-azure-5.8-5.8.0/drivers/cpuidle/cpuidle.c @@ -153,7 +153,8 @@ */ stop_critical_timings(); drv->states[index].enter_s2idle(dev, drv, index); - WARN_ON(!irqs_disabled()); + if (WARN_ON_ONCE(!irqs_disabled())) + local_irq_disable(); /* * timekeeping_resume() that will be called by tick_unfreeze() for the * first CPU executing it calls functions containing RCU read-side --- linux-azure-5.8-5.8.0.orig/drivers/crypto/Kconfig +++ linux-azure-5.8-5.8.0/drivers/crypto/Kconfig @@ -350,6 +350,7 @@ config CRYPTO_DEV_OMAP_SHAM tristate "Support for OMAP MD5/SHA1/SHA2 hw accelerator" depends on ARCH_OMAP2PLUS + select CRYPTO_ENGINE select CRYPTO_SHA1 select CRYPTO_MD5 select CRYPTO_SHA256 @@ -532,6 +533,7 @@ config CRYPTO_DEV_ATMEL_I2C tristate + select BITREVERSE config CRYPTO_DEV_ATMEL_ECC tristate "Support for Microchip / Atmel ECC hw accelerator" --- linux-azure-5.8-5.8.0.orig/drivers/crypto/allwinner/sun4i-ss/sun4i-ss-cipher.c +++ linux-azure-5.8-5.8.0/drivers/crypto/allwinner/sun4i-ss/sun4i-ss-cipher.c @@ -30,6 +30,8 @@ unsigned int ileft = areq->cryptlen; unsigned int oleft = areq->cryptlen; unsigned int todo; + unsigned long pi = 0, po = 0; /* progress for in and out */ + bool miter_err; struct sg_mapping_iter mi, mo; unsigned int oi, oo; /* offset for in and out */ unsigned long flags; @@ -44,50 +46,62 @@ spin_lock_irqsave(&ss->slock, flags); - for (i = 0; i < op->keylen; i += 4) - writel(*(op->key + i / 4), ss->base + SS_KEY0 + i); + for (i = 0; i < op->keylen / 4; i++) + writesl(ss->base + SS_KEY0 + i * 4, &op->key[i], 1); if (areq->iv) { for (i = 0; i < 4 && i < ivsize / 4; i++) { v = *(u32 *)(areq->iv + i * 4); - writel(v, ss->base + SS_IV0 + i * 4); + writesl(ss->base + SS_IV0 + i * 4, &v, 1); } } writel(mode, ss->base + SS_CTL); - sg_miter_start(&mi, areq->src, sg_nents(areq->src), - SG_MITER_FROM_SG | SG_MITER_ATOMIC); - sg_miter_start(&mo, areq->dst, sg_nents(areq->dst), - SG_MITER_TO_SG | SG_MITER_ATOMIC); - sg_miter_next(&mi); - sg_miter_next(&mo); - if (!mi.addr || !mo.addr) { - dev_err_ratelimited(ss->dev, "ERROR: sg_miter return null\n"); - err = -EINVAL; - goto release_ss; - } ileft = areq->cryptlen / 4; oleft = areq->cryptlen / 4; oi = 0; oo = 0; do { - todo = min(rx_cnt, ileft); - todo = min_t(size_t, todo, (mi.length - oi) / 4); - if (todo) { - ileft -= todo; - writesl(ss->base + SS_RXFIFO, mi.addr + oi, todo); - oi += todo * 4; - } - if (oi == mi.length) { - sg_miter_next(&mi); - oi = 0; + if (ileft) { + sg_miter_start(&mi, areq->src, sg_nents(areq->src), + SG_MITER_FROM_SG | SG_MITER_ATOMIC); + if (pi) + sg_miter_skip(&mi, pi); + miter_err = sg_miter_next(&mi); + if (!miter_err || !mi.addr) { + dev_err_ratelimited(ss->dev, "ERROR: sg_miter return null\n"); + err = -EINVAL; + goto release_ss; + } + todo = min(rx_cnt, ileft); + todo = min_t(size_t, todo, (mi.length - oi) / 4); + if (todo) { + ileft -= todo; + writesl(ss->base + SS_RXFIFO, mi.addr + oi, todo); + oi += todo * 4; + } + if (oi == mi.length) { + pi += mi.length; + oi = 0; + } + sg_miter_stop(&mi); } spaces = readl(ss->base + SS_FCSR); rx_cnt = SS_RXFIFO_SPACES(spaces); tx_cnt = SS_TXFIFO_SPACES(spaces); + sg_miter_start(&mo, areq->dst, sg_nents(areq->dst), + SG_MITER_TO_SG | SG_MITER_ATOMIC); + if (po) + sg_miter_skip(&mo, po); + miter_err = sg_miter_next(&mo); + if (!miter_err || !mo.addr) { + dev_err_ratelimited(ss->dev, "ERROR: sg_miter return null\n"); + err = -EINVAL; + goto release_ss; + } todo = min(tx_cnt, oleft); todo = min_t(size_t, todo, (mo.length - oo) / 4); if (todo) { @@ -96,9 +110,10 @@ oo += todo * 4; } if (oo == mo.length) { - sg_miter_next(&mo); oo = 0; + po += mo.length; } + sg_miter_stop(&mo); } while (oleft); if (areq->iv) { @@ -109,8 +124,6 @@ } release_ss: - sg_miter_stop(&mi); - sg_miter_stop(&mo); writel(0, ss->base + SS_CTL); spin_unlock_irqrestore(&ss->slock, flags); return err; @@ -164,12 +177,14 @@ unsigned int oleft = areq->cryptlen; unsigned int todo; struct sg_mapping_iter mi, mo; + unsigned long pi = 0, po = 0; /* progress for in and out */ + bool miter_err; unsigned int oi, oo; /* offset for in and out */ unsigned int ob = 0; /* offset in buf */ unsigned int obo = 0; /* offset in bufo*/ unsigned int obl = 0; /* length of data in bufo */ unsigned long flags; - bool need_fallback; + bool need_fallback = false; if (!areq->cryptlen) return 0; @@ -188,12 +203,12 @@ * we can use the SS optimized function */ while (in_sg && no_chunk == 1) { - if (in_sg->length % 4) + if ((in_sg->length | in_sg->offset) & 3u) no_chunk = 0; in_sg = sg_next(in_sg); } while (out_sg && no_chunk == 1) { - if (out_sg->length % 4) + if ((out_sg->length | out_sg->offset) & 3u) no_chunk = 0; out_sg = sg_next(out_sg); } @@ -206,28 +221,17 @@ spin_lock_irqsave(&ss->slock, flags); - for (i = 0; i < op->keylen; i += 4) - writel(*(op->key + i / 4), ss->base + SS_KEY0 + i); + for (i = 0; i < op->keylen / 4; i++) + writesl(ss->base + SS_KEY0 + i * 4, &op->key[i], 1); if (areq->iv) { for (i = 0; i < 4 && i < ivsize / 4; i++) { v = *(u32 *)(areq->iv + i * 4); - writel(v, ss->base + SS_IV0 + i * 4); + writesl(ss->base + SS_IV0 + i * 4, &v, 1); } } writel(mode, ss->base + SS_CTL); - sg_miter_start(&mi, areq->src, sg_nents(areq->src), - SG_MITER_FROM_SG | SG_MITER_ATOMIC); - sg_miter_start(&mo, areq->dst, sg_nents(areq->dst), - SG_MITER_TO_SG | SG_MITER_ATOMIC); - sg_miter_next(&mi); - sg_miter_next(&mo); - if (!mi.addr || !mo.addr) { - dev_err_ratelimited(ss->dev, "ERROR: sg_miter return null\n"); - err = -EINVAL; - goto release_ss; - } ileft = areq->cryptlen; oleft = areq->cryptlen; oi = 0; @@ -235,8 +239,16 @@ while (oleft) { if (ileft) { - char buf[4 * SS_RX_MAX];/* buffer for linearize SG src */ - + sg_miter_start(&mi, areq->src, sg_nents(areq->src), + SG_MITER_FROM_SG | SG_MITER_ATOMIC); + if (pi) + sg_miter_skip(&mi, pi); + miter_err = sg_miter_next(&mi); + if (!miter_err || !mi.addr) { + dev_err_ratelimited(ss->dev, "ERROR: sg_miter return null\n"); + err = -EINVAL; + goto release_ss; + } /* * todo is the number of consecutive 4byte word that we * can read from current SG @@ -258,52 +270,57 @@ */ todo = min(rx_cnt * 4 - ob, ileft); todo = min_t(size_t, todo, mi.length - oi); - memcpy(buf + ob, mi.addr + oi, todo); + memcpy(ss->buf + ob, mi.addr + oi, todo); ileft -= todo; oi += todo; ob += todo; if (!(ob % 4)) { - writesl(ss->base + SS_RXFIFO, buf, + writesl(ss->base + SS_RXFIFO, ss->buf, ob / 4); ob = 0; } } if (oi == mi.length) { - sg_miter_next(&mi); + pi += mi.length; oi = 0; } + sg_miter_stop(&mi); } spaces = readl(ss->base + SS_FCSR); rx_cnt = SS_RXFIFO_SPACES(spaces); tx_cnt = SS_TXFIFO_SPACES(spaces); - dev_dbg(ss->dev, - "%x %u/%zu %u/%u cnt=%u %u/%zu %u/%u cnt=%u %u\n", - mode, - oi, mi.length, ileft, areq->cryptlen, rx_cnt, - oo, mo.length, oleft, areq->cryptlen, tx_cnt, ob); if (!tx_cnt) continue; + sg_miter_start(&mo, areq->dst, sg_nents(areq->dst), + SG_MITER_TO_SG | SG_MITER_ATOMIC); + if (po) + sg_miter_skip(&mo, po); + miter_err = sg_miter_next(&mo); + if (!miter_err || !mo.addr) { + dev_err_ratelimited(ss->dev, "ERROR: sg_miter return null\n"); + err = -EINVAL; + goto release_ss; + } /* todo in 4bytes word */ todo = min(tx_cnt, oleft / 4); todo = min_t(size_t, todo, (mo.length - oo) / 4); + if (todo) { readsl(ss->base + SS_TXFIFO, mo.addr + oo, todo); oleft -= todo * 4; oo += todo * 4; if (oo == mo.length) { - sg_miter_next(&mo); + po += mo.length; oo = 0; } } else { - char bufo[4 * SS_TX_MAX]; /* buffer for linearize SG dst */ - /* * read obl bytes in bufo, we read at maximum for * emptying the device */ - readsl(ss->base + SS_TXFIFO, bufo, tx_cnt); + readsl(ss->base + SS_TXFIFO, ss->bufo, tx_cnt); obl = tx_cnt * 4; obo = 0; do { @@ -315,17 +332,19 @@ */ todo = min_t(size_t, mo.length - oo, obl - obo); - memcpy(mo.addr + oo, bufo + obo, todo); + memcpy(mo.addr + oo, ss->bufo + obo, todo); oleft -= todo; obo += todo; oo += todo; if (oo == mo.length) { + po += mo.length; sg_miter_next(&mo); oo = 0; } } while (obo < obl); /* bufo must be fully used here */ } + sg_miter_stop(&mo); } if (areq->iv) { for (i = 0; i < 4 && i < ivsize / 4; i++) { @@ -335,8 +354,6 @@ } release_ss: - sg_miter_stop(&mi); - sg_miter_stop(&mo); writel(0, ss->base + SS_CTL); spin_unlock_irqrestore(&ss->slock, flags); --- linux-azure-5.8-5.8.0.orig/drivers/crypto/allwinner/sun4i-ss/sun4i-ss.h +++ linux-azure-5.8-5.8.0/drivers/crypto/allwinner/sun4i-ss/sun4i-ss.h @@ -148,6 +148,8 @@ struct reset_control *reset; struct device *dev; struct resource *res; + char buf[4 * SS_RX_MAX];/* buffer for linearize SG src */ + char bufo[4 * SS_TX_MAX]; /* buffer for linearize SG dst */ spinlock_t slock; /* control the use of the device */ #ifdef CONFIG_CRYPTO_DEV_SUN4I_SS_PRNG u32 seed[SS_SEED_LEN / BITS_PER_LONG]; --- linux-azure-5.8-5.8.0.orig/drivers/crypto/allwinner/sun8i-ce/sun8i-ce-core.c +++ linux-azure-5.8-5.8.0/drivers/crypto/allwinner/sun8i-ce/sun8i-ce-core.c @@ -120,7 +120,10 @@ /* Be sure all data is written before enabling the task */ wmb(); - v = 1 | (ce->chanlist[flow].tl->t_common_ctl & 0x7F) << 8; + /* Only H6 needs to write a part of t_common_ctl along with "1", but since it is ignored + * on older SoCs, we have no reason to complicate things. + */ + v = 1 | ((le32_to_cpu(ce->chanlist[flow].tl->t_common_ctl) & 0x7F) << 8); writel(v, ce->base + CE_TLR); mutex_unlock(&ce->mlock); --- linux-azure-5.8-5.8.0.orig/drivers/crypto/amcc/crypto4xx_core.c +++ linux-azure-5.8-5.8.0/drivers/crypto/amcc/crypto4xx_core.c @@ -917,7 +917,7 @@ } pd->pd_ctl.w = PD_CTL_HOST_READY | - ((crypto_tfm_alg_type(req->tfm) == CRYPTO_ALG_TYPE_AHASH) | + ((crypto_tfm_alg_type(req->tfm) == CRYPTO_ALG_TYPE_AHASH) || (crypto_tfm_alg_type(req->tfm) == CRYPTO_ALG_TYPE_AEAD) ? PD_CTL_HASH_FINAL : 0); pd->pd_ctl_len.w = 0x00400000 | (assoclen + datalen); --- linux-azure-5.8-5.8.0.orig/drivers/crypto/bcm/cipher.c +++ linux-azure-5.8-5.8.0/drivers/crypto/bcm/cipher.c @@ -41,7 +41,7 @@ /* ================= Device Structure ================== */ -struct device_private iproc_priv; +struct bcm_device_private iproc_priv; /* ==================== Parameters ===================== */ @@ -2930,7 +2930,6 @@ ctx->enckeylen = keylen; ctx->authkeylen = 0; - memcpy(ctx->enckey, key, ctx->enckeylen); switch (ctx->enckeylen) { case AES_KEYSIZE_128: @@ -2946,6 +2945,8 @@ goto badkey; } + memcpy(ctx->enckey, key, ctx->enckeylen); + flow_log(" enckeylen:%u authkeylen:%u\n", ctx->enckeylen, ctx->authkeylen); flow_dump(" enc: ", ctx->enckey, ctx->enckeylen); @@ -3000,6 +3001,10 @@ struct iproc_ctx_s *ctx = crypto_aead_ctx(cipher); flow_log("%s\n", __func__); + + if (keylen < GCM_ESP_SALT_SIZE) + return -EINVAL; + ctx->salt_len = GCM_ESP_SALT_SIZE; ctx->salt_offset = GCM_ESP_SALT_OFFSET; memcpy(ctx->salt, key + keylen - GCM_ESP_SALT_SIZE, GCM_ESP_SALT_SIZE); @@ -3028,6 +3033,10 @@ struct iproc_ctx_s *ctx = crypto_aead_ctx(cipher); flow_log("%s\n", __func__); + + if (keylen < GCM_ESP_SALT_SIZE) + return -EINVAL; + ctx->salt_len = GCM_ESP_SALT_SIZE; ctx->salt_offset = GCM_ESP_SALT_OFFSET; memcpy(ctx->salt, key + keylen - GCM_ESP_SALT_SIZE, GCM_ESP_SALT_SIZE); @@ -3057,6 +3066,10 @@ struct iproc_ctx_s *ctx = crypto_aead_ctx(cipher); flow_log("%s\n", __func__); + + if (keylen < CCM_ESP_SALT_SIZE) + return -EINVAL; + ctx->salt_len = CCM_ESP_SALT_SIZE; ctx->salt_offset = CCM_ESP_SALT_OFFSET; memcpy(ctx->salt, key + keylen - CCM_ESP_SALT_SIZE, CCM_ESP_SALT_SIZE); --- linux-azure-5.8-5.8.0.orig/drivers/crypto/bcm/cipher.h +++ linux-azure-5.8-5.8.0/drivers/crypto/bcm/cipher.h @@ -420,7 +420,7 @@ u32 num_chan; }; -struct device_private { +struct bcm_device_private { struct platform_device *pdev; struct spu_hw spu; @@ -467,6 +467,6 @@ struct mbox_chan **mbox; }; -extern struct device_private iproc_priv; +extern struct bcm_device_private iproc_priv; #endif --- linux-azure-5.8-5.8.0.orig/drivers/crypto/bcm/util.c +++ linux-azure-5.8-5.8.0/drivers/crypto/bcm/util.c @@ -348,7 +348,7 @@ static ssize_t spu_debugfs_read(struct file *filp, char __user *ubuf, size_t count, loff_t *offp) { - struct device_private *ipriv; + struct bcm_device_private *ipriv; char *buf; ssize_t ret, out_offset, out_count; int i; --- linux-azure-5.8-5.8.0.orig/drivers/crypto/caam/Kconfig +++ linux-azure-5.8-5.8.0/drivers/crypto/caam/Kconfig @@ -114,6 +114,7 @@ select CRYPTO_AUTHENC select CRYPTO_SKCIPHER select CRYPTO_DES + select CRYPTO_XTS help Selecting this will use CAAM Queue Interface (QI) for sending & receiving crypto jobs to/from CAAM. This gives better performance --- linux-azure-5.8-5.8.0.orig/drivers/crypto/caam/caamalg.c +++ linux-azure-5.8-5.8.0/drivers/crypto/caam/caamalg.c @@ -810,12 +810,6 @@ return skcipher_setkey(skcipher, key, keylen, ctx1_iv_off); } -static int arc4_skcipher_setkey(struct crypto_skcipher *skcipher, - const u8 *key, unsigned int keylen) -{ - return skcipher_setkey(skcipher, key, keylen, 0); -} - static int des_skcipher_setkey(struct crypto_skcipher *skcipher, const u8 *key, unsigned int keylen) { @@ -838,7 +832,7 @@ u32 *desc; if (keylen != 2 * AES_MIN_KEY_SIZE && keylen != 2 * AES_MAX_KEY_SIZE) { - dev_err(jrdev, "key size mismatch\n"); + dev_dbg(jrdev, "key size mismatch\n"); return -EINVAL; } @@ -1967,21 +1961,6 @@ }, .caam.class1_alg_type = OP_ALG_ALGSEL_3DES | OP_ALG_AAI_ECB, }, - { - .skcipher = { - .base = { - .cra_name = "ecb(arc4)", - .cra_driver_name = "ecb-arc4-caam", - .cra_blocksize = ARC4_BLOCK_SIZE, - }, - .setkey = arc4_skcipher_setkey, - .encrypt = skcipher_encrypt, - .decrypt = skcipher_decrypt, - .min_keysize = ARC4_MIN_KEY_SIZE, - .max_keysize = ARC4_MAX_KEY_SIZE, - }, - .caam.class1_alg_type = OP_ALG_ALGSEL_ARC4 | OP_ALG_AAI_ECB, - }, }; static struct caam_aead_alg driver_aeads[] = { @@ -3457,7 +3436,6 @@ struct caam_drv_private *priv = dev_get_drvdata(ctrldev); int i = 0, err = 0; u32 aes_vid, aes_inst, des_inst, md_vid, md_inst, ccha_inst, ptha_inst; - u32 arc4_inst; unsigned int md_limit = SHA512_DIGEST_SIZE; bool registered = false, gcm_support; @@ -3477,8 +3455,6 @@ CHA_ID_LS_DES_SHIFT; aes_inst = cha_inst & CHA_ID_LS_AES_MASK; md_inst = (cha_inst & CHA_ID_LS_MD_MASK) >> CHA_ID_LS_MD_SHIFT; - arc4_inst = (cha_inst & CHA_ID_LS_ARC4_MASK) >> - CHA_ID_LS_ARC4_SHIFT; ccha_inst = 0; ptha_inst = 0; @@ -3499,7 +3475,6 @@ md_inst = mdha & CHA_VER_NUM_MASK; ccha_inst = rd_reg32(&priv->ctrl->vreg.ccha) & CHA_VER_NUM_MASK; ptha_inst = rd_reg32(&priv->ctrl->vreg.ptha) & CHA_VER_NUM_MASK; - arc4_inst = rd_reg32(&priv->ctrl->vreg.afha) & CHA_VER_NUM_MASK; gcm_support = aesa & CHA_VER_MISC_AES_GCM; } @@ -3522,10 +3497,6 @@ if (!aes_inst && (alg_sel == OP_ALG_ALGSEL_AES)) continue; - /* Skip ARC4 algorithms if not supported by device */ - if (!arc4_inst && alg_sel == OP_ALG_ALGSEL_ARC4) - continue; - /* * Check support for AES modes not available * on LP devices. --- linux-azure-5.8-5.8.0.orig/drivers/crypto/caam/caamalg_qi.c +++ linux-azure-5.8-5.8.0/drivers/crypto/caam/caamalg_qi.c @@ -18,6 +18,8 @@ #include "qi.h" #include "jr.h" #include "caamalg_desc.h" +#include +#include /* * crypto alg @@ -67,6 +69,12 @@ struct device *qidev; spinlock_t lock; /* Protects multiple init of driver context */ struct caam_drv_ctx *drv_ctx[NUM_OP]; + bool xts_key_fallback; + struct crypto_skcipher *fallback; +}; + +struct caam_skcipher_req_ctx { + struct skcipher_request fallback_req; }; static int aead_set_sh_desc(struct crypto_aead *aead) @@ -726,12 +734,21 @@ struct caam_ctx *ctx = crypto_skcipher_ctx(skcipher); struct device *jrdev = ctx->jrdev; int ret = 0; + int err; - if (keylen != 2 * AES_MIN_KEY_SIZE && keylen != 2 * AES_MAX_KEY_SIZE) { - dev_err(jrdev, "key size mismatch\n"); - return -EINVAL; + err = xts_verify_key(skcipher, key, keylen); + if (err) { + dev_dbg(jrdev, "key size mismatch\n"); + return err; } + if (keylen != 2 * AES_KEYSIZE_128 && keylen != 2 * AES_KEYSIZE_256) + ctx->xts_key_fallback = true; + + err = crypto_skcipher_setkey(ctx->fallback, key, keylen); + if (err) + return err; + ctx->cdata.keylen = keylen; ctx->cdata.key_virt = key; ctx->cdata.key_inline = true; @@ -1373,6 +1390,14 @@ return edesc; } +static inline bool xts_skcipher_ivsize(struct skcipher_request *req) +{ + struct crypto_skcipher *skcipher = crypto_skcipher_reqtfm(req); + unsigned int ivsize = crypto_skcipher_ivsize(skcipher); + + return !!get_unaligned((u64 *)(req->iv + (ivsize / 2))); +} + static inline int skcipher_crypt(struct skcipher_request *req, bool encrypt) { struct skcipher_edesc *edesc; @@ -1383,6 +1408,22 @@ if (!req->cryptlen) return 0; + if (ctx->fallback && (xts_skcipher_ivsize(req) || + ctx->xts_key_fallback)) { + struct caam_skcipher_req_ctx *rctx = skcipher_request_ctx(req); + + skcipher_request_set_tfm(&rctx->fallback_req, ctx->fallback); + skcipher_request_set_callback(&rctx->fallback_req, + req->base.flags, + req->base.complete, + req->base.data); + skcipher_request_set_crypt(&rctx->fallback_req, req->src, + req->dst, req->cryptlen, req->iv); + + return encrypt ? crypto_skcipher_encrypt(&rctx->fallback_req) : + crypto_skcipher_decrypt(&rctx->fallback_req); + } + if (unlikely(caam_congested)) return -EAGAIN; @@ -1507,6 +1548,7 @@ .base = { .cra_name = "xts(aes)", .cra_driver_name = "xts-aes-caam-qi", + .cra_flags = CRYPTO_ALG_NEED_FALLBACK, .cra_blocksize = AES_BLOCK_SIZE, }, .setkey = xts_skcipher_setkey, @@ -2440,9 +2482,32 @@ struct skcipher_alg *alg = crypto_skcipher_alg(tfm); struct caam_skcipher_alg *caam_alg = container_of(alg, typeof(*caam_alg), skcipher); + struct caam_ctx *ctx = crypto_skcipher_ctx(tfm); + u32 alg_aai = caam_alg->caam.class1_alg_type & OP_ALG_AAI_MASK; + int ret = 0; + + if (alg_aai == OP_ALG_AAI_XTS) { + const char *tfm_name = crypto_tfm_alg_name(&tfm->base); + struct crypto_skcipher *fallback; + + fallback = crypto_alloc_skcipher(tfm_name, 0, + CRYPTO_ALG_NEED_FALLBACK); + if (IS_ERR(fallback)) { + dev_err(ctx->jrdev, "Failed to allocate %s fallback: %ld\n", + tfm_name, PTR_ERR(fallback)); + return PTR_ERR(fallback); + } + + ctx->fallback = fallback; + crypto_skcipher_set_reqsize(tfm, sizeof(struct caam_skcipher_req_ctx) + + crypto_skcipher_reqsize(fallback)); + } + + ret = caam_init_common(ctx, &caam_alg->caam, false); + if (ret && ctx->fallback) + crypto_free_skcipher(ctx->fallback); - return caam_init_common(crypto_skcipher_ctx(tfm), &caam_alg->caam, - false); + return ret; } static int caam_aead_init(struct crypto_aead *tfm) @@ -2468,7 +2533,11 @@ static void caam_cra_exit(struct crypto_skcipher *tfm) { - caam_exit_common(crypto_skcipher_ctx(tfm)); + struct caam_ctx *ctx = crypto_skcipher_ctx(tfm); + + if (ctx->fallback) + crypto_free_skcipher(ctx->fallback); + caam_exit_common(ctx); } static void caam_aead_exit(struct crypto_aead *tfm) @@ -2502,7 +2571,7 @@ alg->base.cra_module = THIS_MODULE; alg->base.cra_priority = CAAM_CRA_PRIORITY; alg->base.cra_ctxsize = sizeof(struct caam_ctx); - alg->base.cra_flags = CRYPTO_ALG_ASYNC | CRYPTO_ALG_KERN_DRIVER_ONLY; + alg->base.cra_flags |= CRYPTO_ALG_ASYNC | CRYPTO_ALG_KERN_DRIVER_ONLY; alg->init = caam_cra_init; alg->exit = caam_cra_exit; --- linux-azure-5.8-5.8.0.orig/drivers/crypto/caam/caamalg_qi2.c +++ linux-azure-5.8-5.8.0/drivers/crypto/caam/caamalg_qi2.c @@ -1058,7 +1058,7 @@ u32 *desc; if (keylen != 2 * AES_MIN_KEY_SIZE && keylen != 2 * AES_MAX_KEY_SIZE) { - dev_err(dev, "key size mismatch\n"); + dev_dbg(dev, "key size mismatch\n"); return -EINVAL; } --- linux-azure-5.8-5.8.0.orig/drivers/crypto/caam/compat.h +++ linux-azure-5.8-5.8.0/drivers/crypto/caam/compat.h @@ -43,7 +43,6 @@ #include #include #include -#include #include #include #include --- linux-azure-5.8-5.8.0.orig/drivers/crypto/cavium/cpt/cptvf_algs.c +++ linux-azure-5.8-5.8.0/drivers/crypto/cavium/cpt/cptvf_algs.c @@ -200,6 +200,7 @@ int status; memset(req_info, 0, sizeof(struct cpt_request_info)); + req_info->may_sleep = (req->base.flags & CRYPTO_TFM_REQ_MAY_SLEEP) != 0; memset(fctx, 0, sizeof(struct fc_context)); create_input_list(req, enc, enc_iv_len); create_output_list(req, enc_iv_len); --- linux-azure-5.8-5.8.0.orig/drivers/crypto/cavium/cpt/cptvf_reqmanager.c +++ linux-azure-5.8-5.8.0/drivers/crypto/cavium/cpt/cptvf_reqmanager.c @@ -133,7 +133,7 @@ /* Setup gather (input) components */ g_sz_bytes = ((req->incnt + 3) / 4) * sizeof(struct sglist_component); - info->gather_components = kzalloc(g_sz_bytes, GFP_KERNEL); + info->gather_components = kzalloc(g_sz_bytes, req->may_sleep ? GFP_KERNEL : GFP_ATOMIC); if (!info->gather_components) { ret = -ENOMEM; goto scatter_gather_clean; @@ -150,7 +150,7 @@ /* Setup scatter (output) components */ s_sz_bytes = ((req->outcnt + 3) / 4) * sizeof(struct sglist_component); - info->scatter_components = kzalloc(s_sz_bytes, GFP_KERNEL); + info->scatter_components = kzalloc(s_sz_bytes, req->may_sleep ? GFP_KERNEL : GFP_ATOMIC); if (!info->scatter_components) { ret = -ENOMEM; goto scatter_gather_clean; @@ -167,7 +167,7 @@ /* Create and initialize DPTR */ info->dlen = g_sz_bytes + s_sz_bytes + SG_LIST_HDR_SIZE; - info->in_buffer = kzalloc(info->dlen, GFP_KERNEL); + info->in_buffer = kzalloc(info->dlen, req->may_sleep ? GFP_KERNEL : GFP_ATOMIC); if (!info->in_buffer) { ret = -ENOMEM; goto scatter_gather_clean; @@ -195,7 +195,7 @@ } /* Create and initialize RPTR */ - info->out_buffer = kzalloc(COMPLETION_CODE_SIZE, GFP_KERNEL); + info->out_buffer = kzalloc(COMPLETION_CODE_SIZE, req->may_sleep ? GFP_KERNEL : GFP_ATOMIC); if (!info->out_buffer) { ret = -ENOMEM; goto scatter_gather_clean; @@ -421,7 +421,7 @@ struct cpt_vq_command vq_cmd; union cpt_inst_s cptinst; - info = kzalloc(sizeof(*info), GFP_KERNEL); + info = kzalloc(sizeof(*info), req->may_sleep ? GFP_KERNEL : GFP_ATOMIC); if (unlikely(!info)) { dev_err(&pdev->dev, "Unable to allocate memory for info_buffer\n"); return -ENOMEM; @@ -443,7 +443,7 @@ * Get buffer for union cpt_res_s response * structure and its physical address */ - info->completion_addr = kzalloc(sizeof(union cpt_res_s), GFP_KERNEL); + info->completion_addr = kzalloc(sizeof(union cpt_res_s), req->may_sleep ? GFP_KERNEL : GFP_ATOMIC); if (unlikely(!info->completion_addr)) { dev_err(&pdev->dev, "Unable to allocate memory for completion_addr\n"); ret = -ENOMEM; --- linux-azure-5.8-5.8.0.orig/drivers/crypto/cavium/cpt/request_manager.h +++ linux-azure-5.8-5.8.0/drivers/crypto/cavium/cpt/request_manager.h @@ -62,6 +62,8 @@ union ctrl_info ctrl; /* User control information */ struct cptvf_request req; /* Request Information (Core specific) */ + bool may_sleep; + struct buf_ptr in[MAX_BUF_CNT]; struct buf_ptr out[MAX_BUF_CNT]; --- linux-azure-5.8-5.8.0.orig/drivers/crypto/ccp/ccp-dev.h +++ linux-azure-5.8-5.8.0/drivers/crypto/ccp/ccp-dev.h @@ -469,6 +469,7 @@ unsigned int sg_used; struct scatterlist *dma_sg; + struct scatterlist *dma_sg_head; struct device *dma_dev; unsigned int dma_count; enum dma_data_direction dma_dir; --- linux-azure-5.8-5.8.0.orig/drivers/crypto/ccp/ccp-ops.c +++ linux-azure-5.8-5.8.0/drivers/crypto/ccp/ccp-ops.c @@ -63,7 +63,7 @@ static void ccp_sg_free(struct ccp_sg_workarea *wa) { if (wa->dma_count) - dma_unmap_sg(wa->dma_dev, wa->dma_sg, wa->nents, wa->dma_dir); + dma_unmap_sg(wa->dma_dev, wa->dma_sg_head, wa->nents, wa->dma_dir); wa->dma_count = 0; } @@ -92,6 +92,7 @@ return 0; wa->dma_sg = sg; + wa->dma_sg_head = sg; wa->dma_dev = dev; wa->dma_dir = dma_dir; wa->dma_count = dma_map_sg(dev, sg, wa->nents, dma_dir); @@ -104,14 +105,28 @@ static void ccp_update_sg_workarea(struct ccp_sg_workarea *wa, unsigned int len) { unsigned int nbytes = min_t(u64, len, wa->bytes_left); + unsigned int sg_combined_len = 0; if (!wa->sg) return; wa->sg_used += nbytes; wa->bytes_left -= nbytes; - if (wa->sg_used == wa->sg->length) { - wa->sg = sg_next(wa->sg); + if (wa->sg_used == sg_dma_len(wa->dma_sg)) { + /* Advance to the next DMA scatterlist entry */ + wa->dma_sg = sg_next(wa->dma_sg); + + /* In the case that the DMA mapped scatterlist has entries + * that have been merged, the non-DMA mapped scatterlist + * must be advanced multiple times for each merged entry. + * This ensures that the current non-DMA mapped entry + * corresponds to the current DMA mapped entry. + */ + do { + sg_combined_len += wa->sg->length; + wa->sg = sg_next(wa->sg); + } while (wa->sg_used > sg_combined_len); + wa->sg_used = 0; } } @@ -299,7 +314,7 @@ /* Update the structures and generate the count */ buf_count = 0; while (sg_wa->bytes_left && (buf_count < dm_wa->length)) { - nbytes = min(sg_wa->sg->length - sg_wa->sg_used, + nbytes = min(sg_dma_len(sg_wa->dma_sg) - sg_wa->sg_used, dm_wa->length - buf_count); nbytes = min_t(u64, sg_wa->bytes_left, nbytes); @@ -331,11 +346,11 @@ * and destination. The resulting len values will always be <= UINT_MAX * because the dma length is an unsigned int. */ - sg_src_len = sg_dma_len(src->sg_wa.sg) - src->sg_wa.sg_used; + sg_src_len = sg_dma_len(src->sg_wa.dma_sg) - src->sg_wa.sg_used; sg_src_len = min_t(u64, src->sg_wa.bytes_left, sg_src_len); if (dst) { - sg_dst_len = sg_dma_len(dst->sg_wa.sg) - dst->sg_wa.sg_used; + sg_dst_len = sg_dma_len(dst->sg_wa.dma_sg) - dst->sg_wa.sg_used; sg_dst_len = min_t(u64, src->sg_wa.bytes_left, sg_dst_len); op_len = min(sg_src_len, sg_dst_len); } else { @@ -365,7 +380,7 @@ /* Enough data in the sg element, but we need to * adjust for any previously copied data */ - op->src.u.dma.address = sg_dma_address(src->sg_wa.sg); + op->src.u.dma.address = sg_dma_address(src->sg_wa.dma_sg); op->src.u.dma.offset = src->sg_wa.sg_used; op->src.u.dma.length = op_len & ~(block_size - 1); @@ -386,7 +401,7 @@ /* Enough room in the sg element, but we need to * adjust for any previously used area */ - op->dst.u.dma.address = sg_dma_address(dst->sg_wa.sg); + op->dst.u.dma.address = sg_dma_address(dst->sg_wa.dma_sg); op->dst.u.dma.offset = dst->sg_wa.sg_used; op->dst.u.dma.length = op->src.u.dma.length; } @@ -1731,7 +1746,7 @@ break; default: ret = -EINVAL; - goto e_ctx; + goto e_data; } } else { /* Stash the context */ @@ -2028,7 +2043,7 @@ dst.sg_wa.sg_used = 0; for (i = 1; i <= src.sg_wa.dma_count; i++) { if (!dst.sg_wa.sg || - (dst.sg_wa.sg->length < src.sg_wa.sg->length)) { + (sg_dma_len(dst.sg_wa.sg) < sg_dma_len(src.sg_wa.sg))) { ret = -EINVAL; goto e_dst; } @@ -2054,8 +2069,8 @@ goto e_dst; } - dst.sg_wa.sg_used += src.sg_wa.sg->length; - if (dst.sg_wa.sg_used == dst.sg_wa.sg->length) { + dst.sg_wa.sg_used += sg_dma_len(src.sg_wa.sg); + if (dst.sg_wa.sg_used == sg_dma_len(dst.sg_wa.sg)) { dst.sg_wa.sg = sg_next(dst.sg_wa.sg); dst.sg_wa.sg_used = 0; } --- linux-azure-5.8-5.8.0.orig/drivers/crypto/ccree/cc_cipher.c +++ linux-azure-5.8-5.8.0/drivers/crypto/ccree/cc_cipher.c @@ -159,7 +159,6 @@ skcipher_alg.base); struct device *dev = drvdata_to_dev(cc_alg->drvdata); unsigned int max_key_buf_size = cc_alg->skcipher_alg.max_keysize; - int rc = 0; dev_dbg(dev, "Initializing context @%p for %s\n", ctx_p, crypto_tfm_alg_name(tfm)); @@ -171,10 +170,19 @@ ctx_p->flow_mode = cc_alg->flow_mode; ctx_p->drvdata = cc_alg->drvdata; + if (ctx_p->cipher_mode == DRV_CIPHER_ESSIV) { + /* Alloc hash tfm for essiv */ + ctx_p->shash_tfm = crypto_alloc_shash("sha256-generic", 0, 0); + if (IS_ERR(ctx_p->shash_tfm)) { + dev_err(dev, "Error allocating hash tfm for ESSIV.\n"); + return PTR_ERR(ctx_p->shash_tfm); + } + } + /* Allocate key buffer, cache line aligned */ ctx_p->user.key = kmalloc(max_key_buf_size, GFP_KERNEL); if (!ctx_p->user.key) - return -ENOMEM; + goto free_shash; dev_dbg(dev, "Allocated key buffer in context. key=@%p\n", ctx_p->user.key); @@ -186,21 +194,19 @@ if (dma_mapping_error(dev, ctx_p->user.key_dma_addr)) { dev_err(dev, "Mapping Key %u B at va=%pK for DMA failed\n", max_key_buf_size, ctx_p->user.key); - return -ENOMEM; + goto free_key; } dev_dbg(dev, "Mapped key %u B at va=%pK to dma=%pad\n", max_key_buf_size, ctx_p->user.key, &ctx_p->user.key_dma_addr); - if (ctx_p->cipher_mode == DRV_CIPHER_ESSIV) { - /* Alloc hash tfm for essiv */ - ctx_p->shash_tfm = crypto_alloc_shash("sha256-generic", 0, 0); - if (IS_ERR(ctx_p->shash_tfm)) { - dev_err(dev, "Error allocating hash tfm for ESSIV.\n"); - return PTR_ERR(ctx_p->shash_tfm); - } - } + return 0; + +free_key: + kfree(ctx_p->user.key); +free_shash: + crypto_free_shash(ctx_p->shash_tfm); - return rc; + return -ENOMEM; } static void cc_cipher_exit(struct crypto_tfm *tfm) --- linux-azure-5.8-5.8.0.orig/drivers/crypto/ccree/cc_pm.c +++ linux-azure-5.8-5.8.0/drivers/crypto/ccree/cc_pm.c @@ -65,8 +65,12 @@ int cc_pm_get(struct device *dev) { int rc = pm_runtime_get_sync(dev); + if (rc < 0) { + pm_runtime_put_noidle(dev); + return rc; + } - return (rc == 1 ? 0 : rc); + return 0; } void cc_pm_put_suspend(struct device *dev) --- linux-azure-5.8-5.8.0.orig/drivers/crypto/chelsio/chcr_ktls.c +++ linux-azure-5.8-5.8.0/drivers/crypto/chelsio/chcr_ktls.c @@ -659,7 +659,8 @@ } static void *__chcr_write_cpl_set_tcb_ulp(struct chcr_ktls_info *tx_info, - u32 tid, void *pos, u16 word, u64 mask, + u32 tid, void *pos, u16 word, + struct sge_eth_txq *q, u64 mask, u64 val, u32 reply) { struct cpl_set_tcb_field_core *cpl; @@ -668,7 +669,10 @@ /* ULP_TXPKT */ txpkt = pos; - txpkt->cmd_dest = htonl(ULPTX_CMD_V(ULP_TX_PKT) | ULP_TXPKT_DEST_V(0)); + txpkt->cmd_dest = htonl(ULPTX_CMD_V(ULP_TX_PKT) | + ULP_TXPKT_CHANNELID_V(tx_info->port_id) | + ULP_TXPKT_FID_V(q->q.cntxt_id) | + ULP_TXPKT_RO_F); txpkt->len = htonl(DIV_ROUND_UP(CHCR_SET_TCB_FIELD_LEN, 16)); /* ULPTX_IDATA sub-command */ @@ -723,7 +727,7 @@ } else { u8 buf[48] = {0}; - __chcr_write_cpl_set_tcb_ulp(tx_info, tid, buf, word, + __chcr_write_cpl_set_tcb_ulp(tx_info, tid, buf, word, q, mask, val, reply); return chcr_copy_to_txd(buf, &q->q, pos, @@ -731,7 +735,7 @@ } } - pos = __chcr_write_cpl_set_tcb_ulp(tx_info, tid, pos, word, + pos = __chcr_write_cpl_set_tcb_ulp(tx_info, tid, pos, word, q, mask, val, reply); /* check again if we are at the end of the queue */ @@ -917,15 +921,14 @@ struct fw_eth_tx_pkt_wr *wr; struct cpl_tx_pkt_core *cpl; u32 ctrl, iplen, maclen; -#if IS_ENABLED(CONFIG_IPV6) struct ipv6hdr *ip6; -#endif unsigned int ndesc; struct tcphdr *tcp; int len16, pktlen; struct iphdr *ip; int credits; u8 buf[150]; + u64 cntrl1; void *pos; iplen = skb_network_header_len(skb); @@ -964,22 +967,26 @@ TXPKT_PF_V(tx_info->adap->pf)); cpl->pack = 0; cpl->len = htons(pktlen); - /* checksum offload */ - cpl->ctrl1 = 0; - - pos = cpl + 1; memcpy(buf, skb->data, pktlen); - if (tx_info->ip_family == AF_INET) { + if (!IS_ENABLED(CONFIG_IPV6) || tx_info->ip_family == AF_INET) { /* we need to correct ip header len */ ip = (struct iphdr *)(buf + maclen); ip->tot_len = htons(pktlen - maclen); -#if IS_ENABLED(CONFIG_IPV6) + cntrl1 = TXPKT_CSUM_TYPE_V(TX_CSUM_TCPIP); } else { ip6 = (struct ipv6hdr *)(buf + maclen); ip6->payload_len = htons(pktlen - maclen - iplen); -#endif + cntrl1 = TXPKT_CSUM_TYPE_V(TX_CSUM_TCPIP6); } + + cntrl1 |= T6_TXPKT_ETHHDR_LEN_V(maclen - ETH_HLEN) | + TXPKT_IPHDR_LEN_V(iplen); + /* checksum offload */ + cpl->ctrl1 = cpu_to_be64(cntrl1); + + pos = cpl + 1; + /* now take care of the tcp header, if fin is not set then clear push * bit as well, and if fin is set, it will be sent at the last so we * need to update the tcp sequence number as per the last packet. --- linux-azure-5.8-5.8.0.orig/drivers/crypto/chelsio/chtls/chtls.h +++ linux-azure-5.8-5.8.0/drivers/crypto/chelsio/chtls/chtls.h @@ -485,7 +485,11 @@ void chtls_tcp_push(struct sock *sk, int flags); int chtls_push_frames(struct chtls_sock *csk, int comp); int chtls_set_tcb_tflag(struct sock *sk, unsigned int bit_pos, int val); +void chtls_set_tcb_field_rpl_skb(struct sock *sk, u16 word, + u64 mask, u64 val, u8 cookie, + int through_l2t); int chtls_setkey(struct chtls_sock *csk, u32 keylen, u32 mode, int cipher_type); +void chtls_set_quiesce_ctrl(struct sock *sk, int val); void skb_entail(struct sock *sk, struct sk_buff *skb, int flags); unsigned int keyid_to_addr(int start_addr, int keyid); void free_tls_keyid(struct sock *sk); --- linux-azure-5.8-5.8.0.orig/drivers/crypto/chelsio/chtls/chtls_cm.c +++ linux-azure-5.8-5.8.0/drivers/crypto/chelsio/chtls/chtls_cm.c @@ -32,6 +32,7 @@ #include "chtls.h" #include "chtls_cm.h" #include "clip_tbl.h" +#include "t4_tcb.h" /* * State transitions and actions for close. Note that if we are in SYN_SENT @@ -92,11 +93,13 @@ static struct net_device *chtls_find_netdev(struct chtls_dev *cdev, struct sock *sk) { + struct adapter *adap = pci_get_drvdata(cdev->pdev); struct net_device *ndev = cdev->ports[0]; #if IS_ENABLED(CONFIG_IPV6) struct net_device *temp; int addr_type; #endif + int i; switch (sk->sk_family) { case PF_INET: @@ -127,8 +130,12 @@ return NULL; if (is_vlan_dev(ndev)) - return vlan_dev_real_dev(ndev); - return ndev; + ndev = vlan_dev_real_dev(ndev); + + for_each_port(adap, i) + if (cdev->ports[i] == ndev) + return ndev; + return NULL; } static void assign_rxopt(struct sock *sk, unsigned int opt) @@ -206,7 +213,7 @@ { if (likely(skb && !skb_shared(skb) && !skb_cloned(skb))) { __skb_trim(skb, 0); - refcount_add(2, &skb->users); + refcount_inc(&skb->users); } else { skb = alloc_skb(len, GFP_KERNEL | __GFP_NOFAIL); } @@ -261,7 +268,9 @@ if (sk->sk_state != TCP_SYN_RECV) chtls_send_abort(sk, mode, skb); else - goto out; + chtls_set_tcb_field_rpl_skb(sk, TCB_T_FLAGS_W, + TCB_T_FLAGS_V(TCB_T_FLAGS_M), 0, + TCB_FIELD_COOKIE_TFLAG, 1); return; out: @@ -477,7 +486,6 @@ chtls_purge_write_queue(sk); free_tls_keyid(sk); kref_put(&csk->kref, chtls_sock_release); - csk->cdev = NULL; if (sk->sk_family == AF_INET) sk->sk_prot = &tcp_prot; #if IS_ENABLED(CONFIG_IPV6) @@ -616,7 +624,7 @@ while (!skb_queue_empty(&listen_ctx->synq)) { struct chtls_sock *csk = - container_of((struct synq *)__skb_dequeue + container_of((struct synq *)skb_peek (&listen_ctx->synq), struct chtls_sock, synq); struct sock *child = csk->sk; @@ -736,14 +744,13 @@ #if IS_ENABLED(CONFIG_IPV6) if (sk->sk_family == PF_INET6) { - struct chtls_sock *csk; + struct net_device *ndev = chtls_find_netdev(cdev, sk); int addr_type = 0; - csk = rcu_dereference_sk_user_data(sk); addr_type = ipv6_addr_type((const struct in6_addr *) &sk->sk_v6_rcv_saddr); if (addr_type != IPV6_ADDR_ANY) - cxgb4_clip_release(csk->egress_dev, (const u32 *) + cxgb4_clip_release(ndev, (const u32 *) &sk->sk_v6_rcv_saddr, 1); } #endif @@ -768,14 +775,13 @@ if (rpl->status != CPL_ERR_NONE) { pr_info("Unexpected PASS_OPEN_RPL status %u for STID %u\n", rpl->status, stid); - return CPL_RET_BUF_DONE; + } else { + cxgb4_free_stid(cdev->tids, stid, listen_ctx->lsk->sk_family); + sock_put(listen_ctx->lsk); + kfree(listen_ctx); + module_put(THIS_MODULE); } - cxgb4_free_stid(cdev->tids, stid, listen_ctx->lsk->sk_family); - sock_put(listen_ctx->lsk); - kfree(listen_ctx); - module_put(THIS_MODULE); - - return 0; + return CPL_RET_BUF_DONE; } static int chtls_close_listsrv_rpl(struct chtls_dev *cdev, struct sk_buff *skb) @@ -792,15 +798,13 @@ if (rpl->status != CPL_ERR_NONE) { pr_info("Unexpected CLOSE_LISTSRV_RPL status %u for STID %u\n", rpl->status, stid); - return CPL_RET_BUF_DONE; + } else { + cxgb4_free_stid(cdev->tids, stid, listen_ctx->lsk->sk_family); + sock_put(listen_ctx->lsk); + kfree(listen_ctx); + module_put(THIS_MODULE); } - - cxgb4_free_stid(cdev->tids, stid, listen_ctx->lsk->sk_family); - sock_put(listen_ctx->lsk); - kfree(listen_ctx); - module_put(THIS_MODULE); - - return 0; + return CPL_RET_BUF_DONE; } static void chtls_purge_wr_queue(struct sock *sk) @@ -1107,6 +1111,7 @@ const struct cpl_pass_accept_req *req, struct chtls_dev *cdev) { + struct adapter *adap = pci_get_drvdata(cdev->pdev); struct neighbour *n = NULL; struct inet_sock *newinet; const struct iphdr *iph; @@ -1116,9 +1121,10 @@ struct dst_entry *dst; struct tcp_sock *tp; struct sock *newsk; + bool found = false; u16 port_id; int rxq_idx; - int step; + int step, i; iph = (const struct iphdr *)network_hdr; newsk = tcp_create_openreq_child(lsk, oreq, cdev->askb); @@ -1150,12 +1156,20 @@ n = dst_neigh_lookup(dst, &ip6h->saddr); #endif } - if (!n) - goto free_sk; + if (!n || !n->dev) + goto free_dst; ndev = n->dev; - if (!ndev) + if (is_vlan_dev(ndev)) + ndev = vlan_dev_real_dev(ndev); + + for_each_port(adap, i) + if (cdev->ports[i] == ndev) + found = true; + + if (!found) goto free_dst; + port_id = cxgb4_port_idx(ndev); csk = chtls_sock_create(cdev); @@ -1201,6 +1215,7 @@ sk_setup_caps(newsk, dst); ctx = tls_get_ctx(lsk); newsk->sk_destruct = ctx->sk_destruct; + newsk->sk_prot_creator = lsk->sk_prot_creator; csk->sk = newsk; csk->passive_reap_next = oreq; csk->tx_chan = cxgb4_port_chan(ndev); @@ -1231,6 +1246,8 @@ free_csk: chtls_sock_release(&csk->kref); free_dst: + if (n) + neigh_release(n); dst_release(dst); free_sk: inet_csk_prepare_forced_close(newsk); @@ -1380,7 +1397,7 @@ newsk = chtls_recv_sock(sk, oreq, network_hdr, req, cdev); if (!newsk) - goto free_oreq; + goto reject; if (chtls_get_module(newsk)) goto reject; @@ -1396,8 +1413,6 @@ kfree_skb(skb); return; -free_oreq: - chtls_reqsk_free(oreq); reject: mk_tid_release(reply_skb, 0, tid); cxgb4_ofld_send(cdev->lldi->ports[0], reply_skb); @@ -1506,7 +1521,6 @@ struct chtls_sock *csk = sk->sk_user_data; local_bh_disable(); - bh_lock_sock(sk); release_tcp_port(sk); /* release the port immediately */ spin_lock(&reap_list_lock); @@ -1515,7 +1529,6 @@ if (!csk->passive_reap_next) schedule_work(&reap_task); spin_unlock(&reap_list_lock); - bh_unlock_sock(sk); local_bh_enable(); } @@ -1584,6 +1597,11 @@ sk_wake_async(sk, 0, POLL_OUT); data = lookup_stid(cdev->tids, stid); + if (!data) { + /* listening server close */ + kfree_skb(skb); + goto unlock; + } lsk = ((struct listen_ctx *)data)->lsk; bh_lock_sock(lsk); @@ -1931,6 +1949,8 @@ else if (tcp_sk(sk)->linger2 < 0 && !csk_flag_nochk(csk, CSK_ABORT_SHUTDOWN)) chtls_abort_conn(sk, skb); + else if (csk_flag_nochk(csk, CSK_TX_DATA_SENT)) + chtls_set_quiesce_ctrl(sk, 0); break; default: pr_info("close_con_rpl in bad state %d\n", sk->sk_state); @@ -1992,39 +2012,6 @@ spin_unlock_bh(&cdev->deferq.lock); } -static void send_abort_rpl(struct sock *sk, struct sk_buff *skb, - struct chtls_dev *cdev, int status, int queue) -{ - struct cpl_abort_req_rss *req = cplhdr(skb); - struct sk_buff *reply_skb; - struct chtls_sock *csk; - - csk = rcu_dereference_sk_user_data(sk); - - reply_skb = alloc_skb(sizeof(struct cpl_abort_rpl), - GFP_KERNEL); - - if (!reply_skb) { - req->status = (queue << 1); - t4_defer_reply(skb, cdev, send_defer_abort_rpl); - return; - } - - set_abort_rpl_wr(reply_skb, GET_TID(req), status); - kfree_skb(skb); - - set_wr_txq(reply_skb, CPL_PRIORITY_DATA, queue); - if (csk_conn_inline(csk)) { - struct l2t_entry *e = csk->l2t_entry; - - if (e && sk->sk_state != TCP_SYN_RECV) { - cxgb4_l2t_send(csk->egress_dev, reply_skb, e); - return; - } - } - cxgb4_ofld_send(cdev->lldi->ports[0], reply_skb); -} - static void chtls_send_abort_rpl(struct sock *sk, struct sk_buff *skb, struct chtls_dev *cdev, int status, int queue) @@ -2073,9 +2060,9 @@ queue = csk->txq_idx; skb->sk = NULL; + chtls_send_abort_rpl(child, skb, BLOG_SKB_CB(skb)->cdev, + CPL_ABORT_NO_RST, queue); do_abort_syn_rcv(child, lsk); - send_abort_rpl(child, skb, BLOG_SKB_CB(skb)->cdev, - CPL_ABORT_NO_RST, queue); } static int abort_syn_rcv(struct sock *sk, struct sk_buff *skb) @@ -2105,8 +2092,8 @@ if (!sock_owned_by_user(psk)) { int queue = csk->txq_idx; + chtls_send_abort_rpl(sk, skb, cdev, CPL_ABORT_NO_RST, queue); do_abort_syn_rcv(sk, psk); - send_abort_rpl(sk, skb, cdev, CPL_ABORT_NO_RST, queue); } else { skb->sk = sk; BLOG_SKB_CB(skb)->backlog_rcv = bl_abort_syn_rcv; @@ -2124,9 +2111,6 @@ int queue = csk->txq_idx; if (is_neg_adv(req->status)) { - if (sk->sk_state == TCP_SYN_RECV) - chtls_set_tcb_tflag(sk, 0, 0); - kfree_skb(skb); return; } @@ -2153,12 +2137,12 @@ if (sk->sk_state == TCP_SYN_RECV && !abort_syn_rcv(sk, skb)) return; - chtls_release_resources(sk); - chtls_conn_done(sk); } chtls_send_abort_rpl(sk, skb, BLOG_SKB_CB(skb)->cdev, rst_status, queue); + chtls_release_resources(sk); + chtls_conn_done(sk); } static void chtls_abort_rpl_rss(struct sock *sk, struct sk_buff *skb) @@ -2310,6 +2294,28 @@ return 0; } +static int chtls_set_tcb_rpl(struct chtls_dev *cdev, struct sk_buff *skb) +{ + struct cpl_set_tcb_rpl *rpl = cplhdr(skb) + RSS_HDR; + unsigned int hwtid = GET_TID(rpl); + struct sock *sk; + + sk = lookup_tid(cdev->tids, hwtid); + + /* return EINVAL if socket doesn't exist */ + if (!sk) + return -EINVAL; + + /* Reusing the skb as size of cpl_set_tcb_field structure + * is greater than cpl_abort_req + */ + if (TCB_COOKIE_G(rpl->cookie) == TCB_FIELD_COOKIE_TFLAG) + chtls_send_abort(sk, CPL_ABORT_SEND_RST, NULL); + + kfree_skb(skb); + return 0; +} + chtls_handler_func chtls_handlers[NUM_CPL_CMDS] = { [CPL_PASS_OPEN_RPL] = chtls_pass_open_rpl, [CPL_CLOSE_LISTSRV_RPL] = chtls_close_listsrv_rpl, @@ -2322,5 +2328,6 @@ [CPL_CLOSE_CON_RPL] = chtls_conn_cpl, [CPL_ABORT_REQ_RSS] = chtls_conn_cpl, [CPL_ABORT_RPL_RSS] = chtls_conn_cpl, - [CPL_FW4_ACK] = chtls_wr_ack, + [CPL_FW4_ACK] = chtls_wr_ack, + [CPL_SET_TCB_RPL] = chtls_set_tcb_rpl, }; --- linux-azure-5.8-5.8.0.orig/drivers/crypto/chelsio/chtls/chtls_cm.h +++ linux-azure-5.8-5.8.0/drivers/crypto/chelsio/chtls/chtls_cm.h @@ -50,9 +50,6 @@ #define MIN_RCV_WND (24 * 1024U) #define LOOPBACK(x) (((x) & htonl(0xff000000)) == htonl(0x7f000000)) -/* ulp_mem_io + ulptx_idata + payload + padding */ -#define MAX_IMM_ULPTX_WR_LEN (32 + 8 + 256 + 8) - /* for TX: a skb must have a headroom of at least TX_HEADER_LEN bytes */ #define TX_HEADER_LEN \ (sizeof(struct fw_ofld_tx_data_wr) + sizeof(struct sge_opaque_hdr)) --- linux-azure-5.8-5.8.0.orig/drivers/crypto/chelsio/chtls/chtls_hw.c +++ linux-azure-5.8-5.8.0/drivers/crypto/chelsio/chtls/chtls_hw.c @@ -88,6 +88,24 @@ return ret < 0 ? ret : 0; } +void chtls_set_tcb_field_rpl_skb(struct sock *sk, u16 word, + u64 mask, u64 val, u8 cookie, + int through_l2t) +{ + struct sk_buff *skb; + unsigned int wrlen; + + wrlen = sizeof(struct cpl_set_tcb_field) + sizeof(struct ulptx_idata); + wrlen = roundup(wrlen, 16); + + skb = alloc_skb(wrlen, GFP_KERNEL | __GFP_NOFAIL); + if (!skb) + return; + + __set_tcb_field(sk, skb, word, mask, val, cookie, 0); + send_or_defer(sk, tcp_sk(sk), skb, through_l2t); +} + /* * Set one of the t_flags bits in the TCB. */ @@ -113,6 +131,29 @@ TF_RX_QUIESCE_V(val)); } +void chtls_set_quiesce_ctrl(struct sock *sk, int val) +{ + struct chtls_sock *csk; + struct sk_buff *skb; + unsigned int wrlen; + int ret; + + wrlen = sizeof(struct cpl_set_tcb_field) + sizeof(struct ulptx_idata); + wrlen = roundup(wrlen, 16); + + skb = alloc_skb(wrlen, GFP_ATOMIC); + if (!skb) + return; + + csk = rcu_dereference_sk_user_data(sk); + + __set_tcb_field(sk, skb, 1, TF_RX_QUIESCE_V(1), 0, 0, 1); + set_wr_txq(skb, CPL_PRIORITY_CONTROL, csk->port_id); + ret = cxgb4_ofld_send(csk->egress_dev, skb); + if (ret < 0) + kfree_skb(skb); +} + /* TLS Key bitmap processing */ int chtls_init_kmap(struct chtls_dev *cdev, struct cxgb4_lld_info *lldi) { @@ -383,11 +424,15 @@ if (ret) goto out_notcb; + if (unlikely(csk_flag(sk, CSK_ABORT_SHUTDOWN))) + goto out_notcb; + set_wr_txq(skb, CPL_PRIORITY_DATA, csk->tlshws.txqid); csk->wr_credits -= DIV_ROUND_UP(len, 16); csk->wr_unacked += DIV_ROUND_UP(len, 16); enqueue_wr(csk, skb); cxgb4_ofld_send(csk->egress_dev, skb); + skb = NULL; chtls_set_scmd(csk); /* Clear quiesce for Rx key */ --- linux-azure-5.8-5.8.0.orig/drivers/crypto/chelsio/chtls/chtls_io.c +++ linux-azure-5.8-5.8.0/drivers/crypto/chelsio/chtls/chtls_io.c @@ -902,9 +902,9 @@ return 0; } -static int csk_mem_free(struct chtls_dev *cdev, struct sock *sk) +static bool csk_mem_free(struct chtls_dev *cdev, struct sock *sk) { - return (cdev->max_host_sndbuf - sk->sk_wmem_queued); + return (cdev->max_host_sndbuf - sk->sk_wmem_queued > 0); } static int csk_wait_memory(struct chtls_dev *cdev, @@ -1240,6 +1240,7 @@ copied = 0; csk = rcu_dereference_sk_user_data(sk); cdev = csk->cdev; + lock_sock(sk); timeo = sock_sndtimeo(sk, flags & MSG_DONTWAIT); err = sk_stream_wait_connect(sk, &timeo); @@ -1584,6 +1585,7 @@ tp->urg_data = 0; if ((avail + offset) >= skb->len) { + struct sk_buff *next_skb; if (ULP_SKB_CB(skb)->flags & ULPCB_FLAG_TLS_HDR) { tp->copied_seq += skb->len; hws->rcvpld = skb->hdr_len; @@ -1594,8 +1596,10 @@ chtls_free_skb(sk, skb); buffers_freed++; hws->copied_seq = 0; - if (copied >= target && - !skb_peek(&sk->sk_receive_queue)) + next_skb = skb_peek(&sk->sk_receive_queue); + if (copied >= target && !next_skb) + break; + if (ULP_SKB_CB(next_skb)->flags & ULPCB_FLAG_TLS_HDR) break; } } while (len > 0); --- linux-azure-5.8-5.8.0.orig/drivers/crypto/hisilicon/sec/sec_algs.c +++ linux-azure-5.8-5.8.0/drivers/crypto/hisilicon/sec/sec_algs.c @@ -175,7 +175,8 @@ dma_addr_t *psec_sgl, struct scatterlist *sgl, int count, - struct sec_dev_info *info) + struct sec_dev_info *info, + gfp_t gfp) { struct sec_hw_sgl *sgl_current = NULL; struct sec_hw_sgl *sgl_next; @@ -190,7 +191,7 @@ sge_index = i % SEC_MAX_SGE_NUM; if (sge_index == 0) { sgl_next = dma_pool_zalloc(info->hw_sgl_pool, - GFP_KERNEL, &sgl_next_dma); + gfp, &sgl_next_dma); if (!sgl_next) { ret = -ENOMEM; goto err_free_hw_sgls; @@ -545,14 +546,14 @@ } static int sec_alg_alloc_and_calc_split_sizes(int length, size_t **split_sizes, - int *steps) + int *steps, gfp_t gfp) { size_t *sizes; int i; /* Split into suitable sized blocks */ *steps = roundup(length, SEC_REQ_LIMIT) / SEC_REQ_LIMIT; - sizes = kcalloc(*steps, sizeof(*sizes), GFP_KERNEL); + sizes = kcalloc(*steps, sizeof(*sizes), gfp); if (!sizes) return -ENOMEM; @@ -568,7 +569,7 @@ int steps, struct scatterlist ***splits, int **splits_nents, int sgl_len_in, - struct device *dev) + struct device *dev, gfp_t gfp) { int ret, count; @@ -576,12 +577,12 @@ if (!count) return -EINVAL; - *splits = kcalloc(steps, sizeof(struct scatterlist *), GFP_KERNEL); + *splits = kcalloc(steps, sizeof(struct scatterlist *), gfp); if (!*splits) { ret = -ENOMEM; goto err_unmap_sg; } - *splits_nents = kcalloc(steps, sizeof(int), GFP_KERNEL); + *splits_nents = kcalloc(steps, sizeof(int), gfp); if (!*splits_nents) { ret = -ENOMEM; goto err_free_splits; @@ -589,7 +590,7 @@ /* output the scatter list before and after this */ ret = sg_split(sgl, count, 0, steps, split_sizes, - *splits, *splits_nents, GFP_KERNEL); + *splits, *splits_nents, gfp); if (ret) { ret = -ENOMEM; goto err_free_splits_nents; @@ -630,13 +631,13 @@ int el_size, bool different_dest, struct scatterlist *sgl_in, int n_ents_in, struct scatterlist *sgl_out, int n_ents_out, - struct sec_dev_info *info) + struct sec_dev_info *info, gfp_t gfp) { struct sec_request_el *el; struct sec_bd_info *req; int ret; - el = kzalloc(sizeof(*el), GFP_KERNEL); + el = kzalloc(sizeof(*el), gfp); if (!el) return ERR_PTR(-ENOMEM); el->el_length = el_size; @@ -668,7 +669,7 @@ el->sgl_in = sgl_in; ret = sec_alloc_and_fill_hw_sgl(&el->in, &el->dma_in, el->sgl_in, - n_ents_in, info); + n_ents_in, info, gfp); if (ret) goto err_free_el; @@ -679,7 +680,7 @@ el->sgl_out = sgl_out; ret = sec_alloc_and_fill_hw_sgl(&el->out, &el->dma_out, el->sgl_out, - n_ents_out, info); + n_ents_out, info, gfp); if (ret) goto err_free_hw_sgl_in; @@ -720,6 +721,7 @@ int *splits_out_nents = NULL; struct sec_request_el *el, *temp; bool split = skreq->src != skreq->dst; + gfp_t gfp = skreq->base.flags & CRYPTO_TFM_REQ_MAY_SLEEP ? GFP_KERNEL : GFP_ATOMIC; mutex_init(&sec_req->lock); sec_req->req_base = &skreq->base; @@ -728,13 +730,13 @@ sec_req->len_in = sg_nents(skreq->src); ret = sec_alg_alloc_and_calc_split_sizes(skreq->cryptlen, &split_sizes, - &steps); + &steps, gfp); if (ret) return ret; sec_req->num_elements = steps; ret = sec_map_and_split_sg(skreq->src, split_sizes, steps, &splits_in, &splits_in_nents, sec_req->len_in, - info->dev); + info->dev, gfp); if (ret) goto err_free_split_sizes; @@ -742,7 +744,7 @@ sec_req->len_out = sg_nents(skreq->dst); ret = sec_map_and_split_sg(skreq->dst, split_sizes, steps, &splits_out, &splits_out_nents, - sec_req->len_out, info->dev); + sec_req->len_out, info->dev, gfp); if (ret) goto err_unmap_in_sg; } @@ -775,7 +777,7 @@ splits_in[i], splits_in_nents[i], split ? splits_out[i] : NULL, split ? splits_out_nents[i] : 0, - info); + info, gfp); if (IS_ERR(el)) { ret = PTR_ERR(el); goto err_free_elements; --- linux-azure-5.8-5.8.0.orig/drivers/crypto/hisilicon/sec2/sec_crypto.c +++ linux-azure-5.8-5.8.0/drivers/crypto/hisilicon/sec2/sec_crypto.c @@ -332,11 +332,14 @@ ret = sec_alloc_pbuf_resource(dev, res); if (ret) { dev_err(dev, "fail to alloc pbuf dma resource!\n"); - goto alloc_fail; + goto alloc_pbuf_fail; } } return 0; +alloc_pbuf_fail: + if (ctx->alg_type == SEC_AEAD) + sec_free_mac_resource(dev, qp_ctx->res); alloc_fail: sec_free_civ_resource(dev, res); @@ -447,8 +450,10 @@ ctx->fake_req_limit = QM_Q_DEPTH >> 1; ctx->qp_ctx = kcalloc(sec->ctx_q_num, sizeof(struct sec_qp_ctx), GFP_KERNEL); - if (!ctx->qp_ctx) - return -ENOMEM; + if (!ctx->qp_ctx) { + ret = -ENOMEM; + goto err_destroy_qps; + } for (i = 0; i < sec->ctx_q_num; i++) { ret = sec_create_qp_ctx(&sec->qm, ctx, i, 0); @@ -457,12 +462,15 @@ } return 0; + err_sec_release_qp_ctx: for (i = i - 1; i >= 0; i--) sec_release_qp_ctx(ctx, &ctx->qp_ctx[i]); - sec_destroy_qps(ctx->qps, sec->ctx_q_num); kfree(ctx->qp_ctx); +err_destroy_qps: + sec_destroy_qps(ctx->qps, sec->ctx_q_num); + return ret; } --- linux-azure-5.8-5.8.0.orig/drivers/crypto/hisilicon/sec2/sec_main.c +++ linux-azure-5.8-5.8.0/drivers/crypto/hisilicon/sec2/sec_main.c @@ -30,9 +30,9 @@ #define SEC_SQE_SIZE 128 #define SEC_SQ_SIZE (SEC_SQE_SIZE * QM_Q_DEPTH) -#define SEC_PF_DEF_Q_NUM 64 +#define SEC_PF_DEF_Q_NUM 256 #define SEC_PF_DEF_Q_BASE 0 -#define SEC_CTX_Q_NUM_DEF 24 +#define SEC_CTX_Q_NUM_DEF 2 #define SEC_CTX_Q_NUM_MAX 32 #define SEC_CTRL_CNT_CLR_CE 0x301120 @@ -191,7 +191,7 @@ }; static u32 ctx_q_num = SEC_CTX_Q_NUM_DEF; module_param_cb(ctx_q_num, &sec_ctx_q_num_ops, &ctx_q_num, 0444); -MODULE_PARM_DESC(ctx_q_num, "Queue num in ctx (24 default, 2, 4, ..., 32)"); +MODULE_PARM_DESC(ctx_q_num, "Queue num in ctx (2 default, 2, 4, ..., 32)"); static const struct kernel_param_ops vfs_num_ops = { .set = vfs_num_set, --- linux-azure-5.8-5.8.0.orig/drivers/crypto/inside-secure/safexcel.c +++ linux-azure-5.8-5.8.0/drivers/crypto/inside-secure/safexcel.c @@ -1596,7 +1596,7 @@ priv->ring[i].rdr_req = devm_kcalloc(dev, EIP197_DEFAULT_RING_SIZE, - sizeof(priv->ring[i].rdr_req), + sizeof(*priv->ring[i].rdr_req), GFP_KERNEL); if (!priv->ring[i].rdr_req) return -ENOMEM; --- linux-azure-5.8-5.8.0.orig/drivers/crypto/ixp4xx_crypto.c +++ linux-azure-5.8-5.8.0/drivers/crypto/ixp4xx_crypto.c @@ -528,7 +528,7 @@ if (crypt_virt) { dma_free_coherent(dev, - NPE_QLEN_TOTAL * sizeof( struct crypt_ctl), + NPE_QLEN * sizeof(struct crypt_ctl), crypt_virt, crypt_phys); } } --- linux-azure-5.8-5.8.0.orig/drivers/crypto/mediatek/mtk-platform.c +++ linux-azure-5.8-5.8.0/drivers/crypto/mediatek/mtk-platform.c @@ -442,7 +442,7 @@ static int mtk_desc_ring_alloc(struct mtk_cryp *cryp) { struct mtk_ring **ring = cryp->ring; - int i, err = ENOMEM; + int i; for (i = 0; i < MTK_RING_MAX; i++) { ring[i] = kzalloc(sizeof(**ring), GFP_KERNEL); @@ -469,14 +469,14 @@ return 0; err_cleanup: - for (; i--; ) { + do { dma_free_coherent(cryp->dev, MTK_DESC_RING_SZ, ring[i]->res_base, ring[i]->res_dma); dma_free_coherent(cryp->dev, MTK_DESC_RING_SZ, ring[i]->cmd_base, ring[i]->cmd_dma); kfree(ring[i]); - } - return err; + } while (i--); + return -ENOMEM; } static int mtk_crypto_probe(struct platform_device *pdev) --- linux-azure-5.8-5.8.0.orig/drivers/crypto/omap-aes.c +++ linux-azure-5.8-5.8.0/drivers/crypto/omap-aes.c @@ -1138,7 +1138,7 @@ if (err < 0) { dev_err(dev, "%s: failed to get_sync(%d)\n", __func__, err); - goto err_res; + goto err_pm_disable; } omap_aes_dma_stop(dd); @@ -1247,6 +1247,7 @@ omap_aes_dma_cleanup(dd); err_irq: tasklet_kill(&dd->done_task); +err_pm_disable: pm_runtime_disable(dev); err_res: dd = NULL; --- linux-azure-5.8-5.8.0.orig/drivers/crypto/omap-sham.c +++ linux-azure-5.8-5.8.0/drivers/crypto/omap-sham.c @@ -456,6 +456,9 @@ struct omap_sham_reqctx *ctx = ahash_request_ctx(dd->req); u32 val, mask; + if (likely(ctx->digcnt)) + omap_sham_write(dd, SHA_REG_DIGCNT(dd), ctx->digcnt); + /* * Setting ALGO_CONST only for the first iteration and * CLOSE_HASH only for the last one. Note that flags mode bits --- linux-azure-5.8-5.8.0.orig/drivers/crypto/picoxcell_crypto.c +++ linux-azure-5.8-5.8.0/drivers/crypto/picoxcell_crypto.c @@ -1666,11 +1666,6 @@ goto err_clk_put; } - ret = device_create_file(&pdev->dev, &dev_attr_stat_irq_thresh); - if (ret) - goto err_clk_disable; - - /* * Use an IRQ threshold of 50% as a default. This seems to be a * reasonable trade off of latency against throughput but can be @@ -1678,6 +1673,10 @@ */ engine->stat_irq_thresh = (engine->fifo_sz / 2); + ret = device_create_file(&pdev->dev, &dev_attr_stat_irq_thresh); + if (ret) + goto err_clk_disable; + /* * Configure the interrupts. We only use the STAT_CNT interrupt as we * only submit a new packet for processing when we complete another in --- linux-azure-5.8-5.8.0.orig/drivers/crypto/qat/qat_common/qat_algs.c +++ linux-azure-5.8-5.8.0/drivers/crypto/qat/qat_common/qat_algs.c @@ -55,6 +55,7 @@ #include #include #include +#include #include #include "adf_accel_devices.h" #include "adf_transport.h" @@ -870,6 +871,11 @@ struct icp_qat_fw_la_bulk_req *msg; int digst_size = crypto_aead_authsize(aead_tfm); int ret, ctr = 0; + u32 cipher_len; + + cipher_len = areq->cryptlen - digst_size; + if (cipher_len % AES_BLOCK_SIZE != 0) + return -EINVAL; ret = qat_alg_sgl_to_bufl(ctx->inst, areq->src, areq->dst, qat_req); if (unlikely(ret)) @@ -884,7 +890,7 @@ qat_req->req.comn_mid.src_data_addr = qat_req->buf.blp; qat_req->req.comn_mid.dest_data_addr = qat_req->buf.bloutp; cipher_param = (void *)&qat_req->req.serv_specif_rqpars; - cipher_param->cipher_length = areq->cryptlen - digst_size; + cipher_param->cipher_length = cipher_len; cipher_param->cipher_offset = areq->assoclen; memcpy(cipher_param->u.cipher_IV_array, areq->iv, AES_BLOCK_SIZE); auth_param = (void *)((uint8_t *)cipher_param + sizeof(*cipher_param)); @@ -913,6 +919,9 @@ uint8_t *iv = areq->iv; int ret, ctr = 0; + if (areq->cryptlen % AES_BLOCK_SIZE != 0) + return -EINVAL; + ret = qat_alg_sgl_to_bufl(ctx->inst, areq->src, areq->dst, qat_req); if (unlikely(ret)) return ret; @@ -1102,6 +1111,14 @@ return qat_alg_skcipher_encrypt(req); } +static int qat_alg_skcipher_xts_encrypt(struct skcipher_request *req) +{ + if (req->cryptlen < XTS_BLOCK_SIZE) + return -EINVAL; + + return qat_alg_skcipher_encrypt(req); +} + static int qat_alg_skcipher_decrypt(struct skcipher_request *req) { struct crypto_skcipher *stfm = crypto_skcipher_reqtfm(req); @@ -1161,6 +1178,15 @@ return qat_alg_skcipher_decrypt(req); } + +static int qat_alg_skcipher_xts_decrypt(struct skcipher_request *req) +{ + if (req->cryptlen < XTS_BLOCK_SIZE) + return -EINVAL; + + return qat_alg_skcipher_decrypt(req); +} + static int qat_alg_aead_init(struct crypto_aead *tfm, enum icp_qat_hw_auth_algo hash, const char *hash_name) @@ -1354,8 +1380,8 @@ .init = qat_alg_skcipher_init_tfm, .exit = qat_alg_skcipher_exit_tfm, .setkey = qat_alg_skcipher_xts_setkey, - .decrypt = qat_alg_skcipher_blk_decrypt, - .encrypt = qat_alg_skcipher_blk_encrypt, + .decrypt = qat_alg_skcipher_xts_decrypt, + .encrypt = qat_alg_skcipher_xts_encrypt, .min_keysize = 2 * AES_MIN_KEY_SIZE, .max_keysize = 2 * AES_MAX_KEY_SIZE, .ivsize = AES_BLOCK_SIZE, --- linux-azure-5.8-5.8.0.orig/drivers/crypto/qat/qat_common/qat_hal.c +++ linux-azure-5.8-5.8.0/drivers/crypto/qat/qat_common/qat_hal.c @@ -1189,7 +1189,7 @@ unsigned short mask; unsigned short dr_offset = 0x10; - status = ctx_enables = qat_hal_rd_ae_csr(handle, ae, CTX_ENABLES); + ctx_enables = qat_hal_rd_ae_csr(handle, ae, CTX_ENABLES); if (CE_INUSE_CONTEXTS & ctx_enables) { if (ctx & 0x1) { pr_err("QAT: bad 4-ctx mode,ctx=0x%x\n", ctx); --- linux-azure-5.8-5.8.0.orig/drivers/crypto/qat/qat_common/qat_uclo.c +++ linux-azure-5.8-5.8.0/drivers/crypto/qat/qat_common/qat_uclo.c @@ -332,13 +332,18 @@ } return 0; out_err: + /* Do not free the list head unless we allocated it. */ + tail_old = tail_old->next; + if (flag) { + kfree(*init_tab_base); + *init_tab_base = NULL; + } + while (tail_old) { mem_init = tail_old->next; kfree(tail_old); tail_old = mem_init; } - if (flag) - kfree(*init_tab_base); return -ENOMEM; } --- linux-azure-5.8-5.8.0.orig/drivers/crypto/stm32/Kconfig +++ linux-azure-5.8-5.8.0/drivers/crypto/stm32/Kconfig @@ -3,6 +3,7 @@ tristate "Support for STM32 crc accelerators" depends on ARCH_STM32 select CRYPTO_HASH + select CRC32 help This enables support for the CRC32 hw accelerator which can be found on STMicroelectronics STM32 SOC. --- linux-azure-5.8-5.8.0.orig/drivers/crypto/stm32/stm32-crc32.c +++ linux-azure-5.8-5.8.0/drivers/crypto/stm32/stm32-crc32.c @@ -6,6 +6,7 @@ #include #include +#include #include #include #include @@ -147,7 +148,6 @@ struct stm32_crc_desc_ctx *ctx = shash_desc_ctx(desc); struct stm32_crc_ctx *mctx = crypto_shash_ctx(desc->tfm); struct stm32_crc *crc; - unsigned long flags; crc = stm32_crc_get_next_crc(); if (!crc) @@ -155,7 +155,15 @@ pm_runtime_get_sync(crc->dev); - spin_lock_irqsave(&crc->lock, flags); + if (!spin_trylock(&crc->lock)) { + /* Hardware is busy, calculate crc32 by software */ + if (mctx->poly == CRC32_POLY_LE) + ctx->partial = crc32_le(ctx->partial, d8, length); + else + ctx->partial = __crc32c_le(ctx->partial, d8, length); + + goto pm_out; + } /* * Restore previously calculated CRC for this context as init value @@ -195,8 +203,9 @@ /* Store partial result */ ctx->partial = readl_relaxed(crc->regs + CRC_DR); - spin_unlock_irqrestore(&crc->lock, flags); + spin_unlock(&crc->lock); +pm_out: pm_runtime_mark_last_busy(crc->dev); pm_runtime_put_autosuspend(crc->dev); --- linux-azure-5.8-5.8.0.orig/drivers/crypto/talitos.c +++ linux-azure-5.8-5.8.0/drivers/crypto/talitos.c @@ -460,7 +460,7 @@ /* * locate current (offending) descriptor */ -static u32 current_desc_hdr(struct device *dev, int ch) +static __be32 current_desc_hdr(struct device *dev, int ch) { struct talitos_private *priv = dev_get_drvdata(dev); int tail, iter; @@ -478,7 +478,7 @@ iter = tail; while (priv->chan[ch].fifo[iter].dma_desc != cur_desc && - priv->chan[ch].fifo[iter].desc->next_desc != cur_desc) { + priv->chan[ch].fifo[iter].desc->next_desc != cpu_to_be32(cur_desc)) { iter = (iter + 1) & (priv->fifo_len - 1); if (iter == tail) { dev_err(dev, "couldn't locate current descriptor\n"); @@ -486,7 +486,7 @@ } } - if (priv->chan[ch].fifo[iter].desc->next_desc == cur_desc) { + if (priv->chan[ch].fifo[iter].desc->next_desc == cpu_to_be32(cur_desc)) { struct talitos_edesc *edesc; edesc = container_of(priv->chan[ch].fifo[iter].desc, @@ -501,13 +501,13 @@ /* * user diagnostics; report root cause of error based on execution unit status */ -static void report_eu_error(struct device *dev, int ch, u32 desc_hdr) +static void report_eu_error(struct device *dev, int ch, __be32 desc_hdr) { struct talitos_private *priv = dev_get_drvdata(dev); int i; if (!desc_hdr) - desc_hdr = in_be32(priv->chan[ch].reg + TALITOS_DESCBUF); + desc_hdr = cpu_to_be32(in_be32(priv->chan[ch].reg + TALITOS_DESCBUF)); switch (desc_hdr & DESC_HDR_SEL0_MASK) { case DESC_HDR_SEL0_AFEU: @@ -1092,11 +1092,12 @@ */ static int sg_to_link_tbl_offset(struct scatterlist *sg, int sg_count, unsigned int offset, int datalen, int elen, - struct talitos_ptr *link_tbl_ptr) + struct talitos_ptr *link_tbl_ptr, int align) { int n_sg = elen ? sg_count + 1 : sg_count; int count = 0; int cryptlen = datalen + elen; + int padding = ALIGN(cryptlen, align) - cryptlen; while (cryptlen && sg && n_sg--) { unsigned int len = sg_dma_len(sg); @@ -1120,7 +1121,7 @@ offset += datalen; } to_talitos_ptr(link_tbl_ptr + count, - sg_dma_address(sg) + offset, len, 0); + sg_dma_address(sg) + offset, sg_next(sg) ? len : len + padding, 0); to_talitos_ptr_ext_set(link_tbl_ptr + count, 0, 0); count++; cryptlen -= len; @@ -1143,10 +1144,11 @@ unsigned int len, struct talitos_edesc *edesc, struct talitos_ptr *ptr, int sg_count, unsigned int offset, int tbl_off, int elen, - bool force) + bool force, int align) { struct talitos_private *priv = dev_get_drvdata(dev); bool is_sec1 = has_ftr_sec1(priv); + int aligned_len = ALIGN(len, align); if (!src) { to_talitos_ptr(ptr, 0, 0, is_sec1); @@ -1154,22 +1156,22 @@ } to_talitos_ptr_ext_set(ptr, elen, is_sec1); if (sg_count == 1 && !force) { - to_talitos_ptr(ptr, sg_dma_address(src) + offset, len, is_sec1); + to_talitos_ptr(ptr, sg_dma_address(src) + offset, aligned_len, is_sec1); return sg_count; } if (is_sec1) { - to_talitos_ptr(ptr, edesc->dma_link_tbl + offset, len, is_sec1); + to_talitos_ptr(ptr, edesc->dma_link_tbl + offset, aligned_len, is_sec1); return sg_count; } sg_count = sg_to_link_tbl_offset(src, sg_count, offset, len, elen, - &edesc->link_tbl[tbl_off]); + &edesc->link_tbl[tbl_off], align); if (sg_count == 1 && !force) { /* Only one segment now, so no link tbl needed*/ copy_talitos_ptr(ptr, &edesc->link_tbl[tbl_off], is_sec1); return sg_count; } to_talitos_ptr(ptr, edesc->dma_link_tbl + - tbl_off * sizeof(struct talitos_ptr), len, is_sec1); + tbl_off * sizeof(struct talitos_ptr), aligned_len, is_sec1); to_talitos_ptr_ext_or(ptr, DESC_PTR_LNKTBL_JUMP, is_sec1); return sg_count; @@ -1181,7 +1183,7 @@ unsigned int offset, int tbl_off) { return talitos_sg_map_ext(dev, src, len, edesc, ptr, sg_count, offset, - tbl_off, 0, false); + tbl_off, 0, false, 1); } /* @@ -1250,7 +1252,7 @@ ret = talitos_sg_map_ext(dev, areq->src, cryptlen, edesc, &desc->ptr[4], sg_count, areq->assoclen, tbl_off, elen, - false); + false, 1); if (ret > 1) { tbl_off += ret; @@ -1270,7 +1272,7 @@ elen = 0; ret = talitos_sg_map_ext(dev, areq->dst, cryptlen, edesc, &desc->ptr[5], sg_count, areq->assoclen, tbl_off, elen, - is_ipsec_esp && !encrypt); + is_ipsec_esp && !encrypt, 1); tbl_off += ret; if (!encrypt && is_ipsec_esp) { @@ -1576,6 +1578,8 @@ bool sync_needed = false; struct talitos_private *priv = dev_get_drvdata(dev); bool is_sec1 = has_ftr_sec1(priv); + bool is_ctr = (desc->hdr & DESC_HDR_SEL0_MASK) == DESC_HDR_SEL0_AESU && + (desc->hdr & DESC_HDR_MODE0_AESU_MASK) == DESC_HDR_MODE0_AESU_CTR; /* first DWORD empty */ @@ -1596,8 +1600,8 @@ /* * cipher in */ - sg_count = talitos_sg_map(dev, areq->src, cryptlen, edesc, - &desc->ptr[3], sg_count, 0, 0); + sg_count = talitos_sg_map_ext(dev, areq->src, cryptlen, edesc, &desc->ptr[3], + sg_count, 0, 0, 0, false, is_ctr ? 16 : 1); if (sg_count > 1) sync_needed = true; @@ -2739,6 +2743,22 @@ }, { .type = CRYPTO_ALG_TYPE_SKCIPHER, .alg.skcipher = { + .base.cra_name = "ctr(aes)", + .base.cra_driver_name = "ctr-aes-talitos", + .base.cra_blocksize = 1, + .base.cra_flags = CRYPTO_ALG_ASYNC | + CRYPTO_ALG_ALLOCATES_MEMORY, + .min_keysize = AES_MIN_KEY_SIZE, + .max_keysize = AES_MAX_KEY_SIZE, + .ivsize = AES_BLOCK_SIZE, + .setkey = skcipher_aes_setkey, + }, + .desc_hdr_template = DESC_HDR_TYPE_COMMON_NONSNOOP_NO_AFEU | + DESC_HDR_SEL0_AESU | + DESC_HDR_MODE0_AESU_CTR, + }, + { .type = CRYPTO_ALG_TYPE_SKCIPHER, + .alg.skcipher = { .base.cra_name = "ecb(des)", .base.cra_driver_name = "ecb-des-talitos", .base.cra_blocksize = DES_BLOCK_SIZE, @@ -3138,6 +3158,12 @@ t_alg->algt.alg.skcipher.setkey ?: skcipher_setkey; t_alg->algt.alg.skcipher.encrypt = skcipher_encrypt; t_alg->algt.alg.skcipher.decrypt = skcipher_decrypt; + if (!strcmp(alg->cra_name, "ctr(aes)") && !has_ftr_sec1(priv) && + DESC_TYPE(t_alg->algt.desc_hdr_template) != + DESC_TYPE(DESC_HDR_TYPE_AESU_CTR_NONSNOOP)) { + devm_kfree(dev, t_alg); + return ERR_PTR(-ENOTSUPP); + } break; case CRYPTO_ALG_TYPE_AEAD: alg = &t_alg->algt.alg.aead.base; --- linux-azure-5.8-5.8.0.orig/drivers/crypto/talitos.h +++ linux-azure-5.8-5.8.0/drivers/crypto/talitos.h @@ -344,6 +344,7 @@ /* primary execution unit mode (MODE0) and derivatives */ #define DESC_HDR_MODE0_ENCRYPT cpu_to_be32(0x00100000) +#define DESC_HDR_MODE0_AESU_MASK cpu_to_be32(0x00600000) #define DESC_HDR_MODE0_AESU_CBC cpu_to_be32(0x00200000) #define DESC_HDR_MODE0_AESU_CTR cpu_to_be32(0x00600000) #define DESC_HDR_MODE0_DEU_CBC cpu_to_be32(0x00400000) --- linux-azure-5.8-5.8.0.orig/drivers/dax/super.c +++ linux-azure-5.8-5.8.0/drivers/dax/super.c @@ -318,11 +318,15 @@ bool dax_supported(struct dax_device *dax_dev, struct block_device *bdev, int blocksize, sector_t start, sector_t len) { + if (!dax_dev) + return false; + if (!dax_alive(dax_dev)) return false; return dax_dev->ops->dax_supported(dax_dev, bdev, blocksize, start, len); } +EXPORT_SYMBOL_GPL(dax_supported); size_t dax_copy_from_iter(struct dax_device *dax_dev, pgoff_t pgoff, void *addr, size_t bytes, struct iov_iter *i) @@ -740,6 +744,7 @@ static void __exit dax_core_exit(void) { + dax_bus_exit(); unregister_chrdev_region(dax_devt, MINORMASK+1); ida_destroy(&dax_minor_ida); dax_fs_exit(); --- linux-azure-5.8-5.8.0.orig/drivers/devfreq/devfreq.c +++ linux-azure-5.8-5.8.0/drivers/devfreq/devfreq.c @@ -1657,8 +1657,7 @@ unsigned long cur_freq, min_freq, max_freq; unsigned int polling_ms; - seq_printf(s, "%-30s %-10s %-10s %-15s %10s %12s %12s %12s\n", - "dev_name", + seq_printf(s, "%-30s %-30s %-15s %10s %12s %12s %12s\n", "dev", "parent_dev", "governor", @@ -1666,10 +1665,9 @@ "cur_freq_Hz", "min_freq_Hz", "max_freq_Hz"); - seq_printf(s, "%30s %10s %10s %15s %10s %12s %12s %12s\n", + seq_printf(s, "%30s %30s %15s %10s %12s %12s %12s\n", + "------------------------------", "------------------------------", - "----------", - "----------", "---------------", "----------", "------------", @@ -1692,14 +1690,13 @@ #endif mutex_lock(&devfreq->lock); - cur_freq = devfreq->previous_freq, + cur_freq = devfreq->previous_freq; get_freq_range(devfreq, &min_freq, &max_freq); - polling_ms = devfreq->profile->polling_ms, + polling_ms = devfreq->profile->polling_ms; mutex_unlock(&devfreq->lock); seq_printf(s, - "%-30s %-10s %-10s %-15s %10d %12ld %12ld %12ld\n", - dev_name(devfreq->dev.parent), + "%-30s %-30s %-15s %10d %12ld %12ld %12ld\n", dev_name(&devfreq->dev), p_devfreq ? dev_name(&p_devfreq->dev) : "null", devfreq->governor_name, --- linux-azure-5.8-5.8.0.orig/drivers/devfreq/rk3399_dmc.c +++ linux-azure-5.8-5.8.0/drivers/devfreq/rk3399_dmc.c @@ -95,18 +95,20 @@ mutex_lock(&dmcfreq->lock); - if (target_rate >= dmcfreq->odt_dis_freq) - odt_enable = true; - - /* - * This makes a SMC call to the TF-A to set the DDR PD (power-down) - * timings and to enable or disable the ODT (on-die termination) - * resistors. - */ - arm_smccc_smc(ROCKCHIP_SIP_DRAM_FREQ, dmcfreq->odt_pd_arg0, - dmcfreq->odt_pd_arg1, - ROCKCHIP_SIP_CONFIG_DRAM_SET_ODT_PD, - odt_enable, 0, 0, 0, &res); + if (dmcfreq->regmap_pmu) { + if (target_rate >= dmcfreq->odt_dis_freq) + odt_enable = true; + + /* + * This makes a SMC call to the TF-A to set the DDR PD + * (power-down) timings and to enable or disable the + * ODT (on-die termination) resistors. + */ + arm_smccc_smc(ROCKCHIP_SIP_DRAM_FREQ, dmcfreq->odt_pd_arg0, + dmcfreq->odt_pd_arg1, + ROCKCHIP_SIP_CONFIG_DRAM_SET_ODT_PD, + odt_enable, 0, 0, 0, &res); + } /* * If frequency scaling from low to high, adjust voltage first. @@ -371,13 +373,14 @@ } node = of_parse_phandle(np, "rockchip,pmu", 0); - if (node) { - data->regmap_pmu = syscon_node_to_regmap(node); - of_node_put(node); - if (IS_ERR(data->regmap_pmu)) { - ret = PTR_ERR(data->regmap_pmu); - goto err_edev; - } + if (!node) + goto no_pmu; + + data->regmap_pmu = syscon_node_to_regmap(node); + of_node_put(node); + if (IS_ERR(data->regmap_pmu)) { + ret = PTR_ERR(data->regmap_pmu); + goto err_edev; } regmap_read(data->regmap_pmu, RK3399_PMUGRF_OS_REG2, &val); @@ -399,6 +402,7 @@ goto err_edev; }; +no_pmu: arm_smccc_smc(ROCKCHIP_SIP_DRAM_FREQ, 0, 0, ROCKCHIP_SIP_CONFIG_DRAM_INIT, 0, 0, 0, 0, &res); --- linux-azure-5.8-5.8.0.orig/drivers/devfreq/tegra30-devfreq.c +++ linux-azure-5.8-5.8.0/drivers/devfreq/tegra30-devfreq.c @@ -836,7 +836,8 @@ rate = clk_round_rate(tegra->emc_clock, ULONG_MAX); if (rate < 0) { dev_err(&pdev->dev, "Failed to round clock rate: %ld\n", rate); - return rate; + err = rate; + goto disable_clk; } tegra->max_freq = rate / KHZ; @@ -897,6 +898,7 @@ dev_pm_opp_remove_all_dynamic(&pdev->dev); reset_control_reset(tegra->reset); +disable_clk: clk_disable_unprepare(tegra->clock); return err; --- linux-azure-5.8-5.8.0.orig/drivers/dma-buf/dma-buf.c +++ linux-azure-5.8-5.8.0/drivers/dma-buf/dma-buf.c @@ -59,6 +59,8 @@ struct dma_buf *dmabuf; dmabuf = dentry->d_fsdata; + if (unlikely(!dmabuf)) + return; BUG_ON(dmabuf->vmapping_counter); @@ -74,10 +76,6 @@ dmabuf->ops->release(dmabuf); - mutex_lock(&db_list.lock); - list_del(&dmabuf->list_node); - mutex_unlock(&db_list.lock); - if (dmabuf->resv == (struct dma_resv *)&dmabuf[1]) dma_resv_fini(dmabuf->resv); @@ -86,6 +84,22 @@ kfree(dmabuf); } +static int dma_buf_file_release(struct inode *inode, struct file *file) +{ + struct dma_buf *dmabuf; + + if (!is_dma_buf_file(file)) + return -EINVAL; + + dmabuf = file->private_data; + + mutex_lock(&db_list.lock); + list_del(&dmabuf->list_node); + mutex_unlock(&db_list.lock); + + return 0; +} + static const struct dentry_operations dma_buf_dentry_ops = { .d_dname = dmabuffs_dname, .d_release = dma_buf_release, @@ -411,6 +425,7 @@ } static const struct file_operations dma_buf_fops = { + .release = dma_buf_file_release, .mmap = dma_buf_mmap_internal, .llseek = dma_buf_llseek, .poll = dma_buf_poll, --- linux-azure-5.8-5.8.0.orig/drivers/dma-buf/dma-resv.c +++ linux-azure-5.8-5.8.0/drivers/dma-buf/dma-resv.c @@ -194,7 +194,7 @@ max = max(old->shared_count + num_fences, old->shared_max * 2); } else { - max = 4; + max = max(4ul, roundup_pow_of_two(num_fences)); } new = dma_resv_list_alloc(max); --- linux-azure-5.8-5.8.0.orig/drivers/dma-buf/st-dma-fence-chain.c +++ linux-azure-5.8-5.8.0/drivers/dma-buf/st-dma-fence-chain.c @@ -318,15 +318,16 @@ goto err; } - if (fence && fence != fc.chains[1]) { + /* + * We signaled the middle fence (2) of the 1-2-3 chain. The behavior + * of the dma-fence-chain is to make us wait for all the fences up to + * the point we want. Since fence 1 is still not signaled, this what + * we should get as fence to wait upon (fence 2 being garbage + * collected during the traversal of the chain). + */ + if (fence != fc.chains[0]) { pr_err("Incorrect chain-fence.seqno:%lld reported for completed seqno:2\n", - fence->seqno); - - dma_fence_get(fence); - err = dma_fence_chain_find_seqno(&fence, 2); - dma_fence_put(fence); - if (err) - pr_err("Reported %d for finding self!\n", err); + fence ? fence->seqno : 0); err = -EINVAL; } @@ -415,20 +416,18 @@ if (!fence) goto signal; - err = dma_fence_chain_find_seqno(&fence, seqno); - if (err) { - pr_err("Reported an invalid fence for find-self:%d\n", - seqno); - dma_fence_put(fence); - break; - } - - if (fence->seqno < seqno) { - pr_err("Reported an earlier fence.seqno:%lld for seqno:%d\n", - fence->seqno, seqno); - err = -EINVAL; - dma_fence_put(fence); - break; + /* + * We can only find ourselves if we are on fence we were + * looking for. + */ + if (fence->seqno == seqno) { + err = dma_fence_chain_find_seqno(&fence, seqno); + if (err) { + pr_err("Reported an invalid fence for find-self:%d\n", + seqno); + dma_fence_put(fence); + break; + } } dma_fence_put(fence); --- linux-azure-5.8-5.8.0.orig/drivers/dma/Kconfig +++ linux-azure-5.8-5.8.0/drivers/dma/Kconfig @@ -285,6 +285,7 @@ config INTEL_IDXD tristate "Intel Data Accelerators support" depends on PCI && X86_64 + depends on PCI_MSI select DMA_ENGINE select SBITMAP help --- linux-azure-5.8-5.8.0.orig/drivers/dma/acpi-dma.c +++ linux-azure-5.8-5.8.0/drivers/dma/acpi-dma.c @@ -135,11 +135,13 @@ if (ret < 0) { dev_warn(&adev->dev, "error in parsing resource group\n"); - return; + break; } grp = (struct acpi_csrt_group *)((void *)grp + grp->length); } + + acpi_put_table((struct acpi_table_header *)csrt); } /** --- linux-azure-5.8-5.8.0.orig/drivers/dma/at_hdmac.c +++ linux-azure-5.8-5.8.0/drivers/dma/at_hdmac.c @@ -1650,13 +1650,17 @@ return NULL; dmac_pdev = of_find_device_by_node(dma_spec->np); + if (!dmac_pdev) + return NULL; dma_cap_zero(mask); dma_cap_set(DMA_SLAVE, mask); atslave = kmalloc(sizeof(*atslave), GFP_KERNEL); - if (!atslave) + if (!atslave) { + put_device(&dmac_pdev->dev); return NULL; + } atslave->cfg = ATC_DST_H2SEL_HW | ATC_SRC_H2SEL_HW; /* @@ -1685,8 +1689,11 @@ atslave->dma_dev = &dmac_pdev->dev; chan = dma_request_channel(mask, at_dma_filter, atslave); - if (!chan) + if (!chan) { + put_device(&dmac_pdev->dev); + kfree(atslave); return NULL; + } atchan = to_at_dma_chan(chan); atchan->per_if = dma_spec->args[0] & 0xff; --- linux-azure-5.8-5.8.0.orig/drivers/dma/dma-jz4780.c +++ linux-azure-5.8-5.8.0/drivers/dma/dma-jz4780.c @@ -639,11 +639,11 @@ unsigned long flags; unsigned long residue = 0; + spin_lock_irqsave(&jzchan->vchan.lock, flags); + status = dma_cookie_status(chan, cookie, txstate); if ((status == DMA_COMPLETE) || (txstate == NULL)) - return status; - - spin_lock_irqsave(&jzchan->vchan.lock, flags); + goto out_unlock_irqrestore; vdesc = vchan_find_desc(&jzchan->vchan, cookie); if (vdesc) { @@ -660,6 +660,7 @@ && jzchan->desc->status & (JZ_DMA_DCS_AR | JZ_DMA_DCS_HLT)) status = DMA_ERROR; +out_unlock_irqrestore: spin_unlock_irqrestore(&jzchan->vchan.lock, flags); return status; } @@ -879,24 +880,11 @@ return -EINVAL; } - ret = platform_get_irq(pdev, 0); - if (ret < 0) - return ret; - - jzdma->irq = ret; - - ret = request_irq(jzdma->irq, jz4780_dma_irq_handler, 0, dev_name(dev), - jzdma); - if (ret) { - dev_err(dev, "failed to request IRQ %u!\n", jzdma->irq); - return ret; - } - jzdma->clk = devm_clk_get(dev, NULL); if (IS_ERR(jzdma->clk)) { dev_err(dev, "failed to get clock\n"); ret = PTR_ERR(jzdma->clk); - goto err_free_irq; + return ret; } clk_prepare_enable(jzdma->clk); @@ -949,10 +937,23 @@ jzchan->vchan.desc_free = jz4780_dma_desc_free; } + ret = platform_get_irq(pdev, 0); + if (ret < 0) + goto err_disable_clk; + + jzdma->irq = ret; + + ret = request_irq(jzdma->irq, jz4780_dma_irq_handler, 0, dev_name(dev), + jzdma); + if (ret) { + dev_err(dev, "failed to request IRQ %u!\n", jzdma->irq); + goto err_disable_clk; + } + ret = dmaenginem_async_device_register(dd); if (ret) { dev_err(dev, "failed to register device\n"); - goto err_disable_clk; + goto err_free_irq; } /* Register with OF DMA helpers. */ @@ -960,17 +961,17 @@ jzdma); if (ret) { dev_err(dev, "failed to register OF DMA controller\n"); - goto err_disable_clk; + goto err_free_irq; } dev_info(dev, "JZ4780 DMA controller initialised\n"); return 0; -err_disable_clk: - clk_disable_unprepare(jzdma->clk); - err_free_irq: free_irq(jzdma->irq, jzdma); + +err_disable_clk: + clk_disable_unprepare(jzdma->clk); return ret; } --- linux-azure-5.8-5.8.0.orig/drivers/dma/dmaengine.c +++ linux-azure-5.8-5.8.0/drivers/dma/dmaengine.c @@ -1043,16 +1043,15 @@ static int __dma_async_device_channel_register(struct dma_device *device, struct dma_chan *chan) { - int rc = 0; + int rc; chan->local = alloc_percpu(typeof(*chan->local)); if (!chan->local) - goto err_out; + return -ENOMEM; chan->dev = kzalloc(sizeof(*chan->dev), GFP_KERNEL); if (!chan->dev) { - free_percpu(chan->local); - chan->local = NULL; - goto err_out; + rc = -ENOMEM; + goto err_free_local; } /* @@ -1065,7 +1064,8 @@ if (chan->chan_id < 0) { pr_err("%s: unable to alloc ida for chan: %d\n", __func__, chan->chan_id); - goto err_out; + rc = chan->chan_id; + goto err_free_dev; } chan->dev->device.class = &dma_devclass; @@ -1086,9 +1086,10 @@ mutex_lock(&device->chan_mutex); ida_free(&device->chan_ida, chan->chan_id); mutex_unlock(&device->chan_mutex); - err_out: - free_percpu(chan->local); + err_free_dev: kfree(chan->dev); + err_free_local: + free_percpu(chan->local); return rc; } @@ -1113,7 +1114,6 @@ "%s called while %d clients hold a reference\n", __func__, chan->client_count); mutex_lock(&dma_list_mutex); - list_del(&chan->device_node); device->chancnt--; chan->dev->chan = NULL; mutex_unlock(&dma_list_mutex); --- linux-azure-5.8-5.8.0.orig/drivers/dma/dmatest.c +++ linux-azure-5.8-5.8.0/drivers/dma/dmatest.c @@ -129,6 +129,7 @@ * @nr_channels: number of channels under test * @lock: access protection to the fields of this structure * @did_init: module has been initialized completely + * @last_error: test has faced configuration issues */ static struct dmatest_info { /* Test parameters */ @@ -137,6 +138,7 @@ /* Internal state */ struct list_head channels; unsigned int nr_channels; + int last_error; struct mutex lock; bool did_init; } test_info = { @@ -1175,10 +1177,22 @@ return ret; } else if (dmatest_run) { if (!is_threaded_test_pending(info)) { - pr_info("No channels configured, continue with any\n"); - if (!is_threaded_test_run(info)) - stop_threaded_test(info); - add_threaded_test(info); + /* + * We have nothing to run. This can be due to: + */ + ret = info->last_error; + if (ret) { + /* 1) Misconfiguration */ + pr_err("Channel misconfigured, can't continue\n"); + mutex_unlock(&info->lock); + return ret; + } else { + /* 2) We rely on defaults */ + pr_info("No channels configured, continue with any\n"); + if (!is_threaded_test_run(info)) + stop_threaded_test(info); + add_threaded_test(info); + } } start_threaded_tests(info); } else { @@ -1195,7 +1209,7 @@ struct dmatest_info *info = &test_info; struct dmatest_chan *dtc; char chan_reset_val[20]; - int ret = 0; + int ret; mutex_lock(&info->lock); ret = param_set_copystring(val, kp); @@ -1226,15 +1240,14 @@ add_threaded_test(info); /* Check if channel was added successfully */ - dtc = list_last_entry(&info->channels, struct dmatest_chan, node); - - if (dtc->chan) { + if (!list_empty(&info->channels)) { /* * if new channel was not successfully added, revert the * "test_channel" string to the name of the last successfully * added channel. exception for when users issues empty string * to channel parameter. */ + dtc = list_last_entry(&info->channels, struct dmatest_chan, node); if ((strcmp(dma_chan_name(dtc->chan), strim(test_channel)) != 0) && (strcmp("", strim(test_channel)) != 0)) { ret = -EINVAL; @@ -1250,12 +1263,14 @@ goto add_chan_err; } + info->last_error = ret; mutex_unlock(&info->lock); return ret; add_chan_err: param_set_copystring(chan_reset_val, kp); + info->last_error = ret; mutex_unlock(&info->lock); return ret; --- linux-azure-5.8-5.8.0.orig/drivers/dma/dw-edma/dw-edma-core.c +++ linux-azure-5.8-5.8.0/drivers/dma/dw-edma/dw-edma-core.c @@ -86,12 +86,12 @@ if (desc->chunk) { /* Create and add new element into the linked list */ - desc->chunks_alloc++; - list_add_tail(&chunk->list, &desc->chunk->list); if (!dw_edma_alloc_burst(chunk)) { kfree(chunk); return NULL; } + desc->chunks_alloc++; + list_add_tail(&chunk->list, &desc->chunk->list); } else { /* List head */ chunk->burst = NULL; @@ -405,7 +405,7 @@ if (xfer->cyclic) { burst->dar = xfer->xfer.cyclic.paddr; } else { - burst->dar = sg_dma_address(sg); + burst->dar = dst_addr; /* Unlike the typical assumption by other * drivers/IPs the peripheral memory isn't * a FIFO memory, in this case, it's a @@ -413,14 +413,13 @@ * and destination addresses are increased * by the same portion (data length) */ - src_addr += sg_dma_len(sg); } } else { burst->dar = dst_addr; if (xfer->cyclic) { burst->sar = xfer->xfer.cyclic.paddr; } else { - burst->sar = sg_dma_address(sg); + burst->sar = src_addr; /* Unlike the typical assumption by other * drivers/IPs the peripheral memory isn't * a FIFO memory, in this case, it's a @@ -428,12 +427,14 @@ * and destination addresses are increased * by the same portion (data length) */ - dst_addr += sg_dma_len(sg); } } - if (!xfer->cyclic) + if (!xfer->cyclic) { + src_addr += sg_dma_len(sg); + dst_addr += sg_dma_len(sg); sg = sg_next(sg); + } } return vchan_tx_prep(&chan->vc, &desc->vd, xfer->flags); --- linux-azure-5.8-5.8.0.orig/drivers/dma/dw/core.c +++ linux-azure-5.8-5.8.0/drivers/dma/dw/core.c @@ -772,6 +772,10 @@ if (dws->dma_dev != chan->device->dev) return false; + /* permit channels in accordance with the channels mask */ + if (dws->channels && !(dws->channels & dwc->mask)) + return false; + /* We have to copy data since dws can be temporary storage */ memcpy(&dwc->dws, dws, sizeof(struct dw_dma_slave)); --- linux-azure-5.8-5.8.0.orig/drivers/dma/dw/dw.c +++ linux-azure-5.8-5.8.0/drivers/dma/dw/dw.c @@ -14,7 +14,7 @@ static void dw_dma_initialize_chan(struct dw_dma_chan *dwc) { struct dw_dma *dw = to_dw_dma(dwc->chan.device); - u32 cfghi = DWC_CFGH_FIFO_MODE; + u32 cfghi = is_slave_direction(dwc->direction) ? 0 : DWC_CFGH_FIFO_MODE; u32 cfglo = DWC_CFGL_CH_PRIOR(dwc->priority); bool hs_polarity = dwc->dws.hs_polarity; --- linux-azure-5.8-5.8.0.orig/drivers/dma/dw/of.c +++ linux-azure-5.8-5.8.0/drivers/dma/dw/of.c @@ -22,18 +22,21 @@ }; dma_cap_mask_t cap; - if (dma_spec->args_count != 3) + if (dma_spec->args_count < 3 || dma_spec->args_count > 4) return NULL; slave.src_id = dma_spec->args[0]; slave.dst_id = dma_spec->args[0]; slave.m_master = dma_spec->args[1]; slave.p_master = dma_spec->args[2]; + if (dma_spec->args_count >= 4) + slave.channels = dma_spec->args[3]; if (WARN_ON(slave.src_id >= DW_DMA_MAX_NR_REQUESTS || slave.dst_id >= DW_DMA_MAX_NR_REQUESTS || slave.m_master >= dw->pdata->nr_masters || - slave.p_master >= dw->pdata->nr_masters)) + slave.p_master >= dw->pdata->nr_masters || + slave.channels >= BIT(dw->pdata->nr_channels))) return NULL; dma_cap_zero(cap); --- linux-azure-5.8-5.8.0.orig/drivers/dma/fsldma.c +++ linux-azure-5.8-5.8.0/drivers/dma/fsldma.c @@ -1214,6 +1214,7 @@ { struct fsldma_device *fdev; struct device_node *child; + unsigned int i; int err; fdev = kzalloc(sizeof(*fdev), GFP_KERNEL); @@ -1292,6 +1293,10 @@ return 0; out_free_fdev: + for (i = 0; i < FSL_DMA_MAX_CHANS_PER_DEVICE; i++) { + if (fdev->chan[i]) + fsl_dma_chan_remove(fdev->chan[i]); + } irq_dispose_mapping(fdev->irq); iounmap(fdev->regs); out_free: @@ -1314,6 +1319,7 @@ if (fdev->chan[i]) fsl_dma_chan_remove(fdev->chan[i]); } + irq_dispose_mapping(fdev->irq); iounmap(fdev->regs); kfree(fdev); --- linux-azure-5.8-5.8.0.orig/drivers/dma/fsldma.h +++ linux-azure-5.8-5.8.0/drivers/dma/fsldma.h @@ -205,10 +205,10 @@ #else static u64 fsl_ioread64(const u64 __iomem *addr) { - u32 fsl_addr = lower_32_bits(addr); - u64 fsl_addr_hi = (u64)in_le32((u32 *)(fsl_addr + 1)) << 32; + u32 val_lo = in_le32((u32 __iomem *)addr); + u32 val_hi = in_le32((u32 __iomem *)addr + 1); - return fsl_addr_hi | in_le32((u32 *)fsl_addr); + return ((u64)val_hi << 32) + val_lo; } static void fsl_iowrite64(u64 val, u64 __iomem *addr) @@ -219,10 +219,10 @@ static u64 fsl_ioread64be(const u64 __iomem *addr) { - u32 fsl_addr = lower_32_bits(addr); - u64 fsl_addr_hi = (u64)in_be32((u32 *)fsl_addr) << 32; + u32 val_hi = in_be32((u32 __iomem *)addr); + u32 val_lo = in_be32((u32 __iomem *)addr + 1); - return fsl_addr_hi | in_be32((u32 *)(fsl_addr + 1)); + return ((u64)val_hi << 32) + val_lo; } static void fsl_iowrite64be(u64 val, u64 __iomem *addr) --- linux-azure-5.8-5.8.0.orig/drivers/dma/hsu/pci.c +++ linux-azure-5.8-5.8.0/drivers/dma/hsu/pci.c @@ -26,22 +26,12 @@ static irqreturn_t hsu_pci_irq(int irq, void *dev) { struct hsu_dma_chip *chip = dev; - struct pci_dev *pdev = to_pci_dev(chip->dev); u32 dmaisr; u32 status; unsigned short i; int ret = 0; int err; - /* - * On Intel Tangier B0 and Anniedale the interrupt line, disregarding - * to have different numbers, is shared between HSU DMA and UART IPs. - * Thus on such SoCs we are expecting that IRQ handler is called in - * UART driver only. - */ - if (pdev->device == PCI_DEVICE_ID_INTEL_MRFLD_HSU_DMA) - return IRQ_HANDLED; - dmaisr = readl(chip->regs + HSU_PCI_DMAISR); for (i = 0; i < chip->hsu->nr_channels; i++) { if (dmaisr & 0x1) { @@ -105,6 +95,17 @@ if (ret) goto err_register_irq; + /* + * On Intel Tangier B0 and Anniedale the interrupt line, disregarding + * to have different numbers, is shared between HSU DMA and UART IPs. + * Thus on such SoCs we are expecting that IRQ handler is called in + * UART driver only. Instead of handling the spurious interrupt + * from HSU DMA here and waste CPU time and delay HSU UART interrupt + * handling, disable the interrupt entirely. + */ + if (pdev->device == PCI_DEVICE_ID_INTEL_MRFLD_HSU_DMA) + disable_irq_nosync(chip->irq); + pci_set_drvdata(pdev, chip); return 0; --- linux-azure-5.8-5.8.0.orig/drivers/dma/idxd/device.c +++ linux-azure-5.8-5.8.0/drivers/dma/idxd/device.c @@ -303,7 +303,7 @@ resource_size_t start; start = pci_resource_start(pdev, IDXD_WQ_BAR); - start = start + wq->id * IDXD_PORTAL_SIZE; + start += idxd_get_wq_portal_full_offset(wq->id, IDXD_PORTAL_LIMITED); wq->dportal = devm_ioremap(dev, start, IDXD_PORTAL_SIZE); if (!wq->dportal) @@ -327,7 +327,7 @@ int i, wq_offset; lockdep_assert_held(&idxd->dev_lock); - memset(&wq->wqcfg, 0, sizeof(wq->wqcfg)); + memset(wq->wqcfg, 0, idxd->wqcfg_size); wq->type = IDXD_WQT_NONE; wq->size = 0; wq->group = NULL; @@ -336,8 +336,8 @@ clear_bit(WQ_FLAG_DEDICATED, &wq->flags); memset(wq->name, 0, WQ_NAME_SIZE); - for (i = 0; i < 8; i++) { - wq_offset = idxd->wqcfg_offset + wq->id * 32 + i * sizeof(u32); + for (i = 0; i < WQCFG_STRIDES(idxd); i++) { + wq_offset = WQCFG_OFFSET(idxd, wq->id, i); iowrite32(0, idxd->reg_base + wq_offset); dev_dbg(dev, "WQ[%d][%d][%#x]: %#x\n", wq->id, i, wq_offset, @@ -557,10 +557,10 @@ if (!wq->group) return 0; - memset(&wq->wqcfg, 0, sizeof(union wqcfg)); + memset(wq->wqcfg, 0, idxd->wqcfg_size); /* byte 0-3 */ - wq->wqcfg.wq_size = wq->size; + wq->wqcfg->wq_size = wq->size; if (wq->size == 0) { dev_warn(dev, "Incorrect work queue size: 0\n"); @@ -568,22 +568,21 @@ } /* bytes 4-7 */ - wq->wqcfg.wq_thresh = wq->threshold; + wq->wqcfg->wq_thresh = wq->threshold; /* byte 8-11 */ - wq->wqcfg.priv = !!(wq->type == IDXD_WQT_KERNEL); - wq->wqcfg.mode = 1; - - wq->wqcfg.priority = wq->priority; + wq->wqcfg->priv = !!(wq->type == IDXD_WQT_KERNEL); + wq->wqcfg->mode = 1; + wq->wqcfg->priority = wq->priority; /* bytes 12-15 */ - wq->wqcfg.max_xfer_shift = idxd->hw.gen_cap.max_xfer_shift; - wq->wqcfg.max_batch_shift = idxd->hw.gen_cap.max_batch_shift; + wq->wqcfg->max_xfer_shift = idxd->hw.gen_cap.max_xfer_shift; + wq->wqcfg->max_batch_shift = idxd->hw.gen_cap.max_batch_shift; dev_dbg(dev, "WQ %d CFGs\n", wq->id); - for (i = 0; i < 8; i++) { - wq_offset = idxd->wqcfg_offset + wq->id * 32 + i * sizeof(u32); - iowrite32(wq->wqcfg.bits[i], idxd->reg_base + wq_offset); + for (i = 0; i < WQCFG_STRIDES(idxd); i++) { + wq_offset = WQCFG_OFFSET(idxd, wq->id, i); + iowrite32(wq->wqcfg->bits[i], idxd->reg_base + wq_offset); dev_dbg(dev, "WQ[%d][%d][%#x]: %#x\n", wq->id, i, wq_offset, ioread32(idxd->reg_base + wq_offset)); --- linux-azure-5.8-5.8.0.orig/drivers/dma/idxd/dma.c +++ linux-azure-5.8-5.8.0/drivers/dma/idxd/dma.c @@ -174,6 +174,7 @@ INIT_LIST_HEAD(&dma->channels); dma->dev = &idxd->pdev->dev; + dma_cap_set(DMA_PRIVATE, dma->cap_mask); dma->device_release = idxd_dma_release; if (idxd->hw.opcap.bits[0] & IDXD_OPCAP_MEMMOVE) { @@ -213,5 +214,8 @@ void idxd_unregister_dma_channel(struct idxd_wq *wq) { - dma_async_device_channel_unregister(&wq->idxd->dma_dev, &wq->dma_chan); + struct dma_chan *chan = &wq->dma_chan; + + dma_async_device_channel_unregister(&wq->idxd->dma_dev, chan); + list_del(&chan->device_node); } --- linux-azure-5.8-5.8.0.orig/drivers/dma/idxd/idxd.h +++ linux-azure-5.8-5.8.0/drivers/dma/idxd/idxd.h @@ -103,7 +103,7 @@ u32 priority; enum idxd_wq_state state; unsigned long flags; - union wqcfg wqcfg; + union wqcfg *wqcfg; atomic_t dq_count; /* dedicated queue flow control */ u32 vec_ptr; /* interrupt steering */ struct dsa_hw_desc **hw_descs; @@ -181,6 +181,7 @@ int max_wq_size; int token_limit; int nr_tokens; /* non-reserved tokens */ + unsigned int wqcfg_size; union sw_err_reg sw_err; --- linux-azure-5.8-5.8.0.orig/drivers/dma/idxd/init.c +++ linux-azure-5.8-5.8.0/drivers/dma/idxd/init.c @@ -189,6 +189,9 @@ atomic_set(&wq->dq_count, 0); init_waitqueue_head(&wq->submit_waitq); wq->idxd_cdev.minor = -1; + wq->wqcfg = devm_kzalloc(dev, idxd->wqcfg_size, GFP_KERNEL); + if (!wq->wqcfg) + return -ENOMEM; rc = percpu_init_rwsem(&wq->submit_lock); if (rc < 0) { idxd_wqs_free_lock(idxd); @@ -263,6 +266,8 @@ dev_dbg(dev, "total workqueue size: %u\n", idxd->max_wq_size); idxd->max_wqs = idxd->hw.wq_cap.num_wqs; dev_dbg(dev, "max workqueues: %u\n", idxd->max_wqs); + idxd->wqcfg_size = 1 << (idxd->hw.wq_cap.wqcfg_size + IDXD_WQCFG_MIN); + dev_dbg(dev, "wqcfg size: %u\n", idxd->wqcfg_size); /* reading operation capabilities */ for (i = 0; i < 4; i++) { --- linux-azure-5.8-5.8.0.orig/drivers/dma/idxd/registers.h +++ linux-azure-5.8-5.8.0/drivers/dma/idxd/registers.h @@ -8,7 +8,7 @@ #define IDXD_MMIO_BAR 0 #define IDXD_WQ_BAR 2 -#define IDXD_PORTAL_SIZE 0x4000 +#define IDXD_PORTAL_SIZE PAGE_SIZE /* MMIO Device BAR0 Registers */ #define IDXD_VER_OFFSET 0x00 @@ -43,7 +43,8 @@ struct { u64 total_wq_size:16; u64 num_wqs:8; - u64 rsvd:24; + u64 wqcfg_size:4; + u64 rsvd:20; u64 shared_mode:1; u64 dedicated_mode:1; u64 rsvd2:1; @@ -55,6 +56,7 @@ u64 bits; } __packed; #define IDXD_WQCAP_OFFSET 0x20 +#define IDXD_WQCFG_MIN 5 union group_cap_reg { struct { @@ -333,4 +335,23 @@ }; u32 bits[8]; } __packed; + +/* + * This macro calculates the offset into the WQCFG register + * idxd - struct idxd * + * n - wq id + * ofs - the index of the 32b dword for the config register + * + * The WQCFG register block is divided into groups per each wq. The n index + * allows us to move to the register group that's for that particular wq. + * Each register is 32bits. The ofs gives us the number of register to access. + */ +#define WQCFG_OFFSET(_idxd_dev, n, ofs) \ +({\ + typeof(_idxd_dev) __idxd_dev = (_idxd_dev); \ + (__idxd_dev)->wqcfg_offset + (n) * (__idxd_dev)->wqcfg_size + sizeof(u32) * (ofs); \ +}) + +#define WQCFG_STRIDES(_idxd_dev) ((_idxd_dev)->wqcfg_size / sizeof(u32)) + #endif --- linux-azure-5.8-5.8.0.orig/drivers/dma/idxd/submit.c +++ linux-azure-5.8-5.8.0/drivers/dma/idxd/submit.c @@ -74,7 +74,7 @@ if (idxd->state != IDXD_DEV_ENABLED) return -EIO; - portal = wq->dportal + idxd_get_wq_portal_offset(IDXD_PORTAL_UNLIMITED); + portal = wq->dportal; /* * The wmb() flushes writes to coherent DMA data before possibly * triggering a DMA read. The wmb() is necessary even on UP because --- linux-azure-5.8-5.8.0.orig/drivers/dma/idxd/sysfs.c +++ linux-azure-5.8-5.8.0/drivers/dma/idxd/sysfs.c @@ -389,7 +389,7 @@ return 0; drv_fail: - for (; i > 0; i--) + while (--i >= 0) driver_unregister(&idxd_drvs[i]->drv); return rc; } @@ -1554,7 +1554,7 @@ return 0; bus_err: - for (; i > 0; i--) + while (--i >= 0) bus_unregister(idxd_bus_types[i]); return rc; } --- linux-azure-5.8-5.8.0.orig/drivers/dma/ioat/dma.c +++ linux-azure-5.8-5.8.0/drivers/dma/ioat/dma.c @@ -389,7 +389,7 @@ struct ioat_descs *descs = &ioat_chan->descs[i]; descs->virt = dma_alloc_coherent(to_dev(ioat_chan), - SZ_2M, &descs->hw, flags); + IOAT_CHUNK_SIZE, &descs->hw, flags); if (!descs->virt) { int idx; --- linux-azure-5.8-5.8.0.orig/drivers/dma/mediatek/mtk-hsdma.c +++ linux-azure-5.8-5.8.0/drivers/dma/mediatek/mtk-hsdma.c @@ -1007,6 +1007,7 @@ return 0; err_free: + mtk_hsdma_hw_deinit(hsdma); of_dma_controller_free(pdev->dev.of_node); err_unregister: dma_async_device_unregister(dd); --- linux-azure-5.8-5.8.0.orig/drivers/dma/milbeaut-xdmac.c +++ linux-azure-5.8-5.8.0/drivers/dma/milbeaut-xdmac.c @@ -351,7 +351,7 @@ ret = dma_async_device_register(ddev); if (ret) - return ret; + goto disable_xdmac; ret = of_dma_controller_register(dev->of_node, of_dma_simple_xlate, mdev); @@ -364,6 +364,8 @@ unregister_dmac: dma_async_device_unregister(ddev); +disable_xdmac: + disable_xdmac(mdev); return ret; } --- linux-azure-5.8-5.8.0.orig/drivers/dma/mv_xor_v2.c +++ linux-azure-5.8-5.8.0/drivers/dma/mv_xor_v2.c @@ -766,8 +766,10 @@ goto disable_clk; msi_desc = first_msi_entry(&pdev->dev); - if (!msi_desc) + if (!msi_desc) { + ret = -ENODEV; goto free_msi_irqs; + } xor_dev->msi_desc = msi_desc; ret = devm_request_irq(&pdev->dev, msi_desc->irq, --- linux-azure-5.8-5.8.0.orig/drivers/dma/of-dma.c +++ linux-azure-5.8-5.8.0/drivers/dma/of-dma.c @@ -71,12 +71,12 @@ return NULL; chan = ofdma_target->of_dma_xlate(&dma_spec_target, ofdma_target); - if (chan) { - chan->router = ofdma->dma_router; - chan->route_data = route_data; - } else { + if (IS_ERR_OR_NULL(chan)) { ofdma->dma_router->route_free(ofdma->dma_router->dev, route_data); + } else { + chan->router = ofdma->dma_router; + chan->route_data = route_data; } /* --- linux-azure-5.8-5.8.0.orig/drivers/dma/owl-dma.c +++ linux-azure-5.8-5.8.0/drivers/dma/owl-dma.c @@ -1197,6 +1197,7 @@ owl_dma_free(od); clk_disable_unprepare(od->clk); + dma_pool_destroy(od->lli_pool); return 0; } --- linux-azure-5.8-5.8.0.orig/drivers/dma/pl330.c +++ linux-azure-5.8-5.8.0/drivers/dma/pl330.c @@ -2788,14 +2788,14 @@ while (burst != (1 << desc->rqcfg.brst_size)) desc->rqcfg.brst_size++; + desc->rqcfg.brst_len = get_burst_len(desc, len); /* * If burst size is smaller than bus width then make sure we only * transfer one at a time to avoid a burst stradling an MFIFO entry. */ - if (desc->rqcfg.brst_size * 8 < pl330->pcfg.data_bus_width) + if (burst * 8 < pl330->pcfg.data_bus_width) desc->rqcfg.brst_len = 1; - desc->rqcfg.brst_len = get_burst_len(desc, len); desc->bytes_requested = len; desc->txd.flags = flags; --- linux-azure-5.8-5.8.0.orig/drivers/dma/ti/k3-udma.c +++ linux-azure-5.8-5.8.0/drivers/dma/ti/k3-udma.c @@ -2109,9 +2109,9 @@ return NULL; } - cppi5_tr_init(&tr_req[i].flags, CPPI5_TR_TYPE1, false, false, - CPPI5_TR_EVENT_SIZE_COMPLETION, 0); - cppi5_tr_csf_set(&tr_req[i].flags, CPPI5_TR_CSF_SUPR_EVT); + cppi5_tr_init(&tr_req[tr_idx].flags, CPPI5_TR_TYPE1, false, + false, CPPI5_TR_EVENT_SIZE_COMPLETION, 0); + cppi5_tr_csf_set(&tr_req[tr_idx].flags, CPPI5_TR_CSF_SUPR_EVT); tr_req[tr_idx].addr = sg_addr; tr_req[tr_idx].icnt0 = tr0_cnt0; --- linux-azure-5.8-5.8.0.orig/drivers/dma/ti/omap-dma.c +++ linux-azure-5.8-5.8.0/drivers/dma/ti/omap-dma.c @@ -1522,29 +1522,38 @@ } } +/* Currently used by omap2 & 3 to block deeper SoC idle states */ +static bool omap_dma_busy(struct omap_dmadev *od) +{ + struct omap_chan *c; + int lch = -1; + + while (1) { + lch = find_next_bit(od->lch_bitmap, od->lch_count, lch + 1); + if (lch >= od->lch_count) + break; + c = od->lch_map[lch]; + if (!c) + continue; + if (omap_dma_chan_read(c, CCR) & CCR_ENABLE) + return true; + } + + return false; +} + /* Currently only used for omap2. For omap1, also a check for lcd_dma is needed */ static int omap_dma_busy_notifier(struct notifier_block *nb, unsigned long cmd, void *v) { struct omap_dmadev *od; - struct omap_chan *c; - int lch = -1; od = container_of(nb, struct omap_dmadev, nb); switch (cmd) { case CPU_CLUSTER_PM_ENTER: - while (1) { - lch = find_next_bit(od->lch_bitmap, od->lch_count, - lch + 1); - if (lch >= od->lch_count) - break; - c = od->lch_map[lch]; - if (!c) - continue; - if (omap_dma_chan_read(c, CCR) & CCR_ENABLE) - return NOTIFY_BAD; - } + if (omap_dma_busy(od)) + return NOTIFY_BAD; break; case CPU_CLUSTER_PM_ENTER_FAILED: case CPU_CLUSTER_PM_EXIT: @@ -1595,6 +1604,8 @@ switch (cmd) { case CPU_CLUSTER_PM_ENTER: + if (omap_dma_busy(od)) + return NOTIFY_BAD; omap_dma_context_save(od); break; case CPU_CLUSTER_PM_ENTER_FAILED: --- linux-azure-5.8-5.8.0.orig/drivers/dma/xilinx/xilinx_dma.c +++ linux-azure-5.8-5.8.0/drivers/dma/xilinx/xilinx_dma.c @@ -517,8 +517,8 @@ #define to_dma_tx_descriptor(tx) \ container_of(tx, struct xilinx_dma_tx_descriptor, async_tx) #define xilinx_dma_poll_timeout(chan, reg, val, cond, delay_us, timeout_us) \ - readl_poll_timeout(chan->xdev->regs + chan->ctrl_offset + reg, val, \ - cond, delay_us, timeout_us) + readl_poll_timeout_atomic(chan->xdev->regs + chan->ctrl_offset + reg, \ + val, cond, delay_us, timeout_us) /* IO accessors */ static inline u32 dma_read(struct xilinx_dma_chan *chan, u32 reg) @@ -948,8 +948,10 @@ { struct xilinx_cdma_tx_segment *cdma_seg; struct xilinx_axidma_tx_segment *axidma_seg; + struct xilinx_aximcdma_tx_segment *aximcdma_seg; struct xilinx_cdma_desc_hw *cdma_hw; struct xilinx_axidma_desc_hw *axidma_hw; + struct xilinx_aximcdma_desc_hw *aximcdma_hw; struct list_head *entry; u32 residue = 0; @@ -961,13 +963,23 @@ cdma_hw = &cdma_seg->hw; residue += (cdma_hw->control - cdma_hw->status) & chan->xdev->max_buffer_len; - } else { + } else if (chan->xdev->dma_config->dmatype == + XDMA_TYPE_AXIDMA) { axidma_seg = list_entry(entry, struct xilinx_axidma_tx_segment, node); axidma_hw = &axidma_seg->hw; residue += (axidma_hw->control - axidma_hw->status) & chan->xdev->max_buffer_len; + } else { + aximcdma_seg = + list_entry(entry, + struct xilinx_aximcdma_tx_segment, + node); + aximcdma_hw = &aximcdma_seg->hw; + residue += + (aximcdma_hw->control - aximcdma_hw->status) & + chan->xdev->max_buffer_len; } } @@ -1135,7 +1147,7 @@ upper_32_bits(chan->seg_p + sizeof(*chan->seg_mv) * ((i + 1) % XILINX_DMA_NUM_DESCS)); chan->seg_mv[i].phys = chan->seg_p + - sizeof(*chan->seg_v) * i; + sizeof(*chan->seg_mv) * i; list_add_tail(&chan->seg_mv[i].node, &chan->free_seg_list); } @@ -1560,7 +1572,7 @@ static void xilinx_mcdma_start_transfer(struct xilinx_dma_chan *chan) { struct xilinx_dma_tx_descriptor *head_desc, *tail_desc; - struct xilinx_axidma_tx_segment *tail_segment; + struct xilinx_aximcdma_tx_segment *tail_segment; u32 reg; /* @@ -1582,7 +1594,7 @@ tail_desc = list_last_entry(&chan->pending_list, struct xilinx_dma_tx_descriptor, node); tail_segment = list_last_entry(&tail_desc->segments, - struct xilinx_axidma_tx_segment, node); + struct xilinx_aximcdma_tx_segment, node); reg = dma_ctrl_read(chan, XILINX_MCDMA_CHAN_CR_OFFSET(chan->tdest)); @@ -1864,6 +1876,7 @@ struct xilinx_vdma_tx_segment *tail_segment; struct xilinx_dma_tx_descriptor *tail_desc; struct xilinx_axidma_tx_segment *axidma_tail_segment; + struct xilinx_aximcdma_tx_segment *aximcdma_tail_segment; struct xilinx_cdma_tx_segment *cdma_tail_segment; if (list_empty(&chan->pending_list)) @@ -1885,11 +1898,17 @@ struct xilinx_cdma_tx_segment, node); cdma_tail_segment->hw.next_desc = (u32)desc->async_tx.phys; - } else { + } else if (chan->xdev->dma_config->dmatype == XDMA_TYPE_AXIDMA) { axidma_tail_segment = list_last_entry(&tail_desc->segments, struct xilinx_axidma_tx_segment, node); axidma_tail_segment->hw.next_desc = (u32)desc->async_tx.phys; + } else { + aximcdma_tail_segment = + list_last_entry(&tail_desc->segments, + struct xilinx_aximcdma_tx_segment, + node); + aximcdma_tail_segment->hw.next_desc = (u32)desc->async_tx.phys; } /* @@ -2782,7 +2801,7 @@ has_dre = false; if (!has_dre) - xdev->common.copy_align = fls(width - 1); + xdev->common.copy_align = (enum dmaengine_alignment)fls(width - 1); if (of_device_is_compatible(node, "xlnx,axi-vdma-mm2s-channel") || of_device_is_compatible(node, "xlnx,axi-dma-mm2s-channel") || @@ -2856,10 +2875,11 @@ chan->stop_transfer = xilinx_dma_stop_transfer; } - /* check if SG is enabled (only for AXIDMA and CDMA) */ + /* check if SG is enabled (only for AXIDMA, AXIMCDMA, and CDMA) */ if (xdev->dma_config->dmatype != XDMA_TYPE_VDMA) { - if (dma_ctrl_read(chan, XILINX_DMA_REG_DMASR) & - XILINX_DMA_DMASR_SG_MASK) + if (xdev->dma_config->dmatype == XDMA_TYPE_AXIMCDMA || + dma_ctrl_read(chan, XILINX_DMA_REG_DMASR) & + XILINX_DMA_DMASR_SG_MASK) chan->has_sg = true; dev_dbg(chan->dev, "ch %d: SG %s\n", chan->id, chan->has_sg ? "enabled" : "disabled"); @@ -2901,7 +2921,8 @@ static int xilinx_dma_child_probe(struct xilinx_dma_device *xdev, struct device_node *node) { - int ret, i, nr_channels = 1; + int ret, i; + u32 nr_channels = 1; ret = of_property_read_u32(node, "dma-channels", &nr_channels); if (xdev->dma_config->dmatype == XDMA_TYPE_AXIMCDMA && ret < 0) @@ -3113,7 +3134,11 @@ } /* Register the DMA engine with the core */ - dma_async_device_register(&xdev->common); + err = dma_async_device_register(&xdev->common); + if (err) { + dev_err(xdev->dev, "failed to register the dma device\n"); + goto error; + } err = of_dma_controller_register(node, of_dma_xilinx_xlate, xdev); --- linux-azure-5.8-5.8.0.orig/drivers/edac/amd64_edac.c +++ linux-azure-5.8-5.8.0/drivers/edac/amd64_edac.c @@ -18,6 +18,9 @@ /* Per-node stuff */ static struct ecc_settings **ecc_stngs; +/* Device for the PCI component */ +static struct device *pci_ctl_dev; + /* * Valid scrub rates for the K8 hardware memory scrubber. We map the scrubbing * bandwidth to a valid bit pattern. The 'set' operation finds the 'matching- @@ -2683,6 +2686,9 @@ return -ENODEV; } + if (!pci_ctl_dev) + pci_ctl_dev = &pvt->F0->dev; + edac_dbg(1, "F0: %s\n", pci_name(pvt->F0)); edac_dbg(1, "F3: %s\n", pci_name(pvt->F3)); edac_dbg(1, "F6: %s\n", pci_name(pvt->F6)); @@ -2707,6 +2713,9 @@ return -ENODEV; } + if (!pci_ctl_dev) + pci_ctl_dev = &pvt->F2->dev; + edac_dbg(1, "F1: %s\n", pci_name(pvt->F1)); edac_dbg(1, "F2: %s\n", pci_name(pvt->F2)); edac_dbg(1, "F3: %s\n", pci_name(pvt->F3)); @@ -3617,21 +3626,10 @@ static void setup_pci_device(void) { - struct mem_ctl_info *mci; - struct amd64_pvt *pvt; - if (pci_ctl) return; - mci = edac_mc_find(0); - if (!mci) - return; - - pvt = mci->pvt_info; - if (pvt->umc) - pci_ctl = edac_pci_create_generic_ctl(&pvt->F0->dev, EDAC_MOD_STR); - else - pci_ctl = edac_pci_create_generic_ctl(&pvt->F2->dev, EDAC_MOD_STR); + pci_ctl = edac_pci_create_generic_ctl(pci_ctl_dev, EDAC_MOD_STR); if (!pci_ctl) { pr_warn("%s(): Unable to create PCI control\n", __func__); pr_warn("%s(): PCI error report via EDAC not set\n", __func__); @@ -3710,6 +3708,8 @@ return 0; err_pci: + pci_ctl_dev = NULL; + msrs_free(msrs); msrs = NULL; @@ -3739,6 +3739,8 @@ kfree(ecc_stngs); ecc_stngs = NULL; + pci_ctl_dev = NULL; + msrs_free(msrs); msrs = NULL; } --- linux-azure-5.8-5.8.0.orig/drivers/edac/aspeed_edac.c +++ linux-azure-5.8-5.8.0/drivers/edac/aspeed_edac.c @@ -209,8 +209,8 @@ /* register interrupt handler */ irq = platform_get_irq(pdev, 0); dev_dbg(&pdev->dev, "got irq %d\n", irq); - if (!irq) - return -ENODEV; + if (irq < 0) + return irq; rc = devm_request_irq(&pdev->dev, irq, mcr_isr, IRQF_TRIGGER_HIGH, DRV_NAME, ctx); --- linux-azure-5.8-5.8.0.orig/drivers/edac/edac_device_sysfs.c +++ linux-azure-5.8-5.8.0/drivers/edac/edac_device_sysfs.c @@ -275,6 +275,7 @@ /* Error exit stack */ err_kobj_reg: + kobject_put(&edac_dev->kobj); module_put(edac_dev->owner); err_out: --- linux-azure-5.8-5.8.0.orig/drivers/edac/edac_mc.c +++ linux-azure-5.8-5.8.0/drivers/edac/edac_mc.c @@ -950,6 +950,8 @@ e->other_detail); } + edac_inc_ue_error(e); + if (edac_mc_get_panic_on_ue()) { panic("UE %s%son %s (%s page:0x%lx offset:0x%lx grain:%ld%s%s)\n", e->msg, @@ -959,8 +961,6 @@ *e->other_detail ? " - " : "", e->other_detail); } - - edac_inc_ue_error(e); } static void edac_inc_csrow(struct edac_raw_error_desc *e, int row, int chan) --- linux-azure-5.8-5.8.0.orig/drivers/edac/edac_pci_sysfs.c +++ linux-azure-5.8-5.8.0/drivers/edac/edac_pci_sysfs.c @@ -386,7 +386,7 @@ /* Error unwind statck */ kobject_init_and_add_fail: - kfree(edac_pci_top_main_kobj); + kobject_put(edac_pci_top_main_kobj); kzalloc_fail: module_put(THIS_MODULE); --- linux-azure-5.8-5.8.0.orig/drivers/edac/ghes_edac.c +++ linux-azure-5.8-5.8.0/drivers/edac/ghes_edac.c @@ -469,6 +469,7 @@ if (!force_load && idx < 0) return -ENODEV; } else { + force_load = true; idx = 0; } @@ -566,6 +567,9 @@ struct mem_ctl_info *mci; unsigned long flags; + if (!force_load) + return; + mutex_lock(&ghes_reg_mutex); if (!refcount_dec_and_test(&ghes_refcount)) --- linux-azure-5.8-5.8.0.orig/drivers/edac/i10nm_base.c +++ linux-azure-5.8-5.8.0/drivers/edac/i10nm_base.c @@ -6,6 +6,7 @@ */ #include +#include #include #include #include @@ -19,14 +20,16 @@ #define i10nm_printk(level, fmt, arg...) \ edac_printk(level, "i10nm", fmt, ##arg) -#define I10NM_GET_SCK_BAR(d, reg) \ +#define I10NM_GET_SCK_BAR(d, reg) \ pci_read_config_dword((d)->uracu, 0xd0, &(reg)) #define I10NM_GET_IMC_BAR(d, i, reg) \ pci_read_config_dword((d)->uracu, 0xd8 + (i) * 4, &(reg)) #define I10NM_GET_DIMMMTR(m, i, j) \ - (*(u32 *)((m)->mbase + 0x2080c + (i) * 0x4000 + (j) * 4)) + readl((m)->mbase + 0x2080c + (i) * 0x4000 + (j) * 4) #define I10NM_GET_MCDDRTCFG(m, i, j) \ - (*(u32 *)((m)->mbase + 0x20970 + (i) * 0x4000 + (j) * 4)) + readl((m)->mbase + 0x20970 + (i) * 0x4000 + (j) * 4) +#define I10NM_GET_MCMTR(m, i) \ + readl((m)->mbase + 0x20ef8 + (i) * 0x4000) #define I10NM_GET_SCK_MMIO_BASE(reg) (GET_BITFIELD(reg, 0, 28) << 23) #define I10NM_GET_IMC_MMIO_OFFSET(reg) (GET_BITFIELD(reg, 0, 10) << 12) @@ -146,7 +149,7 @@ { u32 mcmtr; - mcmtr = *(u32 *)(imc->mbase + 0x20ef8 + chan * 0x4000); + mcmtr = I10NM_GET_MCMTR(imc, chan); edac_dbg(1, "ch%d mcmtr reg %x\n", chan, mcmtr); return !!GET_BITFIELD(mcmtr, 2, 2); --- linux-azure-5.8-5.8.0.orig/drivers/edac/i5100_edac.c +++ linux-azure-5.8-5.8.0/drivers/edac/i5100_edac.c @@ -1061,16 +1061,15 @@ PCI_DEVICE_ID_INTEL_5100_19, 0); if (!einj) { ret = -ENODEV; - goto bail_einj; + goto bail_mc_free; } rc = pci_enable_device(einj); if (rc < 0) { ret = rc; - goto bail_disable_einj; + goto bail_einj; } - mci->pdev = &pdev->dev; priv = mci->pvt_info; @@ -1136,14 +1135,14 @@ bail_scrub: priv->scrub_enable = 0; cancel_delayed_work_sync(&(priv->i5100_scrubbing)); - edac_mc_free(mci); - -bail_disable_einj: pci_disable_device(einj); bail_einj: pci_dev_put(einj); +bail_mc_free: + edac_mc_free(mci); + bail_disable_ch1: pci_disable_device(ch1mm); --- linux-azure-5.8-5.8.0.orig/drivers/edac/i7core_edac.c +++ linux-azure-5.8-5.8.0/drivers/edac/i7core_edac.c @@ -1710,9 +1710,9 @@ if (uncorrected_error) { core_err_cnt = 1; if (ripv) - tp_event = HW_EVENT_ERR_FATAL; - else tp_event = HW_EVENT_ERR_UNCORRECTED; + else + tp_event = HW_EVENT_ERR_FATAL; } else { tp_event = HW_EVENT_ERR_CORRECTED; } --- linux-azure-5.8-5.8.0.orig/drivers/edac/ie31200_edac.c +++ linux-azure-5.8-5.8.0/drivers/edac/ie31200_edac.c @@ -170,6 +170,8 @@ (n << (28 + (2 * skl) - PAGE_SHIFT)) static int nr_channels; +static struct pci_dev *mci_pdev; +static int ie31200_registered = 1; struct ie31200_priv { void __iomem *window; @@ -538,12 +540,16 @@ static int ie31200_init_one(struct pci_dev *pdev, const struct pci_device_id *ent) { - edac_dbg(0, "MC:\n"); + int rc; + edac_dbg(0, "MC:\n"); if (pci_enable_device(pdev) < 0) return -EIO; + rc = ie31200_probe1(pdev, ent->driver_data); + if (rc == 0 && !mci_pdev) + mci_pdev = pci_dev_get(pdev); - return ie31200_probe1(pdev, ent->driver_data); + return rc; } static void ie31200_remove_one(struct pci_dev *pdev) @@ -552,6 +558,8 @@ struct ie31200_priv *priv; edac_dbg(0, "\n"); + pci_dev_put(mci_pdev); + mci_pdev = NULL; mci = edac_mc_del_mc(&pdev->dev); if (!mci) return; @@ -593,17 +601,53 @@ static int __init ie31200_init(void) { + int pci_rc, i; + edac_dbg(3, "MC:\n"); /* Ensure that the OPSTATE is set correctly for POLL or NMI */ opstate_init(); - return pci_register_driver(&ie31200_driver); + pci_rc = pci_register_driver(&ie31200_driver); + if (pci_rc < 0) + goto fail0; + + if (!mci_pdev) { + ie31200_registered = 0; + for (i = 0; ie31200_pci_tbl[i].vendor != 0; i++) { + mci_pdev = pci_get_device(ie31200_pci_tbl[i].vendor, + ie31200_pci_tbl[i].device, + NULL); + if (mci_pdev) + break; + } + if (!mci_pdev) { + edac_dbg(0, "ie31200 pci_get_device fail\n"); + pci_rc = -ENODEV; + goto fail1; + } + pci_rc = ie31200_init_one(mci_pdev, &ie31200_pci_tbl[i]); + if (pci_rc < 0) { + edac_dbg(0, "ie31200 init fail\n"); + pci_rc = -ENODEV; + goto fail1; + } + } + return 0; + +fail1: + pci_unregister_driver(&ie31200_driver); +fail0: + pci_dev_put(mci_pdev); + + return pci_rc; } static void __exit ie31200_exit(void) { edac_dbg(3, "MC:\n"); pci_unregister_driver(&ie31200_driver); + if (!ie31200_registered) + ie31200_remove_one(mci_pdev); } module_init(ie31200_init); --- linux-azure-5.8-5.8.0.orig/drivers/edac/mce_amd.c +++ linux-azure-5.8-5.8.0/drivers/edac/mce_amd.c @@ -996,7 +996,7 @@ } if (bank_type == SMCA_UMC && xec == 0 && decode_dram_ecc) - decode_dram_ecc(cpu_to_node(m->extcpu), m); + decode_dram_ecc(topology_die_id(m->extcpu), m); } static inline void amd_decode_err_code(u16 ec) --- linux-azure-5.8-5.8.0.orig/drivers/edac/pnd2_edac.c +++ linux-azure-5.8-5.8.0/drivers/edac/pnd2_edac.c @@ -1155,7 +1155,7 @@ u32 optypenum = GET_BITFIELD(m->status, 4, 6); int rc; - tp_event = uc_err ? (ripv ? HW_EVENT_ERR_FATAL : HW_EVENT_ERR_UNCORRECTED) : + tp_event = uc_err ? (ripv ? HW_EVENT_ERR_UNCORRECTED : HW_EVENT_ERR_FATAL) : HW_EVENT_ERR_CORRECTED; /* --- linux-azure-5.8-5.8.0.orig/drivers/edac/sb_edac.c +++ linux-azure-5.8-5.8.0/drivers/edac/sb_edac.c @@ -2982,9 +2982,9 @@ if (uncorrected_error) { core_err_cnt = 1; if (ripv) { - tp_event = HW_EVENT_ERR_FATAL; - } else { tp_event = HW_EVENT_ERR_UNCORRECTED; + } else { + tp_event = HW_EVENT_ERR_FATAL; } } else { tp_event = HW_EVENT_ERR_CORRECTED; --- linux-azure-5.8-5.8.0.orig/drivers/edac/skx_common.c +++ linux-azure-5.8-5.8.0/drivers/edac/skx_common.c @@ -493,9 +493,9 @@ if (uncorrected_error) { core_err_cnt = 1; if (ripv) { - tp_event = HW_EVENT_ERR_FATAL; - } else { tp_event = HW_EVENT_ERR_UNCORRECTED; + } else { + tp_event = HW_EVENT_ERR_FATAL; } } else { tp_event = HW_EVENT_ERR_CORRECTED; --- linux-azure-5.8-5.8.0.orig/drivers/edac/ti_edac.c +++ linux-azure-5.8-5.8.0/drivers/edac/ti_edac.c @@ -278,7 +278,8 @@ /* add EMIF ECC error handler */ error_irq = platform_get_irq(pdev, 0); - if (!error_irq) { + if (error_irq < 0) { + ret = error_irq; edac_printk(KERN_ERR, EDAC_MOD_NAME, "EMIF irq number not defined.\n"); goto err; --- linux-azure-5.8-5.8.0.orig/drivers/extcon/extcon-max77693.c +++ linux-azure-5.8-5.8.0/drivers/extcon/extcon-max77693.c @@ -1277,4 +1277,4 @@ MODULE_DESCRIPTION("Maxim MAX77693 Extcon driver"); MODULE_AUTHOR("Chanwoo Choi "); MODULE_LICENSE("GPL"); -MODULE_ALIAS("platform:extcon-max77693"); +MODULE_ALIAS("platform:max77693-muic"); --- linux-azure-5.8-5.8.0.orig/drivers/extcon/extcon-ptn5150.c +++ linux-azure-5.8-5.8.0/drivers/extcon/extcon-ptn5150.c @@ -127,7 +127,7 @@ case PTN5150_DFP_ATTACHED: extcon_set_state_sync(info->edev, EXTCON_USB_HOST, false); - gpiod_set_value(info->vbus_gpiod, 0); + gpiod_set_value_cansleep(info->vbus_gpiod, 0); extcon_set_state_sync(info->edev, EXTCON_USB, true); break; @@ -138,9 +138,9 @@ PTN5150_REG_CC_VBUS_DETECTION_MASK) >> PTN5150_REG_CC_VBUS_DETECTION_SHIFT); if (vbus) - gpiod_set_value(info->vbus_gpiod, 0); + gpiod_set_value_cansleep(info->vbus_gpiod, 0); else - gpiod_set_value(info->vbus_gpiod, 1); + gpiod_set_value_cansleep(info->vbus_gpiod, 1); extcon_set_state_sync(info->edev, EXTCON_USB_HOST, true); @@ -156,7 +156,7 @@ EXTCON_USB_HOST, false); extcon_set_state_sync(info->edev, EXTCON_USB, false); - gpiod_set_value(info->vbus_gpiod, 0); + gpiod_set_value_cansleep(info->vbus_gpiod, 0); } } --- linux-azure-5.8-5.8.0.orig/drivers/firmware/arm_scmi/base.c +++ linux-azure-5.8-5.8.0/drivers/firmware/arm_scmi/base.c @@ -180,6 +180,8 @@ protocols_imp[tot_num_ret + loop] = *(list + loop); tot_num_ret += loop_num_ret; + + scmi_reset_rx_to_maxsz(handle, t); } while (loop_num_ret); scmi_xfer_put(handle, t); --- linux-azure-5.8-5.8.0.orig/drivers/firmware/arm_scmi/bus.c +++ linux-azure-5.8-5.8.0/drivers/firmware/arm_scmi/bus.c @@ -230,7 +230,7 @@ bus_for_each_dev(&scmi_bus_type, NULL, NULL, __scmi_devices_unregister); } -static int __init scmi_bus_init(void) +int __init scmi_bus_init(void) { int retval; @@ -240,12 +240,10 @@ return retval; } -subsys_initcall(scmi_bus_init); -static void __exit scmi_bus_exit(void) +void __exit scmi_bus_exit(void) { scmi_devices_unregister(); bus_unregister(&scmi_bus_type); ida_destroy(&scmi_bus_id); } -module_exit(scmi_bus_exit); --- linux-azure-5.8-5.8.0.orig/drivers/firmware/arm_scmi/clock.c +++ linux-azure-5.8-5.8.0/drivers/firmware/arm_scmi/clock.c @@ -178,6 +178,8 @@ } tot_rate_cnt += num_returned; + + scmi_reset_rx_to_maxsz(handle, t); /* * check for both returned and remaining to avoid infinite * loop due to buggy firmware --- linux-azure-5.8-5.8.0.orig/drivers/firmware/arm_scmi/common.h +++ linux-azure-5.8-5.8.0/drivers/firmware/arm_scmi/common.h @@ -145,6 +145,8 @@ struct scmi_xfer *xfer); int scmi_xfer_get_init(const struct scmi_handle *h, u8 msg_id, u8 prot_id, size_t tx_size, size_t rx_size, struct scmi_xfer **p); +void scmi_reset_rx_to_maxsz(const struct scmi_handle *handle, + struct scmi_xfer *xfer); int scmi_handle_put(const struct scmi_handle *handle); struct scmi_handle *scmi_handle_get(struct device *dev); void scmi_set_handle(struct scmi_device *scmi_dev); @@ -154,6 +156,9 @@ int scmi_base_protocol_init(struct scmi_handle *h); +int __init scmi_bus_init(void); +void __exit scmi_bus_exit(void); + /* SCMI Transport */ /** * struct scmi_chan_info - Structure representing a SCMI channel information --- linux-azure-5.8-5.8.0.orig/drivers/firmware/arm_scmi/driver.c +++ linux-azure-5.8-5.8.0/drivers/firmware/arm_scmi/driver.c @@ -398,6 +398,14 @@ return ret; } +void scmi_reset_rx_to_maxsz(const struct scmi_handle *handle, + struct scmi_xfer *xfer) +{ + struct scmi_info *info = handle_to_scmi_info(handle); + + xfer->rx.len = info->desc->max_msg_size; +} + #define SCMI_MAX_RESPONSE_TIMEOUT (2 * MSEC_PER_SEC) /** @@ -919,7 +927,21 @@ .remove = scmi_remove, }; -module_platform_driver(scmi_driver); +static int __init scmi_driver_init(void) +{ + scmi_bus_init(); + + return platform_driver_register(&scmi_driver); +} +module_init(scmi_driver_init); + +static void __exit scmi_driver_exit(void) +{ + scmi_bus_exit(); + + platform_driver_unregister(&scmi_driver); +} +module_exit(scmi_driver_exit); MODULE_ALIAS("platform: arm-scmi"); MODULE_AUTHOR("Sudeep Holla "); --- linux-azure-5.8-5.8.0.orig/drivers/firmware/arm_scmi/mailbox.c +++ linux-azure-5.8-5.8.0/drivers/firmware/arm_scmi/mailbox.c @@ -110,7 +110,7 @@ struct scmi_chan_info *cinfo = p; struct scmi_mailbox *smbox = cinfo->transport_info; - if (!IS_ERR(smbox->chan)) { + if (smbox && !IS_ERR(smbox->chan)) { mbox_free_channel(smbox->chan); cinfo->transport_info = NULL; smbox->chan = NULL; --- linux-azure-5.8-5.8.0.orig/drivers/firmware/arm_scmi/perf.c +++ linux-azure-5.8-5.8.0/drivers/firmware/arm_scmi/perf.c @@ -287,6 +287,8 @@ } tot_opp_cnt += num_returned; + + scmi_reset_rx_to_maxsz(handle, t); /* * check for both returned and remaining to avoid infinite * loop due to buggy firmware --- linux-azure-5.8-5.8.0.orig/drivers/firmware/arm_scmi/reset.c +++ linux-azure-5.8-5.8.0/drivers/firmware/arm_scmi/reset.c @@ -35,9 +35,7 @@ #define EXPLICIT_RESET_ASSERT BIT(1) #define ASYNCHRONOUS_RESET BIT(2) __le32 reset_state; -#define ARCH_RESET_TYPE BIT(31) -#define COLD_RESET_STATE BIT(0) -#define ARCH_COLD_RESET (ARCH_RESET_TYPE | COLD_RESET_STATE) +#define ARCH_COLD_RESET 0 }; struct reset_dom_info { --- linux-azure-5.8-5.8.0.orig/drivers/firmware/arm_scmi/scmi_pm_domain.c +++ linux-azure-5.8-5.8.0/drivers/firmware/arm_scmi/scmi_pm_domain.c @@ -85,7 +85,10 @@ for (i = 0; i < num_domains; i++, scmi_pd++) { u32 state; - domains[i] = &scmi_pd->genpd; + if (handle->power_ops->state_get(handle, i, &state)) { + dev_warn(dev, "failed to get state for domain %d\n", i); + continue; + } scmi_pd->domain = i; scmi_pd->handle = handle; @@ -94,13 +97,10 @@ scmi_pd->genpd.power_off = scmi_pd_power_off; scmi_pd->genpd.power_on = scmi_pd_power_on; - if (handle->power_ops->state_get(handle, i, &state)) { - dev_warn(dev, "failed to get state for domain %d\n", i); - continue; - } - pm_genpd_init(&scmi_pd->genpd, NULL, state == SCMI_POWER_STATE_GENERIC_OFF); + + domains[i] = &scmi_pd->genpd; } scmi_pd_data->domains = domains; --- linux-azure-5.8-5.8.0.orig/drivers/firmware/arm_scmi/sensors.c +++ linux-azure-5.8-5.8.0/drivers/firmware/arm_scmi/sensors.c @@ -159,6 +159,8 @@ } desc_index += num_returned; + + scmi_reset_rx_to_maxsz(handle, t); /* * check for both returned and remaining to avoid infinite * loop due to buggy firmware --- linux-azure-5.8-5.8.0.orig/drivers/firmware/arm_scmi/smc.c +++ linux-azure-5.8-5.8.0/drivers/firmware/arm_scmi/smc.c @@ -148,6 +148,6 @@ const struct scmi_desc scmi_smc_desc = { .ops = &scmi_smc_ops, .max_rx_timeout_ms = 30, - .max_msg = 1, + .max_msg = 20, .max_msg_size = 128, }; --- linux-azure-5.8-5.8.0.orig/drivers/firmware/efi/Kconfig +++ linux-azure-5.8-5.8.0/drivers/firmware/efi/Kconfig @@ -275,7 +275,7 @@ config EFI_EARLYCON def_bool y - depends on SERIAL_EARLYCON && !ARM && !IA64 + depends on EFI && SERIAL_EARLYCON && !ARM && !IA64 select FONT_SUPPORT select ARCH_USE_MEMREMAP_PROT --- linux-azure-5.8-5.8.0.orig/drivers/firmware/efi/Makefile +++ linux-azure-5.8-5.8.0/drivers/firmware/efi/Makefile @@ -25,6 +25,7 @@ obj-$(CONFIG_EFI_BOOTLOADER_CONTROL) += efibc.o obj-$(CONFIG_EFI_TEST) += test/ obj-$(CONFIG_EFI_DEV_PATH_PARSER) += dev-path-parser.o +obj-$(CONFIG_EFI) += secureboot.o obj-$(CONFIG_APPLE_PROPERTIES) += apple-properties.o obj-$(CONFIG_EFI_RCI2_TABLE) += rci2-table.o obj-$(CONFIG_EFI_EMBEDDED_FIRMWARE) += embedded-firmware.o --- linux-azure-5.8-5.8.0.orig/drivers/firmware/efi/apple-properties.c +++ linux-azure-5.8-5.8.0/drivers/firmware/efi/apple-properties.c @@ -3,8 +3,9 @@ * apple-properties.c - EFI device properties on Macs * Copyright (C) 2016 Lukas Wunner * - * Note, all properties are considered as u8 arrays. - * To get a value of any of them the caller must use device_property_read_u8_array(). + * Properties are stored either as: + * u8 arrays which can be retrieved with device_property_read_u8_array() or + * booleans which can be queried with device_property_present(). */ #define pr_fmt(fmt) "apple-properties: " fmt @@ -88,8 +89,12 @@ entry_data = ptr + key_len + sizeof(val_len); entry_len = val_len - sizeof(val_len); - entry[i] = PROPERTY_ENTRY_U8_ARRAY_LEN(key, entry_data, - entry_len); + if (entry_len) + entry[i] = PROPERTY_ENTRY_U8_ARRAY_LEN(key, entry_data, + entry_len); + else + entry[i] = PROPERTY_ENTRY_BOOL(key); + if (dump_properties) { dev_info(dev, "property: %s\n", key); print_hex_dump(KERN_INFO, pr_fmt(), DUMP_PREFIX_OFFSET, --- linux-azure-5.8-5.8.0.orig/drivers/firmware/efi/arm-init.c +++ linux-azure-5.8-5.8.0/drivers/firmware/efi/arm-init.c @@ -19,6 +19,7 @@ #include #include #include +#include #include @@ -234,6 +235,13 @@ return; } + efi_set_secure_boot(efi_get__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 + reserve_regions(); efi_esrt_init(); --- linux-azure-5.8-5.8.0.orig/drivers/firmware/efi/efi.c +++ linux-azure-5.8-5.8.0/drivers/firmware/efi/efi.c @@ -31,6 +31,7 @@ #include #include #include +#include #include @@ -381,15 +382,16 @@ efi_kobj = kobject_create_and_add("efi", firmware_kobj); if (!efi_kobj) { pr_err("efi: Firmware registration failed.\n"); + destroy_workqueue(efi_rts_wq); return -ENOMEM; } if (efi_rt_services_supported(EFI_RT_SUPPORTED_GET_VARIABLE | EFI_RT_SUPPORTED_GET_NEXT_VARIABLE_NAME)) { - efivar_ssdt_load(); error = generic_ops_register(); if (error) goto err_put; + efivar_ssdt_load(); platform_device_register_simple("efivars", 0, NULL, 0); } @@ -424,6 +426,7 @@ generic_ops_unregister(); err_put: kobject_put(efi_kobj); + destroy_workqueue(efi_rts_wq); return error; } @@ -831,40 +834,101 @@ } #endif +struct efi_error_code { + efi_status_t status; + int errno; + const char *description; +}; + +static const struct efi_error_code efi_error_codes[] = { + { EFI_SUCCESS, 0, "Success"}, +#if 0 + { EFI_LOAD_ERROR, -EPICK_AN_ERRNO, "Load Error"}, +#endif + { EFI_INVALID_PARAMETER, -EINVAL, "Invalid Parameter"}, + { EFI_UNSUPPORTED, -ENOSYS, "Unsupported"}, + { EFI_BAD_BUFFER_SIZE, -ENOSPC, "Bad Buffer Size"}, + { EFI_BUFFER_TOO_SMALL, -ENOSPC, "Buffer Too Small"}, + { EFI_NOT_READY, -EAGAIN, "Not Ready"}, + { EFI_DEVICE_ERROR, -EIO, "Device Error"}, + { EFI_WRITE_PROTECTED, -EROFS, "Write Protected"}, + { EFI_OUT_OF_RESOURCES, -ENOMEM, "Out of Resources"}, +#if 0 + { EFI_VOLUME_CORRUPTED, -EPICK_AN_ERRNO, "Volume Corrupt"}, + { EFI_VOLUME_FULL, -EPICK_AN_ERRNO, "Volume Full"}, + { EFI_NO_MEDIA, -EPICK_AN_ERRNO, "No Media"}, + { EFI_MEDIA_CHANGED, -EPICK_AN_ERRNO, "Media changed"}, +#endif + { EFI_NOT_FOUND, -ENOENT, "Not Found"}, +#if 0 + { EFI_ACCESS_DENIED, -EPICK_AN_ERRNO, "Access Denied"}, + { EFI_NO_RESPONSE, -EPICK_AN_ERRNO, "No Response"}, + { EFI_NO_MAPPING, -EPICK_AN_ERRNO, "No mapping"}, + { EFI_TIMEOUT, -EPICK_AN_ERRNO, "Time out"}, + { EFI_NOT_STARTED, -EPICK_AN_ERRNO, "Not started"}, + { EFI_ALREADY_STARTED, -EPICK_AN_ERRNO, "Already started"}, +#endif + { EFI_ABORTED, -EINTR, "Aborted"}, +#if 0 + { EFI_ICMP_ERROR, -EPICK_AN_ERRNO, "ICMP Error"}, + { EFI_TFTP_ERROR, -EPICK_AN_ERRNO, "TFTP Error"}, + { EFI_PROTOCOL_ERROR, -EPICK_AN_ERRNO, "Protocol Error"}, + { EFI_INCOMPATIBLE_VERSION, -EPICK_AN_ERRNO, "Incompatible Version"}, +#endif + { EFI_SECURITY_VIOLATION, -EACCES, "Security Policy Violation"}, +#if 0 + { EFI_CRC_ERROR, -EPICK_AN_ERRNO, "CRC Error"}, + { EFI_END_OF_MEDIA, -EPICK_AN_ERRNO, "End of Media"}, + { EFI_END_OF_FILE, -EPICK_AN_ERRNO, "End of File"}, + { EFI_INVALID_LANGUAGE, -EPICK_AN_ERRNO, "Invalid Languages"}, + { EFI_COMPROMISED_DATA, -EPICK_AN_ERRNO, "Compromised Data"}, + + // warnings + { EFI_WARN_UNKOWN_GLYPH, -EPICK_AN_ERRNO, "Warning Unknown Glyph"}, + { EFI_WARN_DELETE_FAILURE, -EPICK_AN_ERRNO, "Warning Delete Failure"}, + { EFI_WARN_WRITE_FAILURE, -EPICK_AN_ERRNO, "Warning Write Failure"}, + { EFI_WARN_BUFFER_TOO_SMALL, -EPICK_AN_ERRNO, "Warning Buffer Too Small"}, +#endif +}; + +static int +efi_status_cmp_bsearch(const void *key, const void *item) +{ + u64 status = (u64)(uintptr_t)key; + struct efi_error_code *code = (struct efi_error_code *)item; + + if (status < code->status) + return -1; + if (status > code->status) + return 1; + return 0; +} + int efi_status_to_err(efi_status_t status) { - int err; + struct efi_error_code *found; + size_t num = sizeof(efi_error_codes) / sizeof(struct efi_error_code); - switch (status) { - case EFI_SUCCESS: - err = 0; - break; - case EFI_INVALID_PARAMETER: - err = -EINVAL; - break; - case EFI_OUT_OF_RESOURCES: - err = -ENOSPC; - break; - case EFI_DEVICE_ERROR: - err = -EIO; - break; - case EFI_WRITE_PROTECTED: - err = -EROFS; - break; - case EFI_SECURITY_VIOLATION: - err = -EACCES; - break; - case EFI_NOT_FOUND: - err = -ENOENT; - break; - case EFI_ABORTED: - err = -EINTR; - break; - default: - err = -EINVAL; - } + found = bsearch((void *)(uintptr_t)status, efi_error_codes, + sizeof(struct efi_error_code), num, + efi_status_cmp_bsearch); + if (!found) + return -EINVAL; + return found->errno; +} + +const char * +efi_status_to_str(efi_status_t status) +{ + struct efi_error_code *found; + size_t num = sizeof(efi_error_codes) / sizeof(struct efi_error_code); - return err; + found = bsearch((void *)(uintptr_t)status, efi_error_codes, + sizeof(struct efi_error_code), num, + efi_status_cmp_bsearch); + if (!found) + return "Unknown error code"; + return found->description; } static DEFINE_SPINLOCK(efi_mem_reserve_persistent_lock); --- linux-azure-5.8-5.8.0.orig/drivers/firmware/efi/efibc.c +++ linux-azure-5.8-5.8.0/drivers/firmware/efi/efibc.c @@ -84,7 +84,7 @@ { int ret; - if (!efi_enabled(EFI_RUNTIME_SERVICES)) + if (!efivars_kobject() || !efivar_supports_writes()) return -ENODEV; ret = register_reboot_notifier(&efibc_reboot_notifier); --- linux-azure-5.8-5.8.0.orig/drivers/firmware/efi/embedded-firmware.c +++ linux-azure-5.8-5.8.0/drivers/firmware/efi/embedded-firmware.c @@ -16,9 +16,9 @@ /* Exported for use by lib/test_firmware.c only */ LIST_HEAD(efi_embedded_fw_list); -EXPORT_SYMBOL_GPL(efi_embedded_fw_list); - -static bool checked_for_fw; +EXPORT_SYMBOL_NS_GPL(efi_embedded_fw_list, TEST_FIRMWARE); +bool efi_embedded_fw_checked; +EXPORT_SYMBOL_NS_GPL(efi_embedded_fw_checked, TEST_FIRMWARE); static const struct dmi_system_id * const embedded_fw_table[] = { #ifdef CONFIG_TOUCHSCREEN_DMI @@ -119,14 +119,14 @@ } } - checked_for_fw = true; + efi_embedded_fw_checked = true; } int efi_get_embedded_fw(const char *name, const u8 **data, size_t *size) { struct efi_embedded_fw *iter, *fw = NULL; - if (!checked_for_fw) { + if (!efi_embedded_fw_checked) { pr_warn("Warning %s called while we did not check for embedded fw\n", __func__); return -ENOENT; --- linux-azure-5.8-5.8.0.orig/drivers/firmware/efi/fdtparams.c +++ linux-azure-5.8-5.8.0/drivers/firmware/efi/fdtparams.c @@ -16,16 +16,23 @@ MMSIZE, DCSIZE, DCVERS, + SCBOOT, PARAMCOUNT }; +static __initdata u32 __secure_boot = efi_secureboot_mode_unset; +u32 __init efi_get__secure_boot(void) { + return __secure_boot; +} + static __initconst const char name[][22] = { [SYSTAB] = "System Table ", [MMBASE] = "MemMap Address ", [MMSIZE] = "MemMap Size ", [DCSIZE] = "MemMap Desc. Size ", [DCVERS] = "MemMap Desc. Version ", + [SCBOOT] = "Secure Boot Enabled ", }; static __initconst const struct { @@ -51,6 +58,7 @@ [MMSIZE] = "linux,uefi-mmap-size", [DCSIZE] = "linux,uefi-mmap-desc-size", [DCVERS] = "linux,uefi-mmap-desc-ver", + [SCBOOT] = "linux,uefi-secure-boot", } } }; @@ -93,6 +101,7 @@ [MMSIZE] = { &mm->size, sizeof(mm->size) }, [DCSIZE] = { &mm->desc_size, sizeof(mm->desc_size) }, [DCVERS] = { &mm->desc_version, sizeof(mm->desc_version) }, + [SCBOOT] = { &__secure_boot, sizeof(__secure_boot) }, }; BUILD_BUG_ON(ARRAY_SIZE(target) != ARRAY_SIZE(name)); --- linux-azure-5.8-5.8.0.orig/drivers/firmware/efi/libstub/arm64-stub.c +++ linux-azure-5.8-5.8.0/drivers/firmware/efi/libstub/arm64-stub.c @@ -62,10 +62,12 @@ status = efi_get_random_bytes(sizeof(phys_seed), (u8 *)&phys_seed); if (status == EFI_NOT_FOUND) { - efi_info("EFI_RNG_PROTOCOL unavailable, no randomness supplied\n"); + efi_info("EFI_RNG_PROTOCOL unavailable, KASLR will be disabled\n"); + efi_nokaslr = true; } else if (status != EFI_SUCCESS) { - efi_err("efi_get_random_bytes() failed\n"); - return status; + efi_err("efi_get_random_bytes() failed (0x%lx), KASLR will be disabled\n", + status); + efi_nokaslr = true; } } else { efi_info("KASLR disabled on kernel command line\n"); --- linux-azure-5.8-5.8.0.orig/drivers/firmware/efi/libstub/efi-stub-helper.c +++ linux-azure-5.8-5.8.0/drivers/firmware/efi/libstub/efi-stub-helper.c @@ -187,20 +187,28 @@ */ efi_status_t efi_parse_options(char const *cmdline) { - size_t len = strlen(cmdline) + 1; + size_t len; efi_status_t status; char *str, *buf; + if (!cmdline) + return EFI_SUCCESS; + + len = strnlen(cmdline, COMMAND_LINE_SIZE - 1) + 1; status = efi_bs_call(allocate_pool, EFI_LOADER_DATA, len, (void **)&buf); if (status != EFI_SUCCESS) return status; - str = skip_spaces(memcpy(buf, cmdline, len)); + memcpy(buf, cmdline, len - 1); + buf[len - 1] = '\0'; + str = skip_spaces(buf); while (*str) { char *param, *val; str = next_arg(str, ¶m, &val); + if (!val && !strcmp(param, "--")) + break; if (!strcmp(param, "nokaslr")) { efi_nokaslr = true; --- linux-azure-5.8-5.8.0.orig/drivers/firmware/efi/libstub/efistub.h +++ linux-azure-5.8-5.8.0/drivers/firmware/efi/libstub/efistub.h @@ -135,7 +135,7 @@ * the EFI memory map. Other related structures, e.g. x86 e820ext, need * to factor in this headroom requirement as well. */ -#define EFI_MMAP_NR_SLACK_SLOTS 8 +#define EFI_MMAP_NR_SLACK_SLOTS 16 struct efi_boot_memmap { efi_memory_desc_t **map; --- linux-azure-5.8-5.8.0.orig/drivers/firmware/efi/libstub/fdt.c +++ linux-azure-5.8-5.8.0/drivers/firmware/efi/libstub/fdt.c @@ -136,7 +136,7 @@ if (status) goto fdt_set_fail; - if (IS_ENABLED(CONFIG_RANDOMIZE_BASE)) { + if (IS_ENABLED(CONFIG_RANDOMIZE_BASE) && !efi_nokaslr) { efi_status_t efi_status; efi_status = efi_get_random_bytes(sizeof(fdt_val64), @@ -145,11 +145,15 @@ status = fdt_setprop_var(fdt, node, "kaslr-seed", fdt_val64); if (status) goto fdt_set_fail; - } else if (efi_status != EFI_NOT_FOUND) { - return efi_status; } } + fdt_val32 = cpu_to_fdt32(efi_get_secureboot()); + status = fdt_setprop(fdt, node, "linux,uefi-secure-boot", + &fdt_val32, sizeof(fdt_val32)); + if (status) + goto fdt_set_fail; + /* Shrink the FDT back to its minimum size: */ fdt_pack(fdt); --- linux-azure-5.8-5.8.0.orig/drivers/firmware/efi/secureboot.c +++ linux-azure-5.8-5.8.0/drivers/firmware/efi/secureboot.c @@ -0,0 +1,38 @@ +/* Core kernel secure boot support. + * + * Copyright (C) 2017 Red Hat, Inc. All Rights Reserved. + * Written by David Howells (dhowells@redhat.com) + * + * This program is free software; you can redistribute it and/or + * modify it under the terms of the GNU General Public Licence + * as published by the Free Software Foundation; either version + * 2 of the Licence, or (at your option) any later version. + */ + +#define pr_fmt(fmt) KBUILD_MODNAME ": " fmt + +#include +#include +#include + +/* + * Decide what to do when UEFI secure boot mode is enabled. + */ +void __init efi_set_secure_boot(enum efi_secureboot_mode mode) +{ + if (efi_enabled(EFI_BOOT)) { + switch (mode) { + case efi_secureboot_mode_disabled: + pr_info("Secure boot disabled\n"); + break; + case efi_secureboot_mode_enabled: + set_bit(EFI_SECURE_BOOT, &efi.flags); + pr_info("Secure boot enabled\n"); + break; + default: + pr_warn("Secure boot could not be determined (mode %u)\n", + mode); + break; + } + } +} --- linux-azure-5.8-5.8.0.orig/drivers/firmware/imx/Kconfig +++ linux-azure-5.8-5.8.0/drivers/firmware/imx/Kconfig @@ -13,6 +13,7 @@ config IMX_SCU bool "IMX SCU Protocol driver" depends on IMX_MBOX + select SOC_BUS help The System Controller Firmware (SCFW) is a low-level system function which runs on a dedicated Cortex-M core to provide power, clock, and --- linux-azure-5.8-5.8.0.orig/drivers/firmware/qcom_scm.c +++ linux-azure-5.8-5.8.0/drivers/firmware/qcom_scm.c @@ -391,7 +391,7 @@ desc.args[1] = enable ? QCOM_SCM_BOOT_SET_DLOAD_MODE : 0; - return qcom_scm_call(__scm->dev, &desc, NULL); + return qcom_scm_call_atomic(__scm->dev, &desc, NULL); } static void qcom_scm_set_download_mode(bool enable) @@ -650,7 +650,7 @@ int ret; - ret = qcom_scm_call(__scm->dev, &desc, &res); + ret = qcom_scm_call_atomic(__scm->dev, &desc, &res); if (ret >= 0) *val = res.result[0]; @@ -669,8 +669,7 @@ .owner = ARM_SMCCC_OWNER_SIP, }; - - return qcom_scm_call(__scm->dev, &desc, NULL); + return qcom_scm_call_atomic(__scm->dev, &desc, NULL); } EXPORT_SYMBOL(qcom_scm_io_writel); --- linux-azure-5.8-5.8.0.orig/drivers/firmware/xilinx/zynqmp.c +++ linux-azure-5.8-5.8.0/drivers/firmware/xilinx/zynqmp.c @@ -20,12 +20,28 @@ #include #include #include +#include #include #include "zynqmp-debug.h" +/* Max HashMap Order for PM API feature check (1<<7 = 128) */ +#define PM_API_FEATURE_CHECK_MAX_ORDER 7 + static bool feature_check_enabled; -static u32 zynqmp_pm_features[PM_API_MAX]; +DEFINE_HASHTABLE(pm_api_features_map, PM_API_FEATURE_CHECK_MAX_ORDER); + +/** + * struct pm_api_feature_data - PM API Feature data + * @pm_api_id: PM API Id, used as key to index into hashmap + * @feature_status: status of PM API feature: valid, invalid + * @hentry: hlist_node that hooks this entry into hashtable + */ +struct pm_api_feature_data { + u32 pm_api_id; + int feature_status; + struct hlist_node hentry; +}; static const struct mfd_cell firmware_devs[] = { { @@ -142,26 +158,37 @@ int ret; u32 ret_payload[PAYLOAD_ARG_CNT]; u64 smc_arg[2]; + struct pm_api_feature_data *feature_data; if (!feature_check_enabled) return 0; - /* Return value if feature is already checked */ - if (zynqmp_pm_features[api_id] != PM_FEATURE_UNCHECKED) - return zynqmp_pm_features[api_id]; + /* Check for existing entry in hash table for given api */ + hash_for_each_possible(pm_api_features_map, feature_data, hentry, + api_id) { + if (feature_data->pm_api_id == api_id) + return feature_data->feature_status; + } + /* Add new entry if not present */ + feature_data = kmalloc(sizeof(*feature_data), GFP_KERNEL); + if (!feature_data) + return -ENOMEM; + + feature_data->pm_api_id = api_id; smc_arg[0] = PM_SIP_SVC | PM_FEATURE_CHECK; smc_arg[1] = api_id; ret = do_fw_call(smc_arg[0], smc_arg[1], 0, ret_payload); - if (ret) { - zynqmp_pm_features[api_id] = PM_FEATURE_INVALID; - return PM_FEATURE_INVALID; - } + if (ret) + ret = -EOPNOTSUPP; + else + ret = ret_payload[1]; - zynqmp_pm_features[api_id] = ret_payload[1]; + feature_data->feature_status = ret; + hash_add(pm_api_features_map, &feature_data->hentry, api_id); - return zynqmp_pm_features[api_id]; + return ret; } /** @@ -197,9 +224,12 @@ * Make sure to stay in x0 register */ u64 smc_arg[4]; + int ret; - if (zynqmp_pm_feature(pm_api_id) == PM_FEATURE_INVALID) - return -ENOTSUPP; + /* Check if feature is supported or not */ + ret = zynqmp_pm_feature(pm_api_id); + if (ret < 0) + return ret; smc_arg[0] = PM_SIP_SVC | pm_api_id; smc_arg[1] = ((u64)arg1 << 32) | arg0; @@ -612,7 +642,7 @@ */ int zynqmp_pm_sd_dll_reset(u32 node_id, u32 type) { - return zynqmp_pm_invoke_fn(PM_IOCTL, node_id, IOCTL_SET_SD_TAPDELAY, + return zynqmp_pm_invoke_fn(PM_IOCTL, node_id, IOCTL_SD_DLL_RESET, type, 0, NULL); } EXPORT_SYMBOL_GPL(zynqmp_pm_sd_dll_reset); @@ -1249,9 +1279,17 @@ static int zynqmp_firmware_remove(struct platform_device *pdev) { + struct pm_api_feature_data *feature_data; + int i; + mfd_remove_devices(&pdev->dev); zynqmp_pm_api_debugfs_exit(); + hash_for_each(pm_api_features_map, i, feature_data, hentry) { + hash_del(&feature_data->hentry); + kfree(feature_data); + } + return 0; } --- linux-azure-5.8-5.8.0.orig/drivers/gpio/Kconfig +++ linux-azure-5.8-5.8.0/drivers/gpio/Kconfig @@ -403,8 +403,9 @@ select GENERIC_IRQ_CHIP config GPIO_MXS - def_bool y + bool "Freescale MXS GPIO support" if COMPILE_TEST depends on ARCH_MXS || COMPILE_TEST + default y if ARCH_MXS select GPIO_GENERIC select GENERIC_IRQ_CHIP @@ -483,7 +484,8 @@ config GPIO_SIFIVE bool "SiFive GPIO support" - depends on OF_GPIO && IRQ_DOMAIN_HIERARCHY + depends on OF_GPIO + select IRQ_DOMAIN_HIERARCHY select GPIO_GENERIC select GPIOLIB_IRQCHIP select REGMAP_MMIO --- linux-azure-5.8-5.8.0.orig/drivers/gpio/gpio-amd-fch.c +++ linux-azure-5.8-5.8.0/drivers/gpio/gpio-amd-fch.c @@ -92,7 +92,7 @@ ret = (readl_relaxed(ptr) & AMD_FCH_GPIO_FLAG_DIRECTION); spin_unlock_irqrestore(&priv->lock, flags); - return ret ? GPIO_LINE_DIRECTION_IN : GPIO_LINE_DIRECTION_OUT; + return ret ? GPIO_LINE_DIRECTION_OUT : GPIO_LINE_DIRECTION_IN; } static void amd_fch_gpio_set(struct gpio_chip *gc, --- linux-azure-5.8-5.8.0.orig/drivers/gpio/gpio-aspeed-sgpio.c +++ linux-azure-5.8-5.8.0/drivers/gpio/gpio-aspeed-sgpio.c @@ -17,7 +17,17 @@ #include #include -#define MAX_NR_SGPIO 80 +/* + * MAX_NR_HW_GPIO represents the number of actual hardware-supported GPIOs (ie, + * slots within the clocked serial GPIO data). Since each HW GPIO is both an + * input and an output, we provide MAX_NR_HW_GPIO * 2 lines on our gpiochip + * device. + * + * We use SGPIO_OUTPUT_OFFSET to define the split between the inputs and + * outputs; the inputs start at line 0, the outputs start at OUTPUT_OFFSET. + */ +#define MAX_NR_HW_SGPIO 80 +#define SGPIO_OUTPUT_OFFSET MAX_NR_HW_SGPIO #define ASPEED_SGPIO_CTRL 0x54 @@ -30,8 +40,8 @@ struct clk *pclk; spinlock_t lock; void __iomem *base; - uint32_t dir_in[3]; int irq; + int n_sgpio; }; struct aspeed_sgpio_bank { @@ -111,31 +121,69 @@ } } -#define GPIO_BANK(x) ((x) >> 5) -#define GPIO_OFFSET(x) ((x) & 0x1f) +#define GPIO_BANK(x) ((x % SGPIO_OUTPUT_OFFSET) >> 5) +#define GPIO_OFFSET(x) ((x % SGPIO_OUTPUT_OFFSET) & 0x1f) #define GPIO_BIT(x) BIT(GPIO_OFFSET(x)) static const struct aspeed_sgpio_bank *to_bank(unsigned int offset) { - unsigned int bank = GPIO_BANK(offset); + unsigned int bank; + + bank = GPIO_BANK(offset); WARN_ON(bank >= ARRAY_SIZE(aspeed_sgpio_banks)); return &aspeed_sgpio_banks[bank]; } +static int aspeed_sgpio_init_valid_mask(struct gpio_chip *gc, + unsigned long *valid_mask, unsigned int ngpios) +{ + struct aspeed_sgpio *sgpio = gpiochip_get_data(gc); + int n = sgpio->n_sgpio; + int c = SGPIO_OUTPUT_OFFSET - n; + + WARN_ON(ngpios < MAX_NR_HW_SGPIO * 2); + + /* input GPIOs in the lower range */ + bitmap_set(valid_mask, 0, n); + bitmap_clear(valid_mask, n, c); + + /* output GPIOS above SGPIO_OUTPUT_OFFSET */ + bitmap_set(valid_mask, SGPIO_OUTPUT_OFFSET, n); + bitmap_clear(valid_mask, SGPIO_OUTPUT_OFFSET + n, c); + + return 0; +} + +static void aspeed_sgpio_irq_init_valid_mask(struct gpio_chip *gc, + unsigned long *valid_mask, unsigned int ngpios) +{ + struct aspeed_sgpio *sgpio = gpiochip_get_data(gc); + int n = sgpio->n_sgpio; + + WARN_ON(ngpios < MAX_NR_HW_SGPIO * 2); + + /* input GPIOs in the lower range */ + bitmap_set(valid_mask, 0, n); + bitmap_clear(valid_mask, n, ngpios - n); +} + +static bool aspeed_sgpio_is_input(unsigned int offset) +{ + return offset < SGPIO_OUTPUT_OFFSET; +} + static int aspeed_sgpio_get(struct gpio_chip *gc, unsigned int offset) { struct aspeed_sgpio *gpio = gpiochip_get_data(gc); const struct aspeed_sgpio_bank *bank = to_bank(offset); unsigned long flags; enum aspeed_sgpio_reg reg; - bool is_input; int rc = 0; spin_lock_irqsave(&gpio->lock, flags); - is_input = gpio->dir_in[GPIO_BANK(offset)] & GPIO_BIT(offset); - reg = is_input ? reg_val : reg_rdata; + reg = aspeed_sgpio_is_input(offset) ? reg_val : reg_rdata; rc = !!(ioread32(bank_reg(gpio, bank, reg)) & GPIO_BIT(offset)); spin_unlock_irqrestore(&gpio->lock, flags); @@ -143,22 +191,31 @@ return rc; } -static void sgpio_set_value(struct gpio_chip *gc, unsigned int offset, int val) +static int sgpio_set_value(struct gpio_chip *gc, unsigned int offset, int val) { struct aspeed_sgpio *gpio = gpiochip_get_data(gc); const struct aspeed_sgpio_bank *bank = to_bank(offset); - void __iomem *addr; + void __iomem *addr_r, *addr_w; u32 reg = 0; - addr = bank_reg(gpio, bank, reg_val); - reg = ioread32(addr); + if (aspeed_sgpio_is_input(offset)) + return -EINVAL; + + /* Since this is an output, read the cached value from rdata, then + * update val. */ + addr_r = bank_reg(gpio, bank, reg_rdata); + addr_w = bank_reg(gpio, bank, reg_val); + + reg = ioread32(addr_r); if (val) reg |= GPIO_BIT(offset); else reg &= ~GPIO_BIT(offset); - iowrite32(reg, addr); + iowrite32(reg, addr_w); + + return 0; } static void aspeed_sgpio_set(struct gpio_chip *gc, unsigned int offset, int val) @@ -175,43 +232,28 @@ static int aspeed_sgpio_dir_in(struct gpio_chip *gc, unsigned int offset) { - struct aspeed_sgpio *gpio = gpiochip_get_data(gc); - unsigned long flags; - - spin_lock_irqsave(&gpio->lock, flags); - gpio->dir_in[GPIO_BANK(offset)] |= GPIO_BIT(offset); - spin_unlock_irqrestore(&gpio->lock, flags); - - return 0; + return aspeed_sgpio_is_input(offset) ? 0 : -EINVAL; } static int aspeed_sgpio_dir_out(struct gpio_chip *gc, unsigned int offset, int val) { struct aspeed_sgpio *gpio = gpiochip_get_data(gc); unsigned long flags; + int rc; - spin_lock_irqsave(&gpio->lock, flags); - - gpio->dir_in[GPIO_BANK(offset)] &= ~GPIO_BIT(offset); - sgpio_set_value(gc, offset, val); + /* No special action is required for setting the direction; we'll + * error-out in sgpio_set_value if this isn't an output GPIO */ + spin_lock_irqsave(&gpio->lock, flags); + rc = sgpio_set_value(gc, offset, val); spin_unlock_irqrestore(&gpio->lock, flags); - return 0; + return rc; } static int aspeed_sgpio_get_direction(struct gpio_chip *gc, unsigned int offset) { - int dir_status; - struct aspeed_sgpio *gpio = gpiochip_get_data(gc); - unsigned long flags; - - spin_lock_irqsave(&gpio->lock, flags); - dir_status = gpio->dir_in[GPIO_BANK(offset)] & GPIO_BIT(offset); - spin_unlock_irqrestore(&gpio->lock, flags); - - return dir_status; - + return !!aspeed_sgpio_is_input(offset); } static void irqd_to_aspeed_sgpio_data(struct irq_data *d, @@ -402,6 +444,7 @@ irq = &gpio->chip.irq; irq->chip = &aspeed_sgpio_irqchip; + irq->init_valid_mask = aspeed_sgpio_irq_init_valid_mask; irq->handler = handle_bad_irq; irq->default_type = IRQ_TYPE_NONE; irq->parent_handler = aspeed_sgpio_irq_handler; @@ -409,17 +452,15 @@ irq->parents = &gpio->irq; irq->num_parents = 1; - /* set IRQ settings and Enable Interrupt */ + /* Apply default IRQ settings */ for (i = 0; i < ARRAY_SIZE(aspeed_sgpio_banks); i++) { bank = &aspeed_sgpio_banks[i]; /* set falling or level-low irq */ iowrite32(0x00000000, bank_reg(gpio, bank, reg_irq_type0)); /* trigger type is edge */ iowrite32(0x00000000, bank_reg(gpio, bank, reg_irq_type1)); - /* dual edge trigger mode. */ - iowrite32(0xffffffff, bank_reg(gpio, bank, reg_irq_type2)); - /* enable irq */ - iowrite32(0xffffffff, bank_reg(gpio, bank, reg_irq_enable)); + /* single edge trigger */ + iowrite32(0x00000000, bank_reg(gpio, bank, reg_irq_type2)); } return 0; @@ -452,11 +493,12 @@ if (rc < 0) { dev_err(&pdev->dev, "Could not read ngpios property\n"); return -EINVAL; - } else if (nr_gpios > MAX_NR_SGPIO) { + } else if (nr_gpios > MAX_NR_HW_SGPIO) { dev_err(&pdev->dev, "Number of GPIOs exceeds the maximum of %d: %d\n", - MAX_NR_SGPIO, nr_gpios); + MAX_NR_HW_SGPIO, nr_gpios); return -EINVAL; } + gpio->n_sgpio = nr_gpios; rc = of_property_read_u32(pdev->dev.of_node, "bus-frequency", &sgpio_freq); if (rc < 0) { @@ -497,7 +539,8 @@ spin_lock_init(&gpio->lock); gpio->chip.parent = &pdev->dev; - gpio->chip.ngpio = nr_gpios; + gpio->chip.ngpio = MAX_NR_HW_SGPIO * 2; + gpio->chip.init_valid_mask = aspeed_sgpio_init_valid_mask; gpio->chip.direction_input = aspeed_sgpio_dir_in; gpio->chip.direction_output = aspeed_sgpio_dir_out; gpio->chip.get_direction = aspeed_sgpio_get_direction; @@ -509,9 +552,6 @@ gpio->chip.label = dev_name(&pdev->dev); gpio->chip.base = -1; - /* set all SGPIO pins as input (1). */ - memset(gpio->dir_in, 0xff, sizeof(gpio->dir_in)); - aspeed_sgpio_setup_irqs(gpio, pdev); rc = devm_gpiochip_add_data(&pdev->dev, &gpio->chip, gpio); --- linux-azure-5.8-5.8.0.orig/drivers/gpio/gpio-aspeed.c +++ linux-azure-5.8-5.8.0/drivers/gpio/gpio-aspeed.c @@ -1114,8 +1114,9 @@ static const struct aspeed_bank_props ast2600_bank_props[] = { /* input output */ - {5, 0xffffffff, 0x0000ffff}, /* U/V/W/X */ - {6, 0xffff0000, 0x0fff0000}, /* Y/Z */ + {4, 0xffffffff, 0x00ffffff}, /* Q/R/S/T */ + {5, 0xffffffff, 0xffffff00}, /* U/V/W/X */ + {6, 0x0000ffff, 0x0000ffff}, /* Y/Z */ { }, }; --- linux-azure-5.8-5.8.0.orig/drivers/gpio/gpio-eic-sprd.c +++ linux-azure-5.8-5.8.0/drivers/gpio/gpio-eic-sprd.c @@ -598,7 +598,7 @@ */ res = platform_get_resource(pdev, IORESOURCE_MEM, i); if (!res) - continue; + break; sprd_eic->base[i] = devm_ioremap_resource(&pdev->dev, res); if (IS_ERR(sprd_eic->base[i])) --- linux-azure-5.8-5.8.0.orig/drivers/gpio/gpio-ep93xx.c +++ linux-azure-5.8-5.8.0/drivers/gpio/gpio-ep93xx.c @@ -25,6 +25,9 @@ /* Maximum value for gpio line identifiers */ #define EP93XX_GPIO_LINE_MAX 63 +/* Number of GPIO chips in EP93XX */ +#define EP93XX_GPIO_CHIP_NUM 8 + /* Maximum value for irq capable line identifiers */ #define EP93XX_GPIO_LINE_MAX_IRQ 23 @@ -34,74 +37,75 @@ */ #define EP93XX_GPIO_F_IRQ_BASE 80 +struct ep93xx_gpio_irq_chip { + struct irq_chip ic; + u8 irq_offset; + u8 int_unmasked; + u8 int_enabled; + u8 int_type1; + u8 int_type2; + u8 int_debounce; +}; + +struct ep93xx_gpio_chip { + struct gpio_chip gc; + struct ep93xx_gpio_irq_chip *eic; +}; + struct ep93xx_gpio { void __iomem *base; - struct gpio_chip gc[8]; + struct ep93xx_gpio_chip gc[EP93XX_GPIO_CHIP_NUM]; }; -/************************************************************************* - * Interrupt handling for EP93xx on-chip GPIOs - *************************************************************************/ -static unsigned char gpio_int_unmasked[3]; -static unsigned char gpio_int_enabled[3]; -static unsigned char gpio_int_type1[3]; -static unsigned char gpio_int_type2[3]; -static unsigned char gpio_int_debounce[3]; - -/* Port ordering is: A B F */ -static const u8 int_type1_register_offset[3] = { 0x90, 0xac, 0x4c }; -static const u8 int_type2_register_offset[3] = { 0x94, 0xb0, 0x50 }; -static const u8 eoi_register_offset[3] = { 0x98, 0xb4, 0x54 }; -static const u8 int_en_register_offset[3] = { 0x9c, 0xb8, 0x58 }; -static const u8 int_debounce_register_offset[3] = { 0xa8, 0xc4, 0x64 }; +#define to_ep93xx_gpio_chip(x) container_of(x, struct ep93xx_gpio_chip, gc) -static void ep93xx_gpio_update_int_params(struct ep93xx_gpio *epg, unsigned port) +static struct ep93xx_gpio_irq_chip *to_ep93xx_gpio_irq_chip(struct gpio_chip *gc) { - BUG_ON(port > 2); - - writeb_relaxed(0, epg->base + int_en_register_offset[port]); + struct ep93xx_gpio_chip *egc = to_ep93xx_gpio_chip(gc); - writeb_relaxed(gpio_int_type2[port], - epg->base + int_type2_register_offset[port]); - - writeb_relaxed(gpio_int_type1[port], - epg->base + int_type1_register_offset[port]); - - writeb(gpio_int_unmasked[port] & gpio_int_enabled[port], - epg->base + int_en_register_offset[port]); + return egc->eic; } -static int ep93xx_gpio_port(struct gpio_chip *gc) -{ - struct ep93xx_gpio *epg = gpiochip_get_data(gc); - int port = 0; +/************************************************************************* + * Interrupt handling for EP93xx on-chip GPIOs + *************************************************************************/ +#define EP93XX_INT_TYPE1_OFFSET 0x00 +#define EP93XX_INT_TYPE2_OFFSET 0x04 +#define EP93XX_INT_EOI_OFFSET 0x08 +#define EP93XX_INT_EN_OFFSET 0x0c +#define EP93XX_INT_STATUS_OFFSET 0x10 +#define EP93XX_INT_RAW_STATUS_OFFSET 0x14 +#define EP93XX_INT_DEBOUNCE_OFFSET 0x18 + +static void ep93xx_gpio_update_int_params(struct ep93xx_gpio *epg, + struct ep93xx_gpio_irq_chip *eic) +{ + writeb_relaxed(0, epg->base + eic->irq_offset + EP93XX_INT_EN_OFFSET); - while (port < ARRAY_SIZE(epg->gc) && gc != &epg->gc[port]) - port++; + writeb_relaxed(eic->int_type2, + epg->base + eic->irq_offset + EP93XX_INT_TYPE2_OFFSET); - /* This should not happen but is there as a last safeguard */ - if (port == ARRAY_SIZE(epg->gc)) { - pr_crit("can't find the GPIO port\n"); - return 0; - } + writeb_relaxed(eic->int_type1, + epg->base + eic->irq_offset + EP93XX_INT_TYPE1_OFFSET); - return port; + writeb_relaxed(eic->int_unmasked & eic->int_enabled, + epg->base + eic->irq_offset + EP93XX_INT_EN_OFFSET); } static void ep93xx_gpio_int_debounce(struct gpio_chip *gc, unsigned int offset, bool enable) { struct ep93xx_gpio *epg = gpiochip_get_data(gc); - int port = ep93xx_gpio_port(gc); + struct ep93xx_gpio_irq_chip *eic = to_ep93xx_gpio_irq_chip(gc); int port_mask = BIT(offset); if (enable) - gpio_int_debounce[port] |= port_mask; + eic->int_debounce |= port_mask; else - gpio_int_debounce[port] &= ~port_mask; + eic->int_debounce &= ~port_mask; - writeb(gpio_int_debounce[port], - epg->base + int_debounce_register_offset[port]); + writeb(eic->int_debounce, + epg->base + eic->irq_offset + EP93XX_INT_DEBOUNCE_OFFSET); } static void ep93xx_gpio_ab_irq_handler(struct irq_desc *desc) @@ -122,12 +126,12 @@ */ stat = readb(epg->base + EP93XX_GPIO_A_INT_STATUS); for_each_set_bit(offset, &stat, 8) - generic_handle_irq(irq_find_mapping(epg->gc[0].irq.domain, + generic_handle_irq(irq_find_mapping(epg->gc[0].gc.irq.domain, offset)); stat = readb(epg->base + EP93XX_GPIO_B_INT_STATUS); for_each_set_bit(offset, &stat, 8) - generic_handle_irq(irq_find_mapping(epg->gc[1].irq.domain, + generic_handle_irq(irq_find_mapping(epg->gc[1].gc.irq.domain, offset)); chained_irq_exit(irqchip, desc); @@ -153,52 +157,52 @@ static void ep93xx_gpio_irq_ack(struct irq_data *d) { struct gpio_chip *gc = irq_data_get_irq_chip_data(d); + struct ep93xx_gpio_irq_chip *eic = to_ep93xx_gpio_irq_chip(gc); struct ep93xx_gpio *epg = gpiochip_get_data(gc); - int port = ep93xx_gpio_port(gc); int port_mask = BIT(d->irq & 7); if (irqd_get_trigger_type(d) == IRQ_TYPE_EDGE_BOTH) { - gpio_int_type2[port] ^= port_mask; /* switch edge direction */ - ep93xx_gpio_update_int_params(epg, port); + eic->int_type2 ^= port_mask; /* switch edge direction */ + ep93xx_gpio_update_int_params(epg, eic); } - writeb(port_mask, epg->base + eoi_register_offset[port]); + writeb(port_mask, epg->base + eic->irq_offset + EP93XX_INT_EOI_OFFSET); } static void ep93xx_gpio_irq_mask_ack(struct irq_data *d) { struct gpio_chip *gc = irq_data_get_irq_chip_data(d); + struct ep93xx_gpio_irq_chip *eic = to_ep93xx_gpio_irq_chip(gc); struct ep93xx_gpio *epg = gpiochip_get_data(gc); - int port = ep93xx_gpio_port(gc); int port_mask = BIT(d->irq & 7); if (irqd_get_trigger_type(d) == IRQ_TYPE_EDGE_BOTH) - gpio_int_type2[port] ^= port_mask; /* switch edge direction */ + eic->int_type2 ^= port_mask; /* switch edge direction */ - gpio_int_unmasked[port] &= ~port_mask; - ep93xx_gpio_update_int_params(epg, port); + eic->int_unmasked &= ~port_mask; + ep93xx_gpio_update_int_params(epg, eic); - writeb(port_mask, epg->base + eoi_register_offset[port]); + writeb(port_mask, epg->base + eic->irq_offset + EP93XX_INT_EOI_OFFSET); } static void ep93xx_gpio_irq_mask(struct irq_data *d) { struct gpio_chip *gc = irq_data_get_irq_chip_data(d); + struct ep93xx_gpio_irq_chip *eic = to_ep93xx_gpio_irq_chip(gc); struct ep93xx_gpio *epg = gpiochip_get_data(gc); - int port = ep93xx_gpio_port(gc); - gpio_int_unmasked[port] &= ~BIT(d->irq & 7); - ep93xx_gpio_update_int_params(epg, port); + eic->int_unmasked &= ~BIT(d->irq & 7); + ep93xx_gpio_update_int_params(epg, eic); } static void ep93xx_gpio_irq_unmask(struct irq_data *d) { struct gpio_chip *gc = irq_data_get_irq_chip_data(d); + struct ep93xx_gpio_irq_chip *eic = to_ep93xx_gpio_irq_chip(gc); struct ep93xx_gpio *epg = gpiochip_get_data(gc); - int port = ep93xx_gpio_port(gc); - gpio_int_unmasked[port] |= BIT(d->irq & 7); - ep93xx_gpio_update_int_params(epg, port); + eic->int_unmasked |= BIT(d->irq & 7); + ep93xx_gpio_update_int_params(epg, eic); } /* @@ -209,8 +213,8 @@ static int ep93xx_gpio_irq_type(struct irq_data *d, unsigned int type) { struct gpio_chip *gc = irq_data_get_irq_chip_data(d); + struct ep93xx_gpio_irq_chip *eic = to_ep93xx_gpio_irq_chip(gc); struct ep93xx_gpio *epg = gpiochip_get_data(gc); - int port = ep93xx_gpio_port(gc); int offset = d->irq & 7; int port_mask = BIT(offset); irq_flow_handler_t handler; @@ -219,32 +223,32 @@ switch (type) { case IRQ_TYPE_EDGE_RISING: - gpio_int_type1[port] |= port_mask; - gpio_int_type2[port] |= port_mask; + eic->int_type1 |= port_mask; + eic->int_type2 |= port_mask; handler = handle_edge_irq; break; case IRQ_TYPE_EDGE_FALLING: - gpio_int_type1[port] |= port_mask; - gpio_int_type2[port] &= ~port_mask; + eic->int_type1 |= port_mask; + eic->int_type2 &= ~port_mask; handler = handle_edge_irq; break; case IRQ_TYPE_LEVEL_HIGH: - gpio_int_type1[port] &= ~port_mask; - gpio_int_type2[port] |= port_mask; + eic->int_type1 &= ~port_mask; + eic->int_type2 |= port_mask; handler = handle_level_irq; break; case IRQ_TYPE_LEVEL_LOW: - gpio_int_type1[port] &= ~port_mask; - gpio_int_type2[port] &= ~port_mask; + eic->int_type1 &= ~port_mask; + eic->int_type2 &= ~port_mask; handler = handle_level_irq; break; case IRQ_TYPE_EDGE_BOTH: - gpio_int_type1[port] |= port_mask; + eic->int_type1 |= port_mask; /* set initial polarity based on current input level */ if (gc->get(gc, offset)) - gpio_int_type2[port] &= ~port_mask; /* falling */ + eic->int_type2 &= ~port_mask; /* falling */ else - gpio_int_type2[port] |= port_mask; /* rising */ + eic->int_type2 |= port_mask; /* rising */ handler = handle_edge_irq; break; default: @@ -253,22 +257,13 @@ irq_set_handler_locked(d, handler); - gpio_int_enabled[port] |= port_mask; + eic->int_enabled |= port_mask; - ep93xx_gpio_update_int_params(epg, port); + ep93xx_gpio_update_int_params(epg, eic); return 0; } -static struct irq_chip ep93xx_gpio_irq_chip = { - .name = "GPIO", - .irq_ack = ep93xx_gpio_irq_ack, - .irq_mask_ack = ep93xx_gpio_irq_mask_ack, - .irq_mask = ep93xx_gpio_irq_mask, - .irq_unmask = ep93xx_gpio_irq_unmask, - .irq_set_type = ep93xx_gpio_irq_type, -}; - /************************************************************************* * gpiolib interface for EP93xx on-chip GPIOs *************************************************************************/ @@ -276,17 +271,19 @@ const char *label; int data; int dir; + int irq; int base; bool has_irq; bool has_hierarchical_irq; unsigned int irq_base; }; -#define EP93XX_GPIO_BANK(_label, _data, _dir, _base, _has_irq, _has_hier, _irq_base) \ +#define EP93XX_GPIO_BANK(_label, _data, _dir, _irq, _base, _has_irq, _has_hier, _irq_base) \ { \ .label = _label, \ .data = _data, \ .dir = _dir, \ + .irq = _irq, \ .base = _base, \ .has_irq = _has_irq, \ .has_hierarchical_irq = _has_hier, \ @@ -295,16 +292,16 @@ static struct ep93xx_gpio_bank ep93xx_gpio_banks[] = { /* Bank A has 8 IRQs */ - EP93XX_GPIO_BANK("A", 0x00, 0x10, 0, true, false, 64), + EP93XX_GPIO_BANK("A", 0x00, 0x10, 0x90, 0, true, false, 64), /* Bank B has 8 IRQs */ - EP93XX_GPIO_BANK("B", 0x04, 0x14, 8, true, false, 72), - EP93XX_GPIO_BANK("C", 0x08, 0x18, 40, false, false, 0), - EP93XX_GPIO_BANK("D", 0x0c, 0x1c, 24, false, false, 0), - EP93XX_GPIO_BANK("E", 0x20, 0x24, 32, false, false, 0), + EP93XX_GPIO_BANK("B", 0x04, 0x14, 0xac, 8, true, false, 72), + EP93XX_GPIO_BANK("C", 0x08, 0x18, 0x00, 40, false, false, 0), + EP93XX_GPIO_BANK("D", 0x0c, 0x1c, 0x00, 24, false, false, 0), + EP93XX_GPIO_BANK("E", 0x20, 0x24, 0x00, 32, false, false, 0), /* Bank F has 8 IRQs */ - EP93XX_GPIO_BANK("F", 0x30, 0x34, 16, false, true, 0), - EP93XX_GPIO_BANK("G", 0x38, 0x3c, 48, false, false, 0), - EP93XX_GPIO_BANK("H", 0x40, 0x44, 56, false, false, 0), + EP93XX_GPIO_BANK("F", 0x30, 0x34, 0x4c, 16, false, true, 0), + EP93XX_GPIO_BANK("G", 0x38, 0x3c, 0x00, 48, false, false, 0), + EP93XX_GPIO_BANK("H", 0x40, 0x44, 0x00, 56, false, false, 0), }; static int ep93xx_gpio_set_config(struct gpio_chip *gc, unsigned offset, @@ -326,13 +323,23 @@ return EP93XX_GPIO_F_IRQ_BASE + offset; } -static int ep93xx_gpio_add_bank(struct gpio_chip *gc, +static void ep93xx_init_irq_chip(struct device *dev, struct irq_chip *ic) +{ + ic->irq_ack = ep93xx_gpio_irq_ack; + ic->irq_mask_ack = ep93xx_gpio_irq_mask_ack; + ic->irq_mask = ep93xx_gpio_irq_mask; + ic->irq_unmask = ep93xx_gpio_irq_unmask; + ic->irq_set_type = ep93xx_gpio_irq_type; +} + +static int ep93xx_gpio_add_bank(struct ep93xx_gpio_chip *egc, struct platform_device *pdev, struct ep93xx_gpio *epg, struct ep93xx_gpio_bank *bank) { void __iomem *data = epg->base + bank->data; void __iomem *dir = epg->base + bank->dir; + struct gpio_chip *gc = &egc->gc; struct device *dev = &pdev->dev; struct gpio_irq_chip *girq; int err; @@ -346,8 +353,21 @@ girq = &gc->irq; if (bank->has_irq || bank->has_hierarchical_irq) { + struct irq_chip *ic; + gc->set_config = ep93xx_gpio_set_config; - girq->chip = &ep93xx_gpio_irq_chip; + egc->eic = devm_kcalloc(dev, 1, + sizeof(*egc->eic), + GFP_KERNEL); + if (!egc->eic) + return -ENOMEM; + egc->eic->irq_offset = bank->irq; + ic = &egc->eic->ic; + ic->name = devm_kasprintf(dev, GFP_KERNEL, "gpio-irq-%s", bank->label); + if (!ic->name) + return -ENOMEM; + ep93xx_init_irq_chip(dev, ic); + girq->chip = ic; } if (bank->has_irq) { @@ -389,7 +409,7 @@ gpio_irq = EP93XX_GPIO_F_IRQ_BASE + i; irq_set_chip_data(gpio_irq, &epg->gc[5]); irq_set_chip_and_handler(gpio_irq, - &ep93xx_gpio_irq_chip, + girq->chip, handle_level_irq); irq_clear_status_flags(gpio_irq, IRQ_NOREQUEST); } @@ -415,7 +435,7 @@ return PTR_ERR(epg->base); for (i = 0; i < ARRAY_SIZE(ep93xx_gpio_banks); i++) { - struct gpio_chip *gc = &epg->gc[i]; + struct ep93xx_gpio_chip *gc = &epg->gc[i]; struct ep93xx_gpio_bank *bank = &ep93xx_gpio_banks[i]; if (ep93xx_gpio_add_bank(gc, pdev, epg, bank)) --- linux-azure-5.8-5.8.0.orig/drivers/gpio/gpio-max77620.c +++ linux-azure-5.8-5.8.0/drivers/gpio/gpio-max77620.c @@ -305,8 +305,9 @@ gpiochip_irqchip_add_nested(&mgpio->gpio_chip, &max77620_gpio_irqchip, 0, handle_edge_irq, IRQ_TYPE_NONE); - ret = request_threaded_irq(gpio_irq, NULL, max77620_gpio_irqhandler, - IRQF_ONESHOT, "max77620-gpio", mgpio); + ret = devm_request_threaded_irq(&pdev->dev, gpio_irq, NULL, + max77620_gpio_irqhandler, IRQF_ONESHOT, + "max77620-gpio", mgpio); if (ret < 0) { dev_err(&pdev->dev, "failed to request IRQ: %d\n", ret); return ret; --- linux-azure-5.8-5.8.0.orig/drivers/gpio/gpio-mockup.c +++ linux-azure-5.8-5.8.0/drivers/gpio/gpio-mockup.c @@ -552,6 +552,7 @@ err = platform_driver_register(&gpio_mockup_driver); if (err) { gpio_mockup_err("error registering platform driver\n"); + debugfs_remove_recursive(gpio_mockup_dbg_dir); return err; } @@ -582,6 +583,7 @@ gpio_mockup_err("error registering device"); platform_driver_unregister(&gpio_mockup_driver); gpio_mockup_unregister_pdevs(); + debugfs_remove_recursive(gpio_mockup_dbg_dir); return PTR_ERR(pdev); } --- linux-azure-5.8-5.8.0.orig/drivers/gpio/gpio-mvebu.c +++ linux-azure-5.8-5.8.0/drivers/gpio/gpio-mvebu.c @@ -660,9 +660,8 @@ spin_lock_irqsave(&mvpwm->lock, flags); - val = (unsigned long long) - readl_relaxed(mvebu_pwmreg_blink_on_duration(mvpwm)); - val *= NSEC_PER_SEC; + u = readl_relaxed(mvebu_pwmreg_blink_on_duration(mvpwm)); + val = (unsigned long long) u * NSEC_PER_SEC; do_div(val, mvpwm->clk_rate); if (val > UINT_MAX) state->duty_cycle = UINT_MAX; @@ -671,21 +670,17 @@ else state->duty_cycle = 1; - val = (unsigned long long) - readl_relaxed(mvebu_pwmreg_blink_off_duration(mvpwm)); + val = (unsigned long long) u; /* on duration */ + /* period = on + off duration */ + val += readl_relaxed(mvebu_pwmreg_blink_off_duration(mvpwm)); val *= NSEC_PER_SEC; do_div(val, mvpwm->clk_rate); - if (val < state->duty_cycle) { + if (val > UINT_MAX) + state->period = UINT_MAX; + else if (val) + state->period = val; + else state->period = 1; - } else { - val -= state->duty_cycle; - if (val > UINT_MAX) - state->period = UINT_MAX; - else if (val) - state->period = val; - else - state->period = 1; - } regmap_read(mvchip->regs, GPIO_BLINK_EN_OFF + mvchip->offset, &u); if (u) @@ -1201,6 +1196,13 @@ devm_gpiochip_add_data(&pdev->dev, &mvchip->chip, mvchip); + /* Some MVEBU SoCs have simple PWM support for GPIO lines */ + if (IS_ENABLED(CONFIG_PWM)) { + err = mvebu_pwm_probe(pdev, mvchip, id); + if (err) + return err; + } + /* Some gpio controllers do not provide irq support */ if (!have_irqs) return 0; @@ -1210,7 +1212,8 @@ if (!mvchip->domain) { dev_err(&pdev->dev, "couldn't allocate irq domain %s (DT).\n", mvchip->chip.label); - return -ENODEV; + err = -ENODEV; + goto err_pwm; } err = irq_alloc_domain_generic_chips( @@ -1258,14 +1261,12 @@ mvchip); } - /* Some MVEBU SoCs have simple PWM support for GPIO lines */ - if (IS_ENABLED(CONFIG_PWM)) - return mvebu_pwm_probe(pdev, mvchip, id); - return 0; err_domain: irq_domain_remove(mvchip->domain); +err_pwm: + pwmchip_remove(&mvchip->mvpwm->chip); return err; } --- linux-azure-5.8-5.8.0.orig/drivers/gpio/gpio-omap.c +++ linux-azure-5.8-5.8.0/drivers/gpio/gpio-omap.c @@ -1102,13 +1102,23 @@ { struct device *dev = bank->chip.parent; void __iomem *base = bank->base; - u32 nowake; + u32 mask, nowake; bank->saved_datain = readl_relaxed(base + bank->regs->datain); if (!bank->enabled_non_wakeup_gpios) goto update_gpio_context_count; + /* Check for pending EDGE_FALLING, ignore EDGE_BOTH */ + mask = bank->enabled_non_wakeup_gpios & bank->context.fallingdetect; + mask &= ~bank->context.risingdetect; + bank->saved_datain |= mask; + + /* Check for pending EDGE_RISING, ignore EDGE_BOTH */ + mask = bank->enabled_non_wakeup_gpios & bank->context.risingdetect; + mask &= ~bank->context.fallingdetect; + bank->saved_datain &= ~mask; + if (!may_lose_context) goto update_gpio_context_count; --- linux-azure-5.8-5.8.0.orig/drivers/gpio/gpio-pca953x.c +++ linux-azure-5.8-5.8.0/drivers/gpio/gpio-pca953x.c @@ -813,7 +813,7 @@ { struct pca953x_chip *chip = devid; struct gpio_chip *gc = &chip->gpio_chip; - DECLARE_BITMAP(pending, MAX_LINE); + DECLARE_BITMAP(pending, MAX_LINE) = {}; int level; bool ret; @@ -938,6 +938,7 @@ static int device_pca957x_init(struct pca953x_chip *chip, u32 invert) { DECLARE_BITMAP(val, MAX_LINE); + unsigned int i; int ret; ret = device_pca95xx_init(chip, invert); @@ -945,7 +946,9 @@ goto out; /* To enable register 6, 7 to control pull up and pull down */ - memset(val, 0x02, NBANK(chip)); + for (i = 0; i < NBANK(chip); i++) + bitmap_set_value8(val, 0x02, i * BANK_SZ); + ret = pca953x_write_regs(chip, PCA957X_BKEN, val); if (ret) goto out; --- linux-azure-5.8-5.8.0.orig/drivers/gpio/gpio-pcf857x.c +++ linux-azure-5.8-5.8.0/drivers/gpio/gpio-pcf857x.c @@ -332,7 +332,7 @@ * reset state. Otherwise it flags pins to be driven low. */ gpio->out = ~n_latch; - gpio->status = gpio->out; + gpio->status = gpio->read(gpio->client); status = devm_gpiochip_add_data(&client->dev, &gpio->chip, gpio); if (status < 0) --- linux-azure-5.8-5.8.0.orig/drivers/gpio/gpio-pcie-idio-24.c +++ linux-azure-5.8-5.8.0/drivers/gpio/gpio-pcie-idio-24.c @@ -28,6 +28,47 @@ #include #include +/* + * PLX PEX8311 PCI LCS_INTCSR Interrupt Control/Status + * + * Bit: Description + * 0: Enable Interrupt Sources (Bit 0) + * 1: Enable Interrupt Sources (Bit 1) + * 2: Generate Internal PCI Bus Internal SERR# Interrupt + * 3: Mailbox Interrupt Enable + * 4: Power Management Interrupt Enable + * 5: Power Management Interrupt + * 6: Slave Read Local Data Parity Check Error Enable + * 7: Slave Read Local Data Parity Check Error Status + * 8: Internal PCI Wire Interrupt Enable + * 9: PCI Express Doorbell Interrupt Enable + * 10: PCI Abort Interrupt Enable + * 11: Local Interrupt Input Enable + * 12: Retry Abort Enable + * 13: PCI Express Doorbell Interrupt Active + * 14: PCI Abort Interrupt Active + * 15: Local Interrupt Input Active + * 16: Local Interrupt Output Enable + * 17: Local Doorbell Interrupt Enable + * 18: DMA Channel 0 Interrupt Enable + * 19: DMA Channel 1 Interrupt Enable + * 20: Local Doorbell Interrupt Active + * 21: DMA Channel 0 Interrupt Active + * 22: DMA Channel 1 Interrupt Active + * 23: Built-In Self-Test (BIST) Interrupt Active + * 24: Direct Master was the Bus Master during a Master or Target Abort + * 25: DMA Channel 0 was the Bus Master during a Master or Target Abort + * 26: DMA Channel 1 was the Bus Master during a Master or Target Abort + * 27: Target Abort after internal 256 consecutive Master Retrys + * 28: PCI Bus wrote data to LCS_MBOX0 + * 29: PCI Bus wrote data to LCS_MBOX1 + * 30: PCI Bus wrote data to LCS_MBOX2 + * 31: PCI Bus wrote data to LCS_MBOX3 + */ +#define PLX_PEX8311_PCI_LCS_INTCSR 0x68 +#define INTCSR_INTERNAL_PCI_WIRE BIT(8) +#define INTCSR_LOCAL_INPUT BIT(11) + /** * struct idio_24_gpio_reg - GPIO device registers structure * @out0_7: Read: FET Outputs 0-7 @@ -92,6 +133,7 @@ struct idio_24_gpio { struct gpio_chip chip; raw_spinlock_t lock; + __u8 __iomem *plx; struct idio_24_gpio_reg __iomem *reg; unsigned long irq_mask; }; @@ -334,13 +376,13 @@ unsigned long flags; const unsigned long bit_offset = irqd_to_hwirq(data) - 24; unsigned char new_irq_mask; - const unsigned long bank_offset = bit_offset/8 * 8; + const unsigned long bank_offset = bit_offset / 8; unsigned char cos_enable_state; raw_spin_lock_irqsave(&idio24gpio->lock, flags); - idio24gpio->irq_mask &= BIT(bit_offset); - new_irq_mask = idio24gpio->irq_mask >> bank_offset; + idio24gpio->irq_mask &= ~BIT(bit_offset); + new_irq_mask = idio24gpio->irq_mask >> bank_offset * 8; if (!new_irq_mask) { cos_enable_state = ioread8(&idio24gpio->reg->cos_enable); @@ -363,12 +405,12 @@ unsigned long flags; unsigned char prev_irq_mask; const unsigned long bit_offset = irqd_to_hwirq(data) - 24; - const unsigned long bank_offset = bit_offset/8 * 8; + const unsigned long bank_offset = bit_offset / 8; unsigned char cos_enable_state; raw_spin_lock_irqsave(&idio24gpio->lock, flags); - prev_irq_mask = idio24gpio->irq_mask >> bank_offset; + prev_irq_mask = idio24gpio->irq_mask >> bank_offset * 8; idio24gpio->irq_mask |= BIT(bit_offset); if (!prev_irq_mask) { @@ -455,6 +497,7 @@ struct device *const dev = &pdev->dev; struct idio_24_gpio *idio24gpio; int err; + const size_t pci_plx_bar_index = 1; const size_t pci_bar_index = 2; const char *const name = pci_name(pdev); @@ -468,12 +511,13 @@ return err; } - err = pcim_iomap_regions(pdev, BIT(pci_bar_index), name); + err = pcim_iomap_regions(pdev, BIT(pci_plx_bar_index) | BIT(pci_bar_index), name); if (err) { dev_err(dev, "Unable to map PCI I/O addresses (%d)\n", err); return err; } + idio24gpio->plx = pcim_iomap_table(pdev)[pci_plx_bar_index]; idio24gpio->reg = pcim_iomap_table(pdev)[pci_bar_index]; idio24gpio->chip.label = name; @@ -494,6 +538,12 @@ /* Software board reset */ iowrite8(0, &idio24gpio->reg->soft_reset); + /* + * enable PLX PEX8311 internal PCI wire interrupt and local interrupt + * input + */ + iowrite8((INTCSR_INTERNAL_PCI_WIRE | INTCSR_LOCAL_INPUT) >> 8, + idio24gpio->plx + PLX_PEX8311_PCI_LCS_INTCSR + 1); err = devm_gpiochip_add_data(dev, &idio24gpio->chip, idio24gpio); if (err) { --- linux-azure-5.8-5.8.0.orig/drivers/gpio/gpio-sifive.c +++ linux-azure-5.8-5.8.0/drivers/gpio/gpio-sifive.c @@ -183,7 +183,7 @@ return PTR_ERR(chip->regs); ngpio = of_irq_count(node); - if (ngpio >= SIFIVE_GPIO_MAX) { + if (ngpio > SIFIVE_GPIO_MAX) { dev_err(dev, "Too many GPIO interrupts (max=%d)\n", SIFIVE_GPIO_MAX); return -ENXIO; --- linux-azure-5.8-5.8.0.orig/drivers/gpio/gpio-siox.c +++ linux-azure-5.8-5.8.0/drivers/gpio/gpio-siox.c @@ -245,6 +245,7 @@ girq->chip = &ddata->ichip; girq->default_type = IRQ_TYPE_NONE; girq->handler = handle_level_irq; + girq->threaded = true; ret = devm_gpiochip_add_data(dev, &ddata->gchip, NULL); if (ret) --- linux-azure-5.8-5.8.0.orig/drivers/gpio/gpio-sprd.c +++ linux-azure-5.8-5.8.0/drivers/gpio/gpio-sprd.c @@ -149,17 +149,20 @@ sprd_gpio_update(chip, offset, SPRD_GPIO_IS, 0); sprd_gpio_update(chip, offset, SPRD_GPIO_IBE, 0); sprd_gpio_update(chip, offset, SPRD_GPIO_IEV, 1); + sprd_gpio_update(chip, offset, SPRD_GPIO_IC, 1); irq_set_handler_locked(data, handle_edge_irq); break; case IRQ_TYPE_EDGE_FALLING: sprd_gpio_update(chip, offset, SPRD_GPIO_IS, 0); sprd_gpio_update(chip, offset, SPRD_GPIO_IBE, 0); sprd_gpio_update(chip, offset, SPRD_GPIO_IEV, 0); + sprd_gpio_update(chip, offset, SPRD_GPIO_IC, 1); irq_set_handler_locked(data, handle_edge_irq); break; case IRQ_TYPE_EDGE_BOTH: sprd_gpio_update(chip, offset, SPRD_GPIO_IS, 0); sprd_gpio_update(chip, offset, SPRD_GPIO_IBE, 1); + sprd_gpio_update(chip, offset, SPRD_GPIO_IC, 1); irq_set_handler_locked(data, handle_edge_irq); break; case IRQ_TYPE_LEVEL_HIGH: --- linux-azure-5.8-5.8.0.orig/drivers/gpio/gpio-tc3589x.c +++ linux-azure-5.8-5.8.0/drivers/gpio/gpio-tc3589x.c @@ -212,7 +212,7 @@ continue; tc3589x_gpio->oldregs[i][j] = new; - tc3589x_reg_write(tc3589x, regmap[i] + j * 8, new); + tc3589x_reg_write(tc3589x, regmap[i] + j, new); } } --- linux-azure-5.8-5.8.0.orig/drivers/gpio/gpio-zynq.c +++ linux-azure-5.8-5.8.0/drivers/gpio/gpio-zynq.c @@ -559,7 +559,7 @@ struct gpio_chip *chip = irq_data_get_irq_chip_data(d); int ret; - ret = pm_runtime_get_sync(chip->parent); + ret = pm_runtime_resume_and_get(chip->parent); if (ret < 0) return ret; @@ -887,7 +887,7 @@ pm_runtime_set_active(&pdev->dev); pm_runtime_enable(&pdev->dev); - ret = pm_runtime_get_sync(&pdev->dev); + ret = pm_runtime_resume_and_get(&pdev->dev); if (ret < 0) goto err_pm_dis; --- linux-azure-5.8-5.8.0.orig/drivers/gpio/gpiolib-devres.c +++ linux-azure-5.8-5.8.0/drivers/gpio/gpiolib-devres.c @@ -487,10 +487,12 @@ } /** - * devm_gpiochip_add_data() - Resource managed gpiochip_add_data() + * devm_gpiochip_add_data_with_key() - Resource managed gpiochip_add_data_with_key() * @dev: pointer to the device that gpio_chip belongs to. * @gc: the GPIO chip to register * @data: driver-private data associated with this chip + * @lock_key: lockdep class for IRQ lock + * @request_key: lockdep class for IRQ request * * Context: potentially before irqs will work * @@ -501,8 +503,9 @@ * gc->base is invalid or already associated with a different chip. * Otherwise it returns zero as a success code. */ -int devm_gpiochip_add_data(struct device *dev, struct gpio_chip *gc, - void *data) +int devm_gpiochip_add_data_with_key(struct device *dev, struct gpio_chip *gc, void *data, + struct lock_class_key *lock_key, + struct lock_class_key *request_key) { struct gpio_chip **ptr; int ret; @@ -512,7 +515,7 @@ if (!ptr) return -ENOMEM; - ret = gpiochip_add_data(gc, data); + ret = gpiochip_add_data_with_key(gc, data, lock_key, request_key); if (ret < 0) { devres_free(ptr); return ret; @@ -523,4 +526,4 @@ return 0; } -EXPORT_SYMBOL_GPL(devm_gpiochip_add_data); +EXPORT_SYMBOL_GPL(devm_gpiochip_add_data_with_key); --- linux-azure-5.8-5.8.0.orig/drivers/gpio/gpiolib.c +++ linux-azure-5.8-5.8.0/drivers/gpio/gpiolib.c @@ -836,6 +836,21 @@ return events; } +static ssize_t lineevent_get_size(void) +{ +#if defined(CONFIG_X86_64) && !defined(CONFIG_UML) + /* i386 has no padding after 'id' */ + if (in_ia32_syscall()) { + struct compat_gpioeevent_data { + compat_u64 timestamp; + u32 id; + }; + + return sizeof(struct compat_gpioeevent_data); + } +#endif + return sizeof(struct gpioevent_data); +} static ssize_t lineevent_read(struct file *filep, char __user *buf, @@ -845,9 +860,20 @@ struct lineevent_state *le = filep->private_data; struct gpioevent_data ge; ssize_t bytes_read = 0; + ssize_t ge_size; int ret; - if (count < sizeof(ge)) + /* + * When compatible system call is being used the struct gpioevent_data, + * in case of at least ia32, has different size due to the alignment + * differences. Because we have first member 64 bits followed by one of + * 32 bits there is no gap between them. The only difference is the + * padding at the end of the data structure. Hence, we calculate the + * actual sizeof() and pass this as an argument to copy_to_user() to + * drop unneeded bytes from the output. + */ + ge_size = lineevent_get_size(); + if (count < ge_size) return -EINVAL; do { @@ -883,10 +909,10 @@ break; } - if (copy_to_user(buf + bytes_read, &ge, sizeof(ge))) + if (copy_to_user(buf + bytes_read, &ge, ge_size)) return -EFAULT; - bytes_read += sizeof(ge); - } while (count >= bytes_read + sizeof(ge)); + bytes_read += ge_size; + } while (count >= bytes_read + ge_size); return bytes_read; } @@ -1652,7 +1678,11 @@ ret = gdev->id; goto err_free_gdev; } - dev_set_name(&gdev->dev, GPIOCHIP_NAME "%d", gdev->id); + + ret = dev_set_name(&gdev->dev, GPIOCHIP_NAME "%d", gdev->id); + if (ret) + goto err_free_ida; + device_initialize(&gdev->dev); dev_set_drvdata(&gdev->dev, gdev); if (gc->parent && gc->parent->driver) @@ -1666,7 +1696,7 @@ gdev->descs = kcalloc(gc->ngpio, sizeof(gdev->descs[0]), GFP_KERNEL); if (!gdev->descs) { ret = -ENOMEM; - goto err_free_ida; + goto err_free_dev_name; } if (gc->ngpio == 0) { @@ -1814,6 +1844,8 @@ kfree_const(gdev->label); err_free_descs: kfree(gdev->descs); +err_free_dev_name: + kfree(dev_name(&gdev->dev)); err_free_ida: ida_simple_remove(&gpio_ida, gdev->id); err_free_gdev: @@ -2524,7 +2556,8 @@ if (WARN_ON(gc->irq.irq_enable)) return; /* Check if the irqchip already has this hook... */ - if (irqchip->irq_enable == gpiochip_irq_enable) { + if (irqchip->irq_enable == gpiochip_irq_enable || + irqchip->irq_mask == gpiochip_irq_mask) { /* * ...and if so, give a gentle warning that this is bad * practice. --- linux-azure-5.8-5.8.0.orig/drivers/gpu/drm/Kconfig +++ linux-azure-5.8-5.8.0/drivers/gpu/drm/Kconfig @@ -15,6 +15,9 @@ select I2C_ALGOBIT select DMA_SHARED_BUFFER select SYNC_FILE +# gallium uses SYS_kcmp for os_same_file_description() to de-duplicate +# device and dmabuf fd. Let's make sure that is available for our userspace. + select KCMP help Kernel-level support for the Direct Rendering Infrastructure (DRI) introduced in XFree86 4.0. If you say Y here, you need to select --- linux-azure-5.8-5.8.0.orig/drivers/gpu/drm/amd/amdgpu/amdgpu_amdkfd_gfx_v9.c +++ linux-azure-5.8-5.8.0/drivers/gpu/drm/amd/amdgpu/amdgpu_amdkfd_gfx_v9.c @@ -195,19 +195,32 @@ unsigned int engine_id, unsigned int queue_id) { - uint32_t sdma_engine_reg_base[2] = { - SOC15_REG_OFFSET(SDMA0, 0, - mmSDMA0_RLC0_RB_CNTL) - mmSDMA0_RLC0_RB_CNTL, - SOC15_REG_OFFSET(SDMA1, 0, - mmSDMA1_RLC0_RB_CNTL) - mmSDMA1_RLC0_RB_CNTL - }; - uint32_t retval = sdma_engine_reg_base[engine_id] + uint32_t sdma_engine_reg_base = 0; + uint32_t sdma_rlc_reg_offset; + + switch (engine_id) { + default: + dev_warn(adev->dev, + "Invalid sdma engine id (%d), using engine id 0\n", + engine_id); + fallthrough; + case 0: + sdma_engine_reg_base = SOC15_REG_OFFSET(SDMA0, 0, + mmSDMA0_RLC0_RB_CNTL) - mmSDMA0_RLC0_RB_CNTL; + break; + case 1: + sdma_engine_reg_base = SOC15_REG_OFFSET(SDMA1, 0, + mmSDMA1_RLC0_RB_CNTL) - mmSDMA0_RLC0_RB_CNTL; + break; + } + + sdma_rlc_reg_offset = sdma_engine_reg_base + queue_id * (mmSDMA0_RLC1_RB_CNTL - mmSDMA0_RLC0_RB_CNTL); pr_debug("RLC register offset for SDMA%d RLC%d: 0x%x\n", engine_id, - queue_id, retval); + queue_id, sdma_rlc_reg_offset); - return retval; + return sdma_rlc_reg_offset; } static inline struct v9_mqd *get_mqd(void *mqd) --- linux-azure-5.8-5.8.0.orig/drivers/gpu/drm/amd/amdgpu/amdgpu_connectors.c +++ linux-azure-5.8-5.8.0/drivers/gpu/drm/amd/amdgpu/amdgpu_connectors.c @@ -716,8 +716,10 @@ if (!drm_kms_helper_is_poll_worker()) { r = pm_runtime_get_sync(connector->dev->dev); - if (r < 0) + if (r < 0) { + pm_runtime_put_autosuspend(connector->dev->dev); return connector_status_disconnected; + } } if (encoder) { @@ -854,8 +856,10 @@ if (!drm_kms_helper_is_poll_worker()) { r = pm_runtime_get_sync(connector->dev->dev); - if (r < 0) + if (r < 0) { + pm_runtime_put_autosuspend(connector->dev->dev); return connector_status_disconnected; + } } encoder = amdgpu_connector_best_single_encoder(connector); @@ -977,8 +981,10 @@ if (!drm_kms_helper_is_poll_worker()) { r = pm_runtime_get_sync(connector->dev->dev); - if (r < 0) + if (r < 0) { + pm_runtime_put_autosuspend(connector->dev->dev); return connector_status_disconnected; + } } if (!force && amdgpu_connector_check_hpd_status_unchanged(connector)) { @@ -1328,8 +1334,10 @@ if (!drm_kms_helper_is_poll_worker()) { r = pm_runtime_get_sync(connector->dev->dev); - if (r < 0) + if (r < 0) { + pm_runtime_put_autosuspend(connector->dev->dev); return connector_status_disconnected; + } } if (!force && amdgpu_connector_check_hpd_status_unchanged(connector)) { --- linux-azure-5.8-5.8.0.orig/drivers/gpu/drm/amd/amdgpu/amdgpu_ctx.c +++ linux-azure-5.8-5.8.0/drivers/gpu/drm/amd/amdgpu/amdgpu_ctx.c @@ -46,7 +46,7 @@ static int amdgpu_ctx_priority_permit(struct drm_file *filp, enum drm_sched_priority priority) { - if (priority < 0 || priority >= DRM_SCHED_PRIORITY_MAX) + if (priority < 0 || priority >= DRM_SCHED_PRIORITY_COUNT) return -EINVAL; /* NORMAL and below are accessible by everyone */ @@ -65,7 +65,7 @@ static enum gfx_pipe_priority amdgpu_ctx_sched_prio_to_compute_prio(enum drm_sched_priority prio) { switch (prio) { - case DRM_SCHED_PRIORITY_HIGH_HW: + case DRM_SCHED_PRIORITY_HIGH: case DRM_SCHED_PRIORITY_KERNEL: return AMDGPU_GFX_PIPE_PRIO_HIGH; default: --- linux-azure-5.8-5.8.0.orig/drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c +++ linux-azure-5.8-5.8.0/drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c @@ -223,12 +223,16 @@ *pos &= (1UL << 22) - 1; r = pm_runtime_get_sync(adev->ddev->dev); - if (r < 0) + if (r < 0) { + pm_runtime_put_autosuspend(adev->ddev->dev); return r; + } r = amdgpu_virt_enable_access_debugfs(adev); - if (r < 0) + if (r < 0) { + pm_runtime_put_autosuspend(adev->ddev->dev); return r; + } if (use_bank) { if ((sh_bank != 0xFFFFFFFF && sh_bank >= adev->gfx.config.max_sh_per_se) || @@ -332,12 +336,16 @@ return -EINVAL; r = pm_runtime_get_sync(adev->ddev->dev); - if (r < 0) + if (r < 0) { + pm_runtime_put_autosuspend(adev->ddev->dev); return r; + } r = amdgpu_virt_enable_access_debugfs(adev); - if (r < 0) + if (r < 0) { + pm_runtime_put_autosuspend(adev->ddev->dev); return r; + } while (size) { uint32_t value; @@ -387,12 +395,16 @@ return -EINVAL; r = pm_runtime_get_sync(adev->ddev->dev); - if (r < 0) + if (r < 0) { + pm_runtime_put_autosuspend(adev->ddev->dev); return r; + } r = amdgpu_virt_enable_access_debugfs(adev); - if (r < 0) + if (r < 0) { + pm_runtime_put_autosuspend(adev->ddev->dev); return r; + } while (size) { uint32_t value; @@ -443,12 +455,16 @@ return -EINVAL; r = pm_runtime_get_sync(adev->ddev->dev); - if (r < 0) + if (r < 0) { + pm_runtime_put_autosuspend(adev->ddev->dev); return r; + } r = amdgpu_virt_enable_access_debugfs(adev); - if (r < 0) + if (r < 0) { + pm_runtime_put_autosuspend(adev->ddev->dev); return r; + } while (size) { uint32_t value; @@ -498,12 +514,16 @@ return -EINVAL; r = pm_runtime_get_sync(adev->ddev->dev); - if (r < 0) + if (r < 0) { + pm_runtime_put_autosuspend(adev->ddev->dev); return r; + } r = amdgpu_virt_enable_access_debugfs(adev); - if (r < 0) + if (r < 0) { + pm_runtime_put_autosuspend(adev->ddev->dev); return r; + } while (size) { uint32_t value; @@ -554,12 +574,16 @@ return -EINVAL; r = pm_runtime_get_sync(adev->ddev->dev); - if (r < 0) + if (r < 0) { + pm_runtime_put_autosuspend(adev->ddev->dev); return r; + } r = amdgpu_virt_enable_access_debugfs(adev); - if (r < 0) + if (r < 0) { + pm_runtime_put_autosuspend(adev->ddev->dev); return r; + } while (size) { uint32_t value; @@ -609,12 +633,16 @@ return -EINVAL; r = pm_runtime_get_sync(adev->ddev->dev); - if (r < 0) + if (r < 0) { + pm_runtime_put_autosuspend(adev->ddev->dev); return r; + } r = amdgpu_virt_enable_access_debugfs(adev); - if (r < 0) + if (r < 0) { + pm_runtime_put_autosuspend(adev->ddev->dev); return r; + } while (size) { uint32_t value; @@ -764,12 +792,16 @@ valuesize = sizeof(values); r = pm_runtime_get_sync(adev->ddev->dev); - if (r < 0) + if (r < 0) { + pm_runtime_put_autosuspend(adev->ddev->dev); return r; + } r = amdgpu_virt_enable_access_debugfs(adev); - if (r < 0) + if (r < 0) { + pm_runtime_put_autosuspend(adev->ddev->dev); return r; + } r = amdgpu_dpm_read_sensor(adev, idx, &values[0], &valuesize); @@ -842,12 +874,16 @@ simd = (*pos & GENMASK_ULL(44, 37)) >> 37; r = pm_runtime_get_sync(adev->ddev->dev); - if (r < 0) + if (r < 0) { + pm_runtime_put_autosuspend(adev->ddev->dev); return r; + } r = amdgpu_virt_enable_access_debugfs(adev); - if (r < 0) + if (r < 0) { + pm_runtime_put_autosuspend(adev->ddev->dev); return r; + } /* switch to the specific se/sh/cu */ mutex_lock(&adev->grbm_idx_mutex); @@ -937,11 +973,11 @@ r = pm_runtime_get_sync(adev->ddev->dev); if (r < 0) - return r; + goto err; r = amdgpu_virt_enable_access_debugfs(adev); if (r < 0) - return r; + goto err; /* switch to the specific se/sh/cu */ mutex_lock(&adev->grbm_idx_mutex); @@ -967,7 +1003,7 @@ value = data[result >> 2]; r = put_user(value, (uint32_t *)buf); if (r) { - result = r; + amdgpu_virt_disable_access_debugfs(adev); goto err; } @@ -976,10 +1012,14 @@ size -= 4; } -err: kfree(data); amdgpu_virt_disable_access_debugfs(adev); return result; + +err: + pm_runtime_put_autosuspend(adev->ddev->dev); + kfree(data); + return r; } /** @@ -1003,8 +1043,10 @@ return -EINVAL; r = pm_runtime_get_sync(adev->ddev->dev); - if (r < 0) + if (r < 0) { + pm_runtime_put_autosuspend(adev->ddev->dev); return r; + } while (size) { uint32_t value; @@ -1140,8 +1182,10 @@ int r = 0, i; r = pm_runtime_get_sync(dev->dev); - if (r < 0) + if (r < 0) { + pm_runtime_put_autosuspend(adev->ddev->dev); return r; + } /* Avoid accidently unparking the sched thread during GPU reset */ mutex_lock(&adev->lock_reset); @@ -1197,8 +1241,10 @@ int r; r = pm_runtime_get_sync(dev->dev); - if (r < 0) + if (r < 0) { + pm_runtime_put_autosuspend(adev->ddev->dev); return r; + } seq_printf(m, "(%d)\n", amdgpu_bo_evict_vram(adev)); @@ -1216,8 +1262,10 @@ int r; r = pm_runtime_get_sync(dev->dev); - if (r < 0) + if (r < 0) { + pm_runtime_put_autosuspend(adev->ddev->dev); return r; + } seq_printf(m, "(%d)\n", ttm_bo_evict_mm(&adev->mman.bdev, TTM_PL_TT)); @@ -1417,16 +1465,16 @@ return -EINVAL; ret = pm_runtime_get_sync(adev->ddev->dev); - if (ret < 0) + if (ret < 0) { + pm_runtime_put_autosuspend(adev->ddev->dev); return ret; + } if (is_support_sw_smu(adev)) { ret = smu_get_dpm_freq_range(&adev->smu, SMU_SCLK, &min_freq, &max_freq, true); if (ret || val > max_freq || val < min_freq) return -EINVAL; ret = smu_set_soft_freq_range(&adev->smu, SMU_SCLK, (uint32_t)val, (uint32_t)val, true); - } else { - return 0; } pm_runtime_mark_last_busy(adev->ddev->dev); --- linux-azure-5.8-5.8.0.orig/drivers/gpu/drm/amd/amdgpu/amdgpu_device.c +++ linux-azure-5.8-5.8.0/drivers/gpu/drm/amd/amdgpu/amdgpu_device.c @@ -1578,7 +1578,10 @@ chip_name = "arcturus"; break; case CHIP_RENOIR: - chip_name = "renoir"; + if (adev->apu_flags & AMD_APU_IS_RENOIR) + chip_name = "renoir"; + else + chip_name = "green_sardine"; break; case CHIP_NAVI10: chip_name = "navi10"; @@ -2313,11 +2316,11 @@ if (adev->gmc.xgmi.num_physical_nodes > 1) amdgpu_xgmi_remove_device(adev); - amdgpu_amdkfd_device_fini(adev); - amdgpu_device_set_pg_state(adev, AMD_PG_STATE_UNGATE); amdgpu_device_set_cg_state(adev, AMD_CG_STATE_UNGATE); + amdgpu_amdkfd_device_fini(adev); + /* need to disable SMC first */ for (i = 0; i < adev->num_ip_blocks; i++) { if (!adev->ip_blocks[i].status.hw) @@ -2783,7 +2786,7 @@ #endif default: if (amdgpu_dc > 0) - DRM_INFO("Display Core has been requested via kernel parameter " + DRM_INFO_ONCE("Display Core has been requested via kernel parameter " "but isn't supported by ASIC, ignoring\n"); return false; } @@ -3275,10 +3278,8 @@ msecs_to_jiffies(AMDGPU_RESUME_MS)); r = sysfs_create_files(&adev->dev->kobj, amdgpu_dev_attributes); - if (r) { + if (r) dev_err(adev->dev, "Could not create amdgpu device attr\n"); - return r; - } if (IS_ENABLED(CONFIG_PERF_EVENTS)) r = amdgpu_pmu_init(adev); @@ -4337,7 +4338,7 @@ retry: /* Rest of adevs pre asic reset from XGMI hive. */ list_for_each_entry(tmp_adev, device_list_handle, gmc.xgmi.head) { r = amdgpu_device_pre_asic_reset(tmp_adev, - NULL, + (tmp_adev == adev) ? job : NULL, &need_full_reset); /*TODO Should we stop ?*/ if (r) { @@ -4556,7 +4557,7 @@ if (!amdgpu_device_supports_baco(adev->ddev)) return -ENOTSUPP; - if (ras && ras->supported) + if (ras && ras->supported && adev->nbio.funcs->enable_doorbell_interrupt) adev->nbio.funcs->enable_doorbell_interrupt(adev, false); return amdgpu_dpm_baco_enter(adev); @@ -4575,7 +4576,7 @@ if (ret) return ret; - if (ras && ras->supported) + if (ras && ras->supported && adev->nbio.funcs->enable_doorbell_interrupt) adev->nbio.funcs->enable_doorbell_interrupt(adev, true); return 0; --- linux-azure-5.8-5.8.0.orig/drivers/gpu/drm/amd/amdgpu/amdgpu_display.c +++ linux-azure-5.8-5.8.0/drivers/gpu/drm/amd/amdgpu/amdgpu_display.c @@ -282,7 +282,7 @@ ret = pm_runtime_get_sync(dev->dev); if (ret < 0) - return ret; + goto out; ret = drm_crtc_helper_set_config(set, ctx); @@ -306,6 +306,7 @@ adev->have_disp_power_ref = false; } +out: /* drop the power reference we got coming in here */ pm_runtime_put_autosuspend(dev->dev); return ret; --- linux-azure-5.8-5.8.0.orig/drivers/gpu/drm/amd/amdgpu/amdgpu_dma_buf.c +++ linux-azure-5.8-5.8.0/drivers/gpu/drm/amd/amdgpu/amdgpu_dma_buf.c @@ -587,7 +587,7 @@ attach = dma_buf_dynamic_attach(dma_buf, dev->dev, &amdgpu_dma_buf_attach_ops, obj); if (IS_ERR(attach)) { - drm_gem_object_put(obj); + drm_gem_object_put_unlocked(obj); return ERR_CAST(attach); } --- linux-azure-5.8-5.8.0.orig/drivers/gpu/drm/amd/amdgpu/amdgpu_drv.c +++ linux-azure-5.8-5.8.0/drivers/gpu/drm/amd/amdgpu/amdgpu_drv.c @@ -1016,6 +1016,7 @@ {0x1002, 0x7319, PCI_ANY_ID, PCI_ANY_ID, 0, 0, CHIP_NAVI10}, {0x1002, 0x731A, PCI_ANY_ID, PCI_ANY_ID, 0, 0, CHIP_NAVI10}, {0x1002, 0x731B, PCI_ANY_ID, PCI_ANY_ID, 0, 0, CHIP_NAVI10}, + {0x1002, 0x731E, PCI_ANY_ID, PCI_ANY_ID, 0, 0, CHIP_NAVI10}, {0x1002, 0x731F, PCI_ANY_ID, PCI_ANY_ID, 0, 0, CHIP_NAVI10}, /* Navi14 */ {0x1002, 0x7340, PCI_ANY_ID, PCI_ANY_ID, 0, 0, CHIP_NAVI14}, @@ -1025,6 +1026,8 @@ /* Renoir */ {0x1002, 0x1636, PCI_ANY_ID, PCI_ANY_ID, 0, 0, CHIP_RENOIR|AMD_IS_APU}, + {0x1002, 0x1638, PCI_ANY_ID, PCI_ANY_ID, 0, 0, CHIP_RENOIR|AMD_IS_APU}, + {0x1002, 0x164C, PCI_ANY_ID, PCI_ANY_ID, 0, 0, CHIP_RENOIR|AMD_IS_APU}, /* Navi12 */ {0x1002, 0x7360, PCI_ANY_ID, PCI_ANY_ID, 0, 0, CHIP_NAVI12|AMD_EXP_HW_SUPPORT}, @@ -1373,11 +1376,12 @@ dev = file_priv->minor->dev; ret = pm_runtime_get_sync(dev->dev); if (ret < 0) - return ret; + goto out; ret = drm_ioctl(filp, cmd, arg); pm_runtime_mark_last_busy(dev->dev); +out: pm_runtime_put_autosuspend(dev->dev); return ret; } --- linux-azure-5.8-5.8.0.orig/drivers/gpu/drm/amd/amdgpu/amdgpu_fence.c +++ linux-azure-5.8-5.8.0/drivers/gpu/drm/amd/amdgpu/amdgpu_fence.c @@ -416,7 +416,9 @@ ring->fence_drv.gpu_addr = adev->uvd.inst[ring->me].gpu_addr + index; } amdgpu_fence_write(ring, atomic_read(&ring->fence_drv.last_seq)); - amdgpu_irq_get(adev, irq_src, irq_type); + + if (irq_src) + amdgpu_irq_get(adev, irq_src, irq_type); ring->fence_drv.irq_src = irq_src; ring->fence_drv.irq_type = irq_type; @@ -537,8 +539,9 @@ /* no need to trigger GPU reset as we are unloading */ amdgpu_fence_driver_force_completion(ring); } - amdgpu_irq_put(adev, ring->fence_drv.irq_src, - ring->fence_drv.irq_type); + if (ring->fence_drv.irq_src) + amdgpu_irq_put(adev, ring->fence_drv.irq_src, + ring->fence_drv.irq_type); drm_sched_fini(&ring->sched); del_timer_sync(&ring->fence_drv.fallback_timer); for (j = 0; j <= ring->fence_drv.num_fences_mask; ++j) @@ -574,8 +577,9 @@ } /* disable the interrupt */ - amdgpu_irq_put(adev, ring->fence_drv.irq_src, - ring->fence_drv.irq_type); + if (ring->fence_drv.irq_src) + amdgpu_irq_put(adev, ring->fence_drv.irq_src, + ring->fence_drv.irq_type); } } @@ -601,8 +605,9 @@ continue; /* enable the interrupt */ - amdgpu_irq_get(adev, ring->fence_drv.irq_src, - ring->fence_drv.irq_type); + if (ring->fence_drv.irq_src) + amdgpu_irq_get(adev, ring->fence_drv.irq_src, + ring->fence_drv.irq_type); } } @@ -749,8 +754,10 @@ int r; r = pm_runtime_get_sync(dev->dev); - if (r < 0) + if (r < 0) { + pm_runtime_put_autosuspend(dev->dev); return 0; + } seq_printf(m, "gpu recover\n"); amdgpu_device_gpu_recover(adev, NULL); --- linux-azure-5.8-5.8.0.orig/drivers/gpu/drm/amd/amdgpu/amdgpu_gem.c +++ linux-azure-5.8-5.8.0/drivers/gpu/drm/amd/amdgpu/amdgpu_gem.c @@ -596,6 +596,7 @@ struct ww_acquire_ctx ticket; struct list_head list, duplicates; uint64_t va_flags; + uint64_t vm_size; int r = 0; if (args->va_address < AMDGPU_VA_RESERVED_SIZE) { @@ -616,6 +617,15 @@ args->va_address &= AMDGPU_GMC_HOLE_MASK; + vm_size = adev->vm_manager.max_pfn * AMDGPU_GPU_PAGE_SIZE; + vm_size -= AMDGPU_VA_RESERVED_SIZE; + if (args->va_address + args->map_size > vm_size) { + dev_dbg(&dev->pdev->dev, + "va_address 0x%llx is in top reserved area 0x%llx\n", + args->va_address + args->map_size, vm_size); + return -EINVAL; + } + if ((args->flags & ~valid_flags) && (args->flags & ~prt_flags)) { dev_dbg(&dev->pdev->dev, "invalid flags combination 0x%08X\n", args->flags); --- linux-azure-5.8-5.8.0.orig/drivers/gpu/drm/amd/amdgpu/amdgpu_gfx.c +++ linux-azure-5.8-5.8.0/drivers/gpu/drm/amd/amdgpu/amdgpu_gfx.c @@ -193,10 +193,14 @@ } bool amdgpu_gfx_is_high_priority_compute_queue(struct amdgpu_device *adev, - int queue) + int pipe, int queue) { - /* Policy: make queue 0 of each pipe as high priority compute queue */ - return (queue == 0); + bool multipipe_policy = amdgpu_gfx_is_multipipe_capable(adev); + int cond; + /* Policy: alternate between normal and high priority */ + cond = multipipe_policy ? pipe : queue; + + return ((cond % 2) != 0); } --- linux-azure-5.8-5.8.0.orig/drivers/gpu/drm/amd/amdgpu/amdgpu_gfx.h +++ linux-azure-5.8-5.8.0/drivers/gpu/drm/amd/amdgpu/amdgpu_gfx.h @@ -369,7 +369,7 @@ bool amdgpu_gfx_is_mec_queue_enabled(struct amdgpu_device *adev, int mec, int pipe, int queue); bool amdgpu_gfx_is_high_priority_compute_queue(struct amdgpu_device *adev, - int queue); + int pipe, int queue); int amdgpu_gfx_me_queue_to_bit(struct amdgpu_device *adev, int me, int pipe, int queue); void amdgpu_gfx_bit_to_me_queue(struct amdgpu_device *adev, int bit, --- linux-azure-5.8-5.8.0.orig/drivers/gpu/drm/amd/amdgpu/amdgpu_job.c +++ linux-azure-5.8-5.8.0/drivers/gpu/drm/amd/amdgpu/amdgpu_job.c @@ -254,7 +254,7 @@ int i; /* Signal all jobs not yet scheduled */ - for (i = DRM_SCHED_PRIORITY_MAX - 1; i >= DRM_SCHED_PRIORITY_MIN; i--) { + for (i = DRM_SCHED_PRIORITY_COUNT - 1; i >= DRM_SCHED_PRIORITY_MIN; i--) { struct drm_sched_rq *rq = &sched->sched_rq[i]; if (!rq) --- linux-azure-5.8-5.8.0.orig/drivers/gpu/drm/amd/amdgpu/amdgpu_kms.c +++ linux-azure-5.8-5.8.0/drivers/gpu/drm/amd/amdgpu/amdgpu_kms.c @@ -663,8 +663,12 @@ * in the bitfields */ if (se_num == AMDGPU_INFO_MMR_SE_INDEX_MASK) se_num = 0xffffffff; + else if (se_num >= AMDGPU_GFX_MAX_SE) + return -EINVAL; if (sh_num == AMDGPU_INFO_MMR_SH_INDEX_MASK) sh_num = 0xffffffff; + else if (sh_num >= AMDGPU_GFX_MAX_SH_PER_SE) + return -EINVAL; if (info->read_mmr_reg.count > 128) return -EINVAL; @@ -992,7 +996,7 @@ r = pm_runtime_get_sync(dev->dev); if (r < 0) - return r; + goto pm_put; fpriv = kzalloc(sizeof(*fpriv), GFP_KERNEL); if (unlikely(!fpriv)) { @@ -1043,6 +1047,7 @@ out_suspend: pm_runtime_mark_last_busy(dev->dev); +pm_put: pm_runtime_put_autosuspend(dev->dev); return r; --- linux-azure-5.8-5.8.0.orig/drivers/gpu/drm/amd/amdgpu/amdgpu_pm.c +++ linux-azure-5.8-5.8.0/drivers/gpu/drm/amd/amdgpu/amdgpu_pm.c @@ -167,8 +167,10 @@ return -EPERM; ret = pm_runtime_get_sync(ddev->dev); - if (ret < 0) + if (ret < 0) { + pm_runtime_put_autosuspend(ddev->dev); return ret; + } if (is_support_sw_smu(adev)) { if (adev->smu.ppt_funcs->get_current_power_state) @@ -212,8 +214,10 @@ return -EINVAL; ret = pm_runtime_get_sync(ddev->dev); - if (ret < 0) + if (ret < 0) { + pm_runtime_put_autosuspend(ddev->dev); return ret; + } if (is_support_sw_smu(adev)) { mutex_lock(&adev->pm.mutex); @@ -307,8 +311,10 @@ return -EPERM; ret = pm_runtime_get_sync(ddev->dev); - if (ret < 0) + if (ret < 0) { + pm_runtime_put_autosuspend(ddev->dev); return ret; + } if (is_support_sw_smu(adev)) level = smu_get_performance_level(&adev->smu); @@ -369,8 +375,10 @@ } ret = pm_runtime_get_sync(ddev->dev); - if (ret < 0) + if (ret < 0) { + pm_runtime_put_autosuspend(ddev->dev); return ret; + } if (is_support_sw_smu(adev)) current_level = smu_get_performance_level(&adev->smu); @@ -449,8 +457,10 @@ return -EPERM; ret = pm_runtime_get_sync(ddev->dev); - if (ret < 0) + if (ret < 0) { + pm_runtime_put_autosuspend(ddev->dev); return ret; + } if (is_support_sw_smu(adev)) { ret = smu_get_power_num_states(&adev->smu, &data); @@ -491,8 +501,10 @@ return -EPERM; ret = pm_runtime_get_sync(ddev->dev); - if (ret < 0) + if (ret < 0) { + pm_runtime_put_autosuspend(ddev->dev); return ret; + } if (is_support_sw_smu(adev)) { pm = smu_get_current_power_state(smu); @@ -567,8 +579,10 @@ state = data.states[idx]; ret = pm_runtime_get_sync(ddev->dev); - if (ret < 0) + if (ret < 0) { + pm_runtime_put_autosuspend(ddev->dev); return ret; + } /* only set user selected power states */ if (state != POWER_STATE_TYPE_INTERNAL_BOOT && @@ -608,8 +622,10 @@ return -EPERM; ret = pm_runtime_get_sync(ddev->dev); - if (ret < 0) + if (ret < 0) { + pm_runtime_put_autosuspend(ddev->dev); return ret; + } if (is_support_sw_smu(adev)) { size = smu_sys_get_pp_table(&adev->smu, (void **)&table); @@ -650,8 +666,10 @@ return -EPERM; ret = pm_runtime_get_sync(ddev->dev); - if (ret < 0) + if (ret < 0) { + pm_runtime_put_autosuspend(ddev->dev); return ret; + } if (is_support_sw_smu(adev)) { ret = smu_sys_set_pp_table(&adev->smu, (void *)buf, count); @@ -790,8 +808,10 @@ } ret = pm_runtime_get_sync(ddev->dev); - if (ret < 0) + if (ret < 0) { + pm_runtime_put_autosuspend(ddev->dev); return ret; + } if (is_support_sw_smu(adev)) { ret = smu_od_edit_dpm_table(&adev->smu, type, @@ -847,8 +867,10 @@ return -EPERM; ret = pm_runtime_get_sync(ddev->dev); - if (ret < 0) + if (ret < 0) { + pm_runtime_put_autosuspend(ddev->dev); return ret; + } if (is_support_sw_smu(adev)) { size = smu_print_clk_levels(&adev->smu, SMU_OD_SCLK, buf); @@ -905,8 +927,10 @@ pr_debug("featuremask = 0x%llx\n", featuremask); ret = pm_runtime_get_sync(ddev->dev); - if (ret < 0) + if (ret < 0) { + pm_runtime_put_autosuspend(ddev->dev); return ret; + } if (is_support_sw_smu(adev)) { ret = smu_sys_set_pp_feature_mask(&adev->smu, featuremask); @@ -942,8 +966,10 @@ return -EPERM; ret = pm_runtime_get_sync(ddev->dev); - if (ret < 0) + if (ret < 0) { + pm_runtime_put_autosuspend(ddev->dev); return ret; + } if (is_support_sw_smu(adev)) size = smu_sys_get_pp_feature_mask(&adev->smu, buf); @@ -1001,8 +1027,10 @@ return -EPERM; ret = pm_runtime_get_sync(ddev->dev); - if (ret < 0) + if (ret < 0) { + pm_runtime_put_autosuspend(ddev->dev); return ret; + } if (is_support_sw_smu(adev)) size = smu_print_clk_levels(&adev->smu, SMU_SCLK, buf); @@ -1026,7 +1054,7 @@ static ssize_t amdgpu_read_mask(const char *buf, size_t count, uint32_t *mask) { int ret; - long level; + unsigned long level; char *sub_str = NULL; char *tmp; char buf_cpy[AMDGPU_MASK_BUF_MAX + 1]; @@ -1042,8 +1070,8 @@ while (tmp[0]) { sub_str = strsep(&tmp, delimiter); if (strlen(sub_str)) { - ret = kstrtol(sub_str, 0, &level); - if (ret) + ret = kstrtoul(sub_str, 0, &level); + if (ret || level > 31) return -EINVAL; *mask |= 1 << level; } else @@ -1071,8 +1099,10 @@ return ret; ret = pm_runtime_get_sync(ddev->dev); - if (ret < 0) + if (ret < 0) { + pm_runtime_put_autosuspend(ddev->dev); return ret; + } if (is_support_sw_smu(adev)) ret = smu_force_clk_levels(&adev->smu, SMU_SCLK, mask, true); @@ -1101,8 +1131,10 @@ return -EPERM; ret = pm_runtime_get_sync(ddev->dev); - if (ret < 0) + if (ret < 0) { + pm_runtime_put_autosuspend(ddev->dev); return ret; + } if (is_support_sw_smu(adev)) size = smu_print_clk_levels(&adev->smu, SMU_MCLK, buf); @@ -1135,8 +1167,10 @@ return ret; ret = pm_runtime_get_sync(ddev->dev); - if (ret < 0) + if (ret < 0) { + pm_runtime_put_autosuspend(ddev->dev); return ret; + } if (is_support_sw_smu(adev)) ret = smu_force_clk_levels(&adev->smu, SMU_MCLK, mask, true); @@ -1165,8 +1199,10 @@ return -EPERM; ret = pm_runtime_get_sync(ddev->dev); - if (ret < 0) + if (ret < 0) { + pm_runtime_put_autosuspend(ddev->dev); return ret; + } if (is_support_sw_smu(adev)) size = smu_print_clk_levels(&adev->smu, SMU_SOCCLK, buf); @@ -1199,8 +1235,10 @@ return ret; ret = pm_runtime_get_sync(ddev->dev); - if (ret < 0) + if (ret < 0) { + pm_runtime_put_autosuspend(ddev->dev); return ret; + } if (is_support_sw_smu(adev)) ret = smu_force_clk_levels(&adev->smu, SMU_SOCCLK, mask, true); @@ -1231,8 +1269,10 @@ return -EPERM; ret = pm_runtime_get_sync(ddev->dev); - if (ret < 0) + if (ret < 0) { + pm_runtime_put_autosuspend(ddev->dev); return ret; + } if (is_support_sw_smu(adev)) size = smu_print_clk_levels(&adev->smu, SMU_FCLK, buf); @@ -1265,8 +1305,10 @@ return ret; ret = pm_runtime_get_sync(ddev->dev); - if (ret < 0) + if (ret < 0) { + pm_runtime_put_autosuspend(ddev->dev); return ret; + } if (is_support_sw_smu(adev)) ret = smu_force_clk_levels(&adev->smu, SMU_FCLK, mask, true); @@ -1297,8 +1339,10 @@ return -EPERM; ret = pm_runtime_get_sync(ddev->dev); - if (ret < 0) + if (ret < 0) { + pm_runtime_put_autosuspend(ddev->dev); return ret; + } if (is_support_sw_smu(adev)) size = smu_print_clk_levels(&adev->smu, SMU_DCEFCLK, buf); @@ -1331,8 +1375,10 @@ return ret; ret = pm_runtime_get_sync(ddev->dev); - if (ret < 0) + if (ret < 0) { + pm_runtime_put_autosuspend(ddev->dev); return ret; + } if (is_support_sw_smu(adev)) ret = smu_force_clk_levels(&adev->smu, SMU_DCEFCLK, mask, true); @@ -1363,8 +1409,10 @@ return -EPERM; ret = pm_runtime_get_sync(ddev->dev); - if (ret < 0) + if (ret < 0) { + pm_runtime_put_autosuspend(ddev->dev); return ret; + } if (is_support_sw_smu(adev)) size = smu_print_clk_levels(&adev->smu, SMU_PCIE, buf); @@ -1397,8 +1445,10 @@ return ret; ret = pm_runtime_get_sync(ddev->dev); - if (ret < 0) + if (ret < 0) { + pm_runtime_put_autosuspend(ddev->dev); return ret; + } if (is_support_sw_smu(adev)) ret = smu_force_clk_levels(&adev->smu, SMU_PCIE, mask, true); @@ -1429,8 +1479,10 @@ return -EPERM; ret = pm_runtime_get_sync(ddev->dev); - if (ret < 0) + if (ret < 0) { + pm_runtime_put_autosuspend(ddev->dev); return ret; + } if (is_support_sw_smu(adev)) value = smu_get_od_percentage(&(adev->smu), SMU_OD_SCLK); @@ -1462,8 +1514,10 @@ return -EINVAL; ret = pm_runtime_get_sync(ddev->dev); - if (ret < 0) + if (ret < 0) { + pm_runtime_put_autosuspend(ddev->dev); return ret; + } if (is_support_sw_smu(adev)) { value = smu_set_od_percentage(&(adev->smu), SMU_OD_SCLK, (uint32_t)value); @@ -1498,8 +1552,10 @@ return -EPERM; ret = pm_runtime_get_sync(ddev->dev); - if (ret < 0) + if (ret < 0) { + pm_runtime_put_autosuspend(ddev->dev); return ret; + } if (is_support_sw_smu(adev)) value = smu_get_od_percentage(&(adev->smu), SMU_OD_MCLK); @@ -1531,8 +1587,10 @@ return -EINVAL; ret = pm_runtime_get_sync(ddev->dev); - if (ret < 0) + if (ret < 0) { + pm_runtime_put_autosuspend(ddev->dev); return ret; + } if (is_support_sw_smu(adev)) { value = smu_set_od_percentage(&(adev->smu), SMU_OD_MCLK, (uint32_t)value); @@ -1587,8 +1645,10 @@ return -EPERM; ret = pm_runtime_get_sync(ddev->dev); - if (ret < 0) + if (ret < 0) { + pm_runtime_put_autosuspend(ddev->dev); return ret; + } if (is_support_sw_smu(adev)) size = smu_get_power_profile_mode(&adev->smu, buf); @@ -1650,8 +1710,10 @@ parameter[parameter_size] = profile_mode; ret = pm_runtime_get_sync(ddev->dev); - if (ret < 0) + if (ret < 0) { + pm_runtime_put_autosuspend(ddev->dev); return ret; + } if (is_support_sw_smu(adev)) ret = smu_set_power_profile_mode(&adev->smu, parameter, parameter_size, true); @@ -1687,8 +1749,10 @@ return -EPERM; r = pm_runtime_get_sync(ddev->dev); - if (r < 0) + if (r < 0) { + pm_runtime_put_autosuspend(ddev->dev); return r; + } /* read the IP busy sensor */ r = amdgpu_dpm_read_sensor(adev, AMDGPU_PP_SENSOR_GPU_LOAD, @@ -1723,8 +1787,10 @@ return -EPERM; r = pm_runtime_get_sync(ddev->dev); - if (r < 0) + if (r < 0) { + pm_runtime_put_autosuspend(ddev->dev); return r; + } /* read the IP busy sensor */ r = amdgpu_dpm_read_sensor(adev, AMDGPU_PP_SENSOR_MEM_LOAD, @@ -1770,8 +1836,10 @@ return -ENODATA; ret = pm_runtime_get_sync(ddev->dev); - if (ret < 0) + if (ret < 0) { + pm_runtime_put_autosuspend(ddev->dev); return ret; + } amdgpu_asic_get_pcie_usage(adev, &count0, &count1); @@ -2003,8 +2071,10 @@ return -EINVAL; r = pm_runtime_get_sync(adev->ddev->dev); - if (r < 0) + if (r < 0) { + pm_runtime_put_autosuspend(adev->ddev->dev); return r; + } switch (channel) { case PP_TEMP_JUNCTION: @@ -2134,8 +2204,10 @@ return -EPERM; ret = pm_runtime_get_sync(adev->ddev->dev); - if (ret < 0) + if (ret < 0) { + pm_runtime_put_autosuspend(adev->ddev->dev); return ret; + } if (is_support_sw_smu(adev)) { pwm_mode = smu_get_fan_control_mode(&adev->smu); @@ -2172,8 +2244,10 @@ return err; ret = pm_runtime_get_sync(adev->ddev->dev); - if (ret < 0) + if (ret < 0) { + pm_runtime_put_autosuspend(adev->ddev->dev); return ret; + } if (is_support_sw_smu(adev)) { smu_set_fan_control_mode(&adev->smu, value); @@ -2220,8 +2294,10 @@ return -EPERM; err = pm_runtime_get_sync(adev->ddev->dev); - if (err < 0) + if (err < 0) { + pm_runtime_put_autosuspend(adev->ddev->dev); return err; + } if (is_support_sw_smu(adev)) pwm_mode = smu_get_fan_control_mode(&adev->smu); @@ -2272,8 +2348,10 @@ return -EPERM; err = pm_runtime_get_sync(adev->ddev->dev); - if (err < 0) + if (err < 0) { + pm_runtime_put_autosuspend(adev->ddev->dev); return err; + } if (is_support_sw_smu(adev)) err = smu_get_fan_speed_percent(&adev->smu, &speed); @@ -2305,8 +2383,10 @@ return -EPERM; err = pm_runtime_get_sync(adev->ddev->dev); - if (err < 0) + if (err < 0) { + pm_runtime_put_autosuspend(adev->ddev->dev); return err; + } if (is_support_sw_smu(adev)) err = smu_get_fan_speed_rpm(&adev->smu, &speed); @@ -2337,8 +2417,10 @@ return -EPERM; r = pm_runtime_get_sync(adev->ddev->dev); - if (r < 0) + if (r < 0) { + pm_runtime_put_autosuspend(adev->ddev->dev); return r; + } r = amdgpu_dpm_read_sensor(adev, AMDGPU_PP_SENSOR_MIN_FAN_RPM, (void *)&min_rpm, &size); @@ -2365,8 +2447,10 @@ return -EPERM; r = pm_runtime_get_sync(adev->ddev->dev); - if (r < 0) + if (r < 0) { + pm_runtime_put_autosuspend(adev->ddev->dev); return r; + } r = amdgpu_dpm_read_sensor(adev, AMDGPU_PP_SENSOR_MAX_FAN_RPM, (void *)&max_rpm, &size); @@ -2392,8 +2476,10 @@ return -EPERM; err = pm_runtime_get_sync(adev->ddev->dev); - if (err < 0) + if (err < 0) { + pm_runtime_put_autosuspend(adev->ddev->dev); return err; + } if (is_support_sw_smu(adev)) err = smu_get_fan_speed_rpm(&adev->smu, &rpm); @@ -2424,8 +2510,10 @@ return -EPERM; err = pm_runtime_get_sync(adev->ddev->dev); - if (err < 0) + if (err < 0) { + pm_runtime_put_autosuspend(adev->ddev->dev); return err; + } if (is_support_sw_smu(adev)) pwm_mode = smu_get_fan_control_mode(&adev->smu); @@ -2473,8 +2561,10 @@ return -EPERM; ret = pm_runtime_get_sync(adev->ddev->dev); - if (ret < 0) + if (ret < 0) { + pm_runtime_put_autosuspend(adev->ddev->dev); return ret; + } if (is_support_sw_smu(adev)) { pwm_mode = smu_get_fan_control_mode(&adev->smu); @@ -2519,8 +2609,10 @@ return -EINVAL; err = pm_runtime_get_sync(adev->ddev->dev); - if (err < 0) + if (err < 0) { + pm_runtime_put_autosuspend(adev->ddev->dev); return err; + } if (is_support_sw_smu(adev)) { smu_set_fan_control_mode(&adev->smu, pwm_mode); @@ -2551,8 +2643,10 @@ return -EPERM; r = pm_runtime_get_sync(adev->ddev->dev); - if (r < 0) + if (r < 0) { + pm_runtime_put_autosuspend(adev->ddev->dev); return r; + } /* get the voltage */ r = amdgpu_dpm_read_sensor(adev, AMDGPU_PP_SENSOR_VDDGFX, @@ -2590,8 +2684,10 @@ return -EINVAL; r = pm_runtime_get_sync(adev->ddev->dev); - if (r < 0) + if (r < 0) { + pm_runtime_put_autosuspend(adev->ddev->dev); return r; + } /* get the voltage */ r = amdgpu_dpm_read_sensor(adev, AMDGPU_PP_SENSOR_VDDNB, @@ -2626,8 +2722,10 @@ return -EPERM; r = pm_runtime_get_sync(adev->ddev->dev); - if (r < 0) + if (r < 0) { + pm_runtime_put_autosuspend(adev->ddev->dev); return r; + } /* get the voltage */ r = amdgpu_dpm_read_sensor(adev, AMDGPU_PP_SENSOR_GPU_POWER, @@ -2665,8 +2763,10 @@ return -EPERM; r = pm_runtime_get_sync(adev->ddev->dev); - if (r < 0) + if (r < 0) { + pm_runtime_put_autosuspend(adev->ddev->dev); return r; + } if (is_support_sw_smu(adev)) { smu_get_power_limit(&adev->smu, &limit, true, true); @@ -2697,8 +2797,10 @@ return -EPERM; r = pm_runtime_get_sync(adev->ddev->dev); - if (r < 0) + if (r < 0) { + pm_runtime_put_autosuspend(adev->ddev->dev); return r; + } if (is_support_sw_smu(adev)) { smu_get_power_limit(&adev->smu, &limit, false, true); @@ -2740,8 +2842,10 @@ err = pm_runtime_get_sync(adev->ddev->dev); - if (err < 0) + if (err < 0) { + pm_runtime_put_autosuspend(adev->ddev->dev); return err; + } if (is_support_sw_smu(adev)) err = smu_set_power_limit(&adev->smu, value); @@ -2771,8 +2875,10 @@ return -EPERM; r = pm_runtime_get_sync(adev->ddev->dev); - if (r < 0) + if (r < 0) { + pm_runtime_put_autosuspend(adev->ddev->dev); return r; + } /* get the sclk */ r = amdgpu_dpm_read_sensor(adev, AMDGPU_PP_SENSOR_GFX_SCLK, @@ -2806,8 +2912,10 @@ return -EPERM; r = pm_runtime_get_sync(adev->ddev->dev); - if (r < 0) + if (r < 0) { + pm_runtime_put_autosuspend(adev->ddev->dev); return r; + } /* get the sclk */ r = amdgpu_dpm_read_sensor(adev, AMDGPU_PP_SENSOR_GFX_MCLK, @@ -3669,8 +3777,10 @@ return -EPERM; r = pm_runtime_get_sync(dev->dev); - if (r < 0) + if (r < 0) { + pm_runtime_put_autosuspend(dev->dev); return r; + } amdgpu_device_ip_get_clockgating_state(adev, &flags); seq_printf(m, "Clock Gating Flags Mask: 0x%x\n", flags); --- linux-azure-5.8-5.8.0.orig/drivers/gpu/drm/amd/amdgpu/amdgpu_psp.c +++ linux-azure-5.8-5.8.0/drivers/gpu/drm/amd/amdgpu/amdgpu_psp.c @@ -1182,8 +1182,12 @@ if (amdgpu_sriov_vf(psp->adev)) return 0; - if (!psp->hdcp_context.hdcp_initialized) - return 0; + if (!psp->hdcp_context.hdcp_initialized) { + if (psp->hdcp_context.hdcp_shared_buf) + goto out; + else + return 0; + } ret = psp_hdcp_unload(psp); if (ret) @@ -1191,6 +1195,7 @@ psp->hdcp_context.hdcp_initialized = false; +out: /* free hdcp shared memory */ amdgpu_bo_free_kernel(&psp->hdcp_context.hdcp_shared_bo, &psp->hdcp_context.hdcp_shared_mc_addr, @@ -1329,8 +1334,12 @@ if (amdgpu_sriov_vf(psp->adev)) return 0; - if (!psp->dtm_context.dtm_initialized) - return 0; + if (!psp->dtm_context.dtm_initialized) { + if (psp->dtm_context.dtm_shared_buf) + goto out; + else + return 0; + } ret = psp_dtm_unload(psp); if (ret) @@ -1338,6 +1347,7 @@ psp->dtm_context.dtm_initialized = false; +out: /* free hdcp shared memory */ amdgpu_bo_free_kernel(&psp->dtm_context.dtm_shared_bo, &psp->dtm_context.dtm_shared_mc_addr, --- linux-azure-5.8-5.8.0.orig/drivers/gpu/drm/amd/amdgpu/amdgpu_ras.c +++ linux-azure-5.8-5.8.0/drivers/gpu/drm/amd/amdgpu/amdgpu_ras.c @@ -364,12 +364,19 @@ static ssize_t amdgpu_ras_debugfs_eeprom_write(struct file *f, const char __user *buf, size_t size, loff_t *pos) { - struct amdgpu_device *adev = (struct amdgpu_device *)file_inode(f)->i_private; + struct amdgpu_device *adev = + (struct amdgpu_device *)file_inode(f)->i_private; int ret; - ret = amdgpu_ras_eeprom_reset_table(&adev->psp.ras.ras->eeprom_control); + ret = amdgpu_ras_eeprom_reset_table( + &(amdgpu_ras_get_context(adev)->eeprom_control)); - return ret == 1 ? size : -EIO; + if (ret == 1) { + amdgpu_ras_get_context(adev)->flags = RAS_DEFAULT_FLAGS; + return size; + } else { + return -EIO; + } } static const struct file_operations amdgpu_ras_debugfs_ctrl_ops = { @@ -831,7 +838,7 @@ if (amdgpu_dpm_allow_xgmi_power_down(adev, true)) dev_warn(adev->dev, "Failed to allow XGMI power down"); - if (amdgpu_dpm_set_df_cstate(adev, DF_CSTATE_DISALLOW)) + if (amdgpu_dpm_set_df_cstate(adev, DF_CSTATE_ALLOW)) dev_warn(adev->dev, "Failed to allow df cstate"); return ret; @@ -1240,7 +1247,6 @@ if (!obj || !obj->ent) return; - debugfs_remove(obj->ent); obj->ent = NULL; put_obj(obj); } @@ -1254,7 +1260,6 @@ amdgpu_ras_debugfs_remove(adev, &obj->head); } - debugfs_remove_recursive(con->dir); con->dir = NULL; } /* debugfs end */ @@ -1914,9 +1919,8 @@ amdgpu_ras_check_supported(adev, &con->hw_supported, &con->supported); if (!con->hw_supported) { - amdgpu_ras_set_context(adev, NULL); - kfree(con); - return 0; + r = 0; + goto err_out; } con->features = 0; @@ -1927,29 +1931,31 @@ if (adev->nbio.funcs->init_ras_controller_interrupt) { r = adev->nbio.funcs->init_ras_controller_interrupt(adev); if (r) - return r; + goto err_out; } if (adev->nbio.funcs->init_ras_err_event_athub_interrupt) { r = adev->nbio.funcs->init_ras_err_event_athub_interrupt(adev); if (r) - return r; + goto err_out; } amdgpu_ras_mask &= AMDGPU_RAS_BLOCK_MASK; - if (amdgpu_ras_fs_init(adev)) - goto fs_out; + if (amdgpu_ras_fs_init(adev)) { + r = -EINVAL; + goto err_out; + } dev_info(adev->dev, "RAS INFO: ras initialized successfully, " "hardware ability[%x] ras_mask[%x]\n", con->hw_supported, con->supported); return 0; -fs_out: +err_out: amdgpu_ras_set_context(adev, NULL); kfree(con); - return -EINVAL; + return r; } /* helper function to handle common stuff in ip late init phase */ --- linux-azure-5.8-5.8.0.orig/drivers/gpu/drm/amd/amdgpu/amdgpu_ring.c +++ linux-azure-5.8-5.8.0/drivers/gpu/drm/amd/amdgpu/amdgpu_ring.c @@ -267,7 +267,7 @@ &ring->sched; } - for (i = 0; i < DRM_SCHED_PRIORITY_MAX; ++i) + for (i = DRM_SCHED_PRIORITY_MIN; i < DRM_SCHED_PRIORITY_COUNT; ++i) atomic_set(&ring->num_jobs[i], 0); return 0; --- linux-azure-5.8-5.8.0.orig/drivers/gpu/drm/amd/amdgpu/amdgpu_ring.h +++ linux-azure-5.8-5.8.0/drivers/gpu/drm/amd/amdgpu/amdgpu_ring.h @@ -242,7 +242,7 @@ bool has_compute_vm_bug; bool no_scheduler; - atomic_t num_jobs[DRM_SCHED_PRIORITY_MAX]; + atomic_t num_jobs[DRM_SCHED_PRIORITY_COUNT]; struct mutex priority_mutex; /* protected by priority_mutex */ int priority; --- linux-azure-5.8-5.8.0.orig/drivers/gpu/drm/amd/amdgpu/amdgpu_sched.c +++ linux-azure-5.8-5.8.0/drivers/gpu/drm/amd/amdgpu/amdgpu_sched.c @@ -36,14 +36,14 @@ { switch (amdgpu_priority) { case AMDGPU_CTX_PRIORITY_VERY_HIGH: - return DRM_SCHED_PRIORITY_HIGH_HW; + return DRM_SCHED_PRIORITY_HIGH; case AMDGPU_CTX_PRIORITY_HIGH: - return DRM_SCHED_PRIORITY_HIGH_SW; + return DRM_SCHED_PRIORITY_HIGH; case AMDGPU_CTX_PRIORITY_NORMAL: return DRM_SCHED_PRIORITY_NORMAL; case AMDGPU_CTX_PRIORITY_LOW: case AMDGPU_CTX_PRIORITY_VERY_LOW: - return DRM_SCHED_PRIORITY_LOW; + return DRM_SCHED_PRIORITY_MIN; case AMDGPU_CTX_PRIORITY_UNSET: return DRM_SCHED_PRIORITY_UNSET; default: --- linux-azure-5.8-5.8.0.orig/drivers/gpu/drm/amd/amdgpu/amdgpu_trace.h +++ linux-azure-5.8-5.8.0/drivers/gpu/drm/amd/amdgpu/amdgpu_trace.h @@ -21,7 +21,7 @@ * */ -#if !defined(_AMDGPU_TRACE_H) || defined(TRACE_HEADER_MULTI_READ) +#if !defined(_AMDGPU_TRACE_H_) || defined(TRACE_HEADER_MULTI_READ) #define _AMDGPU_TRACE_H_ #include --- linux-azure-5.8-5.8.0.orig/drivers/gpu/drm/amd/amdgpu/amdgpu_ttm.c +++ linux-azure-5.8-5.8.0/drivers/gpu/drm/amd/amdgpu/amdgpu_ttm.c @@ -1052,6 +1052,7 @@ release_sg: kfree(ttm->sg); + ttm->sg = NULL; return r; } @@ -2064,7 +2065,7 @@ ring = adev->mman.buffer_funcs_ring; sched = &ring->sched; r = drm_sched_entity_init(&adev->mman.entity, - DRM_SCHED_PRIORITY_KERNEL, &sched, + DRM_SCHED_PRIORITY_KERNEL, &sched, 1, NULL); if (r) { DRM_ERROR("Failed setting up TTM BO move entity (%d)\n", --- linux-azure-5.8-5.8.0.orig/drivers/gpu/drm/amd/amdgpu/amdgpu_vcn.c +++ linux-azure-5.8-5.8.0/drivers/gpu/drm/amd/amdgpu/amdgpu_vcn.c @@ -46,11 +46,9 @@ MODULE_FIRMWARE(FIRMWARE_RAVEN); MODULE_FIRMWARE(FIRMWARE_PICASSO); MODULE_FIRMWARE(FIRMWARE_RAVEN2); -MODULE_FIRMWARE(FIRMWARE_ARCTURUS); MODULE_FIRMWARE(FIRMWARE_RENOIR); MODULE_FIRMWARE(FIRMWARE_NAVI10); MODULE_FIRMWARE(FIRMWARE_NAVI14); -MODULE_FIRMWARE(FIRMWARE_NAVI12); static void amdgpu_vcn_idle_work_handler(struct work_struct *work); @@ -64,6 +62,7 @@ INIT_DELAYED_WORK(&adev->vcn.idle_work, amdgpu_vcn_idle_work_handler); mutex_init(&adev->vcn.vcn_pg_lock); + mutex_init(&adev->vcn.vcn1_jpeg1_workaround); atomic_set(&adev->vcn.total_submission_cnt, 0); for (i = 0; i < adev->vcn.num_vcn_inst; i++) atomic_set(&adev->vcn.inst[i].dpg_enc_submission_cnt, 0); @@ -231,6 +230,7 @@ } release_firmware(adev->vcn.fw); + mutex_destroy(&adev->vcn.vcn1_jpeg1_workaround); mutex_destroy(&adev->vcn.vcn_pg_lock); return 0; --- linux-azure-5.8-5.8.0.orig/drivers/gpu/drm/amd/amdgpu/amdgpu_vcn.h +++ linux-azure-5.8-5.8.0/drivers/gpu/drm/amd/amdgpu/amdgpu_vcn.h @@ -209,6 +209,7 @@ struct amdgpu_vcn_inst inst[AMDGPU_MAX_VCN_INSTANCES]; struct amdgpu_vcn_reg internal; struct mutex vcn_pg_lock; + struct mutex vcn1_jpeg1_workaround; atomic_t total_submission_cnt; unsigned harvest_config; --- linux-azure-5.8-5.8.0.orig/drivers/gpu/drm/amd/amdgpu/amdgpu_vm.h +++ linux-azure-5.8-5.8.0/drivers/gpu/drm/amd/amdgpu/amdgpu_vm.h @@ -112,8 +112,8 @@ #define AMDGPU_MMHUB_0 1 #define AMDGPU_MMHUB_1 2 -/* hardcode that limit for now */ -#define AMDGPU_VA_RESERVED_SIZE (1ULL << 20) +/* Reserve 2MB at top/bottom of address space for kernel use */ +#define AMDGPU_VA_RESERVED_SIZE (2ULL << 20) /* max vmids dedicated for process */ #define AMDGPU_VM_MAX_RESERVED_VMID 1 --- linux-azure-5.8-5.8.0.orig/drivers/gpu/drm/amd/amdgpu/amdgpu_vram_mgr.c +++ linux-azure-5.8-5.8.0/drivers/gpu/drm/amd/amdgpu/amdgpu_vram_mgr.c @@ -465,7 +465,7 @@ unsigned int pages; int i, r; - *sgt = kmalloc(sizeof(*sg), GFP_KERNEL); + *sgt = kmalloc(sizeof(**sgt), GFP_KERNEL); if (!*sgt) return -ENOMEM; --- linux-azure-5.8-5.8.0.orig/drivers/gpu/drm/amd/amdgpu/cik_sdma.c +++ linux-azure-5.8-5.8.0/drivers/gpu/drm/amd/amdgpu/cik_sdma.c @@ -1071,22 +1071,19 @@ { u32 srbm_soft_reset = 0; struct amdgpu_device *adev = (struct amdgpu_device *)handle; - u32 tmp = RREG32(mmSRBM_STATUS2); + u32 tmp; - if (tmp & SRBM_STATUS2__SDMA_BUSY_MASK) { - /* sdma0 */ - tmp = RREG32(mmSDMA0_F32_CNTL + SDMA0_REGISTER_OFFSET); - tmp |= SDMA0_F32_CNTL__HALT_MASK; - WREG32(mmSDMA0_F32_CNTL + SDMA0_REGISTER_OFFSET, tmp); - srbm_soft_reset |= SRBM_SOFT_RESET__SOFT_RESET_SDMA_MASK; - } - if (tmp & SRBM_STATUS2__SDMA1_BUSY_MASK) { - /* sdma1 */ - tmp = RREG32(mmSDMA0_F32_CNTL + SDMA1_REGISTER_OFFSET); - tmp |= SDMA0_F32_CNTL__HALT_MASK; - WREG32(mmSDMA0_F32_CNTL + SDMA1_REGISTER_OFFSET, tmp); - srbm_soft_reset |= SRBM_SOFT_RESET__SOFT_RESET_SDMA1_MASK; - } + /* sdma0 */ + tmp = RREG32(mmSDMA0_F32_CNTL + SDMA0_REGISTER_OFFSET); + tmp |= SDMA0_F32_CNTL__HALT_MASK; + WREG32(mmSDMA0_F32_CNTL + SDMA0_REGISTER_OFFSET, tmp); + srbm_soft_reset |= SRBM_SOFT_RESET__SOFT_RESET_SDMA_MASK; + + /* sdma1 */ + tmp = RREG32(mmSDMA0_F32_CNTL + SDMA1_REGISTER_OFFSET); + tmp |= SDMA0_F32_CNTL__HALT_MASK; + WREG32(mmSDMA0_F32_CNTL + SDMA1_REGISTER_OFFSET, tmp); + srbm_soft_reset |= SRBM_SOFT_RESET__SOFT_RESET_SDMA1_MASK; if (srbm_soft_reset) { tmp = RREG32(mmSRBM_SOFT_RESET); --- linux-azure-5.8-5.8.0.orig/drivers/gpu/drm/amd/amdgpu/gfx_v10_0.c +++ linux-azure-5.8-5.8.0/drivers/gpu/drm/amd/amdgpu/gfx_v10_0.c @@ -4076,7 +4076,8 @@ irq_type = AMDGPU_CP_IRQ_COMPUTE_MEC1_PIPE0_EOP + ((ring->me - 1) * adev->gfx.mec.num_pipe_per_mec) + ring->pipe; - hw_prio = amdgpu_gfx_is_high_priority_compute_queue(adev, ring->queue) ? + hw_prio = amdgpu_gfx_is_high_priority_compute_queue(adev, ring->pipe, + ring->queue) ? AMDGPU_GFX_PIPE_PRIO_HIGH : AMDGPU_GFX_PIPE_PRIO_NORMAL; /* type-2 packets are deprecated on MEC, use type-3 instead */ r = amdgpu_ring_init(adev, ring, 1024, @@ -6007,7 +6008,8 @@ struct amdgpu_device *adev = ring->adev; if (ring->funcs->type == AMDGPU_RING_TYPE_COMPUTE) { - if (amdgpu_gfx_is_high_priority_compute_queue(adev, ring->queue)) { + if (amdgpu_gfx_is_high_priority_compute_queue(adev, ring->pipe, + ring->queue)) { mqd->cp_hqd_pipe_priority = AMDGPU_GFX_PIPE_PRIO_HIGH; mqd->cp_hqd_queue_priority = AMDGPU_GFX_QUEUE_PRIORITY_MAXIMUM; @@ -6854,10 +6856,8 @@ def = data = RREG32_SOC15(GC, 0, mmRLC_CGTT_MGCG_OVERRIDE); data &= ~(RLC_CGTT_MGCG_OVERRIDE__GRBM_CGTT_SCLK_OVERRIDE_MASK | RLC_CGTT_MGCG_OVERRIDE__GFXIP_MGCG_OVERRIDE_MASK | - RLC_CGTT_MGCG_OVERRIDE__GFXIP_MGLS_OVERRIDE_MASK); - - /* only for Vega10 & Raven1 */ - data |= RLC_CGTT_MGCG_OVERRIDE__RLC_CGTT_SCLK_OVERRIDE_MASK; + RLC_CGTT_MGCG_OVERRIDE__GFXIP_MGLS_OVERRIDE_MASK | + RLC_CGTT_MGCG_OVERRIDE__ENABLE_CGTS_LEGACY_MASK); if (def != data) WREG32_SOC15(GC, 0, mmRLC_CGTT_MGCG_OVERRIDE, data); --- linux-azure-5.8-5.8.0.orig/drivers/gpu/drm/amd/amdgpu/gfx_v8_0.c +++ linux-azure-5.8-5.8.0/drivers/gpu/drm/amd/amdgpu/gfx_v8_0.c @@ -1914,7 +1914,8 @@ + ((ring->me - 1) * adev->gfx.mec.num_pipe_per_mec) + ring->pipe; - hw_prio = amdgpu_gfx_is_high_priority_compute_queue(adev, ring->queue) ? + hw_prio = amdgpu_gfx_is_high_priority_compute_queue(adev, ring->pipe, + ring->queue) ? AMDGPU_GFX_PIPE_PRIO_HIGH : AMDGPU_RING_PRIO_DEFAULT; /* type-2 packets are deprecated on MEC, use type-3 instead */ r = amdgpu_ring_init(adev, ring, 1024, @@ -4434,7 +4435,8 @@ struct amdgpu_device *adev = ring->adev; if (ring->funcs->type == AMDGPU_RING_TYPE_COMPUTE) { - if (amdgpu_gfx_is_high_priority_compute_queue(adev, ring->queue)) { + if (amdgpu_gfx_is_high_priority_compute_queue(adev, ring->pipe, + ring->queue)) { mqd->cp_hqd_pipe_priority = AMDGPU_GFX_PIPE_PRIO_HIGH; mqd->cp_hqd_queue_priority = AMDGPU_GFX_QUEUE_PRIORITY_MAXIMUM; --- linux-azure-5.8-5.8.0.orig/drivers/gpu/drm/amd/amdgpu/gfx_v9_0.c +++ linux-azure-5.8-5.8.0/drivers/gpu/drm/amd/amdgpu/gfx_v9_0.c @@ -2216,7 +2216,8 @@ irq_type = AMDGPU_CP_IRQ_COMPUTE_MEC1_PIPE0_EOP + ((ring->me - 1) * adev->gfx.mec.num_pipe_per_mec) + ring->pipe; - hw_prio = amdgpu_gfx_is_high_priority_compute_queue(adev, ring->queue) ? + hw_prio = amdgpu_gfx_is_high_priority_compute_queue(adev, ring->pipe, + ring->queue) ? AMDGPU_GFX_PIPE_PRIO_HIGH : AMDGPU_GFX_PIPE_PRIO_NORMAL; /* type-2 packets are deprecated on MEC, use type-3 instead */ r = amdgpu_ring_init(adev, ring, 1024, @@ -3377,7 +3378,9 @@ struct amdgpu_device *adev = ring->adev; if (ring->funcs->type == AMDGPU_RING_TYPE_COMPUTE) { - if (amdgpu_gfx_is_high_priority_compute_queue(adev, ring->queue)) { + if (amdgpu_gfx_is_high_priority_compute_queue(adev, + ring->pipe, + ring->queue)) { mqd->cp_hqd_pipe_priority = AMDGPU_GFX_PIPE_PRIO_HIGH; mqd->cp_hqd_queue_priority = AMDGPU_GFX_QUEUE_PRIORITY_MAXIMUM; --- linux-azure-5.8-5.8.0.orig/drivers/gpu/drm/amd/amdgpu/jpeg_v1_0.c +++ linux-azure-5.8-5.8.0/drivers/gpu/drm/amd/amdgpu/jpeg_v1_0.c @@ -32,6 +32,7 @@ static void jpeg_v1_0_set_dec_ring_funcs(struct amdgpu_device *adev); static void jpeg_v1_0_set_irq_funcs(struct amdgpu_device *adev); +static void jpeg_v1_0_ring_begin_use(struct amdgpu_ring *ring); static void jpeg_v1_0_decode_ring_patch_wreg(struct amdgpu_ring *ring, uint32_t *ptr, uint32_t reg_offset, uint32_t val) { @@ -563,8 +564,8 @@ .insert_start = jpeg_v1_0_decode_ring_insert_start, .insert_end = jpeg_v1_0_decode_ring_insert_end, .pad_ib = amdgpu_ring_generic_pad_ib, - .begin_use = vcn_v1_0_ring_begin_use, - .end_use = amdgpu_vcn_ring_end_use, + .begin_use = jpeg_v1_0_ring_begin_use, + .end_use = vcn_v1_0_ring_end_use, .emit_wreg = jpeg_v1_0_decode_ring_emit_wreg, .emit_reg_wait = jpeg_v1_0_decode_ring_emit_reg_wait, .emit_reg_write_reg_wait = amdgpu_ring_emit_reg_write_reg_wait_helper, @@ -585,3 +586,22 @@ { adev->jpeg.inst->irq.funcs = &jpeg_v1_0_irq_funcs; } + +static void jpeg_v1_0_ring_begin_use(struct amdgpu_ring *ring) +{ + struct amdgpu_device *adev = ring->adev; + bool set_clocks = !cancel_delayed_work_sync(&adev->vcn.idle_work); + int cnt = 0; + + mutex_lock(&adev->vcn.vcn1_jpeg1_workaround); + + if (amdgpu_fence_wait_empty(&adev->vcn.inst->ring_dec)) + DRM_ERROR("JPEG dec: vcn dec ring may not be empty\n"); + + for (cnt = 0; cnt < adev->vcn.num_enc_rings; cnt++) { + if (amdgpu_fence_wait_empty(&adev->vcn.inst->ring_enc[cnt])) + DRM_ERROR("JPEG dec: vcn enc ring[%d] may not be empty\n", cnt); + } + + vcn_v1_0_set_pg_for_begin_use(ring, set_clocks); +} --- linux-azure-5.8-5.8.0.orig/drivers/gpu/drm/amd/amdgpu/jpeg_v2_5.c +++ linux-azure-5.8-5.8.0/drivers/gpu/drm/amd/amdgpu/jpeg_v2_5.c @@ -462,7 +462,7 @@ return ret; } - return ret; + return 0; } static int jpeg_v2_5_set_clockgating_state(void *handle, --- linux-azure-5.8-5.8.0.orig/drivers/gpu/drm/amd/amdgpu/nv.c +++ linux-azure-5.8-5.8.0/drivers/gpu/drm/amd/amdgpu/nv.c @@ -449,6 +449,14 @@ return 0; } +static bool nv_is_blockchain_sku(struct pci_dev *pdev) +{ + if (pdev->device == 0x731E && + (pdev->revision == 0xC6 || pdev->revision == 0xC7)) + return true; + return false; +} + int nv_set_ip_blocks(struct amdgpu_device *adev) { int r; @@ -480,7 +488,8 @@ if (adev->enable_virtual_display || amdgpu_sriov_vf(adev)) amdgpu_device_ip_block_add(adev, &dce_virtual_ip_block); #if defined(CONFIG_DRM_AMD_DC) - else if (amdgpu_device_has_dc_support(adev)) + else if (amdgpu_device_has_dc_support(adev) && + !nv_is_blockchain_sku(adev->pdev)) amdgpu_device_ip_block_add(adev, &dm_ip_block); #endif amdgpu_device_ip_block_add(adev, &gfx_v10_0_ip_block); @@ -488,7 +497,8 @@ if (adev->firmware.load_type == AMDGPU_FW_LOAD_DIRECT && !amdgpu_sriov_vf(adev)) amdgpu_device_ip_block_add(adev, &smu_v11_0_ip_block); - amdgpu_device_ip_block_add(adev, &vcn_v2_0_ip_block); + if (!nv_is_blockchain_sku(adev->pdev)) + amdgpu_device_ip_block_add(adev, &vcn_v2_0_ip_block); amdgpu_device_ip_block_add(adev, &jpeg_v2_0_ip_block); if (adev->enable_mes) amdgpu_device_ip_block_add(adev, &mes_v10_1_ip_block); --- linux-azure-5.8-5.8.0.orig/drivers/gpu/drm/amd/amdgpu/psp_gfx_if.h +++ linux-azure-5.8-5.8.0/drivers/gpu/drm/amd/amdgpu/psp_gfx_if.h @@ -47,7 +47,7 @@ GFX_CTRL_CMD_ID_DISABLE_INT = 0x00060000, /* disable PSP-to-Gfx interrupt */ GFX_CTRL_CMD_ID_MODE1_RST = 0x00070000, /* trigger the Mode 1 reset */ GFX_CTRL_CMD_ID_GBR_IH_SET = 0x00080000, /* set Gbr IH_RB_CNTL registers */ - GFX_CTRL_CMD_ID_CONSUME_CMD = 0x000A0000, /* send interrupt to psp for updating write pointer of vf */ + GFX_CTRL_CMD_ID_CONSUME_CMD = 0x00090000, /* send interrupt to psp for updating write pointer of vf */ GFX_CTRL_CMD_ID_DESTROY_GPCOM_RING = 0x000C0000, /* destroy GPCOM ring */ GFX_CTRL_CMD_ID_MAX = 0x000F0000, /* max command ID */ --- linux-azure-5.8-5.8.0.orig/drivers/gpu/drm/amd/amdgpu/soc15.c +++ linux-azure-5.8-5.8.0/drivers/gpu/drm/amd/amdgpu/soc15.c @@ -281,6 +281,8 @@ { u32 reference_clock = adev->clock.spll.reference_freq; + if (adev->asic_type == CHIP_RENOIR) + return 10000; if (adev->asic_type == CHIP_RAVEN) return reference_clock / 4; @@ -1230,7 +1232,16 @@ break; case CHIP_RENOIR: adev->asic_funcs = &soc15_asic_funcs; - adev->apu_flags |= AMD_APU_IS_RENOIR; + if ((adev->pdev->device == 0x1636) || + (adev->pdev->device == 0x164c)) + adev->apu_flags |= AMD_APU_IS_RENOIR; + else + adev->apu_flags |= AMD_APU_IS_GREEN_SARDINE; + + if (adev->apu_flags & AMD_APU_IS_RENOIR) + adev->external_rev_id = adev->rev_id + 0x91; + else + adev->external_rev_id = adev->rev_id + 0xa1; adev->cg_flags = AMD_CG_SUPPORT_GFX_MGCG | AMD_CG_SUPPORT_GFX_MGLS | AMD_CG_SUPPORT_GFX_3D_CGCG | @@ -1255,7 +1266,6 @@ AMD_PG_SUPPORT_VCN | AMD_PG_SUPPORT_JPEG | AMD_PG_SUPPORT_VCN_DPG; - adev->external_rev_id = adev->rev_id + 0x91; break; default: /* FIXME: not supported yet */ --- linux-azure-5.8-5.8.0.orig/drivers/gpu/drm/amd/amdgpu/vcn_v1_0.c +++ linux-azure-5.8-5.8.0/drivers/gpu/drm/amd/amdgpu/vcn_v1_0.c @@ -38,6 +38,7 @@ #include "ivsrcid/vcn/irqsrcs_vcn_1_0.h" #include "jpeg_v1_0.h" +#include "vcn_v1_0.h" #define mmUVD_RBC_XX_IB_REG_CHECK_1_0 0x05ab #define mmUVD_RBC_XX_IB_REG_CHECK_1_0_BASE_IDX 1 @@ -53,6 +54,7 @@ int inst_idx, struct dpg_pause_state *new_state); static void vcn_v1_0_idle_work_handler(struct work_struct *work); +static void vcn_v1_0_ring_begin_use(struct amdgpu_ring *ring); /** * vcn_v1_0_early_init - set function pointers @@ -1805,11 +1807,24 @@ } } -void vcn_v1_0_ring_begin_use(struct amdgpu_ring *ring) +static void vcn_v1_0_ring_begin_use(struct amdgpu_ring *ring) { - struct amdgpu_device *adev = ring->adev; + struct amdgpu_device *adev = ring->adev; bool set_clocks = !cancel_delayed_work_sync(&adev->vcn.idle_work); + mutex_lock(&adev->vcn.vcn1_jpeg1_workaround); + + if (amdgpu_fence_wait_empty(&ring->adev->jpeg.inst->ring_dec)) + DRM_ERROR("VCN dec: jpeg dec ring may not be empty\n"); + + vcn_v1_0_set_pg_for_begin_use(ring, set_clocks); + +} + +void vcn_v1_0_set_pg_for_begin_use(struct amdgpu_ring *ring, bool set_clocks) +{ + struct amdgpu_device *adev = ring->adev; + if (set_clocks) { amdgpu_gfx_off_ctrl(adev, false); if (adev->pm.dpm_enabled) @@ -1845,6 +1860,12 @@ } } +void vcn_v1_0_ring_end_use(struct amdgpu_ring *ring) +{ + schedule_delayed_work(&ring->adev->vcn.idle_work, VCN_IDLE_TIMEOUT); + mutex_unlock(&ring->adev->vcn.vcn1_jpeg1_workaround); +} + static const struct amd_ip_funcs vcn_v1_0_ip_funcs = { .name = "vcn_v1_0", .early_init = vcn_v1_0_early_init, @@ -1892,7 +1913,7 @@ .insert_end = vcn_v1_0_dec_ring_insert_end, .pad_ib = amdgpu_ring_generic_pad_ib, .begin_use = vcn_v1_0_ring_begin_use, - .end_use = amdgpu_vcn_ring_end_use, + .end_use = vcn_v1_0_ring_end_use, .emit_wreg = vcn_v1_0_dec_ring_emit_wreg, .emit_reg_wait = vcn_v1_0_dec_ring_emit_reg_wait, .emit_reg_write_reg_wait = amdgpu_ring_emit_reg_write_reg_wait_helper, @@ -1924,7 +1945,7 @@ .insert_end = vcn_v1_0_enc_ring_insert_end, .pad_ib = amdgpu_ring_generic_pad_ib, .begin_use = vcn_v1_0_ring_begin_use, - .end_use = amdgpu_vcn_ring_end_use, + .end_use = vcn_v1_0_ring_end_use, .emit_wreg = vcn_v1_0_enc_ring_emit_wreg, .emit_reg_wait = vcn_v1_0_enc_ring_emit_reg_wait, .emit_reg_write_reg_wait = amdgpu_ring_emit_reg_write_reg_wait_helper, --- linux-azure-5.8-5.8.0.orig/drivers/gpu/drm/amd/amdgpu/vcn_v1_0.h +++ linux-azure-5.8-5.8.0/drivers/gpu/drm/amd/amdgpu/vcn_v1_0.h @@ -24,7 +24,8 @@ #ifndef __VCN_V1_0_H__ #define __VCN_V1_0_H__ -void vcn_v1_0_ring_begin_use(struct amdgpu_ring *ring); +void vcn_v1_0_ring_end_use(struct amdgpu_ring *ring); +void vcn_v1_0_set_pg_for_begin_use(struct amdgpu_ring *ring, bool set_clocks); extern const struct amdgpu_ip_block_version vcn_v1_0_ip_block; --- linux-azure-5.8-5.8.0.orig/drivers/gpu/drm/amd/amdkfd/kfd_chardev.c +++ linux-azure-5.8-5.8.0/drivers/gpu/drm/amd/amdkfd/kfd_chardev.c @@ -1728,6 +1728,7 @@ } mutex_unlock(&p->mutex); + dma_buf_put(dmabuf); args->handle = MAKE_HANDLE(args->gpu_id, idr_handle); @@ -1737,6 +1738,7 @@ amdgpu_amdkfd_gpuvm_free_memory_of_gpu(dev->kgd, (struct kgd_mem *)mem, NULL); err_unlock: mutex_unlock(&p->mutex); + dma_buf_put(dmabuf); return r; } --- linux-azure-5.8-5.8.0.orig/drivers/gpu/drm/amd/amdkfd/kfd_crat.c +++ linux-azure-5.8-5.8.0/drivers/gpu/drm/amd/amdkfd/kfd_crat.c @@ -756,6 +756,7 @@ struct acpi_table_header *crat_table; acpi_status status; void *pcrat_image; + int rc = 0; if (!crat_image) return -EINVAL; @@ -780,13 +781,16 @@ } pcrat_image = kmemdup(crat_table, crat_table->length, GFP_KERNEL); - if (!pcrat_image) - return -ENOMEM; + if (!pcrat_image) { + rc = -ENOMEM; + goto out; + } *crat_image = pcrat_image; *size = crat_table->length; - - return 0; +out: + acpi_put_table(crat_table); + return rc; } /* Memory required to create Virtual CRAT. @@ -970,6 +974,7 @@ CRAT_OEMID_LENGTH); memcpy(crat_table->oem_table_id, acpi_table->oem_table_id, CRAT_OEMTABLEID_LENGTH); + acpi_put_table(acpi_table); } crat_table->total_entries = 0; crat_table->num_domains = 0; @@ -1011,11 +1016,14 @@ (struct crat_subtype_iolink *)sub_type_hdr); if (ret < 0) return ret; - crat_table->length += (sub_type_hdr->length * entries); - crat_table->total_entries += entries; - sub_type_hdr = (typeof(sub_type_hdr))((char *)sub_type_hdr + - sub_type_hdr->length * entries); + if (entries) { + crat_table->length += (sub_type_hdr->length * entries); + crat_table->total_entries += entries; + + sub_type_hdr = (typeof(sub_type_hdr))((char *)sub_type_hdr + + sub_type_hdr->length * entries); + } #else pr_info("IO link not available for non x86 platforms\n"); #endif --- linux-azure-5.8-5.8.0.orig/drivers/gpu/drm/amd/amdkfd/kfd_device_queue_manager.c +++ linux-azure-5.8-5.8.0/drivers/gpu/drm/amd/amdkfd/kfd_device_queue_manager.c @@ -1177,6 +1177,8 @@ dqm->sched_running = false; dqm_unlock(dqm); + pm_release_ib(&dqm->packets); + kfd_gtt_sa_free(dqm->dev, dqm->fence_mem); pm_uninit(&dqm->packets, hanging); @@ -1287,7 +1289,7 @@ if (q->properties.is_active) { increment_queue_count(dqm, q->properties.type); - retval = execute_queues_cpsch(dqm, + execute_queues_cpsch(dqm, KFD_UNMAP_QUEUES_FILTER_DYNAMIC_QUEUES, 0); } --- linux-azure-5.8-5.8.0.orig/drivers/gpu/drm/amd/amdkfd/kfd_device_queue_manager.h +++ linux-azure-5.8-5.8.0/drivers/gpu/drm/amd/amdkfd/kfd_device_queue_manager.h @@ -243,11 +243,11 @@ static inline void dqm_lock(struct device_queue_manager *dqm) { mutex_lock(&dqm->lock_hidden); - dqm->saved_flags = memalloc_nofs_save(); + dqm->saved_flags = memalloc_noreclaim_save(); } static inline void dqm_unlock(struct device_queue_manager *dqm) { - memalloc_nofs_restore(dqm->saved_flags); + memalloc_noreclaim_restore(dqm->saved_flags); mutex_unlock(&dqm->lock_hidden); } --- linux-azure-5.8-5.8.0.orig/drivers/gpu/drm/amd/amdkfd/kfd_device_queue_manager_v10.c +++ linux-azure-5.8-5.8.0/drivers/gpu/drm/amd/amdkfd/kfd_device_queue_manager_v10.c @@ -58,8 +58,9 @@ /* check if sh_mem_config register already configured */ if (qpd->sh_mem_config == 0) { qpd->sh_mem_config = - SH_MEM_ALIGNMENT_MODE_UNALIGNED << - SH_MEM_CONFIG__ALIGNMENT_MODE__SHIFT; + (SH_MEM_ALIGNMENT_MODE_UNALIGNED << + SH_MEM_CONFIG__ALIGNMENT_MODE__SHIFT) | + (3 << SH_MEM_CONFIG__INITIAL_INST_PREFETCH__SHIFT); #if 0 /* TODO: * This shouldn't be an issue with Navi10. Verify. --- linux-azure-5.8-5.8.0.orig/drivers/gpu/drm/amd/amdkfd/kfd_process.c +++ linux-azure-5.8-5.8.0/drivers/gpu/drm/amd/amdkfd/kfd_process.c @@ -1003,8 +1003,10 @@ */ if (!pdd->runtime_inuse) { err = pm_runtime_get_sync(dev->ddev->dev); - if (err < 0) + if (err < 0) { + pm_runtime_put_autosuspend(dev->ddev->dev); return ERR_PTR(err); + } } err = kfd_iommu_bind_process_to_device(pdd); --- linux-azure-5.8-5.8.0.orig/drivers/gpu/drm/amd/amdkfd/kfd_topology.c +++ linux-azure-5.8-5.8.0/drivers/gpu/drm/amd/amdkfd/kfd_topology.c @@ -632,8 +632,10 @@ ret = kobject_init_and_add(dev->kobj_node, &node_type, sys_props.kobj_nodes, "%d", id); - if (ret < 0) + if (ret < 0) { + kobject_put(dev->kobj_node); return ret; + } dev->kobj_mem = kobject_create_and_add("mem_banks", dev->kobj_node); if (!dev->kobj_mem) @@ -680,8 +682,10 @@ return -ENOMEM; ret = kobject_init_and_add(mem->kobj, &mem_type, dev->kobj_mem, "%d", i); - if (ret < 0) + if (ret < 0) { + kobject_put(mem->kobj); return ret; + } mem->attr.name = "properties"; mem->attr.mode = KFD_SYSFS_FILE_MODE; @@ -699,8 +703,10 @@ return -ENOMEM; ret = kobject_init_and_add(cache->kobj, &cache_type, dev->kobj_cache, "%d", i); - if (ret < 0) + if (ret < 0) { + kobject_put(cache->kobj); return ret; + } cache->attr.name = "properties"; cache->attr.mode = KFD_SYSFS_FILE_MODE; @@ -718,8 +724,10 @@ return -ENOMEM; ret = kobject_init_and_add(iolink->kobj, &iolink_type, dev->kobj_iolink, "%d", i); - if (ret < 0) + if (ret < 0) { + kobject_put(iolink->kobj); return ret; + } iolink->attr.name = "properties"; iolink->attr.mode = KFD_SYSFS_FILE_MODE; @@ -798,8 +806,10 @@ ret = kobject_init_and_add(sys_props.kobj_topology, &sysprops_type, &kfd_device->kobj, "topology"); - if (ret < 0) + if (ret < 0) { + kobject_put(sys_props.kobj_topology); return ret; + } sys_props.kobj_nodes = kobject_create_and_add("nodes", sys_props.kobj_topology); --- linux-azure-5.8-5.8.0.orig/drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm.c +++ linux-azure-5.8-5.8.0/drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm.c @@ -954,7 +954,7 @@ amdgpu_dm_init_color_mod(); #ifdef CONFIG_DRM_AMD_DC_HDCP - if (adev->asic_type >= CHIP_RAVEN) { + if (adev->dm.dc->caps.max_links > 0 && adev->asic_type >= CHIP_RAVEN) { adev->dm.hdcp_workqueue = hdcp_create_workqueue(adev, &init_params.cp_psp, adev->dm.dc); if (!adev->dm.hdcp_workqueue) @@ -971,9 +971,6 @@ goto error; } - /* Update the actual used number of crtc */ - adev->mode_info.num_crtc = adev->dm.display_indexes_num; - /* create fake encoders for MST */ dm_dp_create_fake_mst_encoders(adev); @@ -1012,7 +1009,7 @@ #ifdef CONFIG_DRM_AMD_DC_HDCP if (adev->dm.hdcp_workqueue) { - hdcp_destroy(adev->dm.hdcp_workqueue); + hdcp_destroy(&adev->dev->kobj, adev->dm.hdcp_workqueue); adev->dm.hdcp_workqueue = NULL; } @@ -1697,8 +1694,8 @@ link->type = dc_connection_none; prev_sink = link->local_sink; - if (prev_sink != NULL) - dc_sink_retain(prev_sink); + if (prev_sink) + dc_sink_release(prev_sink); switch (link->connector_signal) { case SIGNAL_TYPE_HDMI_TYPE_A: { @@ -2167,8 +2164,10 @@ * TODO: check if we still need the S3 mode update workaround. * If yes, put it here. */ - if (aconnector->dc_sink) + if (aconnector->dc_sink) { amdgpu_dm_update_freesync_caps(connector, NULL); + dc_sink_release(aconnector->dc_sink); + } aconnector->dc_sink = sink; dc_sink_retain(aconnector->dc_sink); @@ -2184,7 +2183,6 @@ drm_connector_update_edid_property(connector, aconnector->edid); - if (aconnector->dc_link->aux_mode) drm_dp_cec_set_edid(&aconnector->dm_dp_aux.aux, aconnector->edid); @@ -2821,12 +2819,18 @@ &dm_atomic_state_funcs); r = amdgpu_display_modeset_create_props(adev); - if (r) + if (r) { + dc_release_state(state->context); + kfree(state); return r; + } r = amdgpu_dm_audio_init(adev); - if (r) + if (r) { + dc_release_state(state->context); + kfree(state); return r; + } return 0; } @@ -2843,6 +2847,8 @@ #if defined(CONFIG_ACPI) struct amdgpu_dm_backlight_caps caps; + memset(&caps, 0, sizeof(caps)); + if (dm->backlight_caps.caps_valid) return; @@ -2881,51 +2887,50 @@ return rc ? 0 : 1; } -static u32 convert_brightness(const struct amdgpu_dm_backlight_caps *caps, - const uint32_t user_brightness) +static int get_brightness_range(const struct amdgpu_dm_backlight_caps *caps, + unsigned *min, unsigned *max) { - u32 min, max, conversion_pace; - u32 brightness = user_brightness; - if (!caps) - goto out; + return 0; - if (!caps->aux_support) { - max = caps->max_input_signal; - min = caps->min_input_signal; - /* - * The brightness input is in the range 0-255 - * It needs to be rescaled to be between the - * requested min and max input signal - * It also needs to be scaled up by 0x101 to - * match the DC interface which has a range of - * 0 to 0xffff - */ - conversion_pace = 0x101; - brightness = - user_brightness - * conversion_pace - * (max - min) - / AMDGPU_MAX_BL_LEVEL - + min * conversion_pace; + if (caps->aux_support) { + // Firmware limits are in nits, DC API wants millinits. + *max = 1000 * caps->aux_max_input_signal; + *min = 1000 * caps->aux_min_input_signal; } else { - /* TODO - * We are doing a linear interpolation here, which is OK but - * does not provide the optimal result. We probably want - * something close to the Perceptual Quantizer (PQ) curve. - */ - max = caps->aux_max_input_signal; - min = caps->aux_min_input_signal; - - brightness = (AMDGPU_MAX_BL_LEVEL - user_brightness) * min - + user_brightness * max; - // Multiple the value by 1000 since we use millinits - brightness *= 1000; - brightness = DIV_ROUND_CLOSEST(brightness, AMDGPU_MAX_BL_LEVEL); + // Firmware limits are 8-bit, PWM control is 16-bit. + *max = 0x101 * caps->max_input_signal; + *min = 0x101 * caps->min_input_signal; } + return 1; +} -out: - return brightness; +static u32 convert_brightness_from_user(const struct amdgpu_dm_backlight_caps *caps, + uint32_t brightness) +{ + unsigned min, max; + + if (!get_brightness_range(caps, &min, &max)) + return brightness; + + // Rescale 0..255 to min..max + return min + DIV_ROUND_CLOSEST((max - min) * brightness, + AMDGPU_MAX_BL_LEVEL); +} + +static u32 convert_brightness_to_user(const struct amdgpu_dm_backlight_caps *caps, + uint32_t brightness) +{ + unsigned min, max; + + if (!get_brightness_range(caps, &min, &max)) + return brightness; + + if (brightness < min) + return 0; + // Rescale min..max to 0..255 + return DIV_ROUND_CLOSEST(AMDGPU_MAX_BL_LEVEL * (brightness - min), + max - min); } static int amdgpu_dm_backlight_update_status(struct backlight_device *bd) @@ -2941,7 +2946,7 @@ link = (struct dc_link *)dm->backlight_link; - brightness = convert_brightness(&caps, bd->props.brightness); + brightness = convert_brightness_from_user(&caps, bd->props.brightness); // Change brightness based on AUX property if (caps.aux_support) return set_backlight_via_aux(link, brightness); @@ -2958,7 +2963,7 @@ if (ret == DC_ERROR_UNEXPECTED) return bd->props.brightness; - return ret; + return convert_brightness_to_user(&dm->backlight_caps, ret); } static const struct backlight_ops amdgpu_dm_backlight_ops = { @@ -3079,6 +3084,10 @@ enum dc_connection_type new_connection_type = dc_connection_none; const struct dc_plane_cap *plane; + dm->display_indexes_num = dm->dc->caps.max_streams; + /* Update the actual used number of crtc */ + adev->mode_info.num_crtc = adev->dm.display_indexes_num; + link_cnt = dm->dc->caps.max_links; if (amdgpu_dm_mode_config_init(dm->adev)) { DRM_ERROR("DM: Failed to initialize mode config\n"); @@ -3140,8 +3149,6 @@ goto fail; } - dm->display_indexes_num = dm->dc->caps.max_streams; - /* loops over all connectors on the board */ for (i = 0; i < link_cnt; i++) { struct dc_link *link = NULL; @@ -4854,6 +4861,13 @@ struct amdgpu_device *adev = connector->dev->dev_private; struct amdgpu_display_manager *dm = &adev->dm; + /* + * Call only if mst_mgr was iniitalized before since it's not done + * for all connector types. + */ + if (aconnector->mst_mgr.dev) + drm_dp_mst_topology_mgr_destroy(&aconnector->mst_mgr); + #if defined(CONFIG_BACKLIGHT_CLASS_DEVICE) ||\ defined(CONFIG_BACKLIGHT_CLASS_DEVICE_MODULE) @@ -5249,19 +5263,6 @@ { } -static bool does_crtc_have_active_cursor(struct drm_crtc_state *new_crtc_state) -{ - struct drm_device *dev = new_crtc_state->crtc->dev; - struct drm_plane *plane; - - drm_for_each_plane_mask(plane, dev, new_crtc_state->plane_mask) { - if (plane->type == DRM_PLANE_TYPE_CURSOR) - return true; - } - - return false; -} - static int count_crtc_active_planes(struct drm_crtc_state *new_crtc_state) { struct drm_atomic_state *state = new_crtc_state->state; @@ -5341,19 +5342,20 @@ return ret; } - /* In some use cases, like reset, no stream is attached */ - if (!dm_crtc_state->stream) - return 0; - /* - * We want at least one hardware plane enabled to use - * the stream with a cursor enabled. + * We require the primary plane to be enabled whenever the CRTC is, otherwise + * drm_mode_cursor_universal may end up trying to enable the cursor plane while all other + * planes are disabled, which is not supported by the hardware. And there is legacy + * userspace which stops using the HW cursor altogether in response to the resulting EINVAL. */ - if (state->enable && state->active && - does_crtc_have_active_cursor(state) && - dm_crtc_state->active_planes == 0) + if (state->enable && + !(state->plane_mask & drm_plane_mask(crtc->primary))) return -EINVAL; + /* In some use cases, like reset, no stream is attached */ + if (!dm_crtc_state->stream) + return 0; + if (dc_validate_stream(dc, dm_crtc_state->stream) == DC_OK) return 0; @@ -7656,14 +7658,14 @@ ret = PTR_ERR_OR_ZERO(conn_state); if (ret) - goto err; + goto out; /* Attach crtc to drm_atomic_state*/ crtc_state = drm_atomic_get_crtc_state(state, &disconnected_acrtc->base); ret = PTR_ERR_OR_ZERO(crtc_state); if (ret) - goto err; + goto out; /* force a restore */ crtc_state->mode_changed = true; @@ -7673,17 +7675,15 @@ ret = PTR_ERR_OR_ZERO(plane_state); if (ret) - goto err; - + goto out; /* Call commit internally with the state we just constructed */ ret = drm_atomic_commit(state); - if (!ret) - return 0; -err: - DRM_ERROR("Restoring old state failed with %i\n", ret); +out: drm_atomic_state_put(state); + if (ret) + DRM_ERROR("Restoring old state failed with %i\n", ret); return ret; } @@ -8182,8 +8182,7 @@ dm_old_plane_state->dc_state, dm_state->context)) { - ret = EINVAL; - return ret; + return -EINVAL; } @@ -8686,6 +8685,29 @@ if (ret) goto fail; + /* Check connector changes */ + for_each_oldnew_connector_in_state(state, connector, old_con_state, new_con_state, i) { + struct dm_connector_state *dm_old_con_state = to_dm_connector_state(old_con_state); + struct dm_connector_state *dm_new_con_state = to_dm_connector_state(new_con_state); + + /* Skip connectors that are disabled or part of modeset already. */ + if (!old_con_state->crtc && !new_con_state->crtc) + continue; + + if (!new_con_state->crtc) + continue; + + new_crtc_state = drm_atomic_get_crtc_state(state, new_con_state->crtc); + if (IS_ERR(new_crtc_state)) { + ret = PTR_ERR(new_crtc_state); + goto fail; + } + + if (dm_old_con_state->abm_level != + dm_new_con_state->abm_level) + new_crtc_state->connectors_changed = true; + } + #if defined(CONFIG_DRM_AMD_DC_DCN) if (!compute_mst_dsc_configs_for_state(state, dm_state->context)) goto fail; --- linux-azure-5.8-5.8.0.orig/drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm_color.c +++ linux-azure-5.8-5.8.0/drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm_color.c @@ -195,10 +195,13 @@ bool has_rom) { struct dc_gamma *gamma = NULL; + struct calculate_buffer cal_buffer = {0}; bool res; ASSERT(lut && lut_size == MAX_COLOR_LEGACY_LUT_ENTRIES); + cal_buffer.buffer_index = -1; + gamma = dc_create_gamma(); if (!gamma) return -ENOMEM; @@ -208,7 +211,7 @@ __drm_lut_to_dc_gamma(lut, gamma, true); res = mod_color_calculate_regamma_params(func, gamma, true, has_rom, - NULL); + NULL, &cal_buffer); dc_gamma_release(&gamma); @@ -221,10 +224,13 @@ bool has_rom) { struct dc_gamma *gamma = NULL; + struct calculate_buffer cal_buffer = {0}; bool res; ASSERT(lut && lut_size == MAX_COLOR_LUT_ENTRIES); + cal_buffer.buffer_index = -1; + gamma = dc_create_gamma(); if (!gamma) return -ENOMEM; @@ -248,7 +254,7 @@ */ gamma->type = GAMMA_CS_TFM_1D; res = mod_color_calculate_regamma_params(func, gamma, false, - has_rom, NULL); + has_rom, NULL, &cal_buffer); } dc_gamma_release(&gamma); --- linux-azure-5.8-5.8.0.orig/drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm_crc.c +++ linux-azure-5.8-5.8.0/drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm_crc.c @@ -113,7 +113,7 @@ mutex_lock(&adev->dm.dc_lock); /* Enable CRTC CRC generation if necessary. */ - if (dm_is_crc_source_crtc(source)) { + if (dm_is_crc_source_crtc(source) || source == AMDGPU_DM_PIPE_CRC_SOURCE_NONE) { if (!dc_stream_configure_crc(stream_state->ctx->dc, stream_state, enable, enable)) { ret = -EINVAL; --- linux-azure-5.8-5.8.0.orig/drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm_hdcp.c +++ linux-azure-5.8-5.8.0/drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm_hdcp.c @@ -376,7 +376,7 @@ } -void hdcp_destroy(struct hdcp_workqueue *hdcp_work) +void hdcp_destroy(struct kobject *kobj, struct hdcp_workqueue *hdcp_work) { int i = 0; @@ -385,6 +385,7 @@ cancel_delayed_work_sync(&hdcp_work[i].watchdog_timer_dwork); } + sysfs_remove_bin_file(kobj, &hdcp_work[0].attr); kfree(hdcp_work->srm); kfree(hdcp_work->srm_temp); kfree(hdcp_work); @@ -568,7 +569,7 @@ int i = 0; hdcp_work = kcalloc(max_caps, sizeof(*hdcp_work), GFP_KERNEL); - if (hdcp_work == NULL) + if (ZERO_OR_NULL_PTR(hdcp_work)) return NULL; hdcp_work->srm = kcalloc(PSP_HDCP_SRM_FIRST_GEN_MAX_SIZE, sizeof(*hdcp_work->srm), GFP_KERNEL); --- linux-azure-5.8-5.8.0.orig/drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm_hdcp.h +++ linux-azure-5.8-5.8.0/drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm_hdcp.h @@ -69,7 +69,7 @@ void hdcp_reset_display(struct hdcp_workqueue *work, unsigned int link_index); void hdcp_handle_cpirq(struct hdcp_workqueue *work, unsigned int link_index); -void hdcp_destroy(struct hdcp_workqueue *work); +void hdcp_destroy(struct kobject *kobj, struct hdcp_workqueue *work); struct hdcp_workqueue *hdcp_create_workqueue(struct amdgpu_device *adev, struct cp_psp *cp_psp, struct dc *dc); --- linux-azure-5.8-5.8.0.orig/drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm_mst_types.c +++ linux-azure-5.8-5.8.0/drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm_mst_types.c @@ -67,7 +67,7 @@ result = dc_link_aux_transfer_raw(TO_DM_AUX(aux)->ddc_service, &payload, &operation_result); - if (payload.write) + if (payload.write && result >= 0) result = msg->size; if (result < 0) @@ -790,6 +790,9 @@ if (computed_streams[i]) continue; + if (dcn20_remove_stream_from_ctx(stream->ctx->dc, dc_state, stream) != DC_OK) + return false; + mutex_lock(&aconnector->mst_mgr.lock); if (!compute_mst_dsc_configs_for_link(state, dc_state, stream->link)) { mutex_unlock(&aconnector->mst_mgr.lock); @@ -807,7 +810,8 @@ stream = dc_state->streams[i]; if (stream->timing.flags.DSC == 1) - dcn20_add_dsc_to_stream_resource(stream->ctx->dc, dc_state, stream); + if (dcn20_add_dsc_to_stream_resource(stream->ctx->dc, dc_state, stream) != DC_OK) + return false; } return true; --- linux-azure-5.8-5.8.0.orig/drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm_pp_smu.c +++ linux-azure-5.8-5.8.0/drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm_pp_smu.c @@ -106,7 +106,7 @@ adev->powerplay.pp_funcs->display_configuration_change( adev->powerplay.pp_handle, &adev->pm.pm_display_cfg); - else + else if (adev->smu.ppt_funcs) smu_display_configuration_change(smu, &adev->pm.pm_display_cfg); @@ -530,6 +530,8 @@ &pp_clk_info); else if (adev->smu.ppt_funcs) ret = smu_get_current_clocks(&adev->smu, &pp_clk_info); + else + return false; if (ret) return false; @@ -590,7 +592,7 @@ if (pp_funcs && pp_funcs->set_watermarks_for_clocks_ranges) pp_funcs->set_watermarks_for_clocks_ranges(pp_handle, &wm_with_clock_ranges); - else + else if (adev->smu.ppt_funcs) smu_set_watermarks_for_clock_ranges(&adev->smu, &wm_with_clock_ranges); } --- linux-azure-5.8-5.8.0.orig/drivers/gpu/drm/amd/display/dc/bios/command_table.c +++ linux-azure-5.8-5.8.0/drivers/gpu/drm/amd/display/dc/bios/command_table.c @@ -245,6 +245,23 @@ cntl->enable_dp_audio); params.ucLaneNum = (uint8_t)(cntl->lanes_number); + switch (cntl->color_depth) { + case COLOR_DEPTH_888: + params.ucBitPerColor = PANEL_8BIT_PER_COLOR; + break; + case COLOR_DEPTH_101010: + params.ucBitPerColor = PANEL_10BIT_PER_COLOR; + break; + case COLOR_DEPTH_121212: + params.ucBitPerColor = PANEL_12BIT_PER_COLOR; + break; + case COLOR_DEPTH_161616: + params.ucBitPerColor = PANEL_16BIT_PER_COLOR; + break; + default: + break; + } + if (EXEC_BIOS_CMD_TABLE(DIGxEncoderControl, params)) result = BP_RESULT_OK; @@ -274,6 +291,23 @@ cntl->enable_dp_audio)); params.ucLaneNum = (uint8_t)(cntl->lanes_number); + switch (cntl->color_depth) { + case COLOR_DEPTH_888: + params.ucBitPerColor = PANEL_8BIT_PER_COLOR; + break; + case COLOR_DEPTH_101010: + params.ucBitPerColor = PANEL_10BIT_PER_COLOR; + break; + case COLOR_DEPTH_121212: + params.ucBitPerColor = PANEL_12BIT_PER_COLOR; + break; + case COLOR_DEPTH_161616: + params.ucBitPerColor = PANEL_16BIT_PER_COLOR; + break; + default: + break; + } + if (EXEC_BIOS_CMD_TABLE(DIGxEncoderControl, params)) result = BP_RESULT_OK; @@ -1057,6 +1091,19 @@ * driver choose program it itself, i.e. here we program it * to 888 by default. */ + if (bp_params->signal_type == SIGNAL_TYPE_HDMI_TYPE_A) + switch (bp_params->color_depth) { + case TRANSMITTER_COLOR_DEPTH_30: + /* yes this is correct, the atom define is wrong */ + clk.sPCLKInput.ucMiscInfo |= PIXEL_CLOCK_V5_MISC_HDMI_32BPP; + break; + case TRANSMITTER_COLOR_DEPTH_36: + /* yes this is correct, the atom define is wrong */ + clk.sPCLKInput.ucMiscInfo |= PIXEL_CLOCK_V5_MISC_HDMI_30BPP; + break; + default: + break; + } if (EXEC_BIOS_CMD_TABLE(SetPixelClock, clk)) result = BP_RESULT_OK; @@ -1135,6 +1182,20 @@ * driver choose program it itself, i.e. here we pass required * target rate that includes deep color. */ + if (bp_params->signal_type == SIGNAL_TYPE_HDMI_TYPE_A) + switch (bp_params->color_depth) { + case TRANSMITTER_COLOR_DEPTH_30: + clk.sPCLKInput.ucMiscInfo |= PIXEL_CLOCK_V6_MISC_HDMI_30BPP_V6; + break; + case TRANSMITTER_COLOR_DEPTH_36: + clk.sPCLKInput.ucMiscInfo |= PIXEL_CLOCK_V6_MISC_HDMI_36BPP_V6; + break; + case TRANSMITTER_COLOR_DEPTH_48: + clk.sPCLKInput.ucMiscInfo |= PIXEL_CLOCK_V6_MISC_HDMI_48BPP; + break; + default: + break; + } if (EXEC_BIOS_CMD_TABLE(SetPixelClock, clk)) result = BP_RESULT_OK; --- linux-azure-5.8-5.8.0.orig/drivers/gpu/drm/amd/display/dc/clk_mgr/dce112/dce112_clk_mgr.c +++ linux-azure-5.8-5.8.0/drivers/gpu/drm/amd/display/dc/clk_mgr/dce112/dce112_clk_mgr.c @@ -79,8 +79,7 @@ memset(&dce_clk_params, 0, sizeof(dce_clk_params)); /* Make sure requested clock isn't lower than minimum threshold*/ - if (requested_clk_khz > 0) - requested_clk_khz = max(requested_clk_khz, + requested_clk_khz = max(requested_clk_khz, clk_mgr_dce->base.dentist_vco_freq_khz / 62); dce_clk_params.target_clock_frequency = requested_clk_khz; --- linux-azure-5.8-5.8.0.orig/drivers/gpu/drm/amd/display/dc/clk_mgr/dcn10/rv1_clk_mgr.c +++ linux-azure-5.8-5.8.0/drivers/gpu/drm/amd/display/dc/clk_mgr/dcn10/rv1_clk_mgr.c @@ -85,12 +85,77 @@ return disp_clk_threshold; } -static void ramp_up_dispclk_with_dpp(struct clk_mgr_internal *clk_mgr, struct dc *dc, struct dc_clocks *new_clocks) +static void ramp_up_dispclk_with_dpp( + struct clk_mgr_internal *clk_mgr, + struct dc *dc, + struct dc_clocks *new_clocks, + bool safe_to_lower) { int i; int dispclk_to_dpp_threshold = rv1_determine_dppclk_threshold(clk_mgr, new_clocks); bool request_dpp_div = new_clocks->dispclk_khz > new_clocks->dppclk_khz; + /* this function is to change dispclk, dppclk and dprefclk according to + * bandwidth requirement. Its call stack is rv1_update_clocks --> + * update_clocks --> dcn10_prepare_bandwidth / dcn10_optimize_bandwidth + * --> prepare_bandwidth / optimize_bandwidth. before change dcn hw, + * prepare_bandwidth will be called first to allow enough clock, + * watermark for change, after end of dcn hw change, optimize_bandwidth + * is executed to lower clock to save power for new dcn hw settings. + * + * below is sequence of commit_planes_for_stream: + * + * step 1: prepare_bandwidth - raise clock to have enough bandwidth + * step 2: lock_doublebuffer_enable + * step 3: pipe_control_lock(true) - make dchubp register change will + * not take effect right way + * step 4: apply_ctx_for_surface - program dchubp + * step 5: pipe_control_lock(false) - dchubp register change take effect + * step 6: optimize_bandwidth --> dc_post_update_surfaces_to_stream + * for full_date, optimize clock to save power + * + * at end of step 1, dcn clocks (dprefclk, dispclk, dppclk) may be + * changed for new dchubp configuration. but real dcn hub dchubps are + * still running with old configuration until end of step 5. this need + * clocks settings at step 1 should not less than that before step 1. + * this is checked by two conditions: 1. if (should_set_clock(safe_to_lower + * , new_clocks->dispclk_khz, clk_mgr_base->clks.dispclk_khz) || + * new_clocks->dispclk_khz == clk_mgr_base->clks.dispclk_khz) + * 2. request_dpp_div = new_clocks->dispclk_khz > new_clocks->dppclk_khz + * + * the second condition is based on new dchubp configuration. dppclk + * for new dchubp may be different from dppclk before step 1. + * for example, before step 1, dchubps are as below: + * pipe 0: recout=(0,40,1920,980) viewport=(0,0,1920,979) + * pipe 1: recout=(0,0,1920,1080) viewport=(0,0,1920,1080) + * for dppclk for pipe0 need dppclk = dispclk + * + * new dchubp pipe split configuration: + * pipe 0: recout=(0,0,960,1080) viewport=(0,0,960,1080) + * pipe 1: recout=(960,0,960,1080) viewport=(960,0,960,1080) + * dppclk only needs dppclk = dispclk /2. + * + * dispclk, dppclk are not lock by otg master lock. they take effect + * after step 1. during this transition, dispclk are the same, but + * dppclk is changed to half of previous clock for old dchubp + * configuration between step 1 and step 6. This may cause p-state + * warning intermittently. + * + * for new_clocks->dispclk_khz == clk_mgr_base->clks.dispclk_khz, we + * need make sure dppclk are not changed to less between step 1 and 6. + * for new_clocks->dispclk_khz > clk_mgr_base->clks.dispclk_khz, + * new display clock is raised, but we do not know ratio of + * new_clocks->dispclk_khz and clk_mgr_base->clks.dispclk_khz, + * new_clocks->dispclk_khz /2 does not guarantee equal or higher than + * old dppclk. we could ignore power saving different between + * dppclk = displck and dppclk = dispclk / 2 between step 1 and step 6. + * as long as safe_to_lower = false, set dpclk = dispclk to simplify + * condition check. + * todo: review this change for other asic. + **/ + if (!safe_to_lower) + request_dpp_div = false; + /* set disp clk to dpp clk threshold */ clk_mgr->funcs->set_dispclk(clk_mgr, dispclk_to_dpp_threshold); @@ -209,7 +274,7 @@ /* program dispclk on = as a w/a for sleep resume clock ramping issues */ if (should_set_clock(safe_to_lower, new_clocks->dispclk_khz, clk_mgr_base->clks.dispclk_khz) || new_clocks->dispclk_khz == clk_mgr_base->clks.dispclk_khz) { - ramp_up_dispclk_with_dpp(clk_mgr, dc, new_clocks); + ramp_up_dispclk_with_dpp(clk_mgr, dc, new_clocks, safe_to_lower); clk_mgr_base->clks.dispclk_khz = new_clocks->dispclk_khz; send_request_to_lower = true; } --- linux-azure-5.8-5.8.0.orig/drivers/gpu/drm/amd/display/dc/clk_mgr/dcn21/rn_clk_mgr.c +++ linux-azure-5.8-5.8.0/drivers/gpu/drm/amd/display/dc/clk_mgr/dcn21/rn_clk_mgr.c @@ -158,8 +158,17 @@ new_clocks->dppclk_khz = 100000; } - if (should_set_clock(safe_to_lower, new_clocks->dppclk_khz, clk_mgr->base.clks.dppclk_khz)) { - if (clk_mgr->base.clks.dppclk_khz > new_clocks->dppclk_khz) + /* + * Temporally ignore thew 0 cases for disp and dpp clks. + * We may have a new feature that requires 0 clks in the future. + */ + if (new_clocks->dppclk_khz == 0 || new_clocks->dispclk_khz == 0) { + new_clocks->dppclk_khz = clk_mgr_base->clks.dppclk_khz; + new_clocks->dispclk_khz = clk_mgr_base->clks.dispclk_khz; + } + + if (should_set_clock(safe_to_lower, new_clocks->dppclk_khz, clk_mgr_base->clks.dppclk_khz)) { + if (clk_mgr_base->clks.dppclk_khz > new_clocks->dppclk_khz) dpp_clock_lowered = true; clk_mgr_base->clks.dppclk_khz = new_clocks->dppclk_khz; update_dppclk = true; @@ -558,24 +567,24 @@ .wm_inst = WM_B, .wm_type = WM_TYPE_PSTATE_CHG, .pstate_latency_us = 11.72, - .sr_exit_time_us = 10.12, - .sr_enter_plus_exit_time_us = 11.48, + .sr_exit_time_us = 11.12, + .sr_enter_plus_exit_time_us = 12.48, .valid = true, }, { .wm_inst = WM_C, .wm_type = WM_TYPE_PSTATE_CHG, .pstate_latency_us = 11.72, - .sr_exit_time_us = 10.12, - .sr_enter_plus_exit_time_us = 11.48, + .sr_exit_time_us = 11.12, + .sr_enter_plus_exit_time_us = 12.48, .valid = true, }, { .wm_inst = WM_D, .wm_type = WM_TYPE_PSTATE_CHG, .pstate_latency_us = 11.72, - .sr_exit_time_us = 10.12, - .sr_enter_plus_exit_time_us = 11.48, + .sr_exit_time_us = 11.12, + .sr_enter_plus_exit_time_us = 12.48, .valid = true, }, } @@ -699,6 +708,7 @@ { struct dc_debug_options *debug = &ctx->dc->debug; struct dpm_clocks clock_table = { 0 }; + enum pp_smu_status status = 0; clk_mgr->base.ctx = ctx; clk_mgr->base.funcs = &dcn21_funcs; @@ -751,8 +761,10 @@ clk_mgr->base.bw_params = &rn_bw_params; if (pp_smu && pp_smu->rn_funcs.get_dpm_clock_table) { - pp_smu->rn_funcs.get_dpm_clock_table(&pp_smu->rn_funcs.pp_smu, &clock_table); - if (ctx->dc_bios && ctx->dc_bios->integrated_info) { + status = pp_smu->rn_funcs.get_dpm_clock_table(&pp_smu->rn_funcs.pp_smu, &clock_table); + + if (status == PP_SMU_RESULT_OK && + ctx->dc_bios && ctx->dc_bios->integrated_info) { rn_clk_mgr_helper_populate_bw_params (clk_mgr->base.bw_params, &clock_table, ctx->dc_bios->integrated_info); } } --- linux-azure-5.8-5.8.0.orig/drivers/gpu/drm/amd/display/dc/core/dc.c +++ linux-azure-5.8-5.8.0/drivers/gpu/drm/amd/display/dc/core/dc.c @@ -2538,7 +2538,7 @@ copy_stream_update_to_stream(dc, context, stream, stream_update); - if (update_type > UPDATE_TYPE_FAST) { + if (update_type >= UPDATE_TYPE_FULL) { if (!dc->res_pool->funcs->validate_bandwidth(dc, context, false)) { DC_ERROR("Mode validation failed for stream update!\n"); dc_release_state(context); --- linux-azure-5.8-5.8.0.orig/drivers/gpu/drm/amd/display/dc/core/dc_link.c +++ linux-azure-5.8-5.8.0/drivers/gpu/drm/amd/display/dc/core/dc_link.c @@ -767,6 +767,7 @@ sink_caps->signal = dp_passive_dongle_detection(link->ddc, sink_caps, audio_support); + link->dpcd_caps.dongle_type = sink_caps->dongle_type; } return true; @@ -2438,7 +2439,7 @@ /* A hack to avoid failing any modes for EDID override feature on * topology change such as lower quality cable for DP or different dongle */ - if (link->remote_sinks[0]) + if (link->remote_sinks[0] && link->remote_sinks[0]->sink_signal == SIGNAL_TYPE_VIRTUAL) return DC_OK; /* Passive Dongle */ @@ -2468,9 +2469,14 @@ static struct abm *get_abm_from_stream_res(const struct dc_link *link) { int i; - struct dc *dc = link->ctx->dc; + struct dc *dc = NULL; struct abm *abm = NULL; + if (!link || !link->ctx) + return NULL; + + dc = link->ctx->dc; + for (i = 0; i < MAX_PIPES; i++) { struct pipe_ctx pipe_ctx = dc->current_state->res_ctx.pipe_ctx[i]; struct dc_stream_state *stream = pipe_ctx.stream; @@ -3268,7 +3274,6 @@ #if defined(CONFIG_DRM_AMD_DC_HDCP) update_psp_stream_config(pipe_ctx, true); #endif - dc->hwss.blank_stream(pipe_ctx); if (pipe_ctx->stream->signal == SIGNAL_TYPE_DISPLAY_PORT_MST) @@ -3373,8 +3378,12 @@ uint32_t kbps; if (timing->flags.DSC) { - kbps = (timing->pix_clk_100hz * timing->dsc_cfg.bits_per_pixel); - kbps = kbps / 160 + ((kbps % 160) ? 1 : 0); + struct fixed31_32 link_bw_kbps; + + link_bw_kbps = dc_fixpt_from_int(timing->pix_clk_100hz); + link_bw_kbps = dc_fixpt_div_int(link_bw_kbps, 160); + link_bw_kbps = dc_fixpt_mul_int(link_bw_kbps, timing->dsc_cfg.bits_per_pixel); + kbps = dc_fixpt_ceil(link_bw_kbps); return kbps; } --- linux-azure-5.8-5.8.0.orig/drivers/gpu/drm/amd/display/dc/core/dc_link_ddc.c +++ linux-azure-5.8-5.8.0/drivers/gpu/drm/amd/display/dc/core/dc_link_ddc.c @@ -503,7 +503,7 @@ uint8_t *read_buf, uint32_t read_size) { - bool ret = false; + bool success = true; uint32_t payload_size = dal_ddc_service_is_in_aux_transaction_mode(ddc) ? DEFAULT_AUX_MAX_DATA_SIZE : EDID_SEGMENT_SIZE; @@ -527,7 +527,6 @@ * but we want to read 256 over i2c!!!!*/ if (dal_ddc_service_is_in_aux_transaction_mode(ddc)) { struct aux_payload payload; - bool read_available = true; payload.i2c_over_aux = true; payload.address = address; @@ -536,21 +535,26 @@ if (write_size != 0) { payload.write = true; - payload.mot = false; + /* should not set mot (middle of transaction) to 0 + * if there are pending read payloads + */ + payload.mot = read_size == 0 ? false : true; payload.length = write_size; payload.data = write_buf; - ret = dal_ddc_submit_aux_command(ddc, &payload); - read_available = ret; + success = dal_ddc_submit_aux_command(ddc, &payload); } - if (read_size != 0 && read_available) { + if (read_size != 0 && success) { payload.write = false; + /* should set mot (middle of transaction) to 0 + * since it is the last payload to send + */ payload.mot = false; payload.length = read_size; payload.data = read_buf; - ret = dal_ddc_submit_aux_command(ddc, &payload); + success = dal_ddc_submit_aux_command(ddc, &payload); } } else { struct i2c_command command = {0}; @@ -573,7 +577,7 @@ command.number_of_payloads = dal_ddc_i2c_payloads_get_count(&payloads); - ret = dm_helpers_submit_i2c( + success = dm_helpers_submit_i2c( ddc->ctx, ddc->link, &command); @@ -581,7 +585,7 @@ dal_ddc_i2c_payloads_destroy(&payloads); } - return ret; + return success; } bool dal_ddc_submit_aux_command(struct ddc_service *ddc, @@ -598,7 +602,7 @@ do { struct aux_payload current_payload; - bool is_end_of_payload = (retrieved + DEFAULT_AUX_MAX_DATA_SIZE) > + bool is_end_of_payload = (retrieved + DEFAULT_AUX_MAX_DATA_SIZE) >= payload->length; current_payload.address = payload->address; @@ -607,7 +611,10 @@ current_payload.i2c_over_aux = payload->i2c_over_aux; current_payload.length = is_end_of_payload ? payload->length - retrieved : DEFAULT_AUX_MAX_DATA_SIZE; - current_payload.mot = !is_end_of_payload; + /* set mot (middle of transaction) to false + * if it is the last payload + */ + current_payload.mot = is_end_of_payload ? payload->mot:true; current_payload.reply = payload->reply; current_payload.write = payload->write; --- linux-azure-5.8-5.8.0.orig/drivers/gpu/drm/amd/display/dc/core/dc_link_dp.c +++ linux-azure-5.8-5.8.0/drivers/gpu/drm/amd/display/dc/core/dc_link_dp.c @@ -855,13 +855,13 @@ switch (dpcd_aux_read_interval) { case 0x01: - aux_rd_interval_us = 400; + aux_rd_interval_us = 4000; break; case 0x02: - aux_rd_interval_us = 4000; + aux_rd_interval_us = 8000; break; case 0x03: - aux_rd_interval_us = 8000; + aux_rd_interval_us = 12000; break; case 0x04: aux_rd_interval_us = 16000; @@ -2296,6 +2296,9 @@ initial_link_setting; uint32_t link_bw; + if (req_bw > dc_link_bandwidth_kbps(link, &link->verified_link_cap)) + return false; + /* search for the minimum link setting that: * 1. is supported according to the link training result * 2. could support the b/w requested by the timing @@ -4114,7 +4117,7 @@ if (edp_config_set.bits.PANEL_MODE_EDP != panel_mode_edp) { - enum ddc_result result = DDC_RESULT_UNKNOWN; + enum dc_status result = DC_ERROR_UNEXPECTED; edp_config_set.bits.PANEL_MODE_EDP = panel_mode_edp; @@ -4124,7 +4127,7 @@ &edp_config_set.raw, sizeof(edp_config_set.raw)); - ASSERT(result == DDC_RESULT_SUCESSFULL); + ASSERT(result == DC_OK); } } DC_LOG_DETECTION_DP_CAPS("Link: %d eDP panel mode supported: %d " @@ -4346,9 +4349,9 @@ link->connector_signal != SIGNAL_TYPE_DISPLAY_PORT)) return false; - if (!core_link_read_dpcd(link, DP_SOURCE_BACKLIGHT_CURRENT_PEAK, + if (core_link_read_dpcd(link, DP_SOURCE_BACKLIGHT_CURRENT_PEAK, dpcd_backlight_get.raw, - sizeof(union dpcd_source_backlight_get))) + sizeof(union dpcd_source_backlight_get)) != DC_OK) return false; *backlight_millinits_avg = @@ -4387,9 +4390,9 @@ link->connector_signal != SIGNAL_TYPE_DISPLAY_PORT)) return false; - if (!core_link_read_dpcd(link, DP_SOURCE_BACKLIGHT_LEVEL, + if (core_link_read_dpcd(link, DP_SOURCE_BACKLIGHT_LEVEL, (uint8_t *) backlight_millinits, - sizeof(uint32_t))) + sizeof(uint32_t)) != DC_OK) return false; return true; --- linux-azure-5.8-5.8.0.orig/drivers/gpu/drm/amd/display/dc/dc_stream.h +++ linux-azure-5.8-5.8.0/drivers/gpu/drm/amd/display/dc/dc_stream.h @@ -222,7 +222,7 @@ union stream_update_flags update_flags; }; -#define ABM_LEVEL_IMMEDIATE_DISABLE 0xFFFFFFFF +#define ABM_LEVEL_IMMEDIATE_DISABLE 255 struct dc_stream_update { struct dc_stream_state *stream; --- linux-azure-5.8-5.8.0.orig/drivers/gpu/drm/amd/display/dc/dce/dce_clock_source.c +++ linux-azure-5.8-5.8.0/drivers/gpu/drm/amd/display/dc/dce/dce_clock_source.c @@ -871,6 +871,20 @@ bp_pc_params.flags.SET_EXTERNAL_REF_DIV_SRC = pll_settings->use_external_clk; + switch (pix_clk_params->color_depth) { + case COLOR_DEPTH_101010: + bp_pc_params.color_depth = TRANSMITTER_COLOR_DEPTH_30; + break; + case COLOR_DEPTH_121212: + bp_pc_params.color_depth = TRANSMITTER_COLOR_DEPTH_36; + break; + case COLOR_DEPTH_161616: + bp_pc_params.color_depth = TRANSMITTER_COLOR_DEPTH_48; + break; + default: + break; + } + if (clk_src->bios->funcs->set_pixel_clock( clk_src->bios, &bp_pc_params) != BP_RESULT_OK) return false; --- linux-azure-5.8-5.8.0.orig/drivers/gpu/drm/amd/display/dc/dce/dce_link_encoder.c +++ linux-azure-5.8-5.8.0/drivers/gpu/drm/amd/display/dc/dce/dce_link_encoder.c @@ -119,7 +119,8 @@ .disable_hpd = dce110_link_encoder_disable_hpd, .is_dig_enabled = dce110_is_dig_enabled, .destroy = dce110_link_encoder_destroy, - .get_max_link_cap = dce110_link_encoder_get_max_link_cap + .get_max_link_cap = dce110_link_encoder_get_max_link_cap, + .get_dig_frontend = dce110_get_dig_frontend, }; static enum bp_result link_transmitter_control( @@ -235,6 +236,44 @@ } +unsigned int dce110_get_dig_frontend(struct link_encoder *enc) +{ + struct dce110_link_encoder *enc110 = TO_DCE110_LINK_ENC(enc); + u32 value; + enum engine_id result; + + REG_GET(DIG_BE_CNTL, DIG_FE_SOURCE_SELECT, &value); + + switch (value) { + case DCE110_DIG_FE_SOURCE_SELECT_DIGA: + result = ENGINE_ID_DIGA; + break; + case DCE110_DIG_FE_SOURCE_SELECT_DIGB: + result = ENGINE_ID_DIGB; + break; + case DCE110_DIG_FE_SOURCE_SELECT_DIGC: + result = ENGINE_ID_DIGC; + break; + case DCE110_DIG_FE_SOURCE_SELECT_DIGD: + result = ENGINE_ID_DIGD; + break; + case DCE110_DIG_FE_SOURCE_SELECT_DIGE: + result = ENGINE_ID_DIGE; + break; + case DCE110_DIG_FE_SOURCE_SELECT_DIGF: + result = ENGINE_ID_DIGF; + break; + case DCE110_DIG_FE_SOURCE_SELECT_DIGG: + result = ENGINE_ID_DIGG; + break; + default: + // invalid source select DIG + result = ENGINE_ID_UNKNOWN; + } + + return result; +} + void dce110_link_encoder_set_dp_phy_pattern_training_pattern( struct link_encoder *enc, uint32_t index) --- linux-azure-5.8-5.8.0.orig/drivers/gpu/drm/amd/display/dc/dce/dce_link_encoder.h +++ linux-azure-5.8-5.8.0/drivers/gpu/drm/amd/display/dc/dce/dce_link_encoder.h @@ -255,6 +255,8 @@ enum engine_id engine, bool connect); +unsigned int dce110_get_dig_frontend(struct link_encoder *enc); + void dce110_link_encoder_set_dp_phy_pattern_training_pattern( struct link_encoder *enc, uint32_t index); --- linux-azure-5.8-5.8.0.orig/drivers/gpu/drm/amd/display/dc/dce/dce_panel_cntl.c +++ linux-azure-5.8-5.8.0/drivers/gpu/drm/amd/display/dc/dce/dce_panel_cntl.c @@ -75,7 +75,7 @@ else bl_pwm &= 0xFFFF; - current_backlight = bl_pwm << (1 + bl_int_count); + current_backlight = (uint64_t)bl_pwm << (1 + bl_int_count); if (bl_period == 0) bl_period = 0xFFFF; --- linux-azure-5.8-5.8.0.orig/drivers/gpu/drm/amd/display/dc/dce/dce_panel_cntl.h +++ linux-azure-5.8-5.8.0/drivers/gpu/drm/amd/display/dc/dce/dce_panel_cntl.h @@ -49,12 +49,12 @@ #define DCN_PANEL_CNTL_REG_LIST()\ DCN_PANEL_CNTL_SR(PWRSEQ_CNTL, LVTMA), \ DCN_PANEL_CNTL_SR(PWRSEQ_STATE, LVTMA), \ - DCE_PANEL_CNTL_SR(PWRSEQ_REF_DIV, LVTMA), \ + DCN_PANEL_CNTL_SR(PWRSEQ_REF_DIV, LVTMA), \ SR(BL_PWM_CNTL), \ SR(BL_PWM_CNTL2), \ SR(BL_PWM_PERIOD_CNTL), \ SR(BL_PWM_GRP1_REG_LOCK), \ - SR(BIOS_SCRATCH_2) + NBIO_SR(BIOS_SCRATCH_2) #define DCE_PANEL_CNTL_SF(reg_name, field_name, post_fix)\ .field_name = reg_name ## __ ## field_name ## post_fix --- linux-azure-5.8-5.8.0.orig/drivers/gpu/drm/amd/display/dc/dce/dce_stream_encoder.c +++ linux-azure-5.8-5.8.0/drivers/gpu/drm/amd/display/dc/dce/dce_stream_encoder.c @@ -564,6 +564,7 @@ cntl.enable_dp_audio = enable_audio; cntl.pixel_clock = actual_pix_clk_khz; cntl.lanes_number = LANE_COUNT_FOUR; + cntl.color_depth = crtc_timing->display_color_depth; if (enc110->base.bp->funcs->encoder_control( enc110->base.bp, &cntl) != BP_RESULT_OK) --- linux-azure-5.8-5.8.0.orig/drivers/gpu/drm/amd/display/dc/dce/dce_transform.c +++ linux-azure-5.8-5.8.0/drivers/gpu/drm/amd/display/dc/dce/dce_transform.c @@ -429,12 +429,12 @@ clamp_max = 0x3FC0; break; case COLOR_DEPTH_101010: - /* 10bit MSB aligned on 14 bit bus '11 1111 1111 1100' */ - clamp_max = 0x3FFC; + /* 10bit MSB aligned on 14 bit bus '11 1111 1111 0000' */ + clamp_max = 0x3FF0; break; case COLOR_DEPTH_121212: - /* 12bit MSB aligned on 14 bit bus '11 1111 1111 1111' */ - clamp_max = 0x3FFF; + /* 12bit MSB aligned on 14 bit bus '11 1111 1111 1100' */ + clamp_max = 0x3FFC; break; default: clamp_max = 0x3FC0; --- linux-azure-5.8-5.8.0.orig/drivers/gpu/drm/amd/display/dc/dcn10/dcn10_hw_sequencer.c +++ linux-azure-5.8-5.8.0/drivers/gpu/drm/amd/display/dc/dcn10/dcn10_hw_sequencer.c @@ -643,8 +643,13 @@ if (REG(DC_IP_REQUEST_CNTL)) { REG_SET(DC_IP_REQUEST_CNTL, 0, IP_REQUEST_EN, 1); - hws->funcs.dpp_pg_control(hws, plane_id, true); - hws->funcs.hubp_pg_control(hws, plane_id, true); + + if (hws->funcs.dpp_pg_control) + hws->funcs.dpp_pg_control(hws, plane_id, true); + + if (hws->funcs.hubp_pg_control) + hws->funcs.hubp_pg_control(hws, plane_id, true); + REG_SET(DC_IP_REQUEST_CNTL, 0, IP_REQUEST_EN, 0); DC_LOG_DEBUG( @@ -1076,8 +1081,13 @@ if (REG(DC_IP_REQUEST_CNTL)) { REG_SET(DC_IP_REQUEST_CNTL, 0, IP_REQUEST_EN, 1); - hws->funcs.dpp_pg_control(hws, dpp->inst, false); - hws->funcs.hubp_pg_control(hws, hubp->inst, false); + + if (hws->funcs.dpp_pg_control) + hws->funcs.dpp_pg_control(hws, dpp->inst, false); + + if (hws->funcs.hubp_pg_control) + hws->funcs.hubp_pg_control(hws, hubp->inst, false); + dpp->funcs->dpp_reset(dpp); REG_SET(DC_IP_REQUEST_CNTL, 0, IP_REQUEST_EN, 0); --- linux-azure-5.8-5.8.0.orig/drivers/gpu/drm/amd/display/dc/dcn10/dcn10_resource.c +++ linux-azure-5.8-5.8.0/drivers/gpu/drm/amd/display/dc/dcn10/dcn10_resource.c @@ -608,8 +608,8 @@ .disable_pplib_clock_request = false, .disable_pplib_wm_range = false, .pplib_wm_report_mode = WM_REPORT_DEFAULT, - .pipe_split_policy = MPC_SPLIT_DYNAMIC, - .force_single_disp_pipe_split = true, + .pipe_split_policy = MPC_SPLIT_AVOID, + .force_single_disp_pipe_split = false, .disable_dcc = DCC_ENABLE, .voltage_align_fclk = true, .disable_stereo_support = true, @@ -1213,6 +1213,7 @@ bool video_large = false; bool desktop_large = false; bool dcc_disabled = false; + bool mpo_enabled = false; for (i = 0; i < context->stream_count; i++) { if (context->stream_status[i].plane_count == 0) @@ -1221,6 +1222,9 @@ if (context->stream_status[i].plane_count > 2) return DC_FAIL_UNSUPPORTED_1; + if (context->stream_status[i].plane_count > 1) + mpo_enabled = true; + for (j = 0; j < context->stream_status[i].plane_count; j++) { struct dc_plane_state *plane = context->stream_status[i].plane_states[j]; @@ -1244,6 +1248,10 @@ } } + /* Disable MPO in multi-display configurations. */ + if (context->stream_count > 1 && mpo_enabled) + return DC_FAIL_UNSUPPORTED_1; + /* * Workaround: On DCN10 there is UMC issue that causes underflow when * playing 4k video on 4k desktop with video downscaled and single channel --- linux-azure-5.8-5.8.0.orig/drivers/gpu/drm/amd/display/dc/dcn10/dcn10_stream_encoder.c +++ linux-azure-5.8-5.8.0/drivers/gpu/drm/amd/display/dc/dcn10/dcn10_stream_encoder.c @@ -121,35 +121,35 @@ switch (packet_index) { case 0: REG_UPDATE(AFMT_VBI_PACKET_CONTROL1, - AFMT_GENERIC0_FRAME_UPDATE, 1); + AFMT_GENERIC0_IMMEDIATE_UPDATE, 1); break; case 1: REG_UPDATE(AFMT_VBI_PACKET_CONTROL1, - AFMT_GENERIC1_FRAME_UPDATE, 1); + AFMT_GENERIC1_IMMEDIATE_UPDATE, 1); break; case 2: REG_UPDATE(AFMT_VBI_PACKET_CONTROL1, - AFMT_GENERIC2_FRAME_UPDATE, 1); + AFMT_GENERIC2_IMMEDIATE_UPDATE, 1); break; case 3: REG_UPDATE(AFMT_VBI_PACKET_CONTROL1, - AFMT_GENERIC3_FRAME_UPDATE, 1); + AFMT_GENERIC3_IMMEDIATE_UPDATE, 1); break; case 4: REG_UPDATE(AFMT_VBI_PACKET_CONTROL1, - AFMT_GENERIC4_FRAME_UPDATE, 1); + AFMT_GENERIC4_IMMEDIATE_UPDATE, 1); break; case 5: REG_UPDATE(AFMT_VBI_PACKET_CONTROL1, - AFMT_GENERIC5_FRAME_UPDATE, 1); + AFMT_GENERIC5_IMMEDIATE_UPDATE, 1); break; case 6: REG_UPDATE(AFMT_VBI_PACKET_CONTROL1, - AFMT_GENERIC6_FRAME_UPDATE, 1); + AFMT_GENERIC6_IMMEDIATE_UPDATE, 1); break; case 7: REG_UPDATE(AFMT_VBI_PACKET_CONTROL1, - AFMT_GENERIC7_FRAME_UPDATE, 1); + AFMT_GENERIC7_IMMEDIATE_UPDATE, 1); break; default: break; @@ -896,10 +896,10 @@ */ REG_UPDATE(DP_VID_STREAM_CNTL, DP_VID_STREAM_DIS_DEFER, 2); /* Larger delay to wait until VBLANK - use max retry of - * 10us*5000=50ms. This covers 41.7ms of minimum 24 Hz mode + + * 10us*10200=102ms. This covers 100.0ms of minimum 10 Hz mode + * a little more because we may not trust delay accuracy. */ - max_retries = DP_BLANK_MAX_RETRY * 250; + max_retries = DP_BLANK_MAX_RETRY * 501; /* disable DP stream */ REG_UPDATE(DP_VID_STREAM_CNTL, DP_VID_STREAM_ENABLE, 0); --- linux-azure-5.8-5.8.0.orig/drivers/gpu/drm/amd/display/dc/dcn10/dcn10_stream_encoder.h +++ linux-azure-5.8-5.8.0/drivers/gpu/drm/amd/display/dc/dcn10/dcn10_stream_encoder.h @@ -273,7 +273,14 @@ SE_SF(DIG0_AFMT_VBI_PACKET_CONTROL1, AFMT_GENERIC2_FRAME_UPDATE, mask_sh),\ SE_SF(DIG0_AFMT_VBI_PACKET_CONTROL1, AFMT_GENERIC3_FRAME_UPDATE, mask_sh),\ SE_SF(DIG0_AFMT_VBI_PACKET_CONTROL1, AFMT_GENERIC4_FRAME_UPDATE, mask_sh),\ + SE_SF(DIG0_AFMT_VBI_PACKET_CONTROL1, AFMT_GENERIC0_IMMEDIATE_UPDATE, mask_sh),\ + SE_SF(DIG0_AFMT_VBI_PACKET_CONTROL1, AFMT_GENERIC1_IMMEDIATE_UPDATE, mask_sh),\ + SE_SF(DIG0_AFMT_VBI_PACKET_CONTROL1, AFMT_GENERIC2_IMMEDIATE_UPDATE, mask_sh),\ + SE_SF(DIG0_AFMT_VBI_PACKET_CONTROL1, AFMT_GENERIC3_IMMEDIATE_UPDATE, mask_sh),\ SE_SF(DIG0_AFMT_VBI_PACKET_CONTROL1, AFMT_GENERIC4_IMMEDIATE_UPDATE, mask_sh),\ + SE_SF(DIG0_AFMT_VBI_PACKET_CONTROL1, AFMT_GENERIC5_IMMEDIATE_UPDATE, mask_sh),\ + SE_SF(DIG0_AFMT_VBI_PACKET_CONTROL1, AFMT_GENERIC6_IMMEDIATE_UPDATE, mask_sh),\ + SE_SF(DIG0_AFMT_VBI_PACKET_CONTROL1, AFMT_GENERIC7_IMMEDIATE_UPDATE, mask_sh),\ SE_SF(DIG0_AFMT_VBI_PACKET_CONTROL1, AFMT_GENERIC5_FRAME_UPDATE, mask_sh),\ SE_SF(DIG0_AFMT_VBI_PACKET_CONTROL1, AFMT_GENERIC6_FRAME_UPDATE, mask_sh),\ SE_SF(DIG0_AFMT_VBI_PACKET_CONTROL1, AFMT_GENERIC7_FRAME_UPDATE, mask_sh),\ @@ -337,7 +344,14 @@ type AFMT_GENERIC2_FRAME_UPDATE;\ type AFMT_GENERIC3_FRAME_UPDATE;\ type AFMT_GENERIC4_FRAME_UPDATE;\ + type AFMT_GENERIC0_IMMEDIATE_UPDATE;\ + type AFMT_GENERIC1_IMMEDIATE_UPDATE;\ + type AFMT_GENERIC2_IMMEDIATE_UPDATE;\ + type AFMT_GENERIC3_IMMEDIATE_UPDATE;\ type AFMT_GENERIC4_IMMEDIATE_UPDATE;\ + type AFMT_GENERIC5_IMMEDIATE_UPDATE;\ + type AFMT_GENERIC6_IMMEDIATE_UPDATE;\ + type AFMT_GENERIC7_IMMEDIATE_UPDATE;\ type AFMT_GENERIC5_FRAME_UPDATE;\ type AFMT_GENERIC6_FRAME_UPDATE;\ type AFMT_GENERIC7_FRAME_UPDATE;\ --- linux-azure-5.8-5.8.0.orig/drivers/gpu/drm/amd/display/dc/dcn20/dcn20_hwseq.c +++ linux-azure-5.8-5.8.0/drivers/gpu/drm/amd/display/dc/dcn20/dcn20_hwseq.c @@ -1011,8 +1011,13 @@ if (REG(DC_IP_REQUEST_CNTL)) { REG_SET(DC_IP_REQUEST_CNTL, 0, IP_REQUEST_EN, 1); - dcn20_dpp_pg_control(hws, pipe_ctx->plane_res.dpp->inst, true); - dcn20_hubp_pg_control(hws, pipe_ctx->plane_res.hubp->inst, true); + + if (hws->funcs.dpp_pg_control) + hws->funcs.dpp_pg_control(hws, pipe_ctx->plane_res.dpp->inst, true); + + if (hws->funcs.hubp_pg_control) + hws->funcs.hubp_pg_control(hws, pipe_ctx->plane_res.hubp->inst, true); + REG_SET(DC_IP_REQUEST_CNTL, 0, IP_REQUEST_EN, 0); DC_LOG_DEBUG( @@ -1386,8 +1391,8 @@ /* Any updates are handled in dc interface, just need to apply existing for plane enable */ if ((pipe_ctx->update_flags.bits.enable || pipe_ctx->update_flags.bits.opp_changed || - pipe_ctx->update_flags.bits.scaler || pipe_ctx->update_flags.bits.viewport) - && pipe_ctx->stream->cursor_attributes.address.quad_part != 0) { + pipe_ctx->update_flags.bits.scaler || viewport_changed == true) && + pipe_ctx->stream->cursor_attributes.address.quad_part != 0) { dc->hwss.set_cursor_position(pipe_ctx); dc->hwss.set_cursor_attribute(pipe_ctx); --- linux-azure-5.8-5.8.0.orig/drivers/gpu/drm/amd/display/dc/dcn20/dcn20_resource.c +++ linux-azure-5.8-5.8.0/drivers/gpu/drm/amd/display/dc/dcn20/dcn20_resource.c @@ -2465,8 +2465,7 @@ * if this primary pipe has a bottom pipe in prev. state * and if the bottom pipe is still available (which it should be), * pick that pipe as secondary - * Same logic applies for ODM pipes. Since mpo is not allowed with odm - * check in else case. + * Same logic applies for ODM pipes */ if (dc->current_state->res_ctx.pipe_ctx[primary_pipe->pipe_idx].bottom_pipe) { preferred_pipe_idx = dc->current_state->res_ctx.pipe_ctx[primary_pipe->pipe_idx].bottom_pipe->pipe_idx; @@ -2474,7 +2473,9 @@ secondary_pipe = &res_ctx->pipe_ctx[preferred_pipe_idx]; secondary_pipe->pipe_idx = preferred_pipe_idx; } - } else if (dc->current_state->res_ctx.pipe_ctx[primary_pipe->pipe_idx].next_odm_pipe) { + } + if (secondary_pipe == NULL && + dc->current_state->res_ctx.pipe_ctx[primary_pipe->pipe_idx].next_odm_pipe) { preferred_pipe_idx = dc->current_state->res_ctx.pipe_ctx[primary_pipe->pipe_idx].next_odm_pipe->pipe_idx; if (res_ctx->pipe_ctx[preferred_pipe_idx].stream == NULL) { secondary_pipe = &res_ctx->pipe_ctx[preferred_pipe_idx]; @@ -3097,7 +3098,7 @@ int vlevel = 0; int pipe_split_from[MAX_PIPES]; int pipe_cnt = 0; - display_e2e_pipe_params_st *pipes = kzalloc(dc->res_pool->pipe_count * sizeof(display_e2e_pipe_params_st), GFP_KERNEL); + display_e2e_pipe_params_st *pipes = kzalloc(dc->res_pool->pipe_count * sizeof(display_e2e_pipe_params_st), GFP_ATOMIC); DC_LOGGER_INIT(dc->ctx->logger); BW_VAL_TRACE_COUNT(); @@ -3165,6 +3166,9 @@ context->bw_ctx.dml.soc.allow_dram_clock_one_display_vactive = dc->debug.enable_dram_clock_change_one_display_vactive; + /*Unsafe due to current pipe merge and split logic*/ + ASSERT(context != dc->current_state); + if (fast_validate) { return dcn20_validate_bandwidth_internal(dc, context, true); } @@ -3201,7 +3205,7 @@ bool dcn20_validate_bandwidth(struct dc *dc, struct dc_state *context, bool fast_validate) { - bool voltage_supported = false; + bool voltage_supported; DC_FP_START(); voltage_supported = dcn20_validate_bandwidth_fp(dc, context, fast_validate); DC_FP_END(); --- linux-azure-5.8-5.8.0.orig/drivers/gpu/drm/amd/display/dc/dcn21/dcn21_resource.c +++ linux-azure-5.8-5.8.0/drivers/gpu/drm/amd/display/dc/dcn21/dcn21_resource.c @@ -296,7 +296,7 @@ .num_banks = 8, .num_chans = 4, .vmm_page_size_bytes = 4096, - .dram_clock_change_latency_us = 23.84, + .dram_clock_change_latency_us = 11.72, .return_bus_width_bytes = 64, .dispclk_dppclk_vco_speed_mhz = 3600, .xfc_bus_transport_time_us = 4, @@ -900,6 +900,8 @@ DCN20_CLK_SRC_PLL0, DCN20_CLK_SRC_PLL1, DCN20_CLK_SRC_PLL2, + DCN20_CLK_SRC_PLL3, + DCN20_CLK_SRC_PLL4, DCN20_CLK_SRC_TOTAL_DCN21 }; @@ -1169,8 +1171,8 @@ } -bool dcn21_validate_bandwidth(struct dc *dc, struct dc_state *context, - bool fast_validate) +static noinline bool dcn21_validate_bandwidth_fp(struct dc *dc, + struct dc_state *context, bool fast_validate) { bool out = false; @@ -1184,6 +1186,9 @@ BW_VAL_TRACE_COUNT(); + /*Unsafe due to current pipe merge and split logic*/ + ASSERT(context != dc->current_state); + out = dcn20_fast_validate_bw(dc, context, pipes, &pipe_cnt, pipe_split_from, &vlevel); if (pipe_cnt == 0) @@ -1220,6 +1225,22 @@ return out; } + +/* + * Some of the functions further below use the FPU, so we need to wrap this + * with DC_FP_START()/DC_FP_END(). Use the same approach as for + * dcn20_validate_bandwidth in dcn20_resource.c. + */ +bool dcn21_validate_bandwidth(struct dc *dc, struct dc_state *context, + bool fast_validate) +{ + bool voltage_supported; + DC_FP_START(); + voltage_supported = dcn21_validate_bandwidth_fp(dc, context, fast_validate); + DC_FP_END(); + return voltage_supported; +} + static void dcn21_destroy_resource_pool(struct resource_pool **pool) { struct dcn21_resource_pool *dcn21_pool = TO_DCN21_RES_POOL(*pool); @@ -1874,6 +1895,14 @@ dcn21_clock_source_create(ctx, ctx->dc_bios, CLOCK_SOURCE_COMBO_PHY_PLL2, &clk_src_regs[2], false); + pool->base.clock_sources[DCN20_CLK_SRC_PLL3] = + dcn21_clock_source_create(ctx, ctx->dc_bios, + CLOCK_SOURCE_COMBO_PHY_PLL3, + &clk_src_regs[3], false); + pool->base.clock_sources[DCN20_CLK_SRC_PLL4] = + dcn21_clock_source_create(ctx, ctx->dc_bios, + CLOCK_SOURCE_COMBO_PHY_PLL4, + &clk_src_regs[4], false); pool->base.clk_src_count = DCN20_CLK_SRC_TOTAL_DCN21; --- linux-azure-5.8-5.8.0.orig/drivers/gpu/drm/amd/display/dc/gpio/gpio_base.c +++ linux-azure-5.8-5.8.0/drivers/gpu/drm/amd/display/dc/gpio/gpio_base.c @@ -63,13 +63,13 @@ enum gpio_mode mode) { if (gpio->pin) { - ASSERT_CRITICAL(false); + BREAK_TO_DEBUGGER(); return GPIO_RESULT_ALREADY_OPENED; } // No action if allocation failed during gpio construct if (!gpio->hw_container.ddc) { - ASSERT_CRITICAL(false); + BREAK_TO_DEBUGGER(); return GPIO_RESULT_NON_SPECIFIC_ERROR; } gpio->mode = mode; --- linux-azure-5.8-5.8.0.orig/drivers/gpu/drm/amd/display/dc/irq/dcn20/irq_service_dcn20.c +++ linux-azure-5.8-5.8.0/drivers/gpu/drm/amd/display/dc/irq/dcn20/irq_service_dcn20.c @@ -299,8 +299,8 @@ pflip_int_entry(1), pflip_int_entry(2), pflip_int_entry(3), - [DC_IRQ_SOURCE_PFLIP5] = dummy_irq_entry(), - [DC_IRQ_SOURCE_PFLIP6] = dummy_irq_entry(), + pflip_int_entry(4), + pflip_int_entry(5), [DC_IRQ_SOURCE_PFLIP_UNDERLAY0] = dummy_irq_entry(), gpio_pad_int_entry(0), gpio_pad_int_entry(1), --- linux-azure-5.8-5.8.0.orig/drivers/gpu/drm/amd/display/dc/irq/dcn21/irq_service_dcn21.c +++ linux-azure-5.8-5.8.0/drivers/gpu/drm/amd/display/dc/irq/dcn21/irq_service_dcn21.c @@ -168,6 +168,11 @@ .ack = NULL }; +static const struct irq_source_info_funcs vupdate_no_lock_irq_info_funcs = { + .set = NULL, + .ack = NULL +}; + #undef BASE_INNER #define BASE_INNER(seg) DMU_BASE__INST0_SEG ## seg @@ -230,6 +235,17 @@ .funcs = &vblank_irq_info_funcs\ } +/* vupdate_no_lock_int_entry maps to DC_IRQ_SOURCE_VUPDATEx, to match semantic + * of DCE's DC_IRQ_SOURCE_VUPDATEx. + */ +#define vupdate_no_lock_int_entry(reg_num)\ + [DC_IRQ_SOURCE_VUPDATE1 + reg_num] = {\ + IRQ_REG_ENTRY(OTG, reg_num,\ + OTG_GLOBAL_SYNC_STATUS, VUPDATE_NO_LOCK_INT_EN,\ + OTG_GLOBAL_SYNC_STATUS, VUPDATE_NO_LOCK_EVENT_CLEAR),\ + .funcs = &vupdate_no_lock_irq_info_funcs\ + } + #define vblank_int_entry(reg_num)\ [DC_IRQ_SOURCE_VBLANK1 + reg_num] = {\ IRQ_REG_ENTRY(OTG, reg_num,\ @@ -338,6 +354,12 @@ vupdate_int_entry(3), vupdate_int_entry(4), vupdate_int_entry(5), + vupdate_no_lock_int_entry(0), + vupdate_no_lock_int_entry(1), + vupdate_no_lock_int_entry(2), + vupdate_no_lock_int_entry(3), + vupdate_no_lock_int_entry(4), + vupdate_no_lock_int_entry(5), vblank_int_entry(0), vblank_int_entry(1), vblank_int_entry(2), --- linux-azure-5.8-5.8.0.orig/drivers/gpu/drm/amd/display/dc/os_types.h +++ linux-azure-5.8-5.8.0/drivers/gpu/drm/amd/display/dc/os_types.h @@ -90,7 +90,7 @@ * general debug capabilities * */ -#if defined(CONFIG_HAVE_KGDB) || defined(CONFIG_KGDB) +#if defined(CONFIG_DEBUG_KERNEL_DC) && (defined(CONFIG_HAVE_KGDB) || defined(CONFIG_KGDB)) #define ASSERT_CRITICAL(expr) do { \ if (WARN_ON(!(expr))) { \ kgdb_breakpoint(); \ --- linux-azure-5.8-5.8.0.orig/drivers/gpu/drm/amd/display/include/fixed31_32.h +++ linux-azure-5.8-5.8.0/drivers/gpu/drm/amd/display/include/fixed31_32.h @@ -431,6 +431,9 @@ */ static inline struct fixed31_32 dc_fixpt_pow(struct fixed31_32 arg1, struct fixed31_32 arg2) { + if (arg1.value == 0) + return arg2.value == 0 ? dc_fixpt_one : dc_fixpt_zero; + return dc_fixpt_exp( dc_fixpt_mul( dc_fixpt_log(arg1), --- linux-azure-5.8-5.8.0.orig/drivers/gpu/drm/amd/display/modules/color/Makefile +++ linux-azure-5.8-5.8.0/drivers/gpu/drm/amd/display/modules/color/Makefile @@ -23,7 +23,7 @@ # Makefile for the color sub-module of DAL. # -MOD_COLOR = color_gamma.o +MOD_COLOR = color_gamma.o color_table.o AMD_DAL_MOD_COLOR = $(addprefix $(AMDDALPATH)/modules/color/,$(MOD_COLOR)) #$(info ************ DAL COLOR MODULE MAKEFILE ************) --- linux-azure-5.8-5.8.0.orig/drivers/gpu/drm/amd/display/modules/color/color_gamma.c +++ linux-azure-5.8-5.8.0/drivers/gpu/drm/amd/display/modules/color/color_gamma.c @@ -30,20 +30,10 @@ #include "opp.h" #include "color_gamma.h" -#define NUM_PTS_IN_REGION 16 -#define NUM_REGIONS 32 -#define MAX_HW_POINTS (NUM_PTS_IN_REGION*NUM_REGIONS) - static struct hw_x_point coordinates_x[MAX_HW_POINTS + 2]; -static struct fixed31_32 pq_table[MAX_HW_POINTS + 2]; -static struct fixed31_32 de_pq_table[MAX_HW_POINTS + 2]; - // these are helpers for calculations to reduce stack usage // do not depend on these being preserved across calls -static struct fixed31_32 scratch_1; -static struct fixed31_32 scratch_2; -static struct translate_from_linear_space_args scratch_gamma_args; /* Helper to optimize gamma calculation, only use in translate_from_linear, in * particular the dc_fixpt_pow function which is very expensive @@ -56,9 +46,6 @@ * just multiply with 2^gamma which can be computed once, and save the result so we * recursively compute all the values. */ -static struct fixed31_32 pow_buffer[NUM_PTS_IN_REGION]; -static struct fixed31_32 gamma_of_2; // 2^gamma -int pow_buffer_ptr = -1; /*sRGB 709 2.2 2.4 P3*/ static const int32_t gamma_numerator01[] = { 31308, 180000, 0, 0, 0}; static const int32_t gamma_numerator02[] = { 12920, 4500, 0, 0, 0}; @@ -66,9 +53,6 @@ static const int32_t gamma_numerator04[] = { 55, 99, 0, 0, 0}; static const int32_t gamma_numerator05[] = { 2400, 2200, 2200, 2400, 2600}; -static bool pq_initialized; /* = false; */ -static bool de_pq_initialized; /* = false; */ - /* one-time setup of X points */ void setup_x_points_distribution(void) { @@ -250,6 +234,8 @@ struct fixed31_32 scaling_factor = dc_fixpt_from_fraction(80, 10000); + struct fixed31_32 *pq_table = mod_color_get_table(type_pq_table); + /* pow function has problems with arguments too small */ for (i = 0; i < 32; i++) pq_table[i] = dc_fixpt_zero; @@ -269,7 +255,7 @@ uint32_t begin_index, end_index; struct fixed31_32 scaling_factor = dc_fixpt_from_int(125); - + struct fixed31_32 *de_pq_table = mod_color_get_table(type_de_pq_table); /* X points is 2^-25 to 2^7 * De-gamma X is 2^-12 to 2^0 – we are skipping first -12-(-25) = 13 regions */ @@ -339,6 +325,9 @@ { const struct fixed31_32 one = dc_fixpt_from_int(1); + struct fixed31_32 scratch_1, scratch_2; + struct calculate_buffer *cal_buffer = args->cal_buffer; + if (dc_fixpt_le(one, args->arg)) return one; @@ -352,21 +341,21 @@ return scratch_1; } else if (dc_fixpt_le(args->a0, args->arg)) { - if (pow_buffer_ptr == 0) { - gamma_of_2 = dc_fixpt_pow(dc_fixpt_from_int(2), + if (cal_buffer->buffer_index == 0) { + cal_buffer->gamma_of_2 = dc_fixpt_pow(dc_fixpt_from_int(2), dc_fixpt_recip(args->gamma)); } scratch_1 = dc_fixpt_add(one, args->a3); - if (pow_buffer_ptr < 16) + if (cal_buffer->buffer_index < 16) scratch_2 = dc_fixpt_pow(args->arg, dc_fixpt_recip(args->gamma)); else - scratch_2 = dc_fixpt_mul(gamma_of_2, - pow_buffer[pow_buffer_ptr%16]); + scratch_2 = dc_fixpt_mul(cal_buffer->gamma_of_2, + cal_buffer->buffer[cal_buffer->buffer_index%16]); - if (pow_buffer_ptr != -1) { - pow_buffer[pow_buffer_ptr%16] = scratch_2; - pow_buffer_ptr++; + if (cal_buffer->buffer_index != -1) { + cal_buffer->buffer[cal_buffer->buffer_index%16] = scratch_2; + cal_buffer->buffer_index++; } scratch_1 = dc_fixpt_mul(scratch_1, scratch_2); @@ -413,15 +402,17 @@ args->a1); } -static struct fixed31_32 calculate_gamma22(struct fixed31_32 arg, bool use_eetf) +static struct fixed31_32 calculate_gamma22(struct fixed31_32 arg, bool use_eetf, struct calculate_buffer *cal_buffer) { struct fixed31_32 gamma = dc_fixpt_from_fraction(22, 10); + struct translate_from_linear_space_args scratch_gamma_args; scratch_gamma_args.arg = arg; scratch_gamma_args.a0 = dc_fixpt_zero; scratch_gamma_args.a1 = dc_fixpt_zero; scratch_gamma_args.a2 = dc_fixpt_zero; scratch_gamma_args.a3 = dc_fixpt_zero; + scratch_gamma_args.cal_buffer = cal_buffer; scratch_gamma_args.gamma = gamma; if (use_eetf) @@ -467,14 +458,18 @@ static struct fixed31_32 translate_from_linear_space_ex( struct fixed31_32 arg, struct gamma_coefficients *coeff, - uint32_t color_index) + uint32_t color_index, + struct calculate_buffer *cal_buffer) { + struct translate_from_linear_space_args scratch_gamma_args; + scratch_gamma_args.arg = arg; scratch_gamma_args.a0 = coeff->a0[color_index]; scratch_gamma_args.a1 = coeff->a1[color_index]; scratch_gamma_args.a2 = coeff->a2[color_index]; scratch_gamma_args.a3 = coeff->a3[color_index]; scratch_gamma_args.gamma = coeff->user_gamma[color_index]; + scratch_gamma_args.cal_buffer = cal_buffer; return translate_from_linear_space(&scratch_gamma_args); } @@ -742,10 +737,11 @@ struct fixed31_32 output; struct fixed31_32 scaling_factor = dc_fixpt_from_fraction(sdr_white_level, 10000); + struct fixed31_32 *pq_table = mod_color_get_table(type_pq_table); - if (!pq_initialized && sdr_white_level == 80) { + if (!mod_color_is_table_init(type_pq_table) && sdr_white_level == 80) { precompute_pq(); - pq_initialized = true; + mod_color_set_table_init_state(type_pq_table, true); } /* TODO: start index is from segment 2^-24, skipping first segment @@ -787,12 +783,12 @@ { uint32_t i; struct fixed31_32 output; - + struct fixed31_32 *de_pq_table = mod_color_get_table(type_de_pq_table); struct fixed31_32 scaling_factor = dc_fixpt_from_int(125); - if (!de_pq_initialized) { + if (!mod_color_is_table_init(type_de_pq_table)) { precompute_de_pq(); - de_pq_initialized = true; + mod_color_set_table_init_state(type_de_pq_table, true); } @@ -811,7 +807,9 @@ static bool build_regamma(struct pwl_float_data_ex *rgb_regamma, uint32_t hw_points_num, - const struct hw_x_point *coordinate_x, enum dc_transfer_func_predefined type) + const struct hw_x_point *coordinate_x, + enum dc_transfer_func_predefined type, + struct calculate_buffer *cal_buffer) { uint32_t i; bool ret = false; @@ -827,20 +825,21 @@ if (!build_coefficients(coeff, type)) goto release; - memset(pow_buffer, 0, NUM_PTS_IN_REGION * sizeof(struct fixed31_32)); - pow_buffer_ptr = 0; // see variable definition for more info + memset(cal_buffer->buffer, 0, NUM_PTS_IN_REGION * sizeof(struct fixed31_32)); + cal_buffer->buffer_index = 0; // see variable definition for more info + i = 0; while (i <= hw_points_num) { /*TODO use y vs r,g,b*/ rgb->r = translate_from_linear_space_ex( - coord_x->x, coeff, 0); + coord_x->x, coeff, 0, cal_buffer); rgb->g = rgb->r; rgb->b = rgb->r; ++coord_x; ++rgb; ++i; } - pow_buffer_ptr = -1; // reset back to no optimize + cal_buffer->buffer_index = -1; ret = true; release: kvfree(coeff); @@ -932,7 +931,8 @@ static bool build_freesync_hdr(struct pwl_float_data_ex *rgb_regamma, uint32_t hw_points_num, const struct hw_x_point *coordinate_x, - const struct freesync_hdr_tf_params *fs_params) + const struct freesync_hdr_tf_params *fs_params, + struct calculate_buffer *cal_buffer) { uint32_t i; struct pwl_float_data_ex *rgb = rgb_regamma; @@ -969,7 +969,7 @@ max_content = max_display; if (!use_eetf) - pow_buffer_ptr = 0; // see var definition for more info + cal_buffer->buffer_index = 0; // see var definition for more info rgb += 32; // first 32 points have problems with fixed point, too small coord_x += 32; for (i = 32; i <= hw_points_num; i++) { @@ -988,7 +988,7 @@ if (dc_fixpt_lt(scaledX, dc_fixpt_zero)) output = dc_fixpt_zero; else - output = calculate_gamma22(scaledX, use_eetf); + output = calculate_gamma22(scaledX, use_eetf, cal_buffer); rgb->r = output; rgb->g = output; @@ -1008,7 +1008,7 @@ ++coord_x; ++rgb; } - pow_buffer_ptr = -1; + cal_buffer->buffer_index = -1; return true; } @@ -1606,7 +1606,7 @@ } static void apply_degamma_for_user_regamma(struct pwl_float_data_ex *rgb_regamma, - uint32_t hw_points_num) + uint32_t hw_points_num, struct calculate_buffer *cal_buffer) { uint32_t i; @@ -1614,12 +1614,12 @@ struct pwl_float_data_ex *rgb = rgb_regamma; const struct hw_x_point *coord_x = coordinates_x; - build_coefficients(&coeff, true); + build_coefficients(&coeff, TRANSFER_FUNCTION_SRGB); i = 0; while (i != hw_points_num + 1) { rgb->r = translate_from_linear_space_ex( - coord_x->x, &coeff, 0); + coord_x->x, &coeff, 0, cal_buffer); rgb->g = rgb->r; rgb->b = rgb->r; ++coord_x; @@ -1674,7 +1674,8 @@ #define _EXTRA_POINTS 3 bool calculate_user_regamma_coeff(struct dc_transfer_func *output_tf, - const struct regamma_lut *regamma) + const struct regamma_lut *regamma, + struct calculate_buffer *cal_buffer) { struct gamma_coefficients coeff; const struct hw_x_point *coord_x = coordinates_x; @@ -1706,11 +1707,11 @@ } while (i != MAX_HW_POINTS + 1) { output_tf->tf_pts.red[i] = translate_from_linear_space_ex( - coord_x->x, &coeff, 0); + coord_x->x, &coeff, 0, cal_buffer); output_tf->tf_pts.green[i] = translate_from_linear_space_ex( - coord_x->x, &coeff, 1); + coord_x->x, &coeff, 1, cal_buffer); output_tf->tf_pts.blue[i] = translate_from_linear_space_ex( - coord_x->x, &coeff, 2); + coord_x->x, &coeff, 2, cal_buffer); ++coord_x; ++i; } @@ -1723,7 +1724,8 @@ } bool calculate_user_regamma_ramp(struct dc_transfer_func *output_tf, - const struct regamma_lut *regamma) + const struct regamma_lut *regamma, + struct calculate_buffer *cal_buffer) { struct dc_transfer_func_distributed_points *tf_pts = &output_tf->tf_pts; struct dividers dividers; @@ -1756,7 +1758,7 @@ scale_user_regamma_ramp(rgb_user, ®amma->ramp, dividers); if (regamma->flags.bits.applyDegamma == 1) { - apply_degamma_for_user_regamma(rgb_regamma, MAX_HW_POINTS); + apply_degamma_for_user_regamma(rgb_regamma, MAX_HW_POINTS, cal_buffer); copy_rgb_regamma_to_coordinates_x(coordinates_x, MAX_HW_POINTS, rgb_regamma); } @@ -1943,7 +1945,8 @@ struct dc_transfer_func_distributed_points *points, struct pwl_float_data_ex *rgb_regamma, const struct freesync_hdr_tf_params *fs_params, - uint32_t sdr_ref_white_level) + uint32_t sdr_ref_white_level, + struct calculate_buffer *cal_buffer) { uint32_t i; bool ret = false; @@ -1979,7 +1982,8 @@ build_freesync_hdr(rgb_regamma, MAX_HW_POINTS, coordinates_x, - fs_params); + fs_params, + cal_buffer); ret = true; } else if (trans == TRANSFER_FUNCTION_HLG) { @@ -2008,7 +2012,8 @@ build_regamma(rgb_regamma, MAX_HW_POINTS, coordinates_x, - trans); + trans, + cal_buffer); ret = true; } @@ -2018,7 +2023,8 @@ bool mod_color_calculate_regamma_params(struct dc_transfer_func *output_tf, const struct dc_gamma *ramp, bool mapUserRamp, bool canRomBeUsed, - const struct freesync_hdr_tf_params *fs_params) + const struct freesync_hdr_tf_params *fs_params, + struct calculate_buffer *cal_buffer) { struct dc_transfer_func_distributed_points *tf_pts = &output_tf->tf_pts; struct dividers dividers; @@ -2090,7 +2096,8 @@ tf_pts, rgb_regamma, fs_params, - output_tf->sdr_ref_white_level); + output_tf->sdr_ref_white_level, + cal_buffer); if (ret) { map_regamma_hw_to_x_user(ramp, coeff, rgb_user, --- linux-azure-5.8-5.8.0.orig/drivers/gpu/drm/amd/display/modules/color/color_gamma.h +++ linux-azure-5.8-5.8.0/drivers/gpu/drm/amd/display/modules/color/color_gamma.h @@ -26,6 +26,8 @@ #ifndef COLOR_MOD_COLOR_GAMMA_H_ #define COLOR_MOD_COLOR_GAMMA_H_ +#include "color_table.h" + struct dc_transfer_func; struct dc_gamma; struct dc_transfer_func_distributed_points; @@ -83,6 +85,12 @@ unsigned int skip_tm; // skip tm }; +struct calculate_buffer { + int buffer_index; + struct fixed31_32 buffer[NUM_PTS_IN_REGION]; + struct fixed31_32 gamma_of_2; +}; + struct translate_from_linear_space_args { struct fixed31_32 arg; struct fixed31_32 a0; @@ -90,6 +98,7 @@ struct fixed31_32 a2; struct fixed31_32 a3; struct fixed31_32 gamma; + struct calculate_buffer *cal_buffer; }; void setup_x_points_distribution(void); @@ -99,7 +108,8 @@ bool mod_color_calculate_regamma_params(struct dc_transfer_func *output_tf, const struct dc_gamma *ramp, bool mapUserRamp, bool canRomBeUsed, - const struct freesync_hdr_tf_params *fs_params); + const struct freesync_hdr_tf_params *fs_params, + struct calculate_buffer *cal_buffer); bool mod_color_calculate_degamma_params(struct dc_color_caps *dc_caps, struct dc_transfer_func *output_tf, @@ -109,10 +119,12 @@ struct dc_transfer_func_distributed_points *points); bool calculate_user_regamma_coeff(struct dc_transfer_func *output_tf, - const struct regamma_lut *regamma); + const struct regamma_lut *regamma, + struct calculate_buffer *cal_buffer); bool calculate_user_regamma_ramp(struct dc_transfer_func *output_tf, - const struct regamma_lut *regamma); + const struct regamma_lut *regamma, + struct calculate_buffer *cal_buffer); #endif /* COLOR_MOD_COLOR_GAMMA_H_ */ --- linux-azure-5.8-5.8.0.orig/drivers/gpu/drm/amd/display/modules/color/color_table.c +++ linux-azure-5.8-5.8.0/drivers/gpu/drm/amd/display/modules/color/color_table.c @@ -0,0 +1,48 @@ +/* + * Copyright (c) 2019 Advanced Micro Devices, Inc. (unpublished) + * + * All rights reserved. This notice is intended as a precaution against + * inadvertent publication and does not imply publication or any waiver + * of confidentiality. The year included in the foregoing notice is the + * year of creation of the work. + */ + +#include "color_table.h" + +static struct fixed31_32 pq_table[MAX_HW_POINTS + 2]; +static struct fixed31_32 de_pq_table[MAX_HW_POINTS + 2]; +static bool pq_initialized; +static bool de_pg_initialized; + +bool mod_color_is_table_init(enum table_type type) +{ + bool ret = false; + + if (type == type_pq_table) + ret = pq_initialized; + if (type == type_de_pq_table) + ret = de_pg_initialized; + + return ret; +} + +struct fixed31_32 *mod_color_get_table(enum table_type type) +{ + struct fixed31_32 *table = NULL; + + if (type == type_pq_table) + table = pq_table; + if (type == type_de_pq_table) + table = de_pq_table; + + return table; +} + +void mod_color_set_table_init_state(enum table_type type, bool state) +{ + if (type == type_pq_table) + pq_initialized = state; + if (type == type_de_pq_table) + de_pg_initialized = state; +} + --- linux-azure-5.8-5.8.0.orig/drivers/gpu/drm/amd/display/modules/color/color_table.h +++ linux-azure-5.8-5.8.0/drivers/gpu/drm/amd/display/modules/color/color_table.h @@ -0,0 +1,47 @@ +/* + * Copyright 2016 Advanced Micro Devices, Inc. + * + * Permission is hereby granted, free of charge, to any person obtaining a + * copy of this software and associated documentation files (the "Software"), + * to deal in the Software without restriction, including without limitation + * the rights to use, copy, modify, merge, publish, distribute, sublicense, + * and/or sell copies of the Software, and to permit persons to whom the + * Software is furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in + * all copies or substantial portions of the Software. + * + * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR + * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, + * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL + * THE COPYRIGHT HOLDER(S) OR AUTHOR(S) BE LIABLE FOR ANY CLAIM, DAMAGES OR + * OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, + * ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR + * OTHER DEALINGS IN THE SOFTWARE. + * + * Authors: AMD + * + */ + + +#ifndef COLOR_MOD_COLOR_TABLE_H_ +#define COLOR_MOD_COLOR_TABLE_H_ + +#include "dc_types.h" + +#define NUM_PTS_IN_REGION 16 +#define NUM_REGIONS 32 +#define MAX_HW_POINTS (NUM_PTS_IN_REGION*NUM_REGIONS) + +enum table_type { + type_pq_table, + type_de_pq_table +}; + +bool mod_color_is_table_init(enum table_type type); + +struct fixed31_32 *mod_color_get_table(enum table_type type); + +void mod_color_set_table_init_state(enum table_type type, bool state); + +#endif /* COLOR_MOD_COLOR_TABLE_H_ */ --- linux-azure-5.8-5.8.0.orig/drivers/gpu/drm/amd/display/modules/freesync/freesync.c +++ linux-azure-5.8-5.8.0/drivers/gpu/drm/amd/display/modules/freesync/freesync.c @@ -324,22 +324,44 @@ /* Choose number of frames to insert based on how close it * can get to the mid point of the variable range. + * - Delta for CEIL: delta_from_mid_point_in_us_1 + * - Delta for FLOOR: delta_from_mid_point_in_us_2 */ - if ((frame_time_in_us / mid_point_frames_ceil) > in_out_vrr->min_duration_in_us && - (delta_from_mid_point_in_us_1 < delta_from_mid_point_in_us_2 || - mid_point_frames_floor < 2)) { + if ((last_render_time_in_us / mid_point_frames_ceil) < in_out_vrr->min_duration_in_us) { + /* Check for out of range. + * If using CEIL produces a value that is out of range, + * then we are forced to use FLOOR. + */ + frames_to_insert = mid_point_frames_floor; + } else if (mid_point_frames_floor < 2) { + /* Check if FLOOR would result in non-LFC. In this case + * choose to use CEIL + */ + frames_to_insert = mid_point_frames_ceil; + } else if (delta_from_mid_point_in_us_1 < delta_from_mid_point_in_us_2) { + /* If choosing CEIL results in a frame duration that is + * closer to the mid point of the range. + * Choose CEIL + */ frames_to_insert = mid_point_frames_ceil; - delta_from_mid_point_delta_in_us = delta_from_mid_point_in_us_2 - - delta_from_mid_point_in_us_1; } else { + /* If choosing FLOOR results in a frame duration that is + * closer to the mid point of the range. + * Choose FLOOR + */ frames_to_insert = mid_point_frames_floor; - delta_from_mid_point_delta_in_us = delta_from_mid_point_in_us_1 - - delta_from_mid_point_in_us_2; } /* Prefer current frame multiplier when BTR is enabled unless it drifts * too far from the midpoint */ + if (delta_from_mid_point_in_us_1 < delta_from_mid_point_in_us_2) { + delta_from_mid_point_delta_in_us = delta_from_mid_point_in_us_2 - + delta_from_mid_point_in_us_1; + } else { + delta_from_mid_point_delta_in_us = delta_from_mid_point_in_us_1 - + delta_from_mid_point_in_us_2; + } if (in_out_vrr->btr.frames_to_insert != 0 && delta_from_mid_point_delta_in_us < BTR_DRIFT_MARGIN) { if (((last_render_time_in_us / in_out_vrr->btr.frames_to_insert) < --- linux-azure-5.8-5.8.0.orig/drivers/gpu/drm/amd/display/modules/hdcp/hdcp_log.h +++ linux-azure-5.8-5.8.0/drivers/gpu/drm/amd/display/modules/hdcp/hdcp_log.h @@ -27,7 +27,7 @@ #define MOD_HDCP_LOG_H_ #ifdef CONFIG_DRM_AMD_DC_HDCP -#define HDCP_LOG_ERR(hdcp, ...) DRM_WARN(__VA_ARGS__) +#define HDCP_LOG_ERR(hdcp, ...) DRM_DEBUG_KMS(__VA_ARGS__) #define HDCP_LOG_VER(hdcp, ...) DRM_DEBUG_KMS(__VA_ARGS__) #define HDCP_LOG_FSM(hdcp, ...) DRM_DEBUG_KMS(__VA_ARGS__) #define HDCP_LOG_TOP(hdcp, ...) pr_debug("[HDCP_TOP]:"__VA_ARGS__) --- linux-azure-5.8-5.8.0.orig/drivers/gpu/drm/amd/display/modules/hdcp/hdcp_psp.c +++ linux-azure-5.8-5.8.0/drivers/gpu/drm/amd/display/modules/hdcp/hdcp_psp.c @@ -88,7 +88,7 @@ enum mod_hdcp_status status = MOD_HDCP_STATUS_SUCCESS; if (!psp->dtm_context.dtm_initialized) { - DRM_ERROR("Failed to add display topology, DTM TA is not initialized."); + DRM_INFO("Failed to add display topology, DTM TA is not initialized."); display->state = MOD_HDCP_DISPLAY_INACTIVE; return MOD_HDCP_STATUS_FAILURE; } --- linux-azure-5.8-5.8.0.orig/drivers/gpu/drm/amd/include/amd_shared.h +++ linux-azure-5.8-5.8.0/drivers/gpu/drm/amd/include/amd_shared.h @@ -45,6 +45,7 @@ AMD_APU_IS_RAVEN2 = 0x00000002UL, AMD_APU_IS_PICASSO = 0x00000004UL, AMD_APU_IS_RENOIR = 0x00000008UL, + AMD_APU_IS_GREEN_SARDINE = 0x00000010UL, }; enum amd_ip_block_type { --- linux-azure-5.8-5.8.0.orig/drivers/gpu/drm/amd/powerplay/arcturus_ppt.c +++ linux-azure-5.8-5.8.0/drivers/gpu/drm/amd/powerplay/arcturus_ppt.c @@ -2042,8 +2042,6 @@ { int i; - BUG_ON(numbytes > MAX_SW_I2C_COMMANDS); - req->I2CcontrollerPort = 0; req->I2CSpeed = 2; req->SlaveAddress = address; @@ -2081,6 +2079,12 @@ struct smu_table_context *smu_table = &adev->smu.smu_table; struct smu_table *table = &smu_table->driver_table; + if (numbytes > MAX_SW_I2C_COMMANDS) { + dev_err(adev->dev, "numbytes requested %d is over max allowed %d\n", + numbytes, MAX_SW_I2C_COMMANDS); + return -EINVAL; + } + memset(&req, 0, sizeof(req)); arcturus_fill_eeprom_i2c_req(&req, false, address, numbytes, data); @@ -2117,6 +2121,12 @@ SwI2cRequest_t req; struct amdgpu_device *adev = to_amdgpu_device(control); + if (numbytes > MAX_SW_I2C_COMMANDS) { + dev_err(adev->dev, "numbytes requested %d is over max allowed %d\n", + numbytes, MAX_SW_I2C_COMMANDS); + return -EINVAL; + } + memset(&req, 0, sizeof(req)); arcturus_fill_eeprom_i2c_req(&req, true, address, numbytes, data); --- linux-azure-5.8-5.8.0.orig/drivers/gpu/drm/amd/powerplay/hwmgr/ci_baco.c +++ linux-azure-5.8-5.8.0/drivers/gpu/drm/amd/powerplay/hwmgr/ci_baco.c @@ -142,12 +142,12 @@ { CMD_READMODIFYWRITE, mmBACO_CNTL, BACO_CNTL__BACO_BCLK_OFF_MASK, BACO_CNTL__BACO_BCLK_OFF__SHIFT, 0, 0x00 }, { CMD_READMODIFYWRITE, mmBACO_CNTL, BACO_CNTL__BACO_POWER_OFF_MASK, BACO_CNTL__BACO_POWER_OFF__SHIFT, 0, 0x00 }, { CMD_DELAY_MS, 0, 0, 0, 20, 0 }, - { CMD_WAITFOR, mmBACO_CNTL, BACO_CNTL__PWRGOOD_BF_MASK, 0, 0xffffffff, 0x20 }, + { CMD_WAITFOR, mmBACO_CNTL, BACO_CNTL__PWRGOOD_BF_MASK, 0, 0xffffffff, 0x200 }, { CMD_READMODIFYWRITE, mmBACO_CNTL, BACO_CNTL__BACO_ISO_DIS_MASK, BACO_CNTL__BACO_ISO_DIS__SHIFT, 0, 0x01 }, - { CMD_WAITFOR, mmBACO_CNTL, BACO_CNTL__PWRGOOD_MASK, 0, 5, 0x1c }, + { CMD_WAITFOR, mmBACO_CNTL, BACO_CNTL__PWRGOOD_MASK, 0, 5, 0x1c00 }, { CMD_READMODIFYWRITE, mmBACO_CNTL, BACO_CNTL__BACO_ANA_ISO_DIS_MASK, BACO_CNTL__BACO_ANA_ISO_DIS__SHIFT, 0, 0x01 }, { CMD_READMODIFYWRITE, mmBACO_CNTL, BACO_CNTL__BACO_RESET_EN_MASK, BACO_CNTL__BACO_RESET_EN__SHIFT, 0, 0x00 }, - { CMD_WAITFOR, mmBACO_CNTL, BACO_CNTL__RCU_BIF_CONFIG_DONE_MASK, 0, 5, 0x10 }, + { CMD_WAITFOR, mmBACO_CNTL, BACO_CNTL__RCU_BIF_CONFIG_DONE_MASK, 0, 5, 0x100 }, { CMD_READMODIFYWRITE, mmBACO_CNTL, BACO_CNTL__BACO_EN_MASK, BACO_CNTL__BACO_EN__SHIFT, 0, 0x00 }, { CMD_WAITFOR, mmBACO_CNTL, BACO_CNTL__BACO_MODE_MASK, 0, 0xffffffff, 0x00 } }; @@ -155,6 +155,7 @@ static const struct baco_cmd_entry clean_baco_tbl[] = { { CMD_WRITE, mmBIOS_SCRATCH_6, 0, 0, 0, 0 }, + { CMD_WRITE, mmBIOS_SCRATCH_7, 0, 0, 0, 0 }, { CMD_WRITE, mmCP_PFP_UCODE_ADDR, 0, 0, 0, 0 } }; --- linux-azure-5.8-5.8.0.orig/drivers/gpu/drm/amd/powerplay/hwmgr/smu10_hwmgr.c +++ linux-azure-5.8-5.8.0/drivers/gpu/drm/amd/powerplay/hwmgr/smu10_hwmgr.c @@ -204,8 +204,7 @@ { struct smu10_hwmgr *smu10_data = (struct smu10_hwmgr *)(hwmgr->backend); - if (smu10_data->need_min_deep_sleep_dcefclk && - smu10_data->deep_sleep_dcefclk != clock) { + if (clock && smu10_data->deep_sleep_dcefclk != clock) { smu10_data->deep_sleep_dcefclk = clock; smum_send_msg_to_smc_with_parameter(hwmgr, PPSMC_MSG_SetMinDeepSleepDcefclk, @@ -219,8 +218,7 @@ { struct smu10_hwmgr *smu10_data = (struct smu10_hwmgr *)(hwmgr->backend); - if (smu10_data->dcf_actual_hard_min_freq && - smu10_data->dcf_actual_hard_min_freq != clock) { + if (clock && smu10_data->dcf_actual_hard_min_freq != clock) { smu10_data->dcf_actual_hard_min_freq = clock; smum_send_msg_to_smc_with_parameter(hwmgr, PPSMC_MSG_SetHardMinDcefclkByFreq, @@ -234,8 +232,7 @@ { struct smu10_hwmgr *smu10_data = (struct smu10_hwmgr *)(hwmgr->backend); - if (smu10_data->f_actual_hard_min_freq && - smu10_data->f_actual_hard_min_freq != clock) { + if (clock && smu10_data->f_actual_hard_min_freq != clock) { smu10_data->f_actual_hard_min_freq = clock; smum_send_msg_to_smc_with_parameter(hwmgr, PPSMC_MSG_SetHardMinFclkByFreq, @@ -566,6 +563,8 @@ struct smu10_hwmgr *data = hwmgr->backend; uint32_t min_sclk = hwmgr->display_config->min_core_set_clock; uint32_t min_mclk = hwmgr->display_config->min_mem_set_clock/100; + uint32_t index_fclk = data->clock_vol_info.vdd_dep_on_fclk->count - 1; + uint32_t index_socclk = data->clock_vol_info.vdd_dep_on_socclk->count - 1; if (hwmgr->smu_version < 0x1E3700) { pr_info("smu firmware version too old, can not set dpm level\n"); @@ -679,13 +678,13 @@ smum_send_msg_to_smc_with_parameter(hwmgr, PPSMC_MSG_SetHardMinFclkByFreq, hwmgr->display_config->num_display > 3 ? - SMU10_UMD_PSTATE_PEAK_FCLK : + data->clock_vol_info.vdd_dep_on_fclk->entries[0].clk : min_mclk, NULL); smum_send_msg_to_smc_with_parameter(hwmgr, PPSMC_MSG_SetHardMinSocclkByFreq, - SMU10_UMD_PSTATE_MIN_SOCCLK, + data->clock_vol_info.vdd_dep_on_socclk->entries[0].clk, NULL); smum_send_msg_to_smc_with_parameter(hwmgr, PPSMC_MSG_SetHardMinVcn, @@ -698,11 +697,11 @@ NULL); smum_send_msg_to_smc_with_parameter(hwmgr, PPSMC_MSG_SetSoftMaxFclkByFreq, - SMU10_UMD_PSTATE_PEAK_FCLK, + data->clock_vol_info.vdd_dep_on_fclk->entries[index_fclk].clk, NULL); smum_send_msg_to_smc_with_parameter(hwmgr, PPSMC_MSG_SetSoftMaxSocclkByFreq, - SMU10_UMD_PSTATE_PEAK_SOCCLK, + data->clock_vol_info.vdd_dep_on_socclk->entries[index_socclk].clk, NULL); smum_send_msg_to_smc_with_parameter(hwmgr, PPSMC_MSG_SetSoftMaxVcn, --- linux-azure-5.8-5.8.0.orig/drivers/gpu/drm/amd/powerplay/hwmgr/smu7_hwmgr.c +++ linux-azure-5.8-5.8.0/drivers/gpu/drm/amd/powerplay/hwmgr/smu7_hwmgr.c @@ -1541,6 +1541,10 @@ PP_ASSERT_WITH_CODE((tmp_result == 0), "Failed to reset to default!", result = tmp_result); + tmp_result = smum_stop_smc(hwmgr); + PP_ASSERT_WITH_CODE((tmp_result == 0), + "Failed to stop smc!", result = tmp_result); + tmp_result = smu7_force_switch_to_arbf0(hwmgr); PP_ASSERT_WITH_CODE((tmp_result == 0), "Failed to force to switch arbf0!", result = tmp_result); @@ -2879,7 +2883,7 @@ if (hwmgr->is_kicker) switch_limit_us = data->is_memory_gddr5 ? 450 : 150; else - switch_limit_us = data->is_memory_gddr5 ? 190 : 150; + switch_limit_us = data->is_memory_gddr5 ? 200 : 150; break; case CHIP_VEGAM: switch_limit_us = 30; @@ -3587,7 +3591,8 @@ case AMDGPU_PP_SENSOR_GPU_POWER: return smu7_get_gpu_power(hwmgr, (uint32_t *)value); case AMDGPU_PP_SENSOR_VDDGFX: - if ((data->vr_config & 0xff) == 0x2) + if ((data->vr_config & VRCONF_VDDGFX_MASK) == + (VR_SVI2_PLANE_2 << VRCONF_VDDGFX_SHIFT)) val_vid = PHM_READ_INDIRECT_FIELD(hwmgr->device, CGS_IND_REG__SMC, PWR_SVI2_STATUS, PLANE2_VID); else --- linux-azure-5.8-5.8.0.orig/drivers/gpu/drm/amd/powerplay/hwmgr/vega10_thermal.c +++ linux-azure-5.8-5.8.0/drivers/gpu/drm/amd/powerplay/hwmgr/vega10_thermal.c @@ -363,17 +363,29 @@ static int vega10_thermal_set_temperature_range(struct pp_hwmgr *hwmgr, struct PP_TemperatureRange *range) { + struct phm_ppt_v2_information *pp_table_info = + (struct phm_ppt_v2_information *)(hwmgr->pptable); + struct phm_tdp_table *tdp_table = pp_table_info->tdp_table; struct amdgpu_device *adev = hwmgr->adev; - int low = VEGA10_THERMAL_MINIMUM_ALERT_TEMP * - PP_TEMPERATURE_UNITS_PER_CENTIGRADES; - int high = VEGA10_THERMAL_MAXIMUM_ALERT_TEMP * - PP_TEMPERATURE_UNITS_PER_CENTIGRADES; + int low = VEGA10_THERMAL_MINIMUM_ALERT_TEMP; + int high = VEGA10_THERMAL_MAXIMUM_ALERT_TEMP; uint32_t val; - if (low < range->min) - low = range->min; - if (high > range->max) - high = range->max; + /* compare them in unit celsius degree */ + if (low < range->min / PP_TEMPERATURE_UNITS_PER_CENTIGRADES) + low = range->min / PP_TEMPERATURE_UNITS_PER_CENTIGRADES; + + /* + * As a common sense, usSoftwareShutdownTemp should be bigger + * than ThotspotLimit. For any invalid usSoftwareShutdownTemp, + * we will just use the max possible setting VEGA10_THERMAL_MAXIMUM_ALERT_TEMP + * to avoid false alarms. + */ + if ((tdp_table->usSoftwareShutdownTemp > + range->hotspot_crit_max / PP_TEMPERATURE_UNITS_PER_CENTIGRADES)) { + if (high > tdp_table->usSoftwareShutdownTemp) + high = tdp_table->usSoftwareShutdownTemp; + } if (low > high) return -EINVAL; @@ -382,8 +394,8 @@ val = REG_SET_FIELD(val, THM_THERMAL_INT_CTRL, MAX_IH_CREDIT, 5); val = REG_SET_FIELD(val, THM_THERMAL_INT_CTRL, THERM_IH_HW_ENA, 1); - val = REG_SET_FIELD(val, THM_THERMAL_INT_CTRL, DIG_THERM_INTH, (high / PP_TEMPERATURE_UNITS_PER_CENTIGRADES)); - val = REG_SET_FIELD(val, THM_THERMAL_INT_CTRL, DIG_THERM_INTL, (low / PP_TEMPERATURE_UNITS_PER_CENTIGRADES)); + val = REG_SET_FIELD(val, THM_THERMAL_INT_CTRL, DIG_THERM_INTH, high); + val = REG_SET_FIELD(val, THM_THERMAL_INT_CTRL, DIG_THERM_INTL, low); val &= (~THM_THERMAL_INT_CTRL__THERM_TRIGGER_MASK_MASK) & (~THM_THERMAL_INT_CTRL__THERM_INTH_MASK_MASK) & (~THM_THERMAL_INT_CTRL__THERM_INTL_MASK_MASK); --- linux-azure-5.8-5.8.0.orig/drivers/gpu/drm/amd/powerplay/hwmgr/vega12_thermal.c +++ linux-azure-5.8-5.8.0/drivers/gpu/drm/amd/powerplay/hwmgr/vega12_thermal.c @@ -170,17 +170,18 @@ static int vega12_thermal_set_temperature_range(struct pp_hwmgr *hwmgr, struct PP_TemperatureRange *range) { + struct phm_ppt_v3_information *pptable_information = + (struct phm_ppt_v3_information *)hwmgr->pptable; struct amdgpu_device *adev = hwmgr->adev; - int low = VEGA12_THERMAL_MINIMUM_ALERT_TEMP * - PP_TEMPERATURE_UNITS_PER_CENTIGRADES; - int high = VEGA12_THERMAL_MAXIMUM_ALERT_TEMP * - PP_TEMPERATURE_UNITS_PER_CENTIGRADES; + int low = VEGA12_THERMAL_MINIMUM_ALERT_TEMP; + int high = VEGA12_THERMAL_MAXIMUM_ALERT_TEMP; uint32_t val; - if (low < range->min) - low = range->min; - if (high > range->max) - high = range->max; + /* compare them in unit celsius degree */ + if (low < range->min / PP_TEMPERATURE_UNITS_PER_CENTIGRADES) + low = range->min / PP_TEMPERATURE_UNITS_PER_CENTIGRADES; + if (high > pptable_information->us_software_shutdown_temp) + high = pptable_information->us_software_shutdown_temp; if (low > high) return -EINVAL; @@ -189,8 +190,8 @@ val = REG_SET_FIELD(val, THM_THERMAL_INT_CTRL, MAX_IH_CREDIT, 5); val = REG_SET_FIELD(val, THM_THERMAL_INT_CTRL, THERM_IH_HW_ENA, 1); - val = REG_SET_FIELD(val, THM_THERMAL_INT_CTRL, DIG_THERM_INTH, (high / PP_TEMPERATURE_UNITS_PER_CENTIGRADES)); - val = REG_SET_FIELD(val, THM_THERMAL_INT_CTRL, DIG_THERM_INTL, (low / PP_TEMPERATURE_UNITS_PER_CENTIGRADES)); + val = REG_SET_FIELD(val, THM_THERMAL_INT_CTRL, DIG_THERM_INTH, high); + val = REG_SET_FIELD(val, THM_THERMAL_INT_CTRL, DIG_THERM_INTL, low); val = val & (~THM_THERMAL_INT_CTRL__THERM_TRIGGER_MASK_MASK); WREG32_SOC15(THM, 0, mmTHM_THERMAL_INT_CTRL, val); --- linux-azure-5.8-5.8.0.orig/drivers/gpu/drm/amd/powerplay/hwmgr/vega20_hwmgr.c +++ linux-azure-5.8-5.8.0/drivers/gpu/drm/amd/powerplay/hwmgr/vega20_hwmgr.c @@ -979,10 +979,7 @@ { struct vega20_hwmgr *data = (struct vega20_hwmgr *)(hwmgr->backend); - uint64_t features_enabled; - int i; - bool enabled; - int ret = 0; + int i, ret = 0; PP_ASSERT_WITH_CODE((ret = smum_send_msg_to_smc(hwmgr, PPSMC_MSG_DisableAllSmuFeatures, @@ -990,17 +987,8 @@ "[DisableAllSMUFeatures] Failed to disable all smu features!", return ret); - ret = vega20_get_enabled_smc_features(hwmgr, &features_enabled); - PP_ASSERT_WITH_CODE(!ret, - "[DisableAllSMUFeatures] Failed to get enabled smc features!", - return ret); - - for (i = 0; i < GNLD_FEATURES_MAX; i++) { - enabled = (features_enabled & data->smu_features[i].smu_feature_bitmap) ? - true : false; - data->smu_features[i].enabled = enabled; - data->smu_features[i].supported = enabled; - } + for (i = 0; i < GNLD_FEATURES_MAX; i++) + data->smu_features[i].enabled = 0; return 0; } @@ -1652,12 +1640,6 @@ data->uvd_power_gated = true; data->vce_power_gated = true; - - if (data->smu_features[GNLD_DPM_UVD].enabled) - data->uvd_power_gated = false; - - if (data->smu_features[GNLD_DPM_VCE].enabled) - data->vce_power_gated = false; } static int vega20_enable_dpm_tasks(struct pp_hwmgr *hwmgr) @@ -3230,10 +3212,11 @@ static int vega20_set_ppfeature_status(struct pp_hwmgr *hwmgr, uint64_t new_ppfeature_masks) { - uint64_t features_enabled; - uint64_t features_to_enable; - uint64_t features_to_disable; - int ret = 0; + struct vega20_hwmgr *data = + (struct vega20_hwmgr *)(hwmgr->backend); + uint64_t features_enabled, features_to_enable, features_to_disable; + int i, ret = 0; + bool enabled; if (new_ppfeature_masks >= (1ULL << GNLD_FEATURES_MAX)) return -EINVAL; @@ -3262,6 +3245,17 @@ return ret; } + /* Update the cached feature enablement state */ + ret = vega20_get_enabled_smc_features(hwmgr, &features_enabled); + if (ret) + return ret; + + for (i = 0; i < GNLD_FEATURES_MAX; i++) { + enabled = (features_enabled & data->smu_features[i].smu_feature_bitmap) ? + true : false; + data->smu_features[i].enabled = enabled; + } + return 0; } --- linux-azure-5.8-5.8.0.orig/drivers/gpu/drm/amd/powerplay/hwmgr/vega20_thermal.c +++ linux-azure-5.8-5.8.0/drivers/gpu/drm/amd/powerplay/hwmgr/vega20_thermal.c @@ -240,17 +240,18 @@ static int vega20_thermal_set_temperature_range(struct pp_hwmgr *hwmgr, struct PP_TemperatureRange *range) { + struct phm_ppt_v3_information *pptable_information = + (struct phm_ppt_v3_information *)hwmgr->pptable; struct amdgpu_device *adev = hwmgr->adev; - int low = VEGA20_THERMAL_MINIMUM_ALERT_TEMP * - PP_TEMPERATURE_UNITS_PER_CENTIGRADES; - int high = VEGA20_THERMAL_MAXIMUM_ALERT_TEMP * - PP_TEMPERATURE_UNITS_PER_CENTIGRADES; + int low = VEGA20_THERMAL_MINIMUM_ALERT_TEMP; + int high = VEGA20_THERMAL_MAXIMUM_ALERT_TEMP; uint32_t val; - if (low < range->min) - low = range->min; - if (high > range->max) - high = range->max; + /* compare them in unit celsius degree */ + if (low < range->min / PP_TEMPERATURE_UNITS_PER_CENTIGRADES) + low = range->min / PP_TEMPERATURE_UNITS_PER_CENTIGRADES; + if (high > pptable_information->us_software_shutdown_temp) + high = pptable_information->us_software_shutdown_temp; if (low > high) return -EINVAL; @@ -259,8 +260,8 @@ val = CGS_REG_SET_FIELD(val, THM_THERMAL_INT_CTRL, MAX_IH_CREDIT, 5); val = CGS_REG_SET_FIELD(val, THM_THERMAL_INT_CTRL, THERM_IH_HW_ENA, 1); - val = CGS_REG_SET_FIELD(val, THM_THERMAL_INT_CTRL, DIG_THERM_INTH, (high / PP_TEMPERATURE_UNITS_PER_CENTIGRADES)); - val = CGS_REG_SET_FIELD(val, THM_THERMAL_INT_CTRL, DIG_THERM_INTL, (low / PP_TEMPERATURE_UNITS_PER_CENTIGRADES)); + val = CGS_REG_SET_FIELD(val, THM_THERMAL_INT_CTRL, DIG_THERM_INTH, high); + val = CGS_REG_SET_FIELD(val, THM_THERMAL_INT_CTRL, DIG_THERM_INTL, low); val = val & (~THM_THERMAL_INT_CTRL__THERM_TRIGGER_MASK_MASK); WREG32_SOC15(THM, 0, mmTHM_THERMAL_INT_CTRL, val); --- linux-azure-5.8-5.8.0.orig/drivers/gpu/drm/amd/powerplay/inc/hwmgr.h +++ linux-azure-5.8-5.8.0/drivers/gpu/drm/amd/powerplay/inc/hwmgr.h @@ -229,6 +229,7 @@ bool (*is_hw_avfs_present)(struct pp_hwmgr *hwmgr); int (*update_dpm_settings)(struct pp_hwmgr *hwmgr, void *profile_setting); int (*smc_table_manager)(struct pp_hwmgr *hwmgr, uint8_t *table, uint16_t table_id, bool rw); /*rw: true for read, false for write */ + int (*stop_smc)(struct pp_hwmgr *hwmgr); }; struct pp_hwmgr_func { --- linux-azure-5.8-5.8.0.orig/drivers/gpu/drm/amd/powerplay/inc/smumgr.h +++ linux-azure-5.8-5.8.0/drivers/gpu/drm/amd/powerplay/inc/smumgr.h @@ -113,4 +113,6 @@ extern int smum_smc_table_manager(struct pp_hwmgr *hwmgr, uint8_t *table, uint16_t table_id, bool rw); +extern int smum_stop_smc(struct pp_hwmgr *hwmgr); + #endif --- linux-azure-5.8-5.8.0.orig/drivers/gpu/drm/amd/powerplay/renoir_ppt.c +++ linux-azure-5.8-5.8.0/drivers/gpu/drm/amd/powerplay/renoir_ppt.c @@ -278,6 +278,7 @@ count = NUM_SOCCLK_DPM_LEVELS; cur_value = metrics.ClockFrequency[CLOCK_SOCCLK]; break; + case SMU_UCLK: case SMU_MCLK: count = NUM_MEMCLK_DPM_LEVELS; cur_value = metrics.ClockFrequency[CLOCK_FCLK]; --- linux-azure-5.8-5.8.0.orig/drivers/gpu/drm/amd/powerplay/smu_v11_0.c +++ linux-azure-5.8-5.8.0/drivers/gpu/drm/amd/powerplay/smu_v11_0.c @@ -47,10 +47,8 @@ #include "asic_reg/smuio/smuio_11_0_0_sh_mask.h" MODULE_FIRMWARE("amdgpu/vega20_smc.bin"); -MODULE_FIRMWARE("amdgpu/arcturus_smc.bin"); MODULE_FIRMWARE("amdgpu/navi10_smc.bin"); MODULE_FIRMWARE("amdgpu/navi14_smc.bin"); -MODULE_FIRMWARE("amdgpu/navi12_smc.bin"); #define SMU11_VOLTAGE_SCALE 4 @@ -164,7 +162,8 @@ chip_name = "navi12"; break; default: - BUG(); + dev_err(adev->dev, "Unsupported ASIC type %d\n", adev->asic_type); + return -EINVAL; } snprintf(fw_name, sizeof(fw_name), "amdgpu/%s_smc.bin", chip_name); --- linux-azure-5.8-5.8.0.orig/drivers/gpu/drm/amd/powerplay/smu_v12_0.c +++ linux-azure-5.8-5.8.0/drivers/gpu/drm/amd/powerplay/smu_v12_0.c @@ -475,6 +475,7 @@ break; case SMU_FCLK: case SMU_MCLK: + case SMU_UCLK: ret = smu_send_smc_msg_with_param(smu, SMU_MSG_SetHardMinFclkByFreq, min, NULL); if (ret) return ret; --- linux-azure-5.8-5.8.0.orig/drivers/gpu/drm/amd/powerplay/smumgr/ci_smumgr.c +++ linux-azure-5.8-5.8.0/drivers/gpu/drm/amd/powerplay/smumgr/ci_smumgr.c @@ -37,6 +37,7 @@ #include "cgs_common.h" #include "atombios.h" #include "pppcielanes.h" +#include "smu7_smumgr.h" #include "smu/smu_7_0_1_d.h" #include "smu/smu_7_0_1_sh_mask.h" @@ -2935,6 +2936,29 @@ return 0; } +static void ci_reset_smc(struct pp_hwmgr *hwmgr) +{ + PHM_WRITE_INDIRECT_FIELD(hwmgr->device, CGS_IND_REG__SMC, + SMC_SYSCON_RESET_CNTL, + rst_reg, 1); +} + + +static void ci_stop_smc_clock(struct pp_hwmgr *hwmgr) +{ + PHM_WRITE_INDIRECT_FIELD(hwmgr->device, CGS_IND_REG__SMC, + SMC_SYSCON_CLOCK_CNTL_0, + ck_disable, 1); +} + +static int ci_stop_smc(struct pp_hwmgr *hwmgr) +{ + ci_reset_smc(hwmgr); + ci_stop_smc_clock(hwmgr); + + return 0; +} + const struct pp_smumgr_func ci_smu_funcs = { .name = "ci_smu", .smu_init = ci_smu_init, @@ -2945,6 +2969,7 @@ .request_smu_load_specific_fw = NULL, .send_msg_to_smc = ci_send_msg_to_smc, .send_msg_to_smc_with_parameter = ci_send_msg_to_smc_with_parameter, + .get_argument = smu7_get_argument, .download_pptable_settings = NULL, .upload_pptable_settings = NULL, .get_offsetof = ci_get_offsetof, @@ -2959,4 +2984,5 @@ .is_dpm_running = ci_is_dpm_running, .update_dpm_settings = ci_update_dpm_settings, .update_smc_table = ci_update_smc_table, + .stop_smc = ci_stop_smc, }; --- linux-azure-5.8-5.8.0.orig/drivers/gpu/drm/amd/powerplay/smumgr/smumgr.c +++ linux-azure-5.8-5.8.0/drivers/gpu/drm/amd/powerplay/smumgr/smumgr.c @@ -245,3 +245,11 @@ return -EINVAL; } + +int smum_stop_smc(struct pp_hwmgr *hwmgr) +{ + if (hwmgr->smumgr_funcs->stop_smc) + return hwmgr->smumgr_funcs->stop_smc(hwmgr); + + return 0; +} --- linux-azure-5.8-5.8.0.orig/drivers/gpu/drm/arm/display/komeda/komeda_crtc.c +++ linux-azure-5.8-5.8.0/drivers/gpu/drm/arm/display/komeda/komeda_crtc.c @@ -492,10 +492,8 @@ crtc->state = NULL; state = kzalloc(sizeof(*state), GFP_KERNEL); - if (state) { - crtc->state = &state->base; - crtc->state->crtc = crtc; - } + if (state) + __drm_atomic_helper_crtc_reset(crtc, &state->base); } static struct drm_crtc_state * @@ -616,7 +614,6 @@ return err; drm_crtc_helper_add(crtc, &komeda_crtc_helper_funcs); - drm_crtc_vblank_reset(crtc); crtc->port = kcrtc->master->of_output_port; --- linux-azure-5.8-5.8.0.orig/drivers/gpu/drm/arm/malidp_drv.c +++ linux-azure-5.8-5.8.0/drivers/gpu/drm/arm/malidp_drv.c @@ -870,7 +870,6 @@ drm->irq_enabled = true; ret = drm_vblank_init(drm, drm->mode_config.num_crtc); - drm_crtc_vblank_reset(&malidp->crtc); if (ret < 0) { DRM_ERROR("failed to initialise vblank\n"); goto vblank_fail; --- linux-azure-5.8-5.8.0.orig/drivers/gpu/drm/arm/malidp_planes.c +++ linux-azure-5.8-5.8.0/drivers/gpu/drm/arm/malidp_planes.c @@ -928,7 +928,7 @@ const struct malidp_hw_regmap *map = &malidp->dev->hw->map; struct malidp_plane *plane = NULL; enum drm_plane_type plane_type; - unsigned long crtcs = 1 << drm->mode_config.num_crtc; + unsigned long crtcs = BIT(drm->mode_config.num_crtc); unsigned long flags = DRM_MODE_ROTATE_0 | DRM_MODE_ROTATE_90 | DRM_MODE_ROTATE_180 | DRM_MODE_ROTATE_270 | DRM_MODE_REFLECT_X | DRM_MODE_REFLECT_Y; unsigned int blend_caps = BIT(DRM_MODE_BLEND_PIXEL_NONE) | --- linux-azure-5.8-5.8.0.orig/drivers/gpu/drm/aspeed/Kconfig +++ linux-azure-5.8-5.8.0/drivers/gpu/drm/aspeed/Kconfig @@ -3,6 +3,7 @@ tristate "ASPEED BMC Display Controller" depends on DRM && OF depends on (COMPILE_TEST || ARCH_ASPEED) + depends on MMU select DRM_KMS_HELPER select DRM_KMS_CMA_HELPER select DMA_CMA if HAVE_DMA_CONTIGUOUS --- linux-azure-5.8-5.8.0.orig/drivers/gpu/drm/ast/ast_drv.c +++ linux-azure-5.8-5.8.0/drivers/gpu/drm/ast/ast_drv.c @@ -43,9 +43,33 @@ MODULE_PARM_DESC(modeset, "Disable/Enable modesetting"); module_param_named(modeset, ast_modeset, int, 0400); -#define PCI_VENDOR_ASPEED 0x1a03 +/* + * DRM driver + */ + +DEFINE_DRM_GEM_FOPS(ast_fops); + +static struct drm_driver ast_driver = { + .driver_features = DRIVER_ATOMIC | + DRIVER_GEM | + DRIVER_MODESET, + + .fops = &ast_fops, + .name = DRIVER_NAME, + .desc = DRIVER_DESC, + .date = DRIVER_DATE, + .major = DRIVER_MAJOR, + .minor = DRIVER_MINOR, + .patchlevel = DRIVER_PATCHLEVEL, -static struct drm_driver driver; + DRM_GEM_VRAM_DRIVER +}; + +/* + * PCI driver + */ + +#define PCI_VENDOR_ASPEED 0x1a03 #define AST_VGA_DEVICE(id, info) { \ .class = PCI_BASE_CLASS_DISPLAY << 16, \ @@ -56,14 +80,13 @@ .subdevice = PCI_ANY_ID, \ .driver_data = (unsigned long) info } -static const struct pci_device_id pciidlist[] = { +static const struct pci_device_id ast_pciidlist[] = { AST_VGA_DEVICE(PCI_CHIP_AST2000, NULL), AST_VGA_DEVICE(PCI_CHIP_AST2100, NULL), - /* AST_VGA_DEVICE(PCI_CHIP_AST1180, NULL), - don't bind to 1180 for now */ {0, 0, 0}, }; -MODULE_DEVICE_TABLE(pci, pciidlist); +MODULE_DEVICE_TABLE(pci, ast_pciidlist); static void ast_kick_out_firmware_fb(struct pci_dev *pdev) { @@ -95,7 +118,7 @@ if (ret) return ret; - dev = drm_dev_alloc(&driver, &pdev->dev); + dev = drm_dev_alloc(&ast_driver, &pdev->dev); if (IS_ERR(dev)) { ret = PTR_ERR(dev); goto err_pci_disable_device; @@ -123,11 +146,9 @@ err_pci_disable_device: pci_disable_device(pdev); return ret; - } -static void -ast_pci_remove(struct pci_dev *pdev) +static void ast_pci_remove(struct pci_dev *pdev) { struct drm_device *dev = pci_get_drvdata(pdev); @@ -225,30 +246,12 @@ static struct pci_driver ast_pci_driver = { .name = DRIVER_NAME, - .id_table = pciidlist, + .id_table = ast_pciidlist, .probe = ast_pci_probe, .remove = ast_pci_remove, .driver.pm = &ast_pm_ops, }; -DEFINE_DRM_GEM_FOPS(ast_fops); - -static struct drm_driver driver = { - .driver_features = DRIVER_ATOMIC | - DRIVER_GEM | - DRIVER_MODESET, - - .fops = &ast_fops, - .name = DRIVER_NAME, - .desc = DRIVER_DESC, - .date = DRIVER_DATE, - .major = DRIVER_MAJOR, - .minor = DRIVER_MINOR, - .patchlevel = DRIVER_PATCHLEVEL, - - DRM_GEM_VRAM_DRIVER -}; - static int __init ast_init(void) { if (vgacon_text_force() && ast_modeset == -1) @@ -269,4 +272,3 @@ MODULE_AUTHOR(DRIVER_AUTHOR); MODULE_DESCRIPTION(DRIVER_DESC); MODULE_LICENSE("GPL and additional rights"); - --- linux-azure-5.8-5.8.0.orig/drivers/gpu/drm/ast/ast_drv.h +++ linux-azure-5.8-5.8.0/drivers/gpu/drm/ast/ast_drv.h @@ -52,7 +52,6 @@ #define PCI_CHIP_AST2000 0x2000 #define PCI_CHIP_AST2100 0x2010 -#define PCI_CHIP_AST1180 0x1180 enum ast_chip { @@ -64,7 +63,6 @@ AST2300, AST2400, AST2500, - AST1180, }; enum ast_tx_chip { --- linux-azure-5.8-5.8.0.orig/drivers/gpu/drm/ast/ast_main.c +++ linux-azure-5.8-5.8.0/drivers/gpu/drm/ast/ast_main.c @@ -142,50 +142,42 @@ ast_detect_config_mode(dev, &scu_rev); /* Identify chipset */ - if (dev->pdev->device == PCI_CHIP_AST1180) { - ast->chip = AST1100; - DRM_INFO("AST 1180 detected\n"); - } else { - if (dev->pdev->revision >= 0x40) { - ast->chip = AST2500; - DRM_INFO("AST 2500 detected\n"); - } else if (dev->pdev->revision >= 0x30) { - ast->chip = AST2400; - DRM_INFO("AST 2400 detected\n"); - } else if (dev->pdev->revision >= 0x20) { - ast->chip = AST2300; - DRM_INFO("AST 2300 detected\n"); - } else if (dev->pdev->revision >= 0x10) { - switch (scu_rev & 0x0300) { - case 0x0200: - ast->chip = AST1100; - DRM_INFO("AST 1100 detected\n"); - break; - case 0x0100: - ast->chip = AST2200; - DRM_INFO("AST 2200 detected\n"); - break; - case 0x0000: - ast->chip = AST2150; - DRM_INFO("AST 2150 detected\n"); - break; - default: - ast->chip = AST2100; - DRM_INFO("AST 2100 detected\n"); - break; - } - ast->vga2_clone = false; - } else { - ast->chip = AST2000; - DRM_INFO("AST 2000 detected\n"); + if (dev->pdev->revision >= 0x40) { + ast->chip = AST2500; + DRM_INFO("AST 2500 detected\n"); + } else if (dev->pdev->revision >= 0x30) { + ast->chip = AST2400; + DRM_INFO("AST 2400 detected\n"); + } else if (dev->pdev->revision >= 0x20) { + ast->chip = AST2300; + DRM_INFO("AST 2300 detected\n"); + } else if (dev->pdev->revision >= 0x10) { + switch (scu_rev & 0x0300) { + case 0x0200: + ast->chip = AST1100; + DRM_INFO("AST 1100 detected\n"); + break; + case 0x0100: + ast->chip = AST2200; + DRM_INFO("AST 2200 detected\n"); + break; + case 0x0000: + ast->chip = AST2150; + DRM_INFO("AST 2150 detected\n"); + break; + default: + ast->chip = AST2100; + DRM_INFO("AST 2100 detected\n"); + break; } + ast->vga2_clone = false; + } else { + ast->chip = AST2000; + DRM_INFO("AST 2000 detected\n"); } /* Check if we support wide screen */ switch (ast->chip) { - case AST1180: - ast->support_wide_screen = true; - break; case AST2000: ast->support_wide_screen = false; break; @@ -466,19 +458,17 @@ ast_detect_chip(dev, &need_post); + ret = ast_get_dram_info(dev); + if (ret) + goto out_free; + ast->vram_size = ast_get_vram_info(dev); + DRM_INFO("dram MCLK=%u Mhz type=%d bus_width=%d size=%08x\n", + ast->mclk, ast->dram_type, + ast->dram_bus_width, ast->vram_size); + if (need_post) ast_post_gpu(dev); - if (ast->chip != AST1180) { - ret = ast_get_dram_info(dev); - if (ret) - goto out_free; - ast->vram_size = ast_get_vram_info(dev); - DRM_INFO("dram MCLK=%u Mhz type=%d bus_width=%d size=%08x\n", - ast->mclk, ast->dram_type, - ast->dram_bus_width, ast->vram_size); - } - ret = ast_mm_init(ast); if (ret) goto out_free; @@ -496,8 +486,7 @@ ast->chip == AST2200 || ast->chip == AST2300 || ast->chip == AST2400 || - ast->chip == AST2500 || - ast->chip == AST1180) { + ast->chip == AST2500) { dev->mode_config.max_width = 1920; dev->mode_config.max_height = 2048; } else { --- linux-azure-5.8-5.8.0.orig/drivers/gpu/drm/ast/ast_mode.c +++ linux-azure-5.8-5.8.0/drivers/gpu/drm/ast/ast_mode.c @@ -769,9 +769,6 @@ { struct ast_private *ast = crtc->dev->dev_private; - if (ast->chip == AST1180) - return; - /* TODO: Maybe control display signal generation with * Sync Enable (bit CR17.7). */ @@ -793,16 +790,10 @@ static int ast_crtc_helper_atomic_check(struct drm_crtc *crtc, struct drm_crtc_state *state) { - struct ast_private *ast = crtc->dev->dev_private; struct ast_crtc_state *ast_state; const struct drm_format_info *format; bool succ; - if (ast->chip == AST1180) { - DRM_ERROR("AST 1180 modesetting not supported\n"); - return -EINVAL; - } - if (!state->enable) return 0; /* no mode checks if CRTC is being disabled */ @@ -1044,7 +1035,7 @@ if ((ast->chip == AST2100) || (ast->chip == AST2200) || (ast->chip == AST2300) || (ast->chip == AST2400) || - (ast->chip == AST2500) || (ast->chip == AST1180)) { + (ast->chip == AST2500)) { if ((mode->hdisplay == 1920) && (mode->vdisplay == 1080)) return MODE_OK; --- linux-azure-5.8-5.8.0.orig/drivers/gpu/drm/ast/ast_post.c +++ linux-azure-5.8-5.8.0/drivers/gpu/drm/ast/ast_post.c @@ -58,13 +58,9 @@ struct ast_private *ast = dev->dev_private; u8 ch; - if (ast->chip == AST1180) { - /* TODO 1180 */ - } else { - ch = ast_io_read8(ast, AST_IO_VGA_ENABLE_PORT); - return !!(ch & 0x01); - } - return false; + ch = ast_io_read8(ast, AST_IO_VGA_ENABLE_PORT); + + return !!(ch & 0x01); } static const u8 extreginfo[] = { 0x0f, 0x04, 0x1c, 0xff }; --- linux-azure-5.8-5.8.0.orig/drivers/gpu/drm/atmel-hlcdc/atmel_hlcdc_crtc.c +++ linux-azure-5.8-5.8.0/drivers/gpu/drm/atmel-hlcdc/atmel_hlcdc_crtc.c @@ -411,10 +411,8 @@ } state = kzalloc(sizeof(*state), GFP_KERNEL); - if (state) { - crtc->state = &state->base; - crtc->state->crtc = crtc; - } + if (state) + __drm_atomic_helper_crtc_reset(crtc, &state->base); } static struct drm_crtc_state * @@ -528,7 +526,6 @@ } drm_crtc_helper_add(&crtc->base, &lcdc_crtc_helper_funcs); - drm_crtc_vblank_reset(&crtc->base); drm_mode_crtc_set_gamma_size(&crtc->base, ATMEL_HLCDC_CLUT_SIZE); drm_crtc_enable_color_mgmt(&crtc->base, 0, false, --- linux-azure-5.8-5.8.0.orig/drivers/gpu/drm/bridge/adv7511/Makefile +++ linux-azure-5.8-5.8.0/drivers/gpu/drm/bridge/adv7511/Makefile @@ -1,5 +1,5 @@ # SPDX-License-Identifier: GPL-2.0-only -adv7511-y := adv7511_drv.o adv7533.o -adv7511-$(CONFIG_DRM_I2C_ADV7511_AUDIO) += adv7511_audio.o -adv7511-$(CONFIG_DRM_I2C_ADV7511_CEC) += adv7511_cec.o -obj-$(CONFIG_DRM_I2C_ADV7511) += adv7511.o +adv7511_drm-y := adv7511_drv.o adv7533.o +adv7511_drm-$(CONFIG_DRM_I2C_ADV7511_AUDIO) += adv7511_audio.o +adv7511_drm-$(CONFIG_DRM_I2C_ADV7511_CEC) += adv7511_cec.o +obj-$(CONFIG_DRM_I2C_ADV7511) += adv7511_drm.o --- linux-azure-5.8-5.8.0.orig/drivers/gpu/drm/bridge/megachips-stdpxxxx-ge-b850v3-fw.c +++ linux-azure-5.8-5.8.0/drivers/gpu/drm/bridge/megachips-stdpxxxx-ge-b850v3-fw.c @@ -302,8 +302,12 @@ const struct i2c_device_id *id) { struct device *dev = &stdp4028_i2c->dev; + int ret; - ge_b850v3_lvds_init(dev); + ret = ge_b850v3_lvds_init(dev); + + if (ret) + return ret; ge_b850v3_lvds_ptr->stdp4028_i2c = stdp4028_i2c; i2c_set_clientdata(stdp4028_i2c, ge_b850v3_lvds_ptr); @@ -361,8 +365,12 @@ const struct i2c_device_id *id) { struct device *dev = &stdp2690_i2c->dev; + int ret; + + ret = ge_b850v3_lvds_init(dev); - ge_b850v3_lvds_init(dev); + if (ret) + return ret; ge_b850v3_lvds_ptr->stdp2690_i2c = stdp2690_i2c; i2c_set_clientdata(stdp2690_i2c, ge_b850v3_lvds_ptr); --- linux-azure-5.8-5.8.0.orig/drivers/gpu/drm/bridge/sii902x.c +++ linux-azure-5.8-5.8.0/drivers/gpu/drm/bridge/sii902x.c @@ -953,41 +953,13 @@ | DRM_BUS_FLAG_DE_HIGH, }; -static int sii902x_probe(struct i2c_client *client, - const struct i2c_device_id *id) +static int sii902x_init(struct sii902x *sii902x) { - struct device *dev = &client->dev; + struct device *dev = &sii902x->i2c->dev; unsigned int status = 0; - struct sii902x *sii902x; u8 chipid[4]; int ret; - ret = i2c_check_functionality(client->adapter, - I2C_FUNC_SMBUS_BYTE_DATA); - if (!ret) { - dev_err(dev, "I2C adapter not suitable\n"); - return -EIO; - } - - sii902x = devm_kzalloc(dev, sizeof(*sii902x), GFP_KERNEL); - if (!sii902x) - return -ENOMEM; - - sii902x->i2c = client; - sii902x->regmap = devm_regmap_init_i2c(client, &sii902x_regmap_config); - if (IS_ERR(sii902x->regmap)) - return PTR_ERR(sii902x->regmap); - - sii902x->reset_gpio = devm_gpiod_get_optional(dev, "reset", - GPIOD_OUT_LOW); - if (IS_ERR(sii902x->reset_gpio)) { - dev_err(dev, "Failed to retrieve/request reset gpio: %ld\n", - PTR_ERR(sii902x->reset_gpio)); - return PTR_ERR(sii902x->reset_gpio); - } - - mutex_init(&sii902x->mutex); - sii902x_reset(sii902x); ret = regmap_write(sii902x->regmap, SII902X_REG_TPI_RQB, 0x0); @@ -1011,11 +983,11 @@ regmap_read(sii902x->regmap, SII902X_INT_STATUS, &status); regmap_write(sii902x->regmap, SII902X_INT_STATUS, status); - if (client->irq > 0) { + if (sii902x->i2c->irq > 0) { regmap_write(sii902x->regmap, SII902X_INT_ENABLE, SII902X_HOTPLUG_EVENT); - ret = devm_request_threaded_irq(dev, client->irq, NULL, + ret = devm_request_threaded_irq(dev, sii902x->i2c->irq, NULL, sii902x_interrupt, IRQF_ONESHOT, dev_name(dev), sii902x); @@ -1030,9 +1002,9 @@ sii902x_audio_codec_init(sii902x, dev); - i2c_set_clientdata(client, sii902x); + i2c_set_clientdata(sii902x->i2c, sii902x); - sii902x->i2cmux = i2c_mux_alloc(client->adapter, dev, + sii902x->i2cmux = i2c_mux_alloc(sii902x->i2c->adapter, dev, 1, 0, I2C_MUX_GATE, sii902x_i2c_bypass_select, sii902x_i2c_bypass_deselect); @@ -1043,6 +1015,43 @@ return i2c_mux_add_adapter(sii902x->i2cmux, 0, 0, 0); } +static int sii902x_probe(struct i2c_client *client, + const struct i2c_device_id *id) +{ + struct device *dev = &client->dev; + struct sii902x *sii902x; + int ret; + + ret = i2c_check_functionality(client->adapter, + I2C_FUNC_SMBUS_BYTE_DATA); + if (!ret) { + dev_err(dev, "I2C adapter not suitable\n"); + return -EIO; + } + + sii902x = devm_kzalloc(dev, sizeof(*sii902x), GFP_KERNEL); + if (!sii902x) + return -ENOMEM; + + sii902x->i2c = client; + sii902x->regmap = devm_regmap_init_i2c(client, &sii902x_regmap_config); + if (IS_ERR(sii902x->regmap)) + return PTR_ERR(sii902x->regmap); + + sii902x->reset_gpio = devm_gpiod_get_optional(dev, "reset", + GPIOD_OUT_LOW); + if (IS_ERR(sii902x->reset_gpio)) { + dev_err(dev, "Failed to retrieve/request reset gpio: %ld\n", + PTR_ERR(sii902x->reset_gpio)); + return PTR_ERR(sii902x->reset_gpio); + } + + mutex_init(&sii902x->mutex); + + ret = sii902x_init(sii902x); + return ret; +} + static int sii902x_remove(struct i2c_client *client) { --- linux-azure-5.8-5.8.0.orig/drivers/gpu/drm/bridge/sil-sii8620.c +++ linux-azure-5.8-5.8.0/drivers/gpu/drm/bridge/sil-sii8620.c @@ -178,7 +178,7 @@ static u8 sii8620_readb(struct sii8620 *ctx, u16 addr) { - u8 ret; + u8 ret = 0; sii8620_read_buf(ctx, addr, &ret, 1); return ret; --- linux-azure-5.8-5.8.0.orig/drivers/gpu/drm/bridge/synopsys/dw-hdmi.c +++ linux-azure-5.8-5.8.0/drivers/gpu/drm/bridge/synopsys/dw-hdmi.c @@ -2319,12 +2319,6 @@ connector); enum drm_connector_status result; - mutex_lock(&hdmi->mutex); - hdmi->force = DRM_FORCE_UNSPECIFIED; - dw_hdmi_update_power(hdmi); - dw_hdmi_update_phy_mask(hdmi); - mutex_unlock(&hdmi->mutex); - result = hdmi->phy.ops->read_hpd(hdmi, hdmi->phy.data); mutex_lock(&hdmi->mutex); --- linux-azure-5.8-5.8.0.orig/drivers/gpu/drm/bridge/synopsys/dw-mipi-dsi.c +++ linux-azure-5.8-5.8.0/drivers/gpu/drm/bridge/synopsys/dw-mipi-dsi.c @@ -366,7 +366,6 @@ if (lpm) val |= CMD_MODE_ALL_LP; - dsi_write(dsi, DSI_LPCLK_CTRL, lpm ? 0 : PHY_TXREQUESTCLKHS); dsi_write(dsi, DSI_CMD_MODE_CFG, val); } @@ -542,16 +541,22 @@ static void dw_mipi_dsi_set_mode(struct dw_mipi_dsi *dsi, unsigned long mode_flags) { + u32 val; + dsi_write(dsi, DSI_PWR_UP, RESET); if (mode_flags & MIPI_DSI_MODE_VIDEO) { dsi_write(dsi, DSI_MODE_CFG, ENABLE_VIDEO_MODE); dw_mipi_dsi_video_mode_config(dsi); - dsi_write(dsi, DSI_LPCLK_CTRL, PHY_TXREQUESTCLKHS); } else { dsi_write(dsi, DSI_MODE_CFG, ENABLE_CMD_MODE); } + val = PHY_TXREQUESTCLKHS; + if (dsi->mode_flags & MIPI_DSI_CLOCK_NON_CONTINUOUS) + val |= AUTO_CLKLANE_CTRL; + dsi_write(dsi, DSI_LPCLK_CTRL, val); + dsi_write(dsi, DSI_PWR_UP, POWERUP); } --- linux-azure-5.8-5.8.0.orig/drivers/gpu/drm/bridge/ti-sn65dsi86.c +++ linux-azure-5.8-5.8.0/drivers/gpu/drm/bridge/ti-sn65dsi86.c @@ -475,7 +475,7 @@ 1000 * pdata->dp_lanes * DP_CLK_FUDGE_DEN); for (i = 1; i < ARRAY_SIZE(ti_sn_bridge_dp_rate_lut) - 1; i++) - if (ti_sn_bridge_dp_rate_lut[i] > dp_rate_mhz) + if (ti_sn_bridge_dp_rate_lut[i] >= dp_rate_mhz) break; return i; @@ -827,6 +827,12 @@ buf[i]); } + /* Clear old status bits before start so we don't get confused */ + regmap_write(pdata->regmap, SN_AUX_CMD_STATUS_REG, + AUX_IRQ_STATUS_NAT_I2C_FAIL | + AUX_IRQ_STATUS_AUX_RPLY_TOUT | + AUX_IRQ_STATUS_AUX_SHORT); + regmap_write(pdata->regmap, SN_AUX_CMD_REG, request_val | AUX_CMD_SEND); ret = regmap_read_poll_timeout(pdata->regmap, SN_AUX_CMD_REG, val, --- linux-azure-5.8-5.8.0.orig/drivers/gpu/drm/bridge/ti-tpd12s015.c +++ linux-azure-5.8-5.8.0/drivers/gpu/drm/bridge/ti-tpd12s015.c @@ -160,7 +160,7 @@ /* Register the IRQ if the HPD GPIO is IRQ-capable. */ tpd->hpd_irq = gpiod_to_irq(tpd->hpd_gpio); - if (tpd->hpd_irq) { + if (tpd->hpd_irq >= 0) { ret = devm_request_threaded_irq(&pdev->dev, tpd->hpd_irq, NULL, tpd12s015_hpd_isr, IRQF_TRIGGER_RISING | --- linux-azure-5.8-5.8.0.orig/drivers/gpu/drm/drm_atomic_helper.c +++ linux-azure-5.8-5.8.0/drivers/gpu/drm/drm_atomic_helper.c @@ -34,6 +34,7 @@ #include #include #include +#include #include #include #include @@ -2989,7 +2990,7 @@ ret = handle_conflicting_encoders(state, true); if (ret) - return ret; + goto fail; ret = drm_atomic_commit(state); @@ -3105,7 +3106,7 @@ if (ret) DRM_ERROR("Disabling all crtc's during unload failed with %i\n", ret); - DRM_MODESET_LOCK_ALL_END(ctx, ret); + DRM_MODESET_LOCK_ALL_END(dev, ctx, ret); } EXPORT_SYMBOL(drm_atomic_helper_shutdown); @@ -3245,7 +3246,7 @@ } unlock: - DRM_MODESET_LOCK_ALL_END(ctx, err); + DRM_MODESET_LOCK_ALL_END(dev, ctx, err); if (err) return ERR_PTR(err); @@ -3326,7 +3327,7 @@ err = drm_atomic_helper_commit_duplicated_state(state, &ctx); - DRM_MODESET_LOCK_ALL_END(ctx, err); + DRM_MODESET_LOCK_ALL_END(dev, ctx, err); drm_atomic_state_put(state); return err; --- linux-azure-5.8-5.8.0.orig/drivers/gpu/drm/drm_atomic_state_helper.c +++ linux-azure-5.8-5.8.0/drivers/gpu/drm/drm_atomic_state_helper.c @@ -32,6 +32,7 @@ #include #include #include +#include #include #include @@ -93,6 +94,9 @@ if (crtc_state) __drm_atomic_helper_crtc_state_reset(crtc_state, crtc); + if (drm_dev_has_vblank(crtc->dev)) + drm_crtc_vblank_reset(crtc); + crtc->state = crtc_state; } EXPORT_SYMBOL(__drm_atomic_helper_crtc_reset); --- linux-azure-5.8-5.8.0.orig/drivers/gpu/drm/drm_bridge_connector.c +++ linux-azure-5.8-5.8.0/drivers/gpu/drm/drm_bridge_connector.c @@ -187,6 +187,7 @@ case DRM_MODE_CONNECTOR_DPI: case DRM_MODE_CONNECTOR_LVDS: case DRM_MODE_CONNECTOR_DSI: + case DRM_MODE_CONNECTOR_eDP: status = connector_status_connected; break; default: --- linux-azure-5.8-5.8.0.orig/drivers/gpu/drm/drm_color_mgmt.c +++ linux-azure-5.8-5.8.0/drivers/gpu/drm/drm_color_mgmt.c @@ -294,7 +294,7 @@ crtc->gamma_size, &ctx); out: - DRM_MODESET_LOCK_ALL_END(ctx, ret); + DRM_MODESET_LOCK_ALL_END(dev, ctx, ret); return ret; } --- linux-azure-5.8-5.8.0.orig/drivers/gpu/drm/drm_crtc.c +++ linux-azure-5.8-5.8.0/drivers/gpu/drm/drm_crtc.c @@ -561,7 +561,6 @@ if (crtc_req->mode_valid && !drm_lease_held(file_priv, plane->base.id)) return -EACCES; - mutex_lock(&crtc->dev->mode_config.mutex); DRM_MODESET_LOCK_ALL_BEGIN(dev, ctx, DRM_MODESET_ACQUIRE_INTERRUPTIBLE, ret); @@ -728,8 +727,7 @@ fb = NULL; mode = NULL; - DRM_MODESET_LOCK_ALL_END(ctx, ret); - mutex_unlock(&crtc->dev->mode_config.mutex); + DRM_MODESET_LOCK_ALL_END(dev, ctx, ret); return ret; } --- linux-azure-5.8-5.8.0.orig/drivers/gpu/drm/drm_debugfs.c +++ linux-azure-5.8-5.8.0/drivers/gpu/drm/drm_debugfs.c @@ -311,13 +311,13 @@ buf[len] = '\0'; - if (!strcmp(buf, "on")) + if (sysfs_streq(buf, "on")) connector->force = DRM_FORCE_ON; - else if (!strcmp(buf, "digital")) + else if (sysfs_streq(buf, "digital")) connector->force = DRM_FORCE_ON_DIGITAL; - else if (!strcmp(buf, "off")) + else if (sysfs_streq(buf, "off")) connector->force = DRM_FORCE_OFF; - else if (!strcmp(buf, "unspecified")) + else if (sysfs_streq(buf, "unspecified")) connector->force = DRM_FORCE_UNSPECIFIED; else return -EINVAL; --- linux-azure-5.8-5.8.0.orig/drivers/gpu/drm/drm_debugfs_crc.c +++ linux-azure-5.8-5.8.0/drivers/gpu/drm/drm_debugfs_crc.c @@ -144,8 +144,10 @@ source[len - 1] = '\0'; ret = crtc->funcs->verify_crc_source(crtc, source, &values_cnt); - if (ret) + if (ret) { + kfree(source); return ret; + } spin_lock_irq(&crc->lock); --- linux-azure-5.8-5.8.0.orig/drivers/gpu/drm/drm_dp_aux_dev.c +++ linux-azure-5.8-5.8.0/drivers/gpu/drm/drm_dp_aux_dev.c @@ -63,7 +63,7 @@ mutex_lock(&aux_idr_mutex); aux_dev = idr_find(&aux_idr, index); - if (!kref_get_unless_zero(&aux_dev->refcount)) + if (aux_dev && !kref_get_unless_zero(&aux_dev->refcount)) aux_dev = NULL; mutex_unlock(&aux_idr_mutex); --- linux-azure-5.8-5.8.0.orig/drivers/gpu/drm/drm_dp_helper.c +++ linux-azure-5.8-5.8.0/drivers/gpu/drm/drm_dp_helper.c @@ -1301,6 +1301,10 @@ * only supports DPCD backlight controls */ { MFG(0x4c, 0x83), PROD_ID(0x41, 0x41), BIT(DP_QUIRK_FORCE_DPCD_BACKLIGHT) }, + /* HP Spectre x360 Convertible 13t-aw100 */ + { MFG(0x4c, 0x83), PROD_ID(0x42, 0x41), BIT(DP_QUIRK_FORCE_DPCD_BACKLIGHT) }, + /* HP CML 2020 system */ + { MFG(0x4c, 0x83), PROD_ID(0x45, 0x41), BIT(DP_QUIRK_FORCE_DPCD_BACKLIGHT) }, /* * Some Dell CML 2020 systems have panels support both AUX and PWM * backlight control, and some only support AUX backlight control. All @@ -1311,11 +1315,20 @@ * controls anyway...). Until we have a better way of detecting these, * force DPCD backlight mode on all of them. */ + { MFG(0x06, 0xaf), PROD_ID(0x8c, 0xcd), BIT(DP_QUIRK_FORCE_DPCD_BACKLIGHT) }, { MFG(0x06, 0xaf), PROD_ID(0x9b, 0x32), BIT(DP_QUIRK_FORCE_DPCD_BACKLIGHT) }, { MFG(0x06, 0xaf), PROD_ID(0xeb, 0x41), BIT(DP_QUIRK_FORCE_DPCD_BACKLIGHT) }, + { MFG(0x30, 0xe4), PROD_ID(0x61, 0x06), BIT(DP_QUIRK_FORCE_DPCD_BACKLIGHT) }, { MFG(0x4d, 0x10), PROD_ID(0xc7, 0x14), BIT(DP_QUIRK_FORCE_DPCD_BACKLIGHT) }, { MFG(0x4d, 0x10), PROD_ID(0xe6, 0x14), BIT(DP_QUIRK_FORCE_DPCD_BACKLIGHT) }, { MFG(0x4c, 0x83), PROD_ID(0x47, 0x41), BIT(DP_QUIRK_FORCE_DPCD_BACKLIGHT) }, + { MFG(0x4c, 0x83), PROD_ID(0x4f, 0x41), BIT(DP_QUIRK_FORCE_DPCD_BACKLIGHT) }, + /* + * Some HP ZBook Studio G7 systems have panels support and relies on + * PSR being enabled. + */ + { MFG(0x0d, 0xae), PROD_ID(0x19, 0x15), BIT(DP_QUIRK_FORCE_PSR_CHIP_DEFAULT) }, + { MFG(0x09, 0xe5), PROD_ID(0xde, 0x08), BIT(DP_QUIRK_FORCE_DPCD_BACKLIGHT) }, }; #undef MFG --- linux-azure-5.8-5.8.0.orig/drivers/gpu/drm/drm_dp_mst_topology.c +++ linux-azure-5.8-5.8.0/drivers/gpu/drm/drm_dp_mst_topology.c @@ -88,8 +88,8 @@ static bool drm_dp_validate_guid(struct drm_dp_mst_topology_mgr *mgr, u8 *guid); -static int drm_dp_mst_register_i2c_bus(struct drm_dp_aux *aux); -static void drm_dp_mst_unregister_i2c_bus(struct drm_dp_aux *aux); +static int drm_dp_mst_register_i2c_bus(struct drm_dp_mst_port *port); +static void drm_dp_mst_unregister_i2c_bus(struct drm_dp_mst_port *port); static void drm_dp_mst_kick_tx(struct drm_dp_mst_topology_mgr *mgr); #define DBG_PREFIX "[dp_mst]" @@ -1197,7 +1197,8 @@ /* remove from q */ if (txmsg->state == DRM_DP_SIDEBAND_TX_QUEUED || - txmsg->state == DRM_DP_SIDEBAND_TX_START_SEND) + txmsg->state == DRM_DP_SIDEBAND_TX_START_SEND || + txmsg->state == DRM_DP_SIDEBAND_TX_SENT) list_del(&txmsg->next); } out: @@ -1966,7 +1967,7 @@ } /* remove i2c over sideband */ - drm_dp_mst_unregister_i2c_bus(&port->aux); + drm_dp_mst_unregister_i2c_bus(port); } else { mutex_lock(&mgr->lock); drm_dp_mst_topology_put_mstb(port->mstb); @@ -1981,7 +1982,7 @@ if (port->pdt != DP_PEER_DEVICE_NONE) { if (drm_dp_mst_is_end_device(port->pdt, port->mcs)) { /* add i2c over sideband */ - ret = drm_dp_mst_register_i2c_bus(&port->aux); + ret = drm_dp_mst_register_i2c_bus(port); } else { lct = drm_dp_calculate_rad(port, rad); mstb = drm_dp_add_mst_branch_device(lct, rad); @@ -2158,7 +2159,8 @@ } if (port->pdt != DP_PEER_DEVICE_NONE && - drm_dp_mst_is_end_device(port->pdt, port->mcs)) { + drm_dp_mst_is_end_device(port->pdt, port->mcs) && + port->port_num >= DP_MST_LOGICAL_PORT_0) { port->cached_edid = drm_get_edid(port->connector, &port->aux.ddc); drm_connector_set_tile_property(port->connector); @@ -3431,14 +3433,26 @@ return 0; } -static int drm_dp_get_vc_payload_bw(u8 dp_link_bw, u8 dp_link_count) +/** + * drm_dp_get_vc_payload_bw - get the VC payload BW for an MST link + * @link_rate: link rate in 10kbits/s units + * @link_lane_count: lane count + * + * Calculate the total bandwidth of a MultiStream Transport link. The returned + * value is in units of PBNs/(timeslots/1 MTP). This value can be used to + * convert the number of PBNs required for a given stream to the number of + * timeslots this stream requires in each MTP. + */ +int drm_dp_get_vc_payload_bw(int link_rate, int link_lane_count) { - if (dp_link_bw == 0 || dp_link_count == 0) - DRM_DEBUG_KMS("invalid link bandwidth in DPCD: %x (link count: %d)\n", - dp_link_bw, dp_link_count); + if (link_rate == 0 || link_lane_count == 0) + DRM_DEBUG_KMS("invalid link rate/lane count: (%d / %d)\n", + link_rate, link_lane_count); - return dp_link_bw * dp_link_count / 2; + /* See DP v2.0 2.6.4.2, VCPayload_Bandwidth_for_OneTimeSlotPer_MTP_Allocation */ + return link_rate * link_lane_count / 54000; } +EXPORT_SYMBOL(drm_dp_get_vc_payload_bw); /** * drm_dp_mst_topology_mgr_set_mst() - Set the MST state for a topology manager @@ -3472,7 +3486,7 @@ goto out_unlock; } - mgr->pbn_div = drm_dp_get_vc_payload_bw(mgr->dpcd[1], + mgr->pbn_div = drm_dp_get_vc_payload_bw(drm_dp_bw_code_to_link_rate(mgr->dpcd[1]), mgr->dpcd[2] & DP_MAX_LANE_COUNT_MASK); if (mgr->pbn_div == 0) { ret = -EINVAL; @@ -3991,6 +4005,7 @@ switch (port->pdt) { case DP_PEER_DEVICE_NONE: + break; case DP_PEER_DEVICE_MST_BRANCHING: if (!port->mcs) ret = connector_status_connected; @@ -4261,11 +4276,11 @@ { int ret; - port = drm_dp_mst_topology_get_port_validated(mgr, port); - if (!port) + if (slots < 0) return false; - if (slots < 0) + port = drm_dp_mst_topology_get_port_validated(mgr, port); + if (!port) return false; if (port->vcpi.vcpi > 0) { @@ -4281,6 +4296,7 @@ if (ret) { DRM_DEBUG_KMS("failed to init vcpi slots=%d max=63 ret=%d\n", DIV_ROUND_UP(pbn, mgr->pbn_div), ret); + drm_dp_mst_topology_put_port(port); goto out; } DRM_DEBUG_KMS("initing vcpi for pbn=%d slots=%d\n", @@ -4641,12 +4657,13 @@ static inline void drm_dp_delayed_destroy_port(struct drm_dp_mst_port *port) { + drm_dp_port_set_pdt(port, DP_PEER_DEVICE_NONE, port->mcs); + if (port->connector) { drm_connector_unregister(port->connector); drm_connector_put(port->connector); } - drm_dp_port_set_pdt(port, DP_PEER_DEVICE_NONE, port->mcs); drm_dp_mst_put_port_malloc(port); } @@ -4990,8 +5007,8 @@ crtc = conn_state->crtc; - if (WARN_ON(!crtc)) - return -EINVAL; + if (!crtc) + continue; if (!drm_dp_mst_dsc_aux_for_port(pos->port)) continue; @@ -5346,22 +5363,26 @@ /** * drm_dp_mst_register_i2c_bus() - register an I2C adapter for I2C-over-AUX - * @aux: DisplayPort AUX channel + * @port: The port to add the I2C bus on * * Returns 0 on success or a negative error code on failure. */ -static int drm_dp_mst_register_i2c_bus(struct drm_dp_aux *aux) +static int drm_dp_mst_register_i2c_bus(struct drm_dp_mst_port *port) { + struct drm_dp_aux *aux = &port->aux; + struct device *parent_dev = port->mgr->dev->dev; + aux->ddc.algo = &drm_dp_mst_i2c_algo; aux->ddc.algo_data = aux; aux->ddc.retries = 3; aux->ddc.class = I2C_CLASS_DDC; aux->ddc.owner = THIS_MODULE; - aux->ddc.dev.parent = aux->dev; - aux->ddc.dev.of_node = aux->dev->of_node; + /* FIXME: set the kdev of the port's connector as parent */ + aux->ddc.dev.parent = parent_dev; + aux->ddc.dev.of_node = parent_dev->of_node; - strlcpy(aux->ddc.name, aux->name ? aux->name : dev_name(aux->dev), + strlcpy(aux->ddc.name, aux->name ? aux->name : dev_name(parent_dev), sizeof(aux->ddc.name)); return i2c_add_adapter(&aux->ddc); @@ -5369,11 +5390,11 @@ /** * drm_dp_mst_unregister_i2c_bus() - unregister an I2C-over-AUX adapter - * @aux: DisplayPort AUX channel + * @port: The port to remove the I2C bus from */ -static void drm_dp_mst_unregister_i2c_bus(struct drm_dp_aux *aux) +static void drm_dp_mst_unregister_i2c_bus(struct drm_dp_mst_port *port) { - i2c_del_adapter(&aux->ddc); + i2c_del_adapter(&port->aux.ddc); } /** --- linux-azure-5.8-5.8.0.orig/drivers/gpu/drm/drm_edid.c +++ linux-azure-5.8-5.8.0/drivers/gpu/drm/drm_edid.c @@ -3059,6 +3059,8 @@ height = (cvt->code[0] + ((cvt->code[1] & 0xf0) << 4) + 1) * 2; switch (cvt->code[1] & 0x0c) { + /* default - because compiler doesn't see that we've enumerated all cases */ + default: case 0x00: width = height * 4 / 3; break; --- linux-azure-5.8-5.8.0.orig/drivers/gpu/drm/drm_fb_helper.c +++ linux-azure-5.8-5.8.0/drivers/gpu/drm/drm_fb_helper.c @@ -923,11 +923,15 @@ drm_modeset_lock_all(fb_helper->dev); drm_client_for_each_modeset(modeset, &fb_helper->client) { crtc = modeset->crtc; - if (!crtc->funcs->gamma_set || !crtc->gamma_size) - return -EINVAL; + if (!crtc->funcs->gamma_set || !crtc->gamma_size) { + ret = -EINVAL; + goto out; + } - if (cmap->start + cmap->len > crtc->gamma_size) - return -EINVAL; + if (cmap->start + cmap->len > crtc->gamma_size) { + ret = -EINVAL; + goto out; + } r = crtc->gamma_store; g = r + crtc->gamma_size; @@ -940,8 +944,9 @@ ret = crtc->funcs->gamma_set(crtc, r, g, b, crtc->gamma_size, NULL); if (ret) - return ret; + goto out; } +out: drm_modeset_unlock_all(fb_helper->dev); return ret; --- linux-azure-5.8-5.8.0.orig/drivers/gpu/drm/drm_gem.c +++ linux-azure-5.8-5.8.0/drivers/gpu/drm/drm_gem.c @@ -709,6 +709,8 @@ if (!objs) return -ENOMEM; + *objs_out = objs; + handles = kvmalloc_array(count, sizeof(u32), GFP_KERNEL); if (!handles) { ret = -ENOMEM; @@ -722,8 +724,6 @@ } ret = objects_lookup(filp, handles, count, objs); - *objs_out = objs; - out: kvfree(handles); return ret; --- linux-azure-5.8-5.8.0.orig/drivers/gpu/drm/drm_gem_vram_helper.c +++ linux-azure-5.8-5.8.0/drivers/gpu/drm/drm_gem_vram_helper.c @@ -175,6 +175,10 @@ } } +/* + * Note that on error, drm_gem_vram_init will free the buffer object. + */ + static int drm_gem_vram_init(struct drm_device *dev, struct drm_gem_vram_object *gbo, size_t size, unsigned long pg_align) @@ -184,15 +188,19 @@ int ret; size_t acc_size; - if (WARN_ONCE(!vmm, "VRAM MM not initialized")) + if (WARN_ONCE(!vmm, "VRAM MM not initialized")) { + kfree(gbo); return -EINVAL; + } bdev = &vmm->bdev; gbo->bo.base.funcs = &drm_gem_vram_object_funcs; ret = drm_gem_object_init(dev, &gbo->bo.base, size); - if (ret) + if (ret) { + kfree(gbo); return ret; + } acc_size = ttm_bo_dma_acc_size(bdev, size, sizeof(*gbo)); @@ -203,13 +211,13 @@ &gbo->placement, pg_align, false, acc_size, NULL, NULL, ttm_buffer_object_destroy); if (ret) - goto err_drm_gem_object_release; + /* + * A failing ttm_bo_init will call ttm_buffer_object_destroy + * to release gbo->bo.base and kfree gbo. + */ + return ret; return 0; - -err_drm_gem_object_release: - drm_gem_object_release(&gbo->bo.base); - return ret; } /** @@ -243,13 +251,9 @@ ret = drm_gem_vram_init(dev, gbo, size, pg_align); if (ret < 0) - goto err_kfree; + return ERR_PTR(ret); return gbo; - -err_kfree: - kfree(gbo); - return ERR_PTR(ret); } EXPORT_SYMBOL(drm_gem_vram_create); --- linux-azure-5.8-5.8.0.orig/drivers/gpu/drm/drm_mipi_dsi.c +++ linux-azure-5.8-5.8.0/drivers/gpu/drm/drm_mipi_dsi.c @@ -1082,11 +1082,11 @@ */ int mipi_dsi_dcs_set_tear_scanline(struct mipi_dsi_device *dsi, u16 scanline) { - u8 payload[3] = { MIPI_DCS_SET_TEAR_SCANLINE, scanline >> 8, - scanline & 0xff }; + u8 payload[2] = { scanline >> 8, scanline & 0xff }; ssize_t err; - err = mipi_dsi_generic_write(dsi, payload, sizeof(payload)); + err = mipi_dsi_dcs_write(dsi, MIPI_DCS_SET_TEAR_SCANLINE, payload, + sizeof(payload)); if (err < 0) return err; --- linux-azure-5.8-5.8.0.orig/drivers/gpu/drm/drm_mm.c +++ linux-azure-5.8-5.8.0/drivers/gpu/drm/drm_mm.c @@ -407,7 +407,7 @@ left_node = rb_entry(left_rb_node, struct drm_mm_node, rb_hole_addr); if ((left_node->subtree_max_hole < size || - entry->size == entry->subtree_max_hole) && + HOLE_SIZE(entry) == entry->subtree_max_hole) && parent_rb_node && parent_rb_node->rb_left != rb_node) return rb_hole_addr_to_node(parent_rb_node); } @@ -447,7 +447,7 @@ right_node = rb_entry(right_rb_node, struct drm_mm_node, rb_hole_addr); if ((right_node->subtree_max_hole < size || - entry->size == entry->subtree_max_hole) && + HOLE_SIZE(entry) == entry->subtree_max_hole) && parent_rb_node && parent_rb_node->rb_right != rb_node) return rb_hole_addr_to_node(parent_rb_node); } --- linux-azure-5.8-5.8.0.orig/drivers/gpu/drm/drm_mode_object.c +++ linux-azure-5.8-5.8.0/drivers/gpu/drm/drm_mode_object.c @@ -428,7 +428,7 @@ out_unref: drm_mode_object_put(obj); out: - DRM_MODESET_LOCK_ALL_END(ctx, ret); + DRM_MODESET_LOCK_ALL_END(dev, ctx, ret); return ret; } @@ -470,7 +470,7 @@ break; } drm_property_change_valid_put(prop, ref); - DRM_MODESET_LOCK_ALL_END(ctx, ret); + DRM_MODESET_LOCK_ALL_END(dev, ctx, ret); return ret; } --- linux-azure-5.8-5.8.0.orig/drivers/gpu/drm/drm_modes.c +++ linux-azure-5.8-5.8.0/drivers/gpu/drm/drm_modes.c @@ -764,7 +764,7 @@ else if (mode->htotal > 0 && mode->vtotal > 0) { unsigned int num, den; - num = mode->clock * 1000; + num = mode->clock; den = mode->htotal * mode->vtotal; if (mode->flags & DRM_MODE_FLAG_INTERLACE) @@ -774,7 +774,7 @@ if (mode->vscan > 1) den *= mode->vscan; - refresh = DIV_ROUND_CLOSEST(num, den); + refresh = DIV_ROUND_CLOSEST_ULL(mul_u32_u32(num, 1000), den); } return refresh; } --- linux-azure-5.8-5.8.0.orig/drivers/gpu/drm/drm_panel_orientation_quirks.c +++ linux-azure-5.8-5.8.0/drivers/gpu/drm/drm_panel_orientation_quirks.c @@ -121,6 +121,12 @@ DMI_EXACT_MATCH(DMI_PRODUCT_NAME, "T101HA"), }, .driver_data = (void *)&lcd800x1280_rightside_up, + }, { /* Asus T103HAF */ + .matches = { + DMI_EXACT_MATCH(DMI_SYS_VENDOR, "ASUSTeK COMPUTER INC."), + DMI_EXACT_MATCH(DMI_PRODUCT_NAME, "T103HAF"), + }, + .driver_data = (void *)&lcd800x1280_rightside_up, }, { /* GPD MicroPC (generic strings, also match on bios date) */ .matches = { DMI_EXACT_MATCH(DMI_SYS_VENDOR, "Default string"), --- linux-azure-5.8-5.8.0.orig/drivers/gpu/drm/drm_plane.c +++ linux-azure-5.8-5.8.0/drivers/gpu/drm/drm_plane.c @@ -791,7 +791,7 @@ crtc_x, crtc_y, crtc_w, crtc_h, src_x, src_y, src_w, src_h, &ctx); - DRM_MODESET_LOCK_ALL_END(ctx, ret); + DRM_MODESET_LOCK_ALL_END(plane->dev, ctx, ret); return ret; } --- linux-azure-5.8-5.8.0.orig/drivers/gpu/drm/drm_syncobj.c +++ linux-azure-5.8-5.8.0/drivers/gpu/drm/drm_syncobj.c @@ -388,19 +388,18 @@ return -ENOENT; *fence = drm_syncobj_fence_get(syncobj); - drm_syncobj_put(syncobj); if (*fence) { ret = dma_fence_chain_find_seqno(fence, point); if (!ret) - return 0; + goto out; dma_fence_put(*fence); } else { ret = -EINVAL; } if (!(flags & DRM_SYNCOBJ_WAIT_FLAGS_WAIT_FOR_SUBMIT)) - return ret; + goto out; memset(&wait, 0, sizeof(wait)); wait.task = current; @@ -432,6 +431,9 @@ if (wait.node.next) drm_syncobj_remove_wait(syncobj, &wait); +out: + drm_syncobj_put(syncobj); + return ret; } EXPORT_SYMBOL(drm_syncobj_find_fence); --- linux-azure-5.8-5.8.0.orig/drivers/gpu/drm/etnaviv/etnaviv_gpu.c +++ linux-azure-5.8-5.8.0/drivers/gpu/drm/etnaviv/etnaviv_gpu.c @@ -337,9 +337,16 @@ gpu->identity.model = gpu_read(gpu, VIVS_HI_CHIP_MODEL); gpu->identity.revision = gpu_read(gpu, VIVS_HI_CHIP_REV); - gpu->identity.product_id = gpu_read(gpu, VIVS_HI_CHIP_PRODUCT_ID); gpu->identity.customer_id = gpu_read(gpu, VIVS_HI_CHIP_CUSTOMER_ID); - gpu->identity.eco_id = gpu_read(gpu, VIVS_HI_CHIP_ECO_ID); + + /* + * Reading these two registers on GC600 rev 0x19 result in a + * unhandled fault: external abort on non-linefetch + */ + if (!etnaviv_is_model_rev(gpu, GC600, 0x19)) { + gpu->identity.product_id = gpu_read(gpu, VIVS_HI_CHIP_PRODUCT_ID); + gpu->identity.eco_id = gpu_read(gpu, VIVS_HI_CHIP_ECO_ID); + } /* * !!!! HACK ALERT !!!! @@ -722,7 +729,7 @@ ret = pm_runtime_get_sync(gpu->dev); if (ret < 0) { dev_err(gpu->dev, "Failed to enable GPU power domain\n"); - return ret; + goto pm_put; } etnaviv_hw_identify(gpu); @@ -819,6 +826,7 @@ fail: pm_runtime_mark_last_busy(gpu->dev); +pm_put: pm_runtime_put_autosuspend(gpu->dev); return ret; @@ -859,7 +867,7 @@ ret = pm_runtime_get_sync(gpu->dev); if (ret < 0) - return ret; + goto pm_put; dma_lo = gpu_read(gpu, VIVS_FE_DMA_LOW); dma_hi = gpu_read(gpu, VIVS_FE_DMA_HIGH); @@ -1003,6 +1011,7 @@ ret = 0; pm_runtime_mark_last_busy(gpu->dev); +pm_put: pm_runtime_put_autosuspend(gpu->dev); return ret; @@ -1016,7 +1025,7 @@ dev_err(gpu->dev, "recover hung GPU!\n"); if (pm_runtime_get_sync(gpu->dev) < 0) - return; + goto pm_put; mutex_lock(&gpu->lock); @@ -1035,6 +1044,7 @@ mutex_unlock(&gpu->lock); pm_runtime_mark_last_busy(gpu->dev); +pm_put: pm_runtime_put_autosuspend(gpu->dev); } @@ -1308,8 +1318,10 @@ if (!submit->runtime_resumed) { ret = pm_runtime_get_sync(gpu->dev); - if (ret < 0) + if (ret < 0) { + pm_runtime_put_noidle(gpu->dev); return NULL; + } submit->runtime_resumed = true; } @@ -1326,6 +1338,7 @@ ret = event_alloc(gpu, nr_events, event); if (ret) { DRM_ERROR("no free events\n"); + pm_runtime_put_noidle(gpu->dev); return NULL; } @@ -1496,7 +1509,7 @@ if (gpu->clk_bus) { ret = clk_prepare_enable(gpu->clk_bus); if (ret) - return ret; + goto disable_clk_reg; } if (gpu->clk_core) { @@ -1519,6 +1532,9 @@ disable_clk_bus: if (gpu->clk_bus) clk_disable_unprepare(gpu->clk_bus); +disable_clk_reg: + if (gpu->clk_reg) + clk_disable_unprepare(gpu->clk_reg); return ret; } --- linux-azure-5.8-5.8.0.orig/drivers/gpu/drm/etnaviv/etnaviv_sched.c +++ linux-azure-5.8-5.8.0/drivers/gpu/drm/etnaviv/etnaviv_sched.c @@ -89,12 +89,15 @@ u32 dma_addr; int change; + /* block scheduler */ + drm_sched_stop(&gpu->sched, sched_job); + /* * If the GPU managed to complete this jobs fence, the timout is * spurious. Bail out. */ if (dma_fence_is_signaled(submit->out_fence)) - return; + goto out_no_timeout; /* * If the GPU is still making forward progress on the front-end (which @@ -105,12 +108,9 @@ change = dma_addr - gpu->hangcheck_dma_addr; if (change < 0 || change > 16) { gpu->hangcheck_dma_addr = dma_addr; - return; + goto out_no_timeout; } - /* block scheduler */ - drm_sched_stop(&gpu->sched, sched_job); - if(sched_job) drm_sched_increase_karma(sched_job); @@ -120,6 +120,7 @@ drm_sched_resubmit_jobs(&gpu->sched); +out_no_timeout: /* restart scheduler after GPU is usable again */ drm_sched_start(&gpu->sched, true); } --- linux-azure-5.8-5.8.0.orig/drivers/gpu/drm/exynos/Kconfig +++ linux-azure-5.8-5.8.0/drivers/gpu/drm/exynos/Kconfig @@ -1,7 +1,8 @@ # SPDX-License-Identifier: GPL-2.0-only config DRM_EXYNOS tristate "DRM Support for Samsung SoC Exynos Series" - depends on OF && DRM && (ARCH_S3C64XX || ARCH_S5PV210 || ARCH_EXYNOS || ARCH_MULTIPLATFORM || COMPILE_TEST) + depends on OF && DRM && COMMON_CLK + depends on ARCH_S3C64XX || ARCH_S5PV210 || ARCH_EXYNOS || ARCH_MULTIPLATFORM || COMPILE_TEST depends on MMU select DRM_KMS_HELPER select VIDEOMODE_HELPERS --- linux-azure-5.8-5.8.0.orig/drivers/gpu/drm/exynos/exynos_drm_g2d.c +++ linux-azure-5.8-5.8.0/drivers/gpu/drm/exynos/exynos_drm_g2d.c @@ -395,8 +395,8 @@ return; out: - dma_unmap_sg(to_dma_dev(g2d->drm_dev), g2d_userptr->sgt->sgl, - g2d_userptr->sgt->nents, DMA_BIDIRECTIONAL); + dma_unmap_sgtable(to_dma_dev(g2d->drm_dev), g2d_userptr->sgt, + DMA_BIDIRECTIONAL, 0); pages = frame_vector_pages(g2d_userptr->vec); if (!IS_ERR(pages)) { @@ -511,10 +511,10 @@ g2d_userptr->sgt = sgt; - if (!dma_map_sg(to_dma_dev(g2d->drm_dev), sgt->sgl, sgt->nents, - DMA_BIDIRECTIONAL)) { + ret = dma_map_sgtable(to_dma_dev(g2d->drm_dev), sgt, + DMA_BIDIRECTIONAL, 0); + if (ret) { DRM_DEV_ERROR(g2d->dev, "failed to map sgt with dma region.\n"); - ret = -ENOMEM; goto err_sg_free_table; } --- linux-azure-5.8-5.8.0.orig/drivers/gpu/drm/gma500/cdv_intel_dp.c +++ linux-azure-5.8-5.8.0/drivers/gpu/drm/gma500/cdv_intel_dp.c @@ -2078,12 +2078,12 @@ intel_dp->dpcd, sizeof(intel_dp->dpcd)); cdv_intel_edp_panel_vdd_off(gma_encoder); - if (ret == 0) { + if (ret <= 0) { /* if this fails, presume the device is a ghost */ DRM_INFO("failed to retrieve link info, disabling eDP\n"); drm_encoder_cleanup(encoder); cdv_intel_dp_destroy(connector); - goto err_priv; + goto err_connector; } else { DRM_DEBUG_KMS("DPCD: Rev=%x LN_Rate=%x LN_CNT=%x LN_DOWNSP=%x\n", intel_dp->dpcd[0], intel_dp->dpcd[1], --- linux-azure-5.8-5.8.0.orig/drivers/gpu/drm/gma500/oaktrail_hdmi_i2c.c +++ linux-azure-5.8-5.8.0/drivers/gpu/drm/gma500/oaktrail_hdmi_i2c.c @@ -279,11 +279,8 @@ hdmi_dev = pci_get_drvdata(dev); i2c_dev = kzalloc(sizeof(struct hdmi_i2c_dev), GFP_KERNEL); - if (i2c_dev == NULL) { - DRM_ERROR("Can't allocate interface\n"); - ret = -ENOMEM; - goto exit; - } + if (!i2c_dev) + return -ENOMEM; i2c_dev->adap = &oaktrail_hdmi_i2c_adapter; i2c_dev->status = I2C_STAT_INIT; @@ -300,16 +297,23 @@ oaktrail_hdmi_i2c_adapter.name, hdmi_dev); if (ret) { DRM_ERROR("Failed to request IRQ for I2C controller\n"); - goto err; + goto free_dev; } /* Adapter registration */ ret = i2c_add_numbered_adapter(&oaktrail_hdmi_i2c_adapter); - return ret; + if (ret) { + DRM_ERROR("Failed to add I2C adapter\n"); + goto free_irq; + } + + return 0; -err: +free_irq: + free_irq(dev->irq, hdmi_dev); +free_dev: kfree(i2c_dev); -exit: + return ret; } --- linux-azure-5.8-5.8.0.orig/drivers/gpu/drm/gma500/psb_drv.c +++ linux-azure-5.8-5.8.0/drivers/gpu/drm/gma500/psb_drv.c @@ -313,6 +313,8 @@ if (ret) goto out_err; + ret = -ENOMEM; + dev_priv->mmu = psb_mmu_driver_init(dev, 1, 0, 0); if (!dev_priv->mmu) goto out_err; --- linux-azure-5.8-5.8.0.orig/drivers/gpu/drm/gma500/psb_irq.c +++ linux-azure-5.8-5.8.0/drivers/gpu/drm/gma500/psb_irq.c @@ -347,6 +347,7 @@ { struct drm_psb_private *dev_priv = dev->dev_private; unsigned long irqflags; + unsigned int i; spin_lock_irqsave(&dev_priv->irqmask_lock, irqflags); @@ -359,20 +360,12 @@ PSB_WVDC32(dev_priv->vdc_irq_mask, PSB_INT_ENABLE_R); PSB_WVDC32(0xFFFFFFFF, PSB_HWSTAM); - if (dev->vblank[0].enabled) - psb_enable_pipestat(dev_priv, 0, PIPE_VBLANK_INTERRUPT_ENABLE); - else - psb_disable_pipestat(dev_priv, 0, PIPE_VBLANK_INTERRUPT_ENABLE); - - if (dev->vblank[1].enabled) - psb_enable_pipestat(dev_priv, 1, PIPE_VBLANK_INTERRUPT_ENABLE); - else - psb_disable_pipestat(dev_priv, 1, PIPE_VBLANK_INTERRUPT_ENABLE); - - if (dev->vblank[2].enabled) - psb_enable_pipestat(dev_priv, 2, PIPE_VBLANK_INTERRUPT_ENABLE); - else - psb_disable_pipestat(dev_priv, 2, PIPE_VBLANK_INTERRUPT_ENABLE); + for (i = 0; i < dev->num_crtcs; ++i) { + if (dev->vblank[i].enabled) + psb_enable_pipestat(dev_priv, i, PIPE_VBLANK_INTERRUPT_ENABLE); + else + psb_disable_pipestat(dev_priv, i, PIPE_VBLANK_INTERRUPT_ENABLE); + } if (dev_priv->ops->hotplug_enable) dev_priv->ops->hotplug_enable(dev, true); @@ -385,6 +378,7 @@ { struct drm_psb_private *dev_priv = dev->dev_private; unsigned long irqflags; + unsigned int i; spin_lock_irqsave(&dev_priv->irqmask_lock, irqflags); @@ -393,14 +387,10 @@ PSB_WVDC32(0xFFFFFFFF, PSB_HWSTAM); - if (dev->vblank[0].enabled) - psb_disable_pipestat(dev_priv, 0, PIPE_VBLANK_INTERRUPT_ENABLE); - - if (dev->vblank[1].enabled) - psb_disable_pipestat(dev_priv, 1, PIPE_VBLANK_INTERRUPT_ENABLE); - - if (dev->vblank[2].enabled) - psb_disable_pipestat(dev_priv, 2, PIPE_VBLANK_INTERRUPT_ENABLE); + for (i = 0; i < dev->num_crtcs; ++i) { + if (dev->vblank[i].enabled) + psb_disable_pipestat(dev_priv, i, PIPE_VBLANK_INTERRUPT_ENABLE); + } dev_priv->vdc_irq_mask &= _PSB_IRQ_SGX_FLAG | _PSB_IRQ_MSVDX_FLAG | --- linux-azure-5.8-5.8.0.orig/drivers/gpu/drm/i915/Kconfig.debug +++ linux-azure-5.8-5.8.0/drivers/gpu/drm/i915/Kconfig.debug @@ -153,6 +153,7 @@ select DRM_EXPORT_FOR_TESTS if m select FAULT_INJECTION select PRIME_NUMBERS + select CRC32 help Choose this option to allow the driver to perform selftests upon loading; also requires the i915.selftest=1 module parameter. To --- linux-azure-5.8-5.8.0.orig/drivers/gpu/drm/i915/display/icl_dsi.c +++ linux-azure-5.8-5.8.0/drivers/gpu/drm/i915/display/icl_dsi.c @@ -1590,10 +1590,6 @@ get_dsi_io_power_domains(i915, enc_to_intel_dsi(encoder)); - - if (crtc_state->dsc.compression_enable) - intel_display_power_get(i915, - intel_dsc_power_domain(crtc_state)); } static bool gen11_dsi_get_hw_state(struct intel_encoder *encoder, --- linux-azure-5.8-5.8.0.orig/drivers/gpu/drm/i915/display/intel_bios.c +++ linux-azure-5.8-5.8.0/drivers/gpu/drm/i915/display/intel_bios.c @@ -32,6 +32,7 @@ #include "display/intel_gmbus.h" #include "i915_drv.h" +#include #define _INTEL_BIOS_PRIVATE #include "intel_vbt_defs.h" @@ -2084,6 +2085,22 @@ return NULL; } +#define DRM_DMI_PRODUCT_VERSION 0x6 + +static void parse_product_info(struct drm_i915_private *dev_priv) +{ + const char *product_ver = dmi_get_system_info(DRM_DMI_PRODUCT_VERSION); + if (!product_ver) + return; + + if (!strncmp(product_ver, "ThinkPad X1", 11)) { + DRM_DEBUG_KMS("dmi: %s, Bypassing TMDS_OE write\n", product_ver); + dev_priv->bypass_tmds_oe = true; + } + + return; +} + /** * intel_bios_init - find VBT and initialize settings from the BIOS * @dev_priv: i915 device instance @@ -2146,6 +2163,8 @@ parse_sdvo_device_mapping(dev_priv, bdb->version); parse_ddi_ports(dev_priv, bdb->version); + parse_product_info(dev_priv); + out: if (!vbt) { drm_info(&dev_priv->drm, --- linux-azure-5.8-5.8.0.orig/drivers/gpu/drm/i915/display/intel_ddi.c +++ linux-azure-5.8-5.8.0/drivers/gpu/drm/i915/display/intel_ddi.c @@ -2442,6 +2442,9 @@ u32 n_entries, val; int ln, rate = 0; + if (enc_to_dig_port(encoder)->tc_mode == TC_PORT_TBT_ALT) + return; + if (type != INTEL_OUTPUT_HDMI) { struct intel_dp *intel_dp = enc_to_intel_dp(encoder); @@ -2450,12 +2453,11 @@ ddi_translations = icl_get_mg_buf_trans(dev_priv, type, rate, &n_entries); - /* The table does not have values for level 3 and level 9. */ - if (level >= n_entries || level == 3 || level == 9) { + if (level >= n_entries) { drm_dbg_kms(&dev_priv->drm, "DDI translation not found for level %d. Using %d instead.", - level, n_entries - 2); - level = n_entries - 2; + level, n_entries - 1); + level = n_entries - 1; } /* Set MG_TX_LINK_PARAMS cri_use_fs32 to 0. */ @@ -2586,6 +2588,9 @@ const struct tgl_dkl_phy_ddi_buf_trans *ddi_translations; u32 n_entries, val, ln, dpcnt_mask, dpcnt_val; + if (enc_to_dig_port(encoder)->tc_mode == TC_PORT_TBT_ALT) + return; + if (type == INTEL_OUTPUT_HDMI) { n_entries = ARRAY_SIZE(tgl_dkl_phy_hdmi_ddi_trans); ddi_translations = tgl_dkl_phy_hdmi_ddi_trans; @@ -3105,6 +3110,23 @@ intel_de_posting_read(dev_priv, intel_dp->regs.dp_tp_ctl); } +static void intel_ddi_power_up_lanes(struct intel_encoder *encoder, + const struct intel_crtc_state *crtc_state) +{ + struct drm_i915_private *i915 = to_i915(encoder->base.dev); + struct intel_digital_port *dig_port = enc_to_dig_port(encoder); + enum phy phy = intel_port_to_phy(i915, encoder->port); + + if (intel_phy_is_combo(i915, phy)) { + bool lane_reversal = + dig_port->saved_port_bits & DDI_BUF_PORT_REVERSAL; + + intel_combo_phy_power_up_lanes(i915, phy, false, + crtc_state->lane_count, + lane_reversal); + } +} + static void tgl_ddi_pre_enable_dp(struct intel_atomic_state *state, struct intel_encoder *encoder, const struct intel_crtc_state *crtc_state, @@ -3198,14 +3220,7 @@ * 7.f Combo PHY: Configure PORT_CL_DW10 Static Power Down to power up * the used lanes of the DDI. */ - if (intel_phy_is_combo(dev_priv, phy)) { - bool lane_reversal = - dig_port->saved_port_bits & DDI_BUF_PORT_REVERSAL; - - intel_combo_phy_power_up_lanes(dev_priv, phy, false, - crtc_state->lane_count, - lane_reversal); - } + intel_ddi_power_up_lanes(encoder, crtc_state); /* * 7.g Configure and enable DDI_BUF_CTL @@ -3289,14 +3304,7 @@ else intel_prepare_dp_ddi_buffers(encoder, crtc_state); - if (intel_phy_is_combo(dev_priv, phy)) { - bool lane_reversal = - dig_port->saved_port_bits & DDI_BUF_PORT_REVERSAL; - - intel_combo_phy_power_up_lanes(dev_priv, phy, false, - crtc_state->lane_count, - lane_reversal); - } + intel_ddi_power_up_lanes(encoder, crtc_state); intel_ddi_init_dp_buf_reg(encoder); if (!is_mst) @@ -3766,6 +3774,8 @@ intel_de_write(dev_priv, reg, val); } + intel_ddi_power_up_lanes(encoder, crtc_state); + /* In HDMI/DVI mode, the port width, and swing/emphasis values * are ignored so nothing special needs to be done besides * enabling the port. @@ -4155,11 +4165,6 @@ if (drm_WARN_ON(&dev_priv->drm, transcoder_is_dsi(cpu_transcoder))) return; - if (INTEL_GEN(dev_priv) >= 12) { - intel_dp->regs.dp_tp_ctl = TGL_DP_TP_CTL(cpu_transcoder); - intel_dp->regs.dp_tp_status = TGL_DP_TP_STATUS(cpu_transcoder); - } - intel_dsc_get_config(encoder, pipe_config); temp = intel_de_read(dev_priv, TRANS_DDI_FUNC_CTL(cpu_transcoder)); @@ -4261,6 +4266,16 @@ break; } + if (INTEL_GEN(dev_priv) >= 12) { + enum transcoder transcoder = + intel_dp_mst_is_slave_trans(pipe_config) ? + pipe_config->mst_master_transcoder : + pipe_config->cpu_transcoder; + + intel_dp->regs.dp_tp_ctl = TGL_DP_TP_CTL(transcoder); + intel_dp->regs.dp_tp_status = TGL_DP_TP_STATUS(transcoder); + } + pipe_config->has_audio = intel_ddi_is_audio_enabled(dev_priv, cpu_transcoder); --- linux-azure-5.8-5.8.0.orig/drivers/gpu/drm/i915/display/intel_display.c +++ linux-azure-5.8-5.8.0/drivers/gpu/drm/i915/display/intel_display.c @@ -3431,6 +3431,14 @@ if (IS_ERR(obj)) return NULL; + /* + * Mark it WT ahead of time to avoid changing the + * cache_level during fbdev initialization. The + * unbind there would get stuck waiting for rcu. + */ + i915_gem_object_set_cache_coherency(obj, HAS_WT(i915) ? + I915_CACHE_WT : I915_CACHE_NONE); + switch (plane_config->tiling) { case I915_TILING_NONE: break; @@ -4832,6 +4840,8 @@ plane_color_ctl |= PLANE_COLOR_YUV_RANGE_CORRECTION_DISABLE; } else if (fb->format->is_yuv) { plane_color_ctl |= PLANE_COLOR_INPUT_CSC_ENABLE; + if (plane_state->hw.color_range == DRM_COLOR_YCBCR_FULL_RANGE) + plane_color_ctl |= PLANE_COLOR_YUV_RANGE_CORRECTION_DISABLE; } return plane_color_ctl; @@ -10563,6 +10573,10 @@ val & PLANE_CTL_FLIP_HORIZONTAL) plane_config->rotation |= DRM_MODE_REFLECT_X; + /* 90/270 degree rotation would require extra work */ + if (drm_rotation_90_or_270(plane_config->rotation)) + goto error; + base = intel_de_read(dev_priv, PLANE_SURF(pipe, plane_id)) & 0xfffff000; plane_config->base = base; @@ -12783,10 +12797,11 @@ case 10 ... 11: bpp = 10 * 3; break; - case 12: + case 12 ... 16: bpp = 12 * 3; break; default: + MISSING_CASE(conn_state->max_bpc); return -EINVAL; } --- linux-azure-5.8-5.8.0.orig/drivers/gpu/drm/i915/display/intel_display_types.h +++ linux-azure-5.8-5.8.0/drivers/gpu/drm/i915/display/intel_display_types.h @@ -1376,6 +1376,9 @@ /* Displayport compliance testing */ struct intel_dp_compliance compliance; + /* To control wakeup latency, e.g. for irq-driven dp aux transfers. */ + struct pm_qos_request pm_qos; + /* Display stream compression testing */ bool force_dsc_en; }; --- linux-azure-5.8-5.8.0.orig/drivers/gpu/drm/i915/display/intel_dp.c +++ linux-azure-5.8-5.8.0/drivers/gpu/drm/i915/display/intel_dp.c @@ -585,7 +585,7 @@ return 0; } /* Also take into account max slice width */ - min_slice_count = min_t(u8, min_slice_count, + min_slice_count = max_t(u8, min_slice_count, DIV_ROUND_UP(mode_hdisplay, max_slice_width)); @@ -1391,7 +1391,7 @@ * lowest possible wakeup latency and so prevent the cpu from going into * deep sleep states. */ - cpu_latency_qos_update_request(&i915->pm_qos, 0); + cpu_latency_qos_update_request(&intel_dp->pm_qos, 0); intel_dp_check_edp(intel_dp); @@ -1524,7 +1524,7 @@ ret = recv_bytes; out: - cpu_latency_qos_update_request(&i915->pm_qos, PM_QOS_DEFAULT_VALUE); + cpu_latency_qos_update_request(&intel_dp->pm_qos, PM_QOS_DEFAULT_VALUE); if (vdd) edp_panel_vdd_off(intel_dp, false); @@ -1740,6 +1740,9 @@ static void intel_dp_aux_fini(struct intel_dp *intel_dp) { + if (cpu_latency_qos_request_active(&intel_dp->pm_qos)) + cpu_latency_qos_remove_request(&intel_dp->pm_qos); + kfree(intel_dp->aux.name); } @@ -1782,6 +1785,7 @@ aux_ch_name(dig_port->aux_ch), port_name(encoder->port)); intel_dp->aux.transfer = intel_dp_aux_transfer; + cpu_latency_qos_add_request(&intel_dp->pm_qos, PM_QOS_DEFAULT_VALUE); } bool intel_dp_source_supports_hbr2(struct intel_dp *intel_dp) --- linux-azure-5.8-5.8.0.orig/drivers/gpu/drm/i915/display/intel_dp_aux_backlight.c +++ linux-azure-5.8-5.8.0/drivers/gpu/drm/i915/display/intel_dp_aux_backlight.c @@ -347,9 +347,13 @@ struct intel_panel *panel = &intel_connector->panel; struct intel_dp *intel_dp = enc_to_intel_dp(intel_connector->encoder); struct drm_i915_private *i915 = dp_to_i915(intel_dp); + bool force_dpcd; + + force_dpcd = drm_dp_has_quirk(&intel_dp->desc, intel_dp->edid_quirks, + DP_QUIRK_FORCE_DPCD_BACKLIGHT); if (i915_modparams.enable_dpcd_backlight == 0 || - !intel_dp_aux_display_control_capable(intel_connector)) + (!force_dpcd && !intel_dp_aux_display_control_capable(intel_connector))) return -ENODEV; /* @@ -358,9 +362,7 @@ */ if (i915->vbt.backlight.type != INTEL_BACKLIGHT_VESA_EDP_AUX_INTERFACE && - i915_modparams.enable_dpcd_backlight != 1 && - !drm_dp_has_quirk(&intel_dp->desc, intel_dp->edid_quirks, - DP_QUIRK_FORCE_DPCD_BACKLIGHT)) { + i915_modparams.enable_dpcd_backlight != 1 && !force_dpcd) { drm_info(&i915->drm, "Panel advertises DPCD backlight support, but " "VBT disagrees. If your backlight controls " --- linux-azure-5.8-5.8.0.orig/drivers/gpu/drm/i915/display/intel_dp_mst.c +++ linux-azure-5.8-5.8.0/drivers/gpu/drm/i915/display/intel_dp_mst.c @@ -66,7 +66,9 @@ slots = drm_dp_atomic_find_vcpi_slots(state, &intel_dp->mst_mgr, connector->port, - crtc_state->pbn, 0); + crtc_state->pbn, + drm_dp_get_vc_payload_bw(crtc_state->port_clock, + crtc_state->lane_count)); if (slots == -EDEADLK) return slots; if (slots >= 0) --- linux-azure-5.8-5.8.0.orig/drivers/gpu/drm/i915/display/intel_dpll_mgr.c +++ linux-azure-5.8-5.8.0/drivers/gpu/drm/i915/display/intel_dpll_mgr.c @@ -2934,6 +2934,15 @@ static const struct skl_wrpll_params tgl_tbt_pll_24MHz_values = { .dco_integer = 0x43, .dco_fraction = 0x4000, /* the following params are unused */ +}; + +/* + * Display WA #22010492432: tgl + * Divide the nominal .dco_fraction value by 2. + */ +static const struct skl_wrpll_params tgl_tbt_pll_38_4MHz_values = { + .dco_integer = 0x54, .dco_fraction = 0x1800, + /* the following params are unused */ .pdiv = 0, .kdiv = 0, .qdiv_mode = 0, .qdiv_ratio = 0, }; @@ -2970,12 +2979,14 @@ MISSING_CASE(dev_priv->dpll.ref_clks.nssc); /* fall-through */ case 19200: - case 38400: *pll_params = tgl_tbt_pll_19_2MHz_values; break; case 24000: *pll_params = tgl_tbt_pll_24MHz_values; break; + case 38400: + *pll_params = tgl_tbt_pll_38_4MHz_values; + break; } } else { switch (dev_priv->dpll.ref_clks.nssc) { --- linux-azure-5.8-5.8.0.orig/drivers/gpu/drm/i915/display/intel_hdcp.c +++ linux-azure-5.8-5.8.0/drivers/gpu/drm/i915/display/intel_hdcp.c @@ -336,8 +336,10 @@ /* Fill up the empty slots in sha_text and write it out */ sha_empty = sizeof(sha_text) - sha_leftovers; - for (j = 0; j < sha_empty; j++) - sha_text |= ksv[j] << ((sizeof(sha_text) - j - 1) * 8); + for (j = 0; j < sha_empty; j++) { + u8 off = ((sizeof(sha_text) - j - 1 - sha_leftovers) * 8); + sha_text |= ksv[j] << off; + } ret = intel_write_sha_text(dev_priv, sha_text); if (ret < 0) @@ -435,7 +437,7 @@ /* Write 32 bits of text */ intel_de_write(dev_priv, HDCP_REP_CTL, rep_ctl | HDCP_SHA1_TEXT_32); - sha_text |= bstatus[0] << 24 | bstatus[1] << 16; + sha_text |= bstatus[0] << 8 | bstatus[1]; ret = intel_write_sha_text(dev_priv, sha_text); if (ret < 0) return ret; @@ -450,17 +452,29 @@ return ret; sha_idx += sizeof(sha_text); } + + /* + * Terminate the SHA-1 stream by hand. For the other leftover + * cases this is appended by the hardware. + */ + intel_de_write(dev_priv, HDCP_REP_CTL, + rep_ctl | HDCP_SHA1_TEXT_32); + sha_text = DRM_HDCP_SHA1_TERMINATOR << 24; + ret = intel_write_sha_text(dev_priv, sha_text); + if (ret < 0) + return ret; + sha_idx += sizeof(sha_text); } else if (sha_leftovers == 3) { - /* Write 32 bits of text */ + /* Write 32 bits of text (filled from LSB) */ intel_de_write(dev_priv, HDCP_REP_CTL, rep_ctl | HDCP_SHA1_TEXT_32); - sha_text |= bstatus[0] << 24; + sha_text |= bstatus[0]; ret = intel_write_sha_text(dev_priv, sha_text); if (ret < 0) return ret; sha_idx += sizeof(sha_text); - /* Write 8 bits of text, 24 bits of M0 */ + /* Write 8 bits of text (filled from LSB), 24 bits of M0 */ intel_de_write(dev_priv, HDCP_REP_CTL, rep_ctl | HDCP_SHA1_TEXT_8); ret = intel_write_sha_text(dev_priv, bstatus[1]); @@ -2100,6 +2114,7 @@ if (content_protection_type_changed) { mutex_lock(&hdcp->mutex); hdcp->value = DRM_MODE_CONTENT_PROTECTION_DESIRED; + drm_connector_get(&connector->base); schedule_work(&hdcp->prop_work); mutex_unlock(&hdcp->mutex); } --- linux-azure-5.8-5.8.0.orig/drivers/gpu/drm/i915/display/intel_hdmi.c +++ linux-azure-5.8-5.8.0/drivers/gpu/drm/i915/display/intel_hdmi.c @@ -1268,6 +1268,11 @@ if (hdmi->dp_dual_mode.type < DRM_DP_DUAL_MODE_TYPE2_DVI) return; + if (dev_priv->bypass_tmds_oe) { + drm_dbg_kms(&dev_priv->drm, "Bypassing TMDS_OE setting\n"); + return; + } + drm_dbg_kms(&dev_priv->drm, "%s DP dual mode adaptor TMDS output\n", enable ? "Enabling" : "Disabling"); @@ -2197,7 +2202,11 @@ has_hdmi_sink)) return MODE_CLOCK_HIGH; - /* BXT DPLL can't generate 223-240 MHz */ + /* GLK DPLL can't generate 446-480 MHz */ + if (IS_GEMINILAKE(dev_priv) && clock > 446666 && clock < 480000) + return MODE_CLOCK_RANGE; + + /* BXT/GLK DPLL can't generate 223-240 MHz */ if (IS_GEN9_LP(dev_priv) && clock > 223333 && clock < 240000) return MODE_CLOCK_RANGE; --- linux-azure-5.8-5.8.0.orig/drivers/gpu/drm/i915/display/intel_lpe_audio.c +++ linux-azure-5.8-5.8.0/drivers/gpu/drm/i915/display/intel_lpe_audio.c @@ -174,6 +174,14 @@ handle_simple_irq, "hdmi_lpe_audio_irq_handler"); + static const struct pci_device_id irq_quirk_ids[] = { + /* Dell Wyse 3040 */ + {PCI_DEVICE_SUB(PCI_VENDOR_ID_INTEL, 0x22b0, 0x1028, 0x07c1)}, + {} + }; + + if (pci_dev_present(irq_quirk_ids)) + return 0; return irq_set_chip_data(irq, dev_priv); } --- linux-azure-5.8-5.8.0.orig/drivers/gpu/drm/i915/display/intel_overlay.c +++ linux-azure-5.8-5.8.0/drivers/gpu/drm/i915/display/intel_overlay.c @@ -179,6 +179,7 @@ struct intel_crtc *crtc; struct i915_vma *vma; struct i915_vma *old_vma; + struct intel_frontbuffer *frontbuffer; bool active; bool pfit_active; u32 pfit_vscale_ratio; /* shifted-point number, (1<<12) == 1.0 */ @@ -279,21 +280,19 @@ struct i915_vma *vma) { enum pipe pipe = overlay->crtc->pipe; - struct intel_frontbuffer *from = NULL, *to = NULL; + struct intel_frontbuffer *frontbuffer = NULL; drm_WARN_ON(&overlay->i915->drm, overlay->old_vma); - if (overlay->vma) - from = intel_frontbuffer_get(overlay->vma->obj); if (vma) - to = intel_frontbuffer_get(vma->obj); + frontbuffer = intel_frontbuffer_get(vma->obj); - intel_frontbuffer_track(from, to, INTEL_FRONTBUFFER_OVERLAY(pipe)); + intel_frontbuffer_track(overlay->frontbuffer, frontbuffer, + INTEL_FRONTBUFFER_OVERLAY(pipe)); - if (to) - intel_frontbuffer_put(to); - if (from) - intel_frontbuffer_put(from); + if (overlay->frontbuffer) + intel_frontbuffer_put(overlay->frontbuffer); + overlay->frontbuffer = frontbuffer; intel_frontbuffer_flip_prepare(overlay->i915, INTEL_FRONTBUFFER_OVERLAY(pipe)); --- linux-azure-5.8-5.8.0.orig/drivers/gpu/drm/i915/display/intel_panel.c +++ linux-azure-5.8-5.8.0/drivers/gpu/drm/i915/display/intel_panel.c @@ -1644,16 +1644,13 @@ val = pch_get_backlight(connector); else val = lpt_get_backlight(connector); - val = intel_panel_compute_brightness(connector, val); - panel->backlight.level = clamp(val, panel->backlight.min, - panel->backlight.max); if (cpu_mode) { drm_dbg_kms(&dev_priv->drm, "CPU backlight register was enabled, switching to PCH override\n"); /* Write converted CPU PWM value to PCH override register */ - lpt_set_backlight(connector->base.state, panel->backlight.level); + lpt_set_backlight(connector->base.state, val); intel_de_write(dev_priv, BLC_PWM_PCH_CTL1, pch_ctl1 | BLM_PCH_OVERRIDE_ENABLE); @@ -1661,6 +1658,10 @@ cpu_ctl2 & ~BLM_PWM_ENABLE); } + val = intel_panel_compute_brightness(connector, val); + panel->backlight.level = clamp(val, panel->backlight.min, + panel->backlight.max); + return 0; } --- linux-azure-5.8-5.8.0.orig/drivers/gpu/drm/i915/display/intel_psr.c +++ linux-azure-5.8-5.8.0/drivers/gpu/drm/i915/display/intel_psr.c @@ -1450,6 +1450,14 @@ */ dev_priv->hsw_psr_mmio_adjust = _SRD_CTL_EDP - _HSW_EDP_PSR_BASE; + /* + * PSR was disabled by module parameters but the underlying panel is + * depending on it, so use per-chip default to probe that automatically. + */ + if ((dev_priv->psr.dp->edid_quirks & BIT(DP_QUIRK_FORCE_PSR_CHIP_DEFAULT)) && + i915_modparams.enable_psr == 0) + i915_modparams.enable_psr = -1; + if (i915_modparams.enable_psr == -1) if (INTEL_GEN(dev_priv) < 9 || !dev_priv->vbt.psr.enable) i915_modparams.enable_psr = 0; @@ -1622,7 +1630,7 @@ return; intel_connector = to_intel_connector(connector); - dig_port = enc_to_dig_port(intel_attached_encoder(intel_connector)); + dig_port = enc_to_dig_port(to_intel_encoder(new_state->best_encoder)); if (dev_priv->psr.dp != &dig_port->dp) return; --- linux-azure-5.8-5.8.0.orig/drivers/gpu/drm/i915/display/intel_sprite.c +++ linux-azure-5.8-5.8.0/drivers/gpu/drm/i915/display/intel_sprite.c @@ -453,13 +453,19 @@ /* Preoffset values for YUV to RGB Conversion */ #define PREOFF_YUV_TO_RGB_HI 0x1800 -#define PREOFF_YUV_TO_RGB_ME 0x1F00 +#define PREOFF_YUV_TO_RGB_ME 0x0000 #define PREOFF_YUV_TO_RGB_LO 0x1800 #define ROFF(x) (((x) & 0xffff) << 16) #define GOFF(x) (((x) & 0xffff) << 0) #define BOFF(x) (((x) & 0xffff) << 16) +/* + * Programs the input color space conversion stage for ICL HDR planes. + * Note that it is assumed that this stage always happens after YUV + * range correction. Thus, the input to this stage is assumed to be + * in full-range YCbCr. + */ static void icl_program_input_csc(struct intel_plane *plane, const struct intel_crtc_state *crtc_state, @@ -507,52 +513,7 @@ 0x0, 0x7800, 0x7F10, }, }; - - /* Matrix for Limited Range to Full Range Conversion */ - static const u16 input_csc_matrix_lr[][9] = { - /* - * BT.601 Limted range YCbCr -> full range RGB - * The matrix required is : - * [1.164384, 0.000, 1.596027, - * 1.164384, -0.39175, -0.812813, - * 1.164384, 2.017232, 0.0000] - */ - [DRM_COLOR_YCBCR_BT601] = { - 0x7CC8, 0x7950, 0x0, - 0x8D00, 0x7950, 0x9C88, - 0x0, 0x7950, 0x6810, - }, - /* - * BT.709 Limited range YCbCr -> full range RGB - * The matrix required is : - * [1.164384, 0.000, 1.792741, - * 1.164384, -0.213249, -0.532909, - * 1.164384, 2.112402, 0.0000] - */ - [DRM_COLOR_YCBCR_BT709] = { - 0x7E58, 0x7950, 0x0, - 0x8888, 0x7950, 0xADA8, - 0x0, 0x7950, 0x6870, - }, - /* - * BT.2020 Limited range YCbCr -> full range RGB - * The matrix required is : - * [1.164, 0.000, 1.678, - * 1.164, -0.1873, -0.6504, - * 1.164, 2.1417, 0.0000] - */ - [DRM_COLOR_YCBCR_BT2020] = { - 0x7D70, 0x7950, 0x0, - 0x8A68, 0x7950, 0xAC00, - 0x0, 0x7950, 0x6890, - }, - }; - const u16 *csc; - - if (plane_state->hw.color_range == DRM_COLOR_YCBCR_FULL_RANGE) - csc = input_csc_matrix[plane_state->hw.color_encoding]; - else - csc = input_csc_matrix_lr[plane_state->hw.color_encoding]; + const u16 *csc = input_csc_matrix[plane_state->hw.color_encoding]; intel_de_write_fw(dev_priv, PLANE_INPUT_CSC_COEFF(pipe, plane_id, 0), ROFF(csc[0]) | GOFF(csc[1])); @@ -569,14 +530,8 @@ intel_de_write_fw(dev_priv, PLANE_INPUT_CSC_PREOFF(pipe, plane_id, 0), PREOFF_YUV_TO_RGB_HI); - if (plane_state->hw.color_range == DRM_COLOR_YCBCR_FULL_RANGE) - intel_de_write_fw(dev_priv, - PLANE_INPUT_CSC_PREOFF(pipe, plane_id, 1), - 0); - else - intel_de_write_fw(dev_priv, - PLANE_INPUT_CSC_PREOFF(pipe, plane_id, 1), - PREOFF_YUV_TO_RGB_ME); + intel_de_write_fw(dev_priv, PLANE_INPUT_CSC_PREOFF(pipe, plane_id, 1), + PREOFF_YUV_TO_RGB_ME); intel_de_write_fw(dev_priv, PLANE_INPUT_CSC_PREOFF(pipe, plane_id, 2), PREOFF_YUV_TO_RGB_LO); intel_de_write_fw(dev_priv, --- linux-azure-5.8-5.8.0.orig/drivers/gpu/drm/i915/display/intel_tc.c +++ linux-azure-5.8-5.8.0/drivers/gpu/drm/i915/display/intel_tc.c @@ -23,36 +23,6 @@ return names[mode]; } -static void -tc_port_load_fia_params(struct drm_i915_private *i915, - struct intel_digital_port *dig_port) -{ - enum port port = dig_port->base.port; - enum tc_port tc_port = intel_port_to_tc(i915, port); - u32 modular_fia; - - if (INTEL_INFO(i915)->display.has_modular_fia) { - modular_fia = intel_uncore_read(&i915->uncore, - PORT_TX_DFLEXDPSP(FIA1)); - drm_WARN_ON(&i915->drm, modular_fia == 0xffffffff); - modular_fia &= MODULAR_FIA_MASK; - } else { - modular_fia = 0; - } - - /* - * Each Modular FIA instance houses 2 TC ports. In SOC that has more - * than two TC ports, there are multiple instances of Modular FIA. - */ - if (modular_fia) { - dig_port->tc_phy_fia = tc_port / 2; - dig_port->tc_phy_fia_idx = tc_port % 2; - } else { - dig_port->tc_phy_fia = FIA1; - dig_port->tc_phy_fia_idx = tc_port; - } -} - static enum intel_display_power_domain tc_cold_get_power_domain(struct intel_digital_port *dig_port) { @@ -642,6 +612,43 @@ mutex_unlock(&dig_port->tc_lock); } +static bool +tc_has_modular_fia(struct drm_i915_private *i915, struct intel_digital_port *dig_port) +{ + intel_wakeref_t wakeref; + u32 val; + + if (!INTEL_INFO(i915)->display.has_modular_fia) + return false; + + wakeref = tc_cold_block(dig_port); + val = intel_uncore_read(&i915->uncore, PORT_TX_DFLEXDPSP(FIA1)); + tc_cold_unblock(dig_port, wakeref); + + drm_WARN_ON(&i915->drm, val == 0xffffffff); + + return val & MODULAR_FIA_MASK; +} + +static void +tc_port_load_fia_params(struct drm_i915_private *i915, struct intel_digital_port *dig_port) +{ + enum port port = dig_port->base.port; + enum tc_port tc_port = intel_port_to_tc(i915, port); + + /* + * Each Modular FIA instance houses 2 TC ports. In SOC that has more + * than two TC ports, there are multiple instances of Modular FIA. + */ + if (tc_has_modular_fia(i915, dig_port)) { + dig_port->tc_phy_fia = tc_port / 2; + dig_port->tc_phy_fia_idx = tc_port % 2; + } else { + dig_port->tc_phy_fia = FIA1; + dig_port->tc_phy_fia_idx = tc_port; + } +} + void intel_tc_port_init(struct intel_digital_port *dig_port, bool is_legacy) { struct drm_i915_private *i915 = to_i915(dig_port->base.base.dev); --- linux-azure-5.8-5.8.0.orig/drivers/gpu/drm/i915/display/vlv_dsi.c +++ linux-azure-5.8-5.8.0/drivers/gpu/drm/i915/display/vlv_dsi.c @@ -812,10 +812,20 @@ intel_dsi_prepare(encoder, pipe_config); intel_dsi_vbt_exec_sequence(intel_dsi, MIPI_SEQ_POWER_ON); - intel_dsi_msleep(intel_dsi, intel_dsi->panel_on_delay); - /* Deassert reset */ - intel_dsi_vbt_exec_sequence(intel_dsi, MIPI_SEQ_DEASSERT_RESET); + /* + * Give the panel time to power-on and then deassert its reset. + * Depending on the VBT MIPI sequences version the deassert-seq + * may contain the necessary delay, intel_dsi_msleep() will skip + * the delay in that case. If there is no deassert-seq, then an + * unconditional msleep is used to give the panel time to power-on. + */ + if (dev_priv->vbt.dsi.sequence[MIPI_SEQ_DEASSERT_RESET]) { + intel_dsi_msleep(intel_dsi, intel_dsi->panel_on_delay); + intel_dsi_vbt_exec_sequence(intel_dsi, MIPI_SEQ_DEASSERT_RESET); + } else { + msleep(intel_dsi->panel_on_delay); + } if (IS_GEMINILAKE(dev_priv)) { glk_cold_boot = glk_dsi_enable_io(encoder); --- linux-azure-5.8-5.8.0.orig/drivers/gpu/drm/i915/gem/i915_gem_context.c +++ linux-azure-5.8-5.8.0/drivers/gpu/drm/i915/gem/i915_gem_context.c @@ -391,24 +391,6 @@ return rcu_dereference_protected(ctx->engines, true); } -static bool __reset_engine(struct intel_engine_cs *engine) -{ - struct intel_gt *gt = engine->gt; - bool success = false; - - if (!intel_has_reset_engine(gt)) - return false; - - if (!test_and_set_bit(I915_RESET_ENGINE + engine->id, - >->reset.flags)) { - success = intel_engine_reset(engine, NULL) == 0; - clear_and_wake_up_bit(I915_RESET_ENGINE + engine->id, - >->reset.flags); - } - - return success; -} - static void __reset_context(struct i915_gem_context *ctx, struct intel_engine_cs *engine) { @@ -432,37 +414,39 @@ * kill the banned context, we fallback to doing a local reset * instead. */ - if (IS_ACTIVE(CONFIG_DRM_I915_PREEMPT_TIMEOUT) && - !intel_engine_pulse(engine)) - return true; - - /* If we are unable to send a pulse, try resetting this engine. */ - return __reset_engine(engine); + return intel_engine_pulse(engine) == 0; } -static struct intel_engine_cs *__active_engine(struct i915_request *rq) +static bool +__active_engine(struct i915_request *rq, struct intel_engine_cs **active) { struct intel_engine_cs *engine, *locked; + bool ret = false; /* * Serialise with __i915_request_submit() so that it sees * is-banned?, or we know the request is already inflight. + * + * Note that rq->engine is unstable, and so we double + * check that we have acquired the lock on the final engine. */ locked = READ_ONCE(rq->engine); spin_lock_irq(&locked->active.lock); while (unlikely(locked != (engine = READ_ONCE(rq->engine)))) { spin_unlock(&locked->active.lock); - spin_lock(&engine->active.lock); locked = engine; + spin_lock(&locked->active.lock); } - engine = NULL; - if (i915_request_is_active(rq) && rq->fence.error != -EIO) - engine = rq->engine; + if (!i915_request_completed(rq)) { + if (i915_request_is_active(rq) && rq->fence.error != -EIO) + *active = locked; + ret = true; + } spin_unlock_irq(&locked->active.lock); - return engine; + return ret; } static struct intel_engine_cs *active_engine(struct intel_context *ce) @@ -473,22 +457,21 @@ if (!ce->timeline) return NULL; - mutex_lock(&ce->timeline->mutex); - list_for_each_entry_reverse(rq, &ce->timeline->requests, link) { - if (i915_request_completed(rq)) - break; + rcu_read_lock(); + list_for_each_entry_rcu(rq, &ce->timeline->requests, link) { + if (i915_request_is_active(rq) && i915_request_completed(rq)) + continue; /* Check with the backend if the request is inflight */ - engine = __active_engine(rq); - if (engine) + if (__active_engine(rq, &engine)) break; } - mutex_unlock(&ce->timeline->mutex); + rcu_read_unlock(); return engine; } -static void kill_engines(struct i915_gem_engines *engines) +static void kill_engines(struct i915_gem_engines *engines, bool ban) { struct i915_gem_engines_iter it; struct intel_context *ce; @@ -503,7 +486,7 @@ for_each_gem_engine(ce, engines, it) { struct intel_engine_cs *engine; - if (intel_context_set_banned(ce)) + if (ban && intel_context_set_banned(ce)) continue; /* @@ -516,7 +499,7 @@ engine = active_engine(ce); /* First attempt to gracefully cancel the context */ - if (engine && !__cancel_engine(engine)) + if (engine && !__cancel_engine(engine) && ban) /* * If we are unable to send a preemptive pulse to bump * the context from the GPU, we have to resort to a full @@ -526,8 +509,10 @@ } } -static void kill_stale_engines(struct i915_gem_context *ctx) +static void kill_context(struct i915_gem_context *ctx) { + bool ban = (!i915_gem_context_is_persistent(ctx) || + !i915_modparams.enable_hangcheck); struct i915_gem_engines *pos, *next; spin_lock_irq(&ctx->stale.lock); @@ -540,7 +525,7 @@ spin_unlock_irq(&ctx->stale.lock); - kill_engines(pos); + kill_engines(pos, ban); spin_lock_irq(&ctx->stale.lock); GEM_BUG_ON(i915_sw_fence_signaled(&pos->fence)); @@ -552,11 +537,6 @@ spin_unlock_irq(&ctx->stale.lock); } -static void kill_context(struct i915_gem_context *ctx) -{ - kill_stale_engines(ctx); -} - static void engines_idle_release(struct i915_gem_context *ctx, struct i915_gem_engines *engines) { @@ -591,7 +571,7 @@ kill: if (list_empty(&engines->link)) /* raced, already closed */ - kill_engines(engines); + kill_engines(engines, true); i915_sw_fence_commit(&engines->fence); } @@ -649,9 +629,7 @@ * case we opt to forcibly kill off all remaining requests on * context close. */ - if (!i915_gem_context_is_persistent(ctx) || - !i915_modparams.enable_hangcheck) - kill_context(ctx); + kill_context(ctx); i915_gem_context_put(ctx); } @@ -714,6 +692,7 @@ ctx->i915 = i915; ctx->sched.priority = I915_USER_PRIORITY(I915_PRIORITY_NORMAL); mutex_init(&ctx->mutex); + INIT_LIST_HEAD(&ctx->link); spin_lock_init(&ctx->stale.lock); INIT_LIST_HEAD(&ctx->stale.engines); @@ -740,10 +719,6 @@ for (i = 0; i < ARRAY_SIZE(ctx->hang_timestamp); i++) ctx->hang_timestamp[i] = jiffies - CONTEXT_FAST_HANG_JIFFIES; - spin_lock(&i915->gem.contexts.lock); - list_add_tail(&ctx->link, &i915->gem.contexts.list); - spin_unlock(&i915->gem.contexts.lock); - return ctx; err_free: @@ -931,6 +906,7 @@ struct drm_i915_file_private *fpriv, u32 *id) { + struct drm_i915_private *i915 = ctx->i915; struct i915_address_space *vm; int ret; @@ -949,8 +925,16 @@ /* And finally expose ourselves to userspace via the idr */ ret = xa_alloc(&fpriv->context_xa, id, ctx, xa_limit_32b, GFP_KERNEL); if (ret) - put_pid(fetch_and_zero(&ctx->pid)); + goto err_pid; + + spin_lock(&i915->gem.contexts.lock); + list_add_tail(&ctx->link, &i915->gem.contexts.list); + spin_unlock(&i915->gem.contexts.lock); + + return 0; +err_pid: + put_pid(fetch_and_zero(&ctx->pid)); return ret; } --- linux-azure-5.8-5.8.0.orig/drivers/gpu/drm/i915/gem/i915_gem_domain.c +++ linux-azure-5.8-5.8.0/drivers/gpu/drm/i915/gem/i915_gem_domain.c @@ -485,21 +485,6 @@ return -ENOENT; /* - * Already in the desired write domain? Nothing for us to do! - * - * We apply a little bit of cunning here to catch a broader set of - * no-ops. If obj->write_domain is set, we must be in the same - * obj->read_domains, and only that domain. Therefore, if that - * obj->write_domain matches the request read_domains, we are - * already in the same read/write domain and can skip the operation, - * without having to further check the requested write_domain. - */ - if (READ_ONCE(obj->write_domain) == read_domains) { - err = 0; - goto out; - } - - /* * Try to flush the object off the GPU without holding the lock. * We will repeat the flush holding the lock in the normal manner * to catch cases where we are gazumped. @@ -536,6 +521,19 @@ if (err) goto out; + /* + * Already in the desired write domain? Nothing for us to do! + * + * We apply a little bit of cunning here to catch a broader set of + * no-ops. If obj->write_domain is set, we must be in the same + * obj->read_domains, and only that domain. Therefore, if that + * obj->write_domain matches the request read_domains, we are + * already in the same read/write domain and can skip the operation, + * without having to further check the requested write_domain. + */ + if (READ_ONCE(obj->write_domain) == read_domains) + goto out_unpin; + err = i915_gem_object_lock_interruptible(obj); if (err) goto out_unpin; --- linux-azure-5.8-5.8.0.orig/drivers/gpu/drm/i915/gem/i915_gem_execbuffer.c +++ linux-azure-5.8-5.8.0/drivers/gpu/drm/i915/gem/i915_gem_execbuffer.c @@ -421,7 +421,7 @@ return true; if (!(flags & EXEC_OBJECT_SUPPORTS_48B_ADDRESS) && - (vma->node.start + vma->node.size - 1) >> 32) + (vma->node.start + vma->node.size + 4095) >> 32) return true; if (flags & __EXEC_OBJECT_NEEDS_MAP && @@ -1956,8 +1956,8 @@ struct i915_vma *batch; struct i915_vma *shadow; struct i915_vma *trampoline; - unsigned int batch_offset; - unsigned int batch_length; + unsigned long batch_offset; + unsigned long batch_length; }; static int __eb_parse(struct dma_fence_work *work) @@ -2027,6 +2027,9 @@ struct eb_parse_work *pw; int err; + GEM_BUG_ON(overflows_type(eb->batch_start_offset, pw->batch_offset)); + GEM_BUG_ON(overflows_type(eb->batch_len, pw->batch_length)); + pw = kzalloc(sizeof(*pw), GFP_KERNEL); if (!pw) return -ENOMEM; @@ -2605,7 +2608,7 @@ break; } -static void eb_request_add(struct i915_execbuffer *eb) +static int eb_request_add(struct i915_execbuffer *eb, int err) { struct i915_request *rq = eb->request; struct intel_timeline * const tl = i915_request_timeline(rq); @@ -2626,6 +2629,7 @@ /* Serialise with context_close via the add_to_timeline */ i915_request_set_error_once(rq, -ENOENT); __i915_request_skip(rq); + err = -ENOENT; /* override any transient errors */ } __i915_request_queue(rq, &attr); @@ -2635,6 +2639,8 @@ retire_requests(tl, prev); mutex_unlock(&tl->mutex); + + return err; } static int @@ -2836,7 +2842,7 @@ err_request: add_to_client(eb.request, file); i915_request_get(eb.request); - eb_request_add(&eb); + err = eb_request_add(&eb, err); if (fences) signal_fence_array(&eb, fences); --- linux-azure-5.8-5.8.0.orig/drivers/gpu/drm/i915/gem/i915_gem_pages.c +++ linux-azure-5.8-5.8.0/drivers/gpu/drm/i915/gem/i915_gem_pages.c @@ -254,9 +254,35 @@ if (!i915_gem_object_has_struct_page(obj) && type != I915_MAP_WC) return NULL; + if (GEM_WARN_ON(type == I915_MAP_WC && + !static_cpu_has(X86_FEATURE_PAT))) + return NULL; + /* A single page can always be kmapped */ - if (n_pte == 1 && type == I915_MAP_WB) - return kmap(sg_page(sgt->sgl)); + if (n_pte == 1 && type == I915_MAP_WB) { + struct page *page = sg_page(sgt->sgl); + + /* + * On 32b, highmem using a finite set of indirect PTE (i.e. + * vmap) to provide virtual mappings of the high pages. + * As these are finite, map_new_virtual() must wait for some + * other kmap() to finish when it runs out. If we map a large + * number of objects, there is no method for it to tell us + * to release the mappings, and we deadlock. + * + * However, if we make an explicit vmap of the page, that + * uses a larger vmalloc arena, and also has the ability + * to tell us to release unwanted mappings. Most importantly, + * it will fail and propagate an error instead of waiting + * forever. + * + * So if the page is beyond the 32b boundary, make an explicit + * vmap. On 64b, this check will be optimised away as we can + * directly kmap any page on the system. + */ + if (!PageHighMem(page)) + return kmap(page); + } mem = stack; if (n_pte > ARRAY_SIZE(stack)) { --- linux-azure-5.8-5.8.0.orig/drivers/gpu/drm/i915/gem/i915_gem_stolen.c +++ linux-azure-5.8-5.8.0/drivers/gpu/drm/i915/gem/i915_gem_stolen.c @@ -53,8 +53,10 @@ struct drm_mm_node *node, u64 size, unsigned alignment) { - return i915_gem_stolen_insert_node_in_range(i915, node, size, - alignment, 0, U64_MAX); + return i915_gem_stolen_insert_node_in_range(i915, node, + size, alignment, + I915_GEM_STOLEN_BIAS, + U64_MAX); } void i915_gem_stolen_remove_node(struct drm_i915_private *i915, --- linux-azure-5.8-5.8.0.orig/drivers/gpu/drm/i915/gem/i915_gem_stolen.h +++ linux-azure-5.8-5.8.0/drivers/gpu/drm/i915/gem/i915_gem_stolen.h @@ -30,4 +30,6 @@ resource_size_t stolen_offset, resource_size_t size); +#define I915_GEM_STOLEN_BIAS SZ_128K + #endif /* __I915_GEM_STOLEN_H__ */ --- linux-azure-5.8-5.8.0.orig/drivers/gpu/drm/i915/gt/gen7_renderclear.c +++ linux-azure-5.8-5.8.0/drivers/gpu/drm/i915/gt/gen7_renderclear.c @@ -7,8 +7,6 @@ #include "i915_drv.h" #include "intel_gpu_commands.h" -#define MAX_URB_ENTRIES 64 -#define STATE_SIZE (4 * 1024) #define GT3_INLINE_DATA_DELAYS 0x1E00 #define batch_advance(Y, CS) GEM_BUG_ON((Y)->end != (CS)) @@ -34,38 +32,59 @@ }; struct batch_vals { - u32 max_primitives; - u32 max_urb_entries; - u32 cmd_size; - u32 state_size; + u32 max_threads; u32 state_start; - u32 batch_size; + u32 surface_start; u32 surface_height; u32 surface_width; - u32 scratch_size; - u32 max_size; + u32 size; }; +static inline int num_primitives(const struct batch_vals *bv) +{ + /* + * We need to saturate the GPU with work in order to dispatch + * a shader on every HW thread, and clear the thread-local registers. + * In short, we have to dispatch work faster than the shaders can + * run in order to fill the EU and occupy each HW thread. + */ + return bv->max_threads; +} + static void batch_get_defaults(struct drm_i915_private *i915, struct batch_vals *bv) { if (IS_HASWELL(i915)) { - bv->max_primitives = 280; - bv->max_urb_entries = MAX_URB_ENTRIES; + switch (INTEL_INFO(i915)->gt) { + default: + case 1: + bv->max_threads = 70; + break; + case 2: + bv->max_threads = 140; + break; + case 3: + bv->max_threads = 280; + break; + } bv->surface_height = 16 * 16; bv->surface_width = 32 * 2 * 16; } else { - bv->max_primitives = 128; - bv->max_urb_entries = MAX_URB_ENTRIES / 2; + switch (INTEL_INFO(i915)->gt) { + default: + case 1: /* including vlv */ + bv->max_threads = 36; + break; + case 2: + bv->max_threads = 128; + break; + } bv->surface_height = 16 * 8; bv->surface_width = 32 * 16; } - bv->cmd_size = bv->max_primitives * 4096; - bv->state_size = STATE_SIZE; - bv->state_start = bv->cmd_size; - bv->batch_size = bv->cmd_size + bv->state_size; - bv->scratch_size = bv->surface_height * bv->surface_width; - bv->max_size = bv->batch_size + bv->scratch_size; + bv->state_start = round_up(SZ_1K + num_primitives(bv) * 64, SZ_4K); + bv->surface_start = bv->state_start + SZ_4K; + bv->size = bv->surface_start + bv->surface_height * bv->surface_width; } static void batch_init(struct batch_chunk *bc, @@ -155,7 +174,8 @@ gen7_fill_binding_table(struct batch_chunk *state, const struct batch_vals *bv) { - u32 surface_start = gen7_fill_surface_state(state, bv->batch_size, bv); + u32 surface_start = + gen7_fill_surface_state(state, bv->surface_start, bv); u32 *cs = batch_alloc_items(state, 32, 8); u32 offset = batch_offset(state, cs); @@ -214,13 +234,13 @@ gen7_emit_state_base_address(struct batch_chunk *batch, u32 surface_state_base) { - u32 *cs = batch_alloc_items(batch, 0, 12); + u32 *cs = batch_alloc_items(batch, 0, 10); - *cs++ = STATE_BASE_ADDRESS | (12 - 2); + *cs++ = STATE_BASE_ADDRESS | (10 - 2); /* general */ *cs++ = batch_addr(batch) | BASE_ADDRESS_MODIFY; /* surface */ - *cs++ = batch_addr(batch) | surface_state_base | BASE_ADDRESS_MODIFY; + *cs++ = (batch_addr(batch) + surface_state_base) | BASE_ADDRESS_MODIFY; /* dynamic */ *cs++ = batch_addr(batch) | BASE_ADDRESS_MODIFY; /* indirect */ @@ -233,8 +253,6 @@ *cs++ = BASE_ADDRESS_MODIFY; *cs++ = 0; *cs++ = BASE_ADDRESS_MODIFY; - *cs++ = 0; - *cs++ = 0; batch_advance(batch, cs); } @@ -244,8 +262,7 @@ u32 urb_size, u32 curbe_size, u32 mode) { - u32 urb_entries = bv->max_urb_entries; - u32 threads = bv->max_primitives - 1; + u32 threads = bv->max_threads - 1; u32 *cs = batch_alloc_items(batch, 32, 8); *cs++ = MEDIA_VFE_STATE | (8 - 2); @@ -254,7 +271,7 @@ *cs++ = 0; /* number of threads & urb entries for GPGPU vs Media Mode */ - *cs++ = threads << 16 | urb_entries << 8 | mode << 2; + *cs++ = threads << 16 | 1 << 8 | mode << 2; *cs++ = 0; @@ -293,17 +310,12 @@ { unsigned int x_offset = (media_object_index % 16) * 64; unsigned int y_offset = (media_object_index / 16) * 16; - unsigned int inline_data_size; - unsigned int media_batch_size; - unsigned int i; + unsigned int pkt = 6 + 3; u32 *cs; - inline_data_size = 112 * 8; - media_batch_size = inline_data_size + 6; - - cs = batch_alloc_items(batch, 8, media_batch_size); + cs = batch_alloc_items(batch, 8, pkt); - *cs++ = MEDIA_OBJECT | (media_batch_size - 2); + *cs++ = MEDIA_OBJECT | (pkt - 2); /* interface descriptor offset */ *cs++ = 0; @@ -317,25 +329,46 @@ *cs++ = 0; /* inline */ - *cs++ = (y_offset << 16) | (x_offset); + *cs++ = y_offset << 16 | x_offset; *cs++ = 0; *cs++ = GT3_INLINE_DATA_DELAYS; - for (i = 3; i < inline_data_size; i++) - *cs++ = 0; batch_advance(batch, cs); } static void gen7_emit_pipeline_flush(struct batch_chunk *batch) { - u32 *cs = batch_alloc_items(batch, 0, 5); + u32 *cs = batch_alloc_items(batch, 0, 4); + + *cs++ = GFX_OP_PIPE_CONTROL(4); + *cs++ = PIPE_CONTROL_RENDER_TARGET_CACHE_FLUSH | + PIPE_CONTROL_DEPTH_CACHE_FLUSH | + PIPE_CONTROL_DC_FLUSH_ENABLE | + PIPE_CONTROL_CS_STALL; + *cs++ = 0; + *cs++ = 0; + + batch_advance(batch, cs); +} + +static void gen7_emit_pipeline_invalidate(struct batch_chunk *batch) +{ + u32 *cs = batch_alloc_items(batch, 0, 10); + + /* ivb: Stall before STATE_CACHE_INVALIDATE */ + *cs++ = GFX_OP_PIPE_CONTROL(5); + *cs++ = PIPE_CONTROL_STALL_AT_SCOREBOARD | + PIPE_CONTROL_CS_STALL; + *cs++ = 0; + *cs++ = 0; + *cs++ = 0; *cs++ = GFX_OP_PIPE_CONTROL(5); - *cs++ = PIPE_CONTROL_STATE_CACHE_INVALIDATE | - PIPE_CONTROL_GLOBAL_GTT_IVB; + *cs++ = PIPE_CONTROL_STATE_CACHE_INVALIDATE; *cs++ = 0; *cs++ = 0; *cs++ = 0; + batch_advance(batch, cs); } @@ -344,34 +377,48 @@ const struct batch_vals *bv) { struct drm_i915_private *i915 = vma->vm->i915; - unsigned int desc_count = 64; - const u32 urb_size = 112; + const unsigned int desc_count = 1; + const unsigned int urb_size = 1; struct batch_chunk cmds, state; - u32 interface_descriptor; + u32 descriptors; unsigned int i; - batch_init(&cmds, vma, start, 0, bv->cmd_size); - batch_init(&state, vma, start, bv->state_start, bv->state_size); + batch_init(&cmds, vma, start, 0, bv->state_start); + batch_init(&state, vma, start, bv->state_start, SZ_4K); - interface_descriptor = - gen7_fill_interface_descriptor(&state, bv, - IS_HASWELL(i915) ? - &cb_kernel_hsw : - &cb_kernel_ivb, - desc_count); + descriptors = gen7_fill_interface_descriptor(&state, bv, + IS_HASWELL(i915) ? + &cb_kernel_hsw : + &cb_kernel_ivb, + desc_count); + + /* Reset inherited context registers */ + gen7_emit_pipeline_flush(&cmds); + gen7_emit_pipeline_invalidate(&cmds); + batch_add(&cmds, MI_LOAD_REGISTER_IMM(2)); + batch_add(&cmds, i915_mmio_reg_offset(CACHE_MODE_0_GEN7)); + batch_add(&cmds, 0xffff0000); + batch_add(&cmds, i915_mmio_reg_offset(CACHE_MODE_1)); + batch_add(&cmds, 0xffff0000 | PIXEL_SUBSPAN_COLLECT_OPT_DISABLE); + gen7_emit_pipeline_invalidate(&cmds); gen7_emit_pipeline_flush(&cmds); + + /* Switch to the media pipeline and our base address */ + gen7_emit_pipeline_invalidate(&cmds); batch_add(&cmds, PIPELINE_SELECT | PIPELINE_SELECT_MEDIA); batch_add(&cmds, MI_NOOP); - gen7_emit_state_base_address(&cmds, interface_descriptor); + gen7_emit_pipeline_invalidate(&cmds); + gen7_emit_pipeline_flush(&cmds); + gen7_emit_state_base_address(&cmds, descriptors); + gen7_emit_pipeline_invalidate(&cmds); + /* Set the clear-residual kernel state */ gen7_emit_vfe_state(&cmds, bv, urb_size - 1, 0, 0); + gen7_emit_interface_descriptor_load(&cmds, descriptors, desc_count); - gen7_emit_interface_descriptor_load(&cmds, - interface_descriptor, - desc_count); - - for (i = 0; i < bv->max_primitives; i++) + /* Execute the kernel on all HW threads */ + for (i = 0; i < num_primitives(bv); i++) gen7_emit_media_object(&cmds, i); batch_add(&cmds, MI_BATCH_BUFFER_END); @@ -385,15 +432,15 @@ batch_get_defaults(engine->i915, &bv); if (!vma) - return bv.max_size; + return bv.size; - GEM_BUG_ON(vma->obj->base.size < bv.max_size); + GEM_BUG_ON(vma->obj->base.size < bv.size); batch = i915_gem_object_pin_map(vma->obj, I915_MAP_WC); if (IS_ERR(batch)) return PTR_ERR(batch); - emit_batch(vma, memset(batch, 0, bv.max_size), &bv); + emit_batch(vma, memset(batch, 0, bv.size), &bv); i915_gem_object_flush_map(vma->obj); i915_gem_object_unpin_map(vma->obj); --- linux-azure-5.8-5.8.0.orig/drivers/gpu/drm/i915/gt/intel_engine.h +++ linux-azure-5.8-5.8.0/drivers/gpu/drm/i915/gt/intel_engine.h @@ -357,4 +357,13 @@ return intel_engine_has_preemption(engine); } +static inline bool +intel_engine_has_heartbeat(const struct intel_engine_cs *engine) +{ + if (!IS_ACTIVE(CONFIG_DRM_I915_HEARTBEAT_INTERVAL)) + return false; + + return READ_ONCE(engine->props.heartbeat_interval_ms); +} + #endif /* _INTEL_RINGBUFFER_H_ */ --- linux-azure-5.8-5.8.0.orig/drivers/gpu/drm/i915/gt/intel_engine_cs.c +++ linux-azure-5.8-5.8.0/drivers/gpu/drm/i915/gt/intel_engine_cs.c @@ -370,7 +370,8 @@ * instances. */ if ((INTEL_GEN(i915) >= 11 && - RUNTIME_INFO(i915)->vdbox_sfc_access & engine->mask) || + (RUNTIME_INFO(i915)->vdbox_sfc_access & + BIT(engine->instance))) || (INTEL_GEN(i915) >= 9 && engine->instance == 0)) engine->uabi_capabilities |= I915_VIDEO_AND_ENHANCE_CLASS_CAPABILITY_SFC; --- linux-azure-5.8-5.8.0.orig/drivers/gpu/drm/i915/gt/intel_engine_heartbeat.c +++ linux-azure-5.8-5.8.0/drivers/gpu/drm/i915/gt/intel_engine_heartbeat.c @@ -150,36 +150,82 @@ INIT_DELAYED_WORK(&engine->heartbeat.work, heartbeat); } +static int __intel_engine_pulse(struct intel_engine_cs *engine) +{ + struct i915_sched_attr attr = { .priority = I915_PRIORITY_BARRIER }; + struct intel_context *ce = engine->kernel_context; + struct i915_request *rq; + + lockdep_assert_held(&ce->timeline->mutex); + GEM_BUG_ON(!intel_engine_has_preemption(engine)); + GEM_BUG_ON(!intel_engine_pm_is_awake(engine)); + + intel_context_enter(ce); + rq = __i915_request_create(ce, GFP_NOWAIT | __GFP_NOWARN); + intel_context_exit(ce); + if (IS_ERR(rq)) + return PTR_ERR(rq); + + __set_bit(I915_FENCE_FLAG_SENTINEL, &rq->fence.flags); + idle_pulse(engine, rq); + + __i915_request_commit(rq); + __i915_request_queue(rq, &attr); + GEM_BUG_ON(rq->sched.attr.priority < I915_PRIORITY_BARRIER); + + return 0; +} + +static unsigned long set_heartbeat(struct intel_engine_cs *engine, + unsigned long delay) +{ + unsigned long old; + + old = xchg(&engine->props.heartbeat_interval_ms, delay); + if (delay) + intel_engine_unpark_heartbeat(engine); + else + intel_engine_park_heartbeat(engine); + + return old; +} + int intel_engine_set_heartbeat(struct intel_engine_cs *engine, unsigned long delay) { - int err; + struct intel_context *ce = engine->kernel_context; + int err = 0; - /* Send one last pulse before to cleanup persistent hogs */ - if (!delay && IS_ACTIVE(CONFIG_DRM_I915_PREEMPT_TIMEOUT)) { - err = intel_engine_pulse(engine); - if (err) - return err; - } + if (!delay && !intel_engine_has_preempt_reset(engine)) + return -ENODEV; + + intel_engine_pm_get(engine); + + err = mutex_lock_interruptible(&ce->timeline->mutex); + if (err) + goto out_rpm; - WRITE_ONCE(engine->props.heartbeat_interval_ms, delay); + if (delay != engine->props.heartbeat_interval_ms) { + unsigned long saved = set_heartbeat(engine, delay); - if (intel_engine_pm_get_if_awake(engine)) { - if (delay) - intel_engine_unpark_heartbeat(engine); - else - intel_engine_park_heartbeat(engine); - intel_engine_pm_put(engine); + /* recheck current execution */ + if (intel_engine_has_preemption(engine)) { + err = __intel_engine_pulse(engine); + if (err) + set_heartbeat(engine, saved); + } } - return 0; + mutex_unlock(&ce->timeline->mutex); + +out_rpm: + intel_engine_pm_put(engine); + return err; } int intel_engine_pulse(struct intel_engine_cs *engine) { - struct i915_sched_attr attr = { .priority = I915_PRIORITY_BARRIER }; struct intel_context *ce = engine->kernel_context; - struct i915_request *rq; int err; if (!intel_engine_has_preemption(engine)) @@ -188,30 +234,12 @@ if (!intel_engine_pm_get_if_awake(engine)) return 0; - if (mutex_lock_interruptible(&ce->timeline->mutex)) { - err = -EINTR; - goto out_rpm; + err = -EINTR; + if (!mutex_lock_interruptible(&ce->timeline->mutex)) { + err = __intel_engine_pulse(engine); + mutex_unlock(&ce->timeline->mutex); } - intel_context_enter(ce); - rq = __i915_request_create(ce, GFP_NOWAIT | __GFP_NOWARN); - intel_context_exit(ce); - if (IS_ERR(rq)) { - err = PTR_ERR(rq); - goto out_unlock; - } - - __set_bit(I915_FENCE_FLAG_SENTINEL, &rq->fence.flags); - idle_pulse(engine, rq); - - __i915_request_commit(rq); - __i915_request_queue(rq, &attr); - GEM_BUG_ON(rq->sched.attr.priority < I915_PRIORITY_BARRIER); - err = 0; - -out_unlock: - mutex_unlock(&ce->timeline->mutex); -out_rpm: intel_engine_pm_put(engine); return err; } --- linux-azure-5.8-5.8.0.orig/drivers/gpu/drm/i915/gt/intel_ggtt.c +++ linux-azure-5.8-5.8.0/drivers/gpu/drm/i915/gt/intel_ggtt.c @@ -514,16 +514,39 @@ mutex_init(&ggtt->error_mutex); if (ggtt->mappable_end) { - /* Reserve a mappable slot for our lockless error capture */ - ret = drm_mm_insert_node_in_range(&ggtt->vm.mm, - &ggtt->error_capture, - PAGE_SIZE, 0, - I915_COLOR_UNEVICTABLE, - 0, ggtt->mappable_end, - DRM_MM_INSERT_LOW); - if (ret) - return ret; + /* + * Reserve a mappable slot for our lockless error capture. + * + * We strongly prefer taking address 0x0 in order to protect + * other critical buffers against accidental overwrites, + * as writing to address 0 is a very common mistake. + * + * Since 0 may already be in use by the system (e.g. the BIOS + * framebuffer), we let the reservation fail quietly and hope + * 0 remains reserved always. + * + * If we fail to reserve 0, and then fail to find any space + * for an error-capture, remain silent. We can afford not + * to reserve an error_capture node as we have fallback + * paths, and we trust that 0 will remain reserved. However, + * the only likely reason for failure to insert is a driver + * bug, which we expect to cause other failures... + */ + ggtt->error_capture.size = I915_GTT_PAGE_SIZE; + ggtt->error_capture.color = I915_COLOR_UNEVICTABLE; + if (drm_mm_reserve_node(&ggtt->vm.mm, &ggtt->error_capture)) + drm_mm_insert_node_in_range(&ggtt->vm.mm, + &ggtt->error_capture, + ggtt->error_capture.size, 0, + ggtt->error_capture.color, + 0, ggtt->mappable_end, + DRM_MM_INSERT_LOW); } + if (drm_mm_node_allocated(&ggtt->error_capture)) + drm_dbg(&ggtt->vm.i915->drm, + "Reserved GGTT:[%llx, %llx] for use by error capture\n", + ggtt->error_capture.start, + ggtt->error_capture.start + ggtt->error_capture.size); /* * The upper portion of the GuC address space has a sizeable hole @@ -536,9 +559,9 @@ /* Clear any non-preallocated blocks */ drm_mm_for_each_hole(entry, &ggtt->vm.mm, hole_start, hole_end) { - drm_dbg_kms(&ggtt->vm.i915->drm, - "clearing unused GTT space: [%lx, %lx]\n", - hole_start, hole_end); + drm_dbg(&ggtt->vm.i915->drm, + "clearing unused GTT space: [%lx, %lx]\n", + hole_start, hole_end); ggtt->vm.clear_range(&ggtt->vm, hole_start, hole_end - hole_start); } --- linux-azure-5.8-5.8.0.orig/drivers/gpu/drm/i915/gt/intel_gt.c +++ linux-azure-5.8-5.8.0/drivers/gpu/drm/i915/gt/intel_gt.c @@ -616,6 +616,11 @@ void intel_gt_driver_release(struct intel_gt *gt) { struct i915_address_space *vm; + intel_wakeref_t wakeref; + + /* Scrub all HW state upon release */ + with_intel_runtime_pm(gt->uncore->rpm, wakeref) + __intel_gt_reset(gt, ALL_ENGINES); vm = fetch_and_zero(>->vm); if (vm) /* FIXME being called twice on error paths :( */ --- linux-azure-5.8-5.8.0.orig/drivers/gpu/drm/i915/gt/intel_lrc.c +++ linux-azure-5.8-5.8.0/drivers/gpu/drm/i915/gt/intel_lrc.c @@ -1136,9 +1136,8 @@ /* Check in case we rollback so far we wrap [size/2] */ if (intel_ring_direction(rq->ring, - intel_ring_wrap(rq->ring, - rq->tail), - rq->ring->tail) > 0) + rq->tail, + rq->ring->tail + 8) > 0) rq->context->lrc.desc |= CTX_DESC_FORCE_RESTORE; active = rq; @@ -2755,6 +2754,9 @@ static bool execlists_hold(struct intel_engine_cs *engine, struct i915_request *rq) { + if (i915_request_on_hold(rq)) + return false; + spin_lock_irq(&engine->active.lock); if (i915_request_completed(rq)) { /* too late! */ @@ -3130,8 +3132,10 @@ spin_unlock_irqrestore(&engine->active.lock, flags); /* Recheck after serialising with direct-submission */ - if (unlikely(timeout && preempt_timeout(engine))) + if (unlikely(timeout && preempt_timeout(engine))) { + cancel_timer(&engine->execlists.preempt); execlists_reset(engine, "preemption time out"); + } } } @@ -3493,6 +3497,19 @@ .destroy = execlists_context_destroy, }; +static u32 hwsp_offset(const struct i915_request *rq) +{ + const struct intel_timeline_cacheline *cl; + + /* Before the request is executed, the timeline/cachline is fixed */ + + cl = rcu_dereference_protected(rq->hwsp_cacheline, 1); + if (cl) + return cl->ggtt_offset; + + return rcu_dereference_protected(rq->timeline, 1)->hwsp_offset; +} + static int gen8_emit_init_breadcrumb(struct i915_request *rq) { u32 *cs; @@ -3515,7 +3532,7 @@ *cs++ = MI_NOOP; *cs++ = MI_STORE_DWORD_IMM_GEN4 | MI_USE_GGTT; - *cs++ = i915_request_timeline(rq)->hwsp_offset; + *cs++ = hwsp_offset(rq); *cs++ = 0; *cs++ = rq->fence.seqno - 1; @@ -3863,6 +3880,9 @@ static void lrc_destroy_wa_ctx(struct intel_engine_cs *engine) { i915_vma_unpin_and_release(&engine->wa_ctx.vma, 0); + + /* Called on error unwind, clear all flags to prevent further use */ + memset(&engine->wa_ctx, 0, sizeof(engine->wa_ctx)); } typedef u32 *(*wa_bb_func_t)(struct intel_engine_cs *engine, u32 *batch); @@ -4820,11 +4840,9 @@ return gen8_emit_wa_tail(request, cs); } -static u32 *emit_xcs_breadcrumb(struct i915_request *request, u32 *cs) +static u32 *emit_xcs_breadcrumb(struct i915_request *rq, u32 *cs) { - u32 addr = i915_request_active_timeline(request)->hwsp_offset; - - return gen8_emit_ggtt_write(cs, request->fence.seqno, addr, 0); + return gen8_emit_ggtt_write(cs, rq->fence.seqno, hwsp_offset(rq), 0); } static u32 *gen8_emit_fini_breadcrumb(struct i915_request *rq, u32 *cs) @@ -4843,7 +4861,7 @@ /* XXX flush+write+CS_STALL all in one upsets gem_concurrent_blt:kbl */ cs = gen8_emit_ggtt_write_rcs(cs, request->fence.seqno, - i915_request_active_timeline(request)->hwsp_offset, + hwsp_offset(request), PIPE_CONTROL_FLUSH_ENABLE | PIPE_CONTROL_CS_STALL); @@ -4855,7 +4873,7 @@ { cs = gen8_emit_ggtt_write_rcs(cs, request->fence.seqno, - i915_request_active_timeline(request)->hwsp_offset, + hwsp_offset(request), PIPE_CONTROL_CS_STALL | PIPE_CONTROL_TILE_CACHE_FLUSH | PIPE_CONTROL_RENDER_TARGET_CACHE_FLUSH | @@ -4925,7 +4943,7 @@ { cs = gen12_emit_ggtt_write_rcs(cs, request->fence.seqno, - i915_request_active_timeline(request)->hwsp_offset, + hwsp_offset(request), PIPE_CONTROL0_HDC_PIPELINE_FLUSH, PIPE_CONTROL_CS_STALL | PIPE_CONTROL_TILE_CACHE_FLUSH | --- linux-azure-5.8-5.8.0.orig/drivers/gpu/drm/i915/gt/intel_mocs.c +++ linux-azure-5.8-5.8.0/drivers/gpu/drm/i915/gt/intel_mocs.c @@ -59,8 +59,7 @@ #define _L3_CACHEABILITY(value) ((value) << 4) /* Helper defines */ -#define GEN9_NUM_MOCS_ENTRIES 62 /* 62 out of 64 - 63 & 64 are reserved. */ -#define GEN11_NUM_MOCS_ENTRIES 64 /* 63-64 are reserved, but configured. */ +#define GEN9_NUM_MOCS_ENTRIES 64 /* 63-64 are reserved, but configured. */ /* (e)LLC caching options */ /* @@ -131,7 +130,19 @@ GEN9_MOCS_ENTRIES, MOCS_ENTRY(I915_MOCS_CACHED, LE_3_WB | LE_TC_2_LLC_ELLC | LE_LRUM(3), - L3_3_WB) + L3_3_WB), + + /* + * mocs:63 + * - used by the L3 for all of its evictions. + * Thus it is expected to allow LLC cacheability to enable coherent + * flows to be maintained. + * - used to force L3 uncachable cycles. + * Thus it is expected to make the surface L3 uncacheable. + */ + MOCS_ENTRY(63, + LE_3_WB | LE_TC_1_LLC | LE_LRUM(3), + L3_1_UC) }; /* NOTE: the LE_TGT_CACHE is not used on Broxton */ @@ -234,11 +245,18 @@ L3_1_UC) static const struct drm_i915_mocs_entry tgl_mocs_table[] = { - /* Base - Error (Reserved for Non-Use) */ - MOCS_ENTRY(0, 0x0, 0x0), - /* Base - Reserved */ - MOCS_ENTRY(1, 0x0, 0x0), - + /* + * NOTE: + * Reserved and unspecified MOCS indices have been set to (L3 + LCC). + * These reserved entries should never be used, they may be changed + * to low performant variants with better coherency in the future if + * more entries are needed. We are programming index I915_MOCS_PTE(1) + * only, __init_mocs_table() take care to program unused index with + * this entry. + */ + MOCS_ENTRY(I915_MOCS_PTE, + LE_0_PAGETABLE | LE_TC_0_PAGETABLE, + L3_1_UC), GEN11_MOCS_ENTRIES, /* Implicitly enable L1 - HDC:L1 + L3 + LLC */ @@ -309,11 +327,11 @@ if (INTEL_GEN(i915) >= 12) { table->size = ARRAY_SIZE(tgl_mocs_table); table->table = tgl_mocs_table; - table->n_entries = GEN11_NUM_MOCS_ENTRIES; + table->n_entries = GEN9_NUM_MOCS_ENTRIES; } else if (IS_GEN(i915, 11)) { table->size = ARRAY_SIZE(icl_mocs_table); table->table = icl_mocs_table; - table->n_entries = GEN11_NUM_MOCS_ENTRIES; + table->n_entries = GEN9_NUM_MOCS_ENTRIES; } else if (IS_GEN9_BC(i915) || IS_CANNONLAKE(i915)) { table->size = ARRAY_SIZE(skl_mocs_table); table->n_entries = GEN9_NUM_MOCS_ENTRIES; --- linux-azure-5.8-5.8.0.orig/drivers/gpu/drm/i915/gt/intel_ring_submission.c +++ linux-azure-5.8-5.8.0/drivers/gpu/drm/i915/gt/intel_ring_submission.c @@ -2083,7 +2083,7 @@ GEM_BUG_ON(timeline->hwsp_ggtt != engine->status_page.vma); - if (IS_HASWELL(engine->i915) && engine->class == RENDER_CLASS) { + if (IS_GEN(engine->i915, 7) && engine->class == RENDER_CLASS) { err = gen7_ctx_switch_bb_init(engine); if (err) goto err_ring_unpin; --- linux-azure-5.8-5.8.0.orig/drivers/gpu/drm/i915/gt/intel_rps.c +++ linux-azure-5.8-5.8.0/drivers/gpu/drm/i915/gt/intel_rps.c @@ -883,6 +883,10 @@ adj = -2; rps->last_adj = adj; rps->cur_freq = max_t(int, rps->cur_freq + adj, rps->min_freq); + if (rps->cur_freq < rps->efficient_freq) { + rps->cur_freq = rps->efficient_freq; + rps->last_adj = 0; + } GT_TRACE(rps_to_gt(rps), "park:%x\n", rps->cur_freq); } --- linux-azure-5.8-5.8.0.orig/drivers/gpu/drm/i915/gt/intel_timeline.c +++ linux-azure-5.8-5.8.0/drivers/gpu/drm/i915/gt/intel_timeline.c @@ -186,10 +186,14 @@ return cl; } -static void cacheline_acquire(struct intel_timeline_cacheline *cl) +static void cacheline_acquire(struct intel_timeline_cacheline *cl, + u32 ggtt_offset) { - if (cl) - i915_active_acquire(&cl->active); + if (!cl) + return; + + cl->ggtt_offset = ggtt_offset; + i915_active_acquire(&cl->active); } static void cacheline_release(struct intel_timeline_cacheline *cl) @@ -328,7 +332,7 @@ i915_ggtt_offset(tl->hwsp_ggtt) + offset_in_page(tl->hwsp_offset); - cacheline_acquire(tl->hwsp_cacheline); + cacheline_acquire(tl->hwsp_cacheline, tl->hwsp_offset); if (atomic_fetch_inc(&tl->pin_count)) { cacheline_release(tl->hwsp_cacheline); __i915_vma_unpin(tl->hwsp_ggtt); @@ -498,7 +502,7 @@ tl->hwsp_offset += i915_ggtt_offset(vma); - cacheline_acquire(cl); + cacheline_acquire(cl, tl->hwsp_offset); tl->hwsp_cacheline = cl; *seqno = timeline_advance(tl); @@ -556,9 +560,7 @@ if (err) goto out; - *hwsp = i915_ggtt_offset(cl->hwsp->vma) + - ptr_unmask_bits(cl->vaddr, CACHELINE_BITS) * CACHELINE_BYTES; - + *hwsp = cl->ggtt_offset; out: i915_active_release(&cl->active); return err; --- linux-azure-5.8-5.8.0.orig/drivers/gpu/drm/i915/gt/intel_timeline_types.h +++ linux-azure-5.8-5.8.0/drivers/gpu/drm/i915/gt/intel_timeline_types.h @@ -94,6 +94,8 @@ struct intel_timeline_hwsp *hwsp; void *vaddr; + u32 ggtt_offset; + struct rcu_head rcu; }; --- linux-azure-5.8-5.8.0.orig/drivers/gpu/drm/i915/gt/selftest_reset.c +++ linux-azure-5.8-5.8.0/drivers/gpu/drm/i915/gt/selftest_reset.c @@ -3,9 +3,203 @@ * Copyright © 2018 Intel Corporation */ +#include + +#include "gem/i915_gem_stolen.h" + +#include "i915_memcpy.h" #include "i915_selftest.h" #include "selftests/igt_reset.h" #include "selftests/igt_atomic.h" +#include "selftests/igt_spinner.h" + +static int +__igt_reset_stolen(struct intel_gt *gt, + intel_engine_mask_t mask, + const char *msg) +{ + struct i915_ggtt *ggtt = >->i915->ggtt; + const struct resource *dsm = >->i915->dsm; + resource_size_t num_pages, page; + struct intel_engine_cs *engine; + intel_wakeref_t wakeref; + enum intel_engine_id id; + struct igt_spinner spin; + long max, count; + void *tmp; + u32 *crc; + int err; + + if (!drm_mm_node_allocated(&ggtt->error_capture)) + return 0; + + num_pages = resource_size(dsm) >> PAGE_SHIFT; + if (!num_pages) + return 0; + + crc = kmalloc_array(num_pages, sizeof(u32), GFP_KERNEL); + if (!crc) + return -ENOMEM; + + tmp = kmalloc(PAGE_SIZE, GFP_KERNEL); + if (!tmp) { + err = -ENOMEM; + goto err_crc; + } + + igt_global_reset_lock(gt); + wakeref = intel_runtime_pm_get(gt->uncore->rpm); + + err = igt_spinner_init(&spin, gt); + if (err) + goto err_lock; + + for_each_engine(engine, gt, id) { + struct intel_context *ce; + struct i915_request *rq; + + if (!(mask & engine->mask)) + continue; + + if (!intel_engine_can_store_dword(engine)) + continue; + + ce = intel_context_create(engine); + if (IS_ERR(ce)) { + err = PTR_ERR(ce); + goto err_spin; + } + rq = igt_spinner_create_request(&spin, ce, MI_ARB_CHECK); + intel_context_put(ce); + if (IS_ERR(rq)) { + err = PTR_ERR(rq); + goto err_spin; + } + i915_request_add(rq); + } + + for (page = 0; page < num_pages; page++) { + dma_addr_t dma = (dma_addr_t)dsm->start + (page << PAGE_SHIFT); + void __iomem *s; + void *in; + + ggtt->vm.insert_page(&ggtt->vm, dma, + ggtt->error_capture.start, + I915_CACHE_NONE, 0); + mb(); + + s = io_mapping_map_wc(&ggtt->iomap, + ggtt->error_capture.start, + PAGE_SIZE); + + if (!__drm_mm_interval_first(>->i915->mm.stolen, + page << PAGE_SHIFT, + ((page + 1) << PAGE_SHIFT) - 1)) + memset32(s, STACK_MAGIC, PAGE_SIZE / sizeof(u32)); + + in = s; + if (i915_memcpy_from_wc(tmp, s, PAGE_SIZE)) + in = tmp; + crc[page] = crc32_le(0, in, PAGE_SIZE); + + io_mapping_unmap(s); + } + mb(); + ggtt->vm.clear_range(&ggtt->vm, ggtt->error_capture.start, PAGE_SIZE); + + if (mask == ALL_ENGINES) { + intel_gt_reset(gt, mask, NULL); + } else { + for_each_engine(engine, gt, id) { + if (mask & engine->mask) + intel_engine_reset(engine, NULL); + } + } + + max = -1; + count = 0; + for (page = 0; page < num_pages; page++) { + dma_addr_t dma = (dma_addr_t)dsm->start + (page << PAGE_SHIFT); + void __iomem *s; + void *in; + u32 x; + + ggtt->vm.insert_page(&ggtt->vm, dma, + ggtt->error_capture.start, + I915_CACHE_NONE, 0); + mb(); + + s = io_mapping_map_wc(&ggtt->iomap, + ggtt->error_capture.start, + PAGE_SIZE); + + in = s; + if (i915_memcpy_from_wc(tmp, s, PAGE_SIZE)) + in = tmp; + x = crc32_le(0, in, PAGE_SIZE); + + if (x != crc[page] && + !__drm_mm_interval_first(>->i915->mm.stolen, + page << PAGE_SHIFT, + ((page + 1) << PAGE_SHIFT) - 1)) { + pr_debug("unused stolen page %pa modified by GPU reset\n", + &page); + if (count++ == 0) + igt_hexdump(in, PAGE_SIZE); + max = page; + } + + io_mapping_unmap(s); + } + mb(); + ggtt->vm.clear_range(&ggtt->vm, ggtt->error_capture.start, PAGE_SIZE); + + if (count > 0) { + pr_info("%s reset clobbered %ld pages of stolen, last clobber at page %ld\n", + msg, count, max); + } + if (max >= I915_GEM_STOLEN_BIAS >> PAGE_SHIFT) { + pr_err("%s reset clobbered unreserved area [above %x] of stolen; may cause severe faults\n", + msg, I915_GEM_STOLEN_BIAS); + err = -EINVAL; + } + +err_spin: + igt_spinner_fini(&spin); + +err_lock: + intel_runtime_pm_put(gt->uncore->rpm, wakeref); + igt_global_reset_unlock(gt); + + kfree(tmp); +err_crc: + kfree(crc); + return err; +} + +static int igt_reset_device_stolen(void *arg) +{ + return __igt_reset_stolen(arg, ALL_ENGINES, "device"); +} + +static int igt_reset_engines_stolen(void *arg) +{ + struct intel_gt *gt = arg; + struct intel_engine_cs *engine; + enum intel_engine_id id; + int err; + + if (!intel_has_reset_engine(gt)) + return 0; + + for_each_engine(engine, gt, id) { + err = __igt_reset_stolen(gt, engine->mask, engine->name); + if (err) + return err; + } + + return 0; +} static int igt_global_reset(void *arg) { @@ -164,6 +358,8 @@ { static const struct i915_subtest tests[] = { SUBTEST(igt_global_reset), /* attempt to recover GPU first */ + SUBTEST(igt_reset_device_stolen), + SUBTEST(igt_reset_engines_stolen), SUBTEST(igt_wedged_reset), SUBTEST(igt_atomic_reset), SUBTEST(igt_atomic_engine_reset), --- linux-azure-5.8-5.8.0.orig/drivers/gpu/drm/i915/gt/shmem_utils.c +++ linux-azure-5.8-5.8.0/drivers/gpu/drm/i915/gt/shmem_utils.c @@ -143,10 +143,13 @@ return PTR_ERR(page); vaddr = kmap(page); - if (write) + if (write) { memcpy(vaddr + offset_in_page(off), ptr, this); - else + set_page_dirty(page); + } else { memcpy(ptr, vaddr + offset_in_page(off), this); + } + mark_page_accessed(page); kunmap(page); put_page(page); --- linux-azure-5.8-5.8.0.orig/drivers/gpu/drm/i915/gvt/vgpu.c +++ linux-azure-5.8-5.8.0/drivers/gpu/drm/i915/gvt/vgpu.c @@ -367,6 +367,7 @@ static struct intel_vgpu *__intel_gvt_create_vgpu(struct intel_gvt *gvt, struct intel_vgpu_creation_params *param) { + struct drm_i915_private *dev_priv = gvt->gt->i915; struct intel_vgpu *vgpu; int ret; @@ -434,7 +435,10 @@ if (ret) goto out_clean_sched_policy; - ret = intel_gvt_hypervisor_set_edid(vgpu, PORT_D); + if (IS_BROADWELL(dev_priv)) + ret = intel_gvt_hypervisor_set_edid(vgpu, PORT_B); + else + ret = intel_gvt_hypervisor_set_edid(vgpu, PORT_D); if (ret) goto out_clean_sched_policy; --- linux-azure-5.8-5.8.0.orig/drivers/gpu/drm/i915/i915_active.c +++ linux-azure-5.8-5.8.0/drivers/gpu/drm/i915/i915_active.c @@ -498,24 +498,26 @@ int __i915_active_wait(struct i915_active *ref, int state) { - int err; - might_sleep(); - if (!i915_active_acquire_if_busy(ref)) - return 0; - /* Any fence added after the wait begins will not be auto-signaled */ - err = flush_lazy_signals(ref); - i915_active_release(ref); - if (err) - return err; - - if (!i915_active_is_idle(ref) && - ___wait_var_event(ref, i915_active_is_idle(ref), - state, 0, 0, schedule())) - return -EINTR; + if (i915_active_acquire_if_busy(ref)) { + int err; + err = flush_lazy_signals(ref); + i915_active_release(ref); + if (err) + return err; + + if (___wait_var_event(ref, i915_active_is_idle(ref), + state, 0, 0, schedule())) + return -EINTR; + } + + /* + * After the wait is complete, the caller may free the active. + * We have to flush any concurrent retirement before returning. + */ flush_work(&ref->work); return 0; } --- linux-azure-5.8-5.8.0.orig/drivers/gpu/drm/i915/i915_cmd_parser.c +++ linux-azure-5.8-5.8.0/drivers/gpu/drm/i915/i915_cmd_parser.c @@ -1136,7 +1136,7 @@ /* Returns a vmap'd pointer to dst_obj, which the caller must unmap */ static u32 *copy_batch(struct drm_i915_gem_object *dst_obj, struct drm_i915_gem_object *src_obj, - u32 offset, u32 length) + unsigned long offset, unsigned long length) { bool needs_clflush; void *dst, *src; @@ -1166,8 +1166,8 @@ } } if (IS_ERR(src)) { + unsigned long x, n, remain; void *ptr; - int x, n; /* * We can avoid clflushing partial cachelines before the write @@ -1177,14 +1177,15 @@ * We don't care about copying too much here as we only * validate up to the end of the batch. */ + remain = length; if (!(dst_obj->cache_coherent & I915_BO_CACHE_COHERENT_FOR_READ)) - length = round_up(length, + remain = round_up(remain, boot_cpu_data.x86_clflush_size); ptr = dst; x = offset_in_page(offset); - for (n = offset >> PAGE_SHIFT; length; n++) { - int len = min_t(int, length, PAGE_SIZE - x); + for (n = offset >> PAGE_SHIFT; remain; n++) { + int len = min(remain, PAGE_SIZE - x); src = kmap_atomic(i915_gem_object_get_page(src_obj, n)); if (needs_clflush) @@ -1193,17 +1194,25 @@ kunmap_atomic(src); ptr += len; - length -= len; + remain -= len; x = 0; } } i915_gem_object_unpin_pages(src_obj); + memset32(dst + length, 0, (dst_obj->base.size - length) / sizeof(u32)); + /* dst_obj is returned with vmap pinned */ return dst; } +static inline bool cmd_desc_is(const struct drm_i915_cmd_descriptor * const desc, + const u32 cmd) +{ + return desc->cmd.value == (cmd & desc->cmd.mask); +} + static bool check_cmd(const struct intel_engine_cs *engine, const struct drm_i915_cmd_descriptor *desc, const u32 *cmd, u32 length) @@ -1242,19 +1251,19 @@ * allowed mask/value pair given in the whitelist entry. */ if (reg->mask) { - if (desc->cmd.value == MI_LOAD_REGISTER_MEM) { + if (cmd_desc_is(desc, MI_LOAD_REGISTER_MEM)) { DRM_DEBUG("CMD: Rejected LRM to masked register 0x%08X\n", reg_addr); return false; } - if (desc->cmd.value == MI_LOAD_REGISTER_REG) { + if (cmd_desc_is(desc, MI_LOAD_REGISTER_REG)) { DRM_DEBUG("CMD: Rejected LRR to masked register 0x%08X\n", reg_addr); return false; } - if (desc->cmd.value == MI_LOAD_REGISTER_IMM(1) && + if (cmd_desc_is(desc, MI_LOAD_REGISTER_IMM(1)) && (offset + 2 > length || (cmd[offset + 1] & reg->mask) != reg->value)) { DRM_DEBUG("CMD: Rejected LRI to masked register 0x%08X\n", @@ -1386,11 +1395,6 @@ #define LENGTH_BIAS 2 -static bool shadow_needs_clflush(struct drm_i915_gem_object *obj) -{ - return !(obj->cache_coherent & I915_BO_CACHE_COHERENT_FOR_WRITE); -} - /** * intel_engine_cmd_parser() - parse a batch buffer for privilege violations * @engine: the engine on which the batch is to execute @@ -1408,8 +1412,8 @@ */ int intel_engine_cmd_parser(struct intel_engine_cs *engine, struct i915_vma *batch, - u32 batch_offset, - u32 batch_length, + unsigned long batch_offset, + unsigned long batch_length, struct i915_vma *shadow, bool trampoline) { @@ -1478,7 +1482,7 @@ break; } - if (desc->cmd.value == MI_BATCH_BUFFER_START) { + if (cmd_desc_is(desc, MI_BATCH_BUFFER_START)) { ret = check_bbstart(cmd, offset, length, batch_length, batch_addr, shadow_addr, jump_whitelist); @@ -1533,16 +1537,9 @@ ret = 0; /* allow execution */ } } - - if (shadow_needs_clflush(shadow->obj)) - drm_clflush_virt_range(batch_end, 8); } - if (shadow_needs_clflush(shadow->obj)) { - void *ptr = page_mask_bits(shadow->obj->mm.mapping); - - drm_clflush_virt_range(ptr, (void *)(cmd + 1) - ptr); - } + i915_gem_object_flush_map(shadow->obj); if (!IS_ERR_OR_NULL(jump_whitelist)) kfree(jump_whitelist); --- linux-azure-5.8-5.8.0.orig/drivers/gpu/drm/i915/i915_debugfs.c +++ linux-azure-5.8-5.8.0/drivers/gpu/drm/i915/i915_debugfs.c @@ -323,6 +323,7 @@ } i915_gem_context_unlock_engines(ctx); + mutex_lock(&ctx->mutex); if (!IS_ERR_OR_NULL(ctx->file_priv)) { struct file_stats stats = { .vm = rcu_access_pointer(ctx->vm), @@ -343,6 +344,7 @@ print_file_stats(m, name, stats); } + mutex_unlock(&ctx->mutex); spin_lock(&i915->gem.contexts.lock); list_safe_reset_next(ctx, cn, link); --- linux-azure-5.8-5.8.0.orig/drivers/gpu/drm/i915/i915_drv.c +++ linux-azure-5.8-5.8.0/drivers/gpu/drm/i915/i915_drv.c @@ -702,8 +702,6 @@ pci_set_master(pdev); - cpu_latency_qos_add_request(&dev_priv->pm_qos, PM_QOS_DEFAULT_VALUE); - intel_gt_init_workarounds(dev_priv); /* On the 945G/GM, the chipset reports the MSI capability on the @@ -748,7 +746,6 @@ err_msi: if (pdev->msi_enabled) pci_disable_msi(pdev); - cpu_latency_qos_remove_request(&dev_priv->pm_qos); err_mem_regions: intel_memory_regions_driver_release(dev_priv); err_ggtt: @@ -770,8 +767,6 @@ if (pdev->msi_enabled) pci_disable_msi(pdev); - - cpu_latency_qos_remove_request(&dev_priv->pm_qos); } /** --- linux-azure-5.8-5.8.0.orig/drivers/gpu/drm/i915/i915_drv.h +++ linux-azure-5.8-5.8.0/drivers/gpu/drm/i915/i915_drv.h @@ -33,6 +33,8 @@ #include #include +#include + #include #include #include @@ -901,9 +903,6 @@ bool display_irqs_enabled; - /* To control wakeup latency, e.g. for irq-driven dp aux transfers. */ - struct pm_qos_request pm_qos; - /* Sideband mailbox protection */ struct mutex sb_lock; struct pm_qos_request sb_qos; @@ -1195,6 +1194,9 @@ bool ipc_enabled; + /* Hack to bypass TMDS_OE write on DP->HDMI dongle */ + bool bypass_tmds_oe; + /* Used to save the pipe-to-encoder mapping for audio */ struct intel_encoder *av_enc_map[I915_MAX_PIPES]; @@ -1341,7 +1343,7 @@ { const unsigned int pi = __platform_mask_index(info, p); - return info->platform_mask[pi] & INTEL_SUBPLATFORM_BITS; + return info->platform_mask[pi] & ((1 << INTEL_SUBPLATFORM_BITS) - 1); } static __always_inline bool @@ -1667,7 +1669,9 @@ if (intel_iommu_gfx_mapped) return true; #endif - return false; + + /* Running as a guest, we assume the host is enforcing VT'd */ + return !hypervisor_is_type(X86_HYPER_NATIVE); } static inline bool intel_scanout_needs_vtd_wa(struct drm_i915_private *dev_priv) @@ -1850,8 +1854,8 @@ void intel_engine_cleanup_cmd_parser(struct intel_engine_cs *engine); int intel_engine_cmd_parser(struct intel_engine_cs *engine, struct i915_vma *batch, - u32 batch_offset, - u32 batch_length, + unsigned long batch_offset, + unsigned long batch_length, struct i915_vma *shadow, bool trampoline); #define I915_CMD_PARSER_TRAMPOLINE_SIZE 8 --- linux-azure-5.8-5.8.0.orig/drivers/gpu/drm/i915/i915_gpu_error.c +++ linux-azure-5.8-5.8.0/drivers/gpu/drm/i915/i915_gpu_error.c @@ -310,6 +310,8 @@ if (zlib_deflate(zstream, Z_NO_FLUSH) != Z_OK) return -EIO; + + cond_resched(); } while (zstream->avail_in); /* Fallback to uncompressed if we increase size? */ @@ -396,6 +398,7 @@ if (!(wc && i915_memcpy_from_wc(ptr, src, PAGE_SIZE))) memcpy(ptr, src, PAGE_SIZE); dst->pages[dst->page_count++] = ptr; + cond_resched(); return 0; } @@ -1301,7 +1304,7 @@ } strcpy(c->name, name); - c->vma = i915_vma_get(vma); + c->vma = vma; /* reference held while active */ c->next = next; return c; @@ -1391,7 +1394,6 @@ compress)); i915_active_release(&vma->active); - i915_vma_put(vma); capture = this->next; kfree(this); --- linux-azure-5.8-5.8.0.orig/drivers/gpu/drm/i915/i915_params.c +++ linux-azure-5.8-5.8.0/drivers/gpu/drm/i915/i915_params.c @@ -85,8 +85,7 @@ i915_param_named_unsafe(enable_psr, int, 0600, "Enable PSR " - "(0=disabled, 1=enabled) " - "Default: -1 (use per-chip default)"); + "(-1=use per-chip default, 0=disabled [default], 1=enabled) "); i915_param_named_unsafe(force_probe, charp, 0400, "Force probe the driver for specified devices. " --- linux-azure-5.8-5.8.0.orig/drivers/gpu/drm/i915/i915_params.h +++ linux-azure-5.8-5.8.0/drivers/gpu/drm/i915/i915_params.h @@ -52,7 +52,7 @@ param(int, vbt_sdvo_panel_type, -1, 0400) \ param(int, enable_dc, -1, 0400) \ param(int, enable_fbc, -1, 0600) \ - param(int, enable_psr, -1, 0600) \ + param(int, enable_psr, 0, 0600) \ param(int, disable_power_well, -1, 0400) \ param(int, enable_ips, 1, 0600) \ param(int, invert_brightness, 0, 0600) \ --- linux-azure-5.8-5.8.0.orig/drivers/gpu/drm/i915/i915_pci.c +++ linux-azure-5.8-5.8.0/drivers/gpu/drm/i915/i915_pci.c @@ -388,6 +388,7 @@ GEN5_FEATURES, PLATFORM(INTEL_IRONLAKE), .is_mobile = 1, + .has_rps = true, .display.has_fbc = 1, }; --- linux-azure-5.8-5.8.0.orig/drivers/gpu/drm/i915/i915_pmu.c +++ linux-azure-5.8-5.8.0/drivers/gpu/drm/i915/i915_pmu.c @@ -184,13 +184,24 @@ return val; } -static void park_rc6(struct drm_i915_private *i915) +static void init_rc6(struct i915_pmu *pmu) { - struct i915_pmu *pmu = &i915->pmu; + struct drm_i915_private *i915 = container_of(pmu, typeof(*i915), pmu); + intel_wakeref_t wakeref; - if (pmu->enable & config_enabled_mask(I915_PMU_RC6_RESIDENCY)) + with_intel_runtime_pm(i915->gt.uncore->rpm, wakeref) { pmu->sample[__I915_SAMPLE_RC6].cur = __get_rc6(&i915->gt); + pmu->sample[__I915_SAMPLE_RC6_LAST_REPORTED].cur = + pmu->sample[__I915_SAMPLE_RC6].cur; + pmu->sleep_last = ktime_get(); + } +} + +static void park_rc6(struct drm_i915_private *i915) +{ + struct i915_pmu *pmu = &i915->pmu; + pmu->sample[__I915_SAMPLE_RC6].cur = __get_rc6(&i915->gt); pmu->sleep_last = ktime_get(); } @@ -201,6 +212,7 @@ return __get_rc6(gt); } +static void init_rc6(struct i915_pmu *pmu) { } static void park_rc6(struct drm_i915_private *i915) {} #endif @@ -441,8 +453,10 @@ static void i915_pmu_event_destroy(struct perf_event *event) { - WARN_ON(event->parent); - module_put(THIS_MODULE); + struct drm_i915_private *i915 = + container_of(event->pmu, typeof(*i915), pmu.base); + + drm_WARN_ON(&i915->drm, event->parent); } static int @@ -534,10 +548,8 @@ if (ret) return ret; - if (!event->parent) { - __module_get(THIS_MODULE); + if (!event->parent) event->destroy = i915_pmu_event_destroy; - } return 0; } @@ -610,10 +622,8 @@ container_of(event->pmu, typeof(*i915), pmu.base); unsigned int bit = event_enabled_bit(event); struct i915_pmu *pmu = &i915->pmu; - intel_wakeref_t wakeref; unsigned long flags; - wakeref = intel_runtime_pm_get(&i915->runtime_pm); spin_lock_irqsave(&pmu->lock, flags); /* @@ -624,13 +634,6 @@ GEM_BUG_ON(bit >= ARRAY_SIZE(pmu->enable_count)); GEM_BUG_ON(pmu->enable_count[bit] == ~0); - if (pmu->enable_count[bit] == 0 && - config_enabled_mask(I915_PMU_RC6_RESIDENCY) & BIT_ULL(bit)) { - pmu->sample[__I915_SAMPLE_RC6_LAST_REPORTED].cur = 0; - pmu->sample[__I915_SAMPLE_RC6].cur = __get_rc6(&i915->gt); - pmu->sleep_last = ktime_get(); - } - pmu->enable |= BIT_ULL(bit); pmu->enable_count[bit]++; @@ -671,8 +674,6 @@ * an existing non-zero value. */ local64_set(&event->hw.prev_count, __i915_pmu_event_read(event)); - - intel_runtime_pm_put(&i915->runtime_pm, wakeref); } static void i915_pmu_disable(struct perf_event *event) @@ -1058,8 +1059,10 @@ static void i915_pmu_unregister_cpuhp_state(struct i915_pmu *pmu) { - WARN_ON(pmu->cpuhp.slot == CPUHP_INVALID); - WARN_ON(cpuhp_state_remove_instance(pmu->cpuhp.slot, &pmu->cpuhp.node)); + struct drm_i915_private *i915 = container_of(pmu, typeof(*i915), pmu); + + drm_WARN_ON(&i915->drm, pmu->cpuhp.slot == CPUHP_INVALID); + drm_WARN_ON(&i915->drm, cpuhp_state_remove_instance(pmu->cpuhp.slot, &pmu->cpuhp.node)); cpuhp_remove_multi_state(pmu->cpuhp.slot); pmu->cpuhp.slot = CPUHP_INVALID; } @@ -1096,6 +1099,7 @@ hrtimer_init(&pmu->timer, CLOCK_MONOTONIC, HRTIMER_MODE_REL); pmu->timer.function = i915_sample; pmu->cpuhp.slot = CPUHP_INVALID; + init_rc6(pmu); if (!is_igp(i915)) { pmu->name = kasprintf(GFP_KERNEL, @@ -1121,6 +1125,7 @@ if (!pmu->base.attr_groups) goto err_attr; + pmu->base.module = THIS_MODULE; pmu->base.task_ctx_nr = perf_invalid_context; pmu->base.event_init = i915_pmu_event_init; pmu->base.add = i915_pmu_event_add; --- linux-azure-5.8-5.8.0.orig/drivers/gpu/drm/i915/i915_request.c +++ linux-azure-5.8-5.8.0/drivers/gpu/drm/i915/i915_request.c @@ -522,8 +522,13 @@ if (i915_request_completed(request)) goto xfer; + if (unlikely(intel_context_is_closed(request->context) && + !intel_engine_has_heartbeat(engine))) + intel_context_set_banned(request->context); + if (unlikely(intel_context_is_banned(request->context))) i915_request_set_error_once(request, -EIO); + if (unlikely(fatal_error(request->fence.error))) __i915_request_skip(request); --- linux-azure-5.8-5.8.0.orig/drivers/gpu/drm/i915/i915_sw_fence.c +++ linux-azure-5.8-5.8.0/drivers/gpu/drm/i915/i915_sw_fence.c @@ -164,9 +164,13 @@ do { list_for_each_entry_safe(pos, next, &x->head, entry) { - pos->func(pos, - TASK_NORMAL, fence->error, - &extra); + int wake_flags; + + wake_flags = fence->error; + if (pos->func == autoremove_wake_function) + wake_flags = 0; + + pos->func(pos, TASK_NORMAL, wake_flags, &extra); } if (list_empty(&extra)) --- linux-azure-5.8-5.8.0.orig/drivers/gpu/drm/i915/i915_vma.c +++ linux-azure-5.8-5.8.0/drivers/gpu/drm/i915/i915_vma.c @@ -315,8 +315,10 @@ { struct i915_vma_work *vw = container_of(work, typeof(*vw), base); - if (vw->pinned) + if (vw->pinned) { __i915_gem_object_unpin_pages(vw->pinned); + i915_gem_object_put(vw->pinned); + } } static const struct dma_fence_work_ops bind_ops = { @@ -432,7 +434,7 @@ if (vma->obj) { __i915_gem_object_pin_pages(vma->obj); - work->pinned = vma->obj; + work->pinned = i915_gem_object_get(vma->obj); } } else { ret = vma->ops->bind_vma(vma, cache_level, bind_flags); --- linux-azure-5.8-5.8.0.orig/drivers/gpu/drm/i915/intel_uncore.c +++ linux-azure-5.8-5.8.0/drivers/gpu/drm/i915/intel_uncore.c @@ -1209,6 +1209,18 @@ spin_unlock(&uncore->debug->lock); } +#define __vgpu_read(x) \ +static u##x \ +vgpu_read##x(struct intel_uncore *uncore, i915_reg_t reg, bool trace) { \ + u##x val = __raw_uncore_read##x(uncore, reg); \ + trace_i915_reg_rw(false, reg, val, sizeof(val), trace); \ + return val; \ +} +__vgpu_read(8) +__vgpu_read(16) +__vgpu_read(32) +__vgpu_read(64) + #define GEN2_READ_HEADER(x) \ u##x val = 0; \ assert_rpm_wakelock_held(uncore->rpm); @@ -1414,6 +1426,16 @@ #undef GEN6_WRITE_FOOTER #undef GEN6_WRITE_HEADER +#define __vgpu_write(x) \ +static void \ +vgpu_write##x(struct intel_uncore *uncore, i915_reg_t reg, u##x val, bool trace) { \ + trace_i915_reg_rw(true, reg, val, sizeof(val), trace); \ + __raw_uncore_write##x(uncore, reg, val); \ +} +__vgpu_write(8) +__vgpu_write(16) +__vgpu_write(32) + #define ASSIGN_RAW_WRITE_MMIO_VFUNCS(uncore, x) \ do { \ (uncore)->funcs.mmio_writeb = x##_write8; \ @@ -1733,7 +1755,10 @@ { GEM_BUG_ON(intel_uncore_has_forcewake(uncore)); - if (IS_GEN(uncore->i915, 5)) { + if (intel_vgpu_active(uncore->i915)) { + ASSIGN_RAW_WRITE_MMIO_VFUNCS(uncore, vgpu); + ASSIGN_RAW_READ_MMIO_VFUNCS(uncore, vgpu); + } else if (IS_GEN(uncore->i915, 5)) { ASSIGN_RAW_WRITE_MMIO_VFUNCS(uncore, gen5); ASSIGN_RAW_READ_MMIO_VFUNCS(uncore, gen5); } else { --- linux-azure-5.8-5.8.0.orig/drivers/gpu/drm/i915/selftests/i915_gem_gtt.c +++ linux-azure-5.8-5.8.0/drivers/gpu/drm/i915/selftests/i915_gem_gtt.c @@ -1855,7 +1855,7 @@ vma = i915_vma_instance(out, vm, NULL); if (IS_ERR(vma)) { err = PTR_ERR(vma); - goto out_put_batch; + goto out_put_out; } err = i915_vma_pin(vma, 0, 0, --- linux-azure-5.8-5.8.0.orig/drivers/gpu/drm/imx/dw_hdmi-imx.c +++ linux-azure-5.8-5.8.0/drivers/gpu/drm/imx/dw_hdmi-imx.c @@ -209,9 +209,8 @@ if (!pdev->dev.of_node) return -ENODEV; - hdmi = devm_kzalloc(&pdev->dev, sizeof(*hdmi), GFP_KERNEL); - if (!hdmi) - return -ENOMEM; + hdmi = dev_get_drvdata(dev); + memset(hdmi, 0, sizeof(*hdmi)); match = of_match_node(dw_hdmi_imx_dt_ids, pdev->dev.of_node); plat_data = match->data; @@ -235,8 +234,6 @@ drm_encoder_helper_add(encoder, &dw_hdmi_imx_encoder_helper_funcs); drm_simple_encoder_init(drm, encoder, DRM_MODE_ENCODER_TMDS); - platform_set_drvdata(pdev, hdmi); - hdmi->hdmi = dw_hdmi_bind(pdev, encoder, plat_data); /* @@ -266,6 +263,14 @@ static int dw_hdmi_imx_probe(struct platform_device *pdev) { + struct imx_hdmi *hdmi; + + hdmi = devm_kzalloc(&pdev->dev, sizeof(*hdmi), GFP_KERNEL); + if (!hdmi) + return -ENOMEM; + + platform_set_drvdata(pdev, hdmi); + return component_add(&pdev->dev, &dw_hdmi_imx_ops); } --- linux-azure-5.8-5.8.0.orig/drivers/gpu/drm/imx/imx-drm-core.c +++ linux-azure-5.8-5.8.0/drivers/gpu/drm/imx/imx-drm-core.c @@ -275,9 +275,10 @@ drm_kms_helper_poll_fini(drm); + component_unbind_all(drm->dev, drm); + drm_mode_config_cleanup(drm); - component_unbind_all(drm->dev, drm); dev_set_drvdata(dev, NULL); drm_dev_put(drm); --- linux-azure-5.8-5.8.0.orig/drivers/gpu/drm/imx/imx-ldb.c +++ linux-azure-5.8-5.8.0/drivers/gpu/drm/imx/imx-ldb.c @@ -304,18 +304,19 @@ { struct imx_ldb_channel *imx_ldb_ch = enc_to_imx_ldb_ch(encoder); struct imx_ldb *ldb = imx_ldb_ch->ldb; + int dual = ldb->ldb_ctrl & LDB_SPLIT_MODE_EN; int mux, ret; drm_panel_disable(imx_ldb_ch->panel); - if (imx_ldb_ch == &ldb->channel[0]) + if (imx_ldb_ch == &ldb->channel[0] || dual) ldb->ldb_ctrl &= ~LDB_CH0_MODE_EN_MASK; - else if (imx_ldb_ch == &ldb->channel[1]) + if (imx_ldb_ch == &ldb->channel[1] || dual) ldb->ldb_ctrl &= ~LDB_CH1_MODE_EN_MASK; regmap_write(ldb->regmap, IOMUXC_GPR2, ldb->ldb_ctrl); - if (ldb->ldb_ctrl & LDB_SPLIT_MODE_EN) { + if (dual) { clk_disable_unprepare(ldb->clk[0]); clk_disable_unprepare(ldb->clk[1]); } @@ -590,9 +591,8 @@ int ret; int i; - imx_ldb = devm_kzalloc(dev, sizeof(*imx_ldb), GFP_KERNEL); - if (!imx_ldb) - return -ENOMEM; + imx_ldb = dev_get_drvdata(dev); + memset(imx_ldb, 0, sizeof(*imx_ldb)); imx_ldb->regmap = syscon_regmap_lookup_by_phandle(np, "gpr"); if (IS_ERR(imx_ldb->regmap)) { @@ -700,8 +700,6 @@ } } - dev_set_drvdata(dev, imx_ldb); - return 0; free_child: @@ -733,6 +731,14 @@ static int imx_ldb_probe(struct platform_device *pdev) { + struct imx_ldb *imx_ldb; + + imx_ldb = devm_kzalloc(&pdev->dev, sizeof(*imx_ldb), GFP_KERNEL); + if (!imx_ldb) + return -ENOMEM; + + platform_set_drvdata(pdev, imx_ldb); + return component_add(&pdev->dev, &imx_ldb_ops); } --- linux-azure-5.8-5.8.0.orig/drivers/gpu/drm/imx/imx-tve.c +++ linux-azure-5.8-5.8.0/drivers/gpu/drm/imx/imx-tve.c @@ -490,6 +490,13 @@ return 0; } +static void imx_tve_disable_regulator(void *data) +{ + struct imx_tve *tve = data; + + regulator_disable(tve->dac_reg); +} + static bool imx_tve_readable_reg(struct device *dev, unsigned int reg) { return (reg % 4 == 0) && (reg <= 0xdc); @@ -542,9 +549,8 @@ int irq; int ret; - tve = devm_kzalloc(dev, sizeof(*tve), GFP_KERNEL); - if (!tve) - return -ENOMEM; + tve = dev_get_drvdata(dev); + memset(tve, 0, sizeof(*tve)); tve->dev = dev; spin_lock_init(&tve->lock); @@ -614,6 +620,9 @@ ret = regulator_enable(tve->dac_reg); if (ret) return ret; + ret = devm_add_action_or_reset(dev, imx_tve_disable_regulator, tve); + if (ret) + return ret; } tve->clk = devm_clk_get(dev, "tve"); @@ -655,27 +664,23 @@ if (ret) return ret; - dev_set_drvdata(dev, tve); - return 0; } -static void imx_tve_unbind(struct device *dev, struct device *master, - void *data) -{ - struct imx_tve *tve = dev_get_drvdata(dev); - - if (!IS_ERR(tve->dac_reg)) - regulator_disable(tve->dac_reg); -} - static const struct component_ops imx_tve_ops = { .bind = imx_tve_bind, - .unbind = imx_tve_unbind, }; static int imx_tve_probe(struct platform_device *pdev) { + struct imx_tve *tve; + + tve = devm_kzalloc(&pdev->dev, sizeof(*tve), GFP_KERNEL); + if (!tve) + return -ENOMEM; + + platform_set_drvdata(pdev, tve); + return component_add(&pdev->dev, &imx_tve_ops); } --- linux-azure-5.8-5.8.0.orig/drivers/gpu/drm/imx/ipuv3-crtc.c +++ linux-azure-5.8-5.8.0/drivers/gpu/drm/imx/ipuv3-crtc.c @@ -438,21 +438,13 @@ struct ipu_client_platformdata *pdata = dev->platform_data; struct drm_device *drm = data; struct ipu_crtc *ipu_crtc; - int ret; - ipu_crtc = devm_kzalloc(dev, sizeof(*ipu_crtc), GFP_KERNEL); - if (!ipu_crtc) - return -ENOMEM; + ipu_crtc = dev_get_drvdata(dev); + memset(ipu_crtc, 0, sizeof(*ipu_crtc)); ipu_crtc->dev = dev; - ret = ipu_crtc_init(ipu_crtc, pdata, drm); - if (ret) - return ret; - - dev_set_drvdata(dev, ipu_crtc); - - return 0; + return ipu_crtc_init(ipu_crtc, pdata, drm); } static void ipu_drm_unbind(struct device *dev, struct device *master, @@ -474,6 +466,7 @@ static int ipu_drm_probe(struct platform_device *pdev) { struct device *dev = &pdev->dev; + struct ipu_crtc *ipu_crtc; int ret; if (!dev->platform_data) @@ -483,6 +476,12 @@ if (ret) return ret; + ipu_crtc = devm_kzalloc(dev, sizeof(*ipu_crtc), GFP_KERNEL); + if (!ipu_crtc) + return -ENOMEM; + + dev_set_drvdata(dev, ipu_crtc); + return component_add(dev, &ipu_crtc_ops); } --- linux-azure-5.8-5.8.0.orig/drivers/gpu/drm/imx/parallel-display.c +++ linux-azure-5.8-5.8.0/drivers/gpu/drm/imx/parallel-display.c @@ -326,9 +326,8 @@ u32 bus_format = 0; const char *fmt; - imxpd = devm_kzalloc(dev, sizeof(*imxpd), GFP_KERNEL); - if (!imxpd) - return -ENOMEM; + imxpd = dev_get_drvdata(dev); + memset(imxpd, 0, sizeof(*imxpd)); edidp = of_get_property(np, "edid", &imxpd->edid_len); if (edidp) @@ -359,8 +358,6 @@ if (ret) return ret; - dev_set_drvdata(dev, imxpd); - return 0; } @@ -382,6 +379,14 @@ static int imx_pd_probe(struct platform_device *pdev) { + struct imx_parallel_display *imxpd; + + imxpd = devm_kzalloc(&pdev->dev, sizeof(*imxpd), GFP_KERNEL); + if (!imxpd) + return -ENOMEM; + + platform_set_drvdata(pdev, imxpd); + return component_add(&pdev->dev, &imx_pd_ops); } --- linux-azure-5.8-5.8.0.orig/drivers/gpu/drm/ingenic/ingenic-drm.c +++ linux-azure-5.8-5.8.0/drivers/gpu/drm/ingenic/ingenic-drm.c @@ -386,7 +386,7 @@ addr = drm_fb_cma_get_gem_addr(state->fb, state, 0); width = state->src_w >> 16; height = state->src_h >> 16; - cpp = state->fb->format->cpp[plane->index]; + cpp = state->fb->format->cpp[0]; priv->dma_hwdesc->addr = addr; priv->dma_hwdesc->cmd = width * height * cpp / 4; --- linux-azure-5.8-5.8.0.orig/drivers/gpu/drm/lima/lima_gem.c +++ linux-azure-5.8-5.8.0/drivers/gpu/drm/lima/lima_gem.c @@ -69,8 +69,7 @@ return ret; if (bo->base.sgt) { - dma_unmap_sg(dev, bo->base.sgt->sgl, - bo->base.sgt->nents, DMA_BIDIRECTIONAL); + dma_unmap_sgtable(dev, bo->base.sgt, DMA_BIDIRECTIONAL, 0); sg_free_table(bo->base.sgt); } else { bo->base.sgt = kmalloc(sizeof(*bo->base.sgt), GFP_KERNEL); @@ -80,7 +79,13 @@ } } - dma_map_sg(dev, sgt.sgl, sgt.nents, DMA_BIDIRECTIONAL); + ret = dma_map_sgtable(dev, &sgt, DMA_BIDIRECTIONAL, 0); + if (ret) { + sg_free_table(&sgt); + kfree(bo->base.sgt); + bo->base.sgt = NULL; + return ret; + } *bo->base.sgt = sgt; --- linux-azure-5.8-5.8.0.orig/drivers/gpu/drm/lima/lima_sched.c +++ linux-azure-5.8-5.8.0/drivers/gpu/drm/lima/lima_sched.c @@ -200,7 +200,7 @@ int ret; /* resume GPU if it has been suspended by runtime PM */ - ret = pm_runtime_get_sync(ldev->dev); + ret = pm_runtime_resume_and_get(ldev->dev); if (ret < 0) return ret; --- linux-azure-5.8-5.8.0.orig/drivers/gpu/drm/lima/lima_vm.c +++ linux-azure-5.8-5.8.0/drivers/gpu/drm/lima/lima_vm.c @@ -124,7 +124,7 @@ if (err) goto err_out1; - for_each_sg_dma_page(bo->base.sgt->sgl, &sg_iter, bo->base.sgt->nents, 0) { + for_each_sgtable_dma_page(bo->base.sgt, &sg_iter, 0) { err = lima_vm_map_page(vm, sg_page_iter_dma_address(&sg_iter), bo_va->node.start + offset); if (err) @@ -298,8 +298,7 @@ mutex_lock(&vm->lock); base = bo_va->node.start + (pageoff << PAGE_SHIFT); - for_each_sg_dma_page(bo->base.sgt->sgl, &sg_iter, - bo->base.sgt->nents, pageoff) { + for_each_sgtable_dma_page(bo->base.sgt, &sg_iter, pageoff) { err = lima_vm_map_page(vm, sg_page_iter_dma_address(&sg_iter), base + offset); if (err) --- linux-azure-5.8-5.8.0.orig/drivers/gpu/drm/mcde/mcde_drv.c +++ linux-azure-5.8-5.8.0/drivers/gpu/drm/mcde/mcde_drv.c @@ -382,8 +382,8 @@ } irq = platform_get_irq(pdev, 0); - if (!irq) { - ret = -EINVAL; + if (irq < 0) { + ret = irq; goto clk_disable; } --- linux-azure-5.8-5.8.0.orig/drivers/gpu/drm/mediatek/mtk_disp_ovl.c +++ linux-azure-5.8-5.8.0/drivers/gpu/drm/mediatek/mtk_disp_ovl.c @@ -266,7 +266,7 @@ } con = ovl_fmt_convert(ovl, fmt); - if (state->base.fb->format->has_alpha) + if (state->base.fb && state->base.fb->format->has_alpha) con |= OVL_CON_AEN | OVL_CON_ALPHA; if (pending->rotation & DRM_MODE_REFLECT_Y) { --- linux-azure-5.8-5.8.0.orig/drivers/gpu/drm/mediatek/mtk_drm_crtc.c +++ linux-azure-5.8-5.8.0/drivers/gpu/drm/mediatek/mtk_drm_crtc.c @@ -485,7 +485,7 @@ mbox_flush(mtk_crtc->cmdq_client->chan, 2000); cmdq_handle = cmdq_pkt_create(mtk_crtc->cmdq_client, PAGE_SIZE); cmdq_pkt_clear_event(cmdq_handle, mtk_crtc->cmdq_event); - cmdq_pkt_wfe(cmdq_handle, mtk_crtc->cmdq_event); + cmdq_pkt_wfe(cmdq_handle, mtk_crtc->cmdq_event, false); mtk_crtc_ddp_config(crtc, cmdq_handle); cmdq_pkt_flush_async(cmdq_handle, ddp_cmdq_cb, cmdq_handle); } @@ -834,13 +834,19 @@ drm_crtc_index(&mtk_crtc->base)); mtk_crtc->cmdq_client = NULL; } - ret = of_property_read_u32_index(priv->mutex_node, - "mediatek,gce-events", - drm_crtc_index(&mtk_crtc->base), - &mtk_crtc->cmdq_event); - if (ret) - dev_dbg(dev, "mtk_crtc %d failed to get mediatek,gce-events property\n", - drm_crtc_index(&mtk_crtc->base)); + + if (mtk_crtc->cmdq_client) { + ret = of_property_read_u32_index(priv->mutex_node, + "mediatek,gce-events", + drm_crtc_index(&mtk_crtc->base), + &mtk_crtc->cmdq_event); + if (ret) { + dev_dbg(dev, "mtk_crtc %d failed to get mediatek,gce-events property\n", + drm_crtc_index(&mtk_crtc->base)); + cmdq_mbox_destroy(mtk_crtc->cmdq_client); + mtk_crtc->cmdq_client = NULL; + } + } #endif return 0; } --- linux-azure-5.8-5.8.0.orig/drivers/gpu/drm/mediatek/mtk_drm_ddp_comp.c +++ linux-azure-5.8-5.8.0/drivers/gpu/drm/mediatek/mtk_drm_ddp_comp.c @@ -357,7 +357,7 @@ static const char * const mtk_ddp_comp_stem[MTK_DDP_COMP_TYPE_MAX] = { [MTK_DISP_OVL] = "ovl", - [MTK_DISP_OVL_2L] = "ovl_2l", + [MTK_DISP_OVL_2L] = "ovl-2l", [MTK_DISP_RDMA] = "rdma", [MTK_DISP_WDMA] = "wdma", [MTK_DISP_COLOR] = "color", @@ -496,6 +496,7 @@ #if IS_REACHABLE(CONFIG_MTK_CMDQ) if (of_address_to_resource(node, 0, &res) != 0) { dev_err(dev, "Missing reg in %s node\n", node->full_name); + put_device(&larb_pdev->dev); return -EINVAL; } comp->regs_pa = res.start; --- linux-azure-5.8-5.8.0.orig/drivers/gpu/drm/mediatek/mtk_drm_drv.c +++ linux-azure-5.8-5.8.0/drivers/gpu/drm/mediatek/mtk_drm_drv.c @@ -165,7 +165,7 @@ ret = drmm_mode_config_init(drm); if (ret) - return ret; + goto put_mutex_dev; drm->mode_config.min_width = 64; drm->mode_config.min_height = 64; @@ -182,7 +182,7 @@ ret = component_bind_all(drm->dev, drm); if (ret) - return ret; + goto put_mutex_dev; /* * We currently support two fixed data streams, each optional, @@ -229,7 +229,7 @@ } if (!dma_dev->dma_parms) { ret = -ENOMEM; - goto err_component_unbind; + goto put_dma_dev; } ret = dma_set_max_seg_size(dma_dev, (unsigned int)DMA_BIT_MASK(32)); @@ -256,9 +256,12 @@ err_unset_dma_parms: if (private->dma_parms_allocated) dma_dev->dma_parms = NULL; +put_dma_dev: + put_device(private->dma_dev); err_component_unbind: component_unbind_all(drm->dev, drm); - +put_mutex_dev: + put_device(private->mutex_dev); return ret; } @@ -544,8 +547,13 @@ pm_runtime_disable(dev); err_node: of_node_put(private->mutex_node); - for (i = 0; i < DDP_COMPONENT_ID_MAX; i++) + for (i = 0; i < DDP_COMPONENT_ID_MAX; i++) { of_node_put(private->comp_node[i]); + if (private->ddp_comp[i]) { + put_device(private->ddp_comp[i]->larb_dev); + private->ddp_comp[i] = NULL; + } + } return ret; } --- linux-azure-5.8-5.8.0.orig/drivers/gpu/drm/mediatek/mtk_dsi.c +++ linux-azure-5.8-5.8.0/drivers/gpu/drm/mediatek/mtk_dsi.c @@ -448,7 +448,10 @@ u32 horizontal_sync_active_byte; u32 horizontal_backporch_byte; u32 horizontal_frontporch_byte; + u32 horizontal_front_back_byte; + u32 data_phy_cycles_byte; u32 dsi_tmp_buf_bpp, data_phy_cycles; + u32 delta; struct mtk_phy_timing *timing = &dsi->phy_timing; struct videomode *vm = &dsi->vm; @@ -470,51 +473,30 @@ horizontal_sync_active_byte = (vm->hsync_len * dsi_tmp_buf_bpp - 10); if (dsi->mode_flags & MIPI_DSI_MODE_VIDEO_SYNC_PULSE) - horizontal_backporch_byte = - (vm->hback_porch * dsi_tmp_buf_bpp - 10); + horizontal_backporch_byte = vm->hback_porch * dsi_tmp_buf_bpp - 10; else - horizontal_backporch_byte = ((vm->hback_porch + vm->hsync_len) * - dsi_tmp_buf_bpp - 10); + horizontal_backporch_byte = (vm->hback_porch + vm->hsync_len) * + dsi_tmp_buf_bpp - 10; data_phy_cycles = timing->lpx + timing->da_hs_prepare + timing->da_hs_zero + timing->da_hs_exit + 3; - if (dsi->mode_flags & MIPI_DSI_MODE_VIDEO_BURST) { - if ((vm->hfront_porch + vm->hback_porch) * dsi_tmp_buf_bpp > - data_phy_cycles * dsi->lanes + 18) { - horizontal_frontporch_byte = - vm->hfront_porch * dsi_tmp_buf_bpp - - (data_phy_cycles * dsi->lanes + 18) * - vm->hfront_porch / - (vm->hfront_porch + vm->hback_porch); - - horizontal_backporch_byte = - horizontal_backporch_byte - - (data_phy_cycles * dsi->lanes + 18) * - vm->hback_porch / - (vm->hfront_porch + vm->hback_porch); - } else { - DRM_WARN("HFP less than d-phy, FPS will under 60Hz\n"); - horizontal_frontporch_byte = vm->hfront_porch * - dsi_tmp_buf_bpp; - } + delta = dsi->mode_flags & MIPI_DSI_MODE_VIDEO_BURST ? 18 : 12; + + horizontal_frontporch_byte = vm->hfront_porch * dsi_tmp_buf_bpp; + horizontal_front_back_byte = horizontal_frontporch_byte + horizontal_backporch_byte; + data_phy_cycles_byte = data_phy_cycles * dsi->lanes + delta; + + if (horizontal_front_back_byte > data_phy_cycles_byte) { + horizontal_frontporch_byte -= data_phy_cycles_byte * + horizontal_frontporch_byte / + horizontal_front_back_byte; + + horizontal_backporch_byte -= data_phy_cycles_byte * + horizontal_backporch_byte / + horizontal_front_back_byte; } else { - if ((vm->hfront_porch + vm->hback_porch) * dsi_tmp_buf_bpp > - data_phy_cycles * dsi->lanes + 12) { - horizontal_frontporch_byte = - vm->hfront_porch * dsi_tmp_buf_bpp - - (data_phy_cycles * dsi->lanes + 12) * - vm->hfront_porch / - (vm->hfront_porch + vm->hback_porch); - horizontal_backporch_byte = horizontal_backporch_byte - - (data_phy_cycles * dsi->lanes + 12) * - vm->hback_porch / - (vm->hfront_porch + vm->hback_porch); - } else { - DRM_WARN("HFP less than d-phy, FPS will under 60Hz\n"); - horizontal_frontporch_byte = vm->hfront_porch * - dsi_tmp_buf_bpp; - } + DRM_WARN("HFP + HBP less than d-phy, FPS will under 60Hz\n"); } writel(horizontal_sync_active_byte, dsi->regs + DSI_HSA_WC); --- linux-azure-5.8-5.8.0.orig/drivers/gpu/drm/mediatek/mtk_hdmi.c +++ linux-azure-5.8-5.8.0/drivers/gpu/drm/mediatek/mtk_hdmi.c @@ -1507,25 +1507,30 @@ dev_err(dev, "Failed to get system configuration registers: %d\n", ret); - return ret; + goto put_device; } hdmi->sys_regmap = regmap; mem = platform_get_resource(pdev, IORESOURCE_MEM, 0); hdmi->regs = devm_ioremap_resource(dev, mem); - if (IS_ERR(hdmi->regs)) - return PTR_ERR(hdmi->regs); + if (IS_ERR(hdmi->regs)) { + ret = PTR_ERR(hdmi->regs); + goto put_device; + } remote = of_graph_get_remote_node(np, 1, 0); - if (!remote) - return -EINVAL; + if (!remote) { + ret = -EINVAL; + goto put_device; + } if (!of_device_is_compatible(remote, "hdmi-connector")) { hdmi->next_bridge = of_drm_find_bridge(remote); if (!hdmi->next_bridge) { dev_err(dev, "Waiting for external bridge\n"); of_node_put(remote); - return -EPROBE_DEFER; + ret = -EPROBE_DEFER; + goto put_device; } } @@ -1534,7 +1539,8 @@ dev_err(dev, "Failed to find ddc-i2c-bus node in %pOF\n", remote); of_node_put(remote); - return -EINVAL; + ret = -EINVAL; + goto put_device; } of_node_put(remote); @@ -1542,10 +1548,14 @@ of_node_put(i2c_np); if (!hdmi->ddc_adpt) { dev_err(dev, "Failed to get ddc i2c adapter by node\n"); - return -EINVAL; + ret = -EINVAL; + goto put_device; } return 0; +put_device: + put_device(hdmi->cec_dev); + return ret; } /* --- linux-azure-5.8-5.8.0.orig/drivers/gpu/drm/mediatek/mtk_hdmi_phy.c +++ linux-azure-5.8-5.8.0/drivers/gpu/drm/mediatek/mtk_hdmi_phy.c @@ -84,8 +84,9 @@ hdmi_phy->conf->hdmi_phy_disable_tmds) return &mtk_hdmi_phy_dev_ops; - dev_err(hdmi_phy->dev, "Failed to get dev ops of phy\n"); - return NULL; + if (hdmi_phy) + dev_err(hdmi_phy->dev, "Failed to get dev ops of phy\n"); + return NULL; } static void mtk_hdmi_phy_clk_get_data(struct mtk_hdmi_phy *hdmi_phy, --- linux-azure-5.8-5.8.0.orig/drivers/gpu/drm/meson/meson_drv.c +++ linux-azure-5.8-5.8.0/drivers/gpu/drm/meson/meson_drv.c @@ -400,15 +400,17 @@ meson_canvas_free(priv->canvas, priv->canvas_id_vd1_2); } + drm_dev_unregister(drm); + drm_kms_helper_poll_fini(drm); + drm_atomic_helper_shutdown(drm); + component_unbind_all(dev, drm); + drm_irq_uninstall(drm); + drm_dev_put(drm); + if (priv->afbcd.ops) { priv->afbcd.ops->reset(priv); meson_rdma_free(priv); } - - drm_dev_unregister(drm); - drm_irq_uninstall(drm); - drm_kms_helper_poll_fini(drm); - drm_dev_put(drm); } static const struct component_master_ops meson_drv_master_ops = { --- linux-azure-5.8-5.8.0.orig/drivers/gpu/drm/meson/meson_dw_hdmi.c +++ linux-azure-5.8-5.8.0/drivers/gpu/drm/meson/meson_dw_hdmi.c @@ -145,8 +145,6 @@ struct reset_control *hdmitx_apb; struct reset_control *hdmitx_ctrl; struct reset_control *hdmitx_phy; - struct clk *hdmi_pclk; - struct clk *venci_clk; struct regulator *hdmi_supply; u32 irq_stat; struct dw_hdmi *hdmi; @@ -938,6 +936,34 @@ } +static void meson_disable_regulator(void *data) +{ + regulator_disable(data); +} + +static void meson_disable_clk(void *data) +{ + clk_disable_unprepare(data); +} + +static int meson_enable_clk(struct device *dev, char *name) +{ + struct clk *clk; + int ret; + + clk = devm_clk_get(dev, name); + if (IS_ERR(clk)) { + dev_err(dev, "Unable to get %s pclk\n", name); + return PTR_ERR(clk); + } + + ret = clk_prepare_enable(clk); + if (!ret) + ret = devm_add_action_or_reset(dev, meson_disable_clk, clk); + + return ret; +} + static int meson_dw_hdmi_bind(struct device *dev, struct device *master, void *data) { @@ -986,6 +1012,10 @@ ret = regulator_enable(meson_dw_hdmi->hdmi_supply); if (ret) return ret; + ret = devm_add_action_or_reset(dev, meson_disable_regulator, + meson_dw_hdmi->hdmi_supply); + if (ret) + return ret; } meson_dw_hdmi->hdmitx_apb = devm_reset_control_get_exclusive(dev, @@ -1014,19 +1044,17 @@ if (IS_ERR(meson_dw_hdmi->hdmitx)) return PTR_ERR(meson_dw_hdmi->hdmitx); - meson_dw_hdmi->hdmi_pclk = devm_clk_get(dev, "isfr"); - if (IS_ERR(meson_dw_hdmi->hdmi_pclk)) { - dev_err(dev, "Unable to get HDMI pclk\n"); - return PTR_ERR(meson_dw_hdmi->hdmi_pclk); - } - clk_prepare_enable(meson_dw_hdmi->hdmi_pclk); - - meson_dw_hdmi->venci_clk = devm_clk_get(dev, "venci"); - if (IS_ERR(meson_dw_hdmi->venci_clk)) { - dev_err(dev, "Unable to get venci clk\n"); - return PTR_ERR(meson_dw_hdmi->venci_clk); - } - clk_prepare_enable(meson_dw_hdmi->venci_clk); + ret = meson_enable_clk(dev, "isfr"); + if (ret) + return ret; + + ret = meson_enable_clk(dev, "iahb"); + if (ret) + return ret; + + ret = meson_enable_clk(dev, "venci"); + if (ret) + return ret; dw_plat_data->regm = devm_regmap_init(dev, NULL, meson_dw_hdmi, &meson_dw_hdmi_regmap_config); @@ -1059,10 +1087,10 @@ encoder->possible_crtcs = BIT(0); - DRM_DEBUG_DRIVER("encoder initialized\n"); - meson_dw_hdmi_init(meson_dw_hdmi); + DRM_DEBUG_DRIVER("encoder initialized\n"); + /* Bridge / Connector */ dw_plat_data->mode_valid = dw_hdmi_mode_valid; --- linux-azure-5.8-5.8.0.orig/drivers/gpu/drm/mgag200/Kconfig +++ linux-azure-5.8-5.8.0/drivers/gpu/drm/mgag200/Kconfig @@ -2,10 +2,8 @@ config DRM_MGAG200 tristate "Kernel modesetting driver for MGA G200 server engines" depends on DRM && PCI && MMU + select DRM_GEM_SHMEM_HELPER select DRM_KMS_HELPER - select DRM_VRAM_HELPER - select DRM_TTM - select DRM_TTM_HELPER help This is a KMS driver for the MGA G200 server chips, it does not support the original MGA G200 or any of the desktop --- linux-azure-5.8-5.8.0.orig/drivers/gpu/drm/mgag200/Makefile +++ linux-azure-5.8-5.8.0/drivers/gpu/drm/mgag200/Makefile @@ -1,5 +1,5 @@ # SPDX-License-Identifier: GPL-2.0-only -mgag200-y := mgag200_main.o mgag200_mode.o mgag200_cursor.o \ +mgag200-y := mgag200_main.o mgag200_mode.o \ mgag200_drv.o mgag200_i2c.o mgag200_ttm.o obj-$(CONFIG_DRM_MGAG200) += mgag200.o --- linux-azure-5.8-5.8.0.orig/drivers/gpu/drm/mgag200/mgag200_drv.c +++ linux-azure-5.8-5.8.0/drivers/gpu/drm/mgag200/mgag200_drv.c @@ -22,15 +22,11 @@ * which then performs further device association and calls our graphics init * functions */ -int mgag200_modeset = -1; +int mgag200_modeset = -1; MODULE_PARM_DESC(modeset, "Disable/Enable modesetting"); module_param_named(modeset, mgag200_modeset, int, 0400); -int mgag200_hw_bug_no_startadd = -1; -MODULE_PARM_DESC(modeset, "HW does not interpret scanout-buffer start address correctly"); -module_param_named(hw_bug_no_startadd, mgag200_hw_bug_no_startadd, int, 0400); - static struct drm_driver driver; static const struct pci_device_id pciidlist[] = { @@ -101,46 +97,8 @@ DEFINE_DRM_GEM_FOPS(mgag200_driver_fops); -static bool mgag200_pin_bo_at_0(const struct mga_device *mdev) -{ - if (mgag200_hw_bug_no_startadd > 0) { - DRM_WARN_ONCE("Option hw_bug_no_startradd is enabled. Please " - "report the output of 'lspci -vvnn' to " - " if this " - "option is required to make mgag200 work " - "correctly on your system.\n"); - return true; - } else if (!mgag200_hw_bug_no_startadd) { - return false; - } - return mdev->flags & MGAG200_FLAG_HW_BUG_NO_STARTADD; -} - -int mgag200_driver_dumb_create(struct drm_file *file, - struct drm_device *dev, - struct drm_mode_create_dumb *args) -{ - struct mga_device *mdev = to_mga_device(dev); - unsigned long pg_align; - - if (WARN_ONCE(!dev->vram_mm, "VRAM MM not initialized")) - return -EINVAL; - - pg_align = 0ul; - - /* - * Aligning scanout buffers to the size of the video ram forces - * placement at offset 0. Works around a bug where HW does not - * respect 'startadd' field. - */ - if (mgag200_pin_bo_at_0(mdev)) - pg_align = PFN_UP(mdev->mc.vram_size); - - return drm_gem_vram_fill_create_dumb(file, dev, pg_align, 0, args); -} - static struct drm_driver driver = { - .driver_features = DRIVER_GEM | DRIVER_MODESET, + .driver_features = DRIVER_ATOMIC | DRIVER_GEM | DRIVER_MODESET, .fops = &mgag200_driver_fops, .name = DRIVER_NAME, .desc = DRIVER_DESC, @@ -148,10 +106,7 @@ .major = DRIVER_MAJOR, .minor = DRIVER_MINOR, .patchlevel = DRIVER_PATCHLEVEL, - .debugfs_init = drm_vram_mm_debugfs_init, - .dumb_create = mgag200_driver_dumb_create, - .dumb_map_offset = drm_gem_vram_driver_dumb_mmap_offset, - .gem_prime_mmap = drm_gem_prime_mmap, + DRM_GEM_SHMEM_DRIVER_OPS, }; static struct pci_driver mgag200_pci_driver = { --- linux-azure-5.8-5.8.0.orig/drivers/gpu/drm/mgag200/mgag200_drv.h +++ linux-azure-5.8-5.8.0/drivers/gpu/drm/mgag200/mgag200_drv.h @@ -18,7 +18,8 @@ #include #include #include -#include +#include +#include #include "mgag200_reg.h" @@ -32,8 +33,6 @@ #define DRIVER_MINOR 0 #define DRIVER_PATCHLEVEL 0 -#define MGAG200FB_CONN_LIMIT 1 - #define RREG8(reg) ioread8(((void __iomem *)mdev->rmmio) + (reg)) #define WREG8(reg, v) iowrite8(v, ((void __iomem *)mdev->rmmio) + (reg)) #define RREG32(reg) ioread32(((void __iomem *)mdev->rmmio) + (reg)) @@ -49,6 +48,12 @@ WREG8(ATTR_DATA, v); \ } while (0) \ +#define RREG_SEQ(reg, v) \ + do { \ + WREG8(MGAREG_SEQ_INDEX, reg); \ + v = RREG8(MGAREG_SEQ_DATA); \ + } while (0) \ + #define WREG_SEQ(reg, v) \ do { \ WREG8(MGAREG_SEQ_INDEX, reg); \ @@ -61,6 +66,11 @@ WREG8(MGAREG_CRTC_DATA, v); \ } while (0) \ +#define RREG_ECRT(reg, v) \ + do { \ + WREG8(MGAREG_CRTCEXT_INDEX, reg); \ + v = RREG8(MGAREG_CRTCEXT_DATA); \ + } while (0) \ #define WREG_ECRT(reg, v) \ do { \ @@ -92,18 +102,8 @@ #define MGAG200_MAX_FB_HEIGHT 4096 #define MGAG200_MAX_FB_WIDTH 4096 -#define MATROX_DPMS_CLEARED (-1) - -#define to_mga_crtc(x) container_of(x, struct mga_crtc, base) #define to_mga_connector(x) container_of(x, struct mga_connector, base) -struct mga_crtc { - struct drm_crtc base; - u8 lut_r[256], lut_g[256], lut_b[256]; - int last_dpms; - bool enabled; -}; - struct mga_i2c_chan { struct i2c_adapter adapter; struct drm_device *dev; @@ -116,11 +116,6 @@ struct mga_i2c_chan *i2c; }; -struct mga_cursor { - struct drm_gem_vram_object *gbo[2]; - unsigned int next_index; -}; - struct mga_mc { resource_size_t vram_size; resource_size_t vram_base; @@ -156,11 +151,9 @@ struct mga_mc mc; - struct mga_cursor cursor; - - size_t vram_fb_available; + void __iomem *vram; + size_t vram_fb_available; - bool suspended; enum mga_type type; int has_sdram; @@ -172,7 +165,7 @@ u32 unique_rev_id; struct mga_connector connector; - struct drm_encoder encoder; + struct drm_simple_display_pipe display_pipe; }; static inline struct mga_device *to_mga_device(struct drm_device *dev) @@ -207,10 +200,4 @@ void mgag200_mm_fini(struct mga_device *mdev); int mgag200_mmap(struct file *filp, struct vm_area_struct *vma); -int mgag200_cursor_init(struct mga_device *mdev); -void mgag200_cursor_fini(struct mga_device *mdev); -int mgag200_crtc_cursor_set(struct drm_crtc *crtc, struct drm_file *file_priv, - uint32_t handle, uint32_t width, uint32_t height); -int mgag200_crtc_cursor_move(struct drm_crtc *crtc, int x, int y); - #endif /* __MGAG200_DRV_H__ */ --- linux-azure-5.8-5.8.0.orig/drivers/gpu/drm/mgag200/mgag200_main.c +++ linux-azure-5.8-5.8.0/drivers/gpu/drm/mgag200/mgag200_main.c @@ -135,10 +135,6 @@ goto err_mgag200_mm_fini; } - ret = mgag200_cursor_init(mdev); - if (ret) - drm_err(dev, "Could not initialize cursors. Not doing hardware cursors.\n"); - return 0; err_mgag200_mm_fini: @@ -154,7 +150,6 @@ if (mdev == NULL) return; - mgag200_cursor_fini(mdev); mgag200_mm_fini(mdev); dev->dev_private = NULL; } --- linux-azure-5.8-5.8.0.orig/drivers/gpu/drm/mgag200/mgag200_mode.c +++ linux-azure-5.8-5.8.0/drivers/gpu/drm/mgag200/mgag200_mode.c @@ -11,10 +11,15 @@ #include #include +#include +#include #include +#include +#include #include #include #include +#include #include #include @@ -30,13 +35,18 @@ { struct drm_device *dev = crtc->dev; struct mga_device *mdev = to_mga_device(dev); - struct drm_framebuffer *fb = crtc->primary->fb; + struct drm_framebuffer *fb; u16 *r_ptr, *g_ptr, *b_ptr; int i; if (!crtc->enabled) return; + if (!mdev->display_pipe.plane.state) + return; + + fb = mdev->display_pipe.plane.state->fb; + r_ptr = crtc->gamma_store; g_ptr = r_ptr + crtc->gamma_size; b_ptr = g_ptr + crtc->gamma_size; @@ -704,6 +714,8 @@ static int mga_crtc_set_plls(struct mga_device *mdev, long clock) { + u8 misc; + switch(mdev->type) { case G200_SE_A: case G200_SE_B: @@ -724,6 +736,12 @@ return mga_g200er_set_plls(mdev, clock); break; } + + misc = RREG8(MGA_MISC_IN); + misc &= ~MGAREG_MISC_CLK_SEL_MASK; + misc |= MGAREG_MISC_CLK_SEL_MGA_MSK; + WREG8(MGA_MISC_OUT, misc); + return 0; } @@ -819,102 +837,91 @@ } /* - This is how the framebuffer base address is stored in g200 cards: - * Assume @offset is the gpu_addr variable of the framebuffer object - * Then addr is the number of _pixels_ (not bytes) from the start of - VRAM to the first pixel we want to display. (divided by 2 for 32bit - framebuffers) - * addr is stored in the CRTCEXT0, CRTCC and CRTCD registers - addr<20> -> CRTCEXT0<6> - addr<19-16> -> CRTCEXT0<3-0> - addr<15-8> -> CRTCC<7-0> - addr<7-0> -> CRTCD<7-0> - CRTCEXT0 has to be programmed last to trigger an update and make the - new addr variable take effect. + * This is how the framebuffer base address is stored in g200 cards: + * * Assume @offset is the gpu_addr variable of the framebuffer object + * * Then addr is the number of _pixels_ (not bytes) from the start of + * VRAM to the first pixel we want to display. (divided by 2 for 32bit + * framebuffers) + * * addr is stored in the CRTCEXT0, CRTCC and CRTCD registers + * addr<20> -> CRTCEXT0<6> + * addr<19-16> -> CRTCEXT0<3-0> + * addr<15-8> -> CRTCC<7-0> + * addr<7-0> -> CRTCD<7-0> + * + * CRTCEXT0 has to be programmed last to trigger an update and make the + * new addr variable take effect. */ -static void mga_set_start_address(struct drm_crtc *crtc, unsigned offset) +static void mgag200_set_startadd(struct mga_device *mdev, + unsigned long offset) { - struct mga_device *mdev = to_mga_device(crtc->dev); - u32 addr; - int count; - u8 crtcext0; - - while (RREG8(0x1fda) & 0x08); - while (!(RREG8(0x1fda) & 0x08)); - - count = RREG8(MGAREG_VCOUNT) + 2; - while (RREG8(MGAREG_VCOUNT) < count); - - WREG8(MGAREG_CRTCEXT_INDEX, 0); - crtcext0 = RREG8(MGAREG_CRTCEXT_DATA); - crtcext0 &= 0xB0; - addr = offset / 8; - /* Can't store addresses any higher than that... - but we also don't have more than 16MB of memory, so it should be fine. */ - WARN_ON(addr > 0x1fffff); - crtcext0 |= (!!(addr & (1<<20)))<<6; - WREG_CRT(0x0d, (u8)(addr & 0xff)); - WREG_CRT(0x0c, (u8)(addr >> 8) & 0xff); - WREG_ECRT(0x0, ((u8)(addr >> 16) & 0xf) | crtcext0); -} - -static int mga_crtc_do_set_base(struct drm_crtc *crtc, - struct drm_framebuffer *fb, - int x, int y, int atomic) -{ - struct drm_gem_vram_object *gbo; - int ret; - s64 gpu_addr; - - if (!atomic && fb) { - gbo = drm_gem_vram_of_gem(fb->obj[0]); - drm_gem_vram_unpin(gbo); - } + struct drm_device *dev = mdev->dev; + u32 startadd; + u8 crtcc, crtcd, crtcext0; - gbo = drm_gem_vram_of_gem(crtc->primary->fb->obj[0]); + startadd = offset / 8; - ret = drm_gem_vram_pin(gbo, DRM_GEM_VRAM_PL_FLAG_VRAM); - if (ret) - return ret; - gpu_addr = drm_gem_vram_offset(gbo); - if (gpu_addr < 0) { - ret = (int)gpu_addr; - goto err_drm_gem_vram_unpin; - } + /* + * Can't store addresses any higher than that, but we also + * don't have more than 16 MiB of memory, so it should be fine. + */ + drm_WARN_ON(dev, startadd > 0x1fffff); - mga_set_start_address(crtc, (u32)gpu_addr); + RREG_ECRT(0x00, crtcext0); - return 0; + crtcc = (startadd >> 8) & 0xff; + crtcd = startadd & 0xff; + crtcext0 &= 0xb0; + crtcext0 |= ((startadd >> 14) & BIT(6)) | + ((startadd >> 16) & 0x0f); -err_drm_gem_vram_unpin: - drm_gem_vram_unpin(gbo); - return ret; + WREG_CRT(0x0c, crtcc); + WREG_CRT(0x0d, crtcd); + WREG_ECRT(0x00, crtcext0); } -static int mga_crtc_mode_set_base(struct drm_crtc *crtc, int x, int y, - struct drm_framebuffer *old_fb) +static void mgag200_set_pci_regs(struct mga_device *mdev) { - return mga_crtc_do_set_base(crtc, old_fb, x, y, 0); + uint32_t option = 0, option2 = 0; + struct drm_device *dev = mdev->dev; + + switch (mdev->type) { + case G200_SE_A: + case G200_SE_B: + if (mdev->has_sdram) + option = 0x40049120; + else + option = 0x4004d120; + option2 = 0x00008000; + break; + case G200_WB: + case G200_EW3: + option = 0x41049120; + option2 = 0x0000b000; + break; + case G200_EV: + option = 0x00000120; + option2 = 0x0000b000; + break; + case G200_EH: + case G200_EH3: + option = 0x00000120; + option2 = 0x0000b000; + break; + case G200_ER: + break; + } + + if (option) + pci_write_config_dword(dev->pdev, PCI_MGA_OPTION, option); + + if (option2) + pci_write_config_dword(dev->pdev, PCI_MGA_OPTION2, option2); } -static int mga_crtc_mode_set(struct drm_crtc *crtc, - struct drm_display_mode *mode, - struct drm_display_mode *adjusted_mode, - int x, int y, struct drm_framebuffer *old_fb) +static void mgag200_set_dac_regs(struct mga_device *mdev) { - struct drm_device *dev = crtc->dev; - struct mga_device *mdev = to_mga_device(dev); - const struct drm_framebuffer *fb = crtc->primary->fb; - int hdisplay, hsyncstart, hsyncend, htotal; - int vdisplay, vsyncstart, vsyncend, vtotal; - int pitch; - int option = 0, option2 = 0; - int i; - unsigned char misc = 0; - unsigned char ext_vga[6]; - u8 bppshift; - - static unsigned char dacvalue[] = { + size_t i; + u8 dacvalue[] = { /* 0x00: */ 0, 0, 0, 0, 0, 0, 0x00, 0, /* 0x08: */ 0, 0, 0, 0, 0, 0, 0, 0, /* 0x10: */ 0, 0, 0, 0, 0, 0, 0, 0, @@ -927,8 +934,6 @@ /* 0x48: */ 0, 0, 0, 0, 0, 0, 0, 0 }; - bppshift = mdev->bpp_shifts[fb->format->cpp[0] - 1]; - switch (mdev->type) { case G200_SE_A: case G200_SE_B: @@ -937,61 +942,26 @@ dacvalue[MGA1064_MISC_CTL] = MGA1064_MISC_CTL_DAC_EN | MGA1064_MISC_CTL_VGA8 | MGA1064_MISC_CTL_DAC_RAM_CS; - if (mdev->has_sdram) - option = 0x40049120; - else - option = 0x4004d120; - option2 = 0x00008000; break; case G200_WB: case G200_EW3: dacvalue[MGA1064_VREF_CTL] = 0x07; - option = 0x41049120; - option2 = 0x0000b000; break; case G200_EV: dacvalue[MGA1064_PIX_CLK_CTL] = MGA1064_PIX_CLK_CTL_SEL_PLL; dacvalue[MGA1064_MISC_CTL] = MGA1064_MISC_CTL_VGA8 | MGA1064_MISC_CTL_DAC_RAM_CS; - option = 0x00000120; - option2 = 0x0000b000; break; case G200_EH: case G200_EH3: dacvalue[MGA1064_MISC_CTL] = MGA1064_MISC_CTL_VGA8 | MGA1064_MISC_CTL_DAC_RAM_CS; - option = 0x00000120; - option2 = 0x0000b000; break; case G200_ER: break; } - switch (fb->format->cpp[0] * 8) { - case 8: - dacvalue[MGA1064_MUL_CTL] = MGA1064_MUL_CTL_8bits; - break; - case 16: - if (fb->format->depth == 15) - dacvalue[MGA1064_MUL_CTL] = MGA1064_MUL_CTL_15bits; - else - dacvalue[MGA1064_MUL_CTL] = MGA1064_MUL_CTL_16bits; - break; - case 24: - dacvalue[MGA1064_MUL_CTL] = MGA1064_MUL_CTL_24bits; - break; - case 32: - dacvalue[MGA1064_MUL_CTL] = MGA1064_MUL_CTL_32_24bits; - break; - } - - if (mode->flags & DRM_MODE_FLAG_NHSYNC) - misc |= 0x40; - if (mode->flags & DRM_MODE_FLAG_NVSYNC) - misc |= 0x80; - - - for (i = 0; i < sizeof(dacvalue); i++) { + for (i = 0; i < ARRAY_SIZE(dacvalue); i++) { if ((i <= 0x17) || (i == 0x1b) || (i == 0x1c) || @@ -1014,21 +984,53 @@ if (mdev->type == G200_ER) WREG_DAC(0x90, 0); +} - if (option) - pci_write_config_dword(dev->pdev, PCI_MGA_OPTION, option); - if (option2) - pci_write_config_dword(dev->pdev, PCI_MGA_OPTION2, option2); +static void mgag200_init_regs(struct mga_device *mdev) +{ + u8 crtcext3, crtcext4, misc; - WREG_SEQ(2, 0xf); - WREG_SEQ(3, 0); - WREG_SEQ(4, 0xe); + mgag200_set_pci_regs(mdev); + mgag200_set_dac_regs(mdev); - pitch = fb->pitches[0] / fb->format->cpp[0]; - if (fb->format->cpp[0] * 8 == 24) - pitch = (pitch * 3) >> (4 - bppshift); - else - pitch = pitch >> (4 - bppshift); + WREG_SEQ(2, 0x0f); + WREG_SEQ(3, 0x00); + WREG_SEQ(4, 0x0e); + + WREG_CRT(10, 0); + WREG_CRT(11, 0); + WREG_CRT(12, 0); + WREG_CRT(13, 0); + WREG_CRT(14, 0); + WREG_CRT(15, 0); + + RREG_ECRT(0x03, crtcext3); + + crtcext3 |= BIT(7); /* enable MGA mode */ + crtcext4 = 0x00; + + WREG_ECRT(0x03, crtcext3); + WREG_ECRT(0x04, crtcext4); + + if (mdev->type == G200_ER) + WREG_ECRT(0x24, 0x5); + + if (mdev->type == G200_EW3) + WREG_ECRT(0x34, 0x5); + + misc = RREG8(MGA_MISC_IN); + misc |= MGAREG_MISC_IOADSEL | + MGAREG_MISC_RAMMAPEN | + MGAREG_MISC_HIGH_PG_SEL; + WREG8(MGA_MISC_OUT, misc); +} + +static void mgag200_set_mode_regs(struct mga_device *mdev, + const struct drm_display_mode *mode) +{ + unsigned int hdisplay, hsyncstart, hsyncend, htotal; + unsigned int vdisplay, vsyncstart, vsyncend, vtotal; + u8 misc, crtcext1, crtcext2, crtcext5; hdisplay = mode->hdisplay / 8 - 1; hsyncstart = mode->hsync_start / 8 - 1; @@ -1044,15 +1046,32 @@ vsyncend = mode->vsync_end - 1; vtotal = mode->vtotal - 2; - WREG_GFX(0, 0); - WREG_GFX(1, 0); - WREG_GFX(2, 0); - WREG_GFX(3, 0); - WREG_GFX(4, 0); - WREG_GFX(5, 0x40); - WREG_GFX(6, 0x5); - WREG_GFX(7, 0xf); - WREG_GFX(8, 0xf); + misc = RREG8(MGA_MISC_IN); + + if (mode->flags & DRM_MODE_FLAG_NHSYNC) + misc |= MGAREG_MISC_HSYNCPOL; + else + misc &= ~MGAREG_MISC_HSYNCPOL; + + if (mode->flags & DRM_MODE_FLAG_NVSYNC) + misc |= MGAREG_MISC_VSYNCPOL; + else + misc &= ~MGAREG_MISC_VSYNCPOL; + + crtcext1 = (((htotal - 4) & 0x100) >> 8) | + ((hdisplay & 0x100) >> 7) | + ((hsyncstart & 0x100) >> 6) | + (htotal & 0x40); + if (mdev->type == G200_WB || mdev->type == G200_EW3) + crtcext1 |= BIT(7) | /* vrsten */ + BIT(3); /* hrsten */ + + crtcext2 = ((vtotal & 0xc00) >> 10) | + ((vdisplay & 0x400) >> 8) | + ((vdisplay & 0xc00) >> 7) | + ((vsyncstart & 0xc00) >> 5) | + ((vdisplay & 0x400) >> 3); + crtcext5 = 0x00; WREG_CRT(0, htotal - 4); WREG_CRT(1, hdisplay); @@ -1066,197 +1085,209 @@ ((vsyncstart & 0x100) >> 6) | ((vdisplay & 0x100) >> 5) | ((vdisplay & 0x100) >> 4) | /* linecomp */ - ((vtotal & 0x200) >> 4)| + ((vtotal & 0x200) >> 4) | ((vdisplay & 0x200) >> 3) | ((vsyncstart & 0x200) >> 2)); WREG_CRT(9, ((vdisplay & 0x200) >> 4) | ((vdisplay & 0x200) >> 3)); - WREG_CRT(10, 0); - WREG_CRT(11, 0); - WREG_CRT(12, 0); - WREG_CRT(13, 0); - WREG_CRT(14, 0); - WREG_CRT(15, 0); WREG_CRT(16, vsyncstart & 0xFF); WREG_CRT(17, (vsyncend & 0x0F) | 0x20); WREG_CRT(18, vdisplay & 0xFF); - WREG_CRT(19, pitch & 0xFF); WREG_CRT(20, 0); WREG_CRT(21, vdisplay & 0xFF); WREG_CRT(22, (vtotal + 1) & 0xFF); WREG_CRT(23, 0xc3); WREG_CRT(24, vdisplay & 0xFF); - ext_vga[0] = 0; - ext_vga[5] = 0; + WREG_ECRT(0x01, crtcext1); + WREG_ECRT(0x02, crtcext2); + WREG_ECRT(0x05, crtcext5); + + WREG8(MGA_MISC_OUT, misc); + + mga_crtc_set_plls(mdev, mode->clock); +} + +static u8 mgag200_get_bpp_shift(struct mga_device *mdev, + const struct drm_format_info *format) +{ + return mdev->bpp_shifts[format->cpp[0] - 1]; +} - /* TODO interlace */ +/* + * Calculates the HW offset value from the framebuffer's pitch. The + * offset is a multiple of the pixel size and depends on the display + * format. + */ +static u32 mgag200_calculate_offset(struct mga_device *mdev, + const struct drm_framebuffer *fb) +{ + u32 offset = fb->pitches[0] / fb->format->cpp[0]; + u8 bppshift = mgag200_get_bpp_shift(mdev, fb->format); - ext_vga[0] |= (pitch & 0x300) >> 4; - ext_vga[1] = (((htotal - 4) & 0x100) >> 8) | - ((hdisplay & 0x100) >> 7) | - ((hsyncstart & 0x100) >> 6) | - (htotal & 0x40); - ext_vga[2] = ((vtotal & 0xc00) >> 10) | - ((vdisplay & 0x400) >> 8) | - ((vdisplay & 0xc00) >> 7) | - ((vsyncstart & 0xc00) >> 5) | - ((vdisplay & 0x400) >> 3); if (fb->format->cpp[0] * 8 == 24) - ext_vga[3] = (((1 << bppshift) * 3) - 1) | 0x80; + offset = (offset * 3) >> (4 - bppshift); else - ext_vga[3] = ((1 << bppshift) - 1) | 0x80; - ext_vga[4] = 0; - if (mdev->type == G200_WB || mdev->type == G200_EW3) - ext_vga[1] |= 0x88; + offset = offset >> (4 - bppshift); - /* Set pixel clocks */ - misc = 0x2d; - WREG8(MGA_MISC_OUT, misc); - - mga_crtc_set_plls(mdev, mode->clock); + return offset; +} - for (i = 0; i < 6; i++) { - WREG_ECRT(i, ext_vga[i]); - } +static void mgag200_set_offset(struct mga_device *mdev, + const struct drm_framebuffer *fb) +{ + u8 crtc13, crtcext0; + u32 offset = mgag200_calculate_offset(mdev, fb); - if (mdev->type == G200_ER) - WREG_ECRT(0x24, 0x5); + RREG_ECRT(0, crtcext0); - if (mdev->type == G200_EW3) - WREG_ECRT(0x34, 0x5); + crtc13 = offset & 0xff; - if (mdev->type == G200_EV) { - WREG_ECRT(6, 0); - } + crtcext0 &= ~MGAREG_CRTCEXT0_OFFSET_MASK; + crtcext0 |= (offset >> 4) & MGAREG_CRTCEXT0_OFFSET_MASK; - WREG_ECRT(0, ext_vga[0]); - /* Enable mga pixel clock */ - misc = 0x2d; + WREG_CRT(0x13, crtc13); + WREG_ECRT(0x00, crtcext0); +} - WREG8(MGA_MISC_OUT, misc); +static void mgag200_set_format_regs(struct mga_device *mdev, + const struct drm_framebuffer *fb) +{ + struct drm_device *dev = mdev->dev; + const struct drm_format_info *format = fb->format; + unsigned int bpp, bppshift, scale; + u8 crtcext3, xmulctrl; - mga_crtc_do_set_base(crtc, old_fb, x, y, 0); + bpp = format->cpp[0] * 8; - /* reset tagfifo */ - if (mdev->type == G200_ER) { - u32 mem_ctl = RREG32(MGAREG_MEMCTL); - u8 seq1; - - /* screen off */ - WREG8(MGAREG_SEQ_INDEX, 0x01); - seq1 = RREG8(MGAREG_SEQ_DATA) | 0x20; - WREG8(MGAREG_SEQ_DATA, seq1); + bppshift = mgag200_get_bpp_shift(mdev, format); + switch (bpp) { + case 24: + scale = ((1 << bppshift) * 3) - 1; + break; + default: + scale = (1 << bppshift) - 1; + break; + } - WREG32(MGAREG_MEMCTL, mem_ctl | 0x00200000); - udelay(1000); - WREG32(MGAREG_MEMCTL, mem_ctl & ~0x00200000); + RREG_ECRT(3, crtcext3); - WREG8(MGAREG_SEQ_DATA, seq1 & ~0x20); + switch (bpp) { + case 8: + xmulctrl = MGA1064_MUL_CTL_8bits; + break; + case 16: + if (format->depth == 15) + xmulctrl = MGA1064_MUL_CTL_15bits; + else + xmulctrl = MGA1064_MUL_CTL_16bits; + break; + case 24: + xmulctrl = MGA1064_MUL_CTL_24bits; + break; + case 32: + xmulctrl = MGA1064_MUL_CTL_32_24bits; + break; + default: + /* BUG: We should have caught this problem already. */ + drm_WARN_ON(dev, "invalid format depth\n"); + return; } + crtcext3 &= ~GENMASK(2, 0); + crtcext3 |= scale; - if (IS_G200_SE(mdev)) { - if (mdev->unique_rev_id >= 0x04) { - WREG8(MGAREG_CRTCEXT_INDEX, 0x06); - WREG8(MGAREG_CRTCEXT_DATA, 0); - } else if (mdev->unique_rev_id >= 0x02) { - u8 hi_pri_lvl; - u32 bpp; - u32 mb; - - if (fb->format->cpp[0] * 8 > 16) - bpp = 32; - else if (fb->format->cpp[0] * 8 > 8) - bpp = 16; - else - bpp = 8; + WREG_DAC(MGA1064_MUL_CTL, xmulctrl); - mb = (mode->clock * bpp) / 1000; - if (mb > 3100) - hi_pri_lvl = 0; - else if (mb > 2600) - hi_pri_lvl = 1; - else if (mb > 1900) - hi_pri_lvl = 2; - else if (mb > 1160) - hi_pri_lvl = 3; - else if (mb > 440) - hi_pri_lvl = 4; - else - hi_pri_lvl = 5; + WREG_GFX(0, 0x00); + WREG_GFX(1, 0x00); + WREG_GFX(2, 0x00); + WREG_GFX(3, 0x00); + WREG_GFX(4, 0x00); + WREG_GFX(5, 0x40); + WREG_GFX(6, 0x05); + WREG_GFX(7, 0x0f); + WREG_GFX(8, 0x0f); - WREG8(MGAREG_CRTCEXT_INDEX, 0x06); - WREG8(MGAREG_CRTCEXT_DATA, hi_pri_lvl); - } else { - WREG8(MGAREG_CRTCEXT_INDEX, 0x06); - if (mdev->unique_rev_id >= 0x01) - WREG8(MGAREG_CRTCEXT_DATA, 0x03); - else - WREG8(MGAREG_CRTCEXT_DATA, 0x04); - } - } - return 0; + WREG_ECRT(3, crtcext3); } -#if 0 /* code from mjg to attempt D3 on crtc dpms off - revisit later */ -static int mga_suspend(struct drm_crtc *crtc) +static void mgag200_g200er_reset_tagfifo(struct mga_device *mdev) { - struct mga_crtc *mga_crtc = to_mga_crtc(crtc); - struct drm_device *dev = crtc->dev; - struct mga_device *mdev = dev->dev_private; - struct pci_dev *pdev = dev->pdev; - int option; + static uint32_t RESET_FLAG = 0x00200000; /* undocumented magic value */ + u8 seq1; + u32 memctl; - if (mdev->suspended) - return 0; + /* screen off */ + RREG_SEQ(0x01, seq1); + seq1 |= MGAREG_SEQ1_SCROFF; + WREG_SEQ(0x01, seq1); - WREG_SEQ(1, 0x20); - WREG_ECRT(1, 0x30); - /* Disable the pixel clock */ - WREG_DAC(0x1a, 0x05); - /* Power down the DAC */ - WREG_DAC(0x1e, 0x18); - /* Power down the pixel PLL */ - WREG_DAC(0x1a, 0x0d); - - /* Disable PLLs and clocks */ - pci_read_config_dword(pdev, PCI_MGA_OPTION, &option); - option &= ~(0x1F8024); - pci_write_config_dword(pdev, PCI_MGA_OPTION, option); - pci_set_power_state(pdev, PCI_D3hot); - pci_disable_device(pdev); + memctl = RREG32(MGAREG_MEMCTL); - mdev->suspended = true; + memctl |= RESET_FLAG; + WREG32(MGAREG_MEMCTL, memctl); - return 0; + udelay(1000); + + memctl &= ~RESET_FLAG; + WREG32(MGAREG_MEMCTL, memctl); + + /* screen on */ + RREG_SEQ(0x01, seq1); + seq1 &= ~MGAREG_SEQ1_SCROFF; + WREG_SEQ(0x01, seq1); } -static int mga_resume(struct drm_crtc *crtc) +static void mgag200_g200se_set_hiprilvl(struct mga_device *mdev, + const struct drm_display_mode *mode, + const struct drm_framebuffer *fb) { - struct mga_crtc *mga_crtc = to_mga_crtc(crtc); - struct drm_device *dev = crtc->dev; - struct mga_device *mdev = dev->dev_private; - struct pci_dev *pdev = dev->pdev; - int option; + unsigned int hiprilvl; + u8 crtcext6; - if (!mdev->suspended) - return 0; + if (mdev->unique_rev_id >= 0x04) { + hiprilvl = 0; + } else if (mdev->unique_rev_id >= 0x02) { + unsigned int bpp; + unsigned long mb; + + if (fb->format->cpp[0] * 8 > 16) + bpp = 32; + else if (fb->format->cpp[0] * 8 > 8) + bpp = 16; + else + bpp = 8; - pci_set_power_state(pdev, PCI_D0); - pci_enable_device(pdev); + mb = (mode->clock * bpp) / 1000; + if (mb > 3100) + hiprilvl = 0; + else if (mb > 2600) + hiprilvl = 1; + else if (mb > 1900) + hiprilvl = 2; + else if (mb > 1160) + hiprilvl = 3; + else if (mb > 440) + hiprilvl = 4; + else + hiprilvl = 5; - /* Disable sysclk */ - pci_read_config_dword(pdev, PCI_MGA_OPTION, &option); - option &= ~(0x4); - pci_write_config_dword(pdev, PCI_MGA_OPTION, option); + } else if (mdev->unique_rev_id >= 0x01) { + hiprilvl = 3; + } else { + hiprilvl = 4; + } - mdev->suspended = false; + crtcext6 = hiprilvl; /* implicitly sets maxhipri to 0 */ - return 0; + WREG_ECRT(0x06, crtcext6); } -#endif +static void mgag200_g200ev_set_hiprilvl(struct mga_device *mdev) +{ + WREG_ECRT(0x06, 0x00); +} static void mga_crtc_dpms(struct drm_crtc *crtc, int mode) { @@ -1284,11 +1315,6 @@ break; } -#if 0 - if (mode == DRM_MODE_DPMS_OFF) { - mga_suspend(crtc); - } -#endif WREG8(MGAREG_SEQ_INDEX, 0x01); seq1 |= RREG8(MGAREG_SEQ_DATA) & ~0x20; mga_wait_vsync(mdev); @@ -1298,13 +1324,6 @@ WREG8(MGAREG_CRTCEXT_INDEX, 0x01); crtcext1 |= RREG8(MGAREG_CRTCEXT_DATA) & ~0x30; WREG8(MGAREG_CRTCEXT_DATA, crtcext1); - -#if 0 - if (mode == DRM_MODE_DPMS_ON && mdev->suspended == true) { - mga_resume(crtc); - drm_helper_resume_force_mode(dev); - } -#endif } /* @@ -1352,7 +1371,6 @@ { struct drm_device *dev = crtc->dev; struct mga_device *mdev = to_mga_device(dev); - const struct drm_crtc_helper_funcs *crtc_funcs = crtc->helper_private; u8 tmp; if (mdev->type == G200_WB || mdev->type == G200_EW3) @@ -1371,81 +1389,7 @@ WREG_SEQ(0x1, tmp); WREG_SEQ(0, 3); } - crtc_funcs->dpms(crtc, DRM_MODE_DPMS_ON); -} - -/* - * The core can pass us a set of gamma values to program. We actually only - * use this for 8-bit mode so can't perform smooth fades on deeper modes, - * but it's a requirement that we provide the function - */ -static int mga_crtc_gamma_set(struct drm_crtc *crtc, u16 *red, u16 *green, - u16 *blue, uint32_t size, - struct drm_modeset_acquire_ctx *ctx) -{ - mga_crtc_load_lut(crtc); - - return 0; -} - -/* Simple cleanup function */ -static void mga_crtc_destroy(struct drm_crtc *crtc) -{ - struct mga_crtc *mga_crtc = to_mga_crtc(crtc); - - drm_crtc_cleanup(crtc); - kfree(mga_crtc); -} - -static void mga_crtc_disable(struct drm_crtc *crtc) -{ - DRM_DEBUG_KMS("\n"); - mga_crtc_dpms(crtc, DRM_MODE_DPMS_OFF); - if (crtc->primary->fb) { - struct drm_framebuffer *fb = crtc->primary->fb; - struct drm_gem_vram_object *gbo = - drm_gem_vram_of_gem(fb->obj[0]); - drm_gem_vram_unpin(gbo); - } - crtc->primary->fb = NULL; -} - -/* These provide the minimum set of functions required to handle a CRTC */ -static const struct drm_crtc_funcs mga_crtc_funcs = { - .cursor_set = mgag200_crtc_cursor_set, - .cursor_move = mgag200_crtc_cursor_move, - .gamma_set = mga_crtc_gamma_set, - .set_config = drm_crtc_helper_set_config, - .destroy = mga_crtc_destroy, -}; - -static const struct drm_crtc_helper_funcs mga_helper_funcs = { - .disable = mga_crtc_disable, - .dpms = mga_crtc_dpms, - .mode_set = mga_crtc_mode_set, - .mode_set_base = mga_crtc_mode_set_base, - .prepare = mga_crtc_prepare, - .commit = mga_crtc_commit, -}; - -/* CRTC setup */ -static void mga_crtc_init(struct mga_device *mdev) -{ - struct drm_device *dev = mdev->dev; - struct mga_crtc *mga_crtc; - - mga_crtc = kzalloc(sizeof(struct mga_crtc) + - (MGAG200FB_CONN_LIMIT * sizeof(struct drm_connector *)), - GFP_KERNEL); - - if (mga_crtc == NULL) - return; - - drm_crtc_init(dev, &mga_crtc->base, &mga_crtc_funcs); - - drm_mode_crtc_set_gamma_size(&mga_crtc->base, MGAG200_LUT_SIZE); - - drm_crtc_helper_add(&mga_crtc->base, &mga_helper_funcs); + mga_crtc_dpms(crtc, DRM_MODE_DPMS_ON); } /* @@ -1579,14 +1523,16 @@ } static const struct drm_connector_helper_funcs mga_vga_connector_helper_funcs = { - .get_modes = mga_vga_get_modes, + .get_modes = mga_vga_get_modes, .mode_valid = mga_vga_mode_valid, }; static const struct drm_connector_funcs mga_vga_connector_funcs = { - .dpms = drm_helper_connector_dpms, - .fill_modes = drm_helper_probe_single_connector_modes, - .destroy = mga_connector_destroy, + .reset = drm_atomic_helper_connector_reset, + .fill_modes = drm_helper_probe_single_connector_modes, + .destroy = mga_connector_destroy, + .atomic_duplicate_state = drm_atomic_helper_connector_duplicate_state, + .atomic_destroy_state = drm_atomic_helper_connector_destroy_state, }; static int mgag200_vga_connector_init(struct mga_device *mdev) @@ -1618,8 +1564,148 @@ return ret; } +/* + * Simple Display Pipe + */ + +static enum drm_mode_status +mgag200_simple_display_pipe_mode_valid(struct drm_simple_display_pipe *pipe, + const struct drm_display_mode *mode) +{ + return MODE_OK; +} + +static void +mgag200_handle_damage(struct mga_device *mdev, struct drm_framebuffer *fb, + struct drm_rect *clip) +{ + struct drm_device *dev = mdev->dev; + void *vmap; + + vmap = drm_gem_shmem_vmap(fb->obj[0]); + if (drm_WARN_ON(dev, !vmap)) + return; /* BUG: SHMEM BO should always be vmapped */ + + drm_fb_memcpy_dstclip(mdev->vram, vmap, fb, clip); + + drm_gem_shmem_vunmap(fb->obj[0], vmap); + + /* Always scanout image at VRAM offset 0 */ + mgag200_set_startadd(mdev, (u32)0); + mgag200_set_offset(mdev, fb); +} + +static void +mgag200_simple_display_pipe_enable(struct drm_simple_display_pipe *pipe, + struct drm_crtc_state *crtc_state, + struct drm_plane_state *plane_state) +{ + struct drm_crtc *crtc = &pipe->crtc; + struct drm_device *dev = crtc->dev; + struct mga_device *mdev = to_mga_device(dev); + struct drm_display_mode *adjusted_mode = &crtc_state->adjusted_mode; + struct drm_framebuffer *fb = plane_state->fb; + struct drm_rect fullscreen = { + .x1 = 0, + .x2 = fb->width, + .y1 = 0, + .y2 = fb->height, + }; + + mga_crtc_prepare(crtc); + + mgag200_set_format_regs(mdev, fb); + mgag200_set_mode_regs(mdev, adjusted_mode); + + if (mdev->type == G200_ER) + mgag200_g200er_reset_tagfifo(mdev); + + if (IS_G200_SE(mdev)) + mgag200_g200se_set_hiprilvl(mdev, adjusted_mode, fb); + else if (mdev->type == G200_EV) + mgag200_g200ev_set_hiprilvl(mdev); + + mga_crtc_commit(crtc); + + mgag200_handle_damage(mdev, fb, &fullscreen); +} + +static void +mgag200_simple_display_pipe_disable(struct drm_simple_display_pipe *pipe) +{ + struct drm_crtc *crtc = &pipe->crtc; + + mga_crtc_dpms(crtc, DRM_MODE_DPMS_OFF); +} + +static int +mgag200_simple_display_pipe_check(struct drm_simple_display_pipe *pipe, + struct drm_plane_state *plane_state, + struct drm_crtc_state *crtc_state) +{ + struct drm_plane *plane = plane_state->plane; + struct drm_framebuffer *new_fb = plane_state->fb; + struct drm_framebuffer *fb = NULL; + + if (!new_fb) + return 0; + + if (plane->state) + fb = plane->state->fb; + + if (!fb || (fb->format != new_fb->format)) + crtc_state->mode_changed = true; /* update PLL settings */ + + return 0; +} + +static void +mgag200_simple_display_pipe_update(struct drm_simple_display_pipe *pipe, + struct drm_plane_state *old_state) +{ + struct drm_plane *plane = &pipe->plane; + struct drm_device *dev = plane->dev; + struct mga_device *mdev = to_mga_device(dev); + struct drm_plane_state *state = plane->state; + struct drm_framebuffer *fb = state->fb; + struct drm_rect damage; + + if (!fb) + return; + + if (drm_atomic_helper_damage_merged(old_state, state, &damage)) + mgag200_handle_damage(mdev, fb, &damage); +} + +static const struct drm_simple_display_pipe_funcs +mgag200_simple_display_pipe_funcs = { + .mode_valid = mgag200_simple_display_pipe_mode_valid, + .enable = mgag200_simple_display_pipe_enable, + .disable = mgag200_simple_display_pipe_disable, + .check = mgag200_simple_display_pipe_check, + .update = mgag200_simple_display_pipe_update, + .prepare_fb = drm_gem_fb_simple_display_pipe_prepare_fb, +}; + +static const uint32_t mgag200_simple_display_pipe_formats[] = { + DRM_FORMAT_XRGB8888, + DRM_FORMAT_RGB565, + DRM_FORMAT_RGB888, +}; + +static const uint64_t mgag200_simple_display_pipe_fmtmods[] = { + DRM_FORMAT_MOD_LINEAR, + DRM_FORMAT_MOD_INVALID +}; + +/* + * Mode config + */ + static const struct drm_mode_config_funcs mgag200_mode_config_funcs = { - .fb_create = drm_gem_fb_create + .fb_create = drm_gem_fb_create_with_dirty, + .atomic_check = drm_atomic_helper_check, + .atomic_commit = drm_atomic_helper_commit, }; static unsigned int mgag200_preferred_depth(struct mga_device *mdev) @@ -1633,8 +1719,9 @@ int mgag200_modeset_init(struct mga_device *mdev) { struct drm_device *dev = mdev->dev; - struct drm_encoder *encoder = &mdev->encoder; struct drm_connector *connector = &mdev->connector.base; + struct drm_simple_display_pipe *pipe = &mdev->display_pipe; + size_t format_count = ARRAY_SIZE(mgag200_simple_display_pipe_formats); int ret; mdev->bpp_shifts[0] = 0; @@ -1642,6 +1729,8 @@ mdev->bpp_shifts[2] = 0; mdev->bpp_shifts[3] = 2; + mgag200_init_regs(mdev); + ret = drmm_mode_config_init(dev); if (ret) { drm_err(dev, "drmm_mode_config_init() failed, error %d\n", @@ -1653,32 +1742,36 @@ dev->mode_config.max_height = MGAG200_MAX_FB_HEIGHT; dev->mode_config.preferred_depth = mgag200_preferred_depth(mdev); - dev->mode_config.prefer_shadow = 1; dev->mode_config.fb_base = mdev->mc.vram_base; dev->mode_config.funcs = &mgag200_mode_config_funcs; - mga_crtc_init(mdev); - - ret = drm_simple_encoder_init(dev, encoder, DRM_MODE_ENCODER_DAC); + ret = mgag200_vga_connector_init(mdev); if (ret) { drm_err(dev, - "drm_simple_encoder_init() failed, error %d\n", + "mgag200_vga_connector_init() failed, error %d\n", ret); return ret; } - encoder->possible_crtcs = 0x1; - ret = mgag200_vga_connector_init(mdev); + ret = drm_simple_display_pipe_init(dev, pipe, + &mgag200_simple_display_pipe_funcs, + mgag200_simple_display_pipe_formats, + format_count, + mgag200_simple_display_pipe_fmtmods, + connector); if (ret) { drm_err(dev, - "mgag200_vga_connector_init() failed, error %d\n", + "drm_simple_display_pipe_init() failed, error %d\n", ret); return ret; } - drm_connector_attach_encoder(connector, encoder); + /* FIXME: legacy gamma tables; convert to CRTC state */ + drm_mode_crtc_set_gamma_size(&pipe->crtc, MGAG200_LUT_SIZE); + + drm_mode_config_reset(dev); return 0; } --- linux-azure-5.8-5.8.0.orig/drivers/gpu/drm/mgag200/mgag200_reg.h +++ linux-azure-5.8-5.8.0/drivers/gpu/drm/mgag200/mgag200_reg.h @@ -16,10 +16,11 @@ * MGA1064SG Mystique register file */ - #ifndef _MGA_REG_H_ #define _MGA_REG_H_ +#include + #define MGAREG_DWGCTL 0x1c00 #define MGAREG_MACCESS 0x1c04 /* the following is a mystique only register */ @@ -221,21 +222,29 @@ #define MGAREG_MISC_IOADSEL (0x1 << 0) #define MGAREG_MISC_RAMMAPEN (0x1 << 1) +#define MGAREG_MISC_CLK_SEL_MASK GENMASK(3, 2) #define MGAREG_MISC_CLK_SEL_VGA25 (0x0 << 2) #define MGAREG_MISC_CLK_SEL_VGA28 (0x1 << 2) #define MGAREG_MISC_CLK_SEL_MGA_PIX (0x2 << 2) #define MGAREG_MISC_CLK_SEL_MGA_MSK (0x3 << 2) #define MGAREG_MISC_VIDEO_DIS (0x1 << 4) #define MGAREG_MISC_HIGH_PG_SEL (0x1 << 5) +#define MGAREG_MISC_HSYNCPOL BIT(6) +#define MGAREG_MISC_VSYNCPOL BIT(7) /* MMIO VGA registers */ #define MGAREG_SEQ_INDEX 0x1fc4 #define MGAREG_SEQ_DATA 0x1fc5 + +#define MGAREG_SEQ1_SCROFF BIT(5) + #define MGAREG_CRTC_INDEX 0x1fd4 #define MGAREG_CRTC_DATA 0x1fd5 #define MGAREG_CRTCEXT_INDEX 0x1fde #define MGAREG_CRTCEXT_DATA 0x1fdf +#define MGAREG_CRTCEXT0_OFFSET_MASK GENMASK(5, 4) + /* Cursor X and Y position */ #define MGA_CURPOSXL 0x3c0c #define MGA_CURPOSXH 0x3c0d --- linux-azure-5.8-5.8.0.orig/drivers/gpu/drm/mgag200/mgag200_ttm.c +++ linux-azure-5.8-5.8.0/drivers/gpu/drm/mgag200/mgag200_ttm.c @@ -32,17 +32,8 @@ int mgag200_mm_init(struct mga_device *mdev) { - struct drm_vram_mm *vmm; - int ret; struct drm_device *dev = mdev->dev; - - vmm = drm_vram_helper_alloc_mm(dev, pci_resource_start(dev->pdev, 0), - mdev->mc.vram_size); - if (IS_ERR(vmm)) { - ret = PTR_ERR(vmm); - DRM_ERROR("Error initializing VRAM MM; %d\n", ret); - return ret; - } + int ret; arch_io_reserve_memtype_wc(pci_resource_start(dev->pdev, 0), pci_resource_len(dev->pdev, 0)); @@ -50,9 +41,22 @@ mdev->fb_mtrr = arch_phys_wc_add(pci_resource_start(dev->pdev, 0), pci_resource_len(dev->pdev, 0)); + mdev->vram = ioremap(pci_resource_start(dev->pdev, 0), + pci_resource_len(dev->pdev, 0)); + if (!mdev->vram) { + ret = -ENOMEM; + goto err_arch_phys_wc_del; + } + mdev->vram_fb_available = mdev->mc.vram_size; return 0; + +err_arch_phys_wc_del: + arch_phys_wc_del(mdev->fb_mtrr); + arch_io_free_memtype_wc(pci_resource_start(dev->pdev, 0), + pci_resource_len(dev->pdev, 0)); + return ret; } void mgag200_mm_fini(struct mga_device *mdev) @@ -60,9 +64,7 @@ struct drm_device *dev = mdev->dev; mdev->vram_fb_available = 0; - - drm_vram_helper_release_mm(dev); - + iounmap(mdev->vram); arch_io_free_memtype_wc(pci_resource_start(dev->pdev, 0), pci_resource_len(dev->pdev, 0)); arch_phys_wc_del(mdev->fb_mtrr); --- linux-azure-5.8-5.8.0.orig/drivers/gpu/drm/msm/adreno/a2xx_gpu.c +++ linux-azure-5.8-5.8.0/drivers/gpu/drm/msm/adreno/a2xx_gpu.c @@ -164,6 +164,11 @@ if (ret) return ret; + gpu_write(gpu, REG_AXXX_CP_RB_CNTL, + MSM_GPU_RB_CNTL_DEFAULT | AXXX_CP_RB_CNTL_NO_UPDATE); + + gpu_write(gpu, REG_AXXX_CP_RB_BASE, lower_32_bits(gpu->rb[0]->iova)); + /* NOTE: PM4/micro-engine firmware registers look to be the same * for a2xx and a3xx.. we could possibly push that part down to * adreno_gpu base class. Or push both PM4 and PFP but --- linux-azure-5.8-5.8.0.orig/drivers/gpu/drm/msm/adreno/a3xx_gpu.c +++ linux-azure-5.8-5.8.0/drivers/gpu/drm/msm/adreno/a3xx_gpu.c @@ -211,6 +211,16 @@ if (ret) return ret; + /* + * Use the default ringbuffer size and block size but disable the RPTR + * shadow + */ + gpu_write(gpu, REG_AXXX_CP_RB_CNTL, + MSM_GPU_RB_CNTL_DEFAULT | AXXX_CP_RB_CNTL_NO_UPDATE); + + /* Set the ringbuffer address */ + gpu_write(gpu, REG_AXXX_CP_RB_BASE, lower_32_bits(gpu->rb[0]->iova)); + /* setup access protection: */ gpu_write(gpu, REG_A3XX_CP_PROTECT_CTRL, 0x00000007); --- linux-azure-5.8-5.8.0.orig/drivers/gpu/drm/msm/adreno/a4xx_gpu.c +++ linux-azure-5.8-5.8.0/drivers/gpu/drm/msm/adreno/a4xx_gpu.c @@ -267,6 +267,16 @@ if (ret) return ret; + /* + * Use the default ringbuffer size and block size but disable the RPTR + * shadow + */ + gpu_write(gpu, REG_A4XX_CP_RB_CNTL, + MSM_GPU_RB_CNTL_DEFAULT | AXXX_CP_RB_CNTL_NO_UPDATE); + + /* Set the ringbuffer address */ + gpu_write(gpu, REG_A4XX_CP_RB_BASE, lower_32_bits(gpu->rb[0]->iova)); + /* Load PM4: */ ptr = (uint32_t *)(adreno_gpu->fw[ADRENO_FW_PM4]->data); len = adreno_gpu->fw[ADRENO_FW_PM4]->size / 4; --- linux-azure-5.8-5.8.0.orig/drivers/gpu/drm/msm/adreno/a5xx_gpu.c +++ linux-azure-5.8-5.8.0/drivers/gpu/drm/msm/adreno/a5xx_gpu.c @@ -702,8 +702,6 @@ if (ret) return ret; - a5xx_preempt_hw_init(gpu); - if (!adreno_is_a510(adreno_gpu)) a5xx_gpmu_ucode_init(gpu); @@ -711,6 +709,15 @@ if (ret) return ret; + /* Set the ringbuffer address */ + gpu_write64(gpu, REG_A5XX_CP_RB_BASE, REG_A5XX_CP_RB_BASE_HI, + gpu->rb[0]->iova); + + gpu_write(gpu, REG_A5XX_CP_RB_CNTL, + MSM_GPU_RB_CNTL_DEFAULT | AXXX_CP_RB_CNTL_NO_UPDATE); + + a5xx_preempt_hw_init(gpu); + /* Disable the interrupts through the initial bringup stage */ gpu_write(gpu, REG_A5XX_RBBM_INT_0_MASK, A5XX_INT_MASK); @@ -1510,7 +1517,8 @@ check_speed_bin(&pdev->dev); - ret = adreno_gpu_init(dev, pdev, adreno_gpu, &funcs, 4); + /* Restricting nr_rings to 1 to temporarily disable preemption */ + ret = adreno_gpu_init(dev, pdev, adreno_gpu, &funcs, 1); if (ret) { a5xx_destroy(&(a5xx_gpu->base.base)); return ERR_PTR(ret); --- linux-azure-5.8-5.8.0.orig/drivers/gpu/drm/msm/adreno/a5xx_gpu.h +++ linux-azure-5.8-5.8.0/drivers/gpu/drm/msm/adreno/a5xx_gpu.h @@ -31,6 +31,7 @@ struct msm_ringbuffer *next_ring; struct drm_gem_object *preempt_bo[MSM_GPU_MAX_RINGS]; + struct drm_gem_object *preempt_counters_bo[MSM_GPU_MAX_RINGS]; struct a5xx_preempt_record *preempt[MSM_GPU_MAX_RINGS]; uint64_t preempt_iova[MSM_GPU_MAX_RINGS]; --- linux-azure-5.8-5.8.0.orig/drivers/gpu/drm/msm/adreno/a5xx_preempt.c +++ linux-azure-5.8-5.8.0/drivers/gpu/drm/msm/adreno/a5xx_preempt.c @@ -226,19 +226,31 @@ struct adreno_gpu *adreno_gpu = &a5xx_gpu->base; struct msm_gpu *gpu = &adreno_gpu->base; struct a5xx_preempt_record *ptr; - struct drm_gem_object *bo = NULL; - u64 iova = 0; + void *counters; + struct drm_gem_object *bo = NULL, *counters_bo = NULL; + u64 iova = 0, counters_iova = 0; ptr = msm_gem_kernel_new(gpu->dev, A5XX_PREEMPT_RECORD_SIZE + A5XX_PREEMPT_COUNTER_SIZE, - MSM_BO_UNCACHED, gpu->aspace, &bo, &iova); + MSM_BO_UNCACHED | MSM_BO_MAP_PRIV, gpu->aspace, &bo, &iova); if (IS_ERR(ptr)) return PTR_ERR(ptr); + /* The buffer to store counters needs to be unprivileged */ + counters = msm_gem_kernel_new(gpu->dev, + A5XX_PREEMPT_COUNTER_SIZE, + MSM_BO_UNCACHED, gpu->aspace, &counters_bo, &counters_iova); + if (IS_ERR(counters)) { + msm_gem_kernel_put(bo, gpu->aspace, true); + return PTR_ERR(counters); + } + msm_gem_object_set_name(bo, "preempt"); + msm_gem_object_set_name(counters_bo, "preempt_counters"); a5xx_gpu->preempt_bo[ring->id] = bo; + a5xx_gpu->preempt_counters_bo[ring->id] = counters_bo; a5xx_gpu->preempt_iova[ring->id] = iova; a5xx_gpu->preempt[ring->id] = ptr; @@ -249,7 +261,7 @@ ptr->data = 0; ptr->cntl = MSM_GPU_RB_CNTL_DEFAULT; ptr->rptr_addr = rbmemptr(ring, rptr); - ptr->counter = iova + A5XX_PREEMPT_RECORD_SIZE; + ptr->counter = counters_iova; return 0; } @@ -260,8 +272,11 @@ struct a5xx_gpu *a5xx_gpu = to_a5xx_gpu(adreno_gpu); int i; - for (i = 0; i < gpu->nr_rings; i++) + for (i = 0; i < gpu->nr_rings; i++) { msm_gem_kernel_put(a5xx_gpu->preempt_bo[i], gpu->aspace, true); + msm_gem_kernel_put(a5xx_gpu->preempt_counters_bo[i], + gpu->aspace, true); + } } void a5xx_preempt_init(struct msm_gpu *gpu) --- linux-azure-5.8-5.8.0.orig/drivers/gpu/drm/msm/adreno/a6xx_gmu.c +++ linux-azure-5.8-5.8.0/drivers/gpu/drm/msm/adreno/a6xx_gmu.c @@ -207,6 +207,16 @@ { int ret; u32 val; + u32 mask, reset_val; + + val = gmu_read(gmu, REG_A6XX_GMU_CM3_DTCM_START + 0xff8); + if (val <= 0x20010004) { + mask = 0xffffffff; + reset_val = 0xbabeface; + } else { + mask = 0x1ff; + reset_val = 0x100; + } gmu_write(gmu, REG_A6XX_GMU_CM3_SYSRESET, 1); @@ -218,7 +228,7 @@ gmu_write(gmu, REG_A6XX_GMU_CM3_SYSRESET, 0); ret = gmu_poll_timeout(gmu, REG_A6XX_GMU_CM3_FW_INIT_RESULT, val, - val == 0xbabeface, 100, 10000); + (val & mask) == reset_val, 100, 10000); if (ret) DRM_DEV_ERROR(gmu->dev, "GMU firmware initialization timed out\n"); @@ -260,6 +270,16 @@ } name = "GPU_SET"; break; + case GMU_OOB_PERFCOUNTER_SET: + if (gmu->legacy) { + request = GMU_OOB_PERFCOUNTER_REQUEST; + ack = GMU_OOB_PERFCOUNTER_ACK; + } else { + request = GMU_OOB_PERFCOUNTER_REQUEST_NEW; + ack = GMU_OOB_PERFCOUNTER_ACK_NEW; + } + name = "PERFCOUNTER"; + break; case GMU_OOB_BOOT_SLUMBER: request = GMU_OOB_BOOT_SLUMBER_REQUEST; ack = GMU_OOB_BOOT_SLUMBER_ACK; @@ -297,9 +317,14 @@ void a6xx_gmu_clear_oob(struct a6xx_gmu *gmu, enum a6xx_gmu_oob_state state) { if (!gmu->legacy) { - WARN_ON(state != GMU_OOB_GPU_SET); - gmu_write(gmu, REG_A6XX_GMU_HOST2GMU_INTR_SET, - 1 << GMU_OOB_GPU_SET_CLEAR_NEW); + if (state == GMU_OOB_GPU_SET) { + gmu_write(gmu, REG_A6XX_GMU_HOST2GMU_INTR_SET, + 1 << GMU_OOB_GPU_SET_CLEAR_NEW); + } else { + WARN_ON(state != GMU_OOB_PERFCOUNTER_SET); + gmu_write(gmu, REG_A6XX_GMU_HOST2GMU_INTR_SET, + 1 << GMU_OOB_PERFCOUNTER_CLEAR_NEW); + } return; } @@ -308,6 +333,10 @@ gmu_write(gmu, REG_A6XX_GMU_HOST2GMU_INTR_SET, 1 << GMU_OOB_GPU_SET_CLEAR); break; + case GMU_OOB_PERFCOUNTER_SET: + gmu_write(gmu, REG_A6XX_GMU_HOST2GMU_INTR_SET, + 1 << GMU_OOB_PERFCOUNTER_CLEAR); + break; case GMU_OOB_BOOT_SLUMBER: gmu_write(gmu, REG_A6XX_GMU_HOST2GMU_INTR_SET, 1 << GMU_OOB_BOOT_SLUMBER_CLEAR); @@ -854,10 +883,19 @@ /* Turn on the resources */ pm_runtime_get_sync(gmu->dev); + /* + * "enable" the GX power domain which won't actually do anything but it + * will make sure that the refcounting is correct in case we need to + * bring down the GX after a GMU failure + */ + if (!IS_ERR_OR_NULL(gmu->gxpd)) + pm_runtime_get_sync(gmu->gxpd); + /* Use a known rate to bring up the GMU */ clk_set_rate(gmu->core_clk, 200000000); ret = clk_bulk_prepare_enable(gmu->nr_clocks, gmu->clocks); if (ret) { + pm_runtime_put(gmu->gxpd); pm_runtime_put(gmu->dev); return ret; } @@ -903,19 +941,12 @@ else a6xx_hfi_set_freq(gmu, gmu->current_perf_index); - /* - * "enable" the GX power domain which won't actually do anything but it - * will make sure that the refcounting is correct in case we need to - * bring down the GX after a GMU failure - */ - if (!IS_ERR_OR_NULL(gmu->gxpd)) - pm_runtime_get(gmu->gxpd); - out: /* On failure, shut down the GMU to leave it in a good state */ if (ret) { disable_irq(gmu->gmu_irq); a6xx_rpmh_stop(gmu); + pm_runtime_put(gmu->gxpd); pm_runtime_put(gmu->dev); } --- linux-azure-5.8-5.8.0.orig/drivers/gpu/drm/msm/adreno/a6xx_gmu.h +++ linux-azure-5.8-5.8.0/drivers/gpu/drm/msm/adreno/a6xx_gmu.h @@ -151,6 +151,7 @@ GMU_OOB_BOOT_SLUMBER = 0, GMU_OOB_GPU_SET, GMU_OOB_DCVS_SET, + GMU_OOB_PERFCOUNTER_SET, }; /* These are the interrupt / ack bits for each OOB request that are set @@ -185,6 +186,13 @@ #define GMU_OOB_GPU_SET_ACK_NEW 31 #define GMU_OOB_GPU_SET_CLEAR_NEW 31 +#define GMU_OOB_PERFCOUNTER_REQUEST 17 +#define GMU_OOB_PERFCOUNTER_ACK 25 +#define GMU_OOB_PERFCOUNTER_CLEAR 25 + +#define GMU_OOB_PERFCOUNTER_REQUEST_NEW 28 +#define GMU_OOB_PERFCOUNTER_ACK_NEW 30 +#define GMU_OOB_PERFCOUNTER_CLEAR_NEW 30 void a6xx_hfi_init(struct a6xx_gmu *gmu); int a6xx_hfi_start(struct a6xx_gmu *gmu, int boot_state); --- linux-azure-5.8-5.8.0.orig/drivers/gpu/drm/msm/adreno/a6xx_gpu.c +++ linux-azure-5.8-5.8.0/drivers/gpu/drm/msm/adreno/a6xx_gpu.c @@ -557,6 +557,13 @@ if (ret) goto out; + /* Set the ringbuffer address */ + gpu_write64(gpu, REG_A6XX_CP_RB_BASE, REG_A6XX_CP_RB_BASE_HI, + gpu->rb[0]->iova); + + gpu_write(gpu, REG_A6XX_CP_RB_CNTL, + MSM_GPU_RB_CNTL_DEFAULT | AXXX_CP_RB_CNTL_NO_UPDATE); + /* Always come up on rb 0 */ a6xx_gpu->cur_ring = gpu->rb[0]; @@ -809,14 +816,18 @@ { struct adreno_gpu *adreno_gpu = to_adreno_gpu(gpu); struct a6xx_gpu *a6xx_gpu = to_a6xx_gpu(adreno_gpu); + static DEFINE_MUTEX(perfcounter_oob); + + mutex_lock(&perfcounter_oob); /* Force the GPU power on so we can read this register */ - a6xx_gmu_set_oob(&a6xx_gpu->gmu, GMU_OOB_GPU_SET); + a6xx_gmu_set_oob(&a6xx_gpu->gmu, GMU_OOB_PERFCOUNTER_SET); *value = gpu_read64(gpu, REG_A6XX_RBBM_PERFCTR_CP_0_LO, REG_A6XX_RBBM_PERFCTR_CP_0_HI); - a6xx_gmu_clear_oob(&a6xx_gpu->gmu, GMU_OOB_GPU_SET); + a6xx_gmu_clear_oob(&a6xx_gpu->gmu, GMU_OOB_PERFCOUNTER_SET); + mutex_unlock(&perfcounter_oob); return 0; } --- linux-azure-5.8-5.8.0.orig/drivers/gpu/drm/msm/adreno/a6xx_gpu_state.c +++ linux-azure-5.8-5.8.0/drivers/gpu/drm/msm/adreno/a6xx_gpu_state.c @@ -864,7 +864,7 @@ int i; a6xx_state->indexed_regs = state_kcalloc(a6xx_state, count, - sizeof(a6xx_state->indexed_regs)); + sizeof(*a6xx_state->indexed_regs)); if (!a6xx_state->indexed_regs) return; --- linux-azure-5.8-5.8.0.orig/drivers/gpu/drm/msm/adreno/adreno_gpu.c +++ linux-azure-5.8-5.8.0/drivers/gpu/drm/msm/adreno/adreno_gpu.c @@ -189,10 +189,16 @@ adreno_iommu_create_address_space(struct msm_gpu *gpu, struct platform_device *pdev) { - struct iommu_domain *iommu = iommu_domain_alloc(&platform_bus_type); - struct msm_mmu *mmu = msm_iommu_new(&pdev->dev, iommu); + struct iommu_domain *iommu; + struct msm_mmu *mmu; struct msm_gem_address_space *aspace; + iommu = iommu_domain_alloc(&platform_bus_type); + if (!iommu) + return NULL; + + mmu = msm_iommu_new(&pdev->dev, iommu); + aspace = msm_gem_address_space_create(mmu, "gpu", SZ_16M, 0xffffffff - SZ_16M); @@ -396,30 +402,10 @@ ring->next = ring->start; /* reset completed fence seqno: */ - ring->memptrs->fence = ring->seqno; + ring->memptrs->fence = ring->fctx->completed_fence; ring->memptrs->rptr = 0; } - /* - * Setup REG_CP_RB_CNTL. The same value is used across targets (with - * the excpetion of A430 that disables the RPTR shadow) - the cacluation - * for the ringbuffer size and block size is moved to msm_gpu.h for the - * pre-processor to deal with and the A430 variant is ORed in here - */ - adreno_gpu_write(adreno_gpu, REG_ADRENO_CP_RB_CNTL, - MSM_GPU_RB_CNTL_DEFAULT | - (adreno_is_a430(adreno_gpu) ? AXXX_CP_RB_CNTL_NO_UPDATE : 0)); - - /* Setup ringbuffer address - use ringbuffer[0] for GPU init */ - adreno_gpu_write64(adreno_gpu, REG_ADRENO_CP_RB_BASE, - REG_ADRENO_CP_RB_BASE_HI, gpu->rb[0]->iova); - - if (!adreno_is_a430(adreno_gpu)) { - adreno_gpu_write64(adreno_gpu, REG_ADRENO_CP_RB_RPTR_ADDR, - REG_ADRENO_CP_RB_RPTR_ADDR_HI, - rbmemptr(gpu->rb[0], rptr)); - } - return 0; } @@ -427,11 +413,8 @@ static uint32_t get_rptr(struct adreno_gpu *adreno_gpu, struct msm_ringbuffer *ring) { - if (adreno_is_a430(adreno_gpu)) - return ring->memptrs->rptr = adreno_gpu_read( - adreno_gpu, REG_ADRENO_CP_RB_RPTR); - else - return ring->memptrs->rptr; + return ring->memptrs->rptr = adreno_gpu_read( + adreno_gpu, REG_ADRENO_CP_RB_RPTR); } struct msm_ringbuffer *adreno_active_ring(struct msm_gpu *gpu) --- linux-azure-5.8-5.8.0.orig/drivers/gpu/drm/msm/disp/dpu1/dpu_crtc.c +++ linux-azure-5.8-5.8.0/drivers/gpu/drm/msm/disp/dpu1/dpu_crtc.c @@ -389,7 +389,7 @@ spin_unlock_irqrestore(&dpu_crtc->spin_lock, flags); if (!fevent) { - DRM_ERROR("crtc%d event %d overflow\n", crtc->base.id, event); + DRM_ERROR_RATELIMITED("crtc%d event %d overflow\n", crtc->base.id, event); return; } @@ -827,7 +827,7 @@ { struct dpu_crtc *dpu_crtc; struct drm_encoder *encoder; - bool request_bandwidth; + bool request_bandwidth = false; if (!crtc) { DPU_ERROR("invalid crtc\n"); @@ -881,7 +881,7 @@ struct drm_plane *plane; struct drm_display_mode *mode; - int cnt = 0, rc = 0, mixer_width, i, z_pos; + int cnt = 0, rc = 0, mixer_width = 0, i, z_pos; struct dpu_multirect_plane_states multirect_plane[DPU_STAGE_MAX * 2]; int multirect_count = 0; @@ -914,9 +914,11 @@ memset(pipe_staged, 0, sizeof(pipe_staged)); - mixer_width = mode->hdisplay / cstate->num_mixers; + if (cstate->num_mixers) { + mixer_width = mode->hdisplay / cstate->num_mixers; - _dpu_crtc_setup_lm_bounds(crtc, state); + _dpu_crtc_setup_lm_bounds(crtc, state); + } crtc_rect.x2 = mode->hdisplay; crtc_rect.y2 = mode->vdisplay; --- linux-azure-5.8-5.8.0.orig/drivers/gpu/drm/msm/disp/dpu1/dpu_encoder.c +++ linux-azure-5.8-5.8.0/drivers/gpu/drm/msm/disp/dpu1/dpu_encoder.c @@ -586,7 +586,10 @@ dpu_kms = to_dpu_kms(priv->kms); mode = &crtc_state->mode; adj_mode = &crtc_state->adjusted_mode; - global_state = dpu_kms_get_existing_global_state(dpu_kms); + global_state = dpu_kms_get_global_state(crtc_state->state); + if (IS_ERR(global_state)) + return PTR_ERR(global_state); + trace_dpu_enc_atomic_check(DRMID(drm_enc)); /* @@ -621,12 +624,15 @@ /* Reserve dynamic resources now. */ if (!ret) { /* - * Avoid reserving resources when mode set is pending. Topology - * info may not be available to complete reservation. + * Release and Allocate resources on every modeset + * Dont allocate when active is false. */ if (drm_atomic_crtc_needs_modeset(crtc_state)) { - ret = dpu_rm_reserve(&dpu_kms->rm, global_state, - drm_enc, crtc_state, topology); + dpu_rm_release(global_state, drm_enc); + + if (!crtc_state->active_changed || crtc_state->active) + ret = dpu_rm_reserve(&dpu_kms->rm, global_state, + drm_enc, crtc_state, topology); } } @@ -1175,7 +1181,6 @@ struct dpu_encoder_virt *dpu_enc = NULL; struct msm_drm_private *priv; struct dpu_kms *dpu_kms; - struct dpu_global_state *global_state; int i = 0; if (!drm_enc) { @@ -1194,7 +1199,6 @@ priv = drm_enc->dev->dev_private; dpu_kms = to_dpu_kms(priv->kms); - global_state = dpu_kms_get_existing_global_state(dpu_kms); trace_dpu_enc_disable(DRMID(drm_enc)); @@ -1224,8 +1228,6 @@ DPU_DEBUG_ENC(dpu_enc, "encoder disabled\n"); - dpu_rm_release(global_state, drm_enc); - mutex_unlock(&dpu_enc->enc_lock); } --- linux-azure-5.8-5.8.0.orig/drivers/gpu/drm/msm/disp/dpu1/dpu_hw_catalog.c +++ linux-azure-5.8-5.8.0/drivers/gpu/drm/msm/disp/dpu1/dpu_hw_catalog.c @@ -43,6 +43,10 @@ #define DSPP_SC7180_MASK BIT(DPU_DSPP_PCC) +#define INTF_SDM845_MASK (0) + +#define INTF_SC7180_MASK BIT(DPU_INTF_INPUT_CTRL) | BIT(DPU_INTF_TE) + #define DEFAULT_PIXEL_RAM_SIZE (50 * 1024) #define DEFAULT_DPU_LINE_WIDTH 2048 #define DEFAULT_DPU_OUTPUT_LINE_WIDTH 2560 @@ -400,26 +404,26 @@ /************************************************************* * INTF sub blocks config *************************************************************/ -#define INTF_BLK(_name, _id, _base, _type, _ctrl_id) \ +#define INTF_BLK(_name, _id, _base, _type, _ctrl_id, _features) \ {\ .name = _name, .id = _id, \ .base = _base, .len = 0x280, \ - .features = BIT(DPU_CTL_ACTIVE_CFG), \ + .features = _features, \ .type = _type, \ .controller_id = _ctrl_id, \ .prog_fetch_lines_worst_case = 24 \ } static const struct dpu_intf_cfg sdm845_intf[] = { - INTF_BLK("intf_0", INTF_0, 0x6A000, INTF_DP, 0), - INTF_BLK("intf_1", INTF_1, 0x6A800, INTF_DSI, 0), - INTF_BLK("intf_2", INTF_2, 0x6B000, INTF_DSI, 1), - INTF_BLK("intf_3", INTF_3, 0x6B800, INTF_DP, 1), + INTF_BLK("intf_0", INTF_0, 0x6A000, INTF_DP, 0, INTF_SDM845_MASK), + INTF_BLK("intf_1", INTF_1, 0x6A800, INTF_DSI, 0, INTF_SDM845_MASK), + INTF_BLK("intf_2", INTF_2, 0x6B000, INTF_DSI, 1, INTF_SDM845_MASK), + INTF_BLK("intf_3", INTF_3, 0x6B800, INTF_DP, 1, INTF_SDM845_MASK), }; static const struct dpu_intf_cfg sc7180_intf[] = { - INTF_BLK("intf_0", INTF_0, 0x6A000, INTF_DP, 0), - INTF_BLK("intf_1", INTF_1, 0x6A800, INTF_DSI, 0), + INTF_BLK("intf_0", INTF_0, 0x6A000, INTF_DP, 0, INTF_SC7180_MASK), + INTF_BLK("intf_1", INTF_1, 0x6A800, INTF_DSI, 0, INTF_SC7180_MASK), }; /************************************************************* --- linux-azure-5.8-5.8.0.orig/drivers/gpu/drm/msm/disp/dpu1/dpu_hw_catalog.h +++ linux-azure-5.8-5.8.0/drivers/gpu/drm/msm/disp/dpu1/dpu_hw_catalog.h @@ -186,6 +186,19 @@ }; /** + * INTF sub-blocks + * @DPU_INTF_INPUT_CTRL Supports the setting of pp block from which + * pixel data arrives to this INTF + * @DPU_INTF_TE INTF block has TE configuration support + * @DPU_INTF_MAX + */ +enum { + DPU_INTF_INPUT_CTRL = 0x1, + DPU_INTF_TE, + DPU_INTF_MAX +}; + +/** * VBIF sub-blocks and features * @DPU_VBIF_QOS_OTLIM VBIF supports OT Limit * @DPU_VBIF_QOS_REMAP VBIF supports QoS priority remap --- linux-azure-5.8-5.8.0.orig/drivers/gpu/drm/msm/disp/dpu1/dpu_hw_intf.c +++ linux-azure-5.8-5.8.0/drivers/gpu/drm/msm/disp/dpu1/dpu_hw_intf.c @@ -225,14 +225,9 @@ bool enable, const enum dpu_pingpong pp) { - struct dpu_hw_blk_reg_map *c; + struct dpu_hw_blk_reg_map *c = &intf->hw; u32 mux_cfg; - if (!intf) - return; - - c = &intf->hw; - mux_cfg = DPU_REG_READ(c, INTF_MUX); mux_cfg &= ~0xf; @@ -280,7 +275,7 @@ ops->get_status = dpu_hw_intf_get_status; ops->enable_timing = dpu_hw_intf_enable_timing_engine; ops->get_line_count = dpu_hw_intf_get_line_count; - if (cap & BIT(DPU_CTL_ACTIVE_CFG)) + if (cap & BIT(DPU_INTF_INPUT_CTRL)) ops->bind_pingpong_blk = dpu_hw_intf_bind_pingpong_blk; } --- linux-azure-5.8-5.8.0.orig/drivers/gpu/drm/msm/disp/dpu1/dpu_plane.c +++ linux-azure-5.8-5.8.0/drivers/gpu/drm/msm/disp/dpu1/dpu_plane.c @@ -866,9 +866,9 @@ crtc_state = drm_atomic_get_new_crtc_state(state->state, state->crtc); - min_scale = FRAC_16_16(1, pdpu->pipe_sblk->maxdwnscale); + min_scale = FRAC_16_16(1, pdpu->pipe_sblk->maxupscale); ret = drm_atomic_helper_check_plane_state(state, crtc_state, min_scale, - pdpu->pipe_sblk->maxupscale << 16, + pdpu->pipe_sblk->maxdwnscale << 16, true, true); if (ret) { DPU_DEBUG_PLANE(pdpu, "Check plane state failed (%d)\n", ret); --- linux-azure-5.8-5.8.0.orig/drivers/gpu/drm/msm/disp/mdp5/mdp5_crtc.c +++ linux-azure-5.8-5.8.0/drivers/gpu/drm/msm/disp/mdp5/mdp5_crtc.c @@ -1117,8 +1117,6 @@ mdp5_crtc_destroy_state(crtc, crtc->state); __drm_atomic_helper_crtc_reset(crtc, &mdp5_cstate->base); - - drm_crtc_vblank_reset(crtc); } static const struct drm_crtc_funcs mdp5_crtc_funcs = { @@ -1178,7 +1176,7 @@ struct mdp5_crtc *mdp5_crtc = container_of(irq, struct mdp5_crtc, pp_done); - complete(&mdp5_crtc->pp_completion); + complete_all(&mdp5_crtc->pp_completion); } static void mdp5_crtc_wait_for_pp_done(struct drm_crtc *crtc) --- linux-azure-5.8-5.8.0.orig/drivers/gpu/drm/msm/dsi/phy/dsi_phy_20nm.c +++ linux-azure-5.8-5.8.0/drivers/gpu/drm/msm/dsi/phy/dsi_phy_20nm.c @@ -139,7 +139,7 @@ .disable = dsi_20nm_phy_disable, .init = msm_dsi_phy_init_common, }, - .io_start = { 0xfd998300, 0xfd9a0300 }, + .io_start = { 0xfd998500, 0xfd9a0500 }, .num_dsi_phy = 2, }; --- linux-azure-5.8-5.8.0.orig/drivers/gpu/drm/msm/dsi/pll/dsi_pll_10nm.c +++ linux-azure-5.8-5.8.0/drivers/gpu/drm/msm/dsi/pll/dsi_pll_10nm.c @@ -559,6 +559,7 @@ struct pll_10nm_cached_state *cached = &pll_10nm->cached_state; void __iomem *phy_base = pll_10nm->phy_cmn_mmio; u32 val; + int ret; val = pll_read(pll_10nm->mmio + REG_DSI_10nm_PHY_PLL_PLL_OUTDIV_RATE); val &= ~0x3; @@ -573,6 +574,13 @@ val |= cached->pll_mux; pll_write(phy_base + REG_DSI_10nm_PHY_CMN_CLK_CFG1, val); + ret = dsi_pll_10nm_vco_set_rate(&pll->clk_hw, pll_10nm->vco_current_rate, pll_10nm->vco_ref_clk_rate); + if (ret) { + DRM_DEV_ERROR(&pll_10nm->pdev->dev, + "restore vco rate failed. ret=%d\n", ret); + return ret; + } + DBG("DSI PLL%d", pll_10nm->id); return 0; --- linux-azure-5.8-5.8.0.orig/drivers/gpu/drm/msm/msm_atomic.c +++ linux-azure-5.8-5.8.0/drivers/gpu/drm/msm/msm_atomic.c @@ -27,6 +27,34 @@ return msm_framebuffer_prepare(new_state->fb, kms->aspace); } +/* + * Helpers to control vblanks while we flush.. basically just to ensure + * that vblank accounting is switched on, so we get valid seqn/timestamp + * on pageflip events (if requested) + */ + +static void vblank_get(struct msm_kms *kms, unsigned crtc_mask) +{ + struct drm_crtc *crtc; + + for_each_crtc_mask(kms->dev, crtc, crtc_mask) { + if (!crtc->state->active) + continue; + drm_crtc_vblank_get(crtc); + } +} + +static void vblank_put(struct msm_kms *kms, unsigned crtc_mask) +{ + struct drm_crtc *crtc; + + for_each_crtc_mask(kms->dev, crtc, crtc_mask) { + if (!crtc->state->active) + continue; + drm_crtc_vblank_put(crtc); + } +} + static void msm_atomic_async_commit(struct msm_kms *kms, int crtc_idx) { unsigned crtc_mask = BIT(crtc_idx); @@ -44,6 +72,8 @@ kms->funcs->enable_commit(kms); + vblank_get(kms, crtc_mask); + /* * Flush hardware updates: */ @@ -58,6 +88,8 @@ kms->funcs->wait_flush(kms, crtc_mask); trace_msm_atomic_wait_flush_finish(crtc_mask); + vblank_put(kms, crtc_mask); + mutex_lock(&kms->commit_lock); kms->funcs->complete_commit(kms, crtc_mask); mutex_unlock(&kms->commit_lock); @@ -221,6 +253,8 @@ */ kms->pending_crtc_mask &= ~crtc_mask; + vblank_get(kms, crtc_mask); + /* * Flush hardware updates: */ @@ -235,6 +269,8 @@ kms->funcs->wait_flush(kms, crtc_mask); trace_msm_atomic_wait_flush_finish(crtc_mask); + vblank_put(kms, crtc_mask); + mutex_lock(&kms->commit_lock); kms->funcs->complete_commit(kms, crtc_mask); mutex_unlock(&kms->commit_lock); --- linux-azure-5.8-5.8.0.orig/drivers/gpu/drm/msm/msm_drv.c +++ linux-azure-5.8-5.8.0/drivers/gpu/drm/msm/msm_drv.c @@ -433,14 +433,14 @@ drm_mode_config_init(ddev); - /* Bind all our sub-components: */ - ret = component_bind_all(dev, ddev); + ret = msm_init_vram(ddev); if (ret) goto err_destroy_mdss; - ret = msm_init_vram(ddev); + /* Bind all our sub-components: */ + ret = component_bind_all(dev, ddev); if (ret) - goto err_msm_uninit; + goto err_destroy_mdss; if (!dev->dma_parms) { dev->dma_parms = devm_kzalloc(dev, sizeof(*dev->dma_parms), @@ -1328,6 +1328,13 @@ return 0; } +static void msm_pdev_shutdown(struct platform_device *pdev) +{ + struct drm_device *drm = platform_get_drvdata(pdev); + + drm_atomic_helper_shutdown(drm); +} + static const struct of_device_id dt_match[] = { { .compatible = "qcom,mdp4", .data = (void *)KMS_MDP4 }, { .compatible = "qcom,mdss", .data = (void *)KMS_MDP5 }, @@ -1340,6 +1347,7 @@ static struct platform_driver msm_platform_driver = { .probe = msm_pdev_probe, .remove = msm_pdev_remove, + .shutdown = msm_pdev_shutdown, .driver = { .name = "msm", .of_match_table = dt_match, --- linux-azure-5.8-5.8.0.orig/drivers/gpu/drm/msm/msm_gem.c +++ linux-azure-5.8-5.8.0/drivers/gpu/drm/msm/msm_gem.c @@ -994,10 +994,8 @@ static int msm_gem_new_impl(struct drm_device *dev, uint32_t size, uint32_t flags, - struct drm_gem_object **obj, - bool struct_mutex_locked) + struct drm_gem_object **obj) { - struct msm_drm_private *priv = dev->dev_private; struct msm_gem_object *msm_obj; switch (flags & MSM_BO_CACHE_MASK) { @@ -1023,15 +1021,6 @@ INIT_LIST_HEAD(&msm_obj->submit_entry); INIT_LIST_HEAD(&msm_obj->vmas); - if (struct_mutex_locked) { - WARN_ON(!mutex_is_locked(&dev->struct_mutex)); - list_add_tail(&msm_obj->mm_list, &priv->inactive_list); - } else { - mutex_lock(&dev->struct_mutex); - list_add_tail(&msm_obj->mm_list, &priv->inactive_list); - mutex_unlock(&dev->struct_mutex); - } - *obj = &msm_obj->base; return 0; @@ -1041,6 +1030,7 @@ uint32_t size, uint32_t flags, bool struct_mutex_locked) { struct msm_drm_private *priv = dev->dev_private; + struct msm_gem_object *msm_obj; struct drm_gem_object *obj = NULL; bool use_vram = false; int ret; @@ -1061,14 +1051,15 @@ if (size == 0) return ERR_PTR(-EINVAL); - ret = msm_gem_new_impl(dev, size, flags, &obj, struct_mutex_locked); + ret = msm_gem_new_impl(dev, size, flags, &obj); if (ret) goto fail; + msm_obj = to_msm_bo(obj); + if (use_vram) { struct msm_gem_vma *vma; struct page **pages; - struct msm_gem_object *msm_obj = to_msm_bo(obj); mutex_lock(&msm_obj->lock); @@ -1103,6 +1094,15 @@ mapping_set_gfp_mask(obj->filp->f_mapping, GFP_HIGHUSER); } + if (struct_mutex_locked) { + WARN_ON(!mutex_is_locked(&dev->struct_mutex)); + list_add_tail(&msm_obj->mm_list, &priv->inactive_list); + } else { + mutex_lock(&dev->struct_mutex); + list_add_tail(&msm_obj->mm_list, &priv->inactive_list); + mutex_unlock(&dev->struct_mutex); + } + return obj; fail: @@ -1125,6 +1125,7 @@ struct drm_gem_object *msm_gem_import(struct drm_device *dev, struct dma_buf *dmabuf, struct sg_table *sgt) { + struct msm_drm_private *priv = dev->dev_private; struct msm_gem_object *msm_obj; struct drm_gem_object *obj; uint32_t size; @@ -1138,7 +1139,7 @@ size = PAGE_ALIGN(dmabuf->size); - ret = msm_gem_new_impl(dev, size, MSM_BO_WC, &obj, false); + ret = msm_gem_new_impl(dev, size, MSM_BO_WC, &obj); if (ret) goto fail; @@ -1163,6 +1164,11 @@ } mutex_unlock(&msm_obj->lock); + + mutex_lock(&dev->struct_mutex); + list_add_tail(&msm_obj->mm_list, &priv->inactive_list); + mutex_unlock(&dev->struct_mutex); + return obj; fail: --- linux-azure-5.8-5.8.0.orig/drivers/gpu/drm/msm/msm_ringbuffer.c +++ linux-azure-5.8-5.8.0/drivers/gpu/drm/msm/msm_ringbuffer.c @@ -27,7 +27,8 @@ ring->id = id; ring->start = msm_gem_kernel_new(gpu->dev, MSM_GPU_RINGBUFFER_SZ, - MSM_BO_WC, gpu->aspace, &ring->bo, &ring->iova); + MSM_BO_WC | MSM_BO_GPU_READONLY, gpu->aspace, &ring->bo, + &ring->iova); if (IS_ERR(ring->start)) { ret = PTR_ERR(ring->start); --- linux-azure-5.8-5.8.0.orig/drivers/gpu/drm/mxsfb/mxsfb_drv.c +++ linux-azure-5.8-5.8.0/drivers/gpu/drm/mxsfb/mxsfb_drv.c @@ -26,6 +26,7 @@ #include #include #include +#include #include #include #include @@ -87,8 +88,26 @@ clk_disable_unprepare(mxsfb->clk_axi); } +static struct drm_framebuffer * +mxsfb_fb_create(struct drm_device *dev, struct drm_file *file_priv, + const struct drm_mode_fb_cmd2 *mode_cmd) +{ + const struct drm_format_info *info; + + info = drm_get_format_info(dev, mode_cmd); + if (!info) + return ERR_PTR(-EINVAL); + + if (mode_cmd->width * info->cpp[0] != mode_cmd->pitches[0]) { + dev_dbg(dev->dev, "Invalid pitch: fb width must match pitch\n"); + return ERR_PTR(-EINVAL); + } + + return drm_gem_fb_create(dev, file_priv, mode_cmd); +} + static const struct drm_mode_config_funcs mxsfb_mode_config_funcs = { - .fb_create = drm_gem_fb_create, + .fb_create = mxsfb_fb_create, .atomic_check = drm_atomic_helper_check, .atomic_commit = drm_atomic_helper_commit, }; --- linux-azure-5.8-5.8.0.orig/drivers/gpu/drm/nouveau/dispnv50/disp.c +++ linux-azure-5.8-5.8.0/drivers/gpu/drm/nouveau/dispnv50/disp.c @@ -134,7 +134,7 @@ int nv50_dmac_create(struct nvif_device *device, struct nvif_object *disp, - const s32 *oclass, u8 head, void *data, u32 size, u64 syncbuf, + const s32 *oclass, u8 head, void *data, u32 size, s64 syncbuf, struct nv50_dmac *dmac) { struct nouveau_cli *cli = (void *)device->object.client; @@ -169,7 +169,7 @@ if (ret) return ret; - if (!syncbuf) + if (syncbuf < 0) return 0; ret = nvif_object_init(&dmac->base.user, 0xf0000000, NV_DMA_IN_MEMORY, @@ -2160,8 +2160,10 @@ int ret, i; ret = pm_runtime_get_sync(dev->dev); - if (ret < 0 && ret != -EACCES) + if (ret < 0 && ret != -EACCES) { + pm_runtime_put_autosuspend(dev->dev); return ret; + } ret = drm_atomic_helper_setup_commit(state, nonblock); if (ret) --- linux-azure-5.8-5.8.0.orig/drivers/gpu/drm/nouveau/dispnv50/disp.h +++ linux-azure-5.8-5.8.0/drivers/gpu/drm/nouveau/dispnv50/disp.h @@ -73,7 +73,7 @@ int nv50_dmac_create(struct nvif_device *device, struct nvif_object *disp, const s32 *oclass, u8 head, void *data, u32 size, - u64 syncbuf, struct nv50_dmac *dmac); + s64 syncbuf, struct nv50_dmac *dmac); void nv50_dmac_destroy(struct nv50_dmac *); u32 *evo_wait(struct nv50_dmac *, int nr); --- linux-azure-5.8-5.8.0.orig/drivers/gpu/drm/nouveau/dispnv50/head.c +++ linux-azure-5.8-5.8.0/drivers/gpu/drm/nouveau/dispnv50/head.c @@ -84,18 +84,20 @@ { u32 mode = 0x00; - if (asyc->dither.mode == DITHERING_MODE_AUTO) { - if (asyh->base.depth > asyh->or.bpc * 3) - mode = DITHERING_MODE_DYNAMIC2X2; - } else { - mode = asyc->dither.mode; - } + if (asyc->dither.mode) { + if (asyc->dither.mode == DITHERING_MODE_AUTO) { + if (asyh->base.depth > asyh->or.bpc * 3) + mode = DITHERING_MODE_DYNAMIC2X2; + } else { + mode = asyc->dither.mode; + } - if (asyc->dither.depth == DITHERING_DEPTH_AUTO) { - if (asyh->or.bpc >= 8) - mode |= DITHERING_DEPTH_8BPC; - } else { - mode |= asyc->dither.depth; + if (asyc->dither.depth == DITHERING_DEPTH_AUTO) { + if (asyh->or.bpc >= 8) + mode |= DITHERING_DEPTH_8BPC; + } else { + mode |= asyc->dither.depth; + } } asyh->dither.enable = mode; --- linux-azure-5.8-5.8.0.orig/drivers/gpu/drm/nouveau/dispnv50/wimmc37b.c +++ linux-azure-5.8-5.8.0/drivers/gpu/drm/nouveau/dispnv50/wimmc37b.c @@ -68,7 +68,7 @@ int ret; ret = nv50_dmac_create(&drm->client.device, &disp->disp->object, - &oclass, 0, &args, sizeof(args), 0, + &oclass, 0, &args, sizeof(args), -1, &wndw->wimm); if (ret) { NV_ERROR(drm, "wimm%04x allocation failed: %d\n", oclass, ret); --- linux-azure-5.8-5.8.0.orig/drivers/gpu/drm/nouveau/dispnv50/wndw.c +++ linux-azure-5.8-5.8.0/drivers/gpu/drm/nouveau/dispnv50/wndw.c @@ -670,6 +670,11 @@ nvif_notify_get(&wndw->notify); } +static const u64 nv50_cursor_format_modifiers[] = { + DRM_FORMAT_MOD_LINEAR, + DRM_FORMAT_MOD_INVALID, +}; + int nv50_wndw_new_(const struct nv50_wndw_func *func, struct drm_device *dev, enum drm_plane_type type, const char *name, int index, @@ -681,6 +686,7 @@ struct nvif_mmu *mmu = &drm->client.mmu; struct nv50_disp *disp = nv50_disp(dev); struct nv50_wndw *wndw; + const u64 *format_modifiers; int nformat; int ret; @@ -696,10 +702,13 @@ for (nformat = 0; format[nformat]; nformat++); - ret = drm_universal_plane_init(dev, &wndw->plane, heads, &nv50_wndw, - format, nformat, - nouveau_display(dev)->format_modifiers, - type, "%s-%d", name, index); + if (type == DRM_PLANE_TYPE_CURSOR) + format_modifiers = nv50_cursor_format_modifiers; + else + format_modifiers = nouveau_display(dev)->format_modifiers; + + ret = drm_universal_plane_init(dev, &wndw->plane, heads, &nv50_wndw, format, nformat, + format_modifiers, type, "%s-%d", name, index); if (ret) { kfree(*pwndw); *pwndw = NULL; --- linux-azure-5.8-5.8.0.orig/drivers/gpu/drm/nouveau/include/nvkm/subdev/bios/conn.h +++ linux-azure-5.8-5.8.0/drivers/gpu/drm/nouveau/include/nvkm/subdev/bios/conn.h @@ -14,6 +14,7 @@ DCB_CONNECTOR_LVDS_SPWG = 0x41, DCB_CONNECTOR_DP = 0x46, DCB_CONNECTOR_eDP = 0x47, + DCB_CONNECTOR_mDP = 0x48, DCB_CONNECTOR_HDMI_0 = 0x60, DCB_CONNECTOR_HDMI_1 = 0x61, DCB_CONNECTOR_HDMI_C = 0x63, --- linux-azure-5.8-5.8.0.orig/drivers/gpu/drm/nouveau/nouveau_chan.c +++ linux-azure-5.8-5.8.0/drivers/gpu/drm/nouveau/nouveau_chan.c @@ -499,6 +499,7 @@ if (ret) { NV_PRINTK(err, cli, "channel failed to initialise, %d\n", ret); nouveau_channel_del(pchan); + goto done; } ret = nouveau_svmm_join((*pchan)->vmm->svmm, (*pchan)->inst); --- linux-azure-5.8-5.8.0.orig/drivers/gpu/drm/nouveau/nouveau_connector.c +++ linux-azure-5.8-5.8.0/drivers/gpu/drm/nouveau/nouveau_connector.c @@ -572,8 +572,10 @@ pm_runtime_get_noresume(dev->dev); } else { ret = pm_runtime_get_sync(dev->dev); - if (ret < 0 && ret != -EACCES) + if (ret < 0 && ret != -EACCES) { + pm_runtime_put_autosuspend(dev->dev); return conn_status; + } } nv_encoder = nouveau_connector_ddc_detect(connector); @@ -1034,29 +1036,6 @@ return 112000 * duallink_scale; } -enum drm_mode_status -nouveau_conn_mode_clock_valid(const struct drm_display_mode *mode, - const unsigned min_clock, - const unsigned max_clock, - unsigned int *clock_out) -{ - unsigned int clock = mode->clock; - - if ((mode->flags & DRM_MODE_FLAG_3D_MASK) == - DRM_MODE_FLAG_3D_FRAME_PACKING) - clock *= 2; - - if (clock < min_clock) - return MODE_CLOCK_LOW; - if (clock > max_clock) - return MODE_CLOCK_HIGH; - - if (clock_out) - *clock_out = clock; - - return MODE_OK; -} - static enum drm_mode_status nouveau_connector_mode_valid(struct drm_connector *connector, struct drm_display_mode *mode) @@ -1064,7 +1043,7 @@ struct nouveau_connector *nv_connector = nouveau_connector(connector); struct nouveau_encoder *nv_encoder = nv_connector->detected_encoder; struct drm_encoder *encoder = to_drm_encoder(nv_encoder); - unsigned min_clock = 25000, max_clock = min_clock; + unsigned int min_clock = 25000, max_clock = min_clock, clock = mode->clock; switch (nv_encoder->dcb->type) { case DCB_OUTPUT_LVDS: @@ -1093,8 +1072,15 @@ return MODE_BAD; } - return nouveau_conn_mode_clock_valid(mode, min_clock, max_clock, - NULL); + if ((mode->flags & DRM_MODE_FLAG_3D_MASK) == DRM_MODE_FLAG_3D_FRAME_PACKING) + clock *= 2; + + if (clock < min_clock) + return MODE_CLOCK_LOW; + if (clock > max_clock) + return MODE_CLOCK_HIGH; + + return MODE_OK; } static struct drm_encoder * @@ -1253,6 +1239,7 @@ case DCB_CONNECTOR_DMS59_DP0: case DCB_CONNECTOR_DMS59_DP1: case DCB_CONNECTOR_DP : + case DCB_CONNECTOR_mDP : case DCB_CONNECTOR_USB_C : return DRM_MODE_CONNECTOR_DisplayPort; case DCB_CONNECTOR_eDP : return DRM_MODE_CONNECTOR_eDP; case DCB_CONNECTOR_HDMI_0 : --- linux-azure-5.8-5.8.0.orig/drivers/gpu/drm/nouveau/nouveau_debugfs.c +++ linux-azure-5.8-5.8.0/drivers/gpu/drm/nouveau/nouveau_debugfs.c @@ -54,8 +54,10 @@ int ret; ret = pm_runtime_get_sync(drm->dev->dev); - if (ret < 0 && ret != -EACCES) + if (ret < 0 && ret != -EACCES) { + pm_runtime_put_autosuspend(drm->dev->dev); return ret; + } seq_printf(m, "0x%08x\n", nvif_rd32(&drm->client.device.object, 0x101000)); --- linux-azure-5.8-5.8.0.orig/drivers/gpu/drm/nouveau/nouveau_dp.c +++ linux-azure-5.8-5.8.0/drivers/gpu/drm/nouveau/nouveau_dp.c @@ -114,18 +114,25 @@ unsigned *out_clock) { const unsigned min_clock = 25000; - unsigned max_clock, clock; - enum drm_mode_status ret; + unsigned int max_rate, mode_rate, clock = mode->clock; + const u8 bpp = connector->display_info.bpc * 3; if (mode->flags & DRM_MODE_FLAG_INTERLACE && !outp->caps.dp_interlace) return MODE_NO_INTERLACE; - max_clock = outp->dp.link_nr * outp->dp.link_bw; - clock = mode->clock * (connector->display_info.bpc * 3) / 10; + if ((mode->flags & DRM_MODE_FLAG_3D_MASK) == DRM_MODE_FLAG_3D_FRAME_PACKING) + clock *= 2; + + max_rate = outp->dp.link_nr * outp->dp.link_bw; + mode_rate = DIV_ROUND_UP(clock * bpp, 8); + if (mode_rate > max_rate) + return MODE_CLOCK_HIGH; + + if (clock < min_clock) + return MODE_CLOCK_LOW; - ret = nouveau_conn_mode_clock_valid(mode, min_clock, max_clock, - &clock); if (out_clock) *out_clock = clock; - return ret; + + return MODE_OK; } --- linux-azure-5.8-5.8.0.orig/drivers/gpu/drm/nouveau/nouveau_drm.c +++ linux-azure-5.8-5.8.0/drivers/gpu/drm/nouveau/nouveau_drm.c @@ -1026,8 +1026,10 @@ /* need to bring up power immediately if opening device */ ret = pm_runtime_get_sync(dev->dev); - if (ret < 0 && ret != -EACCES) + if (ret < 0 && ret != -EACCES) { + pm_runtime_put_autosuspend(dev->dev); return ret; + } get_task_comm(tmpname, current); snprintf(name, sizeof(name), "%s[%d]", tmpname, pid_nr(fpriv->pid)); @@ -1109,8 +1111,10 @@ long ret; ret = pm_runtime_get_sync(dev->dev); - if (ret < 0 && ret != -EACCES) + if (ret < 0 && ret != -EACCES) { + pm_runtime_put_autosuspend(dev->dev); return ret; + } switch (_IOC_NR(cmd) - DRM_COMMAND_BASE) { case DRM_NOUVEAU_NVIF: --- linux-azure-5.8-5.8.0.orig/drivers/gpu/drm/nouveau/nouveau_fbcon.c +++ linux-azure-5.8-5.8.0/drivers/gpu/drm/nouveau/nouveau_fbcon.c @@ -189,8 +189,10 @@ struct nouveau_fbdev *fbcon = info->par; struct nouveau_drm *drm = nouveau_drm(fbcon->helper.dev); int ret = pm_runtime_get_sync(drm->dev->dev); - if (ret < 0 && ret != -EACCES) + if (ret < 0 && ret != -EACCES) { + pm_runtime_put(drm->dev->dev); return ret; + } return 0; } --- linux-azure-5.8-5.8.0.orig/drivers/gpu/drm/nouveau/nouveau_gem.c +++ linux-azure-5.8-5.8.0/drivers/gpu/drm/nouveau/nouveau_gem.c @@ -45,8 +45,10 @@ int ret; ret = pm_runtime_get_sync(dev); - if (WARN_ON(ret < 0 && ret != -EACCES)) + if (WARN_ON(ret < 0 && ret != -EACCES)) { + pm_runtime_put_autosuspend(dev); return; + } if (gem->import_attach) drm_prime_gem_destroy(gem, nvbo->bo.sg); @@ -195,7 +197,8 @@ * to the caller, instead of a normal nouveau_bo ttm reference. */ ret = drm_gem_object_init(drm->dev, &nvbo->bo.base, size); if (ret) { - nouveau_bo_ref(NULL, &nvbo); + drm_gem_object_release(&nvbo->bo.base); + kfree(nvbo); return ret; } @@ -566,8 +569,10 @@ NV_PRINTK(err, cli, "validating bo list\n"); validate_fini(op, chan, NULL, NULL); return ret; + } else if (ret > 0) { + *apply_relocs = true; } - *apply_relocs = ret; + return 0; } @@ -670,7 +675,6 @@ nouveau_bo_wr32(nvbo, r->reloc_bo_offset >> 2, data); } - u_free(reloc); return ret; } @@ -881,9 +885,10 @@ break; } } - u_free(reloc); } out_prevalid: + if (!IS_ERR(reloc)) + u_free(reloc); u_free(bo); u_free(push); --- linux-azure-5.8-5.8.0.orig/drivers/gpu/drm/nouveau/nouveau_mem.c +++ linux-azure-5.8-5.8.0/drivers/gpu/drm/nouveau/nouveau_mem.c @@ -176,6 +176,8 @@ nouveau_mem_del(struct ttm_mem_reg *reg) { struct nouveau_mem *mem = nouveau_mem(reg); + if (!mem) + return; nouveau_mem_fini(mem); kfree(reg->mm_node); reg->mm_node = NULL; --- linux-azure-5.8-5.8.0.orig/drivers/gpu/drm/nouveau/nouveau_sgdma.c +++ linux-azure-5.8-5.8.0/drivers/gpu/drm/nouveau/nouveau_sgdma.c @@ -96,12 +96,9 @@ else nvbe->ttm.ttm.func = &nv50_sgdma_backend; - if (ttm_dma_tt_init(&nvbe->ttm, bo, page_flags)) - /* - * A failing ttm_dma_tt_init() will call ttm_tt_destroy() - * and thus our nouveau_sgdma_destroy() hook, so we don't need - * to free nvbe here. - */ + if (ttm_dma_tt_init(&nvbe->ttm, bo, page_flags)) { + kfree(nvbe); return NULL; + } return &nvbe->ttm.ttm; } --- linux-azure-5.8-5.8.0.orig/drivers/gpu/drm/nouveau/nouveau_svm.c +++ linux-azure-5.8-5.8.0/drivers/gpu/drm/nouveau/nouveau_svm.c @@ -116,11 +116,11 @@ struct nouveau_cli *cli = nouveau_cli(file_priv); struct drm_nouveau_svm_bind *args = data; unsigned target, cmd, priority; - unsigned long addr, end, size; + unsigned long addr, end; struct mm_struct *mm; args->va_start &= PAGE_MASK; - args->va_end &= PAGE_MASK; + args->va_end = ALIGN(args->va_end, PAGE_SIZE); /* Sanity check arguments */ if (args->reserved0 || args->reserved1) @@ -129,8 +129,6 @@ return -EINVAL; if (args->va_start >= args->va_end) return -EINVAL; - if (!args->npages) - return -EINVAL; cmd = args->header >> NOUVEAU_SVM_BIND_COMMAND_SHIFT; cmd &= NOUVEAU_SVM_BIND_COMMAND_MASK; @@ -162,12 +160,6 @@ if (args->stride) return -EINVAL; - size = ((unsigned long)args->npages) << PAGE_SHIFT; - if ((args->va_start + size) <= args->va_start) - return -EINVAL; - if ((args->va_start + size) > args->va_end) - return -EINVAL; - /* * Ok we are ask to do something sane, for now we only support migrate * commands but we will add things like memory policy (what to do on @@ -182,7 +174,7 @@ return -EINVAL; } - for (addr = args->va_start, end = args->va_start + size; addr < end;) { + for (addr = args->va_start, end = args->va_end; addr < end;) { struct vm_area_struct *vma; unsigned long next; @@ -326,6 +318,10 @@ struct drm_nouveau_svm_init *args = data; int ret; + /* We need to fail if svm is disabled */ + if (!cli->drm->svm) + return -ENOSYS; + /* Allocate tracking for SVM-enabled VMM. */ if (!(svmm = kzalloc(sizeof(*svmm), GFP_KERNEL))) return -ENOMEM; --- linux-azure-5.8-5.8.0.orig/drivers/gpu/drm/nouveau/nvkm/engine/device/base.c +++ linux-azure-5.8-5.8.0/drivers/gpu/drm/nouveau/nvkm/engine/device/base.c @@ -2924,17 +2924,34 @@ } } +/* returns true if the GPU is in the CPU native byte order */ static inline bool nvkm_device_endianness(struct nvkm_device *device) { - u32 boot1 = nvkm_rd32(device, 0x000004) & 0x01000001; #ifdef __BIG_ENDIAN - if (!boot1) - return false; + const bool big_endian = true; #else - if (boot1) - return false; + const bool big_endian = false; #endif + + /* Read NV_PMC_BOOT_1, and assume non-functional endian switch if it + * doesn't contain the expected values. + */ + u32 pmc_boot_1 = nvkm_rd32(device, 0x000004); + if (pmc_boot_1 && pmc_boot_1 != 0x01000001) + return !big_endian; /* Assume GPU is LE in this case. */ + + /* 0 means LE and 0x01000001 means BE GPU. Condition is true when + * GPU/CPU endianness don't match. + */ + if (big_endian == !pmc_boot_1) { + nvkm_wr32(device, 0x000004, 0x01000001); + nvkm_rd32(device, 0x000000); + if (nvkm_rd32(device, 0x000004) != (big_endian ? 0x01000001 : 0x00000000)) + return !big_endian; /* Assume GPU is LE on any unexpected read-back. */ + } + + /* CPU/GPU endianness should (hopefully) match. */ return true; } @@ -2987,14 +3004,10 @@ if (detect) { /* switch mmio to cpu's native endianness */ if (!nvkm_device_endianness(device)) { - nvkm_wr32(device, 0x000004, 0x01000001); - nvkm_rd32(device, 0x000000); - if (!nvkm_device_endianness(device)) { - nvdev_error(device, - "GPU not supported on big-endian\n"); - ret = -ENOSYS; - goto done; - } + nvdev_error(device, + "Couldn't switch GPU to CPUs endianess\n"); + ret = -ENOSYS; + goto done; } boot0 = nvkm_rd32(device, 0x000000); @@ -3149,6 +3162,7 @@ case 0x168: device->chip = &nv168_chipset; break; default: nvdev_error(device, "unknown chipset (%08x)\n", boot0); + ret = -ENODEV; goto done; } --- linux-azure-5.8-5.8.0.orig/drivers/gpu/drm/nouveau/nvkm/subdev/bios/shadow.c +++ linux-azure-5.8-5.8.0/drivers/gpu/drm/nouveau/nvkm/subdev/bios/shadow.c @@ -75,7 +75,7 @@ nvkm_debug(subdev, "%08x: type %02x, %d bytes\n", image.base, image.type, image.size); - if (!shadow_fetch(bios, mthd, image.size)) { + if (!shadow_fetch(bios, mthd, image.base + image.size)) { nvkm_debug(subdev, "%08x: fetch failed\n", image.base); return 0; } --- linux-azure-5.8-5.8.0.orig/drivers/gpu/drm/nouveau/nvkm/subdev/i2c/auxgm200.c +++ linux-azure-5.8-5.8.0/drivers/gpu/drm/nouveau/nvkm/subdev/i2c/auxgm200.c @@ -33,7 +33,7 @@ gm200_i2c_aux_fini(struct gm200_i2c_aux *aux) { struct nvkm_device *device = aux->base.pad->i2c->subdev.device; - nvkm_mask(device, 0x00d954 + (aux->ch * 0x50), 0x00310000, 0x00000000); + nvkm_mask(device, 0x00d954 + (aux->ch * 0x50), 0x00710000, 0x00000000); } static int @@ -54,10 +54,10 @@ AUX_ERR(&aux->base, "begin idle timeout %08x", ctrl); return -EBUSY; } - } while (ctrl & 0x03010000); + } while (ctrl & 0x07010000); /* set some magic, and wait up to 1ms for it to appear */ - nvkm_mask(device, 0x00d954 + (aux->ch * 0x50), 0x00300000, ureq); + nvkm_mask(device, 0x00d954 + (aux->ch * 0x50), 0x00700000, ureq); timeout = 1000; do { ctrl = nvkm_rd32(device, 0x00d954 + (aux->ch * 0x50)); @@ -67,7 +67,7 @@ gm200_i2c_aux_fini(aux); return -EBUSY; } - } while ((ctrl & 0x03000000) != urep); + } while ((ctrl & 0x07000000) != urep); return 0; } --- linux-azure-5.8-5.8.0.orig/drivers/gpu/drm/nouveau/nvkm/subdev/ibus/gf100.c +++ linux-azure-5.8-5.8.0/drivers/gpu/drm/nouveau/nvkm/subdev/ibus/gf100.c @@ -22,6 +22,7 @@ * Authors: Ben Skeggs */ #include "priv.h" +#include static void gf100_ibus_intr_hub(struct nvkm_subdev *ibus, int i) @@ -31,7 +32,6 @@ u32 data = nvkm_rd32(device, 0x122124 + (i * 0x0400)); u32 stat = nvkm_rd32(device, 0x122128 + (i * 0x0400)); nvkm_debug(ibus, "HUB%d: %06x %08x (%08x)\n", i, addr, data, stat); - nvkm_mask(device, 0x122128 + (i * 0x0400), 0x00000200, 0x00000000); } static void @@ -42,7 +42,6 @@ u32 data = nvkm_rd32(device, 0x124124 + (i * 0x0400)); u32 stat = nvkm_rd32(device, 0x124128 + (i * 0x0400)); nvkm_debug(ibus, "ROP%d: %06x %08x (%08x)\n", i, addr, data, stat); - nvkm_mask(device, 0x124128 + (i * 0x0400), 0x00000200, 0x00000000); } static void @@ -53,7 +52,6 @@ u32 data = nvkm_rd32(device, 0x128124 + (i * 0x0400)); u32 stat = nvkm_rd32(device, 0x128128 + (i * 0x0400)); nvkm_debug(ibus, "GPC%d: %06x %08x (%08x)\n", i, addr, data, stat); - nvkm_mask(device, 0x128128 + (i * 0x0400), 0x00000200, 0x00000000); } void @@ -90,6 +88,12 @@ intr1 &= ~stat; } } + + nvkm_mask(device, 0x121c4c, 0x0000003f, 0x00000002); + nvkm_msec(device, 2000, + if (!(nvkm_rd32(device, 0x121c4c) & 0x0000003f)) + break; + ); } static int --- linux-azure-5.8-5.8.0.orig/drivers/gpu/drm/nouveau/nvkm/subdev/ibus/gk104.c +++ linux-azure-5.8-5.8.0/drivers/gpu/drm/nouveau/nvkm/subdev/ibus/gk104.c @@ -22,6 +22,7 @@ * Authors: Ben Skeggs */ #include "priv.h" +#include static void gk104_ibus_intr_hub(struct nvkm_subdev *ibus, int i) @@ -31,7 +32,6 @@ u32 data = nvkm_rd32(device, 0x122124 + (i * 0x0800)); u32 stat = nvkm_rd32(device, 0x122128 + (i * 0x0800)); nvkm_debug(ibus, "HUB%d: %06x %08x (%08x)\n", i, addr, data, stat); - nvkm_mask(device, 0x122128 + (i * 0x0800), 0x00000200, 0x00000000); } static void @@ -42,7 +42,6 @@ u32 data = nvkm_rd32(device, 0x124124 + (i * 0x0800)); u32 stat = nvkm_rd32(device, 0x124128 + (i * 0x0800)); nvkm_debug(ibus, "ROP%d: %06x %08x (%08x)\n", i, addr, data, stat); - nvkm_mask(device, 0x124128 + (i * 0x0800), 0x00000200, 0x00000000); } static void @@ -53,7 +52,6 @@ u32 data = nvkm_rd32(device, 0x128124 + (i * 0x0800)); u32 stat = nvkm_rd32(device, 0x128128 + (i * 0x0800)); nvkm_debug(ibus, "GPC%d: %06x %08x (%08x)\n", i, addr, data, stat); - nvkm_mask(device, 0x128128 + (i * 0x0800), 0x00000200, 0x00000000); } void @@ -90,6 +88,12 @@ intr1 &= ~stat; } } + + nvkm_mask(device, 0x12004c, 0x0000003f, 0x00000002); + nvkm_msec(device, 2000, + if (!(nvkm_rd32(device, 0x12004c) & 0x0000003f)) + break; + ); } static int --- linux-azure-5.8-5.8.0.orig/drivers/gpu/drm/nouveau/nvkm/subdev/mmu/base.c +++ linux-azure-5.8-5.8.0/drivers/gpu/drm/nouveau/nvkm/subdev/mmu/base.c @@ -316,9 +316,9 @@ { struct nvkm_device *device = mmu->subdev.device; struct nvkm_mm *mm = &device->fb->ram->vram; - const u32 sizeN = nvkm_mm_heap_size(mm, NVKM_RAM_MM_NORMAL); - const u32 sizeU = nvkm_mm_heap_size(mm, NVKM_RAM_MM_NOMAP); - const u32 sizeM = nvkm_mm_heap_size(mm, NVKM_RAM_MM_MIXED); + const u64 sizeN = nvkm_mm_heap_size(mm, NVKM_RAM_MM_NORMAL); + const u64 sizeU = nvkm_mm_heap_size(mm, NVKM_RAM_MM_NOMAP); + const u64 sizeM = nvkm_mm_heap_size(mm, NVKM_RAM_MM_MIXED); u8 type = NVKM_MEM_KIND * !!mmu->func->kind; u8 heap = NVKM_MEM_VRAM; int heapM, heapN, heapU; --- linux-azure-5.8-5.8.0.orig/drivers/gpu/drm/omapdrm/dss/dispc.c +++ linux-azure-5.8-5.8.0/drivers/gpu/drm/omapdrm/dss/dispc.c @@ -4915,6 +4915,7 @@ static const struct dev_pm_ops dispc_pm_ops = { .runtime_suspend = dispc_runtime_suspend, .runtime_resume = dispc_runtime_resume, + SET_LATE_SYSTEM_SLEEP_PM_OPS(pm_runtime_force_suspend, pm_runtime_force_resume) }; struct platform_driver omap_dispchw_driver = { --- linux-azure-5.8-5.8.0.orig/drivers/gpu/drm/omapdrm/dss/dsi.c +++ linux-azure-5.8-5.8.0/drivers/gpu/drm/omapdrm/dss/dsi.c @@ -5467,6 +5467,7 @@ static const struct dev_pm_ops dsi_pm_ops = { .runtime_suspend = dsi_runtime_suspend, .runtime_resume = dsi_runtime_resume, + SET_LATE_SYSTEM_SLEEP_PM_OPS(pm_runtime_force_suspend, pm_runtime_force_resume) }; struct platform_driver omap_dsihw_driver = { --- linux-azure-5.8-5.8.0.orig/drivers/gpu/drm/omapdrm/dss/dss.c +++ linux-azure-5.8-5.8.0/drivers/gpu/drm/omapdrm/dss/dss.c @@ -1614,6 +1614,7 @@ static const struct dev_pm_ops dss_pm_ops = { .runtime_suspend = dss_runtime_suspend, .runtime_resume = dss_runtime_resume, + SET_LATE_SYSTEM_SLEEP_PM_OPS(pm_runtime_force_suspend, pm_runtime_force_resume) }; struct platform_driver omap_dsshw_driver = { --- linux-azure-5.8-5.8.0.orig/drivers/gpu/drm/omapdrm/dss/sdi.c +++ linux-azure-5.8-5.8.0/drivers/gpu/drm/omapdrm/dss/sdi.c @@ -194,8 +194,7 @@ sdi->pixelclock = adjusted_mode->clock * 1000; } -static void sdi_bridge_enable(struct drm_bridge *bridge, - struct drm_bridge_state *bridge_state) +static void sdi_bridge_enable(struct drm_bridge *bridge) { struct sdi_device *sdi = drm_bridge_to_sdi(bridge); struct dispc_clock_info dispc_cinfo; @@ -258,8 +257,7 @@ regulator_disable(sdi->vdds_sdi_reg); } -static void sdi_bridge_disable(struct drm_bridge *bridge, - struct drm_bridge_state *bridge_state) +static void sdi_bridge_disable(struct drm_bridge *bridge) { struct sdi_device *sdi = drm_bridge_to_sdi(bridge); @@ -277,8 +275,8 @@ .mode_valid = sdi_bridge_mode_valid, .mode_fixup = sdi_bridge_mode_fixup, .mode_set = sdi_bridge_mode_set, - .atomic_enable = sdi_bridge_enable, - .atomic_disable = sdi_bridge_disable, + .enable = sdi_bridge_enable, + .disable = sdi_bridge_disable, }; static void sdi_bridge_init(struct sdi_device *sdi) --- linux-azure-5.8-5.8.0.orig/drivers/gpu/drm/omapdrm/dss/venc.c +++ linux-azure-5.8-5.8.0/drivers/gpu/drm/omapdrm/dss/venc.c @@ -902,6 +902,7 @@ static const struct dev_pm_ops venc_pm_ops = { .runtime_suspend = venc_runtime_suspend, .runtime_resume = venc_runtime_resume, + SET_LATE_SYSTEM_SLEEP_PM_OPS(pm_runtime_force_suspend, pm_runtime_force_resume) }; static const struct of_device_id venc_of_match[] = { --- linux-azure-5.8-5.8.0.orig/drivers/gpu/drm/omapdrm/omap_crtc.c +++ linux-azure-5.8-5.8.0/drivers/gpu/drm/omapdrm/omap_crtc.c @@ -451,11 +451,12 @@ if (omap_state->manually_updated) return; - spin_lock_irq(&crtc->dev->event_lock); drm_crtc_vblank_on(crtc); + ret = drm_crtc_vblank_get(crtc); WARN_ON(ret != 0); + spin_lock_irq(&crtc->dev->event_lock); omap_crtc_arm_event(crtc); spin_unlock_irq(&crtc->dev->event_lock); } @@ -697,14 +698,16 @@ static void omap_crtc_reset(struct drm_crtc *crtc) { + struct omap_crtc_state *state; + if (crtc->state) __drm_atomic_helper_crtc_destroy_state(crtc->state); kfree(crtc->state); - crtc->state = kzalloc(sizeof(struct omap_crtc_state), GFP_KERNEL); - if (crtc->state) - crtc->state->crtc = crtc; + state = kzalloc(sizeof(*state), GFP_KERNEL); + if (state) + __drm_atomic_helper_crtc_reset(crtc, &state->base); } static struct drm_crtc_state * --- linux-azure-5.8-5.8.0.orig/drivers/gpu/drm/omapdrm/omap_dmm_tiler.c +++ linux-azure-5.8-5.8.0/drivers/gpu/drm/omapdrm/omap_dmm_tiler.c @@ -889,6 +889,7 @@ &omap_dmm->refill_pa, GFP_KERNEL); if (!omap_dmm->refill_va) { dev_err(&dev->dev, "could not allocate refill memory\n"); + ret = -ENOMEM; goto fail; } --- linux-azure-5.8-5.8.0.orig/drivers/gpu/drm/omapdrm/omap_drv.c +++ linux-azure-5.8-5.8.0/drivers/gpu/drm/omapdrm/omap_drv.c @@ -595,7 +595,6 @@ { const struct soc_device_attribute *soc; struct drm_device *ddev; - unsigned int i; int ret; DBG("%s", dev_name(dev)); @@ -642,9 +641,6 @@ goto err_cleanup_modeset; } - for (i = 0; i < priv->num_pipes; i++) - drm_crtc_vblank_off(priv->pipes[i].crtc); - omap_fbdev_init(ddev); drm_kms_helper_poll_init(ddev); --- linux-azure-5.8-5.8.0.orig/drivers/gpu/drm/panel/panel-elida-kd35t133.c +++ linux-azure-5.8-5.8.0/drivers/gpu/drm/panel/panel-elida-kd35t133.c @@ -276,7 +276,8 @@ dsi->lanes = 1; dsi->format = MIPI_DSI_FMT_RGB888; dsi->mode_flags = MIPI_DSI_MODE_VIDEO | MIPI_DSI_MODE_VIDEO_BURST | - MIPI_DSI_MODE_LPM | MIPI_DSI_MODE_EOT_PACKET; + MIPI_DSI_MODE_LPM | MIPI_DSI_MODE_EOT_PACKET | + MIPI_DSI_CLOCK_NON_CONTINUOUS; drm_panel_init(&ctx->panel, &dsi->dev, &kd35t133_funcs, DRM_MODE_CONNECTOR_DSI); --- linux-azure-5.8-5.8.0.orig/drivers/gpu/drm/panel/panel-orisetech-otm8009a.c +++ linux-azure-5.8-5.8.0/drivers/gpu/drm/panel/panel-orisetech-otm8009a.c @@ -454,7 +454,7 @@ dsi->lanes = 2; dsi->format = MIPI_DSI_FMT_RGB888; dsi->mode_flags = MIPI_DSI_MODE_VIDEO | MIPI_DSI_MODE_VIDEO_BURST | - MIPI_DSI_MODE_LPM; + MIPI_DSI_MODE_LPM | MIPI_DSI_CLOCK_NON_CONTINUOUS; drm_panel_init(&ctx->panel, dev, &otm8009a_drm_funcs, DRM_MODE_CONNECTOR_DSI); --- linux-azure-5.8-5.8.0.orig/drivers/gpu/drm/panel/panel-simple.c +++ linux-azure-5.8-5.8.0/drivers/gpu/drm/panel/panel-simple.c @@ -1238,6 +1238,7 @@ .vsync_end = 1080 + 3 + 6, .vtotal = 1080 + 3 + 6 + 31, .vrefresh = 60, + .flags = DRM_MODE_FLAG_PHSYNC | DRM_MODE_FLAG_NVSYNC, }; /* Also used for boe_nv133fhm_n62 */ @@ -1717,7 +1718,7 @@ .vsync_end = 240 + 2 + 6, .vtotal = 240 + 2 + 6 + 2, .vrefresh = 60, - .flags = DRM_MODE_FLAG_PHSYNC | DRM_MODE_FLAG_PVSYNC, + .flags = DRM_MODE_FLAG_NHSYNC | DRM_MODE_FLAG_NVSYNC, }; static const struct panel_desc frida_frd350h54004 = { @@ -2304,7 +2305,7 @@ static const struct panel_desc lg_lb070wv8 = { .modes = &lg_lb070wv8_mode, .num_modes = 1, - .bpc = 16, + .bpc = 8, .size = { .width = 151, .height = 91, @@ -2862,12 +2863,12 @@ static const struct panel_desc ortustech_com43h4m85ulc = { .modes = &ortustech_com43h4m85ulc_mode, .num_modes = 1, - .bpc = 8, + .bpc = 6, .size = { .width = 56, .height = 93, }, - .bus_format = MEDIA_BUS_FMT_RGB888_1X24, + .bus_format = MEDIA_BUS_FMT_RGB666_1X18, .bus_flags = DRM_BUS_FLAG_DE_HIGH | DRM_BUS_FLAG_PIXDATA_DRIVE_POSEDGE, .connector_type = DRM_MODE_CONNECTOR_DPI, }; --- linux-azure-5.8-5.8.0.orig/drivers/gpu/drm/panel/panel-sony-acx565akm.c +++ linux-azure-5.8-5.8.0/drivers/gpu/drm/panel/panel-sony-acx565akm.c @@ -630,7 +630,7 @@ lcd->spi = spi; mutex_init(&lcd->mutex); - lcd->reset_gpio = devm_gpiod_get(&spi->dev, "reset", GPIOD_OUT_LOW); + lcd->reset_gpio = devm_gpiod_get(&spi->dev, "reset", GPIOD_OUT_HIGH); if (IS_ERR(lcd->reset_gpio)) { dev_err(&spi->dev, "failed to get reset GPIO\n"); return PTR_ERR(lcd->reset_gpio); --- linux-azure-5.8-5.8.0.orig/drivers/gpu/drm/panfrost/panfrost_device.c +++ linux-azure-5.8-5.8.0/drivers/gpu/drm/panfrost/panfrost_device.c @@ -212,60 +212,69 @@ return err; } + err = panfrost_devfreq_init(pfdev); + if (err) { + if (err != -EPROBE_DEFER) + dev_err(pfdev->dev, "devfreq init failed %d\n", err); + goto out_clk; + } + err = panfrost_regulator_init(pfdev); if (err) { dev_err(pfdev->dev, "regulator init failed %d\n", err); - goto err_out0; + goto out_devfreq; } err = panfrost_reset_init(pfdev); if (err) { dev_err(pfdev->dev, "reset init failed %d\n", err); - goto err_out1; + goto out_regulator; } err = panfrost_pm_domain_init(pfdev); if (err) - goto err_out2; + goto out_reset; res = platform_get_resource(pfdev->pdev, IORESOURCE_MEM, 0); pfdev->iomem = devm_ioremap_resource(pfdev->dev, res); if (IS_ERR(pfdev->iomem)) { dev_err(pfdev->dev, "failed to ioremap iomem\n"); err = PTR_ERR(pfdev->iomem); - goto err_out3; + goto out_pm_domain; } err = panfrost_gpu_init(pfdev); if (err) - goto err_out3; + goto out_pm_domain; err = panfrost_mmu_init(pfdev); if (err) - goto err_out4; + goto out_gpu; err = panfrost_job_init(pfdev); if (err) - goto err_out5; + goto out_mmu; err = panfrost_perfcnt_init(pfdev); if (err) - goto err_out6; + goto out_job; return 0; -err_out6: +out_job: panfrost_job_fini(pfdev); -err_out5: +out_mmu: panfrost_mmu_fini(pfdev); -err_out4: +out_gpu: panfrost_gpu_fini(pfdev); -err_out3: +out_pm_domain: panfrost_pm_domain_fini(pfdev); -err_out2: +out_reset: panfrost_reset_fini(pfdev); -err_out1: +out_regulator: panfrost_regulator_fini(pfdev); -err_out0: +out_devfreq: + panfrost_devfreq_fini(pfdev); +out_clk: panfrost_clk_fini(pfdev); return err; } @@ -278,6 +287,7 @@ panfrost_gpu_fini(pfdev); panfrost_pm_domain_fini(pfdev); panfrost_reset_fini(pfdev); + panfrost_devfreq_fini(pfdev); panfrost_regulator_fini(pfdev); panfrost_clk_fini(pfdev); } --- linux-azure-5.8-5.8.0.orig/drivers/gpu/drm/panfrost/panfrost_device.h +++ linux-azure-5.8-5.8.0/drivers/gpu/drm/panfrost/panfrost_device.h @@ -69,6 +69,9 @@ int num_pm_domains; /* Only required if num_pm_domains > 1. */ const char * const *pm_domain_names; + + /* Vendor implementation quirks callback */ + void (*vendor_quirk)(struct panfrost_device *pfdev); }; struct panfrost_device { @@ -84,6 +87,7 @@ /* pm_domains for devices with more than one. */ struct device *pm_domain_devs[MAX_PM_DOMAINS]; struct device_link *pm_domain_links[MAX_PM_DOMAINS]; + bool coherent; struct panfrost_features features; const struct panfrost_compatible *comp; --- linux-azure-5.8-5.8.0.orig/drivers/gpu/drm/panfrost/panfrost_drv.c +++ linux-azure-5.8-5.8.0/drivers/gpu/drm/panfrost/panfrost_drv.c @@ -14,7 +14,6 @@ #include #include "panfrost_device.h" -#include "panfrost_devfreq.h" #include "panfrost_gem.h" #include "panfrost_mmu.h" #include "panfrost_job.h" @@ -588,6 +587,8 @@ if (!pfdev->comp) return -ENODEV; + pfdev->coherent = device_get_dma_attr(&pdev->dev) == DEV_DMA_COHERENT; + /* Allocate and initialze the DRM device. */ ddev = drm_dev_alloc(&panfrost_drm_driver, &pdev->dev); if (IS_ERR(ddev)) @@ -606,13 +607,6 @@ goto err_out0; } - err = panfrost_devfreq_init(pfdev); - if (err) { - if (err != -EPROBE_DEFER) - dev_err(&pdev->dev, "Fatal error during devfreq init\n"); - goto err_out1; - } - pm_runtime_set_active(pfdev->dev); pm_runtime_mark_last_busy(pfdev->dev); pm_runtime_enable(pfdev->dev); @@ -625,17 +619,16 @@ */ err = drm_dev_register(ddev, 0); if (err < 0) - goto err_out2; + goto err_out1; panfrost_gem_shrinker_init(ddev); return 0; -err_out2: - pm_runtime_disable(pfdev->dev); - panfrost_devfreq_fini(pfdev); err_out1: + pm_runtime_disable(pfdev->dev); panfrost_device_fini(pfdev); + pm_runtime_set_suspended(pfdev->dev); err_out0: drm_dev_put(ddev); return err; @@ -650,10 +643,9 @@ panfrost_gem_shrinker_cleanup(ddev); pm_runtime_get_sync(pfdev->dev); - panfrost_devfreq_fini(pfdev); - panfrost_device_fini(pfdev); - pm_runtime_put_sync_suspend(pfdev->dev); pm_runtime_disable(pfdev->dev); + panfrost_device_fini(pfdev); + pm_runtime_set_suspended(pfdev->dev); drm_dev_put(ddev); return 0; @@ -667,7 +659,18 @@ .pm_domain_names = NULL, }; +static const struct panfrost_compatible amlogic_data = { + .num_supplies = ARRAY_SIZE(default_supplies), + .supply_names = default_supplies, + .vendor_quirk = panfrost_gpu_amlogic_quirk, +}; + static const struct of_device_id dt_match[] = { + /* Set first to probe before the generic compatibles */ + { .compatible = "amlogic,meson-gxm-mali", + .data = &amlogic_data, }, + { .compatible = "amlogic,meson-g12a-mali", + .data = &amlogic_data, }, { .compatible = "arm,mali-t604", .data = &default_data, }, { .compatible = "arm,mali-t624", .data = &default_data, }, { .compatible = "arm,mali-t628", .data = &default_data, }, --- linux-azure-5.8-5.8.0.orig/drivers/gpu/drm/panfrost/panfrost_gem.c +++ linux-azure-5.8-5.8.0/drivers/gpu/drm/panfrost/panfrost_gem.c @@ -41,12 +41,12 @@ for (i = 0; i < n_sgt; i++) { if (bo->sgts[i].sgl) { - dma_unmap_sg(pfdev->dev, bo->sgts[i].sgl, - bo->sgts[i].nents, DMA_BIDIRECTIONAL); + dma_unmap_sgtable(pfdev->dev, &bo->sgts[i], + DMA_BIDIRECTIONAL, 0); sg_free_table(&bo->sgts[i]); } } - kfree(bo->sgts); + kvfree(bo->sgts); } drm_gem_shmem_free_object(obj); @@ -105,14 +105,12 @@ kref_put(&mapping->refcount, panfrost_gem_mapping_release); } -void panfrost_gem_teardown_mappings(struct panfrost_gem_object *bo) +void panfrost_gem_teardown_mappings_locked(struct panfrost_gem_object *bo) { struct panfrost_gem_mapping *mapping; - mutex_lock(&bo->mappings.lock); list_for_each_entry(mapping, &bo->mappings.list, node) panfrost_gem_teardown_mapping(mapping); - mutex_unlock(&bo->mappings.lock); } int panfrost_gem_open(struct drm_gem_object *obj, struct drm_file *file_priv) @@ -220,6 +218,7 @@ */ struct drm_gem_object *panfrost_gem_create_object(struct drm_device *dev, size_t size) { + struct panfrost_device *pfdev = dev->dev_private; struct panfrost_gem_object *obj; obj = kzalloc(sizeof(*obj), GFP_KERNEL); @@ -229,6 +228,7 @@ INIT_LIST_HEAD(&obj->mappings.list); mutex_init(&obj->mappings.lock); obj->base.base.funcs = &panfrost_gem_funcs; + obj->base.map_cached = pfdev->coherent; return &obj->base.base; } --- linux-azure-5.8-5.8.0.orig/drivers/gpu/drm/panfrost/panfrost_gem.h +++ linux-azure-5.8-5.8.0/drivers/gpu/drm/panfrost/panfrost_gem.h @@ -82,7 +82,7 @@ panfrost_gem_mapping_get(struct panfrost_gem_object *bo, struct panfrost_file_priv *priv); void panfrost_gem_mapping_put(struct panfrost_gem_mapping *mapping); -void panfrost_gem_teardown_mappings(struct panfrost_gem_object *bo); +void panfrost_gem_teardown_mappings_locked(struct panfrost_gem_object *bo); void panfrost_gem_shrinker_init(struct drm_device *dev); void panfrost_gem_shrinker_cleanup(struct drm_device *dev); --- linux-azure-5.8-5.8.0.orig/drivers/gpu/drm/panfrost/panfrost_gem_shrinker.c +++ linux-azure-5.8-5.8.0/drivers/gpu/drm/panfrost/panfrost_gem_shrinker.c @@ -40,18 +40,26 @@ { struct drm_gem_shmem_object *shmem = to_drm_gem_shmem_obj(obj); struct panfrost_gem_object *bo = to_panfrost_bo(obj); + bool ret = false; if (atomic_read(&bo->gpu_usecount)) return false; - if (!mutex_trylock(&shmem->pages_lock)) + if (!mutex_trylock(&bo->mappings.lock)) return false; - panfrost_gem_teardown_mappings(bo); + if (!mutex_trylock(&shmem->pages_lock)) + goto unlock_mappings; + + panfrost_gem_teardown_mappings_locked(bo); drm_gem_shmem_purge_locked(obj); + ret = true; mutex_unlock(&shmem->pages_lock); - return true; + +unlock_mappings: + mutex_unlock(&bo->mappings.lock); + return ret; } static unsigned long --- linux-azure-5.8-5.8.0.orig/drivers/gpu/drm/panfrost/panfrost_gpu.c +++ linux-azure-5.8-5.8.0/drivers/gpu/drm/panfrost/panfrost_gpu.c @@ -75,6 +75,17 @@ return 0; } +void panfrost_gpu_amlogic_quirk(struct panfrost_device *pfdev) +{ + /* + * The Amlogic integrated Mali-T820, Mali-G31 & Mali-G52 needs + * these undocumented bits in GPU_PWR_OVERRIDE1 to be set in order + * to operate correctly. + */ + gpu_write(pfdev, GPU_PWR_KEY, GPU_PWR_KEY_UNLOCK); + gpu_write(pfdev, GPU_PWR_OVERRIDE1, 0xfff | (0x20 << 16)); +} + static void panfrost_gpu_init_quirks(struct panfrost_device *pfdev) { u32 quirks = 0; @@ -135,6 +146,10 @@ if (quirks) gpu_write(pfdev, GPU_JM_CONFIG, quirks); + + /* Here goes platform specific quirks */ + if (pfdev->comp->vendor_quirk) + pfdev->comp->vendor_quirk(pfdev); } #define MAX_HW_REVS 6 @@ -304,16 +319,18 @@ int ret; u32 val; + panfrost_gpu_init_quirks(pfdev); + /* Just turn on everything for now */ gpu_write(pfdev, L2_PWRON_LO, pfdev->features.l2_present); ret = readl_relaxed_poll_timeout(pfdev->iomem + L2_READY_LO, - val, val == pfdev->features.l2_present, 100, 1000); + val, val == pfdev->features.l2_present, 100, 20000); if (ret) dev_err(pfdev->dev, "error powering up gpu L2"); gpu_write(pfdev, SHADER_PWRON_LO, pfdev->features.shader_present); ret = readl_relaxed_poll_timeout(pfdev->iomem + SHADER_READY_LO, - val, val == pfdev->features.shader_present, 100, 1000); + val, val == pfdev->features.shader_present, 100, 20000); if (ret) dev_err(pfdev->dev, "error powering up gpu shader"); @@ -355,7 +372,6 @@ return err; } - panfrost_gpu_init_quirks(pfdev); panfrost_gpu_power_on(pfdev); return 0; --- linux-azure-5.8-5.8.0.orig/drivers/gpu/drm/panfrost/panfrost_gpu.h +++ linux-azure-5.8-5.8.0/drivers/gpu/drm/panfrost/panfrost_gpu.h @@ -16,4 +16,6 @@ void panfrost_gpu_power_on(struct panfrost_device *pfdev); void panfrost_gpu_power_off(struct panfrost_device *pfdev); +void panfrost_gpu_amlogic_quirk(struct panfrost_device *pfdev); + #endif --- linux-azure-5.8-5.8.0.orig/drivers/gpu/drm/panfrost/panfrost_job.c +++ linux-azure-5.8-5.8.0/drivers/gpu/drm/panfrost/panfrost_job.c @@ -25,7 +25,8 @@ struct panfrost_queue_state { struct drm_gpu_scheduler sched; - + bool stopped; + struct mutex lock; u64 fence_context; u64 emit_seqno; }; @@ -145,6 +146,8 @@ u64 jc_head = job->jc; int ret; + panfrost_devfreq_record_busy(pfdev); + ret = pm_runtime_get_sync(pfdev->dev); if (ret < 0) return; @@ -155,7 +158,6 @@ } cfg = panfrost_mmu_as_get(pfdev, &job->file_priv->mmu); - panfrost_devfreq_record_busy(pfdev); job_write(pfdev, JS_HEAD_NEXT_LO(js), jc_head & 0xFFFFFFFF); job_write(pfdev, JS_HEAD_NEXT_HI(js), jc_head >> 32); @@ -369,6 +371,24 @@ job_write(pfdev, JOB_INT_MASK, irq_mask); } +static bool panfrost_scheduler_stop(struct panfrost_queue_state *queue, + struct drm_sched_job *bad) +{ + bool stopped = false; + + mutex_lock(&queue->lock); + if (!queue->stopped) { + drm_sched_stop(&queue->sched, bad); + if (bad) + drm_sched_increase_karma(bad); + queue->stopped = true; + stopped = true; + } + mutex_unlock(&queue->lock); + + return stopped; +} + static void panfrost_job_timedout(struct drm_sched_job *sched_job) { struct panfrost_job *job = to_panfrost_job(sched_job); @@ -392,40 +412,60 @@ job_read(pfdev, JS_TAIL_LO(js)), sched_job); + /* Scheduler is already stopped, nothing to do. */ + if (!panfrost_scheduler_stop(&pfdev->js->queue[js], sched_job)) + return; + if (!mutex_trylock(&pfdev->reset_lock)) return; for (i = 0; i < NUM_JOB_SLOTS; i++) { struct drm_gpu_scheduler *sched = &pfdev->js->queue[i].sched; - drm_sched_stop(sched, sched_job); - if (js != i) - /* Ensure any timeouts on other slots have finished */ + /* + * If the queue is still active, make sure we wait for any + * pending timeouts. + */ + if (!pfdev->js->queue[i].stopped) + cancel_delayed_work_sync(&sched->work_tdr); + + /* + * If the scheduler was not already stopped, there's a tiny + * chance a timeout has expired just before we stopped it, and + * drm_sched_stop() does not flush pending works. Let's flush + * them now so the timeout handler doesn't get called in the + * middle of a reset. + */ + if (panfrost_scheduler_stop(&pfdev->js->queue[i], NULL)) cancel_delayed_work_sync(&sched->work_tdr); - } - drm_sched_increase_karma(sched_job); + /* + * Now that we cancelled the pending timeouts, we can safely + * reset the stopped state. + */ + pfdev->js->queue[i].stopped = false; + } spin_lock_irqsave(&pfdev->js->job_lock, flags); for (i = 0; i < NUM_JOB_SLOTS; i++) { if (pfdev->jobs[i]) { pm_runtime_put_noidle(pfdev->dev); + panfrost_devfreq_record_idle(pfdev); pfdev->jobs[i] = NULL; } } spin_unlock_irqrestore(&pfdev->js->job_lock, flags); - panfrost_devfreq_record_idle(pfdev); panfrost_device_reset(pfdev); for (i = 0; i < NUM_JOB_SLOTS; i++) drm_sched_resubmit_jobs(&pfdev->js->queue[i].sched); + mutex_unlock(&pfdev->reset_lock); + /* restart scheduler after GPU is usable again */ for (i = 0; i < NUM_JOB_SLOTS; i++) drm_sched_start(&pfdev->js->queue[i].sched, true); - - mutex_unlock(&pfdev->reset_lock); } static const struct drm_sched_backend_ops panfrost_sched_ops = { @@ -515,6 +555,8 @@ } for (j = 0; j < NUM_JOB_SLOTS; j++) { + mutex_init(&js->queue[j].lock); + js->queue[j].fence_context = dma_fence_context_alloc(1); ret = drm_sched_init(&js->queue[j].sched, @@ -545,8 +587,10 @@ job_write(pfdev, JOB_INT_MASK, 0); - for (j = 0; j < NUM_JOB_SLOTS; j++) + for (j = 0; j < NUM_JOB_SLOTS; j++) { drm_sched_fini(&js->queue[j].sched); + mutex_destroy(&js->queue[j].lock); + } } --- linux-azure-5.8-5.8.0.orig/drivers/gpu/drm/panfrost/panfrost_mmu.c +++ linux-azure-5.8-5.8.0/drivers/gpu/drm/panfrost/panfrost_mmu.c @@ -253,7 +253,7 @@ struct io_pgtable_ops *ops = mmu->pgtbl_ops; u64 start_iova = iova; - for_each_sg(sgt->sgl, sgl, sgt->nents, count) { + for_each_sgtable_dma_sg(sgt, sgl, count) { unsigned long paddr = sg_dma_address(sgl); size_t len = sg_dma_len(sgl); @@ -371,6 +371,7 @@ .pgsize_bitmap = SZ_4K | SZ_2M, .ias = FIELD_GET(0xff, pfdev->features.mmu_features), .oas = FIELD_GET(0xff00, pfdev->features.mmu_features), + .coherent_walk = pfdev->coherent, .tlb = &mmu_tlb_ops, .iommu_dev = pfdev->dev, }; @@ -486,7 +487,7 @@ pages = kvmalloc_array(bo->base.base.size >> PAGE_SHIFT, sizeof(struct page *), GFP_KERNEL | __GFP_ZERO); if (!pages) { - kfree(bo->sgts); + kvfree(bo->sgts); bo->sgts = NULL; mutex_unlock(&bo->base.pages_lock); ret = -ENOMEM; @@ -517,10 +518,9 @@ if (ret) goto err_pages; - if (!dma_map_sg(pfdev->dev, sgt->sgl, sgt->nents, DMA_BIDIRECTIONAL)) { - ret = -EINVAL; + ret = dma_map_sgtable(pfdev->dev, sgt, DMA_BIDIRECTIONAL, 0); + if (ret) goto err_map; - } mmu_map_sg(pfdev, bomapping->mmu, addr, IOMMU_WRITE | IOMMU_READ | IOMMU_NOEXEC, sgt); --- linux-azure-5.8-5.8.0.orig/drivers/gpu/drm/panfrost/panfrost_regs.h +++ linux-azure-5.8-5.8.0/drivers/gpu/drm/panfrost/panfrost_regs.h @@ -51,6 +51,10 @@ #define GPU_STATUS 0x34 #define GPU_STATUS_PRFCNT_ACTIVE BIT(2) #define GPU_LATEST_FLUSH_ID 0x38 +#define GPU_PWR_KEY 0x50 /* (WO) Power manager key register */ +#define GPU_PWR_KEY_UNLOCK 0x2968A819 +#define GPU_PWR_OVERRIDE0 0x54 /* (RW) Power manager override settings */ +#define GPU_PWR_OVERRIDE1 0x58 /* (RW) Power manager override settings */ #define GPU_FAULT_STATUS 0x3C #define GPU_FAULT_ADDRESS_LO 0x40 #define GPU_FAULT_ADDRESS_HI 0x44 --- linux-azure-5.8-5.8.0.orig/drivers/gpu/drm/radeon/ci_dpm.c +++ linux-azure-5.8-5.8.0/drivers/gpu/drm/radeon/ci_dpm.c @@ -4351,7 +4351,7 @@ table->mc_reg_table_entry[k].mc_data[j] |= 0x100; } j++; - if (j > SMU7_DISCRETE_MC_REGISTER_ARRAY_SIZE) + if (j >= SMU7_DISCRETE_MC_REGISTER_ARRAY_SIZE) return -EINVAL; if (!pi->mem_gddr5) { --- linux-azure-5.8-5.8.0.orig/drivers/gpu/drm/radeon/radeon_connectors.c +++ linux-azure-5.8-5.8.0/drivers/gpu/drm/radeon/radeon_connectors.c @@ -879,8 +879,10 @@ if (!drm_kms_helper_is_poll_worker()) { r = pm_runtime_get_sync(connector->dev->dev); - if (r < 0) + if (r < 0) { + pm_runtime_put_autosuspend(connector->dev->dev); return connector_status_disconnected; + } } if (encoder) { @@ -1025,8 +1027,10 @@ if (!drm_kms_helper_is_poll_worker()) { r = pm_runtime_get_sync(connector->dev->dev); - if (r < 0) + if (r < 0) { + pm_runtime_put_autosuspend(connector->dev->dev); return connector_status_disconnected; + } } encoder = radeon_best_single_encoder(connector); @@ -1163,8 +1167,10 @@ if (!drm_kms_helper_is_poll_worker()) { r = pm_runtime_get_sync(connector->dev->dev); - if (r < 0) + if (r < 0) { + pm_runtime_put_autosuspend(connector->dev->dev); return connector_status_disconnected; + } } encoder = radeon_best_single_encoder(connector); @@ -1247,8 +1253,10 @@ if (!drm_kms_helper_is_poll_worker()) { r = pm_runtime_get_sync(connector->dev->dev); - if (r < 0) + if (r < 0) { + pm_runtime_put_autosuspend(connector->dev->dev); return connector_status_disconnected; + } } if (radeon_connector->detected_hpd_without_ddc) { @@ -1657,8 +1665,10 @@ if (!drm_kms_helper_is_poll_worker()) { r = pm_runtime_get_sync(connector->dev->dev); - if (r < 0) + if (r < 0) { + pm_runtime_put_autosuspend(connector->dev->dev); return connector_status_disconnected; + } } if (!force && radeon_check_hpd_status_unchanged(connector)) { --- linux-azure-5.8-5.8.0.orig/drivers/gpu/drm/radeon/radeon_display.c +++ linux-azure-5.8-5.8.0/drivers/gpu/drm/radeon/radeon_display.c @@ -635,8 +635,10 @@ dev = set->crtc->dev; ret = pm_runtime_get_sync(dev->dev); - if (ret < 0) + if (ret < 0) { + pm_runtime_put_autosuspend(dev->dev); return ret; + } ret = drm_crtc_helper_set_config(set, ctx); --- linux-azure-5.8-5.8.0.orig/drivers/gpu/drm/radeon/radeon_drv.c +++ linux-azure-5.8-5.8.0/drivers/gpu/drm/radeon/radeon_drv.c @@ -171,12 +171,7 @@ int radeon_modeset = -1; int radeon_dynclks = -1; int radeon_r4xx_atom = 0; -#ifdef __powerpc__ -/* Default to PCI on PowerPC (fdo #95017) */ int radeon_agpmode = -1; -#else -int radeon_agpmode = 0; -#endif int radeon_vram_limit = 0; int radeon_gart_size = -1; /* auto */ int radeon_benchmarking = 0; @@ -549,8 +544,10 @@ long ret; dev = file_priv->minor->dev; ret = pm_runtime_get_sync(dev->dev); - if (ret < 0) + if (ret < 0) { + pm_runtime_put_autosuspend(dev->dev); return ret; + } ret = drm_ioctl(filp, cmd, arg); --- linux-azure-5.8-5.8.0.orig/drivers/gpu/drm/radeon/radeon_kms.c +++ linux-azure-5.8-5.8.0/drivers/gpu/drm/radeon/radeon_kms.c @@ -638,8 +638,10 @@ file_priv->driver_priv = NULL; r = pm_runtime_get_sync(dev->dev); - if (r < 0) + if (r < 0) { + pm_runtime_put_autosuspend(dev->dev); return r; + } /* new gpu have virtual address space support */ if (rdev->family >= CHIP_CAYMAN) { --- linux-azure-5.8-5.8.0.orig/drivers/gpu/drm/rcar-du/rcar_cmm.c +++ linux-azure-5.8-5.8.0/drivers/gpu/drm/rcar-du/rcar_cmm.c @@ -122,7 +122,7 @@ { int ret; - ret = pm_runtime_get_sync(&pdev->dev); + ret = pm_runtime_resume_and_get(&pdev->dev); if (ret < 0) return ret; --- linux-azure-5.8-5.8.0.orig/drivers/gpu/drm/rcar-du/rcar_du_crtc.c +++ linux-azure-5.8-5.8.0/drivers/gpu/drm/rcar-du/rcar_du_crtc.c @@ -727,13 +727,10 @@ */ if (rcdu->info->lvds_clk_mask & BIT(rcrtc->index) && rstate->outputs == BIT(RCAR_DU_OUTPUT_DPAD0)) { - struct rcar_du_encoder *encoder = - rcdu->encoders[RCAR_DU_OUTPUT_LVDS0 + rcrtc->index]; + struct drm_bridge *bridge = rcdu->lvds[rcrtc->index]; const struct drm_display_mode *mode = &crtc->state->adjusted_mode; - struct drm_bridge *bridge; - bridge = drm_bridge_chain_get_first_bridge(&encoder->base); rcar_lvds_clk_enable(bridge, mode->clock * 1000); } @@ -759,15 +756,12 @@ if (rcdu->info->lvds_clk_mask & BIT(rcrtc->index) && rstate->outputs == BIT(RCAR_DU_OUTPUT_DPAD0)) { - struct rcar_du_encoder *encoder = - rcdu->encoders[RCAR_DU_OUTPUT_LVDS0 + rcrtc->index]; - struct drm_bridge *bridge; + struct drm_bridge *bridge = rcdu->lvds[rcrtc->index]; /* * Disable the LVDS clock output, see * rcar_du_crtc_atomic_enable(). */ - bridge = drm_bridge_chain_get_first_bridge(&encoder->base); rcar_lvds_clk_disable(bridge); } @@ -975,8 +969,7 @@ state->crc.source = VSP1_DU_CRC_NONE; state->crc.index = 0; - crtc->state = &state->state; - crtc->state->crtc = crtc; + __drm_atomic_helper_crtc_reset(crtc, &state->state); } static int rcar_du_crtc_enable_vblank(struct drm_crtc *crtc) @@ -1271,9 +1264,6 @@ drm_crtc_helper_add(crtc, &crtc_helper_funcs); - /* Start with vertical blanking interrupt reporting disabled. */ - drm_crtc_vblank_off(crtc); - /* Register the interrupt handler. */ if (rcar_du_has(rcdu, RCAR_DU_FEATURE_CRTC_IRQ_CLOCK)) { /* The IRQ's are associated with the CRTC (sw)index. */ --- linux-azure-5.8-5.8.0.orig/drivers/gpu/drm/rcar-du/rcar_du_drv.h +++ linux-azure-5.8-5.8.0/drivers/gpu/drm/rcar-du/rcar_du_drv.h @@ -20,10 +20,10 @@ struct clk; struct device; +struct drm_bridge; struct drm_device; struct drm_property; struct rcar_du_device; -struct rcar_du_encoder; #define RCAR_DU_FEATURE_CRTC_IRQ_CLOCK BIT(0) /* Per-CRTC IRQ and clock */ #define RCAR_DU_FEATURE_VSP1_SOURCE BIT(1) /* Has inputs from VSP1 */ @@ -71,6 +71,7 @@ #define RCAR_DU_MAX_CRTCS 4 #define RCAR_DU_MAX_GROUPS DIV_ROUND_UP(RCAR_DU_MAX_CRTCS, 2) #define RCAR_DU_MAX_VSPS 4 +#define RCAR_DU_MAX_LVDS 2 struct rcar_du_device { struct device *dev; @@ -83,11 +84,10 @@ struct rcar_du_crtc crtcs[RCAR_DU_MAX_CRTCS]; unsigned int num_crtcs; - struct rcar_du_encoder *encoders[RCAR_DU_OUTPUT_MAX]; - struct rcar_du_group groups[RCAR_DU_MAX_GROUPS]; struct platform_device *cmms[RCAR_DU_MAX_CRTCS]; struct rcar_du_vsp vsps[RCAR_DU_MAX_VSPS]; + struct drm_bridge *lvds[RCAR_DU_MAX_LVDS]; struct { struct drm_property *colorkey; --- linux-azure-5.8-5.8.0.orig/drivers/gpu/drm/rcar-du/rcar_du_encoder.c +++ linux-azure-5.8-5.8.0/drivers/gpu/drm/rcar-du/rcar_du_encoder.c @@ -57,7 +57,6 @@ if (renc == NULL) return -ENOMEM; - rcdu->encoders[output] = renc; renc->output = output; encoder = rcar_encoder_to_drm_encoder(renc); @@ -91,6 +90,10 @@ ret = -EPROBE_DEFER; goto done; } + + if (output == RCAR_DU_OUTPUT_LVDS0 || + output == RCAR_DU_OUTPUT_LVDS1) + rcdu->lvds[output - RCAR_DU_OUTPUT_LVDS0] = bridge; } /* --- linux-azure-5.8-5.8.0.orig/drivers/gpu/drm/rcar-du/rcar_du_kms.c +++ linux-azure-5.8-5.8.0/drivers/gpu/drm/rcar-du/rcar_du_kms.c @@ -650,10 +650,10 @@ int ret; cmm = of_parse_phandle(np, "renesas,cmms", i); - if (IS_ERR(cmm)) { + if (!cmm) { dev_err(rcdu->dev, "Failed to parse 'renesas,cmms' property\n"); - return PTR_ERR(cmm); + return -EINVAL; } if (!of_device_is_available(cmm)) { @@ -663,10 +663,10 @@ } pdev = of_find_device_by_node(cmm); - if (IS_ERR(pdev)) { + if (!pdev) { dev_err(rcdu->dev, "No device found for CMM%u\n", i); of_node_put(cmm); - return PTR_ERR(pdev); + return -EINVAL; } of_node_put(cmm); --- linux-azure-5.8-5.8.0.orig/drivers/gpu/drm/rcar-du/rcar_du_vsp.c +++ linux-azure-5.8-5.8.0/drivers/gpu/drm/rcar-du/rcar_du_vsp.c @@ -13,6 +13,7 @@ #include #include #include +#include #include #include @@ -341,6 +342,13 @@ .atomic_destroy_state = rcar_du_vsp_plane_atomic_destroy_state, }; +static void rcar_du_vsp_cleanup(struct drm_device *dev, void *res) +{ + struct rcar_du_vsp *vsp = res; + + put_device(vsp->vsp); +} + int rcar_du_vsp_init(struct rcar_du_vsp *vsp, struct device_node *np, unsigned int crtcs) { @@ -357,6 +365,10 @@ vsp->vsp = &pdev->dev; + ret = drmm_add_action(rcdu->ddev, rcar_du_vsp_cleanup, vsp); + if (ret < 0) + return ret; + ret = vsp1_du_init(vsp->vsp); if (ret < 0) return ret; --- linux-azure-5.8-5.8.0.orig/drivers/gpu/drm/rockchip/rockchip_drm_vop.h +++ linux-azure-5.8-5.8.0/drivers/gpu/drm/rockchip/rockchip_drm_vop.h @@ -17,9 +17,20 @@ #define NUM_YUV2YUV_COEFFICIENTS 12 +/* AFBC supports a number of configurable modes. Relevant to us is block size + * (16x16 or 32x8), storage modifiers (SPARSE, SPLIT), and the YUV-like + * colourspace transform (YTR). 16x16 SPARSE mode is always used. SPLIT mode + * could be enabled via the hreg_block_split register, but is not currently + * handled. The colourspace transform is implicitly always assumed by the + * decoder, so consumers must use this transform as well. + * + * Failure to match modifiers will cause errors displaying AFBC buffers + * produced by conformant AFBC producers, including Mesa. + */ #define ROCKCHIP_AFBC_MOD \ DRM_FORMAT_MOD_ARM_AFBC( \ AFBC_FORMAT_MOD_BLOCK_SIZE_16x16 | AFBC_FORMAT_MOD_SPARSE \ + | AFBC_FORMAT_MOD_YTR \ ) enum vop_data_format { --- linux-azure-5.8-5.8.0.orig/drivers/gpu/drm/rockchip/rockchip_lvds.c +++ linux-azure-5.8-5.8.0/drivers/gpu/drm/rockchip/rockchip_lvds.c @@ -544,7 +544,7 @@ struct device_node *port, *endpoint; int ret = 0, child_count = 0; const char *name; - u32 endpoint_id; + u32 endpoint_id = 0; lvds->drm_dev = drm_dev; port = of_graph_get_port_by_id(dev->of_node, 1); --- linux-azure-5.8-5.8.0.orig/drivers/gpu/drm/scheduler/sched_main.c +++ linux-azure-5.8-5.8.0/drivers/gpu/drm/scheduler/sched_main.c @@ -623,7 +623,7 @@ return NULL; /* Kernel run queue has higher priority than normal run queue*/ - for (i = DRM_SCHED_PRIORITY_MAX - 1; i >= DRM_SCHED_PRIORITY_MIN; i--) { + for (i = DRM_SCHED_PRIORITY_COUNT - 1; i >= DRM_SCHED_PRIORITY_MIN; i--) { entity = drm_sched_rq_select_entity(&sched->sched_rq[i]); if (entity) break; @@ -851,7 +851,7 @@ sched->name = name; sched->timeout = timeout; sched->hang_limit = hang_limit; - for (i = DRM_SCHED_PRIORITY_MIN; i < DRM_SCHED_PRIORITY_MAX; i++) + for (i = DRM_SCHED_PRIORITY_MIN; i < DRM_SCHED_PRIORITY_COUNT; i++) drm_sched_rq_init(sched, &sched->sched_rq[i]); init_waitqueue_head(&sched->wake_up_worker); @@ -889,6 +889,9 @@ if (sched->thread) kthread_stop(sched->thread); + /* Confirm no work left behind accessing device structures */ + cancel_delayed_work_sync(&sched->work_tdr); + sched->ready = false; } EXPORT_SYMBOL(drm_sched_fini); --- linux-azure-5.8-5.8.0.orig/drivers/gpu/drm/stm/ltdc.c +++ linux-azure-5.8-5.8.0/drivers/gpu/drm/stm/ltdc.c @@ -423,9 +423,12 @@ struct drm_crtc_state *old_state) { struct ltdc_device *ldev = crtc_to_ltdc(crtc); + struct drm_device *ddev = crtc->dev; DRM_DEBUG_DRIVER("\n"); + pm_runtime_get_sync(ddev->dev); + /* Sets the background color value */ reg_write(ldev->regs, LTDC_BCCR, BCCR_BCBLACK); --- linux-azure-5.8-5.8.0.orig/drivers/gpu/drm/sun4i/sun4i_backend.c +++ linux-azure-5.8-5.8.0/drivers/gpu/drm/sun4i/sun4i_backend.c @@ -589,8 +589,7 @@ /* We can't have an alpha plane at the lowest position */ if (!backend->quirks->supports_lowest_plane_alpha && - (plane_states[0]->fb->format->has_alpha || - (plane_states[0]->alpha != DRM_BLEND_ALPHA_OPAQUE))) + (plane_states[0]->alpha != DRM_BLEND_ALPHA_OPAQUE)) return -EINVAL; for (i = 1; i < num_planes; i++) { @@ -995,7 +994,6 @@ static const struct sun4i_backend_quirks sun7i_backend_quirks = { .needs_output_muxing = true, - .supports_lowest_plane_alpha = true, }; static const struct sun4i_backend_quirks sun8i_a33_backend_quirks = { --- linux-azure-5.8-5.8.0.orig/drivers/gpu/drm/sun4i/sun4i_frontend.c +++ linux-azure-5.8-5.8.0/drivers/gpu/drm/sun4i/sun4i_frontend.c @@ -407,6 +407,7 @@ struct drm_framebuffer *fb = state->fb; const struct drm_format_info *format = fb->format; uint64_t modifier = fb->modifier; + unsigned int ch1_phase_idx; u32 out_fmt_val; u32 in_fmt_val, in_mod_val, in_ps_val; unsigned int i; @@ -442,18 +443,19 @@ * I have no idea what this does exactly, but it seems to be * related to the scaler FIR filter phase parameters. */ + ch1_phase_idx = (format->num_planes > 1) ? 1 : 0; regmap_write(frontend->regs, SUN4I_FRONTEND_CH0_HORZPHASE_REG, - frontend->data->ch_phase[0].horzphase); + frontend->data->ch_phase[0]); regmap_write(frontend->regs, SUN4I_FRONTEND_CH1_HORZPHASE_REG, - frontend->data->ch_phase[1].horzphase); + frontend->data->ch_phase[ch1_phase_idx]); regmap_write(frontend->regs, SUN4I_FRONTEND_CH0_VERTPHASE0_REG, - frontend->data->ch_phase[0].vertphase[0]); + frontend->data->ch_phase[0]); regmap_write(frontend->regs, SUN4I_FRONTEND_CH1_VERTPHASE0_REG, - frontend->data->ch_phase[1].vertphase[0]); + frontend->data->ch_phase[ch1_phase_idx]); regmap_write(frontend->regs, SUN4I_FRONTEND_CH0_VERTPHASE1_REG, - frontend->data->ch_phase[0].vertphase[1]); + frontend->data->ch_phase[0]); regmap_write(frontend->regs, SUN4I_FRONTEND_CH1_VERTPHASE1_REG, - frontend->data->ch_phase[1].vertphase[1]); + frontend->data->ch_phase[ch1_phase_idx]); /* * Checking the input format is sufficient since we currently only @@ -687,30 +689,12 @@ }; static const struct sun4i_frontend_data sun4i_a10_frontend = { - .ch_phase = { - { - .horzphase = 0, - .vertphase = { 0, 0 }, - }, - { - .horzphase = 0xfc000, - .vertphase = { 0xfc000, 0xfc000 }, - }, - }, + .ch_phase = { 0x000, 0xfc000 }, .has_coef_rdy = true, }; static const struct sun4i_frontend_data sun8i_a33_frontend = { - .ch_phase = { - { - .horzphase = 0x400, - .vertphase = { 0x400, 0x400 }, - }, - { - .horzphase = 0x400, - .vertphase = { 0x400, 0x400 }, - }, - }, + .ch_phase = { 0x400, 0xfc400 }, .has_coef_access_ctrl = true, }; --- linux-azure-5.8-5.8.0.orig/drivers/gpu/drm/sun4i/sun4i_frontend.h +++ linux-azure-5.8-5.8.0/drivers/gpu/drm/sun4i/sun4i_frontend.h @@ -115,11 +115,7 @@ struct sun4i_frontend_data { bool has_coef_access_ctrl; bool has_coef_rdy; - - struct { - u32 horzphase; - u32 vertphase[2]; - } ch_phase[2]; + u32 ch_phase[2]; }; struct sun4i_frontend { --- linux-azure-5.8-5.8.0.orig/drivers/gpu/drm/sun4i/sun4i_tcon.c +++ linux-azure-5.8-5.8.0/drivers/gpu/drm/sun4i/sun4i_tcon.c @@ -571,30 +571,13 @@ if (info->bus_flags & DRM_BUS_FLAG_DE_LOW) val |= SUN4I_TCON0_IO_POL_DE_NEGATIVE; - /* - * On A20 and similar SoCs, the only way to achieve Positive Edge - * (Rising Edge), is setting dclk clock phase to 2/3(240°). - * By default TCON works in Negative Edge(Falling Edge), - * this is why phase is set to 0 in that case. - * Unfortunately there's no way to logically invert dclk through - * IO_POL register. - * The only acceptable way to work, triple checked with scope, - * is using clock phase set to 0° for Negative Edge and set to 240° - * for Positive Edge. - * On A33 and similar SoCs there would be a 90° phase option, - * but it divides also dclk by 2. - * Following code is a way to avoid quirks all around TCON - * and DOTCLOCK drivers. - */ - if (info->bus_flags & DRM_BUS_FLAG_PIXDATA_DRIVE_POSEDGE) - clk_set_phase(tcon->dclk, 240); - if (info->bus_flags & DRM_BUS_FLAG_PIXDATA_DRIVE_NEGEDGE) - clk_set_phase(tcon->dclk, 0); + val |= SUN4I_TCON0_IO_POL_DCLK_DRIVE_NEGEDGE; regmap_update_bits(tcon->regs, SUN4I_TCON0_IO_POL_REG, SUN4I_TCON0_IO_POL_HSYNC_POSITIVE | SUN4I_TCON0_IO_POL_VSYNC_POSITIVE | + SUN4I_TCON0_IO_POL_DCLK_DRIVE_NEGEDGE | SUN4I_TCON0_IO_POL_DE_NEGATIVE, val); @@ -691,6 +674,30 @@ SUN4I_TCON1_BASIC5_V_SYNC(vsync) | SUN4I_TCON1_BASIC5_H_SYNC(hsync)); + /* Setup the polarity of multiple signals */ + if (tcon->quirks->polarity_in_ch0) { + val = 0; + + if (mode->flags & DRM_MODE_FLAG_PHSYNC) + val |= SUN4I_TCON0_IO_POL_HSYNC_POSITIVE; + + if (mode->flags & DRM_MODE_FLAG_PVSYNC) + val |= SUN4I_TCON0_IO_POL_VSYNC_POSITIVE; + + regmap_write(tcon->regs, SUN4I_TCON0_IO_POL_REG, val); + } else { + /* according to vendor driver, this bit must be always set */ + val = SUN4I_TCON1_IO_POL_UNKNOWN; + + if (mode->flags & DRM_MODE_FLAG_PHSYNC) + val |= SUN4I_TCON1_IO_POL_HSYNC_POSITIVE; + + if (mode->flags & DRM_MODE_FLAG_PVSYNC) + val |= SUN4I_TCON1_IO_POL_VSYNC_POSITIVE; + + regmap_write(tcon->regs, SUN4I_TCON1_IO_POL_REG, val); + } + /* Map output pins to channel 1 */ regmap_update_bits(tcon->regs, SUN4I_TCON_GCTL_REG, SUN4I_TCON_GCTL_IOMAP_MASK, @@ -1433,14 +1440,18 @@ if (IS_ENABLED(CONFIG_DRM_SUN8I_TCON_TOP) && encoder->encoder_type == DRM_MODE_ENCODER_TMDS) { ret = sun8i_tcon_top_set_hdmi_src(&pdev->dev, id); - if (ret) + if (ret) { + put_device(&pdev->dev); return ret; + } } if (IS_ENABLED(CONFIG_DRM_SUN8I_TCON_TOP)) { ret = sun8i_tcon_top_de_config(&pdev->dev, tcon->id, id); - if (ret) + if (ret) { + put_device(&pdev->dev); return ret; + } } return 0; @@ -1515,6 +1526,7 @@ static const struct sun4i_tcon_quirks sun8i_r40_tv_quirks = { .has_channel_1 = true, + .polarity_in_ch0 = true, .set_mux = sun8i_r40_tcon_tv_set_mux, }; --- linux-azure-5.8-5.8.0.orig/drivers/gpu/drm/sun4i/sun4i_tcon.h +++ linux-azure-5.8-5.8.0/drivers/gpu/drm/sun4i/sun4i_tcon.h @@ -113,6 +113,7 @@ #define SUN4I_TCON0_IO_POL_REG 0x88 #define SUN4I_TCON0_IO_POL_DCLK_PHASE(phase) ((phase & 3) << 28) #define SUN4I_TCON0_IO_POL_DE_NEGATIVE BIT(27) +#define SUN4I_TCON0_IO_POL_DCLK_DRIVE_NEGEDGE BIT(26) #define SUN4I_TCON0_IO_POL_HSYNC_POSITIVE BIT(25) #define SUN4I_TCON0_IO_POL_VSYNC_POSITIVE BIT(24) @@ -153,6 +154,11 @@ #define SUN4I_TCON1_BASIC5_V_SYNC(height) (((height) - 1) & 0x3ff) #define SUN4I_TCON1_IO_POL_REG 0xf0 +/* there is no documentation about this bit */ +#define SUN4I_TCON1_IO_POL_UNKNOWN BIT(26) +#define SUN4I_TCON1_IO_POL_HSYNC_POSITIVE BIT(25) +#define SUN4I_TCON1_IO_POL_VSYNC_POSITIVE BIT(24) + #define SUN4I_TCON1_IO_TRI_REG 0xf4 #define SUN4I_TCON_ECC_FIFO_REG 0xf8 @@ -235,6 +241,7 @@ bool needs_de_be_mux; /* sun6i needs mux to select backend */ bool needs_edp_reset; /* a80 edp reset needed for tcon0 access */ bool supports_lvds; /* Does the TCON support an LVDS output? */ + bool polarity_in_ch0; /* some tcon1 channels have polarity bits in tcon0 pol register */ u8 dclk_min_div; /* minimum divider for TCON0 DCLK */ /* callback to handle tcon muxing options */ --- linux-azure-5.8-5.8.0.orig/drivers/gpu/drm/sun4i/sun6i_mipi_dsi.c +++ linux-azure-5.8-5.8.0/drivers/gpu/drm/sun4i/sun6i_mipi_dsi.c @@ -889,7 +889,7 @@ regmap_write(dsi->regs, SUN6I_DSI_CMD_TX_REG(0), sun6i_dsi_dcs_build_pkt_hdr(dsi, msg)); - bounce = kzalloc(msg->tx_len + sizeof(crc), GFP_KERNEL); + bounce = kzalloc(ALIGN(msg->tx_len + sizeof(crc), 4), GFP_KERNEL); if (!bounce) return -ENOMEM; @@ -900,7 +900,7 @@ memcpy((u8 *)bounce + msg->tx_len, &crc, sizeof(crc)); len += sizeof(crc); - regmap_bulk_write(dsi->regs, SUN6I_DSI_CMD_TX_REG(1), bounce, len); + regmap_bulk_write(dsi->regs, SUN6I_DSI_CMD_TX_REG(1), bounce, DIV_ROUND_UP(len, 4)); regmap_write(dsi->regs, SUN6I_DSI_CMD_CTL_REG, len + 4 - 1); kfree(bounce); --- linux-azure-5.8-5.8.0.orig/drivers/gpu/drm/sun4i/sun8i_csc.h +++ linux-azure-5.8-5.8.0/drivers/gpu/drm/sun4i/sun8i_csc.h @@ -12,7 +12,7 @@ /* VI channel CSC units offsets */ #define CCSC00_OFFSET 0xAA050 -#define CCSC01_OFFSET 0xFA000 +#define CCSC01_OFFSET 0xFA050 #define CCSC10_OFFSET 0xA0000 #define CCSC11_OFFSET 0xF0000 --- linux-azure-5.8-5.8.0.orig/drivers/gpu/drm/sun4i/sun8i_dw_hdmi.c +++ linux-azure-5.8-5.8.0/drivers/gpu/drm/sun4i/sun8i_dw_hdmi.c @@ -21,8 +21,7 @@ { struct sun8i_dw_hdmi *hdmi = encoder_to_sun8i_dw_hdmi(encoder); - if (hdmi->quirks->set_rate) - clk_set_rate(hdmi->clk_tmds, mode->crtc_clock * 1000); + clk_set_rate(hdmi->clk_tmds, mode->crtc_clock * 1000); } static const struct drm_encoder_helper_funcs @@ -46,11 +45,9 @@ { /* * Controller support maximum of 594 MHz, which correlates to - * 4K@60Hz 4:4:4 or RGB. However, for frequencies greater than - * 340 MHz scrambling has to be enabled. Because scrambling is - * not yet implemented, just limit to 340 MHz for now. + * 4K@60Hz 4:4:4 or RGB. */ - if (mode->clock > 340000) + if (mode->clock > 594000) return MODE_CLOCK_HIGH; return MODE_OK; @@ -206,6 +203,7 @@ phy_node = of_parse_phandle(dev->of_node, "phys", 0); if (!phy_node) { dev_err(dev, "Can't found PHY phandle\n"); + ret = -EINVAL; goto err_disable_clk_tmds; } @@ -292,7 +290,6 @@ static const struct sun8i_dw_hdmi_quirks sun8i_a83t_quirks = { .mode_valid = sun8i_dw_hdmi_mode_valid_a83t, - .set_rate = true, }; static const struct sun8i_dw_hdmi_quirks sun50i_h6_quirks = { --- linux-azure-5.8-5.8.0.orig/drivers/gpu/drm/sun4i/sun8i_dw_hdmi.h +++ linux-azure-5.8-5.8.0/drivers/gpu/drm/sun4i/sun8i_dw_hdmi.h @@ -178,7 +178,6 @@ struct sun8i_dw_hdmi_quirks { enum drm_mode_status (*mode_valid)(struct drm_connector *connector, const struct drm_display_mode *mode); - unsigned int set_rate : 1; unsigned int use_drm_infoframe : 1; }; --- linux-azure-5.8-5.8.0.orig/drivers/gpu/drm/sun4i/sun8i_hdmi_phy.c +++ linux-azure-5.8-5.8.0/drivers/gpu/drm/sun4i/sun8i_hdmi_phy.c @@ -104,29 +104,21 @@ static const struct dw_hdmi_curr_ctrl sun50i_h6_cur_ctr[] = { /* pixelclk bpp8 bpp10 bpp12 */ - { 25175000, { 0x0000, 0x0000, 0x0000 }, }, { 27000000, { 0x0012, 0x0000, 0x0000 }, }, - { 59400000, { 0x0008, 0x0008, 0x0008 }, }, - { 72000000, { 0x0008, 0x0008, 0x001b }, }, - { 74250000, { 0x0013, 0x0013, 0x0013 }, }, - { 90000000, { 0x0008, 0x001a, 0x001b }, }, - { 118800000, { 0x001b, 0x001a, 0x001b }, }, - { 144000000, { 0x001b, 0x001a, 0x0034 }, }, - { 180000000, { 0x001b, 0x0033, 0x0034 }, }, - { 216000000, { 0x0036, 0x0033, 0x0034 }, }, - { 237600000, { 0x0036, 0x0033, 0x001b }, }, - { 288000000, { 0x0036, 0x001b, 0x001b }, }, - { 297000000, { 0x0019, 0x001b, 0x0019 }, }, - { 330000000, { 0x0036, 0x001b, 0x001b }, }, - { 594000000, { 0x003f, 0x001b, 0x001b }, }, + { 74250000, { 0x0013, 0x001a, 0x001b }, }, + { 148500000, { 0x0019, 0x0033, 0x0034 }, }, + { 297000000, { 0x0019, 0x001b, 0x001b }, }, + { 594000000, { 0x0010, 0x001b, 0x001b }, }, { ~0UL, { 0x0000, 0x0000, 0x0000 }, } }; static const struct dw_hdmi_phy_config sun50i_h6_phy_config[] = { /*pixelclk symbol term vlev*/ - { 74250000, 0x8009, 0x0004, 0x0232}, - { 148500000, 0x8029, 0x0004, 0x0273}, - { 594000000, 0x8039, 0x0004, 0x014a}, + { 27000000, 0x8009, 0x0007, 0x02b0 }, + { 74250000, 0x8009, 0x0006, 0x022d }, + { 148500000, 0x8029, 0x0006, 0x0270 }, + { 297000000, 0x8039, 0x0005, 0x01ab }, + { 594000000, 0x8029, 0x0000, 0x008a }, { ~0UL, 0x0000, 0x0000, 0x0000} }; --- linux-azure-5.8-5.8.0.orig/drivers/gpu/drm/sun4i/sun8i_mixer.c +++ linux-azure-5.8-5.8.0/drivers/gpu/drm/sun4i/sun8i_mixer.c @@ -307,7 +307,7 @@ .reg_bits = 32, .val_bits = 32, .reg_stride = 4, - .max_register = 0xbfffc, /* guessed */ + .max_register = 0xffffc, /* guessed */ }; static int sun8i_mixer_of_get_id(struct device_node *node) --- linux-azure-5.8-5.8.0.orig/drivers/gpu/drm/sun4i/sun8i_vi_layer.c +++ linux-azure-5.8-5.8.0/drivers/gpu/drm/sun4i/sun8i_vi_layer.c @@ -211,7 +211,7 @@ return 0; } -static bool sun8i_vi_layer_get_csc_mode(const struct drm_format_info *format) +static u32 sun8i_vi_layer_get_csc_mode(const struct drm_format_info *format) { if (!format->is_yuv) return SUN8I_CSC_MODE_OFF; --- linux-azure-5.8-5.8.0.orig/drivers/gpu/drm/tegra/dc.c +++ linux-azure-5.8-5.8.0/drivers/gpu/drm/tegra/dc.c @@ -1169,7 +1169,6 @@ tegra_crtc_atomic_destroy_state(crtc, crtc->state); __drm_atomic_helper_crtc_reset(crtc, &state->base); - drm_crtc_vblank_reset(crtc); } static struct drm_crtc_state * @@ -2157,7 +2156,7 @@ struct device *dev = client->dev; int err; - err = pm_runtime_get_sync(dev); + err = pm_runtime_resume_and_get(dev); if (err < 0) { dev_err(dev, "failed to get runtime PM: %d\n", err); return err; --- linux-azure-5.8-5.8.0.orig/drivers/gpu/drm/tegra/drm.c +++ linux-azure-5.8-5.8.0/drivers/gpu/drm/tegra/drm.c @@ -90,7 +90,7 @@ if (!fpriv) return -ENOMEM; - idr_init(&fpriv->contexts); + idr_init_base(&fpriv->contexts, 1); mutex_init(&fpriv->lock); filp->driver_priv = fpriv; --- linux-azure-5.8-5.8.0.orig/drivers/gpu/drm/tegra/dsi.c +++ linux-azure-5.8-5.8.0/drivers/gpu/drm/tegra/dsi.c @@ -1106,7 +1106,7 @@ struct device *dev = client->dev; int err; - err = pm_runtime_get_sync(dev); + err = pm_runtime_resume_and_get(dev); if (err < 0) { dev_err(dev, "failed to get runtime PM: %d\n", err); return err; --- linux-azure-5.8-5.8.0.orig/drivers/gpu/drm/tegra/hdmi.c +++ linux-azure-5.8-5.8.0/drivers/gpu/drm/tegra/hdmi.c @@ -1510,7 +1510,7 @@ struct device *dev = client->dev; int err; - err = pm_runtime_get_sync(dev); + err = pm_runtime_resume_and_get(dev); if (err < 0) { dev_err(dev, "failed to get runtime PM: %d\n", err); return err; --- linux-azure-5.8-5.8.0.orig/drivers/gpu/drm/tegra/hub.c +++ linux-azure-5.8-5.8.0/drivers/gpu/drm/tegra/hub.c @@ -789,7 +789,7 @@ unsigned int i; int err; - err = pm_runtime_get_sync(dev); + err = pm_runtime_resume_and_get(dev); if (err < 0) { dev_err(dev, "failed to get runtime PM: %d\n", err); return err; --- linux-azure-5.8-5.8.0.orig/drivers/gpu/drm/tegra/sor.c +++ linux-azure-5.8-5.8.0/drivers/gpu/drm/tegra/sor.c @@ -3145,6 +3145,7 @@ if (err < 0) { dev_err(sor->dev, "failed to deassert SOR reset: %d\n", err); + clk_disable_unprepare(sor->clk); return err; } @@ -3152,12 +3153,17 @@ } err = clk_prepare_enable(sor->clk_safe); - if (err < 0) + if (err < 0) { + clk_disable_unprepare(sor->clk); return err; + } err = clk_prepare_enable(sor->clk_dp); - if (err < 0) + if (err < 0) { + clk_disable_unprepare(sor->clk_safe); + clk_disable_unprepare(sor->clk); return err; + } return 0; } @@ -3214,7 +3220,7 @@ struct device *dev = client->dev; int err; - err = pm_runtime_get_sync(dev); + err = pm_runtime_resume_and_get(dev); if (err < 0) { dev_err(dev, "failed to get runtime PM: %d\n", err); return err; --- linux-azure-5.8-5.8.0.orig/drivers/gpu/drm/tegra/vic.c +++ linux-azure-5.8-5.8.0/drivers/gpu/drm/tegra/vic.c @@ -314,7 +314,7 @@ struct vic *vic = to_vic(client); int err; - err = pm_runtime_get_sync(vic->dev); + err = pm_runtime_resume_and_get(vic->dev); if (err < 0) return err; --- linux-azure-5.8-5.8.0.orig/drivers/gpu/drm/tidss/tidss_crtc.c +++ linux-azure-5.8-5.8.0/drivers/gpu/drm/tidss/tidss_crtc.c @@ -352,8 +352,7 @@ return; } - crtc->state = &tcrtc->base; - crtc->state->crtc = crtc; + __drm_atomic_helper_crtc_reset(crtc, &tcrtc->base); } static struct drm_crtc_state *tidss_crtc_duplicate_state(struct drm_crtc *crtc) --- linux-azure-5.8-5.8.0.orig/drivers/gpu/drm/tidss/tidss_kms.c +++ linux-azure-5.8-5.8.0/drivers/gpu/drm/tidss/tidss_kms.c @@ -154,7 +154,7 @@ break; case DISPC_VP_DPI: enc_type = DRM_MODE_ENCODER_DPI; - conn_type = DRM_MODE_CONNECTOR_LVDS; + conn_type = DRM_MODE_CONNECTOR_DPI; break; default: WARN_ON(1); @@ -253,7 +253,6 @@ int tidss_modeset_init(struct tidss_device *tidss) { struct drm_device *ddev = &tidss->ddev; - unsigned int i; int ret; dev_dbg(tidss->dev, "%s\n", __func__); @@ -278,10 +277,6 @@ if (ret) return ret; - /* Start with vertical blanking interrupt reporting disabled. */ - for (i = 0; i < tidss->num_crtcs; ++i) - drm_crtc_vblank_reset(tidss->crtcs[i]); - drm_mode_config_reset(ddev); dev_dbg(tidss->dev, "%s done\n", __func__); --- linux-azure-5.8-5.8.0.orig/drivers/gpu/drm/tilcdc/tilcdc_panel.c +++ linux-azure-5.8-5.8.0/drivers/gpu/drm/tilcdc/tilcdc_panel.c @@ -139,12 +139,16 @@ int i; for (i = 0; i < timings->num_timings; i++) { - struct drm_display_mode *mode = drm_mode_create(dev); + struct drm_display_mode *mode; struct videomode vm; if (videomode_from_timings(timings, &vm, i)) break; + mode = drm_mode_create(dev); + if (!mode) + break; + drm_display_mode_from_videomode(&vm, mode); mode->type = DRM_MODE_TYPE_DRIVER; --- linux-azure-5.8-5.8.0.orig/drivers/gpu/drm/ttm/ttm_bo.c +++ linux-azure-5.8-5.8.0/drivers/gpu/drm/ttm/ttm_bo.c @@ -708,7 +708,7 @@ /* Don't evict this BO if it's outside of the * requested placement range */ - if (place->fpfn >= (bo->mem.start + bo->mem.size) || + if (place->fpfn >= (bo->mem.start + bo->mem.num_pages) || (place->lpfn && place->lpfn <= bo->mem.start)) return false; --- linux-azure-5.8-5.8.0.orig/drivers/gpu/drm/ttm/ttm_bo_vm.c +++ linux-azure-5.8-5.8.0/drivers/gpu/drm/ttm/ttm_bo_vm.c @@ -505,8 +505,10 @@ int ttm_bo_vm_access(struct vm_area_struct *vma, unsigned long addr, void *buf, int len, int write) { - unsigned long offset = (addr) - vma->vm_start; struct ttm_buffer_object *bo = vma->vm_private_data; + unsigned long offset = (addr) - vma->vm_start + + ((vma->vm_pgoff - drm_vma_node_start(&bo->base.vma_node)) + << PAGE_SHIFT); int ret; if (len < 1 || (offset + len) >> PAGE_SHIFT > bo->num_pages) --- linux-azure-5.8-5.8.0.orig/drivers/gpu/drm/ttm/ttm_tt.c +++ linux-azure-5.8-5.8.0/drivers/gpu/drm/ttm/ttm_tt.c @@ -242,7 +242,6 @@ ttm_tt_init_fields(ttm, bo, page_flags); if (ttm_tt_alloc_page_directory(ttm)) { - ttm_tt_destroy(ttm); pr_err("Failed allocating page table\n"); return -ENOMEM; } @@ -266,7 +265,6 @@ INIT_LIST_HEAD(&ttm_dma->pages_list); if (ttm_dma_tt_alloc_page_directory(ttm_dma)) { - ttm_tt_destroy(ttm); pr_err("Failed allocating page table\n"); return -ENOMEM; } @@ -288,7 +286,6 @@ else ret = ttm_dma_tt_alloc_page_directory(ttm_dma); if (ret) { - ttm_tt_destroy(ttm); pr_err("Failed allocating page table\n"); return -ENOMEM; } --- linux-azure-5.8-5.8.0.orig/drivers/gpu/drm/tve200/tve200_display.c +++ linux-azure-5.8-5.8.0/drivers/gpu/drm/tve200/tve200_display.c @@ -14,6 +14,7 @@ #include #include #include +#include #include #include @@ -130,9 +131,25 @@ struct drm_connector *connector = priv->connector; u32 format = fb->format->format; u32 ctrl1 = 0; + int retries; clk_prepare_enable(priv->clk); + /* Reset the TVE200 and wait for it to come back online */ + writel(TVE200_CTRL_4_RESET, priv->regs + TVE200_CTRL_4); + for (retries = 0; retries < 5; retries++) { + usleep_range(30000, 50000); + if (readl(priv->regs + TVE200_CTRL_4) & TVE200_CTRL_4_RESET) + continue; + else + break; + } + if (retries == 5 && + readl(priv->regs + TVE200_CTRL_4) & TVE200_CTRL_4_RESET) { + dev_err(drm->dev, "can't get hardware out of reset\n"); + return; + } + /* Function 1 */ ctrl1 |= TVE200_CTRL_CSMODE; /* Interlace mode for CCIR656: parameterize? */ @@ -230,8 +247,9 @@ drm_crtc_vblank_off(crtc); - /* Disable and Power Down */ + /* Disable put into reset and Power Down */ writel(0, priv->regs + TVE200_CTRL); + writel(TVE200_CTRL_4_RESET, priv->regs + TVE200_CTRL_4); clk_disable_unprepare(priv->clk); } @@ -279,6 +297,8 @@ struct drm_device *drm = crtc->dev; struct tve200_drm_dev_private *priv = drm->dev_private; + /* Clear any IRQs and enable */ + writel(0xFF, priv->regs + TVE200_INT_CLR); writel(TVE200_INT_V_STATUS, priv->regs + TVE200_INT_EN); return 0; } --- linux-azure-5.8-5.8.0.orig/drivers/gpu/drm/tve200/tve200_drv.c +++ linux-azure-5.8-5.8.0/drivers/gpu/drm/tve200/tve200_drv.c @@ -210,8 +210,8 @@ } irq = platform_get_irq(pdev, 0); - if (!irq) { - ret = -EINVAL; + if (irq < 0) { + ret = irq; goto clk_disable; } --- linux-azure-5.8-5.8.0.orig/drivers/gpu/drm/udl/udl_modeset.c +++ linux-azure-5.8-5.8.0/drivers/gpu/drm/udl/udl_modeset.c @@ -303,8 +303,10 @@ } urb = udl_get_urb(dev); - if (!urb) + if (!urb) { + ret = -ENOMEM; goto out_drm_gem_shmem_vunmap; + } cmd = urb->transfer_buffer; for (i = clip.y1; i < clip.y2; i++) { --- linux-azure-5.8-5.8.0.orig/drivers/gpu/drm/v3d/v3d_gem.c +++ linux-azure-5.8-5.8.0/drivers/gpu/drm/v3d/v3d_gem.c @@ -568,7 +568,6 @@ ret = v3d_job_init(v3d, file_priv, &bin->base, v3d_job_free, args->in_sync_bcl); if (ret) { - kfree(bin); v3d_job_put(&render->base); kfree(bin); return ret; --- linux-azure-5.8-5.8.0.orig/drivers/gpu/drm/vc4/vc4_bo.c +++ linux-azure-5.8-5.8.0/drivers/gpu/drm/vc4/vc4_bo.c @@ -1005,6 +1005,7 @@ return 0; } +static void vc4_bo_cache_destroy(struct drm_device *dev, void *unused); int vc4_bo_cache_init(struct drm_device *dev) { struct vc4_dev *vc4 = to_vc4_dev(dev); @@ -1033,10 +1034,10 @@ INIT_WORK(&vc4->bo_cache.time_work, vc4_bo_cache_time_work); timer_setup(&vc4->bo_cache.time_timer, vc4_bo_cache_time_timer, 0); - return 0; + return drmm_add_action_or_reset(dev, vc4_bo_cache_destroy, NULL); } -void vc4_bo_cache_destroy(struct drm_device *dev) +static void vc4_bo_cache_destroy(struct drm_device *dev, void *unused) { struct vc4_dev *vc4 = to_vc4_dev(dev); int i; --- linux-azure-5.8-5.8.0.orig/drivers/gpu/drm/vc4/vc4_drv.c +++ linux-azure-5.8-5.8.0/drivers/gpu/drm/vc4/vc4_drv.c @@ -306,7 +306,7 @@ component_unbind_all(dev, drm); gem_destroy: vc4_gem_destroy(drm); - vc4_bo_cache_destroy(drm); + drm_mode_config_cleanup(drm); dev_put: drm_dev_put(drm); return ret; --- linux-azure-5.8-5.8.0.orig/drivers/gpu/drm/vc4/vc4_drv.h +++ linux-azure-5.8-5.8.0/drivers/gpu/drm/vc4/vc4_drv.h @@ -12,6 +12,7 @@ #include #include #include +#include #include #include @@ -744,7 +745,6 @@ struct sg_table *sgt); void *vc4_prime_vmap(struct drm_gem_object *obj); int vc4_bo_cache_init(struct drm_device *dev); -void vc4_bo_cache_destroy(struct drm_device *dev); int vc4_bo_inc_usecnt(struct vc4_bo *bo); void vc4_bo_dec_usecnt(struct vc4_bo *bo); void vc4_bo_add_to_purgeable_pool(struct vc4_bo *bo); --- linux-azure-5.8-5.8.0.orig/drivers/gpu/drm/vc4/vc4_hdmi.c +++ linux-azure-5.8-5.8.0/drivers/gpu/drm/vc4/vc4_hdmi.c @@ -1117,6 +1117,7 @@ card->num_links = 1; card->name = "vc4-hdmi"; card->dev = dev; + card->owner = THIS_MODULE; /* * Be careful, snd_soc_register_card() calls dev_set_drvdata() and --- linux-azure-5.8-5.8.0.orig/drivers/gpu/drm/vc4/vc4_plane.c +++ linux-azure-5.8-5.8.0/drivers/gpu/drm/vc4/vc4_plane.c @@ -205,7 +205,7 @@ __drm_atomic_helper_plane_reset(plane, &vc4_state->base); } -static void vc4_dlist_write(struct vc4_plane_state *vc4_state, u32 val) +static void vc4_dlist_counter_increment(struct vc4_plane_state *vc4_state) { if (vc4_state->dlist_count == vc4_state->dlist_size) { u32 new_size = max(4u, vc4_state->dlist_count * 2); @@ -220,7 +220,15 @@ vc4_state->dlist_size = new_size; } - vc4_state->dlist[vc4_state->dlist_count++] = val; + vc4_state->dlist_count++; +} + +static void vc4_dlist_write(struct vc4_plane_state *vc4_state, u32 val) +{ + unsigned int idx = vc4_state->dlist_count; + + vc4_dlist_counter_increment(vc4_state); + vc4_state->dlist[idx] = val; } /* Returns the scl0/scl1 field based on whether the dimensions need to @@ -871,8 +879,10 @@ * be set when calling vc4_plane_allocate_lbm(). */ if (vc4_state->y_scaling[0] != VC4_SCALING_NONE || - vc4_state->y_scaling[1] != VC4_SCALING_NONE) - vc4_state->lbm_offset = vc4_state->dlist_count++; + vc4_state->y_scaling[1] != VC4_SCALING_NONE) { + vc4_state->lbm_offset = vc4_state->dlist_count; + vc4_dlist_counter_increment(vc4_state); + } if (num_planes > 1) { /* Emit Cb/Cr as channel 0 and Y as channel --- linux-azure-5.8-5.8.0.orig/drivers/gpu/drm/vgem/vgem_drv.c +++ linux-azure-5.8-5.8.0/drivers/gpu/drm/vgem/vgem_drv.c @@ -230,32 +230,6 @@ return 0; } -static int vgem_gem_dumb_map(struct drm_file *file, struct drm_device *dev, - uint32_t handle, uint64_t *offset) -{ - struct drm_gem_object *obj; - int ret; - - obj = drm_gem_object_lookup(file, handle); - if (!obj) - return -ENOENT; - - if (!obj->filp) { - ret = -EINVAL; - goto unref; - } - - ret = drm_gem_create_mmap_offset(obj); - if (ret) - goto unref; - - *offset = drm_vma_node_offset_addr(&obj->vma_node); -unref: - drm_gem_object_put_unlocked(obj); - - return ret; -} - static struct drm_ioctl_desc vgem_ioctls[] = { DRM_IOCTL_DEF_DRV(VGEM_FENCE_ATTACH, vgem_fence_attach_ioctl, DRM_RENDER_ALLOW), DRM_IOCTL_DEF_DRV(VGEM_FENCE_SIGNAL, vgem_fence_signal_ioctl, DRM_RENDER_ALLOW), @@ -446,7 +420,6 @@ .fops = &vgem_driver_fops, .dumb_create = vgem_gem_dumb_create, - .dumb_map_offset = vgem_gem_dumb_map, .prime_handle_to_fd = drm_gem_prime_handle_to_fd, .prime_fd_to_handle = drm_gem_prime_fd_to_handle, @@ -498,8 +471,8 @@ out_put: drm_dev_put(&vgem_device->drm); + platform_device_unregister(vgem_device->platform); return ret; - out_unregister: platform_device_unregister(vgem_device->platform); out_free: --- linux-azure-5.8-5.8.0.orig/drivers/gpu/drm/virtio/virtgpu_display.c +++ linux-azure-5.8-5.8.0/drivers/gpu/drm/virtio/virtgpu_display.c @@ -123,6 +123,17 @@ static void virtio_gpu_crtc_atomic_flush(struct drm_crtc *crtc, struct drm_crtc_state *old_state) { + struct virtio_gpu_output *output = drm_crtc_to_virtio_gpu_output(crtc); + + /* + * virtio-gpu can't do modeset and plane update operations + * independent from each other. So the actual modeset happens + * in the plane update callback, and here we just check + * whenever we must force the modeset. + */ + if (drm_atomic_crtc_needs_modeset(crtc->state)) { + output->needs_modeset = true; + } } static const struct drm_crtc_helper_funcs virtio_gpu_crtc_helper_funcs = { --- linux-azure-5.8-5.8.0.orig/drivers/gpu/drm/virtio/virtgpu_drv.h +++ linux-azure-5.8-5.8.0/drivers/gpu/drm/virtio/virtgpu_drv.h @@ -138,6 +138,7 @@ int cur_x; int cur_y; bool enabled; + bool needs_modeset; }; #define drm_crtc_to_virtio_gpu_output(x) \ container_of(x, struct virtio_gpu_output, crtc) --- linux-azure-5.8-5.8.0.orig/drivers/gpu/drm/virtio/virtgpu_gem.c +++ linux-azure-5.8-5.8.0/drivers/gpu/drm/virtio/virtgpu_gem.c @@ -39,9 +39,6 @@ int ret; u32 handle; - if (vgdev->has_virgl_3d) - virtio_gpu_create_context(dev, file); - ret = virtio_gpu_object_create(vgdev, params, &obj, NULL); if (ret < 0) return ret; @@ -119,6 +116,11 @@ if (!vgdev->has_virgl_3d) goto out_notify; + /* the context might still be missing when the first ioctl is + * DRM_IOCTL_MODE_CREATE_DUMB or DRM_IOCTL_PRIME_FD_TO_HANDLE + */ + virtio_gpu_create_context(obj->dev, file); + objs = virtio_gpu_array_alloc(1); if (!objs) return -ENOMEM; --- linux-azure-5.8-5.8.0.orig/drivers/gpu/drm/virtio/virtgpu_ioctl.c +++ linux-azure-5.8-5.8.0/drivers/gpu/drm/virtio/virtgpu_ioctl.c @@ -179,6 +179,7 @@ virtio_gpu_cmd_submit(vgdev, buf, exbuf->size, vfpriv->ctx_id, buflist, out_fence); + dma_fence_put(&out_fence->f); virtio_gpu_notify(vgdev); return 0; --- linux-azure-5.8-5.8.0.orig/drivers/gpu/drm/virtio/virtgpu_kms.c +++ linux-azure-5.8-5.8.0/drivers/gpu/drm/virtio/virtgpu_kms.c @@ -80,8 +80,10 @@ vgdev->capsets[i].id > 0, 5 * HZ); if (ret == 0) { DRM_ERROR("timed out waiting for cap set %d\n", i); + spin_lock(&vgdev->display_info_lock); kfree(vgdev->capsets); vgdev->capsets = NULL; + spin_unlock(&vgdev->display_info_lock); return; } DRM_INFO("cap set %d: id %d, max-version %d, max-size %d\n", --- linux-azure-5.8-5.8.0.orig/drivers/gpu/drm/virtio/virtgpu_object.c +++ linux-azure-5.8-5.8.0/drivers/gpu/drm/virtio/virtgpu_object.c @@ -79,6 +79,7 @@ } sg_free_table(shmem->pages); + kfree(shmem->pages); shmem->pages = NULL; drm_gem_shmem_unpin(&bo->base.base); } --- linux-azure-5.8-5.8.0.orig/drivers/gpu/drm/virtio/virtgpu_plane.c +++ linux-azure-5.8-5.8.0/drivers/gpu/drm/virtio/virtgpu_plane.c @@ -163,7 +163,9 @@ plane->state->src_w != old_state->src_w || plane->state->src_h != old_state->src_h || plane->state->src_x != old_state->src_x || - plane->state->src_y != old_state->src_y) { + plane->state->src_y != old_state->src_y || + output->needs_modeset) { + output->needs_modeset = false; DRM_DEBUG("handle 0x%x, crtc %dx%d+%d+%d, src %dx%d+%d+%d\n", bo->hw_res_handle, plane->state->crtc_w, plane->state->crtc_h, --- linux-azure-5.8-5.8.0.orig/drivers/gpu/drm/virtio/virtgpu_vq.c +++ linux-azure-5.8-5.8.0/drivers/gpu/drm/virtio/virtgpu_vq.c @@ -684,9 +684,13 @@ int i = le32_to_cpu(cmd->capset_index); spin_lock(&vgdev->display_info_lock); - vgdev->capsets[i].id = le32_to_cpu(resp->capset_id); - vgdev->capsets[i].max_version = le32_to_cpu(resp->capset_max_version); - vgdev->capsets[i].max_size = le32_to_cpu(resp->capset_max_size); + if (vgdev->capsets) { + vgdev->capsets[i].id = le32_to_cpu(resp->capset_id); + vgdev->capsets[i].max_version = le32_to_cpu(resp->capset_max_version); + vgdev->capsets[i].max_size = le32_to_cpu(resp->capset_max_size); + } else { + DRM_ERROR("invalid capset memory."); + } spin_unlock(&vgdev->display_info_lock); wake_up(&vgdev->resp_wq); } --- linux-azure-5.8-5.8.0.orig/drivers/gpu/drm/vkms/vkms_composer.c +++ linux-azure-5.8-5.8.0/drivers/gpu/drm/vkms/vkms_composer.c @@ -33,7 +33,7 @@ + (i * composer->pitch) + (j * composer->cpp); /* XRGB format ignores Alpha channel */ - memset(vaddr_out + src_offset + 24, 0, 8); + bitmap_clear(vaddr_out + src_offset, 24, 8); crc = crc32_le(crc, vaddr_out + src_offset, sizeof(u32)); } --- linux-azure-5.8-5.8.0.orig/drivers/gpu/drm/vkms/vkms_crtc.c +++ linux-azure-5.8-5.8.0/drivers/gpu/drm/vkms/vkms_crtc.c @@ -86,6 +86,11 @@ struct vkms_output *output = &vkmsdev->output; struct drm_vblank_crtc *vblank = &dev->vblank[pipe]; + if (!READ_ONCE(vblank->enabled)) { + *vblank_time = ktime_get(); + return true; + } + *vblank_time = READ_ONCE(output->vblank_hrtimer.node.expires); if (WARN_ON(*vblank_time == vblank->time)) --- linux-azure-5.8-5.8.0.orig/drivers/gpu/drm/vkms/vkms_drv.c +++ linux-azure-5.8-5.8.0/drivers/gpu/drm/vkms/vkms_drv.c @@ -188,8 +188,8 @@ out_put: drm_dev_put(&vkms_device->drm); + platform_device_unregister(vkms_device->platform); return ret; - out_unregister: platform_device_unregister(vkms_device->platform); out_free: --- linux-azure-5.8-5.8.0.orig/drivers/gpu/drm/vmwgfx/vmwgfx_kms.c +++ linux-azure-5.8-5.8.0/drivers/gpu/drm/vmwgfx/vmwgfx_kms.c @@ -2578,7 +2578,7 @@ ++i; } - if (i != unit) { + if (&con->head == &dev_priv->dev->mode_config.connector_list) { DRM_ERROR("Could not find initial display unit.\n"); ret = -EINVAL; goto out_unlock; @@ -2602,13 +2602,13 @@ break; } - if (mode->type & DRM_MODE_TYPE_PREFERRED) - *p_mode = mode; - else { + if (&mode->head == &con->modes) { WARN_ONCE(true, "Could not find initial preferred mode.\n"); *p_mode = list_first_entry(&con->modes, struct drm_display_mode, head); + } else { + *p_mode = mode; } out_unlock: --- linux-azure-5.8-5.8.0.orig/drivers/gpu/drm/vmwgfx/vmwgfx_ldu.c +++ linux-azure-5.8-5.8.0/drivers/gpu/drm/vmwgfx/vmwgfx_ldu.c @@ -81,7 +81,7 @@ struct vmw_legacy_display_unit *entry; struct drm_framebuffer *fb = NULL; struct drm_crtc *crtc = NULL; - int i = 0; + int i; /* If there is no display topology the host just assumes * that the guest will set the same layout as the host. @@ -92,12 +92,11 @@ crtc = &entry->base.crtc; w = max(w, crtc->x + crtc->mode.hdisplay); h = max(h, crtc->y + crtc->mode.vdisplay); - i++; } if (crtc == NULL) return 0; - fb = entry->base.crtc.primary->state->fb; + fb = crtc->primary->state->fb; return vmw_kms_write_svga(dev_priv, w, h, fb->pitches[0], fb->format->cpp[0] * 8, @@ -388,8 +387,6 @@ ldu->base.is_implicit = true; /* Initialize primary plane */ - vmw_du_plane_reset(primary); - ret = drm_universal_plane_init(dev, &ldu->base.primary, 0, &vmw_ldu_plane_funcs, vmw_primary_plane_formats, @@ -403,8 +400,6 @@ drm_plane_helper_add(primary, &vmw_ldu_primary_plane_helper_funcs); /* Initialize cursor plane */ - vmw_du_plane_reset(cursor); - ret = drm_universal_plane_init(dev, &ldu->base.cursor, 0, &vmw_ldu_cursor_funcs, vmw_cursor_plane_formats, @@ -418,7 +413,6 @@ drm_plane_helper_add(cursor, &vmw_ldu_cursor_plane_helper_funcs); - vmw_du_connector_reset(connector); ret = drm_connector_init(dev, connector, &vmw_legacy_connector_funcs, DRM_MODE_CONNECTOR_VIRTUAL); if (ret) { @@ -446,7 +440,6 @@ goto err_free_encoder; } - vmw_du_crtc_reset(crtc); ret = drm_crtc_init_with_planes(dev, crtc, &ldu->base.primary, &ldu->base.cursor, &vmw_legacy_crtc_funcs, NULL); @@ -521,6 +514,8 @@ dev_priv->active_display_unit = vmw_du_legacy; + drm_mode_config_reset(dev); + DRM_INFO("Legacy Display Unit initialized\n"); return 0; --- linux-azure-5.8-5.8.0.orig/drivers/gpu/drm/vmwgfx/vmwgfx_scrn.c +++ linux-azure-5.8-5.8.0/drivers/gpu/drm/vmwgfx/vmwgfx_scrn.c @@ -859,8 +859,6 @@ sou->base.is_implicit = false; /* Initialize primary plane */ - vmw_du_plane_reset(primary); - ret = drm_universal_plane_init(dev, &sou->base.primary, 0, &vmw_sou_plane_funcs, vmw_primary_plane_formats, @@ -875,8 +873,6 @@ drm_plane_enable_fb_damage_clips(primary); /* Initialize cursor plane */ - vmw_du_plane_reset(cursor); - ret = drm_universal_plane_init(dev, &sou->base.cursor, 0, &vmw_sou_cursor_funcs, vmw_cursor_plane_formats, @@ -890,7 +886,6 @@ drm_plane_helper_add(cursor, &vmw_sou_cursor_plane_helper_funcs); - vmw_du_connector_reset(connector); ret = drm_connector_init(dev, connector, &vmw_sou_connector_funcs, DRM_MODE_CONNECTOR_VIRTUAL); if (ret) { @@ -918,8 +913,6 @@ goto err_free_encoder; } - - vmw_du_crtc_reset(crtc); ret = drm_crtc_init_with_planes(dev, crtc, &sou->base.primary, &sou->base.cursor, &vmw_screen_object_crtc_funcs, NULL); @@ -973,6 +966,8 @@ dev_priv->active_display_unit = vmw_du_screen_object; + drm_mode_config_reset(dev); + DRM_INFO("Screen Objects Display Unit initialized\n"); return 0; --- linux-azure-5.8-5.8.0.orig/drivers/gpu/drm/vmwgfx/vmwgfx_stdu.c +++ linux-azure-5.8-5.8.0/drivers/gpu/drm/vmwgfx/vmwgfx_stdu.c @@ -1738,8 +1738,6 @@ stdu->base.is_implicit = false; /* Initialize primary plane */ - vmw_du_plane_reset(primary); - ret = drm_universal_plane_init(dev, primary, 0, &vmw_stdu_plane_funcs, vmw_primary_plane_formats, @@ -1754,8 +1752,6 @@ drm_plane_enable_fb_damage_clips(primary); /* Initialize cursor plane */ - vmw_du_plane_reset(cursor); - ret = drm_universal_plane_init(dev, cursor, 0, &vmw_stdu_cursor_funcs, vmw_cursor_plane_formats, @@ -1769,8 +1765,6 @@ drm_plane_helper_add(cursor, &vmw_stdu_cursor_plane_helper_funcs); - vmw_du_connector_reset(connector); - ret = drm_connector_init(dev, connector, &vmw_stdu_connector_funcs, DRM_MODE_CONNECTOR_VIRTUAL); if (ret) { @@ -1798,7 +1792,6 @@ goto err_free_encoder; } - vmw_du_crtc_reset(crtc); ret = drm_crtc_init_with_planes(dev, crtc, &stdu->base.primary, &stdu->base.cursor, &vmw_stdu_crtc_funcs, NULL); @@ -1894,6 +1887,8 @@ } } + drm_mode_config_reset(dev); + DRM_INFO("Screen Target Display device initialized\n"); return 0; --- linux-azure-5.8-5.8.0.orig/drivers/gpu/drm/xen/xen_drm_front.c +++ linux-azure-5.8-5.8.0/drivers/gpu/drm/xen/xen_drm_front.c @@ -400,8 +400,8 @@ args->size = args->pitch * args->height; obj = xen_drm_front_gem_create(dev, args->size); - if (IS_ERR_OR_NULL(obj)) { - ret = PTR_ERR_OR_ZERO(obj); + if (IS_ERR(obj)) { + ret = PTR_ERR(obj); goto fail; } --- linux-azure-5.8-5.8.0.orig/drivers/gpu/drm/xen/xen_drm_front_gem.c +++ linux-azure-5.8-5.8.0/drivers/gpu/drm/xen/xen_drm_front_gem.c @@ -83,7 +83,7 @@ size = round_up(size, PAGE_SIZE); xen_obj = gem_create_obj(dev, size); - if (IS_ERR_OR_NULL(xen_obj)) + if (IS_ERR(xen_obj)) return xen_obj; if (drm_info->front_info->cfg.be_alloc) { @@ -117,7 +117,7 @@ */ xen_obj->num_pages = DIV_ROUND_UP(size, PAGE_SIZE); xen_obj->pages = drm_gem_get_pages(&xen_obj->base); - if (IS_ERR_OR_NULL(xen_obj->pages)) { + if (IS_ERR(xen_obj->pages)) { ret = PTR_ERR(xen_obj->pages); xen_obj->pages = NULL; goto fail; @@ -136,7 +136,7 @@ struct xen_gem_object *xen_obj; xen_obj = gem_create(dev, size); - if (IS_ERR_OR_NULL(xen_obj)) + if (IS_ERR(xen_obj)) return ERR_CAST(xen_obj); return &xen_obj->base; @@ -194,7 +194,7 @@ size = attach->dmabuf->size; xen_obj = gem_create_obj(dev, size); - if (IS_ERR_OR_NULL(xen_obj)) + if (IS_ERR(xen_obj)) return ERR_CAST(xen_obj); ret = gem_alloc_pages_array(xen_obj, size); --- linux-azure-5.8-5.8.0.orig/drivers/gpu/drm/xen/xen_drm_front_kms.c +++ linux-azure-5.8-5.8.0/drivers/gpu/drm/xen/xen_drm_front_kms.c @@ -60,7 +60,7 @@ int ret; fb = drm_gem_fb_create_with_funcs(dev, filp, mode_cmd, &fb_funcs); - if (IS_ERR_OR_NULL(fb)) + if (IS_ERR(fb)) return fb; gem_obj = fb->obj[0]; --- linux-azure-5.8-5.8.0.orig/drivers/gpu/host1x/debug.c +++ linux-azure-5.8-5.8.0/drivers/gpu/host1x/debug.c @@ -16,6 +16,8 @@ #include "debug.h" #include "channel.h" +static DEFINE_MUTEX(debug_lock); + unsigned int host1x_debug_trace_cmdbuf; static pid_t host1x_debug_force_timeout_pid; @@ -52,12 +54,14 @@ struct output *o = data; mutex_lock(&ch->cdma.lock); + mutex_lock(&debug_lock); if (show_fifo) host1x_hw_show_channel_fifo(m, ch, o); host1x_hw_show_channel_cdma(m, ch, o); + mutex_unlock(&debug_lock); mutex_unlock(&ch->cdma.lock); return 0; --- linux-azure-5.8-5.8.0.orig/drivers/gpu/host1x/job.c +++ linux-azure-5.8-5.8.0/drivers/gpu/host1x/job.c @@ -102,6 +102,7 @@ { struct host1x_client *client = job->client; struct device *dev = client->dev; + struct host1x_job_gather *g; struct iommu_domain *domain; unsigned int i; int err; @@ -184,7 +185,6 @@ } for (i = 0; i < job->num_gathers; i++) { - struct host1x_job_gather *g = &job->gathers[i]; size_t gather_size = 0; struct scatterlist *sg; struct sg_table *sgt; @@ -194,6 +194,7 @@ dma_addr_t *phys; unsigned int j; + g = &job->gathers[i]; g->bo = host1x_bo_get(g->bo); if (!g->bo) { err = -EINVAL; @@ -213,7 +214,7 @@ sgt = host1x_bo_pin(host->dev, g->bo, phys); if (IS_ERR(sgt)) { err = PTR_ERR(sgt); - goto unpin; + goto put; } if (!IS_ENABLED(CONFIG_TEGRA_HOST1X_FIREWALL) && host->domain) { @@ -226,7 +227,7 @@ host->iova_end >> shift, true); if (!alloc) { err = -ENOMEM; - goto unpin; + goto put; } err = iommu_map_sg(host->domain, @@ -235,7 +236,7 @@ if (err == 0) { __free_iova(&host->iova, alloc); err = -EINVAL; - goto unpin; + goto put; } job->unpins[job->num_unpins].size = gather_size; @@ -245,7 +246,7 @@ DMA_TO_DEVICE); if (!err) { err = -ENOMEM; - goto unpin; + goto put; } job->unpins[job->num_unpins].dir = DMA_TO_DEVICE; @@ -263,6 +264,8 @@ return 0; +put: + host1x_bo_put(g->bo); unpin: host1x_job_unpin(job); return err; --- linux-azure-5.8-5.8.0.orig/drivers/gpu/ipu-v3/ipu-common.c +++ linux-azure-5.8-5.8.0/drivers/gpu/ipu-v3/ipu-common.c @@ -124,6 +124,8 @@ case V4L2_PIX_FMT_RGBX32: case V4L2_PIX_FMT_ARGB32: case V4L2_PIX_FMT_XRGB32: + case V4L2_PIX_FMT_RGB32: + case V4L2_PIX_FMT_BGR32: return IPUV3_COLORSPACE_RGB; default: return IPUV3_COLORSPACE_UNKNOWN; --- linux-azure-5.8-5.8.0.orig/drivers/gpu/ipu-v3/ipu-image-convert.c +++ linux-azure-5.8-5.8.0/drivers/gpu/ipu-v3/ipu-image-convert.c @@ -137,6 +137,17 @@ struct ipu_image_convert_chan; struct ipu_image_convert_priv; +enum eof_irq_mask { + EOF_IRQ_IN = BIT(0), + EOF_IRQ_ROT_IN = BIT(1), + EOF_IRQ_OUT = BIT(2), + EOF_IRQ_ROT_OUT = BIT(3), +}; + +#define EOF_IRQ_COMPLETE (EOF_IRQ_IN | EOF_IRQ_OUT) +#define EOF_IRQ_ROT_COMPLETE (EOF_IRQ_IN | EOF_IRQ_OUT | \ + EOF_IRQ_ROT_IN | EOF_IRQ_ROT_OUT) + struct ipu_image_convert_ctx { struct ipu_image_convert_chan *chan; @@ -173,6 +184,9 @@ /* where to place converted tile in dest image */ unsigned int out_tile_map[MAX_TILES]; + /* mask of completed EOF irqs at every tile conversion */ + enum eof_irq_mask eof_mask; + struct list_head list; }; @@ -189,6 +203,8 @@ struct ipuv3_channel *rotation_out_chan; /* the IPU end-of-frame irqs */ + int in_eof_irq; + int rot_in_eof_irq; int out_eof_irq; int rot_out_eof_irq; @@ -1380,6 +1396,9 @@ dev_dbg(priv->ipu->dev, "%s: task %u: starting ctx %p run %p tile %u -> %u\n", __func__, chan->ic_task, ctx, run, tile, dst_tile); + /* clear EOF irq mask */ + ctx->eof_mask = 0; + if (ipu_rot_mode_is_irt(ctx->rot_mode)) { /* swap width/height for resizer */ dest_width = d_image->tile[dst_tile].height; @@ -1615,7 +1634,7 @@ } /* hold irqlock when calling */ -static irqreturn_t do_irq(struct ipu_image_convert_run *run) +static irqreturn_t do_tile_complete(struct ipu_image_convert_run *run) { struct ipu_image_convert_ctx *ctx = run->ctx; struct ipu_image_convert_chan *chan = ctx->chan; @@ -1700,6 +1719,7 @@ ctx->cur_buf_num ^= 1; } + ctx->eof_mask = 0; /* clear EOF irq mask for next tile */ ctx->next_tile++; return IRQ_HANDLED; done: @@ -1709,13 +1729,15 @@ return IRQ_WAKE_THREAD; } -static irqreturn_t norotate_irq(int irq, void *data) +static irqreturn_t eof_irq(int irq, void *data) { struct ipu_image_convert_chan *chan = data; + struct ipu_image_convert_priv *priv = chan->priv; struct ipu_image_convert_ctx *ctx; struct ipu_image_convert_run *run; + irqreturn_t ret = IRQ_HANDLED; + bool tile_complete = false; unsigned long flags; - irqreturn_t ret; spin_lock_irqsave(&chan->irqlock, flags); @@ -1728,46 +1750,33 @@ ctx = run->ctx; - if (ipu_rot_mode_is_irt(ctx->rot_mode)) { - /* this is a rotation operation, just ignore */ - spin_unlock_irqrestore(&chan->irqlock, flags); - return IRQ_HANDLED; - } - - ret = do_irq(run); -out: - spin_unlock_irqrestore(&chan->irqlock, flags); - return ret; -} - -static irqreturn_t rotate_irq(int irq, void *data) -{ - struct ipu_image_convert_chan *chan = data; - struct ipu_image_convert_priv *priv = chan->priv; - struct ipu_image_convert_ctx *ctx; - struct ipu_image_convert_run *run; - unsigned long flags; - irqreturn_t ret; - - spin_lock_irqsave(&chan->irqlock, flags); - - /* get current run and its context */ - run = chan->current_run; - if (!run) { + if (irq == chan->in_eof_irq) { + ctx->eof_mask |= EOF_IRQ_IN; + } else if (irq == chan->out_eof_irq) { + ctx->eof_mask |= EOF_IRQ_OUT; + } else if (irq == chan->rot_in_eof_irq || + irq == chan->rot_out_eof_irq) { + if (!ipu_rot_mode_is_irt(ctx->rot_mode)) { + /* this was NOT a rotation op, shouldn't happen */ + dev_err(priv->ipu->dev, + "Unexpected rotation interrupt\n"); + goto out; + } + ctx->eof_mask |= (irq == chan->rot_in_eof_irq) ? + EOF_IRQ_ROT_IN : EOF_IRQ_ROT_OUT; + } else { + dev_err(priv->ipu->dev, "Received unknown irq %d\n", irq); ret = IRQ_NONE; goto out; } - ctx = run->ctx; - - if (!ipu_rot_mode_is_irt(ctx->rot_mode)) { - /* this was NOT a rotation operation, shouldn't happen */ - dev_err(priv->ipu->dev, "Unexpected rotation interrupt\n"); - spin_unlock_irqrestore(&chan->irqlock, flags); - return IRQ_HANDLED; - } + if (ipu_rot_mode_is_irt(ctx->rot_mode)) + tile_complete = (ctx->eof_mask == EOF_IRQ_ROT_COMPLETE); + else + tile_complete = (ctx->eof_mask == EOF_IRQ_COMPLETE); - ret = do_irq(run); + if (tile_complete) + ret = do_tile_complete(run); out: spin_unlock_irqrestore(&chan->irqlock, flags); return ret; @@ -1801,6 +1810,10 @@ static void release_ipu_resources(struct ipu_image_convert_chan *chan) { + if (chan->in_eof_irq >= 0) + free_irq(chan->in_eof_irq, chan); + if (chan->rot_in_eof_irq >= 0) + free_irq(chan->rot_in_eof_irq, chan); if (chan->out_eof_irq >= 0) free_irq(chan->out_eof_irq, chan); if (chan->rot_out_eof_irq >= 0) @@ -1819,7 +1832,27 @@ chan->in_chan = chan->out_chan = chan->rotation_in_chan = chan->rotation_out_chan = NULL; - chan->out_eof_irq = chan->rot_out_eof_irq = -1; + chan->in_eof_irq = -1; + chan->rot_in_eof_irq = -1; + chan->out_eof_irq = -1; + chan->rot_out_eof_irq = -1; +} + +static int get_eof_irq(struct ipu_image_convert_chan *chan, + struct ipuv3_channel *channel) +{ + struct ipu_image_convert_priv *priv = chan->priv; + int ret, irq; + + irq = ipu_idmac_channel_irq(priv->ipu, channel, IPU_IRQ_EOF); + + ret = request_threaded_irq(irq, eof_irq, do_bh, 0, "ipu-ic", chan); + if (ret < 0) { + dev_err(priv->ipu->dev, "could not acquire irq %d\n", irq); + return ret; + } + + return irq; } static int get_ipu_resources(struct ipu_image_convert_chan *chan) @@ -1855,31 +1888,33 @@ } /* acquire the EOF interrupts */ - chan->out_eof_irq = ipu_idmac_channel_irq(priv->ipu, - chan->out_chan, - IPU_IRQ_EOF); + ret = get_eof_irq(chan, chan->in_chan); + if (ret < 0) { + chan->in_eof_irq = -1; + goto err; + } + chan->in_eof_irq = ret; - ret = request_threaded_irq(chan->out_eof_irq, norotate_irq, do_bh, - 0, "ipu-ic", chan); + ret = get_eof_irq(chan, chan->rotation_in_chan); if (ret < 0) { - dev_err(priv->ipu->dev, "could not acquire irq %d\n", - chan->out_eof_irq); - chan->out_eof_irq = -1; + chan->rot_in_eof_irq = -1; goto err; } + chan->rot_in_eof_irq = ret; - chan->rot_out_eof_irq = ipu_idmac_channel_irq(priv->ipu, - chan->rotation_out_chan, - IPU_IRQ_EOF); + ret = get_eof_irq(chan, chan->out_chan); + if (ret < 0) { + chan->out_eof_irq = -1; + goto err; + } + chan->out_eof_irq = ret; - ret = request_threaded_irq(chan->rot_out_eof_irq, rotate_irq, do_bh, - 0, "ipu-ic", chan); + ret = get_eof_irq(chan, chan->rotation_out_chan); if (ret < 0) { - dev_err(priv->ipu->dev, "could not acquire irq %d\n", - chan->rot_out_eof_irq); chan->rot_out_eof_irq = -1; goto err; } + chan->rot_out_eof_irq = ret; return 0; err: @@ -2458,6 +2493,8 @@ chan->ic_task = i; chan->priv = priv; chan->dma_ch = &image_convert_dma_chan[i]; + chan->in_eof_irq = -1; + chan->rot_in_eof_irq = -1; chan->out_eof_irq = -1; chan->rot_out_eof_irq = -1; --- linux-azure-5.8-5.8.0.orig/drivers/hid/Kconfig +++ linux-azure-5.8-5.8.0/drivers/hid/Kconfig @@ -890,6 +890,7 @@ depends on NEW_LEDS depends on LEDS_CLASS select POWER_SUPPLY + select CRC32 help Support for --- linux-azure-5.8-5.8.0.orig/drivers/hid/hid-core.c +++ linux-azure-5.8-5.8.0/drivers/hid/hid-core.c @@ -90,7 +90,7 @@ * Register a new field for this report. */ -static struct hid_field *hid_register_field(struct hid_report *report, unsigned usages, unsigned values) +static struct hid_field *hid_register_field(struct hid_report *report, unsigned usages) { struct hid_field *field; @@ -101,7 +101,7 @@ field = kzalloc((sizeof(struct hid_field) + usages * sizeof(struct hid_usage) + - values * sizeof(unsigned)), GFP_KERNEL); + usages * sizeof(unsigned)), GFP_KERNEL); if (!field) return NULL; @@ -300,7 +300,7 @@ usages = max_t(unsigned, parser->local.usage_index, parser->global.report_count); - field = hid_register_field(report, usages, parser->global.report_count); + field = hid_register_field(report, usages); if (!field) return 0; @@ -1300,6 +1300,9 @@ static s32 snto32(__u32 value, unsigned n) { + if (!value || !n) + return 0; + switch (n) { case 8: return ((__s8)value); case 16: return ((__s16)value); @@ -1598,6 +1601,17 @@ } /* + * Compute the size of a report. + */ +static size_t hid_compute_report_size(struct hid_report *report) +{ + if (report->size) + return ((report->size - 1) >> 3) + 1; + + return 0; +} + +/* * Create a report. 'data' has to be allocated using * hid_alloc_report_buf() so that it has proper size. */ @@ -1609,7 +1623,7 @@ if (report->id > 0) *data++ = report->id; - memset(data, 0, ((report->size - 1) >> 3) + 1); + memset(data, 0, hid_compute_report_size(report)); for (n = 0; n < report->maxfield; n++) hid_output_field(report->device, report->field[n], data); } @@ -1739,7 +1753,7 @@ csize--; } - rsize = ((report->size - 1) >> 3) + 1; + rsize = hid_compute_report_size(report); if (report_enum->numbered && rsize >= HID_MAX_BUFFER_SIZE) rsize = HID_MAX_BUFFER_SIZE - 1; --- linux-azure-5.8-5.8.0.orig/drivers/hid/hid-cypress.c +++ linux-azure-5.8-5.8.0/drivers/hid/hid-cypress.c @@ -23,19 +23,17 @@ #define CP_2WHEEL_MOUSE_HACK 0x02 #define CP_2WHEEL_MOUSE_HACK_ON 0x04 +#define VA_INVAL_LOGICAL_BOUNDARY 0x08 + /* * Some USB barcode readers from cypress have usage min and usage max in * the wrong order */ -static __u8 *cp_report_fixup(struct hid_device *hdev, __u8 *rdesc, +static __u8 *cp_rdesc_fixup(struct hid_device *hdev, __u8 *rdesc, unsigned int *rsize) { - unsigned long quirks = (unsigned long)hid_get_drvdata(hdev); unsigned int i; - if (!(quirks & CP_RDESC_SWAPPED_MIN_MAX)) - return rdesc; - if (*rsize < 4) return rdesc; @@ -48,6 +46,40 @@ return rdesc; } +static __u8 *va_logical_boundary_fixup(struct hid_device *hdev, __u8 *rdesc, + unsigned int *rsize) +{ + /* + * Varmilo VA104M (with VID Cypress and device ID 07B1) incorrectly + * reports Logical Minimum of its Consumer Control device as 572 + * (0x02 0x3c). Fix this by setting its Logical Minimum to zero. + */ + if (*rsize == 25 && + rdesc[0] == 0x05 && rdesc[1] == 0x0c && + rdesc[2] == 0x09 && rdesc[3] == 0x01 && + rdesc[6] == 0x19 && rdesc[7] == 0x00 && + rdesc[11] == 0x16 && rdesc[12] == 0x3c && rdesc[13] == 0x02) { + hid_info(hdev, + "fixing up varmilo VA104M consumer control report descriptor\n"); + rdesc[12] = 0x00; + rdesc[13] = 0x00; + } + return rdesc; +} + +static __u8 *cp_report_fixup(struct hid_device *hdev, __u8 *rdesc, + unsigned int *rsize) +{ + unsigned long quirks = (unsigned long)hid_get_drvdata(hdev); + + if (quirks & CP_RDESC_SWAPPED_MIN_MAX) + rdesc = cp_rdesc_fixup(hdev, rdesc, rsize); + if (quirks & VA_INVAL_LOGICAL_BOUNDARY) + rdesc = va_logical_boundary_fixup(hdev, rdesc, rsize); + + return rdesc; +} + static int cp_input_mapped(struct hid_device *hdev, struct hid_input *hi, struct hid_field *field, struct hid_usage *usage, unsigned long **bit, int *max) @@ -128,6 +160,8 @@ .driver_data = CP_RDESC_SWAPPED_MIN_MAX }, { HID_USB_DEVICE(USB_VENDOR_ID_CYPRESS, USB_DEVICE_ID_CYPRESS_MOUSE), .driver_data = CP_2WHEEL_MOUSE_HACK }, + { HID_USB_DEVICE(USB_VENDOR_ID_CYPRESS, USB_DEVICE_ID_CYPRESS_VARMILO_VA104M_07B1), + .driver_data = VA_INVAL_LOGICAL_BOUNDARY }, { } }; MODULE_DEVICE_TABLE(hid, cp_devices); --- linux-azure-5.8-5.8.0.orig/drivers/hid/hid-elan.c +++ linux-azure-5.8-5.8.0/drivers/hid/hid-elan.c @@ -188,6 +188,7 @@ ret = input_mt_init_slots(input, ELAN_MAX_FINGERS, INPUT_MT_POINTER); if (ret) { hid_err(hdev, "Failed to init elan MT slots: %d\n", ret); + input_free_device(input); return ret; } @@ -198,6 +199,7 @@ if (ret) { hid_err(hdev, "Failed to register elan input device: %d\n", ret); + input_mt_destroy_slots(input); input_free_device(input); return ret; } --- linux-azure-5.8-5.8.0.orig/drivers/hid/hid-ids.h +++ linux-azure-5.8-5.8.0/drivers/hid/hid-ids.h @@ -331,6 +331,8 @@ #define USB_DEVICE_ID_CYPRESS_BARCODE_4 0xed81 #define USB_DEVICE_ID_CYPRESS_TRUETOUCH 0xc001 +#define USB_DEVICE_ID_CYPRESS_VARMILO_VA104M_07B1 0X07b1 + #define USB_VENDOR_ID_DATA_MODUL 0x7374 #define USB_VENDOR_ID_DATA_MODUL_EASYMAXTOUCH 0x1201 @@ -385,6 +387,7 @@ #define USB_DEVICE_ID_TOSHIBA_CLICK_L9W 0x0401 #define USB_DEVICE_ID_HP_X2 0x074d #define USB_DEVICE_ID_HP_X2_10_COVER 0x0755 +#define USB_DEVICE_ID_ASUS_UX550_TOUCHSCREEN 0x2706 #define USB_VENDOR_ID_ELECOM 0x056e #define USB_DEVICE_ID_ELECOM_BM084 0x0061 @@ -443,6 +446,10 @@ #define USB_VENDOR_ID_FRUCTEL 0x25B6 #define USB_DEVICE_ID_GAMETEL_MT_MODE 0x0002 +#define USB_VENDOR_ID_GAMEVICE 0x27F8 +#define USB_DEVICE_ID_GAMEVICE_GV186 0x0BBE +#define USB_DEVICE_ID_GAMEVICE_KISHI 0x0BBF + #define USB_VENDOR_ID_GAMERON 0x0810 #define USB_DEVICE_ID_GAMERON_DUAL_PSX_ADAPTOR 0x0001 #define USB_DEVICE_ID_GAMERON_DUAL_PCS_ADAPTOR 0x0002 @@ -485,6 +492,7 @@ #define USB_DEVICE_ID_PENPOWER 0x00f4 #define USB_VENDOR_ID_GREENASIA 0x0e8f +#define USB_DEVICE_ID_GREENASIA_DUAL_SAT_ADAPTOR 0x3010 #define USB_DEVICE_ID_GREENASIA_DUAL_USB_JOYPAD 0x3013 #define USB_VENDOR_ID_GRETAGMACBETH 0x0971 @@ -726,7 +734,11 @@ #define USB_DEVICE_ID_LENOVO_SCROLLPOINT_OPTICAL 0x6049 #define USB_DEVICE_ID_LENOVO_TPPRODOCK 0x6067 #define USB_DEVICE_ID_LENOVO_X1_COVER 0x6085 +#define USB_DEVICE_ID_LENOVO_X1_TAB3 0x60b5 #define USB_DEVICE_ID_LENOVO_PIXART_USB_MOUSE_608D 0x608d +#define USB_DEVICE_ID_LENOVO_PIXART_USB_MOUSE_6019 0x6019 +#define USB_DEVICE_ID_LENOVO_PIXART_USB_MOUSE_602E 0x602e +#define USB_DEVICE_ID_LENOVO_PIXART_USB_MOUSE_6093 0x6093 #define USB_VENDOR_ID_LG 0x1fd2 #define USB_DEVICE_ID_LG_MULTITOUCH 0x0064 @@ -737,6 +749,7 @@ #define USB_VENDOR_ID_LOGITECH 0x046d #define USB_DEVICE_ID_LOGITECH_AUDIOHUB 0x0a0e #define USB_DEVICE_ID_LOGITECH_T651 0xb00c +#define USB_DEVICE_ID_LOGITECH_DINOVO_EDGE_KBD 0xb309 #define USB_DEVICE_ID_LOGITECH_C007 0xc007 #define USB_DEVICE_ID_LOGITECH_C077 0xc077 #define USB_DEVICE_ID_LOGITECH_RECEIVER 0xc101 @@ -773,6 +786,7 @@ #define USB_DEVICE_ID_LOGITECH_G27_WHEEL 0xc29b #define USB_DEVICE_ID_LOGITECH_WII_WHEEL 0xc29c #define USB_DEVICE_ID_LOGITECH_ELITE_KBD 0xc30a +#define USB_DEVICE_ID_LOGITECH_GROUP_AUDIO 0x0882 #define USB_DEVICE_ID_S510_RECEIVER 0xc50c #define USB_DEVICE_ID_S510_RECEIVER_2 0xc517 #define USB_DEVICE_ID_LOGITECH_CORDLESS_DESKTOP_LX500 0xc512 @@ -845,6 +859,7 @@ #define USB_DEVICE_ID_MS_POWER_COVER 0x07da #define USB_DEVICE_ID_MS_XBOX_ONE_S_CONTROLLER 0x02fd #define USB_DEVICE_ID_MS_PIXART_MOUSE 0x00cb +#define USB_DEVICE_ID_8BITDO_SN30_PRO_PLUS 0x02e0 #define USB_VENDOR_ID_MOJO 0x8282 #define USB_DEVICE_ID_RETRO_ADAPTER 0x3201 @@ -1010,6 +1025,8 @@ #define USB_DEVICE_ID_SAITEK_RAT9 0x0cfa #define USB_DEVICE_ID_SAITEK_MMO7 0x0cd0 #define USB_DEVICE_ID_SAITEK_X52 0x075c +#define USB_DEVICE_ID_SAITEK_X52_2 0x0255 +#define USB_DEVICE_ID_SAITEK_X52_PRO 0x0762 #define USB_VENDOR_ID_SAMSUNG 0x0419 #define USB_DEVICE_ID_SAMSUNG_IR_REMOTE 0x0001 @@ -1115,6 +1132,7 @@ #define USB_DEVICE_ID_SYNAPTICS_DELL_K12A 0x2819 #define USB_DEVICE_ID_SYNAPTICS_ACER_SWITCH5_012 0x2968 #define USB_DEVICE_ID_SYNAPTICS_TP_V103 0x5710 +#define USB_DEVICE_ID_SYNAPTICS_ACER_ONE_S1003 0x73f5 #define USB_DEVICE_ID_SYNAPTICS_ACER_SWITCH5 0x81a7 #define USB_VENDOR_ID_TEXAS_INSTRUMENTS 0x2047 @@ -1287,6 +1305,7 @@ #define USB_VENDOR_ID_UGTIZER 0x2179 #define USB_DEVICE_ID_UGTIZER_TABLET_GP0610 0x0053 +#define USB_DEVICE_ID_UGTIZER_TABLET_GT5040 0x0077 #define USB_VENDOR_ID_VIEWSONIC 0x0543 #define USB_DEVICE_ID_VIEWSONIC_PD1011 0xe621 --- linux-azure-5.8-5.8.0.orig/drivers/hid/hid-input.c +++ linux-azure-5.8-5.8.0/drivers/hid/hid-input.c @@ -319,6 +319,11 @@ { HID_BLUETOOTH_DEVICE(USB_VENDOR_ID_ASUSTEK, USB_DEVICE_ID_ASUSTEK_T100CHI_KEYBOARD), HID_BATTERY_QUIRK_IGNORE }, + { HID_BLUETOOTH_DEVICE(USB_VENDOR_ID_LOGITECH, + USB_DEVICE_ID_LOGITECH_DINOVO_EDGE_KBD), + HID_BATTERY_QUIRK_IGNORE }, + { HID_USB_DEVICE(USB_VENDOR_ID_ELAN, USB_DEVICE_ID_ASUS_UX550_TOUCHSCREEN), + HID_BATTERY_QUIRK_IGNORE }, {} }; @@ -350,13 +355,13 @@ u8 *buf; int ret; - buf = kmalloc(2, GFP_KERNEL); + buf = kmalloc(4, GFP_KERNEL); if (!buf) return -ENOMEM; - ret = hid_hw_raw_request(dev, dev->battery_report_id, buf, 2, + ret = hid_hw_raw_request(dev, dev->battery_report_id, buf, 4, dev->battery_report_type, HID_REQ_GET_REPORT); - if (ret != 2) { + if (ret < 2) { kfree(buf); return -ENODATA; } @@ -797,7 +802,7 @@ case 0x3b: /* Battery Strength */ hidinput_setup_battery(device, HID_INPUT_REPORT, field); usage->type = EV_PWR; - goto ignore; + return; case 0x3c: /* Invert */ map_key_clear(BTN_TOOL_RUBBER); @@ -1059,7 +1064,7 @@ case HID_DC_BATTERYSTRENGTH: hidinput_setup_battery(device, HID_INPUT_REPORT, field); usage->type = EV_PWR; - goto ignore; + return; } goto unknown; @@ -1132,6 +1137,10 @@ } mapped: + /* Mapping failed, bail out */ + if (!bit) + return; + if (device->driver->input_mapped && device->driver->input_mapped(device, hidinput, field, usage, &bit, &max) < 0) { --- linux-azure-5.8-5.8.0.orig/drivers/hid/hid-ite.c +++ linux-azure-5.8-5.8.0/drivers/hid/hid-ite.c @@ -11,6 +11,48 @@ #include "hid-ids.h" +#define QUIRK_TOUCHPAD_ON_OFF_REPORT BIT(0) + +static __u8 *ite_report_fixup(struct hid_device *hdev, __u8 *rdesc, unsigned int *rsize) +{ + unsigned long quirks = (unsigned long)hid_get_drvdata(hdev); + + if (quirks & QUIRK_TOUCHPAD_ON_OFF_REPORT) { + if (*rsize == 188 && rdesc[162] == 0x81 && rdesc[163] == 0x02) { + hid_info(hdev, "Fixing up ITE keyboard report descriptor\n"); + rdesc[163] = HID_MAIN_ITEM_RELATIVE; + } + } + + return rdesc; +} + +static int ite_input_mapping(struct hid_device *hdev, + struct hid_input *hi, struct hid_field *field, + struct hid_usage *usage, unsigned long **bit, + int *max) +{ + + unsigned long quirks = (unsigned long)hid_get_drvdata(hdev); + + if ((quirks & QUIRK_TOUCHPAD_ON_OFF_REPORT) && + (usage->hid & HID_USAGE_PAGE) == 0x00880000) { + if (usage->hid == 0x00880078) { + /* Touchpad on, userspace expects F22 for this */ + hid_map_usage_clear(hi, usage, bit, max, EV_KEY, KEY_F22); + return 1; + } + if (usage->hid == 0x00880079) { + /* Touchpad off, userspace expects F23 for this */ + hid_map_usage_clear(hi, usage, bit, max, EV_KEY, KEY_F23); + return 1; + } + return -1; + } + + return 0; +} + static int ite_event(struct hid_device *hdev, struct hid_field *field, struct hid_usage *usage, __s32 value) { @@ -37,13 +79,31 @@ return 0; } +static int ite_probe(struct hid_device *hdev, const struct hid_device_id *id) +{ + int ret; + + hid_set_drvdata(hdev, (void *)id->driver_data); + + ret = hid_open_report(hdev); + if (ret) + return ret; + + return hid_hw_start(hdev, HID_CONNECT_DEFAULT); +} + static const struct hid_device_id ite_devices[] = { { HID_USB_DEVICE(USB_VENDOR_ID_ITE, USB_DEVICE_ID_ITE8595) }, { HID_USB_DEVICE(USB_VENDOR_ID_258A, USB_DEVICE_ID_258A_6A88) }, /* ITE8595 USB kbd ctlr, with Synaptics touchpad connected to it. */ { HID_DEVICE(BUS_USB, HID_GROUP_GENERIC, USB_VENDOR_ID_SYNAPTICS, - USB_DEVICE_ID_SYNAPTICS_ACER_SWITCH5_012) }, + USB_DEVICE_ID_SYNAPTICS_ACER_SWITCH5_012), + .driver_data = QUIRK_TOUCHPAD_ON_OFF_REPORT }, + /* ITE8910 USB kbd ctlr, with Synaptics touchpad connected to it. */ + { HID_DEVICE(BUS_USB, HID_GROUP_GENERIC, + USB_VENDOR_ID_SYNAPTICS, + USB_DEVICE_ID_SYNAPTICS_ACER_ONE_S1003) }, { } }; MODULE_DEVICE_TABLE(hid, ite_devices); @@ -51,6 +111,9 @@ static struct hid_driver ite_driver = { .name = "itetech", .id_table = ite_devices, + .probe = ite_probe, + .report_fixup = ite_report_fixup, + .input_mapping = ite_input_mapping, .event = ite_event, }; module_hid_driver(ite_driver); --- linux-azure-5.8-5.8.0.orig/drivers/hid/hid-logitech-dj.c +++ linux-azure-5.8-5.8.0/drivers/hid/hid-logitech-dj.c @@ -328,7 +328,7 @@ 0x25, 0x01, /* LOGICAL_MAX (1) */ 0x75, 0x01, /* REPORT_SIZE (1) */ 0x95, 0x04, /* REPORT_COUNT (4) */ - 0x81, 0x06, /* INPUT */ + 0x81, 0x02, /* INPUT (Data,Var,Abs) */ 0xC0, /* END_COLLECTION */ 0xC0, /* END_COLLECTION */ }; @@ -866,11 +866,24 @@ schedule_work(&djrcv_dev->work); } +/* + * Some quad/bluetooth keyboards have a builtin touchpad in this case we see + * only 1 paired device with a device_type of REPORT_TYPE_KEYBOARD. For the + * touchpad to work we must also forward mouse input reports to the dj_hiddev + * created for the keyboard (instead of forwarding them to a second paired + * device with a device_type of REPORT_TYPE_MOUSE as we normally would). + */ +static const u16 kbd_builtin_touchpad_ids[] = { + 0xb309, /* Dinovo Edge */ + 0xb30c, /* Dinovo Mini */ +}; + static void logi_hidpp_dev_conn_notif_equad(struct hid_device *hdev, struct hidpp_event *hidpp_report, struct dj_workitem *workitem) { struct dj_receiver_dev *djrcv_dev = hid_get_drvdata(hdev); + int i, id; workitem->type = WORKITEM_TYPE_PAIRED; workitem->device_type = hidpp_report->params[HIDPP_PARAM_DEVICE_INFO] & @@ -882,6 +895,13 @@ workitem->reports_supported |= STD_KEYBOARD | MULTIMEDIA | POWER_KEYS | MEDIA_CENTER | HIDPP; + id = (workitem->quad_id_msb << 8) | workitem->quad_id_lsb; + for (i = 0; i < ARRAY_SIZE(kbd_builtin_touchpad_ids); i++) { + if (id == kbd_builtin_touchpad_ids[i]) { + workitem->reports_supported |= STD_MOUSE; + break; + } + } break; case REPORT_TYPE_MOUSE: workitem->reports_supported |= STD_MOUSE | HIDPP; @@ -960,6 +980,7 @@ case 0x07: device_type = "eQUAD step 4 Gaming"; logi_hidpp_dev_conn_notif_equad(hdev, hidpp_report, &workitem); + workitem.reports_supported |= STD_KEYBOARD; break; case 0x08: device_type = "eQUAD step 4 for gamepads"; @@ -1849,6 +1870,10 @@ HID_USB_DEVICE(USB_VENDOR_ID_LOGITECH, 0xc531), .driver_data = recvr_type_gaming_hidpp}, + { /* Logitech G602 receiver (0xc537) */ + HID_USB_DEVICE(USB_VENDOR_ID_LOGITECH, + 0xc537), + .driver_data = recvr_type_gaming_hidpp}, { /* Logitech lightspeed receiver (0xc539) */ HID_USB_DEVICE(USB_VENDOR_ID_LOGITECH, USB_DEVICE_ID_LOGITECH_NANO_RECEIVER_LIGHTSPEED_1), --- linux-azure-5.8-5.8.0.orig/drivers/hid/hid-logitech-hidpp.c +++ linux-azure-5.8-5.8.0/drivers/hid/hid-logitech-hidpp.c @@ -93,6 +93,8 @@ #define HIDPP_CAPABILITY_BATTERY_LEVEL_STATUS BIT(3) #define HIDPP_CAPABILITY_BATTERY_VOLTAGE BIT(4) +#define lg_map_key_clear(c) hid_map_usage_clear(hi, usage, bit, max, EV_KEY, (c)) + /* * There are two hidpp protocols in use, the first version hidpp10 is known * as register access protocol or RAP, the second version hidpp20 is known as @@ -2951,6 +2953,26 @@ } /* -------------------------------------------------------------------------- */ +/* Logitech Dinovo Mini keyboard with builtin touchpad */ +/* -------------------------------------------------------------------------- */ +#define DINOVO_MINI_PRODUCT_ID 0xb30c + +static int lg_dinovo_input_mapping(struct hid_device *hdev, struct hid_input *hi, + struct hid_field *field, struct hid_usage *usage, + unsigned long **bit, int *max) +{ + if ((usage->hid & HID_USAGE_PAGE) != HID_UP_LOGIVENDOR) + return 0; + + switch (usage->hid & HID_USAGE) { + case 0x00d: lg_map_key_clear(KEY_MEDIA); break; + default: + return 0; + } + return 1; +} + +/* -------------------------------------------------------------------------- */ /* HID++1.0 devices which use HID++ reports for their wheels */ /* -------------------------------------------------------------------------- */ static int hidpp10_wheel_connect(struct hidpp_device *hidpp) @@ -3185,6 +3207,9 @@ field->application != HID_GD_MOUSE) return m560_input_mapping(hdev, hi, field, usage, bit, max); + if (hdev->product == DINOVO_MINI_PRODUCT_ID) + return lg_dinovo_input_mapping(hdev, hi, field, usage, bit, max); + return 0; } @@ -3947,6 +3972,7 @@ LDJ_DEVICE(0x405e), .driver_data = HIDPP_QUIRK_HI_RES_SCROLL_X2121 }, { /* Mouse Logitech MX Anywhere 2 */ LDJ_DEVICE(0x404a), .driver_data = HIDPP_QUIRK_HI_RES_SCROLL_X2121 }, + { LDJ_DEVICE(0x4072), .driver_data = HIDPP_QUIRK_HI_RES_SCROLL_X2121 }, { LDJ_DEVICE(0xb013), .driver_data = HIDPP_QUIRK_HI_RES_SCROLL_X2121 }, { LDJ_DEVICE(0xb018), .driver_data = HIDPP_QUIRK_HI_RES_SCROLL_X2121 }, { LDJ_DEVICE(0xb01f), .driver_data = HIDPP_QUIRK_HI_RES_SCROLL_X2121 }, @@ -3971,6 +3997,9 @@ { /* Keyboard MX5000 (Bluetooth-receiver in HID proxy mode) */ LDJ_DEVICE(0xb305), .driver_data = HIDPP_QUIRK_HIDPP_CONSUMER_VENDOR_KEYS }, + { /* Dinovo Edge (Bluetooth-receiver in HID proxy mode) */ + LDJ_DEVICE(0xb309), + .driver_data = HIDPP_QUIRK_HIDPP_CONSUMER_VENDOR_KEYS }, { /* Keyboard MX5500 (Bluetooth-receiver in HID proxy mode) */ LDJ_DEVICE(0xb30b), .driver_data = HIDPP_QUIRK_HIDPP_CONSUMER_VENDOR_KEYS }, @@ -4013,12 +4042,17 @@ { /* MX5000 keyboard over Bluetooth */ HID_BLUETOOTH_DEVICE(USB_VENDOR_ID_LOGITECH, 0xb305), .driver_data = HIDPP_QUIRK_HIDPP_CONSUMER_VENDOR_KEYS }, + { /* Dinovo Edge keyboard over Bluetooth */ + HID_BLUETOOTH_DEVICE(USB_VENDOR_ID_LOGITECH, 0xb309), + .driver_data = HIDPP_QUIRK_HIDPP_CONSUMER_VENDOR_KEYS }, { /* MX5500 keyboard over Bluetooth */ HID_BLUETOOTH_DEVICE(USB_VENDOR_ID_LOGITECH, 0xb30b), .driver_data = HIDPP_QUIRK_HIDPP_CONSUMER_VENDOR_KEYS }, { /* MX Master mouse over Bluetooth */ HID_BLUETOOTH_DEVICE(USB_VENDOR_ID_LOGITECH, 0xb012), .driver_data = HIDPP_QUIRK_HI_RES_SCROLL_X2121 }, + { /* MX Ergo trackball over Bluetooth */ + HID_BLUETOOTH_DEVICE(USB_VENDOR_ID_LOGITECH, 0xb01d) }, { HID_BLUETOOTH_DEVICE(USB_VENDOR_ID_LOGITECH, 0xb01e), .driver_data = HIDPP_QUIRK_HI_RES_SCROLL_X2121 }, { /* MX Master 3 mouse over Bluetooth */ --- linux-azure-5.8-5.8.0.orig/drivers/hid/hid-mcp2221.c +++ linux-azure-5.8-5.8.0/drivers/hid/hid-mcp2221.c @@ -49,6 +49,36 @@ MCP2221_ALT_F_NOT_GPIOD = 0xEF, }; +/* MCP GPIO direction encoding */ +enum { + MCP2221_DIR_OUT = 0x00, + MCP2221_DIR_IN = 0x01, +}; + +#define MCP_NGPIO 4 + +/* MCP GPIO set command layout */ +struct mcp_set_gpio { + u8 cmd; + u8 dummy; + struct { + u8 change_value; + u8 value; + u8 change_direction; + u8 direction; + } gpio[MCP_NGPIO]; +} __packed; + +/* MCP GPIO get command layout */ +struct mcp_get_gpio { + u8 cmd; + u8 dummy; + struct { + u8 direction; + u8 value; + } gpio[MCP_NGPIO]; +} __packed; + /* * There is no way to distinguish responses. Therefore next command * is sent only after response to previous has been received. Mutex @@ -542,7 +572,7 @@ mcp->txbuf[0] = MCP2221_GPIO_GET; - mcp->gp_idx = (offset + 1) * 2; + mcp->gp_idx = offsetof(struct mcp_get_gpio, gpio[offset].value); mutex_lock(&mcp->lock); ret = mcp_send_data_req_status(mcp, mcp->txbuf, 1); @@ -559,7 +589,7 @@ memset(mcp->txbuf, 0, 18); mcp->txbuf[0] = MCP2221_GPIO_SET; - mcp->gp_idx = ((offset + 1) * 4) - 1; + mcp->gp_idx = offsetof(struct mcp_set_gpio, gpio[offset].value); mcp->txbuf[mcp->gp_idx - 1] = 1; mcp->txbuf[mcp->gp_idx] = !!value; @@ -575,7 +605,7 @@ memset(mcp->txbuf, 0, 18); mcp->txbuf[0] = MCP2221_GPIO_SET; - mcp->gp_idx = (offset + 1) * 5; + mcp->gp_idx = offsetof(struct mcp_set_gpio, gpio[offset].direction); mcp->txbuf[mcp->gp_idx - 1] = 1; mcp->txbuf[mcp->gp_idx] = val; @@ -590,7 +620,7 @@ struct mcp2221 *mcp = gpiochip_get_data(gc); mutex_lock(&mcp->lock); - ret = mcp_gpio_dir_set(mcp, offset, 0); + ret = mcp_gpio_dir_set(mcp, offset, MCP2221_DIR_IN); mutex_unlock(&mcp->lock); return ret; @@ -603,7 +633,7 @@ struct mcp2221 *mcp = gpiochip_get_data(gc); mutex_lock(&mcp->lock); - ret = mcp_gpio_dir_set(mcp, offset, 1); + ret = mcp_gpio_dir_set(mcp, offset, MCP2221_DIR_OUT); mutex_unlock(&mcp->lock); /* Can't configure as output, bailout early */ @@ -623,7 +653,7 @@ mcp->txbuf[0] = MCP2221_GPIO_GET; - mcp->gp_idx = (offset + 1) * 2; + mcp->gp_idx = offsetof(struct mcp_get_gpio, gpio[offset].direction); mutex_lock(&mcp->lock); ret = mcp_send_data_req_status(mcp, mcp->txbuf, 1); @@ -632,7 +662,7 @@ if (ret) return ret; - if (mcp->gpio_dir) + if (mcp->gpio_dir == MCP2221_DIR_IN) return GPIO_LINE_DIRECTION_IN; return GPIO_LINE_DIRECTION_OUT; @@ -758,7 +788,7 @@ mcp->status = -ENOENT; } else { mcp->status = !!data[mcp->gp_idx]; - mcp->gpio_dir = !!data[mcp->gp_idx + 1]; + mcp->gpio_dir = data[mcp->gp_idx + 1]; } break; default: @@ -860,7 +890,7 @@ mcp->gc->get_direction = mcp_gpio_get_direction; mcp->gc->set = mcp_gpio_set; mcp->gc->get = mcp_gpio_get; - mcp->gc->ngpio = 4; + mcp->gc->ngpio = MCP_NGPIO; mcp->gc->base = -1; mcp->gc->can_sleep = 1; mcp->gc->parent = &hdev->dev; --- linux-azure-5.8-5.8.0.orig/drivers/hid/hid-microsoft.c +++ linux-azure-5.8-5.8.0/drivers/hid/hid-microsoft.c @@ -451,6 +451,8 @@ .driver_data = MS_SURFACE_DIAL }, { HID_BLUETOOTH_DEVICE(USB_VENDOR_ID_MICROSOFT, USB_DEVICE_ID_MS_XBOX_ONE_S_CONTROLLER), .driver_data = MS_QUIRK_FF }, + { HID_BLUETOOTH_DEVICE(USB_VENDOR_ID_MICROSOFT, USB_DEVICE_ID_8BITDO_SN30_PRO_PLUS), + .driver_data = MS_QUIRK_FF }, { } }; MODULE_DEVICE_TABLE(hid, ms_devices); --- linux-azure-5.8-5.8.0.orig/drivers/hid/hid-multitouch.c +++ linux-azure-5.8-5.8.0/drivers/hid/hid-multitouch.c @@ -758,7 +758,8 @@ MT_STORE_FIELD(inrange_state); return 1; case HID_DG_CONFIDENCE: - if (cls->name == MT_CLS_WIN_8 && + if ((cls->name == MT_CLS_WIN_8 || + cls->name == MT_CLS_WIN_8_FORCE_MULTI_INPUT) && (field->application == HID_DG_TOUCHPAD || field->application == HID_DG_TOUCHSCREEN)) app->quirks |= MT_QUIRK_CONFIDENCE; @@ -856,6 +857,8 @@ code = BTN_0 + ((usage->hid - 1) & HID_USAGE); hid_map_usage(hi, usage, bit, max, EV_KEY, code); + if (!*bit) + return -1; input_set_capability(hi->input, EV_KEY, code); return 1; @@ -1971,6 +1974,12 @@ HID_DEVICE(BUS_I2C, HID_GROUP_GENERIC, USB_VENDOR_ID_LG, I2C_DEVICE_ID_LG_7010) }, + /* Lenovo X1 TAB Gen 3 */ + { .driver_data = MT_CLS_WIN_8_FORCE_MULTI_INPUT, + HID_DEVICE(BUS_USB, HID_GROUP_MULTITOUCH_WIN_8, + USB_VENDOR_ID_LENOVO, + USB_DEVICE_ID_LENOVO_X1_TAB3) }, + /* MosArt panels */ { .driver_data = MT_CLS_CONFIDENCE_MINUS_ONE, MT_USB_DEVICE(USB_VENDOR_ID_ASUS, @@ -2040,6 +2049,10 @@ HID_DEVICE(BUS_I2C, HID_GROUP_MULTITOUCH_WIN_8, USB_VENDOR_ID_SYNAPTICS, 0xce08) }, + { .driver_data = MT_CLS_WIN_8_FORCE_MULTI_INPUT, + HID_DEVICE(BUS_I2C, HID_GROUP_MULTITOUCH_WIN_8, + USB_VENDOR_ID_SYNAPTICS, 0xce09) }, + /* TopSeed panels */ { .driver_data = MT_CLS_TOPSEED, MT_USB_DEVICE(USB_VENDOR_ID_TOPSEED2, --- linux-azure-5.8-5.8.0.orig/drivers/hid/hid-quirks.c +++ linux-azure-5.8-5.8.0/drivers/hid/hid-quirks.c @@ -83,7 +83,12 @@ { HID_USB_DEVICE(USB_VENDOR_ID_FORMOSA, USB_DEVICE_ID_FORMOSA_IR_RECEIVER), HID_QUIRK_NO_INIT_REPORTS }, { HID_USB_DEVICE(USB_VENDOR_ID_FREESCALE, USB_DEVICE_ID_FREESCALE_MX28), HID_QUIRK_NOGET }, { HID_USB_DEVICE(USB_VENDOR_ID_FUTABA, USB_DEVICE_ID_LED_DISPLAY), HID_QUIRK_NO_INIT_REPORTS }, + { HID_USB_DEVICE(USB_VENDOR_ID_GREENASIA, USB_DEVICE_ID_GREENASIA_DUAL_SAT_ADAPTOR), HID_QUIRK_MULTI_INPUT }, { HID_USB_DEVICE(USB_VENDOR_ID_GREENASIA, USB_DEVICE_ID_GREENASIA_DUAL_USB_JOYPAD), HID_QUIRK_MULTI_INPUT }, + { HID_BLUETOOTH_DEVICE(USB_VENDOR_ID_GAMEVICE, USB_DEVICE_ID_GAMEVICE_GV186), + HID_QUIRK_INCREMENT_USAGE_ON_DUPLICATE }, + { HID_USB_DEVICE(USB_VENDOR_ID_GAMEVICE, USB_DEVICE_ID_GAMEVICE_KISHI), + HID_QUIRK_INCREMENT_USAGE_ON_DUPLICATE }, { HID_USB_DEVICE(USB_VENDOR_ID_HAPP, USB_DEVICE_ID_UGCI_DRIVING), HID_QUIRK_BADPAD | HID_QUIRK_MULTI_INPUT }, { HID_USB_DEVICE(USB_VENDOR_ID_HAPP, USB_DEVICE_ID_UGCI_FIGHTING), HID_QUIRK_BADPAD | HID_QUIRK_MULTI_INPUT }, { HID_USB_DEVICE(USB_VENDOR_ID_HAPP, USB_DEVICE_ID_UGCI_FLYING), HID_QUIRK_BADPAD | HID_QUIRK_MULTI_INPUT }, @@ -105,6 +110,9 @@ { HID_USB_DEVICE(USB_VENDOR_ID_KYE, USB_DEVICE_ID_KYE_EASYPEN_M406XE), HID_QUIRK_MULTI_INPUT }, { HID_USB_DEVICE(USB_VENDOR_ID_KYE, USB_DEVICE_ID_PIXART_USB_OPTICAL_MOUSE_ID2), HID_QUIRK_ALWAYS_POLL }, { HID_USB_DEVICE(USB_VENDOR_ID_LENOVO, USB_DEVICE_ID_LENOVO_PIXART_USB_MOUSE_608D), HID_QUIRK_ALWAYS_POLL }, + { HID_USB_DEVICE(USB_VENDOR_ID_LENOVO, USB_DEVICE_ID_LENOVO_PIXART_USB_MOUSE_6019), HID_QUIRK_ALWAYS_POLL }, + { HID_USB_DEVICE(USB_VENDOR_ID_LENOVO, USB_DEVICE_ID_LENOVO_PIXART_USB_MOUSE_602E), HID_QUIRK_ALWAYS_POLL }, + { HID_USB_DEVICE(USB_VENDOR_ID_LENOVO, USB_DEVICE_ID_LENOVO_PIXART_USB_MOUSE_6093), HID_QUIRK_ALWAYS_POLL }, { HID_USB_DEVICE(USB_VENDOR_ID_LOGITECH, USB_DEVICE_ID_LOGITECH_C007), HID_QUIRK_ALWAYS_POLL }, { HID_USB_DEVICE(USB_VENDOR_ID_LOGITECH, USB_DEVICE_ID_LOGITECH_C077), HID_QUIRK_ALWAYS_POLL }, { HID_USB_DEVICE(USB_VENDOR_ID_LOGITECH, USB_DEVICE_ID_LOGITECH_KEYBOARD_G710_PLUS), HID_QUIRK_NOGET }, @@ -147,6 +155,8 @@ { HID_USB_DEVICE(USB_VENDOR_ID_RETROUSB, USB_DEVICE_ID_RETROUSB_SNES_RETROPORT), HID_QUIRK_INCREMENT_USAGE_ON_DUPLICATE }, { HID_USB_DEVICE(USB_VENDOR_ID_SAITEK, USB_DEVICE_ID_SAITEK_RUMBLEPAD), HID_QUIRK_BADPAD }, { HID_USB_DEVICE(USB_VENDOR_ID_SAITEK, USB_DEVICE_ID_SAITEK_X52), HID_QUIRK_INCREMENT_USAGE_ON_DUPLICATE }, + { HID_USB_DEVICE(USB_VENDOR_ID_SAITEK, USB_DEVICE_ID_SAITEK_X52_2), HID_QUIRK_INCREMENT_USAGE_ON_DUPLICATE }, + { HID_USB_DEVICE(USB_VENDOR_ID_SAITEK, USB_DEVICE_ID_SAITEK_X52_PRO), HID_QUIRK_INCREMENT_USAGE_ON_DUPLICATE }, { HID_USB_DEVICE(USB_VENDOR_ID_SEMICO, USB_DEVICE_ID_SEMICO_USB_KEYKOARD2), HID_QUIRK_NO_INIT_REPORTS }, { HID_USB_DEVICE(USB_VENDOR_ID_SEMICO, USB_DEVICE_ID_SEMICO_USB_KEYKOARD), HID_QUIRK_NO_INIT_REPORTS }, { HID_USB_DEVICE(USB_VENDOR_ID_SENNHEISER, USB_DEVICE_ID_SENNHEISER_BTD500USB), HID_QUIRK_NOGET }, @@ -179,6 +189,7 @@ { HID_USB_DEVICE(USB_VENDOR_ID_WISEGROUP_LTD2, USB_DEVICE_ID_SMARTJOY_DUAL_PLUS), HID_QUIRK_NOGET | HID_QUIRK_MULTI_INPUT }, { HID_USB_DEVICE(USB_VENDOR_ID_WISEGROUP, USB_DEVICE_ID_QUAD_USB_JOYPAD), HID_QUIRK_NOGET | HID_QUIRK_MULTI_INPUT }, { HID_USB_DEVICE(USB_VENDOR_ID_XIN_MO, USB_DEVICE_ID_XIN_MO_DUAL_ARCADE), HID_QUIRK_MULTI_INPUT }, + { HID_USB_DEVICE(USB_VENDOR_ID_LOGITECH, USB_DEVICE_ID_LOGITECH_GROUP_AUDIO), HID_QUIRK_NOGET }, { 0 } }; --- linux-azure-5.8-5.8.0.orig/drivers/hid/hid-roccat-kone.c +++ linux-azure-5.8-5.8.0/drivers/hid/hid-roccat-kone.c @@ -294,31 +294,40 @@ struct kone_device *kone = hid_get_drvdata(dev_get_drvdata(dev)); struct usb_device *usb_dev = interface_to_usbdev(to_usb_interface(dev)); int retval = 0, difference, old_profile; + struct kone_settings *settings = (struct kone_settings *)buf; /* I need to get my data in one piece */ if (off != 0 || count != sizeof(struct kone_settings)) return -EINVAL; mutex_lock(&kone->kone_lock); - difference = memcmp(buf, &kone->settings, sizeof(struct kone_settings)); + difference = memcmp(settings, &kone->settings, + sizeof(struct kone_settings)); if (difference) { - retval = kone_set_settings(usb_dev, - (struct kone_settings const *)buf); - if (retval) { - mutex_unlock(&kone->kone_lock); - return retval; + if (settings->startup_profile < 1 || + settings->startup_profile > 5) { + retval = -EINVAL; + goto unlock; } + retval = kone_set_settings(usb_dev, settings); + if (retval) + goto unlock; + old_profile = kone->settings.startup_profile; - memcpy(&kone->settings, buf, sizeof(struct kone_settings)); + memcpy(&kone->settings, settings, sizeof(struct kone_settings)); kone_profile_activated(kone, kone->settings.startup_profile); if (kone->settings.startup_profile != old_profile) kone_profile_report(kone, kone->settings.startup_profile); } +unlock: mutex_unlock(&kone->kone_lock); + if (retval) + return retval; + return sizeof(struct kone_settings); } static BIN_ATTR(settings, 0660, kone_sysfs_read_settings, --- linux-azure-5.8-5.8.0.orig/drivers/hid/hid-sensor-hub.c +++ linux-azure-5.8-5.8.0/drivers/hid/hid-sensor-hub.c @@ -483,7 +483,8 @@ return 1; ptr = raw_data; - ptr++; /* Skip report id */ + if (report->id) + ptr++; /* Skip report id */ spin_lock_irqsave(&pdata->lock, flags); --- linux-azure-5.8-5.8.0.orig/drivers/hid/hid-uclogic-core.c +++ linux-azure-5.8-5.8.0/drivers/hid/hid-uclogic-core.c @@ -385,6 +385,8 @@ USB_DEVICE_ID_UCLOGIC_DRAWIMAGE_G3) }, { HID_USB_DEVICE(USB_VENDOR_ID_UGTIZER, USB_DEVICE_ID_UGTIZER_TABLET_GP0610) }, + { HID_USB_DEVICE(USB_VENDOR_ID_UGTIZER, + USB_DEVICE_ID_UGTIZER_TABLET_GT5040) }, { HID_USB_DEVICE(USB_VENDOR_ID_UGEE, USB_DEVICE_ID_UGEE_TABLET_G5) }, { HID_USB_DEVICE(USB_VENDOR_ID_UGEE, --- linux-azure-5.8-5.8.0.orig/drivers/hid/hid-uclogic-params.c +++ linux-azure-5.8-5.8.0/drivers/hid/hid-uclogic-params.c @@ -997,6 +997,8 @@ break; case VID_PID(USB_VENDOR_ID_UGTIZER, USB_DEVICE_ID_UGTIZER_TABLET_GP0610): + case VID_PID(USB_VENDOR_ID_UGTIZER, + USB_DEVICE_ID_UGTIZER_TABLET_GT5040): case VID_PID(USB_VENDOR_ID_UGEE, USB_DEVICE_ID_UGEE_XPPEN_TABLET_G540): case VID_PID(USB_VENDOR_ID_UGEE, --- linux-azure-5.8-5.8.0.orig/drivers/hid/i2c-hid/i2c-hid-core.c +++ linux-azure-5.8-5.8.0/drivers/hid/i2c-hid/i2c-hid-core.c @@ -420,6 +420,19 @@ dev_err(&client->dev, "failed to change power setting.\n"); set_pwr_exit: + + /* + * The HID over I2C specification states that if a DEVICE needs time + * after the PWR_ON request, it should utilise CLOCK stretching. + * However, it has been observered that the Windows driver provides a + * 1ms sleep between the PWR_ON and RESET requests. + * According to Goodix Windows even waits 60 ms after (other?) + * PWR_ON requests. Testing has confirmed that several devices + * will not work properly without a delay after a PWR_ON request. + */ + if (!ret && power_state == I2C_HID_PWR_ON) + msleep(60); + return ret; } @@ -441,15 +454,6 @@ if (ret) goto out_unlock; - /* - * The HID over I2C specification states that if a DEVICE needs time - * after the PWR_ON request, it should utilise CLOCK stretching. - * However, it has been observered that the Windows driver provides a - * 1ms sleep between the PWR_ON and RESET requests and that some devices - * rely on this. - */ - usleep_range(1000, 5000); - i2c_hid_dbg(ihid, "resetting...\n"); ret = i2c_hid_command(client, &hid_reset_cmd, NULL, 0); @@ -931,6 +935,14 @@ acpi_device_fix_up_power(adev); } +static void i2c_hid_acpi_enable_wakeup(struct device *dev) +{ + if (acpi_gbl_FADT.flags & ACPI_FADT_LOW_POWER_S0) { + device_set_wakeup_capable(dev, true); + device_set_wakeup_enable(dev, false); + } +} + static const struct acpi_device_id i2c_hid_acpi_match[] = { {"ACPI0C50", 0 }, {"PNP0C50", 0 }, @@ -945,6 +957,8 @@ } static inline void i2c_hid_acpi_fix_up_power(struct device *dev) {} + +static inline void i2c_hid_acpi_enable_wakeup(struct device *dev) {} #endif #ifdef CONFIG_OF @@ -1072,6 +1086,8 @@ i2c_hid_acpi_fix_up_power(&client->dev); + i2c_hid_acpi_enable_wakeup(&client->dev); + device_enable_async_suspend(&client->dev); /* Make sure there is something at this address */ --- linux-azure-5.8-5.8.0.orig/drivers/hid/i2c-hid/i2c-hid-dmi-quirks.c +++ linux-azure-5.8-5.8.0/drivers/hid/i2c-hid/i2c-hid-dmi-quirks.c @@ -405,6 +405,14 @@ }, .driver_data = (void *)&sipodev_desc }, + { + .ident = "Vero K147", + .matches = { + DMI_EXACT_MATCH(DMI_SYS_VENDOR, "VERO"), + DMI_EXACT_MATCH(DMI_PRODUCT_NAME, "K147"), + }, + .driver_data = (void *)&sipodev_desc + }, { } /* Terminate list */ }; --- linux-azure-5.8-5.8.0.orig/drivers/hid/intel-ish-hid/ipc/hw-ish.h +++ linux-azure-5.8-5.8.0/drivers/hid/intel-ish-hid/ipc/hw-ish.h @@ -27,6 +27,7 @@ #define CMP_H_DEVICE_ID 0x06FC #define EHL_Ax_DEVICE_ID 0x4BB3 #define TGL_LP_DEVICE_ID 0xA0FC +#define TGL_H_DEVICE_ID 0x43FC #define REVISION_ID_CHT_A0 0x6 #define REVISION_ID_CHT_Ax_SI 0x0 --- linux-azure-5.8-5.8.0.orig/drivers/hid/intel-ish-hid/ipc/pci-ish.c +++ linux-azure-5.8-5.8.0/drivers/hid/intel-ish-hid/ipc/pci-ish.c @@ -37,6 +37,7 @@ {PCI_DEVICE(PCI_VENDOR_ID_INTEL, CMP_H_DEVICE_ID)}, {PCI_DEVICE(PCI_VENDOR_ID_INTEL, EHL_Ax_DEVICE_ID)}, {PCI_DEVICE(PCI_VENDOR_ID_INTEL, TGL_LP_DEVICE_ID)}, + {PCI_DEVICE(PCI_VENDOR_ID_INTEL, TGL_H_DEVICE_ID)}, {0, } }; MODULE_DEVICE_TABLE(pci, ish_pci_tbl); --- linux-azure-5.8-5.8.0.orig/drivers/hid/usbhid/hiddev.c +++ linux-azure-5.8-5.8.0/drivers/hid/usbhid/hiddev.c @@ -519,12 +519,16 @@ switch (cmd) { case HIDIOCGUSAGE: + if (uref->usage_index >= field->report_count) + goto inval; uref->value = field->value[uref->usage_index]; if (copy_to_user(user_arg, uref, sizeof(*uref))) goto fault; goto goodreturn; case HIDIOCSUSAGE: + if (uref->usage_index >= field->report_count) + goto inval; field->value[uref->usage_index] = uref->value; goto goodreturn; --- linux-azure-5.8-5.8.0.orig/drivers/hid/wacom_sys.c +++ linux-azure-5.8-5.8.0/drivers/hid/wacom_sys.c @@ -147,9 +147,9 @@ } if (flush) - wacom_wac_queue_flush(hdev, &wacom_wac->pen_fifo); + wacom_wac_queue_flush(hdev, wacom_wac->pen_fifo); else if (insert) - wacom_wac_queue_insert(hdev, &wacom_wac->pen_fifo, + wacom_wac_queue_insert(hdev, wacom_wac->pen_fifo, raw_data, report_size); return insert && !flush; @@ -1270,6 +1270,38 @@ group); } +static void wacom_devm_kfifo_release(struct device *dev, void *res) +{ + struct kfifo_rec_ptr_2 *devres = res; + + kfifo_free(devres); +} + +static int wacom_devm_kfifo_alloc(struct wacom *wacom) +{ + struct wacom_wac *wacom_wac = &wacom->wacom_wac; + struct kfifo_rec_ptr_2 *pen_fifo; + int error; + + pen_fifo = devres_alloc(wacom_devm_kfifo_release, + sizeof(struct kfifo_rec_ptr_2), + GFP_KERNEL); + + if (!pen_fifo) + return -ENOMEM; + + error = kfifo_alloc(pen_fifo, WACOM_PKGLEN_MAX, GFP_KERNEL); + if (error) { + devres_free(pen_fifo); + return error; + } + + devres_add(&wacom->hdev->dev, pen_fifo); + wacom_wac->pen_fifo = pen_fifo; + + return 0; +} + enum led_brightness wacom_leds_brightness_get(struct wacom_led *led) { struct wacom *wacom = led->wacom; @@ -2724,7 +2756,7 @@ if (features->check_for_hid_type && features->hid_type != hdev->type) return -ENODEV; - error = kfifo_alloc(&wacom_wac->pen_fifo, WACOM_PKGLEN_MAX, GFP_KERNEL); + error = wacom_devm_kfifo_alloc(wacom); if (error) return error; @@ -2786,8 +2818,6 @@ if (wacom->wacom_wac.features.type != REMOTE) wacom_release_resources(wacom); - - kfifo_free(&wacom_wac->pen_fifo); } #ifdef CONFIG_PM --- linux-azure-5.8-5.8.0.orig/drivers/hid/wacom_wac.c +++ linux-azure-5.8-5.8.0/drivers/hid/wacom_wac.c @@ -2600,7 +2600,12 @@ wacom_wac->is_invalid_bt_frame = !value; return; case HID_DG_CONTACTMAX: - features->touch_max = value; + if (!features->touch_max) { + features->touch_max = value; + } else { + hid_warn(hdev, "%s: ignoring attempt to overwrite non-zero touch_max " + "%d -> %d\n", __func__, features->touch_max, value); + } return; } @@ -2773,7 +2778,9 @@ if (report->type != HID_INPUT_REPORT) return -1; - if (WACOM_PEN_FIELD(field) && wacom->wacom_wac.pen_input) + if (WACOM_PAD_FIELD(field)) + return 0; + else if (WACOM_PEN_FIELD(field) && wacom->wacom_wac.pen_input) wacom_wac_pen_report(hdev, report); else if (WACOM_FINGER_FIELD(field) && wacom->wacom_wac.touch_input) wacom_wac_finger_report(hdev, report); --- linux-azure-5.8-5.8.0.orig/drivers/hid/wacom_wac.h +++ linux-azure-5.8-5.8.0/drivers/hid/wacom_wac.h @@ -342,7 +342,7 @@ struct input_dev *pen_input; struct input_dev *touch_input; struct input_dev *pad_input; - struct kfifo_rec_ptr_2 pen_fifo; + struct kfifo_rec_ptr_2 *pen_fifo; int pid; int num_contacts_left; u8 bt_features; --- linux-azure-5.8-5.8.0.orig/drivers/hsi/controllers/omap_ssi_core.c +++ linux-azure-5.8-5.8.0/drivers/hsi/controllers/omap_ssi_core.c @@ -355,7 +355,7 @@ err = ida_simple_get(&platform_omap_ssi_ida, 0, 0, GFP_KERNEL); if (err < 0) - goto out_err; + return err; ssi->id = err; ssi->owner = THIS_MODULE; @@ -424,7 +424,7 @@ struct omap_ssi_controller *omap_ssi = hsi_controller_drvdata(ssi); int err; - err = pm_runtime_get_sync(ssi->device.parent); + err = pm_runtime_resume_and_get(ssi->device.parent); if (err < 0) { dev_err(&ssi->device, "runtime PM failed %d\n", err); return err; --- linux-azure-5.8-5.8.0.orig/drivers/hv/channel.c +++ linux-azure-5.8-5.8.0/drivers/hv/channel.c @@ -18,11 +18,24 @@ #include #include #include +#include #include "hyperv_vmbus.h" -#define NUM_PAGES_SPANNED(addr, len) \ -((PAGE_ALIGN(addr + len) >> PAGE_SHIFT) - (addr >> PAGE_SHIFT)) +/* + * vmbus_set_event - Send an event notification to the parent + */ +static void vmbus_set_event(struct vmbus_channel *channel) +{ + u32 child_relid = channel->offermsg.child_relid; + + if (!channel->is_dedicated_interrupt) + vmbus_send_interrupt(child_relid); + + ++channel->sig_events; + + hv_do_fast_hypercall8(HVCALL_SIGNAL_EVENT, channel->sig_event); +} static unsigned long virt_to_hvpfn(void *addr) { --- linux-azure-5.8-5.8.0.orig/drivers/hv/channel_mgmt.c +++ linux-azure-5.8-5.8.0/drivers/hv/channel_mgmt.c @@ -750,7 +750,7 @@ void *page_addr; struct hv_message *msg; struct vmbus_channel_message_header *hdr; - u32 message_type; + u32 message_type, i; /* * CHANNELMSG_UNLOAD_RESPONSE is always delivered to the CPU which was @@ -760,8 +760,11 @@ * functional and vmbus_unload_response() will complete * vmbus_connection.unload_event. If not, the last thing we can do is * read message pages for all CPUs directly. + * + * Wait no more than 10 seconds so that the panic path can't get + * hung forever in case the response message isn't seen. */ - while (1) { + for (i = 0; i < 1000; i++) { if (completion_done(&vmbus_connection.unload_event)) break; @@ -1118,8 +1121,7 @@ vmbus_device_unregister(channel->device_obj); put_device(dev); } - } - if (channel->primary_channel != NULL) { + } else if (channel->primary_channel != NULL) { /* * Sub-channel is being rescinded. Following is the channel * close sequence when initiated from the driveri (refer to --- linux-azure-5.8-5.8.0.orig/drivers/hv/connection.c +++ linux-azure-5.8-5.8.0/drivers/hv/connection.c @@ -423,18 +423,3 @@ return ret; } -/* - * vmbus_set_event - Send an event notification to the parent - */ -void vmbus_set_event(struct vmbus_channel *channel) -{ - u32 child_relid = channel->offermsg.child_relid; - - if (!channel->is_dedicated_interrupt) - vmbus_send_interrupt(child_relid); - - ++channel->sig_events; - - hv_do_fast_hypercall8(HVCALL_SIGNAL_EVENT, channel->sig_event); -} -EXPORT_SYMBOL_GPL(vmbus_set_event); --- linux-azure-5.8-5.8.0.orig/drivers/hv/hv.c +++ linux-azure-5.8-5.8.0/drivers/hv/hv.c @@ -245,9 +245,13 @@ /* * Hyper-V does not provide a way to change the connect CPU once - * it is set; we must prevent the connect CPU from going offline. + * it is set; we must prevent the connect CPU from going offline + * while the VM is running normally. But in the panic or kexec() + * path where the vmbus is already disconnected, the CPU must be + * allowed to shut down. */ - if (cpu == VMBUS_CONNECT_CPU) + if (cpu == VMBUS_CONNECT_CPU && + vmbus_connection.conn_state == CONNECTED) return -EBUSY; /* --- linux-azure-5.8-5.8.0.orig/drivers/hv/hv_balloon.c +++ linux-azure-5.8-5.8.0/drivers/hv/hv_balloon.c @@ -27,6 +27,8 @@ #include +#include + #define CREATE_TRACE_POINTS #include "hv_trace_balloon.h" @@ -1275,7 +1277,7 @@ /* Refuse to balloon below the floor. */ if (avail_pages < num_pages || avail_pages - num_pages < floor) { - pr_warn("Balloon request will be partially fulfilled. %s\n", + pr_info("Balloon request will be partially fulfilled. %s\n", avail_pages < num_pages ? "Not enough memory." : "Balloon floor reached."); --- linux-azure-5.8-5.8.0.orig/drivers/hv/hv_util.c +++ linux-azure-5.8-5.8.0/drivers/hv/hv_util.c @@ -282,26 +282,52 @@ spinlock_t lock; } host_ts; -static struct timespec64 hv_get_adj_host_time(void) +static inline u64 reftime_to_ns(u64 reftime) { - struct timespec64 ts; - u64 newtime, reftime; + return (reftime - WLTIMEDELTA) * 100; +} + +/* + * Hard coded threshold for host timesync delay: 600 seconds + */ +static const u64 HOST_TIMESYNC_DELAY_THRESH = 600 * (u64)NSEC_PER_SEC; + +static int hv_get_adj_host_time(struct timespec64 *ts) +{ + u64 newtime, reftime, timediff_adj; unsigned long flags; + int ret = 0; spin_lock_irqsave(&host_ts.lock, flags); reftime = hv_read_reference_counter(); - newtime = host_ts.host_time + (reftime - host_ts.ref_time); - ts = ns_to_timespec64((newtime - WLTIMEDELTA) * 100); + + /* + * We need to let the caller know that last update from host + * is older than the max allowable threshold. clock_gettime() + * and PTP ioctl do not have a documented error that we could + * return for this specific case. Use ESTALE to report this. + */ + timediff_adj = reftime - host_ts.ref_time; + if (timediff_adj * 100 > HOST_TIMESYNC_DELAY_THRESH) { + pr_warn_once("TIMESYNC IC: Stale time stamp, %llu nsecs old\n", + (timediff_adj * 100)); + ret = -ESTALE; + } + + newtime = host_ts.host_time + timediff_adj; + *ts = ns_to_timespec64(reftime_to_ns(newtime)); spin_unlock_irqrestore(&host_ts.lock, flags); - return ts; + return ret; } static void hv_set_host_time(struct work_struct *work) { - struct timespec64 ts = hv_get_adj_host_time(); - do_settimeofday64(&ts); + struct timespec64 ts; + + if (!hv_get_adj_host_time(&ts)) + do_settimeofday64(&ts); } /* @@ -361,10 +387,23 @@ struct ictimesync_ref_data *refdata; u8 *time_txf_buf = util_timesynch.recv_buffer; - vmbus_recvpacket(channel, time_txf_buf, - HV_HYP_PAGE_SIZE, &recvlen, &requestid); + /* + * Drain the ring buffer and use the last packet to update + * host_ts + */ + while (1) { + int ret = vmbus_recvpacket(channel, time_txf_buf, + HV_HYP_PAGE_SIZE, &recvlen, + &requestid); + if (ret) { + pr_warn_once("TimeSync IC pkt recv failed (Err: %d)\n", + ret); + break; + } + + if (!recvlen) + break; - if (recvlen > 0) { icmsghdrp = (struct icmsg_hdr *)&time_txf_buf[ sizeof(struct vmbuspipe_hdr)]; @@ -622,9 +661,7 @@ static int hv_ptp_gettime(struct ptp_clock_info *info, struct timespec64 *ts) { - *ts = hv_get_adj_host_time(); - - return 0; + return hv_get_adj_host_time(ts); } static struct ptp_clock_info ptp_hyperv_info = { --- linux-azure-5.8-5.8.0.orig/drivers/hv/vmbus_drv.c +++ linux-azure-5.8-5.8.0/drivers/hv/vmbus_drv.c @@ -87,6 +87,10 @@ struct die_args *die = (struct die_args *)args; struct pt_regs *regs = die->regs; + /* Don't notify Hyper-V if the die event is other than oops */ + if (val != DIE_OOPS) + return NOTIFY_DONE; + /* * Hyper-V should be notified only once about a panic. If we will be * doing hyperv_report_panic_msg() later with kmsg data, don't do @@ -2383,7 +2387,10 @@ if (atomic_read(&vmbus_connection.nr_chan_close_on_suspend) > 0) wait_for_completion(&vmbus_connection.ready_for_suspend_event); - WARN_ON(atomic_read(&vmbus_connection.nr_chan_fixup_on_resume) != 0); + if (atomic_read(&vmbus_connection.nr_chan_fixup_on_resume) != 0) { + pr_err("Can not suspend due to a previous failed resuming\n"); + return -EBUSY; + } mutex_lock(&vmbus_connection.channel_mutex); @@ -2459,7 +2466,9 @@ vmbus_request_offers(); - wait_for_completion(&vmbus_connection.ready_for_resume_event); + if (wait_for_completion_timeout( + &vmbus_connection.ready_for_resume_event, 10 * HZ) == 0) + pr_err("Some vmbus device is missing after suspending?\n"); /* Reset the event for the next suspend. */ reinit_completion(&vmbus_connection.ready_for_suspend_event); --- linux-azure-5.8-5.8.0.orig/drivers/hwmon/amd_energy.c +++ linux-azure-5.8-5.8.0/drivers/hwmon/amd_energy.c @@ -209,7 +209,7 @@ enum hwmon_sensor_types type, u32 attr, int channel) { - return 0444; + return 0440; } static int energy_accumulator(void *p) @@ -265,7 +265,7 @@ */ cpus = num_present_cpus() / num_siblings; - s_config = devm_kcalloc(dev, cpus + sockets, + s_config = devm_kcalloc(dev, cpus + sockets + 1, sizeof(u32), GFP_KERNEL); if (!s_config) return -ENOMEM; @@ -293,6 +293,7 @@ "Esocket%u", (i - cpus)); } + s_config[i] = 0; return 0; } --- linux-azure-5.8-5.8.0.orig/drivers/hwmon/applesmc.c +++ linux-azure-5.8-5.8.0/drivers/hwmon/applesmc.c @@ -32,6 +32,7 @@ #include #include #include +#include /* data port used by Apple SMC */ #define APPLESMC_DATA_PORT 0x300 @@ -42,10 +43,13 @@ #define APPLESMC_MAX_DATA_LENGTH 32 -/* wait up to 128 ms for a status change. */ -#define APPLESMC_MIN_WAIT 0x0010 -#define APPLESMC_RETRY_WAIT 0x0100 -#define APPLESMC_MAX_WAIT 0x20000 +/* Apple SMC status bits */ +#define SMC_STATUS_AWAITING_DATA BIT(0) /* SMC has data waiting to be read */ +#define SMC_STATUS_IB_CLOSED BIT(1) /* Will ignore any input */ +#define SMC_STATUS_BUSY BIT(2) /* Command in progress */ + +/* Initial wait is 8us */ +#define APPLESMC_MIN_WAIT 0x0008 #define APPLESMC_READ_CMD 0x10 #define APPLESMC_WRITE_CMD 0x11 @@ -151,65 +155,84 @@ static struct workqueue_struct *applesmc_led_wq; /* - * wait_read - Wait for a byte to appear on SMC port. Callers must - * hold applesmc_lock. + * Wait for specific status bits with a mask on the SMC. + * Used before all transactions. + * This does 10 fast loops of 8us then exponentially backs off for a + * minimum total wait of 262ms. Depending on usleep_range this could + * run out past 500ms. */ -static int wait_read(void) + +static int wait_status(u8 val, u8 mask) { - unsigned long end = jiffies + (APPLESMC_MAX_WAIT * HZ) / USEC_PER_SEC; u8 status; int us; + int i; - for (us = APPLESMC_MIN_WAIT; us < APPLESMC_MAX_WAIT; us <<= 1) { - usleep_range(us, us * 16); + us = APPLESMC_MIN_WAIT; + for (i = 0; i < 24 ; i++) { status = inb(APPLESMC_CMD_PORT); - /* read: wait for smc to settle */ - if (status & 0x01) + if ((status & mask) == val) return 0; - /* timeout: give up */ - if (time_after(jiffies, end)) - break; + usleep_range(us, us * 2); + if (i > 9) + us <<= 1; } - - pr_warn("wait_read() fail: 0x%02x\n", status); return -EIO; } -/* - * send_byte - Write to SMC port, retrying when necessary. Callers - * must hold applesmc_lock. - */ +/* send_byte - Write to SMC data port. Callers must hold applesmc_lock. */ + static int send_byte(u8 cmd, u16 port) { - u8 status; - int us; - unsigned long end = jiffies + (APPLESMC_MAX_WAIT * HZ) / USEC_PER_SEC; + int status; - outb(cmd, port); - for (us = APPLESMC_MIN_WAIT; us < APPLESMC_MAX_WAIT; us <<= 1) { - usleep_range(us, us * 16); - status = inb(APPLESMC_CMD_PORT); - /* write: wait for smc to settle */ - if (status & 0x02) - continue; - /* ready: cmd accepted, return */ - if (status & 0x04) - return 0; - /* timeout: give up */ - if (time_after(jiffies, end)) - break; - /* busy: long wait and resend */ - udelay(APPLESMC_RETRY_WAIT); - outb(cmd, port); - } + status = wait_status(0, SMC_STATUS_IB_CLOSED); + if (status) + return status; + /* + * This needs to be a separate read looking for bit 0x04 + * after bit 0x02 falls. If consolidated with the wait above + * this extra read may not happen if status returns both + * simultaneously and this would appear to be required. + */ + status = wait_status(SMC_STATUS_BUSY, SMC_STATUS_BUSY); + if (status) + return status; - pr_warn("send_byte(0x%02x, 0x%04x) fail: 0x%02x\n", cmd, port, status); - return -EIO; + outb(cmd, port); + return 0; } +/* send_command - Write a command to the SMC. Callers must hold applesmc_lock. */ + static int send_command(u8 cmd) { - return send_byte(cmd, APPLESMC_CMD_PORT); + int ret; + + ret = wait_status(0, SMC_STATUS_IB_CLOSED); + if (ret) + return ret; + outb(cmd, APPLESMC_CMD_PORT); + return 0; +} + +/* + * Based on logic from the Apple driver. This is issued before any interaction + * If busy is stuck high, issue a read command to reset the SMC state machine. + * If busy is stuck high after the command then the SMC is jammed. + */ + +static int smc_sane(void) +{ + int ret; + + ret = wait_status(0, SMC_STATUS_BUSY); + if (!ret) + return ret; + ret = send_command(APPLESMC_READ_CMD); + if (ret) + return ret; + return wait_status(0, SMC_STATUS_BUSY); } static int send_argument(const char *key) @@ -226,6 +249,11 @@ { u8 status, data = 0; int i; + int ret; + + ret = smc_sane(); + if (ret) + return ret; if (send_command(cmd) || send_argument(key)) { pr_warn("%.4s: read arg fail\n", key); @@ -239,7 +267,8 @@ } for (i = 0; i < len; i++) { - if (wait_read()) { + if (wait_status(SMC_STATUS_AWAITING_DATA | SMC_STATUS_BUSY, + SMC_STATUS_AWAITING_DATA | SMC_STATUS_BUSY)) { pr_warn("%.4s: read data[%d] fail\n", key, i); return -EIO; } @@ -250,19 +279,24 @@ for (i = 0; i < 16; i++) { udelay(APPLESMC_MIN_WAIT); status = inb(APPLESMC_CMD_PORT); - if (!(status & 0x01)) + if (!(status & SMC_STATUS_AWAITING_DATA)) break; data = inb(APPLESMC_DATA_PORT); } if (i) pr_warn("flushed %d bytes, last value is: %d\n", i, data); - return 0; + return wait_status(0, SMC_STATUS_BUSY); } static int write_smc(u8 cmd, const char *key, const u8 *buffer, u8 len) { int i; + int ret; + + ret = smc_sane(); + if (ret) + return ret; if (send_command(cmd) || send_argument(key)) { pr_warn("%s: write arg fail\n", key); @@ -281,7 +315,7 @@ } } - return 0; + return wait_status(0, SMC_STATUS_BUSY); } static int read_register_count(unsigned int *count) @@ -753,15 +787,18 @@ } ret = applesmc_read_key(LIGHT_SENSOR_LEFT_KEY, buffer, data_length); + if (ret) + goto out; /* newer macbooks report a single 10-bit bigendian value */ if (data_length == 10) { left = be16_to_cpu(*(__be16 *)(buffer + 6)) >> 2; goto out; } left = buffer[2]; + + ret = applesmc_read_key(LIGHT_SENSOR_RIGHT_KEY, buffer, data_length); if (ret) goto out; - ret = applesmc_read_key(LIGHT_SENSOR_RIGHT_KEY, buffer, data_length); right = buffer[2]; out: @@ -810,12 +847,11 @@ to_index(attr)); ret = applesmc_read_key(newkey, buffer, 2); - speed = ((buffer[0] << 8 | buffer[1]) >> 2); - if (ret) return ret; - else - return snprintf(sysfsbuf, PAGE_SIZE, "%u\n", speed); + + speed = ((buffer[0] << 8 | buffer[1]) >> 2); + return snprintf(sysfsbuf, PAGE_SIZE, "%u\n", speed); } static ssize_t applesmc_store_fan_speed(struct device *dev, @@ -851,12 +887,11 @@ u8 buffer[2]; ret = applesmc_read_key(FANS_MANUAL, buffer, 2); - manual = ((buffer[0] << 8 | buffer[1]) >> to_index(attr)) & 0x01; - if (ret) return ret; - else - return snprintf(sysfsbuf, PAGE_SIZE, "%d\n", manual); + + manual = ((buffer[0] << 8 | buffer[1]) >> to_index(attr)) & 0x01; + return snprintf(sysfsbuf, PAGE_SIZE, "%d\n", manual); } static ssize_t applesmc_store_fan_manual(struct device *dev, @@ -872,10 +907,11 @@ return -EINVAL; ret = applesmc_read_key(FANS_MANUAL, buffer, 2); - val = (buffer[0] << 8 | buffer[1]); if (ret) goto out; + val = (buffer[0] << 8 | buffer[1]); + if (input) val = val | (0x01 << to_index(attr)); else @@ -951,13 +987,12 @@ u32 count; ret = applesmc_read_key(KEY_COUNT_KEY, buffer, 4); - count = ((u32)buffer[0]<<24) + ((u32)buffer[1]<<16) + - ((u32)buffer[2]<<8) + buffer[3]; - if (ret) return ret; - else - return snprintf(sysfsbuf, PAGE_SIZE, "%d\n", count); + + count = ((u32)buffer[0]<<24) + ((u32)buffer[1]<<16) + + ((u32)buffer[2]<<8) + buffer[3]; + return snprintf(sysfsbuf, PAGE_SIZE, "%d\n", count); } static ssize_t applesmc_key_at_index_read_show(struct device *dev, --- linux-azure-5.8-5.8.0.orig/drivers/hwmon/bt1-pvt.c +++ linux-azure-5.8-5.8.0/drivers/hwmon/bt1-pvt.c @@ -13,6 +13,7 @@ #include #include #include +#include #include #include #include @@ -476,6 +477,7 @@ long *val) { struct pvt_cache *cache = &pvt->cache[type]; + unsigned long timeout; u32 data; int ret; @@ -499,7 +501,14 @@ pvt_update(pvt->regs + PVT_INTR_MASK, PVT_INTR_DVALID, 0); pvt_update(pvt->regs + PVT_CTRL, PVT_CTRL_EN, PVT_CTRL_EN); - wait_for_completion(&cache->conversion); + /* + * Wait with timeout since in case if the sensor is suddenly powered + * down the request won't be completed and the caller will hang up on + * this procedure until the power is back up again. Multiply the + * timeout by the factor of two to prevent a false timeout. + */ + timeout = 2 * usecs_to_jiffies(ktime_to_us(pvt->timeout)); + ret = wait_for_completion_timeout(&cache->conversion, timeout); pvt_update(pvt->regs + PVT_CTRL, PVT_CTRL_EN, 0); pvt_update(pvt->regs + PVT_INTR_MASK, PVT_INTR_DVALID, @@ -509,6 +518,9 @@ mutex_unlock(&pvt->iface_mtx); + if (!ret) + return -ETIMEDOUT; + if (type == PVT_TEMP) *val = pvt_calc_poly(&poly_N_to_temp, data); else @@ -654,44 +666,16 @@ static int pvt_read_timeout(struct pvt_hwmon *pvt, long *val) { - unsigned long rate; - ktime_t kt; - u32 data; - - rate = clk_get_rate(pvt->clks[PVT_CLOCK_REF].clk); - if (!rate) - return -ENODEV; - - /* - * Don't bother with mutex here, since we just read data from MMIO. - * We also have to scale the ticks timeout up to compensate the - * ms-ns-data translations. - */ - data = readl(pvt->regs + PVT_TTIMEOUT) + 1; + int ret; - /* - * Calculate ref-clock based delay (Ttotal) between two consecutive - * data samples of the same sensor. So we first must calculate the - * delay introduced by the internal ref-clock timer (Tref * Fclk). - * Then add the constant timeout cuased by each conversion latency - * (Tmin). The basic formulae for each conversion is following: - * Ttotal = Tref * Fclk + Tmin - * Note if alarms are enabled the sensors are polled one after - * another, so in order to have the delay being applicable for each - * sensor the requested value must be equally redistirbuted. - */ -#if defined(CONFIG_SENSORS_BT1_PVT_ALARMS) - kt = ktime_set(PVT_SENSORS_NUM * (u64)data, 0); - kt = ktime_divns(kt, rate); - kt = ktime_add_ns(kt, PVT_SENSORS_NUM * PVT_TOUT_MIN); -#else - kt = ktime_set(data, 0); - kt = ktime_divns(kt, rate); - kt = ktime_add_ns(kt, PVT_TOUT_MIN); -#endif + ret = mutex_lock_interruptible(&pvt->iface_mtx); + if (ret) + return ret; /* Return the result in msec as hwmon sysfs interface requires. */ - *val = ktime_to_ms(kt); + *val = ktime_to_ms(pvt->timeout); + + mutex_unlock(&pvt->iface_mtx); return 0; } @@ -699,7 +683,7 @@ static int pvt_write_timeout(struct pvt_hwmon *pvt, long val) { unsigned long rate; - ktime_t kt; + ktime_t kt, cache; u32 data; int ret; @@ -712,7 +696,7 @@ * between all available sensors to have the requested delay * applicable to each individual sensor. */ - kt = ms_to_ktime(val); + cache = kt = ms_to_ktime(val); #if defined(CONFIG_SENSORS_BT1_PVT_ALARMS) kt = ktime_divns(kt, PVT_SENSORS_NUM); #endif @@ -741,6 +725,7 @@ return ret; pvt_set_tout(pvt, data); + pvt->timeout = cache; mutex_unlock(&pvt->iface_mtx); @@ -982,10 +967,52 @@ return 0; } -static void pvt_init_iface(struct pvt_hwmon *pvt) +static int pvt_check_pwr(struct pvt_hwmon *pvt) { + unsigned long tout; + int ret = 0; + u32 data; + + /* + * Test out the sensor conversion functionality. If it is not done on + * time then the domain must have been unpowered and we won't be able + * to use the device later in this driver. + * Note If the power source is lost during the normal driver work the + * data read procedure will either return -ETIMEDOUT (for the + * alarm-less driver configuration) or just stop the repeated + * conversion. In the later case alas we won't be able to detect the + * problem. + */ + pvt_update(pvt->regs + PVT_INTR_MASK, PVT_INTR_ALL, PVT_INTR_ALL); + pvt_update(pvt->regs + PVT_CTRL, PVT_CTRL_EN, PVT_CTRL_EN); + pvt_set_tout(pvt, 0); + readl(pvt->regs + PVT_DATA); + + tout = PVT_TOUT_MIN / NSEC_PER_USEC; + usleep_range(tout, 2 * tout); + + data = readl(pvt->regs + PVT_DATA); + if (!(data & PVT_DATA_VALID)) { + ret = -ENODEV; + dev_err(pvt->dev, "Sensor is powered down\n"); + } + + pvt_update(pvt->regs + PVT_CTRL, PVT_CTRL_EN, 0); + + return ret; +} + +static int pvt_init_iface(struct pvt_hwmon *pvt) +{ + unsigned long rate; u32 trim, temp; + rate = clk_get_rate(pvt->clks[PVT_CLOCK_REF].clk); + if (!rate) { + dev_err(pvt->dev, "Invalid reference clock rate\n"); + return -ENODEV; + } + /* * Make sure all interrupts and controller are disabled so not to * accidentally have ISR executed before the driver data is fully @@ -1000,12 +1027,37 @@ pvt_set_mode(pvt, pvt_info[pvt->sensor].mode); pvt_set_tout(pvt, PVT_TOUT_DEF); + /* + * Preserve the current ref-clock based delay (Ttotal) between the + * sensors data samples in the driver data so not to recalculate it + * each time on the data requests and timeout reads. It consists of the + * delay introduced by the internal ref-clock timer (N / Fclk) and the + * constant timeout caused by each conversion latency (Tmin): + * Ttotal = N / Fclk + Tmin + * If alarms are enabled the sensors are polled one after another and + * in order to get the next measurement of a particular sensor the + * caller will have to wait for at most until all the others are + * polled. In that case the formulae will look a bit different: + * Ttotal = 5 * (N / Fclk + Tmin) + */ +#if defined(CONFIG_SENSORS_BT1_PVT_ALARMS) + pvt->timeout = ktime_set(PVT_SENSORS_NUM * PVT_TOUT_DEF, 0); + pvt->timeout = ktime_divns(pvt->timeout, rate); + pvt->timeout = ktime_add_ns(pvt->timeout, PVT_SENSORS_NUM * PVT_TOUT_MIN); +#else + pvt->timeout = ktime_set(PVT_TOUT_DEF, 0); + pvt->timeout = ktime_divns(pvt->timeout, rate); + pvt->timeout = ktime_add_ns(pvt->timeout, PVT_TOUT_MIN); +#endif + trim = PVT_TRIM_DEF; if (!of_property_read_u32(pvt->dev->of_node, "baikal,pvt-temp-offset-millicelsius", &temp)) trim = pvt_calc_trim(temp); pvt_set_trim(pvt, trim); + + return 0; } static int pvt_request_irq(struct pvt_hwmon *pvt) @@ -1109,7 +1161,13 @@ if (ret) return ret; - pvt_init_iface(pvt); + ret = pvt_check_pwr(pvt); + if (ret) + return ret; + + ret = pvt_init_iface(pvt); + if (ret) + return ret; ret = pvt_request_irq(pvt); if (ret) --- linux-azure-5.8-5.8.0.orig/drivers/hwmon/bt1-pvt.h +++ linux-azure-5.8-5.8.0/drivers/hwmon/bt1-pvt.h @@ -10,6 +10,7 @@ #include #include #include +#include #include #include @@ -201,6 +202,7 @@ * if alarms are disabled). * @sensor: current PVT sensor the data conversion is being performed for. * @cache: data cache descriptor. + * @timeout: conversion timeout cache. */ struct pvt_hwmon { struct device *dev; @@ -214,6 +216,7 @@ struct mutex iface_mtx; enum pvt_sensor_type sensor; struct pvt_cache cache[PVT_SENSORS_NUM]; + ktime_t timeout; }; /* --- linux-azure-5.8-5.8.0.orig/drivers/hwmon/dell-smm-hwmon.c +++ linux-azure-5.8-5.8.0/drivers/hwmon/dell-smm-hwmon.c @@ -1159,6 +1159,13 @@ DMI_EXACT_MATCH(DMI_PRODUCT_NAME, "XPS13 9333"), }, }, + { + .ident = "Dell XPS 15 L502X", + .matches = { + DMI_MATCH(DMI_SYS_VENDOR, "Dell Inc."), + DMI_EXACT_MATCH(DMI_PRODUCT_NAME, "Dell System XPS L502X"), + }, + }, { } }; --- linux-azure-5.8-5.8.0.orig/drivers/hwmon/gsc-hwmon.c +++ linux-azure-5.8-5.8.0/drivers/hwmon/gsc-hwmon.c @@ -172,6 +172,7 @@ case mode_temperature: if (tmp > 0x8000) tmp -= 0xffff; + tmp *= 100; /* convert to millidegrees celsius */ break; case mode_voltage_raw: tmp = clamp_val(tmp, 0, BIT(GSC_HWMON_RESOLUTION)); --- linux-azure-5.8-5.8.0.orig/drivers/hwmon/ina3221.c +++ linux-azure-5.8-5.8.0/drivers/hwmon/ina3221.c @@ -489,7 +489,7 @@ /* For enabling routine, increase refcount and resume() at first */ if (enable) { - ret = pm_runtime_get_sync(ina->pm_dev); + ret = pm_runtime_resume_and_get(ina->pm_dev); if (ret < 0) { dev_err(dev, "Failed to get PM runtime\n"); return ret; --- linux-azure-5.8-5.8.0.orig/drivers/hwmon/nct7904.c +++ linux-azure-5.8-5.8.0/drivers/hwmon/nct7904.c @@ -231,7 +231,7 @@ if (ret < 0) return ret; cnt = ((ret & 0xff00) >> 3) | (ret & 0x1f); - if (cnt == 0x1fff) + if (cnt == 0 || cnt == 0x1fff) rpm = 0; else rpm = 1350000 / cnt; @@ -243,7 +243,7 @@ if (ret < 0) return ret; cnt = ((ret & 0xff00) >> 3) | (ret & 0x1f); - if (cnt == 0x1fff) + if (cnt == 0 || cnt == 0x1fff) rpm = 0; else rpm = 1350000 / cnt; --- linux-azure-5.8-5.8.0.orig/drivers/hwmon/pmbus/isl68137.c +++ linux-azure-5.8-5.8.0/drivers/hwmon/pmbus/isl68137.c @@ -67,6 +67,7 @@ raa_dmpvr1_2rail, raa_dmpvr2_1rail, raa_dmpvr2_2rail, + raa_dmpvr2_2rail_nontc, raa_dmpvr2_3rail, raa_dmpvr2_hv, }; @@ -241,6 +242,10 @@ info->pages = 1; info->read_word_data = raa_dmpvr2_read_word_data; break; + case raa_dmpvr2_2rail_nontc: + info->func[0] &= ~PMBUS_HAVE_TEMP; + info->func[1] &= ~PMBUS_HAVE_TEMP; + fallthrough; case raa_dmpvr2_2rail: info->pages = 2; info->read_word_data = raa_dmpvr2_read_word_data; @@ -304,7 +309,7 @@ {"raa228000", raa_dmpvr2_hv}, {"raa228004", raa_dmpvr2_hv}, {"raa228006", raa_dmpvr2_hv}, - {"raa228228", raa_dmpvr2_2rail}, + {"raa228228", raa_dmpvr2_2rail_nontc}, {"raa229001", raa_dmpvr2_2rail}, {"raa229004", raa_dmpvr2_2rail}, {} --- linux-azure-5.8-5.8.0.orig/drivers/hwmon/pmbus/max34440.c +++ linux-azure-5.8-5.8.0/drivers/hwmon/pmbus/max34440.c @@ -31,6 +31,13 @@ #define MAX34440_STATUS_OT_FAULT BIT(5) #define MAX34440_STATUS_OT_WARN BIT(6) +/* + * The whole max344* family have IOUT_OC_WARN_LIMIT and IOUT_OC_FAULT_LIMIT + * swapped from the standard pmbus spec addresses. + */ +#define MAX34440_IOUT_OC_WARN_LIMIT 0x46 +#define MAX34440_IOUT_OC_FAULT_LIMIT 0x4A + #define MAX34451_MFR_CHANNEL_CONFIG 0xe4 #define MAX34451_MFR_CHANNEL_CONFIG_SEL_MASK 0x3f @@ -49,6 +56,14 @@ const struct max34440_data *data = to_max34440_data(info); switch (reg) { + case PMBUS_IOUT_OC_FAULT_LIMIT: + ret = pmbus_read_word_data(client, page, phase, + MAX34440_IOUT_OC_FAULT_LIMIT); + break; + case PMBUS_IOUT_OC_WARN_LIMIT: + ret = pmbus_read_word_data(client, page, phase, + MAX34440_IOUT_OC_WARN_LIMIT); + break; case PMBUS_VIRT_READ_VOUT_MIN: ret = pmbus_read_word_data(client, page, phase, MAX34440_MFR_VOUT_MIN); @@ -115,6 +130,14 @@ int ret; switch (reg) { + case PMBUS_IOUT_OC_FAULT_LIMIT: + ret = pmbus_write_word_data(client, page, MAX34440_IOUT_OC_FAULT_LIMIT, + word); + break; + case PMBUS_IOUT_OC_WARN_LIMIT: + ret = pmbus_write_word_data(client, page, MAX34440_IOUT_OC_WARN_LIMIT, + word); + break; case PMBUS_VIRT_RESET_POUT_HISTORY: ret = pmbus_write_word_data(client, page, MAX34446_MFR_POUT_PEAK, 0); @@ -388,7 +411,6 @@ .func[18] = PMBUS_HAVE_TEMP | PMBUS_HAVE_STATUS_TEMP, .func[19] = PMBUS_HAVE_TEMP | PMBUS_HAVE_STATUS_TEMP, .func[20] = PMBUS_HAVE_TEMP | PMBUS_HAVE_STATUS_TEMP, - .read_byte_data = max34440_read_byte_data, .read_word_data = max34440_read_word_data, .write_word_data = max34440_write_word_data, }, @@ -419,7 +441,6 @@ .func[15] = PMBUS_HAVE_TEMP | PMBUS_HAVE_STATUS_TEMP, .func[16] = PMBUS_HAVE_TEMP | PMBUS_HAVE_STATUS_TEMP, .func[17] = PMBUS_HAVE_TEMP | PMBUS_HAVE_STATUS_TEMP, - .read_byte_data = max34440_read_byte_data, .read_word_data = max34440_read_word_data, .write_word_data = max34440_write_word_data, }, @@ -455,7 +476,6 @@ .func[19] = PMBUS_HAVE_TEMP | PMBUS_HAVE_STATUS_TEMP, .func[20] = PMBUS_HAVE_TEMP | PMBUS_HAVE_STATUS_TEMP, .func[21] = PMBUS_HAVE_TEMP | PMBUS_HAVE_STATUS_TEMP, - .read_byte_data = max34440_read_byte_data, .read_word_data = max34440_read_word_data, .write_word_data = max34440_write_word_data, }, --- linux-azure-5.8-5.8.0.orig/drivers/hwmon/pwm-fan.c +++ linux-azure-5.8-5.8.0/drivers/hwmon/pwm-fan.c @@ -54,16 +54,18 @@ static void sample_timer(struct timer_list *t) { struct pwm_fan_ctx *ctx = from_timer(ctx, t, rpm_timer); + unsigned int delta = ktime_ms_delta(ktime_get(), ctx->sample_start); int pulses; - u64 tmp; - pulses = atomic_read(&ctx->pulses); - atomic_sub(pulses, &ctx->pulses); - tmp = (u64)pulses * ktime_ms_delta(ktime_get(), ctx->sample_start) * 60; - do_div(tmp, ctx->pulses_per_revolution * 1000); - ctx->rpm = tmp; + if (delta) { + pulses = atomic_read(&ctx->pulses); + atomic_sub(pulses, &ctx->pulses); + ctx->rpm = (unsigned int)(pulses * 1000 * 60) / + (ctx->pulses_per_revolution * delta); + + ctx->sample_start = ktime_get(); + } - ctx->sample_start = ktime_get(); mod_timer(&ctx->rpm_timer, jiffies + HZ); } @@ -328,8 +330,18 @@ ctx->pwm_value = MAX_PWM; - /* Set duty cycle to maximum allowed and enable PWM output */ pwm_init_state(ctx->pwm, &state); + /* + * __set_pwm assumes that MAX_PWM * (period - 1) fits into an unsigned + * long. Check this here to prevent the fan running at a too low + * frequency. + */ + if (state.period > ULONG_MAX / MAX_PWM + 1) { + dev_err(dev, "Configured period too big\n"); + return -EINVAL; + } + + /* Set duty cycle to maximum allowed and enable PWM output */ state.duty_cycle = ctx->pwm->args.period - 1; state.enabled = true; --- linux-azure-5.8-5.8.0.orig/drivers/hwmon/w83627ehf.c +++ linux-azure-5.8-5.8.0/drivers/hwmon/w83627ehf.c @@ -1951,8 +1951,12 @@ data, &w83627ehf_chip_info, w83627ehf_groups); + if (IS_ERR(hwmon_dev)) { + err = PTR_ERR(hwmon_dev); + goto exit_release; + } - return PTR_ERR_OR_ZERO(hwmon_dev); + return 0; exit_release: release_region(res->start, IOREGION_LENGTH); --- linux-azure-5.8-5.8.0.orig/drivers/hwtracing/coresight/coresight-cti-sysfs.c +++ linux-azure-5.8-5.8.0/drivers/hwtracing/coresight/coresight-cti-sysfs.c @@ -1065,6 +1065,13 @@ } eattr->var = con; con->con_attrs[attr_idx] = &eattr->attr.attr; + /* + * Initialize the dynamically allocated attribute + * to avoid LOCKDEP splat. See include/linux/sysfs.h + * for more details. + */ + sysfs_attr_init(con->con_attrs[attr_idx]); + return 0; } --- linux-azure-5.8-5.8.0.orig/drivers/hwtracing/coresight/coresight-cti.c +++ linux-azure-5.8-5.8.0/drivers/hwtracing/coresight/coresight-cti.c @@ -86,22 +86,16 @@ CS_LOCK(drvdata->base); } -static void cti_enable_hw_smp_call(void *info) -{ - struct cti_drvdata *drvdata = info; - - cti_write_all_hw_regs(drvdata); -} - /* write regs to hardware and enable */ static int cti_enable_hw(struct cti_drvdata *drvdata) { struct cti_config *config = &drvdata->config; struct device *dev = &drvdata->csdev->dev; + unsigned long flags; int rc = 0; pm_runtime_get_sync(dev->parent); - spin_lock(&drvdata->spinlock); + spin_lock_irqsave(&drvdata->spinlock, flags); /* no need to do anything if enabled or unpowered*/ if (config->hw_enabled || !config->hw_powered) @@ -112,19 +106,11 @@ if (rc) goto cti_err_not_enabled; - if (drvdata->ctidev.cpu >= 0) { - rc = smp_call_function_single(drvdata->ctidev.cpu, - cti_enable_hw_smp_call, - drvdata, 1); - if (rc) - goto cti_err_not_enabled; - } else { - cti_write_all_hw_regs(drvdata); - } + cti_write_all_hw_regs(drvdata); config->hw_enabled = true; atomic_inc(&drvdata->config.enable_req_count); - spin_unlock(&drvdata->spinlock); + spin_unlock_irqrestore(&drvdata->spinlock, flags); return rc; cti_state_unchanged: @@ -132,7 +118,7 @@ /* cannot enable due to error */ cti_err_not_enabled: - spin_unlock(&drvdata->spinlock); + spin_unlock_irqrestore(&drvdata->spinlock, flags); pm_runtime_put(dev->parent); return rc; } @@ -141,9 +127,7 @@ static void cti_cpuhp_enable_hw(struct cti_drvdata *drvdata) { struct cti_config *config = &drvdata->config; - struct device *dev = &drvdata->csdev->dev; - pm_runtime_get_sync(dev->parent); spin_lock(&drvdata->spinlock); config->hw_powered = true; @@ -163,7 +147,6 @@ /* did not re-enable due to no claim / no request */ cti_hp_not_enabled: spin_unlock(&drvdata->spinlock); - pm_runtime_put(dev->parent); } /* disable hardware */ @@ -511,12 +494,15 @@ return !link_err; } -static void cti_remove_sysfs_link(struct cti_trig_con *tc) +static void cti_remove_sysfs_link(struct cti_drvdata *drvdata, + struct cti_trig_con *tc) { struct coresight_sysfs_link link_info; + link_info.orig = drvdata->csdev; link_info.orig_name = tc->con_dev_name; link_info.target = tc->con_dev; + link_info.target_name = dev_name(&drvdata->csdev->dev); coresight_remove_sysfs_link(&link_info); } @@ -606,8 +592,8 @@ ctidrv = csdev_to_cti_drvdata(csdev->ect_dev); ctidev = &ctidrv->ctidev; list_for_each_entry(tc, &ctidev->trig_cons, node) { - if (tc->con_dev == csdev->ect_dev) { - cti_remove_sysfs_link(tc); + if (tc->con_dev == csdev) { + cti_remove_sysfs_link(ctidrv, tc); tc->con_dev = NULL; break; } @@ -651,7 +637,7 @@ if (tc->con_dev) { coresight_set_assoc_ectdev_mutex(tc->con_dev, NULL); - cti_remove_sysfs_link(tc); + cti_remove_sysfs_link(drvdata, tc); tc->con_dev = NULL; } } @@ -742,7 +728,8 @@ spin_lock(&drvdata->spinlock); drvdata->config.hw_powered = false; - coresight_disclaim_device(drvdata->base); + if (drvdata->config.hw_enabled) + coresight_disclaim_device(drvdata->base); spin_unlock(&drvdata->spinlock); return 0; } --- linux-azure-5.8-5.8.0.orig/drivers/hwtracing/coresight/coresight-etb10.c +++ linux-azure-5.8-5.8.0/drivers/hwtracing/coresight/coresight-etb10.c @@ -176,6 +176,7 @@ unsigned long flags; struct etb_drvdata *drvdata = dev_get_drvdata(csdev->dev.parent); struct perf_output_handle *handle = data; + struct cs_buffers *buf = etm_perf_sink_config(handle); spin_lock_irqsave(&drvdata->spinlock, flags); @@ -186,7 +187,7 @@ } /* Get a handle on the pid of the process to monitor */ - pid = task_pid_nr(handle->event->owner); + pid = buf->pid; if (drvdata->pid != -1 && drvdata->pid != pid) { ret = -EBUSY; @@ -383,6 +384,7 @@ if (!buf) return NULL; + buf->pid = task_pid_nr(event->owner); buf->snapshot = overwrite; buf->nr_pages = nr_pages; buf->data_pages = pages; --- linux-azure-5.8-5.8.0.orig/drivers/hwtracing/coresight/coresight-etm-perf.c +++ linux-azure-5.8-5.8.0/drivers/hwtracing/coresight/coresight-etm-perf.c @@ -126,10 +126,10 @@ cpumask_t *mask = &event_data->mask; struct coresight_device *sink; - if (WARN_ON(cpumask_empty(mask))) + if (!event_data->snk_config) return; - if (!event_data->snk_config) + if (WARN_ON(cpumask_empty(mask))) return; cpu = cpumask_first(mask); @@ -210,7 +210,7 @@ u32 id; int cpu = event->cpu; cpumask_t *mask; - struct coresight_device *sink; + struct coresight_device *sink = NULL; struct etm_event_data *event_data = NULL; event_data = alloc_event_data(cpu); @@ -222,8 +222,6 @@ if (event->attr.config2) { id = (u32)event->attr.config2; sink = coresight_get_sink_by_id(id); - } else { - sink = coresight_get_enabled_sink(true); } if (!sink) @@ -310,6 +308,16 @@ if (!event_data) goto fail; + /* + * Check if this ETM is allowed to trace, as decided + * at etm_setup_aux(). This could be due to an unreachable + * sink from this ETM. We can't do much in this case if + * the sink was specified or hinted to the driver. For + * now, simply don't record anything on this ETM. + */ + if (!cpumask_test_cpu(cpu, &event_data->mask)) + goto fail_end_stop; + path = etm_event_cpu_path(event_data, cpu); /* We need a sink, no need to continue without one */ sink = coresight_get_sink(path); --- linux-azure-5.8-5.8.0.orig/drivers/hwtracing/coresight/coresight-etm4x-sysfs.c +++ linux-azure-5.8-5.8.0/drivers/hwtracing/coresight/coresight-etm4x-sysfs.c @@ -206,7 +206,7 @@ * each trace run. */ config->vinst_ctrl = BIT(0); - if (drvdata->nr_addr_cmp == true) { + if (drvdata->nr_addr_cmp > 0) { config->mode |= ETM_MODE_VIEWINST_STARTSTOP; /* SSSTATUS, bit[9] */ config->vinst_ctrl |= BIT(9); @@ -389,7 +389,7 @@ config->eventctrl1 &= ~BIT(12); /* bit[8], Instruction stall bit */ - if (config->mode & ETM_MODE_ISTALL_EN) + if ((config->mode & ETM_MODE_ISTALL_EN) && (drvdata->stallctl == true)) config->stall_ctrl |= BIT(8); else config->stall_ctrl &= ~BIT(8); --- linux-azure-5.8-5.8.0.orig/drivers/hwtracing/coresight/coresight-etm4x.c +++ linux-azure-5.8-5.8.0/drivers/hwtracing/coresight/coresight-etm4x.c @@ -48,12 +48,11 @@ MODULE_PARM_DESC(pm_save_enable, "Save/restore state on power down: 1 = never, 2 = self-hosted"); -/* The number of ETMv4 currently registered */ -static int etm4_count; static struct etmv4_drvdata *etmdrvdata[NR_CPUS]; static void etm4_set_default_config(struct etmv4_config *config); static int etm4_set_event_filters(struct etmv4_drvdata *drvdata, struct perf_event *event); +static u64 etm4_get_access_type(struct etmv4_config *config); static enum cpuhp_state hp_online; @@ -132,7 +131,8 @@ writel_relaxed(0x0, drvdata->base + TRCAUXCTLR); writel_relaxed(config->eventctrl0, drvdata->base + TRCEVENTCTL0R); writel_relaxed(config->eventctrl1, drvdata->base + TRCEVENTCTL1R); - writel_relaxed(config->stall_ctrl, drvdata->base + TRCSTALLCTLR); + if (drvdata->stallctl) + writel_relaxed(config->stall_ctrl, drvdata->base + TRCSTALLCTLR); writel_relaxed(config->ts_ctrl, drvdata->base + TRCTSCTLR); writel_relaxed(config->syncfreq, drvdata->base + TRCSYNCPR); writel_relaxed(config->ccctlr, drvdata->base + TRCCCCTLR); @@ -507,6 +507,12 @@ readl_relaxed(drvdata->base + TRCSSCSRn(i)); } + /* read back the current counter values */ + for (i = 0; i < drvdata->nr_cntr; i++) { + config->cntr_val[i] = + readl_relaxed(drvdata->base + TRCCNTVRn(i)); + } + coresight_disclaim_device_unlocked(drvdata->base); CS_LOCK(drvdata->base); @@ -775,6 +781,22 @@ CS_LOCK(drvdata->base); } +/* Set ELx trace filter access in the TRCVICTLR register */ +static void etm4_set_victlr_access(struct etmv4_config *config) +{ + u64 access_type; + + config->vinst_ctrl &= ~(ETM_EXLEVEL_S_VICTLR_MASK | ETM_EXLEVEL_NS_VICTLR_MASK); + + /* + * TRCVICTLR::EXLEVEL_NS:EXLEVELS: Set kernel / user filtering + * bits in vinst_ctrl, same bit pattern as TRCACATRn values returned by + * etm4_get_access_type() but with a relative shift in this register. + */ + access_type = etm4_get_access_type(config) << ETM_EXLEVEL_LSHIFT_TRCVICTLR; + config->vinst_ctrl |= (u32)access_type; +} + static void etm4_set_default_config(struct etmv4_config *config) { /* disable all events tracing */ @@ -792,6 +814,9 @@ /* TRCVICTLR::EVENT = 0x01, select the always on logic */ config->vinst_ctrl = BIT(0); + + /* TRCVICTLR::EXLEVEL_NS:EXLEVELS: Set kernel / user filtering */ + etm4_set_victlr_access(config); } static u64 etm4_get_ns_access_type(struct etmv4_config *config) @@ -1056,7 +1081,7 @@ void etm4_config_trace_mode(struct etmv4_config *config) { - u32 addr_acc, mode; + u32 mode; mode = config->mode; mode &= (ETM_MODE_EXCL_KERN | ETM_MODE_EXCL_USER); @@ -1068,15 +1093,7 @@ if (!(mode & ETM_MODE_EXCL_KERN) && !(mode & ETM_MODE_EXCL_USER)) return; - addr_acc = config->addr_acc[ETM_DEFAULT_ADDR_COMP]; - /* clear default config */ - addr_acc &= ~(ETM_EXLEVEL_NS_APP | ETM_EXLEVEL_NS_OS | - ETM_EXLEVEL_NS_HYP); - - addr_acc |= etm4_get_ns_access_type(config); - - config->addr_acc[ETM_DEFAULT_ADDR_COMP] = addr_acc; - config->addr_acc[ETM_DEFAULT_ADDR_COMP + 1] = addr_acc; + etm4_set_victlr_access(config); } static int etm4_online_cpu(unsigned int cpu) @@ -1157,7 +1174,8 @@ state->trcauxctlr = readl(drvdata->base + TRCAUXCTLR); state->trceventctl0r = readl(drvdata->base + TRCEVENTCTL0R); state->trceventctl1r = readl(drvdata->base + TRCEVENTCTL1R); - state->trcstallctlr = readl(drvdata->base + TRCSTALLCTLR); + if (drvdata->stallctl) + state->trcstallctlr = readl(drvdata->base + TRCSTALLCTLR); state->trctsctlr = readl(drvdata->base + TRCTSCTLR); state->trcsyncpr = readl(drvdata->base + TRCSYNCPR); state->trcccctlr = readl(drvdata->base + TRCCCCTLR); @@ -1173,7 +1191,7 @@ state->trcvdsacctlr = readl(drvdata->base + TRCVDSACCTLR); state->trcvdarcctlr = readl(drvdata->base + TRCVDARCCTLR); - for (i = 0; i < drvdata->nrseqstate; i++) + for (i = 0; i < drvdata->nrseqstate - 1; i++) state->trcseqevr[i] = readl(drvdata->base + TRCSEQEVRn(i)); state->trcseqrstevr = readl(drvdata->base + TRCSEQRSTEVR); @@ -1196,8 +1214,8 @@ } for (i = 0; i < drvdata->nr_addr_cmp * 2; i++) { - state->trcacvr[i] = readl(drvdata->base + TRCACVRn(i)); - state->trcacatr[i] = readl(drvdata->base + TRCACATRn(i)); + state->trcacvr[i] = readq(drvdata->base + TRCACVRn(i)); + state->trcacatr[i] = readq(drvdata->base + TRCACATRn(i)); } /* @@ -1208,16 +1226,16 @@ */ for (i = 0; i < drvdata->numcidc; i++) - state->trccidcvr[i] = readl(drvdata->base + TRCCIDCVRn(i)); + state->trccidcvr[i] = readq(drvdata->base + TRCCIDCVRn(i)); for (i = 0; i < drvdata->numvmidc; i++) - state->trcvmidcvr[i] = readl(drvdata->base + TRCVMIDCVRn(i)); + state->trcvmidcvr[i] = readq(drvdata->base + TRCVMIDCVRn(i)); state->trccidcctlr0 = readl(drvdata->base + TRCCIDCCTLR0); state->trccidcctlr1 = readl(drvdata->base + TRCCIDCCTLR1); state->trcvmidcctlr0 = readl(drvdata->base + TRCVMIDCCTLR0); - state->trcvmidcctlr0 = readl(drvdata->base + TRCVMIDCCTLR1); + state->trcvmidcctlr1 = readl(drvdata->base + TRCVMIDCCTLR1); state->trcclaimset = readl(drvdata->base + TRCCLAIMCLR); @@ -1262,7 +1280,8 @@ writel_relaxed(state->trcauxctlr, drvdata->base + TRCAUXCTLR); writel_relaxed(state->trceventctl0r, drvdata->base + TRCEVENTCTL0R); writel_relaxed(state->trceventctl1r, drvdata->base + TRCEVENTCTL1R); - writel_relaxed(state->trcstallctlr, drvdata->base + TRCSTALLCTLR); + if (drvdata->stallctl) + writel_relaxed(state->trcstallctlr, drvdata->base + TRCSTALLCTLR); writel_relaxed(state->trctsctlr, drvdata->base + TRCTSCTLR); writel_relaxed(state->trcsyncpr, drvdata->base + TRCSYNCPR); writel_relaxed(state->trcccctlr, drvdata->base + TRCCCCTLR); @@ -1278,7 +1297,7 @@ writel_relaxed(state->trcvdsacctlr, drvdata->base + TRCVDSACCTLR); writel_relaxed(state->trcvdarcctlr, drvdata->base + TRCVDARCCTLR); - for (i = 0; i < drvdata->nrseqstate; i++) + for (i = 0; i < drvdata->nrseqstate - 1; i++) writel_relaxed(state->trcseqevr[i], drvdata->base + TRCSEQEVRn(i)); @@ -1309,25 +1328,25 @@ } for (i = 0; i < drvdata->nr_addr_cmp * 2; i++) { - writel_relaxed(state->trcacvr[i], + writeq_relaxed(state->trcacvr[i], drvdata->base + TRCACVRn(i)); - writel_relaxed(state->trcacatr[i], + writeq_relaxed(state->trcacatr[i], drvdata->base + TRCACATRn(i)); } for (i = 0; i < drvdata->numcidc; i++) - writel_relaxed(state->trccidcvr[i], + writeq_relaxed(state->trccidcvr[i], drvdata->base + TRCCIDCVRn(i)); for (i = 0; i < drvdata->numvmidc; i++) - writel_relaxed(state->trcvmidcvr[i], + writeq_relaxed(state->trcvmidcvr[i], drvdata->base + TRCVMIDCVRn(i)); writel_relaxed(state->trccidcctlr0, drvdata->base + TRCCIDCCTLR0); writel_relaxed(state->trccidcctlr1, drvdata->base + TRCCIDCCTLR1); writel_relaxed(state->trcvmidcctlr0, drvdata->base + TRCVMIDCCTLR0); - writel_relaxed(state->trcvmidcctlr0, drvdata->base + TRCVMIDCCTLR1); + writel_relaxed(state->trcvmidcctlr1, drvdata->base + TRCVMIDCCTLR1); writel_relaxed(state->trcclaimset, drvdata->base + TRCCLAIMSET); @@ -1388,28 +1407,25 @@ .notifier_call = etm4_cpu_pm_notify, }; -/* Setup PM. Called with cpus locked. Deals with error conditions and counts */ -static int etm4_pm_setup_cpuslocked(void) +/* Setup PM. Deals with error conditions and counts */ +static int __init etm4_pm_setup(void) { int ret; - if (etm4_count++) - return 0; - ret = cpu_pm_register_notifier(&etm4_cpu_pm_nb); if (ret) - goto reduce_count; + return ret; - ret = cpuhp_setup_state_nocalls_cpuslocked(CPUHP_AP_ARM_CORESIGHT_STARTING, - "arm/coresight4:starting", - etm4_starting_cpu, etm4_dying_cpu); + ret = cpuhp_setup_state_nocalls(CPUHP_AP_ARM_CORESIGHT_STARTING, + "arm/coresight4:starting", + etm4_starting_cpu, etm4_dying_cpu); if (ret) goto unregister_notifier; - ret = cpuhp_setup_state_nocalls_cpuslocked(CPUHP_AP_ONLINE_DYN, - "arm/coresight4:online", - etm4_online_cpu, NULL); + ret = cpuhp_setup_state_nocalls(CPUHP_AP_ONLINE_DYN, + "arm/coresight4:online", + etm4_online_cpu, NULL); /* HP dyn state ID returned in ret on success */ if (ret > 0) { @@ -1418,21 +1434,15 @@ } /* failed dyn state - remove others */ - cpuhp_remove_state_nocalls_cpuslocked(CPUHP_AP_ARM_CORESIGHT_STARTING); + cpuhp_remove_state_nocalls(CPUHP_AP_ARM_CORESIGHT_STARTING); unregister_notifier: cpu_pm_unregister_notifier(&etm4_cpu_pm_nb); - -reduce_count: - --etm4_count; return ret; } -static void etm4_pm_clear(void) +static void __init etm4_pm_clear(void) { - if (--etm4_count != 0) - return; - cpu_pm_unregister_notifier(&etm4_cpu_pm_nb); cpuhp_remove_state_nocalls(CPUHP_AP_ARM_CORESIGHT_STARTING); if (hp_online) { @@ -1485,22 +1495,12 @@ if (!desc.name) return -ENOMEM; - cpus_read_lock(); etmdrvdata[drvdata->cpu] = drvdata; if (smp_call_function_single(drvdata->cpu, etm4_init_arch_data, drvdata, 1)) dev_err(dev, "ETM arch init failed\n"); - ret = etm4_pm_setup_cpuslocked(); - cpus_read_unlock(); - - /* etm4_pm_setup_cpuslocked() does its own cleanup - exit on error */ - if (ret) { - etmdrvdata[drvdata->cpu] = NULL; - return ret; - } - if (etm4_arch_supported(drvdata->arch) == false) { ret = -EINVAL; goto err_arch_supported; @@ -1547,7 +1547,6 @@ err_arch_supported: etmdrvdata[drvdata->cpu] = NULL; - etm4_pm_clear(); return ret; } @@ -1585,4 +1584,23 @@ .probe = etm4_probe, .id_table = etm4_ids, }; -builtin_amba_driver(etm4x_driver); + +static int __init etm4x_init(void) +{ + int ret; + + ret = etm4_pm_setup(); + + /* etm4_pm_setup() does its own cleanup - exit on error */ + if (ret) + return ret; + + ret = amba_driver_register(&etm4x_driver); + if (ret) { + pr_err("Error registering etm4x driver\n"); + etm4_pm_clear(); + } + + return ret; +} +device_initcall(etm4x_init); --- linux-azure-5.8-5.8.0.orig/drivers/hwtracing/coresight/coresight-etm4x.h +++ linux-azure-5.8-5.8.0/drivers/hwtracing/coresight/coresight-etm4x.h @@ -133,7 +133,7 @@ #define ETMv4_MAX_CTXID_CMP 8 #define ETM_MAX_VMID_CMP 8 #define ETM_MAX_PE_CMP 8 -#define ETM_MAX_RES_SEL 16 +#define ETM_MAX_RES_SEL 32 #define ETM_MAX_SS_CMP 8 #define ETM_ARCH_V4 0x40 @@ -192,6 +192,9 @@ #define ETM_EXLEVEL_NS_HYP BIT(14) #define ETM_EXLEVEL_NS_NA BIT(15) +/* access level control in TRCVICTLR - same bits as TRCACATRn but shifted */ +#define ETM_EXLEVEL_LSHIFT_TRCVICTLR 8 + /* secure / non secure masks - TRCVICTLR, IDR3 */ #define ETM_EXLEVEL_S_VICTLR_MASK GENMASK(19, 16) /* NS MON (EL3) mode never implemented */ @@ -325,7 +328,7 @@ u32 trccntctlr[ETMv4_MAX_CNTR]; u32 trccntvr[ETMv4_MAX_CNTR]; - u32 trcrsctlr[ETM_MAX_RES_SEL * 2]; + u32 trcrsctlr[ETM_MAX_RES_SEL]; u32 trcssccr[ETM_MAX_SS_CMP]; u32 trcsscsr[ETM_MAX_SS_CMP]; @@ -334,7 +337,7 @@ u64 trcacvr[ETM_MAX_SINGLE_ADDR_CMP]; u64 trcacatr[ETM_MAX_SINGLE_ADDR_CMP]; u64 trccidcvr[ETMv4_MAX_CTXID_CMP]; - u32 trcvmidcvr[ETM_MAX_VMID_CMP]; + u64 trcvmidcvr[ETM_MAX_VMID_CMP]; u32 trccidcctlr0; u32 trccidcctlr1; u32 trcvmidcctlr0; --- linux-azure-5.8-5.8.0.orig/drivers/hwtracing/coresight/coresight-platform.c +++ linux-azure-5.8-5.8.0/drivers/hwtracing/coresight/coresight-platform.c @@ -712,11 +712,11 @@ return dir; if (dir == ACPI_CORESIGHT_LINK_MASTER) { - if (ptr->outport > pdata->nr_outport) - pdata->nr_outport = ptr->outport; + if (ptr->outport >= pdata->nr_outport) + pdata->nr_outport = ptr->outport + 1; ptr++; } else { - WARN_ON(pdata->nr_inport == ptr->child_port); + WARN_ON(pdata->nr_inport == ptr->child_port + 1); /* * We do not track input port connections for a device. * However we need the highest port number described, @@ -724,8 +724,8 @@ * record for an output connection. Hence, do not move * the ptr for input connections */ - if (ptr->child_port > pdata->nr_inport) - pdata->nr_inport = ptr->child_port; + if (ptr->child_port >= pdata->nr_inport) + pdata->nr_inport = ptr->child_port + 1; } } --- linux-azure-5.8-5.8.0.orig/drivers/hwtracing/coresight/coresight-priv.h +++ linux-azure-5.8-5.8.0/drivers/hwtracing/coresight/coresight-priv.h @@ -87,6 +87,7 @@ * struct cs_buffer - keep track of a recording session' specifics * @cur: index of the current buffer * @nr_pages: max number of pages granted to us + * @pid: PID this cs_buffer belongs to * @offset: offset within the current buffer * @data_size: how much we collected in this run * @snapshot: is this run in snapshot mode @@ -95,6 +96,7 @@ struct cs_buffers { unsigned int cur; unsigned int nr_pages; + pid_t pid; unsigned long offset; local_t data_size; bool snapshot; --- linux-azure-5.8-5.8.0.orig/drivers/hwtracing/coresight/coresight-tmc-etf.c +++ linux-azure-5.8-5.8.0/drivers/hwtracing/coresight/coresight-tmc-etf.c @@ -227,6 +227,7 @@ unsigned long flags; struct tmc_drvdata *drvdata = dev_get_drvdata(csdev->dev.parent); struct perf_output_handle *handle = data; + struct cs_buffers *buf = etm_perf_sink_config(handle); spin_lock_irqsave(&drvdata->spinlock, flags); do { @@ -243,7 +244,7 @@ } /* Get a handle on the pid of the process to monitor */ - pid = task_pid_nr(handle->event->owner); + pid = buf->pid; if (drvdata->pid != -1 && drvdata->pid != pid) { ret = -EBUSY; @@ -399,6 +400,7 @@ if (!buf) return NULL; + buf->pid = task_pid_nr(event->owner); buf->snapshot = overwrite; buf->nr_pages = nr_pages; buf->data_pages = pages; @@ -639,15 +641,14 @@ spin_lock_irqsave(&drvdata->spinlock, flags); - /* There is no point in reading a TMC in HW FIFO mode */ - mode = readl_relaxed(drvdata->base + TMC_MODE); - if (mode != TMC_MODE_CIRCULAR_BUFFER) { - spin_unlock_irqrestore(&drvdata->spinlock, flags); - return -EINVAL; - } - /* Re-enable the TMC if need be */ if (drvdata->mode == CS_MODE_SYSFS) { + /* There is no point in reading a TMC in HW FIFO mode */ + mode = readl_relaxed(drvdata->base + TMC_MODE); + if (mode != TMC_MODE_CIRCULAR_BUFFER) { + spin_unlock_irqrestore(&drvdata->spinlock, flags); + return -EINVAL; + } /* * The trace run will continue with the same allocated trace * buffer. As such zero-out the buffer so that we don't end --- linux-azure-5.8-5.8.0.orig/drivers/hwtracing/coresight/coresight-tmc-etr.c +++ linux-azure-5.8-5.8.0/drivers/hwtracing/coresight/coresight-tmc-etr.c @@ -217,6 +217,8 @@ } else { page = alloc_pages_node(node, GFP_KERNEL | __GFP_ZERO, 0); + if (!page) + goto err; } paddr = dma_map_page(real_dev, page, 0, PAGE_SIZE, dir); if (dma_mapping_error(real_dev, paddr)) @@ -1533,7 +1535,7 @@ /* Insert barrier packets at the beginning, if there was an overflow */ if (lost) - tmc_etr_buf_insert_barrier_packet(etr_buf, etr_buf->offset); + tmc_etr_buf_insert_barrier_packet(etr_buf, offset); tmc_etr_sync_perf_buffer(etr_perf, offset, size); /* --- linux-azure-5.8-5.8.0.orig/drivers/hwtracing/coresight/coresight.c +++ linux-azure-5.8-5.8.0/drivers/hwtracing/coresight/coresight.c @@ -1023,7 +1023,6 @@ { struct coresight_device *csdev = to_coresight_device(dev); - cti_remove_assoc_from_csdev(csdev); fwnode_handle_put(csdev->dev.fwnode); kfree(csdev->refcnt); kfree(csdev); @@ -1357,6 +1356,7 @@ { etm_perf_del_symlink_sink(csdev); /* Remove references of that device in the topology */ + cti_remove_assoc_from_csdev(csdev); coresight_remove_conns(csdev); coresight_release_platform_data(csdev, csdev->pdata); device_unregister(&csdev->dev); --- linux-azure-5.8-5.8.0.orig/drivers/hwtracing/intel_th/pci.c +++ linux-azure-5.8-5.8.0/drivers/hwtracing/intel_th/pci.c @@ -263,6 +263,21 @@ PCI_DEVICE(PCI_VENDOR_ID_INTEL, 0x1bcc), .driver_data = (kernel_ulong_t)&intel_th_2x, }, + { + /* Alder Lake */ + PCI_DEVICE(PCI_VENDOR_ID_INTEL, 0x7aa6), + .driver_data = (kernel_ulong_t)&intel_th_2x, + }, + { + /* Alder Lake-P */ + PCI_DEVICE(PCI_VENDOR_ID_INTEL, 0x51a6), + .driver_data = (kernel_ulong_t)&intel_th_2x, + }, + { + /* Alder Lake CPU */ + PCI_DEVICE(PCI_VENDOR_ID_INTEL, 0x466f), + .driver_data = (kernel_ulong_t)&intel_th_2x, + }, { 0 }, }; --- linux-azure-5.8-5.8.0.orig/drivers/hwtracing/stm/heartbeat.c +++ linux-azure-5.8-5.8.0/drivers/hwtracing/stm/heartbeat.c @@ -64,7 +64,7 @@ static int stm_heartbeat_init(void) { - int i, ret = -ENOMEM; + int i, ret; if (nr_devs < 0 || nr_devs > STM_HEARTBEAT_MAX) return -EINVAL; @@ -72,8 +72,10 @@ for (i = 0; i < nr_devs; i++) { stm_heartbeat[i].data.name = kasprintf(GFP_KERNEL, "heartbeat.%d", i); - if (!stm_heartbeat[i].data.name) + if (!stm_heartbeat[i].data.name) { + ret = -ENOMEM; goto fail_unregister; + } stm_heartbeat[i].data.nr_chans = 1; stm_heartbeat[i].data.link = stm_heartbeat_link; --- linux-azure-5.8-5.8.0.orig/drivers/i2c/algos/i2c-algo-pca.c +++ linux-azure-5.8-5.8.0/drivers/i2c/algos/i2c-algo-pca.c @@ -41,8 +41,22 @@ pca_outw(adap, I2C_PCA_INDPTR, I2C_PCA_IPRESET); pca_outw(adap, I2C_PCA_IND, 0xA5); pca_outw(adap, I2C_PCA_IND, 0x5A); + + /* + * After a reset we need to re-apply any configuration + * (calculated in pca_init) to get the bus in a working state. + */ + pca_outw(adap, I2C_PCA_INDPTR, I2C_PCA_IMODE); + pca_outw(adap, I2C_PCA_IND, adap->bus_settings.mode); + pca_outw(adap, I2C_PCA_INDPTR, I2C_PCA_ISCLL); + pca_outw(adap, I2C_PCA_IND, adap->bus_settings.tlow); + pca_outw(adap, I2C_PCA_INDPTR, I2C_PCA_ISCLH); + pca_outw(adap, I2C_PCA_IND, adap->bus_settings.thi); + + pca_set_con(adap, I2C_PCA_CON_ENSIO); } else { adap->reset_chip(adap->data); + pca_set_con(adap, I2C_PCA_CON_ENSIO | adap->bus_settings.clock_freq); } } @@ -423,13 +437,14 @@ " Use the nominal frequency.\n", adap->name); } - pca_reset(pca_data); - clock = pca_clock(pca_data); printk(KERN_INFO "%s: Clock frequency is %dkHz\n", adap->name, freqs[clock]); - pca_set_con(pca_data, I2C_PCA_CON_ENSIO | clock); + /* Store settings as these will be needed when the PCA chip is reset */ + pca_data->bus_settings.clock_freq = clock; + + pca_reset(pca_data); } else { int clock; int mode; @@ -496,19 +511,15 @@ thi = tlow * min_thi / min_tlow; } + /* Store settings as these will be needed when the PCA chip is reset */ + pca_data->bus_settings.mode = mode; + pca_data->bus_settings.tlow = tlow; + pca_data->bus_settings.thi = thi; + pca_reset(pca_data); printk(KERN_INFO "%s: Clock frequency is %dHz\n", adap->name, clock * 100); - - pca_outw(pca_data, I2C_PCA_INDPTR, I2C_PCA_IMODE); - pca_outw(pca_data, I2C_PCA_IND, mode); - pca_outw(pca_data, I2C_PCA_INDPTR, I2C_PCA_ISCLL); - pca_outw(pca_data, I2C_PCA_IND, tlow); - pca_outw(pca_data, I2C_PCA_INDPTR, I2C_PCA_ISCLH); - pca_outw(pca_data, I2C_PCA_IND, thi); - - pca_set_con(pca_data, I2C_PCA_CON_ENSIO); } udelay(500); /* 500 us for oscillator to stabilise */ --- linux-azure-5.8-5.8.0.orig/drivers/i2c/busses/Kconfig +++ linux-azure-5.8-5.8.0/drivers/i2c/busses/Kconfig @@ -1008,6 +1008,7 @@ config I2C_SPRD tristate "Spreadtrum I2C interface" depends on I2C=y && (ARCH_SPRD || COMPILE_TEST) + depends on COMMON_CLK help If you say yes to this option, support will be included for the Spreadtrum I2C interface. @@ -1191,6 +1192,7 @@ tristate "Renesas R-Car I2C Controller" depends on ARCH_RENESAS || COMPILE_TEST select I2C_SLAVE + select RESET_CONTROLLER if ARCH_RCAR_GEN3 help If you say yes to this option, support will be included for the R-Car I2C controller. --- linux-azure-5.8-5.8.0.orig/drivers/i2c/busses/i2c-aspeed.c +++ linux-azure-5.8-5.8.0/drivers/i2c/busses/i2c-aspeed.c @@ -69,6 +69,7 @@ * These share bit definitions, so use the same values for the enable & * status bits. */ +#define ASPEED_I2CD_INTR_RECV_MASK 0xf000ffff #define ASPEED_I2CD_INTR_SDA_DL_TIMEOUT BIT(14) #define ASPEED_I2CD_INTR_BUS_RECOVER_DONE BIT(13) #define ASPEED_I2CD_INTR_SLAVE_MATCH BIT(7) @@ -604,6 +605,7 @@ writel(irq_received & ~ASPEED_I2CD_INTR_RX_DONE, bus->base + ASPEED_I2C_INTR_STS_REG); readl(bus->base + ASPEED_I2C_INTR_STS_REG); + irq_received &= ASPEED_I2CD_INTR_RECV_MASK; irq_remaining = irq_received; #if IS_ENABLED(CONFIG_I2C_SLAVE) --- linux-azure-5.8-5.8.0.orig/drivers/i2c/busses/i2c-bcm-iproc.c +++ linux-azure-5.8-5.8.0/drivers/i2c/busses/i2c-bcm-iproc.c @@ -159,6 +159,11 @@ #define IE_S_ALL_INTERRUPT_SHIFT 21 #define IE_S_ALL_INTERRUPT_MASK 0x3f +/* + * It takes ~18us to reading 10bytes of data, hence to keep tasklet + * running for less time, max slave read per tasklet is set to 10 bytes. + */ +#define MAX_SLAVE_RX_PER_INT 10 enum i2c_slave_read_status { I2C_SLAVE_RX_FIFO_EMPTY = 0, @@ -205,8 +210,18 @@ /* bytes that have been read */ unsigned int rx_bytes; unsigned int thld_bytes; + + bool slave_rx_only; + bool rx_start_rcvd; + bool slave_read_complete; + u32 tx_underrun; + u32 slave_int_mask; + struct tasklet_struct slave_rx_tasklet; }; +/* tasklet to process slave rx data */ +static void slave_rx_tasklet_fn(unsigned long); + /* * Can be expanded in the future if more interrupt status bits are utilized */ @@ -215,7 +230,8 @@ #define ISR_MASK_SLAVE (BIT(IS_S_START_BUSY_SHIFT)\ | BIT(IS_S_RX_EVENT_SHIFT) | BIT(IS_S_RD_EVENT_SHIFT)\ - | BIT(IS_S_TX_UNDERRUN_SHIFT)) + | BIT(IS_S_TX_UNDERRUN_SHIFT) | BIT(IS_S_RX_FIFO_FULL_SHIFT)\ + | BIT(IS_S_RX_THLD_SHIFT)) static int bcm_iproc_i2c_reg_slave(struct i2c_client *slave); static int bcm_iproc_i2c_unreg_slave(struct i2c_client *slave); @@ -259,6 +275,7 @@ { u32 val; + iproc_i2c->tx_underrun = 0; if (need_reset) { /* put controller in reset */ val = iproc_i2c_rd_reg(iproc_i2c, CFG_OFFSET); @@ -295,8 +312,11 @@ /* Enable interrupt register to indicate a valid byte in receive fifo */ val = BIT(IE_S_RX_EVENT_SHIFT); + /* Enable interrupt register to indicate a Master read transaction */ + val |= BIT(IE_S_RD_EVENT_SHIFT); /* Enable interrupt register for the Slave BUSY command */ val |= BIT(IE_S_START_BUSY_SHIFT); + iproc_i2c->slave_int_mask = val; iproc_i2c_wr_reg(iproc_i2c, IE_OFFSET, val); } @@ -321,76 +341,176 @@ } } -static bool bcm_iproc_i2c_slave_isr(struct bcm_iproc_i2c_dev *iproc_i2c, - u32 status) +static void bcm_iproc_i2c_slave_read(struct bcm_iproc_i2c_dev *iproc_i2c) { + u8 rx_data, rx_status; + u32 rx_bytes = 0; u32 val; - u8 value, rx_status; - /* Slave RX byte receive */ - if (status & BIT(IS_S_RX_EVENT_SHIFT)) { + while (rx_bytes < MAX_SLAVE_RX_PER_INT) { val = iproc_i2c_rd_reg(iproc_i2c, S_RX_OFFSET); rx_status = (val >> S_RX_STATUS_SHIFT) & S_RX_STATUS_MASK; - if (rx_status == I2C_SLAVE_RX_START) { - /* Start of SMBUS for Master write */ - i2c_slave_event(iproc_i2c->slave, - I2C_SLAVE_WRITE_REQUESTED, &value); + rx_data = ((val >> S_RX_DATA_SHIFT) & S_RX_DATA_MASK); - val = iproc_i2c_rd_reg(iproc_i2c, S_RX_OFFSET); - value = (u8)((val >> S_RX_DATA_SHIFT) & S_RX_DATA_MASK); + if (rx_status == I2C_SLAVE_RX_START) { + /* Start of SMBUS Master write */ i2c_slave_event(iproc_i2c->slave, - I2C_SLAVE_WRITE_RECEIVED, &value); - } else if (status & BIT(IS_S_RD_EVENT_SHIFT)) { - /* Start of SMBUS for Master Read */ + I2C_SLAVE_WRITE_REQUESTED, &rx_data); + iproc_i2c->rx_start_rcvd = true; + iproc_i2c->slave_read_complete = false; + } else if (rx_status == I2C_SLAVE_RX_DATA && + iproc_i2c->rx_start_rcvd) { + /* Middle of SMBUS Master write */ i2c_slave_event(iproc_i2c->slave, - I2C_SLAVE_READ_REQUESTED, &value); - iproc_i2c_wr_reg(iproc_i2c, S_TX_OFFSET, value); + I2C_SLAVE_WRITE_RECEIVED, &rx_data); + } else if (rx_status == I2C_SLAVE_RX_END && + iproc_i2c->rx_start_rcvd) { + /* End of SMBUS Master write */ + if (iproc_i2c->slave_rx_only) + i2c_slave_event(iproc_i2c->slave, + I2C_SLAVE_WRITE_RECEIVED, + &rx_data); - val = BIT(S_CMD_START_BUSY_SHIFT); - iproc_i2c_wr_reg(iproc_i2c, S_CMD_OFFSET, val); + i2c_slave_event(iproc_i2c->slave, I2C_SLAVE_STOP, + &rx_data); + } else if (rx_status == I2C_SLAVE_RX_FIFO_EMPTY) { + iproc_i2c->rx_start_rcvd = false; + iproc_i2c->slave_read_complete = true; + break; + } - /* - * Enable interrupt for TX FIFO becomes empty and - * less than PKT_LENGTH bytes were output on the SMBUS - */ - val = iproc_i2c_rd_reg(iproc_i2c, IE_OFFSET); - val |= BIT(IE_S_TX_UNDERRUN_SHIFT); - iproc_i2c_wr_reg(iproc_i2c, IE_OFFSET, val); - } else { - /* Master write other than start */ - value = (u8)((val >> S_RX_DATA_SHIFT) & S_RX_DATA_MASK); + rx_bytes++; + } +} + +static void slave_rx_tasklet_fn(unsigned long data) +{ + struct bcm_iproc_i2c_dev *iproc_i2c = (struct bcm_iproc_i2c_dev *)data; + u32 int_clr; + + bcm_iproc_i2c_slave_read(iproc_i2c); + + /* clear pending IS_S_RX_EVENT_SHIFT interrupt */ + int_clr = BIT(IS_S_RX_EVENT_SHIFT); + + if (!iproc_i2c->slave_rx_only && iproc_i2c->slave_read_complete) { + /* + * In case of single byte master-read request, + * IS_S_TX_UNDERRUN_SHIFT event is generated before + * IS_S_START_BUSY_SHIFT event. Hence start slave data send + * from first IS_S_TX_UNDERRUN_SHIFT event. + * + * This means don't send any data from slave when + * IS_S_RD_EVENT_SHIFT event is generated else it will increment + * eeprom or other backend slave driver read pointer twice. + */ + iproc_i2c->tx_underrun = 0; + iproc_i2c->slave_int_mask |= BIT(IE_S_TX_UNDERRUN_SHIFT); + + /* clear IS_S_RD_EVENT_SHIFT interrupt */ + int_clr |= BIT(IS_S_RD_EVENT_SHIFT); + } + + /* clear slave interrupt */ + iproc_i2c_wr_reg(iproc_i2c, IS_OFFSET, int_clr); + /* enable slave interrupts */ + iproc_i2c_wr_reg(iproc_i2c, IE_OFFSET, iproc_i2c->slave_int_mask); +} + +static bool bcm_iproc_i2c_slave_isr(struct bcm_iproc_i2c_dev *iproc_i2c, + u32 status) +{ + u32 val; + u8 value; + + /* + * Slave events in case of master-write, master-write-read and, + * master-read + * + * Master-write : only IS_S_RX_EVENT_SHIFT event + * Master-write-read: both IS_S_RX_EVENT_SHIFT and IS_S_RD_EVENT_SHIFT + * events + * Master-read : both IS_S_RX_EVENT_SHIFT and IS_S_RD_EVENT_SHIFT + * events or only IS_S_RD_EVENT_SHIFT + */ + if (status & BIT(IS_S_RX_EVENT_SHIFT) || + status & BIT(IS_S_RD_EVENT_SHIFT)) { + /* disable slave interrupts */ + val = iproc_i2c_rd_reg(iproc_i2c, IE_OFFSET); + val &= ~iproc_i2c->slave_int_mask; + iproc_i2c_wr_reg(iproc_i2c, IE_OFFSET, val); + + if (status & BIT(IS_S_RD_EVENT_SHIFT)) + /* Master-write-read request */ + iproc_i2c->slave_rx_only = false; + else + /* Master-write request only */ + iproc_i2c->slave_rx_only = true; + + /* schedule tasklet to read data later */ + tasklet_schedule(&iproc_i2c->slave_rx_tasklet); + + /* clear only IS_S_RX_EVENT_SHIFT interrupt */ + iproc_i2c_wr_reg(iproc_i2c, IS_OFFSET, + BIT(IS_S_RX_EVENT_SHIFT)); + } + + if (status & BIT(IS_S_TX_UNDERRUN_SHIFT)) { + iproc_i2c->tx_underrun++; + if (iproc_i2c->tx_underrun == 1) + /* Start of SMBUS for Master Read */ i2c_slave_event(iproc_i2c->slave, - I2C_SLAVE_WRITE_RECEIVED, &value); - if (rx_status == I2C_SLAVE_RX_END) - i2c_slave_event(iproc_i2c->slave, - I2C_SLAVE_STOP, &value); - } - } else if (status & BIT(IS_S_TX_UNDERRUN_SHIFT)) { - /* Master read other than start */ - i2c_slave_event(iproc_i2c->slave, - I2C_SLAVE_READ_PROCESSED, &value); + I2C_SLAVE_READ_REQUESTED, + &value); + else + /* Master read other than start */ + i2c_slave_event(iproc_i2c->slave, + I2C_SLAVE_READ_PROCESSED, + &value); iproc_i2c_wr_reg(iproc_i2c, S_TX_OFFSET, value); + /* start transfer */ val = BIT(S_CMD_START_BUSY_SHIFT); iproc_i2c_wr_reg(iproc_i2c, S_CMD_OFFSET, val); + + /* clear interrupt */ + iproc_i2c_wr_reg(iproc_i2c, IS_OFFSET, + BIT(IS_S_TX_UNDERRUN_SHIFT)); } - /* Stop */ + /* Stop received from master in case of master read transaction */ if (status & BIT(IS_S_START_BUSY_SHIFT)) { - i2c_slave_event(iproc_i2c->slave, I2C_SLAVE_STOP, &value); /* * Enable interrupt for TX FIFO becomes empty and * less than PKT_LENGTH bytes were output on the SMBUS */ - val = iproc_i2c_rd_reg(iproc_i2c, IE_OFFSET); - val &= ~BIT(IE_S_TX_UNDERRUN_SHIFT); - iproc_i2c_wr_reg(iproc_i2c, IE_OFFSET, val); + iproc_i2c->slave_int_mask &= ~BIT(IE_S_TX_UNDERRUN_SHIFT); + iproc_i2c_wr_reg(iproc_i2c, IE_OFFSET, + iproc_i2c->slave_int_mask); + + /* End of SMBUS for Master Read */ + val = BIT(S_TX_WR_STATUS_SHIFT); + iproc_i2c_wr_reg(iproc_i2c, S_TX_OFFSET, val); + + val = BIT(S_CMD_START_BUSY_SHIFT); + iproc_i2c_wr_reg(iproc_i2c, S_CMD_OFFSET, val); + + /* flush TX FIFOs */ + val = iproc_i2c_rd_reg(iproc_i2c, S_FIFO_CTRL_OFFSET); + val |= (BIT(S_FIFO_TX_FLUSH_SHIFT)); + iproc_i2c_wr_reg(iproc_i2c, S_FIFO_CTRL_OFFSET, val); + + i2c_slave_event(iproc_i2c->slave, I2C_SLAVE_STOP, &value); + + /* clear interrupt */ + iproc_i2c_wr_reg(iproc_i2c, IS_OFFSET, + BIT(IS_S_START_BUSY_SHIFT)); } - /* clear interrupt status */ - iproc_i2c_wr_reg(iproc_i2c, IS_OFFSET, status); + /* check slave transmit status only if slave is transmitting */ + if (!iproc_i2c->slave_rx_only) + bcm_iproc_i2c_check_slave_status(iproc_i2c); - bcm_iproc_i2c_check_slave_status(iproc_i2c); return true; } @@ -505,12 +625,17 @@ static irqreturn_t bcm_iproc_i2c_isr(int irq, void *data) { struct bcm_iproc_i2c_dev *iproc_i2c = data; - u32 status = iproc_i2c_rd_reg(iproc_i2c, IS_OFFSET); + u32 slave_status; + u32 status; bool ret; - u32 sl_status = status & ISR_MASK_SLAVE; - if (sl_status) { - ret = bcm_iproc_i2c_slave_isr(iproc_i2c, sl_status); + status = iproc_i2c_rd_reg(iproc_i2c, IS_OFFSET); + /* process only slave interrupt which are enabled */ + slave_status = status & iproc_i2c_rd_reg(iproc_i2c, IE_OFFSET) & + ISR_MASK_SLAVE; + + if (slave_status) { + ret = bcm_iproc_i2c_slave_isr(iproc_i2c, slave_status); if (ret) return IRQ_HANDLED; else @@ -720,7 +845,7 @@ /* mark the last byte */ if (!process_call && (i == msg->len - 1)) - val |= 1 << M_TX_WR_STATUS_SHIFT; + val |= BIT(M_TX_WR_STATUS_SHIFT); iproc_i2c_wr_reg(iproc_i2c, M_TX_OFFSET, val); } @@ -738,7 +863,7 @@ */ addr = i2c_8bit_addr_from_msg(msg); /* mark it the last byte out */ - val = addr | (1 << M_TX_WR_STATUS_SHIFT); + val = addr | BIT(M_TX_WR_STATUS_SHIFT); iproc_i2c_wr_reg(iproc_i2c, M_TX_OFFSET, val); } @@ -1066,6 +1191,10 @@ return -EAFNOSUPPORT; iproc_i2c->slave = slave; + + tasklet_init(&iproc_i2c->slave_rx_tasklet, slave_rx_tasklet_fn, + (unsigned long)iproc_i2c); + bcm_iproc_i2c_slave_init(iproc_i2c, false); return 0; } @@ -1078,7 +1207,7 @@ if (!iproc_i2c->slave) return -EINVAL; - iproc_i2c->slave = NULL; + disable_irq(iproc_i2c->irq); /* disable all slave interrupts */ tmp = iproc_i2c_rd_reg(iproc_i2c, IE_OFFSET); @@ -1086,11 +1215,24 @@ IE_S_ALL_INTERRUPT_SHIFT); iproc_i2c_wr_reg(iproc_i2c, IE_OFFSET, tmp); + tasklet_kill(&iproc_i2c->slave_rx_tasklet); + /* Erase the slave address programmed */ tmp = iproc_i2c_rd_reg(iproc_i2c, S_CFG_SMBUS_ADDR_OFFSET); tmp &= ~BIT(S_CFG_EN_NIC_SMB_ADDR3_SHIFT); iproc_i2c_wr_reg(iproc_i2c, S_CFG_SMBUS_ADDR_OFFSET, tmp); + /* flush TX/RX FIFOs */ + tmp = (BIT(S_FIFO_RX_FLUSH_SHIFT) | BIT(S_FIFO_TX_FLUSH_SHIFT)); + iproc_i2c_wr_reg(iproc_i2c, S_FIFO_CTRL_OFFSET, tmp); + + /* clear all pending slave interrupts */ + iproc_i2c_wr_reg(iproc_i2c, IS_OFFSET, ISR_MASK_SLAVE); + + iproc_i2c->slave = NULL; + + enable_irq(iproc_i2c->irq); + return 0; } --- linux-azure-5.8-5.8.0.orig/drivers/i2c/busses/i2c-brcmstb.c +++ linux-azure-5.8-5.8.0/drivers/i2c/busses/i2c-brcmstb.c @@ -316,7 +316,7 @@ goto cmd_out; } - if ((CMD_RD || CMD_WR) && + if ((cmd == CMD_RD || cmd == CMD_WR) && bsc_readl(dev, iic_enable) & BSC_IIC_EN_NOACK_MASK) { rc = -EREMOTEIO; dev_dbg(dev->device, "controller received NOACK intr for %s\n", --- linux-azure-5.8-5.8.0.orig/drivers/i2c/busses/i2c-cpm.c +++ linux-azure-5.8-5.8.0/drivers/i2c/busses/i2c-cpm.c @@ -65,6 +65,9 @@ char res1[4]; /* Reserved */ ushort rpbase; /* Relocation pointer */ char res2[2]; /* Reserved */ + /* The following elements are only for CPM2 */ + char res3[4]; /* Reserved */ + uint sdmatmp; /* Internal */ }; #define I2COM_START 0x80 --- linux-azure-5.8-5.8.0.orig/drivers/i2c/busses/i2c-designware-slave.c +++ linux-azure-5.8-5.8.0/drivers/i2c/busses/i2c-designware-slave.c @@ -159,7 +159,6 @@ u32 raw_stat, stat, enabled, tmp; u8 val = 0, slave_activity; - regmap_read(dev->map, DW_IC_INTR_STAT, &stat); regmap_read(dev->map, DW_IC_ENABLE, &enabled); regmap_read(dev->map, DW_IC_RAW_INTR_STAT, &raw_stat); regmap_read(dev->map, DW_IC_STATUS, &tmp); @@ -168,32 +167,30 @@ if (!enabled || !(raw_stat & ~DW_IC_INTR_ACTIVITY) || !dev->slave) return 0; + stat = i2c_dw_read_clear_intrbits_slave(dev); dev_dbg(dev->dev, "%#x STATUS SLAVE_ACTIVITY=%#x : RAW_INTR_STAT=%#x : INTR_STAT=%#x\n", enabled, slave_activity, raw_stat, stat); - if ((stat & DW_IC_INTR_RX_FULL) && (stat & DW_IC_INTR_STOP_DET)) - i2c_slave_event(dev->slave, I2C_SLAVE_WRITE_REQUESTED, &val); + if (stat & DW_IC_INTR_RX_FULL) { + if (dev->status != STATUS_WRITE_IN_PROGRESS) { + dev->status = STATUS_WRITE_IN_PROGRESS; + i2c_slave_event(dev->slave, I2C_SLAVE_WRITE_REQUESTED, + &val); + } + + regmap_read(dev->map, DW_IC_DATA_CMD, &tmp); + val = tmp; + if (!i2c_slave_event(dev->slave, I2C_SLAVE_WRITE_RECEIVED, + &val)) + dev_vdbg(dev->dev, "Byte %X acked!", val); + } if (stat & DW_IC_INTR_RD_REQ) { if (slave_activity) { - if (stat & DW_IC_INTR_RX_FULL) { - regmap_read(dev->map, DW_IC_DATA_CMD, &tmp); - val = tmp; - - if (!i2c_slave_event(dev->slave, - I2C_SLAVE_WRITE_RECEIVED, - &val)) { - dev_vdbg(dev->dev, "Byte %X acked!", - val); - } - regmap_read(dev->map, DW_IC_CLR_RD_REQ, &tmp); - stat = i2c_dw_read_clear_intrbits_slave(dev); - } else { - regmap_read(dev->map, DW_IC_CLR_RD_REQ, &tmp); - regmap_read(dev->map, DW_IC_CLR_RX_UNDER, &tmp); - stat = i2c_dw_read_clear_intrbits_slave(dev); - } + regmap_read(dev->map, DW_IC_CLR_RD_REQ, &tmp); + + dev->status = STATUS_READ_IN_PROGRESS; if (!i2c_slave_event(dev->slave, I2C_SLAVE_READ_REQUESTED, &val)) @@ -205,21 +202,11 @@ if (!i2c_slave_event(dev->slave, I2C_SLAVE_READ_PROCESSED, &val)) regmap_read(dev->map, DW_IC_CLR_RX_DONE, &tmp); - - i2c_slave_event(dev->slave, I2C_SLAVE_STOP, &val); - stat = i2c_dw_read_clear_intrbits_slave(dev); - return 1; } - if (stat & DW_IC_INTR_RX_FULL) { - regmap_read(dev->map, DW_IC_DATA_CMD, &tmp); - val = tmp; - if (!i2c_slave_event(dev->slave, I2C_SLAVE_WRITE_RECEIVED, - &val)) - dev_vdbg(dev->dev, "Byte %X acked!", val); - } else { + if (stat & DW_IC_INTR_STOP_DET) { + dev->status = STATUS_IDLE; i2c_slave_event(dev->slave, I2C_SLAVE_STOP, &val); - stat = i2c_dw_read_clear_intrbits_slave(dev); } return 1; @@ -230,7 +217,6 @@ struct dw_i2c_dev *dev = dev_id; int ret; - i2c_dw_read_clear_intrbits_slave(dev); ret = i2c_dw_irq_handler_slave(dev); if (ret > 0) complete(&dev->cmd_complete); --- linux-azure-5.8-5.8.0.orig/drivers/i2c/busses/i2c-exynos5.c +++ linux-azure-5.8-5.8.0/drivers/i2c/busses/i2c-exynos5.c @@ -606,6 +606,7 @@ u32 i2c_ctl; u32 int_en = 0; u32 i2c_auto_conf = 0; + u32 i2c_addr = 0; u32 fifo_ctl; unsigned long flags; unsigned short trig_lvl; @@ -640,7 +641,12 @@ int_en |= HSI2C_INT_TX_ALMOSTEMPTY_EN; } - writel(HSI2C_SLV_ADDR_MAS(i2c->msg->addr), i2c->regs + HSI2C_ADDR); + i2c_addr = HSI2C_SLV_ADDR_MAS(i2c->msg->addr); + + if (i2c->op_clock >= I2C_MAX_FAST_MODE_PLUS_FREQ) + i2c_addr |= HSI2C_MASTER_ID(MASTER_ID(i2c->adap.nr)); + + writel(i2c_addr, i2c->regs + HSI2C_ADDR); writel(fifo_ctl, i2c->regs + HSI2C_FIFO_CTL); writel(i2c_ctl, i2c->regs + HSI2C_CTL); --- linux-azure-5.8-5.8.0.orig/drivers/i2c/busses/i2c-i801.c +++ linux-azure-5.8-5.8.0/drivers/i2c/busses/i2c-i801.c @@ -67,6 +67,7 @@ * Comet Lake-H (PCH) 0x06a3 32 hard yes yes yes * Elkhart Lake (PCH) 0x4b23 32 hard yes yes yes * Tiger Lake-LP (PCH) 0xa0a3 32 hard yes yes yes + * Tiger Lake-H (PCH) 0x43a3 32 hard yes yes yes * Jasper Lake (SOC) 0x4da3 32 hard yes yes yes * Comet Lake-V (PCH) 0xa3a3 32 hard yes yes yes * @@ -221,6 +222,7 @@ #define PCI_DEVICE_ID_INTEL_GEMINILAKE_SMBUS 0x31d4 #define PCI_DEVICE_ID_INTEL_ICELAKE_LP_SMBUS 0x34a3 #define PCI_DEVICE_ID_INTEL_5_3400_SERIES_SMBUS 0x3b30 +#define PCI_DEVICE_ID_INTEL_TIGERLAKE_H_SMBUS 0x43a3 #define PCI_DEVICE_ID_INTEL_ELKHART_LAKE_SMBUS 0x4b23 #define PCI_DEVICE_ID_INTEL_JASPER_LAKE_SMBUS 0x4da3 #define PCI_DEVICE_ID_INTEL_BROXTON_SMBUS 0x5ad4 @@ -1074,6 +1076,7 @@ { PCI_DEVICE(PCI_VENDOR_ID_INTEL, PCI_DEVICE_ID_INTEL_COMETLAKE_V_SMBUS) }, { PCI_DEVICE(PCI_VENDOR_ID_INTEL, PCI_DEVICE_ID_INTEL_ELKHART_LAKE_SMBUS) }, { PCI_DEVICE(PCI_VENDOR_ID_INTEL, PCI_DEVICE_ID_INTEL_TIGERLAKE_LP_SMBUS) }, + { PCI_DEVICE(PCI_VENDOR_ID_INTEL, PCI_DEVICE_ID_INTEL_TIGERLAKE_H_SMBUS) }, { PCI_DEVICE(PCI_VENDOR_ID_INTEL, PCI_DEVICE_ID_INTEL_JASPER_LAKE_SMBUS) }, { 0, } }; @@ -1439,7 +1442,7 @@ /* Register GPIO descriptor lookup table */ lookup = devm_kzalloc(dev, - struct_size(lookup, table, mux_config->n_gpios), + struct_size(lookup, table, mux_config->n_gpios + 1), GFP_KERNEL); if (!lookup) return -ENOMEM; @@ -1703,6 +1706,16 @@ static inline void i801_acpi_remove(struct i801_priv *priv) { } #endif +static unsigned char i801_setup_hstcfg(struct i801_priv *priv) +{ + unsigned char hstcfg = priv->original_hstcfg; + + hstcfg &= ~SMBHSTCFG_I2C_EN; /* SMBus timing */ + hstcfg |= SMBHSTCFG_HST_EN; + pci_write_config_byte(priv->pci_dev, SMBHSTCFG, hstcfg); + return hstcfg; +} + static int i801_probe(struct pci_dev *dev, const struct pci_device_id *id) { unsigned char temp; @@ -1748,6 +1761,7 @@ case PCI_DEVICE_ID_INTEL_COMETLAKE_H_SMBUS: case PCI_DEVICE_ID_INTEL_ELKHART_LAKE_SMBUS: case PCI_DEVICE_ID_INTEL_TIGERLAKE_LP_SMBUS: + case PCI_DEVICE_ID_INTEL_TIGERLAKE_H_SMBUS: case PCI_DEVICE_ID_INTEL_JASPER_LAKE_SMBUS: priv->features |= FEATURE_BLOCK_PROC; priv->features |= FEATURE_I2C_BLOCK_READ; @@ -1822,14 +1836,10 @@ return err; } - pci_read_config_byte(priv->pci_dev, SMBHSTCFG, &temp); - priv->original_hstcfg = temp; - temp &= ~SMBHSTCFG_I2C_EN; /* SMBus timing */ - if (!(temp & SMBHSTCFG_HST_EN)) { + pci_read_config_byte(priv->pci_dev, SMBHSTCFG, &priv->original_hstcfg); + temp = i801_setup_hstcfg(priv); + if (!(priv->original_hstcfg & SMBHSTCFG_HST_EN)) dev_info(&dev->dev, "Enabling SMBus device\n"); - temp |= SMBHSTCFG_HST_EN; - } - pci_write_config_byte(priv->pci_dev, SMBHSTCFG, temp); if (temp & SMBHSTCFG_SMB_SMI_EN) { dev_dbg(&dev->dev, "SMBus using interrupt SMI#\n"); @@ -1903,6 +1913,7 @@ pci_set_drvdata(dev, priv); + dev_pm_set_driver_flags(&dev->dev, DPM_FLAG_NO_DIRECT_COMPLETE); pm_runtime_set_autosuspend_delay(&dev->dev, 1000); pm_runtime_use_autosuspend(&dev->dev); pm_runtime_put_autosuspend(&dev->dev); @@ -1955,6 +1966,7 @@ { struct i801_priv *priv = dev_get_drvdata(dev); + i801_setup_hstcfg(priv); i801_enable_host_notify(&priv->adapter); return 0; --- linux-azure-5.8-5.8.0.orig/drivers/i2c/busses/i2c-imx.c +++ linux-azure-5.8-5.8.0/drivers/i2c/busses/i2c-imx.c @@ -412,6 +412,19 @@ dma->chan_using = NULL; } +static void i2c_imx_clear_irq(struct imx_i2c_struct *i2c_imx, unsigned int bits) +{ + unsigned int temp; + + /* + * i2sr_clr_opcode is the value to clear all interrupts. Here we want to + * clear only , so we write ~i2sr_clr_opcode with just + * toggled. This is required because i.MX needs W0C and Vybrid uses W1C. + */ + temp = ~i2c_imx->hwdata->i2sr_clr_opcode ^ bits; + imx_i2c_write_reg(temp, i2c_imx, IMX_I2C_I2SR); +} + static int i2c_imx_bus_busy(struct imx_i2c_struct *i2c_imx, int for_busy, bool atomic) { unsigned long orig_jiffies = jiffies; @@ -424,8 +437,7 @@ /* check for arbitration lost */ if (temp & I2SR_IAL) { - temp &= ~I2SR_IAL; - imx_i2c_write_reg(temp, i2c_imx, IMX_I2C_I2SR); + i2c_imx_clear_irq(i2c_imx, I2SR_IAL); return -EAGAIN; } @@ -469,7 +481,7 @@ */ readb_poll_timeout_atomic(addr, regval, regval & I2SR_IIF, 5, 1000 + 100); i2c_imx->i2csr = regval; - imx_i2c_write_reg(0, i2c_imx, IMX_I2C_I2SR); + i2c_imx_clear_irq(i2c_imx, I2SR_IIF | I2SR_IAL); } else { wait_event_timeout(i2c_imx->queue, i2c_imx->i2csr & I2SR_IIF, HZ / 10); } @@ -478,6 +490,16 @@ dev_dbg(&i2c_imx->adapter.dev, "<%s> Timeout\n", __func__); return -ETIMEDOUT; } + + /* check for arbitration lost */ + if (i2c_imx->i2csr & I2SR_IAL) { + dev_dbg(&i2c_imx->adapter.dev, "<%s> Arbitration lost\n", __func__); + i2c_imx_clear_irq(i2c_imx, I2SR_IAL); + + i2c_imx->i2csr = 0; + return -EAGAIN; + } + dev_dbg(&i2c_imx->adapter.dev, "<%s> TRX complete\n", __func__); i2c_imx->i2csr = 0; return 0; @@ -593,6 +615,8 @@ /* Stop I2C transaction */ dev_dbg(&i2c_imx->adapter.dev, "<%s>\n", __func__); temp = imx_i2c_read_reg(i2c_imx, IMX_I2C_I2CR); + if (!(temp & I2CR_MSTA)) + i2c_imx->stopped = 1; temp &= ~(I2CR_MSTA | I2CR_MTX); if (i2c_imx->dma) temp &= ~I2CR_DMAEN; @@ -623,9 +647,7 @@ if (temp & I2SR_IIF) { /* save status register */ i2c_imx->i2csr = temp; - temp &= ~I2SR_IIF; - temp |= (i2c_imx->hwdata->i2sr_clr_opcode & I2SR_IIF); - imx_i2c_write_reg(temp, i2c_imx, IMX_I2C_I2SR); + i2c_imx_clear_irq(i2c_imx, I2SR_IIF); wake_up(&i2c_imx->queue); return IRQ_HANDLED; } @@ -758,9 +780,12 @@ */ dev_dbg(dev, "<%s> clear MSTA\n", __func__); temp = imx_i2c_read_reg(i2c_imx, IMX_I2C_I2CR); + if (!(temp & I2CR_MSTA)) + i2c_imx->stopped = 1; temp &= ~(I2CR_MSTA | I2CR_MTX); imx_i2c_write_reg(temp, i2c_imx, IMX_I2C_I2CR); - i2c_imx_bus_busy(i2c_imx, 0, false); + if (!i2c_imx->stopped) + i2c_imx_bus_busy(i2c_imx, 0, false); } else { /* * For i2c master receiver repeat restart operation like: @@ -885,9 +910,12 @@ dev_dbg(&i2c_imx->adapter.dev, "<%s> clear MSTA\n", __func__); temp = imx_i2c_read_reg(i2c_imx, IMX_I2C_I2CR); + if (!(temp & I2CR_MSTA)) + i2c_imx->stopped = 1; temp &= ~(I2CR_MSTA | I2CR_MTX); imx_i2c_write_reg(temp, i2c_imx, IMX_I2C_I2CR); - i2c_imx_bus_busy(i2c_imx, 0, atomic); + if (!i2c_imx->stopped) + i2c_imx_bus_busy(i2c_imx, 0, atomic); } else { /* * For i2c master receiver repeat restart operation like: @@ -1171,14 +1199,6 @@ return ret; } - /* Request IRQ */ - ret = devm_request_irq(&pdev->dev, irq, i2c_imx_isr, IRQF_SHARED, - pdev->name, i2c_imx); - if (ret) { - dev_err(&pdev->dev, "can't claim irq %d\n", irq); - goto clk_disable; - } - /* Init queue */ init_waitqueue_head(&i2c_imx->queue); @@ -1197,6 +1217,14 @@ if (ret < 0) goto rpm_disable; + /* Request IRQ */ + ret = request_threaded_irq(irq, i2c_imx_isr, NULL, IRQF_SHARED, + pdev->name, i2c_imx); + if (ret) { + dev_err(&pdev->dev, "can't claim irq %d\n", irq); + goto rpm_disable; + } + /* Set up clock divider */ i2c_imx->bitrate = I2C_MAX_STANDARD_MODE_FREQ; ret = of_property_read_u32(pdev->dev.of_node, @@ -1239,13 +1267,12 @@ clk_notifier_unregister: clk_notifier_unregister(i2c_imx->clk, &i2c_imx->clk_change_nb); + free_irq(irq, i2c_imx); rpm_disable: pm_runtime_put_noidle(&pdev->dev); pm_runtime_disable(&pdev->dev); pm_runtime_set_suspended(&pdev->dev); pm_runtime_dont_use_autosuspend(&pdev->dev); - -clk_disable: clk_disable_unprepare(i2c_imx->clk); return ret; } @@ -1253,7 +1280,7 @@ static int i2c_imx_remove(struct platform_device *pdev) { struct imx_i2c_struct *i2c_imx = platform_get_drvdata(pdev); - int ret; + int irq, ret; ret = pm_runtime_get_sync(&pdev->dev); if (ret < 0) @@ -1273,6 +1300,9 @@ imx_i2c_write_reg(0, i2c_imx, IMX_I2C_I2SR); clk_notifier_unregister(i2c_imx->clk, &i2c_imx->clk_change_nb); + irq = platform_get_irq(pdev, 0); + if (irq >= 0) + free_irq(irq, i2c_imx); clk_disable_unprepare(i2c_imx->clk); pm_runtime_put_noidle(&pdev->dev); --- linux-azure-5.8-5.8.0.orig/drivers/i2c/busses/i2c-meson.c +++ linux-azure-5.8-5.8.0/drivers/i2c/busses/i2c-meson.c @@ -5,6 +5,7 @@ * Copyright (C) 2014 Beniamino Galvani */ +#include #include #include #include @@ -33,12 +34,17 @@ #define REG_CTRL_ACK_IGNORE BIT(1) #define REG_CTRL_STATUS BIT(2) #define REG_CTRL_ERROR BIT(3) -#define REG_CTRL_CLKDIV_SHIFT 12 -#define REG_CTRL_CLKDIV_MASK GENMASK(21, 12) -#define REG_CTRL_CLKDIVEXT_SHIFT 28 -#define REG_CTRL_CLKDIVEXT_MASK GENMASK(29, 28) +#define REG_CTRL_CLKDIV GENMASK(21, 12) +#define REG_CTRL_CLKDIVEXT GENMASK(29, 28) + +#define REG_SLV_ADDR GENMASK(7, 0) +#define REG_SLV_SDA_FILTER GENMASK(10, 8) +#define REG_SLV_SCL_FILTER GENMASK(13, 11) +#define REG_SLV_SCL_LOW GENMASK(27, 16) +#define REG_SLV_SCL_LOW_EN BIT(28) #define I2C_TIMEOUT_MS 500 +#define FILTER_DELAY 15 enum { TOKEN_END = 0, @@ -133,19 +139,24 @@ unsigned long clk_rate = clk_get_rate(i2c->clk); unsigned int div; - div = DIV_ROUND_UP(clk_rate, freq * i2c->data->div_factor); + div = DIV_ROUND_UP(clk_rate, freq); + div -= FILTER_DELAY; + div = DIV_ROUND_UP(div, i2c->data->div_factor); /* clock divider has 12 bits */ - if (div >= (1 << 12)) { + if (div > GENMASK(11, 0)) { dev_err(i2c->dev, "requested bus frequency too low\n"); - div = (1 << 12) - 1; + div = GENMASK(11, 0); } - meson_i2c_set_mask(i2c, REG_CTRL, REG_CTRL_CLKDIV_MASK, - (div & GENMASK(9, 0)) << REG_CTRL_CLKDIV_SHIFT); + meson_i2c_set_mask(i2c, REG_CTRL, REG_CTRL_CLKDIV, + FIELD_PREP(REG_CTRL_CLKDIV, div & GENMASK(9, 0))); + + meson_i2c_set_mask(i2c, REG_CTRL, REG_CTRL_CLKDIVEXT, + FIELD_PREP(REG_CTRL_CLKDIVEXT, div >> 10)); - meson_i2c_set_mask(i2c, REG_CTRL, REG_CTRL_CLKDIVEXT_MASK, - (div >> 10) << REG_CTRL_CLKDIVEXT_SHIFT); + /* Disable HIGH/LOW mode */ + meson_i2c_set_mask(i2c, REG_SLAVE_ADDR, REG_SLV_SCL_LOW_EN, 0); dev_dbg(i2c->dev, "%s: clk %lu, freq %u, div %u\n", __func__, clk_rate, freq, div); @@ -280,7 +291,10 @@ token = (msg->flags & I2C_M_RD) ? TOKEN_SLAVE_ADDR_READ : TOKEN_SLAVE_ADDR_WRITE; - writel(msg->addr << 1, i2c->regs + REG_SLAVE_ADDR); + + meson_i2c_set_mask(i2c, REG_SLAVE_ADDR, REG_SLV_ADDR, + FIELD_PREP(REG_SLV_ADDR, msg->addr << 1)); + meson_i2c_add_token(i2c, TOKEN_START); meson_i2c_add_token(i2c, token); } @@ -357,16 +371,12 @@ struct meson_i2c *i2c = adap->algo_data; int i, ret = 0; - clk_enable(i2c->clk); - for (i = 0; i < num; i++) { ret = meson_i2c_xfer_msg(i2c, msgs + i, i == num - 1, atomic); if (ret) break; } - clk_disable(i2c->clk); - return ret ?: i; } @@ -435,7 +445,7 @@ return ret; } - ret = clk_prepare(i2c->clk); + ret = clk_prepare_enable(i2c->clk); if (ret < 0) { dev_err(&pdev->dev, "can't prepare clock\n"); return ret; @@ -457,10 +467,14 @@ ret = i2c_add_adapter(&i2c->adap); if (ret < 0) { - clk_unprepare(i2c->clk); + clk_disable_unprepare(i2c->clk); return ret; } + /* Disable filtering */ + meson_i2c_set_mask(i2c, REG_SLAVE_ADDR, + REG_SLV_SDA_FILTER | REG_SLV_SCL_FILTER, 0); + meson_i2c_set_clk_div(i2c, timings.bus_freq_hz); return 0; @@ -471,7 +485,7 @@ struct meson_i2c *i2c = platform_get_drvdata(pdev); i2c_del_adapter(&i2c->adap); - clk_unprepare(i2c->clk); + clk_disable_unprepare(i2c->clk); return 0; } --- linux-azure-5.8-5.8.0.orig/drivers/i2c/busses/i2c-mt65xx.c +++ linux-azure-5.8-5.8.0/drivers/i2c/busses/i2c-mt65xx.c @@ -38,6 +38,7 @@ #define I2C_IO_CONFIG_OPEN_DRAIN 0x0003 #define I2C_IO_CONFIG_PUSH_PULL 0x0000 #define I2C_SOFT_RST 0x0001 +#define I2C_HANDSHAKE_RST 0x0020 #define I2C_FIFO_ADDR_CLR 0x0001 #define I2C_DELAY_LEN 0x0002 #define I2C_TIME_CLR_VALUE 0x0000 @@ -45,13 +46,16 @@ #define I2C_WRRD_TRANAC_VALUE 0x0002 #define I2C_RD_TRANAC_VALUE 0x0001 #define I2C_SCL_MIS_COMP_VALUE 0x0000 +#define I2C_CHN_CLR_FLAG 0x0000 #define I2C_DMA_CON_TX 0x0000 #define I2C_DMA_CON_RX 0x0001 #define I2C_DMA_START_EN 0x0001 #define I2C_DMA_INT_FLAG_NONE 0x0000 #define I2C_DMA_CLR_FLAG 0x0000 +#define I2C_DMA_WARM_RST 0x0001 #define I2C_DMA_HARD_RST 0x0002 +#define I2C_DMA_HANDSHAKE_RST 0x0004 #define I2C_DMA_4G_MODE 0x0001 #define MAX_SAMPLE_CNT_DIV 8 @@ -452,7 +456,24 @@ { u16 control_reg; - mtk_i2c_writew(i2c, I2C_SOFT_RST, OFFSET_SOFTRESET); + if (i2c->dev_comp->dma_sync) { + writel(I2C_DMA_WARM_RST, i2c->pdmabase + OFFSET_RST); + udelay(10); + writel(I2C_DMA_CLR_FLAG, i2c->pdmabase + OFFSET_RST); + udelay(10); + writel(I2C_DMA_HANDSHAKE_RST | I2C_DMA_HARD_RST, + i2c->pdmabase + OFFSET_RST); + mtk_i2c_writew(i2c, I2C_HANDSHAKE_RST | I2C_SOFT_RST, + OFFSET_SOFTRESET); + udelay(10); + writel(I2C_DMA_CLR_FLAG, i2c->pdmabase + OFFSET_RST); + mtk_i2c_writew(i2c, I2C_CHN_CLR_FLAG, OFFSET_SOFTRESET); + } else { + writel(I2C_DMA_HARD_RST, i2c->pdmabase + OFFSET_RST); + udelay(50); + writel(I2C_DMA_CLR_FLAG, i2c->pdmabase + OFFSET_RST); + mtk_i2c_writew(i2c, I2C_SOFT_RST, OFFSET_SOFTRESET); + } /* Set ioconfig */ if (i2c->use_push_pull) @@ -506,10 +527,6 @@ mtk_i2c_writew(i2c, control_reg, OFFSET_CONTROL); mtk_i2c_writew(i2c, I2C_DELAY_LEN, OFFSET_DELAY_LEN); - - writel(I2C_DMA_HARD_RST, i2c->pdmabase + OFFSET_RST); - udelay(50); - writel(I2C_DMA_CLR_FLAG, i2c->pdmabase + OFFSET_RST); } static const struct i2c_spec_values *mtk_i2c_get_spec(unsigned int speed) @@ -658,8 +675,8 @@ unsigned int cnt_mul; int ret = -EINVAL; - if (target_speed > I2C_MAX_FAST_MODE_PLUS_FREQ) - target_speed = I2C_MAX_FAST_MODE_PLUS_FREQ; + if (target_speed > I2C_MAX_HIGH_SPEED_MODE_FREQ) + target_speed = I2C_MAX_HIGH_SPEED_MODE_FREQ; max_step_cnt = mtk_i2c_max_step_cnt(target_speed); base_step_cnt = max_step_cnt; @@ -736,7 +753,7 @@ for (clk_div = 1; clk_div <= max_clk_div; clk_div++) { clk_src = parent_clk / clk_div; - if (target_speed > I2C_MAX_FAST_MODE_FREQ) { + if (target_speed > I2C_MAX_FAST_MODE_PLUS_FREQ) { /* Set master code speed register */ ret = mtk_i2c_calculate_speed(i2c, clk_src, I2C_MAX_FAST_MODE_FREQ, @@ -1232,7 +1249,8 @@ mtk_i2c_clock_disable(i2c); ret = devm_request_irq(&pdev->dev, irq, mtk_i2c_irq, - IRQF_TRIGGER_NONE, I2C_DRV_NAME, i2c); + IRQF_NO_SUSPEND | IRQF_TRIGGER_NONE, + I2C_DRV_NAME, i2c); if (ret < 0) { dev_err(&pdev->dev, "Request I2C IRQ %d fail\n", irq); @@ -1259,7 +1277,16 @@ } #ifdef CONFIG_PM_SLEEP -static int mtk_i2c_resume(struct device *dev) +static int mtk_i2c_suspend_noirq(struct device *dev) +{ + struct mtk_i2c *i2c = dev_get_drvdata(dev); + + i2c_mark_adapter_suspended(&i2c->adap); + + return 0; +} + +static int mtk_i2c_resume_noirq(struct device *dev) { int ret; struct mtk_i2c *i2c = dev_get_drvdata(dev); @@ -1274,12 +1301,15 @@ mtk_i2c_clock_disable(i2c); + i2c_mark_adapter_resumed(&i2c->adap); + return 0; } #endif static const struct dev_pm_ops mtk_i2c_pm = { - SET_SYSTEM_SLEEP_PM_OPS(NULL, mtk_i2c_resume) + SET_NOIRQ_SYSTEM_SLEEP_PM_OPS(mtk_i2c_suspend_noirq, + mtk_i2c_resume_noirq) }; static struct platform_driver mtk_i2c_driver = { --- linux-azure-5.8-5.8.0.orig/drivers/i2c/busses/i2c-mxs.c +++ linux-azure-5.8-5.8.0/drivers/i2c/busses/i2c-mxs.c @@ -25,6 +25,7 @@ #include #include #include +#include #define DRIVER_NAME "mxs-i2c" @@ -200,7 +201,8 @@ dma_map_sg(i2c->dev, &i2c->sg_io[0], 1, DMA_TO_DEVICE); desc = dmaengine_prep_slave_sg(i2c->dmach, &i2c->sg_io[0], 1, DMA_MEM_TO_DEV, - DMA_PREP_INTERRUPT | DMA_CTRL_ACK); + DMA_PREP_INTERRUPT | + MXS_DMA_CTRL_WAIT4END); if (!desc) { dev_err(i2c->dev, "Failed to get DMA data write descriptor.\n"); @@ -228,7 +230,8 @@ dma_map_sg(i2c->dev, &i2c->sg_io[1], 1, DMA_FROM_DEVICE); desc = dmaengine_prep_slave_sg(i2c->dmach, &i2c->sg_io[1], 1, DMA_DEV_TO_MEM, - DMA_PREP_INTERRUPT | DMA_CTRL_ACK); + DMA_PREP_INTERRUPT | + MXS_DMA_CTRL_WAIT4END); if (!desc) { dev_err(i2c->dev, "Failed to get DMA data write descriptor.\n"); @@ -260,7 +263,8 @@ dma_map_sg(i2c->dev, i2c->sg_io, 2, DMA_TO_DEVICE); desc = dmaengine_prep_slave_sg(i2c->dmach, i2c->sg_io, 2, DMA_MEM_TO_DEV, - DMA_PREP_INTERRUPT | DMA_CTRL_ACK); + DMA_PREP_INTERRUPT | + MXS_DMA_CTRL_WAIT4END); if (!desc) { dev_err(i2c->dev, "Failed to get DMA data write descriptor.\n"); --- linux-azure-5.8-5.8.0.orig/drivers/i2c/busses/i2c-npcm7xx.c +++ linux-azure-5.8-5.8.0/drivers/i2c/busses/i2c-npcm7xx.c @@ -2093,8 +2093,12 @@ } } - /* Adaptive TimeOut: astimated time in usec + 100% margin */ - timeout_usec = (2 * 10000 / bus->bus_freq) * (2 + nread + nwrite); + /* + * Adaptive TimeOut: estimated time in usec + 100% margin: + * 2: double the timeout for clock stretching case + * 9: bits per transaction (including the ack/nack) + */ + timeout_usec = (2 * 9 * USEC_PER_SEC / bus->bus_freq) * (2 + nread + nwrite); timeout = max(msecs_to_jiffies(35), usecs_to_jiffies(timeout_usec)); if (nwrite >= 32 * 1024 || nread >= 32 * 1024) { dev_err(bus->dev, "i2c%d buffer too big\n", bus->num); @@ -2159,6 +2163,15 @@ if (bus->cmd_err == -EAGAIN) ret = i2c_recover_bus(adap); + /* + * After any type of error, check if LAST bit is still set, + * due to a HW issue. + * It cannot be cleared without resetting the module. + */ + if (bus->cmd_err && + (NPCM_I2CRXF_CTL_LAST_PEC & ioread8(bus->reg + NPCM_I2CRXF_CTL))) + npcm_i2c_reset(bus); + #if IS_ENABLED(CONFIG_I2C_SLAVE) /* reenable slave if it was enabled */ if (bus->slave) --- linux-azure-5.8-5.8.0.orig/drivers/i2c/busses/i2c-octeon-core.c +++ linux-azure-5.8-5.8.0/drivers/i2c/busses/i2c-octeon-core.c @@ -347,7 +347,7 @@ if (result) return result; if (recv_len && i == 0) { - if (data[i] > I2C_SMBUS_BLOCK_MAX + 1) + if (data[i] > I2C_SMBUS_BLOCK_MAX) return -EPROTO; length += data[i]; } --- linux-azure-5.8-5.8.0.orig/drivers/i2c/busses/i2c-owl.c +++ linux-azure-5.8-5.8.0/drivers/i2c/busses/i2c-owl.c @@ -176,6 +176,9 @@ fifostat = readl(i2c_dev->base + OWL_I2C_REG_FIFOSTAT); if (fifostat & OWL_I2C_FIFOSTAT_RNB) { i2c_dev->err = -ENXIO; + /* Clear NACK error bit by writing "1" */ + owl_i2c_update_reg(i2c_dev->base + OWL_I2C_REG_FIFOSTAT, + OWL_I2C_FIFOSTAT_RNB, true); goto stop; } @@ -183,6 +186,9 @@ stat = readl(i2c_dev->base + OWL_I2C_REG_STAT); if (stat & OWL_I2C_STAT_BEB) { i2c_dev->err = -EIO; + /* Clear BUS error bit by writing "1" */ + owl_i2c_update_reg(i2c_dev->base + OWL_I2C_REG_STAT, + OWL_I2C_STAT_BEB, true); goto stop; } --- linux-azure-5.8-5.8.0.orig/drivers/i2c/busses/i2c-qcom-cci.c +++ linux-azure-5.8-5.8.0/drivers/i2c/busses/i2c-qcom-cci.c @@ -194,9 +194,9 @@ if (unlikely(val & CCI_IRQ_STATUS_0_I2C_M1_ERROR)) { if (val & CCI_IRQ_STATUS_0_I2C_M1_Q0_NACK_ERR || val & CCI_IRQ_STATUS_0_I2C_M1_Q1_NACK_ERR) - cci->master[0].status = -ENXIO; + cci->master[1].status = -ENXIO; else - cci->master[0].status = -EIO; + cci->master[1].status = -EIO; writel(CCI_HALT_REQ_I2C_M1_Q0Q1, cci->base + CCI_HALT_REQ); ret = IRQ_HANDLED; --- linux-azure-5.8-5.8.0.orig/drivers/i2c/busses/i2c-qcom-geni.c +++ linux-azure-5.8-5.8.0/drivers/i2c/busses/i2c-qcom-geni.c @@ -86,6 +86,9 @@ u32 clk_freq_out; const struct geni_i2c_clk_fld *clk_fld; int suspended; + void *dma_buf; + size_t xfer_len; + dma_addr_t dma_addr; }; struct geni_i2c_err_log { @@ -349,14 +352,39 @@ dev_err(gi2c->se.dev, "Timeout resetting TX_FSM\n"); } +static void geni_i2c_rx_msg_cleanup(struct geni_i2c_dev *gi2c, + struct i2c_msg *cur) +{ + gi2c->cur_rd = 0; + if (gi2c->dma_buf) { + if (gi2c->err) + geni_i2c_rx_fsm_rst(gi2c); + geni_se_rx_dma_unprep(&gi2c->se, gi2c->dma_addr, gi2c->xfer_len); + i2c_put_dma_safe_msg_buf(gi2c->dma_buf, cur, !gi2c->err); + } +} + +static void geni_i2c_tx_msg_cleanup(struct geni_i2c_dev *gi2c, + struct i2c_msg *cur) +{ + gi2c->cur_wr = 0; + if (gi2c->dma_buf) { + if (gi2c->err) + geni_i2c_tx_fsm_rst(gi2c); + geni_se_tx_dma_unprep(&gi2c->se, gi2c->dma_addr, gi2c->xfer_len); + i2c_put_dma_safe_msg_buf(gi2c->dma_buf, cur, !gi2c->err); + } +} + static int geni_i2c_rx_one_msg(struct geni_i2c_dev *gi2c, struct i2c_msg *msg, u32 m_param) { - dma_addr_t rx_dma; + dma_addr_t rx_dma = 0; unsigned long time_left; void *dma_buf = NULL; struct geni_se *se = &gi2c->se; size_t len = msg->len; + struct i2c_msg *cur; if (!of_machine_is_compatible("lenovo,yoga-c630")) dma_buf = i2c_get_dma_safe_msg_buf(msg, 32); @@ -367,26 +395,24 @@ geni_se_select_mode(se, GENI_SE_FIFO); writel_relaxed(len, se->base + SE_I2C_RX_TRANS_LEN); + geni_se_setup_m_cmd(se, I2C_READ, m_param); if (dma_buf && geni_se_rx_dma_prep(se, dma_buf, len, &rx_dma)) { geni_se_select_mode(se, GENI_SE_FIFO); i2c_put_dma_safe_msg_buf(dma_buf, msg, false); dma_buf = NULL; + } else { + gi2c->xfer_len = len; + gi2c->dma_addr = rx_dma; + gi2c->dma_buf = dma_buf; } - geni_se_setup_m_cmd(se, I2C_READ, m_param); - + cur = gi2c->cur; time_left = wait_for_completion_timeout(&gi2c->done, XFER_TIMEOUT); if (!time_left) geni_i2c_abort_xfer(gi2c); - gi2c->cur_rd = 0; - if (dma_buf) { - if (gi2c->err) - geni_i2c_rx_fsm_rst(gi2c); - geni_se_rx_dma_unprep(se, rx_dma, len); - i2c_put_dma_safe_msg_buf(dma_buf, msg, !gi2c->err); - } + geni_i2c_rx_msg_cleanup(gi2c, cur); return gi2c->err; } @@ -394,11 +420,12 @@ static int geni_i2c_tx_one_msg(struct geni_i2c_dev *gi2c, struct i2c_msg *msg, u32 m_param) { - dma_addr_t tx_dma; + dma_addr_t tx_dma = 0; unsigned long time_left; void *dma_buf = NULL; struct geni_se *se = &gi2c->se; size_t len = msg->len; + struct i2c_msg *cur; if (!of_machine_is_compatible("lenovo,yoga-c630")) dma_buf = i2c_get_dma_safe_msg_buf(msg, 32); @@ -409,29 +436,27 @@ geni_se_select_mode(se, GENI_SE_FIFO); writel_relaxed(len, se->base + SE_I2C_TX_TRANS_LEN); + geni_se_setup_m_cmd(se, I2C_WRITE, m_param); if (dma_buf && geni_se_tx_dma_prep(se, dma_buf, len, &tx_dma)) { geni_se_select_mode(se, GENI_SE_FIFO); i2c_put_dma_safe_msg_buf(dma_buf, msg, false); dma_buf = NULL; + } else { + gi2c->xfer_len = len; + gi2c->dma_addr = tx_dma; + gi2c->dma_buf = dma_buf; } - geni_se_setup_m_cmd(se, I2C_WRITE, m_param); - if (!dma_buf) /* Get FIFO IRQ */ writel_relaxed(1, se->base + SE_GENI_TX_WATERMARK_REG); + cur = gi2c->cur; time_left = wait_for_completion_timeout(&gi2c->done, XFER_TIMEOUT); if (!time_left) geni_i2c_abort_xfer(gi2c); - gi2c->cur_wr = 0; - if (dma_buf) { - if (gi2c->err) - geni_i2c_tx_fsm_rst(gi2c); - geni_se_tx_dma_unprep(se, tx_dma, len); - i2c_put_dma_safe_msg_buf(dma_buf, msg, !gi2c->err); - } + geni_i2c_tx_msg_cleanup(gi2c, cur); return gi2c->err; } --- linux-azure-5.8-5.8.0.orig/drivers/i2c/busses/i2c-qup.c +++ linux-azure-5.8-5.8.0/drivers/i2c/busses/i2c-qup.c @@ -801,7 +801,8 @@ if (ret || qup->bus_err || qup->qup_err) { reinit_completion(&qup->xfer); - if (qup_i2c_change_state(qup, QUP_RUN_STATE)) { + ret = qup_i2c_change_state(qup, QUP_RUN_STATE); + if (ret) { dev_err(qup->dev, "change to run state timed out"); goto desc_err; } --- linux-azure-5.8-5.8.0.orig/drivers/i2c/busses/i2c-rcar.c +++ linux-azure-5.8-5.8.0/drivers/i2c/busses/i2c-rcar.c @@ -583,13 +583,15 @@ rcar_i2c_write(priv, ICSIER, SDR | SSR | SAR); } - rcar_i2c_write(priv, ICSSR, ~SAR & 0xff); + /* Clear SSR, too, because of old STOPs to other clients than us */ + rcar_i2c_write(priv, ICSSR, ~(SAR | SSR) & 0xff); } /* master sent stop */ if (ssr_filtered & SSR) { i2c_slave_event(priv->slave, I2C_SLAVE_STOP, &value); - rcar_i2c_write(priv, ICSIER, SAR | SSR); + rcar_i2c_write(priv, ICSCR, SIE | SDBS); /* clear our NACK */ + rcar_i2c_write(priv, ICSIER, SAR); rcar_i2c_write(priv, ICSSR, ~SSR & 0xff); } @@ -853,7 +855,7 @@ priv->slave = slave; rcar_i2c_write(priv, ICSAR, slave->addr); rcar_i2c_write(priv, ICSSR, 0); - rcar_i2c_write(priv, ICSIER, SAR | SSR); + rcar_i2c_write(priv, ICSIER, SAR); rcar_i2c_write(priv, ICSCR, SIE | SDBS); return 0; @@ -865,12 +867,14 @@ WARN_ON(!priv->slave); - /* disable irqs and ensure none is running before clearing ptr */ + /* ensure no irq is running before clearing ptr */ + disable_irq(priv->irq); rcar_i2c_write(priv, ICSIER, 0); - rcar_i2c_write(priv, ICSCR, 0); + rcar_i2c_write(priv, ICSSR, 0); + enable_irq(priv->irq); + rcar_i2c_write(priv, ICSCR, SDBS); rcar_i2c_write(priv, ICSAR, 0); /* Gen2: must be 0 if not using slave */ - synchronize_irq(priv->irq); priv->slave = NULL; pm_runtime_put(rcar_i2c_priv_to_dev(priv)); --- linux-azure-5.8-5.8.0.orig/drivers/i2c/busses/i2c-sh_mobile.c +++ linux-azure-5.8-5.8.0/drivers/i2c/busses/i2c-sh_mobile.c @@ -129,6 +129,7 @@ int sr; bool send_stop; bool stop_after_dma; + bool atomic_xfer; struct resource *res; struct dma_chan *dma_tx; @@ -330,13 +331,15 @@ ret = iic_rd(pd, ICDR); break; case OP_RX_STOP: /* enable DTE interrupt, issue stop */ - iic_wr(pd, ICIC, - ICIC_DTEE | ICIC_WAITE | ICIC_ALE | ICIC_TACKE); + if (!pd->atomic_xfer) + iic_wr(pd, ICIC, + ICIC_DTEE | ICIC_WAITE | ICIC_ALE | ICIC_TACKE); iic_wr(pd, ICCR, ICCR_ICE | ICCR_RACK); break; case OP_RX_STOP_DATA: /* enable DTE interrupt, read data, issue stop */ - iic_wr(pd, ICIC, - ICIC_DTEE | ICIC_WAITE | ICIC_ALE | ICIC_TACKE); + if (!pd->atomic_xfer) + iic_wr(pd, ICIC, + ICIC_DTEE | ICIC_WAITE | ICIC_ALE | ICIC_TACKE); ret = iic_rd(pd, ICDR); iic_wr(pd, ICCR, ICCR_ICE | ICCR_RACK); break; @@ -429,7 +432,8 @@ if (wakeup) { pd->sr |= SW_DONE; - wake_up(&pd->wait); + if (!pd->atomic_xfer) + wake_up(&pd->wait); } /* defeat write posting to avoid spurious WAIT interrupts */ @@ -581,6 +585,9 @@ pd->pos = -1; pd->sr = 0; + if (pd->atomic_xfer) + return; + pd->dma_buf = i2c_get_dma_safe_msg_buf(pd->msg, 8); if (pd->dma_buf) sh_mobile_i2c_xfer_dma(pd); @@ -637,15 +644,13 @@ return i ? 0 : -ETIMEDOUT; } -static int sh_mobile_i2c_xfer(struct i2c_adapter *adapter, - struct i2c_msg *msgs, - int num) +static int sh_mobile_xfer(struct sh_mobile_i2c_data *pd, + struct i2c_msg *msgs, int num) { - struct sh_mobile_i2c_data *pd = i2c_get_adapdata(adapter); struct i2c_msg *msg; int err = 0; int i; - long timeout; + long time_left; /* Wake up device and enable clock */ pm_runtime_get_sync(pd->dev); @@ -662,15 +667,35 @@ if (do_start) i2c_op(pd, OP_START); - /* The interrupt handler takes care of the rest... */ - timeout = wait_event_timeout(pd->wait, - pd->sr & (ICSR_TACK | SW_DONE), - adapter->timeout); + if (pd->atomic_xfer) { + unsigned long j = jiffies + pd->adap.timeout; - /* 'stop_after_dma' tells if DMA transfer was complete */ - i2c_put_dma_safe_msg_buf(pd->dma_buf, pd->msg, pd->stop_after_dma); + time_left = time_before_eq(jiffies, j); + while (time_left && + !(pd->sr & (ICSR_TACK | SW_DONE))) { + unsigned char sr = iic_rd(pd, ICSR); + + if (sr & (ICSR_AL | ICSR_TACK | + ICSR_WAIT | ICSR_DTE)) { + sh_mobile_i2c_isr(0, pd); + udelay(150); + } else { + cpu_relax(); + } + time_left = time_before_eq(jiffies, j); + } + } else { + /* The interrupt handler takes care of the rest... */ + time_left = wait_event_timeout(pd->wait, + pd->sr & (ICSR_TACK | SW_DONE), + pd->adap.timeout); + + /* 'stop_after_dma' tells if DMA xfer was complete */ + i2c_put_dma_safe_msg_buf(pd->dma_buf, pd->msg, + pd->stop_after_dma); + } - if (!timeout) { + if (!time_left) { dev_err(pd->dev, "Transfer request timed out\n"); if (pd->dma_direction != DMA_NONE) sh_mobile_i2c_cleanup_dma(pd); @@ -696,14 +721,35 @@ return err ?: num; } +static int sh_mobile_i2c_xfer(struct i2c_adapter *adapter, + struct i2c_msg *msgs, + int num) +{ + struct sh_mobile_i2c_data *pd = i2c_get_adapdata(adapter); + + pd->atomic_xfer = false; + return sh_mobile_xfer(pd, msgs, num); +} + +static int sh_mobile_i2c_xfer_atomic(struct i2c_adapter *adapter, + struct i2c_msg *msgs, + int num) +{ + struct sh_mobile_i2c_data *pd = i2c_get_adapdata(adapter); + + pd->atomic_xfer = true; + return sh_mobile_xfer(pd, msgs, num); +} + static u32 sh_mobile_i2c_func(struct i2c_adapter *adapter) { return I2C_FUNC_I2C | I2C_FUNC_SMBUS_EMUL | I2C_FUNC_PROTOCOL_MANGLING; } static const struct i2c_algorithm sh_mobile_i2c_algorithm = { - .functionality = sh_mobile_i2c_func, - .master_xfer = sh_mobile_i2c_xfer, + .functionality = sh_mobile_i2c_func, + .master_xfer = sh_mobile_i2c_xfer, + .master_xfer_atomic = sh_mobile_i2c_xfer_atomic, }; static const struct i2c_adapter_quirks sh_mobile_i2c_quirks = { --- linux-azure-5.8-5.8.0.orig/drivers/i2c/busses/i2c-sprd.c +++ linux-azure-5.8-5.8.0/drivers/i2c/busses/i2c-sprd.c @@ -72,6 +72,8 @@ /* timeout (ms) for pm runtime autosuspend */ #define SPRD_I2C_PM_TIMEOUT 1000 +/* timeout (ms) for transfer message */ +#define I2C_XFER_TIMEOUT 1000 /* SPRD i2c data structure */ struct sprd_i2c { @@ -244,6 +246,7 @@ struct i2c_msg *msg, bool is_last_msg) { struct sprd_i2c *i2c_dev = i2c_adap->algo_data; + unsigned long time_left; i2c_dev->msg = msg; i2c_dev->buf = msg->buf; @@ -273,7 +276,10 @@ sprd_i2c_opt_start(i2c_dev); - wait_for_completion(&i2c_dev->complete); + time_left = wait_for_completion_timeout(&i2c_dev->complete, + msecs_to_jiffies(I2C_XFER_TIMEOUT)); + if (!time_left) + return -ETIMEDOUT; return i2c_dev->err; } --- linux-azure-5.8-5.8.0.orig/drivers/i2c/busses/i2c-stm32f7.c +++ linux-azure-5.8-5.8.0/drivers/i2c/busses/i2c-stm32f7.c @@ -55,6 +55,8 @@ #define STM32F7_I2C_CR1_RXDMAEN BIT(15) #define STM32F7_I2C_CR1_TXDMAEN BIT(14) #define STM32F7_I2C_CR1_ANFOFF BIT(12) +#define STM32F7_I2C_CR1_DNF_MASK GENMASK(11, 8) +#define STM32F7_I2C_CR1_DNF(n) (((n) & 0xf) << 8) #define STM32F7_I2C_CR1_ERRIE BIT(7) #define STM32F7_I2C_CR1_TCIE BIT(6) #define STM32F7_I2C_CR1_STOPIE BIT(5) @@ -153,7 +155,7 @@ #define STM32F7_I2C_MAX_SLAVE 0x2 #define STM32F7_I2C_DNF_DEFAULT 0 -#define STM32F7_I2C_DNF_MAX 16 +#define STM32F7_I2C_DNF_MAX 15 #define STM32F7_I2C_ANALOG_FILTER_ENABLE 1 #define STM32F7_I2C_ANALOG_FILTER_DELAY_MIN 50 /* ns */ @@ -714,6 +716,13 @@ else stm32f7_i2c_set_bits(i2c_dev->base + STM32F7_I2C_CR1, STM32F7_I2C_CR1_ANFOFF); + + /* Program the Digital Filter */ + stm32f7_i2c_clr_bits(i2c_dev->base + STM32F7_I2C_CR1, + STM32F7_I2C_CR1_DNF_MASK); + stm32f7_i2c_set_bits(i2c_dev->base + STM32F7_I2C_CR1, + STM32F7_I2C_CR1_DNF(i2c_dev->setup.dnf)); + stm32f7_i2c_set_bits(i2c_dev->base + STM32F7_I2C_CR1, STM32F7_I2C_CR1_PE); } --- linux-azure-5.8-5.8.0.orig/drivers/i2c/busses/i2c-tegra-bpmp.c +++ linux-azure-5.8-5.8.0/drivers/i2c/busses/i2c-tegra-bpmp.c @@ -80,7 +80,7 @@ flags &= ~I2C_M_RECV_LEN; } - return (flags != 0) ? -EINVAL : 0; + return 0; } /** --- linux-azure-5.8-5.8.0.orig/drivers/i2c/busses/i2c-tegra.c +++ linux-azure-5.8-5.8.0/drivers/i2c/busses/i2c-tegra.c @@ -326,6 +326,8 @@ /* Read back register to make sure that register writes completed */ if (reg != I2C_TX_FIFO) readl_relaxed(i2c_dev->base + tegra_i2c_reg_addr(i2c_dev, reg)); + else if (i2c_dev->is_vi) + readl_relaxed(i2c_dev->base + tegra_i2c_reg_addr(i2c_dev, I2C_INT_STATUS)); } static u32 i2c_readl(struct tegra_i2c_dev *i2c_dev, unsigned long reg) @@ -339,6 +341,21 @@ writesl(i2c_dev->base + tegra_i2c_reg_addr(i2c_dev, reg), data, len); } +static void i2c_writesl_vi(struct tegra_i2c_dev *i2c_dev, void *data, + unsigned int reg, unsigned int len) +{ + u32 *data32 = data; + + /* + * VI I2C controller has known hardware bug where writes get stuck + * when immediate multiple writes happen to TX_FIFO register. + * Recommended software work around is to read I2C register after + * each write to TX_FIFO register to flush out the data. + */ + while (len--) + i2c_writel(i2c_dev, *data32++, reg); +} + static void i2c_readsl(struct tegra_i2c_dev *i2c_dev, void *data, unsigned long reg, int len) { @@ -595,7 +612,10 @@ words_to_transfer * BYTES_PER_FIFO_WORD; barrier(); - i2c_writesl(i2c_dev, buf, I2C_TX_FIFO, words_to_transfer); + if (i2c_dev->is_vi) + i2c_writesl_vi(i2c_dev, buf, I2C_TX_FIFO, words_to_transfer); + else + i2c_writesl(i2c_dev, buf, I2C_TX_FIFO, words_to_transfer); buf += words_to_transfer * BYTES_PER_FIFO_WORD; } --- linux-azure-5.8-5.8.0.orig/drivers/i2c/i2c-core-acpi.c +++ linux-azure-5.8-5.8.0/drivers/i2c/i2c-core-acpi.c @@ -264,6 +264,7 @@ void i2c_acpi_register_devices(struct i2c_adapter *adap) { acpi_status status; + acpi_handle handle; if (!has_acpi_companion(&adap->dev)) return; @@ -274,6 +275,15 @@ adap, NULL); if (ACPI_FAILURE(status)) dev_warn(&adap->dev, "failed to enumerate I2C slaves\n"); + + if (!adap->dev.parent) + return; + + handle = ACPI_HANDLE(adap->dev.parent); + if (!handle) + return; + + acpi_walk_dep_device_list(handle); } const struct acpi_device_id * @@ -729,7 +739,6 @@ return -ENOMEM; } - acpi_walk_dep_device_list(handle); return 0; } --- linux-azure-5.8-5.8.0.orig/drivers/i2c/i2c-core-base.c +++ linux-azure-5.8-5.8.0/drivers/i2c/i2c-core-base.c @@ -354,7 +354,7 @@ * or ACPI ID table is supplied for the probing device. */ if (!driver->id_table && - !i2c_acpi_match_device(dev->driver->acpi_match_table, client) && + !acpi_driver_match_device(dev, dev->driver) && !i2c_of_match_device(dev->driver->of_match_table, client)) { status = -ENODEV; goto put_sync_adapter; @@ -1336,8 +1336,8 @@ /* create pre-declared device nodes */ of_i2c_register_devices(adap); - i2c_acpi_register_devices(adap); i2c_acpi_install_space_handler(adap); + i2c_acpi_register_devices(adap); if (adap->nr < __i2c_first_dynamic_bus_num) i2c_scan_static_board_info(adap); --- linux-azure-5.8-5.8.0.orig/drivers/i3c/master.c +++ linux-azure-5.8-5.8.0/drivers/i3c/master.c @@ -1782,6 +1782,21 @@ i3c_master_detach_free_devs(master); } +static void i3c_master_attach_boardinfo(struct i3c_dev_desc *i3cdev) +{ + struct i3c_master_controller *master = i3cdev->common.master; + struct i3c_dev_boardinfo *i3cboardinfo; + + list_for_each_entry(i3cboardinfo, &master->boardinfo.i3c, node) { + if (i3cdev->info.pid != i3cboardinfo->pid) + continue; + + i3cdev->boardinfo = i3cboardinfo; + i3cdev->info.static_addr = i3cboardinfo->static_addr; + return; + } +} + static struct i3c_dev_desc * i3c_master_search_i3c_dev_duplicate(struct i3c_dev_desc *refdev) { @@ -1837,10 +1852,10 @@ if (ret) goto err_detach_dev; + i3c_master_attach_boardinfo(newdev); + olddev = i3c_master_search_i3c_dev_duplicate(newdev); if (olddev) { - newdev->boardinfo = olddev->boardinfo; - newdev->info.static_addr = olddev->info.static_addr; newdev->dev = olddev->dev; if (newdev->dev) newdev->dev->desc = newdev; @@ -2499,7 +2514,7 @@ ret = i3c_master_bus_init(master); if (ret) - goto err_put_dev; + goto err_destroy_wq; ret = device_add(&master->dev); if (ret) @@ -2530,6 +2545,9 @@ err_cleanup_bus: i3c_master_bus_cleanup(master); +err_destroy_wq: + destroy_workqueue(master->wq); + err_put_dev: put_device(&master->dev); --- linux-azure-5.8-5.8.0.orig/drivers/i3c/master/i3c-master-cdns.c +++ linux-azure-5.8-5.8.0/drivers/i3c/master/i3c-master-cdns.c @@ -1635,8 +1635,10 @@ master->ibi.slots = devm_kcalloc(&pdev->dev, master->ibi.num_slots, sizeof(*master->ibi.slots), GFP_KERNEL); - if (!master->ibi.slots) + if (!master->ibi.slots) { + ret = -ENOMEM; goto err_disable_sysclk; + } writel(IBIR_THR(1), master->regs + CMD_IBI_THR_CTRL); writel(MST_INT_IBIR_THR, master->regs + MST_IER); --- linux-azure-5.8-5.8.0.orig/drivers/ide/falconide.c +++ linux-azure-5.8-5.8.0/drivers/ide/falconide.c @@ -166,6 +166,7 @@ if (rc) goto err_free; + platform_set_drvdata(pdev, host); return 0; err_free: ide_host_free(host); @@ -176,7 +177,7 @@ static int falconide_remove(struct platform_device *pdev) { - struct ide_host *host = dev_get_drvdata(&pdev->dev); + struct ide_host *host = platform_get_drvdata(pdev); ide_host_remove(host); --- linux-azure-5.8-5.8.0.orig/drivers/ide/ide-atapi.c +++ linux-azure-5.8-5.8.0/drivers/ide/ide-atapi.c @@ -223,7 +223,6 @@ sense_rq->rq_disk = rq->rq_disk; sense_rq->cmd_flags = REQ_OP_DRV_IN; ide_req(sense_rq)->type = ATA_PRIV_SENSE; - sense_rq->rq_flags |= RQF_PREEMPT; req->cmd[0] = GPCMD_REQUEST_SENSE; req->cmd[4] = cmd_len; --- linux-azure-5.8-5.8.0.orig/drivers/ide/ide-io.c +++ linux-azure-5.8-5.8.0/drivers/ide/ide-io.c @@ -515,15 +515,10 @@ * above to return us whatever is in the queue. Since we call * ide_do_request() ourselves, we end up taking requests while * the queue is blocked... - * - * We let requests forced at head of queue with ide-preempt - * though. I hope that doesn't happen too much, hopefully not - * unless the subdriver triggers such a thing in its own PM - * state machine. */ if ((drive->dev_flags & IDE_DFLAG_BLOCKED) && ata_pm_request(rq) == 0 && - (rq->rq_flags & RQF_PREEMPT) == 0) { + (rq->rq_flags & RQF_PM) == 0) { /* there should be no pending command at this point */ ide_unlock_port(hwif); goto plug_device; --- linux-azure-5.8-5.8.0.orig/drivers/ide/ide-pm.c +++ linux-azure-5.8-5.8.0/drivers/ide/ide-pm.c @@ -77,7 +77,7 @@ } memset(&rqpm, 0, sizeof(rqpm)); - rq = blk_get_request(drive->queue, REQ_OP_DRV_IN, BLK_MQ_REQ_PREEMPT); + rq = blk_get_request(drive->queue, REQ_OP_DRV_IN, BLK_MQ_REQ_PM); ide_req(rq)->type = ATA_PRIV_PM_RESUME; ide_req(rq)->special = &rqpm; rqpm.pm_step = IDE_PM_START_RESUME; --- linux-azure-5.8-5.8.0.orig/drivers/idle/intel_idle.c +++ linux-azure-5.8-5.8.0/drivers/idle/intel_idle.c @@ -132,7 +132,6 @@ struct cpuidle_state *state = &drv->states[index]; unsigned long eax = flg2MWAIT(state->flags); unsigned long ecx = 1; /* break on interrupt flag */ - bool uninitialized_var(tick); int cpu = smp_processor_id(); /* @@ -142,24 +141,8 @@ if (state->flags & CPUIDLE_FLAG_TLB_FLUSHED) leave_mm(cpu); - if (!static_cpu_has(X86_FEATURE_ARAT) && !lapic_timer_always_reliable) { - /* - * Switch over to one-shot tick broadcast if the target C-state - * is deeper than C1. - */ - if ((eax >> MWAIT_SUBSTATE_SIZE) & MWAIT_CSTATE_MASK) { - tick = true; - tick_broadcast_enter(); - } else { - tick = false; - } - } - mwait_idle_with_hints(eax, ecx); - if (!static_cpu_has(X86_FEATURE_ARAT) && tick) - tick_broadcast_exit(); - return index; } @@ -1133,6 +1116,20 @@ return false; } +static bool __init intel_idle_state_needs_timer_stop(struct cpuidle_state *state) +{ + unsigned long eax = flg2MWAIT(state->flags); + + if (boot_cpu_has(X86_FEATURE_ARAT)) + return false; + + /* + * Switch over to one-shot tick broadcast if the target C-state + * is deeper than C1. + */ + return !!((eax >> MWAIT_SUBSTATE_SIZE) & MWAIT_CSTATE_MASK); +} + #ifdef CONFIG_ACPI_PROCESSOR_CSTATE #include @@ -1192,14 +1189,13 @@ if (!intel_idle_cst_usable()) continue; - if (!acpi_processor_claim_cst_control()) { - acpi_state_table.count = 0; - return false; - } + if (!acpi_processor_claim_cst_control()) + break; return true; } + acpi_state_table.count = 0; pr_debug("ACPI _CST not found or not usable\n"); return false; } @@ -1216,7 +1212,7 @@ struct acpi_processor_cx *cx; struct cpuidle_state *state; - if (intel_idle_max_cstate_reached(cstate)) + if (intel_idle_max_cstate_reached(cstate - 1)) break; cx = &acpi_state_table.states[cstate]; @@ -1246,6 +1242,9 @@ if (disabled_states_mask & BIT(cstate)) state->flags |= CPUIDLE_FLAG_OFF; + if (intel_idle_state_needs_timer_stop(state)) + state->flags |= CPUIDLE_FLAG_TIMER_STOP; + state->enter = intel_idle; state->enter_s2idle = intel_idle_s2idle; } @@ -1484,6 +1483,9 @@ !(cpuidle_state_table[cstate].flags & CPUIDLE_FLAG_ALWAYS_ENABLE))) drv->states[drv->state_count].flags |= CPUIDLE_FLAG_OFF; + if (intel_idle_state_needs_timer_stop(&drv->states[drv->state_count])) + drv->states[drv->state_count].flags |= CPUIDLE_FLAG_TIMER_STOP; + drv->state_count++; } --- linux-azure-5.8-5.8.0.orig/drivers/iio/accel/bmc150-accel-core.c +++ linux-azure-5.8-5.8.0/drivers/iio/accel/bmc150-accel-core.c @@ -189,6 +189,14 @@ struct mutex mutex; u8 fifo_mode, watermark; s16 buffer[8]; + /* + * Ensure there is sufficient space and correct alignment for + * the timestamp if enabled + */ + struct { + __le16 channels[3]; + s64 ts __aligned(8); + } scan; u8 bw_bits; u32 slope_dur; u32 slope_thres; @@ -922,15 +930,16 @@ * now. */ for (i = 0; i < count; i++) { - u16 sample[8]; int j, bit; j = 0; for_each_set_bit(bit, indio_dev->active_scan_mask, indio_dev->masklength) - memcpy(&sample[j++], &buffer[i * 3 + bit], 2); + memcpy(&data->scan.channels[j++], &buffer[i * 3 + bit], + sizeof(data->scan.channels[0])); - iio_push_to_buffers_with_timestamp(indio_dev, sample, tstamp); + iio_push_to_buffers_with_timestamp(indio_dev, &data->scan, + tstamp); tstamp += sample_period; } --- linux-azure-5.8-5.8.0.orig/drivers/iio/accel/kxcjk-1013.c +++ linux-azure-5.8-5.8.0/drivers/iio/accel/kxcjk-1013.c @@ -126,6 +126,12 @@ KX_MAX_CHIPS /* this must be last */ }; +enum kx_acpi_type { + ACPI_GENERIC, + ACPI_SMO8500, + ACPI_KIOX010A, +}; + struct kxcjk1013_data { struct i2c_client *client; struct iio_trigger *dready_trig; @@ -143,7 +149,7 @@ bool motion_trigger_on; int64_t timestamp; enum kx_chipset chipset; - bool is_smo8500_device; + enum kx_acpi_type acpi_type; }; enum kxcjk1013_axis { @@ -270,6 +276,32 @@ {19163, 1, 0}, {38326, 0, 1} }; +#ifdef CONFIG_ACPI +enum kiox010a_fn_index { + KIOX010A_SET_LAPTOP_MODE = 1, + KIOX010A_SET_TABLET_MODE = 2, +}; + +static int kiox010a_dsm(struct device *dev, int fn_index) +{ + acpi_handle handle = ACPI_HANDLE(dev); + guid_t kiox010a_dsm_guid; + union acpi_object *obj; + + if (!handle) + return -ENODEV; + + guid_parse("1f339696-d475-4e26-8cad-2e9f8e6d7a91", &kiox010a_dsm_guid); + + obj = acpi_evaluate_dsm(handle, &kiox010a_dsm_guid, 1, fn_index, NULL); + if (!obj) + return -EIO; + + ACPI_FREE(obj); + return 0; +} +#endif + static int kxcjk1013_set_mode(struct kxcjk1013_data *data, enum kxcjk1013_mode mode) { @@ -347,6 +379,13 @@ { int ret; +#ifdef CONFIG_ACPI + if (data->acpi_type == ACPI_KIOX010A) { + /* Make sure the kbd and touchpad on 2-in-1s using 2 KXCJ91008-s work */ + kiox010a_dsm(&data->client->dev, KIOX010A_SET_LAPTOP_MODE); + } +#endif + ret = i2c_smbus_read_byte_data(data->client, KXCJK1013_REG_WHO_AM_I); if (ret < 0) { dev_err(&data->client->dev, "Error reading who_am_i\n"); @@ -1249,7 +1288,7 @@ static const char *kxcjk1013_match_acpi_device(struct device *dev, enum kx_chipset *chipset, - bool *is_smo8500_device) + enum kx_acpi_type *acpi_type) { const struct acpi_device_id *id; @@ -1258,7 +1297,9 @@ return NULL; if (strcmp(id->id, "SMO8500") == 0) - *is_smo8500_device = true; + *acpi_type = ACPI_SMO8500; + else if (strcmp(id->id, "KIOX010A") == 0) + *acpi_type = ACPI_KIOX010A; *chipset = (enum kx_chipset)id->driver_data; @@ -1301,7 +1342,7 @@ } else if (ACPI_HANDLE(&client->dev)) { name = kxcjk1013_match_acpi_device(&client->dev, &data->chipset, - &data->is_smo8500_device); + &data->acpi_type); } else return -ENODEV; @@ -1319,7 +1360,7 @@ indio_dev->modes = INDIO_DIRECT_MODE; indio_dev->info = &kxcjk1013_info; - if (client->irq > 0 && !data->is_smo8500_device) { + if (client->irq > 0 && data->acpi_type != ACPI_SMO8500) { ret = devm_request_threaded_irq(&client->dev, client->irq, kxcjk1013_data_rdy_trig_poll, kxcjk1013_event_handler, --- linux-azure-5.8-5.8.0.orig/drivers/iio/accel/kxsd9.c +++ linux-azure-5.8-5.8.0/drivers/iio/accel/kxsd9.c @@ -209,14 +209,20 @@ const struct iio_poll_func *pf = p; struct iio_dev *indio_dev = pf->indio_dev; struct kxsd9_state *st = iio_priv(indio_dev); + /* + * Ensure correct positioning and alignment of timestamp. + * No need to zero initialize as all elements written. + */ + struct { + __be16 chan[4]; + s64 ts __aligned(8); + } hw_values; int ret; - /* 4 * 16bit values AND timestamp */ - __be16 hw_values[8]; ret = regmap_bulk_read(st->map, KXSD9_REG_X, - &hw_values, - 8); + hw_values.chan, + sizeof(hw_values.chan)); if (ret) { dev_err(st->dev, "error reading data\n"); @@ -224,7 +230,7 @@ } iio_push_to_buffers_with_timestamp(indio_dev, - hw_values, + &hw_values, iio_get_time_ns(indio_dev)); iio_trigger_notify_done(indio_dev->trig); --- linux-azure-5.8-5.8.0.orig/drivers/iio/accel/mma7455_core.c +++ linux-azure-5.8-5.8.0/drivers/iio/accel/mma7455_core.c @@ -52,6 +52,14 @@ struct mma7455_data { struct regmap *regmap; + /* + * Used to reorganize data. Will ensure correct alignment of + * the timestamp if present + */ + struct { + __le16 channels[3]; + s64 ts __aligned(8); + } scan; }; static int mma7455_drdy(struct mma7455_data *mma7455) @@ -82,19 +90,19 @@ struct iio_poll_func *pf = p; struct iio_dev *indio_dev = pf->indio_dev; struct mma7455_data *mma7455 = iio_priv(indio_dev); - u8 buf[16]; /* 3 x 16-bit channels + padding + ts */ int ret; ret = mma7455_drdy(mma7455); if (ret) goto done; - ret = regmap_bulk_read(mma7455->regmap, MMA7455_REG_XOUTL, buf, - sizeof(__le16) * 3); + ret = regmap_bulk_read(mma7455->regmap, MMA7455_REG_XOUTL, + mma7455->scan.channels, + sizeof(mma7455->scan.channels)); if (ret) goto done; - iio_push_to_buffers_with_timestamp(indio_dev, buf, + iio_push_to_buffers_with_timestamp(indio_dev, &mma7455->scan, iio_get_time_ns(indio_dev)); done: --- linux-azure-5.8-5.8.0.orig/drivers/iio/accel/mma8452.c +++ linux-azure-5.8-5.8.0/drivers/iio/accel/mma8452.c @@ -110,6 +110,12 @@ int sleep_val; struct regulator *vdd_reg; struct regulator *vddio_reg; + + /* Ensure correct alignment of time stamp when present */ + struct { + __be16 channels[3]; + s64 ts __aligned(8); + } buffer; }; /** @@ -1091,14 +1097,13 @@ struct iio_poll_func *pf = p; struct iio_dev *indio_dev = pf->indio_dev; struct mma8452_data *data = iio_priv(indio_dev); - u8 buffer[16]; /* 3 16-bit channels + padding + ts */ int ret; - ret = mma8452_read(data, (__be16 *)buffer); + ret = mma8452_read(data, data->buffer.channels); if (ret < 0) goto done; - iio_push_to_buffers_with_timestamp(indio_dev, buffer, + iio_push_to_buffers_with_timestamp(indio_dev, &data->buffer, iio_get_time_ns(indio_dev)); done: --- linux-azure-5.8-5.8.0.orig/drivers/iio/adc/ad7292.c +++ linux-azure-5.8-5.8.0/drivers/iio/adc/ad7292.c @@ -311,8 +311,10 @@ for_each_available_child_of_node(spi->dev.of_node, child) { diff_channels = of_property_read_bool(child, "diff-channels"); - if (diff_channels) + if (diff_channels) { + of_node_put(child); break; + } } if (diff_channels) { --- linux-azure-5.8-5.8.0.orig/drivers/iio/adc/ad_sigma_delta.c +++ linux-azure-5.8-5.8.0/drivers/iio/adc/ad_sigma_delta.c @@ -57,7 +57,7 @@ int ad_sd_write_reg(struct ad_sigma_delta *sigma_delta, unsigned int reg, unsigned int size, unsigned int val) { - uint8_t *data = sigma_delta->data; + uint8_t *data = sigma_delta->tx_buf; struct spi_transfer t = { .tx_buf = data, .len = size + 1, @@ -99,7 +99,7 @@ static int ad_sd_read_reg_raw(struct ad_sigma_delta *sigma_delta, unsigned int reg, unsigned int size, uint8_t *val) { - uint8_t *data = sigma_delta->data; + uint8_t *data = sigma_delta->tx_buf; int ret; struct spi_transfer t[] = { { @@ -146,22 +146,22 @@ { int ret; - ret = ad_sd_read_reg_raw(sigma_delta, reg, size, sigma_delta->data); + ret = ad_sd_read_reg_raw(sigma_delta, reg, size, sigma_delta->rx_buf); if (ret < 0) goto out; switch (size) { case 4: - *val = get_unaligned_be32(sigma_delta->data); + *val = get_unaligned_be32(sigma_delta->rx_buf); break; case 3: - *val = get_unaligned_be24(&sigma_delta->data[0]); + *val = get_unaligned_be24(sigma_delta->rx_buf); break; case 2: - *val = get_unaligned_be16(sigma_delta->data); + *val = get_unaligned_be16(sigma_delta->rx_buf); break; case 1: - *val = sigma_delta->data[0]; + *val = sigma_delta->rx_buf[0]; break; default: ret = -EINVAL; @@ -399,13 +399,11 @@ struct iio_poll_func *pf = p; struct iio_dev *indio_dev = pf->indio_dev; struct ad_sigma_delta *sigma_delta = iio_device_get_drvdata(indio_dev); + uint8_t *data = sigma_delta->rx_buf; unsigned int reg_size; unsigned int data_reg; - uint8_t data[16]; int ret; - memset(data, 0x00, 16); - reg_size = indio_dev->channels[0].scan_type.realbits + indio_dev->channels[0].scan_type.shift; reg_size = DIV_ROUND_UP(reg_size, 8); --- linux-azure-5.8-5.8.0.orig/drivers/iio/adc/at91-sama5d2_adc.c +++ linux-azure-5.8-5.8.0/drivers/iio/adc/at91-sama5d2_adc.c @@ -883,7 +883,7 @@ AT91_SAMA5D2_MAX_CHAN_IDX + 1); } -static int at91_adc_buffer_preenable(struct iio_dev *indio_dev) +static int at91_adc_buffer_prepare(struct iio_dev *indio_dev) { int ret; u8 bit; @@ -900,7 +900,7 @@ /* we continue with the triggered buffer */ ret = at91_adc_dma_start(indio_dev); if (ret) { - dev_err(&indio_dev->dev, "buffer postenable failed\n"); + dev_err(&indio_dev->dev, "buffer prepare failed\n"); return ret; } @@ -1004,7 +1004,6 @@ } static const struct iio_buffer_setup_ops at91_buffer_setup_ops = { - .preenable = &at91_adc_buffer_preenable, .postdisable = &at91_adc_buffer_postdisable, .postenable = &at91_adc_buffer_postenable, .predisable = &at91_adc_buffer_predisable, @@ -1580,6 +1579,7 @@ static int at91_adc_set_watermark(struct iio_dev *indio_dev, unsigned int val) { struct at91_adc_state *st = iio_priv(indio_dev); + int ret; if (val > AT91_HWFIFO_MAX_SIZE) return -EINVAL; @@ -1603,7 +1603,15 @@ else if (val > 1) at91_adc_dma_init(to_platform_device(&indio_dev->dev)); - return 0; + /* + * We can start the DMA only after setting the watermark and + * having the DMA initialization completed + */ + ret = at91_adc_buffer_prepare(indio_dev); + if (ret) + at91_adc_dma_disable(to_platform_device(&indio_dev->dev)); + + return ret; } static int at91_adc_update_scan_mode(struct iio_dev *indio_dev, --- linux-azure-5.8-5.8.0.orig/drivers/iio/adc/ina2xx-adc.c +++ linux-azure-5.8-5.8.0/drivers/iio/adc/ina2xx-adc.c @@ -146,6 +146,11 @@ int range_vbus; /* Bus voltage maximum in V */ int pga_gain_vshunt; /* Shunt voltage PGA gain */ bool allow_async_readout; + /* data buffer needs space for channel data and timestamp */ + struct { + u16 chan[4]; + u64 ts __aligned(8); + } scan; }; static const struct ina2xx_config ina2xx_config[] = { @@ -738,8 +743,6 @@ static int ina2xx_work_buffer(struct iio_dev *indio_dev) { struct ina2xx_chip_info *chip = iio_priv(indio_dev); - /* data buffer needs space for channel data and timestap */ - unsigned short data[4 + sizeof(s64)/sizeof(short)]; int bit, ret, i = 0; s64 time; @@ -758,10 +761,10 @@ if (ret < 0) return ret; - data[i++] = val; + chip->scan.chan[i++] = val; } - iio_push_to_buffers_with_timestamp(indio_dev, data, time); + iio_push_to_buffers_with_timestamp(indio_dev, &chip->scan, time); return 0; }; --- linux-azure-5.8-5.8.0.orig/drivers/iio/adc/ingenic-adc.c +++ linux-azure-5.8-5.8.0/drivers/iio/adc/ingenic-adc.c @@ -41,7 +41,7 @@ #define JZ4725B_ADC_BATTERY_HIGH_VREF_BITS 10 #define JZ4740_ADC_BATTERY_HIGH_VREF (7500 * 0.986) #define JZ4740_ADC_BATTERY_HIGH_VREF_BITS 12 -#define JZ4770_ADC_BATTERY_VREF 6600 +#define JZ4770_ADC_BATTERY_VREF 1200 #define JZ4770_ADC_BATTERY_VREF_BITS 12 struct ingenic_adc; --- linux-azure-5.8-5.8.0.orig/drivers/iio/adc/max1118.c +++ linux-azure-5.8-5.8.0/drivers/iio/adc/max1118.c @@ -35,6 +35,11 @@ struct spi_device *spi; struct mutex lock; struct regulator *reg; + /* Ensure natural alignment of buffer elements */ + struct { + u8 channels[2]; + s64 ts __aligned(8); + } scan; u8 data ____cacheline_aligned; }; @@ -165,7 +170,6 @@ struct iio_poll_func *pf = p; struct iio_dev *indio_dev = pf->indio_dev; struct max1118 *adc = iio_priv(indio_dev); - u8 data[16] = { }; /* 2x 8-bit ADC data + padding + 8 bytes timestamp */ int scan_index; int i = 0; @@ -183,10 +187,10 @@ goto out; } - data[i] = ret; + adc->scan.channels[i] = ret; i++; } - iio_push_to_buffers_with_timestamp(indio_dev, data, + iio_push_to_buffers_with_timestamp(indio_dev, &adc->scan, iio_get_time_ns(indio_dev)); out: mutex_unlock(&adc->lock); --- linux-azure-5.8-5.8.0.orig/drivers/iio/adc/mcp3422.c +++ linux-azure-5.8-5.8.0/drivers/iio/adc/mcp3422.c @@ -96,16 +96,12 @@ { int ret; - mutex_lock(&adc->lock); - ret = i2c_master_send(adc->i2c, &newconfig, 1); if (ret > 0) { adc->config = newconfig; ret = 0; } - mutex_unlock(&adc->lock); - return ret; } @@ -138,6 +134,8 @@ u8 config; u8 req_channel = channel->channel; + mutex_lock(&adc->lock); + if (req_channel != MCP3422_CHANNEL(adc->config)) { config = adc->config; config &= ~MCP3422_CHANNEL_MASK; @@ -145,12 +143,18 @@ config &= ~MCP3422_PGA_MASK; config |= MCP3422_PGA_VALUE(adc->pga[req_channel]); ret = mcp3422_update_config(adc, config); - if (ret < 0) + if (ret < 0) { + mutex_unlock(&adc->lock); return ret; + } msleep(mcp3422_read_times[MCP3422_SAMPLE_RATE(adc->config)]); } - return mcp3422_read(adc, value, &config); + ret = mcp3422_read(adc, value, &config); + + mutex_unlock(&adc->lock); + + return ret; } static int mcp3422_read_raw(struct iio_dev *iio, --- linux-azure-5.8-5.8.0.orig/drivers/iio/adc/mt6577_auxadc.c +++ linux-azure-5.8-5.8.0/drivers/iio/adc/mt6577_auxadc.c @@ -9,9 +9,9 @@ #include #include #include -#include -#include +#include #include +#include #include #include #include @@ -277,6 +277,8 @@ goto err_disable_clk; } + adc_dev->dev_comp = device_get_match_data(&pdev->dev); + mutex_init(&adc_dev->lock); mt6577_auxadc_mod_reg(adc_dev->reg_base + MT6577_AUXADC_MISC, --- linux-azure-5.8-5.8.0.orig/drivers/iio/adc/qcom-spmi-adc5.c +++ linux-azure-5.8-5.8.0/drivers/iio/adc/qcom-spmi-adc5.c @@ -786,7 +786,7 @@ static struct platform_driver adc5_driver = { .driver = { - .name = "qcom-spmi-adc5.c", + .name = "qcom-spmi-adc5", .of_match_table = adc5_match_table, }, .probe = adc5_probe, --- linux-azure-5.8-5.8.0.orig/drivers/iio/adc/rcar-gyroadc.c +++ linux-azure-5.8-5.8.0/drivers/iio/adc/rcar-gyroadc.c @@ -357,7 +357,7 @@ num_channels = ARRAY_SIZE(rcar_gyroadc_iio_channels_3); break; default: - return -EINVAL; + goto err_e_inval; } /* @@ -374,7 +374,7 @@ dev_err(dev, "Failed to get child reg property of ADC \"%pOFn\".\n", child); - return ret; + goto err_of_node_put; } /* Channel number is too high. */ @@ -382,7 +382,7 @@ dev_err(dev, "Only %i channels supported with %pOFn, but reg = <%i>.\n", num_channels, child, reg); - return -EINVAL; + goto err_e_inval; } } @@ -391,7 +391,7 @@ dev_err(dev, "Channel %i uses different ADC mode than the rest.\n", reg); - return -EINVAL; + goto err_e_inval; } /* Channel is valid, grab the regulator. */ @@ -401,7 +401,8 @@ if (IS_ERR(vref)) { dev_dbg(dev, "Channel %i 'vref' supply not connected.\n", reg); - return PTR_ERR(vref); + ret = PTR_ERR(vref); + goto err_of_node_put; } priv->vref[reg] = vref; @@ -425,8 +426,10 @@ * attached to the GyroADC at a time, so if we found it, * we can stop parsing here. */ - if (childmode == RCAR_GYROADC_MODE_SELECT_1_MB88101A) + if (childmode == RCAR_GYROADC_MODE_SELECT_1_MB88101A) { + of_node_put(child); break; + } } if (first) { @@ -435,6 +438,12 @@ } return 0; + +err_e_inval: + ret = -EINVAL; +err_of_node_put: + of_node_put(child); + return ret; } static void rcar_gyroadc_deinit_supplies(struct iio_dev *indio_dev) --- linux-azure-5.8-5.8.0.orig/drivers/iio/adc/rockchip_saradc.c +++ linux-azure-5.8-5.8.0/drivers/iio/adc/rockchip_saradc.c @@ -372,7 +372,7 @@ ret = clk_prepare_enable(info->clk); if (ret) - return ret; + clk_disable_unprepare(info->pclk); return ret; } --- linux-azure-5.8-5.8.0.orig/drivers/iio/adc/stm32-adc-core.c +++ linux-azure-5.8-5.8.0/drivers/iio/adc/stm32-adc-core.c @@ -41,18 +41,16 @@ * struct stm32_adc_common_regs - stm32 common registers * @csr: common status register offset * @ccr: common control register offset - * @eoc1_msk: adc1 end of conversion flag in @csr - * @eoc2_msk: adc2 end of conversion flag in @csr - * @eoc3_msk: adc3 end of conversion flag in @csr + * @eoc_msk: array of eoc (end of conversion flag) masks in csr for adc1..n + * @ovr_msk: array of ovr (overrun flag) masks in csr for adc1..n * @ier: interrupt enable register offset for each adc * @eocie_msk: end of conversion interrupt enable mask in @ier */ struct stm32_adc_common_regs { u32 csr; u32 ccr; - u32 eoc1_msk; - u32 eoc2_msk; - u32 eoc3_msk; + u32 eoc_msk[STM32_ADC_MAX_ADCS]; + u32 ovr_msk[STM32_ADC_MAX_ADCS]; u32 ier; u32 eocie_msk; }; @@ -282,21 +280,20 @@ static const struct stm32_adc_common_regs stm32f4_adc_common_regs = { .csr = STM32F4_ADC_CSR, .ccr = STM32F4_ADC_CCR, - .eoc1_msk = STM32F4_EOC1 | STM32F4_OVR1, - .eoc2_msk = STM32F4_EOC2 | STM32F4_OVR2, - .eoc3_msk = STM32F4_EOC3 | STM32F4_OVR3, + .eoc_msk = { STM32F4_EOC1, STM32F4_EOC2, STM32F4_EOC3}, + .ovr_msk = { STM32F4_OVR1, STM32F4_OVR2, STM32F4_OVR3}, .ier = STM32F4_ADC_CR1, - .eocie_msk = STM32F4_EOCIE | STM32F4_OVRIE, + .eocie_msk = STM32F4_EOCIE, }; /* STM32H7 common registers definitions */ static const struct stm32_adc_common_regs stm32h7_adc_common_regs = { .csr = STM32H7_ADC_CSR, .ccr = STM32H7_ADC_CCR, - .eoc1_msk = STM32H7_EOC_MST | STM32H7_OVR_MST, - .eoc2_msk = STM32H7_EOC_SLV | STM32H7_OVR_SLV, + .eoc_msk = { STM32H7_EOC_MST, STM32H7_EOC_SLV}, + .ovr_msk = { STM32H7_OVR_MST, STM32H7_OVR_SLV}, .ier = STM32H7_ADC_IER, - .eocie_msk = STM32H7_EOCIE | STM32H7_OVRIE, + .eocie_msk = STM32H7_EOCIE, }; static const unsigned int stm32_adc_offset[STM32_ADC_MAX_ADCS] = { @@ -318,6 +315,7 @@ { struct stm32_adc_priv *priv = irq_desc_get_handler_data(desc); struct irq_chip *chip = irq_desc_get_chip(desc); + int i; u32 status; chained_irq_enter(chip, desc); @@ -335,17 +333,12 @@ * before invoking the interrupt handler (e.g. call ISR only for * IRQ-enabled ADCs). */ - if (status & priv->cfg->regs->eoc1_msk && - stm32_adc_eoc_enabled(priv, 0)) - generic_handle_irq(irq_find_mapping(priv->domain, 0)); - - if (status & priv->cfg->regs->eoc2_msk && - stm32_adc_eoc_enabled(priv, 1)) - generic_handle_irq(irq_find_mapping(priv->domain, 1)); - - if (status & priv->cfg->regs->eoc3_msk && - stm32_adc_eoc_enabled(priv, 2)) - generic_handle_irq(irq_find_mapping(priv->domain, 2)); + for (i = 0; i < priv->cfg->num_irqs; i++) { + if ((status & priv->cfg->regs->eoc_msk[i] && + stm32_adc_eoc_enabled(priv, i)) || + (status & priv->cfg->regs->ovr_msk[i])) + generic_handle_irq(irq_find_mapping(priv->domain, i)); + } chained_irq_exit(chip, desc); }; @@ -794,6 +787,13 @@ { return stm32_adc_core_hw_start(dev); } + +static int stm32_adc_core_runtime_idle(struct device *dev) +{ + pm_runtime_mark_last_busy(dev); + + return 0; +} #endif static const struct dev_pm_ops stm32_adc_core_pm_ops = { @@ -801,7 +801,7 @@ pm_runtime_force_resume) SET_RUNTIME_PM_OPS(stm32_adc_core_runtime_suspend, stm32_adc_core_runtime_resume, - NULL) + stm32_adc_core_runtime_idle) }; static const struct stm32_adc_priv_cfg stm32f4_adc_priv_cfg = { --- linux-azure-5.8-5.8.0.orig/drivers/iio/adc/stm32-adc.c +++ linux-azure-5.8-5.8.0/drivers/iio/adc/stm32-adc.c @@ -154,6 +154,7 @@ * @start_conv: routine to start conversions * @stop_conv: routine to stop conversions * @unprepare: optional unprepare routine (disable, power-down) + * @irq_clear: routine to clear irqs * @smp_cycles: programmable sampling time (ADC clock cycles) */ struct stm32_adc_cfg { @@ -166,6 +167,7 @@ void (*start_conv)(struct stm32_adc *, bool dma); void (*stop_conv)(struct stm32_adc *); void (*unprepare)(struct stm32_adc *); + void (*irq_clear)(struct iio_dev *indio_dev, u32 msk); const unsigned int *smp_cycles; }; @@ -615,6 +617,13 @@ STM32F4_ADON | STM32F4_DMA | STM32F4_DDS); } +static void stm32f4_adc_irq_clear(struct iio_dev *indio_dev, u32 msk) +{ + struct stm32_adc *adc = iio_priv(indio_dev); + + stm32_adc_clr_bits(adc, adc->cfg->regs->isr_eoc.reg, msk); +} + static void stm32h7_adc_start_conv(struct stm32_adc *adc, bool dma) { enum stm32h7_adc_dmngt dmngt; @@ -652,6 +661,13 @@ stm32_adc_clr_bits(adc, STM32H7_ADC_CFGR, STM32H7_DMNGT_MASK); } +static void stm32h7_adc_irq_clear(struct iio_dev *indio_dev, u32 msk) +{ + struct stm32_adc *adc = iio_priv(indio_dev); + /* On STM32H7 IRQs are cleared by writing 1 into ISR register */ + stm32_adc_set_bits(adc, adc->cfg->regs->isr_eoc.reg, msk); +} + static int stm32h7_adc_exit_pwr_down(struct stm32_adc *adc) { struct iio_dev *indio_dev = iio_priv_to_dev(adc); @@ -1225,17 +1241,40 @@ } } +static void stm32_adc_irq_clear(struct iio_dev *indio_dev, u32 msk) +{ + struct stm32_adc *adc = iio_priv(indio_dev); + + adc->cfg->irq_clear(indio_dev, msk); +} + static irqreturn_t stm32_adc_threaded_isr(int irq, void *data) { struct stm32_adc *adc = data; struct iio_dev *indio_dev = iio_priv_to_dev(adc); const struct stm32_adc_regspec *regs = adc->cfg->regs; u32 status = stm32_adc_readl(adc, regs->isr_eoc.reg); + u32 mask = stm32_adc_readl(adc, regs->ier_eoc.reg); - if (status & regs->isr_ovr.mask) + /* Check ovr status right now, as ovr mask should be already disabled */ + if (status & regs->isr_ovr.mask) { + /* + * Clear ovr bit to avoid subsequent calls to IRQ handler. + * This requires to stop ADC first. OVR bit state in ISR, + * is propaged to CSR register by hardware. + */ + adc->cfg->stop_conv(indio_dev); + stm32_adc_irq_clear(indio_dev, regs->isr_ovr.mask); dev_err(&indio_dev->dev, "Overrun, stopping: restart needed\n"); + return IRQ_HANDLED; + } - return IRQ_HANDLED; + if (!(status & mask)) + dev_err_ratelimited(&indio_dev->dev, + "Unexpected IRQ: IER=0x%08x, ISR=0x%08x\n", + mask, status); + + return IRQ_NONE; } static irqreturn_t stm32_adc_isr(int irq, void *data) @@ -1244,6 +1283,10 @@ struct iio_dev *indio_dev = iio_priv_to_dev(adc); const struct stm32_adc_regspec *regs = adc->cfg->regs; u32 status = stm32_adc_readl(adc, regs->isr_eoc.reg); + u32 mask = stm32_adc_readl(adc, regs->ier_eoc.reg); + + if (!(status & mask)) + return IRQ_WAKE_THREAD; if (status & regs->isr_ovr.mask) { /* @@ -2069,6 +2112,7 @@ .start_conv = stm32f4_adc_start_conv, .stop_conv = stm32f4_adc_stop_conv, .smp_cycles = stm32f4_adc_smp_cycles, + .irq_clear = stm32f4_adc_irq_clear, }; static const struct stm32_adc_cfg stm32h7_adc_cfg = { @@ -2080,6 +2124,7 @@ .prepare = stm32h7_adc_prepare, .unprepare = stm32h7_adc_unprepare, .smp_cycles = stm32h7_adc_smp_cycles, + .irq_clear = stm32h7_adc_irq_clear, }; static const struct stm32_adc_cfg stm32mp1_adc_cfg = { @@ -2092,6 +2137,7 @@ .prepare = stm32h7_adc_prepare, .unprepare = stm32h7_adc_unprepare, .smp_cycles = stm32h7_adc_smp_cycles, + .irq_clear = stm32h7_adc_irq_clear, }; static const struct of_device_id stm32_adc_of_match[] = { --- linux-azure-5.8-5.8.0.orig/drivers/iio/adc/ti-adc081c.c +++ linux-azure-5.8-5.8.0/drivers/iio/adc/ti-adc081c.c @@ -33,6 +33,12 @@ /* 8, 10 or 12 */ int bits; + + /* Ensure natural alignment of buffer elements */ + struct { + u16 channel; + s64 ts __aligned(8); + } scan; }; #define REG_CONV_RES 0x00 @@ -128,14 +134,13 @@ struct iio_poll_func *pf = p; struct iio_dev *indio_dev = pf->indio_dev; struct adc081c *data = iio_priv(indio_dev); - u16 buf[8]; /* 2 bytes data + 6 bytes padding + 8 bytes timestamp */ int ret; ret = i2c_smbus_read_word_swapped(data->i2c, REG_CONV_RES); if (ret < 0) goto out; - buf[0] = ret; - iio_push_to_buffers_with_timestamp(indio_dev, buf, + data->scan.channel = ret; + iio_push_to_buffers_with_timestamp(indio_dev, &data->scan, iio_get_time_ns(indio_dev)); out: iio_trigger_notify_done(indio_dev->trig); --- linux-azure-5.8-5.8.0.orig/drivers/iio/adc/ti-adc0832.c +++ linux-azure-5.8-5.8.0/drivers/iio/adc/ti-adc0832.c @@ -28,6 +28,12 @@ struct regulator *reg; struct mutex lock; u8 mux_bits; + /* + * Max size needed: 16x 1 byte ADC data + 8 bytes timestamp + * May be shorter if not all channels are enabled subject + * to the timestamp remaining 8 byte aligned. + */ + u8 data[24] __aligned(8); u8 tx_buf[2] ____cacheline_aligned; u8 rx_buf[2]; @@ -199,7 +205,6 @@ struct iio_poll_func *pf = p; struct iio_dev *indio_dev = pf->indio_dev; struct adc0832 *adc = iio_priv(indio_dev); - u8 data[24] = { }; /* 16x 1 byte ADC data + 8 bytes timestamp */ int scan_index; int i = 0; @@ -217,10 +222,10 @@ goto out; } - data[i] = ret; + adc->data[i] = ret; i++; } - iio_push_to_buffers_with_timestamp(indio_dev, data, + iio_push_to_buffers_with_timestamp(indio_dev, adc->data, iio_get_time_ns(indio_dev)); out: mutex_unlock(&adc->lock); --- linux-azure-5.8-5.8.0.orig/drivers/iio/adc/ti-adc084s021.c +++ linux-azure-5.8-5.8.0/drivers/iio/adc/ti-adc084s021.c @@ -25,6 +25,11 @@ struct spi_transfer spi_trans; struct regulator *reg; struct mutex lock; + /* Buffer used to align data */ + struct { + __be16 channels[4]; + s64 ts __aligned(8); + } scan; /* * DMA (thus cache coherency maintenance) requires the * transfer buffers to live in their own cache line. @@ -140,14 +145,13 @@ struct iio_poll_func *pf = pollfunc; struct iio_dev *indio_dev = pf->indio_dev; struct adc084s021 *adc = iio_priv(indio_dev); - __be16 data[8] = {0}; /* 4 * 16-bit words of data + 8 bytes timestamp */ mutex_lock(&adc->lock); - if (adc084s021_adc_conversion(adc, &data) < 0) + if (adc084s021_adc_conversion(adc, adc->scan.channels) < 0) dev_err(&adc->spi->dev, "Failed to read data\n"); - iio_push_to_buffers_with_timestamp(indio_dev, data, + iio_push_to_buffers_with_timestamp(indio_dev, &adc->scan, iio_get_time_ns(indio_dev)); mutex_unlock(&adc->lock); iio_trigger_notify_done(indio_dev->trig); --- linux-azure-5.8-5.8.0.orig/drivers/iio/adc/ti-adc12138.c +++ linux-azure-5.8-5.8.0/drivers/iio/adc/ti-adc12138.c @@ -47,6 +47,12 @@ struct completion complete; /* The number of cclk periods for the S/H's acquisition time */ unsigned int acquisition_time; + /* + * Maximum size needed: 16x 2 bytes ADC data + 8 bytes timestamp. + * Less may be need if not all channels are enabled, as long as + * the 8 byte alignment of the timestamp is maintained. + */ + __be16 data[20] __aligned(8); u8 tx_buf[2] ____cacheline_aligned; u8 rx_buf[2]; @@ -329,7 +335,6 @@ struct iio_poll_func *pf = p; struct iio_dev *indio_dev = pf->indio_dev; struct adc12138 *adc = iio_priv(indio_dev); - __be16 data[20] = { }; /* 16x 2 bytes ADC data + 8 bytes timestamp */ __be16 trash; int ret; int scan_index; @@ -345,7 +350,7 @@ reinit_completion(&adc->complete); ret = adc12138_start_and_read_conv(adc, scan_chan, - i ? &data[i - 1] : &trash); + i ? &adc->data[i - 1] : &trash); if (ret) { dev_warn(&adc->spi->dev, "failed to start conversion\n"); @@ -362,7 +367,7 @@ } if (i) { - ret = adc12138_read_conv_data(adc, &data[i - 1]); + ret = adc12138_read_conv_data(adc, &adc->data[i - 1]); if (ret) { dev_warn(&adc->spi->dev, "failed to get conversion data\n"); @@ -370,7 +375,7 @@ } } - iio_push_to_buffers_with_timestamp(indio_dev, data, + iio_push_to_buffers_with_timestamp(indio_dev, adc->data, iio_get_time_ns(indio_dev)); out: mutex_unlock(&adc->lock); --- linux-azure-5.8-5.8.0.orig/drivers/iio/adc/ti-ads1015.c +++ linux-azure-5.8-5.8.0/drivers/iio/adc/ti-ads1015.c @@ -316,6 +316,7 @@ IIO_CHAN_SOFT_TIMESTAMP(ADS1015_TIMESTAMP), }; +#ifdef CONFIG_PM static int ads1015_set_power_state(struct ads1015_data *data, bool on) { int ret; @@ -333,6 +334,15 @@ return ret < 0 ? ret : 0; } +#else /* !CONFIG_PM */ + +static int ads1015_set_power_state(struct ads1015_data *data, bool on) +{ + return 0; +} + +#endif /* !CONFIG_PM */ + static int ads1015_get_adc_result(struct ads1015_data *data, int chan, int *val) { --- linux-azure-5.8-5.8.0.orig/drivers/iio/adc/ti-ads124s08.c +++ linux-azure-5.8-5.8.0/drivers/iio/adc/ti-ads124s08.c @@ -99,6 +99,14 @@ struct gpio_desc *reset_gpio; struct spi_device *spi; struct mutex lock; + /* + * Used to correctly align data. + * Ensure timestamp is naturally aligned. + * Note that the full buffer length may not be needed if not + * all channels are enabled, as long as the alignment of the + * timestamp is maintained. + */ + u32 buffer[ADS124S08_MAX_CHANNELS + sizeof(s64)/sizeof(u32)] __aligned(8); u8 data[5] ____cacheline_aligned; }; @@ -269,7 +277,6 @@ struct iio_poll_func *pf = p; struct iio_dev *indio_dev = pf->indio_dev; struct ads124s_private *priv = iio_priv(indio_dev); - u32 buffer[ADS124S08_MAX_CHANNELS + sizeof(s64)/sizeof(u16)]; int scan_index, j = 0; int ret; @@ -284,7 +291,7 @@ if (ret) dev_err(&priv->spi->dev, "Start ADC conversions failed\n"); - buffer[j] = ads124s_read(indio_dev, scan_index); + priv->buffer[j] = ads124s_read(indio_dev, scan_index); ret = ads124s_write_cmd(indio_dev, ADS124S08_STOP_CONV); if (ret) dev_err(&priv->spi->dev, "Stop ADC conversions failed\n"); @@ -292,7 +299,7 @@ j++; } - iio_push_to_buffers_with_timestamp(indio_dev, buffer, + iio_push_to_buffers_with_timestamp(indio_dev, priv->buffer, pf->timestamp); iio_trigger_notify_done(indio_dev->trig); --- linux-azure-5.8-5.8.0.orig/drivers/iio/amplifiers/ad8366.c +++ linux-azure-5.8-5.8.0/drivers/iio/amplifiers/ad8366.c @@ -262,8 +262,11 @@ case ID_ADA4961: case ID_ADL5240: case ID_HMC1119: - st->reset_gpio = devm_gpiod_get(&spi->dev, "reset", - GPIOD_OUT_HIGH); + st->reset_gpio = devm_gpiod_get_optional(&spi->dev, "reset", GPIOD_OUT_HIGH); + if (IS_ERR(st->reset_gpio)) { + ret = PTR_ERR(st->reset_gpio); + goto error_disable_reg; + } indio_dev->channels = ada4961_channels; indio_dev->num_channels = ARRAY_SIZE(ada4961_channels); break; --- linux-azure-5.8-5.8.0.orig/drivers/iio/chemical/ccs811.c +++ linux-azure-5.8-5.8.0/drivers/iio/chemical/ccs811.c @@ -78,6 +78,11 @@ struct iio_trigger *drdy_trig; struct gpio_desc *wakeup_gpio; bool drdy_trig_on; + /* Ensures correct alignment of timestamp if present */ + struct { + s16 channels[2]; + s64 ts __aligned(8); + } scan; }; static const struct iio_chan_spec ccs811_channels[] = { @@ -327,17 +332,17 @@ struct iio_dev *indio_dev = pf->indio_dev; struct ccs811_data *data = iio_priv(indio_dev); struct i2c_client *client = data->client; - s16 buf[8]; /* s16 eCO2 + s16 TVOC + padding + 8 byte timestamp */ int ret; - ret = i2c_smbus_read_i2c_block_data(client, CCS811_ALG_RESULT_DATA, 4, - (u8 *)&buf); + ret = i2c_smbus_read_i2c_block_data(client, CCS811_ALG_RESULT_DATA, + sizeof(data->scan.channels), + (u8 *)data->scan.channels); if (ret != 4) { dev_err(&client->dev, "cannot read sensor data\n"); goto err; } - iio_push_to_buffers_with_timestamp(indio_dev, buf, + iio_push_to_buffers_with_timestamp(indio_dev, &data->scan, iio_get_time_ns(indio_dev)); err: --- linux-azure-5.8-5.8.0.orig/drivers/iio/common/cros_ec_sensors/cros_ec_sensors_core.c +++ linux-azure-5.8-5.8.0/drivers/iio/common/cros_ec_sensors/cros_ec_sensors_core.c @@ -72,10 +72,13 @@ switch (type) { case MOTIONSENSE_TYPE_ACCEL: - case MOTIONSENSE_TYPE_GYRO: *min_freq = 12500; *max_freq = 100000; break; + case MOTIONSENSE_TYPE_GYRO: + *min_freq = 25000; + *max_freq = 100000; + break; case MOTIONSENSE_TYPE_MAG: *min_freq = 5000; *max_freq = 25000; @@ -252,7 +255,7 @@ struct cros_ec_sensorhub *sensor_hub = dev_get_drvdata(dev->parent); struct cros_ec_dev *ec = sensor_hub->ec; struct cros_ec_sensor_platform *sensor_platform = dev_get_platdata(dev); - u32 ver_mask; + u32 ver_mask, temp; int frequencies[ARRAY_SIZE(state->frequencies) / 2] = { 0 }; int ret, i; @@ -308,10 +311,16 @@ &frequencies[2], &state->fifo_max_event_count); } else { - frequencies[1] = state->resp->info_3.min_frequency; - frequencies[2] = state->resp->info_3.max_frequency; - state->fifo_max_event_count = - state->resp->info_3.fifo_max_event_count; + if (state->resp->info_3.max_frequency == 0) { + get_default_min_max_freq(state->resp->info.type, + &frequencies[1], + &frequencies[2], + &temp); + } else { + frequencies[1] = state->resp->info_3.min_frequency; + frequencies[2] = state->resp->info_3.max_frequency; + } + state->fifo_max_event_count = state->resp->info_3.fifo_max_event_count; } for (i = 0; i < ARRAY_SIZE(frequencies); i++) { state->frequencies[2 * i] = frequencies[i] / 1000; --- linux-azure-5.8-5.8.0.orig/drivers/iio/common/st_sensors/st_sensors_trigger.c +++ linux-azure-5.8-5.8.0/drivers/iio/common/st_sensors/st_sensors_trigger.c @@ -23,35 +23,31 @@ * @sdata: Sensor data. * * returns: - * 0 - no new samples available - * 1 - new samples available - * negative - error or unknown + * false - no new samples available or read error + * true - new samples available */ -static int st_sensors_new_samples_available(struct iio_dev *indio_dev, - struct st_sensor_data *sdata) +static bool st_sensors_new_samples_available(struct iio_dev *indio_dev, + struct st_sensor_data *sdata) { int ret, status; /* How would I know if I can't check it? */ if (!sdata->sensor_settings->drdy_irq.stat_drdy.addr) - return -EINVAL; + return true; /* No scan mask, no interrupt */ if (!indio_dev->active_scan_mask) - return 0; + return false; ret = regmap_read(sdata->regmap, sdata->sensor_settings->drdy_irq.stat_drdy.addr, &status); if (ret < 0) { dev_err(sdata->dev, "error checking samples available\n"); - return ret; + return false; } - if (status & sdata->sensor_settings->drdy_irq.stat_drdy.mask) - return 1; - - return 0; + return !!(status & sdata->sensor_settings->drdy_irq.stat_drdy.mask); } /** @@ -180,9 +176,15 @@ /* Tell the interrupt handler that we're dealing with edges */ if (irq_trig == IRQF_TRIGGER_FALLING || - irq_trig == IRQF_TRIGGER_RISING) + irq_trig == IRQF_TRIGGER_RISING) { + if (!sdata->sensor_settings->drdy_irq.stat_drdy.addr) { + dev_err(&indio_dev->dev, + "edge IRQ not supported w/o stat register.\n"); + err = -EOPNOTSUPP; + goto iio_trigger_free; + } sdata->edge_irq = true; - else + } else { /* * If we're not using edges (i.e. level interrupts) we * just mask off the IRQ, handle one interrupt, then @@ -190,6 +192,7 @@ * interrupt handler top half again and start over. */ irq_trig |= IRQF_ONESHOT; + } /* * If the interrupt pin is Open Drain, by definition this --- linux-azure-5.8-5.8.0.orig/drivers/iio/dac/ad5504.c +++ linux-azure-5.8-5.8.0/drivers/iio/dac/ad5504.c @@ -188,9 +188,9 @@ return ret; if (pwr_down) - st->pwr_down_mask |= (1 << chan->channel); - else st->pwr_down_mask &= ~(1 << chan->channel); + else + st->pwr_down_mask |= (1 << chan->channel); ret = ad5504_spi_write(st, AD5504_ADDR_CTRL, AD5504_DAC_PWRDWN_MODE(st->pwr_down_mode) | --- linux-azure-5.8-5.8.0.orig/drivers/iio/dac/ad5592r-base.c +++ linux-azure-5.8-5.8.0/drivers/iio/dac/ad5592r-base.c @@ -413,7 +413,7 @@ s64 tmp = *val * (3767897513LL / 25LL); *val = div_s64_rem(tmp, 1000000000LL, val2); - ret = IIO_VAL_INT_PLUS_MICRO; + return IIO_VAL_INT_PLUS_MICRO; } else { int mult; @@ -444,7 +444,7 @@ ret = IIO_VAL_INT; break; default: - ret = -EINVAL; + return -EINVAL; } unlock: --- linux-azure-5.8-5.8.0.orig/drivers/iio/gyro/itg3200_buffer.c +++ linux-azure-5.8-5.8.0/drivers/iio/gyro/itg3200_buffer.c @@ -46,13 +46,20 @@ struct iio_poll_func *pf = p; struct iio_dev *indio_dev = pf->indio_dev; struct itg3200 *st = iio_priv(indio_dev); - __be16 buf[ITG3200_SCAN_ELEMENTS + sizeof(s64)/sizeof(u16)]; + /* + * Ensure correct alignment and padding including for the + * timestamp that may be inserted. + */ + struct { + __be16 buf[ITG3200_SCAN_ELEMENTS]; + s64 ts __aligned(8); + } scan; - int ret = itg3200_read_all_channels(st->i2c, buf); + int ret = itg3200_read_all_channels(st->i2c, scan.buf); if (ret < 0) goto error_ret; - iio_push_to_buffers_with_timestamp(indio_dev, buf, pf->timestamp); + iio_push_to_buffers_with_timestamp(indio_dev, &scan, pf->timestamp); iio_trigger_notify_done(indio_dev->trig); --- linux-azure-5.8-5.8.0.orig/drivers/iio/imu/bmi160/bmi160.h +++ linux-azure-5.8-5.8.0/drivers/iio/imu/bmi160/bmi160.h @@ -7,6 +7,13 @@ struct bmi160_data { struct regmap *regmap; struct iio_trigger *trig; + /* + * Ensure natural alignment for timestamp if present. + * Max length needed: 2 * 3 channels + 4 bytes padding + 8 byte ts. + * If fewer channels are enabled, less space may be needed, as + * long as the timestamp is still aligned to 8 bytes. + */ + __le16 buf[12] __aligned(8); }; extern const struct regmap_config bmi160_regmap_config; --- linux-azure-5.8-5.8.0.orig/drivers/iio/imu/bmi160/bmi160_core.c +++ linux-azure-5.8-5.8.0/drivers/iio/imu/bmi160/bmi160_core.c @@ -411,8 +411,6 @@ struct iio_poll_func *pf = p; struct iio_dev *indio_dev = pf->indio_dev; struct bmi160_data *data = iio_priv(indio_dev); - __le16 buf[16]; - /* 3 sens x 3 axis x __le16 + 3 x __le16 pad + 4 x __le16 tstamp */ int i, ret, j = 0, base = BMI160_REG_DATA_MAGN_XOUT_L; __le16 sample; @@ -422,10 +420,10 @@ &sample, sizeof(sample)); if (ret) goto done; - buf[j++] = sample; + data->buf[j++] = sample; } - iio_push_to_buffers_with_timestamp(indio_dev, buf, pf->timestamp); + iio_push_to_buffers_with_timestamp(indio_dev, data->buf, pf->timestamp); done: iio_trigger_notify_done(indio_dev->trig); return IRQ_HANDLED; --- linux-azure-5.8-5.8.0.orig/drivers/iio/imu/inv_mpu6050/inv_mpu_iio.h +++ linux-azure-5.8-5.8.0/drivers/iio/imu/inv_mpu6050/inv_mpu_iio.h @@ -122,6 +122,13 @@ u8 user_ctrl; }; +/* + * Maximum of 6 + 6 + 2 + 7 (for MPU9x50) = 21 round up to 24 and plus 8. + * May be less if fewer channels are enabled, as long as the timestamp + * remains 8 byte aligned + */ +#define INV_MPU6050_OUTPUT_DATA_SIZE 32 + /** * struct inv_mpu6050_hw - Other important hardware information. * @whoami: Self identification byte from WHO_AM_I register @@ -165,6 +172,7 @@ * @magn_raw_to_gauss: coefficient to convert mag raw value to Gauss. * @magn_orient: magnetometer sensor chip orientation if available. * @suspended_sensors: sensors mask of sensors turned off for suspend + * @data: dma safe buffer used for bulk reads. */ struct inv_mpu6050_state { struct mutex lock; @@ -190,6 +198,7 @@ s32 magn_raw_to_gauss[3]; struct iio_mount_matrix magn_orient; unsigned int suspended_sensors; + u8 data[INV_MPU6050_OUTPUT_DATA_SIZE] ____cacheline_aligned; }; /*register and associated bit definition*/ @@ -334,9 +343,6 @@ #define INV_ICM20608_TEMP_OFFSET 8170 #define INV_ICM20608_TEMP_SCALE 3059976 -/* 6 + 6 + 2 + 7 (for MPU9x50) = 21 round up to 24 and plus 8 */ -#define INV_MPU6050_OUTPUT_DATA_SIZE 32 - #define INV_MPU6050_REG_INT_PIN_CFG 0x37 #define INV_MPU6050_ACTIVE_HIGH 0x00 #define INV_MPU6050_ACTIVE_LOW 0x80 --- linux-azure-5.8-5.8.0.orig/drivers/iio/imu/inv_mpu6050/inv_mpu_ring.c +++ linux-azure-5.8-5.8.0/drivers/iio/imu/inv_mpu6050/inv_mpu_ring.c @@ -13,7 +13,6 @@ #include #include #include -#include #include "inv_mpu_iio.h" /** @@ -121,7 +120,6 @@ struct inv_mpu6050_state *st = iio_priv(indio_dev); size_t bytes_per_datum; int result; - u8 data[INV_MPU6050_OUTPUT_DATA_SIZE]; u16 fifo_count; s64 timestamp; int int_status; @@ -160,11 +158,11 @@ * read fifo_count register to know how many bytes are inside the FIFO * right now */ - result = regmap_bulk_read(st->map, st->reg->fifo_count_h, data, - INV_MPU6050_FIFO_COUNT_BYTE); + result = regmap_bulk_read(st->map, st->reg->fifo_count_h, + st->data, INV_MPU6050_FIFO_COUNT_BYTE); if (result) goto end_session; - fifo_count = get_unaligned_be16(&data[0]); + fifo_count = be16_to_cpup((__be16 *)&st->data[0]); /* * Handle fifo overflow by resetting fifo. @@ -182,7 +180,7 @@ inv_mpu6050_update_period(st, pf->timestamp, nb); for (i = 0; i < nb; ++i) { result = regmap_bulk_read(st->map, st->reg->fifo_r_w, - data, bytes_per_datum); + st->data, bytes_per_datum); if (result) goto flush_fifo; /* skip first samples if needed */ @@ -191,7 +189,7 @@ continue; } timestamp = inv_mpu6050_get_timestamp(st); - iio_push_to_buffers_with_timestamp(indio_dev, data, timestamp); + iio_push_to_buffers_with_timestamp(indio_dev, st->data, timestamp); } end_session: --- linux-azure-5.8-5.8.0.orig/drivers/iio/imu/st_lsm6dsx/st_lsm6dsx.h +++ linux-azure-5.8-5.8.0/drivers/iio/imu/st_lsm6dsx/st_lsm6dsx.h @@ -383,6 +383,7 @@ * @iio_devs: Pointers to acc/gyro iio_dev instances. * @settings: Pointer to the specific sensor settings in use. * @orientation: sensor chip orientation relative to main hardware. + * @scan: Temporary buffers used to align data before iio_push_to_buffers() */ struct st_lsm6dsx_hw { struct device *dev; @@ -411,6 +412,11 @@ const struct st_lsm6dsx_settings *settings; struct iio_mount_matrix orientation; + /* Ensure natural alignment of buffer elements */ + struct { + __le16 channels[3]; + s64 ts __aligned(8); + } scan[3]; }; static __maybe_unused const struct iio_event_spec st_lsm6dsx_event = { @@ -436,8 +442,7 @@ u16 watermark); int st_lsm6dsx_update_fifo(struct st_lsm6dsx_sensor *sensor, bool enable); int st_lsm6dsx_flush_fifo(struct st_lsm6dsx_hw *hw); -int st_lsm6dsx_set_fifo_mode(struct st_lsm6dsx_hw *hw, - enum st_lsm6dsx_fifo_mode fifo_mode); +int st_lsm6dsx_resume_fifo(struct st_lsm6dsx_hw *hw); int st_lsm6dsx_read_fifo(struct st_lsm6dsx_hw *hw); int st_lsm6dsx_read_tagged_fifo(struct st_lsm6dsx_hw *hw); int st_lsm6dsx_check_odr(struct st_lsm6dsx_sensor *sensor, u32 odr, u8 *val); --- linux-azure-5.8-5.8.0.orig/drivers/iio/imu/st_lsm6dsx/st_lsm6dsx_buffer.c +++ linux-azure-5.8-5.8.0/drivers/iio/imu/st_lsm6dsx/st_lsm6dsx_buffer.c @@ -184,8 +184,8 @@ return err; } -int st_lsm6dsx_set_fifo_mode(struct st_lsm6dsx_hw *hw, - enum st_lsm6dsx_fifo_mode fifo_mode) +static int st_lsm6dsx_set_fifo_mode(struct st_lsm6dsx_hw *hw, + enum st_lsm6dsx_fifo_mode fifo_mode) { unsigned int data; @@ -302,6 +302,18 @@ return 0; } +int st_lsm6dsx_resume_fifo(struct st_lsm6dsx_hw *hw) +{ + int err; + + /* reset hw ts counter */ + err = st_lsm6dsx_reset_hw_ts(hw); + if (err < 0) + return err; + + return st_lsm6dsx_set_fifo_mode(hw, ST_LSM6DSX_FIFO_CONT); +} + /* * Set max bulk read to ST_LSM6DSX_MAX_WORD_LEN/ST_LSM6DSX_MAX_TAGGED_WORD_LEN * in order to avoid a kmalloc for each bus access @@ -341,9 +353,6 @@ int err, sip, acc_sip, gyro_sip, ts_sip, ext_sip, read_len, offset; u16 fifo_len, pattern_len = hw->sip * ST_LSM6DSX_SAMPLE_SIZE; u16 fifo_diff_mask = hw->settings->fifo_ops.fifo_diff.mask; - u8 gyro_buff[ST_LSM6DSX_IIO_BUFF_SIZE]; - u8 acc_buff[ST_LSM6DSX_IIO_BUFF_SIZE]; - u8 ext_buff[ST_LSM6DSX_IIO_BUFF_SIZE]; bool reset_ts = false; __le16 fifo_status; s64 ts = 0; @@ -404,19 +413,22 @@ while (acc_sip > 0 || gyro_sip > 0 || ext_sip > 0) { if (gyro_sip > 0 && !(sip % gyro_sensor->decimator)) { - memcpy(gyro_buff, &hw->buff[offset], - ST_LSM6DSX_SAMPLE_SIZE); - offset += ST_LSM6DSX_SAMPLE_SIZE; + memcpy(hw->scan[ST_LSM6DSX_ID_GYRO].channels, + &hw->buff[offset], + sizeof(hw->scan[ST_LSM6DSX_ID_GYRO].channels)); + offset += sizeof(hw->scan[ST_LSM6DSX_ID_GYRO].channels); } if (acc_sip > 0 && !(sip % acc_sensor->decimator)) { - memcpy(acc_buff, &hw->buff[offset], - ST_LSM6DSX_SAMPLE_SIZE); - offset += ST_LSM6DSX_SAMPLE_SIZE; + memcpy(hw->scan[ST_LSM6DSX_ID_ACC].channels, + &hw->buff[offset], + sizeof(hw->scan[ST_LSM6DSX_ID_ACC].channels)); + offset += sizeof(hw->scan[ST_LSM6DSX_ID_ACC].channels); } if (ext_sip > 0 && !(sip % ext_sensor->decimator)) { - memcpy(ext_buff, &hw->buff[offset], - ST_LSM6DSX_SAMPLE_SIZE); - offset += ST_LSM6DSX_SAMPLE_SIZE; + memcpy(hw->scan[ST_LSM6DSX_ID_EXT0].channels, + &hw->buff[offset], + sizeof(hw->scan[ST_LSM6DSX_ID_EXT0].channels)); + offset += sizeof(hw->scan[ST_LSM6DSX_ID_EXT0].channels); } if (ts_sip-- > 0) { @@ -446,19 +458,22 @@ if (gyro_sip > 0 && !(sip % gyro_sensor->decimator)) { iio_push_to_buffers_with_timestamp( hw->iio_devs[ST_LSM6DSX_ID_GYRO], - gyro_buff, gyro_sensor->ts_ref + ts); + &hw->scan[ST_LSM6DSX_ID_GYRO], + gyro_sensor->ts_ref + ts); gyro_sip--; } if (acc_sip > 0 && !(sip % acc_sensor->decimator)) { iio_push_to_buffers_with_timestamp( hw->iio_devs[ST_LSM6DSX_ID_ACC], - acc_buff, acc_sensor->ts_ref + ts); + &hw->scan[ST_LSM6DSX_ID_ACC], + acc_sensor->ts_ref + ts); acc_sip--; } if (ext_sip > 0 && !(sip % ext_sensor->decimator)) { iio_push_to_buffers_with_timestamp( hw->iio_devs[ST_LSM6DSX_ID_EXT0], - ext_buff, ext_sensor->ts_ref + ts); + &hw->scan[ST_LSM6DSX_ID_EXT0], + ext_sensor->ts_ref + ts); ext_sip--; } sip++; @@ -543,7 +558,14 @@ { u16 pattern_len = hw->sip * ST_LSM6DSX_TAGGED_SAMPLE_SIZE; u16 fifo_len, fifo_diff_mask; - u8 iio_buff[ST_LSM6DSX_IIO_BUFF_SIZE], tag; + /* + * Alignment needed as this can ultimately be passed to a + * call to iio_push_to_buffers_with_timestamp() which + * must be passed a buffer that is aligned to 8 bytes so + * as to allow insertion of a naturally aligned timestamp. + */ + u8 iio_buff[ST_LSM6DSX_IIO_BUFF_SIZE] __aligned(8); + u8 tag; bool reset_ts = false; int i, err, read_len; __le16 fifo_status; @@ -675,12 +697,7 @@ goto out; if (fifo_mask) { - /* reset hw ts counter */ - err = st_lsm6dsx_reset_hw_ts(hw); - if (err < 0) - goto out; - - err = st_lsm6dsx_set_fifo_mode(hw, ST_LSM6DSX_FIFO_CONT); + err = st_lsm6dsx_resume_fifo(hw); if (err < 0) goto out; } --- linux-azure-5.8-5.8.0.orig/drivers/iio/imu/st_lsm6dsx/st_lsm6dsx_core.c +++ linux-azure-5.8-5.8.0/drivers/iio/imu/st_lsm6dsx/st_lsm6dsx_core.c @@ -2236,19 +2236,35 @@ static irqreturn_t st_lsm6dsx_handler_thread(int irq, void *private) { struct st_lsm6dsx_hw *hw = private; + int fifo_len = 0, len; bool event; - int count; event = st_lsm6dsx_report_motion_event(hw); if (!hw->settings->fifo_ops.read_fifo) return event ? IRQ_HANDLED : IRQ_NONE; - mutex_lock(&hw->fifo_lock); - count = hw->settings->fifo_ops.read_fifo(hw); - mutex_unlock(&hw->fifo_lock); + /* + * If we are using edge IRQs, new samples can arrive while + * processing current interrupt since there are no hw + * guarantees the irq line stays "low" long enough to properly + * detect the new interrupt. In this case the new sample will + * be missed. + * Polling FIFO status register allow us to read new + * samples even if the interrupt arrives while processing + * previous data and the timeslot where the line is "low" is + * too short to be properly detected. + */ + do { + mutex_lock(&hw->fifo_lock); + len = hw->settings->fifo_ops.read_fifo(hw); + mutex_unlock(&hw->fifo_lock); + + if (len > 0) + fifo_len += len; + } while (len > 0); - return count || event ? IRQ_HANDLED : IRQ_NONE; + return fifo_len || event ? IRQ_HANDLED : IRQ_NONE; } static int st_lsm6dsx_irq_setup(struct st_lsm6dsx_hw *hw) @@ -2458,7 +2474,7 @@ } if (hw->fifo_mask) - err = st_lsm6dsx_set_fifo_mode(hw, ST_LSM6DSX_FIFO_CONT); + err = st_lsm6dsx_resume_fifo(hw); return err; } --- linux-azure-5.8-5.8.0.orig/drivers/iio/imu/st_lsm6dsx/st_lsm6dsx_shub.c +++ linux-azure-5.8-5.8.0/drivers/iio/imu/st_lsm6dsx/st_lsm6dsx_shub.c @@ -156,11 +156,13 @@ static void st_lsm6dsx_shub_wait_complete(struct st_lsm6dsx_hw *hw) { struct st_lsm6dsx_sensor *sensor; - u32 odr; + u32 odr, timeout; sensor = iio_priv(hw->iio_devs[ST_LSM6DSX_ID_ACC]); odr = (hw->enable_mask & BIT(ST_LSM6DSX_ID_ACC)) ? sensor->odr : 12500; - msleep((2000000U / odr) + 1); + /* set 10ms as minimum timeout for i2c slave configuration */ + timeout = max_t(u32, 2000000U / odr + 1, 10); + msleep(timeout); } /** @@ -313,6 +315,8 @@ err = st_lsm6dsx_shub_read_output(hw, data, len & ST_LS6DSX_READ_OP_MASK); + if (err < 0) + return err; st_lsm6dsx_shub_master_enable(sensor, false); --- linux-azure-5.8-5.8.0.orig/drivers/iio/industrialio-buffer.c +++ linux-azure-5.8-5.8.0/drivers/iio/industrialio-buffer.c @@ -859,12 +859,12 @@ indio_dev->masklength, in_ind + 1); while (in_ind != out_ind) { - in_ind = find_next_bit(indio_dev->active_scan_mask, - indio_dev->masklength, - in_ind + 1); length = iio_storage_bytes_for_si(indio_dev, in_ind); /* Make sure we are aligned */ in_loc = roundup(in_loc, length) + length; + in_ind = find_next_bit(indio_dev->active_scan_mask, + indio_dev->masklength, + in_ind + 1); } length = iio_storage_bytes_for_si(indio_dev, in_ind); out_loc = roundup(out_loc, length); --- linux-azure-5.8-5.8.0.orig/drivers/iio/light/Kconfig +++ linux-azure-5.8-5.8.0/drivers/iio/light/Kconfig @@ -529,6 +529,7 @@ config VCNL4035 tristate "VCNL4035 combined ALS and proximity sensor" + select IIO_BUFFER select IIO_TRIGGERED_BUFFER select REGMAP_I2C depends on I2C --- linux-azure-5.8-5.8.0.orig/drivers/iio/light/ltr501.c +++ linux-azure-5.8-5.8.0/drivers/iio/light/ltr501.c @@ -1243,13 +1243,16 @@ struct iio_poll_func *pf = p; struct iio_dev *indio_dev = pf->indio_dev; struct ltr501_data *data = iio_priv(indio_dev); - u16 buf[8]; + struct { + u16 channels[3]; + s64 ts __aligned(8); + } scan; __le16 als_buf[2]; u8 mask = 0; int j = 0; int ret, psdata; - memset(buf, 0, sizeof(buf)); + memset(&scan, 0, sizeof(scan)); /* figure out which data needs to be ready */ if (test_bit(0, indio_dev->active_scan_mask) || @@ -1268,9 +1271,9 @@ if (ret < 0) return ret; if (test_bit(0, indio_dev->active_scan_mask)) - buf[j++] = le16_to_cpu(als_buf[1]); + scan.channels[j++] = le16_to_cpu(als_buf[1]); if (test_bit(1, indio_dev->active_scan_mask)) - buf[j++] = le16_to_cpu(als_buf[0]); + scan.channels[j++] = le16_to_cpu(als_buf[0]); } if (mask & LTR501_STATUS_PS_RDY) { @@ -1278,10 +1281,10 @@ &psdata, 2); if (ret < 0) goto done; - buf[j++] = psdata & LTR501_PS_DATA_MASK; + scan.channels[j++] = psdata & LTR501_PS_DATA_MASK; } - iio_push_to_buffers_with_timestamp(indio_dev, buf, + iio_push_to_buffers_with_timestamp(indio_dev, &scan, iio_get_time_ns(indio_dev)); done: --- linux-azure-5.8-5.8.0.orig/drivers/iio/light/max44000.c +++ linux-azure-5.8-5.8.0/drivers/iio/light/max44000.c @@ -75,6 +75,11 @@ struct max44000_data { struct mutex lock; struct regmap *regmap; + /* Ensure naturally aligned timestamp */ + struct { + u16 channels[2]; + s64 ts __aligned(8); + } scan; }; /* Default scale is set to the minimum of 0.03125 or 1 / (1 << 5) lux */ @@ -488,7 +493,6 @@ struct iio_poll_func *pf = p; struct iio_dev *indio_dev = pf->indio_dev; struct max44000_data *data = iio_priv(indio_dev); - u16 buf[8]; /* 2x u16 + padding + 8 bytes timestamp */ int index = 0; unsigned int regval; int ret; @@ -498,17 +502,17 @@ ret = max44000_read_alsval(data); if (ret < 0) goto out_unlock; - buf[index++] = ret; + data->scan.channels[index++] = ret; } if (test_bit(MAX44000_SCAN_INDEX_PRX, indio_dev->active_scan_mask)) { ret = regmap_read(data->regmap, MAX44000_REG_PRX_DATA, ®val); if (ret < 0) goto out_unlock; - buf[index] = regval; + data->scan.channels[index] = regval; } mutex_unlock(&data->lock); - iio_push_to_buffers_with_timestamp(indio_dev, buf, + iio_push_to_buffers_with_timestamp(indio_dev, &data->scan, iio_get_time_ns(indio_dev)); iio_trigger_notify_done(indio_dev->trig); return IRQ_HANDLED; --- linux-azure-5.8-5.8.0.orig/drivers/iio/light/rpr0521.c +++ linux-azure-5.8-5.8.0/drivers/iio/light/rpr0521.c @@ -194,6 +194,17 @@ bool pxs_need_dis; struct regmap *regmap; + + /* + * Ensure correct naturally aligned timestamp. + * Note that the read will put garbage data into + * the padding but this should not be a problem + */ + struct { + __le16 channels[3]; + u8 garbage; + s64 ts __aligned(8); + } scan; }; static IIO_CONST_ATTR(in_intensity_scale_available, RPR0521_ALS_SCALE_AVAIL); @@ -449,8 +460,6 @@ struct rpr0521_data *data = iio_priv(indio_dev); int err; - u8 buffer[16]; /* 3 16-bit channels + padding + ts */ - /* Use irq timestamp when reasonable. */ if (iio_trigger_using_own(indio_dev) && data->irq_timestamp) { pf->timestamp = data->irq_timestamp; @@ -461,11 +470,11 @@ pf->timestamp = iio_get_time_ns(indio_dev); err = regmap_bulk_read(data->regmap, RPR0521_REG_PXS_DATA, - &buffer, + data->scan.channels, (3 * 2) + 1); /* 3 * 16-bit + (discarded) int clear reg. */ if (!err) iio_push_to_buffers_with_timestamp(indio_dev, - buffer, pf->timestamp); + &data->scan, pf->timestamp); else dev_err(&data->client->dev, "Trigger consumer can't read from sensor.\n"); --- linux-azure-5.8-5.8.0.orig/drivers/iio/light/si1145.c +++ linux-azure-5.8-5.8.0/drivers/iio/light/si1145.c @@ -168,6 +168,7 @@ * @part_info: Part information * @trig: Pointer to iio trigger * @meas_rate: Value of MEAS_RATE register. Only set in HW in auto mode + * @buffer: Used to pack data read from sensor. */ struct si1145_data { struct i2c_client *client; @@ -179,6 +180,14 @@ bool autonomous; struct iio_trigger *trig; int meas_rate; + /* + * Ensure timestamp will be naturally aligned if present. + * Maximum buffer size (may be only partly used if not all + * channels are enabled): + * 6*2 bytes channels data + 4 bytes alignment + + * 8 bytes timestamp + */ + u8 buffer[24] __aligned(8); }; /** @@ -440,12 +449,6 @@ struct iio_poll_func *pf = private; struct iio_dev *indio_dev = pf->indio_dev; struct si1145_data *data = iio_priv(indio_dev); - /* - * Maximum buffer size: - * 6*2 bytes channels data + 4 bytes alignment + - * 8 bytes timestamp - */ - u8 buffer[24]; int i, j = 0; int ret; u8 irq_status = 0; @@ -478,7 +481,7 @@ ret = i2c_smbus_read_i2c_block_data_or_emulated( data->client, indio_dev->channels[i].address, - sizeof(u16) * run, &buffer[j]); + sizeof(u16) * run, &data->buffer[j]); if (ret < 0) goto done; j += run * sizeof(u16); @@ -493,7 +496,7 @@ goto done; } - iio_push_to_buffers_with_timestamp(indio_dev, buffer, + iio_push_to_buffers_with_timestamp(indio_dev, data->buffer, iio_get_time_ns(indio_dev)); done: --- linux-azure-5.8-5.8.0.orig/drivers/iio/light/st_uvis25.h +++ linux-azure-5.8-5.8.0/drivers/iio/light/st_uvis25.h @@ -27,6 +27,11 @@ struct iio_trigger *trig; bool enabled; int irq; + /* Ensure timestamp is naturally aligned */ + struct { + u8 chan; + s64 ts __aligned(8); + } scan; }; extern const struct dev_pm_ops st_uvis25_pm_ops; --- linux-azure-5.8-5.8.0.orig/drivers/iio/light/st_uvis25_core.c +++ linux-azure-5.8-5.8.0/drivers/iio/light/st_uvis25_core.c @@ -234,17 +234,19 @@ static irqreturn_t st_uvis25_buffer_handler_thread(int irq, void *p) { - u8 buffer[ALIGN(sizeof(u8), sizeof(s64)) + sizeof(s64)]; struct iio_poll_func *pf = p; struct iio_dev *iio_dev = pf->indio_dev; struct st_uvis25_hw *hw = iio_priv(iio_dev); + unsigned int val; int err; - err = regmap_read(hw->regmap, ST_UVIS25_REG_OUT_ADDR, (int *)buffer); + err = regmap_read(hw->regmap, ST_UVIS25_REG_OUT_ADDR, &val); if (err < 0) goto out; - iio_push_to_buffers_with_timestamp(iio_dev, buffer, + hw->scan.chan = val; + + iio_push_to_buffers_with_timestamp(iio_dev, &hw->scan, iio_get_time_ns(iio_dev)); out: --- linux-azure-5.8-5.8.0.orig/drivers/iio/magnetometer/ak8975.c +++ linux-azure-5.8-5.8.0/drivers/iio/magnetometer/ak8975.c @@ -365,6 +365,12 @@ struct iio_mount_matrix orientation; struct regulator *vdd; struct regulator *vid; + + /* Ensure natural alignment of timestamp */ + struct { + s16 channels[3]; + s64 ts __aligned(8); + } scan; }; /* Enable attached power regulator if any. */ @@ -787,7 +793,6 @@ const struct i2c_client *client = data->client; const struct ak_def *def = data->def; int ret; - s16 buff[8]; /* 3 x 16 bits axis values + 1 aligned 64 bits timestamp */ __le16 fval[3]; mutex_lock(&data->lock); @@ -810,12 +815,13 @@ mutex_unlock(&data->lock); /* Clamp to valid range. */ - buff[0] = clamp_t(s16, le16_to_cpu(fval[0]), -def->range, def->range); - buff[1] = clamp_t(s16, le16_to_cpu(fval[1]), -def->range, def->range); - buff[2] = clamp_t(s16, le16_to_cpu(fval[2]), -def->range, def->range); + data->scan.channels[0] = clamp_t(s16, le16_to_cpu(fval[0]), -def->range, def->range); + data->scan.channels[1] = clamp_t(s16, le16_to_cpu(fval[1]), -def->range, def->range); + data->scan.channels[2] = clamp_t(s16, le16_to_cpu(fval[2]), -def->range, def->range); - iio_push_to_buffers_with_timestamp(indio_dev, buff, + iio_push_to_buffers_with_timestamp(indio_dev, &data->scan, iio_get_time_ns(indio_dev)); + return; unlock: --- linux-azure-5.8-5.8.0.orig/drivers/iio/magnetometer/mag3110.c +++ linux-azure-5.8-5.8.0/drivers/iio/magnetometer/mag3110.c @@ -56,6 +56,12 @@ int sleep_val; struct regulator *vdd_reg; struct regulator *vddio_reg; + /* Ensure natural alignment of timestamp */ + struct { + __be16 channels[3]; + u8 temperature; + s64 ts __aligned(8); + } scan; }; static int mag3110_request(struct mag3110_data *data) @@ -387,10 +393,9 @@ struct iio_poll_func *pf = p; struct iio_dev *indio_dev = pf->indio_dev; struct mag3110_data *data = iio_priv(indio_dev); - u8 buffer[16]; /* 3 16-bit channels + 1 byte temp + padding + ts */ int ret; - ret = mag3110_read(data, (__be16 *) buffer); + ret = mag3110_read(data, data->scan.channels); if (ret < 0) goto done; @@ -399,10 +404,10 @@ MAG3110_DIE_TEMP); if (ret < 0) goto done; - buffer[6] = ret; + data->scan.temperature = ret; } - iio_push_to_buffers_with_timestamp(indio_dev, buffer, + iio_push_to_buffers_with_timestamp(indio_dev, &data->scan, iio_get_time_ns(indio_dev)); done: --- linux-azure-5.8-5.8.0.orig/drivers/iio/pressure/mpl3115.c +++ linux-azure-5.8-5.8.0/drivers/iio/pressure/mpl3115.c @@ -144,7 +144,14 @@ struct iio_poll_func *pf = p; struct iio_dev *indio_dev = pf->indio_dev; struct mpl3115_data *data = iio_priv(indio_dev); - u8 buffer[16]; /* 32-bit channel + 16-bit channel + padding + ts */ + /* + * 32-bit channel + 16-bit channel + padding + ts + * Note that it is possible for only one of the first 2 + * channels to be enabled. If that happens, the first element + * of the buffer may be either 16 or 32-bits. As such we cannot + * use a simple structure definition to express this data layout. + */ + u8 buffer[16] __aligned(8); int ret, pos = 0; mutex_lock(&data->lock); --- linux-azure-5.8-5.8.0.orig/drivers/iio/proximity/mb1232.c +++ linux-azure-5.8-5.8.0/drivers/iio/proximity/mb1232.c @@ -40,6 +40,11 @@ */ struct completion ranging; int irqnr; + /* Ensure correct alignment of data to push to IIO buffer */ + struct { + s16 distance; + s64 ts __aligned(8); + } scan; }; static irqreturn_t mb1232_handle_irq(int irq, void *dev_id) @@ -113,17 +118,13 @@ struct iio_poll_func *pf = p; struct iio_dev *indio_dev = pf->indio_dev; struct mb1232_data *data = iio_priv(indio_dev); - /* - * triggered buffer - * 16-bit channel + 48-bit padding + 64-bit timestamp - */ - s16 buffer[8] = { 0 }; - buffer[0] = mb1232_read_distance(data); - if (buffer[0] < 0) + data->scan.distance = mb1232_read_distance(data); + if (data->scan.distance < 0) goto err; - iio_push_to_buffers_with_timestamp(indio_dev, buffer, pf->timestamp); + iio_push_to_buffers_with_timestamp(indio_dev, &data->scan, + pf->timestamp); err: iio_trigger_notify_done(indio_dev->trig); --- linux-azure-5.8-5.8.0.orig/drivers/iio/temperature/ltc2983.c +++ linux-azure-5.8-5.8.0/drivers/iio/temperature/ltc2983.c @@ -1285,18 +1285,20 @@ ret = of_property_read_u32(child, "reg", &sensor.chan); if (ret) { dev_err(dev, "reg property must given for child nodes\n"); - return ret; + goto put_child; } /* check if we have a valid channel */ if (sensor.chan < LTC2983_MIN_CHANNELS_NR || sensor.chan > LTC2983_MAX_CHANNELS_NR) { + ret = -EINVAL; dev_err(dev, "chan:%d must be from 1 to 20\n", sensor.chan); - return -EINVAL; + goto put_child; } else if (channel_avail_mask & BIT(sensor.chan)) { + ret = -EINVAL; dev_err(dev, "chan:%d already in use\n", sensor.chan); - return -EINVAL; + goto put_child; } ret = of_property_read_u32(child, "adi,sensor-type", @@ -1304,7 +1306,7 @@ if (ret) { dev_err(dev, "adi,sensor-type property must given for child nodes\n"); - return ret; + goto put_child; } dev_dbg(dev, "Create new sensor, type %u, chann %u", @@ -1334,13 +1336,15 @@ st->sensors[chan] = ltc2983_adc_new(child, st, &sensor); } else { dev_err(dev, "Unknown sensor type %d\n", sensor.type); - return -EINVAL; + ret = -EINVAL; + goto put_child; } if (IS_ERR(st->sensors[chan])) { dev_err(dev, "Failed to create sensor %ld", PTR_ERR(st->sensors[chan])); - return PTR_ERR(st->sensors[chan]); + ret = PTR_ERR(st->sensors[chan]); + goto put_child; } /* set generic sensor parameters */ st->sensors[chan]->chan = sensor.chan; @@ -1351,6 +1355,9 @@ } return 0; +put_child: + of_node_put(child); + return ret; } static int ltc2983_setup(struct ltc2983_data *st, bool assign_iio) --- linux-azure-5.8-5.8.0.orig/drivers/iio/trigger/iio-trig-hrtimer.c +++ linux-azure-5.8-5.8.0/drivers/iio/trigger/iio-trig-hrtimer.c @@ -102,7 +102,7 @@ if (state) hrtimer_start(&trig_info->timer, trig_info->period, - HRTIMER_MODE_REL); + HRTIMER_MODE_REL_HARD); else hrtimer_cancel(&trig_info->timer); @@ -132,7 +132,7 @@ trig_info->swt.trigger->ops = &iio_hrtimer_trigger_ops; trig_info->swt.trigger->dev.groups = iio_hrtimer_attr_groups; - hrtimer_init(&trig_info->timer, CLOCK_MONOTONIC, HRTIMER_MODE_REL); + hrtimer_init(&trig_info->timer, CLOCK_MONOTONIC, HRTIMER_MODE_REL_HARD); trig_info->timer.function = iio_hrtimer_trig_handler; trig_info->sampling_frequency = HRTIMER_DEFAULT_SAMPLING_FREQUENCY; --- linux-azure-5.8-5.8.0.orig/drivers/infiniband/Kconfig +++ linux-azure-5.8-5.8.0/drivers/infiniband/Kconfig @@ -80,6 +80,9 @@ This allows the user to config the default GID type that the CM uses for each device, when initiaing new connections. +config INFINIBAND_VIRT_DMA + def_bool !HIGHMEM + if INFINIBAND_USER_ACCESS || !INFINIBAND_USER_ACCESS source "drivers/infiniband/hw/mthca/Kconfig" source "drivers/infiniband/hw/qib/Kconfig" @@ -87,6 +90,7 @@ source "drivers/infiniband/hw/efa/Kconfig" source "drivers/infiniband/hw/i40iw/Kconfig" source "drivers/infiniband/hw/mlx4/Kconfig" +source "drivers/infiniband/hw/vmbus-rdma/Kconfig" source "drivers/infiniband/hw/mlx5/Kconfig" source "drivers/infiniband/hw/ocrdma/Kconfig" source "drivers/infiniband/hw/vmw_pvrdma/Kconfig" --- linux-azure-5.8-5.8.0.orig/drivers/infiniband/core/addr.c +++ linux-azure-5.8-5.8.0/drivers/infiniband/core/addr.c @@ -647,13 +647,12 @@ req->callback = NULL; spin_lock_bh(&lock); + /* + * Although the work will normally have been canceled by the workqueue, + * it can still be requeued as long as it is on the req_list. + */ + cancel_delayed_work(&req->work); if (!list_empty(&req->list)) { - /* - * Although the work will normally have been canceled by the - * workqueue, it can still be requeued as long as it is on the - * req_list. - */ - cancel_delayed_work(&req->work); list_del_init(&req->list); kfree(req); } --- linux-azure-5.8-5.8.0.orig/drivers/infiniband/core/cm.c +++ linux-azure-5.8-5.8.0/drivers/infiniband/core/cm.c @@ -1522,6 +1522,7 @@ id.local_id); if (IS_ERR(cm_id_priv->timewait_info)) { ret = PTR_ERR(cm_id_priv->timewait_info); + cm_id_priv->timewait_info = NULL; goto out; } @@ -2109,6 +2110,7 @@ id.local_id); if (IS_ERR(cm_id_priv->timewait_info)) { ret = PTR_ERR(cm_id_priv->timewait_info); + cm_id_priv->timewait_info = NULL; goto destroy; } cm_id_priv->timewait_info->work.remote_id = cm_id_priv->id.remote_id; @@ -4355,7 +4357,7 @@ unsigned long flags; int ret; int count = 0; - u8 i; + unsigned int i; cm_dev = kzalloc(struct_size(cm_dev, port, ib_device->phys_port_cnt), GFP_KERNEL); @@ -4367,7 +4369,7 @@ cm_dev->going_down = 0; set_bit(IB_MGMT_METHOD_SEND, reg_req.method_mask); - for (i = 1; i <= ib_device->phys_port_cnt; i++) { + rdma_for_each_port (ib_device, i) { if (!rdma_cap_ib_cm(ib_device, i)) continue; @@ -4453,7 +4455,7 @@ .clr_port_cap_mask = IB_PORT_CM_SUP }; unsigned long flags; - int i; + unsigned int i; write_lock_irqsave(&cm.device_lock, flags); list_del(&cm_dev->list); @@ -4463,7 +4465,7 @@ cm_dev->going_down = 1; spin_unlock_irq(&cm.lock); - for (i = 1; i <= ib_device->phys_port_cnt; i++) { + rdma_for_each_port (ib_device, i) { if (!rdma_cap_ib_cm(ib_device, i)) continue; --- linux-azure-5.8-5.8.0.orig/drivers/infiniband/core/cma.c +++ linux-azure-5.8-5.8.0/drivers/infiniband/core/cma.c @@ -68,6 +68,9 @@ [RDMA_CM_EVENT_TIMEWAIT_EXIT] = "timewait exit", }; +static void cma_set_mgid(struct rdma_id_private *id_priv, struct sockaddr *addr, + union ib_gid *mgid); + const char *__attribute_const__ rdma_event_msg(enum rdma_cm_event_type event) { size_t index = event; @@ -346,12 +349,15 @@ struct cma_multicast { struct rdma_id_private *id_priv; union { - struct ib_sa_multicast *ib; - } multicast; + struct ib_sa_multicast *sa_mc; + struct { + struct work_struct work; + struct rdma_cm_event event; + } iboe_join; + }; struct list_head list; void *context; struct sockaddr_storage addr; - struct kref mcref; u8 join_state; }; @@ -363,18 +369,6 @@ struct rdma_cm_event event; }; -struct cma_ndev_work { - struct work_struct work; - struct rdma_id_private *id; - struct rdma_cm_event event; -}; - -struct iboe_mcast_work { - struct work_struct work; - struct rdma_id_private *id; - struct cma_multicast *mc; -}; - union cma_ip_addr { struct in6_addr ip6; struct { @@ -428,19 +422,6 @@ return ret; } -static enum rdma_cm_state cma_exch(struct rdma_id_private *id_priv, - enum rdma_cm_state exch) -{ - unsigned long flags; - enum rdma_cm_state old; - - spin_lock_irqsave(&id_priv->lock, flags); - old = id_priv->state; - id_priv->state = exch; - spin_unlock_irqrestore(&id_priv->lock, flags); - return old; -} - static inline u8 cma_get_ip_ver(const struct cma_hdr *hdr) { return hdr->ip_version >> 4; @@ -496,20 +477,16 @@ rdma_start_port(cma_dev->device)]; } -static inline void release_mc(struct kref *kref) -{ - struct cma_multicast *mc = container_of(kref, struct cma_multicast, mcref); - - kfree(mc->multicast.ib); - kfree(mc); -} - static void cma_release_dev(struct rdma_id_private *id_priv) { mutex_lock(&lock); list_del(&id_priv->list); cma_dev_put(id_priv->cma_dev); id_priv->cma_dev = NULL; + if (id_priv->id.route.addr.dev_addr.sgid_attr) { + rdma_put_gid_attr(id_priv->id.route.addr.dev_addr.sgid_attr); + id_priv->id.route.addr.dev_addr.sgid_attr = NULL; + } mutex_unlock(&lock); } @@ -1796,19 +1773,32 @@ mutex_unlock(&lock); } -static void cma_leave_roce_mc_group(struct rdma_id_private *id_priv, - struct cma_multicast *mc) +static void destroy_mc(struct rdma_id_private *id_priv, + struct cma_multicast *mc) { - struct rdma_dev_addr *dev_addr = &id_priv->id.route.addr.dev_addr; - struct net_device *ndev = NULL; + if (rdma_cap_ib_mcast(id_priv->id.device, id_priv->id.port_num)) + ib_sa_free_multicast(mc->sa_mc); - if (dev_addr->bound_dev_if) - ndev = dev_get_by_index(dev_addr->net, dev_addr->bound_dev_if); - if (ndev) { - cma_igmp_send(ndev, &mc->multicast.ib->rec.mgid, false); - dev_put(ndev); + if (rdma_protocol_roce(id_priv->id.device, id_priv->id.port_num)) { + struct rdma_dev_addr *dev_addr = + &id_priv->id.route.addr.dev_addr; + struct net_device *ndev = NULL; + + if (dev_addr->bound_dev_if) + ndev = dev_get_by_index(dev_addr->net, + dev_addr->bound_dev_if); + if (ndev) { + union ib_gid mgid; + + cma_set_mgid(id_priv, (struct sockaddr *)&mc->addr, + &mgid); + cma_igmp_send(ndev, &mgid, false); + dev_put(ndev); + } + + cancel_work_sync(&mc->iboe_join.work); } - kref_put(&mc->mcref, release_mc); + kfree(mc); } static void cma_leave_mc_groups(struct rdma_id_private *id_priv) @@ -1816,36 +1806,18 @@ struct cma_multicast *mc; while (!list_empty(&id_priv->mc_list)) { - mc = container_of(id_priv->mc_list.next, - struct cma_multicast, list); + mc = list_first_entry(&id_priv->mc_list, struct cma_multicast, + list); list_del(&mc->list); - if (rdma_cap_ib_mcast(id_priv->cma_dev->device, - id_priv->id.port_num)) { - ib_sa_free_multicast(mc->multicast.ib); - kfree(mc); - } else { - cma_leave_roce_mc_group(id_priv, mc); - } + destroy_mc(id_priv, mc); } } -void rdma_destroy_id(struct rdma_cm_id *id) +static void _destroy_id(struct rdma_id_private *id_priv, + enum rdma_cm_state state) { - struct rdma_id_private *id_priv; - enum rdma_cm_state state; - - id_priv = container_of(id, struct rdma_id_private, id); - trace_cm_id_destroy(id_priv); - state = cma_exch(id_priv, RDMA_CM_DESTROYING); cma_cancel_operation(id_priv, state); - /* - * Wait for any active callback to finish. New callbacks will find - * the id_priv state set to destroying and abort. - */ - mutex_lock(&id_priv->handler_mutex); - mutex_unlock(&id_priv->handler_mutex); - rdma_restrack_del(&id_priv->res); if (id_priv->cma_dev) { if (rdma_cap_ib_cm(id_priv->id.device, 1)) { @@ -1868,12 +1840,45 @@ kfree(id_priv->id.route.path_rec); - if (id_priv->id.route.addr.dev_addr.sgid_attr) - rdma_put_gid_attr(id_priv->id.route.addr.dev_addr.sgid_attr); - put_net(id_priv->id.route.addr.dev_addr.net); kfree(id_priv); } + +/* + * destroy an ID from within the handler_mutex. This ensures that no other + * handlers can start running concurrently. + */ +static void destroy_id_handler_unlock(struct rdma_id_private *id_priv) + __releases(&idprv->handler_mutex) +{ + enum rdma_cm_state state; + unsigned long flags; + + trace_cm_id_destroy(id_priv); + + /* + * Setting the state to destroyed under the handler mutex provides a + * fence against calling handler callbacks. If this is invoked due to + * the failure of a handler callback then it guarentees that no future + * handlers will be called. + */ + lockdep_assert_held(&id_priv->handler_mutex); + spin_lock_irqsave(&id_priv->lock, flags); + state = id_priv->state; + id_priv->state = RDMA_CM_DESTROYING; + spin_unlock_irqrestore(&id_priv->lock, flags); + mutex_unlock(&id_priv->handler_mutex); + _destroy_id(id_priv, state); +} + +void rdma_destroy_id(struct rdma_cm_id *id) +{ + struct rdma_id_private *id_priv = + container_of(id, struct rdma_id_private, id); + + mutex_lock(&id_priv->handler_mutex); + destroy_id_handler_unlock(id_priv); +} EXPORT_SYMBOL(rdma_destroy_id); static int cma_rep_recv(struct rdma_id_private *id_priv) @@ -1925,6 +1930,8 @@ { int ret; + lockdep_assert_held(&id_priv->handler_mutex); + trace_cm_event_handler(id_priv, event); ret = id_priv->id.event_handler(&id_priv->id, event); trace_cm_event_done(id_priv, event, ret); @@ -1936,7 +1943,7 @@ { struct rdma_id_private *id_priv = cm_id->context; struct rdma_cm_event event = {}; - int ret = 0; + int ret; mutex_lock(&id_priv->handler_mutex); if ((ib_event->event != IB_CM_TIMEWAIT_EXIT && @@ -2005,14 +2012,12 @@ if (ret) { /* Destroy the CM ID by returning a non-zero value. */ id_priv->cm_id.ib = NULL; - cma_exch(id_priv, RDMA_CM_DESTROYING); - mutex_unlock(&id_priv->handler_mutex); - rdma_destroy_id(&id_priv->id); + destroy_id_handler_unlock(id_priv); return ret; } out: mutex_unlock(&id_priv->handler_mutex); - return ret; + return 0; } static struct rdma_id_private * @@ -2174,7 +2179,7 @@ mutex_lock(&listen_id->handler_mutex); if (listen_id->state != RDMA_CM_LISTEN) { ret = -ECONNABORTED; - goto err1; + goto err_unlock; } offset = cma_user_data_offset(listen_id); @@ -2191,55 +2196,38 @@ } if (!conn_id) { ret = -ENOMEM; - goto err1; + goto err_unlock; } mutex_lock_nested(&conn_id->handler_mutex, SINGLE_DEPTH_NESTING); ret = cma_ib_acquire_dev(conn_id, listen_id, &req); - if (ret) - goto err2; + if (ret) { + destroy_id_handler_unlock(conn_id); + goto err_unlock; + } conn_id->cm_id.ib = cm_id; cm_id->context = conn_id; cm_id->cm_handler = cma_ib_handler; - /* - * Protect against the user destroying conn_id from another thread - * until we're done accessing it. - */ - cma_id_get(conn_id); ret = cma_cm_event_handler(conn_id, &event); - if (ret) - goto err3; - /* - * Acquire mutex to prevent user executing rdma_destroy_id() - * while we're accessing the cm_id. - */ - mutex_lock(&lock); + if (ret) { + /* Destroy the CM ID by returning a non-zero value. */ + conn_id->cm_id.ib = NULL; + mutex_unlock(&listen_id->handler_mutex); + destroy_id_handler_unlock(conn_id); + goto net_dev_put; + } + if (cma_comp(conn_id, RDMA_CM_CONNECT) && (conn_id->id.qp_type != IB_QPT_UD)) { trace_cm_send_mra(cm_id->context); ib_send_cm_mra(cm_id, CMA_CM_MRA_SETTING, NULL, 0); } - mutex_unlock(&lock); mutex_unlock(&conn_id->handler_mutex); - mutex_unlock(&listen_id->handler_mutex); - cma_id_put(conn_id); - if (net_dev) - dev_put(net_dev); - return 0; -err3: - cma_id_put(conn_id); - /* Destroy the CM ID by returning a non-zero value. */ - conn_id->cm_id.ib = NULL; -err2: - cma_exch(conn_id, RDMA_CM_DESTROYING); - mutex_unlock(&conn_id->handler_mutex); -err1: +err_unlock: mutex_unlock(&listen_id->handler_mutex); - if (conn_id) - rdma_destroy_id(&conn_id->id); net_dev_put: if (net_dev) @@ -2339,9 +2327,7 @@ if (ret) { /* Destroy the CM ID by returning a non-zero value. */ id_priv->cm_id.iw = NULL; - cma_exch(id_priv, RDMA_CM_DESTROYING); - mutex_unlock(&id_priv->handler_mutex); - rdma_destroy_id(&id_priv->id); + destroy_id_handler_unlock(id_priv); return ret; } @@ -2388,16 +2374,16 @@ ret = rdma_translate_ip(laddr, &conn_id->id.route.addr.dev_addr); if (ret) { - mutex_unlock(&conn_id->handler_mutex); - rdma_destroy_id(new_cm_id); - goto out; + mutex_unlock(&listen_id->handler_mutex); + destroy_id_handler_unlock(conn_id); + return ret; } ret = cma_iw_acquire_dev(conn_id, listen_id); if (ret) { - mutex_unlock(&conn_id->handler_mutex); - rdma_destroy_id(new_cm_id); - goto out; + mutex_unlock(&listen_id->handler_mutex); + destroy_id_handler_unlock(conn_id); + return ret; } conn_id->cm_id.iw = cm_id; @@ -2407,25 +2393,16 @@ memcpy(cma_src_addr(conn_id), laddr, rdma_addr_size(laddr)); memcpy(cma_dst_addr(conn_id), raddr, rdma_addr_size(raddr)); - /* - * Protect against the user destroying conn_id from another thread - * until we're done accessing it. - */ - cma_id_get(conn_id); ret = cma_cm_event_handler(conn_id, &event); if (ret) { /* User wants to destroy the CM ID */ conn_id->cm_id.iw = NULL; - cma_exch(conn_id, RDMA_CM_DESTROYING); - mutex_unlock(&conn_id->handler_mutex); mutex_unlock(&listen_id->handler_mutex); - cma_id_put(conn_id); - rdma_destroy_id(&conn_id->id); + destroy_id_handler_unlock(conn_id); return ret; } mutex_unlock(&conn_id->handler_mutex); - cma_id_put(conn_id); out: mutex_unlock(&listen_id->handler_mutex); @@ -2482,14 +2459,19 @@ { struct rdma_id_private *id_priv = id->context; + /* Listening IDs are always destroyed on removal */ + if (event->event == RDMA_CM_EVENT_DEVICE_REMOVAL) + return -1; + id->context = id_priv->id.context; id->event_handler = id_priv->id.event_handler; trace_cm_event_handler(id_priv, event); return id_priv->id.event_handler(id, event); } -static void cma_listen_on_dev(struct rdma_id_private *id_priv, - struct cma_device *cma_dev) +static int cma_listen_on_dev(struct rdma_id_private *id_priv, + struct cma_device *cma_dev, + struct rdma_id_private **to_destroy) { struct rdma_id_private *dev_id_priv; struct rdma_cm_id *id; @@ -2498,13 +2480,14 @@ lockdep_assert_held(&lock); + *to_destroy = NULL; if (cma_family(id_priv) == AF_IB && !rdma_cap_ib_cm(cma_dev->device, 1)) - return; + return 0; id = __rdma_create_id(net, cma_listen_handler, id_priv, id_priv->id.ps, id_priv->id.qp_type, id_priv->res.kern_name); if (IS_ERR(id)) - return; + return PTR_ERR(dev_id_priv); dev_id_priv = container_of(id, struct rdma_id_private, id); @@ -2513,7 +2496,6 @@ rdma_addr_size(cma_src_addr(id_priv))); _cma_attach_to_dev(dev_id_priv, cma_dev); - list_add_tail(&dev_id_priv->listen_list, &id_priv->listen_list); cma_id_get(id_priv); dev_id_priv->internal_id = 1; dev_id_priv->afonly = id_priv->afonly; @@ -2522,19 +2504,42 @@ ret = rdma_listen(id, id_priv->backlog); if (ret) - dev_warn(&cma_dev->device->dev, - "RDMA CMA: cma_listen_on_dev, error %d\n", ret); + goto err_listen; + list_add_tail(&dev_id_priv->listen_list, &id_priv->listen_list); + return 0; +err_listen: + /* Caller must destroy this after releasing lock */ + *to_destroy = dev_id_priv; + dev_warn(&cma_dev->device->dev, "RDMA CMA: %s, error %d\n", __func__, ret); + return ret; } -static void cma_listen_on_all(struct rdma_id_private *id_priv) +static int cma_listen_on_all(struct rdma_id_private *id_priv) { + struct rdma_id_private *to_destroy; struct cma_device *cma_dev; + int ret; mutex_lock(&lock); list_add_tail(&id_priv->list, &listen_any_list); - list_for_each_entry(cma_dev, &dev_list, list) - cma_listen_on_dev(id_priv, cma_dev); + list_for_each_entry(cma_dev, &dev_list, list) { + ret = cma_listen_on_dev(id_priv, cma_dev, &to_destroy); + if (ret) { + /* Prevent racing with cma_process_remove() */ + if (to_destroy) + list_del_init(&to_destroy->list); + goto err_listen; + } + } mutex_unlock(&lock); + return 0; + +err_listen: + list_del(&id_priv->list); + mutex_unlock(&lock); + if (to_destroy) + rdma_destroy_id(&to_destroy->id); + return ret; } void rdma_set_service_type(struct rdma_cm_id *id, int tos) @@ -2653,49 +2658,54 @@ return (id_priv->query_id < 0) ? id_priv->query_id : 0; } -static void cma_work_handler(struct work_struct *_work) +static void cma_iboe_join_work_handler(struct work_struct *work) { - struct cma_work *work = container_of(_work, struct cma_work, work); - struct rdma_id_private *id_priv = work->id; - int destroy = 0; + struct cma_multicast *mc = + container_of(work, struct cma_multicast, iboe_join.work); + struct rdma_cm_event *event = &mc->iboe_join.event; + struct rdma_id_private *id_priv = mc->id_priv; + int ret; mutex_lock(&id_priv->handler_mutex); - if (!cma_comp_exch(id_priv, work->old_state, work->new_state)) - goto out; + if (READ_ONCE(id_priv->state) == RDMA_CM_DESTROYING || + READ_ONCE(id_priv->state) == RDMA_CM_DEVICE_REMOVAL) + goto out_unlock; - if (cma_cm_event_handler(id_priv, &work->event)) { - cma_exch(id_priv, RDMA_CM_DESTROYING); - destroy = 1; - } -out: + ret = cma_cm_event_handler(id_priv, event); + WARN_ON(ret); + +out_unlock: mutex_unlock(&id_priv->handler_mutex); - cma_id_put(id_priv); - if (destroy) - rdma_destroy_id(&id_priv->id); - kfree(work); + if (event->event == RDMA_CM_EVENT_MULTICAST_JOIN) + rdma_destroy_ah_attr(&event->param.ud.ah_attr); } -static void cma_ndev_work_handler(struct work_struct *_work) +static void cma_work_handler(struct work_struct *_work) { - struct cma_ndev_work *work = container_of(_work, struct cma_ndev_work, work); + struct cma_work *work = container_of(_work, struct cma_work, work); struct rdma_id_private *id_priv = work->id; - int destroy = 0; mutex_lock(&id_priv->handler_mutex); - if (id_priv->state == RDMA_CM_DESTROYING || - id_priv->state == RDMA_CM_DEVICE_REMOVAL) - goto out; + if (READ_ONCE(id_priv->state) == RDMA_CM_DESTROYING || + READ_ONCE(id_priv->state) == RDMA_CM_DEVICE_REMOVAL) + goto out_unlock; + if (work->old_state != 0 || work->new_state != 0) { + if (!cma_comp_exch(id_priv, work->old_state, work->new_state)) + goto out_unlock; + } if (cma_cm_event_handler(id_priv, &work->event)) { - cma_exch(id_priv, RDMA_CM_DESTROYING); - destroy = 1; + cma_id_put(id_priv); + destroy_id_handler_unlock(id_priv); + goto out_free; } -out: +out_unlock: mutex_unlock(&id_priv->handler_mutex); cma_id_put(id_priv); - if (destroy) - rdma_destroy_id(&id_priv->id); +out_free: + if (work->event.event == RDMA_CM_EVENT_MULTICAST_JOIN) + rdma_destroy_ah_attr(&work->event.param.ud.ah_attr); kfree(work); } @@ -3171,9 +3181,7 @@ event.event = RDMA_CM_EVENT_ADDR_RESOLVED; if (cma_cm_event_handler(id_priv, &event)) { - cma_exch(id_priv, RDMA_CM_DESTROYING); - mutex_unlock(&id_priv->handler_mutex); - rdma_destroy_id(&id_priv->id); + destroy_id_handler_unlock(id_priv); return; } out: @@ -3684,8 +3692,11 @@ ret = -ENOSYS; goto err; } - } else - cma_listen_on_all(id_priv); + } else { + ret = cma_listen_on_all(id_priv); + if (ret) + goto err; + } return 0; err: @@ -3790,7 +3801,7 @@ struct rdma_cm_event event = {}; const struct ib_cm_sidr_rep_event_param *rep = &ib_event->param.sidr_rep_rcvd; - int ret = 0; + int ret; mutex_lock(&id_priv->handler_mutex); if (id_priv->state != RDMA_CM_CONNECT) @@ -3840,14 +3851,12 @@ if (ret) { /* Destroy the CM ID by returning a non-zero value. */ id_priv->cm_id.ib = NULL; - cma_exch(id_priv, RDMA_CM_DESTROYING); - mutex_unlock(&id_priv->handler_mutex); - rdma_destroy_id(&id_priv->id); + destroy_id_handler_unlock(id_priv); return ret; } out: mutex_unlock(&id_priv->handler_mutex); - return ret; + return 0; } static int cma_resolve_ib_udp(struct rdma_id_private *id_priv, @@ -4313,70 +4322,68 @@ } EXPORT_SYMBOL(rdma_disconnect); -static int cma_ib_mc_handler(int status, struct ib_sa_multicast *multicast) +static void cma_make_mc_event(int status, struct rdma_id_private *id_priv, + struct ib_sa_multicast *multicast, + struct rdma_cm_event *event, + struct cma_multicast *mc) { - struct rdma_id_private *id_priv; - struct cma_multicast *mc = multicast->context; - struct rdma_cm_event event = {}; - int ret = 0; - - id_priv = mc->id_priv; - mutex_lock(&id_priv->handler_mutex); - if (id_priv->state != RDMA_CM_ADDR_BOUND && - id_priv->state != RDMA_CM_ADDR_RESOLVED) - goto out; + struct rdma_dev_addr *dev_addr; + enum ib_gid_type gid_type; + struct net_device *ndev; if (!status) status = cma_set_qkey(id_priv, be32_to_cpu(multicast->rec.qkey)); else pr_debug_ratelimited("RDMA CM: MULTICAST_ERROR: failed to join multicast. status %d\n", status); - mutex_lock(&id_priv->qp_mutex); - if (!status && id_priv->id.qp) { - status = ib_attach_mcast(id_priv->id.qp, &multicast->rec.mgid, - be16_to_cpu(multicast->rec.mlid)); - if (status) - pr_debug_ratelimited("RDMA CM: MULTICAST_ERROR: failed to attach QP. status %d\n", - status); + + event->status = status; + event->param.ud.private_data = mc->context; + if (status) { + event->event = RDMA_CM_EVENT_MULTICAST_ERROR; + return; } - mutex_unlock(&id_priv->qp_mutex); - event.status = status; - event.param.ud.private_data = mc->context; - if (!status) { - struct rdma_dev_addr *dev_addr = - &id_priv->id.route.addr.dev_addr; - struct net_device *ndev = - dev_get_by_index(dev_addr->net, dev_addr->bound_dev_if); - enum ib_gid_type gid_type = - id_priv->cma_dev->default_gid_type[id_priv->id.port_num - - rdma_start_port(id_priv->cma_dev->device)]; - - event.event = RDMA_CM_EVENT_MULTICAST_JOIN; - ret = ib_init_ah_from_mcmember(id_priv->id.device, - id_priv->id.port_num, - &multicast->rec, - ndev, gid_type, - &event.param.ud.ah_attr); - if (ret) - event.event = RDMA_CM_EVENT_MULTICAST_ERROR; + dev_addr = &id_priv->id.route.addr.dev_addr; + ndev = dev_get_by_index(dev_addr->net, dev_addr->bound_dev_if); + gid_type = + id_priv->cma_dev + ->default_gid_type[id_priv->id.port_num - + rdma_start_port( + id_priv->cma_dev->device)]; + + event->event = RDMA_CM_EVENT_MULTICAST_JOIN; + if (ib_init_ah_from_mcmember(id_priv->id.device, id_priv->id.port_num, + &multicast->rec, ndev, gid_type, + &event->param.ud.ah_attr)) { + event->event = RDMA_CM_EVENT_MULTICAST_ERROR; + goto out; + } - event.param.ud.qp_num = 0xFFFFFF; - event.param.ud.qkey = be32_to_cpu(multicast->rec.qkey); - if (ndev) - dev_put(ndev); - } else - event.event = RDMA_CM_EVENT_MULTICAST_ERROR; + event->param.ud.qp_num = 0xFFFFFF; + event->param.ud.qkey = be32_to_cpu(multicast->rec.qkey); - ret = cma_cm_event_handler(id_priv, &event); +out: + if (ndev) + dev_put(ndev); +} + +static int cma_ib_mc_handler(int status, struct ib_sa_multicast *multicast) +{ + struct cma_multicast *mc = multicast->context; + struct rdma_id_private *id_priv = mc->id_priv; + struct rdma_cm_event event = {}; + int ret = 0; + + mutex_lock(&id_priv->handler_mutex); + if (id_priv->state != RDMA_CM_ADDR_BOUND && + id_priv->state != RDMA_CM_ADDR_RESOLVED) + goto out; + cma_make_mc_event(status, id_priv, multicast, &event, mc); + ret = cma_cm_event_handler(id_priv, &event); rdma_destroy_ah_attr(&event.param.ud.ah_attr); - if (ret) { - cma_exch(id_priv, RDMA_CM_DESTROYING); - mutex_unlock(&id_priv->handler_mutex); - rdma_destroy_id(&id_priv->id); - return 0; - } + WARN_ON(ret); out: mutex_unlock(&id_priv->handler_mutex); @@ -4461,23 +4468,10 @@ IB_SA_MCMEMBER_REC_MTU | IB_SA_MCMEMBER_REC_HOP_LIMIT; - mc->multicast.ib = ib_sa_join_multicast(&sa_client, id_priv->id.device, - id_priv->id.port_num, &rec, - comp_mask, GFP_KERNEL, - cma_ib_mc_handler, mc); - return PTR_ERR_OR_ZERO(mc->multicast.ib); -} - -static void iboe_mcast_work_handler(struct work_struct *work) -{ - struct iboe_mcast_work *mw = container_of(work, struct iboe_mcast_work, work); - struct cma_multicast *mc = mw->mc; - struct ib_sa_multicast *m = mc->multicast.ib; - - mc->multicast.ib->context = mc; - cma_ib_mc_handler(0, m); - kref_put(&mc->mcref, release_mc); - kfree(mw); + mc->sa_mc = ib_sa_join_multicast(&sa_client, id_priv->id.device, + id_priv->id.port_num, &rec, comp_mask, + GFP_KERNEL, cma_ib_mc_handler, mc); + return PTR_ERR_OR_ZERO(mc->sa_mc); } static void cma_iboe_set_mgid(struct sockaddr *addr, union ib_gid *mgid, @@ -4512,52 +4506,41 @@ static int cma_iboe_join_multicast(struct rdma_id_private *id_priv, struct cma_multicast *mc) { - struct iboe_mcast_work *work; struct rdma_dev_addr *dev_addr = &id_priv->id.route.addr.dev_addr; int err = 0; struct sockaddr *addr = (struct sockaddr *)&mc->addr; struct net_device *ndev = NULL; + struct ib_sa_multicast ib; enum ib_gid_type gid_type; bool send_only; send_only = mc->join_state == BIT(SENDONLY_FULLMEMBER_JOIN); - if (cma_zero_addr((struct sockaddr *)&mc->addr)) + if (cma_zero_addr(addr)) return -EINVAL; - work = kzalloc(sizeof *work, GFP_KERNEL); - if (!work) - return -ENOMEM; - - mc->multicast.ib = kzalloc(sizeof(struct ib_sa_multicast), GFP_KERNEL); - if (!mc->multicast.ib) { - err = -ENOMEM; - goto out1; - } - gid_type = id_priv->cma_dev->default_gid_type[id_priv->id.port_num - rdma_start_port(id_priv->cma_dev->device)]; - cma_iboe_set_mgid(addr, &mc->multicast.ib->rec.mgid, gid_type); + cma_iboe_set_mgid(addr, &ib.rec.mgid, gid_type); - mc->multicast.ib->rec.pkey = cpu_to_be16(0xffff); + ib.rec.pkey = cpu_to_be16(0xffff); if (id_priv->id.ps == RDMA_PS_UDP) - mc->multicast.ib->rec.qkey = cpu_to_be32(RDMA_UDP_QKEY); + ib.rec.qkey = cpu_to_be32(RDMA_UDP_QKEY); if (dev_addr->bound_dev_if) ndev = dev_get_by_index(dev_addr->net, dev_addr->bound_dev_if); - if (!ndev) { - err = -ENODEV; - goto out2; - } - mc->multicast.ib->rec.rate = iboe_get_rate(ndev); - mc->multicast.ib->rec.hop_limit = 1; - mc->multicast.ib->rec.mtu = iboe_get_mtu(ndev->mtu); + if (!ndev) + return -ENODEV; + + ib.rec.rate = iboe_get_rate(ndev); + ib.rec.hop_limit = 1; + ib.rec.mtu = iboe_get_mtu(ndev->mtu); if (addr->sa_family == AF_INET) { if (gid_type == IB_GID_TYPE_ROCE_UDP_ENCAP) { - mc->multicast.ib->rec.hop_limit = IPV6_DEFAULT_HOPLIMIT; + ib.rec.hop_limit = IPV6_DEFAULT_HOPLIMIT; if (!send_only) { - err = cma_igmp_send(ndev, &mc->multicast.ib->rec.mgid, + err = cma_igmp_send(ndev, &ib.rec.mgid, true); } } @@ -4566,26 +4549,15 @@ err = -ENOTSUPP; } dev_put(ndev); - if (err || !mc->multicast.ib->rec.mtu) { - if (!err) - err = -EINVAL; - goto out2; - } - rdma_ip2gid((struct sockaddr *)&id_priv->id.route.addr.src_addr, - &mc->multicast.ib->rec.port_gid); - work->id = id_priv; - work->mc = mc; - INIT_WORK(&work->work, iboe_mcast_work_handler); - kref_get(&mc->mcref); - queue_work(cma_wq, &work->work); + if (err || !ib.rec.mtu) + return err ?: -EINVAL; + rdma_ip2gid((struct sockaddr *)&id_priv->id.route.addr.src_addr, + &ib.rec.port_gid); + INIT_WORK(&mc->iboe_join.work, cma_iboe_join_work_handler); + cma_make_mc_event(0, id_priv, &ib, &mc->iboe_join.event, mc); + queue_work(cma_wq, &mc->iboe_join.work); return 0; - -out2: - kfree(mc->multicast.ib); -out1: - kfree(work); - return err; } int rdma_join_multicast(struct rdma_cm_id *id, struct sockaddr *addr, @@ -4595,6 +4567,10 @@ struct cma_multicast *mc; int ret; + /* Not supported for kernel QPs */ + if (WARN_ON(id->qp)) + return -EINVAL; + if (!id->device) return -EINVAL; @@ -4603,7 +4579,7 @@ !cma_comp(id_priv, RDMA_CM_ADDR_RESOLVED)) return -EINVAL; - mc = kmalloc(sizeof *mc, GFP_KERNEL); + mc = kzalloc(sizeof(*mc), GFP_KERNEL); if (!mc) return -ENOMEM; @@ -4613,7 +4589,6 @@ mc->join_state = join_state; if (rdma_protocol_roce(id->device, id->port_num)) { - kref_init(&mc->mcref); ret = cma_iboe_join_multicast(id_priv, mc); if (ret) goto out_err; @@ -4645,25 +4620,14 @@ id_priv = container_of(id, struct rdma_id_private, id); spin_lock_irq(&id_priv->lock); list_for_each_entry(mc, &id_priv->mc_list, list) { - if (!memcmp(&mc->addr, addr, rdma_addr_size(addr))) { - list_del(&mc->list); - spin_unlock_irq(&id_priv->lock); - - if (id->qp) - ib_detach_mcast(id->qp, - &mc->multicast.ib->rec.mgid, - be16_to_cpu(mc->multicast.ib->rec.mlid)); - - BUG_ON(id_priv->cma_dev->device != id->device); - - if (rdma_cap_ib_mcast(id->device, id->port_num)) { - ib_sa_free_multicast(mc->multicast.ib); - kfree(mc); - } else if (rdma_protocol_roce(id->device, id->port_num)) { - cma_leave_roce_mc_group(id_priv, mc); - } - return; - } + if (memcmp(&mc->addr, addr, rdma_addr_size(addr)) != 0) + continue; + list_del(&mc->list); + spin_unlock_irq(&id_priv->lock); + + WARN_ON(id_priv->cma_dev->device != id->device); + destroy_mc(id_priv, mc); + return; } spin_unlock_irq(&id_priv->lock); } @@ -4672,7 +4636,7 @@ static int cma_netdev_change(struct net_device *ndev, struct rdma_id_private *id_priv) { struct rdma_dev_addr *dev_addr; - struct cma_ndev_work *work; + struct cma_work *work; dev_addr = &id_priv->id.route.addr.dev_addr; @@ -4685,7 +4649,7 @@ if (!work) return -ENOMEM; - INIT_WORK(&work->work, cma_ndev_work_handler); + INIT_WORK(&work->work, cma_work_handler); work->id = id_priv; work->event.event = RDMA_CM_EVENT_ADDR_CHANGE; cma_id_get(id_priv); @@ -4726,15 +4690,78 @@ .notifier_call = cma_netdev_callback }; +static void cma_send_device_removal_put(struct rdma_id_private *id_priv) +{ + struct rdma_cm_event event = { .event = RDMA_CM_EVENT_DEVICE_REMOVAL }; + enum rdma_cm_state state; + unsigned long flags; + + mutex_lock(&id_priv->handler_mutex); + /* Record that we want to remove the device */ + spin_lock_irqsave(&id_priv->lock, flags); + state = id_priv->state; + if (state == RDMA_CM_DESTROYING || state == RDMA_CM_DEVICE_REMOVAL) { + spin_unlock_irqrestore(&id_priv->lock, flags); + mutex_unlock(&id_priv->handler_mutex); + cma_id_put(id_priv); + return; + } + id_priv->state = RDMA_CM_DEVICE_REMOVAL; + spin_unlock_irqrestore(&id_priv->lock, flags); + + if (cma_cm_event_handler(id_priv, &event)) { + /* + * At this point the ULP promises it won't call + * rdma_destroy_id() concurrently + */ + cma_id_put(id_priv); + mutex_unlock(&id_priv->handler_mutex); + trace_cm_id_destroy(id_priv); + _destroy_id(id_priv, state); + return; + } + mutex_unlock(&id_priv->handler_mutex); + + /* + * If this races with destroy then the thread that first assigns state + * to a destroying does the cancel. + */ + cma_cancel_operation(id_priv, state); + cma_id_put(id_priv); +} + +static void cma_process_remove(struct cma_device *cma_dev) +{ + mutex_lock(&lock); + while (!list_empty(&cma_dev->id_list)) { + struct rdma_id_private *id_priv = list_first_entry( + &cma_dev->id_list, struct rdma_id_private, list); + + list_del(&id_priv->listen_list); + list_del_init(&id_priv->list); + cma_id_get(id_priv); + mutex_unlock(&lock); + + cma_send_device_removal_put(id_priv); + + mutex_lock(&lock); + } + mutex_unlock(&lock); + + cma_dev_put(cma_dev); + wait_for_completion(&cma_dev->comp); +} + static int cma_add_one(struct ib_device *device) { + struct rdma_id_private *to_destroy; struct cma_device *cma_dev; struct rdma_id_private *id_priv; unsigned int i; unsigned long supported_gids = 0; int ret; - cma_dev = kmalloc(sizeof *cma_dev, GFP_KERNEL); + cma_dev = kmalloc(sizeof(*cma_dev), GFP_KERNEL); if (!cma_dev) return -ENOMEM; @@ -4774,13 +4801,23 @@ mutex_lock(&lock); list_add_tail(&cma_dev->list, &dev_list); - list_for_each_entry(id_priv, &listen_any_list, list) - cma_listen_on_dev(id_priv, cma_dev); + list_for_each_entry(id_priv, &listen_any_list, list) { + ret = cma_listen_on_dev(id_priv, cma_dev, &to_destroy); + if (ret) + goto free_listen; + } mutex_unlock(&lock); trace_cm_add_one(device); return 0; +free_listen: + list_del(&cma_dev->list); + mutex_unlock(&lock); + + /* cma_process_remove() will delete to_destroy */ + cma_process_remove(cma_dev); + kfree(cma_dev->default_roce_tos); free_gid_type: kfree(cma_dev->default_gid_type); @@ -4789,59 +4826,6 @@ return ret; } -static int cma_remove_id_dev(struct rdma_id_private *id_priv) -{ - struct rdma_cm_event event = {}; - enum rdma_cm_state state; - int ret = 0; - - /* Record that we want to remove the device */ - state = cma_exch(id_priv, RDMA_CM_DEVICE_REMOVAL); - if (state == RDMA_CM_DESTROYING) - return 0; - - cma_cancel_operation(id_priv, state); - mutex_lock(&id_priv->handler_mutex); - - /* Check for destruction from another callback. */ - if (!cma_comp(id_priv, RDMA_CM_DEVICE_REMOVAL)) - goto out; - - event.event = RDMA_CM_EVENT_DEVICE_REMOVAL; - ret = cma_cm_event_handler(id_priv, &event); -out: - mutex_unlock(&id_priv->handler_mutex); - return ret; -} - -static void cma_process_remove(struct cma_device *cma_dev) -{ - struct rdma_id_private *id_priv; - int ret; - - mutex_lock(&lock); - while (!list_empty(&cma_dev->id_list)) { - id_priv = list_entry(cma_dev->id_list.next, - struct rdma_id_private, list); - - list_del(&id_priv->listen_list); - list_del_init(&id_priv->list); - cma_id_get(id_priv); - mutex_unlock(&lock); - - ret = id_priv->internal_id ? 1 : cma_remove_id_dev(id_priv); - cma_id_put(id_priv); - if (ret) - rdma_destroy_id(&id_priv->id); - - mutex_lock(&lock); - } - mutex_unlock(&lock); - - cma_dev_put(cma_dev); - wait_for_completion(&cma_dev->comp); -} - static void cma_remove_one(struct ib_device *device, void *client_data) { struct cma_device *cma_dev = client_data; --- linux-azure-5.8-5.8.0.orig/drivers/infiniband/core/counters.c +++ linux-azure-5.8-5.8.0/drivers/infiniband/core/counters.c @@ -288,7 +288,7 @@ struct rdma_counter *counter; int ret; - if (!qp->res.valid) + if (!qp->res.valid || rdma_is_kernel_res(&qp->res)) return 0; if (!rdma_is_port_valid(dev, port)) @@ -483,7 +483,7 @@ goto err; } - if (counter->res.task != qp->res.task) { + if (rdma_is_kernel_res(&counter->res) != rdma_is_kernel_res(&qp->res)) { ret = -EINVAL; goto err_task; } --- linux-azure-5.8-5.8.0.orig/drivers/infiniband/core/cq.c +++ linux-azure-5.8-5.8.0/drivers/infiniband/core/cq.c @@ -197,24 +197,22 @@ } /** - * __ib_alloc_cq_user - allocate a completion queue + * __ib_alloc_cq allocate a completion queue * @dev: device to allocate the CQ for * @private: driver private data, accessible from cq->cq_context * @nr_cqe: number of CQEs to allocate * @comp_vector: HCA completion vectors for this CQ * @poll_ctx: context to poll the CQ from. * @caller: module owner name. - * @udata: Valid user data or NULL for kernel object * * This is the proper interface to allocate a CQ for in-kernel users. A * CQ allocated with this interface will automatically be polled from the * specified context. The ULP must use wr->wr_cqe instead of wr->wr_id * to use this CQ abstraction. */ -struct ib_cq *__ib_alloc_cq_user(struct ib_device *dev, void *private, - int nr_cqe, int comp_vector, - enum ib_poll_context poll_ctx, - const char *caller, struct ib_udata *udata) +struct ib_cq *__ib_alloc_cq(struct ib_device *dev, void *private, int nr_cqe, + int comp_vector, enum ib_poll_context poll_ctx, + const char *caller) { struct ib_cq_init_attr cq_attr = { .cqe = nr_cqe, @@ -277,7 +275,7 @@ out_destroy_cq: rdma_dim_destroy(cq); rdma_restrack_del(&cq->res); - cq->device->ops.destroy_cq(cq, udata); + cq->device->ops.destroy_cq(cq, NULL); out_free_wc: kfree(cq->wc); out_free_cq: @@ -285,7 +283,7 @@ trace_cq_alloc_error(nr_cqe, comp_vector, poll_ctx, ret); return ERR_PTR(ret); } -EXPORT_SYMBOL(__ib_alloc_cq_user); +EXPORT_SYMBOL(__ib_alloc_cq); /** * __ib_alloc_cq_any - allocate a completion queue @@ -310,18 +308,19 @@ atomic_inc_return(&counter) % min_t(int, dev->num_comp_vectors, num_online_cpus()); - return __ib_alloc_cq_user(dev, private, nr_cqe, comp_vector, poll_ctx, - caller, NULL); + return __ib_alloc_cq(dev, private, nr_cqe, comp_vector, poll_ctx, + caller); } EXPORT_SYMBOL(__ib_alloc_cq_any); /** - * ib_free_cq_user - free a completion queue + * ib_free_cq - free a completion queue * @cq: completion queue to free. - * @udata: User data or NULL for kernel object */ -void ib_free_cq_user(struct ib_cq *cq, struct ib_udata *udata) +void ib_free_cq(struct ib_cq *cq) { + int ret; + if (WARN_ON_ONCE(atomic_read(&cq->usecnt))) return; if (WARN_ON_ONCE(cq->cqe_used)) @@ -343,12 +342,13 @@ rdma_dim_destroy(cq); trace_cq_free(cq); + ret = cq->device->ops.destroy_cq(cq, NULL); + WARN_ONCE(ret, "Destroy of kernel CQ shouldn't fail"); rdma_restrack_del(&cq->res); - cq->device->ops.destroy_cq(cq, udata); kfree(cq->wc); kfree(cq); } -EXPORT_SYMBOL(ib_free_cq_user); +EXPORT_SYMBOL(ib_free_cq); void ib_cq_pool_init(struct ib_device *dev) { @@ -379,7 +379,7 @@ { LIST_HEAD(tmp_list); unsigned int nr_cqs, i; - struct ib_cq *cq; + struct ib_cq *cq, *n; int ret; if (poll_ctx > IB_POLL_LAST_POOL_TYPE) { @@ -412,7 +412,7 @@ return 0; out_free_cqs: - list_for_each_entry(cq, &tmp_list, pool_entry) { + list_for_each_entry_safe(cq, n, &tmp_list, pool_entry) { cq->shared = false; ib_free_cq(cq); } --- linux-azure-5.8-5.8.0.orig/drivers/infiniband/core/device.c +++ linux-azure-5.8-5.8.0/drivers/infiniband/core/device.c @@ -1282,6 +1282,8 @@ remove_client_context(device, cid); } + ib_cq_pool_destroy(device); + /* Pairs with refcount_set in enable_device */ ib_device_put(device); wait_for_completion(&device->unreg_completion); @@ -1325,6 +1327,8 @@ goto out; } + ib_cq_pool_init(device); + down_read(&clients_rwsem); xa_for_each_marked (&clients, index, client, CLIENT_REGISTERED) { ret = add_client_context(device, client); @@ -1339,6 +1343,10 @@ return ret; } +static void prevent_dealloc_device(struct ib_device *ib_dev) +{ +} + /** * ib_register_device - Register an IB device with IB core * @device: Device to register @@ -1393,11 +1401,7 @@ goto dev_cleanup; } - ib_cq_pool_init(device); ret = enable_device_and_get(device); - dev_set_uevent_suppress(&device->dev, false); - /* Mark for userspace that device is ready */ - kobject_uevent(&device->dev.kobj, KOBJ_ADD); if (ret) { void (*dealloc_fn)(struct ib_device *); @@ -1409,16 +1413,20 @@ * possibility for a parallel unregistration along with this * error flow. Since we have a refcount here we know any * parallel flow is stopped in disable_device and will see the - * NULL pointers, causing the responsibility to + * special dealloc_driver pointer, causing the responsibility to * ib_dealloc_device() to revert back to this thread. */ dealloc_fn = device->ops.dealloc_driver; - device->ops.dealloc_driver = NULL; + device->ops.dealloc_driver = prevent_dealloc_device; ib_device_put(device); __ib_unregister_device(device); device->ops.dealloc_driver = dealloc_fn; + dev_set_uevent_suppress(&device->dev, false); return ret; } + dev_set_uevent_suppress(&device->dev, false); + /* Mark for userspace that device is ready */ + kobject_uevent(&device->dev.kobj, KOBJ_ADD); ib_device_put(device); return 0; @@ -1448,7 +1456,6 @@ goto out; disable_device(ib_dev); - ib_cq_pool_destroy(ib_dev); /* Expedite removing unregistered pointers from the hash table */ free_netdevs(ib_dev); @@ -1462,7 +1469,8 @@ * Drivers using the new flow may not call ib_dealloc_device except * in error unwind prior to registration success. */ - if (ib_dev->ops.dealloc_driver) { + if (ib_dev->ops.dealloc_driver && + ib_dev->ops.dealloc_driver != prevent_dealloc_device) { WARN_ON(kref_read(&ib_dev->dev.kobj.kref) <= 1); ib_dealloc_device(ib_dev); } --- linux-azure-5.8-5.8.0.orig/drivers/infiniband/core/nldev.c +++ linux-azure-5.8-5.8.0/drivers/infiniband/core/nldev.c @@ -738,9 +738,6 @@ xa_lock(&rt->xa); xa_for_each(&rt->xa, id, res) { qp = container_of(res, struct ib_qp, res); - if (qp->qp_type == IB_QPT_RAW_PACKET && !capable(CAP_NET_RAW)) - continue; - if (!qp->counter || (qp->counter->id != counter->id)) continue; --- linux-azure-5.8-5.8.0.orig/drivers/infiniband/core/rdma_core.c +++ linux-azure-5.8-5.8.0/drivers/infiniband/core/rdma_core.c @@ -130,17 +130,6 @@ lockdep_assert_held(&ufile->hw_destroy_rwsem); assert_uverbs_usecnt(uobj, UVERBS_LOOKUP_WRITE); - if (reason == RDMA_REMOVE_ABORT_HWOBJ) { - reason = RDMA_REMOVE_ABORT; - ret = uobj->uapi_object->type_class->destroy_hw(uobj, reason, - attrs); - /* - * Drivers are not permitted to ignore RDMA_REMOVE_ABORT, see - * ib_is_destroy_retryable, cleanup_retryable == false here. - */ - WARN_ON(ret); - } - if (reason == RDMA_REMOVE_ABORT) { WARN_ON(!list_empty(&uobj->list)); WARN_ON(!uobj->context); @@ -674,11 +663,22 @@ bool hw_obj_valid) { struct ib_uverbs_file *ufile = uobj->ufile; + int ret; + + if (hw_obj_valid) { + ret = uobj->uapi_object->type_class->destroy_hw( + uobj, RDMA_REMOVE_ABORT, attrs); + /* + * If the driver couldn't destroy the object then go ahead and + * commit it. Leaking objects that can't be destroyed is only + * done during FD close after the driver has a few more tries to + * destroy it. + */ + if (WARN_ON(ret)) + return rdma_alloc_commit_uobject(uobj, attrs); + } - uverbs_destroy_uobject(uobj, - hw_obj_valid ? RDMA_REMOVE_ABORT_HWOBJ : - RDMA_REMOVE_ABORT, - attrs); + uverbs_destroy_uobject(uobj, RDMA_REMOVE_ABORT, attrs); /* Matches the down_read in rdma_alloc_begin_uobject */ up_read(&ufile->hw_destroy_rwsem); --- linux-azure-5.8-5.8.0.orig/drivers/infiniband/core/restrack.c +++ linux-azure-5.8-5.8.0/drivers/infiniband/core/restrack.c @@ -231,6 +231,7 @@ } else { ret = xa_alloc_cyclic(&rt->xa, &res->id, res, xa_limit_32b, &rt->next_id, GFP_KERNEL); + ret = (ret < 0) ? ret : 0; } if (!ret) --- linux-azure-5.8-5.8.0.orig/drivers/infiniband/core/ucma.c +++ linux-azure-5.8-5.8.0/drivers/infiniband/core/ucma.c @@ -586,6 +586,7 @@ list_move_tail(&uevent->list, &list); } list_del(&ctx->list); + events_reported = ctx->events_reported; mutex_unlock(&ctx->file->mut); list_for_each_entry_safe(uevent, tmp, &list, list) { @@ -595,7 +596,6 @@ kfree(uevent); } - events_reported = ctx->events_reported; mutex_destroy(&ctx->mutex); kfree(ctx); return events_reported; @@ -1512,7 +1512,9 @@ return 0; err3: + mutex_lock(&ctx->mutex); rdma_leave_multicast(ctx->cm_id, (struct sockaddr *) &mc->addr); + mutex_unlock(&ctx->mutex); ucma_cleanup_mc_events(mc); err2: xa_erase(&multicast_table, mc->id); @@ -1678,7 +1680,9 @@ cur_file = ctx->file; if (cur_file == new_file) { + mutex_lock(&cur_file->mut); resp.events_reported = ctx->events_reported; + mutex_unlock(&cur_file->mut); goto response; } --- linux-azure-5.8-5.8.0.orig/drivers/infiniband/core/umem.c +++ linux-azure-5.8-5.8.0/drivers/infiniband/core/umem.c @@ -151,13 +151,24 @@ dma_addr_t mask; int i; + /* rdma_for_each_block() has a bug if the page size is smaller than the + * page size used to build the umem. For now prevent smaller page sizes + * from being returned. + */ + pgsz_bitmap &= GENMASK(BITS_PER_LONG - 1, PAGE_SHIFT); + /* At minimum, drivers must support PAGE_SIZE or smaller */ if (WARN_ON(!(pgsz_bitmap & GENMASK(PAGE_SHIFT, 0)))) return 0; va = virt; - /* max page size not to exceed MR length */ - mask = roundup_pow_of_two(umem->length); + /* The best result is the smallest page size that results in the minimum + * number of required pages. Compute the largest page size that could + * work based on VA address bits that don't change. + */ + mask = pgsz_bitmap & + GENMASK(BITS_PER_LONG - 1, + bits_per((umem->length - 1 + virt) ^ virt)); /* offset into first SGL */ pgoff = umem->address & ~PAGE_MASK; --- linux-azure-5.8-5.8.0.orig/drivers/infiniband/core/user_mad.c +++ linux-azure-5.8-5.8.0/drivers/infiniband/core/user_mad.c @@ -379,6 +379,11 @@ mutex_lock(&file->mutex); + if (file->agents_dead) { + mutex_unlock(&file->mutex); + return -EIO; + } + while (list_empty(&file->recv_list)) { mutex_unlock(&file->mutex); @@ -392,6 +397,11 @@ mutex_lock(&file->mutex); } + if (file->agents_dead) { + mutex_unlock(&file->mutex); + return -EIO; + } + packet = list_entry(file->recv_list.next, struct ib_umad_packet, list); list_del(&packet->list); @@ -524,7 +534,7 @@ agent = __get_agent(file, packet->mad.hdr.id); if (!agent) { - ret = -EINVAL; + ret = -EIO; goto err_up; } @@ -653,10 +663,14 @@ /* we will always be able to post a MAD send */ __poll_t mask = EPOLLOUT | EPOLLWRNORM; + mutex_lock(&file->mutex); poll_wait(filp, &file->recv_wait, wait); if (!list_empty(&file->recv_list)) mask |= EPOLLIN | EPOLLRDNORM; + if (file->agents_dead) + mask = EPOLLERR; + mutex_unlock(&file->mutex); return mask; } @@ -1336,6 +1350,7 @@ list_for_each_entry(file, &port->file_list, port_list) { mutex_lock(&file->mutex); file->agents_dead = 1; + wake_up_interruptible(&file->recv_wait); mutex_unlock(&file->mutex); for (id = 0; id < IB_UMAD_MAX_AGENTS; ++id) --- linux-azure-5.8-5.8.0.orig/drivers/infiniband/core/uverbs_cmd.c +++ linux-azure-5.8-5.8.0/drivers/infiniband/core/uverbs_cmd.c @@ -770,6 +770,7 @@ mr->uobject = uobj; atomic_inc(&pd->usecnt); mr->res.type = RDMA_RESTRACK_MR; + mr->iova = cmd.hca_va; rdma_restrack_uadd(&mr->res); uobj->object = mr; @@ -861,6 +862,9 @@ atomic_dec(&old_pd->usecnt); } + if (cmd.flags & IB_MR_REREG_TRANS) + mr->iova = cmd.hca_va; + memset(&resp, 0, sizeof(resp)); resp.lkey = mr->lkey; resp.rkey = mr->rkey; --- linux-azure-5.8-5.8.0.orig/drivers/infiniband/core/verbs.c +++ linux-azure-5.8-5.8.0/drivers/infiniband/core/verbs.c @@ -1687,8 +1687,10 @@ slave = rdma_lag_get_ah_roce_slave(qp->device, &attr->ah_attr, GFP_KERNEL); - if (IS_ERR(slave)) + if (IS_ERR(slave)) { + ret = PTR_ERR(slave); goto out_av; + } attr->xmit_slave = slave; } } @@ -1712,7 +1714,7 @@ if (!(rdma_protocol_ib(qp->device, attr->alt_ah_attr.port_num) && rdma_protocol_ib(qp->device, port))) { - ret = EINVAL; + ret = -EINVAL; goto out; } } @@ -1803,7 +1805,7 @@ dev_put(netdev); - if (!rc) { + if (!rc && lksettings.base.speed != (u32)SPEED_UNKNOWN) { netdev_speed = lksettings.base.speed; } else { netdev_speed = SPEED_1000; @@ -2016,16 +2018,21 @@ int ib_destroy_cq_user(struct ib_cq *cq, struct ib_udata *udata) { + int ret; + if (WARN_ON_ONCE(cq->shared)) return -EOPNOTSUPP; if (atomic_read(&cq->usecnt)) return -EBUSY; + ret = cq->device->ops.destroy_cq(cq, udata); + if (ret) + return ret; + rdma_restrack_del(&cq->res); - cq->device->ops.destroy_cq(cq, udata); kfree(cq); - return 0; + return ret; } EXPORT_SYMBOL(ib_destroy_cq_user); --- linux-azure-5.8-5.8.0.orig/drivers/infiniband/hw/Makefile +++ linux-azure-5.8-5.8.0/drivers/infiniband/hw/Makefile @@ -5,6 +5,7 @@ obj-$(CONFIG_INFINIBAND_EFA) += efa/ obj-$(CONFIG_INFINIBAND_I40IW) += i40iw/ obj-$(CONFIG_MLX4_INFINIBAND) += mlx4/ +obj-$(CONFIG_HYPERV_INFINIBAND_ND) += vmbus-rdma/ obj-$(CONFIG_MLX5_INFINIBAND) += mlx5/ obj-$(CONFIG_INFINIBAND_OCRDMA) += ocrdma/ obj-$(CONFIG_INFINIBAND_VMWARE_PVRDMA) += vmw_pvrdma/ --- linux-azure-5.8-5.8.0.orig/drivers/infiniband/hw/bnxt_re/ib_verbs.c +++ linux-azure-5.8-5.8.0/drivers/infiniband/hw/bnxt_re/ib_verbs.c @@ -752,12 +752,6 @@ gsi_sqp = rdev->gsi_ctx.gsi_sqp; gsi_sah = rdev->gsi_ctx.gsi_sah; - /* remove from active qp list */ - mutex_lock(&rdev->qp_lock); - list_del(&gsi_sqp->list); - mutex_unlock(&rdev->qp_lock); - atomic_dec(&rdev->qp_count); - ibdev_dbg(&rdev->ibdev, "Destroy the shadow AH\n"); bnxt_qplib_destroy_ah(&rdev->qplib_res, &gsi_sah->qplib_ah, @@ -772,6 +766,12 @@ } bnxt_qplib_free_qp_res(&rdev->qplib_res, &gsi_sqp->qplib_qp); + /* remove from active qp list */ + mutex_lock(&rdev->qp_lock); + list_del(&gsi_sqp->list); + mutex_unlock(&rdev->qp_lock); + atomic_dec(&rdev->qp_count); + kfree(rdev->gsi_ctx.sqp_tbl); kfree(gsi_sah); kfree(gsi_sqp); @@ -792,11 +792,6 @@ unsigned int flags; int rc; - mutex_lock(&rdev->qp_lock); - list_del(&qp->list); - mutex_unlock(&rdev->qp_lock); - atomic_dec(&rdev->qp_count); - bnxt_qplib_flush_cqn_wq(&qp->qplib_qp); rc = bnxt_qplib_destroy_qp(&rdev->qplib_res, &qp->qplib_qp); @@ -819,6 +814,11 @@ goto sh_fail; } + mutex_lock(&rdev->qp_lock); + list_del(&qp->list); + mutex_unlock(&rdev->qp_lock); + atomic_dec(&rdev->qp_count); + ib_umem_release(qp->rumem); ib_umem_release(qp->sumem); @@ -1995,6 +1995,7 @@ goto out; } qp_attr->qp_state = __to_ib_qp_state(qplib_qp->state); + qp_attr->cur_qp_state = __to_ib_qp_state(qplib_qp->cur_qp_state); qp_attr->en_sqd_async_notify = qplib_qp->en_sqd_async_notify ? 1 : 0; qp_attr->qp_access_flags = __to_ib_access_flags(qplib_qp->access); qp_attr->pkey_index = qplib_qp->pkey_index; @@ -2714,7 +2715,7 @@ } /* Completion Queues */ -void bnxt_re_destroy_cq(struct ib_cq *ib_cq, struct ib_udata *udata) +int bnxt_re_destroy_cq(struct ib_cq *ib_cq, struct ib_udata *udata) { struct bnxt_re_cq *cq; struct bnxt_qplib_nq *nq; @@ -2730,6 +2731,7 @@ atomic_dec(&rdev->cq_count); nq->budget--; kfree(cq->cql); + return 0; } int bnxt_re_create_cq(struct ib_cq *ibcq, const struct ib_cq_init_attr *attr, @@ -3178,6 +3180,19 @@ wc->wc_flags |= IB_WC_GRH; } +static bool bnxt_re_check_if_vlan_valid(struct bnxt_re_dev *rdev, + u16 vlan_id) +{ + /* + * Check if the vlan is configured in the host. If not configured, it + * can be a transparent VLAN. So dont report the vlan id. + */ + if (!__vlan_find_dev_deep_rcu(rdev->netdev, + htons(ETH_P_8021Q), vlan_id)) + return false; + return true; +} + static bool bnxt_re_is_vlan_pkt(struct bnxt_qplib_cqe *orig_cqe, u16 *vid, u8 *sl) { @@ -3246,9 +3261,11 @@ wc->src_qp = orig_cqe->src_qp; memcpy(wc->smac, orig_cqe->smac, ETH_ALEN); if (bnxt_re_is_vlan_pkt(orig_cqe, &vlan_id, &sl)) { - wc->vlan_id = vlan_id; - wc->sl = sl; - wc->wc_flags |= IB_WC_WITH_VLAN; + if (bnxt_re_check_if_vlan_valid(rdev, vlan_id)) { + wc->vlan_id = vlan_id; + wc->sl = sl; + wc->wc_flags |= IB_WC_WITH_VLAN; + } } wc->port_num = 1; wc->vendor_err = orig_cqe->status; --- linux-azure-5.8-5.8.0.orig/drivers/infiniband/hw/bnxt_re/ib_verbs.h +++ linux-azure-5.8-5.8.0/drivers/infiniband/hw/bnxt_re/ib_verbs.h @@ -193,7 +193,7 @@ const struct ib_recv_wr **bad_recv_wr); int bnxt_re_create_cq(struct ib_cq *ibcq, const struct ib_cq_init_attr *attr, struct ib_udata *udata); -void bnxt_re_destroy_cq(struct ib_cq *cq, struct ib_udata *udata); +int bnxt_re_destroy_cq(struct ib_cq *cq, struct ib_udata *udata); int bnxt_re_poll_cq(struct ib_cq *cq, int num_entries, struct ib_wc *wc); int bnxt_re_req_notify_cq(struct ib_cq *cq, enum ib_cq_notify_flags flags); struct ib_mr *bnxt_re_get_dma_mr(struct ib_pd *pd, int mr_access_flags); --- linux-azure-5.8-5.8.0.orig/drivers/infiniband/hw/bnxt_re/main.c +++ linux-azure-5.8-5.8.0/drivers/infiniband/hw/bnxt_re/main.c @@ -811,7 +811,8 @@ struct ib_event event; unsigned int flags; - if (qp->qplib_qp.state == CMDQ_MODIFY_QP_NEW_STATE_ERR) { + if (qp->qplib_qp.state == CMDQ_MODIFY_QP_NEW_STATE_ERR && + rdma_is_kernel_res(&qp->ib_qp.res)) { flags = bnxt_re_lock_cqs(qp); bnxt_qplib_add_flush_qp(&qp->qplib_qp); bnxt_re_unlock_cqs(qp, flags); @@ -1026,8 +1027,7 @@ struct bnxt_qplib_nq *nq; nq = &rdev->nq[i]; - nq->hwq.max_elements = (qplib_ctx->cq_count + - qplib_ctx->srqc_count + 2); + nq->hwq.max_elements = BNXT_QPLIB_NQE_MAX_CNT; rc = bnxt_qplib_alloc_nq(&rdev->qplib_res, &rdev->nq[i]); if (rc) { ibdev_err(&rdev->ibdev, "Alloc Failed NQ%d rc:%#x", --- linux-azure-5.8-5.8.0.orig/drivers/infiniband/hw/bnxt_re/qplib_fp.c +++ linux-azure-5.8-5.8.0/drivers/infiniband/hw/bnxt_re/qplib_fp.c @@ -796,6 +796,7 @@ u16 cmd_flags = 0; u32 qp_flags = 0; u8 pg_sz_lvl; + u32 tbl_indx; int rc; RCFW_CMD_PREP(req, CREATE_QP1, cmd_flags); @@ -891,8 +892,9 @@ rq->dbinfo.xid = qp->id; rq->dbinfo.db = qp->dpi->dbr; } - rcfw->qp_tbl[qp->id].qp_id = qp->id; - rcfw->qp_tbl[qp->id].qp_handle = (void *)qp; + tbl_indx = map_qp_id_to_tbl_indx(qp->id, rcfw); + rcfw->qp_tbl[tbl_indx].qp_id = qp->id; + rcfw->qp_tbl[tbl_indx].qp_handle = (void *)qp; return 0; @@ -920,10 +922,10 @@ sq = &qp->sq; hwq = &sq->hwq; + /* First psn entry */ fpsne = (u64)bnxt_qplib_get_qe(hwq, hwq->max_elements, &psn_pg); if (!IS_ALIGNED(fpsne, PAGE_SIZE)) - indx_pad = ALIGN(fpsne, PAGE_SIZE) / size; - + indx_pad = (fpsne & ~PAGE_MASK) / size; page = (u64 *)psn_pg; for (indx = 0; indx < hwq->max_elements; indx++) { pg_num = (indx + indx_pad) / (PAGE_SIZE / size); @@ -950,6 +952,7 @@ u32 qp_flags = 0; u8 pg_sz_lvl; u16 max_rsge; + u32 tbl_indx; RCFW_CMD_PREP(req, CREATE_QP, cmd_flags); @@ -1118,8 +1121,9 @@ rq->dbinfo.xid = qp->id; rq->dbinfo.db = qp->dpi->dbr; } - rcfw->qp_tbl[qp->id].qp_id = qp->id; - rcfw->qp_tbl[qp->id].qp_handle = (void *)qp; + tbl_indx = map_qp_id_to_tbl_indx(qp->id, rcfw); + rcfw->qp_tbl[tbl_indx].qp_id = qp->id; + rcfw->qp_tbl[tbl_indx].qp_handle = (void *)qp; return 0; @@ -1467,10 +1471,12 @@ struct cmdq_destroy_qp req; struct creq_destroy_qp_resp resp; u16 cmd_flags = 0; + u32 tbl_indx; int rc; - rcfw->qp_tbl[qp->id].qp_id = BNXT_QPLIB_QP_ID_INVALID; - rcfw->qp_tbl[qp->id].qp_handle = NULL; + tbl_indx = map_qp_id_to_tbl_indx(qp->id, rcfw); + rcfw->qp_tbl[tbl_indx].qp_id = BNXT_QPLIB_QP_ID_INVALID; + rcfw->qp_tbl[tbl_indx].qp_handle = NULL; RCFW_CMD_PREP(req, DESTROY_QP, cmd_flags); @@ -1478,8 +1484,8 @@ rc = bnxt_qplib_rcfw_send_message(rcfw, (void *)&req, (void *)&resp, NULL, 0); if (rc) { - rcfw->qp_tbl[qp->id].qp_id = qp->id; - rcfw->qp_tbl[qp->id].qp_handle = qp; + rcfw->qp_tbl[tbl_indx].qp_id = qp->id; + rcfw->qp_tbl[tbl_indx].qp_handle = qp; return rc; } --- linux-azure-5.8-5.8.0.orig/drivers/infiniband/hw/bnxt_re/qplib_rcfw.c +++ linux-azure-5.8-5.8.0/drivers/infiniband/hw/bnxt_re/qplib_rcfw.c @@ -307,14 +307,15 @@ __le16 mcookie; u16 cookie; int rc = 0; - u32 qp_id; + u32 qp_id, tbl_indx; pdev = rcfw->pdev; switch (qp_event->event) { case CREQ_QP_EVENT_EVENT_QP_ERROR_NOTIFICATION: err_event = (struct creq_qp_error_notification *)qp_event; qp_id = le32_to_cpu(err_event->xid); - qp = rcfw->qp_tbl[qp_id].qp_handle; + tbl_indx = map_qp_id_to_tbl_indx(qp_id, rcfw); + qp = rcfw->qp_tbl[tbl_indx].qp_handle; dev_dbg(&pdev->dev, "Received QP error notification\n"); dev_dbg(&pdev->dev, "qpid 0x%x, req_err=0x%x, resp_err=0x%x\n", @@ -615,8 +616,9 @@ cmdq->bmap_size = bmap_size; - rcfw->qp_tbl_size = qp_tbl_sz; - rcfw->qp_tbl = kcalloc(qp_tbl_sz, sizeof(struct bnxt_qplib_qp_node), + /* Allocate one extra to hold the QP1 entries */ + rcfw->qp_tbl_size = qp_tbl_sz + 1; + rcfw->qp_tbl = kcalloc(rcfw->qp_tbl_size, sizeof(struct bnxt_qplib_qp_node), GFP_KERNEL); if (!rcfw->qp_tbl) goto fail; --- linux-azure-5.8-5.8.0.orig/drivers/infiniband/hw/bnxt_re/qplib_rcfw.h +++ linux-azure-5.8-5.8.0/drivers/infiniband/hw/bnxt_re/qplib_rcfw.h @@ -216,4 +216,9 @@ int bnxt_qplib_init_rcfw(struct bnxt_qplib_rcfw *rcfw, struct bnxt_qplib_ctx *ctx, int is_virtfn); void bnxt_qplib_mark_qp_error(void *qp_handle); +static inline u32 map_qp_id_to_tbl_indx(u32 qid, struct bnxt_qplib_rcfw *rcfw) +{ + /* Last index of the qp_tbl is for QP1 ie. qp_tbl_size - 1*/ + return (qid == 1) ? rcfw->qp_tbl_size - 1 : qid % rcfw->qp_tbl_size - 2; +} #endif /* __BNXT_QPLIB_RCFW_H__ */ --- linux-azure-5.8-5.8.0.orig/drivers/infiniband/hw/bnxt_re/qplib_sp.c +++ linux-azure-5.8-5.8.0/drivers/infiniband/hw/bnxt_re/qplib_sp.c @@ -149,7 +149,7 @@ attr->max_inline_data = le32_to_cpu(sb->max_inline_data); attr->l2_db_size = (sb->l2_db_space_size + 1) * (0x01 << RCFW_DBR_BASE_PAGE_SHIFT); - attr->max_sgid = le32_to_cpu(sb->max_gid); + attr->max_sgid = BNXT_QPLIB_NUM_GIDS_SUPPORTED; bnxt_qplib_query_version(rcfw, attr->fw_ver); --- linux-azure-5.8-5.8.0.orig/drivers/infiniband/hw/bnxt_re/qplib_sp.h +++ linux-azure-5.8-5.8.0/drivers/infiniband/hw/bnxt_re/qplib_sp.h @@ -47,6 +47,7 @@ struct bnxt_qplib_dev_attr { #define FW_VER_ARR_LEN 4 u8 fw_ver[FW_VER_ARR_LEN]; +#define BNXT_QPLIB_NUM_GIDS_SUPPORTED 256 u16 max_sgid; u16 max_mrw; u32 max_qp; --- linux-azure-5.8-5.8.0.orig/drivers/infiniband/hw/cxgb4/cq.c +++ linux-azure-5.8-5.8.0/drivers/infiniband/hw/cxgb4/cq.c @@ -967,7 +967,7 @@ return !err || err == -ENODATA ? npolled : err; } -void c4iw_destroy_cq(struct ib_cq *ib_cq, struct ib_udata *udata) +int c4iw_destroy_cq(struct ib_cq *ib_cq, struct ib_udata *udata) { struct c4iw_cq *chp; struct c4iw_ucontext *ucontext; @@ -985,6 +985,7 @@ ucontext ? &ucontext->uctx : &chp->cq.rdev->uctx, chp->destroy_skb, chp->wr_waitp); c4iw_put_wr_wait(chp->wr_waitp); + return 0; } int c4iw_create_cq(struct ib_cq *ibcq, const struct ib_cq_init_attr *attr, @@ -1007,6 +1008,9 @@ if (attr->flags) return -EINVAL; + if (entries < 1 || entries > ibdev->attrs.max_cqe) + return -EINVAL; + if (vector >= rhp->rdev.lldi.nciq) return -EINVAL; --- linux-azure-5.8-5.8.0.orig/drivers/infiniband/hw/cxgb4/iw_cxgb4.h +++ linux-azure-5.8-5.8.0/drivers/infiniband/hw/cxgb4/iw_cxgb4.h @@ -992,7 +992,7 @@ struct ib_udata *udata); struct ib_mr *c4iw_get_dma_mr(struct ib_pd *pd, int acc); int c4iw_dereg_mr(struct ib_mr *ib_mr, struct ib_udata *udata); -void c4iw_destroy_cq(struct ib_cq *ib_cq, struct ib_udata *udata); +int c4iw_destroy_cq(struct ib_cq *ib_cq, struct ib_udata *udata); int c4iw_create_cq(struct ib_cq *ibcq, const struct ib_cq_init_attr *attr, struct ib_udata *udata); int c4iw_arm_cq(struct ib_cq *ibcq, enum ib_cq_notify_flags flags); --- linux-azure-5.8-5.8.0.orig/drivers/infiniband/hw/cxgb4/mem.c +++ linux-azure-5.8-5.8.0/drivers/infiniband/hw/cxgb4/mem.c @@ -399,7 +399,6 @@ mmid = stag >> 8; mhp->ibmr.rkey = mhp->ibmr.lkey = stag; mhp->ibmr.length = mhp->attr.len; - mhp->ibmr.iova = mhp->attr.va_fbo; mhp->ibmr.page_size = 1U << (mhp->attr.page_size + 12); pr_debug("mmid 0x%x mhp %p\n", mmid, mhp); return xa_insert_irq(&mhp->rhp->mrs, mmid, mhp, GFP_KERNEL); --- linux-azure-5.8-5.8.0.orig/drivers/infiniband/hw/cxgb4/qp.c +++ linux-azure-5.8-5.8.0/drivers/infiniband/hw/cxgb4/qp.c @@ -2471,7 +2471,7 @@ init_attr->cap.max_send_wr = qhp->attr.sq_num_entries; init_attr->cap.max_recv_wr = qhp->attr.rq_num_entries; init_attr->cap.max_send_sge = qhp->attr.sq_max_sges; - init_attr->cap.max_recv_sge = qhp->attr.sq_max_sges; + init_attr->cap.max_recv_sge = qhp->attr.rq_max_sges; init_attr->cap.max_inline_data = T4_MAX_SEND_INLINE; init_attr->sq_sig_type = qhp->sq_sig_all ? IB_SIGNAL_ALL_WR : 0; return 0; --- linux-azure-5.8-5.8.0.orig/drivers/infiniband/hw/efa/efa.h +++ linux-azure-5.8-5.8.0/drivers/infiniband/hw/efa/efa.h @@ -139,7 +139,7 @@ struct ib_qp *efa_create_qp(struct ib_pd *ibpd, struct ib_qp_init_attr *init_attr, struct ib_udata *udata); -void efa_destroy_cq(struct ib_cq *ibcq, struct ib_udata *udata); +int efa_destroy_cq(struct ib_cq *ibcq, struct ib_udata *udata); int efa_create_cq(struct ib_cq *ibcq, const struct ib_cq_init_attr *attr, struct ib_udata *udata); struct ib_mr *efa_reg_mr(struct ib_pd *ibpd, u64 start, u64 length, --- linux-azure-5.8-5.8.0.orig/drivers/infiniband/hw/efa/efa_admin_cmds_defs.h +++ linux-azure-5.8-5.8.0/drivers/infiniband/hw/efa/efa_admin_cmds_defs.h @@ -606,8 +606,8 @@ /* Number of sub-CQs to be created for each CQ */ u16 sub_cqs_per_cq; - /* MBZ */ - u16 reserved; + /* Minimum number of WQEs per SQ */ + u16 min_sq_depth; /* Maximum number of SGEs (buffers) allowed for a single send WQE */ u16 max_wr_send_sges; @@ -632,6 +632,17 @@ /* Maximum number of SGEs for a single RDMA read WQE */ u16 max_wr_rdma_sges; + + /* + * Maximum number of bytes that can be written to SQ between two + * consecutive doorbells (in units of 64B). Driver must ensure that only + * complete WQEs are written to queue before issuing a doorbell. + * Examples: max_tx_batch=16 and WQE size = 64B, means up to 16 WQEs can + * be written to SQ between two consecutive doorbells. max_tx_batch=11 + * and WQE size = 128B, means up to 5 WQEs can be written to SQ between + * two consecutive doorbells. Zero means unlimited. + */ + u16 max_tx_batch; }; struct efa_admin_feature_aenq_desc { --- linux-azure-5.8-5.8.0.orig/drivers/infiniband/hw/efa/efa_com_cmd.c +++ linux-azure-5.8-5.8.0/drivers/infiniband/hw/efa/efa_com_cmd.c @@ -480,6 +480,8 @@ result->max_llq_size = resp.u.queue_attr.max_llq_size; result->sub_cqs_per_cq = resp.u.queue_attr.sub_cqs_per_cq; result->max_wr_rdma_sge = resp.u.queue_attr.max_wr_rdma_sges; + result->max_tx_batch = resp.u.queue_attr.max_tx_batch; + result->min_sq_depth = resp.u.queue_attr.min_sq_depth; err = efa_com_get_feature(edev, &resp, EFA_ADMIN_NETWORK_ATTR); if (err) { --- linux-azure-5.8-5.8.0.orig/drivers/infiniband/hw/efa/efa_com_cmd.h +++ linux-azure-5.8-5.8.0/drivers/infiniband/hw/efa/efa_com_cmd.h @@ -127,6 +127,8 @@ u16 max_sq_sge; u16 max_rq_sge; u16 max_wr_rdma_sge; + u16 max_tx_batch; + u16 min_sq_depth; u8 db_bar; }; --- linux-azure-5.8-5.8.0.orig/drivers/infiniband/hw/efa/efa_main.c +++ linux-azure-5.8-5.8.0/drivers/infiniband/hw/efa/efa_main.c @@ -12,10 +12,12 @@ #include "efa.h" -#define PCI_DEV_ID_EFA_VF 0xefa0 +#define PCI_DEV_ID_EFA0_VF 0xefa0 +#define PCI_DEV_ID_EFA1_VF 0xefa1 static const struct pci_device_id efa_pci_tbl[] = { - { PCI_VDEVICE(AMAZON, PCI_DEV_ID_EFA_VF) }, + { PCI_VDEVICE(AMAZON, PCI_DEV_ID_EFA0_VF) }, + { PCI_VDEVICE(AMAZON, PCI_DEV_ID_EFA1_VF) }, { } }; --- linux-azure-5.8-5.8.0.orig/drivers/infiniband/hw/efa/efa_verbs.c +++ linux-azure-5.8-5.8.0/drivers/infiniband/hw/efa/efa_verbs.c @@ -843,7 +843,7 @@ return efa_com_destroy_cq(&dev->edev, ¶ms); } -void efa_destroy_cq(struct ib_cq *ibcq, struct ib_udata *udata) +int efa_destroy_cq(struct ib_cq *ibcq, struct ib_udata *udata) { struct efa_dev *dev = to_edev(ibcq->device); struct efa_cq *cq = to_ecq(ibcq); @@ -856,6 +856,7 @@ efa_destroy_cq_idx(dev, cq->cq_idx); efa_free_mapped(dev, cq->cpu_addr, cq->dma_addr, cq->size, DMA_FROM_DEVICE); + return 0; } static int cq_mmap_entries_setup(struct efa_dev *dev, struct efa_cq *cq, @@ -1502,11 +1503,39 @@ return efa_com_dealloc_uar(&dev->edev, ¶ms); } +#define EFA_CHECK_USER_COMP(_dev, _comp_mask, _attr, _mask, _attr_str) \ + (_attr_str = (!(_dev)->dev_attr._attr || ((_comp_mask) & (_mask))) ? \ + NULL : #_attr) + +static int efa_user_comp_handshake(const struct ib_ucontext *ibucontext, + const struct efa_ibv_alloc_ucontext_cmd *cmd) +{ + struct efa_dev *dev = to_edev(ibucontext->device); + char *attr_str; + + if (EFA_CHECK_USER_COMP(dev, cmd->comp_mask, max_tx_batch, + EFA_ALLOC_UCONTEXT_CMD_COMP_TX_BATCH, attr_str)) + goto err; + + if (EFA_CHECK_USER_COMP(dev, cmd->comp_mask, min_sq_depth, + EFA_ALLOC_UCONTEXT_CMD_COMP_MIN_SQ_WR, + attr_str)) + goto err; + + return 0; + +err: + ibdev_dbg(&dev->ibdev, "Userspace handshake failed for %s attribute\n", + attr_str); + return -EOPNOTSUPP; +} + int efa_alloc_ucontext(struct ib_ucontext *ibucontext, struct ib_udata *udata) { struct efa_ucontext *ucontext = to_eucontext(ibucontext); struct efa_dev *dev = to_edev(ibucontext->device); struct efa_ibv_alloc_ucontext_resp resp = {}; + struct efa_ibv_alloc_ucontext_cmd cmd = {}; struct efa_com_alloc_uar_result result; int err; @@ -1515,6 +1544,18 @@ * we will ack input fields in our response. */ + err = ib_copy_from_udata(&cmd, udata, + min(sizeof(cmd), udata->inlen)); + if (err) { + ibdev_dbg(&dev->ibdev, + "Cannot copy udata for alloc_ucontext\n"); + goto err_out; + } + + err = efa_user_comp_handshake(ibucontext, &cmd); + if (err) + goto err_out; + err = efa_com_alloc_uar(&dev->edev, &result); if (err) goto err_out; @@ -1526,6 +1567,8 @@ resp.sub_cqs_per_cq = dev->dev_attr.sub_cqs_per_cq; resp.inline_buf_size = dev->dev_attr.inline_buf_size; resp.max_llq_size = dev->dev_attr.max_llq_size; + resp.max_tx_batch = dev->dev_attr.max_tx_batch; + resp.min_sq_wr = dev->dev_attr.min_sq_depth; if (udata && udata->outlen) { err = ib_copy_to_udata(udata, &resp, --- linux-azure-5.8-5.8.0.orig/drivers/infiniband/hw/hfi1/chip.c +++ linux-azure-5.8-5.8.0/drivers/infiniband/hw/hfi1/chip.c @@ -15244,7 +15244,8 @@ & CCE_REVISION_SW_MASK); /* alloc netdev data */ - if (hfi1_netdev_alloc(dd)) + ret = hfi1_netdev_alloc(dd); + if (ret) goto bail_cleanup; ret = set_up_context_variables(dd); --- linux-azure-5.8-5.8.0.orig/drivers/infiniband/hw/hfi1/file_ops.c +++ linux-azure-5.8-5.8.0/drivers/infiniband/hw/hfi1/file_ops.c @@ -1,4 +1,5 @@ /* + * Copyright(c) 2020 Cornelis Networks, Inc. * Copyright(c) 2015-2020 Intel Corporation. * * This file is provided under a dual BSD/GPLv2 license. When using or @@ -206,8 +207,6 @@ spin_lock_init(&fd->tid_lock); spin_lock_init(&fd->invalid_lock); fd->rec_cpu_num = -1; /* no cpu affinity by default */ - fd->mm = current->mm; - mmgrab(fd->mm); fd->dd = dd; fp->private_data = fd; return 0; @@ -711,7 +710,6 @@ deallocate_ctxt(uctxt); done: - mmdrop(fdata->mm); if (atomic_dec_and_test(&dd->user_refcount)) complete(&dd->user_comp); --- linux-azure-5.8-5.8.0.orig/drivers/infiniband/hw/hfi1/hfi.h +++ linux-azure-5.8-5.8.0/drivers/infiniband/hw/hfi1/hfi.h @@ -1,6 +1,7 @@ #ifndef _HFI1_KERNEL_H #define _HFI1_KERNEL_H /* + * Copyright(c) 2020 Cornelis Networks, Inc. * Copyright(c) 2015-2020 Intel Corporation. * * This file is provided under a dual BSD/GPLv2 license. When using or @@ -1451,7 +1452,6 @@ u32 invalid_tid_idx; /* protect invalid_tids array and invalid_tid_idx */ spinlock_t invalid_lock; - struct mm_struct *mm; }; extern struct xarray hfi1_dev_table; --- linux-azure-5.8-5.8.0.orig/drivers/infiniband/hw/hfi1/mmu_rb.c +++ linux-azure-5.8-5.8.0/drivers/infiniband/hw/hfi1/mmu_rb.c @@ -1,4 +1,5 @@ /* + * Copyright(c) 2020 Cornelis Networks, Inc. * Copyright(c) 2016 - 2017 Intel Corporation. * * This file is provided under a dual BSD/GPLv2 license. When using or @@ -48,23 +49,11 @@ #include #include #include +#include #include "mmu_rb.h" #include "trace.h" -struct mmu_rb_handler { - struct mmu_notifier mn; - struct rb_root_cached root; - void *ops_arg; - spinlock_t lock; /* protect the RB tree */ - struct mmu_rb_ops *ops; - struct mm_struct *mm; - struct list_head lru_list; - struct work_struct del_work; - struct list_head del_list; - struct workqueue_struct *wq; -}; - static unsigned long mmu_node_start(struct mmu_rb_node *); static unsigned long mmu_node_last(struct mmu_rb_node *); static int mmu_notifier_range_start(struct mmu_notifier *, @@ -92,37 +81,36 @@ return PAGE_ALIGN(node->addr + node->len) - 1; } -int hfi1_mmu_rb_register(void *ops_arg, struct mm_struct *mm, +int hfi1_mmu_rb_register(void *ops_arg, struct mmu_rb_ops *ops, struct workqueue_struct *wq, struct mmu_rb_handler **handler) { - struct mmu_rb_handler *handlr; + struct mmu_rb_handler *h; int ret; - handlr = kmalloc(sizeof(*handlr), GFP_KERNEL); - if (!handlr) + h = kmalloc(sizeof(*h), GFP_KERNEL); + if (!h) return -ENOMEM; - handlr->root = RB_ROOT_CACHED; - handlr->ops = ops; - handlr->ops_arg = ops_arg; - INIT_HLIST_NODE(&handlr->mn.hlist); - spin_lock_init(&handlr->lock); - handlr->mn.ops = &mn_opts; - handlr->mm = mm; - INIT_WORK(&handlr->del_work, handle_remove); - INIT_LIST_HEAD(&handlr->del_list); - INIT_LIST_HEAD(&handlr->lru_list); - handlr->wq = wq; + h->root = RB_ROOT_CACHED; + h->ops = ops; + h->ops_arg = ops_arg; + INIT_HLIST_NODE(&h->mn.hlist); + spin_lock_init(&h->lock); + h->mn.ops = &mn_opts; + INIT_WORK(&h->del_work, handle_remove); + INIT_LIST_HEAD(&h->del_list); + INIT_LIST_HEAD(&h->lru_list); + h->wq = wq; - ret = mmu_notifier_register(&handlr->mn, handlr->mm); + ret = mmu_notifier_register(&h->mn, current->mm); if (ret) { - kfree(handlr); + kfree(h); return ret; } - *handler = handlr; + *handler = h; return 0; } @@ -134,7 +122,7 @@ struct list_head del_list; /* Unregister first so we don't get any more notifications. */ - mmu_notifier_unregister(&handler->mn, handler->mm); + mmu_notifier_unregister(&handler->mn, handler->mn.mm); /* * Make sure the wq delete handler is finished running. It will not @@ -166,6 +154,10 @@ int ret = 0; trace_hfi1_mmu_rb_insert(mnode->addr, mnode->len); + + if (current->mm != handler->mn.mm) + return -EPERM; + spin_lock_irqsave(&handler->lock, flags); node = __mmu_rb_search(handler, mnode->addr, mnode->len); if (node) { @@ -180,6 +172,7 @@ __mmu_int_rb_remove(mnode, &handler->root); list_del(&mnode->list); /* remove from LRU list */ } + mnode->handler = handler; unlock: spin_unlock_irqrestore(&handler->lock, flags); return ret; @@ -217,6 +210,9 @@ unsigned long flags; bool ret = false; + if (current->mm != handler->mn.mm) + return ret; + spin_lock_irqsave(&handler->lock, flags); node = __mmu_rb_search(handler, addr, len); if (node) { @@ -239,6 +235,9 @@ unsigned long flags; bool stop = false; + if (current->mm != handler->mn.mm) + return; + INIT_LIST_HEAD(&del_list); spin_lock_irqsave(&handler->lock, flags); @@ -272,6 +271,9 @@ { unsigned long flags; + if (current->mm != handler->mn.mm) + return; + /* Validity of handler and node pointers has been checked by caller. */ trace_hfi1_mmu_rb_remove(node->addr, node->len); spin_lock_irqsave(&handler->lock, flags); --- linux-azure-5.8-5.8.0.orig/drivers/infiniband/hw/hfi1/mmu_rb.h +++ linux-azure-5.8-5.8.0/drivers/infiniband/hw/hfi1/mmu_rb.h @@ -1,4 +1,5 @@ /* + * Copyright(c) 2020 Cornelis Networks, Inc. * Copyright(c) 2016 Intel Corporation. * * This file is provided under a dual BSD/GPLv2 license. When using or @@ -54,6 +55,7 @@ unsigned long len; unsigned long __last; struct rb_node node; + struct mmu_rb_handler *handler; struct list_head list; }; @@ -71,7 +73,19 @@ void *evict_arg, bool *stop); }; -int hfi1_mmu_rb_register(void *ops_arg, struct mm_struct *mm, +struct mmu_rb_handler { + struct mmu_notifier mn; + struct rb_root_cached root; + void *ops_arg; + spinlock_t lock; /* protect the RB tree */ + struct mmu_rb_ops *ops; + struct list_head lru_list; + struct work_struct del_work; + struct list_head del_list; + struct workqueue_struct *wq; +}; + +int hfi1_mmu_rb_register(void *ops_arg, struct mmu_rb_ops *ops, struct workqueue_struct *wq, struct mmu_rb_handler **handler); --- linux-azure-5.8-5.8.0.orig/drivers/infiniband/hw/hfi1/tid_rdma.c +++ linux-azure-5.8-5.8.0/drivers/infiniband/hw/hfi1/tid_rdma.c @@ -3215,6 +3215,7 @@ case IB_WR_ATOMIC_CMP_AND_SWP: case IB_WR_ATOMIC_FETCH_AND_ADD: case IB_WR_RDMA_WRITE: + case IB_WR_RDMA_WRITE_WITH_IMM: switch (prev->wr.opcode) { case IB_WR_TID_RDMA_WRITE: req = wqe_to_tid_req(prev); --- linux-azure-5.8-5.8.0.orig/drivers/infiniband/hw/hfi1/user_exp_rcv.c +++ linux-azure-5.8-5.8.0/drivers/infiniband/hw/hfi1/user_exp_rcv.c @@ -1,4 +1,5 @@ /* + * Copyright(c) 2020 Cornelis Networks, Inc. * Copyright(c) 2015-2018 Intel Corporation. * * This file is provided under a dual BSD/GPLv2 license. When using or @@ -173,15 +174,18 @@ { struct page **pages; struct hfi1_devdata *dd = fd->uctxt->dd; + struct mm_struct *mm; if (mapped) { pci_unmap_single(dd->pcidev, node->dma_addr, node->npages * PAGE_SIZE, PCI_DMA_FROMDEVICE); pages = &node->pages[idx]; + mm = mm_from_tid_node(node); } else { pages = &tidbuf->pages[idx]; + mm = current->mm; } - hfi1_release_user_pages(fd->mm, pages, npages, mapped); + hfi1_release_user_pages(mm, pages, npages, mapped); fd->tid_n_pinned -= npages; } @@ -216,12 +220,12 @@ * pages, accept the amount pinned so far and program only that. * User space knows how to deal with partially programmed buffers. */ - if (!hfi1_can_pin_pages(dd, fd->mm, fd->tid_n_pinned, npages)) { + if (!hfi1_can_pin_pages(dd, current->mm, fd->tid_n_pinned, npages)) { kfree(pages); return -ENOMEM; } - pinned = hfi1_acquire_user_pages(fd->mm, vaddr, npages, true, pages); + pinned = hfi1_acquire_user_pages(current->mm, vaddr, npages, true, pages); if (pinned <= 0) { kfree(pages); return pinned; @@ -756,7 +760,7 @@ if (fd->use_mn) { ret = mmu_interval_notifier_insert( - &node->notifier, fd->mm, + &node->notifier, current->mm, tbuf->vaddr + (pageidx * PAGE_SIZE), npages * PAGE_SIZE, &tid_mn_ops); if (ret) --- linux-azure-5.8-5.8.0.orig/drivers/infiniband/hw/hfi1/user_exp_rcv.h +++ linux-azure-5.8-5.8.0/drivers/infiniband/hw/hfi1/user_exp_rcv.h @@ -1,6 +1,7 @@ #ifndef _HFI1_USER_EXP_RCV_H #define _HFI1_USER_EXP_RCV_H /* + * Copyright(c) 2020 - Cornelis Networks, Inc. * Copyright(c) 2015 - 2017 Intel Corporation. * * This file is provided under a dual BSD/GPLv2 license. When using or @@ -95,4 +96,9 @@ int hfi1_user_exp_rcv_invalid(struct hfi1_filedata *fd, struct hfi1_tid_info *tinfo); +static inline struct mm_struct *mm_from_tid_node(struct tid_rb_node *node) +{ + return node->notifier.mm; +} + #endif /* _HFI1_USER_EXP_RCV_H */ --- linux-azure-5.8-5.8.0.orig/drivers/infiniband/hw/hfi1/user_sdma.c +++ linux-azure-5.8-5.8.0/drivers/infiniband/hw/hfi1/user_sdma.c @@ -1,4 +1,5 @@ /* + * Copyright(c) 2020 - Cornelis Networks, Inc. * Copyright(c) 2015 - 2018 Intel Corporation. * * This file is provided under a dual BSD/GPLv2 license. When using or @@ -188,7 +189,6 @@ atomic_set(&pq->n_reqs, 0); init_waitqueue_head(&pq->wait); atomic_set(&pq->n_locked, 0); - pq->mm = fd->mm; iowait_init(&pq->busy, 0, NULL, NULL, defer_packet_queue, activate_packet_queue, NULL, NULL); @@ -230,7 +230,7 @@ cq->nentries = hfi1_sdma_comp_ring_size; - ret = hfi1_mmu_rb_register(pq, pq->mm, &sdma_rb_ops, dd->pport->hfi1_wq, + ret = hfi1_mmu_rb_register(pq, &sdma_rb_ops, dd->pport->hfi1_wq, &pq->handler); if (ret) { dd_dev_err(dd, "Failed to register with MMU %d", ret); @@ -980,13 +980,13 @@ npages -= node->npages; retry: - if (!hfi1_can_pin_pages(pq->dd, pq->mm, + if (!hfi1_can_pin_pages(pq->dd, current->mm, atomic_read(&pq->n_locked), npages)) { cleared = sdma_cache_evict(pq, npages); if (cleared >= npages) goto retry; } - pinned = hfi1_acquire_user_pages(pq->mm, + pinned = hfi1_acquire_user_pages(current->mm, ((unsigned long)iovec->iov.iov_base + (node->npages * PAGE_SIZE)), npages, 0, pages + node->npages); @@ -995,7 +995,7 @@ return pinned; } if (pinned != npages) { - unpin_vector_pages(pq->mm, pages, node->npages, pinned); + unpin_vector_pages(current->mm, pages, node->npages, pinned); return -EFAULT; } kfree(node->pages); @@ -1008,7 +1008,8 @@ static void unpin_sdma_pages(struct sdma_mmu_node *node) { if (node->npages) { - unpin_vector_pages(node->pq->mm, node->pages, 0, node->npages); + unpin_vector_pages(mm_from_sdma_node(node), node->pages, 0, + node->npages); atomic_sub(node->npages, &node->pq->n_locked); } } --- linux-azure-5.8-5.8.0.orig/drivers/infiniband/hw/hfi1/user_sdma.h +++ linux-azure-5.8-5.8.0/drivers/infiniband/hw/hfi1/user_sdma.h @@ -1,6 +1,7 @@ #ifndef _HFI1_USER_SDMA_H #define _HFI1_USER_SDMA_H /* + * Copyright(c) 2020 - Cornelis Networks, Inc. * Copyright(c) 2015 - 2018 Intel Corporation. * * This file is provided under a dual BSD/GPLv2 license. When using or @@ -133,7 +134,6 @@ unsigned long unpinned; struct mmu_rb_handler *handler; atomic_t n_locked; - struct mm_struct *mm; }; struct hfi1_user_sdma_comp_q { @@ -250,4 +250,9 @@ struct iovec *iovec, unsigned long dim, unsigned long *count); +static inline struct mm_struct *mm_from_sdma_node(struct sdma_mmu_node *node) +{ + return node->rb.handler->mn.mm; +} + #endif /* _HFI1_USER_SDMA_H */ --- linux-azure-5.8-5.8.0.orig/drivers/infiniband/hw/hns/hns_roce_cq.c +++ linux-azure-5.8-5.8.0/drivers/infiniband/hw/hns/hns_roce_cq.c @@ -258,7 +258,8 @@ INIT_LIST_HEAD(&hr_cq->rq_list); if (udata) { - ret = ib_copy_from_udata(&ucmd, udata, sizeof(ucmd)); + ret = ib_copy_from_udata(&ucmd, udata, + min(udata->inlen, sizeof(ucmd))); if (ret) { ibdev_err(ibdev, "Failed to copy CQ udata, err %d\n", ret); @@ -295,7 +296,8 @@ if (udata) { resp.cqn = hr_cq->cqn; - ret = ib_copy_to_udata(udata, &resp, sizeof(resp)); + ret = ib_copy_to_udata(udata, &resp, + min(udata->outlen, sizeof(resp))); if (ret) goto err_cqc; } @@ -311,7 +313,7 @@ return ret; } -void hns_roce_destroy_cq(struct ib_cq *ib_cq, struct ib_udata *udata) +int hns_roce_destroy_cq(struct ib_cq *ib_cq, struct ib_udata *udata) { struct hns_roce_dev *hr_dev = to_hr_dev(ib_cq->device); struct hns_roce_cq *hr_cq = to_hr_cq(ib_cq); @@ -322,6 +324,7 @@ free_cq_buf(hr_dev, hr_cq); free_cq_db(hr_dev, hr_cq, udata); free_cqc(hr_dev, hr_cq); + return 0; } void hns_roce_cq_completion(struct hns_roce_dev *hr_dev, u32 cqn) --- linux-azure-5.8-5.8.0.orig/drivers/infiniband/hw/hns/hns_roce_device.h +++ linux-azure-5.8-5.8.0/drivers/infiniband/hw/hns/hns_roce_device.h @@ -66,8 +66,6 @@ #define HNS_ROCE_CQE_WCMD_EMPTY_BIT 0x2 #define HNS_ROCE_MIN_CQE_CNT 16 -#define HNS_ROCE_RESERVED_SGE 1 - #define HNS_ROCE_MAX_IRQ_NUM 128 #define HNS_ROCE_SGE_IN_WQE 2 @@ -631,7 +629,7 @@ struct hns_roce_db sdb; unsigned long en_flags; u32 doorbell_qpn; - u32 sq_signal_bits; + enum ib_sig_type sq_signal_bits; struct hns_roce_wq sq; struct hns_roce_mtr mtr; @@ -931,7 +929,7 @@ int (*poll_cq)(struct ib_cq *ibcq, int num_entries, struct ib_wc *wc); int (*dereg_mr)(struct hns_roce_dev *hr_dev, struct hns_roce_mr *mr, struct ib_udata *udata); - void (*destroy_cq)(struct ib_cq *ibcq, struct ib_udata *udata); + int (*destroy_cq)(struct ib_cq *ibcq, struct ib_udata *udata); int (*modify_cq)(struct ib_cq *cq, u16 cq_count, u16 cq_period); int (*init_eq)(struct hns_roce_dev *hr_dev); void (*cleanup_eq)(struct hns_roce_dev *hr_dev); @@ -1248,7 +1246,7 @@ int hns_roce_create_cq(struct ib_cq *ib_cq, const struct ib_cq_init_attr *attr, struct ib_udata *udata); -void hns_roce_destroy_cq(struct ib_cq *ib_cq, struct ib_udata *udata); +int hns_roce_destroy_cq(struct ib_cq *ib_cq, struct ib_udata *udata); int hns_roce_db_map_user(struct hns_roce_ucontext *context, struct ib_udata *udata, unsigned long virt, struct hns_roce_db *db); --- linux-azure-5.8-5.8.0.orig/drivers/infiniband/hw/hns/hns_roce_hw_v1.c +++ linux-azure-5.8-5.8.0/drivers/infiniband/hw/hns/hns_roce_hw_v1.c @@ -271,7 +271,6 @@ ps_opcode = HNS_ROCE_WQE_OPCODE_SEND; break; case IB_WR_LOCAL_INV: - break; case IB_WR_ATOMIC_CMP_AND_SWP: case IB_WR_ATOMIC_FETCH_AND_ADD: case IB_WR_LSO: @@ -3573,7 +3572,7 @@ return 0; } -static void hns_roce_v1_destroy_cq(struct ib_cq *ibcq, struct ib_udata *udata) +static int hns_roce_v1_destroy_cq(struct ib_cq *ibcq, struct ib_udata *udata) { struct hns_roce_dev *hr_dev = to_hr_dev(ibcq->device); struct hns_roce_cq *hr_cq = to_hr_cq(ibcq); @@ -3604,6 +3603,7 @@ } wait_time++; } + return 0; } static void set_eq_cons_index_v1(struct hns_roce_eq *eq, int req_not) --- linux-azure-5.8-5.8.0.orig/drivers/infiniband/hw/hns/hns_roce_hw_v2.c +++ linux-azure-5.8-5.8.0/drivers/infiniband/hw/hns/hns_roce_hw_v2.c @@ -150,25 +150,20 @@ V2_RC_SEND_WQE_BYTE_16_SGE_NUM_S, valid_num_sge); } -static void set_extend_sge(struct hns_roce_qp *qp, const struct ib_send_wr *wr, - unsigned int *sge_ind, unsigned int valid_num_sge) +static void set_extend_sge(struct hns_roce_qp *qp, struct ib_sge *sge, + unsigned int *sge_ind, unsigned int cnt) { struct hns_roce_v2_wqe_data_seg *dseg; - unsigned int cnt = valid_num_sge; - struct ib_sge *sge = wr->sg_list; unsigned int idx = *sge_ind; - if (qp->ibqp.qp_type == IB_QPT_RC || qp->ibqp.qp_type == IB_QPT_UC) { - cnt -= HNS_ROCE_SGE_IN_WQE; - sge += HNS_ROCE_SGE_IN_WQE; - } - while (cnt > 0) { dseg = hns_roce_get_extend_sge(qp, idx & (qp->sge.sge_cnt - 1)); - set_data_seg_v2(dseg, sge); - idx++; + if (likely(sge->length)) { + set_data_seg_v2(dseg, sge); + idx++; + cnt--; + } sge++; - cnt--; } *sge_ind = idx; @@ -231,7 +226,8 @@ } } - set_extend_sge(qp, wr, sge_ind, valid_num_sge); + set_extend_sge(qp, wr->sg_list + i, sge_ind, + valid_num_sge - HNS_ROCE_SGE_IN_WQE); } roce_set_field(rc_sq_wqe->byte_16, @@ -292,14 +288,11 @@ void *wqe, unsigned int *sge_idx, unsigned int owner_bit) { - struct hns_roce_dev *hr_dev = to_hr_dev(qp->ibqp.device); struct hns_roce_ah *ah = to_hr_ah(ud_wr(wr)->ah); struct hns_roce_v2_ud_send_wqe *ud_sq_wqe = wqe; unsigned int curr_idx = *sge_idx; int valid_num_sge; u32 msg_len = 0; - bool loopback; - u8 *smac; valid_num_sge = calc_wr_sge_num(wr, &msg_len); memset(ud_sq_wqe, 0, sizeof(*ud_sq_wqe)); @@ -317,13 +310,6 @@ roce_set_field(ud_sq_wqe->byte_48, V2_UD_SEND_WQE_BYTE_48_DMAC_5_M, V2_UD_SEND_WQE_BYTE_48_DMAC_5_S, ah->av.mac[5]); - /* MAC loopback */ - smac = (u8 *)hr_dev->dev_addr[qp->port]; - loopback = ether_addr_equal_unaligned(ah->av.mac, smac) ? 1 : 0; - - roce_set_bit(ud_sq_wqe->byte_40, - V2_UD_SEND_WQE_BYTE_40_LBI_S, loopback); - roce_set_field(ud_sq_wqe->byte_4, V2_UD_SEND_WQE_BYTE_4_OPCODE_M, V2_UD_SEND_WQE_BYTE_4_OPCODE_S, @@ -390,7 +376,7 @@ memcpy(&ud_sq_wqe->dgid[0], &ah->av.dgid[0], GID_LEN_V2); - set_extend_sge(qp, wr, &curr_idx, valid_num_sge); + set_extend_sge(qp, wr->sg_list, &curr_idx, valid_num_sge); *sge_idx = curr_idx; @@ -629,7 +615,7 @@ wqe_idx = (hr_qp->rq.head + nreq) & (hr_qp->rq.wqe_cnt - 1); - if (unlikely(wr->num_sge >= hr_qp->rq.max_gs)) { + if (unlikely(wr->num_sge > hr_qp->rq.max_gs)) { ibdev_err(ibdev, "rq:num_sge=%d >= qp->sq.max_gs=%d\n", wr->num_sge, hr_qp->rq.max_gs); ret = -EINVAL; @@ -649,7 +635,6 @@ if (wr->num_sge < hr_qp->rq.max_gs) { dseg->lkey = cpu_to_le32(HNS_ROCE_INVALID_LKEY); dseg->addr = 0; - dseg->len = cpu_to_le32(HNS_ROCE_INVALID_SGE_LENGTH); } /* rq support inline data */ @@ -783,8 +768,8 @@ } if (wr->num_sge < srq->max_gs) { - dseg[i].len = cpu_to_le32(HNS_ROCE_INVALID_SGE_LENGTH); - dseg[i].lkey = cpu_to_le32(HNS_ROCE_INVALID_LKEY); + dseg[i].len = 0; + dseg[i].lkey = cpu_to_le32(0x100); dseg[i].addr = 0; } @@ -1113,7 +1098,7 @@ u32 timeout = 0; int handle = 0; u16 desc_ret; - int ret = 0; + int ret; int ntc; spin_lock_bh(&csq->lock); @@ -1158,15 +1143,14 @@ if (hns_roce_cmq_csq_done(hr_dev)) { complete = true; handle = 0; + ret = 0; while (handle < num) { /* get the result of hardware write back */ desc_to_use = &csq->desc[ntc]; desc[handle] = *desc_to_use; dev_dbg(hr_dev->dev, "Get cmq desc:\n"); desc_ret = le16_to_cpu(desc[handle].retval); - if (desc_ret == CMD_EXEC_SUCCESS) - ret = 0; - else + if (unlikely(desc_ret != CMD_EXEC_SUCCESS)) ret = -EIO; priv->cmq.last_status = desc_ret; ntc++; @@ -1730,7 +1714,6 @@ caps->flags = HNS_ROCE_CAP_FLAG_REREG_MR | HNS_ROCE_CAP_FLAG_ROCE_V1_V2 | - HNS_ROCE_CAP_FLAG_RQ_INLINE | HNS_ROCE_CAP_FLAG_RECORD_DB | HNS_ROCE_CAP_FLAG_SQ_RECORD_DB; @@ -1771,9 +1754,9 @@ int *buf_page_size, int *bt_page_size, u32 hem_type) { u64 obj_per_chunk; - int bt_chunk_size = 1 << PAGE_SHIFT; - int buf_chunk_size = 1 << PAGE_SHIFT; - int obj_per_chunk_default = buf_chunk_size / obj_size; + u64 bt_chunk_size = PAGE_SIZE; + u64 buf_chunk_size = PAGE_SIZE; + u64 obj_per_chunk_default = buf_chunk_size / obj_size; *buf_page_size = 0; *bt_page_size = 0; @@ -2745,6 +2728,7 @@ roce_set_bit(mpt_entry->byte_8_mw_cnt_en, V2_MPT_BYTE_8_R_INV_EN_S, 1); roce_set_bit(mpt_entry->byte_8_mw_cnt_en, V2_MPT_BYTE_8_L_INV_EN_S, 1); + roce_set_bit(mpt_entry->byte_8_mw_cnt_en, V2_MPT_BYTE_8_LW_EN_S, 1); roce_set_bit(mpt_entry->byte_12_mw_pa, V2_MPT_BYTE_12_PA_S, 0); roce_set_bit(mpt_entry->byte_12_mw_pa, V2_MPT_BYTE_12_MR_MW_S, 1); @@ -3053,6 +3037,7 @@ IB_WC_RETRY_EXC_ERR }, { HNS_ROCE_CQE_V2_RNR_RETRY_EXC_ERR, IB_WC_RNR_RETRY_EXC_ERR }, { HNS_ROCE_CQE_V2_REMOTE_ABORT_ERR, IB_WC_REM_ABORT_ERR }, + { HNS_ROCE_CQE_V2_GENERAL_ERR, IB_WC_GENERAL_ERR} }; u32 cqe_status = roce_get_field(cqe->byte_4, V2_CQE_BYTE_4_STATUS_M, @@ -3075,6 +3060,14 @@ sizeof(*cqe), false); /* + * For hns ROCEE, GENERAL_ERR is an error type that is not defined in + * the standard protocol, the driver must ignore it and needn't to set + * the QP to an error state. + */ + if (cqe_status == HNS_ROCE_CQE_V2_GENERAL_ERR) + return; + + /* * Hip08 hardware cannot flush the WQEs in SQ/RQ if the QP state gets * into errored mode. Hence, as a workaround to this hardware * limitation, driver needs to assist in flushing. But the flushing @@ -3632,9 +3625,6 @@ V2_QPC_BYTE_76_SRQ_EN_S, 1); } - roce_set_field(context->byte_172_sq_psn, V2_QPC_BYTE_172_ACK_REQ_FREQ_M, - V2_QPC_BYTE_172_ACK_REQ_FREQ_S, 4); - roce_set_bit(context->byte_172_sq_psn, V2_QPC_BYTE_172_FRE_S, 1); hr_qp->access_flags = attr->qp_access_flags; @@ -3975,6 +3965,7 @@ dma_addr_t trrl_ba; dma_addr_t irrl_ba; enum ib_mtu mtu; + u8 lp_pktn_ini; u8 port_num; u64 *mtts; u8 *dmac; @@ -4082,13 +4073,21 @@ } #define MAX_LP_MSG_LEN 65536 - /* MTU*(2^LP_PKTN_INI) shouldn't be bigger than 64kb */ + /* MTU * (2 ^ LP_PKTN_INI) shouldn't be bigger than 64KB */ + lp_pktn_ini = ilog2(MAX_LP_MSG_LEN / ib_mtu_enum_to_int(mtu)); + roce_set_field(context->byte_56_dqpn_err, V2_QPC_BYTE_56_LP_PKTN_INI_M, - V2_QPC_BYTE_56_LP_PKTN_INI_S, - ilog2(MAX_LP_MSG_LEN / ib_mtu_enum_to_int(mtu))); + V2_QPC_BYTE_56_LP_PKTN_INI_S, lp_pktn_ini); roce_set_field(qpc_mask->byte_56_dqpn_err, V2_QPC_BYTE_56_LP_PKTN_INI_M, V2_QPC_BYTE_56_LP_PKTN_INI_S, 0); + /* ACK_REQ_FREQ should be larger than or equal to LP_PKTN_INI */ + roce_set_field(context->byte_172_sq_psn, V2_QPC_BYTE_172_ACK_REQ_FREQ_M, + V2_QPC_BYTE_172_ACK_REQ_FREQ_S, lp_pktn_ini); + roce_set_field(qpc_mask->byte_172_sq_psn, + V2_QPC_BYTE_172_ACK_REQ_FREQ_M, + V2_QPC_BYTE_172_ACK_REQ_FREQ_S, 0); + roce_set_bit(qpc_mask->byte_108_rx_reqepsn, V2_QPC_BYTE_108_RX_REQ_PSN_ERR_S, 0); roce_set_field(qpc_mask->byte_96_rx_reqmsn, V2_QPC_BYTE_96_RX_REQ_MSN_M, @@ -4279,11 +4278,19 @@ V2_QPC_BYTE_28_FL_S, 0); memcpy(context->dgid, grh->dgid.raw, sizeof(grh->dgid.raw)); memset(qpc_mask->dgid, 0, sizeof(grh->dgid.raw)); + + hr_qp->sl = rdma_ah_get_sl(&attr->ah_attr); + if (unlikely(hr_qp->sl > MAX_SERVICE_LEVEL)) { + ibdev_err(ibdev, + "failed to fill QPC, sl (%d) shouldn't be larger than %d.\n", + hr_qp->sl, MAX_SERVICE_LEVEL); + return -EINVAL; + } + roce_set_field(context->byte_28_at_fl, V2_QPC_BYTE_28_SL_M, - V2_QPC_BYTE_28_SL_S, rdma_ah_get_sl(&attr->ah_attr)); + V2_QPC_BYTE_28_SL_S, hr_qp->sl); roce_set_field(qpc_mask->byte_28_at_fl, V2_QPC_BYTE_28_SL_M, V2_QPC_BYTE_28_SL_S, 0); - hr_qp->sl = rdma_ah_get_sl(&attr->ah_attr); return 0; } @@ -4301,7 +4308,9 @@ [IB_QPS_RTR] = { [IB_QPS_RESET] = true, [IB_QPS_RTS] = true, [IB_QPS_ERR] = true }, - [IB_QPS_RTS] = { [IB_QPS_RESET] = true, [IB_QPS_ERR] = true }, + [IB_QPS_RTS] = { [IB_QPS_RESET] = true, + [IB_QPS_RTS] = true, + [IB_QPS_ERR] = true }, [IB_QPS_SQD] = {}, [IB_QPS_SQE] = {}, [IB_QPS_ERR] = { [IB_QPS_RESET] = true, [IB_QPS_ERR] = true } @@ -4775,9 +4784,11 @@ V2_QPC_BYTE_28_AT_M, V2_QPC_BYTE_28_AT_S); qp_attr->retry_cnt = roce_get_field(context.byte_212_lsn, - V2_QPC_BYTE_212_RETRY_CNT_M, - V2_QPC_BYTE_212_RETRY_CNT_S); - qp_attr->rnr_retry = le32_to_cpu(context.rq_rnr_timer); + V2_QPC_BYTE_212_RETRY_NUM_INIT_M, + V2_QPC_BYTE_212_RETRY_NUM_INIT_S); + qp_attr->rnr_retry = roce_get_field(context.byte_244_rnr_rxack, + V2_QPC_BYTE_244_RNR_NUM_INIT_M, + V2_QPC_BYTE_244_RNR_NUM_INIT_S); done: qp_attr->cur_qp_state = qp_attr->qp_state; @@ -4793,6 +4804,7 @@ } qp_init_attr->cap = qp_attr->cap; + qp_init_attr->sq_sig_type = hr_qp->sq_signal_bits; out: mutex_unlock(&hr_qp->mutex); @@ -5087,7 +5099,7 @@ attr->srq_limit = limit_wl; attr->max_wr = srq->wqe_cnt - 1; - attr->max_sge = srq->max_gs - HNS_ROCE_RESERVED_SGE; + attr->max_sge = srq->max_gs; out: hns_roce_free_cmd_mailbox(hr_dev, mailbox); --- linux-azure-5.8-5.8.0.orig/drivers/infiniband/hw/hns/hns_roce_hw_v2.h +++ linux-azure-5.8-5.8.0/drivers/infiniband/hw/hns/hns_roce_hw_v2.h @@ -92,9 +92,7 @@ #define HNS_ROCE_V2_CQC_TIMER_ENTRY_SZ PAGE_SIZE #define HNS_ROCE_V2_PAGE_SIZE_SUPPORTED 0xFFFFF000 #define HNS_ROCE_V2_MAX_INNER_MTPT_NUM 2 -#define HNS_ROCE_INVALID_LKEY 0x0 -#define HNS_ROCE_INVALID_SGE_LENGTH 0x80000000 - +#define HNS_ROCE_INVALID_LKEY 0x100 #define HNS_ROCE_CMQ_TX_TIMEOUT 30000 #define HNS_ROCE_V2_UC_RC_SGE_NUM_IN_WQE 2 #define HNS_ROCE_V2_RSV_QPS 8 @@ -230,6 +228,7 @@ HNS_ROCE_CQE_V2_TRANSPORT_RETRY_EXC_ERR = 0x15, HNS_ROCE_CQE_V2_RNR_RETRY_EXC_ERR = 0x16, HNS_ROCE_CQE_V2_REMOTE_ABORT_ERR = 0x22, + HNS_ROCE_CQE_V2_GENERAL_ERR = 0x23, HNS_ROCE_V2_CQE_STATUS_MASK = 0xff, }; @@ -1656,7 +1655,7 @@ __le32 rsv_uars_rsv_qps; }; #define V2_QUERY_PF_CAPS_D_NUM_SRQS_S 0 -#define V2_QUERY_PF_CAPS_D_NUM_SRQS_M GENMASK(20, 0) +#define V2_QUERY_PF_CAPS_D_NUM_SRQS_M GENMASK(19, 0) #define V2_QUERY_PF_CAPS_D_RQWQE_HOP_NUM_S 20 #define V2_QUERY_PF_CAPS_D_RQWQE_HOP_NUM_M GENMASK(21, 20) @@ -1958,6 +1957,8 @@ #define HNS_ROCE_V2_AEQE_EVENT_QUEUE_NUM_S 0 #define HNS_ROCE_V2_AEQE_EVENT_QUEUE_NUM_M GENMASK(23, 0) +#define MAX_SERVICE_LEVEL 0x7 + struct hns_roce_wqe_atomic_seg { __le64 fetchadd_swap_data; __le64 cmp_data; --- linux-azure-5.8-5.8.0.orig/drivers/infiniband/hw/hns/hns_roce_main.c +++ linux-azure-5.8-5.8.0/drivers/infiniband/hw/hns/hns_roce_main.c @@ -323,7 +323,8 @@ mutex_init(&context->page_mutex); } - ret = ib_copy_to_udata(udata, &resp, sizeof(resp)); + ret = ib_copy_to_udata(udata, &resp, + min(udata->outlen, sizeof(resp))); if (ret) goto error_fail_copy_to_udata; @@ -775,8 +776,7 @@ return 0; err_qp_table_free: - if (hr_dev->caps.flags & HNS_ROCE_CAP_FLAG_SRQ) - hns_roce_cleanup_qp_table(hr_dev); + hns_roce_cleanup_qp_table(hr_dev); err_cq_table_free: hns_roce_cleanup_cq_table(hr_dev); --- linux-azure-5.8-5.8.0.orig/drivers/infiniband/hw/hns/hns_roce_pd.c +++ linux-azure-5.8-5.8.0/drivers/infiniband/hw/hns/hns_roce_pd.c @@ -70,16 +70,17 @@ } if (udata) { - struct hns_roce_ib_alloc_pd_resp uresp = {.pdn = pd->pdn}; + struct hns_roce_ib_alloc_pd_resp resp = {.pdn = pd->pdn}; - if (ib_copy_to_udata(udata, &uresp, sizeof(uresp))) { + ret = ib_copy_to_udata(udata, &resp, + min(udata->outlen, sizeof(resp))); + if (ret) { hns_roce_pd_free(to_hr_dev(ib_dev), pd->pdn); - ibdev_err(ib_dev, "failed to copy to udata\n"); - return -EFAULT; + ibdev_err(ib_dev, "failed to copy to udata, ret = %d\n", ret); } } - return 0; + return ret; } void hns_roce_dealloc_pd(struct ib_pd *pd, struct ib_udata *udata) --- linux-azure-5.8-5.8.0.orig/drivers/infiniband/hw/hns/hns_roce_qp.c +++ linux-azure-5.8-5.8.0/drivers/infiniband/hw/hns/hns_roce_qp.c @@ -386,8 +386,7 @@ return -EINVAL; } - hr_qp->rq.max_gs = roundup_pow_of_two(max(1U, cap->max_recv_sge) + - HNS_ROCE_RESERVED_SGE); + hr_qp->rq.max_gs = roundup_pow_of_two(max(1U, cap->max_recv_sge)); if (hr_dev->caps.max_rq_sg <= HNS_ROCE_SGE_IN_WQE) hr_qp->rq.wqe_shift = ilog2(hr_dev->caps.max_rq_desc_sz); @@ -402,7 +401,7 @@ hr_qp->rq_inl_buf.wqe_cnt = 0; cap->max_recv_wr = cnt; - cap->max_recv_sge = hr_qp->rq.max_gs - HNS_ROCE_RESERVED_SGE; + cap->max_recv_sge = hr_qp->rq.max_gs; return 0; } @@ -445,7 +444,12 @@ } hr_qp->sge.sge_shift = HNS_ROCE_SGE_SHIFT; - hr_qp->sge.sge_cnt = cnt; + + /* If the number of extended sge is not zero, they MUST use the + * space of HNS_HW_PAGE_SIZE at least. + */ + hr_qp->sge.sge_cnt = cnt ? + max(cnt, (u32)HNS_HW_PAGE_SIZE / HNS_ROCE_SGE_SIZE) : 0; return 0; } @@ -872,9 +876,12 @@ } if (udata) { - if (ib_copy_from_udata(ucmd, udata, sizeof(*ucmd))) { - ibdev_err(ibdev, "Failed to copy QP ucmd\n"); - return -EFAULT; + ret = ib_copy_from_udata(ucmd, udata, + min(udata->inlen, sizeof(*ucmd))); + if (ret) { + ibdev_err(ibdev, + "failed to copy QP ucmd, ret = %d\n", ret); + return ret; } ret = set_user_sq_size(hr_dev, &init_attr->cap, hr_qp, ucmd); @@ -1172,8 +1179,10 @@ mutex_lock(&hr_qp->mutex); - cur_state = attr_mask & IB_QP_CUR_STATE ? - attr->cur_qp_state : (enum ib_qp_state)hr_qp->state; + if (attr_mask & IB_QP_CUR_STATE && attr->cur_qp_state != hr_qp->state) + goto out; + + cur_state = hr_qp->state; new_state = attr_mask & IB_QP_STATE ? attr->qp_state : cur_state; if (ibqp->uobject && --- linux-azure-5.8-5.8.0.orig/drivers/infiniband/hw/hns/hns_roce_srq.c +++ linux-azure-5.8-5.8.0/drivers/infiniband/hw/hns/hns_roce_srq.c @@ -297,10 +297,11 @@ spin_lock_init(&srq->lock); srq->wqe_cnt = roundup_pow_of_two(init_attr->attr.max_wr + 1); - srq->max_gs = init_attr->attr.max_sge + HNS_ROCE_RESERVED_SGE; + srq->max_gs = init_attr->attr.max_sge; if (udata) { - ret = ib_copy_from_udata(&ucmd, udata, sizeof(ucmd)); + ret = ib_copy_from_udata(&ucmd, udata, + min(udata->inlen, sizeof(ucmd))); if (ret) { ibdev_err(ibdev, "Failed to copy SRQ udata, err %d\n", ret); @@ -343,11 +344,10 @@ resp.srqn = srq->srqn; if (udata) { - if (ib_copy_to_udata(udata, &resp, - min(udata->outlen, sizeof(resp)))) { - ret = -EFAULT; + ret = ib_copy_to_udata(udata, &resp, + min(udata->outlen, sizeof(resp))); + if (ret) goto err_srqc_alloc; - } } return 0; --- linux-azure-5.8-5.8.0.orig/drivers/infiniband/hw/i40iw/i40iw.h +++ linux-azure-5.8-5.8.0/drivers/infiniband/hw/i40iw/i40iw.h @@ -409,8 +409,8 @@ } /* i40iw.c */ -void i40iw_add_ref(struct ib_qp *); -void i40iw_rem_ref(struct ib_qp *); +void i40iw_qp_add_ref(struct ib_qp *ibqp); +void i40iw_qp_rem_ref(struct ib_qp *ibqp); struct ib_qp *i40iw_get_qp(struct ib_device *, int); void i40iw_flush_wqes(struct i40iw_device *iwdev, @@ -554,9 +554,8 @@ bool wait); void i40iw_receive_ilq(struct i40iw_sc_vsi *vsi, struct i40iw_puda_buf *rbuf); void i40iw_free_sqbuf(struct i40iw_sc_vsi *vsi, void *bufp); -void i40iw_free_qp_resources(struct i40iw_device *iwdev, - struct i40iw_qp *iwqp, - u32 qp_num); +void i40iw_free_qp_resources(struct i40iw_qp *iwqp); + enum i40iw_status_code i40iw_obj_aligned_mem(struct i40iw_device *iwdev, struct i40iw_dma_mem *memptr, u32 size, u32 mask); --- linux-azure-5.8-5.8.0.orig/drivers/infiniband/hw/i40iw/i40iw_cm.c +++ linux-azure-5.8-5.8.0/drivers/infiniband/hw/i40iw/i40iw_cm.c @@ -2322,7 +2322,7 @@ iwqp = cm_node->iwqp; if (iwqp) { iwqp->cm_node = NULL; - i40iw_rem_ref(&iwqp->ibqp); + i40iw_qp_rem_ref(&iwqp->ibqp); cm_node->iwqp = NULL; } else if (cm_node->qhash_set) { i40iw_get_addr_info(cm_node, &nfo); @@ -3452,7 +3452,7 @@ kfree(work); return; } - i40iw_add_ref(&iwqp->ibqp); + i40iw_qp_add_ref(&iwqp->ibqp); spin_unlock_irqrestore(&iwdev->qptable_lock, flags); work->iwqp = iwqp; @@ -3623,7 +3623,7 @@ kfree(dwork); i40iw_cm_disconn_true(iwqp); - i40iw_rem_ref(&iwqp->ibqp); + i40iw_qp_rem_ref(&iwqp->ibqp); } /** @@ -3745,7 +3745,7 @@ cm_node->lsmm_size = accept.size + conn_param->private_data_len; i40iw_cm_init_tsa_conn(iwqp, cm_node); cm_id->add_ref(cm_id); - i40iw_add_ref(&iwqp->ibqp); + i40iw_qp_add_ref(&iwqp->ibqp); attr.qp_state = IB_QPS_RTS; cm_node->qhash_set = false; @@ -3908,7 +3908,7 @@ iwqp->cm_node = cm_node; cm_node->iwqp = iwqp; iwqp->cm_id = cm_id; - i40iw_add_ref(&iwqp->ibqp); + i40iw_qp_add_ref(&iwqp->ibqp); if (cm_node->state != I40IW_CM_STATE_OFFLOADED) { cm_node->state = I40IW_CM_STATE_SYN_SENT; --- linux-azure-5.8-5.8.0.orig/drivers/infiniband/hw/i40iw/i40iw_hw.c +++ linux-azure-5.8-5.8.0/drivers/infiniband/hw/i40iw/i40iw_hw.c @@ -313,7 +313,7 @@ __func__, info->qp_cq_id); continue; } - i40iw_add_ref(&iwqp->ibqp); + i40iw_qp_add_ref(&iwqp->ibqp); spin_unlock_irqrestore(&iwdev->qptable_lock, flags); qp = &iwqp->sc_qp; spin_lock_irqsave(&iwqp->lock, flags); @@ -427,7 +427,7 @@ break; } if (info->qp) - i40iw_rem_ref(&iwqp->ibqp); + i40iw_qp_rem_ref(&iwqp->ibqp); } while (1); if (aeqcnt) --- linux-azure-5.8-5.8.0.orig/drivers/infiniband/hw/i40iw/i40iw_main.c +++ linux-azure-5.8-5.8.0/drivers/infiniband/hw/i40iw/i40iw_main.c @@ -54,10 +54,6 @@ #define DRV_VERSION __stringify(DRV_VERSION_MAJOR) "." \ __stringify(DRV_VERSION_MINOR) "." __stringify(DRV_VERSION_BUILD) -static int push_mode; -module_param(push_mode, int, 0644); -MODULE_PARM_DESC(push_mode, "Low latency mode: 0=disabled (default), 1=enabled)"); - static int debug; module_param(debug, int, 0644); MODULE_PARM_DESC(debug, "debug flags: 0=disabled (default), 0x7fffffff=all"); @@ -1582,7 +1578,6 @@ if (status) goto exit; iwdev->obj_next = iwdev->obj_mem; - iwdev->push_mode = push_mode; init_waitqueue_head(&iwdev->vchnl_waitq); init_waitqueue_head(&dev->vf_reqs); --- linux-azure-5.8-5.8.0.orig/drivers/infiniband/hw/i40iw/i40iw_utils.c +++ linux-azure-5.8-5.8.0/drivers/infiniband/hw/i40iw/i40iw_utils.c @@ -480,25 +480,6 @@ } /** - * i40iw_free_qp - callback after destroy cqp completes - * @cqp_request: cqp request for destroy qp - * @num: not used - */ -static void i40iw_free_qp(struct i40iw_cqp_request *cqp_request, u32 num) -{ - struct i40iw_sc_qp *qp = (struct i40iw_sc_qp *)cqp_request->param; - struct i40iw_qp *iwqp = (struct i40iw_qp *)qp->back_qp; - struct i40iw_device *iwdev; - u32 qp_num = iwqp->ibqp.qp_num; - - iwdev = iwqp->iwdev; - - i40iw_rem_pdusecount(iwqp->iwpd, iwdev); - i40iw_free_qp_resources(iwdev, iwqp, qp_num); - i40iw_rem_devusecount(iwdev); -} - -/** * i40iw_wait_event - wait for completion * @iwdev: iwarp device * @cqp_request: cqp request to wait @@ -618,26 +599,23 @@ } /** - * i40iw_add_ref - add refcount for qp + * i40iw_qp_add_ref - add refcount for qp * @ibqp: iqarp qp */ -void i40iw_add_ref(struct ib_qp *ibqp) +void i40iw_qp_add_ref(struct ib_qp *ibqp) { struct i40iw_qp *iwqp = (struct i40iw_qp *)ibqp; - atomic_inc(&iwqp->refcount); + refcount_inc(&iwqp->refcount); } /** - * i40iw_rem_ref - rem refcount for qp and free if 0 + * i40iw_qp_rem_ref - rem refcount for qp and free if 0 * @ibqp: iqarp qp */ -void i40iw_rem_ref(struct ib_qp *ibqp) +void i40iw_qp_rem_ref(struct ib_qp *ibqp) { struct i40iw_qp *iwqp; - enum i40iw_status_code status; - struct i40iw_cqp_request *cqp_request; - struct cqp_commands_info *cqp_info; struct i40iw_device *iwdev; u32 qp_num; unsigned long flags; @@ -645,7 +623,7 @@ iwqp = to_iwqp(ibqp); iwdev = iwqp->iwdev; spin_lock_irqsave(&iwdev->qptable_lock, flags); - if (!atomic_dec_and_test(&iwqp->refcount)) { + if (!refcount_dec_and_test(&iwqp->refcount)) { spin_unlock_irqrestore(&iwdev->qptable_lock, flags); return; } @@ -653,25 +631,8 @@ qp_num = iwqp->ibqp.qp_num; iwdev->qp_table[qp_num] = NULL; spin_unlock_irqrestore(&iwdev->qptable_lock, flags); - cqp_request = i40iw_get_cqp_request(&iwdev->cqp, false); - if (!cqp_request) - return; - - cqp_request->callback_fcn = i40iw_free_qp; - cqp_request->param = (void *)&iwqp->sc_qp; - cqp_info = &cqp_request->info; - cqp_info->cqp_cmd = OP_QP_DESTROY; - cqp_info->post_sq = 1; - cqp_info->in.u.qp_destroy.qp = &iwqp->sc_qp; - cqp_info->in.u.qp_destroy.scratch = (uintptr_t)cqp_request; - cqp_info->in.u.qp_destroy.remove_hash_idx = true; - status = i40iw_handle_cqp_op(iwdev, cqp_request); - if (!status) - return; + complete(&iwqp->free_qp); - i40iw_rem_pdusecount(iwqp->iwpd, iwdev); - i40iw_free_qp_resources(iwdev, iwqp, qp_num); - i40iw_rem_devusecount(iwdev); } /** @@ -938,7 +899,7 @@ struct i40iw_sc_qp *qp = (struct i40iw_sc_qp *)&iwqp->sc_qp; i40iw_terminate_done(qp, 1); - i40iw_rem_ref(&iwqp->ibqp); + i40iw_qp_rem_ref(&iwqp->ibqp); } /** @@ -950,7 +911,7 @@ struct i40iw_qp *iwqp; iwqp = (struct i40iw_qp *)qp->back_qp; - i40iw_add_ref(&iwqp->ibqp); + i40iw_qp_add_ref(&iwqp->ibqp); timer_setup(&iwqp->terminate_timer, i40iw_terminate_timeout, 0); iwqp->terminate_timer.expires = jiffies + HZ; add_timer(&iwqp->terminate_timer); @@ -966,7 +927,7 @@ iwqp = (struct i40iw_qp *)qp->back_qp; if (del_timer(&iwqp->terminate_timer)) - i40iw_rem_ref(&iwqp->ibqp); + i40iw_qp_rem_ref(&iwqp->ibqp); } /** --- linux-azure-5.8-5.8.0.orig/drivers/infiniband/hw/i40iw/i40iw_verbs.c +++ linux-azure-5.8-5.8.0/drivers/infiniband/hw/i40iw/i40iw_verbs.c @@ -168,39 +168,16 @@ */ static int i40iw_mmap(struct ib_ucontext *context, struct vm_area_struct *vma) { - struct i40iw_ucontext *ucontext; - u64 db_addr_offset, push_offset, pfn; + struct i40iw_ucontext *ucontext = to_ucontext(context); + u64 dbaddr; - ucontext = to_ucontext(context); - if (ucontext->iwdev->sc_dev.is_pf) { - db_addr_offset = I40IW_DB_ADDR_OFFSET; - push_offset = I40IW_PUSH_OFFSET; - if (vma->vm_pgoff) - vma->vm_pgoff += I40IW_PF_FIRST_PUSH_PAGE_INDEX - 1; - } else { - db_addr_offset = I40IW_VF_DB_ADDR_OFFSET; - push_offset = I40IW_VF_PUSH_OFFSET; - if (vma->vm_pgoff) - vma->vm_pgoff += I40IW_VF_FIRST_PUSH_PAGE_INDEX - 1; - } - - vma->vm_pgoff += db_addr_offset >> PAGE_SHIFT; - - if (vma->vm_pgoff == (db_addr_offset >> PAGE_SHIFT)) { - vma->vm_page_prot = pgprot_noncached(vma->vm_page_prot); - } else { - if ((vma->vm_pgoff - (push_offset >> PAGE_SHIFT)) % 2) - vma->vm_page_prot = pgprot_noncached(vma->vm_page_prot); - else - vma->vm_page_prot = pgprot_writecombine(vma->vm_page_prot); - } + if (vma->vm_pgoff || vma->vm_end - vma->vm_start != PAGE_SIZE) + return -EINVAL; - pfn = vma->vm_pgoff + - (pci_resource_start(ucontext->iwdev->ldev->pcidev, 0) >> - PAGE_SHIFT); + dbaddr = I40IW_DB_ADDR_OFFSET + pci_resource_start(ucontext->iwdev->ldev->pcidev, 0); - return rdma_user_mmap_io(context, vma, pfn, PAGE_SIZE, - vma->vm_page_prot, NULL); + return rdma_user_mmap_io(context, vma, dbaddr >> PAGE_SHIFT, PAGE_SIZE, + pgprot_noncached(vma->vm_page_prot), NULL); } /** @@ -364,11 +341,11 @@ * @iwqp: qp ptr (user or kernel) * @qp_num: qp number assigned */ -void i40iw_free_qp_resources(struct i40iw_device *iwdev, - struct i40iw_qp *iwqp, - u32 qp_num) +void i40iw_free_qp_resources(struct i40iw_qp *iwqp) { struct i40iw_pbl *iwpbl = &iwqp->iwpbl; + struct i40iw_device *iwdev = iwqp->iwdev; + u32 qp_num = iwqp->ibqp.qp_num; i40iw_ieq_cleanup_qp(iwdev->vsi.ieq, &iwqp->sc_qp); i40iw_dealloc_push_page(iwdev, &iwqp->sc_qp); @@ -402,6 +379,10 @@ static int i40iw_destroy_qp(struct ib_qp *ibqp, struct ib_udata *udata) { struct i40iw_qp *iwqp = to_iwqp(ibqp); + struct ib_qp_attr attr; + struct i40iw_device *iwdev = iwqp->iwdev; + + memset(&attr, 0, sizeof(attr)); iwqp->destroyed = 1; @@ -416,7 +397,15 @@ } } - i40iw_rem_ref(&iwqp->ibqp); + attr.qp_state = IB_QPS_ERR; + i40iw_modify_qp(&iwqp->ibqp, &attr, IB_QP_STATE, NULL); + i40iw_qp_rem_ref(&iwqp->ibqp); + wait_for_completion(&iwqp->free_qp); + i40iw_cqp_qp_destroy_cmd(&iwdev->sc_dev, &iwqp->sc_qp); + i40iw_rem_pdusecount(iwqp->iwpd, iwdev); + i40iw_free_qp_resources(iwqp); + i40iw_rem_devusecount(iwdev); + return 0; } @@ -577,6 +566,7 @@ qp->back_qp = (void *)iwqp; qp->push_idx = I40IW_INVALID_PUSH_PAGE_INDEX; + iwqp->iwdev = iwdev; iwqp->ctx_info.iwarp_info = &iwqp->iwarp_info; if (i40iw_allocate_dma_mem(dev->hw, @@ -601,7 +591,6 @@ goto error; } - iwqp->iwdev = iwdev; iwqp->iwpd = iwpd; iwqp->ibqp.qp_num = qp_num; qp = &iwqp->sc_qp; @@ -715,7 +704,7 @@ goto error; } - i40iw_add_ref(&iwqp->ibqp); + refcount_set(&iwqp->refcount, 1); spin_lock_init(&iwqp->lock); iwqp->sig_all = (init_attr->sq_sig_type == IB_SIGNAL_ALL_WR) ? 1 : 0; iwdev->qp_table[qp_num] = iwqp; @@ -737,10 +726,11 @@ } init_completion(&iwqp->sq_drained); init_completion(&iwqp->rq_drained); + init_completion(&iwqp->free_qp); return &iwqp->ibqp; error: - i40iw_free_qp_resources(iwdev, iwqp, qp_num); + i40iw_free_qp_resources(iwqp); return ERR_PTR(err_code); } @@ -1053,7 +1043,7 @@ * @ib_cq: cq pointer * @udata: user data or NULL for kernel object */ -static void i40iw_destroy_cq(struct ib_cq *ib_cq, struct ib_udata *udata) +static int i40iw_destroy_cq(struct ib_cq *ib_cq, struct ib_udata *udata) { struct i40iw_cq *iwcq; struct i40iw_device *iwdev; @@ -1065,6 +1055,7 @@ i40iw_cq_wq_destroy(iwdev, cq); cq_free_resources(iwdev, iwcq); i40iw_rem_devusecount(iwdev); + return 0; } /** @@ -2656,13 +2647,13 @@ .get_hw_stats = i40iw_get_hw_stats, .get_port_immutable = i40iw_port_immutable, .iw_accept = i40iw_accept, - .iw_add_ref = i40iw_add_ref, + .iw_add_ref = i40iw_qp_add_ref, .iw_connect = i40iw_connect, .iw_create_listen = i40iw_create_listen, .iw_destroy_listen = i40iw_destroy_listen, .iw_get_qp = i40iw_get_qp, .iw_reject = i40iw_reject, - .iw_rem_ref = i40iw_rem_ref, + .iw_rem_ref = i40iw_qp_rem_ref, .map_mr_sg = i40iw_map_mr_sg, .mmap = i40iw_mmap, .modify_qp = i40iw_modify_qp, --- linux-azure-5.8-5.8.0.orig/drivers/infiniband/hw/i40iw/i40iw_verbs.h +++ linux-azure-5.8-5.8.0/drivers/infiniband/hw/i40iw/i40iw_verbs.h @@ -139,7 +139,7 @@ struct i40iw_qp_host_ctx_info ctx_info; struct i40iwarp_offload_info iwarp_info; void *allocated_buffer; - atomic_t refcount; + refcount_t refcount; struct iw_cm_id *cm_id; void *cm_node; struct ib_mr *lsmm_mr; @@ -174,5 +174,6 @@ struct i40iw_dma_mem ietf_mem; struct completion sq_drained; struct completion rq_drained; + struct completion free_qp; }; #endif --- linux-azure-5.8-5.8.0.orig/drivers/infiniband/hw/mlx4/cm.c +++ linux-azure-5.8-5.8.0/drivers/infiniband/hw/mlx4/cm.c @@ -280,6 +280,9 @@ if (!sriov->is_going_down && !id->scheduled_delete) { id->scheduled_delete = 1; schedule_delayed_work(&id->timeout, CM_CLEANUP_CACHE_TIMEOUT); + } else if (id->scheduled_delete) { + /* Adjust timeout if already scheduled */ + mod_delayed_work(system_wq, &id->timeout, CM_CLEANUP_CACHE_TIMEOUT); } spin_unlock_irqrestore(&sriov->going_down_lock, flags); spin_unlock(&sriov->id_map_lock); --- linux-azure-5.8-5.8.0.orig/drivers/infiniband/hw/mlx4/cq.c +++ linux-azure-5.8-5.8.0/drivers/infiniband/hw/mlx4/cq.c @@ -475,7 +475,7 @@ return err; } -void mlx4_ib_destroy_cq(struct ib_cq *cq, struct ib_udata *udata) +int mlx4_ib_destroy_cq(struct ib_cq *cq, struct ib_udata *udata) { struct mlx4_ib_dev *dev = to_mdev(cq->device); struct mlx4_ib_cq *mcq = to_mcq(cq); @@ -495,6 +495,7 @@ mlx4_db_free(dev->dev, &mcq->db); } ib_umem_release(mcq->umem); + return 0; } static void dump_cqe(void *cqe) --- linux-azure-5.8-5.8.0.orig/drivers/infiniband/hw/mlx4/mad.c +++ linux-azure-5.8-5.8.0/drivers/infiniband/hw/mlx4/mad.c @@ -1299,6 +1299,18 @@ spin_unlock_irqrestore(&dev->sriov.going_down_lock, flags); } +static void mlx4_ib_wire_comp_handler(struct ib_cq *cq, void *arg) +{ + unsigned long flags; + struct mlx4_ib_demux_pv_ctx *ctx = cq->cq_context; + struct mlx4_ib_dev *dev = to_mdev(ctx->ib_dev); + + spin_lock_irqsave(&dev->sriov.going_down_lock, flags); + if (!dev->sriov.is_going_down && ctx->state == DEMUX_PV_STATE_ACTIVE) + queue_work(ctx->wi_wq, &ctx->work); + spin_unlock_irqrestore(&dev->sriov.going_down_lock, flags); +} + static int mlx4_ib_post_pv_qp_buf(struct mlx4_ib_demux_pv_ctx *ctx, struct mlx4_ib_demux_pv_qp *tun_qp, int index) @@ -2001,7 +2013,8 @@ cq_size *= 2; cq_attr.cqe = cq_size; - ctx->cq = ib_create_cq(ctx->ib_dev, mlx4_ib_tunnel_comp_handler, + ctx->cq = ib_create_cq(ctx->ib_dev, + create_tun ? mlx4_ib_tunnel_comp_handler : mlx4_ib_wire_comp_handler, NULL, ctx, &cq_attr); if (IS_ERR(ctx->cq)) { ret = PTR_ERR(ctx->cq); @@ -2038,6 +2051,7 @@ INIT_WORK(&ctx->work, mlx4_ib_sqp_comp_worker); ctx->wq = to_mdev(ibdev)->sriov.demux[port - 1].wq; + ctx->wi_wq = to_mdev(ibdev)->sriov.demux[port - 1].wi_wq; ret = ib_req_notify_cq(ctx->cq, IB_CQ_NEXT_COMP); if (ret) { @@ -2181,7 +2195,7 @@ goto err_mcg; } - snprintf(name, sizeof name, "mlx4_ibt%d", port); + snprintf(name, sizeof(name), "mlx4_ibt%d", port); ctx->wq = alloc_ordered_workqueue(name, WQ_MEM_RECLAIM); if (!ctx->wq) { pr_err("Failed to create tunnelling WQ for port %d\n", port); @@ -2189,7 +2203,15 @@ goto err_wq; } - snprintf(name, sizeof name, "mlx4_ibud%d", port); + snprintf(name, sizeof(name), "mlx4_ibwi%d", port); + ctx->wi_wq = alloc_ordered_workqueue(name, WQ_MEM_RECLAIM); + if (!ctx->wi_wq) { + pr_err("Failed to create wire WQ for port %d\n", port); + ret = -ENOMEM; + goto err_wiwq; + } + + snprintf(name, sizeof(name), "mlx4_ibud%d", port); ctx->ud_wq = alloc_ordered_workqueue(name, WQ_MEM_RECLAIM); if (!ctx->ud_wq) { pr_err("Failed to create up/down WQ for port %d\n", port); @@ -2200,6 +2222,10 @@ return 0; err_udwq: + destroy_workqueue(ctx->wi_wq); + ctx->wi_wq = NULL; + +err_wiwq: destroy_workqueue(ctx->wq); ctx->wq = NULL; @@ -2247,12 +2273,14 @@ ctx->tun[i]->state = DEMUX_PV_STATE_DOWNING; } flush_workqueue(ctx->wq); + flush_workqueue(ctx->wi_wq); for (i = 0; i < dev->dev->caps.sqp_demux; i++) { destroy_pv_resources(dev, i, ctx->port, ctx->tun[i], 0); free_pv_object(dev, i, ctx->port); } kfree(ctx->tun); destroy_workqueue(ctx->ud_wq); + destroy_workqueue(ctx->wi_wq); destroy_workqueue(ctx->wq); } } --- linux-azure-5.8-5.8.0.orig/drivers/infiniband/hw/mlx4/main.c +++ linux-azure-5.8-5.8.0/drivers/infiniband/hw/mlx4/main.c @@ -784,7 +784,8 @@ props->ip_gids = true; props->gid_tbl_len = mdev->dev->caps.gid_table_len[port]; props->max_msg_sz = mdev->dev->caps.max_msg_sz; - props->pkey_tbl_len = 1; + if (mdev->dev->caps.pkey_table_len[port]) + props->pkey_tbl_len = 1; props->max_mtu = IB_MTU_4096; props->max_vl_num = 2; props->state = IB_PORT_DOWN; --- linux-azure-5.8-5.8.0.orig/drivers/infiniband/hw/mlx4/mlx4_ib.h +++ linux-azure-5.8-5.8.0/drivers/infiniband/hw/mlx4/mlx4_ib.h @@ -454,6 +454,7 @@ struct ib_pd *pd; struct work_struct work; struct workqueue_struct *wq; + struct workqueue_struct *wi_wq; struct mlx4_ib_demux_pv_qp qp[2]; }; @@ -461,6 +462,7 @@ struct ib_device *ib_dev; int port; struct workqueue_struct *wq; + struct workqueue_struct *wi_wq; struct workqueue_struct *ud_wq; spinlock_t ud_lock; atomic64_t subnet_prefix; @@ -736,7 +738,7 @@ int mlx4_ib_resize_cq(struct ib_cq *ibcq, int entries, struct ib_udata *udata); int mlx4_ib_create_cq(struct ib_cq *ibcq, const struct ib_cq_init_attr *attr, struct ib_udata *udata); -void mlx4_ib_destroy_cq(struct ib_cq *cq, struct ib_udata *udata); +int mlx4_ib_destroy_cq(struct ib_cq *cq, struct ib_udata *udata); int mlx4_ib_poll_cq(struct ib_cq *ibcq, int num_entries, struct ib_wc *wc); int mlx4_ib_arm_cq(struct ib_cq *cq, enum ib_cq_notify_flags flags); void __mlx4_ib_cq_clean(struct mlx4_ib_cq *cq, u32 qpn, struct mlx4_ib_srq *srq); --- linux-azure-5.8-5.8.0.orig/drivers/infiniband/hw/mlx4/mr.c +++ linux-azure-5.8-5.8.0/drivers/infiniband/hw/mlx4/mr.c @@ -439,7 +439,6 @@ mr->ibmr.rkey = mr->ibmr.lkey = mr->mmr.key; mr->ibmr.length = length; - mr->ibmr.iova = virt_addr; mr->ibmr.page_size = 1U << shift; return &mr->ibmr; --- linux-azure-5.8-5.8.0.orig/drivers/infiniband/hw/mlx5/cq.c +++ linux-azure-5.8-5.8.0/drivers/infiniband/hw/mlx5/cq.c @@ -168,7 +168,7 @@ { enum rdma_link_layer ll = rdma_port_get_link_layer(qp->ibqp.device, 1); struct mlx5_ib_dev *dev = to_mdev(qp->ibqp.device); - struct mlx5_ib_srq *srq; + struct mlx5_ib_srq *srq = NULL; struct mlx5_ib_wq *wq; u16 wqe_ctr; u8 roce_packet_type; @@ -180,7 +180,8 @@ if (qp->ibqp.xrcd) { msrq = mlx5_cmd_get_srq(dev, be32_to_cpu(cqe->srqn)); - srq = to_mibsrq(msrq); + if (msrq) + srq = to_mibsrq(msrq); } else { srq = to_msrq(qp->ibqp.srq); } @@ -1023,16 +1024,21 @@ return err; } -void mlx5_ib_destroy_cq(struct ib_cq *cq, struct ib_udata *udata) +int mlx5_ib_destroy_cq(struct ib_cq *cq, struct ib_udata *udata) { struct mlx5_ib_dev *dev = to_mdev(cq->device); struct mlx5_ib_cq *mcq = to_mcq(cq); + int ret; + + ret = mlx5_core_destroy_cq(dev->mdev, &mcq->mcq); + if (ret) + return ret; - mlx5_core_destroy_cq(dev->mdev, &mcq->mcq); if (udata) destroy_cq_user(mcq, udata); else destroy_cq_kernel(dev, mcq); + return 0; } static int is_equal_rsn(struct mlx5_cqe64 *cqe64, u32 rsn) --- linux-azure-5.8-5.8.0.orig/drivers/infiniband/hw/mlx5/devx.c +++ linux-azure-5.8-5.8.0/drivers/infiniband/hw/mlx5/devx.c @@ -1124,7 +1124,9 @@ MLX5_SET(general_obj_in_cmd_hdr, din, opcode, MLX5_CMD_OP_DESTROY_RQT); break; case MLX5_CMD_OP_CREATE_TIR: - MLX5_SET(general_obj_in_cmd_hdr, din, opcode, MLX5_CMD_OP_DESTROY_TIR); + *obj_id = MLX5_GET(create_tir_out, out, tirn); + MLX5_SET(destroy_tir_in, din, opcode, MLX5_CMD_OP_DESTROY_TIR); + MLX5_SET(destroy_tir_in, din, tirn, *obj_id); break; case MLX5_CMD_OP_CREATE_TIS: MLX5_SET(general_obj_in_cmd_hdr, din, opcode, MLX5_CMD_OP_DESTROY_TIS); --- linux-azure-5.8-5.8.0.orig/drivers/infiniband/hw/mlx5/main.c +++ linux-azure-5.8-5.8.0/drivers/infiniband/hw/mlx5/main.c @@ -867,7 +867,9 @@ /* We support 'Gappy' memory registration too */ props->device_cap_flags |= IB_DEVICE_SG_GAPS_REG; } - props->device_cap_flags |= IB_DEVICE_MEM_MGT_EXTENSIONS; + /* IB_WR_REG_MR always requires changing the entity size with UMR */ + if (!MLX5_CAP_GEN(dev->mdev, umr_modify_entity_size_disabled)) + props->device_cap_flags |= IB_DEVICE_MEM_MGT_EXTENSIONS; if (MLX5_CAP_GEN(mdev, sho)) { props->device_cap_flags |= IB_DEVICE_INTEGRITY_HANDOVER; /* At this stage no support for signature handover */ @@ -6474,7 +6476,7 @@ mlx5_ib_cleanup_multiport_master(dev); WARN_ON(!xa_empty(&dev->odp_mkeys)); cleanup_srcu_struct(&dev->odp_srcu); - + mutex_destroy(&dev->cap_mask_mutex); WARN_ON(!xa_empty(&dev->sig_mrs)); WARN_ON(!bitmap_empty(dev->dm.memic_alloc_pages, MLX5_MAX_MEMIC_PAGES)); } @@ -6501,7 +6503,7 @@ err = set_has_smi_cap(dev); if (err) - return err; + goto err_mp; if (!mlx5_core_mp_enabled(mdev)) { for (i = 1; i <= dev->num_ports; i++) { @@ -6525,6 +6527,10 @@ dev->ib_dev.dev.parent = mdev->device; dev->ib_dev.lag_flags = RDMA_LAG_FLAGS_HASH_ALL_SLAVES; + err = init_srcu_struct(&dev->odp_srcu); + if (err) + goto err_mp; + mutex_init(&dev->cap_mask_mutex); INIT_LIST_HEAD(&dev->qp_list); spin_lock_init(&dev->reset_flow_resource_lock); @@ -6534,17 +6540,11 @@ spin_lock_init(&dev->dm.lock); dev->dm.dev = mdev; - - err = init_srcu_struct(&dev->odp_srcu); - if (err) - goto err_mp; - return 0; err_mp: mlx5_ib_cleanup_multiport_master(dev); - - return -ENOMEM; + return err; } static int mlx5_ib_stage_flow_db_init(struct mlx5_ib_dev *dev) @@ -6998,7 +6998,7 @@ err = mlx5_alloc_bfreg(dev->mdev, &dev->fp_bfreg, false, true); if (err) - mlx5_free_bfreg(dev->mdev, &dev->fp_bfreg); + mlx5_free_bfreg(dev->mdev, &dev->bfreg); return err; } --- linux-azure-5.8-5.8.0.orig/drivers/infiniband/hw/mlx5/mlx5_ib.h +++ linux-azure-5.8-5.8.0/drivers/infiniband/hw/mlx5/mlx5_ib.h @@ -1180,7 +1180,7 @@ size_t buflen, size_t *bc); int mlx5_ib_create_cq(struct ib_cq *ibcq, const struct ib_cq_init_attr *attr, struct ib_udata *udata); -void mlx5_ib_destroy_cq(struct ib_cq *cq, struct ib_udata *udata); +int mlx5_ib_destroy_cq(struct ib_cq *cq, struct ib_udata *udata); int mlx5_ib_poll_cq(struct ib_cq *ibcq, int num_entries, struct ib_wc *wc); int mlx5_ib_arm_cq(struct ib_cq *ibcq, enum ib_cq_notify_flags flags); int mlx5_ib_modify_cq(struct ib_cq *cq, u16 cq_count, u16 cq_period); --- linux-azure-5.8-5.8.0.orig/drivers/infiniband/hw/mlx5/mr.c +++ linux-azure-5.8-5.8.0/drivers/infiniband/hw/mlx5/mr.c @@ -50,6 +50,29 @@ static void create_mkey_callback(int status, struct mlx5_async_work *context); +static void set_mkc_access_pd_addr_fields(void *mkc, int acc, u64 start_addr, + struct ib_pd *pd) +{ + struct mlx5_ib_dev *dev = to_mdev(pd->device); + + MLX5_SET(mkc, mkc, a, !!(acc & IB_ACCESS_REMOTE_ATOMIC)); + MLX5_SET(mkc, mkc, rw, !!(acc & IB_ACCESS_REMOTE_WRITE)); + MLX5_SET(mkc, mkc, rr, !!(acc & IB_ACCESS_REMOTE_READ)); + MLX5_SET(mkc, mkc, lw, !!(acc & IB_ACCESS_LOCAL_WRITE)); + MLX5_SET(mkc, mkc, lr, 1); + + if (MLX5_CAP_GEN(dev->mdev, relaxed_ordering_write)) + MLX5_SET(mkc, mkc, relaxed_ordering_write, + !!(acc & IB_ACCESS_RELAXED_ORDERING)); + if (MLX5_CAP_GEN(dev->mdev, relaxed_ordering_read)) + MLX5_SET(mkc, mkc, relaxed_ordering_read, + !!(acc & IB_ACCESS_RELAXED_ORDERING)); + + MLX5_SET(mkc, mkc, pd, to_mpd(pd)->pdn); + MLX5_SET(mkc, mkc, qpn, 0xffffff); + MLX5_SET64(mkc, mkc, start_addr, start_addr); +} + static void assign_mkey_variant(struct mlx5_ib_dev *dev, struct mlx5_core_mkey *mkey, u32 *in) @@ -152,12 +175,12 @@ mr->cache_ent = ent; mr->dev = ent->dev; + set_mkc_access_pd_addr_fields(mkc, 0, 0, ent->dev->umrc.pd); MLX5_SET(mkc, mkc, free, 1); MLX5_SET(mkc, mkc, umr_en, 1); MLX5_SET(mkc, mkc, access_mode_1_0, ent->access_mode & 0x3); MLX5_SET(mkc, mkc, access_mode_4_2, (ent->access_mode >> 2) & 0x7); - MLX5_SET(mkc, mkc, qpn, 0xffffff); MLX5_SET(mkc, mkc, translations_octword_size, ent->xlt); MLX5_SET(mkc, mkc, log_page_size, ent->page); return mr; @@ -613,6 +636,7 @@ if (mlx5_mr_cache_invalidate(mr)) { detach_mr_from_cache(mr); destroy_mkey(dev, mr); + kfree(mr); return; } @@ -774,29 +798,6 @@ return 0; } -static void set_mkc_access_pd_addr_fields(void *mkc, int acc, u64 start_addr, - struct ib_pd *pd) -{ - struct mlx5_ib_dev *dev = to_mdev(pd->device); - - MLX5_SET(mkc, mkc, a, !!(acc & IB_ACCESS_REMOTE_ATOMIC)); - MLX5_SET(mkc, mkc, rw, !!(acc & IB_ACCESS_REMOTE_WRITE)); - MLX5_SET(mkc, mkc, rr, !!(acc & IB_ACCESS_REMOTE_READ)); - MLX5_SET(mkc, mkc, lw, !!(acc & IB_ACCESS_LOCAL_WRITE)); - MLX5_SET(mkc, mkc, lr, 1); - - if (MLX5_CAP_GEN(dev->mdev, relaxed_ordering_write)) - MLX5_SET(mkc, mkc, relaxed_ordering_write, - !!(acc & IB_ACCESS_RELAXED_ORDERING)); - if (MLX5_CAP_GEN(dev->mdev, relaxed_ordering_read)) - MLX5_SET(mkc, mkc, relaxed_ordering_read, - !!(acc & IB_ACCESS_RELAXED_ORDERING)); - - MLX5_SET(mkc, mkc, pd, to_mpd(pd)->pdn); - MLX5_SET(mkc, mkc, qpn, 0xffffff); - MLX5_SET64(mkc, mkc, start_addr, start_addr); -} - struct ib_mr *mlx5_ib_get_dma_mr(struct ib_pd *pd, int acc) { struct mlx5_ib_dev *dev = to_mdev(pd->device); @@ -1028,6 +1029,10 @@ !umr_can_use_indirect_mkey(dev)) return -EPERM; + if ((flags & MLX5_IB_UPD_XLT_INDIRECT) && + !umr_can_use_indirect_mkey(dev)) + return -EPERM; + /* UMR copies MTTs in units of MLX5_UMR_MTT_ALIGNMENT bytes, * so we need to align the offset and length accordingly */ @@ -1190,29 +1195,17 @@ MLX5_SET(create_mkey_in, in, pg_access, !!(pg_cap)); mkc = MLX5_ADDR_OF(create_mkey_in, in, memory_key_mkey_entry); + set_mkc_access_pd_addr_fields(mkc, access_flags, virt_addr, + populate ? pd : dev->umrc.pd); MLX5_SET(mkc, mkc, free, !populate); MLX5_SET(mkc, mkc, access_mode_1_0, MLX5_MKC_ACCESS_MODE_MTT); - if (MLX5_CAP_GEN(dev->mdev, relaxed_ordering_write)) - MLX5_SET(mkc, mkc, relaxed_ordering_write, - !!(access_flags & IB_ACCESS_RELAXED_ORDERING)); - if (MLX5_CAP_GEN(dev->mdev, relaxed_ordering_read)) - MLX5_SET(mkc, mkc, relaxed_ordering_read, - !!(access_flags & IB_ACCESS_RELAXED_ORDERING)); - MLX5_SET(mkc, mkc, a, !!(access_flags & IB_ACCESS_REMOTE_ATOMIC)); - MLX5_SET(mkc, mkc, rw, !!(access_flags & IB_ACCESS_REMOTE_WRITE)); - MLX5_SET(mkc, mkc, rr, !!(access_flags & IB_ACCESS_REMOTE_READ)); - MLX5_SET(mkc, mkc, lw, !!(access_flags & IB_ACCESS_LOCAL_WRITE)); - MLX5_SET(mkc, mkc, lr, 1); MLX5_SET(mkc, mkc, umr_en, 1); - MLX5_SET64(mkc, mkc, start_addr, virt_addr); MLX5_SET64(mkc, mkc, len, length); - MLX5_SET(mkc, mkc, pd, to_mpd(pd)->pdn); MLX5_SET(mkc, mkc, bsf_octword_size, 0); MLX5_SET(mkc, mkc, translations_octword_size, get_octo_len(virt_addr, length, page_shift)); MLX5_SET(mkc, mkc, log_page_size, page_shift); - MLX5_SET(mkc, mkc, qpn, 0xffffff); if (populate) { MLX5_SET(create_mkey_in, in, translations_octword_actual_size, get_octo_len(virt_addr, length, page_shift)); @@ -1243,10 +1236,8 @@ } static void set_mr_fields(struct mlx5_ib_dev *dev, struct mlx5_ib_mr *mr, - int npages, u64 length, int access_flags) + u64 length, int access_flags) { - mr->npages = npages; - atomic_add(npages, &dev->mdev->priv.reg_pages); mr->ibmr.lkey = mr->mmkey.key; mr->ibmr.rkey = mr->mmkey.key; mr->ibmr.length = length; @@ -1286,8 +1277,7 @@ kfree(in); - mr->umem = NULL; - set_mr_fields(dev, mr, 0, length, acc); + set_mr_fields(dev, mr, length, acc); return &mr->ibmr; @@ -1420,7 +1410,9 @@ mlx5_ib_dbg(dev, "mkey 0x%x\n", mr->mmkey.key); mr->umem = umem; - set_mr_fields(dev, mr, npages, length, access_flags); + mr->npages = npages; + atomic_add(mr->npages, &dev->mdev->priv.reg_pages); + set_mr_fields(dev, mr, length, access_flags); if (use_umr) { int update_xlt_flags = MLX5_IB_UPD_XLT_ENABLE; @@ -1525,8 +1517,6 @@ mlx5_ib_dbg(dev, "start 0x%llx, virt_addr 0x%llx, length 0x%llx, access_flags 0x%x\n", start, virt_addr, length, access_flags); - atomic_sub(mr->npages, &dev->mdev->priv.reg_pages); - if (!mr->umem) return -EINVAL; @@ -1547,12 +1537,17 @@ * used. */ flags |= IB_MR_REREG_TRANS; + atomic_sub(mr->npages, &dev->mdev->priv.reg_pages); + mr->npages = 0; ib_umem_release(mr->umem); mr->umem = NULL; + err = mr_umem_get(dev, addr, len, access_flags, &mr->umem, &npages, &page_shift, &ncont, &order); if (err) goto err; + mr->npages = ncont; + atomic_add(mr->npages, &dev->mdev->priv.reg_pages); } if (!mlx5_ib_can_use_umr(dev, true, access_flags) || @@ -1600,7 +1595,7 @@ goto err; } - set_mr_fields(dev, mr, npages, len, access_flags); + set_mr_fields(dev, mr, len, access_flags); return 0; --- linux-azure-5.8-5.8.0.orig/drivers/infiniband/hw/mthca/mthca_cq.c +++ linux-azure-5.8-5.8.0/drivers/infiniband/hw/mthca/mthca_cq.c @@ -604,7 +604,7 @@ entry->byte_len = MTHCA_ATOMIC_BYTE_LEN; break; default: - entry->opcode = MTHCA_OPCODE_INVALID; + entry->opcode = 0xFF; break; } } else { @@ -803,8 +803,10 @@ } mailbox = mthca_alloc_mailbox(dev, GFP_KERNEL); - if (IS_ERR(mailbox)) + if (IS_ERR(mailbox)) { + err = PTR_ERR(mailbox); goto err_out_arm; + } cq_context = mailbox->buf; @@ -846,9 +848,9 @@ } spin_lock_irq(&dev->cq_table.lock); - if (mthca_array_set(&dev->cq_table.cq, - cq->cqn & (dev->limits.num_cqs - 1), - cq)) { + err = mthca_array_set(&dev->cq_table.cq, + cq->cqn & (dev->limits.num_cqs - 1), cq); + if (err) { spin_unlock_irq(&dev->cq_table.lock); goto err_out_free_mr; } --- linux-azure-5.8-5.8.0.orig/drivers/infiniband/hw/mthca/mthca_dev.h +++ linux-azure-5.8-5.8.0/drivers/infiniband/hw/mthca/mthca_dev.h @@ -105,7 +105,6 @@ MTHCA_OPCODE_ATOMIC_CS = 0x11, MTHCA_OPCODE_ATOMIC_FA = 0x12, MTHCA_OPCODE_BIND_MW = 0x18, - MTHCA_OPCODE_INVALID = 0xff }; enum { --- linux-azure-5.8-5.8.0.orig/drivers/infiniband/hw/mthca/mthca_provider.c +++ linux-azure-5.8-5.8.0/drivers/infiniband/hw/mthca/mthca_provider.c @@ -789,7 +789,7 @@ return ret; } -static void mthca_destroy_cq(struct ib_cq *cq, struct ib_udata *udata) +static int mthca_destroy_cq(struct ib_cq *cq, struct ib_udata *udata) { if (udata) { struct mthca_ucontext *context = @@ -808,6 +808,7 @@ to_mcq(cq)->set_ci_db_index); } mthca_free_cq(to_mdev(cq->device), to_mcq(cq)); + return 0; } static inline u32 convert_access(int acc) --- linux-azure-5.8-5.8.0.orig/drivers/infiniband/hw/ocrdma/ocrdma_verbs.c +++ linux-azure-5.8-5.8.0/drivers/infiniband/hw/ocrdma/ocrdma_verbs.c @@ -434,9 +434,9 @@ pr_err("%s(%d) Freeing in use pdid=0x%x.\n", __func__, dev->id, pd->id); } - kfree(uctx->cntxt_pd); uctx->cntxt_pd = NULL; _ocrdma_dealloc_pd(dev, pd); + kfree(pd); } static struct ocrdma_pd *ocrdma_get_ucontext_pd(struct ocrdma_ucontext *uctx) @@ -1056,7 +1056,7 @@ spin_unlock_irqrestore(&cq->cq_lock, flags); } -void ocrdma_destroy_cq(struct ib_cq *ibcq, struct ib_udata *udata) +int ocrdma_destroy_cq(struct ib_cq *ibcq, struct ib_udata *udata) { struct ocrdma_cq *cq = get_ocrdma_cq(ibcq); struct ocrdma_eq *eq = NULL; @@ -1081,6 +1081,7 @@ ocrdma_get_db_addr(dev, pdid), dev->nic_info.db_page_size); } + return 0; } static int ocrdma_add_qpn_map(struct ocrdma_dev *dev, struct ocrdma_qp *qp) --- linux-azure-5.8-5.8.0.orig/drivers/infiniband/hw/ocrdma/ocrdma_verbs.h +++ linux-azure-5.8-5.8.0/drivers/infiniband/hw/ocrdma/ocrdma_verbs.h @@ -72,7 +72,7 @@ int ocrdma_create_cq(struct ib_cq *ibcq, const struct ib_cq_init_attr *attr, struct ib_udata *udata); int ocrdma_resize_cq(struct ib_cq *, int cqe, struct ib_udata *); -void ocrdma_destroy_cq(struct ib_cq *ibcq, struct ib_udata *udata); +int ocrdma_destroy_cq(struct ib_cq *ibcq, struct ib_udata *udata); struct ib_qp *ocrdma_create_qp(struct ib_pd *, struct ib_qp_init_attr *attrs, --- linux-azure-5.8-5.8.0.orig/drivers/infiniband/hw/qedr/main.c +++ linux-azure-5.8-5.8.0/drivers/infiniband/hw/qedr/main.c @@ -601,7 +601,7 @@ qed_attr = dev->ops->rdma_query_device(dev->rdma_ctx); /* Part 2 - check capabilities */ - page_size = ~dev->attr.page_size_caps + 1; + page_size = ~qed_attr->page_size_caps + 1; if (page_size > PAGE_SIZE) { DP_ERR(dev, "Kernel PAGE_SIZE is %ld which is smaller than minimum page size (%d) required by qedr\n", --- linux-azure-5.8-5.8.0.orig/drivers/infiniband/hw/qedr/qedr.h +++ linux-azure-5.8-5.8.0/drivers/infiniband/hw/qedr/qedr.h @@ -235,6 +235,7 @@ u32 dpi_size; u16 dpi; bool db_rec; + u8 edpm_mode; }; union db_prod32 { @@ -344,10 +345,10 @@ u32 wqe_prod; u32 sge_prod; u32 wr_prod_cnt; - u32 wr_cons_cnt; + atomic_t wr_cons_cnt; u32 num_elems; - u32 *virt_prod_pair_addr; + struct rdma_srq_producers *virt_prod_pair_addr; dma_addr_t phy_prod_pair_addr; }; --- linux-azure-5.8-5.8.0.orig/drivers/infiniband/hw/qedr/qedr_iw_cm.c +++ linux-azure-5.8-5.8.0/drivers/infiniband/hw/qedr/qedr_iw_cm.c @@ -727,6 +727,7 @@ listener->qed_handle); cm_id->rem_ref(cm_id); + kfree(listener); return rc; } @@ -736,7 +737,7 @@ struct qedr_dev *dev = ep->dev; struct qedr_qp *qp; struct qed_iwarp_accept_in params; - int rc = 0; + int rc; DP_DEBUG(dev, QEDR_MSG_IWARP, "Accept on qpid=%d\n", conn_param->qpn); @@ -759,8 +760,10 @@ params.ord = conn_param->ord; if (test_and_set_bit(QEDR_IWARP_CM_WAIT_FOR_CONNECT, - &qp->iwarp_cm_flags)) + &qp->iwarp_cm_flags)) { + rc = -EINVAL; goto err; /* QP already destroyed */ + } rc = dev->ops->iwarp_accept(dev->rdma_ctx, ¶ms); if (rc) { --- linux-azure-5.8-5.8.0.orig/drivers/infiniband/hw/qedr/verbs.c +++ linux-azure-5.8-5.8.0/drivers/infiniband/hw/qedr/verbs.c @@ -275,7 +275,8 @@ DP_ERR(dev, "Problem copying data from user space\n"); return -EFAULT; } - + ctx->edpm_mode = !!(ureq.context_flags & + QEDR_ALLOC_UCTX_EDPM_MODE); ctx->db_rec = !!(ureq.context_flags & QEDR_ALLOC_UCTX_DB_REC); } @@ -316,11 +317,15 @@ uresp.dpm_flags = QEDR_DPM_TYPE_IWARP_LEGACY; else uresp.dpm_flags = QEDR_DPM_TYPE_ROCE_ENHANCED | - QEDR_DPM_TYPE_ROCE_LEGACY; + QEDR_DPM_TYPE_ROCE_LEGACY | + QEDR_DPM_TYPE_ROCE_EDPM_MODE; - uresp.dpm_flags |= QEDR_DPM_SIZES_SET; - uresp.ldpm_limit_size = QEDR_LDPM_MAX_SIZE; - uresp.edpm_trans_size = QEDR_EDPM_TRANS_SIZE; + if (ureq.context_flags & QEDR_SUPPORT_DPM_SIZES) { + uresp.dpm_flags |= QEDR_DPM_SIZES_SET; + uresp.ldpm_limit_size = QEDR_LDPM_MAX_SIZE; + uresp.edpm_trans_size = QEDR_EDPM_TRANS_SIZE; + uresp.edpm_limit_size = QEDR_EDPM_MAX_SIZE; + } uresp.wids_enabled = 1; uresp.wid_count = oparams.wid_count; @@ -993,7 +998,7 @@ /* Generate doorbell address. */ cq->db.data.icid = cq->icid; cq->db_addr = dev->db_addr + db_offset; - cq->db.data.params = DB_AGG_CMD_SET << + cq->db.data.params = DB_AGG_CMD_MAX << RDMA_PWM_VAL32_DATA_AGG_CMD_SHIFT; /* point to the very last element, passing it we will toggle */ @@ -1045,7 +1050,7 @@ #define QEDR_DESTROY_CQ_MAX_ITERATIONS (10) #define QEDR_DESTROY_CQ_ITER_DURATION (10) -void qedr_destroy_cq(struct ib_cq *ibcq, struct ib_udata *udata) +int qedr_destroy_cq(struct ib_cq *ibcq, struct ib_udata *udata) { struct qedr_dev *dev = get_qedr_dev(ibcq->device); struct qed_rdma_destroy_cq_out_params oparams; @@ -1060,7 +1065,7 @@ /* GSIs CQs are handled by driver, so they don't exist in the FW */ if (cq->cq_type == QEDR_CQ_TYPE_GSI) { qedr_db_recovery_del(dev, cq->db_addr, &cq->db.data); - return; + return 0; } iparams.icid = cq->icid; @@ -1108,6 +1113,7 @@ * Since the destroy CQ ramrod has also been received on the EQ we can * be certain that there's no event handler in process. */ + return 0; } static inline int get_gid_info_from_table(struct ib_qp *ibqp, @@ -1750,7 +1756,7 @@ struct qed_rdma_create_qp_out_params out_params; struct qedr_pd *pd = get_qedr_pd(ibpd); struct qedr_create_qp_uresp uresp; - struct qedr_ucontext *ctx = NULL; + struct qedr_ucontext *ctx = pd ? pd->uctx : NULL; struct qedr_create_qp_ureq ureq; int alloc_and_init = rdma_protocol_roce(&dev->ibdev, 1); int rc = -EINVAL; @@ -1788,6 +1794,9 @@ in_params.rq_pbl_ptr = qp->urq.pbl_tbl->pa; } + if (ctx) + SET_FIELD(in_params.flags, QED_ROCE_EDPM_MODE, ctx->edpm_mode); + qp->qed_qp = dev->ops->rdma_create_qp(dev->rdma_ctx, &in_params, &out_params); @@ -2104,6 +2113,28 @@ return rc; } +static int qedr_free_qp_resources(struct qedr_dev *dev, struct qedr_qp *qp, + struct ib_udata *udata) +{ + struct qedr_ucontext *ctx = + rdma_udata_to_drv_context(udata, struct qedr_ucontext, + ibucontext); + int rc; + + if (qp->qp_type != IB_QPT_GSI) { + rc = dev->ops->rdma_destroy_qp(dev->rdma_ctx, qp->qed_qp); + if (rc) + return rc; + } + + if (qp->create_type == QEDR_QP_CREATE_USER) + qedr_cleanup_user(dev, ctx, qp); + else + qedr_cleanup_kernel(dev, qp); + + return 0; +} + struct ib_qp *qedr_create_qp(struct ib_pd *ibpd, struct ib_qp_init_attr *attrs, struct ib_udata *udata) @@ -2150,19 +2181,21 @@ rc = qedr_create_kernel_qp(dev, qp, ibpd, attrs); if (rc) - goto err; + goto out_free_qp; qp->ibqp.qp_num = qp->qp_id; if (rdma_protocol_iwarp(&dev->ibdev, 1)) { rc = xa_insert(&dev->qps, qp->qp_id, qp, GFP_KERNEL); if (rc) - goto err; + goto out_free_qp_resources; } return &qp->ibqp; -err: +out_free_qp_resources: + qedr_free_qp_resources(dev, qp, udata); +out_free_qp: kfree(qp); return ERR_PTR(-EFAULT); @@ -2628,7 +2661,7 @@ qp_attr->cap.max_recv_wr = qp->rq.max_wr; qp_attr->cap.max_send_sge = qp->sq.max_sges; qp_attr->cap.max_recv_sge = qp->rq.max_sges; - qp_attr->cap.max_inline_data = ROCE_REQ_MAX_INLINE_DATA_SIZE; + qp_attr->cap.max_inline_data = dev->attr.max_inline; qp_init_attr->cap = qp_attr->cap; qp_attr->ah_attr.type = RDMA_AH_ATTR_TYPE_ROCE; @@ -2663,28 +2696,6 @@ return rc; } -static int qedr_free_qp_resources(struct qedr_dev *dev, struct qedr_qp *qp, - struct ib_udata *udata) -{ - struct qedr_ucontext *ctx = - rdma_udata_to_drv_context(udata, struct qedr_ucontext, - ibucontext); - int rc; - - if (qp->qp_type != IB_QPT_GSI) { - rc = dev->ops->rdma_destroy_qp(dev->rdma_ctx, qp->qed_qp); - if (rc) - return rc; - } - - if (qp->create_type == QEDR_QP_CREATE_USER) - qedr_cleanup_user(dev, ctx, qp); - else - qedr_cleanup_kernel(dev, qp); - - return 0; -} - int qedr_destroy_qp(struct ib_qp *ibqp, struct ib_udata *udata) { struct qedr_qp *qp = get_qedr_qp(ibqp); @@ -2744,6 +2755,8 @@ if (rdma_protocol_iwarp(&dev->ibdev, 1)) qedr_iw_qp_rem_ref(&qp->ibqp); + else + kfree(qp); return 0; } @@ -3686,7 +3699,7 @@ * count and consumer count and subtract it from max * work request supported so that we get elements left. */ - used = hw_srq->wr_prod_cnt - hw_srq->wr_cons_cnt; + used = hw_srq->wr_prod_cnt - (u32)atomic_read(&hw_srq->wr_cons_cnt); return hw_srq->max_wr - used; } @@ -3701,7 +3714,6 @@ unsigned long flags; int status = 0; u32 num_sge; - u32 offset; spin_lock_irqsave(&srq->lock, flags); @@ -3714,7 +3726,8 @@ if (!qedr_srq_elem_left(hw_srq) || wr->num_sge > srq->hw_srq.max_sges) { DP_ERR(dev, "Can't post WR (%d,%d) || (%d > %d)\n", - hw_srq->wr_prod_cnt, hw_srq->wr_cons_cnt, + hw_srq->wr_prod_cnt, + atomic_read(&hw_srq->wr_cons_cnt), wr->num_sge, srq->hw_srq.max_sges); status = -ENOMEM; *bad_wr = wr; @@ -3748,22 +3761,20 @@ hw_srq->sge_prod++; } - /* Flush WQE and SGE information before + /* Update WQE and SGE information before * updating producer. */ - wmb(); + dma_wmb(); /* SRQ producer is 8 bytes. Need to update SGE producer index * in first 4 bytes and need to update WQE producer in * next 4 bytes. */ - *srq->hw_srq.virt_prod_pair_addr = hw_srq->sge_prod; - offset = offsetof(struct rdma_srq_producers, wqe_prod); - *((u8 *)srq->hw_srq.virt_prod_pair_addr + offset) = - hw_srq->wqe_prod; + srq->hw_srq.virt_prod_pair_addr->sge_prod = hw_srq->sge_prod; + /* Make sure sge producer is updated first */ + dma_wmb(); + srq->hw_srq.virt_prod_pair_addr->wqe_prod = hw_srq->wqe_prod; - /* Flush producer after updating it. */ - wmb(); wr = wr->next; } @@ -4182,7 +4193,7 @@ } else { __process_resp_one(dev, qp, cq, wc, resp, wr_id); } - srq->hw_srq.wr_cons_cnt++; + atomic_inc(&srq->hw_srq.wr_cons_cnt); return 1; } --- linux-azure-5.8-5.8.0.orig/drivers/infiniband/hw/qedr/verbs.h +++ linux-azure-5.8-5.8.0/drivers/infiniband/hw/qedr/verbs.h @@ -52,7 +52,7 @@ int qedr_create_cq(struct ib_cq *ibcq, const struct ib_cq_init_attr *attr, struct ib_udata *udata); int qedr_resize_cq(struct ib_cq *, int cqe, struct ib_udata *); -void qedr_destroy_cq(struct ib_cq *ibcq, struct ib_udata *udata); +int qedr_destroy_cq(struct ib_cq *ibcq, struct ib_udata *udata); int qedr_arm_cq(struct ib_cq *ibcq, enum ib_cq_notify_flags flags); struct ib_qp *qedr_create_qp(struct ib_pd *, struct ib_qp_init_attr *attrs, struct ib_udata *); --- linux-azure-5.8-5.8.0.orig/drivers/infiniband/hw/usnic/usnic_ib_verbs.c +++ linux-azure-5.8-5.8.0/drivers/infiniband/hw/usnic/usnic_ib_verbs.c @@ -214,6 +214,7 @@ } usnic_uiom_free_dev_list(dev_list); + dev_list = NULL; } /* Try to find resources on an unused vf */ @@ -239,6 +240,8 @@ qp_grp_check: if (IS_ERR_OR_NULL(qp_grp)) { usnic_err("Failed to allocate qp_grp\n"); + if (usnic_ib_share_vf) + usnic_uiom_free_dev_list(dev_list); return ERR_PTR(qp_grp ? PTR_ERR(qp_grp) : -ENOMEM); } return qp_grp; @@ -596,9 +599,9 @@ return 0; } -void usnic_ib_destroy_cq(struct ib_cq *cq, struct ib_udata *udata) +int usnic_ib_destroy_cq(struct ib_cq *cq, struct ib_udata *udata) { - return; + return 0; } struct ib_mr *usnic_ib_reg_mr(struct ib_pd *pd, u64 start, u64 length, --- linux-azure-5.8-5.8.0.orig/drivers/infiniband/hw/usnic/usnic_ib_verbs.h +++ linux-azure-5.8-5.8.0/drivers/infiniband/hw/usnic/usnic_ib_verbs.h @@ -60,7 +60,7 @@ int attr_mask, struct ib_udata *udata); int usnic_ib_create_cq(struct ib_cq *ibcq, const struct ib_cq_init_attr *attr, struct ib_udata *udata); -void usnic_ib_destroy_cq(struct ib_cq *cq, struct ib_udata *udata); +int usnic_ib_destroy_cq(struct ib_cq *cq, struct ib_udata *udata); struct ib_mr *usnic_ib_reg_mr(struct ib_pd *pd, u64 start, u64 length, u64 virt_addr, int access_flags, struct ib_udata *udata); --- linux-azure-5.8-5.8.0.orig/drivers/infiniband/hw/vmbus-rdma/Kconfig +++ linux-azure-5.8-5.8.0/drivers/infiniband/hw/vmbus-rdma/Kconfig @@ -0,0 +1,5 @@ +config HYPERV_INFINIBAND_ND + tristate "Microsoft Hyper-V Network Direct" + depends on PCI && INET && INFINIBAND && HYPERV && X86_64 + ---help--- + This is a low-level driver for Vmbus based NetworkDirect. --- linux-azure-5.8-5.8.0.orig/drivers/infiniband/hw/vmbus-rdma/Makefile +++ linux-azure-5.8-5.8.0/drivers/infiniband/hw/vmbus-rdma/Makefile @@ -0,0 +1,2 @@ +#obj-$(CONFIG_HYPERV_INFINIBAND_ND) += vmbus-rdma-142.0/ +#obj-$(CONFIG_HYPERV_INFINIBAND_ND) += vmbus-rdma-144.0/ --- linux-azure-5.8-5.8.0.orig/drivers/infiniband/hw/vmbus-rdma/vmbus-rdma-142.0/COPYING +++ linux-azure-5.8-5.8.0/drivers/infiniband/hw/vmbus-rdma/vmbus-rdma-142.0/COPYING @@ -0,0 +1,339 @@ + +"This software program is licensed subject to the GNU General Public License +(GPL). Version 2, June 1991, available at +" + +GNU General Public License + +Version 2, June 1991 + +Copyright (C) 1989, 1991 Free Software Foundation, Inc. +51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA + +Everyone is permitted to copy and distribute verbatim copies of this license +document, but changing it is not allowed. + +Preamble + +The licenses for most software are designed to take away your freedom to +share and change it. By contrast, the GNU General Public License is intended +to guarantee your freedom to share and change free software--to make sure +the software is free for all its users. This General Public License applies +to most of the Free Software Foundation's software and to any other program +whose authors commit to using it. (Some other Free Software Foundation +software is covered by the GNU Library General Public License instead.) You +can apply it to your programs, too. + +When we speak of free software, we are referring to freedom, not price. Our +General Public Licenses are designed to make sure that you have the freedom +to distribute copies of free software (and charge for this service if you +wish), that you receive source code or can get it if you want it, that you +can change the software or use pieces of it in new free programs; and that +you know you can do these things. + +To protect your rights, we need to make restrictions that forbid anyone to +deny you these rights or to ask you to surrender the rights. These +restrictions translate to certain responsibilities for you if you distribute +copies of the software, or if you modify it. + +For example, if you distribute copies of such a program, whether gratis or +for a fee, you must give the recipients all the rights that you have. You +must make sure that they, too, receive or can get the source code. And you +must show them these terms so they know their rights. + +We protect your rights with two steps: (1) copyright the software, and (2) +offer you this license which gives you legal permission to copy, distribute +and/or modify the software. + +Also, for each author's protection and ours, we want to make certain that +everyone understands that there is no warranty for this free software. If +the software is modified by someone else and passed on, we want its +recipients to know that what they have is not the original, so that any +problems introduced by others will not reflect on the original authors' +reputations. + +Finally, any free program is threatened constantly by software patents. We +wish to avoid the danger that redistributors of a free program will +individually obtain patent licenses, in effect making the program +proprietary. To prevent this, we have made it clear that any patent must be +licensed for everyone's free use or not licensed at all. + +The precise terms and conditions for copying, distribution and modification +follow. + +TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION + +0. This License applies to any program or other work which contains a notice + placed by the copyright holder saying it may be distributed under the + terms of this General Public License. The "Program", below, refers to any + such program or work, and a "work based on the Program" means either the + Program or any derivative work under copyright law: that is to say, a + work containing the Program or a portion of it, either verbatim or with + modifications and/or translated into another language. (Hereinafter, + translation is included without limitation in the term "modification".) + Each licensee is addressed as "you". + + Activities other than copying, distribution and modification are not + covered by this License; they are outside its scope. The act of running + the Program is not restricted, and the output from the Program is covered + only if its contents constitute a work based on the Program (independent + of having been made by running the Program). Whether that is true depends + on what the Program does. + +1. You may copy and distribute verbatim copies of the Program's source code + as you receive it, in any medium, provided that you conspicuously and + appropriately publish on each copy an appropriate copyright notice and + disclaimer of warranty; keep intact all the notices that refer to this + License and to the absence of any warranty; and give any other recipients + of the Program a copy of this License along with the Program. + + You may charge a fee for the physical act of transferring a copy, and you + may at your option offer warranty protection in exchange for a fee. + +2. You may modify your copy or copies of the Program or any portion of it, + thus forming a work based on the Program, and copy and distribute such + modifications or work under the terms of Section 1 above, provided that + you also meet all of these conditions: + + * a) You must cause the modified files to carry prominent notices stating + that you changed the files and the date of any change. + + * b) You must cause any work that you distribute or publish, that in + whole or in part contains or is derived from the Program or any part + thereof, to be licensed as a whole at no charge to all third parties + under the terms of this License. + + * c) If the modified program normally reads commands interactively when + run, you must cause it, when started running for such interactive + use in the most ordinary way, to print or display an announcement + including an appropriate copyright notice and a notice that there is + no warranty (or else, saying that you provide a warranty) and that + users may redistribute the program under these conditions, and + telling the user how to view a copy of this License. (Exception: if + the Program itself is interactive but does not normally print such + an announcement, your work based on the Program is not required to + print an announcement.) + + These requirements apply to the modified work as a whole. If identifiable + sections of that work are not derived from the Program, and can be + reasonably considered independent and separate works in themselves, then + this License, and its terms, do not apply to those sections when you + distribute them as separate works. But when you distribute the same + sections as part of a whole which is a work based on the Program, the + distribution of the whole must be on the terms of this License, whose + permissions for other licensees extend to the entire whole, and thus to + each and every part regardless of who wrote it. + + Thus, it is not the intent of this section to claim rights or contest + your rights to work written entirely by you; rather, the intent is to + exercise the right to control the distribution of derivative or + collective works based on the Program. + + In addition, mere aggregation of another work not based on the Program + with the Program (or with a work based on the Program) on a volume of a + storage or distribution medium does not bring the other work under the + scope of this License. + +3. You may copy and distribute the Program (or a work based on it, under + Section 2) in object code or executable form under the terms of Sections + 1 and 2 above provided that you also do one of the following: + + * a) Accompany it with the complete corresponding machine-readable source + code, which must be distributed under the terms of Sections 1 and 2 + above on a medium customarily used for software interchange; or, + + * b) Accompany it with a written offer, valid for at least three years, + to give any third party, for a charge no more than your cost of + physically performing source distribution, a complete machine- + readable copy of the corresponding source code, to be distributed + under the terms of Sections 1 and 2 above on a medium customarily + used for software interchange; or, + + * c) Accompany it with the information you received as to the offer to + distribute corresponding source code. (This alternative is allowed + only for noncommercial distribution and only if you received the + program in object code or executable form with such an offer, in + accord with Subsection b above.) + + The source code for a work means the preferred form of the work for + making modifications to it. For an executable work, complete source code + means all the source code for all modules it contains, plus any + associated interface definition files, plus the scripts used to control + compilation and installation of the executable. However, as a special + exception, the source code distributed need not include anything that is + normally distributed (in either source or binary form) with the major + components (compiler, kernel, and so on) of the operating system on which + the executable runs, unless that component itself accompanies the + executable. + + If distribution of executable or object code is made by offering access + to copy from a designated place, then offering equivalent access to copy + the source code from the same place counts as distribution of the source + code, even though third parties are not compelled to copy the source + along with the object code. + +4. You may not copy, modify, sublicense, or distribute the Program except as + expressly provided under this License. Any attempt otherwise to copy, + modify, sublicense or distribute the Program is void, and will + automatically terminate your rights under this License. However, parties + who have received copies, or rights, from you under this License will not + have their licenses terminated so long as such parties remain in full + compliance. + +5. You are not required to accept this License, since you have not signed + it. However, nothing else grants you permission to modify or distribute + the Program or its derivative works. These actions are prohibited by law + if you do not accept this License. Therefore, by modifying or + distributing the Program (or any work based on the Program), you + indicate your acceptance of this License to do so, and all its terms and + conditions for copying, distributing or modifying the Program or works + based on it. + +6. Each time you redistribute the Program (or any work based on the + Program), the recipient automatically receives a license from the + original licensor to copy, distribute or modify the Program subject to + these terms and conditions. You may not impose any further restrictions + on the recipients' exercise of the rights granted herein. You are not + responsible for enforcing compliance by third parties to this License. + +7. If, as a consequence of a court judgment or allegation of patent + infringement or for any other reason (not limited to patent issues), + conditions are imposed on you (whether by court order, agreement or + otherwise) that contradict the conditions of this License, they do not + excuse you from the conditions of this License. If you cannot distribute + so as to satisfy simultaneously your obligations under this License and + any other pertinent obligations, then as a consequence you may not + distribute the Program at all. For example, if a patent license would + not permit royalty-free redistribution of the Program by all those who + receive copies directly or indirectly through you, then the only way you + could satisfy both it and this License would be to refrain entirely from + distribution of the Program. + + If any portion of this section is held invalid or unenforceable under any + particular circumstance, the balance of the section is intended to apply + and the section as a whole is intended to apply in other circumstances. + + It is not the purpose of this section to induce you to infringe any + patents or other property right claims or to contest validity of any + such claims; this section has the sole purpose of protecting the + integrity of the free software distribution system, which is implemented + by public license practices. Many people have made generous contributions + to the wide range of software distributed through that system in + reliance on consistent application of that system; it is up to the + author/donor to decide if he or she is willing to distribute software + through any other system and a licensee cannot impose that choice. + + This section is intended to make thoroughly clear what is believed to be + a consequence of the rest of this License. + +8. If the distribution and/or use of the Program is restricted in certain + countries either by patents or by copyrighted interfaces, the original + copyright holder who places the Program under this License may add an + explicit geographical distribution limitation excluding those countries, + so that distribution is permitted only in or among countries not thus + excluded. In such case, this License incorporates the limitation as if + written in the body of this License. + +9. The Free Software Foundation may publish revised and/or new versions of + the General Public License from time to time. Such new versions will be + similar in spirit to the present version, but may differ in detail to + address new problems or concerns. + + Each version is given a distinguishing version number. If the Program + specifies a version number of this License which applies to it and "any + later version", you have the option of following the terms and + conditions either of that version or of any later version published by + the Free Software Foundation. If the Program does not specify a version + number of this License, you may choose any version ever published by the + Free Software Foundation. + +10. If you wish to incorporate parts of the Program into other free programs + whose distribution conditions are different, write to the author to ask + for permission. For software which is copyrighted by the Free Software + Foundation, write to the Free Software Foundation; we sometimes make + exceptions for this. Our decision will be guided by the two goals of + preserving the free status of all derivatives of our free software and + of promoting the sharing and reuse of software generally. + + NO WARRANTY + +11. BECAUSE THE PROGRAM IS LICENSED FREE OF CHARGE, THERE IS NO WARRANTY + FOR THE PROGRAM, TO THE EXTENT PERMITTED BY APPLICABLE LAW. EXCEPT WHEN + OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR OTHER PARTIES + PROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER + EXPRESSED OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED + WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. THE + ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE PROGRAM IS WITH + YOU. SHOULD THE PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF ALL + NECESSARY SERVICING, REPAIR OR CORRECTION. + +12. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING + WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY AND/OR + REDISTRIBUTE THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR + DAMAGES, INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL + DAMAGES ARISING OUT OF THE USE OR INABILITY TO USE THE PROGRAM + (INCLUDING BUT NOT LIMITED TO LOSS OF DATA OR DATA BEING RENDERED + INACCURATE OR LOSSES SUSTAINED BY YOU OR THIRD PARTIES OR A FAILURE OF + THE PROGRAM TO OPERATE WITH ANY OTHER PROGRAMS), EVEN IF SUCH HOLDER OR + OTHER PARTY HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES. + +END OF TERMS AND CONDITIONS + +How to Apply These Terms to Your New Programs + +If you develop a new program, and you want it to be of the greatest +possible use to the public, the best way to achieve this is to make it free +software which everyone can redistribute and change under these terms. + +To do so, attach the following notices to the program. It is safest to +attach them to the start of each source file to most effectively convey the +exclusion of warranty; and each file should have at least the "copyright" +line and a pointer to where the full notice is found. + +one line to give the program's name and an idea of what it does. +Copyright (C) yyyy name of author + +This program is free software; you can redistribute it and/or modify it +under the terms of the GNU General Public License as published by the Free +Software Foundation; either version 2 of the License, or (at your option) +any later version. + +This program is distributed in the hope that it will be useful, but WITHOUT +ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or +FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for +more details. + +You should have received a copy of the GNU General Public License along with +this program; if not, write to the Free Software Foundation, Inc., 59 +Temple Place - Suite 330, Boston, MA 02111-1307, USA. + +Also add information on how to contact you by electronic and paper mail. + +If the program is interactive, make it output a short notice like this when +it starts in an interactive mode: + +Gnomovision version 69, Copyright (C) year name of author Gnomovision comes +with ABSOLUTELY NO WARRANTY; for details type 'show w'. This is free +software, and you are welcome to redistribute it under certain conditions; +type 'show c' for details. + +The hypothetical commands 'show w' and 'show c' should show the appropriate +parts of the General Public License. Of course, the commands you use may be +called something other than 'show w' and 'show c'; they could even be +mouse-clicks or menu items--whatever suits your program. + +You should also get your employer (if you work as a programmer) or your +school, if any, to sign a "copyright disclaimer" for the program, if +necessary. Here is a sample; alter the names: + +Yoyodyne, Inc., hereby disclaims all copyright interest in the program +'Gnomovision' (which makes passes at compilers) written by James Hacker. + +signature of Ty Coon, 1 April 1989 +Ty Coon, President of Vice + +This General Public License does not permit incorporating your program into +proprietary programs. If your program is a subroutine library, you may +consider it more useful to permit linking proprietary applications with the +library. If this is what you want to do, use the GNU Library General Public +License instead of this License. --- linux-azure-5.8-5.8.0.orig/drivers/infiniband/hw/vmbus-rdma/vmbus-rdma-142.0/Makefile +++ linux-azure-5.8-5.8.0/drivers/infiniband/hw/vmbus-rdma/vmbus-rdma-142.0/Makefile @@ -0,0 +1,3 @@ +obj-$(CONFIG_HYPERV_INFINIBAND_ND) += hv_network_direct_142_0.o + +hv_network_direct_142_0-y := provider.o vmbus_rdma.o hvnd_addr.o --- linux-azure-5.8-5.8.0.orig/drivers/infiniband/hw/vmbus-rdma/vmbus-rdma-142.0/hvnd_addr.c +++ linux-azure-5.8-5.8.0/drivers/infiniband/hw/vmbus-rdma/vmbus-rdma-142.0/hvnd_addr.c @@ -0,0 +1,124 @@ +/* + * Copyright (c) 2014, Microsoft Corporation. + * + * Author: + * K. Y. Srinivasan + * + * This program is free software; you can redistribute it and/or modify it + * under the terms of the GNU General Public License version 2 as published + * by the Free Software Foundation. + * + * This program is distributed in the hope that it will be useful, but + * WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE, GOOD TITLE or + * NON INFRINGEMENT. See the GNU General Public License for more + * details. + * + * Bug fixes/enhancements: Long Li + */ + +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include + +#include "vmbus_rdma.h" + + +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include + + +int hvnd_get_outgoing_rdma_addr(struct hvnd_dev *nd_dev, + struct hvnd_ucontext *uctx, + union nd_sockaddr_inet *og_addr) +{ + int ret; + /* + * Query the host and select the first address. + */ + struct pkt_query_addr_list pkt; + + // KYS try to avoid having to zero everything + memset(&pkt, 0, sizeof(pkt)); + + hvnd_init_hdr(&pkt.hdr, + (sizeof(pkt) - + sizeof(struct ndv_packet_hdr_control_1)), + uctx->create_pkt.handle.local, + uctx->create_pkt.handle.remote, + IOCTL_ND_ADAPTER_QUERY_ADDRESS_LIST, 0, 0, 0); + + pkt.ioctl.in.version = ND_VERSION_1; + pkt.ioctl.in.reserved = 0; + pkt.ioctl.in.handle = uctx->adaptor_hdl; + + ret = hvnd_send_ioctl_pkt(nd_dev, &pkt.hdr, + sizeof(pkt), (u64)&pkt); + + if (ret) + return ret; + + /* + * Copy the address out. + */ + + memcpy(og_addr, &pkt.ioctl.out[0], sizeof(*og_addr)); + return 0; + +} + +struct resolve_cb_context { + struct rdma_dev_addr *addr; + struct completion comp; +}; + +static void resolve_cb(int status, struct sockaddr *src_addr, + struct rdma_dev_addr *addr, void *context) +{ + memcpy(((struct resolve_cb_context *)context)->addr, addr, sizeof(struct + rdma_dev_addr)); + complete(&((struct resolve_cb_context *)context)->comp); +} + +int hvnd_get_neigh_mac_addr(struct sockaddr *local, struct sockaddr *remote, + char *mac_addr) +{ + struct rdma_dev_addr dev_addr; + struct resolve_cb_context ctx; + int ret; + + memset(&dev_addr, 0, sizeof(dev_addr)); + dev_addr.net = &init_net; + ctx.addr = &dev_addr; + init_completion(&ctx.comp); + + ret = rdma_resolve_ip(local, remote, &dev_addr, 1000, + resolve_cb, false, &ctx); + + if (ret) { + hvnd_error("rdma_resolve_ip failed ret=%d\n", ret); + return ret; + } + + wait_for_completion(&ctx.comp); + memcpy(mac_addr, dev_addr.dst_dev_addr, ETH_ALEN); + return ret; +} --- linux-azure-5.8-5.8.0.orig/drivers/infiniband/hw/vmbus-rdma/vmbus-rdma-142.0/mx_abi.h +++ linux-azure-5.8-5.8.0/drivers/infiniband/hw/vmbus-rdma/vmbus-rdma-142.0/mx_abi.h @@ -0,0 +1,232 @@ +/* + * Copyright (c) 2005 Topspin Communications. All rights reserved. + * Copyright (c) 2005 Cisco Systems. All rights reserved. + * Copyright (c) 2005 PathScale, Inc. All rights reserved. + * + * This software is available to you under a choice of one of two + * licenses. You may choose to be licensed under the terms of the GNU + * General Public License (GPL) Version 2, available from the file + * COPYING in the main directory of this source tree, or the + * OpenIB.org BSD license below: + * + * Redistribution and use in source and binary forms, with or + * without modification, are permitted provided that the following + * conditions are met: + * + * - Redistributions of source code must retain the above + * copyright notice, this list of conditions and the following + * disclaimer. + * + * - Redistributions in binary form must reproduce the above + * copyright notice, this list of conditions and the following + * disclaimer in the documentation and/or other materials + * provided with the distribution. + * + * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, + * EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF + * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND + * NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS + * BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN + * ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN + * CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE + * SOFTWARE. + * + * KYS: made some modifications. + */ + +#ifndef MX_ABI_H +#define MX_ABI_H + + + +/* + * Make sure that all structs defined in this file remain laid out so + * that they pack the same way on 32-bit and 64-bit architectures (to + * avoid incompatibility between 32-bit userspace and 64-bit kernels). + * Specifically: + * - Do not use pointer types -- pass pointers in UINT64 instead. + * - Make sure that any structure larger than 4 bytes is padded to a + * multiple of 8 bytes. Otherwise the structure size will be + * different between 32-bit and 64-bit architectures. + */ + +enum ibv_get_context_mappings { + IBV_GET_CONTEXT_UAR, + IBV_GET_CONTEXT_BF, + IBV_GET_CONTEXT_MAPPING_MAX +}; + +struct ibv_get_context_req { + + union nd_mapping mappings[IBV_GET_CONTEXT_MAPPING_MAX]; +}; + +struct ibv_get_context_resp { + + // mmap UAR and BF + struct nd_mapping_result mapping_results[IBV_GET_CONTEXT_MAPPING_MAX]; + + // mmap Blue Flame + int bf_buf_size; + int bf_offset; + + // mlx4_query_device result + int max_qp_wr; + int max_sge; + int max_cqe; + + // general parameters + u32 cqe_size; + u32 vend_id; + u16 dev_id; + u16 bf_reg_size; + u16 bf_regs_per_page; + u16 reserved1; + + // ibv_cmd_get_context result + u32 qp_tab_size; + + u32 reserved2; +}; + +struct ibv_alloc_pd_resp { + u64 pd_handle; + u32 pdn; + u32 reserved; +}; + +struct ibv_reg_mr { + u64 start; + u64 length; + u64 hca_va; + u32 access_flags; + u32 pdn; + u64 pd_handle; +}; + +struct ibv_reg_mr_resp { + u64 mr_handle; + u32 lkey; + u32 rkey; +}; + + +enum mlx4_ib_create_cq_mapping { + MLX4_IB_CREATE_CQ_BUF, + MLX4_IB_CREATE_CQ_DB, + MLX4_IB_CREATE_CQ_ARM_SN, // Windows specific + MLX4_IB_CREATE_CQ_MAPPING_MAX +}; + +#define MLX4_CQ_FLAGS_ARM_IN_KERNEL 1 + +struct ibv_create_cq { + union nd_mapping mappings[MLX4_IB_CREATE_CQ_MAPPING_MAX]; + u32 flags; +}; + +struct ibv_create_cq_resp { + struct nd_mapping_result mapping_results[MLX4_IB_CREATE_CQ_MAPPING_MAX]; + u32 cqn; + u32 cqe; +}; + +enum mlx4_ib_create_srq_mappings { + MLX4_IB_CREATE_SRQ_BUF, + MLX4_IB_CREATE_SRQ_DB, + MLX4_IB_CREATE_SRQ_MAPPINGS_MAX +}; + +struct ibv_create_srq { + union nd_mapping mappings[MLX4_IB_CREATE_SRQ_MAPPINGS_MAX]; +}; + +struct ibv_create_srq_resp { + struct nd_mapping_result mapping_results[MLX4_IB_CREATE_SRQ_MAPPINGS_MAX]; +}; + +enum mlx4_ib_create_qp_mappings { + MLX4_IB_CREATE_QP_BUF, + MLX4_IB_CREATE_QP_DB, + MLX4_IB_CREATE_QP_MAPPINGS_MAX +}; + +struct ibv_create_qp { + union nd_mapping mappings[MLX4_IB_CREATE_QP_MAPPINGS_MAX]; + u8 log_sq_bb_count; + u8 log_sq_stride; + u8 sq_no_prefetch; + u8 reserved; +}; + +struct ibv_create_qp_resp { + struct nd_mapping_result mapping_results[MLX4_IB_CREATE_QP_MAPPINGS_MAX]; + // struct ib_uverbs_create_qp_resp + u64 qp_handle; + u32 qpn; + u32 max_send_wr; + u32 max_recv_wr; + u32 max_send_sge; + u32 max_recv_sge; + u32 max_inline_data; +}; + +enum ibv_qp_attr_mask { + IBV_QP_STATE = 1 << 0, + IBV_QP_CUR_STATE = 1 << 1, + IBV_QP_EN_SQD_ASYNC_NOTIFY = 1 << 2, + IBV_QP_ACCESS_FLAGS = 1 << 3, + IBV_QP_PKEY_INDEX = 1 << 4, + IBV_QP_PORT = 1 << 5, + IBV_QP_QKEY = 1 << 6, + IBV_QP_AV = 1 << 7, + IBV_QP_PATH_MTU = 1 << 8, + IBV_QP_TIMEOUT = 1 << 9, + IBV_QP_RETRY_CNT = 1 << 10, + IBV_QP_RNR_RETRY = 1 << 11, + IBV_QP_RQ_PSN = 1 << 12, + IBV_QP_MAX_QP_RD_ATOMIC = 1 << 13, + IBV_QP_ALT_PATH = 1 << 14, + IBV_QP_MIN_RNR_TIMER = 1 << 15, + IBV_QP_SQ_PSN = 1 << 16, + IBV_QP_MAX_DEST_RD_ATOMIC = 1 << 17, + IBV_QP_PATH_MIG_STATE = 1 << 18, + IBV_QP_CAP = 1 << 19, + IBV_QP_DEST_QPN = 1 << 20 +}; + +enum ibv_qp_state { + IBV_QPS_RESET, + IBV_QPS_INIT, + IBV_QPS_RTR, + IBV_QPS_RTS, + IBV_QPS_SQD, + IBV_QPS_SQE, + IBV_QPS_ERR +}; + + +struct ibv_modify_qp_resp { + enum ibv_qp_attr_mask attr_mask; + u8 qp_state; + u8 reserved[3]; +}; + +struct ibv_create_ah_resp { + u64 start; +}; + +/* + * Some mlx4 specific kernel definitions. Perhaps could be in + * separate file. + */ + +struct mlx4_ib_user_db_page { + struct list_head list; + struct ib_umem *umem; + unsigned long user_virt; + int refcnt; +}; + + +#endif /* MX_ABI_H */ --- linux-azure-5.8-5.8.0.orig/drivers/infiniband/hw/vmbus-rdma/vmbus-rdma-142.0/provider.c +++ linux-azure-5.8-5.8.0/drivers/infiniband/hw/vmbus-rdma/vmbus-rdma-142.0/provider.c @@ -0,0 +1,2962 @@ +/* + * Copyright (c) 2014, Microsoft Corporation. + * + * Author: + * K. Y. Srinivasan + * + * This program is free software; you can redistribute it and/or modify it + * under the terms of the GNU General Public License version 2 as published + * by the Free Software Foundation. + * + * This program is distributed in the hope that it will be useful, but + * WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE, GOOD TITLE or + * NON INFRINGEMENT. See the GNU General Public License for more + * details. + * + * Bug fixes/enhancements: Long Li + */ + +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include "vmbus_rdma.h" + +/* + * We are emulating mlx4. XXXKYS: May have to FIX. + */ +#include "./user.h" + +static struct hvnd_dev *g_nd_dev; // the one and only one + +int hvnd_log_level = HVND_ERROR; +module_param(hvnd_log_level, int, 0644); +MODULE_PARM_DESC(hvnd_log_level, + "Logging level, 0 - Error (default), 1 - Warning, 2 - Info, 3 - Debug."); + +static int disable_cq_notify = 1; +//static int disable_cq_notify = 0; +module_param(disable_cq_notify, int, 0644); +MODULE_PARM_DESC(disable_cq_notify, + "Disable CQ notification, 0 - Enable, 1 - Disable (default)."); + +enum { + MLX4_USER_DEV_CAP_64B_CQE = 1L << 0 +}; + +#define HVND_NODE_DESC "vmbus-RDMA" + +#undef MLX4_IB_UVERBS_ABI_VERSION +#define MLX4_IB_UVERBS_ABI_VERSION 4 + +struct mlx4_wqe_data_seg { + __be32 byte_count; + __be32 lkey; + __be64 addr; +}; + +/* return value: + * true: ep is running + * false: ep is stopped + */ +bool ep_add_work_pending(struct hvnd_ep_obj *ep_object) +{ + bool ret = true; + + atomic_inc(&ep_object->nr_requests_pending); + if (ep_object->stopping) { + if (atomic_dec_and_test(&ep_object->nr_requests_pending)) + wake_up(&ep_object->wait_pending); + ret = false; + } + return ret; +} + +void ep_del_work_pending(struct hvnd_ep_obj *ep_object) +{ + if (atomic_dec_and_test(&ep_object->nr_requests_pending)) + wake_up(&ep_object->wait_pending); + + if (atomic_read(&ep_object->nr_requests_pending) < 0) { + hvnd_error("ep_object->nr_requests_pending=%d type=%d cm_state=%d\n", + atomic_read(&ep_object->nr_requests_pending), + ep_object->type, ep_object->cm_state); + dump_stack(); + } +} + +void ep_stop(struct hvnd_ep_obj *ep_object) +{ + if (!ep_object->stopping) { + ep_object->stopping = true; + hvnd_cancel_io(ep_object); + } + + if (atomic_read(&ep_object->nr_requests_pending) < 0) { + hvnd_error("IO canceled, ep_object->nr_requests_pending=%d type=%d cm_state=%d\n", + atomic_read(&ep_object->nr_requests_pending), + ep_object->type, ep_object->cm_state); + dump_stack(); + } + + wait_event(ep_object->wait_pending, + !atomic_read(&ep_object->nr_requests_pending)); +} + +static int vmbus_dma_map_sg(struct device *dev, struct scatterlist *sgl, + int nents, enum dma_data_direction direction, + unsigned long attrs) +{ + struct scatterlist *sg; + u64 addr; + int i; + int ret = nents; + + BUG_ON(!valid_dma_direction(direction)); + + for_each_sg(sgl, sg, nents, i) { + addr = (u64) page_address(sg_page(sg)); + /* TODO: handle highmem pages */ + if (!addr) { + ret = 0; + break; + } + sg->dma_address = addr + sg->offset; + sg->dma_length = sg->length; + } + return ret; +} + +static void vmbus_dma_unmap_sg(struct device *dev, + struct scatterlist *sg, int nents, + enum dma_data_direction direction, unsigned long attrs) +{ + BUG_ON(!valid_dma_direction(direction)); +} + + +const struct dma_map_ops vmbus_dma_ops = { + .map_sg = vmbus_dma_map_sg, + .unmap_sg = vmbus_dma_unmap_sg, +}; + +static int hvnd_get_incoming_connections(struct hvnd_ep_obj *listener, + struct hvnd_dev *nd_dev, + struct hvnd_ucontext *uctx); + +static struct hvnd_ep_obj *hvnd_setup_ep(struct iw_cm_id *cm_id, int ep_type, + struct hvnd_dev *nd_dev, + struct hvnd_ucontext *uctx); + +static void hvnd_deinit_ep(struct hvnd_ep_obj *ep) +{ + put_irp_handle(ep->nd_dev, ep->local_irp); +} + +static void hvnd_destroy_ep(struct hvnd_ep_obj *ep) +{ + hvnd_debug("canceling work for ep %p\n", ep); + cancel_work_sync(&ep->wrk.work); + hvnd_deinit_ep(ep); + kfree(ep); +} + + +#define UC(b) (((int)b)&0xff) +char *debug_inet_ntoa(struct in_addr in, char *b) +{ + register char *p; + + p = (char *)∈ + (void)snprintf(b, 20, + "%d.%d.%d.%d", UC(p[0]), UC(p[1]), UC(p[2]), UC(p[3])); + return b; +} + +void hvnd_process_events(struct work_struct *work); + +static int hvnd_init_ep(struct hvnd_ep_obj *ep_object, + struct iw_cm_id *cm_id, int ep_type, + struct hvnd_dev *nd_dev, + struct hvnd_ucontext *uctx) +{ + int ret; + + ep_object->type = ep_type; + ep_object->cm_id = cm_id; + ep_object->nd_dev = nd_dev; + ep_object->uctx = uctx; + + ep_object->parent = NULL; + + ep_object->wrk.callback_arg = ep_object; + INIT_WORK(&ep_object->wrk.work, hvnd_process_events); + INIT_LIST_HEAD(&ep_object->incoming_pkt_list); + spin_lock_init(&ep_object->incoming_pkt_list_lock); + + ep_object->stopping = false; + atomic_set(&ep_object->nr_requests_pending, 0); + init_waitqueue_head(&ep_object->wait_pending); + + ret = get_irp_handle(nd_dev, &ep_object->local_irp, (void *)ep_object); + + if (ret) { + hvnd_error("get_irp_handle() failed: err: %d\n", ret); + return ret; + } + return 0; + +} + +static int set_rq_size(struct hvnd_dev *dev, struct ib_qp_cap *cap, + struct hvnd_qp *qp) +{ + + /* HW requires >= 1 RQ entry with >= 1 gather entry */ + if (!cap->max_recv_wr || !cap->max_recv_sge) + return -EINVAL; + + qp->rq_wqe_cnt = roundup_pow_of_two(max(1U, cap->max_recv_wr)); + qp->rq_max_gs = roundup_pow_of_two(max(1U, cap->max_recv_sge)); + qp->rq_wqe_shift = ilog2( + qp->rq_max_gs * sizeof(struct mlx4_wqe_data_seg)); + + + return 0; +} + +static int set_user_sq_size(struct hvnd_dev *dev, + struct hvnd_qp *qp, + struct mlx4_ib_create_qp *ucmd) +{ + qp->sq_wqe_cnt = 1 << ucmd->log_sq_bb_count; + qp->sq_wqe_shift = ucmd->log_sq_stride; + + qp->buf_size = (qp->rq_wqe_cnt << qp->rq_wqe_shift) + + (qp->sq_wqe_cnt << qp->sq_wqe_shift); + + return 0; +} + +static int hvnd_db_map_user(struct hvnd_ucontext *uctx, unsigned long virt, + struct ib_umem **db_umem) +{ + struct mlx4_ib_user_db_page *page; + int err = 0; + + mutex_lock(&uctx->db_page_mutex); + + list_for_each_entry(page, &uctx->db_page_list, list) + if (page->user_virt == (virt & PAGE_MASK)) + goto found; + + page = kmalloc(sizeof(*page), GFP_KERNEL); + if (!page) { + err = -ENOMEM; + goto out; + } + + page->user_virt = (virt & PAGE_MASK); + page->refcnt = 0; + page->umem = ib_umem_get(&uctx->ibucontext, virt & PAGE_MASK, + PAGE_SIZE, 0, 0); + if (IS_ERR(page->umem)) { + hvnd_error("ib_umem_get failure\n"); + err = PTR_ERR(page->umem); + kfree(page); + goto out; + } + + list_add(&page->list, &uctx->db_page_list); + +found: + ++page->refcnt; +out: + mutex_unlock(&uctx->db_page_mutex); + if (!err) + *db_umem = page->umem; + + return err; +} + +static void hvnd_db_unmap_user(struct hvnd_ucontext *uctx, u64 db_addr) +{ + struct mlx4_ib_user_db_page *page; + + mutex_lock(&uctx->db_page_mutex); + list_for_each_entry(page, &uctx->db_page_list, list) + if (page->user_virt == (db_addr & PAGE_MASK)) + goto found; + +found: + if (!--page->refcnt) { + list_del(&page->list); + ib_umem_release(page->umem); + kfree(page); + } + + mutex_unlock(&uctx->db_page_mutex); +} + + +static void debug_check(const char *func, int line) +{ + hvnd_debug("func is: %s; line is %d\n", func, line); + + if (in_interrupt()) { + hvnd_error("In interrupt func is: %s; line is %d\n", + func, line); + return; + } +} + +static struct ib_ah *hvnd_ah_create(struct ib_pd *pd, + struct rdma_ah_attr *ah_attr, u32 flags, + struct ib_udata *udata) +{ + debug_check(__func__, __LINE__); + return ERR_PTR(-ENOSYS); +} + +static int hvnd_ah_destroy(struct ib_ah *ah, u32 flags) +{ + debug_check(__func__, __LINE__); + return -ENOSYS; +} + +static int hvnd_multicast_attach(struct ib_qp *ibqp, union ib_gid *gid, u16 lid) +{ + debug_check(__func__, __LINE__); + return -ENOSYS; +} + +static int hvnd_multicast_detach(struct ib_qp *ibqp, union ib_gid *gid, u16 lid) +{ + debug_check(__func__, __LINE__); + return -ENOSYS; +} + +static int hvnd_process_mad(struct ib_device *ibdev, + int mad_flags, + u8 port_num, + const struct ib_wc *in_wc, + const struct ib_grh *in_grh, + const struct ib_mad_hdr *in_mad, + size_t in_mad_size, + struct ib_mad_hdr *out_mad, + size_t *out_mad_size, + u16 *out_mad_pkey_index) +{ + debug_check(__func__, __LINE__); + return -ENOSYS; +} + +void hvnd_acquire_uctx_ref(struct hvnd_ucontext *uctx) +{ + atomic_inc(&uctx->refcnt); +} + +void hvnd_drop_uctx_ref(struct hvnd_dev *nd_dev, + struct hvnd_ucontext *uctx) +{ + if (atomic_dec_and_test(&uctx->refcnt)) { + hvnd_debug("uctx ref cnt dropped it is %d\n", + atomic_read(&uctx->refcnt)); + hvnd_debug("About to close adaptor\n"); + hvnd_close_adaptor(nd_dev, uctx); + } else + hvnd_debug("uctx ref cnt dropped it is %d\n", + atomic_read(&uctx->refcnt)); +} + + +static int hvnd_dealloc_ucontext(struct ib_ucontext *context) +{ + struct hvnd_dev *nd_dev; + struct hvnd_ucontext *uctx; + + uctx = to_nd_context(context); + nd_dev = to_nd_dev(context->device); + + hvnd_debug("calling %s\n", __func__); + + hvnd_drop_uctx_ref(nd_dev, uctx); + + return 0; +} + +static struct ib_ucontext *hvnd_alloc_ucontext(struct ib_device *ibdev, + struct ib_udata *udata) +{ + struct hvnd_dev *nd_dev = to_nd_dev(ibdev); + struct hvnd_ucontext *uctx; + struct mlx4_ib_alloc_ucontext_resp resp; + struct ibv_get_context_resp *ctx_output; + int ret; + + if (!nd_dev->ib_active) { + hvnd_error("ib device is not active, try again\n"); + return ERR_PTR(-EAGAIN); + } + + uctx = get_uctx(nd_dev, current_pid()); + if (uctx) { + // it is already opened, just increase its reference count + hvnd_acquire_uctx_ref(uctx); + } else { + + /* + * The Windows host expects the following to be done: + * 1. Successfully send struct ndv_pkt_hdr_create_1 + * 2. INIT PROVIDER + * 3. Open Adapter + * Before we can complete this call. + */ + + uctx = kzalloc(sizeof(struct hvnd_ucontext), GFP_KERNEL); + if (!uctx) + return ERR_PTR(-ENOMEM); + + atomic_set(&uctx->refcnt, 1); + INIT_LIST_HEAD(&uctx->db_page_list); + mutex_init(&uctx->db_page_mutex); + + /* + * Stash away the context with the calling PID. + */ + ret = insert_handle(nd_dev, &nd_dev->uctxidr, uctx, + current_pid()); + if (ret) { + hvnd_error("Uctx ID insertion failed; ret is %d\n", + ret); + goto err1; + } + + hvnd_debug("Opening adaptor pid is %d\n", current_pid()); + + ret = hvnd_open_adaptor(nd_dev, uctx); + if (ret) { + hvnd_error("hvnd_open_adaptor failed ret=%d\n", ret); + goto err1; + } + + } + + /* + * Copy the response out. + */ + ctx_output = &uctx->o_adap_pkt.mappings.ctx_output; + resp.dev_caps = MLX4_USER_DEV_CAP_64B_CQE; + resp.qp_tab_size = ctx_output->qp_tab_size; + resp.bf_reg_size = ctx_output->bf_reg_size; + resp.bf_regs_per_page = ctx_output->bf_regs_per_page; + resp.cqe_size = ctx_output->cqe_size; + + ret = ib_copy_to_udata(udata, &resp, sizeof(resp)); + if (ret) { + hvnd_error("ib_copy_to_udata failed ret=%d\n", ret); + goto err1; + } + + return &uctx->ibucontext; + +err1: + kfree(uctx); + return ERR_PTR(ret); +} + +static int hvnd_mmap(struct ib_ucontext *context, struct vm_area_struct *vma) +{ + struct hvnd_ucontext *uctx = to_nd_context(context); + + if (vma->vm_end - vma->vm_start != PAGE_SIZE) { + hvnd_error("vma not a page size, actual size=%lu\n", + vma->vm_end - vma->vm_start); + return -EINVAL; + } + + if (vma->vm_pgoff == 0) { + vma->vm_page_prot = pgprot_noncached(vma->vm_page_prot); + + if (io_remap_pfn_range(vma, vma->vm_start, + (uctx->uar_base >> PAGE_SHIFT), + PAGE_SIZE, vma->vm_page_prot)) { + hvnd_error("io_remap_pfn_range failure\n"); + return -EAGAIN; + } + } else if (vma->vm_pgoff == 1 && uctx->bf_buf_size != 0) { + vma->vm_page_prot = pgprot_writecombine(vma->vm_page_prot); + + if (io_remap_pfn_range(vma, vma->vm_start, + (uctx->uar_base >> PAGE_SHIFT) + 1, + PAGE_SIZE, vma->vm_page_prot)) { + hvnd_error("io_remap_pfn_range failure\n"); + return -EAGAIN; + } + } else { + hvnd_error("check code\n"); + return -EINVAL; + } + + return 0; +} + +static int hvnd_deallocate_pd(struct ib_pd *pd) +{ + + struct hvnd_ucontext *uctx; + struct hvnd_dev *nd_dev; + struct hvnd_ib_pd *hvnd_pd; + struct ib_ucontext *ibuctx = pd->uobject->context; + + hvnd_pd = to_nd_pd(pd); + nd_dev = to_nd_dev(pd->device); + uctx = to_nd_context(ibuctx); + + hvnd_free_handle(nd_dev, uctx, hvnd_pd->handle, + IOCTL_ND_PD_FREE); + + hvnd_drop_uctx_ref(nd_dev, uctx); + return 0; +} + +static struct ib_pd *hvnd_allocate_pd(struct ib_device *ibdev, + struct ib_ucontext *context, + struct ib_udata *udata) +{ + struct hvnd_ucontext *uctx; + struct hvnd_dev *nd_dev; + int ret; + struct hvnd_ib_pd *hvnd_pd; + + if (!context) { + hvnd_error("kernel mode context not supported\n"); + return ERR_PTR(-EINVAL); + } + + hvnd_pd = kzalloc(sizeof(struct hvnd_ib_pd), GFP_KERNEL); + + if (!hvnd_pd) + return ERR_PTR(-ENOMEM); + + uctx = to_nd_context(context); + nd_dev = to_nd_dev(ibdev); + + ret = hvnd_create_pd(uctx, nd_dev, hvnd_pd); + if (ret) { + hvnd_error("hvnd_create_pd failure ret=%d\n", ret); + goto error_cr_pd; + } + + if (context) { + if (ib_copy_to_udata(udata, &hvnd_pd->pdn, sizeof(__u32))) { + hvnd_error("ib_copy_to_udata failure\n"); + ret = -EFAULT; + goto error_fault; + } + } + + hvnd_acquire_uctx_ref(uctx); + return &hvnd_pd->ibpd; + +error_fault: + hvnd_free_handle(nd_dev, uctx, hvnd_pd->handle, + IOCTL_ND_PD_FREE); + +error_cr_pd: + kfree(hvnd_pd); + return ERR_PTR(ret); +} + +static int hvnd_query_pkey(struct ib_device *ibdev, u8 port, u16 index, + u16 *pkey) +{ + debug_check(__func__, __LINE__); + *pkey = 0; + return 0; +} + +static int hvnd_query_gid(struct ib_device *ibdev, u8 port, int index, + union ib_gid *gid) +{ + int ret; + struct hvnd_dev *nd_dev = to_nd_dev(ibdev); + + debug_check(__func__, __LINE__); + + ret = wait_for_completion_timeout(&nd_dev->addr_set, 60*HZ); + if (!ret) + return -ETIMEDOUT; + + memset(&(gid->raw[0]), 0, sizeof(gid->raw)); + memcpy(&(gid->raw[0]), nd_dev->mac_addr, 6); + return 0; +} + +static int hvnd_query_device(struct ib_device *ibdev, + struct ib_device_attr *props, + struct ib_udata *udata) +{ + struct hvnd_dev *nd_dev = to_nd_dev(ibdev); + struct adapter_info_v2 *adap_info; + + if (!nd_dev->query_pkt_set) { + hvnd_error("query packet not received yet\n"); + return 0; + } + + adap_info = &nd_dev->query_pkt.ioctl.ad_info; + + memset(props, 0, sizeof(*props)); + + /* + * Copy the relevant properties out. + */ + props->fw_ver = 0; + props->device_cap_flags = 0; + //props->device_cap_flags |= IB_DEVICE_BAD_PKEY_CNTR; + //props->device_cap_flags |= IB_DEVICE_BAD_QKEY_CNTR; + //props->device_cap_flags |= IB_DEVICE_XRC; + + props->vendor_id = 0x15b3; + props->vendor_part_id = adap_info->device_id; + + props->max_mr_size = ~0ull; + props->page_size_cap = PAGE_SIZE; + props->max_qp = 16384; + props->max_qp_wr = min(adap_info->max_recv_q_depth, + adap_info->max_initiator_q_depth); + + props->max_send_sge = min(adap_info->max_initiator_sge, + adap_info->max_recv_sge); + props->max_recv_sge = props->max_send_sge; + props->max_cq = 0x1FFFF; + props->max_cqe = adap_info->max_completion_q_depth; + props->max_mr = 16384; + props->max_pd = 16384; + + props->max_qp_rd_atom = adap_info->max_inbound_read_limit; + props->max_qp_init_rd_atom = adap_info->max_outbound_read_limit; + props->max_res_rd_atom = props->max_qp_rd_atom * props->max_qp; + props->max_srq = 16384; + props->max_srq_wr = adap_info->max_recv_q_depth; + props->max_srq_sge = adap_info->max_recv_sge; + + return 0; +} + +static int hvnd_query_port(struct ib_device *ibdev, u8 port, + struct ib_port_attr *props) +{ + memset(props, 0, sizeof(struct ib_port_attr)); + + props->max_mtu = IB_MTU_4096; + props->active_mtu = IB_MTU_4096; + + /* + * KYS: TBD need to base this on netdev. + */ + props->state = IB_PORT_ACTIVE; + + props->port_cap_flags = IB_PORT_CM_SUP; + + props->gid_tbl_len = 1; + props->pkey_tbl_len = 1; + props->active_width = 1; + props->active_speed = IB_SPEED_DDR; //KYS: check + props->max_msg_sz = -1; + + return 0; +} + +static enum rdma_link_layer +hvnd_get_link_layer(struct ib_device *device, u8 port) +{ + return IB_LINK_LAYER_ETHERNET; +} + +static ssize_t hvnd_show_rev(struct device *dev, struct device_attribute *attr, + char *buf) +{ + return 0; +} + +static ssize_t hvnd_show_fw_ver(struct device *dev, + struct device_attribute *attr, char *buf) +{ + return 0; +} + +static ssize_t hvnd_show_hca(struct device *dev, struct device_attribute *attr, + char *buf) +{ + return 0; +} + +static ssize_t hvnd_show_board(struct device *dev, + struct device_attribute *attr, char *buf) +{ + return 0; +} + +static int hvnd_get_port_immutable(struct ib_device *ibdev, u8 port_num, + struct ib_port_immutable *immutable) +{ + struct ib_port_attr attr; + int err; + + err = hvnd_query_port(ibdev, port_num, &attr); + if (err) + return err; + + immutable->pkey_tbl_len = attr.pkey_tbl_len; + immutable->gid_tbl_len = attr.gid_tbl_len; + immutable->core_cap_flags = RDMA_CORE_PORT_IWARP; + + return 0; +} + +static struct ib_qp *hvnd_ib_create_qp(struct ib_pd *pd, + struct ib_qp_init_attr *attrs, + struct ib_udata *udata) +{ + struct hvnd_ucontext *uctx; + struct hvnd_dev *nd_dev; + struct mlx4_ib_create_qp ucmd; + struct hvnd_qp *qp; + int ret = 0; + struct hvnd_ib_pd *hvnd_pd = to_nd_pd(pd); + struct hvnd_cq *send_cq = to_nd_cq(attrs->send_cq); + struct hvnd_cq *recv_cq = to_nd_cq(attrs->recv_cq); + + uctx = get_uctx_from_pd(pd); + nd_dev = to_nd_dev(pd->device); + + if (attrs->qp_type != IB_QPT_RC) { + hvnd_error("attrs->qp_type=%d not IB_QPT_RC\n", attrs->qp_type); + return ERR_PTR(-EINVAL); + } + + qp = kzalloc(sizeof(*qp), GFP_KERNEL); + if (!qp) { + ret = -ENOMEM; + goto err_done; + } + + qp->uctx = uctx; + + if (ib_copy_from_udata(&ucmd, udata, sizeof(ucmd))) { + hvnd_error("ib_copy_from_udata failed\n"); + ret = -EFAULT; + goto err_ucpy; + } + + qp->qp_buf = (void *)ucmd.buf_addr; + qp->db_addr = (void *)ucmd.db_addr; + qp->log_sq_bb_count = ucmd.log_sq_bb_count; + qp->log_sq_stride = ucmd.log_sq_stride; + qp->sq_no_prefetch = ucmd.sq_no_prefetch; + qp->port = attrs->port_num; + + init_waitqueue_head(&qp->wait); + atomic_set(&qp->refcnt, 1); + + qp->recv_cq = recv_cq; + qp->send_cq = send_cq; + qp->nd_dev = nd_dev; + + qp->receive_cq_handle = recv_cq->cq_handle; + qp->initiator_cq_handle = send_cq->cq_handle; + qp->pd_handle = hvnd_pd->handle; + qp->cq_notify = false; + + qp->ibqp.qp_num = attrs->qp_type == IB_QPT_SMI ? 0 : 1; + + qp->max_inline_data = attrs->cap.max_inline_data; + + qp->initiator_q_depth = attrs->cap.max_send_wr; + qp->initiator_request_sge = attrs->cap.max_send_sge; + + + qp->receive_q_depth = attrs->cap.max_recv_wr; + qp->receive_request_sge = attrs->cap.max_recv_sge; + + set_rq_size(nd_dev, &attrs->cap, qp); + + set_user_sq_size(nd_dev, qp, &ucmd); + + qp->umem = ib_umem_get(&uctx->ibucontext, ucmd.buf_addr, + qp->buf_size, 0, 0); + if (IS_ERR(qp->umem)) { + ret = PTR_ERR(qp->umem); + hvnd_error("ib_umem_get failed ret=%d\n", ret); + goto err_ucpy; + } + + ret = hvnd_db_map_user(uctx, ucmd.db_addr, &qp->db_umem); + + if (ret) { + hvnd_error("hvnd_db_map_user failed ret=%d\n", ret); + goto err_db_map; + } + + ret = hvnd_create_qp(nd_dev, uctx, qp); + + if (ret) { + hvnd_error("hvnd_create_qp failed ret=%d\n", ret); + goto err_qp; + } + + hvnd_acquire_uctx_ref(uctx); + + qp->ibqp.qp_num = qp->qpn; + qp->ibqp.qp_type = IB_QPT_RC; + + + return &qp->ibqp; + +err_qp: + hvnd_db_unmap_user(uctx, ucmd.db_addr); + +err_db_map: + ib_umem_release(qp->umem); + +err_ucpy: + kfree(qp); +err_done: + return ERR_PTR(ret); +} + +static int hvnd_ib_modify_qp(struct ib_qp *ibqp, struct ib_qp_attr *attr, + int attr_mask, struct ib_udata *udata) +{ + struct hvnd_qp *qp = to_nd_qp(ibqp); + struct hvnd_dev *nd_dev = to_nd_dev(ibqp->device); + enum ib_qp_state cur_state, new_state; + int ret = 0; + + if (attr != NULL) { + cur_state = (attr_mask & IB_QP_CUR_STATE) + ? attr->cur_qp_state : qp->qp_state; + new_state = (attr_mask & IB_QP_STATE) + ? attr->qp_state : cur_state; + + hvnd_debug("qp->qp_state is %d new state is %d\n", + qp->qp_state, new_state); + hvnd_debug("current qp state is %d\n", cur_state); + if (attr_mask & IB_QP_STATE) { + /* Ensure the state is valid */ + if (attr->qp_state < 0 || attr->qp_state > IB_QPS_ERR) { + hvnd_error("incorrect qp state attr->qp_state=%d\n", + attr->qp_state); + return -EINVAL; + } + + if (qp->qp_state != new_state) { + qp->qp_state = new_state; + /* + * The only state transition supported is the + * transition to error state. + */ + switch (new_state) { + case IB_QPS_ERR: + case IB_QPS_SQD: + ret = hvnd_flush_qp(nd_dev, qp->uctx, + qp); + + if (ret) + hvnd_error("hvnd_flush_qp failed ret=%d\n", ret); + + // immediately notify the upper layer + // on disconnection + if (!ret && qp->connector) + hvnd_process_notify_disconnect( + qp->connector, + STATUS_SUCCESS); + + return ret; + + default: + break; + } + } + } + } + return 0; +} + + +static int hvnd_ib_query_qp(struct ib_qp *ibqp, struct ib_qp_attr *attr, + int attr_mask, struct ib_qp_init_attr *init_attr) +{ + struct hvnd_qp *qp = to_nd_qp(ibqp); + + memset(attr, 0, sizeof(*attr)); + memset(init_attr, 0, sizeof(*init_attr)); + + attr->qp_state = qp->qp_state; + + init_attr->cap.max_send_wr = qp->max_send_wr; + init_attr->cap.max_recv_wr = qp->max_recv_wr; + + init_attr->cap.max_send_sge = qp->max_send_sge; + init_attr->cap.max_recv_sge = qp->max_recv_sge; + init_attr->cap.max_inline_data = qp->max_inline_data; + + init_attr->sq_sig_type = IB_SIGNAL_ALL_WR; + + return 0; +} + +static void hvnd_refuse_connection(struct hvnd_ep_obj *connector, int status); +static int hvnd_destroy_qp(struct ib_qp *ib_qp) +{ + int ret; + struct hvnd_qp *qp = to_nd_qp(ib_qp); + struct hvnd_dev *nd_dev = to_nd_dev(ib_qp->device); + u64 jiffies; + + if (!qp->connector) { + hvnd_warn("error: connector is NULL; skip destroying connector\n"); + goto free_qp; + } + + /* + * should we flush the qp first on ctrl-C?, + * no need to disconnect on abrupt shutdown? + */ + if (qp->qp_state != IB_QPS_ERR && qp->qp_state != IB_QPS_SQD) { + hvnd_warn("qp_state=%d, doing abrupt disconnect\n", + qp->qp_state); + hvnd_flush_qp(nd_dev, qp->uctx, qp); + + ep_stop(qp->connector); + + // now no pending activity is possible on the connector + + switch (qp->connector->cm_state) { + + case hvnd_cm_idle: + case hvnd_cm_connect_reply_refused: + case hvnd_cm_connect_request_sent: + case hvnd_cm_close_sent: + hvnd_warn("cm_state = %d not doing anything\n", + qp->connector->cm_state); + break; + + case hvnd_cm_connect_received: + hvnd_warn("cm_state = %d refusing pending connection request\n", + qp->connector->cm_state); + hvnd_refuse_connection(qp->connector, -ECONNREFUSED); + break; + + case hvnd_cm_connect_reply_sent: + case hvnd_cm_established_sent: + case hvnd_cm_accept_sent: + hvnd_warn("cm_state = %d notifying disconnect on existing connection\n", + qp->connector->cm_state); + hvnd_process_notify_disconnect(qp->connector, + STATUS_CANCELLED); + break; + + default: + hvnd_error("unknown cm_state = %d\n", + qp->connector->cm_state); + + } + goto free_connector; + } else { + hvnd_debug("qp_state=%d, doing normal disconnect\n", + qp->qp_state); + } + + if (!ep_add_work_pending(qp->connector)) + goto free_connector; + + init_completion(&qp->connector->disconnect_event); + + /* + * First issue a disconnect on the connector. + */ + + hvnd_debug("calling hvnd_connector_disconnect\n"); + ret = hvnd_connector_disconnect(nd_dev, qp->uctx, + qp->connector->ep_handle, + qp->connector); + if (ret) { + ep_del_work_pending(qp->connector); + hvnd_error("disconnect: retval is %d\n", ret); + ep_stop(qp->connector); + goto free_connector; + } + /* + * Now wait for the disconnect. + */ + jiffies = get_jiffies_64(); + if (!wait_for_completion_timeout(&qp->connector->disconnect_event, + 30*HZ)) + hvnd_warn("connector disconnect timed out\n"); + + hvnd_debug("Completed disconnect connector=%p jiffies=%llu\n", + qp->connector, get_jiffies_64() - jiffies); + + /* + * Now free up the connector and drop the reference on uctx. + */ + + ep_stop(qp->connector); + +free_connector: + hvnd_debug("destroying connector handle: %p\n", + (void *) qp->connector->ep_handle); + hvnd_free_handle(nd_dev, qp->uctx, + qp->connector->ep_handle, + IOCTL_ND_CONNECTOR_FREE); + + hvnd_drop_uctx_ref(nd_dev, qp->uctx); + hvnd_destroy_ep(qp->connector); + qp->connector = NULL; +free_qp: + atomic_dec(&qp->refcnt); + hvnd_debug("Waiting for the ref cnt to go to 0\n"); + + wait_event(qp->wait, !atomic_read(&qp->refcnt)); + + hvnd_debug("About to destroy qp\n"); + hvnd_db_unmap_user(qp->uctx, (u64)qp->db_addr); + ib_umem_release(qp->umem); + + hvnd_debug("About to free qp\n"); + ret = hvnd_free_qp(nd_dev, qp->uctx, qp); + + if (ret == 0) { + hvnd_drop_uctx_ref(nd_dev, qp->uctx); + kfree(qp); + } else { + hvnd_error("free qp failed: ret is %d\n", ret); + } + + return ret; +} + +static struct ib_cq *hvnd_ib_create_cq(struct ib_device *ibdev, + const struct ib_cq_init_attr *attr, + struct ib_ucontext *ib_context, + struct ib_udata *udata) +{ + struct hvnd_ucontext *uctx; + struct hvnd_dev *nd_dev; + struct mlx4_ib_create_cq ucmd; + struct hvnd_cq *cq; + int ret = 0; + int entries = attr->cqe; + + uctx = to_nd_context(ib_context); + nd_dev = to_nd_dev(ibdev); + + if (entries < 1 || entries > uctx->max_cqe) { + hvnd_error("incorrct entries=%d\n", entries); + ret = -EINVAL; + goto err_done; + } + + cq = kzalloc(sizeof(*cq), GFP_KERNEL); + if (!cq) { + ret = -ENOMEM; + goto err_done; + } + + entries = roundup_pow_of_two(entries + 1); + cq->ibcq.cqe = entries - 1; + cq->entries = entries; + cq->uctx = uctx; + + if (ib_copy_from_udata(&ucmd, udata, sizeof(ucmd))) { + hvnd_error("ib_copy_from_udata failed\n"); + ret = -EFAULT; + goto err_ucpy; + } + + cq->cq_buf = (void *)ucmd.buf_addr; + cq->db_addr = (void *)ucmd.db_addr; + cq->arm_sn = 0; + + /* + * Initialize the IRP state. Need to have a separate irp state + * for CQ; for now share it with Listener/connector. + */ + ret = hvnd_init_ep(&cq->ep_object, NULL, ND_CQ, nd_dev, uctx); + + if (ret) { + hvnd_error("hvnd_init_ep failed ret=%d\n", ret); + goto err_ucpy; + } + + cq->ep_object.cq = cq; + cq->monitor = true; + + cq->umem = ib_umem_get(ib_context, ucmd.buf_addr, + (entries * uctx->cqe_size), + IB_ACCESS_LOCAL_WRITE, 1); + if (IS_ERR(cq->umem)) { + ret = IS_ERR(cq->umem); + hvnd_error("ib_umem_get failed ret=%d\n", ret); + goto err_ucpy; + } + + ret = hvnd_db_map_user(uctx, ucmd.db_addr, &cq->db_umem); + + if (ret) { + hvnd_error("hvnd_db_map_user failed ret=%d\n", ret); + goto err_db_map; + } + + ret = hvnd_create_cq(nd_dev, uctx, cq); + + if (ret) { + hvnd_error("hvnd_create_cq failed ret=%d\n", ret); + goto err_cq; + } + + cq->ep_object.ep_handle = cq->cq_handle; + + if (ib_copy_to_udata(udata, &cq->cqn, sizeof(__u32))) { + hvnd_error("ib_copy_to_udata failed\n"); + ret = -EFAULT; + goto err_ucpy_out; + } + + if (!disable_cq_notify) { + + if (!ep_add_work_pending(&cq->ep_object)) + goto err_ucpy_out; + + ret = hvnd_notify_cq(nd_dev, cq, ND_CQ_NOTIFY_ANY, + (u64)&cq->ep_object); + + if (ret) { + ep_del_work_pending(&cq->ep_object); + hvnd_error("hvnd_notify_cq failed ret=%d\n", ret); + goto err_ucpy_out; + } + } + + hvnd_acquire_uctx_ref(uctx); + + return &cq->ibcq; + +err_ucpy_out: + hvnd_destroy_cq(nd_dev, cq); + +err_cq: + hvnd_db_unmap_user(uctx, ucmd.db_addr); + +err_db_map: + ib_umem_release(cq->umem); + +err_ucpy: + kfree(cq); +err_done: + return ERR_PTR(ret); +} + +static struct ib_qp *hvnd_get_qp(struct ib_device *dev, int qpn) +{ + struct hvnd_dev *nd_dev; + struct hvnd_qp *qp = NULL; + + nd_dev = to_nd_dev(dev); + qp = get_qpp(nd_dev, qpn); + return qp ? &qp->ibqp : NULL; +} + +static int hvnd_ib_destroy_cq(struct ib_cq *ib_cq) +{ + struct hvnd_ucontext *uctx; + struct hvnd_dev *nd_dev; + struct hvnd_cq *cq; + + cq = to_nd_cq(ib_cq); + uctx = cq->uctx; + nd_dev = to_nd_dev(uctx->ibucontext.device); + + cq->monitor = false; + +// hvnd_cancel_io(&cq->ep_object); + ep_stop(&cq->ep_object); + + hvnd_deinit_ep(&cq->ep_object); + + hvnd_db_unmap_user(uctx, (u64)cq->db_addr); + ib_umem_release(cq->umem); + + hvnd_destroy_cq(nd_dev, cq); + + hvnd_drop_uctx_ref(nd_dev, uctx); + kfree(cq); + + return 0; +} + +static int hvnd_resize_cq(struct ib_cq *cq, int cqe, struct ib_udata *udata) +{ + /* + * NDDirect does not support resizing CQ. + */ + hvnd_info("check code\n"); + return -ENOSYS; +} + +static int hvnd_poll_cq(struct ib_cq *ibcq, int num_entries, struct ib_wc *wc) +{ + hvnd_info("check code\n"); + return 0; +} + +static struct ib_mr *hvnd_get_dma_mr(struct ib_pd *pd, int acc) +{ + hvnd_info("check code\n"); + return NULL; +} + +static void debug_dump_umem(struct ib_umem *umem) +{ +#ifdef HVND_MEM_DEBUG + struct ib_umem_chunk *chunk; + struct scatterlist *sg; + int len, j, entry; + int shift = ffs(umem->page_size) - 1; + + hvnd_debug("umem=%p\n", umem); + hvnd_debug("context=%p length=%lu offset=%d page_size=%d writable=%d hugetlb=%d\n", + umem->context, + umem->length, + umem->offset, + umem->page_size, + umem->writable, + umem->hugetlb); + + list_for_each_entry(chunk, &umem->chunk_list, list) { + hvnd_debug("chunk->nmap=%d\n", chunk->nmap); + for (j = 0; j < chunk->nmap; ++j) { + sg = &chunk->page_list[j]; + hvnd_debug("sg_dma_len=%d sg_dma_address=%llx\n", + sg_dma_len(sg), sg_dma_address(sg)); + hvnd_debug("page_link=%lx offset=%u length=%u\n", + sg->page_link, sg->offset, sg->length); + len = sg_dma_len(&chunk->page_list[j]) >> shift; + for_each_sg(&chunk->page_list[j], sg, len, entry) { + hvnd_debug("PFN=%lu\n", + page_to_pfn(sg_page(sg))); + } + } + } +#endif +} + + +static struct ib_mr *hvnd_reg_user_mr(struct ib_pd *pd, u64 start, u64 length, + u64 virt, int acc, struct ib_udata *udata) +{ + int err = 0; + struct hvnd_ib_pd *hvndpd = to_nd_pd(pd); + struct hvnd_mr *mr; + + mr = kmalloc(sizeof(*mr), GFP_KERNEL); + if (!mr) + return ERR_PTR(-ENOMEM); + mr->pd = hvndpd; + + mr->umem = ib_umem_get(pd->uobject->context, start, length, acc, 0); + if (IS_ERR(mr->umem)) { + err = PTR_ERR(mr->umem); + hvnd_error("ib_umem_get failed ret=%d\n", err); + kfree(mr); + return ERR_PTR(err); + } + + debug_dump_umem(mr->umem); + + mr->start = start; + mr->length = length; + mr->virt = virt; + mr->acc = acc; + + hvnd_debug("start=%llx length=%llx virt=%llx acc=%d\n", + start, length, virt, acc); + + /* + * First create a memory region. + */ + err = hvnd_cr_mr(to_nd_dev(pd->device), + to_nd_context(pd->uobject->context), hvndpd->handle, + &mr->mr_handle); + if (err) { + hvnd_error("cr_mr failed; ret is %d\n", err); + goto err; + } + + err = hvnd_mr_register(to_nd_dev(pd->device), + to_nd_context(pd->uobject->context), mr); + + if (err) + goto err0; + + hvnd_acquire_uctx_ref(to_nd_context(pd->uobject->context)); + + return &mr->ibmr; + +err0: + hvnd_free_mr(to_nd_dev(pd->device), + to_nd_context(pd->uobject->context), mr->mr_handle); +err: + ib_umem_release(mr->umem); + kfree(mr); + return ERR_PTR(err); +} + + + +static int hvnd_dereg_mr(struct ib_mr *ib_mr) +{ + int ret; + struct hvnd_mr *mr = to_nd_mr(ib_mr); + struct hvnd_ucontext *uctx = to_nd_context(ib_mr->pd->uobject->context); + struct hvnd_dev *nd_dev = to_nd_dev(ib_mr->device); + + + hvnd_debug("dereg_mr entering\n"); + + ret = hvnd_deregister_mr(nd_dev, uctx, mr->mr_handle); + + if (ret) { + hvnd_error("hvnd_deregister_mr() failed: %x\n", ret); + return ret; + } + /* + * Now free up the memory region. + */ + + ret = hvnd_free_mr(nd_dev, uctx, mr->mr_handle); + if (ret) { + hvnd_error("hvnd_free_mr() failed: %x\n", ret); + return ret; + } + + ib_umem_release(mr->umem); + + hvnd_drop_uctx_ref(nd_dev, uctx); + kfree(mr); + + hvnd_debug("dereg_mr done\n"); + return 0; +} + +static struct ib_mw *hvnd_alloc_mw(struct ib_pd *pd, enum ib_mw_type type, + struct ib_udata *udata) +{ + hvnd_info("check code\n"); + return NULL; +} + +static int hvnd_dealloc_mw(struct ib_mw *mw) +{ + debug_check(__func__, __LINE__); + return 0; +} + +static int hvnd_arm_cq(struct ib_cq *ibcq, enum ib_cq_notify_flags flags) +{ + struct hvnd_ucontext *uctx; + struct hvnd_dev *nd_dev; + struct hvnd_cq *cq; + + cq = to_nd_cq(ibcq); + uctx = cq->uctx; + nd_dev = to_nd_dev(uctx->ibucontext.device); + + + debug_check(__func__, __LINE__); + + return 0; +} + +static int hvnd_post_send(struct ib_qp *ibqp, const struct ib_send_wr *wr, + const struct ib_send_wr **bad_wr) +{ + debug_check(__func__, __LINE__); + return 0; +} + +int hvnd_post_receive(struct ib_qp *ibqp, const struct ib_recv_wr *wr, + const struct ib_recv_wr **bad_wr) +{ + debug_check(__func__, __LINE__); + return 0; +} + +static int hvnd_resolve_addr(struct sockaddr_in *laddr, + struct sockaddr_in *raddr, + struct if_physical_addr *phys_addrstruct) +{ + int ret; + + phys_addrstruct->length = ETH_ALEN; + ret = hvnd_get_neigh_mac_addr((struct sockaddr *)laddr, + (struct sockaddr *)raddr, + phys_addrstruct->addr); + + hvnd_debug("Dest MAC is %pM\n", phys_addrstruct->addr); + return ret; +} + +static int hvnd_connect(struct iw_cm_id *cm_id, + struct iw_cm_conn_param *conn_param) +{ + int ret = 0; + struct hvnd_dev *nd_dev; + struct hvnd_ep_obj *ep_object; + struct sockaddr_in *raddr = (struct sockaddr_in *)&cm_id->remote_addr; + struct sockaddr_in *laddr = (struct sockaddr_in *)&cm_id->local_addr; + struct hvnd_qp *qp; + struct if_physical_addr phys_addrstruct; + union nd_sockaddr_inet dest_addr; + u64 connector_handle; + union nd_sockaddr_inet addr; + char addr_buf[50]; + + if (cm_id->remote_addr.ss_family != AF_INET) { + hvnd_error("cm_id->remote_addr.ss_family=%d not AF_INET\n", + cm_id->remote_addr.ss_family); + return -ENOSYS; + } + + qp = get_qpp(to_nd_dev(cm_id->device), conn_param->qpn); + + if (!qp) { + hvnd_error("failed to find qp conn_param->qpn=%d\n", + conn_param->qpn); + return -EINVAL; + } + + cm_id->provider_data = qp; + cm_id->add_ref(cm_id); + qp->cm_id = cm_id; + + /* + * Set the read/write limits. + * Can we change the limits on a created QP? Luke? + */ + nd_dev = to_nd_dev(cm_id->device); + ep_object = hvnd_setup_ep(cm_id, ND_CONNECTOR, nd_dev, qp->uctx); + hvnd_debug("active connection: local irp is %d\n", + ep_object->local_irp); + if (!ep_object) { + hvnd_error("hvnd_setup_ep failure\n"); + ret = -ENOMEM; + goto err_limit; + } + + ret = hvnd_cr_connector(nd_dev, qp->uctx, + &connector_handle); + + if (ret) { + hvnd_error("hvnd_cr_connector failure ret=%d\n", ret); + goto err_cr_connector; + } + + hvnd_acquire_uctx_ref(qp->uctx); + ep_object->ep_handle = connector_handle; + ep_object->incoming = false; + qp->connector = ep_object; + + /* + * Bind the local address to the connector. + */ + hvnd_debug("Connect local address is %s\n", + debug_inet_ntoa(laddr->sin_addr, addr_buf)); + + memcpy(&addr.ipv4, laddr, sizeof(struct sockaddr_in)); + hvnd_debug("CONNECT AF %d port %d addr %s\n", + addr.ipv4.sin_family, addr.ipv4.sin_port, + debug_inet_ntoa(addr.ipv4.sin_addr, addr_buf)); + + ret = hvnd_bind_connector(nd_dev, qp->uctx, + connector_handle, + &addr); + + if (ret) { + hvnd_error("hvnd_bind_connector failed ret=%d\n", ret); + goto err_bind_connector; + } + + ret = hvnd_resolve_addr(laddr, raddr, &phys_addrstruct); + if (ret) { + hvnd_error("hvnd_resolve_addr failed ret=%d\n", ret); + goto err_bind_connector; + } + + memcpy(&dest_addr.ipv4, raddr, sizeof(struct sockaddr_in)); + + + + /* + * Now attempt to connect. + */ + + hvnd_debug("About to initiate connection\n"); + + if (!ep_add_work_pending(ep_object)) + goto err_bind_connector; + + ep_object->cm_state = hvnd_cm_connect_received; + ret = hvnd_connector_connect(nd_dev, qp->uctx, + ep_object->ep_handle, + conn_param->ird, conn_param->ord, + conn_param->private_data_len, + (u8 *)conn_param->private_data, + qp->qp_handle, + &phys_addrstruct, &dest_addr, + ep_object); + + if (ret == 0) + return 0; + + ep_object->cm_state = hvnd_cm_idle; + ep_del_work_pending(ep_object); + hvnd_error("hvnd_connector_connect failed ret=%d\n", ret); + +err_bind_connector: + qp->connector = NULL; + hvnd_free_connector(nd_dev, qp->uctx, + connector_handle); + hvnd_drop_uctx_ref(nd_dev, qp->uctx); + +err_cr_connector: + kfree(ep_object); + +err_limit: + cm_id->provider_data = NULL; + qp->cm_id = NULL; + cm_id->rem_ref(cm_id); + return ret; +} + +static int hvnd_accept_cr(struct iw_cm_id *cm_id, + struct iw_cm_conn_param *conn_param) +{ + int ret = 0; + struct hvnd_dev *nd_dev; + struct hvnd_qp *qp; + struct hvnd_ep_obj *connector; + enum ibv_qp_state new_qp_state; + + hvnd_debug("Accepting connection - PASSIVE\n"); + nd_dev = to_nd_dev(cm_id->device); + qp = get_qpp(to_nd_dev(cm_id->device), conn_param->qpn); + + if (!qp) { + hvnd_error("get_qpp failed conn_param->qpn=%d\n", + conn_param->qpn); + return -EINVAL; + } + + + connector = (struct hvnd_ep_obj *)cm_id->provider_data; + qp->connector = connector; + + if (connector == NULL) { + hvnd_error("NULL connector!\n"); + return -EINVAL; + } + hvnd_debug("connector's cm_id is %p caller cm_id=%p\n", + connector->cm_id, cm_id); + + connector->cq = qp->recv_cq; + + + /* + * Setup state for the accepted connection. + */ + cm_id->add_ref(cm_id); + connector->cm_id = cm_id; + if (conn_param == NULL) { + hvnd_error("NULL conn_param!\n"); + return -EINVAL; + } + + connector->ord = conn_param->ord; + connector->ird = conn_param->ird; + + if (!ep_add_work_pending(connector)) + goto error; + + init_completion(&connector->connector_accept_event); + + ret = hvnd_connector_accept(nd_dev, qp->uctx, connector->ep_handle, + qp->qp_handle, conn_param->ird, + conn_param->ord, + conn_param->private_data_len, + conn_param->private_data, + &new_qp_state, connector); + + if (ret) { + ep_del_work_pending(connector); + hvnd_error("connector accept failed\n"); + goto error; + } + + wait_for_completion(&connector->connector_accept_event); + ret = connector->connector_accept_status; + + if (ret) { + hvnd_error("connector_accept failed status=%x\n", ret); + ret = -EIO; + goto error; + } + + hvnd_debug("Passive Connection Accepted; new qp state is %d\n", + new_qp_state); + connector->cm_state = hvnd_cm_accept_sent; + return 0; + +error: + ep_stop(connector); + connector->cm_id = NULL; + connector->cm_state = hvnd_cm_idle; + + qp->connector = NULL; + cm_id->rem_ref(cm_id); + + return ret; +} + +static int hvnd_reject_cr(struct iw_cm_id *cm_id, const void *pdata, + u8 pdata_len) +{ + debug_check(__func__, __LINE__); + return 0; +} + +void hvnd_process_disconnect(struct hvnd_ep_obj *ep_object, int status) +{ + struct iw_cm_event cm_event; + + switch (status) { + case STATUS_SUCCESS: + case STATUS_CANCELLED: + break; + + default: + hvnd_warn("disconnect complete failed: status:%d\n", status); + } + + + hvnd_debug("active disconnect processed\n"); + memset(&cm_event, 0, sizeof(cm_event)); + + complete(&ep_object->disconnect_event); +} + + +void hvnd_process_notify_disconnect(struct hvnd_ep_obj *ep_object, int status) +{ + struct iw_cm_event cm_event; + + // make sure we only disconnect once + if (atomic_xchg(&ep_object->disconnect_notified, 1)) + return; + + /* + * Turn off CQ monitoring. + */ + if (ep_object->cq) + ep_object->cq->monitor = false; + + switch (ep_object->cm_state) { + case hvnd_cm_connect_reply_sent: + case hvnd_cm_established_sent: + case hvnd_cm_accept_sent: + break; + + default: + hvnd_error("unexpected cm_state=%d\n", ep_object->cm_state); + return; + } + + switch (status) { + case STATUS_SUCCESS: + case STATUS_CANCELLED: + case STATUS_DISCONNECTED: + break; + + default: + hvnd_warn("notify disconnect complete failed: status:%d\n", + status); + } + + hvnd_debug("passive disconnect notified\n"); + memset(&cm_event, 0, sizeof(cm_event)); + + /* + * Other end disconnected. + * Connection has been disconnected; + * notify the cm layer. + */ + cm_event.status = -ECONNRESET; + cm_event.event = IW_CM_EVENT_CLOSE; + + if ((ep_object->cm_id) && + (ep_object->cm_id->event_handler)) { + + ep_object->cm_id->event_handler(ep_object->cm_id, &cm_event); + + ep_object->cm_id->rem_ref(ep_object->cm_id); + ep_object->cm_state = hvnd_cm_close_sent; + } +} + +void hvnd_process_connector_accept(struct hvnd_ep_obj *ep_object, int status) +{ + struct iw_cm_event cm_event; + int ret; + + /* + * This is the problem area the return status may be: + * 1: 0xc00000b5 (3221225653) - {Device Timeout} The specified I/O + * operation on %hs was not completed before the time-out period + * expired + * 2: NTSTATUS 0xc0000241 (3221226049) - The transport connection was + * aborted by the local system. + * If we do nothing here, iwcm will wait for IW_CM_EVENT_ESTABLISHED + * forever, and unable to clean shutdown need to fail the call earlier + * on accept. + */ + + ep_object->connector_accept_status = status; + + if (status) { + hvnd_error("Connector accept failed; status is %x\n", status); + complete(&ep_object->connector_accept_event); + return; + } + + memset(&cm_event, 0, sizeof(cm_event)); + cm_event.event = IW_CM_EVENT_ESTABLISHED; + cm_event.ird = ep_object->ird; + cm_event.ord = ep_object->ord; + cm_event.provider_data = (void *)ep_object; + + /* + * We have successfully passively accepted the + * incoming connection. + */ + + hvnd_debug("Passive connection accepted!!\n"); + if ((ep_object->cm_id) && + (ep_object->cm_id->event_handler)) { + ep_object->cm_id->event_handler(ep_object->cm_id, &cm_event); + ep_object->cm_state = hvnd_cm_established_sent; + } + + complete(&ep_object->connector_accept_event); + + /* + * Request notification if the other end + * were to disconnect. + */ + if (!ep_add_work_pending(ep_object)) + return; + + ret = hvnd_connector_notify_disconnect(ep_object->nd_dev, + ep_object->uctx, + ep_object->ep_handle, + ep_object); + + if (ret) { + ep_del_work_pending(ep_object); + hvnd_error("Connector notify disconnect failed; ret: %d\n", + ret); + } +} + + +void hvnd_process_cq_event_pending(struct hvnd_ep_obj *ep_object, + int status) +{ + + struct ib_cq *ibcq; + struct hvnd_cq *cq; + + cq = ep_object->cq; + ibcq = &ep_object->cq->ibcq; + + if (!cq->monitor) + return; + + // call the previous CQ complete + if ((status == STATUS_PENDING) && cq->upcall_pending && + ibcq->comp_handler) { + ibcq->comp_handler(ibcq, ibcq->cq_context); + cq->upcall_pending = false; + hvnd_debug("CQ comp_handler called arm_sn=%d\n", cq->arm_sn); + } + + if ((status != STATUS_PENDING) && ibcq->comp_handler && + ibcq->cq_context) { + ibcq->comp_handler(ibcq, ibcq->cq_context); + hvnd_error("CQ comp_handler called status=%x\n", status); + } +} + +void hvnd_process_cq_event_complete(struct hvnd_ep_obj *ep_object, + int status) +{ + struct ib_cq *ibcq; + struct hvnd_cq *cq; + int ret; + + cq = ep_object->cq; + ibcq = &ep_object->cq->ibcq; + + // call hte previous CQ complete + if (cq->upcall_pending && ibcq->comp_handler) { + ibcq->comp_handler(ibcq, ibcq->cq_context); + cq->upcall_pending = false; + hvnd_debug("CQ comp_handler called arm_sn=%d\n", cq->arm_sn); + } + + cq->upcall_pending = true; + if (!ep_add_work_pending(ep_object)) + return; + + ret = hvnd_notify_cq(ep_object->nd_dev, + ep_object->cq, + ND_CQ_NOTIFY_ANY, + (u64)ep_object); + + if (ret) { + ep_del_work_pending(ep_object); +// hvnd_manage_io_state(ep_object, true); + hvnd_error("hvnd_notify_cq failed ret=%d\n", ret); + } + + if ((status != 0) && (status != STATUS_CANCELLED)) { + if (ibcq->event_handler) { + struct ib_event event; + + event.device = ibcq->device; + event.event = IB_EVENT_CQ_ERR; + event.element.cq = ibcq; + ibcq->event_handler(&event, ibcq->cq_context); + + hvnd_warn("CQ event_handler called status=%x\n", + status); + } + } +} + +int init_cm_event(struct hvnd_ep_obj *ep_object, struct iw_cm_event *cm_event, + int event) +{ + struct sockaddr_in *laddr = (struct sockaddr_in *)&cm_event->local_addr; + struct sockaddr_in *raddr = (struct sockaddr_in *)&cm_event->remote_addr; + struct nd_read_limits rd_limits; + union nd_sockaddr_inet local_addr; + union nd_sockaddr_inet remote_addr; + int ret; + + /* + * Now get the local address. + */ + ret = hvnd_connector_get_local_addr(ep_object->nd_dev, + ep_object->uctx, + ep_object->ep_handle, + &local_addr); + + if (ret) { + hvnd_error("Connector get addr failed; ret: %d\n", ret); + return ret; + } + /* + * Now get the remote address. + */ + ret = hvnd_connector_get_peer_addr(ep_object->nd_dev, + ep_object->uctx, + ep_object->ep_handle, + &remote_addr); + + if (ret) { + hvnd_error("Connector get peer addr failed; ret: %d\n", ret); + return ret; + } + + /* + * Get other connection parameters. + */ + + ret = hvnd_connector_get_rd_limits(ep_object->nd_dev, + ep_object->uctx, + ep_object->ep_handle, + &rd_limits); + + if (ret) { + hvnd_error("Connector rd limits failed; ret: %d\n", ret); + return ret; + } + + /* + * XXXKYS: Luke: What about the length of the priv data? + */ + ret = hvnd_connector_get_priv_data(ep_object->nd_dev, + ep_object->uctx, + ep_object->ep_handle, + ep_object->priv_data); + + if (ret) { + hvnd_error("Connector get priv data failed; ret: %d\n", ret); + return ret; + } + /* + * Initialize CM structure. + */ + laddr->sin_addr.s_addr = local_addr.ipv4.sin_addr.s_addr; + hvnd_debug("Local addr is %d\n", laddr->sin_addr.s_addr); + laddr->sin_port = local_addr.ipv4.sin_port; + laddr->sin_family = AF_INET; + + raddr->sin_addr.s_addr = remote_addr.ipv4.sin_addr.s_addr; + hvnd_debug("Remote addr is %d\n", raddr->sin_addr.s_addr); + raddr->sin_port = remote_addr.ipv4.sin_port; + raddr->sin_family = AF_INET; + + // KYS; LUke: is it always 148 bytes? + cm_event->private_data_len = MAX_PRIVATE_DATA_LEN; + cm_event->private_data = ep_object->priv_data; + + cm_event->ird = rd_limits.inbound; + cm_event->ord = rd_limits.outbound; + cm_event->event = event; + + ep_object->ird = cm_event->ird; + ep_object->ord = cm_event->ord; + + return 0; +} + +static void hvnd_refuse_connection(struct hvnd_ep_obj *connector, int status) +{ + struct iw_cm_event cm_event; + + memset(&cm_event, 0, sizeof(cm_event)); + + cm_event.event = IW_CM_EVENT_CONNECT_REPLY; + cm_event.status = status; + + hvnd_debug("returning status %d on connector %p\n", status, connector); + + if (connector->cm_id && connector->cm_id->event_handler) { + connector->cm_id->event_handler(connector->cm_id, &cm_event); + connector->cm_id->rem_ref(connector->cm_id); + connector->cm_state = hvnd_cm_connect_reply_refused; + } +} + +void hvnd_process_events(struct work_struct *work) +{ + struct hvnd_work *wrk; + struct nd_read_limits rd_limits; + struct hvnd_ep_obj *ep_object; + struct hvnd_ep_obj *parent; + struct iw_cm_event cm_event; + struct sockaddr_in *laddr = (struct sockaddr_in *)&cm_event.local_addr; + struct sockaddr_in *raddr = (struct sockaddr_in *)&cm_event.remote_addr; + struct ndv_packet_hdr_control_1 *ctrl_hdr; + union nd_sockaddr_inet local_addr; + union nd_sockaddr_inet remote_addr; + struct pkt_nd_get_connection_listener *connection_pkt; + struct iw_cm_id *cm_id = NULL; + int status; + int ioctl; + int ret; + char priv_data[MAX_PRIVATE_DATA_LEN]; + enum ibv_qp_state new_qp_state; + struct incoming_pkt *incoming_pkt; + unsigned long flags; + + memset(&cm_event, 0, sizeof(cm_event)); + memset(&priv_data, 0, MAX_PRIVATE_DATA_LEN); + + + wrk = container_of(work, struct hvnd_work, work); + + /* + * Now call into the connection manager. + */ + ep_object = (struct hvnd_ep_obj *)wrk->callback_arg; + parent = ep_object->parent; + +process_next: + incoming_pkt = NULL; + spin_lock_irqsave(&ep_object->incoming_pkt_list_lock, flags); + if (!list_empty(&ep_object->incoming_pkt_list)) { + incoming_pkt = list_first_entry(&ep_object->incoming_pkt_list, + struct incoming_pkt, + list_entry); + list_del(&incoming_pkt->list_entry); + } + spin_unlock_irqrestore(&ep_object->incoming_pkt_list_lock, flags); + if (incoming_pkt == NULL) + return; + + ctrl_hdr = (struct ndv_packet_hdr_control_1 *)incoming_pkt->pkt; + status = ctrl_hdr->io_status; + ioctl = ctrl_hdr->io_cntrl_code; + + hvnd_debug("Process Events IOCTL is: %s; iostatus failure: %x in work queue\n", + hvnd_get_op_name(ioctl), status); + + if (status != 0) { + bool log_error = true; + + if (ioctl == IOCTL_ND_CONNECTOR_NOTIFY_DISCONNECT && + status == STATUS_DISCONNECTED) // expected + log_error = false; + + if (log_error) + hvnd_warn("Process Events IOCTL is: %s; iostatus failure: %x\n", + hvnd_get_op_name(ioctl), status); + } + + cm_event.status = status; + + switch (ep_object->type) { + case ND_CONNECTOR: + switch (ioctl) { + case IOCTL_ND_LISTENER_GET_CONNECTION_REQUEST: + + if (ep_object->parent != NULL) { + + // Do nothing with this connection request if + // listener is stopping + if (!ep_add_work_pending(ep_object->parent)) + break; + + cm_id = ep_object->parent->cm_id; //Listener + } + + connection_pkt = (struct pkt_nd_get_connection_listener *) ctrl_hdr; + + if ((status == 0) || (status == STATUS_CANCELLED)) { + hvnd_get_incoming_connections(ep_object->parent, + ep_object->parent->nd_dev, + ep_object->uctx); + } + + if (status) + goto get_connection_request_done; + + /* + * Now get the local address. + */ + ret = hvnd_connector_get_local_addr(ep_object->nd_dev, + ep_object->uctx, + ep_object->ep_handle, + &local_addr); + + if (ret) { + hvnd_error("Connector get addr failed; ret: %d\n", + ret); + goto get_connection_request_done; + } + /* + * Now get the remote address. + */ + ret = hvnd_connector_get_peer_addr(ep_object->nd_dev, + ep_object->uctx, + ep_object->ep_handle, + &remote_addr); + + if (ret) { + hvnd_error("Connector get peer addr failed; ret: %d\n", + ret); + goto get_connection_request_done; + } + /* + * Get other connection parameters. + */ + + ret = hvnd_connector_get_rd_limits(ep_object->nd_dev, + ep_object->uctx, + ep_object->ep_handle, + &rd_limits); + + if (ret) { + hvnd_error("Connector rd imits failed; ret: %d\n", + ret); + goto get_connection_request_done; + } + + /* + * XXXKYS: Luke: What about the length of the priv data? + */ + ret = hvnd_connector_get_priv_data( + ep_object->nd_dev, ep_object->uctx, + ep_object->ep_handle, ep_object->priv_data); + + if (ret) { + hvnd_error("Connector get priv data failed; ret: %d\n", + ret); + goto get_connection_request_done; + } + + cm_event.event = IW_CM_EVENT_CONNECT_REQUEST; + cm_event.provider_data = (void *)ep_object; + + laddr->sin_addr.s_addr = local_addr.ipv4.sin_addr.s_addr; + hvnd_debug("Local addr is %d\n", + laddr->sin_addr.s_addr); + laddr->sin_port = local_addr.ipv4.sin_port; + laddr->sin_family = AF_INET; + + raddr->sin_addr.s_addr = remote_addr.ipv4.sin_addr.s_addr; + hvnd_debug("Remote addr is %d\n", + raddr->sin_addr.s_addr); + raddr->sin_port = remote_addr.ipv4.sin_port; + raddr->sin_family = AF_INET; + + // KYS; LUke: is it always 148 bytes? + cm_event.private_data_len = MAX_PRIVATE_DATA_LEN; + cm_event.private_data = ep_object->priv_data; + + cm_event.ird = rd_limits.inbound; + cm_event.ord = rd_limits.outbound; + + ep_object->ird = cm_event.ird; + ep_object->ord = cm_event.ord; + + + if ((cm_id != NULL) && cm_id->event_handler) { + cm_id->event_handler(cm_id, &cm_event); + ep_object->cm_state = hvnd_cm_connect_request_sent; + } + +get_connection_request_done: + if (ep_object->parent != NULL) + ep_del_work_pending(ep_object->parent); + break; + + case IOCTL_ND_CONNECTOR_CONNECT: + + cm_event.event = IW_CM_EVENT_CONNECT_REPLY; + if (status == STATUS_TIMEOUT && + ep_object->connector_connect_retry < 3) { + //TIMEOUT retry + + if (!ep_add_work_pending(ep_object)) + goto refuse_connection; + + hvnd_warn("Connector connect timed out, reconnecting... retry count: %d\n", + ep_object->connector_connect_retry); + ep_object->connector_connect_retry++; + ret = hvnd_send_ioctl_pkt(ep_object->nd_dev, + &ep_object->connector_connect_pkt.hdr, + sizeof(ep_object->connector_connect_pkt), + (u64)&ep_object->connector_connect_pkt); + + if (ret) { + hvnd_error("Connector on time out failed: %d\n", + ret); + ep_del_work_pending(ep_object); + goto refuse_connection; + } + break; + } + +refuse_connection: + if (status) { + cm_event.status = -ECONNREFUSED; + if (status == STATUS_TIMEOUT) + cm_event.status = -ETIMEDOUT; + + hvnd_refuse_connection(ep_object, + cm_event.status); + break; + } + + hvnd_debug("ACTIVE Connection ACCEPTED\n"); + ret = init_cm_event(ep_object, &cm_event, + IW_CM_EVENT_CONNECT_REPLY); + if (ret) { + hvnd_error("init_cm_event failed ret=%d\n", + ret); + goto process_done; + } + + ret = hvnd_connector_complete_connect(ep_object->nd_dev, + ep_object->uctx, + ep_object->ep_handle, + &new_qp_state); + if (ret) { + hvnd_error("connector_complete failed\n"); + goto process_done; + } + + cm_event.provider_data = (void *)ep_object; + + if ((ep_object->cm_id) && + (ep_object->cm_id->event_handler)) { + ep_object->cm_id->event_handler( + ep_object->cm_id, &cm_event); + ep_object->cm_state = hvnd_cm_connect_reply_sent; + } + /* + * Rquest notification if the other end + * were to disconnect. + */ + if (!ep_add_work_pending(ep_object)) + goto process_done; + + ret = hvnd_connector_notify_disconnect( + ep_object->nd_dev, ep_object->uctx, + ep_object->ep_handle, ep_object); + + if (ret) { + ep_del_work_pending(ep_object); + hvnd_error("Connector notify disconnect failed; ret: %d\n", + ret); + } + + break; + + case IOCTL_ND_CONNECTOR_NOTIFY_DISCONNECT: + hvnd_process_notify_disconnect(ep_object, status); + break; + + + default: + hvnd_error("Unknown Connector IOCTL\n"); + break; + } + break; + default: + hvnd_error("Unknown endpoint object\n"); + break; + } +process_done: + kfree(incoming_pkt); + ep_del_work_pending(ep_object); + + goto process_next; +} + + +static struct hvnd_ep_obj *hvnd_setup_ep(struct iw_cm_id *cm_id, int ep_type, + struct hvnd_dev *nd_dev, + struct hvnd_ucontext *uctx) +{ + struct hvnd_ep_obj *ep_object; + int ret; + + ep_object = kzalloc(sizeof(struct hvnd_ep_obj), GFP_KERNEL); + + if (!ep_object) + return NULL; + + ret = hvnd_init_ep(ep_object, cm_id, ep_type, nd_dev, uctx); + + if (ret) { + hvnd_error("hvnd_init_ep failed ret=%d\n", ret); + kfree(ep_object); + return NULL; + } + + return ep_object; +} + +/* + * return value: + * true: I/O state is stopped, we should not do upcall + * flase: I/O state is running and normal + */ +#if 0 +static bool hvnd_manage_io_state(struct hvnd_ep_obj *ep, bool failure) +{ + unsigned long flags; + + spin_lock_irqsave(&ep->ep_lk, flags); + if (ep->to_be_destroyed) { + hvnd_warn("ep being destroyed\n"); + if (ep->io_outstanding) { + hvnd_warn("ep being destroyed i/O pending waking up on %p\n", + &ep->block_event); + complete(&ep->block_event); + ep->io_outstanding = false; + } + spin_unlock_irqrestore(&ep->ep_lk, flags); + return true; + } + if (!failure) + ep->io_outstanding = true; + spin_unlock_irqrestore(&ep->ep_lk, flags); + return false; +} +#endif + +static int hvnd_get_incoming_connections(struct hvnd_ep_obj *listener, + struct hvnd_dev *nd_dev, + struct hvnd_ucontext *uctx) +{ + struct hvnd_ep_obj *connector; + u64 connector_handle; + int ret; + + /* + * First handle the protocol for + * destruction - outstanding I/O. + */ + +// if (hvnd_manage_io_state(listener, false)) +// return 0; + /* + * Create a connector. + */ + connector = hvnd_setup_ep(listener->cm_id, ND_CONNECTOR, nd_dev, uctx); + if (!connector) { + hvnd_error("hvnd_setup_ep failed\n"); + ret = -ENOMEM; + goto con_alloc_err; + } + + ret = hvnd_cr_connector(nd_dev, uctx, + &connector_handle); + if (ret) { + hvnd_error("hvnd_cr_connector failed ret=%d\n", ret); + goto con_cr_err; + } + + /* + * Now get a connection if one is pending. + */ + connector->ep_handle = connector_handle; + connector->parent = listener; + + if (!ep_add_work_pending(connector)) + goto get_connection_err; + + ret = hvnd_get_connection_listener(nd_dev, uctx, + listener->ep_handle, + connector_handle, + (u64)connector); + + if (ret) { + hvnd_debug("listener_get_connection failed\n"); + ep_del_work_pending(connector); + goto get_connection_err; + } + + hvnd_acquire_uctx_ref(uctx); + listener->outstanding_handle = connector_handle; + listener->outstanding_ep = connector; + hvnd_debug("outstanding handle is %p\n", (void *)connector_handle); + return 0; + +get_connection_err: + hvnd_free_handle(nd_dev, uctx, + connector_handle, + IOCTL_ND_CONNECTOR_FREE); + +con_cr_err: + kfree(connector); +con_alloc_err: +// hvnd_manage_io_state(listener, true); + return ret; +} + +static int hvnd_create_listen(struct iw_cm_id *cm_id, int backlog) +{ + int ret = 0; + struct hvnd_dev *nd_dev; + struct hvnd_ucontext *uctx; + struct hvnd_ep_obj *ep_object; + union nd_sockaddr_inet addr; + union nd_sockaddr_inet local_addr; + u64 listener_handle; + struct sockaddr_in *laddr = (struct sockaddr_in *)&cm_id->local_addr; + union nd_sockaddr_inet og_addr; + + + nd_dev = to_nd_dev(cm_id->device); + uctx = get_uctx(nd_dev, current_pid()); + hvnd_debug("uctx is %p; pid is %d\n", uctx, current_pid()); + + if (cm_id->local_addr.ss_family != AF_INET) { + hvnd_error("cm_id->local_addr.ss_family =%d not AF_INET\n", + cm_id->local_addr.ss_family); + return -ENOSYS; + } + + /* + * If the local address is LOOPBACK or INADDR_ANY, get an an address + * to bind the listener. For now, just get the first address + * available. + */ + + if (IN_LOOPBACK(ntohl(laddr->sin_addr.s_addr)) || + (laddr->sin_addr.s_addr == INADDR_ANY)) { + + hvnd_debug("need to get an address\n"); + ret = hvnd_get_outgoing_rdma_addr(nd_dev, uctx, &og_addr); + + if (ret) { + hvnd_error("failed to get the og address\n"); + return ret; + } + + laddr->sin_addr.s_addr = og_addr.ipv4.sin_addr.s_addr; + } + + cm_id->add_ref(cm_id); + + ep_object = hvnd_setup_ep(cm_id, ND_LISTENER, nd_dev, uctx); + + if (!ep_object) { + hvnd_error("hvnd_setup_ep returned NULL\n"); + goto alloc_err; + } + + ret = hvnd_cr_listener(nd_dev, uctx, + &listener_handle); + if (ret) { + hvnd_error("hvnd_cr_listener failed ret=%d\n", ret); + goto cr_err; + } + + ep_object->ep_handle = listener_handle; + + cm_id->provider_data = ep_object; + + /* + * Now bind the listener. + * IPV4 support only. + */ + memcpy(&addr.ipv4, laddr, sizeof(struct sockaddr_in)); + + ret = hvnd_bind_listener(nd_dev, uctx, + listener_handle, + &addr); + if (ret) { + hvnd_error("hvnd_bind_listener failed ret=%d\n", ret); + goto bind_err; + } + + /* + * Now get the local address. + */ + ret = hvnd_get_addr_listener(nd_dev, uctx, + listener_handle, + &local_addr); + if (ret) { + hvnd_error("hvnd_get_addr_listener failed ret=%d\n", ret); + goto bind_err; + } + + /* + * Now put the listener in the listen mode. + */ + + ret = hvnd_listen_listener(nd_dev, uctx, + listener_handle, + backlog); + + if (ret) { + hvnd_error("hvnd_listen_listener failed ret=%d\n", ret); + goto bind_err; + } + + + /* + * Now get a pending connection if one is pending. + */ + ret = hvnd_get_incoming_connections(ep_object, nd_dev, uctx); + if (ret) { + hvnd_error("hvnd_get_incoming_connections failed ret=%d\n", + ret); + goto bind_err; + } + + hvnd_acquire_uctx_ref(uctx); + hvnd_debug("cm_id=%p\n", cm_id); + return 0; + +bind_err: + hvnd_free_handle(nd_dev, uctx, + listener_handle, + IOCTL_ND_LISTENER_FREE); +cr_err: + kfree(ep_object); +alloc_err: + cm_id->provider_data = NULL; + cm_id->rem_ref(cm_id); + return ret; +} + +static int hvnd_destroy_listen(struct iw_cm_id *cm_id) +{ + struct hvnd_dev *nd_dev; + struct hvnd_ucontext *uctx; + struct hvnd_ep_obj *ep_object; + + nd_dev = to_nd_dev(cm_id->device); + + ep_object = (struct hvnd_ep_obj *)cm_id->provider_data; + + hvnd_debug("uctx is %p\n", ep_object->uctx); + hvnd_debug("Destroying Listener cm_id=%p\n", cm_id); + uctx = ep_object->uctx; + + // make sure there is nothing in progress on this ep + ep_stop(ep_object); + + hvnd_free_handle(nd_dev, uctx, + ep_object->ep_handle, + IOCTL_ND_LISTENER_FREE); + + /* + * We may have an ouststanding connector for + * incoming connection requests; clean it up. + */ + + if (ep_object->outstanding_handle != 0) { + + // make sure there is nothing in progress on this ep + ep_stop(ep_object->outstanding_ep); + + hvnd_free_handle(nd_dev, uctx, + ep_object->outstanding_handle, + IOCTL_ND_CONNECTOR_FREE); + + + hvnd_drop_uctx_ref(nd_dev, uctx); + hvnd_destroy_ep(ep_object->outstanding_ep); + } + + /* + * Now everything should have stopped + */ + + cm_id->rem_ref(cm_id); + hvnd_destroy_ep(ep_object); + cm_id->provider_data = NULL; + hvnd_drop_uctx_ref(nd_dev, uctx); + + hvnd_debug("cm_id=%p\n", cm_id); + return 0; +} + +static void hvnd_qp_add_ref(struct ib_qp *ibqp) +{ + struct hvnd_qp *qp = to_nd_qp(ibqp); + + atomic_inc(&qp->refcnt); +} + +void hvnd_qp_rem_ref(struct ib_qp *ibqp) +{ + struct hvnd_qp *qp = to_nd_qp(ibqp); + + if (atomic_dec_and_test(&qp->refcnt)) + wake_up(&qp->wait); +} + +static DEVICE_ATTR(hw_rev, 0444, hvnd_show_rev, NULL); +static DEVICE_ATTR(fw_ver, 0444, hvnd_show_fw_ver, NULL); +static DEVICE_ATTR(hca_type, 0444, hvnd_show_hca, NULL); +static DEVICE_ATTR(board_id, 0444, hvnd_show_board, NULL); + +static struct device_attribute *hvnd_class_attributes[] = { + &dev_attr_hw_rev, + &dev_attr_fw_ver, + &dev_attr_hca_type, + &dev_attr_board_id, +}; + +int hvnd_register_device(struct hvnd_dev *dev, char *ip_addr, char *mac_addr) +{ + int ret; + + dev->ibdev.owner = THIS_MODULE; + dev->device_cap_flags = IB_DEVICE_LOCAL_DMA_LKEY | IB_DEVICE_MEM_WINDOW; + dev->ibdev.local_dma_lkey = 0; + dev->ibdev.uverbs_cmd_mask = + (1ull << IB_USER_VERBS_CMD_GET_CONTEXT) | + (1ull << IB_USER_VERBS_CMD_QUERY_DEVICE) | + (1ull << IB_USER_VERBS_CMD_QUERY_PORT) | + (1ull << IB_USER_VERBS_CMD_ALLOC_PD) | + (1ull << IB_USER_VERBS_CMD_DEALLOC_PD) | + (1ull << IB_USER_VERBS_CMD_REG_MR) | + (1ull << IB_USER_VERBS_CMD_DEREG_MR) | + (1ull << IB_USER_VERBS_CMD_CREATE_COMP_CHANNEL) | + (1ull << IB_USER_VERBS_CMD_CREATE_CQ) | + (1ull << IB_USER_VERBS_CMD_DESTROY_CQ) | + (1ull << IB_USER_VERBS_CMD_REQ_NOTIFY_CQ) | + (1ull << IB_USER_VERBS_CMD_CREATE_QP) | + (1ull << IB_USER_VERBS_CMD_MODIFY_QP) | + (1ull << IB_USER_VERBS_CMD_QUERY_QP) | + (1ull << IB_USER_VERBS_CMD_POLL_CQ) | + (1ull << IB_USER_VERBS_CMD_DESTROY_QP) | + (1ull << IB_USER_VERBS_CMD_POST_SEND) | + (1ull << IB_USER_VERBS_CMD_POST_RECV); + dev->ibdev.node_type = RDMA_NODE_RNIC; + memcpy(dev->ibdev.node_desc, HVND_NODE_DESC, sizeof(HVND_NODE_DESC)); + memcpy(&dev->ibdev.node_guid, mac_addr, 6); + dev->ibdev.phys_port_cnt = 1; //dev->nports; + dev->ibdev.num_comp_vectors = 1; + dev->ibdev.ops.query_device = hvnd_query_device; + dev->ibdev.ops.query_port = hvnd_query_port; + dev->ibdev.ops.get_link_layer = hvnd_get_link_layer; + dev->ibdev.ops.query_pkey = hvnd_query_pkey; + dev->ibdev.ops.query_gid = hvnd_query_gid; + dev->ibdev.ops.alloc_ucontext = hvnd_alloc_ucontext; + dev->ibdev.ops.dealloc_ucontext = hvnd_dealloc_ucontext; + dev->ibdev.ops.mmap = hvnd_mmap; + dev->ibdev.ops.alloc_pd = hvnd_allocate_pd; + dev->ibdev.ops.dealloc_pd = hvnd_deallocate_pd; + dev->ibdev.ops.create_ah = hvnd_ah_create; + dev->ibdev.ops.destroy_ah = hvnd_ah_destroy; + dev->ibdev.ops.create_qp = hvnd_ib_create_qp; + dev->ibdev.ops.modify_qp = hvnd_ib_modify_qp; + dev->ibdev.ops.query_qp = hvnd_ib_query_qp; + dev->ibdev.ops.destroy_qp = hvnd_destroy_qp; + dev->ibdev.ops.create_cq = hvnd_ib_create_cq; + dev->ibdev.ops.destroy_cq = hvnd_ib_destroy_cq; + dev->ibdev.ops.resize_cq = hvnd_resize_cq; + dev->ibdev.ops.poll_cq = hvnd_poll_cq; + dev->ibdev.ops.get_dma_mr = hvnd_get_dma_mr; + dev->ibdev.ops.reg_user_mr = hvnd_reg_user_mr; + dev->ibdev.ops.dereg_mr = hvnd_dereg_mr; + dev->ibdev.ops.alloc_mw = hvnd_alloc_mw; + dev->ibdev.ops.dealloc_mw = hvnd_dealloc_mw; + dev->ibdev.ops.attach_mcast = hvnd_multicast_attach; + dev->ibdev.ops.detach_mcast = hvnd_multicast_detach; + dev->ibdev.ops.process_mad = hvnd_process_mad; + dev->ibdev.ops.req_notify_cq = hvnd_arm_cq; + dev->ibdev.ops.post_send = hvnd_post_send; + dev->ibdev.ops.post_recv = hvnd_post_receive; + dev->ibdev.uverbs_abi_ver = MLX4_IB_UVERBS_ABI_VERSION; + + dev->ibdev.ops.get_port_immutable = hvnd_get_port_immutable; + + //DMA ops for mapping all possible addresses + dev->ibdev.dev.parent = &(dev->hvdev->device); + dev->ibdev.dev.dma_ops = &vmbus_dma_ops; + dev->ibdev.dev.dma_mask = (u64 *) DMA_BIT_MASK(64); + dev->ibdev.dev.coherent_dma_mask = DMA_BIT_MASK(64); + + dev->ibdev.iwcm = kmalloc(sizeof(struct iw_cm_verbs), GFP_KERNEL); + if (!dev->ibdev.iwcm) + return -ENOMEM; + + dev->ibdev.iwcm->connect = hvnd_connect; + dev->ibdev.iwcm->accept = hvnd_accept_cr; + dev->ibdev.iwcm->reject = hvnd_reject_cr; + dev->ibdev.iwcm->create_listen = hvnd_create_listen; + dev->ibdev.iwcm->destroy_listen = hvnd_destroy_listen; + dev->ibdev.iwcm->add_ref = hvnd_qp_add_ref; + dev->ibdev.iwcm->rem_ref = hvnd_qp_rem_ref; + dev->ibdev.iwcm->get_qp = hvnd_get_qp; + + ret = ib_register_device(&dev->ibdev, "mlx4_%d", NULL); + if (ret) { + hvnd_error("ib_register_device failed ret=%d\n", ret); + goto bail1; + } + +#if 0 + for (i = 0; i < ARRAY_SIZE(hvnd_class_attributes); ++i) { + ret = device_create_file(&dev->ibdev.dev, + hvnd_class_attributes[i]); + if (ret) { + hvnd_error("device_create_file failed ret=%d\n", ret); + goto bail2; + } + } +#endif + + dev->ib_active = true; + return 0; +//bail2: +// ib_unregister_device(&dev->ibdev); +bail1: + kfree(dev->ibdev.iwcm); + return ret; +} + +void hvnd_unregister_device(struct hvnd_dev *dev) +{ + int i; + + for (i = 0; i < ARRAY_SIZE(hvnd_class_attributes); ++i) + device_remove_file(&dev->ibdev.dev, + hvnd_class_attributes[i]); + ib_unregister_device(&dev->ibdev); + kfree(dev->ibdev.iwcm); + ib_dealloc_device((struct ib_device *)dev); +} + +static int hvnd_try_bind_nic(unsigned char *mac, __be32 ip) +{ + int ret; + struct hvnd_dev *nd_dev = g_nd_dev; + + mutex_lock(&nd_dev->bind_mutex); + if (nd_dev->bind_complete) { + mutex_unlock(&nd_dev->bind_mutex); + return 1; + } + + memcpy(nd_dev->mac_addr, mac, 6); + *(__be32 *)(nd_dev->ip_addr) = ip; + + /* + * Bind the NIC. + */ + hvnd_info("trying to bind to IP %pI4 MAC %pM\n", + nd_dev->ip_addr, nd_dev->mac_addr); + ret = hvnd_bind_nic(nd_dev, false, nd_dev->ip_addr, nd_dev->mac_addr); + if (ret || nd_dev->bind_pkt.pkt_hdr.status) { + mutex_unlock(&nd_dev->bind_mutex); + return 1; + } + + /* if we reach here, this means bind_nic is a success */ + hvnd_error("successfully bound to IP %pI4 MAC %pM\n", + nd_dev->ip_addr, nd_dev->mac_addr); + complete(&nd_dev->addr_set); + nd_dev->bind_complete = 1; + mutex_unlock(&nd_dev->bind_mutex); + + ret = hvnd_register_device(nd_dev, nd_dev->ip_addr, nd_dev->mac_addr); + + if (!ret) + return 0; + + hvnd_error("hvnd_register_device failed ret=%d\n", ret); + + /* roll back all allocated resources on error */ + iounmap(nd_dev->mmio_virt); + release_resource(&nd_dev->mmio_resource); + + vmbus_close(nd_dev->hvdev->channel); + ib_dealloc_device((struct ib_device *)nd_dev); + + return 1; +} + +static void hvnd_inetaddr_event_up(unsigned long event, struct in_ifaddr *ifa) +{ + hvnd_try_bind_nic(ifa->ifa_dev->dev->dev_addr, ifa->ifa_address); +} + +static int hvnd_inetaddr_event(struct notifier_block *notifier, + unsigned long event, void *ptr) +{ + struct in_ifaddr *ifa = ptr; + + switch (event) { + case NETDEV_UP: + hvnd_inetaddr_event_up(event, ifa); + break; + default: + hvnd_debug("Received inetaddr event %lu\n", event); + } + + return NOTIFY_DONE; +} + +static struct notifier_block hvnd_inetaddr_notifier = { + .notifier_call = hvnd_inetaddr_event, +}; + +static int start_bind_nic(void) +{ + struct net_device *dev; + struct in_device *idev; + struct in_ifaddr *ifa; + + register_inetaddr_notifier(&hvnd_inetaddr_notifier); + + rtnl_lock(); + for_each_netdev(&init_net, dev) { + idev = in_dev_get(dev); + if (!idev) + continue; + for (ifa = (idev)->ifa_list; + ifa && !(ifa->ifa_flags&IFA_F_SECONDARY); + ifa = ifa->ifa_next) { + hvnd_try_bind_nic(dev->dev_addr, ifa->ifa_address); + } + } + rtnl_unlock(); + + return 0; +} + +static int hvnd_probe(struct hv_device *dev, + const struct hv_vmbus_device_id *dev_id) +{ + struct hvnd_dev *nd_dev; + int ret = 0; + + hvnd_debug("hvnd starting\n"); + + nd_dev = (struct hvnd_dev *)ib_alloc_device(sizeof(struct hvnd_dev)); + if (!nd_dev) { + ret = -ENOMEM; + goto err_out0; + } + + nd_dev->hvdev = dev; + /* + * We are going to masquerade as MLX4 device; + * Set the vendor and device ID accordingly. + */ + dev->vendor_id = 0x15b3; //Mellanox + dev->device_id = 0x1003; //Mellanox HCA + INIT_LIST_HEAD(&nd_dev->listentry); + spin_lock_init(&nd_dev->uctxt_lk); + nd_dev->ib_active = false; + + /* + * Initialize the state for the id table. + */ + spin_lock_init(&nd_dev->id_lock); + idr_init(&nd_dev->cqidr); + idr_init(&nd_dev->qpidr); + idr_init(&nd_dev->mmidr); + idr_init(&nd_dev->irpidr); + idr_init(&nd_dev->uctxidr); + + atomic_set(&nd_dev->open_cnt, 0); + + sema_init(&nd_dev->query_pkt_sem, 1); + + ret = vmbus_open(dev->channel, HVND_RING_SZ, HVND_RING_SZ, NULL, 0, + hvnd_callback, dev); + + if (ret) { + hvnd_error("vmbus_open failed ret=%d\n", ret); + goto err_out1; + } + + hv_set_drvdata(dev, nd_dev); + + ret = hvnd_negotiate_version(nd_dev); + + if (ret) { + hvnd_error("hvnd_negotiate_version failed ret=%d\n", ret); + goto err_out2; + } + + /* + * Register resources with the host. + */ + ret = hvnd_init_resources(nd_dev); + if (ret) { + hvnd_error("hvnd_init_resources failed ret=%d\n", ret); + goto err_out2; + } + + /* + * Try to bind every NIC to ND channel, + * ND host will only return success for the correct one + */ + nd_dev->bind_complete = 0; + mutex_init(&nd_dev->bind_mutex); + init_completion(&nd_dev->addr_set); + + g_nd_dev = nd_dev; + start_bind_nic(); + + return 0; + +err_out2: + vmbus_close(dev->channel); + +err_out1: + ib_dealloc_device((struct ib_device *)nd_dev); + +err_out0: + return ret; +} + +static int hvnd_remove(struct hv_device *dev) +{ + struct hvnd_dev *nd_dev = hv_get_drvdata(dev); + + unregister_inetaddr_notifier(&hvnd_inetaddr_notifier); + hvnd_bind_nic(nd_dev, true, nd_dev->ip_addr, nd_dev->mac_addr); + hvnd_unregister_device(nd_dev); + vmbus_close(dev->channel); + iounmap(nd_dev->mmio_virt); + release_resource(&nd_dev->mmio_resource); + return 0; +} + +static const struct hv_vmbus_device_id id_table[] = { + /* VMBUS RDMA class guid */ + /* 8c2eaf3d-32a7-4b09-ab99-bd1f1c86b501 */ + { HV_ND_GUID, }, + { }, +}; + +MODULE_DEVICE_TABLE(vmbus, id_table); + +static struct hv_driver hvnd_drv = { + .name = "hv_guest_rdma", + .id_table = id_table, + .probe = hvnd_probe, + .remove = hvnd_remove, +}; + + +static int __init init_hvnd_drv(void) +{ + + pr_info("Registered HyperV networkDirect Driver\n"); + return vmbus_driver_register(&hvnd_drv); +} + +static void exit_hvnd_drv(void) +{ + pr_info("De-Registered HyperV networkDirect Driver\n"); + vmbus_driver_unregister(&hvnd_drv); +} + + +module_init(init_hvnd_drv); +module_exit(exit_hvnd_drv); + +MODULE_DESCRIPTION("Hyper-V NetworkDirect Driver"); +MODULE_LICENSE("GPL"); +MODULE_VERSION("4.1.3"); --- linux-azure-5.8-5.8.0.orig/drivers/infiniband/hw/vmbus-rdma/vmbus-rdma-142.0/user.h +++ linux-azure-5.8-5.8.0/drivers/infiniband/hw/vmbus-rdma/vmbus-rdma-142.0/user.h @@ -0,0 +1,107 @@ +/* + * Copyright (c) 2007 Cisco Systems, Inc. All rights reserved. + * Copyright (c) 2007, 2008 Mellanox Technologies. All rights reserved. + * + * This software is available to you under a choice of one of two + * licenses. You may choose to be licensed under the terms of the GNU + * General Public License (GPL) Version 2, available from the file + * COPYING in the main directory of this source tree, or the + * OpenIB.org BSD license below: + * + * Redistribution and use in source and binary forms, with or + * without modification, are permitted provided that the following + * conditions are met: + * + * - Redistributions of source code must retain the above + * copyright notice, this list of conditions and the following + * disclaimer. + * + * - Redistributions in binary form must reproduce the above + * copyright notice, this list of conditions and the following + * disclaimer in the documentation and/or other materials + * provided with the distribution. + * + * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, + * EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF + * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND + * NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS + * BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN + * ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN + * CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE + * SOFTWARE. + */ + +#ifndef MLX4_IB_USER_H +#define MLX4_IB_USER_H + +#include + +/* + * Increment this value if any changes that break userspace ABI + * compatibility are made. + */ + +#define MLX4_IB_UVERBS_NO_DEV_CAPS_ABI_VERSION 3 +#define MLX4_IB_UVERBS_ABI_VERSION 4 + +/* + * Make sure that all structs defined in this file remain laid out so + * that they pack the same way on 32-bit and 64-bit architectures (to + * avoid incompatibility between 32-bit userspace and 64-bit kernels). + * In particular do not use pointer types -- pass pointers in __u64 + * instead. + */ + +struct mlx4_ib_alloc_ucontext_resp_v3 { + __u32 qp_tab_size; + __u16 bf_reg_size; + __u16 bf_regs_per_page; +}; + +struct mlx4_ib_alloc_ucontext_resp { + __u32 dev_caps; + __u32 qp_tab_size; + __u16 bf_reg_size; + __u16 bf_regs_per_page; + __u32 cqe_size; +}; + +struct mlx4_ib_alloc_pd_resp { + __u32 pdn; + __u32 reserved; +}; + +struct mlx4_ib_create_cq { + __u64 buf_addr; + __u64 db_addr; +}; + +struct mlx4_ib_create_cq_resp { + __u32 cqn; + __u32 reserved; +}; + +struct mlx4_ib_resize_cq { + __u64 buf_addr; +}; + +struct mlx4_ib_create_srq { + __u64 buf_addr; + __u64 db_addr; +}; + +struct mlx4_ib_create_srq_resp { + __u32 srqn; + __u32 reserved; +}; + +struct mlx4_ib_create_qp { + __u64 buf_addr; + __u64 db_addr; + __u8 log_sq_bb_count; + __u8 log_sq_stride; + __u8 sq_no_prefetch; + __u8 reserved[5]; +}; + +#endif /* MLX4_IB_USER_H */ --- linux-azure-5.8-5.8.0.orig/drivers/infiniband/hw/vmbus-rdma/vmbus-rdma-142.0/vmbus_rdma.c +++ linux-azure-5.8-5.8.0/drivers/infiniband/hw/vmbus-rdma/vmbus-rdma-142.0/vmbus_rdma.c @@ -0,0 +1,3061 @@ +/* + * Copyright (c) 2014, Microsoft Corporation. + * + * Author: + * K. Y. Srinivasan + * + * This program is free software; you can redistribute it and/or modify it + * under the terms of the GNU General Public License version 2 as published + * by the Free Software Foundation. + * + * This program is distributed in the hope that it will be useful, but + * WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE, GOOD TITLE or + * NON INFRINGEMENT. See the GNU General Public License for more + * details. + * + * Bug fixes/enhancements: Long Li + */ + +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include + +#include "vmbus_rdma.h" + +/* + * We only have a single rdma device on the host; + * have a single receive buffer. + */ + + +static char hvnd_recv_buffer[PAGE_SIZE * 4]; + +static atomic_t irp_local_hdl; + +char *hvnd_get_op_name(int ioctl) +{ + switch (ioctl) { + case IOCTL_ND_PROVIDER_INIT: + return "IOCTL_ND_PROVIDER_INIT\n"; + case IOCTL_ND_PROVIDER_BIND_FILE: + return "IOCTL_ND_PROVIDER_BIND_FILE\n"; + case IOCTL_ND_ADAPTER_OPEN: + return "IOCTL_ND_ADAPTER_OPEN\n"; + + case IOCTL_ND_ADAPTER_CLOSE: + return "IOCTL_ND_ADAPTER_CLOSE\n"; + + case IOCTL_ND_ADAPTER_QUERY: + return "IOCTL_ND_ADAPTER_QUERY\n"; + + case IOCTL_ND_PD_CREATE: + return "IOCTL_ND_PD_CREATE\n"; + + case IOCTL_ND_PD_FREE: + return "IOCTL_ND_PD_FREE\n"; + + case IOCTL_ND_CQ_CREATE: + return "IOCTL_ND_CQ_CREATE\n"; + + case IOCTL_ND_CQ_FREE: + return "IOCTL_ND_CQ_FREE\n"; + case IOCTL_ND_CQ_CANCEL_IO: + return "IOCTL_ND_CQ_CANCEL_IO\n"; + case IOCTL_ND_CQ_GET_AFFINITY: + return "IOCTL_ND_CQ_GET_AAFINITY\n"; + case IOCTL_ND_CQ_MODIFY: + return "IOCTL_ND_CQ_MODIFY\n"; + + case IOCTL_ND_CQ_NOTIFY: + return "IOCTL_ND_CQ_NOTIFY\n"; + + + case IOCTL_ND_LISTENER_CREATE: + return "IOCTL_ND_LISTENER_CREATE\n"; + + case IOCTL_ND_LISTENER_FREE: + return "IOCTL_ND_LISTENER_FREE\n"; + + case IOCTL_ND_QP_FREE: + return "IOCTL_ND_QP_FREE\n"; + + case IOCTL_ND_CONNECTOR_CANCEL_IO: + return "IOCTL_ND_CONNECTOR_CANCEL_IO\n"; + + case IOCTL_ND_LISTENER_CANCEL_IO: + return "IOCTL_ND_LISTENER_CANCEL_IO\n"; + + case IOCTL_ND_LISTENER_BIND: + return "IOCTL_ND_LISTENER_BIND\n"; + + case IOCTL_ND_LISTENER_LISTEN: + return "IOCTL_ND_LISTENER_LISTEN\n"; + + case IOCTL_ND_LISTENER_GET_ADDRESS: + return "IOCTL_ND_LISTENER_GET_ADDRESS\n"; + + case IOCTL_ND_LISTENER_GET_CONNECTION_REQUEST: + return "IOCTL_ND_LISTENER_GET_CONNECTION_REQUEST\n"; + + + + case IOCTL_ND_CONNECTOR_CREATE: + return "IOCTL_ND_CONNECTOR_CREATE\n"; + + case IOCTL_ND_CONNECTOR_FREE: + return "IOCTL_ND_CONNECTOR_FREE\n"; + + case IOCTL_ND_CONNECTOR_BIND: + return "IOCTL_ND_CONNECTOR_BIND\n"; + + // KYS: ALERT: ASYNCH Operation + case IOCTL_ND_CONNECTOR_CONNECT: + return "IOCTL_ND_CONNECTOR_CONNECT\n"; + + case IOCTL_ND_CONNECTOR_COMPLETE_CONNECT: + return "IOCTL_ND_CONNECTOR_COMPLETE_CONNECT\n"; + + // KYS: ALERT: ASYNCH Operation + case IOCTL_ND_CONNECTOR_ACCEPT: + return "IOCTL_ND_CONNECTOR_ACCEPT\n"; + + case IOCTL_ND_CONNECTOR_REJECT: + return "IOCTL_ND_CONNECTOR_REJECT\n"; + + case IOCTL_ND_CONNECTOR_GET_READ_LIMITS: + return "IOCTL_ND_CONNECTOR_GET_READ_LIMITS\n"; + + case IOCTL_ND_CONNECTOR_GET_PRIVATE_DATA: + return "IOCTL_ND_CONNECTOR_GET_PRIVATE_DATA\n"; + + case IOCTL_ND_CONNECTOR_GET_PEER_ADDRESS: + return "IOCTL_ND_CONNECTOR_GET_PEER_ADDRESS\n"; + + case IOCTL_ND_CONNECTOR_GET_ADDRESS: + return "IOCTL_ND_CONNECTOR_GET_ADDRESS\n"; + + // KYS: ALERT: ASYNCH Operation + case IOCTL_ND_CONNECTOR_NOTIFY_DISCONNECT: + return "IOCTL_ND_CONNECTOR_NOTIFY_DISCONNECT\n"; + + // KYS: ALERT: ASYNCH Operation + case IOCTL_ND_CONNECTOR_DISCONNECT: + return "IOCTL_ND_CONNECTOR_DISCONNECT\n"; + + + + case IOCTL_ND_QP_CREATE: + return "IOCTL_ND_QP_CREATE\n"; + + case IOCTL_ND_MR_CREATE: + return "IOCTL_ND_MR_CREATE\n"; + + case IOCTL_ND_MR_FREE: + return "IOCTL_ND_MR_FREE\n"; + case IOCTL_ND_MR_REGISTER: + return "IOCTL_ND_MR_REGISTER\n"; + case IOCTL_ND_MR_DEREGISTER: + return "IOCTL_ND_MR_DEREGISTER\n"; + case IOCTL_ND_MR_CANCEL_IO: + return "IOCTL_ND_MR_CANCEL_IO\n"; + case IOCTL_ND_ADAPTER_QUERY_ADDRESS_LIST: + return "IOCTL_ND_ADAPTER_QUERY_ADDRESS_LIST\n"; + case IOCTL_ND_QP_FLUSH: + return "IOCTL_ND_QP_FLUSH\n"; + + default: + return "Unknown IOCTL\n"; + } +} +int get_irp_handle(struct hvnd_dev *nd_dev, u32 *local, void *irp_ctx) +{ + unsigned int local_handle; + int ret; + + local_handle = atomic_inc_return(&irp_local_hdl); + *local = local_handle; + + /* + * Now asssociate the local handle with the pointer. + */ + ret = insert_handle(nd_dev, &nd_dev->irpidr, irp_ctx, local_handle); + hvnd_debug("irp_ctx=%p local_handle=%u\n", irp_ctx, local_handle); + + if (ret) { + hvnd_error("insert_handle failed ret=%d\n", ret); + return ret; + } + + return 0; +} + +void put_irp_handle(struct hvnd_dev *nd_dev, u32 irp) +{ + remove_handle(nd_dev, &nd_dev->irpidr, irp); + +} + +static void init_pfn(u64 *pfn, void *addr, u32 length) +{ + int i; + u32 offset = offset_in_page(addr); + u32 num_pfn = DIV_ROUND_UP(offset + length, PAGE_SIZE); + + for (i = 0; i < num_pfn; i++) + pfn[i] = virt_to_phys((u8 *)addr + + (PAGE_SIZE * i)) >> PAGE_SHIFT; +} + + +static void user_va_init_pfn(u64 *pfn, struct ib_umem *umem) +{ + int entry; + struct scatterlist *sg; + int i = 0; + + for_each_sg(umem->sg_head.sgl, sg, umem->nmap, entry) { + pfn[i++] = page_to_pfn(sg_page(sg)); + } +} + +static u32 get_local_handle(void *p) +{ + u64 val = (unsigned long)p; + + return (u32)val; +} + +static int hvnd_send_pg_buffer(struct hvnd_dev *nd_dev, + struct vmbus_packet_mpb_array *desc, + u32 desc_size, + void *buffer, + u32 bufferlen, u64 cookie) +{ + int ret; + int t; + struct hvnd_cookie hvnd_cookie; + + hvnd_cookie.pkt = (void *)cookie; + init_completion(&hvnd_cookie.host_event); + + ret = vmbus_sendpacket_mpb_desc(nd_dev->hvdev->channel, + desc, + desc_size, + buffer, bufferlen, + (u64)(&hvnd_cookie)); + + if (ret) { + hvnd_error("vmbus_sendpacket_mpb_desc failed ret=%d\n", ret); + goto err; + } + + t = wait_for_completion_timeout(&hvnd_cookie.host_event, 500*HZ); + + if (t == 0) { + hvnd_error("wait_for_completion_timeout timed out\n"); + ret = -ETIMEDOUT; + } + +err: + return ret; +} + +static int hvnd_send_packet(struct hvnd_dev *nd_dev, void *buffer, + u32 bufferlen, u64 cookie, bool block) +{ + int ret; + int t; + struct hvnd_cookie hvnd_cookie; + + hvnd_cookie.pkt = (void *)cookie; + init_completion(&hvnd_cookie.host_event); + + ret = vmbus_sendpacket(nd_dev->hvdev->channel, buffer, bufferlen, + (u64)(&hvnd_cookie), VM_PKT_DATA_INBAND, + VMBUS_DATA_PACKET_FLAG_COMPLETION_REQUESTED); + + if (ret) { + hvnd_error("vmbus_send pkt failed: %d\n", ret); + goto err; + } + + if (!block) + return ret; + + t = wait_for_completion_timeout(&hvnd_cookie.host_event, 500*HZ); + + if (t == 0) { + hvnd_error("wait_for_completion_timeout timed out\n"); + ret = -ETIMEDOUT; + } + +err: + return ret; +} + +static int hvnd_send_pgbuf_ioctl_pkt(struct hvnd_dev *nd_dev, + struct vmbus_packet_mpb_array *desc, + u32 desc_size, + struct ndv_packet_hdr_control_1 *hdr, + u32 pkt_size, u64 cookie) +{ + int ret; + int ioctl; + + ioctl = hdr->io_cntrl_code; + + + ret = hvnd_send_pg_buffer(nd_dev, desc, desc_size, + hdr, pkt_size, cookie); + + if (ret) + return ret; + + if (hdr->pkt_hdr.status != 0) { + hvnd_error("IOCTL: %s failed; status is %x\n", + hvnd_get_op_name(ioctl), + hdr->pkt_hdr.status); + return -EINVAL; + } + + switch (hdr->io_status) { + case STATUS_SUCCESS: + case STATUS_PENDING: + return 0; + + default: + hvnd_error("IOCTL: %s failed io status is %x\n", + hvnd_get_op_name(ioctl), hdr->io_status); + return -EINVAL; + } +} + +int hvnd_send_ioctl_pkt(struct hvnd_dev *nd_dev, + struct ndv_packet_hdr_control_1 *hdr, + u32 pkt_size, u64 cookie) +{ + int ret; + int ioctl; + bool block; + + block = (hdr->irp_handle.val64 == 0) ? true : false; + + + ioctl = hdr->io_cntrl_code; + + ret = hvnd_send_packet(nd_dev, hdr, pkt_size, cookie, block); + + if (ret) + return ret; + + if (!block) + return ret; + + if (hdr->pkt_hdr.status != 0) { + hvnd_error("IOCTL: %s failed; status is %x\n", + hvnd_get_op_name(ioctl), hdr->pkt_hdr.status); + return -EINVAL; + } + + switch (hdr->io_status) { + case STATUS_SUCCESS: + case STATUS_PENDING: + return 0; + + default: + hvnd_warn("IOCTL: %s failed io status is %x\n", + hvnd_get_op_name(ioctl), hdr->io_status); + return -EINVAL; + } +} + +void hvnd_init_hdr(struct ndv_packet_hdr_control_1 *hdr, + u32 data_sz, u32 local, u32 remote, + u32 ioctl_code, + u32 ext_data_sz, u32 ext_data_offset, + u64 irp_handle) + +{ + int pkt_type; + + pkt_type = NDV_PKT_ID1_CONTROL; + NDV_ADD_PACKET_OPTION(pkt_type, NDV_PACKET_OPTIONS_REQUIRES_PASSIVE); + hdr->pkt_hdr.packet_type = pkt_type; + hdr->pkt_hdr.hdr_sz = sizeof(struct ndv_packet_hdr_control_1); + hdr->pkt_hdr.data_sz = data_sz; + + hdr->pkt_hdr.status = 0; + + hdr->file_handle.local = local; + hdr->file_handle.remote = remote; + hdr->irp_handle.val64 = irp_handle; + + hdr->io_cntrl_code = ioctl_code; + hdr->output_buf_sz = data_sz - ext_data_sz; + hdr->input_buf_sz = data_sz - ext_data_sz; + + hdr->input_output_buf_offset = 0; + + hdr->extended_data.size = ext_data_sz; + hdr->extended_data.offset = ext_data_offset; +} + + +int hvnd_create_file(struct hvnd_dev *nd_dev, void *uctx, + struct ndv_pkt_hdr_create_1 *create, u32 file_flags) +{ + int ret; + int pkt_type; + + + pkt_type = NDV_PKT_ID1_CREATE; + NDV_ADD_PACKET_OPTION(pkt_type, NDV_PACKET_OPTIONS_REQUIRES_PASSIVE); + create->pkt_hdr.packet_type = pkt_type; + create->pkt_hdr.hdr_sz = sizeof(struct ndv_pkt_hdr_create_1); + create->pkt_hdr.data_sz = 0; + + create->handle.local = get_local_handle(uctx); + create->access_mask = STANDARD_RIGHTS_ALL; + create->open_options = OPEN_EXISTING; + create->file_attributes = FILE_ATTRIBUTE_NORMAL | file_flags; + create->share_access = FILE_SHARE_ALL; + + ret = hvnd_send_packet(nd_dev, create, + sizeof(struct ndv_pkt_hdr_create_1), + (unsigned long)create, true); + return ret; +} + +int hvnd_cleanup_file(struct hvnd_dev *nd_dev, u32 local, u32 remote) +{ + int ret; + int pkt_type; + struct ndv_pkt_hdr_cleanup_1 cleanup_pkt; + + + pkt_type = NDV_PKT_ID1_CLEANUP; + NDV_ADD_PACKET_OPTION(pkt_type, NDV_PACKET_OPTIONS_REQUIRES_PASSIVE); + + cleanup_pkt.pkt_hdr.packet_type = pkt_type; + cleanup_pkt.pkt_hdr.hdr_sz = sizeof(struct ndv_pkt_hdr_create_1); + cleanup_pkt.pkt_hdr.data_sz = 0; + + cleanup_pkt.handle.local = local; + cleanup_pkt.handle.remote = remote; + + ret = hvnd_send_packet(nd_dev, &cleanup_pkt, + sizeof(struct ndv_pkt_hdr_create_1), + (unsigned long)&cleanup_pkt, true); + return ret; +} + + +static int hvnd_do_ioctl(struct hvnd_dev *nd_dev, u32 ioctl, + struct pkt_nd_provider_ioctl *pkt, + union ndv_context_handle *hdr_handle, + struct nd_handle *ioctl_handle, + u8 *buf, u32 buf_len, bool c_in, bool c_out, u64 irp_val) +{ + int ret; + int pkt_type; + + pkt_type = NDV_PKT_ID1_CONTROL; + NDV_ADD_PACKET_OPTION(pkt_type, NDV_PACKET_OPTIONS_REQUIRES_PASSIVE); + + pkt->hdr.pkt_hdr.packet_type = pkt_type; + pkt->hdr.pkt_hdr.hdr_sz = sizeof(struct ndv_packet_hdr_control_1); + pkt->hdr.pkt_hdr.data_sz = (sizeof(struct pkt_nd_provider_ioctl) - + sizeof(struct ndv_packet_hdr_control_1)); + + pkt->hdr.file_handle.local = hdr_handle->local; + pkt->hdr.file_handle.remote = hdr_handle->remote; + hvnd_debug("create handle local: %x remote: %x\n", + hdr_handle->local, hdr_handle->remote); + + pkt->hdr.irp_handle.val64 = irp_val; + + pkt->hdr.io_cntrl_code = ioctl; + pkt->hdr.output_buf_sz = sizeof(struct nd_ioctl); + pkt->hdr.input_buf_sz = sizeof(struct nd_ioctl); + pkt->hdr.input_output_buf_offset = 0; + memset(&pkt->ioctl.handle, 0, sizeof(struct nd_handle)); + pkt->ioctl.handle.version = ND_VERSION_1; + + switch (ioctl) { + case IOCTL_ND_PROVIDER_BIND_FILE: + pkt->ioctl.handle.handle = ioctl_handle->handle; + break; + default: + break; + }; + + /* + * Copy the input buffer, if needed. + */ + + if (c_in && (buf != NULL)) + memcpy(pkt->ioctl.raw_buffer, buf, buf_len); + + ret = hvnd_send_packet(nd_dev, pkt, + sizeof(struct pkt_nd_provider_ioctl), + (unsigned long)pkt, true); + + if (ret) + return ret; + + if (c_out && (buf != NULL)) + memcpy(buf, pkt->ioctl.raw_buffer, buf_len); + + return ret; +} + +static int idr_callback(int id, void *p, void *data) +{ + if (p == data) + return id; + return 0; +} + +void remove_uctx(struct hvnd_dev *nd_dev, struct hvnd_ucontext *uctx) +{ + int pid = current_pid(); + unsigned long flags; + int id; + + if (get_uctx(nd_dev, pid) == uctx) + remove_handle(nd_dev, &nd_dev->uctxidr, pid); + else { + hvnd_warn("uctx %p not found on pid %d, doing a idr search\n", + uctx, current_pid()); + + spin_lock_irqsave(&nd_dev->id_lock, flags); + id = idr_for_each(&nd_dev->uctxidr, idr_callback, uctx); + spin_unlock_irqrestore(&nd_dev->id_lock, flags); + + if (id) + remove_handle(nd_dev, &nd_dev->uctxidr, id); + else { + hvnd_error("uctx %p not found in idr table\n", uctx); + return; + } + } + + kfree(uctx); +} + +int hvnd_close_adaptor(struct hvnd_dev *nd_dev, struct hvnd_ucontext *uctx) +{ + int ret; + + /* + * First close the adaptor. + */ + + ret = hvnd_free_handle(nd_dev, uctx, + uctx->adaptor_hdl, + IOCTL_ND_ADAPTER_CLOSE); + + if (ret) + hvnd_error("Adaptor close failed; ret is %x\n", ret); + + /* + * Now close the two files we created. + */ + + ret = hvnd_cleanup_file(nd_dev, uctx->file_handle_ovl.local, + uctx->file_handle_ovl.remote); + + if (ret) + hvnd_error("file cleanup failed; ret is %x\n", ret); + + ret = hvnd_cleanup_file(nd_dev, uctx->file_handle.local, + uctx->file_handle.remote); + + if (ret) + hvnd_error("File cleanup failed; ret is %x\n", ret); + + /* + * Remove the uctx from the ID table. + */ + remove_uctx(nd_dev, uctx); + + return 0; +} + +int hvnd_open_adaptor(struct hvnd_dev *nd_dev, struct hvnd_ucontext *uctx) +{ + int ret; + struct pkt_nd_provider_ioctl *pr_init = &uctx->pr_init_pkt; + int pkt_type; + struct nd_handle ioctl_handle; + struct pkt_nd_open_adapter *pr_o_adap = &uctx->o_adap_pkt; + + ret = hvnd_create_file(nd_dev, uctx, &uctx->create_pkt, 0); + if (ret) { + hvnd_error("hvnd_create_file failed ret=%d\n", ret); + goto error_cr; + } + + if (uctx->create_pkt.pkt_hdr.status != 0) { + hvnd_error("create File failed; status is %d\n", + uctx->create_pkt.pkt_hdr.status); + ret = -EINVAL; + goto error_cr; + } + + uctx->file_handle.local = uctx->create_pkt.handle.local; + uctx->file_handle.remote = uctx->create_pkt.handle.remote; + hvnd_debug("INITIALIZE PROVIDER\n"); + /* + * Now Initialize the Provider. + */ + ioctl_handle.handle = 0; + ret = hvnd_do_ioctl(nd_dev, IOCTL_ND_PROVIDER_INIT, pr_init, + &uctx->create_pkt.handle, + &ioctl_handle, NULL, 0, false, false, 0); + + if (ret) { + ret = -EINVAL; + goto error_pr_init; + } + + if (pr_init->hdr.pkt_hdr.status != 0) { + hvnd_error("Provider INIT failed; status is %d\n", + pr_init->hdr.pkt_hdr.status); + ret = -EINVAL; + goto error_pr_init; + } + + if (pr_init->hdr.io_status != 0) { + hvnd_error("Provider INIT failed; io status is %d\n", + pr_init->hdr.io_status); + ret = -EINVAL; + goto error_pr_init; + } + + /* + * Now create the overlap file. + */ + + hvnd_debug("CREATE OVERLAP FILE\n"); + ret = hvnd_create_file(nd_dev, uctx, &uctx->create_pkt_ovl, + FILE_FLAG_OVERLAPPED); + if (ret) { + hvnd_error("hvnd_create_file failed ret=%d\n", ret); + goto error_pr_init; + } + + if (uctx->create_pkt_ovl.pkt_hdr.status != 0) { + hvnd_error("create Overlap File failed; status is %d\n", + uctx->create_pkt_ovl.pkt_hdr.status); + ret = -EINVAL; + goto error_pr_init; + } + uctx->file_handle_ovl.local = uctx->create_pkt_ovl.handle.local; + uctx->file_handle_ovl.remote = uctx->create_pkt_ovl.handle.remote; + + /* + * Now bind the two file handles together. + */ + + hvnd_debug("BIND FILE IOCTL remote handle: %d local handle: %d\n", + uctx->create_pkt_ovl.handle.remote, + uctx->create_pkt_ovl.handle.local); + + ioctl_handle.handle = uctx->create_pkt_ovl.handle.val64; + ret = hvnd_do_ioctl(nd_dev, IOCTL_ND_PROVIDER_BIND_FILE, pr_init, + &uctx->create_pkt.handle, + &ioctl_handle, NULL, 0, false, false, 0); + + if (ret) { + ret = -EINVAL; + goto error_file_bind; + } + if (pr_init->hdr.pkt_hdr.status != 0) { + hvnd_error("Provider File bind failed; status is %d\n", + pr_init->hdr.pkt_hdr.status); + ret = -EINVAL; + goto error_file_bind; + } + if (pr_init->hdr.io_status != 0) { + hvnd_error("Provider INIT failed; io status is %d\n", + pr_init->hdr.io_status); + ret = -EINVAL; + goto error_file_bind; + } + + /* + * Now open the adaptor. + */ + + hvnd_debug("OPENING THE ADAPTOR\n"); + + pkt_type = NDV_PKT_ID1_CONTROL; + NDV_ADD_PACKET_OPTION(pkt_type, NDV_PACKET_OPTIONS_REQUIRES_PASSIVE); + pr_o_adap->hdr.pkt_hdr.packet_type = pkt_type; + pr_o_adap->hdr.pkt_hdr.hdr_sz = sizeof(struct ndv_packet_hdr_control_1); + pr_o_adap->hdr.pkt_hdr.data_sz = sizeof(struct pkt_nd_open_adapter) - + sizeof(struct ndv_packet_hdr_control_1); + + pr_o_adap->hdr.pkt_hdr.status = 0; + + hvnd_debug("hdr sz is %d\n", pr_o_adap->hdr.pkt_hdr.hdr_sz); + hvnd_debug("data sz is %d\n", pr_o_adap->hdr.pkt_hdr.data_sz); + + pr_o_adap->hdr.file_handle.local = uctx->create_pkt.handle.local; + pr_o_adap->hdr.file_handle.remote = uctx->create_pkt.handle.remote; + hvnd_debug("create handle local is %x\n", + uctx->create_pkt.handle.local); + hvnd_debug("create handle remote is %x\n", + uctx->create_pkt.handle.remote); + pr_o_adap->hdr.irp_handle.val64 = 0; + + pr_o_adap->hdr.io_cntrl_code = IOCTL_ND_ADAPTER_OPEN; + pr_o_adap->hdr.output_buf_sz = pr_o_adap->hdr.pkt_hdr.data_sz - + sizeof(struct extended_data_oad); + pr_o_adap->hdr.input_buf_sz = pr_o_adap->hdr.pkt_hdr.data_sz - + sizeof(struct extended_data_oad); + + hvnd_debug("output buf sz is %d\n", pr_o_adap->hdr.output_buf_sz); + hvnd_debug("input buf sz is %d\n", pr_o_adap->hdr.input_buf_sz); + hvnd_debug("packet size is %d\n", + (int)sizeof(struct pkt_nd_open_adapter)); + + pr_o_adap->hdr.input_output_buf_offset = 0; + + + pr_o_adap->hdr.extended_data.size = sizeof(struct extended_data_oad); + pr_o_adap->hdr.extended_data.offset = + offsetof(struct pkt_nd_open_adapter, ext_data) - + sizeof(struct ndv_packet_hdr_control_1); + + hvnd_debug("size of the extended data size: %d\n", + (int)sizeof(struct extended_data_oad)); + hvnd_debug("offset of extended data: %d\n", + pr_o_adap->hdr.extended_data.offset); + + /* + * Now fill out the ioctl section. + */ + + pr_o_adap->ioctl.input.version = ND_VERSION_1; + pr_o_adap->ioctl.input.ce_mapping_cnt = + RTL_NUMBER_OF(pr_o_adap->mappings.ctx_input.mappings); + + hvnd_debug("ce_mapping cnt is %d\n", + pr_o_adap->ioctl.input.ce_mapping_cnt); + + pr_o_adap->ioctl.input.cb_mapping_offset = sizeof(union oad_ioctl); + hvnd_debug("cb_mapping offset is %d\n", + pr_o_adap->ioctl.input.cb_mapping_offset); + pr_o_adap->ioctl.input.adapter_id = (u64)nd_dev; + + pr_o_adap->mappings.ctx_input.mappings[IBV_GET_CONTEXT_UAR].map_type = ND_MAP_IOSPACE; + pr_o_adap->mappings.ctx_input.mappings[IBV_GET_CONTEXT_UAR].map_io_space.cache_type = ND_NON_CACHED; + pr_o_adap->mappings.ctx_input.mappings[IBV_GET_CONTEXT_UAR].map_io_space.cb_length = 4096; + + pr_o_adap->mappings.ctx_input.mappings[IBV_GET_CONTEXT_BF].map_type = ND_MAP_IOSPACE; + pr_o_adap->mappings.ctx_input.mappings[IBV_GET_CONTEXT_BF].map_io_space.cache_type = ND_WRITE_COMBINED; + pr_o_adap->mappings.ctx_input.mappings[IBV_GET_CONTEXT_BF].map_io_space.cb_length = 4096; + + /* + * Fill in the extended data. + */ + pr_o_adap->ext_data.cnt = IBV_GET_CONTEXT_MAPPING_MAX; + + ret = hvnd_send_packet(nd_dev, pr_o_adap, + sizeof(struct pkt_nd_open_adapter), + (unsigned long)pr_o_adap, true); + if (ret) { + ret = -EINVAL; + goto error_file_bind; + } + + if (pr_o_adap->hdr.pkt_hdr.status != 0) { + hvnd_error("Open adaptor failed; status is %d\n", + pr_o_adap->hdr.pkt_hdr.status); + ret = -EINVAL; + goto error_file_bind; + } + + if (pr_o_adap->hdr.io_status != 0) { + hvnd_error("Open adaptor failed;io status is %d\n", + pr_o_adap->hdr.io_status); + ret = -EINVAL; + goto error_file_bind; + } + + /* + * Copy the necessary response from the host. + */ + + uctx->adaptor_hdl = pr_o_adap->ioctl.resrc_desc.handle; + + + hvnd_debug("adaptor handle: %p\n", (void *)uctx->adaptor_hdl); + + uctx->uar_base = + pr_o_adap->mappings.ctx_output.mapping_results[IBV_GET_CONTEXT_UAR].info; + hvnd_debug("uar base: %p\n", (void *)uctx->uar_base); + + uctx->bf_base = + pr_o_adap->mappings.ctx_output.mapping_results[IBV_GET_CONTEXT_BF].info; + hvnd_debug("bf base: %p\n", (void *)uctx->bf_base); + + uctx->bf_buf_size = + pr_o_adap->mappings.ctx_output.bf_buf_size; + hvnd_debug("bf buf size: %d\n", uctx->bf_buf_size); + + uctx->bf_offset = + pr_o_adap->mappings.ctx_output.bf_offset; + hvnd_debug("bf offset: %d\n", uctx->bf_offset); + + uctx->cqe_size = + pr_o_adap->mappings.ctx_output.cqe_size; + hvnd_debug("cqe size: %d\n", uctx->cqe_size); + + uctx->max_qp_wr = + pr_o_adap->mappings.ctx_output.max_qp_wr; + hvnd_debug("max qp wr: %d\n", uctx->max_qp_wr); + + uctx->max_sge = + pr_o_adap->mappings.ctx_output.max_sge; + hvnd_debug("max sge: %d\n", uctx->max_sge); + + uctx->max_cqe = + pr_o_adap->mappings.ctx_output.max_cqe; + hvnd_debug("max cqe: %d\n", uctx->max_cqe); + + uctx->num_qps = + pr_o_adap->mappings.ctx_output.qp_tab_size; + hvnd_debug("num qps: %d\n", uctx->num_qps); + + /* + * Now query the adaptor and stash away the adaptor info. + */ + + ret = hvnd_query_adaptor(nd_dev, uctx); + if (ret) { + hvnd_error("Query Adaptor failed; ret is %d\n", ret); + goto query_err; + } + + return ret; + +query_err: + hvnd_free_handle(nd_dev, uctx, + uctx->adaptor_hdl, + IOCTL_ND_ADAPTER_CLOSE); + + hvnd_error("Open Adaptor Failed!!\n"); + +error_file_bind: + hvnd_cleanup_file(nd_dev, uctx->file_handle_ovl.local, + uctx->file_handle_ovl.remote); + +error_pr_init: + hvnd_cleanup_file(nd_dev, uctx->file_handle.local, + uctx->file_handle.remote); + +error_cr: + if (get_uctx(nd_dev, current_pid()) != NULL) + remove_handle(nd_dev, &nd_dev->uctxidr, current_pid()); + + return ret; +} + +int hvnd_create_cq(struct hvnd_dev *nd_dev, struct hvnd_ucontext *uctx, + struct hvnd_cq *cq) +{ + int ret; + struct pkt_nd_create_cq *pkt; + int num_pfn, num_db_pfn, num_sn_pfn; + int cq_pkt_size; + unsigned int cq_buf_size, offset; + u32 ext_data_sz; + u32 ext_data_offset; + + /* + * Now create CQ. + * First compute the number of PFNs we need to accomodate: + * One each for door bell and arm_sn and pages in cq buffer. + */ + cq_buf_size = (cq->entries * uctx->cqe_size); + offset = offset_in_page(cq->cq_buf); + num_pfn = DIV_ROUND_UP(offset + cq_buf_size, PAGE_SIZE); + + offset = offset_in_page(cq->db_addr); + num_db_pfn = DIV_ROUND_UP(offset + 8, PAGE_SIZE); + + offset = offset_in_page(&cq->arm_sn); + num_sn_pfn = DIV_ROUND_UP(offset + 4, PAGE_SIZE); + + cq_pkt_size = sizeof(struct pkt_nd_create_cq) + + (num_pfn * sizeof(u64)); + + ext_data_sz = sizeof(struct create_cq_ext_data) + + (num_pfn * sizeof(u64)); + ext_data_offset = offsetof(struct pkt_nd_create_cq, ext_data) - + sizeof(struct ndv_packet_hdr_control_1); + + hvnd_debug("CREATE CQ, num user addr pfns is %d\n", num_pfn); + hvnd_debug("CREATE CQ, num db pfns is %d\n", num_db_pfn); + + pkt = kzalloc(cq_pkt_size, GFP_KERNEL); + + if (!pkt) + return -ENOMEM; + + hvnd_init_hdr(&pkt->hdr, + (cq_pkt_size - + sizeof(struct ndv_packet_hdr_control_1)), + uctx->create_pkt.handle.local, + uctx->create_pkt.handle.remote, + IOCTL_ND_CQ_CREATE, + ext_data_sz, + ext_data_offset, + 0); + + /* + * Now fill out the ioctl section. + */ + + pkt->ioctl.input.version = ND_VERSION_1; + pkt->ioctl.input.queue_depth = cq->entries; + pkt->ioctl.input.ce_mapping_cnt = MLX4_IB_CREATE_CQ_MAPPING_MAX; + pkt->ioctl.input.cb_mapping_offset = sizeof(union create_cq_ioctl); + + hvnd_debug("ce_mapping cnt is %d\n", pkt->ioctl.input.ce_mapping_cnt); + hvnd_debug("cb_mapping offset is %d\n", + pkt->ioctl.input.cb_mapping_offset); + + pkt->ioctl.input.adapter_handle = uctx->adaptor_hdl; + pkt->ioctl.input.affinity.mask = 0; + pkt->ioctl.input.affinity.group = -1; + + // 0 for usermode CQ arming + pkt->mappings.cq_in.flags = 0; + + pkt->mappings.cq_in.mappings[MLX4_IB_CREATE_CQ_BUF].map_memory.map_type = ND_MAP_MEMORY; + pkt->mappings.cq_in.mappings[MLX4_IB_CREATE_CQ_BUF].map_memory.access_type = ND_MODIFY_ACCESS; + pkt->mappings.cq_in.mappings[MLX4_IB_CREATE_CQ_BUF].map_memory.address = (u64)cq->cq_buf; + pkt->mappings.cq_in.mappings[MLX4_IB_CREATE_CQ_BUF].map_memory.cb_length = (cq->entries * uctx->cqe_size); + + pkt->mappings.cq_in.mappings[MLX4_IB_CREATE_CQ_DB].map_memory.map_type = ND_MAP_MEMORY_COALLESCE; + pkt->mappings.cq_in.mappings[MLX4_IB_CREATE_CQ_DB].map_memory.access_type = ND_WRITE_ACCESS; + pkt->mappings.cq_in.mappings[MLX4_IB_CREATE_CQ_DB].map_memory.address = (u64)cq->db_addr; + pkt->mappings.cq_in.mappings[MLX4_IB_CREATE_CQ_DB].map_memory.cb_length = 8; //size of two ints + + + pkt->mappings.cq_in.mappings[MLX4_IB_CREATE_CQ_ARM_SN].map_memory.map_type = ND_MAP_MEMORY; + pkt->mappings.cq_in.mappings[MLX4_IB_CREATE_CQ_ARM_SN].map_memory.access_type = ND_MODIFY_ACCESS; + pkt->mappings.cq_in.mappings[MLX4_IB_CREATE_CQ_ARM_SN].map_memory.address = (u64)&cq->arm_sn; + pkt->mappings.cq_in.mappings[MLX4_IB_CREATE_CQ_ARM_SN].map_memory.cb_length = 4; //size of one int + /* + * Fill in the extended data. + */ + + pkt->ext_data.cnt = 3; + pkt->ext_data.fields[MLX4_IB_CREATE_CQ_BUF].size = (sizeof(struct gpa_range) + (num_pfn * sizeof(u64))); + pkt->ext_data.fields[MLX4_IB_CREATE_CQ_BUF].offset = offsetof(struct create_cq_ext_data, cqbuf_gpa); + + pkt->ext_data.fields[MLX4_IB_CREATE_CQ_DB].size = sizeof(struct cq_db_gpa); + pkt->ext_data.fields[MLX4_IB_CREATE_CQ_DB].offset = offsetof(struct create_cq_ext_data, db_gpa); + + pkt->ext_data.fields[MLX4_IB_CREATE_CQ_ARM_SN].size = sizeof(struct cq_db_gpa); + pkt->ext_data.fields[MLX4_IB_CREATE_CQ_ARM_SN].offset = offsetof(struct create_cq_ext_data, sn_gpa); + + /* + * Fill up the gpa range for cq buffer. + */ + + pkt->ext_data.db_gpa.byte_count = 8; + pkt->ext_data.db_gpa.byte_offset = offset_in_page(cq->db_addr); + user_va_init_pfn(&pkt->ext_data.db_gpa.pfn_array[0], cq->db_umem); + + pkt->ext_data.sn_gpa.byte_count = 4; + pkt->ext_data.sn_gpa.byte_offset = offset_in_page(&cq->arm_sn); + init_pfn(&pkt->ext_data.sn_gpa.pfn_array[0], + &cq->arm_sn, + 4); + + pkt->ext_data.cqbuf_gpa.byte_count = (cq->entries * uctx->cqe_size); + pkt->ext_data.cqbuf_gpa.byte_offset = offset_in_page(cq->cq_buf); + user_va_init_pfn(&pkt->ext_data.cqbuf_gpa.pfn_array[0], cq->umem); + + ret = hvnd_send_ioctl_pkt(nd_dev, &pkt->hdr, cq_pkt_size, (u64)pkt); + + if (ret) + goto cr_cq_err; + + /* + * Copy the necessary response from the host. + */ + cq->cqn = pkt->mappings.cq_resp.cqn; + cq->cqe = pkt->mappings.cq_resp.cqe; + cq->cq_handle = pkt->ioctl.resrc_desc.handle; + + ret = insert_handle(nd_dev, &nd_dev->cqidr, cq, cq->cqn); + + if (ret) + goto cr_cq_err; + hvnd_debug("CQ create after success cqn is %d\n", cq->cqn); + hvnd_debug("CQ create after success cqe is %d\n", cq->cqe); + hvnd_debug("CQ create after success cq handle is %p\n", + (void *)cq->cq_handle); + +cr_cq_err: + kfree(pkt); + return ret; +} + +int hvnd_destroy_cq(struct hvnd_dev *nd_dev, struct hvnd_cq *cq) +{ + struct pkt_nd_free_cq free_cq_pkt; + + remove_handle(nd_dev, &nd_dev->cqidr, cq->cqn); + + memset(&free_cq_pkt, 0, sizeof(free_cq_pkt)); + hvnd_init_hdr(&free_cq_pkt.hdr, + sizeof(struct pkt_nd_free_cq) - + sizeof(struct ndv_packet_hdr_control_1), + cq->uctx->create_pkt.handle.local, + cq->uctx->create_pkt.handle.remote, + IOCTL_ND_CQ_FREE, 0, 0, 0); + + /* + * Now fill in the ioctl section. + */ + free_cq_pkt.ioctl.in.version = ND_VERSION_1; + free_cq_pkt.ioctl.in.handle = cq->cq_handle; + + return hvnd_send_ioctl_pkt(nd_dev, &free_cq_pkt.hdr, + sizeof(struct pkt_nd_free_cq), + (u64)&free_cq_pkt); +} + + +int hvnd_notify_cq(struct hvnd_dev *nd_dev, struct hvnd_cq *cq, + u32 notify_type, u64 irp_handle) +{ + struct pkt_nd_notify_cq notify_cq_pkt; + int ret; + union ndv_context_handle irp_fhandle; + + irp_fhandle.local = cq->ep_object.local_irp; + + // KYS try to avoid having to zero everything + memset(¬ify_cq_pkt, 0, sizeof(notify_cq_pkt)); + hvnd_init_hdr(¬ify_cq_pkt.hdr, + sizeof(struct pkt_nd_notify_cq) - + sizeof(struct ndv_packet_hdr_control_1), + cq->uctx->create_pkt.handle.local, + cq->uctx->create_pkt.handle.remote, + IOCTL_ND_CQ_NOTIFY, 0, 0, irp_fhandle.val64); + + /* + * Now fill in the ioctl section. + */ + notify_cq_pkt.ioctl.in.version = ND_VERSION_1; + notify_cq_pkt.ioctl.in.cq_handle = cq->cq_handle; + notify_cq_pkt.ioctl.in.type = notify_type; + + + ret = hvnd_send_ioctl_pkt(nd_dev, ¬ify_cq_pkt.hdr, + sizeof(struct pkt_nd_notify_cq), + (u64)¬ify_cq_pkt); + + return ret; +} + +/* + * Memory region operations. + */ +int hvnd_cr_mr(struct hvnd_dev *nd_dev, struct hvnd_ucontext *uctx, + u64 pd_handle, u64 *mr_handle) +{ + struct pkt_nd_create_mr pkt; + int ret; + + // KYS try to avoid having to zero everything + memset(&pkt, 0, sizeof(pkt)); + hvnd_init_hdr(&pkt.hdr, + sizeof(pkt) - + sizeof(struct ndv_packet_hdr_control_1), + uctx->create_pkt.handle.local, + uctx->create_pkt.handle.remote, + IOCTL_ND_MR_CREATE, 0, 0, 0); + + /* + * Now fill in the ioctl section. + */ + pkt.ioctl.in.version = ND_VERSION_1; + pkt.ioctl.in.handle = pd_handle; + hvnd_debug("PD handle is %p\n", (void *)pd_handle); + pkt.ioctl.in.reserved = 0; + + ret = hvnd_send_ioctl_pkt(nd_dev, &pkt.hdr, sizeof(pkt), (u64)&pkt); + + if (ret) + goto err; + + /* + * Copy the handle. + */ + hvnd_debug("mr handle is %p\n", (void *)pkt.ioctl.out); + *mr_handle = pkt.ioctl.out; + + return 0; + +err: + hvnd_error("create mr failed: %d\n", ret); + return ret; + +} + +int hvnd_free_mr(struct hvnd_dev *nd_dev, struct hvnd_ucontext *uctx, + u64 handle) +{ + return hvnd_free_handle(nd_dev, uctx, handle, IOCTL_ND_MR_FREE); +} + +int hvnd_deregister_mr(struct hvnd_dev *nd_dev, struct hvnd_ucontext *uctx, + u64 handle) +{ + struct pkt_nd_deregister_mr pkt; + int ret; + + // KYS try to avoid having to zero everything + memset(&pkt, 0, sizeof(pkt)); + hvnd_init_hdr(&pkt.hdr, + sizeof(pkt) - + sizeof(struct ndv_packet_hdr_control_1), + uctx->create_pkt.handle.local, + uctx->create_pkt.handle.remote, + IOCTL_ND_MR_DEREGISTER, 0, 0, 0); + + /* + * Now fill in the ioctl section. + */ + pkt.ioctl.in.version = ND_VERSION_1; + pkt.ioctl.in.handle = handle; + pkt.ioctl.in.reserved = 0; + + ret = hvnd_send_ioctl_pkt(nd_dev, &pkt.hdr, sizeof(pkt), (u64)&pkt); + + if (ret) + goto err; + + return 0; + +err: + hvnd_error("de-register mr failed: %d\n", ret); + return ret; + +} + +static inline u32 hvnd_convert_access(int acc) +{ + return (acc & IB_ACCESS_REMOTE_WRITE ? ND_MR_FLAG_ALLOW_REMOTE_WRITE : 0) | + (acc & IB_ACCESS_REMOTE_READ ? ND_MR_FLAG_ALLOW_REMOTE_READ : 0) | + (acc & IB_ACCESS_LOCAL_WRITE ? ND_MR_FLAG_ALLOW_LOCAL_WRITE : 0); +} + + +int hvnd_mr_register(struct hvnd_dev *nd_dev, struct hvnd_ucontext *uctx, + struct hvnd_mr *mr) +{ + struct pkt_nd_register_mr pkt; + int ret; + struct hv_mpb_array *pb; + struct vmbus_packet_mpb_array *tpb; + int sz_leaf; + int num_pgs; + int i = 0; + int ext_data_sz; + u32 acc_flags; + u32 desc_size; + int pkt_type; + + /* + * The user address is passed in via a two level structure. + * An Array of struct hv_page_buffer will be used to describe + * the user memory. The pages containing this array will be descibed + * in another array of struct hv_page_buffer. We pass this seconed level + * array to the host. + */ + + hvnd_debug("ib_umem_page_count(mr->umem)=%d\n", + ib_umem_page_count(mr->umem)); + + sz_leaf = ib_umem_page_count(mr->umem) * sizeof(u64) + + sizeof(struct hv_mpb_array); + + pb = (struct hv_mpb_array *) __get_free_pages(GFP_KERNEL|__GFP_ZERO, + get_order(sz_leaf)); + + if (pb == NULL) + return -ENOMEM; + /* + * Allocate an array of hv_page_buffer to describe the first level. + */ + num_pgs = DIV_ROUND_UP(sz_leaf, PAGE_SIZE); + hvnd_debug("num pages in the top array is %d\n", num_pgs); + + desc_size = (num_pgs * sizeof(u64) + + sizeof(struct vmbus_packet_mpb_array)); + tpb = (struct vmbus_packet_mpb_array *) + __get_free_pages(GFP_KERNEL|__GFP_ZERO, get_order(desc_size)); + + if (tpb == NULL) { + free_pages((unsigned long)pb, get_order(sz_leaf)); + return -ENOMEM; + } + + hvnd_debug("sz leaf: %d; pgs in top %d\n", sz_leaf, num_pgs); + + /* + * Now fill the leaf level array. + */ + pb->len = mr->length; + pb->offset = offset_in_page(mr->start); + user_va_init_pfn(pb->pfn_array, mr->umem); + + /* + * Now fill out the top level array. + */ + for (i = 0; i < num_pgs; i++) { + tpb->range.pfn_array[i] = virt_to_phys( + (u8 *)pb + (PAGE_SIZE * i)) >> PAGE_SHIFT; + hvnd_debug("virtual address = %p\n", + (u8 *)pb + (PAGE_SIZE * i)); + hvnd_debug("physical address = %llx\n", + virt_to_phys((u8 *)pb + (PAGE_SIZE * i))); + hvnd_debug("tpb->range.pfn_array[%d]=%llx\n", i, + tpb->range.pfn_array[i]); + } + + tpb->range.offset = 8; + tpb->range.len = ib_umem_page_count(mr->umem) * sizeof(u64); + + // KYS try to avoid having to zero everything + memset(&pkt, 0, sizeof(pkt)); + ext_data_sz = (ib_umem_page_count(mr->umem) * sizeof(u64)); + acc_flags = ND_MR_FLAG_DO_NOT_SECURE_VM | hvnd_convert_access(mr->acc); + hvnd_debug("memory register access flags are: %x\n", acc_flags); + + hvnd_init_hdr(&pkt.hdr, + sizeof(pkt) - + sizeof(struct ndv_packet_hdr_control_1), + uctx->create_pkt.handle.local, + uctx->create_pkt.handle.remote, + IOCTL_ND_MR_REGISTER, 0, 0, 0); + + /* + * The memory registration call uses a different mechanism to pass + * pfn information. + */ + + pkt_type = pkt.hdr.pkt_hdr.packet_type; + NDV_ADD_PACKET_OPTION(pkt_type, NDV_PACKET_OPTION_EXTERNAL_DATA); + pkt.hdr.pkt_hdr.packet_type = pkt_type; + + pkt.hdr.extended_data.size = ext_data_sz; + pkt.hdr.extended_data.offset = 0; + /* + * Now fill out the ioctl. + */ + + pkt.ioctl.in.header.version = ND_VERSION_1; + pkt.ioctl.in.header.flags = acc_flags; + pkt.ioctl.in.header.cb_length = mr->length; + pkt.ioctl.in.header.target_addr = mr->virt; + pkt.ioctl.in.header.mr_handle = mr->mr_handle; + pkt.ioctl.in.address = mr->virt; + + /* + * Now send the packet to the host. + */ + + ret = hvnd_send_pgbuf_ioctl_pkt(nd_dev, + tpb, desc_size, + &pkt.hdr, + sizeof(pkt), + (unsigned long)&pkt); + + if (ret) + goto err; + + hvnd_info("MR REGISTRATION SUCCESS\n"); + /* + * Copy the mr registration data. + */ + hvnd_debug("mr registration lkey %x\n", pkt.ioctl.out.lkey); + hvnd_debug("mr registration rkey %x\n", pkt.ioctl.out.rkey); + + mr->mr_lkey = pkt.ioctl.out.lkey; + mr->mr_rkey = pkt.ioctl.out.rkey; + + mr->ibmr.lkey = mr->mr_lkey; + mr->ibmr.rkey = be32_to_cpu(mr->mr_rkey); + hvnd_debug("ibmr registration lkey %x\n", mr->ibmr.lkey); + hvnd_debug("ibmr registration rkey %x\n", mr->ibmr.rkey); + + free_pages((unsigned long)pb, get_order(sz_leaf)); + free_pages((unsigned long)tpb, get_order(desc_size)); + + return 0; + +err: + free_pages((unsigned long)pb, get_order(sz_leaf)); + free_pages((unsigned long)tpb, get_order(desc_size)); + + hvnd_error("mr register failed: %d\n", ret); + return ret; +} + +/* + * Listener operations. + */ +int hvnd_cr_listener(struct hvnd_dev *nd_dev, struct hvnd_ucontext *uctx, + u64 *listener_handle) +{ + struct pkt_nd_cr_listener pkt; + int ret; + + // KYS try to avoid having to zero everything + memset(&pkt, 0, sizeof(pkt)); + hvnd_init_hdr(&pkt.hdr, + sizeof(pkt) - + sizeof(struct ndv_packet_hdr_control_1), + uctx->create_pkt.handle.local, + uctx->create_pkt.handle.remote, + IOCTL_ND_LISTENER_CREATE, 0, 0, 0); + + /* + * Now fill in the ioctl section. + */ + pkt.ioctl.in.hdr.version = ND_VERSION_1; + pkt.ioctl.in.hdr.handle = uctx->adaptor_hdl; + hvnd_debug("Adaptor handle is %p\n", (void *)uctx->adaptor_hdl); + pkt.ioctl.in.hdr.reserved = 0; + pkt.ioctl.in.to_semantics = false; + + ret = hvnd_send_ioctl_pkt(nd_dev, &pkt.hdr, sizeof(pkt), (u64)&pkt); + + if (ret) + goto err; + + /* + * Copy the listener handle. + */ + hvnd_debug("listener handle is %p\n", (void *)pkt.ioctl.out); + *listener_handle = pkt.ioctl.out; + + return 0; + +err: + hvnd_error("create listener failed: ret=%d uctx=%p adaptor handle=%llu\n", + ret, uctx, uctx->adaptor_hdl); + return ret; + +} + +int hvnd_free_listener(struct hvnd_dev *nd_dev, struct hvnd_ucontext *uctx, + u64 listener_handle) +{ + struct pkt_nd_free_listener pkt; + int ret; + + // KYS try to avoid having to zero everything + memset(&pkt, 0, sizeof(pkt)); + hvnd_init_hdr(&pkt.hdr, + sizeof(pkt) - + sizeof(struct ndv_packet_hdr_control_1), + uctx->create_pkt.handle.local, + uctx->create_pkt.handle.remote, + IOCTL_ND_LISTENER_FREE, 0, 0, 0); + + /* + * Now fill in the ioctl section. + */ + pkt.ioctl.in.version = ND_VERSION_1; + pkt.ioctl.in.handle = listener_handle; + + ret = hvnd_send_ioctl_pkt(nd_dev, &pkt.hdr, sizeof(pkt), (u64)&pkt); + + if (ret) + goto err; + + return 0; + +err: + hvnd_error("free listener failed: %d\n", ret); + return ret; +} + +int hvnd_bind_listener(struct hvnd_dev *nd_dev, struct hvnd_ucontext *uctx, + u64 listener_handle, union nd_sockaddr_inet *addr) +{ + struct pkt_nd_bind_listener pkt; + kuid_t uid = current_uid(); + int ret; + + // KYS try to avoid having to zero everything + memset(&pkt, 0, sizeof(pkt)); + hvnd_init_hdr(&pkt.hdr, + sizeof(pkt) - + sizeof(struct ndv_packet_hdr_control_1), + uctx->create_pkt.handle.local, + uctx->create_pkt.handle.remote, + IOCTL_ND_LISTENER_BIND, 0, 0, 0); + + /* + * Now fill in the ioctl section. + */ + pkt.ioctl.in.hdr.version = ND_VERSION_1; + pkt.ioctl.in.hdr.handle = listener_handle; + pkt.ioctl.in.hdr.reserved = 0; + + pkt.ioctl.in.authentication_id = (u32)uid.val; + pkt.ioctl.in.is_admin = false; + + memcpy(&pkt.ioctl.in.hdr.address, addr, sizeof(*addr)); + + ret = hvnd_send_ioctl_pkt(nd_dev, &pkt.hdr, sizeof(pkt), (u64)&pkt); + + if (ret) + goto err; + + return 0; + +err: + hvnd_error("bind listener failed: %d\n", ret); + return ret; +} + +int hvnd_listen_listener(struct hvnd_dev *nd_dev, struct hvnd_ucontext *uctx, + u64 listener_handle, u32 backlog) +{ + struct pkt_nd_listen_listener pkt; + int ret; + + // KYS try to avoid having to zero everything + memset(&pkt, 0, sizeof(pkt)); + hvnd_init_hdr(&pkt.hdr, + sizeof(pkt) - + sizeof(struct ndv_packet_hdr_control_1), + uctx->create_pkt.handle.local, + uctx->create_pkt.handle.remote, + IOCTL_ND_LISTENER_LISTEN, 0, 0, 0); + + /* + * Now fill in the ioctl section. + */ + pkt.ioctl.in.version = ND_VERSION_1; + pkt.ioctl.in.listener_handle = listener_handle; + pkt.ioctl.in.back_log = backlog; + + + ret = hvnd_send_ioctl_pkt(nd_dev, &pkt.hdr, sizeof(pkt), (u64)&pkt); + + if (ret) + goto err; + + return 0; + +err: + hvnd_error("listen listener failed: %d\n", ret); + return ret; +} + +int hvnd_get_addr_listener(struct hvnd_dev *nd_dev, struct hvnd_ucontext *uctx, + u64 listener_handle, union nd_sockaddr_inet *addr) +{ + struct pkt_nd_get_addr_listener pkt; + int ret; + + // KYS try to avoid having to zero everything + memset(&pkt, 0, sizeof(pkt)); + hvnd_init_hdr(&pkt.hdr, + sizeof(pkt) - + sizeof(struct ndv_packet_hdr_control_1), + uctx->create_pkt.handle.local, + uctx->create_pkt.handle.remote, + IOCTL_ND_LISTENER_GET_ADDRESS, 0, 0, 0); + + /* + * Now fill in the ioctl section. + */ + pkt.ioctl.in.version = ND_VERSION_1; + pkt.ioctl.in.handle = listener_handle; + + + ret = hvnd_send_ioctl_pkt(nd_dev, &pkt.hdr, sizeof(pkt), (u64)&pkt); + + if (ret) + goto err; + + /* + * Copy the adddress. + */ + + memcpy(addr, &pkt.ioctl.out, sizeof(union nd_sockaddr_inet)); + + return 0; + +err: + hvnd_error("listen listener failed: %d\n", ret); + return ret; +} + +int hvnd_get_connection_listener(struct hvnd_dev *nd_dev, + struct hvnd_ucontext *uctx, + u64 listener_handle, u64 connector_handle, + u64 irp_handle) +{ + struct pkt_nd_get_connection_listener pkt; + int ret; + union ndv_context_handle irp_fhandle; + + ret = get_irp_handle(nd_dev, &irp_fhandle.local, (void *)irp_handle); + + if (ret) { + hvnd_error("get_irp_handle() failed: err: %d\n", ret); + return ret; + } + + // KYS try to avoid having to zero everything + memset(&pkt, 0, sizeof(pkt)); + hvnd_init_hdr(&pkt.hdr, + sizeof(pkt) - + sizeof(struct ndv_packet_hdr_control_1), + uctx->create_pkt.handle.local, + uctx->create_pkt.handle.remote, + IOCTL_ND_LISTENER_GET_CONNECTION_REQUEST, 0, 0, + irp_fhandle.val64); + + /* + * Now fill in the ioctl section. + */ + pkt.ioctl.in.version = ND_VERSION_1; + pkt.ioctl.in.listener_handle = listener_handle; + pkt.ioctl.in.connector_handle = connector_handle; + + + ret = hvnd_send_ioctl_pkt(nd_dev, &pkt.hdr, sizeof(pkt), (u64)&pkt); + + if (ret) + goto err; + + return 0; + +err: + hvnd_error("get connection listener failed: %d\n", ret); + return ret; +} + +/* + * Connector APIs. + */ + +int hvnd_cr_connector(struct hvnd_dev *nd_dev, struct hvnd_ucontext *uctx, + u64 *connector_handle) +{ + struct pkt_nd_cr_connector pkt; + int ret; + + // KYS try to avoid having to zero everything + memset(&pkt, 0, sizeof(pkt)); + hvnd_init_hdr(&pkt.hdr, + sizeof(struct pkt_nd_cr_listener) - + sizeof(struct ndv_packet_hdr_control_1), + uctx->create_pkt.handle.local, + uctx->create_pkt.handle.remote, + IOCTL_ND_CONNECTOR_CREATE, 0, 0, 0); + + /* + * Now fill in the ioctl section. + */ + pkt.ioctl.in.hdr.version = ND_VERSION_1; + pkt.ioctl.in.hdr.handle = uctx->adaptor_hdl; + pkt.ioctl.in.to_semantics = false; + + ret = hvnd_send_ioctl_pkt(nd_dev, &pkt.hdr, sizeof(pkt), (u64)&pkt); + + if (ret) + goto err; + + /* + * Copy the listener handle. + */ + hvnd_debug("connector handle is %p\n", (void *)pkt.ioctl.out); + *connector_handle = pkt.ioctl.out; + + return 0; + +err: + return ret; +} + +int hvnd_free_connector(struct hvnd_dev *nd_dev, struct hvnd_ucontext *uctx, + u64 handle) +{ + struct pkt_nd_free_connector pkt; + int ret; + + // KYS try to avoid having to zero everything + memset(&pkt, 0, sizeof(pkt)); + hvnd_init_hdr(&pkt.hdr, + sizeof(pkt) - + sizeof(struct ndv_packet_hdr_control_1), + uctx->create_pkt.handle.local, + uctx->create_pkt.handle.remote, + IOCTL_ND_CONNECTOR_FREE, 0, 0, 0); + + /* + * Now fill in the ioctl section. + */ + pkt.ioctl.in.version = ND_VERSION_1; + pkt.ioctl.in.handle = handle; + + ret = hvnd_send_ioctl_pkt(nd_dev, &pkt.hdr, sizeof(pkt), (u64)&pkt); + + if (ret) + goto err; + + return 0; + +err: + return ret; +} + +int hvnd_bind_connector(struct hvnd_dev *nd_dev, struct hvnd_ucontext *uctx, + u64 handle, union nd_sockaddr_inet *addr) +{ + struct pkt_nd_bind_connector pkt; + int ret; + kuid_t uid = current_uid(); + + // KYS try to avoid having to zero everything + memset(&pkt, 0, sizeof(pkt)); + hvnd_init_hdr(&pkt.hdr, + sizeof(pkt) - + sizeof(struct ndv_packet_hdr_control_1), + uctx->create_pkt.handle.local, + uctx->create_pkt.handle.remote, + IOCTL_ND_CONNECTOR_BIND, 0, 0, 0); + + /* + * Now fill in the ioctl section. + */ + pkt.ioctl.in.hdr.version = ND_VERSION_1; + pkt.ioctl.in.hdr.handle = handle; + + memcpy(&pkt.ioctl.in.hdr.address, addr, sizeof(*addr)); + + pkt.ioctl.in.authentication_id = (u32)uid.val; + pkt.ioctl.in.is_admin = false; + + + ret = hvnd_send_ioctl_pkt(nd_dev, &pkt.hdr, sizeof(pkt), (u64)&pkt); + + if (ret) + goto err; + + return 0; + +err: + return ret; +} + +int hvnd_connector_connect(struct hvnd_dev *nd_dev, struct hvnd_ucontext *uctx, + u64 connector_handle, u32 in_rd_limit, u32 out_rd_limit, + u32 priv_data_length, const u8 *priv_data, + u64 qp_handle, struct if_physical_addr *phys_addr, + union nd_sockaddr_inet *dest_addr, + struct hvnd_ep_obj *ep) +{ + struct pkt_nd_connector_connect *pkt = &ep->connector_connect_pkt; + int ret; + union ndv_context_handle irp_fhandle; + + hvnd_debug("local irp is %d\n", ep->local_irp); + irp_fhandle.local = ep->local_irp; + + if (priv_data_length > MAX_PRIVATE_DATA_LEN) { + hvnd_error("priv_data_length=%d\n", priv_data_length); + return -EINVAL; + } + + // KYS try to avoid having to zero everything + memset(pkt, 0, sizeof(*pkt)); + hvnd_init_hdr(&pkt->hdr, + sizeof(*pkt) - + sizeof(struct ndv_packet_hdr_control_1), + uctx->create_pkt.handle.local, + uctx->create_pkt.handle.remote, + IOCTL_ND_CONNECTOR_CONNECT, 0, 0, irp_fhandle.val64); + + /* + * Now fill in the ioctl section. + */ + pkt->ioctl.in.hdr.version = ND_VERSION_1; + pkt->ioctl.in.hdr.connector_handle = connector_handle; + pkt->ioctl.in.hdr.read_limits.inbound = in_rd_limit; + pkt->ioctl.in.hdr.read_limits.outbound = out_rd_limit; + pkt->ioctl.in.hdr.cb_private_data_length = priv_data_length; + pkt->ioctl.in.hdr.cb_private_data_offset = + offsetof(union connector_connect_ioctl, in.priv_data); + pkt->ioctl.in.hdr.qp_handle = qp_handle; + + memcpy(&pkt->ioctl.in.hdr.phys_addr, phys_addr, + sizeof(struct if_physical_addr)); + + /* + * Luke's code does not copy the ip address. + */ + memcpy(&pkt->ioctl.in.hdr.destination_address, dest_addr, + sizeof(union nd_sockaddr_inet)); + + pkt->ioctl.in.retry_cnt = 7; + pkt->ioctl.in.rnr_retry_cnt = 7; + memcpy(pkt->ioctl.in.priv_data, priv_data, priv_data_length); + + ret = hvnd_send_ioctl_pkt(nd_dev, &pkt->hdr, sizeof(*pkt), (u64)pkt); + + if (ret) + goto err; + + return 0; + +err: + return ret; +} + +int hvnd_connector_complete_connect(struct hvnd_dev *nd_dev, + struct hvnd_ucontext *uctx, + u64 connector_handle, + enum ibv_qp_state *qp_state) +{ + struct pkt_nd_connector_connect_complete pkt; + int ret; + + // KYS try to avoid having to zero everything + memset(&pkt, 0, sizeof(pkt)); + hvnd_init_hdr(&pkt.hdr, + sizeof(pkt) - + sizeof(struct ndv_packet_hdr_control_1), + uctx->create_pkt.handle.local, + uctx->create_pkt.handle.remote, + IOCTL_ND_CONNECTOR_COMPLETE_CONNECT, 0, 0, 0); + + /* + * Now fill in the ioctl section. + */ + pkt.ioctl.in.hdr.version = ND_VERSION_1; + pkt.ioctl.in.hdr.handle = connector_handle; + pkt.ioctl.in.rnr_nak_to = 0; + + ret = hvnd_send_ioctl_pkt(nd_dev, &pkt.hdr, sizeof(pkt), (u64)&pkt); + + if (ret) + goto err; + + *qp_state = pkt.ioctl.out.state; + return 0; + +err: + return ret; +} + +int hvnd_connector_accept(struct hvnd_dev *nd_dev, struct hvnd_ucontext *uctx, + u64 connector_handle, + u64 qp_handle, + u32 in_rd_limit, u32 out_rd_limit, + u32 priv_data_length, const u8 *priv_data, + enum ibv_qp_state *qp_state, struct hvnd_ep_obj *ep) +{ + struct pkt_nd_connector_accept pkt; + int ret; + union ndv_context_handle irp_fhandle; + + irp_fhandle.local = ep->local_irp; + + if (priv_data_length > MAX_PRIVATE_DATA_LEN) { + hvnd_error("priv_data_length=%d\n", priv_data_length); + return -EINVAL; + } + + // KYS try to avoid having to zero everything + memset(&pkt, 0, sizeof(pkt)); + hvnd_init_hdr(&pkt.hdr, + sizeof(pkt) - + sizeof(struct ndv_packet_hdr_control_1), + uctx->create_pkt.handle.local, + uctx->create_pkt.handle.remote, + IOCTL_ND_CONNECTOR_ACCEPT, 0, 0, irp_fhandle.val64); + + /* + * Now fill in the ioctl section. + */ + pkt.ioctl.in.hdr.version = ND_VERSION_1; + pkt.ioctl.in.hdr.reserved = 0; + pkt.ioctl.in.hdr.read_limits.inbound = in_rd_limit; + pkt.ioctl.in.hdr.read_limits.outbound = out_rd_limit; + pkt.ioctl.in.hdr.cb_private_data_length = priv_data_length; + + pkt.ioctl.in.hdr.cb_private_data_offset = + offsetof(struct connector_accept_in, private_data); + + pkt.ioctl.in.hdr.connector_handle = connector_handle; + pkt.ioctl.in.hdr.qp_handle = qp_handle; + + pkt.ioctl.in.rnr_nak_to = 0; + pkt.ioctl.in.rnr_retry_cnt = 7; + + + memcpy(pkt.ioctl.in.private_data, priv_data, priv_data_length); + + ret = hvnd_send_ioctl_pkt(nd_dev, &pkt.hdr, sizeof(pkt), (u64)&pkt); + + if (ret) + goto err; + + *qp_state = pkt.ioctl.out.state; + return 0; + +err: + return ret; +} + +int hvnd_connector_reject(struct hvnd_dev *nd_dev, struct hvnd_ucontext *uctx, + u64 connector_handle, + u32 priv_data_length, u8 *priv_data, + enum ibv_qp_state *qp_state) +{ + struct pkt_nd_connector_reject pkt; + int ret; + + if (priv_data_length > MAX_PRIVATE_DATA_LEN) { + hvnd_error("priv_data_length=%d\n", priv_data_length); + return -EINVAL; + } + + // KYS try to avoid having to zero everything + memset(&pkt, 0, sizeof(pkt)); + hvnd_init_hdr(&pkt.hdr, + sizeof(pkt) - + sizeof(struct ndv_packet_hdr_control_1), + uctx->create_pkt.handle.local, + uctx->create_pkt.handle.remote, + IOCTL_ND_CONNECTOR_REJECT, 0, 0, 0); + + /* + * Now fill in the ioctl section. + */ + pkt.ioctl.in.hdr.version = ND_VERSION_1; + pkt.ioctl.in.hdr.reserved = 0; + pkt.ioctl.in.hdr.cb_private_data_length = priv_data_length; + + pkt.ioctl.in.hdr.cb_private_data_offset = + offsetof(struct connector_reject_in, private_data); + + pkt.ioctl.in.hdr.connector_handle = connector_handle; + + memcpy(pkt.ioctl.in.private_data, priv_data, priv_data_length); + + ret = hvnd_send_ioctl_pkt(nd_dev, &pkt.hdr, sizeof(pkt), (u64)&pkt); + + if (ret) + goto err; + + *qp_state = pkt.ioctl.out.state; + return 0; + +err: + return ret; +} + +int hvnd_connector_get_rd_limits(struct hvnd_dev *nd_dev, + struct hvnd_ucontext *uctx, + u64 connector_handle, + struct nd_read_limits *rd_limits) +{ + struct pkt_nd_connector_get_rd_limits pkt; + int ret; + + + // KYS try to avoid having to zero everything + memset(&pkt, 0, sizeof(pkt)); + hvnd_init_hdr(&pkt.hdr, + sizeof(pkt) - + sizeof(struct ndv_packet_hdr_control_1), + uctx->create_pkt.handle.local, + uctx->create_pkt.handle.remote, + IOCTL_ND_CONNECTOR_GET_READ_LIMITS, 0, 0, 0); + + /* + * Now fill in the ioctl section. + */ + pkt.ioctl.in.in.version = ND_VERSION_1; + pkt.ioctl.in.in.reserved = 0; + pkt.ioctl.in.in.handle = connector_handle; + + ret = hvnd_send_ioctl_pkt(nd_dev, &pkt.hdr, sizeof(pkt), (u64)&pkt); + + if (ret) + goto err; + + *rd_limits = pkt.ioctl.out.out; + return 0; + +err: + return ret; +} + +int hvnd_connector_get_priv_data(struct hvnd_dev *nd_dev, + struct hvnd_ucontext *uctx, + u64 connector_handle, + u8 *priv_data) +{ + struct pkt_nd_connector_get_priv_data pkt; + int ret; + + + // KYS try to avoid having to zero everything + memset(&pkt, 0, sizeof(pkt)); + hvnd_init_hdr(&pkt.hdr, + sizeof(pkt) - + sizeof(struct ndv_packet_hdr_control_1), + uctx->create_pkt.handle.local, + uctx->create_pkt.handle.remote, + IOCTL_ND_CONNECTOR_GET_PRIVATE_DATA, 0, 0, 0); + + /* + * Now fill in the ioctl section. + */ + pkt.ioctl.in.version = ND_VERSION_1; + pkt.ioctl.in.reserved = 0; + pkt.ioctl.in.handle = connector_handle; + + ret = hvnd_send_ioctl_pkt(nd_dev, &pkt.hdr, sizeof(pkt), (u64)&pkt); + + if (ret) + goto err; + + memcpy(priv_data, pkt.ioctl.out, MAX_PRIVATE_DATA_LEN); + return 0; + +err: + return ret; +} + +int hvnd_connector_get_peer_addr(struct hvnd_dev *nd_dev, + struct hvnd_ucontext *uctx, + u64 connector_handle, + union nd_sockaddr_inet *peer_addr) +{ + struct pkt_nd_connector_get_peer_addr pkt; + int ret; + + + // KYS try to avoid having to zero everything + memset(&pkt, 0, sizeof(pkt)); + hvnd_init_hdr(&pkt.hdr, + sizeof(pkt) - + sizeof(struct ndv_packet_hdr_control_1), + uctx->create_pkt.handle.local, + uctx->create_pkt.handle.remote, + IOCTL_ND_CONNECTOR_GET_PEER_ADDRESS, 0, 0, 0); + + /* + * Now fill in the ioctl section. + */ + pkt.ioctl.in.version = ND_VERSION_1; + pkt.ioctl.in.reserved = 0; + pkt.ioctl.in.handle = connector_handle; + + ret = hvnd_send_ioctl_pkt(nd_dev, &pkt.hdr, sizeof(pkt), (u64)&pkt); + + if (ret) + goto err; + + memcpy(peer_addr, &pkt.ioctl.out, sizeof(union nd_sockaddr_inet)); + return 0; + +err: + return ret; +} + +int hvnd_connector_get_local_addr(struct hvnd_dev *nd_dev, + struct hvnd_ucontext *uctx, + u64 connector_handle, + union nd_sockaddr_inet *addr) +{ + struct pkt_nd_connector_get_addr pkt; + int ret; + + // KYS try to avoid having to zero everything + memset(&pkt, 0, sizeof(pkt)); + hvnd_init_hdr(&pkt.hdr, + sizeof(pkt) - + sizeof(struct ndv_packet_hdr_control_1), + uctx->create_pkt.handle.local, + uctx->create_pkt.handle.remote, + IOCTL_ND_CONNECTOR_GET_ADDRESS, 0, 0, 0); + + /* + * Now fill in the ioctl section. + */ + pkt.ioctl.in.version = ND_VERSION_1; + pkt.ioctl.in.reserved = 0; + pkt.ioctl.in.handle = connector_handle; + + ret = hvnd_send_ioctl_pkt(nd_dev, &pkt.hdr, sizeof(pkt), (u64)&pkt); + + if (ret) + goto err; + + memcpy(addr, &pkt.ioctl.out, sizeof(union nd_sockaddr_inet)); + return 0; + +err: + return ret; +} + + +int hvnd_connector_notify_disconnect(struct hvnd_dev *nd_dev, + struct hvnd_ucontext *uctx, + u64 connector_handle, struct hvnd_ep_obj *ep) +{ + struct pkt_nd_connector_notify_disconnect pkt; + int ret; + union ndv_context_handle irp_fhandle; + + irp_fhandle .local = ep->local_irp; + + hvnd_init_hdr(&pkt.hdr, + sizeof(pkt) - + sizeof(struct ndv_packet_hdr_control_1), + uctx->create_pkt.handle.local, + uctx->create_pkt.handle.remote, + IOCTL_ND_CONNECTOR_NOTIFY_DISCONNECT, 0, 0, + irp_fhandle.val64); + + /* + * Now fill in the ioctl section. + */ + pkt.ioctl.in.version = ND_VERSION_1; + pkt.ioctl.in.reserved = 0; + pkt.ioctl.in.handle = connector_handle; + + ret = hvnd_send_ioctl_pkt(nd_dev, &pkt.hdr, sizeof(pkt), (u64)&pkt); + + if (ret) + goto err; + + return 0; + +err: + return ret; +} + + +//ASYNCH call +int hvnd_connector_disconnect(struct hvnd_dev *nd_dev, + struct hvnd_ucontext *uctx, + u64 connector_handle, struct hvnd_ep_obj *ep) +{ + struct pkt_nd_connector_disconnect pkt; + int ret; + union ndv_context_handle irp_fhandle; + + irp_fhandle.local = ep->local_irp; + + + hvnd_init_hdr(&pkt.hdr, + sizeof(pkt) - + sizeof(struct ndv_packet_hdr_control_1), + uctx->create_pkt.handle.local, + uctx->create_pkt.handle.remote, + IOCTL_ND_CONNECTOR_DISCONNECT, 0, 0, irp_fhandle.val64); + + /* + * Now fill in the ioctl section. + */ + pkt.ioctl.in.version = ND_VERSION_1; + pkt.ioctl.in.reserved = 0; + pkt.ioctl.in.handle = connector_handle; + + ret = hvnd_send_ioctl_pkt(nd_dev, &pkt.hdr, sizeof(pkt), (u64)&pkt); + + if (ret) + goto err; + + return 0; + +err: + return ret; +} + +/* + * QP operations. + */ +int hvnd_create_qp(struct hvnd_dev *nd_dev, struct hvnd_ucontext *uctx, + struct hvnd_qp *qp) +{ + int ret; + struct pkt_nd_create_qp *pkt; + int num_pfn, num_db_pfn; + int qp_pkt_size; + unsigned int offset; + u32 ext_data_offset; + u32 ext_data_size; + + /* + * Now create QP. + * First compute the number of PFNs we need to accomodate: + * One each for door bell and arm_sn and pages in cq buffer. + */ + offset = offset_in_page(qp->qp_buf); + num_pfn = DIV_ROUND_UP(offset + qp->buf_size, PAGE_SIZE); + + offset = offset_in_page(qp->db_addr); + num_db_pfn = DIV_ROUND_UP(offset + 4, PAGE_SIZE); + + qp_pkt_size = sizeof(struct pkt_nd_create_qp) + + (num_pfn * sizeof(u64)); + + hvnd_debug("CREATE QP, num pfns is %d\n", num_pfn); + hvnd_debug("CREATE QP, num DB pfns is %d\n", num_db_pfn); + + pkt = kzalloc(qp_pkt_size, GFP_KERNEL); + + if (!pkt) + return -ENOMEM; + + hvnd_debug("offset of nd_create_qp is %d\n", + (int)offsetof(struct pkt_nd_create_qp, ioctl.input)); + + ext_data_offset = offsetof(struct pkt_nd_create_qp, ext_data) - + sizeof(struct ndv_packet_hdr_control_1); + + ext_data_size = sizeof(struct create_qp_ext_data) + + (num_pfn * sizeof(u64)); + + hvnd_init_hdr(&pkt->hdr, + qp_pkt_size - + sizeof(struct ndv_packet_hdr_control_1), + uctx->create_pkt.handle.local, + uctx->create_pkt.handle.remote, + IOCTL_ND_QP_CREATE, + ext_data_size, + ext_data_offset, + 0); + + /* + * Now fill out the ioctl section. + */ + + pkt->ioctl.input.hdr.version = ND_VERSION_1; + + if (qp->max_inline_data > nd_dev->query_pkt.ioctl.ad_info.inline_request_threshold) + qp->max_inline_data = nd_dev->query_pkt.ioctl.ad_info.inline_request_threshold; + pkt->ioctl.input.hdr.cb_max_inline_data = qp->max_inline_data; + + hvnd_debug("pkt->ioctl.input.hdr.cb_max_inline_data=%d\n", + pkt->ioctl.input.hdr.cb_max_inline_data); + + pkt->ioctl.input.hdr.ce_mapping_cnt = MLX4_IB_CREATE_QP_MAPPINGS_MAX; + pkt->ioctl.input.hdr.cb_mapping_offset = sizeof(union create_qp_ioctl); + + pkt->ioctl.input.hdr.initiator_queue_depth = qp->initiator_q_depth; + pkt->ioctl.input.hdr.max_initiator_request_sge = + qp->initiator_request_sge; + + hvnd_debug("recv cq handle is %p\n", (void *)qp->receive_cq_handle); + hvnd_debug("send cq handle is %p\n", (void *)qp->initiator_cq_handle); + hvnd_debug("pd handle is %p\n", (void *)qp->pd_handle); + pkt->ioctl.input.hdr.receive_cq_handle = qp->receive_cq_handle; + pkt->ioctl.input.hdr.initiator_cq_handle = qp->initiator_cq_handle; + pkt->ioctl.input.hdr.pd_handle = qp->pd_handle; + + + hvnd_debug("ce_mapping cnt is %d\n", + pkt->ioctl.input.hdr.ce_mapping_cnt); + hvnd_debug("cb_mapping offset is %d\n", + pkt->ioctl.input.hdr.cb_mapping_offset); + + pkt->ioctl.input.receive_queue_depth = qp->receive_q_depth; + pkt->ioctl.input.max_receive_request_sge = qp->receive_request_sge; + + + pkt->mappings.qp_in.mappings[MLX4_IB_CREATE_QP_BUF].map_memory.map_type = ND_MAP_MEMORY; + pkt->mappings.qp_in.mappings[MLX4_IB_CREATE_QP_BUF].map_memory.access_type = ND_MODIFY_ACCESS; + pkt->mappings.qp_in.mappings[MLX4_IB_CREATE_QP_BUF].map_memory.address = (u64)qp->qp_buf; + pkt->mappings.qp_in.mappings[MLX4_IB_CREATE_QP_BUF].map_memory.cb_length = qp->buf_size; + + pkt->mappings.qp_in.mappings[MLX4_IB_CREATE_QP_DB].map_memory.map_type = ND_MAP_MEMORY_COALLESCE; + pkt->mappings.qp_in.mappings[MLX4_IB_CREATE_QP_DB].map_memory.access_type = ND_WRITE_ACCESS; + pkt->mappings.qp_in.mappings[MLX4_IB_CREATE_QP_DB].map_memory.address = (u64)qp->db_addr; + pkt->mappings.qp_in.mappings[MLX4_IB_CREATE_QP_DB].map_memory.cb_length = 4; + + pkt->mappings.qp_in.log_sq_bb_count = qp->log_sq_bb_count; + pkt->mappings.qp_in.log_sq_stride = qp->log_sq_stride; + pkt->mappings.qp_in.sq_no_prefetch = qp->sq_no_prefetch; + + + /* + * Fill in the extended data. + */ + + pkt->ext_data.cnt = 2; + pkt->ext_data.fields[MLX4_IB_CREATE_QP_BUF].size = + sizeof(struct gpa_range) + (num_pfn * sizeof(u64)); + pkt->ext_data.fields[MLX4_IB_CREATE_QP_BUF].offset = + offsetof(struct create_qp_ext_data, qpbuf_gpa); + + pkt->ext_data.fields[MLX4_IB_CREATE_QP_DB].size = + sizeof(struct qp_db_gpa); + pkt->ext_data.fields[MLX4_IB_CREATE_QP_DB].offset = + offsetof(struct create_qp_ext_data, db_gpa); + + /* + * Fill up the gpa range for qp buffer. + */ + + pkt->ext_data.db_gpa.byte_count = 4; // KYS 8 or 16? + pkt->ext_data.db_gpa.byte_offset = offset_in_page(qp->db_addr); + user_va_init_pfn(&pkt->ext_data.db_gpa.pfn_array[0], qp->db_umem); + + pkt->ext_data.qpbuf_gpa.byte_count = qp->buf_size; + pkt->ext_data.qpbuf_gpa.byte_offset = offset_in_page(qp->qp_buf); + user_va_init_pfn(&pkt->ext_data.qpbuf_gpa.pfn_array[0], qp->umem); + + ret = hvnd_send_ioctl_pkt(nd_dev, &pkt->hdr, qp_pkt_size, (u64)pkt); + + if (ret) + goto cr_qp_err; + + /* + * Copy the necessary response from the host. + */ + qp->qp_handle = pkt->ioctl.resrc_desc.handle; + + qp->qpn = pkt->mappings.qp_resp.qpn; + qp->max_send_wr = pkt->mappings.qp_resp.max_send_wr; + qp->max_recv_wr = pkt->mappings.qp_resp.max_recv_wr; + qp->max_send_sge = pkt->mappings.qp_resp.max_send_sge; + qp->max_recv_sge = pkt->mappings.qp_resp.max_recv_sge; + + + hvnd_debug("qp->max_send_wr=%d max_recv_wr=%d max_send_sge=%d max_recv_sge=%d max_inline_data=%d\n", + qp->max_send_wr, qp->max_recv_wr, qp->max_send_sge, + qp->max_recv_sge, qp->max_inline_data); + + ret = insert_handle(nd_dev, &nd_dev->qpidr, qp, qp->qpn); + + if (ret) + goto cr_qp_err; + + hvnd_debug("QP create after success qpn:%d qp:%p handle:%llu\n", + qp->qpn, qp, qp->qp_handle); + +cr_qp_err: + kfree(pkt); + return ret; +} + +int hvnd_free_qp(struct hvnd_dev *nd_dev, struct hvnd_ucontext *uctx, + struct hvnd_qp *qp) +{ + remove_handle(nd_dev, &nd_dev->qpidr, qp->qpn); + return hvnd_free_handle(nd_dev, uctx, qp->qp_handle, IOCTL_ND_QP_FREE); +} + +int hvnd_flush_qp(struct hvnd_dev *nd_dev, struct hvnd_ucontext *uctx, + struct hvnd_qp *qp) +{ + struct pkt_nd_flush_qp pkt; + int ret; + + // KYS try to avoid having to zero everything + memset(&pkt, 0, sizeof(pkt)); + hvnd_init_hdr(&pkt.hdr, + sizeof(pkt) - + sizeof(struct ndv_packet_hdr_control_1), + uctx->create_pkt.handle.local, + uctx->create_pkt.handle.remote, + IOCTL_ND_QP_FLUSH, 0, 0, 0); + + /* + * Now fill in the ioctl section. + */ + pkt.ioctl.in.version = ND_VERSION_1; + pkt.ioctl.in.reserved = 0; + pkt.ioctl.in.handle = qp->qp_handle; + + ret = hvnd_send_ioctl_pkt(nd_dev, &pkt.hdr, sizeof(pkt), (u64)&pkt); + + if (ret) + goto err; + + return 0; + +err: + return ret; +} + + +int hvnd_bind_nic(struct hvnd_dev *nd_dev, bool un_bind, char *ip_addr, + char *mac_addr) +{ + int ret; + int pkt_type = NDV_PKT_ID1_BIND; + + /* + * Send the bind information over to the host. + * For now, we will have a single ip and MAC address that we + * will deal with. Down the road we will need to expand support + * for multiple IP and MAC addresses and also deal with changing + * IP addresses. + */ + + NDV_ADD_PACKET_OPTION(pkt_type, NDV_PACKET_OPTIONS_REQUIRES_PASSIVE); + hvnd_debug("bind packet type is %d ID:%d\n", + pkt_type, NDV_PACKET_TYPE_ID(pkt_type)); + nd_dev->bind_pkt.pkt_hdr.packet_type = pkt_type; + + nd_dev->bind_pkt.pkt_hdr.hdr_sz = sizeof(struct ndv_pkt_hdr_bind_1); + hvnd_debug("bind packet size is %d\n", + (int)sizeof(struct ndv_pkt_hdr_bind_1)); + nd_dev->bind_pkt.pkt_hdr.data_sz = 0; + nd_dev->bind_pkt.unbind = un_bind; + nd_dev->bind_pkt.ip_address.address_family = AF_INET; + nd_dev->bind_pkt.ip_address.ipv4.sin_family = AF_INET; + nd_dev->bind_pkt.ip_address.ipv4.sin_port = 0; + nd_dev->bind_pkt.ip_address.ipv4.sin_addr.s_addr = *(unsigned int *)ip_addr; + + nd_dev->bind_pkt.phys_addr.length = ETH_ALEN; + memcpy(nd_dev->bind_pkt.phys_addr.addr, mac_addr, ETH_ALEN); + + /* + * This is the adapter handle; needs to be unique for each + * MAC, ip address tuple. + */ + nd_dev->bind_pkt.guest_id = (u64)nd_dev; + + ret = hvnd_send_packet(nd_dev, &nd_dev->bind_pkt, + sizeof(struct ndv_pkt_hdr_bind_1), + (u64)NULL, + true); + return ret; +} + +int hvnd_init_resources(struct hvnd_dev *nd_dev) +{ + unsigned long mmio_sz; + struct resource *resrc; + int ret = -ENOMEM; + + resrc = &iomem_resource; + + mmio_sz = nd_dev->hvdev->channel->offermsg.offer.mmio_megabytes * + 1024 * 1024; + nd_dev->mmio_sz = mmio_sz; + nd_dev->mmio_resource.name = KBUILD_MODNAME; + nd_dev->mmio_resource.flags = IORESOURCE_MEM | IORESOURCE_BUSY; + + ret = allocate_resource(resrc, &nd_dev->mmio_resource, + mmio_sz, 0, -1, mmio_sz, NULL, NULL); + + if (ret) { + hvnd_error("Unable to allocate mmio resources\n"); + return ret; + } + hvnd_debug("MMIO start is %p\n", (void *)nd_dev->mmio_resource.start); + + /* + * Send the mmio information over to the host. + */ + nd_dev->resources.pkt_hdr.packet_type = NDV_PKT_ID1_INIT_RESOURCES; + nd_dev->resources.pkt_hdr.hdr_sz = sizeof(union ndv_packet_hdr); + nd_dev->resources.pkt_hdr.data_sz = 0; + + nd_dev->resources.io_space_sz_mb = mmio_sz; + nd_dev->resources.io_space_start = nd_dev->mmio_resource.start; + + ret = hvnd_send_packet(nd_dev, &nd_dev->resources, + sizeof(struct ndv_pkt_hdr_init_resources_1), + (u64)NULL, + true); + return ret; +} + +int hvnd_query_adaptor(struct hvnd_dev *nd_dev, struct hvnd_ucontext *uctx) +{ + struct pkt_nd_query_adaptor *pkt; + int ret; + int pkt_type; + struct ib_device_attr *props = &nd_dev->ibdev.attrs; + struct adapter_info_v2 *adap_info = &nd_dev->query_pkt.ioctl.ad_info; + + hvnd_debug("Performing Adapter query nd_dev=%p\n", nd_dev); + + // check if there is a need to do query + if (nd_dev->query_pkt_set) + return 0; + + // need a lock, multiple process can call this at the same time + + down(&nd_dev->query_pkt_sem); + if (nd_dev->query_pkt_set) { + up(&nd_dev->query_pkt_sem); + return 0; + } + + /* + * Now query the adaptor. + */ + + pkt = &nd_dev->query_pkt; + + pkt_type = NDV_PKT_ID1_CONTROL; + NDV_ADD_PACKET_OPTION(pkt_type, NDV_PACKET_OPTIONS_REQUIRES_PASSIVE); + + pkt->hdr.pkt_hdr.packet_type = pkt_type; + pkt->hdr.pkt_hdr.hdr_sz = sizeof(struct ndv_packet_hdr_control_1); + pkt->hdr.pkt_hdr.data_sz = sizeof(struct pkt_nd_query_adaptor) - + sizeof(struct ndv_packet_hdr_control_1); + + + pkt->hdr.file_handle.local = uctx->file_handle.local; + pkt->hdr.file_handle.remote = uctx->file_handle.remote; + + pkt->hdr.irp_handle.val64 = 0; + + pkt->hdr.io_cntrl_code = IOCTL_ND_ADAPTER_QUERY; + pkt->hdr.output_buf_sz = sizeof(struct nd_adap_query_ioctl); + pkt->hdr.input_buf_sz = sizeof(struct nd_adap_query_ioctl); + pkt->hdr.input_output_buf_offset = 0; + memset(&pkt->ioctl.ad_q, 0, sizeof(struct nd_adap_query_ioctl)); + + pkt->ioctl.ad_q.version = ND_VERSION_1; + pkt->ioctl.ad_q.info_version = ND_VERSION_2; + pkt->ioctl.ad_q.adapter_handle = uctx->adaptor_hdl; + + ret = hvnd_send_packet(nd_dev, pkt, + sizeof(struct pkt_nd_query_adaptor), + (unsigned long)pkt, true); + + hvnd_debug("pkt->ioctl.ad_info.inline_request_threshold=%d\n", + pkt->ioctl.ad_info.inline_request_threshold); + nd_dev->query_pkt_set = true; + + // how about host returning PENDING + up(&nd_dev->query_pkt_sem); + + if (ret) + return ret; + + hvnd_debug("Query Adaptor Succeeded\n"); + + /* + * Cache the relevant properties out. + */ + props->fw_ver = 0; + props->device_cap_flags = 0; + props->vendor_id = 0x15b3; + props->vendor_part_id = adap_info->device_id; + props->max_mr_size = ~0ull; + props->page_size_cap = PAGE_SIZE; + props->max_qp = 16384; + props->max_qp_wr = min(adap_info->max_recv_q_depth, + adap_info->max_initiator_q_depth); + props->max_send_sge = min(adap_info->max_initiator_sge, + adap_info->max_recv_sge); + props->max_recv_sge = props->max_send_sge; + props->max_cq = 0x1FFFF; + props->max_cqe = adap_info->max_completion_q_depth; + props->max_mr = 16384; + props->max_pd = 16384; + props->max_qp_rd_atom = adap_info->max_inbound_read_limit; + props->max_qp_init_rd_atom = adap_info->max_outbound_read_limit; + props->max_res_rd_atom = props->max_qp_rd_atom * props->max_qp; + props->max_srq = 16384; + props->max_srq_wr = adap_info->max_recv_q_depth; + props->max_srq_sge = adap_info->max_recv_sge; + return 0; +} + + +int hvnd_create_pd(struct hvnd_ucontext *uctx, struct hvnd_dev *nd_dev, + struct hvnd_ib_pd *hvnd_pd) +{ + struct pkt_nd_pd_create *pkt = &uctx->pd_cr_pkt; + int ret; + int pkt_type; + + hvnd_debug("Create Protection Domain\n"); + + pkt_type = NDV_PKT_ID1_CONTROL; + NDV_ADD_PACKET_OPTION(pkt_type, NDV_PACKET_OPTIONS_REQUIRES_PASSIVE); + + pkt->hdr.pkt_hdr.packet_type = pkt_type; + pkt->hdr.pkt_hdr.hdr_sz = sizeof(struct ndv_packet_hdr_control_1); + pkt->hdr.pkt_hdr.data_sz = sizeof(struct pkt_nd_pd_create) - + sizeof(struct ndv_packet_hdr_control_1); + + hvnd_debug("pdcreate packet size: %d\n", + (int)sizeof(struct pkt_nd_pd_create)); + hvnd_debug("pdcreate hdr size: %d\n", + (int)sizeof(struct ndv_packet_hdr_control_1)); + hvnd_debug("pdcreate data size: %d\n", pkt->hdr.pkt_hdr.data_sz); + + pkt->hdr.file_handle.local = uctx->create_pkt.handle.local; + pkt->hdr.file_handle.remote = uctx->create_pkt.handle.remote; + + hvnd_debug("create pd uctx is %p\n", uctx); + hvnd_debug("create pd local file is %d\n", + uctx->create_pkt.handle.local); + hvnd_debug("create pd local file is %d\n", + uctx->create_pkt.handle.remote); + + pkt->hdr.irp_handle.val64 = 0; + pkt->hdr.io_cntrl_code = IOCTL_ND_PD_CREATE; + + pkt->hdr.output_buf_sz = sizeof(struct nd_create_pd_ioctl); + pkt->hdr.input_buf_sz = sizeof(struct nd_create_pd_ioctl); + pkt->hdr.input_output_buf_offset = 0; + + hvnd_debug("output/input buf size: %d\n", pkt->hdr.output_buf_sz); + + /* + * Fill the ioctl section. + */ + pkt->ioctl.in.version = ND_VERSION_1; + pkt->ioctl.in.reserved = 0; + pkt->ioctl.in.handle = uctx->adaptor_hdl; + + + ret = hvnd_send_packet(nd_dev, pkt, + sizeof(struct pkt_nd_pd_create), + (unsigned long)pkt, true); + + if (ret) + return ret; + + if (pkt->hdr.pkt_hdr.status != 0) { + hvnd_error("Create PD failed; status is %d\n", + pkt->hdr.pkt_hdr.status); + return -EINVAL; + } + if (pkt->hdr.io_status != 0) { + hvnd_error("Create PD failed;io status is %d\n", + pkt->hdr.io_status); + return -EINVAL; + } + + hvnd_debug("Create PD Succeeded\n"); + + hvnd_debug("pd_handle is %p\n", (void *)pkt->ioctl.resp.pd_handle); + hvnd_debug("pdn is %d\n", (int)pkt->ioctl.resp.pdn); + + hvnd_pd->pdn = pkt->ioctl.resp.pdn; + hvnd_pd->handle = pkt->ioctl.out_handle; + + return 0; +} + +int hvnd_cancel_io(struct hvnd_ep_obj *ep_object) +{ + struct pkt_nd_cancel_io pkt; + int ret; + u32 ioctl; + + switch (ep_object->type) { + case ND_LISTENER: + hvnd_debug("LISTENER I/O Cancelled\n"); + ioctl = IOCTL_ND_LISTENER_CANCEL_IO; + break; + case ND_CONNECTOR: + hvnd_debug("CONNECTOR I/O Cancelled\n"); + ioctl = IOCTL_ND_CONNECTOR_CANCEL_IO; + break; + case ND_MR: + hvnd_debug("MR I/O Cancelled\n"); + ioctl = IOCTL_ND_MR_CANCEL_IO; + break; + case ND_CQ: + hvnd_debug("CQ I/O Cancelled\n"); + ioctl = IOCTL_ND_CQ_CANCEL_IO; + break; + default: + hvnd_error("UNKNOWN object type\n"); + return -EINVAL; + } + + // KYS try to avoid having to zero everything + memset(&pkt, 0, sizeof(pkt)); + hvnd_init_hdr(&pkt.hdr, + sizeof(pkt) - + sizeof(struct ndv_packet_hdr_control_1), + ep_object->uctx->create_pkt.handle.local, + ep_object->uctx->create_pkt.handle.remote, + ioctl, 0, 0, 0); + + /* + * Now fill in the ioctl section. + */ + pkt.ioctl.in.version = ND_VERSION_1; + pkt.ioctl.in.reserved = 0; + pkt.ioctl.in.handle = ep_object->ep_handle; + hvnd_debug("cancel io handle is %p\n", (void *)ep_object->ep_handle); + + ret = hvnd_send_ioctl_pkt(ep_object->nd_dev, &pkt.hdr, + sizeof(pkt), + (u64)&pkt); + + if (ret) + goto err; + + /* + * Now that we have cancelled all I/Os, + */ + + return 0; + +err: + hvnd_error("cancel I/O operation failed\n"); + return ret; +} + + +int hvnd_free_handle(struct hvnd_dev *nd_dev, struct hvnd_ucontext *uctx, + u64 handle, u32 ioctl) +{ + struct pkt_nd_free_handle pkt; + int ret; + + hvnd_debug("Freeing handle ioctl is %s; handle is %p\n", + hvnd_get_op_name(ioctl), (void *)handle); + + hvnd_debug("uctx is %p\n", uctx); + hvnd_debug("nd_dev is %p\n", nd_dev); + + // KYS try to avoid having to zero everything + memset(&pkt, 0, sizeof(pkt)); + hvnd_init_hdr(&pkt.hdr, + sizeof(pkt) - + sizeof(struct ndv_packet_hdr_control_1), + uctx->create_pkt.handle.local, + uctx->create_pkt.handle.remote, + ioctl, 0, 0, 0); + + /* + * Now fill in the ioctl section. + */ + pkt.ioctl.in.version = ND_VERSION_1; + pkt.ioctl.in.reserved = 0; + pkt.ioctl.in.handle = handle; + + ret = hvnd_send_ioctl_pkt(nd_dev, &pkt.hdr, sizeof(pkt), (u64)&pkt); + + if (ret) + goto err; + + return 0; + +err: + hvnd_error("%s: ret=%d\n", __func__, ret); + return ret; +} + +int hvnd_negotiate_version(struct hvnd_dev *nd_dev) +{ + union ndv_packet_init *pkt = &nd_dev->init_pkt; + int ret; + + nd_dev->negotiated_version = NDV_PROTOCOL_VAERSION_INVALID; + + pkt->packet_type = NDV_PACKET_TYPE_INIT; + pkt->protocol_version = NDV_PROTOCOL_VERSION_CURRENT; + pkt->flags = 0; // KYS are the flags 0? + + ret = hvnd_send_packet(nd_dev, pkt, + sizeof(union ndv_packet_init), (u64)NULL, true); + + return ret; +} + +void hvnd_callback(void *context) +{ + struct hv_device *dev = context; + struct hvnd_dev *nd_dev = hv_get_drvdata(dev); + int copy_sz = 0; + struct ndv_packet_hdr_control_1 *ctrl_hdr; + union ndv_packet_init *pkt_init; + u32 recvlen; + u32 local_irp; + u64 requestid; + u32 *pkt_type; + u32 pkt_id; + struct hvnd_ep_obj *ep_object; + struct incoming_pkt *incoming_pkt; /* Used only for asynch calls */ + char *incoming_pkt_start; + struct vmpacket_descriptor *desc; + int status; + struct hvnd_cookie *hvnd_cookie; + unsigned long flags; + + vmbus_recvpacket_raw(dev->channel, hvnd_recv_buffer, + (PAGE_SIZE * 4), &recvlen, &requestid); + + if (recvlen <= 0) + return; + + desc = (struct vmpacket_descriptor *)hvnd_recv_buffer; + incoming_pkt_start = hvnd_recv_buffer + (desc->offset8 << 3); + recvlen -= desc->offset8 << 3; + + pkt_type = (u32 *)incoming_pkt_start; + pkt_id = *pkt_type; + if (pkt_id != NDV_PACKET_TYPE_INIT) + pkt_id = NDV_PACKET_TYPE_ID(pkt_id); + + switch (pkt_id) { + case NDV_PACKET_TYPE_INIT: + /* + * Host is responding to our init packet. + */ + pkt_init = (union ndv_packet_init *)incoming_pkt_start; + nd_dev->negotiated_version = pkt_init->protocol_version; + copy_sz = 0; + break; + + case NDV_PKT_ID1_INIT_RESOURCES: + copy_sz = 0; + break; + + case NDV_PKT_ID1_BIND: + nd_dev->bind_pkt.pkt_hdr.status = + ((union ndv_packet_hdr *) incoming_pkt_start)->status; + copy_sz = 0; + break; + + case NDV_PKT_ID1_COMPLETE: + ctrl_hdr = (struct ndv_packet_hdr_control_1 *)incoming_pkt_start; + status = ctrl_hdr->io_status; + + local_irp = ctrl_hdr->irp_handle.local; + ep_object = (struct hvnd_ep_obj *)map_irp_to_ctx(nd_dev, + local_irp); + + if (!ep_object) { + hvnd_error("irp could not be mapped; irp is %d ioctl is %s", + local_irp, + hvnd_get_op_name(ctrl_hdr->io_cntrl_code)); + goto complete; + } + + if (ctrl_hdr->io_cntrl_code != IOCTL_ND_CQ_NOTIFY) + hvnd_debug("completion packet; iostatus is %x, ioctl is %s", + ctrl_hdr->io_status, + hvnd_get_op_name(ctrl_hdr->io_cntrl_code)); + + switch (ctrl_hdr->io_cntrl_code) { + + case IOCTL_ND_CQ_NOTIFY: + hvnd_process_cq_event_complete(ep_object, status); + + ep_del_work_pending(ep_object); + goto complete; + + case IOCTL_ND_CONNECTOR_ACCEPT: + + hvnd_process_connector_accept(ep_object, status); + + ep_del_work_pending(ep_object); + goto complete; + + case IOCTL_ND_CONNECTOR_DISCONNECT: + hvnd_debug("disconnected: ep opj is %p; status: %d\n", + ep_object, status); + hvnd_process_disconnect(ep_object, status); + + ep_del_work_pending(ep_object); + goto complete; + + default: + break; + } + + /* + * This is the completion notification; + * the IRP cookie is the state through which + * we will invoke the callback. + */ + incoming_pkt = kmalloc(recvlen + sizeof(struct incoming_pkt), + GFP_ATOMIC); + if (incoming_pkt == NULL) { + hvnd_error("Could not alloc memory in callback\n"); + ep_del_work_pending(ep_object); + goto complete; + } + memcpy(incoming_pkt->pkt, incoming_pkt_start, recvlen); + + spin_lock_irqsave(&ep_object->incoming_pkt_list_lock, flags); + list_add_tail(&incoming_pkt->list_entry, + &ep_object->incoming_pkt_list); + spin_unlock_irqrestore(&ep_object->incoming_pkt_list_lock, + flags); + + schedule_work(&ep_object->wrk.work); + + goto complete; + + case NDV_PKT_ID1_CREATE: + copy_sz = sizeof(struct ndv_pkt_hdr_create_1); + break; + + case NDV_PKT_ID1_CLEANUP: + copy_sz = sizeof(struct ndv_pkt_hdr_cleanup_1); + break; + + case NDV_PKT_ID1_CONTROL: + ctrl_hdr = (struct ndv_packet_hdr_control_1 *)incoming_pkt_start; + status = ctrl_hdr->io_status; + + if (ctrl_hdr->io_cntrl_code != IOCTL_ND_CQ_NOTIFY) + hvnd_debug("packet; iostatus is %x ioctl is %s", + ctrl_hdr->io_status, hvnd_get_op_name(ctrl_hdr->io_cntrl_code)); + + switch (ctrl_hdr->io_cntrl_code) { + + case IOCTL_ND_PROVIDER_INIT: + copy_sz = sizeof(struct pkt_nd_provider_ioctl); + break; + + case IOCTL_ND_PROVIDER_BIND_FILE: + copy_sz = sizeof(struct pkt_nd_provider_ioctl); + break; + + case IOCTL_ND_ADAPTER_OPEN: + copy_sz = sizeof(struct pkt_nd_open_adapter); + break; + + case IOCTL_ND_ADAPTER_CLOSE: + copy_sz = sizeof(struct pkt_nd_free_handle); + break; + + case IOCTL_ND_ADAPTER_QUERY: + copy_sz = sizeof(struct pkt_nd_query_adaptor); + break; + + case IOCTL_ND_PD_CREATE: + copy_sz = sizeof(struct pkt_nd_pd_create); + break; + + case IOCTL_ND_PD_FREE: + copy_sz = sizeof(struct pkt_nd_free_handle); + break; + + case IOCTL_ND_CQ_CREATE: + copy_sz = sizeof(struct pkt_nd_create_cq); + break; + + case IOCTL_ND_CQ_FREE: + copy_sz = sizeof(struct pkt_nd_free_cq); + break; + + case IOCTL_ND_CQ_NOTIFY: //FIXME check ep stop state + local_irp = ctrl_hdr->irp_handle.local; + ep_object = (struct hvnd_ep_obj *) + map_irp_to_ctx(nd_dev, local_irp); + if (!ep_object) { + hvnd_error("irp could not be mapped\n"); + goto complete; + return; + } + copy_sz = sizeof(struct pkt_nd_notify_cq); + hvnd_process_cq_event_pending(ep_object, status); + goto complete; + return; + + case IOCTL_ND_LISTENER_CREATE: + copy_sz = sizeof(struct pkt_nd_cr_listener); + break; + + case IOCTL_ND_LISTENER_FREE: + copy_sz = sizeof(struct pkt_nd_free_listener); + break; + + case IOCTL_ND_QP_FREE: + copy_sz = sizeof(struct pkt_nd_free_handle); + break; + + case IOCTL_ND_CONNECTOR_CANCEL_IO: + case IOCTL_ND_MR_CANCEL_IO: + case IOCTL_ND_CQ_CANCEL_IO: + case IOCTL_ND_LISTENER_CANCEL_IO: + copy_sz = sizeof(struct pkt_nd_cancel_io); + break; + + case IOCTL_ND_LISTENER_BIND: + copy_sz = sizeof(struct pkt_nd_bind_listener); + break; + + case IOCTL_ND_LISTENER_LISTEN: + copy_sz = sizeof(struct pkt_nd_listen_listener); + break; + + case IOCTL_ND_LISTENER_GET_ADDRESS: + copy_sz = sizeof(struct pkt_nd_get_addr_listener); + break; + + case IOCTL_ND_LISTENER_GET_CONNECTION_REQUEST: + copy_sz = sizeof(struct pkt_nd_get_connection_listener); + goto complete; // non-block + + case IOCTL_ND_CONNECTOR_CREATE: + copy_sz = sizeof(struct pkt_nd_cr_connector); + break; + + case IOCTL_ND_CONNECTOR_FREE: + copy_sz = sizeof(struct pkt_nd_free_connector); + break; + + case IOCTL_ND_CONNECTOR_BIND: + copy_sz = sizeof(struct pkt_nd_free_connector); + break; + + // KYS: ALERT: ASYNCH Operation + case IOCTL_ND_CONNECTOR_CONNECT: + copy_sz = sizeof(struct pkt_nd_connector_connect); + goto complete; //non-block + + case IOCTL_ND_CONNECTOR_COMPLETE_CONNECT: + copy_sz = sizeof(struct pkt_nd_connector_connect_complete); + break; + + // KYS: ALERT: ASYNCH Operation + case IOCTL_ND_CONNECTOR_ACCEPT: + copy_sz = sizeof(struct pkt_nd_connector_accept); + goto complete; //non-block + + case IOCTL_ND_CONNECTOR_REJECT: + copy_sz = sizeof(struct pkt_nd_connector_reject); + break; + + case IOCTL_ND_CONNECTOR_GET_READ_LIMITS: + copy_sz = sizeof(struct pkt_nd_connector_get_rd_limits); + break; + + case IOCTL_ND_CONNECTOR_GET_PRIVATE_DATA: + copy_sz = sizeof(struct pkt_nd_connector_get_priv_data); + break; + + case IOCTL_ND_CONNECTOR_GET_PEER_ADDRESS: + copy_sz = sizeof(struct pkt_nd_connector_get_peer_addr); + break; + + case IOCTL_ND_CONNECTOR_GET_ADDRESS: + copy_sz = sizeof(struct pkt_nd_connector_get_addr); + break; + + // KYS: ALERT: ASYNCH Operation + case IOCTL_ND_CONNECTOR_NOTIFY_DISCONNECT: + copy_sz = sizeof(struct pkt_nd_connector_notify_disconnect); + goto complete; //non-block + + // KYS: ALERT: ASYNCH Operation + case IOCTL_ND_CONNECTOR_DISCONNECT: + hvnd_debug("IOCTL_ND_CONNECTOR_DISCONNECT\n"); + copy_sz = sizeof(struct pkt_nd_connector_notify_disconnect); + goto complete; // non-block + + case IOCTL_ND_QP_CREATE: + copy_sz = sizeof(struct pkt_nd_create_qp); + break; + + case IOCTL_ND_MR_CREATE: + copy_sz = sizeof(struct pkt_nd_create_mr); + break; + + case IOCTL_ND_MR_FREE: + copy_sz = sizeof(struct pkt_nd_free_handle); + break; + + case IOCTL_ND_MR_REGISTER: + copy_sz = sizeof(struct pkt_nd_register_mr); + break; + + case IOCTL_ND_MR_DEREGISTER: + copy_sz = sizeof(struct pkt_nd_deregister_mr); + break; + + case IOCTL_ND_ADAPTER_QUERY_ADDRESS_LIST: + copy_sz = sizeof(struct pkt_query_addr_list); + break; + + case IOCTL_ND_QP_FLUSH: + copy_sz = sizeof(struct pkt_nd_flush_qp); + break; + + default: + hvnd_warn("Got unknown ioctl: %d\n", + ctrl_hdr->io_cntrl_code); + copy_sz = 0; + break; + } + + break; + default: + hvnd_warn("Got an unknown packet type %d\n", *pkt_type); + break; + } + + hvnd_cookie = (struct hvnd_cookie *)requestid; + memcpy(hvnd_cookie->pkt, incoming_pkt_start, copy_sz); + complete(&hvnd_cookie->host_event); + +complete: + /* send out ioctl completion patcket */ + if (desc->flags & VMBUS_DATA_PACKET_FLAG_COMPLETION_REQUESTED) { + int retry = 5; + + while (true) { + int ret; + + ret = vmbus_sendpacket(dev->channel, NULL, 0, + requestid, VM_PKT_COMP, 0); + if (ret == 0) { + break; + } else if (ret == -EAGAIN) { + if (--retry == 0) { + hvnd_error("give up retrying send completion packet\n"); + break; + } + hvnd_warn("retrying send completion packet\n"); + udelay(100); + } else { + hvnd_error("unable to send completion packet ret=%d\n", + ret); + break; + } + } + } + +} --- linux-azure-5.8-5.8.0.orig/drivers/infiniband/hw/vmbus-rdma/vmbus-rdma-142.0/vmbus_rdma.h +++ linux-azure-5.8-5.8.0/drivers/infiniband/hw/vmbus-rdma/vmbus-rdma-142.0/vmbus_rdma.h @@ -0,0 +1,2198 @@ +/* + * Copyright (c) 2014, Microsoft Corporation. + * + * Author: + * K. Y. Srinivasan + * + * This program is free software; you can redistribute it and/or modify it + * under the terms of the GNU General Public License version 2 as published + * by the Free Software Foundation. + * + * This program is distributed in the hope that it will be useful, but + * WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE, GOOD TITLE or + * NON INFRINGEMENT. See the GNU General Public License for more + * details. + * + * Bug fixes/enhancements: Long Li + */ + + +#ifndef _VMBUS_RDMA_H +#define _VMBUS_RDMA_H + + +#include +#include +#include +#include +#include + +/* NetworkDirect version Numbers. + */ +#define ND_VERSION_1 0x1 +#define ND_VERSION_2 0x20000 + +#ifndef NDVER +#define NDVER ND_VERSION_2 +#endif + +#define ND_ADAPTER_FLAG_IN_ORDER_DMA_SUPPORTED 0x00000001 +#define ND_ADAPTER_FLAG_CQ_INTERRUPT_MODERATION_SUPPORTED 0x00000004 +#define ND_ADAPTER_FLAG_MULTI_ENGINE_SUPPORTED 0x00000008 +#define ND_ADAPTER_FLAG_CQ_RESIZE_SUPPORTED 0x00000100 +#define ND_ADAPTER_FLAG_LOOPBACK_CONNECTIONS_SUPPORTED 0x00010000 + +#define ND_CQ_NOTIFY_ERRORS 0 +#define ND_CQ_NOTIFY_ANY 1 +#define ND_CQ_NOTIFY_SOLICITED 2 + +#define ND_MR_FLAG_ALLOW_LOCAL_WRITE 0x00000001 +#define ND_MR_FLAG_ALLOW_REMOTE_READ 0x00000002 +#define ND_MR_FLAG_ALLOW_REMOTE_WRITE 0x00000005 +#define ND_MR_FLAG_RDMA_READ_SINK 0x00000008 +#define ND_MR_FLAG_DO_NOT_SECURE_VM 0x80000000 + +#define ND_OP_FLAG_SILENT_SUCCESS 0x00000001 +#define ND_OP_FLAG_READ_FENCE 0x00000002 +#define ND_OP_FLAG_SEND_AND_SOLICIT_EVENT 0x00000004 +#define ND_OP_FLAG_ALLOW_READ 0x00000008 +#define ND_OP_FLAG_ALLOW_WRITE 0x00000010 + +#if NDVER >= ND_VERSION_2 +#define ND_OP_FLAG_INLINE 0x00000020 +#endif + +#define ND_AF_INET6 23 +#define IF_MAX_ADDR_LENGTH 32 + +struct group_affinity { + u64 mask; //KYS: usually 0 + u16 group; // KYS usually -1 + u16 reserved[3]; +}; + +struct if_physical_addr { + u16 length; + u8 addr[IF_MAX_ADDR_LENGTH]; +}; + +struct adapter_info_v2 { + u32 info_version; + u16 vendor_id; + u16 device_id; + u64 adapter_id; + size_t max_registration_size; + size_t max_window_size; + u32 max_initiator_sge; + u32 max_recv_sge; + u32 max_read_sge; + u32 max_transfer_length; + u32 max_inline_data_size; + u32 max_inbound_read_limit; + u32 max_outbound_read_limit; + u32 max_recv_q_depth; + u32 max_initiator_q_depth; + u32 max_shared_recv_q_depth; + u32 max_completion_q_depth; + u32 inline_request_threshold; + u32 large_request_threshold; + u32 max_caller_data; + u32 max_callee_data; + u32 adapter_flags; +} __packed; + +struct nd2_adapter_info_32 { //KYS: Check what this is + u32 info_version; + u16 vendor_id; + u16 devic_id; + u64 adapter_id; + u32 max_registration_size; + u32 max_window_size; + u32 max_initiator_sge; + u32 max_recv_sge; + u32 max_read_sge; + u32 max_transfer_length; + u32 max_inline_data_size; + u32 max_inbound_read_limit; + u32 max_outbound_read_limit; + u32 max_recv_q_depth; + u32 max_initiator_q_depth; + u32 max_shared_recv_q_depth; + u32 max_completion_q_depth; + u32 inline_request_threshold; + u32 large_request_threshold; + u32 max_caller_data; + u32 max_callee_data; + u32 adapter_flags; +} __packed; + +enum nd2_request_type { + ND2_RT_RECEIVE, + ND2_RT_SEND, + ND2_RT_BIND, + ND2_RT_INVALIDATE, + ND2_RT_READ, + ND2_RT_WRITE +}; + +struct nd2_result { + u32 status; + u32 bytes_transferred; + void *qp_ctx; + void *request_ctx; + enum nd2_request_type request_type; +} __packed; + +struct nd2_sge { + void *buffer; + u32 buffer_length; + u32 mr_token; +} __packed; + +/* + * The communication with the host via ioctls using VMBUS + * as the transport. + */ + +#define ND_IOCTL_VERSION 1 + +enum nd_mapping_type { + ND_MAP_IOSPACE, + ND_MAP_MEMORY, + ND_MAP_MEMORY_COALLESCE, + ND_MAP_PAGES, + ND_MAP_PAGES_COALLESCE, + ND_UNMAP_IOSPACE, + ND_UNMAP_MEMORY, + ND_MAX_MAP_TYPE +}; + +enum nd_caching_type { + ND_NON_CACHED = 0, + ND_CACHED, + ND_WRITE_COMBINED, + ND_MAX_CACHE_TYPE +}; + +enum nd_aceess_type { + ND_READ_ACCESS = 0, + ND_WRITE_ACCESS, + ND_MODIFY_ACCESS +}; + +struct nd_map_io_space { + enum nd_mapping_type map_type; + enum nd_caching_type cache_type; + u32 cb_length; +}; + +struct nd_map_memory { + enum nd_mapping_type map_type; + enum nd_aceess_type access_type; + u64 address; + u32 cb_length; +}; + +struct nd_mapping_id { + enum nd_mapping_type map_type; + u64 id; +}; + +struct ndk_map_pages { + struct nd_map_memory header; + u32 page_offset; +}; + +union nd_mapping { + enum nd_mapping_type map_type; + struct nd_map_io_space map_io_space; + struct nd_map_memory map_memory; + struct nd_mapping_id mapping_id; + struct ndk_map_pages map_pages; +}; + +struct nd_mapping_result { + u64 id; + u64 info; +}; + +struct nd_resource_descriptor { + u64 handle; + u32 ce_mapping_results; + u32 cb_mapping_results_offset; +}; + +struct nd_handle { + u32 version; + u32 reserved; + u64 handle; +}; + +union nd_sockaddr_inet { + struct sockaddr_in ipv4; + struct sockaddr_in6 ipv6; + u16 address_family; //KYS how is this supposed to work? +}; + +struct nd_address_element { + union nd_sockaddr_inet addr; + char mac_addr[ETH_ALEN]; +}; + +struct nd_resolve_address { + u32 version; + u32 reserved; + union nd_sockaddr_inet address; +}; + +struct nd_open_adapter { + u32 version; + u32 reserved; + u32 ce_mapping_cnt; + u32 cb_mapping_offset; + u64 adapter_id; +}; + +struct nd_adapter_query { + u32 version; + u32 info_version; + u64 adapter_handle; +}; + +struct nd_create_cq { + u32 version; + u32 queue_depth; + u32 ce_mapping_cnt; + u32 cb_mapping_offset; + u64 adapter_handle; + struct group_affinity affinity; +}; + +struct nd_create_srq { + u32 version; + u32 queue_depth; + u32 ce_mapping_cnt; + u32 cb_mapping_offset; + u32 max_request_sge; + u32 notify_threshold; + u64 pd_handle; + struct group_affinity affinity; +}; + +struct nd_create_qp_hdr { + u32 version; + u32 cb_max_inline_data; + u32 ce_mapping_cnt; + u32 cb_mapping_offset; //KYS: what is this prefix - ce/cb + u32 initiator_queue_depth; + u32 max_initiator_request_sge; + u64 receive_cq_handle; + u64 initiator_cq_handle; + u64 pd_handle; +}; + +struct nd_create_qp { + struct nd_create_qp_hdr hdr; + u32 receive_queue_depth; + u32 max_receive_request_sge; +}; + +struct nd_create_qp_with_srq { + struct nd_create_qp_hdr header; + u64 srq_handle; +}; + +struct nd_srq_modify { + u32 version; + u32 queue_depth; + u32 ce_mapping_cnt; + u32 cb_mapping_offset; + u32 notify_threshold; + u32 reserved; + u64 srq_handle; +}; + +struct nd_cq_modify { + u32 version; + u32 queue_depth; + u32 ce_mapping_count; + u32 cb_mappings_offset; + u64 cq_handle; +}; + +struct nd_cq_notify { + u32 version; + u32 type; + u64 cq_handle; +}; + +struct nd_mr_register_hdr { + u32 version; + u32 flags; + u64 cb_length; + u64 target_addr; + u64 mr_handle; +}; + +struct nd_mr_register { + struct nd_mr_register_hdr header; + u64 address; +}; + +struct nd_bind { + u32 version; + u32 reserved; + u64 handle; + union nd_sockaddr_inet address; +}; + +struct nd_read_limits { + u32 inbound; + u32 outbound; +}; + +struct nd_connect { + u32 version; + u32 reserved; + struct nd_read_limits read_limits; + u32 cb_private_data_length; + u32 cb_private_data_offset; + u64 connector_handle; + u64 qp_handle; + union nd_sockaddr_inet destination_address; + struct if_physical_addr phys_addr; +}; + +struct nd_accept { + u32 version; + u32 reserved; + struct nd_read_limits read_limits; + u32 cb_private_data_length; + u32 cb_private_data_offset; + u64 connector_handle; + u64 qp_handle; +}; + +struct nd_reject { + u32 version; + u32 reserved; + u32 cb_private_data_length; + u32 cb_private_data_offset; + u64 connector_handle; +}; + +struct nd_listen { + u32 version; + u32 back_log; + u64 listener_handle; +}; + +struct nd_get_connection_request { + u32 version; + u32 reserved; + u64 listener_handle; + u64 connector_handle; +}; + +enum ndv_mmio_type { + ND_PARTITION_KERNEL_VIRTUAL, + ND_PARTITION_SYSTEM_PHYSICAL, + ND_PARTITION_GUEST_PHYSICAL, + ND_MAXIMUM_MMIO_TYPE +}; + +struct ndv_resolve_adapter_id { + u32 version; + struct if_physical_addr phys_addr; +}; + +struct ndv_partition_create { + u32 version; + enum ndv_mmio_type mmio_type; + u64 adapter_id; + u64 xmit_cap; +}; + +struct ndv_partition_bind_luid { + u32 version; + u32 reserved; + u64 partition_handle; + struct if_physical_addr phys_addr; + //IF_LUID luid; //KYS? +}; + +struct ndv_partition_bind_address { + u32 version; + u32 reserved; + u64 partition_handle; + union nd_sockaddr_inet address; + struct if_physical_addr guest_phys_addr; + struct if_physical_addr phys_addr; +}; + +struct ndk_mr_register { + struct nd_mr_register_hdr hdr; + u32 cb_logical_page_addresses_offset; +}; + +struct ndk_bind { + struct nd_bind hdr; + u64 authentication_id; + bool is_admin; +}; + +#define FDN 0x12 +#define METHOD_BUFFERED 0x0 +#define FAA 0x0 + +#define CTL_CODE( DeviceType, Function, Method, Access ) ( \ + ((DeviceType) << 16) | ((Access) << 14) | ((Function) << 2) | (Method) \ +) + +#define ND_FUNCTION(r_, i_) ((r_) << 6 | (i_)) +#define IOCTL_ND(r_, i_) \ + CTL_CODE( FDN, ND_FUNCTION((r_), (i_)), METHOD_BUFFERED, FAA ) + +#define ND_FUNCTION_FROM_CTL_CODE(ctrlCode_) ((ctrlCode_ >> 2) & 0xFFF) +#define ND_RESOURCE_FROM_CTL_CODE(ctrlCode_) (ND_FUNCTION_FROM_CTL_CODE(ctrlCode_) >> 6) +#define ND_OPERATION_FROM_CTRL_CODE(ctrlCode_) (ND_FUNCTION_FROM_CTL_CODE(ctrlCode_) & 0x3F) + +#define ND_DOS_DEVICE_NAME L"\\DosDevices\\Global\\NetworkDirect" +#define ND_WIN32_DEVICE_NAME L"\\\\.\\NetworkDirect" + +enum nd_resource_type { + ND_PROVIDER = 0, + ND_ADAPTER, + ND_PD, + ND_CQ, + ND_MR, + ND_MW, + ND_SRQ, + ND_CONNECTOR, + ND_LISTENER, + ND_QP, + ND_VIRTUAL_PARTITION, + ND_RESOURCE_TYPE_COUNT +}; + +#define ND_OPERATION_COUNT 14 + +#define IOCTL_ND_PROVIDER(i_) IOCTL_ND(ND_PROVIDER, i_) +#define IOCTL_ND_ADAPTER(i_) IOCTL_ND(ND_ADAPTER, i_) +#define IOCTL_ND_PD(i_) IOCTL_ND(ND_PD, i_) +#define IOCTL_ND_CQ(i_) IOCTL_ND(ND_CQ, i_) +#define IOCTL_ND_MR(i_) IOCTL_ND(ND_MR, i_) +#define IOCTL_ND_MW(i_) IOCTL_ND(ND_MW, i_) +#define IOCTL_ND_SRQ(i_) IOCTL_ND(ND_SRQ, i_) +#define IOCTL_ND_CONNECTOR(i_) IOCTL_ND(ND_CONNECTOR, i_) +#define IOCTL_ND_LISTENER(i_) IOCTL_ND(ND_LISTENER, i_) +#define IOCTL_ND_QP(i_) IOCTL_ND(ND_QP, i_) +#define IOCTL_ND_VIRTUAL_PARTITION(i_) IOCTL_ND(ND_VIRTUAL_PARTITION, i_) + +/* Provider IOCTLs */ +#define IOCTL_ND_PROVIDER_INIT IOCTL_ND_PROVIDER( 0 ) +#define IOCTL_ND_PROVIDER_BIND_FILE IOCTL_ND_PROVIDER( 1 ) +#define IOCTL_ND_PROVIDER_QUERY_ADDRESS_LIST IOCTL_ND_PROVIDER( 2 ) +#define IOCTL_ND_PROVIDER_RESOLVE_ADDRESS IOCTL_ND_PROVIDER( 3 ) +#define IOCTL_ND_PROVIDER_MAX_OPERATION 4 + +/* Adapter IOCTLs */ +#define IOCTL_ND_ADAPTER_OPEN IOCTL_ND_ADAPTER( 0 ) +#define IOCTL_ND_ADAPTER_CLOSE IOCTL_ND_ADAPTER( 1 ) +#define IOCTL_ND_ADAPTER_QUERY IOCTL_ND_ADAPTER( 2 ) +#define IOCTL_ND_ADAPTER_QUERY_ADDRESS_LIST IOCTL_ND_ADAPTER( 3 ) +#define IOCTL_ND_ADAPTER_MAX_OPERATION 4 + +/* Protection Domain IOCTLs */ +#define IOCTL_ND_PD_CREATE IOCTL_ND_PD( 0 ) +#define IOCTL_ND_PD_FREE IOCTL_ND_PD( 1 ) +#define IOCTL_ND_PD_MAX_OPERATION 2 + +/* Completion Queue IOCTLs */ +#define IOCTL_ND_CQ_CREATE IOCTL_ND_CQ( 0 ) +#define IOCTL_ND_CQ_FREE IOCTL_ND_CQ( 1 ) +#define IOCTL_ND_CQ_CANCEL_IO IOCTL_ND_CQ( 2 ) +#define IOCTL_ND_CQ_GET_AFFINITY IOCTL_ND_CQ( 3 ) +#define IOCTL_ND_CQ_MODIFY IOCTL_ND_CQ( 4 ) +#define IOCTL_ND_CQ_NOTIFY IOCTL_ND_CQ( 5 ) +#define IOCTL_ND_CQ_MAX_OPERATION 6 + +/* Memory Region IOCTLs */ +#define IOCTL_ND_MR_CREATE IOCTL_ND_MR( 0 ) +#define IOCTL_ND_MR_FREE IOCTL_ND_MR( 1 ) +#define IOCTL_ND_MR_CANCEL_IO IOCTL_ND_MR( 2 ) +#define IOCTL_ND_MR_REGISTER IOCTL_ND_MR( 3 ) +#define IOCTL_ND_MR_DEREGISTER IOCTL_ND_MR( 4 ) +#define IOCTL_NDK_MR_REGISTER IOCTL_ND_MR( 5 ) +#define IOCTL_ND_MR_MAX_OPERATION 6 + +/* Memory Window IOCTLs */ +#define IOCTL_ND_MW_CREATE IOCTL_ND_MW( 0 ) +#define IOCTL_ND_MW_FREE IOCTL_ND_MW( 1 ) +#define IOCTL_ND_MW_MAX_OPERATION 2 + +/* Shared Receive Queue IOCTLs */ +#define IOCTL_ND_SRQ_CREATE IOCTL_ND_SRQ( 0 ) +#define IOCTL_ND_SRQ_FREE IOCTL_ND_SRQ( 1 ) +#define IOCTL_ND_SRQ_CANCEL_IO IOCTL_ND_SRQ( 2 ) +#define IOCTL_ND_SRQ_GET_AFFINITY IOCTL_ND_SRQ( 3 ) +#define IOCTL_ND_SRQ_MODIFY IOCTL_ND_SRQ( 4 ) +#define IOCTL_ND_SRQ_NOTIFY IOCTL_ND_SRQ( 5 ) +#define IOCTL_ND_SRQ_MAX_OPERATION 6 + +/* Connector IOCTLs */ +#define IOCTL_ND_CONNECTOR_CREATE IOCTL_ND_CONNECTOR( 0 ) +#define IOCTL_ND_CONNECTOR_FREE IOCTL_ND_CONNECTOR( 1 ) +#define IOCTL_ND_CONNECTOR_CANCEL_IO IOCTL_ND_CONNECTOR( 2 ) +#define IOCTL_ND_CONNECTOR_BIND IOCTL_ND_CONNECTOR( 3 ) +#define IOCTL_ND_CONNECTOR_CONNECT IOCTL_ND_CONNECTOR( 4 ) +#define IOCTL_ND_CONNECTOR_COMPLETE_CONNECT IOCTL_ND_CONNECTOR( 5 ) +#define IOCTL_ND_CONNECTOR_ACCEPT IOCTL_ND_CONNECTOR( 6 ) +#define IOCTL_ND_CONNECTOR_REJECT IOCTL_ND_CONNECTOR( 7 ) +#define IOCTL_ND_CONNECTOR_GET_READ_LIMITS IOCTL_ND_CONNECTOR( 8 ) +#define IOCTL_ND_CONNECTOR_GET_PRIVATE_DATA IOCTL_ND_CONNECTOR( 9 ) +#define IOCTL_ND_CONNECTOR_GET_PEER_ADDRESS IOCTL_ND_CONNECTOR( 10 ) +#define IOCTL_ND_CONNECTOR_GET_ADDRESS IOCTL_ND_CONNECTOR( 11 ) +#define IOCTL_ND_CONNECTOR_NOTIFY_DISCONNECT IOCTL_ND_CONNECTOR( 12 ) +#define IOCTL_ND_CONNECTOR_DISCONNECT IOCTL_ND_CONNECTOR( 13 ) +#define IOCTL_ND_CONNECTOR_MAX_OPERATION 14 + +/* Listener IOCTLs */ +#define IOCTL_ND_LISTENER_CREATE IOCTL_ND_LISTENER( 0 ) +#define IOCTL_ND_LISTENER_FREE IOCTL_ND_LISTENER( 1 ) +#define IOCTL_ND_LISTENER_CANCEL_IO IOCTL_ND_LISTENER( 2 ) +#define IOCTL_ND_LISTENER_BIND IOCTL_ND_LISTENER( 3 ) +#define IOCTL_ND_LISTENER_LISTEN IOCTL_ND_LISTENER( 4 ) +#define IOCTL_ND_LISTENER_GET_ADDRESS IOCTL_ND_LISTENER( 5 ) +#define IOCTL_ND_LISTENER_GET_CONNECTION_REQUEST IOCTL_ND_LISTENER( 6 ) +#define IOCTL_ND_LISTENER_MAX_OPERATION 7 + +/* Queue Pair IOCTLs */ +#define IOCTL_ND_QP_CREATE IOCTL_ND_QP( 0 ) +#define IOCTL_ND_QP_CREATE_WITH_SRQ IOCTL_ND_QP( 1 ) +#define IOCTL_ND_QP_FREE IOCTL_ND_QP( 2 ) +#define IOCTL_ND_QP_FLUSH IOCTL_ND_QP( 3 ) +#define IOCTL_ND_QP_MAX_OPERATION 4 + +/* Kernel-mode only IOCTLs (IRP_MJ_INTERNAL_DEVICE_CONTROL) */ +#define IOCTL_NDV_PARTITION_RESOLVE_ADAPTER_ID IOCTL_ND_VIRTUAL_PARTITION( 0 ) +#define IOCTL_NDV_PARTITION_CREATE IOCTL_ND_VIRTUAL_PARTITION( 1 ) +#define IOCTL_NDV_PARTITION_FREE IOCTL_ND_VIRTUAL_PARTITION( 2 ) +#define IOCTL_NDV_PARTITION_BIND IOCTL_ND_VIRTUAL_PARTITION( 3 ) +#define IOCTL_NDV_PARTITION_UNBIND IOCTL_ND_VIRTUAL_PARTITION( 4 ) +#define IOCTL_NDV_PARTITION_BIND_LUID IOCTL_ND_VIRTUAL_PARTITION( 5 ) +#define IOCTL_NDV_PARTITION_MAX_OPERATION 6 + + +#define MB_SHIFT 20 + + +/* Ringbuffer size for the channel */ +#define NDV_NUM_PAGES_IN_RING_BUFFER 64 + +#define NDV_MAX_PACKETS_PER_RECEIVE 8 + +#define NDV_MAX_PACKET_COUNT 16304 + +#define NDV_MAX_NUM_OUTSTANDING_RECEIVED_PACKETS (16304) +#define NDV_MAX_HANDLE_TABLE_SIZE (16304) +#define NDV_HOST_MAX_HANDLE_TABLE_SIZE (NDV_MAX_HANDLE_TABLE_SIZE * 16) + + +#define NDV_MAX_MAPPINGS 4 + +#define NDV_STATE_NONE 0x00000000 +#define NDV_STATE_CREATED 0x00000001 +#define NDV_STATE_CONNECTING 0x00000002 +#define NDV_STATE_INITIALIZING 0x00000003 +#define NDV_STATE_OPERATIONAL 0xEFFFFFFF +#define NDV_STATE_FAILED 0xFFFFFFFF + + +#define NDV_MAX_PRIVATE_DATA_SIZE 64 +#define NDV_MAX_IOCTL_SIZE 256 + +/* max size of buffer for vector of ND_MAPPING */ +#define NDV_MAX_MAPPING_BUFFER_SIZE \ + (NDV_MAX_MAPPINGS * sizeof(union nd_mapping)) + +/* max expected ioctl buffer size from users */ +#define NDV_MAX_IOCTL_BUFFER_SIZE \ + (NDV_MAX_IOCTL_SIZE + \ + NDV_MAX_MAPPING_BUFFER_SIZE + \ + NDV_MAX_PRIVATE_DATA_SIZE) + +/* max PFN array for inline buffers */ +#define NDV_MAX_INLINE_PFN_ARRAY_LENGTH 32 + +/* Field header size for inline buffer */ +#define NDV_MAX_MAPPING_PACKET_FILED_BUFFER_SIZE \ + (NDV_MAX_MAPPINGS * sizeof(NDV_PACKET_FIELD)) + +/* Max for a single field */ + +#define NDV_MAX_SINGLE_MAPPING_FIELD ( sizeof(GPA_RANGE) + \ + (sizeof(PFN_NUMBER) * NDV_MAX_INLINE_PFN_ARRAY_LENGTH)) + +/* Max for all inine data */ + +#define NDV_MAX_MAPPING_DATA_SIZE (NDV_MAX_MAPPING_PACKET_FILED_BUFFER_SIZE + \ + (NDV_MAX_MAPPINGS * NDV_MAX_SINGLE_MAPPING_FIELD)) + + +#define NDV_MAX_PACKET_HEADER_SIZE 256 + +#define NDV_MAX_PACKET_SIZE (NDV_MAX_PACKET_HEADER_SIZE + \ + NDV_MAX_IOCTL_BUFFER_SIZE + \ + NDV_MAX_MAPPING_DATA_SIZE) + +/* Well known message type INIT is defined for the channel + * not for the protocol. + */ + +#define NDV_PACKET_TYPE_INIT 0xFFFFFFFF + +/* Invalid protocol version to to identify uninitialized channels */ + +#define NDV_PROTOCOL_VERSION_INVALID 0xFFFFFFFF + +/* Flags that control the bahavior of packet handling */ + +enum ndv_packet_options { + NDV_PACKET_OPTION_NONE = 0x00, + + /* Indicates that the ExternalDataMdl parameter is expectected to be + * passed and must be handled in the reciever. This call must be + * handled specially to ensure that the MDL can be created correctly. + */ + NDV_PACKET_OPTION_EXTERNAL_DATA = 0x01, + + /* Inicates that the reciever must execution the handler at passive. */ + NDV_PACKET_OPTIONS_REQUIRES_PASSIVE = 0x02, + + /* Indicates that the sender does not expect and is not waiting for a + * response packet. + */ + NDV_PACKET_OPTIONS_POST = 0x04, +}; + +#define NDV_PACKET_TYPE(id_, opt_) \ + (((opt_)<<24) | (id_)) + +#define NDV_PACKET_TYPE_OPTIONS(type_) \ + (((type_) >> 24) & 0xFF) + +#define NDV_PACKET_TYPE_ID(type_) \ + ((type_) & 0xFFFFFF) \ + +#define NDV_ADD_PACKET_OPTION(type_, opt_) \ + (type_) |= (opt_<<24) + +/* The header value sent on all packets */ +union ndv_packet_hdr { + + struct { + /* The type of packet. + * This value should be created with the NDV_PACKET_TYPE macro + * to include all packet options within the packet type. + */ + u32 packet_type; + /* The size of the entire fixed message structure that exists + * before the data. This must be >= sizeof(NDV_PACKET_HEADER) + */ + u32 hdr_sz; + /* This size of the data that follows the message + * data_sz + hdr_sz size gives the total size of + * the buffer that is used. + */ + u32 data_sz; + /* The status code used to indicate success or failure. + * It is only used in completions and during responses. + */ + u32 status; //KYS: NTSTATUS? + }; + + u64 padding[2]; //KYS: why? +}; + + +/* The core INIT packet. This message is defined in the channel + * not in the protocol. This message should never change size + * or behavior, as it could impact compatibility in the future. + * This packet is used to negotiate the protocol version, so chaning + * this size could break backward compat. + */ + +union ndv_packet_init { + struct { + u32 packet_type; + u32 protocol_version; + u32 flags; + }; + u64 padding[2]; +} __packed; + +#define NDV_PACKET_INIT_SIZE 16 + +/* Data packing flags used for accessing the dynamic fields inside a packet */ +#define NDV_DATA_PACKING_2 0x1 +#define NDV_DATA_PACKING_4 0x3 +#define NDV_DATA_PACKING_8 0x7 + + +#define NDV_PROTOCOL_VERSION_1 0x0100 +#define NDV_PROTOCOL_VERSION_CURRENT NDV_PROTOCOL_VERSION_1 +#define NDV_PROTOCOL_VERSION_COUNT 1 + +struct ndv_pkt_field { + u32 size; + u32 offset; +}; + +enum ndv_pkt_id { + NDV_PKT_UNKNOWN = 0, + /* Version 1 Message ID's */ + NDV_PKT_ID1_BIND, + NDV_PKT_ID1_CREATE, + NDV_PKT_ID1_CLEANUP, + NDV_PKT_ID1_CANCEL, + NDV_PKT_ID1_CONTROL, + NDV_PKT_ID1_COMPLETE, + NDV_PKT_ID1_INIT_RESOURCES, +}; + +/* The guest will send this as the first messages just after init + * The resources are reserved per channel. + */ + +struct ndv_pkt_hdr_init_resources_1 { + + union ndv_packet_hdr pkt_hdr; + u16 io_space_sz_mb; + u64 io_space_start; + +}; + + + +/* The guest will send this packet to the host after channel init + * to query support for the adapters that are registered. + */ + +struct ndv_pkt_hdr_bind_1 { + union ndv_packet_hdr pkt_hdr; + bool unbind; + union nd_sockaddr_inet ip_address; + struct if_physical_addr phys_addr; + u64 guest_id; +}; + +union ndv_context_handle { + u64 val64; + struct { + u32 local; + u32 remote; + }; +}; + +struct ndv_pkt_hdr_create_1 { + union ndv_packet_hdr pkt_hdr; + + /* Identifies the object used to track this file handle on both + * the guest and the host. When sent from the guest, it will contain + * the guest handle. On success, the host will populate and return + * it's handle value as well. + */ + + union ndv_context_handle handle; + + /* The parameters sent to the CreateFile call */ + u32 access_mask; + u32 open_options; + + u16 file_attributes; //KYS: This field must be 64 bit aligned + + u16 share_access; //KYS + + u32 kys_padding; //KYS + + u16 ea_length; //KYS; needs to be 64 bit aligned; what is ea length - unused +}; + + +struct ndv_pkt_hdr_cleanup_1 { + union ndv_packet_hdr pkt_hdr; + + /* Identifies the object used to track this file handle on both + * the guest and the host. When sent from the guest, it will contain + * the both the guest and host handle values. The host will use this + * value to cleanup its resource, then update its portion of the handle + * to NDV_HANDLE_NULL before returning the data back to the guest. + */ + union ndv_context_handle handle; +}; + +struct ndv_pkt_hdr_cancel_1 { + union ndv_packet_hdr pkt_hdr; + union ndv_context_handle file_handle; + union ndv_context_handle irp_handle; +}; + +struct ndv_bind_port_info { + //LUID authentication_id; //KYS: LUID? + bool is_admin; +}; + +struct ndv_extended_data_flds { + union { + u32 field_count; + u64 padding; + }; + + //struct ndv_pkt_field fields[ANYSIZE_ARRAY]; //KYS? +}; + + +struct ndv_packet_hdr_control_1 { + union ndv_packet_hdr pkt_hdr; + /* Identifies the object used to track this file handle on both + * the guest and the host. This should always have both guest + * and host handle values inside it. + */ + + union ndv_context_handle file_handle; + + /* The handle information for the allocated irp context object. + * This information is used when the host/guest starts the cancelation + */ + union ndv_context_handle irp_handle; + + /* The input data describing in the IO control parameters */ + + u32 io_cntrl_code; + u32 output_buf_sz; + u32 input_buf_sz; + u32 input_output_buf_offset; + + /* These are used in the return message to indicate the status of the IO + * operation and the amount of data written to the output buffer. + */ + u32 io_status; //KYS: NTSTATUS? + u32 bytes_returned; + + /* This contains the field information for additional data that is sent + * with the packet that is IOCTL specific. + */ + + struct ndv_pkt_field extended_data; +}; + +/* + * Include MLX specific defines. + */ + +#include "mx_abi.h" + +/* Driver specific state. + */ + +/* + * We need to have host open a file; some + * Windows constants for open. + */ +#define STANDARD_RIGHTS_ALL (0x001F0000L) +#define FILE_ATTRIBUTE_NORMAL (0x80) +#define FILE_SHARE_READ (0x00000001) +#define FILE_SHARE_WRITE (0x00000002) +#define FILE_SHARE_DELETE (0x00000004) +#define FILE_FLAG_OVERLAPPED (0x40000000) +#define FILE_SHARE_ALL (FILE_SHARE_READ | FILE_SHARE_WRITE | FILE_SHARE_DELETE) +#define CREATE_ALWAYS (2) +#define OPEN_EXISTING (3) + +#define RTL_NUMBER_OF(_x) \ + sizeof(_x)/sizeof(_x[0]) +/* + * The context structure tracks the open state. + */ + +/* + * Packet layout for open adaptor. + */ + +/* + * Packet for querying the address list. + */ + +union query_addr_list_ioctl { + struct nd_handle in; + union nd_sockaddr_inet out[16]; //KYS a max of 16 addresses +}; + +struct pkt_query_addr_list { + struct ndv_packet_hdr_control_1 hdr; + union query_addr_list_ioctl ioctl; + unsigned long activity_id; +}; + + +struct pkt_fld { + u32 size; + u32 offset; +}; + +struct fld_data { + union { + u64 padding; + }; +}; + +struct extended_data_oad { + union { + u32 cnt; + u64 padding; + }; + /* offsets are from start of extended data struct + * and should start on 8 byte boundary + */ + struct pkt_fld fields[IBV_GET_CONTEXT_MAPPING_MAX]; +}; + +union oad_ioctl { + struct nd_open_adapter input; + struct nd_resource_descriptor resrc_desc; +}; + +union oad_mappings { + struct ibv_get_context_req ctx_input; + struct ibv_get_context_resp ctx_output; +}; + +struct pkt_nd_open_adapter { + struct ndv_packet_hdr_control_1 hdr; + + union oad_ioctl ioctl; + union oad_mappings mappings; + + /* + * Extended data. + */ + struct extended_data_oad ext_data; +}; + +/* + * Create CQ IOCTL. + */ + +struct cq_db_gpa { + u32 byte_count; + u32 byte_offset; + u64 pfn_array[2]; +}; + +struct cq_sn_gpa { + u32 byte_count; + u32 byte_offset; + u64 pfn_array[2]; +}; + +struct create_cq_ext_data { + union { + u32 cnt; + u64 padding; + }; + /* offsets are from start of extended data struct + * and should start on 8 byte boundary + */ + struct pkt_fld fields[MLX4_IB_CREATE_CQ_MAPPING_MAX]; + struct cq_db_gpa db_gpa; + struct cq_sn_gpa sn_gpa; + struct gpa_range cqbuf_gpa; +}; + +union create_cq_ioctl { + struct nd_create_cq input; + struct nd_resource_descriptor resrc_desc; +}; + +union create_cq_mappings { + struct ibv_create_cq cq_in; + struct ibv_create_cq_resp cq_resp; +}; + +struct pkt_nd_create_cq { + struct ndv_packet_hdr_control_1 hdr; + + union create_cq_ioctl ioctl; + union create_cq_mappings mappings; + + /* + * Extended data. + */ + struct create_cq_ext_data ext_data; +}; + +/* + * IOCTL to free CQ. + */ +struct free_cq_ioctl { + struct nd_handle in; +}; + +struct pkt_nd_free_cq { + struct ndv_packet_hdr_control_1 hdr; + + struct free_cq_ioctl ioctl; +}; + + +/* + * IOCTL to QUERY CQ - CQ NOTIFY + */ + +struct notify_cq_ioctl { + struct nd_cq_notify in; +}; + +struct pkt_nd_notify_cq { + struct ndv_packet_hdr_control_1 hdr; + struct notify_cq_ioctl ioctl; +}; + +/* + * IOCTL to Create a listner + */ + +struct nd_ep_create { + struct nd_handle hdr; + bool to_semantics; + unsigned long activity_id; +}; + +union listener_cr_ioctl { + struct nd_ep_create in; + u64 out; +}; + +struct pkt_nd_cr_listener { + struct ndv_packet_hdr_control_1 hdr; + union listener_cr_ioctl ioctl; +}; + +/* + * IOCTL to free listener. + */ + +struct listener_free_ioctl { + struct nd_handle in; +}; + +struct pkt_nd_free_listener { + struct ndv_packet_hdr_control_1 hdr; + struct listener_free_ioctl ioctl; +}; + +/* + * IOCTL for listener cancel IO. + */ +struct listener_cancelio_ioctl { + struct nd_handle in; +}; + +struct pkt_nd_cancelio_listener { + struct ndv_packet_hdr_control_1 hdr; + struct listener_cancelio_ioctl ioctl; +}; + +/* + * IOCTL for LISTENER BIND + */ + +union listener_bind_ioctl { + struct ndk_bind in; +}; + +struct pkt_nd_bind_listener { + struct ndv_packet_hdr_control_1 hdr; + union listener_bind_ioctl ioctl; +}; + +/* + * After the listener is bound, enable + * listening. + */ + +union listener_listen_ioctl { + struct nd_listen in; +}; + +struct pkt_nd_listen_listener { + struct ndv_packet_hdr_control_1 hdr; + union listener_listen_ioctl ioctl; +}; + +/* + * IOCTL for getting the adddress from listener. + * + */ + +union listener_get_addr_ioctl { + struct nd_handle in; + union nd_sockaddr_inet out; +}; + +struct pkt_nd_get_addr_listener { + struct ndv_packet_hdr_control_1 hdr; + union listener_get_addr_ioctl ioctl; +}; + +/* + * IOCTL to get a connection from a listener. + */ + +union listener_get_connection_ioctl { + struct nd_get_connection_request in; + union nd_sockaddr_inet out; +}; + +struct pkt_nd_get_connection_listener { + struct ndv_packet_hdr_control_1 hdr; + union listener_get_connection_ioctl ioctl; +}; + + +/* + * Connector IOCTLs + */ + +/* + * IOCTL to create connector. + */ + +union connector_cr_ioctl { //KYS should this be a union or struct? + struct nd_ep_create in; + u64 out; +}; + +struct pkt_nd_cr_connector { + struct ndv_packet_hdr_control_1 hdr; + union connector_cr_ioctl ioctl; //KYS: union or struct +}; + +/* + * IOCTL to free connector. + */ + +struct connector_free_ioctl { + struct nd_handle in; +}; + +struct pkt_nd_free_connector { + struct ndv_packet_hdr_control_1 hdr; + struct connector_free_ioctl ioctl; +}; + +/* + * IOCTL to cancel I/O on a connector. + */ + +struct connector_cancelio_ioctl { + struct nd_handle in; +}; + +struct pkt_nd_cancelio_connector { + struct ndv_packet_hdr_control_1 hdr; + struct connector_cancelio_ioctl ioctl; +}; + +/* + * IOCTL to Bind an address to the connector. + */ + +union connector_bind_ioctl { + struct ndk_bind in; +}; + +struct pkt_nd_bind_connector { + struct ndv_packet_hdr_control_1 hdr; + union connector_bind_ioctl ioctl; +}; + +/* + * IOCTL to connect a connector. + */ + +struct connector_connect_in { + struct nd_connect hdr; + u8 retry_cnt; + u8 rnr_retry_cnt; + u8 priv_data[56]; + unsigned long activity_id; +}; + +union connector_connect_ioctl { + struct connector_connect_in in; +}; + +struct pkt_nd_connector_connect { + struct ndv_packet_hdr_control_1 hdr; + union connector_connect_ioctl ioctl; +}; + +/* + * IOCTL for connector complete connect + */ + +struct complete_connect_in { + struct nd_handle hdr; + u8 rnr_nak_to; + unsigned long activity_id; +}; + +struct complete_connect_out { + enum ibv_qp_state state; +}; + +union connector_complete_connect_ioctl { + struct complete_connect_in in; + struct complete_connect_out out; +}; + +struct pkt_nd_connector_connect_complete { + struct ndv_packet_hdr_control_1 hdr; + union connector_complete_connect_ioctl ioctl; +}; + + +#define MAX_PRIVATE_DATA_LEN 148 + +/* + * IOCTL for connector accept. + */ + +struct connector_accept_in { + struct nd_accept hdr; + u8 rnr_retry_cnt; + u8 rnr_nak_to; + u8 private_data[MAX_PRIVATE_DATA_LEN]; + unsigned long activity_id; +}; + +struct connector_accept_out { + enum ibv_qp_state state; +}; + +union connector_accept_ioctl { + struct connector_accept_in in; + struct connector_accept_out out; +}; + +struct pkt_nd_connector_accept { + struct ndv_packet_hdr_control_1 hdr; + union connector_accept_ioctl ioctl; +}; + +/* + * IOCTL for connector to reject a connection. + */ + +struct connector_reject_in { + struct nd_reject hdr; + u8 private_data[MAX_PRIVATE_DATA_LEN]; +}; + +struct connector_reject_out { + enum ibv_qp_state state; +}; + +union connector_reject_ioctl { + struct connector_reject_in in; + struct connector_reject_out out; +}; + +struct pkt_nd_connector_reject { + struct ndv_packet_hdr_control_1 hdr; + union connector_reject_ioctl ioctl; +}; + +/* + * IOCTL to get connector read limits. + */ + +struct connector_get_rd_limits_in { + struct nd_handle in; +}; + +struct connector_get_rd_limits_out { + struct nd_read_limits out; +}; + +union connector_get_rd_limits_ioctl { + struct connector_get_rd_limits_in in; + struct connector_get_rd_limits_out out; +}; + +struct pkt_nd_connector_get_rd_limits { + struct ndv_packet_hdr_control_1 hdr; + union connector_get_rd_limits_ioctl ioctl; +}; + +/* + * IOCTL to get connector private data. + */ +union connector_get_priv_data_ioctl { + struct nd_handle in; + u8 out[MAX_PRIVATE_DATA_LEN]; +}; + +struct pkt_nd_connector_get_priv_data { + struct ndv_packet_hdr_control_1 hdr; + union connector_get_priv_data_ioctl ioctl; +}; + + +/* + * IOCTL get peer address. + */ + +union connector_get_peer_addr_ioctl { + struct nd_handle in; + union nd_sockaddr_inet out; +}; + +struct pkt_nd_connector_get_peer_addr { + struct ndv_packet_hdr_control_1 hdr; + union connector_get_peer_addr_ioctl ioctl; +}; + +/* + * IOCTL to get connector address. + */ + +union connector_get_addr_ioctl { + struct nd_handle in; + union nd_sockaddr_inet out; +}; + +struct pkt_nd_connector_get_addr { + struct ndv_packet_hdr_control_1 hdr; + union connector_get_addr_ioctl ioctl; +}; + +/* + * IOCTL for disconnect notification. + */ + +union connector_notify_disconnect_ioctl { + struct nd_handle in; +}; + +struct pkt_nd_connector_notify_disconnect { + struct ndv_packet_hdr_control_1 hdr; + union connector_notify_disconnect_ioctl ioctl; +}; + +union connector_disconnect_ioctl { + struct nd_handle in; +}; + +struct pkt_nd_connector_disconnect { + struct ndv_packet_hdr_control_1 hdr; + union connector_notify_disconnect_ioctl ioctl; +}; + +/* + * IOCTLs for QP operations. + */ + +/* + * Create qp IOCTL. + */ + +struct qp_db_gpa { + u32 byte_count; + u32 byte_offset; + u64 pfn_array[1]; +}; + +struct create_qp_ext_data { + union { + u32 cnt; + u64 padding; + }; + /* offsets are from start of extended data struct + * and should start on 8 byte boundary + */ + struct pkt_fld fields[MLX4_IB_CREATE_QP_MAPPINGS_MAX]; + struct qp_db_gpa db_gpa; + struct gpa_range qpbuf_gpa; +}; + +union create_qp_ioctl { + struct nd_create_qp input; + struct nd_resource_descriptor resrc_desc; +}; + +union create_qp_mappings { + struct ibv_create_qp qp_in; + struct ibv_create_qp_resp qp_resp; +}; + +struct pkt_nd_create_qp { + struct ndv_packet_hdr_control_1 hdr; + + union create_qp_ioctl ioctl; + union create_qp_mappings mappings; + + /* + * Extended data. + */ + struct create_qp_ext_data ext_data; +}; + +/* + * IOCTL to flush a QP. + */ +struct flush_qp_ioctl { + struct nd_handle in; + enum ibv_qp_state out; +}; + +struct pkt_nd_flush_qp { + struct ndv_packet_hdr_control_1 hdr; + struct flush_qp_ioctl ioctl; +}; + +/* + * Memory Region IOCTLS + */ +union create_mr_ioctl { + struct nd_handle in; + u64 out; +}; + +struct pkt_nd_create_mr { + struct ndv_packet_hdr_control_1 hdr; + union create_mr_ioctl ioctl; +}; + +struct mr_out { + u32 lkey; + u32 rkey; + unsigned long activity_id; +}; + + +union register_mr_ioctl { + struct nd_mr_register in; + struct mr_out out; +}; + +struct pkt_nd_register_mr { + struct ndv_packet_hdr_control_1 hdr; + union register_mr_ioctl ioctl; +}; + +struct deregister_mr_ioctl { + struct nd_handle in; +}; + +struct pkt_nd_deregister_mr { + struct ndv_packet_hdr_control_1 hdr; + struct deregister_mr_ioctl ioctl; +}; + +/* + * IOCTL to disconnect connector + */ + +/* + * Create PD IOCTL. + */ +struct nd_create_pd_ioctl { + union { + struct nd_handle in; + u64 out_handle; + }; + struct ibv_alloc_pd_resp resp; +}; + +struct pkt_nd_pd_create { + struct ndv_packet_hdr_control_1 hdr; + struct nd_create_pd_ioctl ioctl; +}; + +/* + * Free Handle. Check the layout with Luke. + * + */ +struct free_handle_ioctl { + struct nd_handle in; +}; + +struct pkt_nd_free_handle { + struct ndv_packet_hdr_control_1 hdr; + struct free_handle_ioctl ioctl; +}; + +/* + * Cancel I/O. + */ + +struct cancel_io_ioctl { + struct nd_handle in; +}; + +struct pkt_nd_cancel_io { + struct ndv_packet_hdr_control_1 hdr; + struct cancel_io_ioctl ioctl; +}; + +/* + * Connector states: + */ + +enum connector_state { + HVND_CON_INCOMING, + HVND_CON_INCOMING_ESTABLISHED, + HVND_CON_INCOMING_REJECTED, + HVND_CON_OUTGOING_REQUEST +}; + + +/* + * Adaptor query IOCTL. + */ +struct nd_adap_query_ioctl { + union { + struct nd_adapter_query ad_q; + struct adapter_info_v2 ad_info; + }; +}; + +struct pkt_nd_query_adaptor { + struct ndv_packet_hdr_control_1 hdr; + struct nd_adap_query_ioctl ioctl; +}; + +struct nd_ioctl { + union { + struct nd_handle handle; + u8 raw_buffer[NDV_MAX_IOCTL_BUFFER_SIZE]; + }; +}; + +struct pkt_nd_provider_ioctl { + struct ndv_packet_hdr_control_1 hdr; + struct nd_ioctl ioctl; +}; + +struct hvnd_ib_pd { + struct ib_pd ibpd; + u32 pdn; + u64 handle; +}; + +struct hvnd_work { + struct work_struct work; + void *callback_arg; +}; + +struct hvnd_disconnect_work { + struct work_struct work; + int status; + void *callback_arg; +}; + +/* +struct hvnd_delayed_work { + struct delayed_work work; + void *callback_arg; +}; +*/ + +enum hvnd_cm_state { + hvnd_cm_idle = 0, + hvnd_cm_connect_reply_sent, //active + hvnd_cm_connect_reply_refused, + hvnd_cm_connect_received, //active + hvnd_cm_connect_request_sent, //passive + hvnd_cm_accept_sent, + hvnd_cm_close_sent, + hvnd_cm_established_sent, +}; + +struct incoming_pkt { + struct list_head list_entry; + char pkt[0]; +}; + +struct hvnd_ep_obj { +/* + spinlock_t ep_lk; + bool to_be_destroyed; + bool io_outstanding; + + wait_queue_head_t wait; + bool stopped; + atomic_t process_refcnt; // how many NDV_PKT_ID1_COMPLETE packets we are currently processing +*/ + bool stopping; + wait_queue_head_t wait_pending; + atomic_t nr_requests_pending; + + enum nd_resource_type type; + enum connector_state state; //KYS need to look at locking + struct iw_cm_id *cm_id; + enum hvnd_cm_state cm_state; + struct completion block_event; + struct completion disconnect_event; + struct completion connector_accept_event; + int connector_accept_status; + u64 ep_handle; + spinlock_t incoming_pkt_list_lock; + struct list_head incoming_pkt_list; + struct hvnd_ep_obj *parent; + struct hvnd_dev *nd_dev; + struct hvnd_ucontext *uctx; + struct hvnd_work wrk; + struct hvnd_cq *cq; + u8 ord; + u8 ird; + char priv_data[MAX_PRIVATE_DATA_LEN]; + bool incoming; + atomic_t disconnect_notified; + u64 outstanding_handle; + u32 local_irp; + struct hvnd_ep_obj *outstanding_ep; + struct pkt_nd_connector_connect connector_connect_pkt; + int connector_connect_retry; +}; + +struct hvnd_ucontext { + struct ib_ucontext ibucontext; + struct list_head listentry; + struct ndv_pkt_hdr_create_1 create_pkt; + struct ndv_pkt_hdr_create_1 create_pkt_ovl; /* Overlap handle */ + struct pkt_nd_provider_ioctl pr_init_pkt; + union ndv_context_handle file_handle; + union ndv_context_handle file_handle_ovl; + + struct pkt_nd_open_adapter o_adap_pkt; + + u64 adaptor_hdl; + + /* + * Protection domain state. + */ + struct pkt_nd_pd_create pd_cr_pkt; + + u64 uar_base; + u64 bf_base; + u32 bf_buf_size; + u32 bf_offset; + u32 cqe_size; + u32 max_qp_wr; + u32 max_sge; + u32 max_cqe; + u32 num_qps; + + /* + * State to manage dorbell pages: + */ + struct list_head db_page_list; + struct mutex db_page_mutex; + + atomic_t refcnt; + +}; + +struct hvnd_dev { + struct ib_device ibdev; + struct hv_device *hvdev; + u32 device_cap_flags; + unsigned char nports; + bool ib_active; + + /* State to manage interaction with the host. + */ + + spinlock_t uctxt_lk; + struct list_head listentry; + + unsigned long mmio_sz; + unsigned long mmio_start_addr; + struct resource mmio_resource; + void *mmio_virt; + + unsigned long negotiated_version; + union ndv_packet_init init_pkt; + struct ndv_pkt_hdr_init_resources_1 resources; + struct ndv_pkt_hdr_bind_1 bind_pkt; + + struct ndv_pkt_hdr_create_1 global_create_pkt; + union ndv_context_handle global_file_handle; + + struct semaphore query_pkt_sem; + bool query_pkt_set; + struct pkt_nd_query_adaptor query_pkt; + + /* + * ID tables. + */ + spinlock_t id_lock; + + struct idr cqidr; + struct idr qpidr; + struct idr mmidr; + struct idr irpidr; + struct idr uctxidr; + atomic_t open_cnt; + + char ip_addr[4]; + char mac_addr[6]; + struct completion addr_set; + int bind_complete; + struct mutex bind_mutex; +}; + +struct hvnd_cq { + struct ib_cq ibcq; + void *cq_buf; + void *db_addr; + u32 arm_sn; + u32 entries; + + u32 cqn; + u32 cqe; + u64 cq_handle; + + struct ib_umem *umem; + struct ib_umem *db_umem; + struct mlx4_ib_user_db_page user_db_page; + struct hvnd_ucontext *uctx; + struct hvnd_ep_obj ep_object; //KYS need to clean this up; have a cq irp state + bool monitor; + bool upcall_pending; +}; + +struct hvnd_qp { + struct ib_qp ibqp; + void *qp_buf; + void *db_addr; + u32 buf_size; + u8 port; + struct hvnd_dev *nd_dev; + + __u8 log_sq_bb_count; + __u8 log_sq_stride; + __u8 sq_no_prefetch; + + int rq_wqe_cnt; + int rq_wqe_shift; + int rq_max_gs; + + int sq_wqe_cnt; + int sq_wqe_shift; + int sq_max_gs; + + u32 max_inline_data; + + u32 initiator_q_depth; + u32 initiator_request_sge; + + u32 receive_q_depth; + u32 receive_request_sge; + + struct hvnd_cq *recv_cq; + struct hvnd_cq *send_cq; + + u64 receive_cq_handle; + u64 initiator_cq_handle; + u64 pd_handle; + + u64 qp_handle; + u32 qpn; + u32 max_send_wr; + u32 max_recv_wr; + u32 max_send_sge; + u32 max_recv_sge; + + struct ib_umem *umem; + struct ib_umem *db_umem; + struct mlx4_ib_user_db_page user_db_page; + struct hvnd_ucontext *uctx; + struct iw_cm_id *cm_id; + + /* + * Current QP state; need to look at locking. + * XXXKYS + */ + enum ib_qp_state qp_state; + bool cq_notify; + wait_queue_head_t wait; + atomic_t refcnt; + struct hvnd_ep_obj *connector; +}; + +struct hvnd_mr { + struct ib_mr ibmr; + struct hvnd_ib_pd *pd; + struct ib_umem *umem; + u64 start; + u64 length; + u64 virt; + int acc; + u64 mr_handle; + u32 mr_lkey; + u32 mr_rkey; +}; + +struct hvnd_cookie { + struct completion host_event; + void *pkt; +}; + +/* + * Definitions to retrieve the IP address. + */ + +#define HVND_CURRENT_VERSION 0 + +struct hvnd_ipaddr_tuple { + char mac_address[ETH_ALEN]; + struct sockaddr addr; +}; + +struct hvnd_msg { + int status; + struct hvnd_ipaddr_tuple ip_tuple; +}; + +static inline struct hvnd_ib_pd *to_nd_pd(struct ib_pd *pd) +{ + return container_of(pd, struct hvnd_ib_pd, ibpd); +} + +static inline struct hvnd_dev *to_nd_dev(struct ib_device *ibdev) +{ + return container_of(ibdev, struct hvnd_dev, ibdev); +} + +static inline struct hvnd_cq *to_nd_cq(struct ib_cq *ibcq) +{ + return container_of(ibcq, struct hvnd_cq, ibcq); +} + +static inline struct hvnd_qp *to_nd_qp(struct ib_qp *ibqp) +{ + return container_of(ibqp, struct hvnd_qp, ibqp); +} + +static inline struct hvnd_ucontext *to_nd_context(struct ib_ucontext *ibucontext) +{ + return container_of(ibucontext, struct hvnd_ucontext, ibucontext); +} + +static inline struct hvnd_ucontext *get_uctx_from_pd(struct ib_pd *pd) +{ + return to_nd_context(pd->uobject->context); +} + +static inline struct hvnd_mr *to_nd_mr(struct ib_mr *ibmr) +{ + return container_of(ibmr, struct hvnd_mr, ibmr); +} +/* + * ID management. + */ + +static inline int insert_handle(struct hvnd_dev *dev, struct idr *idr, + void *handle, u32 id) +{ + int ret; + unsigned long flags; + + idr_preload(GFP_KERNEL); + spin_lock_irqsave(&dev->id_lock, flags); + + ret = idr_alloc(idr, handle, id, id + 1, GFP_ATOMIC); + + spin_unlock_irqrestore(&dev->id_lock, flags); + idr_preload_end(); + + WARN(ret < 0, "Failed to allocate for id=%d ret=%d\n", id, ret); + return ret < 0 ? ret : 0; +} + +static inline void remove_handle(struct hvnd_dev *dev, struct idr *idr, u32 id) +{ + unsigned long flags; + + spin_lock_irqsave(&dev->id_lock, flags); + idr_remove(idr, id); + spin_unlock_irqrestore(&dev->id_lock, flags); +} + +static inline struct hvnd_cq *get_cqp(struct hvnd_dev *dev, u32 cqid) +{ + struct hvnd_cq *cqp; + unsigned long flags; + + spin_lock_irqsave(&dev->id_lock, flags); + cqp = idr_find(&dev->cqidr, cqid); + spin_unlock_irqrestore(&dev->id_lock, flags); + + return cqp; +} + +static inline struct hvnd_qp *get_qpp(struct hvnd_dev *dev, u32 qpid) +{ + struct hvnd_qp *qpp; + unsigned long flags; + + spin_lock_irqsave(&dev->id_lock, flags); + qpp = idr_find(&dev->qpidr, qpid); + spin_unlock_irqrestore(&dev->id_lock, flags); + + return qpp; +} + +static inline struct hvnd_ucontext *get_uctx(struct hvnd_dev *dev, u32 pid) +{ + struct hvnd_ucontext *uctx; + unsigned long flags; + + spin_lock_irqsave(&dev->id_lock, flags); + uctx = idr_find(&dev->uctxidr, pid); + spin_unlock_irqrestore(&dev->id_lock, flags); + + return uctx; +} + + +static inline void *map_irp_to_ctx(struct hvnd_dev *nd_dev, u32 irp) +{ + void *ctx; + unsigned long flags; + + spin_lock_irqsave(&nd_dev->id_lock, flags); + ctx = idr_find(&nd_dev->irpidr, irp); + spin_unlock_irqrestore(&nd_dev->id_lock, flags); + + return ctx; +} + + + +void hvnd_callback(void *context); +int hvnd_negotiate_version(struct hvnd_dev *nd_dev); +int hvnd_init_resources(struct hvnd_dev *nd_dev); +int hvnd_bind_nic(struct hvnd_dev *nd_dev, bool un_bind, char *ip_addr, char *mac_addr); +int hvnd_open_adaptor(struct hvnd_dev *nd_dev, struct hvnd_ucontext *uctx); +int hvnd_close_adaptor(struct hvnd_dev *nd_dev, struct hvnd_ucontext *uctx); +int hvnd_query_adaptor(struct hvnd_dev *nd_dev, struct hvnd_ucontext *uctx); +int hvnd_create_pd(struct hvnd_ucontext *uctx, struct hvnd_dev *nd_dev, + struct hvnd_ib_pd *hvnd_pd); + +/* + * CQ operations. + */ +int hvnd_create_cq(struct hvnd_dev *nd_dev, struct hvnd_ucontext *uctx, + struct hvnd_cq *cq); +int hvnd_destroy_cq(struct hvnd_dev *nd_dev, struct hvnd_cq *cq); +int hvnd_notify_cq(struct hvnd_dev *nd_dev, struct hvnd_cq *cq, + u32 notify_type, u64 irp_handle); + +/* + * QP operations. + */ +int hvnd_create_qp(struct hvnd_dev *nd_dev, struct hvnd_ucontext *uctx, + struct hvnd_qp *qp); + +int hvnd_free_qp(struct hvnd_dev *nd_dev, struct hvnd_ucontext *uctx, + struct hvnd_qp *qp); + +int hvnd_flush_qp(struct hvnd_dev *nd_dev, struct hvnd_ucontext *uctx, + struct hvnd_qp *qp); + +/* + * MR operations. + */ + +int hvnd_cr_mr(struct hvnd_dev *nd_dev, struct hvnd_ucontext *uctx, + u64 pd_handle, u64 *mr_handle); + +int hvnd_free_mr(struct hvnd_dev *nd_dev, struct hvnd_ucontext *uctx, + u64 handle); + +int hvnd_mr_register(struct hvnd_dev *nd_dev, struct hvnd_ucontext *uctx, + struct hvnd_mr *mr); +int hvnd_deregister_mr(struct hvnd_dev *nd_dev, struct hvnd_ucontext *uctx, + u64 handle); + +/* + * Listner operations + */ +int hvnd_cr_listener(struct hvnd_dev *nd_dev, struct hvnd_ucontext *uctx, u64 *handle); + + +int hvnd_free_listener(struct hvnd_dev *nd_dev, struct hvnd_ucontext *uctx, + u64 listener_handle); + +int hvnd_bind_listener(struct hvnd_dev *nd_dev, struct hvnd_ucontext *uctx, + u64 listener_handle, union nd_sockaddr_inet *addr); + +int hvnd_listen_listener(struct hvnd_dev *nd_dev, struct hvnd_ucontext *uctx, + u64 listener_handle, u32 backlog); + +int hvnd_get_addr_listener(struct hvnd_dev *nd_dev, struct hvnd_ucontext *uctx, + u64 listener_handle, union nd_sockaddr_inet *addr); + +int hvnd_get_connection_listener(struct hvnd_dev *nd_dev, struct hvnd_ucontext *uctx, + u64 listener_handle, u64 connector_handle, + u64 irp_handle); + +/* + * Connector operations. + */ +int hvnd_cr_connector(struct hvnd_dev *nd_dev, struct hvnd_ucontext *uctx, + u64 *connector_handle); + +int hvnd_free_connector(struct hvnd_dev *nd_dev, struct hvnd_ucontext *uctx, + u64 handle); + +int hvnd_cancelio_connector(struct hvnd_dev *nd_dev, struct hvnd_ucontext *uctx, + u64 handle); +int hvnd_bind_connector(struct hvnd_dev *nd_dev, struct hvnd_ucontext *uctx, + u64 handle, union nd_sockaddr_inet *addr); + +int hvnd_connector_connect(struct hvnd_dev *nd_dev, struct hvnd_ucontext *uctx, + u64 connector_handle, u32 in_rd_limit, u32 out_rd_limit, + u32 priv_data_length, const u8 *priv_data, + u64 qp_handle, struct if_physical_addr *phys_addr, + union nd_sockaddr_inet *dest_addr, struct hvnd_ep_obj *ep); + +int hvnd_connector_complete_connect(struct hvnd_dev *nd_dev, struct hvnd_ucontext *uctx, + u64 connector_handle, enum ibv_qp_state *qp_state); + +int hvnd_connector_accept(struct hvnd_dev *nd_dev, struct hvnd_ucontext *uctx, + u64 connector_handle, + u64 qp_handle, + u32 in_rd_limit, u32 out_rd_limit, + u32 priv_data_length, const u8 *priv_data, + enum ibv_qp_state *qp_state, struct hvnd_ep_obj *ep); + +int hvnd_connector_reject(struct hvnd_dev *nd_dev, struct hvnd_ucontext *uctx, + u64 connector_handle, + u32 priv_data_length, u8 *priv_data, + enum ibv_qp_state *qp_state); + +int hvnd_connector_get_rd_limits(struct hvnd_dev *nd_dev, + struct hvnd_ucontext *uctx, + u64 connector_handle, + struct nd_read_limits *rd_limits); + +int hvnd_connector_get_priv_data(struct hvnd_dev *nd_dev, + struct hvnd_ucontext *uctx, + u64 connector_handle, + u8 *priv_data); + +int hvnd_connector_get_peer_addr(struct hvnd_dev *nd_dev, + struct hvnd_ucontext *uctx, + u64 connector_handle, + union nd_sockaddr_inet *peer_addr); + +int hvnd_connector_get_local_addr(struct hvnd_dev *nd_dev, + struct hvnd_ucontext *uctx, + u64 connector_handle, + union nd_sockaddr_inet *local_addr); + +int hvnd_connector_notify_disconnect(struct hvnd_dev *nd_dev, + struct hvnd_ucontext *uctx, + u64 connector_handle, struct hvnd_ep_obj *ep); + + +int hvnd_connector_disconnect(struct hvnd_dev *nd_dev, + struct hvnd_ucontext *uctx, + u64 connector_handle, struct hvnd_ep_obj *ep); + +int hvnd_free_handle(struct hvnd_dev *nd_dev, struct hvnd_ucontext *uctx, + u64 handle, u32 ioctl); + +int hvnd_cancel_io(struct hvnd_ep_obj *ep_object); + +char *hvnd_get_op_name(int ioctl); + +void hvnd_acquire_uctx_ref(struct hvnd_ucontext *uctx); +void hvnd_drop_uctx_ref(struct hvnd_dev *nd_dev,struct hvnd_ucontext *uctx); +void hvnd_process_events(struct work_struct *work); + +void hvnd_process_cq_event_pending(struct hvnd_ep_obj *ep, int status); +void hvnd_process_cq_event_complete(struct hvnd_ep_obj *ep, int status); +void hvnd_process_connector_accept(struct hvnd_ep_obj *ep_object, int status); +void hvnd_process_notify_disconnect(struct hvnd_ep_obj *ep_object, int status); +void hvnd_process_disconnect(struct hvnd_ep_obj *ep_object, int status); + +void put_irp_handle(struct hvnd_dev *nd_dev, u32 irp); +int get_irp_handle(struct hvnd_dev *nd_dev, u32 *local, void *irp_ctx); + +void hvnd_init_hdr(struct ndv_packet_hdr_control_1 *hdr, + u32 data_sz, u32 local, u32 remote, + u32 ioctl_code, + u32 ext_data_sz, u32 ext_data_offset, + u64 irp_handle); + +int hvnd_send_ioctl_pkt(struct hvnd_dev *nd_dev, + struct ndv_packet_hdr_control_1 *hdr, + u32 pkt_size, u64 cookie); + +int hvnd_get_outgoing_rdma_addr(struct hvnd_dev *nd_dev, struct hvnd_ucontext *uctx, + union nd_sockaddr_inet *og_addr); + +int hvnd_get_neigh_mac_addr(struct sockaddr *local, struct sockaddr *remote, char *mac_addr); + +bool ep_add_work_pending(struct hvnd_ep_obj *ep_object); +void ep_del_work_pending(struct hvnd_ep_obj *ep_object); +void ep_stop(struct hvnd_ep_obj *ep_object); + +#define current_pid() (current->pid) +/* + * NT STATUS defines. + */ + +#define STATUS_SUCCESS 0x0 +#define STATUS_PENDING 0x00000103 +#define STATUS_CANCELLED 0xC0000120 +#define STATUS_DISCONNECTED 0xC000020C +#define STATUS_TIMEOUT 0xC00000B5 + +void inc_ioctl_counter_request(unsigned ioctl); +void inc_ioctl_counter_response(unsigned ioctl); + +#define NDV_PROTOCOL_VAERSION_INVALID -1 +#define NDV_PACKET_INIT_SIZE 16 /* Size of the INIT packet */ + +#define HVND_RING_SZ (PAGE_SIZE * 64) + +/* logging levels */ +#define HVND_ERROR 0 +#define HVND_WARN 1 +#define HVND_INFO 2 +#define HVND_DEBUG 3 + +extern int hvnd_log_level; + +#define hvnd_error(fmt, args...) hvnd_log(HVND_ERROR, fmt, ##args) +#define hvnd_warn(fmt, args...) hvnd_log(HVND_WARN, fmt, ##args) +#define hvnd_info(fmt, args...) hvnd_log(HVND_INFO, fmt, ##args) +#define hvnd_debug(fmt, args...) hvnd_log(HVND_DEBUG, fmt, ##args) + +#define hvnd_log(level, fmt, args...) \ +do { \ + if (unlikely(hvnd_log_level >= (level))) \ + printk(KERN_ERR "hvnd %s[%u]: " fmt, __func__, __LINE__, ##args); \ +} while (0) + +#endif /* _VMBUS_RDMA_H */ --- linux-azure-5.8-5.8.0.orig/drivers/infiniband/hw/vmbus-rdma/vmbus-rdma-144.0/COPYING +++ linux-azure-5.8-5.8.0/drivers/infiniband/hw/vmbus-rdma/vmbus-rdma-144.0/COPYING @@ -0,0 +1,339 @@ + +"This software program is licensed subject to the GNU General Public License +(GPL). Version 2, June 1991, available at +" + +GNU General Public License + +Version 2, June 1991 + +Copyright (C) 1989, 1991 Free Software Foundation, Inc. +51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA + +Everyone is permitted to copy and distribute verbatim copies of this license +document, but changing it is not allowed. + +Preamble + +The licenses for most software are designed to take away your freedom to +share and change it. By contrast, the GNU General Public License is intended +to guarantee your freedom to share and change free software--to make sure +the software is free for all its users. This General Public License applies +to most of the Free Software Foundation's software and to any other program +whose authors commit to using it. (Some other Free Software Foundation +software is covered by the GNU Library General Public License instead.) You +can apply it to your programs, too. + +When we speak of free software, we are referring to freedom, not price. Our +General Public Licenses are designed to make sure that you have the freedom +to distribute copies of free software (and charge for this service if you +wish), that you receive source code or can get it if you want it, that you +can change the software or use pieces of it in new free programs; and that +you know you can do these things. + +To protect your rights, we need to make restrictions that forbid anyone to +deny you these rights or to ask you to surrender the rights. These +restrictions translate to certain responsibilities for you if you distribute +copies of the software, or if you modify it. + +For example, if you distribute copies of such a program, whether gratis or +for a fee, you must give the recipients all the rights that you have. You +must make sure that they, too, receive or can get the source code. And you +must show them these terms so they know their rights. + +We protect your rights with two steps: (1) copyright the software, and (2) +offer you this license which gives you legal permission to copy, distribute +and/or modify the software. + +Also, for each author's protection and ours, we want to make certain that +everyone understands that there is no warranty for this free software. If +the software is modified by someone else and passed on, we want its +recipients to know that what they have is not the original, so that any +problems introduced by others will not reflect on the original authors' +reputations. + +Finally, any free program is threatened constantly by software patents. We +wish to avoid the danger that redistributors of a free program will +individually obtain patent licenses, in effect making the program +proprietary. To prevent this, we have made it clear that any patent must be +licensed for everyone's free use or not licensed at all. + +The precise terms and conditions for copying, distribution and modification +follow. + +TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION + +0. This License applies to any program or other work which contains a notice + placed by the copyright holder saying it may be distributed under the + terms of this General Public License. The "Program", below, refers to any + such program or work, and a "work based on the Program" means either the + Program or any derivative work under copyright law: that is to say, a + work containing the Program or a portion of it, either verbatim or with + modifications and/or translated into another language. (Hereinafter, + translation is included without limitation in the term "modification".) + Each licensee is addressed as "you". + + Activities other than copying, distribution and modification are not + covered by this License; they are outside its scope. The act of running + the Program is not restricted, and the output from the Program is covered + only if its contents constitute a work based on the Program (independent + of having been made by running the Program). Whether that is true depends + on what the Program does. + +1. You may copy and distribute verbatim copies of the Program's source code + as you receive it, in any medium, provided that you conspicuously and + appropriately publish on each copy an appropriate copyright notice and + disclaimer of warranty; keep intact all the notices that refer to this + License and to the absence of any warranty; and give any other recipients + of the Program a copy of this License along with the Program. + + You may charge a fee for the physical act of transferring a copy, and you + may at your option offer warranty protection in exchange for a fee. + +2. You may modify your copy or copies of the Program or any portion of it, + thus forming a work based on the Program, and copy and distribute such + modifications or work under the terms of Section 1 above, provided that + you also meet all of these conditions: + + * a) You must cause the modified files to carry prominent notices stating + that you changed the files and the date of any change. + + * b) You must cause any work that you distribute or publish, that in + whole or in part contains or is derived from the Program or any part + thereof, to be licensed as a whole at no charge to all third parties + under the terms of this License. + + * c) If the modified program normally reads commands interactively when + run, you must cause it, when started running for such interactive + use in the most ordinary way, to print or display an announcement + including an appropriate copyright notice and a notice that there is + no warranty (or else, saying that you provide a warranty) and that + users may redistribute the program under these conditions, and + telling the user how to view a copy of this License. (Exception: if + the Program itself is interactive but does not normally print such + an announcement, your work based on the Program is not required to + print an announcement.) + + These requirements apply to the modified work as a whole. If identifiable + sections of that work are not derived from the Program, and can be + reasonably considered independent and separate works in themselves, then + this License, and its terms, do not apply to those sections when you + distribute them as separate works. But when you distribute the same + sections as part of a whole which is a work based on the Program, the + distribution of the whole must be on the terms of this License, whose + permissions for other licensees extend to the entire whole, and thus to + each and every part regardless of who wrote it. + + Thus, it is not the intent of this section to claim rights or contest + your rights to work written entirely by you; rather, the intent is to + exercise the right to control the distribution of derivative or + collective works based on the Program. + + In addition, mere aggregation of another work not based on the Program + with the Program (or with a work based on the Program) on a volume of a + storage or distribution medium does not bring the other work under the + scope of this License. + +3. You may copy and distribute the Program (or a work based on it, under + Section 2) in object code or executable form under the terms of Sections + 1 and 2 above provided that you also do one of the following: + + * a) Accompany it with the complete corresponding machine-readable source + code, which must be distributed under the terms of Sections 1 and 2 + above on a medium customarily used for software interchange; or, + + * b) Accompany it with a written offer, valid for at least three years, + to give any third party, for a charge no more than your cost of + physically performing source distribution, a complete machine- + readable copy of the corresponding source code, to be distributed + under the terms of Sections 1 and 2 above on a medium customarily + used for software interchange; or, + + * c) Accompany it with the information you received as to the offer to + distribute corresponding source code. (This alternative is allowed + only for noncommercial distribution and only if you received the + program in object code or executable form with such an offer, in + accord with Subsection b above.) + + The source code for a work means the preferred form of the work for + making modifications to it. For an executable work, complete source code + means all the source code for all modules it contains, plus any + associated interface definition files, plus the scripts used to control + compilation and installation of the executable. However, as a special + exception, the source code distributed need not include anything that is + normally distributed (in either source or binary form) with the major + components (compiler, kernel, and so on) of the operating system on which + the executable runs, unless that component itself accompanies the + executable. + + If distribution of executable or object code is made by offering access + to copy from a designated place, then offering equivalent access to copy + the source code from the same place counts as distribution of the source + code, even though third parties are not compelled to copy the source + along with the object code. + +4. You may not copy, modify, sublicense, or distribute the Program except as + expressly provided under this License. Any attempt otherwise to copy, + modify, sublicense or distribute the Program is void, and will + automatically terminate your rights under this License. However, parties + who have received copies, or rights, from you under this License will not + have their licenses terminated so long as such parties remain in full + compliance. + +5. You are not required to accept this License, since you have not signed + it. However, nothing else grants you permission to modify or distribute + the Program or its derivative works. These actions are prohibited by law + if you do not accept this License. Therefore, by modifying or + distributing the Program (or any work based on the Program), you + indicate your acceptance of this License to do so, and all its terms and + conditions for copying, distributing or modifying the Program or works + based on it. + +6. Each time you redistribute the Program (or any work based on the + Program), the recipient automatically receives a license from the + original licensor to copy, distribute or modify the Program subject to + these terms and conditions. You may not impose any further restrictions + on the recipients' exercise of the rights granted herein. You are not + responsible for enforcing compliance by third parties to this License. + +7. If, as a consequence of a court judgment or allegation of patent + infringement or for any other reason (not limited to patent issues), + conditions are imposed on you (whether by court order, agreement or + otherwise) that contradict the conditions of this License, they do not + excuse you from the conditions of this License. If you cannot distribute + so as to satisfy simultaneously your obligations under this License and + any other pertinent obligations, then as a consequence you may not + distribute the Program at all. For example, if a patent license would + not permit royalty-free redistribution of the Program by all those who + receive copies directly or indirectly through you, then the only way you + could satisfy both it and this License would be to refrain entirely from + distribution of the Program. + + If any portion of this section is held invalid or unenforceable under any + particular circumstance, the balance of the section is intended to apply + and the section as a whole is intended to apply in other circumstances. + + It is not the purpose of this section to induce you to infringe any + patents or other property right claims or to contest validity of any + such claims; this section has the sole purpose of protecting the + integrity of the free software distribution system, which is implemented + by public license practices. Many people have made generous contributions + to the wide range of software distributed through that system in + reliance on consistent application of that system; it is up to the + author/donor to decide if he or she is willing to distribute software + through any other system and a licensee cannot impose that choice. + + This section is intended to make thoroughly clear what is believed to be + a consequence of the rest of this License. + +8. If the distribution and/or use of the Program is restricted in certain + countries either by patents or by copyrighted interfaces, the original + copyright holder who places the Program under this License may add an + explicit geographical distribution limitation excluding those countries, + so that distribution is permitted only in or among countries not thus + excluded. In such case, this License incorporates the limitation as if + written in the body of this License. + +9. The Free Software Foundation may publish revised and/or new versions of + the General Public License from time to time. Such new versions will be + similar in spirit to the present version, but may differ in detail to + address new problems or concerns. + + Each version is given a distinguishing version number. If the Program + specifies a version number of this License which applies to it and "any + later version", you have the option of following the terms and + conditions either of that version or of any later version published by + the Free Software Foundation. If the Program does not specify a version + number of this License, you may choose any version ever published by the + Free Software Foundation. + +10. If you wish to incorporate parts of the Program into other free programs + whose distribution conditions are different, write to the author to ask + for permission. For software which is copyrighted by the Free Software + Foundation, write to the Free Software Foundation; we sometimes make + exceptions for this. Our decision will be guided by the two goals of + preserving the free status of all derivatives of our free software and + of promoting the sharing and reuse of software generally. + + NO WARRANTY + +11. BECAUSE THE PROGRAM IS LICENSED FREE OF CHARGE, THERE IS NO WARRANTY + FOR THE PROGRAM, TO THE EXTENT PERMITTED BY APPLICABLE LAW. EXCEPT WHEN + OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR OTHER PARTIES + PROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER + EXPRESSED OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED + WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. THE + ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE PROGRAM IS WITH + YOU. SHOULD THE PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF ALL + NECESSARY SERVICING, REPAIR OR CORRECTION. + +12. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING + WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY AND/OR + REDISTRIBUTE THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR + DAMAGES, INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL + DAMAGES ARISING OUT OF THE USE OR INABILITY TO USE THE PROGRAM + (INCLUDING BUT NOT LIMITED TO LOSS OF DATA OR DATA BEING RENDERED + INACCURATE OR LOSSES SUSTAINED BY YOU OR THIRD PARTIES OR A FAILURE OF + THE PROGRAM TO OPERATE WITH ANY OTHER PROGRAMS), EVEN IF SUCH HOLDER OR + OTHER PARTY HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES. + +END OF TERMS AND CONDITIONS + +How to Apply These Terms to Your New Programs + +If you develop a new program, and you want it to be of the greatest +possible use to the public, the best way to achieve this is to make it free +software which everyone can redistribute and change under these terms. + +To do so, attach the following notices to the program. It is safest to +attach them to the start of each source file to most effectively convey the +exclusion of warranty; and each file should have at least the "copyright" +line and a pointer to where the full notice is found. + +one line to give the program's name and an idea of what it does. +Copyright (C) yyyy name of author + +This program is free software; you can redistribute it and/or modify it +under the terms of the GNU General Public License as published by the Free +Software Foundation; either version 2 of the License, or (at your option) +any later version. + +This program is distributed in the hope that it will be useful, but WITHOUT +ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or +FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for +more details. + +You should have received a copy of the GNU General Public License along with +this program; if not, write to the Free Software Foundation, Inc., 59 +Temple Place - Suite 330, Boston, MA 02111-1307, USA. + +Also add information on how to contact you by electronic and paper mail. + +If the program is interactive, make it output a short notice like this when +it starts in an interactive mode: + +Gnomovision version 69, Copyright (C) year name of author Gnomovision comes +with ABSOLUTELY NO WARRANTY; for details type 'show w'. This is free +software, and you are welcome to redistribute it under certain conditions; +type 'show c' for details. + +The hypothetical commands 'show w' and 'show c' should show the appropriate +parts of the General Public License. Of course, the commands you use may be +called something other than 'show w' and 'show c'; they could even be +mouse-clicks or menu items--whatever suits your program. + +You should also get your employer (if you work as a programmer) or your +school, if any, to sign a "copyright disclaimer" for the program, if +necessary. Here is a sample; alter the names: + +Yoyodyne, Inc., hereby disclaims all copyright interest in the program +'Gnomovision' (which makes passes at compilers) written by James Hacker. + +signature of Ty Coon, 1 April 1989 +Ty Coon, President of Vice + +This General Public License does not permit incorporating your program into +proprietary programs. If your program is a subroutine library, you may +consider it more useful to permit linking proprietary applications with the +library. If this is what you want to do, use the GNU Library General Public +License instead of this License. --- linux-azure-5.8-5.8.0.orig/drivers/infiniband/hw/vmbus-rdma/vmbus-rdma-144.0/Makefile +++ linux-azure-5.8-5.8.0/drivers/infiniband/hw/vmbus-rdma/vmbus-rdma-144.0/Makefile @@ -0,0 +1,3 @@ +obj-$(CONFIG_HYPERV_INFINIBAND_ND) += hv_network_direct_144_0.o + +hv_network_direct_144_0-y := provider.o vmbus_rdma.o hvnd_addr.o --- linux-azure-5.8-5.8.0.orig/drivers/infiniband/hw/vmbus-rdma/vmbus-rdma-144.0/hvnd_addr.c +++ linux-azure-5.8-5.8.0/drivers/infiniband/hw/vmbus-rdma/vmbus-rdma-144.0/hvnd_addr.c @@ -0,0 +1,124 @@ +/* + * Copyright (c) 2014, Microsoft Corporation. + * + * Author: + * K. Y. Srinivasan + * + * This program is free software; you can redistribute it and/or modify it + * under the terms of the GNU General Public License version 2 as published + * by the Free Software Foundation. + * + * This program is distributed in the hope that it will be useful, but + * WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE, GOOD TITLE or + * NON INFRINGEMENT. See the GNU General Public License for more + * details. + * + * Bug fixes/enhancements: Long Li + */ + +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include + +#include "vmbus_rdma.h" + + +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include + + +int hvnd_get_outgoing_rdma_addr(struct hvnd_dev *nd_dev, + struct hvnd_ucontext *uctx, + union nd_sockaddr_inet *og_addr) +{ + int ret; + /* + * Query the host and select the first address. + */ + struct pkt_query_addr_list pkt; + + // KYS try to avoid having to zero everything + memset(&pkt, 0, sizeof(pkt)); + + hvnd_init_hdr(&pkt.hdr, + (sizeof(pkt) - + sizeof(struct ndv_packet_hdr_control_1)), + uctx->create_pkt.handle.local, + uctx->create_pkt.handle.remote, + IOCTL_ND_ADAPTER_QUERY_ADDRESS_LIST, 0, 0, 0); + + pkt.ioctl.in.version = ND_VERSION_1; + pkt.ioctl.in.reserved = 0; + pkt.ioctl.in.handle = uctx->adaptor_hdl; + + ret = hvnd_send_ioctl_pkt(nd_dev, &pkt.hdr, + sizeof(pkt), (u64)&pkt); + + if (ret) + return ret; + + /* + * Copy the address out. + */ + + memcpy(og_addr, &pkt.ioctl.out[0], sizeof(*og_addr)); + return 0; + +} + +struct resolve_cb_context { + struct rdma_dev_addr *addr; + struct completion comp; +}; + +static void resolve_cb(int status, struct sockaddr *src_addr, + struct rdma_dev_addr *addr, void *context) +{ + memcpy(((struct resolve_cb_context *)context)->addr, addr, sizeof(struct + rdma_dev_addr)); + complete(&((struct resolve_cb_context *)context)->comp); +} + +int hvnd_get_neigh_mac_addr(struct sockaddr *local, struct sockaddr *remote, + char *mac_addr) +{ + struct rdma_dev_addr dev_addr; + struct resolve_cb_context ctx; + int ret; + + memset(&dev_addr, 0, sizeof(dev_addr)); + dev_addr.net = &init_net; + ctx.addr = &dev_addr; + init_completion(&ctx.comp); + + ret = rdma_resolve_ip(local, remote, &dev_addr, 1000, + resolve_cb, false, &ctx); + + if (ret) { + hvnd_error("rdma_resolve_ip failed ret=%d\n", ret); + return ret; + } + + wait_for_completion(&ctx.comp); + memcpy(mac_addr, dev_addr.dst_dev_addr, ETH_ALEN); + return ret; +} --- linux-azure-5.8-5.8.0.orig/drivers/infiniband/hw/vmbus-rdma/vmbus-rdma-144.0/mx_abi.h +++ linux-azure-5.8-5.8.0/drivers/infiniband/hw/vmbus-rdma/vmbus-rdma-144.0/mx_abi.h @@ -0,0 +1,232 @@ +/* + * Copyright (c) 2005 Topspin Communications. All rights reserved. + * Copyright (c) 2005 Cisco Systems. All rights reserved. + * Copyright (c) 2005 PathScale, Inc. All rights reserved. + * + * This software is available to you under a choice of one of two + * licenses. You may choose to be licensed under the terms of the GNU + * General Public License (GPL) Version 2, available from the file + * COPYING in the main directory of this source tree, or the + * OpenIB.org BSD license below: + * + * Redistribution and use in source and binary forms, with or + * without modification, are permitted provided that the following + * conditions are met: + * + * - Redistributions of source code must retain the above + * copyright notice, this list of conditions and the following + * disclaimer. + * + * - Redistributions in binary form must reproduce the above + * copyright notice, this list of conditions and the following + * disclaimer in the documentation and/or other materials + * provided with the distribution. + * + * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, + * EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF + * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND + * NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS + * BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN + * ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN + * CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE + * SOFTWARE. + * + * KYS: made some modifications. + */ + +#ifndef MX_ABI_H +#define MX_ABI_H + + + +/* + * Make sure that all structs defined in this file remain laid out so + * that they pack the same way on 32-bit and 64-bit architectures (to + * avoid incompatibility between 32-bit userspace and 64-bit kernels). + * Specifically: + * - Do not use pointer types -- pass pointers in UINT64 instead. + * - Make sure that any structure larger than 4 bytes is padded to a + * multiple of 8 bytes. Otherwise the structure size will be + * different between 32-bit and 64-bit architectures. + */ + +enum ibv_get_context_mappings { + IBV_GET_CONTEXT_UAR, + IBV_GET_CONTEXT_BF, + IBV_GET_CONTEXT_MAPPING_MAX +}; + +struct ibv_get_context_req { + + union nd_mapping mappings[IBV_GET_CONTEXT_MAPPING_MAX]; +}; + +struct ibv_get_context_resp { + + // mmap UAR and BF + struct nd_mapping_result mapping_results[IBV_GET_CONTEXT_MAPPING_MAX]; + + // mmap Blue Flame + int bf_buf_size; + int bf_offset; + + // mlx4_query_device result + int max_qp_wr; + int max_sge; + int max_cqe; + + // general parameters + u32 cqe_size; + u32 vend_id; + u16 dev_id; + u16 bf_reg_size; + u16 bf_regs_per_page; + u16 reserved1; + + // ibv_cmd_get_context result + u32 qp_tab_size; + + u32 reserved2; +}; + +struct ibv_alloc_pd_resp { + u64 pd_handle; + u32 pdn; + u32 reserved; +}; + +struct ibv_reg_mr { + u64 start; + u64 length; + u64 hca_va; + u32 access_flags; + u32 pdn; + u64 pd_handle; +}; + +struct ibv_reg_mr_resp { + u64 mr_handle; + u32 lkey; + u32 rkey; +}; + + +enum mlx4_ib_create_cq_mapping { + MLX4_IB_CREATE_CQ_BUF, + MLX4_IB_CREATE_CQ_DB, + MLX4_IB_CREATE_CQ_ARM_SN, // Windows specific + MLX4_IB_CREATE_CQ_MAPPING_MAX +}; + +#define MLX4_CQ_FLAGS_ARM_IN_KERNEL 1 + +struct ibv_create_cq { + union nd_mapping mappings[MLX4_IB_CREATE_CQ_MAPPING_MAX]; + u32 flags; +}; + +struct ibv_create_cq_resp { + struct nd_mapping_result mapping_results[MLX4_IB_CREATE_CQ_MAPPING_MAX]; + u32 cqn; + u32 cqe; +}; + +enum mlx4_ib_create_srq_mappings { + MLX4_IB_CREATE_SRQ_BUF, + MLX4_IB_CREATE_SRQ_DB, + MLX4_IB_CREATE_SRQ_MAPPINGS_MAX +}; + +struct ibv_create_srq { + union nd_mapping mappings[MLX4_IB_CREATE_SRQ_MAPPINGS_MAX]; +}; + +struct ibv_create_srq_resp { + struct nd_mapping_result mapping_results[MLX4_IB_CREATE_SRQ_MAPPINGS_MAX]; +}; + +enum mlx4_ib_create_qp_mappings { + MLX4_IB_CREATE_QP_BUF, + MLX4_IB_CREATE_QP_DB, + MLX4_IB_CREATE_QP_MAPPINGS_MAX +}; + +struct ibv_create_qp { + union nd_mapping mappings[MLX4_IB_CREATE_QP_MAPPINGS_MAX]; + u8 log_sq_bb_count; + u8 log_sq_stride; + u8 sq_no_prefetch; + u8 reserved; +}; + +struct ibv_create_qp_resp { + struct nd_mapping_result mapping_results[MLX4_IB_CREATE_QP_MAPPINGS_MAX]; + // struct ib_uverbs_create_qp_resp + u64 qp_handle; + u32 qpn; + u32 max_send_wr; + u32 max_recv_wr; + u32 max_send_sge; + u32 max_recv_sge; + u32 max_inline_data; +}; + +enum ibv_qp_attr_mask { + IBV_QP_STATE = 1 << 0, + IBV_QP_CUR_STATE = 1 << 1, + IBV_QP_EN_SQD_ASYNC_NOTIFY = 1 << 2, + IBV_QP_ACCESS_FLAGS = 1 << 3, + IBV_QP_PKEY_INDEX = 1 << 4, + IBV_QP_PORT = 1 << 5, + IBV_QP_QKEY = 1 << 6, + IBV_QP_AV = 1 << 7, + IBV_QP_PATH_MTU = 1 << 8, + IBV_QP_TIMEOUT = 1 << 9, + IBV_QP_RETRY_CNT = 1 << 10, + IBV_QP_RNR_RETRY = 1 << 11, + IBV_QP_RQ_PSN = 1 << 12, + IBV_QP_MAX_QP_RD_ATOMIC = 1 << 13, + IBV_QP_ALT_PATH = 1 << 14, + IBV_QP_MIN_RNR_TIMER = 1 << 15, + IBV_QP_SQ_PSN = 1 << 16, + IBV_QP_MAX_DEST_RD_ATOMIC = 1 << 17, + IBV_QP_PATH_MIG_STATE = 1 << 18, + IBV_QP_CAP = 1 << 19, + IBV_QP_DEST_QPN = 1 << 20 +}; + +enum ibv_qp_state { + IBV_QPS_RESET, + IBV_QPS_INIT, + IBV_QPS_RTR, + IBV_QPS_RTS, + IBV_QPS_SQD, + IBV_QPS_SQE, + IBV_QPS_ERR +}; + + +struct ibv_modify_qp_resp { + enum ibv_qp_attr_mask attr_mask; + u8 qp_state; + u8 reserved[3]; +}; + +struct ibv_create_ah_resp { + u64 start; +}; + +/* + * Some mlx4 specific kernel definitions. Perhaps could be in + * separate file. + */ + +struct mlx4_ib_user_db_page { + struct list_head list; + struct ib_umem *umem; + unsigned long user_virt; + int refcnt; +}; + + +#endif /* MX_ABI_H */ --- linux-azure-5.8-5.8.0.orig/drivers/infiniband/hw/vmbus-rdma/vmbus-rdma-144.0/provider.c +++ linux-azure-5.8-5.8.0/drivers/infiniband/hw/vmbus-rdma/vmbus-rdma-144.0/provider.c @@ -0,0 +1,2969 @@ +/* + * Copyright (c) 2014, Microsoft Corporation. + * + * Author: + * K. Y. Srinivasan + * + * This program is free software; you can redistribute it and/or modify it + * under the terms of the GNU General Public License version 2 as published + * by the Free Software Foundation. + * + * This program is distributed in the hope that it will be useful, but + * WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE, GOOD TITLE or + * NON INFRINGEMENT. See the GNU General Public License for more + * details. + * + * Bug fixes/enhancements: Long Li + */ + +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include "vmbus_rdma.h" + +/* + * We are emulating mlx4. XXXKYS: May have to FIX. + */ +#include "./user.h" + +static struct hvnd_dev *g_nd_dev; // the one and only one + +int hvnd_log_level = HVND_ERROR; +module_param(hvnd_log_level, int, 0644); +MODULE_PARM_DESC(hvnd_log_level, + "Logging level, 0 - Error (default), 1 - Warning, 2 - Info, 3 - Debug."); + +static int disable_cq_notify = 1; +//static int disable_cq_notify = 0; +module_param(disable_cq_notify, int, 0644); +MODULE_PARM_DESC(disable_cq_notify, + "Disable CQ notification, 0 - Enable, 1 - Disable (default)."); + +enum { + MLX4_USER_DEV_CAP_64B_CQE = 1L << 0 +}; + +#define HVND_NODE_DESC "vmbus-RDMA" + +#undef MLX4_IB_UVERBS_ABI_VERSION +#define MLX4_IB_UVERBS_ABI_VERSION 4 + +struct mlx4_wqe_data_seg { + __be32 byte_count; + __be32 lkey; + __be64 addr; +}; + +/* return value: + * true: ep is running + * false: ep is stopped + */ +bool ep_add_work_pending(struct hvnd_ep_obj *ep_object) +{ + bool ret = true; + + atomic_inc(&ep_object->nr_requests_pending); + if (ep_object->stopping) { + if (atomic_dec_and_test(&ep_object->nr_requests_pending)) + wake_up(&ep_object->wait_pending); + ret = false; + } + return ret; +} + +void ep_del_work_pending(struct hvnd_ep_obj *ep_object) +{ + if (atomic_dec_and_test(&ep_object->nr_requests_pending)) + wake_up(&ep_object->wait_pending); + + if (atomic_read(&ep_object->nr_requests_pending) < 0) { + hvnd_error("ep_object->nr_requests_pending=%d type=%d cm_state=%d\n", + atomic_read(&ep_object->nr_requests_pending), + ep_object->type, ep_object->cm_state); + dump_stack(); + } +} + +void ep_stop(struct hvnd_ep_obj *ep_object) +{ + if (!ep_object->stopping) { + ep_object->stopping = true; + hvnd_cancel_io(ep_object); + } + + if (atomic_read(&ep_object->nr_requests_pending) < 0) { + hvnd_error("IO canceled, ep_object->nr_requests_pending=%d type=%d cm_state=%d\n", + atomic_read(&ep_object->nr_requests_pending), + ep_object->type, ep_object->cm_state); + dump_stack(); + } + + wait_event(ep_object->wait_pending, + !atomic_read(&ep_object->nr_requests_pending)); +} + +static int vmbus_dma_map_sg(struct device *dev, struct scatterlist *sgl, + int nents, enum dma_data_direction direction, + unsigned long attrs) +{ + struct scatterlist *sg; + u64 addr; + int i; + int ret = nents; + + BUG_ON(!valid_dma_direction(direction)); + + for_each_sg(sgl, sg, nents, i) { + addr = (u64) page_address(sg_page(sg)); + /* TODO: handle highmem pages */ + if (!addr) { + ret = 0; + break; + } + sg->dma_address = addr + sg->offset; + sg->dma_length = sg->length; + } + return ret; +} + +static void vmbus_dma_unmap_sg(struct device *dev, + struct scatterlist *sg, int nents, + enum dma_data_direction direction, unsigned long attrs) +{ + BUG_ON(!valid_dma_direction(direction)); +} + + +const struct dma_map_ops vmbus_dma_ops = { + .map_sg = vmbus_dma_map_sg, + .unmap_sg = vmbus_dma_unmap_sg, +}; + +static int hvnd_get_incoming_connections(struct hvnd_ep_obj *listener, + struct hvnd_dev *nd_dev, + struct hvnd_ucontext *uctx); + +static struct hvnd_ep_obj *hvnd_setup_ep(struct iw_cm_id *cm_id, int ep_type, + struct hvnd_dev *nd_dev, + struct hvnd_ucontext *uctx); + +static void hvnd_deinit_ep(struct hvnd_ep_obj *ep) +{ + put_irp_handle(ep->nd_dev, ep->local_irp); +} + +static void hvnd_destroy_ep(struct hvnd_ep_obj *ep) +{ + hvnd_debug("canceling work for ep %p\n", ep); + cancel_work_sync(&ep->wrk.work); + hvnd_deinit_ep(ep); + kfree(ep); +} + + +#define UC(b) (((int)b)&0xff) +char *debug_inet_ntoa(struct in_addr in, char *b) +{ + register char *p; + + p = (char *)∈ + (void)snprintf(b, 20, + "%d.%d.%d.%d", UC(p[0]), UC(p[1]), UC(p[2]), UC(p[3])); + return b; +} + +void hvnd_process_events(struct work_struct *work); + +static int hvnd_init_ep(struct hvnd_ep_obj *ep_object, + struct iw_cm_id *cm_id, int ep_type, + struct hvnd_dev *nd_dev, + struct hvnd_ucontext *uctx) +{ + int ret; + + ep_object->type = ep_type; + ep_object->cm_id = cm_id; + ep_object->nd_dev = nd_dev; + ep_object->uctx = uctx; + + ep_object->parent = NULL; + + ep_object->wrk.callback_arg = ep_object; + INIT_WORK(&ep_object->wrk.work, hvnd_process_events); + INIT_LIST_HEAD(&ep_object->incoming_pkt_list); + spin_lock_init(&ep_object->incoming_pkt_list_lock); + + ep_object->stopping = false; + atomic_set(&ep_object->nr_requests_pending, 0); + init_waitqueue_head(&ep_object->wait_pending); + + ret = get_irp_handle(nd_dev, &ep_object->local_irp, (void *)ep_object); + + if (ret) { + hvnd_error("get_irp_handle() failed: err: %d\n", ret); + return ret; + } + return 0; + +} + +static int set_rq_size(struct hvnd_dev *dev, struct ib_qp_cap *cap, + struct hvnd_qp *qp) +{ + + /* HW requires >= 1 RQ entry with >= 1 gather entry */ + if (!cap->max_recv_wr || !cap->max_recv_sge) + return -EINVAL; + + qp->rq_wqe_cnt = roundup_pow_of_two(max(1U, cap->max_recv_wr)); + qp->rq_max_gs = roundup_pow_of_two(max(1U, cap->max_recv_sge)); + qp->rq_wqe_shift = ilog2( + qp->rq_max_gs * sizeof(struct mlx4_wqe_data_seg)); + + + return 0; +} + +static int set_user_sq_size(struct hvnd_dev *dev, + struct hvnd_qp *qp, + struct mlx4_ib_create_qp *ucmd) +{ + qp->sq_wqe_cnt = 1 << ucmd->log_sq_bb_count; + qp->sq_wqe_shift = ucmd->log_sq_stride; + + qp->buf_size = (qp->rq_wqe_cnt << qp->rq_wqe_shift) + + (qp->sq_wqe_cnt << qp->sq_wqe_shift); + + return 0; +} + +static int hvnd_db_map_user(struct hvnd_ucontext *uctx, unsigned long virt, + struct ib_umem **db_umem) +{ + struct mlx4_ib_user_db_page *page; + int err = 0; + + mutex_lock(&uctx->db_page_mutex); + + list_for_each_entry(page, &uctx->db_page_list, list) + if (page->user_virt == (virt & PAGE_MASK)) + goto found; + + page = kmalloc(sizeof(*page), GFP_KERNEL); + if (!page) { + err = -ENOMEM; + goto out; + } + + page->user_virt = (virt & PAGE_MASK); + page->refcnt = 0; + page->umem = ib_umem_get(&uctx->ibucontext, virt & PAGE_MASK, + PAGE_SIZE, 0, 0); + if (IS_ERR(page->umem)) { + hvnd_error("ib_umem_get failure\n"); + err = PTR_ERR(page->umem); + kfree(page); + goto out; + } + + list_add(&page->list, &uctx->db_page_list); + +found: + ++page->refcnt; +out: + mutex_unlock(&uctx->db_page_mutex); + if (!err) + *db_umem = page->umem; + + return err; +} + +static void hvnd_db_unmap_user(struct hvnd_ucontext *uctx, u64 db_addr) +{ + struct mlx4_ib_user_db_page *page; + + mutex_lock(&uctx->db_page_mutex); + list_for_each_entry(page, &uctx->db_page_list, list) + if (page->user_virt == (db_addr & PAGE_MASK)) + goto found; + +found: + if (!--page->refcnt) { + list_del(&page->list); + ib_umem_release(page->umem); + kfree(page); + } + + mutex_unlock(&uctx->db_page_mutex); +} + + +static void debug_check(const char *func, int line) +{ + hvnd_debug("func is: %s; line is %d\n", func, line); + + if (in_interrupt()) { + hvnd_error("In interrupt func is: %s; line is %d\n", + func, line); + return; + } +} + +static struct ib_ah *hvnd_ah_create(struct ib_pd *pd, + struct rdma_ah_attr *ah_attr, u32 flags, + struct ib_udata *udata) +{ + debug_check(__func__, __LINE__); + return ERR_PTR(-ENOSYS); +} + +static int hvnd_ah_destroy(struct ib_ah *ah, u32 flags) +{ + debug_check(__func__, __LINE__); + return -ENOSYS; +} + +static int hvnd_multicast_attach(struct ib_qp *ibqp, union ib_gid *gid, u16 lid) +{ + debug_check(__func__, __LINE__); + return -ENOSYS; +} + +static int hvnd_multicast_detach(struct ib_qp *ibqp, union ib_gid *gid, u16 lid) +{ + debug_check(__func__, __LINE__); + return -ENOSYS; +} + +static int hvnd_process_mad(struct ib_device *ibdev, + int mad_flags, + u8 port_num, + const struct ib_wc *in_wc, + const struct ib_grh *in_grh, + const struct ib_mad_hdr *in_mad, + size_t in_mad_size, + struct ib_mad_hdr *out_mad, + size_t *out_mad_size, + u16 *out_mad_pkey_index) +{ + debug_check(__func__, __LINE__); + return -ENOSYS; +} + +void hvnd_acquire_uctx_ref(struct hvnd_ucontext *uctx) +{ + atomic_inc(&uctx->refcnt); +} + +void hvnd_drop_uctx_ref(struct hvnd_dev *nd_dev, + struct hvnd_ucontext *uctx) +{ + if (atomic_dec_and_test(&uctx->refcnt)) { + hvnd_debug("uctx ref cnt dropped it is %d\n", + atomic_read(&uctx->refcnt)); + hvnd_debug("About to close adaptor\n"); + hvnd_close_adaptor(nd_dev, uctx); + } else + hvnd_debug("uctx ref cnt dropped it is %d\n", + atomic_read(&uctx->refcnt)); +} + + +static int hvnd_dealloc_ucontext(struct ib_ucontext *context) +{ + struct hvnd_dev *nd_dev; + struct hvnd_ucontext *uctx; + + uctx = to_nd_context(context); + nd_dev = to_nd_dev(context->device); + + hvnd_debug("calling %s\n", __func__); + + hvnd_drop_uctx_ref(nd_dev, uctx); + + return 0; +} + +static struct ib_ucontext *hvnd_alloc_ucontext(struct ib_device *ibdev, + struct ib_udata *udata) +{ + struct hvnd_dev *nd_dev = to_nd_dev(ibdev); + struct hvnd_ucontext *uctx; + struct mlx4_ib_alloc_ucontext_resp resp; + struct ibv_get_context_resp *ctx_output; + int ret; + + if (!nd_dev->ib_active) { + hvnd_error("ib device is not active, try again\n"); + return ERR_PTR(-EAGAIN); + } + + uctx = get_uctx(nd_dev, current_pid()); + if (uctx) { + // it is already opened, just increase its reference count + hvnd_acquire_uctx_ref(uctx); + } else { + + /* + * The Windows host expects the following to be done: + * 1. Successfully send struct ndv_pkt_hdr_create_1 + * 2. INIT PROVIDER + * 3. Open Adapter + * Before we can complete this call. + */ + + uctx = kzalloc(sizeof(struct hvnd_ucontext), GFP_KERNEL); + if (!uctx) + return ERR_PTR(-ENOMEM); + + atomic_set(&uctx->refcnt, 1); + INIT_LIST_HEAD(&uctx->db_page_list); + mutex_init(&uctx->db_page_mutex); + + /* + * Stash away the context with the calling PID. + */ + ret = insert_handle(nd_dev, &nd_dev->uctxidr, uctx, + current_pid()); + if (ret) { + hvnd_error("Uctx ID insertion failed; ret is %d\n", + ret); + goto err1; + } + + hvnd_debug("Opening adaptor pid is %d\n", current_pid()); + + ret = hvnd_open_adaptor(nd_dev, uctx); + if (ret) { + hvnd_error("hvnd_open_adaptor failed ret=%d\n", ret); + goto err1; + } + + } + + /* + * Copy the response out. + */ + ctx_output = &uctx->o_adap_pkt.mappings.ctx_output; + resp.dev_caps = MLX4_USER_DEV_CAP_64B_CQE; + resp.qp_tab_size = ctx_output->qp_tab_size; + resp.bf_reg_size = ctx_output->bf_reg_size; + resp.bf_regs_per_page = ctx_output->bf_regs_per_page; + resp.cqe_size = ctx_output->cqe_size; + + ret = ib_copy_to_udata(udata, &resp, sizeof(resp)); + if (ret) { + hvnd_error("ib_copy_to_udata failed ret=%d\n", ret); + goto err1; + } + + return &uctx->ibucontext; + +err1: + kfree(uctx); + return ERR_PTR(ret); +} + +static int hvnd_mmap(struct ib_ucontext *context, struct vm_area_struct *vma) +{ + struct hvnd_ucontext *uctx = to_nd_context(context); + + if (vma->vm_end - vma->vm_start != PAGE_SIZE) { + hvnd_error("vma not a page size, actual size=%lu\n", + vma->vm_end - vma->vm_start); + return -EINVAL; + } + + if (vma->vm_pgoff == 0) { + vma->vm_page_prot = pgprot_noncached(vma->vm_page_prot); + + if (io_remap_pfn_range(vma, vma->vm_start, + (uctx->uar_base >> PAGE_SHIFT), + PAGE_SIZE, vma->vm_page_prot)) { + hvnd_error("io_remap_pfn_range failure\n"); + return -EAGAIN; + } + } else if (vma->vm_pgoff == 1 && uctx->bf_buf_size != 0) { + vma->vm_page_prot = pgprot_writecombine(vma->vm_page_prot); + + if (io_remap_pfn_range(vma, vma->vm_start, + (uctx->uar_base >> PAGE_SHIFT) + 1, + PAGE_SIZE, vma->vm_page_prot)) { + hvnd_error("io_remap_pfn_range failure\n"); + return -EAGAIN; + } + } else { + hvnd_error("check code\n"); + return -EINVAL; + } + + return 0; +} + +static int hvnd_deallocate_pd(struct ib_pd *pd) +{ + + struct hvnd_ucontext *uctx; + struct hvnd_dev *nd_dev; + struct hvnd_ib_pd *hvnd_pd; + struct ib_ucontext *ibuctx = pd->uobject->context; + + hvnd_pd = to_nd_pd(pd); + nd_dev = to_nd_dev(pd->device); + uctx = to_nd_context(ibuctx); + + hvnd_free_handle(nd_dev, uctx, hvnd_pd->handle, + IOCTL_ND_PD_FREE); + + hvnd_drop_uctx_ref(nd_dev, uctx); + return 0; +} + +static struct ib_pd *hvnd_allocate_pd(struct ib_device *ibdev, + struct ib_ucontext *context, + struct ib_udata *udata) +{ + struct hvnd_ucontext *uctx; + struct hvnd_dev *nd_dev; + int ret; + struct hvnd_ib_pd *hvnd_pd; + + if (!context) { + hvnd_error("kernel mode context not supported\n"); + return ERR_PTR(-EINVAL); + } + + hvnd_pd = kzalloc(sizeof(struct hvnd_ib_pd), GFP_KERNEL); + + if (!hvnd_pd) + return ERR_PTR(-ENOMEM); + + uctx = to_nd_context(context); + nd_dev = to_nd_dev(ibdev); + + ret = hvnd_create_pd(uctx, nd_dev, hvnd_pd); + if (ret) { + hvnd_error("hvnd_create_pd failure ret=%d\n", ret); + goto error_cr_pd; + } + + if (context) { + if (ib_copy_to_udata(udata, &hvnd_pd->pdn, sizeof(__u32))) { + hvnd_error("ib_copy_to_udata failure\n"); + ret = -EFAULT; + goto error_fault; + } + } + + hvnd_acquire_uctx_ref(uctx); + return &hvnd_pd->ibpd; + +error_fault: + hvnd_free_handle(nd_dev, uctx, hvnd_pd->handle, + IOCTL_ND_PD_FREE); + +error_cr_pd: + kfree(hvnd_pd); + return ERR_PTR(ret); +} + +static int hvnd_query_pkey(struct ib_device *ibdev, u8 port, u16 index, + u16 *pkey) +{ + debug_check(__func__, __LINE__); + *pkey = 0; + return 0; +} + +static int hvnd_query_gid(struct ib_device *ibdev, u8 port, int index, + union ib_gid *gid) +{ + int ret; + struct hvnd_dev *nd_dev = to_nd_dev(ibdev); + + debug_check(__func__, __LINE__); + + if (!nd_dev->bind_complete) { + ret = wait_for_completion_timeout(&nd_dev->addr_set, 60*HZ); + if (!ret && !nd_dev->bind_complete) + return -ETIMEDOUT; + } + + memset(&(gid->raw[0]), 0, sizeof(gid->raw)); + memcpy(&(gid->raw[0]), nd_dev->mac_addr, 6); + return 0; +} + +static int hvnd_query_device(struct ib_device *ibdev, + struct ib_device_attr *props, + struct ib_udata *udata) +{ + struct hvnd_dev *nd_dev = to_nd_dev(ibdev); + struct adapter_info_v2 *adap_info; + + if (!nd_dev->query_pkt_set) { + hvnd_error("query packet not received yet\n"); + return 0; + } + + adap_info = &nd_dev->query_pkt.ioctl.ad_info; + + memset(props, 0, sizeof(*props)); + + /* + * Copy the relevant properties out. + */ + props->fw_ver = 0; + props->device_cap_flags = 0; + //props->device_cap_flags |= IB_DEVICE_BAD_PKEY_CNTR; + //props->device_cap_flags |= IB_DEVICE_BAD_QKEY_CNTR; + //props->device_cap_flags |= IB_DEVICE_XRC; + + props->vendor_id = 0x15b3; + props->vendor_part_id = adap_info->device_id; + + props->max_mr_size = ~0ull; + props->page_size_cap = PAGE_SIZE; + props->max_qp = 16384; + props->max_qp_wr = min(adap_info->max_recv_q_depth, + adap_info->max_initiator_q_depth); + + props->max_send_sge = min(adap_info->max_initiator_sge, + adap_info->max_recv_sge); + props->max_recv_sge = props->max_send_sge; + props->max_cq = 0x1FFFF; + props->max_cqe = adap_info->max_completion_q_depth; + props->max_mr = 16384; + props->max_pd = 16384; + + props->max_qp_rd_atom = adap_info->max_inbound_read_limit; + props->max_qp_init_rd_atom = adap_info->max_outbound_read_limit; + props->max_res_rd_atom = props->max_qp_rd_atom * props->max_qp; + props->max_srq = 16384; + props->max_srq_wr = adap_info->max_recv_q_depth; + props->max_srq_sge = adap_info->max_recv_sge; + + return 0; +} + +static int hvnd_query_port(struct ib_device *ibdev, u8 port, + struct ib_port_attr *props) +{ + memset(props, 0, sizeof(struct ib_port_attr)); + + props->max_mtu = IB_MTU_4096; + props->active_mtu = IB_MTU_4096; + + /* + * KYS: TBD need to base this on netdev. + */ + props->state = IB_PORT_ACTIVE; + + props->port_cap_flags = IB_PORT_CM_SUP; + + props->gid_tbl_len = 1; + props->pkey_tbl_len = 1; + props->active_width = 1; + props->active_speed = IB_SPEED_DDR; //KYS: check + props->max_msg_sz = -1; + + return 0; +} + +static enum rdma_link_layer +hvnd_get_link_layer(struct ib_device *device, u8 port) +{ + return IB_LINK_LAYER_ETHERNET; +} + +static ssize_t hvnd_show_rev(struct device *dev, struct device_attribute *attr, + char *buf) +{ + return 0; +} + +static ssize_t hvnd_show_fw_ver(struct device *dev, + struct device_attribute *attr, char *buf) +{ + return 0; +} + +static ssize_t hvnd_show_hca(struct device *dev, struct device_attribute *attr, + char *buf) +{ + return 0; +} + +static ssize_t hvnd_show_board(struct device *dev, + struct device_attribute *attr, char *buf) +{ + return 0; +} + +static int hvnd_get_port_immutable(struct ib_device *ibdev, u8 port_num, + struct ib_port_immutable *immutable) +{ + struct ib_port_attr attr; + int err; + + err = hvnd_query_port(ibdev, port_num, &attr); + if (err) + return err; + + immutable->pkey_tbl_len = attr.pkey_tbl_len; + immutable->gid_tbl_len = attr.gid_tbl_len; + immutable->core_cap_flags = RDMA_CORE_PORT_IWARP; + + return 0; +} + +static struct ib_qp *hvnd_ib_create_qp(struct ib_pd *pd, + struct ib_qp_init_attr *attrs, + struct ib_udata *udata) +{ + struct hvnd_ucontext *uctx; + struct hvnd_dev *nd_dev; + struct mlx4_ib_create_qp ucmd; + struct hvnd_qp *qp; + int ret = 0; + struct hvnd_ib_pd *hvnd_pd = to_nd_pd(pd); + struct hvnd_cq *send_cq = to_nd_cq(attrs->send_cq); + struct hvnd_cq *recv_cq = to_nd_cq(attrs->recv_cq); + + uctx = get_uctx_from_pd(pd); + nd_dev = to_nd_dev(pd->device); + + if (attrs->qp_type != IB_QPT_RC) { + hvnd_error("attrs->qp_type=%d not IB_QPT_RC\n", attrs->qp_type); + return ERR_PTR(-EINVAL); + } + + qp = kzalloc(sizeof(*qp), GFP_KERNEL); + if (!qp) { + ret = -ENOMEM; + goto err_done; + } + + qp->uctx = uctx; + + if (ib_copy_from_udata(&ucmd, udata, sizeof(ucmd))) { + hvnd_error("ib_copy_from_udata failed\n"); + ret = -EFAULT; + goto err_ucpy; + } + + qp->qp_buf = (void *)ucmd.buf_addr; + qp->db_addr = (void *)ucmd.db_addr; + qp->log_sq_bb_count = ucmd.log_sq_bb_count; + qp->log_sq_stride = ucmd.log_sq_stride; + qp->sq_no_prefetch = ucmd.sq_no_prefetch; + qp->port = attrs->port_num; + + init_waitqueue_head(&qp->wait); + atomic_set(&qp->refcnt, 1); + + qp->recv_cq = recv_cq; + qp->send_cq = send_cq; + qp->nd_dev = nd_dev; + + qp->receive_cq_handle = recv_cq->cq_handle; + qp->initiator_cq_handle = send_cq->cq_handle; + qp->pd_handle = hvnd_pd->handle; + qp->cq_notify = false; + + qp->ibqp.qp_num = attrs->qp_type == IB_QPT_SMI ? 0 : 1; + + qp->max_inline_data = attrs->cap.max_inline_data; + + qp->initiator_q_depth = attrs->cap.max_send_wr; + qp->initiator_request_sge = attrs->cap.max_send_sge; + + + qp->receive_q_depth = attrs->cap.max_recv_wr; + qp->receive_request_sge = attrs->cap.max_recv_sge; + + set_rq_size(nd_dev, &attrs->cap, qp); + + set_user_sq_size(nd_dev, qp, &ucmd); + + qp->umem = ib_umem_get(&uctx->ibucontext, ucmd.buf_addr, + qp->buf_size, 0, 0); + if (IS_ERR(qp->umem)) { + ret = PTR_ERR(qp->umem); + hvnd_error("ib_umem_get failed ret=%d\n", ret); + goto err_ucpy; + } + + ret = hvnd_db_map_user(uctx, ucmd.db_addr, &qp->db_umem); + + if (ret) { + hvnd_error("hvnd_db_map_user failed ret=%d\n", ret); + goto err_db_map; + } + + ret = hvnd_create_qp(nd_dev, uctx, qp); + + if (ret) { + hvnd_error("hvnd_create_qp failed ret=%d\n", ret); + goto err_qp; + } + + hvnd_acquire_uctx_ref(uctx); + + qp->ibqp.qp_num = qp->qpn; + qp->ibqp.qp_type = IB_QPT_RC; + + + return &qp->ibqp; + +err_qp: + hvnd_db_unmap_user(uctx, ucmd.db_addr); + +err_db_map: + ib_umem_release(qp->umem); + +err_ucpy: + kfree(qp); +err_done: + return ERR_PTR(ret); +} + +static int hvnd_ib_modify_qp(struct ib_qp *ibqp, struct ib_qp_attr *attr, + int attr_mask, struct ib_udata *udata) +{ + struct hvnd_qp *qp = to_nd_qp(ibqp); + struct hvnd_dev *nd_dev = to_nd_dev(ibqp->device); + enum ib_qp_state cur_state, new_state; + int ret = 0; + + if (attr != NULL) { + cur_state = (attr_mask & IB_QP_CUR_STATE) + ? attr->cur_qp_state : qp->qp_state; + new_state = (attr_mask & IB_QP_STATE) + ? attr->qp_state : cur_state; + + hvnd_debug("qp->qp_state is %d new state is %d\n", + qp->qp_state, new_state); + hvnd_debug("current qp state is %d\n", cur_state); + if (attr_mask & IB_QP_STATE) { + /* Ensure the state is valid */ + if (attr->qp_state < 0 || attr->qp_state > IB_QPS_ERR) { + hvnd_error("incorrect qp state attr->qp_state=%d\n", + attr->qp_state); + return -EINVAL; + } + + if (qp->qp_state != new_state) { + qp->qp_state = new_state; + /* + * The only state transition supported is the + * transition to error state. + */ + switch (new_state) { + case IB_QPS_ERR: + case IB_QPS_SQD: + ret = hvnd_flush_qp(nd_dev, qp->uctx, + qp); + + if (ret) + hvnd_error("hvnd_flush_qp failed ret=%d\n", ret); + + // immediately notify the upper layer + // on disconnection + if (!ret && qp->connector) + hvnd_process_notify_disconnect( + qp->connector, + STATUS_SUCCESS); + + return ret; + + default: + break; + } + } + } + } + return 0; +} + + +static int hvnd_ib_query_qp(struct ib_qp *ibqp, struct ib_qp_attr *attr, + int attr_mask, struct ib_qp_init_attr *init_attr) +{ + struct hvnd_qp *qp = to_nd_qp(ibqp); + + memset(attr, 0, sizeof(*attr)); + memset(init_attr, 0, sizeof(*init_attr)); + + attr->qp_state = qp->qp_state; + + init_attr->cap.max_send_wr = qp->max_send_wr; + init_attr->cap.max_recv_wr = qp->max_recv_wr; + + init_attr->cap.max_send_sge = qp->max_send_sge; + init_attr->cap.max_recv_sge = qp->max_recv_sge; + init_attr->cap.max_inline_data = qp->max_inline_data; + + init_attr->sq_sig_type = IB_SIGNAL_ALL_WR; + + return 0; +} + +static void hvnd_refuse_connection(struct hvnd_ep_obj *connector, int status); +static int hvnd_destroy_qp(struct ib_qp *ib_qp) +{ + int ret; + struct hvnd_qp *qp = to_nd_qp(ib_qp); + struct hvnd_dev *nd_dev = to_nd_dev(ib_qp->device); + u64 jiffies; + + if (!qp->connector) { + hvnd_warn("error: connector is NULL; skip destroying connector\n"); + goto free_qp; + } + + /* + * should we flush the qp first on ctrl-C?, + * no need to disconnect on abrupt shutdown? + */ + if (qp->qp_state != IB_QPS_ERR && qp->qp_state != IB_QPS_SQD) { + hvnd_warn("qp_state=%d, doing abrupt disconnect\n", + qp->qp_state); + hvnd_flush_qp(nd_dev, qp->uctx, qp); + + ep_stop(qp->connector); + + // now no pending activity is possible on the connector + + switch (qp->connector->cm_state) { + + case hvnd_cm_idle: + case hvnd_cm_connect_reply_refused: + case hvnd_cm_connect_request_sent: + case hvnd_cm_close_sent: + hvnd_warn("cm_state = %d not doing anything\n", + qp->connector->cm_state); + break; + + case hvnd_cm_connect_received: + hvnd_warn("cm_state = %d refusing pending connection request\n", + qp->connector->cm_state); + hvnd_refuse_connection(qp->connector, -ECONNREFUSED); + break; + + case hvnd_cm_connect_reply_sent: + case hvnd_cm_established_sent: + case hvnd_cm_accept_sent: + hvnd_warn("cm_state = %d notifying disconnect on existing connection\n", + qp->connector->cm_state); + hvnd_process_notify_disconnect(qp->connector, + STATUS_CANCELLED); + break; + + default: + hvnd_error("unknown cm_state = %d\n", + qp->connector->cm_state); + + } + goto free_connector; + } else { + hvnd_debug("qp_state=%d, doing normal disconnect\n", + qp->qp_state); + } + + if (!ep_add_work_pending(qp->connector)) + goto free_connector; + + init_completion(&qp->connector->disconnect_event); + + /* + * First issue a disconnect on the connector. + */ + + hvnd_debug("calling hvnd_connector_disconnect\n"); + ret = hvnd_connector_disconnect(nd_dev, qp->uctx, + qp->connector->ep_handle, + qp->connector); + if (ret) { + ep_del_work_pending(qp->connector); + hvnd_error("disconnect: retval is %d\n", ret); + ep_stop(qp->connector); + goto free_connector; + } + /* + * Now wait for the disconnect. + */ + jiffies = get_jiffies_64(); + if (!wait_for_completion_timeout(&qp->connector->disconnect_event, + 30*HZ)) + hvnd_warn("connector disconnect timed out\n"); + + hvnd_debug("Completed disconnect connector=%p jiffies=%llu\n", + qp->connector, get_jiffies_64() - jiffies); + + /* + * Now free up the connector and drop the reference on uctx. + */ + + ep_stop(qp->connector); + +free_connector: + hvnd_debug("destroying connector handle: %p\n", + (void *) qp->connector->ep_handle); + hvnd_free_handle(nd_dev, qp->uctx, + qp->connector->ep_handle, + IOCTL_ND_CONNECTOR_FREE); + + hvnd_drop_uctx_ref(nd_dev, qp->uctx); + hvnd_destroy_ep(qp->connector); + qp->connector = NULL; +free_qp: + atomic_dec(&qp->refcnt); + hvnd_debug("Waiting for the ref cnt to go to 0\n"); + + wait_event(qp->wait, !atomic_read(&qp->refcnt)); + + hvnd_debug("About to destroy qp\n"); + hvnd_db_unmap_user(qp->uctx, (u64)qp->db_addr); + ib_umem_release(qp->umem); + + hvnd_debug("About to free qp\n"); + ret = hvnd_free_qp(nd_dev, qp->uctx, qp); + + if (ret == 0) { + hvnd_drop_uctx_ref(nd_dev, qp->uctx); + kfree(qp); + } else { + hvnd_error("free qp failed: ret is %d\n", ret); + } + + return ret; +} + +static struct ib_cq *hvnd_ib_create_cq(struct ib_device *ibdev, + const struct ib_cq_init_attr *attr, + struct ib_ucontext *ib_context, + struct ib_udata *udata) +{ + struct hvnd_ucontext *uctx; + struct hvnd_dev *nd_dev; + struct mlx4_ib_create_cq ucmd; + struct hvnd_cq *cq; + int ret = 0; + int entries = attr->cqe; + + uctx = to_nd_context(ib_context); + nd_dev = to_nd_dev(ibdev); + + if (entries < 1 || entries > uctx->max_cqe) { + hvnd_error("incorrct entries=%d\n", entries); + ret = -EINVAL; + goto err_done; + } + + cq = kzalloc(sizeof(*cq), GFP_KERNEL); + if (!cq) { + ret = -ENOMEM; + goto err_done; + } + + entries = roundup_pow_of_two(entries + 1); + cq->ibcq.cqe = entries - 1; + cq->entries = entries; + cq->uctx = uctx; + + if (ib_copy_from_udata(&ucmd, udata, sizeof(ucmd))) { + hvnd_error("ib_copy_from_udata failed\n"); + ret = -EFAULT; + goto err_ucpy; + } + + cq->cq_buf = (void *)ucmd.buf_addr; + cq->db_addr = (void *)ucmd.db_addr; + cq->arm_sn = 0; + + /* + * Initialize the IRP state. Need to have a separate irp state + * for CQ; for now share it with Listener/connector. + */ + ret = hvnd_init_ep(&cq->ep_object, NULL, ND_CQ, nd_dev, uctx); + + if (ret) { + hvnd_error("hvnd_init_ep failed ret=%d\n", ret); + goto err_ucpy; + } + + cq->ep_object.cq = cq; + cq->monitor = true; + + cq->umem = ib_umem_get(ib_context, ucmd.buf_addr, + (entries * uctx->cqe_size), + IB_ACCESS_LOCAL_WRITE, 1); + if (IS_ERR(cq->umem)) { + ret = IS_ERR(cq->umem); + hvnd_error("ib_umem_get failed ret=%d\n", ret); + goto err_ucpy; + } + + ret = hvnd_db_map_user(uctx, ucmd.db_addr, &cq->db_umem); + + if (ret) { + hvnd_error("hvnd_db_map_user failed ret=%d\n", ret); + goto err_db_map; + } + + ret = hvnd_create_cq(nd_dev, uctx, cq); + + if (ret) { + hvnd_error("hvnd_create_cq failed ret=%d\n", ret); + goto err_cq; + } + + cq->ep_object.ep_handle = cq->cq_handle; + + if (ib_copy_to_udata(udata, &cq->cqn, sizeof(__u32))) { + hvnd_error("ib_copy_to_udata failed\n"); + ret = -EFAULT; + goto err_ucpy_out; + } + + if (!disable_cq_notify) { + + if (!ep_add_work_pending(&cq->ep_object)) + goto err_ucpy_out; + + ret = hvnd_notify_cq(nd_dev, cq, ND_CQ_NOTIFY_ANY, + (u64)&cq->ep_object); + + if (ret) { + ep_del_work_pending(&cq->ep_object); + hvnd_error("hvnd_notify_cq failed ret=%d\n", ret); + goto err_ucpy_out; + } + } + + hvnd_acquire_uctx_ref(uctx); + + return &cq->ibcq; + +err_ucpy_out: + hvnd_destroy_cq(nd_dev, cq); + +err_cq: + hvnd_db_unmap_user(uctx, ucmd.db_addr); + +err_db_map: + ib_umem_release(cq->umem); + +err_ucpy: + kfree(cq); +err_done: + return ERR_PTR(ret); +} + +static struct ib_qp *hvnd_get_qp(struct ib_device *dev, int qpn) +{ + struct hvnd_dev *nd_dev; + struct hvnd_qp *qp = NULL; + + nd_dev = to_nd_dev(dev); + qp = get_qpp(nd_dev, qpn); + return qp ? &qp->ibqp : NULL; +} + +static int hvnd_ib_destroy_cq(struct ib_cq *ib_cq) +{ + struct hvnd_ucontext *uctx; + struct hvnd_dev *nd_dev; + struct hvnd_cq *cq; + + cq = to_nd_cq(ib_cq); + uctx = cq->uctx; + nd_dev = to_nd_dev(uctx->ibucontext.device); + + cq->monitor = false; + +// hvnd_cancel_io(&cq->ep_object); + ep_stop(&cq->ep_object); + + hvnd_deinit_ep(&cq->ep_object); + + hvnd_db_unmap_user(uctx, (u64)cq->db_addr); + ib_umem_release(cq->umem); + + hvnd_destroy_cq(nd_dev, cq); + + hvnd_drop_uctx_ref(nd_dev, uctx); + kfree(cq); + + return 0; +} + +static int hvnd_resize_cq(struct ib_cq *cq, int cqe, struct ib_udata *udata) +{ + /* + * NDDirect does not support resizing CQ. + */ + hvnd_info("check code\n"); + return -ENOSYS; +} + +static int hvnd_poll_cq(struct ib_cq *ibcq, int num_entries, struct ib_wc *wc) +{ + hvnd_info("check code\n"); + return 0; +} + +static struct ib_mr *hvnd_get_dma_mr(struct ib_pd *pd, int acc) +{ + hvnd_info("check code\n"); + return NULL; +} + +static void debug_dump_umem(struct ib_umem *umem) +{ +#ifdef HVND_MEM_DEBUG + struct ib_umem_chunk *chunk; + struct scatterlist *sg; + int len, j, entry; + int shift = ffs(umem->page_size) - 1; + + hvnd_debug("umem=%p\n", umem); + hvnd_debug("context=%p length=%lu offset=%d page_size=%d writable=%d hugetlb=%d\n", + umem->context, + umem->length, + umem->offset, + umem->page_size, + umem->writable, + umem->hugetlb); + + list_for_each_entry(chunk, &umem->chunk_list, list) { + hvnd_debug("chunk->nmap=%d\n", chunk->nmap); + for (j = 0; j < chunk->nmap; ++j) { + sg = &chunk->page_list[j]; + hvnd_debug("sg_dma_len=%d sg_dma_address=%llx\n", + sg_dma_len(sg), sg_dma_address(sg)); + hvnd_debug("page_link=%lx offset=%u length=%u\n", + sg->page_link, sg->offset, sg->length); + len = sg_dma_len(&chunk->page_list[j]) >> shift; + for_each_sg(&chunk->page_list[j], sg, len, entry) { + hvnd_debug("PFN=%lu\n", + page_to_pfn(sg_page(sg))); + } + } + } +#endif +} + + +static struct ib_mr *hvnd_reg_user_mr(struct ib_pd *pd, u64 start, u64 length, + u64 virt, int acc, struct ib_udata *udata) +{ + int err = 0; + struct hvnd_ib_pd *hvndpd = to_nd_pd(pd); + struct hvnd_mr *mr; + + mr = kmalloc(sizeof(*mr), GFP_KERNEL); + if (!mr) + return ERR_PTR(-ENOMEM); + mr->pd = hvndpd; + + mr->umem = ib_umem_get(pd->uobject->context, start, length, acc, 0); + if (IS_ERR(mr->umem)) { + err = PTR_ERR(mr->umem); + hvnd_error("ib_umem_get failed ret=%d\n", err); + kfree(mr); + return ERR_PTR(err); + } + + debug_dump_umem(mr->umem); + + mr->start = start; + mr->length = length; + mr->virt = virt; + mr->acc = acc; + + hvnd_debug("start=%llx length=%llx virt=%llx acc=%d\n", + start, length, virt, acc); + + /* + * First create a memory region. + */ + err = hvnd_cr_mr(to_nd_dev(pd->device), + to_nd_context(pd->uobject->context), hvndpd->handle, + &mr->mr_handle); + if (err) { + hvnd_error("cr_mr failed; ret is %d\n", err); + goto err; + } + + err = hvnd_mr_register(to_nd_dev(pd->device), + to_nd_context(pd->uobject->context), mr); + + if (err) + goto err0; + + hvnd_acquire_uctx_ref(to_nd_context(pd->uobject->context)); + + return &mr->ibmr; + +err0: + hvnd_free_mr(to_nd_dev(pd->device), + to_nd_context(pd->uobject->context), mr->mr_handle); +err: + ib_umem_release(mr->umem); + kfree(mr); + return ERR_PTR(err); +} + + + +static int hvnd_dereg_mr(struct ib_mr *ib_mr) +{ + int ret; + struct hvnd_mr *mr = to_nd_mr(ib_mr); + struct hvnd_ucontext *uctx = to_nd_context(ib_mr->pd->uobject->context); + struct hvnd_dev *nd_dev = to_nd_dev(ib_mr->device); + + + hvnd_debug("dereg_mr entering\n"); + + ret = hvnd_deregister_mr(nd_dev, uctx, mr->mr_handle); + + if (ret) { + hvnd_error("hvnd_deregister_mr() failed: %x\n", ret); + return ret; + } + /* + * Now free up the memory region. + */ + + ret = hvnd_free_mr(nd_dev, uctx, mr->mr_handle); + if (ret) { + hvnd_error("hvnd_free_mr() failed: %x\n", ret); + return ret; + } + + ib_umem_release(mr->umem); + + hvnd_drop_uctx_ref(nd_dev, uctx); + kfree(mr); + + hvnd_debug("dereg_mr done\n"); + return 0; +} + +static struct ib_mw *hvnd_alloc_mw(struct ib_pd *pd, enum ib_mw_type type, + struct ib_udata *udata) +{ + hvnd_info("check code\n"); + return NULL; +} + +static int hvnd_dealloc_mw(struct ib_mw *mw) +{ + debug_check(__func__, __LINE__); + return 0; +} + +static int hvnd_arm_cq(struct ib_cq *ibcq, enum ib_cq_notify_flags flags) +{ + struct hvnd_ucontext *uctx; + struct hvnd_dev *nd_dev; + struct hvnd_cq *cq; + + cq = to_nd_cq(ibcq); + uctx = cq->uctx; + nd_dev = to_nd_dev(uctx->ibucontext.device); + + + debug_check(__func__, __LINE__); + + return 0; +} + +static int hvnd_post_send(struct ib_qp *ibqp, const struct ib_send_wr *wr, + const struct ib_send_wr **bad_wr) +{ + debug_check(__func__, __LINE__); + return 0; +} + +int hvnd_post_receive(struct ib_qp *ibqp, const struct ib_recv_wr *wr, + const struct ib_recv_wr **bad_wr) +{ + debug_check(__func__, __LINE__); + return 0; +} + +static int hvnd_resolve_addr(struct sockaddr_in *laddr, + struct sockaddr_in *raddr, + struct if_physical_addr *phys_addrstruct) +{ + int ret; + + phys_addrstruct->length = ETH_ALEN; + ret = hvnd_get_neigh_mac_addr((struct sockaddr *)laddr, + (struct sockaddr *)raddr, + phys_addrstruct->addr); + + hvnd_debug("Dest MAC is %pM\n", phys_addrstruct->addr); + return ret; +} + +static int hvnd_connect(struct iw_cm_id *cm_id, + struct iw_cm_conn_param *conn_param) +{ + int ret = 0; + struct hvnd_dev *nd_dev; + struct hvnd_ep_obj *ep_object; + struct sockaddr_in *raddr = (struct sockaddr_in *)&cm_id->remote_addr; + struct sockaddr_in *laddr = (struct sockaddr_in *)&cm_id->local_addr; + struct hvnd_qp *qp; + struct if_physical_addr phys_addrstruct; + union nd_sockaddr_inet dest_addr; + u64 connector_handle; + union nd_sockaddr_inet addr; + char addr_buf[50]; + + if (cm_id->remote_addr.ss_family != AF_INET) { + hvnd_error("cm_id->remote_addr.ss_family=%d not AF_INET\n", + cm_id->remote_addr.ss_family); + return -ENOSYS; + } + + qp = get_qpp(to_nd_dev(cm_id->device), conn_param->qpn); + + if (!qp) { + hvnd_error("failed to find qp conn_param->qpn=%d\n", + conn_param->qpn); + return -EINVAL; + } + + cm_id->provider_data = qp; + cm_id->add_ref(cm_id); + qp->cm_id = cm_id; + + /* + * Set the read/write limits. + * Can we change the limits on a created QP? Luke? + */ + nd_dev = to_nd_dev(cm_id->device); + ep_object = hvnd_setup_ep(cm_id, ND_CONNECTOR, nd_dev, qp->uctx); + hvnd_debug("active connection: local irp is %d\n", + ep_object->local_irp); + if (!ep_object) { + hvnd_error("hvnd_setup_ep failure\n"); + ret = -ENOMEM; + goto err_limit; + } + + ret = hvnd_cr_connector(nd_dev, qp->uctx, + &connector_handle); + + if (ret) { + hvnd_error("hvnd_cr_connector failure ret=%d\n", ret); + goto err_cr_connector; + } + + hvnd_acquire_uctx_ref(qp->uctx); + ep_object->ep_handle = connector_handle; + ep_object->incoming = false; + qp->connector = ep_object; + + /* + * Bind the local address to the connector. + */ + hvnd_debug("Connect local address is %s\n", + debug_inet_ntoa(laddr->sin_addr, addr_buf)); + + memcpy(&addr.ipv4, laddr, sizeof(struct sockaddr_in)); + hvnd_debug("CONNECT AF %d port %d addr %s\n", + addr.ipv4.sin_family, addr.ipv4.sin_port, + debug_inet_ntoa(addr.ipv4.sin_addr, addr_buf)); + + ret = hvnd_bind_connector(nd_dev, qp->uctx, + connector_handle, + &addr); + + if (ret) { + hvnd_error("hvnd_bind_connector failed ret=%d\n", ret); + goto err_bind_connector; + } + + ret = hvnd_resolve_addr(laddr, raddr, &phys_addrstruct); + if (ret) { + hvnd_error("hvnd_resolve_addr failed ret=%d\n", ret); + goto err_bind_connector; + } + + memcpy(&dest_addr.ipv4, raddr, sizeof(struct sockaddr_in)); + + + + /* + * Now attempt to connect. + */ + + hvnd_debug("About to initiate connection\n"); + + if (!ep_add_work_pending(ep_object)) + goto err_bind_connector; + + ep_object->cm_state = hvnd_cm_connect_received; + ret = hvnd_connector_connect(nd_dev, qp->uctx, + ep_object->ep_handle, + conn_param->ird, conn_param->ord, + conn_param->private_data_len, + (u8 *)conn_param->private_data, + qp->qp_handle, + &phys_addrstruct, &dest_addr, + ep_object); + + if (ret == 0) + return 0; + + ep_object->cm_state = hvnd_cm_idle; + ep_del_work_pending(ep_object); + hvnd_error("hvnd_connector_connect failed ret=%d\n", ret); + +err_bind_connector: + qp->connector = NULL; + hvnd_free_connector(nd_dev, qp->uctx, + connector_handle); + hvnd_drop_uctx_ref(nd_dev, qp->uctx); + +err_cr_connector: + kfree(ep_object); + +err_limit: + cm_id->provider_data = NULL; + qp->cm_id = NULL; + cm_id->rem_ref(cm_id); + return ret; +} + +static int hvnd_accept_cr(struct iw_cm_id *cm_id, + struct iw_cm_conn_param *conn_param) +{ + int ret = 0; + struct hvnd_dev *nd_dev; + struct hvnd_qp *qp; + struct hvnd_ep_obj *connector; + enum ibv_qp_state new_qp_state; + + hvnd_debug("Accepting connection - PASSIVE\n"); + nd_dev = to_nd_dev(cm_id->device); + qp = get_qpp(to_nd_dev(cm_id->device), conn_param->qpn); + + if (!qp) { + hvnd_error("get_qpp failed conn_param->qpn=%d\n", + conn_param->qpn); + return -EINVAL; + } + + + connector = (struct hvnd_ep_obj *)cm_id->provider_data; + qp->connector = connector; + + if (connector == NULL) { + hvnd_error("NULL connector!\n"); + return -EINVAL; + } + hvnd_debug("connector's cm_id is %p caller cm_id=%p\n", + connector->cm_id, cm_id); + + connector->cq = qp->recv_cq; + + + /* + * Setup state for the accepted connection. + */ + cm_id->add_ref(cm_id); + connector->cm_id = cm_id; + if (conn_param == NULL) { + hvnd_error("NULL conn_param!\n"); + return -EINVAL; + } + + connector->ord = conn_param->ord; + connector->ird = conn_param->ird; + + if (!ep_add_work_pending(connector)) + goto error; + + init_completion(&connector->connector_accept_event); + + ret = hvnd_connector_accept(nd_dev, qp->uctx, connector->ep_handle, + qp->qp_handle, conn_param->ird, + conn_param->ord, + conn_param->private_data_len, + conn_param->private_data, + &new_qp_state, connector); + + if (ret) { + ep_del_work_pending(connector); + hvnd_error("connector accept failed\n"); + goto error; + } + + wait_for_completion(&connector->connector_accept_event); + ret = connector->connector_accept_status; + + if (ret) { + hvnd_error("connector_accept failed status=%x\n", ret); + ret = -EIO; + goto error; + } + + hvnd_debug("Passive Connection Accepted; new qp state is %d\n", + new_qp_state); + connector->cm_state = hvnd_cm_accept_sent; + return 0; + +error: + ep_stop(connector); + connector->cm_id = NULL; + connector->cm_state = hvnd_cm_idle; + + qp->connector = NULL; + cm_id->rem_ref(cm_id); + + return ret; +} + +static int hvnd_reject_cr(struct iw_cm_id *cm_id, const void *pdata, + u8 pdata_len) +{ + debug_check(__func__, __LINE__); + return 0; +} + +void hvnd_process_disconnect(struct hvnd_ep_obj *ep_object, int status) +{ + struct iw_cm_event cm_event; + + switch (status) { + case STATUS_SUCCESS: + case STATUS_CANCELLED: + break; + + default: + hvnd_warn("disconnect complete failed: status:%d\n", status); + } + + + hvnd_debug("active disconnect processed\n"); + memset(&cm_event, 0, sizeof(cm_event)); + + complete(&ep_object->disconnect_event); +} + + +void hvnd_process_notify_disconnect(struct hvnd_ep_obj *ep_object, int status) +{ + struct iw_cm_event cm_event; + + // make sure we only disconnect once + if (atomic_xchg(&ep_object->disconnect_notified, 1)) + return; + + /* + * Turn off CQ monitoring. + */ + if (ep_object->cq) + ep_object->cq->monitor = false; + + switch (ep_object->cm_state) { + case hvnd_cm_connect_reply_sent: + case hvnd_cm_established_sent: + case hvnd_cm_accept_sent: + break; + + default: + hvnd_error("unexpected cm_state=%d\n", ep_object->cm_state); + return; + } + + switch (status) { + case STATUS_SUCCESS: + case STATUS_CANCELLED: + case STATUS_DISCONNECTED: + break; + + default: + hvnd_warn("notify disconnect complete failed: status:%d\n", + status); + } + + hvnd_debug("passive disconnect notified\n"); + memset(&cm_event, 0, sizeof(cm_event)); + + /* + * Other end disconnected. + * Connection has been disconnected; + * notify the cm layer. + */ + cm_event.status = -ECONNRESET; + cm_event.event = IW_CM_EVENT_CLOSE; + + if ((ep_object->cm_id) && + (ep_object->cm_id->event_handler)) { + + ep_object->cm_id->event_handler(ep_object->cm_id, &cm_event); + + ep_object->cm_id->rem_ref(ep_object->cm_id); + ep_object->cm_state = hvnd_cm_close_sent; + } +} + +void hvnd_process_connector_accept(struct hvnd_ep_obj *ep_object, int status) +{ + struct iw_cm_event cm_event; + int ret; + + /* + * This is the problem area the return status may be: + * 1: 0xc00000b5 (3221225653) - {Device Timeout} The specified I/O + * operation on %hs was not completed before the time-out period + * expired + * 2: NTSTATUS 0xc0000241 (3221226049) - The transport connection was + * aborted by the local system. + * If we do nothing here, iwcm will wait for IW_CM_EVENT_ESTABLISHED + * forever, and unable to clean shutdown need to fail the call earlier + * on accept. + */ + + ep_object->connector_accept_status = status; + + if (status) { + hvnd_error("Connector accept failed; status is %x\n", status); + complete(&ep_object->connector_accept_event); + return; + } + + memset(&cm_event, 0, sizeof(cm_event)); + cm_event.event = IW_CM_EVENT_ESTABLISHED; + cm_event.ird = ep_object->ird; + cm_event.ord = ep_object->ord; + cm_event.provider_data = (void *)ep_object; + + /* + * We have successfully passively accepted the + * incoming connection. + */ + + hvnd_debug("Passive connection accepted!!\n"); + if ((ep_object->cm_id) && + (ep_object->cm_id->event_handler)) { + ep_object->cm_id->event_handler(ep_object->cm_id, &cm_event); + ep_object->cm_state = hvnd_cm_established_sent; + } + + complete(&ep_object->connector_accept_event); + + /* + * Request notification if the other end + * were to disconnect. + */ + if (!ep_add_work_pending(ep_object)) + return; + + ret = hvnd_connector_notify_disconnect(ep_object->nd_dev, + ep_object->uctx, + ep_object->ep_handle, + ep_object); + + if (ret) { + ep_del_work_pending(ep_object); + hvnd_error("Connector notify disconnect failed; ret: %d\n", + ret); + } +} + + +void hvnd_process_cq_event_pending(struct hvnd_ep_obj *ep_object, + int status) +{ + + struct ib_cq *ibcq; + struct hvnd_cq *cq; + + cq = ep_object->cq; + ibcq = &ep_object->cq->ibcq; + + if (!cq->monitor) + return; + + // call the previous CQ complete + if ((status == STATUS_PENDING) && cq->upcall_pending && + ibcq->comp_handler) { + ibcq->comp_handler(ibcq, ibcq->cq_context); + cq->upcall_pending = false; + hvnd_debug("CQ comp_handler called arm_sn=%d\n", cq->arm_sn); + } + + if ((status != STATUS_PENDING) && ibcq->comp_handler && + ibcq->cq_context) { + ibcq->comp_handler(ibcq, ibcq->cq_context); + hvnd_error("CQ comp_handler called status=%x\n", status); + } +} + +void hvnd_process_cq_event_complete(struct hvnd_ep_obj *ep_object, + int status) +{ + struct ib_cq *ibcq; + struct hvnd_cq *cq; + int ret; + + cq = ep_object->cq; + ibcq = &ep_object->cq->ibcq; + + // call hte previous CQ complete + if (cq->upcall_pending && ibcq->comp_handler) { + ibcq->comp_handler(ibcq, ibcq->cq_context); + cq->upcall_pending = false; + hvnd_debug("CQ comp_handler called arm_sn=%d\n", cq->arm_sn); + } + + cq->upcall_pending = true; + if (!ep_add_work_pending(ep_object)) + return; + + ret = hvnd_notify_cq(ep_object->nd_dev, + ep_object->cq, + ND_CQ_NOTIFY_ANY, + (u64)ep_object); + + if (ret) { + ep_del_work_pending(ep_object); +// hvnd_manage_io_state(ep_object, true); + hvnd_error("hvnd_notify_cq failed ret=%d\n", ret); + } + + if ((status != 0) && (status != STATUS_CANCELLED)) { + if (ibcq->event_handler) { + struct ib_event event; + + event.device = ibcq->device; + event.event = IB_EVENT_CQ_ERR; + event.element.cq = ibcq; + ibcq->event_handler(&event, ibcq->cq_context); + + hvnd_warn("CQ event_handler called status=%x\n", + status); + } + } +} + +int init_cm_event(struct hvnd_ep_obj *ep_object, struct iw_cm_event *cm_event, + int event) +{ + struct sockaddr_in *laddr = (struct sockaddr_in *)&cm_event->local_addr; + struct sockaddr_in *raddr = (struct sockaddr_in *)&cm_event->remote_addr; + struct nd_read_limits rd_limits; + union nd_sockaddr_inet local_addr; + union nd_sockaddr_inet remote_addr; + int ret; + + /* + * Now get the local address. + */ + ret = hvnd_connector_get_local_addr(ep_object->nd_dev, + ep_object->uctx, + ep_object->ep_handle, + &local_addr); + + if (ret) { + hvnd_error("Connector get addr failed; ret: %d\n", ret); + return ret; + } + /* + * Now get the remote address. + */ + ret = hvnd_connector_get_peer_addr(ep_object->nd_dev, + ep_object->uctx, + ep_object->ep_handle, + &remote_addr); + + if (ret) { + hvnd_error("Connector get peer addr failed; ret: %d\n", ret); + return ret; + } + + /* + * Get other connection parameters. + */ + + ret = hvnd_connector_get_rd_limits(ep_object->nd_dev, + ep_object->uctx, + ep_object->ep_handle, + &rd_limits); + + if (ret) { + hvnd_error("Connector rd limits failed; ret: %d\n", ret); + return ret; + } + + /* + * XXXKYS: Luke: What about the length of the priv data? + */ + ret = hvnd_connector_get_priv_data(ep_object->nd_dev, + ep_object->uctx, + ep_object->ep_handle, + ep_object->priv_data); + + if (ret) { + hvnd_error("Connector get priv data failed; ret: %d\n", ret); + return ret; + } + /* + * Initialize CM structure. + */ + laddr->sin_addr.s_addr = local_addr.ipv4.sin_addr.s_addr; + hvnd_debug("Local addr is %d\n", laddr->sin_addr.s_addr); + laddr->sin_port = local_addr.ipv4.sin_port; + laddr->sin_family = AF_INET; + + raddr->sin_addr.s_addr = remote_addr.ipv4.sin_addr.s_addr; + hvnd_debug("Remote addr is %d\n", raddr->sin_addr.s_addr); + raddr->sin_port = remote_addr.ipv4.sin_port; + raddr->sin_family = AF_INET; + + // KYS; LUke: is it always 148 bytes? + cm_event->private_data_len = MAX_PRIVATE_DATA_LEN; + cm_event->private_data = ep_object->priv_data; + + cm_event->ird = rd_limits.inbound; + cm_event->ord = rd_limits.outbound; + cm_event->event = event; + + ep_object->ird = cm_event->ird; + ep_object->ord = cm_event->ord; + + return 0; +} + +static void hvnd_refuse_connection(struct hvnd_ep_obj *connector, int status) +{ + struct iw_cm_event cm_event; + + memset(&cm_event, 0, sizeof(cm_event)); + + cm_event.event = IW_CM_EVENT_CONNECT_REPLY; + cm_event.status = status; + + hvnd_debug("returning status %d on connector %p\n", status, connector); + + if (connector->cm_id && connector->cm_id->event_handler) { + connector->cm_id->event_handler(connector->cm_id, &cm_event); + connector->cm_id->rem_ref(connector->cm_id); + connector->cm_state = hvnd_cm_connect_reply_refused; + } +} + +void hvnd_process_events(struct work_struct *work) +{ + struct hvnd_work *wrk; + struct nd_read_limits rd_limits; + struct hvnd_ep_obj *ep_object; + struct hvnd_ep_obj *parent; + struct iw_cm_event cm_event; + struct sockaddr_in *laddr = (struct sockaddr_in *)&cm_event.local_addr; + struct sockaddr_in *raddr = (struct sockaddr_in *)&cm_event.remote_addr; + struct ndv_packet_hdr_control_1 *ctrl_hdr; + union nd_sockaddr_inet local_addr; + union nd_sockaddr_inet remote_addr; + struct pkt_nd_get_connection_listener *connection_pkt; + struct iw_cm_id *cm_id = NULL; + int status; + int ioctl; + int ret; + char priv_data[MAX_PRIVATE_DATA_LEN]; + enum ibv_qp_state new_qp_state; + struct incoming_pkt *incoming_pkt; + unsigned long flags; + + memset(&cm_event, 0, sizeof(cm_event)); + memset(&priv_data, 0, MAX_PRIVATE_DATA_LEN); + + + wrk = container_of(work, struct hvnd_work, work); + + /* + * Now call into the connection manager. + */ + ep_object = (struct hvnd_ep_obj *)wrk->callback_arg; + parent = ep_object->parent; + +process_next: + incoming_pkt = NULL; + spin_lock_irqsave(&ep_object->incoming_pkt_list_lock, flags); + if (!list_empty(&ep_object->incoming_pkt_list)) { + incoming_pkt = list_first_entry(&ep_object->incoming_pkt_list, + struct incoming_pkt, + list_entry); + list_del(&incoming_pkt->list_entry); + } + spin_unlock_irqrestore(&ep_object->incoming_pkt_list_lock, flags); + if (incoming_pkt == NULL) + return; + + ctrl_hdr = (struct ndv_packet_hdr_control_1 *)incoming_pkt->pkt; + status = ctrl_hdr->io_status; + ioctl = ctrl_hdr->io_cntrl_code; + + hvnd_debug("Process Events IOCTL is: %s; iostatus failure: %x in work queue\n", + hvnd_get_op_name(ioctl), status); + + if (status != 0) { + bool log_error = true; + + if (ioctl == IOCTL_ND_CONNECTOR_NOTIFY_DISCONNECT && + status == STATUS_DISCONNECTED) // expected + log_error = false; + + if (log_error) + hvnd_warn("Process Events IOCTL is: %s; iostatus failure: %x\n", + hvnd_get_op_name(ioctl), status); + } + + cm_event.status = status; + + switch (ep_object->type) { + case ND_CONNECTOR: + switch (ioctl) { + case IOCTL_ND_LISTENER_GET_CONNECTION_REQUEST: + + if (ep_object->parent != NULL) { + + // Do nothing with this connection request if + // listener is stopping + if (!ep_add_work_pending(ep_object->parent)) + break; + + cm_id = ep_object->parent->cm_id; //Listener + } + + connection_pkt = (struct pkt_nd_get_connection_listener *) ctrl_hdr; + + if ((status == 0) || (status == STATUS_CANCELLED)) { + hvnd_get_incoming_connections(ep_object->parent, + ep_object->parent->nd_dev, + ep_object->uctx); + } + + if (status) + goto get_connection_request_done; + + /* + * Now get the local address. + */ + ret = hvnd_connector_get_local_addr(ep_object->nd_dev, + ep_object->uctx, + ep_object->ep_handle, + &local_addr); + + if (ret) { + hvnd_error("Connector get addr failed; ret: %d\n", + ret); + goto get_connection_request_done; + } + /* + * Now get the remote address. + */ + ret = hvnd_connector_get_peer_addr(ep_object->nd_dev, + ep_object->uctx, + ep_object->ep_handle, + &remote_addr); + + if (ret) { + hvnd_error("Connector get peer addr failed; ret: %d\n", + ret); + goto get_connection_request_done; + } + /* + * Get other connection parameters. + */ + + ret = hvnd_connector_get_rd_limits(ep_object->nd_dev, + ep_object->uctx, + ep_object->ep_handle, + &rd_limits); + + if (ret) { + hvnd_error("Connector rd imits failed; ret: %d\n", + ret); + goto get_connection_request_done; + } + + /* + * XXXKYS: Luke: What about the length of the priv data? + */ + ret = hvnd_connector_get_priv_data( + ep_object->nd_dev, ep_object->uctx, + ep_object->ep_handle, ep_object->priv_data); + + if (ret) { + hvnd_error("Connector get priv data failed; ret: %d\n", + ret); + goto get_connection_request_done; + } + + cm_event.event = IW_CM_EVENT_CONNECT_REQUEST; + cm_event.provider_data = (void *)ep_object; + + laddr->sin_addr.s_addr = local_addr.ipv4.sin_addr.s_addr; + hvnd_debug("Local addr is %d\n", + laddr->sin_addr.s_addr); + laddr->sin_port = local_addr.ipv4.sin_port; + laddr->sin_family = AF_INET; + + raddr->sin_addr.s_addr = remote_addr.ipv4.sin_addr.s_addr; + hvnd_debug("Remote addr is %d\n", + raddr->sin_addr.s_addr); + raddr->sin_port = remote_addr.ipv4.sin_port; + raddr->sin_family = AF_INET; + + // KYS; LUke: is it always 148 bytes? + cm_event.private_data_len = MAX_PRIVATE_DATA_LEN; + cm_event.private_data = ep_object->priv_data; + + cm_event.ird = rd_limits.inbound; + cm_event.ord = rd_limits.outbound; + + ep_object->ird = cm_event.ird; + ep_object->ord = cm_event.ord; + + + if ((cm_id != NULL) && cm_id->event_handler) { + cm_id->event_handler(cm_id, &cm_event); + ep_object->cm_state = hvnd_cm_connect_request_sent; + } + +get_connection_request_done: + if (ep_object->parent != NULL) + ep_del_work_pending(ep_object->parent); + break; + + case IOCTL_ND_CONNECTOR_CONNECT: + + cm_event.event = IW_CM_EVENT_CONNECT_REPLY; + if (status == STATUS_TIMEOUT && + ep_object->connector_connect_retry < 3) { + //TIMEOUT retry + + if (!ep_add_work_pending(ep_object)) + goto refuse_connection; + + hvnd_warn("Connector connect timed out, reconnecting... retry count: %d\n", + ep_object->connector_connect_retry); + ep_object->connector_connect_retry++; + ret = hvnd_send_ioctl_pkt(ep_object->nd_dev, + &ep_object->connector_connect_pkt.hdr, + sizeof(ep_object->connector_connect_pkt), + (u64)&ep_object->connector_connect_pkt); + + if (ret) { + hvnd_error("Connector on time out failed: %d\n", + ret); + ep_del_work_pending(ep_object); + goto refuse_connection; + } + break; + } + +refuse_connection: + if (status) { + cm_event.status = -ECONNREFUSED; + if (status == STATUS_TIMEOUT) + cm_event.status = -ETIMEDOUT; + + hvnd_refuse_connection(ep_object, + cm_event.status); + break; + } + + hvnd_debug("ACTIVE Connection ACCEPTED\n"); + ret = init_cm_event(ep_object, &cm_event, + IW_CM_EVENT_CONNECT_REPLY); + if (ret) { + hvnd_error("init_cm_event failed ret=%d\n", + ret); + goto process_done; + } + + ret = hvnd_connector_complete_connect(ep_object->nd_dev, + ep_object->uctx, + ep_object->ep_handle, + &new_qp_state); + if (ret) { + hvnd_error("connector_complete failed\n"); + goto process_done; + } + + cm_event.provider_data = (void *)ep_object; + + if ((ep_object->cm_id) && + (ep_object->cm_id->event_handler)) { + ep_object->cm_id->event_handler( + ep_object->cm_id, &cm_event); + ep_object->cm_state = hvnd_cm_connect_reply_sent; + } + /* + * Rquest notification if the other end + * were to disconnect. + */ + if (!ep_add_work_pending(ep_object)) + goto process_done; + + ret = hvnd_connector_notify_disconnect( + ep_object->nd_dev, ep_object->uctx, + ep_object->ep_handle, ep_object); + + if (ret) { + ep_del_work_pending(ep_object); + hvnd_error("Connector notify disconnect failed; ret: %d\n", + ret); + } + + break; + + case IOCTL_ND_CONNECTOR_NOTIFY_DISCONNECT: + hvnd_process_notify_disconnect(ep_object, status); + break; + + + default: + hvnd_error("Unknown Connector IOCTL\n"); + break; + } + break; + default: + hvnd_error("Unknown endpoint object\n"); + break; + } +process_done: + kfree(incoming_pkt); + ep_del_work_pending(ep_object); + + goto process_next; +} + + +static struct hvnd_ep_obj *hvnd_setup_ep(struct iw_cm_id *cm_id, int ep_type, + struct hvnd_dev *nd_dev, + struct hvnd_ucontext *uctx) +{ + struct hvnd_ep_obj *ep_object; + int ret; + + ep_object = kzalloc(sizeof(struct hvnd_ep_obj), GFP_KERNEL); + + if (!ep_object) + return NULL; + + ret = hvnd_init_ep(ep_object, cm_id, ep_type, nd_dev, uctx); + + if (ret) { + hvnd_error("hvnd_init_ep failed ret=%d\n", ret); + kfree(ep_object); + return NULL; + } + + return ep_object; +} + +/* + * return value: + * true: I/O state is stopped, we should not do upcall + * flase: I/O state is running and normal + */ +#if 0 +static bool hvnd_manage_io_state(struct hvnd_ep_obj *ep, bool failure) +{ + unsigned long flags; + + spin_lock_irqsave(&ep->ep_lk, flags); + if (ep->to_be_destroyed) { + hvnd_warn("ep being destroyed\n"); + if (ep->io_outstanding) { + hvnd_warn("ep being destroyed i/O pending waking up on %p\n", + &ep->block_event); + complete(&ep->block_event); + ep->io_outstanding = false; + } + spin_unlock_irqrestore(&ep->ep_lk, flags); + return true; + } + if (!failure) + ep->io_outstanding = true; + spin_unlock_irqrestore(&ep->ep_lk, flags); + return false; +} +#endif + +static int hvnd_get_incoming_connections(struct hvnd_ep_obj *listener, + struct hvnd_dev *nd_dev, + struct hvnd_ucontext *uctx) +{ + struct hvnd_ep_obj *connector; + u64 connector_handle; + int ret; + + /* + * First handle the protocol for + * destruction - outstanding I/O. + */ + +// if (hvnd_manage_io_state(listener, false)) +// return 0; + /* + * Create a connector. + */ + connector = hvnd_setup_ep(listener->cm_id, ND_CONNECTOR, nd_dev, uctx); + if (!connector) { + hvnd_error("hvnd_setup_ep failed\n"); + ret = -ENOMEM; + goto con_alloc_err; + } + + ret = hvnd_cr_connector(nd_dev, uctx, + &connector_handle); + if (ret) { + hvnd_error("hvnd_cr_connector failed ret=%d\n", ret); + goto con_cr_err; + } + + /* + * Now get a connection if one is pending. + */ + connector->ep_handle = connector_handle; + connector->parent = listener; + + if (!ep_add_work_pending(connector)) + goto get_connection_err; + + ret = hvnd_get_connection_listener(nd_dev, uctx, + listener->ep_handle, + connector_handle, + (u64)connector); + + if (ret) { + hvnd_debug("listener_get_connection failed\n"); + ep_del_work_pending(connector); + goto get_connection_err; + } + + hvnd_acquire_uctx_ref(uctx); + listener->outstanding_handle = connector_handle; + listener->outstanding_ep = connector; + hvnd_debug("outstanding handle is %p\n", (void *)connector_handle); + return 0; + +get_connection_err: + hvnd_free_handle(nd_dev, uctx, + connector_handle, + IOCTL_ND_CONNECTOR_FREE); + +con_cr_err: + kfree(connector); +con_alloc_err: +// hvnd_manage_io_state(listener, true); + return ret; +} + +static int hvnd_create_listen(struct iw_cm_id *cm_id, int backlog) +{ + int ret = 0; + struct hvnd_dev *nd_dev; + struct hvnd_ucontext *uctx; + struct hvnd_ep_obj *ep_object; + union nd_sockaddr_inet addr; + union nd_sockaddr_inet local_addr; + u64 listener_handle; + struct sockaddr_in *laddr = (struct sockaddr_in *)&cm_id->local_addr; + union nd_sockaddr_inet og_addr; + + + nd_dev = to_nd_dev(cm_id->device); + uctx = get_uctx(nd_dev, current_pid()); + hvnd_debug("uctx is %p; pid is %d\n", uctx, current_pid()); + + if (cm_id->local_addr.ss_family != AF_INET) { + hvnd_error("cm_id->local_addr.ss_family =%d not AF_INET\n", + cm_id->local_addr.ss_family); + return -ENOSYS; + } + + /* + * If the local address is LOOPBACK or INADDR_ANY, get an an address + * to bind the listener. For now, just get the first address + * available. + */ + + if (IN_LOOPBACK(ntohl(laddr->sin_addr.s_addr)) || + (laddr->sin_addr.s_addr == INADDR_ANY)) { + + hvnd_debug("need to get an address\n"); + ret = hvnd_get_outgoing_rdma_addr(nd_dev, uctx, &og_addr); + + if (ret) { + hvnd_error("failed to get the og address\n"); + return ret; + } + + laddr->sin_addr.s_addr = og_addr.ipv4.sin_addr.s_addr; + } + + cm_id->add_ref(cm_id); + + ep_object = hvnd_setup_ep(cm_id, ND_LISTENER, nd_dev, uctx); + + if (!ep_object) { + hvnd_error("hvnd_setup_ep returned NULL\n"); + goto alloc_err; + } + + ret = hvnd_cr_listener(nd_dev, uctx, + &listener_handle); + if (ret) { + hvnd_error("hvnd_cr_listener failed ret=%d\n", ret); + goto cr_err; + } + + ep_object->ep_handle = listener_handle; + + cm_id->provider_data = ep_object; + + /* + * Now bind the listener. + * IPV4 support only. + */ + memcpy(&addr.ipv4, laddr, sizeof(struct sockaddr_in)); + + ret = hvnd_bind_listener(nd_dev, uctx, + listener_handle, + &addr); + if (ret) { + hvnd_error("hvnd_bind_listener failed ret=%d\n", ret); + goto bind_err; + } + + /* + * Now get the local address. + */ + ret = hvnd_get_addr_listener(nd_dev, uctx, + listener_handle, + &local_addr); + if (ret) { + hvnd_error("hvnd_get_addr_listener failed ret=%d\n", ret); + goto bind_err; + } + + /* + * Now put the listener in the listen mode. + */ + + ret = hvnd_listen_listener(nd_dev, uctx, + listener_handle, + backlog); + + if (ret) { + hvnd_error("hvnd_listen_listener failed ret=%d\n", ret); + goto bind_err; + } + + + /* + * Now get a pending connection if one is pending. + */ + ret = hvnd_get_incoming_connections(ep_object, nd_dev, uctx); + if (ret) { + hvnd_error("hvnd_get_incoming_connections failed ret=%d\n", + ret); + goto bind_err; + } + + hvnd_acquire_uctx_ref(uctx); + hvnd_debug("cm_id=%p\n", cm_id); + return 0; + +bind_err: + hvnd_free_handle(nd_dev, uctx, + listener_handle, + IOCTL_ND_LISTENER_FREE); +cr_err: + kfree(ep_object); +alloc_err: + cm_id->provider_data = NULL; + cm_id->rem_ref(cm_id); + return ret; +} + +static int hvnd_destroy_listen(struct iw_cm_id *cm_id) +{ + struct hvnd_dev *nd_dev; + struct hvnd_ucontext *uctx; + struct hvnd_ep_obj *ep_object; + + nd_dev = to_nd_dev(cm_id->device); + + ep_object = (struct hvnd_ep_obj *)cm_id->provider_data; + + hvnd_debug("uctx is %p\n", ep_object->uctx); + hvnd_debug("Destroying Listener cm_id=%p\n", cm_id); + uctx = ep_object->uctx; + + // make sure there is nothing in progress on this ep + ep_stop(ep_object); + + hvnd_free_handle(nd_dev, uctx, + ep_object->ep_handle, + IOCTL_ND_LISTENER_FREE); + + /* + * We may have an ouststanding connector for + * incoming connection requests; clean it up. + */ + + if (ep_object->outstanding_handle != 0) { + + // make sure there is nothing in progress on this ep + ep_stop(ep_object->outstanding_ep); + + hvnd_free_handle(nd_dev, uctx, + ep_object->outstanding_handle, + IOCTL_ND_CONNECTOR_FREE); + + + hvnd_drop_uctx_ref(nd_dev, uctx); + hvnd_destroy_ep(ep_object->outstanding_ep); + } + + /* + * Now everything should have stopped + */ + + cm_id->rem_ref(cm_id); + hvnd_destroy_ep(ep_object); + cm_id->provider_data = NULL; + hvnd_drop_uctx_ref(nd_dev, uctx); + + hvnd_debug("cm_id=%p\n", cm_id); + return 0; +} + +static void hvnd_qp_add_ref(struct ib_qp *ibqp) +{ + struct hvnd_qp *qp = to_nd_qp(ibqp); + + atomic_inc(&qp->refcnt); +} + +void hvnd_qp_rem_ref(struct ib_qp *ibqp) +{ + struct hvnd_qp *qp = to_nd_qp(ibqp); + + if (atomic_dec_and_test(&qp->refcnt)) + wake_up(&qp->wait); +} + +static DEVICE_ATTR(hw_rev, 0444, hvnd_show_rev, NULL); +static DEVICE_ATTR(fw_ver, 0444, hvnd_show_fw_ver, NULL); +static DEVICE_ATTR(hca_type, 0444, hvnd_show_hca, NULL); +static DEVICE_ATTR(board_id, 0444, hvnd_show_board, NULL); + +static struct device_attribute *hvnd_class_attributes[] = { + &dev_attr_hw_rev, + &dev_attr_fw_ver, + &dev_attr_hca_type, + &dev_attr_board_id, +}; + +int hvnd_register_device(struct hvnd_dev *dev, char *ip_addr, char *mac_addr) +{ + int ret; + + dev->ibdev.owner = THIS_MODULE; + dev->device_cap_flags = IB_DEVICE_LOCAL_DMA_LKEY | IB_DEVICE_MEM_WINDOW; + dev->ibdev.local_dma_lkey = 0; + dev->ibdev.uverbs_cmd_mask = + (1ull << IB_USER_VERBS_CMD_GET_CONTEXT) | + (1ull << IB_USER_VERBS_CMD_QUERY_DEVICE) | + (1ull << IB_USER_VERBS_CMD_QUERY_PORT) | + (1ull << IB_USER_VERBS_CMD_ALLOC_PD) | + (1ull << IB_USER_VERBS_CMD_DEALLOC_PD) | + (1ull << IB_USER_VERBS_CMD_REG_MR) | + (1ull << IB_USER_VERBS_CMD_DEREG_MR) | + (1ull << IB_USER_VERBS_CMD_CREATE_COMP_CHANNEL) | + (1ull << IB_USER_VERBS_CMD_CREATE_CQ) | + (1ull << IB_USER_VERBS_CMD_DESTROY_CQ) | + (1ull << IB_USER_VERBS_CMD_REQ_NOTIFY_CQ) | + (1ull << IB_USER_VERBS_CMD_CREATE_QP) | + (1ull << IB_USER_VERBS_CMD_MODIFY_QP) | + (1ull << IB_USER_VERBS_CMD_QUERY_QP) | + (1ull << IB_USER_VERBS_CMD_POLL_CQ) | + (1ull << IB_USER_VERBS_CMD_DESTROY_QP) | + (1ull << IB_USER_VERBS_CMD_POST_SEND) | + (1ull << IB_USER_VERBS_CMD_POST_RECV); + dev->ibdev.node_type = RDMA_NODE_RNIC; + memcpy(dev->ibdev.node_desc, HVND_NODE_DESC, sizeof(HVND_NODE_DESC)); + memcpy(&dev->ibdev.node_guid, mac_addr, 6); + dev->ibdev.phys_port_cnt = 1; //dev->nports; + dev->ibdev.num_comp_vectors = 1; + dev->ibdev.ops.query_device = hvnd_query_device; + dev->ibdev.ops.query_port = hvnd_query_port; + dev->ibdev.ops.get_link_layer = hvnd_get_link_layer; + dev->ibdev.ops.query_pkey = hvnd_query_pkey; + dev->ibdev.ops.query_gid = hvnd_query_gid; + dev->ibdev.ops.alloc_ucontext = hvnd_alloc_ucontext; + dev->ibdev.ops.dealloc_ucontext = hvnd_dealloc_ucontext; + dev->ibdev.ops.mmap = hvnd_mmap; + dev->ibdev.ops.alloc_pd = hvnd_allocate_pd; + dev->ibdev.ops.dealloc_pd = hvnd_deallocate_pd; + dev->ibdev.ops.create_ah = hvnd_ah_create; + dev->ibdev.ops.destroy_ah = hvnd_ah_destroy; + dev->ibdev.ops.create_qp = hvnd_ib_create_qp; + dev->ibdev.ops.modify_qp = hvnd_ib_modify_qp; + dev->ibdev.ops.query_qp = hvnd_ib_query_qp; + dev->ibdev.ops.destroy_qp = hvnd_destroy_qp; + dev->ibdev.ops.create_cq = hvnd_ib_create_cq; + dev->ibdev.ops.destroy_cq = hvnd_ib_destroy_cq; + dev->ibdev.ops.resize_cq = hvnd_resize_cq; + dev->ibdev.ops.poll_cq = hvnd_poll_cq; + dev->ibdev.ops.get_dma_mr = hvnd_get_dma_mr; + dev->ibdev.ops.reg_user_mr = hvnd_reg_user_mr; + dev->ibdev.ops.dereg_mr = hvnd_dereg_mr; + dev->ibdev.ops.alloc_mw = hvnd_alloc_mw; + dev->ibdev.ops.dealloc_mw = hvnd_dealloc_mw; + dev->ibdev.ops.attach_mcast = hvnd_multicast_attach; + dev->ibdev.ops.detach_mcast = hvnd_multicast_detach; + dev->ibdev.ops.process_mad = hvnd_process_mad; + dev->ibdev.ops.req_notify_cq = hvnd_arm_cq; + dev->ibdev.ops.post_send = hvnd_post_send; + dev->ibdev.ops.post_recv = hvnd_post_receive; + dev->ibdev.uverbs_abi_ver = MLX4_IB_UVERBS_ABI_VERSION; + + dev->ibdev.ops.get_port_immutable = hvnd_get_port_immutable; + + dev->ibdev.uverbs_ex_cmd_mask |= + (1ull << IB_USER_VERBS_EX_CMD_QUERY_DEVICE) | + (1ull << IB_USER_VERBS_EX_CMD_CREATE_CQ) | + (1ull << IB_USER_VERBS_EX_CMD_CREATE_QP); + + //DMA ops for mapping all possible addresses + dev->ibdev.dev.parent = &(dev->hvdev->device); + dev->ibdev.dev.dma_ops = &vmbus_dma_ops; + dev->ibdev.dev.dma_mask = (u64 *) DMA_BIT_MASK(64); + dev->ibdev.dev.coherent_dma_mask = DMA_BIT_MASK(64); + + dev->ibdev.iwcm = kmalloc(sizeof(struct iw_cm_verbs), GFP_KERNEL); + if (!dev->ibdev.iwcm) + return -ENOMEM; + + dev->ibdev.iwcm->connect = hvnd_connect; + dev->ibdev.iwcm->accept = hvnd_accept_cr; + dev->ibdev.iwcm->reject = hvnd_reject_cr; + dev->ibdev.iwcm->create_listen = hvnd_create_listen; + dev->ibdev.iwcm->destroy_listen = hvnd_destroy_listen; + dev->ibdev.iwcm->add_ref = hvnd_qp_add_ref; + dev->ibdev.iwcm->rem_ref = hvnd_qp_rem_ref; + dev->ibdev.iwcm->get_qp = hvnd_get_qp; + + ret = ib_register_device(&dev->ibdev, "mlx4_%d", NULL); + if (ret) { + hvnd_error("ib_register_device failed ret=%d\n", ret); + goto bail1; + } + +#if 0 + for (i = 0; i < ARRAY_SIZE(hvnd_class_attributes); ++i) { + ret = device_create_file(&dev->ibdev.dev, + hvnd_class_attributes[i]); + if (ret) { + hvnd_error("device_create_file failed ret=%d\n", ret); + goto bail2; + } + } +#endif + + dev->ib_active = true; + return 0; +//bail2: +// ib_unregister_device(&dev->ibdev); +bail1: + kfree(dev->ibdev.iwcm); + return ret; +} + +void hvnd_unregister_device(struct hvnd_dev *dev) +{ + int i; + + for (i = 0; i < ARRAY_SIZE(hvnd_class_attributes); ++i) + device_remove_file(&dev->ibdev.dev, + hvnd_class_attributes[i]); + ib_unregister_device(&dev->ibdev); + kfree(dev->ibdev.iwcm); + ib_dealloc_device((struct ib_device *)dev); +} + +static int hvnd_try_bind_nic(unsigned char *mac, __be32 ip) +{ + int ret; + struct hvnd_dev *nd_dev = g_nd_dev; + + mutex_lock(&nd_dev->bind_mutex); + if (nd_dev->bind_complete) { + mutex_unlock(&nd_dev->bind_mutex); + return 1; + } + + memcpy(nd_dev->mac_addr, mac, 6); + *(__be32 *)(nd_dev->ip_addr) = ip; + + /* + * Bind the NIC. + */ + hvnd_info("trying to bind to IP %pI4 MAC %pM\n", + nd_dev->ip_addr, nd_dev->mac_addr); + ret = hvnd_bind_nic(nd_dev, false, nd_dev->ip_addr, nd_dev->mac_addr); + if (ret || nd_dev->bind_pkt.pkt_hdr.status) { + mutex_unlock(&nd_dev->bind_mutex); + return 1; + } + + /* if we reach here, this means bind_nic is a success */ + hvnd_error("successfully bound to IP %pI4 MAC %pM\n", + nd_dev->ip_addr, nd_dev->mac_addr); + nd_dev->bind_complete = 1; + complete_all(&nd_dev->addr_set); + mutex_unlock(&nd_dev->bind_mutex); + + ret = hvnd_register_device(nd_dev, nd_dev->ip_addr, nd_dev->mac_addr); + + if (!ret) + return 0; + + hvnd_error("hvnd_register_device failed ret=%d\n", ret); + + /* roll back all allocated resources on error */ + iounmap(nd_dev->mmio_virt); + release_resource(&nd_dev->mmio_resource); + + vmbus_close(nd_dev->hvdev->channel); + ib_dealloc_device((struct ib_device *)nd_dev); + + return 1; +} + +static void hvnd_inetaddr_event_up(unsigned long event, struct in_ifaddr *ifa) +{ + hvnd_try_bind_nic(ifa->ifa_dev->dev->dev_addr, ifa->ifa_address); +} + +static int hvnd_inetaddr_event(struct notifier_block *notifier, + unsigned long event, void *ptr) +{ + struct in_ifaddr *ifa = ptr; + + switch (event) { + case NETDEV_UP: + hvnd_inetaddr_event_up(event, ifa); + break; + default: + hvnd_debug("Received inetaddr event %lu\n", event); + } + + return NOTIFY_DONE; +} + +static struct notifier_block hvnd_inetaddr_notifier = { + .notifier_call = hvnd_inetaddr_event, +}; + +static int start_bind_nic(void) +{ + struct net_device *dev; + struct in_device *idev; + struct in_ifaddr *ifa; + + register_inetaddr_notifier(&hvnd_inetaddr_notifier); + + rtnl_lock(); + for_each_netdev(&init_net, dev) { + idev = in_dev_get(dev); + if (!idev) + continue; + for (ifa = (idev)->ifa_list; + ifa && !(ifa->ifa_flags&IFA_F_SECONDARY); + ifa = ifa->ifa_next) { + hvnd_try_bind_nic(dev->dev_addr, ifa->ifa_address); + } + } + rtnl_unlock(); + + return 0; +} + +static int hvnd_probe(struct hv_device *dev, + const struct hv_vmbus_device_id *dev_id) +{ + struct hvnd_dev *nd_dev; + int ret = 0; + + hvnd_debug("hvnd starting\n"); + + nd_dev = (struct hvnd_dev *)ib_alloc_device(sizeof(struct hvnd_dev)); + if (!nd_dev) { + ret = -ENOMEM; + goto err_out0; + } + + nd_dev->hvdev = dev; + /* + * We are going to masquerade as MLX4 device; + * Set the vendor and device ID accordingly. + */ + dev->vendor_id = 0x15b3; //Mellanox + dev->device_id = 0x1003; //Mellanox HCA + INIT_LIST_HEAD(&nd_dev->listentry); + spin_lock_init(&nd_dev->uctxt_lk); + nd_dev->ib_active = false; + + /* + * Initialize the state for the id table. + */ + spin_lock_init(&nd_dev->id_lock); + idr_init(&nd_dev->cqidr); + idr_init(&nd_dev->qpidr); + idr_init(&nd_dev->mmidr); + idr_init(&nd_dev->irpidr); + idr_init(&nd_dev->uctxidr); + + atomic_set(&nd_dev->open_cnt, 0); + + sema_init(&nd_dev->query_pkt_sem, 1); + + ret = vmbus_open(dev->channel, HVND_RING_SZ, HVND_RING_SZ, NULL, 0, + hvnd_callback, dev); + + if (ret) { + hvnd_error("vmbus_open failed ret=%d\n", ret); + goto err_out1; + } + + hv_set_drvdata(dev, nd_dev); + + ret = hvnd_negotiate_version(nd_dev); + + if (ret) { + hvnd_error("hvnd_negotiate_version failed ret=%d\n", ret); + goto err_out2; + } + + /* + * Register resources with the host. + */ + ret = hvnd_init_resources(nd_dev); + if (ret) { + hvnd_error("hvnd_init_resources failed ret=%d\n", ret); + goto err_out2; + } + + /* + * Try to bind every NIC to ND channel, + * ND host will only return success for the correct one + */ + nd_dev->bind_complete = 0; + mutex_init(&nd_dev->bind_mutex); + init_completion(&nd_dev->addr_set); + + g_nd_dev = nd_dev; + start_bind_nic(); + + return 0; + +err_out2: + vmbus_close(dev->channel); + +err_out1: + ib_dealloc_device((struct ib_device *)nd_dev); + +err_out0: + return ret; +} + +static int hvnd_remove(struct hv_device *dev) +{ + struct hvnd_dev *nd_dev = hv_get_drvdata(dev); + + unregister_inetaddr_notifier(&hvnd_inetaddr_notifier); + hvnd_bind_nic(nd_dev, true, nd_dev->ip_addr, nd_dev->mac_addr); + hvnd_unregister_device(nd_dev); + vmbus_close(dev->channel); + iounmap(nd_dev->mmio_virt); + release_resource(&nd_dev->mmio_resource); + return 0; +} + +static const struct hv_vmbus_device_id id_table[] = { + /* VMBUS RDMA class guid */ + /* 8c2eaf3d-32a7-4b09-ab99-bd1f1c86b501 */ + { HV_ND_GUID, }, + { }, +}; + +MODULE_DEVICE_TABLE(vmbus, id_table); + +static struct hv_driver hvnd_drv = { + .name = "hv_guest_rdma", + .id_table = id_table, + .probe = hvnd_probe, + .remove = hvnd_remove, +}; + + +static int __init init_hvnd_drv(void) +{ + + pr_info("Registered HyperV networkDirect Driver\n"); + return vmbus_driver_register(&hvnd_drv); +} + +static void exit_hvnd_drv(void) +{ + pr_info("De-Registered HyperV networkDirect Driver\n"); + vmbus_driver_unregister(&hvnd_drv); +} + + +module_init(init_hvnd_drv); +module_exit(exit_hvnd_drv); + +MODULE_DESCRIPTION("Hyper-V NetworkDirect Driver"); +MODULE_LICENSE("GPL"); +MODULE_VERSION("4.1.3"); --- linux-azure-5.8-5.8.0.orig/drivers/infiniband/hw/vmbus-rdma/vmbus-rdma-144.0/user.h +++ linux-azure-5.8-5.8.0/drivers/infiniband/hw/vmbus-rdma/vmbus-rdma-144.0/user.h @@ -0,0 +1,107 @@ +/* + * Copyright (c) 2007 Cisco Systems, Inc. All rights reserved. + * Copyright (c) 2007, 2008 Mellanox Technologies. All rights reserved. + * + * This software is available to you under a choice of one of two + * licenses. You may choose to be licensed under the terms of the GNU + * General Public License (GPL) Version 2, available from the file + * COPYING in the main directory of this source tree, or the + * OpenIB.org BSD license below: + * + * Redistribution and use in source and binary forms, with or + * without modification, are permitted provided that the following + * conditions are met: + * + * - Redistributions of source code must retain the above + * copyright notice, this list of conditions and the following + * disclaimer. + * + * - Redistributions in binary form must reproduce the above + * copyright notice, this list of conditions and the following + * disclaimer in the documentation and/or other materials + * provided with the distribution. + * + * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, + * EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF + * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND + * NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS + * BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN + * ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN + * CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE + * SOFTWARE. + */ + +#ifndef MLX4_IB_USER_H +#define MLX4_IB_USER_H + +#include + +/* + * Increment this value if any changes that break userspace ABI + * compatibility are made. + */ + +#define MLX4_IB_UVERBS_NO_DEV_CAPS_ABI_VERSION 3 +#define MLX4_IB_UVERBS_ABI_VERSION 4 + +/* + * Make sure that all structs defined in this file remain laid out so + * that they pack the same way on 32-bit and 64-bit architectures (to + * avoid incompatibility between 32-bit userspace and 64-bit kernels). + * In particular do not use pointer types -- pass pointers in __u64 + * instead. + */ + +struct mlx4_ib_alloc_ucontext_resp_v3 { + __u32 qp_tab_size; + __u16 bf_reg_size; + __u16 bf_regs_per_page; +}; + +struct mlx4_ib_alloc_ucontext_resp { + __u32 dev_caps; + __u32 qp_tab_size; + __u16 bf_reg_size; + __u16 bf_regs_per_page; + __u32 cqe_size; +}; + +struct mlx4_ib_alloc_pd_resp { + __u32 pdn; + __u32 reserved; +}; + +struct mlx4_ib_create_cq { + __u64 buf_addr; + __u64 db_addr; +}; + +struct mlx4_ib_create_cq_resp { + __u32 cqn; + __u32 reserved; +}; + +struct mlx4_ib_resize_cq { + __u64 buf_addr; +}; + +struct mlx4_ib_create_srq { + __u64 buf_addr; + __u64 db_addr; +}; + +struct mlx4_ib_create_srq_resp { + __u32 srqn; + __u32 reserved; +}; + +struct mlx4_ib_create_qp { + __u64 buf_addr; + __u64 db_addr; + __u8 log_sq_bb_count; + __u8 log_sq_stride; + __u8 sq_no_prefetch; + __u8 reserved[5]; +}; + +#endif /* MLX4_IB_USER_H */ --- linux-azure-5.8-5.8.0.orig/drivers/infiniband/hw/vmbus-rdma/vmbus-rdma-144.0/vmbus_rdma.c +++ linux-azure-5.8-5.8.0/drivers/infiniband/hw/vmbus-rdma/vmbus-rdma-144.0/vmbus_rdma.c @@ -0,0 +1,3061 @@ +/* + * Copyright (c) 2014, Microsoft Corporation. + * + * Author: + * K. Y. Srinivasan + * + * This program is free software; you can redistribute it and/or modify it + * under the terms of the GNU General Public License version 2 as published + * by the Free Software Foundation. + * + * This program is distributed in the hope that it will be useful, but + * WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE, GOOD TITLE or + * NON INFRINGEMENT. See the GNU General Public License for more + * details. + * + * Bug fixes/enhancements: Long Li + */ + +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include + +#include "vmbus_rdma.h" + +/* + * We only have a single rdma device on the host; + * have a single receive buffer. + */ + + +static char hvnd_recv_buffer[PAGE_SIZE * 4]; + +static atomic_t irp_local_hdl; + +char *hvnd_get_op_name(int ioctl) +{ + switch (ioctl) { + case IOCTL_ND_PROVIDER_INIT: + return "IOCTL_ND_PROVIDER_INIT\n"; + case IOCTL_ND_PROVIDER_BIND_FILE: + return "IOCTL_ND_PROVIDER_BIND_FILE\n"; + case IOCTL_ND_ADAPTER_OPEN: + return "IOCTL_ND_ADAPTER_OPEN\n"; + + case IOCTL_ND_ADAPTER_CLOSE: + return "IOCTL_ND_ADAPTER_CLOSE\n"; + + case IOCTL_ND_ADAPTER_QUERY: + return "IOCTL_ND_ADAPTER_QUERY\n"; + + case IOCTL_ND_PD_CREATE: + return "IOCTL_ND_PD_CREATE\n"; + + case IOCTL_ND_PD_FREE: + return "IOCTL_ND_PD_FREE\n"; + + case IOCTL_ND_CQ_CREATE: + return "IOCTL_ND_CQ_CREATE\n"; + + case IOCTL_ND_CQ_FREE: + return "IOCTL_ND_CQ_FREE\n"; + case IOCTL_ND_CQ_CANCEL_IO: + return "IOCTL_ND_CQ_CANCEL_IO\n"; + case IOCTL_ND_CQ_GET_AFFINITY: + return "IOCTL_ND_CQ_GET_AAFINITY\n"; + case IOCTL_ND_CQ_MODIFY: + return "IOCTL_ND_CQ_MODIFY\n"; + + case IOCTL_ND_CQ_NOTIFY: + return "IOCTL_ND_CQ_NOTIFY\n"; + + + case IOCTL_ND_LISTENER_CREATE: + return "IOCTL_ND_LISTENER_CREATE\n"; + + case IOCTL_ND_LISTENER_FREE: + return "IOCTL_ND_LISTENER_FREE\n"; + + case IOCTL_ND_QP_FREE: + return "IOCTL_ND_QP_FREE\n"; + + case IOCTL_ND_CONNECTOR_CANCEL_IO: + return "IOCTL_ND_CONNECTOR_CANCEL_IO\n"; + + case IOCTL_ND_LISTENER_CANCEL_IO: + return "IOCTL_ND_LISTENER_CANCEL_IO\n"; + + case IOCTL_ND_LISTENER_BIND: + return "IOCTL_ND_LISTENER_BIND\n"; + + case IOCTL_ND_LISTENER_LISTEN: + return "IOCTL_ND_LISTENER_LISTEN\n"; + + case IOCTL_ND_LISTENER_GET_ADDRESS: + return "IOCTL_ND_LISTENER_GET_ADDRESS\n"; + + case IOCTL_ND_LISTENER_GET_CONNECTION_REQUEST: + return "IOCTL_ND_LISTENER_GET_CONNECTION_REQUEST\n"; + + + + case IOCTL_ND_CONNECTOR_CREATE: + return "IOCTL_ND_CONNECTOR_CREATE\n"; + + case IOCTL_ND_CONNECTOR_FREE: + return "IOCTL_ND_CONNECTOR_FREE\n"; + + case IOCTL_ND_CONNECTOR_BIND: + return "IOCTL_ND_CONNECTOR_BIND\n"; + + // KYS: ALERT: ASYNCH Operation + case IOCTL_ND_CONNECTOR_CONNECT: + return "IOCTL_ND_CONNECTOR_CONNECT\n"; + + case IOCTL_ND_CONNECTOR_COMPLETE_CONNECT: + return "IOCTL_ND_CONNECTOR_COMPLETE_CONNECT\n"; + + // KYS: ALERT: ASYNCH Operation + case IOCTL_ND_CONNECTOR_ACCEPT: + return "IOCTL_ND_CONNECTOR_ACCEPT\n"; + + case IOCTL_ND_CONNECTOR_REJECT: + return "IOCTL_ND_CONNECTOR_REJECT\n"; + + case IOCTL_ND_CONNECTOR_GET_READ_LIMITS: + return "IOCTL_ND_CONNECTOR_GET_READ_LIMITS\n"; + + case IOCTL_ND_CONNECTOR_GET_PRIVATE_DATA: + return "IOCTL_ND_CONNECTOR_GET_PRIVATE_DATA\n"; + + case IOCTL_ND_CONNECTOR_GET_PEER_ADDRESS: + return "IOCTL_ND_CONNECTOR_GET_PEER_ADDRESS\n"; + + case IOCTL_ND_CONNECTOR_GET_ADDRESS: + return "IOCTL_ND_CONNECTOR_GET_ADDRESS\n"; + + // KYS: ALERT: ASYNCH Operation + case IOCTL_ND_CONNECTOR_NOTIFY_DISCONNECT: + return "IOCTL_ND_CONNECTOR_NOTIFY_DISCONNECT\n"; + + // KYS: ALERT: ASYNCH Operation + case IOCTL_ND_CONNECTOR_DISCONNECT: + return "IOCTL_ND_CONNECTOR_DISCONNECT\n"; + + + + case IOCTL_ND_QP_CREATE: + return "IOCTL_ND_QP_CREATE\n"; + + case IOCTL_ND_MR_CREATE: + return "IOCTL_ND_MR_CREATE\n"; + + case IOCTL_ND_MR_FREE: + return "IOCTL_ND_MR_FREE\n"; + case IOCTL_ND_MR_REGISTER: + return "IOCTL_ND_MR_REGISTER\n"; + case IOCTL_ND_MR_DEREGISTER: + return "IOCTL_ND_MR_DEREGISTER\n"; + case IOCTL_ND_MR_CANCEL_IO: + return "IOCTL_ND_MR_CANCEL_IO\n"; + case IOCTL_ND_ADAPTER_QUERY_ADDRESS_LIST: + return "IOCTL_ND_ADAPTER_QUERY_ADDRESS_LIST\n"; + case IOCTL_ND_QP_FLUSH: + return "IOCTL_ND_QP_FLUSH\n"; + + default: + return "Unknown IOCTL\n"; + } +} +int get_irp_handle(struct hvnd_dev *nd_dev, u32 *local, void *irp_ctx) +{ + unsigned int local_handle; + int ret; + + local_handle = atomic_inc_return(&irp_local_hdl); + *local = local_handle; + + /* + * Now asssociate the local handle with the pointer. + */ + ret = insert_handle(nd_dev, &nd_dev->irpidr, irp_ctx, local_handle); + hvnd_debug("irp_ctx=%p local_handle=%u\n", irp_ctx, local_handle); + + if (ret) { + hvnd_error("insert_handle failed ret=%d\n", ret); + return ret; + } + + return 0; +} + +void put_irp_handle(struct hvnd_dev *nd_dev, u32 irp) +{ + remove_handle(nd_dev, &nd_dev->irpidr, irp); + +} + +static void init_pfn(u64 *pfn, void *addr, u32 length) +{ + int i; + u32 offset = offset_in_page(addr); + u32 num_pfn = DIV_ROUND_UP(offset + length, PAGE_SIZE); + + for (i = 0; i < num_pfn; i++) + pfn[i] = virt_to_phys((u8 *)addr + + (PAGE_SIZE * i)) >> PAGE_SHIFT; +} + + +static void user_va_init_pfn(u64 *pfn, struct ib_umem *umem) +{ + int entry; + struct scatterlist *sg; + int i = 0; + + for_each_sg(umem->sg_head.sgl, sg, umem->nmap, entry) { + pfn[i++] = page_to_pfn(sg_page(sg)); + } +} + +static u32 get_local_handle(void *p) +{ + u64 val = (unsigned long)p; + + return (u32)val; +} + +static int hvnd_send_pg_buffer(struct hvnd_dev *nd_dev, + struct vmbus_packet_mpb_array *desc, + u32 desc_size, + void *buffer, + u32 bufferlen, u64 cookie) +{ + int ret; + int t; + struct hvnd_cookie hvnd_cookie; + + hvnd_cookie.pkt = (void *)cookie; + init_completion(&hvnd_cookie.host_event); + + ret = vmbus_sendpacket_mpb_desc(nd_dev->hvdev->channel, + desc, + desc_size, + buffer, bufferlen, + (u64)(&hvnd_cookie)); + + if (ret) { + hvnd_error("vmbus_sendpacket_mpb_desc failed ret=%d\n", ret); + goto err; + } + + t = wait_for_completion_timeout(&hvnd_cookie.host_event, 500*HZ); + + if (t == 0) { + hvnd_error("wait_for_completion_timeout timed out\n"); + ret = -ETIMEDOUT; + } + +err: + return ret; +} + +static int hvnd_send_packet(struct hvnd_dev *nd_dev, void *buffer, + u32 bufferlen, u64 cookie, bool block) +{ + int ret; + int t; + struct hvnd_cookie hvnd_cookie; + + hvnd_cookie.pkt = (void *)cookie; + init_completion(&hvnd_cookie.host_event); + + ret = vmbus_sendpacket(nd_dev->hvdev->channel, buffer, bufferlen, + (u64)(&hvnd_cookie), VM_PKT_DATA_INBAND, + VMBUS_DATA_PACKET_FLAG_COMPLETION_REQUESTED); + + if (ret) { + hvnd_error("vmbus_send pkt failed: %d\n", ret); + goto err; + } + + if (!block) + return ret; + + t = wait_for_completion_timeout(&hvnd_cookie.host_event, 500*HZ); + + if (t == 0) { + hvnd_error("wait_for_completion_timeout timed out\n"); + ret = -ETIMEDOUT; + } + +err: + return ret; +} + +static int hvnd_send_pgbuf_ioctl_pkt(struct hvnd_dev *nd_dev, + struct vmbus_packet_mpb_array *desc, + u32 desc_size, + struct ndv_packet_hdr_control_1 *hdr, + u32 pkt_size, u64 cookie) +{ + int ret; + int ioctl; + + ioctl = hdr->io_cntrl_code; + + + ret = hvnd_send_pg_buffer(nd_dev, desc, desc_size, + hdr, pkt_size, cookie); + + if (ret) + return ret; + + if (hdr->pkt_hdr.status != 0) { + hvnd_error("IOCTL: %s failed; status is %x\n", + hvnd_get_op_name(ioctl), + hdr->pkt_hdr.status); + return -EINVAL; + } + + switch (hdr->io_status) { + case STATUS_SUCCESS: + case STATUS_PENDING: + return 0; + + default: + hvnd_error("IOCTL: %s failed io status is %x\n", + hvnd_get_op_name(ioctl), hdr->io_status); + return -EINVAL; + } +} + +int hvnd_send_ioctl_pkt(struct hvnd_dev *nd_dev, + struct ndv_packet_hdr_control_1 *hdr, + u32 pkt_size, u64 cookie) +{ + int ret; + int ioctl; + bool block; + + block = (hdr->irp_handle.val64 == 0) ? true : false; + + + ioctl = hdr->io_cntrl_code; + + ret = hvnd_send_packet(nd_dev, hdr, pkt_size, cookie, block); + + if (ret) + return ret; + + if (!block) + return ret; + + if (hdr->pkt_hdr.status != 0) { + hvnd_error("IOCTL: %s failed; status is %x\n", + hvnd_get_op_name(ioctl), hdr->pkt_hdr.status); + return -EINVAL; + } + + switch (hdr->io_status) { + case STATUS_SUCCESS: + case STATUS_PENDING: + return 0; + + default: + hvnd_warn("IOCTL: %s failed io status is %x\n", + hvnd_get_op_name(ioctl), hdr->io_status); + return -EINVAL; + } +} + +void hvnd_init_hdr(struct ndv_packet_hdr_control_1 *hdr, + u32 data_sz, u32 local, u32 remote, + u32 ioctl_code, + u32 ext_data_sz, u32 ext_data_offset, + u64 irp_handle) + +{ + int pkt_type; + + pkt_type = NDV_PKT_ID1_CONTROL; + NDV_ADD_PACKET_OPTION(pkt_type, NDV_PACKET_OPTIONS_REQUIRES_PASSIVE); + hdr->pkt_hdr.packet_type = pkt_type; + hdr->pkt_hdr.hdr_sz = sizeof(struct ndv_packet_hdr_control_1); + hdr->pkt_hdr.data_sz = data_sz; + + hdr->pkt_hdr.status = 0; + + hdr->file_handle.local = local; + hdr->file_handle.remote = remote; + hdr->irp_handle.val64 = irp_handle; + + hdr->io_cntrl_code = ioctl_code; + hdr->output_buf_sz = data_sz - ext_data_sz; + hdr->input_buf_sz = data_sz - ext_data_sz; + + hdr->input_output_buf_offset = 0; + + hdr->extended_data.size = ext_data_sz; + hdr->extended_data.offset = ext_data_offset; +} + + +int hvnd_create_file(struct hvnd_dev *nd_dev, void *uctx, + struct ndv_pkt_hdr_create_1 *create, u32 file_flags) +{ + int ret; + int pkt_type; + + + pkt_type = NDV_PKT_ID1_CREATE; + NDV_ADD_PACKET_OPTION(pkt_type, NDV_PACKET_OPTIONS_REQUIRES_PASSIVE); + create->pkt_hdr.packet_type = pkt_type; + create->pkt_hdr.hdr_sz = sizeof(struct ndv_pkt_hdr_create_1); + create->pkt_hdr.data_sz = 0; + + create->handle.local = get_local_handle(uctx); + create->access_mask = STANDARD_RIGHTS_ALL; + create->open_options = OPEN_EXISTING; + create->file_attributes = FILE_ATTRIBUTE_NORMAL | file_flags; + create->share_access = FILE_SHARE_ALL; + + ret = hvnd_send_packet(nd_dev, create, + sizeof(struct ndv_pkt_hdr_create_1), + (unsigned long)create, true); + return ret; +} + +int hvnd_cleanup_file(struct hvnd_dev *nd_dev, u32 local, u32 remote) +{ + int ret; + int pkt_type; + struct ndv_pkt_hdr_cleanup_1 cleanup_pkt; + + + pkt_type = NDV_PKT_ID1_CLEANUP; + NDV_ADD_PACKET_OPTION(pkt_type, NDV_PACKET_OPTIONS_REQUIRES_PASSIVE); + + cleanup_pkt.pkt_hdr.packet_type = pkt_type; + cleanup_pkt.pkt_hdr.hdr_sz = sizeof(struct ndv_pkt_hdr_create_1); + cleanup_pkt.pkt_hdr.data_sz = 0; + + cleanup_pkt.handle.local = local; + cleanup_pkt.handle.remote = remote; + + ret = hvnd_send_packet(nd_dev, &cleanup_pkt, + sizeof(struct ndv_pkt_hdr_create_1), + (unsigned long)&cleanup_pkt, true); + return ret; +} + + +static int hvnd_do_ioctl(struct hvnd_dev *nd_dev, u32 ioctl, + struct pkt_nd_provider_ioctl *pkt, + union ndv_context_handle *hdr_handle, + struct nd_handle *ioctl_handle, + u8 *buf, u32 buf_len, bool c_in, bool c_out, u64 irp_val) +{ + int ret; + int pkt_type; + + pkt_type = NDV_PKT_ID1_CONTROL; + NDV_ADD_PACKET_OPTION(pkt_type, NDV_PACKET_OPTIONS_REQUIRES_PASSIVE); + + pkt->hdr.pkt_hdr.packet_type = pkt_type; + pkt->hdr.pkt_hdr.hdr_sz = sizeof(struct ndv_packet_hdr_control_1); + pkt->hdr.pkt_hdr.data_sz = (sizeof(struct pkt_nd_provider_ioctl) - + sizeof(struct ndv_packet_hdr_control_1)); + + pkt->hdr.file_handle.local = hdr_handle->local; + pkt->hdr.file_handle.remote = hdr_handle->remote; + hvnd_debug("create handle local: %x remote: %x\n", + hdr_handle->local, hdr_handle->remote); + + pkt->hdr.irp_handle.val64 = irp_val; + + pkt->hdr.io_cntrl_code = ioctl; + pkt->hdr.output_buf_sz = sizeof(struct nd_ioctl); + pkt->hdr.input_buf_sz = sizeof(struct nd_ioctl); + pkt->hdr.input_output_buf_offset = 0; + memset(&pkt->ioctl.handle, 0, sizeof(struct nd_handle)); + pkt->ioctl.handle.version = ND_VERSION_1; + + switch (ioctl) { + case IOCTL_ND_PROVIDER_BIND_FILE: + pkt->ioctl.handle.handle = ioctl_handle->handle; + break; + default: + break; + }; + + /* + * Copy the input buffer, if needed. + */ + + if (c_in && (buf != NULL)) + memcpy(pkt->ioctl.raw_buffer, buf, buf_len); + + ret = hvnd_send_packet(nd_dev, pkt, + sizeof(struct pkt_nd_provider_ioctl), + (unsigned long)pkt, true); + + if (ret) + return ret; + + if (c_out && (buf != NULL)) + memcpy(buf, pkt->ioctl.raw_buffer, buf_len); + + return ret; +} + +static int idr_callback(int id, void *p, void *data) +{ + if (p == data) + return id; + return 0; +} + +void remove_uctx(struct hvnd_dev *nd_dev, struct hvnd_ucontext *uctx) +{ + int pid = current_pid(); + unsigned long flags; + int id; + + if (get_uctx(nd_dev, pid) == uctx) + remove_handle(nd_dev, &nd_dev->uctxidr, pid); + else { + hvnd_warn("uctx %p not found on pid %d, doing a idr search\n", + uctx, current_pid()); + + spin_lock_irqsave(&nd_dev->id_lock, flags); + id = idr_for_each(&nd_dev->uctxidr, idr_callback, uctx); + spin_unlock_irqrestore(&nd_dev->id_lock, flags); + + if (id) + remove_handle(nd_dev, &nd_dev->uctxidr, id); + else { + hvnd_error("uctx %p not found in idr table\n", uctx); + return; + } + } + + kfree(uctx); +} + +int hvnd_close_adaptor(struct hvnd_dev *nd_dev, struct hvnd_ucontext *uctx) +{ + int ret; + + /* + * First close the adaptor. + */ + + ret = hvnd_free_handle(nd_dev, uctx, + uctx->adaptor_hdl, + IOCTL_ND_ADAPTER_CLOSE); + + if (ret) + hvnd_error("Adaptor close failed; ret is %x\n", ret); + + /* + * Now close the two files we created. + */ + + ret = hvnd_cleanup_file(nd_dev, uctx->file_handle_ovl.local, + uctx->file_handle_ovl.remote); + + if (ret) + hvnd_error("file cleanup failed; ret is %x\n", ret); + + ret = hvnd_cleanup_file(nd_dev, uctx->file_handle.local, + uctx->file_handle.remote); + + if (ret) + hvnd_error("File cleanup failed; ret is %x\n", ret); + + /* + * Remove the uctx from the ID table. + */ + remove_uctx(nd_dev, uctx); + + return 0; +} + +int hvnd_open_adaptor(struct hvnd_dev *nd_dev, struct hvnd_ucontext *uctx) +{ + int ret; + struct pkt_nd_provider_ioctl *pr_init = &uctx->pr_init_pkt; + int pkt_type; + struct nd_handle ioctl_handle; + struct pkt_nd_open_adapter *pr_o_adap = &uctx->o_adap_pkt; + + ret = hvnd_create_file(nd_dev, uctx, &uctx->create_pkt, 0); + if (ret) { + hvnd_error("hvnd_create_file failed ret=%d\n", ret); + goto error_cr; + } + + if (uctx->create_pkt.pkt_hdr.status != 0) { + hvnd_error("create File failed; status is %d\n", + uctx->create_pkt.pkt_hdr.status); + ret = -EINVAL; + goto error_cr; + } + + uctx->file_handle.local = uctx->create_pkt.handle.local; + uctx->file_handle.remote = uctx->create_pkt.handle.remote; + hvnd_debug("INITIALIZE PROVIDER\n"); + /* + * Now Initialize the Provider. + */ + ioctl_handle.handle = 0; + ret = hvnd_do_ioctl(nd_dev, IOCTL_ND_PROVIDER_INIT, pr_init, + &uctx->create_pkt.handle, + &ioctl_handle, NULL, 0, false, false, 0); + + if (ret) { + ret = -EINVAL; + goto error_pr_init; + } + + if (pr_init->hdr.pkt_hdr.status != 0) { + hvnd_error("Provider INIT failed; status is %d\n", + pr_init->hdr.pkt_hdr.status); + ret = -EINVAL; + goto error_pr_init; + } + + if (pr_init->hdr.io_status != 0) { + hvnd_error("Provider INIT failed; io status is %d\n", + pr_init->hdr.io_status); + ret = -EINVAL; + goto error_pr_init; + } + + /* + * Now create the overlap file. + */ + + hvnd_debug("CREATE OVERLAP FILE\n"); + ret = hvnd_create_file(nd_dev, uctx, &uctx->create_pkt_ovl, + FILE_FLAG_OVERLAPPED); + if (ret) { + hvnd_error("hvnd_create_file failed ret=%d\n", ret); + goto error_pr_init; + } + + if (uctx->create_pkt_ovl.pkt_hdr.status != 0) { + hvnd_error("create Overlap File failed; status is %d\n", + uctx->create_pkt_ovl.pkt_hdr.status); + ret = -EINVAL; + goto error_pr_init; + } + uctx->file_handle_ovl.local = uctx->create_pkt_ovl.handle.local; + uctx->file_handle_ovl.remote = uctx->create_pkt_ovl.handle.remote; + + /* + * Now bind the two file handles together. + */ + + hvnd_debug("BIND FILE IOCTL remote handle: %d local handle: %d\n", + uctx->create_pkt_ovl.handle.remote, + uctx->create_pkt_ovl.handle.local); + + ioctl_handle.handle = uctx->create_pkt_ovl.handle.val64; + ret = hvnd_do_ioctl(nd_dev, IOCTL_ND_PROVIDER_BIND_FILE, pr_init, + &uctx->create_pkt.handle, + &ioctl_handle, NULL, 0, false, false, 0); + + if (ret) { + ret = -EINVAL; + goto error_file_bind; + } + if (pr_init->hdr.pkt_hdr.status != 0) { + hvnd_error("Provider File bind failed; status is %d\n", + pr_init->hdr.pkt_hdr.status); + ret = -EINVAL; + goto error_file_bind; + } + if (pr_init->hdr.io_status != 0) { + hvnd_error("Provider INIT failed; io status is %d\n", + pr_init->hdr.io_status); + ret = -EINVAL; + goto error_file_bind; + } + + /* + * Now open the adaptor. + */ + + hvnd_debug("OPENING THE ADAPTOR\n"); + + pkt_type = NDV_PKT_ID1_CONTROL; + NDV_ADD_PACKET_OPTION(pkt_type, NDV_PACKET_OPTIONS_REQUIRES_PASSIVE); + pr_o_adap->hdr.pkt_hdr.packet_type = pkt_type; + pr_o_adap->hdr.pkt_hdr.hdr_sz = sizeof(struct ndv_packet_hdr_control_1); + pr_o_adap->hdr.pkt_hdr.data_sz = sizeof(struct pkt_nd_open_adapter) - + sizeof(struct ndv_packet_hdr_control_1); + + pr_o_adap->hdr.pkt_hdr.status = 0; + + hvnd_debug("hdr sz is %d\n", pr_o_adap->hdr.pkt_hdr.hdr_sz); + hvnd_debug("data sz is %d\n", pr_o_adap->hdr.pkt_hdr.data_sz); + + pr_o_adap->hdr.file_handle.local = uctx->create_pkt.handle.local; + pr_o_adap->hdr.file_handle.remote = uctx->create_pkt.handle.remote; + hvnd_debug("create handle local is %x\n", + uctx->create_pkt.handle.local); + hvnd_debug("create handle remote is %x\n", + uctx->create_pkt.handle.remote); + pr_o_adap->hdr.irp_handle.val64 = 0; + + pr_o_adap->hdr.io_cntrl_code = IOCTL_ND_ADAPTER_OPEN; + pr_o_adap->hdr.output_buf_sz = pr_o_adap->hdr.pkt_hdr.data_sz - + sizeof(struct extended_data_oad); + pr_o_adap->hdr.input_buf_sz = pr_o_adap->hdr.pkt_hdr.data_sz - + sizeof(struct extended_data_oad); + + hvnd_debug("output buf sz is %d\n", pr_o_adap->hdr.output_buf_sz); + hvnd_debug("input buf sz is %d\n", pr_o_adap->hdr.input_buf_sz); + hvnd_debug("packet size is %d\n", + (int)sizeof(struct pkt_nd_open_adapter)); + + pr_o_adap->hdr.input_output_buf_offset = 0; + + + pr_o_adap->hdr.extended_data.size = sizeof(struct extended_data_oad); + pr_o_adap->hdr.extended_data.offset = + offsetof(struct pkt_nd_open_adapter, ext_data) - + sizeof(struct ndv_packet_hdr_control_1); + + hvnd_debug("size of the extended data size: %d\n", + (int)sizeof(struct extended_data_oad)); + hvnd_debug("offset of extended data: %d\n", + pr_o_adap->hdr.extended_data.offset); + + /* + * Now fill out the ioctl section. + */ + + pr_o_adap->ioctl.input.version = ND_VERSION_1; + pr_o_adap->ioctl.input.ce_mapping_cnt = + RTL_NUMBER_OF(pr_o_adap->mappings.ctx_input.mappings); + + hvnd_debug("ce_mapping cnt is %d\n", + pr_o_adap->ioctl.input.ce_mapping_cnt); + + pr_o_adap->ioctl.input.cb_mapping_offset = sizeof(union oad_ioctl); + hvnd_debug("cb_mapping offset is %d\n", + pr_o_adap->ioctl.input.cb_mapping_offset); + pr_o_adap->ioctl.input.adapter_id = (u64)nd_dev; + + pr_o_adap->mappings.ctx_input.mappings[IBV_GET_CONTEXT_UAR].map_type = ND_MAP_IOSPACE; + pr_o_adap->mappings.ctx_input.mappings[IBV_GET_CONTEXT_UAR].map_io_space.cache_type = ND_NON_CACHED; + pr_o_adap->mappings.ctx_input.mappings[IBV_GET_CONTEXT_UAR].map_io_space.cb_length = 4096; + + pr_o_adap->mappings.ctx_input.mappings[IBV_GET_CONTEXT_BF].map_type = ND_MAP_IOSPACE; + pr_o_adap->mappings.ctx_input.mappings[IBV_GET_CONTEXT_BF].map_io_space.cache_type = ND_WRITE_COMBINED; + pr_o_adap->mappings.ctx_input.mappings[IBV_GET_CONTEXT_BF].map_io_space.cb_length = 4096; + + /* + * Fill in the extended data. + */ + pr_o_adap->ext_data.cnt = IBV_GET_CONTEXT_MAPPING_MAX; + + ret = hvnd_send_packet(nd_dev, pr_o_adap, + sizeof(struct pkt_nd_open_adapter), + (unsigned long)pr_o_adap, true); + if (ret) { + ret = -EINVAL; + goto error_file_bind; + } + + if (pr_o_adap->hdr.pkt_hdr.status != 0) { + hvnd_error("Open adaptor failed; status is %d\n", + pr_o_adap->hdr.pkt_hdr.status); + ret = -EINVAL; + goto error_file_bind; + } + + if (pr_o_adap->hdr.io_status != 0) { + hvnd_error("Open adaptor failed;io status is %d\n", + pr_o_adap->hdr.io_status); + ret = -EINVAL; + goto error_file_bind; + } + + /* + * Copy the necessary response from the host. + */ + + uctx->adaptor_hdl = pr_o_adap->ioctl.resrc_desc.handle; + + + hvnd_debug("adaptor handle: %p\n", (void *)uctx->adaptor_hdl); + + uctx->uar_base = + pr_o_adap->mappings.ctx_output.mapping_results[IBV_GET_CONTEXT_UAR].info; + hvnd_debug("uar base: %p\n", (void *)uctx->uar_base); + + uctx->bf_base = + pr_o_adap->mappings.ctx_output.mapping_results[IBV_GET_CONTEXT_BF].info; + hvnd_debug("bf base: %p\n", (void *)uctx->bf_base); + + uctx->bf_buf_size = + pr_o_adap->mappings.ctx_output.bf_buf_size; + hvnd_debug("bf buf size: %d\n", uctx->bf_buf_size); + + uctx->bf_offset = + pr_o_adap->mappings.ctx_output.bf_offset; + hvnd_debug("bf offset: %d\n", uctx->bf_offset); + + uctx->cqe_size = + pr_o_adap->mappings.ctx_output.cqe_size; + hvnd_debug("cqe size: %d\n", uctx->cqe_size); + + uctx->max_qp_wr = + pr_o_adap->mappings.ctx_output.max_qp_wr; + hvnd_debug("max qp wr: %d\n", uctx->max_qp_wr); + + uctx->max_sge = + pr_o_adap->mappings.ctx_output.max_sge; + hvnd_debug("max sge: %d\n", uctx->max_sge); + + uctx->max_cqe = + pr_o_adap->mappings.ctx_output.max_cqe; + hvnd_debug("max cqe: %d\n", uctx->max_cqe); + + uctx->num_qps = + pr_o_adap->mappings.ctx_output.qp_tab_size; + hvnd_debug("num qps: %d\n", uctx->num_qps); + + /* + * Now query the adaptor and stash away the adaptor info. + */ + + ret = hvnd_query_adaptor(nd_dev, uctx); + if (ret) { + hvnd_error("Query Adaptor failed; ret is %d\n", ret); + goto query_err; + } + + return ret; + +query_err: + hvnd_free_handle(nd_dev, uctx, + uctx->adaptor_hdl, + IOCTL_ND_ADAPTER_CLOSE); + + hvnd_error("Open Adaptor Failed!!\n"); + +error_file_bind: + hvnd_cleanup_file(nd_dev, uctx->file_handle_ovl.local, + uctx->file_handle_ovl.remote); + +error_pr_init: + hvnd_cleanup_file(nd_dev, uctx->file_handle.local, + uctx->file_handle.remote); + +error_cr: + if (get_uctx(nd_dev, current_pid()) != NULL) + remove_handle(nd_dev, &nd_dev->uctxidr, current_pid()); + + return ret; +} + +int hvnd_create_cq(struct hvnd_dev *nd_dev, struct hvnd_ucontext *uctx, + struct hvnd_cq *cq) +{ + int ret; + struct pkt_nd_create_cq *pkt; + int num_pfn, num_db_pfn, num_sn_pfn; + int cq_pkt_size; + unsigned int cq_buf_size, offset; + u32 ext_data_sz; + u32 ext_data_offset; + + /* + * Now create CQ. + * First compute the number of PFNs we need to accomodate: + * One each for door bell and arm_sn and pages in cq buffer. + */ + cq_buf_size = (cq->entries * uctx->cqe_size); + offset = offset_in_page(cq->cq_buf); + num_pfn = DIV_ROUND_UP(offset + cq_buf_size, PAGE_SIZE); + + offset = offset_in_page(cq->db_addr); + num_db_pfn = DIV_ROUND_UP(offset + 8, PAGE_SIZE); + + offset = offset_in_page(&cq->arm_sn); + num_sn_pfn = DIV_ROUND_UP(offset + 4, PAGE_SIZE); + + cq_pkt_size = sizeof(struct pkt_nd_create_cq) + + (num_pfn * sizeof(u64)); + + ext_data_sz = sizeof(struct create_cq_ext_data) + + (num_pfn * sizeof(u64)); + ext_data_offset = offsetof(struct pkt_nd_create_cq, ext_data) - + sizeof(struct ndv_packet_hdr_control_1); + + hvnd_debug("CREATE CQ, num user addr pfns is %d\n", num_pfn); + hvnd_debug("CREATE CQ, num db pfns is %d\n", num_db_pfn); + + pkt = kzalloc(cq_pkt_size, GFP_KERNEL); + + if (!pkt) + return -ENOMEM; + + hvnd_init_hdr(&pkt->hdr, + (cq_pkt_size - + sizeof(struct ndv_packet_hdr_control_1)), + uctx->create_pkt.handle.local, + uctx->create_pkt.handle.remote, + IOCTL_ND_CQ_CREATE, + ext_data_sz, + ext_data_offset, + 0); + + /* + * Now fill out the ioctl section. + */ + + pkt->ioctl.input.version = ND_VERSION_1; + pkt->ioctl.input.queue_depth = cq->entries; + pkt->ioctl.input.ce_mapping_cnt = MLX4_IB_CREATE_CQ_MAPPING_MAX; + pkt->ioctl.input.cb_mapping_offset = sizeof(union create_cq_ioctl); + + hvnd_debug("ce_mapping cnt is %d\n", pkt->ioctl.input.ce_mapping_cnt); + hvnd_debug("cb_mapping offset is %d\n", + pkt->ioctl.input.cb_mapping_offset); + + pkt->ioctl.input.adapter_handle = uctx->adaptor_hdl; + pkt->ioctl.input.affinity.mask = 0; + pkt->ioctl.input.affinity.group = -1; + + // 0 for usermode CQ arming + pkt->mappings.cq_in.flags = 0; + + pkt->mappings.cq_in.mappings[MLX4_IB_CREATE_CQ_BUF].map_memory.map_type = ND_MAP_MEMORY; + pkt->mappings.cq_in.mappings[MLX4_IB_CREATE_CQ_BUF].map_memory.access_type = ND_MODIFY_ACCESS; + pkt->mappings.cq_in.mappings[MLX4_IB_CREATE_CQ_BUF].map_memory.address = (u64)cq->cq_buf; + pkt->mappings.cq_in.mappings[MLX4_IB_CREATE_CQ_BUF].map_memory.cb_length = (cq->entries * uctx->cqe_size); + + pkt->mappings.cq_in.mappings[MLX4_IB_CREATE_CQ_DB].map_memory.map_type = ND_MAP_MEMORY_COALLESCE; + pkt->mappings.cq_in.mappings[MLX4_IB_CREATE_CQ_DB].map_memory.access_type = ND_WRITE_ACCESS; + pkt->mappings.cq_in.mappings[MLX4_IB_CREATE_CQ_DB].map_memory.address = (u64)cq->db_addr; + pkt->mappings.cq_in.mappings[MLX4_IB_CREATE_CQ_DB].map_memory.cb_length = 8; //size of two ints + + + pkt->mappings.cq_in.mappings[MLX4_IB_CREATE_CQ_ARM_SN].map_memory.map_type = ND_MAP_MEMORY; + pkt->mappings.cq_in.mappings[MLX4_IB_CREATE_CQ_ARM_SN].map_memory.access_type = ND_MODIFY_ACCESS; + pkt->mappings.cq_in.mappings[MLX4_IB_CREATE_CQ_ARM_SN].map_memory.address = (u64)&cq->arm_sn; + pkt->mappings.cq_in.mappings[MLX4_IB_CREATE_CQ_ARM_SN].map_memory.cb_length = 4; //size of one int + /* + * Fill in the extended data. + */ + + pkt->ext_data.cnt = 3; + pkt->ext_data.fields[MLX4_IB_CREATE_CQ_BUF].size = (sizeof(struct gpa_range) + (num_pfn * sizeof(u64))); + pkt->ext_data.fields[MLX4_IB_CREATE_CQ_BUF].offset = offsetof(struct create_cq_ext_data, cqbuf_gpa); + + pkt->ext_data.fields[MLX4_IB_CREATE_CQ_DB].size = sizeof(struct cq_db_gpa); + pkt->ext_data.fields[MLX4_IB_CREATE_CQ_DB].offset = offsetof(struct create_cq_ext_data, db_gpa); + + pkt->ext_data.fields[MLX4_IB_CREATE_CQ_ARM_SN].size = sizeof(struct cq_db_gpa); + pkt->ext_data.fields[MLX4_IB_CREATE_CQ_ARM_SN].offset = offsetof(struct create_cq_ext_data, sn_gpa); + + /* + * Fill up the gpa range for cq buffer. + */ + + pkt->ext_data.db_gpa.byte_count = 8; + pkt->ext_data.db_gpa.byte_offset = offset_in_page(cq->db_addr); + user_va_init_pfn(&pkt->ext_data.db_gpa.pfn_array[0], cq->db_umem); + + pkt->ext_data.sn_gpa.byte_count = 4; + pkt->ext_data.sn_gpa.byte_offset = offset_in_page(&cq->arm_sn); + init_pfn(&pkt->ext_data.sn_gpa.pfn_array[0], + &cq->arm_sn, + 4); + + pkt->ext_data.cqbuf_gpa.byte_count = (cq->entries * uctx->cqe_size); + pkt->ext_data.cqbuf_gpa.byte_offset = offset_in_page(cq->cq_buf); + user_va_init_pfn(&pkt->ext_data.cqbuf_gpa.pfn_array[0], cq->umem); + + ret = hvnd_send_ioctl_pkt(nd_dev, &pkt->hdr, cq_pkt_size, (u64)pkt); + + if (ret) + goto cr_cq_err; + + /* + * Copy the necessary response from the host. + */ + cq->cqn = pkt->mappings.cq_resp.cqn; + cq->cqe = pkt->mappings.cq_resp.cqe; + cq->cq_handle = pkt->ioctl.resrc_desc.handle; + + ret = insert_handle(nd_dev, &nd_dev->cqidr, cq, cq->cqn); + + if (ret) + goto cr_cq_err; + hvnd_debug("CQ create after success cqn is %d\n", cq->cqn); + hvnd_debug("CQ create after success cqe is %d\n", cq->cqe); + hvnd_debug("CQ create after success cq handle is %p\n", + (void *)cq->cq_handle); + +cr_cq_err: + kfree(pkt); + return ret; +} + +int hvnd_destroy_cq(struct hvnd_dev *nd_dev, struct hvnd_cq *cq) +{ + struct pkt_nd_free_cq free_cq_pkt; + + remove_handle(nd_dev, &nd_dev->cqidr, cq->cqn); + + memset(&free_cq_pkt, 0, sizeof(free_cq_pkt)); + hvnd_init_hdr(&free_cq_pkt.hdr, + sizeof(struct pkt_nd_free_cq) - + sizeof(struct ndv_packet_hdr_control_1), + cq->uctx->create_pkt.handle.local, + cq->uctx->create_pkt.handle.remote, + IOCTL_ND_CQ_FREE, 0, 0, 0); + + /* + * Now fill in the ioctl section. + */ + free_cq_pkt.ioctl.in.version = ND_VERSION_1; + free_cq_pkt.ioctl.in.handle = cq->cq_handle; + + return hvnd_send_ioctl_pkt(nd_dev, &free_cq_pkt.hdr, + sizeof(struct pkt_nd_free_cq), + (u64)&free_cq_pkt); +} + + +int hvnd_notify_cq(struct hvnd_dev *nd_dev, struct hvnd_cq *cq, + u32 notify_type, u64 irp_handle) +{ + struct pkt_nd_notify_cq notify_cq_pkt; + int ret; + union ndv_context_handle irp_fhandle; + + irp_fhandle.local = cq->ep_object.local_irp; + + // KYS try to avoid having to zero everything + memset(¬ify_cq_pkt, 0, sizeof(notify_cq_pkt)); + hvnd_init_hdr(¬ify_cq_pkt.hdr, + sizeof(struct pkt_nd_notify_cq) - + sizeof(struct ndv_packet_hdr_control_1), + cq->uctx->create_pkt.handle.local, + cq->uctx->create_pkt.handle.remote, + IOCTL_ND_CQ_NOTIFY, 0, 0, irp_fhandle.val64); + + /* + * Now fill in the ioctl section. + */ + notify_cq_pkt.ioctl.in.version = ND_VERSION_1; + notify_cq_pkt.ioctl.in.cq_handle = cq->cq_handle; + notify_cq_pkt.ioctl.in.type = notify_type; + + + ret = hvnd_send_ioctl_pkt(nd_dev, ¬ify_cq_pkt.hdr, + sizeof(struct pkt_nd_notify_cq), + (u64)¬ify_cq_pkt); + + return ret; +} + +/* + * Memory region operations. + */ +int hvnd_cr_mr(struct hvnd_dev *nd_dev, struct hvnd_ucontext *uctx, + u64 pd_handle, u64 *mr_handle) +{ + struct pkt_nd_create_mr pkt; + int ret; + + // KYS try to avoid having to zero everything + memset(&pkt, 0, sizeof(pkt)); + hvnd_init_hdr(&pkt.hdr, + sizeof(pkt) - + sizeof(struct ndv_packet_hdr_control_1), + uctx->create_pkt.handle.local, + uctx->create_pkt.handle.remote, + IOCTL_ND_MR_CREATE, 0, 0, 0); + + /* + * Now fill in the ioctl section. + */ + pkt.ioctl.in.version = ND_VERSION_1; + pkt.ioctl.in.handle = pd_handle; + hvnd_debug("PD handle is %p\n", (void *)pd_handle); + pkt.ioctl.in.reserved = 0; + + ret = hvnd_send_ioctl_pkt(nd_dev, &pkt.hdr, sizeof(pkt), (u64)&pkt); + + if (ret) + goto err; + + /* + * Copy the handle. + */ + hvnd_debug("mr handle is %p\n", (void *)pkt.ioctl.out); + *mr_handle = pkt.ioctl.out; + + return 0; + +err: + hvnd_error("create mr failed: %d\n", ret); + return ret; + +} + +int hvnd_free_mr(struct hvnd_dev *nd_dev, struct hvnd_ucontext *uctx, + u64 handle) +{ + return hvnd_free_handle(nd_dev, uctx, handle, IOCTL_ND_MR_FREE); +} + +int hvnd_deregister_mr(struct hvnd_dev *nd_dev, struct hvnd_ucontext *uctx, + u64 handle) +{ + struct pkt_nd_deregister_mr pkt; + int ret; + + // KYS try to avoid having to zero everything + memset(&pkt, 0, sizeof(pkt)); + hvnd_init_hdr(&pkt.hdr, + sizeof(pkt) - + sizeof(struct ndv_packet_hdr_control_1), + uctx->create_pkt.handle.local, + uctx->create_pkt.handle.remote, + IOCTL_ND_MR_DEREGISTER, 0, 0, 0); + + /* + * Now fill in the ioctl section. + */ + pkt.ioctl.in.version = ND_VERSION_1; + pkt.ioctl.in.handle = handle; + pkt.ioctl.in.reserved = 0; + + ret = hvnd_send_ioctl_pkt(nd_dev, &pkt.hdr, sizeof(pkt), (u64)&pkt); + + if (ret) + goto err; + + return 0; + +err: + hvnd_error("de-register mr failed: %d\n", ret); + return ret; + +} + +static inline u32 hvnd_convert_access(int acc) +{ + return (acc & IB_ACCESS_REMOTE_WRITE ? ND_MR_FLAG_ALLOW_REMOTE_WRITE : 0) | + (acc & IB_ACCESS_REMOTE_READ ? ND_MR_FLAG_ALLOW_REMOTE_READ : 0) | + (acc & IB_ACCESS_LOCAL_WRITE ? ND_MR_FLAG_ALLOW_LOCAL_WRITE : 0); +} + + +int hvnd_mr_register(struct hvnd_dev *nd_dev, struct hvnd_ucontext *uctx, + struct hvnd_mr *mr) +{ + struct pkt_nd_register_mr pkt; + int ret; + struct hv_mpb_array *pb; + struct vmbus_packet_mpb_array *tpb; + int sz_leaf; + int num_pgs; + int i = 0; + int ext_data_sz; + u32 acc_flags; + u32 desc_size; + int pkt_type; + + /* + * The user address is passed in via a two level structure. + * An Array of struct hv_page_buffer will be used to describe + * the user memory. The pages containing this array will be descibed + * in another array of struct hv_page_buffer. We pass this seconed level + * array to the host. + */ + + hvnd_debug("ib_umem_page_count(mr->umem)=%d\n", + ib_umem_page_count(mr->umem)); + + sz_leaf = ib_umem_page_count(mr->umem) * sizeof(u64) + + sizeof(struct hv_mpb_array); + + pb = (struct hv_mpb_array *) __get_free_pages(GFP_KERNEL|__GFP_ZERO, + get_order(sz_leaf)); + + if (pb == NULL) + return -ENOMEM; + /* + * Allocate an array of hv_page_buffer to describe the first level. + */ + num_pgs = DIV_ROUND_UP(sz_leaf, PAGE_SIZE); + hvnd_debug("num pages in the top array is %d\n", num_pgs); + + desc_size = (num_pgs * sizeof(u64) + + sizeof(struct vmbus_packet_mpb_array)); + tpb = (struct vmbus_packet_mpb_array *) + __get_free_pages(GFP_KERNEL|__GFP_ZERO, get_order(desc_size)); + + if (tpb == NULL) { + free_pages((unsigned long)pb, get_order(sz_leaf)); + return -ENOMEM; + } + + hvnd_debug("sz leaf: %d; pgs in top %d\n", sz_leaf, num_pgs); + + /* + * Now fill the leaf level array. + */ + pb->len = mr->length; + pb->offset = offset_in_page(mr->start); + user_va_init_pfn(pb->pfn_array, mr->umem); + + /* + * Now fill out the top level array. + */ + for (i = 0; i < num_pgs; i++) { + tpb->range.pfn_array[i] = virt_to_phys( + (u8 *)pb + (PAGE_SIZE * i)) >> PAGE_SHIFT; + hvnd_debug("virtual address = %p\n", + (u8 *)pb + (PAGE_SIZE * i)); + hvnd_debug("physical address = %llx\n", + virt_to_phys((u8 *)pb + (PAGE_SIZE * i))); + hvnd_debug("tpb->range.pfn_array[%d]=%llx\n", i, + tpb->range.pfn_array[i]); + } + + tpb->range.offset = 8; + tpb->range.len = ib_umem_page_count(mr->umem) * sizeof(u64); + + // KYS try to avoid having to zero everything + memset(&pkt, 0, sizeof(pkt)); + ext_data_sz = (ib_umem_page_count(mr->umem) * sizeof(u64)); + acc_flags = ND_MR_FLAG_DO_NOT_SECURE_VM | hvnd_convert_access(mr->acc); + hvnd_debug("memory register access flags are: %x\n", acc_flags); + + hvnd_init_hdr(&pkt.hdr, + sizeof(pkt) - + sizeof(struct ndv_packet_hdr_control_1), + uctx->create_pkt.handle.local, + uctx->create_pkt.handle.remote, + IOCTL_ND_MR_REGISTER, 0, 0, 0); + + /* + * The memory registration call uses a different mechanism to pass + * pfn information. + */ + + pkt_type = pkt.hdr.pkt_hdr.packet_type; + NDV_ADD_PACKET_OPTION(pkt_type, NDV_PACKET_OPTION_EXTERNAL_DATA); + pkt.hdr.pkt_hdr.packet_type = pkt_type; + + pkt.hdr.extended_data.size = ext_data_sz; + pkt.hdr.extended_data.offset = 0; + /* + * Now fill out the ioctl. + */ + + pkt.ioctl.in.header.version = ND_VERSION_1; + pkt.ioctl.in.header.flags = acc_flags; + pkt.ioctl.in.header.cb_length = mr->length; + pkt.ioctl.in.header.target_addr = mr->virt; + pkt.ioctl.in.header.mr_handle = mr->mr_handle; + pkt.ioctl.in.address = mr->virt; + + /* + * Now send the packet to the host. + */ + + ret = hvnd_send_pgbuf_ioctl_pkt(nd_dev, + tpb, desc_size, + &pkt.hdr, + sizeof(pkt), + (unsigned long)&pkt); + + if (ret) + goto err; + + hvnd_info("MR REGISTRATION SUCCESS\n"); + /* + * Copy the mr registration data. + */ + hvnd_debug("mr registration lkey %x\n", pkt.ioctl.out.lkey); + hvnd_debug("mr registration rkey %x\n", pkt.ioctl.out.rkey); + + mr->mr_lkey = pkt.ioctl.out.lkey; + mr->mr_rkey = pkt.ioctl.out.rkey; + + mr->ibmr.lkey = mr->mr_lkey; + mr->ibmr.rkey = be32_to_cpu(mr->mr_rkey); + hvnd_debug("ibmr registration lkey %x\n", mr->ibmr.lkey); + hvnd_debug("ibmr registration rkey %x\n", mr->ibmr.rkey); + + free_pages((unsigned long)pb, get_order(sz_leaf)); + free_pages((unsigned long)tpb, get_order(desc_size)); + + return 0; + +err: + free_pages((unsigned long)pb, get_order(sz_leaf)); + free_pages((unsigned long)tpb, get_order(desc_size)); + + hvnd_error("mr register failed: %d\n", ret); + return ret; +} + +/* + * Listener operations. + */ +int hvnd_cr_listener(struct hvnd_dev *nd_dev, struct hvnd_ucontext *uctx, + u64 *listener_handle) +{ + struct pkt_nd_cr_listener pkt; + int ret; + + // KYS try to avoid having to zero everything + memset(&pkt, 0, sizeof(pkt)); + hvnd_init_hdr(&pkt.hdr, + sizeof(pkt) - + sizeof(struct ndv_packet_hdr_control_1), + uctx->create_pkt.handle.local, + uctx->create_pkt.handle.remote, + IOCTL_ND_LISTENER_CREATE, 0, 0, 0); + + /* + * Now fill in the ioctl section. + */ + pkt.ioctl.in.hdr.version = ND_VERSION_1; + pkt.ioctl.in.hdr.handle = uctx->adaptor_hdl; + hvnd_debug("Adaptor handle is %p\n", (void *)uctx->adaptor_hdl); + pkt.ioctl.in.hdr.reserved = 0; + pkt.ioctl.in.to_semantics = false; + + ret = hvnd_send_ioctl_pkt(nd_dev, &pkt.hdr, sizeof(pkt), (u64)&pkt); + + if (ret) + goto err; + + /* + * Copy the listener handle. + */ + hvnd_debug("listener handle is %p\n", (void *)pkt.ioctl.out); + *listener_handle = pkt.ioctl.out; + + return 0; + +err: + hvnd_error("create listener failed: ret=%d uctx=%p adaptor handle=%llu\n", + ret, uctx, uctx->adaptor_hdl); + return ret; + +} + +int hvnd_free_listener(struct hvnd_dev *nd_dev, struct hvnd_ucontext *uctx, + u64 listener_handle) +{ + struct pkt_nd_free_listener pkt; + int ret; + + // KYS try to avoid having to zero everything + memset(&pkt, 0, sizeof(pkt)); + hvnd_init_hdr(&pkt.hdr, + sizeof(pkt) - + sizeof(struct ndv_packet_hdr_control_1), + uctx->create_pkt.handle.local, + uctx->create_pkt.handle.remote, + IOCTL_ND_LISTENER_FREE, 0, 0, 0); + + /* + * Now fill in the ioctl section. + */ + pkt.ioctl.in.version = ND_VERSION_1; + pkt.ioctl.in.handle = listener_handle; + + ret = hvnd_send_ioctl_pkt(nd_dev, &pkt.hdr, sizeof(pkt), (u64)&pkt); + + if (ret) + goto err; + + return 0; + +err: + hvnd_error("free listener failed: %d\n", ret); + return ret; +} + +int hvnd_bind_listener(struct hvnd_dev *nd_dev, struct hvnd_ucontext *uctx, + u64 listener_handle, union nd_sockaddr_inet *addr) +{ + struct pkt_nd_bind_listener pkt; + kuid_t uid = current_uid(); + int ret; + + // KYS try to avoid having to zero everything + memset(&pkt, 0, sizeof(pkt)); + hvnd_init_hdr(&pkt.hdr, + sizeof(pkt) - + sizeof(struct ndv_packet_hdr_control_1), + uctx->create_pkt.handle.local, + uctx->create_pkt.handle.remote, + IOCTL_ND_LISTENER_BIND, 0, 0, 0); + + /* + * Now fill in the ioctl section. + */ + pkt.ioctl.in.hdr.version = ND_VERSION_1; + pkt.ioctl.in.hdr.handle = listener_handle; + pkt.ioctl.in.hdr.reserved = 0; + + pkt.ioctl.in.authentication_id = (u32)uid.val; + pkt.ioctl.in.is_admin = false; + + memcpy(&pkt.ioctl.in.hdr.address, addr, sizeof(*addr)); + + ret = hvnd_send_ioctl_pkt(nd_dev, &pkt.hdr, sizeof(pkt), (u64)&pkt); + + if (ret) + goto err; + + return 0; + +err: + hvnd_error("bind listener failed: %d\n", ret); + return ret; +} + +int hvnd_listen_listener(struct hvnd_dev *nd_dev, struct hvnd_ucontext *uctx, + u64 listener_handle, u32 backlog) +{ + struct pkt_nd_listen_listener pkt; + int ret; + + // KYS try to avoid having to zero everything + memset(&pkt, 0, sizeof(pkt)); + hvnd_init_hdr(&pkt.hdr, + sizeof(pkt) - + sizeof(struct ndv_packet_hdr_control_1), + uctx->create_pkt.handle.local, + uctx->create_pkt.handle.remote, + IOCTL_ND_LISTENER_LISTEN, 0, 0, 0); + + /* + * Now fill in the ioctl section. + */ + pkt.ioctl.in.version = ND_VERSION_1; + pkt.ioctl.in.listener_handle = listener_handle; + pkt.ioctl.in.back_log = backlog; + + + ret = hvnd_send_ioctl_pkt(nd_dev, &pkt.hdr, sizeof(pkt), (u64)&pkt); + + if (ret) + goto err; + + return 0; + +err: + hvnd_error("listen listener failed: %d\n", ret); + return ret; +} + +int hvnd_get_addr_listener(struct hvnd_dev *nd_dev, struct hvnd_ucontext *uctx, + u64 listener_handle, union nd_sockaddr_inet *addr) +{ + struct pkt_nd_get_addr_listener pkt; + int ret; + + // KYS try to avoid having to zero everything + memset(&pkt, 0, sizeof(pkt)); + hvnd_init_hdr(&pkt.hdr, + sizeof(pkt) - + sizeof(struct ndv_packet_hdr_control_1), + uctx->create_pkt.handle.local, + uctx->create_pkt.handle.remote, + IOCTL_ND_LISTENER_GET_ADDRESS, 0, 0, 0); + + /* + * Now fill in the ioctl section. + */ + pkt.ioctl.in.version = ND_VERSION_1; + pkt.ioctl.in.handle = listener_handle; + + + ret = hvnd_send_ioctl_pkt(nd_dev, &pkt.hdr, sizeof(pkt), (u64)&pkt); + + if (ret) + goto err; + + /* + * Copy the adddress. + */ + + memcpy(addr, &pkt.ioctl.out, sizeof(union nd_sockaddr_inet)); + + return 0; + +err: + hvnd_error("listen listener failed: %d\n", ret); + return ret; +} + +int hvnd_get_connection_listener(struct hvnd_dev *nd_dev, + struct hvnd_ucontext *uctx, + u64 listener_handle, u64 connector_handle, + u64 irp_handle) +{ + struct pkt_nd_get_connection_listener pkt; + int ret; + union ndv_context_handle irp_fhandle; + + ret = get_irp_handle(nd_dev, &irp_fhandle.local, (void *)irp_handle); + + if (ret) { + hvnd_error("get_irp_handle() failed: err: %d\n", ret); + return ret; + } + + // KYS try to avoid having to zero everything + memset(&pkt, 0, sizeof(pkt)); + hvnd_init_hdr(&pkt.hdr, + sizeof(pkt) - + sizeof(struct ndv_packet_hdr_control_1), + uctx->create_pkt.handle.local, + uctx->create_pkt.handle.remote, + IOCTL_ND_LISTENER_GET_CONNECTION_REQUEST, 0, 0, + irp_fhandle.val64); + + /* + * Now fill in the ioctl section. + */ + pkt.ioctl.in.version = ND_VERSION_1; + pkt.ioctl.in.listener_handle = listener_handle; + pkt.ioctl.in.connector_handle = connector_handle; + + + ret = hvnd_send_ioctl_pkt(nd_dev, &pkt.hdr, sizeof(pkt), (u64)&pkt); + + if (ret) + goto err; + + return 0; + +err: + hvnd_error("get connection listener failed: %d\n", ret); + return ret; +} + +/* + * Connector APIs. + */ + +int hvnd_cr_connector(struct hvnd_dev *nd_dev, struct hvnd_ucontext *uctx, + u64 *connector_handle) +{ + struct pkt_nd_cr_connector pkt; + int ret; + + // KYS try to avoid having to zero everything + memset(&pkt, 0, sizeof(pkt)); + hvnd_init_hdr(&pkt.hdr, + sizeof(struct pkt_nd_cr_listener) - + sizeof(struct ndv_packet_hdr_control_1), + uctx->create_pkt.handle.local, + uctx->create_pkt.handle.remote, + IOCTL_ND_CONNECTOR_CREATE, 0, 0, 0); + + /* + * Now fill in the ioctl section. + */ + pkt.ioctl.in.hdr.version = ND_VERSION_1; + pkt.ioctl.in.hdr.handle = uctx->adaptor_hdl; + pkt.ioctl.in.to_semantics = false; + + ret = hvnd_send_ioctl_pkt(nd_dev, &pkt.hdr, sizeof(pkt), (u64)&pkt); + + if (ret) + goto err; + + /* + * Copy the listener handle. + */ + hvnd_debug("connector handle is %p\n", (void *)pkt.ioctl.out); + *connector_handle = pkt.ioctl.out; + + return 0; + +err: + return ret; +} + +int hvnd_free_connector(struct hvnd_dev *nd_dev, struct hvnd_ucontext *uctx, + u64 handle) +{ + struct pkt_nd_free_connector pkt; + int ret; + + // KYS try to avoid having to zero everything + memset(&pkt, 0, sizeof(pkt)); + hvnd_init_hdr(&pkt.hdr, + sizeof(pkt) - + sizeof(struct ndv_packet_hdr_control_1), + uctx->create_pkt.handle.local, + uctx->create_pkt.handle.remote, + IOCTL_ND_CONNECTOR_FREE, 0, 0, 0); + + /* + * Now fill in the ioctl section. + */ + pkt.ioctl.in.version = ND_VERSION_1; + pkt.ioctl.in.handle = handle; + + ret = hvnd_send_ioctl_pkt(nd_dev, &pkt.hdr, sizeof(pkt), (u64)&pkt); + + if (ret) + goto err; + + return 0; + +err: + return ret; +} + +int hvnd_bind_connector(struct hvnd_dev *nd_dev, struct hvnd_ucontext *uctx, + u64 handle, union nd_sockaddr_inet *addr) +{ + struct pkt_nd_bind_connector pkt; + int ret; + kuid_t uid = current_uid(); + + // KYS try to avoid having to zero everything + memset(&pkt, 0, sizeof(pkt)); + hvnd_init_hdr(&pkt.hdr, + sizeof(pkt) - + sizeof(struct ndv_packet_hdr_control_1), + uctx->create_pkt.handle.local, + uctx->create_pkt.handle.remote, + IOCTL_ND_CONNECTOR_BIND, 0, 0, 0); + + /* + * Now fill in the ioctl section. + */ + pkt.ioctl.in.hdr.version = ND_VERSION_1; + pkt.ioctl.in.hdr.handle = handle; + + memcpy(&pkt.ioctl.in.hdr.address, addr, sizeof(*addr)); + + pkt.ioctl.in.authentication_id = (u32)uid.val; + pkt.ioctl.in.is_admin = false; + + + ret = hvnd_send_ioctl_pkt(nd_dev, &pkt.hdr, sizeof(pkt), (u64)&pkt); + + if (ret) + goto err; + + return 0; + +err: + return ret; +} + +int hvnd_connector_connect(struct hvnd_dev *nd_dev, struct hvnd_ucontext *uctx, + u64 connector_handle, u32 in_rd_limit, u32 out_rd_limit, + u32 priv_data_length, const u8 *priv_data, + u64 qp_handle, struct if_physical_addr *phys_addr, + union nd_sockaddr_inet *dest_addr, + struct hvnd_ep_obj *ep) +{ + struct pkt_nd_connector_connect *pkt = &ep->connector_connect_pkt; + int ret; + union ndv_context_handle irp_fhandle; + + hvnd_debug("local irp is %d\n", ep->local_irp); + irp_fhandle.local = ep->local_irp; + + if (priv_data_length > MAX_PRIVATE_DATA_LEN) { + hvnd_error("priv_data_length=%d\n", priv_data_length); + return -EINVAL; + } + + // KYS try to avoid having to zero everything + memset(pkt, 0, sizeof(*pkt)); + hvnd_init_hdr(&pkt->hdr, + sizeof(*pkt) - + sizeof(struct ndv_packet_hdr_control_1), + uctx->create_pkt.handle.local, + uctx->create_pkt.handle.remote, + IOCTL_ND_CONNECTOR_CONNECT, 0, 0, irp_fhandle.val64); + + /* + * Now fill in the ioctl section. + */ + pkt->ioctl.in.hdr.version = ND_VERSION_1; + pkt->ioctl.in.hdr.connector_handle = connector_handle; + pkt->ioctl.in.hdr.read_limits.inbound = in_rd_limit; + pkt->ioctl.in.hdr.read_limits.outbound = out_rd_limit; + pkt->ioctl.in.hdr.cb_private_data_length = priv_data_length; + pkt->ioctl.in.hdr.cb_private_data_offset = + offsetof(union connector_connect_ioctl, in.priv_data); + pkt->ioctl.in.hdr.qp_handle = qp_handle; + + memcpy(&pkt->ioctl.in.hdr.phys_addr, phys_addr, + sizeof(struct if_physical_addr)); + + /* + * Luke's code does not copy the ip address. + */ + memcpy(&pkt->ioctl.in.hdr.destination_address, dest_addr, + sizeof(union nd_sockaddr_inet)); + + pkt->ioctl.in.retry_cnt = 7; + pkt->ioctl.in.rnr_retry_cnt = 7; + memcpy(pkt->ioctl.in.priv_data, priv_data, priv_data_length); + + ret = hvnd_send_ioctl_pkt(nd_dev, &pkt->hdr, sizeof(*pkt), (u64)pkt); + + if (ret) + goto err; + + return 0; + +err: + return ret; +} + +int hvnd_connector_complete_connect(struct hvnd_dev *nd_dev, + struct hvnd_ucontext *uctx, + u64 connector_handle, + enum ibv_qp_state *qp_state) +{ + struct pkt_nd_connector_connect_complete pkt; + int ret; + + // KYS try to avoid having to zero everything + memset(&pkt, 0, sizeof(pkt)); + hvnd_init_hdr(&pkt.hdr, + sizeof(pkt) - + sizeof(struct ndv_packet_hdr_control_1), + uctx->create_pkt.handle.local, + uctx->create_pkt.handle.remote, + IOCTL_ND_CONNECTOR_COMPLETE_CONNECT, 0, 0, 0); + + /* + * Now fill in the ioctl section. + */ + pkt.ioctl.in.hdr.version = ND_VERSION_1; + pkt.ioctl.in.hdr.handle = connector_handle; + pkt.ioctl.in.rnr_nak_to = 0; + + ret = hvnd_send_ioctl_pkt(nd_dev, &pkt.hdr, sizeof(pkt), (u64)&pkt); + + if (ret) + goto err; + + *qp_state = pkt.ioctl.out.state; + return 0; + +err: + return ret; +} + +int hvnd_connector_accept(struct hvnd_dev *nd_dev, struct hvnd_ucontext *uctx, + u64 connector_handle, + u64 qp_handle, + u32 in_rd_limit, u32 out_rd_limit, + u32 priv_data_length, const u8 *priv_data, + enum ibv_qp_state *qp_state, struct hvnd_ep_obj *ep) +{ + struct pkt_nd_connector_accept pkt; + int ret; + union ndv_context_handle irp_fhandle; + + irp_fhandle.local = ep->local_irp; + + if (priv_data_length > MAX_PRIVATE_DATA_LEN) { + hvnd_error("priv_data_length=%d\n", priv_data_length); + return -EINVAL; + } + + // KYS try to avoid having to zero everything + memset(&pkt, 0, sizeof(pkt)); + hvnd_init_hdr(&pkt.hdr, + sizeof(pkt) - + sizeof(struct ndv_packet_hdr_control_1), + uctx->create_pkt.handle.local, + uctx->create_pkt.handle.remote, + IOCTL_ND_CONNECTOR_ACCEPT, 0, 0, irp_fhandle.val64); + + /* + * Now fill in the ioctl section. + */ + pkt.ioctl.in.hdr.version = ND_VERSION_1; + pkt.ioctl.in.hdr.reserved = 0; + pkt.ioctl.in.hdr.read_limits.inbound = in_rd_limit; + pkt.ioctl.in.hdr.read_limits.outbound = out_rd_limit; + pkt.ioctl.in.hdr.cb_private_data_length = priv_data_length; + + pkt.ioctl.in.hdr.cb_private_data_offset = + offsetof(struct connector_accept_in, private_data); + + pkt.ioctl.in.hdr.connector_handle = connector_handle; + pkt.ioctl.in.hdr.qp_handle = qp_handle; + + pkt.ioctl.in.rnr_nak_to = 0; + pkt.ioctl.in.rnr_retry_cnt = 7; + + + memcpy(pkt.ioctl.in.private_data, priv_data, priv_data_length); + + ret = hvnd_send_ioctl_pkt(nd_dev, &pkt.hdr, sizeof(pkt), (u64)&pkt); + + if (ret) + goto err; + + *qp_state = pkt.ioctl.out.state; + return 0; + +err: + return ret; +} + +int hvnd_connector_reject(struct hvnd_dev *nd_dev, struct hvnd_ucontext *uctx, + u64 connector_handle, + u32 priv_data_length, u8 *priv_data, + enum ibv_qp_state *qp_state) +{ + struct pkt_nd_connector_reject pkt; + int ret; + + if (priv_data_length > MAX_PRIVATE_DATA_LEN) { + hvnd_error("priv_data_length=%d\n", priv_data_length); + return -EINVAL; + } + + // KYS try to avoid having to zero everything + memset(&pkt, 0, sizeof(pkt)); + hvnd_init_hdr(&pkt.hdr, + sizeof(pkt) - + sizeof(struct ndv_packet_hdr_control_1), + uctx->create_pkt.handle.local, + uctx->create_pkt.handle.remote, + IOCTL_ND_CONNECTOR_REJECT, 0, 0, 0); + + /* + * Now fill in the ioctl section. + */ + pkt.ioctl.in.hdr.version = ND_VERSION_1; + pkt.ioctl.in.hdr.reserved = 0; + pkt.ioctl.in.hdr.cb_private_data_length = priv_data_length; + + pkt.ioctl.in.hdr.cb_private_data_offset = + offsetof(struct connector_reject_in, private_data); + + pkt.ioctl.in.hdr.connector_handle = connector_handle; + + memcpy(pkt.ioctl.in.private_data, priv_data, priv_data_length); + + ret = hvnd_send_ioctl_pkt(nd_dev, &pkt.hdr, sizeof(pkt), (u64)&pkt); + + if (ret) + goto err; + + *qp_state = pkt.ioctl.out.state; + return 0; + +err: + return ret; +} + +int hvnd_connector_get_rd_limits(struct hvnd_dev *nd_dev, + struct hvnd_ucontext *uctx, + u64 connector_handle, + struct nd_read_limits *rd_limits) +{ + struct pkt_nd_connector_get_rd_limits pkt; + int ret; + + + // KYS try to avoid having to zero everything + memset(&pkt, 0, sizeof(pkt)); + hvnd_init_hdr(&pkt.hdr, + sizeof(pkt) - + sizeof(struct ndv_packet_hdr_control_1), + uctx->create_pkt.handle.local, + uctx->create_pkt.handle.remote, + IOCTL_ND_CONNECTOR_GET_READ_LIMITS, 0, 0, 0); + + /* + * Now fill in the ioctl section. + */ + pkt.ioctl.in.in.version = ND_VERSION_1; + pkt.ioctl.in.in.reserved = 0; + pkt.ioctl.in.in.handle = connector_handle; + + ret = hvnd_send_ioctl_pkt(nd_dev, &pkt.hdr, sizeof(pkt), (u64)&pkt); + + if (ret) + goto err; + + *rd_limits = pkt.ioctl.out.out; + return 0; + +err: + return ret; +} + +int hvnd_connector_get_priv_data(struct hvnd_dev *nd_dev, + struct hvnd_ucontext *uctx, + u64 connector_handle, + u8 *priv_data) +{ + struct pkt_nd_connector_get_priv_data pkt; + int ret; + + + // KYS try to avoid having to zero everything + memset(&pkt, 0, sizeof(pkt)); + hvnd_init_hdr(&pkt.hdr, + sizeof(pkt) - + sizeof(struct ndv_packet_hdr_control_1), + uctx->create_pkt.handle.local, + uctx->create_pkt.handle.remote, + IOCTL_ND_CONNECTOR_GET_PRIVATE_DATA, 0, 0, 0); + + /* + * Now fill in the ioctl section. + */ + pkt.ioctl.in.version = ND_VERSION_1; + pkt.ioctl.in.reserved = 0; + pkt.ioctl.in.handle = connector_handle; + + ret = hvnd_send_ioctl_pkt(nd_dev, &pkt.hdr, sizeof(pkt), (u64)&pkt); + + if (ret) + goto err; + + memcpy(priv_data, pkt.ioctl.out, MAX_PRIVATE_DATA_LEN); + return 0; + +err: + return ret; +} + +int hvnd_connector_get_peer_addr(struct hvnd_dev *nd_dev, + struct hvnd_ucontext *uctx, + u64 connector_handle, + union nd_sockaddr_inet *peer_addr) +{ + struct pkt_nd_connector_get_peer_addr pkt; + int ret; + + + // KYS try to avoid having to zero everything + memset(&pkt, 0, sizeof(pkt)); + hvnd_init_hdr(&pkt.hdr, + sizeof(pkt) - + sizeof(struct ndv_packet_hdr_control_1), + uctx->create_pkt.handle.local, + uctx->create_pkt.handle.remote, + IOCTL_ND_CONNECTOR_GET_PEER_ADDRESS, 0, 0, 0); + + /* + * Now fill in the ioctl section. + */ + pkt.ioctl.in.version = ND_VERSION_1; + pkt.ioctl.in.reserved = 0; + pkt.ioctl.in.handle = connector_handle; + + ret = hvnd_send_ioctl_pkt(nd_dev, &pkt.hdr, sizeof(pkt), (u64)&pkt); + + if (ret) + goto err; + + memcpy(peer_addr, &pkt.ioctl.out, sizeof(union nd_sockaddr_inet)); + return 0; + +err: + return ret; +} + +int hvnd_connector_get_local_addr(struct hvnd_dev *nd_dev, + struct hvnd_ucontext *uctx, + u64 connector_handle, + union nd_sockaddr_inet *addr) +{ + struct pkt_nd_connector_get_addr pkt; + int ret; + + // KYS try to avoid having to zero everything + memset(&pkt, 0, sizeof(pkt)); + hvnd_init_hdr(&pkt.hdr, + sizeof(pkt) - + sizeof(struct ndv_packet_hdr_control_1), + uctx->create_pkt.handle.local, + uctx->create_pkt.handle.remote, + IOCTL_ND_CONNECTOR_GET_ADDRESS, 0, 0, 0); + + /* + * Now fill in the ioctl section. + */ + pkt.ioctl.in.version = ND_VERSION_1; + pkt.ioctl.in.reserved = 0; + pkt.ioctl.in.handle = connector_handle; + + ret = hvnd_send_ioctl_pkt(nd_dev, &pkt.hdr, sizeof(pkt), (u64)&pkt); + + if (ret) + goto err; + + memcpy(addr, &pkt.ioctl.out, sizeof(union nd_sockaddr_inet)); + return 0; + +err: + return ret; +} + + +int hvnd_connector_notify_disconnect(struct hvnd_dev *nd_dev, + struct hvnd_ucontext *uctx, + u64 connector_handle, struct hvnd_ep_obj *ep) +{ + struct pkt_nd_connector_notify_disconnect pkt; + int ret; + union ndv_context_handle irp_fhandle; + + irp_fhandle .local = ep->local_irp; + + hvnd_init_hdr(&pkt.hdr, + sizeof(pkt) - + sizeof(struct ndv_packet_hdr_control_1), + uctx->create_pkt.handle.local, + uctx->create_pkt.handle.remote, + IOCTL_ND_CONNECTOR_NOTIFY_DISCONNECT, 0, 0, + irp_fhandle.val64); + + /* + * Now fill in the ioctl section. + */ + pkt.ioctl.in.version = ND_VERSION_1; + pkt.ioctl.in.reserved = 0; + pkt.ioctl.in.handle = connector_handle; + + ret = hvnd_send_ioctl_pkt(nd_dev, &pkt.hdr, sizeof(pkt), (u64)&pkt); + + if (ret) + goto err; + + return 0; + +err: + return ret; +} + + +//ASYNCH call +int hvnd_connector_disconnect(struct hvnd_dev *nd_dev, + struct hvnd_ucontext *uctx, + u64 connector_handle, struct hvnd_ep_obj *ep) +{ + struct pkt_nd_connector_disconnect pkt; + int ret; + union ndv_context_handle irp_fhandle; + + irp_fhandle.local = ep->local_irp; + + + hvnd_init_hdr(&pkt.hdr, + sizeof(pkt) - + sizeof(struct ndv_packet_hdr_control_1), + uctx->create_pkt.handle.local, + uctx->create_pkt.handle.remote, + IOCTL_ND_CONNECTOR_DISCONNECT, 0, 0, irp_fhandle.val64); + + /* + * Now fill in the ioctl section. + */ + pkt.ioctl.in.version = ND_VERSION_1; + pkt.ioctl.in.reserved = 0; + pkt.ioctl.in.handle = connector_handle; + + ret = hvnd_send_ioctl_pkt(nd_dev, &pkt.hdr, sizeof(pkt), (u64)&pkt); + + if (ret) + goto err; + + return 0; + +err: + return ret; +} + +/* + * QP operations. + */ +int hvnd_create_qp(struct hvnd_dev *nd_dev, struct hvnd_ucontext *uctx, + struct hvnd_qp *qp) +{ + int ret; + struct pkt_nd_create_qp *pkt; + int num_pfn, num_db_pfn; + int qp_pkt_size; + unsigned int offset; + u32 ext_data_offset; + u32 ext_data_size; + + /* + * Now create QP. + * First compute the number of PFNs we need to accomodate: + * One each for door bell and arm_sn and pages in cq buffer. + */ + offset = offset_in_page(qp->qp_buf); + num_pfn = DIV_ROUND_UP(offset + qp->buf_size, PAGE_SIZE); + + offset = offset_in_page(qp->db_addr); + num_db_pfn = DIV_ROUND_UP(offset + 4, PAGE_SIZE); + + qp_pkt_size = sizeof(struct pkt_nd_create_qp) + + (num_pfn * sizeof(u64)); + + hvnd_debug("CREATE QP, num pfns is %d\n", num_pfn); + hvnd_debug("CREATE QP, num DB pfns is %d\n", num_db_pfn); + + pkt = kzalloc(qp_pkt_size, GFP_KERNEL); + + if (!pkt) + return -ENOMEM; + + hvnd_debug("offset of nd_create_qp is %d\n", + (int)offsetof(struct pkt_nd_create_qp, ioctl.input)); + + ext_data_offset = offsetof(struct pkt_nd_create_qp, ext_data) - + sizeof(struct ndv_packet_hdr_control_1); + + ext_data_size = sizeof(struct create_qp_ext_data) + + (num_pfn * sizeof(u64)); + + hvnd_init_hdr(&pkt->hdr, + qp_pkt_size - + sizeof(struct ndv_packet_hdr_control_1), + uctx->create_pkt.handle.local, + uctx->create_pkt.handle.remote, + IOCTL_ND_QP_CREATE, + ext_data_size, + ext_data_offset, + 0); + + /* + * Now fill out the ioctl section. + */ + + pkt->ioctl.input.hdr.version = ND_VERSION_1; + + if (qp->max_inline_data > nd_dev->query_pkt.ioctl.ad_info.inline_request_threshold) + qp->max_inline_data = nd_dev->query_pkt.ioctl.ad_info.inline_request_threshold; + pkt->ioctl.input.hdr.cb_max_inline_data = qp->max_inline_data; + + hvnd_debug("pkt->ioctl.input.hdr.cb_max_inline_data=%d\n", + pkt->ioctl.input.hdr.cb_max_inline_data); + + pkt->ioctl.input.hdr.ce_mapping_cnt = MLX4_IB_CREATE_QP_MAPPINGS_MAX; + pkt->ioctl.input.hdr.cb_mapping_offset = sizeof(union create_qp_ioctl); + + pkt->ioctl.input.hdr.initiator_queue_depth = qp->initiator_q_depth; + pkt->ioctl.input.hdr.max_initiator_request_sge = + qp->initiator_request_sge; + + hvnd_debug("recv cq handle is %p\n", (void *)qp->receive_cq_handle); + hvnd_debug("send cq handle is %p\n", (void *)qp->initiator_cq_handle); + hvnd_debug("pd handle is %p\n", (void *)qp->pd_handle); + pkt->ioctl.input.hdr.receive_cq_handle = qp->receive_cq_handle; + pkt->ioctl.input.hdr.initiator_cq_handle = qp->initiator_cq_handle; + pkt->ioctl.input.hdr.pd_handle = qp->pd_handle; + + + hvnd_debug("ce_mapping cnt is %d\n", + pkt->ioctl.input.hdr.ce_mapping_cnt); + hvnd_debug("cb_mapping offset is %d\n", + pkt->ioctl.input.hdr.cb_mapping_offset); + + pkt->ioctl.input.receive_queue_depth = qp->receive_q_depth; + pkt->ioctl.input.max_receive_request_sge = qp->receive_request_sge; + + + pkt->mappings.qp_in.mappings[MLX4_IB_CREATE_QP_BUF].map_memory.map_type = ND_MAP_MEMORY; + pkt->mappings.qp_in.mappings[MLX4_IB_CREATE_QP_BUF].map_memory.access_type = ND_MODIFY_ACCESS; + pkt->mappings.qp_in.mappings[MLX4_IB_CREATE_QP_BUF].map_memory.address = (u64)qp->qp_buf; + pkt->mappings.qp_in.mappings[MLX4_IB_CREATE_QP_BUF].map_memory.cb_length = qp->buf_size; + + pkt->mappings.qp_in.mappings[MLX4_IB_CREATE_QP_DB].map_memory.map_type = ND_MAP_MEMORY_COALLESCE; + pkt->mappings.qp_in.mappings[MLX4_IB_CREATE_QP_DB].map_memory.access_type = ND_WRITE_ACCESS; + pkt->mappings.qp_in.mappings[MLX4_IB_CREATE_QP_DB].map_memory.address = (u64)qp->db_addr; + pkt->mappings.qp_in.mappings[MLX4_IB_CREATE_QP_DB].map_memory.cb_length = 4; + + pkt->mappings.qp_in.log_sq_bb_count = qp->log_sq_bb_count; + pkt->mappings.qp_in.log_sq_stride = qp->log_sq_stride; + pkt->mappings.qp_in.sq_no_prefetch = qp->sq_no_prefetch; + + + /* + * Fill in the extended data. + */ + + pkt->ext_data.cnt = 2; + pkt->ext_data.fields[MLX4_IB_CREATE_QP_BUF].size = + sizeof(struct gpa_range) + (num_pfn * sizeof(u64)); + pkt->ext_data.fields[MLX4_IB_CREATE_QP_BUF].offset = + offsetof(struct create_qp_ext_data, qpbuf_gpa); + + pkt->ext_data.fields[MLX4_IB_CREATE_QP_DB].size = + sizeof(struct qp_db_gpa); + pkt->ext_data.fields[MLX4_IB_CREATE_QP_DB].offset = + offsetof(struct create_qp_ext_data, db_gpa); + + /* + * Fill up the gpa range for qp buffer. + */ + + pkt->ext_data.db_gpa.byte_count = 4; // KYS 8 or 16? + pkt->ext_data.db_gpa.byte_offset = offset_in_page(qp->db_addr); + user_va_init_pfn(&pkt->ext_data.db_gpa.pfn_array[0], qp->db_umem); + + pkt->ext_data.qpbuf_gpa.byte_count = qp->buf_size; + pkt->ext_data.qpbuf_gpa.byte_offset = offset_in_page(qp->qp_buf); + user_va_init_pfn(&pkt->ext_data.qpbuf_gpa.pfn_array[0], qp->umem); + + ret = hvnd_send_ioctl_pkt(nd_dev, &pkt->hdr, qp_pkt_size, (u64)pkt); + + if (ret) + goto cr_qp_err; + + /* + * Copy the necessary response from the host. + */ + qp->qp_handle = pkt->ioctl.resrc_desc.handle; + + qp->qpn = pkt->mappings.qp_resp.qpn; + qp->max_send_wr = pkt->mappings.qp_resp.max_send_wr; + qp->max_recv_wr = pkt->mappings.qp_resp.max_recv_wr; + qp->max_send_sge = pkt->mappings.qp_resp.max_send_sge; + qp->max_recv_sge = pkt->mappings.qp_resp.max_recv_sge; + + + hvnd_debug("qp->max_send_wr=%d max_recv_wr=%d max_send_sge=%d max_recv_sge=%d max_inline_data=%d\n", + qp->max_send_wr, qp->max_recv_wr, qp->max_send_sge, + qp->max_recv_sge, qp->max_inline_data); + + ret = insert_handle(nd_dev, &nd_dev->qpidr, qp, qp->qpn); + + if (ret) + goto cr_qp_err; + + hvnd_debug("QP create after success qpn:%d qp:%p handle:%llu\n", + qp->qpn, qp, qp->qp_handle); + +cr_qp_err: + kfree(pkt); + return ret; +} + +int hvnd_free_qp(struct hvnd_dev *nd_dev, struct hvnd_ucontext *uctx, + struct hvnd_qp *qp) +{ + remove_handle(nd_dev, &nd_dev->qpidr, qp->qpn); + return hvnd_free_handle(nd_dev, uctx, qp->qp_handle, IOCTL_ND_QP_FREE); +} + +int hvnd_flush_qp(struct hvnd_dev *nd_dev, struct hvnd_ucontext *uctx, + struct hvnd_qp *qp) +{ + struct pkt_nd_flush_qp pkt; + int ret; + + // KYS try to avoid having to zero everything + memset(&pkt, 0, sizeof(pkt)); + hvnd_init_hdr(&pkt.hdr, + sizeof(pkt) - + sizeof(struct ndv_packet_hdr_control_1), + uctx->create_pkt.handle.local, + uctx->create_pkt.handle.remote, + IOCTL_ND_QP_FLUSH, 0, 0, 0); + + /* + * Now fill in the ioctl section. + */ + pkt.ioctl.in.version = ND_VERSION_1; + pkt.ioctl.in.reserved = 0; + pkt.ioctl.in.handle = qp->qp_handle; + + ret = hvnd_send_ioctl_pkt(nd_dev, &pkt.hdr, sizeof(pkt), (u64)&pkt); + + if (ret) + goto err; + + return 0; + +err: + return ret; +} + + +int hvnd_bind_nic(struct hvnd_dev *nd_dev, bool un_bind, char *ip_addr, + char *mac_addr) +{ + int ret; + int pkt_type = NDV_PKT_ID1_BIND; + + /* + * Send the bind information over to the host. + * For now, we will have a single ip and MAC address that we + * will deal with. Down the road we will need to expand support + * for multiple IP and MAC addresses and also deal with changing + * IP addresses. + */ + + NDV_ADD_PACKET_OPTION(pkt_type, NDV_PACKET_OPTIONS_REQUIRES_PASSIVE); + hvnd_debug("bind packet type is %d ID:%d\n", + pkt_type, NDV_PACKET_TYPE_ID(pkt_type)); + nd_dev->bind_pkt.pkt_hdr.packet_type = pkt_type; + + nd_dev->bind_pkt.pkt_hdr.hdr_sz = sizeof(struct ndv_pkt_hdr_bind_1); + hvnd_debug("bind packet size is %d\n", + (int)sizeof(struct ndv_pkt_hdr_bind_1)); + nd_dev->bind_pkt.pkt_hdr.data_sz = 0; + nd_dev->bind_pkt.unbind = un_bind; + nd_dev->bind_pkt.ip_address.address_family = AF_INET; + nd_dev->bind_pkt.ip_address.ipv4.sin_family = AF_INET; + nd_dev->bind_pkt.ip_address.ipv4.sin_port = 0; + nd_dev->bind_pkt.ip_address.ipv4.sin_addr.s_addr = *(unsigned int *)ip_addr; + + nd_dev->bind_pkt.phys_addr.length = ETH_ALEN; + memcpy(nd_dev->bind_pkt.phys_addr.addr, mac_addr, ETH_ALEN); + + /* + * This is the adapter handle; needs to be unique for each + * MAC, ip address tuple. + */ + nd_dev->bind_pkt.guest_id = (u64)nd_dev; + + ret = hvnd_send_packet(nd_dev, &nd_dev->bind_pkt, + sizeof(struct ndv_pkt_hdr_bind_1), + (u64)NULL, + true); + return ret; +} + +int hvnd_init_resources(struct hvnd_dev *nd_dev) +{ + unsigned long mmio_sz; + struct resource *resrc; + int ret = -ENOMEM; + + resrc = &iomem_resource; + + mmio_sz = nd_dev->hvdev->channel->offermsg.offer.mmio_megabytes * + 1024 * 1024; + nd_dev->mmio_sz = mmio_sz; + nd_dev->mmio_resource.name = KBUILD_MODNAME; + nd_dev->mmio_resource.flags = IORESOURCE_MEM | IORESOURCE_BUSY; + + ret = allocate_resource(resrc, &nd_dev->mmio_resource, + mmio_sz, 0, -1, mmio_sz, NULL, NULL); + + if (ret) { + hvnd_error("Unable to allocate mmio resources\n"); + return ret; + } + hvnd_debug("MMIO start is %p\n", (void *)nd_dev->mmio_resource.start); + + /* + * Send the mmio information over to the host. + */ + nd_dev->resources.pkt_hdr.packet_type = NDV_PKT_ID1_INIT_RESOURCES; + nd_dev->resources.pkt_hdr.hdr_sz = sizeof(union ndv_packet_hdr); + nd_dev->resources.pkt_hdr.data_sz = 0; + + nd_dev->resources.io_space_sz_mb = mmio_sz; + nd_dev->resources.io_space_start = nd_dev->mmio_resource.start; + + ret = hvnd_send_packet(nd_dev, &nd_dev->resources, + sizeof(struct ndv_pkt_hdr_init_resources_1), + (u64)NULL, + true); + return ret; +} + +int hvnd_query_adaptor(struct hvnd_dev *nd_dev, struct hvnd_ucontext *uctx) +{ + struct pkt_nd_query_adaptor *pkt; + int ret; + int pkt_type; + struct ib_device_attr *props = &nd_dev->ibdev.attrs; + struct adapter_info_v2 *adap_info = &nd_dev->query_pkt.ioctl.ad_info; + + hvnd_debug("Performing Adapter query nd_dev=%p\n", nd_dev); + + // check if there is a need to do query + if (nd_dev->query_pkt_set) + return 0; + + // need a lock, multiple process can call this at the same time + + down(&nd_dev->query_pkt_sem); + if (nd_dev->query_pkt_set) { + up(&nd_dev->query_pkt_sem); + return 0; + } + + /* + * Now query the adaptor. + */ + + pkt = &nd_dev->query_pkt; + + pkt_type = NDV_PKT_ID1_CONTROL; + NDV_ADD_PACKET_OPTION(pkt_type, NDV_PACKET_OPTIONS_REQUIRES_PASSIVE); + + pkt->hdr.pkt_hdr.packet_type = pkt_type; + pkt->hdr.pkt_hdr.hdr_sz = sizeof(struct ndv_packet_hdr_control_1); + pkt->hdr.pkt_hdr.data_sz = sizeof(struct pkt_nd_query_adaptor) - + sizeof(struct ndv_packet_hdr_control_1); + + + pkt->hdr.file_handle.local = uctx->file_handle.local; + pkt->hdr.file_handle.remote = uctx->file_handle.remote; + + pkt->hdr.irp_handle.val64 = 0; + + pkt->hdr.io_cntrl_code = IOCTL_ND_ADAPTER_QUERY; + pkt->hdr.output_buf_sz = sizeof(struct nd_adap_query_ioctl); + pkt->hdr.input_buf_sz = sizeof(struct nd_adap_query_ioctl); + pkt->hdr.input_output_buf_offset = 0; + memset(&pkt->ioctl.ad_q, 0, sizeof(struct nd_adap_query_ioctl)); + + pkt->ioctl.ad_q.version = ND_VERSION_1; + pkt->ioctl.ad_q.info_version = ND_VERSION_2; + pkt->ioctl.ad_q.adapter_handle = uctx->adaptor_hdl; + + ret = hvnd_send_packet(nd_dev, pkt, + sizeof(struct pkt_nd_query_adaptor), + (unsigned long)pkt, true); + + hvnd_debug("pkt->ioctl.ad_info.inline_request_threshold=%d\n", + pkt->ioctl.ad_info.inline_request_threshold); + nd_dev->query_pkt_set = true; + + // how about host returning PENDING + up(&nd_dev->query_pkt_sem); + + if (ret) + return ret; + + hvnd_debug("Query Adaptor Succeeded\n"); + + /* + * Cache the relevant properties out. + */ + props->fw_ver = 0; + props->device_cap_flags = 0; + props->vendor_id = 0x15b3; + props->vendor_part_id = adap_info->device_id; + props->max_mr_size = ~0ull; + props->page_size_cap = PAGE_SIZE; + props->max_qp = 16384; + props->max_qp_wr = min(adap_info->max_recv_q_depth, + adap_info->max_initiator_q_depth); + props->max_send_sge = min(adap_info->max_initiator_sge, + adap_info->max_recv_sge); + props->max_recv_sge = props->max_send_sge; + props->max_cq = 0x1FFFF; + props->max_cqe = adap_info->max_completion_q_depth; + props->max_mr = 16384; + props->max_pd = 16384; + props->max_qp_rd_atom = adap_info->max_inbound_read_limit; + props->max_qp_init_rd_atom = adap_info->max_outbound_read_limit; + props->max_res_rd_atom = props->max_qp_rd_atom * props->max_qp; + props->max_srq = 16384; + props->max_srq_wr = adap_info->max_recv_q_depth; + props->max_srq_sge = adap_info->max_recv_sge; + return 0; +} + + +int hvnd_create_pd(struct hvnd_ucontext *uctx, struct hvnd_dev *nd_dev, + struct hvnd_ib_pd *hvnd_pd) +{ + struct pkt_nd_pd_create *pkt = &uctx->pd_cr_pkt; + int ret; + int pkt_type; + + hvnd_debug("Create Protection Domain\n"); + + pkt_type = NDV_PKT_ID1_CONTROL; + NDV_ADD_PACKET_OPTION(pkt_type, NDV_PACKET_OPTIONS_REQUIRES_PASSIVE); + + pkt->hdr.pkt_hdr.packet_type = pkt_type; + pkt->hdr.pkt_hdr.hdr_sz = sizeof(struct ndv_packet_hdr_control_1); + pkt->hdr.pkt_hdr.data_sz = sizeof(struct pkt_nd_pd_create) - + sizeof(struct ndv_packet_hdr_control_1); + + hvnd_debug("pdcreate packet size: %d\n", + (int)sizeof(struct pkt_nd_pd_create)); + hvnd_debug("pdcreate hdr size: %d\n", + (int)sizeof(struct ndv_packet_hdr_control_1)); + hvnd_debug("pdcreate data size: %d\n", pkt->hdr.pkt_hdr.data_sz); + + pkt->hdr.file_handle.local = uctx->create_pkt.handle.local; + pkt->hdr.file_handle.remote = uctx->create_pkt.handle.remote; + + hvnd_debug("create pd uctx is %p\n", uctx); + hvnd_debug("create pd local file is %d\n", + uctx->create_pkt.handle.local); + hvnd_debug("create pd local file is %d\n", + uctx->create_pkt.handle.remote); + + pkt->hdr.irp_handle.val64 = 0; + pkt->hdr.io_cntrl_code = IOCTL_ND_PD_CREATE; + + pkt->hdr.output_buf_sz = sizeof(struct nd_create_pd_ioctl); + pkt->hdr.input_buf_sz = sizeof(struct nd_create_pd_ioctl); + pkt->hdr.input_output_buf_offset = 0; + + hvnd_debug("output/input buf size: %d\n", pkt->hdr.output_buf_sz); + + /* + * Fill the ioctl section. + */ + pkt->ioctl.in.version = ND_VERSION_1; + pkt->ioctl.in.reserved = 0; + pkt->ioctl.in.handle = uctx->adaptor_hdl; + + + ret = hvnd_send_packet(nd_dev, pkt, + sizeof(struct pkt_nd_pd_create), + (unsigned long)pkt, true); + + if (ret) + return ret; + + if (pkt->hdr.pkt_hdr.status != 0) { + hvnd_error("Create PD failed; status is %d\n", + pkt->hdr.pkt_hdr.status); + return -EINVAL; + } + if (pkt->hdr.io_status != 0) { + hvnd_error("Create PD failed;io status is %d\n", + pkt->hdr.io_status); + return -EINVAL; + } + + hvnd_debug("Create PD Succeeded\n"); + + hvnd_debug("pd_handle is %p\n", (void *)pkt->ioctl.resp.pd_handle); + hvnd_debug("pdn is %d\n", (int)pkt->ioctl.resp.pdn); + + hvnd_pd->pdn = pkt->ioctl.resp.pdn; + hvnd_pd->handle = pkt->ioctl.out_handle; + + return 0; +} + +int hvnd_cancel_io(struct hvnd_ep_obj *ep_object) +{ + struct pkt_nd_cancel_io pkt; + int ret; + u32 ioctl; + + switch (ep_object->type) { + case ND_LISTENER: + hvnd_debug("LISTENER I/O Cancelled\n"); + ioctl = IOCTL_ND_LISTENER_CANCEL_IO; + break; + case ND_CONNECTOR: + hvnd_debug("CONNECTOR I/O Cancelled\n"); + ioctl = IOCTL_ND_CONNECTOR_CANCEL_IO; + break; + case ND_MR: + hvnd_debug("MR I/O Cancelled\n"); + ioctl = IOCTL_ND_MR_CANCEL_IO; + break; + case ND_CQ: + hvnd_debug("CQ I/O Cancelled\n"); + ioctl = IOCTL_ND_CQ_CANCEL_IO; + break; + default: + hvnd_error("UNKNOWN object type\n"); + return -EINVAL; + } + + // KYS try to avoid having to zero everything + memset(&pkt, 0, sizeof(pkt)); + hvnd_init_hdr(&pkt.hdr, + sizeof(pkt) - + sizeof(struct ndv_packet_hdr_control_1), + ep_object->uctx->create_pkt.handle.local, + ep_object->uctx->create_pkt.handle.remote, + ioctl, 0, 0, 0); + + /* + * Now fill in the ioctl section. + */ + pkt.ioctl.in.version = ND_VERSION_1; + pkt.ioctl.in.reserved = 0; + pkt.ioctl.in.handle = ep_object->ep_handle; + hvnd_debug("cancel io handle is %p\n", (void *)ep_object->ep_handle); + + ret = hvnd_send_ioctl_pkt(ep_object->nd_dev, &pkt.hdr, + sizeof(pkt), + (u64)&pkt); + + if (ret) + goto err; + + /* + * Now that we have cancelled all I/Os, + */ + + return 0; + +err: + hvnd_error("cancel I/O operation failed\n"); + return ret; +} + + +int hvnd_free_handle(struct hvnd_dev *nd_dev, struct hvnd_ucontext *uctx, + u64 handle, u32 ioctl) +{ + struct pkt_nd_free_handle pkt; + int ret; + + hvnd_debug("Freeing handle ioctl is %s; handle is %p\n", + hvnd_get_op_name(ioctl), (void *)handle); + + hvnd_debug("uctx is %p\n", uctx); + hvnd_debug("nd_dev is %p\n", nd_dev); + + // KYS try to avoid having to zero everything + memset(&pkt, 0, sizeof(pkt)); + hvnd_init_hdr(&pkt.hdr, + sizeof(pkt) - + sizeof(struct ndv_packet_hdr_control_1), + uctx->create_pkt.handle.local, + uctx->create_pkt.handle.remote, + ioctl, 0, 0, 0); + + /* + * Now fill in the ioctl section. + */ + pkt.ioctl.in.version = ND_VERSION_1; + pkt.ioctl.in.reserved = 0; + pkt.ioctl.in.handle = handle; + + ret = hvnd_send_ioctl_pkt(nd_dev, &pkt.hdr, sizeof(pkt), (u64)&pkt); + + if (ret) + goto err; + + return 0; + +err: + hvnd_error("%s: ret=%d\n", __func__, ret); + return ret; +} + +int hvnd_negotiate_version(struct hvnd_dev *nd_dev) +{ + union ndv_packet_init *pkt = &nd_dev->init_pkt; + int ret; + + nd_dev->negotiated_version = NDV_PROTOCOL_VAERSION_INVALID; + + pkt->packet_type = NDV_PACKET_TYPE_INIT; + pkt->protocol_version = NDV_PROTOCOL_VERSION_CURRENT; + pkt->flags = 0; // KYS are the flags 0? + + ret = hvnd_send_packet(nd_dev, pkt, + sizeof(union ndv_packet_init), (u64)NULL, true); + + return ret; +} + +void hvnd_callback(void *context) +{ + struct hv_device *dev = context; + struct hvnd_dev *nd_dev = hv_get_drvdata(dev); + int copy_sz = 0; + struct ndv_packet_hdr_control_1 *ctrl_hdr; + union ndv_packet_init *pkt_init; + u32 recvlen; + u32 local_irp; + u64 requestid; + u32 *pkt_type; + u32 pkt_id; + struct hvnd_ep_obj *ep_object; + struct incoming_pkt *incoming_pkt; /* Used only for asynch calls */ + char *incoming_pkt_start; + struct vmpacket_descriptor *desc; + int status; + struct hvnd_cookie *hvnd_cookie; + unsigned long flags; + + vmbus_recvpacket_raw(dev->channel, hvnd_recv_buffer, + (PAGE_SIZE * 4), &recvlen, &requestid); + + if (recvlen <= 0) + return; + + desc = (struct vmpacket_descriptor *)hvnd_recv_buffer; + incoming_pkt_start = hvnd_recv_buffer + (desc->offset8 << 3); + recvlen -= desc->offset8 << 3; + + pkt_type = (u32 *)incoming_pkt_start; + pkt_id = *pkt_type; + if (pkt_id != NDV_PACKET_TYPE_INIT) + pkt_id = NDV_PACKET_TYPE_ID(pkt_id); + + switch (pkt_id) { + case NDV_PACKET_TYPE_INIT: + /* + * Host is responding to our init packet. + */ + pkt_init = (union ndv_packet_init *)incoming_pkt_start; + nd_dev->negotiated_version = pkt_init->protocol_version; + copy_sz = 0; + break; + + case NDV_PKT_ID1_INIT_RESOURCES: + copy_sz = 0; + break; + + case NDV_PKT_ID1_BIND: + nd_dev->bind_pkt.pkt_hdr.status = + ((union ndv_packet_hdr *) incoming_pkt_start)->status; + copy_sz = 0; + break; + + case NDV_PKT_ID1_COMPLETE: + ctrl_hdr = (struct ndv_packet_hdr_control_1 *)incoming_pkt_start; + status = ctrl_hdr->io_status; + + local_irp = ctrl_hdr->irp_handle.local; + ep_object = (struct hvnd_ep_obj *)map_irp_to_ctx(nd_dev, + local_irp); + + if (!ep_object) { + hvnd_error("irp could not be mapped; irp is %d ioctl is %s", + local_irp, + hvnd_get_op_name(ctrl_hdr->io_cntrl_code)); + goto complete; + } + + if (ctrl_hdr->io_cntrl_code != IOCTL_ND_CQ_NOTIFY) + hvnd_debug("completion packet; iostatus is %x, ioctl is %s", + ctrl_hdr->io_status, + hvnd_get_op_name(ctrl_hdr->io_cntrl_code)); + + switch (ctrl_hdr->io_cntrl_code) { + + case IOCTL_ND_CQ_NOTIFY: + hvnd_process_cq_event_complete(ep_object, status); + + ep_del_work_pending(ep_object); + goto complete; + + case IOCTL_ND_CONNECTOR_ACCEPT: + + hvnd_process_connector_accept(ep_object, status); + + ep_del_work_pending(ep_object); + goto complete; + + case IOCTL_ND_CONNECTOR_DISCONNECT: + hvnd_debug("disconnected: ep opj is %p; status: %d\n", + ep_object, status); + hvnd_process_disconnect(ep_object, status); + + ep_del_work_pending(ep_object); + goto complete; + + default: + break; + } + + /* + * This is the completion notification; + * the IRP cookie is the state through which + * we will invoke the callback. + */ + incoming_pkt = kmalloc(recvlen + sizeof(struct incoming_pkt), + GFP_ATOMIC); + if (incoming_pkt == NULL) { + hvnd_error("Could not alloc memory in callback\n"); + ep_del_work_pending(ep_object); + goto complete; + } + memcpy(incoming_pkt->pkt, incoming_pkt_start, recvlen); + + spin_lock_irqsave(&ep_object->incoming_pkt_list_lock, flags); + list_add_tail(&incoming_pkt->list_entry, + &ep_object->incoming_pkt_list); + spin_unlock_irqrestore(&ep_object->incoming_pkt_list_lock, + flags); + + schedule_work(&ep_object->wrk.work); + + goto complete; + + case NDV_PKT_ID1_CREATE: + copy_sz = sizeof(struct ndv_pkt_hdr_create_1); + break; + + case NDV_PKT_ID1_CLEANUP: + copy_sz = sizeof(struct ndv_pkt_hdr_cleanup_1); + break; + + case NDV_PKT_ID1_CONTROL: + ctrl_hdr = (struct ndv_packet_hdr_control_1 *)incoming_pkt_start; + status = ctrl_hdr->io_status; + + if (ctrl_hdr->io_cntrl_code != IOCTL_ND_CQ_NOTIFY) + hvnd_debug("packet; iostatus is %x ioctl is %s", + ctrl_hdr->io_status, hvnd_get_op_name(ctrl_hdr->io_cntrl_code)); + + switch (ctrl_hdr->io_cntrl_code) { + + case IOCTL_ND_PROVIDER_INIT: + copy_sz = sizeof(struct pkt_nd_provider_ioctl); + break; + + case IOCTL_ND_PROVIDER_BIND_FILE: + copy_sz = sizeof(struct pkt_nd_provider_ioctl); + break; + + case IOCTL_ND_ADAPTER_OPEN: + copy_sz = sizeof(struct pkt_nd_open_adapter); + break; + + case IOCTL_ND_ADAPTER_CLOSE: + copy_sz = sizeof(struct pkt_nd_free_handle); + break; + + case IOCTL_ND_ADAPTER_QUERY: + copy_sz = sizeof(struct pkt_nd_query_adaptor); + break; + + case IOCTL_ND_PD_CREATE: + copy_sz = sizeof(struct pkt_nd_pd_create); + break; + + case IOCTL_ND_PD_FREE: + copy_sz = sizeof(struct pkt_nd_free_handle); + break; + + case IOCTL_ND_CQ_CREATE: + copy_sz = sizeof(struct pkt_nd_create_cq); + break; + + case IOCTL_ND_CQ_FREE: + copy_sz = sizeof(struct pkt_nd_free_cq); + break; + + case IOCTL_ND_CQ_NOTIFY: //FIXME check ep stop state + local_irp = ctrl_hdr->irp_handle.local; + ep_object = (struct hvnd_ep_obj *) + map_irp_to_ctx(nd_dev, local_irp); + if (!ep_object) { + hvnd_error("irp could not be mapped\n"); + goto complete; + return; + } + copy_sz = sizeof(struct pkt_nd_notify_cq); + hvnd_process_cq_event_pending(ep_object, status); + goto complete; + return; + + case IOCTL_ND_LISTENER_CREATE: + copy_sz = sizeof(struct pkt_nd_cr_listener); + break; + + case IOCTL_ND_LISTENER_FREE: + copy_sz = sizeof(struct pkt_nd_free_listener); + break; + + case IOCTL_ND_QP_FREE: + copy_sz = sizeof(struct pkt_nd_free_handle); + break; + + case IOCTL_ND_CONNECTOR_CANCEL_IO: + case IOCTL_ND_MR_CANCEL_IO: + case IOCTL_ND_CQ_CANCEL_IO: + case IOCTL_ND_LISTENER_CANCEL_IO: + copy_sz = sizeof(struct pkt_nd_cancel_io); + break; + + case IOCTL_ND_LISTENER_BIND: + copy_sz = sizeof(struct pkt_nd_bind_listener); + break; + + case IOCTL_ND_LISTENER_LISTEN: + copy_sz = sizeof(struct pkt_nd_listen_listener); + break; + + case IOCTL_ND_LISTENER_GET_ADDRESS: + copy_sz = sizeof(struct pkt_nd_get_addr_listener); + break; + + case IOCTL_ND_LISTENER_GET_CONNECTION_REQUEST: + copy_sz = sizeof(struct pkt_nd_get_connection_listener); + goto complete; // non-block + + case IOCTL_ND_CONNECTOR_CREATE: + copy_sz = sizeof(struct pkt_nd_cr_connector); + break; + + case IOCTL_ND_CONNECTOR_FREE: + copy_sz = sizeof(struct pkt_nd_free_connector); + break; + + case IOCTL_ND_CONNECTOR_BIND: + copy_sz = sizeof(struct pkt_nd_free_connector); + break; + + // KYS: ALERT: ASYNCH Operation + case IOCTL_ND_CONNECTOR_CONNECT: + copy_sz = sizeof(struct pkt_nd_connector_connect); + goto complete; //non-block + + case IOCTL_ND_CONNECTOR_COMPLETE_CONNECT: + copy_sz = sizeof(struct pkt_nd_connector_connect_complete); + break; + + // KYS: ALERT: ASYNCH Operation + case IOCTL_ND_CONNECTOR_ACCEPT: + copy_sz = sizeof(struct pkt_nd_connector_accept); + goto complete; //non-block + + case IOCTL_ND_CONNECTOR_REJECT: + copy_sz = sizeof(struct pkt_nd_connector_reject); + break; + + case IOCTL_ND_CONNECTOR_GET_READ_LIMITS: + copy_sz = sizeof(struct pkt_nd_connector_get_rd_limits); + break; + + case IOCTL_ND_CONNECTOR_GET_PRIVATE_DATA: + copy_sz = sizeof(struct pkt_nd_connector_get_priv_data); + break; + + case IOCTL_ND_CONNECTOR_GET_PEER_ADDRESS: + copy_sz = sizeof(struct pkt_nd_connector_get_peer_addr); + break; + + case IOCTL_ND_CONNECTOR_GET_ADDRESS: + copy_sz = sizeof(struct pkt_nd_connector_get_addr); + break; + + // KYS: ALERT: ASYNCH Operation + case IOCTL_ND_CONNECTOR_NOTIFY_DISCONNECT: + copy_sz = sizeof(struct pkt_nd_connector_notify_disconnect); + goto complete; //non-block + + // KYS: ALERT: ASYNCH Operation + case IOCTL_ND_CONNECTOR_DISCONNECT: + hvnd_debug("IOCTL_ND_CONNECTOR_DISCONNECT\n"); + copy_sz = sizeof(struct pkt_nd_connector_notify_disconnect); + goto complete; // non-block + + case IOCTL_ND_QP_CREATE: + copy_sz = sizeof(struct pkt_nd_create_qp); + break; + + case IOCTL_ND_MR_CREATE: + copy_sz = sizeof(struct pkt_nd_create_mr); + break; + + case IOCTL_ND_MR_FREE: + copy_sz = sizeof(struct pkt_nd_free_handle); + break; + + case IOCTL_ND_MR_REGISTER: + copy_sz = sizeof(struct pkt_nd_register_mr); + break; + + case IOCTL_ND_MR_DEREGISTER: + copy_sz = sizeof(struct pkt_nd_deregister_mr); + break; + + case IOCTL_ND_ADAPTER_QUERY_ADDRESS_LIST: + copy_sz = sizeof(struct pkt_query_addr_list); + break; + + case IOCTL_ND_QP_FLUSH: + copy_sz = sizeof(struct pkt_nd_flush_qp); + break; + + default: + hvnd_warn("Got unknown ioctl: %d\n", + ctrl_hdr->io_cntrl_code); + copy_sz = 0; + break; + } + + break; + default: + hvnd_warn("Got an unknown packet type %d\n", *pkt_type); + break; + } + + hvnd_cookie = (struct hvnd_cookie *)requestid; + memcpy(hvnd_cookie->pkt, incoming_pkt_start, copy_sz); + complete(&hvnd_cookie->host_event); + +complete: + /* send out ioctl completion patcket */ + if (desc->flags & VMBUS_DATA_PACKET_FLAG_COMPLETION_REQUESTED) { + int retry = 5; + + while (true) { + int ret; + + ret = vmbus_sendpacket(dev->channel, NULL, 0, + requestid, VM_PKT_COMP, 0); + if (ret == 0) { + break; + } else if (ret == -EAGAIN) { + if (--retry == 0) { + hvnd_error("give up retrying send completion packet\n"); + break; + } + hvnd_warn("retrying send completion packet\n"); + udelay(100); + } else { + hvnd_error("unable to send completion packet ret=%d\n", + ret); + break; + } + } + } + +} --- linux-azure-5.8-5.8.0.orig/drivers/infiniband/hw/vmbus-rdma/vmbus-rdma-144.0/vmbus_rdma.h +++ linux-azure-5.8-5.8.0/drivers/infiniband/hw/vmbus-rdma/vmbus-rdma-144.0/vmbus_rdma.h @@ -0,0 +1,2198 @@ +/* + * Copyright (c) 2014, Microsoft Corporation. + * + * Author: + * K. Y. Srinivasan + * + * This program is free software; you can redistribute it and/or modify it + * under the terms of the GNU General Public License version 2 as published + * by the Free Software Foundation. + * + * This program is distributed in the hope that it will be useful, but + * WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE, GOOD TITLE or + * NON INFRINGEMENT. See the GNU General Public License for more + * details. + * + * Bug fixes/enhancements: Long Li + */ + + +#ifndef _VMBUS_RDMA_H +#define _VMBUS_RDMA_H + + +#include +#include +#include +#include +#include + +/* NetworkDirect version Numbers. + */ +#define ND_VERSION_1 0x1 +#define ND_VERSION_2 0x20000 + +#ifndef NDVER +#define NDVER ND_VERSION_2 +#endif + +#define ND_ADAPTER_FLAG_IN_ORDER_DMA_SUPPORTED 0x00000001 +#define ND_ADAPTER_FLAG_CQ_INTERRUPT_MODERATION_SUPPORTED 0x00000004 +#define ND_ADAPTER_FLAG_MULTI_ENGINE_SUPPORTED 0x00000008 +#define ND_ADAPTER_FLAG_CQ_RESIZE_SUPPORTED 0x00000100 +#define ND_ADAPTER_FLAG_LOOPBACK_CONNECTIONS_SUPPORTED 0x00010000 + +#define ND_CQ_NOTIFY_ERRORS 0 +#define ND_CQ_NOTIFY_ANY 1 +#define ND_CQ_NOTIFY_SOLICITED 2 + +#define ND_MR_FLAG_ALLOW_LOCAL_WRITE 0x00000001 +#define ND_MR_FLAG_ALLOW_REMOTE_READ 0x00000002 +#define ND_MR_FLAG_ALLOW_REMOTE_WRITE 0x00000005 +#define ND_MR_FLAG_RDMA_READ_SINK 0x00000008 +#define ND_MR_FLAG_DO_NOT_SECURE_VM 0x80000000 + +#define ND_OP_FLAG_SILENT_SUCCESS 0x00000001 +#define ND_OP_FLAG_READ_FENCE 0x00000002 +#define ND_OP_FLAG_SEND_AND_SOLICIT_EVENT 0x00000004 +#define ND_OP_FLAG_ALLOW_READ 0x00000008 +#define ND_OP_FLAG_ALLOW_WRITE 0x00000010 + +#if NDVER >= ND_VERSION_2 +#define ND_OP_FLAG_INLINE 0x00000020 +#endif + +#define ND_AF_INET6 23 +#define IF_MAX_ADDR_LENGTH 32 + +struct group_affinity { + u64 mask; //KYS: usually 0 + u16 group; // KYS usually -1 + u16 reserved[3]; +}; + +struct if_physical_addr { + u16 length; + u8 addr[IF_MAX_ADDR_LENGTH]; +}; + +struct adapter_info_v2 { + u32 info_version; + u16 vendor_id; + u16 device_id; + u64 adapter_id; + size_t max_registration_size; + size_t max_window_size; + u32 max_initiator_sge; + u32 max_recv_sge; + u32 max_read_sge; + u32 max_transfer_length; + u32 max_inline_data_size; + u32 max_inbound_read_limit; + u32 max_outbound_read_limit; + u32 max_recv_q_depth; + u32 max_initiator_q_depth; + u32 max_shared_recv_q_depth; + u32 max_completion_q_depth; + u32 inline_request_threshold; + u32 large_request_threshold; + u32 max_caller_data; + u32 max_callee_data; + u32 adapter_flags; +} __packed; + +struct nd2_adapter_info_32 { //KYS: Check what this is + u32 info_version; + u16 vendor_id; + u16 devic_id; + u64 adapter_id; + u32 max_registration_size; + u32 max_window_size; + u32 max_initiator_sge; + u32 max_recv_sge; + u32 max_read_sge; + u32 max_transfer_length; + u32 max_inline_data_size; + u32 max_inbound_read_limit; + u32 max_outbound_read_limit; + u32 max_recv_q_depth; + u32 max_initiator_q_depth; + u32 max_shared_recv_q_depth; + u32 max_completion_q_depth; + u32 inline_request_threshold; + u32 large_request_threshold; + u32 max_caller_data; + u32 max_callee_data; + u32 adapter_flags; +} __packed; + +enum nd2_request_type { + ND2_RT_RECEIVE, + ND2_RT_SEND, + ND2_RT_BIND, + ND2_RT_INVALIDATE, + ND2_RT_READ, + ND2_RT_WRITE +}; + +struct nd2_result { + u32 status; + u32 bytes_transferred; + void *qp_ctx; + void *request_ctx; + enum nd2_request_type request_type; +} __packed; + +struct nd2_sge { + void *buffer; + u32 buffer_length; + u32 mr_token; +} __packed; + +/* + * The communication with the host via ioctls using VMBUS + * as the transport. + */ + +#define ND_IOCTL_VERSION 1 + +enum nd_mapping_type { + ND_MAP_IOSPACE, + ND_MAP_MEMORY, + ND_MAP_MEMORY_COALLESCE, + ND_MAP_PAGES, + ND_MAP_PAGES_COALLESCE, + ND_UNMAP_IOSPACE, + ND_UNMAP_MEMORY, + ND_MAX_MAP_TYPE +}; + +enum nd_caching_type { + ND_NON_CACHED = 0, + ND_CACHED, + ND_WRITE_COMBINED, + ND_MAX_CACHE_TYPE +}; + +enum nd_aceess_type { + ND_READ_ACCESS = 0, + ND_WRITE_ACCESS, + ND_MODIFY_ACCESS +}; + +struct nd_map_io_space { + enum nd_mapping_type map_type; + enum nd_caching_type cache_type; + u32 cb_length; +}; + +struct nd_map_memory { + enum nd_mapping_type map_type; + enum nd_aceess_type access_type; + u64 address; + u32 cb_length; +}; + +struct nd_mapping_id { + enum nd_mapping_type map_type; + u64 id; +}; + +struct ndk_map_pages { + struct nd_map_memory header; + u32 page_offset; +}; + +union nd_mapping { + enum nd_mapping_type map_type; + struct nd_map_io_space map_io_space; + struct nd_map_memory map_memory; + struct nd_mapping_id mapping_id; + struct ndk_map_pages map_pages; +}; + +struct nd_mapping_result { + u64 id; + u64 info; +}; + +struct nd_resource_descriptor { + u64 handle; + u32 ce_mapping_results; + u32 cb_mapping_results_offset; +}; + +struct nd_handle { + u32 version; + u32 reserved; + u64 handle; +}; + +union nd_sockaddr_inet { + struct sockaddr_in ipv4; + struct sockaddr_in6 ipv6; + u16 address_family; //KYS how is this supposed to work? +}; + +struct nd_address_element { + union nd_sockaddr_inet addr; + char mac_addr[ETH_ALEN]; +}; + +struct nd_resolve_address { + u32 version; + u32 reserved; + union nd_sockaddr_inet address; +}; + +struct nd_open_adapter { + u32 version; + u32 reserved; + u32 ce_mapping_cnt; + u32 cb_mapping_offset; + u64 adapter_id; +}; + +struct nd_adapter_query { + u32 version; + u32 info_version; + u64 adapter_handle; +}; + +struct nd_create_cq { + u32 version; + u32 queue_depth; + u32 ce_mapping_cnt; + u32 cb_mapping_offset; + u64 adapter_handle; + struct group_affinity affinity; +}; + +struct nd_create_srq { + u32 version; + u32 queue_depth; + u32 ce_mapping_cnt; + u32 cb_mapping_offset; + u32 max_request_sge; + u32 notify_threshold; + u64 pd_handle; + struct group_affinity affinity; +}; + +struct nd_create_qp_hdr { + u32 version; + u32 cb_max_inline_data; + u32 ce_mapping_cnt; + u32 cb_mapping_offset; //KYS: what is this prefix - ce/cb + u32 initiator_queue_depth; + u32 max_initiator_request_sge; + u64 receive_cq_handle; + u64 initiator_cq_handle; + u64 pd_handle; +}; + +struct nd_create_qp { + struct nd_create_qp_hdr hdr; + u32 receive_queue_depth; + u32 max_receive_request_sge; +}; + +struct nd_create_qp_with_srq { + struct nd_create_qp_hdr header; + u64 srq_handle; +}; + +struct nd_srq_modify { + u32 version; + u32 queue_depth; + u32 ce_mapping_cnt; + u32 cb_mapping_offset; + u32 notify_threshold; + u32 reserved; + u64 srq_handle; +}; + +struct nd_cq_modify { + u32 version; + u32 queue_depth; + u32 ce_mapping_count; + u32 cb_mappings_offset; + u64 cq_handle; +}; + +struct nd_cq_notify { + u32 version; + u32 type; + u64 cq_handle; +}; + +struct nd_mr_register_hdr { + u32 version; + u32 flags; + u64 cb_length; + u64 target_addr; + u64 mr_handle; +}; + +struct nd_mr_register { + struct nd_mr_register_hdr header; + u64 address; +}; + +struct nd_bind { + u32 version; + u32 reserved; + u64 handle; + union nd_sockaddr_inet address; +}; + +struct nd_read_limits { + u32 inbound; + u32 outbound; +}; + +struct nd_connect { + u32 version; + u32 reserved; + struct nd_read_limits read_limits; + u32 cb_private_data_length; + u32 cb_private_data_offset; + u64 connector_handle; + u64 qp_handle; + union nd_sockaddr_inet destination_address; + struct if_physical_addr phys_addr; +}; + +struct nd_accept { + u32 version; + u32 reserved; + struct nd_read_limits read_limits; + u32 cb_private_data_length; + u32 cb_private_data_offset; + u64 connector_handle; + u64 qp_handle; +}; + +struct nd_reject { + u32 version; + u32 reserved; + u32 cb_private_data_length; + u32 cb_private_data_offset; + u64 connector_handle; +}; + +struct nd_listen { + u32 version; + u32 back_log; + u64 listener_handle; +}; + +struct nd_get_connection_request { + u32 version; + u32 reserved; + u64 listener_handle; + u64 connector_handle; +}; + +enum ndv_mmio_type { + ND_PARTITION_KERNEL_VIRTUAL, + ND_PARTITION_SYSTEM_PHYSICAL, + ND_PARTITION_GUEST_PHYSICAL, + ND_MAXIMUM_MMIO_TYPE +}; + +struct ndv_resolve_adapter_id { + u32 version; + struct if_physical_addr phys_addr; +}; + +struct ndv_partition_create { + u32 version; + enum ndv_mmio_type mmio_type; + u64 adapter_id; + u64 xmit_cap; +}; + +struct ndv_partition_bind_luid { + u32 version; + u32 reserved; + u64 partition_handle; + struct if_physical_addr phys_addr; + //IF_LUID luid; //KYS? +}; + +struct ndv_partition_bind_address { + u32 version; + u32 reserved; + u64 partition_handle; + union nd_sockaddr_inet address; + struct if_physical_addr guest_phys_addr; + struct if_physical_addr phys_addr; +}; + +struct ndk_mr_register { + struct nd_mr_register_hdr hdr; + u32 cb_logical_page_addresses_offset; +}; + +struct ndk_bind { + struct nd_bind hdr; + u64 authentication_id; + bool is_admin; +}; + +#define FDN 0x12 +#define METHOD_BUFFERED 0x0 +#define FAA 0x0 + +#define CTL_CODE( DeviceType, Function, Method, Access ) ( \ + ((DeviceType) << 16) | ((Access) << 14) | ((Function) << 2) | (Method) \ +) + +#define ND_FUNCTION(r_, i_) ((r_) << 6 | (i_)) +#define IOCTL_ND(r_, i_) \ + CTL_CODE( FDN, ND_FUNCTION((r_), (i_)), METHOD_BUFFERED, FAA ) + +#define ND_FUNCTION_FROM_CTL_CODE(ctrlCode_) ((ctrlCode_ >> 2) & 0xFFF) +#define ND_RESOURCE_FROM_CTL_CODE(ctrlCode_) (ND_FUNCTION_FROM_CTL_CODE(ctrlCode_) >> 6) +#define ND_OPERATION_FROM_CTRL_CODE(ctrlCode_) (ND_FUNCTION_FROM_CTL_CODE(ctrlCode_) & 0x3F) + +#define ND_DOS_DEVICE_NAME L"\\DosDevices\\Global\\NetworkDirect" +#define ND_WIN32_DEVICE_NAME L"\\\\.\\NetworkDirect" + +enum nd_resource_type { + ND_PROVIDER = 0, + ND_ADAPTER, + ND_PD, + ND_CQ, + ND_MR, + ND_MW, + ND_SRQ, + ND_CONNECTOR, + ND_LISTENER, + ND_QP, + ND_VIRTUAL_PARTITION, + ND_RESOURCE_TYPE_COUNT +}; + +#define ND_OPERATION_COUNT 14 + +#define IOCTL_ND_PROVIDER(i_) IOCTL_ND(ND_PROVIDER, i_) +#define IOCTL_ND_ADAPTER(i_) IOCTL_ND(ND_ADAPTER, i_) +#define IOCTL_ND_PD(i_) IOCTL_ND(ND_PD, i_) +#define IOCTL_ND_CQ(i_) IOCTL_ND(ND_CQ, i_) +#define IOCTL_ND_MR(i_) IOCTL_ND(ND_MR, i_) +#define IOCTL_ND_MW(i_) IOCTL_ND(ND_MW, i_) +#define IOCTL_ND_SRQ(i_) IOCTL_ND(ND_SRQ, i_) +#define IOCTL_ND_CONNECTOR(i_) IOCTL_ND(ND_CONNECTOR, i_) +#define IOCTL_ND_LISTENER(i_) IOCTL_ND(ND_LISTENER, i_) +#define IOCTL_ND_QP(i_) IOCTL_ND(ND_QP, i_) +#define IOCTL_ND_VIRTUAL_PARTITION(i_) IOCTL_ND(ND_VIRTUAL_PARTITION, i_) + +/* Provider IOCTLs */ +#define IOCTL_ND_PROVIDER_INIT IOCTL_ND_PROVIDER( 0 ) +#define IOCTL_ND_PROVIDER_BIND_FILE IOCTL_ND_PROVIDER( 1 ) +#define IOCTL_ND_PROVIDER_QUERY_ADDRESS_LIST IOCTL_ND_PROVIDER( 2 ) +#define IOCTL_ND_PROVIDER_RESOLVE_ADDRESS IOCTL_ND_PROVIDER( 3 ) +#define IOCTL_ND_PROVIDER_MAX_OPERATION 4 + +/* Adapter IOCTLs */ +#define IOCTL_ND_ADAPTER_OPEN IOCTL_ND_ADAPTER( 0 ) +#define IOCTL_ND_ADAPTER_CLOSE IOCTL_ND_ADAPTER( 1 ) +#define IOCTL_ND_ADAPTER_QUERY IOCTL_ND_ADAPTER( 2 ) +#define IOCTL_ND_ADAPTER_QUERY_ADDRESS_LIST IOCTL_ND_ADAPTER( 3 ) +#define IOCTL_ND_ADAPTER_MAX_OPERATION 4 + +/* Protection Domain IOCTLs */ +#define IOCTL_ND_PD_CREATE IOCTL_ND_PD( 0 ) +#define IOCTL_ND_PD_FREE IOCTL_ND_PD( 1 ) +#define IOCTL_ND_PD_MAX_OPERATION 2 + +/* Completion Queue IOCTLs */ +#define IOCTL_ND_CQ_CREATE IOCTL_ND_CQ( 0 ) +#define IOCTL_ND_CQ_FREE IOCTL_ND_CQ( 1 ) +#define IOCTL_ND_CQ_CANCEL_IO IOCTL_ND_CQ( 2 ) +#define IOCTL_ND_CQ_GET_AFFINITY IOCTL_ND_CQ( 3 ) +#define IOCTL_ND_CQ_MODIFY IOCTL_ND_CQ( 4 ) +#define IOCTL_ND_CQ_NOTIFY IOCTL_ND_CQ( 5 ) +#define IOCTL_ND_CQ_MAX_OPERATION 6 + +/* Memory Region IOCTLs */ +#define IOCTL_ND_MR_CREATE IOCTL_ND_MR( 0 ) +#define IOCTL_ND_MR_FREE IOCTL_ND_MR( 1 ) +#define IOCTL_ND_MR_CANCEL_IO IOCTL_ND_MR( 2 ) +#define IOCTL_ND_MR_REGISTER IOCTL_ND_MR( 3 ) +#define IOCTL_ND_MR_DEREGISTER IOCTL_ND_MR( 4 ) +#define IOCTL_NDK_MR_REGISTER IOCTL_ND_MR( 5 ) +#define IOCTL_ND_MR_MAX_OPERATION 6 + +/* Memory Window IOCTLs */ +#define IOCTL_ND_MW_CREATE IOCTL_ND_MW( 0 ) +#define IOCTL_ND_MW_FREE IOCTL_ND_MW( 1 ) +#define IOCTL_ND_MW_MAX_OPERATION 2 + +/* Shared Receive Queue IOCTLs */ +#define IOCTL_ND_SRQ_CREATE IOCTL_ND_SRQ( 0 ) +#define IOCTL_ND_SRQ_FREE IOCTL_ND_SRQ( 1 ) +#define IOCTL_ND_SRQ_CANCEL_IO IOCTL_ND_SRQ( 2 ) +#define IOCTL_ND_SRQ_GET_AFFINITY IOCTL_ND_SRQ( 3 ) +#define IOCTL_ND_SRQ_MODIFY IOCTL_ND_SRQ( 4 ) +#define IOCTL_ND_SRQ_NOTIFY IOCTL_ND_SRQ( 5 ) +#define IOCTL_ND_SRQ_MAX_OPERATION 6 + +/* Connector IOCTLs */ +#define IOCTL_ND_CONNECTOR_CREATE IOCTL_ND_CONNECTOR( 0 ) +#define IOCTL_ND_CONNECTOR_FREE IOCTL_ND_CONNECTOR( 1 ) +#define IOCTL_ND_CONNECTOR_CANCEL_IO IOCTL_ND_CONNECTOR( 2 ) +#define IOCTL_ND_CONNECTOR_BIND IOCTL_ND_CONNECTOR( 3 ) +#define IOCTL_ND_CONNECTOR_CONNECT IOCTL_ND_CONNECTOR( 4 ) +#define IOCTL_ND_CONNECTOR_COMPLETE_CONNECT IOCTL_ND_CONNECTOR( 5 ) +#define IOCTL_ND_CONNECTOR_ACCEPT IOCTL_ND_CONNECTOR( 6 ) +#define IOCTL_ND_CONNECTOR_REJECT IOCTL_ND_CONNECTOR( 7 ) +#define IOCTL_ND_CONNECTOR_GET_READ_LIMITS IOCTL_ND_CONNECTOR( 8 ) +#define IOCTL_ND_CONNECTOR_GET_PRIVATE_DATA IOCTL_ND_CONNECTOR( 9 ) +#define IOCTL_ND_CONNECTOR_GET_PEER_ADDRESS IOCTL_ND_CONNECTOR( 10 ) +#define IOCTL_ND_CONNECTOR_GET_ADDRESS IOCTL_ND_CONNECTOR( 11 ) +#define IOCTL_ND_CONNECTOR_NOTIFY_DISCONNECT IOCTL_ND_CONNECTOR( 12 ) +#define IOCTL_ND_CONNECTOR_DISCONNECT IOCTL_ND_CONNECTOR( 13 ) +#define IOCTL_ND_CONNECTOR_MAX_OPERATION 14 + +/* Listener IOCTLs */ +#define IOCTL_ND_LISTENER_CREATE IOCTL_ND_LISTENER( 0 ) +#define IOCTL_ND_LISTENER_FREE IOCTL_ND_LISTENER( 1 ) +#define IOCTL_ND_LISTENER_CANCEL_IO IOCTL_ND_LISTENER( 2 ) +#define IOCTL_ND_LISTENER_BIND IOCTL_ND_LISTENER( 3 ) +#define IOCTL_ND_LISTENER_LISTEN IOCTL_ND_LISTENER( 4 ) +#define IOCTL_ND_LISTENER_GET_ADDRESS IOCTL_ND_LISTENER( 5 ) +#define IOCTL_ND_LISTENER_GET_CONNECTION_REQUEST IOCTL_ND_LISTENER( 6 ) +#define IOCTL_ND_LISTENER_MAX_OPERATION 7 + +/* Queue Pair IOCTLs */ +#define IOCTL_ND_QP_CREATE IOCTL_ND_QP( 0 ) +#define IOCTL_ND_QP_CREATE_WITH_SRQ IOCTL_ND_QP( 1 ) +#define IOCTL_ND_QP_FREE IOCTL_ND_QP( 2 ) +#define IOCTL_ND_QP_FLUSH IOCTL_ND_QP( 3 ) +#define IOCTL_ND_QP_MAX_OPERATION 4 + +/* Kernel-mode only IOCTLs (IRP_MJ_INTERNAL_DEVICE_CONTROL) */ +#define IOCTL_NDV_PARTITION_RESOLVE_ADAPTER_ID IOCTL_ND_VIRTUAL_PARTITION( 0 ) +#define IOCTL_NDV_PARTITION_CREATE IOCTL_ND_VIRTUAL_PARTITION( 1 ) +#define IOCTL_NDV_PARTITION_FREE IOCTL_ND_VIRTUAL_PARTITION( 2 ) +#define IOCTL_NDV_PARTITION_BIND IOCTL_ND_VIRTUAL_PARTITION( 3 ) +#define IOCTL_NDV_PARTITION_UNBIND IOCTL_ND_VIRTUAL_PARTITION( 4 ) +#define IOCTL_NDV_PARTITION_BIND_LUID IOCTL_ND_VIRTUAL_PARTITION( 5 ) +#define IOCTL_NDV_PARTITION_MAX_OPERATION 6 + + +#define MB_SHIFT 20 + + +/* Ringbuffer size for the channel */ +#define NDV_NUM_PAGES_IN_RING_BUFFER 64 + +#define NDV_MAX_PACKETS_PER_RECEIVE 8 + +#define NDV_MAX_PACKET_COUNT 16304 + +#define NDV_MAX_NUM_OUTSTANDING_RECEIVED_PACKETS (16304) +#define NDV_MAX_HANDLE_TABLE_SIZE (16304) +#define NDV_HOST_MAX_HANDLE_TABLE_SIZE (NDV_MAX_HANDLE_TABLE_SIZE * 16) + + +#define NDV_MAX_MAPPINGS 4 + +#define NDV_STATE_NONE 0x00000000 +#define NDV_STATE_CREATED 0x00000001 +#define NDV_STATE_CONNECTING 0x00000002 +#define NDV_STATE_INITIALIZING 0x00000003 +#define NDV_STATE_OPERATIONAL 0xEFFFFFFF +#define NDV_STATE_FAILED 0xFFFFFFFF + + +#define NDV_MAX_PRIVATE_DATA_SIZE 64 +#define NDV_MAX_IOCTL_SIZE 256 + +/* max size of buffer for vector of ND_MAPPING */ +#define NDV_MAX_MAPPING_BUFFER_SIZE \ + (NDV_MAX_MAPPINGS * sizeof(union nd_mapping)) + +/* max expected ioctl buffer size from users */ +#define NDV_MAX_IOCTL_BUFFER_SIZE \ + (NDV_MAX_IOCTL_SIZE + \ + NDV_MAX_MAPPING_BUFFER_SIZE + \ + NDV_MAX_PRIVATE_DATA_SIZE) + +/* max PFN array for inline buffers */ +#define NDV_MAX_INLINE_PFN_ARRAY_LENGTH 32 + +/* Field header size for inline buffer */ +#define NDV_MAX_MAPPING_PACKET_FILED_BUFFER_SIZE \ + (NDV_MAX_MAPPINGS * sizeof(NDV_PACKET_FIELD)) + +/* Max for a single field */ + +#define NDV_MAX_SINGLE_MAPPING_FIELD ( sizeof(GPA_RANGE) + \ + (sizeof(PFN_NUMBER) * NDV_MAX_INLINE_PFN_ARRAY_LENGTH)) + +/* Max for all inine data */ + +#define NDV_MAX_MAPPING_DATA_SIZE (NDV_MAX_MAPPING_PACKET_FILED_BUFFER_SIZE + \ + (NDV_MAX_MAPPINGS * NDV_MAX_SINGLE_MAPPING_FIELD)) + + +#define NDV_MAX_PACKET_HEADER_SIZE 256 + +#define NDV_MAX_PACKET_SIZE (NDV_MAX_PACKET_HEADER_SIZE + \ + NDV_MAX_IOCTL_BUFFER_SIZE + \ + NDV_MAX_MAPPING_DATA_SIZE) + +/* Well known message type INIT is defined for the channel + * not for the protocol. + */ + +#define NDV_PACKET_TYPE_INIT 0xFFFFFFFF + +/* Invalid protocol version to to identify uninitialized channels */ + +#define NDV_PROTOCOL_VERSION_INVALID 0xFFFFFFFF + +/* Flags that control the bahavior of packet handling */ + +enum ndv_packet_options { + NDV_PACKET_OPTION_NONE = 0x00, + + /* Indicates that the ExternalDataMdl parameter is expectected to be + * passed and must be handled in the reciever. This call must be + * handled specially to ensure that the MDL can be created correctly. + */ + NDV_PACKET_OPTION_EXTERNAL_DATA = 0x01, + + /* Inicates that the reciever must execution the handler at passive. */ + NDV_PACKET_OPTIONS_REQUIRES_PASSIVE = 0x02, + + /* Indicates that the sender does not expect and is not waiting for a + * response packet. + */ + NDV_PACKET_OPTIONS_POST = 0x04, +}; + +#define NDV_PACKET_TYPE(id_, opt_) \ + (((opt_)<<24) | (id_)) + +#define NDV_PACKET_TYPE_OPTIONS(type_) \ + (((type_) >> 24) & 0xFF) + +#define NDV_PACKET_TYPE_ID(type_) \ + ((type_) & 0xFFFFFF) \ + +#define NDV_ADD_PACKET_OPTION(type_, opt_) \ + (type_) |= (opt_<<24) + +/* The header value sent on all packets */ +union ndv_packet_hdr { + + struct { + /* The type of packet. + * This value should be created with the NDV_PACKET_TYPE macro + * to include all packet options within the packet type. + */ + u32 packet_type; + /* The size of the entire fixed message structure that exists + * before the data. This must be >= sizeof(NDV_PACKET_HEADER) + */ + u32 hdr_sz; + /* This size of the data that follows the message + * data_sz + hdr_sz size gives the total size of + * the buffer that is used. + */ + u32 data_sz; + /* The status code used to indicate success or failure. + * It is only used in completions and during responses. + */ + u32 status; //KYS: NTSTATUS? + }; + + u64 padding[2]; //KYS: why? +}; + + +/* The core INIT packet. This message is defined in the channel + * not in the protocol. This message should never change size + * or behavior, as it could impact compatibility in the future. + * This packet is used to negotiate the protocol version, so chaning + * this size could break backward compat. + */ + +union ndv_packet_init { + struct { + u32 packet_type; + u32 protocol_version; + u32 flags; + }; + u64 padding[2]; +} __packed; + +#define NDV_PACKET_INIT_SIZE 16 + +/* Data packing flags used for accessing the dynamic fields inside a packet */ +#define NDV_DATA_PACKING_2 0x1 +#define NDV_DATA_PACKING_4 0x3 +#define NDV_DATA_PACKING_8 0x7 + + +#define NDV_PROTOCOL_VERSION_1 0x0100 +#define NDV_PROTOCOL_VERSION_CURRENT NDV_PROTOCOL_VERSION_1 +#define NDV_PROTOCOL_VERSION_COUNT 1 + +struct ndv_pkt_field { + u32 size; + u32 offset; +}; + +enum ndv_pkt_id { + NDV_PKT_UNKNOWN = 0, + /* Version 1 Message ID's */ + NDV_PKT_ID1_BIND, + NDV_PKT_ID1_CREATE, + NDV_PKT_ID1_CLEANUP, + NDV_PKT_ID1_CANCEL, + NDV_PKT_ID1_CONTROL, + NDV_PKT_ID1_COMPLETE, + NDV_PKT_ID1_INIT_RESOURCES, +}; + +/* The guest will send this as the first messages just after init + * The resources are reserved per channel. + */ + +struct ndv_pkt_hdr_init_resources_1 { + + union ndv_packet_hdr pkt_hdr; + u16 io_space_sz_mb; + u64 io_space_start; + +}; + + + +/* The guest will send this packet to the host after channel init + * to query support for the adapters that are registered. + */ + +struct ndv_pkt_hdr_bind_1 { + union ndv_packet_hdr pkt_hdr; + bool unbind; + union nd_sockaddr_inet ip_address; + struct if_physical_addr phys_addr; + u64 guest_id; +}; + +union ndv_context_handle { + u64 val64; + struct { + u32 local; + u32 remote; + }; +}; + +struct ndv_pkt_hdr_create_1 { + union ndv_packet_hdr pkt_hdr; + + /* Identifies the object used to track this file handle on both + * the guest and the host. When sent from the guest, it will contain + * the guest handle. On success, the host will populate and return + * it's handle value as well. + */ + + union ndv_context_handle handle; + + /* The parameters sent to the CreateFile call */ + u32 access_mask; + u32 open_options; + + u16 file_attributes; //KYS: This field must be 64 bit aligned + + u16 share_access; //KYS + + u32 kys_padding; //KYS + + u16 ea_length; //KYS; needs to be 64 bit aligned; what is ea length - unused +}; + + +struct ndv_pkt_hdr_cleanup_1 { + union ndv_packet_hdr pkt_hdr; + + /* Identifies the object used to track this file handle on both + * the guest and the host. When sent from the guest, it will contain + * the both the guest and host handle values. The host will use this + * value to cleanup its resource, then update its portion of the handle + * to NDV_HANDLE_NULL before returning the data back to the guest. + */ + union ndv_context_handle handle; +}; + +struct ndv_pkt_hdr_cancel_1 { + union ndv_packet_hdr pkt_hdr; + union ndv_context_handle file_handle; + union ndv_context_handle irp_handle; +}; + +struct ndv_bind_port_info { + //LUID authentication_id; //KYS: LUID? + bool is_admin; +}; + +struct ndv_extended_data_flds { + union { + u32 field_count; + u64 padding; + }; + + //struct ndv_pkt_field fields[ANYSIZE_ARRAY]; //KYS? +}; + + +struct ndv_packet_hdr_control_1 { + union ndv_packet_hdr pkt_hdr; + /* Identifies the object used to track this file handle on both + * the guest and the host. This should always have both guest + * and host handle values inside it. + */ + + union ndv_context_handle file_handle; + + /* The handle information for the allocated irp context object. + * This information is used when the host/guest starts the cancelation + */ + union ndv_context_handle irp_handle; + + /* The input data describing in the IO control parameters */ + + u32 io_cntrl_code; + u32 output_buf_sz; + u32 input_buf_sz; + u32 input_output_buf_offset; + + /* These are used in the return message to indicate the status of the IO + * operation and the amount of data written to the output buffer. + */ + u32 io_status; //KYS: NTSTATUS? + u32 bytes_returned; + + /* This contains the field information for additional data that is sent + * with the packet that is IOCTL specific. + */ + + struct ndv_pkt_field extended_data; +}; + +/* + * Include MLX specific defines. + */ + +#include "mx_abi.h" + +/* Driver specific state. + */ + +/* + * We need to have host open a file; some + * Windows constants for open. + */ +#define STANDARD_RIGHTS_ALL (0x001F0000L) +#define FILE_ATTRIBUTE_NORMAL (0x80) +#define FILE_SHARE_READ (0x00000001) +#define FILE_SHARE_WRITE (0x00000002) +#define FILE_SHARE_DELETE (0x00000004) +#define FILE_FLAG_OVERLAPPED (0x40000000) +#define FILE_SHARE_ALL (FILE_SHARE_READ | FILE_SHARE_WRITE | FILE_SHARE_DELETE) +#define CREATE_ALWAYS (2) +#define OPEN_EXISTING (3) + +#define RTL_NUMBER_OF(_x) \ + sizeof(_x)/sizeof(_x[0]) +/* + * The context structure tracks the open state. + */ + +/* + * Packet layout for open adaptor. + */ + +/* + * Packet for querying the address list. + */ + +union query_addr_list_ioctl { + struct nd_handle in; + union nd_sockaddr_inet out[16]; //KYS a max of 16 addresses +}; + +struct pkt_query_addr_list { + struct ndv_packet_hdr_control_1 hdr; + union query_addr_list_ioctl ioctl; + unsigned long activity_id; +}; + + +struct pkt_fld { + u32 size; + u32 offset; +}; + +struct fld_data { + union { + u64 padding; + }; +}; + +struct extended_data_oad { + union { + u32 cnt; + u64 padding; + }; + /* offsets are from start of extended data struct + * and should start on 8 byte boundary + */ + struct pkt_fld fields[IBV_GET_CONTEXT_MAPPING_MAX]; +}; + +union oad_ioctl { + struct nd_open_adapter input; + struct nd_resource_descriptor resrc_desc; +}; + +union oad_mappings { + struct ibv_get_context_req ctx_input; + struct ibv_get_context_resp ctx_output; +}; + +struct pkt_nd_open_adapter { + struct ndv_packet_hdr_control_1 hdr; + + union oad_ioctl ioctl; + union oad_mappings mappings; + + /* + * Extended data. + */ + struct extended_data_oad ext_data; +}; + +/* + * Create CQ IOCTL. + */ + +struct cq_db_gpa { + u32 byte_count; + u32 byte_offset; + u64 pfn_array[2]; +}; + +struct cq_sn_gpa { + u32 byte_count; + u32 byte_offset; + u64 pfn_array[2]; +}; + +struct create_cq_ext_data { + union { + u32 cnt; + u64 padding; + }; + /* offsets are from start of extended data struct + * and should start on 8 byte boundary + */ + struct pkt_fld fields[MLX4_IB_CREATE_CQ_MAPPING_MAX]; + struct cq_db_gpa db_gpa; + struct cq_sn_gpa sn_gpa; + struct gpa_range cqbuf_gpa; +}; + +union create_cq_ioctl { + struct nd_create_cq input; + struct nd_resource_descriptor resrc_desc; +}; + +union create_cq_mappings { + struct ibv_create_cq cq_in; + struct ibv_create_cq_resp cq_resp; +}; + +struct pkt_nd_create_cq { + struct ndv_packet_hdr_control_1 hdr; + + union create_cq_ioctl ioctl; + union create_cq_mappings mappings; + + /* + * Extended data. + */ + struct create_cq_ext_data ext_data; +}; + +/* + * IOCTL to free CQ. + */ +struct free_cq_ioctl { + struct nd_handle in; +}; + +struct pkt_nd_free_cq { + struct ndv_packet_hdr_control_1 hdr; + + struct free_cq_ioctl ioctl; +}; + + +/* + * IOCTL to QUERY CQ - CQ NOTIFY + */ + +struct notify_cq_ioctl { + struct nd_cq_notify in; +}; + +struct pkt_nd_notify_cq { + struct ndv_packet_hdr_control_1 hdr; + struct notify_cq_ioctl ioctl; +}; + +/* + * IOCTL to Create a listner + */ + +struct nd_ep_create { + struct nd_handle hdr; + bool to_semantics; + unsigned long activity_id; +}; + +union listener_cr_ioctl { + struct nd_ep_create in; + u64 out; +}; + +struct pkt_nd_cr_listener { + struct ndv_packet_hdr_control_1 hdr; + union listener_cr_ioctl ioctl; +}; + +/* + * IOCTL to free listener. + */ + +struct listener_free_ioctl { + struct nd_handle in; +}; + +struct pkt_nd_free_listener { + struct ndv_packet_hdr_control_1 hdr; + struct listener_free_ioctl ioctl; +}; + +/* + * IOCTL for listener cancel IO. + */ +struct listener_cancelio_ioctl { + struct nd_handle in; +}; + +struct pkt_nd_cancelio_listener { + struct ndv_packet_hdr_control_1 hdr; + struct listener_cancelio_ioctl ioctl; +}; + +/* + * IOCTL for LISTENER BIND + */ + +union listener_bind_ioctl { + struct ndk_bind in; +}; + +struct pkt_nd_bind_listener { + struct ndv_packet_hdr_control_1 hdr; + union listener_bind_ioctl ioctl; +}; + +/* + * After the listener is bound, enable + * listening. + */ + +union listener_listen_ioctl { + struct nd_listen in; +}; + +struct pkt_nd_listen_listener { + struct ndv_packet_hdr_control_1 hdr; + union listener_listen_ioctl ioctl; +}; + +/* + * IOCTL for getting the adddress from listener. + * + */ + +union listener_get_addr_ioctl { + struct nd_handle in; + union nd_sockaddr_inet out; +}; + +struct pkt_nd_get_addr_listener { + struct ndv_packet_hdr_control_1 hdr; + union listener_get_addr_ioctl ioctl; +}; + +/* + * IOCTL to get a connection from a listener. + */ + +union listener_get_connection_ioctl { + struct nd_get_connection_request in; + union nd_sockaddr_inet out; +}; + +struct pkt_nd_get_connection_listener { + struct ndv_packet_hdr_control_1 hdr; + union listener_get_connection_ioctl ioctl; +}; + + +/* + * Connector IOCTLs + */ + +/* + * IOCTL to create connector. + */ + +union connector_cr_ioctl { //KYS should this be a union or struct? + struct nd_ep_create in; + u64 out; +}; + +struct pkt_nd_cr_connector { + struct ndv_packet_hdr_control_1 hdr; + union connector_cr_ioctl ioctl; //KYS: union or struct +}; + +/* + * IOCTL to free connector. + */ + +struct connector_free_ioctl { + struct nd_handle in; +}; + +struct pkt_nd_free_connector { + struct ndv_packet_hdr_control_1 hdr; + struct connector_free_ioctl ioctl; +}; + +/* + * IOCTL to cancel I/O on a connector. + */ + +struct connector_cancelio_ioctl { + struct nd_handle in; +}; + +struct pkt_nd_cancelio_connector { + struct ndv_packet_hdr_control_1 hdr; + struct connector_cancelio_ioctl ioctl; +}; + +/* + * IOCTL to Bind an address to the connector. + */ + +union connector_bind_ioctl { + struct ndk_bind in; +}; + +struct pkt_nd_bind_connector { + struct ndv_packet_hdr_control_1 hdr; + union connector_bind_ioctl ioctl; +}; + +/* + * IOCTL to connect a connector. + */ + +struct connector_connect_in { + struct nd_connect hdr; + u8 retry_cnt; + u8 rnr_retry_cnt; + u8 priv_data[56]; + unsigned long activity_id; +}; + +union connector_connect_ioctl { + struct connector_connect_in in; +}; + +struct pkt_nd_connector_connect { + struct ndv_packet_hdr_control_1 hdr; + union connector_connect_ioctl ioctl; +}; + +/* + * IOCTL for connector complete connect + */ + +struct complete_connect_in { + struct nd_handle hdr; + u8 rnr_nak_to; + unsigned long activity_id; +}; + +struct complete_connect_out { + enum ibv_qp_state state; +}; + +union connector_complete_connect_ioctl { + struct complete_connect_in in; + struct complete_connect_out out; +}; + +struct pkt_nd_connector_connect_complete { + struct ndv_packet_hdr_control_1 hdr; + union connector_complete_connect_ioctl ioctl; +}; + + +#define MAX_PRIVATE_DATA_LEN 148 + +/* + * IOCTL for connector accept. + */ + +struct connector_accept_in { + struct nd_accept hdr; + u8 rnr_retry_cnt; + u8 rnr_nak_to; + u8 private_data[MAX_PRIVATE_DATA_LEN]; + unsigned long activity_id; +}; + +struct connector_accept_out { + enum ibv_qp_state state; +}; + +union connector_accept_ioctl { + struct connector_accept_in in; + struct connector_accept_out out; +}; + +struct pkt_nd_connector_accept { + struct ndv_packet_hdr_control_1 hdr; + union connector_accept_ioctl ioctl; +}; + +/* + * IOCTL for connector to reject a connection. + */ + +struct connector_reject_in { + struct nd_reject hdr; + u8 private_data[MAX_PRIVATE_DATA_LEN]; +}; + +struct connector_reject_out { + enum ibv_qp_state state; +}; + +union connector_reject_ioctl { + struct connector_reject_in in; + struct connector_reject_out out; +}; + +struct pkt_nd_connector_reject { + struct ndv_packet_hdr_control_1 hdr; + union connector_reject_ioctl ioctl; +}; + +/* + * IOCTL to get connector read limits. + */ + +struct connector_get_rd_limits_in { + struct nd_handle in; +}; + +struct connector_get_rd_limits_out { + struct nd_read_limits out; +}; + +union connector_get_rd_limits_ioctl { + struct connector_get_rd_limits_in in; + struct connector_get_rd_limits_out out; +}; + +struct pkt_nd_connector_get_rd_limits { + struct ndv_packet_hdr_control_1 hdr; + union connector_get_rd_limits_ioctl ioctl; +}; + +/* + * IOCTL to get connector private data. + */ +union connector_get_priv_data_ioctl { + struct nd_handle in; + u8 out[MAX_PRIVATE_DATA_LEN]; +}; + +struct pkt_nd_connector_get_priv_data { + struct ndv_packet_hdr_control_1 hdr; + union connector_get_priv_data_ioctl ioctl; +}; + + +/* + * IOCTL get peer address. + */ + +union connector_get_peer_addr_ioctl { + struct nd_handle in; + union nd_sockaddr_inet out; +}; + +struct pkt_nd_connector_get_peer_addr { + struct ndv_packet_hdr_control_1 hdr; + union connector_get_peer_addr_ioctl ioctl; +}; + +/* + * IOCTL to get connector address. + */ + +union connector_get_addr_ioctl { + struct nd_handle in; + union nd_sockaddr_inet out; +}; + +struct pkt_nd_connector_get_addr { + struct ndv_packet_hdr_control_1 hdr; + union connector_get_addr_ioctl ioctl; +}; + +/* + * IOCTL for disconnect notification. + */ + +union connector_notify_disconnect_ioctl { + struct nd_handle in; +}; + +struct pkt_nd_connector_notify_disconnect { + struct ndv_packet_hdr_control_1 hdr; + union connector_notify_disconnect_ioctl ioctl; +}; + +union connector_disconnect_ioctl { + struct nd_handle in; +}; + +struct pkt_nd_connector_disconnect { + struct ndv_packet_hdr_control_1 hdr; + union connector_notify_disconnect_ioctl ioctl; +}; + +/* + * IOCTLs for QP operations. + */ + +/* + * Create qp IOCTL. + */ + +struct qp_db_gpa { + u32 byte_count; + u32 byte_offset; + u64 pfn_array[1]; +}; + +struct create_qp_ext_data { + union { + u32 cnt; + u64 padding; + }; + /* offsets are from start of extended data struct + * and should start on 8 byte boundary + */ + struct pkt_fld fields[MLX4_IB_CREATE_QP_MAPPINGS_MAX]; + struct qp_db_gpa db_gpa; + struct gpa_range qpbuf_gpa; +}; + +union create_qp_ioctl { + struct nd_create_qp input; + struct nd_resource_descriptor resrc_desc; +}; + +union create_qp_mappings { + struct ibv_create_qp qp_in; + struct ibv_create_qp_resp qp_resp; +}; + +struct pkt_nd_create_qp { + struct ndv_packet_hdr_control_1 hdr; + + union create_qp_ioctl ioctl; + union create_qp_mappings mappings; + + /* + * Extended data. + */ + struct create_qp_ext_data ext_data; +}; + +/* + * IOCTL to flush a QP. + */ +struct flush_qp_ioctl { + struct nd_handle in; + enum ibv_qp_state out; +}; + +struct pkt_nd_flush_qp { + struct ndv_packet_hdr_control_1 hdr; + struct flush_qp_ioctl ioctl; +}; + +/* + * Memory Region IOCTLS + */ +union create_mr_ioctl { + struct nd_handle in; + u64 out; +}; + +struct pkt_nd_create_mr { + struct ndv_packet_hdr_control_1 hdr; + union create_mr_ioctl ioctl; +}; + +struct mr_out { + u32 lkey; + u32 rkey; + unsigned long activity_id; +}; + + +union register_mr_ioctl { + struct nd_mr_register in; + struct mr_out out; +}; + +struct pkt_nd_register_mr { + struct ndv_packet_hdr_control_1 hdr; + union register_mr_ioctl ioctl; +}; + +struct deregister_mr_ioctl { + struct nd_handle in; +}; + +struct pkt_nd_deregister_mr { + struct ndv_packet_hdr_control_1 hdr; + struct deregister_mr_ioctl ioctl; +}; + +/* + * IOCTL to disconnect connector + */ + +/* + * Create PD IOCTL. + */ +struct nd_create_pd_ioctl { + union { + struct nd_handle in; + u64 out_handle; + }; + struct ibv_alloc_pd_resp resp; +}; + +struct pkt_nd_pd_create { + struct ndv_packet_hdr_control_1 hdr; + struct nd_create_pd_ioctl ioctl; +}; + +/* + * Free Handle. Check the layout with Luke. + * + */ +struct free_handle_ioctl { + struct nd_handle in; +}; + +struct pkt_nd_free_handle { + struct ndv_packet_hdr_control_1 hdr; + struct free_handle_ioctl ioctl; +}; + +/* + * Cancel I/O. + */ + +struct cancel_io_ioctl { + struct nd_handle in; +}; + +struct pkt_nd_cancel_io { + struct ndv_packet_hdr_control_1 hdr; + struct cancel_io_ioctl ioctl; +}; + +/* + * Connector states: + */ + +enum connector_state { + HVND_CON_INCOMING, + HVND_CON_INCOMING_ESTABLISHED, + HVND_CON_INCOMING_REJECTED, + HVND_CON_OUTGOING_REQUEST +}; + + +/* + * Adaptor query IOCTL. + */ +struct nd_adap_query_ioctl { + union { + struct nd_adapter_query ad_q; + struct adapter_info_v2 ad_info; + }; +}; + +struct pkt_nd_query_adaptor { + struct ndv_packet_hdr_control_1 hdr; + struct nd_adap_query_ioctl ioctl; +}; + +struct nd_ioctl { + union { + struct nd_handle handle; + u8 raw_buffer[NDV_MAX_IOCTL_BUFFER_SIZE]; + }; +}; + +struct pkt_nd_provider_ioctl { + struct ndv_packet_hdr_control_1 hdr; + struct nd_ioctl ioctl; +}; + +struct hvnd_ib_pd { + struct ib_pd ibpd; + u32 pdn; + u64 handle; +}; + +struct hvnd_work { + struct work_struct work; + void *callback_arg; +}; + +struct hvnd_disconnect_work { + struct work_struct work; + int status; + void *callback_arg; +}; + +/* +struct hvnd_delayed_work { + struct delayed_work work; + void *callback_arg; +}; +*/ + +enum hvnd_cm_state { + hvnd_cm_idle = 0, + hvnd_cm_connect_reply_sent, //active + hvnd_cm_connect_reply_refused, + hvnd_cm_connect_received, //active + hvnd_cm_connect_request_sent, //passive + hvnd_cm_accept_sent, + hvnd_cm_close_sent, + hvnd_cm_established_sent, +}; + +struct incoming_pkt { + struct list_head list_entry; + char pkt[0]; +}; + +struct hvnd_ep_obj { +/* + spinlock_t ep_lk; + bool to_be_destroyed; + bool io_outstanding; + + wait_queue_head_t wait; + bool stopped; + atomic_t process_refcnt; // how many NDV_PKT_ID1_COMPLETE packets we are currently processing +*/ + bool stopping; + wait_queue_head_t wait_pending; + atomic_t nr_requests_pending; + + enum nd_resource_type type; + enum connector_state state; //KYS need to look at locking + struct iw_cm_id *cm_id; + enum hvnd_cm_state cm_state; + struct completion block_event; + struct completion disconnect_event; + struct completion connector_accept_event; + int connector_accept_status; + u64 ep_handle; + spinlock_t incoming_pkt_list_lock; + struct list_head incoming_pkt_list; + struct hvnd_ep_obj *parent; + struct hvnd_dev *nd_dev; + struct hvnd_ucontext *uctx; + struct hvnd_work wrk; + struct hvnd_cq *cq; + u8 ord; + u8 ird; + char priv_data[MAX_PRIVATE_DATA_LEN]; + bool incoming; + atomic_t disconnect_notified; + u64 outstanding_handle; + u32 local_irp; + struct hvnd_ep_obj *outstanding_ep; + struct pkt_nd_connector_connect connector_connect_pkt; + int connector_connect_retry; +}; + +struct hvnd_ucontext { + struct ib_ucontext ibucontext; + struct list_head listentry; + struct ndv_pkt_hdr_create_1 create_pkt; + struct ndv_pkt_hdr_create_1 create_pkt_ovl; /* Overlap handle */ + struct pkt_nd_provider_ioctl pr_init_pkt; + union ndv_context_handle file_handle; + union ndv_context_handle file_handle_ovl; + + struct pkt_nd_open_adapter o_adap_pkt; + + u64 adaptor_hdl; + + /* + * Protection domain state. + */ + struct pkt_nd_pd_create pd_cr_pkt; + + u64 uar_base; + u64 bf_base; + u32 bf_buf_size; + u32 bf_offset; + u32 cqe_size; + u32 max_qp_wr; + u32 max_sge; + u32 max_cqe; + u32 num_qps; + + /* + * State to manage dorbell pages: + */ + struct list_head db_page_list; + struct mutex db_page_mutex; + + atomic_t refcnt; + +}; + +struct hvnd_dev { + struct ib_device ibdev; + struct hv_device *hvdev; + u32 device_cap_flags; + unsigned char nports; + bool ib_active; + + /* State to manage interaction with the host. + */ + + spinlock_t uctxt_lk; + struct list_head listentry; + + unsigned long mmio_sz; + unsigned long mmio_start_addr; + struct resource mmio_resource; + void *mmio_virt; + + unsigned long negotiated_version; + union ndv_packet_init init_pkt; + struct ndv_pkt_hdr_init_resources_1 resources; + struct ndv_pkt_hdr_bind_1 bind_pkt; + + struct ndv_pkt_hdr_create_1 global_create_pkt; + union ndv_context_handle global_file_handle; + + struct semaphore query_pkt_sem; + bool query_pkt_set; + struct pkt_nd_query_adaptor query_pkt; + + /* + * ID tables. + */ + spinlock_t id_lock; + + struct idr cqidr; + struct idr qpidr; + struct idr mmidr; + struct idr irpidr; + struct idr uctxidr; + atomic_t open_cnt; + + char ip_addr[4]; + char mac_addr[6]; + struct completion addr_set; + int bind_complete; + struct mutex bind_mutex; +}; + +struct hvnd_cq { + struct ib_cq ibcq; + void *cq_buf; + void *db_addr; + u32 arm_sn; + u32 entries; + + u32 cqn; + u32 cqe; + u64 cq_handle; + + struct ib_umem *umem; + struct ib_umem *db_umem; + struct mlx4_ib_user_db_page user_db_page; + struct hvnd_ucontext *uctx; + struct hvnd_ep_obj ep_object; //KYS need to clean this up; have a cq irp state + bool monitor; + bool upcall_pending; +}; + +struct hvnd_qp { + struct ib_qp ibqp; + void *qp_buf; + void *db_addr; + u32 buf_size; + u8 port; + struct hvnd_dev *nd_dev; + + __u8 log_sq_bb_count; + __u8 log_sq_stride; + __u8 sq_no_prefetch; + + int rq_wqe_cnt; + int rq_wqe_shift; + int rq_max_gs; + + int sq_wqe_cnt; + int sq_wqe_shift; + int sq_max_gs; + + u32 max_inline_data; + + u32 initiator_q_depth; + u32 initiator_request_sge; + + u32 receive_q_depth; + u32 receive_request_sge; + + struct hvnd_cq *recv_cq; + struct hvnd_cq *send_cq; + + u64 receive_cq_handle; + u64 initiator_cq_handle; + u64 pd_handle; + + u64 qp_handle; + u32 qpn; + u32 max_send_wr; + u32 max_recv_wr; + u32 max_send_sge; + u32 max_recv_sge; + + struct ib_umem *umem; + struct ib_umem *db_umem; + struct mlx4_ib_user_db_page user_db_page; + struct hvnd_ucontext *uctx; + struct iw_cm_id *cm_id; + + /* + * Current QP state; need to look at locking. + * XXXKYS + */ + enum ib_qp_state qp_state; + bool cq_notify; + wait_queue_head_t wait; + atomic_t refcnt; + struct hvnd_ep_obj *connector; +}; + +struct hvnd_mr { + struct ib_mr ibmr; + struct hvnd_ib_pd *pd; + struct ib_umem *umem; + u64 start; + u64 length; + u64 virt; + int acc; + u64 mr_handle; + u32 mr_lkey; + u32 mr_rkey; +}; + +struct hvnd_cookie { + struct completion host_event; + void *pkt; +}; + +/* + * Definitions to retrieve the IP address. + */ + +#define HVND_CURRENT_VERSION 0 + +struct hvnd_ipaddr_tuple { + char mac_address[ETH_ALEN]; + struct sockaddr addr; +}; + +struct hvnd_msg { + int status; + struct hvnd_ipaddr_tuple ip_tuple; +}; + +static inline struct hvnd_ib_pd *to_nd_pd(struct ib_pd *pd) +{ + return container_of(pd, struct hvnd_ib_pd, ibpd); +} + +static inline struct hvnd_dev *to_nd_dev(struct ib_device *ibdev) +{ + return container_of(ibdev, struct hvnd_dev, ibdev); +} + +static inline struct hvnd_cq *to_nd_cq(struct ib_cq *ibcq) +{ + return container_of(ibcq, struct hvnd_cq, ibcq); +} + +static inline struct hvnd_qp *to_nd_qp(struct ib_qp *ibqp) +{ + return container_of(ibqp, struct hvnd_qp, ibqp); +} + +static inline struct hvnd_ucontext *to_nd_context(struct ib_ucontext *ibucontext) +{ + return container_of(ibucontext, struct hvnd_ucontext, ibucontext); +} + +static inline struct hvnd_ucontext *get_uctx_from_pd(struct ib_pd *pd) +{ + return to_nd_context(pd->uobject->context); +} + +static inline struct hvnd_mr *to_nd_mr(struct ib_mr *ibmr) +{ + return container_of(ibmr, struct hvnd_mr, ibmr); +} +/* + * ID management. + */ + +static inline int insert_handle(struct hvnd_dev *dev, struct idr *idr, + void *handle, u32 id) +{ + int ret; + unsigned long flags; + + idr_preload(GFP_KERNEL); + spin_lock_irqsave(&dev->id_lock, flags); + + ret = idr_alloc(idr, handle, id, id + 1, GFP_ATOMIC); + + spin_unlock_irqrestore(&dev->id_lock, flags); + idr_preload_end(); + + WARN(ret < 0, "Failed to allocate for id=%d ret=%d\n", id, ret); + return ret < 0 ? ret : 0; +} + +static inline void remove_handle(struct hvnd_dev *dev, struct idr *idr, u32 id) +{ + unsigned long flags; + + spin_lock_irqsave(&dev->id_lock, flags); + idr_remove(idr, id); + spin_unlock_irqrestore(&dev->id_lock, flags); +} + +static inline struct hvnd_cq *get_cqp(struct hvnd_dev *dev, u32 cqid) +{ + struct hvnd_cq *cqp; + unsigned long flags; + + spin_lock_irqsave(&dev->id_lock, flags); + cqp = idr_find(&dev->cqidr, cqid); + spin_unlock_irqrestore(&dev->id_lock, flags); + + return cqp; +} + +static inline struct hvnd_qp *get_qpp(struct hvnd_dev *dev, u32 qpid) +{ + struct hvnd_qp *qpp; + unsigned long flags; + + spin_lock_irqsave(&dev->id_lock, flags); + qpp = idr_find(&dev->qpidr, qpid); + spin_unlock_irqrestore(&dev->id_lock, flags); + + return qpp; +} + +static inline struct hvnd_ucontext *get_uctx(struct hvnd_dev *dev, u32 pid) +{ + struct hvnd_ucontext *uctx; + unsigned long flags; + + spin_lock_irqsave(&dev->id_lock, flags); + uctx = idr_find(&dev->uctxidr, pid); + spin_unlock_irqrestore(&dev->id_lock, flags); + + return uctx; +} + + +static inline void *map_irp_to_ctx(struct hvnd_dev *nd_dev, u32 irp) +{ + void *ctx; + unsigned long flags; + + spin_lock_irqsave(&nd_dev->id_lock, flags); + ctx = idr_find(&nd_dev->irpidr, irp); + spin_unlock_irqrestore(&nd_dev->id_lock, flags); + + return ctx; +} + + + +void hvnd_callback(void *context); +int hvnd_negotiate_version(struct hvnd_dev *nd_dev); +int hvnd_init_resources(struct hvnd_dev *nd_dev); +int hvnd_bind_nic(struct hvnd_dev *nd_dev, bool un_bind, char *ip_addr, char *mac_addr); +int hvnd_open_adaptor(struct hvnd_dev *nd_dev, struct hvnd_ucontext *uctx); +int hvnd_close_adaptor(struct hvnd_dev *nd_dev, struct hvnd_ucontext *uctx); +int hvnd_query_adaptor(struct hvnd_dev *nd_dev, struct hvnd_ucontext *uctx); +int hvnd_create_pd(struct hvnd_ucontext *uctx, struct hvnd_dev *nd_dev, + struct hvnd_ib_pd *hvnd_pd); + +/* + * CQ operations. + */ +int hvnd_create_cq(struct hvnd_dev *nd_dev, struct hvnd_ucontext *uctx, + struct hvnd_cq *cq); +int hvnd_destroy_cq(struct hvnd_dev *nd_dev, struct hvnd_cq *cq); +int hvnd_notify_cq(struct hvnd_dev *nd_dev, struct hvnd_cq *cq, + u32 notify_type, u64 irp_handle); + +/* + * QP operations. + */ +int hvnd_create_qp(struct hvnd_dev *nd_dev, struct hvnd_ucontext *uctx, + struct hvnd_qp *qp); + +int hvnd_free_qp(struct hvnd_dev *nd_dev, struct hvnd_ucontext *uctx, + struct hvnd_qp *qp); + +int hvnd_flush_qp(struct hvnd_dev *nd_dev, struct hvnd_ucontext *uctx, + struct hvnd_qp *qp); + +/* + * MR operations. + */ + +int hvnd_cr_mr(struct hvnd_dev *nd_dev, struct hvnd_ucontext *uctx, + u64 pd_handle, u64 *mr_handle); + +int hvnd_free_mr(struct hvnd_dev *nd_dev, struct hvnd_ucontext *uctx, + u64 handle); + +int hvnd_mr_register(struct hvnd_dev *nd_dev, struct hvnd_ucontext *uctx, + struct hvnd_mr *mr); +int hvnd_deregister_mr(struct hvnd_dev *nd_dev, struct hvnd_ucontext *uctx, + u64 handle); + +/* + * Listner operations + */ +int hvnd_cr_listener(struct hvnd_dev *nd_dev, struct hvnd_ucontext *uctx, u64 *handle); + + +int hvnd_free_listener(struct hvnd_dev *nd_dev, struct hvnd_ucontext *uctx, + u64 listener_handle); + +int hvnd_bind_listener(struct hvnd_dev *nd_dev, struct hvnd_ucontext *uctx, + u64 listener_handle, union nd_sockaddr_inet *addr); + +int hvnd_listen_listener(struct hvnd_dev *nd_dev, struct hvnd_ucontext *uctx, + u64 listener_handle, u32 backlog); + +int hvnd_get_addr_listener(struct hvnd_dev *nd_dev, struct hvnd_ucontext *uctx, + u64 listener_handle, union nd_sockaddr_inet *addr); + +int hvnd_get_connection_listener(struct hvnd_dev *nd_dev, struct hvnd_ucontext *uctx, + u64 listener_handle, u64 connector_handle, + u64 irp_handle); + +/* + * Connector operations. + */ +int hvnd_cr_connector(struct hvnd_dev *nd_dev, struct hvnd_ucontext *uctx, + u64 *connector_handle); + +int hvnd_free_connector(struct hvnd_dev *nd_dev, struct hvnd_ucontext *uctx, + u64 handle); + +int hvnd_cancelio_connector(struct hvnd_dev *nd_dev, struct hvnd_ucontext *uctx, + u64 handle); +int hvnd_bind_connector(struct hvnd_dev *nd_dev, struct hvnd_ucontext *uctx, + u64 handle, union nd_sockaddr_inet *addr); + +int hvnd_connector_connect(struct hvnd_dev *nd_dev, struct hvnd_ucontext *uctx, + u64 connector_handle, u32 in_rd_limit, u32 out_rd_limit, + u32 priv_data_length, const u8 *priv_data, + u64 qp_handle, struct if_physical_addr *phys_addr, + union nd_sockaddr_inet *dest_addr, struct hvnd_ep_obj *ep); + +int hvnd_connector_complete_connect(struct hvnd_dev *nd_dev, struct hvnd_ucontext *uctx, + u64 connector_handle, enum ibv_qp_state *qp_state); + +int hvnd_connector_accept(struct hvnd_dev *nd_dev, struct hvnd_ucontext *uctx, + u64 connector_handle, + u64 qp_handle, + u32 in_rd_limit, u32 out_rd_limit, + u32 priv_data_length, const u8 *priv_data, + enum ibv_qp_state *qp_state, struct hvnd_ep_obj *ep); + +int hvnd_connector_reject(struct hvnd_dev *nd_dev, struct hvnd_ucontext *uctx, + u64 connector_handle, + u32 priv_data_length, u8 *priv_data, + enum ibv_qp_state *qp_state); + +int hvnd_connector_get_rd_limits(struct hvnd_dev *nd_dev, + struct hvnd_ucontext *uctx, + u64 connector_handle, + struct nd_read_limits *rd_limits); + +int hvnd_connector_get_priv_data(struct hvnd_dev *nd_dev, + struct hvnd_ucontext *uctx, + u64 connector_handle, + u8 *priv_data); + +int hvnd_connector_get_peer_addr(struct hvnd_dev *nd_dev, + struct hvnd_ucontext *uctx, + u64 connector_handle, + union nd_sockaddr_inet *peer_addr); + +int hvnd_connector_get_local_addr(struct hvnd_dev *nd_dev, + struct hvnd_ucontext *uctx, + u64 connector_handle, + union nd_sockaddr_inet *local_addr); + +int hvnd_connector_notify_disconnect(struct hvnd_dev *nd_dev, + struct hvnd_ucontext *uctx, + u64 connector_handle, struct hvnd_ep_obj *ep); + + +int hvnd_connector_disconnect(struct hvnd_dev *nd_dev, + struct hvnd_ucontext *uctx, + u64 connector_handle, struct hvnd_ep_obj *ep); + +int hvnd_free_handle(struct hvnd_dev *nd_dev, struct hvnd_ucontext *uctx, + u64 handle, u32 ioctl); + +int hvnd_cancel_io(struct hvnd_ep_obj *ep_object); + +char *hvnd_get_op_name(int ioctl); + +void hvnd_acquire_uctx_ref(struct hvnd_ucontext *uctx); +void hvnd_drop_uctx_ref(struct hvnd_dev *nd_dev,struct hvnd_ucontext *uctx); +void hvnd_process_events(struct work_struct *work); + +void hvnd_process_cq_event_pending(struct hvnd_ep_obj *ep, int status); +void hvnd_process_cq_event_complete(struct hvnd_ep_obj *ep, int status); +void hvnd_process_connector_accept(struct hvnd_ep_obj *ep_object, int status); +void hvnd_process_notify_disconnect(struct hvnd_ep_obj *ep_object, int status); +void hvnd_process_disconnect(struct hvnd_ep_obj *ep_object, int status); + +void put_irp_handle(struct hvnd_dev *nd_dev, u32 irp); +int get_irp_handle(struct hvnd_dev *nd_dev, u32 *local, void *irp_ctx); + +void hvnd_init_hdr(struct ndv_packet_hdr_control_1 *hdr, + u32 data_sz, u32 local, u32 remote, + u32 ioctl_code, + u32 ext_data_sz, u32 ext_data_offset, + u64 irp_handle); + +int hvnd_send_ioctl_pkt(struct hvnd_dev *nd_dev, + struct ndv_packet_hdr_control_1 *hdr, + u32 pkt_size, u64 cookie); + +int hvnd_get_outgoing_rdma_addr(struct hvnd_dev *nd_dev, struct hvnd_ucontext *uctx, + union nd_sockaddr_inet *og_addr); + +int hvnd_get_neigh_mac_addr(struct sockaddr *local, struct sockaddr *remote, char *mac_addr); + +bool ep_add_work_pending(struct hvnd_ep_obj *ep_object); +void ep_del_work_pending(struct hvnd_ep_obj *ep_object); +void ep_stop(struct hvnd_ep_obj *ep_object); + +#define current_pid() (current->pid) +/* + * NT STATUS defines. + */ + +#define STATUS_SUCCESS 0x0 +#define STATUS_PENDING 0x00000103 +#define STATUS_CANCELLED 0xC0000120 +#define STATUS_DISCONNECTED 0xC000020C +#define STATUS_TIMEOUT 0xC00000B5 + +void inc_ioctl_counter_request(unsigned ioctl); +void inc_ioctl_counter_response(unsigned ioctl); + +#define NDV_PROTOCOL_VAERSION_INVALID -1 +#define NDV_PACKET_INIT_SIZE 16 /* Size of the INIT packet */ + +#define HVND_RING_SZ (PAGE_SIZE * 64) + +/* logging levels */ +#define HVND_ERROR 0 +#define HVND_WARN 1 +#define HVND_INFO 2 +#define HVND_DEBUG 3 + +extern int hvnd_log_level; + +#define hvnd_error(fmt, args...) hvnd_log(HVND_ERROR, fmt, ##args) +#define hvnd_warn(fmt, args...) hvnd_log(HVND_WARN, fmt, ##args) +#define hvnd_info(fmt, args...) hvnd_log(HVND_INFO, fmt, ##args) +#define hvnd_debug(fmt, args...) hvnd_log(HVND_DEBUG, fmt, ##args) + +#define hvnd_log(level, fmt, args...) \ +do { \ + if (unlikely(hvnd_log_level >= (level))) \ + printk(KERN_ERR "hvnd %s[%u]: " fmt, __func__, __LINE__, ##args); \ +} while (0) + +#endif /* _VMBUS_RDMA_H */ --- linux-azure-5.8-5.8.0.orig/drivers/infiniband/hw/vmw_pvrdma/pvrdma.h +++ linux-azure-5.8-5.8.0/drivers/infiniband/hw/vmw_pvrdma/pvrdma.h @@ -509,6 +509,20 @@ return flags & PVRDMA_MASK(PVRDMA_SEND_FLAGS_MAX); } +static inline int pvrdma_network_type_to_ib(enum pvrdma_network_type type) +{ + switch (type) { + case PVRDMA_NETWORK_ROCE_V1: + return RDMA_NETWORK_ROCE_V1; + case PVRDMA_NETWORK_IPV4: + return RDMA_NETWORK_IPV4; + case PVRDMA_NETWORK_IPV6: + return RDMA_NETWORK_IPV6; + default: + return RDMA_NETWORK_IPV6; + } +} + void pvrdma_qp_cap_to_ib(struct ib_qp_cap *dst, const struct pvrdma_qp_cap *src); void ib_qp_cap_to_pvrdma(struct pvrdma_qp_cap *dst, --- linux-azure-5.8-5.8.0.orig/drivers/infiniband/hw/vmw_pvrdma/pvrdma_cq.c +++ linux-azure-5.8-5.8.0/drivers/infiniband/hw/vmw_pvrdma/pvrdma_cq.c @@ -235,7 +235,7 @@ * @cq: the completion queue to destroy. * @udata: user data or null for kernel object */ -void pvrdma_destroy_cq(struct ib_cq *cq, struct ib_udata *udata) +int pvrdma_destroy_cq(struct ib_cq *cq, struct ib_udata *udata) { struct pvrdma_cq *vcq = to_vcq(cq); union pvrdma_cmd_req req; @@ -261,6 +261,7 @@ pvrdma_free_cq(dev, vcq); atomic_dec(&dev->num_cqs); + return 0; } static inline struct pvrdma_cqe *get_cqe(struct pvrdma_cq *cq, int i) @@ -363,7 +364,7 @@ wc->dlid_path_bits = cqe->dlid_path_bits; wc->port_num = cqe->port_num; wc->vendor_err = cqe->vendor_err; - wc->network_hdr_type = cqe->network_hdr_type; + wc->network_hdr_type = pvrdma_network_type_to_ib(cqe->network_hdr_type); /* Update shared ring state */ pvrdma_idx_ring_inc(&cq->ring_state->rx.cons_head, cq->ibcq.cqe); --- linux-azure-5.8-5.8.0.orig/drivers/infiniband/hw/vmw_pvrdma/pvrdma_main.c +++ linux-azure-5.8-5.8.0/drivers/infiniband/hw/vmw_pvrdma/pvrdma_main.c @@ -266,7 +266,7 @@ } ret = ib_device_set_netdev(&dev->ib_dev, dev->netdev, 1); if (ret) - return ret; + goto err_srq_free; spin_lock_init(&dev->srq_tbl_lock); rdma_set_device_sysfs_group(&dev->ib_dev, &pvrdma_attr_group); --- linux-azure-5.8-5.8.0.orig/drivers/infiniband/hw/vmw_pvrdma/pvrdma_verbs.h +++ linux-azure-5.8-5.8.0/drivers/infiniband/hw/vmw_pvrdma/pvrdma_verbs.h @@ -411,7 +411,7 @@ int sg_nents, unsigned int *sg_offset); int pvrdma_create_cq(struct ib_cq *ibcq, const struct ib_cq_init_attr *attr, struct ib_udata *udata); -void pvrdma_destroy_cq(struct ib_cq *cq, struct ib_udata *udata); +int pvrdma_destroy_cq(struct ib_cq *cq, struct ib_udata *udata); int pvrdma_poll_cq(struct ib_cq *ibcq, int num_entries, struct ib_wc *wc); int pvrdma_req_notify_cq(struct ib_cq *cq, enum ib_cq_notify_flags flags); int pvrdma_create_ah(struct ib_ah *ah, struct rdma_ah_init_attr *init_attr, --- linux-azure-5.8-5.8.0.orig/drivers/infiniband/sw/rdmavt/Kconfig +++ linux-azure-5.8-5.8.0/drivers/infiniband/sw/rdmavt/Kconfig @@ -1,7 +1,8 @@ # SPDX-License-Identifier: GPL-2.0-only config INFINIBAND_RDMAVT tristate "RDMA verbs transport library" - depends on X86_64 && ARCH_DMA_ADDR_T_64BIT + depends on INFINIBAND_VIRT_DMA + depends on X86_64 depends on PCI select DMA_VIRT_OPS help --- linux-azure-5.8-5.8.0.orig/drivers/infiniband/sw/rdmavt/cq.c +++ linux-azure-5.8-5.8.0/drivers/infiniband/sw/rdmavt/cq.c @@ -315,7 +315,7 @@ * * Called by ib_destroy_cq() in the generic verbs code. */ -void rvt_destroy_cq(struct ib_cq *ibcq, struct ib_udata *udata) +int rvt_destroy_cq(struct ib_cq *ibcq, struct ib_udata *udata) { struct rvt_cq *cq = ibcq_to_rvtcq(ibcq); struct rvt_dev_info *rdi = cq->rdi; @@ -328,6 +328,7 @@ kref_put(&cq->ip->ref, rvt_release_mmap_info); else vfree(cq->kqueue); + return 0; } /** --- linux-azure-5.8-5.8.0.orig/drivers/infiniband/sw/rdmavt/cq.h +++ linux-azure-5.8-5.8.0/drivers/infiniband/sw/rdmavt/cq.h @@ -53,7 +53,7 @@ int rvt_create_cq(struct ib_cq *ibcq, const struct ib_cq_init_attr *attr, struct ib_udata *udata); -void rvt_destroy_cq(struct ib_cq *ibcq, struct ib_udata *udata); +int rvt_destroy_cq(struct ib_cq *ibcq, struct ib_udata *udata); int rvt_req_notify_cq(struct ib_cq *ibcq, enum ib_cq_notify_flags notify_flags); int rvt_resize_cq(struct ib_cq *ibcq, int cqe, struct ib_udata *udata); int rvt_poll_cq(struct ib_cq *ibcq, int num_entries, struct ib_wc *entry); --- linux-azure-5.8-5.8.0.orig/drivers/infiniband/sw/rdmavt/vt.c +++ linux-azure-5.8-5.8.0/drivers/infiniband/sw/rdmavt/vt.c @@ -95,9 +95,7 @@ if (!rdi) return rdi; - rdi->ports = kcalloc(nports, - sizeof(struct rvt_ibport **), - GFP_KERNEL); + rdi->ports = kcalloc(nports, sizeof(*rdi->ports), GFP_KERNEL); if (!rdi->ports) ib_dealloc_device(&rdi->ibdev); --- linux-azure-5.8-5.8.0.orig/drivers/infiniband/sw/rxe/Kconfig +++ linux-azure-5.8-5.8.0/drivers/infiniband/sw/rxe/Kconfig @@ -2,7 +2,7 @@ config RDMA_RXE tristate "Software RDMA over Ethernet (RoCE) driver" depends on INET && PCI && INFINIBAND - depends on !64BIT || ARCH_DMA_ADDR_T_64BIT + depends on INFINIBAND_VIRT_DMA select NET_UDP_TUNNEL select CRYPTO_CRC32 select DMA_VIRT_OPS --- linux-azure-5.8-5.8.0.orig/drivers/infiniband/sw/rxe/rxe.c +++ linux-azure-5.8-5.8.0/drivers/infiniband/sw/rxe/rxe.c @@ -48,6 +48,8 @@ } +bool rxe_initialized; + /* free resources for a rxe device all objects created for this device must * have been destroyed */ @@ -147,9 +149,6 @@ rxe_init_port_param(port); - if (!port->attr.pkey_tbl_len || !port->attr.gid_tbl_len) - return -EINVAL; - port->pkey_tbl = kcalloc(port->attr.pkey_tbl_len, sizeof(*port->pkey_tbl), GFP_KERNEL); @@ -348,6 +347,7 @@ return err; rdma_link_register(&rxe_link_ops); + rxe_initialized = true; pr_info("loaded\n"); return 0; } @@ -359,6 +359,7 @@ rxe_net_exit(); rxe_cache_exit(); + rxe_initialized = false; pr_info("unloaded\n"); } --- linux-azure-5.8-5.8.0.orig/drivers/infiniband/sw/rxe/rxe.h +++ linux-azure-5.8-5.8.0/drivers/infiniband/sw/rxe/rxe.h @@ -67,6 +67,8 @@ #define RXE_ROCE_V2_SPORT (0xc000) +extern bool rxe_initialized; + static inline u32 rxe_crc32(struct rxe_dev *rxe, u32 crc, void *next, size_t len) { --- linux-azure-5.8-5.8.0.orig/drivers/infiniband/sw/rxe/rxe_mr.c +++ linux-azure-5.8-5.8.0/drivers/infiniband/sw/rxe/rxe_mr.c @@ -207,6 +207,7 @@ vaddr = page_address(sg_page_iter_page(&sg_iter)); if (!vaddr) { pr_warn("null vaddr\n"); + ib_umem_release(umem); err = -ENOMEM; goto err1; } --- linux-azure-5.8-5.8.0.orig/drivers/infiniband/sw/rxe/rxe_net.c +++ linux-azure-5.8-5.8.0/drivers/infiniband/sw/rxe/rxe_net.c @@ -47,18 +47,6 @@ static struct rxe_recv_sockets recv_sockets; -struct device *rxe_dma_device(struct rxe_dev *rxe) -{ - struct net_device *ndev; - - ndev = rxe->ndev; - - if (is_vlan_dev(ndev)) - ndev = vlan_dev_real_dev(ndev); - - return ndev->dev.parent; -} - int rxe_mcast_add(struct rxe_dev *rxe, union ib_gid *mgid) { int err; @@ -453,6 +441,11 @@ void rxe_loopback(struct sk_buff *skb) { + if (skb->protocol == htons(ETH_P_IP)) + skb_pull(skb, sizeof(struct iphdr)); + else + skb_pull(skb, sizeof(struct ipv6hdr)); + rxe_rcv(skb); } --- linux-azure-5.8-5.8.0.orig/drivers/infiniband/sw/rxe/rxe_recv.c +++ linux-azure-5.8-5.8.0/drivers/infiniband/sw/rxe/rxe_recv.c @@ -36,21 +36,26 @@ #include "rxe.h" #include "rxe_loc.h" +/* check that QP matches packet opcode type and is in a valid state */ static int check_type_state(struct rxe_dev *rxe, struct rxe_pkt_info *pkt, struct rxe_qp *qp) { + unsigned int pkt_type; + if (unlikely(!qp->valid)) goto err1; + pkt_type = pkt->opcode & 0xe0; + switch (qp_type(qp)) { case IB_QPT_RC: - if (unlikely((pkt->opcode & IB_OPCODE_RC) != 0)) { + if (unlikely(pkt_type != IB_OPCODE_RC)) { pr_warn_ratelimited("bad qp type\n"); goto err1; } break; case IB_QPT_UC: - if (unlikely(!(pkt->opcode & IB_OPCODE_UC))) { + if (unlikely(pkt_type != IB_OPCODE_UC)) { pr_warn_ratelimited("bad qp type\n"); goto err1; } @@ -58,7 +63,7 @@ case IB_QPT_UD: case IB_QPT_SMI: case IB_QPT_GSI: - if (unlikely(!(pkt->opcode & IB_OPCODE_UD))) { + if (unlikely(pkt_type != IB_OPCODE_UD)) { pr_warn_ratelimited("bad qp type\n"); goto err1; } @@ -281,6 +286,8 @@ struct rxe_mc_elem *mce; struct rxe_qp *qp; union ib_gid dgid; + struct sk_buff *per_qp_skb; + struct rxe_pkt_info *per_qp_pkt; int err; if (skb->protocol == htons(ETH_P_IP)) @@ -298,7 +305,6 @@ list_for_each_entry(mce, &mcg->qp_list, qp_list) { qp = mce->qp; - pkt = SKB_TO_PKT(skb); /* validate qp for incoming packet */ err = check_type_state(rxe, pkt, qp); @@ -309,15 +315,27 @@ if (err) continue; - /* if *not* the last qp in the list - * increase the users of the skb then post to the next qp + /* for all but the last qp create a new clone of the + * skb and pass to the qp. If an error occurs in the + * checks for the last qp in the list we need to + * free the skb since it hasn't been passed on to + * rxe_rcv_pkt() which would free it later. */ - if (mce->qp_list.next != &mcg->qp_list) - skb_get(skb); + if (mce->qp_list.next != &mcg->qp_list) { + per_qp_skb = skb_clone(skb, GFP_ATOMIC); + } else { + per_qp_skb = skb; + /* show we have consumed the skb */ + skb = NULL; + } - pkt->qp = qp; + if (unlikely(!per_qp_skb)) + continue; + + per_qp_pkt = SKB_TO_PKT(per_qp_skb); + per_qp_pkt->qp = qp; rxe_add_ref(qp); - rxe_rcv_pkt(pkt, skb); + rxe_rcv_pkt(per_qp_pkt, per_qp_skb); } spin_unlock_bh(&mcg->mcg_lock); @@ -325,15 +343,20 @@ rxe_drop_ref(mcg); /* drop ref from rxe_pool_get_key. */ err1: + /* free skb if not consumed */ kfree_skb(skb); } static int rxe_match_dgid(struct rxe_dev *rxe, struct sk_buff *skb) { + struct rxe_pkt_info *pkt = SKB_TO_PKT(skb); const struct ib_gid_attr *gid_attr; union ib_gid dgid; union ib_gid *pdgid; + if (pkt->mask & RXE_LOOPBACK_MASK) + return 0; + if (skb->protocol == htons(ETH_P_IP)) { ipv6_addr_set_v4mapped(ip_hdr(skb)->daddr, (struct in6_addr *)&dgid); @@ -366,7 +389,7 @@ if (unlikely(skb->len < pkt->offset + RXE_BTH_BYTES)) goto drop; - if (unlikely(rxe_match_dgid(rxe, skb) < 0)) { + if (rxe_match_dgid(rxe, skb) < 0) { pr_warn_ratelimited("failed matching dgid\n"); goto drop; } --- linux-azure-5.8-5.8.0.orig/drivers/infiniband/sw/rxe/rxe_req.c +++ linux-azure-5.8-5.8.0/drivers/infiniband/sw/rxe/rxe_req.c @@ -664,7 +664,8 @@ } if (unlikely(qp_type(qp) == IB_QPT_RC && - qp->req.psn > (qp->comp.psn + RXE_MAX_UNACKED_PSNS))) { + psn_compare(qp->req.psn, (qp->comp.psn + + RXE_MAX_UNACKED_PSNS)) > 0)) { qp->req.wait_psn = 1; goto exit; } --- linux-azure-5.8-5.8.0.orig/drivers/infiniband/sw/rxe/rxe_sysfs.c +++ linux-azure-5.8-5.8.0/drivers/infiniband/sw/rxe/rxe_sysfs.c @@ -61,6 +61,11 @@ struct net_device *ndev; struct rxe_dev *exists; + if (!rxe_initialized) { + pr_err("Module parameters are not supported, use rdma link add or rxe_cfg\n"); + return -EAGAIN; + } + len = sanitize_arg(val, intf, sizeof(intf)); if (!len) { pr_err("add: invalid interface name\n"); --- linux-azure-5.8-5.8.0.orig/drivers/infiniband/sw/rxe/rxe_verbs.c +++ linux-azure-5.8-5.8.0/drivers/infiniband/sw/rxe/rxe_verbs.c @@ -684,6 +684,7 @@ unsigned int mask; unsigned int length = 0; int i; + struct ib_send_wr *next; while (wr) { mask = wr_opcode_mask(wr->opcode, qp); @@ -700,6 +701,8 @@ break; } + next = wr->next; + length = 0; for (i = 0; i < wr->num_sge; i++) length += wr->sg_list[i].length; @@ -710,7 +713,7 @@ *bad_wr = wr; break; } - wr = wr->next; + wr = next; } rxe_run_task(&qp->req.task, 1); @@ -813,13 +816,14 @@ return rxe_add_to_pool(&rxe->cq_pool, &cq->pelem); } -static void rxe_destroy_cq(struct ib_cq *ibcq, struct ib_udata *udata) +static int rxe_destroy_cq(struct ib_cq *ibcq, struct ib_udata *udata) { struct rxe_cq *cq = to_rcq(ibcq); rxe_cq_disable(cq); rxe_drop_ref(cq); + return 0; } static int rxe_resize_cq(struct ib_cq *ibcq, int cqe, struct ib_udata *udata) @@ -1080,7 +1084,7 @@ struct rxe_dev *rxe = rdma_device_to_drv_device(device, struct rxe_dev, ib_dev); - return snprintf(buf, 16, "%s\n", rxe_parent_name(rxe, 1)); + return scnprintf(buf, PAGE_SIZE, "%s\n", rxe_parent_name(rxe, 1)); } static DEVICE_ATTR_RO(parent); @@ -1171,7 +1175,6 @@ dev->node_type = RDMA_NODE_IB_CA; dev->phys_port_cnt = 1; dev->num_comp_vectors = num_possible_cpus(); - dev->dev.parent = rxe_dma_device(rxe); dev->local_dma_lkey = 0; addrconf_addr_eui48((unsigned char *)&dev->node_guid, rxe->ndev->dev_addr); --- linux-azure-5.8-5.8.0.orig/drivers/infiniband/sw/siw/Kconfig +++ linux-azure-5.8-5.8.0/drivers/infiniband/sw/siw/Kconfig @@ -1,6 +1,7 @@ config RDMA_SIW tristate "Software RDMA over TCP/IP (iWARP) driver" depends on INET && INFINIBAND && LIBCRC32C + depends on INFINIBAND_VIRT_DMA select DMA_VIRT_OPS help This driver implements the iWARP RDMA transport over --- linux-azure-5.8-5.8.0.orig/drivers/infiniband/sw/siw/siw.h +++ linux-azure-5.8-5.8.0/drivers/infiniband/sw/siw/siw.h @@ -654,7 +654,7 @@ { struct siw_sqe *orq_e = orq_get_tail(qp); - if (orq_e && READ_ONCE(orq_e->flags) == 0) + if (READ_ONCE(orq_e->flags) == 0) return orq_e; return NULL; --- linux-azure-5.8-5.8.0.orig/drivers/infiniband/sw/siw/siw_main.c +++ linux-azure-5.8-5.8.0/drivers/infiniband/sw/siw/siw_main.c @@ -135,7 +135,7 @@ static int siw_init_cpulist(void) { - int i, num_nodes = num_possible_nodes(); + int i, num_nodes = nr_node_ids; memset(siw_tx_thread, 0, sizeof(siw_tx_thread)); @@ -306,24 +306,8 @@ { struct siw_device *sdev = NULL; struct ib_device *base_dev; - struct device *parent = netdev->dev.parent; int rv; - if (!parent) { - /* - * The loopback device has no parent device, - * so it appears as a top-level device. To support - * loopback device connectivity, take this device - * as the parent device. Skip all other devices - * w/o parent device. - */ - if (netdev->type != ARPHRD_LOOPBACK) { - pr_warn("siw: device %s error: no parent device\n", - netdev->name); - return NULL; - } - parent = &netdev->dev; - } sdev = ib_alloc_device(siw_device, base_dev); if (!sdev) return NULL; @@ -382,7 +366,6 @@ * per physical port. */ base_dev->phys_port_cnt = 1; - base_dev->dev.parent = parent; base_dev->dev.dma_ops = &dma_virt_ops; base_dev->dev.dma_parms = &sdev->dma_parms; sdev->dma_parms = (struct device_dma_parameters) @@ -428,7 +411,7 @@ atomic_set(&sdev->num_mr, 0); atomic_set(&sdev->num_pd, 0); - sdev->numa_node = dev_to_node(parent); + sdev->numa_node = dev_to_node(&netdev->dev); spin_lock_init(&sdev->lock); return sdev; --- linux-azure-5.8-5.8.0.orig/drivers/infiniband/sw/siw/siw_qp.c +++ linux-azure-5.8-5.8.0/drivers/infiniband/sw/siw/siw_qp.c @@ -199,26 +199,26 @@ static int siw_qp_readq_init(struct siw_qp *qp, int irq_size, int orq_size) { - irq_size = roundup_pow_of_two(irq_size); - orq_size = roundup_pow_of_two(orq_size); - + if (irq_size) { + irq_size = roundup_pow_of_two(irq_size); + qp->irq = vzalloc(irq_size * sizeof(struct siw_sqe)); + if (!qp->irq) { + qp->attrs.irq_size = 0; + return -ENOMEM; + } + } + if (orq_size) { + orq_size = roundup_pow_of_two(orq_size); + qp->orq = vzalloc(orq_size * sizeof(struct siw_sqe)); + if (!qp->orq) { + qp->attrs.orq_size = 0; + qp->attrs.irq_size = 0; + vfree(qp->irq); + return -ENOMEM; + } + } qp->attrs.irq_size = irq_size; qp->attrs.orq_size = orq_size; - - qp->irq = vzalloc(irq_size * sizeof(struct siw_sqe)); - if (!qp->irq) { - siw_dbg_qp(qp, "irq malloc for %d failed\n", irq_size); - qp->attrs.irq_size = 0; - return -ENOMEM; - } - qp->orq = vzalloc(orq_size * sizeof(struct siw_sqe)); - if (!qp->orq) { - siw_dbg_qp(qp, "orq malloc for %d failed\n", orq_size); - qp->attrs.orq_size = 0; - qp->attrs.irq_size = 0; - vfree(qp->irq); - return -ENOMEM; - } siw_dbg_qp(qp, "ORD %d, IRD %d\n", orq_size, irq_size); return 0; } @@ -288,13 +288,14 @@ if (ctrl & MPA_V2_RDMA_WRITE_RTR) wqe->sqe.opcode = SIW_OP_WRITE; else if (ctrl & MPA_V2_RDMA_READ_RTR) { - struct siw_sqe *rreq; + struct siw_sqe *rreq = NULL; wqe->sqe.opcode = SIW_OP_READ; spin_lock(&qp->orq_lock); - rreq = orq_get_free(qp); + if (qp->attrs.orq_size) + rreq = orq_get_free(qp); if (rreq) { siw_read_to_orq(rreq, &wqe->sqe); qp->orq_put++; @@ -877,135 +878,88 @@ rreq->num_sge = 1; } -/* - * Must be called with SQ locked. - * To avoid complete SQ starvation by constant inbound READ requests, - * the active IRQ will not be served after qp->irq_burst, if the - * SQ has pending work. - */ -int siw_activate_tx(struct siw_qp *qp) +static int siw_activate_tx_from_sq(struct siw_qp *qp) { - struct siw_sqe *irqe, *sqe; + struct siw_sqe *sqe; struct siw_wqe *wqe = tx_wqe(qp); int rv = 1; - irqe = &qp->irq[qp->irq_get % qp->attrs.irq_size]; - - if (irqe->flags & SIW_WQE_VALID) { - sqe = sq_get_next(qp); - - /* - * Avoid local WQE processing starvation in case - * of constant inbound READ request stream - */ - if (sqe && ++qp->irq_burst >= SIW_IRQ_MAXBURST_SQ_ACTIVE) { - qp->irq_burst = 0; - goto skip_irq; - } - memset(wqe->mem, 0, sizeof(*wqe->mem) * SIW_MAX_SGE); - wqe->wr_status = SIW_WR_QUEUED; - - /* start READ RESPONSE */ - wqe->sqe.opcode = SIW_OP_READ_RESPONSE; - wqe->sqe.flags = 0; - if (irqe->num_sge) { - wqe->sqe.num_sge = 1; - wqe->sqe.sge[0].length = irqe->sge[0].length; - wqe->sqe.sge[0].laddr = irqe->sge[0].laddr; - wqe->sqe.sge[0].lkey = irqe->sge[0].lkey; - } else { - wqe->sqe.num_sge = 0; - } - - /* Retain original RREQ's message sequence number for - * potential error reporting cases. - */ - wqe->sqe.sge[1].length = irqe->sge[1].length; - - wqe->sqe.rkey = irqe->rkey; - wqe->sqe.raddr = irqe->raddr; + sqe = sq_get_next(qp); + if (!sqe) + return 0; - wqe->processed = 0; - qp->irq_get++; + memset(wqe->mem, 0, sizeof(*wqe->mem) * SIW_MAX_SGE); + wqe->wr_status = SIW_WR_QUEUED; - /* mark current IRQ entry free */ - smp_store_mb(irqe->flags, 0); + /* First copy SQE to kernel private memory */ + memcpy(&wqe->sqe, sqe, sizeof(*sqe)); + if (wqe->sqe.opcode >= SIW_NUM_OPCODES) { + rv = -EINVAL; goto out; } - sqe = sq_get_next(qp); - if (sqe) { -skip_irq: - memset(wqe->mem, 0, sizeof(*wqe->mem) * SIW_MAX_SGE); - wqe->wr_status = SIW_WR_QUEUED; - - /* First copy SQE to kernel private memory */ - memcpy(&wqe->sqe, sqe, sizeof(*sqe)); - - if (wqe->sqe.opcode >= SIW_NUM_OPCODES) { + if (wqe->sqe.flags & SIW_WQE_INLINE) { + if (wqe->sqe.opcode != SIW_OP_SEND && + wqe->sqe.opcode != SIW_OP_WRITE) { rv = -EINVAL; goto out; } - if (wqe->sqe.flags & SIW_WQE_INLINE) { - if (wqe->sqe.opcode != SIW_OP_SEND && - wqe->sqe.opcode != SIW_OP_WRITE) { - rv = -EINVAL; - goto out; - } - if (wqe->sqe.sge[0].length > SIW_MAX_INLINE) { - rv = -EINVAL; - goto out; - } - wqe->sqe.sge[0].laddr = (uintptr_t)&wqe->sqe.sge[1]; - wqe->sqe.sge[0].lkey = 0; - wqe->sqe.num_sge = 1; - } - if (wqe->sqe.flags & SIW_WQE_READ_FENCE) { - /* A READ cannot be fenced */ - if (unlikely(wqe->sqe.opcode == SIW_OP_READ || - wqe->sqe.opcode == - SIW_OP_READ_LOCAL_INV)) { - siw_dbg_qp(qp, "cannot fence read\n"); - rv = -EINVAL; - goto out; - } - spin_lock(&qp->orq_lock); + if (wqe->sqe.sge[0].length > SIW_MAX_INLINE) { + rv = -EINVAL; + goto out; + } + wqe->sqe.sge[0].laddr = (uintptr_t)&wqe->sqe.sge[1]; + wqe->sqe.sge[0].lkey = 0; + wqe->sqe.num_sge = 1; + } + if (wqe->sqe.flags & SIW_WQE_READ_FENCE) { + /* A READ cannot be fenced */ + if (unlikely(wqe->sqe.opcode == SIW_OP_READ || + wqe->sqe.opcode == + SIW_OP_READ_LOCAL_INV)) { + siw_dbg_qp(qp, "cannot fence read\n"); + rv = -EINVAL; + goto out; + } + spin_lock(&qp->orq_lock); - if (!siw_orq_empty(qp)) { - qp->tx_ctx.orq_fence = 1; - rv = 0; - } - spin_unlock(&qp->orq_lock); + if (qp->attrs.orq_size && !siw_orq_empty(qp)) { + qp->tx_ctx.orq_fence = 1; + rv = 0; + } + spin_unlock(&qp->orq_lock); - } else if (wqe->sqe.opcode == SIW_OP_READ || - wqe->sqe.opcode == SIW_OP_READ_LOCAL_INV) { - struct siw_sqe *rreq; + } else if (wqe->sqe.opcode == SIW_OP_READ || + wqe->sqe.opcode == SIW_OP_READ_LOCAL_INV) { + struct siw_sqe *rreq; - wqe->sqe.num_sge = 1; + if (unlikely(!qp->attrs.orq_size)) { + /* We negotiated not to send READ req's */ + rv = -EINVAL; + goto out; + } + wqe->sqe.num_sge = 1; - spin_lock(&qp->orq_lock); + spin_lock(&qp->orq_lock); - rreq = orq_get_free(qp); - if (rreq) { - /* - * Make an immediate copy in ORQ to be ready - * to process loopback READ reply - */ - siw_read_to_orq(rreq, &wqe->sqe); - qp->orq_put++; - } else { - qp->tx_ctx.orq_fence = 1; - rv = 0; - } - spin_unlock(&qp->orq_lock); + rreq = orq_get_free(qp); + if (rreq) { + /* + * Make an immediate copy in ORQ to be ready + * to process loopback READ reply + */ + siw_read_to_orq(rreq, &wqe->sqe); + qp->orq_put++; + } else { + qp->tx_ctx.orq_fence = 1; + rv = 0; } - - /* Clear SQE, can be re-used by application */ - smp_store_mb(sqe->flags, 0); - qp->sq_get++; - } else { - rv = 0; + spin_unlock(&qp->orq_lock); } + + /* Clear SQE, can be re-used by application */ + smp_store_mb(sqe->flags, 0); + qp->sq_get++; out: if (unlikely(rv < 0)) { siw_dbg_qp(qp, "error %d\n", rv); @@ -1015,6 +969,65 @@ } /* + * Must be called with SQ locked. + * To avoid complete SQ starvation by constant inbound READ requests, + * the active IRQ will not be served after qp->irq_burst, if the + * SQ has pending work. + */ +int siw_activate_tx(struct siw_qp *qp) +{ + struct siw_sqe *irqe; + struct siw_wqe *wqe = tx_wqe(qp); + + if (!qp->attrs.irq_size) + return siw_activate_tx_from_sq(qp); + + irqe = &qp->irq[qp->irq_get % qp->attrs.irq_size]; + + if (!(irqe->flags & SIW_WQE_VALID)) + return siw_activate_tx_from_sq(qp); + + /* + * Avoid local WQE processing starvation in case + * of constant inbound READ request stream + */ + if (sq_get_next(qp) && ++qp->irq_burst >= SIW_IRQ_MAXBURST_SQ_ACTIVE) { + qp->irq_burst = 0; + return siw_activate_tx_from_sq(qp); + } + memset(wqe->mem, 0, sizeof(*wqe->mem) * SIW_MAX_SGE); + wqe->wr_status = SIW_WR_QUEUED; + + /* start READ RESPONSE */ + wqe->sqe.opcode = SIW_OP_READ_RESPONSE; + wqe->sqe.flags = 0; + if (irqe->num_sge) { + wqe->sqe.num_sge = 1; + wqe->sqe.sge[0].length = irqe->sge[0].length; + wqe->sqe.sge[0].laddr = irqe->sge[0].laddr; + wqe->sqe.sge[0].lkey = irqe->sge[0].lkey; + } else { + wqe->sqe.num_sge = 0; + } + + /* Retain original RREQ's message sequence number for + * potential error reporting cases. + */ + wqe->sqe.sge[1].length = irqe->sge[1].length; + + wqe->sqe.rkey = irqe->rkey; + wqe->sqe.raddr = irqe->raddr; + + wqe->processed = 0; + qp->irq_get++; + + /* mark current IRQ entry free */ + smp_store_mb(irqe->flags, 0); + + return 1; +} + +/* * Check if current CQ state qualifies for calling CQ completion * handler. Must be called with CQ lock held. */ --- linux-azure-5.8-5.8.0.orig/drivers/infiniband/sw/siw/siw_qp_rx.c +++ linux-azure-5.8-5.8.0/drivers/infiniband/sw/siw/siw_qp_rx.c @@ -680,6 +680,10 @@ } spin_lock_irqsave(&qp->sq_lock, flags); + if (unlikely(!qp->attrs.irq_size)) { + run_sq = 0; + goto error_irq; + } if (tx_work->wr_status == SIW_WR_IDLE) { /* * immediately schedule READ response w/o @@ -712,8 +716,9 @@ /* RRESP now valid as current TX wqe or placed into IRQ */ smp_store_mb(resp->flags, SIW_WQE_VALID); } else { - pr_warn("siw: [QP %u]: irq %d exceeded %d\n", qp_id(qp), - qp->irq_put % qp->attrs.irq_size, qp->attrs.irq_size); +error_irq: + pr_warn("siw: [QP %u]: IRQ exceeded or null, size %d\n", + qp_id(qp), qp->attrs.irq_size); siw_init_terminate(qp, TERM_ERROR_LAYER_RDMAP, RDMAP_ETYPE_REMOTE_OPERATION, @@ -740,6 +745,9 @@ struct siw_sqe *orqe; struct siw_wqe *wqe = NULL; + if (unlikely(!qp->attrs.orq_size)) + return -EPROTO; + /* make sure ORQ indices are current */ smp_mb(); @@ -796,8 +804,8 @@ */ rv = siw_orqe_start_rx(qp); if (rv) { - pr_warn("siw: [QP %u]: ORQ empty at idx %d\n", - qp_id(qp), qp->orq_get % qp->attrs.orq_size); + pr_warn("siw: [QP %u]: ORQ empty, size %d\n", + qp_id(qp), qp->attrs.orq_size); goto error_term; } rv = siw_rresp_check_ntoh(srx, frx); @@ -1290,11 +1298,13 @@ wc_status); siw_wqe_put_mem(wqe, SIW_OP_READ); - if (!error) + if (!error) { rv = siw_check_tx_fence(qp); - else - /* Disable current ORQ eleement */ - WRITE_ONCE(orq_get_current(qp)->flags, 0); + } else { + /* Disable current ORQ element */ + if (qp->attrs.orq_size) + WRITE_ONCE(orq_get_current(qp)->flags, 0); + } break; case RDMAP_RDMA_READ_REQ: --- linux-azure-5.8-5.8.0.orig/drivers/infiniband/sw/siw/siw_qp_tx.c +++ linux-azure-5.8-5.8.0/drivers/infiniband/sw/siw/siw_qp_tx.c @@ -1107,8 +1107,8 @@ /* * RREQ may have already been completed by inbound RRESP! */ - if (tx_type == SIW_OP_READ || - tx_type == SIW_OP_READ_LOCAL_INV) { + if ((tx_type == SIW_OP_READ || + tx_type == SIW_OP_READ_LOCAL_INV) && qp->attrs.orq_size) { /* Cleanup pending entry in ORQ */ qp->orq_put--; qp->orq[qp->orq_put % qp->attrs.orq_size].flags = 0; --- linux-azure-5.8-5.8.0.orig/drivers/infiniband/sw/siw/siw_verbs.c +++ linux-azure-5.8-5.8.0/drivers/infiniband/sw/siw/siw_verbs.c @@ -370,13 +370,23 @@ if (rv) goto err_out; + num_sqe = attrs->cap.max_send_wr; + num_rqe = attrs->cap.max_recv_wr; + /* All queue indices are derived from modulo operations * on a free running 'get' (consumer) and 'put' (producer) * unsigned counter. Having queue sizes at power of two * avoids handling counter wrap around. */ - num_sqe = roundup_pow_of_two(attrs->cap.max_send_wr); - num_rqe = roundup_pow_of_two(attrs->cap.max_recv_wr); + if (num_sqe) + num_sqe = roundup_pow_of_two(num_sqe); + else { + /* Zero sized SQ is not supported */ + rv = -EINVAL; + goto err_out; + } + if (num_rqe) + num_rqe = roundup_pow_of_two(num_rqe); if (udata) qp->sendq = vmalloc_user(num_sqe * sizeof(struct siw_sqe)); @@ -384,7 +394,6 @@ qp->sendq = vzalloc(num_sqe * sizeof(struct siw_sqe)); if (qp->sendq == NULL) { - siw_dbg(base_dev, "SQ size %d alloc failed\n", num_sqe); rv = -ENOMEM; goto err_out_xa; } @@ -418,7 +427,6 @@ qp->recvq = vzalloc(num_rqe * sizeof(struct siw_rqe)); if (qp->recvq == NULL) { - siw_dbg(base_dev, "RQ size %d alloc failed\n", num_rqe); rv = -ENOMEM; goto err_out_xa; } @@ -968,9 +976,9 @@ unsigned long flags; int rv = 0; - if (qp->srq) { + if (qp->srq || qp->attrs.rq_size == 0) { *bad_wr = wr; - return -EOPNOTSUPP; /* what else from errno.h? */ + return -EINVAL; } if (!rdma_is_kernel_res(&qp->base_qp.res)) { siw_dbg_qp(qp, "no kernel post_recv for user mapped rq\n"); @@ -1064,7 +1072,7 @@ return rv > 0 ? 0 : rv; } -void siw_destroy_cq(struct ib_cq *base_cq, struct ib_udata *udata) +int siw_destroy_cq(struct ib_cq *base_cq, struct ib_udata *udata) { struct siw_cq *cq = to_siw_cq(base_cq); struct siw_device *sdev = to_siw_dev(base_cq->device); @@ -1082,6 +1090,7 @@ atomic_dec(&sdev->num_cq); vfree(cq->queue); + return 0; } /* --- linux-azure-5.8-5.8.0.orig/drivers/infiniband/sw/siw/siw_verbs.h +++ linux-azure-5.8-5.8.0/drivers/infiniband/sw/siw/siw_verbs.h @@ -63,7 +63,7 @@ const struct ib_send_wr **bad_wr); int siw_post_receive(struct ib_qp *base_qp, const struct ib_recv_wr *wr, const struct ib_recv_wr **bad_wr); -void siw_destroy_cq(struct ib_cq *base_cq, struct ib_udata *udata); +int siw_destroy_cq(struct ib_cq *base_cq, struct ib_udata *udata); int siw_poll_cq(struct ib_cq *base_cq, int num_entries, struct ib_wc *wc); int siw_req_notify_cq(struct ib_cq *base_cq, enum ib_cq_notify_flags flags); struct ib_mr *siw_reg_user_mr(struct ib_pd *base_pd, u64 start, u64 len, --- linux-azure-5.8-5.8.0.orig/drivers/infiniband/ulp/ipoib/ipoib.h +++ linux-azure-5.8-5.8.0/drivers/infiniband/ulp/ipoib/ipoib.h @@ -515,7 +515,7 @@ int ipoib_ib_dev_open_default(struct net_device *dev); int ipoib_ib_dev_open(struct net_device *dev); -int ipoib_ib_dev_stop(struct net_device *dev); +void ipoib_ib_dev_stop(struct net_device *dev); void ipoib_ib_dev_up(struct net_device *dev); void ipoib_ib_dev_down(struct net_device *dev); int ipoib_ib_dev_stop_default(struct net_device *dev); --- linux-azure-5.8-5.8.0.orig/drivers/infiniband/ulp/ipoib/ipoib_ib.c +++ linux-azure-5.8-5.8.0/drivers/infiniband/ulp/ipoib/ipoib_ib.c @@ -670,13 +670,12 @@ return rc; } -static void __ipoib_reap_ah(struct net_device *dev) +static void ipoib_reap_dead_ahs(struct ipoib_dev_priv *priv) { - struct ipoib_dev_priv *priv = ipoib_priv(dev); struct ipoib_ah *ah, *tah; unsigned long flags; - netif_tx_lock_bh(dev); + netif_tx_lock_bh(priv->dev); spin_lock_irqsave(&priv->lock, flags); list_for_each_entry_safe(ah, tah, &priv->dead_ahs, list) @@ -687,37 +686,37 @@ } spin_unlock_irqrestore(&priv->lock, flags); - netif_tx_unlock_bh(dev); + netif_tx_unlock_bh(priv->dev); } void ipoib_reap_ah(struct work_struct *work) { struct ipoib_dev_priv *priv = container_of(work, struct ipoib_dev_priv, ah_reap_task.work); - struct net_device *dev = priv->dev; - __ipoib_reap_ah(dev); + ipoib_reap_dead_ahs(priv); if (!test_bit(IPOIB_STOP_REAPER, &priv->flags)) queue_delayed_work(priv->wq, &priv->ah_reap_task, round_jiffies_relative(HZ)); } -static void ipoib_flush_ah(struct net_device *dev) +static void ipoib_start_ah_reaper(struct ipoib_dev_priv *priv) { - struct ipoib_dev_priv *priv = ipoib_priv(dev); - - cancel_delayed_work(&priv->ah_reap_task); - flush_workqueue(priv->wq); - ipoib_reap_ah(&priv->ah_reap_task.work); + clear_bit(IPOIB_STOP_REAPER, &priv->flags); + queue_delayed_work(priv->wq, &priv->ah_reap_task, + round_jiffies_relative(HZ)); } -static void ipoib_stop_ah(struct net_device *dev) +static void ipoib_stop_ah_reaper(struct ipoib_dev_priv *priv) { - struct ipoib_dev_priv *priv = ipoib_priv(dev); - set_bit(IPOIB_STOP_REAPER, &priv->flags); - ipoib_flush_ah(dev); + cancel_delayed_work(&priv->ah_reap_task); + /* + * After ipoib_stop_ah_reaper() we always go through + * ipoib_reap_dead_ahs() which ensures the work is really stopped and + * does a final flush out of the dead_ah's list + */ } static int recvs_pending(struct net_device *dev) @@ -846,18 +845,6 @@ return 0; } -int ipoib_ib_dev_stop(struct net_device *dev) -{ - struct ipoib_dev_priv *priv = ipoib_priv(dev); - - priv->rn_ops->ndo_stop(dev); - - clear_bit(IPOIB_FLAG_INITIALIZED, &priv->flags); - ipoib_flush_ah(dev); - - return 0; -} - int ipoib_ib_dev_open_default(struct net_device *dev) { struct ipoib_dev_priv *priv = ipoib_priv(dev); @@ -901,10 +888,7 @@ return -1; } - clear_bit(IPOIB_STOP_REAPER, &priv->flags); - queue_delayed_work(priv->wq, &priv->ah_reap_task, - round_jiffies_relative(HZ)); - + ipoib_start_ah_reaper(priv); if (priv->rn_ops->ndo_open(dev)) { pr_warn("%s: Failed to open dev\n", dev->name); goto dev_stop; @@ -915,13 +899,20 @@ return 0; dev_stop: - set_bit(IPOIB_STOP_REAPER, &priv->flags); - cancel_delayed_work(&priv->ah_reap_task); - set_bit(IPOIB_FLAG_INITIALIZED, &priv->flags); - ipoib_ib_dev_stop(dev); + ipoib_stop_ah_reaper(priv); return -1; } +void ipoib_ib_dev_stop(struct net_device *dev) +{ + struct ipoib_dev_priv *priv = ipoib_priv(dev); + + priv->rn_ops->ndo_stop(dev); + + clear_bit(IPOIB_FLAG_INITIALIZED, &priv->flags); + ipoib_stop_ah_reaper(priv); +} + void ipoib_pkey_dev_check_presence(struct net_device *dev) { struct ipoib_dev_priv *priv = ipoib_priv(dev); @@ -1232,7 +1223,7 @@ ipoib_mcast_dev_flush(dev); if (oper_up) set_bit(IPOIB_FLAG_OPER_UP, &priv->flags); - ipoib_flush_ah(dev); + ipoib_reap_dead_ahs(priv); } if (level >= IPOIB_FLUSH_NORMAL) @@ -1307,7 +1298,7 @@ * the neighbor garbage collection is stopped and reaped. * That should all be done now, so make a final ah flush. */ - ipoib_stop_ah(dev); + ipoib_reap_dead_ahs(priv); clear_bit(IPOIB_PKEY_ASSIGNED, &priv->flags); --- linux-azure-5.8-5.8.0.orig/drivers/infiniband/ulp/ipoib/ipoib_main.c +++ linux-azure-5.8-5.8.0/drivers/infiniband/ulp/ipoib/ipoib_main.c @@ -1976,6 +1976,8 @@ /* no more works over the priv->wq */ if (priv->wq) { + /* See ipoib_mcast_carrier_on_task() */ + WARN_ON(test_bit(IPOIB_FLAG_OPER_UP, &priv->flags)); flush_workqueue(priv->wq); destroy_workqueue(priv->wq); priv->wq = NULL; @@ -2468,6 +2470,8 @@ /* call event handler to ensure pkey in sync */ queue_work(ipoib_workqueue, &priv->flush_heavy); + ndev->rtnl_link_ops = ipoib_get_link_ops(); + result = register_netdev(ndev); if (result) { pr_warn("%s: couldn't register ipoib port %d; error %d\n", --- linux-azure-5.8-5.8.0.orig/drivers/infiniband/ulp/ipoib/ipoib_netlink.c +++ linux-azure-5.8-5.8.0/drivers/infiniband/ulp/ipoib/ipoib_netlink.c @@ -144,6 +144,16 @@ return 0; } +static void ipoib_del_child_link(struct net_device *dev, struct list_head *head) +{ + struct ipoib_dev_priv *priv = ipoib_priv(dev); + + if (!priv->parent) + return; + + unregister_netdevice_queue(dev, head); +} + static size_t ipoib_get_size(const struct net_device *dev) { return nla_total_size(2) + /* IFLA_IPOIB_PKEY */ @@ -158,6 +168,7 @@ .priv_size = sizeof(struct ipoib_dev_priv), .setup = ipoib_setup_common, .newlink = ipoib_new_child_link, + .dellink = ipoib_del_child_link, .changelink = ipoib_changelink, .get_size = ipoib_get_size, .fill_info = ipoib_fill_info, --- linux-azure-5.8-5.8.0.orig/drivers/infiniband/ulp/ipoib/ipoib_vlan.c +++ linux-azure-5.8-5.8.0/drivers/infiniband/ulp/ipoib/ipoib_vlan.c @@ -195,6 +195,8 @@ } priv = ipoib_priv(ndev); + ndev->rtnl_link_ops = ipoib_get_link_ops(); + result = __ipoib_vlan_add(ppriv, priv, pkey, IPOIB_LEGACY_CHILD); if (result && ndev->reg_state == NETREG_UNINITIALIZED) --- linux-azure-5.8-5.8.0.orig/drivers/infiniband/ulp/isert/ib_isert.c +++ linux-azure-5.8-5.8.0/drivers/infiniband/ulp/isert/ib_isert.c @@ -183,15 +183,15 @@ rx_desc = isert_conn->rx_descs; for (i = 0; i < ISERT_QP_MAX_RECV_DTOS; i++, rx_desc++) { - dma_addr = ib_dma_map_single(ib_dev, (void *)rx_desc, - ISER_RX_PAYLOAD_SIZE, DMA_FROM_DEVICE); + dma_addr = ib_dma_map_single(ib_dev, rx_desc->buf, + ISER_RX_SIZE, DMA_FROM_DEVICE); if (ib_dma_mapping_error(ib_dev, dma_addr)) goto dma_map_fail; rx_desc->dma_addr = dma_addr; rx_sg = &rx_desc->rx_sg; - rx_sg->addr = rx_desc->dma_addr; + rx_sg->addr = rx_desc->dma_addr + isert_get_hdr_offset(rx_desc); rx_sg->length = ISER_RX_PAYLOAD_SIZE; rx_sg->lkey = device->pd->local_dma_lkey; rx_desc->rx_cqe.done = isert_recv_done; @@ -203,7 +203,7 @@ rx_desc = isert_conn->rx_descs; for (j = 0; j < i; j++, rx_desc++) { ib_dma_unmap_single(ib_dev, rx_desc->dma_addr, - ISER_RX_PAYLOAD_SIZE, DMA_FROM_DEVICE); + ISER_RX_SIZE, DMA_FROM_DEVICE); } kfree(isert_conn->rx_descs); isert_conn->rx_descs = NULL; @@ -224,7 +224,7 @@ rx_desc = isert_conn->rx_descs; for (i = 0; i < ISERT_QP_MAX_RECV_DTOS; i++, rx_desc++) { ib_dma_unmap_single(ib_dev, rx_desc->dma_addr, - ISER_RX_PAYLOAD_SIZE, DMA_FROM_DEVICE); + ISER_RX_SIZE, DMA_FROM_DEVICE); } kfree(isert_conn->rx_descs); @@ -409,10 +409,9 @@ ISER_RX_PAYLOAD_SIZE, DMA_TO_DEVICE); kfree(isert_conn->login_rsp_buf); - ib_dma_unmap_single(ib_dev, isert_conn->login_req_dma, - ISER_RX_PAYLOAD_SIZE, - DMA_FROM_DEVICE); - kfree(isert_conn->login_req_buf); + ib_dma_unmap_single(ib_dev, isert_conn->login_desc->dma_addr, + ISER_RX_SIZE, DMA_FROM_DEVICE); + kfree(isert_conn->login_desc); } static int @@ -421,25 +420,25 @@ { int ret; - isert_conn->login_req_buf = kzalloc(sizeof(*isert_conn->login_req_buf), + isert_conn->login_desc = kzalloc(sizeof(*isert_conn->login_desc), GFP_KERNEL); - if (!isert_conn->login_req_buf) + if (!isert_conn->login_desc) return -ENOMEM; - isert_conn->login_req_dma = ib_dma_map_single(ib_dev, - isert_conn->login_req_buf, - ISER_RX_PAYLOAD_SIZE, DMA_FROM_DEVICE); - ret = ib_dma_mapping_error(ib_dev, isert_conn->login_req_dma); + isert_conn->login_desc->dma_addr = ib_dma_map_single(ib_dev, + isert_conn->login_desc->buf, + ISER_RX_SIZE, DMA_FROM_DEVICE); + ret = ib_dma_mapping_error(ib_dev, isert_conn->login_desc->dma_addr); if (ret) { - isert_err("login_req_dma mapping error: %d\n", ret); - isert_conn->login_req_dma = 0; - goto out_free_login_req_buf; + isert_err("login_desc dma mapping error: %d\n", ret); + isert_conn->login_desc->dma_addr = 0; + goto out_free_login_desc; } isert_conn->login_rsp_buf = kzalloc(ISER_RX_PAYLOAD_SIZE, GFP_KERNEL); if (!isert_conn->login_rsp_buf) { ret = -ENOMEM; - goto out_unmap_login_req_buf; + goto out_unmap_login_desc; } isert_conn->login_rsp_dma = ib_dma_map_single(ib_dev, @@ -456,11 +455,11 @@ out_free_login_rsp_buf: kfree(isert_conn->login_rsp_buf); -out_unmap_login_req_buf: - ib_dma_unmap_single(ib_dev, isert_conn->login_req_dma, - ISER_RX_PAYLOAD_SIZE, DMA_FROM_DEVICE); -out_free_login_req_buf: - kfree(isert_conn->login_req_buf); +out_unmap_login_desc: + ib_dma_unmap_single(ib_dev, isert_conn->login_desc->dma_addr, + ISER_RX_SIZE, DMA_FROM_DEVICE); +out_free_login_desc: + kfree(isert_conn->login_desc); return ret; } @@ -579,7 +578,7 @@ ib_destroy_qp(isert_conn->qp); } - if (isert_conn->login_req_buf) + if (isert_conn->login_desc) isert_free_login_buf(isert_conn); isert_device_put(device); @@ -965,17 +964,18 @@ int ret; memset(&sge, 0, sizeof(struct ib_sge)); - sge.addr = isert_conn->login_req_dma; + sge.addr = isert_conn->login_desc->dma_addr + + isert_get_hdr_offset(isert_conn->login_desc); sge.length = ISER_RX_PAYLOAD_SIZE; sge.lkey = isert_conn->device->pd->local_dma_lkey; isert_dbg("Setup sge: addr: %llx length: %d 0x%08x\n", sge.addr, sge.length, sge.lkey); - isert_conn->login_req_buf->rx_cqe.done = isert_login_recv_done; + isert_conn->login_desc->rx_cqe.done = isert_login_recv_done; memset(&rx_wr, 0, sizeof(struct ib_recv_wr)); - rx_wr.wr_cqe = &isert_conn->login_req_buf->rx_cqe; + rx_wr.wr_cqe = &isert_conn->login_desc->rx_cqe; rx_wr.sg_list = &sge; rx_wr.num_sge = 1; @@ -1052,7 +1052,7 @@ static void isert_rx_login_req(struct isert_conn *isert_conn) { - struct iser_rx_desc *rx_desc = isert_conn->login_req_buf; + struct iser_rx_desc *rx_desc = isert_conn->login_desc; int rx_buflen = isert_conn->login_req_len; struct iscsi_conn *conn = isert_conn->conn; struct iscsi_login *login = conn->conn_login; @@ -1064,7 +1064,7 @@ if (login->first_request) { struct iscsi_login_req *login_req = - (struct iscsi_login_req *)&rx_desc->iscsi_header; + (struct iscsi_login_req *)isert_get_iscsi_hdr(rx_desc); /* * Setup the initial iscsi_login values from the leading * login request PDU. @@ -1083,13 +1083,13 @@ login->tsih = be16_to_cpu(login_req->tsih); } - memcpy(&login->req[0], (void *)&rx_desc->iscsi_header, ISCSI_HDR_LEN); + memcpy(&login->req[0], isert_get_iscsi_hdr(rx_desc), ISCSI_HDR_LEN); size = min(rx_buflen, MAX_KEY_VALUE_PAIRS); isert_dbg("Using login payload size: %d, rx_buflen: %d " "MAX_KEY_VALUE_PAIRS: %d\n", size, rx_buflen, MAX_KEY_VALUE_PAIRS); - memcpy(login->req_buf, &rx_desc->data[0], size); + memcpy(login->req_buf, isert_get_data(rx_desc), size); if (login->first_request) { complete(&isert_conn->login_comp); @@ -1154,14 +1154,15 @@ if (imm_data_len != data_len) { sg_nents = max(1UL, DIV_ROUND_UP(imm_data_len, PAGE_SIZE)); sg_copy_from_buffer(cmd->se_cmd.t_data_sg, sg_nents, - &rx_desc->data[0], imm_data_len); + isert_get_data(rx_desc), imm_data_len); isert_dbg("Copy Immediate sg_nents: %u imm_data_len: %d\n", sg_nents, imm_data_len); } else { sg_init_table(&isert_cmd->sg, 1); cmd->se_cmd.t_data_sg = &isert_cmd->sg; cmd->se_cmd.t_data_nents = 1; - sg_set_buf(&isert_cmd->sg, &rx_desc->data[0], imm_data_len); + sg_set_buf(&isert_cmd->sg, isert_get_data(rx_desc), + imm_data_len); isert_dbg("Transfer Immediate imm_data_len: %d\n", imm_data_len); } @@ -1230,9 +1231,9 @@ } isert_dbg("Copying DataOut: sg_start: %p, sg_off: %u " "sg_nents: %u from %p %u\n", sg_start, sg_off, - sg_nents, &rx_desc->data[0], unsol_data_len); + sg_nents, isert_get_data(rx_desc), unsol_data_len); - sg_copy_from_buffer(sg_start, sg_nents, &rx_desc->data[0], + sg_copy_from_buffer(sg_start, sg_nents, isert_get_data(rx_desc), unsol_data_len); rc = iscsit_check_dataout_payload(cmd, hdr, false); @@ -1291,7 +1292,7 @@ } cmd->text_in_ptr = text_in; - memcpy(cmd->text_in_ptr, &rx_desc->data[0], payload_length); + memcpy(cmd->text_in_ptr, isert_get_data(rx_desc), payload_length); return iscsit_process_text_cmd(conn, cmd, hdr); } @@ -1301,7 +1302,7 @@ uint32_t read_stag, uint64_t read_va, uint32_t write_stag, uint64_t write_va) { - struct iscsi_hdr *hdr = &rx_desc->iscsi_header; + struct iscsi_hdr *hdr = isert_get_iscsi_hdr(rx_desc); struct iscsi_conn *conn = isert_conn->conn; struct iscsi_cmd *cmd; struct isert_cmd *isert_cmd; @@ -1399,8 +1400,8 @@ struct isert_conn *isert_conn = wc->qp->qp_context; struct ib_device *ib_dev = isert_conn->cm_id->device; struct iser_rx_desc *rx_desc = cqe_to_rx_desc(wc->wr_cqe); - struct iscsi_hdr *hdr = &rx_desc->iscsi_header; - struct iser_ctrl *iser_ctrl = &rx_desc->iser_header; + struct iscsi_hdr *hdr = isert_get_iscsi_hdr(rx_desc); + struct iser_ctrl *iser_ctrl = isert_get_iser_hdr(rx_desc); uint64_t read_va = 0, write_va = 0; uint32_t read_stag = 0, write_stag = 0; @@ -1414,7 +1415,7 @@ rx_desc->in_use = true; ib_dma_sync_single_for_cpu(ib_dev, rx_desc->dma_addr, - ISER_RX_PAYLOAD_SIZE, DMA_FROM_DEVICE); + ISER_RX_SIZE, DMA_FROM_DEVICE); isert_dbg("DMA: 0x%llx, iSCSI opcode: 0x%02x, ITT: 0x%08x, flags: 0x%02x dlen: %d\n", rx_desc->dma_addr, hdr->opcode, hdr->itt, hdr->flags, @@ -1449,7 +1450,7 @@ read_stag, read_va, write_stag, write_va); ib_dma_sync_single_for_device(ib_dev, rx_desc->dma_addr, - ISER_RX_PAYLOAD_SIZE, DMA_FROM_DEVICE); + ISER_RX_SIZE, DMA_FROM_DEVICE); } static void @@ -1463,8 +1464,8 @@ return; } - ib_dma_sync_single_for_cpu(ib_dev, isert_conn->login_req_dma, - ISER_RX_PAYLOAD_SIZE, DMA_FROM_DEVICE); + ib_dma_sync_single_for_cpu(ib_dev, isert_conn->login_desc->dma_addr, + ISER_RX_SIZE, DMA_FROM_DEVICE); isert_conn->login_req_len = wc->byte_len - ISER_HEADERS_LEN; @@ -1479,8 +1480,8 @@ complete(&isert_conn->login_req_comp); mutex_unlock(&isert_conn->mutex); - ib_dma_sync_single_for_device(ib_dev, isert_conn->login_req_dma, - ISER_RX_PAYLOAD_SIZE, DMA_FROM_DEVICE); + ib_dma_sync_single_for_device(ib_dev, isert_conn->login_desc->dma_addr, + ISER_RX_SIZE, DMA_FROM_DEVICE); } static void --- linux-azure-5.8-5.8.0.orig/drivers/infiniband/ulp/isert/ib_isert.h +++ linux-azure-5.8-5.8.0/drivers/infiniband/ulp/isert/ib_isert.h @@ -59,9 +59,11 @@ ISERT_MAX_TX_MISC_PDUS + \ ISERT_MAX_RX_MISC_PDUS) -#define ISER_RX_PAD_SIZE (ISCSI_DEF_MAX_RECV_SEG_LEN + 4096 - \ - (ISER_RX_PAYLOAD_SIZE + sizeof(u64) + sizeof(struct ib_sge) + \ - sizeof(struct ib_cqe) + sizeof(bool))) +/* + * RX size is default of 8k plus headers, but data needs to align to + * 512 boundary, so use 1024 to have the extra space for alignment. + */ +#define ISER_RX_SIZE (ISCSI_DEF_MAX_RECV_SEG_LEN + 1024) #define ISCSI_ISER_SG_TABLESIZE 256 @@ -80,21 +82,41 @@ }; struct iser_rx_desc { - struct iser_ctrl iser_header; - struct iscsi_hdr iscsi_header; - char data[ISCSI_DEF_MAX_RECV_SEG_LEN]; + char buf[ISER_RX_SIZE]; u64 dma_addr; struct ib_sge rx_sg; struct ib_cqe rx_cqe; bool in_use; - char pad[ISER_RX_PAD_SIZE]; -} __packed; +}; static inline struct iser_rx_desc *cqe_to_rx_desc(struct ib_cqe *cqe) { return container_of(cqe, struct iser_rx_desc, rx_cqe); } +static void *isert_get_iser_hdr(struct iser_rx_desc *desc) +{ + return PTR_ALIGN(desc->buf + ISER_HEADERS_LEN, 512) - ISER_HEADERS_LEN; +} + +static size_t isert_get_hdr_offset(struct iser_rx_desc *desc) +{ + return isert_get_iser_hdr(desc) - (void *)desc->buf; +} + +static void *isert_get_iscsi_hdr(struct iser_rx_desc *desc) +{ + return isert_get_iser_hdr(desc) + sizeof(struct iser_ctrl); +} + +static void *isert_get_data(struct iser_rx_desc *desc) +{ + void *data = isert_get_iser_hdr(desc) + ISER_HEADERS_LEN; + + WARN_ON((uintptr_t)data & 511); + return data; +} + struct iser_tx_desc { struct iser_ctrl iser_header; struct iscsi_hdr iscsi_header; @@ -141,9 +163,8 @@ u32 responder_resources; u32 initiator_depth; bool pi_support; - struct iser_rx_desc *login_req_buf; + struct iser_rx_desc *login_desc; char *login_rsp_buf; - u64 login_req_dma; int login_req_len; u64 login_rsp_dma; struct iser_rx_desc *rx_descs; --- linux-azure-5.8-5.8.0.orig/drivers/infiniband/ulp/rtrs/rtrs-clt-sysfs.c +++ linux-azure-5.8-5.8.0/drivers/infiniband/ulp/rtrs/rtrs-clt-sysfs.c @@ -408,6 +408,7 @@ "%s", str); if (err) { pr_err("kobject_init_and_add: %d\n", err); + kobject_put(&sess->kobj); return err; } err = sysfs_create_group(&sess->kobj, &rtrs_clt_sess_attr_group); @@ -419,6 +420,7 @@ &sess->kobj, "stats"); if (err) { pr_err("kobject_init_and_add: %d\n", err); + kobject_put(&sess->stats->kobj_stats); goto remove_group; } --- linux-azure-5.8-5.8.0.orig/drivers/infiniband/ulp/rtrs/rtrs-clt.c +++ linux-azure-5.8-5.8.0/drivers/infiniband/ulp/rtrs/rtrs-clt.c @@ -12,6 +12,7 @@ #include #include +#include #include "rtrs-clt.h" #include "rtrs-log.h" @@ -23,6 +24,14 @@ * leads to "false positives" failed reconnect attempts */ #define RTRS_RECONNECT_BACKOFF 1000 +/* + * Wait for additional random time between 0 and 8 seconds + * before starting to reconnect to avoid clients reconnecting + * all at once in case of a major network outage + */ +#define RTRS_RECONNECT_SEED 8 + +#define FIRST_CONN 0x01 MODULE_DESCRIPTION("RDMA Transport Client"); MODULE_LICENSE("GPL"); @@ -306,7 +315,8 @@ */ delay_ms = clt->reconnect_delay_sec * 1000; queue_delayed_work(rtrs_wq, &sess->reconnect_dwork, - msecs_to_jiffies(delay_ms)); + msecs_to_jiffies(delay_ms + + prandom_u32() % RTRS_RECONNECT_SEED)); } else { /* * Error can happen just on establishing new connection, @@ -1508,7 +1518,7 @@ static int create_con_cq_qp(struct rtrs_clt_con *con) { struct rtrs_clt_sess *sess = to_clt_sess(con->c.sess); - u16 wr_queue_size; + u32 max_send_wr, max_recv_wr, cq_size; int err, cq_vector; struct rtrs_msg_rkey_rsp *rsp; @@ -1528,7 +1538,8 @@ * + 2 for drain and heartbeat * in case qp gets into error state */ - wr_queue_size = SERVICE_CON_QUEUE_DEPTH * 3 + 2; + max_send_wr = SERVICE_CON_QUEUE_DEPTH * 2 + 2; + max_recv_wr = SERVICE_CON_QUEUE_DEPTH * 2 + 2; /* We must be the first here */ if (WARN_ON(sess->s.dev)) return -EINVAL; @@ -1560,25 +1571,29 @@ /* Shared between connections */ sess->s.dev_ref++; - wr_queue_size = + max_send_wr = min_t(int, sess->s.dev->ib_dev->attrs.max_qp_wr, /* QD * (REQ + RSP + FR REGS or INVS) + drain */ sess->queue_depth * 3 + 1); + max_recv_wr = + min_t(int, sess->s.dev->ib_dev->attrs.max_qp_wr, + sess->queue_depth * 3 + 1); } /* alloc iu to recv new rkey reply when server reports flags set */ if (sess->flags == RTRS_MSG_NEW_RKEY_F || con->c.cid == 0) { - con->rsp_ius = rtrs_iu_alloc(wr_queue_size, sizeof(*rsp), + con->rsp_ius = rtrs_iu_alloc(max_recv_wr, sizeof(*rsp), GFP_KERNEL, sess->s.dev->ib_dev, DMA_FROM_DEVICE, rtrs_clt_rdma_done); if (!con->rsp_ius) return -ENOMEM; - con->queue_size = wr_queue_size; + con->queue_size = max_recv_wr; } + cq_size = max_send_wr + max_recv_wr; cq_vector = con->cpu % sess->s.dev->ib_dev->num_comp_vectors; err = rtrs_cq_qp_create(&sess->s, &con->c, sess->max_send_sge, - cq_vector, wr_queue_size, wr_queue_size, - IB_POLL_SOFTIRQ); + cq_vector, cq_size, max_send_wr, + max_recv_wr, IB_POLL_SOFTIRQ); /* * In case of error we do not bother to clean previous allocations, * since destroy_con_cq_qp() must be called. @@ -1632,10 +1647,8 @@ return err; } err = rdma_resolve_route(con->c.cm_id, RTRS_CONNECT_TIMEOUT_MS); - if (err) { + if (err) rtrs_err(s, "Resolving route failed, err: %d\n", err); - destroy_con_cq_qp(con); - } return err; } @@ -1663,6 +1676,7 @@ .cid_num = cpu_to_le16(sess->s.con_num), .recon_cnt = cpu_to_le16(sess->s.recon_cnt), }; + msg.first_conn = sess->for_new_clt ? FIRST_CONN : 0; uuid_copy(&msg.sess_uuid, &sess->s.uuid); uuid_copy(&msg.paths_uuid, &clt->paths_uuid); @@ -1748,6 +1762,8 @@ scnprintf(sess->hca_name, sizeof(sess->hca_name), sess->s.dev->ib_dev->name); sess->s.src_addr = con->c.cm_id->route.addr.src_addr; + /* set for_new_clt, to allow future reconnect on any path */ + sess->for_new_clt = 1; } return 0; @@ -1829,8 +1845,8 @@ cm_err = rtrs_rdma_route_resolved(con); break; case RDMA_CM_EVENT_ESTABLISHED: - con->cm_err = rtrs_rdma_conn_established(con, ev); - if (likely(!con->cm_err)) { + cm_err = rtrs_rdma_conn_established(con, ev); + if (likely(!cm_err)) { /* * Report success and wake up. Here we abuse state_wq, * i.e. wake up without state change, but we set cm_err. @@ -2503,7 +2519,9 @@ sess->stats->reconnects.fail_cnt++; delay_ms = clt->reconnect_delay_sec * 1000; queue_delayed_work(rtrs_wq, &sess->reconnect_dwork, - msecs_to_jiffies(delay_ms)); + msecs_to_jiffies(delay_ms + + prandom_u32() % + RTRS_RECONNECT_SEED)); } } @@ -2563,11 +2581,8 @@ clt->dev.class = rtrs_clt_dev_class; clt->dev.release = rtrs_clt_dev_release; err = dev_set_name(&clt->dev, "%s", sessname); - if (err) { - free_percpu(clt->pcpu_path); - kfree(clt); - return ERR_PTR(err); - } + if (err) + goto err; /* * Suppress user space notification until * sysfs files are created @@ -2575,29 +2590,31 @@ dev_set_uevent_suppress(&clt->dev, true); err = device_register(&clt->dev); if (err) { - free_percpu(clt->pcpu_path); put_device(&clt->dev); - return ERR_PTR(err); + goto err; } clt->kobj_paths = kobject_create_and_add("paths", &clt->dev.kobj); if (!clt->kobj_paths) { - free_percpu(clt->pcpu_path); - device_unregister(&clt->dev); - return NULL; + err = -ENOMEM; + goto err_dev; } err = rtrs_clt_create_sysfs_root_files(clt); if (err) { - free_percpu(clt->pcpu_path); kobject_del(clt->kobj_paths); kobject_put(clt->kobj_paths); - device_unregister(&clt->dev); - return ERR_PTR(err); + goto err_dev; } dev_set_uevent_suppress(&clt->dev, false); kobject_uevent(&clt->dev.kobj, KOBJ_ADD); return clt; +err_dev: + device_unregister(&clt->dev); +err: + free_percpu(clt->pcpu_path); + kfree(clt); + return ERR_PTR(err); } static void wait_for_inflight_permits(struct rtrs_clt *clt) @@ -2670,6 +2687,8 @@ err = PTR_ERR(sess); goto close_all_sess; } + if (!i) + sess->for_new_clt = 1; list_add_tail_rcu(&sess->s.entry, &clt->paths_list); err = init_sess(sess); @@ -2972,7 +2991,7 @@ pr_err("Failed to create rtrs-client dev class\n"); return PTR_ERR(rtrs_clt_dev_class); } - rtrs_wq = alloc_workqueue("rtrs_client_wq", WQ_MEM_RECLAIM, 0); + rtrs_wq = alloc_workqueue("rtrs_client_wq", 0, 0); if (!rtrs_wq) { class_destroy(rtrs_clt_dev_class); return -ENOMEM; --- linux-azure-5.8-5.8.0.orig/drivers/infiniband/ulp/rtrs/rtrs-clt.h +++ linux-azure-5.8-5.8.0/drivers/infiniband/ulp/rtrs/rtrs-clt.h @@ -142,6 +142,7 @@ int max_send_sge; u32 flags; struct kobject kobj; + u8 for_new_clt; struct rtrs_clt_stats *stats; /* cache hca_port and hca_name to display in sysfs */ u8 hca_port; --- linux-azure-5.8-5.8.0.orig/drivers/infiniband/ulp/rtrs/rtrs-pri.h +++ linux-azure-5.8-5.8.0/drivers/infiniband/ulp/rtrs/rtrs-pri.h @@ -189,7 +189,9 @@ __le16 recon_cnt; uuid_t sess_uuid; uuid_t paths_uuid; - u8 reserved[12]; + u8 first_conn : 1; + u8 reserved_bits : 7; + u8 reserved[11]; }; /** @@ -305,8 +307,9 @@ struct ib_send_wr *head); int rtrs_cq_qp_create(struct rtrs_sess *rtrs_sess, struct rtrs_con *con, - u32 max_send_sge, int cq_vector, u16 cq_size, - u16 wr_queue_size, enum ib_poll_context poll_ctx); + u32 max_send_sge, int cq_vector, int cq_size, + u32 max_send_wr, u32 max_recv_wr, + enum ib_poll_context poll_ctx); void rtrs_cq_qp_destroy(struct rtrs_con *con); void rtrs_init_hb(struct rtrs_sess *sess, struct ib_cqe *cqe, --- linux-azure-5.8-5.8.0.orig/drivers/infiniband/ulp/rtrs/rtrs-srv-sysfs.c +++ linux-azure-5.8-5.8.0/drivers/infiniband/ulp/rtrs/rtrs-srv-sysfs.c @@ -53,6 +53,8 @@ sockaddr_to_str((struct sockaddr *)&sess->s.dst_addr, str, sizeof(str)); rtrs_info(s, "disconnect for path %s requested\n", str); + /* first remove sysfs itself to avoid deadlock */ + sysfs_remove_file_self(&sess->kobj, &attr->attr); close_sess(sess); return count; @@ -152,13 +154,6 @@ .attrs = rtrs_srv_stats_attrs, }; -static void rtrs_srv_dev_release(struct device *dev) -{ - struct rtrs_srv *srv = container_of(dev, struct rtrs_srv, dev); - - kfree(srv); -} - static int rtrs_srv_create_once_sysfs_root_folders(struct rtrs_srv_sess *sess) { struct rtrs_srv *srv = sess->srv; @@ -172,7 +167,6 @@ goto unlock; } srv->dev.class = rtrs_dev_class; - srv->dev.release = rtrs_srv_dev_release; err = dev_set_name(&srv->dev, "%s", sess->s.sessname); if (err) goto unlock; @@ -182,16 +176,17 @@ * sysfs files are created */ dev_set_uevent_suppress(&srv->dev, true); - err = device_register(&srv->dev); + err = device_add(&srv->dev); if (err) { - pr_err("device_register(): %d\n", err); + pr_err("device_add(): %d\n", err); goto put; } srv->kobj_paths = kobject_create_and_add("paths", &srv->dev.kobj); if (!srv->kobj_paths) { err = -ENOMEM; pr_err("kobject_create_and_add(): %d\n", err); - device_unregister(&srv->dev); + device_del(&srv->dev); + put_device(&srv->dev); goto unlock; } dev_set_uevent_suppress(&srv->dev, false); @@ -216,7 +211,8 @@ kobject_del(srv->kobj_paths); kobject_put(srv->kobj_paths); mutex_unlock(&srv->paths_mutex); - device_unregister(&srv->dev); + device_del(&srv->dev); + put_device(&srv->dev); } else { mutex_unlock(&srv->paths_mutex); } @@ -245,6 +241,7 @@ &sess->kobj, "stats"); if (err) { rtrs_err(s, "kobject_init_and_add(): %d\n", err); + kobject_put(&sess->stats->kobj_stats); return err; } err = sysfs_create_group(&sess->stats->kobj_stats, @@ -301,8 +298,8 @@ sysfs_remove_group(&sess->kobj, &rtrs_srv_sess_attr_group); put_kobj: kobject_del(&sess->kobj); - kobject_put(&sess->kobj); destroy_root: + kobject_put(&sess->kobj); rtrs_srv_destroy_once_sysfs_root_folders(sess); return err; @@ -313,7 +310,7 @@ if (sess->kobj.state_in_sysfs) { kobject_del(&sess->stats->kobj_stats); kobject_put(&sess->stats->kobj_stats); - kobject_del(&sess->kobj); + sysfs_remove_group(&sess->kobj, &rtrs_srv_sess_attr_group); kobject_put(&sess->kobj); rtrs_srv_destroy_once_sysfs_root_folders(sess); --- linux-azure-5.8-5.8.0.orig/drivers/infiniband/ulp/rtrs/rtrs-srv.c +++ linux-azure-5.8-5.8.0/drivers/infiniband/ulp/rtrs/rtrs-srv.c @@ -16,6 +16,7 @@ #include "rtrs-srv.h" #include "rtrs-log.h" #include +#include MODULE_DESCRIPTION("RDMA Transport Server"); MODULE_LICENSE("GPL"); @@ -31,6 +32,7 @@ static struct rtrs_rdma_dev_pd dev_pd; static mempool_t *chunk_pool; struct class *rtrs_dev_class; +static struct rtrs_srv_ib_ctx ib_ctx; static int __read_mostly max_chunk_size = DEFAULT_MAX_CHUNK_SIZE; static int __read_mostly sess_queue_depth = DEFAULT_SESS_QUEUE_DEPTH; @@ -230,7 +232,8 @@ dma_addr_t dma_addr = sess->dma_addr[id->msg_id]; struct rtrs_srv_mr *srv_mr; struct rtrs_srv *srv = sess->srv; - struct ib_send_wr inv_wr, imm_wr; + struct ib_send_wr inv_wr; + struct ib_rdma_wr imm_wr; struct ib_rdma_wr *wr = NULL; enum ib_send_flags flags; size_t sg_cnt; @@ -275,21 +278,22 @@ WARN_ON_ONCE(rkey != wr->rkey); wr->wr.opcode = IB_WR_RDMA_WRITE; + wr->wr.wr_cqe = &io_comp_cqe; wr->wr.ex.imm_data = 0; wr->wr.send_flags = 0; if (need_inval && always_invalidate) { wr->wr.next = &rwr.wr; rwr.wr.next = &inv_wr; - inv_wr.next = &imm_wr; + inv_wr.next = &imm_wr.wr; } else if (always_invalidate) { wr->wr.next = &rwr.wr; - rwr.wr.next = &imm_wr; + rwr.wr.next = &imm_wr.wr; } else if (need_inval) { wr->wr.next = &inv_wr; - inv_wr.next = &imm_wr; + inv_wr.next = &imm_wr.wr; } else { - wr->wr.next = &imm_wr; + wr->wr.next = &imm_wr.wr; } /* * From time to time we have to post signaled sends, @@ -302,16 +306,18 @@ inv_wr.sg_list = NULL; inv_wr.num_sge = 0; inv_wr.opcode = IB_WR_SEND_WITH_INV; + inv_wr.wr_cqe = &io_comp_cqe; inv_wr.send_flags = 0; inv_wr.ex.invalidate_rkey = rkey; } - imm_wr.next = NULL; + imm_wr.wr.next = NULL; if (always_invalidate) { struct rtrs_msg_rkey_rsp *msg; srv_mr = &sess->mrs[id->msg_id]; rwr.wr.opcode = IB_WR_REG_MR; + rwr.wr.wr_cqe = &local_reg_cqe; rwr.wr.num_sge = 0; rwr.mr = srv_mr->mr; rwr.wr.send_flags = 0; @@ -326,22 +332,22 @@ list.addr = srv_mr->iu->dma_addr; list.length = sizeof(*msg); list.lkey = sess->s.dev->ib_pd->local_dma_lkey; - imm_wr.sg_list = &list; - imm_wr.num_sge = 1; - imm_wr.opcode = IB_WR_SEND_WITH_IMM; + imm_wr.wr.sg_list = &list; + imm_wr.wr.num_sge = 1; + imm_wr.wr.opcode = IB_WR_SEND_WITH_IMM; ib_dma_sync_single_for_device(sess->s.dev->ib_dev, srv_mr->iu->dma_addr, srv_mr->iu->size, DMA_TO_DEVICE); } else { - imm_wr.sg_list = NULL; - imm_wr.num_sge = 0; - imm_wr.opcode = IB_WR_RDMA_WRITE_WITH_IMM; + imm_wr.wr.sg_list = NULL; + imm_wr.wr.num_sge = 0; + imm_wr.wr.opcode = IB_WR_RDMA_WRITE_WITH_IMM; } - imm_wr.send_flags = flags; - imm_wr.ex.imm_data = cpu_to_be32(rtrs_to_io_rsp_imm(id->msg_id, + imm_wr.wr.send_flags = flags; + imm_wr.wr.ex.imm_data = cpu_to_be32(rtrs_to_io_rsp_imm(id->msg_id, 0, need_inval)); - imm_wr.wr_cqe = &io_comp_cqe; + imm_wr.wr.wr_cqe = &io_comp_cqe; ib_dma_sync_single_for_device(sess->s.dev->ib_dev, dma_addr, offset, DMA_BIDIRECTIONAL); @@ -368,7 +374,8 @@ { struct rtrs_sess *s = con->c.sess; struct rtrs_srv_sess *sess = to_srv_sess(s); - struct ib_send_wr inv_wr, imm_wr, *wr = NULL; + struct ib_send_wr inv_wr, *wr = NULL; + struct ib_rdma_wr imm_wr; struct ib_reg_wr rwr; struct rtrs_srv *srv = sess->srv; struct rtrs_srv_mr *srv_mr; @@ -387,6 +394,7 @@ if (need_inval) { if (likely(sg_cnt)) { + inv_wr.wr_cqe = &io_comp_cqe; inv_wr.sg_list = NULL; inv_wr.num_sge = 0; inv_wr.opcode = IB_WR_SEND_WITH_INV; @@ -404,15 +412,15 @@ if (need_inval && always_invalidate) { wr = &inv_wr; inv_wr.next = &rwr.wr; - rwr.wr.next = &imm_wr; + rwr.wr.next = &imm_wr.wr; } else if (always_invalidate) { wr = &rwr.wr; - rwr.wr.next = &imm_wr; + rwr.wr.next = &imm_wr.wr; } else if (need_inval) { wr = &inv_wr; - inv_wr.next = &imm_wr; + inv_wr.next = &imm_wr.wr; } else { - wr = &imm_wr; + wr = &imm_wr.wr; } /* * From time to time we have to post signalled sends, @@ -421,14 +429,15 @@ flags = (atomic_inc_return(&con->wr_cnt) % srv->queue_depth) ? 0 : IB_SEND_SIGNALED; imm = rtrs_to_io_rsp_imm(id->msg_id, errno, need_inval); - imm_wr.next = NULL; + imm_wr.wr.next = NULL; if (always_invalidate) { struct ib_sge list; struct rtrs_msg_rkey_rsp *msg; srv_mr = &sess->mrs[id->msg_id]; - rwr.wr.next = &imm_wr; + rwr.wr.next = &imm_wr.wr; rwr.wr.opcode = IB_WR_REG_MR; + rwr.wr.wr_cqe = &local_reg_cqe; rwr.wr.num_sge = 0; rwr.wr.send_flags = 0; rwr.mr = srv_mr->mr; @@ -443,21 +452,21 @@ list.addr = srv_mr->iu->dma_addr; list.length = sizeof(*msg); list.lkey = sess->s.dev->ib_pd->local_dma_lkey; - imm_wr.sg_list = &list; - imm_wr.num_sge = 1; - imm_wr.opcode = IB_WR_SEND_WITH_IMM; + imm_wr.wr.sg_list = &list; + imm_wr.wr.num_sge = 1; + imm_wr.wr.opcode = IB_WR_SEND_WITH_IMM; ib_dma_sync_single_for_device(sess->s.dev->ib_dev, srv_mr->iu->dma_addr, srv_mr->iu->size, DMA_TO_DEVICE); } else { - imm_wr.sg_list = NULL; - imm_wr.num_sge = 0; - imm_wr.opcode = IB_WR_RDMA_WRITE_WITH_IMM; + imm_wr.wr.sg_list = NULL; + imm_wr.wr.num_sge = 0; + imm_wr.wr.opcode = IB_WR_RDMA_WRITE_WITH_IMM; } - imm_wr.send_flags = flags; - imm_wr.wr_cqe = &io_comp_cqe; + imm_wr.wr.send_flags = flags; + imm_wr.wr.wr_cqe = &io_comp_cqe; - imm_wr.ex.imm_data = cpu_to_be32(imm); + imm_wr.wr.ex.imm_data = cpu_to_be32(imm); err = ib_post_send(id->con->c.qp, wr, NULL); if (unlikely(err)) @@ -1319,23 +1328,63 @@ return sess->cur_cq_vector; } -static struct rtrs_srv *__alloc_srv(struct rtrs_srv_ctx *ctx, - const uuid_t *paths_uuid) +static void rtrs_srv_dev_release(struct device *dev) +{ + struct rtrs_srv *srv = container_of(dev, struct rtrs_srv, dev); + + kfree(srv); +} + +static void free_srv(struct rtrs_srv *srv) +{ + int i; + + WARN_ON(refcount_read(&srv->refcount)); + for (i = 0; i < srv->queue_depth; i++) + mempool_free(srv->chunks[i], chunk_pool); + kfree(srv->chunks); + mutex_destroy(&srv->paths_mutex); + mutex_destroy(&srv->paths_ev_mutex); + /* last put to release the srv structure */ + put_device(&srv->dev); +} + +static struct rtrs_srv *get_or_create_srv(struct rtrs_srv_ctx *ctx, + const uuid_t *paths_uuid, + bool first_conn) { struct rtrs_srv *srv; int i; + mutex_lock(&ctx->srv_mutex); + list_for_each_entry(srv, &ctx->srv_list, ctx_list) { + if (uuid_equal(&srv->paths_uuid, paths_uuid) && + refcount_inc_not_zero(&srv->refcount)) { + mutex_unlock(&ctx->srv_mutex); + return srv; + } + } + mutex_unlock(&ctx->srv_mutex); + /* + * If this request is not the first connection request from the + * client for this session then fail and return error. + */ + if (!first_conn) + return ERR_PTR(-ENXIO); + + /* need to allocate a new srv */ srv = kzalloc(sizeof(*srv), GFP_KERNEL); if (!srv) - return NULL; + return ERR_PTR(-ENOMEM); - refcount_set(&srv->refcount, 1); INIT_LIST_HEAD(&srv->paths_list); mutex_init(&srv->paths_mutex); mutex_init(&srv->paths_ev_mutex); uuid_copy(&srv->paths_uuid, paths_uuid); srv->queue_depth = sess_queue_depth; srv->ctx = ctx; + device_initialize(&srv->dev); + srv->dev.release = rtrs_srv_dev_release; srv->chunks = kcalloc(srv->queue_depth, sizeof(*srv->chunks), GFP_KERNEL); @@ -1347,7 +1396,10 @@ if (!srv->chunks[i]) goto err_free_chunks; } + refcount_set(&srv->refcount, 1); + mutex_lock(&ctx->srv_mutex); list_add(&srv->ctx_list, &ctx->srv_list); + mutex_unlock(&ctx->srv_mutex); return srv; @@ -1358,50 +1410,7 @@ err_free_srv: kfree(srv); - - return NULL; -} - -static void free_srv(struct rtrs_srv *srv) -{ - int i; - - WARN_ON(refcount_read(&srv->refcount)); - for (i = 0; i < srv->queue_depth; i++) - mempool_free(srv->chunks[i], chunk_pool); - kfree(srv->chunks); - mutex_destroy(&srv->paths_mutex); - mutex_destroy(&srv->paths_ev_mutex); - /* last put to release the srv structure */ - put_device(&srv->dev); -} - -static inline struct rtrs_srv *__find_srv_and_get(struct rtrs_srv_ctx *ctx, - const uuid_t *paths_uuid) -{ - struct rtrs_srv *srv; - - list_for_each_entry(srv, &ctx->srv_list, ctx_list) { - if (uuid_equal(&srv->paths_uuid, paths_uuid) && - refcount_inc_not_zero(&srv->refcount)) - return srv; - } - - return NULL; -} - -static struct rtrs_srv *get_or_create_srv(struct rtrs_srv_ctx *ctx, - const uuid_t *paths_uuid) -{ - struct rtrs_srv *srv; - - mutex_lock(&ctx->srv_mutex); - srv = __find_srv_and_get(ctx, paths_uuid); - if (!srv) - srv = __alloc_srv(ctx, paths_uuid); - mutex_unlock(&ctx->srv_mutex); - - return srv; + return ERR_PTR(-ENOMEM); } static void put_srv(struct rtrs_srv *srv) @@ -1481,10 +1490,12 @@ static void free_sess(struct rtrs_srv_sess *sess) { - if (sess->kobj.state_in_sysfs) + if (sess->kobj.state_in_sysfs) { + kobject_del(&sess->kobj); kobject_put(&sess->kobj); - else + } else { kfree(sess); + } } static void rtrs_srv_close_work(struct work_struct *work) @@ -1606,7 +1617,7 @@ struct rtrs_sess *s = &sess->s; struct rtrs_srv_con *con; - u16 cq_size, wr_queue_size; + u32 cq_size, wr_queue_size; int err, cq_vector; con = kzalloc(sizeof(*con), GFP_KERNEL); @@ -1620,7 +1631,7 @@ con->c.cm_id = cm_id; con->c.sess = &sess->s; con->c.cid = cid; - atomic_set(&con->wr_cnt, 0); + atomic_set(&con->wr_cnt, 1); if (con->c.cid == 0) { /* @@ -1650,7 +1661,8 @@ /* TODO: SOFTIRQ can be faster, but be careful with softirq context */ err = rtrs_cq_qp_create(&sess->s, &con->c, 1, cq_vector, cq_size, - wr_queue_size, IB_POLL_WORKQUEUE); + wr_queue_size, wr_queue_size, + IB_POLL_WORKQUEUE); if (err) { rtrs_err(s, "rtrs_cq_qp_create(), err: %d\n", err); goto free_con; @@ -1801,9 +1813,9 @@ goto reject_w_econnreset; } recon_cnt = le16_to_cpu(msg->recon_cnt); - srv = get_or_create_srv(ctx, &msg->paths_uuid); - if (!srv) { - err = -ENOMEM; + srv = get_or_create_srv(ctx, &msg->paths_uuid, msg->first_conn); + if (IS_ERR(srv)) { + err = PTR_ERR(srv); goto reject_w_err; } mutex_lock(&srv->paths_mutex); @@ -1878,8 +1890,8 @@ return rtrs_rdma_do_reject(cm_id, -ECONNRESET); close_and_return_err: - close_sess(sess); mutex_unlock(&srv->paths_mutex); + close_sess(sess); return err; } @@ -2033,6 +2045,70 @@ kfree(ctx); } +static int rtrs_srv_add_one(struct ib_device *device) +{ + struct rtrs_srv_ctx *ctx; + int ret = 0; + + mutex_lock(&ib_ctx.ib_dev_mutex); + if (ib_ctx.ib_dev_count) + goto out; + + /* + * Since our CM IDs are NOT bound to any ib device we will create them + * only once + */ + ctx = ib_ctx.srv_ctx; + ret = rtrs_srv_rdma_init(ctx, ib_ctx.port); + if (ret) { + /* + * We errored out here. + * According to the ib code, if we encounter an error here then the + * error code is ignored, and no more calls to our ops are made. + */ + pr_err("Failed to initialize RDMA connection"); + goto err_out; + } + +out: + /* + * Keep a track on the number of ib devices added + */ + ib_ctx.ib_dev_count++; + +err_out: + mutex_unlock(&ib_ctx.ib_dev_mutex); + return ret; +} + +static void rtrs_srv_remove_one(struct ib_device *device, void *client_data) +{ + struct rtrs_srv_ctx *ctx; + + mutex_lock(&ib_ctx.ib_dev_mutex); + ib_ctx.ib_dev_count--; + + if (ib_ctx.ib_dev_count) + goto out; + + /* + * Since our CM IDs are NOT bound to any ib device we will remove them + * only once, when the last device is removed + */ + ctx = ib_ctx.srv_ctx; + rdma_destroy_id(ctx->cm_id_ip); + rdma_destroy_id(ctx->cm_id_ib); + +out: + mutex_unlock(&ib_ctx.ib_dev_mutex); +} + +static struct ib_client rtrs_srv_client = { + .name = "rtrs_server", + .add = rtrs_srv_add_one, + .remove = rtrs_srv_remove_one +}; + /** * rtrs_srv_open() - open RTRS server context * @ops: callback functions @@ -2051,7 +2127,11 @@ if (!ctx) return ERR_PTR(-ENOMEM); - err = rtrs_srv_rdma_init(ctx, port); + mutex_init(&ib_ctx.ib_dev_mutex); + ib_ctx.srv_ctx = ctx; + ib_ctx.port = port; + + err = ib_register_client(&rtrs_srv_client); if (err) { free_srv_ctx(ctx); return ERR_PTR(err); @@ -2090,8 +2170,8 @@ */ void rtrs_srv_close(struct rtrs_srv_ctx *ctx) { - rdma_destroy_id(ctx->cm_id_ip); - rdma_destroy_id(ctx->cm_id_ib); + ib_unregister_client(&rtrs_srv_client); + mutex_destroy(&ib_ctx.ib_dev_mutex); close_ctx(ctx); free_srv_ctx(ctx); } @@ -2150,7 +2230,7 @@ err = PTR_ERR(rtrs_dev_class); goto out_chunk_pool; } - rtrs_wq = alloc_workqueue("rtrs_server_wq", WQ_MEM_RECLAIM, 0); + rtrs_wq = alloc_workqueue("rtrs_server_wq", 0, 0); if (!rtrs_wq) { err = -ENOMEM; goto out_dev_class; --- linux-azure-5.8-5.8.0.orig/drivers/infiniband/ulp/rtrs/rtrs-srv.h +++ linux-azure-5.8-5.8.0/drivers/infiniband/ulp/rtrs/rtrs-srv.h @@ -118,6 +118,13 @@ struct list_head srv_list; }; +struct rtrs_srv_ib_ctx { + struct rtrs_srv_ctx *srv_ctx; + u16 port; + struct mutex ib_dev_mutex; + int ib_dev_count; +}; + extern struct class *rtrs_dev_class; void close_sess(struct rtrs_srv_sess *sess); --- linux-azure-5.8-5.8.0.orig/drivers/infiniband/ulp/rtrs/rtrs.c +++ linux-azure-5.8-5.8.0/drivers/infiniband/ulp/rtrs/rtrs.c @@ -246,14 +246,14 @@ } static int create_qp(struct rtrs_con *con, struct ib_pd *pd, - u16 wr_queue_size, u32 max_sge) + u32 max_send_wr, u32 max_recv_wr, u32 max_sge) { struct ib_qp_init_attr init_attr = {NULL}; struct rdma_cm_id *cm_id = con->cm_id; int ret; - init_attr.cap.max_send_wr = wr_queue_size; - init_attr.cap.max_recv_wr = wr_queue_size; + init_attr.cap.max_send_wr = max_send_wr; + init_attr.cap.max_recv_wr = max_recv_wr; init_attr.cap.max_recv_sge = 1; init_attr.event_handler = qp_event_handler; init_attr.qp_context = con; @@ -275,8 +275,9 @@ } int rtrs_cq_qp_create(struct rtrs_sess *sess, struct rtrs_con *con, - u32 max_send_sge, int cq_vector, u16 cq_size, - u16 wr_queue_size, enum ib_poll_context poll_ctx) + u32 max_send_sge, int cq_vector, int cq_size, + u32 max_send_wr, u32 max_recv_wr, + enum ib_poll_context poll_ctx) { int err; @@ -284,7 +285,8 @@ if (err) return err; - err = create_qp(con, sess->dev->ib_pd, wr_queue_size, max_send_sge); + err = create_qp(con, sess->dev->ib_pd, max_send_wr, max_recv_wr, + max_send_sge); if (err) { ib_free_cq(con->cq); con->cq = NULL; --- linux-azure-5.8-5.8.0.orig/drivers/infiniband/ulp/srpt/ib_srpt.c +++ linux-azure-5.8-5.8.0/drivers/infiniband/ulp/srpt/ib_srpt.c @@ -622,10 +622,11 @@ /** * srpt_unregister_mad_agent - unregister MAD callback functions * @sdev: SRPT HCA pointer. + * #port_cnt: number of ports with registered MAD * * Note: It is safe to call this function more than once for the same device. */ -static void srpt_unregister_mad_agent(struct srpt_device *sdev) +static void srpt_unregister_mad_agent(struct srpt_device *sdev, int port_cnt) { struct ib_port_modify port_modify = { .clr_port_cap_mask = IB_PORT_DEVICE_MGMT_SUP, @@ -633,7 +634,7 @@ struct srpt_port *sport; int i; - for (i = 1; i <= sdev->device->phys_port_cnt; i++) { + for (i = 1; i <= port_cnt; i++) { sport = &sdev->port[i - 1]; WARN_ON(sport->port != i); if (sport->mad_agent) { @@ -3187,7 +3188,8 @@ if (ret) { pr_err("MAD registration failed for %s-%d.\n", dev_name(&sdev->device->dev), i); - goto err_event; + i--; + goto err_port; } } @@ -3199,7 +3201,8 @@ pr_debug("added %s.\n", dev_name(&device->dev)); return 0; -err_event: +err_port: + srpt_unregister_mad_agent(sdev, i); ib_unregister_event_handler(&sdev->event_handler); err_cm: if (sdev->cm_id) @@ -3223,7 +3226,7 @@ struct srpt_device *sdev = client_data; int i; - srpt_unregister_mad_agent(sdev); + srpt_unregister_mad_agent(sdev, sdev->device->phys_port_cnt); ib_unregister_event_handler(&sdev->event_handler); --- linux-azure-5.8-5.8.0.orig/drivers/input/joydev.c +++ linux-azure-5.8-5.8.0/drivers/input/joydev.c @@ -456,7 +456,7 @@ if (IS_ERR(abspam)) return PTR_ERR(abspam); - for (i = 0; i < joydev->nabs; i++) { + for (i = 0; i < len && i < joydev->nabs; i++) { if (abspam[i] > ABS_MAX) { retval = -EINVAL; goto out; @@ -480,6 +480,9 @@ int i; int retval = 0; + if (len % sizeof(*keypam)) + return -EINVAL; + len = min(len, sizeof(joydev->keypam)); /* Validate the map. */ @@ -487,7 +490,7 @@ if (IS_ERR(keypam)) return PTR_ERR(keypam); - for (i = 0; i < joydev->nkey; i++) { + for (i = 0; i < (len / 2) && i < joydev->nkey; i++) { if (keypam[i] > KEY_MAX || keypam[i] < BTN_MISC) { retval = -EINVAL; goto out; --- linux-azure-5.8-5.8.0.orig/drivers/input/joystick/xpad.c +++ linux-azure-5.8-5.8.0/drivers/input/joystick/xpad.c @@ -215,9 +215,17 @@ { 0x0e6f, 0x0213, "Afterglow Gamepad for Xbox 360", 0, XTYPE_XBOX360 }, { 0x0e6f, 0x021f, "Rock Candy Gamepad for Xbox 360", 0, XTYPE_XBOX360 }, { 0x0e6f, 0x0246, "Rock Candy Gamepad for Xbox One 2015", 0, XTYPE_XBOXONE }, - { 0x0e6f, 0x02ab, "PDP Controller for Xbox One", 0, XTYPE_XBOXONE }, + { 0x0e6f, 0x02a0, "PDP Xbox One Controller", 0, XTYPE_XBOXONE }, + { 0x0e6f, 0x02a1, "PDP Xbox One Controller", 0, XTYPE_XBOXONE }, + { 0x0e6f, 0x02a2, "PDP Wired Controller for Xbox One - Crimson Red", 0, XTYPE_XBOXONE }, { 0x0e6f, 0x02a4, "PDP Wired Controller for Xbox One - Stealth Series", 0, XTYPE_XBOXONE }, { 0x0e6f, 0x02a6, "PDP Wired Controller for Xbox One - Camo Series", 0, XTYPE_XBOXONE }, + { 0x0e6f, 0x02a7, "PDP Xbox One Controller", 0, XTYPE_XBOXONE }, + { 0x0e6f, 0x02a8, "PDP Xbox One Controller", 0, XTYPE_XBOXONE }, + { 0x0e6f, 0x02ab, "PDP Controller for Xbox One", 0, XTYPE_XBOXONE }, + { 0x0e6f, 0x02ad, "PDP Wired Controller for Xbox One - Stealth Series", 0, XTYPE_XBOXONE }, + { 0x0e6f, 0x02b3, "Afterglow Prismatic Wired Controller", 0, XTYPE_XBOXONE }, + { 0x0e6f, 0x02b8, "Afterglow Prismatic Wired Controller", 0, XTYPE_XBOXONE }, { 0x0e6f, 0x0301, "Logic3 Controller", 0, XTYPE_XBOX360 }, { 0x0e6f, 0x0346, "Rock Candy Gamepad for Xbox One 2016", 0, XTYPE_XBOXONE }, { 0x0e6f, 0x0401, "Logic3 Controller", 0, XTYPE_XBOX360 }, @@ -241,6 +249,7 @@ { 0x1038, 0x1430, "SteelSeries Stratus Duo", 0, XTYPE_XBOX360 }, { 0x1038, 0x1431, "SteelSeries Stratus Duo", 0, XTYPE_XBOX360 }, { 0x11c9, 0x55f0, "Nacon GC-100XF", 0, XTYPE_XBOX360 }, + { 0x1209, 0x2882, "Ardwiino Controller", 0, XTYPE_XBOX360 }, { 0x12ab, 0x0004, "Honey Bee Xbox360 dancepad", MAP_DPAD_TO_BUTTONS, XTYPE_XBOX360 }, { 0x12ab, 0x0301, "PDP AFTERGLOW AX.1", 0, XTYPE_XBOX360 }, { 0x12ab, 0x0303, "Mortal Kombat Klassic FightStick", MAP_TRIGGERS_TO_BUTTONS, XTYPE_XBOX360 }, @@ -295,6 +304,10 @@ { 0x1bad, 0xfa01, "MadCatz GamePad", 0, XTYPE_XBOX360 }, { 0x1bad, 0xfd00, "Razer Onza TE", 0, XTYPE_XBOX360 }, { 0x1bad, 0xfd01, "Razer Onza", 0, XTYPE_XBOX360 }, + { 0x20d6, 0x2001, "BDA Xbox Series X Wired Controller", 0, XTYPE_XBOXONE }, + { 0x20d6, 0x2009, "PowerA Enhanced Wired Controller for Xbox Series X|S", 0, XTYPE_XBOXONE }, + { 0x20d6, 0x281f, "PowerA Wired Controller For Xbox 360", 0, XTYPE_XBOX360 }, + { 0x2e24, 0x0652, "Hyperkin Duke X-Box One pad", 0, XTYPE_XBOXONE }, { 0x24c6, 0x5000, "Razer Atrox Arcade Stick", MAP_TRIGGERS_TO_BUTTONS, XTYPE_XBOX360 }, { 0x24c6, 0x5300, "PowerA MINI PROEX Controller", 0, XTYPE_XBOX360 }, { 0x24c6, 0x5303, "Xbox Airflo wired controller", 0, XTYPE_XBOX360 }, @@ -418,6 +431,7 @@ XPAD_XBOXONE_VENDOR(0x0f0d), /* Hori Controllers */ XPAD_XBOX360_VENDOR(0x1038), /* SteelSeries Controllers */ XPAD_XBOX360_VENDOR(0x11c9), /* Nacon GC100XF */ + XPAD_XBOX360_VENDOR(0x1209), /* Ardwiino Controllers */ XPAD_XBOX360_VENDOR(0x12ab), /* X-Box 360 dance pads */ XPAD_XBOX360_VENDOR(0x1430), /* RedOctane X-Box 360 controllers */ XPAD_XBOX360_VENDOR(0x146b), /* BigBen Interactive Controllers */ @@ -427,8 +441,12 @@ XPAD_XBOX360_VENDOR(0x162e), /* Joytech X-Box 360 controllers */ XPAD_XBOX360_VENDOR(0x1689), /* Razer Onza */ XPAD_XBOX360_VENDOR(0x1bad), /* Harminix Rock Band Guitar and Drums */ + XPAD_XBOX360_VENDOR(0x20d6), /* PowerA Controllers */ + XPAD_XBOXONE_VENDOR(0x20d6), /* PowerA Controllers */ XPAD_XBOX360_VENDOR(0x24c6), /* PowerA Controllers */ XPAD_XBOXONE_VENDOR(0x24c6), /* PowerA Controllers */ + XPAD_XBOXONE_VENDOR(0x2e24), /* Hyperkin Duke X-Box One pad */ + XPAD_XBOX360_VENDOR(0x2f24), /* GameSir Controllers */ { } }; --- linux-azure-5.8-5.8.0.orig/drivers/input/keyboard/cros_ec_keyb.c +++ linux-azure-5.8-5.8.0/drivers/input/keyboard/cros_ec_keyb.c @@ -183,6 +183,7 @@ "changed: [r%d c%d]: byte %02x\n", row, col, new_state); + input_event(idev, EV_MSC, MSC_SCAN, pos); input_report_key(idev, keycodes[pos], new_state); } --- linux-azure-5.8-5.8.0.orig/drivers/input/keyboard/ep93xx_keypad.c +++ linux-azure-5.8-5.8.0/drivers/input/keyboard/ep93xx_keypad.c @@ -250,8 +250,8 @@ } keypad->irq = platform_get_irq(pdev, 0); - if (!keypad->irq) { - err = -ENXIO; + if (keypad->irq < 0) { + err = keypad->irq; goto failed_free; } --- linux-azure-5.8-5.8.0.orig/drivers/input/keyboard/omap4-keypad.c +++ linux-azure-5.8-5.8.0/drivers/input/keyboard/omap4-keypad.c @@ -186,12 +186,8 @@ return 0; } -static void omap4_keypad_close(struct input_dev *input) +static void omap4_keypad_stop(struct omap4_keypad *keypad_data) { - struct omap4_keypad *keypad_data = input_get_drvdata(input); - - disable_irq(keypad_data->irq); - /* Disable interrupts and wake-up events */ kbd_write_irqreg(keypad_data, OMAP4_KBD_IRQENABLE, OMAP4_VAL_IRQDISABLE); @@ -200,7 +196,15 @@ /* clear pending interrupts */ kbd_write_irqreg(keypad_data, OMAP4_KBD_IRQSTATUS, kbd_read_irqreg(keypad_data, OMAP4_KBD_IRQSTATUS)); +} + +static void omap4_keypad_close(struct input_dev *input) +{ + struct omap4_keypad *keypad_data; + keypad_data = input_get_drvdata(input); + disable_irq(keypad_data->irq); + omap4_keypad_stop(keypad_data); enable_irq(keypad_data->irq); pm_runtime_put_sync(input->dev.parent); @@ -223,13 +227,37 @@ return 0; } +static int omap4_keypad_check_revision(struct device *dev, + struct omap4_keypad *keypad_data) +{ + unsigned int rev; + + rev = __raw_readl(keypad_data->base + OMAP4_KBD_REVISION); + rev &= 0x03 << 30; + rev >>= 30; + switch (rev) { + case KBD_REVISION_OMAP4: + keypad_data->reg_offset = 0x00; + keypad_data->irqreg_offset = 0x00; + break; + case KBD_REVISION_OMAP5: + keypad_data->reg_offset = 0x10; + keypad_data->irqreg_offset = 0x0c; + break; + default: + dev_err(dev, "Keypad reports unsupported revision %d", rev); + return -EINVAL; + } + + return 0; +} + static int omap4_keypad_probe(struct platform_device *pdev) { struct omap4_keypad *keypad_data; struct input_dev *input_dev; struct resource *res; unsigned int max_keys; - int rev; int irq; int error; @@ -240,10 +268,8 @@ } irq = platform_get_irq(pdev, 0); - if (!irq) { - dev_err(&pdev->dev, "no keyboard irq assigned\n"); - return -EINVAL; - } + if (irq < 0) + return irq; keypad_data = kzalloc(sizeof(struct omap4_keypad), GFP_KERNEL); if (!keypad_data) { @@ -271,41 +297,33 @@ goto err_release_mem; } + pm_runtime_enable(&pdev->dev); /* * Enable clocks for the keypad module so that we can read * revision register. */ - pm_runtime_enable(&pdev->dev); error = pm_runtime_get_sync(&pdev->dev); if (error) { dev_err(&pdev->dev, "pm_runtime_get_sync() failed\n"); - goto err_unmap; - } - rev = __raw_readl(keypad_data->base + OMAP4_KBD_REVISION); - rev &= 0x03 << 30; - rev >>= 30; - switch (rev) { - case KBD_REVISION_OMAP4: - keypad_data->reg_offset = 0x00; - keypad_data->irqreg_offset = 0x00; - break; - case KBD_REVISION_OMAP5: - keypad_data->reg_offset = 0x10; - keypad_data->irqreg_offset = 0x0c; - break; - default: - dev_err(&pdev->dev, - "Keypad reports unsupported revision %d", rev); - error = -EINVAL; - goto err_pm_put_sync; + pm_runtime_put_noidle(&pdev->dev); + } else { + error = omap4_keypad_check_revision(&pdev->dev, + keypad_data); + if (!error) { + /* Ensure device does not raise interrupts */ + omap4_keypad_stop(keypad_data); + } + pm_runtime_put_sync(&pdev->dev); } + if (error) + goto err_pm_disable; /* input device allocation */ keypad_data->input = input_dev = input_allocate_device(); if (!input_dev) { error = -ENOMEM; - goto err_pm_put_sync; + goto err_pm_disable; } input_dev->name = pdev->name; @@ -351,28 +369,25 @@ goto err_free_keymap; } - device_init_wakeup(&pdev->dev, true); - pm_runtime_put_sync(&pdev->dev); - error = input_register_device(keypad_data->input); if (error < 0) { dev_err(&pdev->dev, "failed to register input device\n"); - goto err_pm_disable; + goto err_free_irq; } + device_init_wakeup(&pdev->dev, true); platform_set_drvdata(pdev, keypad_data); + return 0; -err_pm_disable: - pm_runtime_disable(&pdev->dev); +err_free_irq: free_irq(keypad_data->irq, keypad_data); err_free_keymap: kfree(keypad_data->keymap); err_free_input: input_free_device(input_dev); -err_pm_put_sync: - pm_runtime_put_sync(&pdev->dev); -err_unmap: +err_pm_disable: + pm_runtime_disable(&pdev->dev); iounmap(keypad_data->base); err_release_mem: release_mem_region(res->start, resource_size(res)); --- linux-azure-5.8-5.8.0.orig/drivers/input/keyboard/sunkbd.c +++ linux-azure-5.8-5.8.0/drivers/input/keyboard/sunkbd.c @@ -99,7 +99,8 @@ switch (data) { case SUNKBD_RET_RESET: - schedule_work(&sunkbd->tq); + if (sunkbd->enabled) + schedule_work(&sunkbd->tq); sunkbd->reset = -1; break; @@ -200,16 +201,12 @@ } /* - * sunkbd_reinit() sets leds and beeps to a state the computer remembers they - * were in. + * sunkbd_set_leds_beeps() sets leds and beeps to a state the computer remembers + * they were in. */ -static void sunkbd_reinit(struct work_struct *work) +static void sunkbd_set_leds_beeps(struct sunkbd *sunkbd) { - struct sunkbd *sunkbd = container_of(work, struct sunkbd, tq); - - wait_event_interruptible_timeout(sunkbd->wait, sunkbd->reset >= 0, HZ); - serio_write(sunkbd->serio, SUNKBD_CMD_SETLED); serio_write(sunkbd->serio, (!!test_bit(LED_CAPSL, sunkbd->dev->led) << 3) | @@ -222,11 +219,39 @@ SUNKBD_CMD_BELLOFF - !!test_bit(SND_BELL, sunkbd->dev->snd)); } + +/* + * sunkbd_reinit() wait for the keyboard reset to complete and restores state + * of leds and beeps. + */ + +static void sunkbd_reinit(struct work_struct *work) +{ + struct sunkbd *sunkbd = container_of(work, struct sunkbd, tq); + + /* + * It is OK that we check sunkbd->enabled without pausing serio, + * as we only want to catch true->false transition that will + * happen once and we will be woken up for it. + */ + wait_event_interruptible_timeout(sunkbd->wait, + sunkbd->reset >= 0 || !sunkbd->enabled, + HZ); + + if (sunkbd->reset >= 0 && sunkbd->enabled) + sunkbd_set_leds_beeps(sunkbd); +} + static void sunkbd_enable(struct sunkbd *sunkbd, bool enable) { serio_pause_rx(sunkbd->serio); sunkbd->enabled = enable; serio_continue_rx(sunkbd->serio); + + if (!enable) { + wake_up_interruptible(&sunkbd->wait); + cancel_work_sync(&sunkbd->tq); + } } /* --- linux-azure-5.8-5.8.0.orig/drivers/input/keyboard/twl4030_keypad.c +++ linux-azure-5.8-5.8.0/drivers/input/keyboard/twl4030_keypad.c @@ -50,7 +50,7 @@ bool autorepeat; unsigned int n_rows; unsigned int n_cols; - unsigned int irq; + int irq; struct device *dbg_dev; struct input_dev *input; @@ -376,10 +376,8 @@ } kp->irq = platform_get_irq(pdev, 0); - if (!kp->irq) { - dev_err(&pdev->dev, "no keyboard irq assigned\n"); - return -EINVAL; - } + if (kp->irq < 0) + return kp->irq; error = matrix_keypad_build_keymap(keymap_data, NULL, TWL4030_MAX_ROWS, --- linux-azure-5.8-5.8.0.orig/drivers/input/misc/adxl34x.c +++ linux-azure-5.8-5.8.0/drivers/input/misc/adxl34x.c @@ -696,7 +696,7 @@ struct input_dev *input_dev; const struct adxl34x_platform_data *pdata; int err, range, i; - unsigned char revid; + int revid; if (!irq) { dev_err(dev, "no IRQ?\n"); --- linux-azure-5.8-5.8.0.orig/drivers/input/misc/ati_remote2.c +++ linux-azure-5.8-5.8.0/drivers/input/misc/ati_remote2.c @@ -68,7 +68,7 @@ { pr_debug("%s()\n", __func__); - return sprintf(buffer, "0x%04x", *(unsigned int *)kp->arg); + return sprintf(buffer, "0x%04x\n", *(unsigned int *)kp->arg); } static int ati_remote2_set_mode_mask(const char *val, @@ -84,7 +84,7 @@ { pr_debug("%s()\n", __func__); - return sprintf(buffer, "0x%02x", *(unsigned int *)kp->arg); + return sprintf(buffer, "0x%02x\n", *(unsigned int *)kp->arg); } static unsigned int channel_mask = ATI_REMOTE2_MAX_CHANNEL_MASK; --- linux-azure-5.8-5.8.0.orig/drivers/input/misc/cm109.c +++ linux-azure-5.8-5.8.0/drivers/input/misc/cm109.c @@ -568,12 +568,15 @@ dev->ctl_data->byte[HID_OR2] = dev->keybit; dev->ctl_data->byte[HID_OR3] = 0x00; + dev->ctl_urb_pending = 1; error = usb_submit_urb(dev->urb_ctl, GFP_KERNEL); - if (error) + if (error) { + dev->ctl_urb_pending = 0; dev_err(&dev->intf->dev, "%s: usb_submit_urb (urb_ctl) failed %d\n", __func__, error); - else + } else { dev->open = 1; + } mutex_unlock(&dev->pm_mutex); --- linux-azure-5.8-5.8.0.orig/drivers/input/mouse/cyapa_gen6.c +++ linux-azure-5.8-5.8.0/drivers/input/mouse/cyapa_gen6.c @@ -573,7 +573,7 @@ memset(&cmd, 0, sizeof(cmd)); put_unaligned_le16(PIP_OUTPUT_REPORT_ADDR, &cmd.head.addr); - put_unaligned_le16(sizeof(cmd), &cmd.head.length - 2); + put_unaligned_le16(sizeof(cmd) - 2, &cmd.head.length); cmd.head.report_id = PIP_APP_CMD_REPORT_ID; cmd.head.cmd_code = PIP_RETRIEVE_DATA_STRUCTURE; put_unaligned_le16(read_offset, &cmd.read_offset); --- linux-azure-5.8-5.8.0.orig/drivers/input/mouse/cypress_ps2.c +++ linux-azure-5.8-5.8.0/drivers/input/mouse/cypress_ps2.c @@ -387,7 +387,9 @@ if (ret < 0) return ret; +#if ( CYPRESS_SIMULATED_MT != 1 ) __set_bit(INPUT_PROP_SEMI_MT, input->propbit); +#endif input_abs_set_res(input, ABS_X, cytp->tp_res_x); input_abs_set_res(input, ABS_Y, cytp->tp_res_y); @@ -473,6 +475,22 @@ ((packet[5] & 0x0f) << 8) | packet[7]; if (cytp->mode & CYTP_BIT_ABS_PRESSURE) report_data->contacts[1].z = report_data->contacts[0].z; +#if ( CYPRESS_SIMULATED_MT == 1 ) + /* simulate contact positions for >2 fingers */ + if ( report_data->contact_cnt >= 3 ) { + int i; + for ( i=1; icontact_cnt; i++ ) { + report_data->contacts[i].x = + report_data->contacts[0].x + + 100*(i)*((i%2)?-1:1); + report_data->contacts[i].y = + report_data->contacts[0].y; + if (cytp->mode & CYTP_BIT_ABS_PRESSURE) + report_data->contacts[i].z = + report_data->contacts[0].z; + } + } +#endif } report_data->left = (header_byte & BTN_LEFT_BIT) ? 1 : 0; --- linux-azure-5.8-5.8.0.orig/drivers/input/mouse/cypress_ps2.h +++ linux-azure-5.8-5.8.0/drivers/input/mouse/cypress_ps2.h @@ -131,7 +131,18 @@ #define RESP_REMOTE_BIT 0x40 #define RESP_SMBUS_BIT 0x80 -#define CYTP_MAX_MT_SLOTS 2 +/* + * CYPRESS_SIMULATED_MT + * set to 1 for simulated multitouch (up to 5 contact points) + * set to 0 for SEMI_MT (only 2 corner points, and count of fingers) + */ +#define CYPRESS_SIMULATED_MT 1 + +#if ( CYPRESS_SIMULATED_MT == 1 ) +# define CYTP_MAX_MT_SLOTS 5 +#else +# define CYTP_MAX_MT_SLOTS 2 +#endif struct cytp_contact { int x; --- linux-azure-5.8-5.8.0.orig/drivers/input/mouse/elan_i2c.h +++ linux-azure-5.8-5.8.0/drivers/input/mouse/elan_i2c.h @@ -26,6 +26,24 @@ #define ETP_CALIBRATE_MAX_LEN 3 +#define ETP_FEATURE_REPORT_MK BIT(0) + +#define ETP_REPORT_ID 0x5D +#define ETP_TP_REPORT_ID 0x5E +#define ETP_TP_REPORT_ID2 0x5F +#define ETP_REPORT_ID2 0x60 /* High precision report */ + +#define ETP_REPORT_ID_OFFSET 2 +#define ETP_TOUCH_INFO_OFFSET 3 +#define ETP_FINGER_DATA_OFFSET 4 +#define ETP_HOVER_INFO_OFFSET 30 +#define ETP_MK_DATA_OFFSET 33 /* For high precision reports */ + +#define ETP_MAX_REPORT_LEN 39 + +#define ETP_MAX_FINGERS 5 +#define ETP_FINGER_DATA_LEN 5 + /* IAP Firmware handling */ #define ETP_PRODUCT_ID_FORMAT_STRING "%d.0" #define ETP_FW_NAME "elan_i2c_" ETP_PRODUCT_ID_FORMAT_STRING ".bin" @@ -78,7 +96,11 @@ int (*finish_fw_update)(struct i2c_client *client, struct completion *reset_done); - int (*get_report)(struct i2c_client *client, u8 *report); + int (*get_report_features)(struct i2c_client *client, u8 pattern, + unsigned int *features, + unsigned int *report_len); + int (*get_report)(struct i2c_client *client, u8 *report, + unsigned int report_len); int (*get_pressure_adjustment)(struct i2c_client *client, int *adjustment); int (*get_pattern)(struct i2c_client *client, u8 *pattern); --- linux-azure-5.8-5.8.0.orig/drivers/input/mouse/elan_i2c_core.c +++ linux-azure-5.8-5.8.0/drivers/input/mouse/elan_i2c_core.c @@ -47,16 +47,6 @@ #define ETP_FINGER_WIDTH 15 #define ETP_RETRY_COUNT 3 -#define ETP_MAX_FINGERS 5 -#define ETP_FINGER_DATA_LEN 5 -#define ETP_REPORT_ID 0x5D -#define ETP_TP_REPORT_ID 0x5E -#define ETP_REPORT_ID_OFFSET 2 -#define ETP_TOUCH_INFO_OFFSET 3 -#define ETP_FINGER_DATA_OFFSET 4 -#define ETP_HOVER_INFO_OFFSET 30 -#define ETP_MAX_REPORT_LEN 34 - /* The main device structure */ struct elan_tp_data { struct i2c_client *client; @@ -85,6 +75,8 @@ u8 sm_version; u8 iap_version; u16 fw_checksum; + unsigned int report_features; + unsigned int report_len; int pressure_adjustment; u8 mode; u16 ic_type; @@ -341,6 +333,12 @@ else ic_type = data->iap_version; + error = data->ops->get_report_features(data->client, data->pattern, + &data->report_features, + &data->report_len); + if (error) + return error; + error = elan_get_fwinfo(ic_type, &data->fw_validpage_count, &data->fw_signature_address); if (error) @@ -351,16 +349,21 @@ return 0; } -static unsigned int elan_convert_resolution(u8 val) +static unsigned int elan_convert_resolution(u8 val, u8 pattern) { /* - * (value from firmware) * 10 + 790 = dpi - * + * pattern <= 0x01: + * (value from firmware) * 10 + 790 = dpi + * else + * ((value from firmware) + 3) * 100 = dpi + */ + int res = pattern <= 0x01 ? + (int)(char)val * 10 + 790 : ((int)(char)val + 3) * 100; + /* * We also have to convert dpi to dots/mm (*10/254 to avoid floating * point). */ - - return ((int)(char)val * 10 + 790) * 10 / 254; + return res * 10 / 254; } static int elan_query_device_parameters(struct elan_tp_data *data) @@ -409,8 +412,8 @@ if (error) return error; - data->x_res = elan_convert_resolution(hw_x_res); - data->y_res = elan_convert_resolution(hw_y_res); + data->x_res = elan_convert_resolution(hw_x_res, data->pattern); + data->y_res = elan_convert_resolution(hw_y_res, data->pattern); } else { data->x_res = (data->max_x + 1) / x_mm; data->y_res = (data->max_y + 1) / y_mm; @@ -886,24 +889,22 @@ * Elan isr functions ****************************************************************** */ -static void elan_report_contact(struct elan_tp_data *data, - int contact_num, bool contact_valid, - u8 *finger_data) +static void elan_report_contact(struct elan_tp_data *data, int contact_num, + bool contact_valid, bool high_precision, + u8 *packet, u8 *finger_data) { struct input_dev *input = data->input; unsigned int pos_x, pos_y; - unsigned int pressure, mk_x, mk_y; - unsigned int area_x, area_y, major, minor; - unsigned int scaled_pressure; + unsigned int pressure, scaled_pressure; if (contact_valid) { - pos_x = ((finger_data[0] & 0xf0) << 4) | - finger_data[1]; - pos_y = ((finger_data[0] & 0x0f) << 8) | - finger_data[2]; - mk_x = (finger_data[3] & 0x0f); - mk_y = (finger_data[3] >> 4); - pressure = finger_data[4]; + if (high_precision) { + pos_x = get_unaligned_be16(&finger_data[0]); + pos_y = get_unaligned_be16(&finger_data[2]); + } else { + pos_x = ((finger_data[0] & 0xf0) << 4) | finger_data[1]; + pos_y = ((finger_data[0] & 0x0f) << 8) | finger_data[2]; + } if (pos_x > data->max_x || pos_y > data->max_y) { dev_dbg(input->dev.parent, @@ -913,18 +914,8 @@ return; } - /* - * To avoid treating large finger as palm, let's reduce the - * width x and y per trace. - */ - area_x = mk_x * (data->width_x - ETP_FWIDTH_REDUCE); - area_y = mk_y * (data->width_y - ETP_FWIDTH_REDUCE); - - major = max(area_x, area_y); - minor = min(area_x, area_y); - + pressure = finger_data[4]; scaled_pressure = pressure + data->pressure_adjustment; - if (scaled_pressure > ETP_MAX_PRESSURE) scaled_pressure = ETP_MAX_PRESSURE; @@ -933,16 +924,37 @@ input_report_abs(input, ABS_MT_POSITION_X, pos_x); input_report_abs(input, ABS_MT_POSITION_Y, data->max_y - pos_y); input_report_abs(input, ABS_MT_PRESSURE, scaled_pressure); - input_report_abs(input, ABS_TOOL_WIDTH, mk_x); - input_report_abs(input, ABS_MT_TOUCH_MAJOR, major); - input_report_abs(input, ABS_MT_TOUCH_MINOR, minor); + + if (data->report_features & ETP_FEATURE_REPORT_MK) { + unsigned int mk_x, mk_y, area_x, area_y; + u8 mk_data = high_precision ? + packet[ETP_MK_DATA_OFFSET + contact_num] : + finger_data[3]; + + mk_x = mk_data & 0x0f; + mk_y = mk_data >> 4; + + /* + * To avoid treating large finger as palm, let's reduce + * the width x and y per trace. + */ + area_x = mk_x * (data->width_x - ETP_FWIDTH_REDUCE); + area_y = mk_y * (data->width_y - ETP_FWIDTH_REDUCE); + + input_report_abs(input, ABS_TOOL_WIDTH, mk_x); + input_report_abs(input, ABS_MT_TOUCH_MAJOR, + max(area_x, area_y)); + input_report_abs(input, ABS_MT_TOUCH_MINOR, + min(area_x, area_y)); + } } else { input_mt_slot(input, contact_num); input_mt_report_slot_inactive(input); } } -static void elan_report_absolute(struct elan_tp_data *data, u8 *packet) +static void elan_report_absolute(struct elan_tp_data *data, u8 *packet, + bool high_precision) { struct input_dev *input = data->input; u8 *finger_data = &packet[ETP_FINGER_DATA_OFFSET]; @@ -953,11 +965,12 @@ pm_wakeup_event(&data->client->dev, 0); - hover_event = hover_info & 0x40; - for (i = 0; i < ETP_MAX_FINGERS; i++) { - contact_valid = tp_info & (1U << (3 + i)); - elan_report_contact(data, i, contact_valid, finger_data); + hover_event = hover_info & BIT(6); + for (i = 0; i < ETP_MAX_FINGERS; i++) { + contact_valid = tp_info & BIT(3 + i); + elan_report_contact(data, i, contact_valid, high_precision, + packet, finger_data); if (contact_valid) finger_data += ETP_FINGER_DATA_LEN; } @@ -1015,15 +1028,19 @@ goto out; } - error = data->ops->get_report(data->client, report); + error = data->ops->get_report(data->client, report, data->report_len); if (error) goto out; switch (report[ETP_REPORT_ID_OFFSET]) { case ETP_REPORT_ID: - elan_report_absolute(data, report); + elan_report_absolute(data, report, false); + break; + case ETP_REPORT_ID2: + elan_report_absolute(data, report, true); break; case ETP_TP_REPORT_ID: + case ETP_TP_REPORT_ID2: elan_report_trackpoint(data, report); break; default: @@ -1112,7 +1129,9 @@ input_abs_set_res(input, ABS_X, data->x_res); input_abs_set_res(input, ABS_Y, data->y_res); input_set_abs_params(input, ABS_PRESSURE, 0, ETP_MAX_PRESSURE, 0, 0); - input_set_abs_params(input, ABS_TOOL_WIDTH, 0, ETP_FINGER_WIDTH, 0, 0); + if (data->report_features & ETP_FEATURE_REPORT_MK) + input_set_abs_params(input, ABS_TOOL_WIDTH, + 0, ETP_FINGER_WIDTH, 0, 0); input_set_abs_params(input, ABS_DISTANCE, 0, 1, 0, 0); /* And MT parameters */ @@ -1122,10 +1141,12 @@ input_abs_set_res(input, ABS_MT_POSITION_Y, data->y_res); input_set_abs_params(input, ABS_MT_PRESSURE, 0, ETP_MAX_PRESSURE, 0, 0); - input_set_abs_params(input, ABS_MT_TOUCH_MAJOR, 0, - ETP_FINGER_WIDTH * max_width, 0, 0); - input_set_abs_params(input, ABS_MT_TOUCH_MINOR, 0, - ETP_FINGER_WIDTH * min_width, 0, 0); + if (data->report_features & ETP_FEATURE_REPORT_MK) { + input_set_abs_params(input, ABS_MT_TOUCH_MAJOR, + 0, ETP_FINGER_WIDTH * max_width, 0, 0); + input_set_abs_params(input, ABS_MT_TOUCH_MINOR, + 0, ETP_FINGER_WIDTH * min_width, 0, 0); + } data->input = input; --- linux-azure-5.8-5.8.0.orig/drivers/input/mouse/elan_i2c_i2c.c +++ linux-azure-5.8-5.8.0/drivers/input/mouse/elan_i2c_i2c.c @@ -55,6 +55,8 @@ #define ETP_I2C_MIN_BASELINE_CMD 0x0318 #define ETP_I2C_REPORT_LEN 34 +#define ETP_I2C_REPORT_LEN_ID2 39 +#define ETP_I2C_REPORT_MAX_LEN 39 #define ETP_I2C_DESC_LENGTH 30 #define ETP_I2C_REPORT_DESC_LENGTH 158 #define ETP_I2C_INF_LENGTH 2 @@ -386,7 +388,7 @@ return error; } - *max_x = le16_to_cpup((__le16 *)val) & 0x0fff; + *max_x = le16_to_cpup((__le16 *)val); error = elan_i2c_read_cmd(client, ETP_I2C_MAX_Y_AXIS_CMD, val); if (error) { @@ -394,7 +396,7 @@ return error; } - *max_y = le16_to_cpup((__le16 *)val) & 0x0fff; + *max_y = le16_to_cpup((__le16 *)val); return 0; } @@ -617,12 +619,12 @@ struct completion *completion) { struct device *dev = &client->dev; - int error; + int error = 0; int len; - u8 buffer[ETP_I2C_REPORT_LEN]; + u8 buffer[ETP_I2C_REPORT_MAX_LEN]; - len = i2c_master_recv(client, buffer, ETP_I2C_REPORT_LEN); - if (len != ETP_I2C_REPORT_LEN) { + len = i2c_master_recv(client, buffer, ETP_I2C_REPORT_MAX_LEN); + if (len <= 0) { error = len < 0 ? len : -EIO; dev_warn(dev, "failed to read I2C data after FW WDT reset: %d (%d)\n", error, len); @@ -656,20 +658,31 @@ return 0; } -static int elan_i2c_get_report(struct i2c_client *client, u8 *report) +static int elan_i2c_get_report_features(struct i2c_client *client, u8 pattern, + unsigned int *features, + unsigned int *report_len) +{ + *features = ETP_FEATURE_REPORT_MK; + *report_len = pattern <= 0x01 ? + ETP_I2C_REPORT_LEN : ETP_I2C_REPORT_LEN_ID2; + return 0; +} + +static int elan_i2c_get_report(struct i2c_client *client, + u8 *report, unsigned int report_len) { int len; - len = i2c_master_recv(client, report, ETP_I2C_REPORT_LEN); + len = i2c_master_recv(client, report, report_len); if (len < 0) { dev_err(&client->dev, "failed to read report data: %d\n", len); return len; } - if (len != ETP_I2C_REPORT_LEN) { + if (len != report_len) { dev_err(&client->dev, "wrong report length (%d vs %d expected)\n", - len, ETP_I2C_REPORT_LEN); + len, report_len); return -EIO; } @@ -706,5 +719,6 @@ .get_pattern = elan_i2c_get_pattern, + .get_report_features = elan_i2c_get_report_features, .get_report = elan_i2c_get_report, }; --- linux-azure-5.8-5.8.0.orig/drivers/input/mouse/elan_i2c_smbus.c +++ linux-azure-5.8-5.8.0/drivers/input/mouse/elan_i2c_smbus.c @@ -45,6 +45,7 @@ #define ETP_SMBUS_CALIBRATE_QUERY 0xC5 #define ETP_SMBUS_REPORT_LEN 32 +#define ETP_SMBUS_REPORT_LEN2 7 #define ETP_SMBUS_REPORT_OFFSET 2 #define ETP_SMBUS_HELLOPACKET_LEN 5 #define ETP_SMBUS_IAP_PASSWORD 0x1234 @@ -469,7 +470,21 @@ return 0; } -static int elan_smbus_get_report(struct i2c_client *client, u8 *report) +static int elan_smbus_get_report_features(struct i2c_client *client, u8 pattern, + unsigned int *features, + unsigned int *report_len) +{ + /* + * SMBus controllers with pattern 2 lack area info, as newer + * high-precision packets use that space for coordinates. + */ + *features = pattern <= 0x01 ? ETP_FEATURE_REPORT_MK : 0; + *report_len = ETP_SMBUS_REPORT_LEN; + return 0; +} + +static int elan_smbus_get_report(struct i2c_client *client, + u8 *report, unsigned int report_len) { int len; @@ -483,10 +498,13 @@ return len; } - if (len != ETP_SMBUS_REPORT_LEN) { + if (report[ETP_REPORT_ID_OFFSET] == ETP_TP_REPORT_ID2) + report_len = ETP_SMBUS_REPORT_LEN2; + + if (len != report_len) { dev_err(&client->dev, "wrong report length (%d vs %d expected)\n", - len, ETP_SMBUS_REPORT_LEN); + len, report_len); return -EIO; } @@ -534,6 +552,7 @@ .write_fw_block = elan_smbus_write_fw_block, .finish_fw_update = elan_smbus_finish_fw_update, + .get_report_features = elan_smbus_get_report_features, .get_report = elan_smbus_get_report, .get_pattern = elan_smbus_get_pattern, }; --- linux-azure-5.8-5.8.0.orig/drivers/input/mouse/elantech.c +++ linux-azure-5.8-5.8.0/drivers/input/mouse/elantech.c @@ -90,6 +90,47 @@ } /* + * Send an Elantech style special command to read 3 bytes from a register + */ +static int elantech_read_reg_params(struct psmouse *psmouse, u8 reg, u8 *param) +{ + if (elantech_ps2_command(psmouse, NULL, ETP_PS2_CUSTOM_COMMAND) || + elantech_ps2_command(psmouse, NULL, ETP_REGISTER_READWRITE) || + elantech_ps2_command(psmouse, NULL, ETP_PS2_CUSTOM_COMMAND) || + elantech_ps2_command(psmouse, NULL, reg) || + elantech_ps2_command(psmouse, param, PSMOUSE_CMD_GETINFO)) { + psmouse_err(psmouse, + "failed to read register %#02x\n", reg); + return -EIO; + } + + return 0; +} + +/* + * Send an Elantech style special command to write a register with a parameter + */ +static int elantech_write_reg_params(struct psmouse *psmouse, u8 reg, u8 *param) +{ + if (elantech_ps2_command(psmouse, NULL, ETP_PS2_CUSTOM_COMMAND) || + elantech_ps2_command(psmouse, NULL, ETP_REGISTER_READWRITE) || + elantech_ps2_command(psmouse, NULL, ETP_PS2_CUSTOM_COMMAND) || + elantech_ps2_command(psmouse, NULL, reg) || + elantech_ps2_command(psmouse, NULL, ETP_PS2_CUSTOM_COMMAND) || + elantech_ps2_command(psmouse, NULL, param[0]) || + elantech_ps2_command(psmouse, NULL, ETP_PS2_CUSTOM_COMMAND) || + elantech_ps2_command(psmouse, NULL, param[1]) || + elantech_ps2_command(psmouse, NULL, PSMOUSE_CMD_SETSCALE11)) { + psmouse_err(psmouse, + "failed to write register %#02x with value %#02x%#02x\n", + reg, param[0], param[1]); + return -EIO; + } + + return 0; +} + +/* * Send an Elantech style special command to read a value from a register */ static int elantech_read_reg(struct psmouse *psmouse, unsigned char reg, @@ -1530,18 +1571,34 @@ }; /* + * Change Report id 0x5E to 0x5F. + */ +static int elantech_change_report_id(struct psmouse *psmouse) +{ + unsigned char param[2] = { 0x10, 0x03 }; + + if (elantech_write_reg_params(psmouse, 0x7, param) || + elantech_read_reg_params(psmouse, 0x7, param) || + param[0] != 0x10 || param[1] != 0x03) { + psmouse_err(psmouse, "Unable to change report ID to 0x5f.\n"); + return -EIO; + } + + return 0; +} +/* * determine hardware version and set some properties according to it. */ static int elantech_set_properties(struct elantech_device_info *info) { /* This represents the version of IC body. */ - int ver = (info->fw_version & 0x0f0000) >> 16; + info->ic_version = (info->fw_version & 0x0f0000) >> 16; /* Early version of Elan touchpads doesn't obey the rule. */ if (info->fw_version < 0x020030 || info->fw_version == 0x020600) info->hw_version = 1; else { - switch (ver) { + switch (info->ic_version) { case 2: case 4: info->hw_version = 2; @@ -1557,6 +1614,11 @@ } } + /* Get information pattern for hw_version 4 */ + info->pattern = 0x00; + if (info->ic_version == 0x0f && (info->fw_version & 0xff) <= 0x02) + info->pattern = info->fw_version & 0xff; + /* decide which send_cmd we're gonna use early */ info->send_cmd = info->hw_version >= 3 ? elantech_send_cmd : synaptics_send_cmd; @@ -1598,6 +1660,7 @@ { unsigned char param[3]; unsigned char traces; + unsigned char ic_body[3]; memset(info, 0, sizeof(*info)); @@ -1640,6 +1703,21 @@ info->samples[2]); } + if (info->pattern > 0x00 && info->ic_version == 0xf) { + if (info->send_cmd(psmouse, ETP_ICBODY_QUERY, ic_body)) { + psmouse_err(psmouse, "failed to query ic body\n"); + return -EINVAL; + } + info->ic_version = be16_to_cpup((__be16 *)ic_body); + psmouse_info(psmouse, + "Elan ic body: %#04x, current fw version: %#02x\n", + info->ic_version, ic_body[2]); + } + + info->product_id = be16_to_cpup((__be16 *)info->samples); + if (info->pattern == 0x00) + info->product_id &= 0xff; + if (info->samples[1] == 0x74 && info->hw_version == 0x03) { /* * This module has a bug which makes absolute mode @@ -1654,6 +1732,23 @@ /* The MSB indicates the presence of the trackpoint */ info->has_trackpoint = (info->capabilities[0] & 0x80) == 0x80; + if (info->has_trackpoint && info->ic_version == 0x0011 && + (info->product_id == 0x08 || info->product_id == 0x09 || + info->product_id == 0x0d || info->product_id == 0x0e)) { + /* + * This module has a bug which makes trackpoint in SMBus + * mode return invalid data unless trackpoint is switched + * from using 0x5e reports to 0x5f. If we are not able to + * make the switch, let's abort initialization so we'll be + * using standard PS/2 protocol. + */ + if (elantech_change_report_id(psmouse)) { + psmouse_info(psmouse, + "Trackpoint report is broken, forcing standard PS/2 protocol\n"); + return -ENODEV; + } + } + info->x_res = 31; info->y_res = 31; if (info->hw_version == 4) { --- linux-azure-5.8-5.8.0.orig/drivers/input/mouse/elantech.h +++ linux-azure-5.8-5.8.0/drivers/input/mouse/elantech.h @@ -18,6 +18,7 @@ #define ETP_CAPABILITIES_QUERY 0x02 #define ETP_SAMPLE_QUERY 0x03 #define ETP_RESOLUTION_QUERY 0x04 +#define ETP_ICBODY_QUERY 0x05 /* * Command values for register reading or writing @@ -140,7 +141,10 @@ unsigned char samples[3]; unsigned char debug; unsigned char hw_version; + unsigned char pattern; unsigned int fw_version; + unsigned int ic_version; + unsigned int product_id; unsigned int x_min; unsigned int y_min; unsigned int x_max; --- linux-azure-5.8-5.8.0.orig/drivers/input/mouse/psmouse-base.c +++ linux-azure-5.8-5.8.0/drivers/input/mouse/psmouse-base.c @@ -2042,7 +2042,7 @@ { int type = *((unsigned int *)kp->arg); - return sprintf(buffer, "%s", psmouse_protocol_by_type(type)->name); + return sprintf(buffer, "%s\n", psmouse_protocol_by_type(type)->name); } static int __init psmouse_init(void) --- linux-azure-5.8-5.8.0.orig/drivers/input/mouse/sentelic.c +++ linux-azure-5.8-5.8.0/drivers/input/mouse/sentelic.c @@ -441,7 +441,7 @@ fsp_reg_write_enable(psmouse, false); - return count; + return retval; } PSMOUSE_DEFINE_WO_ATTR(setreg, S_IWUSR, NULL, fsp_attr_set_setreg); --- linux-azure-5.8-5.8.0.orig/drivers/input/mouse/trackpoint.c +++ linux-azure-5.8-5.8.0/drivers/input/mouse/trackpoint.c @@ -17,10 +17,12 @@ #include "trackpoint.h" static const char * const trackpoint_variants[] = { - [TP_VARIANT_IBM] = "IBM", - [TP_VARIANT_ALPS] = "ALPS", - [TP_VARIANT_ELAN] = "Elan", - [TP_VARIANT_NXP] = "NXP", + [TP_VARIANT_IBM] = "IBM", + [TP_VARIANT_ALPS] = "ALPS", + [TP_VARIANT_ELAN] = "Elan", + [TP_VARIANT_NXP] = "NXP", + [TP_VARIANT_JYT_SYNAPTICS] = "JYT_Synaptics", + [TP_VARIANT_SYNAPTICS] = "Synaptics", }; /* @@ -280,6 +282,8 @@ case TP_VARIANT_ALPS: case TP_VARIANT_ELAN: case TP_VARIANT_NXP: + case TP_VARIANT_JYT_SYNAPTICS: + case TP_VARIANT_SYNAPTICS: if (variant_id) *variant_id = param[0]; if (firmware_id) --- linux-azure-5.8-5.8.0.orig/drivers/input/mouse/trackpoint.h +++ linux-azure-5.8-5.8.0/drivers/input/mouse/trackpoint.h @@ -24,10 +24,12 @@ * 0x01 was the original IBM trackpoint, others implement very limited * subset of trackpoint features. */ -#define TP_VARIANT_IBM 0x01 -#define TP_VARIANT_ALPS 0x02 -#define TP_VARIANT_ELAN 0x03 -#define TP_VARIANT_NXP 0x04 +#define TP_VARIANT_IBM 0x01 +#define TP_VARIANT_ALPS 0x02 +#define TP_VARIANT_ELAN 0x03 +#define TP_VARIANT_NXP 0x04 +#define TP_VARIANT_JYT_SYNAPTICS 0x05 +#define TP_VARIANT_SYNAPTICS 0x06 /* * Commands --- linux-azure-5.8-5.8.0.orig/drivers/input/serio/hil_mlc.c +++ linux-azure-5.8-5.8.0/drivers/input/serio/hil_mlc.c @@ -74,7 +74,7 @@ static LIST_HEAD(hil_mlcs); static DEFINE_RWLOCK(hil_mlcs_lock); static struct timer_list hil_mlcs_kicker; -static int hil_mlcs_probe; +static int hil_mlcs_probe, hil_mlc_stop; static void hil_mlcs_process(unsigned long unused); static DECLARE_TASKLET_DISABLED(hil_mlcs_tasklet, hil_mlcs_process, 0); @@ -702,9 +702,13 @@ if (!mlc->ostarted) { mlc->ostarted = 1; mlc->opacket = pack; - mlc->out(mlc); + rc = mlc->out(mlc); nextidx = HILSEN_DOZE; write_unlock_irqrestore(&mlc->lock, flags); + if (rc) { + hil_mlc_stop = 1; + return 1; + } break; } mlc->ostarted = 0; @@ -715,8 +719,13 @@ case HILSE_CTS: write_lock_irqsave(&mlc->lock, flags); - nextidx = mlc->cts(mlc) ? node->bad : node->good; + rc = mlc->cts(mlc); + nextidx = rc ? node->bad : node->good; write_unlock_irqrestore(&mlc->lock, flags); + if (rc) { + hil_mlc_stop = 1; + return 1; + } break; default: @@ -780,6 +789,12 @@ static void hil_mlcs_timer(struct timer_list *unused) { + if (hil_mlc_stop) { + /* could not send packet - stop immediately. */ + pr_warn(PREFIX "HIL seems stuck - Disabling HIL MLC.\n"); + return; + } + hil_mlcs_probe = 1; tasklet_schedule(&hil_mlcs_tasklet); /* Re-insert the periodic task. */ --- linux-azure-5.8-5.8.0.orig/drivers/input/serio/hp_sdc_mlc.c +++ linux-azure-5.8-5.8.0/drivers/input/serio/hp_sdc_mlc.c @@ -210,7 +210,7 @@ priv->tseq[2] = 1; priv->tseq[3] = 0; priv->tseq[4] = 0; - __hp_sdc_enqueue_transaction(&priv->trans); + return __hp_sdc_enqueue_transaction(&priv->trans); busy: return 1; done: @@ -219,7 +219,7 @@ return 0; } -static void hp_sdc_mlc_out(hil_mlc *mlc) +static int hp_sdc_mlc_out(hil_mlc *mlc) { struct hp_sdc_mlc_priv_s *priv; @@ -234,7 +234,7 @@ do_data: if (priv->emtestmode) { up(&mlc->osem); - return; + return 0; } /* Shouldn't be sending commands when loop may be busy */ BUG_ON(down_trylock(&mlc->csem)); @@ -296,7 +296,7 @@ BUG_ON(down_trylock(&mlc->csem)); } enqueue: - hp_sdc_enqueue_transaction(&priv->trans); + return hp_sdc_enqueue_transaction(&priv->trans); } static int __init hp_sdc_mlc_init(void) --- linux-azure-5.8-5.8.0.orig/drivers/input/serio/i8042-x86ia64io.h +++ linux-azure-5.8-5.8.0/drivers/input/serio/i8042-x86ia64io.h @@ -220,6 +220,12 @@ DMI_MATCH(DMI_PRODUCT_NAME, "C15B"), }, }, + { + .matches = { + DMI_MATCH(DMI_SYS_VENDOR, "ByteSpeed LLC"), + DMI_MATCH(DMI_PRODUCT_NAME, "ByteSpeed Laptop C15B"), + }, + }, { } }; @@ -548,6 +554,14 @@ DMI_MATCH(DMI_PRODUCT_NAME, "Aspire 5738"), }, }, + { + /* Entroware Proteus */ + .matches = { + DMI_MATCH(DMI_SYS_VENDOR, "Entroware"), + DMI_MATCH(DMI_PRODUCT_NAME, "Proteus"), + DMI_MATCH(DMI_PRODUCT_VERSION, "EL07R4"), + }, + }, { } }; @@ -574,6 +588,10 @@ DMI_MATCH(DMI_SYS_VENDOR, "ASUSTeK COMPUTER INC."), DMI_MATCH(DMI_CHASSIS_TYPE, "10"), /* Notebook */ }, + .matches = { + DMI_MATCH(DMI_SYS_VENDOR, "ASUSTeK COMPUTER INC."), + DMI_MATCH(DMI_CHASSIS_TYPE, "31"), /* Convertible Notebook */ + }, }, { } }; @@ -600,6 +618,48 @@ }, }, { + .matches = { + DMI_MATCH(DMI_SYS_VENDOR, "Acer"), + DMI_MATCH(DMI_PRODUCT_NAME, "Aspire A114-31"), + }, + }, + { + .matches = { + DMI_MATCH(DMI_SYS_VENDOR, "Acer"), + DMI_MATCH(DMI_PRODUCT_NAME, "Aspire A314-31"), + }, + }, + { + .matches = { + DMI_MATCH(DMI_SYS_VENDOR, "Acer"), + DMI_MATCH(DMI_PRODUCT_NAME, "Aspire A315-31"), + }, + }, + { + .matches = { + DMI_MATCH(DMI_SYS_VENDOR, "Acer"), + DMI_MATCH(DMI_PRODUCT_NAME, "Aspire ES1-132"), + }, + }, + { + .matches = { + DMI_MATCH(DMI_SYS_VENDOR, "Acer"), + DMI_MATCH(DMI_PRODUCT_NAME, "Aspire ES1-332"), + }, + }, + { + .matches = { + DMI_MATCH(DMI_SYS_VENDOR, "Acer"), + DMI_MATCH(DMI_PRODUCT_NAME, "Aspire ES1-432"), + }, + }, + { + .matches = { + DMI_MATCH(DMI_SYS_VENDOR, "Acer"), + DMI_MATCH(DMI_PRODUCT_NAME, "TravelMate Spin B118-RN"), + }, + }, + { /* Advent 4211 */ .matches = { DMI_MATCH(DMI_SYS_VENDOR, "DIXONSXP"), @@ -676,6 +736,14 @@ DMI_MATCH(DMI_PRODUCT_NAME, "33474HU"), }, }, + { + /* Entroware Proteus */ + .matches = { + DMI_MATCH(DMI_SYS_VENDOR, "Entroware"), + DMI_MATCH(DMI_PRODUCT_NAME, "Proteus"), + DMI_MATCH(DMI_PRODUCT_VERSION, "EL07R4"), + }, + }, { } }; @@ -705,6 +773,13 @@ DMI_MATCH(DMI_BOARD_VENDOR, "MICRO-STAR INTERNATIONAL CO., LTD"), }, }, + { + /* Acer Aspire 5 A515 */ + .matches = { + DMI_MATCH(DMI_BOARD_NAME, "Grumpy_PK"), + DMI_MATCH(DMI_BOARD_VENDOR, "PK"), + }, + }, { } }; --- linux-azure-5.8-5.8.0.orig/drivers/input/serio/i8042.c +++ linux-azure-5.8-5.8.0/drivers/input/serio/i8042.c @@ -122,6 +122,7 @@ MODULE_PARM_DESC(unmask_kbd_data, "Unconditional enable (may reveal sensitive data) of normally sanitize-filtered kbd data traffic debug log [pre-condition: i8042.debug=1 enabled]"); #endif +static bool i8042_present; static bool i8042_bypass_aux_irq_test; static char i8042_kbd_firmware_id[128]; static char i8042_aux_firmware_id[128]; @@ -343,6 +344,9 @@ unsigned long flags; int retval; + if (!i8042_present) + return -1; + spin_lock_irqsave(&i8042_lock, flags); retval = __i8042_command(param, command); spin_unlock_irqrestore(&i8042_lock, flags); @@ -613,7 +617,7 @@ if (i8042_command(&i8042_ctr, I8042_CMD_CTL_WCTR)) { i8042_ctr &= ~I8042_CTR_KBDINT; i8042_ctr |= I8042_CTR_KBDDIS; - pr_err("Failed to enable KBD port\n"); + pr_info("Failed to enable KBD port\n"); return -EIO; } @@ -632,7 +636,7 @@ if (i8042_command(&i8042_ctr, I8042_CMD_CTL_WCTR)) { i8042_ctr &= ~I8042_CTR_AUXINT; i8042_ctr |= I8042_CTR_AUXDIS; - pr_err("Failed to enable AUX port\n"); + pr_info("Failed to enable AUX port\n"); return -EIO; } @@ -724,7 +728,7 @@ i8042_ctr &= ~I8042_CTR_AUXINT; if (i8042_command(&i8042_ctr, I8042_CMD_CTL_WCTR)) { - pr_err("Failed to disable AUX port, can't use MUX\n"); + pr_info("Failed to disable AUX port, can't use MUX\n"); return -EIO; } @@ -939,25 +943,28 @@ { unsigned char param; int i = 0; + int ret; /* * We try this 5 times; on some really fragile systems this does not * take the first time... */ - do { + while (i++ < 5) { - if (i8042_command(¶m, I8042_CMD_CTL_TEST)) { - pr_err("i8042 controller selftest timeout\n"); - return -ENODEV; - } - - if (param == I8042_RET_CTL_TEST) + ret = i8042_command(¶m, I8042_CMD_CTL_TEST); + if (ret) + pr_info("i8042 controller selftest timeout (%d/5)\n", i); + else if (param == I8042_RET_CTL_TEST) return 0; + else + dbg("i8042 controller selftest: %#x != %#x\n", + param, I8042_RET_CTL_TEST); - dbg("i8042 controller selftest: %#x != %#x\n", - param, I8042_RET_CTL_TEST); msleep(50); - } while (i++ < 5); + } + + if (ret) + return -ENODEV; #ifdef CONFIG_X86 /* @@ -969,7 +976,7 @@ pr_info("giving up on controller selftest, continuing anyway...\n"); return 0; #else - pr_err("i8042 controller selftest failed\n"); + pr_info("i8042 controller selftest failed\n"); return -EIO; #endif } @@ -1467,7 +1474,8 @@ if (error) goto err_free_ports; - if (aux_enable()) + error = aux_enable(); + if (error) goto err_free_irq; i8042_aux_irq_registered = true; @@ -1612,12 +1620,15 @@ err = i8042_platform_init(); if (err) - return err; + return (err == -ENODEV) ? 0 : err; err = i8042_controller_check(); if (err) goto err_platform_exit; + /* Set this before creating the dev to allow i8042_command to work right away */ + i8042_present = true; + pdev = platform_create_bundle(&i8042_driver, i8042_probe, NULL, 0, NULL, 0); if (IS_ERR(pdev)) { err = PTR_ERR(pdev); @@ -1636,6 +1647,9 @@ static void __exit i8042_exit(void) { + if (!i8042_present) + return; + platform_device_unregister(i8042_platform_device); platform_driver_unregister(&i8042_driver); i8042_platform_exit(); --- linux-azure-5.8-5.8.0.orig/drivers/input/serio/serport.c +++ linux-azure-5.8-5.8.0/drivers/input/serio/serport.c @@ -156,7 +156,9 @@ * returning 0 characters. */ -static ssize_t serport_ldisc_read(struct tty_struct * tty, struct file * file, unsigned char __user * buf, size_t nr) +static ssize_t serport_ldisc_read(struct tty_struct * tty, struct file * file, + unsigned char *kbuf, size_t nr, + void **cookie, unsigned long offset) { struct serport *serport = (struct serport*) tty->disc_data; struct serio *serio; --- linux-azure-5.8-5.8.0.orig/drivers/input/serio/sun4i-ps2.c +++ linux-azure-5.8-5.8.0/drivers/input/serio/sun4i-ps2.c @@ -211,7 +211,6 @@ struct sun4i_ps2data *drvdata; struct serio *serio; struct device *dev = &pdev->dev; - unsigned int irq; int error; drvdata = kzalloc(sizeof(struct sun4i_ps2data), GFP_KERNEL); @@ -264,14 +263,12 @@ writel(0, drvdata->reg_base + PS2_REG_GCTL); /* Get IRQ for the device */ - irq = platform_get_irq(pdev, 0); - if (!irq) { - dev_err(dev, "no IRQ found\n"); - error = -ENXIO; + drvdata->irq = platform_get_irq(pdev, 0); + if (drvdata->irq < 0) { + error = drvdata->irq; goto err_disable_clk; } - drvdata->irq = irq; drvdata->serio = serio; drvdata->dev = dev; --- linux-azure-5.8-5.8.0.orig/drivers/input/touchscreen/Kconfig +++ linux-azure-5.8-5.8.0/drivers/input/touchscreen/Kconfig @@ -96,6 +96,7 @@ config TOUCHSCREEN_ADC tristate "Generic ADC based resistive touchscreen" depends on IIO + select IIO_BUFFER select IIO_BUFFER_CB help Say Y here if you want to use the generic ADC --- linux-azure-5.8-5.8.0.orig/drivers/input/touchscreen/ads7846.c +++ linux-azure-5.8-5.8.0/drivers/input/touchscreen/ads7846.c @@ -33,6 +33,7 @@ #include #include #include +#include /* * This code has been heavily tested on a Nokia 770, and lightly @@ -199,6 +200,26 @@ #define REF_ON (READ_12BIT_DFR(x, 1, 1)) #define REF_OFF (READ_12BIT_DFR(y, 0, 0)) +static int get_pendown_state(struct ads7846 *ts) +{ + if (ts->get_pendown_state) + return ts->get_pendown_state(); + + return !gpio_get_value(ts->gpio_pendown); +} + +static void ads7846_report_pen_up(struct ads7846 *ts) +{ + struct input_dev *input = ts->input; + + input_report_key(input, BTN_TOUCH, 0); + input_report_abs(input, ABS_PRESSURE, 0); + input_sync(input); + + ts->pendown = false; + dev_vdbg(&ts->spi->dev, "UP\n"); +} + /* Must be called with ts->lock held */ static void ads7846_stop(struct ads7846 *ts) { @@ -215,6 +236,10 @@ static void ads7846_restart(struct ads7846 *ts) { if (!ts->disabled && !ts->suspended) { + /* Check if pen was released since last stop */ + if (ts->pendown && !get_pendown_state(ts)) + ads7846_report_pen_up(ts); + /* Tell IRQ thread that it may poll the device. */ ts->stopped = false; mb(); @@ -411,7 +436,7 @@ if (status == 0) { /* BE12 value, then padding */ - status = be16_to_cpu(*((u16 *)&req->sample[1])); + status = get_unaligned_be16(&req->sample[1]); status = status >> 3; status &= 0x0fff; } @@ -606,14 +631,6 @@ /*--------------------------------------------------------------------------*/ -static int get_pendown_state(struct ads7846 *ts) -{ - if (ts->get_pendown_state) - return ts->get_pendown_state(); - - return !gpio_get_value(ts->gpio_pendown); -} - static void null_wait_for_sync(void) { } @@ -786,10 +803,11 @@ /* compute touch pressure resistance using equation #2 */ Rt = z2; Rt -= z1; - Rt *= x; Rt *= ts->x_plate_ohms; + Rt = DIV_ROUND_CLOSEST(Rt, 16); + Rt *= x; Rt /= z1; - Rt = (Rt + 2047) >> 12; + Rt = DIV_ROUND_CLOSEST(Rt, 256); } else { Rt = 0; } @@ -868,16 +886,8 @@ msecs_to_jiffies(TS_POLL_PERIOD)); } - if (ts->pendown && !ts->stopped) { - struct input_dev *input = ts->input; - - input_report_key(input, BTN_TOUCH, 0); - input_report_abs(input, ABS_PRESSURE, 0); - input_sync(input); - - ts->pendown = false; - dev_vdbg(&ts->spi->dev, "UP\n"); - } + if (ts->pendown && !ts->stopped) + ads7846_report_pen_up(ts); return IRQ_HANDLED; } --- linux-azure-5.8-5.8.0.orig/drivers/input/touchscreen/elants_i2c.c +++ linux-azure-5.8-5.8.0/drivers/input/touchscreen/elants_i2c.c @@ -90,7 +90,7 @@ /* FW read command, 0x53 0x?? 0x0, 0x01 */ #define E_ELAN_INFO_FW_VER 0x00 #define E_ELAN_INFO_BC_VER 0x10 -#define E_ELAN_INFO_REK 0xE0 +#define E_ELAN_INFO_REK 0xD0 #define E_ELAN_INFO_TEST_VER 0xE0 #define E_ELAN_INFO_FW_ID 0xF0 #define E_INFO_OSR 0xD6 --- linux-azure-5.8-5.8.0.orig/drivers/input/touchscreen/elo.c +++ linux-azure-5.8-5.8.0/drivers/input/touchscreen/elo.c @@ -341,8 +341,10 @@ switch (elo->id) { case 0: /* 10-byte protocol */ - if (elo_setup_10(elo)) + if (elo_setup_10(elo)) { + err = -EIO; goto fail3; + } break; --- linux-azure-5.8-5.8.0.orig/drivers/input/touchscreen/goodix.c +++ linux-azure-5.8-5.8.0/drivers/input/touchscreen/goodix.c @@ -157,6 +157,7 @@ { .id = "5663", .data = >1x_chip_data }, { .id = "5688", .data = >1x_chip_data }, { .id = "917S", .data = >1x_chip_data }, + { .id = "9286", .data = >1x_chip_data }, { .id = "911", .data = >911_chip_data }, { .id = "9271", .data = >911_chip_data }, @@ -193,6 +194,18 @@ }, }, { + .ident = "Teclast X98 Pro", + .matches = { + /* + * Only match BIOS date, because the manufacturers + * BIOS does not report the board name at all + * (sometimes)... + */ + DMI_MATCH(DMI_BOARD_VENDOR, "TECLAST"), + DMI_MATCH(DMI_BIOS_DATE, "10/28/2015"), + }, + }, + { .ident = "WinBook TW100", .matches = { DMI_MATCH(DMI_SYS_VENDOR, "WinBook"), @@ -1433,6 +1446,7 @@ { .compatible = "goodix,gt927" }, { .compatible = "goodix,gt9271" }, { .compatible = "goodix,gt928" }, + { .compatible = "goodix,gt9286" }, { .compatible = "goodix,gt967" }, { } }; --- linux-azure-5.8-5.8.0.orig/drivers/input/touchscreen/ili210x.c +++ linux-azure-5.8-5.8.0/drivers/input/touchscreen/ili210x.c @@ -29,11 +29,13 @@ void *buf, size_t len); int (*get_touch_data)(struct i2c_client *client, u8 *data); bool (*parse_touch_data)(const u8 *data, unsigned int finger, - unsigned int *x, unsigned int *y); + unsigned int *x, unsigned int *y, + unsigned int *z); bool (*continue_polling)(const u8 *data, bool touch); unsigned int max_touches; unsigned int resolution; bool has_calibrate_reg; + bool has_pressure_reg; }; struct ili210x { @@ -82,7 +84,8 @@ static bool ili210x_touchdata_to_coords(const u8 *touchdata, unsigned int finger, - unsigned int *x, unsigned int *y) + unsigned int *x, unsigned int *y, + unsigned int *z) { if (touchdata[0] & BIT(finger)) return false; @@ -137,7 +140,8 @@ static bool ili211x_touchdata_to_coords(const u8 *touchdata, unsigned int finger, - unsigned int *x, unsigned int *y) + unsigned int *x, unsigned int *y, + unsigned int *z) { u32 data; @@ -169,7 +173,8 @@ static bool ili212x_touchdata_to_coords(const u8 *touchdata, unsigned int finger, - unsigned int *x, unsigned int *y) + unsigned int *x, unsigned int *y, + unsigned int *z) { u16 val; @@ -235,7 +240,8 @@ static bool ili251x_touchdata_to_coords(const u8 *touchdata, unsigned int finger, - unsigned int *x, unsigned int *y) + unsigned int *x, unsigned int *y, + unsigned int *z) { u16 val; @@ -245,6 +251,7 @@ *x = val & 0x3fff; *y = get_unaligned_be16(touchdata + 1 + (finger * 5) + 2); + *z = touchdata[1 + (finger * 5) + 4]; return true; } @@ -261,6 +268,7 @@ .continue_polling = ili251x_check_continue_polling, .max_touches = 10, .has_calibrate_reg = true, + .has_pressure_reg = true, }; static bool ili210x_report_events(struct ili210x *priv, u8 *touchdata) @@ -268,14 +276,16 @@ struct input_dev *input = priv->input; int i; bool contact = false, touch; - unsigned int x = 0, y = 0; + unsigned int x = 0, y = 0, z = 0; for (i = 0; i < priv->chip->max_touches; i++) { - touch = priv->chip->parse_touch_data(touchdata, i, &x, &y); + touch = priv->chip->parse_touch_data(touchdata, i, &x, &y, &z); input_mt_slot(input, i); if (input_mt_report_slot_state(input, MT_TOOL_FINGER, touch)) { touchscreen_report_pos(input, &priv->prop, x, y, true); + if (priv->chip->has_pressure_reg) + input_report_abs(input, ABS_MT_PRESSURE, z); contact = true; } } @@ -437,6 +447,8 @@ max_xy = (chip->resolution ?: SZ_64K) - 1; input_set_abs_params(input, ABS_MT_POSITION_X, 0, max_xy, 0, 0); input_set_abs_params(input, ABS_MT_POSITION_Y, 0, max_xy, 0, 0); + if (priv->chip->has_pressure_reg) + input_set_abs_params(input, ABS_MT_PRESSURE, 0, 0xa, 0, 0); touchscreen_parse_properties(input, true, &priv->prop); error = input_mt_init_slots(input, priv->chip->max_touches, --- linux-azure-5.8-5.8.0.orig/drivers/input/touchscreen/imx6ul_tsc.c +++ linux-azure-5.8-5.8.0/drivers/input/touchscreen/imx6ul_tsc.c @@ -530,20 +530,25 @@ mutex_lock(&input_dev->mutex); - if (input_dev->users) { - retval = clk_prepare_enable(tsc->adc_clk); - if (retval) - goto out; + if (!input_dev->users) + goto out; - retval = clk_prepare_enable(tsc->tsc_clk); - if (retval) { - clk_disable_unprepare(tsc->adc_clk); - goto out; - } + retval = clk_prepare_enable(tsc->adc_clk); + if (retval) + goto out; - retval = imx6ul_tsc_init(tsc); + retval = clk_prepare_enable(tsc->tsc_clk); + if (retval) { + clk_disable_unprepare(tsc->adc_clk); + goto out; } + retval = imx6ul_tsc_init(tsc); + if (retval) { + clk_disable_unprepare(tsc->tsc_clk); + clk_disable_unprepare(tsc->adc_clk); + goto out; + } out: mutex_unlock(&input_dev->mutex); return retval; --- linux-azure-5.8-5.8.0.orig/drivers/input/touchscreen/raydium_i2c_ts.c +++ linux-azure-5.8-5.8.0/drivers/input/touchscreen/raydium_i2c_ts.c @@ -410,6 +410,7 @@ enum raydium_bl_ack state) { int error; + static const u8 cmd[] = { 0xFF, 0x39 }; error = raydium_i2c_send(client, RM_CMD_BOOT_WRT, data, len); if (error) { @@ -418,7 +419,7 @@ return error; } - error = raydium_i2c_send(client, RM_CMD_BOOT_ACK, NULL, 0); + error = raydium_i2c_send(client, RM_CMD_BOOT_ACK, cmd, sizeof(cmd)); if (error) { dev_err(&client->dev, "Ack obj command failed: %d\n", error); return error; --- linux-azure-5.8-5.8.0.orig/drivers/input/touchscreen/stmfts.c +++ linux-azure-5.8-5.8.0/drivers/input/touchscreen/stmfts.c @@ -479,7 +479,7 @@ mutex_lock(&sdata->mutex); - if (value & sdata->hover_enabled) + if (value && sdata->hover_enabled) goto out; if (sdata->running) --- linux-azure-5.8-5.8.0.orig/drivers/input/touchscreen/sur40.c +++ linux-azure-5.8-5.8.0/drivers/input/touchscreen/sur40.c @@ -789,6 +789,7 @@ dev_err(&interface->dev, "Unable to register video controls."); v4l2_ctrl_handler_free(&sur40->hdl); + error = sur40->hdl.error; goto err_unreg_v4l2; } --- linux-azure-5.8-5.8.0.orig/drivers/interconnect/core.c +++ linux-azure-5.8-5.8.0/drivers/interconnect/core.c @@ -55,12 +55,18 @@ icc_summary_show_one(s, n); hlist_for_each_entry(r, &n->req_list, req_node) { + u32 avg_bw = 0, peak_bw = 0; + if (!r->dev) continue; + if (r->enabled) { + avg_bw = r->avg_bw; + peak_bw = r->peak_bw; + } + seq_printf(s, " %-27s %12u %12u %12u\n", - dev_name(r->dev), r->tag, r->avg_bw, - r->peak_bw); + dev_name(r->dev), r->tag, avg_bw, peak_bw); } } } --- linux-azure-5.8-5.8.0.orig/drivers/interconnect/imx/imx.c +++ linux-azure-5.8-5.8.0/drivers/interconnect/imx/imx.c @@ -99,6 +99,7 @@ if (!dn || !of_device_is_available(dn)) { dev_warn(dev, "Missing property %s, skip scaling %s\n", adj->phandle_name, node->name); + of_node_put(dn); return 0; } --- linux-azure-5.8-5.8.0.orig/drivers/interconnect/qcom/bcm-voter.c +++ linux-azure-5.8-5.8.0/drivers/interconnect/qcom/bcm-voter.c @@ -52,8 +52,20 @@ return 1; } +static u64 bcm_div(u64 num, u32 base) +{ + /* Ensure that small votes aren't lost. */ + if (num && num < base) + return 1; + + do_div(num, base); + + return num; +} + static void bcm_aggregate(struct qcom_icc_bcm *bcm) { + struct qcom_icc_node *node; size_t i, bucket; u64 agg_avg[QCOM_ICC_NUM_BUCKETS] = {0}; u64 agg_peak[QCOM_ICC_NUM_BUCKETS] = {0}; @@ -61,22 +73,21 @@ for (bucket = 0; bucket < QCOM_ICC_NUM_BUCKETS; bucket++) { for (i = 0; i < bcm->num_nodes; i++) { - temp = bcm->nodes[i]->sum_avg[bucket] * bcm->aux_data.width; - do_div(temp, bcm->nodes[i]->buswidth * bcm->nodes[i]->channels); + node = bcm->nodes[i]; + temp = bcm_div(node->sum_avg[bucket] * bcm->aux_data.width, + node->buswidth * node->channels); agg_avg[bucket] = max(agg_avg[bucket], temp); - temp = bcm->nodes[i]->max_peak[bucket] * bcm->aux_data.width; - do_div(temp, bcm->nodes[i]->buswidth); + temp = bcm_div(node->max_peak[bucket] * bcm->aux_data.width, + node->buswidth); agg_peak[bucket] = max(agg_peak[bucket], temp); } temp = agg_avg[bucket] * 1000ULL; - do_div(temp, bcm->aux_data.unit); - bcm->vote_x[bucket] = temp; + bcm->vote_x[bucket] = bcm_div(temp, bcm->aux_data.unit); temp = agg_peak[bucket] * 1000ULL; - do_div(temp, bcm->aux_data.unit); - bcm->vote_y[bucket] = temp; + bcm->vote_y[bucket] = bcm_div(temp, bcm->aux_data.unit); } if (bcm->keepalive && bcm->vote_x[QCOM_ICC_BUCKET_AMC] == 0 && --- linux-azure-5.8-5.8.0.orig/drivers/interconnect/qcom/msm8916.c +++ linux-azure-5.8-5.8.0/drivers/interconnect/qcom/msm8916.c @@ -182,7 +182,7 @@ DEFINE_QNODE(mas_pcnoc_sdcc_2, MSM8916_MASTER_SDCC_2, 8, -1, -1, MSM8916_PNOC_INT_1); DEFINE_QNODE(mas_qdss_bam, MSM8916_MASTER_QDSS_BAM, 8, -1, -1, MSM8916_SNOC_QDSS_INT); DEFINE_QNODE(mas_qdss_etr, MSM8916_MASTER_QDSS_ETR, 8, -1, -1, MSM8916_SNOC_QDSS_INT); -DEFINE_QNODE(mas_snoc_cfg, MSM8916_MASTER_SNOC_CFG, 4, 20, -1, MSM8916_SNOC_QDSS_INT); +DEFINE_QNODE(mas_snoc_cfg, MSM8916_MASTER_SNOC_CFG, 4, -1, -1, MSM8916_SNOC_QDSS_INT); DEFINE_QNODE(mas_spdm, MSM8916_MASTER_SPDM, 4, -1, -1, MSM8916_PNOC_MAS_0); DEFINE_QNODE(mas_tcu0, MSM8916_MASTER_TCU0, 8, -1, -1, MSM8916_SLAVE_EBI_CH0, MSM8916_BIMC_SNOC_MAS, MSM8916_SLAVE_AMPSS_L2); DEFINE_QNODE(mas_tcu1, MSM8916_MASTER_TCU1, 8, -1, -1, MSM8916_SLAVE_EBI_CH0, MSM8916_BIMC_SNOC_MAS, MSM8916_SLAVE_AMPSS_L2); @@ -208,14 +208,14 @@ DEFINE_QNODE(pcnoc_snoc_slv, MSM8916_PNOC_SNOC_SLV, 8, -1, 45, MSM8916_SNOC_INT_0, MSM8916_SNOC_INT_BIMC, MSM8916_SNOC_INT_1); DEFINE_QNODE(qdss_int, MSM8916_SNOC_QDSS_INT, 8, -1, -1, MSM8916_SNOC_INT_0, MSM8916_SNOC_INT_BIMC); DEFINE_QNODE(slv_apps_l2, MSM8916_SLAVE_AMPSS_L2, 8, -1, -1, 0); -DEFINE_QNODE(slv_apss, MSM8916_SLAVE_APSS, 4, -1, 20, 0); +DEFINE_QNODE(slv_apss, MSM8916_SLAVE_APSS, 4, -1, -1, 0); DEFINE_QNODE(slv_audio, MSM8916_SLAVE_LPASS, 4, -1, -1, 0); DEFINE_QNODE(slv_bimc_cfg, MSM8916_SLAVE_BIMC_CFG, 4, -1, -1, 0); DEFINE_QNODE(slv_blsp_1, MSM8916_SLAVE_BLSP_1, 4, -1, -1, 0); DEFINE_QNODE(slv_boot_rom, MSM8916_SLAVE_BOOT_ROM, 4, -1, -1, 0); DEFINE_QNODE(slv_camera_cfg, MSM8916_SLAVE_CAMERA_CFG, 4, -1, -1, 0); -DEFINE_QNODE(slv_cats_0, MSM8916_SLAVE_CATS_128, 16, -1, 106, 0); -DEFINE_QNODE(slv_cats_1, MSM8916_SLAVE_OCMEM_64, 8, -1, 107, 0); +DEFINE_QNODE(slv_cats_0, MSM8916_SLAVE_CATS_128, 16, -1, -1, 0); +DEFINE_QNODE(slv_cats_1, MSM8916_SLAVE_OCMEM_64, 8, -1, -1, 0); DEFINE_QNODE(slv_clk_ctl, MSM8916_SLAVE_CLK_CTL, 4, -1, -1, 0); DEFINE_QNODE(slv_crypto_0_cfg, MSM8916_SLAVE_CRYPTO_0_CFG, 4, -1, -1, 0); DEFINE_QNODE(slv_dehr_cfg, MSM8916_SLAVE_DEHR_CFG, 4, -1, -1, 0); @@ -239,7 +239,7 @@ DEFINE_QNODE(slv_security, MSM8916_SLAVE_SECURITY, 4, -1, -1, 0); DEFINE_QNODE(slv_snoc_cfg, MSM8916_SLAVE_SNOC_CFG, 4, -1, -1, 0); DEFINE_QNODE(slv_spdm, MSM8916_SLAVE_SPDM, 4, -1, -1, 0); -DEFINE_QNODE(slv_srvc_snoc, MSM8916_SLAVE_SRVC_SNOC, 8, -1, 29, 0); +DEFINE_QNODE(slv_srvc_snoc, MSM8916_SLAVE_SRVC_SNOC, 8, -1, -1, 0); DEFINE_QNODE(slv_tcsr, MSM8916_SLAVE_TCSR, 4, -1, -1, 0); DEFINE_QNODE(slv_tlmm, MSM8916_SLAVE_TLMM, 4, -1, -1, 0); DEFINE_QNODE(slv_usb_hs, MSM8916_SLAVE_USB_HS, 4, -1, -1, 0); @@ -249,7 +249,7 @@ DEFINE_QNODE(snoc_bimc_1_mas, MSM8916_SNOC_BIMC_1_MAS, 16, -1, -1, MSM8916_SNOC_BIMC_1_SLV); DEFINE_QNODE(snoc_bimc_1_slv, MSM8916_SNOC_BIMC_1_SLV, 8, -1, -1, MSM8916_SLAVE_EBI_CH0); DEFINE_QNODE(snoc_int_0, MSM8916_SNOC_INT_0, 8, 99, 130, MSM8916_SLAVE_QDSS_STM, MSM8916_SLAVE_IMEM, MSM8916_SNOC_PNOC_MAS); -DEFINE_QNODE(snoc_int_1, MSM8916_SNOC_INT_1, 8, 100, 131, MSM8916_SLAVE_APSS, MSM8916_SLAVE_CATS_128, MSM8916_SLAVE_OCMEM_64); +DEFINE_QNODE(snoc_int_1, MSM8916_SNOC_INT_1, 8, -1, -1, MSM8916_SLAVE_APSS, MSM8916_SLAVE_CATS_128, MSM8916_SLAVE_OCMEM_64); DEFINE_QNODE(snoc_int_bimc, MSM8916_SNOC_INT_BIMC, 8, 101, 132, MSM8916_SNOC_BIMC_0_MAS); DEFINE_QNODE(snoc_pcnoc_mas, MSM8916_SNOC_PNOC_MAS, 8, -1, -1, MSM8916_SNOC_PNOC_SLV); DEFINE_QNODE(snoc_pcnoc_slv, MSM8916_SNOC_PNOC_SLV, 8, -1, -1, MSM8916_PNOC_INT_0); --- linux-azure-5.8-5.8.0.orig/drivers/interconnect/qcom/qcs404.c +++ linux-azure-5.8-5.8.0/drivers/interconnect/qcom/qcs404.c @@ -157,8 +157,8 @@ } DEFINE_QNODE(mas_apps_proc, QCS404_MASTER_AMPSS_M0, 8, 0, -1, QCS404_SLAVE_EBI_CH0, QCS404_BIMC_SNOC_SLV); -DEFINE_QNODE(mas_oxili, QCS404_MASTER_GRAPHICS_3D, 8, 6, -1, QCS404_SLAVE_EBI_CH0, QCS404_BIMC_SNOC_SLV); -DEFINE_QNODE(mas_mdp, QCS404_MASTER_MDP_PORT0, 8, 8, -1, QCS404_SLAVE_EBI_CH0, QCS404_BIMC_SNOC_SLV); +DEFINE_QNODE(mas_oxili, QCS404_MASTER_GRAPHICS_3D, 8, -1, -1, QCS404_SLAVE_EBI_CH0, QCS404_BIMC_SNOC_SLV); +DEFINE_QNODE(mas_mdp, QCS404_MASTER_MDP_PORT0, 8, -1, -1, QCS404_SLAVE_EBI_CH0, QCS404_BIMC_SNOC_SLV); DEFINE_QNODE(mas_snoc_bimc_1, QCS404_SNOC_BIMC_1_MAS, 8, 76, -1, QCS404_SLAVE_EBI_CH0); DEFINE_QNODE(mas_tcu_0, QCS404_MASTER_TCU_0, 8, -1, -1, QCS404_SLAVE_EBI_CH0, QCS404_BIMC_SNOC_SLV); DEFINE_QNODE(mas_spdm, QCS404_MASTER_SPDM, 4, -1, -1, QCS404_PNOC_INT_3); --- linux-azure-5.8-5.8.0.orig/drivers/interconnect/qcom/sdm845.c +++ linux-azure-5.8-5.8.0/drivers/interconnect/qcom/sdm845.c @@ -151,7 +151,7 @@ DEFINE_QBCM(bcm_sh0, "SH0", true, &qns_llcc); DEFINE_QBCM(bcm_mm0, "MM0", false, &qns_mem_noc_hf); DEFINE_QBCM(bcm_sh1, "SH1", false, &qns_apps_io); -DEFINE_QBCM(bcm_mm1, "MM1", false, &qxm_camnoc_hf0_uncomp, &qxm_camnoc_hf1_uncomp, &qxm_camnoc_sf_uncomp, &qxm_camnoc_hf0, &qxm_camnoc_hf1, &qxm_mdp0, &qxm_mdp1); +DEFINE_QBCM(bcm_mm1, "MM1", true, &qxm_camnoc_hf0_uncomp, &qxm_camnoc_hf1_uncomp, &qxm_camnoc_sf_uncomp, &qxm_camnoc_hf0, &qxm_camnoc_hf1, &qxm_mdp0, &qxm_mdp1); DEFINE_QBCM(bcm_sh2, "SH2", false, &qns_memnoc_snoc); DEFINE_QBCM(bcm_mm2, "MM2", false, &qns2_mem_noc); DEFINE_QBCM(bcm_sh3, "SH3", false, &acm_tcu); --- linux-azure-5.8-5.8.0.orig/drivers/iommu/Kconfig +++ linux-azure-5.8-5.8.0/drivers/iommu/Kconfig @@ -143,7 +143,7 @@ select IOMMU_API select IOMMU_IOVA select IOMMU_DMA - depends on X86_64 && PCI && ACPI + depends on X86_64 && PCI && ACPI && HAVE_CMPXCHG_DOUBLE help With this option you can enable support for AMD IOMMU hardware in your system. An IOMMU is a hardware component which provides --- linux-azure-5.8-5.8.0.orig/drivers/iommu/amd/amd_iommu.h +++ linux-azure-5.8-5.8.0/drivers/iommu/amd/amd_iommu.h @@ -75,12 +75,9 @@ (pdev->device == PCI_DEVICE_ID_RD890_IOMMU); } -static inline bool iommu_feature(struct amd_iommu *iommu, u64 f) +static inline bool iommu_feature(struct amd_iommu *iommu, u64 mask) { - if (!(iommu->cap & (1 << IOMMU_CAP_EFR))) - return false; - - return !!(iommu->features & f); + return !!(iommu->features & mask); } static inline u64 iommu_virt_to_phys(void *vaddr) --- linux-azure-5.8-5.8.0.orig/drivers/iommu/amd/amd_iommu_types.h +++ linux-azure-5.8-5.8.0/drivers/iommu/amd/amd_iommu_types.h @@ -254,7 +254,7 @@ #define DTE_IRQ_REMAP_INTCTL_MASK (0x3ULL << 60) #define DTE_IRQ_TABLE_LEN_MASK (0xfULL << 1) #define DTE_IRQ_REMAP_INTCTL (2ULL << 60) -#define DTE_IRQ_TABLE_LEN (8ULL << 1) +#define DTE_IRQ_TABLE_LEN (9ULL << 1) #define DTE_IRQ_REMAP_ENABLE 1ULL #define PAGE_MODE_NONE 0x00 @@ -376,6 +376,10 @@ #define IOMMU_CAP_NPCACHE 26 #define IOMMU_CAP_EFR 27 +/* IOMMU IVINFO */ +#define IOMMU_IVINFO_OFFSET 36 +#define IOMMU_IVINFO_EFRSUP BIT(0) + /* IOMMU Feature Reporting Field (for IVHD type 10h */ #define IOMMU_FEAT_GASUP_SHIFT 6 @@ -406,7 +410,11 @@ /* Only true if all IOMMUs support device IOTLBs */ extern bool amd_iommu_iotlb_sup; -#define MAX_IRQS_PER_TABLE 256 +/* + * AMD IOMMU hardware only support 512 IRTEs despite + * the architectural limitation of 2048 entries. + */ +#define MAX_IRQS_PER_TABLE 512 #define IRQ_TABLE_ALIGNMENT 128 struct irq_remap_table { --- linux-azure-5.8-5.8.0.orig/drivers/iommu/amd/init.c +++ linux-azure-5.8-5.8.0/drivers/iommu/amd/init.c @@ -256,6 +256,8 @@ static bool amd_iommu_pre_enabled = true; +static u32 amd_iommu_ivinfo __initdata; + bool translation_pre_enabled(struct amd_iommu *iommu) { return (iommu->flags & AMD_IOMMU_FLAG_TRANS_PRE_ENABLED); @@ -295,6 +297,18 @@ return amd_iommus_present; } +/* + * For IVHD type 0x11/0x40, EFR is also available via IVHD. + * Default to IVHD EFR since it is available sooner + * (i.e. before PCI init). + */ +static void __init early_iommu_features_init(struct amd_iommu *iommu, + struct ivhd_header *h) +{ + if (amd_iommu_ivinfo & IOMMU_IVINFO_EFRSUP) + iommu->features = h->efr_reg; +} + /* Access to l1 and l2 indexed register spaces */ static u32 iommu_read_l1(struct amd_iommu *iommu, u16 l1, u8 address) @@ -1111,25 +1125,6 @@ } /* - * Reads the device exclusion range from ACPI and initializes the IOMMU with - * it - */ -static void __init set_device_exclusion_range(u16 devid, struct ivmd_header *m) -{ - if (!(m->flags & IVMD_FLAG_EXCL_RANGE)) - return; - - /* - * Treat per-device exclusion ranges as r/w unity-mapped regions - * since some buggy BIOSes might lead to the overwritten exclusion - * range (exclusion_start and exclusion_length members). This - * happens when there are multiple exclusion ranges (IVMD entries) - * defined in ACPI table. - */ - m->flags = (IVMD_FLAG_IW | IVMD_FLAG_IR | IVMD_FLAG_UNITY_MAP); -} - -/* * Takes a pointer to an AMD IOMMU entry in the ACPI table and * initializes the hardware and our data structures with it. */ @@ -1518,7 +1513,14 @@ iommu->mmio_phys_end = MMIO_REG_END_OFFSET; else iommu->mmio_phys_end = MMIO_CNTR_CONF_OFFSET; - if (((h->efr_attr & (0x1 << IOMMU_FEAT_GASUP_SHIFT)) == 0)) + + /* + * Note: GA (128-bit IRTE) mode requires cmpxchg16b supports. + * GAM also requires GA mode. Therefore, we need to + * check cmpxchg16b support before enabling it. + */ + if (!boot_cpu_has(X86_FEATURE_CX16) || + ((h->efr_attr & (0x1 << IOMMU_FEAT_GASUP_SHIFT)) == 0)) amd_iommu_guest_ir = AMD_IOMMU_GUEST_IR_LEGACY; break; case 0x11: @@ -1527,8 +1529,18 @@ iommu->mmio_phys_end = MMIO_REG_END_OFFSET; else iommu->mmio_phys_end = MMIO_CNTR_CONF_OFFSET; - if (((h->efr_reg & (0x1 << IOMMU_EFR_GASUP_SHIFT)) == 0)) + + /* + * Note: GA (128-bit IRTE) mode requires cmpxchg16b supports. + * XT, GAM also requires GA mode. Therefore, we need to + * check cmpxchg16b support before enabling them. + */ + if (!boot_cpu_has(X86_FEATURE_CX16) || + ((h->efr_reg & (0x1 << IOMMU_EFR_GASUP_SHIFT)) == 0)) { amd_iommu_guest_ir = AMD_IOMMU_GUEST_IR_LEGACY; + break; + } + /* * Note: Since iommu_update_intcapxt() leverages * the IOMMU MMIO access to MSI capability block registers @@ -1538,6 +1550,9 @@ if ((h->efr_reg & BIT(IOMMU_EFR_XTSUP_SHIFT)) && (h->efr_reg & BIT(IOMMU_EFR_MSICAPMMIOSUP_SHIFT))) amd_iommu_xt_mode = IRQ_REMAP_X2APIC_MODE; + + early_iommu_features_init(iommu, h); + break; default: return -EINVAL; @@ -1726,6 +1741,35 @@ NULL, }; +/* + * Note: IVHD 0x11 and 0x40 also contains exact copy + * of the IOMMU Extended Feature Register [MMIO Offset 0030h]. + * Default to EFR in IVHD since it is available sooner (i.e. before PCI init). + */ +static void __init late_iommu_features_init(struct amd_iommu *iommu) +{ + u64 features; + + if (!(iommu->cap & (1 << IOMMU_CAP_EFR))) + return; + + /* read extended feature bits */ + features = readq(iommu->mmio_base + MMIO_EXT_FEATURES); + + if (!iommu->features) { + iommu->features = features; + return; + } + + /* + * Sanity check and warn if EFR values from + * IVHD and MMIO conflict. + */ + if (features != iommu->features) + pr_warn(FW_WARN "EFR mismatch. Use IVHD EFR (%#llx : %#llx\n).", + features, iommu->features); +} + static int __init iommu_init_pci(struct amd_iommu *iommu) { int cap_ptr = iommu->cap_ptr; @@ -1745,8 +1789,7 @@ if (!(iommu->cap & (1 << IOMMU_CAP_IOTLB))) amd_iommu_iotlb_sup = false; - /* read extended feature bits */ - iommu->features = readq(iommu->mmio_base + MMIO_EXT_FEATURES); + late_iommu_features_init(iommu); if (iommu_feature(iommu, FEATURE_GT)) { int glxval; @@ -2063,30 +2106,6 @@ } } -/* called when we find an exclusion range definition in ACPI */ -static int __init init_exclusion_range(struct ivmd_header *m) -{ - int i; - - switch (m->type) { - case ACPI_IVMD_TYPE: - set_device_exclusion_range(m->devid, m); - break; - case ACPI_IVMD_TYPE_ALL: - for (i = 0; i <= amd_iommu_last_bdf; ++i) - set_device_exclusion_range(i, m); - break; - case ACPI_IVMD_TYPE_RANGE: - for (i = m->devid; i <= m->aux; ++i) - set_device_exclusion_range(i, m); - break; - default: - break; - } - - return 0; -} - /* called for unity map ACPI definition */ static int __init init_unity_map_range(struct ivmd_header *m) { @@ -2097,9 +2116,6 @@ if (e == NULL) return -ENOMEM; - if (m->flags & IVMD_FLAG_EXCL_RANGE) - init_exclusion_range(m); - switch (m->type) { default: kfree(e); @@ -2123,6 +2139,16 @@ e->address_end = e->address_start + PAGE_ALIGN(m->range_length); e->prot = m->flags >> 1; + /* + * Treat per-device exclusion ranges as r/w unity-mapped regions + * since some buggy BIOSes might lead to the overwritten exclusion + * range (exclusion_start and exclusion_length members). This + * happens when there are multiple exclusion ranges (IVMD entries) + * defined in ACPI table. + */ + if (m->flags & IVMD_FLAG_EXCL_RANGE) + e->prot = (IVMD_FLAG_IW | IVMD_FLAG_IR) >> 1; + DUMP_printk("%s devid_start: %02x:%02x.%x devid_end: %02x:%02x.%x" " range_start: %016llx range_end: %016llx flags: %x\n", s, PCI_BUS_NUM(e->devid_start), PCI_SLOT(e->devid_start), @@ -2490,6 +2516,11 @@ free_unity_maps(); } +static void __init ivinfo_init(void *ivrs) +{ + amd_iommu_ivinfo = *((u32 *)(ivrs + IOMMU_IVINFO_OFFSET)); +} + /* * This is the hardware init function for AMD IOMMU in the system. * This function is called either from amd_iommu_init or from the interrupt @@ -2544,6 +2575,8 @@ if (ret) goto out; + ivinfo_init(ivrs_base); + amd_iommu_target_ivhd_type = get_highest_supported_ivhd_type(ivrs_base); DUMP_printk("Using IVHD type %#x\n", amd_iommu_target_ivhd_type); --- linux-azure-5.8-5.8.0.orig/drivers/iommu/amd/iommu.c +++ linux-azure-5.8-5.8.0/drivers/iommu/amd/iommu.c @@ -2650,7 +2650,12 @@ if (!dev_data) return 0; - if (dev_data->iommu_v2) + /* + * Do not identity map IOMMUv2 capable devices when memory encryption is + * active, because some of those devices (AMD GPUs) don't have the + * encryption bit in their DMA-mask and require remapping. + */ + if (!mem_encrypt_active() && dev_data->iommu_v2) return IOMMU_DOMAIN_IDENTITY; return 0; @@ -3283,6 +3288,7 @@ static int modify_irte_ga(u16 devid, int index, struct irte_ga *irte, struct amd_ir_data *data) { + bool ret; struct irq_remap_table *table; struct amd_iommu *iommu; unsigned long flags; @@ -3300,10 +3306,18 @@ entry = (struct irte_ga *)table->table; entry = &entry[index]; - entry->lo.fields_remap.valid = 0; - entry->hi.val = irte->hi.val; - entry->lo.val = irte->lo.val; - entry->lo.fields_remap.valid = 1; + + ret = cmpxchg_double(&entry->lo.val, &entry->hi.val, + entry->lo.val, entry->hi.val, + irte->lo.val, irte->hi.val); + /* + * We use cmpxchg16 to atomically update the 128-bit IRTE, + * and it cannot be updated by the hardware or other processors + * behind us, so the return value of cmpxchg16 should be the + * same as the old value. + */ + WARN_ON(!ret); + if (data) data->ref = entry; @@ -3817,14 +3831,18 @@ { struct amd_ir_data *ir_data = (struct amd_ir_data *)data; struct irte_ga *entry = (struct irte_ga *) ir_data->entry; + u64 valid; if (!AMD_IOMMU_GUEST_IR_VAPIC(amd_iommu_guest_ir) || !entry || entry->lo.fields_vapic.guest_mode) return 0; + valid = entry->lo.fields_vapic.valid; + entry->lo.val = 0; entry->hi.val = 0; + entry->lo.fields_vapic.valid = valid; entry->lo.fields_vapic.guest_mode = 1; entry->lo.fields_vapic.ga_log_intr = 1; entry->hi.fields.ga_root_ptr = ir_data->ga_root_ptr; @@ -3841,14 +3859,18 @@ struct amd_ir_data *ir_data = (struct amd_ir_data *)data; struct irte_ga *entry = (struct irte_ga *) ir_data->entry; struct irq_cfg *cfg = ir_data->cfg; + u64 valid; if (!AMD_IOMMU_GUEST_IR_VAPIC(amd_iommu_guest_ir) || !entry || !entry->lo.fields_vapic.guest_mode) return 0; + valid = entry->lo.fields_remap.valid; + entry->lo.val = 0; entry->hi.val = 0; + entry->lo.fields_remap.valid = valid; entry->lo.fields_remap.dm = apic->irq_dest_mode; entry->lo.fields_remap.int_type = apic->irq_delivery_mode; entry->hi.fields.vector = cfg->vector; --- linux-azure-5.8-5.8.0.orig/drivers/iommu/amd/iommu_v2.c +++ linux-azure-5.8-5.8.0/drivers/iommu/amd/iommu_v2.c @@ -737,6 +737,13 @@ might_sleep(); + /* + * When memory encryption is active the device is likely not in a + * direct-mapped domain. Forbid using IOMMUv2 functionality for now. + */ + if (mem_encrypt_active()) + return -ENODEV; + if (!amd_iommu_v2_supported()) return -ENODEV; --- linux-azure-5.8-5.8.0.orig/drivers/iommu/arm-smmu-qcom.c +++ linux-azure-5.8-5.8.0/drivers/iommu/arm-smmu-qcom.c @@ -69,6 +69,10 @@ { struct qcom_smmu *qsmmu; + /* Check to make sure qcom_scm has finished probing */ + if (!qcom_scm_is_available()) + return ERR_PTR(-EPROBE_DEFER); + qsmmu = devm_kzalloc(smmu->dev, sizeof(*qsmmu), GFP_KERNEL); if (!qsmmu) return ERR_PTR(-ENOMEM); --- linux-azure-5.8-5.8.0.orig/drivers/iommu/arm-smmu-v3.c +++ linux-azure-5.8-5.8.0/drivers/iommu/arm-smmu-v3.c @@ -2878,7 +2878,7 @@ { struct arm_smmu_domain *smmu_domain = to_smmu_domain(domain); - arm_smmu_tlb_inv_range(gather->start, gather->end - gather->start, + arm_smmu_tlb_inv_range(gather->start, gather->end - gather->start + 1, gather->pgsize, true, smmu_domain); } --- linux-azure-5.8-5.8.0.orig/drivers/iommu/dma-iommu.c +++ linux-azure-5.8-5.8.0/drivers/iommu/dma-iommu.c @@ -1035,8 +1035,8 @@ if (IS_ENABLED(CONFIG_DMA_DIRECT_REMAP) && !gfpflags_allow_blocking(gfp) && !coherent) - cpu_addr = dma_alloc_from_pool(dev, PAGE_ALIGN(size), &page, - gfp); + page = dma_alloc_from_pool(dev, PAGE_ALIGN(size), &cpu_addr, + gfp, NULL); else cpu_addr = iommu_dma_alloc_pages(dev, size, &page, gfp, attrs); if (!cpu_addr) --- linux-azure-5.8-5.8.0.orig/drivers/iommu/exynos-iommu.c +++ linux-azure-5.8-5.8.0/drivers/iommu/exynos-iommu.c @@ -1295,13 +1295,17 @@ return -ENODEV; data = platform_get_drvdata(sysmmu); - if (!data) + if (!data) { + put_device(&sysmmu->dev); return -ENODEV; + } if (!owner) { owner = kzalloc(sizeof(*owner), GFP_KERNEL); - if (!owner) + if (!owner) { + put_device(&sysmmu->dev); return -ENOMEM; + } INIT_LIST_HEAD(&owner->controllers); mutex_init(&owner->rpm_lock); --- linux-azure-5.8-5.8.0.orig/drivers/iommu/intel/dmar.c +++ linux-azure-5.8-5.8.0/drivers/iommu/intel/dmar.c @@ -964,7 +964,8 @@ warn_invalid_dmar(phys_addr, " returns all ones"); goto unmap; } - iommu->vccap = dmar_readq(iommu->reg + DMAR_VCCAP_REG); + if (ecap_vcs(iommu->ecap)) + iommu->vccap = dmar_readq(iommu->reg + DMAR_VCCAP_REG); /* the registers might be more than one page */ map_size = max_t(int, ecap_max_iotlb_offset(iommu->ecap), @@ -1024,8 +1025,8 @@ { struct intel_iommu *iommu; u32 ver, sts; - int agaw = 0; - int msagaw = 0; + int agaw = -1; + int msagaw = -1; int err; if (!drhd->reg_base_addr) { @@ -1050,17 +1051,28 @@ } err = -EINVAL; - agaw = iommu_calculate_agaw(iommu); - if (agaw < 0) { - pr_err("Cannot get a valid agaw for iommu (seq_id = %d)\n", - iommu->seq_id); - goto err_unmap; - } - msagaw = iommu_calculate_max_sagaw(iommu); - if (msagaw < 0) { - pr_err("Cannot get a valid max agaw for iommu (seq_id = %d)\n", - iommu->seq_id); - goto err_unmap; + if (cap_sagaw(iommu->cap) == 0) { + pr_info("%s: No supported address widths. Not attempting DMA translation.\n", + iommu->name); + drhd->ignored = 1; + } + + if (!drhd->ignored) { + agaw = iommu_calculate_agaw(iommu); + if (agaw < 0) { + pr_err("Cannot get a valid agaw for iommu (seq_id = %d)\n", + iommu->seq_id); + drhd->ignored = 1; + } + } + if (!drhd->ignored) { + msagaw = iommu_calculate_max_sagaw(iommu); + if (msagaw < 0) { + pr_err("Cannot get a valid max agaw for iommu (seq_id = %d)\n", + iommu->seq_id); + drhd->ignored = 1; + agaw = -1; + } } iommu->agaw = agaw; iommu->msagaw = msagaw; @@ -1087,7 +1099,12 @@ raw_spin_lock_init(&iommu->register_lock); - if (intel_iommu_enabled) { + /* + * This is only for hotplug; at boot time intel_iommu_enabled won't + * be set yet. When intel_iommu_init() runs, it registers the units + * present at boot time, then sets intel_iommu_enabled. + */ + if (intel_iommu_enabled && !drhd->ignored) { err = iommu_device_sysfs_add(&iommu->iommu, NULL, intel_iommu_groups, "%s", iommu->name); @@ -1102,6 +1119,7 @@ } drhd->iommu = iommu; + iommu->drhd = drhd; return 0; @@ -1116,7 +1134,7 @@ static void free_iommu(struct intel_iommu *iommu) { - if (intel_iommu_enabled) { + if (intel_iommu_enabled && iommu->iommu.ops) { iommu_device_unregister(&iommu->iommu); iommu_device_sysfs_remove(&iommu->iommu); } @@ -1421,8 +1439,8 @@ int mask = ilog2(__roundup_pow_of_two(npages)); unsigned long align = (1ULL << (VTD_PAGE_SHIFT + mask)); - if (WARN_ON_ONCE(!ALIGN(addr, align))) - addr &= ~(align - 1); + if (WARN_ON_ONCE(!IS_ALIGNED(addr, align))) + addr = ALIGN_DOWN(addr, align); desc.qw0 = QI_EIOTLB_PASID(pasid) | QI_EIOTLB_DID(did) | @@ -1458,9 +1476,26 @@ * Max Invs Pending (MIP) is set to 0 for now until we have DIT in * ECAP. */ - desc.qw1 |= addr & ~mask; - if (size_order) + if (!IS_ALIGNED(addr, VTD_PAGE_SIZE << size_order)) + pr_warn_ratelimited("Invalidate non-aligned address %llx, order %d\n", + addr, size_order); + + /* Take page address */ + desc.qw1 = QI_DEV_EIOTLB_ADDR(addr); + + if (size_order) { + /* + * Existing 0s in address below size_order may be the least + * significant bit, we must set them to 1s to avoid having + * smaller size than desired. + */ + desc.qw1 |= GENMASK_ULL(size_order + VTD_PAGE_SHIFT - 1, + VTD_PAGE_SHIFT); + /* Clear size_order bit to indicate size */ + desc.qw1 &= ~mask; + /* Set the S bit to indicate flushing more than 1 page */ desc.qw1 |= QI_DEV_EIOTLB_SIZE; + } qi_submit_sync(iommu, &desc, 1, 0); } --- linux-azure-5.8-5.8.0.orig/drivers/iommu/intel/iommu.c +++ linux-azure-5.8-5.8.0/drivers/iommu/intel/iommu.c @@ -67,8 +67,8 @@ #define MAX_AGAW_WIDTH 64 #define MAX_AGAW_PFN_WIDTH (MAX_AGAW_WIDTH - VTD_PAGE_SHIFT) -#define __DOMAIN_MAX_PFN(gaw) ((((uint64_t)1) << (gaw-VTD_PAGE_SHIFT)) - 1) -#define __DOMAIN_MAX_ADDR(gaw) ((((uint64_t)1) << gaw) - 1) +#define __DOMAIN_MAX_PFN(gaw) ((((uint64_t)1) << ((gaw) - VTD_PAGE_SHIFT)) - 1) +#define __DOMAIN_MAX_ADDR(gaw) ((((uint64_t)1) << (gaw)) - 1) /* We limit DOMAIN_MAX_PFN to fit in an unsigned long, and DOMAIN_MAX_ADDR to match. That way, we can use 'unsigned long' for PFNs with impunity. */ @@ -123,29 +123,29 @@ return (level - 1) * LEVEL_STRIDE; } -static inline int pfn_level_offset(unsigned long pfn, int level) +static inline int pfn_level_offset(u64 pfn, int level) { return (pfn >> level_to_offset_bits(level)) & LEVEL_MASK; } -static inline unsigned long level_mask(int level) +static inline u64 level_mask(int level) { - return -1UL << level_to_offset_bits(level); + return -1ULL << level_to_offset_bits(level); } -static inline unsigned long level_size(int level) +static inline u64 level_size(int level) { - return 1UL << level_to_offset_bits(level); + return 1ULL << level_to_offset_bits(level); } -static inline unsigned long align_to_level(unsigned long pfn, int level) +static inline u64 align_to_level(u64 pfn, int level) { return (pfn + level_size(level) - 1) & level_mask(level); } static inline unsigned long lvl_to_nr_pages(unsigned int lvl) { - return 1 << min_t(int, (lvl - 1) * LEVEL_STRIDE, MAX_AGAW_PFN_WIDTH); + return 1UL << min_t(int, (lvl - 1) * LEVEL_STRIDE, MAX_AGAW_PFN_WIDTH); } /* VT-d pages must always be _smaller_ than MM pages. Otherwise things @@ -179,7 +179,7 @@ * (used when kernel is launched w/ TXT) */ static int force_on = 0; -int intel_iommu_tboot_noforce; +static int intel_iommu_tboot_noforce; static int no_platform_optin; #define ROOT_ENTRY_NR (VTD_PAGE_SIZE/sizeof(struct root_entry)) @@ -356,6 +356,7 @@ static int intel_iommu_superpage = 1; static int iommu_identity_mapping; static int intel_no_bounce; +static int iommu_skip_te_disable; #define IDENTMAP_GFX 2 #define IDENTMAP_AZALIA 4 @@ -705,6 +706,18 @@ domain_update_iommu_coherency(domain); domain->iommu_snooping = domain_update_iommu_snooping(NULL); domain->iommu_superpage = domain_update_iommu_superpage(domain, NULL); + + /* + * First-level translation restricts the input-address to a + * canonical address (i.e., address bits 63:N have the same + * value as address bit [N-1], where N is 48-bits with 4-level + * paging and 57-bits with 5-level paging). Hence, skip bit + * [N-1]. + */ + if (domain_use_first_level(domain)) + domain->domain.geometry.aperture_end = __DOMAIN_MAX_ADDR(domain->gaw - 1); + else + domain->domain.geometry.aperture_end = __DOMAIN_MAX_ADDR(domain->gaw); } struct context_entry *iommu_context_addr(struct intel_iommu *iommu, u8 bus, @@ -1629,6 +1642,10 @@ u32 sts; unsigned long flag; + if (iommu_skip_te_disable && iommu->drhd->gfx_dedicated && + (cap_read_drain(iommu->cap) || cap_write_drain(iommu->cap))) + return; + raw_spin_lock_irqsave(&iommu->register_lock, flag); iommu->gcmd &= ~DMA_GCMD_TE; writel(iommu->gcmd, iommu->reg + DMAR_GCMD_REG); @@ -1746,7 +1763,7 @@ if (ecap_prs(iommu->ecap)) intel_svm_finish_prq(iommu); } - if (ecap_vcs(iommu->ecap) && vccap_pasid(iommu->vccap)) + if (vccap_pasid(iommu->vccap)) ioasid_unregister_allocator(&iommu->pasid_allocator); #endif @@ -2438,6 +2455,9 @@ { struct device_domain_info *info; + if (unlikely(!dev || !dev->iommu)) + return NULL; + if (unlikely(attach_deferred(dev) || iommu_dummy(dev))) return NULL; @@ -2560,7 +2580,7 @@ } if (info->ats_supported && ecap_prs(iommu->ecap) && - pci_find_ext_capability(pdev, PCI_EXT_CAP_ID_PRI)) + pci_pri_supported(pdev)) info->pri_supported = 1; } } @@ -2612,7 +2632,7 @@ } /* Setup the PASID entry for requests without PASID: */ - spin_lock(&iommu->lock); + spin_lock_irqsave(&iommu->lock, flags); if (hw_pass_through && domain_type_is_si(domain)) ret = intel_pasid_setup_pass_through(iommu, domain, dev, PASID_RID2PASID); @@ -2622,7 +2642,7 @@ else ret = intel_pasid_setup_second_level(iommu, domain, dev, PASID_RID2PASID); - spin_unlock(&iommu->lock); + spin_unlock_irqrestore(&iommu->lock, flags); if (ret) { dev_err(dev, "Setup RID2PASID failed\n"); dmar_remove_one_dev_info(dev); @@ -3122,7 +3142,7 @@ * is active. All vIOMMU allocators will eventually be calling the same * host allocator. */ - if (!ecap_vcs(iommu->ecap) || !vccap_pasid(iommu->vccap)) + if (!vccap_pasid(iommu->vccap)) return; pr_info("Register custom PASID allocator\n"); @@ -3248,6 +3268,11 @@ if (!ecap_pass_through(iommu->ecap)) hw_pass_through = 0; + + if (!intel_iommu_strict && cap_caching_mode(iommu->cap)) { + pr_warn("Disable batched IOTLB flush due to virtualization"); + intel_iommu_strict = 1; + } intel_svm_check(iommu); } @@ -4039,6 +4064,7 @@ /* This IOMMU has *only* gfx devices. Either bypass it or set the gfx_mapped flag, as appropriate */ + drhd->gfx_dedicated = 1; if (!dmar_map_gfx) { drhd->ignored = 1; for_each_active_dev_scope(drhd->devices, @@ -4823,7 +4849,8 @@ * Intel IOMMU is required for a TXT/tboot launch or platform * opt in, so enforce that. */ - force_on = tboot_force_iommu() || platform_optin_force_iommu(); + force_on = (!intel_iommu_tboot_noforce && tboot_force_iommu()) || + platform_optin_force_iommu(); if (iommu_init_mempool()) { if (force_on) @@ -5330,6 +5357,7 @@ aux_domain_remove_dev(to_dmar_domain(domain), dev); } +#ifdef CONFIG_INTEL_IOMMU_SVM /* * 2D array for converting and sanitizing IOMMU generic TLB granularity to * VT-d granularity. Invalidation is typically included in the unmap operation @@ -5376,7 +5404,6 @@ return order_base_2(nr_pages); } -#ifdef CONFIG_INTEL_IOMMU_SVM static int intel_iommu_sva_invalidate(struct iommu_domain *domain, struct device *dev, struct iommu_cache_invalidate_info *inv_info) @@ -5446,13 +5473,12 @@ switch (BIT(cache_type)) { case IOMMU_CACHE_INV_TYPE_IOTLB: + /* HW will ignore LSB bits based on address mask */ if (inv_info->granularity == IOMMU_INV_GRANU_ADDR && size && (inv_info->addr_info.addr & ((BIT(VTD_PAGE_SHIFT + size)) - 1))) { - pr_err_ratelimited("Address out of range, 0x%llx, size order %llu\n", + pr_err_ratelimited("User address not aligned, 0x%llx, size order %llu\n", inv_info->addr_info.addr, size); - ret = -ERANGE; - goto out_unlock; } /* @@ -6182,6 +6208,27 @@ DECLARE_PCI_FIXUP_HEADER(PCI_VENDOR_ID_INTEL, 0x0062, quirk_calpella_no_shadow_gtt); DECLARE_PCI_FIXUP_HEADER(PCI_VENDOR_ID_INTEL, 0x006a, quirk_calpella_no_shadow_gtt); +static void quirk_igfx_skip_te_disable(struct pci_dev *dev) +{ + unsigned short ver; + + if (!IS_GFX_DEVICE(dev)) + return; + + ver = (dev->device >> 8) & 0xff; + if (ver != 0x45 && ver != 0x46 && ver != 0x4c && + ver != 0x4e && ver != 0x8a && ver != 0x98 && + ver != 0x9a) + return; + + if (risky_device(dev)) + return; + + pci_info(dev, "Skip IOMMU disabling for graphics\n"); + iommu_skip_te_disable = 1; +} +DECLARE_PCI_FIXUP_HEADER(PCI_VENDOR_ID_INTEL, PCI_ANY_ID, quirk_igfx_skip_te_disable); + /* On Tylersburg chipsets, some BIOSes have been known to enable the ISOCH DMAR unit for the Azalia sound device, but not give it any TLB entries, which causes it to deadlock. Check for that. We do --- linux-azure-5.8-5.8.0.orig/drivers/iommu/intel/irq_remapping.c +++ linux-azure-5.8-5.8.0/drivers/iommu/intel/irq_remapping.c @@ -507,12 +507,18 @@ /* Enable interrupt-remapping */ iommu->gcmd |= DMA_GCMD_IRE; - iommu->gcmd &= ~DMA_GCMD_CFI; /* Block compatibility-format MSIs */ writel(iommu->gcmd, iommu->reg + DMAR_GCMD_REG); - IOMMU_WAIT_OP(iommu, DMAR_GSTS_REG, readl, (sts & DMA_GSTS_IRES), sts); + /* Block compatibility-format MSIs */ + if (sts & DMA_GSTS_CFIS) { + iommu->gcmd &= ~DMA_GCMD_CFI; + writel(iommu->gcmd, iommu->reg + DMAR_GCMD_REG); + IOMMU_WAIT_OP(iommu, DMAR_GSTS_REG, + readl, !(sts & DMA_GSTS_CFIS), sts); + } + /* * With CFI clear in the Global Command register, we should be * protected from dangerous (i.e. compatibility) interrupts @@ -628,13 +634,21 @@ static void intel_teardown_irq_remapping(struct intel_iommu *iommu) { + struct fwnode_handle *fn; + if (iommu && iommu->ir_table) { if (iommu->ir_msi_domain) { + fn = iommu->ir_msi_domain->fwnode; + irq_domain_remove(iommu->ir_msi_domain); + irq_domain_free_fwnode(fn); iommu->ir_msi_domain = NULL; } if (iommu->ir_domain) { + fn = iommu->ir_domain->fwnode; + irq_domain_remove(iommu->ir_domain); + irq_domain_free_fwnode(fn); iommu->ir_domain = NULL; } free_pages((unsigned long)iommu->ir_table->base, @@ -1386,6 +1400,8 @@ irq_data = irq_domain_get_irq_data(domain, virq + i); irq_cfg = irqd_cfg(irq_data); if (!irq_data || !irq_cfg) { + if (!i) + kfree(data); ret = -EINVAL; goto out_free_data; } --- linux-azure-5.8-5.8.0.orig/drivers/iommu/intel/svm.c +++ linux-azure-5.8-5.8.0/drivers/iommu/intel/svm.c @@ -117,8 +117,10 @@ iommu->flags |= VTD_FLAG_SVM_CAPABLE; } -static void intel_flush_svm_range_dev (struct intel_svm *svm, struct intel_svm_dev *sdev, - unsigned long address, unsigned long pages, int ih) +static void __flush_svm_range_dev(struct intel_svm *svm, + struct intel_svm_dev *sdev, + unsigned long address, + unsigned long pages, int ih) { struct qi_desc desc; @@ -141,7 +143,7 @@ } desc.qw2 = 0; desc.qw3 = 0; - qi_submit_sync(svm->iommu, &desc, 1, 0); + qi_submit_sync(sdev->iommu, &desc, 1, 0); if (sdev->dev_iotlb) { desc.qw0 = QI_DEV_EIOTLB_PASID(svm->pasid) | @@ -165,7 +167,23 @@ } desc.qw2 = 0; desc.qw3 = 0; - qi_submit_sync(svm->iommu, &desc, 1, 0); + qi_submit_sync(sdev->iommu, &desc, 1, 0); + } +} + +static void intel_flush_svm_range_dev(struct intel_svm *svm, + struct intel_svm_dev *sdev, + unsigned long address, + unsigned long pages, int ih) +{ + unsigned long shift = ilog2(__roundup_pow_of_two(pages)); + unsigned long align = (1ULL << (VTD_PAGE_SHIFT + shift)); + unsigned long start = ALIGN_DOWN(address, align); + unsigned long end = ALIGN(address + (pages << VTD_PAGE_SHIFT), align); + + while (start < end) { + __flush_svm_range_dev(svm, sdev, start, align >> VTD_PAGE_SHIFT, ih); + start += align; } } @@ -210,7 +228,7 @@ */ rcu_read_lock(); list_for_each_entry_rcu(sdev, &svm->devs, list) - intel_pasid_tear_down_entry(svm->iommu, sdev->dev, + intel_pasid_tear_down_entry(sdev->iommu, sdev->dev, svm->pasid, true); rcu_read_unlock(); @@ -235,6 +253,7 @@ struct dmar_domain *dmar_domain; struct intel_svm_dev *sdev; struct intel_svm *svm; + unsigned long iflags; int ret = 0; if (WARN_ON(!iommu) || !data) @@ -277,20 +296,16 @@ goto out; } + /* + * Do not allow multiple bindings of the same device-PASID since + * there is only one SL page tables per PASID. We may revisit + * once sharing PGD across domains are supported. + */ for_each_svm_dev(sdev, svm, dev) { - /* - * For devices with aux domains, we should allow - * multiple bind calls with the same PASID and pdev. - */ - if (iommu_dev_feature_enabled(dev, - IOMMU_DEV_FEAT_AUX)) { - sdev->users++; - } else { - dev_warn_ratelimited(dev, - "Already bound with PASID %u\n", - svm->pasid); - ret = -EBUSY; - } + dev_warn_ratelimited(dev, + "Already bound with PASID %u\n", + svm->pasid); + ret = -EBUSY; goto out; } } else { @@ -321,6 +336,7 @@ goto out; } sdev->dev = dev; + sdev->iommu = iommu; /* Only count users if device has aux domains */ if (iommu_dev_feature_enabled(dev, IOMMU_DEV_FEAT_AUX)) @@ -339,12 +355,12 @@ * each bind of a new device even with an existing PASID, we need to * call the nested mode setup function here. */ - spin_lock(&iommu->lock); + spin_lock_irqsave(&iommu->lock, iflags); ret = intel_pasid_setup_nested(iommu, dev, (pgd_t *)(uintptr_t)data->gpgd, data->hpasid, &data->vtd, dmar_domain, data->addr_width); - spin_unlock(&iommu->lock); + spin_unlock_irqrestore(&iommu->lock, iflags); if (ret) { dev_err_ratelimited(dev, "Failed to set up PASID %llu in nested mode, Err %d\n", data->hpasid, ret); @@ -434,6 +450,7 @@ struct device_domain_info *info; struct intel_svm_dev *sdev; struct intel_svm *svm = NULL; + unsigned long iflags; int pasid_max; int ret; @@ -494,6 +511,7 @@ goto out; } sdev->dev = dev; + sdev->iommu = iommu; ret = intel_iommu_enable_pasid(iommu, dev); if (ret) { @@ -523,7 +541,6 @@ kfree(sdev); goto out; } - svm->iommu = iommu; if (pasid_max > intel_pasid_max_id) pasid_max = intel_pasid_max_id; @@ -553,14 +570,14 @@ } } - spin_lock(&iommu->lock); + spin_lock_irqsave(&iommu->lock, iflags); ret = intel_pasid_setup_first_level(iommu, dev, mm ? mm->pgd : init_mm.pgd, svm->pasid, FLPT_DEFAULT_DID, (mm ? 0 : PASID_FLAG_SUPERVISOR_MODE) | (cpu_feature_enabled(X86_FEATURE_LA57) ? PASID_FLAG_FL5LP : 0)); - spin_unlock(&iommu->lock); + spin_unlock_irqrestore(&iommu->lock, iflags); if (ret) { if (mm) mmu_notifier_unregister(&svm->notifier, mm); @@ -576,14 +593,14 @@ * Binding a new device with existing PASID, need to setup * the PASID entry. */ - spin_lock(&iommu->lock); + spin_lock_irqsave(&iommu->lock, iflags); ret = intel_pasid_setup_first_level(iommu, dev, mm ? mm->pgd : init_mm.pgd, svm->pasid, FLPT_DEFAULT_DID, (mm ? 0 : PASID_FLAG_SUPERVISOR_MODE) | (cpu_feature_enabled(X86_FEATURE_LA57) ? PASID_FLAG_FL5LP : 0)); - spin_unlock(&iommu->lock); + spin_unlock_irqrestore(&iommu->lock, iflags); if (ret) { kfree(sdev); goto out; @@ -917,7 +934,7 @@ resp.qw0 = QI_PGRP_PASID(req->pasid) | QI_PGRP_DID(req->rid) | QI_PGRP_PASID_P(req->pasid_present) | - QI_PGRP_PDP(req->pasid_present) | + QI_PGRP_PDP(req->priv_data_present) | QI_PGRP_RESP_CODE(result) | QI_PGRP_RESP_TYPE; resp.qw1 = QI_PGRP_IDX(req->prg_index) | --- linux-azure-5.8-5.8.0.orig/drivers/iommu/io-pgtable-arm.c +++ linux-azure-5.8-5.8.0/drivers/iommu/io-pgtable-arm.c @@ -443,7 +443,13 @@ << ARM_LPAE_PTE_ATTRINDX_SHIFT); } - if (prot & IOMMU_CACHE) + /* + * Also Mali has its own notions of shareability wherein its Inner + * domain covers the cores within the GPU, and its Outer domain is + * "outside the GPU" (i.e. either the Inner or System domain in CPU + * terms, depending on coherency). + */ + if (prot & IOMMU_CACHE && data->iop.fmt != ARM_MALI_LPAE) pte |= ARM_LPAE_PTE_SH_IS; else pte |= ARM_LPAE_PTE_SH_OS; @@ -1052,6 +1058,9 @@ cfg->arm_mali_lpae_cfg.transtab = virt_to_phys(data->pgd) | ARM_MALI_LPAE_TTBR_READ_INNER | ARM_MALI_LPAE_TTBR_ADRMODE_TABLE; + if (cfg->coherent_walk) + cfg->arm_mali_lpae_cfg.transtab |= ARM_MALI_LPAE_TTBR_SHARE_OUTER; + return &data->iop; out_free_data: --- linux-azure-5.8-5.8.0.orig/drivers/iommu/iommu.c +++ linux-azure-5.8-5.8.0/drivers/iommu/iommu.c @@ -264,16 +264,18 @@ */ iommu_alloc_default_domain(group, dev); - if (group->default_domain) + if (group->default_domain) { ret = __iommu_attach_device(group->default_domain, dev); + if (ret) { + iommu_group_put(group); + goto err_release; + } + } iommu_create_device_direct_mappings(group, dev); iommu_group_put(group); - if (ret) - goto err_release; - if (ops->probe_finalize) ops->probe_finalize(dev); @@ -2216,9 +2218,6 @@ size -= pgsize; } - if (ops->iotlb_sync_map) - ops->iotlb_sync_map(domain); - /* unroll mapping in case something went wrong */ if (ret) iommu_unmap(domain, orig_iova, orig_size - size); @@ -2228,18 +2227,31 @@ return ret; } +static int _iommu_map(struct iommu_domain *domain, unsigned long iova, + phys_addr_t paddr, size_t size, int prot, gfp_t gfp) +{ + const struct iommu_ops *ops = domain->ops; + int ret; + + ret = __iommu_map(domain, iova, paddr, size, prot, gfp); + if (ret == 0 && ops->iotlb_sync_map) + ops->iotlb_sync_map(domain); + + return ret; +} + int iommu_map(struct iommu_domain *domain, unsigned long iova, phys_addr_t paddr, size_t size, int prot) { might_sleep(); - return __iommu_map(domain, iova, paddr, size, prot, GFP_KERNEL); + return _iommu_map(domain, iova, paddr, size, prot, GFP_KERNEL); } EXPORT_SYMBOL_GPL(iommu_map); int iommu_map_atomic(struct iommu_domain *domain, unsigned long iova, phys_addr_t paddr, size_t size, int prot) { - return __iommu_map(domain, iova, paddr, size, prot, GFP_ATOMIC); + return _iommu_map(domain, iova, paddr, size, prot, GFP_ATOMIC); } EXPORT_SYMBOL_GPL(iommu_map_atomic); @@ -2323,6 +2335,7 @@ struct scatterlist *sg, unsigned int nents, int prot, gfp_t gfp) { + const struct iommu_ops *ops = domain->ops; size_t len = 0, mapped = 0; phys_addr_t start; unsigned int i = 0; @@ -2353,6 +2366,8 @@ sg = sg_next(sg); } + if (ops->iotlb_sync_map) + ops->iotlb_sync_map(domain); return mapped; out_err: --- linux-azure-5.8-5.8.0.orig/drivers/iommu/iova.c +++ linux-azure-5.8-5.8.0/drivers/iommu/iova.c @@ -811,7 +811,9 @@ for (i = 0 ; i < mag->size; ++i) { struct iova *iova = private_find_iova(iovad, mag->pfns[i]); - BUG_ON(!iova); + if (WARN_ON(!iova)) + continue; + private_free_iova(iovad, iova); } --- linux-azure-5.8-5.8.0.orig/drivers/iommu/mtk_iommu.c +++ linux-azure-5.8-5.8.0/drivers/iommu/mtk_iommu.c @@ -418,7 +418,7 @@ struct iommu_iotlb_gather *gather) { struct mtk_iommu_data *data = mtk_iommu_get_m4u_data(); - size_t length = gather->end - gather->start; + size_t length = gather->end - gather->start + 1; if (gather->start == ULONG_MAX) return; --- linux-azure-5.8-5.8.0.orig/drivers/iommu/omap-iommu-debug.c +++ linux-azure-5.8-5.8.0/drivers/iommu/omap-iommu-debug.c @@ -98,8 +98,11 @@ mutex_lock(&iommu_debug_lock); bytes = omap_iommu_dump_ctx(obj, p, count); + if (bytes < 0) + goto err; bytes = simple_read_from_buffer(userbuf, count, ppos, buf, bytes); +err: mutex_unlock(&iommu_debug_lock); kfree(buf); --- linux-azure-5.8-5.8.0.orig/drivers/iommu/qcom_iommu.c +++ linux-azure-5.8-5.8.0/drivers/iommu/qcom_iommu.c @@ -578,8 +578,10 @@ * index into qcom_iommu->ctxs: */ if (WARN_ON(asid < 1) || - WARN_ON(asid > qcom_iommu->num_ctxs)) + WARN_ON(asid > qcom_iommu->num_ctxs)) { + put_device(&iommu_pdev->dev); return -EINVAL; + } if (!dev_iommu_priv_get(dev)) { dev_iommu_priv_set(dev, qcom_iommu); @@ -588,8 +590,10 @@ * multiple different iommu devices. Multiple context * banks are ok, but multiple devices are not: */ - if (WARN_ON(qcom_iommu != dev_iommu_priv_get(dev))) + if (WARN_ON(qcom_iommu != dev_iommu_priv_get(dev))) { + put_device(&iommu_pdev->dev); return -EINVAL; + } } return iommu_fwspec_add_ids(dev, &asid, 1); --- linux-azure-5.8-5.8.0.orig/drivers/irqchip/Kconfig +++ linux-azure-5.8-5.8.0/drivers/irqchip/Kconfig @@ -458,7 +458,8 @@ Support for the i.MX IRQSTEER interrupt multiplexer/remapper. config IMX_INTMUX - def_bool y if ARCH_MXC || COMPILE_TEST + bool "i.MX INTMUX support" if COMPILE_TEST + default y if ARCH_MXC select IRQ_DOMAIN help Support for the i.MX INTMUX interrupt multiplexer. --- linux-azure-5.8-5.8.0.orig/drivers/irqchip/irq-alpine-msi.c +++ linux-azure-5.8-5.8.0/drivers/irqchip/irq-alpine-msi.c @@ -165,8 +165,7 @@ return 0; err_sgi: - while (--i >= 0) - irq_domain_free_irqs_parent(domain, virq, i); + irq_domain_free_irqs_parent(domain, virq, i - 1); alpine_msix_free_sgi(priv, sgi, nr_irqs); return err; } --- linux-azure-5.8-5.8.0.orig/drivers/irqchip/irq-bcm7038-l1.c +++ linux-azure-5.8-5.8.0/drivers/irqchip/irq-bcm7038-l1.c @@ -327,7 +327,11 @@ u32 val; /* Wakeup interrupt should only come from the boot cpu */ +#ifdef CONFIG_SMP boot_cpu = cpu_logical_map(0); +#else + boot_cpu = 0; +#endif list_for_each_entry(intc, &bcm7038_l1_intcs_list, list) { for (word = 0; word < intc->n_words; word++) { @@ -347,7 +351,11 @@ struct bcm7038_l1_chip *intc; int boot_cpu, word; +#ifdef CONFIG_SMP boot_cpu = cpu_logical_map(0); +#else + boot_cpu = 0; +#endif list_for_each_entry(intc, &bcm7038_l1_intcs_list, list) { for (word = 0; word < intc->n_words; word++) { --- linux-azure-5.8-5.8.0.orig/drivers/irqchip/irq-gic-v3-its.c +++ linux-azure-5.8-5.8.0/drivers/irqchip/irq-gic-v3-its.c @@ -42,7 +42,6 @@ #define ITS_FLAGS_CMDQ_NEEDS_FLUSHING (1ULL << 0) #define ITS_FLAGS_WORKAROUND_CAVIUM_22375 (1ULL << 1) #define ITS_FLAGS_WORKAROUND_CAVIUM_23144 (1ULL << 2) -#define ITS_FLAGS_SAVE_SUSPEND_STATE (1ULL << 3) #define RDIST_FLAGS_PROPBASE_NEEDS_FLUSHING (1 << 0) #define RDIST_FLAGS_RD_TABLES_PREALLOCATED (1 << 1) @@ -2814,7 +2813,7 @@ if (val & GICR_VPROPBASER_4_1_VALID) goto out; - gic_data_rdist()->vpe_table_mask = kzalloc(sizeof(cpumask_t), GFP_KERNEL); + gic_data_rdist()->vpe_table_mask = kzalloc(sizeof(cpumask_t), GFP_ATOMIC); if (!gic_data_rdist()->vpe_table_mask) return -ENOMEM; @@ -2881,7 +2880,7 @@ pr_debug("np = %d, npg = %lld, psz = %d, epp = %d, esz = %d\n", np, npg, psz, epp, esz); - page = alloc_pages(GFP_KERNEL | __GFP_ZERO, get_order(np * PAGE_SIZE)); + page = alloc_pages(GFP_ATOMIC | __GFP_ZERO, get_order(np * PAGE_SIZE)); if (!page) return -ENOMEM; @@ -3523,6 +3522,7 @@ msi_alloc_info_t *info = args; struct its_device *its_dev = info->scratchpad[0].ptr; struct its_node *its = its_dev->its; + struct irq_data *irqd; irq_hw_number_t hwirq; int err; int i; @@ -3542,7 +3542,9 @@ irq_domain_set_hwirq_and_chip(domain, virq + i, hwirq + i, &its_irq_chip, its_dev); - irqd_set_single_target(irq_desc_get_irq_data(irq_to_desc(virq + i))); + irqd = irq_get_irq_data(virq + i); + irqd_set_single_target(irqd); + irqd_set_affinity_on_activate(irqd); pr_debug("ID:%d pID:%d vID:%d\n", (int)(hwirq + i - its_dev->event_map.lpi_base), (int)(hwirq + i), virq + i); @@ -4087,18 +4089,22 @@ static void its_vpe_4_1_invall(struct its_vpe *vpe) { void __iomem *rdbase; + unsigned long flags; u64 val; + int cpu; val = GICR_INVALLR_V; val |= FIELD_PREP(GICR_INVALLR_VPEID, vpe->vpe_id); /* Target the redistributor this vPE is currently known on */ - raw_spin_lock(&gic_data_rdist_cpu(vpe->col_idx)->rd_lock); - rdbase = per_cpu_ptr(gic_rdists->rdist, vpe->col_idx)->rd_base; + cpu = vpe_to_cpuid_lock(vpe, &flags); + raw_spin_lock(&gic_data_rdist_cpu(cpu)->rd_lock); + rdbase = per_cpu_ptr(gic_rdists->rdist, cpu)->rd_base; gic_write_lpir(val, rdbase + GICR_INVALLR); wait_for_syncr(rdbase); - raw_spin_unlock(&gic_data_rdist_cpu(vpe->col_idx)->rd_lock); + raw_spin_unlock(&gic_data_rdist_cpu(cpu)->rd_lock); + vpe_to_cpuid_unlock(vpe, flags); } static int its_vpe_4_1_set_vcpu_affinity(struct irq_data *d, void *vcpu_info) @@ -4728,9 +4734,6 @@ list_for_each_entry(its, &its_nodes, entry) { void __iomem *base; - if (!(its->flags & ITS_FLAGS_SAVE_SUSPEND_STATE)) - continue; - base = its->base; its->ctlr_save = readl_relaxed(base + GITS_CTLR); err = its_force_quiescent(base); @@ -4749,9 +4752,6 @@ list_for_each_entry_continue_reverse(its, &its_nodes, entry) { void __iomem *base; - if (!(its->flags & ITS_FLAGS_SAVE_SUSPEND_STATE)) - continue; - base = its->base; writel_relaxed(its->ctlr_save, base + GITS_CTLR); } @@ -4771,9 +4771,6 @@ void __iomem *base; int i; - if (!(its->flags & ITS_FLAGS_SAVE_SUSPEND_STATE)) - continue; - base = its->base; /* @@ -4781,7 +4778,10 @@ * don't restore it since writing to CBASER or BASER * registers is undefined according to the GIC v3 ITS * Specification. + * + * Firmware resuming with the ITS enabled is terminally broken. */ + WARN_ON(readl_relaxed(base + GITS_CTLR) & GITS_CTLR_ENABLE); ret = its_force_quiescent(base); if (ret) { pr_err("ITS@%pa: failed to quiesce on resume: %d\n", @@ -5061,9 +5061,6 @@ ctlr |= GITS_CTLR_ImDe; writel_relaxed(ctlr, its->base + GITS_CTLR); - if (GITS_TYPER_HCC(typer)) - its->flags |= ITS_FLAGS_SAVE_SUSPEND_STATE; - err = its_init_domain(handle, its); if (err) goto out_free_tables; --- linux-azure-5.8-5.8.0.orig/drivers/irqchip/irq-ingenic.c +++ linux-azure-5.8-5.8.0/drivers/irqchip/irq-ingenic.c @@ -125,7 +125,7 @@ irq_reg_writel(gc, IRQ_MSK(32), JZ_REG_INTC_SET_MASK); } - if (request_irq(parent_irq, intc_cascade, 0, + if (request_irq(parent_irq, intc_cascade, IRQF_NO_SUSPEND, "SoC intc cascade interrupt", NULL)) pr_err("Failed to register SoC intc cascade interrupt\n"); return 0; --- linux-azure-5.8-5.8.0.orig/drivers/irqchip/irq-loongson-htvec.c +++ linux-azure-5.8-5.8.0/drivers/irqchip/irq-loongson-htvec.c @@ -109,11 +109,14 @@ static int htvec_domain_alloc(struct irq_domain *domain, unsigned int virq, unsigned int nr_irqs, void *arg) { + int ret; unsigned long hwirq; unsigned int type, i; struct htvec *priv = domain->host_data; - irq_domain_translate_onecell(domain, arg, &hwirq, &type); + ret = irq_domain_translate_onecell(domain, arg, &hwirq, &type); + if (ret) + return ret; for (i = 0; i < nr_irqs; i++) { irq_domain_set_info(domain, virq + i, hwirq + i, &htvec_irq_chip, @@ -149,7 +152,7 @@ /* Clear IRQ cause registers, mask all interrupts */ for (idx = 0; idx < VEC_REG_COUNT; idx++) { writel_relaxed(0x0, priv->base + HTVEC_EN_OFF + 4 * idx); - writel_relaxed(0xFFFFFFFF, priv->base); + writel_relaxed(0xFFFFFFFF, priv->base + 4 * idx); } } @@ -170,7 +173,7 @@ goto free_priv; } - /* Interrupt may come from any of the 4 interrupt line */ + /* Interrupt may come from any of the 8 interrupt lines */ for (i = 0; i < HTVEC_MAX_PARENT_IRQ; i++) { parent_irq[i] = irq_of_parse_and_map(node, i); if (parent_irq[i] <= 0) @@ -192,7 +195,7 @@ if (!priv->htvec_domain) { pr_err("Failed to create IRQ domain\n"); err = -ENOMEM; - goto iounmap_base; + goto irq_dispose; } htvec_reset(priv); @@ -203,6 +206,9 @@ return 0; +irq_dispose: + for (; i > 0; i--) + irq_dispose_mapping(parent_irq[i - 1]); iounmap_base: iounmap(priv->base); free_priv: --- linux-azure-5.8-5.8.0.orig/drivers/irqchip/irq-loongson-liointc.c +++ linux-azure-5.8-5.8.0/drivers/irqchip/irq-loongson-liointc.c @@ -60,7 +60,7 @@ if (!pending) { /* Always blame LPC IRQ if we have that bug */ if (handler->priv->has_lpc_irq_errata && - (handler->parent_int_map & ~gc->mask_cache & + (handler->parent_int_map & gc->mask_cache & BIT(LIOINTC_ERRATA_IRQ))) pending = BIT(LIOINTC_ERRATA_IRQ); else @@ -114,6 +114,7 @@ liointc_set_bit(gc, LIOINTC_REG_INTC_POL, mask, false); break; default: + irq_gc_unlock_irqrestore(gc, flags); return -EINVAL; } irq_gc_unlock_irqrestore(gc, flags); @@ -131,11 +132,11 @@ irq_gc_lock_irqsave(gc, flags); /* Disable all at first */ writel(0xffffffff, gc->reg_base + LIOINTC_REG_INTC_DISABLE); - /* Revert map cache */ + /* Restore map cache */ for (i = 0; i < LIOINTC_CHIP_IRQ; i++) writeb(priv->map_cache[i], gc->reg_base + i); - /* Revert mask cache */ - writel(~gc->mask_cache, gc->reg_base + LIOINTC_REG_INTC_ENABLE); + /* Restore mask cache */ + writel(gc->mask_cache, gc->reg_base + LIOINTC_REG_INTC_ENABLE); irq_gc_unlock_irqrestore(gc, flags); } @@ -243,7 +244,7 @@ ct->chip.irq_mask_ack = irq_gc_mask_disable_reg; ct->chip.irq_set_type = liointc_set_type; - gc->mask_cache = 0xffffffff; + gc->mask_cache = 0; priv->gc = gc; for (i = 0; i < LIOINTC_NUM_PARENT; i++) { --- linux-azure-5.8-5.8.0.orig/drivers/irqchip/irq-loongson-pch-msi.c +++ linux-azure-5.8-5.8.0/drivers/irqchip/irq-loongson-pch-msi.c @@ -230,7 +230,7 @@ goto err_priv; } - priv->msi_map = bitmap_alloc(priv->num_irqs, GFP_KERNEL); + priv->msi_map = bitmap_zalloc(priv->num_irqs, GFP_KERNEL); if (!priv->msi_map) { ret = -ENOMEM; goto err_priv; --- linux-azure-5.8-5.8.0.orig/drivers/irqchip/irq-loongson-pch-pic.c +++ linux-azure-5.8-5.8.0/drivers/irqchip/irq-loongson-pch-pic.c @@ -64,15 +64,6 @@ raw_spin_unlock(&priv->pic_lock); } -static void pch_pic_eoi_irq(struct irq_data *d) -{ - u32 idx = PIC_REG_IDX(d->hwirq); - struct pch_pic *priv = irq_data_get_irq_chip_data(d); - - writel(BIT(PIC_REG_BIT(d->hwirq)), - priv->base + PCH_PIC_CLR + idx * 4); -} - static void pch_pic_mask_irq(struct irq_data *d) { struct pch_pic *priv = irq_data_get_irq_chip_data(d); @@ -85,6 +76,9 @@ { struct pch_pic *priv = irq_data_get_irq_chip_data(d); + writel(BIT(PIC_REG_BIT(d->hwirq)), + priv->base + PCH_PIC_CLR + PIC_REG_IDX(d->hwirq) * 4); + irq_chip_unmask_parent(d); pch_pic_bitclr(priv, PCH_PIC_MASK, d->hwirq); } @@ -124,7 +118,6 @@ .irq_mask = pch_pic_mask_irq, .irq_unmask = pch_pic_unmask_irq, .irq_ack = irq_chip_ack_parent, - .irq_eoi = pch_pic_eoi_irq, .irq_set_affinity = irq_chip_set_affinity_parent, .irq_set_type = pch_pic_set_type, }; @@ -135,22 +128,25 @@ int err; unsigned int type; unsigned long hwirq; - struct irq_fwspec fwspec; + struct irq_fwspec *fwspec = arg; + struct irq_fwspec parent_fwspec; struct pch_pic *priv = domain->host_data; - irq_domain_translate_twocell(domain, arg, &hwirq, &type); + err = irq_domain_translate_twocell(domain, fwspec, &hwirq, &type); + if (err) + return err; - fwspec.fwnode = domain->parent->fwnode; - fwspec.param_count = 1; - fwspec.param[0] = hwirq + priv->ht_vec_base; + parent_fwspec.fwnode = domain->parent->fwnode; + parent_fwspec.param_count = 1; + parent_fwspec.param[0] = hwirq + priv->ht_vec_base; - err = irq_domain_alloc_irqs_parent(domain, virq, 1, &fwspec); + err = irq_domain_alloc_irqs_parent(domain, virq, 1, &parent_fwspec); if (err) return err; irq_domain_set_info(domain, virq, hwirq, &pch_pic_irq_chip, priv, - handle_fasteoi_ack_irq, NULL, NULL); + handle_level_irq, NULL, NULL); irq_set_probe(virq); return 0; --- linux-azure-5.8-5.8.0.orig/drivers/irqchip/irq-mips-cpu.c +++ linux-azure-5.8-5.8.0/drivers/irqchip/irq-mips-cpu.c @@ -197,6 +197,13 @@ if (ret) return ret; + ret = irq_domain_set_hwirq_and_chip(domain->parent, virq + i, hwirq, + &mips_mt_cpu_irq_controller, + NULL); + + if (ret) + return ret; + ret = irq_set_irq_type(virq + i, IRQ_TYPE_LEVEL_HIGH); if (ret) return ret; --- linux-azure-5.8-5.8.0.orig/drivers/irqchip/irq-mtk-sysirq.c +++ linux-azure-5.8-5.8.0/drivers/irqchip/irq-mtk-sysirq.c @@ -15,7 +15,7 @@ #include struct mtk_sysirq_chip_data { - spinlock_t lock; + raw_spinlock_t lock; u32 nr_intpol_bases; void __iomem **intpol_bases; u32 *intpol_words; @@ -37,7 +37,7 @@ reg_index = chip_data->which_word[hwirq]; offset = hwirq & 0x1f; - spin_lock_irqsave(&chip_data->lock, flags); + raw_spin_lock_irqsave(&chip_data->lock, flags); value = readl_relaxed(base + reg_index * 4); if (type == IRQ_TYPE_LEVEL_LOW || type == IRQ_TYPE_EDGE_FALLING) { if (type == IRQ_TYPE_LEVEL_LOW) @@ -53,7 +53,7 @@ data = data->parent_data; ret = data->chip->irq_set_type(data, type); - spin_unlock_irqrestore(&chip_data->lock, flags); + raw_spin_unlock_irqrestore(&chip_data->lock, flags); return ret; } @@ -212,7 +212,7 @@ ret = -ENOMEM; goto out_free_which_word; } - spin_lock_init(&chip_data->lock); + raw_spin_lock_init(&chip_data->lock); return 0; --- linux-azure-5.8-5.8.0.orig/drivers/irqchip/irq-sifive-plic.c +++ linux-azure-5.8-5.8.0/drivers/irqchip/irq-sifive-plic.c @@ -99,7 +99,7 @@ struct irq_data *d, int enable) { int cpu; - struct plic_priv *priv = irq_get_chip_data(d->irq); + struct plic_priv *priv = irq_data_get_irq_chip_data(d); writel(enable, priv->regs + PRIORITY_BASE + d->hwirq * PRIORITY_PER_ID); for_each_cpu(cpu, mask) { @@ -115,7 +115,7 @@ { struct cpumask amask; unsigned int cpu; - struct plic_priv *priv = irq_get_chip_data(d->irq); + struct plic_priv *priv = irq_data_get_irq_chip_data(d); cpumask_and(&amask, &priv->lmask, cpu_online_mask); cpu = cpumask_any_and(irq_data_get_affinity_mask(d), @@ -127,7 +127,7 @@ static void plic_irq_mask(struct irq_data *d) { - struct plic_priv *priv = irq_get_chip_data(d->irq); + struct plic_priv *priv = irq_data_get_irq_chip_data(d); plic_irq_toggle(&priv->lmask, d, 0); } @@ -138,7 +138,7 @@ { unsigned int cpu; struct cpumask amask; - struct plic_priv *priv = irq_get_chip_data(d->irq); + struct plic_priv *priv = irq_data_get_irq_chip_data(d); cpumask_and(&amask, &priv->lmask, mask_val); @@ -151,7 +151,7 @@ return -EINVAL; plic_irq_toggle(&priv->lmask, d, 0); - plic_irq_toggle(cpumask_of(cpu), d, 1); + plic_irq_toggle(cpumask_of(cpu), d, !irqd_irq_masked(d)); irq_data_update_effective_affinity(d, cpumask_of(cpu)); --- linux-azure-5.8-5.8.0.orig/drivers/irqchip/irq-sni-exiu.c +++ linux-azure-5.8-5.8.0/drivers/irqchip/irq-sni-exiu.c @@ -136,7 +136,7 @@ if (fwspec->param_count != 2) return -EINVAL; *hwirq = fwspec->param[0]; - *type = fwspec->param[2] & IRQ_TYPE_SENSE_MASK; + *type = fwspec->param[1] & IRQ_TYPE_SENSE_MASK; } return 0; } --- linux-azure-5.8-5.8.0.orig/drivers/irqchip/irq-stm32-exti.c +++ linux-azure-5.8-5.8.0/drivers/irqchip/irq-stm32-exti.c @@ -431,6 +431,16 @@ irq_gc_unlock(gc); } +/* directly set the target bit without reading first. */ +static inline void stm32_exti_write_bit(struct irq_data *d, u32 reg) +{ + struct stm32_exti_chip_data *chip_data = irq_data_get_irq_chip_data(d); + void __iomem *base = chip_data->host_data->base; + u32 val = BIT(d->hwirq % IRQS_PER_BANK); + + writel_relaxed(val, base + reg); +} + static inline u32 stm32_exti_set_bit(struct irq_data *d, u32 reg) { struct stm32_exti_chip_data *chip_data = irq_data_get_irq_chip_data(d); @@ -464,9 +474,9 @@ raw_spin_lock(&chip_data->rlock); - stm32_exti_set_bit(d, stm32_bank->rpr_ofst); + stm32_exti_write_bit(d, stm32_bank->rpr_ofst); if (stm32_bank->fpr_ofst != UNDEF_REG) - stm32_exti_set_bit(d, stm32_bank->fpr_ofst); + stm32_exti_write_bit(d, stm32_bank->fpr_ofst); raw_spin_unlock(&chip_data->rlock); --- linux-azure-5.8-5.8.0.orig/drivers/irqchip/irq-ti-sci-inta.c +++ linux-azure-5.8-5.8.0/drivers/irqchip/irq-ti-sci-inta.c @@ -572,7 +572,7 @@ res = platform_get_resource(pdev, IORESOURCE_MEM, 0); inta->base = devm_ioremap_resource(dev, res); if (IS_ERR(inta->base)) - return -ENODEV; + return PTR_ERR(inta->base); domain = irq_domain_add_linear(dev_of_node(dev), ti_sci_get_num_resources(inta->vint), --- linux-azure-5.8-5.8.0.orig/drivers/irqchip/qcom-pdc.c +++ linux-azure-5.8-5.8.0/drivers/irqchip/qcom-pdc.c @@ -159,6 +159,8 @@ { int pin_out = d->hwirq; enum pdc_irq_config_bits pdc_type; + enum pdc_irq_config_bits old_pdc_type; + int ret; if (pin_out == GPIO_NO_WAKE_IRQ) return 0; @@ -187,9 +189,26 @@ return -EINVAL; } + old_pdc_type = pdc_reg_read(IRQ_i_CFG, pin_out); pdc_reg_write(IRQ_i_CFG, pin_out, pdc_type); - return irq_chip_set_type_parent(d, type); + ret = irq_chip_set_type_parent(d, type); + if (ret) + return ret; + + /* + * When we change types the PDC can give a phantom interrupt. + * Clear it. Specifically the phantom shows up when reconfiguring + * polarity of interrupt without changing the state of the signal + * but let's be consistent and clear it always. + * + * Doing this works because we have IRQCHIP_SET_TYPE_MASKED so the + * interrupt will be cleared before the rest of the system sees it. + */ + if (old_pdc_type != pdc_type) + irq_chip_set_parent_state(d, IRQCHIP_STATE_PENDING, false); + + return 0; } static struct irq_chip qcom_pdc_gic_chip = { --- linux-azure-5.8-5.8.0.orig/drivers/isdn/mISDN/Kconfig +++ linux-azure-5.8-5.8.0/drivers/isdn/mISDN/Kconfig @@ -13,6 +13,7 @@ config MISDN_DSP tristate "Digital Audio Processing of transparent data" depends on MISDN + select BITREVERSE help Enable support for digital audio processing capability. --- linux-azure-5.8-5.8.0.orig/drivers/leds/Kconfig +++ linux-azure-5.8-5.8.0/drivers/leds/Kconfig @@ -378,7 +378,6 @@ tristate "Common Driver for TI/National LP5521/5523/55231/5562/8501" depends on LEDS_LP5521 || LEDS_LP5523 || LEDS_LP5562 || LEDS_LP8501 select FW_LOADER - select FW_LOADER_USER_HELPER help This option supports common operations for LP5521/5523/55231/5562/8501 devices. --- linux-azure-5.8-5.8.0.orig/drivers/leds/led-class.c +++ linux-azure-5.8-5.8.0/drivers/leds/led-class.c @@ -173,6 +173,7 @@ { led_cdev->flags |= LED_SUSPENDED; led_set_brightness_nopm(led_cdev, 0); + flush_work(&led_cdev->set_brightness_work); } EXPORT_SYMBOL_GPL(led_classdev_suspend); --- linux-azure-5.8-5.8.0.orig/drivers/leds/led-triggers.c +++ linux-azure-5.8-5.8.0/drivers/leds/led-triggers.c @@ -364,14 +364,15 @@ enum led_brightness brightness) { struct led_classdev *led_cdev; + unsigned long flags; if (!trig) return; - read_lock(&trig->leddev_list_lock); + read_lock_irqsave(&trig->leddev_list_lock, flags); list_for_each_entry(led_cdev, &trig->led_cdevs, trig_list) led_set_brightness(led_cdev, brightness); - read_unlock(&trig->leddev_list_lock); + read_unlock_irqrestore(&trig->leddev_list_lock, flags); } EXPORT_SYMBOL_GPL(led_trigger_event); @@ -382,11 +383,12 @@ int invert) { struct led_classdev *led_cdev; + unsigned long flags; if (!trig) return; - read_lock(&trig->leddev_list_lock); + read_lock_irqsave(&trig->leddev_list_lock, flags); list_for_each_entry(led_cdev, &trig->led_cdevs, trig_list) { if (oneshot) led_blink_set_oneshot(led_cdev, delay_on, delay_off, @@ -394,7 +396,7 @@ else led_blink_set(led_cdev, delay_on, delay_off); } - read_unlock(&trig->leddev_list_lock); + read_unlock_irqrestore(&trig->leddev_list_lock, flags); } void led_trigger_blink(struct led_trigger *trig, --- linux-azure-5.8-5.8.0.orig/drivers/leds/leds-88pm860x.c +++ linux-azure-5.8-5.8.0/drivers/leds/leds-88pm860x.c @@ -203,21 +203,33 @@ data->cdev.brightness_set_blocking = pm860x_led_set; mutex_init(&data->lock); - ret = devm_led_classdev_register(chip->dev, &data->cdev); + ret = led_classdev_register(chip->dev, &data->cdev); if (ret < 0) { dev_err(&pdev->dev, "Failed to register LED: %d\n", ret); return ret; } pm860x_led_set(&data->cdev, 0); + + platform_set_drvdata(pdev, data); + return 0; } +static int pm860x_led_remove(struct platform_device *pdev) +{ + struct pm860x_led *data = platform_get_drvdata(pdev); + + led_classdev_unregister(&data->cdev); + + return 0; +} static struct platform_driver pm860x_led_driver = { .driver = { .name = "88pm860x-led", }, .probe = pm860x_led_probe, + .remove = pm860x_led_remove, }; module_platform_driver(pm860x_led_driver); --- linux-azure-5.8-5.8.0.orig/drivers/leds/leds-bcm6328.c +++ linux-azure-5.8-5.8.0/drivers/leds/leds-bcm6328.c @@ -332,7 +332,7 @@ led->cdev.brightness_set = bcm6328_led_set; led->cdev.blink_set = bcm6328_blink_set; - rc = led_classdev_register(dev, &led->cdev); + rc = devm_led_classdev_register(dev, &led->cdev); if (rc < 0) return rc; --- linux-azure-5.8-5.8.0.orig/drivers/leds/leds-bcm6358.c +++ linux-azure-5.8-5.8.0/drivers/leds/leds-bcm6358.c @@ -137,7 +137,7 @@ led->cdev.brightness_set = bcm6358_led_set; - rc = led_classdev_register(dev, &led->cdev); + rc = devm_led_classdev_register(dev, &led->cdev); if (rc < 0) return rc; --- linux-azure-5.8-5.8.0.orig/drivers/leds/leds-da903x.c +++ linux-azure-5.8-5.8.0/drivers/leds/leds-da903x.c @@ -110,12 +110,23 @@ led->flags = pdata->flags; led->master = pdev->dev.parent; - ret = devm_led_classdev_register(led->master, &led->cdev); + ret = led_classdev_register(led->master, &led->cdev); if (ret) { dev_err(&pdev->dev, "failed to register LED %d\n", id); return ret; } + platform_set_drvdata(pdev, led); + + return 0; +} + +static int da903x_led_remove(struct platform_device *pdev) +{ + struct da903x_led *led = platform_get_drvdata(pdev); + + led_classdev_unregister(&led->cdev); + return 0; } @@ -124,6 +135,7 @@ .name = "da903x-led", }, .probe = da903x_led_probe, + .remove = da903x_led_remove, }; module_platform_driver(da903x_led_driver); --- linux-azure-5.8-5.8.0.orig/drivers/leds/leds-lm3533.c +++ linux-azure-5.8-5.8.0/drivers/leds/leds-lm3533.c @@ -694,7 +694,7 @@ platform_set_drvdata(pdev, led); - ret = devm_led_classdev_register(pdev->dev.parent, &led->cdev); + ret = led_classdev_register(pdev->dev.parent, &led->cdev); if (ret) { dev_err(&pdev->dev, "failed to register LED %d\n", pdev->id); return ret; @@ -704,13 +704,18 @@ ret = lm3533_led_setup(led, pdata); if (ret) - return ret; + goto err_deregister; ret = lm3533_ctrlbank_enable(&led->cb); if (ret) - return ret; + goto err_deregister; return 0; + +err_deregister: + led_classdev_unregister(&led->cdev); + + return ret; } static int lm3533_led_remove(struct platform_device *pdev) @@ -720,6 +725,7 @@ dev_dbg(&pdev->dev, "%s\n", __func__); lm3533_ctrlbank_disable(&led->cb); + led_classdev_unregister(&led->cdev); return 0; } --- linux-azure-5.8-5.8.0.orig/drivers/leds/leds-lm355x.c +++ linux-azure-5.8-5.8.0/drivers/leds/leds-lm355x.c @@ -164,18 +164,19 @@ /* input and output pins configuration */ switch (chip->type) { case CHIP_LM3554: - reg_val = pdata->pin_tx2 | pdata->ntc_pin; + reg_val = (u32)pdata->pin_tx2 | (u32)pdata->ntc_pin; ret = regmap_update_bits(chip->regmap, 0xE0, 0x28, reg_val); if (ret < 0) goto out; - reg_val = pdata->pass_mode; + reg_val = (u32)pdata->pass_mode; ret = regmap_update_bits(chip->regmap, 0xA0, 0x04, reg_val); if (ret < 0) goto out; break; case CHIP_LM3556: - reg_val = pdata->pin_tx2 | pdata->ntc_pin | pdata->pass_mode; + reg_val = (u32)pdata->pin_tx2 | (u32)pdata->ntc_pin | + (u32)pdata->pass_mode; ret = regmap_update_bits(chip->regmap, 0x0A, 0xC4, reg_val); if (ret < 0) goto out; --- linux-azure-5.8-5.8.0.orig/drivers/leds/leds-lm36274.c +++ linux-azure-5.8-5.8.0/drivers/leds/leds-lm36274.c @@ -133,7 +133,7 @@ lm36274_data->pdev = pdev; lm36274_data->dev = lmu->dev; lm36274_data->regmap = lmu->regmap; - dev_set_drvdata(&pdev->dev, lm36274_data); + platform_set_drvdata(pdev, lm36274_data); ret = lm36274_parse_dt(lm36274_data); if (ret) { @@ -147,8 +147,16 @@ return ret; } - return devm_led_classdev_register(lm36274_data->dev, - &lm36274_data->led_dev); + return led_classdev_register(lm36274_data->dev, &lm36274_data->led_dev); +} + +static int lm36274_remove(struct platform_device *pdev) +{ + struct lm36274 *lm36274_data = platform_get_drvdata(pdev); + + led_classdev_unregister(&lm36274_data->led_dev); + + return 0; } static const struct of_device_id of_lm36274_leds_match[] = { @@ -159,6 +167,7 @@ static struct platform_driver lm36274_driver = { .probe = lm36274_probe, + .remove = lm36274_remove, .driver = { .name = "lm36274-leds", }, --- linux-azure-5.8-5.8.0.orig/drivers/leds/leds-lm3697.c +++ linux-azure-5.8-5.8.0/drivers/leds/leds-lm3697.c @@ -78,6 +78,7 @@ struct mutex lock; int bank_cfg; + int num_banks; struct lm3697_led leds[]; }; @@ -180,7 +181,7 @@ if (ret) dev_err(&priv->client->dev, "Cannot write OUTPUT config\n"); - for (i = 0; i < LM3697_MAX_CONTROL_BANKS; i++) { + for (i = 0; i < priv->num_banks; i++) { led = &priv->leds[i]; ret = ti_lmu_common_set_ramp(&led->lmu_data); if (ret) @@ -307,8 +308,8 @@ int ret; count = device_get_child_node_count(&client->dev); - if (!count) { - dev_err(&client->dev, "LEDs are not defined in device tree!"); + if (!count || count > LM3697_MAX_CONTROL_BANKS) { + dev_err(&client->dev, "Strange device tree!"); return -ENODEV; } @@ -322,6 +323,7 @@ led->client = client; led->dev = &client->dev; + led->num_banks = count; led->regmap = devm_regmap_init_i2c(client, &lm3697_regmap_config); if (IS_ERR(led->regmap)) { ret = PTR_ERR(led->regmap); --- linux-azure-5.8-5.8.0.orig/drivers/leds/leds-netxbig.c +++ linux-azure-5.8-5.8.0/drivers/leds/leds-netxbig.c @@ -448,31 +448,39 @@ gpio_ext = devm_kzalloc(dev, sizeof(*gpio_ext), GFP_KERNEL); if (!gpio_ext) { of_node_put(gpio_ext_np); - return -ENOMEM; + ret = -ENOMEM; + goto put_device; } ret = netxbig_gpio_ext_get(dev, gpio_ext_dev, gpio_ext); of_node_put(gpio_ext_np); if (ret) - return ret; + goto put_device; pdata->gpio_ext = gpio_ext; /* Timers (optional) */ ret = of_property_count_u32_elems(np, "timers"); if (ret > 0) { - if (ret % 3) - return -EINVAL; + if (ret % 3) { + ret = -EINVAL; + goto put_device; + } + num_timers = ret / 3; timers = devm_kcalloc(dev, num_timers, sizeof(*timers), GFP_KERNEL); - if (!timers) - return -ENOMEM; + if (!timers) { + ret = -ENOMEM; + goto put_device; + } for (i = 0; i < num_timers; i++) { u32 tmp; of_property_read_u32_index(np, "timers", 3 * i, &timers[i].mode); - if (timers[i].mode >= NETXBIG_LED_MODE_NUM) - return -EINVAL; + if (timers[i].mode >= NETXBIG_LED_MODE_NUM) { + ret = -EINVAL; + goto put_device; + } of_property_read_u32_index(np, "timers", 3 * i + 1, &tmp); timers[i].delay_on = tmp; @@ -488,12 +496,15 @@ num_leds = of_get_child_count(np); if (!num_leds) { dev_err(dev, "No LED subnodes found in DT\n"); - return -ENODEV; + ret = -ENODEV; + goto put_device; } leds = devm_kcalloc(dev, num_leds, sizeof(*leds), GFP_KERNEL); - if (!leds) - return -ENOMEM; + if (!leds) { + ret = -ENOMEM; + goto put_device; + } led = leds; for_each_child_of_node(np, child) { @@ -574,6 +585,8 @@ err_node_put: of_node_put(child); +put_device: + put_device(gpio_ext_dev); return ret; } --- linux-azure-5.8-5.8.0.orig/drivers/leds/leds-wm831x-status.c +++ linux-azure-5.8-5.8.0/drivers/leds/leds-wm831x-status.c @@ -269,12 +269,23 @@ drvdata->cdev.blink_set = wm831x_status_blink_set; drvdata->cdev.groups = wm831x_status_groups; - ret = devm_led_classdev_register(wm831x->dev, &drvdata->cdev); + ret = led_classdev_register(wm831x->dev, &drvdata->cdev); if (ret < 0) { dev_err(&pdev->dev, "Failed to register LED: %d\n", ret); return ret; } + platform_set_drvdata(pdev, drvdata); + + return 0; +} + +static int wm831x_status_remove(struct platform_device *pdev) +{ + struct wm831x_status *drvdata = platform_get_drvdata(pdev); + + led_classdev_unregister(&drvdata->cdev); + return 0; } @@ -283,6 +294,7 @@ .name = "wm831x-status", }, .probe = wm831x_status_probe, + .remove = wm831x_status_remove, }; module_platform_driver(wm831x_status_driver); --- linux-azure-5.8-5.8.0.orig/drivers/lightnvm/Kconfig +++ linux-azure-5.8-5.8.0/drivers/lightnvm/Kconfig @@ -19,6 +19,7 @@ config NVM_PBLK tristate "Physical Block Device Open-Channel SSD target" + select CRC32 help Allows an open-channel SSD to be exposed as a block device to the host. The target assumes the device exposes raw flash and must be --- linux-azure-5.8-5.8.0.orig/drivers/lightnvm/core.c +++ linux-azure-5.8-5.8.0/drivers/lightnvm/core.c @@ -848,11 +848,10 @@ rqd.ppa_addr = generic_to_dev_addr(dev, ppa); ret = nvm_submit_io_sync_raw(dev, &rqd); + __free_page(page); if (ret) return ret; - __free_page(page); - return rqd.error; } @@ -1315,8 +1314,9 @@ strlcpy(info->bmname, "gennvm", sizeof(info->bmname)); i++; - if (i > 31) { - pr_err("max 31 devices can be reported.\n"); + if (i >= ARRAY_SIZE(devices->info)) { + pr_err("max %zd devices can be reported.\n", + ARRAY_SIZE(devices->info)); break; } } --- linux-azure-5.8-5.8.0.orig/drivers/macintosh/via-macii.c +++ linux-azure-5.8-5.8.0/drivers/macintosh/via-macii.c @@ -270,15 +270,12 @@ unsigned long flags; int err = 0; + local_irq_save(flags); + /* bit 1 == device 1, and so on. */ autopoll_devs = devs & 0xFFFE; - if (!autopoll_devs) - return 0; - - local_irq_save(flags); - - if (current_req == NULL) { + if (autopoll_devs && !current_req) { /* Send a Talk Reg 0. The controller will repeatedly transmit * this as long as it is idle. */ --- linux-azure-5.8-5.8.0.orig/drivers/mailbox/mailbox.c +++ linux-azure-5.8-5.8.0/drivers/mailbox/mailbox.c @@ -82,9 +82,12 @@ exit: spin_unlock_irqrestore(&chan->lock, flags); - if (!err && (chan->txdone_method & TXDONE_BY_POLL)) - /* kick start the timer immediately to avoid delays */ - hrtimer_start(&chan->mbox->poll_hrt, 0, HRTIMER_MODE_REL); + /* kick start the timer immediately to avoid delays */ + if (!err && (chan->txdone_method & TXDONE_BY_POLL)) { + /* but only if not already active */ + if (!hrtimer_active(&chan->mbox->poll_hrt)) + hrtimer_start(&chan->mbox->poll_hrt, 0, HRTIMER_MODE_REL); + } } static void tx_tick(struct mbox_chan *chan, int r) @@ -122,11 +125,10 @@ struct mbox_chan *chan = &mbox->chans[i]; if (chan->active_req && chan->cl) { + resched = true; txdone = chan->mbox->ops->last_tx_done(chan); if (txdone) tx_tick(chan, 0); - else - resched = true; } } --- linux-azure-5.8-5.8.0.orig/drivers/mailbox/mtk-cmdq-mailbox.c +++ linux-azure-5.8-5.8.0/drivers/mailbox/mtk-cmdq-mailbox.c @@ -69,7 +69,7 @@ struct cmdq { struct mbox_controller mbox; void __iomem *base; - u32 irq; + int irq; u32 thread_nr; u32 irq_mask; struct cmdq_thread *thread; @@ -466,10 +466,8 @@ } cmdq->irq = platform_get_irq(pdev, 0); - if (!cmdq->irq) { - dev_err(dev, "failed to get irq\n"); - return -EINVAL; - } + if (cmdq->irq < 0) + return cmdq->irq; cmdq->thread_nr = (u32)(unsigned long)of_device_get_match_data(dev); cmdq->irq_mask = GENMASK(cmdq->thread_nr - 1, 0); --- linux-azure-5.8-5.8.0.orig/drivers/mailbox/sprd-mailbox.c +++ linux-azure-5.8-5.8.0/drivers/mailbox/sprd-mailbox.c @@ -35,7 +35,7 @@ #define SPRD_MBOX_IRQ_CLR BIT(0) /* Bit and mask definiation for outbox's SPRD_MBOX_FIFO_STS register */ -#define SPRD_OUTBOX_FIFO_FULL BIT(0) +#define SPRD_OUTBOX_FIFO_FULL BIT(2) #define SPRD_OUTBOX_FIFO_WR_SHIFT 16 #define SPRD_OUTBOX_FIFO_RD_SHIFT 24 #define SPRD_OUTBOX_FIFO_POS_MASK GENMASK(7, 0) --- linux-azure-5.8-5.8.0.orig/drivers/md/Kconfig +++ linux-azure-5.8-5.8.0/drivers/md/Kconfig @@ -585,6 +585,7 @@ select BLK_DEV_INTEGRITY select DM_BUFIO select CRYPTO + select CRYPTO_SKCIPHER select ASYNC_XOR help This device-mapper target emulates a block device that has @@ -602,6 +603,7 @@ tristate "Drive-managed zoned block device target support" depends on BLK_DEV_DM depends on BLK_DEV_ZONED + select CRC32 help This device-mapper target takes a host-managed or host-aware zoned block device and exposes most of its capacity as a regular block --- linux-azure-5.8-5.8.0.orig/drivers/md/bcache/bcache.h +++ linux-azure-5.8-5.8.0/drivers/md/bcache/bcache.h @@ -264,7 +264,7 @@ #define BCACHE_DEV_UNLINK_DONE 2 #define BCACHE_DEV_WB_RUNNING 3 #define BCACHE_DEV_RATE_DW_RUNNING 4 - unsigned int nr_stripes; + int nr_stripes; unsigned int stripe_size; atomic_t *stripe_sectors_dirty; unsigned long *full_dirty_stripes; @@ -373,6 +373,7 @@ unsigned int partial_stripes_expensive:1; unsigned int writeback_metadata:1; unsigned int writeback_running:1; + unsigned int writeback_consider_fragment:1; unsigned char writeback_percent; unsigned int writeback_delay; @@ -385,6 +386,9 @@ unsigned int writeback_rate_update_seconds; unsigned int writeback_rate_i_term_inverse; unsigned int writeback_rate_p_term_inverse; + unsigned int writeback_rate_fp_term_low; + unsigned int writeback_rate_fp_term_mid; + unsigned int writeback_rate_fp_term_high; unsigned int writeback_rate_minimum; enum stop_on_failure stop_when_cache_set_failed; @@ -989,6 +993,7 @@ extern struct workqueue_struct *bcache_wq; extern struct workqueue_struct *bch_journal_wq; +extern struct workqueue_struct *bch_flush_wq; extern struct mutex bch_register_lock; extern struct list_head bch_cache_sets; @@ -1030,5 +1035,7 @@ void bch_debug_init(void); void bch_request_exit(void); int bch_request_init(void); +void bch_btree_exit(void); +int bch_btree_init(void); #endif /* _BCACHE_H */ --- linux-azure-5.8-5.8.0.orig/drivers/md/bcache/bset.c +++ linux-azure-5.8-5.8.0/drivers/md/bcache/bset.c @@ -322,7 +322,7 @@ b->page_order = page_order; - t->data = (void *) __get_free_pages(gfp, b->page_order); + t->data = (void *) __get_free_pages(__GFP_COMP|gfp, b->page_order); if (!t->data) goto err; --- linux-azure-5.8-5.8.0.orig/drivers/md/bcache/btree.c +++ linux-azure-5.8-5.8.0/drivers/md/bcache/btree.c @@ -99,6 +99,8 @@ #define PTR_HASH(c, k) \ (((k)->ptr[0] >> c->bucket_bits) | PTR_GEN(k, 0)) +static struct workqueue_struct *btree_io_wq; + #define insert_lock(s, b) ((b)->level <= (s)->lock) @@ -308,7 +310,7 @@ btree_complete_write(b, w); if (btree_node_dirty(b)) - schedule_delayed_work(&b->work, 30 * HZ); + queue_delayed_work(btree_io_wq, &b->work, 30 * HZ); closure_return_with_destructor(cl, btree_node_write_unlock); } @@ -481,7 +483,7 @@ BUG_ON(!i->keys); if (!btree_node_dirty(b)) - schedule_delayed_work(&b->work, 30 * HZ); + queue_delayed_work(btree_io_wq, &b->work, 30 * HZ); set_btree_node_dirty(b); @@ -785,7 +787,7 @@ mutex_init(&c->verify_lock); c->verify_ondisk = (void *) - __get_free_pages(GFP_KERNEL, ilog2(bucket_pages(c))); + __get_free_pages(GFP_KERNEL|__GFP_COMP, ilog2(bucket_pages(c))); c->verify_data = mca_bucket_alloc(c, &ZERO_KEY, GFP_KERNEL); @@ -2764,3 +2766,18 @@ spin_lock_init(&buf->lock); array_allocator_init(&buf->freelist); } + +void bch_btree_exit(void) +{ + if (btree_io_wq) + destroy_workqueue(btree_io_wq); +} + +int __init bch_btree_init(void) +{ + btree_io_wq = alloc_workqueue("bch_btree_io", WQ_MEM_RECLAIM, 0); + if (!btree_io_wq) + return -ENOMEM; + + return 0; +} --- linux-azure-5.8-5.8.0.orig/drivers/md/bcache/journal.c +++ linux-azure-5.8-5.8.0/drivers/md/bcache/journal.c @@ -955,8 +955,8 @@ journal_try_write(c); } else if (!w->dirty) { w->dirty = true; - schedule_delayed_work(&c->journal.work, - msecs_to_jiffies(c->journal_delay_ms)); + queue_delayed_work(bch_flush_wq, &c->journal.work, + msecs_to_jiffies(c->journal_delay_ms)); spin_unlock(&c->journal.lock); } else { spin_unlock(&c->journal.lock); @@ -999,8 +999,8 @@ j->w[1].c = c; if (!(init_fifo(&j->pin, JOURNAL_PIN, GFP_KERNEL)) || - !(j->w[0].data = (void *) __get_free_pages(GFP_KERNEL, JSET_BITS)) || - !(j->w[1].data = (void *) __get_free_pages(GFP_KERNEL, JSET_BITS))) + !(j->w[0].data = (void *) __get_free_pages(GFP_KERNEL|__GFP_COMP, JSET_BITS)) || + !(j->w[1].data = (void *) __get_free_pages(GFP_KERNEL|__GFP_COMP, JSET_BITS))) return -ENOMEM; return 0; --- linux-azure-5.8-5.8.0.orig/drivers/md/bcache/request.c +++ linux-azure-5.8-5.8.0/drivers/md/bcache/request.c @@ -668,7 +668,9 @@ static void bio_complete(struct search *s) { if (s->orig_bio) { - bio_end_io_acct(s->orig_bio, s->start_time); + /* Count on bcache device */ + disk_end_io_acct(s->d->disk, bio_op(s->orig_bio), s->start_time); + trace_bcache_request_end(s->d, s->orig_bio); s->orig_bio->bi_status = s->iop.status; bio_endio(s->orig_bio); @@ -728,8 +730,8 @@ s->recoverable = 1; s->write = op_is_write(bio_op(bio)); s->read_dirty_data = 0; - s->start_time = bio_start_io_acct(bio); - + /* Count on the bcache device */ + s->start_time = disk_start_io_acct(d->disk, bio_sectors(bio), bio_op(bio)); s->iop.c = d->c; s->iop.bio = NULL; s->iop.inode = d->id; @@ -1080,7 +1082,8 @@ bio->bi_end_io = ddip->bi_end_io; bio->bi_private = ddip->bi_private; - bio_end_io_acct(bio, ddip->start_time); + /* Count on the bcache device */ + disk_end_io_acct(ddip->d->disk, bio_op(bio), ddip->start_time); if (bio->bi_status) { struct cached_dev *dc = container_of(ddip->d, @@ -1105,7 +1108,8 @@ */ ddip = kzalloc(sizeof(struct detached_dev_io_private), GFP_NOIO); ddip->d = d; - ddip->start_time = bio_start_io_acct(bio); + /* Count on the bcache device */ + ddip->start_time = disk_start_io_acct(d->disk, bio_sectors(bio), bio_op(bio)); ddip->bi_end_io = bio->bi_end_io; ddip->bi_private = bio->bi_private; bio->bi_end_io = detached_dev_end_io; --- linux-azure-5.8-5.8.0.orig/drivers/md/bcache/super.c +++ linux-azure-5.8-5.8.0/drivers/md/bcache/super.c @@ -48,6 +48,7 @@ static DEFINE_IDA(bcache_device_idx); static wait_queue_head_t unregister_wait; struct workqueue_struct *bcache_wq; +struct workqueue_struct *bch_flush_wq; struct workqueue_struct *bch_journal_wq; @@ -826,19 +827,19 @@ struct request_queue *q; const size_t max_stripes = min_t(size_t, INT_MAX, SIZE_MAX / sizeof(atomic_t)); - size_t n; + uint64_t n; int idx; if (!d->stripe_size) d->stripe_size = 1 << 31; - d->nr_stripes = DIV_ROUND_UP_ULL(sectors, d->stripe_size); - - if (!d->nr_stripes || d->nr_stripes > max_stripes) { - pr_err("nr_stripes too large or invalid: %u (start sector beyond end of disk?)\n", - (unsigned int)d->nr_stripes); + n = DIV_ROUND_UP_ULL(sectors, d->stripe_size); + if (!n || n > max_stripes) { + pr_err("nr_stripes too large or invalid: %llu (start sector beyond end of disk?)\n", + n); return -ENOMEM; } + d->nr_stripes = n; n = d->nr_stripes * sizeof(atomic_t); d->stripe_sectors_dirty = kvzalloc(n, GFP_KERNEL); @@ -1776,7 +1777,7 @@ } #define alloc_bucket_pages(gfp, c) \ - ((void *) __get_free_pages(__GFP_ZERO|gfp, ilog2(bucket_pages(c)))) + ((void *) __get_free_pages(__GFP_ZERO|__GFP_COMP|gfp, ilog2(bucket_pages(c)))) struct cache_set *bch_cache_set_alloc(struct cache_sb *sb) { @@ -2100,7 +2101,14 @@ sysfs_create_link(&c->kobj, &ca->kobj, buf)) goto err; - if (ca->sb.seq > c->sb.seq) { + /* + * A special case is both ca->sb.seq and c->sb.seq are 0, + * such condition happens on a new created cache device whose + * super block is never flushed yet. In this case c->sb.version + * and other members should be updated too, otherwise we will + * have a mistaken super block version in cache set. + */ + if (ca->sb.seq > c->sb.seq || c->sb.seq == 0) { c->sb.version = ca->sb.version; memcpy(c->sb.set_uuid, ca->sb.set_uuid, 16); c->sb.flags = ca->sb.flags; @@ -2744,6 +2752,9 @@ destroy_workqueue(bcache_wq); if (bch_journal_wq) destroy_workqueue(bch_journal_wq); + if (bch_flush_wq) + destroy_workqueue(bch_flush_wq); + bch_btree_exit(); if (bcache_major) unregister_blkdev(bcache_major, "bcache"); @@ -2802,10 +2813,26 @@ return bcache_major; } + if (bch_btree_init()) + goto err; + bcache_wq = alloc_workqueue("bcache", WQ_MEM_RECLAIM, 0); if (!bcache_wq) goto err; + /* + * Let's not make this `WQ_MEM_RECLAIM` for the following reasons: + * + * 1. It used `system_wq` before which also does no memory reclaim. + * 2. With `WQ_MEM_RECLAIM` desktop stalls, increased boot times, and + * reduced throughput can be observed. + * + * We still want to user our own queue to not congest the `system_wq`. + */ + bch_flush_wq = alloc_workqueue("bch_flush", 0, 0); + if (!bch_flush_wq) + goto err; + bch_journal_wq = alloc_workqueue("bch_journal", WQ_MEM_RECLAIM, 0); if (!bch_journal_wq) goto err; --- linux-azure-5.8-5.8.0.orig/drivers/md/bcache/sysfs.c +++ linux-azure-5.8-5.8.0/drivers/md/bcache/sysfs.c @@ -113,10 +113,14 @@ rw_attribute(writeback_percent); rw_attribute(writeback_delay); rw_attribute(writeback_rate); +rw_attribute(writeback_consider_fragment); rw_attribute(writeback_rate_update_seconds); rw_attribute(writeback_rate_i_term_inverse); rw_attribute(writeback_rate_p_term_inverse); +rw_attribute(writeback_rate_fp_term_low); +rw_attribute(writeback_rate_fp_term_mid); +rw_attribute(writeback_rate_fp_term_high); rw_attribute(writeback_rate_minimum); read_attribute(writeback_rate_debug); @@ -191,6 +195,7 @@ var_printf(bypass_torture_test, "%i"); var_printf(writeback_metadata, "%i"); var_printf(writeback_running, "%i"); + var_printf(writeback_consider_fragment, "%i"); var_print(writeback_delay); var_print(writeback_percent); sysfs_hprint(writeback_rate, @@ -201,6 +206,9 @@ var_print(writeback_rate_update_seconds); var_print(writeback_rate_i_term_inverse); var_print(writeback_rate_p_term_inverse); + var_print(writeback_rate_fp_term_low); + var_print(writeback_rate_fp_term_mid); + var_print(writeback_rate_fp_term_high); var_print(writeback_rate_minimum); if (attr == &sysfs_writeback_rate_debug) { @@ -299,6 +307,7 @@ sysfs_strtoul_bool(bypass_torture_test, dc->bypass_torture_test); sysfs_strtoul_bool(writeback_metadata, dc->writeback_metadata); sysfs_strtoul_bool(writeback_running, dc->writeback_running); + sysfs_strtoul_bool(writeback_consider_fragment, dc->writeback_consider_fragment); sysfs_strtoul_clamp(writeback_delay, dc->writeback_delay, 0, UINT_MAX); sysfs_strtoul_clamp(writeback_percent, dc->writeback_percent, @@ -327,6 +336,16 @@ sysfs_strtoul_clamp(writeback_rate_p_term_inverse, dc->writeback_rate_p_term_inverse, 1, UINT_MAX); + sysfs_strtoul_clamp(writeback_rate_fp_term_low, + dc->writeback_rate_fp_term_low, + 1, dc->writeback_rate_fp_term_mid - 1); + sysfs_strtoul_clamp(writeback_rate_fp_term_mid, + dc->writeback_rate_fp_term_mid, + dc->writeback_rate_fp_term_low + 1, + dc->writeback_rate_fp_term_high - 1); + sysfs_strtoul_clamp(writeback_rate_fp_term_high, + dc->writeback_rate_fp_term_high, + dc->writeback_rate_fp_term_mid + 1, UINT_MAX); sysfs_strtoul_clamp(writeback_rate_minimum, dc->writeback_rate_minimum, 1, UINT_MAX); @@ -495,9 +514,13 @@ &sysfs_writeback_delay, &sysfs_writeback_percent, &sysfs_writeback_rate, + &sysfs_writeback_consider_fragment, &sysfs_writeback_rate_update_seconds, &sysfs_writeback_rate_i_term_inverse, &sysfs_writeback_rate_p_term_inverse, + &sysfs_writeback_rate_fp_term_low, + &sysfs_writeback_rate_fp_term_mid, + &sysfs_writeback_rate_fp_term_high, &sysfs_writeback_rate_minimum, &sysfs_writeback_rate_debug, &sysfs_io_errors, --- linux-azure-5.8-5.8.0.orig/drivers/md/bcache/writeback.c +++ linux-azure-5.8-5.8.0/drivers/md/bcache/writeback.c @@ -88,6 +88,44 @@ int64_t integral_scaled; uint32_t new_rate; + /* + * We need to consider the number of dirty buckets as well + * when calculating the proportional_scaled, Otherwise we might + * have an unreasonable small writeback rate at a highly fragmented situation + * when very few dirty sectors consumed a lot dirty buckets, the + * worst case is when dirty buckets reached cutoff_writeback_sync and + * dirty data is still not even reached to writeback percent, so the rate + * still will be at the minimum value, which will cause the write + * stuck at a non-writeback mode. + */ + struct cache_set *c = dc->disk.c; + + int64_t dirty_buckets = c->nbuckets - c->avail_nbuckets; + + if (dc->writeback_consider_fragment && + c->gc_stats.in_use > BCH_WRITEBACK_FRAGMENT_THRESHOLD_LOW && dirty > 0) { + int64_t fragment = + div_s64((dirty_buckets * c->sb.bucket_size), dirty); + int64_t fp_term; + int64_t fps; + + if (c->gc_stats.in_use <= BCH_WRITEBACK_FRAGMENT_THRESHOLD_MID) { + fp_term = dc->writeback_rate_fp_term_low * + (c->gc_stats.in_use - BCH_WRITEBACK_FRAGMENT_THRESHOLD_LOW); + } else if (c->gc_stats.in_use <= BCH_WRITEBACK_FRAGMENT_THRESHOLD_HIGH) { + fp_term = dc->writeback_rate_fp_term_mid * + (c->gc_stats.in_use - BCH_WRITEBACK_FRAGMENT_THRESHOLD_MID); + } else { + fp_term = dc->writeback_rate_fp_term_high * + (c->gc_stats.in_use - BCH_WRITEBACK_FRAGMENT_THRESHOLD_HIGH); + } + fps = div_s64(dirty, dirty_buckets) * fp_term; + if (fragment > 3 && fps > proportional_scaled) { + /* Only overrite the p when fragment > 3 */ + proportional_scaled = fps; + } + } + if ((error < 0 && dc->writeback_rate_integral > 0) || (error > 0 && time_before64(local_clock(), dc->writeback_rate.next + NSEC_PER_MSEC))) { @@ -523,15 +561,19 @@ uint64_t offset, int nr_sectors) { struct bcache_device *d = c->devices[inode]; - unsigned int stripe_offset, stripe, sectors_dirty; + unsigned int stripe_offset, sectors_dirty; + int stripe; if (!d) return; + stripe = offset_to_stripe(d, offset); + if (stripe < 0) + return; + if (UUID_FLASH_ONLY(&c->uuids[inode])) atomic_long_add(nr_sectors, &c->flash_dev_dirty_sectors); - stripe = offset_to_stripe(d, offset); stripe_offset = offset & (d->stripe_size - 1); while (nr_sectors) { @@ -571,12 +613,12 @@ static void refill_full_stripes(struct cached_dev *dc) { struct keybuf *buf = &dc->writeback_keys; - unsigned int start_stripe, stripe, next_stripe; + unsigned int start_stripe, next_stripe; + int stripe; bool wrapped = false; stripe = offset_to_stripe(&dc->disk, KEY_OFFSET(&buf->last_scanned)); - - if (stripe >= dc->disk.nr_stripes) + if (stripe < 0) stripe = 0; start_stripe = stripe; @@ -968,6 +1010,7 @@ dc->writeback_metadata = true; dc->writeback_running = false; + dc->writeback_consider_fragment = true; dc->writeback_percent = 10; dc->writeback_delay = 30; atomic_long_set(&dc->writeback_rate.rate, 1024); @@ -975,6 +1018,9 @@ dc->writeback_rate_update_seconds = WRITEBACK_RATE_UPDATE_SECS_DEFAULT; dc->writeback_rate_p_term_inverse = 40; + dc->writeback_rate_fp_term_low = 1; + dc->writeback_rate_fp_term_mid = 10; + dc->writeback_rate_fp_term_high = 1000; dc->writeback_rate_i_term_inverse = 10000; WARN_ON(test_and_clear_bit(BCACHE_DEV_WB_RUNNING, &dc->disk.flags)); --- linux-azure-5.8-5.8.0.orig/drivers/md/bcache/writeback.h +++ linux-azure-5.8-5.8.0/drivers/md/bcache/writeback.h @@ -16,6 +16,10 @@ #define BCH_AUTO_GC_DIRTY_THRESHOLD 50 +#define BCH_WRITEBACK_FRAGMENT_THRESHOLD_LOW 50 +#define BCH_WRITEBACK_FRAGMENT_THRESHOLD_MID 57 +#define BCH_WRITEBACK_FRAGMENT_THRESHOLD_HIGH 64 + #define BCH_DIRTY_INIT_THRD_MAX 64 /* * 14 (16384ths) is chosen here as something that each backing device @@ -52,10 +56,22 @@ return ret; } -static inline unsigned int offset_to_stripe(struct bcache_device *d, +static inline int offset_to_stripe(struct bcache_device *d, uint64_t offset) { do_div(offset, d->stripe_size); + + /* d->nr_stripes is in range [1, INT_MAX] */ + if (unlikely(offset >= d->nr_stripes)) { + pr_err("Invalid stripe %llu (>= nr_stripes %d).\n", + offset, d->nr_stripes); + return -EINVAL; + } + + /* + * Here offset is definitly smaller than INT_MAX, + * return it as int will never overflow. + */ return offset; } @@ -63,7 +79,10 @@ uint64_t offset, unsigned int nr_sectors) { - unsigned int stripe = offset_to_stripe(&dc->disk, offset); + int stripe = offset_to_stripe(&dc->disk, offset); + + if (stripe < 0) + return false; while (1) { if (atomic_read(dc->disk.stripe_sectors_dirty + stripe)) --- linux-azure-5.8-5.8.0.orig/drivers/md/dm-bufio.c +++ linux-azure-5.8-5.8.0/drivers/md/dm-bufio.c @@ -1531,6 +1531,12 @@ } EXPORT_SYMBOL_GPL(dm_bufio_get_device_size); +struct dm_io_client *dm_bufio_get_dm_io_client(struct dm_bufio_client *c) +{ + return c->dm_io; +} +EXPORT_SYMBOL_GPL(dm_bufio_get_dm_io_client); + sector_t dm_bufio_get_block_number(struct dm_buffer *b) { return b->block; --- linux-azure-5.8-5.8.0.orig/drivers/md/dm-cache-metadata.c +++ linux-azure-5.8-5.8.0/drivers/md/dm-cache-metadata.c @@ -537,12 +537,16 @@ CACHE_MAX_CONCURRENT_LOCKS); if (IS_ERR(cmd->bm)) { DMERR("could not create block manager"); - return PTR_ERR(cmd->bm); + r = PTR_ERR(cmd->bm); + cmd->bm = NULL; + return r; } r = __open_or_format_metadata(cmd, may_format_device); - if (r) + if (r) { dm_block_manager_destroy(cmd->bm); + cmd->bm = NULL; + } return r; } --- linux-azure-5.8-5.8.0.orig/drivers/md/dm-core.h +++ linux-azure-5.8-5.8.0/drivers/md/dm-core.h @@ -106,6 +106,10 @@ struct block_device *bdev; + int swap_bios; + struct semaphore swap_bios_semaphore; + struct mutex swap_bios_lock; + struct dm_stats stats; /* for blk-mq request-based DM support */ --- linux-azure-5.8-5.8.0.orig/drivers/md/dm-crypt.c +++ linux-azure-5.8-5.8.0/drivers/md/dm-crypt.c @@ -736,7 +736,7 @@ u8 buf[MAX_CIPHER_BLOCKSIZE] __aligned(__alignof__(__le64)); struct skcipher_request *req; struct scatterlist src, dst; - struct crypto_wait wait; + DECLARE_CRYPTO_WAIT(wait); int err; req = skcipher_request_alloc(any_tfm(cc), GFP_NOIO); @@ -933,7 +933,7 @@ u8 *es, *ks, *data, *data2, *data_offset; struct skcipher_request *req; struct scatterlist *sg, *sg2, src, dst; - struct crypto_wait wait; + DECLARE_CRYPTO_WAIT(wait); int i, r; req = skcipher_request_alloc(elephant->tfm, GFP_NOIO); @@ -1448,13 +1448,16 @@ static void kcryptd_async_done(struct crypto_async_request *async_req, int error); -static void crypt_alloc_req_skcipher(struct crypt_config *cc, +static int crypt_alloc_req_skcipher(struct crypt_config *cc, struct convert_context *ctx) { unsigned key_index = ctx->cc_sector & (cc->tfms_count - 1); - if (!ctx->r.req) - ctx->r.req = mempool_alloc(&cc->req_pool, GFP_NOIO); + if (!ctx->r.req) { + ctx->r.req = mempool_alloc(&cc->req_pool, in_interrupt() ? GFP_ATOMIC : GFP_NOIO); + if (!ctx->r.req) + return -ENOMEM; + } skcipher_request_set_tfm(ctx->r.req, cc->cipher_tfm.tfms[key_index]); @@ -1465,13 +1468,18 @@ skcipher_request_set_callback(ctx->r.req, CRYPTO_TFM_REQ_MAY_BACKLOG, kcryptd_async_done, dmreq_of_req(cc, ctx->r.req)); + + return 0; } -static void crypt_alloc_req_aead(struct crypt_config *cc, +static int crypt_alloc_req_aead(struct crypt_config *cc, struct convert_context *ctx) { - if (!ctx->r.req_aead) - ctx->r.req_aead = mempool_alloc(&cc->req_pool, GFP_NOIO); + if (!ctx->r.req_aead) { + ctx->r.req_aead = mempool_alloc(&cc->req_pool, in_interrupt() ? GFP_ATOMIC : GFP_NOIO); + if (!ctx->r.req_aead) + return -ENOMEM; + } aead_request_set_tfm(ctx->r.req_aead, cc->cipher_tfm.tfms_aead[0]); @@ -1482,15 +1490,17 @@ aead_request_set_callback(ctx->r.req_aead, CRYPTO_TFM_REQ_MAY_BACKLOG, kcryptd_async_done, dmreq_of_req(cc, ctx->r.req_aead)); + + return 0; } -static void crypt_alloc_req(struct crypt_config *cc, +static int crypt_alloc_req(struct crypt_config *cc, struct convert_context *ctx) { if (crypt_integrity_aead(cc)) - crypt_alloc_req_aead(cc, ctx); + return crypt_alloc_req_aead(cc, ctx); else - crypt_alloc_req_skcipher(cc, ctx); + return crypt_alloc_req_skcipher(cc, ctx); } static void crypt_free_req_skcipher(struct crypt_config *cc, @@ -1533,7 +1543,12 @@ while (ctx->iter_in.bi_size && ctx->iter_out.bi_size) { - crypt_alloc_req(cc, ctx); + r = crypt_alloc_req(cc, ctx); + if (r) { + complete(&ctx->restart); + return BLK_STS_DEV_RESOURCE; + } + atomic_inc(&ctx->cc_pending); if (crypt_integrity_aead(cc)) @@ -3092,6 +3107,7 @@ wake_up_process(cc->write_thread); ti->num_flush_bios = 1; + ti->limit_swap_bios = true; return 0; --- linux-azure-5.8-5.8.0.orig/drivers/md/dm-ebs-target.c +++ linux-azure-5.8-5.8.0/drivers/md/dm-ebs-target.c @@ -363,7 +363,7 @@ bio_set_dev(bio, ec->dev->bdev); bio->bi_iter.bi_sector = ec->start + dm_target_offset(ti, bio->bi_iter.bi_sector); - if (unlikely(bio->bi_opf & REQ_OP_FLUSH)) + if (unlikely(bio_op(bio) == REQ_OP_FLUSH)) return DM_MAPIO_REMAPPED; /* * Only queue for bufio processing in case of partial or overlapping buffers --- linux-azure-5.8-5.8.0.orig/drivers/md/dm-era-target.c +++ linux-azure-5.8-5.8.0/drivers/md/dm-era-target.c @@ -47,6 +47,7 @@ static void writeset_free(struct writeset *ws) { vfree(ws->bits); + ws->bits = NULL; } static int setup_on_disk_bitset(struct dm_disk_bitset *info, @@ -71,8 +72,6 @@ */ static int writeset_alloc(struct writeset *ws, dm_block_t nr_blocks) { - ws->md.nr_bits = nr_blocks; - ws->md.root = INVALID_WRITESET_ROOT; ws->bits = vzalloc(bitset_size(nr_blocks)); if (!ws->bits) { DMERR("%s: couldn't allocate in memory bitset", __func__); @@ -85,12 +84,14 @@ /* * Wipes the in-core bitset, and creates a new on disk bitset. */ -static int writeset_init(struct dm_disk_bitset *info, struct writeset *ws) +static int writeset_init(struct dm_disk_bitset *info, struct writeset *ws, + dm_block_t nr_blocks) { int r; - memset(ws->bits, 0, bitset_size(ws->md.nr_bits)); + memset(ws->bits, 0, bitset_size(nr_blocks)); + ws->md.nr_bits = nr_blocks; r = setup_on_disk_bitset(info, ws->md.nr_bits, &ws->md.root); if (r) { DMERR("%s: setup_on_disk_bitset failed", __func__); @@ -134,7 +135,7 @@ { int r; - if (!test_and_set_bit(block, ws->bits)) { + if (!test_bit(block, ws->bits)) { r = dm_bitset_set_bit(info, ws->md.root, block, &ws->md.root); if (r) { /* FIXME: fail mode */ @@ -388,7 +389,7 @@ static int ws_eq(void *context, const void *value1, const void *value2) { - return !memcmp(value1, value2, sizeof(struct writeset_metadata)); + return !memcmp(value1, value2, sizeof(struct writeset_disk)); } /*----------------------------------------------------------------*/ @@ -564,6 +565,15 @@ } disk = dm_block_data(sblock); + + /* Verify the data block size hasn't changed */ + if (le32_to_cpu(disk->data_block_size) != md->block_size) { + DMERR("changing the data block size (from %u to %llu) is not supported", + le32_to_cpu(disk->data_block_size), md->block_size); + r = -EINVAL; + goto bad; + } + r = dm_tm_open_with_sm(md->bm, SUPERBLOCK_LOCATION, disk->metadata_space_map_root, sizeof(disk->metadata_space_map_root), @@ -575,10 +585,10 @@ setup_infos(md); - md->block_size = le32_to_cpu(disk->data_block_size); md->nr_blocks = le32_to_cpu(disk->nr_blocks); md->current_era = le32_to_cpu(disk->current_era); + ws_unpack(&disk->current_writeset, &md->current_writeset->md); md->writeset_tree_root = le64_to_cpu(disk->writeset_tree_root); md->era_array_root = le64_to_cpu(disk->era_array_root); md->metadata_snap = le64_to_cpu(disk->metadata_snap); @@ -746,6 +756,12 @@ ws_unpack(&disk, &d->writeset); d->value = cpu_to_le32(key); + /* + * We initialise another bitset info to avoid any caching side effects + * with the previous one. + */ + dm_disk_bitset_init(md->tm, &d->info); + d->nr_bits = min(d->writeset.nr_bits, md->nr_blocks); d->current_bit = 0; d->step = metadata_digest_transcribe_writeset; @@ -759,12 +775,6 @@ return 0; memset(d, 0, sizeof(*d)); - - /* - * We initialise another bitset info to avoid any caching side - * effects with the previous one. - */ - dm_disk_bitset_init(md->tm, &d->info); d->step = metadata_digest_lookup_writeset; return 0; @@ -802,6 +812,8 @@ static void metadata_close(struct era_metadata *md) { + writeset_free(&md->writesets[0]); + writeset_free(&md->writesets[1]); destroy_persistent_data_objects(md); kfree(md); } @@ -839,6 +851,7 @@ r = writeset_alloc(&md->writesets[1], *new_size); if (r) { DMERR("%s: writeset_alloc failed for writeset 1", __func__); + writeset_free(&md->writesets[0]); return r; } @@ -849,6 +862,8 @@ &value, &md->era_array_root); if (r) { DMERR("%s: dm_array_resize failed", __func__); + writeset_free(&md->writesets[0]); + writeset_free(&md->writesets[1]); return r; } @@ -870,7 +885,6 @@ } ws_pack(&md->current_writeset->md, &value); - md->current_writeset->md.root = INVALID_WRITESET_ROOT; keys[0] = md->current_era; __dm_bless_for_disk(&value); @@ -882,6 +896,7 @@ return r; } + md->current_writeset->md.root = INVALID_WRITESET_ROOT; md->archived_writesets = true; return 0; @@ -898,7 +913,7 @@ int r; struct writeset *new_writeset = next_writeset(md); - r = writeset_init(&md->bitset_info, new_writeset); + r = writeset_init(&md->bitset_info, new_writeset, md->nr_blocks); if (r) { DMERR("%s: writeset_init failed", __func__); return r; @@ -951,7 +966,7 @@ int r; struct dm_block *sblock; - if (md->current_writeset->md.root != SUPERBLOCK_LOCATION) { + if (md->current_writeset->md.root != INVALID_WRITESET_ROOT) { r = dm_bitset_flush(&md->bitset_info, md->current_writeset->md.root, &md->current_writeset->md.root); if (r) { @@ -1226,8 +1241,10 @@ int r; struct bio_list deferred_bios, marked_bios; struct bio *bio; + struct blk_plug plug; bool commit_needed = false; bool failed = false; + struct writeset *ws = era->md->current_writeset; bio_list_init(&deferred_bios); bio_list_init(&marked_bios); @@ -1237,9 +1254,11 @@ bio_list_init(&era->deferred_bios); spin_unlock(&era->deferred_lock); + if (bio_list_empty(&deferred_bios)) + return; + while ((bio = bio_list_pop(&deferred_bios))) { - r = writeset_test_and_set(&era->md->bitset_info, - era->md->current_writeset, + r = writeset_test_and_set(&era->md->bitset_info, ws, get_block(era, bio)); if (r < 0) { /* @@ -1247,7 +1266,6 @@ * FIXME: finish. */ failed = true; - } else if (r == 0) commit_needed = true; @@ -1263,9 +1281,19 @@ if (failed) while ((bio = bio_list_pop(&marked_bios))) bio_io_error(bio); - else - while ((bio = bio_list_pop(&marked_bios))) + else { + blk_start_plug(&plug); + while ((bio = bio_list_pop(&marked_bios))) { + /* + * Only update the in-core writeset if the on-disk one + * was updated too. + */ + if (commit_needed) + set_bit(get_block(era, bio), ws->bits); generic_make_request(bio); + } + blk_finish_plug(&plug); + } } static void process_rpc_calls(struct era *era) @@ -1486,15 +1514,6 @@ } era->md = md; - era->nr_blocks = calc_nr_blocks(era); - - r = metadata_resize(era->md, &era->nr_blocks); - if (r) { - ti->error = "couldn't resize metadata"; - era_destroy(era); - return -ENOMEM; - } - era->wq = alloc_ordered_workqueue("dm-" DM_MSG_PREFIX, WQ_MEM_RECLAIM); if (!era->wq) { ti->error = "could not create workqueue for metadata object"; @@ -1571,16 +1590,24 @@ dm_block_t new_size = calc_nr_blocks(era); if (era->nr_blocks != new_size) { - r = in_worker1(era, metadata_resize, &new_size); - if (r) + r = metadata_resize(era->md, &new_size); + if (r) { + DMERR("%s: metadata_resize failed", __func__); + return r; + } + + r = metadata_commit(era->md); + if (r) { + DMERR("%s: metadata_commit failed", __func__); return r; + } era->nr_blocks = new_size; } start_worker(era); - r = in_worker0(era, metadata_new_era); + r = in_worker0(era, metadata_era_rollover); if (r) { DMERR("%s: metadata_era_rollover failed", __func__); return r; --- linux-azure-5.8-5.8.0.orig/drivers/md/dm-integrity.c +++ linux-azure-5.8-5.8.0/drivers/md/dm-integrity.c @@ -257,8 +257,9 @@ bool journal_uptodate; bool just_formatted; bool recalculate_flag; - bool fix_padding; bool discard; + bool fix_padding; + bool legacy_recalculate; struct alg_spec internal_hash_alg; struct alg_spec journal_crypt_alg; @@ -386,6 +387,14 @@ return READ_ONCE(ic->failed); } +static bool dm_integrity_disable_recalculate(struct dm_integrity_c *ic) +{ + if ((ic->internal_hash_alg.key || ic->journal_mac_alg.key) && + !ic->legacy_recalculate) + return true; + return false; +} + static commit_id_t dm_integrity_commit_id(struct dm_integrity_c *ic, unsigned i, unsigned j, unsigned char seq) { @@ -1379,12 +1388,52 @@ #undef MAY_BE_HASH } -static void dm_integrity_flush_buffers(struct dm_integrity_c *ic) +struct flush_request { + struct dm_io_request io_req; + struct dm_io_region io_reg; + struct dm_integrity_c *ic; + struct completion comp; +}; + +static void flush_notify(unsigned long error, void *fr_) +{ + struct flush_request *fr = fr_; + if (unlikely(error != 0)) + dm_integrity_io_error(fr->ic, "flusing disk cache", -EIO); + complete(&fr->comp); +} + +static void dm_integrity_flush_buffers(struct dm_integrity_c *ic, bool flush_data) { int r; + + struct flush_request fr; + + if (!ic->meta_dev) + flush_data = false; + if (flush_data) { + fr.io_req.bi_op = REQ_OP_WRITE, + fr.io_req.bi_op_flags = REQ_PREFLUSH | REQ_SYNC, + fr.io_req.mem.type = DM_IO_KMEM, + fr.io_req.mem.ptr.addr = NULL, + fr.io_req.notify.fn = flush_notify, + fr.io_req.notify.context = &fr; + fr.io_req.client = dm_bufio_get_dm_io_client(ic->bufio), + fr.io_reg.bdev = ic->dev->bdev, + fr.io_reg.sector = 0, + fr.io_reg.count = 0, + fr.ic = ic; + init_completion(&fr.comp); + r = dm_io(&fr.io_req, 1, &fr.io_reg, NULL); + BUG_ON(r); + } + r = dm_bufio_write_dirty_buffers(ic->bufio); if (unlikely(r)) dm_integrity_io_error(ic, "writing tags", r); + + if (flush_data) + wait_for_completion(&fr.comp); } static void sleep_on_endio_wait(struct dm_integrity_c *ic) @@ -2110,7 +2159,7 @@ if (unlikely(dio->op == REQ_OP_DISCARD) && likely(ic->mode != 'D')) { integrity_metadata(&dio->work); - dm_integrity_flush_buffers(ic); + dm_integrity_flush_buffers(ic, false); dio->in_flight = (atomic_t)ATOMIC_INIT(1); dio->completion = NULL; @@ -2195,7 +2244,7 @@ flushes = bio_list_get(&ic->flush_bio_list); if (unlikely(ic->mode != 'J')) { spin_unlock_irq(&ic->endio_wait.lock); - dm_integrity_flush_buffers(ic); + dm_integrity_flush_buffers(ic, true); goto release_flush_bios; } @@ -2409,7 +2458,7 @@ complete_journal_op(&comp); wait_for_completion_io(&comp.comp); - dm_integrity_flush_buffers(ic); + dm_integrity_flush_buffers(ic, true); } static void integrity_writer(struct work_struct *w) @@ -2451,7 +2500,7 @@ { int r; - dm_integrity_flush_buffers(ic); + dm_integrity_flush_buffers(ic, false); if (dm_integrity_failed(ic)) return; @@ -2487,6 +2536,7 @@ range.logical_sector = le64_to_cpu(ic->sb->recalc_sector); if (unlikely(range.logical_sector >= ic->provided_data_sectors)) { if (ic->mode == 'B') { + block_bitmap_op(ic, ic->recalc_bitmap, 0, ic->provided_data_sectors, BITMAP_OP_CLEAR); DEBUG_print("queue_delayed_work: bitmap_flush_work\n"); queue_delayed_work(ic->commit_wq, &ic->bitmap_flush_work, 0); } @@ -2564,6 +2614,17 @@ goto err; } + if (ic->mode == 'B') { + sector_t start, end; + start = (range.logical_sector >> + (ic->sb->log2_sectors_per_block + ic->log2_blocks_per_bitmap_bit)) << + (ic->sb->log2_sectors_per_block + ic->log2_blocks_per_bitmap_bit); + end = ((range.logical_sector + range.n_sectors) >> + (ic->sb->log2_sectors_per_block + ic->log2_blocks_per_bitmap_bit)) << + (ic->sb->log2_sectors_per_block + ic->log2_blocks_per_bitmap_bit); + block_bitmap_op(ic, ic->recalc_bitmap, start, end - start, BITMAP_OP_CLEAR); + } + advance_and_next: cond_resched(); @@ -2642,7 +2703,7 @@ unsigned long limit; struct bio *bio; - dm_integrity_flush_buffers(ic); + dm_integrity_flush_buffers(ic, false); range.logical_sector = 0; range.n_sectors = ic->provided_data_sectors; @@ -2651,9 +2712,7 @@ add_new_range_and_wait(ic, &range); spin_unlock_irq(&ic->endio_wait.lock); - dm_integrity_flush_buffers(ic); - if (ic->meta_dev) - blkdev_issue_flush(ic->dev->bdev, GFP_NOIO); + dm_integrity_flush_buffers(ic, true); limit = ic->provided_data_sectors; if (ic->sb->flags & cpu_to_le32(SB_FLAG_RECALCULATING)) { @@ -2922,11 +2981,11 @@ if (ic->meta_dev) queue_work(ic->writer_wq, &ic->writer_work); drain_workqueue(ic->writer_wq); - dm_integrity_flush_buffers(ic); + dm_integrity_flush_buffers(ic, true); } if (ic->mode == 'B') { - dm_integrity_flush_buffers(ic); + dm_integrity_flush_buffers(ic, true); #if 1 /* set to 0 to test bitmap replay code */ init_journal(ic, 0, ic->journal_sections, 0); @@ -3090,6 +3149,7 @@ arg_count += !!ic->journal_crypt_alg.alg_string; arg_count += !!ic->journal_mac_alg.alg_string; arg_count += (ic->sb->flags & cpu_to_le32(SB_FLAG_FIXED_PADDING)) != 0; + arg_count += ic->legacy_recalculate; DMEMIT("%s %llu %u %c %u", ic->dev->name, ic->start, ic->tag_size, ic->mode, arg_count); if (ic->meta_dev) @@ -3113,6 +3173,8 @@ } if ((ic->sb->flags & cpu_to_le32(SB_FLAG_FIXED_PADDING)) != 0) DMEMIT(" fix_padding"); + if (ic->legacy_recalculate) + DMEMIT(" legacy_recalculate"); #define EMIT_ALG(a, n) \ do { \ @@ -3742,7 +3804,7 @@ unsigned extra_args; struct dm_arg_set as; static const struct dm_arg _args[] = { - {0, 9, "Invalid number of feature args"}, + {0, 16, "Invalid number of feature args"}, }; unsigned journal_sectors, interleave_sectors, buffer_sectors, journal_watermark, sync_msec; bool should_write_sb; @@ -3890,6 +3952,8 @@ ic->discard = true; } else if (!strcmp(opt_string, "fix_padding")) { ic->fix_padding = true; + } else if (!strcmp(opt_string, "legacy_recalculate")) { + ic->legacy_recalculate = true; } else { r = -EINVAL; ti->error = "Invalid argument"; @@ -4185,6 +4249,20 @@ r = -ENOMEM; goto bad; } + } else { + if (ic->sb->flags & cpu_to_le32(SB_FLAG_RECALCULATING)) { + ti->error = "Recalculate can only be specified with internal_hash"; + r = -EINVAL; + goto bad; + } + } + + if (ic->sb->flags & cpu_to_le32(SB_FLAG_RECALCULATING) && + le64_to_cpu(ic->sb->recalc_sector) < ic->provided_data_sectors && + dm_integrity_disable_recalculate(ic)) { + ti->error = "Recalculating with HMAC is disabled for security reasons - if you really need it, use the argument \"legacy_recalculate\""; + r = -EOPNOTSUPP; + goto bad; } ic->bufio = dm_bufio_client_create(ic->meta_dev ? ic->meta_dev->bdev : ic->dev->bdev, --- linux-azure-5.8-5.8.0.orig/drivers/md/dm-ioctl.c +++ linux-azure-5.8-5.8.0/drivers/md/dm-ioctl.c @@ -1600,6 +1600,7 @@ if (!argc) { DMWARN("Empty message received."); + r = -EINVAL; goto out_argv; } --- linux-azure-5.8-5.8.0.orig/drivers/md/dm-mpath.c +++ linux-azure-5.8-5.8.0/drivers/md/dm-mpath.c @@ -1247,17 +1247,25 @@ static void flush_multipath_work(struct multipath *m) { if (m->hw_handler_name) { - set_bit(MPATHF_PG_INIT_DISABLED, &m->flags); - smp_mb__after_atomic(); + unsigned long flags; + + if (!atomic_read(&m->pg_init_in_progress)) + goto skip; + + spin_lock_irqsave(&m->lock, flags); + if (atomic_read(&m->pg_init_in_progress) && + !test_and_set_bit(MPATHF_PG_INIT_DISABLED, &m->flags)) { + spin_unlock_irqrestore(&m->lock, flags); - if (atomic_read(&m->pg_init_in_progress)) flush_workqueue(kmpath_handlerd); - multipath_wait_for_pg_init_completion(m); + multipath_wait_for_pg_init_completion(m); - clear_bit(MPATHF_PG_INIT_DISABLED, &m->flags); - smp_mb__after_atomic(); + spin_lock_irqsave(&m->lock, flags); + clear_bit(MPATHF_PG_INIT_DISABLED, &m->flags); + } + spin_unlock_irqrestore(&m->lock, flags); } - +skip: if (m->queue_mode == DM_TYPE_BIO_BASED) flush_work(&m->process_queued_bios); flush_work(&m->trigger_event); --- linux-azure-5.8-5.8.0.orig/drivers/md/dm-raid.c +++ linux-azure-5.8-5.8.0/drivers/md/dm-raid.c @@ -3744,10 +3744,10 @@ blk_limits_io_opt(limits, chunk_size_bytes * mddev_data_stripes(rs)); /* - * RAID1 and RAID10 personalities require bio splitting, - * RAID0/4/5/6 don't and process large discard bios properly. + * RAID0 and RAID10 personalities require bio splitting, + * RAID1/4/5/6 don't and process large discard bios properly. */ - if (rs_is_raid1(rs) || rs_is_raid10(rs)) { + if (rs_is_raid0(rs) || rs_is_raid10(rs)) { limits->discard_granularity = chunk_size_bytes; limits->max_discard_sectors = rs->md.chunk_sectors; } --- linux-azure-5.8-5.8.0.orig/drivers/md/dm-rq.c +++ linux-azure-5.8-5.8.0/drivers/md/dm-rq.c @@ -70,9 +70,6 @@ void dm_stop_queue(struct request_queue *q) { - if (blk_mq_queue_stopped(q)) - return; - blk_mq_quiesce_queue(q); } --- linux-azure-5.8-5.8.0.orig/drivers/md/dm-snap.c +++ linux-azure-5.8-5.8.0/drivers/md/dm-snap.c @@ -141,6 +141,11 @@ * for them to be committed. */ struct bio_list bios_queued_during_merge; + + /* + * Flush data after merge. + */ + struct bio flush_bio; }; /* @@ -1121,6 +1126,17 @@ static void error_bios(struct bio *bio); +static int flush_data(struct dm_snapshot *s) +{ + struct bio *flush_bio = &s->flush_bio; + + bio_reset(flush_bio); + bio_set_dev(flush_bio, s->origin->bdev); + flush_bio->bi_opf = REQ_OP_WRITE | REQ_PREFLUSH; + + return submit_bio_wait(flush_bio); +} + static void merge_callback(int read_err, unsigned long write_err, void *context) { struct dm_snapshot *s = context; @@ -1134,6 +1150,11 @@ goto shut; } + if (flush_data(s) < 0) { + DMERR("Flush after merge failed: shutting down merge"); + goto shut; + } + if (s->store->type->commit_merge(s->store, s->num_merging_chunks) < 0) { DMERR("Write error in exception store: shutting down merge"); @@ -1318,6 +1339,7 @@ s->first_merging_chunk = 0; s->num_merging_chunks = 0; bio_list_init(&s->bios_queued_during_merge); + bio_init(&s->flush_bio, NULL, 0); /* Allocate hash table for COW data */ if (init_hash_tables(s)) { @@ -1504,6 +1526,8 @@ dm_exception_store_destroy(s->store); + bio_uninit(&s->flush_bio); + dm_put_device(ti, s->cow); dm_put_device(ti, s->origin); --- linux-azure-5.8-5.8.0.orig/drivers/md/dm-table.c +++ linux-azure-5.8-5.8.0/drivers/md/dm-table.c @@ -411,14 +411,23 @@ { int r; dev_t dev; + unsigned int major, minor; + char dummy; struct dm_dev_internal *dd; struct dm_table *t = ti->table; BUG_ON(!t); - dev = dm_get_dev_t(path); - if (!dev) - return -ENODEV; + if (sscanf(path, "%u:%u%c", &major, &minor, &dummy) == 2) { + /* Extract the major/minor numbers */ + dev = MKDEV(major, minor); + if (MAJOR(dev) != major || MINOR(dev) != minor) + return -EOVERFLOW; + } else { + dev = dm_get_dev_t(path); + if (!dev) + return -ENODEV; + } dd = find_device(&t->devices, dev); if (!dd) { @@ -865,10 +874,14 @@ int device_supports_dax(struct dm_target *ti, struct dm_dev *dev, sector_t start, sector_t len, void *data) { - int blocksize = *(int *) data; + int blocksize = *(int *) data, id; + bool rc; + + id = dax_read_lock(); + rc = dax_supported(dev->dax_dev, dev->bdev, blocksize, start, len); + dax_read_unlock(id); - return generic_fsdax_supported(dev->dax_dev, dev->bdev, blocksize, - start, len); + return rc; } /* Check devices support synchronous DAX */ @@ -1299,12 +1312,6 @@ void dm_table_event(struct dm_table *t) { - /* - * You can no longer call dm_table_event() from interrupt - * context, use a bottom half instead. - */ - BUG_ON(in_interrupt()); - mutex_lock(&_event_lock); if (t->event_fn) t->event_fn(t->event_context); --- linux-azure-5.8-5.8.0.orig/drivers/md/dm-thin-metadata.c +++ linux-azure-5.8-5.8.0/drivers/md/dm-thin-metadata.c @@ -739,12 +739,16 @@ THIN_MAX_CONCURRENT_LOCKS); if (IS_ERR(pmd->bm)) { DMERR("could not create block manager"); - return PTR_ERR(pmd->bm); + r = PTR_ERR(pmd->bm); + pmd->bm = NULL; + return r; } r = __open_or_format_metadata(pmd, format_device); - if (r) + if (r) { dm_block_manager_destroy(pmd->bm); + pmd->bm = NULL; + } return r; } @@ -954,7 +958,7 @@ } pmd_write_lock_in_core(pmd); - if (!dm_bm_is_read_only(pmd->bm) && !pmd->fail_io) { + if (!pmd->fail_io && !dm_bm_is_read_only(pmd->bm)) { r = __commit_transaction(pmd); if (r < 0) DMWARN("%s: __commit_transaction() failed, error = %d", --- linux-azure-5.8-5.8.0.orig/drivers/md/dm-verity-target.c +++ linux-azure-5.8-5.8.0/drivers/md/dm-verity-target.c @@ -534,6 +534,15 @@ } /* + * Skip verity work in response to I/O error when system is shutting down. + */ +static inline bool verity_is_system_shutting_down(void) +{ + return system_state == SYSTEM_HALT || system_state == SYSTEM_POWER_OFF + || system_state == SYSTEM_RESTART; +} + +/* * End one "io" structure with a given error. */ static void verity_finish_io(struct dm_verity_io *io, blk_status_t status) @@ -560,7 +569,8 @@ { struct dm_verity_io *io = bio->bi_private; - if (bio->bi_status && !verity_fec_is_enabled(io->v)) { + if (bio->bi_status && + (!verity_fec_is_enabled(io->v) || verity_is_system_shutting_down())) { verity_finish_io(io, bio->bi_status); return; } --- linux-azure-5.8-5.8.0.orig/drivers/md/dm-writecache.c +++ linux-azure-5.8-5.8.0/drivers/md/dm-writecache.c @@ -49,7 +49,7 @@ #define pmem_assign(dest, src) ((dest) = (src)) #endif -#if defined(__HAVE_ARCH_MEMCPY_MCSAFE) && defined(DM_WRITECACHE_HAS_PMEM) +#if IS_ENABLED(CONFIG_ARCH_HAS_COPY_MC) && defined(DM_WRITECACHE_HAS_PMEM) #define DM_WRITECACHE_HANDLE_HARDWARE_ERRORS #endif @@ -148,6 +148,7 @@ size_t metadata_sectors; size_t n_blocks; uint64_t seq_count; + sector_t data_device_sectors; void *block_start; struct wc_entry *entries; unsigned block_size; @@ -159,14 +160,22 @@ bool overwrote_committed:1; bool memory_vmapped:1; + bool start_sector_set:1; bool high_wm_percent_set:1; bool low_wm_percent_set:1; bool max_writeback_jobs_set:1; bool autocommit_blocks_set:1; bool autocommit_time_set:1; + bool max_age_set:1; bool writeback_fua_set:1; bool flush_on_suspend:1; bool cleaner:1; + bool cleaner_set:1; + + unsigned high_wm_percent_value; + unsigned low_wm_percent_value; + unsigned autocommit_time_value; + unsigned max_age_value; unsigned writeback_all; struct workqueue_struct *writeback_wq; @@ -231,6 +240,7 @@ pfn_t pfn; int id; struct page **pages; + sector_t offset; wc->memory_vmapped = false; @@ -245,9 +255,16 @@ goto err1; } + offset = get_start_sect(wc->ssd_dev->bdev); + if (offset & (PAGE_SIZE / 512 - 1)) { + r = -EINVAL; + goto err1; + } + offset >>= PAGE_SHIFT - 9; + id = dax_read_lock(); - da = dax_direct_access(wc->ssd_dev->dax_dev, 0, p, &wc->memory_map, &pfn); + da = dax_direct_access(wc->ssd_dev->dax_dev, offset, p, &wc->memory_map, &pfn); if (da < 0) { wc->memory_map = NULL; r = da; @@ -269,7 +286,7 @@ i = 0; do { long daa; - daa = dax_direct_access(wc->ssd_dev->dax_dev, i, p - i, + daa = dax_direct_access(wc->ssd_dev->dax_dev, offset + i, p - i, NULL, &pfn); if (daa <= 0) { r = daa ? daa : -EINVAL; @@ -311,7 +328,7 @@ #else static int persistent_memory_claim(struct dm_writecache *wc) { - BUG(); + return -EOPNOTSUPP; } #endif @@ -515,7 +532,7 @@ region.bdev = wc->ssd_dev->bdev; region.sector = 0; - region.count = PAGE_SIZE; + region.count = PAGE_SIZE >> SECTOR_SHIFT; if (unlikely(region.sector + region.count > wc->metadata_sectors)) region.count = wc->metadata_sectors - region.sector; @@ -961,6 +978,8 @@ wc_lock(wc); + wc->data_device_sectors = i_size_read(wc->dev->bdev->bd_inode) >> SECTOR_SHIFT; + if (WC_MODE_PMEM(wc)) { persistent_memory_invalidate_cache(wc->memory_map, wc->memory_map_size); } else { @@ -984,7 +1003,8 @@ } wc->freelist_size = 0; - r = memcpy_mcsafe(&sb_seq_count, &sb(wc)->seq_count, sizeof(uint64_t)); + r = copy_mc_to_kernel(&sb_seq_count, &sb(wc)->seq_count, + sizeof(uint64_t)); if (r) { writecache_error(wc, r, "hardware memory error when reading superblock: %d", r); sb_seq_count = cpu_to_le64(0); @@ -1000,7 +1020,8 @@ e->seq_count = -1; continue; } - r = memcpy_mcsafe(&wme, memory_entry(wc, e), sizeof(struct wc_memory_entry)); + r = copy_mc_to_kernel(&wme, memory_entry(wc, e), + sizeof(struct wc_memory_entry)); if (r) { writecache_error(wc, r, "hardware memory error when reading metadata entry %lu: %d", (unsigned long)b, r); @@ -1198,7 +1219,7 @@ if (rw == READ) { int r; - r = memcpy_mcsafe(buf, data, size); + r = copy_mc_to_kernel(buf, data, size); flush_dcache_page(bio_page(bio)); if (unlikely(r)) { writecache_error(wc, r, "hardware memory error when reading data: %d", r); @@ -1628,6 +1649,10 @@ void *address = memory_data(wc, e); persistent_memory_flush_cache(address, block_size); + + if (unlikely(bio_end_sector(&wb->bio) >= wc->data_device_sectors)) + return true; + return bio_add_page(&wb->bio, persistent_memory_page(address), block_size, persistent_memory_page_offset(address)) != 0; } @@ -1699,6 +1724,9 @@ if (writecache_has_error(wc)) { bio->bi_status = BLK_STS_IOERR; bio_endio(bio); + } else if (unlikely(!bio_sectors(bio))) { + bio->bi_status = BLK_STS_OK; + bio_endio(bio); } else { submit_bio(bio); } @@ -1742,6 +1770,14 @@ e = f; } + if (unlikely(to.sector + to.count > wc->data_device_sectors)) { + if (to.sector >= wc->data_device_sectors) { + writecache_copy_endio(0, 0, c); + continue; + } + from.count = to.count = wc->data_device_sectors - to.sector; + } + dm_kcopyd_copy(wc->dm_kcopyd, &from, 1, &to, 0, writecache_copy_endio, c); __writeback_throttle(wc, wbl); @@ -2031,7 +2067,7 @@ struct wc_memory_superblock s; static struct dm_arg _args[] = { - {0, 10, "Invalid number of feature args"}, + {0, 16, "Invalid number of feature args"}, }; as.argc = argc; @@ -2195,6 +2231,7 @@ if (sscanf(string, "%llu%c", &start_sector, &dummy) != 1) goto invalid_optional; wc->start_sector = start_sector; + wc->start_sector_set = true; if (wc->start_sector != start_sector || wc->start_sector >= wc->memory_map_size >> SECTOR_SHIFT) goto invalid_optional; @@ -2204,6 +2241,7 @@ goto invalid_optional; if (high_wm_percent < 0 || high_wm_percent > 100) goto invalid_optional; + wc->high_wm_percent_value = high_wm_percent; wc->high_wm_percent_set = true; } else if (!strcasecmp(string, "low_watermark") && opt_params >= 1) { string = dm_shift_arg(&as), opt_params--; @@ -2211,6 +2249,7 @@ goto invalid_optional; if (low_wm_percent < 0 || low_wm_percent > 100) goto invalid_optional; + wc->low_wm_percent_value = low_wm_percent; wc->low_wm_percent_set = true; } else if (!strcasecmp(string, "writeback_jobs") && opt_params >= 1) { string = dm_shift_arg(&as), opt_params--; @@ -2230,6 +2269,7 @@ if (autocommit_msecs > 3600000) goto invalid_optional; wc->autocommit_jiffies = msecs_to_jiffies(autocommit_msecs); + wc->autocommit_time_value = autocommit_msecs; wc->autocommit_time_set = true; } else if (!strcasecmp(string, "max_age") && opt_params >= 1) { unsigned max_age_msecs; @@ -2239,7 +2279,10 @@ if (max_age_msecs > 86400000) goto invalid_optional; wc->max_age = msecs_to_jiffies(max_age_msecs); + wc->max_age_set = true; + wc->max_age_value = max_age_msecs; } else if (!strcasecmp(string, "cleaner")) { + wc->cleaner_set = true; wc->cleaner = true; } else if (!strcasecmp(string, "fua")) { if (WC_MODE_PMEM(wc)) { @@ -2341,7 +2384,7 @@ } } - r = memcpy_mcsafe(&s, sb(wc), sizeof(struct wc_memory_superblock)); + r = copy_mc_to_kernel(&s, sb(wc), sizeof(struct wc_memory_superblock)); if (r) { ti->error = "Hardware memory error when reading superblock"; goto bad; @@ -2352,7 +2395,8 @@ ti->error = "Unable to initialize device"; goto bad; } - r = memcpy_mcsafe(&s, sb(wc), sizeof(struct wc_memory_superblock)); + r = copy_mc_to_kernel(&s, sb(wc), + sizeof(struct wc_memory_superblock)); if (r) { ti->error = "Hardware memory error when reading superblock"; goto bad; @@ -2444,7 +2488,6 @@ struct dm_writecache *wc = ti->private; unsigned extra_args; unsigned sz = 0; - uint64_t x; switch (type) { case STATUSTYPE_INFO: @@ -2456,11 +2499,11 @@ DMEMIT("%c %s %s %u ", WC_MODE_PMEM(wc) ? 'p' : 's', wc->dev->name, wc->ssd_dev->name, wc->block_size); extra_args = 0; - if (wc->start_sector) + if (wc->start_sector_set) extra_args += 2; - if (wc->high_wm_percent_set && !wc->cleaner) + if (wc->high_wm_percent_set) extra_args += 2; - if (wc->low_wm_percent_set && !wc->cleaner) + if (wc->low_wm_percent_set) extra_args += 2; if (wc->max_writeback_jobs_set) extra_args += 2; @@ -2468,35 +2511,29 @@ extra_args += 2; if (wc->autocommit_time_set) extra_args += 2; - if (wc->cleaner) + if (wc->max_age_set) + extra_args += 2; + if (wc->cleaner_set) extra_args++; if (wc->writeback_fua_set) extra_args++; DMEMIT("%u", extra_args); - if (wc->start_sector) + if (wc->start_sector_set) DMEMIT(" start_sector %llu", (unsigned long long)wc->start_sector); - if (wc->high_wm_percent_set && !wc->cleaner) { - x = (uint64_t)wc->freelist_high_watermark * 100; - x += wc->n_blocks / 2; - do_div(x, (size_t)wc->n_blocks); - DMEMIT(" high_watermark %u", 100 - (unsigned)x); - } - if (wc->low_wm_percent_set && !wc->cleaner) { - x = (uint64_t)wc->freelist_low_watermark * 100; - x += wc->n_blocks / 2; - do_div(x, (size_t)wc->n_blocks); - DMEMIT(" low_watermark %u", 100 - (unsigned)x); - } + if (wc->high_wm_percent_set) + DMEMIT(" high_watermark %u", wc->high_wm_percent_value); + if (wc->low_wm_percent_set) + DMEMIT(" low_watermark %u", wc->low_wm_percent_value); if (wc->max_writeback_jobs_set) DMEMIT(" writeback_jobs %u", wc->max_writeback_jobs); if (wc->autocommit_blocks_set) DMEMIT(" autocommit_blocks %u", wc->autocommit_blocks); if (wc->autocommit_time_set) - DMEMIT(" autocommit_time %u", jiffies_to_msecs(wc->autocommit_jiffies)); - if (wc->max_age != MAX_AGE_UNSPECIFIED) - DMEMIT(" max_age %u", jiffies_to_msecs(wc->max_age)); - if (wc->cleaner) + DMEMIT(" autocommit_time %u", wc->autocommit_time_value); + if (wc->max_age_set) + DMEMIT(" max_age %u", wc->max_age_value); + if (wc->cleaner_set) DMEMIT(" cleaner"); if (wc->writeback_fua_set) DMEMIT(" %sfua", wc->writeback_fua ? "" : "no"); @@ -2506,7 +2543,7 @@ static struct target_type writecache_target = { .name = "writecache", - .version = {1, 3, 0}, + .version = {1, 4, 0}, .module = THIS_MODULE, .ctr = writecache_ctr, .dtr = writecache_dtr, --- linux-azure-5.8-5.8.0.orig/drivers/md/dm.c +++ linux-azure-5.8-5.8.0/drivers/md/dm.c @@ -148,6 +148,16 @@ #define DM_NUMA_NODE NUMA_NO_NODE static int dm_numa_node = DM_NUMA_NODE; +#define DEFAULT_SWAP_BIOS (8 * 1048576 / PAGE_SIZE) +static int swap_bios = DEFAULT_SWAP_BIOS; +static int get_swap_bios(void) +{ + int latch = READ_ONCE(swap_bios); + if (unlikely(latch <= 0)) + latch = DEFAULT_SWAP_BIOS; + return latch; +} + /* * For mempools pre-allocation at the table loading time. */ @@ -491,8 +501,10 @@ return -EAGAIN; map = dm_get_live_table(md, &srcu_idx); - if (!map) - return -EIO; + if (!map) { + ret = -EIO; + goto out; + } do { struct dm_target *tgt; @@ -504,7 +516,8 @@ } args.tgt = tgt; - ret = tgt->type->report_zones(tgt, &args, nr_zones); + ret = tgt->type->report_zones(tgt, &args, + nr_zones - args.zone_idx); if (ret < 0) goto out; } while (args.zone_idx < nr_zones && @@ -521,7 +534,6 @@ static int dm_prepare_ioctl(struct mapped_device *md, int *srcu_idx, struct block_device **bdev) - __acquires(md->io_barrier) { struct dm_target *tgt; struct dm_table *map; @@ -555,7 +567,6 @@ } static void dm_unprepare_ioctl(struct mapped_device *md, int srcu_idx) - __releases(md->io_barrier) { dm_put_live_table(md, srcu_idx); } @@ -576,7 +587,7 @@ * subset of the parent bdev; require extra privileges. */ if (!capable(CAP_SYS_RAWIO)) { - DMWARN_LIMIT( + DMDEBUG_LIMIT( "%s: sending ioctl %x to DM device without required privilege.", current->comm, cmd); r = -ENOIOCTLCMD; @@ -982,6 +993,11 @@ limits->max_write_zeroes_sectors = 0; } +static bool swap_bios_limit(struct dm_target *ti, struct bio *bio) +{ + return unlikely((bio->bi_opf & REQ_SWAP) != 0) && unlikely(ti->limit_swap_bios); +} + static void clone_endio(struct bio *bio) { blk_status_t error = bio->bi_status; @@ -1032,6 +1048,11 @@ } } + if (unlikely(swap_bios_limit(tio->ti, bio))) { + struct mapped_device *md = io->md; + up(&md->swap_bios_semaphore); + } + free_tio(tio); dec_pending(io, error); } @@ -1135,15 +1156,16 @@ { struct mapped_device *md = dax_get_private(dax_dev); struct dm_table *map; + bool ret = false; int srcu_idx; - bool ret; map = dm_get_live_table(md, &srcu_idx); if (!map) - return false; + goto out; ret = dm_table_supports_dax(map, device_supports_dax, &blocksize); +out: dm_put_live_table(md, srcu_idx); return ret; @@ -1215,11 +1237,9 @@ * ->zero_page_range() is mandatory dax operation. If we are * here, something is wrong. */ - dm_put_live_table(md, srcu_idx); goto out; } ret = ti->type->dax_zero_page_range(ti, pgoff, nr_pages); - out: dm_put_live_table(md, srcu_idx); @@ -1267,6 +1287,22 @@ } EXPORT_SYMBOL_GPL(dm_accept_partial_bio); +static noinline void __set_swap_bios_limit(struct mapped_device *md, int latch) +{ + mutex_lock(&md->swap_bios_lock); + while (latch < md->swap_bios) { + cond_resched(); + down(&md->swap_bios_semaphore); + md->swap_bios--; + } + while (latch > md->swap_bios) { + cond_resched(); + up(&md->swap_bios_semaphore); + md->swap_bios++; + } + mutex_unlock(&md->swap_bios_lock); +} + static blk_qc_t __map_bio(struct dm_target_io *tio) { int r; @@ -1287,6 +1323,14 @@ atomic_inc(&io->io_count); sector = clone->bi_iter.bi_sector; + if (unlikely(swap_bios_limit(ti, clone))) { + struct mapped_device *md = io->md; + int latch = get_swap_bios(); + if (unlikely(latch != md->swap_bios)) + __set_swap_bios_limit(md, latch); + down(&md->swap_bios_semaphore); + } + r = ti->type->map(ti, clone); switch (r) { case DM_MAPIO_SUBMITTED: @@ -1301,10 +1345,18 @@ ret = generic_make_request(clone); break; case DM_MAPIO_KILL: + if (unlikely(swap_bios_limit(ti, clone))) { + struct mapped_device *md = io->md; + up(&md->swap_bios_semaphore); + } free_tio(tio); dec_pending(io, BLK_STS_IOERR); break; case DM_MAPIO_REQUEUE: + if (unlikely(swap_bios_limit(ti, clone))) { + struct mapped_device *md = io->md; + up(&md->swap_bios_semaphore); + } free_tio(tio); dec_pending(io, BLK_STS_DM_REQUEUE); break; @@ -1726,23 +1778,6 @@ return ret; } -static void dm_queue_split(struct mapped_device *md, struct dm_target *ti, struct bio **bio) -{ - unsigned len, sector_count; - - sector_count = bio_sectors(*bio); - len = min_t(sector_t, max_io_len((*bio)->bi_iter.bi_sector, ti), sector_count); - - if (sector_count > len) { - struct bio *split = bio_split(*bio, len, GFP_NOIO, &md->queue->bio_split); - - bio_chain(split, *bio); - trace_block_split(md->queue, split, (*bio)->bi_iter.bi_sector); - generic_make_request(*bio); - *bio = split; - } -} - static blk_qc_t dm_process_bio(struct mapped_device *md, struct dm_table *map, struct bio *bio) { @@ -1770,14 +1805,12 @@ if (current->bio_list) { if (is_abnormal_io(bio)) blk_queue_split(md->queue, &bio); - else - dm_queue_split(md, ti, &bio); + /* regular IO is split by __split_and_process_bio */ } if (dm_get_md_type(md) == DM_TYPE_NVME_BIO_BASED) return __process_bio(md, map, bio, ti); - else - return __split_and_process_bio(md, map, bio); + return __split_and_process_bio(md, map, bio); } static blk_qc_t dm_make_request(struct request_queue *q, struct bio *bio) @@ -1931,6 +1964,7 @@ mutex_destroy(&md->suspend_lock); mutex_destroy(&md->type_lock); mutex_destroy(&md->table_devices_lock); + mutex_destroy(&md->swap_bios_lock); dm_mq_cleanup_mapped_device(md); } @@ -1999,6 +2033,10 @@ init_waitqueue_head(&md->eventq); init_completion(&md->kobj_holder.completion); + md->swap_bios = get_swap_bios(); + sema_init(&md->swap_bios_semaphore, md->swap_bios); + mutex_init(&md->swap_bios_lock); + md->disk->major = _major; md->disk->first_minor = minor; md->disk->fops = &dm_blk_dops; @@ -3318,6 +3356,9 @@ module_param(dm_numa_node, int, S_IRUGO | S_IWUSR); MODULE_PARM_DESC(dm_numa_node, "NUMA node for DM device memory allocations"); +module_param(swap_bios, int, S_IRUGO | S_IWUSR); +MODULE_PARM_DESC(swap_bios, "Maximum allowed inflight swap IOs"); + MODULE_DESCRIPTION(DM_NAME " driver"); MODULE_AUTHOR("Joe Thornber "); MODULE_LICENSE("GPL"); --- linux-azure-5.8-5.8.0.orig/drivers/md/md-bitmap.c +++ linux-azure-5.8-5.8.0/drivers/md/md-bitmap.c @@ -1367,7 +1367,7 @@ if (bitmap->bp[page].hijacked || bitmap->bp[page].map == NULL) csize = ((sector_t)1) << (bitmap->chunkshift + - PAGE_COUNTER_SHIFT - 1); + PAGE_COUNTER_SHIFT); else csize = ((sector_t)1) << bitmap->chunkshift; *blocks = csize - (offset & (csize - 1)); @@ -1949,6 +1949,7 @@ } EXPORT_SYMBOL_GPL(md_bitmap_load); +/* caller need to free returned bitmap with md_bitmap_free() */ struct bitmap *get_bitmap_from_slot(struct mddev *mddev, int slot) { int rv = 0; @@ -2012,6 +2013,7 @@ md_bitmap_unplug(mddev->bitmap); *low = lo; *high = hi; + md_bitmap_free(bitmap); return rv; } @@ -2615,4 +2617,3 @@ .name = "bitmap", .attrs = md_bitmap_attrs, }; - --- linux-azure-5.8-5.8.0.orig/drivers/md/md-cluster.c +++ linux-azure-5.8-5.8.0/drivers/md/md-cluster.c @@ -664,9 +664,27 @@ * Takes the lock on the TOKEN lock resource so no other * node can communicate while the operation is underway. */ -static int lock_token(struct md_cluster_info *cinfo, bool mddev_locked) +static int lock_token(struct md_cluster_info *cinfo) { - int error, set_bit = 0; + int error; + + error = dlm_lock_sync(cinfo->token_lockres, DLM_LOCK_EX); + if (error) { + pr_err("md-cluster(%s:%d): failed to get EX on TOKEN (%d)\n", + __func__, __LINE__, error); + } else { + /* Lock the receive sequence */ + mutex_lock(&cinfo->recv_mutex); + } + return error; +} + +/* lock_comm() + * Sets the MD_CLUSTER_SEND_LOCK bit to lock the send channel. + */ +static int lock_comm(struct md_cluster_info *cinfo, bool mddev_locked) +{ + int rv, set_bit = 0; struct mddev *mddev = cinfo->mddev; /* @@ -677,34 +695,19 @@ */ if (mddev_locked && !test_bit(MD_CLUSTER_HOLDING_MUTEX_FOR_RECVD, &cinfo->state)) { - error = test_and_set_bit_lock(MD_CLUSTER_HOLDING_MUTEX_FOR_RECVD, + rv = test_and_set_bit_lock(MD_CLUSTER_HOLDING_MUTEX_FOR_RECVD, &cinfo->state); - WARN_ON_ONCE(error); + WARN_ON_ONCE(rv); md_wakeup_thread(mddev->thread); set_bit = 1; } - error = dlm_lock_sync(cinfo->token_lockres, DLM_LOCK_EX); - if (set_bit) - clear_bit_unlock(MD_CLUSTER_HOLDING_MUTEX_FOR_RECVD, &cinfo->state); - if (error) - pr_err("md-cluster(%s:%d): failed to get EX on TOKEN (%d)\n", - __func__, __LINE__, error); - - /* Lock the receive sequence */ - mutex_lock(&cinfo->recv_mutex); - return error; -} - -/* lock_comm() - * Sets the MD_CLUSTER_SEND_LOCK bit to lock the send channel. - */ -static int lock_comm(struct md_cluster_info *cinfo, bool mddev_locked) -{ wait_event(cinfo->wait, !test_and_set_bit(MD_CLUSTER_SEND_LOCK, &cinfo->state)); - - return lock_token(cinfo, mddev_locked); + rv = lock_token(cinfo); + if (set_bit) + clear_bit_unlock(MD_CLUSTER_HOLDING_MUTEX_FOR_RECVD, &cinfo->state); + return rv; } static void unlock_comm(struct md_cluster_info *cinfo) @@ -784,9 +787,11 @@ { int ret; - lock_comm(cinfo, mddev_locked); - ret = __sendmsg(cinfo, cmsg); - unlock_comm(cinfo); + ret = lock_comm(cinfo, mddev_locked); + if (!ret) { + ret = __sendmsg(cinfo, cmsg); + unlock_comm(cinfo); + } return ret; } @@ -1061,7 +1066,7 @@ return 0; } - ret = lock_token(cinfo, 1); + ret = lock_token(cinfo); clear_bit_unlock(MD_CLUSTER_HOLDING_MUTEX_FOR_RECVD, &cinfo->state); return ret; } @@ -1139,6 +1144,7 @@ bitmap = get_bitmap_from_slot(mddev, i); if (IS_ERR(bitmap)) { pr_err("can't get bitmap from slot %d\n", i); + bitmap = NULL; goto out; } counts = &bitmap->counts; @@ -1165,6 +1171,7 @@ * can't resize bitmap */ goto out; + md_bitmap_free(bitmap); } return 0; @@ -1253,7 +1260,10 @@ int raid_slot = -1; md_update_sb(mddev, 1); - lock_comm(cinfo, 1); + if (lock_comm(cinfo, 1)) { + pr_err("%s: lock_comm failed\n", __func__); + return; + } memset(&cmsg, 0, sizeof(cmsg)); cmsg.type = cpu_to_le32(METADATA_UPDATED); @@ -1405,7 +1415,8 @@ cmsg.type = cpu_to_le32(NEWDISK); memcpy(cmsg.uuid, uuid, 16); cmsg.raid_slot = cpu_to_le32(rdev->desc_nr); - lock_comm(cinfo, 1); + if (lock_comm(cinfo, 1)) + return -EAGAIN; ret = __sendmsg(cinfo, &cmsg); if (ret) { unlock_comm(cinfo); @@ -1518,6 +1529,7 @@ } } kfree(cinfo->other_bitmap_lockres); + cinfo->other_bitmap_lockres = NULL; } } --- linux-azure-5.8-5.8.0.orig/drivers/md/md.c +++ linux-azure-5.8-5.8.0/drivers/md/md.c @@ -463,24 +463,46 @@ } EXPORT_SYMBOL(md_handle_request); +struct md_io { + struct mddev *mddev; + bio_end_io_t *orig_bi_end_io; + void *orig_bi_private; + unsigned long start_time; +}; + +static void md_end_io(struct bio *bio) +{ + struct md_io *md_io = bio->bi_private; + struct mddev *mddev = md_io->mddev; + + disk_end_io_acct(mddev->gendisk, bio_op(bio), md_io->start_time); + + bio->bi_end_io = md_io->orig_bi_end_io; + bio->bi_private = md_io->orig_bi_private; + + mempool_free(md_io, &mddev->md_io_pool); + + if (bio->bi_end_io) + bio->bi_end_io(bio); +} + static blk_qc_t md_make_request(struct request_queue *q, struct bio *bio) { const int rw = bio_data_dir(bio); - const int sgrp = op_stat_group(bio_op(bio)); struct mddev *mddev = bio->bi_disk->private_data; - unsigned int sectors; - if (unlikely(test_bit(MD_BROKEN, &mddev->flags)) && (rw == WRITE)) { + if (mddev == NULL || mddev->pers == NULL) { bio_io_error(bio); return BLK_QC_T_NONE; } - blk_queue_split(q, &bio); - - if (mddev == NULL || mddev->pers == NULL) { + if (unlikely(test_bit(MD_BROKEN, &mddev->flags)) && (rw == WRITE)) { bio_io_error(bio); return BLK_QC_T_NONE; } + + blk_queue_split(q, &bio); + if (mddev->ro == 1 && unlikely(rw == WRITE)) { if (bio_sectors(bio) != 0) bio->bi_status = BLK_STS_IOERR; @@ -488,21 +510,27 @@ return BLK_QC_T_NONE; } - /* - * save the sectors now since our bio can - * go away inside make_request - */ - sectors = bio_sectors(bio); + if (bio->bi_end_io != md_end_io) { + struct md_io *md_io; + + md_io = mempool_alloc(&mddev->md_io_pool, GFP_NOIO); + md_io->mddev = mddev; + md_io->orig_bi_end_io = bio->bi_end_io; + md_io->orig_bi_private = bio->bi_private; + + bio->bi_end_io = md_end_io; + bio->bi_private = md_io; + + md_io->start_time = disk_start_io_acct(mddev->gendisk, + bio_sectors(bio), + bio_op(bio)); + } + /* bio could be mergeable after passing to underlayer */ bio->bi_opf &= ~REQ_NOMERGE; md_handle_request(mddev, bio); - part_stat_lock(); - part_stat_inc(&mddev->gendisk->part0, ios[sgrp]); - part_stat_add(&mddev->gendisk->part0, sectors[sgrp], sectors); - part_stat_unlock(); - return BLK_QC_T_NONE; } @@ -635,8 +663,10 @@ * could wait for this and below md_handle_request could wait for those * bios because of suspend check */ + spin_lock_irq(&mddev->lock); mddev->last_flush = mddev->start_flush; mddev->flush_bio = NULL; + spin_unlock_irq(&mddev->lock); wake_up(&mddev->sb_wait); if (bio->bi_iter.bi_size == 0) { @@ -5545,6 +5575,7 @@ bioset_exit(&mddev->bio_set); bioset_exit(&mddev->sync_set); + mempool_exit(&mddev->md_io_pool); kfree(mddev); } @@ -5640,6 +5671,11 @@ */ mddev->hold_active = UNTIL_STOP; + error = mempool_init_kmalloc_pool(&mddev->md_io_pool, BIO_POOL_SIZE, + sizeof(struct md_io)); + if (error) + goto abort; + error = -ENOMEM; mddev->queue = blk_alloc_queue(md_make_request, NUMA_NO_NODE); if (!mddev->queue) @@ -6884,8 +6920,10 @@ goto busy; kick_rdev: - if (mddev_is_clustered(mddev)) - md_cluster_ops->remove_disk(mddev, rdev); + if (mddev_is_clustered(mddev)) { + if (md_cluster_ops->remove_disk(mddev, rdev)) + goto busy; + } md_kick_rdev_from_array(rdev); set_bit(MD_SB_CHANGE_DEVS, &mddev->sb_flags); @@ -7215,6 +7253,7 @@ return -EINVAL; if (mddev->sync_thread || test_bit(MD_RECOVERY_RUNNING, &mddev->recovery) || + test_bit(MD_RESYNCING_REMOTE, &mddev->recovery) || mddev->reshape_position != MaxSector) return -EBUSY; @@ -7533,8 +7572,11 @@ err = -EBUSY; goto out; } - WARN_ON_ONCE(test_bit(MD_CLOSING, &mddev->flags)); - set_bit(MD_CLOSING, &mddev->flags); + if (test_and_set_bit(MD_CLOSING, &mddev->flags)) { + mutex_unlock(&mddev->open_mutex); + err = -EBUSY; + goto out; + } did_set_md_closing = true; mutex_unlock(&mddev->open_mutex); sync_blockdev(bdev); @@ -9488,7 +9530,7 @@ goto err_misc_wq; md_rdev_misc_wq = alloc_workqueue("md_rdev_misc", 0, 0); - if (!md_misc_wq) + if (!md_rdev_misc_wq) goto err_rdev_misc_wq; if ((ret = register_blkdev(MD_MAJOR, "md")) < 0) @@ -9586,8 +9628,11 @@ } } - if (mddev->raid_disks != le32_to_cpu(sb->raid_disks)) - update_raid_disks(mddev, le32_to_cpu(sb->raid_disks)); + if (mddev->raid_disks != le32_to_cpu(sb->raid_disks)) { + ret = update_raid_disks(mddev, le32_to_cpu(sb->raid_disks)); + if (ret) + pr_warn("md: updating array disks failed. %d\n", ret); + } /* * Since mddev->delta_disks has already updated in update_raid_disks, --- linux-azure-5.8-5.8.0.orig/drivers/md/md.h +++ linux-azure-5.8-5.8.0/drivers/md/md.h @@ -481,6 +481,7 @@ struct bio_set sync_set; /* for sync operations like * metadata and bitmap writes */ + mempool_t md_io_pool; /* Generic flush handling. * The last to finish preflush schedules a worker to submit --- linux-azure-5.8-5.8.0.orig/drivers/md/persistent-data/dm-block-manager.c +++ linux-azure-5.8-5.8.0/drivers/md/persistent-data/dm-block-manager.c @@ -493,7 +493,7 @@ void *p; int r; - if (bm->read_only) + if (dm_bm_is_read_only(bm)) return -EPERM; p = dm_bufio_read(bm->bufio, b, (struct dm_buffer **) result); @@ -562,7 +562,7 @@ struct buffer_aux *aux; void *p; - if (bm->read_only) + if (dm_bm_is_read_only(bm)) return -EPERM; p = dm_bufio_new(bm->bufio, b, (struct dm_buffer **) result); @@ -602,7 +602,7 @@ int dm_bm_flush(struct dm_block_manager *bm) { - if (bm->read_only) + if (dm_bm_is_read_only(bm)) return -EPERM; return dm_bufio_write_dirty_buffers(bm->bufio); @@ -616,19 +616,21 @@ bool dm_bm_is_read_only(struct dm_block_manager *bm) { - return bm->read_only; + return (bm ? bm->read_only : true); } EXPORT_SYMBOL_GPL(dm_bm_is_read_only); void dm_bm_set_read_only(struct dm_block_manager *bm) { - bm->read_only = true; + if (bm) + bm->read_only = true; } EXPORT_SYMBOL_GPL(dm_bm_set_read_only); void dm_bm_set_read_write(struct dm_block_manager *bm) { - bm->read_only = false; + if (bm) + bm->read_only = false; } EXPORT_SYMBOL_GPL(dm_bm_set_read_write); --- linux-azure-5.8-5.8.0.orig/drivers/md/raid0.c +++ linux-azure-5.8-5.8.0/drivers/md/raid0.c @@ -152,11 +152,12 @@ default_layout == RAID0_ALT_MULTIZONE_LAYOUT) { conf->layout = default_layout; } else { - pr_err("md/raid0:%s: cannot assemble multi-zone RAID0 with default_layout setting\n", + conf->layout = RAID0_ALT_MULTIZONE_LAYOUT; + pr_warn("md/raid0:%s: !!! DEFAULTING TO ALTERNATE LAYOUT !!!\n", mdname(mddev)); - pr_err("md/raid0: please set raid0.default_layout to 1 or 2\n"); - err = -ENOTSUPP; - goto abort; + pr_warn("md/raid0: Please set raid0.default_layout to 1 or 2\n"); + pr_warn("md/raid0: Read the following page for more information:\n"); + pr_warn("md/raid0: https://wiki.ubuntu.com/Kernel/Raid0LayoutMigration\n"); } /* * now since we have the hard sector sizes, we can make sure --- linux-azure-5.8-5.8.0.orig/drivers/md/raid10.c +++ linux-azure-5.8-5.8.0/drivers/md/raid10.c @@ -1145,7 +1145,7 @@ struct md_rdev *err_rdev = NULL; gfp_t gfp = GFP_NOIO; - if (r10_bio->devs[slot].rdev) { + if (slot >= 0 && r10_bio->devs[slot].rdev) { /* * This is an error retry, but we cannot * safely dereference the rdev in the r10_bio, @@ -1510,6 +1510,7 @@ r10_bio->mddev = mddev; r10_bio->sector = bio->bi_iter.bi_sector; r10_bio->state = 0; + r10_bio->read_slot = -1; memset(r10_bio->devs, 0, sizeof(r10_bio->devs[0]) * conf->copies); if (bio_data_dir(bio) == READ) --- linux-azure-5.8-5.8.0.orig/drivers/md/raid5.c +++ linux-azure-5.8-5.8.0/drivers/md/raid5.c @@ -2410,8 +2410,6 @@ } else err = -ENOMEM; - mutex_unlock(&conf->cache_size_mutex); - conf->slab_cache = sc; conf->active_name = 1-conf->active_name; @@ -2434,6 +2432,8 @@ if (!err) conf->pool_size = newsize; + mutex_unlock(&conf->cache_size_mutex); + return err; } @@ -3607,6 +3607,7 @@ * is missing/faulty, then we need to read everything we can. */ if (sh->raid_conf->level != 6 && + sh->raid_conf->rmw_level != PARITY_DISABLE_RMW && sh->sector < sh->raid_conf->mddev->recovery_cp) /* reconstruct-write isn't being forced */ return 0; @@ -4842,7 +4843,7 @@ * or to load a block that is being partially written. */ if (s.to_read || s.non_overwrite - || (conf->level == 6 && s.to_write && s.failed) + || (s.to_write && s.failed) || (s.syncing && (s.uptodate + s.compute < disks)) || s.replacing || s.expanding) --- linux-azure-5.8-5.8.0.orig/drivers/media/cec/core/cec-adap.c +++ linux-azure-5.8-5.8.0/drivers/media/cec/core/cec-adap.c @@ -1199,7 +1199,7 @@ /* Cancel the pending timeout work */ if (!cancel_delayed_work(&data->work)) { mutex_unlock(&adap->lock); - flush_scheduled_work(); + cancel_delayed_work_sync(&data->work); mutex_lock(&adap->lock); } /* --- linux-azure-5.8-5.8.0.orig/drivers/media/cec/core/cec-api.c +++ linux-azure-5.8-5.8.0/drivers/media/cec/core/cec-api.c @@ -147,7 +147,13 @@ struct cec_log_addrs log_addrs; mutex_lock(&adap->lock); - log_addrs = adap->log_addrs; + /* + * We use memcpy here instead of assignment since there is a + * hole at the end of struct cec_log_addrs that an assignment + * might ignore. So when we do copy_to_user() we could leak + * one byte of memory. + */ + memcpy(&log_addrs, &adap->log_addrs, sizeof(log_addrs)); if (!adap->is_configured) memset(log_addrs.log_addr, CEC_LOG_ADDR_INVALID, sizeof(log_addrs.log_addr)); --- linux-azure-5.8-5.8.0.orig/drivers/media/cec/platform/Makefile +++ linux-azure-5.8-5.8.0/drivers/media/cec/platform/Makefile @@ -10,5 +10,6 @@ obj-$(CONFIG_CEC_SAMSUNG_S5P) += s5p/ obj-$(CONFIG_CEC_SECO) += seco/ obj-$(CONFIG_CEC_STI) += sti/ +obj-$(CONFIG_CEC_STM32) += stm32/ obj-$(CONFIG_CEC_TEGRA) += tegra/ --- linux-azure-5.8-5.8.0.orig/drivers/media/cec/platform/cros-ec/cros-ec-cec.c +++ linux-azure-5.8-5.8.0/drivers/media/cec/platform/cros-ec/cros-ec-cec.c @@ -277,11 +277,7 @@ platform_set_drvdata(pdev, cros_ec_cec); cros_ec_cec->cros_ec = cros_ec; - ret = device_init_wakeup(&pdev->dev, 1); - if (ret) { - dev_err(&pdev->dev, "failed to initialize wakeup\n"); - return ret; - } + device_init_wakeup(&pdev->dev, 1); cros_ec_cec->adap = cec_allocate_adapter(&cros_ec_cec_ops, cros_ec_cec, DRV_NAME, --- linux-azure-5.8-5.8.0.orig/drivers/media/cec/usb/pulse8/pulse8-cec.c +++ linux-azure-5.8-5.8.0/drivers/media/cec/usb/pulse8/pulse8-cec.c @@ -88,13 +88,15 @@ MSGCODE_SET_PHYSICAL_ADDRESS, /* 0x20 */ MSGCODE_GET_DEVICE_TYPE, MSGCODE_SET_DEVICE_TYPE, - MSGCODE_GET_HDMI_VERSION, + MSGCODE_GET_HDMI_VERSION, /* Removed in FW >= 10 */ MSGCODE_SET_HDMI_VERSION, MSGCODE_GET_OSD_NAME, MSGCODE_SET_OSD_NAME, MSGCODE_WRITE_EEPROM, MSGCODE_GET_ADAPTER_TYPE, /* 0x28 */ MSGCODE_SET_ACTIVE_SOURCE, + MSGCODE_GET_AUTO_POWER_ON, /* New for FW >= 10 */ + MSGCODE_SET_AUTO_POWER_ON, MSGCODE_FRAME_EOM = 0x80, MSGCODE_FRAME_ACK = 0x40, @@ -143,6 +145,8 @@ "WRITE_EEPROM", "GET_ADAPTER_TYPE", "SET_ACTIVE_SOURCE", + "GET_AUTO_POWER_ON", + "SET_AUTO_POWER_ON", }; static const char *pulse8_msgname(u8 cmd) @@ -579,12 +583,14 @@ if (err) goto unlock; - cmd[0] = MSGCODE_SET_HDMI_VERSION; - cmd[1] = adap->log_addrs.cec_version; - err = pulse8_send_and_wait(pulse8, cmd, 2, - MSGCODE_COMMAND_ACCEPTED, 0); - if (err) - goto unlock; + if (pulse8->vers < 10) { + cmd[0] = MSGCODE_SET_HDMI_VERSION; + cmd[1] = adap->log_addrs.cec_version; + err = pulse8_send_and_wait(pulse8, cmd, 2, + MSGCODE_COMMAND_ACCEPTED, 0); + if (err) + goto unlock; + } if (adap->log_addrs.osd_name[0]) { size_t osd_len = strlen(adap->log_addrs.osd_name); @@ -650,7 +656,6 @@ struct pulse8 *pulse8 = serio_get_drvdata(serio); cec_unregister_adapter(pulse8->adap); - pulse8->serio = NULL; serio_set_drvdata(serio, NULL); serio_close(serio); } @@ -692,6 +697,14 @@ dev_dbg(pulse8->dev, "Autonomous mode: %s", data[0] ? "on" : "off"); + if (pulse8->vers >= 10) { + cmd[0] = MSGCODE_GET_AUTO_POWER_ON; + err = pulse8_send_and_wait(pulse8, cmd, 1, cmd[0], 1); + if (!err) + dev_dbg(pulse8->dev, "Auto Power On: %s", + data[0] ? "on" : "off"); + } + cmd[0] = MSGCODE_GET_DEVICE_TYPE; err = pulse8_send_and_wait(pulse8, cmd, 1, cmd[0], 1); if (err) @@ -753,12 +766,15 @@ dev_dbg(pulse8->dev, "Physical address: %x.%x.%x.%x\n", cec_phys_addr_exp(*pa)); - cmd[0] = MSGCODE_GET_HDMI_VERSION; - err = pulse8_send_and_wait(pulse8, cmd, 1, cmd[0], 1); - if (err) - return err; - log_addrs->cec_version = data[0]; - dev_dbg(pulse8->dev, "CEC version: %d\n", log_addrs->cec_version); + log_addrs->cec_version = CEC_OP_CEC_VERSION_1_4; + if (pulse8->vers < 10) { + cmd[0] = MSGCODE_GET_HDMI_VERSION; + err = pulse8_send_and_wait(pulse8, cmd, 1, cmd[0], 1); + if (err) + return err; + log_addrs->cec_version = data[0]; + dev_dbg(pulse8->dev, "CEC version: %d\n", log_addrs->cec_version); + } cmd[0] = MSGCODE_GET_OSD_NAME; err = pulse8_send_and_wait(pulse8, cmd, 1, cmd[0], 0); @@ -830,8 +846,10 @@ pulse8->adap = cec_allocate_adapter(&pulse8_cec_adap_ops, pulse8, dev_name(&serio->dev), caps, 1); err = PTR_ERR_OR_ZERO(pulse8->adap); - if (err < 0) - goto free_device; + if (err < 0) { + kfree(pulse8); + return err; + } pulse8->dev = &serio->dev; serio_set_drvdata(serio, pulse8); @@ -874,8 +892,6 @@ serio_close(serio); delete_adap: cec_delete_adapter(pulse8->adap); -free_device: - kfree(pulse8); return err; } --- linux-azure-5.8-5.8.0.orig/drivers/media/common/siano/smsdvb-main.c +++ linux-azure-5.8-5.8.0/drivers/media/common/siano/smsdvb-main.c @@ -1169,12 +1169,15 @@ rc = dvb_create_media_graph(&client->adapter, true); if (rc < 0) { pr_err("dvb_create_media_graph failed %d\n", rc); - goto client_error; + goto media_graph_error; } pr_info("DVB interface registered.\n"); return 0; +media_graph_error: + smsdvb_debugfs_release(client); + client_error: dvb_unregister_frontend(&client->frontend); --- linux-azure-5.8-5.8.0.orig/drivers/media/firewire/firedtv-fw.c +++ linux-azure-5.8-5.8.0/drivers/media/firewire/firedtv-fw.c @@ -272,6 +272,10 @@ name_len = fw_csr_string(unit->directory, CSR_MODEL, name, sizeof(name)); + if (name_len < 0) { + err = name_len; + goto fail_free; + } for (i = ARRAY_SIZE(model_names); --i; ) if (strlen(model_names[i]) <= name_len && strncmp(name, model_names[i], name_len) == 0) --- linux-azure-5.8-5.8.0.orig/drivers/media/i2c/Kconfig +++ linux-azure-5.8-5.8.0/drivers/media/i2c/Kconfig @@ -728,7 +728,7 @@ config VIDEO_IMX214 tristate "Sony IMX214 sensor support" depends on GPIOLIB && I2C && VIDEO_V4L2 - depends on V4L2_FWNODE + select V4L2_FWNODE select MEDIA_CONTROLLER select VIDEO_V4L2_SUBDEV_API select REGMAP_I2C --- linux-azure-5.8-5.8.0.orig/drivers/media/i2c/imx214.c +++ linux-azure-5.8-5.8.0/drivers/media/i2c/imx214.c @@ -786,7 +786,7 @@ if (ret < 0) goto err_rpm_put; } else { - ret = imx214_start_streaming(imx214); + ret = imx214_stop_streaming(imx214); if (ret < 0) goto err_rpm_put; pm_runtime_put(imx214->dev); --- linux-azure-5.8-5.8.0.orig/drivers/media/i2c/imx219.c +++ linux-azure-5.8-5.8.0/drivers/media/i2c/imx219.c @@ -473,8 +473,8 @@ .width = 3280, .height = 2464, .crop = { - .left = 0, - .top = 0, + .left = IMX219_PIXEL_ARRAY_LEFT, + .top = IMX219_PIXEL_ARRAY_TOP, .width = 3280, .height = 2464 }, @@ -489,8 +489,8 @@ .width = 1920, .height = 1080, .crop = { - .left = 680, - .top = 692, + .left = 688, + .top = 700, .width = 1920, .height = 1080 }, @@ -505,8 +505,8 @@ .width = 1640, .height = 1232, .crop = { - .left = 0, - .top = 0, + .left = IMX219_PIXEL_ARRAY_LEFT, + .top = IMX219_PIXEL_ARRAY_TOP, .width = 3280, .height = 2464 }, @@ -521,8 +521,8 @@ .width = 640, .height = 480, .crop = { - .left = 1000, - .top = 752, + .left = 1008, + .top = 760, .width = 1280, .height = 960 }, @@ -1008,6 +1008,7 @@ return 0; case V4L2_SEL_TGT_CROP_DEFAULT: + case V4L2_SEL_TGT_CROP_BOUNDS: sel->r.top = IMX219_PIXEL_ARRAY_TOP; sel->r.left = IMX219_PIXEL_ARRAY_LEFT; sel->r.width = IMX219_PIXEL_ARRAY_WIDTH; --- linux-azure-5.8-5.8.0.orig/drivers/media/i2c/imx274.c +++ linux-azure-5.8-5.8.0/drivers/media/i2c/imx274.c @@ -1235,6 +1235,8 @@ ret = imx274_set_frame_interval(imx274, fi->interval); if (!ret) { + fi->interval = imx274->frame_interval; + /* * exposure time range is decided by frame interval * need to update it after frame interval changes @@ -1730,9 +1732,9 @@ __func__, frame_interval.numerator, frame_interval.denominator); - if (frame_interval.numerator == 0) { - err = -EINVAL; - goto fail; + if (frame_interval.numerator == 0 || frame_interval.denominator == 0) { + frame_interval.denominator = IMX274_DEF_FRAME_RATE; + frame_interval.numerator = 1; } req_frame_rate = (u32)(frame_interval.denominator --- linux-azure-5.8-5.8.0.orig/drivers/media/i2c/imx290.c +++ linux-azure-5.8-5.8.0/drivers/media/i2c/imx290.c @@ -628,7 +628,7 @@ } usleep_range(1, 2); - gpiod_set_value_cansleep(imx290->rst_gpio, 1); + gpiod_set_value_cansleep(imx290->rst_gpio, 0); usleep_range(30000, 31000); return 0; @@ -641,7 +641,7 @@ struct imx290 *imx290 = to_imx290(sd); clk_disable_unprepare(imx290->xclk); - gpiod_set_value_cansleep(imx290->rst_gpio, 0); + gpiod_set_value_cansleep(imx290->rst_gpio, 1); regulator_bulk_disable(IMX290_NUM_SUPPLIES, imx290->supplies); return 0; @@ -760,7 +760,8 @@ goto free_err; } - imx290->rst_gpio = devm_gpiod_get_optional(dev, "reset", GPIOD_ASIS); + imx290->rst_gpio = devm_gpiod_get_optional(dev, "reset", + GPIOD_OUT_HIGH); if (IS_ERR(imx290->rst_gpio)) { dev_err(dev, "Cannot get reset gpio\n"); ret = PTR_ERR(imx290->rst_gpio); --- linux-azure-5.8-5.8.0.orig/drivers/media/i2c/m5mols/m5mols_core.c +++ linux-azure-5.8-5.8.0/drivers/media/i2c/m5mols/m5mols_core.c @@ -764,7 +764,8 @@ ret = regulator_bulk_enable(ARRAY_SIZE(supplies), supplies); if (ret) { - info->set_power(&client->dev, 0); + if (info->set_power) + info->set_power(&client->dev, 0); return ret; } --- linux-azure-5.8-5.8.0.orig/drivers/media/i2c/max2175.c +++ linux-azure-5.8-5.8.0/drivers/media/i2c/max2175.c @@ -503,7 +503,7 @@ } } -static bool max2175_set_csm_mode(struct max2175 *ctx, +static int max2175_set_csm_mode(struct max2175 *ctx, enum max2175_csm_mode new_mode) { int ret = max2175_poll_csm_ready(ctx); --- linux-azure-5.8-5.8.0.orig/drivers/media/i2c/ov5640.c +++ linux-azure-5.8-5.8.0/drivers/media/i2c/ov5640.c @@ -34,6 +34,8 @@ #define OV5640_REG_SYS_RESET02 0x3002 #define OV5640_REG_SYS_CLOCK_ENABLE02 0x3006 #define OV5640_REG_SYS_CTRL0 0x3008 +#define OV5640_REG_SYS_CTRL0_SW_PWDN 0x42 +#define OV5640_REG_SYS_CTRL0_SW_PWUP 0x02 #define OV5640_REG_CHIP_ID 0x300a #define OV5640_REG_IO_MIPI_CTRL00 0x300e #define OV5640_REG_PAD_OUTPUT_ENABLE01 0x3017 @@ -274,8 +276,7 @@ /* YUV422 UYVY VGA@30fps */ static const struct reg_value ov5640_init_setting_30fps_VGA[] = { {0x3103, 0x11, 0, 0}, {0x3008, 0x82, 0, 5}, {0x3008, 0x42, 0, 0}, - {0x3103, 0x03, 0, 0}, {0x3017, 0x00, 0, 0}, {0x3018, 0x00, 0, 0}, - {0x3630, 0x36, 0, 0}, + {0x3103, 0x03, 0, 0}, {0x3630, 0x36, 0, 0}, {0x3631, 0x0e, 0, 0}, {0x3632, 0xe2, 0, 0}, {0x3633, 0x12, 0, 0}, {0x3621, 0xe0, 0, 0}, {0x3704, 0xa0, 0, 0}, {0x3703, 0x5a, 0, 0}, {0x3715, 0x78, 0, 0}, {0x3717, 0x01, 0, 0}, {0x370b, 0x60, 0, 0}, @@ -751,7 +752,7 @@ * +->| PLL Root Div | - reg 0x3037, bit 4 * +-+------------+ * | +---------+ - * +->| Bit Div | - reg 0x3035, bits 0-3 + * +->| Bit Div | - reg 0x3034, bits 0-3 * +-+-------+ * | +-------------+ * +->| SCLK Div | - reg 0x3108, bits 0-1 @@ -1120,6 +1121,12 @@ val = regs->val; mask = regs->mask; + /* remain in power down mode for DVP */ + if (regs->reg_addr == OV5640_REG_SYS_CTRL0 && + val == OV5640_REG_SYS_CTRL0_SW_PWUP && + sensor->ep.bus_type != V4L2_MBUS_CSI2_DPHY) + continue; + if (mask) ret = ov5640_mod_reg(sensor, reg_addr, mask, val); else @@ -1275,31 +1282,9 @@ if (ret) return ret; - /* - * enable VSYNC/HREF/PCLK DVP control lines - * & D[9:6] DVP data lines - * - * PAD OUTPUT ENABLE 01 - * - 6: VSYNC output enable - * - 5: HREF output enable - * - 4: PCLK output enable - * - [3:0]: D[9:6] output enable - */ - ret = ov5640_write_reg(sensor, - OV5640_REG_PAD_OUTPUT_ENABLE01, - on ? 0x7f : 0); - if (ret) - return ret; - - /* - * enable D[5:0] DVP data lines - * - * PAD OUTPUT ENABLE 02 - * - [7:2]: D[5:0] output enable - */ - return ov5640_write_reg(sensor, - OV5640_REG_PAD_OUTPUT_ENABLE02, - on ? 0xfc : 0); + return ov5640_write_reg(sensor, OV5640_REG_SYS_CTRL0, on ? + OV5640_REG_SYS_CTRL0_SW_PWUP : + OV5640_REG_SYS_CTRL0_SW_PWDN); } static int ov5640_set_stream_mipi(struct ov5640_dev *sensor, bool on) @@ -2001,6 +1986,95 @@ clk_disable_unprepare(sensor->xclk); } +static int ov5640_set_power_mipi(struct ov5640_dev *sensor, bool on) +{ + int ret; + + if (!on) { + /* Reset MIPI bus settings to their default values. */ + ov5640_write_reg(sensor, OV5640_REG_IO_MIPI_CTRL00, 0x58); + ov5640_write_reg(sensor, OV5640_REG_MIPI_CTRL00, 0x04); + ov5640_write_reg(sensor, OV5640_REG_PAD_OUTPUT00, 0x00); + return 0; + } + + /* + * Power up MIPI HS Tx and LS Rx; 2 data lanes mode + * + * 0x300e = 0x40 + * [7:5] = 010 : 2 data lanes mode (see FIXME note in + * "ov5640_set_stream_mipi()") + * [4] = 0 : Power up MIPI HS Tx + * [3] = 0 : Power up MIPI LS Rx + * [2] = 0 : MIPI interface disabled + */ + ret = ov5640_write_reg(sensor, OV5640_REG_IO_MIPI_CTRL00, 0x40); + if (ret) + return ret; + + /* + * Gate clock and set LP11 in 'no packets mode' (idle) + * + * 0x4800 = 0x24 + * [5] = 1 : Gate clock when 'no packets' + * [2] = 1 : MIPI bus in LP11 when 'no packets' + */ + ret = ov5640_write_reg(sensor, OV5640_REG_MIPI_CTRL00, 0x24); + if (ret) + return ret; + + /* + * Set data lanes and clock in LP11 when 'sleeping' + * + * 0x3019 = 0x70 + * [6] = 1 : MIPI data lane 2 in LP11 when 'sleeping' + * [5] = 1 : MIPI data lane 1 in LP11 when 'sleeping' + * [4] = 1 : MIPI clock lane in LP11 when 'sleeping' + */ + ret = ov5640_write_reg(sensor, OV5640_REG_PAD_OUTPUT00, 0x70); + if (ret) + return ret; + + /* Give lanes some time to coax into LP11 state. */ + usleep_range(500, 1000); + + return 0; +} + +static int ov5640_set_power_dvp(struct ov5640_dev *sensor, bool on) +{ + int ret; + + if (!on) { + /* Reset settings to their default values. */ + ov5640_write_reg(sensor, OV5640_REG_PAD_OUTPUT_ENABLE01, 0x00); + ov5640_write_reg(sensor, OV5640_REG_PAD_OUTPUT_ENABLE02, 0x00); + return 0; + } + + /* + * enable VSYNC/HREF/PCLK DVP control lines + * & D[9:6] DVP data lines + * + * PAD OUTPUT ENABLE 01 + * - 6: VSYNC output enable + * - 5: HREF output enable + * - 4: PCLK output enable + * - [3:0]: D[9:6] output enable + */ + ret = ov5640_write_reg(sensor, OV5640_REG_PAD_OUTPUT_ENABLE01, 0x7f); + if (ret) + return ret; + + /* + * enable D[5:0] DVP data lines + * + * PAD OUTPUT ENABLE 02 + * - [7:2]: D[5:0] output enable + */ + return ov5640_write_reg(sensor, OV5640_REG_PAD_OUTPUT_ENABLE02, 0xfc); +} + static int ov5640_set_power(struct ov5640_dev *sensor, bool on) { int ret = 0; @@ -2013,67 +2087,17 @@ ret = ov5640_restore_mode(sensor); if (ret) goto power_off; + } - /* We're done here for DVP bus, while CSI-2 needs setup. */ - if (sensor->ep.bus_type != V4L2_MBUS_CSI2_DPHY) - return 0; - - /* - * Power up MIPI HS Tx and LS Rx; 2 data lanes mode - * - * 0x300e = 0x40 - * [7:5] = 010 : 2 data lanes mode (see FIXME note in - * "ov5640_set_stream_mipi()") - * [4] = 0 : Power up MIPI HS Tx - * [3] = 0 : Power up MIPI LS Rx - * [2] = 0 : MIPI interface disabled - */ - ret = ov5640_write_reg(sensor, - OV5640_REG_IO_MIPI_CTRL00, 0x40); - if (ret) - goto power_off; - - /* - * Gate clock and set LP11 in 'no packets mode' (idle) - * - * 0x4800 = 0x24 - * [5] = 1 : Gate clock when 'no packets' - * [2] = 1 : MIPI bus in LP11 when 'no packets' - */ - ret = ov5640_write_reg(sensor, - OV5640_REG_MIPI_CTRL00, 0x24); - if (ret) - goto power_off; - - /* - * Set data lanes and clock in LP11 when 'sleeping' - * - * 0x3019 = 0x70 - * [6] = 1 : MIPI data lane 2 in LP11 when 'sleeping' - * [5] = 1 : MIPI data lane 1 in LP11 when 'sleeping' - * [4] = 1 : MIPI clock lane in LP11 when 'sleeping' - */ - ret = ov5640_write_reg(sensor, - OV5640_REG_PAD_OUTPUT00, 0x70); - if (ret) - goto power_off; - - /* Give lanes some time to coax into LP11 state. */ - usleep_range(500, 1000); - - } else { - if (sensor->ep.bus_type == V4L2_MBUS_CSI2_DPHY) { - /* Reset MIPI bus settings to their default values. */ - ov5640_write_reg(sensor, - OV5640_REG_IO_MIPI_CTRL00, 0x58); - ov5640_write_reg(sensor, - OV5640_REG_MIPI_CTRL00, 0x04); - ov5640_write_reg(sensor, - OV5640_REG_PAD_OUTPUT00, 0x00); - } + if (sensor->ep.bus_type == V4L2_MBUS_CSI2_DPHY) + ret = ov5640_set_power_mipi(sensor, on); + else + ret = ov5640_set_power_dvp(sensor, on); + if (ret) + goto power_off; + if (!on) ov5640_set_power_off(sensor); - } return 0; --- linux-azure-5.8-5.8.0.orig/drivers/media/i2c/ov5670.c +++ linux-azure-5.8-5.8.0/drivers/media/i2c/ov5670.c @@ -2084,7 +2084,8 @@ /* By default, V4L2_CID_PIXEL_RATE is read only */ ov5670->pixel_rate = v4l2_ctrl_new_std(ctrl_hdlr, &ov5670_ctrl_ops, - V4L2_CID_PIXEL_RATE, 0, + V4L2_CID_PIXEL_RATE, + link_freq_configs[0].pixel_rate, link_freq_configs[0].pixel_rate, 1, link_freq_configs[0].pixel_rate); --- linux-azure-5.8-5.8.0.orig/drivers/media/i2c/tc358743.c +++ linux-azure-5.8-5.8.0/drivers/media/i2c/tc358743.c @@ -919,8 +919,8 @@ .adap_monitor_all_enable = tc358743_cec_adap_monitor_all_enable, }; -static void tc358743_cec_isr(struct v4l2_subdev *sd, u16 intstatus, - bool *handled) +static void tc358743_cec_handler(struct v4l2_subdev *sd, u16 intstatus, + bool *handled) { struct tc358743_state *state = to_state(sd); unsigned int cec_rxint, cec_txint; @@ -953,7 +953,8 @@ cec_transmit_attempt_done(state->cec_adap, CEC_TX_STATUS_ERROR); } - *handled = true; + if (handled) + *handled = true; } if ((intstatus & MASK_CEC_RINT) && (cec_rxint & MASK_CECRIEND)) { @@ -968,7 +969,8 @@ msg.msg[i] = v & 0xff; } cec_received_msg(state->cec_adap, &msg); - *handled = true; + if (handled) + *handled = true; } i2c_wr16(sd, INTSTATUS, intstatus & (MASK_CEC_RINT | MASK_CEC_TINT)); @@ -1432,7 +1434,7 @@ #ifdef CONFIG_VIDEO_TC358743_CEC if (intstatus & (MASK_CEC_RINT | MASK_CEC_TINT)) { - tc358743_cec_isr(sd, intstatus, handled); + tc358743_cec_handler(sd, intstatus, handled); i2c_wr16(sd, INTSTATUS, intstatus & (MASK_CEC_RINT | MASK_CEC_TINT)); intstatus &= ~(MASK_CEC_RINT | MASK_CEC_TINT); @@ -1461,7 +1463,7 @@ static irqreturn_t tc358743_irq_handler(int irq, void *dev_id) { struct tc358743_state *state = dev_id; - bool handled; + bool handled = false; tc358743_isr(&state->sd, 0, &handled); --- linux-azure-5.8-5.8.0.orig/drivers/media/i2c/tvp5150.c +++ linux-azure-5.8-5.8.0/drivers/media/i2c/tvp5150.c @@ -1664,8 +1664,10 @@ return 0; err: - for (i = 0; i < decoder->connectors_num; i++) + for (i = 0; i < decoder->connectors_num; i++) { media_device_unregister_entity(&decoder->connectors[i].ent); + media_entity_cleanup(&decoder->connectors[i].ent); + } return ret; #endif @@ -2079,6 +2081,7 @@ ep_np = of_graph_get_endpoint_by_regs(np, TVP5150_PAD_VID_OUT, 0); if (!ep_np) { + ret = -EINVAL; dev_err(dev, "Error no output endpoint available\n"); goto err_free; } @@ -2248,8 +2251,10 @@ for (i = 0; i < decoder->connectors_num; i++) v4l2_fwnode_connector_free(&decoder->connectors[i].base); - for (i = 0; i < decoder->connectors_num; i++) + for (i = 0; i < decoder->connectors_num; i++) { media_device_unregister_entity(&decoder->connectors[i].ent); + media_entity_cleanup(&decoder->connectors[i].ent); + } v4l2_async_unregister_subdev(sd); v4l2_ctrl_handler_free(&decoder->hdl); pm_runtime_disable(&c->dev); --- linux-azure-5.8-5.8.0.orig/drivers/media/mc/mc-request.c +++ linux-azure-5.8-5.8.0/drivers/media/mc/mc-request.c @@ -296,9 +296,18 @@ if (WARN_ON(!mdev->ops->req_alloc ^ !mdev->ops->req_free)) return -ENOMEM; + if (mdev->ops->req_alloc) + req = mdev->ops->req_alloc(mdev); + else + req = kzalloc(sizeof(*req), GFP_KERNEL); + if (!req) + return -ENOMEM; + fd = get_unused_fd_flags(O_CLOEXEC); - if (fd < 0) - return fd; + if (fd < 0) { + ret = fd; + goto err_free_req; + } filp = anon_inode_getfile("request", &request_fops, NULL, O_CLOEXEC); if (IS_ERR(filp)) { @@ -306,15 +315,6 @@ goto err_put_fd; } - if (mdev->ops->req_alloc) - req = mdev->ops->req_alloc(mdev); - else - req = kzalloc(sizeof(*req), GFP_KERNEL); - if (!req) { - ret = -ENOMEM; - goto err_fput; - } - filp->private_data = req; req->mdev = mdev; req->state = MEDIA_REQUEST_STATE_IDLE; @@ -336,12 +336,15 @@ return 0; -err_fput: - fput(filp); - err_put_fd: put_unused_fd(fd); +err_free_req: + if (mdev->ops->req_free) + mdev->ops->req_free(req); + else + kfree(req); + return ret; } --- linux-azure-5.8-5.8.0.orig/drivers/media/pci/bt8xx/bttv-driver.c +++ linux-azure-5.8-5.8.0/drivers/media/pci/bt8xx/bttv-driver.c @@ -4013,11 +4013,13 @@ btv->id = dev->device; if (pci_enable_device(dev)) { pr_warn("%d: Can't enable device\n", btv->c.nr); - return -EIO; + result = -EIO; + goto free_mem; } if (pci_set_dma_mask(dev, DMA_BIT_MASK(32))) { pr_warn("%d: No suitable DMA available\n", btv->c.nr); - return -EIO; + result = -EIO; + goto free_mem; } if (!request_mem_region(pci_resource_start(dev,0), pci_resource_len(dev,0), @@ -4025,7 +4027,8 @@ pr_warn("%d: can't request iomem (0x%llx)\n", btv->c.nr, (unsigned long long)pci_resource_start(dev, 0)); - return -EBUSY; + result = -EBUSY; + goto free_mem; } pci_set_master(dev); pci_set_command(dev); @@ -4211,6 +4214,10 @@ release_mem_region(pci_resource_start(btv->c.pci,0), pci_resource_len(btv->c.pci,0)); pci_disable_device(btv->c.pci); + +free_mem: + bttvs[btv->c.nr] = NULL; + kfree(btv); return result; } --- linux-azure-5.8-5.8.0.orig/drivers/media/pci/cx25821/cx25821-core.c +++ linux-azure-5.8-5.8.0/drivers/media/pci/cx25821/cx25821-core.c @@ -976,8 +976,10 @@ __le32 *cpu; dma_addr_t dma = 0; - if (NULL != risc->cpu && risc->size < size) + if (risc->cpu && risc->size < size) { pci_free_consistent(pci, risc->size, risc->cpu, risc->dma); + risc->cpu = NULL; + } if (NULL == risc->cpu) { cpu = pci_zalloc_consistent(pci, size, &dma); if (NULL == cpu) --- linux-azure-5.8-5.8.0.orig/drivers/media/pci/intel/ipu3/Kconfig +++ linux-azure-5.8-5.8.0/drivers/media/pci/intel/ipu3/Kconfig @@ -2,7 +2,8 @@ config VIDEO_IPU3_CIO2 tristate "Intel ipu3-cio2 driver" depends on VIDEO_V4L2 && PCI - depends on (X86 && ACPI) || COMPILE_TEST + depends on ACPI || COMPILE_TEST + depends on X86 select MEDIA_CONTROLLER select VIDEO_V4L2_SUBDEV_API select V4L2_FWNODE --- linux-azure-5.8-5.8.0.orig/drivers/media/pci/intel/ipu3/ipu3-cio2.c +++ linux-azure-5.8-5.8.0/drivers/media/pci/intel/ipu3/ipu3-cio2.c @@ -799,6 +799,7 @@ atomic_dec(&q->bufs_queued); vb2_buffer_done(&q->bufs[i]->vbb.vb2_buf, state); + q->bufs[i] = NULL; } } } @@ -1243,29 +1244,15 @@ struct v4l2_subdev_format *fmt) { struct cio2_queue *q = container_of(sd, struct cio2_queue, subdev); - struct v4l2_subdev_format format; - int ret; - - if (fmt->which == V4L2_SUBDEV_FORMAT_TRY) { - fmt->format = *v4l2_subdev_get_try_format(sd, cfg, fmt->pad); - return 0; - } - if (fmt->pad == CIO2_PAD_SINK) { - format.which = V4L2_SUBDEV_FORMAT_ACTIVE; - ret = v4l2_subdev_call(sd, pad, get_fmt, NULL, - &format); + mutex_lock(&q->subdev_lock); - if (ret) - return ret; - /* update colorspace etc */ - q->subdev_fmt.colorspace = format.format.colorspace; - q->subdev_fmt.ycbcr_enc = format.format.ycbcr_enc; - q->subdev_fmt.quantization = format.format.quantization; - q->subdev_fmt.xfer_func = format.format.xfer_func; - } + if (fmt->which == V4L2_SUBDEV_FORMAT_TRY) + fmt->format = *v4l2_subdev_get_try_format(sd, cfg, fmt->pad); + else + fmt->format = q->subdev_fmt; - fmt->format = q->subdev_fmt; + mutex_unlock(&q->subdev_lock); return 0; } @@ -1282,6 +1269,9 @@ struct v4l2_subdev_format *fmt) { struct cio2_queue *q = container_of(sd, struct cio2_queue, subdev); + struct v4l2_mbus_framefmt *mbus; + u32 mbus_code = fmt->format.code; + unsigned int i; /* * Only allow setting sink pad format; @@ -1290,16 +1280,29 @@ if (fmt->pad == CIO2_PAD_SOURCE) return cio2_subdev_get_fmt(sd, cfg, fmt); - if (fmt->which == V4L2_SUBDEV_FORMAT_TRY) { - *v4l2_subdev_get_try_format(sd, cfg, fmt->pad) = fmt->format; - } else { - /* It's the sink, allow changing frame size */ - q->subdev_fmt.width = fmt->format.width; - q->subdev_fmt.height = fmt->format.height; - q->subdev_fmt.code = fmt->format.code; - fmt->format = q->subdev_fmt; + if (fmt->which == V4L2_SUBDEV_FORMAT_TRY) + mbus = v4l2_subdev_get_try_format(sd, cfg, fmt->pad); + else + mbus = &q->subdev_fmt; + + fmt->format.code = formats[0].mbus_code; + + for (i = 0; i < ARRAY_SIZE(formats); i++) { + if (formats[i].mbus_code == mbus_code) { + fmt->format.code = mbus_code; + break; + } } + fmt->format.width = min_t(u32, fmt->format.width, CIO2_IMAGE_MAX_WIDTH); + fmt->format.height = min_t(u32, fmt->format.height, + CIO2_IMAGE_MAX_LENGTH); + fmt->format.field = V4L2_FIELD_NONE; + + mutex_lock(&q->subdev_lock); + *mbus = fmt->format; + mutex_unlock(&q->subdev_lock); + return 0; } @@ -1558,6 +1561,7 @@ /* Initialize miscellaneous variables */ mutex_init(&q->lock); + mutex_init(&q->subdev_lock); /* Initialize formats to default values */ fmt = &q->subdev_fmt; @@ -1676,6 +1680,7 @@ fail_subdev_media_entity: cio2_fbpt_exit(q, &cio2->pci_dev->dev); fail_fbpt: + mutex_destroy(&q->subdev_lock); mutex_destroy(&q->lock); return r; @@ -1689,6 +1694,7 @@ v4l2_device_unregister_subdev(&q->subdev); media_entity_cleanup(&q->subdev.entity); cio2_fbpt_exit(q, &cio2->pci_dev->dev); + mutex_destroy(&q->subdev_lock); mutex_destroy(&q->lock); } --- linux-azure-5.8-5.8.0.orig/drivers/media/pci/intel/ipu3/ipu3-cio2.h +++ linux-azure-5.8-5.8.0/drivers/media/pci/intel/ipu3/ipu3-cio2.h @@ -332,6 +332,7 @@ /* Subdev, /dev/v4l-subdevX */ struct v4l2_subdev subdev; + struct mutex subdev_lock; /* Serialise acces to subdev_fmt field */ struct media_pad subdev_pads[CIO2_PADS]; struct v4l2_mbus_framefmt subdev_fmt; atomic_t frame_sequence; --- linux-azure-5.8-5.8.0.orig/drivers/media/pci/netup_unidvb/netup_unidvb_spi.c +++ linux-azure-5.8-5.8.0/drivers/media/pci/netup_unidvb/netup_unidvb_spi.c @@ -175,7 +175,7 @@ struct spi_master *master; struct netup_spi *nspi; - master = spi_alloc_master(&ndev->pci_dev->dev, + master = devm_spi_alloc_master(&ndev->pci_dev->dev, sizeof(struct netup_spi)); if (!master) { dev_err(&ndev->pci_dev->dev, @@ -208,6 +208,7 @@ ndev->pci_slot, ndev->pci_func); if (!spi_new_device(master, &netup_spi_board)) { + spi_unregister_master(master); ndev->spi = NULL; dev_err(&ndev->pci_dev->dev, "%s(): unable to create SPI device\n", __func__); @@ -226,13 +227,13 @@ if (!spi) return; + spi_unregister_master(spi->master); spin_lock_irqsave(&spi->lock, flags); reg = readw(&spi->regs->control_stat); writew(reg | NETUP_SPI_CTRL_IRQ, &spi->regs->control_stat); reg = readw(&spi->regs->control_stat); writew(reg & ~NETUP_SPI_CTRL_IMASK, &spi->regs->control_stat); spin_unlock_irqrestore(&spi->lock, flags); - spi_unregister_master(spi->master); ndev->spi = NULL; } --- linux-azure-5.8-5.8.0.orig/drivers/media/pci/saa7134/saa7134-empress.c +++ linux-azure-5.8-5.8.0/drivers/media/pci/saa7134/saa7134-empress.c @@ -282,8 +282,11 @@ q->lock = &dev->lock; q->dev = &dev->pci->dev; err = vb2_queue_init(q); - if (err) + if (err) { + video_device_release(dev->empress_dev); + dev->empress_dev = NULL; return err; + } dev->empress_dev->queue = q; dev->empress_dev->device_caps = V4L2_CAP_READWRITE | V4L2_CAP_STREAMING | V4L2_CAP_VIDEO_CAPTURE; --- linux-azure-5.8-5.8.0.orig/drivers/media/pci/saa7134/saa7134-tvaudio.c +++ linux-azure-5.8-5.8.0/drivers/media/pci/saa7134/saa7134-tvaudio.c @@ -683,7 +683,8 @@ { int err; - audio_dbg(2, "dsp write reg 0x%x = 0x%06x\n", reg << 2, value); + audio_dbg(2, "dsp write reg 0x%x = 0x%06x\n", + (reg << 2) & 0xffffffff, value); err = saa_dsp_wait_bit(dev,SAA7135_DSP_RWSTATE_WRR); if (err < 0) return err; --- linux-azure-5.8-5.8.0.orig/drivers/media/pci/saa7146/mxb.c +++ linux-azure-5.8-5.8.0/drivers/media/pci/saa7146/mxb.c @@ -641,16 +641,17 @@ struct mxb *mxb = (struct mxb *)dev->ext_priv; DEB_D("VIDIOC_S_AUDIO %d\n", a->index); - if (mxb_inputs[mxb->cur_input].audioset & (1 << a->index)) { - if (mxb->cur_audinput != a->index) { - mxb->cur_audinput = a->index; - tea6420_route(mxb, a->index); - if (mxb->cur_audinput == 0) - mxb_update_audmode(mxb); - } - return 0; + if (a->index >= 32 || + !(mxb_inputs[mxb->cur_input].audioset & (1 << a->index))) + return -EINVAL; + + if (mxb->cur_audinput != a->index) { + mxb->cur_audinput = a->index; + tea6420_route(mxb, a->index); + if (mxb->cur_audinput == 0) + mxb_update_audmode(mxb); } - return -EINVAL; + return 0; } #ifdef CONFIG_VIDEO_ADV_DEBUG --- linux-azure-5.8-5.8.0.orig/drivers/media/pci/smipcie/smipcie-ir.c +++ linux-azure-5.8-5.8.0/drivers/media/pci/smipcie/smipcie-ir.c @@ -60,39 +60,45 @@ { struct smi_dev *dev = ir->dev; struct rc_dev *rc_dev = ir->rc_dev; - u32 dwIRControl, dwIRData; - u8 index, ucIRCount, readLoop; + u32 control, data; + u8 index, ir_count, read_loop; - dwIRControl = smi_read(IR_Init_Reg); + control = smi_read(IR_Init_Reg); - if (dwIRControl & rbIRVld) { - ucIRCount = (u8) smi_read(IR_Data_Cnt); + dev_dbg(&rc_dev->dev, "ircontrol: 0x%08x\n", control); - readLoop = ucIRCount/4; - if (ucIRCount % 4) - readLoop += 1; - for (index = 0; index < readLoop; index++) { - dwIRData = smi_read(IR_DATA_BUFFER_BASE + (index * 4)); - - ir->irData[index*4 + 0] = (u8)(dwIRData); - ir->irData[index*4 + 1] = (u8)(dwIRData >> 8); - ir->irData[index*4 + 2] = (u8)(dwIRData >> 16); - ir->irData[index*4 + 3] = (u8)(dwIRData >> 24); + if (control & rbIRVld) { + ir_count = (u8)smi_read(IR_Data_Cnt); + + dev_dbg(&rc_dev->dev, "ircount %d\n", ir_count); + + read_loop = ir_count / 4; + if (ir_count % 4) + read_loop += 1; + for (index = 0; index < read_loop; index++) { + data = smi_read(IR_DATA_BUFFER_BASE + (index * 4)); + dev_dbg(&rc_dev->dev, "IRData 0x%08x\n", data); + + ir->irData[index * 4 + 0] = (u8)(data); + ir->irData[index * 4 + 1] = (u8)(data >> 8); + ir->irData[index * 4 + 2] = (u8)(data >> 16); + ir->irData[index * 4 + 3] = (u8)(data >> 24); } - smi_raw_process(rc_dev, ir->irData, ucIRCount); - smi_set(IR_Init_Reg, rbIRVld); + smi_raw_process(rc_dev, ir->irData, ir_count); } - if (dwIRControl & rbIRhighidle) { + if (control & rbIRhighidle) { struct ir_raw_event rawir = {}; + dev_dbg(&rc_dev->dev, "high idle\n"); + rawir.pulse = 0; rawir.duration = US_TO_NS(SMI_SAMPLE_PERIOD * SMI_SAMPLE_IDLEMIN); ir_raw_event_store_with_filter(rc_dev, &rawir); - smi_set(IR_Init_Reg, rbIRhighidle); } + smi_set(IR_Init_Reg, rbIRVld); ir_raw_event_handle(rc_dev); } @@ -151,7 +157,7 @@ rc_dev->dev.parent = &dev->pci_dev->dev; rc_dev->map_name = dev->info->rc_map; - rc_dev->timeout = MS_TO_NS(100); + rc_dev->timeout = US_TO_NS(SMI_SAMPLE_PERIOD * SMI_SAMPLE_IDLEMIN); rc_dev->rx_resolution = US_TO_NS(SMI_SAMPLE_PERIOD); ir->rc_dev = rc_dev; @@ -174,7 +180,7 @@ struct smi_rc *ir = &dev->ir; struct rc_dev *rc_dev = ir->rc_dev; - smi_ir_stop(ir); rc_unregister_device(rc_dev); + smi_ir_stop(ir); ir->rc_dev = NULL; } --- linux-azure-5.8-5.8.0.orig/drivers/media/pci/solo6x10/solo6x10-g723.c +++ linux-azure-5.8-5.8.0/drivers/media/pci/solo6x10/solo6x10-g723.c @@ -385,7 +385,7 @@ ret = snd_ctl_add(card, snd_ctl_new1(&kctl, solo_dev)); if (ret < 0) - return ret; + goto snd_error; ret = solo_snd_pcm_init(solo_dev); if (ret < 0) --- linux-azure-5.8-5.8.0.orig/drivers/media/pci/ttpci/av7110.c +++ linux-azure-5.8-5.8.0/drivers/media/pci/ttpci/av7110.c @@ -406,14 +406,15 @@ case DATA_CI_GET: { u8 *data = av7110->debi_virt; + u8 data_0 = data[0]; - if ((data[0] < 2) && data[2] == 0xff) { + if (data_0 < 2 && data[2] == 0xff) { int flags = 0; if (data[5] > 0) flags |= CA_CI_MODULE_PRESENT; if (data[5] > 5) flags |= CA_CI_MODULE_READY; - av7110->ci_slot[data[0]].flags = flags; + av7110->ci_slot[data_0].flags = flags; } else ci_get_data(&av7110->ci_rbuffer, av7110->debi_virt, --- linux-azure-5.8-5.8.0.orig/drivers/media/pci/ttpci/budget-core.c +++ linux-azure-5.8-5.8.0/drivers/media/pci/ttpci/budget-core.c @@ -369,20 +369,25 @@ ret = dvbdemux->dmx.add_frontend(&dvbdemux->dmx, &budget->hw_frontend); if (ret < 0) - return ret; + goto err_release_dmx; budget->mem_frontend.source = DMX_MEMORY_FE; ret = dvbdemux->dmx.add_frontend(&dvbdemux->dmx, &budget->mem_frontend); if (ret < 0) - return ret; + goto err_release_dmx; ret = dvbdemux->dmx.connect_frontend(&dvbdemux->dmx, &budget->hw_frontend); if (ret < 0) - return ret; + goto err_release_dmx; dvb_net_init(&budget->dvb_adapter, &budget->dvb_net, &dvbdemux->dmx); return 0; + +err_release_dmx: + dvb_dmxdev_release(&budget->dmxdev); + dvb_dmx_release(&budget->demux); + return ret; } static void budget_unregister(struct budget *budget) --- linux-azure-5.8-5.8.0.orig/drivers/media/pci/tw5864/tw5864-video.c +++ linux-azure-5.8-5.8.0/drivers/media/pci/tw5864/tw5864-video.c @@ -767,6 +767,9 @@ fintv->type = V4L2_FRMIVAL_TYPE_STEPWISE; ret = tw5864_frameinterval_get(input, &frameinterval); + if (ret) + return ret; + fintv->stepwise.step = frameinterval; fintv->stepwise.min = frameinterval; fintv->stepwise.max = frameinterval; @@ -785,6 +788,9 @@ cp->capability = V4L2_CAP_TIMEPERFRAME; ret = tw5864_frameinterval_get(input, &cp->timeperframe); + if (ret) + return ret; + cp->timeperframe.numerator *= input->frame_interval; cp->capturemode = 0; cp->readbuffers = 2; --- linux-azure-5.8-5.8.0.orig/drivers/media/platform/aspeed-video.c +++ linux-azure-5.8-5.8.0/drivers/media/platform/aspeed-video.c @@ -1551,12 +1551,12 @@ V4L2_JPEG_CHROMA_SUBSAMPLING_420, mask, V4L2_JPEG_CHROMA_SUBSAMPLING_444); - if (video->ctrl_handler.error) { + rc = video->ctrl_handler.error; + if (rc) { v4l2_ctrl_handler_free(&video->ctrl_handler); v4l2_device_unregister(v4l2_dev); - dev_err(video->dev, "Failed to init controls: %d\n", - video->ctrl_handler.error); + dev_err(video->dev, "Failed to init controls: %d\n", rc); return rc; } --- linux-azure-5.8-5.8.0.orig/drivers/media/platform/coda/coda-jpeg.c +++ linux-azure-5.8-5.8.0/drivers/media/platform/coda/coda-jpeg.c @@ -327,8 +327,11 @@ "only 8-bit quantization tables supported\n"); continue; } - if (!ctx->params.jpeg_qmat_tab[i]) + if (!ctx->params.jpeg_qmat_tab[i]) { ctx->params.jpeg_qmat_tab[i] = kmalloc(64, GFP_KERNEL); + if (!ctx->params.jpeg_qmat_tab[i]) + return -ENOMEM; + } memcpy(ctx->params.jpeg_qmat_tab[i], quantization_tables[i].start, 64); } --- linux-azure-5.8-5.8.0.orig/drivers/media/platform/davinci/vpif_capture.c +++ linux-azure-5.8-5.8.0/drivers/media/platform/davinci/vpif_capture.c @@ -1482,8 +1482,6 @@ /* Unregister video device */ video_unregister_device(&ch->video_dev); } - kfree(vpif_obj.sd); - v4l2_device_unregister(&vpif_obj.v4l2_dev); return err; } --- linux-azure-5.8-5.8.0.orig/drivers/media/platform/davinci/vpss.c +++ linux-azure-5.8-5.8.0/drivers/media/platform/davinci/vpss.c @@ -505,19 +505,31 @@ static int __init vpss_init(void) { + int ret; + if (!request_mem_region(VPSS_CLK_CTRL, 4, "vpss_clock_control")) return -EBUSY; oper_cfg.vpss_regs_base2 = ioremap(VPSS_CLK_CTRL, 4); if (unlikely(!oper_cfg.vpss_regs_base2)) { - release_mem_region(VPSS_CLK_CTRL, 4); - return -ENOMEM; + ret = -ENOMEM; + goto err_ioremap; } writel(VPSS_CLK_CTRL_VENCCLKEN | - VPSS_CLK_CTRL_DACCLKEN, oper_cfg.vpss_regs_base2); + VPSS_CLK_CTRL_DACCLKEN, oper_cfg.vpss_regs_base2); + + ret = platform_driver_register(&vpss_driver); + if (ret) + goto err_pd_register; + + return 0; - return platform_driver_register(&vpss_driver); +err_pd_register: + iounmap(oper_cfg.vpss_regs_base2); +err_ioremap: + release_mem_region(VPSS_CLK_CTRL, 4); + return ret; } subsys_initcall(vpss_init); module_exit(vpss_exit); --- linux-azure-5.8-5.8.0.orig/drivers/media/platform/exynos4-is/fimc-isp.c +++ linux-azure-5.8-5.8.0/drivers/media/platform/exynos4-is/fimc-isp.c @@ -305,8 +305,10 @@ if (on) { ret = pm_runtime_get_sync(&is->pdev->dev); - if (ret < 0) + if (ret < 0) { + pm_runtime_put(&is->pdev->dev); return ret; + } set_bit(IS_ST_PWR_ON, &is->state); ret = fimc_is_start_firmware(is); --- linux-azure-5.8-5.8.0.orig/drivers/media/platform/exynos4-is/fimc-lite.c +++ linux-azure-5.8-5.8.0/drivers/media/platform/exynos4-is/fimc-lite.c @@ -470,7 +470,7 @@ set_bit(ST_FLITE_IN_USE, &fimc->state); ret = pm_runtime_get_sync(&fimc->pdev->dev); if (ret < 0) - goto unlock; + goto err_pm; ret = v4l2_fh_open(file); if (ret < 0) --- linux-azure-5.8-5.8.0.orig/drivers/media/platform/exynos4-is/media-dev.c +++ linux-azure-5.8-5.8.0/drivers/media/platform/exynos4-is/media-dev.c @@ -484,8 +484,10 @@ return -ENXIO; ret = pm_runtime_get_sync(fmd->pmf); - if (ret < 0) + if (ret < 0) { + pm_runtime_put(fmd->pmf); return ret; + } fmd->num_sensors = 0; @@ -1268,6 +1270,7 @@ if (IS_ERR(pctl->state_default)) return PTR_ERR(pctl->state_default); + /* PINCTRL_STATE_IDLE is optional */ pctl->state_idle = pinctrl_lookup_state(pctl->pinctrl, PINCTRL_STATE_IDLE); return 0; --- linux-azure-5.8-5.8.0.orig/drivers/media/platform/exynos4-is/mipi-csis.c +++ linux-azure-5.8-5.8.0/drivers/media/platform/exynos4-is/mipi-csis.c @@ -510,8 +510,10 @@ if (enable) { s5pcsis_clear_counters(state); ret = pm_runtime_get_sync(&state->pdev->dev); - if (ret && ret != 1) + if (ret && ret != 1) { + pm_runtime_put_noidle(&state->pdev->dev); return ret; + } } mutex_lock(&state->lock); --- linux-azure-5.8-5.8.0.orig/drivers/media/platform/marvell-ccic/mcam-core.c +++ linux-azure-5.8-5.8.0/drivers/media/platform/marvell-ccic/mcam-core.c @@ -1940,6 +1940,7 @@ out: v4l2_async_notifier_unregister(&cam->notifier); v4l2_device_unregister(&cam->v4l2_dev); + v4l2_async_notifier_cleanup(&cam->notifier); return ret; } EXPORT_SYMBOL_GPL(mccic_register); @@ -1961,6 +1962,7 @@ v4l2_ctrl_handler_free(&cam->ctrl_handler); v4l2_async_notifier_unregister(&cam->notifier); v4l2_device_unregister(&cam->v4l2_dev); + v4l2_async_notifier_cleanup(&cam->notifier); } EXPORT_SYMBOL_GPL(mccic_shutdown); --- linux-azure-5.8-5.8.0.orig/drivers/media/platform/mtk-jpeg/mtk_jpeg_core.c +++ linux-azure-5.8-5.8.0/drivers/media/platform/mtk-jpeg/mtk_jpeg_core.c @@ -571,6 +571,13 @@ if (!q_data) return -EINVAL; + if (*num_planes) { + for (i = 0; i < *num_planes; i++) + if (sizes[i] < q_data->sizeimage[i]) + return -EINVAL; + return 0; + } + *num_planes = q_data->fmt->colplanes; for (i = 0; i < q_data->fmt->colplanes; i++) { sizes[i] = q_data->sizeimage[i]; @@ -1074,6 +1081,11 @@ return PTR_ERR_OR_ZERO(jpeg->clk_jdec_smi); } +static inline void mtk_jpeg_clk_release(struct mtk_jpeg_dev *jpeg) +{ + put_device(jpeg->larb); +} + static int mtk_jpeg_probe(struct platform_device *pdev) { struct mtk_jpeg_dev *jpeg; @@ -1177,6 +1189,7 @@ v4l2_device_unregister(&jpeg->v4l2_dev); err_dev_register: + mtk_jpeg_clk_release(jpeg); err_clk_init: @@ -1194,6 +1207,7 @@ video_device_release(jpeg->dec_vdev); v4l2_m2m_release(jpeg->m2m_dev); v4l2_device_unregister(&jpeg->v4l2_dev); + mtk_jpeg_clk_release(jpeg); return 0; } --- linux-azure-5.8-5.8.0.orig/drivers/media/platform/mtk-mdp/mtk_mdp_comp.c +++ linux-azure-5.8-5.8.0/drivers/media/platform/mtk-mdp/mtk_mdp_comp.c @@ -96,6 +96,7 @@ { struct device_node *larb_node; struct platform_device *larb_pdev; + int ret; int i; if (comp_id < 0 || comp_id >= MTK_MDP_COMP_ID_MAX) { @@ -113,8 +114,8 @@ if (IS_ERR(comp->clk[i])) { if (PTR_ERR(comp->clk[i]) != -EPROBE_DEFER) dev_err(dev, "Failed to get clock\n"); - - return PTR_ERR(comp->clk[i]); + ret = PTR_ERR(comp->clk[i]); + goto put_dev; } /* Only RDMA needs two clocks */ @@ -133,20 +134,27 @@ if (!larb_node) { dev_err(dev, "Missing mediadek,larb phandle in %pOF node\n", node); - return -EINVAL; + ret = -EINVAL; + goto put_dev; } larb_pdev = of_find_device_by_node(larb_node); if (!larb_pdev) { dev_warn(dev, "Waiting for larb device %pOF\n", larb_node); of_node_put(larb_node); - return -EPROBE_DEFER; + ret = -EPROBE_DEFER; + goto put_dev; } of_node_put(larb_node); comp->larb_dev = &larb_pdev->dev; return 0; + +put_dev: + of_node_put(comp->dev_node); + + return ret; } void mtk_mdp_comp_deinit(struct device *dev, struct mtk_mdp_comp *comp) --- linux-azure-5.8-5.8.0.orig/drivers/media/platform/mtk-vcodec/mtk_vcodec_dec_pm.c +++ linux-azure-5.8-5.8.0/drivers/media/platform/mtk-vcodec/mtk_vcodec_dec_pm.c @@ -48,11 +48,14 @@ dec_clk->clk_info = devm_kcalloc(&pdev->dev, dec_clk->clk_num, sizeof(*clk_info), GFP_KERNEL); - if (!dec_clk->clk_info) - return -ENOMEM; + if (!dec_clk->clk_info) { + ret = -ENOMEM; + goto put_device; + } } else { mtk_v4l2_err("Failed to get vdec clock count"); - return -EINVAL; + ret = -EINVAL; + goto put_device; } for (i = 0; i < dec_clk->clk_num; i++) { @@ -61,25 +64,29 @@ "clock-names", i, &clk_info->clk_name); if (ret) { mtk_v4l2_err("Failed to get clock name id = %d", i); - return ret; + goto put_device; } clk_info->vcodec_clk = devm_clk_get(&pdev->dev, clk_info->clk_name); if (IS_ERR(clk_info->vcodec_clk)) { mtk_v4l2_err("devm_clk_get (%d)%s fail", i, clk_info->clk_name); - return PTR_ERR(clk_info->vcodec_clk); + ret = PTR_ERR(clk_info->vcodec_clk); + goto put_device; } } pm_runtime_enable(&pdev->dev); - + return 0; +put_device: + put_device(pm->larbvdec); return ret; } void mtk_vcodec_release_dec_pm(struct mtk_vcodec_dev *dev) { pm_runtime_disable(dev->pm.dev); + put_device(dev->pm.larbvdec); } void mtk_vcodec_dec_pw_on(struct mtk_vcodec_pm *pm) --- linux-azure-5.8-5.8.0.orig/drivers/media/platform/mtk-vcodec/mtk_vcodec_enc_pm.c +++ linux-azure-5.8-5.8.0/drivers/media/platform/mtk-vcodec/mtk_vcodec_enc_pm.c @@ -49,14 +49,16 @@ node = of_parse_phandle(dev->of_node, "mediatek,larb", 1); if (!node) { mtk_v4l2_err("no mediatek,larb found"); - return -ENODEV; + ret = -ENODEV; + goto put_larbvenc; } pdev = of_find_device_by_node(node); of_node_put(node); if (!pdev) { mtk_v4l2_err("no mediatek,larb device found"); - return -ENODEV; + ret = -ENODEV; + goto put_larbvenc; } pm->larbvenclt = &pdev->dev; @@ -69,11 +71,14 @@ enc_clk->clk_info = devm_kcalloc(&pdev->dev, enc_clk->clk_num, sizeof(*clk_info), GFP_KERNEL); - if (!enc_clk->clk_info) - return -ENOMEM; + if (!enc_clk->clk_info) { + ret = -ENOMEM; + goto put_larbvenclt; + } } else { mtk_v4l2_err("Failed to get venc clock count"); - return -EINVAL; + ret = -EINVAL; + goto put_larbvenclt; } for (i = 0; i < enc_clk->clk_num; i++) { @@ -82,17 +87,24 @@ "clock-names", i, &clk_info->clk_name); if (ret) { mtk_v4l2_err("venc failed to get clk name %d", i); - return ret; + goto put_larbvenclt; } clk_info->vcodec_clk = devm_clk_get(&pdev->dev, clk_info->clk_name); if (IS_ERR(clk_info->vcodec_clk)) { mtk_v4l2_err("venc devm_clk_get (%d)%s fail", i, clk_info->clk_name); - return PTR_ERR(clk_info->vcodec_clk); + ret = PTR_ERR(clk_info->vcodec_clk); + goto put_larbvenclt; } } + return 0; + +put_larbvenclt: + put_device(pm->larbvenclt); +put_larbvenc: + put_device(pm->larbvenc); return ret; } --- linux-azure-5.8-5.8.0.orig/drivers/media/platform/mtk-vcodec/vdec/vdec_vp9_if.c +++ linux-azure-5.8-5.8.0/drivers/media/platform/mtk-vcodec/vdec/vdec_vp9_if.c @@ -891,7 +891,8 @@ memset(inst->seg_id_buf.va, 0, inst->seg_id_buf.size); if (vsi->show_frame & BIT(2)) { - if (vpu_dec_start(&inst->vpu, NULL, 0)) { + ret = vpu_dec_start(&inst->vpu, NULL, 0); + if (ret) { mtk_vcodec_err(inst, "vpu trig decoder failed"); goto DECODE_ERROR; } --- linux-azure-5.8-5.8.0.orig/drivers/media/platform/mx2_emmaprp.c +++ linux-azure-5.8-5.8.0/drivers/media/platform/mx2_emmaprp.c @@ -852,8 +852,11 @@ platform_set_drvdata(pdev, pcdev); irq = platform_get_irq(pdev, 0); - if (irq < 0) - return irq; + if (irq < 0) { + ret = irq; + goto rel_vdev; + } + ret = devm_request_irq(&pdev->dev, irq, emmaprp_irq, 0, dev_name(&pdev->dev), pcdev); if (ret) --- linux-azure-5.8-5.8.0.orig/drivers/media/platform/omap3isp/isp.c +++ linux-azure-5.8-5.8.0/drivers/media/platform/omap3isp/isp.c @@ -2328,8 +2328,10 @@ mem = platform_get_resource(pdev, IORESOURCE_MEM, i); isp->mmio_base[map_idx] = devm_ioremap_resource(isp->dev, mem); - if (IS_ERR(isp->mmio_base[map_idx])) - return PTR_ERR(isp->mmio_base[map_idx]); + if (IS_ERR(isp->mmio_base[map_idx])) { + ret = PTR_ERR(isp->mmio_base[map_idx]); + goto error; + } } ret = isp_get_clocks(isp); --- linux-azure-5.8-5.8.0.orig/drivers/media/platform/omap3isp/isppreview.c +++ linux-azure-5.8-5.8.0/drivers/media/platform/omap3isp/isppreview.c @@ -2287,7 +2287,7 @@ me->ops = &preview_media_ops; ret = media_entity_pads_init(me, PREV_PADS_NUM, pads); if (ret < 0) - return ret; + goto error_handler_free; preview_init_formats(sd, NULL); @@ -2320,6 +2320,8 @@ omap3isp_video_cleanup(&prev->video_in); error_video_in: media_entity_cleanup(&prev->subdev.entity); +error_handler_free: + v4l2_ctrl_handler_free(&prev->ctrls); return ret; } --- linux-azure-5.8-5.8.0.orig/drivers/media/platform/pxa_camera.c +++ linux-azure-5.8-5.8.0/drivers/media/platform/pxa_camera.c @@ -1447,6 +1447,9 @@ struct pxa_camera_dev *pcdev = vb2_get_drv_priv(vb->vb2_queue); struct pxa_buffer *buf = vb2_to_pxa_buffer(vb); int ret = 0; +#ifdef DEBUG + int i; +#endif switch (pcdev->channels) { case 1: --- linux-azure-5.8-5.8.0.orig/drivers/media/platform/qcom/camss/camss-csiphy.c +++ linux-azure-5.8-5.8.0/drivers/media/platform/qcom/camss/camss-csiphy.c @@ -176,8 +176,10 @@ int ret; ret = pm_runtime_get_sync(dev); - if (ret < 0) + if (ret < 0) { + pm_runtime_put_sync(dev); return ret; + } ret = csiphy_set_clock_rates(csiphy); if (ret < 0) { --- linux-azure-5.8-5.8.0.orig/drivers/media/platform/qcom/camss/camss-video.c +++ linux-azure-5.8-5.8.0/drivers/media/platform/qcom/camss/camss-video.c @@ -901,6 +901,7 @@ video->nformats = ARRAY_SIZE(formats_rdi_8x96); } } else { + ret = -EINVAL; goto error_video_register; } --- linux-azure-5.8-5.8.0.orig/drivers/media/platform/qcom/camss/camss.c +++ linux-azure-5.8-5.8.0/drivers/media/platform/qcom/camss/camss.c @@ -504,7 +504,6 @@ return num_subdevs; err_cleanup: - v4l2_async_notifier_cleanup(&camss->notifier); of_node_put(node); return ret; } @@ -835,29 +834,38 @@ camss->csid_num = 4; camss->vfe_num = 2; } else { - return -EINVAL; + ret = -EINVAL; + goto err_free; } camss->csiphy = devm_kcalloc(dev, camss->csiphy_num, sizeof(*camss->csiphy), GFP_KERNEL); - if (!camss->csiphy) - return -ENOMEM; + if (!camss->csiphy) { + ret = -ENOMEM; + goto err_free; + } camss->csid = devm_kcalloc(dev, camss->csid_num, sizeof(*camss->csid), GFP_KERNEL); - if (!camss->csid) - return -ENOMEM; + if (!camss->csid) { + ret = -ENOMEM; + goto err_free; + } camss->vfe = devm_kcalloc(dev, camss->vfe_num, sizeof(*camss->vfe), GFP_KERNEL); - if (!camss->vfe) - return -ENOMEM; + if (!camss->vfe) { + ret = -ENOMEM; + goto err_free; + } v4l2_async_notifier_init(&camss->notifier); num_subdevs = camss_of_parse_ports(camss); - if (num_subdevs < 0) - return num_subdevs; + if (num_subdevs < 0) { + ret = num_subdevs; + goto err_cleanup; + } ret = camss_init_subdevices(camss); if (ret < 0) @@ -936,6 +944,8 @@ v4l2_device_unregister(&camss->v4l2_dev); err_cleanup: v4l2_async_notifier_cleanup(&camss->notifier); +err_free: + kfree(camss); return ret; } --- linux-azure-5.8-5.8.0.orig/drivers/media/platform/qcom/venus/core.c +++ linux-azure-5.8-5.8.0/drivers/media/platform/qcom/venus/core.c @@ -224,13 +224,15 @@ ret = dma_set_mask_and_coherent(dev, core->res->dma_mask); if (ret) - return ret; + goto err_core_put; if (!dev->dma_parms) { dev->dma_parms = devm_kzalloc(dev, sizeof(*dev->dma_parms), GFP_KERNEL); - if (!dev->dma_parms) - return -ENOMEM; + if (!dev->dma_parms) { + ret = -ENOMEM; + goto err_core_put; + } } dma_set_max_seg_size(dev, DMA_BIT_MASK(32)); @@ -242,11 +244,11 @@ IRQF_TRIGGER_HIGH | IRQF_ONESHOT, "venus", core); if (ret) - return ret; + goto err_core_put; ret = hfi_create(core, &venus_core_ops); if (ret) - return ret; + goto err_core_put; pm_runtime_enable(dev); @@ -287,8 +289,10 @@ goto err_core_deinit; ret = pm_runtime_put_sync(dev); - if (ret) + if (ret) { + pm_runtime_get_noresume(dev); goto err_dev_unregister; + } return 0; @@ -299,9 +303,13 @@ err_venus_shutdown: venus_shutdown(core); err_runtime_disable: + pm_runtime_put_noidle(dev); pm_runtime_set_suspended(dev); pm_runtime_disable(dev); hfi_destroy(core); +err_core_put: + if (core->pm_ops->core_put) + core->pm_ops->core_put(dev); return ret; } @@ -351,12 +359,26 @@ if (ret) return ret; + if (pm_ops->core_power) { + ret = pm_ops->core_power(dev, POWER_OFF); + if (ret) + return ret; + } + ret = icc_set_bw(core->cpucfg_path, 0, 0); if (ret) - return ret; + goto err_cpucfg_path; - if (pm_ops->core_power) - ret = pm_ops->core_power(dev, POWER_OFF); + ret = icc_set_bw(core->video_path, 0, 0); + if (ret) + goto err_video_path; + + return ret; + +err_video_path: + icc_set_bw(core->cpucfg_path, kbps_to_icc(1000), 0); +err_cpucfg_path: + pm_ops->core_power(dev, POWER_ON); return ret; } @@ -367,16 +389,20 @@ const struct venus_pm_ops *pm_ops = core->pm_ops; int ret; + ret = icc_set_bw(core->video_path, kbps_to_icc(20000), 0); + if (ret) + return ret; + + ret = icc_set_bw(core->cpucfg_path, kbps_to_icc(1000), 0); + if (ret) + return ret; + if (pm_ops->core_power) { ret = pm_ops->core_power(dev, POWER_ON); if (ret) return ret; } - ret = icc_set_bw(core->cpucfg_path, 0, kbps_to_icc(1000)); - if (ret) - return ret; - return hfi_core_resume(core, false); } --- linux-azure-5.8-5.8.0.orig/drivers/media/platform/qcom/venus/pm_helpers.c +++ linux-azure-5.8-5.8.0/drivers/media/platform/qcom/venus/pm_helpers.c @@ -212,6 +212,16 @@ } mutex_unlock(&core->lock); + /* + * keep minimum bandwidth vote for "video-mem" path, + * so that clks can be disabled during vdec_session_release(). + * Actual bandwidth drop will be done during device supend + * so that device can power down without any warnings. + */ + + if (!total_avg && !total_peak) + total_avg = kbps_to_icc(1000); + dev_dbg(core->dev, "total: avg_bw: %u, peak_bw: %u\n", total_avg, total_peak); @@ -496,6 +506,10 @@ list_for_each_entry(inst_pos, &core->instances, list) { if (inst_pos == inst) continue; + + if (inst_pos->state != INST_START) + continue; + vpp_freq = inst_pos->clk_data.codec_freq_data->vpp_freq; coreid = inst_pos->clk_data.core_id; --- linux-azure-5.8-5.8.0.orig/drivers/media/platform/qcom/venus/vdec.c +++ linux-azure-5.8-5.8.0/drivers/media/platform/qcom/venus/vdec.c @@ -1088,8 +1088,6 @@ break; } - INIT_LIST_HEAD(&inst->registeredbufs); - return ret; } @@ -1189,6 +1187,14 @@ static void vdec_buf_cleanup(struct vb2_buffer *vb) { struct venus_inst *inst = vb2_get_drv_priv(vb->vb2_queue); + struct vb2_v4l2_buffer *vbuf = to_vb2_v4l2_buffer(vb); + struct venus_buffer *buf = to_venus_buffer(vbuf); + + mutex_lock(&inst->lock); + if (vb->type == V4L2_BUF_TYPE_VIDEO_CAPTURE_MPLANE) + if (!list_empty(&inst->registeredbufs)) + list_del_init(&buf->reg_list); + mutex_unlock(&inst->lock); inst->buf_count--; if (!inst->buf_count) --- linux-azure-5.8-5.8.0.orig/drivers/media/platform/rcar-fcp.c +++ linux-azure-5.8-5.8.0/drivers/media/platform/rcar-fcp.c @@ -103,8 +103,10 @@ return 0; ret = pm_runtime_get_sync(fcp->dev); - if (ret < 0) + if (ret < 0) { + pm_runtime_put_noidle(fcp->dev); return ret; + } return 0; } --- linux-azure-5.8-5.8.0.orig/drivers/media/platform/rcar-vin/rcar-csi2.c +++ linux-azure-5.8-5.8.0/drivers/media/platform/rcar-vin/rcar-csi2.c @@ -361,7 +361,6 @@ struct media_pad pads[NR_OF_RCAR_CSI2_PAD]; struct v4l2_async_notifier notifier; - struct v4l2_async_subdev asd; struct v4l2_subdev *remote; struct v4l2_mbus_framefmt mf; @@ -810,6 +809,8 @@ static int rcsi2_parse_dt(struct rcar_csi2 *priv) { + struct v4l2_async_subdev *asd; + struct fwnode_handle *fwnode; struct device_node *ep; struct v4l2_fwnode_endpoint v4l2_ep = { .bus_type = 0 }; int ret; @@ -833,24 +834,19 @@ return ret; } - priv->asd.match.fwnode = - fwnode_graph_get_remote_endpoint(of_fwnode_handle(ep)); - priv->asd.match_type = V4L2_ASYNC_MATCH_FWNODE; - + fwnode = fwnode_graph_get_remote_endpoint(of_fwnode_handle(ep)); of_node_put(ep); - v4l2_async_notifier_init(&priv->notifier); - - ret = v4l2_async_notifier_add_subdev(&priv->notifier, &priv->asd); - if (ret) { - fwnode_handle_put(priv->asd.match.fwnode); - return ret; - } + dev_dbg(priv->dev, "Found '%pOF'\n", to_of_node(fwnode)); + v4l2_async_notifier_init(&priv->notifier); priv->notifier.ops = &rcar_csi2_notify_ops; - dev_dbg(priv->dev, "Found '%pOF'\n", - to_of_node(priv->asd.match.fwnode)); + asd = v4l2_async_notifier_add_fwnode_subdev(&priv->notifier, fwnode, + sizeof(*asd)); + fwnode_handle_put(fwnode); + if (IS_ERR(asd)) + return PTR_ERR(asd); ret = v4l2_async_subdev_notifier_register(&priv->subdev, &priv->notifier); --- linux-azure-5.8-5.8.0.orig/drivers/media/platform/rcar-vin/rcar-dma.c +++ linux-azure-5.8-5.8.0/drivers/media/platform/rcar-vin/rcar-dma.c @@ -1392,8 +1392,10 @@ int ret; ret = pm_runtime_get_sync(vin->dev); - if (ret < 0) + if (ret < 0) { + pm_runtime_put_noidle(vin->dev); return ret; + } /* Make register writes take effect immediately. */ vnmc = rvin_read(vin, VNMC_REG); --- linux-azure-5.8-5.8.0.orig/drivers/media/platform/rcar_drif.c +++ linux-azure-5.8-5.8.0/drivers/media/platform/rcar_drif.c @@ -185,7 +185,6 @@ /* OF graph endpoint's V4L2 async data */ struct rcar_drif_graph_ep { struct v4l2_subdev *subdev; /* Async matched subdev */ - struct v4l2_async_subdev asd; /* Async sub-device descriptor */ }; /* DMA buffer */ @@ -1109,12 +1108,6 @@ struct rcar_drif_sdr *sdr = container_of(notifier, struct rcar_drif_sdr, notifier); - if (sdr->ep.asd.match.fwnode != - of_fwnode_handle(subdev->dev->of_node)) { - rdrif_err(sdr, "subdev %s cannot bind\n", subdev->name); - return -EINVAL; - } - v4l2_set_subdev_hostdata(subdev, sdr); sdr->ep.subdev = subdev; rdrif_dbg(sdr, "bound asd %s\n", subdev->name); @@ -1218,7 +1211,7 @@ { struct v4l2_async_notifier *notifier = &sdr->notifier; struct fwnode_handle *fwnode, *ep; - int ret; + struct v4l2_async_subdev *asd; v4l2_async_notifier_init(notifier); @@ -1227,26 +1220,21 @@ if (!ep) return 0; + /* Get the endpoint properties */ + rcar_drif_get_ep_properties(sdr, ep); + fwnode = fwnode_graph_get_remote_port_parent(ep); + fwnode_handle_put(ep); if (!fwnode) { dev_warn(sdr->dev, "bad remote port parent\n"); - fwnode_handle_put(ep); return -EINVAL; } - sdr->ep.asd.match.fwnode = fwnode; - sdr->ep.asd.match_type = V4L2_ASYNC_MATCH_FWNODE; - ret = v4l2_async_notifier_add_subdev(notifier, &sdr->ep.asd); - if (ret) { - fwnode_handle_put(fwnode); - return ret; - } - - /* Get the endpoint properties */ - rcar_drif_get_ep_properties(sdr, ep); - + asd = v4l2_async_notifier_add_fwnode_subdev(notifier, fwnode, + sizeof(*asd)); fwnode_handle_put(fwnode); - fwnode_handle_put(ep); + if (IS_ERR(asd)) + return PTR_ERR(asd); return 0; } --- linux-azure-5.8-5.8.0.orig/drivers/media/platform/rockchip/rga/rga-buf.c +++ linux-azure-5.8-5.8.0/drivers/media/platform/rockchip/rga/rga-buf.c @@ -81,6 +81,7 @@ ret = pm_runtime_get_sync(rga->dev); if (ret < 0) { + pm_runtime_put_noidle(rga->dev); rga_buf_return_buffers(q, VB2_BUF_STATE_QUEUED); return ret; } --- linux-azure-5.8-5.8.0.orig/drivers/media/platform/rockchip/rga/rga-hw.c +++ linux-azure-5.8-5.8.0/drivers/media/platform/rockchip/rga/rga-hw.c @@ -200,22 +200,25 @@ dst_info.data.format = ctx->out.fmt->hw_format; dst_info.data.swap = ctx->out.fmt->color_swap; - if (ctx->in.fmt->hw_format >= RGA_COLOR_FMT_YUV422SP) { - if (ctx->out.fmt->hw_format < RGA_COLOR_FMT_YUV422SP) { - switch (ctx->in.colorspace) { - case V4L2_COLORSPACE_REC709: - src_info.data.csc_mode = - RGA_SRC_CSC_MODE_BT709_R0; - break; - default: - src_info.data.csc_mode = - RGA_SRC_CSC_MODE_BT601_R0; - break; - } + /* + * CSC mode must only be set when the colorspace families differ between + * input and output. It must remain unset (zeroed) if both are the same. + */ + + if (RGA_COLOR_FMT_IS_YUV(ctx->in.fmt->hw_format) && + RGA_COLOR_FMT_IS_RGB(ctx->out.fmt->hw_format)) { + switch (ctx->in.colorspace) { + case V4L2_COLORSPACE_REC709: + src_info.data.csc_mode = RGA_SRC_CSC_MODE_BT709_R0; + break; + default: + src_info.data.csc_mode = RGA_SRC_CSC_MODE_BT601_R0; + break; } } - if (ctx->out.fmt->hw_format >= RGA_COLOR_FMT_YUV422SP) { + if (RGA_COLOR_FMT_IS_RGB(ctx->in.fmt->hw_format) && + RGA_COLOR_FMT_IS_YUV(ctx->out.fmt->hw_format)) { switch (ctx->out.colorspace) { case V4L2_COLORSPACE_REC709: dst_info.data.csc_mode = RGA_SRC_CSC_MODE_BT709_R0; --- linux-azure-5.8-5.8.0.orig/drivers/media/platform/rockchip/rga/rga-hw.h +++ linux-azure-5.8-5.8.0/drivers/media/platform/rockchip/rga/rga-hw.h @@ -95,6 +95,11 @@ #define RGA_COLOR_FMT_CP_8BPP 15 #define RGA_COLOR_FMT_MASK 15 +#define RGA_COLOR_FMT_IS_YUV(fmt) \ + (((fmt) >= RGA_COLOR_FMT_YUV422SP) && ((fmt) < RGA_COLOR_FMT_CP_1BPP)) +#define RGA_COLOR_FMT_IS_RGB(fmt) \ + ((fmt) < RGA_COLOR_FMT_YUV422SP) + #define RGA_COLOR_NONE_SWAP 0 #define RGA_COLOR_RB_SWAP 1 #define RGA_COLOR_ALPHA_SWAP 2 --- linux-azure-5.8-5.8.0.orig/drivers/media/platform/s3c-camif/camif-core.c +++ linux-azure-5.8-5.8.0/drivers/media/platform/s3c-camif/camif-core.c @@ -464,7 +464,7 @@ ret = camif_media_dev_init(camif); if (ret < 0) - goto err_alloc; + goto err_pm; ret = camif_register_sensor(camif); if (ret < 0) @@ -498,10 +498,9 @@ media_device_unregister(&camif->media_dev); media_device_cleanup(&camif->media_dev); camif_unregister_media_entities(camif); -err_alloc: +err_pm: pm_runtime_put(dev); pm_runtime_disable(dev); -err_pm: camif_clk_put(camif); err_clk: s3c_camif_unregister_subdev(camif); --- linux-azure-5.8-5.8.0.orig/drivers/media/platform/s5p-g2d/g2d.c +++ linux-azure-5.8-5.8.0/drivers/media/platform/s5p-g2d/g2d.c @@ -695,21 +695,13 @@ vfd->lock = &dev->mutex; vfd->v4l2_dev = &dev->v4l2_dev; vfd->device_caps = V4L2_CAP_VIDEO_M2M | V4L2_CAP_STREAMING; - ret = video_register_device(vfd, VFL_TYPE_VIDEO, 0); - if (ret) { - v4l2_err(&dev->v4l2_dev, "Failed to register video device\n"); - goto rel_vdev; - } - video_set_drvdata(vfd, dev); - dev->vfd = vfd; - v4l2_info(&dev->v4l2_dev, "device registered as /dev/video%d\n", - vfd->num); + platform_set_drvdata(pdev, dev); dev->m2m_dev = v4l2_m2m_init(&g2d_m2m_ops); if (IS_ERR(dev->m2m_dev)) { v4l2_err(&dev->v4l2_dev, "Failed to init mem2mem device\n"); ret = PTR_ERR(dev->m2m_dev); - goto unreg_video_dev; + goto rel_vdev; } def_frame.stride = (def_frame.width * def_frame.fmt->depth) >> 3; @@ -717,14 +709,24 @@ of_id = of_match_node(exynos_g2d_match, pdev->dev.of_node); if (!of_id) { ret = -ENODEV; - goto unreg_video_dev; + goto free_m2m; } dev->variant = (struct g2d_variant *)of_id->data; + ret = video_register_device(vfd, VFL_TYPE_VIDEO, 0); + if (ret) { + v4l2_err(&dev->v4l2_dev, "Failed to register video device\n"); + goto free_m2m; + } + video_set_drvdata(vfd, dev); + dev->vfd = vfd; + v4l2_info(&dev->v4l2_dev, "device registered as /dev/video%d\n", + vfd->num); + return 0; -unreg_video_dev: - video_unregister_device(dev->vfd); +free_m2m: + v4l2_m2m_release(dev->m2m_dev); rel_vdev: video_device_release(vfd); unreg_v4l2_dev: --- linux-azure-5.8-5.8.0.orig/drivers/media/platform/s5p-mfc/s5p_mfc_pm.c +++ linux-azure-5.8-5.8.0/drivers/media/platform/s5p-mfc/s5p_mfc_pm.c @@ -79,8 +79,10 @@ int i, ret = 0; ret = pm_runtime_get_sync(pm->device); - if (ret < 0) + if (ret < 0) { + pm_runtime_put_noidle(pm->device); return ret; + } /* clock control */ for (i = 0; i < pm->num_clocks; i++) { --- linux-azure-5.8-5.8.0.orig/drivers/media/platform/sti/bdisp/bdisp-v4l2.c +++ linux-azure-5.8-5.8.0/drivers/media/platform/sti/bdisp/bdisp-v4l2.c @@ -1371,7 +1371,7 @@ ret = pm_runtime_get_sync(dev); if (ret < 0) { dev_err(dev, "failed to set PM\n"); - goto err_dbg; + goto err_pm; } /* Filters */ @@ -1399,7 +1399,6 @@ bdisp_hw_free_filters(bdisp->dev); err_pm: pm_runtime_put(dev); -err_dbg: bdisp_debugfs_remove(bdisp); err_v4l2: v4l2_device_unregister(&bdisp->v4l2_dev); --- linux-azure-5.8-5.8.0.orig/drivers/media/platform/sti/delta/delta-v4l2.c +++ linux-azure-5.8-5.8.0/drivers/media/platform/sti/delta/delta-v4l2.c @@ -954,8 +954,10 @@ /* enable the hardware */ if (!dec->pm) { ret = delta_get_sync(ctx); - if (ret) + if (ret) { + delta_put_autosuspend(ctx); goto err; + } } /* decode this access unit */ --- linux-azure-5.8-5.8.0.orig/drivers/media/platform/sti/hva/hva-hw.c +++ linux-azure-5.8-5.8.0/drivers/media/platform/sti/hva/hva-hw.c @@ -272,6 +272,7 @@ if (pm_runtime_get_sync(dev) < 0) { dev_err(dev, "%s failed to get pm_runtime\n", HVA_PREFIX); + pm_runtime_put_noidle(dev); mutex_unlock(&hva->protect_mutex); return -EFAULT; } @@ -388,7 +389,7 @@ ret = pm_runtime_get_sync(dev); if (ret < 0) { dev_err(dev, "%s failed to set PM\n", HVA_PREFIX); - goto err_clk; + goto err_pm; } /* check IP hardware version */ @@ -553,6 +554,7 @@ if (pm_runtime_get_sync(dev) < 0) { seq_puts(s, "Cannot wake up IP\n"); + pm_runtime_put_noidle(dev); mutex_unlock(&hva->protect_mutex); return; } --- linux-azure-5.8-5.8.0.orig/drivers/media/platform/stm32/stm32-dcmi.c +++ linux-azure-5.8-5.8.0/drivers/media/platform/stm32/stm32-dcmi.c @@ -733,7 +733,7 @@ if (ret < 0) { dev_err(dcmi->dev, "%s: Failed to start streaming, cannot get sync (%d)\n", __func__, ret); - goto err_release_buffers; + goto err_pm_put; } ret = media_pipeline_start(&dcmi->vdev->entity, &dcmi->pipeline); @@ -837,8 +837,6 @@ err_pm_put: pm_runtime_put(dcmi->dev); - -err_release_buffers: spin_lock_irq(&dcmi->irqlock); /* * Return all buffers to vb2 in QUEUED state. --- linux-azure-5.8-5.8.0.orig/drivers/media/platform/ti-vpe/vpe.c +++ linux-azure-5.8-5.8.0/drivers/media/platform/ti-vpe/vpe.c @@ -2475,6 +2475,8 @@ r = pm_runtime_get_sync(&pdev->dev); WARN_ON(r < 0); + if (r) + pm_runtime_put_noidle(&pdev->dev); return r < 0 ? r : 0; } --- linux-azure-5.8-5.8.0.orig/drivers/media/platform/vsp1/vsp1_dl.c +++ linux-azure-5.8-5.8.0/drivers/media/platform/vsp1/vsp1_dl.c @@ -431,6 +431,8 @@ if (!pool) return NULL; + pool->vsp1 = vsp1; + spin_lock_init(&pool->lock); INIT_LIST_HEAD(&pool->free); --- linux-azure-5.8-5.8.0.orig/drivers/media/platform/vsp1/vsp1_drv.c +++ linux-azure-5.8-5.8.0/drivers/media/platform/vsp1/vsp1_drv.c @@ -562,7 +562,12 @@ int ret; ret = pm_runtime_get_sync(vsp1->dev); - return ret < 0 ? ret : 0; + if (ret < 0) { + pm_runtime_put_noidle(vsp1->dev); + return ret; + } + + return 0; } /* @@ -845,12 +850,12 @@ /* Configure device parameters based on the version register. */ pm_runtime_enable(&pdev->dev); - ret = pm_runtime_get_sync(&pdev->dev); + ret = vsp1_device_get(vsp1); if (ret < 0) goto done; vsp1->version = vsp1_read(vsp1, VI6_IP_VERSION); - pm_runtime_put_sync(&pdev->dev); + vsp1_device_put(vsp1); for (i = 0; i < ARRAY_SIZE(vsp1_device_infos); ++i) { if ((vsp1->version & VI6_IP_VERSION_MODEL_MASK) == @@ -877,8 +882,10 @@ } done: - if (ret) + if (ret) { pm_runtime_disable(&pdev->dev); + rcar_fcp_put(vsp1->fcp); + } return ret; } --- linux-azure-5.8-5.8.0.orig/drivers/media/rc/ati_remote.c +++ linux-azure-5.8-5.8.0/drivers/media/rc/ati_remote.c @@ -835,6 +835,10 @@ err("%s: endpoint_in message size==0? \n", __func__); return -ENODEV; } + if (!usb_endpoint_is_int_out(endpoint_out)) { + err("%s: Unexpected endpoint_out\n", __func__); + return -ENODEV; + } ati_remote = kzalloc(sizeof (struct ati_remote), GFP_KERNEL); rc_dev = rc_allocate_device(RC_DRIVER_SCANCODE); --- linux-azure-5.8-5.8.0.orig/drivers/media/rc/gpio-ir-tx.c +++ linux-azure-5.8-5.8.0/drivers/media/rc/gpio-ir-tx.c @@ -19,8 +19,6 @@ struct gpio_desc *gpio; unsigned int carrier; unsigned int duty_cycle; - /* we need a spinlock to hold the cpu while transmitting */ - spinlock_t lock; }; static const struct of_device_id gpio_ir_tx_of_match[] = { @@ -53,12 +51,11 @@ static void gpio_ir_tx_unmodulated(struct gpio_ir *gpio_ir, uint *txbuf, uint count) { - unsigned long flags; ktime_t edge; s32 delta; int i; - spin_lock_irqsave(&gpio_ir->lock, flags); + local_irq_disable(); edge = ktime_get(); @@ -72,14 +69,11 @@ } gpiod_set_value(gpio_ir->gpio, 0); - - spin_unlock_irqrestore(&gpio_ir->lock, flags); } static void gpio_ir_tx_modulated(struct gpio_ir *gpio_ir, uint *txbuf, uint count) { - unsigned long flags; ktime_t edge; /* * delta should never exceed 0.5 seconds (IR_MAX_DURATION) and on @@ -95,7 +89,7 @@ space = DIV_ROUND_CLOSEST((100 - gpio_ir->duty_cycle) * (NSEC_PER_SEC / 100), gpio_ir->carrier); - spin_lock_irqsave(&gpio_ir->lock, flags); + local_irq_disable(); edge = ktime_get(); @@ -128,19 +122,20 @@ edge = last; } } - - spin_unlock_irqrestore(&gpio_ir->lock, flags); } static int gpio_ir_tx(struct rc_dev *dev, unsigned int *txbuf, unsigned int count) { struct gpio_ir *gpio_ir = dev->priv; + unsigned long flags; + local_irq_save(flags); if (gpio_ir->carrier) gpio_ir_tx_modulated(gpio_ir, txbuf, count); else gpio_ir_tx_unmodulated(gpio_ir, txbuf, count); + local_irq_restore(flags); return count; } @@ -176,7 +171,6 @@ gpio_ir->carrier = 38000; gpio_ir->duty_cycle = 50; - spin_lock_init(&gpio_ir->lock); rc = devm_rc_register_device(&pdev->dev, rcdev); if (rc < 0) --- linux-azure-5.8-5.8.0.orig/drivers/media/rc/ir-mce_kbd-decoder.c +++ linux-azure-5.8-5.8.0/drivers/media/rc/ir-mce_kbd-decoder.c @@ -320,7 +320,7 @@ data->body); spin_lock(&data->keylock); if (scancode) { - delay = nsecs_to_jiffies(dev->timeout) + + delay = usecs_to_jiffies(dev->timeout) + msecs_to_jiffies(100); mod_timer(&data->rx_timeout, jiffies + delay); } else { --- linux-azure-5.8-5.8.0.orig/drivers/media/rc/ite-cir.c +++ linux-azure-5.8-5.8.0/drivers/media/rc/ite-cir.c @@ -1551,7 +1551,7 @@ rdev->s_rx_carrier_range = ite_set_rx_carrier_range; /* FIFO threshold is 17 bytes, so 17 * 8 samples minimum */ rdev->min_timeout = 17 * 8 * ITE_BAUDRATE_DIVISOR * - itdev->params.sample_period; + itdev->params.sample_period / 1000; rdev->timeout = IR_DEFAULT_TIMEOUT; rdev->max_timeout = 10 * IR_DEFAULT_TIMEOUT; rdev->rx_resolution = ITE_BAUDRATE_DIVISOR * --- linux-azure-5.8-5.8.0.orig/drivers/media/rc/mceusb.c +++ linux-azure-5.8-5.8.0/drivers/media/rc/mceusb.c @@ -1169,7 +1169,7 @@ switch (subcmd) { /* the one and only 5-byte return value command */ case MCE_RSP_GETPORTSTATUS: - if (buf_in[5] == 0) + if (buf_in[5] == 0 && *hi < 8) ir->txports_cabled |= 1 << *hi; break; --- linux-azure-5.8-5.8.0.orig/drivers/media/rc/rc-main.c +++ linux-azure-5.8-5.8.0/drivers/media/rc/rc-main.c @@ -737,7 +737,7 @@ void rc_repeat(struct rc_dev *dev) { unsigned long flags; - unsigned int timeout = nsecs_to_jiffies(dev->timeout) + + unsigned int timeout = usecs_to_jiffies(dev->timeout) + msecs_to_jiffies(repeat_period(dev->last_protocol)); struct lirc_scancode sc = { .scancode = dev->last_scancode, .rc_proto = dev->last_protocol, @@ -855,7 +855,7 @@ ir_do_keydown(dev, protocol, scancode, keycode, toggle); if (dev->keypressed) { - dev->keyup_jiffies = jiffies + nsecs_to_jiffies(dev->timeout) + + dev->keyup_jiffies = jiffies + usecs_to_jiffies(dev->timeout) + msecs_to_jiffies(repeat_period(protocol)); mod_timer(&dev->timer_keyup, dev->keyup_jiffies); } @@ -1292,6 +1292,10 @@ } mutex_lock(&dev->lock); + if (!dev->registered) { + mutex_unlock(&dev->lock); + return -ENODEV; + } old_protocols = *current_protocols; new_protocols = old_protocols; @@ -1430,6 +1434,10 @@ return -EINVAL; mutex_lock(&dev->lock); + if (!dev->registered) { + mutex_unlock(&dev->lock); + return -ENODEV; + } new_filter = *filter; if (fattr->mask) @@ -1544,6 +1552,10 @@ int i; mutex_lock(&dev->lock); + if (!dev->registered) { + mutex_unlock(&dev->lock); + return -ENODEV; + } allowed = dev->allowed_wakeup_protocols; @@ -1601,25 +1613,25 @@ kfree(dev); } -#define ADD_HOTPLUG_VAR(fmt, val...) \ - do { \ - int err = add_uevent_var(env, fmt, val); \ - if (err) \ - return err; \ - } while (0) - static int rc_dev_uevent(struct device *device, struct kobj_uevent_env *env) { struct rc_dev *dev = to_rc_dev(device); + int ret = 0; - if (dev->rc_map.name) - ADD_HOTPLUG_VAR("NAME=%s", dev->rc_map.name); - if (dev->driver_name) - ADD_HOTPLUG_VAR("DRV_NAME=%s", dev->driver_name); - if (dev->device_name) - ADD_HOTPLUG_VAR("DEV_NAME=%s", dev->device_name); + mutex_lock(&dev->lock); - return 0; + if (!dev->registered) + ret = -ENODEV; + if (ret == 0 && dev->rc_map.name) + ret = add_uevent_var(env, "NAME=%s", dev->rc_map.name); + if (ret == 0 && dev->driver_name) + ret = add_uevent_var(env, "DRV_NAME=%s", dev->driver_name); + if (ret == 0 && dev->device_name) + ret = add_uevent_var(env, "DEV_NAME=%s", dev->device_name); + + mutex_unlock(&dev->lock); + + return ret; } /* @@ -1916,6 +1928,8 @@ goto out_raw; } + dev->registered = true; + rc = device_add(&dev->dev); if (rc) goto out_rx_free; @@ -1925,8 +1939,6 @@ dev->device_name ?: "Unspecified device", path ?: "N/A"); kfree(path); - dev->registered = true; - /* * once the the input device is registered in rc_setup_rx_device, * userspace can open the input device and rc_open() will be called @@ -2011,14 +2023,14 @@ del_timer_sync(&dev->timer_keyup); del_timer_sync(&dev->timer_repeat); - rc_free_rx_device(dev); - mutex_lock(&dev->lock); if (dev->users && dev->close) dev->close(dev); dev->registered = false; mutex_unlock(&dev->lock); + rc_free_rx_device(dev); + /* * lirc device should be freed with dev->registered = false, so * that userspace polling will get notified. --- linux-azure-5.8-5.8.0.orig/drivers/media/rc/serial_ir.c +++ linux-azure-5.8-5.8.0/drivers/media/rc/serial_ir.c @@ -385,7 +385,7 @@ } while (!(sinp(UART_IIR) & UART_IIR_NO_INT)); /* still pending ? */ mod_timer(&serial_ir.timeout_timer, - jiffies + nsecs_to_jiffies(serial_ir.rcdev->timeout)); + jiffies + usecs_to_jiffies(serial_ir.rcdev->timeout)); ir_raw_event_handle(serial_ir.rcdev); --- linux-azure-5.8-5.8.0.orig/drivers/media/rc/sunxi-cir.c +++ linux-azure-5.8-5.8.0/drivers/media/rc/sunxi-cir.c @@ -137,6 +137,8 @@ } else if (status & REG_RXSTA_RPE) { ir_raw_event_set_idle(ir->rc, true); ir_raw_event_handle(ir->rc); + } else { + ir_raw_event_handle(ir->rc); } spin_unlock(&ir->ir_lock); --- linux-azure-5.8-5.8.0.orig/drivers/media/test-drivers/vicodec/vicodec-core.c +++ linux-azure-5.8-5.8.0/drivers/media/test-drivers/vicodec/vicodec-core.c @@ -1994,6 +1994,7 @@ } ctrl = v4l2_ctrl_request_hdl_ctrl_find(hdl, vicodec_ctrl_stateless_state.id); + v4l2_ctrl_request_hdl_put(hdl); if (!ctrl) { v4l2_info(&ctx->dev->v4l2_dev, "Missing required codec control\n"); --- linux-azure-5.8-5.8.0.orig/drivers/media/test-drivers/vivid/vivid-meta-out.c +++ linux-azure-5.8-5.8.0/drivers/media/test-drivers/vivid/vivid-meta-out.c @@ -164,10 +164,11 @@ { struct vivid_meta_out_buf *meta = vb2_plane_vaddr(&buf->vb.vb2_buf, 0); - tpg_s_brightness(&dev->tpg, meta->brightness); - tpg_s_contrast(&dev->tpg, meta->contrast); - tpg_s_saturation(&dev->tpg, meta->saturation); - tpg_s_hue(&dev->tpg, meta->hue); + v4l2_ctrl_s_ctrl(dev->brightness, meta->brightness); + v4l2_ctrl_s_ctrl(dev->contrast, meta->contrast); + v4l2_ctrl_s_ctrl(dev->saturation, meta->saturation); + v4l2_ctrl_s_ctrl(dev->hue, meta->hue); + dprintk(dev, 2, " %s brightness %u contrast %u saturation %u hue %d\n", __func__, meta->brightness, meta->contrast, meta->saturation, meta->hue); --- linux-azure-5.8-5.8.0.orig/drivers/media/tuners/qm1d1c0042.c +++ linux-azure-5.8-5.8.0/drivers/media/tuners/qm1d1c0042.c @@ -343,8 +343,10 @@ if (val == reg_initval[reg_index][0x00]) break; } - if (reg_index >= QM1D1C0042_NUM_REG_ROWS) + if (reg_index >= QM1D1C0042_NUM_REG_ROWS) { + ret = -EINVAL; goto failed; + } memcpy(state->regs, reg_initval[reg_index], QM1D1C0042_NUM_REGS); usleep_range(2000, 3000); --- linux-azure-5.8-5.8.0.orig/drivers/media/tuners/tuner-simple.c +++ linux-azure-5.8-5.8.0/drivers/media/tuners/tuner-simple.c @@ -500,7 +500,7 @@ case TUNER_TENA_9533_DI: case TUNER_YMEC_TVF_5533MF: tuner_dbg("This tuner doesn't have FM. Most cards have a TEA5767 for FM\n"); - return 0; + return -EINVAL; case TUNER_PHILIPS_FM1216ME_MK3: case TUNER_PHILIPS_FM1236_MK3: case TUNER_PHILIPS_FMD1216ME_MK3: @@ -702,7 +702,8 @@ TUNER_RATIO_SELECT_50; /* 50 kHz step */ /* Bandswitch byte */ - simple_radio_bandswitch(fe, &buffer[0]); + if (simple_radio_bandswitch(fe, &buffer[0])) + return 0; /* Convert from 1/16 kHz V4L steps to 1/20 MHz (=50 kHz) PLL steps freq * (1 Mhz / 16000 V4L steps) * (20 PLL steps / 1 MHz) = --- linux-azure-5.8-5.8.0.orig/drivers/media/usb/dvb-usb-v2/lmedm04.c +++ linux-azure-5.8-5.8.0/drivers/media/usb/dvb-usb-v2/lmedm04.c @@ -391,7 +391,7 @@ ep = usb_pipe_endpoint(d->udev, lme_int->lme_urb->pipe); if (usb_endpoint_type(&ep->desc) == USB_ENDPOINT_XFER_BULK) - lme_int->lme_urb->pipe = usb_rcvbulkpipe(d->udev, 0xa), + lme_int->lme_urb->pipe = usb_rcvbulkpipe(d->udev, 0xa); usb_submit_urb(lme_int->lme_urb, GFP_ATOMIC); info("INT Interrupt Service Started"); --- linux-azure-5.8-5.8.0.orig/drivers/media/usb/dvb-usb/Kconfig +++ linux-azure-5.8-5.8.0/drivers/media/usb/dvb-usb/Kconfig @@ -151,6 +151,7 @@ config DVB_USB_CXUSB_ANALOG bool "Analog support for the Conexant USB2.0 hybrid reference design" depends on DVB_USB_CXUSB && VIDEO_V4L2 + depends on VIDEO_V4L2=y || VIDEO_V4L2=DVB_USB_CXUSB select VIDEO_CX25840 select VIDEOBUF2_VMALLOC help --- linux-azure-5.8-5.8.0.orig/drivers/media/usb/dvb-usb/gp8psk.c +++ linux-azure-5.8-5.8.0/drivers/media/usb/dvb-usb/gp8psk.c @@ -182,7 +182,7 @@ static int gp8psk_power_ctrl(struct dvb_usb_device *d, int onoff) { - u8 status, buf; + u8 status = 0, buf; int gp_product_id = le16_to_cpu(d->udev->descriptor.idProduct); if (onoff) { --- linux-azure-5.8-5.8.0.orig/drivers/media/usb/em28xx/em28xx-core.c +++ linux-azure-5.8-5.8.0/drivers/media/usb/em28xx/em28xx-core.c @@ -956,14 +956,10 @@ usb_bufs->buf[i] = kzalloc(sb_size, GFP_KERNEL); if (!usb_bufs->buf[i]) { - em28xx_uninit_usb_xfer(dev, mode); - for (i--; i >= 0; i--) kfree(usb_bufs->buf[i]); - kfree(usb_bufs->buf); - usb_bufs->buf = NULL; - + em28xx_uninit_usb_xfer(dev, mode); return -ENOMEM; } --- linux-azure-5.8-5.8.0.orig/drivers/media/usb/go7007/go7007-usb.c +++ linux-azure-5.8-5.8.0/drivers/media/usb/go7007/go7007-usb.c @@ -1132,6 +1132,10 @@ go->hpi_ops = &go7007_usb_onboard_hpi_ops; go->hpi_context = usb; + ep = usb->usbdev->ep_in[4]; + if (!ep) + return -ENODEV; + /* Allocate the URB and buffer for receiving incoming interrupts */ usb->intr_urb = usb_alloc_urb(0, GFP_KERNEL); if (usb->intr_urb == NULL) @@ -1141,7 +1145,6 @@ if (usb->intr_urb->transfer_buffer == NULL) goto allocfail; - ep = usb->usbdev->ep_in[4]; if (usb_endpoint_type(&ep->desc) == USB_ENDPOINT_XFER_BULK) usb_fill_bulk_urb(usb->intr_urb, usb->usbdev, usb_rcvbulkpipe(usb->usbdev, 4), @@ -1263,9 +1266,13 @@ /* Allocate the URBs and buffers for receiving the video stream */ if (board->flags & GO7007_USB_EZUSB) { + if (!usb->usbdev->ep_in[6]) + goto allocfail; v_urb_len = 1024; video_pipe = usb_rcvbulkpipe(usb->usbdev, 6); } else { + if (!usb->usbdev->ep_in[1]) + goto allocfail; v_urb_len = 512; video_pipe = usb_rcvbulkpipe(usb->usbdev, 1); } @@ -1285,6 +1292,8 @@ /* Allocate the URBs and buffers for receiving the audio stream */ if ((board->flags & GO7007_USB_EZUSB) && (board->main_info.flags & GO7007_BOARD_HAS_AUDIO)) { + if (!usb->usbdev->ep_in[8]) + goto allocfail; for (i = 0; i < 8; ++i) { usb->audio_urbs[i] = usb_alloc_urb(0, GFP_KERNEL); if (usb->audio_urbs[i] == NULL) --- linux-azure-5.8-5.8.0.orig/drivers/media/usb/gspca/gspca.c +++ linux-azure-5.8-5.8.0/drivers/media/usb/gspca/gspca.c @@ -1575,6 +1575,7 @@ input_unregister_device(gspca_dev->input_dev); #endif v4l2_ctrl_handler_free(gspca_dev->vdev.ctrl_handler); + v4l2_device_unregister(&gspca_dev->v4l2_dev); kfree(gspca_dev->usb_buf); kfree(gspca_dev); return ret; --- linux-azure-5.8-5.8.0.orig/drivers/media/usb/msi2500/msi2500.c +++ linux-azure-5.8-5.8.0/drivers/media/usb/msi2500/msi2500.c @@ -1230,7 +1230,7 @@ } dev->master = master; - master->bus_num = 0; + master->bus_num = -1; master->num_chipselect = 1; master->transfer_one_message = msi2500_transfer_one_message; spi_master_set_devdata(master, dev); --- linux-azure-5.8-5.8.0.orig/drivers/media/usb/pwc/pwc-if.c +++ linux-azure-5.8-5.8.0/drivers/media/usb/pwc/pwc-if.c @@ -155,16 +155,17 @@ /***************************************************************************/ /* Private functions */ -static void *pwc_alloc_urb_buffer(struct device *dev, +static void *pwc_alloc_urb_buffer(struct usb_device *dev, size_t size, dma_addr_t *dma_handle) { + struct device *dmadev = dev->bus->sysdev; void *buffer = kmalloc(size, GFP_KERNEL); if (!buffer) return NULL; - *dma_handle = dma_map_single(dev, buffer, size, DMA_FROM_DEVICE); - if (dma_mapping_error(dev, *dma_handle)) { + *dma_handle = dma_map_single(dmadev, buffer, size, DMA_FROM_DEVICE); + if (dma_mapping_error(dmadev, *dma_handle)) { kfree(buffer); return NULL; } @@ -172,12 +173,14 @@ return buffer; } -static void pwc_free_urb_buffer(struct device *dev, +static void pwc_free_urb_buffer(struct usb_device *dev, size_t size, void *buffer, dma_addr_t dma_handle) { - dma_unmap_single(dev, dma_handle, size, DMA_FROM_DEVICE); + struct device *dmadev = dev->bus->sysdev; + + dma_unmap_single(dmadev, dma_handle, size, DMA_FROM_DEVICE); kfree(buffer); } @@ -282,6 +285,7 @@ static void pwc_isoc_handler(struct urb *urb) { struct pwc_device *pdev = (struct pwc_device *)urb->context; + struct device *dmadev = urb->dev->bus->sysdev; int i, fst, flen; unsigned char *iso_buf = NULL; @@ -328,7 +332,7 @@ /* Reset ISOC error counter. We did get here, after all. */ pdev->visoc_errors = 0; - dma_sync_single_for_cpu(&urb->dev->dev, + dma_sync_single_for_cpu(dmadev, urb->transfer_dma, urb->transfer_buffer_length, DMA_FROM_DEVICE); @@ -379,7 +383,7 @@ pdev->vlast_packet_size = flen; } - dma_sync_single_for_device(&urb->dev->dev, + dma_sync_single_for_device(dmadev, urb->transfer_dma, urb->transfer_buffer_length, DMA_FROM_DEVICE); @@ -461,7 +465,7 @@ urb->pipe = usb_rcvisocpipe(udev, pdev->vendpoint); urb->transfer_flags = URB_ISO_ASAP | URB_NO_TRANSFER_DMA_MAP; urb->transfer_buffer_length = ISO_BUFFER_SIZE; - urb->transfer_buffer = pwc_alloc_urb_buffer(&udev->dev, + urb->transfer_buffer = pwc_alloc_urb_buffer(udev, urb->transfer_buffer_length, &urb->transfer_dma); if (urb->transfer_buffer == NULL) { @@ -524,7 +528,7 @@ if (urb) { PWC_DEBUG_MEMORY("Freeing URB\n"); if (urb->transfer_buffer) - pwc_free_urb_buffer(&urb->dev->dev, + pwc_free_urb_buffer(urb->dev, urb->transfer_buffer_length, urb->transfer_buffer, urb->transfer_dma); --- linux-azure-5.8-5.8.0.orig/drivers/media/usb/tm6000/tm6000-dvb.c +++ linux-azure-5.8-5.8.0/drivers/media/usb/tm6000/tm6000-dvb.c @@ -141,6 +141,10 @@ if (ret < 0) { printk(KERN_ERR "tm6000: error %i in %s during pipe reset\n", ret, __func__); + + kfree(dvb->bulk_urb->transfer_buffer); + usb_free_urb(dvb->bulk_urb); + dvb->bulk_urb = NULL; return ret; } else printk(KERN_ERR "tm6000: pipe reset\n"); --- linux-azure-5.8-5.8.0.orig/drivers/media/usb/tm6000/tm6000-video.c +++ linux-azure-5.8-5.8.0/drivers/media/usb/tm6000/tm6000-video.c @@ -461,11 +461,12 @@ if (dev->urb_buffer) return 0; - dev->urb_buffer = kmalloc_array(num_bufs, sizeof(void *), GFP_KERNEL); + dev->urb_buffer = kmalloc_array(num_bufs, sizeof(*dev->urb_buffer), + GFP_KERNEL); if (!dev->urb_buffer) return -ENOMEM; - dev->urb_dma = kmalloc_array(num_bufs, sizeof(dma_addr_t *), + dev->urb_dma = kmalloc_array(num_bufs, sizeof(*dev->urb_dma), GFP_KERNEL); if (!dev->urb_dma) return -ENOMEM; --- linux-azure-5.8-5.8.0.orig/drivers/media/usb/usbtv/usbtv-core.c +++ linux-azure-5.8-5.8.0/drivers/media/usb/usbtv/usbtv-core.c @@ -113,7 +113,8 @@ usbtv_audio_fail: /* we must not free at this point */ - usb_get_dev(usbtv->udev); + v4l2_device_get(&usbtv->v4l2_dev); + /* this will undo the v4l2_device_get() */ usbtv_video_free(usbtv); usbtv_video_fail: --- linux-azure-5.8-5.8.0.orig/drivers/media/usb/uvc/uvc_ctrl.c +++ linux-azure-5.8-5.8.0/drivers/media/usb/uvc/uvc_ctrl.c @@ -773,12 +773,16 @@ offset &= 7; mask = ((1LL << bits) - 1) << offset; - for (; bits > 0; data++) { + while (1) { u8 byte = *data & mask; value |= offset > 0 ? (byte >> offset) : (byte << (-offset)); bits -= 8 - (offset > 0 ? offset : 0); + if (bits <= 0) + break; + offset -= 8; mask = (1 << bits) - 1; + data++; } /* Sign-extend the value if needed. */ @@ -1844,30 +1848,35 @@ { struct uvc_entity *entity; struct uvc_control *ctrl; - unsigned int i, found = 0; + unsigned int i; + bool found; u32 reqflags; u16 size; u8 *data = NULL; int ret; /* Find the extension unit. */ + found = false; list_for_each_entry(entity, &chain->entities, chain) { if (UVC_ENTITY_TYPE(entity) == UVC_VC_EXTENSION_UNIT && - entity->id == xqry->unit) + entity->id == xqry->unit) { + found = true; break; + } } - if (entity->id != xqry->unit) { + if (!found) { uvc_trace(UVC_TRACE_CONTROL, "Extension unit %u not found.\n", xqry->unit); return -ENOENT; } /* Find the control and perform delayed initialization if needed. */ + found = false; for (i = 0; i < entity->ncontrols; ++i) { ctrl = &entity->controls[i]; if (ctrl->index == xqry->selector - 1) { - found = 1; + found = true; break; } } @@ -2024,13 +2033,6 @@ goto done; } - /* - * Retrieve control flags from the device. Ignore errors and work with - * default flag values from the uvc_ctrl array when the device doesn't - * properly implement GET_INFO on standard controls. - */ - uvc_ctrl_get_flags(dev, ctrl, &ctrl->info); - ctrl->initialized = 1; uvc_trace(UVC_TRACE_CONTROL, "Added control %pUl/%u to device %s " @@ -2253,6 +2255,13 @@ if (uvc_entity_match_guid(ctrl->entity, info->entity) && ctrl->index == info->index) { uvc_ctrl_add_info(dev, ctrl, info); + /* + * Retrieve control flags from the device. Ignore errors + * and work with default flag values from the uvc_ctrl + * array when the device doesn't properly implement + * GET_INFO on standard controls. + */ + uvc_ctrl_get_flags(dev, ctrl, &ctrl->info); break; } } --- linux-azure-5.8-5.8.0.orig/drivers/media/usb/uvc/uvc_driver.c +++ linux-azure-5.8-5.8.0/drivers/media/usb/uvc/uvc_driver.c @@ -214,6 +214,11 @@ .guid = UVC_GUID_FORMAT_CNF4, .fcc = V4L2_PIX_FMT_CNF4, }, + { + .name = "HEVC", + .guid = UVC_GUID_FORMAT_HEVC, + .fcc = V4L2_PIX_FMT_HEVC, + }, }; /* ------------------------------------------------------------------------ --- linux-azure-5.8-5.8.0.orig/drivers/media/usb/uvc/uvc_entity.c +++ linux-azure-5.8-5.8.0/drivers/media/usb/uvc/uvc_entity.c @@ -73,10 +73,45 @@ int ret; if (UVC_ENTITY_TYPE(entity) != UVC_TT_STREAMING) { + u32 function; + v4l2_subdev_init(&entity->subdev, &uvc_subdev_ops); strscpy(entity->subdev.name, entity->name, sizeof(entity->subdev.name)); + switch (UVC_ENTITY_TYPE(entity)) { + case UVC_VC_SELECTOR_UNIT: + function = MEDIA_ENT_F_VID_MUX; + break; + case UVC_VC_PROCESSING_UNIT: + case UVC_VC_EXTENSION_UNIT: + /* For lack of a better option. */ + function = MEDIA_ENT_F_PROC_VIDEO_PIXEL_FORMATTER; + break; + case UVC_COMPOSITE_CONNECTOR: + case UVC_COMPONENT_CONNECTOR: + function = MEDIA_ENT_F_CONN_COMPOSITE; + break; + case UVC_SVIDEO_CONNECTOR: + function = MEDIA_ENT_F_CONN_SVIDEO; + break; + case UVC_ITT_CAMERA: + function = MEDIA_ENT_F_CAM_SENSOR; + break; + case UVC_TT_VENDOR_SPECIFIC: + case UVC_ITT_VENDOR_SPECIFIC: + case UVC_ITT_MEDIA_TRANSPORT_INPUT: + case UVC_OTT_VENDOR_SPECIFIC: + case UVC_OTT_DISPLAY: + case UVC_OTT_MEDIA_TRANSPORT_OUTPUT: + case UVC_EXTERNAL_VENDOR_SPECIFIC: + default: + function = MEDIA_ENT_F_V4L2_SUBDEV_UNKNOWN; + break; + } + + entity->subdev.entity.function = function; + ret = media_entity_pads_init(&entity->subdev.entity, entity->num_pads, entity->pads); --- linux-azure-5.8-5.8.0.orig/drivers/media/usb/uvc/uvc_v4l2.c +++ linux-azure-5.8-5.8.0/drivers/media/usb/uvc/uvc_v4l2.c @@ -247,11 +247,41 @@ if (ret < 0) goto done; + /* After the probe, update fmt with the values returned from + * negotiation with the device. Some devices return invalid bFormatIndex + * and bFrameIndex values, in which case we can only assume they have + * accepted the requested format as-is. + */ + for (i = 0; i < stream->nformats; ++i) { + if (probe->bFormatIndex == stream->format[i].index) { + format = &stream->format[i]; + break; + } + } + + if (i == stream->nformats) + uvc_trace(UVC_TRACE_FORMAT, + "Unknown bFormatIndex %u, using default\n", + probe->bFormatIndex); + + for (i = 0; i < format->nframes; ++i) { + if (probe->bFrameIndex == format->frame[i].bFrameIndex) { + frame = &format->frame[i]; + break; + } + } + + if (i == format->nframes) + uvc_trace(UVC_TRACE_FORMAT, + "Unknown bFrameIndex %u, using default\n", + probe->bFrameIndex); + fmt->fmt.pix.width = frame->wWidth; fmt->fmt.pix.height = frame->wHeight; fmt->fmt.pix.field = V4L2_FIELD_NONE; fmt->fmt.pix.bytesperline = uvc_v4l2_get_bytesperline(format, frame); fmt->fmt.pix.sizeimage = probe->dwMaxVideoFrameSize; + fmt->fmt.pix.pixelformat = format->fcc; fmt->fmt.pix.colorspace = format->colorspace; if (uvc_format != NULL) --- linux-azure-5.8-5.8.0.orig/drivers/media/usb/uvc/uvcvideo.h +++ linux-azure-5.8-5.8.0/drivers/media/usb/uvc/uvcvideo.h @@ -165,6 +165,10 @@ {0x32, 0x00, 0x00, 0x00, 0x02, 0x00, 0x10, 0x00, \ 0x80, 0x00, 0x00, 0xaa, 0x00, 0x38, 0x9b, 0x71} +#define UVC_GUID_FORMAT_HEVC \ + { 'H', 'E', 'V', 'C', 0x00, 0x00, 0x10, 0x00, \ + 0x80, 0x00, 0x00, 0xaa, 0x00, 0x38, 0x9b, 0x71} + /* ------------------------------------------------------------------------ * Driver specific constants. --- linux-azure-5.8-5.8.0.orig/drivers/media/v4l2-core/v4l2-fwnode.c +++ linux-azure-5.8-5.8.0/drivers/media/v4l2-core/v4l2-fwnode.c @@ -93,7 +93,7 @@ const struct v4l2_fwnode_bus_conv *conv = get_v4l2_fwnode_bus_conv_by_fwnode_bus(type); - return conv ? conv->mbus_type : V4L2_MBUS_UNKNOWN; + return conv ? conv->mbus_type : V4L2_MBUS_INVALID; } static const char * @@ -436,6 +436,10 @@ v4l2_fwnode_mbus_type_to_string(vep->bus_type), vep->bus_type); mbus_type = v4l2_fwnode_bus_type_to_mbus(bus_type); + if (mbus_type == V4L2_MBUS_INVALID) { + pr_debug("unsupported bus type %u\n", bus_type); + return -EINVAL; + } if (vep->bus_type != V4L2_MBUS_UNKNOWN) { if (mbus_type != V4L2_MBUS_UNKNOWN && --- linux-azure-5.8-5.8.0.orig/drivers/media/v4l2-core/v4l2-ioctl.c +++ linux-azure-5.8-5.8.0/drivers/media/v4l2-core/v4l2-ioctl.c @@ -3186,14 +3186,16 @@ #ifdef CONFIG_COMPAT_32BIT_TIME case VIDIOC_DQEVENT_TIME32: { struct v4l2_event *ev = parg; - struct v4l2_event_time32 ev32 = { - .type = ev->type, - .pending = ev->pending, - .sequence = ev->sequence, - .timestamp.tv_sec = ev->timestamp.tv_sec, - .timestamp.tv_nsec = ev->timestamp.tv_nsec, - .id = ev->id, - }; + struct v4l2_event_time32 ev32; + + memset(&ev32, 0, sizeof(ev32)); + + ev32.type = ev->type; + ev32.pending = ev->pending; + ev32.sequence = ev->sequence; + ev32.timestamp.tv_sec = ev->timestamp.tv_sec; + ev32.timestamp.tv_nsec = ev->timestamp.tv_nsec; + ev32.id = ev->id; memcpy(&ev32.u, &ev->u, sizeof(ev->u)); memcpy(&ev32.reserved, &ev->reserved, sizeof(ev->reserved)); @@ -3207,21 +3209,23 @@ case VIDIOC_DQBUF_TIME32: case VIDIOC_PREPARE_BUF_TIME32: { struct v4l2_buffer *vb = parg; - struct v4l2_buffer_time32 vb32 = { - .index = vb->index, - .type = vb->type, - .bytesused = vb->bytesused, - .flags = vb->flags, - .field = vb->field, - .timestamp.tv_sec = vb->timestamp.tv_sec, - .timestamp.tv_usec = vb->timestamp.tv_usec, - .timecode = vb->timecode, - .sequence = vb->sequence, - .memory = vb->memory, - .m.userptr = vb->m.userptr, - .length = vb->length, - .request_fd = vb->request_fd, - }; + struct v4l2_buffer_time32 vb32; + + memset(&vb32, 0, sizeof(vb32)); + + vb32.index = vb->index; + vb32.type = vb->type; + vb32.bytesused = vb->bytesused; + vb32.flags = vb->flags; + vb32.field = vb->field; + vb32.timestamp.tv_sec = vb->timestamp.tv_sec; + vb32.timestamp.tv_usec = vb->timestamp.tv_usec; + vb32.timecode = vb->timecode; + vb32.sequence = vb->sequence; + vb32.memory = vb->memory; + vb32.m.userptr = vb->m.userptr; + vb32.length = vb->length; + vb32.request_fd = vb->request_fd; if (copy_to_user(arg, &vb32, sizeof(vb32))) return -EFAULT; --- linux-azure-5.8-5.8.0.orig/drivers/memory/brcmstb_dpfe.c +++ linux-azure-5.8-5.8.0/drivers/memory/brcmstb_dpfe.c @@ -648,8 +648,10 @@ return (ret == -ENOENT) ? -EPROBE_DEFER : ret; ret = __verify_firmware(&init, fw); - if (ret) - return -EFAULT; + if (ret) { + ret = -EFAULT; + goto release_fw; + } __disable_dcpu(priv); @@ -668,18 +670,20 @@ ret = __write_firmware(priv->dmem, dmem, dmem_size, is_big_endian); if (ret) - return ret; + goto release_fw; ret = __write_firmware(priv->imem, imem, imem_size, is_big_endian); if (ret) - return ret; + goto release_fw; ret = __verify_fw_checksum(&init, priv, header, init.chksum); if (ret) - return ret; + goto release_fw; __enable_dcpu(priv); - return 0; +release_fw: + release_firmware(fw); + return ret; } static ssize_t generic_show(unsigned int command, u32 response[], --- linux-azure-5.8-5.8.0.orig/drivers/memory/emif.c +++ linux-azure-5.8-5.8.0/drivers/memory/emif.c @@ -163,35 +163,12 @@ static int __init_or_module emif_debugfs_init(struct emif_data *emif) { - struct dentry *dentry; - int ret; - - dentry = debugfs_create_dir(dev_name(emif->dev), NULL); - if (!dentry) { - ret = -ENOMEM; - goto err0; - } - emif->debugfs_root = dentry; - - dentry = debugfs_create_file("regcache_dump", S_IRUGO, - emif->debugfs_root, emif, &emif_regdump_fops); - if (!dentry) { - ret = -ENOMEM; - goto err1; - } - - dentry = debugfs_create_file("mr4", S_IRUGO, - emif->debugfs_root, emif, &emif_mr4_fops); - if (!dentry) { - ret = -ENOMEM; - goto err1; - } - + emif->debugfs_root = debugfs_create_dir(dev_name(emif->dev), NULL); + debugfs_create_file("regcache_dump", S_IRUGO, emif->debugfs_root, emif, + &emif_regdump_fops); + debugfs_create_file("mr4", S_IRUGO, emif->debugfs_root, emif, + &emif_mr4_fops); return 0; -err1: - debugfs_remove_recursive(emif->debugfs_root); -err0: - return ret; } static void __exit emif_debugfs_exit(struct emif_data *emif) --- linux-azure-5.8-5.8.0.orig/drivers/memory/fsl-corenet-cf.c +++ linux-azure-5.8-5.8.0/drivers/memory/fsl-corenet-cf.c @@ -211,10 +211,8 @@ dev_set_drvdata(&pdev->dev, ccf); irq = platform_get_irq(pdev, 0); - if (!irq) { - dev_err(&pdev->dev, "%s: no irq\n", __func__); - return -ENXIO; - } + if (irq < 0) + return irq; ret = devm_request_irq(&pdev->dev, irq, ccf_irq, 0, pdev->name, ccf); if (ret) { --- linux-azure-5.8-5.8.0.orig/drivers/memory/jz4780-nemc.c +++ linux-azure-5.8-5.8.0/drivers/memory/jz4780-nemc.c @@ -288,6 +288,8 @@ nemc->dev = dev; res = platform_get_resource(pdev, IORESOURCE_MEM, 0); + if (!res) + return -EINVAL; nemc->base = devm_ioremap_resource(dev, res); if (IS_ERR(nemc->base)) { dev_err(dev, "failed to get I/O memory\n"); --- linux-azure-5.8-5.8.0.orig/drivers/memory/mtk-smi.c +++ linux-azure-5.8-5.8.0/drivers/memory/mtk-smi.c @@ -127,7 +127,7 @@ int mtk_smi_larb_get(struct device *larbdev) { - int ret = pm_runtime_get_sync(larbdev); + int ret = pm_runtime_resume_and_get(larbdev); return (ret < 0) ? ret : 0; } @@ -336,7 +336,7 @@ int ret; /* Power on smi-common. */ - ret = pm_runtime_get_sync(larb->smi_common_dev); + ret = pm_runtime_resume_and_get(larb->smi_common_dev); if (ret < 0) { dev_err(dev, "Failed to pm get for smi-common(%d).\n", ret); return ret; --- linux-azure-5.8-5.8.0.orig/drivers/memory/omap-gpmc.c +++ linux-azure-5.8-5.8.0/drivers/memory/omap-gpmc.c @@ -949,7 +949,7 @@ int ret; u32 old_base, size; - if (cs > gpmc_cs_num) { + if (cs >= gpmc_cs_num) { pr_err("%s: requested chip-select is disabled\n", __func__); return -ENODEV; } @@ -984,7 +984,7 @@ struct resource *res = &gpmc->mem; int r = -1; - if (cs > gpmc_cs_num) { + if (cs >= gpmc_cs_num) { pr_err("%s: requested chip-select is disabled\n", __func__); return -ENODEV; } @@ -2274,6 +2274,10 @@ } } #else +void gpmc_read_settings_dt(struct device_node *np, struct gpmc_settings *p) +{ + memset(p, 0, sizeof(*p)); +} static int gpmc_probe_dt(struct platform_device *pdev) { return 0; --- linux-azure-5.8-5.8.0.orig/drivers/memory/samsung/exynos5422-dmc.c +++ linux-azure-5.8-5.8.0/drivers/memory/samsung/exynos5422-dmc.c @@ -270,12 +270,14 @@ * This function switches between these banks according to the * currently used clock source. */ -static void exynos5_switch_timing_regs(struct exynos5_dmc *dmc, bool set) +static int exynos5_switch_timing_regs(struct exynos5_dmc *dmc, bool set) { unsigned int reg; int ret; ret = regmap_read(dmc->clk_regmap, CDREX_LPDDR3PHY_CON3, ®); + if (ret) + return ret; if (set) reg |= EXYNOS5_TIMING_SET_SWI; @@ -283,6 +285,8 @@ reg &= ~EXYNOS5_TIMING_SET_SWI; regmap_write(dmc->clk_regmap, CDREX_LPDDR3PHY_CON3, reg); + + return 0; } /** @@ -516,7 +520,7 @@ /* * Delays are long enough, so use them for the new coming clock. */ - exynos5_switch_timing_regs(dmc, USE_MX_MSPLL_TIMINGS); + ret = exynos5_switch_timing_regs(dmc, USE_MX_MSPLL_TIMINGS); return ret; } @@ -577,7 +581,9 @@ clk_set_rate(dmc->fout_bpll, target_rate); - exynos5_switch_timing_regs(dmc, USE_BPLL_TIMINGS); + ret = exynos5_switch_timing_regs(dmc, USE_BPLL_TIMINGS); + if (ret) + goto disable_clocks; ret = clk_set_parent(dmc->mout_mclk_cdrex, dmc->mout_bpll); if (ret) --- linux-azure-5.8-5.8.0.orig/drivers/memory/tegra/tegra124.c +++ linux-azure-5.8-5.8.0/drivers/memory/tegra/tegra124.c @@ -957,7 +957,6 @@ static const unsigned int tegra124_group_drm[] = { TEGRA_SWGROUP_DC, TEGRA_SWGROUP_DCB, - TEGRA_SWGROUP_GPU, TEGRA_SWGROUP_VIC, }; --- linux-azure-5.8-5.8.0.orig/drivers/memory/tegra/tegra186-emc.c +++ linux-azure-5.8-5.8.0/drivers/memory/tegra/tegra186-emc.c @@ -185,7 +185,7 @@ if (IS_ERR(emc->clk)) { err = PTR_ERR(emc->clk); dev_err(&pdev->dev, "failed to get EMC clock: %d\n", err); - return err; + goto put_bpmp; } platform_set_drvdata(pdev, emc); @@ -201,7 +201,7 @@ err = tegra_bpmp_transfer(emc->bpmp, &msg); if (err < 0) { dev_err(&pdev->dev, "failed to EMC DVFS pairs: %d\n", err); - return err; + goto put_bpmp; } emc->debugfs.min_rate = ULONG_MAX; @@ -211,8 +211,10 @@ emc->dvfs = devm_kmalloc_array(&pdev->dev, emc->num_dvfs, sizeof(*emc->dvfs), GFP_KERNEL); - if (!emc->dvfs) - return -ENOMEM; + if (!emc->dvfs) { + err = -ENOMEM; + goto put_bpmp; + } dev_dbg(&pdev->dev, "%u DVFS pairs:\n", emc->num_dvfs); @@ -237,7 +239,7 @@ "failed to set rate range [%lu-%lu] for %pC\n", emc->debugfs.min_rate, emc->debugfs.max_rate, emc->clk); - return err; + goto put_bpmp; } emc->debugfs.root = debugfs_create_dir("emc", NULL); @@ -254,6 +256,10 @@ emc, &tegra186_emc_debug_max_rate_fops); return 0; + +put_bpmp: + tegra_bpmp_put(emc->bpmp); + return err; } static int tegra186_emc_remove(struct platform_device *pdev) --- linux-azure-5.8-5.8.0.orig/drivers/memory/ti-aemif.c +++ linux-azure-5.8-5.8.0/drivers/memory/ti-aemif.c @@ -378,8 +378,10 @@ */ for_each_available_child_of_node(np, child_np) { ret = of_aemif_parse_abus_config(pdev, child_np); - if (ret < 0) + if (ret < 0) { + of_node_put(child_np); goto error; + } } } else if (pdata && pdata->num_abus_data > 0) { for (i = 0; i < pdata->num_abus_data; i++, aemif->num_cs++) { @@ -405,8 +407,10 @@ for_each_available_child_of_node(np, child_np) { ret = of_platform_populate(child_np, NULL, dev_lookup, dev); - if (ret < 0) + if (ret < 0) { + of_node_put(child_np); goto error; + } } } else if (pdata) { for (i = 0; i < pdata->num_sub_devices; i++) { --- linux-azure-5.8-5.8.0.orig/drivers/memstick/core/memstick.c +++ linux-azure-5.8-5.8.0/drivers/memstick/core/memstick.c @@ -441,6 +441,9 @@ } else if (host->card->stop) host->card->stop(host->card); + if (host->removing) + goto out_power_off; + card = memstick_alloc_card(host); if (!card) { @@ -465,7 +468,6 @@ host->card = card; if (device_register(&card->dev)) { put_device(&card->dev); - kfree(host->card); host->card = NULL; } } else @@ -545,6 +547,7 @@ */ void memstick_remove_host(struct memstick_host *host) { + host->removing = 1; flush_workqueue(workqueue); mutex_lock(&host->lock); if (host->card) --- linux-azure-5.8-5.8.0.orig/drivers/memstick/host/r592.c +++ linux-azure-5.8-5.8.0/drivers/memstick/host/r592.c @@ -759,8 +759,10 @@ goto error3; dev->mmio = pci_ioremap_bar(pdev, 0); - if (!dev->mmio) + if (!dev->mmio) { + error = -ENOMEM; goto error4; + } dev->irq = pdev->irq; spin_lock_init(&dev->irq_lock); @@ -786,12 +788,14 @@ &dev->dummy_dma_page_physical_address, GFP_KERNEL); r592_stop_dma(dev , 0); - if (request_irq(dev->irq, &r592_irq, IRQF_SHARED, - DRV_NAME, dev)) + error = request_irq(dev->irq, &r592_irq, IRQF_SHARED, + DRV_NAME, dev); + if (error) goto error6; r592_update_card_detect(dev); - if (memstick_add_host(host)) + error = memstick_add_host(host); + if (error) goto error7; message("driver successfully loaded"); --- linux-azure-5.8-5.8.0.orig/drivers/message/fusion/mptscsih.c +++ linux-azure-5.8-5.8.0/drivers/message/fusion/mptscsih.c @@ -1176,8 +1176,10 @@ MPT_SCSI_HOST *hd; int sz1; - if((hd = shost_priv(host)) == NULL) - return; + if (host == NULL) + hd = NULL; + else + hd = shost_priv(host); mptscsih_shutdown(pdev); @@ -1193,14 +1195,15 @@ "Free'd ScsiLookup (%d) memory\n", ioc->name, sz1)); - kfree(hd->info_kbuf); + if (hd) + kfree(hd->info_kbuf); /* NULL the Scsi_Host pointer */ ioc->sh = NULL; - scsi_host_put(host); - + if (host) + scsi_host_put(host); mpt_detach(pdev); } --- linux-azure-5.8-5.8.0.orig/drivers/mfd/arizona-core.c +++ linux-azure-5.8-5.8.0/drivers/mfd/arizona-core.c @@ -1426,6 +1426,15 @@ arizona_irq_exit(arizona); err_pm: pm_runtime_disable(arizona->dev); + + switch (arizona->pdata.clk32k_src) { + case ARIZONA_32KZ_MCLK1: + case ARIZONA_32KZ_MCLK2: + arizona_clk32k_disable(arizona); + break; + default: + break; + } err_reset: arizona_enable_reset(arizona); regulator_disable(arizona->dcvdd); @@ -1448,6 +1457,15 @@ regulator_disable(arizona->dcvdd); regulator_put(arizona->dcvdd); + switch (arizona->pdata.clk32k_src) { + case ARIZONA_32KZ_MCLK1: + case ARIZONA_32KZ_MCLK2: + arizona_clk32k_disable(arizona); + break; + default: + break; + } + mfd_remove_devices(arizona->dev); arizona_free_irq(arizona, ARIZONA_IRQ_UNDERCLOCKED, arizona); arizona_free_irq(arizona, ARIZONA_IRQ_OVERCLOCKED, arizona); --- linux-azure-5.8-5.8.0.orig/drivers/mfd/bd9571mwv.c +++ linux-azure-5.8-5.8.0/drivers/mfd/bd9571mwv.c @@ -185,9 +185,9 @@ return ret; } - ret = mfd_add_devices(bd->dev, PLATFORM_DEVID_AUTO, bd9571mwv_cells, - ARRAY_SIZE(bd9571mwv_cells), NULL, 0, - regmap_irq_get_domain(bd->irq_data)); + ret = devm_mfd_add_devices(bd->dev, PLATFORM_DEVID_AUTO, + bd9571mwv_cells, ARRAY_SIZE(bd9571mwv_cells), + NULL, 0, regmap_irq_get_domain(bd->irq_data)); if (ret) { regmap_del_irq_chip(bd->irq, bd->irq_data); return ret; --- linux-azure-5.8-5.8.0.orig/drivers/mfd/dln2.c +++ linux-azure-5.8-5.8.0/drivers/mfd/dln2.c @@ -287,7 +287,11 @@ len = urb->actual_length - sizeof(struct dln2_header); if (handle == DLN2_HANDLE_EVENT) { + unsigned long flags; + + spin_lock_irqsave(&dln2->event_cb_lock, flags); dln2_run_event_callbacks(dln2, id, echo, data, len); + spin_unlock_irqrestore(&dln2->event_cb_lock, flags); } else { /* URB will be re-submitted in _dln2_transfer (free_rx_slot) */ if (dln2_transfer_complete(dln2, urb, handle, echo)) --- linux-azure-5.8-5.8.0.orig/drivers/mfd/gateworks-gsc.c +++ linux-azure-5.8-5.8.0/drivers/mfd/gateworks-gsc.c @@ -234,7 +234,7 @@ ret = devm_regmap_add_irq_chip(dev, gsc->regmap, client->irq, IRQF_ONESHOT | IRQF_SHARED | - IRQF_TRIGGER_FALLING, 0, + IRQF_TRIGGER_LOW, 0, &gsc_irq_chip, &irq_data); if (ret) return ret; --- linux-azure-5.8-5.8.0.orig/drivers/mfd/htc-i2cpld.c +++ linux-azure-5.8-5.8.0/drivers/mfd/htc-i2cpld.c @@ -346,6 +346,7 @@ if (!i2c_check_functionality(adapter, I2C_FUNC_SMBUS_READ_BYTE_DATA)) { dev_warn(dev, "i2c adapter %d non-functional\n", pdata->i2c_adapter_id); + i2c_put_adapter(adapter); return -EINVAL; } @@ -360,6 +361,7 @@ /* I2C device registration failed, contineu with the next */ dev_warn(dev, "Unable to add I2C device for 0x%x\n", plat_chip_data->addr); + i2c_put_adapter(adapter); return PTR_ERR(client); } --- linux-azure-5.8-5.8.0.orig/drivers/mfd/intel-lpss-pci.c +++ linux-azure-5.8-5.8.0/drivers/mfd/intel-lpss-pci.c @@ -201,6 +201,9 @@ { PCI_VDEVICE(INTEL, 0x1ac4), (kernel_ulong_t)&bxt_info }, { PCI_VDEVICE(INTEL, 0x1ac6), (kernel_ulong_t)&bxt_info }, { PCI_VDEVICE(INTEL, 0x1aee), (kernel_ulong_t)&bxt_uart_info }, + /* EBG */ + { PCI_VDEVICE(INTEL, 0x1bad), (kernel_ulong_t)&bxt_uart_info }, + { PCI_VDEVICE(INTEL, 0x1bae), (kernel_ulong_t)&bxt_uart_info }, /* GLK */ { PCI_VDEVICE(INTEL, 0x31ac), (kernel_ulong_t)&glk_i2c_info }, { PCI_VDEVICE(INTEL, 0x31ae), (kernel_ulong_t)&glk_i2c_info }, @@ -230,6 +233,22 @@ { PCI_VDEVICE(INTEL, 0x34ea), (kernel_ulong_t)&bxt_i2c_info }, { PCI_VDEVICE(INTEL, 0x34eb), (kernel_ulong_t)&bxt_i2c_info }, { PCI_VDEVICE(INTEL, 0x34fb), (kernel_ulong_t)&spt_info }, + /* TGL-H */ + { PCI_VDEVICE(INTEL, 0x43a7), (kernel_ulong_t)&bxt_uart_info }, + { PCI_VDEVICE(INTEL, 0x43a8), (kernel_ulong_t)&bxt_uart_info }, + { PCI_VDEVICE(INTEL, 0x43a9), (kernel_ulong_t)&bxt_uart_info }, + { PCI_VDEVICE(INTEL, 0x43aa), (kernel_ulong_t)&bxt_info }, + { PCI_VDEVICE(INTEL, 0x43ab), (kernel_ulong_t)&bxt_info }, + { PCI_VDEVICE(INTEL, 0x43ad), (kernel_ulong_t)&bxt_i2c_info }, + { PCI_VDEVICE(INTEL, 0x43ae), (kernel_ulong_t)&bxt_i2c_info }, + { PCI_VDEVICE(INTEL, 0x43d8), (kernel_ulong_t)&bxt_i2c_info }, + { PCI_VDEVICE(INTEL, 0x43da), (kernel_ulong_t)&bxt_uart_info }, + { PCI_VDEVICE(INTEL, 0x43e8), (kernel_ulong_t)&bxt_i2c_info }, + { PCI_VDEVICE(INTEL, 0x43e9), (kernel_ulong_t)&bxt_i2c_info }, + { PCI_VDEVICE(INTEL, 0x43ea), (kernel_ulong_t)&bxt_i2c_info }, + { PCI_VDEVICE(INTEL, 0x43eb), (kernel_ulong_t)&bxt_i2c_info }, + { PCI_VDEVICE(INTEL, 0x43fb), (kernel_ulong_t)&bxt_info }, + { PCI_VDEVICE(INTEL, 0x43fd), (kernel_ulong_t)&bxt_info }, /* EHL */ { PCI_VDEVICE(INTEL, 0x4b28), (kernel_ulong_t)&bxt_uart_info }, { PCI_VDEVICE(INTEL, 0x4b29), (kernel_ulong_t)&bxt_uart_info }, --- linux-azure-5.8-5.8.0.orig/drivers/mfd/ioc3.c +++ linux-azure-5.8-5.8.0/drivers/mfd/ioc3.c @@ -616,7 +616,10 @@ /* Remove all already added MFD devices */ mfd_remove_devices(&ipd->pdev->dev); if (ipd->domain) { + struct fwnode_handle *fn = ipd->domain->fwnode; + irq_domain_remove(ipd->domain); + irq_domain_free_fwnode(fn); free_irq(ipd->domain_irq, (void *)ipd); } pci_iounmap(pdev, regs); @@ -643,7 +646,10 @@ /* Release resources */ mfd_remove_devices(&ipd->pdev->dev); if (ipd->domain) { + struct fwnode_handle *fn = ipd->domain->fwnode; + irq_domain_remove(ipd->domain); + irq_domain_free_fwnode(fn); free_irq(ipd->domain_irq, (void *)ipd); } pci_iounmap(pdev, ipd->regs); --- linux-azure-5.8-5.8.0.orig/drivers/mfd/sm501.c +++ linux-azure-5.8-5.8.0/drivers/mfd/sm501.c @@ -1415,8 +1415,14 @@ goto err_claim; } - return sm501_init_dev(sm); + ret = sm501_init_dev(sm); + if (ret) + goto err_unmap; + return 0; + + err_unmap: + iounmap(sm->regs); err_claim: release_mem_region(sm->io_res->start, 0x100); err_res: --- linux-azure-5.8-5.8.0.orig/drivers/mfd/sprd-sc27xx-spi.c +++ linux-azure-5.8-5.8.0/drivers/mfd/sprd-sc27xx-spi.c @@ -256,7 +256,7 @@ } ret = devm_regmap_add_irq_chip(&spi->dev, ddata->regmap, ddata->irq, - IRQF_ONESHOT | IRQF_NO_SUSPEND, 0, + IRQF_ONESHOT, 0, &ddata->irq_chip, &ddata->irq_data); if (ret) { dev_err(&spi->dev, "Failed to add PMIC irq chip %d\n", ret); @@ -272,9 +272,34 @@ return ret; } + device_init_wakeup(&spi->dev, true); return 0; } +#ifdef CONFIG_PM_SLEEP +static int sprd_pmic_suspend(struct device *dev) +{ + struct sprd_pmic *ddata = dev_get_drvdata(dev); + + if (device_may_wakeup(dev)) + enable_irq_wake(ddata->irq); + + return 0; +} + +static int sprd_pmic_resume(struct device *dev) +{ + struct sprd_pmic *ddata = dev_get_drvdata(dev); + + if (device_may_wakeup(dev)) + disable_irq_wake(ddata->irq); + + return 0; +} +#endif + +static SIMPLE_DEV_PM_OPS(sprd_pmic_pm_ops, sprd_pmic_suspend, sprd_pmic_resume); + static const struct of_device_id sprd_pmic_match[] = { { .compatible = "sprd,sc2731", .data = &sc2731_data }, {}, @@ -285,6 +310,7 @@ .driver = { .name = "sc27xx-pmic", .of_match_table = sprd_pmic_match, + .pm = &sprd_pmic_pm_ops, }, .probe = sprd_pmic_probe, }; --- linux-azure-5.8-5.8.0.orig/drivers/mfd/wm831x-auxadc.c +++ linux-azure-5.8-5.8.0/drivers/mfd/wm831x-auxadc.c @@ -93,11 +93,10 @@ wait_for_completion_timeout(&req->done, msecs_to_jiffies(500)); mutex_lock(&wm831x->auxadc_lock); - - list_del(&req->list); ret = req->val; out: + list_del(&req->list); mutex_unlock(&wm831x->auxadc_lock); kfree(req); --- linux-azure-5.8-5.8.0.orig/drivers/misc/cardreader/rts5227.c +++ linux-azure-5.8-5.8.0/drivers/misc/cardreader/rts5227.c @@ -338,6 +338,11 @@ { rts5227_extra_init_hw(pcr); + /* Power down OCP for power consumption */ + if (!pcr->card_exist) + rtsx_pci_write_register(pcr, FPDCTL, OC_POWER_DOWN, + OC_POWER_DOWN); + rtsx_pci_write_register(pcr, FUNC_FORCE_CTL, FUNC_FORCE_UPME_XMT_DBG, FUNC_FORCE_UPME_XMT_DBG); rtsx_pci_write_register(pcr, PCLK_CTL, 0x04, 0x04); --- linux-azure-5.8-5.8.0.orig/drivers/misc/cardreader/rtsx_pcr.c +++ linux-azure-5.8-5.8.0/drivers/misc/cardreader/rtsx_pcr.c @@ -1172,10 +1172,6 @@ rtsx_pci_write_register(pcr, REG_OCPGLITCH, SD_OCP_GLITCH_MASK, pcr->hw_param.ocp_glitch); rtsx_pci_enable_ocp(pcr); - } else { - /* OC power down */ - rtsx_pci_write_register(pcr, FPDCTL, OC_POWER_DOWN, - OC_POWER_DOWN); } } } @@ -1536,12 +1532,14 @@ ret = mfd_add_devices(&pcidev->dev, pcr->id, rtsx_pcr_cells, ARRAY_SIZE(rtsx_pcr_cells), NULL, 0, NULL); if (ret < 0) - goto disable_irq; + goto free_slots; schedule_delayed_work(&pcr->idle_work, msecs_to_jiffies(200)); return 0; +free_slots: + kfree(pcr->slots); disable_irq: free_irq(pcr->irq, (void *)pcr); disable_msi: --- linux-azure-5.8-5.8.0.orig/drivers/misc/cxl/pci.c +++ linux-azure-5.8-5.8.0/drivers/misc/cxl/pci.c @@ -393,8 +393,8 @@ *capp_unit_id = get_capp_unit_id(np, *phb_index); of_node_put(np); if (!*capp_unit_id) { - pr_err("cxl: invalid capp unit id (phb_index: %d)\n", - *phb_index); + pr_err("cxl: No capp unit found for PHB[%lld,%d]. Make sure the adapter is on a capi-compatible slot\n", + *chipid, *phb_index); return -ENODEV; } --- linux-azure-5.8-5.8.0.orig/drivers/misc/cxl/sysfs.c +++ linux-azure-5.8-5.8.0/drivers/misc/cxl/sysfs.c @@ -624,7 +624,7 @@ rc = kobject_init_and_add(&cr->kobj, &afu_config_record_type, &afu->dev.kobj, "cr%i", cr->cr); if (rc) - goto err; + goto err1; rc = sysfs_create_bin_file(&cr->kobj, &cr->config_attr); if (rc) --- linux-azure-5.8-5.8.0.orig/drivers/misc/eeprom/at24.c +++ linux-azure-5.8-5.8.0/drivers/misc/eeprom/at24.c @@ -692,10 +692,6 @@ nvmem_config.word_size = 1; nvmem_config.size = byte_len; - at24->nvmem = devm_nvmem_register(dev, &nvmem_config); - if (IS_ERR(at24->nvmem)) - return PTR_ERR(at24->nvmem); - i2c_set_clientdata(client, at24); err = regulator_enable(at24->vcc_reg); @@ -708,6 +704,13 @@ pm_runtime_set_active(dev); pm_runtime_enable(dev); + at24->nvmem = devm_nvmem_register(dev, &nvmem_config); + if (IS_ERR(at24->nvmem)) { + pm_runtime_disable(dev); + regulator_disable(at24->vcc_reg); + return PTR_ERR(at24->nvmem); + } + /* * Perform a one-byte test read to verify that the * chip is functional. --- linux-azure-5.8-5.8.0.orig/drivers/misc/eeprom/at25.c +++ linux-azure-5.8-5.8.0/drivers/misc/eeprom/at25.c @@ -358,7 +358,7 @@ at25->nvmem_config.reg_read = at25_ee_read; at25->nvmem_config.reg_write = at25_ee_write; at25->nvmem_config.priv = at25; - at25->nvmem_config.stride = 4; + at25->nvmem_config.stride = 1; at25->nvmem_config.word_size = 1; at25->nvmem_config.size = chip.byte_len; --- linux-azure-5.8-5.8.0.orig/drivers/misc/eeprom/eeprom_93xx46.c +++ linux-azure-5.8-5.8.0/drivers/misc/eeprom/eeprom_93xx46.c @@ -511,3 +511,4 @@ MODULE_DESCRIPTION("Driver for 93xx46 EEPROMs"); MODULE_AUTHOR("Anatolij Gustschin "); MODULE_ALIAS("spi:93xx46"); +MODULE_ALIAS("spi:eeprom-93xx46"); --- linux-azure-5.8-5.8.0.orig/drivers/misc/fastrpc.c +++ linux-azure-5.8-5.8.0/drivers/misc/fastrpc.c @@ -515,12 +515,13 @@ { struct fastrpc_dma_buf_attachment *a = attachment->priv; struct sg_table *table; + int ret; table = &a->sgt; - if (!dma_map_sg(attachment->dev, table->sgl, table->nents, dir)) - return ERR_PTR(-ENOMEM); - + ret = dma_map_sgtable(attachment->dev, table, dir, 0); + if (ret) + table = ERR_PTR(ret); return table; } @@ -528,7 +529,7 @@ struct sg_table *table, enum dma_data_direction dir) { - dma_unmap_sg(attach->dev, table->sgl, table->nents, dir); + dma_unmap_sgtable(attach->dev, table, dir, 0); } static void fastrpc_release(struct dma_buf *dmabuf) @@ -942,6 +943,11 @@ if (!fl->cctx->rpdev) return -EPIPE; + if (handle == FASTRPC_INIT_HANDLE && !kernel) { + dev_warn_ratelimited(fl->sctx->dev, "user app trying to send a kernel RPC message (%d)\n", handle); + return -EPERM; + } + ctx = fastrpc_context_alloc(fl, kernel, sc, args); if (IS_ERR(ctx)) return PTR_ERR(ctx); --- linux-azure-5.8-5.8.0.orig/drivers/misc/habanalabs/debugfs.c +++ linux-azure-5.8-5.8.0/drivers/misc/habanalabs/debugfs.c @@ -19,7 +19,7 @@ static struct dentry *hl_debug_root; static int hl_debugfs_i2c_read(struct hl_device *hdev, u8 i2c_bus, u8 i2c_addr, - u8 i2c_reg, u32 *val) + u8 i2c_reg, long *val) { struct armcp_packet pkt; int rc; @@ -36,7 +36,7 @@ pkt.i2c_reg = i2c_reg; rc = hdev->asic_funcs->send_cpu_message(hdev, (u32 *) &pkt, sizeof(pkt), - 0, (long *) val); + 0, val); if (rc) dev_err(hdev->dev, "Failed to read from I2C, error %d\n", rc); @@ -827,7 +827,7 @@ struct hl_dbg_device_entry *entry = file_inode(f)->i_private; struct hl_device *hdev = entry->hdev; char tmp_buf[32]; - u32 val; + long val; ssize_t rc; if (*ppos) @@ -842,7 +842,7 @@ return rc; } - sprintf(tmp_buf, "0x%02x\n", val); + sprintf(tmp_buf, "0x%02lx\n", val); rc = simple_read_from_buffer(buf, count, ppos, tmp_buf, strlen(tmp_buf)); @@ -982,7 +982,7 @@ return 0; sprintf(tmp_buf, "0x%llx\n", hdev->clock_gating_mask); - rc = simple_read_from_buffer(buf, strlen(tmp_buf) + 1, ppos, tmp_buf, + rc = simple_read_from_buffer(buf, count, ppos, tmp_buf, strlen(tmp_buf) + 1); return rc; --- linux-azure-5.8-5.8.0.orig/drivers/misc/habanalabs/device.c +++ linux-azure-5.8-5.8.0/drivers/misc/habanalabs/device.c @@ -227,16 +227,16 @@ static void device_cdev_sysfs_del(struct hl_device *hdev) { - /* device_release() won't be called so must free devices explicitly */ - if (!hdev->cdev_sysfs_created) { - kfree(hdev->dev_ctrl); - kfree(hdev->dev); - return; - } + if (!hdev->cdev_sysfs_created) + goto put_devices; hl_sysfs_fini(hdev); cdev_device_del(&hdev->cdev_ctrl, hdev->dev_ctrl); cdev_device_del(&hdev->cdev, hdev->dev); + +put_devices: + put_device(hdev->dev); + put_device(hdev->dev_ctrl); } /* @@ -980,6 +980,7 @@ GFP_KERNEL); if (!hdev->kernel_ctx) { rc = -ENOMEM; + hl_mmu_fini(hdev); goto out_err; } @@ -991,6 +992,7 @@ "failed to init kernel ctx in hard reset\n"); kfree(hdev->kernel_ctx); hdev->kernel_ctx = NULL; + hl_mmu_fini(hdev); goto out_err; } } @@ -1027,7 +1029,7 @@ goto out_err; } - hl_set_max_power(hdev, hdev->max_power); + hl_set_max_power(hdev); } else { rc = hdev->asic_funcs->soft_reset_late_init(hdev); if (rc) { @@ -1268,6 +1270,11 @@ goto out_disabled; } + /* Need to call this again because the max power might change, + * depending on card type for certain ASICs + */ + hl_set_max_power(hdev); + /* * hl_hwmon_init() must be called after device_late_init(), because only * there we get the information from the device about which @@ -1307,9 +1314,9 @@ early_fini: device_early_fini(hdev); free_dev_ctrl: - kfree(hdev->dev_ctrl); + put_device(hdev->dev_ctrl); free_dev: - kfree(hdev->dev); + put_device(hdev->dev); out_disabled: hdev->disabled = true; if (add_cdev_sysfs_on_err) --- linux-azure-5.8-5.8.0.orig/drivers/misc/habanalabs/firmware_if.c +++ linux-azure-5.8-5.8.0/drivers/misc/habanalabs/firmware_if.c @@ -13,6 +13,7 @@ #include #include +#define FW_FILE_MAX_SIZE 0x1400000 /* maximum size of 20MB */ /** * hl_fw_load_fw_to_device() - Load F/W code to device's memory. * @hdev: pointer to hl_device structure. @@ -45,6 +46,14 @@ dev_dbg(hdev->dev, "%s firmware size == %zu\n", fw_name, fw_size); + if (fw_size > FW_FILE_MAX_SIZE) { + dev_err(hdev->dev, + "FW file size %zu exceeds maximum of %u bytes\n", + fw_size, FW_FILE_MAX_SIZE); + rc = -EINVAL; + goto out; + } + fw_data = (const u64 *) fw->data; memcpy_toio(dst, fw_data, fw_size); --- linux-azure-5.8-5.8.0.orig/drivers/misc/habanalabs/gaudi/gaudi.c +++ linux-azure-5.8-5.8.0/drivers/misc/habanalabs/gaudi/gaudi.c @@ -154,6 +154,29 @@ [PACKET_LOAD_AND_EXE] = sizeof(struct packet_load_and_exe) }; +static inline bool validate_packet_id(enum packet_id id) +{ + switch (id) { + case PACKET_WREG_32: + case PACKET_WREG_BULK: + case PACKET_MSG_LONG: + case PACKET_MSG_SHORT: + case PACKET_CP_DMA: + case PACKET_REPEAT: + case PACKET_MSG_PROT: + case PACKET_FENCE: + case PACKET_LIN_DMA: + case PACKET_NOP: + case PACKET_STOP: + case PACKET_ARB_POINT: + case PACKET_WAIT: + case PACKET_LOAD_AND_EXE: + return true; + default: + return false; + } +} + static const char * const gaudi_tpc_interrupts_cause[GAUDI_NUM_OF_TPC_INTR_CAUSE] = { "tpc_address_exceed_slm", @@ -424,7 +447,7 @@ prop->num_of_events = GAUDI_EVENT_SIZE; prop->tpc_enabled_mask = TPC_ENABLED_MASK; - prop->max_power_default = MAX_POWER_DEFAULT; + prop->max_power_default = MAX_POWER_DEFAULT_PCI; prop->cb_pool_cb_cnt = GAUDI_CB_POOL_CB_CNT; prop->cb_pool_cb_size = GAUDI_CB_POOL_CB_SIZE; @@ -652,11 +675,17 @@ size_t fw_size; void *cpu_addr; dma_addr_t dma_handle; - int rc; + int rc, count = 5; +again: rc = request_firmware(&fw, GAUDI_TPC_FW_FILE, hdev->dev); + if (rc == -EINTR && count-- > 0) { + msleep(50); + goto again; + } + if (rc) { - dev_err(hdev->dev, "Firmware file %s is not found!\n", + dev_err(hdev->dev, "Failed to load firmware file %s\n", GAUDI_TPC_FW_FILE); goto out; } @@ -2541,6 +2570,7 @@ { struct gaudi_device *gaudi = hdev->asic_specific; u32 qman_offset; + bool enable; int i; /* In case we are during debug session, don't enable the clock gate @@ -2550,46 +2580,43 @@ return; for (i = GAUDI_PCI_DMA_1, qman_offset = 0 ; i < GAUDI_HBM_DMA_1 ; i++) { - if (!(hdev->clock_gating_mask & - (BIT_ULL(gaudi_dma_assignment[i])))) - continue; + enable = !!(hdev->clock_gating_mask & + (BIT_ULL(gaudi_dma_assignment[i]))); qman_offset = gaudi_dma_assignment[i] * DMA_QMAN_OFFSET; - WREG32(mmDMA0_QM_CGM_CFG1 + qman_offset, QMAN_CGM1_PWR_GATE_EN); + WREG32(mmDMA0_QM_CGM_CFG1 + qman_offset, + enable ? QMAN_CGM1_PWR_GATE_EN : 0); WREG32(mmDMA0_QM_CGM_CFG + qman_offset, - QMAN_UPPER_CP_CGM_PWR_GATE_EN); + enable ? QMAN_UPPER_CP_CGM_PWR_GATE_EN : 0); } for (i = GAUDI_HBM_DMA_1 ; i < GAUDI_DMA_MAX ; i++) { - if (!(hdev->clock_gating_mask & - (BIT_ULL(gaudi_dma_assignment[i])))) - continue; + enable = !!(hdev->clock_gating_mask & + (BIT_ULL(gaudi_dma_assignment[i]))); qman_offset = gaudi_dma_assignment[i] * DMA_QMAN_OFFSET; - WREG32(mmDMA0_QM_CGM_CFG1 + qman_offset, QMAN_CGM1_PWR_GATE_EN); + WREG32(mmDMA0_QM_CGM_CFG1 + qman_offset, + enable ? QMAN_CGM1_PWR_GATE_EN : 0); WREG32(mmDMA0_QM_CGM_CFG + qman_offset, - QMAN_COMMON_CP_CGM_PWR_GATE_EN); + enable ? QMAN_COMMON_CP_CGM_PWR_GATE_EN : 0); } - if (hdev->clock_gating_mask & (BIT_ULL(GAUDI_ENGINE_ID_MME_0))) { - WREG32(mmMME0_QM_CGM_CFG1, QMAN_CGM1_PWR_GATE_EN); - WREG32(mmMME0_QM_CGM_CFG, QMAN_COMMON_CP_CGM_PWR_GATE_EN); - } + enable = !!(hdev->clock_gating_mask & (BIT_ULL(GAUDI_ENGINE_ID_MME_0))); + WREG32(mmMME0_QM_CGM_CFG1, enable ? QMAN_CGM1_PWR_GATE_EN : 0); + WREG32(mmMME0_QM_CGM_CFG, enable ? QMAN_COMMON_CP_CGM_PWR_GATE_EN : 0); - if (hdev->clock_gating_mask & (BIT_ULL(GAUDI_ENGINE_ID_MME_2))) { - WREG32(mmMME2_QM_CGM_CFG1, QMAN_CGM1_PWR_GATE_EN); - WREG32(mmMME2_QM_CGM_CFG, QMAN_COMMON_CP_CGM_PWR_GATE_EN); - } + enable = !!(hdev->clock_gating_mask & (BIT_ULL(GAUDI_ENGINE_ID_MME_2))); + WREG32(mmMME2_QM_CGM_CFG1, enable ? QMAN_CGM1_PWR_GATE_EN : 0); + WREG32(mmMME2_QM_CGM_CFG, enable ? QMAN_COMMON_CP_CGM_PWR_GATE_EN : 0); for (i = 0, qman_offset = 0 ; i < TPC_NUMBER_OF_ENGINES ; i++) { - if (!(hdev->clock_gating_mask & - (BIT_ULL(GAUDI_ENGINE_ID_TPC_0 + i)))) - continue; + enable = !!(hdev->clock_gating_mask & + (BIT_ULL(GAUDI_ENGINE_ID_TPC_0 + i))); WREG32(mmTPC0_QM_CGM_CFG1 + qman_offset, - QMAN_CGM1_PWR_GATE_EN); + enable ? QMAN_CGM1_PWR_GATE_EN : 0); WREG32(mmTPC0_QM_CGM_CFG + qman_offset, - QMAN_COMMON_CP_CGM_PWR_GATE_EN); + enable ? QMAN_COMMON_CP_CGM_PWR_GATE_EN : 0); qman_offset += TPC_QMAN_OFFSET; } @@ -3859,6 +3886,12 @@ PACKET_HEADER_PACKET_ID_MASK) >> PACKET_HEADER_PACKET_ID_SHIFT); + if (!validate_packet_id(pkt_id)) { + dev_err(hdev->dev, "Invalid packet id %u\n", pkt_id); + rc = -EINVAL; + break; + } + pkt_size = gaudi_packet_sizes[pkt_id]; cb_parsed_length += pkt_size; if (cb_parsed_length > parser->user_cb_size) { @@ -4082,6 +4115,12 @@ PACKET_HEADER_PACKET_ID_MASK) >> PACKET_HEADER_PACKET_ID_SHIFT); + if (!validate_packet_id(pkt_id)) { + dev_err(hdev->dev, "Invalid packet id %u\n", pkt_id); + rc = -EINVAL; + break; + } + pkt_size = gaudi_packet_sizes[pkt_id]; cb_parsed_length += pkt_size; if (cb_parsed_length > parser->user_cb_size) { @@ -6208,6 +6247,15 @@ strncpy(prop->armcp_info.card_name, GAUDI_DEFAULT_CARD_NAME, CARD_NAME_MAX_LEN); + hdev->card_type = le32_to_cpu(hdev->asic_prop.armcp_info.card_type); + + if (hdev->card_type == armcp_card_type_pci) + prop->max_power_default = MAX_POWER_DEFAULT_PCI; + else if (hdev->card_type == armcp_card_type_pmc) + prop->max_power_default = MAX_POWER_DEFAULT_PMC; + + hdev->max_power = prop->max_power_default; + return 0; } @@ -6243,7 +6291,7 @@ is_idle &= is_eng_idle; if (mask) - *mask |= !is_eng_idle << + *mask |= ((u64) !is_eng_idle) << (GAUDI_ENGINE_ID_DMA_0 + dma_id); if (s) seq_printf(s, fmt, dma_id, @@ -6266,7 +6314,8 @@ is_idle &= is_eng_idle; if (mask) - *mask |= !is_eng_idle << (GAUDI_ENGINE_ID_TPC_0 + i); + *mask |= ((u64) !is_eng_idle) << + (GAUDI_ENGINE_ID_TPC_0 + i); if (s) seq_printf(s, fmt, i, is_eng_idle ? "Y" : "N", @@ -6294,7 +6343,8 @@ is_idle &= is_eng_idle; if (mask) - *mask |= !is_eng_idle << (GAUDI_ENGINE_ID_MME_0 + i); + *mask |= ((u64) !is_eng_idle) << + (GAUDI_ENGINE_ID_MME_0 + i); if (s) { if (!is_slave) seq_printf(s, fmt, i, --- linux-azure-5.8-5.8.0.orig/drivers/misc/habanalabs/gaudi/gaudiP.h +++ linux-azure-5.8-5.8.0/drivers/misc/habanalabs/gaudi/gaudiP.h @@ -41,7 +41,8 @@ #define GAUDI_MAX_CLK_FREQ 2200000000ull /* 2200 MHz */ -#define MAX_POWER_DEFAULT 200000 /* 200W */ +#define MAX_POWER_DEFAULT_PCI 200000 /* 200W */ +#define MAX_POWER_DEFAULT_PMC 350000 /* 350W */ #define GAUDI_CPU_TIMEOUT_USEC 15000000 /* 15s */ --- linux-azure-5.8-5.8.0.orig/drivers/misc/habanalabs/gaudi/gaudi_coresight.c +++ linux-azure-5.8-5.8.0/drivers/misc/habanalabs/gaudi/gaudi_coresight.c @@ -523,7 +523,7 @@ } static bool gaudi_etr_validate_address(struct hl_device *hdev, u64 addr, - u32 size, bool *is_host) + u64 size, bool *is_host) { struct asic_fixed_properties *prop = &hdev->asic_prop; struct gaudi_device *gaudi = hdev->asic_specific; @@ -535,6 +535,12 @@ return false; } + if (addr > (addr + size)) { + dev_err(hdev->dev, + "ETR buffer size %llu overflow\n", size); + return false; + } + /* PMMU and HPMMU addresses are equal, check only one of them */ if ((gaudi->hw_cap_initialized & HW_CAP_MMU) && hl_mem_area_inside_range(addr, size, --- linux-azure-5.8-5.8.0.orig/drivers/misc/habanalabs/gaudi/gaudi_security.c +++ linux-azure-5.8-5.8.0/drivers/misc/habanalabs/gaudi/gaudi_security.c @@ -832,8 +832,7 @@ PROT_BITS_OFFS; word_offset = ((mmMME0_QM_ARB_MST_CHOISE_PUSH_OFST_23 & PROT_BITS_OFFS) >> 7) << 2; - mask = 1 << ((mmMME0_QM_ARB_MST_QUIET_PER & 0x7F) >> 2); - mask |= 1 << ((mmMME0_QM_ARB_SLV_CHOISE_WDT & 0x7F) >> 2); + mask = 1 << ((mmMME0_QM_ARB_SLV_CHOISE_WDT & 0x7F) >> 2); mask |= 1 << ((mmMME0_QM_ARB_MSG_MAX_INFLIGHT & 0x7F) >> 2); mask |= 1 << ((mmMME0_QM_ARB_MSG_AWUSER_31_11 & 0x7F) >> 2); mask |= 1 << ((mmMME0_QM_ARB_MSG_AWUSER_SEC_PROP & 0x7F) >> 2); @@ -1312,8 +1311,7 @@ PROT_BITS_OFFS; word_offset = ((mmMME2_QM_ARB_MST_CHOISE_PUSH_OFST_23 & PROT_BITS_OFFS) >> 7) << 2; - mask = 1 << ((mmMME2_QM_ARB_MST_QUIET_PER & 0x7F) >> 2); - mask |= 1 << ((mmMME2_QM_ARB_SLV_CHOISE_WDT & 0x7F) >> 2); + mask = 1 << ((mmMME2_QM_ARB_SLV_CHOISE_WDT & 0x7F) >> 2); mask |= 1 << ((mmMME2_QM_ARB_MSG_MAX_INFLIGHT & 0x7F) >> 2); mask |= 1 << ((mmMME2_QM_ARB_MSG_AWUSER_31_11 & 0x7F) >> 2); mask |= 1 << ((mmMME2_QM_ARB_MSG_AWUSER_SEC_PROP & 0x7F) >> 2); @@ -1791,8 +1789,7 @@ word_offset = ((mmDMA0_QM_ARB_MST_CHOISE_PUSH_OFST_23 & PROT_BITS_OFFS) >> 7) << 2; - mask = 1 << ((mmDMA0_QM_ARB_MST_QUIET_PER & 0x7F) >> 2); - mask |= 1 << ((mmDMA0_QM_ARB_SLV_CHOISE_WDT & 0x7F) >> 2); + mask = 1 << ((mmDMA0_QM_ARB_SLV_CHOISE_WDT & 0x7F) >> 2); mask |= 1 << ((mmDMA0_QM_ARB_MSG_MAX_INFLIGHT & 0x7F) >> 2); mask |= 1 << ((mmDMA0_QM_ARB_MSG_AWUSER_31_11 & 0x7F) >> 2); mask |= 1 << ((mmDMA0_QM_ARB_MSG_AWUSER_SEC_PROP & 0x7F) >> 2); @@ -2187,8 +2184,7 @@ word_offset = ((mmDMA1_QM_ARB_MST_CHOISE_PUSH_OFST_23 & PROT_BITS_OFFS) >> 7) << 2; - mask = 1 << ((mmDMA1_QM_ARB_MST_QUIET_PER & 0x7F) >> 2); - mask |= 1 << ((mmDMA1_QM_ARB_SLV_CHOISE_WDT & 0x7F) >> 2); + mask = 1 << ((mmDMA1_QM_ARB_SLV_CHOISE_WDT & 0x7F) >> 2); mask |= 1 << ((mmDMA1_QM_ARB_MSG_MAX_INFLIGHT & 0x7F) >> 2); mask |= 1 << ((mmDMA1_QM_ARB_MSG_AWUSER_31_11 & 0x7F) >> 2); mask |= 1 << ((mmDMA1_QM_ARB_MSG_AWUSER_SEC_PROP & 0x7F) >> 2); @@ -2583,8 +2579,7 @@ word_offset = ((mmDMA2_QM_ARB_MST_CHOISE_PUSH_OFST_23 & PROT_BITS_OFFS) >> 7) << 2; - mask = 1 << ((mmDMA2_QM_ARB_MST_QUIET_PER & 0x7F) >> 2); - mask |= 1 << ((mmDMA2_QM_ARB_SLV_CHOISE_WDT & 0x7F) >> 2); + mask = 1 << ((mmDMA2_QM_ARB_SLV_CHOISE_WDT & 0x7F) >> 2); mask |= 1 << ((mmDMA2_QM_ARB_MSG_MAX_INFLIGHT & 0x7F) >> 2); mask |= 1 << ((mmDMA2_QM_ARB_MSG_AWUSER_31_11 & 0x7F) >> 2); mask |= 1 << ((mmDMA2_QM_ARB_MSG_AWUSER_SEC_PROP & 0x7F) >> 2); @@ -2979,8 +2974,7 @@ word_offset = ((mmDMA3_QM_ARB_MST_CHOISE_PUSH_OFST_23 & PROT_BITS_OFFS) >> 7) << 2; - mask = 1 << ((mmDMA3_QM_ARB_MST_QUIET_PER & 0x7F) >> 2); - mask |= 1 << ((mmDMA3_QM_ARB_SLV_CHOISE_WDT & 0x7F) >> 2); + mask = 1 << ((mmDMA3_QM_ARB_SLV_CHOISE_WDT & 0x7F) >> 2); mask |= 1 << ((mmDMA3_QM_ARB_MSG_MAX_INFLIGHT & 0x7F) >> 2); mask |= 1 << ((mmDMA3_QM_ARB_MSG_AWUSER_31_11 & 0x7F) >> 2); mask |= 1 << ((mmDMA3_QM_ARB_MSG_AWUSER_SEC_PROP & 0x7F) >> 2); @@ -3375,8 +3369,7 @@ word_offset = ((mmDMA4_QM_ARB_MST_CHOISE_PUSH_OFST_23 & PROT_BITS_OFFS) >> 7) << 2; - mask = 1 << ((mmDMA4_QM_ARB_MST_QUIET_PER & 0x7F) >> 2); - mask |= 1 << ((mmDMA4_QM_ARB_SLV_CHOISE_WDT & 0x7F) >> 2); + mask = 1 << ((mmDMA4_QM_ARB_SLV_CHOISE_WDT & 0x7F) >> 2); mask |= 1 << ((mmDMA4_QM_ARB_MSG_MAX_INFLIGHT & 0x7F) >> 2); mask |= 1 << ((mmDMA4_QM_ARB_MSG_AWUSER_31_11 & 0x7F) >> 2); mask |= 1 << ((mmDMA4_QM_ARB_MSG_AWUSER_SEC_PROP & 0x7F) >> 2); @@ -3771,8 +3764,7 @@ word_offset = ((mmDMA5_QM_ARB_MST_CHOISE_PUSH_OFST_23 & PROT_BITS_OFFS) >> 7) << 2; - mask = 1 << ((mmDMA5_QM_ARB_MST_QUIET_PER & 0x7F) >> 2); - mask |= 1 << ((mmDMA5_QM_ARB_SLV_CHOISE_WDT & 0x7F) >> 2); + mask = 1 << ((mmDMA5_QM_ARB_SLV_CHOISE_WDT & 0x7F) >> 2); mask |= 1 << ((mmDMA5_QM_ARB_MSG_MAX_INFLIGHT & 0x7F) >> 2); mask |= 1 << ((mmDMA5_QM_ARB_MSG_AWUSER_31_11 & 0x7F) >> 2); mask |= 1 << ((mmDMA5_QM_ARB_MSG_AWUSER_SEC_PROP & 0x7F) >> 2); @@ -4167,8 +4159,8 @@ word_offset = ((mmDMA6_QM_ARB_MST_CHOISE_PUSH_OFST_23 & PROT_BITS_OFFS) >> 7) << 2; - mask = 1 << ((mmDMA6_QM_ARB_MST_QUIET_PER & 0x7F) >> 2); - mask |= 1 << ((mmDMA6_QM_ARB_SLV_CHOISE_WDT & 0x7F) >> 2); + + mask = 1 << ((mmDMA6_QM_ARB_SLV_CHOISE_WDT & 0x7F) >> 2); mask |= 1 << ((mmDMA6_QM_ARB_MSG_MAX_INFLIGHT & 0x7F) >> 2); mask |= 1 << ((mmDMA6_QM_ARB_MSG_AWUSER_31_11 & 0x7F) >> 2); mask |= 1 << ((mmDMA6_QM_ARB_MSG_AWUSER_SEC_PROP & 0x7F) >> 2); @@ -4563,8 +4555,7 @@ word_offset = ((mmDMA7_QM_ARB_MST_CHOISE_PUSH_OFST_23 & PROT_BITS_OFFS) >> 7) << 2; - mask = 1 << ((mmDMA7_QM_ARB_MST_QUIET_PER & 0x7F) >> 2); - mask |= 1 << ((mmDMA7_QM_ARB_SLV_CHOISE_WDT & 0x7F) >> 2); + mask = 1 << ((mmDMA7_QM_ARB_SLV_CHOISE_WDT & 0x7F) >> 2); mask |= 1 << ((mmDMA7_QM_ARB_MSG_MAX_INFLIGHT & 0x7F) >> 2); mask |= 1 << ((mmDMA7_QM_ARB_MSG_AWUSER_31_11 & 0x7F) >> 2); mask |= 1 << ((mmDMA7_QM_ARB_MSG_AWUSER_SEC_PROP & 0x7F) >> 2); @@ -5492,8 +5483,7 @@ word_offset = ((mmTPC0_QM_ARB_MST_CHOISE_PUSH_OFST_23 & PROT_BITS_OFFS) >> 7) << 2; - mask = 1 << ((mmTPC0_QM_ARB_MST_QUIET_PER & 0x7F) >> 2); - mask |= 1 << ((mmTPC0_QM_ARB_SLV_CHOISE_WDT & 0x7F) >> 2); + mask = 1 << ((mmTPC0_QM_ARB_SLV_CHOISE_WDT & 0x7F) >> 2); mask |= 1 << ((mmTPC0_QM_ARB_MSG_MAX_INFLIGHT & 0x7F) >> 2); mask |= 1 << ((mmTPC0_QM_ARB_MSG_AWUSER_31_11 & 0x7F) >> 2); mask |= 1 << ((mmTPC0_QM_ARB_MSG_AWUSER_SEC_PROP & 0x7F) >> 2); @@ -5948,8 +5938,7 @@ word_offset = ((mmTPC1_QM_ARB_MST_CHOISE_PUSH_OFST_23 & PROT_BITS_OFFS) >> 7) << 2; - mask = 1 << ((mmTPC1_QM_ARB_MST_QUIET_PER & 0x7F) >> 2); - mask |= 1 << ((mmTPC1_QM_ARB_SLV_CHOISE_WDT & 0x7F) >> 2); + mask = 1 << ((mmTPC1_QM_ARB_SLV_CHOISE_WDT & 0x7F) >> 2); mask |= 1 << ((mmTPC1_QM_ARB_MSG_MAX_INFLIGHT & 0x7F) >> 2); mask |= 1 << ((mmTPC1_QM_ARB_MSG_AWUSER_31_11 & 0x7F) >> 2); mask |= 1 << ((mmTPC1_QM_ARB_MSG_AWUSER_SEC_PROP & 0x7F) >> 2); @@ -6403,8 +6392,7 @@ PROT_BITS_OFFS; word_offset = ((mmTPC2_QM_ARB_MST_CHOISE_PUSH_OFST_23 & PROT_BITS_OFFS) >> 7) << 2; - mask = 1 << ((mmTPC2_QM_ARB_MST_QUIET_PER & 0x7F) >> 2); - mask |= 1 << ((mmTPC2_QM_ARB_SLV_CHOISE_WDT & 0x7F) >> 2); + mask = 1 << ((mmTPC2_QM_ARB_SLV_CHOISE_WDT & 0x7F) >> 2); mask |= 1 << ((mmTPC2_QM_ARB_MSG_MAX_INFLIGHT & 0x7F) >> 2); mask |= 1 << ((mmTPC2_QM_ARB_MSG_AWUSER_31_11 & 0x7F) >> 2); mask |= 1 << ((mmTPC2_QM_ARB_MSG_AWUSER_SEC_PROP & 0x7F) >> 2); @@ -6858,8 +6846,7 @@ PROT_BITS_OFFS; word_offset = ((mmTPC3_QM_ARB_MST_CHOISE_PUSH_OFST_23 & PROT_BITS_OFFS) >> 7) << 2; - mask = 1 << ((mmTPC3_QM_ARB_MST_QUIET_PER & 0x7F) >> 2); - mask |= 1 << ((mmTPC3_QM_ARB_SLV_CHOISE_WDT & 0x7F) >> 2); + mask = 1 << ((mmTPC3_QM_ARB_SLV_CHOISE_WDT & 0x7F) >> 2); mask |= 1 << ((mmTPC3_QM_ARB_MSG_MAX_INFLIGHT & 0x7F) >> 2); mask |= 1 << ((mmTPC3_QM_ARB_MSG_AWUSER_31_11 & 0x7F) >> 2); mask |= 1 << ((mmTPC3_QM_ARB_MSG_AWUSER_SEC_PROP & 0x7F) >> 2); @@ -7313,8 +7300,7 @@ PROT_BITS_OFFS; word_offset = ((mmTPC4_QM_ARB_MST_CHOISE_PUSH_OFST_23 & PROT_BITS_OFFS) >> 7) << 2; - mask = 1 << ((mmTPC4_QM_ARB_MST_QUIET_PER & 0x7F) >> 2); - mask |= 1 << ((mmTPC4_QM_ARB_SLV_CHOISE_WDT & 0x7F) >> 2); + mask = 1 << ((mmTPC4_QM_ARB_SLV_CHOISE_WDT & 0x7F) >> 2); mask |= 1 << ((mmTPC4_QM_ARB_MSG_MAX_INFLIGHT & 0x7F) >> 2); mask |= 1 << ((mmTPC4_QM_ARB_MSG_AWUSER_31_11 & 0x7F) >> 2); mask |= 1 << ((mmTPC4_QM_ARB_MSG_AWUSER_SEC_PROP & 0x7F) >> 2); @@ -7768,8 +7754,7 @@ PROT_BITS_OFFS; word_offset = ((mmTPC5_QM_ARB_MST_CHOISE_PUSH_OFST_23 & PROT_BITS_OFFS) >> 7) << 2; - mask = 1 << ((mmTPC5_QM_ARB_MST_QUIET_PER & 0x7F) >> 2); - mask |= 1 << ((mmTPC5_QM_ARB_SLV_CHOISE_WDT & 0x7F) >> 2); + mask = 1 << ((mmTPC5_QM_ARB_SLV_CHOISE_WDT & 0x7F) >> 2); mask |= 1 << ((mmTPC5_QM_ARB_MSG_MAX_INFLIGHT & 0x7F) >> 2); mask |= 1 << ((mmTPC5_QM_ARB_MSG_AWUSER_31_11 & 0x7F) >> 2); mask |= 1 << ((mmTPC5_QM_ARB_MSG_AWUSER_SEC_PROP & 0x7F) >> 2); @@ -8224,8 +8209,7 @@ word_offset = ((mmTPC6_QM_ARB_MST_CHOISE_PUSH_OFST_23 & PROT_BITS_OFFS) >> 7) << 2; - mask = 1 << ((mmTPC6_QM_ARB_MST_QUIET_PER & 0x7F) >> 2); - mask |= 1 << ((mmTPC6_QM_ARB_SLV_CHOISE_WDT & 0x7F) >> 2); + mask = 1 << ((mmTPC6_QM_ARB_SLV_CHOISE_WDT & 0x7F) >> 2); mask |= 1 << ((mmTPC6_QM_ARB_MSG_MAX_INFLIGHT & 0x7F) >> 2); mask |= 1 << ((mmTPC6_QM_ARB_MSG_AWUSER_31_11 & 0x7F) >> 2); mask |= 1 << ((mmTPC6_QM_ARB_MSG_AWUSER_SEC_PROP & 0x7F) >> 2); @@ -8682,8 +8666,7 @@ PROT_BITS_OFFS; word_offset = ((mmTPC7_QM_ARB_MST_CHOISE_PUSH_OFST_23 & PROT_BITS_OFFS) >> 7) << 2; - mask = 1 << ((mmTPC7_QM_ARB_MST_QUIET_PER & 0x7F) >> 2); - mask |= 1 << ((mmTPC7_QM_ARB_SLV_CHOISE_WDT & 0x7F) >> 2); + mask = 1 << ((mmTPC7_QM_ARB_SLV_CHOISE_WDT & 0x7F) >> 2); mask |= 1 << ((mmTPC7_QM_ARB_MSG_MAX_INFLIGHT & 0x7F) >> 2); mask |= 1 << ((mmTPC7_QM_ARB_MSG_AWUSER_31_11 & 0x7F) >> 2); mask |= 1 << ((mmTPC7_QM_ARB_MSG_AWUSER_SEC_PROP & 0x7F) >> 2); --- linux-azure-5.8-5.8.0.orig/drivers/misc/habanalabs/goya/goya.c +++ linux-azure-5.8-5.8.0/drivers/misc/habanalabs/goya/goya.c @@ -139,6 +139,25 @@ [PACKET_STOP] = sizeof(struct packet_stop) }; +static inline bool validate_packet_id(enum packet_id id) +{ + switch (id) { + case PACKET_WREG_32: + case PACKET_WREG_BULK: + case PACKET_MSG_LONG: + case PACKET_MSG_SHORT: + case PACKET_CP_DMA: + case PACKET_MSG_PROT: + case PACKET_FENCE: + case PACKET_LIN_DMA: + case PACKET_NOP: + case PACKET_STOP: + return true; + default: + return false; + } +} + static u64 goya_mmu_regs[GOYA_MMU_REGS_NUM] = { mmDMA_QM_0_GLBL_NON_SECURE_PROPS, mmDMA_QM_1_GLBL_NON_SECURE_PROPS, @@ -3381,6 +3400,12 @@ PACKET_HEADER_PACKET_ID_MASK) >> PACKET_HEADER_PACKET_ID_SHIFT); + if (!validate_packet_id(pkt_id)) { + dev_err(hdev->dev, "Invalid packet id %u\n", pkt_id); + rc = -EINVAL; + break; + } + pkt_size = goya_packet_sizes[pkt_id]; cb_parsed_length += pkt_size; if (cb_parsed_length > parser->user_cb_size) { @@ -3616,6 +3641,12 @@ PACKET_HEADER_PACKET_ID_MASK) >> PACKET_HEADER_PACKET_ID_SHIFT); + if (!validate_packet_id(pkt_id)) { + dev_err(hdev->dev, "Invalid packet id %u\n", pkt_id); + rc = -EINVAL; + break; + } + pkt_size = goya_packet_sizes[pkt_id]; cb_parsed_length += pkt_size; if (cb_parsed_length > parser->user_cb_size) { @@ -5067,7 +5098,8 @@ is_idle &= is_eng_idle; if (mask) - *mask |= !is_eng_idle << (GOYA_ENGINE_ID_DMA_0 + i); + *mask |= ((u64) !is_eng_idle) << + (GOYA_ENGINE_ID_DMA_0 + i); if (s) seq_printf(s, dma_fmt, i, is_eng_idle ? "Y" : "N", qm_glbl_sts0, dma_core_sts0); @@ -5090,7 +5122,8 @@ is_idle &= is_eng_idle; if (mask) - *mask |= !is_eng_idle << (GOYA_ENGINE_ID_TPC_0 + i); + *mask |= ((u64) !is_eng_idle) << + (GOYA_ENGINE_ID_TPC_0 + i); if (s) seq_printf(s, fmt, i, is_eng_idle ? "Y" : "N", qm_glbl_sts0, cmdq_glbl_sts0, tpc_cfg_sts); @@ -5110,7 +5143,7 @@ is_idle &= is_eng_idle; if (mask) - *mask |= !is_eng_idle << GOYA_ENGINE_ID_MME_0; + *mask |= ((u64) !is_eng_idle) << GOYA_ENGINE_ID_MME_0; if (s) { seq_printf(s, fmt, 0, is_eng_idle ? "Y" : "N", qm_glbl_sts0, cmdq_glbl_sts0, mme_arch_sts); --- linux-azure-5.8-5.8.0.orig/drivers/misc/habanalabs/goya/goya_coresight.c +++ linux-azure-5.8-5.8.0/drivers/misc/habanalabs/goya/goya_coresight.c @@ -358,11 +358,17 @@ } static int goya_etr_validate_address(struct hl_device *hdev, u64 addr, - u32 size) + u64 size) { struct asic_fixed_properties *prop = &hdev->asic_prop; u64 range_start, range_end; + if (addr > (addr + size)) { + dev_err(hdev->dev, + "ETR buffer size %llu overflow\n", size); + return false; + } + if (hdev->mmu_enable) { range_start = prop->dmmu.start_addr; range_end = prop->dmmu.end_addr; --- linux-azure-5.8-5.8.0.orig/drivers/misc/habanalabs/habanalabs.h +++ linux-azure-5.8-5.8.0/drivers/misc/habanalabs/habanalabs.h @@ -1408,6 +1408,8 @@ * details. * @in_reset: is device in reset flow. * @curr_pll_profile: current PLL profile. + * @card_type: Various ASICs have several card types. This indicates the card + * type of the current device. * @cs_active_cnt: number of active command submissions on this device (active * means already in H/W queues) * @major: habanalabs kernel driver major. @@ -1503,6 +1505,7 @@ u64 clock_gating_mask; atomic_t in_reset; enum hl_pll_frequency curr_pll_profile; + enum armcp_card_types card_type; int cs_active_cnt; u32 major; u32 high_pll; @@ -1587,7 +1590,7 @@ * * Return: true if the area is inside the valid range, false otherwise. */ -static inline bool hl_mem_area_inside_range(u64 address, u32 size, +static inline bool hl_mem_area_inside_range(u64 address, u64 size, u64 range_start_address, u64 range_end_address) { u64 end_address = address + size; @@ -1792,7 +1795,7 @@ void hl_set_pwm_info(struct hl_device *hdev, int sensor_index, u32 attr, long value); u64 hl_get_max_power(struct hl_device *hdev); -void hl_set_max_power(struct hl_device *hdev, u64 value); +void hl_set_max_power(struct hl_device *hdev); int hl_set_voltage(struct hl_device *hdev, int sensor_index, u32 attr, long value); int hl_set_current(struct hl_device *hdev, --- linux-azure-5.8-5.8.0.orig/drivers/misc/habanalabs/habanalabs_drv.c +++ linux-azure-5.8-5.8.0/drivers/misc/habanalabs/habanalabs_drv.c @@ -456,6 +456,7 @@ .id_table = ids, .probe = hl_pci_probe, .remove = hl_pci_remove, + .shutdown = hl_pci_remove, .driver.pm = &hl_pm_ops, }; --- linux-azure-5.8-5.8.0.orig/drivers/misc/habanalabs/include/gaudi/gaudi_masks.h +++ linux-azure-5.8-5.8.0/drivers/misc/habanalabs/include/gaudi/gaudi_masks.h @@ -378,15 +378,15 @@ ((((y) & RAZWI_INITIATOR_Y_MASK) << RAZWI_INITIATOR_Y_SHIFT) | \ (((x) & RAZWI_INITIATOR_X_MASK) << RAZWI_INITIATOR_X_SHIFT)) -#define RAZWI_INITIATOR_ID_X_Y_TPC0_NIC0 RAZWI_INITIATOR_ID_X_Y(1, 0) -#define RAZWI_INITIATOR_ID_X_Y_TPC1 RAZWI_INITIATOR_ID_X_Y(2, 0) -#define RAZWI_INITIATOR_ID_X_Y_MME0_0 RAZWI_INITIATOR_ID_X_Y(3, 0) -#define RAZWI_INITIATOR_ID_X_Y_MME0_1 RAZWI_INITIATOR_ID_X_Y(4, 0) -#define RAZWI_INITIATOR_ID_X_Y_MME1_0 RAZWI_INITIATOR_ID_X_Y(5, 0) -#define RAZWI_INITIATOR_ID_X_Y_MME1_1 RAZWI_INITIATOR_ID_X_Y(6, 0) -#define RAZWI_INITIATOR_ID_X_Y_TPC2 RAZWI_INITIATOR_ID_X_Y(7, 0) +#define RAZWI_INITIATOR_ID_X_Y_TPC0_NIC0 RAZWI_INITIATOR_ID_X_Y(1, 1) +#define RAZWI_INITIATOR_ID_X_Y_TPC1 RAZWI_INITIATOR_ID_X_Y(2, 1) +#define RAZWI_INITIATOR_ID_X_Y_MME0_0 RAZWI_INITIATOR_ID_X_Y(3, 1) +#define RAZWI_INITIATOR_ID_X_Y_MME0_1 RAZWI_INITIATOR_ID_X_Y(4, 1) +#define RAZWI_INITIATOR_ID_X_Y_MME1_0 RAZWI_INITIATOR_ID_X_Y(5, 1) +#define RAZWI_INITIATOR_ID_X_Y_MME1_1 RAZWI_INITIATOR_ID_X_Y(6, 1) +#define RAZWI_INITIATOR_ID_X_Y_TPC2 RAZWI_INITIATOR_ID_X_Y(7, 1) #define RAZWI_INITIATOR_ID_X_Y_TPC3_PCI_CPU_PSOC \ - RAZWI_INITIATOR_ID_X_Y(8, 0) + RAZWI_INITIATOR_ID_X_Y(8, 1) #define RAZWI_INITIATOR_ID_X_Y_DMA_IF_W_S_0 RAZWI_INITIATOR_ID_X_Y(0, 1) #define RAZWI_INITIATOR_ID_X_Y_DMA_IF_E_S_0 RAZWI_INITIATOR_ID_X_Y(9, 1) #define RAZWI_INITIATOR_ID_X_Y_DMA_IF_W_S_1 RAZWI_INITIATOR_ID_X_Y(0, 2) @@ -395,14 +395,14 @@ #define RAZWI_INITIATOR_ID_X_Y_DMA_IF_E_N_0 RAZWI_INITIATOR_ID_X_Y(9, 3) #define RAZWI_INITIATOR_ID_X_Y_DMA_IF_W_N_1 RAZWI_INITIATOR_ID_X_Y(0, 4) #define RAZWI_INITIATOR_ID_X_Y_DMA_IF_E_N_1 RAZWI_INITIATOR_ID_X_Y(9, 4) -#define RAZWI_INITIATOR_ID_X_Y_TPC4_NIC1_NIC2 RAZWI_INITIATOR_ID_X_Y(1, 5) -#define RAZWI_INITIATOR_ID_X_Y_TPC5 RAZWI_INITIATOR_ID_X_Y(2, 5) -#define RAZWI_INITIATOR_ID_X_Y_MME2_0 RAZWI_INITIATOR_ID_X_Y(3, 5) -#define RAZWI_INITIATOR_ID_X_Y_MME2_1 RAZWI_INITIATOR_ID_X_Y(4, 5) -#define RAZWI_INITIATOR_ID_X_Y_MME3_0 RAZWI_INITIATOR_ID_X_Y(5, 5) -#define RAZWI_INITIATOR_ID_X_Y_MME3_1 RAZWI_INITIATOR_ID_X_Y(6, 5) -#define RAZWI_INITIATOR_ID_X_Y_TPC6 RAZWI_INITIATOR_ID_X_Y(7, 5) -#define RAZWI_INITIATOR_ID_X_Y_TPC7_NIC4_NIC5 RAZWI_INITIATOR_ID_X_Y(8, 5) +#define RAZWI_INITIATOR_ID_X_Y_TPC4_NIC1_NIC2 RAZWI_INITIATOR_ID_X_Y(1, 6) +#define RAZWI_INITIATOR_ID_X_Y_TPC5 RAZWI_INITIATOR_ID_X_Y(2, 6) +#define RAZWI_INITIATOR_ID_X_Y_MME2_0 RAZWI_INITIATOR_ID_X_Y(3, 6) +#define RAZWI_INITIATOR_ID_X_Y_MME2_1 RAZWI_INITIATOR_ID_X_Y(4, 6) +#define RAZWI_INITIATOR_ID_X_Y_MME3_0 RAZWI_INITIATOR_ID_X_Y(5, 6) +#define RAZWI_INITIATOR_ID_X_Y_MME3_1 RAZWI_INITIATOR_ID_X_Y(6, 6) +#define RAZWI_INITIATOR_ID_X_Y_TPC6 RAZWI_INITIATOR_ID_X_Y(7, 6) +#define RAZWI_INITIATOR_ID_X_Y_TPC7_NIC4_NIC5 RAZWI_INITIATOR_ID_X_Y(8, 6) #define PSOC_ETR_AXICTL_PROTCTRLBIT1_SHIFT 1 @@ -452,7 +452,6 @@ #define QM_ARB_ERR_MSG_EN_MASK (\ QM_ARB_ERR_MSG_EN_CHOISE_OVF_MASK |\ - QM_ARB_ERR_MSG_EN_CHOISE_WDT_MASK |\ QM_ARB_ERR_MSG_EN_AXI_LBW_ERR_MASK) #endif /* GAUDI_MASKS_H_ */ --- linux-azure-5.8-5.8.0.orig/drivers/misc/habanalabs/memory.c +++ linux-azure-5.8-5.8.0/drivers/misc/habanalabs/memory.c @@ -66,6 +66,11 @@ num_pgs = (args->alloc.mem_size + (page_size - 1)) >> page_shift; total_size = num_pgs << page_shift; + if (!total_size) { + dev_err(hdev->dev, "Cannot allocate 0 bytes\n"); + return -EINVAL; + } + contiguous = args->flags & HL_MEM_CONTIGUOUS; if (contiguous) { @@ -93,7 +98,7 @@ phys_pg_pack->contiguous = contiguous; phys_pg_pack->pages = kvmalloc_array(num_pgs, sizeof(u64), GFP_KERNEL); - if (!phys_pg_pack->pages) { + if (ZERO_OR_NULL_PTR(phys_pg_pack->pages)) { rc = -ENOMEM; goto pages_arr_err; } @@ -683,7 +688,7 @@ phys_pg_pack->pages = kvmalloc_array(total_npages, sizeof(u64), GFP_KERNEL); - if (!phys_pg_pack->pages) { + if (ZERO_OR_NULL_PTR(phys_pg_pack->pages)) { rc = -ENOMEM; goto page_pack_arr_mem_err; } --- linux-azure-5.8-5.8.0.orig/drivers/misc/habanalabs/mmu.c +++ linux-azure-5.8-5.8.0/drivers/misc/habanalabs/mmu.c @@ -450,7 +450,7 @@ hdev->mmu_shadow_hop0 = kvmalloc_array(prop->max_asid, prop->mmu_hop_table_size, GFP_KERNEL | __GFP_ZERO); - if (!hdev->mmu_shadow_hop0) { + if (ZERO_OR_NULL_PTR(hdev->mmu_shadow_hop0)) { rc = -ENOMEM; goto err_pool_add; } --- linux-azure-5.8-5.8.0.orig/drivers/misc/habanalabs/pci.c +++ linux-azure-5.8-5.8.0/drivers/misc/habanalabs/pci.c @@ -378,15 +378,17 @@ rc = hdev->asic_funcs->init_iatu(hdev); if (rc) { dev_err(hdev->dev, "Failed to initialize iATU\n"); - goto disable_device; + goto unmap_pci_bars; } rc = hl_pci_set_dma_mask(hdev); if (rc) - goto disable_device; + goto unmap_pci_bars; return 0; +unmap_pci_bars: + hl_pci_bars_unmap(hdev); disable_device: pci_clear_master(pdev); pci_disable_device(pdev); --- linux-azure-5.8-5.8.0.orig/drivers/misc/habanalabs/sysfs.c +++ linux-azure-5.8-5.8.0/drivers/misc/habanalabs/sysfs.c @@ -81,7 +81,7 @@ return result; } -void hl_set_max_power(struct hl_device *hdev, u64 value) +void hl_set_max_power(struct hl_device *hdev) { struct armcp_packet pkt; int rc; @@ -90,7 +90,7 @@ pkt.ctl = cpu_to_le32(ARMCP_PACKET_MAX_POWER_SET << ARMCP_PKT_CTL_OPCODE_SHIFT); - pkt.value = cpu_to_le64(value); + pkt.value = cpu_to_le64(hdev->max_power); rc = hdev->asic_funcs->send_cpu_message(hdev, (u32 *) &pkt, sizeof(pkt), 0, NULL); @@ -316,7 +316,7 @@ } hdev->max_power = value; - hl_set_max_power(hdev, value); + hl_set_max_power(hdev); out: return count; @@ -419,6 +419,7 @@ hdev->pm_mng_profile = PM_AUTO; else hdev->pm_mng_profile = PM_MANUAL; + hdev->max_power = hdev->asic_prop.max_power_default; hdev->asic_funcs->add_device_attr(hdev, &hl_dev_clks_attr_group); --- linux-azure-5.8-5.8.0.orig/drivers/misc/lkdtm/Makefile +++ linux-azure-5.8-5.8.0/drivers/misc/lkdtm/Makefile @@ -16,7 +16,7 @@ OBJCOPYFLAGS := OBJCOPYFLAGS_rodata_objcopy.o := \ - --rename-section .text=.rodata,alloc,readonly,load + --rename-section .noinstr.text=.rodata,alloc,readonly,load targets += rodata.o rodata_objcopy.o $(obj)/rodata_objcopy.o: $(obj)/rodata.o FORCE $(call if_changed,objcopy) --- linux-azure-5.8-5.8.0.orig/drivers/misc/lkdtm/bugs.c +++ linux-azure-5.8-5.8.0/drivers/misc/lkdtm/bugs.c @@ -13,7 +13,7 @@ #include #include -#ifdef CONFIG_X86_32 +#if IS_ENABLED(CONFIG_X86_32) && !IS_ENABLED(CONFIG_UML) #include #endif @@ -118,9 +118,8 @@ /* Use default char array length that triggers stack protection. */ char data[8] __aligned(sizeof(void *)); - __lkdtm_CORRUPT_STACK(&data); - - pr_info("Corrupted stack containing char array ...\n"); + pr_info("Corrupting stack containing char array ...\n"); + __lkdtm_CORRUPT_STACK((void *)&data); } /* Same as above but will only get a canary with -fstack-protector-strong */ @@ -131,9 +130,8 @@ unsigned long *ptr; } data __aligned(sizeof(void *)); - __lkdtm_CORRUPT_STACK(&data); - - pr_info("Corrupted stack containing union ...\n"); + pr_info("Corrupting stack containing union ...\n"); + __lkdtm_CORRUPT_STACK((void *)&data); } void lkdtm_UNALIGNED_LOAD_STORE_WRITE(void) @@ -248,6 +246,7 @@ kfree(not_checked); kfree(checked); + pr_err("FAIL: survived array bounds overflow!\n"); } void lkdtm_CORRUPT_LIST_ADD(void) @@ -419,7 +418,7 @@ void lkdtm_DOUBLE_FAULT(void) { -#ifdef CONFIG_X86_32 +#if IS_ENABLED(CONFIG_X86_32) && !IS_ENABLED(CONFIG_UML) /* * Trigger #DF by setting the stack limit to zero. This clobbers * a GDT TLS slot, which is okay because the current task will die @@ -454,38 +453,42 @@ #endif } -#ifdef CONFIG_ARM64_PTR_AUTH +#ifdef CONFIG_ARM64 static noinline void change_pac_parameters(void) { - /* Reset the keys of current task */ - ptrauth_thread_init_kernel(current); - ptrauth_thread_switch_kernel(current); + if (IS_ENABLED(CONFIG_ARM64_PTR_AUTH)) { + /* Reset the keys of current task */ + ptrauth_thread_init_kernel(current); + ptrauth_thread_switch_kernel(current); + } } +#endif -#define CORRUPT_PAC_ITERATE 10 noinline void lkdtm_CORRUPT_PAC(void) { +#ifdef CONFIG_ARM64 +#define CORRUPT_PAC_ITERATE 10 int i; + if (!IS_ENABLED(CONFIG_ARM64_PTR_AUTH)) + pr_err("FAIL: kernel not built with CONFIG_ARM64_PTR_AUTH\n"); + if (!system_supports_address_auth()) { - pr_err("FAIL: arm64 pointer authentication feature not present\n"); + pr_err("FAIL: CPU lacks pointer authentication feature\n"); return; } - pr_info("Change the PAC parameters to force function return failure\n"); + pr_info("changing PAC parameters to force function return failure...\n"); /* - * Pac is a hash value computed from input keys, return address and + * PAC is a hash value computed from input keys, return address and * stack pointer. As pac has fewer bits so there is a chance of * collision, so iterate few times to reduce the collision probability. */ for (i = 0; i < CORRUPT_PAC_ITERATE; i++) change_pac_parameters(); - pr_err("FAIL: %s test failed. Kernel may be unstable from here\n", __func__); -} -#else /* !CONFIG_ARM64_PTR_AUTH */ -noinline void lkdtm_CORRUPT_PAC(void) -{ - pr_err("FAIL: arm64 pointer authentication config disabled\n"); -} + pr_err("FAIL: survived PAC changes! Kernel may be unstable from here\n"); +#else + pr_err("XFAIL: this test is arm64-only\n"); #endif +} --- linux-azure-5.8-5.8.0.orig/drivers/misc/lkdtm/heap.c +++ linux-azure-5.8-5.8.0/drivers/misc/lkdtm/heap.c @@ -58,11 +58,12 @@ int *base, *val, saw; size_t len = 1024; /* - * The slub allocator uses the first word to store the free - * pointer in some configurations. Use the middle of the - * allocation to avoid running into the freelist + * The slub allocator will use the either the first word or + * the middle of the allocation to store the free pointer, + * depending on configurations. Store in the second word to + * avoid running into the freelist. */ - size_t offset = (len / sizeof(*base)) / 2; + size_t offset = sizeof(*base); base = kmalloc(len, GFP_KERNEL); if (!base) { --- linux-azure-5.8-5.8.0.orig/drivers/misc/lkdtm/lkdtm.h +++ linux-azure-5.8-5.8.0/drivers/misc/lkdtm/lkdtm.h @@ -31,9 +31,7 @@ void lkdtm_STACK_GUARD_PAGE_LEADING(void); void lkdtm_STACK_GUARD_PAGE_TRAILING(void); void lkdtm_UNSET_SMEP(void); -#ifdef CONFIG_X86_32 void lkdtm_DOUBLE_FAULT(void); -#endif void lkdtm_CORRUPT_PAC(void); /* lkdtm_heap.c */ --- linux-azure-5.8-5.8.0.orig/drivers/misc/lkdtm/perms.c +++ linux-azure-5.8-5.8.0/drivers/misc/lkdtm/perms.c @@ -57,6 +57,7 @@ } pr_info("attempting bad execution at %px\n", func); func(); + pr_err("FAIL: func returned\n"); } static void execute_user_location(void *dst) @@ -75,20 +76,22 @@ return; pr_info("attempting bad execution at %px\n", func); func(); + pr_err("FAIL: func returned\n"); } void lkdtm_WRITE_RO(void) { - /* Explicitly cast away "const" for the test. */ - unsigned long *ptr = (unsigned long *)&rodata; + /* Explicitly cast away "const" for the test and make volatile. */ + volatile unsigned long *ptr = (unsigned long *)&rodata; pr_info("attempting bad rodata write at %px\n", ptr); *ptr ^= 0xabcd1234; + pr_err("FAIL: survived bad write\n"); } void lkdtm_WRITE_RO_AFTER_INIT(void) { - unsigned long *ptr = &ro_after_init; + volatile unsigned long *ptr = &ro_after_init; /* * Verify we were written to during init. Since an Oops @@ -102,19 +105,21 @@ pr_info("attempting bad ro_after_init write at %px\n", ptr); *ptr ^= 0xabcd1234; + pr_err("FAIL: survived bad write\n"); } void lkdtm_WRITE_KERN(void) { size_t size; - unsigned char *ptr; + volatile unsigned char *ptr; size = (unsigned long)do_overwritten - (unsigned long)do_nothing; ptr = (unsigned char *)do_overwritten; pr_info("attempting bad %zu byte write at %px\n", size, ptr); - memcpy(ptr, (unsigned char *)do_nothing, size); + memcpy((void *)ptr, (unsigned char *)do_nothing, size); flush_icache_range((unsigned long)ptr, (unsigned long)(ptr + size)); + pr_err("FAIL: survived bad write\n"); do_overwritten(); } @@ -193,9 +198,11 @@ pr_info("attempting bad read at %px\n", ptr); tmp = *ptr; tmp += 0xc0dec0de; + pr_err("FAIL: survived bad read\n"); pr_info("attempting bad write at %px\n", ptr); *ptr = tmp; + pr_err("FAIL: survived bad write\n"); vm_munmap(user_addr, PAGE_SIZE); } @@ -203,19 +210,20 @@ void lkdtm_ACCESS_NULL(void) { unsigned long tmp; - unsigned long *ptr = (unsigned long *)NULL; + volatile unsigned long *ptr = (unsigned long *)NULL; pr_info("attempting bad read at %px\n", ptr); tmp = *ptr; tmp += 0xc0dec0de; + pr_err("FAIL: survived bad read\n"); pr_info("attempting bad write at %px\n", ptr); *ptr = tmp; + pr_err("FAIL: survived bad write\n"); } void __init lkdtm_perms_init(void) { /* Make sure we can write to __ro_after_init values during __init */ ro_after_init |= 0xAA; - } --- linux-azure-5.8-5.8.0.orig/drivers/misc/lkdtm/rodata.c +++ linux-azure-5.8-5.8.0/drivers/misc/lkdtm/rodata.c @@ -5,7 +5,7 @@ */ #include "lkdtm.h" -void notrace lkdtm_rodata_do_nothing(void) +void noinstr lkdtm_rodata_do_nothing(void) { /* Does nothing. We just want an architecture agnostic "return". */ } --- linux-azure-5.8-5.8.0.orig/drivers/misc/lkdtm/usercopy.c +++ linux-azure-5.8-5.8.0/drivers/misc/lkdtm/usercopy.c @@ -304,19 +304,22 @@ return; } - pr_info("attempting good copy_to_user from kernel rodata\n"); + pr_info("attempting good copy_to_user from kernel rodata: %px\n", + test_text); if (copy_to_user((void __user *)user_addr, test_text, unconst + sizeof(test_text))) { pr_warn("copy_to_user failed unexpectedly?!\n"); goto free_user; } - pr_info("attempting bad copy_to_user from kernel text\n"); + pr_info("attempting bad copy_to_user from kernel text: %px\n", + vm_mmap); if (copy_to_user((void __user *)user_addr, vm_mmap, unconst + PAGE_SIZE)) { pr_warn("copy_to_user failed, but lacked Oops\n"); goto free_user; } + pr_err("FAIL: survived bad copy_to_user()\n"); free_user: vm_munmap(user_addr, PAGE_SIZE); --- linux-azure-5.8-5.8.0.orig/drivers/misc/mei/client.h +++ linux-azure-5.8-5.8.0/drivers/misc/mei/client.h @@ -164,11 +164,11 @@ * * @cl: host client * - * Return: mtu + * Return: mtu or 0 if client is not connected */ static inline size_t mei_cl_mtu(const struct mei_cl *cl) { - return cl->me_cl->props.max_msg_length; + return cl->me_cl ? cl->me_cl->props.max_msg_length : 0; } /** --- linux-azure-5.8-5.8.0.orig/drivers/misc/mei/hbm.c +++ linux-azure-5.8-5.8.0/drivers/misc/mei/hbm.c @@ -1300,7 +1300,7 @@ return -EPROTO; } - dev->dev_state = MEI_DEV_POWER_DOWN; + mei_set_devstate(dev, MEI_DEV_POWER_DOWN); dev_info(dev->dev, "hbm: stop response: resetting.\n"); /* force the reset */ return -EPROTO; --- linux-azure-5.8-5.8.0.orig/drivers/misc/mei/hw-me-regs.h +++ linux-azure-5.8-5.8.0/drivers/misc/mei/hw-me-regs.h @@ -99,6 +99,11 @@ #define MEI_DEV_ID_MCC 0x4B70 /* Mule Creek Canyon (EHL) */ #define MEI_DEV_ID_MCC_4 0x4B75 /* Mule Creek Canyon 4 (EHL) */ +#define MEI_DEV_ID_EBG 0x1BE0 /* Emmitsburg WS */ + +#define MEI_DEV_ID_ADP_S 0x7AE8 /* Alder Lake Point S */ +#define MEI_DEV_ID_ADP_LP 0x7A60 /* Alder Lake Point LP */ + /* * MEI HW Section */ --- linux-azure-5.8-5.8.0.orig/drivers/misc/mei/pci-me.c +++ linux-azure-5.8-5.8.0/drivers/misc/mei/pci-me.c @@ -23,6 +23,9 @@ #include "hw-me-regs.h" #include "hw-me.h" +static bool disable_msi; +module_param(disable_msi, bool, 0); + /* mei_pci_tbl - PCI Device ID Table */ static const struct pci_device_id mei_me_pci_tbl[] = { {MEI_PCI_DEVICE(MEI_DEV_ID_82946GZ, MEI_ME_ICH_CFG)}, @@ -105,6 +108,11 @@ {MEI_PCI_DEVICE(MEI_DEV_ID_CDF, MEI_ME_PCH8_CFG)}, + {MEI_PCI_DEVICE(MEI_DEV_ID_EBG, MEI_ME_PCH15_SPS_CFG)}, + + {MEI_PCI_DEVICE(MEI_DEV_ID_ADP_S, MEI_ME_PCH15_CFG)}, + {MEI_PCI_DEVICE(MEI_DEV_ID_ADP_LP, MEI_ME_PCH15_CFG)}, + /* required last entry */ {0, } }; @@ -206,7 +214,8 @@ hw->mem_addr = pcim_iomap_table(pdev)[0]; hw->read_fws = mei_me_read_fws; - pci_enable_msi(pdev); + if (!disable_msi) + pci_enable_msi(pdev); hw->irq = pdev->irq; --- linux-azure-5.8-5.8.0.orig/drivers/misc/mic/scif/scif_rma.c +++ linux-azure-5.8-5.8.0/drivers/misc/mic/scif/scif_rma.c @@ -1384,6 +1384,8 @@ (prot & SCIF_PROT_WRITE) ? FOLL_WRITE : 0, pinned_pages->pages); if (nr_pages != pinned_pages->nr_pages) { + if (pinned_pages->nr_pages < 0) + pinned_pages->nr_pages = 0; if (try_upgrade) { if (ulimit) __scif_dec_pinned_vm_lock(mm, nr_pages); @@ -1400,7 +1402,6 @@ if (pinned_pages->nr_pages < nr_pages) { err = -EFAULT; - pinned_pages->nr_pages = nr_pages; goto dec_pinned; } @@ -1413,7 +1414,6 @@ __scif_dec_pinned_vm_lock(mm, nr_pages); /* Something went wrong! Rollback */ error_unmap: - pinned_pages->nr_pages = nr_pages; scif_destroy_pinned_pages(pinned_pages); *pages = NULL; dev_dbg(scif_info.mdev.this_device, --- linux-azure-5.8-5.8.0.orig/drivers/misc/mic/vop/vop_main.c +++ linux-azure-5.8-5.8.0/drivers/misc/mic/vop/vop_main.c @@ -320,7 +320,7 @@ /* First assign the vring's allocated in host memory */ vqconfig = _vop_vq_config(vdev->desc) + index; memcpy_fromio(&config, vqconfig, sizeof(config)); - _vr_size = vring_size(le16_to_cpu(config.num), MIC_VIRTIO_RING_ALIGN); + _vr_size = round_up(vring_size(le16_to_cpu(config.num), MIC_VIRTIO_RING_ALIGN), 4); vr_size = PAGE_ALIGN(_vr_size + sizeof(struct _mic_vring_info)); va = vpdev->hw_ops->remap(vpdev, le64_to_cpu(config.address), vr_size); if (!va) --- linux-azure-5.8-5.8.0.orig/drivers/misc/mic/vop/vop_vringh.c +++ linux-azure-5.8-5.8.0/drivers/misc/mic/vop/vop_vringh.c @@ -296,7 +296,7 @@ num = le16_to_cpu(vqconfig[i].num); mutex_init(&vvr->vr_mutex); - vr_size = PAGE_ALIGN(vring_size(num, MIC_VIRTIO_RING_ALIGN) + + vr_size = PAGE_ALIGN(round_up(vring_size(num, MIC_VIRTIO_RING_ALIGN), 4) + sizeof(struct _mic_vring_info)); vr->va = (void *) __get_free_pages(GFP_KERNEL | __GFP_ZERO, @@ -308,7 +308,7 @@ goto err; } vr->len = vr_size; - vr->info = vr->va + vring_size(num, MIC_VIRTIO_RING_ALIGN); + vr->info = vr->va + round_up(vring_size(num, MIC_VIRTIO_RING_ALIGN), 4); vr->info->magic = cpu_to_le32(MIC_MAGIC + vdev->virtio_id + i); vr_addr = dma_map_single(&vpdev->dev, vr->va, vr_size, DMA_BIDIRECTIONAL); @@ -602,6 +602,7 @@ size_t partlen; bool dma = VOP_USE_DMA && vi->dma_ch; int err = 0; + size_t offset = 0; if (dma) { dma_alignment = 1 << vi->dma_ch->device->copy_align; @@ -655,13 +656,20 @@ * We are copying to IO below and should ideally use something * like copy_from_user_toio(..) if it existed. */ - if (copy_from_user((void __force *)dbuf, ubuf, len)) { - err = -EFAULT; - dev_err(vop_dev(vdev), "%s %d err %d\n", - __func__, __LINE__, err); - goto err; + while (len) { + partlen = min_t(size_t, len, VOP_INT_DMA_BUF_SIZE); + + if (copy_from_user(vvr->buf, ubuf + offset, partlen)) { + err = -EFAULT; + dev_err(vop_dev(vdev), "%s %d err %d\n", + __func__, __LINE__, err); + goto err; + } + memcpy_toio(dbuf + offset, vvr->buf, partlen); + offset += partlen; + vdev->out_bytes += partlen; + len -= partlen; } - vdev->out_bytes += len; err = 0; err: vpdev->hw_ops->unmap(vpdev, dbuf); --- linux-azure-5.8-5.8.0.orig/drivers/misc/ocxl/Kconfig +++ linux-azure-5.8-5.8.0/drivers/misc/ocxl/Kconfig @@ -9,9 +9,8 @@ config OCXL tristate "OpenCAPI coherent accelerator support" - depends on PPC_POWERNV && PCI && EEH + depends on PPC_POWERNV && PCI && EEH && HOTPLUG_PCI_POWERNV select OCXL_BASE - select HOTPLUG_PCI_POWERNV default m help Select this option to enable the ocxl driver for Open --- linux-azure-5.8-5.8.0.orig/drivers/misc/pci_endpoint_test.c +++ linux-azure-5.8-5.8.0/drivers/misc/pci_endpoint_test.c @@ -806,8 +806,10 @@ pci_set_master(pdev); - if (!pci_endpoint_test_alloc_irq_vectors(test, irq_type)) + if (!pci_endpoint_test_alloc_irq_vectors(test, irq_type)) { + err = -EINVAL; goto err_disable_irq; + } for (bar = 0; bar < PCI_STD_NUM_BARS; bar++) { if (pci_resource_flags(pdev, bar) & IORESOURCE_MEM) { @@ -844,8 +846,10 @@ goto err_ida_remove; } - if (!pci_endpoint_test_request_irq(test)) + if (!pci_endpoint_test_request_irq(test)) { + err = -EINVAL; goto err_kfree_test_name; + } misc_device = &test->miscdev; misc_device->minor = MISC_DYNAMIC_MINOR; --- linux-azure-5.8-5.8.0.orig/drivers/misc/vmw_vmci/vmci_context.c +++ linux-azure-5.8-5.8.0/drivers/misc/vmw_vmci/vmci_context.c @@ -743,7 +743,7 @@ return VMCI_ERROR_MORE_DATA; } - dbells = kmalloc(data_size, GFP_ATOMIC); + dbells = kzalloc(data_size, GFP_ATOMIC); if (!dbells) return VMCI_ERROR_NO_MEM; --- linux-azure-5.8-5.8.0.orig/drivers/misc/vmw_vmci/vmci_queue_pair.c +++ linux-azure-5.8-5.8.0/drivers/misc/vmw_vmci/vmci_queue_pair.c @@ -537,6 +537,9 @@ queue_page_size = num_pages * sizeof(*queue->kernel_if->u.h.page); + if (queue_size + queue_page_size > KMALLOC_MAX_SIZE) + return NULL; + queue = kzalloc(queue_size + queue_page_size, GFP_KERNEL); if (queue) { queue->q_header = NULL; @@ -630,7 +633,7 @@ for (i = 0; i < num_pages; i++) { if (dirty) - set_page_dirty(pages[i]); + set_page_dirty_lock(pages[i]); put_page(pages[i]); pages[i] = NULL; @@ -657,8 +660,9 @@ if (retval < (int)produce_q->kernel_if->num_pages) { pr_debug("get_user_pages_fast(produce) failed (retval=%d)", retval); - qp_release_pages(produce_q->kernel_if->u.h.header_page, - retval, false); + if (retval > 0) + qp_release_pages(produce_q->kernel_if->u.h.header_page, + retval, false); err = VMCI_ERROR_NO_MEM; goto out; } @@ -670,8 +674,9 @@ if (retval < (int)consume_q->kernel_if->num_pages) { pr_debug("get_user_pages_fast(consume) failed (retval=%d)", retval); - qp_release_pages(consume_q->kernel_if->u.h.header_page, - retval, false); + if (retval > 0) + qp_release_pages(consume_q->kernel_if->u.h.header_page, + retval, false); qp_release_pages(produce_q->kernel_if->u.h.header_page, produce_q->kernel_if->num_pages, false); err = VMCI_ERROR_NO_MEM; --- linux-azure-5.8-5.8.0.orig/drivers/mmc/core/block.c +++ linux-azure-5.8-5.8.0/drivers/mmc/core/block.c @@ -583,7 +583,7 @@ memcpy(&(idata->ic.response), cmd.resp, sizeof(cmd.resp)); - if (idata->rpmb || (cmd.flags & MMC_RSP_R1B)) { + if (idata->rpmb || (cmd.flags & MMC_RSP_R1B) == MMC_RSP_R1B) { /* * Ensure RPMB/R1B command has completed by polling CMD13 * "Send Status". --- linux-azure-5.8-5.8.0.orig/drivers/mmc/core/queue.c +++ linux-azure-5.8-5.8.0/drivers/mmc/core/queue.c @@ -190,7 +190,7 @@ q->limits.discard_granularity = card->pref_erase << 9; /* granularity must not be greater than max. discard */ if (card->pref_erase > max_discard) - q->limits.discard_granularity = 0; + q->limits.discard_granularity = SECTOR_SIZE; if (mmc_can_secure_erase_trim(card)) blk_queue_flag_set(QUEUE_FLAG_SECERASE, q); } @@ -384,8 +384,10 @@ "merging was advertised but not possible"); blk_queue_max_segments(mq->queue, mmc_get_max_segments(host)); - if (mmc_card_mmc(card)) + if (mmc_card_mmc(card) && card->ext_csd.data_sector_size) { block_size = card->ext_csd.data_sector_size; + WARN_ON(block_size != 512 && block_size != 4096); + } blk_queue_logical_block_size(mq->queue, block_size); /* --- linux-azure-5.8-5.8.0.orig/drivers/mmc/core/sdio_cis.c +++ linux-azure-5.8-5.8.0/drivers/mmc/core/sdio_cis.c @@ -20,12 +20,17 @@ #include "sdio_cis.h" #include "sdio_ops.h" +#define SDIO_READ_CIS_TIMEOUT_MS (10 * 1000) /* 10s */ + static int cistpl_vers_1(struct mmc_card *card, struct sdio_func *func, const unsigned char *buf, unsigned size) { unsigned i, nr_strings; char **buffer, *string; + if (size < 2) + return 0; + /* Find all null-terminated (including zero length) strings in the TPLLV1_INFO field. Trailing garbage is ignored. */ buf += 2; @@ -263,6 +268,8 @@ do { unsigned char tpl_code, tpl_link; + unsigned long timeout = jiffies + + msecs_to_jiffies(SDIO_READ_CIS_TIMEOUT_MS); ret = mmc_io_rw_direct(card, 0, 0, ptr++, 0, &tpl_code); if (ret) @@ -315,6 +322,8 @@ prev = &this->next; if (ret == -ENOENT) { + if (time_after(jiffies, timeout)) + break; /* warn about unknown tuples */ pr_warn_ratelimited("%s: queuing unknown" " CIS tuple 0x%02x (%u bytes)\n", --- linux-azure-5.8-5.8.0.orig/drivers/mmc/core/sdio_ops.c +++ linux-azure-5.8-5.8.0/drivers/mmc/core/sdio_ops.c @@ -121,6 +121,7 @@ struct sg_table sgtable; unsigned int nents, left_size, i; unsigned int seg_size = card->host->max_seg_size; + int err; WARN_ON(blksz == 0); @@ -170,28 +171,32 @@ mmc_set_data_timeout(&data, card); - mmc_wait_for_req(card->host, &mrq); + mmc_pre_req(card->host, &mrq); - if (nents > 1) - sg_free_table(&sgtable); + mmc_wait_for_req(card->host, &mrq); if (cmd.error) - return cmd.error; - if (data.error) - return data.error; - - if (mmc_host_is_spi(card->host)) { + err = cmd.error; + else if (data.error) + err = data.error; + else if (mmc_host_is_spi(card->host)) /* host driver already reported errors */ - } else { - if (cmd.resp[0] & R5_ERROR) - return -EIO; - if (cmd.resp[0] & R5_FUNCTION_NUMBER) - return -EINVAL; - if (cmd.resp[0] & R5_OUT_OF_RANGE) - return -ERANGE; - } + err = 0; + else if (cmd.resp[0] & R5_ERROR) + err = -EIO; + else if (cmd.resp[0] & R5_FUNCTION_NUMBER) + err = -EINVAL; + else if (cmd.resp[0] & R5_OUT_OF_RANGE) + err = -ERANGE; + else + err = 0; + + mmc_post_req(card->host, &mrq, err); + + if (nents > 1) + sg_free_table(&sgtable); - return 0; + return err; } int sdio_reset(struct mmc_host *host) --- linux-azure-5.8-5.8.0.orig/drivers/mmc/host/mtk-sd.c +++ linux-azure-5.8-5.8.0/drivers/mmc/host/mtk-sd.c @@ -22,6 +22,7 @@ #include #include #include +#include #include #include @@ -414,6 +415,7 @@ struct pinctrl_state *pins_uhs; struct delayed_work req_timeout; int irq; /* host interrupt */ + struct reset_control *reset; struct clk *src_clk; /* msdc source clock */ struct clk *h_clk; /* msdc h_clk */ @@ -438,7 +440,7 @@ static const struct mtk_mmc_compatible mt8135_compat = { .clk_div_bits = 8, - .recheck_sdio_irq = false, + .recheck_sdio_irq = true, .hs400_tune = false, .pad_tune_reg = MSDC_PAD_TUNE, .async_fifo = false, @@ -477,7 +479,7 @@ static const struct mtk_mmc_compatible mt2701_compat = { .clk_div_bits = 12, - .recheck_sdio_irq = false, + .recheck_sdio_irq = true, .hs400_tune = false, .pad_tune_reg = MSDC_PAD_TUNE0, .async_fifo = true, @@ -503,7 +505,7 @@ static const struct mtk_mmc_compatible mt7622_compat = { .clk_div_bits = 12, - .recheck_sdio_irq = false, + .recheck_sdio_irq = true, .hs400_tune = false, .pad_tune_reg = MSDC_PAD_TUNE0, .async_fifo = true, @@ -516,7 +518,7 @@ static const struct mtk_mmc_compatible mt8516_compat = { .clk_div_bits = 12, - .recheck_sdio_irq = false, + .recheck_sdio_irq = true, .hs400_tune = false, .pad_tune_reg = MSDC_PAD_TUNE0, .async_fifo = true, @@ -527,7 +529,7 @@ static const struct mtk_mmc_compatible mt7620_compat = { .clk_div_bits = 8, - .recheck_sdio_irq = false, + .recheck_sdio_irq = true, .hs400_tune = false, .pad_tune_reg = MSDC_PAD_TUNE, .async_fifo = false, @@ -1516,6 +1518,12 @@ u32 val; u32 tune_reg = host->dev_comp->pad_tune_reg; + if (host->reset) { + reset_control_assert(host->reset); + usleep_range(10, 50); + reset_control_deassert(host->reset); + } + /* Configure to MMC/SD mode, clock free running */ sdr_set_bits(host->base + MSDC_CFG, MSDC_CFG_MODE | MSDC_CFG_CKPDN); @@ -2273,6 +2281,11 @@ if (IS_ERR(host->src_clk_cg)) host->src_clk_cg = NULL; + host->reset = devm_reset_control_get_optional_exclusive(&pdev->dev, + "hrst"); + if (IS_ERR(host->reset)) + return PTR_ERR(host->reset); + host->irq = platform_get_irq(pdev, 0); if (host->irq < 0) { ret = -EINVAL; --- linux-azure-5.8-5.8.0.orig/drivers/mmc/host/owl-mmc.c +++ linux-azure-5.8-5.8.0/drivers/mmc/host/owl-mmc.c @@ -641,7 +641,7 @@ owl_host->irq = platform_get_irq(pdev, 0); if (owl_host->irq < 0) { ret = -EINVAL; - goto err_free_host; + goto err_release_channel; } ret = devm_request_irq(&pdev->dev, owl_host->irq, owl_irq_handler, @@ -649,19 +649,21 @@ if (ret) { dev_err(&pdev->dev, "Failed to request irq %d\n", owl_host->irq); - goto err_free_host; + goto err_release_channel; } ret = mmc_add_host(mmc); if (ret) { dev_err(&pdev->dev, "Failed to add host\n"); - goto err_free_host; + goto err_release_channel; } dev_dbg(&pdev->dev, "Owl MMC Controller Initialized\n"); return 0; +err_release_channel: + dma_release_channel(owl_host->dma); err_free_host: mmc_free_host(mmc); @@ -675,6 +677,7 @@ mmc_remove_host(mmc); disable_irq(owl_host->irq); + dma_release_channel(owl_host->dma); mmc_free_host(mmc); return 0; --- linux-azure-5.8-5.8.0.orig/drivers/mmc/host/pxamci.c +++ linux-azure-5.8-5.8.0/drivers/mmc/host/pxamci.c @@ -731,6 +731,7 @@ host->power = devm_gpiod_get_optional(dev, "power", GPIOD_OUT_LOW); if (IS_ERR(host->power)) { + ret = PTR_ERR(host->power); dev_err(dev, "Failed requesting gpio_power\n"); goto out; } --- linux-azure-5.8-5.8.0.orig/drivers/mmc/host/renesas_sdhi_core.c +++ linux-azure-5.8-5.8.0/drivers/mmc/host/renesas_sdhi_core.c @@ -997,6 +997,7 @@ tmio_mmc_host_remove(host); renesas_sdhi_clk_disable(host); + tmio_mmc_host_free(host); return 0; } --- linux-azure-5.8-5.8.0.orig/drivers/mmc/host/renesas_sdhi_internal_dmac.c +++ linux-azure-5.8-5.8.0/drivers/mmc/host/renesas_sdhi_internal_dmac.c @@ -186,8 +186,8 @@ mmc_get_dma_dir(data))) goto force_pio; - /* This DMAC cannot handle if buffer is not 8-bytes alignment */ - if (!IS_ALIGNED(sg_dma_address(sg), 8)) + /* This DMAC cannot handle if buffer is not 128-bytes alignment */ + if (!IS_ALIGNED(sg_dma_address(sg), 128)) goto force_pio_with_unmap; if (data->flags & MMC_DATA_READ) { @@ -229,15 +229,12 @@ DTRAN_CTRL_DM_START); } -static void renesas_sdhi_internal_dmac_complete_tasklet_fn(unsigned long arg) +static bool renesas_sdhi_internal_dmac_complete(struct tmio_mmc_host *host) { - struct tmio_mmc_host *host = (struct tmio_mmc_host *)arg; enum dma_data_direction dir; - spin_lock_irq(&host->lock); - if (!host->data) - goto out; + return false; if (host->data->flags & MMC_DATA_READ) dir = DMA_FROM_DEVICE; @@ -250,6 +247,17 @@ if (dir == DMA_FROM_DEVICE) clear_bit(SDHI_INTERNAL_DMAC_RX_IN_USE, &global_flags); + return true; +} + +static void renesas_sdhi_internal_dmac_complete_tasklet_fn(unsigned long arg) +{ + struct tmio_mmc_host *host = (struct tmio_mmc_host *)arg; + + spin_lock_irq(&host->lock); + if (!renesas_sdhi_internal_dmac_complete(host)) + goto out; + tmio_mmc_do_data_irq(host); out: spin_unlock_irq(&host->lock); --- linux-azure-5.8-5.8.0.orig/drivers/mmc/host/sdhci-acpi.c +++ linux-azure-5.8-5.8.0/drivers/mmc/host/sdhci-acpi.c @@ -535,6 +535,11 @@ .caps = MMC_CAP_NONREMOVABLE, }; +struct amd_sdhci_host { + bool tuned_clock; + bool dll_enabled; +}; + /* AMD sdhci reset dll register. */ #define SDHCI_AMD_RESET_DLL_REGISTER 0x908 @@ -545,39 +550,96 @@ return MMC_SET_DRIVER_TYPE_A; } -static void sdhci_acpi_amd_hs400_dll(struct sdhci_host *host) +static void sdhci_acpi_amd_hs400_dll(struct sdhci_host *host, bool enable) { + struct sdhci_acpi_host *acpi_host = sdhci_priv(host); + struct amd_sdhci_host *amd_host = sdhci_acpi_priv(acpi_host); + /* AMD Platform requires dll setting */ sdhci_writel(host, 0x40003210, SDHCI_AMD_RESET_DLL_REGISTER); usleep_range(10, 20); - sdhci_writel(host, 0x40033210, SDHCI_AMD_RESET_DLL_REGISTER); + if (enable) + sdhci_writel(host, 0x40033210, SDHCI_AMD_RESET_DLL_REGISTER); + + amd_host->dll_enabled = enable; } /* - * For AMD Platform it is required to disable the tuning - * bit first controller to bring to HS Mode from HS200 - * mode, later enable to tune to HS400 mode. + * The initialization sequence for HS400 is: + * HS->HS200->Perform Tuning->HS->HS400 + * + * The re-tuning sequence is: + * HS400->DDR52->HS->HS200->Perform Tuning->HS->HS400 + * + * The AMD eMMC Controller can only use the tuned clock while in HS200 and HS400 + * mode. If we switch to a different mode, we need to disable the tuned clock. + * If we have previously performed tuning and switch back to HS200 or + * HS400, we can re-enable the tuned clock. + * */ static void amd_set_ios(struct mmc_host *mmc, struct mmc_ios *ios) { struct sdhci_host *host = mmc_priv(mmc); + struct sdhci_acpi_host *acpi_host = sdhci_priv(host); + struct amd_sdhci_host *amd_host = sdhci_acpi_priv(acpi_host); unsigned int old_timing = host->timing; + u16 val; sdhci_set_ios(mmc, ios); - if (old_timing == MMC_TIMING_MMC_HS200 && - ios->timing == MMC_TIMING_MMC_HS) - sdhci_writew(host, 0x9, SDHCI_HOST_CONTROL2); - if (old_timing != MMC_TIMING_MMC_HS400 && - ios->timing == MMC_TIMING_MMC_HS400) { - sdhci_writew(host, 0x80, SDHCI_HOST_CONTROL2); - sdhci_acpi_amd_hs400_dll(host); + + if (old_timing != host->timing && amd_host->tuned_clock) { + if (host->timing == MMC_TIMING_MMC_HS400 || + host->timing == MMC_TIMING_MMC_HS200) { + val = sdhci_readw(host, SDHCI_HOST_CONTROL2); + val |= SDHCI_CTRL_TUNED_CLK; + sdhci_writew(host, val, SDHCI_HOST_CONTROL2); + } else { + val = sdhci_readw(host, SDHCI_HOST_CONTROL2); + val &= ~SDHCI_CTRL_TUNED_CLK; + sdhci_writew(host, val, SDHCI_HOST_CONTROL2); + } + + /* DLL is only required for HS400 */ + if (host->timing == MMC_TIMING_MMC_HS400 && + !amd_host->dll_enabled) + sdhci_acpi_amd_hs400_dll(host, true); + } +} + +static int amd_sdhci_execute_tuning(struct mmc_host *mmc, u32 opcode) +{ + int err; + struct sdhci_host *host = mmc_priv(mmc); + struct sdhci_acpi_host *acpi_host = sdhci_priv(host); + struct amd_sdhci_host *amd_host = sdhci_acpi_priv(acpi_host); + + amd_host->tuned_clock = false; + + err = sdhci_execute_tuning(mmc, opcode); + + if (!err && !host->tuning_err) + amd_host->tuned_clock = true; + + return err; +} + +static void amd_sdhci_reset(struct sdhci_host *host, u8 mask) +{ + struct sdhci_acpi_host *acpi_host = sdhci_priv(host); + struct amd_sdhci_host *amd_host = sdhci_acpi_priv(acpi_host); + + if (mask & SDHCI_RESET_ALL) { + amd_host->tuned_clock = false; + sdhci_acpi_amd_hs400_dll(host, false); } + + sdhci_reset(host, mask); } static const struct sdhci_ops sdhci_acpi_ops_amd = { .set_clock = sdhci_set_clock, .set_bus_width = sdhci_set_bus_width, - .reset = sdhci_reset, + .reset = amd_sdhci_reset, .set_uhs_signaling = sdhci_set_uhs_signaling, }; @@ -599,8 +661,46 @@ (host->mmc->caps & MMC_CAP_1_8V_DDR)) host->mmc->caps2 = MMC_CAP2_HS400_1_8V; + /* + * There are two types of presets out in the wild: + * 1) Default/broken presets. + * These presets have two sets of problems: + * a) The clock divisor for SDR12, SDR25, and SDR50 is too small. + * This results in clock frequencies that are 2x higher than + * acceptable. i.e., SDR12 = 25 MHz, SDR25 = 50 MHz, SDR50 = + * 100 MHz.x + * b) The HS200 and HS400 driver strengths don't match. + * By default, the SDR104 preset register has a driver strength of + * A, but the (internal) HS400 preset register has a driver + * strength of B. As part of initializing HS400, HS200 tuning + * needs to be performed. Having different driver strengths + * between tuning and operation is wrong. It results in different + * rise/fall times that lead to incorrect sampling. + * 2) Firmware with properly initialized presets. + * These presets have proper clock divisors. i.e., SDR12 => 12MHz, + * SDR25 => 25 MHz, SDR50 => 50 MHz. Additionally the HS200 and + * HS400 preset driver strengths match. + * + * Enabling presets for HS400 doesn't work for the following reasons: + * 1) sdhci_set_ios has a hard coded list of timings that are used + * to determine if presets should be enabled. + * 2) sdhci_get_preset_value is using a non-standard register to + * read out HS400 presets. The AMD controller doesn't support this + * non-standard register. In fact, it doesn't expose the HS400 + * preset register anywhere in the SDHCI memory map. This results + * in reading a garbage value and using the wrong presets. + * + * Since HS400 and HS200 presets must be identical, we could + * instead use the the SDR104 preset register. + * + * If the above issues are resolved we could remove this quirk for + * firmware that that has valid presets (i.e., SDR12 <= 12 MHz). + */ + host->quirks2 |= SDHCI_QUIRK2_PRESET_VALUE_BROKEN; + host->mmc_host_ops.select_drive_strength = amd_select_drive_strength; host->mmc_host_ops.set_ios = amd_set_ios; + host->mmc_host_ops.execute_tuning = amd_sdhci_execute_tuning; return 0; } @@ -612,6 +712,7 @@ SDHCI_QUIRK_32BIT_ADMA_SIZE, .quirks2 = SDHCI_QUIRK2_BROKEN_64_BIT_DMA, .probe_slot = sdhci_acpi_emmc_amd_probe_slot, + .priv_size = sizeof(struct amd_sdhci_host), }; struct sdhci_acpi_uid_slot { --- linux-azure-5.8-5.8.0.orig/drivers/mmc/host/sdhci-brcmstb.c +++ linux-azure-5.8-5.8.0/drivers/mmc/host/sdhci-brcmstb.c @@ -316,11 +316,7 @@ static void sdhci_brcmstb_shutdown(struct platform_device *pdev) { - int ret; - - ret = sdhci_pltfm_unregister(pdev); - if (ret) - dev_err(&pdev->dev, "failed to shutdown\n"); + sdhci_pltfm_suspend(&pdev->dev); } MODULE_DEVICE_TABLE(of, sdhci_brcm_of_match); --- linux-azure-5.8-5.8.0.orig/drivers/mmc/host/sdhci-cadence.c +++ linux-azure-5.8-5.8.0/drivers/mmc/host/sdhci-cadence.c @@ -202,57 +202,6 @@ return FIELD_GET(SDHCI_CDNS_HRS06_MODE, tmp); } -static void sdhci_cdns_set_uhs_signaling(struct sdhci_host *host, - unsigned int timing) -{ - struct sdhci_cdns_priv *priv = sdhci_cdns_priv(host); - u32 mode; - - switch (timing) { - case MMC_TIMING_MMC_HS: - mode = SDHCI_CDNS_HRS06_MODE_MMC_SDR; - break; - case MMC_TIMING_MMC_DDR52: - mode = SDHCI_CDNS_HRS06_MODE_MMC_DDR; - break; - case MMC_TIMING_MMC_HS200: - mode = SDHCI_CDNS_HRS06_MODE_MMC_HS200; - break; - case MMC_TIMING_MMC_HS400: - if (priv->enhanced_strobe) - mode = SDHCI_CDNS_HRS06_MODE_MMC_HS400ES; - else - mode = SDHCI_CDNS_HRS06_MODE_MMC_HS400; - break; - default: - mode = SDHCI_CDNS_HRS06_MODE_SD; - break; - } - - sdhci_cdns_set_emmc_mode(priv, mode); - - /* For SD, fall back to the default handler */ - if (mode == SDHCI_CDNS_HRS06_MODE_SD) - sdhci_set_uhs_signaling(host, timing); -} - -static const struct sdhci_ops sdhci_cdns_ops = { - .set_clock = sdhci_set_clock, - .get_timeout_clock = sdhci_cdns_get_timeout_clock, - .set_bus_width = sdhci_set_bus_width, - .reset = sdhci_reset, - .set_uhs_signaling = sdhci_cdns_set_uhs_signaling, -}; - -static const struct sdhci_pltfm_data sdhci_cdns_uniphier_pltfm_data = { - .ops = &sdhci_cdns_ops, - .quirks2 = SDHCI_QUIRK2_PRESET_VALUE_BROKEN, -}; - -static const struct sdhci_pltfm_data sdhci_cdns_pltfm_data = { - .ops = &sdhci_cdns_ops, -}; - static int sdhci_cdns_set_tune_val(struct sdhci_host *host, unsigned int val) { struct sdhci_cdns_priv *priv = sdhci_cdns_priv(host); @@ -286,23 +235,24 @@ return 0; } -static int sdhci_cdns_execute_tuning(struct mmc_host *mmc, u32 opcode) +/* + * In SD mode, software must not use the hardware tuning and instead perform + * an almost identical procedure to eMMC. + */ +static int sdhci_cdns_execute_tuning(struct sdhci_host *host, u32 opcode) { - struct sdhci_host *host = mmc_priv(mmc); int cur_streak = 0; int max_streak = 0; int end_of_streak = 0; int i; /* - * This handler only implements the eMMC tuning that is specific to - * this controller. Fall back to the standard method for SD timing. + * Do not execute tuning for UHS_SDR50 or UHS_DDR50. + * The delay is set by probe, based on the DT properties. */ - if (host->timing != MMC_TIMING_MMC_HS200) - return sdhci_execute_tuning(mmc, opcode); - - if (WARN_ON(opcode != MMC_SEND_TUNING_BLOCK_HS200)) - return -EINVAL; + if (host->timing != MMC_TIMING_MMC_HS200 && + host->timing != MMC_TIMING_UHS_SDR104) + return 0; for (i = 0; i < SDHCI_CDNS_MAX_TUNING_LOOP; i++) { if (sdhci_cdns_set_tune_val(host, i) || @@ -325,6 +275,58 @@ return sdhci_cdns_set_tune_val(host, end_of_streak - max_streak / 2); } +static void sdhci_cdns_set_uhs_signaling(struct sdhci_host *host, + unsigned int timing) +{ + struct sdhci_cdns_priv *priv = sdhci_cdns_priv(host); + u32 mode; + + switch (timing) { + case MMC_TIMING_MMC_HS: + mode = SDHCI_CDNS_HRS06_MODE_MMC_SDR; + break; + case MMC_TIMING_MMC_DDR52: + mode = SDHCI_CDNS_HRS06_MODE_MMC_DDR; + break; + case MMC_TIMING_MMC_HS200: + mode = SDHCI_CDNS_HRS06_MODE_MMC_HS200; + break; + case MMC_TIMING_MMC_HS400: + if (priv->enhanced_strobe) + mode = SDHCI_CDNS_HRS06_MODE_MMC_HS400ES; + else + mode = SDHCI_CDNS_HRS06_MODE_MMC_HS400; + break; + default: + mode = SDHCI_CDNS_HRS06_MODE_SD; + break; + } + + sdhci_cdns_set_emmc_mode(priv, mode); + + /* For SD, fall back to the default handler */ + if (mode == SDHCI_CDNS_HRS06_MODE_SD) + sdhci_set_uhs_signaling(host, timing); +} + +static const struct sdhci_ops sdhci_cdns_ops = { + .set_clock = sdhci_set_clock, + .get_timeout_clock = sdhci_cdns_get_timeout_clock, + .set_bus_width = sdhci_set_bus_width, + .reset = sdhci_reset, + .platform_execute_tuning = sdhci_cdns_execute_tuning, + .set_uhs_signaling = sdhci_cdns_set_uhs_signaling, +}; + +static const struct sdhci_pltfm_data sdhci_cdns_uniphier_pltfm_data = { + .ops = &sdhci_cdns_ops, + .quirks2 = SDHCI_QUIRK2_PRESET_VALUE_BROKEN, +}; + +static const struct sdhci_pltfm_data sdhci_cdns_pltfm_data = { + .ops = &sdhci_cdns_ops, +}; + static void sdhci_cdns_hs400_enhanced_strobe(struct mmc_host *mmc, struct mmc_ios *ios) { @@ -385,7 +387,6 @@ priv->hrs_addr = host->ioaddr; priv->enhanced_strobe = false; host->ioaddr += SDHCI_CDNS_SRS_BASE; - host->mmc_host_ops.execute_tuning = sdhci_cdns_execute_tuning; host->mmc_host_ops.hs400_enhanced_strobe = sdhci_cdns_hs400_enhanced_strobe; sdhci_enable_v4_mode(host); --- linux-azure-5.8-5.8.0.orig/drivers/mmc/host/sdhci-esdhc-imx.c +++ linux-azure-5.8-5.8.0/drivers/mmc/host/sdhci-esdhc-imx.c @@ -1705,9 +1705,10 @@ struct sdhci_host *host = platform_get_drvdata(pdev); struct sdhci_pltfm_host *pltfm_host = sdhci_priv(host); struct pltfm_imx_data *imx_data = sdhci_pltfm_priv(pltfm_host); - int dead = (readl(host->ioaddr + SDHCI_INT_STATUS) == 0xffffffff); + int dead; pm_runtime_get_sync(&pdev->dev); + dead = (readl(host->ioaddr + SDHCI_INT_STATUS) == 0xffffffff); pm_runtime_disable(&pdev->dev); pm_runtime_put_noidle(&pdev->dev); --- linux-azure-5.8-5.8.0.orig/drivers/mmc/host/sdhci-esdhc.h +++ linux-azure-5.8-5.8.0/drivers/mmc/host/sdhci-esdhc.h @@ -5,6 +5,7 @@ * Copyright (c) 2007 Freescale Semiconductor, Inc. * Copyright (c) 2009 MontaVista Software, Inc. * Copyright (c) 2010 Pengutronix e.K. + * Copyright 2020 NXP * Author: Wolfram Sang */ @@ -88,6 +89,7 @@ /* DLL Config 0 Register */ #define ESDHC_DLLCFG0 0x160 #define ESDHC_DLL_ENABLE 0x80000000 +#define ESDHC_DLL_RESET 0x40000000 #define ESDHC_DLL_FREQ_SEL 0x08000000 /* DLL Config 1 Register */ --- linux-azure-5.8-5.8.0.orig/drivers/mmc/host/sdhci-msm.c +++ linux-azure-5.8-5.8.0/drivers/mmc/host/sdhci-msm.c @@ -1158,7 +1158,7 @@ static int sdhci_msm_execute_tuning(struct mmc_host *mmc, u32 opcode) { struct sdhci_host *host = mmc_priv(mmc); - int tuning_seq_cnt = 3; + int tuning_seq_cnt = 10; u8 phase, tuned_phases[16], tuned_phase_cnt = 0; int rc; struct mmc_ios ios = host->mmc->ios; @@ -1214,6 +1214,22 @@ } while (++phase < ARRAY_SIZE(tuned_phases)); if (tuned_phase_cnt) { + if (tuned_phase_cnt == ARRAY_SIZE(tuned_phases)) { + /* + * All phases valid is _almost_ as bad as no phases + * valid. Probably all phases are not really reliable + * but we didn't detect where the unreliable place is. + * That means we'll essentially be guessing and hoping + * we get a good phase. Better to try a few times. + */ + dev_dbg(mmc_dev(mmc), "%s: All phases valid; try again\n", + mmc_hostname(mmc)); + if (--tuning_seq_cnt) { + tuned_phase_cnt = 0; + goto retry; + } + } + rc = msm_find_most_appropriate_phase(host, tuned_phases, tuned_phase_cnt); if (rc < 0) --- linux-azure-5.8-5.8.0.orig/drivers/mmc/host/sdhci-of-arasan.c +++ linux-azure-5.8-5.8.0/drivers/mmc/host/sdhci-of-arasan.c @@ -30,7 +30,10 @@ #define SDHCI_ARASAN_VENDOR_REGISTER 0x78 #define SDHCI_ARASAN_ITAPDLY_REGISTER 0xF0F8 +#define SDHCI_ARASAN_ITAPDLY_SEL_MASK 0xFF + #define SDHCI_ARASAN_OTAPDLY_REGISTER 0xF0FC +#define SDHCI_ARASAN_OTAPDLY_SEL_MASK 0x3F #define SDHCI_ARASAN_CQE_BASE_ADDR 0x200 #define VENDOR_ENHANCED_STROBE BIT(0) @@ -600,14 +603,8 @@ u8 tap_delay, tap_max = 0; int ret; - /* - * This is applicable for SDHCI_SPEC_300 and above - * ZynqMP does not set phase for <=25MHz clock. - * If degrees is zero, no need to do anything. - */ - if (host->version < SDHCI_SPEC_300 || - host->timing == MMC_TIMING_LEGACY || - host->timing == MMC_TIMING_UHS_SDR12 || !degrees) + /* This is applicable for SDHCI_SPEC_300 and above */ + if (host->version < SDHCI_SPEC_300) return 0; switch (host->timing) { @@ -638,6 +635,9 @@ if (ret) pr_err("Error setting Output Tap Delay\n"); + /* Release DLL Reset */ + zynqmp_pm_sd_dll_reset(node_id, PM_DLL_RESET_RELEASE); + return ret; } @@ -668,16 +668,13 @@ u8 tap_delay, tap_max = 0; int ret; - /* - * This is applicable for SDHCI_SPEC_300 and above - * ZynqMP does not set phase for <=25MHz clock. - * If degrees is zero, no need to do anything. - */ - if (host->version < SDHCI_SPEC_300 || - host->timing == MMC_TIMING_LEGACY || - host->timing == MMC_TIMING_UHS_SDR12 || !degrees) + /* This is applicable for SDHCI_SPEC_300 and above */ + if (host->version < SDHCI_SPEC_300) return 0; + /* Assert DLL Reset */ + zynqmp_pm_sd_dll_reset(node_id, PM_DLL_RESET_ASSERT); + switch (host->timing) { case MMC_TIMING_MMC_HS: case MMC_TIMING_SD_HS: @@ -733,14 +730,8 @@ struct sdhci_host *host = sdhci_arasan->host; u8 tap_delay, tap_max = 0; - /* - * This is applicable for SDHCI_SPEC_300 and above - * Versal does not set phase for <=25MHz clock. - * If degrees is zero, no need to do anything. - */ - if (host->version < SDHCI_SPEC_300 || - host->timing == MMC_TIMING_LEGACY || - host->timing == MMC_TIMING_UHS_SDR12 || !degrees) + /* This is applicable for SDHCI_SPEC_300 and above */ + if (host->version < SDHCI_SPEC_300) return 0; switch (host->timing) { @@ -773,6 +764,7 @@ regval = sdhci_readl(host, SDHCI_ARASAN_OTAPDLY_REGISTER); regval |= SDHCI_OTAPDLY_ENABLE; sdhci_writel(host, regval, SDHCI_ARASAN_OTAPDLY_REGISTER); + regval &= ~SDHCI_ARASAN_OTAPDLY_SEL_MASK; regval |= tap_delay; sdhci_writel(host, regval, SDHCI_ARASAN_OTAPDLY_REGISTER); } @@ -804,14 +796,8 @@ struct sdhci_host *host = sdhci_arasan->host; u8 tap_delay, tap_max = 0; - /* - * This is applicable for SDHCI_SPEC_300 and above - * Versal does not set phase for <=25MHz clock. - * If degrees is zero, no need to do anything. - */ - if (host->version < SDHCI_SPEC_300 || - host->timing == MMC_TIMING_LEGACY || - host->timing == MMC_TIMING_UHS_SDR12 || !degrees) + /* This is applicable for SDHCI_SPEC_300 and above */ + if (host->version < SDHCI_SPEC_300) return 0; switch (host->timing) { @@ -846,6 +832,7 @@ sdhci_writel(host, regval, SDHCI_ARASAN_ITAPDLY_REGISTER); regval |= SDHCI_ITAPDLY_ENABLE; sdhci_writel(host, regval, SDHCI_ARASAN_ITAPDLY_REGISTER); + regval &= ~SDHCI_ARASAN_ITAPDLY_SEL_MASK; regval |= tap_delay; sdhci_writel(host, regval, SDHCI_ARASAN_ITAPDLY_REGISTER); regval &= ~SDHCI_ITAPDLY_CHGWIN; @@ -1025,7 +1012,6 @@ static void arasan_dt_parse_clk_phases(struct device *dev, struct sdhci_arasan_clk_data *clk_data) { - int *iclk_phase, *oclk_phase; u32 mio_bank = 0; int i; @@ -1037,28 +1023,32 @@ clk_data->set_clk_delays = sdhci_arasan_set_clk_delays; if (of_device_is_compatible(dev->of_node, "xlnx,zynqmp-8.9a")) { - iclk_phase = (int [MMC_TIMING_MMC_HS400 + 1]) ZYNQMP_ICLK_PHASE; - oclk_phase = (int [MMC_TIMING_MMC_HS400 + 1]) ZYNQMP_OCLK_PHASE; + u32 zynqmp_iclk_phase[MMC_TIMING_MMC_HS400 + 1] = + ZYNQMP_ICLK_PHASE; + u32 zynqmp_oclk_phase[MMC_TIMING_MMC_HS400 + 1] = + ZYNQMP_OCLK_PHASE; of_property_read_u32(dev->of_node, "xlnx,mio-bank", &mio_bank); if (mio_bank == 2) { - oclk_phase[MMC_TIMING_UHS_SDR104] = 90; - oclk_phase[MMC_TIMING_MMC_HS200] = 90; + zynqmp_oclk_phase[MMC_TIMING_UHS_SDR104] = 90; + zynqmp_oclk_phase[MMC_TIMING_MMC_HS200] = 90; } for (i = 0; i <= MMC_TIMING_MMC_HS400; i++) { - clk_data->clk_phase_in[i] = iclk_phase[i]; - clk_data->clk_phase_out[i] = oclk_phase[i]; + clk_data->clk_phase_in[i] = zynqmp_iclk_phase[i]; + clk_data->clk_phase_out[i] = zynqmp_oclk_phase[i]; } } if (of_device_is_compatible(dev->of_node, "xlnx,versal-8.9a")) { - iclk_phase = (int [MMC_TIMING_MMC_HS400 + 1]) VERSAL_ICLK_PHASE; - oclk_phase = (int [MMC_TIMING_MMC_HS400 + 1]) VERSAL_OCLK_PHASE; + u32 versal_iclk_phase[MMC_TIMING_MMC_HS400 + 1] = + VERSAL_ICLK_PHASE; + u32 versal_oclk_phase[MMC_TIMING_MMC_HS400 + 1] = + VERSAL_OCLK_PHASE; for (i = 0; i <= MMC_TIMING_MMC_HS400; i++) { - clk_data->clk_phase_in[i] = iclk_phase[i]; - clk_data->clk_phase_out[i] = oclk_phase[i]; + clk_data->clk_phase_in[i] = versal_iclk_phase[i]; + clk_data->clk_phase_out[i] = versal_oclk_phase[i]; } } @@ -1196,16 +1186,19 @@ static struct sdhci_arasan_of_data intel_keembay_emmc_data = { .soc_ctl_map = &intel_keembay_soc_ctl_map, .pdata = &sdhci_keembay_emmc_pdata, + .clk_ops = &arasan_clk_ops, }; static struct sdhci_arasan_of_data intel_keembay_sd_data = { .soc_ctl_map = &intel_keembay_soc_ctl_map, .pdata = &sdhci_keembay_sd_pdata, + .clk_ops = &arasan_clk_ops, }; static struct sdhci_arasan_of_data intel_keembay_sdio_data = { .soc_ctl_map = &intel_keembay_soc_ctl_map, .pdata = &sdhci_keembay_sdio_pdata, + .clk_ops = &arasan_clk_ops, }; static const struct of_device_id sdhci_arasan_of_match[] = { @@ -1299,6 +1292,8 @@ clk_data->sdcardclk_hw.init = &sdcardclk_init; clk_data->sdcardclk = devm_clk_register(dev, &clk_data->sdcardclk_hw); + if (IS_ERR(clk_data->sdcardclk)) + return PTR_ERR(clk_data->sdcardclk); clk_data->sdcardclk_hw.init = NULL; ret = of_clk_add_provider(np, of_clk_src_simple_get, @@ -1349,6 +1344,8 @@ clk_data->sampleclk_hw.init = &sampleclk_init; clk_data->sampleclk = devm_clk_register(dev, &clk_data->sampleclk_hw); + if (IS_ERR(clk_data->sampleclk)) + return PTR_ERR(clk_data->sampleclk); clk_data->sampleclk_hw.init = NULL; ret = of_clk_add_provider(np, of_clk_src_simple_get, --- linux-azure-5.8-5.8.0.orig/drivers/mmc/host/sdhci-of-dwcmshc.c +++ linux-azure-5.8-5.8.0/drivers/mmc/host/sdhci-of-dwcmshc.c @@ -16,6 +16,8 @@ #include "sdhci-pltfm.h" +#define SDHCI_DWCMSHC_ARG2_STUFF GENMASK(31, 16) + /* DWCMSHC specific Mode Select value */ #define DWCMSHC_CTRL_HS400 0x7 @@ -49,6 +51,29 @@ sdhci_adma_write_desc(host, desc, addr, len, cmd); } +static void dwcmshc_check_auto_cmd23(struct mmc_host *mmc, + struct mmc_request *mrq) +{ + struct sdhci_host *host = mmc_priv(mmc); + + /* + * No matter V4 is enabled or not, ARGUMENT2 register is 32-bit + * block count register which doesn't support stuff bits of + * CMD23 argument on dwcmsch host controller. + */ + if (mrq->sbc && (mrq->sbc->arg & SDHCI_DWCMSHC_ARG2_STUFF)) + host->flags &= ~SDHCI_AUTO_CMD23; + else + host->flags |= SDHCI_AUTO_CMD23; +} + +static void dwcmshc_request(struct mmc_host *mmc, struct mmc_request *mrq) +{ + dwcmshc_check_auto_cmd23(mmc, mrq); + + sdhci_request(mmc, mrq); +} + static void dwcmshc_set_uhs_signaling(struct sdhci_host *host, unsigned int timing) { @@ -133,6 +158,8 @@ sdhci_get_of_property(pdev); + host->mmc_host_ops.request = dwcmshc_request; + err = sdhci_add_host(host); if (err) goto err_clk; --- linux-azure-5.8-5.8.0.orig/drivers/mmc/host/sdhci-of-esdhc.c +++ linux-azure-5.8-5.8.0/drivers/mmc/host/sdhci-of-esdhc.c @@ -4,6 +4,7 @@ * * Copyright (c) 2007, 2010, 2012 Freescale Semiconductor, Inc. * Copyright (c) 2009 MontaVista Software, Inc. + * Copyright 2020 NXP * * Authors: Xiaobo Xie * Anton Vorontsov @@ -19,6 +20,7 @@ #include #include #include +#include #include #include #include "sdhci-pltfm.h" @@ -81,6 +83,7 @@ bool quirk_tuning_erratum_type2; bool quirk_ignore_data_inhibit; bool quirk_delay_before_data_reset; + bool quirk_trans_complete_erratum; bool in_sw_tuning; unsigned int peripheral_clock; const struct esdhc_clk_fixup *clk_fixup; @@ -742,6 +745,21 @@ if (host->mmc->actual_clock == MMC_HS200_MAX_DTR) temp |= ESDHC_DLL_FREQ_SEL; sdhci_writel(host, temp, ESDHC_DLLCFG0); + + temp |= ESDHC_DLL_RESET; + sdhci_writel(host, temp, ESDHC_DLLCFG0); + udelay(1); + temp &= ~ESDHC_DLL_RESET; + sdhci_writel(host, temp, ESDHC_DLLCFG0); + + /* Wait max 20 ms */ + if (read_poll_timeout(sdhci_readl, temp, + temp & ESDHC_DLL_STS_SLV_LOCK, + 10, 20000, false, + host, ESDHC_DLLSTAT0)) + pr_err("%s: timeout for delay chain lock.\n", + mmc_hostname(host->mmc)); + temp = sdhci_readl(host, ESDHC_TBCTL); sdhci_writel(host, temp | ESDHC_HS400_WNDW_ADJUST, ESDHC_TBCTL); @@ -1051,6 +1069,17 @@ esdhc_tuning_block_enable(host, true); + /* + * The eSDHC controller takes the data timeout value into account + * during tuning. If the SD card is too slow sending the response, the + * timer will expire and a "Buffer Read Ready" interrupt without data + * is triggered. This leads to tuning errors. + * + * Just set the timeout to the maximum value because the core will + * already take care of it in sdhci_send_tuning(). + */ + sdhci_writeb(host, 0xe, SDHCI_TIMEOUT_CONTROL); + hs400_tuning = host->flags & SDHCI_HS400_TUNING; do { @@ -1177,10 +1206,11 @@ static u32 esdhc_irq(struct sdhci_host *host, u32 intmask) { + struct sdhci_pltfm_host *pltfm_host = sdhci_priv(host); + struct sdhci_esdhc *esdhc = sdhci_pltfm_priv(pltfm_host); u32 command; - if (of_find_compatible_node(NULL, NULL, - "fsl,p2020-esdhc")) { + if (esdhc->quirk_trans_complete_erratum) { command = SDHCI_GET_CMD(sdhci_readw(host, SDHCI_COMMAND)); if (command == MMC_WRITE_MULTIPLE_BLOCK && @@ -1294,6 +1324,8 @@ static struct soc_device_attribute soc_unreliable_pulse_detection[] = { { .family = "QorIQ LX2160A", .revision = "1.0", }, + { .family = "QorIQ LX2160A", .revision = "2.0", }, + { .family = "QorIQ LS1028A", .revision = "1.0", }, { }, }; @@ -1334,8 +1366,10 @@ esdhc->clk_fixup = match->data; np = pdev->dev.of_node; - if (of_device_is_compatible(np, "fsl,p2020-esdhc")) + if (of_device_is_compatible(np, "fsl,p2020-esdhc")) { esdhc->quirk_delay_before_data_reset = true; + esdhc->quirk_trans_complete_erratum = true; + } clk = of_clk_get(np, 0); if (!IS_ERR(clk)) { --- linux-azure-5.8-5.8.0.orig/drivers/mmc/host/sdhci-pci-core.c +++ linux-azure-5.8-5.8.0/drivers/mmc/host/sdhci-pci-core.c @@ -24,6 +24,8 @@ #include #include #include +#include +#include #include #include #include @@ -232,6 +234,14 @@ sdhci_dumpregs(mmc_priv(mmc)); } +static void sdhci_cqhci_reset(struct sdhci_host *host, u8 mask) +{ + if ((host->mmc->caps2 & MMC_CAP2_CQE) && (mask & SDHCI_RESET_ALL) && + host->mmc->cqe_private) + cqhci_deactivate(host->mmc); + sdhci_reset(host, mask); +} + /*****************************************************************************\ * * * Hardware specific quirk handling * @@ -508,6 +518,8 @@ bool rpm_retune_ok; u32 glk_rx_ctrl1; u32 glk_tun_val; + u32 active_ltr; + u32 idle_ltr; }; static const guid_t intel_dsm_guid = @@ -653,6 +665,15 @@ } } +static void sdhci_intel_set_uhs_signaling(struct sdhci_host *host, + unsigned int timing) +{ + /* Set UHS timing to SDR25 for High Speed mode */ + if (timing == MMC_TIMING_MMC_HS || timing == MMC_TIMING_SD_HS) + timing = MMC_TIMING_UHS_SDR25; + sdhci_set_uhs_signaling(host, timing); +} + #define INTEL_HS400_ES_REG 0x78 #define INTEL_HS400_ES_BIT BIT(0) @@ -709,7 +730,7 @@ .enable_dma = sdhci_pci_enable_dma, .set_bus_width = sdhci_set_bus_width, .reset = sdhci_reset, - .set_uhs_signaling = sdhci_set_uhs_signaling, + .set_uhs_signaling = sdhci_intel_set_uhs_signaling, .hw_reset = sdhci_pci_hw_reset, }; @@ -718,8 +739,8 @@ .set_power = sdhci_intel_set_power, .enable_dma = sdhci_pci_enable_dma, .set_bus_width = sdhci_set_bus_width, - .reset = sdhci_reset, - .set_uhs_signaling = sdhci_set_uhs_signaling, + .reset = sdhci_cqhci_reset, + .set_uhs_signaling = sdhci_intel_set_uhs_signaling, .hw_reset = sdhci_pci_hw_reset, .irq = sdhci_cqhci_irq, }; @@ -752,6 +773,108 @@ return 0; } +#define INTEL_ACTIVELTR 0x804 +#define INTEL_IDLELTR 0x808 + +#define INTEL_LTR_REQ BIT(15) +#define INTEL_LTR_SCALE_MASK GENMASK(11, 10) +#define INTEL_LTR_SCALE_1US (2 << 10) +#define INTEL_LTR_SCALE_32US (3 << 10) +#define INTEL_LTR_VALUE_MASK GENMASK(9, 0) + +static void intel_cache_ltr(struct sdhci_pci_slot *slot) +{ + struct intel_host *intel_host = sdhci_pci_priv(slot); + struct sdhci_host *host = slot->host; + + intel_host->active_ltr = readl(host->ioaddr + INTEL_ACTIVELTR); + intel_host->idle_ltr = readl(host->ioaddr + INTEL_IDLELTR); +} + +static void intel_ltr_set(struct device *dev, s32 val) +{ + struct sdhci_pci_chip *chip = dev_get_drvdata(dev); + struct sdhci_pci_slot *slot = chip->slots[0]; + struct intel_host *intel_host = sdhci_pci_priv(slot); + struct sdhci_host *host = slot->host; + u32 ltr; + + pm_runtime_get_sync(dev); + + /* + * Program latency tolerance (LTR) accordingly what has been asked + * by the PM QoS layer or disable it in case we were passed + * negative value or PM_QOS_LATENCY_ANY. + */ + ltr = readl(host->ioaddr + INTEL_ACTIVELTR); + + if (val == PM_QOS_LATENCY_ANY || val < 0) { + ltr &= ~INTEL_LTR_REQ; + } else { + ltr |= INTEL_LTR_REQ; + ltr &= ~INTEL_LTR_SCALE_MASK; + ltr &= ~INTEL_LTR_VALUE_MASK; + + if (val > INTEL_LTR_VALUE_MASK) { + val >>= 5; + if (val > INTEL_LTR_VALUE_MASK) + val = INTEL_LTR_VALUE_MASK; + ltr |= INTEL_LTR_SCALE_32US | val; + } else { + ltr |= INTEL_LTR_SCALE_1US | val; + } + } + + if (ltr == intel_host->active_ltr) + goto out; + + writel(ltr, host->ioaddr + INTEL_ACTIVELTR); + writel(ltr, host->ioaddr + INTEL_IDLELTR); + + /* Cache the values into lpss structure */ + intel_cache_ltr(slot); +out: + pm_runtime_put_autosuspend(dev); +} + +static bool intel_use_ltr(struct sdhci_pci_chip *chip) +{ + switch (chip->pdev->device) { + case PCI_DEVICE_ID_INTEL_BYT_EMMC: + case PCI_DEVICE_ID_INTEL_BYT_EMMC2: + case PCI_DEVICE_ID_INTEL_BYT_SDIO: + case PCI_DEVICE_ID_INTEL_BYT_SD: + case PCI_DEVICE_ID_INTEL_BSW_EMMC: + case PCI_DEVICE_ID_INTEL_BSW_SDIO: + case PCI_DEVICE_ID_INTEL_BSW_SD: + return false; + default: + return true; + } +} + +static void intel_ltr_expose(struct sdhci_pci_chip *chip) +{ + struct device *dev = &chip->pdev->dev; + + if (!intel_use_ltr(chip)) + return; + + dev->power.set_latency_tolerance = intel_ltr_set; + dev_pm_qos_expose_latency_tolerance(dev); +} + +static void intel_ltr_hide(struct sdhci_pci_chip *chip) +{ + struct device *dev = &chip->pdev->dev; + + if (!intel_use_ltr(chip)) + return; + + dev_pm_qos_hide_latency_tolerance(dev); + dev->power.set_latency_tolerance = NULL; +} + static void byt_probe_slot(struct sdhci_pci_slot *slot) { struct mmc_host_ops *ops = &slot->host->mmc_host_ops; @@ -766,6 +889,43 @@ ops->start_signal_voltage_switch = intel_start_signal_voltage_switch; device_property_read_u32(dev, "max-frequency", &mmc->f_max); + + if (!mmc->slotno) { + slot->chip->slots[mmc->slotno] = slot; + intel_ltr_expose(slot->chip); + } +} + +static void byt_add_debugfs(struct sdhci_pci_slot *slot) +{ + struct intel_host *intel_host = sdhci_pci_priv(slot); + struct mmc_host *mmc = slot->host->mmc; + struct dentry *dir = mmc->debugfs_root; + + if (!intel_use_ltr(slot->chip)) + return; + + debugfs_create_x32("active_ltr", 0444, dir, &intel_host->active_ltr); + debugfs_create_x32("idle_ltr", 0444, dir, &intel_host->idle_ltr); + + intel_cache_ltr(slot); +} + +static int byt_add_host(struct sdhci_pci_slot *slot) +{ + int ret = sdhci_add_host(slot->host); + + if (!ret) + byt_add_debugfs(slot); + return ret; +} + +static void byt_remove_slot(struct sdhci_pci_slot *slot, int dead) +{ + struct mmc_host *mmc = slot->host->mmc; + + if (!mmc->slotno) + intel_ltr_hide(slot->chip); } static int byt_emmc_probe_slot(struct sdhci_pci_slot *slot) @@ -786,7 +946,8 @@ static bool glk_broken_cqhci(struct sdhci_pci_slot *slot) { return slot->chip->pdev->device == PCI_DEVICE_ID_INTEL_GLK_EMMC && - dmi_match(DMI_BIOS_VENDOR, "LENOVO"); + (dmi_match(DMI_BIOS_VENDOR, "LENOVO") || + dmi_match(DMI_SYS_VENDOR, "IRBIS")); } static int glk_emmc_probe_slot(struct sdhci_pci_slot *slot) @@ -846,6 +1007,8 @@ if (ret) goto cleanup; + byt_add_debugfs(slot); + return 0; cleanup: @@ -1023,6 +1186,8 @@ #endif .allow_runtime_pm = true, .probe_slot = byt_emmc_probe_slot, + .add_host = byt_add_host, + .remove_slot = byt_remove_slot, .quirks = SDHCI_QUIRK_NO_ENDATTR_IN_NOPDESC | SDHCI_QUIRK_NO_LED, .quirks2 = SDHCI_QUIRK2_PRESET_VALUE_BROKEN | @@ -1036,6 +1201,7 @@ .allow_runtime_pm = true, .probe_slot = glk_emmc_probe_slot, .add_host = glk_emmc_add_host, + .remove_slot = byt_remove_slot, #ifdef CONFIG_PM_SLEEP .suspend = sdhci_cqhci_suspend, .resume = sdhci_cqhci_resume, @@ -1066,6 +1232,8 @@ SDHCI_QUIRK2_PRESET_VALUE_BROKEN, .allow_runtime_pm = true, .probe_slot = ni_byt_sdio_probe_slot, + .add_host = byt_add_host, + .remove_slot = byt_remove_slot, .ops = &sdhci_intel_byt_ops, .priv_size = sizeof(struct intel_host), }; @@ -1083,6 +1251,8 @@ SDHCI_QUIRK2_PRESET_VALUE_BROKEN, .allow_runtime_pm = true, .probe_slot = byt_sdio_probe_slot, + .add_host = byt_add_host, + .remove_slot = byt_remove_slot, .ops = &sdhci_intel_byt_ops, .priv_size = sizeof(struct intel_host), }; @@ -1102,6 +1272,8 @@ .allow_runtime_pm = true, .own_cd_for_runtime_pm = true, .probe_slot = byt_sd_probe_slot, + .add_host = byt_add_host, + .remove_slot = byt_remove_slot, .ops = &sdhci_intel_byt_ops, .priv_size = sizeof(struct intel_host), }; --- linux-azure-5.8-5.8.0.orig/drivers/mmc/host/sdhci-pci-o2micro.c +++ linux-azure-5.8-5.8.0/drivers/mmc/host/sdhci-pci-o2micro.c @@ -561,6 +561,12 @@ slot->host->mmc_host_ops.get_cd = sdhci_o2_get_cd; } + if (chip->pdev->device == PCI_DEVICE_ID_O2_SEABIRD1) { + slot->host->mmc_host_ops.get_cd = sdhci_o2_get_cd; + host->mmc->caps2 |= MMC_CAP2_NO_SDIO; + host->quirks2 |= SDHCI_QUIRK2_PRESET_VALUE_BROKEN; + } + host->mmc_host_ops.execute_tuning = sdhci_o2_execute_tuning; if (chip->pdev->device != PCI_DEVICE_ID_O2_FUJIN2) --- linux-azure-5.8-5.8.0.orig/drivers/mmc/host/sdhci-pltfm.h +++ linux-azure-5.8-5.8.0/drivers/mmc/host/sdhci-pltfm.h @@ -111,8 +111,13 @@ return host->private; } +extern const struct dev_pm_ops sdhci_pltfm_pmops; +#ifdef CONFIG_PM_SLEEP int sdhci_pltfm_suspend(struct device *dev); int sdhci_pltfm_resume(struct device *dev); -extern const struct dev_pm_ops sdhci_pltfm_pmops; +#else +static inline int sdhci_pltfm_suspend(struct device *dev) { return 0; } +static inline int sdhci_pltfm_resume(struct device *dev) { return 0; } +#endif #endif /* _DRIVERS_MMC_SDHCI_PLTFM_H */ --- linux-azure-5.8-5.8.0.orig/drivers/mmc/host/sdhci-sprd.c +++ linux-azure-5.8-5.8.0/drivers/mmc/host/sdhci-sprd.c @@ -708,14 +708,14 @@ { struct sdhci_host *host = platform_get_drvdata(pdev); struct sdhci_sprd_host *sprd_host = TO_SPRD_HOST(host); - struct mmc_host *mmc = host->mmc; - mmc_remove_host(mmc); + sdhci_remove_host(host, 0); + clk_disable_unprepare(sprd_host->clk_sdio); clk_disable_unprepare(sprd_host->clk_enable); clk_disable_unprepare(sprd_host->clk_2x_enable); - mmc_free_host(mmc); + sdhci_pltfm_free(pdev); return 0; } --- linux-azure-5.8-5.8.0.orig/drivers/mmc/host/sdhci-tegra.c +++ linux-azure-5.8-5.8.0/drivers/mmc/host/sdhci-tegra.c @@ -101,6 +101,12 @@ #define NVQUIRK_DIS_CARD_CLK_CONFIG_TAP BIT(8) #define NVQUIRK_CQHCI_DCMD_R1B_CMD_TIMING BIT(9) +/* + * NVQUIRK_HAS_TMCLK is for SoC's having separate timeout clock for Tegra + * SDMMC hardware data timeout. + */ +#define NVQUIRK_HAS_TMCLK BIT(10) + /* SDMMC CQE Base Address for Tegra Host Ver 4.1 and Higher */ #define SDHCI_TEGRA_CQE_BASE_ADDR 0xF000 @@ -131,6 +137,7 @@ struct sdhci_tegra { const struct sdhci_tegra_soc_data *soc_data; struct gpio_desc *power_gpio; + struct clk *tmclk; bool ddr_signaling; bool pad_calib_required; bool pad_control_available; @@ -1256,7 +1263,7 @@ * busy wait mode. */ val = sdhci_readl(host, SDHCI_TEGRA_VENDOR_MISC_CTRL); - if (cmd && cmd->busy_timeout >= 11 * HZ) + if (cmd && cmd->busy_timeout >= 11 * MSEC_PER_SEC) val |= SDHCI_MISC_CTRL_ERASE_TIMEOUT_LIMIT; else val &= ~SDHCI_MISC_CTRL_ERASE_TIMEOUT_LIMIT; @@ -1409,7 +1416,6 @@ static const struct sdhci_pltfm_data sdhci_tegra210_pdata = { .quirks = SDHCI_QUIRK_BROKEN_TIMEOUT_VAL | - SDHCI_QUIRK_DATA_TIMEOUT_USES_SDCLK | SDHCI_QUIRK_SINGLE_POWER_WRITE | SDHCI_QUIRK_NO_HISPD_BIT | SDHCI_QUIRK_BROKEN_ADMA_ZEROLEN_DESC | @@ -1425,7 +1431,8 @@ NVQUIRK_HAS_PADCALIB | NVQUIRK_DIS_CARD_CLK_CONFIG_TAP | NVQUIRK_ENABLE_SDR50 | - NVQUIRK_ENABLE_SDR104, + NVQUIRK_ENABLE_SDR104 | + NVQUIRK_HAS_TMCLK, .min_tap_delay = 106, .max_tap_delay = 185, }; @@ -1447,7 +1454,6 @@ static const struct sdhci_pltfm_data sdhci_tegra186_pdata = { .quirks = SDHCI_QUIRK_BROKEN_TIMEOUT_VAL | - SDHCI_QUIRK_DATA_TIMEOUT_USES_SDCLK | SDHCI_QUIRK_SINGLE_POWER_WRITE | SDHCI_QUIRK_NO_HISPD_BIT | SDHCI_QUIRK_BROKEN_ADMA_ZEROLEN_DESC | @@ -1464,6 +1470,7 @@ NVQUIRK_DIS_CARD_CLK_CONFIG_TAP | NVQUIRK_ENABLE_SDR50 | NVQUIRK_ENABLE_SDR104 | + NVQUIRK_HAS_TMCLK | NVQUIRK_CQHCI_DCMD_R1B_CMD_TIMING, .min_tap_delay = 84, .max_tap_delay = 136, @@ -1476,7 +1483,8 @@ NVQUIRK_HAS_PADCALIB | NVQUIRK_DIS_CARD_CLK_CONFIG_TAP | NVQUIRK_ENABLE_SDR50 | - NVQUIRK_ENABLE_SDR104, + NVQUIRK_ENABLE_SDR104 | + NVQUIRK_HAS_TMCLK, .min_tap_delay = 96, .max_tap_delay = 139, }; @@ -1604,6 +1612,43 @@ goto err_power_req; } + /* + * Tegra210 has a separate SDMMC_LEGACY_TM clock used for host + * timeout clock and SW can choose TMCLK or SDCLK for hardware + * data timeout through the bit USE_TMCLK_FOR_DATA_TIMEOUT of + * the register SDHCI_TEGRA_VENDOR_SYS_SW_CTRL. + * + * USE_TMCLK_FOR_DATA_TIMEOUT bit default is set to 1 and SDMMC uses + * 12Mhz TMCLK which is advertised in host capability register. + * With TMCLK of 12Mhz provides maximum data timeout period that can + * be achieved is 11s better than using SDCLK for data timeout. + * + * So, TMCLK is set to 12Mhz and kept enabled all the time on SoC's + * supporting separate TMCLK. + */ + + if (soc_data->nvquirks & NVQUIRK_HAS_TMCLK) { + clk = devm_clk_get(&pdev->dev, "tmclk"); + if (IS_ERR(clk)) { + rc = PTR_ERR(clk); + if (rc == -EPROBE_DEFER) + goto err_power_req; + + dev_warn(&pdev->dev, "failed to get tmclk: %d\n", rc); + clk = NULL; + } + + clk_set_rate(clk, 12000000); + rc = clk_prepare_enable(clk); + if (rc) { + dev_err(&pdev->dev, + "failed to enable tmclk: %d\n", rc); + goto err_power_req; + } + + tegra_host->tmclk = clk; + } + clk = devm_clk_get(mmc_dev(host->mmc), NULL); if (IS_ERR(clk)) { rc = PTR_ERR(clk); @@ -1647,6 +1692,7 @@ err_rst_get: clk_disable_unprepare(pltfm_host->clk); err_clk_get: + clk_disable_unprepare(tegra_host->tmclk); err_power_req: err_parse_dt: sdhci_pltfm_free(pdev); @@ -1664,6 +1710,7 @@ reset_control_assert(tegra_host->rst); usleep_range(2000, 4000); clk_disable_unprepare(pltfm_host->clk); + clk_disable_unprepare(tegra_host->tmclk); sdhci_pltfm_free(pdev); --- linux-azure-5.8-5.8.0.orig/drivers/mmc/host/sdhci-xenon.c +++ linux-azure-5.8-5.8.0/drivers/mmc/host/sdhci-xenon.c @@ -167,7 +167,12 @@ /* Disable tuning request and auto-retuning again */ xenon_retune_setup(host); - xenon_set_acg(host, true); + /* + * The ACG should be turned off at the early init time, in order + * to solve a possible issues with the 1.8V regulator stabilization. + * The feature is enabled in later stage. + */ + xenon_set_acg(host, false); xenon_set_sdclk_off_idle(host, sdhc_id, false); --- linux-azure-5.8-5.8.0.orig/drivers/mmc/host/sdhci.c +++ linux-azure-5.8-5.8.0/drivers/mmc/host/sdhci.c @@ -1384,9 +1384,11 @@ /* * In case of Version 4.10 or later, use of 'Auto CMD Auto * Select' is recommended rather than use of 'Auto CMD12 - * Enable' or 'Auto CMD23 Enable'. + * Enable' or 'Auto CMD23 Enable'. We require Version 4 Mode + * here because some controllers (e.g sdhci-of-dwmshc) expect it. */ - if (host->version >= SDHCI_SPEC_410 && (use_cmd12 || use_cmd23)) { + if (host->version >= SDHCI_SPEC_410 && host->v4_mode && + (use_cmd12 || use_cmd23)) { *mode |= SDHCI_TRNS_AUTO_SEL; ctrl2 = sdhci_readw(host, SDHCI_HOST_CONTROL2); --- linux-azure-5.8-5.8.0.orig/drivers/mmc/host/usdhi6rol0.c +++ linux-azure-5.8-5.8.0/drivers/mmc/host/usdhi6rol0.c @@ -1858,10 +1858,12 @@ ret = mmc_add_host(mmc); if (ret < 0) - goto e_clk_off; + goto e_release_dma; return 0; +e_release_dma: + usdhi6_dma_release(host); e_clk_off: clk_disable_unprepare(host->clk); e_free_mmc: --- linux-azure-5.8-5.8.0.orig/drivers/mmc/host/via-sdmmc.c +++ linux-azure-5.8-5.8.0/drivers/mmc/host/via-sdmmc.c @@ -1259,11 +1259,14 @@ static int via_sd_suspend(struct pci_dev *pcidev, pm_message_t state) { struct via_crdr_mmc_host *host; + unsigned long flags; host = pci_get_drvdata(pcidev); + spin_lock_irqsave(&host->lock, flags); via_save_pcictrlreg(host); via_save_sdcreg(host); + spin_unlock_irqrestore(&host->lock, flags); pci_save_state(pcidev); pci_enable_wake(pcidev, pci_choose_state(pcidev, state), 0); --- linux-azure-5.8-5.8.0.orig/drivers/most/core.c +++ linux-azure-5.8-5.8.0/drivers/most/core.c @@ -1283,10 +1283,8 @@ struct most_channel *c; if (!iface || !iface->enqueue || !iface->configure || - !iface->poison_channel || (iface->num_channels > MAX_CHANNELS)) { - dev_err(iface->dev, "Bad interface or channel overflow\n"); + !iface->poison_channel || (iface->num_channels > MAX_CHANNELS)) return -EINVAL; - } id = ida_simple_get(&mdev_id, 0, 0, GFP_KERNEL); if (id < 0) { --- linux-azure-5.8-5.8.0.orig/drivers/mtd/hyperbus/hbmc-am654.c +++ linux-azure-5.8-5.8.0/drivers/mtd/hyperbus/hbmc-am654.c @@ -70,7 +70,8 @@ platform_set_drvdata(pdev, priv); - ret = of_address_to_resource(np, 0, &res); + priv->hbdev.np = of_get_next_child(np, NULL); + ret = of_address_to_resource(priv->hbdev.np, 0, &res); if (ret) return ret; @@ -103,7 +104,6 @@ priv->ctlr.dev = dev; priv->ctlr.ops = &am654_hbmc_ops; priv->hbdev.ctlr = &priv->ctlr; - priv->hbdev.np = of_get_next_child(dev->of_node, NULL); ret = hyperbus_register_device(&priv->hbdev); if (ret) { dev_err(dev, "failed to register controller\n"); --- linux-azure-5.8-5.8.0.orig/drivers/mtd/lpddr/lpddr2_nvm.c +++ linux-azure-5.8-5.8.0/drivers/mtd/lpddr/lpddr2_nvm.c @@ -393,6 +393,17 @@ return lpddr2_nvm_do_block_op(mtd, start_add, len, LPDDR2_NVM_LOCK); } +static const struct mtd_info lpddr2_nvm_mtd_info = { + .type = MTD_RAM, + .writesize = 1, + .flags = (MTD_CAP_NVRAM | MTD_POWERUP_LOCK), + ._read = lpddr2_nvm_read, + ._write = lpddr2_nvm_write, + ._erase = lpddr2_nvm_erase, + ._unlock = lpddr2_nvm_unlock, + ._lock = lpddr2_nvm_lock, +}; + /* * lpddr2_nvm driver probe method */ @@ -433,6 +444,7 @@ .pfow_base = OW_BASE_ADDRESS, .fldrv_priv = pcm_data, }; + if (IS_ERR(map->virt)) return PTR_ERR(map->virt); @@ -444,22 +456,13 @@ return PTR_ERR(pcm_data->ctl_regs); /* Populate mtd_info data structure */ - *mtd = (struct mtd_info) { - .dev = { .parent = &pdev->dev }, - .name = pdev->dev.init_name, - .type = MTD_RAM, - .priv = map, - .size = resource_size(add_range), - .erasesize = ERASE_BLOCKSIZE * pcm_data->bus_width, - .writesize = 1, - .writebufsize = WRITE_BUFFSIZE * pcm_data->bus_width, - .flags = (MTD_CAP_NVRAM | MTD_POWERUP_LOCK), - ._read = lpddr2_nvm_read, - ._write = lpddr2_nvm_write, - ._erase = lpddr2_nvm_erase, - ._unlock = lpddr2_nvm_unlock, - ._lock = lpddr2_nvm_lock, - }; + *mtd = lpddr2_nvm_mtd_info; + mtd->dev.parent = &pdev->dev; + mtd->name = pdev->dev.init_name; + mtd->priv = map; + mtd->size = resource_size(add_range); + mtd->erasesize = ERASE_BLOCKSIZE * pcm_data->bus_width; + mtd->writebufsize = WRITE_BUFFSIZE * pcm_data->bus_width; /* Verify the presence of the device looking for PFOW string */ if (!lpddr2_nvm_pfow_present(map)) { --- linux-azure-5.8-5.8.0.orig/drivers/mtd/mtdchar.c +++ linux-azure-5.8-5.8.0/drivers/mtd/mtdchar.c @@ -355,9 +355,6 @@ uint32_t retlen; int ret = 0; - if (!(file->f_mode & FMODE_WRITE)) - return -EPERM; - if (length > 4096) return -EINVAL; @@ -643,6 +640,48 @@ pr_debug("MTD_ioctl\n"); + /* + * Check the file mode to require "dangerous" commands to have write + * permissions. + */ + switch (cmd) { + /* "safe" commands */ + case MEMGETREGIONCOUNT: + case MEMGETREGIONINFO: + case MEMGETINFO: + case MEMREADOOB: + case MEMREADOOB64: + case MEMLOCK: + case MEMUNLOCK: + case MEMISLOCKED: + case MEMGETOOBSEL: + case MEMGETBADBLOCK: + case MEMSETBADBLOCK: + case OTPSELECT: + case OTPGETREGIONCOUNT: + case OTPGETREGIONINFO: + case OTPLOCK: + case ECCGETLAYOUT: + case ECCGETSTATS: + case MTDFILEMODE: + case BLKPG: + case BLKRRPART: + break; + + /* "dangerous" commands */ + case MEMERASE: + case MEMERASE64: + case MEMWRITEOOB: + case MEMWRITEOOB64: + case MEMWRITE: + if (!(file->f_mode & FMODE_WRITE)) + return -EPERM; + break; + + default: + return -ENOTTY; + } + switch (cmd) { case MEMGETREGIONCOUNT: if (copy_to_user(argp, &(mtd->numeraseregions), sizeof(int))) @@ -690,9 +729,6 @@ { struct erase_info *erase; - if(!(file->f_mode & FMODE_WRITE)) - return -EPERM; - erase=kzalloc(sizeof(struct erase_info),GFP_KERNEL); if (!erase) ret = -ENOMEM; @@ -985,9 +1021,6 @@ ret = 0; break; } - - default: - ret = -ENOTTY; } return ret; @@ -1031,6 +1064,11 @@ struct mtd_oob_buf32 buf; struct mtd_oob_buf32 __user *buf_user = argp; + if (!(file->f_mode & FMODE_WRITE)) { + ret = -EPERM; + break; + } + if (copy_from_user(&buf, argp, sizeof(buf))) ret = -EFAULT; else --- linux-azure-5.8-5.8.0.orig/drivers/mtd/mtdcore.c +++ linux-azure-5.8-5.8.0/drivers/mtd/mtdcore.c @@ -1013,6 +1013,8 @@ } } + master->usecount++; + while (mtd->parent) { mtd->usecount++; mtd = mtd->parent; @@ -1079,6 +1081,8 @@ mtd = mtd->parent; } + master->usecount--; + if (master->_put_device) master->_put_device(master); --- linux-azure-5.8-5.8.0.orig/drivers/mtd/mtdoops.c +++ linux-azure-5.8-5.8.0/drivers/mtd/mtdoops.c @@ -279,12 +279,13 @@ kmsg_dump_get_buffer(dumper, true, cxt->oops_buf + MTDOOPS_HEADER_SIZE, record_size - MTDOOPS_HEADER_SIZE, NULL); - /* Panics must be written immediately */ - if (reason != KMSG_DUMP_OOPS) + if (reason != KMSG_DUMP_OOPS) { + /* Panics must be written immediately */ mtdoops_write(cxt, 1); - - /* For other cases, schedule work to write it "nicely" */ - schedule_work(&cxt->work_write); + } else { + /* For other cases, schedule work to write it "nicely" */ + schedule_work(&cxt->work_write); + } } static void mtdoops_notify_add(struct mtd_info *mtd) --- linux-azure-5.8-5.8.0.orig/drivers/mtd/nand/raw/ams-delta.c +++ linux-azure-5.8-5.8.0/drivers/mtd/nand/raw/ams-delta.c @@ -400,12 +400,14 @@ return 0; } +#ifdef CONFIG_OF static const struct of_device_id gpio_nand_of_id_table[] = { { /* sentinel */ }, }; MODULE_DEVICE_TABLE(of, gpio_nand_of_id_table); +#endif static const struct platform_device_id gpio_nand_plat_id_table[] = { { --- linux-azure-5.8-5.8.0.orig/drivers/mtd/nand/raw/brcmnand/brcmnand.c +++ linux-azure-5.8-5.8.0/drivers/mtd/nand/raw/brcmnand/brcmnand.c @@ -1918,6 +1918,22 @@ edu_writel(ctrl, EDU_STOP, 0); /* force stop */ edu_readl(ctrl, EDU_STOP); + if (!ret && edu_cmd == EDU_CMD_READ) { + u64 err_addr = 0; + + /* + * check for ECC errors here, subpage ECC errors are + * retained in ECC error address register + */ + err_addr = brcmnand_get_uncorrecc_addr(ctrl); + if (!err_addr) { + err_addr = brcmnand_get_correcc_addr(ctrl); + if (err_addr) + ret = -EUCLEAN; + } else + ret = -EBADMSG; + } + return ret; } @@ -2124,6 +2140,7 @@ u64 err_addr = 0; int err; bool retry = true; + bool edu_err = false; dev_dbg(ctrl->dev, "read %llx -> %p\n", (unsigned long long)addr, buf); @@ -2141,6 +2158,10 @@ else return -EIO; } + + if (has_edu(ctrl) && err_addr) + edu_err = true; + } else { if (oob) memset(oob, 0x99, mtd->oobsize); @@ -2188,6 +2209,11 @@ if (mtd_is_bitflip(err)) { unsigned int corrected = brcmnand_count_corrected(ctrl); + /* in case of EDU correctable error we read again using PIO */ + if (edu_err) + err = brcmnand_read_by_pio(mtd, chip, addr, trans, buf, + oob, &err_addr); + dev_dbg(ctrl->dev, "corrected error at 0x%llx\n", (unsigned long long)err_addr); mtd->ecc_stats.corrected += corrected; @@ -3023,8 +3049,9 @@ if (ret < 0) goto err; - /* set edu transfer function to call */ - ctrl->dma_trans = brcmnand_edu_trans; + if (has_edu(ctrl)) + /* set edu transfer function to call */ + ctrl->dma_trans = brcmnand_edu_trans; } /* Disable automatic device ID config, direct addressing */ --- linux-azure-5.8-5.8.0.orig/drivers/mtd/nand/raw/fsl_upm.c +++ linux-azure-5.8-5.8.0/drivers/mtd/nand/raw/fsl_upm.c @@ -62,7 +62,6 @@ static void fun_wait_rnb(struct fsl_upm_nand *fun) { if (fun->rnb_gpio[fun->mchip_number] >= 0) { - struct mtd_info *mtd = nand_to_mtd(&fun->chip); int cnt = 1000000; while (--cnt && !fun_chip_ready(&fun->chip)) --- linux-azure-5.8-5.8.0.orig/drivers/mtd/nand/raw/gpmi-nand/gpmi-nand.c +++ linux-azure-5.8-5.8.0/drivers/mtd/nand/raw/gpmi-nand/gpmi-nand.c @@ -149,8 +149,10 @@ int ret; ret = pm_runtime_get_sync(this->dev); - if (ret < 0) + if (ret < 0) { + pm_runtime_put_noidle(this->dev); return ret; + } ret = gpmi_reset_block(r->gpmi_regs, false); if (ret) @@ -1612,7 +1614,7 @@ /* Extract interleaved payload data and ECC bits */ for (step = 0; step < nfc_geo->ecc_chunk_count; step++) { if (buf) - nand_extract_bits(buf, step * eccsize, tmp_buf, + nand_extract_bits(buf, step * eccsize * 8, tmp_buf, src_bit_off, eccsize * 8); src_bit_off += eccsize * 8; @@ -2253,7 +2255,7 @@ void *buf_read = NULL; const void *buf_write = NULL; bool direct = false; - struct completion *completion; + struct completion *dma_completion, *bch_completion; unsigned long to; if (check_only) @@ -2264,8 +2266,10 @@ this->transfers[i].direction = DMA_NONE; ret = pm_runtime_get_sync(this->dev); - if (ret < 0) + if (ret < 0) { + pm_runtime_put_noidle(this->dev); return ret; + } /* * This driver currently supports only one NAND chip. Plus, dies share @@ -2348,22 +2352,24 @@ this->resources.bch_regs + HW_BCH_FLASH0LAYOUT1); } + desc->callback = dma_irq_callback; + desc->callback_param = this; + dma_completion = &this->dma_done; + bch_completion = NULL; + + init_completion(dma_completion); + if (this->bch && buf_read) { writel(BM_BCH_CTRL_COMPLETE_IRQ_EN, this->resources.bch_regs + HW_BCH_CTRL_SET); - completion = &this->bch_done; - } else { - desc->callback = dma_irq_callback; - desc->callback_param = this; - completion = &this->dma_done; + bch_completion = &this->bch_done; + init_completion(bch_completion); } - init_completion(completion); - dmaengine_submit(desc); dma_async_issue_pending(get_dma_chan(this)); - to = wait_for_completion_timeout(completion, msecs_to_jiffies(1000)); + to = wait_for_completion_timeout(dma_completion, msecs_to_jiffies(1000)); if (!to) { dev_err(this->dev, "DMA timeout, last DMA\n"); gpmi_dump_info(this); @@ -2371,6 +2377,16 @@ goto unmap; } + if (this->bch && buf_read) { + to = wait_for_completion_timeout(bch_completion, msecs_to_jiffies(1000)); + if (!to) { + dev_err(this->dev, "BCH timeout, last DMA\n"); + gpmi_dump_info(this); + ret = -ETIMEDOUT; + goto unmap; + } + } + writel(BM_BCH_CTRL_COMPLETE_IRQ_EN, this->resources.bch_regs + HW_BCH_CTRL_CLR); gpmi_clear_bch(this); --- linux-azure-5.8-5.8.0.orig/drivers/mtd/nand/raw/meson_nand.c +++ linux-azure-5.8-5.8.0/drivers/mtd/nand/raw/meson_nand.c @@ -510,7 +510,7 @@ } static void meson_nfc_dma_buffer_release(struct nand_chip *nand, - int infolen, int datalen, + int datalen, int infolen, enum dma_data_direction dir) { struct meson_nfc *nfc = nand_get_controller_data(nand); @@ -1044,9 +1044,12 @@ ret = clk_set_rate(nfc->device_clk, 24000000); if (ret) - goto err_phase_rx; + goto err_disable_rx; return 0; + +err_disable_rx: + clk_disable_unprepare(nfc->phase_rx); err_phase_rx: clk_disable_unprepare(nfc->phase_tx); err_phase_tx: --- linux-azure-5.8-5.8.0.orig/drivers/mtd/nand/raw/qcom_nandc.c +++ linux-azure-5.8-5.8.0/drivers/mtd/nand/raw/qcom_nandc.c @@ -459,11 +459,13 @@ * among different NAND controllers. * @ecc_modes - ecc mode for NAND * @is_bam - whether NAND controller is using BAM + * @is_qpic - whether NAND CTRL is part of qpic IP * @dev_cmd_reg_start - NAND_DEV_CMD_* registers starting offset */ struct qcom_nandc_props { u32 ecc_modes; bool is_bam; + bool is_qpic; u32 dev_cmd_reg_start; }; @@ -1568,6 +1570,8 @@ struct qcom_nand_controller *nandc = get_qcom_nand_controller(chip); int i; + nandc_read_buffer_sync(nandc, true); + for (i = 0; i < cw_cnt; i++) { u32 flash = le32_to_cpu(nandc->reg_read_buf[i]); @@ -2774,7 +2778,8 @@ u32 nand_ctrl; /* kill onenand */ - nandc_write(nandc, SFLASHC_BURST_CFG, 0); + if (!nandc->props->is_qpic) + nandc_write(nandc, SFLASHC_BURST_CFG, 0); nandc_write(nandc, dev_cmd_reg_addr(nandc, NAND_DEV_CMD_VLD), NAND_DEV_CMD_VLD_VAL); @@ -3035,12 +3040,14 @@ static const struct qcom_nandc_props ipq4019_nandc_props = { .ecc_modes = (ECC_BCH_4BIT | ECC_BCH_8BIT), .is_bam = true, + .is_qpic = true, .dev_cmd_reg_start = 0x0, }; static const struct qcom_nandc_props ipq8074_nandc_props = { .ecc_modes = (ECC_BCH_4BIT | ECC_BCH_8BIT), .is_bam = true, + .is_qpic = true, .dev_cmd_reg_start = 0x7000, }; --- linux-azure-5.8-5.8.0.orig/drivers/mtd/nand/raw/stm32_fmc2_nand.c +++ linux-azure-5.8-5.8.0/drivers/mtd/nand/raw/stm32_fmc2_nand.c @@ -1791,7 +1791,7 @@ return ret; } - if (cs > FMC2_MAX_CE) { + if (cs >= FMC2_MAX_CE) { dev_err(nfc->dev, "invalid reg value: %d\n", cs); return -EINVAL; } --- linux-azure-5.8-5.8.0.orig/drivers/mtd/nand/raw/vf610_nfc.c +++ linux-azure-5.8-5.8.0/drivers/mtd/nand/raw/vf610_nfc.c @@ -852,8 +852,10 @@ } of_id = of_match_device(vf610_nfc_dt_ids, &pdev->dev); - if (!of_id) - return -ENODEV; + if (!of_id) { + err = -ENODEV; + goto err_disable_clk; + } nfc->variant = (enum vf610_nfc_variant)of_id->data; --- linux-azure-5.8-5.8.0.orig/drivers/mtd/nand/spi/gigadevice.c +++ linux-azure-5.8-5.8.0/drivers/mtd/nand/spi/gigadevice.c @@ -21,7 +21,7 @@ #define GD5FXGQ4UXFXXG_STATUS_ECC_UNCOR_ERROR (7 << 4) static SPINAND_OP_VARIANTS(read_cache_variants, - SPINAND_PAGE_READ_FROM_CACHE_QUADIO_OP(0, 2, NULL, 0), + SPINAND_PAGE_READ_FROM_CACHE_QUADIO_OP(0, 1, NULL, 0), SPINAND_PAGE_READ_FROM_CACHE_X4_OP(0, 1, NULL, 0), SPINAND_PAGE_READ_FROM_CACHE_DUALIO_OP(0, 1, NULL, 0), SPINAND_PAGE_READ_FROM_CACHE_X2_OP(0, 1, NULL, 0), @@ -29,7 +29,7 @@ SPINAND_PAGE_READ_FROM_CACHE_OP(false, 0, 1, NULL, 0)); static SPINAND_OP_VARIANTS(read_cache_variants_f, - SPINAND_PAGE_READ_FROM_CACHE_QUADIO_OP(0, 2, NULL, 0), + SPINAND_PAGE_READ_FROM_CACHE_QUADIO_OP(0, 1, NULL, 0), SPINAND_PAGE_READ_FROM_CACHE_X4_OP_3A(0, 1, NULL, 0), SPINAND_PAGE_READ_FROM_CACHE_DUALIO_OP(0, 1, NULL, 0), SPINAND_PAGE_READ_FROM_CACHE_X2_OP_3A(0, 1, NULL, 0), @@ -202,7 +202,7 @@ SPINAND_INFO_OP_VARIANTS(&read_cache_variants, &write_cache_variants, &update_cache_variants), - 0, + SPINAND_HAS_QE_BIT, SPINAND_ECCINFO(&gd5fxgq4xa_ooblayout, gd5fxgq4xa_ecc_get_status)), SPINAND_INFO("GD5F2GQ4xA", @@ -212,7 +212,7 @@ SPINAND_INFO_OP_VARIANTS(&read_cache_variants, &write_cache_variants, &update_cache_variants), - 0, + SPINAND_HAS_QE_BIT, SPINAND_ECCINFO(&gd5fxgq4xa_ooblayout, gd5fxgq4xa_ecc_get_status)), SPINAND_INFO("GD5F4GQ4xA", @@ -222,7 +222,7 @@ SPINAND_INFO_OP_VARIANTS(&read_cache_variants, &write_cache_variants, &update_cache_variants), - 0, + SPINAND_HAS_QE_BIT, SPINAND_ECCINFO(&gd5fxgq4xa_ooblayout, gd5fxgq4xa_ecc_get_status)), SPINAND_INFO("GD5F1GQ4UExxG", @@ -232,7 +232,7 @@ SPINAND_INFO_OP_VARIANTS(&read_cache_variants, &write_cache_variants, &update_cache_variants), - 0, + SPINAND_HAS_QE_BIT, SPINAND_ECCINFO(&gd5fxgq4_variant2_ooblayout, gd5fxgq4uexxg_ecc_get_status)), SPINAND_INFO("GD5F1GQ4UFxxG", @@ -242,7 +242,7 @@ SPINAND_INFO_OP_VARIANTS(&read_cache_variants_f, &write_cache_variants, &update_cache_variants), - 0, + SPINAND_HAS_QE_BIT, SPINAND_ECCINFO(&gd5fxgq4_variant2_ooblayout, gd5fxgq4ufxxg_ecc_get_status)), }; --- linux-azure-5.8-5.8.0.orig/drivers/mtd/parsers/afs.c +++ linux-azure-5.8-5.8.0/drivers/mtd/parsers/afs.c @@ -370,10 +370,8 @@ return i; out_free_parts: - while (i >= 0) { + while (--i >= 0) kfree(parts[i].name); - i--; - } kfree(parts); *pparts = NULL; return ret; --- linux-azure-5.8-5.8.0.orig/drivers/mtd/parsers/cmdlinepart.c +++ linux-azure-5.8-5.8.0/drivers/mtd/parsers/cmdlinepart.c @@ -226,7 +226,7 @@ struct cmdline_mtd_partition *this_mtd; struct mtd_partition *parts; int mtd_id_len, num_parts; - char *p, *mtd_id, *semicol; + char *p, *mtd_id, *semicol, *open_parenth; /* * Replace the first ';' by a NULL char so strrchr can work @@ -236,6 +236,14 @@ if (semicol) *semicol = '\0'; + /* + * make sure that part-names with ":" will not be handled as + * part of the mtd-id with an ":" + */ + open_parenth = strchr(s, '('); + if (open_parenth) + *open_parenth = '\0'; + mtd_id = s; /* @@ -245,6 +253,10 @@ */ p = strrchr(s, ':'); + /* Restore the '(' now. */ + if (open_parenth) + *open_parenth = '('; + /* Restore the ';' now. */ if (semicol) *semicol = ';'; --- linux-azure-5.8-5.8.0.orig/drivers/mtd/parsers/parser_imagetag.c +++ linux-azure-5.8-5.8.0/drivers/mtd/parsers/parser_imagetag.c @@ -83,6 +83,7 @@ pr_err("invalid rootfs address: %*ph\n", (int)sizeof(buf->flash_image_start), buf->flash_image_start); + ret = -EINVAL; goto out; } @@ -92,6 +93,7 @@ pr_err("invalid kernel address: %*ph\n", (int)sizeof(buf->kernel_address), buf->kernel_address); + ret = -EINVAL; goto out; } @@ -100,6 +102,7 @@ pr_err("invalid kernel length: %*ph\n", (int)sizeof(buf->kernel_length), buf->kernel_length); + ret = -EINVAL; goto out; } @@ -108,6 +111,7 @@ pr_err("invalid total length: %*ph\n", (int)sizeof(buf->total_length), buf->total_length); + ret = -EINVAL; goto out; } --- linux-azure-5.8-5.8.0.orig/drivers/mtd/spi-nor/atmel.c +++ linux-azure-5.8-5.8.0/drivers/mtd/spi-nor/atmel.c @@ -8,39 +8,78 @@ #include "core.h" -static const struct flash_info atmel_parts[] = { - /* Atmel -- some are (confusingly) marketed as "DataFlash" */ - { "at25fs010", INFO(0x1f6601, 0, 32 * 1024, 4, SECT_4K) }, - { "at25fs040", INFO(0x1f6604, 0, 64 * 1024, 8, SECT_4K) }, +/* + * The Atmel AT25FS010/AT25FS040 parts have some weird configuration for the + * block protection bits. We don't support them. But legacy behavior in linux + * is to unlock the whole flash array on startup. Therefore, we have to support + * exactly this operation. + */ +static int atmel_at25fs_lock(struct spi_nor *nor, loff_t ofs, uint64_t len) +{ + return -EOPNOTSUPP; +} - { "at25df041a", INFO(0x1f4401, 0, 64 * 1024, 8, SECT_4K) }, - { "at25df321", INFO(0x1f4700, 0, 64 * 1024, 64, SECT_4K) }, - { "at25df321a", INFO(0x1f4701, 0, 64 * 1024, 64, SECT_4K) }, - { "at25df641", INFO(0x1f4800, 0, 64 * 1024, 128, SECT_4K) }, +static int atmel_at25fs_unlock(struct spi_nor *nor, loff_t ofs, uint64_t len) +{ + int ret; - { "at25sl321", INFO(0x1f4216, 0, 64 * 1024, 64, - SECT_4K | SPI_NOR_DUAL_READ | SPI_NOR_QUAD_READ) }, + /* We only support unlocking the whole flash array */ + if (ofs || len != nor->params->size) + return -EINVAL; + + /* Write 0x00 to the status register to disable write protection */ + ret = spi_nor_write_sr_and_check(nor, 0); + if (ret) + dev_dbg(nor->dev, "unable to clear BP bits, WP# asserted?\n"); - { "at26f004", INFO(0x1f0400, 0, 64 * 1024, 8, SECT_4K) }, - { "at26df081a", INFO(0x1f4501, 0, 64 * 1024, 16, SECT_4K) }, - { "at26df161a", INFO(0x1f4601, 0, 64 * 1024, 32, SECT_4K) }, - { "at26df321", INFO(0x1f4700, 0, 64 * 1024, 64, SECT_4K) }, + return ret; +} - { "at45db081d", INFO(0x1f2500, 0, 64 * 1024, 16, SECT_4K) }, +static int atmel_at25fs_is_locked(struct spi_nor *nor, loff_t ofs, uint64_t len) +{ + return -EOPNOTSUPP; +} + +static const struct spi_nor_locking_ops atmel_at25fs_locking_ops = { + .lock = atmel_at25fs_lock, + .unlock = atmel_at25fs_unlock, + .is_locked = atmel_at25fs_is_locked, }; -static void atmel_default_init(struct spi_nor *nor) +static void atmel_at25fs_default_init(struct spi_nor *nor) { - nor->flags |= SNOR_F_HAS_LOCK; + nor->params->locking_ops = &atmel_at25fs_locking_ops; } -static const struct spi_nor_fixups atmel_fixups = { - .default_init = atmel_default_init, +static const struct spi_nor_fixups atmel_at25fs_fixups = { + .default_init = atmel_at25fs_default_init, +}; + +static const struct flash_info atmel_parts[] = { + /* Atmel -- some are (confusingly) marketed as "DataFlash" */ + { "at25fs010", INFO(0x1f6601, 0, 32 * 1024, 4, SECT_4K | SPI_NOR_HAS_LOCK) + .fixups = &atmel_at25fs_fixups }, + { "at25fs040", INFO(0x1f6604, 0, 64 * 1024, 8, SECT_4K | SPI_NOR_HAS_LOCK) + .fixups = &atmel_at25fs_fixups }, + + { "at25df041a", INFO(0x1f4401, 0, 64 * 1024, 8, SECT_4K | SPI_NOR_HAS_LOCK) }, + { "at25df321", INFO(0x1f4700, 0, 64 * 1024, 64, SECT_4K | SPI_NOR_HAS_LOCK) }, + { "at25df321a", INFO(0x1f4701, 0, 64 * 1024, 64, SECT_4K | SPI_NOR_HAS_LOCK) }, + { "at25df641", INFO(0x1f4800, 0, 64 * 1024, 128, SECT_4K | SPI_NOR_HAS_LOCK) }, + + { "at25sl321", INFO(0x1f4216, 0, 64 * 1024, 64, + SECT_4K | SPI_NOR_DUAL_READ | SPI_NOR_QUAD_READ) }, + + { "at26f004", INFO(0x1f0400, 0, 64 * 1024, 8, SECT_4K) }, + { "at26df081a", INFO(0x1f4501, 0, 64 * 1024, 16, SECT_4K | SPI_NOR_HAS_LOCK) }, + { "at26df161a", INFO(0x1f4601, 0, 64 * 1024, 32, SECT_4K | SPI_NOR_HAS_LOCK) }, + { "at26df321", INFO(0x1f4700, 0, 64 * 1024, 64, SECT_4K | SPI_NOR_HAS_LOCK) }, + + { "at45db081d", INFO(0x1f2500, 0, 64 * 1024, 16, SECT_4K) }, }; const struct spi_nor_manufacturer spi_nor_atmel = { .name = "atmel", .parts = atmel_parts, .nparts = ARRAY_SIZE(atmel_parts), - .fixups = &atmel_fixups, }; --- linux-azure-5.8-5.8.0.orig/drivers/mtd/spi-nor/controllers/cadence-quadspi.c +++ linux-azure-5.8-5.8.0/drivers/mtd/spi-nor/controllers/cadence-quadspi.c @@ -475,7 +475,7 @@ /* Setup dummy clock cycles */ dummy_clk = nor->read_dummy; if (dummy_clk > CQSPI_DUMMY_CLKS_MAX) - dummy_clk = CQSPI_DUMMY_CLKS_MAX; + return -EOPNOTSUPP; if (dummy_clk / 8) { reg |= (1 << CQSPI_REG_RD_INSTR_MODE_EN_LSB); --- linux-azure-5.8-5.8.0.orig/drivers/mtd/spi-nor/controllers/hisi-sfc.c +++ linux-azure-5.8-5.8.0/drivers/mtd/spi-nor/controllers/hisi-sfc.c @@ -399,8 +399,10 @@ for_each_available_child_of_node(dev->of_node, np) { ret = hisi_spi_nor_register(np, host); - if (ret) + if (ret) { + of_node_put(np); goto fail; + } if (host->num_chip == HIFMC_MAX_CHIP_NUM) { dev_warn(dev, "Flash device number exceeds the maximum chipselect number\n"); --- linux-azure-5.8-5.8.0.orig/drivers/mtd/spi-nor/controllers/intel-spi-pci.c +++ linux-azure-5.8-5.8.0/drivers/mtd/spi-nor/controllers/intel-spi-pci.c @@ -69,6 +69,7 @@ { PCI_VDEVICE(INTEL, 0x18e0), (unsigned long)&bxt_info }, { PCI_VDEVICE(INTEL, 0x19e0), (unsigned long)&bxt_info }, { PCI_VDEVICE(INTEL, 0x34a4), (unsigned long)&bxt_info }, + { PCI_VDEVICE(INTEL, 0x43a4), (unsigned long)&cnl_info }, { PCI_VDEVICE(INTEL, 0x4b24), (unsigned long)&bxt_info }, { PCI_VDEVICE(INTEL, 0x4da4), (unsigned long)&bxt_info }, { PCI_VDEVICE(INTEL, 0xa0a4), (unsigned long)&bxt_info }, --- linux-azure-5.8-5.8.0.orig/drivers/mtd/spi-nor/controllers/intel-spi.c +++ linux-azure-5.8-5.8.0/drivers/mtd/spi-nor/controllers/intel-spi.c @@ -612,6 +612,15 @@ return 0; } + /* + * We hope that HW sequencer will do the right thing automatically and + * with the SW sequencer we cannot use preopcode anyway, so just ignore + * the Write Disable operation and pretend it was completed + * successfully. + */ + if (opcode == SPINOR_OP_WRDI) + return 0; + writel(0, ispi->base + FADDR); /* Write the value beforehand */ --- linux-azure-5.8-5.8.0.orig/drivers/mtd/spi-nor/core.c +++ linux-azure-5.8-5.8.0/drivers/mtd/spi-nor/core.c @@ -906,7 +906,7 @@ * * Return: 0 on success, -errno otherwise. */ -static int spi_nor_write_sr_and_check(struct spi_nor *nor, u8 sr1) +int spi_nor_write_sr_and_check(struct spi_nor *nor, u8 sr1) { if (nor->flags & SNOR_F_HAS_16BIT_SR) return spi_nor_write_16bit_sr_and_check(nor, sr1); @@ -1212,14 +1212,15 @@ erase = &map->erase_type[i]; + /* Alignment is not mandatory for overlaid regions */ + if (region->offset & SNOR_OVERLAID_REGION && + region->size <= len) + return erase; + /* Don't erase more than what the user has asked for. */ if (erase->size > len) continue; - /* Alignment is not mandatory for overlaid regions */ - if (region->offset & SNOR_OVERLAID_REGION) - return erase; - spi_nor_div_by_erase_size(erase, addr, &rem); if (rem) continue; @@ -1363,6 +1364,7 @@ goto destroy_erase_cmd_list; if (prev_erase != erase || + erase->size != cmd->size || region->offset & SNOR_OVERLAID_REGION) { cmd = spi_nor_init_erase_cmd(region, erase); if (IS_ERR(cmd)) { @@ -2701,11 +2703,10 @@ memcpy(&sfdp_params, nor->params, sizeof(sfdp_params)); - if (spi_nor_parse_sfdp(nor, &sfdp_params)) { + if (spi_nor_parse_sfdp(nor, nor->params)) { + memcpy(nor->params, &sfdp_params, sizeof(*nor->params)); nor->addr_width = 0; nor->flags &= ~SNOR_F_4B_OPCODES; - } else { - memcpy(nor->params, &sfdp_params, sizeof(*nor->params)); } } @@ -2916,20 +2917,27 @@ } /** - * spi_nor_unlock_all() - Unlocks the entire flash memory array. + * spi_nor_try_unlock_all() - Tries to unlock the entire flash memory array. * @nor: pointer to a 'struct spi_nor'. * * Some SPI NOR flashes are write protected by default after a power-on reset * cycle, in order to avoid inadvertent writes during power-up. Backward * compatibility imposes to unlock the entire flash memory array at power-up * by default. + * + * Unprotecting the entire flash array will fail for boards which are hardware + * write-protected. Thus any errors are ignored. */ -static int spi_nor_unlock_all(struct spi_nor *nor) +static void spi_nor_try_unlock_all(struct spi_nor *nor) { - if (nor->flags & SNOR_F_HAS_LOCK) - return spi_nor_unlock(&nor->mtd, 0, nor->params->size); + int ret; - return 0; + if (!(nor->flags & SNOR_F_HAS_LOCK)) + return; + + ret = spi_nor_unlock(&nor->mtd, 0, nor->params->size); + if (ret) + dev_dbg(nor->dev, "Failed to unlock the entire flash memory array\n"); } static int spi_nor_init(struct spi_nor *nor) @@ -2942,11 +2950,7 @@ return err; } - err = spi_nor_unlock_all(nor); - if (err) { - dev_dbg(nor->dev, "Failed to unlock the entire flash memory array\n"); - return err; - } + spi_nor_try_unlock_all(nor); if (nor->addr_width == 4 && !(nor->flags & SNOR_F_4B_OPCODES)) { /* @@ -3009,13 +3013,15 @@ /* already configured from SFDP */ } else if (nor->info->addr_width) { nor->addr_width = nor->info->addr_width; - } else if (nor->mtd.size > 0x1000000) { - /* enable 4-byte addressing if the device exceeds 16MiB */ - nor->addr_width = 4; } else { nor->addr_width = 3; } + if (nor->addr_width == 3 && nor->mtd.size > 0x1000000) { + /* enable 4-byte addressing if the device exceeds 16MiB */ + nor->addr_width = 4; + } + if (nor->addr_width > SPI_NOR_MAX_ADDR_WIDTH) { dev_dbg(nor->dev, "address width is too large: %u\n", nor->addr_width); --- linux-azure-5.8-5.8.0.orig/drivers/mtd/spi-nor/core.h +++ linux-azure-5.8-5.8.0/drivers/mtd/spi-nor/core.h @@ -409,6 +409,7 @@ int spi_nor_sr1_bit6_quad_enable(struct spi_nor *nor); int spi_nor_sr2_bit1_quad_enable(struct spi_nor *nor); int spi_nor_sr2_bit7_quad_enable(struct spi_nor *nor); +int spi_nor_write_sr_and_check(struct spi_nor *nor, u8 sr1); int spi_nor_xread_sr(struct spi_nor *nor, u8 *sr); ssize_t spi_nor_read_data(struct spi_nor *nor, loff_t from, size_t len, --- linux-azure-5.8-5.8.0.orig/drivers/mtd/spi-nor/sfdp.c +++ linux-azure-5.8-5.8.0/drivers/mtd/spi-nor/sfdp.c @@ -759,7 +759,7 @@ int i; for (i = 0; i < SNOR_ERASE_TYPE_MAX; i++) { - if (!(erase_type & BIT(i))) + if (!(erase[i].size && erase_type & BIT(erase[i].idx))) continue; if (region->size & erase[i].size_mask) { spi_nor_region_mark_overlay(region); @@ -829,6 +829,7 @@ offset = (region[i].offset & ~SNOR_ERASE_FLAGS_MASK) + region[i].size; } + spi_nor_region_mark_end(®ion[i - 1]); save_uniform_erase_type = map->uniform_erase_type; map->uniform_erase_type = spi_nor_sort_erase_mask(map, @@ -852,8 +853,6 @@ if (!(regions_erase_type & BIT(erase[i].idx))) spi_nor_set_erase_type(&erase[i], 0, 0xFF); - spi_nor_region_mark_end(®ion[i - 1]); - return 0; } --- linux-azure-5.8-5.8.0.orig/drivers/mtd/spi-nor/sst.c +++ linux-azure-5.8-5.8.0/drivers/mtd/spi-nor/sst.c @@ -18,7 +18,8 @@ SECT_4K | SST_WRITE) }, { "sst25vf032b", INFO(0xbf254a, 0, 64 * 1024, 64, SECT_4K | SST_WRITE) }, - { "sst25vf064c", INFO(0xbf254b, 0, 64 * 1024, 128, SECT_4K) }, + { "sst25vf064c", INFO(0xbf254b, 0, 64 * 1024, 128, + SECT_4K | SPI_NOR_4BIT_BP) }, { "sst25wf512", INFO(0xbf2501, 0, 64 * 1024, 1, SECT_4K | SST_WRITE) }, { "sst25wf010", INFO(0xbf2502, 0, 64 * 1024, 2, --- linux-azure-5.8-5.8.0.orig/drivers/mtd/ubi/fastmap-wl.c +++ linux-azure-5.8-5.8.0/drivers/mtd/ubi/fastmap-wl.c @@ -381,6 +381,11 @@ ubi->fm_anchor = NULL; } + if (ubi->fm_next_anchor) { + return_unused_peb(ubi, ubi->fm_next_anchor); + ubi->fm_next_anchor = NULL; + } + if (ubi->fm) { for (i = 0; i < ubi->fm->used_blocks; i++) kfree(ubi->fm->e[i]); --- linux-azure-5.8-5.8.0.orig/drivers/mtd/ubi/wl.c +++ linux-azure-5.8-5.8.0/drivers/mtd/ubi/wl.c @@ -1086,7 +1086,8 @@ if (!err) { spin_lock(&ubi->wl_lock); - if (!ubi->fm_next_anchor && e->pnum < UBI_FM_MAX_START) { + if (!ubi->fm_disabled && !ubi->fm_next_anchor && + e->pnum < UBI_FM_MAX_START) { /* Abort anchor production, if needed it will be * enabled again in the wear leveling started below. */ @@ -1638,6 +1639,19 @@ !ubi->thread_enabled || ubi_dbg_is_bgt_disabled(ubi)) { set_current_state(TASK_INTERRUPTIBLE); spin_unlock(&ubi->wl_lock); + + /* + * Check kthread_should_stop() after we set the task + * state to guarantee that we either see the stop bit + * and exit or the task state is reset to runnable such + * that it's not scheduled out indefinitely and detects + * the stop bit at kthread_should_stop(). + */ + if (kthread_should_stop()) { + set_current_state(TASK_RUNNING); + break; + } + schedule(); continue; } --- linux-azure-5.8-5.8.0.orig/drivers/net/Kconfig +++ linux-azure-5.8-5.8.0/drivers/net/Kconfig @@ -87,7 +87,7 @@ select CRYPTO_CURVE25519_X86 if X86 && 64BIT select ARM_CRYPTO if ARM select ARM64_CRYPTO if ARM64 - select CRYPTO_CHACHA20_NEON if (ARM || ARM64) && KERNEL_MODE_NEON + select CRYPTO_CHACHA20_NEON if ARM || (ARM64 && KERNEL_MODE_NEON) select CRYPTO_POLY1305_NEON if ARM64 && KERNEL_MODE_NEON select CRYPTO_POLY1305_ARM if ARM select CRYPTO_CURVE25519_NEON if ARM && KERNEL_MODE_NEON --- linux-azure-5.8-5.8.0.orig/drivers/net/bareudp.c +++ linux-azure-5.8-5.8.0/drivers/net/bareudp.c @@ -385,7 +385,7 @@ goto free_dst; min_headroom = LL_RESERVED_SPACE(dst->dev) + dst->header_len + - BAREUDP_BASE_HLEN + info->options_len + sizeof(struct iphdr); + BAREUDP_BASE_HLEN + info->options_len + sizeof(struct ipv6hdr); err = skb_cow_head(skb, min_headroom); if (unlikely(err)) @@ -539,6 +539,7 @@ SET_NETDEV_DEVTYPE(dev, &bareudp_type); dev->features |= NETIF_F_SG | NETIF_F_HW_CSUM; dev->features |= NETIF_F_RXCSUM; + dev->features |= NETIF_F_LLTX; dev->features |= NETIF_F_GSO_SOFTWARE; dev->hw_features |= NETIF_F_SG | NETIF_F_HW_CSUM | NETIF_F_RXCSUM; dev->hw_features |= NETIF_F_GSO_SOFTWARE; @@ -648,11 +649,20 @@ return 0; } +static void bareudp_dellink(struct net_device *dev, struct list_head *head) +{ + struct bareudp_dev *bareudp = netdev_priv(dev); + + list_del(&bareudp->next); + unregister_netdevice_queue(dev, head); +} + static int bareudp_newlink(struct net *net, struct net_device *dev, struct nlattr *tb[], struct nlattr *data[], struct netlink_ext_ack *extack) { struct bareudp_conf conf; + LIST_HEAD(list_kill); int err; err = bareudp2info(data, &conf, extack); @@ -665,17 +675,14 @@ err = bareudp_link_config(dev, tb); if (err) - return err; + goto err_unconfig; return 0; -} - -static void bareudp_dellink(struct net_device *dev, struct list_head *head) -{ - struct bareudp_dev *bareudp = netdev_priv(dev); - list_del(&bareudp->next); - unregister_netdevice_queue(dev, head); +err_unconfig: + bareudp_dellink(dev, &list_kill); + unregister_netdevice_many(&list_kill); + return err; } static size_t bareudp_get_size(const struct net_device *dev) --- linux-azure-5.8-5.8.0.orig/drivers/net/bonding/bond_main.c +++ linux-azure-5.8-5.8.0/drivers/net/bonding/bond_main.c @@ -1195,6 +1195,7 @@ bond_dev->type = slave_dev->type; bond_dev->hard_header_len = slave_dev->hard_header_len; + bond_dev->needed_headroom = slave_dev->needed_headroom; bond_dev->addr_len = slave_dev->addr_len; memcpy(bond_dev->broadcast, slave_dev->broadcast, @@ -1339,7 +1340,39 @@ slave->dev->flags &= ~IFF_SLAVE; } -static struct slave *bond_alloc_slave(struct bonding *bond) +static void slave_kobj_release(struct kobject *kobj) +{ + struct slave *slave = to_slave(kobj); + struct bonding *bond = bond_get_bond_by_slave(slave); + + cancel_delayed_work_sync(&slave->notify_work); + if (BOND_MODE(bond) == BOND_MODE_8023AD) + kfree(SLAVE_AD_INFO(slave)); + + kfree(slave); +} + +static struct kobj_type slave_ktype = { + .release = slave_kobj_release, +#ifdef CONFIG_SYSFS + .sysfs_ops = &slave_sysfs_ops, +#endif +}; + +static int bond_kobj_init(struct slave *slave) +{ + int err; + + err = kobject_init_and_add(&slave->kobj, &slave_ktype, + &(slave->dev->dev.kobj), "bonding_slave"); + if (err) + kobject_put(&slave->kobj); + + return err; +} + +static struct slave *bond_alloc_slave(struct bonding *bond, + struct net_device *slave_dev) { struct slave *slave = NULL; @@ -1347,11 +1380,17 @@ if (!slave) return NULL; + slave->bond = bond; + slave->dev = slave_dev; + + if (bond_kobj_init(slave)) + return NULL; + if (BOND_MODE(bond) == BOND_MODE_8023AD) { SLAVE_AD_INFO(slave) = kzalloc(sizeof(struct ad_slave_info), GFP_KERNEL); if (!SLAVE_AD_INFO(slave)) { - kfree(slave); + kobject_put(&slave->kobj); return NULL; } } @@ -1360,17 +1399,6 @@ return slave; } -static void bond_free_slave(struct slave *slave) -{ - struct bonding *bond = bond_get_bond_by_slave(slave); - - cancel_delayed_work_sync(&slave->notify_work); - if (BOND_MODE(bond) == BOND_MODE_8023AD) - kfree(SLAVE_AD_INFO(slave)); - - kfree(slave); -} - static void bond_fill_ifbond(struct bonding *bond, struct ifbond *info) { info->bond_mode = BOND_MODE(bond); @@ -1554,14 +1582,12 @@ goto err_undo_flags; } - new_slave = bond_alloc_slave(bond); + new_slave = bond_alloc_slave(bond, slave_dev); if (!new_slave) { res = -ENOMEM; goto err_undo_flags; } - new_slave->bond = bond; - new_slave->dev = slave_dev; /* Set the new_slave's queue_id to be zero. Queue ID mapping * is set via sysfs or module option if desired. */ @@ -1883,7 +1909,7 @@ dev_set_mtu(slave_dev, new_slave->original_mtu); err_free: - bond_free_slave(new_slave); + kobject_put(&new_slave->kobj); err_undo_flags: /* Enslave of first slave has failed and we need to fix master's mac */ @@ -2063,7 +2089,7 @@ if (!netif_is_bond_master(slave_dev)) slave_dev->priv_flags &= ~IFF_BONDING; - bond_free_slave(slave); + kobject_put(&slave->kobj); return 0; } @@ -2084,7 +2110,8 @@ int ret; ret = __bond_release_one(bond_dev, slave_dev, false, true); - if (ret == 0 && !bond_has_slaves(bond)) { + if (ret == 0 && !bond_has_slaves(bond) && + bond_dev->reg_state != NETREG_UNREGISTERING) { bond_dev->priv_flags |= IFF_DISABLE_NETPOLL; netdev_info(bond_dev, "Destroying bond\n"); bond_remove_proc_entry(bond); @@ -2824,6 +2851,9 @@ if (bond_time_in_interval(bond, last_rx, 1)) { bond_propose_link_state(slave, BOND_LINK_UP); commit++; + } else if (slave->link == BOND_LINK_BACK) { + bond_propose_link_state(slave, BOND_LINK_FAIL); + commit++; } continue; } @@ -2932,6 +2962,19 @@ continue; + case BOND_LINK_FAIL: + bond_set_slave_link_state(slave, BOND_LINK_FAIL, + BOND_SLAVE_NOTIFY_NOW); + bond_set_slave_inactive_flags(slave, + BOND_SLAVE_NOTIFY_NOW); + + /* A slave has just been enslaved and has become + * the current active slave. + */ + if (rtnl_dereference(bond->curr_active_slave)) + RCU_INIT_POINTER(bond->current_arp_slave, NULL); + continue; + default: slave_err(bond->dev, slave->dev, "impossible: link_new_state %d on slave\n", @@ -2982,8 +3025,6 @@ return should_notify_rtnl; } - bond_set_slave_inactive_flags(curr_arp_slave, BOND_SLAVE_NOTIFY_LATER); - bond_for_each_slave_rcu(bond, slave, iter) { if (!found && !before && bond_slave_is_up(slave)) before = slave; @@ -4431,13 +4472,23 @@ return ret; } +static u32 bond_mode_bcast_speed(struct slave *slave, u32 speed) +{ + if (speed == 0 || speed == SPEED_UNKNOWN) + speed = slave->speed; + else + speed = min(speed, slave->speed); + + return speed; +} + static int bond_ethtool_get_link_ksettings(struct net_device *bond_dev, struct ethtool_link_ksettings *cmd) { struct bonding *bond = netdev_priv(bond_dev); - unsigned long speed = 0; struct list_head *iter; struct slave *slave; + u32 speed = 0; cmd->base.duplex = DUPLEX_UNKNOWN; cmd->base.port = PORT_OTHER; @@ -4449,8 +4500,13 @@ */ bond_for_each_slave(bond, slave, iter) { if (bond_slave_can_tx(slave)) { - if (slave->speed != SPEED_UNKNOWN) - speed += slave->speed; + if (slave->speed != SPEED_UNKNOWN) { + if (BOND_MODE(bond) == BOND_MODE_BROADCAST) + speed = bond_mode_bcast_speed(slave, + speed); + else + speed += slave->speed; + } if (cmd->base.duplex == DUPLEX_UNKNOWN && slave->duplex != DUPLEX_UNKNOWN) cmd->base.duplex = slave->duplex; --- linux-azure-5.8-5.8.0.orig/drivers/net/bonding/bond_sysfs_slave.c +++ linux-azure-5.8-5.8.0/drivers/net/bonding/bond_sysfs_slave.c @@ -121,7 +121,6 @@ }; #define to_slave_attr(_at) container_of(_at, struct slave_attribute, attr) -#define to_slave(obj) container_of(obj, struct slave, kobj) static ssize_t slave_show(struct kobject *kobj, struct attribute *attr, char *buf) @@ -132,28 +131,15 @@ return slave_attr->show(slave, buf); } -static const struct sysfs_ops slave_sysfs_ops = { +const struct sysfs_ops slave_sysfs_ops = { .show = slave_show, }; -static struct kobj_type slave_ktype = { -#ifdef CONFIG_SYSFS - .sysfs_ops = &slave_sysfs_ops, -#endif -}; - int bond_sysfs_slave_add(struct slave *slave) { const struct slave_attribute **a; int err; - err = kobject_init_and_add(&slave->kobj, &slave_ktype, - &(slave->dev->dev.kobj), "bonding_slave"); - if (err) { - kobject_put(&slave->kobj); - return err; - } - for (a = slave_attrs; *a; ++a) { err = sysfs_create_file(&slave->kobj, &((*a)->attr)); if (err) { @@ -171,6 +157,4 @@ for (a = slave_attrs; *a; ++a) sysfs_remove_file(&slave->kobj, &((*a)->attr)); - - kobject_put(&slave->kobj); } --- linux-azure-5.8-5.8.0.orig/drivers/net/can/Kconfig +++ linux-azure-5.8-5.8.0/drivers/net/can/Kconfig @@ -123,6 +123,7 @@ config CAN_KVASER_PCIEFD depends on PCI tristate "Kvaser PCIe FD cards" + select CRC32 help This is a driver for the Kvaser PCI Express CAN FD family. --- linux-azure-5.8-5.8.0.orig/drivers/net/can/c_can/c_can.c +++ linux-azure-5.8-5.8.0/drivers/net/can/c_can/c_can.c @@ -1304,12 +1304,22 @@ time_after(time_out, jiffies)) cpu_relax(); - if (time_after(jiffies, time_out)) - return -ETIMEDOUT; + if (time_after(jiffies, time_out)) { + ret = -ETIMEDOUT; + goto err_out; + } ret = c_can_start(dev); - if (!ret) - c_can_irq_control(priv, true); + if (ret) + goto err_out; + + c_can_irq_control(priv, true); + + return 0; + +err_out: + c_can_reset_ram(priv, false); + c_can_pm_runtime_put_sync(priv); return ret; } --- linux-azure-5.8-5.8.0.orig/drivers/net/can/dev.c +++ linux-azure-5.8-5.8.0/drivers/net/can/dev.c @@ -486,9 +486,13 @@ */ struct sk_buff *skb = priv->echo_skb[idx]; struct canfd_frame *cf = (struct canfd_frame *)skb->data; - u8 len = cf->len; - *len_ptr = len; + /* get the real payload length for netdev statistics */ + if (cf->can_id & CAN_RTR_FLAG) + *len_ptr = 0; + else + *len_ptr = cf->len; + priv->echo_skb[idx] = NULL; return skb; @@ -512,7 +516,11 @@ if (!skb) return 0; - netif_rx(skb); + skb_get(skb); + if (netif_rx(skb) == NET_RX_SUCCESS) + dev_consume_skb_any(skb); + else + dev_kfree_skb_any(skb); return len; } @@ -558,11 +566,11 @@ cf->can_id |= CAN_ERR_RESTARTED; - netif_rx(skb); - stats->rx_packets++; stats->rx_bytes += cf->can_dlc; + netif_rx_ni(skb); + restart: netdev_dbg(dev, "restarted\n"); priv->can_stats.restarts++; @@ -1125,7 +1133,7 @@ { struct can_priv *priv = netdev_priv(dev); struct can_ctrlmode cm = {.flags = priv->ctrlmode}; - struct can_berr_counter bec; + struct can_berr_counter bec = { }; enum can_state state = priv->state; if (priv->do_get_state) --- linux-azure-5.8-5.8.0.orig/drivers/net/can/flexcan.c +++ linux-azure-5.8-5.8.0/drivers/net/can/flexcan.c @@ -321,8 +321,7 @@ static const struct flexcan_devtype_data fsl_ls1021a_r2_devtype_data = { .quirks = FLEXCAN_QUIRK_DISABLE_RXFG | FLEXCAN_QUIRK_ENABLE_EACEN_RRS | - FLEXCAN_QUIRK_DISABLE_MECR | FLEXCAN_QUIRK_BROKEN_PERR_STATE | - FLEXCAN_QUIRK_USE_OFF_TIMESTAMP, + FLEXCAN_QUIRK_BROKEN_PERR_STATE | FLEXCAN_QUIRK_USE_OFF_TIMESTAMP, }; static const struct can_bittiming_const flexcan_bittiming_const = { @@ -615,8 +614,10 @@ int err; err = pm_runtime_get_sync(priv->dev); - if (err < 0) + if (err < 0) { + pm_runtime_put_noidle(priv->dev); return err; + } err = __flexcan_get_berr_counter(dev, bec); @@ -1228,14 +1229,10 @@ priv->write(reg_mecr, ®s->mecr); } - err = flexcan_transceiver_enable(priv); - if (err) - goto out_chip_disable; - /* synchronize with the can bus */ err = flexcan_chip_unfreeze(priv); if (err) - goto out_transceiver_disable; + goto out_chip_disable; priv->can.state = CAN_STATE_ERROR_ACTIVE; @@ -1253,25 +1250,28 @@ return 0; - out_transceiver_disable: - flexcan_transceiver_disable(priv); out_chip_disable: flexcan_chip_disable(priv); return err; } -/* flexcan_chip_stop +/* __flexcan_chip_stop * - * this functions is entered with clocks enabled + * this function is entered with clocks enabled */ -static void flexcan_chip_stop(struct net_device *dev) +static int __flexcan_chip_stop(struct net_device *dev, bool disable_on_error) { struct flexcan_priv *priv = netdev_priv(dev); struct flexcan_regs __iomem *regs = priv->regs; + int err; /* freeze + disable module */ - flexcan_chip_freeze(priv); - flexcan_chip_disable(priv); + err = flexcan_chip_freeze(priv); + if (err && !disable_on_error) + return err; + err = flexcan_chip_disable(priv); + if (err && !disable_on_error) + goto out_chip_unfreeze; /* Disable all interrupts */ priv->write(0, ®s->imask2); @@ -1279,8 +1279,24 @@ priv->write(priv->reg_ctrl_default & ~FLEXCAN_CTRL_ERR_ALL, ®s->ctrl); - flexcan_transceiver_disable(priv); priv->can.state = CAN_STATE_STOPPED; + + return 0; + + out_chip_unfreeze: + flexcan_chip_unfreeze(priv); + + return err; +} + +static inline int flexcan_chip_stop_disable_on_error(struct net_device *dev) +{ + return __flexcan_chip_stop(dev, true); +} + +static inline int flexcan_chip_stop(struct net_device *dev) +{ + return __flexcan_chip_stop(dev, false); } static int flexcan_open(struct net_device *dev) @@ -1289,17 +1305,23 @@ int err; err = pm_runtime_get_sync(priv->dev); - if (err < 0) + if (err < 0) { + pm_runtime_put_noidle(priv->dev); return err; + } err = open_candev(dev); if (err) goto out_runtime_put; - err = request_irq(dev->irq, flexcan_irq, IRQF_SHARED, dev->name, dev); + err = flexcan_transceiver_enable(priv); if (err) goto out_close; + err = request_irq(dev->irq, flexcan_irq, IRQF_SHARED, dev->name, dev); + if (err) + goto out_transceiver_disable; + priv->mb_size = sizeof(struct flexcan_mb) + CAN_MAX_DLEN; priv->mb_count = (sizeof(priv->regs->mb[0]) / priv->mb_size) + (sizeof(priv->regs->mb[1]) / priv->mb_size); @@ -1348,6 +1370,8 @@ can_rx_offload_del(&priv->offload); out_free_irq: free_irq(dev->irq, dev); + out_transceiver_disable: + flexcan_transceiver_disable(priv); out_close: close_candev(dev); out_runtime_put: @@ -1362,10 +1386,11 @@ netif_stop_queue(dev); can_rx_offload_disable(&priv->offload); - flexcan_chip_stop(dev); + flexcan_chip_stop_disable_on_error(dev); can_rx_offload_del(&priv->offload); free_irq(dev->irq, dev); + flexcan_transceiver_disable(priv); close_candev(dev); pm_runtime_put(priv->dev); @@ -1674,6 +1699,8 @@ { struct net_device *dev = platform_get_drvdata(pdev); + device_set_wakeup_enable(&pdev->dev, false); + device_set_wakeup_capable(&pdev->dev, false); unregister_flexcandev(dev); pm_runtime_disable(&pdev->dev); free_candev(dev); @@ -1700,8 +1727,6 @@ err = flexcan_chip_disable(priv); if (err) return err; - - err = pm_runtime_force_suspend(device); } netif_stop_queue(dev); netif_device_detach(dev); @@ -1727,10 +1752,6 @@ if (err) return err; } else { - err = pm_runtime_force_resume(device); - if (err) - return err; - err = flexcan_chip_enable(priv); } } @@ -1761,8 +1782,16 @@ struct net_device *dev = dev_get_drvdata(device); struct flexcan_priv *priv = netdev_priv(dev); - if (netif_running(dev) && device_may_wakeup(device)) - flexcan_enable_wakeup_irq(priv, true); + if (netif_running(dev)) { + int err; + + if (device_may_wakeup(device)) + flexcan_enable_wakeup_irq(priv, true); + + err = pm_runtime_force_suspend(device); + if (err) + return err; + } return 0; } @@ -1772,8 +1801,16 @@ struct net_device *dev = dev_get_drvdata(device); struct flexcan_priv *priv = netdev_priv(dev); - if (netif_running(dev) && device_may_wakeup(device)) - flexcan_enable_wakeup_irq(priv, false); + if (netif_running(dev)) { + int err; + + err = pm_runtime_force_resume(device); + if (err) + return err; + + if (device_may_wakeup(device)) + flexcan_enable_wakeup_irq(priv, false); + } return 0; } --- linux-azure-5.8-5.8.0.orig/drivers/net/can/kvaser_pciefd.c +++ linux-azure-5.8-5.8.0/drivers/net/can/kvaser_pciefd.c @@ -287,12 +287,12 @@ static const struct can_bittiming_const kvaser_pciefd_bittiming_const = { .name = KVASER_PCIEFD_DRV_NAME, .tseg1_min = 1, - .tseg1_max = 255, + .tseg1_max = 512, .tseg2_min = 1, .tseg2_max = 32, .sjw_max = 16, .brp_min = 1, - .brp_max = 4096, + .brp_max = 8192, .brp_inc = 1, }; @@ -692,8 +692,10 @@ return err; err = kvaser_pciefd_bus_on(can); - if (err) + if (err) { + close_candev(netdev); return err; + } return 0; } --- linux-azure-5.8-5.8.0.orig/drivers/net/can/m_can/Kconfig +++ linux-azure-5.8-5.8.0/drivers/net/can/m_can/Kconfig @@ -16,7 +16,8 @@ config CAN_M_CAN_TCAN4X5X depends on CAN_M_CAN - depends on REGMAP_SPI + depends on SPI + select REGMAP_SPI tristate "TCAN4X5X M_CAN device" help Say Y here if you want support for Texas Instruments TCAN4x5x --- linux-azure-5.8-5.8.0.orig/drivers/net/can/m_can/m_can.c +++ linux-azure-5.8-5.8.0/drivers/net/can/m_can/m_can.c @@ -380,10 +380,6 @@ cccr &= ~CCCR_CSR; if (enable) { - /* Clear the Clock stop request if it was set */ - if (cccr & CCCR_CSR) - cccr &= ~CCCR_CSR; - /* enable m_can configuration */ m_can_write(cdev, M_CAN_CCCR, cccr | CCCR_INIT); udelay(5); @@ -665,7 +661,7 @@ unsigned int ecr; switch (new_state) { - case CAN_STATE_ERROR_ACTIVE: + case CAN_STATE_ERROR_WARNING: /* error warning state */ cdev->can.can_stats.error_warning++; cdev->can.state = CAN_STATE_ERROR_WARNING; @@ -694,7 +690,7 @@ __m_can_get_berr_counter(dev, &bec); switch (new_state) { - case CAN_STATE_ERROR_ACTIVE: + case CAN_STATE_ERROR_WARNING: /* error warning state */ cf->can_id |= CAN_ERR_CRTL; cf->data[1] = (bec.txerr > bec.rxerr) ? @@ -956,6 +952,8 @@ struct net_device_stats *stats = &dev->stats; u32 ir; + if (pm_runtime_suspended(cdev->dev)) + return IRQ_NONE; ir = m_can_read(cdev, M_CAN_IR); if (!ir) return IRQ_NONE; @@ -1031,7 +1029,7 @@ .name = KBUILD_MODNAME, .tseg1_min = 2, /* Time segment 1 = prop_seg + phase_seg1 */ .tseg1_max = 256, - .tseg2_min = 1, /* Time segment 2 = phase_seg2 */ + .tseg2_min = 2, /* Time segment 2 = phase_seg2 */ .tseg2_max = 128, .sjw_max = 128, .brp_min = 1, @@ -1383,6 +1381,8 @@ &m_can_data_bittiming_const_31X; break; case 32: + case 33: + /* Support both MCAN version v3.2.x and v3.3.0 */ m_can_dev->can.bittiming_const = m_can_dev->bit_timing ? m_can_dev->bit_timing : &m_can_bittiming_const_31X; @@ -1414,6 +1414,9 @@ /* disable all interrupts */ m_can_disable_all_interrupts(cdev); + /* Set init mode to disengage from the network */ + m_can_config_endisable(cdev, true); + /* set the state as STOPPED */ cdev->can.state = CAN_STATE_STOPPED; } @@ -1648,7 +1651,7 @@ INIT_WORK(&cdev->tx_work, m_can_tx_work_queue); err = request_threaded_irq(dev->irq, NULL, m_can_isr, - IRQF_ONESHOT | IRQF_TRIGGER_FALLING, + IRQF_ONESHOT, dev->name, dev); } else { err = request_irq(dev->irq, m_can_isr, IRQF_SHARED, dev->name, @@ -1812,6 +1815,12 @@ } EXPORT_SYMBOL_GPL(m_can_class_allocate_dev); +void m_can_class_free_dev(struct net_device *net) +{ + free_candev(net); +} +EXPORT_SYMBOL_GPL(m_can_class_free_dev); + int m_can_class_register(struct m_can_classdev *m_can_dev) { int ret; @@ -1850,7 +1859,6 @@ if (ret) { if (m_can_dev->pm_clock_support) pm_runtime_disable(m_can_dev->dev); - free_candev(m_can_dev->net); } return ret; @@ -1906,10 +1914,6 @@ void m_can_class_unregister(struct m_can_classdev *m_can_dev) { unregister_candev(m_can_dev->net); - - m_can_clk_stop(m_can_dev); - - free_candev(m_can_dev->net); } EXPORT_SYMBOL_GPL(m_can_class_unregister); --- linux-azure-5.8-5.8.0.orig/drivers/net/can/m_can/m_can.h +++ linux-azure-5.8-5.8.0/drivers/net/can/m_can/m_can.h @@ -99,6 +99,7 @@ }; struct m_can_classdev *m_can_class_allocate_dev(struct device *dev); +void m_can_class_free_dev(struct net_device *net); int m_can_class_register(struct m_can_classdev *cdev); void m_can_class_unregister(struct m_can_classdev *cdev); int m_can_class_get_clocks(struct m_can_classdev *cdev); --- linux-azure-5.8-5.8.0.orig/drivers/net/can/m_can/m_can_platform.c +++ linux-azure-5.8-5.8.0/drivers/net/can/m_can/m_can_platform.c @@ -67,32 +67,36 @@ return -ENOMEM; priv = devm_kzalloc(&pdev->dev, sizeof(*priv), GFP_KERNEL); - if (!priv) - return -ENOMEM; + if (!priv) { + ret = -ENOMEM; + goto probe_fail; + } mcan_class->device_data = priv; - m_can_class_get_clocks(mcan_class); + ret = m_can_class_get_clocks(mcan_class); + if (ret) + goto probe_fail; res = platform_get_resource_byname(pdev, IORESOURCE_MEM, "m_can"); addr = devm_ioremap_resource(&pdev->dev, res); irq = platform_get_irq_byname(pdev, "int0"); if (IS_ERR(addr) || irq < 0) { ret = -EINVAL; - goto failed_ret; + goto probe_fail; } /* message ram could be shared */ res = platform_get_resource_byname(pdev, IORESOURCE_MEM, "message_ram"); if (!res) { ret = -ENODEV; - goto failed_ret; + goto probe_fail; } mram_addr = devm_ioremap(&pdev->dev, res->start, resource_size(res)); if (!mram_addr) { ret = -ENOMEM; - goto failed_ret; + goto probe_fail; } priv->base = addr; @@ -111,9 +115,10 @@ m_can_init_ram(mcan_class); - ret = m_can_class_register(mcan_class); + return m_can_class_register(mcan_class); -failed_ret: +probe_fail: + m_can_class_free_dev(mcan_class->net); return ret; } @@ -134,6 +139,8 @@ m_can_class_unregister(mcan_class); + m_can_class_free_dev(mcan_class->net); + platform_set_drvdata(pdev, NULL); return 0; @@ -144,8 +151,6 @@ struct net_device *ndev = dev_get_drvdata(dev); struct m_can_classdev *mcan_class = netdev_priv(ndev); - m_can_class_suspend(dev); - clk_disable_unprepare(mcan_class->cclk); clk_disable_unprepare(mcan_class->hclk); --- linux-azure-5.8-5.8.0.orig/drivers/net/can/m_can/tcan4x5x.c +++ linux-azure-5.8-5.8.0/drivers/net/can/m_can/tcan4x5x.c @@ -129,30 +129,6 @@ int reg_offset; }; -static struct can_bittiming_const tcan4x5x_bittiming_const = { - .name = DEVICE_NAME, - .tseg1_min = 2, - .tseg1_max = 31, - .tseg2_min = 2, - .tseg2_max = 16, - .sjw_max = 16, - .brp_min = 1, - .brp_max = 32, - .brp_inc = 1, -}; - -static struct can_bittiming_const tcan4x5x_data_bittiming_const = { - .name = DEVICE_NAME, - .tseg1_min = 1, - .tseg1_max = 32, - .tseg2_min = 1, - .tseg2_max = 16, - .sjw_max = 16, - .brp_min = 1, - .brp_max = 32, - .brp_inc = 1, -}; - static void tcan4x5x_check_wake(struct tcan4x5x_priv *priv) { int wake_state = 0; @@ -440,14 +416,18 @@ return -ENOMEM; priv = devm_kzalloc(&spi->dev, sizeof(*priv), GFP_KERNEL); - if (!priv) - return -ENOMEM; + if (!priv) { + ret = -ENOMEM; + goto out_m_can_class_free_dev; + } priv->power = devm_regulator_get_optional(&spi->dev, "vsup"); - if (PTR_ERR(priv->power) == -EPROBE_DEFER) - return -EPROBE_DEFER; - else + if (PTR_ERR(priv->power) == -EPROBE_DEFER) { + ret = -EPROBE_DEFER; + goto out_m_can_class_free_dev; + } else { priv->power = NULL; + } mcan_class->device_data = priv; @@ -460,8 +440,10 @@ } /* Sanity check */ - if (freq < 20000000 || freq > TCAN4X5X_EXT_CLK_DEF) - return -ERANGE; + if (freq < 20000000 || freq > TCAN4X5X_EXT_CLK_DEF) { + ret = -ERANGE; + goto out_m_can_class_free_dev; + } priv->reg_offset = TCAN4X5X_MCAN_OFFSET; priv->mram_start = TCAN4X5X_MRAM_START; @@ -473,8 +455,6 @@ mcan_class->dev = &spi->dev; mcan_class->ops = &tcan4x5x_ops; mcan_class->is_peripheral = true; - mcan_class->bit_timing = &tcan4x5x_bittiming_const; - mcan_class->data_timing = &tcan4x5x_data_bittiming_const; mcan_class->net->irq = spi->irq; spi_set_drvdata(spi, priv); @@ -483,14 +463,18 @@ spi->bits_per_word = 32; ret = spi_setup(spi); if (ret) - goto out_clk; + goto out_m_can_class_free_dev; priv->regmap = devm_regmap_init(&spi->dev, &tcan4x5x_bus, &spi->dev, &tcan4x5x_regmap); + if (IS_ERR(priv->regmap)) { + ret = PTR_ERR(priv->regmap); + goto out_m_can_class_free_dev; + } ret = tcan4x5x_power_enable(priv->power, 1); if (ret) - goto out_clk; + goto out_m_can_class_free_dev; ret = tcan4x5x_parse_config(mcan_class); if (ret) @@ -509,13 +493,10 @@ out_power: tcan4x5x_power_enable(priv->power, 0); -out_clk: - if (!IS_ERR(mcan_class->cclk)) { - clk_disable_unprepare(mcan_class->cclk); - clk_disable_unprepare(mcan_class->hclk); - } - + out_m_can_class_free_dev: + m_can_class_free_dev(mcan_class->net); dev_err(&spi->dev, "Probe failed, err=%d\n", ret); + return ret; } @@ -523,9 +504,11 @@ { struct tcan4x5x_priv *priv = spi_get_drvdata(spi); + m_can_class_unregister(priv->mcan_dev); + tcan4x5x_power_enable(priv->power, 0); - m_can_class_unregister(priv->mcan_dev); + m_can_class_free_dev(priv->mcan_dev->net); return 0; } --- linux-azure-5.8-5.8.0.orig/drivers/net/can/peak_canfd/peak_canfd.c +++ linux-azure-5.8-5.8.0/drivers/net/can/peak_canfd/peak_canfd.c @@ -262,8 +262,7 @@ cf_len = get_can_dlc(pucan_msg_get_dlc(msg)); /* if this frame is an echo, */ - if ((rx_msg_flags & PUCAN_MSG_LOOPED_BACK) && - !(rx_msg_flags & PUCAN_MSG_SELF_RECEIVE)) { + if (rx_msg_flags & PUCAN_MSG_LOOPED_BACK) { unsigned long flags; spin_lock_irqsave(&priv->echo_lock, flags); @@ -277,7 +276,13 @@ netif_wake_queue(priv->ndev); spin_unlock_irqrestore(&priv->echo_lock, flags); - return 0; + + /* if this frame is only an echo, stop here. Otherwise, + * continue to push this application self-received frame into + * its own rx queue. + */ + if (!(rx_msg_flags & PUCAN_MSG_SELF_RECEIVE)) + return 0; } /* otherwise, it should be pushed into rx fifo */ --- linux-azure-5.8-5.8.0.orig/drivers/net/can/rx-offload.c +++ linux-azure-5.8-5.8.0/drivers/net/can/rx-offload.c @@ -245,7 +245,7 @@ if (skb_queue_len(&offload->skb_queue) > offload->skb_queue_len_max) { - kfree_skb(skb); + dev_kfree_skb_any(skb); return -ENOBUFS; } @@ -290,7 +290,7 @@ { if (skb_queue_len(&offload->skb_queue) > offload->skb_queue_len_max) { - kfree_skb(skb); + dev_kfree_skb_any(skb); return -ENOBUFS; } --- linux-azure-5.8-5.8.0.orig/drivers/net/can/sja1000/sja1000.c +++ linux-azure-5.8-5.8.0/drivers/net/can/sja1000/sja1000.c @@ -474,7 +474,6 @@ netdev_dbg(dev, "arbitration lost interrupt\n"); alc = priv->read_reg(priv, SJA1000_ALC); priv->can.can_stats.arbitration_lost++; - stats->tx_errors++; cf->can_id |= CAN_ERR_LOSTARB; cf->data[0] = alc & 0x1f; } --- linux-azure-5.8-5.8.0.orig/drivers/net/can/softing/softing_main.c +++ linux-azure-5.8-5.8.0/drivers/net/can/softing/softing_main.c @@ -382,8 +382,13 @@ /* check or determine and set bittime */ ret = open_candev(ndev); - if (!ret) - ret = softing_startstop(ndev, 1); + if (ret) + return ret; + + ret = softing_startstop(ndev, 1); + if (ret < 0) + close_candev(ndev); + return ret; } --- linux-azure-5.8-5.8.0.orig/drivers/net/can/sun4i_can.c +++ linux-azure-5.8-5.8.0/drivers/net/can/sun4i_can.c @@ -604,7 +604,6 @@ netdev_dbg(dev, "arbitration lost interrupt\n"); alc = readl(priv->base + SUN4I_REG_STA_ADDR); priv->can.can_stats.arbitration_lost++; - stats->tx_errors++; if (likely(skb)) { cf->can_id |= CAN_ERR_LOSTARB; cf->data[0] = (alc >> 8) & 0x1f; --- linux-azure-5.8-5.8.0.orig/drivers/net/can/ti_hecc.c +++ linux-azure-5.8-5.8.0/drivers/net/can/ti_hecc.c @@ -887,7 +887,8 @@ priv->base = devm_ioremap_resource(&pdev->dev, res); if (IS_ERR(priv->base)) { dev_err(&pdev->dev, "hecc ioremap failed\n"); - return PTR_ERR(priv->base); + err = PTR_ERR(priv->base); + goto probe_exit_candev; } /* handle hecc-ram memory */ @@ -900,7 +901,8 @@ priv->hecc_ram = devm_ioremap_resource(&pdev->dev, res); if (IS_ERR(priv->hecc_ram)) { dev_err(&pdev->dev, "hecc-ram ioremap failed\n"); - return PTR_ERR(priv->hecc_ram); + err = PTR_ERR(priv->hecc_ram); + goto probe_exit_candev; } /* handle mbx memory */ @@ -913,13 +915,14 @@ priv->mbx = devm_ioremap_resource(&pdev->dev, res); if (IS_ERR(priv->mbx)) { dev_err(&pdev->dev, "mbx ioremap failed\n"); - return PTR_ERR(priv->mbx); + err = PTR_ERR(priv->mbx); + goto probe_exit_candev; } irq = platform_get_resource(pdev, IORESOURCE_IRQ, 0); if (!irq) { dev_err(&pdev->dev, "No irq resource\n"); - goto probe_exit; + goto probe_exit_candev; } priv->ndev = ndev; @@ -950,7 +953,7 @@ err = clk_prepare_enable(priv->clk); if (err) { dev_err(&pdev->dev, "clk_prepare_enable() failed\n"); - goto probe_exit_clk; + goto probe_exit_release_clk; } priv->offload.mailbox_read = ti_hecc_mailbox_read; @@ -959,7 +962,7 @@ err = can_rx_offload_add_timestamp(ndev, &priv->offload); if (err) { dev_err(&pdev->dev, "can_rx_offload_add_timestamp() failed\n"); - goto probe_exit_clk; + goto probe_exit_disable_clk; } err = register_candev(ndev); @@ -977,11 +980,13 @@ probe_exit_offload: can_rx_offload_del(&priv->offload); -probe_exit_clk: +probe_exit_disable_clk: + clk_disable_unprepare(priv->clk); +probe_exit_release_clk: clk_put(priv->clk); probe_exit_candev: free_candev(ndev); -probe_exit: + return err; } --- linux-azure-5.8-5.8.0.orig/drivers/net/can/usb/gs_usb.c +++ linux-azure-5.8-5.8.0/drivers/net/can/usb/gs_usb.c @@ -63,21 +63,27 @@ }; /* data types passed between host and device */ + +/* The firmware on the original USB2CAN by Geschwister Schneider + * Technologie Entwicklungs- und Vertriebs UG exchanges all data + * between the host and the device in host byte order. This is done + * with the struct gs_host_config::byte_order member, which is sent + * first to indicate the desired byte order. + * + * The widely used open source firmware candleLight doesn't support + * this feature and exchanges the data in little endian byte order. + */ struct gs_host_config { - u32 byte_order; + __le32 byte_order; } __packed; -/* All data exchanged between host and device is exchanged in host byte order, - * thanks to the struct gs_host_config byte_order member, which is sent first - * to indicate the desired byte order. - */ struct gs_device_config { u8 reserved1; u8 reserved2; u8 reserved3; u8 icount; - u32 sw_version; - u32 hw_version; + __le32 sw_version; + __le32 hw_version; } __packed; #define GS_CAN_MODE_NORMAL 0 @@ -87,26 +93,26 @@ #define GS_CAN_MODE_ONE_SHOT BIT(3) struct gs_device_mode { - u32 mode; - u32 flags; + __le32 mode; + __le32 flags; } __packed; struct gs_device_state { - u32 state; - u32 rxerr; - u32 txerr; + __le32 state; + __le32 rxerr; + __le32 txerr; } __packed; struct gs_device_bittiming { - u32 prop_seg; - u32 phase_seg1; - u32 phase_seg2; - u32 sjw; - u32 brp; + __le32 prop_seg; + __le32 phase_seg1; + __le32 phase_seg2; + __le32 sjw; + __le32 brp; } __packed; struct gs_identify_mode { - u32 mode; + __le32 mode; } __packed; #define GS_CAN_FEATURE_LISTEN_ONLY BIT(0) @@ -117,23 +123,23 @@ #define GS_CAN_FEATURE_IDENTIFY BIT(5) struct gs_device_bt_const { - u32 feature; - u32 fclk_can; - u32 tseg1_min; - u32 tseg1_max; - u32 tseg2_min; - u32 tseg2_max; - u32 sjw_max; - u32 brp_min; - u32 brp_max; - u32 brp_inc; + __le32 feature; + __le32 fclk_can; + __le32 tseg1_min; + __le32 tseg1_max; + __le32 tseg2_min; + __le32 tseg2_max; + __le32 sjw_max; + __le32 brp_min; + __le32 brp_max; + __le32 brp_inc; } __packed; #define GS_CAN_FLAG_OVERFLOW 1 struct gs_host_frame { u32 echo_id; - u32 can_id; + __le32 can_id; u8 can_dlc; u8 channel; @@ -329,13 +335,13 @@ if (!skb) return; - cf->can_id = hf->can_id; + cf->can_id = le32_to_cpu(hf->can_id); cf->can_dlc = get_can_dlc(hf->can_dlc); memcpy(cf->data, hf->data, 8); /* ERROR frames tell us information about the controller */ - if (hf->can_id & CAN_ERR_FLAG) + if (le32_to_cpu(hf->can_id) & CAN_ERR_FLAG) gs_update_state(dev, cf); netdev->stats.rx_packets++; @@ -418,11 +424,11 @@ if (!dbt) return -ENOMEM; - dbt->prop_seg = bt->prop_seg; - dbt->phase_seg1 = bt->phase_seg1; - dbt->phase_seg2 = bt->phase_seg2; - dbt->sjw = bt->sjw; - dbt->brp = bt->brp; + dbt->prop_seg = cpu_to_le32(bt->prop_seg); + dbt->phase_seg1 = cpu_to_le32(bt->phase_seg1); + dbt->phase_seg2 = cpu_to_le32(bt->phase_seg2); + dbt->sjw = cpu_to_le32(bt->sjw); + dbt->brp = cpu_to_le32(bt->brp); /* request bit timings */ rc = usb_control_msg(interface_to_usbdev(intf), @@ -503,7 +509,7 @@ cf = (struct can_frame *)skb->data; - hf->can_id = cf->can_id; + hf->can_id = cpu_to_le32(cf->can_id); hf->can_dlc = cf->can_dlc; memcpy(hf->data, cf->data, cf->can_dlc); @@ -573,6 +579,7 @@ int rc, i; struct gs_device_mode *dm; u32 ctrlmode; + u32 flags = 0; rc = open_candev(netdev); if (rc) @@ -640,24 +647,24 @@ /* flags */ ctrlmode = dev->can.ctrlmode; - dm->flags = 0; if (ctrlmode & CAN_CTRLMODE_LOOPBACK) - dm->flags |= GS_CAN_MODE_LOOP_BACK; + flags |= GS_CAN_MODE_LOOP_BACK; else if (ctrlmode & CAN_CTRLMODE_LISTENONLY) - dm->flags |= GS_CAN_MODE_LISTEN_ONLY; + flags |= GS_CAN_MODE_LISTEN_ONLY; /* Controller is not allowed to retry TX * this mode is unavailable on atmels uc3c hardware */ if (ctrlmode & CAN_CTRLMODE_ONE_SHOT) - dm->flags |= GS_CAN_MODE_ONE_SHOT; + flags |= GS_CAN_MODE_ONE_SHOT; if (ctrlmode & CAN_CTRLMODE_3_SAMPLES) - dm->flags |= GS_CAN_MODE_TRIPLE_SAMPLE; + flags |= GS_CAN_MODE_TRIPLE_SAMPLE; /* finally start device */ - dm->mode = GS_CAN_MODE_START; + dm->mode = cpu_to_le32(GS_CAN_MODE_START); + dm->flags = cpu_to_le32(flags); rc = usb_control_msg(interface_to_usbdev(dev->iface), usb_sndctrlpipe(interface_to_usbdev(dev->iface), 0), GS_USB_BREQ_MODE, @@ -737,9 +744,9 @@ return -ENOMEM; if (do_identify) - imode->mode = GS_CAN_IDENTIFY_ON; + imode->mode = cpu_to_le32(GS_CAN_IDENTIFY_ON); else - imode->mode = GS_CAN_IDENTIFY_OFF; + imode->mode = cpu_to_le32(GS_CAN_IDENTIFY_OFF); rc = usb_control_msg(interface_to_usbdev(dev->iface), usb_sndctrlpipe(interface_to_usbdev(dev->iface), @@ -790,6 +797,7 @@ struct net_device *netdev; int rc; struct gs_device_bt_const *bt_const; + u32 feature; bt_const = kmalloc(sizeof(*bt_const), GFP_KERNEL); if (!bt_const) @@ -830,14 +838,14 @@ /* dev settup */ strcpy(dev->bt_const.name, "gs_usb"); - dev->bt_const.tseg1_min = bt_const->tseg1_min; - dev->bt_const.tseg1_max = bt_const->tseg1_max; - dev->bt_const.tseg2_min = bt_const->tseg2_min; - dev->bt_const.tseg2_max = bt_const->tseg2_max; - dev->bt_const.sjw_max = bt_const->sjw_max; - dev->bt_const.brp_min = bt_const->brp_min; - dev->bt_const.brp_max = bt_const->brp_max; - dev->bt_const.brp_inc = bt_const->brp_inc; + dev->bt_const.tseg1_min = le32_to_cpu(bt_const->tseg1_min); + dev->bt_const.tseg1_max = le32_to_cpu(bt_const->tseg1_max); + dev->bt_const.tseg2_min = le32_to_cpu(bt_const->tseg2_min); + dev->bt_const.tseg2_max = le32_to_cpu(bt_const->tseg2_max); + dev->bt_const.sjw_max = le32_to_cpu(bt_const->sjw_max); + dev->bt_const.brp_min = le32_to_cpu(bt_const->brp_min); + dev->bt_const.brp_max = le32_to_cpu(bt_const->brp_max); + dev->bt_const.brp_inc = le32_to_cpu(bt_const->brp_inc); dev->udev = interface_to_usbdev(intf); dev->iface = intf; @@ -854,28 +862,29 @@ /* can settup */ dev->can.state = CAN_STATE_STOPPED; - dev->can.clock.freq = bt_const->fclk_can; + dev->can.clock.freq = le32_to_cpu(bt_const->fclk_can); dev->can.bittiming_const = &dev->bt_const; dev->can.do_set_bittiming = gs_usb_set_bittiming; dev->can.ctrlmode_supported = 0; - if (bt_const->feature & GS_CAN_FEATURE_LISTEN_ONLY) + feature = le32_to_cpu(bt_const->feature); + if (feature & GS_CAN_FEATURE_LISTEN_ONLY) dev->can.ctrlmode_supported |= CAN_CTRLMODE_LISTENONLY; - if (bt_const->feature & GS_CAN_FEATURE_LOOP_BACK) + if (feature & GS_CAN_FEATURE_LOOP_BACK) dev->can.ctrlmode_supported |= CAN_CTRLMODE_LOOPBACK; - if (bt_const->feature & GS_CAN_FEATURE_TRIPLE_SAMPLE) + if (feature & GS_CAN_FEATURE_TRIPLE_SAMPLE) dev->can.ctrlmode_supported |= CAN_CTRLMODE_3_SAMPLES; - if (bt_const->feature & GS_CAN_FEATURE_ONE_SHOT) + if (feature & GS_CAN_FEATURE_ONE_SHOT) dev->can.ctrlmode_supported |= CAN_CTRLMODE_ONE_SHOT; SET_NETDEV_DEV(netdev, &intf->dev); - if (dconf->sw_version > 1) - if (bt_const->feature & GS_CAN_FEATURE_IDENTIFY) + if (le32_to_cpu(dconf->sw_version) > 1) + if (feature & GS_CAN_FEATURE_IDENTIFY) netdev->ethtool_ops = &gs_usb_ethtool_ops; kfree(bt_const); @@ -910,7 +919,7 @@ if (!hconf) return -ENOMEM; - hconf->byte_order = 0x0000beef; + hconf->byte_order = cpu_to_le32(0x0000beef); /* send host config */ rc = usb_control_msg(interface_to_usbdev(intf), --- linux-azure-5.8-5.8.0.orig/drivers/net/can/usb/kvaser_usb/kvaser_usb_hydra.c +++ linux-azure-5.8-5.8.0/drivers/net/can/usb/kvaser_usb/kvaser_usb_hydra.c @@ -367,7 +367,7 @@ .tseg2_max = 32, .sjw_max = 16, .brp_min = 1, - .brp_max = 4096, + .brp_max = 8192, .brp_inc = 1, }; --- linux-azure-5.8-5.8.0.orig/drivers/net/can/usb/mcba_usb.c +++ linux-azure-5.8-5.8.0/drivers/net/can/usb/mcba_usb.c @@ -326,8 +326,6 @@ if (!ctx) return NETDEV_TX_BUSY; - can_put_echo_skb(skb, priv->netdev, ctx->ndx); - if (cf->can_id & CAN_EFF_FLAG) { /* SIDH | SIDL | EIDH | EIDL * 28 - 21 | 20 19 18 x x x 17 16 | 15 - 8 | 7 - 0 @@ -357,6 +355,8 @@ if (cf->can_id & CAN_RTR_FLAG) usb_msg.dlc |= MCBA_DLC_RTR_MASK; + can_put_echo_skb(skb, priv->netdev, ctx->ndx); + err = mcba_usb_xmit(priv, (struct mcba_usb_msg *)&usb_msg, ctx); if (err) goto xmit_failed; --- linux-azure-5.8-5.8.0.orig/drivers/net/can/usb/peak_usb/pcan_usb_core.c +++ linux-azure-5.8-5.8.0/drivers/net/can/usb/peak_usb/pcan_usb_core.c @@ -130,14 +130,55 @@ /* protect from getting time before setting now */ if (ktime_to_ns(time_ref->tv_host)) { u64 delta_us; + s64 delta_ts = 0; - delta_us = ts - time_ref->ts_dev_2; - if (ts < time_ref->ts_dev_2) - delta_us &= (1 << time_ref->adapter->ts_used_bits) - 1; + /* General case: dev_ts_1 < dev_ts_2 < ts, with: + * + * - dev_ts_1 = previous sync timestamp + * - dev_ts_2 = last sync timestamp + * - ts = event timestamp + * - ts_period = known sync period (theoretical) + * ~ dev_ts2 - dev_ts1 + * *but*: + * + * - time counters wrap (see adapter->ts_used_bits) + * - sometimes, dev_ts_1 < ts < dev_ts2 + * + * "normal" case (sync time counters increase): + * must take into account case when ts wraps (tsw) + * + * < ts_period > < > + * | | | + * ---+--------+----+-------0-+--+--> + * ts_dev_1 | ts_dev_2 | + * ts tsw + */ + if (time_ref->ts_dev_1 < time_ref->ts_dev_2) { + /* case when event time (tsw) wraps */ + if (ts < time_ref->ts_dev_1) + delta_ts = BIT_ULL(time_ref->adapter->ts_used_bits); - delta_us += time_ref->ts_total; + /* Otherwise, sync time counter (ts_dev_2) has wrapped: + * handle case when event time (tsn) hasn't. + * + * < ts_period > < > + * | | | + * ---+--------+--0-+---------+--+--> + * ts_dev_1 | ts_dev_2 | + * tsn ts + */ + } else if (time_ref->ts_dev_1 < ts) { + delta_ts = -BIT_ULL(time_ref->adapter->ts_used_bits); + } - delta_us *= time_ref->adapter->us_per_ts_scale; + /* add delay between last sync and event timestamps */ + delta_ts += (signed int)(ts - time_ref->ts_dev_2); + + /* add time from beginning to last sync */ + delta_ts += time_ref->ts_total; + + /* convert ticks number into microseconds */ + delta_us = delta_ts * time_ref->adapter->us_per_ts_scale; delta_us >>= time_ref->adapter->us_per_ts_shift; *time = ktime_add_us(time_ref->tv_host_0, delta_us); --- linux-azure-5.8-5.8.0.orig/drivers/net/can/usb/peak_usb/pcan_usb_fd.c +++ linux-azure-5.8-5.8.0/drivers/net/can/usb/peak_usb/pcan_usb_fd.c @@ -468,12 +468,18 @@ struct pucan_msg *rx_msg) { struct pucan_rx_msg *rm = (struct pucan_rx_msg *)rx_msg; - struct peak_usb_device *dev = usb_if->dev[pucan_msg_get_channel(rm)]; - struct net_device *netdev = dev->netdev; + struct peak_usb_device *dev; + struct net_device *netdev; struct canfd_frame *cfd; struct sk_buff *skb; const u16 rx_msg_flags = le16_to_cpu(rm->flags); + if (pucan_msg_get_channel(rm) >= ARRAY_SIZE(usb_if->dev)) + return -ENOMEM; + + dev = usb_if->dev[pucan_msg_get_channel(rm)]; + netdev = dev->netdev; + if (rx_msg_flags & PUCAN_MSG_EXT_DATA_LEN) { /* CANFD frame case */ skb = alloc_canfd_skb(netdev, &cfd); @@ -506,11 +512,11 @@ else memcpy(cfd->data, rm->d, cfd->len); - peak_usb_netif_rx(skb, &usb_if->time_ref, le32_to_cpu(rm->ts_low)); - netdev->stats.rx_packets++; netdev->stats.rx_bytes += cfd->len; + peak_usb_netif_rx(skb, &usb_if->time_ref, le32_to_cpu(rm->ts_low)); + return 0; } @@ -519,15 +525,21 @@ struct pucan_msg *rx_msg) { struct pucan_status_msg *sm = (struct pucan_status_msg *)rx_msg; - struct peak_usb_device *dev = usb_if->dev[pucan_stmsg_get_channel(sm)]; - struct pcan_usb_fd_device *pdev = - container_of(dev, struct pcan_usb_fd_device, dev); + struct pcan_usb_fd_device *pdev; enum can_state new_state = CAN_STATE_ERROR_ACTIVE; enum can_state rx_state, tx_state; - struct net_device *netdev = dev->netdev; + struct peak_usb_device *dev; + struct net_device *netdev; struct can_frame *cf; struct sk_buff *skb; + if (pucan_stmsg_get_channel(sm) >= ARRAY_SIZE(usb_if->dev)) + return -ENOMEM; + + dev = usb_if->dev[pucan_stmsg_get_channel(sm)]; + pdev = container_of(dev, struct pcan_usb_fd_device, dev); + netdev = dev->netdev; + /* nothing should be sent while in BUS_OFF state */ if (dev->can.state == CAN_STATE_BUS_OFF) return 0; @@ -566,11 +578,11 @@ if (!skb) return -ENOMEM; - peak_usb_netif_rx(skb, &usb_if->time_ref, le32_to_cpu(sm->ts_low)); - netdev->stats.rx_packets++; netdev->stats.rx_bytes += cf->can_dlc; + peak_usb_netif_rx(skb, &usb_if->time_ref, le32_to_cpu(sm->ts_low)); + return 0; } @@ -579,9 +591,14 @@ struct pucan_msg *rx_msg) { struct pucan_error_msg *er = (struct pucan_error_msg *)rx_msg; - struct peak_usb_device *dev = usb_if->dev[pucan_ermsg_get_channel(er)]; - struct pcan_usb_fd_device *pdev = - container_of(dev, struct pcan_usb_fd_device, dev); + struct pcan_usb_fd_device *pdev; + struct peak_usb_device *dev; + + if (pucan_ermsg_get_channel(er) >= ARRAY_SIZE(usb_if->dev)) + return -EINVAL; + + dev = usb_if->dev[pucan_ermsg_get_channel(er)]; + pdev = container_of(dev, struct pcan_usb_fd_device, dev); /* keep a trace of tx and rx error counters for later use */ pdev->bec.txerr = er->tx_err_cnt; @@ -595,11 +612,17 @@ struct pucan_msg *rx_msg) { struct pcan_ufd_ovr_msg *ov = (struct pcan_ufd_ovr_msg *)rx_msg; - struct peak_usb_device *dev = usb_if->dev[pufd_omsg_get_channel(ov)]; - struct net_device *netdev = dev->netdev; + struct peak_usb_device *dev; + struct net_device *netdev; struct can_frame *cf; struct sk_buff *skb; + if (pufd_omsg_get_channel(ov) >= ARRAY_SIZE(usb_if->dev)) + return -EINVAL; + + dev = usb_if->dev[pufd_omsg_get_channel(ov)]; + netdev = dev->netdev; + /* allocate an skb to store the error frame */ skb = alloc_can_err_skb(netdev, &cf); if (!skb) @@ -716,6 +739,9 @@ u16 tx_msg_size, tx_msg_flags; u8 can_dlc; + if (cfd->len > CANFD_MAX_DLEN) + return -EINVAL; + tx_msg_size = ALIGN(sizeof(struct pucan_tx_msg) + cfd->len, 4); tx_msg->size = cpu_to_le16(tx_msg_size); tx_msg->type = cpu_to_le16(PUCAN_MSG_CAN_TX); --- linux-azure-5.8-5.8.0.orig/drivers/net/can/vxcan.c +++ linux-azure-5.8-5.8.0/drivers/net/can/vxcan.c @@ -39,6 +39,7 @@ struct net_device *peer; struct canfd_frame *cfd = (struct canfd_frame *)skb->data; struct net_device_stats *peerstats, *srcstats = &dev->stats; + u8 len; if (can_dropped_invalid_skb(dev, skb)) return NETDEV_TX_OK; @@ -61,12 +62,13 @@ skb->dev = peer; skb->ip_summed = CHECKSUM_UNNECESSARY; + len = cfd->len; if (netif_rx_ni(skb) == NET_RX_SUCCESS) { srcstats->tx_packets++; - srcstats->tx_bytes += cfd->len; + srcstats->tx_bytes += len; peerstats = &peer->stats; peerstats->rx_packets++; - peerstats->rx_bytes += cfd->len; + peerstats->rx_bytes += len; } out_unlock: --- linux-azure-5.8-5.8.0.orig/drivers/net/can/xilinx_can.c +++ linux-azure-5.8-5.8.0/drivers/net/can/xilinx_can.c @@ -1391,7 +1391,7 @@ if (ret < 0) { netdev_err(ndev, "%s: pm_runtime_get failed(%d)\n", __func__, ret); - return ret; + goto err; } ret = request_irq(ndev->irq, xcan_interrupt, priv->irq_flags, @@ -1475,6 +1475,7 @@ if (ret < 0) { netdev_err(ndev, "%s: pm_runtime_get failed(%d)\n", __func__, ret); + pm_runtime_put(priv->dev); return ret; } @@ -1789,7 +1790,7 @@ if (ret < 0) { netdev_err(ndev, "%s: pm_runtime_get failed(%d)\n", __func__, ret); - goto err_pmdisable; + goto err_disableclks; } if (priv->read_reg(priv, XCAN_SR_OFFSET) != XCAN_SR_CONFIG_MASK) { @@ -1824,7 +1825,6 @@ err_disableclks: pm_runtime_put(priv->dev); -err_pmdisable: pm_runtime_disable(&pdev->dev); err_free: free_candev(ndev); --- linux-azure-5.8-5.8.0.orig/drivers/net/dsa/b53/b53_common.c +++ linux-azure-5.8-5.8.0/drivers/net/dsa/b53/b53_common.c @@ -1362,7 +1362,7 @@ !(vlan->flags & BRIDGE_VLAN_INFO_UNTAGGED)) return -EINVAL; - if (vlan->vid_end > dev->num_vlans) + if (vlan->vid_end >= dev->num_vlans) return -ERANGE; b53_enable_vlan(dev, true, ds->vlan_filtering); @@ -1555,6 +1555,8 @@ return ret; switch (ret) { + case -ETIMEDOUT: + return ret; case -ENOSPC: dev_dbg(dev->dev, "{%pM,%.4d} no space left in ARL\n", addr, vid); --- linux-azure-5.8-5.8.0.orig/drivers/net/dsa/bcm_sf2.c +++ linux-azure-5.8-5.8.0/drivers/net/dsa/bcm_sf2.c @@ -442,15 +442,19 @@ /* Find our integrated MDIO bus node */ dn = of_find_compatible_node(NULL, NULL, "brcm,unimac-mdio"); priv->master_mii_bus = of_mdio_find_bus(dn); - if (!priv->master_mii_bus) + if (!priv->master_mii_bus) { + of_node_put(dn); return -EPROBE_DEFER; + } get_device(&priv->master_mii_bus->dev); priv->master_mii_dn = dn; priv->slave_mii_bus = devm_mdiobus_alloc(ds->dev); - if (!priv->slave_mii_bus) + if (!priv->slave_mii_bus) { + of_node_put(dn); return -ENOMEM; + } priv->slave_mii_bus->priv = priv; priv->slave_mii_bus->name = "sf2 slave mii"; --- linux-azure-5.8-5.8.0.orig/drivers/net/dsa/lantiq_gswip.c +++ linux-azure-5.8-5.8.0/drivers/net/dsa/lantiq_gswip.c @@ -26,6 +26,7 @@ */ #include +#include #include #include #include @@ -91,9 +92,7 @@ GSWIP_MDIO_PHY_FDUP_MASK) /* GSWIP MII Registers */ -#define GSWIP_MII_CFG0 0x00 -#define GSWIP_MII_CFG1 0x02 -#define GSWIP_MII_CFG5 0x04 +#define GSWIP_MII_CFGp(p) (0x2 * (p)) #define GSWIP_MII_CFG_EN BIT(14) #define GSWIP_MII_CFG_LDCLKDIS BIT(12) #define GSWIP_MII_CFG_MODE_MIIP 0x0 @@ -391,17 +390,9 @@ static void gswip_mii_mask_cfg(struct gswip_priv *priv, u32 clear, u32 set, int port) { - switch (port) { - case 0: - gswip_mii_mask(priv, clear, set, GSWIP_MII_CFG0); - break; - case 1: - gswip_mii_mask(priv, clear, set, GSWIP_MII_CFG1); - break; - case 5: - gswip_mii_mask(priv, clear, set, GSWIP_MII_CFG5); - break; - } + /* There's no MII_CFG register for the CPU port */ + if (!dsa_is_cpu_port(priv->ds, port)) + gswip_mii_mask(priv, clear, set, GSWIP_MII_CFGp(port)); } static void gswip_mii_mask_pcdu(struct gswip_priv *priv, u32 clear, u32 set, @@ -805,9 +796,8 @@ gswip_mdio_mask(priv, 0xff, 0x09, GSWIP_MDIO_MDC_CFG1); /* Disable the xMII link */ - gswip_mii_mask_cfg(priv, GSWIP_MII_CFG_EN, 0, 0); - gswip_mii_mask_cfg(priv, GSWIP_MII_CFG_EN, 0, 1); - gswip_mii_mask_cfg(priv, GSWIP_MII_CFG_EN, 0, 5); + for (i = 0; i < priv->hw_info->max_ports; i++) + gswip_mii_mask_cfg(priv, GSWIP_MII_CFG_EN, 0, i); /* enable special tag insertion on cpu port */ gswip_switch_mask(priv, 0, GSWIP_FDMA_PCTRL_STEN, @@ -1430,11 +1420,12 @@ phylink_set(mask, Pause); phylink_set(mask, Asym_Pause); - /* With the exclusion of MII and Reverse MII, we support Gigabit, - * including Half duplex + /* With the exclusion of MII, Reverse MII and Reduced MII, we + * support Gigabit, including Half duplex */ if (state->interface != PHY_INTERFACE_MODE_MII && - state->interface != PHY_INTERFACE_MODE_REVMII) { + state->interface != PHY_INTERFACE_MODE_REVMII && + state->interface != PHY_INTERFACE_MODE_RMII) { phylink_set(mask, 1000baseT_Full); phylink_set(mask, 1000baseT_Half); } @@ -1524,9 +1515,7 @@ { struct gswip_priv *priv = ds->priv; - /* Enable the xMII interface only for the external PHY */ - if (interface != PHY_INTERFACE_MODE_INTERNAL) - gswip_mii_mask_cfg(priv, 0, GSWIP_MII_CFG_EN, port); + gswip_mii_mask_cfg(priv, 0, GSWIP_MII_CFG_EN, port); } static void gswip_get_strings(struct dsa_switch *ds, int port, u32 stringset, @@ -1821,6 +1810,16 @@ i++; } + /* The standalone PHY11G requires 300ms to be fully + * initialized and ready for any MDIO communication after being + * taken out of reset. For the SoC-internal GPHY variant there + * is no (known) documentation for the minimum time after a + * reset. Use the same value as for the standalone variant as + * some users have reported internal PHYs not being detected + * without any delay. + */ + msleep(300); + return 0; remove_gphy: --- linux-azure-5.8-5.8.0.orig/drivers/net/dsa/microchip/ksz8795.c +++ linux-azure-5.8-5.8.0/drivers/net/dsa/microchip/ksz8795.c @@ -1269,7 +1269,7 @@ } /* set the real number of ports */ - dev->ds->num_ports = dev->port_cnt; + dev->ds->num_ports = dev->port_cnt + 1; return 0; } --- linux-azure-5.8-5.8.0.orig/drivers/net/dsa/microchip/ksz_common.c +++ linux-azure-5.8-5.8.0/drivers/net/dsa/microchip/ksz_common.c @@ -103,14 +103,8 @@ INIT_DELAYED_WORK(&dev->mib_read, ksz_mib_read_work); - /* Read MIB counters every 30 seconds to avoid overflow. */ - dev->mib_read_interval = msecs_to_jiffies(30000); - for (i = 0; i < dev->mib_port_cnt; i++) dev->dev_ops->port_init_cnt(dev, i); - - /* Start the timer 2 seconds later. */ - schedule_delayed_work(&dev->mib_read, msecs_to_jiffies(2000)); } EXPORT_SYMBOL_GPL(ksz_init_mib_timer); @@ -144,7 +138,9 @@ /* Read all MIB counters when the link is going down. */ if (!phydev->link) { p->read = true; - schedule_delayed_work(&dev->mib_read, 0); + /* timer started */ + if (dev->mib_read_interval) + schedule_delayed_work(&dev->mib_read, 0); } mutex_lock(&dev->dev_mutex); if (!phydev->link) @@ -460,6 +456,12 @@ return ret; } + /* Read MIB counters every 30 seconds to avoid overflow. */ + dev->mib_read_interval = msecs_to_jiffies(30000); + + /* Start the MIB timer. */ + schedule_delayed_work(&dev->mib_read, 0); + return 0; } EXPORT_SYMBOL(ksz_switch_register); --- linux-azure-5.8-5.8.0.orig/drivers/net/dsa/mt7530.c +++ linux-azure-5.8-5.8.0/drivers/net/dsa/mt7530.c @@ -1501,7 +1501,7 @@ phylink_set(mask, 100baseT_Full); if (state->interface != PHY_INTERFACE_MODE_MII) { - phylink_set(mask, 1000baseT_Half); + /* This switch only supports 1G full-duplex. */ phylink_set(mask, 1000baseT_Full); if (port == 5) phylink_set(mask, 1000baseX_Full); --- linux-azure-5.8-5.8.0.orig/drivers/net/dsa/mv88e6xxx/chip.c +++ linux-azure-5.8-5.8.0/drivers/net/dsa/mv88e6xxx/chip.c @@ -1671,7 +1671,11 @@ if (!entry.portvec) entry.state = 0; } else { - entry.portvec |= BIT(port); + if (state == MV88E6XXX_G1_ATU_DATA_STATE_UC_STATIC) + entry.portvec = BIT(port); + else + entry.portvec |= BIT(port); + entry.state = state; } @@ -2299,6 +2303,8 @@ usleep_range(10000, 20000); gpiod_set_value_cansleep(gpiod, 0); usleep_range(10000, 20000); + + mv88e6xxx_g1_wait_eeprom_done(chip); } } @@ -3485,7 +3491,6 @@ .port_set_frame_mode = mv88e6351_port_set_frame_mode, .port_set_egress_floods = mv88e6352_port_set_egress_floods, .port_set_ether_type = mv88e6351_port_set_ether_type, - .port_set_jumbo_size = mv88e6165_port_set_jumbo_size, .port_egress_rate_limiting = mv88e6095_port_egress_rate_limiting, .port_pause_limit = mv88e6097_port_pause_limit, .port_disable_learn_limit = mv88e6xxx_port_disable_learn_limit, --- linux-azure-5.8-5.8.0.orig/drivers/net/dsa/mv88e6xxx/global1.c +++ linux-azure-5.8-5.8.0/drivers/net/dsa/mv88e6xxx/global1.c @@ -75,6 +75,37 @@ return mv88e6xxx_g1_wait_bit(chip, MV88E6XXX_G1_STS, bit, 1); } +void mv88e6xxx_g1_wait_eeprom_done(struct mv88e6xxx_chip *chip) +{ + const unsigned long timeout = jiffies + 1 * HZ; + u16 val; + int err; + + /* Wait up to 1 second for the switch to finish reading the + * EEPROM. + */ + while (time_before(jiffies, timeout)) { + err = mv88e6xxx_g1_read(chip, MV88E6XXX_G1_STS, &val); + if (err) { + dev_err(chip->dev, "Error reading status"); + return; + } + + /* If the switch is still resetting, it may not + * respond on the bus, and so MDIO read returns + * 0xffff. Differentiate between that, and waiting for + * the EEPROM to be done by bit 0 being set. + */ + if (val != 0xffff && + val & BIT(MV88E6XXX_G1_STS_IRQ_EEPROM_DONE)) + return; + + usleep_range(1000, 2000); + } + + dev_err(chip->dev, "Timeout waiting for EEPROM done"); +} + /* Offset 0x01: Switch MAC Address Register Bytes 0 & 1 * Offset 0x02: Switch MAC Address Register Bytes 2 & 3 * Offset 0x03: Switch MAC Address Register Bytes 4 & 5 --- linux-azure-5.8-5.8.0.orig/drivers/net/dsa/mv88e6xxx/global1.h +++ linux-azure-5.8-5.8.0/drivers/net/dsa/mv88e6xxx/global1.h @@ -278,6 +278,7 @@ int mv88e6185_g1_reset(struct mv88e6xxx_chip *chip); int mv88e6352_g1_reset(struct mv88e6xxx_chip *chip); int mv88e6250_g1_reset(struct mv88e6xxx_chip *chip); +void mv88e6xxx_g1_wait_eeprom_done(struct mv88e6xxx_chip *chip); int mv88e6185_g1_ppu_enable(struct mv88e6xxx_chip *chip); int mv88e6185_g1_ppu_disable(struct mv88e6xxx_chip *chip); --- linux-azure-5.8-5.8.0.orig/drivers/net/dsa/mv88e6xxx/global1_vtu.c +++ linux-azure-5.8-5.8.0/drivers/net/dsa/mv88e6xxx/global1_vtu.c @@ -125,11 +125,9 @@ * Offset 0x08: VTU/STU Data Register 2 * Offset 0x09: VTU/STU Data Register 3 */ - -static int mv88e6185_g1_vtu_data_read(struct mv88e6xxx_chip *chip, - struct mv88e6xxx_vtu_entry *entry) +static int mv88e6185_g1_vtu_stu_data_read(struct mv88e6xxx_chip *chip, + u16 *regs) { - u16 regs[3]; int i; /* Read all 3 VTU/STU Data registers */ @@ -142,12 +140,45 @@ return err; } - /* Extract MemberTag and PortState data */ + return 0; +} + +static int mv88e6185_g1_vtu_data_read(struct mv88e6xxx_chip *chip, + struct mv88e6xxx_vtu_entry *entry) +{ + u16 regs[3]; + int err; + int i; + + err = mv88e6185_g1_vtu_stu_data_read(chip, regs); + if (err) + return err; + + /* Extract MemberTag data */ for (i = 0; i < mv88e6xxx_num_ports(chip); ++i) { unsigned int member_offset = (i % 4) * 4; - unsigned int state_offset = member_offset + 2; entry->member[i] = (regs[i / 4] >> member_offset) & 0x3; + } + + return 0; +} + +static int mv88e6185_g1_stu_data_read(struct mv88e6xxx_chip *chip, + struct mv88e6xxx_vtu_entry *entry) +{ + u16 regs[3]; + int err; + int i; + + err = mv88e6185_g1_vtu_stu_data_read(chip, regs); + if (err) + return err; + + /* Extract PortState data */ + for (i = 0; i < mv88e6xxx_num_ports(chip); ++i) { + unsigned int state_offset = (i % 4) * 4 + 2; + entry->state[i] = (regs[i / 4] >> state_offset) & 0x3; } @@ -320,6 +351,10 @@ if (err) return err; + err = mv88e6185_g1_stu_data_read(chip, entry); + if (err) + return err; + /* VTU DBNum[3:0] are located in VTU Operation 3:0 * VTU DBNum[5:4] are located in VTU Operation 9:8 */ @@ -349,6 +384,10 @@ if (err) return err; + err = mv88e6185_g1_stu_data_read(chip, entry); + if (err) + return err; + /* VTU DBNum[3:0] are located in VTU Operation 3:0 * VTU DBNum[7:4] are located in VTU Operation 11:8 */ @@ -374,16 +413,20 @@ return err; if (entry->valid) { - /* Fetch (and mask) VLAN PortState data from the STU */ - err = mv88e6xxx_g1_vtu_stu_get(chip, entry); + err = mv88e6185_g1_vtu_data_read(chip, entry); if (err) return err; - err = mv88e6185_g1_vtu_data_read(chip, entry); + err = mv88e6xxx_g1_vtu_fid_read(chip, entry); if (err) return err; - err = mv88e6xxx_g1_vtu_fid_read(chip, entry); + /* Fetch VLAN PortState data from the STU */ + err = mv88e6xxx_g1_vtu_stu_get(chip, entry); + if (err) + return err; + + err = mv88e6185_g1_stu_data_read(chip, entry); if (err) return err; } --- linux-azure-5.8-5.8.0.orig/drivers/net/dsa/ocelot/felix.c +++ linux-azure-5.8-5.8.0/drivers/net/dsa/ocelot/felix.c @@ -613,12 +613,11 @@ struct ocelot *ocelot = ds->priv; struct felix *felix = ocelot_to_felix(ocelot); - if (felix->info->mdio_bus_free) - felix->info->mdio_bus_free(ocelot); - ocelot_deinit_timestamp(ocelot); - /* stop workqueue thread */ ocelot_deinit(ocelot); + + if (felix->info->mdio_bus_free) + felix->info->mdio_bus_free(ocelot); } static int felix_hwtstamp_get(struct dsa_switch *ds, int port, --- linux-azure-5.8-5.8.0.orig/drivers/net/dsa/ocelot/felix_vsc9959.c +++ linux-azure-5.8-5.8.0/drivers/net/dsa/ocelot/felix_vsc9959.c @@ -607,17 +607,17 @@ [VCAP_IS2_HK_DIP_EQ_SIP] = {118, 1}, /* IP4_TCP_UDP (TYPE=100) */ [VCAP_IS2_HK_TCP] = {119, 1}, - [VCAP_IS2_HK_L4_SPORT] = {120, 16}, - [VCAP_IS2_HK_L4_DPORT] = {136, 16}, + [VCAP_IS2_HK_L4_DPORT] = {120, 16}, + [VCAP_IS2_HK_L4_SPORT] = {136, 16}, [VCAP_IS2_HK_L4_RNG] = {152, 8}, [VCAP_IS2_HK_L4_SPORT_EQ_DPORT] = {160, 1}, [VCAP_IS2_HK_L4_SEQUENCE_EQ0] = {161, 1}, - [VCAP_IS2_HK_L4_URG] = {162, 1}, - [VCAP_IS2_HK_L4_ACK] = {163, 1}, - [VCAP_IS2_HK_L4_PSH] = {164, 1}, - [VCAP_IS2_HK_L4_RST] = {165, 1}, - [VCAP_IS2_HK_L4_SYN] = {166, 1}, - [VCAP_IS2_HK_L4_FIN] = {167, 1}, + [VCAP_IS2_HK_L4_FIN] = {162, 1}, + [VCAP_IS2_HK_L4_SYN] = {163, 1}, + [VCAP_IS2_HK_L4_RST] = {164, 1}, + [VCAP_IS2_HK_L4_PSH] = {165, 1}, + [VCAP_IS2_HK_L4_ACK] = {166, 1}, + [VCAP_IS2_HK_L4_URG] = {167, 1}, [VCAP_IS2_HK_L4_1588_DOM] = {168, 8}, [VCAP_IS2_HK_L4_1588_VER] = {176, 4}, /* IP4_OTHER (TYPE=101) */ @@ -1105,8 +1105,21 @@ } } +/* Watermark encode + * Bit 8: Unit; 0:1, 1:16 + * Bit 7-0: Value to be multiplied with unit + */ +static u16 vsc9959_wm_enc(u16 value) +{ + if (value >= BIT(8)) + return BIT(8) | (value / 16); + + return value; +} + static const struct ocelot_ops vsc9959_ops = { .reset = vsc9959_reset, + .wm_enc = vsc9959_wm_enc, }; static int vsc9959_mdio_bus_alloc(struct ocelot *ocelot) @@ -1215,8 +1228,28 @@ static void vsc9959_sched_speed_set(struct ocelot *ocelot, int port, u32 speed) { + u8 tas_speed; + + switch (speed) { + case SPEED_10: + tas_speed = OCELOT_SPEED_10; + break; + case SPEED_100: + tas_speed = OCELOT_SPEED_100; + break; + case SPEED_1000: + tas_speed = OCELOT_SPEED_1000; + break; + case SPEED_2500: + tas_speed = OCELOT_SPEED_2500; + break; + default: + tas_speed = OCELOT_SPEED_1000; + break; + } + ocelot_rmw_rix(ocelot, - QSYS_TAG_CONFIG_LINK_SPEED(speed), + QSYS_TAG_CONFIG_LINK_SPEED(tas_speed), QSYS_TAG_CONFIG_LINK_SPEED_M, QSYS_TAG_CONFIG, port); } --- linux-azure-5.8-5.8.0.orig/drivers/net/dsa/qca/ar9331.c +++ linux-azure-5.8-5.8.0/drivers/net/dsa/qca/ar9331.c @@ -160,6 +160,8 @@ struct dsa_switch ds; struct dsa_switch_ops ops; struct irq_domain *irqdomain; + u32 irq_mask; + struct mutex lock_irq; struct mii_bus *mbus; /* mdio master */ struct mii_bus *sbus; /* mdio slave */ struct regmap *regmap; @@ -518,32 +520,44 @@ static void ar9331_sw_mask_irq(struct irq_data *d) { struct ar9331_sw_priv *priv = irq_data_get_irq_chip_data(d); - struct regmap *regmap = priv->regmap; - int ret; - ret = regmap_update_bits(regmap, AR9331_SW_REG_GINT_MASK, - AR9331_SW_GINT_PHY_INT, 0); - if (ret) - dev_err(priv->dev, "could not mask IRQ\n"); + priv->irq_mask = 0; } static void ar9331_sw_unmask_irq(struct irq_data *d) { struct ar9331_sw_priv *priv = irq_data_get_irq_chip_data(d); + + priv->irq_mask = AR9331_SW_GINT_PHY_INT; +} + +static void ar9331_sw_irq_bus_lock(struct irq_data *d) +{ + struct ar9331_sw_priv *priv = irq_data_get_irq_chip_data(d); + + mutex_lock(&priv->lock_irq); +} + +static void ar9331_sw_irq_bus_sync_unlock(struct irq_data *d) +{ + struct ar9331_sw_priv *priv = irq_data_get_irq_chip_data(d); struct regmap *regmap = priv->regmap; int ret; ret = regmap_update_bits(regmap, AR9331_SW_REG_GINT_MASK, - AR9331_SW_GINT_PHY_INT, - AR9331_SW_GINT_PHY_INT); + AR9331_SW_GINT_PHY_INT, priv->irq_mask); if (ret) - dev_err(priv->dev, "could not unmask IRQ\n"); + dev_err(priv->dev, "failed to change IRQ mask\n"); + + mutex_unlock(&priv->lock_irq); } static struct irq_chip ar9331_sw_irq_chip = { .name = AR9331_SW_NAME, .irq_mask = ar9331_sw_mask_irq, .irq_unmask = ar9331_sw_unmask_irq, + .irq_bus_lock = ar9331_sw_irq_bus_lock, + .irq_bus_sync_unlock = ar9331_sw_irq_bus_sync_unlock, }; static int ar9331_sw_irq_map(struct irq_domain *domain, unsigned int irq, @@ -582,6 +596,7 @@ return irq ? irq : -EINVAL; } + mutex_init(&priv->lock_irq); ret = devm_request_threaded_irq(dev, irq, NULL, ar9331_sw_irq, IRQF_ONESHOT, AR9331_SW_NAME, priv); if (ret) { --- linux-azure-5.8-5.8.0.orig/drivers/net/dsa/realtek-smi-core.h +++ linux-azure-5.8-5.8.0/drivers/net/dsa/realtek-smi-core.h @@ -25,6 +25,9 @@ const char *name; }; +/** + * struct rtl8366_vlan_mc - Virtual LAN member configuration + */ struct rtl8366_vlan_mc { u16 vid; u16 untag; @@ -119,7 +122,6 @@ int rtl8366_mc_is_used(struct realtek_smi *smi, int mc_index, int *used); int rtl8366_set_vlan(struct realtek_smi *smi, int vid, u32 member, u32 untag, u32 fid); -int rtl8366_get_pvid(struct realtek_smi *smi, int port, int *val); int rtl8366_set_pvid(struct realtek_smi *smi, unsigned int port, unsigned int vid); int rtl8366_enable_vlan4k(struct realtek_smi *smi, bool enable); --- linux-azure-5.8-5.8.0.orig/drivers/net/dsa/rtl8366.c +++ linux-azure-5.8-5.8.0/drivers/net/dsa/rtl8366.c @@ -36,113 +36,66 @@ } EXPORT_SYMBOL_GPL(rtl8366_mc_is_used); -int rtl8366_set_vlan(struct realtek_smi *smi, int vid, u32 member, - u32 untag, u32 fid) +/** + * rtl8366_obtain_mc() - retrieve or allocate a VLAN member configuration + * @smi: the Realtek SMI device instance + * @vid: the VLAN ID to look up or allocate + * @vlanmc: the pointer will be assigned to a pointer to a valid member config + * if successful + * @return: index of a new member config or negative error number + */ +static int rtl8366_obtain_mc(struct realtek_smi *smi, int vid, + struct rtl8366_vlan_mc *vlanmc) { struct rtl8366_vlan_4k vlan4k; int ret; int i; - /* Update the 4K table */ - ret = smi->ops->get_vlan_4k(smi, vid, &vlan4k); - if (ret) - return ret; - - vlan4k.member = member; - vlan4k.untag = untag; - vlan4k.fid = fid; - ret = smi->ops->set_vlan_4k(smi, &vlan4k); - if (ret) - return ret; - - /* Try to find an existing MC entry for this VID */ + /* Try to find an existing member config entry for this VID */ for (i = 0; i < smi->num_vlan_mc; i++) { - struct rtl8366_vlan_mc vlanmc; - - ret = smi->ops->get_vlan_mc(smi, i, &vlanmc); - if (ret) + ret = smi->ops->get_vlan_mc(smi, i, vlanmc); + if (ret) { + dev_err(smi->dev, "error searching for VLAN MC %d for VID %d\n", + i, vid); return ret; - - if (vid == vlanmc.vid) { - /* update the MC entry */ - vlanmc.member = member; - vlanmc.untag = untag; - vlanmc.fid = fid; - - ret = smi->ops->set_vlan_mc(smi, i, &vlanmc); - break; } - } - - return ret; -} -EXPORT_SYMBOL_GPL(rtl8366_set_vlan); -int rtl8366_get_pvid(struct realtek_smi *smi, int port, int *val) -{ - struct rtl8366_vlan_mc vlanmc; - int ret; - int index; - - ret = smi->ops->get_mc_index(smi, port, &index); - if (ret) - return ret; - - ret = smi->ops->get_vlan_mc(smi, index, &vlanmc); - if (ret) - return ret; - - *val = vlanmc.vid; - return 0; -} -EXPORT_SYMBOL_GPL(rtl8366_get_pvid); - -int rtl8366_set_pvid(struct realtek_smi *smi, unsigned int port, - unsigned int vid) -{ - struct rtl8366_vlan_mc vlanmc; - struct rtl8366_vlan_4k vlan4k; - int ret; - int i; - - /* Try to find an existing MC entry for this VID */ - for (i = 0; i < smi->num_vlan_mc; i++) { - ret = smi->ops->get_vlan_mc(smi, i, &vlanmc); - if (ret) - return ret; - - if (vid == vlanmc.vid) { - ret = smi->ops->set_vlan_mc(smi, i, &vlanmc); - if (ret) - return ret; - - ret = smi->ops->set_mc_index(smi, port, i); - return ret; - } + if (vid == vlanmc->vid) + return i; } /* We have no MC entry for this VID, try to find an empty one */ for (i = 0; i < smi->num_vlan_mc; i++) { - ret = smi->ops->get_vlan_mc(smi, i, &vlanmc); - if (ret) + ret = smi->ops->get_vlan_mc(smi, i, vlanmc); + if (ret) { + dev_err(smi->dev, "error searching for VLAN MC %d for VID %d\n", + i, vid); return ret; + } - if (vlanmc.vid == 0 && vlanmc.member == 0) { + if (vlanmc->vid == 0 && vlanmc->member == 0) { /* Update the entry from the 4K table */ ret = smi->ops->get_vlan_4k(smi, vid, &vlan4k); - if (ret) + if (ret) { + dev_err(smi->dev, "error looking for 4K VLAN MC %d for VID %d\n", + i, vid); return ret; + } - vlanmc.vid = vid; - vlanmc.member = vlan4k.member; - vlanmc.untag = vlan4k.untag; - vlanmc.fid = vlan4k.fid; - ret = smi->ops->set_vlan_mc(smi, i, &vlanmc); - if (ret) + vlanmc->vid = vid; + vlanmc->member = vlan4k.member; + vlanmc->untag = vlan4k.untag; + vlanmc->fid = vlan4k.fid; + ret = smi->ops->set_vlan_mc(smi, i, vlanmc); + if (ret) { + dev_err(smi->dev, "unable to set/update VLAN MC %d for VID %d\n", + i, vid); return ret; + } - ret = smi->ops->set_mc_index(smi, port, i); - return ret; + dev_dbg(smi->dev, "created new MC at index %d for VID %d\n", + i, vid); + return i; } } @@ -160,24 +113,110 @@ if (ret) return ret; - vlanmc.vid = vid; - vlanmc.member = vlan4k.member; - vlanmc.untag = vlan4k.untag; - vlanmc.fid = vlan4k.fid; - ret = smi->ops->set_vlan_mc(smi, i, &vlanmc); - if (ret) + vlanmc->vid = vid; + vlanmc->member = vlan4k.member; + vlanmc->untag = vlan4k.untag; + vlanmc->fid = vlan4k.fid; + ret = smi->ops->set_vlan_mc(smi, i, vlanmc); + if (ret) { + dev_err(smi->dev, "unable to set/update VLAN MC %d for VID %d\n", + i, vid); return ret; - - ret = smi->ops->set_mc_index(smi, port, i); - return ret; + } + dev_dbg(smi->dev, "recycled MC at index %i for VID %d\n", + i, vid); + return i; } } - dev_err(smi->dev, - "all VLAN member configurations are in use\n"); - + dev_err(smi->dev, "all VLAN member configurations are in use\n"); return -ENOSPC; } + +int rtl8366_set_vlan(struct realtek_smi *smi, int vid, u32 member, + u32 untag, u32 fid) +{ + struct rtl8366_vlan_mc vlanmc; + struct rtl8366_vlan_4k vlan4k; + int mc; + int ret; + + if (!smi->ops->is_vlan_valid(smi, vid)) + return -EINVAL; + + dev_dbg(smi->dev, + "setting VLAN%d 4k members: 0x%02x, untagged: 0x%02x\n", + vid, member, untag); + + /* Update the 4K table */ + ret = smi->ops->get_vlan_4k(smi, vid, &vlan4k); + if (ret) + return ret; + + vlan4k.member |= member; + vlan4k.untag |= untag; + vlan4k.fid = fid; + ret = smi->ops->set_vlan_4k(smi, &vlan4k); + if (ret) + return ret; + + dev_dbg(smi->dev, + "resulting VLAN%d 4k members: 0x%02x, untagged: 0x%02x\n", + vid, vlan4k.member, vlan4k.untag); + + /* Find or allocate a member config for this VID */ + ret = rtl8366_obtain_mc(smi, vid, &vlanmc); + if (ret < 0) + return ret; + mc = ret; + + /* Update the MC entry */ + vlanmc.member |= member; + vlanmc.untag |= untag; + vlanmc.fid = fid; + + /* Commit updates to the MC entry */ + ret = smi->ops->set_vlan_mc(smi, mc, &vlanmc); + if (ret) + dev_err(smi->dev, "failed to commit changes to VLAN MC index %d for VID %d\n", + mc, vid); + else + dev_dbg(smi->dev, + "resulting VLAN%d MC members: 0x%02x, untagged: 0x%02x\n", + vid, vlanmc.member, vlanmc.untag); + + return ret; +} +EXPORT_SYMBOL_GPL(rtl8366_set_vlan); + +int rtl8366_set_pvid(struct realtek_smi *smi, unsigned int port, + unsigned int vid) +{ + struct rtl8366_vlan_mc vlanmc; + int mc; + int ret; + + if (!smi->ops->is_vlan_valid(smi, vid)) + return -EINVAL; + + /* Find or allocate a member config for this VID */ + ret = rtl8366_obtain_mc(smi, vid, &vlanmc); + if (ret < 0) + return ret; + mc = ret; + + ret = smi->ops->set_mc_index(smi, port, mc); + if (ret) { + dev_err(smi->dev, "set PVID: failed to set MC index %d for port %d\n", + mc, port); + return ret; + } + + dev_dbg(smi->dev, "set PVID: the PVID for port %d set to %d using existing MC index %d\n", + port, vid, mc); + + return 0; +} EXPORT_SYMBOL_GPL(rtl8366_set_pvid); int rtl8366_enable_vlan4k(struct realtek_smi *smi, bool enable) @@ -376,7 +415,8 @@ if (!smi->ops->is_vlan_valid(smi, vid)) return; - dev_info(smi->dev, "add VLAN on port %d, %s, %s\n", + dev_info(smi->dev, "add VLAN %d on port %d, %s, %s\n", + vlan->vid_begin, port, untagged ? "untagged" : "tagged", pvid ? " PVID" : "no PVID"); @@ -384,36 +424,31 @@ if (dsa_is_dsa_port(ds, port) || dsa_is_cpu_port(ds, port)) dev_err(smi->dev, "port is DSA or CPU port\n"); - for (vid = vlan->vid_begin; vid <= vlan->vid_end; ++vid) { - int pvid_val = 0; - - dev_info(smi->dev, "add VLAN %04x\n", vid); + for (vid = vlan->vid_begin; vid <= vlan->vid_end; vid++) { member |= BIT(port); if (untagged) untag |= BIT(port); - /* To ensure that we have a valid MC entry for this VLAN, - * initialize the port VLAN ID here. - */ - ret = rtl8366_get_pvid(smi, port, &pvid_val); - if (ret < 0) { - dev_err(smi->dev, "could not lookup PVID for port %d\n", - port); - return; - } - if (pvid_val == 0) { - ret = rtl8366_set_pvid(smi, port, vid); - if (ret < 0) - return; - } - } + ret = rtl8366_set_vlan(smi, vid, member, untag, 0); + if (ret) + dev_err(smi->dev, + "failed to set up VLAN %04x", + vid); - ret = rtl8366_set_vlan(smi, port, member, untag, 0); - if (ret) - dev_err(smi->dev, - "failed to set up VLAN %04x", - vid); + if (!pvid) + continue; + + ret = rtl8366_set_pvid(smi, port, vid); + if (ret) + dev_err(smi->dev, + "failed to set PVID on port %d to VLAN %04x", + port, vid); + + if (!ret) + dev_dbg(smi->dev, "VLAN add: added VLAN %d with PVID on port %d\n", + vid, port); + } } EXPORT_SYMBOL_GPL(rtl8366_vlan_add); @@ -439,13 +474,19 @@ return ret; if (vid == vlanmc.vid) { - /* clear VLAN member configurations */ - vlanmc.vid = 0; - vlanmc.priority = 0; - vlanmc.member = 0; - vlanmc.untag = 0; - vlanmc.fid = 0; - + /* Remove this port from the VLAN */ + vlanmc.member &= ~BIT(port); + vlanmc.untag &= ~BIT(port); + /* + * If no ports are members of this VLAN + * anymore then clear the whole member + * config so it can be reused. + */ + if (!vlanmc.member && vlanmc.untag) { + vlanmc.vid = 0; + vlanmc.priority = 0; + vlanmc.fid = 0; + } ret = smi->ops->set_vlan_mc(smi, i, &vlanmc); if (ret) { dev_err(smi->dev, --- linux-azure-5.8-5.8.0.orig/drivers/net/dsa/rtl8366rb.c +++ linux-azure-5.8-5.8.0/drivers/net/dsa/rtl8366rb.c @@ -1270,7 +1270,7 @@ if (smi->vlan4k_enabled) max = RTL8366RB_NUM_VIDS - 1; - if (vlan == 0 || vlan >= max) + if (vlan == 0 || vlan > max) return false; return true; --- linux-azure-5.8-5.8.0.orig/drivers/net/ethernet/allwinner/sun4i-emac.c +++ linux-azure-5.8-5.8.0/drivers/net/ethernet/allwinner/sun4i-emac.c @@ -830,13 +830,13 @@ db->clk = devm_clk_get(&pdev->dev, NULL); if (IS_ERR(db->clk)) { ret = PTR_ERR(db->clk); - goto out_iounmap; + goto out_dispose_mapping; } ret = clk_prepare_enable(db->clk); if (ret) { dev_err(&pdev->dev, "Error couldn't enable clock (%d)\n", ret); - goto out_iounmap; + goto out_dispose_mapping; } ret = sunxi_sram_claim(&pdev->dev); @@ -895,6 +895,8 @@ sunxi_sram_release(&pdev->dev); out_clk_disable_unprepare: clk_disable_unprepare(db->clk); +out_dispose_mapping: + irq_dispose_mapping(ndev->irq); out_iounmap: iounmap(db->membase); out: @@ -913,6 +915,7 @@ unregister_netdev(ndev); sunxi_sram_release(&pdev->dev); clk_disable_unprepare(db->clk); + irq_dispose_mapping(ndev->irq); iounmap(db->membase); free_netdev(ndev); --- linux-azure-5.8-5.8.0.orig/drivers/net/ethernet/amazon/ena/ena_admin_defs.h +++ linux-azure-5.8-5.8.0/drivers/net/ethernet/amazon/ena/ena_admin_defs.h @@ -1,37 +1,11 @@ +/* SPDX-License-Identifier: GPL-2.0 OR Linux-OpenIB */ /* - * Copyright 2015 - 2016 Amazon.com, Inc. or its affiliates. - * - * This software is available to you under a choice of one of two - * licenses. You may choose to be licensed under the terms of the GNU - * General Public License (GPL) Version 2, available from the file - * COPYING in the main directory of this source tree, or the - * BSD license below: - * - * Redistribution and use in source and binary forms, with or - * without modification, are permitted provided that the following - * conditions are met: - * - * - Redistributions of source code must retain the above - * copyright notice, this list of conditions and the following - * disclaimer. - * - * - Redistributions in binary form must reproduce the above - * copyright notice, this list of conditions and the following - * disclaimer in the documentation and/or other materials - * provided with the distribution. - * - * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, - * EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF - * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND - * NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS - * BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN - * ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN - * CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE - * SOFTWARE. + * Copyright 2015-2020 Amazon.com, Inc. or its affiliates. All rights reserved. */ #ifndef _ENA_ADMIN_H_ #define _ENA_ADMIN_H_ +#define ENA_ADMIN_RSS_KEY_PARTS 10 enum ena_admin_aq_opcode { ENA_ADMIN_CREATE_SQ = 1, @@ -55,6 +29,7 @@ ENA_ADMIN_RESOURCE_BUSY = 7, }; +/* subcommands for the set/get feature admin commands */ enum ena_admin_aq_feature_id { ENA_ADMIN_DEVICE_ATTRIBUTES = 1, ENA_ADMIN_MAX_QUEUES_NUM = 2, @@ -63,7 +38,7 @@ ENA_ADMIN_MAX_QUEUES_EXT = 7, ENA_ADMIN_RSS_HASH_FUNCTION = 10, ENA_ADMIN_STATELESS_OFFLOAD_CONFIG = 11, - ENA_ADMIN_RSS_REDIRECTION_TABLE_CONFIG = 12, + ENA_ADMIN_RSS_INDIRECTION_TABLE_CONFIG = 12, ENA_ADMIN_MTU = 14, ENA_ADMIN_RSS_HASH_INPUT = 18, ENA_ADMIN_INTERRUPT_MODERATION = 20, @@ -117,6 +92,8 @@ enum ena_admin_get_stats_type { ENA_ADMIN_GET_STATS_TYPE_BASIC = 0, ENA_ADMIN_GET_STATS_TYPE_EXTENDED = 1, + /* extra HW stats for specific network interface */ + ENA_ADMIN_GET_STATS_TYPE_ENI = 2, }; enum ena_admin_get_stats_scope { @@ -193,7 +170,7 @@ u16 extended_status; /* indicates to the driver which AQ entry has been consumed by the - * device and could be reused + * device and could be reused */ u16 sq_head_indx; }; @@ -238,8 +215,8 @@ */ u8 sq_caps_3; - /* associated completion queue id. This CQ must be created prior to - * SQ creation + /* associated completion queue id. This CQ must be created prior to SQ + * creation */ u16 cq_idx; @@ -378,7 +355,7 @@ u16 queue_idx; /* device id, value 0xFFFF means mine. only privileged device can get - * stats of other device + * stats of other device */ u16 device_id; }; @@ -410,10 +387,43 @@ u32 tx_drops_high; }; +/* ENI Statistics Command. */ +struct ena_admin_eni_stats { + /* The number of packets shaped due to inbound aggregate BW + * allowance being exceeded + */ + u64 bw_in_allowance_exceeded; + + /* The number of packets shaped due to outbound aggregate BW + * allowance being exceeded + */ + u64 bw_out_allowance_exceeded; + + /* The number of packets shaped due to PPS allowance being exceeded */ + u64 pps_allowance_exceeded; + + /* The number of packets shaped due to connection tracking + * allowance being exceeded and leading to failure in establishment + * of new connections + */ + u64 conntrack_allowance_exceeded; + + /* The number of packets shaped due to linklocal packet rate + * allowance being exceeded + */ + u64 linklocal_allowance_exceeded; +}; + struct ena_admin_acq_get_stats_resp { struct ena_admin_acq_common_desc acq_common_desc; - struct ena_admin_basic_stats basic_stats; + union { + u64 raw[7]; + + struct ena_admin_basic_stats basic_stats; + + struct ena_admin_eni_stats eni_stats; + } u; }; struct ena_admin_get_set_feature_common_desc { @@ -440,7 +450,9 @@ u32 device_version; - /* bitmap of ena_admin_aq_feature_id */ + /* bitmap of ena_admin_aq_feature_id, which represents supported + * subcommands for the set/get feature admin commands. + */ u32 supported_features; u32 reserved3; @@ -491,37 +503,65 @@ ENA_ADMIN_MULTIPLE_DESCS_PER_ENTRY = 2, }; +enum ena_admin_accel_mode_feat { + ENA_ADMIN_DISABLE_META_CACHING = 0, + ENA_ADMIN_LIMIT_TX_BURST = 1, +}; + +struct ena_admin_accel_mode_get { + /* bit field of enum ena_admin_accel_mode_feat */ + u16 supported_flags; + + /* maximum burst size between two doorbells. The size is in bytes */ + u16 max_tx_burst_size; +}; + +struct ena_admin_accel_mode_set { + /* bit field of enum ena_admin_accel_mode_feat */ + u16 enabled_flags; + + u16 reserved; +}; + +struct ena_admin_accel_mode_req { + union { + u32 raw[2]; + + struct ena_admin_accel_mode_get get; + + struct ena_admin_accel_mode_set set; + } u; +}; + struct ena_admin_feature_llq_desc { u32 max_llq_num; u32 max_llq_depth; - /* specify the header locations the device supports. bitfield of - * enum ena_admin_llq_header_location. + /* specify the header locations the device supports. bitfield of enum + * ena_admin_llq_header_location. */ u16 header_location_ctrl_supported; /* the header location the driver selected to use. */ u16 header_location_ctrl_enabled; - /* if inline header is specified - this is the size of descriptor - * list entry. If header in a separate ring is specified - this is - * the size of header ring entry. bitfield of enum - * ena_admin_llq_ring_entry_size. specify the entry sizes the device - * supports + /* if inline header is specified - this is the size of descriptor list + * entry. If header in a separate ring is specified - this is the size + * of header ring entry. bitfield of enum ena_admin_llq_ring_entry_size. + * specify the entry sizes the device supports */ u16 entry_size_ctrl_supported; /* the entry size the driver selected to use. */ u16 entry_size_ctrl_enabled; - /* valid only if inline header is specified. First entry associated - * with the packet includes descriptors and header. Rest of the - * entries occupied by descriptors. This parameter defines the max - * number of descriptors precedding the header in the first entry. - * The field is bitfield of enum - * ena_admin_llq_num_descs_before_header and specify the values the - * device supports + /* valid only if inline header is specified. First entry associated with + * the packet includes descriptors and header. Rest of the entries + * occupied by descriptors. This parameter defines the max number of + * descriptors precedding the header in the first entry. The field is + * bitfield of enum ena_admin_llq_num_descs_before_header and specify + * the values the device supports */ u16 desc_num_before_header_supported; @@ -529,17 +569,20 @@ u16 desc_num_before_header_enabled; /* valid only if inline was chosen. bitfield of enum - * ena_admin_llq_stride_ctrl + * ena_admin_llq_stride_ctrl */ u16 descriptors_stride_ctrl_supported; /* the stride control the driver selected to use */ u16 descriptors_stride_ctrl_enabled; - /* Maximum size in bytes taken by llq entries in a single tx burst. - * Set to 0 when there is no such limit. + /* reserved */ + u32 reserved1; + + /* accelerated low latency queues requirement. driver needs to + * support those requirements in order to use accelerated llq */ - u32 max_tx_burst_size; + struct ena_admin_accel_mode_req accel_mode; }; struct ena_admin_queue_ext_feature_fields { @@ -561,8 +604,8 @@ u32 max_tx_header_size; - /* Maximum Descriptors number, including meta descriptor, allowed for - * a single Tx packet + /* Maximum Descriptors number, including meta descriptor, allowed for a + * single Tx packet */ u16 max_per_packet_tx_descs; @@ -585,8 +628,8 @@ u32 max_header_size; - /* Maximum Descriptors number, including meta descriptor, allowed for - * a single Tx packet + /* Maximum Descriptors number, including meta descriptor, allowed for a + * single Tx packet */ u16 max_packet_tx_descs; @@ -674,11 +717,11 @@ }; struct ena_admin_feature_rss_flow_hash_control { - u32 keys_num; + u32 key_parts; u32 reserved; - u32 key[10]; + u32 key[ENA_ADMIN_RSS_KEY_PARTS]; }; struct ena_admin_feature_rss_flow_hash_function { @@ -816,7 +859,9 @@ /* 0 : reserved * 1 : rx_offset * 2 : interrupt_moderation - * 31:3 : reserved + * 3 : rx_buf_mirroring + * 4 : rss_configurable_function_key + * 31:5 : reserved */ u32 driver_supported_features; }; @@ -972,7 +1017,7 @@ struct ena_admin_aenq_common_desc { u16 group; - u16 syndrom; + u16 syndrome; /* 0 : phase * 7:1 : reserved - MBZ @@ -996,7 +1041,7 @@ ENA_ADMIN_AENQ_GROUPS_NUM = 5, }; -enum ena_admin_aenq_notification_syndrom { +enum ena_admin_aenq_notification_syndrome { ENA_ADMIN_SUSPEND = 0, ENA_ADMIN_RESUME = 1, ENA_ADMIN_UPDATE_HINTS = 2, @@ -1129,6 +1174,10 @@ #define ENA_ADMIN_HOST_INFO_RX_OFFSET_MASK BIT(1) #define ENA_ADMIN_HOST_INFO_INTERRUPT_MODERATION_SHIFT 2 #define ENA_ADMIN_HOST_INFO_INTERRUPT_MODERATION_MASK BIT(2) +#define ENA_ADMIN_HOST_INFO_RX_BUF_MIRRORING_SHIFT 3 +#define ENA_ADMIN_HOST_INFO_RX_BUF_MIRRORING_MASK BIT(3) +#define ENA_ADMIN_HOST_INFO_RSS_CONFIGURABLE_FUNCTION_KEY_SHIFT 4 +#define ENA_ADMIN_HOST_INFO_RSS_CONFIGURABLE_FUNCTION_KEY_MASK BIT(4) /* aenq_common_desc */ #define ENA_ADMIN_AENQ_COMMON_DESC_PHASE_MASK BIT(0) --- linux-azure-5.8-5.8.0.orig/drivers/net/ethernet/amazon/ena/ena_com.c +++ linux-azure-5.8-5.8.0/drivers/net/ethernet/amazon/ena/ena_com.c @@ -1,33 +1,6 @@ +// SPDX-License-Identifier: GPL-2.0 OR Linux-OpenIB /* - * Copyright 2015 Amazon.com, Inc. or its affiliates. - * - * This software is available to you under a choice of one of two - * licenses. You may choose to be licensed under the terms of the GNU - * General Public License (GPL) Version 2, available from the file - * COPYING in the main directory of this source tree, or the - * BSD license below: - * - * Redistribution and use in source and binary forms, with or - * without modification, are permitted provided that the following - * conditions are met: - * - * - Redistributions of source code must retain the above - * copyright notice, this list of conditions and the following - * disclaimer. - * - * - Redistributions in binary form must reproduce the above - * copyright notice, this list of conditions and the following - * disclaimer in the documentation and/or other materials - * provided with the distribution. - * - * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, - * EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF - * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND - * NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS - * BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN - * ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN - * CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE - * SOFTWARE. + * Copyright 2015-2020 Amazon.com, Inc. or its affiliates. All rights reserved. */ #include "ena_com.h" @@ -98,7 +71,7 @@ dma_addr_t addr) { if ((addr & GENMASK_ULL(ena_dev->dma_addr_bits - 1, 0)) != addr) { - pr_err("dma address has more bits that the device supports\n"); + pr_err("DMA address has more bits that the device supports\n"); return -EINVAL; } @@ -108,16 +81,16 @@ return 0; } -static int ena_com_admin_init_sq(struct ena_com_admin_queue *queue) +static int ena_com_admin_init_sq(struct ena_com_admin_queue *admin_queue) { - struct ena_com_admin_sq *sq = &queue->sq; - u16 size = ADMIN_SQ_SIZE(queue->q_depth); + struct ena_com_admin_sq *sq = &admin_queue->sq; + u16 size = ADMIN_SQ_SIZE(admin_queue->q_depth); - sq->entries = dma_alloc_coherent(queue->q_dmadev, size, &sq->dma_addr, - GFP_KERNEL); + sq->entries = dma_alloc_coherent(admin_queue->q_dmadev, size, + &sq->dma_addr, GFP_KERNEL); if (!sq->entries) { - pr_err("memory allocation failed\n"); + pr_err("Memory allocation failed\n"); return -ENOMEM; } @@ -130,16 +103,16 @@ return 0; } -static int ena_com_admin_init_cq(struct ena_com_admin_queue *queue) +static int ena_com_admin_init_cq(struct ena_com_admin_queue *admin_queue) { - struct ena_com_admin_cq *cq = &queue->cq; - u16 size = ADMIN_CQ_SIZE(queue->q_depth); + struct ena_com_admin_cq *cq = &admin_queue->cq; + u16 size = ADMIN_CQ_SIZE(admin_queue->q_depth); - cq->entries = dma_alloc_coherent(queue->q_dmadev, size, &cq->dma_addr, - GFP_KERNEL); + cq->entries = dma_alloc_coherent(admin_queue->q_dmadev, size, + &cq->dma_addr, GFP_KERNEL); if (!cq->entries) { - pr_err("memory allocation failed\n"); + pr_err("Memory allocation failed\n"); return -ENOMEM; } @@ -149,20 +122,20 @@ return 0; } -static int ena_com_admin_init_aenq(struct ena_com_dev *dev, +static int ena_com_admin_init_aenq(struct ena_com_dev *ena_dev, struct ena_aenq_handlers *aenq_handlers) { - struct ena_com_aenq *aenq = &dev->aenq; + struct ena_com_aenq *aenq = &ena_dev->aenq; u32 addr_low, addr_high, aenq_caps; u16 size; - dev->aenq.q_depth = ENA_ASYNC_QUEUE_DEPTH; + ena_dev->aenq.q_depth = ENA_ASYNC_QUEUE_DEPTH; size = ADMIN_AENQ_SIZE(ENA_ASYNC_QUEUE_DEPTH); - aenq->entries = dma_alloc_coherent(dev->dmadev, size, &aenq->dma_addr, - GFP_KERNEL); + aenq->entries = dma_alloc_coherent(ena_dev->dmadev, size, + &aenq->dma_addr, GFP_KERNEL); if (!aenq->entries) { - pr_err("memory allocation failed\n"); + pr_err("Memory allocation failed\n"); return -ENOMEM; } @@ -172,18 +145,18 @@ addr_low = ENA_DMA_ADDR_TO_UINT32_LOW(aenq->dma_addr); addr_high = ENA_DMA_ADDR_TO_UINT32_HIGH(aenq->dma_addr); - writel(addr_low, dev->reg_bar + ENA_REGS_AENQ_BASE_LO_OFF); - writel(addr_high, dev->reg_bar + ENA_REGS_AENQ_BASE_HI_OFF); + writel(addr_low, ena_dev->reg_bar + ENA_REGS_AENQ_BASE_LO_OFF); + writel(addr_high, ena_dev->reg_bar + ENA_REGS_AENQ_BASE_HI_OFF); aenq_caps = 0; - aenq_caps |= dev->aenq.q_depth & ENA_REGS_AENQ_CAPS_AENQ_DEPTH_MASK; + aenq_caps |= ena_dev->aenq.q_depth & ENA_REGS_AENQ_CAPS_AENQ_DEPTH_MASK; aenq_caps |= (sizeof(struct ena_admin_aenq_entry) << ENA_REGS_AENQ_CAPS_AENQ_ENTRY_SIZE_SHIFT) & ENA_REGS_AENQ_CAPS_AENQ_ENTRY_SIZE_MASK; - writel(aenq_caps, dev->reg_bar + ENA_REGS_AENQ_CAPS_OFF); + writel(aenq_caps, ena_dev->reg_bar + ENA_REGS_AENQ_CAPS_OFF); if (unlikely(!aenq_handlers)) { - pr_err("aenq handlers pointer is NULL\n"); + pr_err("AENQ handlers pointer is NULL\n"); return -EINVAL; } @@ -199,31 +172,31 @@ atomic_dec(&queue->outstanding_cmds); } -static struct ena_comp_ctx *get_comp_ctxt(struct ena_com_admin_queue *queue, +static struct ena_comp_ctx *get_comp_ctxt(struct ena_com_admin_queue *admin_queue, u16 command_id, bool capture) { - if (unlikely(command_id >= queue->q_depth)) { - pr_err("command id is larger than the queue size. cmd_id: %u queue size %d\n", - command_id, queue->q_depth); + if (unlikely(command_id >= admin_queue->q_depth)) { + pr_err("Command id is larger than the queue size. cmd_id: %u queue size %d\n", + command_id, admin_queue->q_depth); return NULL; } - if (unlikely(!queue->comp_ctx)) { + if (unlikely(!admin_queue->comp_ctx)) { pr_err("Completion context is NULL\n"); return NULL; } - if (unlikely(queue->comp_ctx[command_id].occupied && capture)) { + if (unlikely(admin_queue->comp_ctx[command_id].occupied && capture)) { pr_err("Completion context is occupied\n"); return NULL; } if (capture) { - atomic_inc(&queue->outstanding_cmds); - queue->comp_ctx[command_id].occupied = true; + atomic_inc(&admin_queue->outstanding_cmds); + admin_queue->comp_ctx[command_id].occupied = true; } - return &queue->comp_ctx[command_id]; + return &admin_queue->comp_ctx[command_id]; } static struct ena_comp_ctx *__ena_com_submit_admin_cmd(struct ena_com_admin_queue *admin_queue, @@ -244,7 +217,7 @@ /* In case of queue FULL */ cnt = (u16)atomic_read(&admin_queue->outstanding_cmds); if (cnt >= admin_queue->q_depth) { - pr_debug("admin queue is full.\n"); + pr_debug("Admin queue is full.\n"); admin_queue->stats.out_of_space++; return ERR_PTR(-ENOSPC); } @@ -284,20 +257,21 @@ return comp_ctx; } -static int ena_com_init_comp_ctxt(struct ena_com_admin_queue *queue) +static int ena_com_init_comp_ctxt(struct ena_com_admin_queue *admin_queue) { - size_t size = queue->q_depth * sizeof(struct ena_comp_ctx); + size_t size = admin_queue->q_depth * sizeof(struct ena_comp_ctx); struct ena_comp_ctx *comp_ctx; u16 i; - queue->comp_ctx = devm_kzalloc(queue->q_dmadev, size, GFP_KERNEL); - if (unlikely(!queue->comp_ctx)) { - pr_err("memory allocation failed\n"); + admin_queue->comp_ctx = + devm_kzalloc(admin_queue->q_dmadev, size, GFP_KERNEL); + if (unlikely(!admin_queue->comp_ctx)) { + pr_err("Memory allocation failed\n"); return -ENOMEM; } - for (i = 0; i < queue->q_depth; i++) { - comp_ctx = get_comp_ctxt(queue, i, false); + for (i = 0; i < admin_queue->q_depth; i++) { + comp_ctx = get_comp_ctxt(admin_queue, i, false); if (comp_ctx) init_completion(&comp_ctx->wait_event); } @@ -363,7 +337,7 @@ } if (!io_sq->desc_addr.virt_addr) { - pr_err("memory allocation failed\n"); + pr_err("Memory allocation failed\n"); return -ENOMEM; } } @@ -389,7 +363,7 @@ devm_kzalloc(ena_dev->dmadev, size, GFP_KERNEL); if (!io_sq->bounce_buf_ctrl.base_buffer) { - pr_err("bounce buffer memory allocation failed\n"); + pr_err("Bounce buffer memory allocation failed\n"); return -ENOMEM; } @@ -403,6 +377,8 @@ 0x0, io_sq->llq_info.desc_list_entry_size); io_sq->llq_buf_ctrl.descs_left_in_line = io_sq->llq_info.descs_num_before_header; + io_sq->disable_meta_caching = + io_sq->llq_info.disable_meta_caching; if (io_sq->llq_info.max_entries_in_tx_burst > 0) io_sq->entries_in_tx_burst_left = @@ -447,7 +423,7 @@ } if (!io_cq->cdesc_addr.virt_addr) { - pr_err("memory allocation failed\n"); + pr_err("Memory allocation failed\n"); return -ENOMEM; } @@ -523,7 +499,7 @@ static int ena_com_comp_status_to_errno(u8 comp_status) { if (unlikely(comp_status != 0)) - pr_err("admin command failed[%u]\n", comp_status); + pr_err("Admin command failed[%u]\n", comp_status); switch (comp_status) { case ENA_ADMIN_SUCCESS: @@ -537,6 +513,8 @@ case ENA_ADMIN_ILLEGAL_PARAMETER: case ENA_ADMIN_UNKNOWN_ERROR: return -EINVAL; + case ENA_ADMIN_RESOURCE_BUSY: + return -EAGAIN; } return -EINVAL; @@ -601,7 +579,7 @@ return ret; } -/** +/* * Set the LLQ configurations of the firmware * * The driver provides only the enabled feature values to the device, @@ -626,6 +604,10 @@ cmd.u.llq.desc_num_before_header_enabled = llq_info->descs_num_before_header; cmd.u.llq.descriptors_stride_ctrl_enabled = llq_info->desc_stride_ctrl; + cmd.u.llq.accel_mode.u.set.enabled_flags = + BIT(ENA_ADMIN_DISABLE_META_CACHING) | + BIT(ENA_ADMIN_LIMIT_TX_BURST); + ret = ena_com_execute_admin_command(admin_queue, (struct ena_admin_aq_entry *)&cmd, sizeof(cmd), @@ -643,6 +625,7 @@ struct ena_llq_configurations *llq_default_cfg) { struct ena_com_llq_info *llq_info = &ena_dev->llq_info; + struct ena_admin_accel_mode_get llq_accel_mode_get; u16 supported_feat; int rc; @@ -710,7 +693,7 @@ /* The desc list entry size should be whole multiply of 8 * This requirement comes from __iowrite64_copy() */ - pr_err("illegal entry size %d\n", llq_info->desc_list_entry_size); + pr_err("Illegal entry size %d\n", llq_info->desc_list_entry_size); return -EINVAL; } @@ -742,9 +725,17 @@ llq_default_cfg->llq_num_decs_before_header, supported_feat, llq_info->descs_num_before_header); } + /* Check for accelerated queue supported */ + llq_accel_mode_get = llq_features->accel_mode.u.get; - llq_info->max_entries_in_tx_burst = - (u16)(llq_features->max_tx_burst_size / llq_default_cfg->llq_ring_entry_size_value); + llq_info->disable_meta_caching = + !!(llq_accel_mode_get.supported_flags & + BIT(ENA_ADMIN_DISABLE_META_CACHING)); + + if (llq_accel_mode_get.supported_flags & BIT(ENA_ADMIN_LIMIT_TX_BURST)) + llq_info->max_entries_in_tx_burst = + llq_accel_mode_get.max_tx_burst_size / + llq_default_cfg->llq_ring_entry_size_value; rc = ena_com_set_llq(ena_dev); if (rc) @@ -843,7 +834,7 @@ } if (unlikely(i == timeout)) { - pr_err("reading reg failed for timeout. expected: req id[%hu] offset[%hu] actual: req id[%hu] offset[%hu]\n", + pr_err("Reading reg failed for timeout. expected: req id[%hu] offset[%hu] actual: req id[%hu] offset[%hu]\n", mmio_read->seq_num, offset, read_resp->req_id, read_resp->reg_off); ret = ENA_MMIO_READ_TIMEOUT; @@ -910,7 +901,7 @@ sizeof(destroy_resp)); if (unlikely(ret && (ret != -ENODEV))) - pr_err("failed to destroy io sq error: %d\n", ret); + pr_err("Failed to destroy io sq error: %d\n", ret); return ret; } @@ -1019,7 +1010,7 @@ &get_cmd.control_buffer.address, control_buf_dma_addr); if (unlikely(ret)) { - pr_err("memory address set failed\n"); + pr_err("Memory address set failed\n"); return ret; } @@ -1066,11 +1057,10 @@ (ena_dev->rss).hash_key; netdev_rss_key_fill(&hash_key->key, sizeof(hash_key->key)); - /* The key is stored in the device in u32 array - * as well as the API requires the key to be passed in this - * format. Thus the size of our array should be divided by 4 + /* The key buffer is stored in the device in an array of + * uint32 elements. */ - hash_key->keys_num = sizeof(hash_key->key) / sizeof(u32); + hash_key->key_parts = ENA_ADMIN_RSS_KEY_PARTS; } static int ena_com_hash_key_allocate(struct ena_com_dev *ena_dev) @@ -1134,13 +1124,13 @@ int ret; ret = ena_com_get_feature(ena_dev, &get_resp, - ENA_ADMIN_RSS_REDIRECTION_TABLE_CONFIG, 0); + ENA_ADMIN_RSS_INDIRECTION_TABLE_CONFIG, 0); if (unlikely(ret)) return ret; if ((get_resp.u.ind_table.min_size > log_size) || (get_resp.u.ind_table.max_size < log_size)) { - pr_err("indirect table size doesn't fit. requested size: %d while min is:%d and max %d\n", + pr_err("Indirect table size doesn't fit. requested size: %d while min is:%d and max %d\n", 1 << log_size, 1 << get_resp.u.ind_table.min_size, 1 << get_resp.u.ind_table.max_size); return -EINVAL; @@ -1233,7 +1223,7 @@ &create_cmd.sq_ba, io_sq->desc_addr.phys_addr); if (unlikely(ret)) { - pr_err("memory address set failed\n"); + pr_err("Memory address set failed\n"); return ret; } } @@ -1262,7 +1252,7 @@ cmd_completion.llq_descriptors_offset); } - pr_debug("created sq[%u], depth[%u]\n", io_sq->idx, io_sq->q_depth); + pr_debug("Created sq[%u], depth[%u]\n", io_sq->idx, io_sq->q_depth); return ret; } @@ -1375,7 +1365,7 @@ &create_cmd.cq_ba, io_cq->cdesc_addr.phys_addr); if (unlikely(ret)) { - pr_err("memory address set failed\n"); + pr_err("Memory address set failed\n"); return ret; } @@ -1404,7 +1394,7 @@ (u32 __iomem *)((uintptr_t)ena_dev->reg_bar + cmd_completion.numa_node_register_offset); - pr_debug("created cq[%u], depth[%u]\n", io_cq->idx, io_cq->q_depth); + pr_debug("Created cq[%u], depth[%u]\n", io_cq->idx, io_cq->q_depth); return ret; } @@ -1597,12 +1587,12 @@ return -ETIME; } - pr_info("ena device version: %d.%d\n", + pr_info("ENA device version: %d.%d\n", (ver & ENA_REGS_VERSION_MAJOR_VERSION_MASK) >> ENA_REGS_VERSION_MAJOR_VERSION_SHIFT, ver & ENA_REGS_VERSION_MINOR_VERSION_MASK); - pr_info("ena controller version: %d.%d.%d implementation version %d\n", + pr_info("ENA controller version: %d.%d.%d implementation version %d\n", (ctrl_ver & ENA_REGS_CONTROLLER_VERSION_MAJOR_VERSION_MASK) >> ENA_REGS_CONTROLLER_VERSION_MAJOR_VERSION_SHIFT, (ctrl_ver & ENA_REGS_CONTROLLER_VERSION_MINOR_VERSION_MASK) >> @@ -1625,6 +1615,19 @@ return 0; } +static void +ena_com_free_ena_admin_queue_comp_ctx(struct ena_com_dev *ena_dev, + struct ena_com_admin_queue *admin_queue) + +{ + if (!admin_queue->comp_ctx) + return; + + devm_kfree(ena_dev->dmadev, admin_queue->comp_ctx); + + admin_queue->comp_ctx = NULL; +} + void ena_com_admin_destroy(struct ena_com_dev *ena_dev) { struct ena_com_admin_queue *admin_queue = &ena_dev->admin_queue; @@ -1633,9 +1636,8 @@ struct ena_com_aenq *aenq = &ena_dev->aenq; u16 size; - if (admin_queue->comp_ctx) - devm_kfree(ena_dev->dmadev, admin_queue->comp_ctx); - admin_queue->comp_ctx = NULL; + ena_com_free_ena_admin_queue_comp_ctx(ena_dev, admin_queue); + size = ADMIN_SQ_SIZE(admin_queue->q_depth); if (sq->entries) dma_free_coherent(ena_dev->dmadev, size, sq->entries, @@ -1913,6 +1915,7 @@ memcpy(&get_feat_ctx->dev_attr, &get_resp.u.dev_attr, sizeof(get_resp.u.dev_attr)); + ena_dev->supported_features = get_resp.u.dev_attr.supported_features; if (ena_dev->supported_features & BIT(ENA_ADMIN_MAX_QUEUES_EXT)) { @@ -1991,10 +1994,10 @@ /* ena_handle_specific_aenq_event: * return the handler that is relevant to the specific event group */ -static ena_aenq_handler ena_com_get_specific_aenq_cb(struct ena_com_dev *dev, +static ena_aenq_handler ena_com_get_specific_aenq_cb(struct ena_com_dev *ena_dev, u16 group) { - struct ena_aenq_handlers *aenq_handlers = dev->aenq.aenq_handlers; + struct ena_aenq_handlers *aenq_handlers = ena_dev->aenq.aenq_handlers; if ((group < ENA_MAX_HANDLERS) && aenq_handlers->handlers[group]) return aenq_handlers->handlers[group]; @@ -2006,11 +2009,11 @@ * handles the aenq incoming events. * pop events from the queue and apply the specific handler */ -void ena_com_aenq_intr_handler(struct ena_com_dev *dev, void *data) +void ena_com_aenq_intr_handler(struct ena_com_dev *ena_dev, void *data) { struct ena_admin_aenq_entry *aenq_e; struct ena_admin_aenq_common_desc *aenq_common; - struct ena_com_aenq *aenq = &dev->aenq; + struct ena_com_aenq *aenq = &ena_dev->aenq; u64 timestamp; ena_aenq_handler handler_cb; u16 masked_head, processed = 0; @@ -2030,12 +2033,13 @@ dma_rmb(); timestamp = (u64)aenq_common->timestamp_low | - ((u64)aenq_common->timestamp_high << 32); - pr_debug("AENQ! Group[%x] Syndrom[%x] timestamp: [%llus]\n", - aenq_common->group, aenq_common->syndrom, timestamp); + ((u64)aenq_common->timestamp_high << 32); + + pr_debug("AENQ! Group[%x] Syndrome[%x] timestamp: [%llus]\n", + aenq_common->group, aenq_common->syndrome, timestamp); /* Handle specific event*/ - handler_cb = ena_com_get_specific_aenq_cb(dev, + handler_cb = ena_com_get_specific_aenq_cb(ena_dev, aenq_common->group); handler_cb(data, aenq_e); /* call the actual event handler*/ @@ -2060,7 +2064,8 @@ /* write the aenq doorbell after all AENQ descriptors were read */ mb(); - writel_relaxed((u32)aenq->head, dev->reg_bar + ENA_REGS_AENQ_HEAD_DB_OFF); + writel_relaxed((u32)aenq->head, + ena_dev->reg_bar + ENA_REGS_AENQ_HEAD_DB_OFF); } int ena_com_dev_reset(struct ena_com_dev *ena_dev, @@ -2152,6 +2157,21 @@ return ret; } +int ena_com_get_eni_stats(struct ena_com_dev *ena_dev, + struct ena_admin_eni_stats *stats) +{ + struct ena_com_stats_ctx ctx; + int ret; + + memset(&ctx, 0x0, sizeof(ctx)); + ret = ena_get_dev_stats(ena_dev, &ctx, ENA_ADMIN_GET_STATS_TYPE_ENI); + if (likely(ret == 0)) + memcpy(stats, &ctx.get_resp.u.eni_stats, + sizeof(ctx.get_resp.u.eni_stats)); + + return ret; +} + int ena_com_get_dev_basic_stats(struct ena_com_dev *ena_dev, struct ena_admin_basic_stats *stats) { @@ -2161,8 +2181,8 @@ memset(&ctx, 0x0, sizeof(ctx)); ret = ena_get_dev_stats(ena_dev, &ctx, ENA_ADMIN_GET_STATS_TYPE_BASIC); if (likely(ret == 0)) - memcpy(stats, &ctx.get_resp.basic_stats, - sizeof(ctx.get_resp.basic_stats)); + memcpy(stats, &ctx.get_resp.u.basic_stats, + sizeof(ctx.get_resp.u.basic_stats)); return ret; } @@ -2258,7 +2278,7 @@ &cmd.control_buffer.address, rss->hash_key_dma_addr); if (unlikely(ret)) { - pr_err("memory address set failed\n"); + pr_err("Memory address set failed\n"); return ret; } @@ -2316,7 +2336,7 @@ } memcpy(hash_key->key, key, key_len); rss->hash_init_val = init_val; - hash_key->keys_num = key_len >> 2; + hash_key->key_parts = key_len / sizeof(hash_key->key[0]); } break; case ENA_ADMIN_CRC32: @@ -2371,7 +2391,8 @@ ena_dev->rss.hash_key; if (key) - memcpy(key, hash_key->key, (size_t)(hash_key->keys_num) << 2); + memcpy(key, hash_key->key, + (size_t)(hash_key->key_parts) * sizeof(hash_key->key[0])); return 0; } @@ -2427,7 +2448,7 @@ &cmd.control_buffer.address, rss->hash_ctrl_dma_addr); if (unlikely(ret)) { - pr_err("memory address set failed\n"); + pr_err("Memory address set failed\n"); return ret; } cmd.control_buffer.length = sizeof(*hash_ctrl); @@ -2488,7 +2509,7 @@ available_fields = hash_ctrl->selected_fields[i].fields & hash_ctrl->supported_fields[i].fields; if (available_fields != hash_ctrl->selected_fields[i].fields) { - pr_err("hash control doesn't support all the desire configuration. proto %x supported %x selected %x\n", + pr_err("Hash control doesn't support all the desire configuration. proto %x supported %x selected %x\n", i, hash_ctrl->supported_fields[i].fields, hash_ctrl->selected_fields[i].fields); return -EOPNOTSUPP; @@ -2526,7 +2547,7 @@ /* Make sure all the fields are supported */ supported_fields = hash_ctrl->supported_fields[proto].fields; if ((hash_fields & supported_fields) != hash_fields) { - pr_err("proto %d doesn't support the required fields %x. supports only: %x\n", + pr_err("Proto %d doesn't support the required fields %x. supports only: %x\n", proto, hash_fields, supported_fields); } @@ -2566,9 +2587,9 @@ int ret; if (!ena_com_check_supported_feature_id( - ena_dev, ENA_ADMIN_RSS_REDIRECTION_TABLE_CONFIG)) { + ena_dev, ENA_ADMIN_RSS_INDIRECTION_TABLE_CONFIG)) { pr_debug("Feature %d isn't supported\n", - ENA_ADMIN_RSS_REDIRECTION_TABLE_CONFIG); + ENA_ADMIN_RSS_INDIRECTION_TABLE_CONFIG); return -EOPNOTSUPP; } @@ -2583,7 +2604,7 @@ cmd.aq_common_descriptor.opcode = ENA_ADMIN_SET_FEATURE; cmd.aq_common_descriptor.flags = ENA_ADMIN_AQ_COMMON_DESC_CTRL_DATA_INDIRECT_MASK; - cmd.feat_common.feature_id = ENA_ADMIN_RSS_REDIRECTION_TABLE_CONFIG; + cmd.feat_common.feature_id = ENA_ADMIN_RSS_INDIRECTION_TABLE_CONFIG; cmd.u.ind_table.size = rss->tbl_log_size; cmd.u.ind_table.inline_index = 0xFFFFFFFF; @@ -2591,7 +2612,7 @@ &cmd.control_buffer.address, rss->rss_ind_tbl_dma_addr); if (unlikely(ret)) { - pr_err("memory address set failed\n"); + pr_err("Memory address set failed\n"); return ret; } @@ -2621,7 +2642,7 @@ sizeof(struct ena_admin_rss_ind_table_entry); rc = ena_com_get_feature_ex(ena_dev, &get_resp, - ENA_ADMIN_RSS_REDIRECTION_TABLE_CONFIG, + ENA_ADMIN_RSS_INDIRECTION_TABLE_CONFIG, rss->rss_ind_tbl_dma_addr, tbl_size, 0); if (unlikely(rc)) @@ -2704,8 +2725,7 @@ host_attr->debug_area_virt_addr = dma_alloc_coherent(ena_dev->dmadev, debug_area_size, - &host_attr->debug_area_dma_addr, - GFP_KERNEL); + &host_attr->debug_area_dma_addr, GFP_KERNEL); if (unlikely(!host_attr->debug_area_virt_addr)) { host_attr->debug_area_size = 0; return -ENOMEM; @@ -2762,7 +2782,7 @@ &cmd.u.host_attr.debug_ba, host_attr->debug_area_dma_addr); if (unlikely(ret)) { - pr_err("memory address set failed\n"); + pr_err("Memory address set failed\n"); return ret; } @@ -2770,7 +2790,7 @@ &cmd.u.host_attr.os_info_ba, host_attr->host_info_dma_addr); if (unlikely(ret)) { - pr_err("memory address set failed\n"); + pr_err("Memory address set failed\n"); return ret; } @@ -2889,7 +2909,7 @@ (llq_info->descs_num_before_header * sizeof(struct ena_eth_io_tx_desc)); if (unlikely(ena_dev->tx_max_header_size == 0)) { - pr_err("the size of the LLQ entry is smaller than needed\n"); + pr_err("The size of the LLQ entry is smaller than needed\n"); return -EINVAL; } --- linux-azure-5.8-5.8.0.orig/drivers/net/ethernet/amazon/ena/ena_com.h +++ linux-azure-5.8-5.8.0/drivers/net/ethernet/amazon/ena/ena_com.h @@ -1,33 +1,6 @@ +/* SPDX-License-Identifier: GPL-2.0 OR Linux-OpenIB */ /* - * Copyright 2015 Amazon.com, Inc. or its affiliates. - * - * This software is available to you under a choice of one of two - * licenses. You may choose to be licensed under the terms of the GNU - * General Public License (GPL) Version 2, available from the file - * COPYING in the main directory of this source tree, or the - * BSD license below: - * - * Redistribution and use in source and binary forms, with or - * without modification, are permitted provided that the following - * conditions are met: - * - * - Redistributions of source code must retain the above - * copyright notice, this list of conditions and the following - * disclaimer. - * - * - Redistributions in binary form must reproduce the above - * copyright notice, this list of conditions and the following - * disclaimer in the documentation and/or other materials - * provided with the distribution. - * - * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, - * EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF - * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND - * NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS - * BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN - * ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN - * CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE - * SOFTWARE. + * Copyright 2015-2020 Amazon.com, Inc. or its affiliates. All rights reserved. */ #ifndef ENA_COM @@ -73,7 +46,7 @@ /*****************************************************************************/ /* ENA adaptive interrupt moderation settings */ -#define ENA_INTR_INITIAL_TX_INTERVAL_USECS 64 +#define ENA_INTR_INITIAL_TX_INTERVAL_USECS 0 #define ENA_INTR_INITIAL_RX_INTERVAL_USECS 0 #define ENA_DEFAULT_INTR_DELAY_RESOLUTION 1 @@ -127,6 +100,7 @@ u16 descs_num_before_header; u16 descs_per_entry; u16 max_entries_in_tx_burst; + bool disable_meta_caching; }; struct ena_com_io_cq { @@ -189,6 +163,8 @@ enum queue_direction direction; enum ena_admin_placement_policy_type mem_queue_type; + bool disable_meta_caching; + u32 msix_vector; struct ena_com_tx_meta cached_tx_meta; struct ena_com_llq_info llq_info; @@ -230,11 +206,11 @@ }; struct ena_com_stats_admin { - u32 aborted_cmd; - u32 submitted_cmd; - u32 completed_cmd; - u32 out_of_space; - u32 no_completion; + u64 aborted_cmd; + u64 submitted_cmd; + u64 completed_cmd; + u64 out_of_space; + u64 no_completion; }; struct ena_com_admin_queue { @@ -533,7 +509,7 @@ * This method goes over the async event notification queue and calls the proper * aenq handler. */ -void ena_com_aenq_intr_handler(struct ena_com_dev *dev, void *data); +void ena_com_aenq_intr_handler(struct ena_com_dev *ena_dev, void *data); /* ena_com_abort_admin_commands - Abort all the outstanding admin commands. * @ena_dev: ENA communication layer struct @@ -613,6 +589,15 @@ int ena_com_get_dev_basic_stats(struct ena_com_dev *ena_dev, struct ena_admin_basic_stats *stats); +/* ena_com_get_eni_stats - Get extended network interface statistics + * @ena_dev: ENA communication layer struct + * @stats: stats return value + * + * @return: 0 on Success and negative value otherwise. + */ +int ena_com_get_eni_stats(struct ena_com_dev *ena_dev, + struct ena_admin_eni_stats *stats); + /* ena_com_set_dev_mtu - Configure the device mtu. * @ena_dev: ENA communication layer struct * @mtu: mtu value --- linux-azure-5.8-5.8.0.orig/drivers/net/ethernet/amazon/ena/ena_common_defs.h +++ linux-azure-5.8-5.8.0/drivers/net/ethernet/amazon/ena/ena_common_defs.h @@ -1,33 +1,6 @@ +/* SPDX-License-Identifier: GPL-2.0 OR Linux-OpenIB */ /* - * Copyright 2015 - 2016 Amazon.com, Inc. or its affiliates. - * - * This software is available to you under a choice of one of two - * licenses. You may choose to be licensed under the terms of the GNU - * General Public License (GPL) Version 2, available from the file - * COPYING in the main directory of this source tree, or the - * BSD license below: - * - * Redistribution and use in source and binary forms, with or - * without modification, are permitted provided that the following - * conditions are met: - * - * - Redistributions of source code must retain the above - * copyright notice, this list of conditions and the following - * disclaimer. - * - * - Redistributions in binary form must reproduce the above - * copyright notice, this list of conditions and the following - * disclaimer in the documentation and/or other materials - * provided with the distribution. - * - * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, - * EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF - * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND - * NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS - * BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN - * ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN - * CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE - * SOFTWARE. + * Copyright 2015-2020 Amazon.com, Inc. or its affiliates. All rights reserved. */ #ifndef _ENA_COMMON_H_ #define _ENA_COMMON_H_ --- linux-azure-5.8-5.8.0.orig/drivers/net/ethernet/amazon/ena/ena_eth_com.c +++ linux-azure-5.8-5.8.0/drivers/net/ethernet/amazon/ena/ena_eth_com.c @@ -1,33 +1,6 @@ +// SPDX-License-Identifier: GPL-2.0 OR Linux-OpenIB /* - * Copyright 2015 Amazon.com, Inc. or its affiliates. - * - * This software is available to you under a choice of one of two - * licenses. You may choose to be licensed under the terms of the GNU - * General Public License (GPL) Version 2, available from the file - * COPYING in the main directory of this source tree, or the - * BSD license below: - * - * Redistribution and use in source and binary forms, with or - * without modification, are permitted provided that the following - * conditions are met: - * - * - Redistributions of source code must retain the above - * copyright notice, this list of conditions and the following - * disclaimer. - * - * - Redistributions in binary form must reproduce the above - * copyright notice, this list of conditions and the following - * disclaimer in the documentation and/or other materials - * provided with the distribution. - * - * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, - * EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF - * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND - * NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS - * BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN - * ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN - * CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE - * SOFTWARE. + * Copyright 2015-2020 Amazon.com, Inc. or its affiliates. All rights reserved. */ #include "ena_eth_com.h" @@ -45,8 +18,9 @@ cdesc = (struct ena_eth_io_rx_cdesc_base *)(io_cq->cdesc_addr.virt_addr + (head_masked * io_cq->cdesc_entry_size_in_bytes)); - desc_phase = (READ_ONCE(cdesc->status) & ENA_ETH_IO_RX_CDESC_BASE_PHASE_MASK) >> - ENA_ETH_IO_RX_CDESC_BASE_PHASE_SHIFT; + desc_phase = (READ_ONCE(cdesc->status) & + ENA_ETH_IO_RX_CDESC_BASE_PHASE_MASK) >> + ENA_ETH_IO_RX_CDESC_BASE_PHASE_SHIFT; if (desc_phase != expected_phase) return NULL; @@ -89,7 +63,7 @@ } io_sq->entries_in_tx_burst_left--; - pr_debug("decreasing entries_in_tx_burst_left of queue %d to %d\n", + pr_debug("Decreasing entries_in_tx_burst_left of queue %d to %d\n", io_sq->qid, io_sq->entries_in_tx_burst_left); } @@ -128,12 +102,12 @@ if (unlikely((header_offset + header_len) > llq_info->desc_list_entry_size)) { - pr_err("trying to write header larger than llq entry can accommodate\n"); + pr_err("Trying to write header larger than llq entry can accommodate\n"); return -EFAULT; } if (unlikely(!bounce_buffer)) { - pr_err("bounce buffer is NULL\n"); + pr_err("Bounce buffer is NULL\n"); return -EFAULT; } @@ -151,7 +125,7 @@ bounce_buffer = pkt_ctrl->curr_bounce_buf; if (unlikely(!bounce_buffer)) { - pr_err("bounce buffer is NULL\n"); + pr_err("Bounce buffer is NULL\n"); return NULL; } @@ -262,8 +236,9 @@ ena_com_cq_inc_head(io_cq); count++; - last = (READ_ONCE(cdesc->status) & ENA_ETH_IO_RX_CDESC_BASE_LAST_MASK) >> - ENA_ETH_IO_RX_CDESC_BASE_LAST_SHIFT; + last = (READ_ONCE(cdesc->status) & + ENA_ETH_IO_RX_CDESC_BASE_LAST_MASK) >> + ENA_ETH_IO_RX_CDESC_BASE_LAST_SHIFT; } while (!last); if (last) { @@ -275,7 +250,7 @@ io_cq->cur_rx_pkt_cdesc_count = 0; io_cq->cur_rx_pkt_cdesc_start_idx = head_masked; - pr_debug("ena q_id: %d packets were completed. first desc idx %u descs# %d\n", + pr_debug("ENA q_id: %d packets were completed. first desc idx %u descs# %d\n", io_cq->qid, *first_cdesc_idx, count); } else { io_cq->cur_rx_pkt_cdesc_count += count; @@ -285,13 +260,15 @@ return count; } -static int ena_com_create_and_store_tx_meta_desc(struct ena_com_io_sq *io_sq, - struct ena_com_tx_ctx *ena_tx_ctx) +static int ena_com_create_meta(struct ena_com_io_sq *io_sq, + struct ena_com_tx_meta *ena_meta) { struct ena_eth_io_tx_meta_desc *meta_desc = NULL; - struct ena_com_tx_meta *ena_meta = &ena_tx_ctx->ena_meta; meta_desc = get_sq_desc(io_sq); + if (unlikely(!meta_desc)) + return -EFAULT; + memset(meta_desc, 0x0, sizeof(struct ena_eth_io_tx_meta_desc)); meta_desc->len_ctrl |= ENA_ETH_IO_TX_META_DESC_META_DESC_MASK; @@ -299,7 +276,7 @@ meta_desc->len_ctrl |= ENA_ETH_IO_TX_META_DESC_EXT_VALID_MASK; /* bits 0-9 of the mss */ - meta_desc->word2 |= (ena_meta->mss << + meta_desc->word2 |= ((u32)ena_meta->mss << ENA_ETH_IO_TX_META_DESC_MSS_LO_SHIFT) & ENA_ETH_IO_TX_META_DESC_MSS_LO_MASK; /* bits 10-13 of the mss */ @@ -309,33 +286,57 @@ /* Extended meta desc */ meta_desc->len_ctrl |= ENA_ETH_IO_TX_META_DESC_ETH_META_TYPE_MASK; - meta_desc->len_ctrl |= ENA_ETH_IO_TX_META_DESC_META_STORE_MASK; - meta_desc->len_ctrl |= (io_sq->phase << + meta_desc->len_ctrl |= ((u32)io_sq->phase << ENA_ETH_IO_TX_META_DESC_PHASE_SHIFT) & ENA_ETH_IO_TX_META_DESC_PHASE_MASK; meta_desc->len_ctrl |= ENA_ETH_IO_TX_META_DESC_FIRST_MASK; + meta_desc->len_ctrl |= ENA_ETH_IO_TX_META_DESC_META_STORE_MASK; + meta_desc->word2 |= ena_meta->l3_hdr_len & ENA_ETH_IO_TX_META_DESC_L3_HDR_LEN_MASK; meta_desc->word2 |= (ena_meta->l3_hdr_offset << ENA_ETH_IO_TX_META_DESC_L3_HDR_OFF_SHIFT) & ENA_ETH_IO_TX_META_DESC_L3_HDR_OFF_MASK; - meta_desc->word2 |= (ena_meta->l4_hdr_len << + meta_desc->word2 |= ((u32)ena_meta->l4_hdr_len << ENA_ETH_IO_TX_META_DESC_L4_HDR_LEN_IN_WORDS_SHIFT) & ENA_ETH_IO_TX_META_DESC_L4_HDR_LEN_IN_WORDS_MASK; - meta_desc->len_ctrl |= ENA_ETH_IO_TX_META_DESC_META_STORE_MASK; + return ena_com_sq_update_tail(io_sq); +} + +static int ena_com_create_and_store_tx_meta_desc(struct ena_com_io_sq *io_sq, + struct ena_com_tx_ctx *ena_tx_ctx, + bool *have_meta) +{ + struct ena_com_tx_meta *ena_meta = &ena_tx_ctx->ena_meta; + + /* When disable meta caching is set, don't bother to save the meta and + * compare it to the stored version, just create the meta + */ + if (io_sq->disable_meta_caching) { + if (unlikely(!ena_tx_ctx->meta_valid)) + return -EINVAL; - /* Cached the meta desc */ - memcpy(&io_sq->cached_tx_meta, ena_meta, - sizeof(struct ena_com_tx_meta)); + *have_meta = true; + return ena_com_create_meta(io_sq, ena_meta); + } - return ena_com_sq_update_tail(io_sq); + if (ena_com_meta_desc_changed(io_sq, ena_tx_ctx)) { + *have_meta = true; + /* Cache the meta desc */ + memcpy(&io_sq->cached_tx_meta, ena_meta, + sizeof(struct ena_com_tx_meta)); + return ena_com_create_meta(io_sq, ena_meta); + } + + *have_meta = false; + return 0; } static void ena_com_rx_set_flags(struct ena_com_rx_ctx *ena_rx_ctx, - struct ena_eth_io_rx_cdesc_base *cdesc) + struct ena_eth_io_rx_cdesc_base *cdesc) { ena_rx_ctx->l3_proto = cdesc->status & ENA_ETH_IO_RX_CDESC_BASE_L3_PROTO_IDX_MASK; @@ -356,7 +357,7 @@ (cdesc->status & ENA_ETH_IO_RX_CDESC_BASE_IPV4_FRAG_MASK) >> ENA_ETH_IO_RX_CDESC_BASE_IPV4_FRAG_SHIFT; - pr_debug("ena_rx_ctx->l3_proto %d ena_rx_ctx->l4_proto %d\nena_rx_ctx->l3_csum_err %d ena_rx_ctx->l4_csum_err %d\nhash frag %d frag: %d cdesc_status: %x\n", + pr_debug("l3_proto %d l4_proto %d l3_csum_err %d l4_csum_err %d hash %d frag %d cdesc_status %x\n", ena_rx_ctx->l3_proto, ena_rx_ctx->l4_proto, ena_rx_ctx->l3_csum_err, ena_rx_ctx->l4_csum_err, ena_rx_ctx->hash, ena_rx_ctx->frag, cdesc->status); @@ -389,7 +390,7 @@ } if (unlikely(header_len > io_sq->tx_max_header_size)) { - pr_err("header size is too large %d max header: %d\n", + pr_err("Header size is too large %d max header: %d\n", header_len, io_sq->tx_max_header_size); return -EINVAL; } @@ -402,12 +403,10 @@ if (unlikely(rc)) return rc; - have_meta = ena_tx_ctx->meta_valid && ena_com_meta_desc_changed(io_sq, - ena_tx_ctx); - if (have_meta) { - rc = ena_com_create_and_store_tx_meta_desc(io_sq, ena_tx_ctx); - if (unlikely(rc)) - return rc; + rc = ena_com_create_and_store_tx_meta_desc(io_sq, ena_tx_ctx, &have_meta); + if (unlikely(rc)) { + pr_err("Failed to create and store tx meta desc\n"); + return rc; } /* If the caller doesn't want to send packets */ @@ -426,16 +425,16 @@ if (!have_meta) desc->len_ctrl |= ENA_ETH_IO_TX_DESC_FIRST_MASK; - desc->buff_addr_hi_hdr_sz |= (header_len << + desc->buff_addr_hi_hdr_sz |= ((u32)header_len << ENA_ETH_IO_TX_DESC_HEADER_LENGTH_SHIFT) & ENA_ETH_IO_TX_DESC_HEADER_LENGTH_MASK; - desc->len_ctrl |= (io_sq->phase << ENA_ETH_IO_TX_DESC_PHASE_SHIFT) & + desc->len_ctrl |= ((u32)io_sq->phase << ENA_ETH_IO_TX_DESC_PHASE_SHIFT) & ENA_ETH_IO_TX_DESC_PHASE_MASK; desc->len_ctrl |= ENA_ETH_IO_TX_DESC_COMP_REQ_MASK; /* Bits 0-9 */ - desc->meta_ctrl |= (ena_tx_ctx->req_id << + desc->meta_ctrl |= ((u32)ena_tx_ctx->req_id << ENA_ETH_IO_TX_DESC_REQ_ID_LO_SHIFT) & ENA_ETH_IO_TX_DESC_REQ_ID_LO_MASK; @@ -481,7 +480,7 @@ memset(desc, 0x0, sizeof(struct ena_eth_io_tx_desc)); - desc->len_ctrl |= (io_sq->phase << + desc->len_ctrl |= ((u32)io_sq->phase << ENA_ETH_IO_TX_DESC_PHASE_SHIFT) & ENA_ETH_IO_TX_DESC_PHASE_MASK; } @@ -517,6 +516,7 @@ { struct ena_com_rx_buf_info *ena_buf = &ena_rx_ctx->ena_bufs[0]; struct ena_eth_io_rx_cdesc_base *cdesc = NULL; + u16 q_depth = io_cq->q_depth; u16 cdesc_idx = 0; u16 nb_hw_desc; u16 i = 0; @@ -529,7 +529,7 @@ return 0; } - pr_debug("fetch rx packet: queue %d completed desc: %d\n", io_cq->qid, + pr_debug("Fetch rx packet: queue %d completed desc: %d\n", io_cq->qid, nb_hw_desc); if (unlikely(nb_hw_desc > ena_rx_ctx->max_bufs)) { @@ -544,6 +544,8 @@ do { ena_buf[i].len = cdesc->length; ena_buf[i].req_id = cdesc->req_id; + if (unlikely(ena_buf[i].req_id >= q_depth)) + return -EIO; if (++i >= nb_hw_desc) break; @@ -585,9 +587,9 @@ desc->length = ena_buf->len; desc->ctrl = ENA_ETH_IO_RX_DESC_FIRST_MASK | - ENA_ETH_IO_RX_DESC_LAST_MASK | - (io_sq->phase & ENA_ETH_IO_RX_DESC_PHASE_MASK) | - ENA_ETH_IO_RX_DESC_COMP_REQ_MASK; + ENA_ETH_IO_RX_DESC_LAST_MASK | + (io_sq->phase & ENA_ETH_IO_RX_DESC_PHASE_MASK) | + ENA_ETH_IO_RX_DESC_COMP_REQ_MASK; desc->req_id = req_id; --- linux-azure-5.8-5.8.0.orig/drivers/net/ethernet/amazon/ena/ena_eth_com.h +++ linux-azure-5.8-5.8.0/drivers/net/ethernet/amazon/ena/ena_eth_com.h @@ -1,33 +1,6 @@ +/* SPDX-License-Identifier: GPL-2.0 OR Linux-OpenIB */ /* - * Copyright 2015 Amazon.com, Inc. or its affiliates. - * - * This software is available to you under a choice of one of two - * licenses. You may choose to be licensed under the terms of the GNU - * General Public License (GPL) Version 2, available from the file - * COPYING in the main directory of this source tree, or the - * BSD license below: - * - * Redistribution and use in source and binary forms, with or - * without modification, are permitted provided that the following - * conditions are met: - * - * - Redistributions of source code must retain the above - * copyright notice, this list of conditions and the following - * disclaimer. - * - * - Redistributions in binary form must reproduce the above - * copyright notice, this list of conditions and the following - * disclaimer in the documentation and/or other materials - * provided with the distribution. - * - * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, - * EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF - * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND - * NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS - * BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN - * ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN - * CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE - * SOFTWARE. + * Copyright 2015-2020 Amazon.com, Inc. or its affiliates. All rights reserved. */ #ifndef ENA_ETH_COM_H_ @@ -157,7 +130,8 @@ llq_info = &io_sq->llq_info; num_descs = ena_tx_ctx->num_bufs; - if (unlikely(ena_com_meta_desc_changed(io_sq, ena_tx_ctx))) + if (llq_info->disable_meta_caching || + unlikely(ena_com_meta_desc_changed(io_sq, ena_tx_ctx))) ++num_descs; if (num_descs > llq_info->descs_num_before_header) { @@ -166,7 +140,7 @@ llq_info->descs_per_entry); } - pr_debug("queue: %d num_descs: %d num_entries_needed: %d\n", io_sq->qid, + pr_debug("Queue: %d num_descs: %d num_entries_needed: %d\n", io_sq->qid, num_descs, num_entries_needed); return num_entries_needed > io_sq->entries_in_tx_burst_left; @@ -177,13 +151,13 @@ u16 max_entries_in_tx_burst = io_sq->llq_info.max_entries_in_tx_burst; u16 tail = io_sq->tail; - pr_debug("write submission queue doorbell for queue: %d tail: %d\n", + pr_debug("Write submission queue doorbell for queue: %d tail: %d\n", io_sq->qid, tail); writel(tail, io_sq->db_addr); if (is_llq_max_tx_burst_exists(io_sq)) { - pr_debug("reset available entries in tx burst for queue %d to %d\n", + pr_debug("Reset available entries in tx burst for queue %d to %d\n", io_sq->qid, max_entries_in_tx_burst); io_sq->entries_in_tx_burst_left = max_entries_in_tx_burst; } --- linux-azure-5.8-5.8.0.orig/drivers/net/ethernet/amazon/ena/ena_eth_io_defs.h +++ linux-azure-5.8-5.8.0/drivers/net/ethernet/amazon/ena/ena_eth_io_defs.h @@ -1,33 +1,6 @@ +/* SPDX-License-Identifier: GPL-2.0 OR Linux-OpenIB */ /* - * Copyright 2015 - 2016 Amazon.com, Inc. or its affiliates. - * - * This software is available to you under a choice of one of two - * licenses. You may choose to be licensed under the terms of the GNU - * General Public License (GPL) Version 2, available from the file - * COPYING in the main directory of this source tree, or the - * BSD license below: - * - * Redistribution and use in source and binary forms, with or - * without modification, are permitted provided that the following - * conditions are met: - * - * - Redistributions of source code must retain the above - * copyright notice, this list of conditions and the following - * disclaimer. - * - * - Redistributions in binary form must reproduce the above - * copyright notice, this list of conditions and the following - * disclaimer in the documentation and/or other materials - * provided with the distribution. - * - * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, - * EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF - * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND - * NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS - * BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN - * ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN - * CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE - * SOFTWARE. + * Copyright 2015-2020 Amazon.com, Inc. or its affiliates. All rights reserved. */ #ifndef _ENA_ETH_IO_H_ #define _ENA_ETH_IO_H_ --- linux-azure-5.8-5.8.0.orig/drivers/net/ethernet/amazon/ena/ena_ethtool.c +++ linux-azure-5.8-5.8.0/drivers/net/ethernet/amazon/ena/ena_ethtool.c @@ -1,33 +1,6 @@ +// SPDX-License-Identifier: GPL-2.0 OR Linux-OpenIB /* - * Copyright 2015 Amazon.com, Inc. or its affiliates. - * - * This software is available to you under a choice of one of two - * licenses. You may choose to be licensed under the terms of the GNU - * General Public License (GPL) Version 2, available from the file - * COPYING in the main directory of this source tree, or the - * BSD license below: - * - * Redistribution and use in source and binary forms, with or - * without modification, are permitted provided that the following - * conditions are met: - * - * - Redistributions of source code must retain the above - * copyright notice, this list of conditions and the following - * disclaimer. - * - * - Redistributions in binary form must reproduce the above - * copyright notice, this list of conditions and the following - * disclaimer in the documentation and/or other materials - * provided with the distribution. - * - * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, - * EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF - * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND - * NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS - * BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN - * ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN - * CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE - * SOFTWARE. + * Copyright 2015-2020 Amazon.com, Inc. or its affiliates. All rights reserved. */ #include @@ -41,12 +14,17 @@ #define ENA_STAT_ENA_COM_ENTRY(stat) { \ .name = #stat, \ - .stat_offset = offsetof(struct ena_com_stats_admin, stat) \ + .stat_offset = offsetof(struct ena_com_stats_admin, stat) / sizeof(u64) \ } #define ENA_STAT_ENTRY(stat, stat_type) { \ .name = #stat, \ - .stat_offset = offsetof(struct ena_stats_##stat_type, stat) \ + .stat_offset = offsetof(struct ena_stats_##stat_type, stat) / sizeof(u64) \ +} + +#define ENA_STAT_HW_ENTRY(stat, stat_type) { \ + .name = #stat, \ + .stat_offset = offsetof(struct ena_admin_##stat_type, stat) / sizeof(u64) \ } #define ENA_STAT_RX_ENTRY(stat) \ @@ -58,6 +36,9 @@ #define ENA_STAT_GLOBAL_ENTRY(stat) \ ENA_STAT_ENTRY(stat, dev) +#define ENA_STAT_ENI_ENTRY(stat) \ + ENA_STAT_HW_ENTRY(stat, eni_stats) + static const struct ena_stats ena_stats_global_strings[] = { ENA_STAT_GLOBAL_ENTRY(tx_timeout), ENA_STAT_GLOBAL_ENTRY(suspend), @@ -68,6 +49,14 @@ ENA_STAT_GLOBAL_ENTRY(admin_q_pause), }; +static const struct ena_stats ena_stats_eni_strings[] = { + ENA_STAT_ENI_ENTRY(bw_in_allowance_exceeded), + ENA_STAT_ENI_ENTRY(bw_out_allowance_exceeded), + ENA_STAT_ENI_ENTRY(pps_allowance_exceeded), + ENA_STAT_ENI_ENTRY(conntrack_allowance_exceeded), + ENA_STAT_ENI_ENTRY(linklocal_allowance_exceeded), +}; + static const struct ena_stats ena_stats_tx_strings[] = { ENA_STAT_TX_ENTRY(cnt), ENA_STAT_TX_ENTRY(bytes), @@ -100,6 +89,11 @@ ENA_STAT_RX_ENTRY(bad_req_id), ENA_STAT_RX_ENTRY(empty_rx_ring), ENA_STAT_RX_ENTRY(csum_unchecked), + ENA_STAT_RX_ENTRY(xdp_aborted), + ENA_STAT_RX_ENTRY(xdp_drop), + ENA_STAT_RX_ENTRY(xdp_pass), + ENA_STAT_RX_ENTRY(xdp_tx), + ENA_STAT_RX_ENTRY(xdp_invalid), }; static const struct ena_stats ena_stats_ena_com_strings[] = { @@ -110,10 +104,12 @@ ENA_STAT_ENA_COM_ENTRY(no_completion), }; -#define ENA_STATS_ARRAY_GLOBAL ARRAY_SIZE(ena_stats_global_strings) -#define ENA_STATS_ARRAY_TX ARRAY_SIZE(ena_stats_tx_strings) -#define ENA_STATS_ARRAY_RX ARRAY_SIZE(ena_stats_rx_strings) -#define ENA_STATS_ARRAY_ENA_COM ARRAY_SIZE(ena_stats_ena_com_strings) +#define ENA_STATS_ARRAY_GLOBAL ARRAY_SIZE(ena_stats_global_strings) +#define ENA_STATS_ARRAY_TX ARRAY_SIZE(ena_stats_tx_strings) +#define ENA_STATS_ARRAY_RX ARRAY_SIZE(ena_stats_rx_strings) +#define ENA_STATS_ARRAY_ENA_COM ARRAY_SIZE(ena_stats_ena_com_strings) +#define ENA_STATS_ARRAY_ENI(adapter) \ + (ARRAY_SIZE(ena_stats_eni_strings) * (adapter)->eni_stats_supported) static void ena_safe_update_stat(u64 *src, u64 *dst, struct u64_stats_sync *syncp) @@ -134,29 +130,30 @@ u64 *ptr; int i, j; - for (i = 0; i < adapter->num_io_queues; i++) { + for (i = 0; i < adapter->num_io_queues + adapter->xdp_num_queues; i++) { /* Tx stats */ ring = &adapter->tx_ring[i]; for (j = 0; j < ENA_STATS_ARRAY_TX; j++) { ena_stats = &ena_stats_tx_strings[j]; - ptr = (u64 *)((uintptr_t)&ring->tx_stats + - (uintptr_t)ena_stats->stat_offset); + ptr = (u64 *)&ring->tx_stats + ena_stats->stat_offset; ena_safe_update_stat(ptr, (*data)++, &ring->syncp); } + /* XDP TX queues don't have a RX queue counterpart */ + if (!ENA_IS_XDP_INDEX(adapter, i)) { + /* Rx stats */ + ring = &adapter->rx_ring[i]; - /* Rx stats */ - ring = &adapter->rx_ring[i]; - - for (j = 0; j < ENA_STATS_ARRAY_RX; j++) { - ena_stats = &ena_stats_rx_strings[j]; + for (j = 0; j < ENA_STATS_ARRAY_RX; j++) { + ena_stats = &ena_stats_rx_strings[j]; - ptr = (u64 *)((uintptr_t)&ring->rx_stats + - (uintptr_t)ena_stats->stat_offset); + ptr = (u64 *)&ring->rx_stats + + ena_stats->stat_offset; - ena_safe_update_stat(ptr, (*data)++, &ring->syncp); + ena_safe_update_stat(ptr, (*data)++, &ring->syncp); + } } } } @@ -164,24 +161,23 @@ static void ena_dev_admin_queue_stats(struct ena_adapter *adapter, u64 **data) { const struct ena_stats *ena_stats; - u32 *ptr; + u64 *ptr; int i; for (i = 0; i < ENA_STATS_ARRAY_ENA_COM; i++) { ena_stats = &ena_stats_ena_com_strings[i]; - ptr = (u32 *)((uintptr_t)&adapter->ena_dev->admin_queue.stats + - (uintptr_t)ena_stats->stat_offset); + ptr = (u64 *)&adapter->ena_dev->admin_queue.stats + + ena_stats->stat_offset; *(*data)++ = *ptr; } } -static void ena_get_ethtool_stats(struct net_device *netdev, - struct ethtool_stats *stats, - u64 *data) +static void ena_get_stats(struct ena_adapter *adapter, + u64 *data, + bool eni_stats_needed) { - struct ena_adapter *adapter = netdev_priv(netdev); const struct ena_stats *ena_stats; u64 *ptr; int i; @@ -189,16 +185,48 @@ for (i = 0; i < ENA_STATS_ARRAY_GLOBAL; i++) { ena_stats = &ena_stats_global_strings[i]; - ptr = (u64 *)((uintptr_t)&adapter->dev_stats + - (uintptr_t)ena_stats->stat_offset); + ptr = (u64 *)&adapter->dev_stats + ena_stats->stat_offset; ena_safe_update_stat(ptr, data++, &adapter->syncp); } + if (eni_stats_needed) { + ena_update_hw_stats(adapter); + for (i = 0; i < ENA_STATS_ARRAY_ENI(adapter); i++) { + ena_stats = &ena_stats_eni_strings[i]; + + ptr = (u64 *)&adapter->eni_stats + + ena_stats->stat_offset; + + ena_safe_update_stat(ptr, data++, &adapter->syncp); + } + } + ena_queue_stats(adapter, &data); ena_dev_admin_queue_stats(adapter, &data); } +static void ena_get_ethtool_stats(struct net_device *netdev, + struct ethtool_stats *stats, + u64 *data) +{ + struct ena_adapter *adapter = netdev_priv(netdev); + + ena_get_stats(adapter, data, adapter->eni_stats_supported); +} + +static int ena_get_sw_stats_count(struct ena_adapter *adapter) +{ + return adapter->num_io_queues * (ENA_STATS_ARRAY_TX + ENA_STATS_ARRAY_RX) + + adapter->xdp_num_queues * ENA_STATS_ARRAY_TX + + ENA_STATS_ARRAY_GLOBAL + ENA_STATS_ARRAY_ENA_COM; +} + +static int ena_get_hw_stats_count(struct ena_adapter *adapter) +{ + return ENA_STATS_ARRAY_ENI(adapter); +} + int ena_get_sset_count(struct net_device *netdev, int sset) { struct ena_adapter *adapter = netdev_priv(netdev); @@ -206,31 +234,38 @@ if (sset != ETH_SS_STATS) return -EOPNOTSUPP; - return adapter->num_io_queues * (ENA_STATS_ARRAY_TX + ENA_STATS_ARRAY_RX) - + ENA_STATS_ARRAY_GLOBAL + ENA_STATS_ARRAY_ENA_COM; + return ena_get_sw_stats_count(adapter) + ena_get_hw_stats_count(adapter); } static void ena_queue_strings(struct ena_adapter *adapter, u8 **data) { const struct ena_stats *ena_stats; + bool is_xdp; int i, j; - for (i = 0; i < adapter->num_io_queues; i++) { + for (i = 0; i < adapter->num_io_queues + adapter->xdp_num_queues; i++) { + is_xdp = ENA_IS_XDP_INDEX(adapter, i); /* Tx stats */ for (j = 0; j < ENA_STATS_ARRAY_TX; j++) { ena_stats = &ena_stats_tx_strings[j]; snprintf(*data, ETH_GSTRING_LEN, - "queue_%u_tx_%s", i, ena_stats->name); + "queue_%u_%s_%s", i, + is_xdp ? "xdp_tx" : "tx", ena_stats->name); (*data) += ETH_GSTRING_LEN; } - /* Rx stats */ - for (j = 0; j < ENA_STATS_ARRAY_RX; j++) { - ena_stats = &ena_stats_rx_strings[j]; - snprintf(*data, ETH_GSTRING_LEN, - "queue_%u_rx_%s", i, ena_stats->name); - (*data) += ETH_GSTRING_LEN; + if (!is_xdp) { + /* RX stats, in XDP there isn't a RX queue + * counterpart + */ + for (j = 0; j < ENA_STATS_ARRAY_RX; j++) { + ena_stats = &ena_stats_rx_strings[j]; + + snprintf(*data, ETH_GSTRING_LEN, + "queue_%u_rx_%s", i, ena_stats->name); + (*data) += ETH_GSTRING_LEN; + } } } } @@ -249,25 +284,43 @@ } } -static void ena_get_strings(struct net_device *netdev, u32 sset, u8 *data) +static void ena_get_strings(struct ena_adapter *adapter, + u8 *data, + bool eni_stats_needed) { - struct ena_adapter *adapter = netdev_priv(netdev); const struct ena_stats *ena_stats; int i; - if (sset != ETH_SS_STATS) - return; - for (i = 0; i < ENA_STATS_ARRAY_GLOBAL; i++) { ena_stats = &ena_stats_global_strings[i]; memcpy(data, ena_stats->name, ETH_GSTRING_LEN); data += ETH_GSTRING_LEN; } + if (eni_stats_needed) { + for (i = 0; i < ENA_STATS_ARRAY_ENI(adapter); i++) { + ena_stats = &ena_stats_eni_strings[i]; + memcpy(data, ena_stats->name, ETH_GSTRING_LEN); + data += ETH_GSTRING_LEN; + } + } + ena_queue_strings(adapter, &data); ena_com_dev_strings(&data); } +static void ena_get_ethtool_strings(struct net_device *netdev, + u32 sset, + u8 *data) +{ + struct ena_adapter *adapter = netdev_priv(netdev); + + if (sset != ETH_SS_STATS) + return; + + ena_get_strings(adapter, data, adapter->eni_stats_supported); +} + static int ena_get_link_ksettings(struct net_device *netdev, struct ethtool_link_ksettings *link_ksettings) { @@ -847,7 +900,7 @@ .get_ringparam = ena_get_ringparam, .set_ringparam = ena_set_ringparam, .get_sset_count = ena_get_sset_count, - .get_strings = ena_get_strings, + .get_strings = ena_get_ethtool_strings, .get_ethtool_stats = ena_get_ethtool_stats, .get_rxnfc = ena_get_rxnfc, .set_rxnfc = ena_set_rxnfc, @@ -875,7 +928,7 @@ int strings_num; int i, rc; - strings_num = ena_get_sset_count(netdev, ETH_SS_STATS); + strings_num = ena_get_sw_stats_count(adapter); if (strings_num <= 0) { netif_err(adapter, drv, netdev, "Can't get stats num\n"); return; @@ -886,7 +939,7 @@ GFP_ATOMIC); if (!strings_buf) { netif_err(adapter, drv, netdev, - "failed to alloc strings_buf\n"); + "Failed to allocate strings_buf\n"); return; } @@ -895,13 +948,13 @@ GFP_ATOMIC); if (!data_buf) { netif_err(adapter, drv, netdev, - "failed to allocate data buf\n"); + "Failed to allocate data buf\n"); devm_kfree(&adapter->pdev->dev, strings_buf); return; } - ena_get_strings(netdev, ETH_SS_STATS, strings_buf); - ena_get_ethtool_stats(netdev, NULL, data_buf); + ena_get_strings(adapter, strings_buf, false); + ena_get_stats(adapter, data_buf, false); /* If there is a buffer, dump stats, otherwise print them to dmesg */ if (buf) --- linux-azure-5.8-5.8.0.orig/drivers/net/ethernet/amazon/ena/ena_netdev.c +++ linux-azure-5.8-5.8.0/drivers/net/ethernet/amazon/ena/ena_netdev.c @@ -1,33 +1,6 @@ +// SPDX-License-Identifier: GPL-2.0 OR Linux-OpenIB /* - * Copyright 2015 Amazon.com, Inc. or its affiliates. - * - * This software is available to you under a choice of one of two - * licenses. You may choose to be licensed under the terms of the GNU - * General Public License (GPL) Version 2, available from the file - * COPYING in the main directory of this source tree, or the - * BSD license below: - * - * Redistribution and use in source and binary forms, with or - * without modification, are permitted provided that the following - * conditions are met: - * - * - Redistributions of source code must retain the above - * copyright notice, this list of conditions and the following - * disclaimer. - * - * - Redistributions in binary form must reproduce the above - * copyright notice, this list of conditions and the following - * disclaimer in the documentation and/or other materials - * provided with the distribution. - * - * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, - * EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF - * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND - * NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS - * BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN - * ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN - * CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE - * SOFTWARE. + * Copyright 2015-2020 Amazon.com, Inc. or its affiliates. All rights reserved. */ #define pr_fmt(fmt) KBUILD_MODNAME ": " fmt @@ -139,7 +112,7 @@ ret = ena_com_set_dev_mtu(adapter->ena_dev, new_mtu); if (!ret) { - netif_dbg(adapter, drv, dev, "set MTU to %d\n", new_mtu); + netif_dbg(adapter, drv, dev, "Set MTU to %d\n", new_mtu); update_rx_ring_mtu(adapter, new_mtu); dev->mtu = new_mtu; } else { @@ -178,7 +151,7 @@ */ if (unlikely(rc)) { netif_err(adapter, tx_queued, dev, - "failed to prepare tx bufs\n"); + "Failed to prepare tx bufs\n"); u64_stats_update_begin(&ring->syncp); ring->tx_stats.prepare_ctx_err++; u64_stats_update_end(&ring->syncp); @@ -292,7 +265,7 @@ u64_stats_update_begin(&xdp_ring->syncp); xdp_ring->tx_stats.dma_mapping_err++; u64_stats_update_end(&xdp_ring->syncp); - netdev_warn(adapter->netdev, "failed to map xdp buff\n"); + netif_warn(adapter, tx_queued, adapter->netdev, "Failed to map xdp buff\n"); xdp_return_frame_rx_napi(tx_info->xdpf); tx_info->xdpf = NULL; @@ -307,7 +280,7 @@ struct ena_rx_buffer *rx_info) { struct ena_adapter *adapter = netdev_priv(dev); - struct ena_com_tx_ctx ena_tx_ctx = {0}; + struct ena_com_tx_ctx ena_tx_ctx = {}; struct ena_tx_buffer *tx_info; struct ena_ring *xdp_ring; u16 next_to_use, req_id; @@ -365,6 +338,7 @@ { struct bpf_prog *xdp_prog; u32 verdict = XDP_PASS; + u64 *xdp_stat; rcu_read_lock(); xdp_prog = READ_ONCE(rx_ring->xdp_bpf_prog); @@ -374,17 +348,31 @@ verdict = bpf_prog_run_xdp(xdp_prog, xdp); - if (verdict == XDP_TX) + if (verdict == XDP_TX) { ena_xdp_xmit_buff(rx_ring->netdev, xdp, rx_ring->qid + rx_ring->adapter->num_io_queues, rx_info); - else if (unlikely(verdict == XDP_ABORTED)) + + xdp_stat = &rx_ring->rx_stats.xdp_tx; + } else if (unlikely(verdict == XDP_ABORTED)) { trace_xdp_exception(rx_ring->netdev, xdp_prog, verdict); - else if (unlikely(verdict > XDP_TX)) + xdp_stat = &rx_ring->rx_stats.xdp_aborted; + } else if (unlikely(verdict == XDP_DROP)) { + xdp_stat = &rx_ring->rx_stats.xdp_drop; + } else if (unlikely(verdict == XDP_PASS)) { + xdp_stat = &rx_ring->rx_stats.xdp_pass; + } else { bpf_warn_invalid_xdp_action(verdict); + xdp_stat = &rx_ring->rx_stats.xdp_invalid; + } + + u64_stats_update_begin(&rx_ring->syncp); + (*xdp_stat)++; + u64_stats_update_end(&rx_ring->syncp); out: rcu_read_unlock(); + return verdict; } @@ -549,7 +537,7 @@ if (!old_bpf_prog) netif_info(adapter, drv, adapter->netdev, - "xdp program set, changing the max_mtu from %d to %d", + "XDP program is set, changing the max_mtu from %d to %d", prev_mtu, netdev->max_mtu); } else if (rc == ENA_XDP_CURRENT_MTU_TOO_LARGE) { @@ -655,6 +643,7 @@ txr->sgl_size = adapter->max_tx_sgl_size; txr->smoothed_interval = ena_com_get_nonadaptive_moderation_interval_tx(ena_dev); + txr->disable_meta_caching = adapter->disable_meta_caching; /* Don't init RX queues for xdp queues */ if (!ENA_IS_XDP_INDEX(adapter, i)) { @@ -806,24 +795,6 @@ adapter->num_io_queues); } -static int validate_rx_req_id(struct ena_ring *rx_ring, u16 req_id) -{ - if (likely(req_id < rx_ring->ring_size)) - return 0; - - netif_err(rx_ring->adapter, rx_err, rx_ring->netdev, - "Invalid rx req_id: %hu\n", req_id); - - u64_stats_update_begin(&rx_ring->syncp); - rx_ring->rx_stats.bad_req_id++; - u64_stats_update_end(&rx_ring->syncp); - - /* Trigger device reset */ - rx_ring->adapter->reset_reason = ENA_REGS_RESET_INV_RX_REQ_ID; - set_bit(ENA_FLAG_TRIGGER_RESET, &rx_ring->adapter->flags); - return -EFAULT; -} - /* ena_setup_rx_resources - allocate I/O Rx resources (Descriptors) * @adapter: network interface device structure * @qid: queue index @@ -943,10 +914,14 @@ static int ena_alloc_rx_page(struct ena_ring *rx_ring, struct ena_rx_buffer *rx_info, gfp_t gfp) { + int headroom = rx_ring->rx_headroom; struct ena_com_buf *ena_buf; struct page *page; dma_addr_t dma; + /* restore page offset value in case it has been changed by device */ + rx_info->page_offset = headroom; + /* if previous allocated page is not used */ if (unlikely(rx_info->page)) return 0; @@ -959,8 +934,11 @@ return -ENOMEM; } + /* To enable NIC-side port-mirroring, AKA SPAN port, + * we make the buffer readable from the nic as well + */ dma = dma_map_page(rx_ring->dev, page, 0, ENA_PAGE_SIZE, - DMA_FROM_DEVICE); + DMA_BIDIRECTIONAL); if (unlikely(dma_mapping_error(rx_ring->dev, dma))) { u64_stats_update_begin(&rx_ring->syncp); rx_ring->rx_stats.dma_mapping_err++; @@ -970,13 +948,12 @@ return -EIO; } netif_dbg(rx_ring->adapter, rx_status, rx_ring->netdev, - "alloc page %p, rx_info %p\n", page, rx_info); + "Allocate page %p, rx_info %p\n", page, rx_info); rx_info->page = page; - rx_info->page_offset = 0; ena_buf = &rx_info->ena_buf; - ena_buf->paddr = dma + rx_ring->rx_headroom; - ena_buf->len = ENA_PAGE_SIZE - rx_ring->rx_headroom; + ena_buf->paddr = dma + headroom; + ena_buf->len = ENA_PAGE_SIZE - headroom; return 0; } @@ -993,10 +970,9 @@ return; } - dma_unmap_page(rx_ring->dev, - ena_buf->paddr - rx_ring->rx_headroom, + dma_unmap_page(rx_ring->dev, ena_buf->paddr - rx_ring->rx_headroom, ENA_PAGE_SIZE, - DMA_FROM_DEVICE); + DMA_BIDIRECTIONAL); __free_page(page); rx_info->page = NULL; @@ -1021,7 +997,7 @@ GFP_ATOMIC | __GFP_COMP); if (unlikely(rc < 0)) { netif_warn(rx_ring->adapter, rx_err, rx_ring->netdev, - "failed to alloc buffer for rx queue %d\n", + "Failed to allocate buffer for rx queue %d\n", rx_ring->qid); break; } @@ -1030,7 +1006,7 @@ req_id); if (unlikely(rc)) { netif_warn(rx_ring->adapter, rx_status, rx_ring->netdev, - "failed to add buffer for rx queue %d\n", + "Failed to add buffer for rx queue %d\n", rx_ring->qid); break; } @@ -1042,9 +1018,9 @@ u64_stats_update_begin(&rx_ring->syncp); rx_ring->rx_stats.refil_partial++; u64_stats_update_end(&rx_ring->syncp); - netdev_warn(rx_ring->netdev, - "refilled rx qid %d with only %d buffers (from %d)\n", - rx_ring->qid, i, num); + netif_warn(rx_ring->adapter, rx_err, rx_ring->netdev, + "Refilled rx qid %d with only %d buffers (from %d)\n", + rx_ring->qid, i, num); } /* ena_com_write_sq_doorbell issues a wmb() */ @@ -1085,7 +1061,7 @@ if (unlikely(rc != bufs_num)) netif_warn(rx_ring->adapter, rx_status, rx_ring->netdev, - "refilling Queue %d failed. allocated %d buffers from: %d\n", + "Refilling Queue %d failed. allocated %d buffers from: %d\n", i, rc, bufs_num); } } @@ -1143,14 +1119,14 @@ continue; if (print_once) { - netdev_notice(tx_ring->netdev, - "free uncompleted tx skb qid %d idx 0x%x\n", - tx_ring->qid, i); + netif_notice(tx_ring->adapter, ifdown, tx_ring->netdev, + "Free uncompleted tx skb qid %d idx 0x%x\n", + tx_ring->qid, i); print_once = false; } else { - netdev_dbg(tx_ring->netdev, - "free uncompleted tx skb qid %d idx 0x%x\n", - tx_ring->qid, i); + netif_dbg(tx_ring->adapter, ifdown, tx_ring->netdev, + "Free uncompleted tx skb qid %d idx 0x%x\n", + tx_ring->qid, i); } ena_unmap_tx_buff(tx_ring, tx_info); @@ -1371,15 +1347,10 @@ struct ena_rx_buffer *rx_info; u16 len, req_id, buf = 0; void *va; - int rc; len = ena_bufs[buf].len; req_id = ena_bufs[buf].req_id; - rc = validate_rx_req_id(rx_ring, req_id); - if (unlikely(rc < 0)) - return NULL; - rx_info = &rx_ring->rx_buffer_info[req_id]; if (unlikely(!rx_info->page)) { @@ -1394,7 +1365,8 @@ /* save virt address of first buffer */ va = page_address(rx_info->page) + rx_info->page_offset; - prefetch(va + NET_IP_ALIGN); + + prefetch(va); if (len <= rx_ring->rx_copybreak) { skb = ena_alloc_skb(rx_ring, false); @@ -1402,7 +1374,7 @@ return NULL; netif_dbg(rx_ring->adapter, rx_status, rx_ring->netdev, - "rx allocated small packet. len %d. data_len %d\n", + "RX allocated small packet. len %d. data_len %d\n", skb->len, skb->data_len); /* sync this buffer for CPU use */ @@ -1431,15 +1403,13 @@ do { dma_unmap_page(rx_ring->dev, dma_unmap_addr(&rx_info->ena_buf, paddr), - ENA_PAGE_SIZE, DMA_FROM_DEVICE); + ENA_PAGE_SIZE, DMA_BIDIRECTIONAL); skb_add_rx_frag(skb, skb_shinfo(skb)->nr_frags, rx_info->page, rx_info->page_offset, len, ENA_PAGE_SIZE); - /* The offset is non zero only for the first buffer */ - rx_info->page_offset = 0; netif_dbg(rx_ring->adapter, rx_status, rx_ring->netdev, - "rx skb updated. len %d. data_len %d\n", + "RX skb updated. len %d. data_len %d\n", skb->len, skb->data_len); rx_info->page = NULL; @@ -1455,10 +1425,6 @@ len = ena_bufs[buf].len; req_id = ena_bufs[buf].req_id; - rc = validate_rx_req_id(rx_ring, req_id); - if (unlikely(rc < 0)) - return NULL; - rx_info = &rx_ring->rx_buffer_info[req_id]; } while (1); @@ -1559,8 +1525,7 @@ int ret; rx_info = &rx_ring->rx_buffer_info[rx_ring->ena_bufs[0].req_id]; - xdp->data = page_address(rx_info->page) + - rx_info->page_offset + rx_ring->rx_headroom; + xdp->data = page_address(rx_info->page) + rx_info->page_offset; xdp_set_data_meta_invalid(xdp); xdp->data_hard_start = page_address(rx_info->page); xdp->data_end = xdp->data + rx_ring->ena_bufs[0].len; @@ -1627,8 +1592,9 @@ if (unlikely(ena_rx_ctx.descs == 0)) break; + /* First descriptor might have an offset set by the device */ rx_info = &rx_ring->rx_buffer_info[rx_ring->ena_bufs[0].req_id]; - rx_info->page_offset = ena_rx_ctx.pkt_offset; + rx_info->page_offset += ena_rx_ctx.pkt_offset; netif_dbg(rx_ring->adapter, rx_status, rx_ring->netdev, "rx_poll: q %d got packet from ena. descs #: %d l3 proto %d l4 proto %d hash: %x\n", @@ -1646,6 +1612,11 @@ &next_to_clean); if (unlikely(!skb)) { + /* The page might not actually be freed here since the + * page reference count is incremented in + * ena_xdp_xmit_buff(), and it will be decreased only + * when send completion was received from the device + */ if (xdp_verdict == XDP_TX) ena_free_rx_page(rx_ring, &rx_ring->rx_buffer_info[rx_ring->ena_bufs[0].req_id]); @@ -1707,12 +1678,18 @@ error: adapter = netdev_priv(rx_ring->netdev); - u64_stats_update_begin(&rx_ring->syncp); - rx_ring->rx_stats.bad_desc_num++; - u64_stats_update_end(&rx_ring->syncp); + if (rc == -ENOSPC) { + u64_stats_update_begin(&rx_ring->syncp); + rx_ring->rx_stats.bad_desc_num++; + u64_stats_update_end(&rx_ring->syncp); + adapter->reset_reason = ENA_REGS_RESET_TOO_MANY_RX_DESCS; + } else { + u64_stats_update_begin(&rx_ring->syncp); + rx_ring->rx_stats.bad_req_id++; + u64_stats_update_end(&rx_ring->syncp); + adapter->reset_reason = ENA_REGS_RESET_INV_RX_REQ_ID; + } - /* Too many desc from the device. Trigger reset */ - adapter->reset_reason = ENA_REGS_RESET_TOO_MANY_RX_DESCS; set_bit(ENA_FLAG_TRIGGER_RESET, &adapter->flags); return 0; @@ -1773,6 +1750,7 @@ u64_stats_update_begin(&tx_ring->syncp); tx_ring->tx_stats.unmask_interrupt++; u64_stats_update_end(&tx_ring->syncp); + /* It is a shared MSI-X. * Tx and Rx CQ have pointer to it. * So we use one of them to reach the intr reg @@ -1913,7 +1891,10 @@ /* Update numa and unmask the interrupt only when schedule * from the interrupt context (vs from sk_busy_loop) */ - if (napi_complete_done(napi, rx_work_done)) { + if (napi_complete_done(napi, rx_work_done) && + READ_ONCE(ena_napi->interrupts_masked)) { + smp_rmb(); /* make sure interrupts_masked is read */ + WRITE_ONCE(ena_napi->interrupts_masked, false); /* We apply adaptive moderation on Rx path only. * Tx uses static interrupt moderation. */ @@ -1961,6 +1942,9 @@ ena_napi->first_interrupt = true; + WRITE_ONCE(ena_napi->interrupts_masked, true); + smp_wmb(); /* write interrupts_masked before calling napi */ + napi_schedule_irqoff(&ena_napi->napi); return IRQ_HANDLED; @@ -1984,7 +1968,7 @@ /* Reserved the max msix vectors we might need */ msix_vecs = ENA_MAX_MSIX_VEC(adapter->max_num_io_queues); netif_dbg(adapter, probe, adapter->netdev, - "trying to enable MSI-X, vectors %d\n", msix_vecs); + "Trying to enable MSI-X, vectors %d\n", msix_vecs); irq_cnt = pci_alloc_irq_vectors(adapter->pdev, ENA_MIN_MSIX_VEC, msix_vecs, PCI_IRQ_MSIX); @@ -1997,7 +1981,7 @@ if (irq_cnt != msix_vecs) { netif_notice(adapter, probe, adapter->netdev, - "enable only %d MSI-X (out of %d), reduce the number of queues\n", + "Enable only %d MSI-X (out of %d), reduce the number of queues\n", irq_cnt, msix_vecs); adapter->num_io_queues = irq_cnt - ENA_ADMIN_MSIX_VEC; } @@ -2067,12 +2051,12 @@ irq->data); if (rc) { netif_err(adapter, probe, adapter->netdev, - "failed to request admin irq\n"); + "Failed to request admin irq\n"); return rc; } netif_dbg(adapter, probe, adapter->netdev, - "set affinity hint of mgmnt irq.to 0x%lx (irq vector: %d)\n", + "Set affinity hint of mgmnt irq.to 0x%lx (irq vector: %d)\n", irq->affinity_hint_mask.bits[0], irq->vector); irq_set_affinity_hint(irq->vector, &irq->affinity_hint_mask); @@ -2105,7 +2089,7 @@ } netif_dbg(adapter, ifup, adapter->netdev, - "set affinity hint of irq. index %d to 0x%lx (irq vector: %d)\n", + "Set affinity hint of irq. index %d to 0x%lx (irq vector: %d)\n", i, irq->affinity_hint_mask.bits[0], irq->vector); irq_set_affinity_hint(irq->vector, &irq->affinity_hint_mask); @@ -2177,27 +2161,23 @@ int i; for (i = first_index; i < first_index + count; i++) { - /* Check if napi was initialized before */ - if (!ENA_IS_XDP_INDEX(adapter, i) || - adapter->ena_napi[i].xdp_ring) - netif_napi_del(&adapter->ena_napi[i].napi); - else - WARN_ON(ENA_IS_XDP_INDEX(adapter, i) && - adapter->ena_napi[i].xdp_ring); + netif_napi_del(&adapter->ena_napi[i].napi); + + WARN_ON(!ENA_IS_XDP_INDEX(adapter, i) && + adapter->ena_napi[i].xdp_ring); } } static void ena_init_napi_in_range(struct ena_adapter *adapter, int first_index, int count) { - struct ena_napi *napi = {0}; int i; for (i = first_index; i < first_index + count; i++) { - napi = &adapter->ena_napi[i]; + struct ena_napi *napi = &adapter->ena_napi[i]; netif_napi_add(adapter->netdev, - &adapter->ena_napi[i].napi, + &napi->napi, ENA_IS_XDP_INDEX(adapter, i) ? ena_xdp_io_poll : ena_io_poll, ENA_NAPI_BUDGET); @@ -2549,7 +2529,7 @@ { int io_queue_count, rc, i; - netdev_dbg(adapter->netdev, "%s\n", __func__); + netif_dbg(adapter, ifup, adapter->netdev, "%s\n", __func__); io_queue_count = adapter->num_io_queues + adapter->xdp_num_queues; ena_setup_io_intr(adapter); @@ -2633,7 +2613,8 @@ rc = ena_com_dev_reset(adapter->ena_dev, adapter->reset_reason); if (rc) - dev_err(&adapter->pdev->dev, "Device reset failed\n"); + netif_err(adapter, ifdown, adapter->netdev, + "Device reset failed\n"); /* stop submitting admin commands on a device that was reset */ ena_com_set_admin_running_state(adapter->ena_dev, false); } @@ -2776,7 +2757,9 @@ return dev_was_up ? ena_open(adapter->netdev) : 0; } -static void ena_tx_csum(struct ena_com_tx_ctx *ena_tx_ctx, struct sk_buff *skb) +static void ena_tx_csum(struct ena_com_tx_ctx *ena_tx_ctx, + struct sk_buff *skb, + bool disable_meta_caching) { u32 mss = skb_shinfo(skb)->gso_size; struct ena_com_tx_meta *ena_meta = &ena_tx_ctx->ena_meta; @@ -2820,7 +2803,9 @@ ena_meta->l3_hdr_len = skb_network_header_len(skb); ena_meta->l3_hdr_offset = skb_network_offset(skb); ena_tx_ctx->meta_valid = 1; - + } else if (disable_meta_caching) { + memset(ena_meta, 0, sizeof(*ena_meta)); + ena_tx_ctx->meta_valid = 1; } else { ena_tx_ctx->meta_valid = 0; } @@ -2951,7 +2936,7 @@ u64_stats_update_begin(&tx_ring->syncp); tx_ring->tx_stats.dma_mapping_err++; u64_stats_update_end(&tx_ring->syncp); - netdev_warn(adapter->netdev, "failed to map skb\n"); + netif_warn(adapter, tx_queued, adapter->netdev, "Failed to map skb\n"); tx_info->skb = NULL; @@ -3004,7 +2989,7 @@ ena_tx_ctx.header_len = header_len; /* set flags and meta data */ - ena_tx_csum(&ena_tx_ctx, skb); + ena_tx_csum(&ena_tx_ctx, skb, tx_ring->disable_meta_caching); rc = ena_xmit_common(dev, tx_ring, @@ -3089,13 +3074,14 @@ static void ena_config_host_info(struct ena_com_dev *ena_dev, struct pci_dev *pdev) { + struct device *dev = &pdev->dev; struct ena_admin_host_info *host_info; int rc; /* Allocate only the host info */ rc = ena_com_allocate_host_info(ena_dev); if (rc) { - pr_err("Cannot allocate host info\n"); + dev_err(dev, "Cannot allocate host info\n"); return; } @@ -3118,14 +3104,16 @@ host_info->driver_supported_features = ENA_ADMIN_HOST_INFO_RX_OFFSET_MASK | - ENA_ADMIN_HOST_INFO_INTERRUPT_MODERATION_MASK; + ENA_ADMIN_HOST_INFO_INTERRUPT_MODERATION_MASK | + ENA_ADMIN_HOST_INFO_RX_BUF_MIRRORING_MASK | + ENA_ADMIN_HOST_INFO_RSS_CONFIGURABLE_FUNCTION_KEY_MASK; rc = ena_com_set_host_attributes(ena_dev); if (rc) { if (rc == -EOPNOTSUPP) - pr_warn("Cannot set host attributes\n"); + dev_warn(dev, "Cannot set host attributes\n"); else - pr_err("Cannot set host attributes\n"); + dev_err(dev, "Cannot set host attributes\n"); goto err; } @@ -3153,7 +3141,8 @@ rc = ena_com_allocate_debug_area(adapter->ena_dev, debug_area_size); if (rc) { - pr_err("Cannot allocate debug area\n"); + netif_err(adapter, drv, adapter->netdev, + "Cannot allocate debug area\n"); return; } @@ -3173,6 +3162,19 @@ ena_com_delete_debug_area(adapter->ena_dev); } +int ena_update_hw_stats(struct ena_adapter *adapter) +{ + int rc = 0; + + rc = ena_com_get_eni_stats(adapter->ena_dev, &adapter->eni_stats); + if (rc) { + dev_info_once(&adapter->pdev->dev, "Failed to get ENI stats\n"); + return rc; + } + + return 0; +} + static void ena_get_stats64(struct net_device *netdev, struct rtnl_link_stats64 *stats) { @@ -3271,10 +3273,71 @@ return 0; } +static void set_default_llq_configurations(struct ena_llq_configurations *llq_config) +{ + llq_config->llq_header_location = ENA_ADMIN_INLINE_HEADER; + llq_config->llq_stride_ctrl = ENA_ADMIN_MULTIPLE_DESCS_PER_ENTRY; + llq_config->llq_num_decs_before_header = ENA_ADMIN_LLQ_NUM_DESCS_BEFORE_HEADER_2; + llq_config->llq_ring_entry_size = ENA_ADMIN_LIST_ENTRY_SIZE_128B; + llq_config->llq_ring_entry_size_value = 128; +} + +static int ena_set_queues_placement_policy(struct pci_dev *pdev, + struct ena_com_dev *ena_dev, + struct ena_admin_feature_llq_desc *llq, + struct ena_llq_configurations *llq_default_configurations) +{ + int rc; + u32 llq_feature_mask; + + llq_feature_mask = 1 << ENA_ADMIN_LLQ; + if (!(ena_dev->supported_features & llq_feature_mask)) { + dev_err(&pdev->dev, + "LLQ is not supported Fallback to host mode policy.\n"); + ena_dev->tx_mem_queue_type = ENA_ADMIN_PLACEMENT_POLICY_HOST; + return 0; + } + + rc = ena_com_config_dev_mode(ena_dev, llq, llq_default_configurations); + if (unlikely(rc)) { + dev_err(&pdev->dev, + "Failed to configure the device mode. Fallback to host mode policy.\n"); + ena_dev->tx_mem_queue_type = ENA_ADMIN_PLACEMENT_POLICY_HOST; + } + + return 0; +} + +static int ena_map_llq_mem_bar(struct pci_dev *pdev, struct ena_com_dev *ena_dev, + int bars) +{ + bool has_mem_bar = !!(bars & BIT(ENA_MEM_BAR)); + + if (!has_mem_bar) { + if (ena_dev->tx_mem_queue_type == ENA_ADMIN_PLACEMENT_POLICY_DEV) { + dev_err(&pdev->dev, + "ENA device does not expose LLQ bar. Fallback to host mode policy.\n"); + ena_dev->tx_mem_queue_type = ENA_ADMIN_PLACEMENT_POLICY_HOST; + } + + return 0; + } + + ena_dev->mem_bar = devm_ioremap_wc(&pdev->dev, + pci_resource_start(pdev, ENA_MEM_BAR), + pci_resource_len(pdev, ENA_MEM_BAR)); + + if (!ena_dev->mem_bar) + return -EFAULT; + + return 0; +} + static int ena_device_init(struct ena_com_dev *ena_dev, struct pci_dev *pdev, struct ena_com_dev_get_features_ctx *get_feat_ctx, bool *wd_state) { + struct ena_llq_configurations llq_config; struct device *dev = &pdev->dev; bool readless_supported; u32 aenq_groups; @@ -3283,7 +3346,7 @@ rc = ena_com_mmio_reg_read_request_init(ena_dev); if (rc) { - dev_err(dev, "failed to init mmio read less\n"); + dev_err(dev, "Failed to init mmio read less\n"); return rc; } @@ -3301,7 +3364,7 @@ rc = ena_com_validate_version(ena_dev); if (rc) { - dev_err(dev, "device version is too low\n"); + dev_err(dev, "Device version is too low\n"); goto err_mmio_read_less; } @@ -3312,16 +3375,9 @@ goto err_mmio_read_less; } - rc = pci_set_dma_mask(pdev, DMA_BIT_MASK(dma_width)); - if (rc) { - dev_err(dev, "pci_set_dma_mask failed 0x%x\n", rc); - goto err_mmio_read_less; - } - - rc = pci_set_consistent_dma_mask(pdev, DMA_BIT_MASK(dma_width)); + rc = dma_set_mask_and_coherent(dev, DMA_BIT_MASK(dma_width)); if (rc) { - dev_err(dev, "err_pci_set_consistent_dma_mask failed 0x%x\n", - rc); + dev_err(dev, "dma_set_mask_and_coherent failed %d\n", rc); goto err_mmio_read_less; } @@ -3365,6 +3421,15 @@ *wd_state = !!(aenq_groups & BIT(ENA_ADMIN_KEEP_ALIVE)); + set_default_llq_configurations(&llq_config); + + rc = ena_set_queues_placement_policy(pdev, ena_dev, &get_feat_ctx->llq, + &llq_config); + if (rc) { + dev_err(dev, "ENA device init failed\n"); + goto err_admin_init; + } + return 0; err_admin_init: @@ -3497,9 +3562,10 @@ netif_carrier_on(adapter->netdev); mod_timer(&adapter->timer_service, round_jiffies(jiffies + HZ)); - dev_err(&pdev->dev, "Device reset completed successfully\n"); adapter->last_keep_alive_jiffies = jiffies; + dev_err(&pdev->dev, "Device reset completed successfully\n"); + return rc; err_disable_msix: ena_free_mgmnt_irq(adapter); @@ -3523,16 +3589,14 @@ { struct ena_adapter *adapter = container_of(work, struct ena_adapter, reset_task); - struct pci_dev *pdev = adapter->pdev; - if (unlikely(!test_bit(ENA_FLAG_TRIGGER_RESET, &adapter->flags))) { - dev_err(&pdev->dev, - "device reset schedule while reset bit is off\n"); - return; - } rtnl_lock(); - ena_destroy_device(adapter, false); - ena_restore_device(adapter); + + if (likely(test_bit(ENA_FLAG_TRIGGER_RESET, &adapter->flags))) { + ena_destroy_device(adapter, false); + ena_restore_device(adapter); + } + rtnl_unlock(); } @@ -3614,7 +3678,7 @@ } u64_stats_update_begin(&tx_ring->syncp); - tx_ring->tx_stats.missed_tx = missed_tx; + tx_ring->tx_stats.missed_tx += missed_tx; u64_stats_update_end(&tx_ring->syncp); return rc; @@ -3703,7 +3767,7 @@ u64_stats_update_end(&rx_ring->syncp); netif_err(adapter, drv, adapter->netdev, - "trigger refill for ring %d\n", i); + "Trigger refill for ring %d\n", i); napi_schedule(rx_ring->napi); rx_ring->empty_rx_queue = 0; @@ -3871,54 +3935,6 @@ return max_num_io_queues; } -static int ena_set_queues_placement_policy(struct pci_dev *pdev, - struct ena_com_dev *ena_dev, - struct ena_admin_feature_llq_desc *llq, - struct ena_llq_configurations *llq_default_configurations) -{ - bool has_mem_bar; - int rc; - u32 llq_feature_mask; - - llq_feature_mask = 1 << ENA_ADMIN_LLQ; - if (!(ena_dev->supported_features & llq_feature_mask)) { - dev_err(&pdev->dev, - "LLQ is not supported Fallback to host mode policy.\n"); - ena_dev->tx_mem_queue_type = ENA_ADMIN_PLACEMENT_POLICY_HOST; - return 0; - } - - has_mem_bar = pci_select_bars(pdev, IORESOURCE_MEM) & BIT(ENA_MEM_BAR); - - rc = ena_com_config_dev_mode(ena_dev, llq, llq_default_configurations); - if (unlikely(rc)) { - dev_err(&pdev->dev, - "Failed to configure the device mode. Fallback to host mode policy.\n"); - ena_dev->tx_mem_queue_type = ENA_ADMIN_PLACEMENT_POLICY_HOST; - return 0; - } - - /* Nothing to config, exit */ - if (ena_dev->tx_mem_queue_type == ENA_ADMIN_PLACEMENT_POLICY_HOST) - return 0; - - if (!has_mem_bar) { - dev_err(&pdev->dev, - "ENA device does not expose LLQ bar. Fallback to host mode policy.\n"); - ena_dev->tx_mem_queue_type = ENA_ADMIN_PLACEMENT_POLICY_HOST; - return 0; - } - - ena_dev->mem_bar = devm_ioremap_wc(&pdev->dev, - pci_resource_start(pdev, ENA_MEM_BAR), - pci_resource_len(pdev, ENA_MEM_BAR)); - - if (!ena_dev->mem_bar) - return -EFAULT; - - return 0; -} - static void ena_set_dev_offloads(struct ena_com_dev_get_features_ctx *feat, struct net_device *netdev) { @@ -4034,14 +4050,6 @@ pci_release_selected_regions(pdev, release_bars); } -static void set_default_llq_configurations(struct ena_llq_configurations *llq_config) -{ - llq_config->llq_header_location = ENA_ADMIN_INLINE_HEADER; - llq_config->llq_ring_entry_size = ENA_ADMIN_LIST_ENTRY_SIZE_128B; - llq_config->llq_stride_ctrl = ENA_ADMIN_MULTIPLE_DESCS_PER_ENTRY; - llq_config->llq_num_decs_before_header = ENA_ADMIN_LLQ_NUM_DESCS_BEFORE_HEADER_2; - llq_config->llq_ring_entry_size_value = 128; -} static int ena_calc_io_queue_size(struct ena_calc_queue_size_ctx *ctx) { @@ -4121,15 +4129,13 @@ */ static int ena_probe(struct pci_dev *pdev, const struct pci_device_id *ent) { - struct ena_calc_queue_size_ctx calc_queue_ctx = { 0 }; + struct ena_calc_queue_size_ctx calc_queue_ctx = {}; struct ena_com_dev_get_features_ctx get_feat_ctx; - struct ena_llq_configurations llq_config; struct ena_com_dev *ena_dev = NULL; struct ena_adapter *adapter; struct net_device *netdev; static int adapters_found; u32 max_num_io_queues; - char *queue_type_str; bool wd_state; int bars, rc; @@ -4141,6 +4147,12 @@ return rc; } + rc = dma_set_mask_and_coherent(&pdev->dev, DMA_BIT_MASK(ENA_MAX_PHYS_ADDR_SIZE_BITS)); + if (rc) { + dev_err(&pdev->dev, "dma_set_mask_and_coherent failed %d\n", rc); + goto err_disable_device; + } + pci_set_master(pdev); ena_dev = vzalloc(sizeof(*ena_dev)); @@ -4161,7 +4173,7 @@ pci_resource_start(pdev, ENA_REG_BAR), pci_resource_len(pdev, ENA_REG_BAR)); if (!ena_dev->reg_bar) { - dev_err(&pdev->dev, "failed to remap regs bar\n"); + dev_err(&pdev->dev, "Failed to remap regs bar\n"); rc = -EFAULT; goto err_free_region; } @@ -4172,19 +4184,16 @@ rc = ena_device_init(ena_dev, pdev, &get_feat_ctx, &wd_state); if (rc) { - dev_err(&pdev->dev, "ena device init failed\n"); + dev_err(&pdev->dev, "ENA device init failed\n"); if (rc == -ETIME) rc = -EPROBE_DEFER; goto err_free_region; } - set_default_llq_configurations(&llq_config); - - rc = ena_set_queues_placement_policy(pdev, ena_dev, &get_feat_ctx.llq, - &llq_config); + rc = ena_map_llq_mem_bar(pdev, ena_dev, bars); if (rc) { - dev_err(&pdev->dev, "ena device init failed\n"); - goto err_device_destroy; + dev_err(&pdev->dev, "ENA llq bar mapping failed\n"); + goto err_free_ena_dev; } calc_queue_ctx.ena_dev = ena_dev; @@ -4241,6 +4250,11 @@ adapter->xdp_num_queues = 0; adapter->rx_copybreak = ENA_DEFAULT_RX_COPYBREAK; + if (ena_dev->tx_mem_queue_type == ENA_ADMIN_PLACEMENT_POLICY_DEV) + adapter->disable_meta_caching = + !!(get_feat_ctx.llq.accel_mode.u.get.supported_flags & + BIT(ENA_ADMIN_DISABLE_META_CACHING)); + adapter->wd_state = wd_state; snprintf(adapter->name, ENA_NAME_MAX_LEN, "ena_%d", adapters_found); @@ -4278,6 +4292,11 @@ ena_config_debug_area(adapter); + if (!ena_update_hw_stats(adapter)) + adapter->eni_stats_supported = true; + else + adapter->eni_stats_supported = false; + memcpy(adapter->netdev->perm_addr, adapter->mac_addr, netdev->addr_len); netif_carrier_off(netdev); @@ -4300,15 +4319,10 @@ timer_setup(&adapter->timer_service, ena_timer_service, 0); mod_timer(&adapter->timer_service, round_jiffies(jiffies + HZ)); - if (ena_dev->tx_mem_queue_type == ENA_ADMIN_PLACEMENT_POLICY_HOST) - queue_type_str = "Regular"; - else - queue_type_str = "Low Latency"; - dev_info(&pdev->dev, - "%s found at mem %lx, mac addr %pM, Placement policy: %s\n", + "%s found at mem %lx, mac addr %pM\n", DEVICE_NAME, (long)pci_resource_start(pdev, 0), - netdev->dev_addr, queue_type_str); + netdev->dev_addr); set_bit(ENA_FLAG_DEVICE_RUNNING, &adapter->flags); @@ -4366,8 +4380,11 @@ netdev->rx_cpu_rmap = NULL; } #endif /* CONFIG_RFS_ACCEL */ - del_timer_sync(&adapter->timer_service); + /* Make sure timer and reset routine won't be called after + * freeing device resources. + */ + del_timer_sync(&adapter->timer_service); cancel_work_sync(&adapter->reset_task); rtnl_lock(); /* lock released inside the below if-else block */ @@ -4420,13 +4437,12 @@ __ena_shutoff(pdev, true); } -#ifdef CONFIG_PM /* ena_suspend - PM suspend callback - * @pdev: PCI device information struct - * @state:power state + * @dev_d: Device information struct */ -static int ena_suspend(struct pci_dev *pdev, pm_message_t state) +static int __maybe_unused ena_suspend(struct device *dev_d) { + struct pci_dev *pdev = to_pci_dev(dev_d); struct ena_adapter *adapter = pci_get_drvdata(pdev); u64_stats_update_begin(&adapter->syncp); @@ -4436,7 +4452,7 @@ rtnl_lock(); if (unlikely(test_bit(ENA_FLAG_TRIGGER_RESET, &adapter->flags))) { dev_err(&pdev->dev, - "ignoring device reset request as the device is being suspended\n"); + "Ignoring device reset request as the device is being suspended\n"); clear_bit(ENA_FLAG_TRIGGER_RESET, &adapter->flags); } ena_destroy_device(adapter, true); @@ -4445,12 +4461,11 @@ } /* ena_resume - PM resume callback - * @pdev: PCI device information struct - * + * @dev_d: Device information struct */ -static int ena_resume(struct pci_dev *pdev) +static int __maybe_unused ena_resume(struct device *dev_d) { - struct ena_adapter *adapter = pci_get_drvdata(pdev); + struct ena_adapter *adapter = dev_get_drvdata(dev_d); int rc; u64_stats_update_begin(&adapter->syncp); @@ -4462,7 +4477,8 @@ rtnl_unlock(); return rc; } -#endif + +static SIMPLE_DEV_PM_OPS(ena_pm_ops, ena_suspend, ena_resume); static struct pci_driver ena_pci_driver = { .name = DRV_MODULE_NAME, @@ -4470,10 +4486,7 @@ .probe = ena_probe, .remove = ena_remove, .shutdown = ena_shutdown, -#ifdef CONFIG_PM - .suspend = ena_suspend, - .resume = ena_resume, -#endif + .driver.pm = &ena_pm_ops, .sriov_configure = pci_sriov_configure_simple, }; @@ -4514,7 +4527,7 @@ ENA_ADMIN_AENQ_LINK_CHANGE_DESC_LINK_STATUS_MASK; if (status) { - netdev_dbg(adapter->netdev, "%s\n", __func__); + netif_dbg(adapter, ifup, adapter->netdev, "%s\n", __func__); set_bit(ENA_FLAG_LINK_UP, &adapter->flags); if (!test_bit(ENA_FLAG_ONGOING_RESET, &adapter->flags)) netif_carrier_on(adapter->netdev); @@ -4539,6 +4552,9 @@ tx_drops = ((u64)desc->tx_drops_high << 32) | desc->tx_drops_low; u64_stats_update_begin(&adapter->syncp); + /* These stats are accumulated by the device, so the counters indicate + * all drops since last reset. + */ adapter->dev_stats.rx_drops = rx_drops; adapter->dev_stats.tx_drops = tx_drops; u64_stats_update_end(&adapter->syncp); @@ -4555,7 +4571,7 @@ aenq_e->aenq_common_desc.group, ENA_ADMIN_NOTIFICATION); - switch (aenq_e->aenq_common_desc.syndrom) { + switch (aenq_e->aenq_common_desc.syndrome) { case ENA_ADMIN_UPDATE_HINTS: hints = (struct ena_admin_ena_hw_hints *) (&aenq_e->inline_data_w4); @@ -4564,7 +4580,7 @@ default: netif_err(adapter, drv, adapter->netdev, "Invalid aenq notification link state %d\n", - aenq_e->aenq_common_desc.syndrom); + aenq_e->aenq_common_desc.syndrome); } } --- linux-azure-5.8-5.8.0.orig/drivers/net/ethernet/amazon/ena/ena_netdev.h +++ linux-azure-5.8-5.8.0/drivers/net/ethernet/amazon/ena/ena_netdev.h @@ -1,33 +1,6 @@ +/* SPDX-License-Identifier: GPL-2.0 OR Linux-OpenIB */ /* - * Copyright 2015 Amazon.com, Inc. or its affiliates. - * - * This software is available to you under a choice of one of two - * licenses. You may choose to be licensed under the terms of the GNU - * General Public License (GPL) Version 2, available from the file - * COPYING in the main directory of this source tree, or the - * BSD license below: - * - * Redistribution and use in source and binary forms, with or - * without modification, are permitted provided that the following - * conditions are met: - * - * - Redistributions of source code must retain the above - * copyright notice, this list of conditions and the following - * disclaimer. - * - * - Redistributions in binary form must reproduce the above - * copyright notice, this list of conditions and the following - * disclaimer in the documentation and/or other materials - * provided with the distribution. - * - * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, - * EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF - * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND - * NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS - * BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN - * ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN - * CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE - * SOFTWARE. + * Copyright 2015-2020 Amazon.com, Inc. or its affiliates. All rights reserved. */ #ifndef ENA_H @@ -167,6 +140,7 @@ struct ena_ring *rx_ring; struct ena_ring *xdp_ring; bool first_interrupt; + bool interrupts_masked; u32 qid; struct dim dim; }; @@ -260,6 +234,11 @@ u64 bad_req_id; u64 empty_rx_ring; u64 csum_unchecked; + u64 xdp_aborted; + u64 xdp_drop; + u64 xdp_pass; + u64 xdp_tx; + u64 xdp_invalid; }; struct ena_ring { @@ -297,6 +276,7 @@ u8 tx_max_header_size; bool first_interrupt; + bool disable_meta_caching; u16 no_interrupt_event_cnt; /* cpu for TPH */ @@ -398,10 +378,13 @@ bool wd_state; bool dev_up_before_reset; + bool disable_meta_caching; unsigned long last_keep_alive_jiffies; struct u64_stats_sync syncp; struct ena_stats_dev dev_stats; + struct ena_admin_eni_stats eni_stats; + bool eni_stats_supported; /* last queue index that was checked for uncompleted tx packets */ u32 last_monitored_tx_qid; @@ -419,6 +402,8 @@ void ena_dump_stats_to_buf(struct ena_adapter *adapter, u8 *buf); +int ena_update_hw_stats(struct ena_adapter *adapter); + int ena_update_queue_sizes(struct ena_adapter *adapter, u32 new_tx_size, u32 new_rx_size); --- linux-azure-5.8-5.8.0.orig/drivers/net/ethernet/amazon/ena/ena_pci_id_tbl.h +++ linux-azure-5.8-5.8.0/drivers/net/ethernet/amazon/ena/ena_pci_id_tbl.h @@ -1,33 +1,6 @@ +/* SPDX-License-Identifier: GPL-2.0 OR Linux-OpenIB */ /* - * Copyright 2015 Amazon.com, Inc. or its affiliates. - * - * This software is available to you under a choice of one of two - * licenses. You may choose to be licensed under the terms of the GNU - * General Public License (GPL) Version 2, available from the file - * COPYING in the main directory of this source tree, or the - * BSD license below: - * - * Redistribution and use in source and binary forms, with or - * without modification, are permitted provided that the following - * conditions are met: - * - * - Redistributions of source code must retain the above - * copyright notice, this list of conditions and the following - * disclaimer. - * - * - Redistributions in binary form must reproduce the above - * copyright notice, this list of conditions and the following - * disclaimer in the documentation and/or other materials - * provided with the distribution. - * - * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, - * EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF - * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND - * NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS - * BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN - * ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN - * CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE - * SOFTWARE. + * Copyright 2015-2020 Amazon.com, Inc. or its affiliates. All rights reserved. */ #ifndef ENA_PCI_ID_TBL_H_ @@ -53,10 +26,15 @@ #define PCI_DEV_ID_ENA_LLQ_VF 0xec21 #endif +#ifndef PCI_DEV_ID_ENA_RESRV0 +#define PCI_DEV_ID_ENA_RESRV0 0x0051 +#endif + #define ENA_PCI_ID_TABLE_ENTRY(devid) \ {PCI_DEVICE(PCI_VENDOR_ID_AMAZON, devid)}, static const struct pci_device_id ena_pci_tbl[] = { + ENA_PCI_ID_TABLE_ENTRY(PCI_DEV_ID_ENA_RESRV0) ENA_PCI_ID_TABLE_ENTRY(PCI_DEV_ID_ENA_PF) ENA_PCI_ID_TABLE_ENTRY(PCI_DEV_ID_ENA_LLQ_PF) ENA_PCI_ID_TABLE_ENTRY(PCI_DEV_ID_ENA_VF) --- linux-azure-5.8-5.8.0.orig/drivers/net/ethernet/amazon/ena/ena_regs_defs.h +++ linux-azure-5.8-5.8.0/drivers/net/ethernet/amazon/ena/ena_regs_defs.h @@ -1,33 +1,6 @@ +/* SPDX-License-Identifier: GPL-2.0 OR Linux-OpenIB */ /* - * Copyright 2015 - 2016 Amazon.com, Inc. or its affiliates. - * - * This software is available to you under a choice of one of two - * licenses. You may choose to be licensed under the terms of the GNU - * General Public License (GPL) Version 2, available from the file - * COPYING in the main directory of this source tree, or the - * BSD license below: - * - * Redistribution and use in source and binary forms, with or - * without modification, are permitted provided that the following - * conditions are met: - * - * - Redistributions of source code must retain the above - * copyright notice, this list of conditions and the following - * disclaimer. - * - * - Redistributions in binary form must reproduce the above - * copyright notice, this list of conditions and the following - * disclaimer in the documentation and/or other materials - * provided with the distribution. - * - * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, - * EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF - * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND - * NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS - * BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN - * ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN - * CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE - * SOFTWARE. + * Copyright 2015-2020 Amazon.com, Inc. or its affiliates. All rights reserved. */ #ifndef _ENA_REGS_H_ #define _ENA_REGS_H_ --- linux-azure-5.8-5.8.0.orig/drivers/net/ethernet/amd/xgbe/xgbe-common.h +++ linux-azure-5.8-5.8.0/drivers/net/ethernet/amd/xgbe/xgbe-common.h @@ -1279,10 +1279,18 @@ #define MDIO_PMA_10GBR_FECCTRL 0x00ab #endif +#ifndef MDIO_PMA_RX_CTRL1 +#define MDIO_PMA_RX_CTRL1 0x8051 +#endif + #ifndef MDIO_PCS_DIG_CTRL #define MDIO_PCS_DIG_CTRL 0x8000 #endif +#ifndef MDIO_PCS_DIGITAL_STAT +#define MDIO_PCS_DIGITAL_STAT 0x8010 +#endif + #ifndef MDIO_AN_XNP #define MDIO_AN_XNP 0x0016 #endif @@ -1358,6 +1366,8 @@ #define XGBE_KR_TRAINING_ENABLE BIT(1) #define XGBE_PCS_CL37_BP BIT(12) +#define XGBE_PCS_PSEQ_STATE_MASK 0x1c +#define XGBE_PCS_PSEQ_STATE_POWER_GOOD 0x10 #define XGBE_AN_CL37_INT_CMPLT BIT(0) #define XGBE_AN_CL37_INT_MASK 0x01 @@ -1375,6 +1385,10 @@ #define XGBE_PMA_CDR_TRACK_EN_OFF 0x00 #define XGBE_PMA_CDR_TRACK_EN_ON 0x01 +#define XGBE_PMA_RX_RST_0_MASK BIT(4) +#define XGBE_PMA_RX_RST_0_RESET_ON 0x10 +#define XGBE_PMA_RX_RST_0_RESET_OFF 0x00 + /* Bit setting and getting macros * The get macro will extract the current bit field value from within * the variable --- linux-azure-5.8-5.8.0.orig/drivers/net/ethernet/amd/xgbe/xgbe-drv.c +++ linux-azure-5.8-5.8.0/drivers/net/ethernet/amd/xgbe/xgbe-drv.c @@ -1443,6 +1443,7 @@ return; netif_tx_stop_all_queues(netdev); + netif_carrier_off(pdata->netdev); xgbe_stop_timers(pdata); flush_workqueue(pdata->dev_workqueue); --- linux-azure-5.8-5.8.0.orig/drivers/net/ethernet/amd/xgbe/xgbe-mdio.c +++ linux-azure-5.8-5.8.0/drivers/net/ethernet/amd/xgbe/xgbe-mdio.c @@ -1345,7 +1345,7 @@ &an_restart); if (an_restart) { xgbe_phy_config_aneg(pdata); - return; + goto adjust_link; } if (pdata->phy.link) { @@ -1396,7 +1396,6 @@ pdata->phy_if.phy_impl.stop(pdata); pdata->phy.link = 0; - netif_carrier_off(pdata->netdev); xgbe_phy_adjust_link(pdata); } --- linux-azure-5.8-5.8.0.orig/drivers/net/ethernet/amd/xgbe/xgbe-phy-v2.c +++ linux-azure-5.8-5.8.0/drivers/net/ethernet/amd/xgbe/xgbe-phy-v2.c @@ -921,6 +921,9 @@ if ((phy_id & 0xfffffff0) != 0x03625d10) return false; + /* Reset PHY - wait for self-clearing reset bit to clear */ + genphy_soft_reset(phy_data->phydev); + /* Disable RGMII mode */ phy_write(phy_data->phydev, 0x18, 0x7007); reg = phy_read(phy_data->phydev, 0x18); @@ -1948,6 +1951,27 @@ xgbe_phy_put_comm_ownership(pdata); } +static void xgbe_phy_rx_reset(struct xgbe_prv_data *pdata) +{ + int reg; + + reg = XMDIO_READ_BITS(pdata, MDIO_MMD_PCS, MDIO_PCS_DIGITAL_STAT, + XGBE_PCS_PSEQ_STATE_MASK); + if (reg == XGBE_PCS_PSEQ_STATE_POWER_GOOD) { + /* Mailbox command timed out, reset of RX block is required. + * This can be done by asseting the reset bit and wait for + * its compeletion. + */ + XMDIO_WRITE_BITS(pdata, MDIO_MMD_PMAPMD, MDIO_PMA_RX_CTRL1, + XGBE_PMA_RX_RST_0_MASK, XGBE_PMA_RX_RST_0_RESET_ON); + ndelay(20); + XMDIO_WRITE_BITS(pdata, MDIO_MMD_PMAPMD, MDIO_PMA_RX_CTRL1, + XGBE_PMA_RX_RST_0_MASK, XGBE_PMA_RX_RST_0_RESET_OFF); + usleep_range(40, 50); + netif_err(pdata, link, pdata->netdev, "firmware mailbox reset performed\n"); + } +} + static void xgbe_phy_perform_ratechange(struct xgbe_prv_data *pdata, unsigned int cmd, unsigned int sub_cmd) { @@ -1955,9 +1979,11 @@ unsigned int wait; /* Log if a previous command did not complete */ - if (XP_IOREAD_BITS(pdata, XP_DRIVER_INT_RO, STATUS)) + if (XP_IOREAD_BITS(pdata, XP_DRIVER_INT_RO, STATUS)) { netif_dbg(pdata, link, pdata->netdev, "firmware mailbox not ready for command\n"); + xgbe_phy_rx_reset(pdata); + } /* Construct the command */ XP_SET_BITS(s0, XP_DRIVER_SCRATCH_0, COMMAND, cmd); @@ -1979,6 +2005,9 @@ netif_dbg(pdata, link, pdata->netdev, "firmware mailbox command did not complete\n"); + + /* Reset on error */ + xgbe_phy_rx_reset(pdata); } static void xgbe_phy_rrc(struct xgbe_prv_data *pdata) @@ -2575,6 +2604,14 @@ if (reg & MDIO_STAT1_LSTATUS) return 1; + if (pdata->phy.autoneg == AUTONEG_ENABLE && + phy_data->port_mode == XGBE_PORT_MODE_BACKPLANE) { + if (!test_bit(XGBE_LINK_INIT, &pdata->dev_state)) { + netif_carrier_off(pdata->netdev); + *an_restart = 1; + } + } + /* No link, attempt a receiver reset cycle */ if (phy_data->rrc_count++ > XGBE_RRC_FREQUENCY) { phy_data->rrc_count = 0; --- linux-azure-5.8-5.8.0.orig/drivers/net/ethernet/aquantia/atlantic/aq_ethtool.c +++ linux-azure-5.8-5.8.0/drivers/net/ethernet/aquantia/atlantic/aq_ethtool.c @@ -123,21 +123,21 @@ "MACSec OutUnctrlHitDropRedir", }; -static const char *aq_macsec_txsc_stat_names[] = { +static const char * const aq_macsec_txsc_stat_names[] = { "MACSecTXSC%d ProtectedPkts", "MACSecTXSC%d EncryptedPkts", "MACSecTXSC%d ProtectedOctets", "MACSecTXSC%d EncryptedOctets", }; -static const char *aq_macsec_txsa_stat_names[] = { +static const char * const aq_macsec_txsa_stat_names[] = { "MACSecTXSC%dSA%d HitDropRedirect", "MACSecTXSC%dSA%d Protected2Pkts", "MACSecTXSC%dSA%d ProtectedPkts", "MACSecTXSC%dSA%d EncryptedPkts", }; -static const char *aq_macsec_rxsa_stat_names[] = { +static const char * const aq_macsec_rxsa_stat_names[] = { "MACSecRXSC%dSA%d UntaggedHitPkts", "MACSecRXSC%dSA%d CtrlHitDrpRedir", "MACSecRXSC%dSA%d NotUsingSa", --- linux-azure-5.8-5.8.0.orig/drivers/net/ethernet/aquantia/atlantic/hw_atl/hw_atl_a0.c +++ linux-azure-5.8-5.8.0/drivers/net/ethernet/aquantia/atlantic/hw_atl/hw_atl_a0.c @@ -782,7 +782,7 @@ int err = 0; if (count > (HW_ATL_A0_MAC_MAX - HW_ATL_A0_MAC_MIN)) { - err = EBADRQC; + err = -EBADRQC; goto err_exit; } for (self->aq_nic_cfg->mc_list_count = 0U; --- linux-azure-5.8-5.8.0.orig/drivers/net/ethernet/aquantia/atlantic/hw_atl/hw_atl_b0.c +++ linux-azure-5.8-5.8.0/drivers/net/ethernet/aquantia/atlantic/hw_atl/hw_atl_b0.c @@ -1536,7 +1536,7 @@ return aq_hw_err_from_flags(self); } -/** +/* * @brief Set VLAN filter table * @details Configure VLAN filter table to accept (and assign the queue) traffic * for the particular vlan ids. --- linux-azure-5.8-5.8.0.orig/drivers/net/ethernet/aquantia/atlantic/hw_atl/hw_atl_llh.c +++ linux-azure-5.8-5.8.0/drivers/net/ethernet/aquantia/atlantic/hw_atl/hw_atl_llh.c @@ -1,7 +1,8 @@ // SPDX-License-Identifier: GPL-2.0-only -/* - * aQuantia Corporation Network Driver - * Copyright (C) 2014-2019 aQuantia Corporation. All rights reserved +/* Atlantic Network Driver + * + * Copyright (C) 2014-2019 aQuantia Corporation + * Copyright (C) 2019-2020 Marvell International Ltd. */ /* File hw_atl_llh.c: Definitions of bitfield and register access functions for @@ -1724,6 +1725,16 @@ return hw_atl_reg_glb_cpu_sem_get(self, HW_ATL_FW_SM_MDIO); } +u32 hw_atl_sem_reset1_get(struct aq_hw_s *self) +{ + return hw_atl_reg_glb_cpu_sem_get(self, HW_ATL_FW_SM_RESET1); +} + +u32 hw_atl_sem_reset2_get(struct aq_hw_s *self) +{ + return hw_atl_reg_glb_cpu_sem_get(self, HW_ATL_FW_SM_RESET2); +} + u32 hw_atl_scrpad_get(struct aq_hw_s *aq_hw, u32 scratch_scp) { return aq_hw_read_reg(aq_hw, --- linux-azure-5.8-5.8.0.orig/drivers/net/ethernet/aquantia/atlantic/hw_atl/hw_atl_llh.h +++ linux-azure-5.8-5.8.0/drivers/net/ethernet/aquantia/atlantic/hw_atl/hw_atl_llh.h @@ -1,7 +1,8 @@ /* SPDX-License-Identifier: GPL-2.0-only */ -/* - * aQuantia Corporation Network Driver - * Copyright (C) 2014-2019 aQuantia Corporation. All rights reserved +/* Atlantic Network Driver + * + * Copyright (C) 2014-2019 aQuantia Corporation + * Copyright (C) 2019-2020 Marvell International Ltd. */ /* File hw_atl_llh.h: Declarations of bitfield and register access functions for @@ -838,6 +839,9 @@ /* get global microprocessor mdio semaphore */ u32 hw_atl_sem_mdio_get(struct aq_hw_s *self); +u32 hw_atl_sem_reset1_get(struct aq_hw_s *self); +u32 hw_atl_sem_reset2_get(struct aq_hw_s *self); + /* get global microprocessor scratch pad register */ u32 hw_atl_scrpad_get(struct aq_hw_s *aq_hw, u32 scratch_scp); --- linux-azure-5.8-5.8.0.orig/drivers/net/ethernet/aquantia/atlantic/hw_atl/hw_atl_llh_internal.h +++ linux-azure-5.8-5.8.0/drivers/net/ethernet/aquantia/atlantic/hw_atl/hw_atl_llh_internal.h @@ -1,7 +1,8 @@ /* SPDX-License-Identifier: GPL-2.0-only */ -/* - * aQuantia Corporation Network Driver - * Copyright (C) 2014-2019 aQuantia Corporation. All rights reserved +/* Atlantic Network Driver + * + * Copyright (C) 2014-2019 aQuantia Corporation + * Copyright (C) 2019-2020 Marvell International Ltd. */ /* File hw_atl_llh_internal.h: Preprocessor definitions @@ -2837,7 +2838,11 @@ /* Default value of bitfield MDIO Address [F:0] */ #define HW_ATL_MDIO_ADDRESS_DEFAULT 0x0 +#define HW_ATL_MIF_RESET_TIMEOUT_ADR 0x00000348 + #define HW_ATL_FW_SM_MDIO 0x0U #define HW_ATL_FW_SM_RAM 0x2U +#define HW_ATL_FW_SM_RESET1 0x3U +#define HW_ATL_FW_SM_RESET2 0x4U #endif /* HW_ATL_LLH_INTERNAL_H */ --- linux-azure-5.8-5.8.0.orig/drivers/net/ethernet/aquantia/atlantic/hw_atl/hw_atl_utils.c +++ linux-azure-5.8-5.8.0/drivers/net/ethernet/aquantia/atlantic/hw_atl/hw_atl_utils.c @@ -46,6 +46,7 @@ #define HW_ATL_FW_VER_1X 0x01050006U #define HW_ATL_FW_VER_2X 0x02000000U #define HW_ATL_FW_VER_3X 0x03000000U +#define HW_ATL_FW_VER_4X 0x04000000U #define FORCE_FLASHLESS 0 @@ -72,14 +73,13 @@ self->fw_ver_actual = hw_atl_utils_get_fw_version(self); - if (hw_atl_utils_ver_match(HW_ATL_FW_VER_1X, - self->fw_ver_actual) == 0) { + if (hw_atl_utils_ver_match(HW_ATL_FW_VER_1X, self->fw_ver_actual)) { *fw_ops = &aq_fw_1x_ops; - } else if (hw_atl_utils_ver_match(HW_ATL_FW_VER_2X, - self->fw_ver_actual) == 0) { + } else if (hw_atl_utils_ver_match(HW_ATL_FW_VER_2X, self->fw_ver_actual)) { *fw_ops = &aq_fw_2x_ops; - } else if (hw_atl_utils_ver_match(HW_ATL_FW_VER_3X, - self->fw_ver_actual) == 0) { + } else if (hw_atl_utils_ver_match(HW_ATL_FW_VER_3X, self->fw_ver_actual)) { + *fw_ops = &aq_fw_2x_ops; + } else if (hw_atl_utils_ver_match(HW_ATL_FW_VER_4X, self->fw_ver_actual)) { *fw_ops = &aq_fw_2x_ops; } else { aq_pr_err("Bad FW version detected: %x\n", @@ -239,6 +239,7 @@ int hw_atl_utils_soft_reset(struct aq_hw_s *self) { + int ver = hw_atl_utils_get_fw_version(self); u32 boot_exit_code = 0; u32 val; int k; @@ -259,14 +260,12 @@ self->rbl_enabled = (boot_exit_code != 0); - /* FW 1.x may bootup in an invalid POWER state (WOL feature). - * We should work around this by forcing its state back to DEINIT - */ - if (!hw_atl_utils_ver_match(HW_ATL_FW_VER_1X, - aq_hw_read_reg(self, - HW_ATL_MPI_FW_VERSION))) { + if (hw_atl_utils_ver_match(HW_ATL_FW_VER_1X, ver)) { int err = 0; + /* FW 1.x may bootup in an invalid POWER state (WOL feature). + * We should work around this by forcing its state back to DEINIT + */ hw_atl_utils_mpi_set_state(self, MPI_DEINIT); err = readx_poll_timeout_atomic(hw_atl_utils_mpi_get_state, self, val, @@ -275,6 +274,27 @@ 10, 10000U); if (err) return err; + } else if (hw_atl_utils_ver_match(HW_ATL_FW_VER_4X, ver)) { + u64 sem_timeout = aq_hw_read_reg(self, HW_ATL_MIF_RESET_TIMEOUT_ADR); + + /* Acquire 2 semaphores before issuing reset for FW 4.x */ + if (sem_timeout > 3000) + sem_timeout = 3000; + sem_timeout = sem_timeout * 1000; + + if (sem_timeout != 0) { + int err; + + err = readx_poll_timeout_atomic(hw_atl_sem_reset1_get, self, val, + val == 1U, 1U, sem_timeout); + if (err) + aq_pr_err("reset sema1 timeout"); + + err = readx_poll_timeout_atomic(hw_atl_sem_reset2_get, self, val, + val == 1U, 1U, sem_timeout); + if (err) + aq_pr_err("reset sema2 timeout"); + } } if (self->rbl_enabled) @@ -434,20 +454,20 @@ p, cnt, MCP_AREA_SETTINGS); } -int hw_atl_utils_ver_match(u32 ver_expected, u32 ver_actual) +bool hw_atl_utils_ver_match(u32 ver_expected, u32 ver_actual) { const u32 dw_major_mask = 0xff000000U; const u32 dw_minor_mask = 0x00ffffffU; - int err = 0; + bool ver_match; - err = (dw_major_mask & (ver_expected ^ ver_actual)) ? -EOPNOTSUPP : 0; - if (err < 0) + ver_match = (dw_major_mask & (ver_expected ^ ver_actual)) ? false : true; + if (!ver_match) goto err_exit; - err = ((dw_minor_mask & ver_expected) > (dw_minor_mask & ver_actual)) ? - -EOPNOTSUPP : 0; + ver_match = ((dw_minor_mask & ver_expected) > (dw_minor_mask & ver_actual)) ? + false : true; err_exit: - return err; + return ver_match; } static int hw_atl_utils_init_ucp(struct aq_hw_s *self, --- linux-azure-5.8-5.8.0.orig/drivers/net/ethernet/aquantia/atlantic/hw_atl/hw_atl_utils.h +++ linux-azure-5.8-5.8.0/drivers/net/ethernet/aquantia/atlantic/hw_atl/hw_atl_utils.h @@ -635,7 +635,7 @@ int hw_atl_utils_fw_rpc_wait(struct aq_hw_s *self, struct hw_atl_utils_fw_rpc **rpc); -int hw_atl_utils_ver_match(u32 ver_expected, u32 ver_actual); +bool hw_atl_utils_ver_match(u32 ver_expected, u32 ver_actual); extern const struct aq_fw_ops aq_fw_1x_ops; extern const struct aq_fw_ops aq_fw_2x_ops; --- linux-azure-5.8-5.8.0.orig/drivers/net/ethernet/aquantia/atlantic/hw_atl2/hw_atl2_utils.c +++ linux-azure-5.8-5.8.0/drivers/net/ethernet/aquantia/atlantic/hw_atl2/hw_atl2_utils.c @@ -36,8 +36,7 @@ self->fw_ver_actual = hw_atl2_utils_get_fw_version(self); - if (hw_atl_utils_ver_match(HW_ATL2_FW_VER_1X, - self->fw_ver_actual) == 0) { + if (hw_atl_utils_ver_match(HW_ATL2_FW_VER_1X, self->fw_ver_actual)) { *fw_ops = &aq_a2_fw_ops; } else { aq_pr_err("Bad FW version detected: %x, but continue\n", --- linux-azure-5.8-5.8.0.orig/drivers/net/ethernet/arc/emac_mdio.c +++ linux-azure-5.8-5.8.0/drivers/net/ethernet/arc/emac_mdio.c @@ -153,6 +153,7 @@ if (IS_ERR(data->reset_gpio)) { error = PTR_ERR(data->reset_gpio); dev_err(priv->dev, "Failed to request gpio: %d\n", error); + mdiobus_free(bus); return error; } --- linux-azure-5.8-5.8.0.orig/drivers/net/ethernet/atheros/alx/ethtool.c +++ linux-azure-5.8-5.8.0/drivers/net/ethernet/atheros/alx/ethtool.c @@ -46,6 +46,8 @@ #include "reg.h" #include "hw.h" +extern const bool enable_wol; + /* The order of these strings must match the order of the fields in * struct alx_hw_stats * See hw.h @@ -310,11 +312,50 @@ } } +static void alx_get_wol(struct net_device *netdev, struct ethtool_wolinfo *wol) +{ + struct alx_priv *alx = netdev_priv(netdev); + struct alx_hw *hw = &alx->hw; + + if (!enable_wol) + return; + + wol->supported = WAKE_MAGIC | WAKE_PHY; + wol->wolopts = 0; + + if (hw->sleep_ctrl & ALX_SLEEP_WOL_MAGIC) + wol->wolopts |= WAKE_MAGIC; + if (hw->sleep_ctrl & ALX_SLEEP_WOL_PHY) + wol->wolopts |= WAKE_PHY; +} + +static int alx_set_wol(struct net_device *netdev, struct ethtool_wolinfo *wol) +{ + struct alx_priv *alx = netdev_priv(netdev); + struct alx_hw *hw = &alx->hw; + + if (!enable_wol || (wol->wolopts & ~(WAKE_MAGIC | WAKE_PHY))) + return -EOPNOTSUPP; + + hw->sleep_ctrl = 0; + + if (wol->wolopts & WAKE_MAGIC) + hw->sleep_ctrl |= ALX_SLEEP_WOL_MAGIC; + if (wol->wolopts & WAKE_PHY) + hw->sleep_ctrl |= ALX_SLEEP_WOL_PHY; + + device_set_wakeup_enable(&alx->hw.pdev->dev, hw->sleep_ctrl); + + return 0; +} + const struct ethtool_ops alx_ethtool_ops = { .get_pauseparam = alx_get_pauseparam, .set_pauseparam = alx_set_pauseparam, .get_msglevel = alx_get_msglevel, .set_msglevel = alx_set_msglevel, + .get_wol = alx_get_wol, + .set_wol = alx_set_wol, .get_link = ethtool_op_get_link, .get_strings = alx_get_strings, .get_sset_count = alx_get_sset_count, --- linux-azure-5.8-5.8.0.orig/drivers/net/ethernet/atheros/alx/hw.c +++ linux-azure-5.8-5.8.0/drivers/net/ethernet/atheros/alx/hw.c @@ -332,6 +332,16 @@ alx_write_mem32(hw, ALX_STAD1, val); } +static void alx_enable_osc(struct alx_hw *hw) +{ + u32 val; + + /* rising edge */ + val = alx_read_mem32(hw, ALX_MISC); + alx_write_mem32(hw, ALX_MISC, val & ~ALX_MISC_INTNLOSC_OPEN); + alx_write_mem32(hw, ALX_MISC, val | ALX_MISC_INTNLOSC_OPEN); +} + static void alx_reset_osc(struct alx_hw *hw, u8 rev) { u32 val, val2; @@ -774,7 +784,6 @@ return err; } - void alx_post_phy_link(struct alx_hw *hw) { u16 phy_val, len, agc; @@ -848,6 +857,65 @@ } } +/* NOTE: + * 1. phy link must be established before calling this function + * 2. wol option (pattern,magic,link,etc.) is configed before call it. + */ +int alx_pre_suspend(struct alx_hw *hw, int speed, u8 duplex) +{ + u32 master, mac, phy, val; + int err = 0; + + master = alx_read_mem32(hw, ALX_MASTER); + master &= ~ALX_MASTER_PCLKSEL_SRDS; + mac = hw->rx_ctrl; + /* 10/100 half */ + ALX_SET_FIELD(mac, ALX_MAC_CTRL_SPEED, ALX_MAC_CTRL_SPEED_10_100); + mac &= ~(ALX_MAC_CTRL_FULLD | ALX_MAC_CTRL_RX_EN | ALX_MAC_CTRL_TX_EN); + + phy = alx_read_mem32(hw, ALX_PHY_CTRL); + phy &= ~(ALX_PHY_CTRL_DSPRST_OUT | ALX_PHY_CTRL_CLS); + phy |= ALX_PHY_CTRL_RST_ANALOG | ALX_PHY_CTRL_HIB_PULSE | + ALX_PHY_CTRL_HIB_EN; + + /* without any activity */ + if (!(hw->sleep_ctrl & ALX_SLEEP_ACTIVE)) { + err = alx_write_phy_reg(hw, ALX_MII_IER, 0); + if (err) + return err; + phy |= ALX_PHY_CTRL_IDDQ | ALX_PHY_CTRL_POWER_DOWN; + } else { + if (hw->sleep_ctrl & (ALX_SLEEP_WOL_MAGIC | ALX_SLEEP_CIFS)) + mac |= ALX_MAC_CTRL_RX_EN | ALX_MAC_CTRL_BRD_EN; + if (hw->sleep_ctrl & ALX_SLEEP_CIFS) + mac |= ALX_MAC_CTRL_TX_EN; + if (duplex == DUPLEX_FULL) + mac |= ALX_MAC_CTRL_FULLD; + if (speed == SPEED_1000) + ALX_SET_FIELD(mac, ALX_MAC_CTRL_SPEED, + ALX_MAC_CTRL_SPEED_1000); + phy |= ALX_PHY_CTRL_DSPRST_OUT; + err = alx_write_phy_ext(hw, ALX_MIIEXT_ANEG, + ALX_MIIEXT_S3DIG10, + ALX_MIIEXT_S3DIG10_SL); + if (err) + return err; + } + + alx_enable_osc(hw); + hw->rx_ctrl = mac; + alx_write_mem32(hw, ALX_MASTER, master); + alx_write_mem32(hw, ALX_MAC_CTRL, mac); + alx_write_mem32(hw, ALX_PHY_CTRL, phy); + + /* set val of PDLL D3PLLOFF */ + val = alx_read_mem32(hw, ALX_PDLL_TRNS1); + val |= ALX_PDLL_TRNS1_D3PLLOFF_EN; + alx_write_mem32(hw, ALX_PDLL_TRNS1, val); + + return 0; +} + bool alx_phy_configured(struct alx_hw *hw) { u32 cfg, hw_cfg; @@ -920,6 +988,26 @@ return alx_read_phy_reg(hw, ALX_MII_ISR, &isr); } +int alx_config_wol(struct alx_hw *hw) +{ + u32 wol = 0; + int err = 0; + + /* turn on magic packet event */ + if (hw->sleep_ctrl & ALX_SLEEP_WOL_MAGIC) + wol |= ALX_WOL0_MAGIC_EN | ALX_WOL0_PME_MAGIC_EN; + + /* turn on link up event */ + if (hw->sleep_ctrl & ALX_SLEEP_WOL_PHY) { + wol |= ALX_WOL0_LINK_EN | ALX_WOL0_PME_LINK; + /* only link up can wake up */ + err = alx_write_phy_reg(hw, ALX_MII_IER, ALX_IER_LINK_UP); + } + alx_write_mem32(hw, ALX_WOL0, wol); + + return err; +} + void alx_disable_rss(struct alx_hw *hw) { u32 ctrl = alx_read_mem32(hw, ALX_RXQ0); @@ -1044,6 +1132,70 @@ alx_post_write(hw); } +int alx_select_powersaving_speed(struct alx_hw *hw, int *speed, u8 *duplex) +{ + int i, err; + u16 lpa; + + err = alx_read_phy_link(hw); + if (err) + return err; + + if (hw->link_speed == SPEED_UNKNOWN) { + *speed = SPEED_UNKNOWN; + *duplex = DUPLEX_UNKNOWN; + return 0; + } + + err = alx_read_phy_reg(hw, MII_LPA, &lpa); + if (err) + return err; + + if (!(lpa & LPA_LPACK)) { + *speed = hw->link_speed; + return 0; + } + + if (lpa & LPA_10FULL) { + *speed = SPEED_10; + *duplex = DUPLEX_FULL; + } else if (lpa & LPA_10HALF) { + *speed = SPEED_10; + *duplex = DUPLEX_HALF; + } else if (lpa & LPA_100FULL) { + *speed = SPEED_100; + *duplex = DUPLEX_FULL; + } else { + *speed = SPEED_100; + *duplex = DUPLEX_HALF; + } + + if (*speed == hw->link_speed && *duplex == hw->duplex) + return 0; + err = alx_write_phy_reg(hw, ALX_MII_IER, 0); + if (err) + return err; + err = alx_setup_speed_duplex(hw, alx_speed_to_ethadv(*speed, *duplex) | + ADVERTISED_Autoneg, ALX_FC_ANEG | + ALX_FC_RX | ALX_FC_TX); + if (err) + return err; + + /* wait for linkup */ + for (i = 0; i < ALX_MAX_SETUP_LNK_CYCLE; i++) { + msleep(100); + + err = alx_read_phy_link(hw); + if (err < 0) + return err; + if (hw->link_speed != SPEED_UNKNOWN) + break; + } + if (i == ALX_MAX_SETUP_LNK_CYCLE) + return -ETIMEDOUT; + + return 0; +} bool alx_get_phy_info(struct alx_hw *hw) { --- linux-azure-5.8-5.8.0.orig/drivers/net/ethernet/atheros/alx/hw.h +++ linux-azure-5.8-5.8.0/drivers/net/ethernet/atheros/alx/hw.h @@ -487,6 +487,8 @@ u8 flowctrl; u32 adv_cfg; + u32 sleep_ctrl; + spinlock_t mdio_lock; struct mdio_if_info mdio; u16 phy_id[2]; @@ -549,12 +551,14 @@ void alx_enable_aspm(struct alx_hw *hw, bool l0s_en, bool l1_en); int alx_setup_speed_duplex(struct alx_hw *hw, u32 ethadv, u8 flowctrl); void alx_post_phy_link(struct alx_hw *hw); +int alx_pre_suspend(struct alx_hw *hw, int speed, u8 duplex); int alx_read_phy_reg(struct alx_hw *hw, u16 reg, u16 *phy_data); int alx_write_phy_reg(struct alx_hw *hw, u16 reg, u16 phy_data); int alx_read_phy_ext(struct alx_hw *hw, u8 dev, u16 reg, u16 *pdata); int alx_write_phy_ext(struct alx_hw *hw, u8 dev, u16 reg, u16 data); int alx_read_phy_link(struct alx_hw *hw); int alx_clear_phy_intr(struct alx_hw *hw); +int alx_config_wol(struct alx_hw *hw); void alx_cfg_mac_flowcontrol(struct alx_hw *hw, u8 fc); void alx_start_mac(struct alx_hw *hw); int alx_reset_mac(struct alx_hw *hw); @@ -563,6 +567,7 @@ void alx_configure_basic(struct alx_hw *hw); void alx_mask_msix(struct alx_hw *hw, int index, bool mask); void alx_disable_rss(struct alx_hw *hw); +int alx_select_powersaving_speed(struct alx_hw *hw, int *speed, u8 *duplex); bool alx_get_phy_info(struct alx_hw *hw); void alx_update_hw_stats(struct alx_hw *hw); --- linux-azure-5.8-5.8.0.orig/drivers/net/ethernet/atheros/alx/main.c +++ linux-azure-5.8-5.8.0/drivers/net/ethernet/atheros/alx/main.c @@ -51,6 +51,11 @@ static const char alx_drv_name[] = "alx"; +/* disable WoL by default */ +bool enable_wol; +module_param(enable_wol, bool, 0644); +MODULE_PARM_DESC(enable_wol, "Enable Wake on Lan feature"); + static void alx_free_txbuf(struct alx_tx_queue *txq, int entry) { struct alx_buffer *txb = &txq->bufs[entry]; @@ -1069,6 +1074,7 @@ alx->dev->max_mtu = ALX_MAX_FRAME_LEN(ALX_MAX_FRAME_SIZE); alx->tx_ringsz = 256; alx->rx_ringsz = 512; + hw->sleep_ctrl = ALX_SLEEP_WOL_MAGIC | ALX_SLEEP_WOL_PHY; hw->imt = 200; alx->int_mask = ALX_ISR_MISC; hw->dma_chnl = hw->max_dma_chnl; @@ -1347,6 +1353,66 @@ return 0; } +static int __alx_shutdown(struct pci_dev *pdev, bool *wol_en) +{ + struct alx_priv *alx = pci_get_drvdata(pdev); + struct net_device *netdev = alx->dev; + struct alx_hw *hw = &alx->hw; + int err, speed; + u8 duplex; + + netif_device_detach(netdev); + + if (netif_running(netdev)) + __alx_stop(alx); + +#ifdef CONFIG_PM_SLEEP + err = pci_save_state(pdev); + if (err) + return err; +#endif + + err = alx_select_powersaving_speed(hw, &speed, &duplex); + if (err) + return err; + err = alx_clear_phy_intr(hw); + if (err) + return err; + err = alx_pre_suspend(hw, speed, duplex); + if (err) + return err; + err = alx_config_wol(hw); + if (err) + return err; + + *wol_en = false; + if (hw->sleep_ctrl & ALX_SLEEP_ACTIVE) { + netif_info(alx, wol, netdev, + "wol: ctrl=%X, speed=%X\n", + hw->sleep_ctrl, speed); + device_set_wakeup_enable(&pdev->dev, true); + *wol_en = true; + } + + pci_disable_device(pdev); + + return 0; +} + +static void alx_shutdown(struct pci_dev *pdev) +{ + int err; + bool wol_en; + + err = __alx_shutdown(pdev, &wol_en); + if (!err) { + pci_wake_from_d3(pdev, wol_en); + pci_set_power_state(pdev, PCI_D3hot); + } else { + dev_err(&pdev->dev, "shutdown fail %d\n", err); + } +} + static void alx_link_check(struct work_struct *work) { struct alx_priv *alx; @@ -1837,6 +1903,8 @@ goto out_unmap; } + device_set_wakeup_enable(&pdev->dev, hw->sleep_ctrl); + netdev_info(netdev, "Qualcomm Atheros AR816x/AR817x Ethernet [%pM]\n", netdev->dev_addr); @@ -1875,41 +1943,95 @@ #ifdef CONFIG_PM_SLEEP static int alx_suspend(struct device *dev) { - struct alx_priv *alx = dev_get_drvdata(dev); + struct pci_dev *pdev = to_pci_dev(dev); + int err; + bool wol_en; + + err = __alx_shutdown(pdev, &wol_en); + if (err) { + dev_err(&pdev->dev, "shutdown fail in suspend %d\n", err); + return err; + } + + if (wol_en) { + pci_prepare_to_sleep(pdev); + } else { + pci_wake_from_d3(pdev, false); + pci_set_power_state(pdev, PCI_D3hot); + } - if (!netif_running(alx->dev)) - return 0; - netif_device_detach(alx->dev); - __alx_stop(alx); return 0; } static int alx_resume(struct device *dev) { - struct alx_priv *alx = dev_get_drvdata(dev); + struct pci_dev *pdev = to_pci_dev(dev); + struct alx_priv *alx = pci_get_drvdata(pdev); + struct net_device *netdev = alx->dev; struct alx_hw *hw = &alx->hw; int err; + pci_set_power_state(pdev, PCI_D0); + pci_restore_state(pdev); + pci_save_state(pdev); + + pci_enable_wake(pdev, PCI_D3hot, 0); + pci_enable_wake(pdev, PCI_D3cold, 0); + + hw->link_speed = SPEED_UNKNOWN; + alx->int_mask = ALX_ISR_MISC; + + alx_reset_pcie(hw); alx_reset_phy(hw); - if (!netif_running(alx->dev)) - return 0; - netif_device_attach(alx->dev); + pci_set_power_state(pdev, PCI_D0); + pci_restore_state(pdev); + pci_save_state(pdev); - rtnl_lock(); - err = __alx_open(alx, true); - rtnl_unlock(); + pci_enable_wake(pdev, PCI_D3hot, 0); + pci_enable_wake(pdev, PCI_D3cold, 0); + + hw->link_speed = SPEED_UNKNOWN; + alx->int_mask = ALX_ISR_MISC; + + alx_reset_pcie(hw); + alx_reset_phy(hw); + + err = alx_reset_mac(hw); + if (err) { + netif_err(alx, hw, alx->dev, + "resume:reset_mac fail %d\n", err); + return -EIO; + } + + err = alx_setup_speed_duplex(hw, hw->adv_cfg, hw->flowctrl); + if (err) { + netif_err(alx, hw, alx->dev, + "resume:setup_speed_duplex fail %d\n", err); + return -EIO; + } + + if (netif_running(netdev)) { + rtnl_lock(); + err = __alx_open(alx, true); + rtnl_unlock(); + if (err) + return err; + } + + netif_device_attach(netdev); return err; } +#endif +#ifdef CONFIG_PM_SLEEP static SIMPLE_DEV_PM_OPS(alx_pm_ops, alx_suspend, alx_resume); #define ALX_PM_OPS (&alx_pm_ops) #else #define ALX_PM_OPS NULL #endif - static pci_ers_result_t alx_pci_error_detected(struct pci_dev *pdev, pci_channel_state_t state) { @@ -1952,6 +2074,8 @@ } pci_set_master(pdev); + pci_enable_wake(pdev, PCI_D3hot, 0); + pci_enable_wake(pdev, PCI_D3cold, 0); alx_reset_pcie(hw); if (!alx_reset_mac(hw)) @@ -2006,6 +2130,7 @@ .id_table = alx_pci_tbl, .probe = alx_probe, .remove = alx_remove, + .shutdown = alx_shutdown, .err_handler = &alx_err_handlers, .driver.pm = ALX_PM_OPS, }; --- linux-azure-5.8-5.8.0.orig/drivers/net/ethernet/broadcom/Kconfig +++ linux-azure-5.8-5.8.0/drivers/net/ethernet/broadcom/Kconfig @@ -88,6 +88,7 @@ config CNIC tristate "QLogic CNIC support" depends on PCI && (IPV6 || IPV6=n) + depends on MMU select BNX2 select UIO help --- linux-azure-5.8-5.8.0.orig/drivers/net/ethernet/broadcom/b44.c +++ linux-azure-5.8-5.8.0/drivers/net/ethernet/broadcom/b44.c @@ -2383,7 +2383,8 @@ goto err_out_free_dev; } - if (dma_set_mask_and_coherent(sdev->dma_dev, DMA_BIT_MASK(30))) { + err = dma_set_mask_and_coherent(sdev->dma_dev, DMA_BIT_MASK(30)); + if (err) { dev_err(sdev->dev, "Required 30BIT DMA mask unsupported by the system\n"); goto err_out_powerdown; --- linux-azure-5.8-5.8.0.orig/drivers/net/ethernet/broadcom/bcmsysport.c +++ linux-azure-5.8-5.8.0/drivers/net/ethernet/broadcom/bcmsysport.c @@ -2462,8 +2462,10 @@ priv->tx_rings = devm_kcalloc(&pdev->dev, txq, sizeof(struct bcm_sysport_tx_ring), GFP_KERNEL); - if (!priv->tx_rings) - return -ENOMEM; + if (!priv->tx_rings) { + ret = -ENOMEM; + goto err_free_netdev; + } priv->is_lite = params->is_lite; priv->num_rx_desc_words = params->num_rx_desc_words; @@ -2526,6 +2528,7 @@ NETIF_F_IP_CSUM | NETIF_F_IPV6_CSUM; dev->hw_features |= dev->features; dev->vlan_features |= dev->features; + dev->max_mtu = UMAC_MAX_MTU_SIZE; /* Request the WOL interrupt and advertise suspend if available */ priv->wol_irq_disabled = 1; --- linux-azure-5.8-5.8.0.orig/drivers/net/ethernet/broadcom/bnxt/bnxt.c +++ linux-azure-5.8-5.8.0/drivers/net/ethernet/broadcom/bnxt/bnxt.c @@ -1141,6 +1141,9 @@ static void bnxt_queue_fw_reset_work(struct bnxt *bp, unsigned long delay) { + if (!(test_bit(BNXT_STATE_IN_FW_RESET, &bp->state))) + return; + if (BNXT_PF(bp)) queue_delayed_work(bnxt_pf_wq, &bp->fw_reset_task, delay); else @@ -1155,14 +1158,6 @@ schedule_work(&bp->sp_task); } -static void bnxt_cancel_sp_work(struct bnxt *bp) -{ - if (BNXT_PF(bp)) - flush_workqueue(bnxt_pf_wq); - else - cancel_work_sync(&bp->sp_task); -} - static void bnxt_sched_reset(struct bnxt *bp, struct bnxt_rx_ring_info *rxr) { if (!rxr->bnapi->in_reset) { @@ -4193,7 +4188,8 @@ u32 bar_offset = BNXT_GRCPF_REG_CHIMP_COMM; u16 dst = BNXT_HWRM_CHNL_CHIMP; - if (test_bit(BNXT_STATE_FW_FATAL_COND, &bp->state)) + if (BNXT_NO_FW_ACCESS(bp) && + le16_to_cpu(req->req_type) != HWRM_FUNC_RESET) return -EBUSY; if (msg_len > BNXT_HWRM_MAX_REQ_LEN) { @@ -5525,7 +5521,7 @@ struct hwrm_ring_free_output *resp = bp->hwrm_cmd_resp_addr; u16 error_code; - if (test_bit(BNXT_STATE_FW_FATAL_COND, &bp->state)) + if (BNXT_NO_FW_ACCESS(bp)) return 0; bnxt_hwrm_cmd_hdr_init(bp, &req, HWRM_RING_FREE, cmpl_ring_id, -1); @@ -6499,8 +6495,10 @@ ctx->tqm_fp_rings_count = resp->tqm_fp_rings_count; if (!ctx->tqm_fp_rings_count) ctx->tqm_fp_rings_count = bp->max_q; + else if (ctx->tqm_fp_rings_count > BNXT_MAX_TQM_FP_RINGS) + ctx->tqm_fp_rings_count = BNXT_MAX_TQM_FP_RINGS; - tqm_rings = ctx->tqm_fp_rings_count + 1; + tqm_rings = ctx->tqm_fp_rings_count + BNXT_MAX_TQM_SP_RINGS; ctx_pg = kcalloc(tqm_rings, sizeof(*ctx_pg), GFP_KERNEL); if (!ctx_pg) { kfree(ctx); @@ -6634,7 +6632,8 @@ pg_attr = &req.tqm_sp_pg_size_tqm_sp_lvl, pg_dir = &req.tqm_sp_page_dir, ena = FUNC_BACKING_STORE_CFG_REQ_ENABLES_TQM_SP; - i < 9; i++, num_entries++, pg_attr++, pg_dir++, ena <<= 1) { + i < BNXT_MAX_TQM_RINGS; + i++, num_entries++, pg_attr++, pg_dir++, ena <<= 1) { if (!(enables & ena)) continue; @@ -7497,7 +7496,7 @@ if (set_tpa) tpa_flags = bp->flags & BNXT_FLAG_TPA; - else if (test_bit(BNXT_STATE_FW_FATAL_COND, &bp->state)) + else if (BNXT_NO_FW_ACCESS(bp)) return 0; for (i = 0; i < bp->nr_vnics; i++) { rc = bnxt_hwrm_vnic_set_tpa(bp, i, tpa_flags); @@ -8395,9 +8394,10 @@ txr->dev_state = BNXT_DEV_STATE_CLOSING; } } + /* Drop carrier first to prevent TX timeout */ + netif_carrier_off(bp->dev); /* Stop all TX queues */ netif_tx_disable(bp->dev); - netif_carrier_off(bp->dev); } void bnxt_tx_enable(struct bnxt *bp) @@ -8423,6 +8423,11 @@ u16 fec; netif_carrier_on(bp->dev); + speed = bnxt_fw_to_ethtool_speed(bp->link_info.link_speed); + if (speed == SPEED_UNKNOWN) { + netdev_info(bp->dev, "NIC Link is Up, speed unknown\n"); + return; + } if (bp->link_info.duplex == BNXT_LINK_DUPLEX_FULL) duplex = "full"; else @@ -8435,7 +8440,6 @@ flow_ctrl = "ON - receive"; else flow_ctrl = "none"; - speed = bnxt_fw_to_ethtool_speed(bp->link_info.link_speed); netdev_info(bp->dev, "NIC Link is Up, %u Mbps %s duplex, Flow control: %s\n", speed, duplex, flow_ctrl); if (bp->flags & BNXT_FLAG_EEE_CAP) @@ -8987,16 +8991,17 @@ struct hwrm_temp_monitor_query_input req = {0}; struct hwrm_temp_monitor_query_output *resp; struct bnxt *bp = dev_get_drvdata(dev); - u32 temp = 0; + u32 len = 0; + int rc; resp = bp->hwrm_cmd_resp_addr; bnxt_hwrm_cmd_hdr_init(bp, &req, HWRM_TEMP_MONITOR_QUERY, -1, -1); mutex_lock(&bp->hwrm_cmd_lock); - if (!_hwrm_send_message(bp, &req, sizeof(req), HWRM_CMD_TIMEOUT)) - temp = resp->temp * 1000; /* display millidegree */ + rc = _hwrm_send_message(bp, &req, sizeof(req), HWRM_CMD_TIMEOUT); + if (!rc) + len = sprintf(buf, "%u\n", resp->temp * 1000); /* display millidegree */ mutex_unlock(&bp->hwrm_cmd_lock); - - return sprintf(buf, "%u\n", temp); + return rc ?: len; } static SENSOR_DEVICE_ATTR(temp1_input, 0444, bnxt_show_temp, NULL, 0); @@ -9016,7 +9021,16 @@ static void bnxt_hwmon_open(struct bnxt *bp) { + struct hwrm_temp_monitor_query_input req = {0}; struct pci_dev *pdev = bp->pdev; + int rc; + + bnxt_hwrm_cmd_hdr_init(bp, &req, HWRM_TEMP_MONITOR_QUERY, -1, -1); + rc = hwrm_send_message_silent(bp, &req, sizeof(req), HWRM_CMD_TIMEOUT); + if (rc == -EACCES || rc == -EOPNOTSUPP) { + bnxt_hwmon_close(bp); + return; + } if (bp->hwmon_dev) return; @@ -9178,15 +9192,15 @@ } } - bnxt_enable_napi(bp); - bnxt_debug_dev_init(bp); - rc = bnxt_init_nic(bp, irq_re_init); if (rc) { netdev_err(bp->dev, "bnxt_init_nic err: %x\n", rc); - goto open_err; + goto open_err_irq; } + bnxt_enable_napi(bp); + bnxt_debug_dev_init(bp); + if (link_re_init) { mutex_lock(&bp->link_lock); rc = bnxt_update_phy_setting(bp); @@ -9217,10 +9231,6 @@ bnxt_vf_reps_open(bp); return 0; -open_err: - bnxt_debug_dev_exit(bp); - bnxt_disable_napi(bp); - open_err_irq: bnxt_del_napi(bp); @@ -9236,7 +9246,10 @@ { int rc = 0; - rc = __bnxt_open_nic(bp, irq_re_init, link_re_init); + if (test_bit(BNXT_STATE_ABORT_ERR, &bp->state)) + rc = -EIO; + if (!rc) + rc = __bnxt_open_nic(bp, irq_re_init, link_re_init); if (rc) { netdev_err(bp->dev, "nic open fail (rc: %x)\n", rc); dev_close(bp->dev); @@ -10932,7 +10945,8 @@ if (dma_set_mask_and_coherent(&pdev->dev, DMA_BIT_MASK(64)) != 0 && dma_set_mask_and_coherent(&pdev->dev, DMA_BIT_MASK(32)) != 0) { dev_err(&pdev->dev, "System does not support DMA, aborting\n"); - goto init_err_disable; + rc = -EIO; + goto init_err_release; } pci_set_master(pdev); @@ -11494,15 +11508,19 @@ if (BNXT_PF(bp)) bnxt_sriov_disable(bp); - bnxt_dl_fw_reporters_destroy(bp, true); if (BNXT_PF(bp)) devlink_port_type_clear(&bp->dl_port); pci_disable_pcie_error_reporting(pdev); unregister_netdev(dev); + clear_bit(BNXT_STATE_IN_FW_RESET, &bp->state); + /* Flush any pending tasks */ + cancel_work_sync(&bp->sp_task); + cancel_delayed_work_sync(&bp->fw_reset_task); + bp->sp_event = 0; + + bnxt_dl_fw_reporters_destroy(bp, true); bnxt_dl_unregister(bp); bnxt_shutdown_tc(bp); - bnxt_cancel_sp_work(bp); - bp->sp_event = 0; bnxt_clear_int_mode(bp); bnxt_hwrm_func_drv_unrgtr(bp); @@ -11801,7 +11819,7 @@ static void bnxt_vpd_read_info(struct bnxt *bp) { struct pci_dev *pdev = bp->pdev; - int i, len, pos, ro_size; + int i, len, pos, ro_size, size; ssize_t vpd_size; u8 *vpd_data; @@ -11836,7 +11854,8 @@ if (len + pos > vpd_size) goto read_sn; - strlcpy(bp->board_partno, &vpd_data[pos], min(len, BNXT_VPD_FLD_LEN)); + size = min(len, BNXT_VPD_FLD_LEN - 1); + memcpy(bp->board_partno, &vpd_data[pos], size); read_sn: pos = pci_vpd_find_info_keyword(vpd_data, i, ro_size, @@ -11849,7 +11868,8 @@ if (len + pos > vpd_size) goto exit; - strlcpy(bp->board_serialno, &vpd_data[pos], min(len, BNXT_VPD_FLD_LEN)); + size = min(len, BNXT_VPD_FLD_LEN - 1); + memcpy(bp->board_serialno, &vpd_data[pos], size); exit: kfree(vpd_data); } @@ -12044,6 +12064,7 @@ create_singlethread_workqueue("bnxt_pf_wq"); if (!bnxt_pf_wq) { dev_err(&pdev->dev, "Unable to create workqueue.\n"); + rc = -ENOMEM; goto init_err_pci_clean; } } @@ -12065,6 +12086,7 @@ (long)pci_resource_start(pdev, 0), dev->dev_addr); pcie_print_link_status(pdev); + pci_save_state(pdev); return 0; init_err_cleanup: @@ -12222,6 +12244,9 @@ return PCI_ERS_RESULT_DISCONNECT; } + if (state == pci_channel_io_frozen) + set_bit(BNXT_STATE_PCI_CHANNEL_IO_FROZEN, &bp->state); + if (netif_running(netdev)) bnxt_close(netdev); @@ -12246,10 +12271,10 @@ */ static pci_ers_result_t bnxt_io_slot_reset(struct pci_dev *pdev) { + pci_ers_result_t result = PCI_ERS_RESULT_DISCONNECT; struct net_device *netdev = pci_get_drvdata(pdev); struct bnxt *bp = netdev_priv(netdev); - int err = 0; - pci_ers_result_t result = PCI_ERS_RESULT_DISCONNECT; + int err = 0, off; netdev_info(bp->dev, "PCI Slot Reset\n"); @@ -12260,24 +12285,26 @@ "Cannot re-enable PCI device after reset.\n"); } else { pci_set_master(pdev); + /* Upon fatal error, our device internal logic that latches to + * BAR value is getting reset and will restore only upon + * rewritting the BARs. + * + * As pci_restore_state() does not re-write the BARs if the + * value is same as saved value earlier, driver needs to + * write the BARs to 0 to force restore, in case of fatal error. + */ + if (test_and_clear_bit(BNXT_STATE_PCI_CHANNEL_IO_FROZEN, + &bp->state)) { + for (off = PCI_BASE_ADDRESS_0; + off <= PCI_BASE_ADDRESS_5; off += 4) + pci_write_config_dword(bp->pdev, off, 0); + } + pci_restore_state(pdev); + pci_save_state(pdev); err = bnxt_hwrm_func_reset(bp); - if (!err) { - err = bnxt_hwrm_func_qcaps(bp); - if (!err && netif_running(netdev)) - err = bnxt_open(netdev); - } - bnxt_ulp_start(bp, err); - if (!err) { - bnxt_reenable_sriov(bp); + if (!err) result = PCI_ERS_RESULT_RECOVERED; - } - } - - if (result != PCI_ERS_RESULT_RECOVERED) { - if (netif_running(netdev)) - dev_close(netdev); - pci_disable_device(pdev); } rtnl_unlock(); @@ -12295,10 +12322,21 @@ static void bnxt_io_resume(struct pci_dev *pdev) { struct net_device *netdev = pci_get_drvdata(pdev); + struct bnxt *bp = netdev_priv(netdev); + int err; + netdev_info(bp->dev, "PCI Slot Resume\n"); rtnl_lock(); - netif_device_attach(netdev); + err = bnxt_hwrm_func_qcaps(bp); + if (!err && netif_running(netdev)) + err = bnxt_open(netdev); + + bnxt_ulp_start(bp, err); + if (!err) { + bnxt_reenable_sriov(bp); + netif_device_attach(netdev); + } rtnl_unlock(); } --- linux-azure-5.8-5.8.0.orig/drivers/net/ethernet/broadcom/bnxt/bnxt.h +++ linux-azure-5.8-5.8.0/drivers/net/ethernet/broadcom/bnxt/bnxt.h @@ -1341,6 +1341,11 @@ struct bnxt_ctx_pg_info **ctx_pg_tbl; }; +#define BNXT_MAX_TQM_SP_RINGS 1 +#define BNXT_MAX_TQM_FP_RINGS 8 +#define BNXT_MAX_TQM_RINGS \ + (BNXT_MAX_TQM_SP_RINGS + BNXT_MAX_TQM_FP_RINGS) + struct bnxt_ctx_mem_info { u32 qp_max_entries; u16 qp_min_qp1_entries; @@ -1379,7 +1384,7 @@ struct bnxt_ctx_pg_info stat_mem; struct bnxt_ctx_pg_info mrav_mem; struct bnxt_ctx_pg_info tim_mem; - struct bnxt_ctx_pg_info *tqm_mem[9]; + struct bnxt_ctx_pg_info *tqm_mem[BNXT_MAX_TQM_RINGS]; }; struct bnxt_fw_health { @@ -1672,6 +1677,11 @@ #define BNXT_STATE_ABORT_ERR 5 #define BNXT_STATE_FW_FATAL_COND 6 #define BNXT_STATE_DRV_REGISTERED 7 +#define BNXT_STATE_PCI_CHANNEL_IO_FROZEN 8 + +#define BNXT_NO_FW_ACCESS(bp) \ + (test_bit(BNXT_STATE_FW_FATAL_COND, &(bp)->state) || \ + pci_channel_offline((bp)->pdev)) struct bnxt_irq *irq_tbl; int total_irqs; --- linux-azure-5.8-5.8.0.orig/drivers/net/ethernet/broadcom/bnxt/bnxt_ethtool.c +++ linux-azure-5.8-5.8.0/drivers/net/ethernet/broadcom/bnxt/bnxt_ethtool.c @@ -494,20 +494,13 @@ static int bnxt_get_num_ring_stats(struct bnxt *bp) { int rx, tx, cmn; - bool sh = false; - - if (bp->flags & BNXT_FLAG_SHARED_RINGS) - sh = true; rx = NUM_RING_RX_HW_STATS + NUM_RING_RX_SW_STATS + bnxt_get_num_tpa_ring_stats(bp); tx = NUM_RING_TX_HW_STATS; cmn = NUM_RING_CMN_SW_STATS; - if (sh) - return (rx + tx + cmn) * bp->cp_nr_rings; - else - return rx * bp->rx_nr_rings + tx * bp->tx_nr_rings + - cmn * bp->cp_nr_rings; + return rx * bp->rx_nr_rings + tx * bp->tx_nr_rings + + cmn * bp->cp_nr_rings; } static int bnxt_get_num_stats(struct bnxt *bp) @@ -847,7 +840,7 @@ int max_tx_sch_inputs; /* Get the most up-to-date max_tx_sch_inputs. */ - if (BNXT_NEW_RM(bp)) + if (netif_running(dev) && BNXT_NEW_RM(bp)) bnxt_hwrm_func_resc_qcaps(bp, false); max_tx_sch_inputs = hw_resc->max_tx_sch_inputs; @@ -1742,9 +1735,12 @@ if (!BNXT_PHY_CFG_ABLE(bp)) return -EOPNOTSUPP; + mutex_lock(&bp->link_lock); if (epause->autoneg) { - if (!(link_info->autoneg & BNXT_AUTONEG_SPEED)) - return -EINVAL; + if (!(link_info->autoneg & BNXT_AUTONEG_SPEED)) { + rc = -EINVAL; + goto pause_exit; + } link_info->autoneg |= BNXT_AUTONEG_FLOW_CTRL; if (bp->hwrm_spec_code >= 0x10201) @@ -1765,11 +1761,11 @@ if (epause->tx_pause) link_info->req_flow_ctrl |= BNXT_LINK_PAUSE_TX; - if (netif_running(dev)) { - mutex_lock(&bp->link_lock); + if (netif_running(dev)) rc = bnxt_hwrm_set_pause(bp); - mutex_unlock(&bp->link_lock); - } + +pause_exit: + mutex_unlock(&bp->link_lock); return rc; } @@ -2270,6 +2266,9 @@ if (rc != 0) return rc; + if (!dir_entries || !entry_length) + return -EIO; + /* Insert 2 bytes of directory info (count and size of entries) */ if (len < 2) return -EINVAL; @@ -2503,8 +2502,7 @@ struct bnxt *bp = netdev_priv(dev); struct ethtool_eee *eee = &bp->eee; struct bnxt_link_info *link_info = &bp->link_info; - u32 advertising = - _bnxt_fw_to_ethtool_adv_spds(link_info->advertising, 0); + u32 advertising; int rc = 0; if (!BNXT_PHY_CFG_ABLE(bp)) @@ -2513,19 +2511,23 @@ if (!(bp->flags & BNXT_FLAG_EEE_CAP)) return -EOPNOTSUPP; + mutex_lock(&bp->link_lock); + advertising = _bnxt_fw_to_ethtool_adv_spds(link_info->advertising, 0); if (!edata->eee_enabled) goto eee_ok; if (!(link_info->autoneg & BNXT_AUTONEG_SPEED)) { netdev_warn(dev, "EEE requires autoneg\n"); - return -EINVAL; + rc = -EINVAL; + goto eee_exit; } if (edata->tx_lpi_enabled) { if (bp->lpi_tmr_hi && (edata->tx_lpi_timer > bp->lpi_tmr_hi || edata->tx_lpi_timer < bp->lpi_tmr_lo)) { netdev_warn(dev, "Valid LPI timer range is %d and %d microsecs\n", bp->lpi_tmr_lo, bp->lpi_tmr_hi); - return -EINVAL; + rc = -EINVAL; + goto eee_exit; } else if (!bp->lpi_tmr_hi) { edata->tx_lpi_timer = eee->tx_lpi_timer; } @@ -2535,7 +2537,8 @@ } else if (edata->advertised & ~advertising) { netdev_warn(dev, "EEE advertised %x must be a subset of autoneg advertised speeds %x\n", edata->advertised, advertising); - return -EINVAL; + rc = -EINVAL; + goto eee_exit; } eee->advertised = edata->advertised; @@ -2547,6 +2550,8 @@ if (netif_running(dev)) rc = bnxt_hwrm_set_link_setting(bp, false, true); +eee_exit: + mutex_unlock(&bp->link_lock); return rc; } @@ -2681,7 +2686,7 @@ /* Read A2 portion of the EEPROM */ if (length) { start -= ETH_MODULE_SFF_8436_LEN; - rc = bnxt_read_sfp_module_eeprom_info(bp, I2C_DEV_ADDR_A2, 1, + rc = bnxt_read_sfp_module_eeprom_info(bp, I2C_DEV_ADDR_A2, 0, start, length, data); } return rc; --- linux-azure-5.8-5.8.0.orig/drivers/net/ethernet/broadcom/bnxt/bnxt_ulp.c +++ linux-azure-5.8-5.8.0/drivers/net/ethernet/broadcom/bnxt/bnxt_ulp.c @@ -222,8 +222,12 @@ int bnxt_get_ulp_stat_ctxs(struct bnxt *bp) { - if (bnxt_ulp_registered(bp->edev, BNXT_ROCE_ULP)) - return BNXT_MIN_ROCE_STAT_CTXS; + if (bnxt_ulp_registered(bp->edev, BNXT_ROCE_ULP)) { + struct bnxt_en_dev *edev = bp->edev; + + if (edev->ulp_tbl[BNXT_ROCE_ULP].msix_requested) + return BNXT_MIN_ROCE_STAT_CTXS; + } return 0; } --- linux-azure-5.8-5.8.0.orig/drivers/net/ethernet/broadcom/genet/bcmgenet.c +++ linux-azure-5.8-5.8.0/drivers/net/ethernet/broadcom/genet/bcmgenet.c @@ -1364,7 +1364,7 @@ case ETHER_FLOW: eth_mask = &cmd->fs.m_u.ether_spec; /* don't allow mask which isn't valid */ - if (VALIDATE_MASK(eth_mask->h_source) || + if (VALIDATE_MASK(eth_mask->h_dest) || VALIDATE_MASK(eth_mask->h_source) || VALIDATE_MASK(eth_mask->h_proto)) { netdev_err(dev, "rxnfc: Unsupported mask\n"); @@ -4052,8 +4052,10 @@ clk_disable_unprepare(priv->clk); err = register_netdev(dev); - if (err) + if (err) { + bcmgenet_mii_exit(dev); goto err; + } return err; --- linux-azure-5.8-5.8.0.orig/drivers/net/ethernet/broadcom/tg3.c +++ linux-azure-5.8-5.8.0/drivers/net/ethernet/broadcom/tg3.c @@ -7221,8 +7221,8 @@ static inline void tg3_reset_task_cancel(struct tg3 *tp) { - cancel_work_sync(&tp->reset_task); - tg3_flag_clear(tp, RESET_TASK_PENDING); + if (test_and_clear_bit(TG3_FLAG_RESET_TASK_PENDING, tp->tg3_flags)) + cancel_work_sync(&tp->reset_task); tg3_flag_clear(tp, TX_RECOVERY_PENDING); } @@ -11209,18 +11209,27 @@ tg3_halt(tp, RESET_KIND_SHUTDOWN, 0); err = tg3_init_hw(tp, true); - if (err) + if (err) { + tg3_full_unlock(tp); + tp->irq_sync = 0; + tg3_napi_enable(tp); + /* Clear this flag so that tg3_reset_task_cancel() will not + * call cancel_work_sync() and wait forever. + */ + tg3_flag_clear(tp, RESET_TASK_PENDING); + dev_close(tp->dev); goto out; + } tg3_netif_start(tp); -out: tg3_full_unlock(tp); if (!err) tg3_phy_start(tp); tg3_flag_clear(tp, RESET_TASK_PENDING); +out: rtnl_unlock(); } --- linux-azure-5.8-5.8.0.orig/drivers/net/ethernet/cadence/macb_main.c +++ linux-azure-5.8-5.8.0/drivers/net/ethernet/cadence/macb_main.c @@ -578,7 +578,7 @@ if (bp->caps & MACB_CAPS_MACB_IS_EMAC) { if (state->interface == PHY_INTERFACE_MODE_RMII) ctrl |= MACB_BIT(RM9200_RMII); - } else { + } else if (macb_is_gem(bp)) { ctrl &= ~(GEM_BIT(SGMIIEN) | GEM_BIT(PCSSEL)); if (state->interface == PHY_INTERFACE_MODE_SGMII) @@ -639,13 +639,15 @@ ctrl |= MACB_BIT(FD); if (!(bp->caps & MACB_CAPS_MACB_IS_EMAC)) { - ctrl &= ~(GEM_BIT(GBE) | MACB_BIT(PAE)); + ctrl &= ~MACB_BIT(PAE); + if (macb_is_gem(bp)) { + ctrl &= ~GEM_BIT(GBE); - if (speed == SPEED_1000) - ctrl |= GEM_BIT(GBE); + if (speed == SPEED_1000) + ctrl |= GEM_BIT(GBE); + } - /* We do not support MLO_PAUSE_RX yet */ - if (tx_pause) + if (rx_pause) ctrl |= MACB_BIT(PAE); macb_set_tx_clk(bp->tx_clk, speed, ndev); @@ -1870,7 +1872,8 @@ static int macb_pad_and_fcs(struct sk_buff **skb, struct net_device *ndev) { - bool cloned = skb_cloned(*skb) || skb_header_cloned(*skb); + bool cloned = skb_cloned(*skb) || skb_header_cloned(*skb) || + skb_is_nonlinear(*skb); int padlen = ETH_ZLEN - (*skb)->len; int headroom = skb_headroom(*skb); int tailroom = skb_tailroom(*skb); --- linux-azure-5.8-5.8.0.orig/drivers/net/ethernet/cavium/liquidio/cn23xx_pf_device.c +++ linux-azure-5.8-5.8.0/drivers/net/ethernet/cavium/liquidio/cn23xx_pf_device.c @@ -1167,7 +1167,7 @@ oct->pf_num = ((fdl_bit >> CN23XX_PCIE_SRIOV_FDL_BIT_POS) & CN23XX_PCIE_SRIOV_FDL_MASK); } else { - ret = EINVAL; + ret = -EINVAL; /* Under some virtual environments, extended PCI regs are * inaccessible, in which case the above read will have failed. --- linux-azure-5.8-5.8.0.orig/drivers/net/ethernet/cavium/octeon/octeon_mgmt.c +++ linux-azure-5.8-5.8.0/drivers/net/ethernet/cavium/octeon/octeon_mgmt.c @@ -1219,7 +1219,7 @@ */ if (netdev->phydev) { netif_carrier_off(netdev); - phy_start_aneg(netdev->phydev); + phy_start(netdev->phydev); } netif_wake_queue(netdev); @@ -1247,8 +1247,10 @@ napi_disable(&p->napi); netif_stop_queue(netdev); - if (netdev->phydev) + if (netdev->phydev) { + phy_stop(netdev->phydev); phy_disconnect(netdev->phydev); + } netif_carrier_off(netdev); --- linux-azure-5.8-5.8.0.orig/drivers/net/ethernet/cavium/thunder/nicvf_main.c +++ linux-azure-5.8-5.8.0/drivers/net/ethernet/cavium/thunder/nicvf_main.c @@ -2042,11 +2042,11 @@ /* Save message data locally to prevent them from * being overwritten by next ndo_set_rx_mode call(). */ - spin_lock(&nic->rx_mode_wq_lock); + spin_lock_bh(&nic->rx_mode_wq_lock); mode = vf_work->mode; mc = vf_work->mc; vf_work->mc = NULL; - spin_unlock(&nic->rx_mode_wq_lock); + spin_unlock_bh(&nic->rx_mode_wq_lock); __nicvf_set_rx_mode_task(mode, mc, nic); } @@ -2180,6 +2180,9 @@ nic->max_queues *= 2; nic->ptp_clock = ptp_clock; + /* Initialize mutex that serializes usage of VF's mailbox */ + mutex_init(&nic->rx_mode_mtx); + /* MAP VF's configuration registers */ nic->reg_base = pcim_iomap(pdev, PCI_CFG_REG_BAR_NUM, 0); if (!nic->reg_base) { @@ -2256,7 +2259,6 @@ INIT_WORK(&nic->rx_mode_work.work, nicvf_set_rx_mode_task); spin_lock_init(&nic->rx_mode_wq_lock); - mutex_init(&nic->rx_mode_mtx); err = register_netdev(netdev); if (err) { --- linux-azure-5.8-5.8.0.orig/drivers/net/ethernet/chelsio/cxgb3/sge.c +++ linux-azure-5.8-5.8.0/drivers/net/ethernet/chelsio/cxgb3/sge.c @@ -3176,6 +3176,7 @@ GFP_KERNEL | __GFP_COMP); if (!avail) { CH_ALERT(adapter, "free list queue 0 initialization failed\n"); + ret = -ENOMEM; goto err; } if (avail < q->fl[0].size) --- linux-azure-5.8-5.8.0.orig/drivers/net/ethernet/chelsio/cxgb4/cxgb4_filter.c +++ linux-azure-5.8-5.8.0/drivers/net/ethernet/chelsio/cxgb4/cxgb4_filter.c @@ -145,13 +145,13 @@ int err; /* do a set-tcb for smac-sel and CWR bit.. */ - err = set_tcb_tflag(adap, f, f->tid, TF_CCTRL_CWR_S, 1, 1); - if (err) - goto smac_err; - err = set_tcb_field(adap, f, f->tid, TCB_SMAC_SEL_W, TCB_SMAC_SEL_V(TCB_SMAC_SEL_M), TCB_SMAC_SEL_V(f->smt->idx), 1); + if (err) + goto smac_err; + + err = set_tcb_tflag(adap, f, f->tid, TF_CCTRL_CWR_S, 1, 1); if (!err) return 0; @@ -865,6 +865,7 @@ FW_FILTER_WR_DIRSTEERHASH_V(f->fs.dirsteerhash) | FW_FILTER_WR_LPBK_V(f->fs.action == FILTER_SWITCH) | FW_FILTER_WR_DMAC_V(f->fs.newdmac) | + FW_FILTER_WR_SMAC_V(f->fs.newsmac) | FW_FILTER_WR_INSVLAN_V(f->fs.newvlan == VLAN_INSERT || f->fs.newvlan == VLAN_REWRITE) | FW_FILTER_WR_RMVLAN_V(f->fs.newvlan == VLAN_REMOVE || @@ -882,7 +883,8 @@ FW_FILTER_WR_OVLAN_VLD_V(f->fs.val.ovlan_vld) | FW_FILTER_WR_IVLAN_VLDM_V(f->fs.mask.ivlan_vld) | FW_FILTER_WR_OVLAN_VLDM_V(f->fs.mask.ovlan_vld)); - fwr->smac_sel = 0; + if (f->fs.newsmac) + fwr->smac_sel = f->smt->idx; fwr->rx_chan_rx_rpl_iq = htons(FW_FILTER_WR_RX_CHAN_V(0) | FW_FILTER_WR_RX_RPL_IQ_V(adapter->sge.fw_evtq.abs_id)); @@ -1321,11 +1323,8 @@ TX_QUEUE_V(f->fs.nat_mode) | T5_OPT_2_VALID_F | RX_CHANNEL_V(cxgb4_port_e2cchan(f->dev)) | - CONG_CNTRL_V((f->fs.action == FILTER_DROP) | - (f->fs.dirsteer << 1)) | PACE_V((f->fs.maskhash) | - ((f->fs.dirsteerhash) << 1)) | - CCTRL_ECN_V(f->fs.action == FILTER_SWITCH)); + ((f->fs.dirsteerhash) << 1))); } static void mk_act_open_req(struct filter_entry *f, struct sk_buff *skb, @@ -1361,11 +1360,8 @@ TX_QUEUE_V(f->fs.nat_mode) | T5_OPT_2_VALID_F | RX_CHANNEL_V(cxgb4_port_e2cchan(f->dev)) | - CONG_CNTRL_V((f->fs.action == FILTER_DROP) | - (f->fs.dirsteer << 1)) | PACE_V((f->fs.maskhash) | - ((f->fs.dirsteerhash) << 1)) | - CCTRL_ECN_V(f->fs.action == FILTER_SWITCH)); + ((f->fs.dirsteerhash) << 1))); } static int cxgb4_set_hash_filter(struct net_device *dev, @@ -1906,13 +1902,16 @@ static int configure_filter_tcb(struct adapter *adap, unsigned int tid, struct filter_entry *f) { - if (f->fs.hitcnts) + if (f->fs.hitcnts) { set_tcb_field(adap, f, tid, TCB_TIMESTAMP_W, - TCB_TIMESTAMP_V(TCB_TIMESTAMP_M) | + TCB_TIMESTAMP_V(TCB_TIMESTAMP_M), + TCB_TIMESTAMP_V(0ULL), + 1); + set_tcb_field(adap, f, tid, TCB_RTT_TS_RECENT_AGE_W, TCB_RTT_TS_RECENT_AGE_V(TCB_RTT_TS_RECENT_AGE_M), - TCB_TIMESTAMP_V(0ULL) | TCB_RTT_TS_RECENT_AGE_V(0ULL), 1); + } if (f->fs.newdmac) set_tcb_tflag(adap, f, tid, TF_CCTRL_ECE_S, 1, @@ -2034,6 +2033,20 @@ } return; } + switch (f->fs.action) { + case FILTER_PASS: + if (f->fs.dirsteer) + set_tcb_tflag(adap, f, tid, + TF_DIRECT_STEER_S, 1, 1); + break; + case FILTER_DROP: + set_tcb_tflag(adap, f, tid, TF_DROP_S, 1, 1); + break; + case FILTER_SWITCH: + set_tcb_tflag(adap, f, tid, TF_LPBK_S, 1, 1); + break; + } + break; default: @@ -2101,22 +2114,11 @@ if (ctx) ctx->result = 0; } else if (ret == FW_FILTER_WR_FLT_ADDED) { - int err = 0; - - if (f->fs.newsmac) - err = configure_filter_smac(adap, f); - - if (!err) { - f->pending = 0; /* async setup completed */ - f->valid = 1; - if (ctx) { - ctx->result = 0; - ctx->tid = idx; - } - } else { - clear_filter(adap, f); - if (ctx) - ctx->result = err; + f->pending = 0; /* async setup completed */ + f->valid = 1; + if (ctx) { + ctx->result = 0; + ctx->tid = idx; } } else { /* Something went wrong. Issue a warning about the --- linux-azure-5.8-5.8.0.orig/drivers/net/ethernet/chelsio/cxgb4/cxgb4_mps.c +++ linux-azure-5.8-5.8.0/drivers/net/ethernet/chelsio/cxgb4/cxgb4_mps.c @@ -229,7 +229,7 @@ { struct mps_entries_ref *mps_entry, *tmp; - if (!list_empty(&adap->mps_ref)) + if (list_empty(&adap->mps_ref)) return; spin_lock(&adap->mps_ref_lock); --- linux-azure-5.8-5.8.0.orig/drivers/net/ethernet/chelsio/cxgb4/cxgb4_tc_flower.c +++ linux-azure-5.8-5.8.0/drivers/net/ethernet/chelsio/cxgb4/cxgb4_tc_flower.c @@ -60,6 +60,89 @@ PEDIT_FIELDS(IP6_, DST_127_96, 4, nat_lip, 12), }; +static const struct cxgb4_natmode_config cxgb4_natmode_config_array[] = { + /* Default supported NAT modes */ + { + .chip = CHELSIO_T5, + .flags = CXGB4_ACTION_NATMODE_NONE, + .natmode = NAT_MODE_NONE, + }, + { + .chip = CHELSIO_T5, + .flags = CXGB4_ACTION_NATMODE_DIP, + .natmode = NAT_MODE_DIP, + }, + { + .chip = CHELSIO_T5, + .flags = CXGB4_ACTION_NATMODE_DIP | CXGB4_ACTION_NATMODE_DPORT, + .natmode = NAT_MODE_DIP_DP, + }, + { + .chip = CHELSIO_T5, + .flags = CXGB4_ACTION_NATMODE_DIP | CXGB4_ACTION_NATMODE_DPORT | + CXGB4_ACTION_NATMODE_SIP, + .natmode = NAT_MODE_DIP_DP_SIP, + }, + { + .chip = CHELSIO_T5, + .flags = CXGB4_ACTION_NATMODE_DIP | CXGB4_ACTION_NATMODE_DPORT | + CXGB4_ACTION_NATMODE_SPORT, + .natmode = NAT_MODE_DIP_DP_SP, + }, + { + .chip = CHELSIO_T5, + .flags = CXGB4_ACTION_NATMODE_SIP | CXGB4_ACTION_NATMODE_SPORT, + .natmode = NAT_MODE_SIP_SP, + }, + { + .chip = CHELSIO_T5, + .flags = CXGB4_ACTION_NATMODE_DIP | CXGB4_ACTION_NATMODE_SIP | + CXGB4_ACTION_NATMODE_SPORT, + .natmode = NAT_MODE_DIP_SIP_SP, + }, + { + .chip = CHELSIO_T5, + .flags = CXGB4_ACTION_NATMODE_DIP | CXGB4_ACTION_NATMODE_SIP | + CXGB4_ACTION_NATMODE_DPORT | + CXGB4_ACTION_NATMODE_SPORT, + .natmode = NAT_MODE_ALL, + }, + /* T6+ can ignore L4 ports when they're disabled. */ + { + .chip = CHELSIO_T6, + .flags = CXGB4_ACTION_NATMODE_SIP, + .natmode = NAT_MODE_SIP_SP, + }, + { + .chip = CHELSIO_T6, + .flags = CXGB4_ACTION_NATMODE_DIP | CXGB4_ACTION_NATMODE_SPORT, + .natmode = NAT_MODE_DIP_DP_SP, + }, + { + .chip = CHELSIO_T6, + .flags = CXGB4_ACTION_NATMODE_DIP | CXGB4_ACTION_NATMODE_SIP, + .natmode = NAT_MODE_ALL, + }, +}; + +static void cxgb4_action_natmode_tweak(struct ch_filter_specification *fs, + u8 natmode_flags) +{ + u8 i = 0; + + /* Translate the enabled NAT 4-tuple fields to one of the + * hardware supported NAT mode configurations. This ensures + * that we pick a valid combination, where the disabled fields + * do not get overwritten to 0. + */ + for (i = 0; i < ARRAY_SIZE(cxgb4_natmode_config_array); i++) { + if (cxgb4_natmode_config_array[i].flags == natmode_flags) { + fs->nat_mode = cxgb4_natmode_config_array[i].natmode; + return; + } + } +} + static struct ch_tc_flower_entry *allocate_flower_entry(void) { struct ch_tc_flower_entry *new = kzalloc(sizeof(*new), GFP_KERNEL); @@ -287,7 +370,8 @@ } static void process_pedit_field(struct ch_filter_specification *fs, u32 val, - u32 mask, u32 offset, u8 htype) + u32 mask, u32 offset, u8 htype, + u8 *natmode_flags) { switch (htype) { case FLOW_ACT_MANGLE_HDR_TYPE_ETH: @@ -312,67 +396,102 @@ switch (offset) { case PEDIT_IP4_SRC: offload_pedit(fs, val, mask, IP4_SRC); + *natmode_flags |= CXGB4_ACTION_NATMODE_SIP; break; case PEDIT_IP4_DST: offload_pedit(fs, val, mask, IP4_DST); + *natmode_flags |= CXGB4_ACTION_NATMODE_DIP; } - fs->nat_mode = NAT_MODE_ALL; break; case FLOW_ACT_MANGLE_HDR_TYPE_IP6: switch (offset) { case PEDIT_IP6_SRC_31_0: offload_pedit(fs, val, mask, IP6_SRC_31_0); + *natmode_flags |= CXGB4_ACTION_NATMODE_SIP; break; case PEDIT_IP6_SRC_63_32: offload_pedit(fs, val, mask, IP6_SRC_63_32); + *natmode_flags |= CXGB4_ACTION_NATMODE_SIP; break; case PEDIT_IP6_SRC_95_64: offload_pedit(fs, val, mask, IP6_SRC_95_64); + *natmode_flags |= CXGB4_ACTION_NATMODE_SIP; break; case PEDIT_IP6_SRC_127_96: offload_pedit(fs, val, mask, IP6_SRC_127_96); + *natmode_flags |= CXGB4_ACTION_NATMODE_SIP; break; case PEDIT_IP6_DST_31_0: offload_pedit(fs, val, mask, IP6_DST_31_0); + *natmode_flags |= CXGB4_ACTION_NATMODE_DIP; break; case PEDIT_IP6_DST_63_32: offload_pedit(fs, val, mask, IP6_DST_63_32); + *natmode_flags |= CXGB4_ACTION_NATMODE_DIP; break; case PEDIT_IP6_DST_95_64: offload_pedit(fs, val, mask, IP6_DST_95_64); + *natmode_flags |= CXGB4_ACTION_NATMODE_DIP; break; case PEDIT_IP6_DST_127_96: offload_pedit(fs, val, mask, IP6_DST_127_96); + *natmode_flags |= CXGB4_ACTION_NATMODE_DIP; } - fs->nat_mode = NAT_MODE_ALL; break; case FLOW_ACT_MANGLE_HDR_TYPE_TCP: switch (offset) { case PEDIT_TCP_SPORT_DPORT: - if (~mask & PEDIT_TCP_UDP_SPORT_MASK) + if (~mask & PEDIT_TCP_UDP_SPORT_MASK) { fs->nat_fport = val; - else + *natmode_flags |= CXGB4_ACTION_NATMODE_SPORT; + } else { fs->nat_lport = val >> 16; + *natmode_flags |= CXGB4_ACTION_NATMODE_DPORT; + } } - fs->nat_mode = NAT_MODE_ALL; break; case FLOW_ACT_MANGLE_HDR_TYPE_UDP: switch (offset) { case PEDIT_UDP_SPORT_DPORT: - if (~mask & PEDIT_TCP_UDP_SPORT_MASK) + if (~mask & PEDIT_TCP_UDP_SPORT_MASK) { fs->nat_fport = val; - else + *natmode_flags |= CXGB4_ACTION_NATMODE_SPORT; + } else { fs->nat_lport = val >> 16; + *natmode_flags |= CXGB4_ACTION_NATMODE_DPORT; + } } - fs->nat_mode = NAT_MODE_ALL; + break; } } +static int cxgb4_action_natmode_validate(struct adapter *adap, u8 natmode_flags, + struct netlink_ext_ack *extack) +{ + u8 i = 0; + + /* Extract the NAT mode to enable based on what 4-tuple fields + * are enabled to be overwritten. This ensures that the + * disabled fields don't get overwritten to 0. + */ + for (i = 0; i < ARRAY_SIZE(cxgb4_natmode_config_array); i++) { + const struct cxgb4_natmode_config *c; + + c = &cxgb4_natmode_config_array[i]; + if (CHELSIO_CHIP_VERSION(adap->params.chip) >= c->chip && + natmode_flags == c->flags) + return 0; + } + NL_SET_ERR_MSG_MOD(extack, "Unsupported NAT mode 4-tuple combination"); + return -EOPNOTSUPP; +} + void cxgb4_process_flow_actions(struct net_device *in, struct flow_action *actions, struct ch_filter_specification *fs) { struct flow_action_entry *act; + u8 natmode_flags = 0; int i; flow_action_for_each(i, act, actions) { @@ -423,13 +542,17 @@ val = act->mangle.val; offset = act->mangle.offset; - process_pedit_field(fs, val, mask, offset, htype); + process_pedit_field(fs, val, mask, offset, htype, + &natmode_flags); } break; default: break; } } + if (natmode_flags) + cxgb4_action_natmode_tweak(fs, natmode_flags); + } static bool valid_l4_mask(u32 mask) @@ -446,7 +569,8 @@ } static bool valid_pedit_action(struct net_device *dev, - const struct flow_action_entry *act) + const struct flow_action_entry *act, + u8 *natmode_flags) { u32 mask, offset; u8 htype; @@ -471,7 +595,10 @@ case FLOW_ACT_MANGLE_HDR_TYPE_IP4: switch (offset) { case PEDIT_IP4_SRC: + *natmode_flags |= CXGB4_ACTION_NATMODE_SIP; + break; case PEDIT_IP4_DST: + *natmode_flags |= CXGB4_ACTION_NATMODE_DIP; break; default: netdev_err(dev, "%s: Unsupported pedit field\n", @@ -485,10 +612,13 @@ case PEDIT_IP6_SRC_63_32: case PEDIT_IP6_SRC_95_64: case PEDIT_IP6_SRC_127_96: + *natmode_flags |= CXGB4_ACTION_NATMODE_SIP; + break; case PEDIT_IP6_DST_31_0: case PEDIT_IP6_DST_63_32: case PEDIT_IP6_DST_95_64: case PEDIT_IP6_DST_127_96: + *natmode_flags |= CXGB4_ACTION_NATMODE_DIP; break; default: netdev_err(dev, "%s: Unsupported pedit field\n", @@ -504,6 +634,10 @@ __func__); return false; } + if (~mask & PEDIT_TCP_UDP_SPORT_MASK) + *natmode_flags |= CXGB4_ACTION_NATMODE_SPORT; + else + *natmode_flags |= CXGB4_ACTION_NATMODE_DPORT; break; default: netdev_err(dev, "%s: Unsupported pedit field\n", @@ -519,6 +653,10 @@ __func__); return false; } + if (~mask & PEDIT_TCP_UDP_SPORT_MASK) + *natmode_flags |= CXGB4_ACTION_NATMODE_SPORT; + else + *natmode_flags |= CXGB4_ACTION_NATMODE_DPORT; break; default: netdev_err(dev, "%s: Unsupported pedit field\n", @@ -537,10 +675,12 @@ struct flow_action *actions, struct netlink_ext_ack *extack) { + struct adapter *adap = netdev2adap(dev); struct flow_action_entry *act; bool act_redir = false; bool act_pedit = false; bool act_vlan = false; + u8 natmode_flags = 0; int i; if (!flow_action_basic_hw_stats_check(actions, extack)) @@ -553,7 +693,6 @@ /* Do nothing */ break; case FLOW_ACTION_REDIRECT: { - struct adapter *adap = netdev2adap(dev); struct net_device *n_dev, *target_dev; unsigned int i; bool found = false; @@ -603,7 +742,8 @@ } break; case FLOW_ACTION_MANGLE: { - bool pedit_valid = valid_pedit_action(dev, act); + bool pedit_valid = valid_pedit_action(dev, act, + &natmode_flags); if (!pedit_valid) return -EOPNOTSUPP; @@ -622,6 +762,15 @@ return -EINVAL; } + if (act_pedit) { + int ret; + + ret = cxgb4_action_natmode_validate(adap, natmode_flags, + extack); + if (ret) + return ret; + } + return 0; } --- linux-azure-5.8-5.8.0.orig/drivers/net/ethernet/chelsio/cxgb4/cxgb4_tc_flower.h +++ linux-azure-5.8-5.8.0/drivers/net/ethernet/chelsio/cxgb4/cxgb4_tc_flower.h @@ -108,6 +108,21 @@ #define PEDIT_TCP_SPORT_DPORT 0x0 #define PEDIT_UDP_SPORT_DPORT 0x0 +enum cxgb4_action_natmode_flags { + CXGB4_ACTION_NATMODE_NONE = 0, + CXGB4_ACTION_NATMODE_DIP = (1 << 0), + CXGB4_ACTION_NATMODE_SIP = (1 << 1), + CXGB4_ACTION_NATMODE_DPORT = (1 << 2), + CXGB4_ACTION_NATMODE_SPORT = (1 << 3), +}; + +/* TC PEDIT action to NATMODE translation entry */ +struct cxgb4_natmode_config { + enum chip_type chip; + u8 flags; + u8 natmode; +}; + void cxgb4_process_flow_actions(struct net_device *in, struct flow_action *actions, struct ch_filter_specification *fs); --- linux-azure-5.8-5.8.0.orig/drivers/net/ethernet/chelsio/cxgb4/cxgb4_thermal.c +++ linux-azure-5.8-5.8.0/drivers/net/ethernet/chelsio/cxgb4/cxgb4_thermal.c @@ -62,6 +62,7 @@ int cxgb4_thermal_init(struct adapter *adap) { struct ch_thermal *ch_thermal = &adap->ch_thermal; + char ch_tz_name[THERMAL_NAME_LENGTH]; int num_trip = CXGB4_NUM_TRIPS; u32 param, val; int ret; @@ -82,7 +83,8 @@ ch_thermal->trip_type = THERMAL_TRIP_CRITICAL; } - ch_thermal->tzdev = thermal_zone_device_register("cxgb4", num_trip, + snprintf(ch_tz_name, sizeof(ch_tz_name), "cxgb4_%s", adap->name); + ch_thermal->tzdev = thermal_zone_device_register(ch_tz_name, num_trip, 0, adap, &cxgb4_thermal_ops, NULL, 0, 0); @@ -97,7 +99,9 @@ int cxgb4_thermal_remove(struct adapter *adap) { - if (adap->ch_thermal.tzdev) + if (adap->ch_thermal.tzdev) { thermal_zone_device_unregister(adap->ch_thermal.tzdev); + adap->ch_thermal.tzdev = NULL; + } return 0; } --- linux-azure-5.8-5.8.0.orig/drivers/net/ethernet/chelsio/cxgb4/cxgb4_uld.h +++ linux-azure-5.8-5.8.0/drivers/net/ethernet/chelsio/cxgb4/cxgb4_uld.h @@ -44,6 +44,9 @@ #define MAX_ULD_QSETS 16 +/* ulp_mem_io + ulptx_idata + payload + padding */ +#define MAX_IMM_ULPTX_WR_LEN (32 + 8 + 256 + 8) + /* CPL message priority levels */ enum { CPL_PRIORITY_DATA = 0, /* data messages */ --- linux-azure-5.8-5.8.0.orig/drivers/net/ethernet/chelsio/cxgb4/sge.c +++ linux-azure-5.8-5.8.0/drivers/net/ethernet/chelsio/cxgb4/sge.c @@ -2655,17 +2655,22 @@ * @skb: the packet * * Returns true if a packet can be sent as an offload WR with immediate - * data. We currently use the same limit as for Ethernet packets. + * data. + * FW_OFLD_TX_DATA_WR limits the payload to 255 bytes due to 8-bit field. + * However, FW_ULPTX_WR commands have a 256 byte immediate only + * payload limit. */ static inline int is_ofld_imm(const struct sk_buff *skb) { struct work_request_hdr *req = (struct work_request_hdr *)skb->data; unsigned long opcode = FW_WR_OP_G(ntohl(req->wr_hi)); - if (opcode == FW_CRYPTO_LOOKASIDE_WR) + if (unlikely(opcode == FW_ULPTX_WR)) + return skb->len <= MAX_IMM_ULPTX_WR_LEN; + else if (opcode == FW_CRYPTO_LOOKASIDE_WR) return skb->len <= SGE_MAX_WR_LEN; else - return skb->len <= MAX_IMM_TX_PKT_LEN; + return skb->len <= MAX_IMM_OFLD_TX_DATA_WR_LEN; } /** --- linux-azure-5.8-5.8.0.orig/drivers/net/ethernet/chelsio/cxgb4/t4_pci_id_tbl.h +++ linux-azure-5.8-5.8.0/drivers/net/ethernet/chelsio/cxgb4/t4_pci_id_tbl.h @@ -219,6 +219,7 @@ CH_PCI_ID_TABLE_FENTRY(0x6089), /* Custom T62100-KR */ CH_PCI_ID_TABLE_FENTRY(0x608a), /* Custom T62100-CR */ CH_PCI_ID_TABLE_FENTRY(0x608b), /* Custom T6225-CR */ + CH_PCI_ID_TABLE_FENTRY(0x6092), /* Custom T62100-CR-LOM */ CH_PCI_DEVICE_ID_TABLE_DEFINE_END; #endif /* __T4_PCI_ID_TBL_H__ */ --- linux-azure-5.8-5.8.0.orig/drivers/net/ethernet/chelsio/cxgb4/t4_tcb.h +++ linux-azure-5.8-5.8.0/drivers/net/ethernet/chelsio/cxgb4/t4_tcb.h @@ -40,6 +40,13 @@ #define TCB_L2T_IX_M 0xfffULL #define TCB_L2T_IX_V(x) ((x) << TCB_L2T_IX_S) +#define TCB_T_FLAGS_W 1 +#define TCB_T_FLAGS_S 0 +#define TCB_T_FLAGS_M 0xffffffffffffffffULL +#define TCB_T_FLAGS_V(x) ((__u64)(x) << TCB_T_FLAGS_S) + +#define TCB_FIELD_COOKIE_TFLAG 1 + #define TCB_SMAC_SEL_W 0 #define TCB_SMAC_SEL_S 24 #define TCB_SMAC_SEL_M 0xffULL @@ -50,6 +57,10 @@ #define TCB_T_FLAGS_M 0xffffffffffffffffULL #define TCB_T_FLAGS_V(x) ((__u64)(x) << TCB_T_FLAGS_S) +#define TF_DROP_S 22 +#define TF_DIRECT_STEER_S 23 +#define TF_LPBK_S 59 + #define TF_CCTRL_ECE_S 60 #define TF_CCTRL_CWR_S 61 #define TF_CCTRL_RFR_S 62 --- linux-azure-5.8-5.8.0.orig/drivers/net/ethernet/cisco/enic/enic.h +++ linux-azure-5.8-5.8.0/drivers/net/ethernet/cisco/enic/enic.h @@ -169,6 +169,7 @@ u16 num_vfs; #endif spinlock_t enic_api_lock; + bool enic_api_busy; struct enic_port_profile *pp; /* work queue cache line section */ --- linux-azure-5.8-5.8.0.orig/drivers/net/ethernet/cisco/enic/enic_api.c +++ linux-azure-5.8-5.8.0/drivers/net/ethernet/cisco/enic/enic_api.c @@ -34,6 +34,12 @@ struct vnic_dev *vdev = enic->vdev; spin_lock(&enic->enic_api_lock); + while (enic->enic_api_busy) { + spin_unlock(&enic->enic_api_lock); + cpu_relax(); + spin_lock(&enic->enic_api_lock); + } + spin_lock_bh(&enic->devcmd_lock); vnic_dev_cmd_proxy_by_index_start(vdev, vf); --- linux-azure-5.8-5.8.0.orig/drivers/net/ethernet/cisco/enic/enic_main.c +++ linux-azure-5.8-5.8.0/drivers/net/ethernet/cisco/enic/enic_main.c @@ -2140,8 +2140,6 @@ int done; int err; - BUG_ON(in_interrupt()); - err = start(vdev, arg); if (err) return err; @@ -2329,6 +2327,13 @@ rss_hash_bits, rss_base_cpu, rss_enable); } +static void enic_set_api_busy(struct enic *enic, bool busy) +{ + spin_lock(&enic->enic_api_lock); + enic->enic_api_busy = busy; + spin_unlock(&enic->enic_api_lock); +} + static void enic_reset(struct work_struct *work) { struct enic *enic = container_of(work, struct enic, reset); @@ -2338,7 +2343,9 @@ rtnl_lock(); - spin_lock(&enic->enic_api_lock); + /* Stop any activity from infiniband */ + enic_set_api_busy(enic, true); + enic_stop(enic->netdev); enic_dev_soft_reset(enic); enic_reset_addr_lists(enic); @@ -2346,7 +2353,10 @@ enic_set_rss_nic_cfg(enic); enic_dev_set_ig_vlan_rewrite_mode(enic); enic_open(enic->netdev); - spin_unlock(&enic->enic_api_lock); + + /* Allow infiniband to fiddle with the device again */ + enic_set_api_busy(enic, false); + call_netdevice_notifiers(NETDEV_REBOOT, enic->netdev); rtnl_unlock(); @@ -2358,7 +2368,9 @@ rtnl_lock(); - spin_lock(&enic->enic_api_lock); + /* Stop any activity from infiniband */ + enic_set_api_busy(enic, true); + enic_dev_hang_notify(enic); enic_stop(enic->netdev); enic_dev_hang_reset(enic); @@ -2367,7 +2379,10 @@ enic_set_rss_nic_cfg(enic); enic_dev_set_ig_vlan_rewrite_mode(enic); enic_open(enic->netdev); - spin_unlock(&enic->enic_api_lock); + + /* Allow infiniband to fiddle with the device again */ + enic_set_api_busy(enic, false); + call_netdevice_notifiers(NETDEV_REBOOT, enic->netdev); rtnl_unlock(); --- linux-azure-5.8-5.8.0.orig/drivers/net/ethernet/cortina/gemini.c +++ linux-azure-5.8-5.8.0/drivers/net/ethernet/cortina/gemini.c @@ -2389,7 +2389,7 @@ dev_info(dev, "probe %s ID %d\n", dev_name(dev), id); - netdev = alloc_etherdev_mq(sizeof(*port), TX_QUEUE_NUM); + netdev = devm_alloc_etherdev_mqs(dev, sizeof(*port), TX_QUEUE_NUM, TX_QUEUE_NUM); if (!netdev) { dev_err(dev, "Can't allocate ethernet device #%d\n", id); return -ENOMEM; @@ -2446,8 +2446,8 @@ port->reset = devm_reset_control_get_exclusive(dev, NULL); if (IS_ERR(port->reset)) { dev_err(dev, "no reset\n"); - clk_disable_unprepare(port->pclk); - return PTR_ERR(port->reset); + ret = PTR_ERR(port->reset); + goto unprepare; } reset_control_reset(port->reset); usleep_range(100, 500); @@ -2502,26 +2502,25 @@ IRQF_SHARED, port_names[port->id], port); - if (ret) { - clk_disable_unprepare(port->pclk); - return ret; - } + if (ret) + goto unprepare; ret = register_netdev(netdev); - if (!ret) { + if (ret) + goto unprepare; + + netdev_info(netdev, + "irq %d, DMA @ 0x%pap, GMAC @ 0x%pap\n", + port->irq, &dmares->start, + &gmacres->start); + ret = gmac_setup_phy(netdev); + if (ret) netdev_info(netdev, - "irq %d, DMA @ 0x%pap, GMAC @ 0x%pap\n", - port->irq, &dmares->start, - &gmacres->start); - ret = gmac_setup_phy(netdev); - if (ret) - netdev_info(netdev, - "PHY init failed, deferring to ifup time\n"); - return 0; - } + "PHY init failed, deferring to ifup time\n"); + return 0; - port->netdev = NULL; - free_netdev(netdev); +unprepare: + clk_disable_unprepare(port->pclk); return ret; } @@ -2530,7 +2529,6 @@ struct gemini_ethernet_port *port = platform_get_drvdata(pdev); gemini_port_remove(port); - free_netdev(port->netdev); return 0; } --- linux-azure-5.8-5.8.0.orig/drivers/net/ethernet/dec/tulip/de2104x.c +++ linux-azure-5.8-5.8.0/drivers/net/ethernet/dec/tulip/de2104x.c @@ -85,7 +85,7 @@ #define DSL CONFIG_DE2104X_DSL #endif -#define DE_RX_RING_SIZE 64 +#define DE_RX_RING_SIZE 128 #define DE_TX_RING_SIZE 64 #define DE_RING_BYTES \ ((sizeof(struct de_desc) * DE_RX_RING_SIZE) + \ --- linux-azure-5.8-5.8.0.orig/drivers/net/ethernet/ethoc.c +++ linux-azure-5.8-5.8.0/drivers/net/ethernet/ethoc.c @@ -1207,7 +1207,7 @@ ret = mdiobus_register(priv->mdio); if (ret) { dev_err(&netdev->dev, "failed to register MDIO bus\n"); - goto free2; + goto free3; } ret = ethoc_mdio_probe(netdev); @@ -1239,6 +1239,7 @@ netif_napi_del(&priv->napi); error: mdiobus_unregister(priv->mdio); +free3: mdiobus_free(priv->mdio); free2: clk_disable_unprepare(priv->clk); --- linux-azure-5.8-5.8.0.orig/drivers/net/ethernet/faraday/ftgmac100.c +++ linux-azure-5.8-5.8.0/drivers/net/ethernet/faraday/ftgmac100.c @@ -1817,6 +1817,11 @@ priv->rxdes0_edorr_mask = BIT(30); priv->txdes0_edotr_mask = BIT(30); priv->is_aspeed = true; + /* Disable ast2600 problematic HW arbitration */ + if (of_device_is_compatible(np, "aspeed,ast2600-mac")) { + iowrite32(FTGMAC100_TM_DEFAULT, + priv->base + FTGMAC100_OFFSET_TM); + } } else { priv->rxdes0_edorr_mask = BIT(15); priv->txdes0_edotr_mask = BIT(15); @@ -1902,6 +1907,8 @@ clk_disable_unprepare(priv->rclk); clk_disable_unprepare(priv->clk); err_ncsi_dev: + if (priv->ndev) + ncsi_unregister_dev(priv->ndev); ftgmac100_destroy_mdio(netdev); err_setup_mdio: iounmap(priv->base); @@ -1921,6 +1928,8 @@ netdev = platform_get_drvdata(pdev); priv = netdev_priv(netdev); + if (priv->ndev) + ncsi_unregister_dev(priv->ndev); unregister_netdev(netdev); clk_disable_unprepare(priv->rclk); --- linux-azure-5.8-5.8.0.orig/drivers/net/ethernet/faraday/ftgmac100.h +++ linux-azure-5.8-5.8.0/drivers/net/ethernet/faraday/ftgmac100.h @@ -170,6 +170,14 @@ #define FTGMAC100_MACCR_SW_RST (1 << 31) /* + * test mode control register + */ +#define FTGMAC100_TM_RQ_TX_VALID_DIS (1 << 28) +#define FTGMAC100_TM_RQ_RR_IDLE_PREV (1 << 27) +#define FTGMAC100_TM_DEFAULT \ + (FTGMAC100_TM_RQ_TX_VALID_DIS | FTGMAC100_TM_RQ_RR_IDLE_PREV) + +/* * PHY control register */ #define FTGMAC100_PHYCR_MDC_CYCTHR_MASK 0x3f --- linux-azure-5.8-5.8.0.orig/drivers/net/ethernet/freescale/dpaa/dpaa_eth.c +++ linux-azure-5.8-5.8.0/drivers/net/ethernet/freescale/dpaa/dpaa_eth.c @@ -174,12 +174,17 @@ #define DPAA_PARSE_RESULTS_SIZE sizeof(struct fman_prs_result) #define DPAA_TIME_STAMP_SIZE 8 #define DPAA_HASH_RESULTS_SIZE 8 +#define DPAA_HWA_SIZE (DPAA_PARSE_RESULTS_SIZE + DPAA_TIME_STAMP_SIZE \ + + DPAA_HASH_RESULTS_SIZE) +#define DPAA_RX_PRIV_DATA_DEFAULT_SIZE (DPAA_TX_PRIV_DATA_SIZE + \ + dpaa_rx_extra_headroom) #ifdef CONFIG_DPAA_ERRATUM_A050385 -#define DPAA_RX_PRIV_DATA_SIZE (DPAA_A050385_ALIGN - (DPAA_PARSE_RESULTS_SIZE\ - + DPAA_TIME_STAMP_SIZE + DPAA_HASH_RESULTS_SIZE)) +#define DPAA_RX_PRIV_DATA_A050385_SIZE (DPAA_A050385_ALIGN - DPAA_HWA_SIZE) +#define DPAA_RX_PRIV_DATA_SIZE (fman_has_errata_a050385() ? \ + DPAA_RX_PRIV_DATA_A050385_SIZE : \ + DPAA_RX_PRIV_DATA_DEFAULT_SIZE) #else -#define DPAA_RX_PRIV_DATA_SIZE (u16)(DPAA_TX_PRIV_DATA_SIZE + \ - dpaa_rx_extra_headroom) +#define DPAA_RX_PRIV_DATA_SIZE DPAA_RX_PRIV_DATA_DEFAULT_SIZE #endif #define DPAA_ETH_PCD_RXQ_NUM 128 @@ -2115,6 +2120,15 @@ skb_copy_header(new_skb, skb); new_skb->dev = skb->dev; + /* Copy relevant timestamp info from the old skb to the new */ + if (priv->tx_tstamp) { + skb_shinfo(new_skb)->tx_flags = skb_shinfo(skb)->tx_flags; + skb_shinfo(new_skb)->hwtstamps = skb_shinfo(skb)->hwtstamps; + skb_shinfo(new_skb)->tskey = skb_shinfo(skb)->tskey; + if (skb->sk) + skb_set_owner_w(new_skb, skb->sk); + } + /* We move the headroom when we align it so we have to reset the * network and transport header offsets relative to the new data * pointer. The checksum offload relies on these offsets. @@ -2122,7 +2136,6 @@ skb_set_network_header(new_skb, skb_network_offset(skb)); skb_set_transport_header(new_skb, skb_transport_offset(skb)); - /* TODO: does timestamping need the result in the old skb? */ dev_kfree_skb(skb); *s = new_skb; @@ -2840,7 +2853,8 @@ return err; } -static inline u16 dpaa_get_headroom(struct dpaa_buffer_layout *bl) +static u16 dpaa_get_headroom(struct dpaa_buffer_layout *bl, + enum port_type port) { u16 headroom; @@ -2854,10 +2868,12 @@ * * Also make sure the headroom is a multiple of data_align bytes */ - headroom = (u16)(bl->priv_data_size + DPAA_PARSE_RESULTS_SIZE + - DPAA_TIME_STAMP_SIZE + DPAA_HASH_RESULTS_SIZE); + headroom = (u16)(bl[port].priv_data_size + DPAA_HWA_SIZE); - return ALIGN(headroom, DPAA_FD_DATA_ALIGNMENT); + if (port == RX) + return ALIGN(headroom, DPAA_FD_RX_DATA_ALIGNMENT); + else + return ALIGN(headroom, DPAA_FD_DATA_ALIGNMENT); } static int dpaa_eth_probe(struct platform_device *pdev) @@ -3025,8 +3041,8 @@ goto free_dpaa_fqs; } - priv->tx_headroom = dpaa_get_headroom(&priv->buf_layout[TX]); - priv->rx_headroom = dpaa_get_headroom(&priv->buf_layout[RX]); + priv->tx_headroom = dpaa_get_headroom(priv->buf_layout, TX); + priv->rx_headroom = dpaa_get_headroom(priv->buf_layout, RX); /* All real interfaces need their ports initialized */ err = dpaa_eth_init_ports(mac_dev, dpaa_bp, &port_fqs, --- linux-azure-5.8-5.8.0.orig/drivers/net/ethernet/freescale/dpaa2/Kconfig +++ linux-azure-5.8-5.8.0/drivers/net/ethernet/freescale/dpaa2/Kconfig @@ -3,6 +3,7 @@ tristate "Freescale DPAA2 Ethernet" depends on FSL_MC_BUS && FSL_MC_DPIO select PHYLINK + select FSL_XGMAC_MDIO help This is the DPAA2 Ethernet driver supporting Freescale SoCs with DPAA2 (DataPath Acceleration Architecture v2). --- linux-azure-5.8-5.8.0.orig/drivers/net/ethernet/freescale/dpaa2/dpaa2-eth.c +++ linux-azure-5.8-5.8.0/drivers/net/ethernet/freescale/dpaa2/dpaa2-eth.c @@ -1109,7 +1109,7 @@ buf_array, count); if (ret < 0) { if (ret == -EBUSY && - retries++ >= DPAA2_ETH_SWP_BUSY_RETRIES) + retries++ < DPAA2_ETH_SWP_BUSY_RETRIES) continue; netdev_err(priv->net_dev, "dpaa2_io_service_acquire() failed\n"); return; @@ -2207,7 +2207,7 @@ free: fsl_mc_object_free(dpcon); - return NULL; + return ERR_PTR(err); } static void free_dpcon(struct dpaa2_eth_priv *priv, @@ -2231,8 +2231,8 @@ return NULL; channel->dpcon = setup_dpcon(priv); - if (IS_ERR_OR_NULL(channel->dpcon)) { - err = PTR_ERR_OR_ZERO(channel->dpcon); + if (IS_ERR(channel->dpcon)) { + err = PTR_ERR(channel->dpcon); goto err_setup; } --- linux-azure-5.8-5.8.0.orig/drivers/net/ethernet/freescale/enetc/Kconfig +++ linux-azure-5.8-5.8.0/drivers/net/ethernet/freescale/enetc/Kconfig @@ -14,6 +14,7 @@ config FSL_ENETC_VF tristate "ENETC VF driver" depends on PCI && PCI_MSI + select FSL_ENETC_MDIO select PHYLIB help This driver supports NXP ENETC gigabit ethernet controller PCIe --- linux-azure-5.8-5.8.0.orig/drivers/net/ethernet/freescale/enetc/enetc.c +++ linux-azure-5.8-5.8.0/drivers/net/ethernet/freescale/enetc/enetc.c @@ -34,7 +34,10 @@ return NETDEV_TX_BUSY; } + enetc_lock_mdio(); count = enetc_map_tx_buffs(tx_ring, skb, priv->active_offloads); + enetc_unlock_mdio(); + if (unlikely(!count)) goto drop_packet_err; @@ -240,7 +243,7 @@ skb_tx_timestamp(skb); /* let H/W know BD ring has been updated */ - enetc_wr_reg(tx_ring->tpir, i); /* includes wmb() */ + enetc_wr_reg_hot(tx_ring->tpir, i); /* includes wmb() */ return count; @@ -263,11 +266,15 @@ struct enetc_int_vector *v = data; int i; + enetc_lock_mdio(); + /* disable interrupts */ - enetc_wr_reg(v->rbier, 0); + enetc_wr_reg_hot(v->rbier, 0); for_each_set_bit(i, &v->tx_rings_map, ENETC_MAX_NUM_TXQS) - enetc_wr_reg(v->tbier_base + ENETC_BDR_OFF(i), 0); + enetc_wr_reg_hot(v->tbier_base + ENETC_BDR_OFF(i), 0); + + enetc_unlock_mdio(); napi_schedule_irqoff(&v->napi); @@ -299,19 +306,23 @@ napi_complete_done(napi, work_done); + enetc_lock_mdio(); + /* enable interrupts */ - enetc_wr_reg(v->rbier, ENETC_RBIER_RXTIE); + enetc_wr_reg_hot(v->rbier, ENETC_RBIER_RXTIE); for_each_set_bit(i, &v->tx_rings_map, ENETC_MAX_NUM_TXQS) - enetc_wr_reg(v->tbier_base + ENETC_BDR_OFF(i), - ENETC_TBIER_TXTIE); + enetc_wr_reg_hot(v->tbier_base + ENETC_BDR_OFF(i), + ENETC_TBIER_TXTIE); + + enetc_unlock_mdio(); return work_done; } static int enetc_bd_ready_count(struct enetc_bdr *tx_ring, int ci) { - int pi = enetc_rd_reg(tx_ring->tcir) & ENETC_TBCIR_IDX_MASK; + int pi = enetc_rd_reg_hot(tx_ring->tcir) & ENETC_TBCIR_IDX_MASK; return pi >= ci ? pi - ci : tx_ring->bd_count - ci + pi; } @@ -351,7 +362,10 @@ i = tx_ring->next_to_clean; tx_swbd = &tx_ring->tx_swbd[i]; + + enetc_lock_mdio(); bds_to_clean = enetc_bd_ready_count(tx_ring, i); + enetc_unlock_mdio(); do_tstamp = false; @@ -394,16 +408,20 @@ tx_swbd = tx_ring->tx_swbd; } + enetc_lock_mdio(); + /* BD iteration loop end */ if (is_eof) { tx_frm_cnt++; /* re-arm interrupt source */ - enetc_wr_reg(tx_ring->idr, BIT(tx_ring->index) | - BIT(16 + tx_ring->index)); + enetc_wr_reg_hot(tx_ring->idr, BIT(tx_ring->index) | + BIT(16 + tx_ring->index)); } if (unlikely(!bds_to_clean)) bds_to_clean = enetc_bd_ready_count(tx_ring, i); + + enetc_unlock_mdio(); } tx_ring->next_to_clean = i; @@ -480,8 +498,6 @@ if (likely(j)) { rx_ring->next_to_alloc = i; /* keep track from page reuse */ rx_ring->next_to_use = i; - /* update ENETC's consumer index */ - enetc_wr_reg(rx_ring->rcir, i); } return j; @@ -499,8 +515,8 @@ u64 tstamp; if (le16_to_cpu(rxbd->r.flags) & ENETC_RXBD_FLAG_TSTMP) { - lo = enetc_rd(hw, ENETC_SICTR0); - hi = enetc_rd(hw, ENETC_SICTR1); + lo = enetc_rd_reg_hot(hw->reg + ENETC_SICTR0); + hi = enetc_rd_reg_hot(hw->reg + ENETC_SICTR1); rxbd = enetc_rxbd_ext(rxbd); tstamp_lo = le32_to_cpu(rxbd->ext.tstamp); if (lo <= tstamp_lo) @@ -649,23 +665,31 @@ u32 bd_status; u16 size; + enetc_lock_mdio(); + if (cleaned_cnt >= ENETC_RXBD_BUNDLE) { int count = enetc_refill_rx_ring(rx_ring, cleaned_cnt); + /* update ENETC's consumer index */ + enetc_wr_reg_hot(rx_ring->rcir, rx_ring->next_to_use); cleaned_cnt -= count; } rxbd = enetc_rxbd(rx_ring, i); bd_status = le32_to_cpu(rxbd->r.lstatus); - if (!bd_status) + if (!bd_status) { + enetc_unlock_mdio(); break; + } - enetc_wr_reg(rx_ring->idr, BIT(rx_ring->index)); + enetc_wr_reg_hot(rx_ring->idr, BIT(rx_ring->index)); dma_rmb(); /* for reading other rxbd fields */ size = le16_to_cpu(rxbd->r.buf_len); skb = enetc_map_rx_buff_to_skb(rx_ring, i, size); - if (!skb) + if (!skb) { + enetc_unlock_mdio(); break; + } enetc_get_offloads(rx_ring, rxbd, skb); @@ -677,6 +701,7 @@ if (unlikely(bd_status & ENETC_RXBD_LSTATUS(ENETC_RXBD_ERR_MASK))) { + enetc_unlock_mdio(); dev_kfree_skb(skb); while (!(bd_status & ENETC_RXBD_LSTATUS_F)) { dma_rmb(); @@ -716,6 +741,8 @@ enetc_process_skb(rx_ring, skb); + enetc_unlock_mdio(); + napi_gro_receive(napi, skb); rx_frm_cnt++; @@ -1188,6 +1215,7 @@ rx_ring->idr = hw->reg + ENETC_SIRXIDR; enetc_refill_rx_ring(rx_ring, enetc_bd_unused(rx_ring)); + enetc_wr(hw, ENETC_SIRXIDR, rx_ring->next_to_use); /* enable ring */ enetc_rxbdr_wr(hw, idx, ENETC_RBMR, rbmr); --- linux-azure-5.8-5.8.0.orig/drivers/net/ethernet/freescale/enetc/enetc_ethtool.c +++ linux-azure-5.8-5.8.0/drivers/net/ethernet/freescale/enetc/enetc_ethtool.c @@ -141,8 +141,8 @@ { ENETC_PM0_R255, "MAC rx 128-255 byte packets" }, { ENETC_PM0_R511, "MAC rx 256-511 byte packets" }, { ENETC_PM0_R1023, "MAC rx 512-1023 byte packets" }, - { ENETC_PM0_R1518, "MAC rx 1024-1518 byte packets" }, - { ENETC_PM0_R1519X, "MAC rx 1519 to max-octet packets" }, + { ENETC_PM0_R1522, "MAC rx 1024-1522 byte packets" }, + { ENETC_PM0_R1523X, "MAC rx 1523 to max-octet packets" }, { ENETC_PM0_ROVR, "MAC rx oversized packets" }, { ENETC_PM0_RJBR, "MAC rx jabber packets" }, { ENETC_PM0_RFRG, "MAC rx fragment packets" }, @@ -161,9 +161,13 @@ { ENETC_PM0_TBCA, "MAC tx broadcast frames" }, { ENETC_PM0_TPKT, "MAC tx packets" }, { ENETC_PM0_TUND, "MAC tx undersized packets" }, + { ENETC_PM0_T64, "MAC tx 64 byte packets" }, { ENETC_PM0_T127, "MAC tx 65-127 byte packets" }, + { ENETC_PM0_T255, "MAC tx 128-255 byte packets" }, + { ENETC_PM0_T511, "MAC tx 256-511 byte packets" }, { ENETC_PM0_T1023, "MAC tx 512-1023 byte packets" }, - { ENETC_PM0_T1518, "MAC tx 1024-1518 byte packets" }, + { ENETC_PM0_T1522, "MAC tx 1024-1522 byte packets" }, + { ENETC_PM0_T1523X, "MAC tx 1523 to max-octet packets" }, { ENETC_PM0_TCNP, "MAC tx control packets" }, { ENETC_PM0_TDFR, "MAC tx deferred packets" }, { ENETC_PM0_TMCOL, "MAC tx multiple collisions" }, --- linux-azure-5.8-5.8.0.orig/drivers/net/ethernet/freescale/enetc/enetc_hw.h +++ linux-azure-5.8-5.8.0/drivers/net/ethernet/freescale/enetc/enetc_hw.h @@ -190,6 +190,8 @@ #define ENETC_CBS_BW_MASK GENMASK(6, 0) #define ENETC_PTCCBSR1(n) (0x1114 + (n) * 8) /* n = 0 to 7*/ #define ENETC_RSSHASH_KEY_SIZE 40 +#define ENETC_PRSSCAPR 0x1404 +#define ENETC_PRSSCAPR_GET_NUM_RSS(val) (BIT((val) & 0xf) * 32) #define ENETC_PRSSK(n) (0x1410 + (n) * 4) /* n = [0..9] */ #define ENETC_PSIVLANFMR 0x1700 #define ENETC_PSIVLANFMR_VS BIT(0) @@ -258,8 +260,8 @@ #define ENETC_PM0_R255 0x8180 #define ENETC_PM0_R511 0x8188 #define ENETC_PM0_R1023 0x8190 -#define ENETC_PM0_R1518 0x8198 -#define ENETC_PM0_R1519X 0x81A0 +#define ENETC_PM0_R1522 0x8198 +#define ENETC_PM0_R1523X 0x81A0 #define ENETC_PM0_ROVR 0x81A8 #define ENETC_PM0_RJBR 0x81B0 #define ENETC_PM0_RFRG 0x81B8 @@ -278,9 +280,13 @@ #define ENETC_PM0_TBCA 0x8250 #define ENETC_PM0_TPKT 0x8260 #define ENETC_PM0_TUND 0x8268 +#define ENETC_PM0_T64 0x8270 #define ENETC_PM0_T127 0x8278 +#define ENETC_PM0_T255 0x8280 +#define ENETC_PM0_T511 0x8288 #define ENETC_PM0_T1023 0x8290 -#define ENETC_PM0_T1518 0x8298 +#define ENETC_PM0_T1522 0x8298 +#define ENETC_PM0_T1523X 0x82A0 #define ENETC_PM0_TCNP 0x82C0 #define ENETC_PM0_TDFR 0x82D0 #define ENETC_PM0_TMCOL 0x82D8 @@ -315,14 +321,100 @@ void __iomem *global; }; -/* general register accessors */ -#define enetc_rd_reg(reg) ioread32((reg)) -#define enetc_wr_reg(reg, val) iowrite32((val), (reg)) +/* ENETC register accessors */ + +/* MDIO issue workaround (on LS1028A) - + * Due to a hardware issue, an access to MDIO registers + * that is concurrent with other ENETC register accesses + * may lead to the MDIO access being dropped or corrupted. + * To protect the MDIO accesses a readers-writers locking + * scheme is used, where the MDIO register accesses are + * protected by write locks to insure exclusivity, while + * the remaining ENETC registers are accessed under read + * locks since they only compete with MDIO accesses. + */ +extern rwlock_t enetc_mdio_lock; + +/* use this locking primitive only on the fast datapath to + * group together multiple non-MDIO register accesses to + * minimize the overhead of the lock + */ +static inline void enetc_lock_mdio(void) +{ + read_lock(&enetc_mdio_lock); +} + +static inline void enetc_unlock_mdio(void) +{ + read_unlock(&enetc_mdio_lock); +} + +/* use these accessors only on the fast datapath under + * the enetc_lock_mdio() locking primitive to minimize + * the overhead of the lock + */ +static inline u32 enetc_rd_reg_hot(void __iomem *reg) +{ + lockdep_assert_held(&enetc_mdio_lock); + + return ioread32(reg); +} + +static inline void enetc_wr_reg_hot(void __iomem *reg, u32 val) +{ + lockdep_assert_held(&enetc_mdio_lock); + + iowrite32(val, reg); +} + +/* internal helpers for the MDIO w/a */ +static inline u32 _enetc_rd_reg_wa(void __iomem *reg) +{ + u32 val; + + enetc_lock_mdio(); + val = ioread32(reg); + enetc_unlock_mdio(); + + return val; +} + +static inline void _enetc_wr_reg_wa(void __iomem *reg, u32 val) +{ + enetc_lock_mdio(); + iowrite32(val, reg); + enetc_unlock_mdio(); +} + +static inline u32 _enetc_rd_mdio_reg_wa(void __iomem *reg) +{ + unsigned long flags; + u32 val; + + write_lock_irqsave(&enetc_mdio_lock, flags); + val = ioread32(reg); + write_unlock_irqrestore(&enetc_mdio_lock, flags); + + return val; +} + +static inline void _enetc_wr_mdio_reg_wa(void __iomem *reg, u32 val) +{ + unsigned long flags; + + write_lock_irqsave(&enetc_mdio_lock, flags); + iowrite32(val, reg); + write_unlock_irqrestore(&enetc_mdio_lock, flags); +} + #ifdef ioread64 -#define enetc_rd_reg64(reg) ioread64((reg)) +static inline u64 _enetc_rd_reg64(void __iomem *reg) +{ + return ioread64(reg); +} #else /* using this to read out stats on 32b systems */ -static inline u64 enetc_rd_reg64(void __iomem *reg) +static inline u64 _enetc_rd_reg64(void __iomem *reg) { u32 low, high, tmp; @@ -336,12 +428,29 @@ } #endif +static inline u64 _enetc_rd_reg64_wa(void __iomem *reg) +{ + u64 val; + + enetc_lock_mdio(); + val = _enetc_rd_reg64(reg); + enetc_unlock_mdio(); + + return val; +} + +/* general register accessors */ +#define enetc_rd_reg(reg) _enetc_rd_reg_wa((reg)) +#define enetc_wr_reg(reg, val) _enetc_wr_reg_wa((reg), (val)) #define enetc_rd(hw, off) enetc_rd_reg((hw)->reg + (off)) #define enetc_wr(hw, off, val) enetc_wr_reg((hw)->reg + (off), val) -#define enetc_rd64(hw, off) enetc_rd_reg64((hw)->reg + (off)) +#define enetc_rd64(hw, off) _enetc_rd_reg64_wa((hw)->reg + (off)) /* port register accessors - PF only */ #define enetc_port_rd(hw, off) enetc_rd_reg((hw)->port + (off)) #define enetc_port_wr(hw, off, val) enetc_wr_reg((hw)->port + (off), val) +#define enetc_port_rd_mdio(hw, off) _enetc_rd_mdio_reg_wa((hw)->port + (off)) +#define enetc_port_wr_mdio(hw, off, val) _enetc_wr_mdio_reg_wa(\ + (hw)->port + (off), val) /* global register accessors - PF only */ #define enetc_global_rd(hw, off) enetc_rd_reg((hw)->global + (off)) #define enetc_global_wr(hw, off, val) enetc_wr_reg((hw)->global + (off), val) --- linux-azure-5.8-5.8.0.orig/drivers/net/ethernet/freescale/enetc/enetc_mdio.c +++ linux-azure-5.8-5.8.0/drivers/net/ethernet/freescale/enetc/enetc_mdio.c @@ -16,13 +16,13 @@ static inline u32 _enetc_mdio_rd(struct enetc_mdio_priv *mdio_priv, int off) { - return enetc_port_rd(mdio_priv->hw, mdio_priv->mdio_base + off); + return enetc_port_rd_mdio(mdio_priv->hw, mdio_priv->mdio_base + off); } static inline void _enetc_mdio_wr(struct enetc_mdio_priv *mdio_priv, int off, u32 val) { - enetc_port_wr(mdio_priv->hw, mdio_priv->mdio_base + off, val); + enetc_port_wr_mdio(mdio_priv->hw, mdio_priv->mdio_base + off, val); } #define enetc_mdio_rd(mdio_priv, off) \ @@ -174,3 +174,7 @@ return hw; } EXPORT_SYMBOL_GPL(enetc_hw_alloc); + +/* Lock for MDIO access errata on LS1028A */ +DEFINE_RWLOCK(enetc_mdio_lock); +EXPORT_SYMBOL_GPL(enetc_mdio_lock); --- linux-azure-5.8-5.8.0.orig/drivers/net/ethernet/freescale/enetc/enetc_pf.c +++ linux-azure-5.8-5.8.0/drivers/net/ethernet/freescale/enetc/enetc_pf.c @@ -833,6 +833,51 @@ of_node_put(priv->phy_node); } +/* Initialize the entire shared memory for the flow steering entries + * of this port (PF + VFs) + */ +static int enetc_init_port_rfs_memory(struct enetc_si *si) +{ + struct enetc_cmd_rfse rfse = {0}; + struct enetc_hw *hw = &si->hw; + int num_rfs, i, err = 0; + u32 val; + + val = enetc_port_rd(hw, ENETC_PRFSCAPR); + num_rfs = ENETC_PRFSCAPR_GET_NUM_RFS(val); + + for (i = 0; i < num_rfs; i++) { + err = enetc_set_fs_entry(si, &rfse, i); + if (err) + break; + } + + return err; +} + +static int enetc_init_port_rss_memory(struct enetc_si *si) +{ + struct enetc_hw *hw = &si->hw; + int num_rss, err; + int *rss_table; + u32 val; + + val = enetc_port_rd(hw, ENETC_PRSSCAPR); + num_rss = ENETC_PRSSCAPR_GET_NUM_RSS(val); + if (!num_rss) + return 0; + + rss_table = kcalloc(num_rss, sizeof(*rss_table), GFP_KERNEL); + if (!rss_table) + return -ENOMEM; + + err = enetc_set_rss_table(si, rss_table, num_rss); + + kfree(rss_table); + + return err; +} + static int enetc_pf_probe(struct pci_dev *pdev, const struct pci_device_id *ent) { @@ -887,6 +932,18 @@ goto err_alloc_si_res; } + err = enetc_init_port_rfs_memory(si); + if (err) { + dev_err(&pdev->dev, "Failed to initialize RFS memory\n"); + goto err_init_port_rfs; + } + + err = enetc_init_port_rss_memory(si); + if (err) { + dev_err(&pdev->dev, "Failed to initialize RSS memory\n"); + goto err_init_port_rss; + } + err = enetc_alloc_msix(priv); if (err) { dev_err(&pdev->dev, "MSIX alloc failed\n"); @@ -909,6 +966,8 @@ enetc_mdio_remove(pf); enetc_of_put_phy(priv); enetc_free_msix(priv); +err_init_port_rss: +err_init_port_rfs: err_alloc_msix: enetc_free_si_resources(priv); err_alloc_si_res: --- linux-azure-5.8-5.8.0.orig/drivers/net/ethernet/freescale/enetc/enetc_qos.c +++ linux-azure-5.8-5.8.0/drivers/net/ethernet/freescale/enetc/enetc_qos.c @@ -95,18 +95,8 @@ gcl_config->atc = 0xff; gcl_config->acl_len = cpu_to_le16(gcl_len); - if (!admin_conf->base_time) { - gcl_data->btl = - cpu_to_le32(enetc_rd(&priv->si->hw, ENETC_SICTR0)); - gcl_data->bth = - cpu_to_le32(enetc_rd(&priv->si->hw, ENETC_SICTR1)); - } else { - gcl_data->btl = - cpu_to_le32(lower_32_bits(admin_conf->base_time)); - gcl_data->bth = - cpu_to_le32(upper_32_bits(admin_conf->base_time)); - } - + gcl_data->btl = cpu_to_le32(lower_32_bits(admin_conf->base_time)); + gcl_data->bth = cpu_to_le32(upper_32_bits(admin_conf->base_time)); gcl_data->ct = cpu_to_le32(admin_conf->cycle_time); gcl_data->cte = cpu_to_le32(admin_conf->cycle_time_extension); --- linux-azure-5.8-5.8.0.orig/drivers/net/ethernet/freescale/fec.h +++ linux-azure-5.8-5.8.0/drivers/net/ethernet/freescale/fec.h @@ -456,6 +456,12 @@ */ #define FEC_QUIRK_HAS_FRREG (1 << 16) +/* Some FEC hardware blocks need the MMFR cleared at setup time to avoid + * the generation of an MII event. This must be avoided in the older + * FEC blocks where it will stop MII events being generated. + */ +#define FEC_QUIRK_CLEAR_SETUP_MII (1 << 17) + struct bufdesc_prop { int qid; /* Address of Rx and Tx buffers */ --- linux-azure-5.8-5.8.0.orig/drivers/net/ethernet/freescale/fec_main.c +++ linux-azure-5.8-5.8.0/drivers/net/ethernet/freescale/fec_main.c @@ -100,14 +100,14 @@ static const struct fec_devinfo fec_imx28_info = { .quirks = FEC_QUIRK_ENET_MAC | FEC_QUIRK_SWAP_FRAME | FEC_QUIRK_SINGLE_MDIO | FEC_QUIRK_HAS_RACC | - FEC_QUIRK_HAS_FRREG, + FEC_QUIRK_HAS_FRREG | FEC_QUIRK_CLEAR_SETUP_MII, }; static const struct fec_devinfo fec_imx6q_info = { .quirks = FEC_QUIRK_ENET_MAC | FEC_QUIRK_HAS_GBIT | FEC_QUIRK_HAS_BUFDESC_EX | FEC_QUIRK_HAS_CSUM | FEC_QUIRK_HAS_VLAN | FEC_QUIRK_ERR006358 | - FEC_QUIRK_HAS_RACC, + FEC_QUIRK_HAS_RACC | FEC_QUIRK_CLEAR_SETUP_MII, }; static const struct fec_devinfo fec_mvf600_info = { @@ -119,7 +119,8 @@ FEC_QUIRK_HAS_BUFDESC_EX | FEC_QUIRK_HAS_CSUM | FEC_QUIRK_HAS_VLAN | FEC_QUIRK_HAS_AVB | FEC_QUIRK_ERR007885 | FEC_QUIRK_BUG_CAPTURE | - FEC_QUIRK_HAS_RACC | FEC_QUIRK_HAS_COALESCE, + FEC_QUIRK_HAS_RACC | FEC_QUIRK_HAS_COALESCE | + FEC_QUIRK_CLEAR_SETUP_MII, }; static const struct fec_devinfo fec_imx6ul_info = { @@ -127,7 +128,7 @@ FEC_QUIRK_HAS_BUFDESC_EX | FEC_QUIRK_HAS_CSUM | FEC_QUIRK_HAS_VLAN | FEC_QUIRK_ERR007885 | FEC_QUIRK_BUG_CAPTURE | FEC_QUIRK_HAS_RACC | - FEC_QUIRK_HAS_COALESCE, + FEC_QUIRK_HAS_COALESCE | FEC_QUIRK_CLEAR_SETUP_MII, }; static struct platform_device_id fec_devtype[] = { @@ -1808,7 +1809,7 @@ int ret = 0, frame_start, frame_addr, frame_op; bool is_c45 = !!(regnum & MII_ADDR_C45); - ret = pm_runtime_get_sync(dev); + ret = pm_runtime_resume_and_get(dev); if (ret < 0) return ret; @@ -1867,11 +1868,9 @@ int ret, frame_start, frame_addr; bool is_c45 = !!(regnum & MII_ADDR_C45); - ret = pm_runtime_get_sync(dev); + ret = pm_runtime_resume_and_get(dev); if (ret < 0) return ret; - else - ret = 0; if (is_c45) { frame_start = FEC_MMFR_ST_C45; @@ -1913,6 +1912,27 @@ return ret; } +static void fec_enet_phy_reset_after_clk_enable(struct net_device *ndev) +{ + struct fec_enet_private *fep = netdev_priv(ndev); + struct phy_device *phy_dev = ndev->phydev; + + if (phy_dev) { + phy_reset_after_clk_enable(phy_dev); + } else if (fep->phy_node) { + /* + * If the PHY still is not bound to the MAC, but there is + * OF PHY node and a matching PHY device instance already, + * use the OF PHY node to obtain the PHY device instance, + * and then use that PHY device instance when triggering + * the PHY reset. + */ + phy_dev = of_phy_find_device(fep->phy_node); + phy_reset_after_clk_enable(phy_dev); + put_device(&phy_dev->mdio.dev); + } +} + static int fec_enet_clk_enable(struct net_device *ndev, bool enable) { struct fec_enet_private *fep = netdev_priv(ndev); @@ -1939,7 +1959,7 @@ if (ret) goto failed_clk_ref; - phy_reset_after_clk_enable(ndev->phydev); + fec_enet_phy_reset_after_clk_enable(ndev); } else { clk_disable_unprepare(fep->clk_enet_out); if (fep->clk_ptp) { @@ -2115,15 +2135,17 @@ if (suppress_preamble) fep->phy_speed |= BIT(7); - /* Clear MMFR to avoid to generate MII event by writing MSCR. - * MII event generation condition: - * - writing MSCR: - * - mmfr[31:0]_not_zero & mscr[7:0]_is_zero & - * mscr_reg_data_in[7:0] != 0 - * - writing MMFR: - * - mscr[7:0]_not_zero - */ - writel(0, fep->hwp + FEC_MII_DATA); + if (fep->quirks & FEC_QUIRK_CLEAR_SETUP_MII) { + /* Clear MMFR to avoid to generate MII event by writing MSCR. + * MII event generation condition: + * - writing MSCR: + * - mmfr[31:0]_not_zero & mscr[7:0]_is_zero & + * mscr_reg_data_in[7:0] != 0 + * - writing MMFR: + * - mscr[7:0]_not_zero + */ + writel(0, fep->hwp + FEC_MII_DATA); + } writel(fep->phy_speed, fep->hwp + FEC_MII_SPEED); @@ -2145,9 +2167,9 @@ fep->mii_bus->parent = &pdev->dev; err = of_mdiobus_register(fep->mii_bus, node); - of_node_put(node); if (err) goto err_out_free_mdiobus; + of_node_put(node); mii_cnt++; @@ -2160,6 +2182,7 @@ err_out_free_mdiobus: mdiobus_free(fep->mii_bus); err_out: + of_node_put(node); return err; } @@ -2253,7 +2276,7 @@ u32 i, off; int ret; - ret = pm_runtime_get_sync(dev); + ret = pm_runtime_resume_and_get(dev); if (ret < 0) return; @@ -2954,7 +2977,7 @@ int ret; bool reset_again; - ret = pm_runtime_get_sync(&fep->pdev->dev); + ret = pm_runtime_resume_and_get(&fep->pdev->dev); if (ret < 0) return ret; @@ -2985,16 +3008,16 @@ /* Init MAC prior to mii bus probe */ fec_restart(ndev); - /* Probe and connect to PHY when open the interface */ - ret = fec_enet_mii_probe(ndev); - if (ret) - goto err_enet_mii_probe; - /* Call phy_reset_after_clk_enable() again if it failed during * phy_reset_after_clk_enable() before because the PHY wasn't probed. */ if (reset_again) - phy_reset_after_clk_enable(ndev->phydev); + fec_enet_phy_reset_after_clk_enable(ndev); + + /* Probe and connect to PHY when open the interface */ + ret = fec_enet_mii_probe(ndev); + if (ret) + goto err_enet_mii_probe; if (fep->quirks & FEC_QUIRK_ERR006687) imx6q_cpuidle_fec_irqs_used(); @@ -3714,11 +3737,11 @@ failed_irq: failed_init: fec_ptp_stop(pdev); - if (fep->reg_phy) - regulator_disable(fep->reg_phy); failed_reset: pm_runtime_put_noidle(&pdev->dev); pm_runtime_disable(&pdev->dev); + if (fep->reg_phy) + regulator_disable(fep->reg_phy); failed_regulator: clk_disable_unprepare(fep->clk_ahb); failed_clk_ahb: @@ -3746,7 +3769,7 @@ struct device_node *np = pdev->dev.of_node; int ret; - ret = pm_runtime_get_sync(&pdev->dev); + ret = pm_runtime_resume_and_get(&pdev->dev); if (ret < 0) return ret; --- linux-azure-5.8-5.8.0.orig/drivers/net/ethernet/freescale/fman/fman.c +++ linux-azure-5.8-5.8.0/drivers/net/ethernet/freescale/fman/fman.c @@ -1398,8 +1398,7 @@ { struct fman_fpm_regs __iomem *fpm_rg = fman->fpm_regs; u16 fm_clk_freq = fman->state->fm_clk_freq; - u32 tmp, intgr, ts_freq; - u64 frac; + u32 tmp, intgr, ts_freq, frac; ts_freq = (u32)(1 << fman->state->count1_micro_bit); /* configure timestamp so that bit 8 will count 1 microsecond --- linux-azure-5.8-5.8.0.orig/drivers/net/ethernet/freescale/fman/fman_dtsec.c +++ linux-azure-5.8-5.8.0/drivers/net/ethernet/freescale/fman/fman_dtsec.c @@ -1200,7 +1200,7 @@ list_for_each(pos, &dtsec->multicast_addr_hash->lsts[bucket]) { hash_entry = ETH_HASH_ENTRY_OBJ(pos); - if (hash_entry->addr == addr) { + if (hash_entry && hash_entry->addr == addr) { list_del_init(&hash_entry->node); kfree(hash_entry); break; @@ -1213,7 +1213,7 @@ list_for_each(pos, &dtsec->unicast_addr_hash->lsts[bucket]) { hash_entry = ETH_HASH_ENTRY_OBJ(pos); - if (hash_entry->addr == addr) { + if (hash_entry && hash_entry->addr == addr) { list_del_init(&hash_entry->node); kfree(hash_entry); break; --- linux-azure-5.8-5.8.0.orig/drivers/net/ethernet/freescale/fman/fman_mac.h +++ linux-azure-5.8-5.8.0/drivers/net/ethernet/freescale/fman/fman_mac.h @@ -252,7 +252,7 @@ struct eth_hash_t *hash; /* Allocate address hash table */ - hash = kmalloc_array(size, sizeof(struct eth_hash_t *), GFP_KERNEL); + hash = kmalloc(sizeof(*hash), GFP_KERNEL); if (!hash) return NULL; --- linux-azure-5.8-5.8.0.orig/drivers/net/ethernet/freescale/fman/fman_memac.c +++ linux-azure-5.8-5.8.0/drivers/net/ethernet/freescale/fman/fman_memac.c @@ -852,7 +852,6 @@ tmp = ioread32be(®s->command_config); tmp &= ~CMD_CFG_PFC_MODE; - priority = 0; iowrite32be(tmp, ®s->command_config); @@ -982,7 +981,7 @@ list_for_each(pos, &memac->multicast_addr_hash->lsts[hash]) { hash_entry = ETH_HASH_ENTRY_OBJ(pos); - if (hash_entry->addr == addr) { + if (hash_entry && hash_entry->addr == addr) { list_del_init(&hash_entry->node); kfree(hash_entry); break; --- linux-azure-5.8-5.8.0.orig/drivers/net/ethernet/freescale/fman/fman_port.c +++ linux-azure-5.8-5.8.0/drivers/net/ethernet/freescale/fman/fman_port.c @@ -1767,6 +1767,7 @@ struct fman_port *port; struct fman *fman; struct device_node *fm_node, *port_node; + struct platform_device *fm_pdev; struct resource res; struct resource *dev_res; u32 val; @@ -1791,8 +1792,14 @@ goto return_err; } - fman = dev_get_drvdata(&of_find_device_by_node(fm_node)->dev); + fm_pdev = of_find_device_by_node(fm_node); of_node_put(fm_node); + if (!fm_pdev) { + err = -EINVAL; + goto return_err; + } + + fman = dev_get_drvdata(&fm_pdev->dev); if (!fman) { err = -EINVAL; goto return_err; --- linux-azure-5.8-5.8.0.orig/drivers/net/ethernet/freescale/fman/fman_tgec.c +++ linux-azure-5.8-5.8.0/drivers/net/ethernet/freescale/fman/fman_tgec.c @@ -626,7 +626,7 @@ list_for_each(pos, &tgec->multicast_addr_hash->lsts[hash]) { hash_entry = ETH_HASH_ENTRY_OBJ(pos); - if (hash_entry->addr == addr) { + if (hash_entry && hash_entry->addr == addr) { list_del_init(&hash_entry->node); kfree(hash_entry); break; --- linux-azure-5.8-5.8.0.orig/drivers/net/ethernet/freescale/fs_enet/mii-bitbang.c +++ linux-azure-5.8-5.8.0/drivers/net/ethernet/freescale/fs_enet/mii-bitbang.c @@ -223,3 +223,4 @@ }; module_platform_driver(fs_enet_bb_mdio_driver); +MODULE_LICENSE("GPL"); --- linux-azure-5.8-5.8.0.orig/drivers/net/ethernet/freescale/fs_enet/mii-fec.c +++ linux-azure-5.8-5.8.0/drivers/net/ethernet/freescale/fs_enet/mii-fec.c @@ -224,3 +224,4 @@ }; module_platform_driver(fs_enet_fec_mdio_driver); +MODULE_LICENSE("GPL"); --- linux-azure-5.8-5.8.0.orig/drivers/net/ethernet/freescale/gianfar.c +++ linux-azure-5.8-5.8.0/drivers/net/ethernet/freescale/gianfar.c @@ -750,8 +750,10 @@ continue; err = gfar_parse_group(child, priv, model); - if (err) + if (err) { + of_node_put(child); goto err_grp_init; + } } } else { /* SQ_SG_MODE */ err = gfar_parse_group(np, priv, model); @@ -1827,20 +1829,12 @@ fcb_len = GMAC_FCB_LEN + GMAC_TXPAL_LEN; /* make space for additional header when fcb is needed */ - if (fcb_len && unlikely(skb_headroom(skb) < fcb_len)) { - struct sk_buff *skb_new; - - skb_new = skb_realloc_headroom(skb, fcb_len); - if (!skb_new) { + if (fcb_len) { + if (unlikely(skb_cow_head(skb, fcb_len))) { dev->stats.tx_errors++; dev_kfree_skb_any(skb); return NETDEV_TX_OK; } - - if (skb->sk) - skb_set_owner_w(skb_new, skb->sk); - dev_consume_skb_any(skb); - skb = skb_new; } /* total number of fragments in the SKB */ @@ -2397,6 +2391,10 @@ if (lstatus & BD_LFLAG(RXBD_LAST)) size -= skb->len; + WARN(size < 0, "gianfar: rx fragment size underflow"); + if (size < 0) + return false; + skb_add_rx_frag(skb, skb_shinfo(skb)->nr_frags, page, rxb->page_offset + RXBUF_ALIGNMENT, size, GFAR_RXB_TRUESIZE); @@ -2559,6 +2557,17 @@ if (lstatus & BD_LFLAG(RXBD_EMPTY)) break; + /* lost RXBD_LAST descriptor due to overrun */ + if (skb && + (lstatus & BD_LFLAG(RXBD_FIRST))) { + /* discard faulty buffer */ + dev_kfree_skb(skb); + skb = NULL; + rx_queue->stats.rx_dropped++; + + /* can continue normally */ + } + /* order rx buffer descriptor reads */ rmb(); @@ -3378,7 +3387,7 @@ if (dev->features & NETIF_F_IP_CSUM || priv->device_flags & FSL_GIANFAR_DEV_HAS_TIMER) - dev->needed_headroom = GMAC_FCB_LEN; + dev->needed_headroom = GMAC_FCB_LEN + GMAC_TXPAL_LEN; /* Initializing some of the rx/tx queue level parameters */ for (i = 0; i < priv->num_tx_queues; i++) { --- linux-azure-5.8-5.8.0.orig/drivers/net/ethernet/freescale/ucc_geth.c +++ linux-azure-5.8-5.8.0/drivers/net/ethernet/freescale/ucc_geth.c @@ -3889,6 +3889,7 @@ INIT_WORK(&ugeth->timeout_work, ucc_geth_timeout_work); netif_napi_add(dev, &ugeth->napi, ucc_geth_poll, 64); dev->mtu = 1500; + dev->max_mtu = 1518; ugeth->msg_enable = netif_msg_init(debug.msg_enable, UGETH_MSG_DEFAULT); ugeth->phy_interface = phy_interface; @@ -3934,12 +3935,12 @@ struct device_node *np = ofdev->dev.of_node; unregister_netdev(dev); - free_netdev(dev); ucc_geth_memclean(ugeth); if (of_phy_is_fixed_link(np)) of_phy_deregister_fixed_link(np); of_node_put(ugeth->ug_info->tbi_node); of_node_put(ugeth->ug_info->phy_node); + free_netdev(dev); return 0; } --- linux-azure-5.8-5.8.0.orig/drivers/net/ethernet/freescale/ucc_geth.h +++ linux-azure-5.8-5.8.0/drivers/net/ethernet/freescale/ucc_geth.h @@ -575,7 +575,14 @@ u32 vtagtable[0x8]; /* 8 4-byte VLAN tags */ u32 tqptr; /* a base pointer to the Tx Queues Memory Region */ - u8 res2[0x80 - 0x74]; + u8 res2[0x78 - 0x74]; + u64 snums_en; + u32 l2l3baseptr; /* top byte consists of a few other bit fields */ + + u16 mtu[8]; + u8 res3[0xa8 - 0x94]; + u32 wrrtablebase; /* top byte is reserved */ + u8 res4[0xc0 - 0xac]; } __packed; /* structure representing Extended Filtering Global Parameters in PRAM */ --- linux-azure-5.8-5.8.0.orig/drivers/net/ethernet/hisilicon/hns/hns_enet.c +++ linux-azure-5.8-5.8.0/drivers/net/ethernet/hisilicon/hns/hns_enet.c @@ -2282,8 +2282,10 @@ priv->enet_ver = AE_VERSION_1; else if (acpi_dev_found(hns_enet_acpi_match[1].id)) priv->enet_ver = AE_VERSION_2; - else - return -ENXIO; + else { + ret = -ENXIO; + goto out_read_prop_fail; + } /* try to find port-idx-in-ae first */ ret = acpi_node_get_property_reference(dev->fwnode, @@ -2299,7 +2301,8 @@ priv->fwnode = args.fwnode; } else { dev_err(dev, "cannot read cfg data from OF or acpi\n"); - return -ENXIO; + ret = -ENXIO; + goto out_read_prop_fail; } ret = device_property_read_u32(dev, "port-idx-in-ae", &port_id); --- linux-azure-5.8-5.8.0.orig/drivers/net/ethernet/hisilicon/hns/hns_ethtool.c +++ linux-azure-5.8-5.8.0/drivers/net/ethernet/hisilicon/hns/hns_ethtool.c @@ -415,6 +415,10 @@ /* for mutl buffer*/ new_skb = skb_copy(skb, GFP_ATOMIC); dev_kfree_skb_any(skb); + if (!new_skb) { + netdev_err(ndev, "skb alloc failed\n"); + return; + } skb = new_skb; check_ok = 0; --- linux-azure-5.8-5.8.0.orig/drivers/net/ethernet/hisilicon/hns3/hclge_mbx.h +++ linux-azure-5.8-5.8.0/drivers/net/ethernet/hisilicon/hns3/hclge_mbx.h @@ -168,7 +168,7 @@ #define hclge_mbx_ring_ptr_move_crq(crq) \ (crq->next_to_use = (crq->next_to_use + 1) % crq->desc_num) #define hclge_mbx_tail_ptr_move_arq(arq) \ - (arq.tail = (arq.tail + 1) % HCLGE_MBX_MAX_ARQ_MSG_SIZE) + (arq.tail = (arq.tail + 1) % HCLGE_MBX_MAX_ARQ_MSG_NUM) #define hclge_mbx_head_ptr_move_arq(arq) \ - (arq.head = (arq.head + 1) % HCLGE_MBX_MAX_ARQ_MSG_SIZE) + (arq.head = (arq.head + 1) % HCLGE_MBX_MAX_ARQ_MSG_NUM) #endif --- linux-azure-5.8-5.8.0.orig/drivers/net/ethernet/hisilicon/hns3/hns3_enet.c +++ linux-azure-5.8-5.8.0/drivers/net/ethernet/hisilicon/hns3/hns3_enet.c @@ -20,6 +20,7 @@ #include #include #include +#include #include "hnae3.h" #include "hns3_enet.h" @@ -780,7 +781,7 @@ * and it is udp packet, which has a dest port as the IANA assigned. * the hardware is expected to do the checksum offload, but the * hardware will not do the checksum offload when udp dest port is - * 4789. + * 4789 or 6081. */ static bool hns3_tunnel_csum_bug(struct sk_buff *skb) { @@ -789,7 +790,8 @@ l4.hdr = skb_transport_header(skb); if (!(!skb->encapsulation && - l4.udp->dest == htons(IANA_VXLAN_UDP_PORT))) + (l4.udp->dest == htons(IANA_VXLAN_UDP_PORT) || + l4.udp->dest == htons(GENEVE_UDP_PORT)))) return false; skb_checksum_help(skb); --- linux-azure-5.8-5.8.0.orig/drivers/net/ethernet/hisilicon/hns3/hns3pf/hclge_debugfs.h +++ linux-azure-5.8-5.8.0/drivers/net/ethernet/hisilicon/hns3/hns3pf/hclge_debugfs.h @@ -35,8 +35,6 @@ #define HCLGE_DBG_DFX_SSU_2_OFFSET 12 -#pragma pack(1) - struct hclge_qos_pri_map_cmd { u8 pri0_tc : 4, pri1_tc : 4; @@ -85,8 +83,6 @@ struct hclge_dbg_reg_common_msg reg_msg; }; -#pragma pack() - static struct hclge_dbg_dfx_message hclge_dbg_bios_common_reg[] = { {false, "Reserved"}, {true, "BP_CPU_STATE"}, --- linux-azure-5.8-5.8.0.orig/drivers/net/ethernet/hisilicon/hns3/hns3pf/hclge_main.c +++ linux-azure-5.8-5.8.0/drivers/net/ethernet/hisilicon/hns3/hns3pf/hclge_main.c @@ -751,7 +751,8 @@ handle->flags |= HNAE3_SUPPORT_SERDES_SERIAL_LOOPBACK; handle->flags |= HNAE3_SUPPORT_SERDES_PARALLEL_LOOPBACK; - if (hdev->hw.mac.phydev) { + if (hdev->hw.mac.phydev && hdev->hw.mac.phydev->drv && + hdev->hw.mac.phydev->drv->set_loopback) { count += 1; handle->flags |= HNAE3_SUPPORT_PHY_LOOPBACK; } @@ -9291,12 +9292,19 @@ void hclge_reset_vf_queue(struct hclge_vport *vport, u16 queue_id) { + struct hnae3_handle *handle = &vport->nic; struct hclge_dev *hdev = vport->back; int reset_try_times = 0; int reset_status; u16 queue_gid; int ret; + if (queue_id >= handle->kinfo.num_tqps) { + dev_warn(&hdev->pdev->dev, "Invalid vf queue id(%u)\n", + queue_id); + return; + } + queue_gid = hclge_covert_handle_qid_global(&vport->nic, queue_id); ret = hclge_send_reset_tqp_cmd(hdev, queue_gid, true); --- linux-azure-5.8-5.8.0.orig/drivers/net/ethernet/hisilicon/hns3/hns3pf/hclge_mbx.c +++ linux-azure-5.8-5.8.0/drivers/net/ethernet/hisilicon/hns3/hns3pf/hclge_mbx.c @@ -158,21 +158,31 @@ struct hclge_vport *vport) { struct hnae3_ring_chain_node *cur_chain, *new_chain; + struct hclge_dev *hdev = vport->back; int ring_num; - int i = 0; + int i; ring_num = req->msg.ring_num; if (ring_num > HCLGE_MBX_MAX_RING_CHAIN_PARAM_NUM) return -ENOMEM; + for (i = 0; i < ring_num; i++) { + if (req->msg.param[i].tqp_index >= vport->nic.kinfo.rss_size) { + dev_err(&hdev->pdev->dev, "tqp index(%u) is out of range(0-%u)\n", + req->msg.param[i].tqp_index, + vport->nic.kinfo.rss_size - 1); + return -EINVAL; + } + } + hnae3_set_bit(ring_chain->flag, HNAE3_RING_TYPE_B, - req->msg.param[i].ring_type); + req->msg.param[0].ring_type); ring_chain->tqp_index = hclge_get_queue_id(vport->nic.kinfo.tqp - [req->msg.param[i].tqp_index]); + [req->msg.param[0].tqp_index]); hnae3_set_field(ring_chain->int_gl_idx, HNAE3_RING_GL_IDX_M, - HNAE3_RING_GL_IDX_S, req->msg.param[i].int_gl_index); + HNAE3_RING_GL_IDX_S, req->msg.param[0].int_gl_index); cur_chain = ring_chain; @@ -581,6 +591,17 @@ index = mbx_req->msg.data[0]; + /* Check the query index of rss_hash_key from VF, make sure no + * more than the size of rss_hash_key. + */ + if (((index + 1) * HCLGE_RSS_MBX_RESP_LEN) > + sizeof(vport[0].rss_hash_key)) { + dev_warn(&hdev->pdev->dev, + "failed to get the rss hash key, the index(%u) invalid !\n", + index); + return; + } + memcpy(resp_msg->data, &hdev->vport[0].rss_hash_key[index * HCLGE_RSS_MBX_RESP_LEN], HCLGE_RSS_MBX_RESP_LEN); --- linux-azure-5.8-5.8.0.orig/drivers/net/ethernet/hisilicon/hns3/hns3vf/hclgevf_main.c +++ linux-azure-5.8-5.8.0/drivers/net/ethernet/hisilicon/hns3/hns3vf/hclgevf_main.c @@ -3146,8 +3146,8 @@ hclgevf_uninit_msi(hdev); } - hclgevf_pci_uninit(hdev); hclgevf_cmd_uninit(hdev); + hclgevf_pci_uninit(hdev); hclgevf_uninit_mac_list(hdev); } --- linux-azure-5.8-5.8.0.orig/drivers/net/ethernet/huawei/hinic/Kconfig +++ linux-azure-5.8-5.8.0/drivers/net/ethernet/huawei/hinic/Kconfig @@ -6,6 +6,7 @@ config HINIC tristate "Huawei Intelligent PCIE Network Interface Card" depends on (PCI_MSI && (X86 || ARM64)) + select NET_DEVLINK help This driver supports HiNIC PCIE Ethernet cards. To compile this driver as part of the kernel, choose Y here. --- linux-azure-5.8-5.8.0.orig/drivers/net/ethernet/huawei/hinic/hinic_hw_api_cmd.c +++ linux-azure-5.8-5.8.0/drivers/net/ethernet/huawei/hinic/hinic_hw_api_cmd.c @@ -112,6 +112,26 @@ return HINIC_API_CMD_STATUS_GET(val, CONS_IDX); } +static void dump_api_chain_reg(struct hinic_api_cmd_chain *chain) +{ + u32 addr, val; + + addr = HINIC_CSR_API_CMD_STATUS_ADDR(chain->chain_type); + val = hinic_hwif_read_reg(chain->hwif, addr); + + dev_err(&chain->hwif->pdev->dev, "Chain type: 0x%x, cpld error: 0x%x, check error: 0x%x, current fsm: 0x%x\n", + chain->chain_type, HINIC_API_CMD_STATUS_GET(val, CPLD_ERR), + HINIC_API_CMD_STATUS_GET(val, CHKSUM_ERR), + HINIC_API_CMD_STATUS_GET(val, FSM)); + + dev_err(&chain->hwif->pdev->dev, "Chain hw current ci: 0x%x\n", + HINIC_API_CMD_STATUS_GET(val, CONS_IDX)); + + addr = HINIC_CSR_API_CMD_CHAIN_PI_ADDR(chain->chain_type); + val = hinic_hwif_read_reg(chain->hwif, addr); + dev_err(&chain->hwif->pdev->dev, "Chain hw current pi: 0x%x\n", val); +} + /** * chain_busy - check if the chain is still processing last requests * @chain: chain to check @@ -131,8 +151,10 @@ /* check for a space for a new command */ if (chain->cons_idx == MASKED_IDX(chain, prod_idx + 1)) { - dev_err(&pdev->dev, "API CMD chain %d is busy\n", - chain->chain_type); + dev_err(&pdev->dev, "API CMD chain %d is busy, cons_idx: %d, prod_idx: %d\n", + chain->chain_type, chain->cons_idx, + chain->prod_idx); + dump_api_chain_reg(chain); return -EBUSY; } break; @@ -332,6 +354,7 @@ err = wait_for_status_poll(chain); if (err) { dev_err(&pdev->dev, "API CMD Poll status timeout\n"); + dump_api_chain_reg(chain); break; } break; --- linux-azure-5.8-5.8.0.orig/drivers/net/ethernet/huawei/hinic/hinic_hw_api_cmd.h +++ linux-azure-5.8-5.8.0/drivers/net/ethernet/huawei/hinic/hinic_hw_api_cmd.h @@ -103,10 +103,14 @@ HINIC_API_CMD_STATUS_HEADER_##member##_MASK) #define HINIC_API_CMD_STATUS_CONS_IDX_SHIFT 0 +#define HINIC_API_CMD_STATUS_FSM_SHIFT 24 #define HINIC_API_CMD_STATUS_CHKSUM_ERR_SHIFT 28 +#define HINIC_API_CMD_STATUS_CPLD_ERR_SHIFT 30 #define HINIC_API_CMD_STATUS_CONS_IDX_MASK 0xFFFFFF +#define HINIC_API_CMD_STATUS_FSM_MASK 0xFU #define HINIC_API_CMD_STATUS_CHKSUM_ERR_MASK 0x3 +#define HINIC_API_CMD_STATUS_CPLD_ERR_MASK 0x1U #define HINIC_API_CMD_STATUS_GET(val, member) \ (((val) >> HINIC_API_CMD_STATUS_##member##_SHIFT) & \ --- linux-azure-5.8-5.8.0.orig/drivers/net/ethernet/huawei/hinic/hinic_hw_cmdq.c +++ linux-azure-5.8-5.8.0/drivers/net/ethernet/huawei/hinic/hinic_hw_cmdq.c @@ -401,6 +401,7 @@ spin_unlock_bh(&cmdq->cmdq_lock); + hinic_dump_ceq_info(cmdq->hwdev); return -ETIMEDOUT; } @@ -807,6 +808,7 @@ cmdq_type = HINIC_CMDQ_SYNC; for (; cmdq_type < HINIC_MAX_CMDQ_TYPES; cmdq_type++) { + cmdqs->cmdq[cmdq_type].hwdev = hwdev; err = init_cmdq(&cmdqs->cmdq[cmdq_type], &cmdqs->saved_wqs[cmdq_type], cmdq_type, db_area[cmdq_type]); --- linux-azure-5.8-5.8.0.orig/drivers/net/ethernet/huawei/hinic/hinic_hw_cmdq.h +++ linux-azure-5.8-5.8.0/drivers/net/ethernet/huawei/hinic/hinic_hw_cmdq.h @@ -130,6 +130,8 @@ }; struct hinic_cmdq { + struct hinic_hwdev *hwdev; + struct hinic_wq *wq; enum hinic_cmdq_type cmdq_type; --- linux-azure-5.8-5.8.0.orig/drivers/net/ethernet/huawei/hinic/hinic_hw_dev.c +++ linux-azure-5.8-5.8.0/drivers/net/ethernet/huawei/hinic/hinic_hw_dev.c @@ -253,9 +253,9 @@ &fw_ctxt, sizeof(fw_ctxt), &fw_ctxt, &out_size); if (err || (out_size != sizeof(fw_ctxt)) || fw_ctxt.status) { - dev_err(&pdev->dev, "Failed to init FW ctxt, ret = %d\n", - fw_ctxt.status); - return -EFAULT; + dev_err(&pdev->dev, "Failed to init FW ctxt, err: %d, status: 0x%x, out size: 0x%x\n", + err, fw_ctxt.status, out_size); + return -EIO; } return 0; @@ -420,9 +420,9 @@ &cmd_base_qpn, sizeof(cmd_base_qpn), &cmd_base_qpn, &out_size); if (err || (out_size != sizeof(cmd_base_qpn)) || cmd_base_qpn.status) { - dev_err(&pdev->dev, "Failed to get base qpn, status = %d\n", - cmd_base_qpn.status); - return -EFAULT; + dev_err(&pdev->dev, "Failed to get base qpn, err: %d, status: 0x%x, out size: 0x%x\n", + err, cmd_base_qpn.status, out_size); + return -EIO; } *base_qpn = cmd_base_qpn.qpn; --- linux-azure-5.8-5.8.0.orig/drivers/net/ethernet/huawei/hinic/hinic_hw_eqs.c +++ linux-azure-5.8-5.8.0/drivers/net/ethernet/huawei/hinic/hinic_hw_eqs.c @@ -953,3 +953,42 @@ for (q_id = 0; q_id < ceqs->num_ceqs; q_id++) remove_eq(&ceqs->ceq[q_id]); } + +void hinic_dump_ceq_info(struct hinic_hwdev *hwdev) +{ + struct hinic_eq *eq = NULL; + u32 addr, ci, pi; + int q_id; + + for (q_id = 0; q_id < hwdev->func_to_io.ceqs.num_ceqs; q_id++) { + eq = &hwdev->func_to_io.ceqs.ceq[q_id]; + addr = EQ_CONS_IDX_REG_ADDR(eq); + ci = hinic_hwif_read_reg(hwdev->hwif, addr); + addr = EQ_PROD_IDX_REG_ADDR(eq); + pi = hinic_hwif_read_reg(hwdev->hwif, addr); + dev_err(&hwdev->hwif->pdev->dev, "Ceq id: %d, ci: 0x%08x, sw_ci: 0x%08x, pi: 0x%x, tasklet_state: 0x%lx, wrap: %d, ceqe: 0x%x\n", + q_id, ci, eq->cons_idx, pi, + eq->ceq_tasklet.state, + eq->wrapped, be32_to_cpu(*(__be32 *)(GET_CURR_CEQ_ELEM(eq)))); + } +} + +void hinic_dump_aeq_info(struct hinic_hwdev *hwdev) +{ + struct hinic_aeq_elem *aeqe_pos = NULL; + struct hinic_eq *eq = NULL; + u32 addr, ci, pi; + int q_id; + + for (q_id = 0; q_id < hwdev->aeqs.num_aeqs; q_id++) { + eq = &hwdev->aeqs.aeq[q_id]; + addr = EQ_CONS_IDX_REG_ADDR(eq); + ci = hinic_hwif_read_reg(hwdev->hwif, addr); + addr = EQ_PROD_IDX_REG_ADDR(eq); + pi = hinic_hwif_read_reg(hwdev->hwif, addr); + aeqe_pos = GET_CURR_AEQ_ELEM(eq); + dev_err(&hwdev->hwif->pdev->dev, "Aeq id: %d, ci: 0x%08x, pi: 0x%x, work_state: 0x%x, wrap: %d, desc: 0x%x\n", + q_id, ci, pi, work_busy(&eq->aeq_work.work), + eq->wrapped, be32_to_cpu(aeqe_pos->desc)); + } +} --- linux-azure-5.8-5.8.0.orig/drivers/net/ethernet/huawei/hinic/hinic_hw_eqs.h +++ linux-azure-5.8-5.8.0/drivers/net/ethernet/huawei/hinic/hinic_hw_eqs.h @@ -162,7 +162,7 @@ struct hinic_aeq_elem { u8 data[HINIC_AEQE_DATA_SIZE]; - u32 desc; + __be32 desc; }; struct hinic_eq_work { @@ -254,4 +254,8 @@ void hinic_ceqs_free(struct hinic_ceqs *ceqs); +void hinic_dump_ceq_info(struct hinic_hwdev *hwdev); + +void hinic_dump_aeq_info(struct hinic_hwdev *hwdev); + #endif --- linux-azure-5.8-5.8.0.orig/drivers/net/ethernet/huawei/hinic/hinic_hw_if.c +++ linux-azure-5.8-5.8.0/drivers/net/ethernet/huawei/hinic/hinic_hw_if.c @@ -21,6 +21,8 @@ #define WAIT_HWIF_READY_TIMEOUT 10000 +#define HINIC_SELFTEST_RESULT 0x883C + /** * hinic_msix_attr_set - set message attribute for msix entry * @hwif: the HW interface of a pci function device @@ -369,6 +371,26 @@ return HINIC_FA0_GET(attr0, PF_IDX); } +static void __print_selftest_reg(struct hinic_hwif *hwif) +{ + u32 addr, attr0, attr1; + + addr = HINIC_CSR_FUNC_ATTR1_ADDR; + attr1 = hinic_hwif_read_reg(hwif, addr); + + if (attr1 == HINIC_PCIE_LINK_DOWN) { + dev_err(&hwif->pdev->dev, "PCIE is link down\n"); + return; + } + + addr = HINIC_CSR_FUNC_ATTR0_ADDR; + attr0 = hinic_hwif_read_reg(hwif, addr); + if (HINIC_FA0_GET(attr0, FUNC_TYPE) != HINIC_VF && + !HINIC_FA0_GET(attr0, PCI_INTF_IDX)) + dev_err(&hwif->pdev->dev, "Selftest reg: 0x%08x\n", + hinic_hwif_read_reg(hwif, HINIC_SELFTEST_RESULT)); +} + /** * hinic_init_hwif - initialize the hw interface * @hwif: the HW interface of a pci function device @@ -398,6 +420,7 @@ err = wait_hwif_ready(hwif); if (err) { dev_err(&pdev->dev, "HW interface is not ready\n"); + __print_selftest_reg(hwif); goto err_hwif_ready; } --- linux-azure-5.8-5.8.0.orig/drivers/net/ethernet/huawei/hinic/hinic_hw_if.h +++ linux-azure-5.8-5.8.0/drivers/net/ethernet/huawei/hinic/hinic_hw_if.h @@ -12,6 +12,8 @@ #include #include +#define HINIC_PCIE_LINK_DOWN 0xFFFFFFFF + #define HINIC_DMA_ATTR_ST_SHIFT 0 #define HINIC_DMA_ATTR_AT_SHIFT 8 #define HINIC_DMA_ATTR_PH_SHIFT 10 @@ -249,13 +251,17 @@ static inline u32 hinic_hwif_read_reg(struct hinic_hwif *hwif, u32 reg) { - return be32_to_cpu(readl(hwif->cfg_regs_bar + reg)); + u32 out = readl(hwif->cfg_regs_bar + reg); + + return be32_to_cpu(*(__be32 *)&out); } static inline void hinic_hwif_write_reg(struct hinic_hwif *hwif, u32 reg, u32 val) { - writel(cpu_to_be32(val), hwif->cfg_regs_bar + reg); + __be32 in = cpu_to_be32(val); + + writel(*(u32 *)&in, hwif->cfg_regs_bar + reg); } int hinic_msix_attr_set(struct hinic_hwif *hwif, u16 msix_index, --- linux-azure-5.8-5.8.0.orig/drivers/net/ethernet/huawei/hinic/hinic_hw_mbox.c +++ linux-azure-5.8-5.8.0/drivers/net/ethernet/huawei/hinic/hinic_hw_mbox.c @@ -650,6 +650,7 @@ if (!wait_for_completion_timeout(done, jif)) { dev_err(&hwdev->hwif->pdev->dev, "Send mailbox segment timeout\n"); dump_mox_reg(hwdev); + hinic_dump_aeq_info(hwdev); return -ETIMEDOUT; } @@ -897,6 +898,7 @@ set_mbox_to_func_event(func_to_func, EVENT_TIMEOUT); dev_err(&func_to_func->hwif->pdev->dev, "Send mbox msg timeout, msg_id: %d\n", msg_info.msg_id); + hinic_dump_aeq_info(func_to_func->hwdev); err = -ETIMEDOUT; goto err_send_mbox; } --- linux-azure-5.8-5.8.0.orig/drivers/net/ethernet/huawei/hinic/hinic_hw_mgmt.c +++ linux-azure-5.8-5.8.0/drivers/net/ethernet/huawei/hinic/hinic_hw_mgmt.c @@ -45,6 +45,8 @@ #define MGMT_MSG_TIMEOUT 5000 +#define SET_FUNC_PORT_MBOX_TIMEOUT 30000 + #define SET_FUNC_PORT_MGMT_TIMEOUT 25000 #define mgmt_to_pfhwdev(pf_mgmt) \ @@ -274,6 +276,7 @@ if (!wait_for_completion_timeout(recv_done, timeo)) { dev_err(&pdev->dev, "MGMT timeout, MSG id = %d\n", msg_id); + hinic_dump_aeq_info(pf_to_mgmt->hwdev); err = -ETIMEDOUT; goto unlock_sync_msg; } @@ -358,16 +361,20 @@ return -EINVAL; } - if (cmd == HINIC_PORT_CMD_SET_FUNC_STATE) - timeout = SET_FUNC_PORT_MGMT_TIMEOUT; + if (HINIC_IS_VF(hwif)) { + if (cmd == HINIC_PORT_CMD_SET_FUNC_STATE) + timeout = SET_FUNC_PORT_MBOX_TIMEOUT; - if (HINIC_IS_VF(hwif)) return hinic_mbox_to_pf(pf_to_mgmt->hwdev, mod, cmd, buf_in, - in_size, buf_out, out_size, 0); - else + in_size, buf_out, out_size, timeout); + } else { + if (cmd == HINIC_PORT_CMD_SET_FUNC_STATE) + timeout = SET_FUNC_PORT_MGMT_TIMEOUT; + return msg_to_mgmt_sync(pf_to_mgmt, mod, cmd, buf_in, in_size, buf_out, out_size, MGMT_DIRECT_SEND, MSG_NOT_RESP, timeout); + } } static void recv_mgmt_msg_work_handler(struct work_struct *work) --- linux-azure-5.8-5.8.0.orig/drivers/net/ethernet/huawei/hinic/hinic_main.c +++ linux-azure-5.8-5.8.0/drivers/net/ethernet/huawei/hinic/hinic_main.c @@ -168,6 +168,24 @@ return err; } +static void enable_txqs_napi(struct hinic_dev *nic_dev) +{ + int num_txqs = hinic_hwdev_num_qps(nic_dev->hwdev); + int i; + + for (i = 0; i < num_txqs; i++) + napi_enable(&nic_dev->txqs[i].napi); +} + +static void disable_txqs_napi(struct hinic_dev *nic_dev) +{ + int num_txqs = hinic_hwdev_num_qps(nic_dev->hwdev); + int i; + + for (i = 0; i < num_txqs; i++) + napi_disable(&nic_dev->txqs[i].napi); +} + /** * free_txqs - Free the Logical Tx Queues of specific NIC device * @nic_dev: the specific NIC device @@ -394,6 +412,8 @@ goto err_create_txqs; } + enable_txqs_napi(nic_dev); + err = create_rxqs(nic_dev); if (err) { netif_err(nic_dev, drv, netdev, @@ -475,6 +495,7 @@ } err_create_rxqs: + disable_txqs_napi(nic_dev); free_txqs(nic_dev); err_create_txqs: @@ -488,6 +509,9 @@ struct hinic_dev *nic_dev = netdev_priv(netdev); unsigned int flags; + /* Disable txq napi firstly to aviod rewaking txq in free_tx_poll */ + disable_txqs_napi(nic_dev); + down(&nic_dev->mgmt_lock); flags = nic_dev->flags; --- linux-azure-5.8-5.8.0.orig/drivers/net/ethernet/huawei/hinic/hinic_port.c +++ linux-azure-5.8-5.8.0/drivers/net/ethernet/huawei/hinic/hinic_port.c @@ -58,11 +58,11 @@ sizeof(port_mac_cmd), &port_mac_cmd, &out_size); if (err || out_size != sizeof(port_mac_cmd) || - (port_mac_cmd.status && - port_mac_cmd.status != HINIC_PF_SET_VF_ALREADY && - port_mac_cmd.status != HINIC_MGMT_STATUS_EXIST)) { - dev_err(&pdev->dev, "Failed to change MAC, ret = %d\n", - port_mac_cmd.status); + (port_mac_cmd.status && + (port_mac_cmd.status != HINIC_PF_SET_VF_ALREADY || !HINIC_IS_VF(hwif)) && + port_mac_cmd.status != HINIC_MGMT_STATUS_EXIST)) { + dev_err(&pdev->dev, "Failed to change MAC, err: %d, status: 0x%x, out size: 0x%x\n", + err, port_mac_cmd.status, out_size); return -EFAULT; } @@ -129,8 +129,8 @@ &port_mac_cmd, sizeof(port_mac_cmd), &port_mac_cmd, &out_size); if (err || (out_size != sizeof(port_mac_cmd)) || port_mac_cmd.status) { - dev_err(&pdev->dev, "Failed to get mac, ret = %d\n", - port_mac_cmd.status); + dev_err(&pdev->dev, "Failed to get mac, err: %d, status: 0x%x, out size: 0x%x\n", + err, port_mac_cmd.status, out_size); return -EFAULT; } @@ -172,9 +172,9 @@ err = hinic_port_msg_cmd(hwdev, HINIC_PORT_CMD_CHANGE_MTU, &port_mtu_cmd, sizeof(port_mtu_cmd), &port_mtu_cmd, &out_size); - if (err || (out_size != sizeof(port_mtu_cmd)) || port_mtu_cmd.status) { - dev_err(&pdev->dev, "Failed to set mtu, ret = %d\n", - port_mtu_cmd.status); + if (err || out_size != sizeof(port_mtu_cmd) || port_mtu_cmd.status) { + dev_err(&pdev->dev, "Failed to set mtu, err: %d, status: 0x%x, out size: 0x%x\n", + err, port_mtu_cmd.status, out_size); return -EFAULT; } @@ -264,8 +264,8 @@ &link_cmd, sizeof(link_cmd), &link_cmd, &out_size); if (err || (out_size != sizeof(link_cmd)) || link_cmd.status) { - dev_err(&pdev->dev, "Failed to get link state, ret = %d\n", - link_cmd.status); + dev_err(&pdev->dev, "Failed to get link state, err: %d, status: 0x%x, out size: 0x%x\n", + err, link_cmd.status, out_size); return -EINVAL; } @@ -298,8 +298,8 @@ &port_state, sizeof(port_state), &port_state, &out_size); if (err || (out_size != sizeof(port_state)) || port_state.status) { - dev_err(&pdev->dev, "Failed to set port state, ret = %d\n", - port_state.status); + dev_err(&pdev->dev, "Failed to set port state, err: %d, status: 0x%x, out size: 0x%x\n", + err, port_state.status, out_size); return -EFAULT; } @@ -330,8 +330,8 @@ &func_state, sizeof(func_state), &func_state, &out_size); if (err || (out_size != sizeof(func_state)) || func_state.status) { - dev_err(&pdev->dev, "Failed to set port func state, ret = %d\n", - func_state.status); + dev_err(&pdev->dev, "Failed to set port func state, err: %d, status: 0x%x, out size: 0x%x\n", + err, func_state.status, out_size); return -EFAULT; } @@ -361,9 +361,9 @@ port_cap, &out_size); if (err || (out_size != sizeof(*port_cap)) || port_cap->status) { dev_err(&pdev->dev, - "Failed to get port capabilities, ret = %d\n", - port_cap->status); - return -EINVAL; + "Failed to get port capabilities, err: %d, status: 0x%x, out size: 0x%x\n", + err, port_cap->status, out_size); + return -EIO; } return 0; @@ -393,9 +393,9 @@ &tso_cfg, &out_size); if (err || out_size != sizeof(tso_cfg) || tso_cfg.status) { dev_err(&pdev->dev, - "Failed to set port tso, ret = %d\n", - tso_cfg.status); - return -EINVAL; + "Failed to set port tso, err: %d, status: 0x%x, out size: 0x%x\n", + err, tso_cfg.status, out_size); + return -EIO; } return 0; @@ -423,9 +423,9 @@ &rx_csum_cfg, &out_size); if (err || !out_size || rx_csum_cfg.status) { dev_err(&pdev->dev, - "Failed to set rx csum offload, ret = %d\n", - rx_csum_cfg.status); - return -EINVAL; + "Failed to set rx csum offload, err: %d, status: 0x%x, out size: 0x%x\n", + err, rx_csum_cfg.status, out_size); + return -EIO; } return 0; @@ -480,9 +480,9 @@ &rq_num, &out_size); if (err || !out_size || rq_num.status) { dev_err(&pdev->dev, - "Failed to rxq number, ret = %d\n", - rq_num.status); - return -EINVAL; + "Failed to set rxq number, err: %d, status: 0x%x, out size: 0x%x\n", + err, rq_num.status, out_size); + return -EIO; } return 0; @@ -508,9 +508,9 @@ &lro_cfg, &out_size); if (err || !out_size || lro_cfg.status) { dev_err(&pdev->dev, - "Failed to set lro offload, ret = %d\n", - lro_cfg.status); - return -EINVAL; + "Failed to set lro offload, err: %d, status: 0x%x, out size: 0x%x\n", + err, lro_cfg.status, out_size); + return -EIO; } return 0; @@ -542,10 +542,10 @@ if (err || !out_size || lro_timer.status) { dev_err(&pdev->dev, - "Failed to set lro timer, ret = %d\n", - lro_timer.status); + "Failed to set lro timer, err: %d, status: 0x%x, out size: 0x%x\n", + err, lro_timer.status, out_size); - return -EINVAL; + return -EIO; } return 0; --- linux-azure-5.8-5.8.0.orig/drivers/net/ethernet/huawei/hinic/hinic_sriov.c +++ linux-azure-5.8-5.8.0/drivers/net/ethernet/huawei/hinic/hinic_sriov.c @@ -38,11 +38,10 @@ err = hinic_port_msg_cmd(hwdev, HINIC_PORT_CMD_SET_MAC, &mac_info, sizeof(mac_info), &mac_info, &out_size); if (err || out_size != sizeof(mac_info) || - (mac_info.status && mac_info.status != HINIC_PF_SET_VF_ALREADY && - mac_info.status != HINIC_MGMT_STATUS_EXIST)) { - dev_err(&hwdev->func_to_io.hwif->pdev->dev, "Failed to change MAC, ret = %d\n", - mac_info.status); - return -EFAULT; + (mac_info.status && mac_info.status != HINIC_MGMT_STATUS_EXIST)) { + dev_err(&hwdev->func_to_io.hwif->pdev->dev, "Failed to set MAC, err: %d, status: 0x%x, out size: 0x%x\n", + err, mac_info.status, out_size); + return -EIO; } return 0; @@ -452,8 +451,7 @@ static int hinic_check_mac_info(u8 status, u16 vlan_id) { - if ((status && status != HINIC_MGMT_STATUS_EXIST && - status != HINIC_PF_SET_VF_ALREADY) || + if ((status && status != HINIC_MGMT_STATUS_EXIST) || (vlan_id & CHECK_IPSU_15BIT && status == HINIC_MGMT_STATUS_EXIST)) return -EINVAL; @@ -495,12 +493,6 @@ return -EINVAL; } - if (mac_info.status == HINIC_PF_SET_VF_ALREADY) { - dev_warn(&hwdev->hwif->pdev->dev, - "PF has already set VF MAC. Ignore update operation\n"); - return HINIC_PF_SET_VF_ALREADY; - } - if (mac_info.status == HINIC_MGMT_STATUS_EXIST) dev_warn(&hwdev->hwif->pdev->dev, "MAC is repeated. Ignore update operation\n"); --- linux-azure-5.8-5.8.0.orig/drivers/net/ethernet/huawei/hinic/hinic_tx.c +++ linux-azure-5.8-5.8.0/drivers/net/ethernet/huawei/hinic/hinic_tx.c @@ -684,18 +684,6 @@ return budget; } -static void tx_napi_add(struct hinic_txq *txq, int weight) -{ - netif_napi_add(txq->netdev, &txq->napi, free_tx_poll, weight); - napi_enable(&txq->napi); -} - -static void tx_napi_del(struct hinic_txq *txq) -{ - napi_disable(&txq->napi); - netif_napi_del(&txq->napi); -} - static irqreturn_t tx_irq(int irq, void *data) { struct hinic_txq *txq = data; @@ -724,7 +712,7 @@ struct hinic_sq *sq = txq->sq; int err; - tx_napi_add(txq, nic_dev->tx_weight); + netif_napi_add(txq->netdev, &txq->napi, free_tx_poll, nic_dev->tx_weight); hinic_hwdev_msix_set(nic_dev->hwdev, sq->msix_entry, TX_IRQ_NO_PENDING, TX_IRQ_NO_COALESC, @@ -734,7 +722,7 @@ err = request_irq(sq->irq, tx_irq, 0, txq->irq_name, txq); if (err) { dev_err(&pdev->dev, "Failed to request Tx irq\n"); - tx_napi_del(txq); + netif_napi_del(&txq->napi); return err; } @@ -746,7 +734,7 @@ struct hinic_sq *sq = txq->sq; free_irq(sq->irq, txq); - tx_napi_del(txq); + netif_napi_del(&txq->napi); } /** --- linux-azure-5.8-5.8.0.orig/drivers/net/ethernet/ibm/ibmveth.c +++ linux-azure-5.8-5.8.0/drivers/net/ethernet/ibm/ibmveth.c @@ -1031,12 +1031,6 @@ ret = -EOPNOTSUPP; } - if (!ether_addr_equal(ether_header->h_source, netdev->dev_addr)) { - netdev_dbg(netdev, "source packet MAC address does not match veth device's, dropping packet.\n"); - netdev->stats.tx_dropped++; - ret = -EOPNOTSUPP; - } - return ret; } @@ -1349,6 +1343,7 @@ int offset = ibmveth_rxq_frame_offset(adapter); int csum_good = ibmveth_rxq_csum_good(adapter); int lrg_pkt = ibmveth_rxq_large_packet(adapter); + __sum16 iph_check = 0; skb = ibmveth_rxq_get_buffer(adapter); @@ -1385,16 +1380,26 @@ skb_put(skb, length); skb->protocol = eth_type_trans(skb, netdev); - if (csum_good) { - skb->ip_summed = CHECKSUM_UNNECESSARY; - ibmveth_rx_csum_helper(skb, adapter); + /* PHYP without PLSO support places a -1 in the ip + * checksum for large send frames. + */ + if (skb->protocol == cpu_to_be16(ETH_P_IP)) { + struct iphdr *iph = (struct iphdr *)skb->data; + + iph_check = iph->check; } - if (length > netdev->mtu + ETH_HLEN) { + if ((length > netdev->mtu + ETH_HLEN) || + lrg_pkt || iph_check == 0xffff) { ibmveth_rx_mss_helper(skb, mss, lrg_pkt); adapter->rx_large_packets++; } + if (csum_good) { + skb->ip_summed = CHECKSUM_UNNECESSARY; + ibmveth_rx_csum_helper(skb, adapter); + } + napi_gro_receive(napi, skb); /* send it up */ netdev->stats.rx_packets++; --- linux-azure-5.8-5.8.0.orig/drivers/net/ethernet/ibm/ibmvnic.c +++ linux-azure-5.8-5.8.0/drivers/net/ethernet/ibm/ibmvnic.c @@ -250,8 +250,13 @@ if (!ltb->buff) return; + /* VIOS automatically unmaps the long term buffer at remote + * end for the following resets: + * FAILOVER, MOBILITY, TIMEOUT. + */ if (adapter->reset_reason != VNIC_RESET_FAILOVER && - adapter->reset_reason != VNIC_RESET_MOBILITY) + adapter->reset_reason != VNIC_RESET_MOBILITY && + adapter->reset_reason != VNIC_RESET_TIMEOUT) send_request_unmap(adapter, ltb->map_id); dma_free_coherent(dev, ltb->size, ltb->buff, ltb->addr); } @@ -479,6 +484,9 @@ int i, j, rc; u64 *size_array; + if (!adapter->rx_pool) + return -1; + size_array = (u64 *)((u8 *)(adapter->login_rsp_buf) + be32_to_cpu(adapter->login_rsp_buf->off_rxadd_buff_size)); @@ -649,6 +657,9 @@ int tx_scrqs; int i, rc; + if (!adapter->tx_pool) + return -1; + tx_scrqs = be32_to_cpu(adapter->login_rsp_buf->num_txsubm_subcrqs); for (i = 0; i < tx_scrqs; i++) { rc = reset_one_tx_pool(adapter, &adapter->tso_pool[i]); @@ -840,7 +851,7 @@ static int ibmvnic_login(struct net_device *netdev) { struct ibmvnic_adapter *adapter = netdev_priv(netdev); - unsigned long timeout = msecs_to_jiffies(30000); + unsigned long timeout = msecs_to_jiffies(20000); int retry_count = 0; int retries = 10; bool retry; @@ -856,10 +867,8 @@ adapter->init_done_rc = 0; reinit_completion(&adapter->init_done); rc = send_login(adapter); - if (rc) { - netdev_warn(netdev, "Unable to login\n"); + if (rc) return rc; - } if (!wait_for_completion_timeout(&adapter->init_done, timeout)) { @@ -940,13 +949,14 @@ release_rx_pools(adapter); release_napi(adapter); + release_login_buffer(adapter); release_login_rsp_buffer(adapter); } static int set_link_state(struct ibmvnic_adapter *adapter, u8 link_state) { struct net_device *netdev = adapter->netdev; - unsigned long timeout = msecs_to_jiffies(30000); + unsigned long timeout = msecs_to_jiffies(20000); union ibmvnic_crq crq; bool resend; int rc; @@ -1191,18 +1201,27 @@ if (adapter->state != VNIC_CLOSED) { rc = ibmvnic_login(netdev); if (rc) - return rc; + goto out; rc = init_resources(adapter); if (rc) { netdev_err(netdev, "failed to initialize resources\n"); release_resources(adapter); - return rc; + goto out; } } rc = __ibmvnic_open(netdev); +out: + /* + * If open fails due to a pending failover, set device state and + * return. Device operation will be handled by reset routine. + */ + if (rc && adapter->failover_pending) { + adapter->state = VNIC_OPEN; + rc = 0; + } return rc; } @@ -1327,10 +1346,8 @@ adapter->state = VNIC_CLOSING; rc = set_link_state(adapter, IBMVNIC_LOGICAL_LNK_DN); - if (rc) - return rc; adapter->state = VNIC_CLOSED; - return 0; + return rc; } static int ibmvnic_close(struct net_device *netdev) @@ -1593,6 +1610,9 @@ skb_copy_from_linear_data(skb, dst, skb->len); } + /* post changes to long_term_buff *dst before VIOS accessing it */ + dma_wmb(); + tx_pool->consumer_index = (tx_pool->consumer_index + 1) % tx_pool->num_buffers; @@ -1822,9 +1842,13 @@ int rc; rc = 0; - ether_addr_copy(adapter->mac_addr, addr->sa_data); - if (adapter->state != VNIC_PROBED) + if (!is_valid_ether_addr(addr->sa_data)) + return -EADDRNOTAVAIL; + + if (adapter->state != VNIC_PROBED) { + ether_addr_copy(adapter->mac_addr, addr->sa_data); rc = __ibmvnic_set_mac(netdev, addr->sa_data); + } return rc; } @@ -1925,6 +1949,13 @@ rwi->reset_reason); rtnl_lock(); + /* + * Now that we have the rtnl lock, clear any pending failover. + * This will ensure ibmvnic_open() has either completed or will + * block until failover is complete. + */ + if (rwi->reset_reason == VNIC_RESET_FAILOVER) + adapter->failover_pending = false; netif_carrier_off(netdev); adapter->reset_reason = rwi->reset_reason; @@ -2011,7 +2042,10 @@ adapter->req_rx_add_entries_per_subcrq != old_num_rx_slots || adapter->req_tx_entries_per_subcrq != - old_num_tx_slots) { + old_num_tx_slots || + !adapter->rx_pool || + !adapter->tso_pool || + !adapter->tx_pool) { release_rx_pools(adapter); release_tx_pools(adapter); release_napi(adapter); @@ -2023,12 +2057,18 @@ } else { rc = reset_tx_pools(adapter); - if (rc) + if (rc) { + netdev_dbg(adapter->netdev, "reset tx pools failed (%d)\n", + rc); goto out; + } rc = reset_rx_pools(adapter); - if (rc) + if (rc) { + netdev_dbg(adapter->netdev, "reset rx pools failed (%d)\n", + rc); goto out; + } } ibmvnic_disable_irqs(adapter); } @@ -2052,8 +2092,11 @@ for (i = 0; i < adapter->req_rx_queues; i++) napi_schedule(&adapter->napi[i]); - if (adapter->reset_reason != VNIC_RESET_FAILOVER) + if (adapter->reset_reason == VNIC_RESET_FAILOVER || + adapter->reset_reason == VNIC_RESET_MOBILITY) { call_netdevice_notifiers(NETDEV_NOTIFY_PEERS, netdev); + call_netdevice_notifiers(NETDEV_RESEND_IGMP, netdev); + } rc = 0; @@ -2123,6 +2166,9 @@ if (rc) return IBMVNIC_OPEN_FAILED; + call_netdevice_notifiers(NETDEV_NOTIFY_PEERS, netdev); + call_netdevice_notifiers(NETDEV_RESEND_IGMP, netdev); + return 0; } @@ -2145,17 +2191,6 @@ return rwi; } -static void free_all_rwi(struct ibmvnic_adapter *adapter) -{ - struct ibmvnic_rwi *rwi; - - rwi = get_next_rwi(adapter); - while (rwi) { - kfree(rwi); - rwi = get_next_rwi(adapter); - } -} - static void __ibmvnic_reset(struct work_struct *work) { struct ibmvnic_rwi *rwi; @@ -2187,7 +2222,6 @@ if (!saved_state) { reset_state = adapter->state; - adapter->state = VNIC_RESETTING; saved_state = true; } spin_unlock_irqrestore(&adapter->state_lock, flags); @@ -2196,6 +2230,13 @@ /* CHANGE_PARAM requestor holds rtnl_lock */ rc = do_change_param_reset(adapter, rwi, reset_state); } else if (adapter->force_reset_recovery) { + /* + * Since we are doing a hard reset now, clear the + * failover_pending flag so we don't ignore any + * future MOBILITY or other resets. + */ + adapter->failover_pending = false; + /* Transport event occurred during previous reset */ if (adapter->wait_for_reset) { /* Previous was CHANGE_PARAM; caller locked */ @@ -2207,8 +2248,15 @@ rc = do_hard_reset(adapter, rwi, reset_state); rtnl_unlock(); } - } else if (!(rwi->reset_reason == VNIC_RESET_FATAL && - adapter->from_passive_init)) { + if (rc) { + /* give backing device time to settle down */ + netdev_dbg(adapter->netdev, + "[S:%d] Hard reset failed, waiting 60 secs\n", + adapter->state); + set_current_state(TASK_UNINTERRUPTIBLE); + schedule_timeout(60 * HZ); + } + } else { rc = do_reset(adapter, rwi, reset_state); } kfree(rwi); @@ -2218,9 +2266,9 @@ else adapter->state = reset_state; rc = 0; - } else if (rc && rc != IBMVNIC_INIT_FAILED && - !adapter->force_reset_recovery) - break; + } + if (rc) + netdev_dbg(adapter->netdev, "Reset failed, rc=%d\n", rc); rwi = get_next_rwi(adapter); @@ -2234,11 +2282,6 @@ complete(&adapter->reset_done); } - if (rc) { - netdev_dbg(adapter->netdev, "Reset failed\n"); - free_all_rwi(adapter); - } - clear_bit_unlock(0, &adapter->resetting); } @@ -2260,9 +2303,15 @@ unsigned long flags; int ret; + /* + * If failover is pending don't schedule any other reset. + * Instead let the failover complete. If there is already a + * a failover reset scheduled, we will detect and drop the + * duplicate reset when walking the ->rwi_list below. + */ if (adapter->state == VNIC_REMOVING || adapter->state == VNIC_REMOVED || - adapter->failover_pending) { + (adapter->failover_pending && reason != VNIC_RESET_FAILOVER)) { ret = EBUSY; netdev_dbg(netdev, "Adapter removing or pending failover, skipping reset\n"); goto err; @@ -2315,6 +2364,12 @@ { struct ibmvnic_adapter *adapter = netdev_priv(dev); + if (test_bit(0, &adapter->resetting)) { + netdev_err(adapter->netdev, + "Adapter is resetting, skip timeout reset\n"); + return; + } + ibmvnic_reset(adapter, VNIC_RESET_TIMEOUT); } @@ -2356,6 +2411,12 @@ if (!pending_scrq(adapter, adapter->rx_scrq[scrq_num])) break; + /* The queue entry at the current index is peeked at above + * to determine that there is a valid descriptor awaiting + * processing. We want to be sure that the current slot + * holds a valid descriptor before reading its contents. + */ + dma_rmb(); next = ibmvnic_next_scrq(adapter, adapter->rx_scrq[scrq_num]); rx_buff = (struct ibmvnic_rx_buff *)be64_to_cpu(next-> @@ -2380,6 +2441,8 @@ offset = be16_to_cpu(next->rx_comp.off_frame_data); flags = next->rx_comp.flags; skb = rx_buff->skb; + /* load long_term_buff before copying to skb */ + dma_rmb(); skb_copy_to_linear_data(skb, rx_buff->data + offset, length); @@ -2814,15 +2877,24 @@ { int rc; + if (!scrq) { + netdev_dbg(adapter->netdev, "Invalid scrq reset.\n"); + return -EINVAL; + } + if (scrq->irq) { free_irq(scrq->irq, scrq); irq_dispose_mapping(scrq->irq); scrq->irq = 0; } - - memset(scrq->msgs, 0, 4 * PAGE_SIZE); - atomic_set(&scrq->used, 0); - scrq->cur = 0; + if (scrq->msgs) { + memset(scrq->msgs, 0, 4 * PAGE_SIZE); + atomic_set(&scrq->used, 0); + scrq->cur = 0; + } else { + netdev_dbg(adapter->netdev, "Invalid scrq reset\n"); + return -EINVAL; + } rc = h_reg_sub_crq(adapter->vdev->unit_address, scrq->msg_token, 4 * PAGE_SIZE, &scrq->crq_num, &scrq->hw_irq); @@ -2833,6 +2905,9 @@ { int i, rc; + if (!adapter->tx_scrq || !adapter->rx_scrq) + return -EINVAL; + for (i = 0; i < adapter->req_tx_queues; i++) { netdev_dbg(adapter->netdev, "Re-setting tx_scrq[%d]\n", i); rc = reset_one_sub_crq_queue(adapter, adapter->tx_scrq[i]); @@ -3051,13 +3126,18 @@ unsigned int pool = scrq->pool_index; int num_entries = 0; + /* The queue entry at the current index is peeked at above + * to determine that there is a valid descriptor awaiting + * processing. We want to be sure that the current slot + * holds a valid descriptor before reading its contents. + */ + dma_rmb(); + next = ibmvnic_next_scrq(adapter, scrq); for (i = 0; i < next->tx_comp.num_comps; i++) { - if (next->tx_comp.rcs[i]) { + if (next->tx_comp.rcs[i]) dev_err(dev, "tx error %x\n", next->tx_comp.rcs[i]); - continue; - } index = be32_to_cpu(next->tx_comp.correlators[i]); if (index & IBMVNIC_TSO_POOL_MASK) { tx_pool = &adapter->tso_pool[pool]; @@ -3451,6 +3531,11 @@ } spin_unlock_irqrestore(&scrq->lock, flags); + /* Ensure that the entire buffer descriptor has been + * loaded before reading its contents + */ + dma_rmb(); + return entry; } @@ -3656,15 +3741,16 @@ struct ibmvnic_login_rsp_buffer *login_rsp_buffer; struct ibmvnic_login_buffer *login_buffer; struct device *dev = &adapter->vdev->dev; + struct vnic_login_client_data *vlcd; dma_addr_t rsp_buffer_token; dma_addr_t buffer_token; size_t rsp_buffer_size; union ibmvnic_crq crq; + int client_data_len; size_t buffer_size; __be64 *tx_list_p; __be64 *rx_list_p; - int client_data_len; - struct vnic_login_client_data *vlcd; + int rc; int i; if (!adapter->tx_scrq || !adapter->rx_scrq) { @@ -3673,7 +3759,9 @@ return -1; } + release_login_buffer(adapter); release_login_rsp_buffer(adapter); + client_data_len = vnic_client_data_len(adapter); buffer_size = @@ -3768,16 +3856,25 @@ crq.login.cmd = LOGIN; crq.login.ioba = cpu_to_be32(buffer_token); crq.login.len = cpu_to_be32(buffer_size); - ibmvnic_send_crq(adapter, &crq); + + adapter->login_pending = true; + rc = ibmvnic_send_crq(adapter, &crq); + if (rc) { + adapter->login_pending = false; + netdev_err(adapter->netdev, "Failed to send login, rc=%d\n", rc); + goto buf_rsp_map_failed; + } return 0; buf_rsp_map_failed: kfree(login_rsp_buffer); + adapter->login_rsp_buf = NULL; buf_rsp_alloc_failed: dma_unmap_single(dev, buffer_token, buffer_size, DMA_TO_DEVICE); buf_map_failed: kfree(login_buffer); + adapter->login_buf = NULL; buf_alloc_failed: return -1; } @@ -4179,8 +4276,13 @@ dev_err(dev, "Error %ld in CHANGE_MAC_ADDR_RSP\n", rc); goto out; } + /* crq->change_mac_addr.mac_addr is the requested one + * crq->change_mac_addr_rsp.mac_addr is the returned valid one. + */ ether_addr_copy(netdev->dev_addr, &crq->change_mac_addr_rsp.mac_addr[0]); + ether_addr_copy(adapter->mac_addr, + &crq->change_mac_addr_rsp.mac_addr[0]); out: complete(&adapter->fw_done); return rc; @@ -4294,6 +4396,15 @@ struct ibmvnic_login_buffer *login = adapter->login_buf; int i; + /* CHECK: Test/set of login_pending does not need to be atomic + * because only ibmvnic_tasklet tests/clears this. + */ + if (!adapter->login_pending) { + netdev_warn(netdev, "Ignoring unexpected login response\n"); + return 0; + } + adapter->login_pending = false; + dma_unmap_single(dev, adapter->login_buf_token, adapter->login_buf_sz, DMA_TO_DEVICE); dma_unmap_single(dev, adapter->login_rsp_buf_token, @@ -4323,7 +4434,7 @@ adapter->req_rx_add_queues != be32_to_cpu(login_rsp->num_rxadd_subcrqs))) { dev_err(dev, "FATAL: Inconsistent login and login rsp\n"); - ibmvnic_remove(adapter->vdev); + ibmvnic_reset(adapter, VNIC_RESET_FATAL); return -EIO; } release_login_buffer(adapter); @@ -4590,7 +4701,7 @@ case IBMVNIC_1GBPS: adapter->speed = SPEED_1000; break; - case IBMVNIC_10GBP: + case IBMVNIC_10GBPS: adapter->speed = SPEED_10000; break; case IBMVNIC_25GBPS: @@ -4605,6 +4716,9 @@ case IBMVNIC_100GBPS: adapter->speed = SPEED_100000; break; + case IBMVNIC_200GBPS: + adapter->speed = SPEED_200000; + break; default: if (netif_carrier_ok(netdev)) netdev_warn(netdev, "Unknown speed 0x%08x\n", rspeed); @@ -4638,12 +4752,31 @@ case IBMVNIC_CRQ_INIT: dev_info(dev, "Partner initialized\n"); adapter->from_passive_init = true; - adapter->failover_pending = false; + /* Discard any stale login responses from prev reset. + * CHECK: should we clear even on INIT_COMPLETE? + */ + adapter->login_pending = false; + if (!completion_done(&adapter->init_done)) { complete(&adapter->init_done); adapter->init_done_rc = -EIO; } - ibmvnic_reset(adapter, VNIC_RESET_FAILOVER); + rc = ibmvnic_reset(adapter, VNIC_RESET_FAILOVER); + if (rc && rc != -EBUSY) { + /* We were unable to schedule the failover + * reset either because the adapter was still + * probing (eg: during kexec) or we could not + * allocate memory. Clear the failover_pending + * flag since no one else will. We ignore + * EBUSY because it means either FAILOVER reset + * is already scheduled or the adapter is + * being removed. + */ + netdev_err(netdev, + "Error %ld scheduling failover reset\n", + rc); + adapter->failover_pending = false; + } break; case IBMVNIC_CRQ_INIT_COMPLETE: dev_info(dev, "Partner initialization complete\n"); @@ -4809,6 +4942,12 @@ while (!done) { /* Pull all the valid messages off the CRQ */ while ((crq = ibmvnic_next_crq(adapter)) != NULL) { + /* This barrier makes sure ibmvnic_next_crq()'s + * crq->generic.first & IBMVNIC_CRQ_CMD_RSP is loaded + * before ibmvnic_handle_crq()'s + * switch(gen_crq->first) and switch(gen_crq->cmd). + */ + dma_rmb(); ibmvnic_handle_crq(crq, adapter); crq->generic.first = 0; } @@ -4855,6 +4994,9 @@ } while (rc == H_BUSY || H_IS_LONG_BUSY(rc)); /* Clean out the queue */ + if (!crq->msgs) + return -EINVAL; + memset(crq->msgs, 0, PAGE_SIZE); crq->cur = 0; crq->active = false; @@ -4974,7 +5116,7 @@ static int ibmvnic_reset_init(struct ibmvnic_adapter *adapter) { struct device *dev = &adapter->vdev->dev; - unsigned long timeout = msecs_to_jiffies(30000); + unsigned long timeout = msecs_to_jiffies(20000); u64 old_num_rx_queues, old_num_tx_queues; int rc; @@ -5103,6 +5245,7 @@ dev_set_drvdata(&dev->dev, netdev); adapter->vdev = dev; adapter->netdev = netdev; + adapter->login_pending = false; ether_addr_copy(adapter->mac_addr, mac_addr_p); ether_addr_copy(netdev->dev_addr, adapter->mac_addr); @@ -5194,11 +5337,6 @@ unsigned long flags; spin_lock_irqsave(&adapter->state_lock, flags); - if (adapter->state == VNIC_RESETTING) { - spin_unlock_irqrestore(&adapter->state_lock, flags); - return -EBUSY; - } - adapter->state = VNIC_REMOVING; spin_unlock_irqrestore(&adapter->state_lock, flags); --- linux-azure-5.8-5.8.0.orig/drivers/net/ethernet/ibm/ibmvnic.h +++ linux-azure-5.8-5.8.0/drivers/net/ethernet/ibm/ibmvnic.h @@ -373,7 +373,7 @@ #define IBMVNIC_10MBPS 0x40000000 #define IBMVNIC_100MBPS 0x20000000 #define IBMVNIC_1GBPS 0x10000000 -#define IBMVNIC_10GBP 0x08000000 +#define IBMVNIC_10GBPS 0x08000000 #define IBMVNIC_40GBPS 0x04000000 #define IBMVNIC_100GBPS 0x02000000 #define IBMVNIC_25GBPS 0x01000000 @@ -941,8 +941,7 @@ VNIC_CLOSING, VNIC_CLOSED, VNIC_REMOVING, - VNIC_REMOVED, - VNIC_RESETTING}; + VNIC_REMOVED}; enum ibmvnic_reset_reason {VNIC_RESET_FAILOVER = 1, VNIC_RESET_MOBILITY, @@ -1085,6 +1084,7 @@ struct delayed_work ibmvnic_delayed_reset; unsigned long resetting; bool napi_enabled, from_passive_init; + bool login_pending; bool failover_pending; bool force_reset_recovery; --- linux-azure-5.8-5.8.0.orig/drivers/net/ethernet/intel/e1000e/e1000.h +++ linux-azure-5.8-5.8.0/drivers/net/ethernet/intel/e1000e/e1000.h @@ -436,6 +436,7 @@ #define FLAG2_DFLT_CRC_STRIPPING BIT(12) #define FLAG2_CHECK_RX_HWTSTAMP BIT(13) #define FLAG2_CHECK_SYSTIM_OVERFLOW BIT(14) +#define FLAG2_ENABLE_S0IX_FLOWS BIT(15) #define E1000_RX_DESC_PS(R, i) \ (&(((union e1000_rx_desc_packet_split *)((R).desc))[i])) --- linux-azure-5.8-5.8.0.orig/drivers/net/ethernet/intel/e1000e/ethtool.c +++ linux-azure-5.8-5.8.0/drivers/net/ethernet/intel/e1000e/ethtool.c @@ -23,6 +23,13 @@ int stat_offset; }; +static const char e1000e_priv_flags_strings[][ETH_GSTRING_LEN] = { +#define E1000E_PRIV_FLAGS_S0IX_ENABLED BIT(0) + "s0ix-enabled", +}; + +#define E1000E_PRIV_FLAGS_STR_LEN ARRAY_SIZE(e1000e_priv_flags_strings) + #define E1000_STAT(str, m) { \ .stat_string = str, \ .type = E1000_STATS, \ @@ -1777,6 +1784,8 @@ return E1000_TEST_LEN; case ETH_SS_STATS: return E1000_STATS_LEN; + case ETH_SS_PRIV_FLAGS: + return E1000E_PRIV_FLAGS_STR_LEN; default: return -EOPNOTSUPP; } @@ -2098,6 +2107,10 @@ p += ETH_GSTRING_LEN; } break; + case ETH_SS_PRIV_FLAGS: + memcpy(data, e1000e_priv_flags_strings, + E1000E_PRIV_FLAGS_STR_LEN * ETH_GSTRING_LEN); + break; } } @@ -2306,6 +2319,37 @@ return 0; } +static u32 e1000e_get_priv_flags(struct net_device *netdev) +{ + struct e1000_adapter *adapter = netdev_priv(netdev); + u32 priv_flags = 0; + + if (adapter->flags2 & FLAG2_ENABLE_S0IX_FLOWS) + priv_flags |= E1000E_PRIV_FLAGS_S0IX_ENABLED; + + return priv_flags; +} + +static int e1000e_set_priv_flags(struct net_device *netdev, u32 priv_flags) +{ + struct e1000_adapter *adapter = netdev_priv(netdev); + unsigned int flags2 = adapter->flags2; + + flags2 &= ~FLAG2_ENABLE_S0IX_FLOWS; + if (priv_flags & E1000E_PRIV_FLAGS_S0IX_ENABLED) { + struct e1000_hw *hw = &adapter->hw; + + if (hw->mac.type < e1000_pch_cnp) + return -EINVAL; + flags2 |= FLAG2_ENABLE_S0IX_FLOWS; + } + + if (flags2 != adapter->flags2) + adapter->flags2 = flags2; + + return 0; +} + static const struct ethtool_ops e1000_ethtool_ops = { .supported_coalesce_params = ETHTOOL_COALESCE_RX_USECS, .get_drvinfo = e1000_get_drvinfo, @@ -2337,6 +2381,8 @@ .set_eee = e1000e_set_eee, .get_link_ksettings = e1000_get_link_ksettings, .set_link_ksettings = e1000_set_link_ksettings, + .get_priv_flags = e1000e_get_priv_flags, + .set_priv_flags = e1000e_set_priv_flags, }; void e1000e_set_ethtool_ops(struct net_device *netdev) --- linux-azure-5.8-5.8.0.orig/drivers/net/ethernet/intel/e1000e/hw.h +++ linux-azure-5.8-5.8.0/drivers/net/ethernet/intel/e1000e/hw.h @@ -680,6 +680,7 @@ bool kmrn_lock_loss_workaround_enabled; struct e1000_shadow_ram shadow_ram[E1000_ICH8_SHADOW_RAM_WORDS]; bool nvm_k1_enabled; + bool disable_k1_off; bool eee_disable; u16 eee_lp_ability; enum e1000_ulp_state ulp_state; --- linux-azure-5.8-5.8.0.orig/drivers/net/ethernet/intel/e1000e/ich8lan.c +++ linux-azure-5.8-5.8.0/drivers/net/ethernet/intel/e1000e/ich8lan.c @@ -1237,6 +1237,9 @@ return 0; if (er32(FWSM) & E1000_ICH_FWSM_FW_VALID) { + struct e1000_adapter *adapter = hw->adapter; + bool firmware_bug = false; + if (force) { /* Request ME un-configure ULP mode in the PHY */ mac_reg = er32(H2ME); @@ -1245,16 +1248,24 @@ ew32(H2ME, mac_reg); } - /* Poll up to 300msec for ME to clear ULP_CFG_DONE. */ + /* Poll up to 2.5 seconds for ME to clear ULP_CFG_DONE. + * If this takes more than 1 second, show a warning indicating a + * firmware bug + */ while (er32(FWSM) & E1000_FWSM_ULP_CFG_DONE) { - if (i++ == 30) { + if (i++ == 250) { ret_val = -E1000_ERR_PHY; goto out; } + if (i > 100 && !firmware_bug) + firmware_bug = true; usleep_range(10000, 11000); } - e_dbg("ULP_CONFIG_DONE cleared after %dmsec\n", i * 10); + if (firmware_bug) + e_warn("ULP_CONFIG_DONE took %dmsec. This is a firmware bug\n", i * 10); + else + e_dbg("ULP_CONFIG_DONE cleared after %dmsec\n", i * 10); if (force) { mac_reg = er32(H2ME); @@ -1546,6 +1557,9 @@ fextnvm6 &= ~E1000_FEXTNVM6_K1_OFF_ENABLE; } + if (hw->dev_spec.ich8lan.disable_k1_off == true) + fextnvm6 &= ~E1000_FEXTNVM6_K1_OFF_ENABLE; + ew32(FEXTNVM6, fextnvm6); } --- linux-azure-5.8-5.8.0.orig/drivers/net/ethernet/intel/e1000e/netdev.c +++ linux-azure-5.8-5.8.0/drivers/net/ethernet/intel/e1000e/netdev.c @@ -107,45 +107,6 @@ {0, NULL} }; -struct e1000e_me_supported { - u16 device_id; /* supported device ID */ -}; - -static const struct e1000e_me_supported me_supported[] = { - {E1000_DEV_ID_PCH_LPT_I217_LM}, - {E1000_DEV_ID_PCH_LPTLP_I218_LM}, - {E1000_DEV_ID_PCH_I218_LM2}, - {E1000_DEV_ID_PCH_I218_LM3}, - {E1000_DEV_ID_PCH_SPT_I219_LM}, - {E1000_DEV_ID_PCH_SPT_I219_LM2}, - {E1000_DEV_ID_PCH_LBG_I219_LM3}, - {E1000_DEV_ID_PCH_SPT_I219_LM4}, - {E1000_DEV_ID_PCH_SPT_I219_LM5}, - {E1000_DEV_ID_PCH_CNP_I219_LM6}, - {E1000_DEV_ID_PCH_CNP_I219_LM7}, - {E1000_DEV_ID_PCH_ICP_I219_LM8}, - {E1000_DEV_ID_PCH_ICP_I219_LM9}, - {E1000_DEV_ID_PCH_CMP_I219_LM10}, - {E1000_DEV_ID_PCH_CMP_I219_LM11}, - {E1000_DEV_ID_PCH_CMP_I219_LM12}, - {E1000_DEV_ID_PCH_TGP_I219_LM13}, - {E1000_DEV_ID_PCH_TGP_I219_LM14}, - {E1000_DEV_ID_PCH_TGP_I219_LM15}, - {0} -}; - -static bool e1000e_check_me(u16 device_id) -{ - struct e1000e_me_supported *id; - - for (id = (struct e1000e_me_supported *)me_supported; - id->device_id; id++) - if (device_id == id->device_id) - return true; - - return false; -} - /** * __ew32_prepare - prepare to write to MAC CSR register on certain parts * @hw: pointer to the HW structure @@ -6456,13 +6417,13 @@ /* Ungate PGCB clock */ mac_data = er32(FEXTNVM9); - mac_data |= BIT(28); + mac_data &= ~BIT(28); ew32(FEXTNVM9, mac_data); /* Enable K1 off to enable mPHY Power Gating */ mac_data = er32(FEXTNVM6); mac_data |= BIT(31); - ew32(FEXTNVM12, mac_data); + ew32(FEXTNVM6, mac_data); /* Enable mPHY power gating for any link and speed */ mac_data = er32(FEXTNVM8); @@ -6506,11 +6467,11 @@ /* Disable K1 off */ mac_data = er32(FEXTNVM6); mac_data &= ~BIT(31); - ew32(FEXTNVM12, mac_data); + ew32(FEXTNVM6, mac_data); /* Disable Ungate PGCB clock */ mac_data = er32(FEXTNVM9); - mac_data &= ~BIT(28); + mac_data |= BIT(28); ew32(FEXTNVM9, mac_data); /* Cancel not waking from dynamic @@ -6943,7 +6904,6 @@ struct net_device *netdev = pci_get_drvdata(to_pci_dev(dev)); struct e1000_adapter *adapter = netdev_priv(netdev); struct pci_dev *pdev = to_pci_dev(dev); - struct e1000_hw *hw = &adapter->hw; int rc; e1000e_flush_lpic(pdev); @@ -6951,13 +6911,13 @@ e1000e_pm_freeze(dev); rc = __e1000_shutdown(pdev, false); - if (rc) + if (rc) { e1000e_pm_thaw(dev); - - /* Introduce S0ix implementation */ - if (hw->mac.type >= e1000_pch_cnp && - !e1000e_check_me(hw->adapter->pdev->device)) - e1000e_s0ix_entry_flow(adapter); + } else { + /* Introduce S0ix implementation */ + if (adapter->flags2 & FLAG2_ENABLE_S0IX_FLOWS) + e1000e_s0ix_entry_flow(adapter); + } return rc; } @@ -6967,12 +6927,10 @@ struct net_device *netdev = pci_get_drvdata(to_pci_dev(dev)); struct e1000_adapter *adapter = netdev_priv(netdev); struct pci_dev *pdev = to_pci_dev(dev); - struct e1000_hw *hw = &adapter->hw; int rc; /* Introduce S0ix implementation */ - if (hw->mac.type >= e1000_pch_cnp && - !e1000e_check_me(hw->adapter->pdev->device)) + if (adapter->flags2 & FLAG2_ENABLE_S0IX_FLOWS) e1000e_s0ix_exit_flow(adapter); rc = __e1000_resume(pdev); @@ -7636,6 +7594,9 @@ if (!(adapter->flags & FLAG_HAS_AMT)) e1000e_get_hw_control(adapter); + if (hw->mac.type >= e1000_pch_cnp) + adapter->flags2 |= FLAG2_ENABLE_S0IX_FLOWS; + strlcpy(netdev->name, "eth%d", sizeof(netdev->name)); err = register_netdev(netdev); if (err) --- linux-azure-5.8-5.8.0.orig/drivers/net/ethernet/intel/e1000e/phy.c +++ linux-azure-5.8-5.8.0/drivers/net/ethernet/intel/e1000e/phy.c @@ -203,7 +203,7 @@ * Increasing the time out as testing showed failures with * the lower time out */ - for (i = 0; i < (E1000_GEN_POLL_TIMEOUT * 3); i++) { + for (i = 0; i < (E1000_GEN_POLL_TIMEOUT * 10); i++) { udelay(50); mdic = er32(MDIC); if (mdic & E1000_MDIC_READY) --- linux-azure-5.8-5.8.0.orig/drivers/net/ethernet/intel/i40e/i40e.h +++ linux-azure-5.8-5.8.0/drivers/net/ethernet/intel/i40e/i40e.h @@ -129,6 +129,7 @@ __I40E_RESET_INTR_RECEIVED, __I40E_REINIT_REQUESTED, __I40E_PF_RESET_REQUESTED, + __I40E_PF_RESET_AND_REBUILD_REQUESTED, __I40E_CORE_RESET_REQUESTED, __I40E_GLOBAL_RESET_REQUESTED, __I40E_EMP_RESET_INTR_RECEIVED, @@ -150,11 +151,14 @@ __I40E_CLIENT_RESET, __I40E_VIRTCHNL_OP_PENDING, __I40E_RECOVERY_MODE, + __I40E_VF_RESETS_DISABLED, /* disable resets during i40e_remove */ /* This must be last as it determines the size of the BITMAP */ __I40E_STATE_SIZE__, }; #define I40E_PF_RESET_FLAG BIT_ULL(__I40E_PF_RESET_REQUESTED) +#define I40E_PF_RESET_AND_REBUILD_FLAG \ + BIT_ULL(__I40E_PF_RESET_AND_REBUILD_REQUESTED) /* VSI state flags */ enum i40e_vsi_state_t { --- linux-azure-5.8-5.8.0.orig/drivers/net/ethernet/intel/i40e/i40e_adminq_cmd.h +++ linux-azure-5.8-5.8.0/drivers/net/ethernet/intel/i40e/i40e_adminq_cmd.h @@ -1211,7 +1211,7 @@ #define I40E_AQC_SET_VSI_PROMISC_BROADCAST 0x04 #define I40E_AQC_SET_VSI_DEFAULT 0x08 #define I40E_AQC_SET_VSI_PROMISC_VLAN 0x10 -#define I40E_AQC_SET_VSI_PROMISC_TX 0x8000 +#define I40E_AQC_SET_VSI_PROMISC_RX_ONLY 0x8000 __le16 seid; #define I40E_AQC_VSI_PROM_CMD_SEID_MASK 0x3FF __le16 vlan_tag; --- linux-azure-5.8-5.8.0.orig/drivers/net/ethernet/intel/i40e/i40e_common.c +++ linux-azure-5.8-5.8.0/drivers/net/ethernet/intel/i40e/i40e_common.c @@ -1970,6 +1970,21 @@ } /** + * i40e_is_aq_api_ver_ge + * @aq: pointer to AdminQ info containing HW API version to compare + * @maj: API major value + * @min: API minor value + * + * Assert whether current HW API version is greater/equal than provided. + **/ +static bool i40e_is_aq_api_ver_ge(struct i40e_adminq_info *aq, u16 maj, + u16 min) +{ + return (aq->api_maj_ver > maj || + (aq->api_maj_ver == maj && aq->api_min_ver >= min)); +} + +/** * i40e_aq_add_vsi * @hw: pointer to the hw struct * @vsi_ctx: pointer to a vsi context struct @@ -2094,18 +2109,16 @@ if (set) { flags |= I40E_AQC_SET_VSI_PROMISC_UNICAST; - if (rx_only_promisc && - (((hw->aq.api_maj_ver == 1) && (hw->aq.api_min_ver >= 5)) || - (hw->aq.api_maj_ver > 1))) - flags |= I40E_AQC_SET_VSI_PROMISC_TX; + if (rx_only_promisc && i40e_is_aq_api_ver_ge(&hw->aq, 1, 5)) + flags |= I40E_AQC_SET_VSI_PROMISC_RX_ONLY; } cmd->promiscuous_flags = cpu_to_le16(flags); cmd->valid_flags = cpu_to_le16(I40E_AQC_SET_VSI_PROMISC_UNICAST); - if (((hw->aq.api_maj_ver >= 1) && (hw->aq.api_min_ver >= 5)) || - (hw->aq.api_maj_ver > 1)) - cmd->valid_flags |= cpu_to_le16(I40E_AQC_SET_VSI_PROMISC_TX); + if (i40e_is_aq_api_ver_ge(&hw->aq, 1, 5)) + cmd->valid_flags |= + cpu_to_le16(I40E_AQC_SET_VSI_PROMISC_RX_ONLY); cmd->seid = cpu_to_le16(seid); status = i40e_asq_send_command(hw, &desc, NULL, 0, cmd_details); @@ -2202,11 +2215,17 @@ i40e_fill_default_direct_cmd_desc(&desc, i40e_aqc_opc_set_vsi_promiscuous_modes); - if (enable) + if (enable) { flags |= I40E_AQC_SET_VSI_PROMISC_UNICAST; + if (i40e_is_aq_api_ver_ge(&hw->aq, 1, 5)) + flags |= I40E_AQC_SET_VSI_PROMISC_RX_ONLY; + } cmd->promiscuous_flags = cpu_to_le16(flags); cmd->valid_flags = cpu_to_le16(I40E_AQC_SET_VSI_PROMISC_UNICAST); + if (i40e_is_aq_api_ver_ge(&hw->aq, 1, 5)) + cmd->valid_flags |= + cpu_to_le16(I40E_AQC_SET_VSI_PROMISC_RX_ONLY); cmd->seid = cpu_to_le16(seid); cmd->vlan_tag = cpu_to_le16(vid | I40E_AQC_SET_VSI_VLAN_VALID); --- linux-azure-5.8-5.8.0.orig/drivers/net/ethernet/intel/i40e/i40e_ethtool.c +++ linux-azure-5.8-5.8.0/drivers/net/ethernet/intel/i40e/i40e_ethtool.c @@ -4877,7 +4877,7 @@ enum i40e_admin_queue_err adq_err; struct i40e_vsi *vsi = np->vsi; struct i40e_pf *pf = vsi->back; - bool is_reset_needed; + u32 reset_needed = 0; i40e_status status; u32 i, j; @@ -4922,9 +4922,11 @@ flags_complete: changed_flags = orig_flags ^ new_flags; - is_reset_needed = !!(changed_flags & (I40E_FLAG_VEB_STATS_ENABLED | - I40E_FLAG_LEGACY_RX | I40E_FLAG_SOURCE_PRUNING_DISABLED | - I40E_FLAG_DISABLE_FW_LLDP)); + if (changed_flags & I40E_FLAG_DISABLE_FW_LLDP) + reset_needed = I40E_PF_RESET_AND_REBUILD_FLAG; + if (changed_flags & (I40E_FLAG_VEB_STATS_ENABLED | + I40E_FLAG_LEGACY_RX | I40E_FLAG_SOURCE_PRUNING_DISABLED)) + reset_needed = BIT(__I40E_PF_RESET_REQUESTED); /* Before we finalize any flag changes, we need to perform some * checks to ensure that the changes are supported and safe. @@ -5041,7 +5043,7 @@ case I40E_AQ_RC_EEXIST: dev_warn(&pf->pdev->dev, "FW LLDP agent is already running\n"); - is_reset_needed = false; + reset_needed = 0; break; case I40E_AQ_RC_EPERM: dev_warn(&pf->pdev->dev, @@ -5070,8 +5072,8 @@ /* Issue reset to cause things to take effect, as additional bits * are added we will need to create a mask of bits requiring reset */ - if (is_reset_needed) - i40e_do_reset(pf, BIT(__I40E_PF_RESET_REQUESTED), true); + if (reset_needed) + i40e_do_reset(pf, reset_needed, true); return 0; } --- linux-azure-5.8-5.8.0.orig/drivers/net/ethernet/intel/i40e/i40e_main.c +++ linux-azure-5.8-5.8.0/drivers/net/ethernet/intel/i40e/i40e_main.c @@ -44,6 +44,8 @@ static void i40e_determine_queue_usage(struct i40e_pf *pf); static int i40e_setup_pf_filter_control(struct i40e_pf *pf); static void i40e_prep_for_reset(struct i40e_pf *pf, bool lock_acquired); +static void i40e_reset_and_rebuild(struct i40e_pf *pf, bool reinit, + bool lock_acquired); static int i40e_reset(struct i40e_pf *pf); static void i40e_rebuild(struct i40e_pf *pf, bool reinit, bool lock_acquired); static int i40e_setup_misc_vector_for_recovery_mode(struct i40e_pf *pf); @@ -2601,7 +2603,7 @@ return; if (!test_and_clear_bit(__I40E_MACVLAN_SYNC_PENDING, pf->state)) return; - if (test_and_set_bit(__I40E_VF_DISABLE, pf->state)) { + if (test_bit(__I40E_VF_DISABLE, pf->state)) { set_bit(__I40E_MACVLAN_SYNC_PENDING, pf->state); return; } @@ -2619,7 +2621,6 @@ } } } - clear_bit(__I40E_VF_DISABLE, pf->state); } /** @@ -3996,8 +3997,16 @@ } if (icr0 & I40E_PFINT_ICR0_VFLR_MASK) { - ena_mask &= ~I40E_PFINT_ICR0_ENA_VFLR_MASK; - set_bit(__I40E_VFLR_EVENT_PENDING, pf->state); + /* disable any further VFLR event notifications */ + if (test_bit(__I40E_VF_RESETS_DISABLED, pf->state)) { + u32 reg = rd32(hw, I40E_PFINT_ICR0_ENA); + + reg &= ~I40E_PFINT_ICR0_VFLR_MASK; + wr32(hw, I40E_PFINT_ICR0_ENA, reg); + } else { + ena_mask &= ~I40E_PFINT_ICR0_ENA_VFLR_MASK; + set_bit(__I40E_VFLR_EVENT_PENDING, pf->state); + } } if (icr0 & I40E_PFINT_ICR0_GRST_MASK) { @@ -7610,6 +7619,8 @@ if (filter->flags >= ARRAY_SIZE(flag_table)) return I40E_ERR_CONFIG; + memset(&cld_filter, 0, sizeof(cld_filter)); + /* copy element needed to add cloud filter from filter */ i40e_set_cld_element(filter, &cld_filter); @@ -7673,10 +7684,13 @@ return -EOPNOTSUPP; /* adding filter using src_port/src_ip is not supported at this stage */ - if (filter->src_port || filter->src_ipv4 || + if (filter->src_port || + (filter->src_ipv4 && filter->n_proto != ETH_P_IPV6) || !ipv6_addr_any(&filter->ip.v6.src_ip6)) return -EOPNOTSUPP; + memset(&cld_filter, 0, sizeof(cld_filter)); + /* copy element needed to add cloud filter from filter */ i40e_set_cld_element(filter, &cld_filter.element); @@ -7700,7 +7714,7 @@ cpu_to_le16(I40E_AQC_ADD_CLOUD_FILTER_MAC_VLAN_PORT); } - } else if (filter->dst_ipv4 || + } else if ((filter->dst_ipv4 && filter->n_proto != ETH_P_IPV6) || !ipv6_addr_any(&filter->ip.v6.dst_ip6)) { cld_filter.element.flags = cpu_to_le16(I40E_AQC_ADD_CLOUD_FILTER_IP_PORT); @@ -8479,6 +8493,13 @@ dev_dbg(&pf->pdev->dev, "PFR requested\n"); i40e_handle_reset_warning(pf, lock_acquired); + } else if (reset_flags & I40E_PF_RESET_AND_REBUILD_FLAG) { + /* Request a PF Reset + * + * Resets PF and reinitializes PFs VSI. + */ + i40e_prep_for_reset(pf, lock_acquired); + i40e_reset_and_rebuild(pf, true, lock_acquired); dev_info(&pf->pdev->dev, pf->flags & I40E_FLAG_DISABLE_FW_LLDP ? "FW LLDP is disabled\n" : @@ -9945,7 +9966,6 @@ int old_recovery_mode_bit = test_bit(__I40E_RECOVERY_MODE, pf->state); struct i40e_vsi *vsi = pf->vsi[pf->lan_vsi]; struct i40e_hw *hw = &pf->hw; - u8 set_fc_aq_fail = 0; i40e_status ret; u32 val; int v; @@ -10071,13 +10091,6 @@ i40e_stat_str(&pf->hw, ret), i40e_aq_str(&pf->hw, pf->hw.aq.asq_last_status)); - /* make sure our flow control settings are restored */ - ret = i40e_set_fc(&pf->hw, &set_fc_aq_fail, true); - if (ret) - dev_dbg(&pf->pdev->dev, "setting flow control: ret = %s last_status = %s\n", - i40e_stat_str(&pf->hw, ret), - i40e_aq_str(&pf->hw, pf->hw.aq.asq_last_status)); - /* Rebuild the VSIs and VEBs that existed before reset. * They are still in our local switch element arrays, so only * need to rebuild the switch model in the HW. @@ -11760,6 +11773,8 @@ struct i40e_aqc_configure_partition_bw_data bw_data; i40e_status status; + memset(&bw_data, 0, sizeof(bw_data)); + /* Set the valid bit for this PF */ bw_data.pf_valid_bits = cpu_to_le16(BIT(pf->hw.pf_id)); bw_data.max_bw[pf->hw.pf_id] = pf->max_bw & I40E_ALT_BW_VALUE_MASK; @@ -14760,7 +14775,6 @@ int err; u32 val; u32 i; - u8 set_fc_aq_fail; err = pci_enable_device_mem(pdev); if (err) @@ -15082,24 +15096,6 @@ } INIT_LIST_HEAD(&pf->vsi[pf->lan_vsi]->ch_list); - /* Make sure flow control is set according to current settings */ - err = i40e_set_fc(hw, &set_fc_aq_fail, true); - if (set_fc_aq_fail & I40E_SET_FC_AQ_FAIL_GET) - dev_dbg(&pf->pdev->dev, - "Set fc with err %s aq_err %s on get_phy_cap\n", - i40e_stat_str(hw, err), - i40e_aq_str(hw, hw->aq.asq_last_status)); - if (set_fc_aq_fail & I40E_SET_FC_AQ_FAIL_SET) - dev_dbg(&pf->pdev->dev, - "Set fc with err %s aq_err %s on set_phy_config\n", - i40e_stat_str(hw, err), - i40e_aq_str(hw, hw->aq.asq_last_status)); - if (set_fc_aq_fail & I40E_SET_FC_AQ_FAIL_UPDATE) - dev_dbg(&pf->pdev->dev, - "Set fc with err %s aq_err %s on get_link_info\n", - i40e_stat_str(hw, err), - i40e_aq_str(hw, hw->aq.asq_last_status)); - /* if FDIR VSI was set up, start it now */ for (i = 0; i < pf->num_alloc_vsi; i++) { if (pf->vsi[i] && pf->vsi[i]->type == I40E_VSI_FDIR) { @@ -15352,6 +15348,14 @@ i40e_write_rx_ctl(hw, I40E_PFQF_HENA(0), 0); i40e_write_rx_ctl(hw, I40E_PFQF_HENA(1), 0); + while (test_bit(__I40E_RESET_RECOVERY_PENDING, pf->state)) + usleep_range(1000, 2000); + + if (pf->flags & I40E_FLAG_SRIOV_ENABLED) { + set_bit(__I40E_VF_RESETS_DISABLED, pf->state); + i40e_free_vfs(pf); + pf->flags &= ~I40E_FLAG_SRIOV_ENABLED; + } /* no more scheduling of any task */ set_bit(__I40E_SUSPENDED, pf->state); set_bit(__I40E_DOWN, pf->state); @@ -15378,11 +15382,6 @@ */ i40e_notify_client_of_netdev_close(pf->vsi[pf->lan_vsi], false); - if (pf->flags & I40E_FLAG_SRIOV_ENABLED) { - i40e_free_vfs(pf); - pf->flags &= ~I40E_FLAG_SRIOV_ENABLED; - } - i40e_fdir_teardown(pf); /* If there is a switch structure or any orphans, remove them. --- linux-azure-5.8-5.8.0.orig/drivers/net/ethernet/intel/i40e/i40e_txrx.c +++ linux-azure-5.8-5.8.0/drivers/net/ethernet/intel/i40e/i40e_txrx.c @@ -1851,6 +1851,7 @@ * the adapter for another receive * * @rx_buffer: buffer containing the page + * @rx_buffer_pgcnt: buffer page refcount pre xdp_do_redirect() call * * If page is reusable, rx_buffer->page_offset is adjusted to point to * an unused region in the page. @@ -1873,7 +1874,8 @@ * * In either case, if the page is reusable its refcount is increased. **/ -static bool i40e_can_reuse_rx_page(struct i40e_rx_buffer *rx_buffer) +static bool i40e_can_reuse_rx_page(struct i40e_rx_buffer *rx_buffer, + int rx_buffer_pgcnt) { unsigned int pagecnt_bias = rx_buffer->pagecnt_bias; struct page *page = rx_buffer->page; @@ -1884,7 +1886,7 @@ #if (PAGE_SIZE < 8192) /* if we are only owner of page we can reuse it */ - if (unlikely((page_count(page) - pagecnt_bias) > 1)) + if (unlikely((rx_buffer_pgcnt - pagecnt_bias) > 1)) return false; #else #define I40E_LAST_OFFSET \ @@ -1943,17 +1945,25 @@ * i40e_get_rx_buffer - Fetch Rx buffer and synchronize data for use * @rx_ring: rx descriptor ring to transact packets on * @size: size of buffer to add to skb + * @rx_buffer_pgcnt: buffer page refcount * * This function will pull an Rx buffer from the ring and synchronize it * for use by the CPU. */ static struct i40e_rx_buffer *i40e_get_rx_buffer(struct i40e_ring *rx_ring, - const unsigned int size) + const unsigned int size, + int *rx_buffer_pgcnt) { struct i40e_rx_buffer *rx_buffer; rx_buffer = i40e_rx_bi(rx_ring, rx_ring->next_to_clean); - prefetchw(rx_buffer->page); + *rx_buffer_pgcnt = +#if (PAGE_SIZE < 8192) + page_count(rx_buffer->page); +#else + 0; +#endif + prefetch_page_address(rx_buffer->page); /* we are reusing so sync this buffer for CPU use */ dma_sync_single_range_for_cpu(rx_ring->dev, @@ -2107,14 +2117,16 @@ * i40e_put_rx_buffer - Clean up used buffer and either recycle or free * @rx_ring: rx descriptor ring to transact packets on * @rx_buffer: rx buffer to pull data from + * @rx_buffer_pgcnt: rx buffer page refcount pre xdp_do_redirect() call * * This function will clean up the contents of the rx_buffer. It will * either recycle the buffer or unmap it and free the associated resources. */ static void i40e_put_rx_buffer(struct i40e_ring *rx_ring, - struct i40e_rx_buffer *rx_buffer) + struct i40e_rx_buffer *rx_buffer, + int rx_buffer_pgcnt) { - if (i40e_can_reuse_rx_page(rx_buffer)) { + if (i40e_can_reuse_rx_page(rx_buffer, rx_buffer_pgcnt)) { /* hand second half of page back to the ring */ i40e_reuse_rx_page(rx_ring, rx_buffer); } else { @@ -2328,6 +2340,7 @@ while (likely(total_rx_packets < (unsigned int)budget)) { struct i40e_rx_buffer *rx_buffer; union i40e_rx_desc *rx_desc; + int rx_buffer_pgcnt; unsigned int size; u64 qword; @@ -2370,7 +2383,7 @@ break; i40e_trace(clean_rx_irq, rx_ring, rx_desc, skb); - rx_buffer = i40e_get_rx_buffer(rx_ring, size); + rx_buffer = i40e_get_rx_buffer(rx_ring, size, &rx_buffer_pgcnt); /* retrieve a buffer from the ring */ if (!skb) { @@ -2413,7 +2426,7 @@ break; } - i40e_put_rx_buffer(rx_ring, rx_buffer); + i40e_put_rx_buffer(rx_ring, rx_buffer, rx_buffer_pgcnt); cleaned_count++; if (i40e_is_non_eop(rx_ring, rx_desc, skb)) @@ -3075,13 +3088,16 @@ l4_proto = ip.v4->protocol; } else if (*tx_flags & I40E_TX_FLAGS_IPV6) { + int ret; + tunnel |= I40E_TX_CTX_EXT_IP_IPV6; exthdr = ip.hdr + sizeof(*ip.v6); l4_proto = ip.v6->nexthdr; - if (l4.hdr != exthdr) - ipv6_skip_exthdr(skb, exthdr - skb->data, - &l4_proto, &frag_off); + ret = ipv6_skip_exthdr(skb, exthdr - skb->data, + &l4_proto, &frag_off); + if (ret < 0) + return -1; } /* define outer transport */ --- linux-azure-5.8-5.8.0.orig/drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c +++ linux-azure-5.8-5.8.0/drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c @@ -55,12 +55,7 @@ pfe.event = VIRTCHNL_EVENT_LINK_CHANGE; pfe.severity = PF_EVENT_SEVERITY_INFO; - - /* Always report link is down if the VF queues aren't enabled */ - if (!vf->queues_enabled) { - pfe.event_data.link_event.link_status = false; - pfe.event_data.link_event.link_speed = 0; - } else if (vf->link_forced) { + if (vf->link_forced) { pfe.event_data.link_event.link_status = vf->link_up; pfe.event_data.link_event.link_speed = (vf->link_up ? VIRTCHNL_LINK_SPEED_40GB : 0); @@ -70,7 +65,6 @@ pfe.event_data.link_event.link_speed = i40e_virtchnl_link_speed(ls->link_speed); } - i40e_aq_send_msg_to_vf(hw, abs_vf_id, VIRTCHNL_OP_EVENT, 0, (u8 *)&pfe, sizeof(pfe), NULL); } @@ -1126,6 +1120,7 @@ struct i40e_pf *pf = vf->pf; struct i40e_hw *hw = &pf->hw; struct i40e_mac_filter *f; + struct hlist_node *h; i40e_status aq_ret = 0; struct i40e_vsi *vsi; int bkt; @@ -1165,7 +1160,8 @@ } return aq_ret; } else if (i40e_getnum_vf_vsi_vlan_filters(vsi)) { - hash_for_each(vsi->mac_filter_hash, bkt, f, hlist) { + spin_lock_bh(&vsi->mac_filter_hash_lock); + hash_for_each_safe(vsi->mac_filter_hash, bkt, h, f, hlist) { if (f->vlan < 0 || f->vlan > I40E_MAX_VLANID) continue; aq_ret = i40e_aq_set_vsi_mc_promisc_on_vlan(hw, @@ -1198,6 +1194,7 @@ i40e_aq_str(&pf->hw, aq_err)); } } + spin_unlock_bh(&vsi->mac_filter_hash_lock); return aq_ret; } aq_ret = i40e_aq_set_vsi_multicast_promiscuous(hw, vsi->seid, allmulti, @@ -1334,7 +1331,8 @@ * @vf: pointer to the VF structure * @flr: VFLR was issued or not * - * Returns true if the VF is reset, false otherwise. + * Returns true if the VF is in reset, resets successfully, or resets + * are disabled and false otherwise. **/ bool i40e_reset_vf(struct i40e_vf *vf, bool flr) { @@ -1344,11 +1342,14 @@ u32 reg; int i; + if (test_bit(__I40E_VF_RESETS_DISABLED, pf->state)) + return true; + /* If the VFs have been disabled, this means something else is * resetting the VF, so we shouldn't continue. */ if (test_and_set_bit(__I40E_VF_DISABLE, pf->state)) - return false; + return true; i40e_trigger_vf_reset(vf, flr); @@ -1512,6 +1513,15 @@ i40e_notify_client_of_vf_enable(pf, 0); + /* Disable IOV before freeing resources. This lets any VF drivers + * running in the host get themselves cleaned up before we yank + * the carpet out from underneath their feet. + */ + if (!pci_vfs_assigned(pf->pdev)) + pci_disable_sriov(pf->pdev); + else + dev_warn(&pf->pdev->dev, "VFs are assigned - not disabling SR-IOV\n"); + /* Amortize wait time by stopping all VFs at the same time */ for (i = 0; i < pf->num_alloc_vfs; i++) { if (test_bit(I40E_VF_STATE_INIT, &pf->vf[i].vf_states)) @@ -1527,15 +1537,6 @@ i40e_vsi_wait_queues_disabled(pf->vsi[pf->vf[i].lan_vsi_idx]); } - /* Disable IOV before freeing resources. This lets any VF drivers - * running in the host get themselves cleaned up before we yank - * the carpet out from underneath their feet. - */ - if (!pci_vfs_assigned(pf->pdev)) - pci_disable_sriov(pf->pdev); - else - dev_warn(&pf->pdev->dev, "VFs are assigned - not disabling SR-IOV\n"); - /* free up VF resources */ tmp = pf->num_alloc_vfs; pf->num_alloc_vfs = 0; @@ -1699,7 +1700,7 @@ if (num_vfs) { if (!(pf->flags & I40E_FLAG_VEB_MODE_ENABLED)) { pf->flags |= I40E_FLAG_VEB_MODE_ENABLED; - i40e_do_reset_safe(pf, I40E_PF_RESET_FLAG); + i40e_do_reset_safe(pf, I40E_PF_RESET_AND_REBUILD_FLAG); } ret = i40e_pci_sriov_enable(pdev, num_vfs); goto sriov_configure_out; @@ -1708,7 +1709,7 @@ if (!pci_vfs_assigned(pf->pdev)) { i40e_free_vfs(pf); pf->flags &= ~I40E_FLAG_VEB_MODE_ENABLED; - i40e_do_reset_safe(pf, I40E_PF_RESET_FLAG); + i40e_do_reset_safe(pf, I40E_PF_RESET_AND_REBUILD_FLAG); } else { dev_warn(&pdev->dev, "Unable to free VFs because some are assigned to VMs.\n"); ret = -EINVAL; @@ -2388,8 +2389,6 @@ } } - vf->queues_enabled = true; - error_param: /* send the response to the VF */ return i40e_vc_send_resp_to_vf(vf, VIRTCHNL_OP_ENABLE_QUEUES, @@ -2411,9 +2410,6 @@ struct i40e_pf *pf = vf->pf; i40e_status aq_ret = 0; - /* Immediately mark queues as disabled */ - vf->queues_enabled = false; - if (!test_bit(I40E_VF_STATE_ACTIVE, &vf->vf_states)) { aq_ret = I40E_ERR_PARAM; goto error_param; @@ -2662,6 +2658,10 @@ spin_unlock_bh(&vsi->mac_filter_hash_lock); goto error_param; } + if (is_valid_ether_addr(al->list[i].addr) && + is_zero_ether_addr(vf->default_lan_addr.addr)) + ether_addr_copy(vf->default_lan_addr.addr, + al->list[i].addr); } } spin_unlock_bh(&vsi->mac_filter_hash_lock); @@ -2689,6 +2689,7 @@ { struct virtchnl_ether_addr_list *al = (struct virtchnl_ether_addr_list *)msg; + bool was_unimac_deleted = false; struct i40e_pf *pf = vf->pf; struct i40e_vsi *vsi = NULL; i40e_status ret = 0; @@ -2708,6 +2709,8 @@ ret = I40E_ERR_INVALID_MAC_ADDR; goto error_param; } + if (ether_addr_equal(al->list[i].addr, vf->default_lan_addr.addr)) + was_unimac_deleted = true; } vsi = pf->vsi[vf->lan_vsi_idx]; @@ -2728,10 +2731,25 @@ dev_err(&pf->pdev->dev, "Unable to program VF %d MAC filters, error %d\n", vf->vf_id, ret); + if (vf->trusted && was_unimac_deleted) { + struct i40e_mac_filter *f; + struct hlist_node *h; + u8 *macaddr = NULL; + int bkt; + + /* set last unicast mac address as default */ + spin_lock_bh(&vsi->mac_filter_hash_lock); + hash_for_each_safe(vsi->mac_filter_hash, bkt, h, f, hlist) { + if (is_valid_ether_addr(f->macaddr)) + macaddr = f->macaddr; + } + if (macaddr) + ether_addr_copy(vf->default_lan_addr.addr, macaddr); + spin_unlock_bh(&vsi->mac_filter_hash_lock); + } error_param: /* send the response to the VF */ - return i40e_vc_send_resp_to_vf(vf, VIRTCHNL_OP_DEL_ETH_ADDR, - ret); + return i40e_vc_send_resp_to_vf(vf, VIRTCHNL_OP_DEL_ETH_ADDR, ret); } /** @@ -3969,20 +3987,16 @@ goto error_param; vf = &pf->vf[vf_id]; - vsi = pf->vsi[vf->lan_vsi_idx]; /* When the VF is resetting wait until it is done. * It can take up to 200 milliseconds, * but wait for up to 300 milliseconds to be safe. - * If the VF is indeed in reset, the vsi pointer has - * to show on the newly loaded vsi under pf->vsi[id]. + * Acquire the VSI pointer only after the VF has been + * properly initialized. */ for (i = 0; i < 15; i++) { - if (test_bit(I40E_VF_STATE_INIT, &vf->vf_states)) { - if (i > 0) - vsi = pf->vsi[vf->lan_vsi_idx]; + if (test_bit(I40E_VF_STATE_INIT, &vf->vf_states)) break; - } msleep(20); } if (!test_bit(I40E_VF_STATE_INIT, &vf->vf_states)) { @@ -3991,6 +4005,7 @@ ret = -EAGAIN; goto error_param; } + vsi = pf->vsi[vf->lan_vsi_idx]; if (is_multicast_ether_addr(mac)) { dev_err(&pf->pdev->dev, --- linux-azure-5.8-5.8.0.orig/drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.h +++ linux-azure-5.8-5.8.0/drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.h @@ -99,7 +99,6 @@ unsigned int tx_rate; /* Tx bandwidth limit in Mbps */ bool link_forced; bool link_up; /* only valid if VF link is forced */ - bool queues_enabled; /* true if the VF queues are enabled */ bool spoofchk; u16 num_vlan; --- linux-azure-5.8-5.8.0.orig/drivers/net/ethernet/intel/i40e/i40e_xsk.c +++ linux-azure-5.8-5.8.0/drivers/net/ethernet/intel/i40e/i40e_xsk.c @@ -215,8 +215,11 @@ } while (count); no_buffers: - if (rx_ring->next_to_use != ntu) + if (rx_ring->next_to_use != ntu) { + /* clear the status bits for the next_to_use descriptor */ + rx_desc->wb.qword1.status_error_len = 0; i40e_release_rx_desc(rx_ring, ntu); + } return ok; } @@ -336,12 +339,12 @@ * SBP is *not* set in PRT_SBPVSI (default not set). */ skb = i40e_construct_skb_zc(rx_ring, *bi); - *bi = NULL; if (!skb) { rx_ring->rx_stats.alloc_buff_failed++; break; } + *bi = NULL; cleaned_count++; i40e_inc_ntc(rx_ring); --- linux-azure-5.8-5.8.0.orig/drivers/net/ethernet/intel/iavf/iavf_main.c +++ linux-azure-5.8-5.8.0/drivers/net/ethernet/intel/iavf/iavf_main.c @@ -1844,11 +1844,9 @@ netif_tx_stop_all_queues(netdev); if (CLIENT_ALLOWED(adapter)) { err = iavf_lan_add_device(adapter); - if (err) { - rtnl_unlock(); + if (err) dev_info(&pdev->dev, "Failed to add VF to client API service list: %d\n", err); - } } dev_info(&pdev->dev, "MAC address: %pM\n", adapter->hw.mac.addr); if (netdev->features & NETIF_F_GRO) @@ -1863,8 +1861,10 @@ adapter->rss_key = kzalloc(adapter->rss_key_size, GFP_KERNEL); adapter->rss_lut = kzalloc(adapter->rss_lut_size, GFP_KERNEL); - if (!adapter->rss_key || !adapter->rss_lut) + if (!adapter->rss_key || !adapter->rss_lut) { + err = -ENOMEM; goto err_mem; + } if (RSS_AQ(adapter)) adapter->aq_required |= IAVF_FLAG_AQ_CONFIGURE_RSS; else @@ -1946,7 +1946,10 @@ iavf_send_api_ver(adapter); } } else { - if (!iavf_process_aq_command(adapter) && + /* An error will be returned if no commands were + * processed; use this opportunity to update stats + */ + if (iavf_process_aq_command(adapter) && adapter->state == __IAVF_RUNNING) iavf_request_stats(adapter); } @@ -3772,7 +3775,6 @@ return err; } -#ifdef CONFIG_PM /** * iavf_suspend - Power management suspend routine * @pdev: PCI device information struct @@ -3780,11 +3782,10 @@ * * Called when the system (VM) is entering sleep/suspend. **/ -static int iavf_suspend(struct pci_dev *pdev, pm_message_t state) +static int __maybe_unused iavf_suspend(struct device *dev_d) { - struct net_device *netdev = pci_get_drvdata(pdev); + struct net_device *netdev = dev_get_drvdata(dev_d); struct iavf_adapter *adapter = netdev_priv(netdev); - int retval = 0; netif_device_detach(netdev); @@ -3802,12 +3803,6 @@ clear_bit(__IAVF_IN_CRITICAL_TASK, &adapter->crit_section); - retval = pci_save_state(pdev); - if (retval) - return retval; - - pci_disable_device(pdev); - return 0; } @@ -3817,24 +3812,13 @@ * * Called when the system (VM) is resumed from sleep/suspend. **/ -static int iavf_resume(struct pci_dev *pdev) +static int __maybe_unused iavf_resume(struct device *dev_d) { - struct iavf_adapter *adapter = pci_get_drvdata(pdev); - struct net_device *netdev = adapter->netdev; + struct pci_dev *pdev = to_pci_dev(dev_d); + struct net_device *netdev = pci_get_drvdata(pdev); + struct iavf_adapter *adapter = netdev_priv(netdev); u32 err; - pci_set_power_state(pdev, PCI_D0); - pci_restore_state(pdev); - /* pci_restore_state clears dev->state_saved so call - * pci_save_state to restore it. - */ - pci_save_state(pdev); - - err = pci_enable_device_mem(pdev); - if (err) { - dev_err(&pdev->dev, "Cannot enable PCI device from suspend.\n"); - return err; - } pci_set_master(pdev); rtnl_lock(); @@ -3858,7 +3842,6 @@ return err; } -#endif /* CONFIG_PM */ /** * iavf_remove - Device Removal Routine * @pdev: PCI device information struct @@ -3960,16 +3943,15 @@ pci_disable_device(pdev); } +static SIMPLE_DEV_PM_OPS(iavf_pm_ops, iavf_suspend, iavf_resume); + static struct pci_driver iavf_driver = { - .name = iavf_driver_name, - .id_table = iavf_pci_tbl, - .probe = iavf_probe, - .remove = iavf_remove, -#ifdef CONFIG_PM - .suspend = iavf_suspend, - .resume = iavf_resume, -#endif - .shutdown = iavf_shutdown, + .name = iavf_driver_name, + .id_table = iavf_pci_tbl, + .probe = iavf_probe, + .remove = iavf_remove, + .driver.pm = &iavf_pm_ops, + .shutdown = iavf_shutdown, }; /** --- linux-azure-5.8-5.8.0.orig/drivers/net/ethernet/intel/ice/ice.h +++ linux-azure-5.8-5.8.0/drivers/net/ethernet/intel/ice/ice.h @@ -68,7 +68,9 @@ #define ICE_INT_NAME_STR_LEN (IFNAMSIZ + 16) #define ICE_AQ_LEN 64 #define ICE_MBXSQ_LEN 64 -#define ICE_MIN_MSIX 2 +#define ICE_MIN_LAN_TXRX_MSIX 1 +#define ICE_MIN_LAN_OICR_MSIX 1 +#define ICE_MIN_MSIX (ICE_MIN_LAN_TXRX_MSIX + ICE_MIN_LAN_OICR_MSIX) #define ICE_FDIR_MSIX 1 #define ICE_NO_VSI 0xffff #define ICE_VSI_MAP_CONTIG 0 @@ -427,9 +429,7 @@ struct ice_hw_port_stats stats_prev; struct ice_hw hw; u8 stat_prev_loaded:1; /* has previous stats been loaded */ -#ifdef CONFIG_DCB u16 dcbx_cap; -#endif /* CONFIG_DCB */ u32 tx_timeout_count; unsigned long tx_timeout_last_recovery; u32 tx_timeout_recovery_level; --- linux-azure-5.8-5.8.0.orig/drivers/net/ethernet/intel/ice/ice_dcb_nl.c +++ linux-azure-5.8-5.8.0/drivers/net/ethernet/intel/ice/ice_dcb_nl.c @@ -136,7 +136,7 @@ if (!test_bit(ICE_FLAG_DCB_CAPABLE, pf->flags)) return -EINVAL; - *num = IEEE_8021QAZ_MAX_TCS; + *num = pf->hw.func_caps.common_cap.maxtc; return 0; } @@ -160,6 +160,10 @@ { struct ice_pf *pf = ice_netdev_to_pf(netdev); + /* if FW LLDP agent is running, DCBNL not allowed to change mode */ + if (test_bit(ICE_FLAG_FW_LLDP_AGENT, pf->flags)) + return ICE_DCB_NO_HW_CHG; + /* No support for LLD_MANAGED modes or CEE+IEEE */ if ((mode & DCB_CAP_DCBX_LLD_MANAGED) || ((mode & DCB_CAP_DCBX_VER_IEEE) && (mode & DCB_CAP_DCBX_VER_CEE)) || --- linux-azure-5.8-5.8.0.orig/drivers/net/ethernet/intel/ice/ice_ethtool.c +++ linux-azure-5.8-5.8.0/drivers/net/ethernet/intel/ice/ice_ethtool.c @@ -8,6 +8,7 @@ #include "ice_fltr.h" #include "ice_lib.h" #include "ice_dcb_lib.h" +#include struct ice_stats { char stat_string[ETH_GSTRING_LEN]; @@ -1256,6 +1257,9 @@ status = ice_init_pf_dcb(pf, true); if (status) dev_warn(dev, "Fail to init DCB\n"); + + pf->dcbx_cap &= ~DCB_CAP_DCBX_LLD_MANAGED; + pf->dcbx_cap |= DCB_CAP_DCBX_HOST; } else { enum ice_status status; bool dcbx_agent_status; @@ -1298,6 +1302,9 @@ if (status) dev_dbg(dev, "Fail to enable MIB change events\n"); + pf->dcbx_cap &= ~DCB_CAP_DCBX_HOST; + pf->dcbx_cap |= DCB_CAP_DCBX_LLD_MANAGED; + ice_nway_reset(netdev); } } @@ -3141,8 +3148,8 @@ */ static int ice_get_max_txq(struct ice_pf *pf) { - return min_t(int, num_online_cpus(), - pf->hw.func_caps.common_cap.num_txq); + return min3(pf->num_lan_msix, (u16)num_online_cpus(), + (u16)pf->hw.func_caps.common_cap.num_txq); } /** @@ -3151,8 +3158,8 @@ */ static int ice_get_max_rxq(struct ice_pf *pf) { - return min_t(int, num_online_cpus(), - pf->hw.func_caps.common_cap.num_rxq); + return min3(pf->num_lan_msix, (u16)num_online_cpus(), + (u16)pf->hw.func_caps.common_cap.num_rxq); } /** @@ -3205,6 +3212,18 @@ } /** + * ice_get_valid_rss_size - return valid number of RSS queues + * @hw: pointer to the HW structure + * @new_size: requested RSS queues + */ +static int ice_get_valid_rss_size(struct ice_hw *hw, int new_size) +{ + struct ice_hw_common_caps *caps = &hw->func_caps.common_cap; + + return min_t(int, new_size, BIT(caps->rss_table_entry_width)); +} + +/** * ice_vsi_set_dflt_rss_lut - set default RSS LUT with requested RSS size * @vsi: VSI to reconfigure RSS LUT on * @req_rss_size: requested range of queue numbers for hashing @@ -3231,14 +3250,10 @@ return -ENOMEM; /* set RSS LUT parameters */ - if (!test_bit(ICE_FLAG_RSS_ENA, pf->flags)) { + if (!test_bit(ICE_FLAG_RSS_ENA, pf->flags)) vsi->rss_size = 1; - } else { - struct ice_hw_common_caps *caps = &hw->func_caps.common_cap; - - vsi->rss_size = min_t(int, req_rss_size, - BIT(caps->rss_table_entry_width)); - } + else + vsi->rss_size = ice_get_valid_rss_size(hw, req_rss_size); /* create/set RSS LUT */ ice_fill_rss_lut(lut, vsi->rss_table_size, vsi->rss_size); @@ -3317,9 +3332,12 @@ ice_vsi_recfg_qs(vsi, new_rx, new_tx); - if (new_rx && !netif_is_rxfh_configured(dev)) + if (!netif_is_rxfh_configured(dev)) return ice_vsi_set_dflt_rss_lut(vsi, new_rx); + /* Update rss_size due to change in Rx queues */ + vsi->rss_size = ice_get_valid_rss_size(&pf->hw, new_rx); + return 0; } --- linux-azure-5.8-5.8.0.orig/drivers/net/ethernet/intel/ice/ice_ethtool_fdir.c +++ linux-azure-5.8-5.8.0/drivers/net/ethernet/intel/ice/ice_ethtool_fdir.c @@ -1577,7 +1577,13 @@ sizeof(struct in6_addr)); input->ip.v6.l4_header = fsp->h_u.usr_ip6_spec.l4_4_bytes; input->ip.v6.tc = fsp->h_u.usr_ip6_spec.tclass; - input->ip.v6.proto = fsp->h_u.usr_ip6_spec.l4_proto; + + /* if no protocol requested, use IPPROTO_NONE */ + if (!fsp->m_u.usr_ip6_spec.l4_proto) + input->ip.v6.proto = IPPROTO_NONE; + else + input->ip.v6.proto = fsp->h_u.usr_ip6_spec.l4_proto; + memcpy(input->mask.v6.dst_ip, fsp->m_u.usr_ip6_spec.ip6dst, sizeof(struct in6_addr)); memcpy(input->mask.v6.src_ip, fsp->m_u.usr_ip6_spec.ip6src, --- linux-azure-5.8-5.8.0.orig/drivers/net/ethernet/intel/ice/ice_flex_pipe.c +++ linux-azure-5.8-5.8.0/drivers/net/ethernet/intel/ice/ice_flex_pipe.c @@ -2922,6 +2922,8 @@ ICE_FLOW_ENTRY_HNDL(e)); list_del(&p->l_entry); + + mutex_destroy(&p->entries_lock); devm_kfree(ice_hw_to_dev(hw), p); } mutex_unlock(&hw->fl_profs_locks[blk_idx]); @@ -3039,7 +3041,7 @@ memset(prof_redir->t, 0, prof_redir->count * sizeof(*prof_redir->t)); - memset(es->t, 0, es->count * sizeof(*es->t)); + memset(es->t, 0, es->count * sizeof(*es->t) * es->fvw); memset(es->ref_count, 0, es->count * sizeof(*es->ref_count)); memset(es->written, 0, es->count * sizeof(*es->written)); } @@ -3150,10 +3152,12 @@ es->ref_count = devm_kcalloc(ice_hw_to_dev(hw), es->count, sizeof(*es->ref_count), GFP_KERNEL); + if (!es->ref_count) + goto err; es->written = devm_kcalloc(ice_hw_to_dev(hw), es->count, sizeof(*es->written), GFP_KERNEL); - if (!es->ref_count) + if (!es->written) goto err; } return 0; --- linux-azure-5.8-5.8.0.orig/drivers/net/ethernet/intel/ice/ice_lib.c +++ linux-azure-5.8-5.8.0/drivers/net/ethernet/intel/ice/ice_lib.c @@ -154,8 +154,9 @@ switch (vsi->type) { case ICE_VSI_PF: - vsi->alloc_txq = min_t(int, ice_get_avail_txq_count(pf), - num_online_cpus()); + vsi->alloc_txq = min3(pf->num_lan_msix, + ice_get_avail_txq_count(pf), + (u16)num_online_cpus()); if (vsi->req_txq) { vsi->alloc_txq = vsi->req_txq; vsi->num_txq = vsi->req_txq; @@ -167,8 +168,9 @@ if (!test_bit(ICE_FLAG_RSS_ENA, pf->flags)) { vsi->alloc_rxq = 1; } else { - vsi->alloc_rxq = min_t(int, ice_get_avail_rxq_count(pf), - num_online_cpus()); + vsi->alloc_rxq = min3(pf->num_lan_msix, + ice_get_avail_rxq_count(pf), + (u16)num_online_cpus()); if (vsi->req_rxq) { vsi->alloc_rxq = vsi->req_rxq; vsi->num_rxq = vsi->req_rxq; @@ -177,7 +179,9 @@ pf->num_lan_rx = vsi->alloc_rxq; - vsi->num_q_vectors = max_t(int, vsi->alloc_rxq, vsi->alloc_txq); + vsi->num_q_vectors = min_t(int, pf->num_lan_msix, + max_t(int, vsi->alloc_rxq, + vsi->alloc_txq)); break; case ICE_VSI_VF: vf = &pf->vf[vsi->vf_id]; @@ -240,7 +244,7 @@ * ice_vsi_delete - delete a VSI from the switch * @vsi: pointer to VSI being removed */ -void ice_vsi_delete(struct ice_vsi *vsi) +static void ice_vsi_delete(struct ice_vsi *vsi) { struct ice_pf *pf = vsi->back; struct ice_vsi_ctx *ctxt; @@ -307,7 +311,7 @@ * * Returns 0 on success, negative on failure */ -int ice_vsi_clear(struct ice_vsi *vsi) +static int ice_vsi_clear(struct ice_vsi *vsi) { struct ice_pf *pf = NULL; struct device *dev; @@ -557,7 +561,7 @@ * ice_vsi_put_qs - Release queues from VSI to PF * @vsi: the VSI that is going to release queues */ -void ice_vsi_put_qs(struct ice_vsi *vsi) +static void ice_vsi_put_qs(struct ice_vsi *vsi) { struct ice_pf *pf = vsi->back; int i; @@ -1190,6 +1194,18 @@ { int i; + /* Avoid stale references by clearing map from vector to ring */ + if (vsi->q_vectors) { + ice_for_each_q_vector(vsi, i) { + struct ice_q_vector *q_vector = vsi->q_vectors[i]; + + if (q_vector) { + q_vector->tx.ring = NULL; + q_vector->rx.ring = NULL; + } + } + } + if (vsi->tx_rings) { for (i = 0; i < vsi->alloc_txq; i++) { if (vsi->tx_rings[i]) { @@ -2254,7 +2270,7 @@ if (status) { dev_err(dev, "VSI %d failed lan queue config, error %s\n", vsi->vsi_num, ice_stat_str(status)); - goto unroll_vector_base; + goto unroll_clear_rings; } /* Add switch rule to drop all Tx Flow Control Frames, of look up --- linux-azure-5.8-5.8.0.orig/drivers/net/ethernet/intel/ice/ice_lib.h +++ linux-azure-5.8-5.8.0/drivers/net/ethernet/intel/ice/ice_lib.h @@ -43,10 +43,6 @@ void ice_cfg_sw_lldp(struct ice_vsi *vsi, bool tx, bool create); -void ice_vsi_delete(struct ice_vsi *vsi); - -int ice_vsi_clear(struct ice_vsi *vsi); - #ifdef CONFIG_DCB int ice_vsi_cfg_tc(struct ice_vsi *vsi, u8 ena_tc); #endif /* CONFIG_DCB */ @@ -77,8 +73,6 @@ void ice_write_qrxflxp_cntxt(struct ice_hw *hw, u16 pf_q, u32 rxdid, u32 prio); -void ice_vsi_put_qs(struct ice_vsi *vsi); - void ice_vsi_dis_irq(struct ice_vsi *vsi); void ice_vsi_free_irq(struct ice_vsi *vsi); --- linux-azure-5.8-5.8.0.orig/drivers/net/ethernet/intel/ice/ice_main.c +++ linux-azure-5.8-5.8.0/drivers/net/ethernet/intel/ice/ice_main.c @@ -2605,10 +2605,8 @@ return -EBUSY; vsi = ice_pf_vsi_setup(pf, pf->hw.port_info); - if (!vsi) { - status = -ENOMEM; - goto unroll_vsi_setup; - } + if (!vsi) + return -ENOMEM; status = ice_cfg_netdev(vsi); if (status) { @@ -2655,12 +2653,7 @@ } unroll_vsi_setup: - if (vsi) { - ice_vsi_free_q_vectors(vsi); - ice_vsi_delete(vsi); - ice_vsi_put_qs(vsi); - ice_vsi_clear(vsi); - } + ice_vsi_release(vsi); return status; } @@ -2863,18 +2856,14 @@ if (v_actual < v_budget) { dev_warn(dev, "not enough OS MSI-X vectors. requested = %d, obtained = %d\n", v_budget, v_actual); -/* 2 vectors each for LAN and RDMA (traffic + OICR), one for flow director */ -#define ICE_MIN_LAN_VECS 2 -#define ICE_MIN_RDMA_VECS 2 -#define ICE_MIN_VECS (ICE_MIN_LAN_VECS + ICE_MIN_RDMA_VECS + 1) - if (v_actual < ICE_MIN_LAN_VECS) { + if (v_actual < ICE_MIN_MSIX) { /* error if we can't get minimum vectors */ pci_disable_msix(pf->pdev); err = -ERANGE; goto msix_err; } else { - pf->num_lan_msix = ICE_MIN_LAN_VECS; + pf->num_lan_msix = ICE_MIN_LAN_TXRX_MSIX; } } @@ -3845,9 +3834,15 @@ goto err_update_filters; } - /* Add filter for new MAC. If filter exists, just return success */ + /* Add filter for new MAC. If filter exists, return success */ status = ice_fltr_add_mac(vsi, mac, ICE_FWD_TO_VSI); if (status == ICE_ERR_ALREADY_EXISTS) { + /* Although this MAC filter is already present in hardware it's + * possible in some cases (e.g. bonding) that dev_addr was + * modified outside of the driver and needs to be restored back + * to this value. + */ + memcpy(netdev->dev_addr, mac, netdev->addr_len); netdev_dbg(netdev, "filter for MAC %pM already exists\n", mac); return 0; } --- linux-azure-5.8-5.8.0.orig/drivers/net/ethernet/intel/ice/ice_txrx.c +++ linux-azure-5.8-5.8.0/drivers/net/ethernet/intel/ice/ice_txrx.c @@ -1919,12 +1919,15 @@ ICE_TX_CTX_EIPT_IPV4_NO_CSUM; l4_proto = ip.v4->protocol; } else if (first->tx_flags & ICE_TX_FLAGS_IPV6) { + int ret; + tunnel |= ICE_TX_CTX_EIPT_IPV6; exthdr = ip.hdr + sizeof(*ip.v6); l4_proto = ip.v6->nexthdr; - if (l4.hdr != exthdr) - ipv6_skip_exthdr(skb, exthdr - skb->data, - &l4_proto, &frag_off); + ret = ipv6_skip_exthdr(skb, exthdr - skb->data, + &l4_proto, &frag_off); + if (ret < 0) + return -1; } /* define outer transport */ --- linux-azure-5.8-5.8.0.orig/drivers/net/ethernet/intel/ice/ice_virtchnl_pf.c +++ linux-azure-5.8-5.8.0/drivers/net/ethernet/intel/ice/ice_virtchnl_pf.c @@ -1902,6 +1902,29 @@ } /** + * ice_vc_get_max_frame_size - get max frame size allowed for VF + * @vf: VF used to determine max frame size + * + * Max frame size is determined based on the current port's max frame size and + * whether a port VLAN is configured on this VF. The VF is not aware whether + * it's in a port VLAN so the PF needs to account for this in max frame size + * checks and sending the max frame size to the VF. + */ +static u16 ice_vc_get_max_frame_size(struct ice_vf *vf) +{ + struct ice_vsi *vsi = vf->pf->vsi[vf->lan_vsi_idx]; + struct ice_port_info *pi = vsi->port_info; + u16 max_frame_size; + + max_frame_size = pi->phy.link_info.max_frame_size; + + if (vf->port_vlan_info) + max_frame_size -= VLAN_HLEN; + + return max_frame_size; +} + +/** * ice_vc_get_vf_res_msg * @vf: pointer to the VF info * @msg: pointer to the msg buffer @@ -1983,6 +2006,7 @@ vfres->max_vectors = pf->num_msix_per_vf; vfres->rss_key_size = ICE_VSIQF_HKEY_ARRAY_SIZE; vfres->rss_lut_size = ICE_VSIQF_HLUT_ARRAY_SIZE; + vfres->max_mtu = ice_vc_get_max_frame_size(vf); vfres->vsi_res[0].vsi_id = vf->lan_vsi_num; vfres->vsi_res[0].vsi_type = VIRTCHNL_VSI_SRIOV; @@ -2975,6 +2999,8 @@ /* copy Rx queue info from VF into VSI */ if (qpi->rxq.ring_len > 0) { + u16 max_frame_size = ice_vc_get_max_frame_size(vf); + num_rxq++; vsi->rx_rings[i]->dma = qpi->rxq.dma_ring_addr; vsi->rx_rings[i]->count = qpi->rxq.ring_len; @@ -2987,7 +3013,7 @@ } vsi->rx_buf_len = qpi->rxq.databuffer_size; vsi->rx_rings[i]->rx_buf_len = vsi->rx_buf_len; - if (qpi->rxq.max_pkt_size >= (16 * 1024) || + if (qpi->rxq.max_pkt_size > max_frame_size || qpi->rxq.max_pkt_size < 64) { v_ret = VIRTCHNL_STATUS_ERR_PARAM; goto error_param; @@ -2995,6 +3021,11 @@ } vsi->max_frame = qpi->rxq.max_pkt_size; + /* add space for the port VLAN since the VF driver is not + * expected to account for it in the MTU calculation + */ + if (vf->port_vlan_info) + vsi->max_frame += VLAN_HLEN; } /* VF can request to configure less than allocated queues --- linux-azure-5.8-5.8.0.orig/drivers/net/ethernet/intel/ice/ice_xsk.c +++ linux-azure-5.8-5.8.0/drivers/net/ethernet/intel/ice/ice_xsk.c @@ -445,8 +445,11 @@ } } while (--count); - if (rx_ring->next_to_use != ntu) + if (rx_ring->next_to_use != ntu) { + /* clear the status bits for the next_to_use descriptor */ + rx_desc->wb.status_error0 = 0; ice_release_rx_desc(rx_ring, ntu); + } return ret; } --- linux-azure-5.8-5.8.0.orig/drivers/net/ethernet/intel/igc/igc.h +++ linux-azure-5.8-5.8.0/drivers/net/ethernet/intel/igc/igc.h @@ -298,18 +298,14 @@ #define IGC_RX_HDR_LEN IGC_RXBUFFER_256 /* Transmit and receive latency (for PTP timestamps) */ -/* FIXME: These values were estimated using the ones that i225 has as - * basis, they seem to provide good numbers with ptp4l/phc2sys, but we - * need to confirm them. - */ -#define IGC_I225_TX_LATENCY_10 9542 -#define IGC_I225_TX_LATENCY_100 1024 -#define IGC_I225_TX_LATENCY_1000 178 -#define IGC_I225_TX_LATENCY_2500 64 -#define IGC_I225_RX_LATENCY_10 20662 -#define IGC_I225_RX_LATENCY_100 2213 -#define IGC_I225_RX_LATENCY_1000 448 -#define IGC_I225_RX_LATENCY_2500 160 +#define IGC_I225_TX_LATENCY_10 240 +#define IGC_I225_TX_LATENCY_100 58 +#define IGC_I225_TX_LATENCY_1000 80 +#define IGC_I225_TX_LATENCY_2500 1325 +#define IGC_I225_RX_LATENCY_10 6450 +#define IGC_I225_RX_LATENCY_100 185 +#define IGC_I225_RX_LATENCY_1000 300 +#define IGC_I225_RX_LATENCY_2500 1485 /* RX and TX descriptor control thresholds. * PTHRESH - MAC will consider prefetch if it has fewer than this number of --- linux-azure-5.8-5.8.0.orig/drivers/net/ethernet/intel/igc/igc_ethtool.c +++ linux-azure-5.8-5.8.0/drivers/net/ethernet/intel/igc/igc_ethtool.c @@ -1588,12 +1588,18 @@ cmd->base.phy_address = hw->phy.addr; /* advertising link modes */ - ethtool_link_ksettings_add_link_mode(cmd, advertising, 10baseT_Half); - ethtool_link_ksettings_add_link_mode(cmd, advertising, 10baseT_Full); - ethtool_link_ksettings_add_link_mode(cmd, advertising, 100baseT_Half); - ethtool_link_ksettings_add_link_mode(cmd, advertising, 100baseT_Full); - ethtool_link_ksettings_add_link_mode(cmd, advertising, 1000baseT_Full); - ethtool_link_ksettings_add_link_mode(cmd, advertising, 2500baseT_Full); + if (hw->phy.autoneg_advertised & ADVERTISE_10_HALF) + ethtool_link_ksettings_add_link_mode(cmd, advertising, 10baseT_Half); + if (hw->phy.autoneg_advertised & ADVERTISE_10_FULL) + ethtool_link_ksettings_add_link_mode(cmd, advertising, 10baseT_Full); + if (hw->phy.autoneg_advertised & ADVERTISE_100_HALF) + ethtool_link_ksettings_add_link_mode(cmd, advertising, 100baseT_Half); + if (hw->phy.autoneg_advertised & ADVERTISE_100_FULL) + ethtool_link_ksettings_add_link_mode(cmd, advertising, 100baseT_Full); + if (hw->phy.autoneg_advertised & ADVERTISE_1000_FULL) + ethtool_link_ksettings_add_link_mode(cmd, advertising, 1000baseT_Full); + if (hw->phy.autoneg_advertised & ADVERTISE_2500_FULL) + ethtool_link_ksettings_add_link_mode(cmd, advertising, 2500baseT_Full); /* set autoneg settings */ if (hw->mac.autoneg == 1) { @@ -1621,7 +1627,8 @@ Asym_Pause); } - status = rd32(IGC_STATUS); + status = pm_runtime_suspended(&adapter->pdev->dev) ? + 0 : rd32(IGC_STATUS); if (status & IGC_STATUS_LU) { if (status & IGC_STATUS_SPEED_1000) { @@ -1705,6 +1712,12 @@ ethtool_convert_link_mode_to_legacy_u32(&advertising, cmd->link_modes.advertising); + /* Converting to legacy u32 drops ETHTOOL_LINK_MODE_2500baseT_Full_BIT. + * We have to check this and convert it to ADVERTISE_2500_FULL + * (aka ETHTOOL_LINK_MODE_2500baseX_Full_BIT) explicitly. + */ + if (ethtool_link_ksettings_test_link_mode(cmd, advertising, 2500baseT_Full)) + advertising |= ADVERTISE_2500_FULL; if (cmd->base.autoneg == AUTONEG_ENABLE) { hw->mac.autoneg = 1; --- linux-azure-5.8-5.8.0.orig/drivers/net/ethernet/intel/igc/igc_i225.c +++ linux-azure-5.8-5.8.0/drivers/net/ethernet/intel/igc/igc_i225.c @@ -219,9 +219,9 @@ u16 *data) { struct igc_nvm_info *nvm = &hw->nvm; + s32 ret_val = -IGC_ERR_NVM; u32 attempts = 100000; u32 i, k, eewr = 0; - s32 ret_val = 0; /* A check for invalid values: offset too large, too many words, * too many words for the offset, and not enough words. @@ -229,7 +229,6 @@ if (offset >= nvm->word_size || (words > (nvm->word_size - offset)) || words == 0) { hw_dbg("nvm parameter(s) out of bounds\n"); - ret_val = -IGC_ERR_NVM; goto out; } --- linux-azure-5.8-5.8.0.orig/drivers/net/ethernet/intel/igc/igc_mac.c +++ linux-azure-5.8-5.8.0/drivers/net/ethernet/intel/igc/igc_mac.c @@ -642,7 +642,7 @@ } out: - return 0; + return ret_val; } /** --- linux-azure-5.8-5.8.0.orig/drivers/net/ethernet/intel/igc/igc_main.c +++ linux-azure-5.8-5.8.0/drivers/net/ethernet/intel/igc/igc_main.c @@ -3915,21 +3915,23 @@ } /** - * igc_get_stats - Get System Network Statistics + * igc_get_stats64 - Get System Network Statistics * @netdev: network interface device structure + * @stats: rtnl_link_stats64 pointer * * Returns the address of the device statistics structure. * The statistics are updated here and also from the timer callback. */ -static struct net_device_stats *igc_get_stats(struct net_device *netdev) +static void igc_get_stats64(struct net_device *netdev, + struct rtnl_link_stats64 *stats) { struct igc_adapter *adapter = netdev_priv(netdev); + spin_lock(&adapter->stats64_lock); if (!test_bit(__IGC_RESETTING, &adapter->state)) igc_update_stats(adapter); - - /* only return the current stats */ - return &netdev->stats; + memcpy(stats, &adapter->stats64, sizeof(*stats)); + spin_unlock(&adapter->stats64_lock); } static netdev_features_t igc_fix_features(struct net_device *netdev, @@ -4849,7 +4851,7 @@ .ndo_set_rx_mode = igc_set_rx_mode, .ndo_set_mac_address = igc_set_mac, .ndo_change_mtu = igc_change_mtu, - .ndo_get_stats = igc_get_stats, + .ndo_get_stats64 = igc_get_stats64, .ndo_fix_features = igc_fix_features, .ndo_set_features = igc_set_features, .ndo_features_check = igc_features_check, @@ -5158,6 +5160,8 @@ device_set_wakeup_enable(&adapter->pdev->dev, adapter->flags & IGC_FLAG_WOL_SUPPORTED); + igc_ptp_init(adapter); + /* reset the hardware with the new settings */ igc_reset(adapter); @@ -5174,9 +5178,6 @@ /* carrier off reporting is important to ethtool even BEFORE open */ netif_carrier_off(netdev); - /* do hw tstamp init after resetting */ - igc_ptp_init(adapter); - /* Check if Media Autosense is enabled */ adapter->ei = *ei; --- linux-azure-5.8-5.8.0.orig/drivers/net/ethernet/intel/igc/igc_ptp.c +++ linux-azure-5.8-5.8.0/drivers/net/ethernet/intel/igc/igc_ptp.c @@ -471,12 +471,31 @@ struct sk_buff *skb = adapter->ptp_tx_skb; struct skb_shared_hwtstamps shhwtstamps; struct igc_hw *hw = &adapter->hw; + int adjust = 0; u64 regval; regval = rd32(IGC_TXSTMPL); regval |= (u64)rd32(IGC_TXSTMPH) << 32; igc_ptp_systim_to_hwtstamp(adapter, &shhwtstamps, regval); + switch (adapter->link_speed) { + case SPEED_10: + adjust = IGC_I225_TX_LATENCY_10; + break; + case SPEED_100: + adjust = IGC_I225_TX_LATENCY_100; + break; + case SPEED_1000: + adjust = IGC_I225_TX_LATENCY_1000; + break; + case SPEED_2500: + adjust = IGC_I225_TX_LATENCY_2500; + break; + } + + shhwtstamps.hwtstamp = + ktime_add_ns(shhwtstamps.hwtstamp, adjust); + /* Clear the lock early before calling skb_tstamp_tx so that * applications are not woken up before the lock bit is clear. We use * a copy of the skb pointer to ensure other threads can't change it @@ -608,8 +627,6 @@ adapter->tstamp_config.rx_filter = HWTSTAMP_FILTER_NONE; adapter->tstamp_config.tx_type = HWTSTAMP_TX_OFF; - igc_ptp_reset(adapter); - adapter->ptp_clock = ptp_clock_register(&adapter->ptp_caps, &adapter->pdev->dev); if (IS_ERR(adapter->ptp_clock)) { --- linux-azure-5.8-5.8.0.orig/drivers/net/ethernet/intel/ixgbe/ixgbe_fcoe.c +++ linux-azure-5.8-5.8.0/drivers/net/ethernet/intel/ixgbe/ixgbe_fcoe.c @@ -192,7 +192,7 @@ } /* alloc the udl from per cpu ddp pool */ - ddp->udl = dma_pool_alloc(ddp_pool->pool, GFP_KERNEL, &ddp->udp); + ddp->udl = dma_pool_alloc(ddp_pool->pool, GFP_ATOMIC, &ddp->udp); if (!ddp->udl) { e_err(drv, "failed allocated ddp context\n"); goto out_noddp_unmap; --- linux-azure-5.8-5.8.0.orig/drivers/net/ethernet/intel/ixgbe/ixgbe_main.c +++ linux-azure-5.8-5.8.0/drivers/net/ethernet/intel/ixgbe/ixgbe_main.c @@ -1947,7 +1947,8 @@ return (page_to_nid(page) != numa_mem_id()) || page_is_pfmemalloc(page); } -static bool ixgbe_can_reuse_rx_page(struct ixgbe_rx_buffer *rx_buffer) +static bool ixgbe_can_reuse_rx_page(struct ixgbe_rx_buffer *rx_buffer, + int rx_buffer_pgcnt) { unsigned int pagecnt_bias = rx_buffer->pagecnt_bias; struct page *page = rx_buffer->page; @@ -1958,7 +1959,7 @@ #if (PAGE_SIZE < 8192) /* if we are only owner of page we can reuse it */ - if (unlikely((page_ref_count(page) - pagecnt_bias) > 1)) + if (unlikely((rx_buffer_pgcnt - pagecnt_bias) > 1)) return false; #else /* The last offset is a bit aggressive in that we assume the @@ -2023,11 +2024,18 @@ static struct ixgbe_rx_buffer *ixgbe_get_rx_buffer(struct ixgbe_ring *rx_ring, union ixgbe_adv_rx_desc *rx_desc, struct sk_buff **skb, - const unsigned int size) + const unsigned int size, + int *rx_buffer_pgcnt) { struct ixgbe_rx_buffer *rx_buffer; rx_buffer = &rx_ring->rx_buffer_info[rx_ring->next_to_clean]; + *rx_buffer_pgcnt = +#if (PAGE_SIZE < 8192) + page_count(rx_buffer->page); +#else + 0; +#endif prefetchw(rx_buffer->page); *skb = rx_buffer->skb; @@ -2057,9 +2065,10 @@ static void ixgbe_put_rx_buffer(struct ixgbe_ring *rx_ring, struct ixgbe_rx_buffer *rx_buffer, - struct sk_buff *skb) + struct sk_buff *skb, + int rx_buffer_pgcnt) { - if (ixgbe_can_reuse_rx_page(rx_buffer)) { + if (ixgbe_can_reuse_rx_page(rx_buffer, rx_buffer_pgcnt)) { /* hand second half of page back to the ring */ ixgbe_reuse_rx_page(rx_ring, rx_buffer); } else { @@ -2310,6 +2319,7 @@ union ixgbe_adv_rx_desc *rx_desc; struct ixgbe_rx_buffer *rx_buffer; struct sk_buff *skb; + int rx_buffer_pgcnt; unsigned int size; /* return some buffers to hardware, one at a time is too slow */ @@ -2329,7 +2339,7 @@ */ dma_rmb(); - rx_buffer = ixgbe_get_rx_buffer(rx_ring, rx_desc, &skb, size); + rx_buffer = ixgbe_get_rx_buffer(rx_ring, rx_desc, &skb, size, &rx_buffer_pgcnt); /* retrieve a buffer from the ring */ if (!skb) { @@ -2374,7 +2384,7 @@ break; } - ixgbe_put_rx_buffer(rx_ring, rx_buffer, skb); + ixgbe_put_rx_buffer(rx_ring, rx_buffer, skb, rx_buffer_pgcnt); cleaned_count++; /* place incomplete frames back on ring for completion */ --- linux-azure-5.8-5.8.0.orig/drivers/net/ethernet/korina.c +++ linux-azure-5.8-5.8.0/drivers/net/ethernet/korina.c @@ -219,7 +219,7 @@ dev_kfree_skb_any(skb); spin_unlock_irqrestore(&lp->lock, flags); - return NETDEV_TX_BUSY; + return NETDEV_TX_OK; } } @@ -1113,7 +1113,7 @@ return rc; probe_err_register: - kfree(lp->td_ring); + kfree((struct dma_desc *)KSEG0ADDR(lp->td_ring)); probe_err_td_ring: iounmap(lp->tx_dma_regs); probe_err_dma_tx: @@ -1133,6 +1133,7 @@ iounmap(lp->eth_regs); iounmap(lp->rx_dma_regs); iounmap(lp->tx_dma_regs); + kfree((struct dma_desc *)KSEG0ADDR(lp->td_ring)); unregister_netdev(bif->dev); free_netdev(bif->dev); --- linux-azure-5.8-5.8.0.orig/drivers/net/ethernet/lantiq_xrx200.c +++ linux-azure-5.8-5.8.0/drivers/net/ethernet/lantiq_xrx200.c @@ -230,8 +230,8 @@ } if (rx < budget) { - napi_complete(&ch->napi); - ltq_dma_enable_irq(&ch->dma); + if (napi_complete_done(&ch->napi, rx)) + ltq_dma_enable_irq(&ch->dma); } return rx; @@ -245,6 +245,7 @@ int pkts = 0; int bytes = 0; + netif_tx_lock(net_dev); while (pkts < budget) { struct ltq_dma_desc *desc = &ch->dma.desc_base[ch->tx_free]; @@ -268,9 +269,13 @@ net_dev->stats.tx_bytes += bytes; netdev_completed_queue(ch->priv->net_dev, pkts, bytes); + netif_tx_unlock(net_dev); + if (netif_queue_stopped(net_dev)) + netif_wake_queue(net_dev); + if (pkts < budget) { - napi_complete(&ch->napi); - ltq_dma_enable_irq(&ch->dma); + if (napi_complete_done(&ch->napi, pkts)) + ltq_dma_enable_irq(&ch->dma); } return pkts; @@ -342,10 +347,12 @@ { struct xrx200_chan *ch = ptr; - ltq_dma_disable_irq(&ch->dma); - ltq_dma_ack_irq(&ch->dma); + if (napi_schedule_prep(&ch->napi)) { + __napi_schedule(&ch->napi); + ltq_dma_disable_irq(&ch->dma); + } - napi_schedule(&ch->napi); + ltq_dma_ack_irq(&ch->dma); return IRQ_HANDLED; } @@ -499,7 +506,7 @@ /* setup NAPI */ netif_napi_add(net_dev, &priv->chan_rx.napi, xrx200_poll_rx, 32); - netif_napi_add(net_dev, &priv->chan_tx.napi, xrx200_tx_housekeeping, 32); + netif_tx_napi_add(net_dev, &priv->chan_tx.napi, xrx200_tx_housekeeping, 32); platform_set_drvdata(pdev, priv); --- linux-azure-5.8-5.8.0.orig/drivers/net/ethernet/marvell/mvneta.c +++ linux-azure-5.8-5.8.0/drivers/net/ethernet/marvell/mvneta.c @@ -3372,27 +3372,20 @@ txq->last_desc = txq->size - 1; txq->buf = kmalloc_array(txq->size, sizeof(*txq->buf), GFP_KERNEL); - if (!txq->buf) { - dma_free_coherent(pp->dev->dev.parent, - txq->size * MVNETA_DESC_ALIGNED_SIZE, - txq->descs, txq->descs_phys); + if (!txq->buf) return -ENOMEM; - } /* Allocate DMA buffers for TSO MAC/IP/TCP headers */ txq->tso_hdrs = dma_alloc_coherent(pp->dev->dev.parent, txq->size * TSO_HEADER_SIZE, &txq->tso_hdrs_phys, GFP_KERNEL); - if (!txq->tso_hdrs) { - kfree(txq->buf); - dma_free_coherent(pp->dev->dev.parent, - txq->size * MVNETA_DESC_ALIGNED_SIZE, - txq->descs, txq->descs_phys); + if (!txq->tso_hdrs) return -ENOMEM; - } /* Setup XPS mapping */ - if (txq_number > 1) + if (pp->neta_armada3700) + cpu = 0; + else if (txq_number > 1) cpu = txq->id % num_present_cpus(); else cpu = pp->rxq_def % num_present_cpus(); @@ -4159,6 +4152,11 @@ node_online); struct mvneta_pcpu_port *port = per_cpu_ptr(pp->ports, cpu); + /* Armada 3700's per-cpu interrupt for mvneta is broken, all interrupts + * are routed to CPU 0, so we don't need all the cpu-hotplug support + */ + if (pp->neta_armada3700) + return 0; spin_lock(&pp->lock); /* @@ -4381,7 +4379,7 @@ struct bpf_prog *old_prog; if (prog && dev->mtu > MVNETA_MAX_RX_BUF_SIZE) { - NL_SET_ERR_MSG_MOD(extack, "Jumbo frames not supported on XDP"); + NL_SET_ERR_MSG_MOD(extack, "MTU too large for XDP"); return -EOPNOTSUPP; } @@ -5209,7 +5207,7 @@ err = mvneta_port_power_up(pp, pp->phy_interface); if (err < 0) { dev_err(&pdev->dev, "can't power up port\n"); - return err; + goto err_netdev; } /* Armada3700 network controller does not support per-cpu --- linux-azure-5.8-5.8.0.orig/drivers/net/ethernet/marvell/mvpp2/mvpp2_main.c +++ linux-azure-5.8-5.8.0/drivers/net/ethernet/marvell/mvpp2/mvpp2_main.c @@ -1132,7 +1132,7 @@ regmap_read(priv->sysctrl_base, GENCONF_CTRL0, &val); if (port->gop_id == 2) - val |= GENCONF_CTRL0_PORT0_RGMII | GENCONF_CTRL0_PORT1_RGMII; + val |= GENCONF_CTRL0_PORT0_RGMII; else if (port->gop_id == 3) val |= GENCONF_CTRL0_PORT1_RGMII_MII; regmap_write(priv->sysctrl_base, GENCONF_CTRL0, val); @@ -2164,17 +2164,18 @@ static void mvpp2_tx_pkts_coal_set(struct mvpp2_port *port, struct mvpp2_tx_queue *txq) { - unsigned int thread = mvpp2_cpu_to_thread(port->priv, get_cpu()); + unsigned int thread; u32 val; if (txq->done_pkts_coal > MVPP2_TXQ_THRESH_MASK) txq->done_pkts_coal = MVPP2_TXQ_THRESH_MASK; val = (txq->done_pkts_coal << MVPP2_TXQ_THRESH_OFFSET); - mvpp2_thread_write(port->priv, thread, MVPP2_TXQ_NUM_REG, txq->id); - mvpp2_thread_write(port->priv, thread, MVPP2_TXQ_THRESH_REG, val); - - put_cpu(); + /* PKT-coalescing registers are per-queue + per-thread */ + for (thread = 0; thread < MVPP2_MAX_THREADS; thread++) { + mvpp2_thread_write(port->priv, thread, MVPP2_TXQ_NUM_REG, txq->id); + mvpp2_thread_write(port->priv, thread, MVPP2_TXQ_THRESH_REG, val); + } } static u32 mvpp2_usec_to_cycles(u32 usec, unsigned long clk_hz) @@ -2981,6 +2982,7 @@ err = mvpp2_rx_refill(port, bm_pool, pool); if (err) { netdev_err(port->dev, "failed to refill BM pools\n"); + dev_kfree_skb_any(skb); goto err_drop_frame; } @@ -3706,6 +3708,7 @@ if (!valid) { netdev_err(port->dev, "invalid configuration: no dt or link IRQ"); + err = -ENOENT; goto err_free_irq; } @@ -4555,7 +4558,7 @@ struct mvpp2 *priv = port->priv; struct mvpp2_txq_pcpu *txq_pcpu; unsigned int thread; - int queue, err; + int queue, err, val; /* Checks for hardware constraints */ if (port->first_rxq + port->nrxqs > @@ -4569,6 +4572,18 @@ mvpp2_egress_disable(port); mvpp2_port_disable(port); + if (mvpp2_is_xlg(port->phy_interface)) { + val = readl(port->base + MVPP22_XLG_CTRL0_REG); + val &= ~MVPP22_XLG_CTRL0_FORCE_LINK_PASS; + val |= MVPP22_XLG_CTRL0_FORCE_LINK_DOWN; + writel(val, port->base + MVPP22_XLG_CTRL0_REG); + } else { + val = readl(port->base + MVPP2_GMAC_AUTONEG_CONFIG); + val &= ~MVPP2_GMAC_FORCE_LINK_PASS; + val |= MVPP2_GMAC_FORCE_LINK_DOWN; + writel(val, port->base + MVPP2_GMAC_AUTONEG_CONFIG); + } + port->tx_time_coal = MVPP2_TXDONE_COAL_USEC; port->txqs = devm_kcalloc(dev, port->ntxqs, sizeof(*port->txqs), @@ -4756,12 +4771,16 @@ eth_hw_addr_random(dev); } +static struct mvpp2_port *mvpp2_phylink_to_port(struct phylink_config *config) +{ + return container_of(config, struct mvpp2_port, phylink_config); +} + static void mvpp2_phylink_validate(struct phylink_config *config, unsigned long *supported, struct phylink_link_state *state) { - struct mvpp2_port *port = container_of(config, struct mvpp2_port, - phylink_config); + struct mvpp2_port *port = mvpp2_phylink_to_port(config); __ETHTOOL_DECLARE_LINK_MODE_MASK(mask) = { 0, }; /* Invalid combinations */ @@ -4784,8 +4803,6 @@ phylink_set(mask, Autoneg); phylink_set_port_modes(mask); - phylink_set(mask, Pause); - phylink_set(mask, Asym_Pause); switch (state->interface) { case PHY_INTERFACE_MODE_10GBASER: @@ -4902,8 +4919,7 @@ static void mvpp2_phylink_mac_pcs_get_state(struct phylink_config *config, struct phylink_link_state *state) { - struct mvpp2_port *port = container_of(config, struct mvpp2_port, - phylink_config); + struct mvpp2_port *port = mvpp2_phylink_to_port(config); if (port->priv->hw_version == MVPP22 && port->gop_id == 0) { u32 mode = readl(port->base + MVPP22_XLG_CTRL3_REG); @@ -4920,8 +4936,7 @@ static void mvpp2_mac_an_restart(struct phylink_config *config) { - struct mvpp2_port *port = container_of(config, struct mvpp2_port, - phylink_config); + struct mvpp2_port *port = mvpp2_phylink_to_port(config); u32 val = readl(port->base + MVPP2_GMAC_AUTONEG_CONFIG); writel(val | MVPP2_GMAC_IN_BAND_RESTART_AN, @@ -5094,13 +5109,12 @@ static void mvpp2_mac_config(struct phylink_config *config, unsigned int mode, const struct phylink_link_state *state) { - struct net_device *dev = to_net_dev(config->dev); - struct mvpp2_port *port = netdev_priv(dev); + struct mvpp2_port *port = mvpp2_phylink_to_port(config); bool change_interface = port->phy_interface != state->interface; /* Check for invalid configuration */ if (mvpp2_is_xlg(state->interface) && port->gop_id != 0) { - netdev_err(dev, "Invalid mode on %s\n", dev->name); + netdev_err(port->dev, "Invalid mode on %s\n", port->dev->name); return; } @@ -5140,8 +5154,7 @@ int speed, int duplex, bool tx_pause, bool rx_pause) { - struct net_device *dev = to_net_dev(config->dev); - struct mvpp2_port *port = netdev_priv(dev); + struct mvpp2_port *port = mvpp2_phylink_to_port(config); u32 val; if (mvpp2_is_xlg(interface)) { @@ -5188,14 +5201,13 @@ mvpp2_egress_enable(port); mvpp2_ingress_enable(port); - netif_tx_wake_all_queues(dev); + netif_tx_wake_all_queues(port->dev); } static void mvpp2_mac_link_down(struct phylink_config *config, unsigned int mode, phy_interface_t interface) { - struct net_device *dev = to_net_dev(config->dev); - struct mvpp2_port *port = netdev_priv(dev); + struct mvpp2_port *port = mvpp2_phylink_to_port(config); u32 val; if (!phylink_autoneg_inband(mode)) { @@ -5212,7 +5224,7 @@ } } - netif_tx_stop_all_queues(dev); + netif_tx_stop_all_queues(port->dev); mvpp2_egress_disable(port); mvpp2_ingress_disable(port); --- linux-azure-5.8-5.8.0.orig/drivers/net/ethernet/marvell/mvpp2/mvpp2_prs.c +++ linux-azure-5.8-5.8.0/drivers/net/ethernet/marvell/mvpp2/mvpp2_prs.c @@ -29,16 +29,16 @@ /* Clear entry invalidation bit */ pe->tcam[MVPP2_PRS_TCAM_INV_WORD] &= ~MVPP2_PRS_TCAM_INV_MASK; - /* Write tcam index - indirect access */ - mvpp2_write(priv, MVPP2_PRS_TCAM_IDX_REG, pe->index); - for (i = 0; i < MVPP2_PRS_TCAM_WORDS; i++) - mvpp2_write(priv, MVPP2_PRS_TCAM_DATA_REG(i), pe->tcam[i]); - /* Write sram index - indirect access */ mvpp2_write(priv, MVPP2_PRS_SRAM_IDX_REG, pe->index); for (i = 0; i < MVPP2_PRS_SRAM_WORDS; i++) mvpp2_write(priv, MVPP2_PRS_SRAM_DATA_REG(i), pe->sram[i]); + /* Write tcam index - indirect access */ + mvpp2_write(priv, MVPP2_PRS_TCAM_IDX_REG, pe->index); + for (i = 0; i < MVPP2_PRS_TCAM_WORDS; i++) + mvpp2_write(priv, MVPP2_PRS_TCAM_DATA_REG(i), pe->tcam[i]); + return 0; } @@ -405,6 +405,38 @@ return -EINVAL; } +/* Drop flow control pause frames */ +static void mvpp2_prs_drop_fc(struct mvpp2 *priv) +{ + unsigned char da[ETH_ALEN] = { 0x01, 0x80, 0xC2, 0x00, 0x00, 0x01 }; + struct mvpp2_prs_entry pe; + unsigned int len; + + memset(&pe, 0, sizeof(pe)); + + /* For all ports - drop flow control frames */ + pe.index = MVPP2_PE_FC_DROP; + mvpp2_prs_tcam_lu_set(&pe, MVPP2_PRS_LU_MAC); + + /* Set match on DA */ + len = ETH_ALEN; + while (len--) + mvpp2_prs_tcam_data_byte_set(&pe, len, da[len], 0xff); + + mvpp2_prs_sram_ri_update(&pe, MVPP2_PRS_RI_DROP_MASK, + MVPP2_PRS_RI_DROP_MASK); + + mvpp2_prs_sram_bits_set(&pe, MVPP2_PRS_SRAM_LU_GEN_BIT, 1); + mvpp2_prs_sram_next_lu_set(&pe, MVPP2_PRS_LU_FLOWS); + + /* Mask all ports */ + mvpp2_prs_tcam_port_map_set(&pe, MVPP2_PRS_PORT_MASK); + + /* Update shadow table and hw entry */ + mvpp2_prs_shadow_set(priv, pe.index, MVPP2_PRS_LU_MAC); + mvpp2_prs_hw_write(priv, &pe); +} + /* Enable/disable dropping all mac da's */ static void mvpp2_prs_mac_drop_all_set(struct mvpp2 *priv, int port, bool add) { @@ -1162,6 +1194,7 @@ mvpp2_prs_hw_write(priv, &pe); /* Create dummy entries for drop all and promiscuous modes */ + mvpp2_prs_drop_fc(priv); mvpp2_prs_mac_drop_all_set(priv, 0, false); mvpp2_prs_mac_promisc_set(priv, 0, MVPP2_PRS_L2_UNI_CAST, false); mvpp2_prs_mac_promisc_set(priv, 0, MVPP2_PRS_L2_MULTI_CAST, false); @@ -1647,8 +1680,9 @@ mvpp2_prs_sram_next_lu_set(&pe, MVPP2_PRS_LU_IP6); mvpp2_prs_sram_ri_update(&pe, MVPP2_PRS_RI_L3_IP6, MVPP2_PRS_RI_L3_PROTO_MASK); - /* Skip eth_type + 4 bytes of IPv6 header */ - mvpp2_prs_sram_shift_set(&pe, MVPP2_ETH_TYPE_LEN + 4, + /* Jump to DIP of IPV6 header */ + mvpp2_prs_sram_shift_set(&pe, MVPP2_ETH_TYPE_LEN + 8 + + MVPP2_MAX_L3_ADDR_SIZE, MVPP2_PRS_SRAM_OP_SEL_SHIFT_ADD); /* Set L3 offset */ mvpp2_prs_sram_offset_set(&pe, MVPP2_PRS_SRAM_UDF_TYPE_L3, --- linux-azure-5.8-5.8.0.orig/drivers/net/ethernet/marvell/mvpp2/mvpp2_prs.h +++ linux-azure-5.8-5.8.0/drivers/net/ethernet/marvell/mvpp2/mvpp2_prs.h @@ -129,7 +129,7 @@ #define MVPP2_PE_VID_EDSA_FLTR_DEFAULT (MVPP2_PRS_TCAM_SRAM_SIZE - 7) #define MVPP2_PE_VLAN_DBL (MVPP2_PRS_TCAM_SRAM_SIZE - 6) #define MVPP2_PE_VLAN_NONE (MVPP2_PRS_TCAM_SRAM_SIZE - 5) -/* reserved */ +#define MVPP2_PE_FC_DROP (MVPP2_PRS_TCAM_SRAM_SIZE - 4) #define MVPP2_PE_MAC_MC_PROMISCUOUS (MVPP2_PRS_TCAM_SRAM_SIZE - 3) #define MVPP2_PE_MAC_UC_PROMISCUOUS (MVPP2_PRS_TCAM_SRAM_SIZE - 2) #define MVPP2_PE_MAC_NON_PROMISCUOUS (MVPP2_PRS_TCAM_SRAM_SIZE - 1) --- linux-azure-5.8-5.8.0.orig/drivers/net/ethernet/marvell/octeontx2/af/cgx.c +++ linux-azure-5.8-5.8.0/drivers/net/ethernet/marvell/octeontx2/af/cgx.c @@ -833,8 +833,10 @@ if (!lmac) return -ENOMEM; lmac->name = kcalloc(1, sizeof("cgx_fwi_xxx_yyy"), GFP_KERNEL); - if (!lmac->name) - return -ENOMEM; + if (!lmac->name) { + err = -ENOMEM; + goto err_lmac_free; + } sprintf(lmac->name, "cgx_fwi_%d_%d", cgx->cgx_id, i); lmac->lmac_id = i; lmac->cgx = cgx; @@ -845,7 +847,7 @@ CGX_LMAC_FWI + i * 9), cgx_fwi_event_handler, 0, lmac->name, lmac); if (err) - return err; + goto err_irq; /* Enable interrupt */ cgx_write(cgx, lmac->lmac_id, CGXX_CMRX_INT_ENA_W1S, @@ -857,6 +859,12 @@ } return cgx_lmac_verify_fwi_version(cgx); + +err_irq: + kfree(lmac->name); +err_lmac_free: + kfree(lmac); + return err; } static int cgx_lmac_exit(struct cgx *cgx) --- linux-azure-5.8-5.8.0.orig/drivers/net/ethernet/marvell/octeontx2/af/common.h +++ linux-azure-5.8-5.8.0/drivers/net/ethernet/marvell/octeontx2/af/common.h @@ -43,7 +43,7 @@ void *base; dma_addr_t iova; int alloc_sz; - u8 entry_sz; + u16 entry_sz; u8 align; u32 qsize; }; --- linux-azure-5.8-5.8.0.orig/drivers/net/ethernet/marvell/octeontx2/af/mbox.c +++ linux-azure-5.8-5.8.0/drivers/net/ethernet/marvell/octeontx2/af/mbox.c @@ -17,7 +17,7 @@ static const u16 msgs_offset = ALIGN(sizeof(struct mbox_hdr), MBOX_MSG_ALIGN); -void otx2_mbox_reset(struct otx2_mbox *mbox, int devid) +void __otx2_mbox_reset(struct otx2_mbox *mbox, int devid) { void *hw_mbase = mbox->hwbase + (devid * MBOX_SIZE); struct otx2_mbox_dev *mdev = &mbox->dev[devid]; @@ -26,13 +26,21 @@ tx_hdr = hw_mbase + mbox->tx_start; rx_hdr = hw_mbase + mbox->rx_start; - spin_lock(&mdev->mbox_lock); mdev->msg_size = 0; mdev->rsp_size = 0; tx_hdr->num_msgs = 0; tx_hdr->msg_size = 0; rx_hdr->num_msgs = 0; rx_hdr->msg_size = 0; +} +EXPORT_SYMBOL(__otx2_mbox_reset); + +void otx2_mbox_reset(struct otx2_mbox *mbox, int devid) +{ + struct otx2_mbox_dev *mdev = &mbox->dev[devid]; + + spin_lock(&mdev->mbox_lock); + __otx2_mbox_reset(mbox, devid); spin_unlock(&mdev->mbox_lock); } EXPORT_SYMBOL(otx2_mbox_reset); --- linux-azure-5.8-5.8.0.orig/drivers/net/ethernet/marvell/octeontx2/af/mbox.h +++ linux-azure-5.8-5.8.0/drivers/net/ethernet/marvell/octeontx2/af/mbox.h @@ -93,6 +93,7 @@ }; void otx2_mbox_reset(struct otx2_mbox *mbox, int devid); +void __otx2_mbox_reset(struct otx2_mbox *mbox, int devid); void otx2_mbox_destroy(struct otx2_mbox *mbox); int otx2_mbox_init(struct otx2_mbox *mbox, void __force *hwbase, struct pci_dev *pdev, void __force *reg_base, --- linux-azure-5.8-5.8.0.orig/drivers/net/ethernet/marvell/octeontx2/af/npc.h +++ linux-azure-5.8-5.8.0/drivers/net/ethernet/marvell/octeontx2/af/npc.h @@ -77,6 +77,8 @@ NPC_LT_LD_ICMP, NPC_LT_LD_SCTP, NPC_LT_LD_ICMP6, + NPC_LT_LD_CUSTOM0, + NPC_LT_LD_CUSTOM1, NPC_LT_LD_IGMP = 8, NPC_LT_LD_ESP, NPC_LT_LD_AH, @@ -85,8 +87,6 @@ NPC_LT_LD_NSH, NPC_LT_LD_TU_MPLS_IN_NSH, NPC_LT_LD_TU_MPLS_IN_IP, - NPC_LT_LD_CUSTOM0 = 0xE, - NPC_LT_LD_CUSTOM1 = 0xF, }; enum npc_kpu_le_ltype { --- linux-azure-5.8-5.8.0.orig/drivers/net/ethernet/marvell/octeontx2/af/rvu.h +++ linux-azure-5.8-5.8.0/drivers/net/ethernet/marvell/octeontx2/af/rvu.h @@ -463,6 +463,7 @@ int rvu_get_nixlf_count(struct rvu *rvu); void rvu_nix_lf_teardown(struct rvu *rvu, u16 pcifunc, int blkaddr, int npalf); int nix_get_nixlf(struct rvu *rvu, u16 pcifunc, int *nixlf, int *nix_blkaddr); +int nix_update_bcast_mce_list(struct rvu *rvu, u16 pcifunc, bool add); /* NPC APIs */ int rvu_npc_init(struct rvu *rvu); @@ -477,7 +478,7 @@ void rvu_npc_enable_promisc_entry(struct rvu *rvu, u16 pcifunc, int nixlf); void rvu_npc_install_bcast_match_entry(struct rvu *rvu, u16 pcifunc, int nixlf, u64 chan); -void rvu_npc_disable_bcast_entry(struct rvu *rvu, u16 pcifunc); +void rvu_npc_enable_bcast_entry(struct rvu *rvu, u16 pcifunc, bool enable); int rvu_npc_update_rxvlan(struct rvu *rvu, u16 pcifunc, int nixlf); void rvu_npc_disable_mcam_entries(struct rvu *rvu, u16 pcifunc, int nixlf); void rvu_npc_disable_default_entries(struct rvu *rvu, u16 pcifunc, int nixlf); --- linux-azure-5.8-5.8.0.orig/drivers/net/ethernet/marvell/octeontx2/af/rvu_cgx.c +++ linux-azure-5.8-5.8.0/drivers/net/ethernet/marvell/octeontx2/af/rvu_cgx.c @@ -452,6 +452,9 @@ int pf = rvu_get_pf(req->hdr.pcifunc); u8 cgx_id, lmac_id; + if (!is_cgx_config_permitted(rvu, req->hdr.pcifunc)) + return -EPERM; + rvu_get_cgx_lmac_id(rvu->pf2cgxlmac_map[pf], &cgx_id, &lmac_id); cgx_lmac_addr_set(cgx_id, lmac_id, req->mac_addr); @@ -468,6 +471,9 @@ int rc = 0, i; u64 cfg; + if (!is_cgx_config_permitted(rvu, req->hdr.pcifunc)) + return -EPERM; + rvu_get_cgx_lmac_id(rvu->pf2cgxlmac_map[pf], &cgx_id, &lmac_id); rsp->hdr.rc = rc; --- linux-azure-5.8-5.8.0.orig/drivers/net/ethernet/marvell/octeontx2/af/rvu_debugfs.c +++ linux-azure-5.8-5.8.0/drivers/net/ethernet/marvell/octeontx2/af/rvu_debugfs.c @@ -332,7 +332,7 @@ u16 pcifunc; int ret, lf; - cmd_buf = memdup_user(buffer, count); + cmd_buf = memdup_user(buffer, count + 1); if (IS_ERR(cmd_buf)) return -ENOMEM; --- linux-azure-5.8-5.8.0.orig/drivers/net/ethernet/marvell/octeontx2/af/rvu_nix.c +++ linux-azure-5.8-5.8.0/drivers/net/ethernet/marvell/octeontx2/af/rvu_nix.c @@ -17,7 +17,6 @@ #include "npc.h" #include "cgx.h" -static int nix_update_bcast_mce_list(struct rvu *rvu, u16 pcifunc, bool add); static int rvu_nix_get_bpid(struct rvu *rvu, struct nix_bp_cfg_req *req, int type, int chan_id); @@ -2020,7 +2019,7 @@ return 0; } -static int nix_update_bcast_mce_list(struct rvu *rvu, u16 pcifunc, bool add) +int nix_update_bcast_mce_list(struct rvu *rvu, u16 pcifunc, bool add) { int err = 0, idx, next_idx, last_idx; struct nix_mce_list *mce_list; @@ -2065,7 +2064,7 @@ /* Disable MCAM entry in NPC */ if (!mce_list->count) { - rvu_npc_disable_bcast_entry(rvu, pcifunc); + rvu_npc_enable_bcast_entry(rvu, pcifunc, false); goto end; } --- linux-azure-5.8-5.8.0.orig/drivers/net/ethernet/marvell/octeontx2/af/rvu_npc.c +++ linux-azure-5.8-5.8.0/drivers/net/ethernet/marvell/octeontx2/af/rvu_npc.c @@ -530,7 +530,7 @@ NIX_INTF_RX, &entry, true); } -void rvu_npc_disable_bcast_entry(struct rvu *rvu, u16 pcifunc) +void rvu_npc_enable_bcast_entry(struct rvu *rvu, u16 pcifunc, bool enable) { struct npc_mcam *mcam = &rvu->hw->mcam; int blkaddr, index; @@ -543,7 +543,7 @@ pcifunc = pcifunc & ~RVU_PFVF_FUNC_MASK; index = npc_get_nixlf_mcam_index(mcam, pcifunc, 0, NIXLF_BCAST_ENTRY); - npc_enable_mcam_entry(rvu, mcam, blkaddr, index, false); + npc_enable_mcam_entry(rvu, mcam, blkaddr, index, enable); } void rvu_npc_update_flowkey_alg_idx(struct rvu *rvu, u16 pcifunc, int nixlf, @@ -622,23 +622,35 @@ nixlf, NIXLF_UCAST_ENTRY); npc_enable_mcam_entry(rvu, mcam, blkaddr, index, enable); - /* For PF, ena/dis promisc and bcast MCAM match entries */ - if (pcifunc & RVU_PFVF_FUNC_MASK) + /* For PF, ena/dis promisc and bcast MCAM match entries. + * For VFs add/delete from bcast list when RX multicast + * feature is present. + */ + if (pcifunc & RVU_PFVF_FUNC_MASK && !rvu->hw->cap.nix_rx_multicast) return; /* For bcast, enable/disable only if it's action is not * packet replication, incase if action is replication - * then this PF's nixlf is removed from bcast replication + * then this PF/VF's nixlf is removed from bcast replication * list. */ - index = npc_get_nixlf_mcam_index(mcam, pcifunc, + index = npc_get_nixlf_mcam_index(mcam, pcifunc & ~RVU_PFVF_FUNC_MASK, nixlf, NIXLF_BCAST_ENTRY); bank = npc_get_bank(mcam, index); *(u64 *)&action = rvu_read64(rvu, blkaddr, NPC_AF_MCAMEX_BANKX_ACTION(index & (mcam->banksize - 1), bank)); - if (action.op != NIX_RX_ACTIONOP_MCAST) + + /* VFs will not have BCAST entry */ + if (action.op != NIX_RX_ACTIONOP_MCAST && + !(pcifunc & RVU_PFVF_FUNC_MASK)) { npc_enable_mcam_entry(rvu, mcam, blkaddr, index, enable); + } else { + nix_update_bcast_mce_list(rvu, pcifunc, enable); + /* Enable PF's BCAST entry for packet replication */ + rvu_npc_enable_bcast_entry(rvu, pcifunc, enable); + } + if (enable) rvu_npc_enable_promisc_entry(rvu, pcifunc, nixlf); else --- linux-azure-5.8-5.8.0.orig/drivers/net/ethernet/marvell/octeontx2/nic/otx2_common.c +++ linux-azure-5.8-5.8.0/drivers/net/ethernet/marvell/octeontx2/nic/otx2_common.c @@ -384,10 +384,11 @@ dma_addr_t iova; u8 *buf; - buf = napi_alloc_frag(pool->rbsize); + buf = napi_alloc_frag(pool->rbsize + OTX2_ALIGN); if (unlikely(!buf)) return -ENOMEM; + buf = PTR_ALIGN(buf, OTX2_ALIGN); iova = dma_map_single_attrs(pfvf->dev, buf, pool->rbsize, DMA_FROM_DEVICE, DMA_ATTR_SKIP_CPU_SYNC); if (unlikely(dma_mapping_error(pfvf->dev, iova))) { --- linux-azure-5.8-5.8.0.orig/drivers/net/ethernet/marvell/octeontx2/nic/otx2_pf.c +++ linux-azure-5.8-5.8.0/drivers/net/ethernet/marvell/octeontx2/nic/otx2_pf.c @@ -370,8 +370,8 @@ dst_mbox = &pf->mbox; dst_size = dst_mbox->mbox.tx_size - ALIGN(sizeof(*mbox_hdr), MBOX_MSG_ALIGN); - /* Check if msgs fit into destination area */ - if (mbox_hdr->msg_size > dst_size) + /* Check if msgs fit into destination area and has valid size */ + if (mbox_hdr->msg_size > dst_size || !mbox_hdr->msg_size) return -EINVAL; dst_mdev = &dst_mbox->mbox.dev[0]; @@ -526,10 +526,10 @@ end: offset = mbox->rx_start + msg->next_msgoff; + if (mdev->msgs_acked == (vf_mbox->up_num_msgs - 1)) + __otx2_mbox_reset(mbox, 0); mdev->msgs_acked++; } - - otx2_mbox_reset(mbox, vf_idx); } static irqreturn_t otx2_pfvf_mbox_intr_handler(int irq, void *pf_irq) @@ -803,10 +803,11 @@ msg = (struct mbox_msghdr *)(mdev->mbase + offset); otx2_process_pfaf_mbox_msg(pf, msg); offset = mbox->rx_start + msg->next_msgoff; + if (mdev->msgs_acked == (af_mbox->num_msgs - 1)) + __otx2_mbox_reset(mbox, 0); mdev->msgs_acked++; } - otx2_mbox_reset(mbox, 0); } static void otx2_handle_link_event(struct otx2_nic *pf) @@ -1560,10 +1561,13 @@ err = otx2_rxtx_enable(pf, true); if (err) - goto err_free_cints; + goto err_tx_stop_queues; return 0; +err_tx_stop_queues: + netif_tx_stop_all_queues(netdev); + netif_carrier_off(netdev); err_free_cints: otx2_free_cints(pf, qidx); vec = pci_irq_vector(pf->pdev, --- linux-azure-5.8-5.8.0.orig/drivers/net/ethernet/marvell/octeontx2/nic/otx2_txrx.c +++ linux-azure-5.8-5.8.0/drivers/net/ethernet/marvell/octeontx2/nic/otx2_txrx.c @@ -524,6 +524,7 @@ sqe_hdr->ol3type = NIX_SENDL3TYPE_IP4_CKSUM; } else if (skb->protocol == htons(ETH_P_IPV6)) { proto = ipv6_hdr(skb)->nexthdr; + sqe_hdr->ol3type = NIX_SENDL3TYPE_IP6; } if (proto == IPPROTO_TCP) --- linux-azure-5.8-5.8.0.orig/drivers/net/ethernet/marvell/octeontx2/nic/otx2_vf.c +++ linux-azure-5.8-5.8.0/drivers/net/ethernet/marvell/octeontx2/nic/otx2_vf.c @@ -99,10 +99,10 @@ msg = (struct mbox_msghdr *)(mdev->mbase + offset); otx2vf_process_vfaf_mbox_msg(af_mbox->pfvf, msg); offset = mbox->rx_start + msg->next_msgoff; + if (mdev->msgs_acked == (af_mbox->num_msgs - 1)) + __otx2_mbox_reset(mbox, 0); mdev->msgs_acked++; } - - otx2_mbox_reset(mbox, 0); } static int otx2vf_process_mbox_msg_up(struct otx2_nic *vf, --- linux-azure-5.8-5.8.0.orig/drivers/net/ethernet/mediatek/Kconfig +++ linux-azure-5.8-5.8.0/drivers/net/ethernet/mediatek/Kconfig @@ -17,6 +17,7 @@ config NET_MEDIATEK_STAR_EMAC tristate "MediaTek STAR Ethernet MAC support" select PHYLIB + select REGMAP_MMIO help This driver supports the ethernet MAC IP first used on MediaTek MT85** SoCs. --- linux-azure-5.8-5.8.0.orig/drivers/net/ethernet/mediatek/mtk_star_emac.c +++ linux-azure-5.8-5.8.0/drivers/net/ethernet/mediatek/mtk_star_emac.c @@ -966,6 +966,7 @@ mtk_star_adjust_link, 0, priv->phy_intf); if (!priv->phydev) { netdev_err(ndev, "failed to connect to PHY\n"); + ret = -ENODEV; goto err_free_irq; } @@ -1053,7 +1054,7 @@ err_drop_packet: dev_kfree_skb(skb); ndev->stats.tx_dropped++; - return NETDEV_TX_BUSY; + return NETDEV_TX_OK; } /* Returns the number of bytes sent or a negative number on the first --- linux-azure-5.8-5.8.0.orig/drivers/net/ethernet/mellanox/mlx4/en_netdev.c +++ linux-azure-5.8-5.8.0/drivers/net/ethernet/mellanox/mlx4/en_netdev.c @@ -1378,8 +1378,10 @@ tx_ring->cons, tx_ring->prod); priv->port_stats.tx_timeout++; - en_dbg(DRV, priv, "Scheduling watchdog\n"); - queue_work(mdev->workqueue, &priv->watchdog_task); + if (!test_and_set_bit(MLX4_EN_STATE_FLAG_RESTARTING, &priv->state)) { + en_dbg(DRV, priv, "Scheduling port restart\n"); + queue_work(mdev->workqueue, &priv->restart_task); + } } @@ -1733,6 +1735,7 @@ mlx4_en_deactivate_cq(priv, cq); goto tx_err; } + clear_bit(MLX4_EN_TX_RING_STATE_RECOVERING, &tx_ring->state); if (t != TX_XDP) { tx_ring->tx_queue = netdev_get_tx_queue(dev, i); tx_ring->recycle_ring = NULL; @@ -1829,6 +1832,7 @@ local_bh_enable(); } + clear_bit(MLX4_EN_STATE_FLAG_RESTARTING, &priv->state); netif_tx_start_all_queues(dev); netif_device_attach(dev); @@ -1999,7 +2003,7 @@ static void mlx4_en_restart(struct work_struct *work) { struct mlx4_en_priv *priv = container_of(work, struct mlx4_en_priv, - watchdog_task); + restart_task); struct mlx4_en_dev *mdev = priv->mdev; struct net_device *dev = priv->dev; @@ -2377,7 +2381,7 @@ if (netif_running(dev)) { mutex_lock(&mdev->state_lock); if (!mdev->device_up) { - /* NIC is probably restarting - let watchdog task reset + /* NIC is probably restarting - let restart task reset * the port */ en_dbg(DRV, priv, "Change MTU called with card down!?\n"); } else { @@ -2386,7 +2390,9 @@ if (err) { en_err(priv, "Failed restarting port:%d\n", priv->port); - queue_work(mdev->workqueue, &priv->watchdog_task); + if (!test_and_set_bit(MLX4_EN_STATE_FLAG_RESTARTING, + &priv->state)) + queue_work(mdev->workqueue, &priv->restart_task); } } mutex_unlock(&mdev->state_lock); @@ -2849,7 +2855,8 @@ if (err) { en_err(priv, "Failed starting port %d for XDP change\n", priv->port); - queue_work(mdev->workqueue, &priv->watchdog_task); + if (!test_and_set_bit(MLX4_EN_STATE_FLAG_RESTARTING, &priv->state)) + queue_work(mdev->workqueue, &priv->restart_task); } } @@ -3246,7 +3253,7 @@ priv->counter_index = MLX4_SINK_COUNTER_INDEX(mdev->dev); spin_lock_init(&priv->stats_lock); INIT_WORK(&priv->rx_mode_task, mlx4_en_do_set_rx_mode); - INIT_WORK(&priv->watchdog_task, mlx4_en_restart); + INIT_WORK(&priv->restart_task, mlx4_en_restart); INIT_WORK(&priv->linkstate_task, mlx4_en_linkstate); INIT_DELAYED_WORK(&priv->stats_task, mlx4_en_do_get_stats); INIT_DELAYED_WORK(&priv->service_task, mlx4_en_service_task); --- linux-azure-5.8-5.8.0.orig/drivers/net/ethernet/mellanox/mlx4/en_rx.c +++ linux-azure-5.8-5.8.0/drivers/net/ethernet/mellanox/mlx4/en_rx.c @@ -943,6 +943,9 @@ bool clean_complete = true; int done; + if (!budget) + return 0; + if (priv->tx_ring_num[TX_XDP]) { xdp_tx_cq = priv->tx_cq[TX_XDP][cq->ring]; if (xdp_tx_cq->xdp_busy) { --- linux-azure-5.8-5.8.0.orig/drivers/net/ethernet/mellanox/mlx4/en_tx.c +++ linux-azure-5.8-5.8.0/drivers/net/ethernet/mellanox/mlx4/en_tx.c @@ -350,7 +350,7 @@ .dma = tx_info->map0_dma, }; - if (!mlx4_en_rx_recycle(ring->recycle_ring, &frame)) { + if (!napi_mode || !mlx4_en_rx_recycle(ring->recycle_ring, &frame)) { dma_unmap_page(priv->ddev, tx_info->map0_dma, PAGE_SIZE, priv->dma_dir); put_page(tx_info->page); @@ -392,6 +392,35 @@ return cnt; } +static void mlx4_en_handle_err_cqe(struct mlx4_en_priv *priv, struct mlx4_err_cqe *err_cqe, + u16 cqe_index, struct mlx4_en_tx_ring *ring) +{ + struct mlx4_en_dev *mdev = priv->mdev; + struct mlx4_en_tx_info *tx_info; + struct mlx4_en_tx_desc *tx_desc; + u16 wqe_index; + int desc_size; + + en_err(priv, "CQE error - cqn 0x%x, ci 0x%x, vendor syndrome: 0x%x syndrome: 0x%x\n", + ring->sp_cqn, cqe_index, err_cqe->vendor_err_syndrome, err_cqe->syndrome); + print_hex_dump(KERN_WARNING, "", DUMP_PREFIX_OFFSET, 16, 1, err_cqe, sizeof(*err_cqe), + false); + + wqe_index = be16_to_cpu(err_cqe->wqe_index) & ring->size_mask; + tx_info = &ring->tx_info[wqe_index]; + desc_size = tx_info->nr_txbb << LOG_TXBB_SIZE; + en_err(priv, "Related WQE - qpn 0x%x, wqe index 0x%x, wqe size 0x%x\n", ring->qpn, + wqe_index, desc_size); + tx_desc = ring->buf + (wqe_index << LOG_TXBB_SIZE); + print_hex_dump(KERN_WARNING, "", DUMP_PREFIX_OFFSET, 16, 1, tx_desc, desc_size, false); + + if (test_and_set_bit(MLX4_EN_STATE_FLAG_RESTARTING, &priv->state)) + return; + + en_err(priv, "Scheduling port restart\n"); + queue_work(mdev->workqueue, &priv->restart_task); +} + int mlx4_en_process_tx_cq(struct net_device *dev, struct mlx4_en_cq *cq, int napi_budget) { @@ -438,13 +467,10 @@ dma_rmb(); if (unlikely((cqe->owner_sr_opcode & MLX4_CQE_OPCODE_MASK) == - MLX4_CQE_OPCODE_ERROR)) { - struct mlx4_err_cqe *cqe_err = (struct mlx4_err_cqe *)cqe; - - en_err(priv, "CQE error - vendor syndrome: 0x%x syndrome: 0x%x\n", - cqe_err->vendor_err_syndrome, - cqe_err->syndrome); - } + MLX4_CQE_OPCODE_ERROR)) + if (!test_and_set_bit(MLX4_EN_TX_RING_STATE_RECOVERING, &ring->state)) + mlx4_en_handle_err_cqe(priv, (struct mlx4_err_cqe *)cqe, index, + ring); /* Skip over last polled CQE */ new_index = be16_to_cpu(cqe->wqe_index) & size_mask; --- linux-azure-5.8-5.8.0.orig/drivers/net/ethernet/mellanox/mlx4/fw.c +++ linux-azure-5.8-5.8.0/drivers/net/ethernet/mellanox/mlx4/fw.c @@ -1864,8 +1864,8 @@ #define INIT_HCA_LOG_RD_OFFSET (INIT_HCA_QPC_OFFSET + 0x77) #define INIT_HCA_MCAST_OFFSET 0x0c0 #define INIT_HCA_MC_BASE_OFFSET (INIT_HCA_MCAST_OFFSET + 0x00) -#define INIT_HCA_LOG_MC_ENTRY_SZ_OFFSET (INIT_HCA_MCAST_OFFSET + 0x12) -#define INIT_HCA_LOG_MC_HASH_SZ_OFFSET (INIT_HCA_MCAST_OFFSET + 0x16) +#define INIT_HCA_LOG_MC_ENTRY_SZ_OFFSET (INIT_HCA_MCAST_OFFSET + 0x13) +#define INIT_HCA_LOG_MC_HASH_SZ_OFFSET (INIT_HCA_MCAST_OFFSET + 0x17) #define INIT_HCA_UC_STEERING_OFFSET (INIT_HCA_MCAST_OFFSET + 0x18) #define INIT_HCA_LOG_MC_TABLE_SZ_OFFSET (INIT_HCA_MCAST_OFFSET + 0x1b) #define INIT_HCA_DEVICE_MANAGED_FLOW_STEERING_EN 0x6 @@ -1873,7 +1873,7 @@ #define INIT_HCA_DRIVER_VERSION_SZ 0x40 #define INIT_HCA_FS_PARAM_OFFSET 0x1d0 #define INIT_HCA_FS_BASE_OFFSET (INIT_HCA_FS_PARAM_OFFSET + 0x00) -#define INIT_HCA_FS_LOG_ENTRY_SZ_OFFSET (INIT_HCA_FS_PARAM_OFFSET + 0x12) +#define INIT_HCA_FS_LOG_ENTRY_SZ_OFFSET (INIT_HCA_FS_PARAM_OFFSET + 0x13) #define INIT_HCA_FS_A0_OFFSET (INIT_HCA_FS_PARAM_OFFSET + 0x18) #define INIT_HCA_FS_LOG_TABLE_SZ_OFFSET (INIT_HCA_FS_PARAM_OFFSET + 0x1b) #define INIT_HCA_FS_ETH_BITS_OFFSET (INIT_HCA_FS_PARAM_OFFSET + 0x21) --- linux-azure-5.8-5.8.0.orig/drivers/net/ethernet/mellanox/mlx4/fw.h +++ linux-azure-5.8-5.8.0/drivers/net/ethernet/mellanox/mlx4/fw.h @@ -182,8 +182,8 @@ u64 cmpt_base; u64 mtt_base; u64 global_caps; - u16 log_mc_entry_sz; - u16 log_mc_hash_sz; + u8 log_mc_entry_sz; + u8 log_mc_hash_sz; u16 hca_core_clock; /* Internal Clock Frequency (in MHz) */ u8 log_num_qps; u8 log_num_srqs; --- linux-azure-5.8-5.8.0.orig/drivers/net/ethernet/mellanox/mlx4/mlx4_en.h +++ linux-azure-5.8-5.8.0/drivers/net/ethernet/mellanox/mlx4/mlx4_en.h @@ -271,6 +271,10 @@ } buf[MLX4_EN_CACHE_SIZE]; }; +enum { + MLX4_EN_TX_RING_STATE_RECOVERING, +}; + struct mlx4_en_priv; struct mlx4_en_tx_ring { @@ -317,6 +321,7 @@ * Only queue_stopped might be used if BQL is not properly working. */ unsigned long queue_stopped; + unsigned long state; struct mlx4_hwq_resources sp_wqres; struct mlx4_qp sp_qp; struct mlx4_qp_context sp_context; @@ -530,6 +535,10 @@ struct mutex mutex; /* for mutual access to stats bitmap */ }; +enum { + MLX4_EN_STATE_FLAG_RESTARTING, +}; + struct mlx4_en_priv { struct mlx4_en_dev *mdev; struct mlx4_en_port_profile *prof; @@ -595,7 +604,7 @@ struct mlx4_en_cq *rx_cq[MAX_RX_RINGS]; struct mlx4_qp drop_qp; struct work_struct rx_mode_task; - struct work_struct watchdog_task; + struct work_struct restart_task; struct work_struct linkstate_task; struct delayed_work stats_task; struct delayed_work service_task; @@ -643,6 +652,7 @@ u32 pflags; u8 rss_key[MLX4_EN_RSS_KEY_SIZE]; u8 rss_hash_fn; + unsigned long state; }; enum mlx4_en_wol { --- linux-azure-5.8-5.8.0.orig/drivers/net/ethernet/mellanox/mlx4/mr.c +++ linux-azure-5.8-5.8.0/drivers/net/ethernet/mellanox/mlx4/mr.c @@ -114,7 +114,7 @@ goto err_out; for (i = 0; i <= buddy->max_order; ++i) { - s = BITS_TO_LONGS(1 << (buddy->max_order - i)); + s = BITS_TO_LONGS(1UL << (buddy->max_order - i)); buddy->bits[i] = kvmalloc_array(s, sizeof(long), GFP_KERNEL | __GFP_ZERO); if (!buddy->bits[i]) goto err_out_free; --- linux-azure-5.8-5.8.0.orig/drivers/net/ethernet/mellanox/mlx4/resource_tracker.c +++ linux-azure-5.8-5.8.0/drivers/net/ethernet/mellanox/mlx4/resource_tracker.c @@ -4986,6 +4986,7 @@ if (!fs_rule->mirr_mbox) { mlx4_err(dev, "rule mirroring mailbox is null\n"); + mlx4_free_cmd_mailbox(dev, mailbox); return -EINVAL; } memcpy(mailbox->buf, fs_rule->mirr_mbox, fs_rule->mirr_mbox_size); --- linux-azure-5.8-5.8.0.orig/drivers/net/ethernet/mellanox/mlx5/core/Kconfig +++ linux-azure-5.8-5.8.0/drivers/net/ethernet/mellanox/mlx5/core/Kconfig @@ -173,6 +173,7 @@ config MLX5_EN_TLS bool "TLS cryptography-offload accelaration" depends on MLX5_CORE_EN + depends on XPS depends on MLX5_FPGA_TLS || MLX5_TLS default y help --- linux-azure-5.8-5.8.0.orig/drivers/net/ethernet/mellanox/mlx5/core/Makefile +++ linux-azure-5.8-5.8.0/drivers/net/ethernet/mellanox/mlx5/core/Makefile @@ -74,7 +74,8 @@ en_accel/ipsec_stats.o mlx5_core-$(CONFIG_MLX5_EN_TLS) += en_accel/tls.o en_accel/tls_rxtx.o en_accel/tls_stats.o \ - en_accel/ktls.o en_accel/ktls_tx.o + en_accel/fs_tcp.o en_accel/ktls.o en_accel/ktls_txrx.o \ + en_accel/ktls_tx.o en_accel/ktls_rx.o mlx5_core-$(CONFIG_MLX5_SW_STEERING) += steering/dr_domain.o steering/dr_table.o \ steering/dr_matcher.o steering/dr_rule.o \ --- linux-azure-5.8-5.8.0.orig/drivers/net/ethernet/mellanox/mlx5/core/accel/tls.h +++ linux-azure-5.8-5.8.0/drivers/net/ethernet/mellanox/mlx5/core/accel/tls.h @@ -43,9 +43,20 @@ u32 *p_key_id); void mlx5_ktls_destroy_key(struct mlx5_core_dev *mdev, u32 key_id); +static inline bool mlx5_accel_is_ktls_tx(struct mlx5_core_dev *mdev) +{ + return MLX5_CAP_GEN(mdev, tls_tx); +} + +static inline bool mlx5_accel_is_ktls_rx(struct mlx5_core_dev *mdev) +{ + return MLX5_CAP_GEN(mdev, tls_rx); +} + static inline bool mlx5_accel_is_ktls_device(struct mlx5_core_dev *mdev) { - if (!MLX5_CAP_GEN(mdev, tls_tx)) + if (!mlx5_accel_is_ktls_tx(mdev) && + !mlx5_accel_is_ktls_rx(mdev)) return false; if (!MLX5_CAP_GEN(mdev, log_max_dek)) @@ -67,6 +78,12 @@ return false; } #else +static inline bool mlx5_accel_is_ktls_tx(struct mlx5_core_dev *mdev) +{ return false; } + +static inline bool mlx5_accel_is_ktls_rx(struct mlx5_core_dev *mdev) +{ return false; } + static inline int mlx5_ktls_create_key(struct mlx5_core_dev *mdev, struct tls_crypto_info *crypto_info, --- linux-azure-5.8-5.8.0.orig/drivers/net/ethernet/mellanox/mlx5/core/cmd.c +++ linux-azure-5.8-5.8.0/drivers/net/ethernet/mellanox/mlx5/core/cmd.c @@ -69,12 +69,10 @@ MLX5_CMD_DELIVERY_STAT_CMD_DESCR_ERR = 0x10, }; -static struct mlx5_cmd_work_ent *alloc_cmd(struct mlx5_cmd *cmd, - struct mlx5_cmd_msg *in, - struct mlx5_cmd_msg *out, - void *uout, int uout_size, - mlx5_cmd_cbk_t cbk, - void *context, int page_queue) +static struct mlx5_cmd_work_ent * +cmd_alloc_ent(struct mlx5_cmd *cmd, struct mlx5_cmd_msg *in, + struct mlx5_cmd_msg *out, void *uout, int uout_size, + mlx5_cmd_cbk_t cbk, void *context, int page_queue) { gfp_t alloc_flags = cbk ? GFP_ATOMIC : GFP_KERNEL; struct mlx5_cmd_work_ent *ent; @@ -83,6 +81,7 @@ if (!ent) return ERR_PTR(-ENOMEM); + ent->idx = -EINVAL; ent->in = in; ent->out = out; ent->uout = uout; @@ -91,10 +90,16 @@ ent->context = context; ent->cmd = cmd; ent->page_queue = page_queue; + refcount_set(&ent->refcnt, 1); return ent; } +static void cmd_free_ent(struct mlx5_cmd_work_ent *ent) +{ + kfree(ent); +} + static u8 alloc_token(struct mlx5_cmd *cmd) { u8 token; @@ -109,7 +114,7 @@ return token; } -static int alloc_ent(struct mlx5_cmd *cmd) +static int cmd_alloc_index(struct mlx5_cmd *cmd) { unsigned long flags; int ret; @@ -123,7 +128,7 @@ return ret < cmd->max_reg_cmds ? ret : -ENOMEM; } -static void free_ent(struct mlx5_cmd *cmd, int idx) +static void cmd_free_index(struct mlx5_cmd *cmd, int idx) { unsigned long flags; @@ -132,6 +137,22 @@ spin_unlock_irqrestore(&cmd->alloc_lock, flags); } +static void cmd_ent_get(struct mlx5_cmd_work_ent *ent) +{ + refcount_inc(&ent->refcnt); +} + +static void cmd_ent_put(struct mlx5_cmd_work_ent *ent) +{ + if (!refcount_dec_and_test(&ent->refcnt)) + return; + + if (ent->idx >= 0) + cmd_free_index(ent->cmd, ent->idx); + + cmd_free_ent(ent); +} + static struct mlx5_cmd_layout *get_inst(struct mlx5_cmd *cmd, int idx) { return cmd->cmd_buf + (idx << cmd->log_stride); @@ -219,11 +240,6 @@ ent->ret = -ETIMEDOUT; } -static void free_cmd(struct mlx5_cmd_work_ent *ent) -{ - kfree(ent); -} - static int verify_signature(struct mlx5_cmd_work_ent *ent) { struct mlx5_cmd_mailbox *next = ent->out->next; @@ -837,11 +853,22 @@ struct mlx5_core_dev *dev = container_of(ent->cmd, struct mlx5_core_dev, cmd); + mlx5_cmd_eq_recover(dev); + + /* Maybe got handled by eq recover ? */ + if (!test_bit(MLX5_CMD_ENT_STATE_PENDING_COMP, &ent->state)) { + mlx5_core_warn(dev, "cmd[%d]: %s(0x%x) Async, recovered after timeout\n", ent->idx, + mlx5_command_str(msg_to_opcode(ent->in)), msg_to_opcode(ent->in)); + goto out; /* phew, already handled */ + } + ent->ret = -ETIMEDOUT; - mlx5_core_warn(dev, "%s(0x%x) timeout. Will cause a leak of a command resource\n", - mlx5_command_str(msg_to_opcode(ent->in)), - msg_to_opcode(ent->in)); + mlx5_core_warn(dev, "cmd[%d]: %s(0x%x) Async, timeout. Will cause a leak of a command resource\n", + ent->idx, mlx5_command_str(msg_to_opcode(ent->in)), msg_to_opcode(ent->in)); mlx5_cmd_comp_handler(dev, 1UL << ent->idx, true); + +out: + cmd_ent_put(ent); /* for the cmd_ent_get() took on schedule delayed work */ } static void free_msg(struct mlx5_core_dev *dev, struct mlx5_cmd_msg *msg); @@ -856,6 +883,25 @@ return cmd->allowed_opcode == opcode; } +static int cmd_alloc_index_retry(struct mlx5_cmd *cmd) +{ + unsigned long alloc_end = jiffies + msecs_to_jiffies(1000); + int idx; + +retry: + idx = cmd_alloc_index(cmd); + if (idx < 0 && time_before(jiffies, alloc_end)) { + /* Index allocation can fail on heavy load of commands. This is a temporary + * situation as the current command already holds the semaphore, meaning that + * another command completion is being handled and it is expected to release + * the entry index soon. + */ + cpu_relax(); + goto retry; + } + return idx; +} + static void cmd_work_handler(struct work_struct *work) { struct mlx5_cmd_work_ent *ent = container_of(work, struct mlx5_cmd_work_ent, work); @@ -873,14 +919,14 @@ sem = ent->page_queue ? &cmd->pages_sem : &cmd->sem; down(sem); if (!ent->page_queue) { - alloc_ret = alloc_ent(cmd); + alloc_ret = cmd_alloc_index_retry(cmd); if (alloc_ret < 0) { mlx5_core_err_rl(dev, "failed to allocate command entry\n"); if (ent->callback) { ent->callback(-EAGAIN, ent->context); mlx5_free_cmd_msg(dev, ent->out); free_msg(dev, ent->in); - free_cmd(ent); + cmd_ent_put(ent); } else { ent->ret = -EAGAIN; complete(&ent->done); @@ -916,8 +962,8 @@ ent->ts1 = ktime_get_ns(); cmd_mode = cmd->mode; - if (ent->callback) - schedule_delayed_work(&ent->cb_timeout_work, cb_timeout); + if (ent->callback && schedule_delayed_work(&ent->cb_timeout_work, cb_timeout)) + cmd_ent_get(ent); set_bit(MLX5_CMD_ENT_STATE_PENDING_COMP, &ent->state); /* Skip sending command to fw if internal error */ @@ -933,13 +979,10 @@ MLX5_SET(mbox_out, ent->out, syndrome, drv_synd); mlx5_cmd_comp_handler(dev, 1UL << ent->idx, true); - /* no doorbell, no need to keep the entry */ - free_ent(cmd, ent->idx); - if (ent->callback) - free_cmd(ent); return; } + cmd_ent_get(ent); /* for the _real_ FW event on completion */ /* ring doorbell after the descriptor is valid */ mlx5_core_dbg(dev, "writing 0x%x to command doorbell\n", 1 << ent->idx); wmb(); @@ -983,6 +1026,35 @@ } } +enum { + MLX5_CMD_TIMEOUT_RECOVER_MSEC = 5 * 1000, +}; + +static void wait_func_handle_exec_timeout(struct mlx5_core_dev *dev, + struct mlx5_cmd_work_ent *ent) +{ + unsigned long timeout = msecs_to_jiffies(MLX5_CMD_TIMEOUT_RECOVER_MSEC); + + mlx5_cmd_eq_recover(dev); + + /* Re-wait on the ent->done after executing the recovery flow. If the + * recovery flow (or any other recovery flow running simultaneously) + * has recovered an EQE, it should cause the entry to be completed by + * the command interface. + */ + if (wait_for_completion_timeout(&ent->done, timeout)) { + mlx5_core_warn(dev, "cmd[%d]: %s(0x%x) recovered after timeout\n", ent->idx, + mlx5_command_str(msg_to_opcode(ent->in)), msg_to_opcode(ent->in)); + return; + } + + mlx5_core_warn(dev, "cmd[%d]: %s(0x%x) No done completion\n", ent->idx, + mlx5_command_str(msg_to_opcode(ent->in)), msg_to_opcode(ent->in)); + + ent->ret = -ETIMEDOUT; + mlx5_cmd_comp_handler(dev, 1UL << ent->idx, true); +} + static int wait_func(struct mlx5_core_dev *dev, struct mlx5_cmd_work_ent *ent) { unsigned long timeout = msecs_to_jiffies(MLX5_CMD_TIMEOUT_MSEC); @@ -994,12 +1066,10 @@ ent->ret = -ECANCELED; goto out_err; } - if (cmd->mode == CMD_MODE_POLLING || ent->polling) { + if (cmd->mode == CMD_MODE_POLLING || ent->polling) wait_for_completion(&ent->done); - } else if (!wait_for_completion_timeout(&ent->done, timeout)) { - ent->ret = -ETIMEDOUT; - mlx5_cmd_comp_handler(dev, 1UL << ent->idx, true); - } + else if (!wait_for_completion_timeout(&ent->done, timeout)) + wait_func_handle_exec_timeout(dev, ent); out_err: err = ent->ret; @@ -1039,11 +1109,16 @@ if (callback && page_queue) return -EINVAL; - ent = alloc_cmd(cmd, in, out, uout, uout_size, callback, context, - page_queue); + ent = cmd_alloc_ent(cmd, in, out, uout, uout_size, + callback, context, page_queue); if (IS_ERR(ent)) return PTR_ERR(ent); + /* put for this ent is when consumed, depending on the use case + * 1) (!callback) blocking flow: by caller after wait_func completes + * 2) (callback) flow: by mlx5_cmd_comp_handler() when ent is handled + */ + ent->token = token; ent->polling = force_polling; @@ -1062,12 +1137,10 @@ } if (callback) - goto out; + goto out; /* mlx5_cmd_comp_handler() will put(ent) */ err = wait_func(dev, ent); - if (err == -ETIMEDOUT) - goto out; - if (err == -ECANCELED) + if (err == -ETIMEDOUT || err == -ECANCELED) goto out_free; ds = ent->ts2 - ent->ts1; @@ -1085,7 +1158,7 @@ *status = ent->status; out_free: - free_cmd(ent); + cmd_ent_put(ent); out: return err; } @@ -1516,14 +1589,19 @@ if (!forced) { mlx5_core_err(dev, "Command completion arrived after timeout (entry idx = %d).\n", ent->idx); - free_ent(cmd, ent->idx); - free_cmd(ent); + cmd_ent_put(ent); } continue; } - if (ent->callback) - cancel_delayed_work(&ent->cb_timeout_work); + if (ent->callback && cancel_delayed_work(&ent->cb_timeout_work)) + cmd_ent_put(ent); /* timeout work was canceled */ + + if (!forced || /* Real FW completion */ + pci_channel_offline(dev->pdev) || /* FW is inaccessible */ + dev->state == MLX5_DEVICE_STATE_INTERNAL_ERROR) + cmd_ent_put(ent); + if (ent->page_queue) sem = &cmd->pages_sem; else @@ -1545,10 +1623,6 @@ ent->ret, deliv_status_to_str(ent->status), ent->status); } - /* only real completion will free the entry slot */ - if (!forced) - free_ent(cmd, ent->idx); - if (ent->callback) { ds = ent->ts2 - ent->ts1; if (ent->op < MLX5_CMD_OP_MAX) { @@ -1576,10 +1650,13 @@ free_msg(dev, ent->in); err = err ? err : ent->status; - if (!forced) - free_cmd(ent); + /* final consumer is done, release ent */ + cmd_ent_put(ent); callback(err, context); } else { + /* release wait_func() so mlx5_cmd_invoke() + * can make the final ent_put() + */ complete(&ent->done); } up(sem); @@ -1589,8 +1666,11 @@ void mlx5_cmd_trigger_completions(struct mlx5_core_dev *dev) { + struct mlx5_cmd *cmd = &dev->cmd; + unsigned long bitmask; unsigned long flags; u64 vector; + int i; /* wait for pending handlers to complete */ mlx5_eq_synchronize_cmd_irq(dev); @@ -1599,11 +1679,20 @@ if (!vector) goto no_trig; + bitmask = vector; + /* we must increment the allocated entries refcount before triggering the completions + * to guarantee pending commands will not get freed in the meanwhile. + * For that reason, it also has to be done inside the alloc_lock. + */ + for_each_set_bit(i, &bitmask, (1 << cmd->log_sz)) + cmd_ent_get(cmd->ent_arr[i]); vector |= MLX5_TRIGGERED_CMD_COMP; spin_unlock_irqrestore(&dev->cmd.alloc_lock, flags); mlx5_core_dbg(dev, "vector 0x%llx\n", vector); mlx5_cmd_comp_handler(dev, vector, true); + for_each_set_bit(i, &bitmask, (1 << cmd->log_sz)) + cmd_ent_put(cmd->ent_arr[i]); return; no_trig: --- linux-azure-5.8-5.8.0.orig/drivers/net/ethernet/mellanox/mlx5/core/devlink.c +++ linux-azure-5.8-5.8.0/drivers/net/ethernet/mellanox/mlx5/core/devlink.c @@ -92,6 +92,12 @@ struct netlink_ext_ack *extack) { struct mlx5_core_dev *dev = devlink_priv(devlink); + + if (mlx5_lag_is_active(dev)) { + NL_SET_ERR_MSG_MOD(extack, "reload is unsupported in Lag mode\n"); + return -EOPNOTSUPP; + } + mlx5_unload_one(dev, false); return 0; @@ -205,6 +211,10 @@ NL_SET_ERR_MSG_MOD(extack, "Device doesn't support RoCE"); return -EOPNOTSUPP; } + if (mlx5_core_is_mp_slave(dev) || mlx5_lag_is_active(dev)) { + NL_SET_ERR_MSG_MOD(extack, "Multi port slave/Lag device can't configure RoCE"); + return -EOPNOTSUPP; + } return 0; } --- linux-azure-5.8-5.8.0.orig/drivers/net/ethernet/mellanox/mlx5/core/en.h +++ linux-azure-5.8-5.8.0/drivers/net/ethernet/mellanox/mlx5/core/en.h @@ -90,7 +90,12 @@ #define MLX5_MPWRQ_PAGES_PER_WQE BIT(MLX5_MPWRQ_WQE_PAGE_ORDER) #define MLX5_MTT_OCTW(npages) (ALIGN(npages, 8) / 2) -#define MLX5E_REQUIRED_WQE_MTTS (ALIGN(MLX5_MPWRQ_PAGES_PER_WQE, 8)) +/* Add another page to MLX5E_REQUIRED_WQE_MTTS as a buffer between + * WQEs, This page will absorb write overflow by the hardware, when + * receiving packets larger than MTU. These oversize packets are + * dropped by the driver at a later stage. + */ +#define MLX5E_REQUIRED_WQE_MTTS (ALIGN(MLX5_MPWRQ_PAGES_PER_WQE + 1, 8)) #define MLX5E_LOG_ALIGNED_MPWQE_PPW (ilog2(MLX5E_REQUIRED_WQE_MTTS)) #define MLX5E_REQUIRED_MTTS(wqes) (wqes * MLX5E_REQUIRED_WQE_MTTS) #define MLX5E_MAX_RQ_NUM_MTTS \ @@ -191,13 +196,8 @@ struct mlx5e_tx_wqe { struct mlx5_wqe_ctrl_seg ctrl; - union { - struct { - struct mlx5_wqe_eth_seg eth; - struct mlx5_wqe_data_seg data[0]; - }; - u8 tls_progress_params_ctx[0]; - }; + struct mlx5_wqe_eth_seg eth; + struct mlx5_wqe_data_seg data[0]; }; struct mlx5e_rx_wqe_ll { @@ -213,10 +213,7 @@ struct mlx5_wqe_ctrl_seg ctrl; struct mlx5_wqe_umr_ctrl_seg uctrl; struct mlx5_mkey_seg mkc; - union { - struct mlx5_mtt inline_mtts[0]; - u8 tls_static_params_ctx[0]; - }; + struct mlx5_mtt inline_mtts[0]; }; extern const char mlx5e_self_tests[][ETH_GSTRING_LEN]; @@ -271,6 +268,7 @@ MLX5E_RQ_STATE_AM, MLX5E_RQ_STATE_NO_CSUM_COMPLETE, MLX5E_RQ_STATE_CSUM_FULL, /* cqe_csum_full hw bit is set */ + MLX5E_RQ_STATE_FPGA_TLS, /* FPGA TLS enabled */ }; struct mlx5e_cq { @@ -604,7 +602,7 @@ struct dim dim; /* Dynamic Interrupt Moderation */ /* XDP */ - struct bpf_prog *xdp_prog; + struct bpf_prog __rcu *xdp_prog; struct mlx5e_xdpsq *xdpsq; DECLARE_BITMAP(flags, 8); struct page_pool *page_pool; @@ -621,6 +619,7 @@ u32 rqn; struct mlx5_core_dev *mdev; struct mlx5_core_mkey umr_mkey; + struct mlx5e_dma_info wqe_overflow; /* XDP read-mostly */ struct xdp_rxq_info xdp_rxq; @@ -651,9 +650,11 @@ /* AF_XDP zero-copy */ struct mlx5e_rq xskrq; struct mlx5e_xdpsq xsksq; - struct mlx5e_icosq xskicosq; - /* xskicosq can be accessed from any CPU - the spinlock protects it. */ - spinlock_t xskicosq_lock; + + /* Async ICOSQ */ + struct mlx5e_icosq async_icosq; + /* async_icosq can be accessed from any CPU - the spinlock protects it. */ + spinlock_t async_icosq_lock; /* data path - accessed per napi poll */ struct irq_desc *irq_desc; --- linux-azure-5.8-5.8.0.orig/drivers/net/ethernet/mellanox/mlx5/core/en/fs.h +++ linux-azure-5.8-5.8.0/drivers/net/ethernet/mellanox/mlx5/core/en/fs.h @@ -105,11 +105,16 @@ bool mlx5e_tunnel_inner_ft_supported(struct mlx5_core_dev *mdev); +struct mlx5e_ttc_rule { + struct mlx5_flow_handle *rule; + struct mlx5_flow_destination default_dest; +}; + /* L3/L4 traffic type classifier */ struct mlx5e_ttc_table { - struct mlx5e_flow_table ft; - struct mlx5_flow_handle *rules[MLX5E_NUM_TT]; - struct mlx5_flow_handle *tunnel_rules[MLX5E_NUM_TUNNEL_TT]; + struct mlx5e_flow_table ft; + struct mlx5e_ttc_rule rules[MLX5E_NUM_TT]; + struct mlx5_flow_handle *tunnel_rules[MLX5E_NUM_TUNNEL_TT]; }; /* NIC prio FTS */ @@ -118,6 +123,9 @@ MLX5E_L2_FT_LEVEL, MLX5E_TTC_FT_LEVEL, MLX5E_INNER_TTC_FT_LEVEL, +#ifdef CONFIG_MLX5_EN_TLS + MLX5E_ACCEL_FS_TCP_FT_LEVEL, +#endif #ifdef CONFIG_MLX5_EN_ARFS MLX5E_ARFS_FT_LEVEL #endif @@ -211,6 +219,10 @@ static inline int mlx5e_arfs_disable(struct mlx5e_priv *priv) { return -EOPNOTSUPP; } #endif +#ifdef CONFIG_MLX5_EN_TLS +struct mlx5e_accel_fs_tcp; +#endif + struct mlx5e_flow_steering { struct mlx5_flow_namespace *ns; #ifdef CONFIG_MLX5_EN_RXNFC @@ -224,6 +236,9 @@ #ifdef CONFIG_MLX5_EN_ARFS struct mlx5e_arfs_tables arfs; #endif +#ifdef CONFIG_MLX5_EN_TLS + struct mlx5e_accel_fs_tcp *accel_tcp; +#endif }; struct ttc_params { @@ -248,6 +263,11 @@ struct mlx5e_ttc_table *ttc); void mlx5e_destroy_flow_table(struct mlx5e_flow_table *ft); +int mlx5e_ttc_fwd_dest(struct mlx5e_priv *priv, enum mlx5e_traffic_types type, + struct mlx5_flow_destination *new_dest); +struct mlx5_flow_destination +mlx5e_ttc_get_default_dest(struct mlx5e_priv *priv, enum mlx5e_traffic_types type); +int mlx5e_ttc_fwd_default_dest(struct mlx5e_priv *priv, enum mlx5e_traffic_types type); void mlx5e_enable_cvlan_filter(struct mlx5e_priv *priv); void mlx5e_disable_cvlan_filter(struct mlx5e_priv *priv); --- linux-azure-5.8-5.8.0.orig/drivers/net/ethernet/mellanox/mlx5/core/en/health.c +++ linux-azure-5.8-5.8.0/drivers/net/ethernet/mellanox/mlx5/core/en/health.c @@ -212,8 +212,8 @@ { u32 data_size; + int err = 0; u32 offset; - int err; for (offset = 0; offset < value_len; offset += data_size) { data_size = value_len - offset; @@ -245,7 +245,7 @@ err = devlink_fmsg_binary_pair_nest_start(fmsg, "data"); if (err) - return err; + goto free_page; cmd = mlx5_rsc_dump_cmd_create(mdev, key); if (IS_ERR(cmd)) { --- linux-azure-5.8-5.8.0.orig/drivers/net/ethernet/mellanox/mlx5/core/en/params.h +++ linux-azure-5.8-5.8.0/drivers/net/ethernet/mellanox/mlx5/core/en/params.h @@ -11,33 +11,33 @@ u16 chunk_size; }; +struct mlx5e_cq_param { + u32 cqc[MLX5_ST_SZ_DW(cqc)]; + struct mlx5_wq_param wq; + u16 eq_ix; + u8 cq_period_mode; +}; + struct mlx5e_rq_param { + struct mlx5e_cq_param cqp; u32 rqc[MLX5_ST_SZ_DW(rqc)]; struct mlx5_wq_param wq; struct mlx5e_rq_frags_info frags_info; }; struct mlx5e_sq_param { + struct mlx5e_cq_param cqp; u32 sqc[MLX5_ST_SZ_DW(sqc)]; struct mlx5_wq_param wq; bool is_mpw; }; -struct mlx5e_cq_param { - u32 cqc[MLX5_ST_SZ_DW(cqc)]; - struct mlx5_wq_param wq; - u16 eq_ix; - u8 cq_period_mode; -}; - struct mlx5e_channel_param { struct mlx5e_rq_param rq; - struct mlx5e_sq_param sq; + struct mlx5e_sq_param txq_sq; struct mlx5e_sq_param xdp_sq; struct mlx5e_sq_param icosq; - struct mlx5e_cq_param rx_cq; - struct mlx5e_cq_param tx_cq; - struct mlx5e_cq_param icosq_cq; + struct mlx5e_sq_param async_icosq; }; static inline bool mlx5e_qid_get_ch_if_in_group(struct mlx5e_params *params, --- linux-azure-5.8-5.8.0.orig/drivers/net/ethernet/mellanox/mlx5/core/en/port.c +++ linux-azure-5.8-5.8.0/drivers/net/ethernet/mellanox/mlx5/core/en/port.c @@ -487,11 +487,8 @@ int err; int i; - if (!MLX5_CAP_GEN(dev, pcam_reg)) - return -EOPNOTSUPP; - - if (!MLX5_CAP_PCAM_REG(dev, pplm)) - return -EOPNOTSUPP; + if (!MLX5_CAP_GEN(dev, pcam_reg) || !MLX5_CAP_PCAM_REG(dev, pplm)) + return false; MLX5_SET(pplm_reg, in, local_port, 1); err = mlx5_core_access_reg(dev, in, sz, out, sz, MLX5_REG_PPLM, 0, 0); @@ -569,6 +566,9 @@ if (fec_policy >= (1 << MLX5E_FEC_LLRS_272_257_1) && !fec_50g_per_lane) return -EOPNOTSUPP; + if (fec_policy && !mlx5e_fec_in_caps(dev, fec_policy)) + return -EOPNOTSUPP; + MLX5_SET(pplm_reg, in, local_port, 1); err = mlx5_core_access_reg(dev, in, sz, out, sz, MLX5_REG_PPLM, 0, 0); if (err) --- linux-azure-5.8-5.8.0.orig/drivers/net/ethernet/mellanox/mlx5/core/en/rep/bond.c +++ linux-azure-5.8-5.8.0/drivers/net/ethernet/mellanox/mlx5/core/en/rep/bond.c @@ -187,7 +187,7 @@ struct mlx5e_priv *priv; /* A given netdev is not a representor or not a slave of LAG configuration */ - if (!mlx5e_eswitch_rep(netdev) || !bond_slave_get_rtnl(netdev)) + if (!mlx5e_eswitch_rep(netdev) || !netif_is_lag_port(netdev)) return false; priv = netdev_priv(netdev); --- linux-azure-5.8-5.8.0.orig/drivers/net/ethernet/mellanox/mlx5/core/en/rep/neigh.c +++ linux-azure-5.8-5.8.0/drivers/net/ethernet/mellanox/mlx5/core/en/rep/neigh.c @@ -109,11 +109,25 @@ rtnl_unlock(); } +struct neigh_update_work { + struct work_struct work; + struct neighbour *n; + struct mlx5e_neigh_hash_entry *nhe; +}; + +static void mlx5e_release_neigh_update_work(struct neigh_update_work *update_work) +{ + neigh_release(update_work->n); + mlx5e_rep_neigh_entry_release(update_work->nhe); + kfree(update_work); +} + static void mlx5e_rep_neigh_update(struct work_struct *work) { - struct mlx5e_neigh_hash_entry *nhe = - container_of(work, struct mlx5e_neigh_hash_entry, neigh_update_work); - struct neighbour *n = nhe->n; + struct neigh_update_work *update_work = container_of(work, struct neigh_update_work, + work); + struct mlx5e_neigh_hash_entry *nhe = update_work->nhe; + struct neighbour *n = update_work->n; struct mlx5e_encap_entry *e; unsigned char ha[ETH_ALEN]; struct mlx5e_priv *priv; @@ -145,30 +159,42 @@ mlx5e_rep_update_flows(priv, e, neigh_connected, ha); mlx5e_encap_put(priv, e); } - mlx5e_rep_neigh_entry_release(nhe); rtnl_unlock(); - neigh_release(n); + mlx5e_release_neigh_update_work(update_work); } -static void mlx5e_rep_queue_neigh_update_work(struct mlx5e_priv *priv, - struct mlx5e_neigh_hash_entry *nhe, - struct neighbour *n) +static struct neigh_update_work *mlx5e_alloc_neigh_update_work(struct mlx5e_priv *priv, + struct neighbour *n) { - /* Take a reference to ensure the neighbour and mlx5 encap - * entry won't be destructed until we drop the reference in - * delayed work. - */ - neigh_hold(n); + struct neigh_update_work *update_work; + struct mlx5e_neigh_hash_entry *nhe; + struct mlx5e_neigh m_neigh = {}; - /* This assignment is valid as long as the the neigh reference - * is taken - */ - nhe->n = n; + update_work = kzalloc(sizeof(*update_work), GFP_ATOMIC); + if (WARN_ON(!update_work)) + return NULL; + + m_neigh.dev = n->dev; + m_neigh.family = n->ops->family; + memcpy(&m_neigh.dst_ip, n->primary_key, n->tbl->key_len); - if (!queue_work(priv->wq, &nhe->neigh_update_work)) { - mlx5e_rep_neigh_entry_release(nhe); - neigh_release(n); + /* Obtain reference to nhe as last step in order not to release it in + * atomic context. + */ + rcu_read_lock(); + nhe = mlx5e_rep_neigh_entry_lookup(priv, &m_neigh); + rcu_read_unlock(); + if (!nhe) { + kfree(update_work); + return NULL; } + + INIT_WORK(&update_work->work, mlx5e_rep_neigh_update); + neigh_hold(n); + update_work->n = n; + update_work->nhe = nhe; + + return update_work; } static int mlx5e_rep_netevent_event(struct notifier_block *nb, @@ -180,7 +206,7 @@ struct net_device *netdev = rpriv->netdev; struct mlx5e_priv *priv = netdev_priv(netdev); struct mlx5e_neigh_hash_entry *nhe = NULL; - struct mlx5e_neigh m_neigh = {}; + struct neigh_update_work *update_work; struct neigh_parms *p; struct neighbour *n; bool found = false; @@ -195,17 +221,11 @@ #endif return NOTIFY_DONE; - m_neigh.dev = n->dev; - m_neigh.family = n->ops->family; - memcpy(&m_neigh.dst_ip, n->primary_key, n->tbl->key_len); - - rcu_read_lock(); - nhe = mlx5e_rep_neigh_entry_lookup(priv, &m_neigh); - rcu_read_unlock(); - if (!nhe) + update_work = mlx5e_alloc_neigh_update_work(priv, n); + if (!update_work) return NOTIFY_DONE; - mlx5e_rep_queue_neigh_update_work(priv, nhe, n); + queue_work(priv->wq, &update_work->work); break; case NETEVENT_DELAY_PROBE_TIME_UPDATE: @@ -351,7 +371,6 @@ (*nhe)->priv = priv; memcpy(&(*nhe)->m_neigh, &e->m_neigh, sizeof(e->m_neigh)); - INIT_WORK(&(*nhe)->neigh_update_work, mlx5e_rep_neigh_update); spin_lock_init(&(*nhe)->encap_list_lock); INIT_LIST_HEAD(&(*nhe)->encap_list); refcount_set(&(*nhe)->refcnt, 1); --- linux-azure-5.8-5.8.0.orig/drivers/net/ethernet/mellanox/mlx5/core/en/rep/tc.c +++ linux-azure-5.8-5.8.0/drivers/net/ethernet/mellanox/mlx5/core/en/rep/tc.c @@ -107,12 +107,16 @@ mlx5e_tc_encap_flows_del(priv, e, &flow_list); if (neigh_connected && !(e->flags & MLX5_ENCAP_ENTRY_VALID)) { + struct net_device *route_dev; + ether_addr_copy(e->h_dest, ha); ether_addr_copy(eth->h_dest, ha); /* Update the encap source mac, in case that we delete * the flows when encap source mac changed. */ - ether_addr_copy(eth->h_source, e->route_dev->dev_addr); + route_dev = __dev_get_by_index(dev_net(priv->netdev), e->route_dev_ifindex); + if (route_dev) + ether_addr_copy(eth->h_source, route_dev->dev_addr); mlx5e_tc_encap_flows_add(priv, e, &flow_list); } @@ -623,6 +627,11 @@ if (!reg_c0) return true; + /* If reg_c0 is not equal to the default flow tag then skb->mark + * is not supported and must be reset back to 0. + */ + skb->mark = 0; + priv = netdev_priv(skb->dev); esw = priv->mdev->priv.eswitch; --- linux-azure-5.8-5.8.0.orig/drivers/net/ethernet/mellanox/mlx5/core/en/tc_tun.c +++ linux-azure-5.8-5.8.0/drivers/net/ethernet/mellanox/mlx5/core/en/tc_tun.c @@ -77,13 +77,13 @@ return 0; } -static int mlx5e_route_lookup_ipv4(struct mlx5e_priv *priv, - struct net_device *mirred_dev, - struct net_device **out_dev, - struct net_device **route_dev, - struct flowi4 *fl4, - struct neighbour **out_n, - u8 *out_ttl) +static int mlx5e_route_lookup_ipv4_get(struct mlx5e_priv *priv, + struct net_device *mirred_dev, + struct net_device **out_dev, + struct net_device **route_dev, + struct flowi4 *fl4, + struct neighbour **out_n, + u8 *out_ttl) { struct neighbour *n; struct rtable *rt; @@ -117,18 +117,28 @@ ip_rt_put(rt); return ret; } + dev_hold(*route_dev); if (!(*out_ttl)) *out_ttl = ip4_dst_hoplimit(&rt->dst); n = dst_neigh_lookup(&rt->dst, &fl4->daddr); ip_rt_put(rt); - if (!n) + if (!n) { + dev_put(*route_dev); return -ENOMEM; + } *out_n = n; return 0; } +static void mlx5e_route_lookup_ipv4_put(struct net_device *route_dev, + struct neighbour *n) +{ + neigh_release(n); + dev_put(route_dev); +} + static const char *mlx5e_netdev_kind(struct net_device *dev) { if (dev->rtnl_link_ops) @@ -193,8 +203,8 @@ fl4.saddr = tun_key->u.ipv4.src; ttl = tun_key->ttl; - err = mlx5e_route_lookup_ipv4(priv, mirred_dev, &out_dev, &route_dev, - &fl4, &n, &ttl); + err = mlx5e_route_lookup_ipv4_get(priv, mirred_dev, &out_dev, &route_dev, + &fl4, &n, &ttl); if (err) return err; @@ -223,7 +233,7 @@ e->m_neigh.family = n->ops->family; memcpy(&e->m_neigh.dst_ip, n->primary_key, n->tbl->key_len); e->out_dev = out_dev; - e->route_dev = route_dev; + e->route_dev_ifindex = route_dev->ifindex; /* It's important to add the neigh to the hash table before checking * the neigh validity state. So if we'll get a notification, in case the @@ -278,7 +288,7 @@ e->flags |= MLX5_ENCAP_ENTRY_VALID; mlx5e_rep_queue_neigh_stats_work(netdev_priv(out_dev)); - neigh_release(n); + mlx5e_route_lookup_ipv4_put(route_dev, n); return err; destroy_neigh_entry: @@ -286,18 +296,18 @@ free_encap: kfree(encap_header); release_neigh: - neigh_release(n); + mlx5e_route_lookup_ipv4_put(route_dev, n); return err; } #if IS_ENABLED(CONFIG_INET) && IS_ENABLED(CONFIG_IPV6) -static int mlx5e_route_lookup_ipv6(struct mlx5e_priv *priv, - struct net_device *mirred_dev, - struct net_device **out_dev, - struct net_device **route_dev, - struct flowi6 *fl6, - struct neighbour **out_n, - u8 *out_ttl) +static int mlx5e_route_lookup_ipv6_get(struct mlx5e_priv *priv, + struct net_device *mirred_dev, + struct net_device **out_dev, + struct net_device **route_dev, + struct flowi6 *fl6, + struct neighbour **out_n, + u8 *out_ttl) { struct dst_entry *dst; struct neighbour *n; @@ -318,15 +328,25 @@ return ret; } + dev_hold(*route_dev); n = dst_neigh_lookup(dst, &fl6->daddr); dst_release(dst); - if (!n) + if (!n) { + dev_put(*route_dev); return -ENOMEM; + } *out_n = n; return 0; } +static void mlx5e_route_lookup_ipv6_put(struct net_device *route_dev, + struct neighbour *n) +{ + neigh_release(n); + dev_put(route_dev); +} + int mlx5e_tc_tun_create_header_ipv6(struct mlx5e_priv *priv, struct net_device *mirred_dev, struct mlx5e_encap_entry *e) @@ -348,8 +368,8 @@ fl6.daddr = tun_key->u.ipv6.dst; fl6.saddr = tun_key->u.ipv6.src; - err = mlx5e_route_lookup_ipv6(priv, mirred_dev, &out_dev, &route_dev, - &fl6, &n, &ttl); + err = mlx5e_route_lookup_ipv6_get(priv, mirred_dev, &out_dev, &route_dev, + &fl6, &n, &ttl); if (err) return err; @@ -378,7 +398,7 @@ e->m_neigh.family = n->ops->family; memcpy(&e->m_neigh.dst_ip, n->primary_key, n->tbl->key_len); e->out_dev = out_dev; - e->route_dev = route_dev; + e->route_dev_ifindex = route_dev->ifindex; /* It's importent to add the neigh to the hash table before checking * the neigh validity state. So if we'll get a notification, in case the @@ -433,7 +453,7 @@ e->flags |= MLX5_ENCAP_ENTRY_VALID; mlx5e_rep_queue_neigh_stats_work(netdev_priv(out_dev)); - neigh_release(n); + mlx5e_route_lookup_ipv6_put(route_dev, n); return err; destroy_neigh_entry: @@ -441,7 +461,7 @@ free_encap: kfree(encap_header); release_neigh: - neigh_release(n); + mlx5e_route_lookup_ipv6_put(route_dev, n); return err; } #endif --- linux-azure-5.8-5.8.0.orig/drivers/net/ethernet/mellanox/mlx5/core/en/txrx.h +++ linux-azure-5.8-5.8.0/drivers/net/ethernet/mellanox/mlx5/core/en/txrx.h @@ -11,8 +11,18 @@ enum mlx5e_icosq_wqe_type { MLX5E_ICOSQ_WQE_NOP, MLX5E_ICOSQ_WQE_UMR_RX, +#ifdef CONFIG_MLX5_EN_TLS + MLX5E_ICOSQ_WQE_UMR_TLS, + MLX5E_ICOSQ_WQE_SET_PSV_TLS, + MLX5E_ICOSQ_WQE_GET_PSV_TLS, +#endif }; +static inline bool mlx5e_skb_is_multicast(struct sk_buff *skb) +{ + return skb->pkt_type == PACKET_MULTICAST || skb->pkt_type == PACKET_BROADCAST; +} + static inline bool mlx5e_wqc_has_room_for(struct mlx5_wq_cyc *wq, u16 cc, u16 pc, u16 n) { @@ -114,9 +124,19 @@ struct { struct mlx5e_rq *rq; } umr; +#ifdef CONFIG_MLX5_EN_TLS + struct { + struct mlx5e_ktls_offload_context_rx *priv_rx; + } tls_set_params; + struct { + struct mlx5e_ktls_rx_resync_buf *buf; + } tls_get_params; +#endif }; }; +void mlx5e_free_icosq_descs(struct mlx5e_icosq *sq); + static inline u16 mlx5e_icosq_get_next_pi(struct mlx5e_icosq *sq, u16 size) { struct mlx5_wq_cyc *wq = &sq->wq; @@ -182,7 +202,7 @@ static inline bool mlx5e_transport_inline_tx_wqe(struct mlx5_wqe_ctrl_seg *cseg) { - return cseg && !!cseg->tisn; + return cseg && !!cseg->tis_tir_num; } static inline u8 @@ -279,6 +299,15 @@ u8 tun_l4_proto; }; +static inline void mlx5e_eseg_swp_offsets_add_vlan(struct mlx5_wqe_eth_seg *eseg) +{ + /* SWP offsets are in 2-bytes words */ + eseg->swp_outer_l3_offset += VLAN_HLEN / 2; + eseg->swp_outer_l4_offset += VLAN_HLEN / 2; + eseg->swp_inner_l3_offset += VLAN_HLEN / 2; + eseg->swp_inner_l4_offset += VLAN_HLEN / 2; +} + static inline void mlx5e_set_eseg_swp(struct sk_buff *skb, struct mlx5_wqe_eth_seg *eseg, struct mlx5e_swp_spec *swp_spec) --- linux-azure-5.8-5.8.0.orig/drivers/net/ethernet/mellanox/mlx5/core/en/xdp.c +++ linux-azure-5.8-5.8.0/drivers/net/ethernet/mellanox/mlx5/core/en/xdp.c @@ -121,7 +121,7 @@ bool mlx5e_xdp_handle(struct mlx5e_rq *rq, struct mlx5e_dma_info *di, u32 *len, struct xdp_buff *xdp) { - struct bpf_prog *prog = READ_ONCE(rq->xdp_prog); + struct bpf_prog *prog = rcu_dereference(rq->xdp_prog); u32 act; int err; --- linux-azure-5.8-5.8.0.orig/drivers/net/ethernet/mellanox/mlx5/core/en/xdp.h +++ linux-azure-5.8-5.8.0/drivers/net/ethernet/mellanox/mlx5/core/en/xdp.h @@ -85,7 +85,7 @@ clear_bit(MLX5E_STATE_XDP_TX_ENABLED, &priv->state); /* Let other device's napi(s) and XSK wakeups see our new state. */ - synchronize_rcu(); + synchronize_net(); } static inline bool mlx5e_xdp_tx_is_enabled(struct mlx5e_priv *priv) --- linux-azure-5.8-5.8.0.orig/drivers/net/ethernet/mellanox/mlx5/core/en/xsk/rx.c +++ linux-azure-5.8-5.8.0/drivers/net/ethernet/mellanox/mlx5/core/en/xsk/rx.c @@ -31,7 +31,6 @@ { struct xdp_buff *xdp = wi->umr.dma_info[page_idx].xsk; u32 cqe_bcnt32 = cqe_bcnt; - bool consumed; /* Check packet size. Note LRO doesn't use linear SKB */ if (unlikely(cqe_bcnt > rq->hw_mtu)) { @@ -51,10 +50,6 @@ xsk_buff_dma_sync_for_cpu(xdp); prefetch(xdp->data); - rcu_read_lock(); - consumed = mlx5e_xdp_handle(rq, NULL, &cqe_bcnt32, xdp); - rcu_read_unlock(); - /* Possible flows: * - XDP_REDIRECT to XSKMAP: * The page is owned by the userspace from now. @@ -70,7 +65,7 @@ * allocated first from the Reuse Ring, so it has enough space. */ - if (likely(consumed)) { + if (likely(mlx5e_xdp_handle(rq, NULL, &cqe_bcnt32, xdp))) { if (likely(__test_and_clear_bit(MLX5E_RQ_FLAG_XDP_XMIT, rq->flags))) __set_bit(page_idx, wi->xdp_xmit_bitmap); /* non-atomic */ return NULL; /* page/packet was consumed by XDP */ @@ -88,7 +83,6 @@ u32 cqe_bcnt) { struct xdp_buff *xdp = wi->di->xsk; - bool consumed; /* wi->offset is not used in this function, because xdp->data and the * DMA address point directly to the necessary place. Furthermore, the @@ -107,11 +101,7 @@ return NULL; } - rcu_read_lock(); - consumed = mlx5e_xdp_handle(rq, NULL, &cqe_bcnt, xdp); - rcu_read_unlock(); - - if (likely(consumed)) + if (likely(mlx5e_xdp_handle(rq, NULL, &cqe_bcnt, xdp))) return NULL; /* page/packet was consumed by XDP */ /* XDP_PASS: copy the data from the UMEM to a new SKB. The frame reuse --- linux-azure-5.8-5.8.0.orig/drivers/net/ethernet/mellanox/mlx5/core/en/xsk/setup.c +++ linux-azure-5.8-5.8.0/drivers/net/ethernet/mellanox/mlx5/core/en/xsk/setup.c @@ -34,31 +34,13 @@ } } -static void mlx5e_build_xskicosq_param(struct mlx5e_priv *priv, - u8 log_wq_size, - struct mlx5e_sq_param *param) -{ - void *sqc = param->sqc; - void *wq = MLX5_ADDR_OF(sqc, sqc, wq); - - mlx5e_build_sq_param_common(priv, param); - - MLX5_SET(wq, wq, log_wq_sz, log_wq_size); -} - static void mlx5e_build_xsk_cparam(struct mlx5e_priv *priv, struct mlx5e_params *params, struct mlx5e_xsk_param *xsk, struct mlx5e_channel_param *cparam) { - const u8 xskicosq_size = MLX5E_PARAMS_MINIMUM_LOG_SQ_SIZE; - mlx5e_build_rq_param(priv, params, xsk, &cparam->rq); mlx5e_build_xdpsq_param(priv, params, &cparam->xdp_sq); - mlx5e_build_xskicosq_param(priv, xskicosq_size, &cparam->icosq); - mlx5e_build_rx_cq_param(priv, params, xsk, &cparam->rx_cq); - mlx5e_build_tx_cq_param(priv, params, &cparam->tx_cq); - mlx5e_build_ico_cq_param(priv, xskicosq_size, &cparam->icosq_cq); } int mlx5e_open_xsk(struct mlx5e_priv *priv, struct mlx5e_params *params, @@ -66,7 +48,6 @@ struct mlx5e_channel *c) { struct mlx5e_channel_param *cparam; - struct dim_cq_moder icocq_moder = {}; int err; if (!mlx5e_validate_xsk_param(params, xsk, priv->mdev)) @@ -78,7 +59,7 @@ mlx5e_build_xsk_cparam(priv, params, xsk, cparam); - err = mlx5e_open_cq(c, params->rx_cq_moderation, &cparam->rx_cq, &c->xskrq.cq); + err = mlx5e_open_cq(c, params->rx_cq_moderation, &cparam->rq.cqp, &c->xskrq.cq); if (unlikely(err)) goto err_free_cparam; @@ -86,7 +67,7 @@ if (unlikely(err)) goto err_close_rx_cq; - err = mlx5e_open_cq(c, params->tx_cq_moderation, &cparam->tx_cq, &c->xsksq.cq); + err = mlx5e_open_cq(c, params->tx_cq_moderation, &cparam->xdp_sq.cqp, &c->xsksq.cq); if (unlikely(err)) goto err_close_rq; @@ -100,31 +81,12 @@ if (unlikely(err)) goto err_close_tx_cq; - err = mlx5e_open_cq(c, icocq_moder, &cparam->icosq_cq, &c->xskicosq.cq); - if (unlikely(err)) - goto err_close_sq; - - /* Create a dedicated SQ for posting NOPs whenever we need an IRQ to be - * triggered and NAPI to be called on the correct CPU. - */ - err = mlx5e_open_icosq(c, params, &cparam->icosq, &c->xskicosq); - if (unlikely(err)) - goto err_close_icocq; - kvfree(cparam); - spin_lock_init(&c->xskicosq_lock); - set_bit(MLX5E_CHANNEL_STATE_XSK, c->state); return 0; -err_close_icocq: - mlx5e_close_cq(&c->xskicosq.cq); - -err_close_sq: - mlx5e_close_xdpsq(&c->xsksq); - err_close_tx_cq: mlx5e_close_cq(&c->xsksq.cq); @@ -143,37 +105,31 @@ void mlx5e_close_xsk(struct mlx5e_channel *c) { clear_bit(MLX5E_CHANNEL_STATE_XSK, c->state); - napi_synchronize(&c->napi); - synchronize_rcu(); /* Sync with the XSK wakeup. */ + synchronize_net(); /* Sync with the XSK wakeup and with NAPI. */ mlx5e_close_rq(&c->xskrq); mlx5e_close_cq(&c->xskrq.cq); - mlx5e_close_icosq(&c->xskicosq); - mlx5e_close_cq(&c->xskicosq.cq); mlx5e_close_xdpsq(&c->xsksq); mlx5e_close_cq(&c->xsksq.cq); memset(&c->xskrq, 0, sizeof(c->xskrq)); memset(&c->xsksq, 0, sizeof(c->xsksq)); - memset(&c->xskicosq, 0, sizeof(c->xskicosq)); } void mlx5e_activate_xsk(struct mlx5e_channel *c) { - mlx5e_activate_icosq(&c->xskicosq); set_bit(MLX5E_RQ_STATE_ENABLED, &c->xskrq.state); /* TX queue is created active. */ - spin_lock(&c->xskicosq_lock); - mlx5e_trigger_irq(&c->xskicosq); - spin_unlock(&c->xskicosq_lock); + spin_lock_bh(&c->async_icosq_lock); + mlx5e_trigger_irq(&c->async_icosq); + spin_unlock_bh(&c->async_icosq_lock); } void mlx5e_deactivate_xsk(struct mlx5e_channel *c) { mlx5e_deactivate_rq(&c->xskrq); /* TX queue is disabled on close. */ - mlx5e_deactivate_icosq(&c->xskicosq); } static int mlx5e_redirect_xsk_rqt(struct mlx5e_priv *priv, u16 ix, u32 rqn) --- linux-azure-5.8-5.8.0.orig/drivers/net/ethernet/mellanox/mlx5/core/en/xsk/tx.c +++ linux-azure-5.8-5.8.0/drivers/net/ethernet/mellanox/mlx5/core/en/xsk/tx.c @@ -26,19 +26,19 @@ return -ENXIO; if (!napi_if_scheduled_mark_missed(&c->napi)) { - /* To avoid WQE overrun, don't post a NOP if XSKICOSQ is not + /* To avoid WQE overrun, don't post a NOP if async_icosq is not * active and not polled by NAPI. Return 0, because the upcoming * activate will trigger the IRQ for us. */ - if (unlikely(!test_bit(MLX5E_SQ_STATE_ENABLED, &c->xskicosq.state))) + if (unlikely(!test_bit(MLX5E_SQ_STATE_ENABLED, &c->async_icosq.state))) return 0; - if (test_and_set_bit(MLX5E_SQ_STATE_PENDING_XSK_TX, &c->xskicosq.state)) + if (test_and_set_bit(MLX5E_SQ_STATE_PENDING_XSK_TX, &c->async_icosq.state)) return 0; - spin_lock(&c->xskicosq_lock); - mlx5e_trigger_irq(&c->xskicosq); - spin_unlock(&c->xskicosq_lock); + spin_lock_bh(&c->async_icosq_lock); + mlx5e_trigger_irq(&c->async_icosq); + spin_unlock_bh(&c->async_icosq_lock); } return 0; --- linux-azure-5.8-5.8.0.orig/drivers/net/ethernet/mellanox/mlx5/core/en_accel/en_accel.h +++ linux-azure-5.8-5.8.0/drivers/net/ethernet/mellanox/mlx5/core/en_accel/en_accel.h @@ -37,6 +37,7 @@ #include #include #include "en_accel/ipsec_rxtx.h" +#include "en_accel/tls.h" #include "en_accel/tls_rxtx.h" #include "en.h" #include "en/txrx.h" @@ -50,7 +51,7 @@ } static inline void -mlx5e_tx_tunnel_accel(struct sk_buff *skb, struct mlx5_wqe_eth_seg *eseg) +mlx5e_tx_tunnel_accel(struct sk_buff *skb, struct mlx5_wqe_eth_seg *eseg, u16 ihs) { struct mlx5e_swp_spec swp_spec = {}; unsigned int offset = 0; @@ -84,6 +85,8 @@ } mlx5e_set_eseg_swp(skb, eseg, &swp_spec); + if (skb_vlan_tag_present(skb) && ihs) + mlx5e_eseg_swp_offsets_add_vlan(eseg); } #else @@ -147,4 +150,13 @@ return true; } +static inline int mlx5e_accel_init_rx(struct mlx5e_priv *priv) +{ + return mlx5e_ktls_init_rx(priv); +} + +static inline void mlx5e_accel_cleanup_rx(struct mlx5e_priv *priv) +{ + mlx5e_ktls_cleanup_rx(priv); +} #endif /* __MLX5E_EN_ACCEL_H__ */ --- linux-azure-5.8-5.8.0.orig/drivers/net/ethernet/mellanox/mlx5/core/en_accel/fs_tcp.c +++ linux-azure-5.8-5.8.0/drivers/net/ethernet/mellanox/mlx5/core/en_accel/fs_tcp.c @@ -0,0 +1,402 @@ +// SPDX-License-Identifier: GPL-2.0 OR Linux-OpenIB +/* Copyright (c) 2020, Mellanox Technologies inc. All rights reserved. */ + +#include +#include "en_accel/fs_tcp.h" +#include "fs_core.h" + +enum accel_fs_tcp_type { + ACCEL_FS_IPV4_TCP, + ACCEL_FS_IPV6_TCP, + ACCEL_FS_TCP_NUM_TYPES, +}; + +struct mlx5e_accel_fs_tcp { + struct mlx5e_flow_table tables[ACCEL_FS_TCP_NUM_TYPES]; + struct mlx5_flow_handle *default_rules[ACCEL_FS_TCP_NUM_TYPES]; +}; + +static enum mlx5e_traffic_types fs_accel2tt(enum accel_fs_tcp_type i) +{ + switch (i) { + case ACCEL_FS_IPV4_TCP: + return MLX5E_TT_IPV4_TCP; + default: /* ACCEL_FS_IPV6_TCP */ + return MLX5E_TT_IPV6_TCP; + } +} + +static void accel_fs_tcp_set_ipv4_flow(struct mlx5_flow_spec *spec, struct sock *sk) +{ + MLX5_SET_TO_ONES(fte_match_param, spec->match_criteria, outer_headers.ip_protocol); + MLX5_SET(fte_match_param, spec->match_value, outer_headers.ip_protocol, IPPROTO_TCP); + MLX5_SET_TO_ONES(fte_match_param, spec->match_criteria, outer_headers.ip_version); + MLX5_SET(fte_match_param, spec->match_value, outer_headers.ip_version, 4); + memcpy(MLX5_ADDR_OF(fte_match_param, spec->match_value, + outer_headers.src_ipv4_src_ipv6.ipv4_layout.ipv4), + &inet_sk(sk)->inet_daddr, 4); + memcpy(MLX5_ADDR_OF(fte_match_param, spec->match_value, + outer_headers.dst_ipv4_dst_ipv6.ipv4_layout.ipv4), + &inet_sk(sk)->inet_rcv_saddr, 4); + MLX5_SET_TO_ONES(fte_match_param, spec->match_criteria, + outer_headers.src_ipv4_src_ipv6.ipv4_layout.ipv4); + MLX5_SET_TO_ONES(fte_match_param, spec->match_criteria, + outer_headers.dst_ipv4_dst_ipv6.ipv4_layout.ipv4); +} + +#if IS_ENABLED(CONFIG_IPV6) +static void accel_fs_tcp_set_ipv6_flow(struct mlx5_flow_spec *spec, struct sock *sk) +{ + MLX5_SET_TO_ONES(fte_match_param, spec->match_criteria, outer_headers.ip_protocol); + MLX5_SET(fte_match_param, spec->match_value, outer_headers.ip_protocol, IPPROTO_TCP); + MLX5_SET_TO_ONES(fte_match_param, spec->match_criteria, outer_headers.ip_version); + MLX5_SET(fte_match_param, spec->match_value, outer_headers.ip_version, 6); + memcpy(MLX5_ADDR_OF(fte_match_param, spec->match_value, + outer_headers.src_ipv4_src_ipv6.ipv6_layout.ipv6), + &sk->sk_v6_daddr, 16); + memcpy(MLX5_ADDR_OF(fte_match_param, spec->match_value, + outer_headers.dst_ipv4_dst_ipv6.ipv6_layout.ipv6), + &inet6_sk(sk)->saddr, 16); + memset(MLX5_ADDR_OF(fte_match_param, spec->match_criteria, + outer_headers.src_ipv4_src_ipv6.ipv6_layout.ipv6), + 0xff, 16); + memset(MLX5_ADDR_OF(fte_match_param, spec->match_criteria, + outer_headers.dst_ipv4_dst_ipv6.ipv6_layout.ipv6), + 0xff, 16); +} +#endif + +void mlx5e_accel_fs_del_sk(struct mlx5_flow_handle *rule) +{ + mlx5_del_flow_rules(rule); +} + +struct mlx5_flow_handle *mlx5e_accel_fs_add_sk(struct mlx5e_priv *priv, + struct sock *sk, u32 tirn, + uint32_t flow_tag) +{ + struct mlx5_flow_destination dest = {}; + struct mlx5e_flow_table *ft = NULL; + struct mlx5e_accel_fs_tcp *fs_tcp; + MLX5_DECLARE_FLOW_ACT(flow_act); + struct mlx5_flow_handle *flow; + struct mlx5_flow_spec *spec; + + spec = kvzalloc(sizeof(*spec), GFP_KERNEL); + if (!spec) + return ERR_PTR(-ENOMEM); + + fs_tcp = priv->fs.accel_tcp; + + spec->match_criteria_enable = MLX5_MATCH_OUTER_HEADERS; + + switch (sk->sk_family) { + case AF_INET: + accel_fs_tcp_set_ipv4_flow(spec, sk); + ft = &fs_tcp->tables[ACCEL_FS_IPV4_TCP]; + mlx5e_dbg(HW, priv, "%s flow is %pI4:%d -> %pI4:%d\n", __func__, + &inet_sk(sk)->inet_rcv_saddr, + inet_sk(sk)->inet_sport, + &inet_sk(sk)->inet_daddr, + inet_sk(sk)->inet_dport); + break; +#if IS_ENABLED(CONFIG_IPV6) + case AF_INET6: + if (!sk->sk_ipv6only && + ipv6_addr_type(&sk->sk_v6_daddr) == IPV6_ADDR_MAPPED) { + accel_fs_tcp_set_ipv4_flow(spec, sk); + ft = &fs_tcp->tables[ACCEL_FS_IPV4_TCP]; + } else { + accel_fs_tcp_set_ipv6_flow(spec, sk); + ft = &fs_tcp->tables[ACCEL_FS_IPV6_TCP]; + } + break; +#endif + default: + break; + } + + if (!ft) { + flow = ERR_PTR(-EINVAL); + goto out; + } + + MLX5_SET_TO_ONES(fte_match_param, spec->match_criteria, + outer_headers.tcp_dport); + MLX5_SET_TO_ONES(fte_match_param, spec->match_criteria, + outer_headers.tcp_sport); + MLX5_SET(fte_match_param, spec->match_value, outer_headers.tcp_dport, + ntohs(inet_sk(sk)->inet_sport)); + MLX5_SET(fte_match_param, spec->match_value, outer_headers.tcp_sport, + ntohs(inet_sk(sk)->inet_dport)); + + dest.type = MLX5_FLOW_DESTINATION_TYPE_TIR; + dest.tir_num = tirn; + if (flow_tag != MLX5_FS_DEFAULT_FLOW_TAG) { + spec->flow_context.flow_tag = flow_tag; + spec->flow_context.flags = FLOW_CONTEXT_HAS_TAG; + } + + flow = mlx5_add_flow_rules(ft->t, spec, &flow_act, &dest, 1); + + if (IS_ERR(flow)) + netdev_err(priv->netdev, "mlx5_add_flow_rules() failed, flow is %ld\n", + PTR_ERR(flow)); + +out: + kvfree(spec); + return flow; +} + +static int accel_fs_tcp_add_default_rule(struct mlx5e_priv *priv, + enum accel_fs_tcp_type type) +{ + struct mlx5e_flow_table *accel_fs_t; + struct mlx5_flow_destination dest; + struct mlx5e_accel_fs_tcp *fs_tcp; + MLX5_DECLARE_FLOW_ACT(flow_act); + struct mlx5_flow_handle *rule; + int err = 0; + + fs_tcp = priv->fs.accel_tcp; + accel_fs_t = &fs_tcp->tables[type]; + + dest = mlx5e_ttc_get_default_dest(priv, fs_accel2tt(type)); + rule = mlx5_add_flow_rules(accel_fs_t->t, NULL, &flow_act, &dest, 1); + if (IS_ERR(rule)) { + err = PTR_ERR(rule); + netdev_err(priv->netdev, + "%s: add default rule failed, accel_fs type=%d, err %d\n", + __func__, type, err); + return err; + } + + fs_tcp->default_rules[type] = rule; + return 0; +} + +#define MLX5E_ACCEL_FS_TCP_NUM_GROUPS (2) +#define MLX5E_ACCEL_FS_TCP_GROUP1_SIZE (BIT(16) - 1) +#define MLX5E_ACCEL_FS_TCP_GROUP2_SIZE (BIT(0)) +#define MLX5E_ACCEL_FS_TCP_TABLE_SIZE (MLX5E_ACCEL_FS_TCP_GROUP1_SIZE +\ + MLX5E_ACCEL_FS_TCP_GROUP2_SIZE) +static int accel_fs_tcp_create_groups(struct mlx5e_flow_table *ft, + enum accel_fs_tcp_type type) +{ + int inlen = MLX5_ST_SZ_BYTES(create_flow_group_in); + void *outer_headers_c; + int ix = 0; + u32 *in; + int err; + u8 *mc; + + ft->g = kcalloc(MLX5E_ACCEL_FS_TCP_NUM_GROUPS, sizeof(*ft->g), GFP_KERNEL); + in = kvzalloc(inlen, GFP_KERNEL); + if (!in || !ft->g) { + kvfree(ft->g); + kvfree(in); + return -ENOMEM; + } + + mc = MLX5_ADDR_OF(create_flow_group_in, in, match_criteria); + outer_headers_c = MLX5_ADDR_OF(fte_match_param, mc, outer_headers); + MLX5_SET_TO_ONES(fte_match_set_lyr_2_4, outer_headers_c, ip_protocol); + MLX5_SET_TO_ONES(fte_match_set_lyr_2_4, outer_headers_c, ip_version); + + switch (type) { + case ACCEL_FS_IPV4_TCP: + case ACCEL_FS_IPV6_TCP: + MLX5_SET_TO_ONES(fte_match_set_lyr_2_4, outer_headers_c, tcp_dport); + MLX5_SET_TO_ONES(fte_match_set_lyr_2_4, outer_headers_c, tcp_sport); + break; + default: + err = -EINVAL; + goto out; + } + + switch (type) { + case ACCEL_FS_IPV4_TCP: + MLX5_SET_TO_ONES(fte_match_set_lyr_2_4, outer_headers_c, + src_ipv4_src_ipv6.ipv4_layout.ipv4); + MLX5_SET_TO_ONES(fte_match_set_lyr_2_4, outer_headers_c, + dst_ipv4_dst_ipv6.ipv4_layout.ipv4); + break; + case ACCEL_FS_IPV6_TCP: + memset(MLX5_ADDR_OF(fte_match_set_lyr_2_4, outer_headers_c, + src_ipv4_src_ipv6.ipv6_layout.ipv6), + 0xff, 16); + memset(MLX5_ADDR_OF(fte_match_set_lyr_2_4, outer_headers_c, + dst_ipv4_dst_ipv6.ipv6_layout.ipv6), + 0xff, 16); + break; + default: + err = -EINVAL; + goto out; + } + + MLX5_SET_CFG(in, match_criteria_enable, MLX5_MATCH_OUTER_HEADERS); + MLX5_SET_CFG(in, start_flow_index, ix); + ix += MLX5E_ACCEL_FS_TCP_GROUP1_SIZE; + MLX5_SET_CFG(in, end_flow_index, ix - 1); + ft->g[ft->num_groups] = mlx5_create_flow_group(ft->t, in); + if (IS_ERR(ft->g[ft->num_groups])) + goto err; + ft->num_groups++; + + /* Default Flow Group */ + memset(in, 0, inlen); + MLX5_SET_CFG(in, start_flow_index, ix); + ix += MLX5E_ACCEL_FS_TCP_GROUP2_SIZE; + MLX5_SET_CFG(in, end_flow_index, ix - 1); + ft->g[ft->num_groups] = mlx5_create_flow_group(ft->t, in); + if (IS_ERR(ft->g[ft->num_groups])) + goto err; + ft->num_groups++; + + kvfree(in); + return 0; + +err: + err = PTR_ERR(ft->g[ft->num_groups]); + ft->g[ft->num_groups] = NULL; +out: + kvfree(in); + + return err; +} + +static int accel_fs_tcp_create_table(struct mlx5e_priv *priv, enum accel_fs_tcp_type type) +{ + struct mlx5e_flow_table *ft = &priv->fs.accel_tcp->tables[type]; + struct mlx5_flow_table_attr ft_attr = {}; + int err; + + ft->num_groups = 0; + + ft_attr.max_fte = MLX5E_ACCEL_FS_TCP_TABLE_SIZE; + ft_attr.level = MLX5E_ACCEL_FS_TCP_FT_LEVEL; + ft_attr.prio = MLX5E_NIC_PRIO; + + ft->t = mlx5_create_flow_table(priv->fs.ns, &ft_attr); + if (IS_ERR(ft->t)) { + err = PTR_ERR(ft->t); + ft->t = NULL; + return err; + } + + netdev_dbg(priv->netdev, "Created fs accel table id %u level %u\n", + ft->t->id, ft->t->level); + + err = accel_fs_tcp_create_groups(ft, type); + if (err) + goto err; + + err = accel_fs_tcp_add_default_rule(priv, type); + if (err) + goto err; + + return 0; +err: + mlx5e_destroy_flow_table(ft); + return err; +} + +static int accel_fs_tcp_disable(struct mlx5e_priv *priv) +{ + int err, i; + + for (i = 0; i < ACCEL_FS_TCP_NUM_TYPES; i++) { + /* Modify ttc rules destination to point back to the indir TIRs */ + err = mlx5e_ttc_fwd_default_dest(priv, fs_accel2tt(i)); + if (err) { + netdev_err(priv->netdev, + "%s: modify ttc[%d] default destination failed, err(%d)\n", + __func__, fs_accel2tt(i), err); + return err; + } + } + + return 0; +} + +static int accel_fs_tcp_enable(struct mlx5e_priv *priv) +{ + struct mlx5_flow_destination dest = {}; + int err, i; + + dest.type = MLX5_FLOW_DESTINATION_TYPE_FLOW_TABLE; + for (i = 0; i < ACCEL_FS_TCP_NUM_TYPES; i++) { + dest.ft = priv->fs.accel_tcp->tables[i].t; + + /* Modify ttc rules destination to point on the accel_fs FTs */ + err = mlx5e_ttc_fwd_dest(priv, fs_accel2tt(i), &dest); + if (err) { + netdev_err(priv->netdev, + "%s: modify ttc[%d] destination to accel failed, err(%d)\n", + __func__, fs_accel2tt(i), err); + return err; + } + } + return 0; +} + +static void accel_fs_tcp_destroy_table(struct mlx5e_priv *priv, int i) +{ + struct mlx5e_accel_fs_tcp *fs_tcp; + + fs_tcp = priv->fs.accel_tcp; + if (IS_ERR_OR_NULL(fs_tcp->tables[i].t)) + return; + + mlx5_del_flow_rules(fs_tcp->default_rules[i]); + mlx5e_destroy_flow_table(&fs_tcp->tables[i]); + fs_tcp->tables[i].t = NULL; +} + +void mlx5e_accel_fs_tcp_destroy(struct mlx5e_priv *priv) +{ + int i; + + if (!priv->fs.accel_tcp) + return; + + accel_fs_tcp_disable(priv); + + for (i = 0; i < ACCEL_FS_TCP_NUM_TYPES; i++) + accel_fs_tcp_destroy_table(priv, i); + + kfree(priv->fs.accel_tcp); + priv->fs.accel_tcp = NULL; +} + +int mlx5e_accel_fs_tcp_create(struct mlx5e_priv *priv) +{ + int i, err; + + if (!MLX5_CAP_FLOWTABLE_NIC_RX(priv->mdev, ft_field_support.outer_ip_version)) + return -EOPNOTSUPP; + + priv->fs.accel_tcp = kzalloc(sizeof(*priv->fs.accel_tcp), GFP_KERNEL); + if (!priv->fs.accel_tcp) + return -ENOMEM; + + for (i = 0; i < ACCEL_FS_TCP_NUM_TYPES; i++) { + err = accel_fs_tcp_create_table(priv, i); + if (err) + goto err_destroy_tables; + } + + err = accel_fs_tcp_enable(priv); + if (err) + goto err_destroy_tables; + + return 0; + +err_destroy_tables: + while (--i >= 0) + accel_fs_tcp_destroy_table(priv, i); + + kfree(priv->fs.accel_tcp); + priv->fs.accel_tcp = NULL; + return err; +} --- linux-azure-5.8-5.8.0.orig/drivers/net/ethernet/mellanox/mlx5/core/en_accel/fs_tcp.h +++ linux-azure-5.8-5.8.0/drivers/net/ethernet/mellanox/mlx5/core/en_accel/fs_tcp.h @@ -0,0 +1,27 @@ +/* SPDX-License-Identifier: GPL-2.0 OR Linux-OpenIB */ +/* Copyright (c) 2020, Mellanox Technologies inc. All rights reserved. */ + +#ifndef __MLX5E_ACCEL_FS_TCP_H__ +#define __MLX5E_ACCEL_FS_TCP_H__ + +#include "en.h" + +#ifdef CONFIG_MLX5_EN_TLS +int mlx5e_accel_fs_tcp_create(struct mlx5e_priv *priv); +void mlx5e_accel_fs_tcp_destroy(struct mlx5e_priv *priv); +struct mlx5_flow_handle *mlx5e_accel_fs_add_sk(struct mlx5e_priv *priv, + struct sock *sk, u32 tirn, + uint32_t flow_tag); +void mlx5e_accel_fs_del_sk(struct mlx5_flow_handle *rule); +#else +static inline int mlx5e_accel_fs_tcp_create(struct mlx5e_priv *priv) { return 0; } +static inline void mlx5e_accel_fs_tcp_destroy(struct mlx5e_priv *priv) {} +static inline struct mlx5_flow_handle *mlx5e_accel_fs_add_sk(struct mlx5e_priv *priv, + struct sock *sk, u32 tirn, + uint32_t flow_tag) +{ return ERR_PTR(-EOPNOTSUPP); } +static inline void mlx5e_accel_fs_del_sk(struct mlx5_flow_handle *rule) {} +#endif + +#endif /* __MLX5E_ACCEL_FS_TCP_H__ */ + --- linux-azure-5.8-5.8.0.orig/drivers/net/ethernet/mellanox/mlx5/core/en_accel/ipsec_stats.c +++ linux-azure-5.8-5.8.0/drivers/net/ethernet/mellanox/mlx5/core/en_accel/ipsec_stats.c @@ -76,7 +76,7 @@ static MLX5E_DECLARE_STATS_GRP_OP_NUM_STATS(ipsec_sw) { - return NUM_IPSEC_SW_COUNTERS; + return priv->ipsec ? NUM_IPSEC_SW_COUNTERS : 0; } static inline MLX5E_DECLARE_STATS_GRP_OP_UPDATE_STATS(ipsec_sw) {} @@ -105,7 +105,7 @@ static MLX5E_DECLARE_STATS_GRP_OP_NUM_STATS(ipsec_hw) { - return (mlx5_fpga_ipsec_device_caps(priv->mdev)) ? NUM_IPSEC_HW_COUNTERS : 0; + return (priv->ipsec && mlx5_fpga_ipsec_device_caps(priv->mdev)) ? NUM_IPSEC_HW_COUNTERS : 0; } static MLX5E_DECLARE_STATS_GRP_OP_UPDATE_STATS(ipsec_hw) --- linux-azure-5.8-5.8.0.orig/drivers/net/ethernet/mellanox/mlx5/core/en_accel/ktls.c +++ linux-azure-5.8-5.8.0/drivers/net/ethernet/mellanox/mlx5/core/en_accel/ktls.c @@ -3,31 +3,8 @@ #include "en.h" #include "en_accel/ktls.h" - -u16 mlx5e_ktls_get_stop_room(struct mlx5e_txqsq *sq) -{ - u16 num_dumps, stop_room = 0; - - num_dumps = mlx5e_ktls_dumps_num_wqes(sq, MAX_SKB_FRAGS, TLS_MAX_PAYLOAD_SIZE); - - stop_room += mlx5e_stop_room_for_wqe(MLX5E_KTLS_STATIC_WQEBBS); - stop_room += mlx5e_stop_room_for_wqe(MLX5E_KTLS_PROGRESS_WQEBBS); - stop_room += num_dumps * mlx5e_stop_room_for_wqe(MLX5E_KTLS_DUMP_WQEBBS); - - return stop_room; -} - -static int mlx5e_ktls_create_tis(struct mlx5_core_dev *mdev, u32 *tisn) -{ - u32 in[MLX5_ST_SZ_DW(create_tis_in)] = {}; - void *tisc; - - tisc = MLX5_ADDR_OF(create_tis_in, in, ctx); - - MLX5_SET(tisc, tisc, tls_en, 1); - - return mlx5e_create_tis(mdev, in, tisn); -} +#include "en_accel/ktls_utils.h" +#include "en_accel/fs_tcp.h" static int mlx5e_ktls_add(struct net_device *netdev, struct sock *sk, enum tls_offload_ctx_dir direction, @@ -35,42 +12,17 @@ u32 start_offload_tcp_sn) { struct mlx5e_priv *priv = netdev_priv(netdev); - struct mlx5e_ktls_offload_context_tx *tx_priv; - struct tls_context *tls_ctx = tls_get_ctx(sk); struct mlx5_core_dev *mdev = priv->mdev; int err; - if (WARN_ON(direction != TLS_OFFLOAD_CTX_DIR_TX)) - return -EINVAL; - if (WARN_ON(!mlx5e_ktls_type_check(mdev, crypto_info))) return -EOPNOTSUPP; - tx_priv = kvzalloc(sizeof(*tx_priv), GFP_KERNEL); - if (!tx_priv) - return -ENOMEM; - - tx_priv->expected_seq = start_offload_tcp_sn; - tx_priv->crypto_info = *(struct tls12_crypto_info_aes_gcm_128 *)crypto_info; - mlx5e_set_ktls_tx_priv_ctx(tls_ctx, tx_priv); - - /* tc and underlay_qpn values are not in use for tls tis */ - err = mlx5e_ktls_create_tis(mdev, &tx_priv->tisn); - if (err) - goto create_tis_fail; - - err = mlx5_ktls_create_key(mdev, crypto_info, &tx_priv->key_id); - if (err) - goto encryption_key_create_fail; - - mlx5e_ktls_tx_offload_set_pending(tx_priv); - - return 0; + if (direction == TLS_OFFLOAD_CTX_DIR_TX) + err = mlx5e_ktls_add_tx(netdev, sk, crypto_info, start_offload_tcp_sn); + else + err = mlx5e_ktls_add_rx(netdev, sk, crypto_info, start_offload_tcp_sn); -encryption_key_create_fail: - mlx5e_destroy_tis(priv->mdev, tx_priv->tisn); -create_tis_fail: - kvfree(tx_priv); return err; } @@ -78,29 +30,72 @@ struct tls_context *tls_ctx, enum tls_offload_ctx_dir direction) { - struct mlx5e_priv *priv = netdev_priv(netdev); - struct mlx5e_ktls_offload_context_tx *tx_priv = - mlx5e_get_ktls_tx_priv_ctx(tls_ctx); + if (direction == TLS_OFFLOAD_CTX_DIR_TX) + mlx5e_ktls_del_tx(netdev, tls_ctx); + else + mlx5e_ktls_del_rx(netdev, tls_ctx); +} - mlx5e_destroy_tis(priv->mdev, tx_priv->tisn); - mlx5_ktls_destroy_key(priv->mdev, tx_priv->key_id); - kvfree(tx_priv); +static int mlx5e_ktls_resync(struct net_device *netdev, + struct sock *sk, u32 seq, u8 *rcd_sn, + enum tls_offload_ctx_dir direction) +{ + if (unlikely(direction != TLS_OFFLOAD_CTX_DIR_RX)) + return -EOPNOTSUPP; + + mlx5e_ktls_rx_resync(netdev, sk, seq, rcd_sn); + return 0; } static const struct tlsdev_ops mlx5e_ktls_ops = { .tls_dev_add = mlx5e_ktls_add, .tls_dev_del = mlx5e_ktls_del, + .tls_dev_resync = mlx5e_ktls_resync, }; void mlx5e_ktls_build_netdev(struct mlx5e_priv *priv) { struct net_device *netdev = priv->netdev; + struct mlx5_core_dev *mdev = priv->mdev; - if (!mlx5_accel_is_ktls_device(priv->mdev)) - return; + if (mlx5_accel_is_ktls_tx(mdev)) { + netdev->hw_features |= NETIF_F_HW_TLS_TX; + netdev->features |= NETIF_F_HW_TLS_TX; + } - netdev->hw_features |= NETIF_F_HW_TLS_TX; - netdev->features |= NETIF_F_HW_TLS_TX; + if (mlx5_accel_is_ktls_rx(mdev)) + netdev->hw_features |= NETIF_F_HW_TLS_RX; netdev->tlsdev_ops = &mlx5e_ktls_ops; } + +int mlx5e_ktls_set_feature_rx(struct net_device *netdev, bool enable) +{ + struct mlx5e_priv *priv = netdev_priv(netdev); + int err = 0; + + mutex_lock(&priv->state_lock); + if (enable) + err = mlx5e_accel_fs_tcp_create(priv); + else + mlx5e_accel_fs_tcp_destroy(priv); + mutex_unlock(&priv->state_lock); + + return err; +} + +int mlx5e_ktls_init_rx(struct mlx5e_priv *priv) +{ + int err = 0; + + if (priv->netdev->features & NETIF_F_HW_TLS_RX) + err = mlx5e_accel_fs_tcp_create(priv); + + return err; +} + +void mlx5e_ktls_cleanup_rx(struct mlx5e_priv *priv) +{ + if (priv->netdev->features & NETIF_F_HW_TLS_RX) + mlx5e_accel_fs_tcp_destroy(priv); +} --- linux-azure-5.8-5.8.0.orig/drivers/net/ethernet/mellanox/mlx5/core/en_accel/ktls.h +++ linux-azure-5.8-5.8.0/drivers/net/ethernet/mellanox/mlx5/core/en_accel/ktls.h @@ -7,122 +7,32 @@ #include "en.h" #ifdef CONFIG_MLX5_EN_TLS -#include -#include "accel/tls.h" -#include "en_accel/tls_rxtx.h" - -#define MLX5E_KTLS_STATIC_UMR_WQE_SZ \ - (offsetof(struct mlx5e_umr_wqe, tls_static_params_ctx) + \ - MLX5_ST_SZ_BYTES(tls_static_params)) -#define MLX5E_KTLS_STATIC_WQEBBS \ - (DIV_ROUND_UP(MLX5E_KTLS_STATIC_UMR_WQE_SZ, MLX5_SEND_WQE_BB)) - -#define MLX5E_KTLS_PROGRESS_WQE_SZ \ - (offsetof(struct mlx5e_tx_wqe, tls_progress_params_ctx) + \ - MLX5_ST_SZ_BYTES(tls_progress_params)) -#define MLX5E_KTLS_PROGRESS_WQEBBS \ - (DIV_ROUND_UP(MLX5E_KTLS_PROGRESS_WQE_SZ, MLX5_SEND_WQE_BB)) - -struct mlx5e_dump_wqe { - struct mlx5_wqe_ctrl_seg ctrl; - struct mlx5_wqe_data_seg data; -}; - -#define MLX5E_TLS_FETCH_UMR_WQE(sq, pi) \ - ((struct mlx5e_umr_wqe *)mlx5e_fetch_wqe(&(sq)->wq, pi, MLX5E_KTLS_STATIC_UMR_WQE_SZ)) -#define MLX5E_TLS_FETCH_PROGRESS_WQE(sq, pi) \ - ((struct mlx5e_tx_wqe *)mlx5e_fetch_wqe(&(sq)->wq, pi, MLX5E_KTLS_PROGRESS_WQE_SZ)) -#define MLX5E_TLS_FETCH_DUMP_WQE(sq, pi) \ - ((struct mlx5e_dump_wqe *)mlx5e_fetch_wqe(&(sq)->wq, pi, \ - sizeof(struct mlx5e_dump_wqe))) - -#define MLX5E_KTLS_DUMP_WQEBBS \ - (DIV_ROUND_UP(sizeof(struct mlx5e_dump_wqe), MLX5_SEND_WQE_BB)) - -enum { - MLX5E_TLS_PROGRESS_PARAMS_AUTH_STATE_NO_OFFLOAD = 0, - MLX5E_TLS_PROGRESS_PARAMS_AUTH_STATE_OFFLOAD = 1, - MLX5E_TLS_PROGRESS_PARAMS_AUTH_STATE_AUTHENTICATION = 2, -}; - -enum { - MLX5E_TLS_PROGRESS_PARAMS_RECORD_TRACKER_STATE_START = 0, - MLX5E_TLS_PROGRESS_PARAMS_RECORD_TRACKER_STATE_TRACKING = 1, - MLX5E_TLS_PROGRESS_PARAMS_RECORD_TRACKER_STATE_SEARCHING = 2, -}; - -struct mlx5e_ktls_offload_context_tx { - struct tls_offload_context_tx *tx_ctx; - struct tls12_crypto_info_aes_gcm_128 crypto_info; - u32 expected_seq; - u32 tisn; - u32 key_id; - bool ctx_post_pending; -}; - -struct mlx5e_ktls_offload_context_tx_shadow { - struct tls_offload_context_tx tx_ctx; - struct mlx5e_ktls_offload_context_tx *priv_tx; -}; - -static inline void -mlx5e_set_ktls_tx_priv_ctx(struct tls_context *tls_ctx, - struct mlx5e_ktls_offload_context_tx *priv_tx) -{ - struct tls_offload_context_tx *tx_ctx = tls_offload_ctx_tx(tls_ctx); - struct mlx5e_ktls_offload_context_tx_shadow *shadow; - - BUILD_BUG_ON(sizeof(*shadow) > TLS_OFFLOAD_CONTEXT_SIZE_TX); - shadow = (struct mlx5e_ktls_offload_context_tx_shadow *)tx_ctx; +void mlx5e_ktls_build_netdev(struct mlx5e_priv *priv); +int mlx5e_ktls_init_rx(struct mlx5e_priv *priv); +void mlx5e_ktls_cleanup_rx(struct mlx5e_priv *priv); +int mlx5e_ktls_set_feature_rx(struct net_device *netdev, bool enable); +#else - shadow->priv_tx = priv_tx; - priv_tx->tx_ctx = tx_ctx; +static inline void mlx5e_ktls_build_netdev(struct mlx5e_priv *priv) +{ } -static inline struct mlx5e_ktls_offload_context_tx * -mlx5e_get_ktls_tx_priv_ctx(struct tls_context *tls_ctx) +static inline int mlx5e_ktls_init_rx(struct mlx5e_priv *priv) { - struct tls_offload_context_tx *tx_ctx = tls_offload_ctx_tx(tls_ctx); - struct mlx5e_ktls_offload_context_tx_shadow *shadow; - - BUILD_BUG_ON(sizeof(*shadow) > TLS_OFFLOAD_CONTEXT_SIZE_TX); - - shadow = (struct mlx5e_ktls_offload_context_tx_shadow *)tx_ctx; - - return shadow->priv_tx; + return 0; } -void mlx5e_ktls_build_netdev(struct mlx5e_priv *priv); -void mlx5e_ktls_tx_offload_set_pending(struct mlx5e_ktls_offload_context_tx *priv_tx); - -bool mlx5e_ktls_handle_tx_skb(struct tls_context *tls_ctx, struct mlx5e_txqsq *sq, - struct sk_buff *skb, int datalen, - struct mlx5e_accel_tx_tls_state *state); -void mlx5e_ktls_tx_handle_resync_dump_comp(struct mlx5e_txqsq *sq, - struct mlx5e_tx_wqe_info *wi, - u32 *dma_fifo_cc); -u16 mlx5e_ktls_get_stop_room(struct mlx5e_txqsq *sq); - -static inline u8 -mlx5e_ktls_dumps_num_wqes(struct mlx5e_txqsq *sq, unsigned int nfrags, - unsigned int sync_len) +static inline void mlx5e_ktls_cleanup_rx(struct mlx5e_priv *priv) { - /* Given the MTU and sync_len, calculates an upper bound for the - * number of DUMP WQEs needed for the TX resync of a record. - */ - return nfrags + DIV_ROUND_UP(sync_len, sq->hw_mtu); } -#else -static inline void mlx5e_ktls_build_netdev(struct mlx5e_priv *priv) +static inline int mlx5e_ktls_set_feature_rx(struct net_device *netdev, bool enable) { + netdev_warn(netdev, "kTLS is not supported\n"); + return -EOPNOTSUPP; } -static inline void -mlx5e_ktls_tx_handle_resync_dump_comp(struct mlx5e_txqsq *sq, - struct mlx5e_tx_wqe_info *wi, - u32 *dma_fifo_cc) {} #endif #endif /* __MLX5E_TLS_H__ */ --- linux-azure-5.8-5.8.0.orig/drivers/net/ethernet/mellanox/mlx5/core/en_accel/ktls_rx.c +++ linux-azure-5.8-5.8.0/drivers/net/ethernet/mellanox/mlx5/core/en_accel/ktls_rx.c @@ -0,0 +1,680 @@ +// SPDX-License-Identifier: GPL-2.0 OR Linux-OpenIB +// Copyright (c) 2019 Mellanox Technologies. + +#include +#include "en_accel/en_accel.h" +#include "en_accel/tls.h" +#include "en_accel/ktls_txrx.h" +#include "en_accel/ktls_utils.h" +#include "en_accel/fs_tcp.h" + +struct accel_rule { + struct work_struct work; + struct mlx5e_priv *priv; + struct mlx5_flow_handle *rule; +}; + +#define PROGRESS_PARAMS_WRITE_UNIT 64 +#define PROGRESS_PARAMS_PADDED_SIZE \ + (ALIGN(sizeof(struct mlx5_wqe_tls_progress_params_seg), \ + PROGRESS_PARAMS_WRITE_UNIT)) + +struct mlx5e_ktls_rx_resync_buf { + union { + struct mlx5_wqe_tls_progress_params_seg progress; + u8 pad[PROGRESS_PARAMS_PADDED_SIZE]; + } ____cacheline_aligned_in_smp; + dma_addr_t dma_addr; + struct mlx5e_ktls_offload_context_rx *priv_rx; +}; + +enum { + MLX5E_PRIV_RX_FLAG_DELETING, + MLX5E_NUM_PRIV_RX_FLAGS, +}; + +struct mlx5e_ktls_rx_resync_ctx { + struct tls_offload_resync_async core; + struct work_struct work; + struct mlx5e_priv *priv; + refcount_t refcnt; + __be64 sw_rcd_sn_be; + u32 seq; +}; + +struct mlx5e_ktls_offload_context_rx { + struct tls12_crypto_info_aes_gcm_128 crypto_info; + struct accel_rule rule; + struct sock *sk; + struct mlx5e_rq_stats *stats; + struct completion add_ctx; + u32 tirn; + u32 key_id; + u32 rxq; + DECLARE_BITMAP(flags, MLX5E_NUM_PRIV_RX_FLAGS); + + /* resync */ + struct mlx5e_ktls_rx_resync_ctx resync; +}; + +static bool mlx5e_ktls_priv_rx_put(struct mlx5e_ktls_offload_context_rx *priv_rx) +{ + if (!refcount_dec_and_test(&priv_rx->resync.refcnt)) + return false; + + kfree(priv_rx); + return true; +} + +static void mlx5e_ktls_priv_rx_get(struct mlx5e_ktls_offload_context_rx *priv_rx) +{ + refcount_inc(&priv_rx->resync.refcnt); +} + +static int mlx5e_ktls_create_tir(struct mlx5_core_dev *mdev, u32 *tirn, u32 rqtn) +{ + int err, inlen; + void *tirc; + u32 *in; + + inlen = MLX5_ST_SZ_BYTES(create_tir_in); + in = kvzalloc(inlen, GFP_KERNEL); + if (!in) + return -ENOMEM; + + tirc = MLX5_ADDR_OF(create_tir_in, in, ctx); + + MLX5_SET(tirc, tirc, transport_domain, mdev->mlx5e_res.td.tdn); + MLX5_SET(tirc, tirc, disp_type, MLX5_TIRC_DISP_TYPE_INDIRECT); + MLX5_SET(tirc, tirc, rx_hash_fn, MLX5_RX_HASH_FN_INVERTED_XOR8); + MLX5_SET(tirc, tirc, indirect_table, rqtn); + MLX5_SET(tirc, tirc, tls_en, 1); + MLX5_SET(tirc, tirc, self_lb_block, + MLX5_TIRC_SELF_LB_BLOCK_BLOCK_UNICAST | + MLX5_TIRC_SELF_LB_BLOCK_BLOCK_MULTICAST); + + err = mlx5_core_create_tir(mdev, in, tirn); + + kvfree(in); + return err; +} + +static void accel_rule_handle_work(struct work_struct *work) +{ + struct mlx5e_ktls_offload_context_rx *priv_rx; + struct accel_rule *accel_rule; + struct mlx5_flow_handle *rule; + + accel_rule = container_of(work, struct accel_rule, work); + priv_rx = container_of(accel_rule, struct mlx5e_ktls_offload_context_rx, rule); + if (unlikely(test_bit(MLX5E_PRIV_RX_FLAG_DELETING, priv_rx->flags))) + goto out; + + rule = mlx5e_accel_fs_add_sk(accel_rule->priv, priv_rx->sk, + priv_rx->tirn, MLX5_FS_DEFAULT_FLOW_TAG); + if (!IS_ERR_OR_NULL(rule)) + accel_rule->rule = rule; +out: + complete(&priv_rx->add_ctx); +} + +static void accel_rule_init(struct accel_rule *rule, struct mlx5e_priv *priv, + struct sock *sk) +{ + INIT_WORK(&rule->work, accel_rule_handle_work); + rule->priv = priv; +} + +static void icosq_fill_wi(struct mlx5e_icosq *sq, u16 pi, + struct mlx5e_icosq_wqe_info *wi) +{ + sq->db.wqe_info[pi] = *wi; +} + +static struct mlx5_wqe_ctrl_seg * +post_static_params(struct mlx5e_icosq *sq, + struct mlx5e_ktls_offload_context_rx *priv_rx) +{ + struct mlx5e_set_tls_static_params_wqe *wqe; + struct mlx5e_icosq_wqe_info wi; + u16 pi, num_wqebbs, room; + + num_wqebbs = MLX5E_TLS_SET_STATIC_PARAMS_WQEBBS; + room = mlx5e_stop_room_for_wqe(num_wqebbs); + if (unlikely(!mlx5e_wqc_has_room_for(&sq->wq, sq->cc, sq->pc, room))) + return ERR_PTR(-ENOSPC); + + pi = mlx5e_icosq_get_next_pi(sq, num_wqebbs); + wqe = MLX5E_TLS_FETCH_SET_STATIC_PARAMS_WQE(sq, pi); + mlx5e_ktls_build_static_params(wqe, sq->pc, sq->sqn, &priv_rx->crypto_info, + priv_rx->tirn, priv_rx->key_id, + priv_rx->resync.seq, false, + TLS_OFFLOAD_CTX_DIR_RX); + wi = (struct mlx5e_icosq_wqe_info) { + .wqe_type = MLX5E_ICOSQ_WQE_UMR_TLS, + .num_wqebbs = num_wqebbs, + .tls_set_params.priv_rx = priv_rx, + }; + icosq_fill_wi(sq, pi, &wi); + sq->pc += num_wqebbs; + + return &wqe->ctrl; +} + +static struct mlx5_wqe_ctrl_seg * +post_progress_params(struct mlx5e_icosq *sq, + struct mlx5e_ktls_offload_context_rx *priv_rx, + u32 next_record_tcp_sn) +{ + struct mlx5e_set_tls_progress_params_wqe *wqe; + struct mlx5e_icosq_wqe_info wi; + u16 pi, num_wqebbs, room; + + num_wqebbs = MLX5E_TLS_SET_PROGRESS_PARAMS_WQEBBS; + room = mlx5e_stop_room_for_wqe(num_wqebbs); + if (unlikely(!mlx5e_wqc_has_room_for(&sq->wq, sq->cc, sq->pc, room))) + return ERR_PTR(-ENOSPC); + + pi = mlx5e_icosq_get_next_pi(sq, num_wqebbs); + wqe = MLX5E_TLS_FETCH_SET_PROGRESS_PARAMS_WQE(sq, pi); + mlx5e_ktls_build_progress_params(wqe, sq->pc, sq->sqn, priv_rx->tirn, false, + next_record_tcp_sn, + TLS_OFFLOAD_CTX_DIR_RX); + wi = (struct mlx5e_icosq_wqe_info) { + .wqe_type = MLX5E_ICOSQ_WQE_SET_PSV_TLS, + .num_wqebbs = num_wqebbs, + .tls_set_params.priv_rx = priv_rx, + }; + + icosq_fill_wi(sq, pi, &wi); + sq->pc += num_wqebbs; + + return &wqe->ctrl; +} + +static int post_rx_param_wqes(struct mlx5e_channel *c, + struct mlx5e_ktls_offload_context_rx *priv_rx, + u32 next_record_tcp_sn) +{ + struct mlx5_wqe_ctrl_seg *cseg; + struct mlx5e_icosq *sq; + int err; + + err = 0; + sq = &c->async_icosq; + spin_lock_bh(&c->async_icosq_lock); + + cseg = post_static_params(sq, priv_rx); + if (IS_ERR(cseg)) + goto err_out; + cseg = post_progress_params(sq, priv_rx, next_record_tcp_sn); + if (IS_ERR(cseg)) + goto err_out; + + mlx5e_notify_hw(&sq->wq, sq->pc, sq->uar_map, cseg); +unlock: + spin_unlock_bh(&c->async_icosq_lock); + + return err; + +err_out: + priv_rx->stats->tls_resync_req_skip++; + err = PTR_ERR(cseg); + complete(&priv_rx->add_ctx); + goto unlock; +} + +static void +mlx5e_set_ktls_rx_priv_ctx(struct tls_context *tls_ctx, + struct mlx5e_ktls_offload_context_rx *priv_rx) +{ + struct mlx5e_ktls_offload_context_rx **ctx = + __tls_driver_ctx(tls_ctx, TLS_OFFLOAD_CTX_DIR_RX); + + BUILD_BUG_ON(sizeof(struct mlx5e_ktls_offload_context_rx *) > + TLS_OFFLOAD_CONTEXT_SIZE_RX); + + *ctx = priv_rx; +} + +static struct mlx5e_ktls_offload_context_rx * +mlx5e_get_ktls_rx_priv_ctx(struct tls_context *tls_ctx) +{ + struct mlx5e_ktls_offload_context_rx **ctx = + __tls_driver_ctx(tls_ctx, TLS_OFFLOAD_CTX_DIR_RX); + + return *ctx; +} + +/* Re-sync */ +/* Runs in work context */ +static int +resync_post_get_progress_params(struct mlx5e_icosq *sq, + struct mlx5e_ktls_offload_context_rx *priv_rx) +{ + struct mlx5e_get_tls_progress_params_wqe *wqe; + struct mlx5e_ktls_rx_resync_buf *buf; + struct mlx5e_icosq_wqe_info wi; + struct mlx5_wqe_ctrl_seg *cseg; + struct mlx5_seg_get_psv *psv; + struct device *pdev; + int err; + u16 pi; + + buf = kzalloc(sizeof(*buf), GFP_KERNEL); + if (unlikely(!buf)) { + err = -ENOMEM; + goto err_out; + } + + pdev = sq->channel->priv->mdev->device; + buf->dma_addr = dma_map_single(pdev, &buf->progress, + PROGRESS_PARAMS_PADDED_SIZE, DMA_FROM_DEVICE); + if (unlikely(dma_mapping_error(pdev, buf->dma_addr))) { + err = -ENOMEM; + goto err_free; + } + + buf->priv_rx = priv_rx; + + BUILD_BUG_ON(MLX5E_KTLS_GET_PROGRESS_WQEBBS != 1); + + spin_lock_bh(&sq->channel->async_icosq_lock); + + if (unlikely(!mlx5e_wqc_has_room_for(&sq->wq, sq->cc, sq->pc, 1))) { + spin_unlock_bh(&sq->channel->async_icosq_lock); + err = -ENOSPC; + goto err_dma_unmap; + } + + pi = mlx5e_icosq_get_next_pi(sq, 1); + wqe = MLX5E_TLS_FETCH_GET_PROGRESS_PARAMS_WQE(sq, pi); + +#define GET_PSV_DS_CNT (DIV_ROUND_UP(sizeof(*wqe), MLX5_SEND_WQE_DS)) + + cseg = &wqe->ctrl; + cseg->opmod_idx_opcode = + cpu_to_be32((sq->pc << 8) | MLX5_OPCODE_GET_PSV | + (MLX5_OPC_MOD_TLS_TIR_PROGRESS_PARAMS << 24)); + cseg->qpn_ds = + cpu_to_be32((sq->sqn << MLX5_WQE_CTRL_QPN_SHIFT) | GET_PSV_DS_CNT); + + psv = &wqe->psv; + psv->num_psv = 1 << 4; + psv->l_key = sq->channel->mkey_be; + psv->psv_index[0] = cpu_to_be32(priv_rx->tirn); + psv->va = cpu_to_be64(buf->dma_addr); + + wi = (struct mlx5e_icosq_wqe_info) { + .wqe_type = MLX5E_ICOSQ_WQE_GET_PSV_TLS, + .num_wqebbs = 1, + .tls_get_params.buf = buf, + }; + icosq_fill_wi(sq, pi, &wi); + sq->pc++; + mlx5e_notify_hw(&sq->wq, sq->pc, sq->uar_map, cseg); + spin_unlock_bh(&sq->channel->async_icosq_lock); + + return 0; + +err_dma_unmap: + dma_unmap_single(pdev, buf->dma_addr, PROGRESS_PARAMS_PADDED_SIZE, DMA_FROM_DEVICE); +err_free: + kfree(buf); +err_out: + priv_rx->stats->tls_resync_req_skip++; + return err; +} + +/* Function is called with elevated refcount. + * It decreases it only if no WQE is posted. + */ +static void resync_handle_work(struct work_struct *work) +{ + struct mlx5e_ktls_offload_context_rx *priv_rx; + struct mlx5e_ktls_rx_resync_ctx *resync; + struct mlx5e_channel *c; + struct mlx5e_icosq *sq; + + resync = container_of(work, struct mlx5e_ktls_rx_resync_ctx, work); + priv_rx = container_of(resync, struct mlx5e_ktls_offload_context_rx, resync); + + if (unlikely(test_bit(MLX5E_PRIV_RX_FLAG_DELETING, priv_rx->flags))) { + mlx5e_ktls_priv_rx_put(priv_rx); + return; + } + + c = resync->priv->channels.c[priv_rx->rxq]; + sq = &c->async_icosq; + + if (resync_post_get_progress_params(sq, priv_rx)) + mlx5e_ktls_priv_rx_put(priv_rx); +} + +static void resync_init(struct mlx5e_ktls_rx_resync_ctx *resync, + struct mlx5e_priv *priv) +{ + INIT_WORK(&resync->work, resync_handle_work); + resync->priv = priv; + refcount_set(&resync->refcnt, 1); +} + +/* Function can be called with the refcount being either elevated or not. + * It does not affect the refcount. + */ +static int resync_handle_seq_match(struct mlx5e_ktls_offload_context_rx *priv_rx, + struct mlx5e_channel *c) +{ + struct tls12_crypto_info_aes_gcm_128 *info = &priv_rx->crypto_info; + struct mlx5_wqe_ctrl_seg *cseg; + struct mlx5e_icosq *sq; + int err; + + memcpy(info->rec_seq, &priv_rx->resync.sw_rcd_sn_be, sizeof(info->rec_seq)); + err = 0; + + sq = &c->async_icosq; + spin_lock_bh(&c->async_icosq_lock); + + cseg = post_static_params(sq, priv_rx); + if (IS_ERR(cseg)) { + priv_rx->stats->tls_resync_res_skip++; + err = PTR_ERR(cseg); + goto unlock; + } + /* Do not increment priv_rx refcnt, CQE handling is empty */ + mlx5e_notify_hw(&sq->wq, sq->pc, sq->uar_map, cseg); + priv_rx->stats->tls_resync_res_ok++; +unlock: + spin_unlock_bh(&c->async_icosq_lock); + + return err; +} + +/* Function can be called with the refcount being either elevated or not. + * It decreases the refcount and may free the kTLS priv context. + * Refcount is not elevated only if tls_dev_del has been called, but GET_PSV was + * already in flight. + */ +void mlx5e_ktls_handle_get_psv_completion(struct mlx5e_icosq_wqe_info *wi, + struct mlx5e_icosq *sq) +{ + struct mlx5e_ktls_rx_resync_buf *buf = wi->tls_get_params.buf; + struct mlx5e_ktls_offload_context_rx *priv_rx; + struct mlx5e_ktls_rx_resync_ctx *resync; + u8 tracker_state, auth_state, *ctx; + struct device *dev; + u32 hw_seq; + + priv_rx = buf->priv_rx; + resync = &priv_rx->resync; + dev = resync->priv->mdev->device; + if (unlikely(test_bit(MLX5E_PRIV_RX_FLAG_DELETING, priv_rx->flags))) + goto out; + + dma_sync_single_for_cpu(dev, buf->dma_addr, PROGRESS_PARAMS_PADDED_SIZE, + DMA_FROM_DEVICE); + + ctx = buf->progress.ctx; + tracker_state = MLX5_GET(tls_progress_params, ctx, record_tracker_state); + auth_state = MLX5_GET(tls_progress_params, ctx, auth_state); + if (tracker_state != MLX5E_TLS_PROGRESS_PARAMS_RECORD_TRACKER_STATE_TRACKING || + auth_state != MLX5E_TLS_PROGRESS_PARAMS_AUTH_STATE_NO_OFFLOAD) { + priv_rx->stats->tls_resync_req_skip++; + goto out; + } + + hw_seq = MLX5_GET(tls_progress_params, ctx, hw_resync_tcp_sn); + tls_offload_rx_resync_async_request_end(priv_rx->sk, cpu_to_be32(hw_seq)); + priv_rx->stats->tls_resync_req_end++; +out: + mlx5e_ktls_priv_rx_put(priv_rx); + dma_unmap_single(dev, buf->dma_addr, PROGRESS_PARAMS_PADDED_SIZE, DMA_FROM_DEVICE); + kfree(buf); +} + +/* Runs in NAPI. + * Function elevates the refcount, unless no work is queued. + */ +static bool resync_queue_get_psv(struct sock *sk) +{ + struct mlx5e_ktls_offload_context_rx *priv_rx; + struct mlx5e_ktls_rx_resync_ctx *resync; + + priv_rx = mlx5e_get_ktls_rx_priv_ctx(tls_get_ctx(sk)); + if (unlikely(!priv_rx)) + return false; + + if (unlikely(test_bit(MLX5E_PRIV_RX_FLAG_DELETING, priv_rx->flags))) + return false; + + resync = &priv_rx->resync; + mlx5e_ktls_priv_rx_get(priv_rx); + if (unlikely(!queue_work(resync->priv->tls->rx_wq, &resync->work))) + mlx5e_ktls_priv_rx_put(priv_rx); + + return true; +} + +/* Runs in NAPI */ +static void resync_update_sn(struct mlx5e_rq *rq, struct sk_buff *skb) +{ + struct ethhdr *eth = (struct ethhdr *)(skb->data); + struct net_device *netdev = rq->netdev; + struct sock *sk = NULL; + unsigned int datalen; + struct iphdr *iph; + struct tcphdr *th; + __be32 seq; + int depth = 0; + + __vlan_get_protocol(skb, eth->h_proto, &depth); + iph = (struct iphdr *)(skb->data + depth); + + if (iph->version == 4) { + depth += sizeof(struct iphdr); + th = (void *)iph + sizeof(struct iphdr); + + sk = inet_lookup_established(dev_net(netdev), &tcp_hashinfo, + iph->saddr, th->source, iph->daddr, + th->dest, netdev->ifindex); +#if IS_ENABLED(CONFIG_IPV6) + } else { + struct ipv6hdr *ipv6h = (struct ipv6hdr *)iph; + + depth += sizeof(struct ipv6hdr); + th = (void *)ipv6h + sizeof(struct ipv6hdr); + + sk = __inet6_lookup_established(dev_net(netdev), &tcp_hashinfo, + &ipv6h->saddr, th->source, + &ipv6h->daddr, ntohs(th->dest), + netdev->ifindex, 0); +#endif + } + + depth += sizeof(struct tcphdr); + + if (unlikely(!sk)) + return; + + if (unlikely(sk->sk_state == TCP_TIME_WAIT)) + goto unref; + + if (unlikely(!resync_queue_get_psv(sk))) + goto unref; + + seq = th->seq; + datalen = skb->len - depth; + tls_offload_rx_resync_async_request_start(sk, seq, datalen); + rq->stats->tls_resync_req_start++; + +unref: + sock_gen_put(sk); +} + +void mlx5e_ktls_rx_resync(struct net_device *netdev, struct sock *sk, + u32 seq, u8 *rcd_sn) +{ + struct mlx5e_ktls_offload_context_rx *priv_rx; + struct mlx5e_ktls_rx_resync_ctx *resync; + struct mlx5e_priv *priv; + struct mlx5e_channel *c; + + priv_rx = mlx5e_get_ktls_rx_priv_ctx(tls_get_ctx(sk)); + if (unlikely(!priv_rx)) + return; + + resync = &priv_rx->resync; + resync->sw_rcd_sn_be = *(__be64 *)rcd_sn; + resync->seq = seq; + + priv = netdev_priv(netdev); + c = priv->channels.c[priv_rx->rxq]; + + resync_handle_seq_match(priv_rx, c); +} + +/* End of resync section */ + +void mlx5e_ktls_handle_rx_skb(struct mlx5e_rq *rq, struct sk_buff *skb, + struct mlx5_cqe64 *cqe, u32 *cqe_bcnt) +{ + struct mlx5e_rq_stats *stats = rq->stats; + + switch (get_cqe_tls_offload(cqe)) { + case CQE_TLS_OFFLOAD_DECRYPTED: + skb->decrypted = 1; + stats->tls_decrypted_packets++; + stats->tls_decrypted_bytes += *cqe_bcnt; + break; + case CQE_TLS_OFFLOAD_RESYNC: + stats->tls_resync_req_pkt++; + resync_update_sn(rq, skb); + break; + default: /* CQE_TLS_OFFLOAD_ERROR: */ + stats->tls_err++; + break; + } +} + +void mlx5e_ktls_handle_ctx_completion(struct mlx5e_icosq_wqe_info *wi) +{ + struct mlx5e_ktls_offload_context_rx *priv_rx = wi->tls_set_params.priv_rx; + struct accel_rule *rule = &priv_rx->rule; + + if (unlikely(test_bit(MLX5E_PRIV_RX_FLAG_DELETING, priv_rx->flags))) { + complete(&priv_rx->add_ctx); + return; + } + queue_work(rule->priv->tls->rx_wq, &rule->work); +} + +static int mlx5e_ktls_sk_get_rxq(struct sock *sk) +{ + int rxq = sk_rx_queue_get(sk); + + if (unlikely(rxq == -1)) + rxq = 0; + + return rxq; +} + +int mlx5e_ktls_add_rx(struct net_device *netdev, struct sock *sk, + struct tls_crypto_info *crypto_info, + u32 start_offload_tcp_sn) +{ + struct mlx5e_ktls_offload_context_rx *priv_rx; + struct mlx5e_ktls_rx_resync_ctx *resync; + struct tls_context *tls_ctx; + struct mlx5_core_dev *mdev; + struct mlx5e_priv *priv; + int rxq, err; + u32 rqtn; + + tls_ctx = tls_get_ctx(sk); + priv = netdev_priv(netdev); + mdev = priv->mdev; + priv_rx = kzalloc(sizeof(*priv_rx), GFP_KERNEL); + if (unlikely(!priv_rx)) + return -ENOMEM; + + err = mlx5_ktls_create_key(mdev, crypto_info, &priv_rx->key_id); + if (err) + goto err_create_key; + + priv_rx->crypto_info = + *(struct tls12_crypto_info_aes_gcm_128 *)crypto_info; + + rxq = mlx5e_ktls_sk_get_rxq(sk); + priv_rx->rxq = rxq; + priv_rx->sk = sk; + + priv_rx->stats = &priv->channel_stats[rxq].rq; + mlx5e_set_ktls_rx_priv_ctx(tls_ctx, priv_rx); + + rqtn = priv->direct_tir[rxq].rqt.rqtn; + + err = mlx5e_ktls_create_tir(mdev, &priv_rx->tirn, rqtn); + if (err) + goto err_create_tir; + + init_completion(&priv_rx->add_ctx); + + accel_rule_init(&priv_rx->rule, priv, sk); + resync = &priv_rx->resync; + resync_init(resync, priv); + tls_offload_ctx_rx(tls_ctx)->resync_async = &resync->core; + tls_offload_rx_resync_set_type(sk, TLS_OFFLOAD_SYNC_TYPE_DRIVER_REQ_ASYNC); + + err = post_rx_param_wqes(priv->channels.c[rxq], priv_rx, start_offload_tcp_sn); + if (err) + goto err_post_wqes; + + priv_rx->stats->tls_ctx++; + + return 0; + +err_post_wqes: + mlx5_core_destroy_tir(mdev, priv_rx->tirn); +err_create_tir: + mlx5_ktls_destroy_key(mdev, priv_rx->key_id); +err_create_key: + kfree(priv_rx); + return err; +} + +void mlx5e_ktls_del_rx(struct net_device *netdev, struct tls_context *tls_ctx) +{ + struct mlx5e_ktls_offload_context_rx *priv_rx; + struct mlx5e_ktls_rx_resync_ctx *resync; + struct mlx5_core_dev *mdev; + struct mlx5e_priv *priv; + + priv = netdev_priv(netdev); + mdev = priv->mdev; + + priv_rx = mlx5e_get_ktls_rx_priv_ctx(tls_ctx); + set_bit(MLX5E_PRIV_RX_FLAG_DELETING, priv_rx->flags); + mlx5e_set_ktls_rx_priv_ctx(tls_ctx, NULL); + synchronize_net(); /* Sync with NAPI */ + if (!cancel_work_sync(&priv_rx->rule.work)) + /* completion is needed, as the priv_rx in the add flow + * is maintained on the wqe info (wi), not on the socket. + */ + wait_for_completion(&priv_rx->add_ctx); + resync = &priv_rx->resync; + if (cancel_work_sync(&resync->work)) + mlx5e_ktls_priv_rx_put(priv_rx); + + priv_rx->stats->tls_del++; + if (priv_rx->rule.rule) + mlx5e_accel_fs_del_sk(priv_rx->rule.rule); + + mlx5_core_destroy_tir(mdev, priv_rx->tirn); + mlx5_ktls_destroy_key(mdev, priv_rx->key_id); + /* priv_rx should normally be freed here, but if there is an outstanding + * GET_PSV, deallocation will be delayed until the CQE for GET_PSV is + * processed. + */ + mlx5e_ktls_priv_rx_put(priv_rx); +} --- linux-azure-5.8-5.8.0.orig/drivers/net/ethernet/mellanox/mlx5/core/en_accel/ktls_tx.c +++ linux-azure-5.8-5.8.0/drivers/net/ethernet/mellanox/mlx5/core/en_accel/ktls_tx.c @@ -1,105 +1,139 @@ // SPDX-License-Identifier: GPL-2.0 OR Linux-OpenIB // Copyright (c) 2019 Mellanox Technologies. -#include -#include "en.h" -#include "en/txrx.h" -#include "en_accel/ktls.h" +#include "en_accel/ktls_txrx.h" +#include "en_accel/ktls_utils.h" -enum { - MLX5E_STATIC_PARAMS_CONTEXT_TLS_1_2 = 0x2, +struct mlx5e_dump_wqe { + struct mlx5_wqe_ctrl_seg ctrl; + struct mlx5_wqe_data_seg data; }; -enum { - MLX5E_ENCRYPTION_STANDARD_TLS = 0x1, -}; +#define MLX5E_KTLS_DUMP_WQEBBS \ + (DIV_ROUND_UP(sizeof(struct mlx5e_dump_wqe), MLX5_SEND_WQE_BB)) -#define EXTRACT_INFO_FIELDS do { \ - salt = info->salt; \ - rec_seq = info->rec_seq; \ - salt_sz = sizeof(info->salt); \ - rec_seq_sz = sizeof(info->rec_seq); \ -} while (0) +static u8 +mlx5e_ktls_dumps_num_wqes(struct mlx5e_txqsq *sq, unsigned int nfrags, + unsigned int sync_len) +{ + /* Given the MTU and sync_len, calculates an upper bound for the + * number of DUMP WQEs needed for the TX resync of a record. + */ + return nfrags + DIV_ROUND_UP(sync_len, sq->hw_mtu); +} -static void -fill_static_params_ctx(void *ctx, struct mlx5e_ktls_offload_context_tx *priv_tx) +u16 mlx5e_ktls_get_stop_room(struct mlx5e_txqsq *sq) { - struct tls12_crypto_info_aes_gcm_128 *info = &priv_tx->crypto_info; - char *initial_rn, *gcm_iv; - u16 salt_sz, rec_seq_sz; - char *salt, *rec_seq; - u8 tls_version; - - EXTRACT_INFO_FIELDS; - - gcm_iv = MLX5_ADDR_OF(tls_static_params, ctx, gcm_iv); - initial_rn = MLX5_ADDR_OF(tls_static_params, ctx, initial_record_number); - - memcpy(gcm_iv, salt, salt_sz); - memcpy(initial_rn, rec_seq, rec_seq_sz); - - tls_version = MLX5E_STATIC_PARAMS_CONTEXT_TLS_1_2; - - MLX5_SET(tls_static_params, ctx, tls_version, tls_version); - MLX5_SET(tls_static_params, ctx, const_1, 1); - MLX5_SET(tls_static_params, ctx, const_2, 2); - MLX5_SET(tls_static_params, ctx, encryption_standard, - MLX5E_ENCRYPTION_STANDARD_TLS); - MLX5_SET(tls_static_params, ctx, dek_index, priv_tx->key_id); + u16 num_dumps, stop_room = 0; + + num_dumps = mlx5e_ktls_dumps_num_wqes(sq, MAX_SKB_FRAGS, TLS_MAX_PAYLOAD_SIZE); + + stop_room += mlx5e_stop_room_for_wqe(MLX5E_TLS_SET_STATIC_PARAMS_WQEBBS); + stop_room += mlx5e_stop_room_for_wqe(MLX5E_TLS_SET_PROGRESS_PARAMS_WQEBBS); + stop_room += num_dumps * mlx5e_stop_room_for_wqe(MLX5E_KTLS_DUMP_WQEBBS); + + return stop_room; } -static void -build_static_params(struct mlx5e_umr_wqe *wqe, u16 pc, u32 sqn, - struct mlx5e_ktls_offload_context_tx *priv_tx, - bool fence) -{ - struct mlx5_wqe_ctrl_seg *cseg = &wqe->ctrl; - struct mlx5_wqe_umr_ctrl_seg *ucseg = &wqe->uctrl; - -#define STATIC_PARAMS_DS_CNT \ - DIV_ROUND_UP(MLX5E_KTLS_STATIC_UMR_WQE_SZ, MLX5_SEND_WQE_DS) - - cseg->opmod_idx_opcode = cpu_to_be32((pc << 8) | MLX5_OPCODE_UMR | - (MLX5_OPC_MOD_TLS_TIS_STATIC_PARAMS << 24)); - cseg->qpn_ds = cpu_to_be32((sqn << MLX5_WQE_CTRL_QPN_SHIFT) | - STATIC_PARAMS_DS_CNT); - cseg->fm_ce_se = fence ? MLX5_FENCE_MODE_INITIATOR_SMALL : 0; - cseg->tisn = cpu_to_be32(priv_tx->tisn << 8); +static int mlx5e_ktls_create_tis(struct mlx5_core_dev *mdev, u32 *tisn) +{ + u32 in[MLX5_ST_SZ_DW(create_tis_in)] = {}; + void *tisc; + + tisc = MLX5_ADDR_OF(create_tis_in, in, ctx); - ucseg->flags = MLX5_UMR_INLINE; - ucseg->bsf_octowords = cpu_to_be16(MLX5_ST_SZ_BYTES(tls_static_params) / 16); + MLX5_SET(tisc, tisc, tls_en, 1); - fill_static_params_ctx(wqe->tls_static_params_ctx, priv_tx); + return mlx5e_create_tis(mdev, in, tisn); } +struct mlx5e_ktls_offload_context_tx { + struct tls_offload_context_tx *tx_ctx; + struct tls12_crypto_info_aes_gcm_128 crypto_info; + u32 expected_seq; + u32 tisn; + u32 key_id; + bool ctx_post_pending; +}; + static void -fill_progress_params_ctx(void *ctx, struct mlx5e_ktls_offload_context_tx *priv_tx) +mlx5e_set_ktls_tx_priv_ctx(struct tls_context *tls_ctx, + struct mlx5e_ktls_offload_context_tx *priv_tx) { - MLX5_SET(tls_progress_params, ctx, tisn, priv_tx->tisn); - MLX5_SET(tls_progress_params, ctx, record_tracker_state, - MLX5E_TLS_PROGRESS_PARAMS_RECORD_TRACKER_STATE_START); - MLX5_SET(tls_progress_params, ctx, auth_state, - MLX5E_TLS_PROGRESS_PARAMS_AUTH_STATE_NO_OFFLOAD); + struct mlx5e_ktls_offload_context_tx **ctx = + __tls_driver_ctx(tls_ctx, TLS_OFFLOAD_CTX_DIR_TX); + + BUILD_BUG_ON(sizeof(struct mlx5e_ktls_offload_context_tx *) > + TLS_OFFLOAD_CONTEXT_SIZE_TX); + + *ctx = priv_tx; } -static void -build_progress_params(struct mlx5e_tx_wqe *wqe, u16 pc, u32 sqn, - struct mlx5e_ktls_offload_context_tx *priv_tx, - bool fence) +static struct mlx5e_ktls_offload_context_tx * +mlx5e_get_ktls_tx_priv_ctx(struct tls_context *tls_ctx) +{ + struct mlx5e_ktls_offload_context_tx **ctx = + __tls_driver_ctx(tls_ctx, TLS_OFFLOAD_CTX_DIR_TX); + + return *ctx; +} + +int mlx5e_ktls_add_tx(struct net_device *netdev, struct sock *sk, + struct tls_crypto_info *crypto_info, u32 start_offload_tcp_sn) { - struct mlx5_wqe_ctrl_seg *cseg = &wqe->ctrl; + struct mlx5e_ktls_offload_context_tx *priv_tx; + struct tls_context *tls_ctx; + struct mlx5_core_dev *mdev; + struct mlx5e_priv *priv; + int err; + + tls_ctx = tls_get_ctx(sk); + priv = netdev_priv(netdev); + mdev = priv->mdev; + + priv_tx = kzalloc(sizeof(*priv_tx), GFP_KERNEL); + if (!priv_tx) + return -ENOMEM; -#define PROGRESS_PARAMS_DS_CNT \ - DIV_ROUND_UP(MLX5E_KTLS_PROGRESS_WQE_SZ, MLX5_SEND_WQE_DS) + err = mlx5_ktls_create_key(mdev, crypto_info, &priv_tx->key_id); + if (err) + goto err_create_key; + + priv_tx->expected_seq = start_offload_tcp_sn; + priv_tx->crypto_info = + *(struct tls12_crypto_info_aes_gcm_128 *)crypto_info; + priv_tx->tx_ctx = tls_offload_ctx_tx(tls_ctx); + + mlx5e_set_ktls_tx_priv_ctx(tls_ctx, priv_tx); + + err = mlx5e_ktls_create_tis(mdev, &priv_tx->tisn); + if (err) + goto err_create_tis; + + priv_tx->ctx_post_pending = true; - cseg->opmod_idx_opcode = - cpu_to_be32((pc << 8) | MLX5_OPCODE_SET_PSV | - (MLX5_OPC_MOD_TLS_TIS_PROGRESS_PARAMS << 24)); - cseg->qpn_ds = cpu_to_be32((sqn << MLX5_WQE_CTRL_QPN_SHIFT) | - PROGRESS_PARAMS_DS_CNT); - cseg->fm_ce_se = fence ? MLX5_FENCE_MODE_INITIATOR_SMALL : 0; + return 0; - fill_progress_params_ctx(wqe->tls_progress_params_ctx, priv_tx); +err_create_tis: + mlx5_ktls_destroy_key(mdev, priv_tx->key_id); +err_create_key: + kfree(priv_tx); + return err; +} + +void mlx5e_ktls_del_tx(struct net_device *netdev, struct tls_context *tls_ctx) +{ + struct mlx5e_ktls_offload_context_tx *priv_tx; + struct mlx5_core_dev *mdev; + struct mlx5e_priv *priv; + + priv_tx = mlx5e_get_ktls_tx_priv_ctx(tls_ctx); + priv = netdev_priv(netdev); + mdev = priv->mdev; + + mlx5e_destroy_tis(mdev, priv_tx->tisn); + mlx5_ktls_destroy_key(mdev, priv_tx->key_id); + kfree(priv_tx); } static void tx_fill_wi(struct mlx5e_txqsq *sq, @@ -115,11 +149,6 @@ }; } -void mlx5e_ktls_tx_offload_set_pending(struct mlx5e_ktls_offload_context_tx *priv_tx) -{ - priv_tx->ctx_post_pending = true; -} - static bool mlx5e_ktls_tx_offload_test_and_clear_pending(struct mlx5e_ktls_offload_context_tx *priv_tx) { @@ -135,12 +164,15 @@ struct mlx5e_ktls_offload_context_tx *priv_tx, bool fence) { - u16 pi, num_wqebbs = MLX5E_KTLS_STATIC_WQEBBS; - struct mlx5e_umr_wqe *umr_wqe; + struct mlx5e_set_tls_static_params_wqe *wqe; + u16 pi, num_wqebbs; + num_wqebbs = MLX5E_TLS_SET_STATIC_PARAMS_WQEBBS; pi = mlx5e_txqsq_get_next_pi(sq, num_wqebbs); - umr_wqe = MLX5E_TLS_FETCH_UMR_WQE(sq, pi); - build_static_params(umr_wqe, sq->pc, sq->sqn, priv_tx, fence); + wqe = MLX5E_TLS_FETCH_SET_STATIC_PARAMS_WQE(sq, pi); + mlx5e_ktls_build_static_params(wqe, sq->pc, sq->sqn, &priv_tx->crypto_info, + priv_tx->tisn, priv_tx->key_id, 0, fence, + TLS_OFFLOAD_CTX_DIR_TX); tx_fill_wi(sq, pi, num_wqebbs, 0, NULL); sq->pc += num_wqebbs; } @@ -150,12 +182,14 @@ struct mlx5e_ktls_offload_context_tx *priv_tx, bool fence) { - u16 pi, num_wqebbs = MLX5E_KTLS_PROGRESS_WQEBBS; - struct mlx5e_tx_wqe *wqe; + struct mlx5e_set_tls_progress_params_wqe *wqe; + u16 pi, num_wqebbs; + num_wqebbs = MLX5E_TLS_SET_PROGRESS_PARAMS_WQEBBS; pi = mlx5e_txqsq_get_next_pi(sq, num_wqebbs); - wqe = MLX5E_TLS_FETCH_PROGRESS_WQE(sq, pi); - build_progress_params(wqe, sq->pc, sq->sqn, priv_tx, fence); + wqe = MLX5E_TLS_FETCH_SET_PROGRESS_PARAMS_WQE(sq, pi); + mlx5e_ktls_build_progress_params(wqe, sq->pc, sq->sqn, priv_tx->tisn, fence, 0, + TLS_OFFLOAD_CTX_DIR_TX); tx_fill_wi(sq, pi, num_wqebbs, 0, NULL); sq->pc += num_wqebbs; } @@ -284,7 +318,7 @@ cseg->opmod_idx_opcode = cpu_to_be32((sq->pc << 8) | MLX5_OPCODE_DUMP); cseg->qpn_ds = cpu_to_be32((sq->sqn << 8) | ds_cnt); - cseg->tisn = cpu_to_be32(tisn << 8); + cseg->tis_tir_num = cpu_to_be32(tisn << 8); cseg->fm_ce_se = first ? MLX5_FENCE_MODE_INITIATOR_SMALL : 0; fsz = skb_frag_size(frag); --- linux-azure-5.8-5.8.0.orig/drivers/net/ethernet/mellanox/mlx5/core/en_accel/ktls_txrx.c +++ linux-azure-5.8-5.8.0/drivers/net/ethernet/mellanox/mlx5/core/en_accel/ktls_txrx.c @@ -0,0 +1,119 @@ +// SPDX-License-Identifier: GPL-2.0 OR Linux-OpenIB +/* Copyright (c) 2020, Mellanox Technologies inc. All rights reserved. */ + +#include "en_accel/ktls_txrx.h" +#include "en_accel/ktls_utils.h" + +enum { + MLX5E_STATIC_PARAMS_CONTEXT_TLS_1_2 = 0x2, +}; + +enum { + MLX5E_ENCRYPTION_STANDARD_TLS = 0x1, +}; + +#define EXTRACT_INFO_FIELDS do { \ + salt = info->salt; \ + rec_seq = info->rec_seq; \ + salt_sz = sizeof(info->salt); \ + rec_seq_sz = sizeof(info->rec_seq); \ +} while (0) + +static void +fill_static_params(struct mlx5_wqe_tls_static_params_seg *params, + struct tls12_crypto_info_aes_gcm_128 *info, + u32 key_id, u32 resync_tcp_sn) +{ + char *initial_rn, *gcm_iv; + u16 salt_sz, rec_seq_sz; + char *salt, *rec_seq; + u8 tls_version; + u8 *ctx; + + ctx = params->ctx; + + EXTRACT_INFO_FIELDS; + + gcm_iv = MLX5_ADDR_OF(tls_static_params, ctx, gcm_iv); + initial_rn = MLX5_ADDR_OF(tls_static_params, ctx, initial_record_number); + + memcpy(gcm_iv, salt, salt_sz); + memcpy(initial_rn, rec_seq, rec_seq_sz); + + tls_version = MLX5E_STATIC_PARAMS_CONTEXT_TLS_1_2; + + MLX5_SET(tls_static_params, ctx, tls_version, tls_version); + MLX5_SET(tls_static_params, ctx, const_1, 1); + MLX5_SET(tls_static_params, ctx, const_2, 2); + MLX5_SET(tls_static_params, ctx, encryption_standard, + MLX5E_ENCRYPTION_STANDARD_TLS); + MLX5_SET(tls_static_params, ctx, resync_tcp_sn, resync_tcp_sn); + MLX5_SET(tls_static_params, ctx, dek_index, key_id); +} + +void +mlx5e_ktls_build_static_params(struct mlx5e_set_tls_static_params_wqe *wqe, + u16 pc, u32 sqn, + struct tls12_crypto_info_aes_gcm_128 *info, + u32 tis_tir_num, u32 key_id, u32 resync_tcp_sn, + bool fence, enum tls_offload_ctx_dir direction) +{ + struct mlx5_wqe_umr_ctrl_seg *ucseg = &wqe->uctrl; + struct mlx5_wqe_ctrl_seg *cseg = &wqe->ctrl; + u8 opmod = direction == TLS_OFFLOAD_CTX_DIR_TX ? + MLX5_OPC_MOD_TLS_TIS_STATIC_PARAMS : + MLX5_OPC_MOD_TLS_TIR_STATIC_PARAMS; + +#define STATIC_PARAMS_DS_CNT DIV_ROUND_UP(sizeof(*wqe), MLX5_SEND_WQE_DS) + + cseg->opmod_idx_opcode = cpu_to_be32((pc << 8) | MLX5_OPCODE_UMR | (opmod << 24)); + cseg->qpn_ds = cpu_to_be32((sqn << MLX5_WQE_CTRL_QPN_SHIFT) | + STATIC_PARAMS_DS_CNT); + cseg->fm_ce_se = fence ? MLX5_FENCE_MODE_INITIATOR_SMALL : 0; + cseg->tis_tir_num = cpu_to_be32(tis_tir_num << 8); + + ucseg->flags = MLX5_UMR_INLINE; + ucseg->bsf_octowords = cpu_to_be16(MLX5_ST_SZ_BYTES(tls_static_params) / 16); + + fill_static_params(&wqe->params, info, key_id, resync_tcp_sn); +} + +static void +fill_progress_params(struct mlx5_wqe_tls_progress_params_seg *params, u32 tis_tir_num, + u32 next_record_tcp_sn) +{ + u8 *ctx = params->ctx; + + params->tis_tir_num = cpu_to_be32(tis_tir_num); + + MLX5_SET(tls_progress_params, ctx, next_record_tcp_sn, + next_record_tcp_sn); + MLX5_SET(tls_progress_params, ctx, record_tracker_state, + MLX5E_TLS_PROGRESS_PARAMS_RECORD_TRACKER_STATE_START); + MLX5_SET(tls_progress_params, ctx, auth_state, + MLX5E_TLS_PROGRESS_PARAMS_AUTH_STATE_NO_OFFLOAD); +} + +void +mlx5e_ktls_build_progress_params(struct mlx5e_set_tls_progress_params_wqe *wqe, + u16 pc, u32 sqn, + u32 tis_tir_num, bool fence, + u32 next_record_tcp_sn, + enum tls_offload_ctx_dir direction) +{ + struct mlx5_wqe_ctrl_seg *cseg = &wqe->ctrl; + u8 opmod = direction == TLS_OFFLOAD_CTX_DIR_TX ? + MLX5_OPC_MOD_TLS_TIS_PROGRESS_PARAMS : + MLX5_OPC_MOD_TLS_TIR_PROGRESS_PARAMS; + +#define PROGRESS_PARAMS_DS_CNT DIV_ROUND_UP(sizeof(*wqe), MLX5_SEND_WQE_DS) + + cseg->opmod_idx_opcode = + cpu_to_be32((pc << 8) | MLX5_OPCODE_SET_PSV | (opmod << 24)); + cseg->qpn_ds = cpu_to_be32((sqn << MLX5_WQE_CTRL_QPN_SHIFT) | + PROGRESS_PARAMS_DS_CNT); + cseg->fm_ce_se = fence ? MLX5_FENCE_MODE_INITIATOR_SMALL : 0; + + fill_progress_params(&wqe->params, tis_tir_num, next_record_tcp_sn); +} + --- linux-azure-5.8-5.8.0.orig/drivers/net/ethernet/mellanox/mlx5/core/en_accel/ktls_txrx.h +++ linux-azure-5.8-5.8.0/drivers/net/ethernet/mellanox/mlx5/core/en_accel/ktls_txrx.h @@ -0,0 +1,42 @@ +/* SPDX-License-Identifier: GPL-2.0 OR Linux-OpenIB */ +/* Copyright (c) 2020, Mellanox Technologies inc. All rights reserved. */ + +#ifndef __MLX5E_KTLS_TXRX_H__ +#define __MLX5E_KTLS_TXRX_H__ + +#ifdef CONFIG_MLX5_EN_TLS + +#include +#include "en.h" +#include "en/txrx.h" + +struct mlx5e_accel_tx_tls_state { + u32 tls_tisn; +}; + +u16 mlx5e_ktls_get_stop_room(struct mlx5e_txqsq *sq); + +bool mlx5e_ktls_handle_tx_skb(struct tls_context *tls_ctx, struct mlx5e_txqsq *sq, + struct sk_buff *skb, int datalen, + struct mlx5e_accel_tx_tls_state *state); +void mlx5e_ktls_handle_rx_skb(struct mlx5e_rq *rq, struct sk_buff *skb, + struct mlx5_cqe64 *cqe, u32 *cqe_bcnt); + +void mlx5e_ktls_handle_ctx_completion(struct mlx5e_icosq_wqe_info *wi); +void mlx5e_ktls_handle_get_psv_completion(struct mlx5e_icosq_wqe_info *wi, + struct mlx5e_icosq *sq); + +void mlx5e_ktls_tx_handle_resync_dump_comp(struct mlx5e_txqsq *sq, + struct mlx5e_tx_wqe_info *wi, + u32 *dma_fifo_cc); +#else +static inline void +mlx5e_ktls_tx_handle_resync_dump_comp(struct mlx5e_txqsq *sq, + struct mlx5e_tx_wqe_info *wi, + u32 *dma_fifo_cc) +{ +} + +#endif /* CONFIG_MLX5_EN_TLS */ + +#endif /* __MLX5E_TLS_TXRX_H__ */ --- linux-azure-5.8-5.8.0.orig/drivers/net/ethernet/mellanox/mlx5/core/en_accel/ktls_utils.h +++ linux-azure-5.8-5.8.0/drivers/net/ethernet/mellanox/mlx5/core/en_accel/ktls_utils.h @@ -0,0 +1,86 @@ +/* SPDX-License-Identifier: GPL-2.0 OR Linux-OpenIB */ +/* Copyright (c) 2020, Mellanox Technologies inc. All rights reserved. */ + +#ifndef __MLX5E_KTLS_UTILS_H__ +#define __MLX5E_KTLS_UTILS_H__ + +#include +#include "en.h" +#include "accel/tls.h" + +enum { + MLX5E_TLS_PROGRESS_PARAMS_AUTH_STATE_NO_OFFLOAD = 0, + MLX5E_TLS_PROGRESS_PARAMS_AUTH_STATE_OFFLOAD = 1, + MLX5E_TLS_PROGRESS_PARAMS_AUTH_STATE_AUTHENTICATION = 2, +}; + +enum { + MLX5E_TLS_PROGRESS_PARAMS_RECORD_TRACKER_STATE_START = 0, + MLX5E_TLS_PROGRESS_PARAMS_RECORD_TRACKER_STATE_TRACKING = 1, + MLX5E_TLS_PROGRESS_PARAMS_RECORD_TRACKER_STATE_SEARCHING = 2, +}; + +int mlx5e_ktls_add_tx(struct net_device *netdev, struct sock *sk, + struct tls_crypto_info *crypto_info, u32 start_offload_tcp_sn); +void mlx5e_ktls_del_tx(struct net_device *netdev, struct tls_context *tls_ctx); +int mlx5e_ktls_add_rx(struct net_device *netdev, struct sock *sk, + struct tls_crypto_info *crypto_info, u32 start_offload_tcp_sn); +void mlx5e_ktls_del_rx(struct net_device *netdev, struct tls_context *tls_ctx); +void mlx5e_ktls_rx_resync(struct net_device *netdev, struct sock *sk, u32 seq, u8 *rcd_sn); + +struct mlx5e_set_tls_static_params_wqe { + struct mlx5_wqe_ctrl_seg ctrl; + struct mlx5_wqe_umr_ctrl_seg uctrl; + struct mlx5_mkey_seg mkc; + struct mlx5_wqe_tls_static_params_seg params; +}; + +struct mlx5e_set_tls_progress_params_wqe { + struct mlx5_wqe_ctrl_seg ctrl; + struct mlx5_wqe_tls_progress_params_seg params; +}; + +struct mlx5e_get_tls_progress_params_wqe { + struct mlx5_wqe_ctrl_seg ctrl; + struct mlx5_seg_get_psv psv; +}; + +#define MLX5E_TLS_SET_STATIC_PARAMS_WQEBBS \ + (DIV_ROUND_UP(sizeof(struct mlx5e_set_tls_static_params_wqe), MLX5_SEND_WQE_BB)) + +#define MLX5E_TLS_SET_PROGRESS_PARAMS_WQEBBS \ + (DIV_ROUND_UP(sizeof(struct mlx5e_set_tls_progress_params_wqe), MLX5_SEND_WQE_BB)) + +#define MLX5E_KTLS_GET_PROGRESS_WQEBBS \ + (DIV_ROUND_UP(sizeof(struct mlx5e_get_tls_progress_params_wqe), MLX5_SEND_WQE_BB)) + +#define MLX5E_TLS_FETCH_SET_STATIC_PARAMS_WQE(sq, pi) \ + ((struct mlx5e_set_tls_static_params_wqe *)\ + mlx5e_fetch_wqe(&(sq)->wq, pi, sizeof(struct mlx5e_set_tls_static_params_wqe))) + +#define MLX5E_TLS_FETCH_SET_PROGRESS_PARAMS_WQE(sq, pi) \ + ((struct mlx5e_set_tls_progress_params_wqe *)\ + mlx5e_fetch_wqe(&(sq)->wq, pi, sizeof(struct mlx5e_set_tls_progress_params_wqe))) + +#define MLX5E_TLS_FETCH_GET_PROGRESS_PARAMS_WQE(sq, pi) \ + ((struct mlx5e_get_tls_progress_params_wqe *)\ + mlx5e_fetch_wqe(&(sq)->wq, pi, sizeof(struct mlx5e_get_tls_progress_params_wqe))) + +#define MLX5E_TLS_FETCH_DUMP_WQE(sq, pi) \ + ((struct mlx5e_dump_wqe *)\ + mlx5e_fetch_wqe(&(sq)->wq, pi, sizeof(struct mlx5e_dump_wqe))) + +void +mlx5e_ktls_build_static_params(struct mlx5e_set_tls_static_params_wqe *wqe, + u16 pc, u32 sqn, + struct tls12_crypto_info_aes_gcm_128 *info, + u32 tis_tir_num, u32 key_id, u32 resync_tcp_sn, + bool fence, enum tls_offload_ctx_dir direction); +void +mlx5e_ktls_build_progress_params(struct mlx5e_set_tls_progress_params_wqe *wqe, + u16 pc, u32 sqn, + u32 tis_tir_num, bool fence, + u32 next_record_tcp_sn, + enum tls_offload_ctx_dir direction); + +#endif /* __MLX5E_TLS_UTILS_H__ */ --- linux-azure-5.8-5.8.0.orig/drivers/net/ethernet/mellanox/mlx5/core/en_accel/tls.c +++ linux-azure-5.8-5.8.0/drivers/net/ethernet/mellanox/mlx5/core/en_accel/tls.c @@ -197,6 +197,7 @@ return; } + /* FPGA */ if (!mlx5_accel_is_tls_device(priv->mdev)) return; @@ -221,11 +222,21 @@ int mlx5e_tls_init(struct mlx5e_priv *priv) { - struct mlx5e_tls *tls = kzalloc(sizeof(*tls), GFP_KERNEL); + struct mlx5e_tls *tls; + if (!mlx5_accel_is_tls_device(priv->mdev)) + return 0; + + tls = kzalloc(sizeof(*tls), GFP_KERNEL); if (!tls) return -ENOMEM; + tls->rx_wq = create_singlethread_workqueue("mlx5e_tls_rx"); + if (!tls->rx_wq) { + kfree(tls); + return -ENOMEM; + } + priv->tls = tls; return 0; } @@ -237,20 +248,7 @@ if (!tls) return; + destroy_workqueue(tls->rx_wq); kfree(tls); priv->tls = NULL; } - -u16 mlx5e_tls_get_stop_room(struct mlx5e_txqsq *sq) -{ - struct mlx5_core_dev *mdev = sq->channel->mdev; - - if (!mlx5_accel_is_tls_device(mdev)) - return 0; - - if (MLX5_CAP_GEN(mdev, tls_tx)) - return mlx5e_ktls_get_stop_room(sq); - - /* Resync SKB. */ - return mlx5e_stop_room_for_wqe(MLX5_SEND_WQE_MAX_WQEBBS); -} --- linux-azure-5.8-5.8.0.orig/drivers/net/ethernet/mellanox/mlx5/core/en_accel/tls.h +++ linux-azure-5.8-5.8.0/drivers/net/ethernet/mellanox/mlx5/core/en_accel/tls.h @@ -53,6 +53,7 @@ struct mlx5e_tls { struct mlx5e_tls_sw_stats sw_stats; + struct workqueue_struct *rx_wq; }; struct mlx5e_tls_offload_context_tx { @@ -86,6 +87,11 @@ base); } +static inline bool mlx5e_is_tls_on(struct mlx5e_priv *priv) +{ + return priv->tls; +} + void mlx5e_tls_build_netdev(struct mlx5e_priv *priv); int mlx5e_tls_init(struct mlx5e_priv *priv); void mlx5e_tls_cleanup(struct mlx5e_priv *priv); @@ -94,8 +100,6 @@ int mlx5e_tls_get_strings(struct mlx5e_priv *priv, uint8_t *data); int mlx5e_tls_get_stats(struct mlx5e_priv *priv, u64 *data); -u16 mlx5e_tls_get_stop_room(struct mlx5e_txqsq *sq); - #else static inline void mlx5e_tls_build_netdev(struct mlx5e_priv *priv) @@ -104,17 +108,13 @@ mlx5e_ktls_build_netdev(priv); } +static inline bool mlx5e_is_tls_on(struct mlx5e_priv *priv) { return false; } static inline int mlx5e_tls_init(struct mlx5e_priv *priv) { return 0; } static inline void mlx5e_tls_cleanup(struct mlx5e_priv *priv) { } static inline int mlx5e_tls_get_count(struct mlx5e_priv *priv) { return 0; } static inline int mlx5e_tls_get_strings(struct mlx5e_priv *priv, uint8_t *data) { return 0; } static inline int mlx5e_tls_get_stats(struct mlx5e_priv *priv, u64 *data) { return 0; } -static inline u16 mlx5e_tls_get_stop_room(struct mlx5e_txqsq *sq) -{ - return 0; -} - #endif #endif /* __MLX5E_TLS_H__ */ --- linux-azure-5.8-5.8.0.orig/drivers/net/ethernet/mellanox/mlx5/core/en_accel/tls_rxtx.c +++ linux-azure-5.8-5.8.0/drivers/net/ethernet/mellanox/mlx5/core/en_accel/tls_rxtx.c @@ -278,9 +278,10 @@ if (WARN_ON_ONCE(tls_ctx->netdev != netdev)) goto err_out; - if (MLX5_CAP_GEN(sq->channel->mdev, tls_tx)) + if (mlx5_accel_is_ktls_tx(sq->channel->mdev)) return mlx5e_ktls_handle_tx_skb(tls_ctx, sq, skb, datalen, state); + /* FPGA */ skb_seq = ntohl(tcp_hdr(skb)->seq); context = mlx5e_get_tls_tx_context(tls_ctx); expected_seq = context->expected_seq; @@ -305,7 +306,7 @@ void mlx5e_tls_handle_tx_wqe(struct mlx5e_txqsq *sq, struct mlx5_wqe_ctrl_seg *cseg, struct mlx5e_accel_tx_tls_state *state) { - cseg->tisn = cpu_to_be32(state->tls_tisn << 8); + cseg->tis_tir_num = cpu_to_be32(state->tls_tisn << 8); } static int tls_update_resync_sn(struct net_device *netdev, @@ -354,15 +355,13 @@ return 0; } -void mlx5e_tls_handle_rx_skb(struct net_device *netdev, struct sk_buff *skb, - u32 *cqe_bcnt) +/* FPGA tls rx handler */ +void mlx5e_tls_handle_rx_skb_metadata(struct mlx5e_rq *rq, struct sk_buff *skb, + u32 *cqe_bcnt) { struct mlx5e_tls_metadata *mdata; struct mlx5e_priv *priv; - if (!is_metadata_hdr_valid(skb)) - return; - /* Use the metadata */ mdata = (struct mlx5e_tls_metadata *)(skb->data + ETH_HLEN); switch (mdata->content.recv.syndrome) { @@ -370,13 +369,13 @@ skb->decrypted = 1; break; case SYNDROM_RESYNC_REQUEST: - tls_update_resync_sn(netdev, skb, mdata); - priv = netdev_priv(netdev); + tls_update_resync_sn(rq->netdev, skb, mdata); + priv = netdev_priv(rq->netdev); atomic64_inc(&priv->tls->sw_stats.rx_tls_resync_request); break; case SYNDROM_AUTH_FAILED: /* Authentication failure will be observed and verified by kTLS */ - priv = netdev_priv(netdev); + priv = netdev_priv(rq->netdev); atomic64_inc(&priv->tls->sw_stats.rx_tls_auth_fail); break; default: @@ -387,3 +386,18 @@ remove_metadata_hdr(skb); *cqe_bcnt -= MLX5E_METADATA_ETHER_LEN; } + +u16 mlx5e_tls_get_stop_room(struct mlx5e_txqsq *sq) +{ + struct mlx5_core_dev *mdev = sq->channel->mdev; + + if (!mlx5_accel_is_tls_device(mdev)) + return 0; + + if (mlx5_accel_is_ktls_device(mdev)) + return mlx5e_ktls_get_stop_room(sq); + + /* FPGA */ + /* Resync SKB. */ + return mlx5e_stop_room_for_wqe(MLX5_SEND_WQE_MAX_WQEBBS); +} --- linux-azure-5.8-5.8.0.orig/drivers/net/ethernet/mellanox/mlx5/core/en_accel/tls_rxtx.h +++ linux-azure-5.8-5.8.0/drivers/net/ethernet/mellanox/mlx5/core/en_accel/tls_rxtx.h @@ -34,23 +34,47 @@ #ifndef __MLX5E_TLS_RXTX_H__ #define __MLX5E_TLS_RXTX_H__ +#include "accel/accel.h" +#include "en_accel/ktls_txrx.h" + #ifdef CONFIG_MLX5_EN_TLS #include #include "en.h" #include "en/txrx.h" -struct mlx5e_accel_tx_tls_state { - u32 tls_tisn; -}; +u16 mlx5e_tls_get_stop_room(struct mlx5e_txqsq *sq); bool mlx5e_tls_handle_tx_skb(struct net_device *netdev, struct mlx5e_txqsq *sq, struct sk_buff *skb, struct mlx5e_accel_tx_tls_state *state); void mlx5e_tls_handle_tx_wqe(struct mlx5e_txqsq *sq, struct mlx5_wqe_ctrl_seg *cseg, struct mlx5e_accel_tx_tls_state *state); -void mlx5e_tls_handle_rx_skb(struct net_device *netdev, struct sk_buff *skb, - u32 *cqe_bcnt); +void mlx5e_tls_handle_rx_skb_metadata(struct mlx5e_rq *rq, struct sk_buff *skb, + u32 *cqe_bcnt); + +static inline void +mlx5e_tls_handle_rx_skb(struct mlx5e_rq *rq, struct sk_buff *skb, + struct mlx5_cqe64 *cqe, u32 *cqe_bcnt) +{ + if (unlikely(get_cqe_tls_offload(cqe))) /* cqe bit indicates a TLS device */ + return mlx5e_ktls_handle_rx_skb(rq, skb, cqe, cqe_bcnt); + + if (unlikely(test_bit(MLX5E_RQ_STATE_FPGA_TLS, &rq->state) && is_metadata_hdr_valid(skb))) + return mlx5e_tls_handle_rx_skb_metadata(rq, skb, cqe_bcnt); +} + +#else + +static inline bool +mlx5e_accel_is_tls(struct mlx5_cqe64 *cqe, struct sk_buff *skb) { return false; } +static inline void +mlx5e_tls_handle_rx_skb(struct mlx5e_rq *rq, struct sk_buff *skb, + struct mlx5_cqe64 *cqe, u32 *cqe_bcnt) {} +static inline u16 mlx5e_tls_get_stop_room(struct mlx5e_txqsq *sq) +{ + return 0; +} #endif /* CONFIG_MLX5_EN_TLS */ --- linux-azure-5.8-5.8.0.orig/drivers/net/ethernet/mellanox/mlx5/core/en_accel/tls_stats.c +++ linux-azure-5.8-5.8.0/drivers/net/ethernet/mellanox/mlx5/core/en_accel/tls_stats.c @@ -35,7 +35,6 @@ #include #include "en.h" -#include "accel/tls.h" #include "fpga/sdk.h" #include "en_accel/tls.h" @@ -51,9 +50,14 @@ #define NUM_TLS_SW_COUNTERS ARRAY_SIZE(mlx5e_tls_sw_stats_desc) +static bool is_tls_atomic_stats(struct mlx5e_priv *priv) +{ + return priv->tls && !mlx5_accel_is_ktls_device(priv->mdev); +} + int mlx5e_tls_get_count(struct mlx5e_priv *priv) { - if (!priv->tls) + if (!is_tls_atomic_stats(priv)) return 0; return NUM_TLS_SW_COUNTERS; @@ -63,7 +67,7 @@ { unsigned int i, idx = 0; - if (!priv->tls) + if (!is_tls_atomic_stats(priv)) return 0; for (i = 0; i < NUM_TLS_SW_COUNTERS; i++) @@ -77,7 +81,7 @@ { int i, idx = 0; - if (!priv->tls) + if (!is_tls_atomic_stats(priv)) return 0; for (i = 0; i < NUM_TLS_SW_COUNTERS; i++) --- linux-azure-5.8-5.8.0.orig/drivers/net/ethernet/mellanox/mlx5/core/en_arfs.c +++ linux-azure-5.8-5.8.0/drivers/net/ethernet/mellanox/mlx5/core/en_arfs.c @@ -90,23 +90,15 @@ static int arfs_disable(struct mlx5e_priv *priv) { - struct mlx5_flow_destination dest = {}; - struct mlx5e_tir *tir = priv->indir_tir; - int err = 0; - int tt; - int i; + int err, i; - dest.type = MLX5_FLOW_DESTINATION_TYPE_TIR; for (i = 0; i < ARFS_NUM_TYPES; i++) { - dest.tir_num = tir[i].tirn; - tt = arfs_get_tt(i); - /* Modify ttc rules destination to bypass the aRFS tables*/ - err = mlx5_modify_rule_destination(priv->fs.ttc.rules[tt], - &dest, NULL); + /* Modify ttc rules destination back to their default */ + err = mlx5e_ttc_fwd_default_dest(priv, arfs_get_tt(i)); if (err) { netdev_err(priv->netdev, - "%s: modify ttc destination failed\n", - __func__); + "%s: modify ttc[%d] default destination failed, err(%d)\n", + __func__, arfs_get_tt(i), err); return err; } } @@ -125,21 +117,17 @@ int mlx5e_arfs_enable(struct mlx5e_priv *priv) { struct mlx5_flow_destination dest = {}; - int err = 0; - int tt; - int i; + int err, i; dest.type = MLX5_FLOW_DESTINATION_TYPE_FLOW_TABLE; for (i = 0; i < ARFS_NUM_TYPES; i++) { dest.ft = priv->fs.arfs.arfs_tables[i].ft.t; - tt = arfs_get_tt(i); /* Modify ttc rules destination to point on the aRFS FTs */ - err = mlx5_modify_rule_destination(priv->fs.ttc.rules[tt], - &dest, NULL); + err = mlx5e_ttc_fwd_dest(priv, arfs_get_tt(i), &dest); if (err) { netdev_err(priv->netdev, - "%s: modify ttc destination failed err=%d\n", - __func__, err); + "%s: modify ttc[%d] dest to arfs, failed err(%d)\n", + __func__, arfs_get_tt(i), err); arfs_disable(priv); return err; } @@ -186,8 +174,10 @@ return -EINVAL; } + /* FIXME: Must use mlx5e_ttc_get_default_dest(), + * but can't since TTC default is not setup yet ! + */ dest.tir_num = tir[tt].tirn; - arfs_t->default_rule = mlx5_add_flow_rules(arfs_t->ft.t, NULL, &flow_act, &dest, 1); --- linux-azure-5.8-5.8.0.orig/drivers/net/ethernet/mellanox/mlx5/core/en_dcbnl.c +++ linux-azure-5.8-5.8.0/drivers/net/ethernet/mellanox/mlx5/core/en_dcbnl.c @@ -1151,6 +1151,7 @@ { struct mlx5e_channels new_channels = {}; bool reset_channels = true; + bool opened; int err = 0; mutex_lock(&priv->state_lock); @@ -1159,22 +1160,24 @@ mlx5e_params_calc_trust_tx_min_inline_mode(priv->mdev, &new_channels.params, trust_state); - if (!test_bit(MLX5E_STATE_OPENED, &priv->state)) { - priv->channels.params = new_channels.params; + opened = test_bit(MLX5E_STATE_OPENED, &priv->state); + if (!opened) reset_channels = false; - } /* Skip if tx_min_inline is the same */ if (new_channels.params.tx_min_inline_mode == priv->channels.params.tx_min_inline_mode) reset_channels = false; - if (reset_channels) + if (reset_channels) { err = mlx5e_safe_switch_channels(priv, &new_channels, mlx5e_update_trust_state_hw, &trust_state); - else + } else { err = mlx5e_update_trust_state_hw(priv, &trust_state); + if (!err && !opened) + priv->channels.params = new_channels.params; + } mutex_unlock(&priv->state_lock); --- linux-azure-5.8-5.8.0.orig/drivers/net/ethernet/mellanox/mlx5/core/en_ethtool.c +++ linux-azure-5.8-5.8.0/drivers/net/ethernet/mellanox/mlx5/core/en_ethtool.c @@ -427,12 +427,18 @@ goto out; } - new_channels.params = priv->channels.params; + new_channels.params = *cur_params; new_channels.params.num_channels = count; if (!test_bit(MLX5E_STATE_OPENED, &priv->state)) { + struct mlx5e_params old_params; + + old_params = *cur_params; *cur_params = new_channels.params; err = mlx5e_num_channels_changed(priv); + if (err) + *cur_params = old_params; + goto out; } @@ -499,7 +505,7 @@ #define MLX5E_MAX_COAL_FRAMES MLX5_MAX_CQ_COUNT static void -mlx5e_set_priv_channels_coalesce(struct mlx5e_priv *priv, struct ethtool_coalesce *coal) +mlx5e_set_priv_channels_tx_coalesce(struct mlx5e_priv *priv, struct ethtool_coalesce *coal) { struct mlx5_core_dev *mdev = priv->mdev; int tc; @@ -514,6 +520,17 @@ coal->tx_coalesce_usecs, coal->tx_max_coalesced_frames); } + } +} + +static void +mlx5e_set_priv_channels_rx_coalesce(struct mlx5e_priv *priv, struct ethtool_coalesce *coal) +{ + struct mlx5_core_dev *mdev = priv->mdev; + int i; + + for (i = 0; i < priv->channels.num; ++i) { + struct mlx5e_channel *c = priv->channels.c[i]; mlx5_core_modify_cq_moderation(mdev, &c->rq.cq.mcq, coal->rx_coalesce_usecs, @@ -560,21 +577,9 @@ tx_moder->pkts = coal->tx_max_coalesced_frames; new_channels.params.tx_dim_enabled = !!coal->use_adaptive_tx_coalesce; - if (!test_bit(MLX5E_STATE_OPENED, &priv->state)) { - priv->channels.params = new_channels.params; - goto out; - } - /* we are opened */ - reset_rx = !!coal->use_adaptive_rx_coalesce != priv->channels.params.rx_dim_enabled; reset_tx = !!coal->use_adaptive_tx_coalesce != priv->channels.params.tx_dim_enabled; - if (!reset_rx && !reset_tx) { - mlx5e_set_priv_channels_coalesce(priv, coal); - priv->channels.params = new_channels.params; - goto out; - } - if (reset_rx) { u8 mode = MLX5E_GET_PFLAG(&new_channels.params, MLX5E_PFLAG_RX_CQE_BASED_MODER); @@ -588,6 +593,20 @@ mlx5e_reset_tx_moderation(&new_channels.params, mode); } + if (!test_bit(MLX5E_STATE_OPENED, &priv->state)) { + priv->channels.params = new_channels.params; + goto out; + } + + if (!reset_rx && !reset_tx) { + if (!coal->use_adaptive_rx_coalesce) + mlx5e_set_priv_channels_rx_coalesce(priv, coal); + if (!coal->use_adaptive_tx_coalesce) + mlx5e_set_priv_channels_tx_coalesce(priv, coal); + priv->channels.params = new_channels.params; + goto out; + } + err = mlx5e_safe_switch_channels(priv, &new_channels, NULL, NULL); out: @@ -990,6 +1009,22 @@ return mlx5e_ethtool_get_link_ksettings(priv, link_ksettings); } +static int mlx5e_speed_validate(struct net_device *netdev, bool ext, + const unsigned long link_modes, u8 autoneg) +{ + /* Extended link-mode has no speed limitations. */ + if (ext) + return 0; + + if ((link_modes & MLX5E_PROT_MASK(MLX5E_56GBASE_R4)) && + autoneg != AUTONEG_ENABLE) { + netdev_err(netdev, "%s: 56G link speed requires autoneg enabled\n", + __func__); + return -EINVAL; + } + return 0; +} + static u32 mlx5e_ethtool2ptys_adver_link(const unsigned long *link_modes) { u32 i, ptys_modes = 0; @@ -1082,13 +1117,9 @@ link_modes = autoneg == AUTONEG_ENABLE ? ethtool2ptys_adver_func(adver) : mlx5e_port_speed2linkmodes(mdev, speed, !ext); - if ((link_modes & MLX5E_PROT_MASK(MLX5E_56GBASE_R4)) && - autoneg != AUTONEG_ENABLE) { - netdev_err(priv->netdev, "%s: 56G link speed requires autoneg enabled\n", - __func__); - err = -EINVAL; + err = mlx5e_speed_validate(priv->netdev, ext, link_modes, autoneg); + if (err) goto out; - } link_modes = link_modes & eproto.cap; if (!link_modes) { --- linux-azure-5.8-5.8.0.orig/drivers/net/ethernet/mellanox/mlx5/core/en_fs.c +++ linux-azure-5.8-5.8.0/drivers/net/ethernet/mellanox/mlx5/core/en_fs.c @@ -217,6 +217,9 @@ break; } + if (WARN_ONCE(*rule_p, "VLAN rule already exists type %d", rule_type)) + return 0; + *rule_p = mlx5_add_flow_rules(ft, spec, &flow_act, &dest, 1); if (IS_ERR(*rule_p)) { @@ -397,8 +400,7 @@ for_each_set_bit(i, priv->fs.vlan.active_svlans, VLAN_N_VID) mlx5e_add_vlan_rule(priv, MLX5E_VLAN_RULE_TYPE_MATCH_STAG_VID, i); - if (priv->fs.vlan.cvlan_filter_disabled && - !(priv->netdev->flags & IFF_PROMISC)) + if (priv->fs.vlan.cvlan_filter_disabled) mlx5e_add_any_vid_rules(priv); } @@ -415,8 +417,12 @@ for_each_set_bit(i, priv->fs.vlan.active_svlans, VLAN_N_VID) mlx5e_del_vlan_rule(priv, MLX5E_VLAN_RULE_TYPE_MATCH_STAG_VID, i); - if (priv->fs.vlan.cvlan_filter_disabled && - !(priv->netdev->flags & IFF_PROMISC)) + WARN_ON_ONCE(!(test_bit(MLX5E_STATE_DESTROYING, &priv->state))); + + /* must be called after DESTROY bit is set and + * set_rx_mode is called and flushed + */ + if (priv->fs.vlan.cvlan_filter_disabled) mlx5e_del_any_vid_rules(priv); } @@ -672,9 +678,9 @@ int i; for (i = 0; i < MLX5E_NUM_TT; i++) { - if (!IS_ERR_OR_NULL(ttc->rules[i])) { - mlx5_del_flow_rules(ttc->rules[i]); - ttc->rules[i] = NULL; + if (!IS_ERR_OR_NULL(ttc->rules[i].rule)) { + mlx5_del_flow_rules(ttc->rules[i].rule); + ttc->rules[i].rule = NULL; } } @@ -857,7 +863,8 @@ struct mlx5e_ttc_table *ttc) { struct mlx5_flow_destination dest = {}; - struct mlx5_flow_handle **rules; + struct mlx5_flow_handle **trules; + struct mlx5e_ttc_rule *rules; struct mlx5_flow_table *ft; int tt; int err; @@ -867,39 +874,47 @@ dest.type = MLX5_FLOW_DESTINATION_TYPE_TIR; for (tt = 0; tt < MLX5E_NUM_TT; tt++) { + struct mlx5e_ttc_rule *rule = &rules[tt]; + if (tt == MLX5E_TT_ANY) dest.tir_num = params->any_tt_tirn; else dest.tir_num = params->indir_tirn[tt]; - rules[tt] = mlx5e_generate_ttc_rule(priv, ft, &dest, - ttc_rules[tt].etype, - ttc_rules[tt].proto); - if (IS_ERR(rules[tt])) + + rule->rule = mlx5e_generate_ttc_rule(priv, ft, &dest, + ttc_rules[tt].etype, + ttc_rules[tt].proto); + if (IS_ERR(rule->rule)) { + err = PTR_ERR(rule->rule); + rule->rule = NULL; goto del_rules; + } + rule->default_dest = dest; } if (!params->inner_ttc || !mlx5e_tunnel_inner_ft_supported(priv->mdev)) return 0; - rules = ttc->tunnel_rules; + trules = ttc->tunnel_rules; dest.type = MLX5_FLOW_DESTINATION_TYPE_FLOW_TABLE; dest.ft = params->inner_ttc->ft.t; for (tt = 0; tt < MLX5E_NUM_TUNNEL_TT; tt++) { if (!mlx5e_tunnel_proto_supported(priv->mdev, ttc_tunnel_rules[tt].proto)) continue; - rules[tt] = mlx5e_generate_ttc_rule(priv, ft, &dest, - ttc_tunnel_rules[tt].etype, - ttc_tunnel_rules[tt].proto); - if (IS_ERR(rules[tt])) + trules[tt] = mlx5e_generate_ttc_rule(priv, ft, &dest, + ttc_tunnel_rules[tt].etype, + ttc_tunnel_rules[tt].proto); + if (IS_ERR(trules[tt])) { + err = PTR_ERR(trules[tt]); + trules[tt] = NULL; goto del_rules; + } } return 0; del_rules: - err = PTR_ERR(rules[tt]); - rules[tt] = NULL; mlx5e_cleanup_ttc_rules(ttc); return err; } @@ -921,6 +936,7 @@ in = kvzalloc(inlen, GFP_KERNEL); if (!in) { kfree(ft->g); + ft->g = NULL; return -ENOMEM; } @@ -1015,33 +1031,38 @@ struct mlx5e_ttc_table *ttc) { struct mlx5_flow_destination dest = {}; - struct mlx5_flow_handle **rules; + struct mlx5e_ttc_rule *rules; struct mlx5_flow_table *ft; int err; int tt; ft = ttc->ft.t; rules = ttc->rules; - dest.type = MLX5_FLOW_DESTINATION_TYPE_TIR; + for (tt = 0; tt < MLX5E_NUM_TT; tt++) { + struct mlx5e_ttc_rule *rule = &rules[tt]; + if (tt == MLX5E_TT_ANY) dest.tir_num = params->any_tt_tirn; else dest.tir_num = params->indir_tirn[tt]; - rules[tt] = mlx5e_generate_inner_ttc_rule(priv, ft, &dest, - ttc_rules[tt].etype, - ttc_rules[tt].proto); - if (IS_ERR(rules[tt])) + rule->rule = mlx5e_generate_inner_ttc_rule(priv, ft, &dest, + ttc_rules[tt].etype, + ttc_rules[tt].proto); + if (IS_ERR(rule->rule)) { + err = PTR_ERR(rule->rule); + rule->rule = NULL; goto del_rules; + } + rule->default_dest = dest; } return 0; del_rules: - err = PTR_ERR(rules[tt]); - rules[tt] = NULL; + mlx5e_cleanup_ttc_rules(ttc); return err; } @@ -1061,6 +1082,7 @@ in = kvzalloc(inlen, GFP_KERNEL); if (!in) { kfree(ft->g); + ft->g = NULL; return -ENOMEM; } @@ -1210,6 +1232,30 @@ return err; } +int mlx5e_ttc_fwd_dest(struct mlx5e_priv *priv, enum mlx5e_traffic_types type, + struct mlx5_flow_destination *new_dest) +{ + return mlx5_modify_rule_destination(priv->fs.ttc.rules[type].rule, new_dest, NULL); +} + +struct mlx5_flow_destination +mlx5e_ttc_get_default_dest(struct mlx5e_priv *priv, enum mlx5e_traffic_types type) +{ + struct mlx5_flow_destination *dest = &priv->fs.ttc.rules[type].default_dest; + + WARN_ONCE(dest->type != MLX5_FLOW_DESTINATION_TYPE_TIR, + "TTC[%d] default dest is not setup yet", type); + + return *dest; +} + +int mlx5e_ttc_fwd_default_dest(struct mlx5e_priv *priv, enum mlx5e_traffic_types type) +{ + struct mlx5_flow_destination dest = mlx5e_ttc_get_default_dest(priv, type); + + return mlx5e_ttc_fwd_dest(priv, type, &dest); +} + static void mlx5e_del_l2_flow_rule(struct mlx5e_priv *priv, struct mlx5e_l2_rule *ai) { @@ -1340,6 +1386,7 @@ ft->g[ft->num_groups] = NULL; mlx5e_destroy_groups(ft); kvfree(in); + kfree(ft->g); return err; } --- linux-azure-5.8-5.8.0.orig/drivers/net/ethernet/mellanox/mlx5/core/en_main.c +++ linux-azure-5.8-5.8.0/drivers/net/ethernet/mellanox/mlx5/core/en_main.c @@ -258,12 +258,17 @@ static int mlx5e_create_umr_mkey(struct mlx5_core_dev *mdev, u64 npages, u8 page_shift, - struct mlx5_core_mkey *umr_mkey) + struct mlx5_core_mkey *umr_mkey, + dma_addr_t filler_addr) { - int inlen = MLX5_ST_SZ_BYTES(create_mkey_in); + struct mlx5_mtt *mtt; + int inlen; void *mkc; u32 *in; int err; + int i; + + inlen = MLX5_ST_SZ_BYTES(create_mkey_in) + sizeof(*mtt) * npages; in = kvzalloc(inlen, GFP_KERNEL); if (!in) @@ -283,6 +288,18 @@ MLX5_SET(mkc, mkc, translations_octword_size, MLX5_MTT_OCTW(npages)); MLX5_SET(mkc, mkc, log_page_size, page_shift); + MLX5_SET(create_mkey_in, in, translations_octword_actual_size, + MLX5_MTT_OCTW(npages)); + + /* Initialize the mkey with all MTTs pointing to a default + * page (filler_addr). When the channels are activated, UMR + * WQEs will redirect the RX WQEs to the actual memory from + * the RQ's pool, while the gaps (wqe_overflow) remain mapped + * to the default page. + */ + mtt = MLX5_ADDR_OF(create_mkey_in, in, klm_pas_mtt); + for (i = 0 ; i < npages ; i++) + mtt[i].ptag = cpu_to_be64(filler_addr); err = mlx5_core_create_mkey(mdev, umr_mkey, in, inlen); @@ -294,7 +311,8 @@ { u64 num_mtts = MLX5E_REQUIRED_MTTS(mlx5_wq_ll_get_size(&rq->mpwqe.wq)); - return mlx5e_create_umr_mkey(mdev, num_mtts, PAGE_SHIFT, &rq->umr_mkey); + return mlx5e_create_umr_mkey(mdev, num_mtts, PAGE_SHIFT, &rq->umr_mkey, + rq->wqe_overflow.addr); } static inline u64 mlx5e_get_mpwqe_offset(struct mlx5e_rq *rq, u16 wqe_ix) @@ -362,6 +380,28 @@ mlx5e_reporter_rq_cqe_err(rq); } +static int mlx5e_alloc_mpwqe_rq_drop_page(struct mlx5e_rq *rq) +{ + rq->wqe_overflow.page = alloc_page(GFP_KERNEL); + if (!rq->wqe_overflow.page) + return -ENOMEM; + + rq->wqe_overflow.addr = dma_map_page(rq->pdev, rq->wqe_overflow.page, 0, + PAGE_SIZE, rq->buff.map_dir); + if (dma_mapping_error(rq->pdev, rq->wqe_overflow.addr)) { + __free_page(rq->wqe_overflow.page); + return -ENOMEM; + } + return 0; +} + +static void mlx5e_free_mpwqe_rq_drop_page(struct mlx5e_rq *rq) +{ + dma_unmap_page(rq->pdev, rq->wqe_overflow.addr, PAGE_SIZE, + rq->buff.map_dir); + __free_page(rq->wqe_overflow.page); +} + static int mlx5e_alloc_rq(struct mlx5e_channel *c, struct mlx5e_params *params, struct mlx5e_xsk_param *xsk, @@ -401,7 +441,7 @@ if (params->xdp_prog) bpf_prog_inc(params->xdp_prog); - rq->xdp_prog = params->xdp_prog; + RCU_INIT_POINTER(rq->xdp_prog, params->xdp_prog); rq_xdp_ix = rq->ix; if (xsk) @@ -410,7 +450,7 @@ if (err < 0) goto err_rq_wq_destroy; - rq->buff.map_dir = rq->xdp_prog ? DMA_BIDIRECTIONAL : DMA_FROM_DEVICE; + rq->buff.map_dir = params->xdp_prog ? DMA_BIDIRECTIONAL : DMA_FROM_DEVICE; rq->buff.headroom = mlx5e_get_rq_headroom(mdev, params, xsk); pool_size = 1 << params->log_rq_mtu_frames; @@ -421,6 +461,10 @@ if (err) goto err_rq_wq_destroy; + err = mlx5e_alloc_mpwqe_rq_drop_page(rq); + if (err) + goto err_rq_wq_destroy; + rq->mpwqe.wq.db = &rq->mpwqe.wq.db[MLX5_RCV_DBR]; wq_sz = mlx5_wq_ll_get_size(&rq->mpwqe.wq); @@ -459,7 +503,7 @@ err = mlx5e_create_rq_umr_mkey(mdev, rq); if (err) - goto err_rq_wq_destroy; + goto err_rq_drop_page; rq->mkey_be = cpu_to_be32(rq->umr_mkey.key); err = mlx5e_rq_alloc_mpwqe_info(rq, c); @@ -598,6 +642,8 @@ case MLX5_WQ_TYPE_LINKED_LIST_STRIDING_RQ: kvfree(rq->mpwqe.info); mlx5_core_destroy_mkey(mdev, &rq->umr_mkey); +err_rq_drop_page: + mlx5e_free_mpwqe_rq_drop_page(rq); break; default: /* MLX5_WQ_TYPE_CYCLIC */ kvfree(rq->wqe.frags); @@ -605,8 +651,8 @@ } err_rq_wq_destroy: - if (rq->xdp_prog) - bpf_prog_put(rq->xdp_prog); + if (params->xdp_prog) + bpf_prog_put(params->xdp_prog); xdp_rxq_info_unreg(&rq->xdp_rxq); page_pool_destroy(rq->page_pool); mlx5_wq_destroy(&rq->wq_ctrl); @@ -616,15 +662,22 @@ static void mlx5e_free_rq(struct mlx5e_rq *rq) { + struct mlx5e_channel *c = rq->channel; + struct bpf_prog *old_prog = NULL; int i; - if (rq->xdp_prog) - bpf_prog_put(rq->xdp_prog); + /* drop_rq has neither channel nor xdp_prog. */ + if (c) + old_prog = rcu_dereference_protected(rq->xdp_prog, + lockdep_is_held(&c->priv->state_lock)); + if (old_prog) + bpf_prog_put(old_prog); switch (rq->wq_type) { case MLX5_WQ_TYPE_LINKED_LIST_STRIDING_RQ: kvfree(rq->mpwqe.info); mlx5_core_destroy_mkey(rq->mdev, &rq->umr_mkey); + mlx5e_free_mpwqe_rq_drop_page(rq); break; default: /* MLX5_WQ_TYPE_CYCLIC */ kvfree(rq->wqe.frags); @@ -873,6 +926,9 @@ if (err) goto err_destroy_rq; + if (mlx5e_is_tls_on(c->priv) && !mlx5_accel_is_ktls_device(c->mdev)) + __set_bit(MLX5E_RQ_STATE_FPGA_TLS, &c->rq.state); /* must be FPGA */ + if (MLX5_CAP_ETH(c->mdev, cqe_checksum_full)) __set_bit(MLX5E_RQ_STATE_CSUM_FULL, &c->rq.state); @@ -905,7 +961,7 @@ void mlx5e_deactivate_rq(struct mlx5e_rq *rq) { clear_bit(MLX5E_RQ_STATE_ENABLED, &rq->state); - napi_synchronize(&rq->channel->napi); /* prevent mlx5e_post_rx_wqes */ + synchronize_net(); /* Sync with NAPI to prevent mlx5e_post_rx_wqes. */ } void mlx5e_close_rq(struct mlx5e_rq *rq) @@ -1350,12 +1406,10 @@ static void mlx5e_deactivate_txqsq(struct mlx5e_txqsq *sq) { - struct mlx5e_channel *c = sq->channel; struct mlx5_wq_cyc *wq = &sq->wq; clear_bit(MLX5E_SQ_STATE_ENABLED, &sq->state); - /* prevent netif_tx_wake_queue */ - napi_synchronize(&c->napi); + synchronize_net(); /* Sync with NAPI to prevent netif_tx_wake_queue. */ mlx5e_tx_disable_queue(sq->txq); @@ -1430,10 +1484,8 @@ void mlx5e_deactivate_icosq(struct mlx5e_icosq *icosq) { - struct mlx5e_channel *c = icosq->channel; - clear_bit(MLX5E_SQ_STATE_ENABLED, &icosq->state); - napi_synchronize(&c->napi); + synchronize_net(); /* Sync with NAPI. */ } void mlx5e_close_icosq(struct mlx5e_icosq *sq) @@ -1441,6 +1493,7 @@ struct mlx5e_channel *c = sq->channel; mlx5e_destroy_sq(c->mdev, sq->sqn); + mlx5e_free_icosq_descs(sq); mlx5e_free_icosq(sq); } @@ -1511,7 +1564,7 @@ struct mlx5e_channel *c = sq->channel; clear_bit(MLX5E_SQ_STATE_ENABLED, &sq->state); - napi_synchronize(&c->napi); + synchronize_net(); /* Sync with NAPI. */ mlx5e_destroy_sq(c->mdev, sq->sqn); mlx5e_free_xdpsq_descs(sq); @@ -1675,7 +1728,7 @@ for (tc = 0; tc < c->num_tc; tc++) { err = mlx5e_open_cq(c, params->tx_cq_moderation, - &cparam->tx_cq, &c->sq[tc].cq); + &cparam->txq_sq.cqp, &c->sq[tc].cq); if (err) goto err_close_tx_cqs; } @@ -1707,7 +1760,7 @@ int txq_ix = c->ix + tc * params->num_channels; err = mlx5e_open_txqsq(c, c->priv->tisn[c->lag_port][tc], txq_ix, - params, &cparam->sq, &c->sq[tc], tc); + params, &cparam->txq_sq, &c->sq[tc], tc); if (err) goto err_close_sqs; } @@ -1817,34 +1870,43 @@ struct dim_cq_moder icocq_moder = {0, 0}; int err; - err = mlx5e_open_cq(c, icocq_moder, &cparam->icosq_cq, &c->icosq.cq); + err = mlx5e_open_cq(c, icocq_moder, &cparam->icosq.cqp, &c->async_icosq.cq); if (err) return err; + err = mlx5e_open_cq(c, icocq_moder, &cparam->async_icosq.cqp, &c->icosq.cq); + if (err) + goto err_close_async_icosq_cq; + err = mlx5e_open_tx_cqs(c, params, cparam); if (err) goto err_close_icosq_cq; - err = mlx5e_open_cq(c, params->tx_cq_moderation, &cparam->tx_cq, &c->xdpsq.cq); + err = mlx5e_open_cq(c, params->tx_cq_moderation, &cparam->xdp_sq.cqp, &c->xdpsq.cq); if (err) goto err_close_tx_cqs; - err = mlx5e_open_cq(c, params->rx_cq_moderation, &cparam->rx_cq, &c->rq.cq); + err = mlx5e_open_cq(c, params->rx_cq_moderation, &cparam->rq.cqp, &c->rq.cq); if (err) goto err_close_xdp_tx_cqs; - /* XDP SQ CQ params are same as normal TXQ sq CQ params */ err = c->xdp ? mlx5e_open_cq(c, params->tx_cq_moderation, - &cparam->tx_cq, &c->rq_xdpsq.cq) : 0; + &cparam->xdp_sq.cqp, &c->rq_xdpsq.cq) : 0; if (err) goto err_close_rx_cq; napi_enable(&c->napi); - err = mlx5e_open_icosq(c, params, &cparam->icosq, &c->icosq); + spin_lock_init(&c->async_icosq_lock); + + err = mlx5e_open_icosq(c, params, &cparam->async_icosq, &c->async_icosq); if (err) goto err_disable_napi; + err = mlx5e_open_icosq(c, params, &cparam->icosq, &c->icosq); + if (err) + goto err_close_async_icosq; + err = mlx5e_open_sqs(c, params, cparam); if (err) goto err_close_icosq; @@ -1879,6 +1941,9 @@ err_close_icosq: mlx5e_close_icosq(&c->icosq); +err_close_async_icosq: + mlx5e_close_icosq(&c->async_icosq); + err_disable_napi: napi_disable(&c->napi); @@ -1897,6 +1962,9 @@ err_close_icosq_cq: mlx5e_close_cq(&c->icosq.cq); +err_close_async_icosq_cq: + mlx5e_close_cq(&c->async_icosq.cq); + return err; } @@ -1908,6 +1976,7 @@ mlx5e_close_xdpsq(&c->rq_xdpsq); mlx5e_close_sqs(c); mlx5e_close_icosq(&c->icosq); + mlx5e_close_icosq(&c->async_icosq); napi_disable(&c->napi); if (c->xdp) mlx5e_close_cq(&c->rq_xdpsq.cq); @@ -1915,6 +1984,7 @@ mlx5e_close_cq(&c->xdpsq.cq); mlx5e_close_tx_cqs(c); mlx5e_close_cq(&c->icosq.cq); + mlx5e_close_cq(&c->async_icosq.cq); } static u8 mlx5e_enumerate_lag_port(struct mlx5_core_dev *mdev, int ix) @@ -1995,6 +2065,7 @@ for (tc = 0; tc < c->num_tc; tc++) mlx5e_activate_txqsq(&c->sq[tc]); mlx5e_activate_icosq(&c->icosq); + mlx5e_activate_icosq(&c->async_icosq); mlx5e_activate_rq(&c->rq); if (test_bit(MLX5E_CHANNEL_STATE_XSK, c->state)) @@ -2009,6 +2080,7 @@ mlx5e_deactivate_xsk(c); mlx5e_deactivate_rq(&c->rq); + mlx5e_deactivate_icosq(&c->async_icosq); mlx5e_deactivate_icosq(&c->icosq); for (tc = 0; tc < c->num_tc; tc++) mlx5e_deactivate_txqsq(&c->sq[tc]); @@ -2138,6 +2210,7 @@ MLX5_SET(rqc, rqc, scatter_fcs, params->scatter_fcs_en); param->wq.buf_numa_node = dev_to_node(mdev->device); + mlx5e_build_rx_cq_param(priv, params, xsk, ¶m->cqp); } static void mlx5e_build_drop_rq_param(struct mlx5e_priv *priv, @@ -2180,6 +2253,7 @@ mlx5e_build_sq_param_common(priv, param); MLX5_SET(wq, wq, log_wq_sz, params->log_sq_size); MLX5_SET(sqc, sqc, allow_swp, allow_swp); + mlx5e_build_tx_cq_param(priv, params, ¶m->cqp); } static void mlx5e_build_common_cq_param(struct mlx5e_priv *priv, @@ -2256,6 +2330,7 @@ MLX5_SET(wq, wq, log_wq_sz, log_wq_size); MLX5_SET(sqc, sqc, reg_umr, MLX5_CAP_ETH(priv->mdev, reg_umr_sq)); + mlx5e_build_ico_cq_param(priv, log_wq_size, ¶m->cqp); } void mlx5e_build_xdpsq_param(struct mlx5e_priv *priv, @@ -2268,6 +2343,7 @@ mlx5e_build_sq_param_common(priv, param); MLX5_SET(wq, wq, log_wq_sz, params->log_sq_size); param->is_mpw = MLX5E_GET_PFLAG(params, MLX5E_PFLAG_XDP_TX_MPWQE); + mlx5e_build_tx_cq_param(priv, params, ¶m->cqp); } static u8 mlx5e_build_icosq_log_wq_sz(struct mlx5e_params *params, @@ -2282,22 +2358,29 @@ } } +static u8 mlx5e_build_async_icosq_log_wq_sz(struct net_device *netdev) +{ + if (netdev->hw_features & NETIF_F_HW_TLS_RX) + return MLX5E_PARAMS_DEFAULT_LOG_SQ_SIZE; + + return MLX5E_PARAMS_MINIMUM_LOG_SQ_SIZE; +} + static void mlx5e_build_channel_param(struct mlx5e_priv *priv, struct mlx5e_params *params, struct mlx5e_channel_param *cparam) { - u8 icosq_log_wq_sz; + u8 icosq_log_wq_sz, async_icosq_log_wq_sz; mlx5e_build_rq_param(priv, params, NULL, &cparam->rq); icosq_log_wq_sz = mlx5e_build_icosq_log_wq_sz(params, &cparam->rq); + async_icosq_log_wq_sz = mlx5e_build_async_icosq_log_wq_sz(priv->netdev); - mlx5e_build_sq_param(priv, params, &cparam->sq); + mlx5e_build_sq_param(priv, params, &cparam->txq_sq); mlx5e_build_xdpsq_param(priv, params, &cparam->xdp_sq); mlx5e_build_icosq_param(priv, icosq_log_wq_sz, &cparam->icosq); - mlx5e_build_rx_cq_param(priv, params, NULL, &cparam->rx_cq); - mlx5e_build_tx_cq_param(priv, params, &cparam->tx_cq); - mlx5e_build_ico_cq_param(priv, icosq_log_wq_sz, &cparam->icosq_cq); + mlx5e_build_icosq_param(priv, async_icosq_log_wq_sz, &cparam->async_icosq); } int mlx5e_open_channels(struct mlx5e_priv *priv, @@ -3077,7 +3160,8 @@ mlx5_set_port_admin_status(mdev, state); - if (!MLX5_ESWITCH_MANAGER(mdev) || mlx5_eswitch_mode(esw) == MLX5_ESWITCH_OFFLOADS) + if (!MLX5_ESWITCH_MANAGER(mdev) || mlx5_eswitch_mode(esw) == MLX5_ESWITCH_OFFLOADS || + !MLX5_CAP_GEN(mdev, uplink_follow)) return; if (state == MLX5_PORT_UP) @@ -3522,18 +3606,23 @@ new_channels.params.num_tc = tc ? tc : 1; if (!test_bit(MLX5E_STATE_OPENED, &priv->state)) { + struct mlx5e_params old_params; + + old_params = priv->channels.params; priv->channels.params = new_channels.params; + err = mlx5e_num_channels_changed(priv); + if (err) + priv->channels.params = old_params; + goto out; } err = mlx5e_safe_switch_channels(priv, &new_channels, mlx5e_num_channels_changed_ctx, NULL); - if (err) - goto out; - priv->max_opened_tc = max_t(u8, priv->max_opened_tc, - new_channels.params.num_tc); out: + priv->max_opened_tc = max_t(u8, priv->max_opened_tc, + priv->channels.params.num_tc); mutex_unlock(&priv->state_lock); return err; } @@ -3574,6 +3663,7 @@ s->rx_packets += rq_stats->packets + xskrq_stats->packets; s->rx_bytes += rq_stats->bytes + xskrq_stats->bytes; + s->multicast += rq_stats->mcast_packets + xskrq_stats->mcast_packets; for (j = 0; j < priv->max_opened_tc; j++) { struct mlx5e_sq_stats *sq_stats = &channel_stats->sq[j]; @@ -3589,7 +3679,6 @@ mlx5e_get_stats(struct net_device *dev, struct rtnl_link_stats64 *stats) { struct mlx5e_priv *priv = netdev_priv(dev); - struct mlx5e_vport_stats *vstats = &priv->stats.vport; struct mlx5e_pport_stats *pstats = &priv->stats.pport; /* In switchdev mode, monitor counters doesn't monitor @@ -3624,12 +3713,6 @@ stats->rx_errors = stats->rx_length_errors + stats->rx_crc_errors + stats->rx_frame_errors; stats->tx_errors = stats->tx_aborted_errors + stats->tx_carrier_errors; - - /* vport multicast also counts packets that are dropped due to steering - * or rx out of buffer - */ - stats->multicast = - VPORT_COUNTER_GET(vstats, received_eth_multicast.packets); } static void mlx5e_set_rx_mode(struct net_device *dev) @@ -3671,7 +3754,7 @@ struct mlx5e_priv *priv = netdev_priv(netdev); struct mlx5_core_dev *mdev = priv->mdev; struct mlx5e_channels new_channels = {}; - struct mlx5e_params *old_params; + struct mlx5e_params *cur_params; int err = 0; bool reset; @@ -3684,8 +3767,8 @@ goto out; } - old_params = &priv->channels.params; - if (enable && !MLX5E_GET_PFLAG(old_params, MLX5E_PFLAG_RX_STRIDING_RQ)) { + cur_params = &priv->channels.params; + if (enable && !MLX5E_GET_PFLAG(cur_params, MLX5E_PFLAG_RX_STRIDING_RQ)) { netdev_warn(netdev, "can't set LRO with legacy RQ\n"); err = -EINVAL; goto out; @@ -3693,18 +3776,23 @@ reset = test_bit(MLX5E_STATE_OPENED, &priv->state); - new_channels.params = *old_params; + new_channels.params = *cur_params; new_channels.params.lro_en = enable; - if (old_params->rq_wq_type != MLX5_WQ_TYPE_CYCLIC) { - if (mlx5e_rx_mpwqe_is_linear_skb(mdev, old_params, NULL) == + if (cur_params->rq_wq_type != MLX5_WQ_TYPE_CYCLIC) { + if (mlx5e_rx_mpwqe_is_linear_skb(mdev, cur_params, NULL) == mlx5e_rx_mpwqe_is_linear_skb(mdev, &new_channels.params, NULL)) reset = false; } if (!reset) { - *old_params = new_channels.params; + struct mlx5e_params old_params; + + old_params = *cur_params; + *cur_params = new_channels.params; err = mlx5e_modify_tirs_lro(priv); + if (err) + *cur_params = old_params; goto out; } @@ -3847,6 +3935,7 @@ #ifdef CONFIG_MLX5_EN_ARFS err |= MLX5E_HANDLE_FEATURE(NETIF_F_NTUPLE, set_feature_arfs); #endif + err |= MLX5E_HANDLE_FEATURE(NETIF_F_HW_TLS_RX, mlx5e_ktls_set_feature_rx); if (err) { netdev->features = oper_features; @@ -3976,9 +4065,16 @@ } if (!reset) { + unsigned int old_mtu = params->sw_mtu; + params->sw_mtu = new_mtu; - if (preactivate) - preactivate(priv, NULL); + if (preactivate) { + err = preactivate(priv, NULL); + if (err) { + params->sw_mtu = old_mtu; + goto out; + } + } netdev->mtu = params->sw_mtu; goto out; } @@ -4274,6 +4370,21 @@ mlx5e_vxlan_queue_work(priv, be16_to_cpu(ti->port), 0); } +static bool mlx5e_gre_tunnel_inner_proto_offload_supported(struct mlx5_core_dev *mdev, + struct sk_buff *skb) +{ + switch (skb->inner_protocol) { + case htons(ETH_P_IP): + case htons(ETH_P_IPV6): + case htons(ETH_P_TEB): + return true; + case htons(ETH_P_MPLS_UC): + case htons(ETH_P_MPLS_MC): + return MLX5_CAP_ETH(mdev, tunnel_stateless_mpls_over_gre); + } + return false; +} + static netdev_features_t mlx5e_tunnel_features_check(struct mlx5e_priv *priv, struct sk_buff *skb, netdev_features_t features) @@ -4296,7 +4407,9 @@ switch (proto) { case IPPROTO_GRE: - return features; + if (mlx5e_gre_tunnel_inner_proto_offload_supported(priv->mdev, skb)) + return features; + break; case IPPROTO_IPIP: case IPPROTO_IPV6: if (mlx5e_tunnel_proto_supported(priv->mdev, IPPROTO_IPIP)) @@ -4423,6 +4536,16 @@ return 0; } +static void mlx5e_rq_replace_xdp_prog(struct mlx5e_rq *rq, struct bpf_prog *prog) +{ + struct bpf_prog *old_prog; + + old_prog = rcu_replace_pointer(rq->xdp_prog, prog, + lockdep_is_held(&rq->channel->priv->state_lock)); + if (old_prog) + bpf_prog_put(old_prog); +} + static int mlx5e_xdp_set(struct net_device *netdev, struct bpf_prog *prog) { struct mlx5e_priv *priv = netdev_priv(netdev); @@ -4481,29 +4604,10 @@ */ for (i = 0; i < priv->channels.num; i++) { struct mlx5e_channel *c = priv->channels.c[i]; - bool xsk_open = test_bit(MLX5E_CHANNEL_STATE_XSK, c->state); - clear_bit(MLX5E_RQ_STATE_ENABLED, &c->rq.state); - if (xsk_open) - clear_bit(MLX5E_RQ_STATE_ENABLED, &c->xskrq.state); - napi_synchronize(&c->napi); - /* prevent mlx5e_poll_rx_cq from accessing rq->xdp_prog */ - - old_prog = xchg(&c->rq.xdp_prog, prog); - if (old_prog) - bpf_prog_put(old_prog); - - if (xsk_open) { - old_prog = xchg(&c->xskrq.xdp_prog, prog); - if (old_prog) - bpf_prog_put(old_prog); - } - - set_bit(MLX5E_RQ_STATE_ENABLED, &c->rq.state); - if (xsk_open) - set_bit(MLX5E_RQ_STATE_ENABLED, &c->xskrq.state); - /* napi_schedule in case we have missed anything */ - napi_schedule(&c->napi); + mlx5e_rq_replace_xdp_prog(&c->rq, prog); + if (test_bit(MLX5E_CHANNEL_STATE_XSK, c->state)) + mlx5e_rq_replace_xdp_prog(&c->xskrq, prog); } unlock: @@ -4996,7 +5100,7 @@ FT_CAP(modify_root) && FT_CAP(identified_miss_table_mode) && FT_CAP(flow_table_modify)) { -#ifdef CONFIG_MLX5_ESWITCH +#if IS_ENABLED(CONFIG_MLX5_CLS_ACT) netdev->hw_features |= NETIF_F_HW_TC; #endif #ifdef CONFIG_MLX5_EN_ARFS @@ -5137,12 +5241,18 @@ if (err) goto err_destroy_flow_steering; + err = mlx5e_accel_init_rx(priv); + if (err) + goto err_tc_nic_cleanup; + #ifdef CONFIG_MLX5_EN_ARFS priv->netdev->rx_cpu_rmap = mlx5_eq_table_get_rmap(priv->mdev); #endif return 0; +err_tc_nic_cleanup: + mlx5e_tc_nic_cleanup(priv); err_destroy_flow_steering: mlx5e_destroy_flow_steering(priv); err_destroy_xsk_tirs: @@ -5166,6 +5276,7 @@ static void mlx5e_cleanup_nic_rx(struct mlx5e_priv *priv) { + mlx5e_accel_cleanup_rx(priv); mlx5e_tc_nic_cleanup(priv); mlx5e_destroy_flow_steering(priv); mlx5e_destroy_direct_tirs(priv, priv->xsk_tir); --- linux-azure-5.8-5.8.0.orig/drivers/net/ethernet/mellanox/mlx5/core/en_rep.c +++ linux-azure-5.8-5.8.0/drivers/net/ethernet/mellanox/mlx5/core/en_rep.c @@ -717,7 +717,9 @@ netdev->features |= NETIF_F_NETNS_LOCAL; +#if IS_ENABLED(CONFIG_MLX5_CLS_ACT) netdev->hw_features |= NETIF_F_HW_TC; +#endif netdev->hw_features |= NETIF_F_SG; netdev->hw_features |= NETIF_F_IP_CSUM; netdev->hw_features |= NETIF_F_IPV6_CSUM; --- linux-azure-5.8-5.8.0.orig/drivers/net/ethernet/mellanox/mlx5/core/en_rep.h +++ linux-azure-5.8-5.8.0/drivers/net/ethernet/mellanox/mlx5/core/en_rep.h @@ -133,12 +133,6 @@ /* encap list sharing the same neigh */ struct list_head encap_list; - /* valid only when the neigh reference is taken during - * neigh_update_work workqueue callback. - */ - struct neighbour *n; - struct work_struct neigh_update_work; - /* neigh hash entry can be deleted only when the refcount is zero. * refcount is needed to avoid neigh hash entry removal by TC, while * it's used by the neigh notification call. @@ -191,7 +185,7 @@ unsigned char h_dest[ETH_ALEN]; /* destination eth addr */ struct net_device *out_dev; - struct net_device *route_dev; + int route_dev_ifindex; struct mlx5e_tc_tunnel *tunnel; int reformat_type; u8 flags; --- linux-azure-5.8-5.8.0.orig/drivers/net/ethernet/mellanox/mlx5/core/en_rx.c +++ linux-azure-5.8-5.8.0/drivers/net/ethernet/mellanox/mlx5/core/en_rx.c @@ -50,6 +50,7 @@ #include "en/xdp.h" #include "en/xsk/rx.h" #include "en/health.h" +#include "en/txrx.h" static inline bool mlx5e_rx_hw_stamp(struct hwtstamp_config *config) { @@ -578,6 +579,33 @@ return !!err; } +void mlx5e_free_icosq_descs(struct mlx5e_icosq *sq) +{ + u16 sqcc; + + sqcc = sq->cc; + + while (sqcc != sq->pc) { + struct mlx5e_icosq_wqe_info *wi; + u16 ci; + + ci = mlx5_wq_cyc_ctr2ix(&sq->wq, sqcc); + wi = &sq->db.wqe_info[ci]; + sqcc += wi->num_wqebbs; +#ifdef CONFIG_MLX5_EN_TLS + switch (wi->wqe_type) { + case MLX5E_ICOSQ_WQE_SET_PSV_TLS: + mlx5e_ktls_handle_ctx_completion(wi); + break; + case MLX5E_ICOSQ_WQE_GET_PSV_TLS: + mlx5e_ktls_handle_get_psv_completion(wi, sq); + break; + } +#endif + } + sq->cc = sqcc; +} + int mlx5e_poll_ico_cq(struct mlx5e_cq *cq) { struct mlx5e_icosq *sq = container_of(cq, struct mlx5e_icosq, cq); @@ -633,6 +661,16 @@ break; case MLX5E_ICOSQ_WQE_NOP: break; +#ifdef CONFIG_MLX5_EN_TLS + case MLX5E_ICOSQ_WQE_UMR_TLS: + break; + case MLX5E_ICOSQ_WQE_SET_PSV_TLS: + mlx5e_ktls_handle_ctx_completion(wi); + break; + case MLX5E_ICOSQ_WQE_GET_PSV_TLS: + mlx5e_ktls_handle_get_psv_completion(wi, sq); + break; +#endif default: netdev_WARN_ONCE(cq->channel->netdev, "Bad WQE type in ICOSQ WQE info: 0x%x\n", @@ -982,9 +1020,7 @@ skb->mac_len = ETH_HLEN; -#ifdef CONFIG_MLX5_EN_TLS - mlx5e_tls_handle_rx_skb(netdev, skb, &cqe_bcnt); -#endif + mlx5e_tls_handle_rx_skb(rq, skb, cqe, &cqe_bcnt); if (lro_num_seg > 1) { mlx5e_lro_update_hdr(skb, cqe, cqe_bcnt); @@ -1020,6 +1056,9 @@ mlx5e_enable_ecn(rq, skb); skb->protocol = eth_type_trans(skb, netdev); + + if (unlikely(mlx5e_skb_is_multicast(skb))) + stats->mcast_packets++; } static inline void mlx5e_complete_rx_cqe(struct mlx5e_rq *rq, @@ -1072,7 +1111,6 @@ struct xdp_buff xdp; struct sk_buff *skb; void *va, *data; - bool consumed; u32 frag_size; va = page_address(di->page) + wi->offset; @@ -1084,11 +1122,8 @@ prefetchw(va); /* xdp_frame data area */ prefetch(data); - rcu_read_lock(); mlx5e_fill_xdp_buff(rq, va, rx_headroom, cqe_bcnt, &xdp); - consumed = mlx5e_xdp_handle(rq, di, &cqe_bcnt, &xdp); - rcu_read_unlock(); - if (consumed) + if (mlx5e_xdp_handle(rq, di, &cqe_bcnt, &xdp)) return NULL; /* page/packet was consumed by XDP */ rx_headroom = xdp.data - xdp.data_hard_start; @@ -1238,8 +1273,10 @@ if (rep->vlan && skb_vlan_tag_present(skb)) skb_vlan_pop(skb); - if (!mlx5e_rep_tc_update_skb(cqe, skb, &tc_priv)) + if (!mlx5e_rep_tc_update_skb(cqe, skb, &tc_priv)) { + dev_kfree_skb_any(skb); goto free_wqe; + } napi_gro_receive(rq->cq.napi, skb); @@ -1294,8 +1331,10 @@ mlx5e_complete_rx_cqe(rq, cqe, cqe_bcnt, skb); - if (!mlx5e_rep_tc_update_skb(cqe, skb, &tc_priv)) + if (!mlx5e_rep_tc_update_skb(cqe, skb, &tc_priv)) { + dev_kfree_skb_any(skb); goto mpwrq_cqe_out; + } napi_gro_receive(rq->cq.napi, skb); @@ -1369,7 +1408,6 @@ struct sk_buff *skb; void *va, *data; u32 frag_size; - bool consumed; /* Check packet size. Note LRO doesn't use linear SKB */ if (unlikely(cqe_bcnt > rq->hw_mtu)) { @@ -1386,11 +1424,8 @@ prefetchw(va); /* xdp_frame data area */ prefetch(data); - rcu_read_lock(); mlx5e_fill_xdp_buff(rq, va, rx_headroom, cqe_bcnt32, &xdp); - consumed = mlx5e_xdp_handle(rq, di, &cqe_bcnt32, &xdp); - rcu_read_unlock(); - if (consumed) { + if (mlx5e_xdp_handle(rq, di, &cqe_bcnt32, &xdp)) { if (__test_and_clear_bit(MLX5E_RQ_FLAG_XDP_XMIT, rq->flags)) __set_bit(page_idx, wi->xdp_xmit_bitmap); /* non-atomic */ return NULL; /* page/packet was consumed by XDP */ @@ -1501,7 +1536,7 @@ } while ((++work_done < budget) && (cqe = mlx5_cqwq_get_cqe(cqwq))); out: - if (rq->xdp_prog) + if (rcu_access_pointer(rq->xdp_prog)) mlx5e_xdp_rx_poll_complete(rq); mlx5_cqwq_update_db_record(cqwq); --- linux-azure-5.8-5.8.0.orig/drivers/net/ethernet/mellanox/mlx5/core/en_stats.c +++ linux-azure-5.8-5.8.0/drivers/net/ethernet/mellanox/mlx5/core/en_stats.c @@ -163,6 +163,19 @@ { MLX5E_DECLARE_STAT(struct mlx5e_sw_stats, rx_congst_umr) }, { MLX5E_DECLARE_STAT(struct mlx5e_sw_stats, rx_arfs_err) }, { MLX5E_DECLARE_STAT(struct mlx5e_sw_stats, rx_recover) }, +#ifdef CONFIG_MLX5_EN_TLS + { MLX5E_DECLARE_STAT(struct mlx5e_sw_stats, rx_tls_decrypted_packets) }, + { MLX5E_DECLARE_STAT(struct mlx5e_sw_stats, rx_tls_decrypted_bytes) }, + { MLX5E_DECLARE_STAT(struct mlx5e_sw_stats, rx_tls_ctx) }, + { MLX5E_DECLARE_STAT(struct mlx5e_sw_stats, rx_tls_del) }, + { MLX5E_DECLARE_STAT(struct mlx5e_sw_stats, rx_tls_resync_req_pkt) }, + { MLX5E_DECLARE_STAT(struct mlx5e_sw_stats, rx_tls_resync_req_start) }, + { MLX5E_DECLARE_STAT(struct mlx5e_sw_stats, rx_tls_resync_req_end) }, + { MLX5E_DECLARE_STAT(struct mlx5e_sw_stats, rx_tls_resync_req_skip) }, + { MLX5E_DECLARE_STAT(struct mlx5e_sw_stats, rx_tls_resync_res_ok) }, + { MLX5E_DECLARE_STAT(struct mlx5e_sw_stats, rx_tls_resync_res_skip) }, + { MLX5E_DECLARE_STAT(struct mlx5e_sw_stats, rx_tls_err) }, +#endif { MLX5E_DECLARE_STAT(struct mlx5e_sw_stats, ch_events) }, { MLX5E_DECLARE_STAT(struct mlx5e_sw_stats, ch_poll) }, { MLX5E_DECLARE_STAT(struct mlx5e_sw_stats, ch_arm) }, @@ -275,6 +288,19 @@ s->rx_congst_umr += rq_stats->congst_umr; s->rx_arfs_err += rq_stats->arfs_err; s->rx_recover += rq_stats->recover; +#ifdef CONFIG_MLX5_EN_TLS + s->rx_tls_decrypted_packets += rq_stats->tls_decrypted_packets; + s->rx_tls_decrypted_bytes += rq_stats->tls_decrypted_bytes; + s->rx_tls_ctx += rq_stats->tls_ctx; + s->rx_tls_del += rq_stats->tls_del; + s->rx_tls_resync_req_pkt += rq_stats->tls_resync_req_pkt; + s->rx_tls_resync_req_start += rq_stats->tls_resync_req_start; + s->rx_tls_resync_req_end += rq_stats->tls_resync_req_end; + s->rx_tls_resync_req_skip += rq_stats->tls_resync_req_skip; + s->rx_tls_resync_res_ok += rq_stats->tls_resync_res_ok; + s->rx_tls_resync_res_skip += rq_stats->tls_resync_res_skip; + s->rx_tls_err += rq_stats->tls_err; +#endif s->ch_events += ch_stats->events; s->ch_poll += ch_stats->poll; s->ch_arm += ch_stats->arm; @@ -1475,6 +1501,19 @@ { MLX5E_DECLARE_RX_STAT(struct mlx5e_rq_stats, congst_umr) }, { MLX5E_DECLARE_RX_STAT(struct mlx5e_rq_stats, arfs_err) }, { MLX5E_DECLARE_RX_STAT(struct mlx5e_rq_stats, recover) }, +#ifdef CONFIG_MLX5_EN_TLS + { MLX5E_DECLARE_RX_STAT(struct mlx5e_rq_stats, tls_decrypted_packets) }, + { MLX5E_DECLARE_RX_STAT(struct mlx5e_rq_stats, tls_decrypted_bytes) }, + { MLX5E_DECLARE_RX_STAT(struct mlx5e_rq_stats, tls_ctx) }, + { MLX5E_DECLARE_RX_STAT(struct mlx5e_rq_stats, tls_del) }, + { MLX5E_DECLARE_RX_STAT(struct mlx5e_rq_stats, tls_resync_req_pkt) }, + { MLX5E_DECLARE_RX_STAT(struct mlx5e_rq_stats, tls_resync_req_start) }, + { MLX5E_DECLARE_RX_STAT(struct mlx5e_rq_stats, tls_resync_req_end) }, + { MLX5E_DECLARE_RX_STAT(struct mlx5e_rq_stats, tls_resync_req_skip) }, + { MLX5E_DECLARE_RX_STAT(struct mlx5e_rq_stats, tls_resync_res_ok) }, + { MLX5E_DECLARE_RX_STAT(struct mlx5e_rq_stats, tls_resync_res_skip) }, + { MLX5E_DECLARE_RX_STAT(struct mlx5e_rq_stats, tls_err) }, +#endif }; static const struct counter_desc sq_stats_desc[] = { --- linux-azure-5.8-5.8.0.orig/drivers/net/ethernet/mellanox/mlx5/core/en_stats.h +++ linux-azure-5.8-5.8.0/drivers/net/ethernet/mellanox/mlx5/core/en_stats.h @@ -119,6 +119,7 @@ u64 tx_nop; u64 rx_lro_packets; u64 rx_lro_bytes; + u64 rx_mcast_packets; u64 rx_ecn_mark; u64 rx_removed_vlan_packets; u64 rx_csum_unnecessary; @@ -186,6 +187,18 @@ u64 tx_tls_skip_no_sync_data; u64 tx_tls_drop_no_sync_data; u64 tx_tls_drop_bypass_req; + + u64 rx_tls_decrypted_packets; + u64 rx_tls_decrypted_bytes; + u64 rx_tls_ctx; + u64 rx_tls_del; + u64 rx_tls_resync_req_pkt; + u64 rx_tls_resync_req_start; + u64 rx_tls_resync_req_end; + u64 rx_tls_resync_req_skip; + u64 rx_tls_resync_res_ok; + u64 rx_tls_resync_res_skip; + u64 rx_tls_err; #endif u64 rx_xsk_packets; @@ -286,6 +299,7 @@ u64 csum_none; u64 lro_packets; u64 lro_bytes; + u64 mcast_packets; u64 ecn_mark; u64 removed_vlan_packets; u64 xdp_drop; @@ -305,6 +319,19 @@ u64 congst_umr; u64 arfs_err; u64 recover; +#ifdef CONFIG_MLX5_EN_TLS + u64 tls_decrypted_packets; + u64 tls_decrypted_bytes; + u64 tls_ctx; + u64 tls_del; + u64 tls_resync_req_pkt; + u64 tls_resync_req_start; + u64 tls_resync_req_end; + u64 tls_resync_req_skip; + u64 tls_resync_res_ok; + u64 tls_resync_res_skip; + u64 tls_err; +#endif }; struct mlx5e_sq_stats { --- linux-azure-5.8-5.8.0.orig/drivers/net/ethernet/mellanox/mlx5/core/en_tc.c +++ linux-azure-5.8-5.8.0/drivers/net/ethernet/mellanox/mlx5/core/en_tc.c @@ -66,6 +66,7 @@ #include "lib/devcom.h" #include "lib/geneve.h" #include "diag/en_tc_tracepoint.h" +#include #define MLX5_MH_ACT_SZ MLX5_UN_SZ_BYTES(set_add_copy_action_in_auto) @@ -1149,6 +1150,9 @@ struct mlx5e_tc_mod_hdr_acts *mod_hdr_acts; struct mlx5_flow_handle *rule; + if (attr->flags & MLX5_ESW_ATTR_FLAG_SLOW_PATH) + return mlx5_eswitch_add_offloaded_rule(esw, spec, attr); + if (flow_flag_test(flow, CT)) { mod_hdr_acts = &attr->parse_attr->mod_hdr_acts; @@ -1178,6 +1182,9 @@ { flow_flag_clear(flow, OFFLOADED); + if (attr->flags & MLX5_ESW_ATTR_FLAG_SLOW_PATH) + goto offload_rule_0; + if (flow_flag_test(flow, CT)) { mlx5_tc_ct_delete_flow(flow->priv, flow, attr); return; @@ -1186,6 +1193,7 @@ if (attr->split_count) mlx5_eswitch_del_fwd_rule(esw, flow->rule[1], attr); +offload_rule_0: mlx5_eswitch_del_offloaded_rule(esw, flow->rule[0], attr); } @@ -1399,11 +1407,8 @@ mlx5e_put_flow_tunnel_id(flow); - if (flow_flag_test(flow, NOT_READY)) { + if (flow_flag_test(flow, NOT_READY)) remove_unready_flow(flow); - kvfree(attr->parse_attr); - return; - } if (mlx5e_is_offloaded_flow(flow)) { if (flow_flag_test(flow, SLOW)) @@ -2234,8 +2239,8 @@ BIT(FLOW_DISSECTOR_KEY_ENC_OPTS) | BIT(FLOW_DISSECTOR_KEY_MPLS))) { NL_SET_ERR_MSG_MOD(extack, "Unsupported key"); - netdev_warn(priv->netdev, "Unsupported key used: 0x%x\n", - dissector->used_keys); + netdev_dbg(priv->netdev, "Unsupported key used: 0x%x\n", + dissector->used_keys); return -EOPNOTSUPP; } @@ -2734,6 +2739,22 @@ OFFLOAD(UDP_DPORT, 16, U16_MAX, udp.dest, 0, udp_dport), }; +static unsigned long mask_to_le(unsigned long mask, int size) +{ + __be32 mask_be32; + __be16 mask_be16; + + if (size == 32) { + mask_be32 = (__force __be32)(mask); + mask = (__force unsigned long)cpu_to_le32(be32_to_cpu(mask_be32)); + } else if (size == 16) { + mask_be32 = (__force __be32)(mask); + mask_be16 = *(__be16 *)&mask_be32; + mask = (__force unsigned long)cpu_to_le16(be16_to_cpu(mask_be16)); + } + + return mask; +} static int offload_pedit_fields(struct mlx5e_priv *priv, int namespace, struct pedit_headers_action *hdrs, @@ -2747,9 +2768,7 @@ u32 *s_masks_p, *a_masks_p, s_mask, a_mask; struct mlx5e_tc_mod_hdr_acts *mod_acts; struct mlx5_fields *f; - unsigned long mask; - __be32 mask_be32; - __be16 mask_be16; + unsigned long mask, field_mask; int err; u8 cmd; @@ -2815,14 +2834,7 @@ if (skip) continue; - if (f->field_bsize == 32) { - mask_be32 = (__force __be32)(mask); - mask = (__force unsigned long)cpu_to_le32(be32_to_cpu(mask_be32)); - } else if (f->field_bsize == 16) { - mask_be32 = (__force __be32)(mask); - mask_be16 = *(__be16 *)&mask_be32; - mask = (__force unsigned long)cpu_to_le16(be16_to_cpu(mask_be16)); - } + mask = mask_to_le(mask, f->field_bsize); first = find_first_bit(&mask, f->field_bsize); next_z = find_next_zero_bit(&mask, f->field_bsize, first); @@ -2853,9 +2865,10 @@ if (cmd == MLX5_ACTION_TYPE_SET) { int start; + field_mask = mask_to_le(f->field_mask, f->field_bsize); + /* if field is bit sized it can start not from first bit */ - start = find_first_bit((unsigned long *)&f->field_mask, - f->field_bsize); + start = find_first_bit(&field_mask, f->field_bsize); MLX5_SET(set_action_in, action, offset, first - start); /* length is num of bits to be written, zero means length of 32 */ @@ -4501,6 +4514,7 @@ return flow; err_free: + dealloc_mod_hdr_actions(&parse_attr->mod_hdr_acts); mlx5e_flow_put(priv, flow); out: return ERR_PTR(err); @@ -4635,6 +4649,7 @@ return 0; err_free: + dealloc_mod_hdr_actions(&parse_attr->mod_hdr_acts); mlx5e_flow_put(priv, flow); kvfree(parse_attr); out: @@ -4841,13 +4856,13 @@ return err; } -static int apply_police_params(struct mlx5e_priv *priv, u32 rate, +static int apply_police_params(struct mlx5e_priv *priv, u64 rate, struct netlink_ext_ack *extack) { struct mlx5e_rep_priv *rpriv = priv->ppriv; struct mlx5_eswitch *esw; + u32 rate_mbps = 0; u16 vport_num; - u32 rate_mbps; int err; vport_num = rpriv->rep->vport; @@ -4864,7 +4879,11 @@ * Moreover, if rate is non zero we choose to configure to a minimum of * 1 mbit/sec. */ - rate_mbps = rate ? max_t(u32, (rate * 8 + 500000) / 1000000, 1) : 0; + if (rate) { + rate = (rate * BITS_PER_BYTE) + 500000; + rate_mbps = max_t(u32, do_div(rate, 1000000), 1); + } + err = mlx5_esw_modify_vport_rate(esw, vport_num, rate_mbps); if (err) NL_SET_ERR_MSG_MOD(extack, "failed applying action to hardware"); --- linux-azure-5.8-5.8.0.orig/drivers/net/ethernet/mellanox/mlx5/core/en_tx.c +++ linux-azure-5.8-5.8.0/drivers/net/ethernet/mellanox/mlx5/core/en_tx.c @@ -38,7 +38,6 @@ #include "en/txrx.h" #include "ipoib/ipoib.h" #include "en_accel/en_accel.h" -#include "en_accel/ktls.h" #include "lib/clock.h" static void mlx5e_dma_unmap_wqe_err(struct mlx5e_txqsq *sq, u8 num_dma) @@ -342,7 +341,7 @@ #if IS_ENABLED(CONFIG_GENEVE) if (skb->encapsulation) - mlx5e_tx_tunnel_accel(skb, eseg); + mlx5e_tx_tunnel_accel(skb, eseg, ihs); #endif mlx5e_txwqe_build_eseg_csum(sq, skb, eseg); --- linux-azure-5.8-5.8.0.orig/drivers/net/ethernet/mellanox/mlx5/core/en_txrx.c +++ linux-azure-5.8-5.8.0/drivers/net/ethernet/mellanox/mlx5/core/en_txrx.c @@ -121,13 +121,17 @@ struct mlx5e_xdpsq *xsksq = &c->xsksq; struct mlx5e_rq *xskrq = &c->xskrq; struct mlx5e_rq *rq = &c->rq; - bool xsk_open = test_bit(MLX5E_CHANNEL_STATE_XSK, c->state); bool aff_change = false; bool busy_xsk = false; bool busy = false; int work_done = 0; + bool xsk_open; int i; + rcu_read_lock(); + + xsk_open = test_bit(MLX5E_CHANNEL_STATE_XSK, c->state); + ch_stats->poll++; for (i = 0; i < c->num_tc; i++) @@ -149,17 +153,17 @@ } mlx5e_poll_ico_cq(&c->icosq.cq); + if (mlx5e_poll_ico_cq(&c->async_icosq.cq)) + /* Don't clear the flag if nothing was polled to prevent + * queueing more WQEs and overflowing the async ICOSQ. + */ + clear_bit(MLX5E_SQ_STATE_PENDING_XSK_TX, &c->async_icosq.state); busy |= INDIRECT_CALL_2(rq->post_wqes, mlx5e_post_rx_mpwqes, mlx5e_post_rx_wqes, rq); if (xsk_open) { - if (mlx5e_poll_ico_cq(&c->xskicosq.cq)) - /* Don't clear the flag if nothing was polled to prevent - * queueing more WQEs and overflowing XSKICOSQ. - */ - clear_bit(MLX5E_SQ_STATE_PENDING_XSK_TX, &c->xskicosq.state); busy |= mlx5e_poll_xdpsq_cq(&xsksq->cq); busy_xsk |= mlx5e_napi_xsk_post(xsksq, xskrq); } @@ -167,8 +171,10 @@ busy |= busy_xsk; if (busy) { - if (likely(mlx5e_channel_no_affinity_change(c))) - return budget; + if (likely(mlx5e_channel_no_affinity_change(c))) { + work_done = budget; + goto out; + } ch_stats->aff_change++; aff_change = true; if (budget && work_done == budget) @@ -176,7 +182,7 @@ } if (unlikely(!napi_complete_done(napi, work_done))) - return work_done; + goto out; ch_stats->arm++; @@ -189,11 +195,11 @@ mlx5e_cq_arm(&rq->cq); mlx5e_cq_arm(&c->icosq.cq); + mlx5e_cq_arm(&c->async_icosq.cq); mlx5e_cq_arm(&c->xdpsq.cq); if (xsk_open) { mlx5e_handle_rx_dim(xskrq); - mlx5e_cq_arm(&c->xskicosq.cq); mlx5e_cq_arm(&xsksq->cq); mlx5e_cq_arm(&xskrq->cq); } @@ -203,6 +209,9 @@ ch_stats->force_irq++; } +out: + rcu_read_unlock(); + return work_done; } --- linux-azure-5.8-5.8.0.orig/drivers/net/ethernet/mellanox/mlx5/core/eq.c +++ linux-azure-5.8-5.8.0/drivers/net/ethernet/mellanox/mlx5/core/eq.c @@ -189,6 +189,29 @@ return count_eqe; } +static void mlx5_eq_async_int_lock(struct mlx5_eq_async *eq, unsigned long *flags) + __acquires(&eq->lock) +{ + if (in_irq()) + spin_lock(&eq->lock); + else + spin_lock_irqsave(&eq->lock, *flags); +} + +static void mlx5_eq_async_int_unlock(struct mlx5_eq_async *eq, unsigned long *flags) + __releases(&eq->lock) +{ + if (in_irq()) + spin_unlock(&eq->lock); + else + spin_unlock_irqrestore(&eq->lock, *flags); +} + +enum async_eq_nb_action { + ASYNC_EQ_IRQ_HANDLER = 0, + ASYNC_EQ_RECOVER = 1, +}; + static int mlx5_eq_async_int(struct notifier_block *nb, unsigned long action, void *data) { @@ -198,11 +221,14 @@ struct mlx5_eq_table *eqt; struct mlx5_core_dev *dev; struct mlx5_eqe *eqe; + unsigned long flags; int num_eqes = 0; dev = eq->dev; eqt = dev->priv.eq_table; + mlx5_eq_async_int_lock(eq_async, &flags); + eqe = next_eqe_sw(eq); if (!eqe) goto out; @@ -223,8 +249,19 @@ out: eq_update_ci(eq, 1); + mlx5_eq_async_int_unlock(eq_async, &flags); - return 0; + return unlikely(action == ASYNC_EQ_RECOVER) ? num_eqes : 0; +} + +void mlx5_cmd_eq_recover(struct mlx5_core_dev *dev) +{ + struct mlx5_eq_async *eq = &dev->priv.eq_table->cmd_eq; + int eqes; + + eqes = mlx5_eq_async_int(&eq->irq_nb, ASYNC_EQ_RECOVER, NULL); + if (eqes) + mlx5_core_warn(dev, "Recovered %d EQEs on cmd_eq\n", eqes); } static void init_eq_buf(struct mlx5_eq *eq) @@ -569,6 +606,7 @@ int err; eq->irq_nb.notifier_call = mlx5_eq_async_int; + spin_lock_init(&eq->lock); err = create_async_eq(dev, &eq->core, param); if (err) { @@ -656,8 +694,10 @@ cleanup_async_eq(dev, &table->pages_eq, "pages"); cleanup_async_eq(dev, &table->async_eq, "async"); + mlx5_cmd_allowed_opcode(dev, MLX5_CMD_OP_DESTROY_EQ); mlx5_cmd_use_polling(dev); cleanup_async_eq(dev, &table->cmd_eq, "cmd"); + mlx5_cmd_allowed_opcode(dev, CMD_ALLOWED_OPCODE_ALL); mlx5_eq_notifier_unregister(dev, &table->cq_err_nb); } --- linux-azure-5.8-5.8.0.orig/drivers/net/ethernet/mellanox/mlx5/core/esw/acl/egress_lgcy.c +++ linux-azure-5.8-5.8.0/drivers/net/ethernet/mellanox/mlx5/core/esw/acl/egress_lgcy.c @@ -95,22 +95,21 @@ return 0; } - if (!IS_ERR_OR_NULL(vport->egress.acl)) - return 0; + if (!vport->egress.acl) { + vport->egress.acl = esw_acl_table_create(esw, vport->vport, + MLX5_FLOW_NAMESPACE_ESW_EGRESS, + table_size); + if (IS_ERR(vport->egress.acl)) { + err = PTR_ERR(vport->egress.acl); + vport->egress.acl = NULL; + goto out; + } - vport->egress.acl = esw_acl_table_create(esw, vport->vport, - MLX5_FLOW_NAMESPACE_ESW_EGRESS, - table_size); - if (IS_ERR_OR_NULL(vport->egress.acl)) { - err = PTR_ERR(vport->egress.acl); - vport->egress.acl = NULL; - goto out; + err = esw_acl_egress_lgcy_groups_create(esw, vport); + if (err) + goto out; } - err = esw_acl_egress_lgcy_groups_create(esw, vport); - if (err) - goto out; - esw_debug(esw->dev, "vport[%d] configure egress rules, vlan(%d) qos(%d)\n", vport->vport, vport->info.vlan, vport->info.qos); --- linux-azure-5.8-5.8.0.orig/drivers/net/ethernet/mellanox/mlx5/core/esw/acl/egress_ofld.c +++ linux-azure-5.8-5.8.0/drivers/net/ethernet/mellanox/mlx5/core/esw/acl/egress_ofld.c @@ -165,7 +165,7 @@ table_size++; vport->egress.acl = esw_acl_table_create(esw, vport->vport, MLX5_FLOW_NAMESPACE_ESW_EGRESS, table_size); - if (IS_ERR_OR_NULL(vport->egress.acl)) { + if (IS_ERR(vport->egress.acl)) { err = PTR_ERR(vport->egress.acl); vport->egress.acl = NULL; return err; --- linux-azure-5.8-5.8.0.orig/drivers/net/ethernet/mellanox/mlx5/core/esw/acl/ingress_lgcy.c +++ linux-azure-5.8-5.8.0/drivers/net/ethernet/mellanox/mlx5/core/esw/acl/ingress_lgcy.c @@ -180,7 +180,7 @@ vport->ingress.acl = esw_acl_table_create(esw, vport->vport, MLX5_FLOW_NAMESPACE_ESW_INGRESS, table_size); - if (IS_ERR_OR_NULL(vport->ingress.acl)) { + if (IS_ERR(vport->ingress.acl)) { err = PTR_ERR(vport->ingress.acl); vport->ingress.acl = NULL; return err; --- linux-azure-5.8-5.8.0.orig/drivers/net/ethernet/mellanox/mlx5/core/esw/acl/ingress_ofld.c +++ linux-azure-5.8-5.8.0/drivers/net/ethernet/mellanox/mlx5/core/esw/acl/ingress_ofld.c @@ -258,7 +258,7 @@ vport->ingress.acl = esw_acl_table_create(esw, vport->vport, MLX5_FLOW_NAMESPACE_ESW_INGRESS, num_ftes); - if (IS_ERR_OR_NULL(vport->ingress.acl)) { + if (IS_ERR(vport->ingress.acl)) { err = PTR_ERR(vport->ingress.acl); vport->ingress.acl = NULL; return err; --- linux-azure-5.8-5.8.0.orig/drivers/net/ethernet/mellanox/mlx5/core/eswitch.c +++ linux-azure-5.8-5.8.0/drivers/net/ethernet/mellanox/mlx5/core/eswitch.c @@ -1118,6 +1118,10 @@ struct mlx5_vport *vport; vport = mlx5_eswitch_get_vport(esw, vport_num); + + if (!vport->qos.enabled) + return -EOPNOTSUPP; + MLX5_SET(scheduling_context, ctx, max_average_bw, rate_mbps); return mlx5_modify_scheduling_element_cmd(esw->dev, @@ -1384,6 +1388,7 @@ int i; mlx5_esw_for_each_vf_vport(esw, i, vport, esw->esw_funcs.num_vfs) { + memset(&vport->qos, 0, sizeof(vport->qos)); memset(&vport->info, 0, sizeof(vport->info)); vport->info.link_state = MLX5_VPORT_ADMIN_STATE_AUTO; } @@ -2100,12 +2105,15 @@ max_guarantee = evport->info.min_rate; } - return max_t(u32, max_guarantee / fw_max_bw_share, 1); + if (max_guarantee) + return max_t(u32, max_guarantee / fw_max_bw_share, 1); + return 0; } -static int normalize_vports_min_rate(struct mlx5_eswitch *esw, u32 divider) +static int normalize_vports_min_rate(struct mlx5_eswitch *esw) { u32 fw_max_bw_share = MLX5_CAP_QOS(esw->dev, max_tsar_bw_share); + u32 divider = calculate_vports_min_rate_divider(esw); struct mlx5_vport *evport; u32 vport_max_rate; u32 vport_min_rate; @@ -2118,9 +2126,9 @@ continue; vport_min_rate = evport->info.min_rate; vport_max_rate = evport->info.max_rate; - bw_share = MLX5_MIN_BW_SHARE; + bw_share = 0; - if (vport_min_rate) + if (divider) bw_share = MLX5_RATE_TO_BW_SHARE(vport_min_rate, divider, fw_max_bw_share); @@ -2145,7 +2153,6 @@ struct mlx5_vport *evport = mlx5_eswitch_get_vport(esw, vport); u32 fw_max_bw_share; u32 previous_min_rate; - u32 divider; bool min_rate_supported; bool max_rate_supported; int err = 0; @@ -2170,8 +2177,7 @@ previous_min_rate = evport->info.min_rate; evport->info.min_rate = min_rate; - divider = calculate_vports_min_rate_divider(esw); - err = normalize_vports_min_rate(esw, divider); + err = normalize_vports_min_rate(esw); if (err) { evport->info.min_rate = previous_min_rate; goto unlock; --- linux-azure-5.8-5.8.0.orig/drivers/net/ethernet/mellanox/mlx5/core/eswitch_offloads.c +++ linux-azure-5.8-5.8.0/drivers/net/ethernet/mellanox/mlx5/core/eswitch_offloads.c @@ -1219,35 +1219,37 @@ } esw->fdb_table.offloads.send_to_vport_grp = g; - /* create peer esw miss group */ - memset(flow_group_in, 0, inlen); - - esw_set_flow_group_source_port(esw, flow_group_in); - - if (!mlx5_eswitch_vport_match_metadata_enabled(esw)) { - match_criteria = MLX5_ADDR_OF(create_flow_group_in, - flow_group_in, - match_criteria); - - MLX5_SET_TO_ONES(fte_match_param, match_criteria, - misc_parameters.source_eswitch_owner_vhca_id); - - MLX5_SET(create_flow_group_in, flow_group_in, - source_eswitch_owner_vhca_id_valid, 1); - } - - MLX5_SET(create_flow_group_in, flow_group_in, start_flow_index, ix); - MLX5_SET(create_flow_group_in, flow_group_in, end_flow_index, - ix + esw->total_vports - 1); - ix += esw->total_vports; - - g = mlx5_create_flow_group(fdb, flow_group_in); - if (IS_ERR(g)) { - err = PTR_ERR(g); - esw_warn(dev, "Failed to create peer miss flow group err(%d)\n", err); - goto peer_miss_err; + if (MLX5_CAP_ESW(esw->dev, merged_eswitch)) { + /* create peer esw miss group */ + memset(flow_group_in, 0, inlen); + + esw_set_flow_group_source_port(esw, flow_group_in); + + if (!mlx5_eswitch_vport_match_metadata_enabled(esw)) { + match_criteria = MLX5_ADDR_OF(create_flow_group_in, + flow_group_in, + match_criteria); + + MLX5_SET_TO_ONES(fte_match_param, match_criteria, + misc_parameters.source_eswitch_owner_vhca_id); + + MLX5_SET(create_flow_group_in, flow_group_in, + source_eswitch_owner_vhca_id_valid, 1); + } + + MLX5_SET(create_flow_group_in, flow_group_in, start_flow_index, ix); + MLX5_SET(create_flow_group_in, flow_group_in, end_flow_index, + ix + esw->total_vports - 1); + ix += esw->total_vports; + + g = mlx5_create_flow_group(fdb, flow_group_in); + if (IS_ERR(g)) { + err = PTR_ERR(g); + esw_warn(dev, "Failed to create peer miss flow group err(%d)\n", err); + goto peer_miss_err; + } + esw->fdb_table.offloads.peer_miss_grp = g; } - esw->fdb_table.offloads.peer_miss_grp = g; /* create miss group */ memset(flow_group_in, 0, inlen); @@ -1282,7 +1284,8 @@ miss_rule_err: mlx5_destroy_flow_group(esw->fdb_table.offloads.miss_grp); miss_err: - mlx5_destroy_flow_group(esw->fdb_table.offloads.peer_miss_grp); + if (MLX5_CAP_ESW(esw->dev, merged_eswitch)) + mlx5_destroy_flow_group(esw->fdb_table.offloads.peer_miss_grp); peer_miss_err: mlx5_destroy_flow_group(esw->fdb_table.offloads.send_to_vport_grp); send_vport_err: @@ -1306,7 +1309,8 @@ mlx5_del_flow_rules(esw->fdb_table.offloads.miss_rule_multi); mlx5_del_flow_rules(esw->fdb_table.offloads.miss_rule_uni); mlx5_destroy_flow_group(esw->fdb_table.offloads.send_to_vport_grp); - mlx5_destroy_flow_group(esw->fdb_table.offloads.peer_miss_grp); + if (MLX5_CAP_ESW(esw->dev, merged_eswitch)) + mlx5_destroy_flow_group(esw->fdb_table.offloads.peer_miss_grp); mlx5_destroy_flow_group(esw->fdb_table.offloads.miss_grp); mlx5_esw_chains_destroy(esw); --- linux-azure-5.8-5.8.0.orig/drivers/net/ethernet/mellanox/mlx5/core/fs_core.c +++ linux-azure-5.8-5.8.0/drivers/net/ethernet/mellanox/mlx5/core/fs_core.c @@ -106,8 +106,8 @@ #define ETHTOOL_PRIO_NUM_LEVELS 1 #define ETHTOOL_NUM_PRIOS 11 #define ETHTOOL_MIN_LEVEL (KERNEL_MIN_LEVEL + ETHTOOL_NUM_PRIOS) -/* Vlan, mac, ttc, inner ttc, aRFS */ -#define KERNEL_NIC_PRIO_NUM_LEVELS 5 +/* Vlan, mac, ttc, inner ttc, {aRFS/accel} */ +#define KERNEL_NIC_PRIO_NUM_LEVELS 6 #define KERNEL_NIC_NUM_PRIOS 1 /* One more level for tc */ #define KERNEL_MIN_LEVEL (KERNEL_NIC_PRIO_NUM_LEVELS + 1) @@ -520,6 +520,13 @@ goto out; } + if (rule->dest_attr.type == MLX5_FLOW_DESTINATION_TYPE_PORT && + --fte->dests_size) { + fte->modify_mask |= BIT(MLX5_SET_FTE_MODIFY_ENABLE_MASK_ACTION); + fte->action.action &= ~MLX5_FLOW_CONTEXT_ACTION_ALLOW; + goto out; + } + if ((fte->action.action & MLX5_FLOW_CONTEXT_ACTION_FWD_DEST) && --fte->dests_size) { fte->modify_mask |= @@ -655,7 +662,7 @@ fte->action = *flow_act; fte->flow_context = spec->flow_context; - tree_init_node(&fte->node, NULL, del_sw_fte); + tree_init_node(&fte->node, del_hw_fte, del_sw_fte); return fte; } @@ -847,18 +854,15 @@ { struct mlx5_flow_root_namespace *root = find_root(&prio->node); struct mlx5_flow_table *iter; - int i = 0; int err; fs_for_each_ft(iter, prio) { - i++; err = root->cmds->modify_flow_table(root, iter, ft); if (err) { - mlx5_core_warn(dev, "Failed to modify flow table %d\n", - iter->id); + mlx5_core_err(dev, + "Failed to modify flow table id %d, type %d, err %d\n", + iter->id, iter->type, err); /* The driver is out of sync with the FW */ - if (i > 1) - WARN_ON(true); return err; } } @@ -1123,6 +1127,7 @@ destroy_ft: root->cmds->destroy_flow_table(root, ft); free_ft: + rhltable_destroy(&ft->fgs_hash); kfree(ft); unlock_root: mutex_unlock(&root->chain_lock); @@ -1743,6 +1748,7 @@ if (!fte_tmp) continue; rule = add_rule_fg(g, spec, flow_act, dest, dest_num, fte_tmp); + /* No error check needed here, because insert_fte() is not called */ up_write_ref_node(&fte_tmp->node, false); tree_put_node(&fte_tmp->node, false); kmem_cache_free(steering->ftes_cache, fte); @@ -1795,7 +1801,8 @@ up_write_ref_node(&g->node, false); rule = add_rule_fg(g, spec, flow_act, dest, dest_num, fte); up_write_ref_node(&fte->node, false); - tree_put_node(&fte->node, false); + if (IS_ERR(rule)) + tree_put_node(&fte->node, false); return rule; } rule = ERR_PTR(-ENOENT); @@ -1894,7 +1901,8 @@ up_write_ref_node(&g->node, false); rule = add_rule_fg(g, spec, flow_act, dest, dest_num, fte); up_write_ref_node(&fte->node, false); - tree_put_node(&fte->node, false); + if (IS_ERR(rule)) + tree_put_node(&fte->node, false); tree_put_node(&g->node, false); return rule; @@ -1999,12 +2007,15 @@ down_write_ref_node(&fte->node, false); for (i = handle->num_rules - 1; i >= 0; i--) tree_remove_node(&handle->rule[i]->node, true); - if (fte->modify_mask && fte->dests_size) { - modify_fte(fte); + if (fte->dests_size) { + if (fte->modify_mask) + modify_fte(fte); up_write_ref_node(&fte->node, false); - } else { + } else if (list_empty(&fte->node.children)) { del_hw_fte(&fte->node); - up_write(&fte->node.lock); + /* Avoid double call to del_hw_fte */ + fte->node.del_hw_func = NULL; + up_write_ref_node(&fte->node, false); tree_put_node(&fte->node, false); } kfree(handle); --- linux-azure-5.8-5.8.0.orig/drivers/net/ethernet/mellanox/mlx5/core/fw.c +++ linux-azure-5.8-5.8.0/drivers/net/ethernet/mellanox/mlx5/core/fw.c @@ -35,6 +35,7 @@ #include #include "mlx5_core.h" #include "../../mlxfw/mlxfw.h" +#include "accel/tls.h" enum { MCQS_IDENTIFIER_BOOT_IMG = 0x1, @@ -236,7 +237,7 @@ return err; } - if (MLX5_CAP_GEN(dev, tls_tx)) { + if (mlx5_accel_is_ktls_tx(dev) || mlx5_accel_is_ktls_rx(dev)) { err = mlx5_core_get_caps(dev, MLX5_CAP_TLS); if (err) return err; --- linux-azure-5.8-5.8.0.orig/drivers/net/ethernet/mellanox/mlx5/core/lib/clock.c +++ linux-azure-5.8-5.8.0/drivers/net/ethernet/mellanox/mlx5/core/lib/clock.c @@ -550,8 +550,9 @@ switch (clock->ptp_info.pin_config[pin].func) { case PTP_PF_EXTTS: ptp_event.index = pin; - ptp_event.timestamp = timecounter_cyc2time(&clock->tc, - be64_to_cpu(eqe->data.pps.time_stamp)); + ptp_event.timestamp = + mlx5_timecounter_cyc2time(clock, + be64_to_cpu(eqe->data.pps.time_stamp)); if (clock->pps_info.enabled) { ptp_event.type = PTP_CLOCK_PPSUSR; ptp_event.pps_times.ts_real = --- linux-azure-5.8-5.8.0.orig/drivers/net/ethernet/mellanox/mlx5/core/lib/eq.h +++ linux-azure-5.8-5.8.0/drivers/net/ethernet/mellanox/mlx5/core/lib/eq.h @@ -37,6 +37,7 @@ struct mlx5_eq_async { struct mlx5_eq core; struct notifier_block irq_nb; + spinlock_t lock; /* To avoid irq EQ handle races with resiliency flows */ }; struct mlx5_eq_comp { @@ -81,6 +82,7 @@ struct cpumask *mlx5_eq_comp_cpumask(struct mlx5_core_dev *dev, int ix); u32 mlx5_eq_poll_irq_disabled(struct mlx5_eq_comp *eq); +void mlx5_cmd_eq_recover(struct mlx5_core_dev *dev); void mlx5_eq_synchronize_async_irq(struct mlx5_core_dev *dev); void mlx5_eq_synchronize_cmd_irq(struct mlx5_core_dev *dev); --- linux-azure-5.8-5.8.0.orig/drivers/net/ethernet/mellanox/mlx5/core/main.c +++ linux-azure-5.8-5.8.0/drivers/net/ethernet/mellanox/mlx5/core/main.c @@ -50,6 +50,7 @@ #ifdef CONFIG_RFS_ACCEL #include #endif +#include #include #include "mlx5_core.h" #include "lib/eq.h" @@ -232,7 +233,10 @@ strncat(string, ",", remaining_size); remaining_size = max_t(int, 0, driver_ver_sz - strlen(string)); - strncat(string, DRIVER_VERSION, remaining_size); + + snprintf(string + strlen(string), remaining_size, "%u.%u.%u", + (u8)((LINUX_VERSION_CODE >> 16) & 0xff), (u8)((LINUX_VERSION_CODE >> 8) & 0xff), + (u16)(LINUX_VERSION_CODE & 0xffff)); /*Send the command*/ MLX5_SET(set_driver_version_in, in, opcode, @@ -1362,7 +1366,8 @@ dev_err(&pdev->dev, "mlx5_crdump_enable failed with error code %d\n", err); pci_save_state(pdev); - devlink_reload_enable(devlink); + if (!mlx5_core_is_mp_slave(dev)) + devlink_reload_enable(devlink); return 0; err_load_one: --- linux-azure-5.8-5.8.0.orig/drivers/net/ethernet/mellanox/mlx5/core/pagealloc.c +++ linux-azure-5.8-5.8.0/drivers/net/ethernet/mellanox/mlx5/core/pagealloc.c @@ -375,6 +375,24 @@ npages, ec_function, func_id); } +static u32 fwp_fill_manage_pages_out(struct fw_page *fwp, u32 *out, u32 index, + u32 npages) +{ + u32 pages_set = 0; + unsigned int n; + + for_each_clear_bit(n, &fwp->bitmask, MLX5_NUM_4K_IN_PAGE) { + MLX5_ARRAY_SET64(manage_pages_out, out, pas, index + pages_set, + fwp->addr + (n * MLX5_ADAPTER_PAGE_SIZE)); + pages_set++; + + if (!--npages) + break; + } + + return pages_set; +} + static int reclaim_pages_cmd(struct mlx5_core_dev *dev, u32 *in, int in_size, u32 *out, int out_size) { @@ -398,8 +416,7 @@ if (fwp->func_id != func_id) continue; - MLX5_ARRAY_SET64(manage_pages_out, out, pas, i, fwp->addr); - i++; + i += fwp_fill_manage_pages_out(fwp, out, i, npages - i); } MLX5_SET(manage_pages_out, out, output_num_entries, i); --- linux-azure-5.8-5.8.0.orig/drivers/net/ethernet/mellanox/mlx5/core/pci_irq.c +++ linux-azure-5.8-5.8.0/drivers/net/ethernet/mellanox/mlx5/core/pci_irq.c @@ -115,7 +115,7 @@ return 0; err_request_irq: - for (; i >= 0; i--) { + while (i--) { struct mlx5_irq *irq = mlx5_irq_get(dev, i); int irqn = pci_irq_vector(dev->pdev, i); --- linux-azure-5.8-5.8.0.orig/drivers/net/ethernet/mellanox/mlx5/core/rdma.c +++ linux-azure-5.8-5.8.0/drivers/net/ethernet/mellanox/mlx5/core/rdma.c @@ -116,7 +116,7 @@ static void mlx5_rdma_del_roce_addr(struct mlx5_core_dev *dev) { mlx5_core_roce_gid_set(dev, 0, 0, 0, - NULL, NULL, false, 0, 0); + NULL, NULL, false, 0, 1); } static void mlx5_rdma_make_default_gid(struct mlx5_core_dev *dev, union ib_gid *gid) --- linux-azure-5.8-5.8.0.orig/drivers/net/ethernet/mellanox/mlx5/core/steering/dr_cmd.c +++ linux-azure-5.8-5.8.0/drivers/net/ethernet/mellanox/mlx5/core/steering/dr_cmd.c @@ -92,6 +92,7 @@ caps->eswitch_manager = MLX5_CAP_GEN(mdev, eswitch_manager); caps->gvmi = MLX5_CAP_GEN(mdev, vhca_id); caps->flex_protocols = MLX5_CAP_GEN(mdev, flex_parser_protocols); + caps->sw_format_ver = MLX5_CAP_GEN(mdev, steering_format_version); if (mlx5dr_matcher_supp_flex_parser_icmp_v4(caps)) { caps->flex_parser_id_icmp_dw0 = MLX5_CAP_GEN(mdev, flex_parser_id_icmp_dw0); --- linux-azure-5.8-5.8.0.orig/drivers/net/ethernet/mellanox/mlx5/core/steering/dr_domain.c +++ linux-azure-5.8-5.8.0/drivers/net/ethernet/mellanox/mlx5/core/steering/dr_domain.c @@ -223,6 +223,11 @@ if (ret) return ret; + if (dmn->info.caps.sw_format_ver != MLX5_STEERING_FORMAT_CONNECTX_5) { + mlx5dr_err(dmn, "SW steering is not supported on this device\n"); + return -EOPNOTSUPP; + } + ret = dr_domain_query_fdb_caps(mdev, dmn); if (ret) return ret; --- linux-azure-5.8-5.8.0.orig/drivers/net/ethernet/mellanox/mlx5/core/steering/dr_types.h +++ linux-azure-5.8-5.8.0/drivers/net/ethernet/mellanox/mlx5/core/steering/dr_types.h @@ -621,6 +621,7 @@ u8 max_ft_level; u16 roce_min_src_udp; u8 num_esw_ports; + u8 sw_format_ver; bool eswitch_manager; bool rx_sw_owner; bool tx_sw_owner; --- linux-azure-5.8-5.8.0.orig/drivers/net/ethernet/mellanox/mlx5/core/steering/fs_dr.c +++ linux-azure-5.8-5.8.0/drivers/net/ethernet/mellanox/mlx5/core/steering/fs_dr.c @@ -279,29 +279,9 @@ /* The order of the actions are must to be keep, only the following * order is supported by SW steering: - * TX: push vlan -> modify header -> encap + * TX: modify header -> push vlan -> encap * RX: decap -> pop vlan -> modify header */ - if (fte->action.action & MLX5_FLOW_CONTEXT_ACTION_VLAN_PUSH) { - tmp_action = create_action_push_vlan(domain, &fte->action.vlan[0]); - if (!tmp_action) { - err = -ENOMEM; - goto free_actions; - } - fs_dr_actions[fs_dr_num_actions++] = tmp_action; - actions[num_actions++] = tmp_action; - } - - if (fte->action.action & MLX5_FLOW_CONTEXT_ACTION_VLAN_PUSH_2) { - tmp_action = create_action_push_vlan(domain, &fte->action.vlan[1]); - if (!tmp_action) { - err = -ENOMEM; - goto free_actions; - } - fs_dr_actions[fs_dr_num_actions++] = tmp_action; - actions[num_actions++] = tmp_action; - } - if (fte->action.action & MLX5_FLOW_CONTEXT_ACTION_DECAP) { enum mlx5dr_action_reformat_type decap_type = DR_ACTION_REFORMAT_TYP_TNL_L2_TO_L2; @@ -354,6 +334,26 @@ actions[num_actions++] = fte->action.modify_hdr->action.dr_action; + if (fte->action.action & MLX5_FLOW_CONTEXT_ACTION_VLAN_PUSH) { + tmp_action = create_action_push_vlan(domain, &fte->action.vlan[0]); + if (!tmp_action) { + err = -ENOMEM; + goto free_actions; + } + fs_dr_actions[fs_dr_num_actions++] = tmp_action; + actions[num_actions++] = tmp_action; + } + + if (fte->action.action & MLX5_FLOW_CONTEXT_ACTION_VLAN_PUSH_2) { + tmp_action = create_action_push_vlan(domain, &fte->action.vlan[1]); + if (!tmp_action) { + err = -ENOMEM; + goto free_actions; + } + fs_dr_actions[fs_dr_num_actions++] = tmp_action; + actions[num_actions++] = tmp_action; + } + if (delay_encap_set) actions[num_actions++] = fte->action.pkt_reformat->action.dr_action; --- linux-azure-5.8-5.8.0.orig/drivers/net/ethernet/mellanox/mlxsw/core.c +++ linux-azure-5.8-5.8.0/drivers/net/ethernet/mellanox/mlxsw/core.c @@ -558,7 +558,8 @@ if (trans->core->fw_flash_in_progress) timeout = msecs_to_jiffies(MLXSW_EMAD_TIMEOUT_DURING_FW_FLASH_MS); - queue_delayed_work(trans->core->emad_wq, &trans->timeout_dw, timeout); + queue_delayed_work(trans->core->emad_wq, &trans->timeout_dw, + timeout << trans->retries); } static int mlxsw_emad_transmit(struct mlxsw_core *mlxsw_core, @@ -607,6 +608,9 @@ err = mlxsw_emad_transmit(trans->core, trans); if (err == 0) return; + + if (!atomic_dec_and_test(&trans->active)) + return; } else { err = -EIO; } @@ -1483,6 +1487,8 @@ if (!reload) devlink_resources_unregister(devlink, NULL); mlxsw_core->bus->fini(mlxsw_core->bus_priv); + if (!reload) + devlink_free(devlink); return; --- linux-azure-5.8-5.8.0.orig/drivers/net/ethernet/mellanox/mlxsw/core_thermal.c +++ linux-azure-5.8-5.8.0/drivers/net/ethernet/mellanox/mlxsw/core_thermal.c @@ -19,7 +19,7 @@ #define MLXSW_THERMAL_ASIC_TEMP_NORM 75000 /* 75C */ #define MLXSW_THERMAL_ASIC_TEMP_HIGH 85000 /* 85C */ #define MLXSW_THERMAL_ASIC_TEMP_HOT 105000 /* 105C */ -#define MLXSW_THERMAL_ASIC_TEMP_CRIT 110000 /* 110C */ +#define MLXSW_THERMAL_ASIC_TEMP_CRIT 140000 /* 140C */ #define MLXSW_THERMAL_HYSTERESIS_TEMP 5000 /* 5C */ #define MLXSW_THERMAL_MODULE_TEMP_SHIFT (MLXSW_THERMAL_HYSTERESIS_TEMP * 2) #define MLXSW_THERMAL_ZONE_MAX_NAME 16 @@ -178,6 +178,12 @@ if (err) return err; + if (crit_temp > emerg_temp) { + dev_warn(dev, "%s : Critical threshold %d is above emergency threshold %d\n", + tz->tzdev->type, crit_temp, emerg_temp); + return 0; + } + /* According to the system thermal requirements, the thermal zones are * defined with four trip points. The critical and emergency * temperature thresholds, provided by QSFP module are set as "active" @@ -192,11 +198,8 @@ tz->trips[MLXSW_THERMAL_TEMP_TRIP_NORM].temp = crit_temp; tz->trips[MLXSW_THERMAL_TEMP_TRIP_HIGH].temp = crit_temp; tz->trips[MLXSW_THERMAL_TEMP_TRIP_HOT].temp = emerg_temp; - if (emerg_temp > crit_temp) - tz->trips[MLXSW_THERMAL_TEMP_TRIP_CRIT].temp = emerg_temp + + tz->trips[MLXSW_THERMAL_TEMP_TRIP_CRIT].temp = emerg_temp + MLXSW_THERMAL_MODULE_TEMP_SHIFT; - else - tz->trips[MLXSW_THERMAL_TEMP_TRIP_CRIT].temp = emerg_temp; return 0; } --- linux-azure-5.8-5.8.0.orig/drivers/net/ethernet/mellanox/mlxsw/spectrum_acl_tcam.c +++ linux-azure-5.8-5.8.0/drivers/net/ethernet/mellanox/mlxsw/spectrum_acl_tcam.c @@ -292,13 +292,14 @@ int err; group->tcam = tcam; - mutex_init(&group->lock); INIT_LIST_HEAD(&group->region_list); err = mlxsw_sp_acl_tcam_group_id_get(tcam, &group->id); if (err) return err; + mutex_init(&group->lock); + return 0; } --- linux-azure-5.8-5.8.0.orig/drivers/net/ethernet/microchip/lan743x_ethtool.c +++ linux-azure-5.8-5.8.0/drivers/net/ethernet/microchip/lan743x_ethtool.c @@ -780,7 +780,9 @@ wol->supported = 0; wol->wolopts = 0; - phy_ethtool_get_wol(netdev->phydev, wol); + + if (netdev->phydev) + phy_ethtool_get_wol(netdev->phydev, wol); wol->supported |= WAKE_BCAST | WAKE_UCAST | WAKE_MCAST | WAKE_MAGIC | WAKE_PHY | WAKE_ARP; @@ -809,9 +811,8 @@ device_set_wakeup_enable(&adapter->pdev->dev, (bool)wol->wolopts); - phy_ethtool_set_wol(netdev->phydev, wol); - - return 0; + return netdev->phydev ? phy_ethtool_set_wol(netdev->phydev, wol) + : -ENETDOWN; } #endif /* CONFIG_PM */ --- linux-azure-5.8-5.8.0.orig/drivers/net/ethernet/microchip/lan743x_main.c +++ linux-azure-5.8-5.8.0/drivers/net/ethernet/microchip/lan743x_main.c @@ -148,7 +148,8 @@ int_sts = lan743x_csr_read(adapter, INT_STS); if (int_sts & INT_BIT_SW_GP_) { - lan743x_csr_write(adapter, INT_STS, INT_BIT_SW_GP_); + /* disable the interrupt to prevent repeated re-triggering */ + lan743x_csr_write(adapter, INT_EN_CLR, INT_BIT_SW_GP_); intr->software_isr_flag = 1; } } @@ -675,14 +676,12 @@ static int lan743x_dp_write(struct lan743x_adapter *adapter, u32 select, u32 addr, u32 length, u32 *buf) { - int ret = -EIO; u32 dp_sel; int i; - mutex_lock(&adapter->dp_lock); if (lan743x_csr_wait_for_bit(adapter, DP_SEL, DP_SEL_DPRDY_, 1, 40, 100, 100)) - goto unlock; + return -EIO; dp_sel = lan743x_csr_read(adapter, DP_SEL); dp_sel &= ~DP_SEL_MASK_; dp_sel |= select; @@ -694,13 +693,10 @@ lan743x_csr_write(adapter, DP_CMD, DP_CMD_WRITE_); if (lan743x_csr_wait_for_bit(adapter, DP_SEL, DP_SEL_DPRDY_, 1, 40, 100, 100)) - goto unlock; + return -EIO; } - ret = 0; -unlock: - mutex_unlock(&adapter->dp_lock); - return ret; + return 0; } static u32 lan743x_mac_mii_access(u16 id, u16 index, int read) @@ -1017,16 +1013,16 @@ static int lan743x_phy_open(struct lan743x_adapter *adapter) { struct lan743x_phy *phy = &adapter->phy; + struct phy_device *phydev = NULL; struct device_node *phynode; - struct phy_device *phydev; struct net_device *netdev; int ret = -EIO; netdev = adapter->netdev; phynode = of_node_get(adapter->pdev->dev.of_node); - adapter->phy_mode = PHY_INTERFACE_MODE_GMII; if (phynode) { + /* try devicetree phy, or fixed link */ of_get_phy_mode(phynode, &adapter->phy_mode); if (of_phy_is_fixed_link(phynode)) { @@ -1042,13 +1038,15 @@ lan743x_phy_link_status_change, 0, adapter->phy_mode); of_node_put(phynode); - if (!phydev) - goto return_error; - } else { + } + + if (!phydev) { + /* try internal phy */ phydev = phy_find_first(adapter->mdiobus); if (!phydev) goto return_error; + adapter->phy_mode = PHY_INTERFACE_MODE_GMII; ret = phy_connect_direct(netdev, phydev, lan743x_phy_link_status_change, adapter->phy_mode); @@ -1308,13 +1306,13 @@ goto clear_active; if (!(buffer_info->flags & TX_BUFFER_INFO_FLAG_TIMESTAMP_REQUESTED)) { - dev_kfree_skb(buffer_info->skb); + dev_kfree_skb_any(buffer_info->skb); goto clear_skb; } if (cleanup) { lan743x_ptp_unrequest_tx_timestamp(tx->adapter); - dev_kfree_skb(buffer_info->skb); + dev_kfree_skb_any(buffer_info->skb); } else { ignore_sync = (buffer_info->flags & TX_BUFFER_INFO_FLAG_IGNORE_SYNC) != 0; @@ -1624,7 +1622,7 @@ if (required_number_of_descriptors > lan743x_tx_get_avail_desc(tx)) { if (required_number_of_descriptors > (tx->ring_size - 1)) { - dev_kfree_skb(skb); + dev_kfree_skb_irq(skb); } else { /* save to overflow buffer */ tx->overflow_skb = skb; @@ -1657,7 +1655,7 @@ start_frame_length, do_timestamp, skb->ip_summed == CHECKSUM_PARTIAL)) { - dev_kfree_skb(skb); + dev_kfree_skb_irq(skb); goto unlock; } @@ -1676,7 +1674,7 @@ * frame assembler clean up was performed inside * lan743x_tx_frame_add_fragment */ - dev_kfree_skb(skb); + dev_kfree_skb_irq(skb); goto unlock; } } @@ -1964,6 +1962,14 @@ length, GFP_ATOMIC | GFP_DMA); } +static void lan743x_rx_update_tail(struct lan743x_rx *rx, int index) +{ + /* update the tail once per 8 descriptors */ + if ((index & 7) == 7) + lan743x_csr_write(rx->adapter, RX_TAIL(rx->channel_number), + index); +} + static int lan743x_rx_init_ring_element(struct lan743x_rx *rx, int index, struct sk_buff *skb) { @@ -1994,6 +2000,7 @@ descriptor->data0 = (RX_DESC_DATA0_OWN_ | (length & RX_DESC_DATA0_BUF_LENGTH_MASK_)); skb_reserve(buffer_info->skb, RX_HEAD_PADDING); + lan743x_rx_update_tail(rx, index); return 0; } @@ -2012,6 +2019,7 @@ descriptor->data0 = (RX_DESC_DATA0_OWN_ | ((buffer_info->buffer_length) & RX_DESC_DATA0_BUF_LENGTH_MASK_)); + lan743x_rx_update_tail(rx, index); } static void lan743x_rx_release_ring_element(struct lan743x_rx *rx, int index) @@ -2223,6 +2231,7 @@ { struct lan743x_rx *rx = container_of(napi, struct lan743x_rx, napi); struct lan743x_adapter *adapter = rx->adapter; + int result = RX_PROCESS_RESULT_NOTHING_TO_DO; u32 rx_tail_flags = 0; int count; @@ -2231,27 +2240,19 @@ lan743x_csr_write(adapter, DMAC_INT_STS, DMAC_INT_BIT_RXFRM_(rx->channel_number)); } - count = 0; - while (count < weight) { - int rx_process_result = lan743x_rx_process_packet(rx); - - if (rx_process_result == RX_PROCESS_RESULT_PACKET_RECEIVED) { - count++; - } else if (rx_process_result == - RX_PROCESS_RESULT_NOTHING_TO_DO) { + for (count = 0; count < weight; count++) { + result = lan743x_rx_process_packet(rx); + if (result == RX_PROCESS_RESULT_NOTHING_TO_DO) break; - } else if (rx_process_result == - RX_PROCESS_RESULT_PACKET_DROPPED) { - continue; - } } rx->frame_count += count; - if (count == weight) - goto done; + if (count == weight || result == RX_PROCESS_RESULT_PACKET_RECEIVED) + return weight; if (!napi_complete_done(napi, count)) - goto done; + return count; + /* re-arm interrupts, must write to rx tail on some chip variants */ if (rx->vector_flags & LAN743X_VECTOR_FLAG_VECTOR_ENABLE_AUTO_SET) rx_tail_flags |= RX_TAIL_SET_TOP_INT_VEC_EN_; if (rx->vector_flags & LAN743X_VECTOR_FLAG_SOURCE_ENABLE_AUTO_SET) { @@ -2261,10 +2262,10 @@ INT_BIT_DMA_RX_(rx->channel_number)); } - /* update RX_TAIL */ - lan743x_csr_write(adapter, RX_TAIL(rx->channel_number), - rx_tail_flags | rx->last_tail); -done: + if (rx_tail_flags) + lan743x_csr_write(adapter, RX_TAIL(rx->channel_number), + rx_tail_flags | rx->last_tail); + return count; } @@ -2409,7 +2410,7 @@ netif_napi_add(adapter->netdev, &rx->napi, lan743x_rx_napi_poll, - rx->ring_size - 1); + NAPI_POLL_WEIGHT); lan743x_csr_write(adapter, DMAC_CMD, DMAC_CMD_RX_SWR_(rx->channel_number)); @@ -2735,7 +2736,6 @@ adapter->intr.irq = adapter->pdev->irq; lan743x_csr_write(adapter, INT_EN_CLR, 0xFFFFFFFF); - mutex_init(&adapter->dp_lock); ret = lan743x_gpio_init(adapter); if (ret) --- linux-azure-5.8-5.8.0.orig/drivers/net/ethernet/microchip/lan743x_main.h +++ linux-azure-5.8-5.8.0/drivers/net/ethernet/microchip/lan743x_main.h @@ -712,9 +712,6 @@ struct lan743x_csr csr; struct lan743x_intr intr; - /* lock, used to prevent concurrent access to data port */ - struct mutex dp_lock; - struct lan743x_gpio gpio; struct lan743x_ptp ptp; --- linux-azure-5.8-5.8.0.orig/drivers/net/ethernet/mscc/Makefile +++ linux-azure-5.8-5.8.0/drivers/net/ethernet/mscc/Makefile @@ -2,4 +2,4 @@ obj-$(CONFIG_MSCC_OCELOT_SWITCH) += mscc_ocelot_common.o mscc_ocelot_common-y := ocelot.o ocelot_io.o mscc_ocelot_common-y += ocelot_regs.o ocelot_tc.o ocelot_police.o ocelot_ace.o ocelot_flower.o ocelot_ptp.o -obj-$(CONFIG_MSCC_OCELOT_SWITCH_OCELOT) += ocelot_board.o +obj-$(CONFIG_MSCC_OCELOT_SWITCH_OCELOT) += ocelot_vsc7514.o --- linux-azure-5.8-5.8.0.orig/drivers/net/ethernet/mscc/ocelot.c +++ linux-azure-5.8-5.8.0/drivers/net/ethernet/mscc/ocelot.c @@ -396,18 +396,6 @@ } } -/* Watermark encode - * Bit 8: Unit; 0:1, 1:16 - * Bit 7-0: Value to be multiplied with unit - */ -static u16 ocelot_wm_enc(u16 value) -{ - if (value >= BIT(8)) - return BIT(8) | (value / 16); - - return value; -} - void ocelot_adjust_link(struct ocelot *ocelot, int port, struct phy_device *phydev) { @@ -1605,14 +1593,14 @@ addr[0] = 0; if (!new) { - addr[2] = mc->ports << 0; - addr[1] = mc->ports << 8; + addr[1] = mc->ports >> 8; + addr[2] = mc->ports & 0xff; ocelot_mact_forget(ocelot, addr, vid); } mc->ports |= BIT(port); - addr[2] = mc->ports << 0; - addr[1] = mc->ports << 8; + addr[1] = mc->ports >> 8; + addr[2] = mc->ports & 0xff; return ocelot_mact_learn(ocelot, 0, addr, vid, ENTRYTYPE_MACv4); } @@ -1636,9 +1624,9 @@ return -ENOENT; memcpy(addr, mc->addr, ETH_ALEN); - addr[2] = mc->ports << 0; - addr[1] = mc->ports << 8; addr[0] = 0; + addr[1] = mc->ports >> 8; + addr[2] = mc->ports & 0xff; ocelot_mact_forget(ocelot, addr, vid); mc->ports &= ~BIT(port); @@ -1648,8 +1636,8 @@ return 0; } - addr[2] = mc->ports << 0; - addr[1] = mc->ports << 8; + addr[1] = mc->ports >> 8; + addr[2] = mc->ports & 0xff; return ocelot_mact_learn(ocelot, 0, addr, vid, ENTRYTYPE_MACv4); } @@ -1907,10 +1895,8 @@ struct net_device *dev = netdev_notifier_info_to_dev(ptr); int ret = 0; - if (!ocelot_netdevice_dev_check(dev)) - return 0; - if (event == NETDEV_PRECHANGEUPPER && + ocelot_netdevice_dev_check(dev) && netif_is_lag_master(info->upper_dev)) { struct netdev_lag_upper_info *lag_upper_info = info->upper_info; struct netlink_ext_ack *extack; @@ -2012,7 +1998,8 @@ { struct ocelot_port *ocelot_port = ocelot->ports[port]; int maxlen = sdu + ETH_HLEN + ETH_FCS_LEN; - int atop_wm; + int pause_start, pause_stop; + int atop, atop_tot; if (port == ocelot->npi) { maxlen += OCELOT_TAG_LEN; @@ -2025,20 +2012,20 @@ ocelot_port_writel(ocelot_port, maxlen, DEV_MAC_MAXLEN_CFG); - /* Set Pause WM hysteresis - * 152 = 6 * maxlen / OCELOT_BUFFER_CELL_SZ - * 101 = 4 * maxlen / OCELOT_BUFFER_CELL_SZ - */ - ocelot_write_rix(ocelot, SYS_PAUSE_CFG_PAUSE_ENA | - SYS_PAUSE_CFG_PAUSE_STOP(101) | - SYS_PAUSE_CFG_PAUSE_START(152), SYS_PAUSE_CFG, port); + /* Set Pause watermark hysteresis */ + pause_start = 6 * maxlen / OCELOT_BUFFER_CELL_SZ; + pause_stop = 4 * maxlen / OCELOT_BUFFER_CELL_SZ; + ocelot_rmw_rix(ocelot, SYS_PAUSE_CFG_PAUSE_START(pause_start), + SYS_PAUSE_CFG_PAUSE_START_M, SYS_PAUSE_CFG, port); + ocelot_rmw_rix(ocelot, SYS_PAUSE_CFG_PAUSE_STOP(pause_stop), + SYS_PAUSE_CFG_PAUSE_STOP_M, SYS_PAUSE_CFG, port); - /* Tail dropping watermark */ - atop_wm = (ocelot->shared_queue_sz - 9 * maxlen) / + /* Tail dropping watermarks */ + atop_tot = (ocelot->shared_queue_sz - 9 * maxlen) / OCELOT_BUFFER_CELL_SZ; - ocelot_write_rix(ocelot, ocelot_wm_enc(9 * maxlen), - SYS_ATOP, port); - ocelot_write(ocelot, ocelot_wm_enc(atop_wm), SYS_ATOP_TOT_CFG); + atop = (9 * maxlen) / OCELOT_BUFFER_CELL_SZ; + ocelot_write_rix(ocelot, ocelot->ops->wm_enc(atop), SYS_ATOP, port); + ocelot_write(ocelot, ocelot->ops->wm_enc(atop_tot), SYS_ATOP_TOT_CFG); } EXPORT_SYMBOL(ocelot_port_set_maxlen); @@ -2094,6 +2081,10 @@ ocelot_port_writel(ocelot_port, 0, DEV_MAC_FC_MAC_HIGH_CFG); ocelot_port_writel(ocelot_port, 0, DEV_MAC_FC_MAC_LOW_CFG); + /* Enable transmission of pause frames */ + ocelot_rmw_rix(ocelot, SYS_PAUSE_CFG_PAUSE_ENA, SYS_PAUSE_CFG_PAUSE_ENA, + SYS_PAUSE_CFG, port); + /* Drop frames with multicast source address */ ocelot_rmw_gix(ocelot, ANA_PORT_DROP_CFG_DROP_MC_SMAC_ENA, ANA_PORT_DROP_CFG_DROP_MC_SMAC_ENA, --- linux-azure-5.8-5.8.0.orig/drivers/net/ethernet/mscc/ocelot_vsc7514.c +++ linux-azure-5.8-5.8.0/drivers/net/ethernet/mscc/ocelot_vsc7514.c @@ -0,0 +1,639 @@ +// SPDX-License-Identifier: (GPL-2.0 OR MIT) +/* + * Microsemi Ocelot Switch driver + * + * Copyright (c) 2017 Microsemi Corporation + */ +#include +#include +#include +#include +#include +#include +#include +#include +#include + +#include +#include "ocelot.h" + +#define IFH_EXTRACT_BITFIELD64(x, o, w) (((x) >> (o)) & GENMASK_ULL((w) - 1, 0)) +#define VSC7514_VCAP_IS2_CNT 64 +#define VSC7514_VCAP_IS2_ENTRY_WIDTH 376 +#define VSC7514_VCAP_IS2_ACTION_WIDTH 99 +#define VSC7514_VCAP_PORT_CNT 11 + +static int ocelot_parse_ifh(u32 *_ifh, struct frame_info *info) +{ + u8 llen, wlen; + u64 ifh[2]; + + ifh[0] = be64_to_cpu(((__force __be64 *)_ifh)[0]); + ifh[1] = be64_to_cpu(((__force __be64 *)_ifh)[1]); + + wlen = IFH_EXTRACT_BITFIELD64(ifh[0], 7, 8); + llen = IFH_EXTRACT_BITFIELD64(ifh[0], 15, 6); + + info->len = OCELOT_BUFFER_CELL_SZ * wlen + llen - 80; + + info->timestamp = IFH_EXTRACT_BITFIELD64(ifh[0], 21, 32); + + info->port = IFH_EXTRACT_BITFIELD64(ifh[1], 43, 4); + + info->tag_type = IFH_EXTRACT_BITFIELD64(ifh[1], 16, 1); + info->vid = IFH_EXTRACT_BITFIELD64(ifh[1], 0, 12); + + return 0; +} + +static int ocelot_rx_frame_word(struct ocelot *ocelot, u8 grp, bool ifh, + u32 *rval) +{ + u32 val; + u32 bytes_valid; + + val = ocelot_read_rix(ocelot, QS_XTR_RD, grp); + if (val == XTR_NOT_READY) { + if (ifh) + return -EIO; + + do { + val = ocelot_read_rix(ocelot, QS_XTR_RD, grp); + } while (val == XTR_NOT_READY); + } + + switch (val) { + case XTR_ABORT: + return -EIO; + case XTR_EOF_0: + case XTR_EOF_1: + case XTR_EOF_2: + case XTR_EOF_3: + case XTR_PRUNED: + bytes_valid = XTR_VALID_BYTES(val); + val = ocelot_read_rix(ocelot, QS_XTR_RD, grp); + if (val == XTR_ESCAPE) + *rval = ocelot_read_rix(ocelot, QS_XTR_RD, grp); + else + *rval = val; + + return bytes_valid; + case XTR_ESCAPE: + *rval = ocelot_read_rix(ocelot, QS_XTR_RD, grp); + + return 4; + default: + *rval = val; + + return 4; + } +} + +static irqreturn_t ocelot_xtr_irq_handler(int irq, void *arg) +{ + struct ocelot *ocelot = arg; + int i = 0, grp = 0; + int err = 0; + + if (!(ocelot_read(ocelot, QS_XTR_DATA_PRESENT) & BIT(grp))) + return IRQ_NONE; + + do { + struct skb_shared_hwtstamps *shhwtstamps; + struct ocelot_port_private *priv; + struct ocelot_port *ocelot_port; + u64 tod_in_ns, full_ts_in_ns; + struct frame_info info = {}; + struct net_device *dev; + u32 ifh[4], val, *buf; + struct timespec64 ts; + int sz, len, buf_len; + struct sk_buff *skb; + + for (i = 0; i < OCELOT_TAG_LEN / 4; i++) { + err = ocelot_rx_frame_word(ocelot, grp, true, &ifh[i]); + if (err != 4) + break; + } + + if (err != 4) + break; + + /* At this point the IFH was read correctly, so it is safe to + * presume that there is no error. The err needs to be reset + * otherwise a frame could come in CPU queue between the while + * condition and the check for error later on. And in that case + * the new frame is just removed and not processed. + */ + err = 0; + + ocelot_parse_ifh(ifh, &info); + + ocelot_port = ocelot->ports[info.port]; + priv = container_of(ocelot_port, struct ocelot_port_private, + port); + dev = priv->dev; + + skb = netdev_alloc_skb(dev, info.len); + + if (unlikely(!skb)) { + netdev_err(dev, "Unable to allocate sk_buff\n"); + err = -ENOMEM; + break; + } + buf_len = info.len - ETH_FCS_LEN; + buf = (u32 *)skb_put(skb, buf_len); + + len = 0; + do { + sz = ocelot_rx_frame_word(ocelot, grp, false, &val); + *buf++ = val; + len += sz; + } while (len < buf_len); + + /* Read the FCS */ + sz = ocelot_rx_frame_word(ocelot, grp, false, &val); + /* Update the statistics if part of the FCS was read before */ + len -= ETH_FCS_LEN - sz; + + if (unlikely(dev->features & NETIF_F_RXFCS)) { + buf = (u32 *)skb_put(skb, ETH_FCS_LEN); + *buf = val; + } + + if (sz < 0) { + err = sz; + break; + } + + if (ocelot->ptp) { + ocelot_ptp_gettime64(&ocelot->ptp_info, &ts); + + tod_in_ns = ktime_set(ts.tv_sec, ts.tv_nsec); + if ((tod_in_ns & 0xffffffff) < info.timestamp) + full_ts_in_ns = (((tod_in_ns >> 32) - 1) << 32) | + info.timestamp; + else + full_ts_in_ns = (tod_in_ns & GENMASK_ULL(63, 32)) | + info.timestamp; + + shhwtstamps = skb_hwtstamps(skb); + memset(shhwtstamps, 0, sizeof(struct skb_shared_hwtstamps)); + shhwtstamps->hwtstamp = full_ts_in_ns; + } + + /* Everything we see on an interface that is in the HW bridge + * has already been forwarded. + */ + if (ocelot->bridge_mask & BIT(info.port)) + skb->offload_fwd_mark = 1; + + skb->protocol = eth_type_trans(skb, dev); + if (!skb_defer_rx_timestamp(skb)) + netif_rx(skb); + dev->stats.rx_bytes += len; + dev->stats.rx_packets++; + } while (ocelot_read(ocelot, QS_XTR_DATA_PRESENT) & BIT(grp)); + + if (err) + while (ocelot_read(ocelot, QS_XTR_DATA_PRESENT) & BIT(grp)) + ocelot_read_rix(ocelot, QS_XTR_RD, grp); + + return IRQ_HANDLED; +} + +static irqreturn_t ocelot_ptp_rdy_irq_handler(int irq, void *arg) +{ + struct ocelot *ocelot = arg; + + ocelot_get_txtstamp(ocelot); + + return IRQ_HANDLED; +} + +static const struct of_device_id mscc_ocelot_match[] = { + { .compatible = "mscc,vsc7514-switch" }, + { } +}; +MODULE_DEVICE_TABLE(of, mscc_ocelot_match); + +static int ocelot_reset(struct ocelot *ocelot) +{ + int retries = 100; + u32 val; + + regmap_field_write(ocelot->regfields[SYS_RESET_CFG_MEM_INIT], 1); + regmap_field_write(ocelot->regfields[SYS_RESET_CFG_MEM_ENA], 1); + + do { + msleep(1); + regmap_field_read(ocelot->regfields[SYS_RESET_CFG_MEM_INIT], + &val); + } while (val && --retries); + + if (!retries) + return -ETIMEDOUT; + + regmap_field_write(ocelot->regfields[SYS_RESET_CFG_MEM_ENA], 1); + regmap_field_write(ocelot->regfields[SYS_RESET_CFG_CORE_ENA], 1); + + return 0; +} + +/* Watermark encode + * Bit 8: Unit; 0:1, 1:16 + * Bit 7-0: Value to be multiplied with unit + */ +static u16 ocelot_wm_enc(u16 value) +{ + if (value >= BIT(8)) + return BIT(8) | (value / 16); + + return value; +} + +static const struct ocelot_ops ocelot_ops = { + .reset = ocelot_reset, + .wm_enc = ocelot_wm_enc, +}; + +static const struct vcap_field vsc7514_vcap_is2_keys[] = { + /* Common: 46 bits */ + [VCAP_IS2_TYPE] = { 0, 4}, + [VCAP_IS2_HK_FIRST] = { 4, 1}, + [VCAP_IS2_HK_PAG] = { 5, 8}, + [VCAP_IS2_HK_IGR_PORT_MASK] = { 13, 12}, + [VCAP_IS2_HK_RSV2] = { 25, 1}, + [VCAP_IS2_HK_HOST_MATCH] = { 26, 1}, + [VCAP_IS2_HK_L2_MC] = { 27, 1}, + [VCAP_IS2_HK_L2_BC] = { 28, 1}, + [VCAP_IS2_HK_VLAN_TAGGED] = { 29, 1}, + [VCAP_IS2_HK_VID] = { 30, 12}, + [VCAP_IS2_HK_DEI] = { 42, 1}, + [VCAP_IS2_HK_PCP] = { 43, 3}, + /* MAC_ETYPE / MAC_LLC / MAC_SNAP / OAM common */ + [VCAP_IS2_HK_L2_DMAC] = { 46, 48}, + [VCAP_IS2_HK_L2_SMAC] = { 94, 48}, + /* MAC_ETYPE (TYPE=000) */ + [VCAP_IS2_HK_MAC_ETYPE_ETYPE] = {142, 16}, + [VCAP_IS2_HK_MAC_ETYPE_L2_PAYLOAD0] = {158, 16}, + [VCAP_IS2_HK_MAC_ETYPE_L2_PAYLOAD1] = {174, 8}, + [VCAP_IS2_HK_MAC_ETYPE_L2_PAYLOAD2] = {182, 3}, + /* MAC_LLC (TYPE=001) */ + [VCAP_IS2_HK_MAC_LLC_L2_LLC] = {142, 40}, + /* MAC_SNAP (TYPE=010) */ + [VCAP_IS2_HK_MAC_SNAP_L2_SNAP] = {142, 40}, + /* MAC_ARP (TYPE=011) */ + [VCAP_IS2_HK_MAC_ARP_SMAC] = { 46, 48}, + [VCAP_IS2_HK_MAC_ARP_ADDR_SPACE_OK] = { 94, 1}, + [VCAP_IS2_HK_MAC_ARP_PROTO_SPACE_OK] = { 95, 1}, + [VCAP_IS2_HK_MAC_ARP_LEN_OK] = { 96, 1}, + [VCAP_IS2_HK_MAC_ARP_TARGET_MATCH] = { 97, 1}, + [VCAP_IS2_HK_MAC_ARP_SENDER_MATCH] = { 98, 1}, + [VCAP_IS2_HK_MAC_ARP_OPCODE_UNKNOWN] = { 99, 1}, + [VCAP_IS2_HK_MAC_ARP_OPCODE] = {100, 2}, + [VCAP_IS2_HK_MAC_ARP_L3_IP4_DIP] = {102, 32}, + [VCAP_IS2_HK_MAC_ARP_L3_IP4_SIP] = {134, 32}, + [VCAP_IS2_HK_MAC_ARP_DIP_EQ_SIP] = {166, 1}, + /* IP4_TCP_UDP / IP4_OTHER common */ + [VCAP_IS2_HK_IP4] = { 46, 1}, + [VCAP_IS2_HK_L3_FRAGMENT] = { 47, 1}, + [VCAP_IS2_HK_L3_FRAG_OFS_GT0] = { 48, 1}, + [VCAP_IS2_HK_L3_OPTIONS] = { 49, 1}, + [VCAP_IS2_HK_IP4_L3_TTL_GT0] = { 50, 1}, + [VCAP_IS2_HK_L3_TOS] = { 51, 8}, + [VCAP_IS2_HK_L3_IP4_DIP] = { 59, 32}, + [VCAP_IS2_HK_L3_IP4_SIP] = { 91, 32}, + [VCAP_IS2_HK_DIP_EQ_SIP] = {123, 1}, + /* IP4_TCP_UDP (TYPE=100) */ + [VCAP_IS2_HK_TCP] = {124, 1}, + [VCAP_IS2_HK_L4_SPORT] = {125, 16}, + [VCAP_IS2_HK_L4_DPORT] = {141, 16}, + [VCAP_IS2_HK_L4_RNG] = {157, 8}, + [VCAP_IS2_HK_L4_SPORT_EQ_DPORT] = {165, 1}, + [VCAP_IS2_HK_L4_SEQUENCE_EQ0] = {166, 1}, + [VCAP_IS2_HK_L4_URG] = {167, 1}, + [VCAP_IS2_HK_L4_ACK] = {168, 1}, + [VCAP_IS2_HK_L4_PSH] = {169, 1}, + [VCAP_IS2_HK_L4_RST] = {170, 1}, + [VCAP_IS2_HK_L4_SYN] = {171, 1}, + [VCAP_IS2_HK_L4_FIN] = {172, 1}, + [VCAP_IS2_HK_L4_1588_DOM] = {173, 8}, + [VCAP_IS2_HK_L4_1588_VER] = {181, 4}, + /* IP4_OTHER (TYPE=101) */ + [VCAP_IS2_HK_IP4_L3_PROTO] = {124, 8}, + [VCAP_IS2_HK_L3_PAYLOAD] = {132, 56}, + /* IP6_STD (TYPE=110) */ + [VCAP_IS2_HK_IP6_L3_TTL_GT0] = { 46, 1}, + [VCAP_IS2_HK_L3_IP6_SIP] = { 47, 128}, + [VCAP_IS2_HK_IP6_L3_PROTO] = {175, 8}, + /* OAM (TYPE=111) */ + [VCAP_IS2_HK_OAM_MEL_FLAGS] = {142, 7}, + [VCAP_IS2_HK_OAM_VER] = {149, 5}, + [VCAP_IS2_HK_OAM_OPCODE] = {154, 8}, + [VCAP_IS2_HK_OAM_FLAGS] = {162, 8}, + [VCAP_IS2_HK_OAM_MEPID] = {170, 16}, + [VCAP_IS2_HK_OAM_CCM_CNTS_EQ0] = {186, 1}, + [VCAP_IS2_HK_OAM_IS_Y1731] = {187, 1}, +}; + +static const struct vcap_field vsc7514_vcap_is2_actions[] = { + [VCAP_IS2_ACT_HIT_ME_ONCE] = { 0, 1}, + [VCAP_IS2_ACT_CPU_COPY_ENA] = { 1, 1}, + [VCAP_IS2_ACT_CPU_QU_NUM] = { 2, 3}, + [VCAP_IS2_ACT_MASK_MODE] = { 5, 2}, + [VCAP_IS2_ACT_MIRROR_ENA] = { 7, 1}, + [VCAP_IS2_ACT_LRN_DIS] = { 8, 1}, + [VCAP_IS2_ACT_POLICE_ENA] = { 9, 1}, + [VCAP_IS2_ACT_POLICE_IDX] = { 10, 9}, + [VCAP_IS2_ACT_POLICE_VCAP_ONLY] = { 19, 1}, + [VCAP_IS2_ACT_PORT_MASK] = { 20, 11}, + [VCAP_IS2_ACT_REW_OP] = { 31, 9}, + [VCAP_IS2_ACT_SMAC_REPLACE_ENA] = { 40, 1}, + [VCAP_IS2_ACT_RSV] = { 41, 2}, + [VCAP_IS2_ACT_ACL_ID] = { 43, 6}, + [VCAP_IS2_ACT_HIT_CNT] = { 49, 32}, +}; + +static const struct vcap_props vsc7514_vcap_props[] = { + [VCAP_IS2] = { + .tg_width = 2, + .sw_count = 4, + .entry_count = VSC7514_VCAP_IS2_CNT, + .entry_width = VSC7514_VCAP_IS2_ENTRY_WIDTH, + .action_count = VSC7514_VCAP_IS2_CNT + + VSC7514_VCAP_PORT_CNT + 2, + .action_width = 99, + .action_type_width = 1, + .action_table = { + [IS2_ACTION_TYPE_NORMAL] = { + .width = 49, + .count = 2 + }, + [IS2_ACTION_TYPE_SMAC_SIP] = { + .width = 6, + .count = 4 + }, + }, + .counter_words = 4, + .counter_width = 32, + }, +}; + +static struct ptp_clock_info ocelot_ptp_clock_info = { + .owner = THIS_MODULE, + .name = "ocelot ptp", + .max_adj = 0x7fffffff, + .n_alarm = 0, + .n_ext_ts = 0, + .n_per_out = OCELOT_PTP_PINS_NUM, + .n_pins = OCELOT_PTP_PINS_NUM, + .pps = 0, + .gettime64 = ocelot_ptp_gettime64, + .settime64 = ocelot_ptp_settime64, + .adjtime = ocelot_ptp_adjtime, + .adjfine = ocelot_ptp_adjfine, + .verify = ocelot_ptp_verify, + .enable = ocelot_ptp_enable, +}; + +static int mscc_ocelot_probe(struct platform_device *pdev) +{ + struct device_node *np = pdev->dev.of_node; + struct device_node *ports, *portnp; + int err, irq_xtr, irq_ptp_rdy; + struct ocelot *ocelot; + struct regmap *hsio; + unsigned int i; + + struct { + enum ocelot_target id; + char *name; + u8 optional:1; + } io_target[] = { + { SYS, "sys" }, + { REW, "rew" }, + { QSYS, "qsys" }, + { ANA, "ana" }, + { QS, "qs" }, + { S2, "s2" }, + { PTP, "ptp", 1 }, + }; + + if (!np && !pdev->dev.platform_data) + return -ENODEV; + + ocelot = devm_kzalloc(&pdev->dev, sizeof(*ocelot), GFP_KERNEL); + if (!ocelot) + return -ENOMEM; + + platform_set_drvdata(pdev, ocelot); + ocelot->dev = &pdev->dev; + + for (i = 0; i < ARRAY_SIZE(io_target); i++) { + struct regmap *target; + struct resource *res; + + res = platform_get_resource_byname(pdev, IORESOURCE_MEM, + io_target[i].name); + + target = ocelot_regmap_init(ocelot, res); + if (IS_ERR(target)) { + if (io_target[i].optional) { + ocelot->targets[io_target[i].id] = NULL; + continue; + } + return PTR_ERR(target); + } + + ocelot->targets[io_target[i].id] = target; + } + + hsio = syscon_regmap_lookup_by_compatible("mscc,ocelot-hsio"); + if (IS_ERR(hsio)) { + dev_err(&pdev->dev, "missing hsio syscon\n"); + return PTR_ERR(hsio); + } + + ocelot->targets[HSIO] = hsio; + + err = ocelot_chip_init(ocelot, &ocelot_ops); + if (err) + return err; + + irq_xtr = platform_get_irq_byname(pdev, "xtr"); + if (irq_xtr < 0) + return -ENODEV; + + err = devm_request_threaded_irq(&pdev->dev, irq_xtr, NULL, + ocelot_xtr_irq_handler, IRQF_ONESHOT, + "frame extraction", ocelot); + if (err) + return err; + + irq_ptp_rdy = platform_get_irq_byname(pdev, "ptp_rdy"); + if (irq_ptp_rdy > 0 && ocelot->targets[PTP]) { + err = devm_request_threaded_irq(&pdev->dev, irq_ptp_rdy, NULL, + ocelot_ptp_rdy_irq_handler, + IRQF_ONESHOT, "ptp ready", + ocelot); + if (err) + return err; + + /* Both the PTP interrupt and the PTP bank are available */ + ocelot->ptp = 1; + } + + ports = of_get_child_by_name(np, "ethernet-ports"); + if (!ports) { + dev_err(&pdev->dev, "no ethernet-ports child node found\n"); + return -ENODEV; + } + + ocelot->num_phys_ports = of_get_child_count(ports); + + ocelot->ports = devm_kcalloc(&pdev->dev, ocelot->num_phys_ports, + sizeof(struct ocelot_port *), GFP_KERNEL); + + ocelot->vcap_is2_keys = vsc7514_vcap_is2_keys; + ocelot->vcap_is2_actions = vsc7514_vcap_is2_actions; + ocelot->vcap = vsc7514_vcap_props; + + ocelot_init(ocelot); + if (ocelot->ptp) { + err = ocelot_init_timestamp(ocelot, &ocelot_ptp_clock_info); + if (err) { + dev_err(ocelot->dev, + "Timestamp initialization failed\n"); + ocelot->ptp = 0; + } + } + + /* No NPI port */ + ocelot_configure_cpu(ocelot, -1, OCELOT_TAG_PREFIX_NONE, + OCELOT_TAG_PREFIX_NONE); + + for_each_available_child_of_node(ports, portnp) { + struct ocelot_port_private *priv; + struct ocelot_port *ocelot_port; + struct device_node *phy_node; + phy_interface_t phy_mode; + struct phy_device *phy; + struct resource *res; + struct phy *serdes; + void __iomem *regs; + char res_name[8]; + u32 port; + + if (of_property_read_u32(portnp, "reg", &port)) + continue; + + snprintf(res_name, sizeof(res_name), "port%d", port); + + res = platform_get_resource_byname(pdev, IORESOURCE_MEM, + res_name); + regs = devm_ioremap_resource(&pdev->dev, res); + if (IS_ERR(regs)) + continue; + + phy_node = of_parse_phandle(portnp, "phy-handle", 0); + if (!phy_node) + continue; + + phy = of_phy_find_device(phy_node); + of_node_put(phy_node); + if (!phy) + continue; + + err = ocelot_probe_port(ocelot, port, regs, phy); + if (err) { + of_node_put(portnp); + goto out_put_ports; + } + + ocelot_port = ocelot->ports[port]; + priv = container_of(ocelot_port, struct ocelot_port_private, + port); + + of_get_phy_mode(portnp, &phy_mode); + + ocelot_port->phy_mode = phy_mode; + + switch (ocelot_port->phy_mode) { + case PHY_INTERFACE_MODE_NA: + continue; + case PHY_INTERFACE_MODE_SGMII: + break; + case PHY_INTERFACE_MODE_QSGMII: + /* Ensure clock signals and speed is set on all + * QSGMII links + */ + ocelot_port_writel(ocelot_port, + DEV_CLOCK_CFG_LINK_SPEED + (OCELOT_SPEED_1000), + DEV_CLOCK_CFG); + break; + default: + dev_err(ocelot->dev, + "invalid phy mode for port%d, (Q)SGMII only\n", + port); + of_node_put(portnp); + err = -EINVAL; + goto out_put_ports; + } + + serdes = devm_of_phy_get(ocelot->dev, portnp, NULL); + if (IS_ERR(serdes)) { + err = PTR_ERR(serdes); + if (err == -EPROBE_DEFER) + dev_dbg(ocelot->dev, "deferring probe\n"); + else + dev_err(ocelot->dev, + "missing SerDes phys for port%d\n", + port); + + of_node_put(portnp); + goto out_put_ports; + } + + priv->serdes = serdes; + } + + register_netdevice_notifier(&ocelot_netdevice_nb); + register_switchdev_notifier(&ocelot_switchdev_nb); + register_switchdev_blocking_notifier(&ocelot_switchdev_blocking_nb); + + dev_info(&pdev->dev, "Ocelot switch probed\n"); + +out_put_ports: + of_node_put(ports); + return err; +} + +static int mscc_ocelot_remove(struct platform_device *pdev) +{ + struct ocelot *ocelot = platform_get_drvdata(pdev); + + ocelot_deinit_timestamp(ocelot); + ocelot_deinit(ocelot); + unregister_switchdev_blocking_notifier(&ocelot_switchdev_blocking_nb); + unregister_switchdev_notifier(&ocelot_switchdev_nb); + unregister_netdevice_notifier(&ocelot_netdevice_nb); + + return 0; +} + +static struct platform_driver mscc_ocelot_driver = { + .probe = mscc_ocelot_probe, + .remove = mscc_ocelot_remove, + .driver = { + .name = "ocelot-switch", + .of_match_table = mscc_ocelot_match, + }, +}; + +module_platform_driver(mscc_ocelot_driver); + +MODULE_DESCRIPTION("Microsemi Ocelot switch driver"); +MODULE_AUTHOR("Alexandre Belloni "); +MODULE_LICENSE("Dual MIT/GPL"); --- linux-azure-5.8-5.8.0.orig/drivers/net/ethernet/natsemi/macsonic.c +++ linux-azure-5.8-5.8.0/drivers/net/ethernet/natsemi/macsonic.c @@ -506,10 +506,14 @@ err = register_netdev(dev); if (err) - goto out; + goto undo_probe; return 0; +undo_probe: + dma_free_coherent(lp->device, + SIZEOF_SONIC_DESC * SONIC_BUS_SCALE(lp->dma_bitmode), + lp->descriptors, lp->descriptors_laddr); out: free_netdev(dev); @@ -584,12 +588,16 @@ err = register_netdev(ndev); if (err) - goto out; + goto undo_probe; nubus_set_drvdata(board, ndev); return 0; +undo_probe: + dma_free_coherent(lp->device, + SIZEOF_SONIC_DESC * SONIC_BUS_SCALE(lp->dma_bitmode), + lp->descriptors, lp->descriptors_laddr); out: free_netdev(ndev); return err; --- linux-azure-5.8-5.8.0.orig/drivers/net/ethernet/natsemi/xtsonic.c +++ linux-azure-5.8-5.8.0/drivers/net/ethernet/natsemi/xtsonic.c @@ -229,11 +229,14 @@ sonic_msg_init(dev); if ((err = register_netdev(dev))) - goto out1; + goto undo_probe1; return 0; -out1: +undo_probe1: + dma_free_coherent(lp->device, + SIZEOF_SONIC_DESC * SONIC_BUS_SCALE(lp->dma_bitmode), + lp->descriptors, lp->descriptors_laddr); release_region(dev->base_addr, SONIC_MEM_SIZE); out: free_netdev(dev); --- linux-azure-5.8-5.8.0.orig/drivers/net/ethernet/neterion/vxge/vxge-main.c +++ linux-azure-5.8-5.8.0/drivers/net/ethernet/neterion/vxge/vxge-main.c @@ -4197,6 +4197,9 @@ return ret; } +#define VXGE_PXE_FIRMWARE "vxge/X3fw-pxe.ncf" +#define VXGE_FIRMWARE "vxge/X3fw.ncf" + static int vxge_probe_fw_update(struct vxgedev *vdev) { u32 maj, min, bld; @@ -4239,9 +4242,9 @@ } } if (gpxe) - fw_name = "vxge/X3fw-pxe.ncf"; + fw_name = VXGE_PXE_FIRMWARE; else - fw_name = "vxge/X3fw.ncf"; + fw_name = VXGE_FIRMWARE; ret = vxge_fw_upgrade(vdev, fw_name, 0); /* -EINVAL and -ENOENT are not fatal errors for flashing firmware on @@ -4846,3 +4849,5 @@ } module_init(vxge_starter); module_exit(vxge_closer); +MODULE_FIRMWARE(VXGE_PXE_FIRMWARE); +MODULE_FIRMWARE(VXGE_FIRMWARE); --- linux-azure-5.8-5.8.0.orig/drivers/net/ethernet/netronome/nfp/flower/main.c +++ linux-azure-5.8-5.8.0/drivers/net/ethernet/netronome/nfp/flower/main.c @@ -860,9 +860,6 @@ skb_queue_purge(&app_priv->cmsg_skbs_low); flush_work(&app_priv->cmsg_work); - flow_indr_dev_unregister(nfp_flower_indr_setup_tc_cb, app, - nfp_flower_setup_indr_tc_release); - if (app_priv->flower_ext_feats & NFP_FL_FEATS_VF_RLIM) nfp_flower_qos_cleanup(app); @@ -951,6 +948,9 @@ static void nfp_flower_stop(struct nfp_app *app) { nfp_tunnel_config_stop(app); + + flow_indr_dev_unregister(nfp_flower_indr_setup_tc_cb, app, + nfp_flower_setup_indr_tc_release); } static int --- linux-azure-5.8-5.8.0.orig/drivers/net/ethernet/netronome/nfp/flower/tunnel_conf.c +++ linux-azure-5.8-5.8.0/drivers/net/ethernet/netronome/nfp/flower/tunnel_conf.c @@ -61,6 +61,7 @@ * @flags: options part of the request * @tun_info.ipv6: dest IPv6 address of active route * @tun_info.egress_port: port the encapsulated packet egressed + * @tun_info.extra: reserved for future use * @tun_info: tunnels that have sent traffic in reported period */ struct nfp_tun_active_tuns_v6 { @@ -70,6 +71,7 @@ struct route_ip_info_v6 { struct in6_addr ipv6; __be32 egress_port; + __be32 extra[2]; } tun_info[]; }; --- linux-azure-5.8-5.8.0.orig/drivers/net/ethernet/netronome/nfp/nfp_net_ethtool.c +++ linux-azure-5.8-5.8.0/drivers/net/ethernet/netronome/nfp/nfp_net_ethtool.c @@ -829,8 +829,8 @@ struct nfp_eth_table_port *eth_port; struct nfp_port *port; - param->active_fec = ETHTOOL_FEC_NONE_BIT; - param->fec = ETHTOOL_FEC_NONE_BIT; + param->active_fec = ETHTOOL_FEC_NONE; + param->fec = ETHTOOL_FEC_NONE; port = nfp_port_from_netdev(netdev); eth_port = nfp_port_get_eth_port(port); --- linux-azure-5.8-5.8.0.orig/drivers/net/ethernet/pasemi/pasemi_mac.c +++ linux-azure-5.8-5.8.0/drivers/net/ethernet/pasemi/pasemi_mac.c @@ -1078,16 +1078,20 @@ mac->tx = pasemi_mac_setup_tx_resources(dev); - if (!mac->tx) + if (!mac->tx) { + ret = -ENOMEM; goto out_tx_ring; + } /* We might already have allocated rings in case mtu was changed * before interface was brought up. */ if (dev->mtu > 1500 && !mac->num_cs) { pasemi_mac_setup_csrings(mac); - if (!mac->num_cs) + if (!mac->num_cs) { + ret = -ENOMEM; goto out_tx_ring; + } } /* Zero out rmon counters */ --- linux-azure-5.8-5.8.0.orig/drivers/net/ethernet/pensando/ionic/ionic_bus_pci.c +++ linux-azure-5.8-5.8.0/drivers/net/ethernet/pensando/ionic/ionic_bus_pci.c @@ -247,12 +247,11 @@ goto err_out_pci_disable_device; } - pci_set_master(pdev); pcie_print_link_status(pdev); err = ionic_map_bars(ionic); if (err) - goto err_out_pci_clear_master; + goto err_out_pci_disable_device; /* Configure the device */ err = ionic_setup(ionic); @@ -260,6 +259,7 @@ dev_err(dev, "Cannot setup device: %d, aborting\n", err); goto err_out_unmap_bars; } + pci_set_master(pdev); err = ionic_identify(ionic); if (err) { @@ -350,6 +350,7 @@ ionic_reset(ionic); err_out_teardown: ionic_dev_teardown(ionic); + pci_clear_master(pdev); /* Don't fail the probe for these errors, keep * the hw interface around for inspection */ @@ -358,8 +359,6 @@ err_out_unmap_bars: ionic_unmap_bars(ionic); pci_release_regions(pdev); -err_out_pci_clear_master: - pci_clear_master(pdev); err_out_pci_disable_device: pci_disable_device(pdev); err_out_debugfs_del_dev: @@ -389,9 +388,9 @@ ionic_port_reset(ionic); ionic_reset(ionic); ionic_dev_teardown(ionic); + pci_clear_master(pdev); ionic_unmap_bars(ionic); pci_release_regions(pdev); - pci_clear_master(pdev); pci_disable_device(pdev); ionic_debugfs_del_dev(ionic); mutex_destroy(&ionic->dev_cmd_lock); --- linux-azure-5.8-5.8.0.orig/drivers/net/ethernet/pensando/ionic/ionic_ethtool.c +++ linux-azure-5.8-5.8.0/drivers/net/ethernet/pensando/ionic/ionic_ethtool.c @@ -126,6 +126,11 @@ ethtool_link_ksettings_zero_link_mode(ks, supported); + if (!idev->port_info) { + netdev_err(netdev, "port_info not initialized\n"); + return -EOPNOTSUPP; + } + /* The port_info data is found in a DMA space that the NIC keeps * up-to-date, so there's no need to request the data from the * NIC, we already have it in our memory space. --- linux-azure-5.8-5.8.0.orig/drivers/net/ethernet/pensando/ionic/ionic_lif.c +++ linux-azure-5.8-5.8.0/drivers/net/ethernet/pensando/ionic/ionic_lif.c @@ -103,6 +103,12 @@ link_up = link_status == IONIC_PORT_OPER_STATUS_UP; if (link_up) { + if (lif->netdev->flags & IFF_UP && netif_running(lif->netdev)) { + mutex_lock(&lif->queue_lock); + ionic_start_queues(lif); + mutex_unlock(&lif->queue_lock); + } + if (!netif_carrier_ok(netdev)) { u32 link_speed; @@ -112,12 +118,6 @@ link_speed / 1000); netif_carrier_on(netdev); } - - if (lif->netdev->flags & IFF_UP && netif_running(lif->netdev)) { - mutex_lock(&lif->queue_lock); - ionic_start_queues(lif); - mutex_unlock(&lif->queue_lock); - } } else { if (netif_carrier_ok(netdev)) { netdev_info(netdev, "Link down\n"); @@ -723,7 +723,7 @@ eid = le64_to_cpu(comp->event.eid); /* Have we run out of new completions to process? */ - if (eid <= lif->last_eid) + if ((s64)(eid - lif->last_eid) <= 0) return false; lif->last_eid = eid; @@ -1495,7 +1495,6 @@ if (lif->rxqcqs) { for (i = 0; i < lif->nxqs; i++) { ionic_lif_qcq_deinit(lif, lif->rxqcqs[i].qcq); - ionic_rx_flush(&lif->rxqcqs[i].qcq->cq); ionic_rx_empty(&lif->rxqcqs[i].qcq->q); } } --- linux-azure-5.8-5.8.0.orig/drivers/net/ethernet/pensando/ionic/ionic_txrx.c +++ linux-azure-5.8-5.8.0/drivers/net/ethernet/pensando/ionic/ionic_txrx.c @@ -266,18 +266,6 @@ return work_done; } -void ionic_rx_flush(struct ionic_cq *cq) -{ - struct ionic_dev *idev = &cq->lif->ionic->idev; - u32 work_done; - - work_done = ionic_rx_walk_cq(cq, cq->num_descs); - - if (work_done) - ionic_intr_credits(idev->intr_ctrl, cq->bound_intr->index, - work_done, IONIC_INTR_CRED_RESET_COALESCE); -} - static struct page *ionic_rx_page_alloc(struct ionic_queue *q, dma_addr_t *dma_addr) { @@ -349,7 +337,7 @@ unsigned int i, j; unsigned int len; - len = netdev->mtu + ETH_HLEN; + len = netdev->mtu + ETH_HLEN + VLAN_HLEN; nfrags = round_up(len, PAGE_SIZE) / PAGE_SIZE; for (i = ionic_q_space_avail(q); i; i--) { --- linux-azure-5.8-5.8.0.orig/drivers/net/ethernet/pensando/ionic/ionic_txrx.h +++ linux-azure-5.8-5.8.0/drivers/net/ethernet/pensando/ionic/ionic_txrx.h @@ -4,7 +4,6 @@ #ifndef _IONIC_TXRX_H_ #define _IONIC_TXRX_H_ -void ionic_rx_flush(struct ionic_cq *cq); void ionic_tx_flush(struct ionic_cq *cq); void ionic_rx_fill(struct ionic_queue *q); --- linux-azure-5.8-5.8.0.orig/drivers/net/ethernet/qlogic/Kconfig +++ linux-azure-5.8-5.8.0/drivers/net/ethernet/qlogic/Kconfig @@ -78,6 +78,7 @@ depends on PCI select ZLIB_INFLATE select CRC8 + select CRC32 select NET_DEVLINK help This enables the support for ... --- linux-azure-5.8-5.8.0.orig/drivers/net/ethernet/qlogic/netxen/netxen_nic_main.c +++ linux-azure-5.8-5.8.0/drivers/net/ethernet/qlogic/netxen/netxen_nic_main.c @@ -564,11 +564,6 @@ .ndo_set_features = netxen_set_features, }; -static inline bool netxen_function_zero(struct pci_dev *pdev) -{ - return (PCI_FUNC(pdev->devfn) == 0) ? true : false; -} - static inline void netxen_set_interrupt_mode(struct netxen_adapter *adapter, u32 mode) { @@ -664,7 +659,7 @@ netxen_initialize_interrupt_registers(adapter); netxen_set_msix_bit(pdev, 0); - if (netxen_function_zero(pdev)) { + if (adapter->portnum == 0) { if (!netxen_setup_msi_interrupts(adapter, num_msix)) netxen_set_interrupt_mode(adapter, NETXEN_MSI_MODE); else --- linux-azure-5.8-5.8.0.orig/drivers/net/ethernet/qlogic/qed/qed_cxt.c +++ linux-azure-5.8-5.8.0/drivers/net/ethernet/qlogic/qed/qed_cxt.c @@ -1673,9 +1673,9 @@ ilog2(rounded_conn_num)); STORE_RT_REG_AGG(p_hwfn, SRC_REG_FIRSTFREE_RT_OFFSET, - p_hwfn->p_cxt_mngr->first_free); + p_hwfn->p_cxt_mngr->src_t2.first_free); STORE_RT_REG_AGG(p_hwfn, SRC_REG_LASTFREE_RT_OFFSET, - p_hwfn->p_cxt_mngr->last_free); + p_hwfn->p_cxt_mngr->src_t2.last_free); } /* Timers PF */ @@ -2355,6 +2355,11 @@ elem_size = SRQ_CXT_SIZE; p_blk = &p_cli->pf_blks[SRQ_BLK]; break; + case QED_ELEM_XRC_SRQ: + p_cli = &p_hwfn->p_cxt_mngr->clients[ILT_CLI_TSDM]; + elem_size = XRC_SRQ_CXT_SIZE; + p_blk = &p_cli->pf_blks[SRQ_BLK]; + break; case QED_ELEM_TASK: p_cli = &p_hwfn->p_cxt_mngr->clients[ILT_CLI_CDUT]; elem_size = TYPE1_TASK_CXT_SIZE(p_hwfn); --- linux-azure-5.8-5.8.0.orig/drivers/net/ethernet/qlogic/qed/qed_cxt.h +++ linux-azure-5.8-5.8.0/drivers/net/ethernet/qlogic/qed/qed_cxt.h @@ -352,9 +352,6 @@ /* SRC T2 */ struct qed_src_t2 src_t2; - u32 t2_num_pages; - u64 first_free; - u64 last_free; /* total number of SRQ's for this hwfn */ u32 srq_count; --- linux-azure-5.8-5.8.0.orig/drivers/net/ethernet/qlogic/qed/qed_dev.c +++ linux-azure-5.8-5.8.0/drivers/net/ethernet/qlogic/qed/qed_dev.c @@ -4191,7 +4191,8 @@ cdev->mf_bits = BIT(QED_MF_LLH_MAC_CLSS) | BIT(QED_MF_LLH_PROTO_CLSS) | BIT(QED_MF_LL2_NON_UNICAST) | - BIT(QED_MF_INTER_PF_SWITCH); + BIT(QED_MF_INTER_PF_SWITCH) | + BIT(QED_MF_DISABLE_ARFS); break; case NVM_CFG1_GLOB_MF_MODE_DEFAULT: cdev->mf_bits = BIT(QED_MF_LLH_MAC_CLSS) | @@ -4204,6 +4205,14 @@ DP_INFO(p_hwfn, "Multi function mode is 0x%lx\n", cdev->mf_bits); + + /* In CMT the PF is unknown when the GFS block processes the + * packet. Therefore cannot use searcher as it has a per PF + * database, and thus ARFS must be disabled. + * + */ + if (QED_IS_CMT(cdev)) + cdev->mf_bits |= BIT(QED_MF_DISABLE_ARFS); } DP_INFO(p_hwfn, "Multi function mode is 0x%lx\n", --- linux-azure-5.8-5.8.0.orig/drivers/net/ethernet/qlogic/qed/qed_iwarp.c +++ linux-azure-5.8-5.8.0/drivers/net/ethernet/qlogic/qed/qed_iwarp.c @@ -2746,14 +2746,18 @@ iwarp_info->partial_fpdus = kcalloc((u16)p_hwfn->p_rdma_info->num_qps, sizeof(*iwarp_info->partial_fpdus), GFP_KERNEL); - if (!iwarp_info->partial_fpdus) + if (!iwarp_info->partial_fpdus) { + rc = -ENOMEM; goto err; + } iwarp_info->max_num_partial_fpdus = (u16)p_hwfn->p_rdma_info->num_qps; iwarp_info->mpa_intermediate_buf = kzalloc(buff_size, GFP_KERNEL); - if (!iwarp_info->mpa_intermediate_buf) + if (!iwarp_info->mpa_intermediate_buf) { + rc = -ENOMEM; goto err; + } /* The mpa_bufs array serves for pending RX packets received on the * mpa ll2 that don't have place on the tx ring and require later @@ -2763,8 +2767,10 @@ iwarp_info->mpa_bufs = kcalloc(data.input.rx_num_desc, sizeof(*iwarp_info->mpa_bufs), GFP_KERNEL); - if (!iwarp_info->mpa_bufs) + if (!iwarp_info->mpa_bufs) { + rc = -ENOMEM; goto err; + } INIT_LIST_HEAD(&iwarp_info->mpa_buf_pending_list); INIT_LIST_HEAD(&iwarp_info->mpa_buf_list); --- linux-azure-5.8-5.8.0.orig/drivers/net/ethernet/qlogic/qed/qed_l2.c +++ linux-azure-5.8-5.8.0/drivers/net/ethernet/qlogic/qed/qed_l2.c @@ -2001,6 +2001,9 @@ struct qed_ptt *p_ptt, struct qed_arfs_config_params *p_cfg_params) { + if (test_bit(QED_MF_DISABLE_ARFS, &p_hwfn->cdev->mf_bits)) + return; + if (p_cfg_params->mode != QED_FILTER_CONFIG_MODE_DISABLE) { qed_gft_config(p_hwfn, p_ptt, p_hwfn->rel_pf_id, p_cfg_params->tcp, --- linux-azure-5.8-5.8.0.orig/drivers/net/ethernet/qlogic/qed/qed_main.c +++ linux-azure-5.8-5.8.0/drivers/net/ethernet/qlogic/qed/qed_main.c @@ -289,6 +289,8 @@ dev_info->fw_eng = FW_ENGINEERING_VERSION; dev_info->b_inter_pf_switch = test_bit(QED_MF_INTER_PF_SWITCH, &cdev->mf_bits); + if (!test_bit(QED_MF_DISABLE_ARFS, &cdev->mf_bits)) + dev_info->b_arfs_capable = true; dev_info->tx_switching = true; if (hw_info->b_wol_support == QED_WOL_SUPPORT_PME) --- linux-azure-5.8-5.8.0.orig/drivers/net/ethernet/qlogic/qed/qed_rdma.c +++ linux-azure-5.8-5.8.0/drivers/net/ethernet/qlogic/qed/qed_rdma.c @@ -404,6 +404,7 @@ qed_rdma_bmap_free(p_hwfn, &p_hwfn->p_rdma_info->srq_map, 1); qed_rdma_bmap_free(p_hwfn, &p_hwfn->p_rdma_info->real_cid_map, 1); qed_rdma_bmap_free(p_hwfn, &p_hwfn->p_rdma_info->xrc_srq_map, 1); + qed_rdma_bmap_free(p_hwfn, &p_hwfn->p_rdma_info->xrcd_map, 1); kfree(p_rdma_info->port); kfree(p_rdma_info->dev); --- linux-azure-5.8-5.8.0.orig/drivers/net/ethernet/qlogic/qed/qed_sriov.c +++ linux-azure-5.8-5.8.0/drivers/net/ethernet/qlogic/qed/qed_sriov.c @@ -97,6 +97,7 @@ p_ramrod->personality = PERSONALITY_ETH; break; case QED_PCI_ETH_ROCE: + case QED_PCI_ETH_IWARP: p_ramrod->personality = PERSONALITY_RDMA_AND_ETH; break; default: --- linux-azure-5.8-5.8.0.orig/drivers/net/ethernet/qlogic/qede/qede_filter.c +++ linux-azure-5.8-5.8.0/drivers/net/ethernet/qlogic/qede/qede_filter.c @@ -336,6 +336,9 @@ { int i; + if (!edev->dev_info.common.b_arfs_capable) + return -EINVAL; + edev->arfs = vzalloc(sizeof(*edev->arfs)); if (!edev->arfs) return -ENOMEM; --- linux-azure-5.8-5.8.0.orig/drivers/net/ethernet/qlogic/qede/qede_fp.c +++ linux-azure-5.8-5.8.0/drivers/net/ethernet/qlogic/qede/qede_fp.c @@ -1738,6 +1738,11 @@ ntohs(udp_hdr(skb)->dest) != gnv_port)) return features & ~(NETIF_F_CSUM_MASK | NETIF_F_GSO_MASK); + } else if (l4_proto == IPPROTO_IPIP) { + /* IPIP tunnels are unknown to the device or at least unsupported natively, + * offloads for them can't be done trivially, so disable them for such skb. + */ + return features & ~(NETIF_F_CSUM_MASK | NETIF_F_GSO_MASK); } } --- linux-azure-5.8-5.8.0.orig/drivers/net/ethernet/qlogic/qede/qede_main.c +++ linux-azure-5.8-5.8.0/drivers/net/ethernet/qlogic/qede/qede_main.c @@ -827,7 +827,7 @@ NETIF_F_IP_CSUM | NETIF_F_IPV6_CSUM | NETIF_F_TSO | NETIF_F_TSO6 | NETIF_F_HW_TC; - if (!IS_VF(edev) && edev->dev_info.common.num_hwfns == 1) + if (edev->dev_info.common.b_arfs_capable) hw_features |= NETIF_F_NTUPLE; if (edev->dev_info.common.vxlan_enable || @@ -2278,7 +2278,7 @@ qede_vlan_mark_nonconfigured(edev); edev->ops->fastpath_stop(edev->cdev); - if (!IS_VF(edev) && edev->dev_info.common.num_hwfns == 1) { + if (edev->dev_info.common.b_arfs_capable) { qede_poll_for_freeing_arfs_filters(edev); qede_free_arfs(edev); } @@ -2345,10 +2345,9 @@ if (rc) goto err2; - if (!IS_VF(edev) && edev->dev_info.common.num_hwfns == 1) { - rc = qede_alloc_arfs(edev); - if (rc) - DP_NOTICE(edev, "aRFS memory allocation failed\n"); + if (qede_alloc_arfs(edev)) { + edev->ndev->features &= ~NETIF_F_NTUPLE; + edev->dev_info.common.b_arfs_capable = false; } qede_napi_add_enable(edev); --- linux-azure-5.8-5.8.0.orig/drivers/net/ethernet/qlogic/qlcnic/qlcnic_83xx_init.c +++ linux-azure-5.8-5.8.0/drivers/net/ethernet/qlogic/qlcnic/qlcnic_83xx_init.c @@ -2251,7 +2251,8 @@ /* Boot either flash image or firmware image from host file system */ if (qlcnic_load_fw_file == 1) { - if (qlcnic_83xx_load_fw_image_from_host(adapter)) + err = qlcnic_83xx_load_fw_image_from_host(adapter); + if (err) return err; } else { QLC_SHARED_REG_WR32(adapter, QLCNIC_FW_IMG_VALID, --- linux-azure-5.8-5.8.0.orig/drivers/net/ethernet/qlogic/qlcnic/qlcnic_main.c +++ linux-azure-5.8-5.8.0/drivers/net/ethernet/qlogic/qlcnic/qlcnic_main.c @@ -2509,6 +2509,7 @@ qlcnic_sriov_vf_register_map(ahw); break; default: + err = -EINVAL; goto err_out_free_hw_res; } --- linux-azure-5.8-5.8.0.orig/drivers/net/ethernet/qualcomm/emac/emac.c +++ linux-azure-5.8-5.8.0/drivers/net/ethernet/qualcomm/emac/emac.c @@ -474,13 +474,24 @@ ret = clk_prepare_enable(adpt->clk[EMAC_CLK_CFG_AHB]); if (ret) - return ret; + goto disable_clk_axi; ret = clk_set_rate(adpt->clk[EMAC_CLK_HIGH_SPEED], 19200000); if (ret) - return ret; + goto disable_clk_cfg_ahb; - return clk_prepare_enable(adpt->clk[EMAC_CLK_HIGH_SPEED]); + ret = clk_prepare_enable(adpt->clk[EMAC_CLK_HIGH_SPEED]); + if (ret) + goto disable_clk_cfg_ahb; + + return 0; + +disable_clk_cfg_ahb: + clk_disable_unprepare(adpt->clk[EMAC_CLK_CFG_AHB]); +disable_clk_axi: + clk_disable_unprepare(adpt->clk[EMAC_CLK_AXI]); + + return ret; } /* Enable clocks; needs emac_clks_phase1_init to be called before */ --- linux-azure-5.8-5.8.0.orig/drivers/net/ethernet/qualcomm/rmnet/rmnet_handlers.c +++ linux-azure-5.8-5.8.0/drivers/net/ethernet/qualcomm/rmnet/rmnet_handlers.c @@ -188,6 +188,11 @@ dev = skb->dev; port = rmnet_get_port_rcu(dev); + if (unlikely(!port)) { + atomic_long_inc(&skb->dev->rx_nohandler); + kfree_skb(skb); + goto done; + } switch (port->rmnet_mode) { case RMNET_EPMODE_VND: --- linux-azure-5.8-5.8.0.orig/drivers/net/ethernet/realtek/r8169_main.c +++ linux-azure-5.8-5.8.0/drivers/net/ethernet/realtek/r8169_main.c @@ -2113,11 +2113,18 @@ void r8169_apply_firmware(struct rtl8169_private *tp) { + int val; + /* TODO: release firmware if rtl_fw_write_firmware signals failure. */ if (tp->rtl_fw) { rtl_fw_write_firmware(tp, tp->rtl_fw); /* At least one firmware doesn't reset tp->ocp_base. */ tp->ocp_base = OCP_STD_PHY_BASE; + + /* PHY soft reset may still be in progress */ + phy_read_poll_timeout(tp->phydev, MII_BMCR, val, + !(val & BMCR_RESET), + 50000, 600000, true); } } @@ -2272,7 +2279,8 @@ } switch (tp->mac_version) { - case RTL_GIGA_MAC_VER_25 ... RTL_GIGA_MAC_VER_33: + case RTL_GIGA_MAC_VER_25 ... RTL_GIGA_MAC_VER_26: + case RTL_GIGA_MAC_VER_32 ... RTL_GIGA_MAC_VER_33: case RTL_GIGA_MAC_VER_37: case RTL_GIGA_MAC_VER_39: case RTL_GIGA_MAC_VER_43: @@ -2302,7 +2310,8 @@ static void rtl_pll_power_up(struct rtl8169_private *tp) { switch (tp->mac_version) { - case RTL_GIGA_MAC_VER_25 ... RTL_GIGA_MAC_VER_33: + case RTL_GIGA_MAC_VER_25 ... RTL_GIGA_MAC_VER_26: + case RTL_GIGA_MAC_VER_32 ... RTL_GIGA_MAC_VER_33: case RTL_GIGA_MAC_VER_37: case RTL_GIGA_MAC_VER_39: case RTL_GIGA_MAC_VER_43: @@ -2386,14 +2395,14 @@ static void r8168e_hw_jumbo_enable(struct rtl8169_private *tp) { - RTL_W8(tp, MaxTxPacketSize, 0x3f); + RTL_W8(tp, MaxTxPacketSize, 0x24); RTL_W8(tp, Config3, RTL_R8(tp, Config3) | Jumbo_En0); RTL_W8(tp, Config4, RTL_R8(tp, Config4) | 0x01); } static void r8168e_hw_jumbo_disable(struct rtl8169_private *tp) { - RTL_W8(tp, MaxTxPacketSize, 0x0c); + RTL_W8(tp, MaxTxPacketSize, 0x3f); RTL_W8(tp, Config3, RTL_R8(tp, Config3) & ~Jumbo_En0); RTL_W8(tp, Config4, RTL_R8(tp, Config4) & ~0x01); } @@ -2951,7 +2960,7 @@ { 0x08, 0x0001, 0x0002 }, { 0x09, 0x0000, 0x0080 }, { 0x19, 0x0000, 0x0224 }, - { 0x00, 0x0000, 0x0004 }, + { 0x00, 0x0000, 0x0008 }, { 0x0c, 0x3df0, 0x0200 }, }; @@ -2968,7 +2977,7 @@ { 0x06, 0x00c0, 0x0020 }, { 0x0f, 0xffff, 0x5200 }, { 0x19, 0x0000, 0x0224 }, - { 0x00, 0x0000, 0x0004 }, + { 0x00, 0x0000, 0x0008 }, { 0x0c, 0x3df0, 0x0200 }, }; @@ -4051,9 +4060,71 @@ return -EIO; } -static bool rtl_test_hw_pad_bug(struct rtl8169_private *tp, struct sk_buff *skb) +static bool rtl_skb_is_udp(struct sk_buff *skb) { - return skb->len < ETH_ZLEN && tp->mac_version == RTL_GIGA_MAC_VER_34; + int no = skb_network_offset(skb); + struct ipv6hdr *i6h, _i6h; + struct iphdr *ih, _ih; + + switch (vlan_get_protocol(skb)) { + case htons(ETH_P_IP): + ih = skb_header_pointer(skb, no, sizeof(_ih), &_ih); + return ih && ih->protocol == IPPROTO_UDP; + case htons(ETH_P_IPV6): + i6h = skb_header_pointer(skb, no, sizeof(_i6h), &_i6h); + return i6h && i6h->nexthdr == IPPROTO_UDP; + default: + return false; + } +} + +#define RTL_MIN_PATCH_LEN 47 + +/* see rtl8125_get_patch_pad_len() in r8125 vendor driver */ +static unsigned int rtl8125_quirk_udp_padto(struct rtl8169_private *tp, + struct sk_buff *skb) +{ + unsigned int padto = 0, len = skb->len; + + if (rtl_is_8125(tp) && len < 128 + RTL_MIN_PATCH_LEN && + rtl_skb_is_udp(skb) && skb_transport_header_was_set(skb)) { + unsigned int trans_data_len = skb_tail_pointer(skb) - + skb_transport_header(skb); + + if (trans_data_len >= offsetof(struct udphdr, len) && + trans_data_len < RTL_MIN_PATCH_LEN) { + u16 dest = ntohs(udp_hdr(skb)->dest); + + /* dest is a standard PTP port */ + if (dest == 319 || dest == 320) + padto = len + RTL_MIN_PATCH_LEN - trans_data_len; + } + + if (trans_data_len < sizeof(struct udphdr)) + padto = max_t(unsigned int, padto, + len + sizeof(struct udphdr) - trans_data_len); + } + + return padto; +} + +static unsigned int rtl_quirk_packet_padto(struct rtl8169_private *tp, + struct sk_buff *skb) +{ + unsigned int padto; + + padto = rtl8125_quirk_udp_padto(tp, skb); + + switch (tp->mac_version) { + case RTL_GIGA_MAC_VER_34: + case RTL_GIGA_MAC_VER_60: + case RTL_GIGA_MAC_VER_61: + padto = max_t(unsigned int, padto, ETH_ZLEN); + default: + break; + } + + return padto; } static void rtl8169_tso_csum_v1(struct sk_buff *skb, u32 *opts) @@ -4125,8 +4196,10 @@ opts[1] |= transport_offset << TCPHO_SHIFT; } else { - if (unlikely(rtl_test_hw_pad_bug(tp, skb))) - return !eth_skb_pad(skb); + unsigned int padto = rtl_quirk_packet_padto(tp, skb); + + /* skb_padto would free the skb on error */ + return !__skb_put_padto(skb, padto, false); } return true; @@ -4305,18 +4378,12 @@ rtl_chip_supports_csum_v2(tp)) features &= ~NETIF_F_ALL_TSO; } else if (skb->ip_summed == CHECKSUM_PARTIAL) { - if (skb->len < ETH_ZLEN) { - switch (tp->mac_version) { - case RTL_GIGA_MAC_VER_11: - case RTL_GIGA_MAC_VER_12: - case RTL_GIGA_MAC_VER_17: - case RTL_GIGA_MAC_VER_34: - features &= ~NETIF_F_CSUM_MASK; - break; - default: - break; - } - } + /* work around hw bug on some chip versions */ + if (skb->len < ETH_ZLEN) + features &= ~NETIF_F_CSUM_MASK; + + if (rtl_quirk_packet_padto(tp, skb)) + features &= ~NETIF_F_CSUM_MASK; if (transport_offset > TCPHO_MAX && rtl_chip_supports_csum_v2(tp)) @@ -4552,7 +4619,7 @@ } rtl_irq_disable(tp); - napi_schedule_irqoff(&tp->napi); + napi_schedule(&tp->napi); out: rtl_ack_events(tp, status); @@ -4666,9 +4733,9 @@ cancel_work_sync(&tp->wk.work); - phy_disconnect(tp->phydev); + free_irq(pci_irq_vector(pdev, 0), tp); - pci_free_irq(pdev, 0, tp); + phy_disconnect(tp->phydev); dma_free_coherent(&pdev->dev, R8169_RX_RING_BYTES, tp->RxDescArray, tp->RxPhyAddr); @@ -4719,8 +4786,8 @@ rtl_request_firmware(tp); - retval = pci_request_irq(pdev, 0, rtl8169_interrupt, NULL, tp, - dev->name); + retval = request_irq(pci_irq_vector(pdev, 0), rtl8169_interrupt, + IRQF_SHARED, dev->name, tp); if (retval < 0) goto err_release_fw_2; @@ -4752,7 +4819,7 @@ return retval; err_free_irq: - pci_free_irq(pdev, 0, tp); + free_irq(pci_irq_vector(pdev, 0), tp); err_release_fw_2: rtl_release_firmware(tp); rtl8169_rx_clear(tp); @@ -4864,6 +4931,10 @@ if (netif_running(tp->dev)) __rtl8169_resume(tp); + /* Reportedly at least Asus X453MA truncates packets otherwise */ + if (tp->mac_version == RTL_GIGA_MAC_VER_37) + rtl_init_rxcfg(tp); + return 0; } @@ -5281,8 +5352,7 @@ /* Disable ASPM completely as that cause random device stop working * problems as well as full system hangs for some PCIe devices users. */ - rc = pci_disable_link_state(pdev, PCIE_LINK_STATE_L0S | - PCIE_LINK_STATE_L1); + rc = pci_disable_link_state(pdev, PCIE_LINK_STATE_L1_1); tp->aspm_manageable = !rc; /* enable device (incl. PCI PM wakeup and hotplug setup) */ --- linux-azure-5.8-5.8.0.orig/drivers/net/ethernet/renesas/ravb_main.c +++ linux-azure-5.8-5.8.0/drivers/net/ethernet/renesas/ravb_main.c @@ -1747,12 +1747,16 @@ config.flags = 0; config.tx_type = priv->tstamp_tx_ctrl ? HWTSTAMP_TX_ON : HWTSTAMP_TX_OFF; - if (priv->tstamp_rx_ctrl & RAVB_RXTSTAMP_TYPE_V2_L2_EVENT) + switch (priv->tstamp_rx_ctrl & RAVB_RXTSTAMP_TYPE) { + case RAVB_RXTSTAMP_TYPE_V2_L2_EVENT: config.rx_filter = HWTSTAMP_FILTER_PTP_V2_L2_EVENT; - else if (priv->tstamp_rx_ctrl & RAVB_RXTSTAMP_TYPE_ALL) + break; + case RAVB_RXTSTAMP_TYPE_ALL: config.rx_filter = HWTSTAMP_FILTER_ALL; - else + break; + default: config.rx_filter = HWTSTAMP_FILTER_NONE; + } return copy_to_user(req->ifr_data, &config, sizeof(config)) ? -EFAULT : 0; --- linux-azure-5.8-5.8.0.orig/drivers/net/ethernet/renesas/sh_eth.c +++ linux-azure-5.8-5.8.0/drivers/net/ethernet/renesas/sh_eth.c @@ -2596,10 +2596,10 @@ /* Free all the skbuffs in the Rx queue and the DMA buffer. */ sh_eth_ring_free(ndev); - pm_runtime_put_sync(&mdp->pdev->dev); - mdp->is_opened = 0; + pm_runtime_put(&mdp->pdev->dev); + return 0; } --- linux-azure-5.8-5.8.0.orig/drivers/net/ethernet/sgi/ioc3-eth.c +++ linux-azure-5.8-5.8.0/drivers/net/ethernet/sgi/ioc3-eth.c @@ -951,7 +951,7 @@ dma_free_coherent(ip->dma_dev, RX_RING_SIZE, ip->rxr, ip->rxr_dma); if (ip->tx_ring) - dma_free_coherent(ip->dma_dev, TX_RING_SIZE, ip->tx_ring, + dma_free_coherent(ip->dma_dev, TX_RING_SIZE + SZ_16K - 1, ip->tx_ring, ip->txr_dma); out_free: free_netdev(dev); @@ -964,7 +964,7 @@ struct ioc3_private *ip = netdev_priv(dev); dma_free_coherent(ip->dma_dev, RX_RING_SIZE, ip->rxr, ip->rxr_dma); - dma_free_coherent(ip->dma_dev, TX_RING_SIZE, ip->tx_ring, ip->txr_dma); + dma_free_coherent(ip->dma_dev, TX_RING_SIZE + SZ_16K - 1, ip->tx_ring, ip->txr_dma); unregister_netdev(dev); del_timer_sync(&ip->ioc3_timer); --- linux-azure-5.8-5.8.0.orig/drivers/net/ethernet/socionext/netsec.c +++ linux-azure-5.8-5.8.0/drivers/net/ethernet/socionext/netsec.c @@ -6,6 +6,7 @@ #include #include #include +#include #include #include #include @@ -1836,6 +1837,14 @@ static int netsec_of_probe(struct platform_device *pdev, struct netsec_priv *priv, u32 *phy_addr) { + int err; + + err = of_get_phy_mode(pdev->dev.of_node, &priv->phy_interface); + if (err) { + dev_err(&pdev->dev, "missing required property 'phy-mode'\n"); + return err; + } + priv->phy_np = of_parse_phandle(pdev->dev.of_node, "phy-handle", 0); if (!priv->phy_np) { dev_err(&pdev->dev, "missing required property 'phy-handle'\n"); @@ -1862,6 +1871,14 @@ if (!IS_ENABLED(CONFIG_ACPI)) return -ENODEV; + /* ACPI systems are assumed to configure the PHY in firmware, so + * there is really no need to discover the PHY mode from the DSDT. + * Since firmware is known to exist in the field that configures the + * PHY correctly but passes the wrong mode string in the phy-mode + * device property, we have no choice but to ignore it. + */ + priv->phy_interface = PHY_INTERFACE_MODE_NA; + ret = device_property_read_u32(&pdev->dev, "phy-channel", phy_addr); if (ret) { dev_err(&pdev->dev, @@ -1998,13 +2015,6 @@ priv->msg_enable = NETIF_MSG_TX_ERR | NETIF_MSG_HW | NETIF_MSG_DRV | NETIF_MSG_LINK | NETIF_MSG_PROBE; - priv->phy_interface = device_get_phy_mode(&pdev->dev); - if ((int)priv->phy_interface < 0) { - dev_err(&pdev->dev, "missing required property 'phy-mode'\n"); - ret = -ENODEV; - goto free_ndev; - } - priv->ioaddr = devm_ioremap(&pdev->dev, mmio_res->start, resource_size(mmio_res)); if (!priv->ioaddr) { --- linux-azure-5.8-5.8.0.orig/drivers/net/ethernet/stmicro/stmmac/dwmac-imx.c +++ linux-azure-5.8-5.8.0/drivers/net/ethernet/stmicro/stmmac/dwmac-imx.c @@ -247,13 +247,7 @@ goto err_parse_dt; } - ret = dma_set_mask_and_coherent(&pdev->dev, - DMA_BIT_MASK(dwmac->ops->addr_width)); - if (ret) { - dev_err(&pdev->dev, "DMA mask set failed\n"); - goto err_dma_mask; - } - + plat_dat->addr64 = dwmac->ops->addr_width; plat_dat->init = imx_dwmac_init; plat_dat->exit = imx_dwmac_exit; plat_dat->fix_mac_speed = imx_dwmac_fix_speed; @@ -273,7 +267,6 @@ err_dwmac_init: err_drv_probe: imx_dwmac_exit(pdev, plat_dat->bsp_priv); -err_dma_mask: err_parse_dt: err_match_data: stmmac_remove_config_dt(pdev, plat_dat); --- linux-azure-5.8-5.8.0.orig/drivers/net/ethernet/stmicro/stmmac/dwmac-intel.c +++ linux-azure-5.8-5.8.0/drivers/net/ethernet/stmicro/stmmac/dwmac-intel.c @@ -235,6 +235,7 @@ int ret; int i; + plat->phy_addr = -1; plat->clk_csr = 5; plat->has_gmac = 0; plat->has_gmac4 = 1; @@ -338,7 +339,6 @@ struct plat_stmmacenet_data *plat) { plat->bus_id = 1; - plat->phy_addr = 0; plat->phy_interface = PHY_INTERFACE_MODE_SGMII; plat->serdes_powerup = intel_serdes_powerup; @@ -355,7 +355,6 @@ struct plat_stmmacenet_data *plat) { plat->bus_id = 1; - plat->phy_addr = 0; plat->phy_interface = PHY_INTERFACE_MODE_RGMII; return ehl_common_data(pdev, plat); @@ -369,7 +368,7 @@ struct plat_stmmacenet_data *plat) { plat->bus_id = 2; - plat->phy_addr = 1; + plat->addr64 = 32; return ehl_common_data(pdev, plat); } @@ -401,7 +400,7 @@ struct plat_stmmacenet_data *plat) { plat->bus_id = 3; - plat->phy_addr = 1; + plat->addr64 = 32; return ehl_common_data(pdev, plat); } @@ -443,7 +442,6 @@ struct plat_stmmacenet_data *plat) { plat->bus_id = 1; - plat->phy_addr = 0; plat->phy_interface = PHY_INTERFACE_MODE_SGMII; plat->serdes_powerup = intel_serdes_powerup; plat->serdes_powerdown = intel_serdes_powerdown; @@ -653,7 +651,6 @@ pci_free_irq_vectors(pdev); - clk_disable_unprepare(priv->plat->stmmac_clk); clk_unregister_fixed_rate(priv->plat->stmmac_clk); pcim_iounmap_regions(pdev, BIT(0)); @@ -712,6 +709,8 @@ #define PCI_DEVICE_ID_INTEL_EHL_PSE1_RGMII1G_ID 0x4bb0 #define PCI_DEVICE_ID_INTEL_EHL_PSE1_SGMII1G_ID 0x4bb1 #define PCI_DEVICE_ID_INTEL_EHL_PSE1_SGMII2G5_ID 0x4bb2 +#define PCI_DEVICE_ID_INTEL_TGLH_SGMII1G_0_ID 0x43ac +#define PCI_DEVICE_ID_INTEL_TGLH_SGMII1G_1_ID 0x43a2 #define PCI_DEVICE_ID_INTEL_TGL_SGMII1G_ID 0xa0ac static const struct pci_device_id intel_eth_pci_id_table[] = { @@ -726,6 +725,8 @@ { PCI_DEVICE_DATA(INTEL, EHL_PSE1_SGMII1G_ID, &ehl_pse1_sgmii1g_info) }, { PCI_DEVICE_DATA(INTEL, EHL_PSE1_SGMII2G5_ID, &ehl_pse1_sgmii1g_info) }, { PCI_DEVICE_DATA(INTEL, TGL_SGMII1G_ID, &tgl_sgmii1g_info) }, + { PCI_DEVICE_DATA(INTEL, TGLH_SGMII1G_0_ID, &tgl_sgmii1g_info) }, + { PCI_DEVICE_DATA(INTEL, TGLH_SGMII1G_1_ID, &tgl_sgmii1g_info) }, {} }; MODULE_DEVICE_TABLE(pci, intel_eth_pci_id_table); --- linux-azure-5.8-5.8.0.orig/drivers/net/ethernet/stmicro/stmmac/dwmac-ipq806x.c +++ linux-azure-5.8-5.8.0/drivers/net/ethernet/stmicro/stmmac/dwmac-ipq806x.c @@ -351,6 +351,7 @@ plat_dat->has_gmac = true; plat_dat->bsp_priv = gmac; plat_dat->fix_mac_speed = ipq806x_gmac_fix_mac_speed; + plat_dat->multicast_filter_bins = 0; err = stmmac_dvr_probe(&pdev->dev, plat_dat, &stmmac_res); if (err) --- linux-azure-5.8-5.8.0.orig/drivers/net/ethernet/stmicro/stmmac/dwmac-meson8b.c +++ linux-azure-5.8-5.8.0/drivers/net/ethernet/stmicro/stmmac/dwmac-meson8b.c @@ -30,7 +30,6 @@ #define PRG_ETH0_EXT_RMII_MODE 4 /* mux to choose between fclk_div2 (bit unset) and mpll2 (bit set) */ -#define PRG_ETH0_CLK_M250_SEL_SHIFT 4 #define PRG_ETH0_CLK_M250_SEL_MASK GENMASK(4, 4) /* TX clock delay in ns = "8ns / 4 * tx_dly_val" (where 8ns are exactly one @@ -170,8 +169,9 @@ } clk_configs->m250_mux.reg = dwmac->regs + PRG_ETH0; - clk_configs->m250_mux.shift = PRG_ETH0_CLK_M250_SEL_SHIFT; - clk_configs->m250_mux.mask = PRG_ETH0_CLK_M250_SEL_MASK; + clk_configs->m250_mux.shift = __ffs(PRG_ETH0_CLK_M250_SEL_MASK); + clk_configs->m250_mux.mask = PRG_ETH0_CLK_M250_SEL_MASK >> + clk_configs->m250_mux.shift; clk = meson8b_dwmac_register_clk(dwmac, "m250_sel", mux_parent_names, MUX_CLK_NUM_PARENTS, &clk_mux_ops, &clk_configs->m250_mux.hw); @@ -316,7 +316,7 @@ return -EINVAL; }; - if (rx_dly_config & PRG_ETH0_ADJ_ENABLE) { + if (delay_config & PRG_ETH0_ADJ_ENABLE) { if (!dwmac->timing_adj_clk) { dev_err(dwmac->dev, "The timing-adjustment clock is mandatory for the RX delay re-timing\n"); --- linux-azure-5.8-5.8.0.orig/drivers/net/ethernet/stmicro/stmmac/dwmac-sun8i.c +++ linux-azure-5.8-5.8.0/drivers/net/ethernet/stmicro/stmmac/dwmac-sun8i.c @@ -64,6 +64,7 @@ * @variant: reference to the current board variant * @regmap: regmap for using the syscon * @internal_phy_powered: Does the internal PHY is enabled + * @use_internal_phy: Is the internal PHY selected for use * @mux_handle: Internal pointer used by mdio-mux lib */ struct sunxi_priv_data { @@ -74,6 +75,7 @@ const struct emac_variant *variant; struct regmap_field *regmap_field; bool internal_phy_powered; + bool use_internal_phy; void *mux_handle; }; @@ -539,8 +541,11 @@ .dma_interrupt = sun8i_dwmac_dma_interrupt, }; +static int sun8i_dwmac_power_internal_phy(struct stmmac_priv *priv); + static int sun8i_dwmac_init(struct platform_device *pdev, void *priv) { + struct net_device *ndev = platform_get_drvdata(pdev); struct sunxi_priv_data *gmac = priv; int ret; @@ -554,13 +559,25 @@ ret = clk_prepare_enable(gmac->tx_clk); if (ret) { - if (gmac->regulator) - regulator_disable(gmac->regulator); dev_err(&pdev->dev, "Could not enable AHB clock\n"); - return ret; + goto err_disable_regulator; + } + + if (gmac->use_internal_phy) { + ret = sun8i_dwmac_power_internal_phy(netdev_priv(ndev)); + if (ret) + goto err_disable_clk; } return 0; + +err_disable_clk: + clk_disable_unprepare(gmac->tx_clk); +err_disable_regulator: + if (gmac->regulator) + regulator_disable(gmac->regulator); + + return ret; } static void sun8i_dwmac_core_init(struct mac_device_info *hw, @@ -831,7 +848,6 @@ struct sunxi_priv_data *gmac = priv->plat->bsp_priv; u32 reg, val; int ret = 0; - bool need_power_ephy = false; if (current_child ^ desired_child) { regmap_field_read(gmac->regmap_field, ®); @@ -839,13 +855,12 @@ case DWMAC_SUN8I_MDIO_MUX_INTERNAL_ID: dev_info(priv->device, "Switch mux to internal PHY"); val = (reg & ~H3_EPHY_MUX_MASK) | H3_EPHY_SELECT; - - need_power_ephy = true; + gmac->use_internal_phy = true; break; case DWMAC_SUN8I_MDIO_MUX_EXTERNAL_ID: dev_info(priv->device, "Switch mux to external PHY"); val = (reg & ~H3_EPHY_MUX_MASK) | H3_EPHY_SHUTDOWN; - need_power_ephy = false; + gmac->use_internal_phy = false; break; default: dev_err(priv->device, "Invalid child ID %x\n", @@ -853,7 +868,7 @@ return -EINVAL; } regmap_field_write(gmac->regmap_field, val); - if (need_power_ephy) { + if (gmac->use_internal_phy) { ret = sun8i_dwmac_power_internal_phy(priv); if (ret) return ret; @@ -883,22 +898,23 @@ return ret; } -static int sun8i_dwmac_set_syscon(struct stmmac_priv *priv) +static int sun8i_dwmac_set_syscon(struct device *dev, + struct plat_stmmacenet_data *plat) { - struct sunxi_priv_data *gmac = priv->plat->bsp_priv; - struct device_node *node = priv->device->of_node; + struct sunxi_priv_data *gmac = plat->bsp_priv; + struct device_node *node = dev->of_node; int ret; u32 reg, val; ret = regmap_field_read(gmac->regmap_field, &val); if (ret) { - dev_err(priv->device, "Fail to read from regmap field.\n"); + dev_err(dev, "Fail to read from regmap field.\n"); return ret; } reg = gmac->variant->default_syscon_value; if (reg != val) - dev_warn(priv->device, + dev_warn(dev, "Current syscon value is not the default %x (expect %x)\n", val, reg); @@ -911,9 +927,9 @@ /* Force EPHY xtal frequency to 24MHz. */ reg |= H3_EPHY_CLK_SEL; - ret = of_mdio_parse_addr(priv->device, priv->plat->phy_node); + ret = of_mdio_parse_addr(dev, plat->phy_node); if (ret < 0) { - dev_err(priv->device, "Could not parse MDIO addr\n"); + dev_err(dev, "Could not parse MDIO addr\n"); return ret; } /* of_mdio_parse_addr returns a valid (0 ~ 31) PHY @@ -929,17 +945,17 @@ if (!of_property_read_u32(node, "allwinner,tx-delay-ps", &val)) { if (val % 100) { - dev_err(priv->device, "tx-delay must be a multiple of 100\n"); + dev_err(dev, "tx-delay must be a multiple of 100\n"); return -EINVAL; } val /= 100; - dev_dbg(priv->device, "set tx-delay to %x\n", val); + dev_dbg(dev, "set tx-delay to %x\n", val); if (val <= gmac->variant->tx_delay_max) { reg &= ~(gmac->variant->tx_delay_max << SYSCON_ETXDC_SHIFT); reg |= (val << SYSCON_ETXDC_SHIFT); } else { - dev_err(priv->device, "Invalid TX clock delay: %d\n", + dev_err(dev, "Invalid TX clock delay: %d\n", val); return -EINVAL; } @@ -947,17 +963,17 @@ if (!of_property_read_u32(node, "allwinner,rx-delay-ps", &val)) { if (val % 100) { - dev_err(priv->device, "rx-delay must be a multiple of 100\n"); + dev_err(dev, "rx-delay must be a multiple of 100\n"); return -EINVAL; } val /= 100; - dev_dbg(priv->device, "set rx-delay to %x\n", val); + dev_dbg(dev, "set rx-delay to %x\n", val); if (val <= gmac->variant->rx_delay_max) { reg &= ~(gmac->variant->rx_delay_max << SYSCON_ERXDC_SHIFT); reg |= (val << SYSCON_ERXDC_SHIFT); } else { - dev_err(priv->device, "Invalid RX clock delay: %d\n", + dev_err(dev, "Invalid RX clock delay: %d\n", val); return -EINVAL; } @@ -968,7 +984,7 @@ if (gmac->variant->support_rmii) reg &= ~SYSCON_RMII_EN; - switch (priv->plat->interface) { + switch (plat->interface) { case PHY_INTERFACE_MODE_MII: /* default */ break; @@ -982,8 +998,8 @@ reg |= SYSCON_RMII_EN | SYSCON_ETCS_EXT_GMII; break; default: - dev_err(priv->device, "Unsupported interface mode: %s", - phy_modes(priv->plat->interface)); + dev_err(dev, "Unsupported interface mode: %s", + phy_modes(plat->interface)); return -EINVAL; } @@ -1004,17 +1020,10 @@ struct sunxi_priv_data *gmac = priv; if (gmac->variant->soc_has_internal_phy) { - /* sun8i_dwmac_exit could be called with mdiomux uninit */ - if (gmac->mux_handle) - mdio_mux_uninit(gmac->mux_handle); if (gmac->internal_phy_powered) sun8i_dwmac_unpower_internal_phy(gmac); } - sun8i_dwmac_unset_syscon(gmac); - - reset_control_put(gmac->rst_ephy); - clk_disable_unprepare(gmac->tx_clk); if (gmac->regulator) @@ -1049,16 +1058,11 @@ { struct mac_device_info *mac; struct stmmac_priv *priv = ppriv; - int ret; mac = devm_kzalloc(priv->device, sizeof(*mac), GFP_KERNEL); if (!mac) return NULL; - ret = sun8i_dwmac_set_syscon(priv); - if (ret) - return NULL; - mac->pcsr = priv->ioaddr; mac->mac = &sun8i_dwmac_ops; mac->dma = &sun8i_dwmac_dma_ops; @@ -1134,10 +1138,6 @@ if (ret) return ret; - plat_dat = stmmac_probe_config_dt(pdev, &stmmac_res.mac); - if (IS_ERR(plat_dat)) - return PTR_ERR(plat_dat); - gmac = devm_kzalloc(dev, sizeof(*gmac), GFP_KERNEL); if (!gmac) return -ENOMEM; @@ -1201,11 +1201,15 @@ ret = of_get_phy_mode(dev->of_node, &interface); if (ret) return -EINVAL; - plat_dat->interface = interface; + + plat_dat = stmmac_probe_config_dt(pdev, &stmmac_res.mac); + if (IS_ERR(plat_dat)) + return PTR_ERR(plat_dat); /* platform data specifying hardware features and callbacks. * hardware features were copied from Allwinner drivers. */ + plat_dat->interface = interface; plat_dat->rx_coe = STMMAC_RX_COE_TYPE2; plat_dat->tx_coe = 1; plat_dat->has_sun8i = true; @@ -1214,9 +1218,13 @@ plat_dat->exit = sun8i_dwmac_exit; plat_dat->setup = sun8i_dwmac_setup; + ret = sun8i_dwmac_set_syscon(&pdev->dev, plat_dat); + if (ret) + goto dwmac_deconfig; + ret = sun8i_dwmac_init(pdev, plat_dat->bsp_priv); if (ret) - return ret; + goto dwmac_syscon; ret = stmmac_dvr_probe(&pdev->dev, plat_dat, &stmmac_res); if (ret) @@ -1230,7 +1238,7 @@ if (gmac->variant->soc_has_internal_phy) { ret = get_ephy_nodes(priv); if (ret) - goto dwmac_exit; + goto dwmac_remove; ret = sun8i_dwmac_register_mdio_mux(priv); if (ret) { dev_err(&pdev->dev, "Failed to register mux\n"); @@ -1239,15 +1247,42 @@ } else { ret = sun8i_dwmac_reset(priv); if (ret) - goto dwmac_exit; + goto dwmac_remove; } return ret; dwmac_mux: - sun8i_dwmac_unset_syscon(gmac); + reset_control_put(gmac->rst_ephy); + clk_put(gmac->ephy_clk); +dwmac_remove: + stmmac_dvr_remove(&pdev->dev); dwmac_exit: + sun8i_dwmac_exit(pdev, gmac); +dwmac_syscon: + sun8i_dwmac_unset_syscon(gmac); +dwmac_deconfig: + stmmac_remove_config_dt(pdev, plat_dat); + + return ret; +} + +static int sun8i_dwmac_remove(struct platform_device *pdev) +{ + struct net_device *ndev = platform_get_drvdata(pdev); + struct stmmac_priv *priv = netdev_priv(ndev); + struct sunxi_priv_data *gmac = priv->plat->bsp_priv; + + if (gmac->variant->soc_has_internal_phy) { + mdio_mux_uninit(gmac->mux_handle); + sun8i_dwmac_unpower_internal_phy(gmac); + reset_control_put(gmac->rst_ephy); + clk_put(gmac->ephy_clk); + } + stmmac_pltfr_remove(pdev); -return ret; + sun8i_dwmac_unset_syscon(gmac); + + return 0; } static const struct of_device_id sun8i_dwmac_match[] = { @@ -1269,7 +1304,7 @@ static struct platform_driver sun8i_dwmac_driver = { .probe = sun8i_dwmac_probe, - .remove = stmmac_pltfr_remove, + .remove = sun8i_dwmac_remove, .driver = { .name = "dwmac-sun8i", .pm = &stmmac_pltfr_pm_ops, --- linux-azure-5.8-5.8.0.orig/drivers/net/ethernet/stmicro/stmmac/dwmac1000_core.c +++ linux-azure-5.8-5.8.0/drivers/net/ethernet/stmicro/stmmac/dwmac1000_core.c @@ -164,6 +164,9 @@ value = GMAC_FRAME_FILTER_PR | GMAC_FRAME_FILTER_PCF; } else if (dev->flags & IFF_ALLMULTI) { value = GMAC_FRAME_FILTER_PM; /* pass all multi */ + } else if (!netdev_mc_empty(dev) && (mcbitslog2 == 0)) { + /* Fall back to all multicast if we've no filter */ + value = GMAC_FRAME_FILTER_PM; } else if (!netdev_mc_empty(dev)) { struct netdev_hw_addr *ha; --- linux-azure-5.8-5.8.0.orig/drivers/net/ethernet/stmicro/stmmac/dwmac4_core.c +++ linux-azure-5.8-5.8.0/drivers/net/ethernet/stmicro/stmmac/dwmac4_core.c @@ -1160,7 +1160,6 @@ .pcs_get_adv_lp = dwmac4_get_adv_lp, .debug = dwmac4_debug, .set_filter = dwmac4_set_filter, - .flex_pps_config = dwmac5_flex_pps_config, .set_mac_loopback = dwmac4_set_mac_loopback, .update_vlan_hash = dwmac4_update_vlan_hash, .sarc_configure = dwmac4_sarc_configure, @@ -1202,6 +1201,7 @@ .pcs_get_adv_lp = dwmac4_get_adv_lp, .debug = dwmac4_debug, .set_filter = dwmac4_set_filter, + .flex_pps_config = dwmac5_flex_pps_config, .set_mac_loopback = dwmac4_set_mac_loopback, .update_vlan_hash = dwmac4_update_vlan_hash, .sarc_configure = dwmac4_sarc_configure, --- linux-azure-5.8-5.8.0.orig/drivers/net/ethernet/stmicro/stmmac/dwmac4_lib.c +++ linux-azure-5.8-5.8.0/drivers/net/ethernet/stmicro/stmmac/dwmac4_lib.c @@ -22,7 +22,7 @@ return readl_poll_timeout(ioaddr + DMA_BUS_MODE, value, !(value & DMA_BUS_MODE_SFT_RESET), - 10000, 100000); + 10000, 1000000); } void dwmac4_set_rx_tail_ptr(void __iomem *ioaddr, u32 tail_ptr, u32 chan) --- linux-azure-5.8-5.8.0.orig/drivers/net/ethernet/stmicro/stmmac/dwmac5.c +++ linux-azure-5.8-5.8.0/drivers/net/ethernet/stmicro/stmmac/dwmac5.c @@ -572,68 +572,24 @@ int dwmac5_est_configure(void __iomem *ioaddr, struct stmmac_est *cfg, unsigned int ptp_rate) { - u32 speed, total_offset, offset, ctrl, ctr_low; - u32 extcfg = readl(ioaddr + GMAC_EXT_CONFIG); - u32 mac_cfg = readl(ioaddr + GMAC_CONFIG); int i, ret = 0x0; - u64 total_ctr; - - if (extcfg & GMAC_CONFIG_EIPG_EN) { - offset = (extcfg & GMAC_CONFIG_EIPG) >> GMAC_CONFIG_EIPG_SHIFT; - offset = 104 + (offset * 8); - } else { - offset = (mac_cfg & GMAC_CONFIG_IPG) >> GMAC_CONFIG_IPG_SHIFT; - offset = 96 - (offset * 8); - } - - speed = mac_cfg & (GMAC_CONFIG_PS | GMAC_CONFIG_FES); - speed = speed >> GMAC_CONFIG_FES_SHIFT; - - switch (speed) { - case 0x0: - offset = offset * 1000; /* 1G */ - break; - case 0x1: - offset = offset * 400; /* 2.5G */ - break; - case 0x2: - offset = offset * 100000; /* 10M */ - break; - case 0x3: - offset = offset * 10000; /* 100M */ - break; - default: - return -EINVAL; - } - - offset = offset / 1000; + u32 ctrl; ret |= dwmac5_est_write(ioaddr, BTR_LOW, cfg->btr[0], false); ret |= dwmac5_est_write(ioaddr, BTR_HIGH, cfg->btr[1], false); ret |= dwmac5_est_write(ioaddr, TER, cfg->ter, false); ret |= dwmac5_est_write(ioaddr, LLR, cfg->gcl_size, false); + ret |= dwmac5_est_write(ioaddr, CTR_LOW, cfg->ctr[0], false); + ret |= dwmac5_est_write(ioaddr, CTR_HIGH, cfg->ctr[1], false); if (ret) return ret; - total_offset = 0; for (i = 0; i < cfg->gcl_size; i++) { - ret = dwmac5_est_write(ioaddr, i, cfg->gcl[i] + offset, true); + ret = dwmac5_est_write(ioaddr, i, cfg->gcl[i], true); if (ret) return ret; - - total_offset += offset; } - total_ctr = cfg->ctr[0] + cfg->ctr[1] * 1000000000ULL; - total_ctr += total_offset; - - ctr_low = do_div(total_ctr, 1000000000); - - ret |= dwmac5_est_write(ioaddr, CTR_LOW, ctr_low, false); - ret |= dwmac5_est_write(ioaddr, CTR_HIGH, total_ctr, false); - if (ret) - return ret; - ctrl = readl(ioaddr + MTL_EST_CONTROL); ctrl &= ~PTOV; ctrl |= ((1000000000 / ptp_rate) * 6) << PTOV_SHIFT; --- linux-azure-5.8-5.8.0.orig/drivers/net/ethernet/stmicro/stmmac/dwmac_lib.c +++ linux-azure-5.8-5.8.0/drivers/net/ethernet/stmicro/stmmac/dwmac_lib.c @@ -23,7 +23,7 @@ return readl_poll_timeout(ioaddr + DMA_BUS_MODE, value, !(value & DMA_BUS_MODE_SFT_RESET), - 10000, 100000); + 10000, 200000); } /* CSR1 enables the transmit DMA to check for new descriptor */ --- linux-azure-5.8-5.8.0.orig/drivers/net/ethernet/stmicro/stmmac/stmmac.h +++ linux-azure-5.8-5.8.0/drivers/net/ethernet/stmicro/stmmac/stmmac.h @@ -203,6 +203,8 @@ int eee_enabled; int eee_active; int tx_lpi_timer; + int tx_lpi_enabled; + int eee_tw_timer; unsigned int mode; unsigned int chain_mode; int extend_desc; --- linux-azure-5.8-5.8.0.orig/drivers/net/ethernet/stmicro/stmmac/stmmac_ethtool.c +++ linux-azure-5.8-5.8.0/drivers/net/ethernet/stmicro/stmmac/stmmac_ethtool.c @@ -652,6 +652,7 @@ edata->eee_enabled = priv->eee_enabled; edata->eee_active = priv->eee_active; edata->tx_lpi_timer = priv->tx_lpi_timer; + edata->tx_lpi_enabled = priv->tx_lpi_enabled; return phylink_ethtool_get_eee(priv->phylink, edata); } @@ -662,24 +663,26 @@ struct stmmac_priv *priv = netdev_priv(dev); int ret; - if (!edata->eee_enabled) { + if (!priv->dma_cap.eee) + return -EOPNOTSUPP; + + if (priv->tx_lpi_enabled != edata->tx_lpi_enabled) + netdev_warn(priv->dev, + "Setting EEE tx-lpi is not supported\n"); + + if (!edata->eee_enabled) stmmac_disable_eee_mode(priv); - } else { - /* We are asking for enabling the EEE but it is safe - * to verify all by invoking the eee_init function. - * In case of failure it will return an error. - */ - edata->eee_enabled = stmmac_eee_init(priv); - if (!edata->eee_enabled) - return -EOPNOTSUPP; - } ret = phylink_ethtool_set_eee(priv->phylink, edata); if (ret) return ret; - priv->eee_enabled = edata->eee_enabled; - priv->tx_lpi_timer = edata->tx_lpi_timer; + if (edata->eee_enabled && + priv->tx_lpi_timer != edata->tx_lpi_timer) { + priv->tx_lpi_timer = edata->tx_lpi_timer; + stmmac_eee_init(priv); + } + return 0; } --- linux-azure-5.8-5.8.0.orig/drivers/net/ethernet/stmicro/stmmac/stmmac_main.c +++ linux-azure-5.8-5.8.0/drivers/net/ethernet/stmicro/stmmac/stmmac_main.c @@ -94,7 +94,7 @@ static int eee_timer = STMMAC_DEFAULT_LPI_TIMER; module_param(eee_timer, int, 0644); MODULE_PARM_DESC(eee_timer, "LPI tx expiration time in msec"); -#define STMMAC_LPI_T(x) (jiffies + msecs_to_jiffies(x)) +#define STMMAC_LPI_T(x) (jiffies + usecs_to_jiffies(x)) /* By default the driver will use the ring mode to manage tx and rx descriptors, * but allow user to force to use the chain instead of the ring @@ -176,32 +176,6 @@ } } -/** - * stmmac_stop_all_queues - Stop all queues - * @priv: driver private structure - */ -static void stmmac_stop_all_queues(struct stmmac_priv *priv) -{ - u32 tx_queues_cnt = priv->plat->tx_queues_to_use; - u32 queue; - - for (queue = 0; queue < tx_queues_cnt; queue++) - netif_tx_stop_queue(netdev_get_tx_queue(priv->dev, queue)); -} - -/** - * stmmac_start_all_queues - Start all queues - * @priv: driver private structure - */ -static void stmmac_start_all_queues(struct stmmac_priv *priv) -{ - u32 tx_queues_cnt = priv->plat->tx_queues_to_use; - u32 queue; - - for (queue = 0; queue < tx_queues_cnt; queue++) - netif_tx_start_queue(netdev_get_tx_queue(priv->dev, queue)); -} - static void stmmac_service_event_schedule(struct stmmac_priv *priv) { if (!test_bit(STMMAC_DOWN, &priv->state) && @@ -370,7 +344,7 @@ struct stmmac_priv *priv = from_timer(priv, t, eee_ctrl_timer); stmmac_enable_eee_mode(priv); - mod_timer(&priv->eee_ctrl_timer, STMMAC_LPI_T(eee_timer)); + mod_timer(&priv->eee_ctrl_timer, STMMAC_LPI_T(priv->tx_lpi_timer)); } /** @@ -383,7 +357,7 @@ */ bool stmmac_eee_init(struct stmmac_priv *priv) { - int tx_lpi_timer = priv->tx_lpi_timer; + int eee_tw_timer = priv->eee_tw_timer; /* Using PCS we cannot dial with the phy registers at this stage * so we do not support extra feature like EEE. @@ -403,7 +377,7 @@ if (priv->eee_enabled) { netdev_dbg(priv->dev, "disable EEE\n"); del_timer_sync(&priv->eee_ctrl_timer); - stmmac_set_eee_timer(priv, priv->hw, 0, tx_lpi_timer); + stmmac_set_eee_timer(priv, priv->hw, 0, eee_tw_timer); } mutex_unlock(&priv->lock); return false; @@ -411,11 +385,12 @@ if (priv->eee_active && !priv->eee_enabled) { timer_setup(&priv->eee_ctrl_timer, stmmac_eee_ctrl_timer, 0); - mod_timer(&priv->eee_ctrl_timer, STMMAC_LPI_T(eee_timer)); stmmac_set_eee_timer(priv, priv->hw, STMMAC_DEFAULT_LIT_LS, - tx_lpi_timer); + eee_tw_timer); } + mod_timer(&priv->eee_ctrl_timer, STMMAC_LPI_T(priv->tx_lpi_timer)); + mutex_unlock(&priv->lock); netdev_dbg(priv->dev, "Energy-Efficient Ethernet initialized\n"); return true; @@ -930,6 +905,7 @@ stmmac_mac_set(priv, priv->ioaddr, false); priv->eee_active = false; + priv->tx_lpi_enabled = false; stmmac_eee_init(priv); stmmac_set_eee_pls(priv, priv->hw, false); } @@ -1027,6 +1003,7 @@ if (phy && priv->dma_cap.eee) { priv->eee_active = phy_init_eee(phy, 1) >= 0; priv->eee_enabled = stmmac_eee_init(priv); + priv->tx_lpi_enabled = priv->eee_enabled; stmmac_set_eee_pls(priv, priv->hw, true); } } @@ -1549,6 +1526,19 @@ } /** + * stmmac_free_tx_skbufs - free TX skb buffers + * @priv: private structure + */ +static void stmmac_free_tx_skbufs(struct stmmac_priv *priv) +{ + u32 tx_queue_cnt = priv->plat->tx_queues_to_use; + u32 queue; + + for (queue = 0; queue < tx_queue_cnt; queue++) + dma_free_tx_skbufs(priv, queue); +} + +/** * free_dma_rx_desc_resources - free RX dma desc resources * @priv: private structure */ @@ -2057,7 +2047,7 @@ if ((priv->eee_enabled) && (!priv->tx_path_in_lpi_mode)) { stmmac_enable_eee_mode(priv); - mod_timer(&priv->eee_ctrl_timer, STMMAC_LPI_T(eee_timer)); + mod_timer(&priv->eee_ctrl_timer, STMMAC_LPI_T(priv->tx_lpi_timer)); } /* We still have pending packets, let's call for a new scheduling */ @@ -2156,7 +2146,7 @@ spin_lock_irqsave(&ch->lock, flags); stmmac_disable_dma_irq(priv, priv->ioaddr, chan, 1, 0); spin_unlock_irqrestore(&ch->lock, flags); - __napi_schedule_irqoff(&ch->rx_napi); + __napi_schedule(&ch->rx_napi); } } @@ -2165,7 +2155,7 @@ spin_lock_irqsave(&ch->lock, flags); stmmac_disable_dma_irq(priv, priv->ioaddr, chan, 0, 1); spin_unlock_irqrestore(&ch->lock, flags); - __napi_schedule_irqoff(&ch->tx_napi); + __napi_schedule(&ch->tx_napi); } } @@ -2690,7 +2680,11 @@ netdev_warn(priv->dev, "PTP init failed\n"); } - priv->tx_lpi_timer = STMMAC_DEFAULT_TWT_LS; + priv->eee_tw_timer = STMMAC_DEFAULT_TWT_LS; + + /* Convert the timer from msec to usec */ + if (!priv->tx_lpi_timer) + priv->tx_lpi_timer = eee_timer * 1000; if (priv->use_riwt) { if (!priv->rx_riwt) @@ -2729,6 +2723,10 @@ stmmac_enable_tbs(priv, priv->ioaddr, enable, chan); } + /* Configure real RX and TX queues */ + netif_set_real_num_rx_queues(dev, priv->plat->rx_queues_to_use); + netif_set_real_num_tx_queues(dev, priv->plat->tx_queues_to_use); + /* Start the ball rolling... */ stmmac_start_all_dma(priv); @@ -2855,7 +2853,7 @@ } stmmac_enable_all_queues(priv); - stmmac_start_all_queues(priv); + netif_tx_start_all_queues(priv->dev); return 0; @@ -2889,15 +2887,10 @@ struct stmmac_priv *priv = netdev_priv(dev); u32 chan; - if (priv->eee_enabled) - del_timer_sync(&priv->eee_ctrl_timer); - /* Stop and disconnect the PHY */ phylink_stop(priv->phylink); phylink_disconnect_phy(priv->phylink); - stmmac_stop_all_queues(priv); - stmmac_disable_all_queues(priv); for (chan = 0; chan < priv->plat->tx_queues_to_use; chan++) @@ -2910,6 +2903,11 @@ if (priv->lpi_irq > 0) free_irq(priv->lpi_irq, dev); + if (priv->eee_enabled) { + priv->tx_path_in_lpi_mode = false; + del_timer_sync(&priv->eee_ctrl_timer); + } + /* Stop TX/RX DMA and clear the descriptors */ stmmac_stop_all_dma(priv); @@ -3971,6 +3969,7 @@ { struct stmmac_priv *priv = netdev_priv(dev); int txfifosz = priv->plat->tx_fifo_size; + const int mtu = new_mtu; if (txfifosz == 0) txfifosz = priv->dma_cap.tx_fifo_size; @@ -3988,7 +3987,7 @@ if ((txfifosz < new_mtu) || (new_mtu > BUF_SIZE_16KiB)) return -EINVAL; - dev->mtu = new_mtu; + dev->mtu = mtu; netdev_update_features(dev); @@ -4812,10 +4811,6 @@ stmmac_check_ether_addr(priv); - /* Configure real RX and TX queues */ - netif_set_real_num_rx_queues(ndev, priv->plat->rx_queues_to_use); - netif_set_real_num_tx_queues(ndev, priv->plat->tx_queues_to_use); - ndev->netdev_ops = &stmmac_netdev_ops; ndev->hw_features = NETIF_F_SG | NETIF_F_IP_CSUM | NETIF_F_IPV6_CSUM | @@ -4840,6 +4835,14 @@ dev_info(priv->device, "SPH feature enabled\n"); } + /* The current IP register MAC_HW_Feature1[ADDR64] only define + * 32/40/64 bit width, but some SOC support others like i.MX8MP + * support 34 bits but it map to 40 bits width in MAC_HW_Feature1[ADDR64]. + * So overwrite dma_cap.addr64 according to HW real design. + */ + if (priv->plat->addr64) + priv->dma_cap.addr64 = priv->plat->addr64; + if (priv->dma_cap.addr64) { ret = dma_set_mask_and_coherent(device, DMA_BIT_MASK(priv->dma_cap.addr64)); @@ -5071,13 +5074,17 @@ mutex_lock(&priv->lock); netif_device_detach(ndev); - stmmac_stop_all_queues(priv); stmmac_disable_all_queues(priv); for (chan = 0; chan < priv->plat->tx_queues_to_use; chan++) del_timer_sync(&priv->tx_queue[chan].txtimer); + if (priv->eee_enabled) { + priv->tx_path_in_lpi_mode = false; + del_timer_sync(&priv->eee_ctrl_timer); + } + /* Stop TX/RX DMA */ stmmac_stop_all_dma(priv); @@ -5182,10 +5189,18 @@ return ret; } + if (!device_may_wakeup(priv->device)) { + rtnl_lock(); + phylink_start(priv->phylink); + rtnl_unlock(); + } + + rtnl_lock(); mutex_lock(&priv->lock); stmmac_reset_queues_param(priv); + stmmac_free_tx_skbufs(priv); stmmac_clear_descriptors(priv); stmmac_hw_setup(ndev, false); @@ -5196,15 +5211,8 @@ stmmac_enable_all_queues(priv); - stmmac_start_all_queues(priv); - mutex_unlock(&priv->lock); - - if (!device_may_wakeup(priv->device)) { - rtnl_lock(); - phylink_start(priv->phylink); - rtnl_unlock(); - } + rtnl_unlock(); phylink_mac_change(priv->phylink, true); --- linux-azure-5.8-5.8.0.orig/drivers/net/ethernet/stmicro/stmmac/stmmac_tc.c +++ linux-azure-5.8-5.8.0/drivers/net/ethernet/stmicro/stmmac/stmmac_tc.c @@ -322,6 +322,32 @@ if (!priv->dma_cap.av) return -EOPNOTSUPP; + /* Port Transmit Rate and Speed Divider */ + switch (priv->speed) { + case SPEED_10000: + ptr = 32; + speed_div = 10000000; + break; + case SPEED_5000: + ptr = 32; + speed_div = 5000000; + break; + case SPEED_2500: + ptr = 8; + speed_div = 2500000; + break; + case SPEED_1000: + ptr = 8; + speed_div = 1000000; + break; + case SPEED_100: + ptr = 4; + speed_div = 100000; + break; + default: + return -EOPNOTSUPP; + } + mode_to_use = priv->plat->tx_queues_cfg[queue].mode_to_use; if (mode_to_use == MTL_QUEUE_DCB && qopt->enable) { ret = stmmac_dma_qmode(priv, priv->ioaddr, queue, MTL_QUEUE_AVB); @@ -330,12 +356,13 @@ priv->plat->tx_queues_cfg[queue].mode_to_use = MTL_QUEUE_AVB; } else if (!qopt->enable) { - return stmmac_dma_qmode(priv, priv->ioaddr, queue, MTL_QUEUE_DCB); - } + ret = stmmac_dma_qmode(priv, priv->ioaddr, queue, + MTL_QUEUE_DCB); + if (ret) + return ret; - /* Port Transmit Rate and Speed Divider */ - ptr = (priv->speed == SPEED_100) ? 4 : 8; - speed_div = (priv->speed == SPEED_100) ? 100000 : 1000000; + priv->plat->tx_queues_cfg[queue].mode_to_use = MTL_QUEUE_DCB; + } /* Final adjustments for HW */ value = div_s64(qopt->idleslope * 1024ll * ptr, speed_div); @@ -605,7 +632,8 @@ { u32 size, wid = priv->dma_cap.estwid, dep = priv->dma_cap.estdep; struct plat_stmmacenet_data *plat = priv->plat; - struct timespec64 time; + struct timespec64 time, current_time; + ktime_t current_time_ns; bool fpe = false; int i, ret = 0; u64 ctr; @@ -700,7 +728,22 @@ } /* Adjust for real system time */ - time = ktime_to_timespec64(qopt->base_time); + priv->ptp_clock_ops.gettime64(&priv->ptp_clock_ops, ¤t_time); + current_time_ns = timespec64_to_ktime(current_time); + if (ktime_after(qopt->base_time, current_time_ns)) { + time = ktime_to_timespec64(qopt->base_time); + } else { + ktime_t base_time; + s64 n; + + n = div64_s64(ktime_sub_ns(current_time_ns, qopt->base_time), + qopt->cycle_time); + base_time = ktime_add_ns(qopt->base_time, + (n + 1) * qopt->cycle_time); + + time = ktime_to_timespec64(base_time); + } + priv->plat->est->btr[0] = (u32)time.tv_nsec; priv->plat->est->btr[1] = (u32)time.tv_sec; --- linux-azure-5.8-5.8.0.orig/drivers/net/ethernet/ti/am65-cpsw-nuss.c +++ linux-azure-5.8-5.8.0/drivers/net/ethernet/ti/am65-cpsw-nuss.c @@ -172,6 +172,8 @@ if (phy->speed == 10 && phy_interface_is_rgmii(phy)) /* Can be used with in band mode only */ mac_control |= CPSW_SL_CTL_EXT_EN; + if (phy->speed == 100 && phy->interface == PHY_INTERFACE_MODE_RMII) + mac_control |= CPSW_SL_CTL_IFCTL_A; if (phy->duplex) mac_control |= CPSW_SL_CTL_FULLDUPLEX; @@ -223,6 +225,9 @@ u32 port_mask, unreg_mcast = 0; int ret; + if (!netif_running(ndev) || !vid) + return 0; + ret = pm_runtime_get_sync(common->dev); if (ret < 0) { pm_runtime_put_noidle(common->dev); @@ -246,6 +251,9 @@ struct am65_cpsw_common *common = am65_ndev_to_common(ndev); int ret; + if (!netif_running(ndev) || !vid) + return 0; + ret = pm_runtime_get_sync(common->dev); if (ret < 0) { pm_runtime_put_noidle(common->dev); @@ -571,6 +579,16 @@ return 0; } +static int cpsw_restore_vlans(struct net_device *vdev, int vid, void *arg) +{ + struct am65_cpsw_port *port = arg; + + if (!vdev) + return 0; + + return am65_cpsw_nuss_ndo_slave_add_vid(port->ndev, 0, vid); +} + static int am65_cpsw_nuss_ndo_slave_open(struct net_device *ndev) { struct am65_cpsw_common *common = am65_ndev_to_common(ndev); @@ -644,6 +662,9 @@ } } + /* restore vlan configurations */ + vlan_for_each(ndev, cpsw_restore_vlans, port); + phy_attached_info(port->slave.phy); phy_start(port->slave.phy); --- linux-azure-5.8-5.8.0.orig/drivers/net/ethernet/ti/am65-cpts.c +++ linux-azure-5.8-5.8.0/drivers/net/ethernet/ti/am65-cpts.c @@ -1016,8 +1016,7 @@ if (IS_ERR_OR_NULL(cpts->ptp_clock)) { dev_err(dev, "Failed to register ptp clk %ld\n", PTR_ERR(cpts->ptp_clock)); - if (!cpts->ptp_clock) - ret = -ENODEV; + ret = cpts->ptp_clock ? PTR_ERR(cpts->ptp_clock) : -ENODEV; goto refclk_disable; } cpts->phc_index = ptp_clock_index(cpts->ptp_clock); --- linux-azure-5.8-5.8.0.orig/drivers/net/ethernet/ti/cpsw.c +++ linux-azure-5.8-5.8.0/drivers/net/ethernet/ti/cpsw.c @@ -838,9 +838,12 @@ if (ret < 0) goto err_cleanup; - if (cpts_register(cpsw->cpts)) - dev_err(priv->dev, "error registering cpts device\n"); - + if (cpsw->cpts) { + if (cpts_register(cpsw->cpts)) + dev_err(priv->dev, "error registering cpts device\n"); + else + writel(0x10, &cpsw->wr_regs->misc_en); + } } cpsw_restore(priv); @@ -1116,7 +1119,7 @@ HOST_PORT_NUM, ALE_VLAN, vid); ret |= cpsw_ale_del_mcast(cpsw->ale, priv->ndev->broadcast, 0, ALE_VLAN, vid); - ret |= cpsw_ale_flush_multicast(cpsw->ale, 0, vid); + ret |= cpsw_ale_flush_multicast(cpsw->ale, ALE_PORT_HOST, vid); err: pm_runtime_put(cpsw->dev); return ret; @@ -1637,6 +1640,7 @@ CPSW_MAX_QUEUES, CPSW_MAX_QUEUES); if (!ndev) { dev_err(dev, "error allocating net_device\n"); + ret = -ENOMEM; goto clean_cpts; } @@ -1722,7 +1726,6 @@ /* Enable misc CPTS evnt_pend IRQ */ cpts_set_irqpoll(cpsw->cpts, false); - writel(0x10, &cpsw->wr_regs->misc_en); skip_cpts: cpsw_notice(priv, probe, --- linux-azure-5.8-5.8.0.orig/drivers/net/ethernet/ti/cpsw_ethtool.c +++ linux-azure-5.8-5.8.0/drivers/net/ethernet/ti/cpsw_ethtool.c @@ -727,7 +727,6 @@ (1 << HWTSTAMP_TX_ON); info->rx_filters = (1 << HWTSTAMP_FILTER_NONE) | - (1 << HWTSTAMP_FILTER_PTP_V1_L4_EVENT) | (1 << HWTSTAMP_FILTER_PTP_V2_EVENT); return 0; } --- linux-azure-5.8-5.8.0.orig/drivers/net/ethernet/ti/cpsw_new.c +++ linux-azure-5.8-5.8.0/drivers/net/ethernet/ti/cpsw_new.c @@ -17,6 +17,7 @@ #include #include #include +#include #include #include #include @@ -872,8 +873,12 @@ if (ret < 0) goto err_cleanup; - if (cpts_register(cpsw->cpts)) - dev_err(priv->dev, "error registering cpts device\n"); + if (cpsw->cpts) { + if (cpts_register(cpsw->cpts)) + dev_err(priv->dev, "error registering cpts device\n"); + else + writel(0x10, &cpsw->wr_regs->misc_en); + } napi_enable(&cpsw->napi_rx); napi_enable(&cpsw->napi_tx); @@ -1032,19 +1037,34 @@ return ret; } + /* reset the return code as pm_runtime_get_sync() can return + * non zero values as well. + */ + ret = 0; for (i = 0; i < cpsw->data.slaves; i++) { if (cpsw->slaves[i].ndev && - vid == cpsw->slaves[i].port_vlan) + vid == cpsw->slaves[i].port_vlan) { + ret = -EINVAL; goto err; + } } dev_dbg(priv->dev, "removing vlanid %d from vlan filter\n", vid); - cpsw_ale_del_vlan(cpsw->ale, vid, 0); - cpsw_ale_del_ucast(cpsw->ale, priv->mac_addr, - HOST_PORT_NUM, ALE_VLAN, vid); - cpsw_ale_del_mcast(cpsw->ale, priv->ndev->broadcast, - 0, ALE_VLAN, vid); - cpsw_ale_flush_multicast(cpsw->ale, 0, vid); + ret = cpsw_ale_del_vlan(cpsw->ale, vid, 0); + if (ret) + dev_err(priv->dev, "cpsw_ale_del_vlan() failed: ret %d\n", ret); + ret = cpsw_ale_del_ucast(cpsw->ale, priv->mac_addr, + HOST_PORT_NUM, ALE_VLAN, vid); + if (ret) + dev_err(priv->dev, "cpsw_ale_del_ucast() failed: ret %d\n", + ret); + ret = cpsw_ale_del_mcast(cpsw->ale, priv->ndev->broadcast, + 0, ALE_VLAN, vid); + if (ret) + dev_err(priv->dev, "cpsw_ale_del_mcast failed. ret %d\n", + ret); + cpsw_ale_flush_multicast(cpsw->ale, ALE_PORT_HOST, vid); + ret = 0; err: pm_runtime_put(cpsw->dev); return ret; @@ -1993,7 +2013,6 @@ /* Enable misc CPTS evnt_pend IRQ */ cpts_set_irqpoll(cpsw->cpts, false); - writel(0x10, &cpsw->wr_regs->misc_en); skip_cpts: ret = cpsw_register_notifiers(cpsw); @@ -2055,9 +2074,61 @@ return 0; } +static int __maybe_unused cpsw_suspend(struct device *dev) +{ + struct cpsw_common *cpsw = dev_get_drvdata(dev); + int i; + + rtnl_lock(); + + for (i = 0; i < cpsw->data.slaves; i++) { + struct net_device *ndev = cpsw->slaves[i].ndev; + + if (!(ndev && netif_running(ndev))) + continue; + + cpsw_ndo_stop(ndev); + } + + rtnl_unlock(); + + /* Select sleep pin state */ + pinctrl_pm_select_sleep_state(dev); + + return 0; +} + +static int __maybe_unused cpsw_resume(struct device *dev) +{ + struct cpsw_common *cpsw = dev_get_drvdata(dev); + int i; + + /* Select default pin state */ + pinctrl_pm_select_default_state(dev); + + /* shut up ASSERT_RTNL() warning in netif_set_real_num_tx/rx_queues */ + rtnl_lock(); + + for (i = 0; i < cpsw->data.slaves; i++) { + struct net_device *ndev = cpsw->slaves[i].ndev; + + if (!(ndev && netif_running(ndev))) + continue; + + cpsw_ndo_open(ndev); + } + + rtnl_unlock(); + + return 0; +} + +static SIMPLE_DEV_PM_OPS(cpsw_pm_ops, cpsw_suspend, cpsw_resume); + static struct platform_driver cpsw_driver = { .driver = { .name = "cpsw-switch", + .pm = &cpsw_pm_ops, .of_match_table = cpsw_of_mtable, }, .probe = cpsw_probe, --- linux-azure-5.8-5.8.0.orig/drivers/net/ethernet/ti/cpsw_priv.c +++ linux-azure-5.8-5.8.0/drivers/net/ethernet/ti/cpsw_priv.c @@ -639,13 +639,10 @@ break; case HWTSTAMP_FILTER_ALL: case HWTSTAMP_FILTER_NTP_ALL: - return -ERANGE; case HWTSTAMP_FILTER_PTP_V1_L4_EVENT: case HWTSTAMP_FILTER_PTP_V1_L4_SYNC: case HWTSTAMP_FILTER_PTP_V1_L4_DELAY_REQ: - priv->rx_ts_enabled = HWTSTAMP_FILTER_PTP_V1_L4_EVENT; - cfg.rx_filter = HWTSTAMP_FILTER_PTP_V1_L4_EVENT; - break; + return -ERANGE; case HWTSTAMP_FILTER_PTP_V2_L4_EVENT: case HWTSTAMP_FILTER_PTP_V2_L4_SYNC: case HWTSTAMP_FILTER_PTP_V2_L4_DELAY_REQ: --- linux-azure-5.8-5.8.0.orig/drivers/net/ethernet/ti/cpts.c +++ linux-azure-5.8-5.8.0/drivers/net/ethernet/ti/cpts.c @@ -613,6 +613,7 @@ ptp_clock_unregister(cpts->clock); cpts->clock = NULL; + cpts->phc_index = -1; cpts_write32(cpts, 0, int_enable); cpts_write32(cpts, 0, control); @@ -798,6 +799,7 @@ cpts->cc.read = cpts_systim_read; cpts->cc.mask = CLOCKSOURCE_MASK(32); cpts->info = cpts_info; + cpts->phc_index = -1; if (n_ext_ts) cpts->info.n_ext_ts = n_ext_ts; --- linux-azure-5.8-5.8.0.orig/drivers/net/ethernet/toshiba/spider_net.c +++ linux-azure-5.8-5.8.0/drivers/net/ethernet/toshiba/spider_net.c @@ -283,8 +283,8 @@ descr = descr->next; } while (descr != chain->ring); - dma_free_coherent(&card->pdev->dev, chain->num_desc, - chain->hwring, chain->dma_addr); + dma_free_coherent(&card->pdev->dev, chain->num_desc * sizeof(struct spider_net_hw_descr), + chain->hwring, chain->dma_addr); } /** --- linux-azure-5.8-5.8.0.orig/drivers/net/ethernet/xilinx/ll_temac_main.c +++ linux-azure-5.8-5.8.0/drivers/net/ethernet/xilinx/ll_temac_main.c @@ -106,7 +106,7 @@ */ #define HARD_ACS_RDY_POLL_NS (20 * NSEC_PER_MSEC) -/** +/* * temac_indirect_busywait - Wait for current indirect register access * to complete. */ @@ -121,7 +121,7 @@ return 0; } -/** +/* * temac_indirect_in32 - Indirect register read access. This function * must be called without lp->indirect_lock being held. */ @@ -136,7 +136,7 @@ return val; } -/** +/* * temac_indirect_in32_locked - Indirect register read access. This * function must be called with lp->indirect_lock being held. Use * this together with spin_lock_irqsave/spin_lock_irqrestore to avoid @@ -164,7 +164,7 @@ return temac_ior(lp, XTE_LSW0_OFFSET); } -/** +/* * temac_indirect_out32 - Indirect register write access. This function * must be called without lp->indirect_lock being held. */ @@ -177,7 +177,7 @@ spin_unlock_irqrestore(lp->indirect_lock, flags); } -/** +/* * temac_indirect_out32_locked - Indirect register write access. This * function must be called with lp->indirect_lock being held. Use * this together with spin_lock_irqsave/spin_lock_irqrestore to avoid @@ -202,7 +202,7 @@ WARN_ON(temac_indirect_busywait(lp)); } -/** +/* * temac_dma_in32_* - Memory mapped DMA read, these function expects a * register input that is based on DCR word addresses which are then * converted to memory mapped byte addresses. To be assigned to @@ -218,7 +218,7 @@ return ioread32(lp->sdma_regs + (reg << 2)); } -/** +/* * temac_dma_out32_* - Memory mapped DMA read, these function expects * a register input that is based on DCR word addresses which are then * converted to memory mapped byte addresses. To be assigned to @@ -240,7 +240,7 @@ */ #ifdef CONFIG_PPC_DCR -/** +/* * temac_dma_dcr_in32 - DCR based DMA read */ static u32 temac_dma_dcr_in(struct temac_local *lp, int reg) @@ -248,7 +248,7 @@ return dcr_read(lp->sdma_dcrs, reg); } -/** +/* * temac_dma_dcr_out32 - DCR based DMA write */ static void temac_dma_dcr_out(struct temac_local *lp, int reg, u32 value) @@ -256,7 +256,7 @@ dcr_write(lp->sdma_dcrs, reg, value); } -/** +/* * temac_dcr_setup - If the DMA is DCR based, then setup the address and * I/O functions */ @@ -293,7 +293,7 @@ #endif -/** +/* * temac_dma_bd_release - Release buffer descriptor rings */ static void temac_dma_bd_release(struct net_device *ndev) @@ -323,7 +323,7 @@ lp->tx_bd_v, lp->tx_bd_p); } -/** +/* * temac_dma_bd_init - Setup buffer descriptor rings */ static int temac_dma_bd_init(struct net_device *ndev) @@ -593,7 +593,7 @@ {} }; -/** +/* * temac_setoptions */ static u32 temac_setoptions(struct net_device *ndev, u32 options) @@ -1351,7 +1351,6 @@ struct device_node *temac_np = dev_of_node(&pdev->dev), *dma_np; struct temac_local *lp; struct net_device *ndev; - struct resource *res; const void *addr; __be32 *p; bool little_endian; @@ -1407,10 +1406,8 @@ } /* map device registers */ - res = platform_get_resource(pdev, IORESOURCE_MEM, 0); - lp->regs = devm_ioremap(&pdev->dev, res->start, - resource_size(res)); - if (!lp->regs) { + lp->regs = devm_platform_ioremap_resource_byname(pdev, 0); + if (IS_ERR(lp->regs)) { dev_err(&pdev->dev, "could not map TEMAC registers\n"); return -ENOMEM; } @@ -1502,13 +1499,11 @@ of_node_put(dma_np); } else if (pdata) { /* 2nd memory resource specifies DMA registers */ - res = platform_get_resource(pdev, IORESOURCE_MEM, 1); - lp->sdma_regs = devm_ioremap(&pdev->dev, res->start, - resource_size(res)); - if (!lp->sdma_regs) { + lp->sdma_regs = devm_platform_ioremap_resource(pdev, 1); + if (IS_ERR(lp->sdma_regs)) { dev_err(&pdev->dev, "could not map DMA registers\n"); - return -ENOMEM; + return PTR_ERR(lp->sdma_regs); } if (pdata->dma_little_endian) { lp->dma_in = temac_dma_in32_le; --- linux-azure-5.8-5.8.0.orig/drivers/net/ethernet/xilinx/xilinx_axienet_main.c +++ linux-azure-5.8-5.8.0/drivers/net/ethernet/xilinx/xilinx_axienet_main.c @@ -1805,6 +1805,18 @@ lp->options = XAE_OPTION_DEFAULTS; lp->rx_bd_num = RX_BD_NUM_DEFAULT; lp->tx_bd_num = TX_BD_NUM_DEFAULT; + + lp->clk = devm_clk_get_optional(&pdev->dev, NULL); + if (IS_ERR(lp->clk)) { + ret = PTR_ERR(lp->clk); + goto free_netdev; + } + ret = clk_prepare_enable(lp->clk); + if (ret) { + dev_err(&pdev->dev, "Unable to enable clock: %d\n", ret); + goto free_netdev; + } + /* Map device registers */ ethres = platform_get_resource(pdev, IORESOURCE_MEM, 0); lp->regs = devm_ioremap_resource(&pdev->dev, ethres); @@ -1980,20 +1992,6 @@ lp->phy_node = of_parse_phandle(pdev->dev.of_node, "phy-handle", 0); if (lp->phy_node) { - lp->clk = devm_clk_get(&pdev->dev, NULL); - if (IS_ERR(lp->clk)) { - dev_warn(&pdev->dev, "Failed to get clock: %ld\n", - PTR_ERR(lp->clk)); - lp->clk = NULL; - } else { - ret = clk_prepare_enable(lp->clk); - if (ret) { - dev_err(&pdev->dev, "Unable to enable clock: %d\n", - ret); - goto free_netdev; - } - } - ret = axienet_mdio_setup(lp); if (ret) dev_warn(&pdev->dev, --- linux-azure-5.8-5.8.0.orig/drivers/net/geneve.c +++ linux-azure-5.8-5.8.0/drivers/net/geneve.c @@ -221,8 +221,7 @@ if (ip_tunnel_collect_metadata() || gs->collect_md) { __be16 flags; - flags = TUNNEL_KEY | TUNNEL_GENEVE_OPT | - (gnvh->oam ? TUNNEL_OAM : 0) | + flags = TUNNEL_KEY | (gnvh->oam ? TUNNEL_OAM : 0) | (gnvh->critical ? TUNNEL_CRIT_OPT : 0); tun_dst = udp_tun_rx_dst(skb, geneve_get_sk_family(gs), flags, @@ -773,7 +772,8 @@ struct net_device *dev, struct geneve_sock *gs4, struct flowi4 *fl4, - const struct ip_tunnel_info *info) + const struct ip_tunnel_info *info, + __be16 dport, __be16 sport) { bool use_cache = ip_tunnel_dst_cache_usable(skb, info); struct geneve_dev *geneve = netdev_priv(dev); @@ -789,6 +789,8 @@ fl4->flowi4_proto = IPPROTO_UDP; fl4->daddr = info->key.u.ipv4.dst; fl4->saddr = info->key.u.ipv4.src; + fl4->fl4_dport = dport; + fl4->fl4_sport = sport; tos = info->key.tos; if ((tos == 1) && !geneve->collect_md) { @@ -823,7 +825,8 @@ struct net_device *dev, struct geneve_sock *gs6, struct flowi6 *fl6, - const struct ip_tunnel_info *info) + const struct ip_tunnel_info *info, + __be16 dport, __be16 sport) { bool use_cache = ip_tunnel_dst_cache_usable(skb, info); struct geneve_dev *geneve = netdev_priv(dev); @@ -839,6 +842,9 @@ fl6->flowi6_proto = IPPROTO_UDP; fl6->daddr = info->key.u.ipv6.dst; fl6->saddr = info->key.u.ipv6.src; + fl6->fl6_dport = dport; + fl6->fl6_sport = sport; + prio = info->key.tos; if ((prio == 1) && !geneve->collect_md) { prio = ip_tunnel_get_dsfield(ip_hdr(skb), skb); @@ -885,14 +891,15 @@ __be16 sport; int err; - rt = geneve_get_v4_rt(skb, dev, gs4, &fl4, info); + sport = udp_flow_src_port(geneve->net, skb, 1, USHRT_MAX, true); + rt = geneve_get_v4_rt(skb, dev, gs4, &fl4, info, + geneve->info.key.tp_dst, sport); if (IS_ERR(rt)) return PTR_ERR(rt); skb_tunnel_check_pmtu(skb, &rt->dst, GENEVE_IPV4_HLEN + info->options_len); - sport = udp_flow_src_port(geneve->net, skb, 1, USHRT_MAX, true); if (geneve->collect_md) { tos = ip_tunnel_ecn_encap(key->tos, ip_hdr(skb), skb); ttl = key->ttl; @@ -947,13 +954,14 @@ __be16 sport; int err; - dst = geneve_get_v6_dst(skb, dev, gs6, &fl6, info); + sport = udp_flow_src_port(geneve->net, skb, 1, USHRT_MAX, true); + dst = geneve_get_v6_dst(skb, dev, gs6, &fl6, info, + geneve->info.key.tp_dst, sport); if (IS_ERR(dst)) return PTR_ERR(dst); skb_tunnel_check_pmtu(skb, dst, GENEVE_IPV6_HLEN + info->options_len); - sport = udp_flow_src_port(geneve->net, skb, 1, USHRT_MAX, true); if (geneve->collect_md) { prio = ip_tunnel_ecn_encap(key->tos, ip_hdr(skb), skb); ttl = key->ttl; @@ -1034,13 +1042,18 @@ { struct ip_tunnel_info *info = skb_tunnel_info(skb); struct geneve_dev *geneve = netdev_priv(dev); + __be16 sport; if (ip_tunnel_info_af(info) == AF_INET) { struct rtable *rt; struct flowi4 fl4; + struct geneve_sock *gs4 = rcu_dereference(geneve->sock4); + sport = udp_flow_src_port(geneve->net, skb, + 1, USHRT_MAX, true); - rt = geneve_get_v4_rt(skb, dev, gs4, &fl4, info); + rt = geneve_get_v4_rt(skb, dev, gs4, &fl4, info, + geneve->info.key.tp_dst, sport); if (IS_ERR(rt)) return PTR_ERR(rt); @@ -1050,9 +1063,13 @@ } else if (ip_tunnel_info_af(info) == AF_INET6) { struct dst_entry *dst; struct flowi6 fl6; + struct geneve_sock *gs6 = rcu_dereference(geneve->sock6); + sport = udp_flow_src_port(geneve->net, skb, + 1, USHRT_MAX, true); - dst = geneve_get_v6_dst(skb, dev, gs6, &fl6, info); + dst = geneve_get_v6_dst(skb, dev, gs6, &fl6, info, + geneve->info.key.tp_dst, sport); if (IS_ERR(dst)) return PTR_ERR(dst); @@ -1063,8 +1080,7 @@ return -EINVAL; } - info->key.tp_src = udp_flow_src_port(geneve->net, skb, - 1, USHRT_MAX, true); + info->key.tp_src = sport; info->key.tp_dst = geneve->info.key.tp_dst; return 0; } --- linux-azure-5.8-5.8.0.orig/drivers/net/gtp.c +++ linux-azure-5.8-5.8.0/drivers/net/gtp.c @@ -663,10 +663,6 @@ gtp = netdev_priv(dev); - err = gtp_encap_enable(gtp, data); - if (err < 0) - return err; - if (!data[IFLA_GTP_PDP_HASHSIZE]) { hashsize = 1024; } else { @@ -677,12 +673,16 @@ err = gtp_hashtable_new(gtp, hashsize); if (err < 0) - goto out_encap; + return err; + + err = gtp_encap_enable(gtp, data); + if (err < 0) + goto out_hashtable; err = register_netdevice(dev); if (err < 0) { netdev_dbg(dev, "failed to register new netdev %d\n", err); - goto out_hashtable; + goto out_encap; } gn = net_generic(dev_net(dev), gtp_net_id); @@ -693,11 +693,11 @@ return 0; +out_encap: + gtp_encap_disable(gtp); out_hashtable: kfree(gtp->addr_hash); kfree(gtp->tid_hash); -out_encap: - gtp_encap_disable(gtp); return err; } @@ -1179,6 +1179,7 @@ goto nlmsg_failure; if (nla_put_u32(skb, GTPA_VERSION, pctx->gtp_version) || + nla_put_u32(skb, GTPA_LINK, pctx->dev->ifindex) || nla_put_be32(skb, GTPA_PEER_ADDRESS, pctx->peer_addr_ip4.s_addr) || nla_put_be32(skb, GTPA_MS_ADDRESS, pctx->ms_addr_ip4.s_addr)) goto nla_put_failure; --- linux-azure-5.8-5.8.0.orig/drivers/net/hyperv/hyperv_net.h +++ linux-azure-5.8-5.8.0/drivers/net/hyperv/hyperv_net.h @@ -16,6 +16,9 @@ #include #include +/* Include refcount here to avoid backporting a bunch of kref commits. */ +#include + /* RSS related */ #define OID_GEN_RECEIVE_SCALE_CAPABILITIES 0x00010203 /* query only */ #define OID_GEN_RECEIVE_SCALE_PARAMETERS 0x00010204 /* query and set */ @@ -973,6 +976,9 @@ /* Serial number of the VF to team with */ u32 vf_serial; + /* Is the current data path through the VF NIC? */ + bool data_path_is_vf; + /* Used to temporarily save the config info across hibernation */ struct netvsc_device_info *saved_netvsc_dev_info; }; --- linux-azure-5.8-5.8.0.orig/drivers/net/hyperv/netvsc.c +++ linux-azure-5.8-5.8.0/drivers/net/hyperv/netvsc.c @@ -1175,8 +1175,11 @@ ret = rndis_filter_receive(ndev, net_device, nvchan, data, buflen); - if (unlikely(ret != NVSP_STAT_SUCCESS)) + if (unlikely(ret != NVSP_STAT_SUCCESS)) { + /* Drop incomplete packet */ + nvchan->rsc.cnt = 0; status = NVSP_STAT_FAIL; + } } enq_receive_complete(ndev, net_device, q_idx, --- linux-azure-5.8-5.8.0.orig/drivers/net/hyperv/netvsc_drv.c +++ linux-azure-5.8-5.8.0/drivers/net/hyperv/netvsc_drv.c @@ -367,7 +367,7 @@ } rcu_read_unlock(); - while (unlikely(txq >= ndev->real_num_tx_queues)) + while (txq >= ndev->real_num_tx_queues) txq -= ndev->real_num_tx_queues; return txq; @@ -502,7 +502,7 @@ int rc; skb->dev = vf_netdev; - skb->queue_mapping = qdisc_skb_cb(skb)->slave_dev_queue_mapping; + skb_record_rx_queue(skb, qdisc_skb_cb(skb)->slave_dev_queue_mapping); rc = dev_queue_xmit(skb); if (likely(rc == NET_XMIT_SUCCESS || rc == NET_XMIT_CN)) { @@ -532,12 +532,13 @@ u32 hash; struct hv_page_buffer pb[MAX_PAGE_BUFFER_COUNT]; - /* if VF is present and up then redirect packets - * already called with rcu_read_lock_bh + /* If VF is present and up then redirect packets to it. + * Skip the VF if it is marked down or has no carrier. + * If netpoll is in uses, then VF can not be used either. */ vf_netdev = rcu_dereference_bh(net_device_ctx->vf_netdev); if (vf_netdev && netif_running(vf_netdev) && - !netpoll_tx_running(net)) + netif_carrier_ok(vf_netdev) && !netpoll_tx_running(net)) return netvsc_vf_xmit(net, vf_netdev, skb); /* We will atmost need two pages to describe the rndis @@ -2322,7 +2323,16 @@ return NOTIFY_OK; } -/* VF up/down change detected, schedule to change data path */ +/* Change the data path when VF UP/DOWN/CHANGE are detected. + * + * Typically a UP or DOWN event is followed by a CHANGE event, so + * net_device_ctx->data_path_is_vf is used to cache the current data path + * to avoid the duplicate call of netvsc_switch_datapath() and the duplicate + * message. + * + * During hibernation, if a VF NIC driver (e.g. mlx5) preserves the network + * interface, there is only the CHANGE event and no UP or DOWN event. + */ static int netvsc_vf_changed(struct net_device *vf_netdev) { struct net_device_context *net_device_ctx; @@ -2339,6 +2349,10 @@ if (!netvsc_dev) return NOTIFY_DONE; + if (net_device_ctx->data_path_is_vf == vf_is_up) + return NOTIFY_OK; + net_device_ctx->data_path_is_vf = vf_is_up; + netvsc_switch_datapath(ndev, vf_is_up); netdev_info(ndev, "Data path switched %s VF: %s\n", vf_is_up ? "to" : "from", vf_netdev->name); @@ -2543,8 +2557,8 @@ static int netvsc_suspend(struct hv_device *dev) { struct net_device_context *ndev_ctx; - struct net_device *vf_netdev, *net; struct netvsc_device *nvdev; + struct net_device *net; int ret; net = hv_get_drvdata(dev); @@ -2560,10 +2574,6 @@ goto out; } - vf_netdev = rtnl_dereference(ndev_ctx->vf_netdev); - if (vf_netdev) - netvsc_unregister_vf(vf_netdev); - /* Save the current config info */ ndev_ctx->saved_netvsc_dev_info = netvsc_devinfo_get(nvdev); @@ -2584,6 +2594,12 @@ rtnl_lock(); net_device_ctx = netdev_priv(net); + + /* Reset the data path to the netvsc NIC before re-opening the vmbus + * channel. Later netvsc_netdev_event() will switch the data path to + * the VF upon the UP or CHANGE event. + */ + net_device_ctx->data_path_is_vf = false; device_info = net_device_ctx->saved_netvsc_dev_info; ret = netvsc_attach(net, device_info); @@ -2651,6 +2667,7 @@ return netvsc_unregister_vf(event_dev); case NETDEV_UP: case NETDEV_DOWN: + case NETDEV_CHANGE: return netvsc_vf_changed(event_dev); default: return NOTIFY_DONE; --- linux-azure-5.8-5.8.0.orig/drivers/net/hyperv/rndis_filter.c +++ linux-azure-5.8-5.8.0/drivers/net/hyperv/rndis_filter.c @@ -458,8 +458,6 @@ return ret; drop: - /* Drop incomplete packet */ - nvchan->rsc.cnt = 0; return NVSP_STAT_FAIL; } @@ -1440,6 +1438,9 @@ { struct rndis_device *rndis_dev = net_dev->extension; + /* Don't try and setup sub channels if about to halt */ + cancel_work_sync(&net_dev->subchan_work); + /* Halt and release the rndis device */ rndis_filter_halt_device(net_dev, rndis_dev); --- linux-azure-5.8-5.8.0.orig/drivers/net/ieee802154/adf7242.c +++ linux-azure-5.8-5.8.0/drivers/net/ieee802154/adf7242.c @@ -882,7 +882,9 @@ int ret; u8 lqi, len_u8, *data; - adf7242_read_reg(lp, 0, &len_u8); + ret = adf7242_read_reg(lp, 0, &len_u8); + if (ret) + return ret; len = len_u8; --- linux-azure-5.8-5.8.0.orig/drivers/net/ieee802154/ca8210.c +++ linux-azure-5.8-5.8.0/drivers/net/ieee802154/ca8210.c @@ -2925,6 +2925,7 @@ ); if (!priv->irq_workqueue) { dev_crit(&priv->spi->dev, "alloc of irq_workqueue failed!\n"); + destroy_workqueue(priv->mlme_workqueue); return -ENOMEM; } --- linux-azure-5.8-5.8.0.orig/drivers/net/ipa/gsi.c +++ linux-azure-5.8-5.8.0/drivers/net/ipa/gsi.c @@ -1249,7 +1249,7 @@ /* Hardware requires a 2^n ring size, with alignment equal to size */ ring->virt = dma_alloc_coherent(dev, size, &addr, GFP_KERNEL); if (ring->virt && addr % size) { - dma_free_coherent(dev, size, ring->virt, ring->addr); + dma_free_coherent(dev, size, ring->virt, addr); dev_err(dev, "unable to alloc 0x%zx-aligned ring buffer\n", size); return -EINVAL; /* Not a good error value, but distinct */ @@ -1566,6 +1566,7 @@ if (!channel->gsi) continue; /* Ignore uninitialized channels */ + ret = -EINVAL; dev_err(gsi->dev, "channel %u not supported by hardware\n", channel_id - 1); channel_id = gsi->channel_count; --- linux-azure-5.8-5.8.0.orig/drivers/net/ipa/gsi_trans.c +++ linux-azure-5.8-5.8.0/drivers/net/ipa/gsi_trans.c @@ -157,6 +157,9 @@ /* The allocator will give us a power-of-2 number of pages. But we * can't guarantee that, so request it. That way we won't waste any * memory that would be available beyond the required space. + * + * Note that gsi_trans_pool_exit_dma() assumes the total allocated + * size is exactly (count * size). */ total_size = get_order(total_size) << PAGE_SHIFT; @@ -176,7 +179,9 @@ void gsi_trans_pool_exit_dma(struct device *dev, struct gsi_trans_pool *pool) { - dma_free_coherent(dev, pool->size, pool->base, pool->addr); + size_t total_size = pool->count * pool->size; + + dma_free_coherent(dev, total_size, pool->base, pool->addr); memset(pool, 0, sizeof(*pool)); } @@ -363,22 +368,31 @@ return trans; } -/* Free a previously-allocated transaction (used only in case of error) */ +/* Free a previously-allocated transaction */ void gsi_trans_free(struct gsi_trans *trans) { + refcount_t *refcount = &trans->refcount; struct gsi_trans_info *trans_info; + bool last; - if (!refcount_dec_and_test(&trans->refcount)) + /* We must hold the lock to release the last reference */ + if (refcount_dec_not_one(refcount)) return; trans_info = &trans->gsi->channel[trans->channel_id].trans_info; spin_lock_bh(&trans_info->spinlock); - list_del(&trans->links); + /* Reference might have been added before we got the lock */ + last = refcount_dec_and_test(refcount); + if (last) + list_del(&trans->links); spin_unlock_bh(&trans_info->spinlock); + if (!last) + return; + ipa_gsi_trans_release(trans); /* Releasing the reserved TREs implicitly frees the sgl[] and @@ -398,15 +412,24 @@ /* assert(which < trans->tre_count); */ - /* Set the page information for the buffer. We also need to fill in - * the DMA address and length for the buffer (something dma_map_sg() - * normally does). + /* Commands are quite different from data transfer requests. + * Their payloads come from a pool whose memory is allocated + * using dma_alloc_coherent(). We therefore do *not* map them + * for DMA (unlike what we do for pages and skbs). + * + * When a transaction completes, the SGL is normally unmapped. + * A command transaction has direction DMA_NONE, which tells + * gsi_trans_complete() to skip the unmapping step. + * + * The only things we use directly in a command scatter/gather + * entry are the DMA address and length. We still need the SG + * table flags to be maintained though, so assign a NULL page + * pointer for that purpose. */ sg = &trans->sgl[which]; - - sg_set_buf(sg, buf, size); + sg_assign_page(sg, NULL); sg_dma_address(sg) = addr; - sg_dma_len(sg) = sg->length; + sg_dma_len(sg) = size; info = &trans->info[which]; info->opcode = opcode; --- linux-azure-5.8-5.8.0.orig/drivers/net/ipa/ipa_endpoint.c +++ linux-azure-5.8-5.8.0/drivers/net/ipa/ipa_endpoint.c @@ -1447,6 +1447,9 @@ void ipa_endpoint_suspend(struct ipa *ipa) { + if (!ipa->setup_complete) + return; + if (ipa->modem_netdev) ipa_modem_suspend(ipa->modem_netdev); @@ -1458,6 +1461,9 @@ void ipa_endpoint_resume(struct ipa *ipa) { + if (!ipa->setup_complete) + return; + ipa_endpoint_resume_one(ipa->name_map[IPA_ENDPOINT_AP_COMMAND_TX]); ipa_endpoint_resume_one(ipa->name_map[IPA_ENDPOINT_AP_LAN_RX]); --- linux-azure-5.8-5.8.0.orig/drivers/net/ipa/ipa_modem.c +++ linux-azure-5.8-5.8.0/drivers/net/ipa/ipa_modem.c @@ -216,6 +216,7 @@ ipa->name_map[IPA_ENDPOINT_AP_MODEM_TX]->netdev = netdev; ipa->name_map[IPA_ENDPOINT_AP_MODEM_RX]->netdev = netdev; + SET_NETDEV_DEV(netdev, &ipa->pdev->dev); priv = netdev_priv(netdev); priv->ipa = ipa; --- linux-azure-5.8-5.8.0.orig/drivers/net/ipa/ipa_table.c +++ linux-azure-5.8-5.8.0/drivers/net/ipa/ipa_table.c @@ -521,7 +521,7 @@ val = ioread32(endpoint->ipa->reg_virt + offset); /* Zero all filter-related fields, preserving the rest */ - u32_replace_bits(val, 0, IPA_REG_ENDP_FILTER_HASH_MSK_ALL); + u32p_replace_bits(&val, 0, IPA_REG_ENDP_FILTER_HASH_MSK_ALL); iowrite32(val, endpoint->ipa->reg_virt + offset); } @@ -572,7 +572,7 @@ val = ioread32(ipa->reg_virt + offset); /* Zero all route-related fields, preserving the rest */ - u32_replace_bits(val, 0, IPA_REG_ENDP_ROUTER_HASH_MSK_ALL); + u32p_replace_bits(&val, 0, IPA_REG_ENDP_ROUTER_HASH_MSK_ALL); iowrite32(val, ipa->reg_virt + offset); } --- linux-azure-5.8-5.8.0.orig/drivers/net/ipvlan/ipvlan_main.c +++ linux-azure-5.8-5.8.0/drivers/net/ipvlan/ipvlan_main.c @@ -106,12 +106,21 @@ kfree(port); } +#define IPVLAN_ALWAYS_ON_OFLOADS \ + (NETIF_F_SG | NETIF_F_HW_CSUM | \ + NETIF_F_GSO_ROBUST | NETIF_F_GSO_SOFTWARE | NETIF_F_GSO_ENCAP_ALL) + +#define IPVLAN_ALWAYS_ON \ + (IPVLAN_ALWAYS_ON_OFLOADS | NETIF_F_LLTX | NETIF_F_VLAN_CHALLENGED) + #define IPVLAN_FEATURES \ - (NETIF_F_SG | NETIF_F_CSUM_MASK | NETIF_F_HIGHDMA | NETIF_F_FRAGLIST | \ + (NETIF_F_SG | NETIF_F_HW_CSUM | NETIF_F_HIGHDMA | NETIF_F_FRAGLIST | \ NETIF_F_GSO | NETIF_F_ALL_TSO | NETIF_F_GSO_ROBUST | \ NETIF_F_GRO | NETIF_F_RXCSUM | \ NETIF_F_HW_VLAN_CTAG_FILTER | NETIF_F_HW_VLAN_STAG_FILTER) + /* NETIF_F_GSO_ENCAP_ALL NETIF_F_GSO_SOFTWARE Newly added */ + #define IPVLAN_STATE_MASK \ ((1<<__LINK_STATE_NOCARRIER) | (1<<__LINK_STATE_DORMANT)) @@ -125,7 +134,9 @@ dev->state = (dev->state & ~IPVLAN_STATE_MASK) | (phy_dev->state & IPVLAN_STATE_MASK); dev->features = phy_dev->features & IPVLAN_FEATURES; - dev->features |= NETIF_F_LLTX | NETIF_F_VLAN_CHALLENGED; + dev->features |= IPVLAN_ALWAYS_ON; + dev->vlan_features = phy_dev->vlan_features & IPVLAN_FEATURES; + dev->vlan_features |= IPVLAN_ALWAYS_ON_OFLOADS; dev->hw_enc_features |= dev->features; dev->gso_max_size = phy_dev->gso_max_size; dev->gso_max_segs = phy_dev->gso_max_segs; @@ -227,7 +238,14 @@ { struct ipvl_dev *ipvlan = netdev_priv(dev); - return features & (ipvlan->sfeatures | ~IPVLAN_FEATURES); + features |= NETIF_F_ALL_FOR_ALL; + features &= (ipvlan->sfeatures | ~IPVLAN_FEATURES); + features = netdev_increment_features(ipvlan->phy_dev->features, + features, features); + features |= IPVLAN_ALWAYS_ON; + features &= (IPVLAN_FEATURES | IPVLAN_ALWAYS_ON); + + return features; } static void ipvlan_change_rx_flags(struct net_device *dev, int change) @@ -734,10 +752,9 @@ case NETDEV_FEAT_CHANGE: list_for_each_entry(ipvlan, &port->ipvlans, pnode) { - ipvlan->dev->features = dev->features & IPVLAN_FEATURES; ipvlan->dev->gso_max_size = dev->gso_max_size; ipvlan->dev->gso_max_segs = dev->gso_max_segs; - netdev_features_change(ipvlan->dev); + netdev_update_features(ipvlan->dev); } break; --- linux-azure-5.8-5.8.0.orig/drivers/net/macsec.c +++ linux-azure-5.8-5.8.0/drivers/net/macsec.c @@ -1077,6 +1077,7 @@ struct macsec_rx_sa *rx_sa; struct macsec_rxh_data *rxd; struct macsec_dev *macsec; + unsigned int len; sci_t sci; u32 hdr_pn; bool cbit; @@ -1232,9 +1233,10 @@ macsec_rxsc_put(rx_sc); skb_orphan(skb); + len = skb->len; ret = gro_cells_receive(&macsec->gro_cells, skb); if (ret == NET_RX_SUCCESS) - count_rx(dev, skb->len); + count_rx(dev, len); else macsec->secy.netdev->stats.rx_dropped++; --- linux-azure-5.8-5.8.0.orig/drivers/net/macvlan.c +++ linux-azure-5.8-5.8.0/drivers/net/macvlan.c @@ -1269,6 +1269,9 @@ static int macvlan_validate(struct nlattr *tb[], struct nlattr *data[], struct netlink_ext_ack *extack) { + struct nlattr *nla, *head; + int rem, len; + if (tb[IFLA_ADDRESS]) { if (nla_len(tb[IFLA_ADDRESS]) != ETH_ALEN) return -EINVAL; @@ -1316,6 +1319,20 @@ return -EADDRNOTAVAIL; } + if (data[IFLA_MACVLAN_MACADDR_DATA]) { + head = nla_data(data[IFLA_MACVLAN_MACADDR_DATA]); + len = nla_len(data[IFLA_MACVLAN_MACADDR_DATA]); + + nla_for_each_attr(nla, head, len, rem) { + if (nla_type(nla) != IFLA_MACVLAN_MACADDR || + nla_len(nla) != ETH_ALEN) + return -EINVAL; + + if (!is_valid_ether_addr(nla_data(nla))) + return -EADDRNOTAVAIL; + } + } + if (data[IFLA_MACVLAN_MACADDR_COUNT]) return -EINVAL; @@ -1372,10 +1389,6 @@ len = nla_len(data[IFLA_MACVLAN_MACADDR_DATA]); nla_for_each_attr(nla, head, len, rem) { - if (nla_type(nla) != IFLA_MACVLAN_MACADDR || - nla_len(nla) != ETH_ALEN) - continue; - addr = nla_data(nla); ret = macvlan_hash_add_source(vlan, addr); if (ret) --- linux-azure-5.8-5.8.0.orig/drivers/net/netdevsim/dev.c +++ linux-azure-5.8-5.8.0/drivers/net/netdevsim/dev.c @@ -94,6 +94,7 @@ .open = simple_open, .write = nsim_dev_take_snapshot_write, .llseek = generic_file_llseek, + .owner = THIS_MODULE, }; static ssize_t nsim_dev_trap_fa_cookie_read(struct file *file, @@ -186,6 +187,7 @@ .read = nsim_dev_trap_fa_cookie_read, .write = nsim_dev_trap_fa_cookie_write, .llseek = generic_file_llseek, + .owner = THIS_MODULE, }; static int nsim_dev_debugfs_init(struct nsim_dev *nsim_dev) --- linux-azure-5.8-5.8.0.orig/drivers/net/netdevsim/health.c +++ linux-azure-5.8-5.8.0/drivers/net/netdevsim/health.c @@ -261,6 +261,7 @@ .open = simple_open, .write = nsim_dev_health_break_write, .llseek = generic_file_llseek, + .owner = THIS_MODULE, }; int nsim_dev_health_init(struct nsim_dev *nsim_dev, struct devlink *devlink) --- linux-azure-5.8-5.8.0.orig/drivers/net/phy/Kconfig +++ linux-azure-5.8-5.8.0/drivers/net/phy/Kconfig @@ -217,6 +217,7 @@ depends on 64BIT depends on PCI select MDIO_CAVIUM + select MDIO_DEVRES help This driver supports the MDIO interfaces found on Cavium ThunderX SoCs when the MDIO bus device appears as a PCI --- linux-azure-5.8-5.8.0.orig/drivers/net/phy/dp83867.c +++ linux-azure-5.8-5.8.0/drivers/net/phy/dp83867.c @@ -215,9 +215,9 @@ if (wol->wolopts & WAKE_MAGICSECURE) { phy_write_mmd(phydev, DP83867_DEVADDR, DP83867_RXFSOP1, (wol->sopass[1] << 8) | wol->sopass[0]); - phy_write_mmd(phydev, DP83867_DEVADDR, DP83867_RXFSOP1, + phy_write_mmd(phydev, DP83867_DEVADDR, DP83867_RXFSOP2, (wol->sopass[3] << 8) | wol->sopass[2]); - phy_write_mmd(phydev, DP83867_DEVADDR, DP83867_RXFSOP1, + phy_write_mmd(phydev, DP83867_DEVADDR, DP83867_RXFSOP3, (wol->sopass[5] << 8) | wol->sopass[4]); val_rxcfg |= DP83867_WOL_SEC_EN; --- linux-azure-5.8-5.8.0.orig/drivers/net/phy/marvell10g.c +++ linux-azure-5.8-5.8.0/drivers/net/phy/marvell10g.c @@ -205,13 +205,6 @@ MV_V2_TEMP_CTRL_MASK, val); } -static void mv3310_hwmon_disable(void *data) -{ - struct phy_device *phydev = data; - - mv3310_hwmon_config(phydev, false); -} - static int mv3310_hwmon_probe(struct phy_device *phydev) { struct device *dev = &phydev->mdio.dev; @@ -235,10 +228,6 @@ if (ret) return ret; - ret = devm_add_action_or_reset(dev, mv3310_hwmon_disable, phydev); - if (ret) - return ret; - priv->hwmon_dev = devm_hwmon_device_register_with_info(dev, priv->hwmon_name, phydev, &mv3310_hwmon_chip_info, NULL); @@ -423,6 +412,11 @@ return phy_sfp_probe(phydev, &mv3310_sfp_ops); } +static void mv3310_remove(struct phy_device *phydev) +{ + mv3310_hwmon_config(phydev, false); +} + static int mv3310_suspend(struct phy_device *phydev) { return mv3310_power_down(phydev); @@ -762,6 +756,7 @@ .read_status = mv3310_read_status, .get_tunable = mv3310_get_tunable, .set_tunable = mv3310_set_tunable, + .remove = mv3310_remove, }, { .phy_id = MARVELL_PHY_ID_88E2110, @@ -776,6 +771,7 @@ .read_status = mv3310_read_status, .get_tunable = mv3310_get_tunable, .set_tunable = mv3310_set_tunable, + .remove = mv3310_remove, }, }; --- linux-azure-5.8-5.8.0.orig/drivers/net/phy/mscc/mscc.h +++ linux-azure-5.8-5.8.0/drivers/net/phy/mscc/mscc.h @@ -102,6 +102,7 @@ #define PHY_MCB_S6G_READ BIT(30) #define PHY_S6G_PLL5G_CFG0 0x06 +#define PHY_S6G_PLL5G_CFG2 0x08 #define PHY_S6G_LCPLL_CFG 0x11 #define PHY_S6G_PLL_CFG 0x2b #define PHY_S6G_COMMON_CFG 0x2c @@ -121,6 +122,9 @@ #define PHY_S6G_PLL_FSM_CTRL_DATA_POS 8 #define PHY_S6G_PLL_FSM_ENA_POS 7 +#define PHY_S6G_CFG2_FSM_DIS 1 +#define PHY_S6G_CFG2_FSM_CLK_BP 23 + #define MSCC_EXT_PAGE_ACCESS 31 #define MSCC_PHY_PAGE_STANDARD 0x0000 /* Standard registers */ #define MSCC_PHY_PAGE_EXTENDED 0x0001 /* Extended registers */ @@ -381,6 +385,10 @@ }; #endif /* CONFIG_OF_MDIO */ +enum csr_target { + MACRO_CTRL = 0x07, +}; + #if IS_ENABLED(CONFIG_MACSEC) int vsc8584_macsec_init(struct phy_device *phydev); void vsc8584_handle_macsec_interrupt(struct phy_device *phydev); --- linux-azure-5.8-5.8.0.orig/drivers/net/phy/mscc/mscc_macsec.c +++ linux-azure-5.8-5.8.0/drivers/net/phy/mscc/mscc_macsec.c @@ -977,7 +977,6 @@ switch (phydev->phy_id & phydev->drv->phy_id_mask) { case PHY_ID_VSC856X: - case PHY_ID_VSC8575: case PHY_ID_VSC8582: case PHY_ID_VSC8584: INIT_LIST_HEAD(&vsc8531->macsec_flows); --- linux-azure-5.8-5.8.0.orig/drivers/net/phy/mscc/mscc_main.c +++ linux-azure-5.8-5.8.0/drivers/net/phy/mscc/mscc_main.c @@ -710,6 +710,113 @@ return __phy_package_read(phydev, regnum); } +static u32 vsc85xx_csr_read(struct phy_device *phydev, + enum csr_target target, u32 reg) +{ + unsigned long deadline; + u32 val, val_l, val_h; + + phy_base_write(phydev, MSCC_EXT_PAGE_ACCESS, MSCC_PHY_PAGE_CSR_CNTL); + + /* CSR registers are grouped under different Target IDs. + * 6-bit Target_ID is split between MSCC_EXT_PAGE_CSR_CNTL_20 and + * MSCC_EXT_PAGE_CSR_CNTL_19 registers. + * Target_ID[5:2] maps to bits[3:0] of MSCC_EXT_PAGE_CSR_CNTL_20 + * and Target_ID[1:0] maps to bits[13:12] of MSCC_EXT_PAGE_CSR_CNTL_19. + */ + + /* Setup the Target ID */ + phy_base_write(phydev, MSCC_EXT_PAGE_CSR_CNTL_20, + MSCC_PHY_CSR_CNTL_20_TARGET(target >> 2)); + + if ((target >> 2 == 0x1) || (target >> 2 == 0x3)) + /* non-MACsec access */ + target &= 0x3; + else + target = 0; + + /* Trigger CSR Action - Read into the CSR's */ + phy_base_write(phydev, MSCC_EXT_PAGE_CSR_CNTL_19, + MSCC_PHY_CSR_CNTL_19_CMD | MSCC_PHY_CSR_CNTL_19_READ | + MSCC_PHY_CSR_CNTL_19_REG_ADDR(reg) | + MSCC_PHY_CSR_CNTL_19_TARGET(target)); + + /* Wait for register access*/ + deadline = jiffies + msecs_to_jiffies(PROC_CMD_NCOMPLETED_TIMEOUT_MS); + do { + usleep_range(500, 1000); + val = phy_base_read(phydev, MSCC_EXT_PAGE_CSR_CNTL_19); + } while (time_before(jiffies, deadline) && + !(val & MSCC_PHY_CSR_CNTL_19_CMD)); + + if (!(val & MSCC_PHY_CSR_CNTL_19_CMD)) + return 0xffffffff; + + /* Read the Least Significant Word (LSW) (17) */ + val_l = phy_base_read(phydev, MSCC_EXT_PAGE_CSR_CNTL_17); + + /* Read the Most Significant Word (MSW) (18) */ + val_h = phy_base_read(phydev, MSCC_EXT_PAGE_CSR_CNTL_18); + + phy_base_write(phydev, MSCC_EXT_PAGE_ACCESS, + MSCC_PHY_PAGE_STANDARD); + + return (val_h << 16) | val_l; +} + +static int vsc85xx_csr_write(struct phy_device *phydev, + enum csr_target target, u32 reg, u32 val) +{ + unsigned long deadline; + + phy_base_write(phydev, MSCC_EXT_PAGE_ACCESS, MSCC_PHY_PAGE_CSR_CNTL); + + /* CSR registers are grouped under different Target IDs. + * 6-bit Target_ID is split between MSCC_EXT_PAGE_CSR_CNTL_20 and + * MSCC_EXT_PAGE_CSR_CNTL_19 registers. + * Target_ID[5:2] maps to bits[3:0] of MSCC_EXT_PAGE_CSR_CNTL_20 + * and Target_ID[1:0] maps to bits[13:12] of MSCC_EXT_PAGE_CSR_CNTL_19. + */ + + /* Setup the Target ID */ + phy_base_write(phydev, MSCC_EXT_PAGE_CSR_CNTL_20, + MSCC_PHY_CSR_CNTL_20_TARGET(target >> 2)); + + /* Write the Least Significant Word (LSW) (17) */ + phy_base_write(phydev, MSCC_EXT_PAGE_CSR_CNTL_17, (u16)val); + + /* Write the Most Significant Word (MSW) (18) */ + phy_base_write(phydev, MSCC_EXT_PAGE_CSR_CNTL_18, (u16)(val >> 16)); + + if ((target >> 2 == 0x1) || (target >> 2 == 0x3)) + /* non-MACsec access */ + target &= 0x3; + else + target = 0; + + /* Trigger CSR Action - Write into the CSR's */ + phy_base_write(phydev, MSCC_EXT_PAGE_CSR_CNTL_19, + MSCC_PHY_CSR_CNTL_19_CMD | + MSCC_PHY_CSR_CNTL_19_REG_ADDR(reg) | + MSCC_PHY_CSR_CNTL_19_TARGET(target)); + + /* Wait for register access */ + deadline = jiffies + msecs_to_jiffies(PROC_CMD_NCOMPLETED_TIMEOUT_MS); + do { + usleep_range(500, 1000); + val = phy_base_read(phydev, MSCC_EXT_PAGE_CSR_CNTL_19); + } while (time_before(jiffies, deadline) && + !(val & MSCC_PHY_CSR_CNTL_19_CMD)); + + if (!(val & MSCC_PHY_CSR_CNTL_19_CMD)) + return -ETIMEDOUT; + + phy_base_write(phydev, MSCC_EXT_PAGE_ACCESS, + MSCC_PHY_PAGE_STANDARD); + + return 0; +} + /* bus->mdio_lock should be locked when using this function */ static void vsc8584_csr_write(struct phy_device *phydev, u16 addr, u32 val) { @@ -1131,6 +1238,92 @@ return ret; } +/* Access LCPLL Cfg_2 */ +static void vsc8584_pll5g_cfg2_wr(struct phy_device *phydev, + bool disable_fsm) +{ + u32 rd_dat; + + rd_dat = vsc85xx_csr_read(phydev, MACRO_CTRL, PHY_S6G_PLL5G_CFG2); + rd_dat &= ~BIT(PHY_S6G_CFG2_FSM_DIS); + rd_dat |= (disable_fsm << PHY_S6G_CFG2_FSM_DIS); + vsc85xx_csr_write(phydev, MACRO_CTRL, PHY_S6G_PLL5G_CFG2, rd_dat); +} + +/* trigger a read to the spcified MCB */ +static int vsc8584_mcb_rd_trig(struct phy_device *phydev, + u32 mcb_reg_addr, u8 mcb_slave_num) +{ + u32 rd_dat = 0; + + /* read MCB */ + vsc85xx_csr_write(phydev, MACRO_CTRL, mcb_reg_addr, + (0x40000000 | (1L << mcb_slave_num))); + + return read_poll_timeout(vsc85xx_csr_read, rd_dat, + !(rd_dat & 0x40000000), + 4000, 200000, 0, + phydev, MACRO_CTRL, mcb_reg_addr); +} + +/* trigger a write to the spcified MCB */ +static int vsc8584_mcb_wr_trig(struct phy_device *phydev, + u32 mcb_reg_addr, + u8 mcb_slave_num) +{ + u32 rd_dat = 0; + + /* write back MCB */ + vsc85xx_csr_write(phydev, MACRO_CTRL, mcb_reg_addr, + (0x80000000 | (1L << mcb_slave_num))); + + return read_poll_timeout(vsc85xx_csr_read, rd_dat, + !(rd_dat & 0x80000000), + 4000, 200000, 0, + phydev, MACRO_CTRL, mcb_reg_addr); +} + +/* Sequence to Reset LCPLL for the VIPER and ELISE PHY */ +static int vsc8584_pll5g_reset(struct phy_device *phydev) +{ + bool dis_fsm; + int ret = 0; + + ret = vsc8584_mcb_rd_trig(phydev, 0x11, 0); + if (ret < 0) + goto done; + dis_fsm = 1; + + /* Reset LCPLL */ + vsc8584_pll5g_cfg2_wr(phydev, dis_fsm); + + /* write back LCPLL MCB */ + ret = vsc8584_mcb_wr_trig(phydev, 0x11, 0); + if (ret < 0) + goto done; + + /* 10 mSec sleep while LCPLL is hold in reset */ + usleep_range(10000, 20000); + + /* read LCPLL MCB into CSRs */ + ret = vsc8584_mcb_rd_trig(phydev, 0x11, 0); + if (ret < 0) + goto done; + dis_fsm = 0; + + /* Release the Reset of LCPLL */ + vsc8584_pll5g_cfg2_wr(phydev, dis_fsm); + + /* write back LCPLL MCB */ + ret = vsc8584_mcb_wr_trig(phydev, 0x11, 0); + if (ret < 0) + goto done; + + usleep_range(110000, 200000); +done: + return ret; +} + /* bus->mdio_lock should be locked when using this function */ static int vsc8584_config_pre_init(struct phy_device *phydev) { @@ -1379,6 +1572,11 @@ if (ret) goto err; + ret = phy_base_write(phydev, MSCC_EXT_PAGE_ACCESS, + MSCC_PHY_PAGE_STANDARD); + if (ret) + goto err; + if (!phy_interface_is_rgmii(phydev)) { val = PROC_CMD_MCB_ACCESS_MAC_CONF | PROC_CMD_RST_CONF_PORT | PROC_CMD_READ_MOD_WRITE_PORT; @@ -1546,8 +1744,16 @@ {0x16b2, 0x00007000}, {0x16b4, 0x00000814}, }; + struct device *dev = &phydev->mdio.dev; unsigned int i; u16 reg; + int ret; + + ret = vsc8584_pll5g_reset(phydev); + if (ret < 0) { + dev_err(dev, "failed LCPLL reset, ret: %d\n", ret); + return ret; + } phy_base_write(phydev, MSCC_EXT_PAGE_ACCESS, MSCC_PHY_PAGE_STANDARD); @@ -1582,101 +1788,6 @@ return 0; } -static u32 vsc85xx_csr_ctrl_phy_read(struct phy_device *phydev, - u32 target, u32 reg) -{ - unsigned long deadline; - u32 val, val_l, val_h; - - phy_base_write(phydev, MSCC_EXT_PAGE_ACCESS, MSCC_PHY_PAGE_CSR_CNTL); - - /* CSR registers are grouped under different Target IDs. - * 6-bit Target_ID is split between MSCC_EXT_PAGE_CSR_CNTL_20 and - * MSCC_EXT_PAGE_CSR_CNTL_19 registers. - * Target_ID[5:2] maps to bits[3:0] of MSCC_EXT_PAGE_CSR_CNTL_20 - * and Target_ID[1:0] maps to bits[13:12] of MSCC_EXT_PAGE_CSR_CNTL_19. - */ - - /* Setup the Target ID */ - phy_base_write(phydev, MSCC_EXT_PAGE_CSR_CNTL_20, - MSCC_PHY_CSR_CNTL_20_TARGET(target >> 2)); - - /* Trigger CSR Action - Read into the CSR's */ - phy_base_write(phydev, MSCC_EXT_PAGE_CSR_CNTL_19, - MSCC_PHY_CSR_CNTL_19_CMD | MSCC_PHY_CSR_CNTL_19_READ | - MSCC_PHY_CSR_CNTL_19_REG_ADDR(reg) | - MSCC_PHY_CSR_CNTL_19_TARGET(target & 0x3)); - - /* Wait for register access*/ - deadline = jiffies + msecs_to_jiffies(PROC_CMD_NCOMPLETED_TIMEOUT_MS); - do { - usleep_range(500, 1000); - val = phy_base_read(phydev, MSCC_EXT_PAGE_CSR_CNTL_19); - } while (time_before(jiffies, deadline) && - !(val & MSCC_PHY_CSR_CNTL_19_CMD)); - - if (!(val & MSCC_PHY_CSR_CNTL_19_CMD)) - return 0xffffffff; - - /* Read the Least Significant Word (LSW) (17) */ - val_l = phy_base_read(phydev, MSCC_EXT_PAGE_CSR_CNTL_17); - - /* Read the Most Significant Word (MSW) (18) */ - val_h = phy_base_read(phydev, MSCC_EXT_PAGE_CSR_CNTL_18); - - phy_base_write(phydev, MSCC_EXT_PAGE_ACCESS, - MSCC_PHY_PAGE_STANDARD); - - return (val_h << 16) | val_l; -} - -static int vsc85xx_csr_ctrl_phy_write(struct phy_device *phydev, - u32 target, u32 reg, u32 val) -{ - unsigned long deadline; - - phy_base_write(phydev, MSCC_EXT_PAGE_ACCESS, MSCC_PHY_PAGE_CSR_CNTL); - - /* CSR registers are grouped under different Target IDs. - * 6-bit Target_ID is split between MSCC_EXT_PAGE_CSR_CNTL_20 and - * MSCC_EXT_PAGE_CSR_CNTL_19 registers. - * Target_ID[5:2] maps to bits[3:0] of MSCC_EXT_PAGE_CSR_CNTL_20 - * and Target_ID[1:0] maps to bits[13:12] of MSCC_EXT_PAGE_CSR_CNTL_19. - */ - - /* Setup the Target ID */ - phy_base_write(phydev, MSCC_EXT_PAGE_CSR_CNTL_20, - MSCC_PHY_CSR_CNTL_20_TARGET(target >> 2)); - - /* Write the Least Significant Word (LSW) (17) */ - phy_base_write(phydev, MSCC_EXT_PAGE_CSR_CNTL_17, (u16)val); - - /* Write the Most Significant Word (MSW) (18) */ - phy_base_write(phydev, MSCC_EXT_PAGE_CSR_CNTL_18, (u16)(val >> 16)); - - /* Trigger CSR Action - Write into the CSR's */ - phy_base_write(phydev, MSCC_EXT_PAGE_CSR_CNTL_19, - MSCC_PHY_CSR_CNTL_19_CMD | - MSCC_PHY_CSR_CNTL_19_REG_ADDR(reg) | - MSCC_PHY_CSR_CNTL_19_TARGET(target & 0x3)); - - /* Wait for register access */ - deadline = jiffies + msecs_to_jiffies(PROC_CMD_NCOMPLETED_TIMEOUT_MS); - do { - usleep_range(500, 1000); - val = phy_base_read(phydev, MSCC_EXT_PAGE_CSR_CNTL_19); - } while (time_before(jiffies, deadline) && - !(val & MSCC_PHY_CSR_CNTL_19_CMD)); - - if (!(val & MSCC_PHY_CSR_CNTL_19_CMD)) - return -ETIMEDOUT; - - phy_base_write(phydev, MSCC_EXT_PAGE_ACCESS, - MSCC_PHY_PAGE_STANDARD); - - return 0; -} - static int __phy_write_mcb_s6g(struct phy_device *phydev, u32 reg, u8 mcb, u32 op) { @@ -1684,15 +1795,15 @@ u32 val; int ret; - ret = vsc85xx_csr_ctrl_phy_write(phydev, PHY_MCB_TARGET, reg, - op | (1 << mcb)); + ret = vsc85xx_csr_write(phydev, PHY_MCB_TARGET, reg, + op | (1 << mcb)); if (ret) return -EINVAL; deadline = jiffies + msecs_to_jiffies(PROC_CMD_NCOMPLETED_TIMEOUT_MS); do { usleep_range(500, 1000); - val = vsc85xx_csr_ctrl_phy_read(phydev, PHY_MCB_TARGET, reg); + val = vsc85xx_csr_read(phydev, PHY_MCB_TARGET, reg); if (val == 0xffffffff) return -EIO; @@ -1751,7 +1862,11 @@ val &= ~MAC_CFG_MASK; val |= MAC_CFG_QSGMII; ret = phy_base_write(phydev, MSCC_PHY_MAC_CFG_FASTLINK, val); + if (ret) + goto err; + ret = phy_base_write(phydev, MSCC_EXT_PAGE_ACCESS, + MSCC_PHY_PAGE_STANDARD); if (ret) goto err; @@ -1767,41 +1882,41 @@ /* lcpll mcb */ phy_update_mcb_s6g(phydev, PHY_S6G_LCPLL_CFG, 0); /* pll5gcfg0 */ - ret = vsc85xx_csr_ctrl_phy_write(phydev, PHY_MCB_TARGET, - PHY_S6G_PLL5G_CFG0, 0x7036f145); + ret = vsc85xx_csr_write(phydev, PHY_MCB_TARGET, + PHY_S6G_PLL5G_CFG0, 0x7036f145); if (ret) goto err; phy_commit_mcb_s6g(phydev, PHY_S6G_LCPLL_CFG, 0); /* pllcfg */ - ret = vsc85xx_csr_ctrl_phy_write(phydev, PHY_MCB_TARGET, - PHY_S6G_PLL_CFG, - (3 << PHY_S6G_PLL_ENA_OFFS_POS) | - (120 << PHY_S6G_PLL_FSM_CTRL_DATA_POS) - | (0 << PHY_S6G_PLL_FSM_ENA_POS)); + ret = vsc85xx_csr_write(phydev, PHY_MCB_TARGET, + PHY_S6G_PLL_CFG, + (3 << PHY_S6G_PLL_ENA_OFFS_POS) | + (120 << PHY_S6G_PLL_FSM_CTRL_DATA_POS) + | (0 << PHY_S6G_PLL_FSM_ENA_POS)); if (ret) goto err; /* commoncfg */ - ret = vsc85xx_csr_ctrl_phy_write(phydev, PHY_MCB_TARGET, - PHY_S6G_COMMON_CFG, - (0 << PHY_S6G_SYS_RST_POS) | - (0 << PHY_S6G_ENA_LANE_POS) | - (0 << PHY_S6G_ENA_LOOP_POS) | - (0 << PHY_S6G_QRATE_POS) | - (3 << PHY_S6G_IF_MODE_POS)); + ret = vsc85xx_csr_write(phydev, PHY_MCB_TARGET, + PHY_S6G_COMMON_CFG, + (0 << PHY_S6G_SYS_RST_POS) | + (0 << PHY_S6G_ENA_LANE_POS) | + (0 << PHY_S6G_ENA_LOOP_POS) | + (0 << PHY_S6G_QRATE_POS) | + (3 << PHY_S6G_IF_MODE_POS)); if (ret) goto err; /* misccfg */ - ret = vsc85xx_csr_ctrl_phy_write(phydev, PHY_MCB_TARGET, - PHY_S6G_MISC_CFG, 1); + ret = vsc85xx_csr_write(phydev, PHY_MCB_TARGET, + PHY_S6G_MISC_CFG, 1); if (ret) goto err; /* gpcfg */ - ret = vsc85xx_csr_ctrl_phy_write(phydev, PHY_MCB_TARGET, - PHY_S6G_GPC_CFG, 768); + ret = vsc85xx_csr_write(phydev, PHY_MCB_TARGET, + PHY_S6G_GPC_CFG, 768); if (ret) goto err; @@ -1812,8 +1927,8 @@ usleep_range(500, 1000); phy_update_mcb_s6g(phydev, PHY_MCB_S6G_CFG, 0); /* read 6G MCB into CSRs */ - reg = vsc85xx_csr_ctrl_phy_read(phydev, PHY_MCB_TARGET, - PHY_S6G_PLL_STATUS); + reg = vsc85xx_csr_read(phydev, PHY_MCB_TARGET, + PHY_S6G_PLL_STATUS); if (reg == 0xffffffff) { mutex_unlock(&phydev->mdio.bus->mdio_lock); return -EIO; @@ -1827,8 +1942,8 @@ } /* misccfg */ - ret = vsc85xx_csr_ctrl_phy_write(phydev, PHY_MCB_TARGET, - PHY_S6G_MISC_CFG, 0); + ret = vsc85xx_csr_write(phydev, PHY_MCB_TARGET, + PHY_S6G_MISC_CFG, 0); if (ret) goto err; @@ -1839,8 +1954,8 @@ usleep_range(500, 1000); phy_update_mcb_s6g(phydev, PHY_MCB_S6G_CFG, 0); /* read 6G MCB into CSRs */ - reg = vsc85xx_csr_ctrl_phy_read(phydev, PHY_MCB_TARGET, - PHY_S6G_IB_STATUS0); + reg = vsc85xx_csr_read(phydev, PHY_MCB_TARGET, + PHY_S6G_IB_STATUS0); if (reg == 0xffffffff) { mutex_unlock(&phydev->mdio.bus->mdio_lock); return -EIO; --- linux-azure-5.8-5.8.0.orig/drivers/net/phy/phy.c +++ linux-azure-5.8-5.8.0/drivers/net/phy/phy.c @@ -948,7 +948,7 @@ { struct net_device *dev = phydev->attached_dev; - if (!phy_is_started(phydev)) { + if (!phy_is_started(phydev) && phydev->state != PHY_DOWN) { WARN(1, "called from state %s\n", phy_state_to_str(phydev->state)); return; --- linux-azure-5.8-5.8.0.orig/drivers/net/phy/phy_device.c +++ linux-azure-5.8-5.8.0/drivers/net/phy/phy_device.c @@ -616,7 +616,9 @@ if (c45_ids) dev->c45_ids = *c45_ids; dev->irq = bus->irq[addr]; + dev_set_name(&mdiodev->dev, PHY_ID_FMT, bus->id, addr); + device_initialize(&mdiodev->dev); dev->state = PHY_DOWN; @@ -650,10 +652,8 @@ ret = phy_request_driver_module(dev, phy_id); } - if (!ret) { - device_initialize(&mdiodev->dev); - } else { - kfree(dev); + if (ret) { + put_device(&mdiodev->dev); dev = ERR_PTR(ret); } @@ -1092,10 +1092,6 @@ if (ret < 0) return ret; - ret = phy_disable_interrupts(phydev); - if (ret) - return ret; - if (phydev->drv->config_init) ret = phydev->drv->config_init(phydev); @@ -1372,6 +1368,10 @@ if (err) goto error; + err = phy_disable_interrupts(phydev); + if (err) + return err; + phy_resume(phydev); phy_led_triggers_register(phydev); @@ -1631,7 +1631,8 @@ phy_led_triggers_unregister(phydev); - module_put(phydev->mdio.dev.driver->owner); + if (phydev->mdio.dev.driver) + module_put(phydev->mdio.dev.driver->owner); /* If the device had no specific driver before (i.e. - it * was using the generic driver), we unbind the device --- linux-azure-5.8-5.8.0.orig/drivers/net/phy/realtek.c +++ linux-azure-5.8-5.8.0/drivers/net/phy/realtek.c @@ -1,6 +1,5 @@ // SPDX-License-Identifier: GPL-2.0+ -/* - * drivers/net/phy/realtek.c +/* drivers/net/phy/realtek.c * * Driver for Realtek PHYs * @@ -32,9 +31,9 @@ #define RTL8211F_TX_DELAY BIT(8) #define RTL8211F_RX_DELAY BIT(3) -#define RTL8211E_TX_DELAY BIT(1) -#define RTL8211E_RX_DELAY BIT(2) -#define RTL8211E_MODE_MII_GMII BIT(3) +#define RTL8211E_CTRL_DELAY BIT(13) +#define RTL8211E_TX_DELAY BIT(12) +#define RTL8211E_RX_DELAY BIT(11) #define RTL8201F_ISR 0x1e #define RTL8201F_IER 0x13 @@ -246,16 +245,16 @@ /* enable TX/RX delay for rgmii-* modes, and disable them for rgmii. */ switch (phydev->interface) { case PHY_INTERFACE_MODE_RGMII: - val = 0; + val = RTL8211E_CTRL_DELAY | 0; break; case PHY_INTERFACE_MODE_RGMII_ID: - val = RTL8211E_TX_DELAY | RTL8211E_RX_DELAY; + val = RTL8211E_CTRL_DELAY | RTL8211E_TX_DELAY | RTL8211E_RX_DELAY; break; case PHY_INTERFACE_MODE_RGMII_RXID: - val = RTL8211E_RX_DELAY; + val = RTL8211E_CTRL_DELAY | RTL8211E_RX_DELAY; break; case PHY_INTERFACE_MODE_RGMII_TXID: - val = RTL8211E_TX_DELAY; + val = RTL8211E_CTRL_DELAY | RTL8211E_TX_DELAY; break; default: /* the rest of the modes imply leaving delays as is. */ return 0; @@ -263,11 +262,12 @@ /* According to a sample driver there is a 0x1c config register on the * 0xa4 extension page (0x7) layout. It can be used to disable/enable - * the RX/TX delays otherwise controlled by RXDLY/TXDLY pins. It can - * also be used to customize the whole configuration register: - * 8:6 = PHY Address, 5:4 = Auto-Negotiation, 3 = Interface Mode Select, - * 2 = RX Delay, 1 = TX Delay, 0 = SELRGV (see original PHY datasheet - * for details). + * the RX/TX delays otherwise controlled by RXDLY/TXDLY pins. + * The configuration register definition: + * 14 = reserved + * 13 = Force Tx RX Delay controlled by bit12 bit11, + * 12 = RX Delay, 11 = TX Delay + * 10:0 = Test && debug settings reserved by realtek */ oldpage = phy_select_page(phydev, 0x7); if (oldpage < 0) @@ -277,7 +277,8 @@ if (ret) goto err_restore_page; - ret = __phy_modify(phydev, 0x1c, RTL8211E_TX_DELAY | RTL8211E_RX_DELAY, + ret = __phy_modify(phydev, 0x1c, RTL8211E_CTRL_DELAY + | RTL8211E_TX_DELAY | RTL8211E_RX_DELAY, val); err_restore_page: @@ -541,6 +542,8 @@ { PHY_ID_MATCH_EXACT(0x00008201), .name = "RTL8201CP Ethernet", + .read_page = rtl821x_read_page, + .write_page = rtl821x_write_page, }, { PHY_ID_MATCH_EXACT(0x001cc816), .name = "RTL8201F Fast Ethernet", --- linux-azure-5.8-5.8.0.orig/drivers/net/phy/sfp.c +++ linux-azure-5.8-5.8.0/drivers/net/phy/sfp.c @@ -2344,7 +2344,8 @@ continue; sfp->gpio_irq[i] = gpiod_to_irq(sfp->gpio[i]); - if (!sfp->gpio_irq[i]) { + if (sfp->gpio_irq[i] < 0) { + sfp->gpio_irq[i] = 0; sfp->need_poll = true; continue; } --- linux-azure-5.8-5.8.0.orig/drivers/net/ppp/ppp_async.c +++ linux-azure-5.8-5.8.0/drivers/net/ppp/ppp_async.c @@ -259,7 +259,8 @@ */ static ssize_t ppp_asynctty_read(struct tty_struct *tty, struct file *file, - unsigned char __user *buf, size_t count) + unsigned char *buf, size_t count, + void **cookie, unsigned long offset) { return -EAGAIN; } --- linux-azure-5.8-5.8.0.orig/drivers/net/ppp/ppp_synctty.c +++ linux-azure-5.8-5.8.0/drivers/net/ppp/ppp_synctty.c @@ -257,7 +257,8 @@ */ static ssize_t ppp_sync_read(struct tty_struct *tty, struct file *file, - unsigned char __user *buf, size_t count) + unsigned char *buf, size_t count, + void **cookie, unsigned long offset) { return -EAGAIN; } --- linux-azure-5.8-5.8.0.orig/drivers/net/team/team.c +++ linux-azure-5.8-5.8.0/drivers/net/team/team.c @@ -287,7 +287,7 @@ for (i--; i >= 0; i--) __team_option_inst_del_option(team, dst_opts[i]); - i = option_count - 1; + i = option_count; alloc_rollback: for (i--; i >= 0; i--) kfree(dst_opts[i]); @@ -991,7 +991,8 @@ unsigned int dst_release_flag = IFF_XMIT_DST_RELEASE | IFF_XMIT_DST_RELEASE_PERM; - list_for_each_entry(port, &team->port_list, list) { + rcu_read_lock(); + list_for_each_entry_rcu(port, &team->port_list, list) { vlan_features = netdev_increment_features(vlan_features, port->dev->vlan_features, TEAM_VLAN_FEATURES); @@ -1005,6 +1006,7 @@ if (port->dev->hard_header_len > max_hard_header_len) max_hard_header_len = port->dev->hard_header_len; } + rcu_read_unlock(); team->dev->vlan_features = vlan_features; team->dev->hw_enc_features = enc_features | NETIF_F_GSO_ENCAP_ALL | @@ -1020,9 +1022,7 @@ static void team_compute_features(struct team *team) { - mutex_lock(&team->lock); __team_compute_features(team); - mutex_unlock(&team->lock); netdev_change_features(team->dev); } @@ -2112,6 +2112,7 @@ dev->header_ops = port_dev->header_ops; dev->type = port_dev->type; dev->hard_header_len = port_dev->hard_header_len; + dev->needed_headroom = port_dev->needed_headroom; dev->addr_len = port_dev->addr_len; dev->mtu = port_dev->mtu; memcpy(dev->broadcast, port_dev->broadcast, port_dev->addr_len); --- linux-azure-5.8-5.8.0.orig/drivers/net/tun.c +++ linux-azure-5.8-5.8.0/drivers/net/tun.c @@ -1434,7 +1434,7 @@ int i; if (it->nr_segs > MAX_SKB_FRAGS + 1) - return ERR_PTR(-ENOMEM); + return ERR_PTR(-EMSGSIZE); local_bh_disable(); skb = napi_get_frags(&tfile->napi); @@ -1994,12 +1994,15 @@ struct tun_file *tfile = file->private_data; struct tun_struct *tun = tun_get(tfile); ssize_t result; + int noblock = 0; if (!tun) return -EBADFD; - result = tun_get_user(tun, tfile, NULL, from, - file->f_flags & O_NONBLOCK, false); + if ((file->f_flags & O_NONBLOCK) || (iocb->ki_flags & IOCB_NOWAIT)) + noblock = 1; + + result = tun_get_user(tun, tfile, NULL, from, noblock, false); tun_put(tun); return result; @@ -2218,10 +2221,15 @@ struct tun_file *tfile = file->private_data; struct tun_struct *tun = tun_get(tfile); ssize_t len = iov_iter_count(to), ret; + int noblock = 0; if (!tun) return -EBADFD; - ret = tun_do_read(tun, tfile, to, file->f_flags & O_NONBLOCK, NULL); + + if ((file->f_flags & O_NONBLOCK) || (iocb->ki_flags & IOCB_NOWAIT)) + noblock = 1; + + ret = tun_do_read(tun, tfile, to, noblock, NULL); ret = min_t(ssize_t, ret, len); if (ret > 0) iocb->ki_pos = ret; --- linux-azure-5.8-5.8.0.orig/drivers/net/usb/asix_common.c +++ linux-azure-5.8-5.8.0/drivers/net/usb/asix_common.c @@ -296,7 +296,7 @@ netdev_dbg(dev->net, "asix_get_phy_addr()\n"); - if (ret < 0) { + if (ret < 2) { netdev_err(dev->net, "Error reading PHYID register: %02x\n", ret); goto out; } --- linux-azure-5.8-5.8.0.orig/drivers/net/usb/ax88179_178a.c +++ linux-azure-5.8-5.8.0/drivers/net/usb/ax88179_178a.c @@ -1823,6 +1823,7 @@ .status = ax88179_status, .link_reset = ax88179_link_reset, .reset = ax88179_reset, + .stop = ax88179_stop, .flags = FLAG_ETHER | FLAG_FRAMING_AX, .rx_fixup = ax88179_rx_fixup, .tx_fixup = ax88179_tx_fixup, --- linux-azure-5.8-5.8.0.orig/drivers/net/usb/cdc_ether.c +++ linux-azure-5.8-5.8.0/drivers/net/usb/cdc_ether.c @@ -794,6 +794,13 @@ .driver_info = 0, }, +/* Lenovo Powered USB-C Travel Hub (4X90S92381, based on Realtek RTL8153) */ +{ + USB_DEVICE_AND_INTERFACE_INFO(LENOVO_VENDOR_ID, 0x721e, USB_CLASS_COMM, + USB_CDC_SUBCLASS_ETHERNET, USB_CDC_PROTO_NONE), + .driver_info = 0, +}, + /* ThinkPad USB-C Dock Gen 2 (based on Realtek RTL8153) */ { USB_DEVICE_AND_INTERFACE_INFO(LENOVO_VENDOR_ID, 0xa387, USB_CLASS_COMM, --- linux-azure-5.8-5.8.0.orig/drivers/net/usb/cdc_ncm.c +++ linux-azure-5.8-5.8.0/drivers/net/usb/cdc_ncm.c @@ -1198,7 +1198,10 @@ * accordingly. Otherwise, we should check here. */ if (ctx->drvflags & CDC_NCM_FLAG_NDP_TO_END) - delayed_ndp_size = ALIGN(ctx->max_ndp_size, ctx->tx_ndp_modulus); + delayed_ndp_size = ctx->max_ndp_size + + max_t(u32, + ctx->tx_ndp_modulus, + ctx->tx_modulus + ctx->tx_remainder) - 1; else delayed_ndp_size = 0; @@ -1409,7 +1412,8 @@ if (!(dev->driver_info->flags & FLAG_SEND_ZLP) && skb_out->len > ctx->min_tx_pkt) { padding_count = ctx->tx_curr_size - skb_out->len; - skb_put_zero(skb_out, padding_count); + if (!WARN_ON(padding_count > ctx->tx_curr_size)) + skb_put_zero(skb_out, padding_count); } else if (skb_out->len < ctx->tx_curr_size && (skb_out->len % dev->maxpacket) == 0) { skb_put_u8(skb_out, 0); /* force short packet */ @@ -1862,9 +1866,6 @@ * USB_CDC_NOTIFY_NETWORK_CONNECTION notification shall be * sent by device after USB_CDC_NOTIFY_SPEED_CHANGE. */ - netif_info(dev, link, dev->net, - "network connection: %sconnected\n", - !!event->wValue ? "" : "dis"); usbnet_link_change(dev, !!event->wValue, 0); break; --- linux-azure-5.8-5.8.0.orig/drivers/net/usb/dm9601.c +++ linux-azure-5.8-5.8.0/drivers/net/usb/dm9601.c @@ -625,6 +625,10 @@ USB_DEVICE(0x0a46, 0x1269), /* DM9621A USB to Fast Ethernet Adapter */ .driver_info = (unsigned long)&dm9601_info, }, + { + USB_DEVICE(0x0586, 0x3427), /* ZyXEL Keenetic Plus DSL xDSL modem */ + .driver_info = (unsigned long)&dm9601_info, + }, {}, // END }; --- linux-azure-5.8-5.8.0.orig/drivers/net/usb/ipheth.c +++ linux-azure-5.8-5.8.0/drivers/net/usb/ipheth.c @@ -59,7 +59,7 @@ #define IPHETH_USBINTF_SUBCLASS 253 #define IPHETH_USBINTF_PROTO 1 -#define IPHETH_BUF_SIZE 1516 +#define IPHETH_BUF_SIZE 1514 #define IPHETH_IP_ALIGN 2 /* padding at front of URB */ #define IPHETH_TX_TIMEOUT (5 * HZ) --- linux-azure-5.8-5.8.0.orig/drivers/net/usb/qmi_wwan.c +++ linux-azure-5.8-5.8.0/drivers/net/usb/qmi_wwan.c @@ -1058,6 +1058,7 @@ {QMI_MATCH_FF_FF_FF(0x2c7c, 0x0125)}, /* Quectel EC25, EC20 R2.0 Mini PCIe */ {QMI_MATCH_FF_FF_FF(0x2c7c, 0x0306)}, /* Quectel EP06/EG06/EM06 */ {QMI_MATCH_FF_FF_FF(0x2c7c, 0x0512)}, /* Quectel EG12/EM12 */ + {QMI_MATCH_FF_FF_FF(0x2c7c, 0x0620)}, /* Quectel EM160R-GL */ {QMI_MATCH_FF_FF_FF(0x2c7c, 0x0800)}, /* Quectel RM500Q-GL */ /* 3. Combined interface devices matching on interface number */ @@ -1092,7 +1093,7 @@ {QMI_FIXED_INTF(0x05c6, 0x9011, 4)}, {QMI_FIXED_INTF(0x05c6, 0x9021, 1)}, {QMI_FIXED_INTF(0x05c6, 0x9022, 2)}, - {QMI_FIXED_INTF(0x05c6, 0x9025, 4)}, /* Alcatel-sbell ASB TL131 TDD LTE (China Mobile) */ + {QMI_QUIRK_SET_DTR(0x05c6, 0x9025, 4)}, /* Alcatel-sbell ASB TL131 TDD LTE (China Mobile) */ {QMI_FIXED_INTF(0x05c6, 0x9026, 3)}, {QMI_FIXED_INTF(0x05c6, 0x902e, 5)}, {QMI_FIXED_INTF(0x05c6, 0x9031, 5)}, @@ -1331,6 +1332,7 @@ {QMI_FIXED_INTF(0x1bc7, 0x1101, 3)}, /* Telit ME910 dual modem */ {QMI_FIXED_INTF(0x1bc7, 0x1200, 5)}, /* Telit LE920 */ {QMI_QUIRK_SET_DTR(0x1bc7, 0x1201, 2)}, /* Telit LE920, LE920A4 */ + {QMI_QUIRK_SET_DTR(0x1bc7, 0x1230, 2)}, /* Telit LE910Cx */ {QMI_QUIRK_SET_DTR(0x1bc7, 0x1260, 2)}, /* Telit LE910Cx */ {QMI_QUIRK_SET_DTR(0x1bc7, 0x1261, 2)}, /* Telit LE910Cx */ {QMI_QUIRK_SET_DTR(0x1bc7, 0x1900, 1)}, /* Telit LN940 series */ @@ -1345,12 +1347,14 @@ {QMI_FIXED_INTF(0x0b3c, 0xc00a, 6)}, /* Olivetti Olicard 160 */ {QMI_FIXED_INTF(0x0b3c, 0xc00b, 4)}, /* Olivetti Olicard 500 */ {QMI_FIXED_INTF(0x1e2d, 0x0060, 4)}, /* Cinterion PLxx */ + {QMI_QUIRK_SET_DTR(0x1e2d, 0x006f, 8)}, /* Cinterion PLS83/PLS63 */ {QMI_FIXED_INTF(0x1e2d, 0x0053, 4)}, /* Cinterion PHxx,PXxx */ {QMI_FIXED_INTF(0x1e2d, 0x0063, 10)}, /* Cinterion ALASxx (1 RmNet) */ {QMI_FIXED_INTF(0x1e2d, 0x0082, 4)}, /* Cinterion PHxx,PXxx (2 RmNet) */ {QMI_FIXED_INTF(0x1e2d, 0x0082, 5)}, /* Cinterion PHxx,PXxx (2 RmNet) */ {QMI_FIXED_INTF(0x1e2d, 0x0083, 4)}, /* Cinterion PHxx,PXxx (1 RmNet + USB Audio)*/ {QMI_QUIRK_SET_DTR(0x1e2d, 0x00b0, 4)}, /* Cinterion CLS8 */ + {QMI_FIXED_INTF(0x1e2d, 0x00b7, 0)}, /* Cinterion MV31 RmNet */ {QMI_FIXED_INTF(0x413c, 0x81a2, 8)}, /* Dell Wireless 5806 Gobi(TM) 4G LTE Mobile Broadband Card */ {QMI_FIXED_INTF(0x413c, 0x81a3, 8)}, /* Dell Wireless 5570 HSPA+ (42Mbps) Mobile Broadband Card */ {QMI_FIXED_INTF(0x413c, 0x81a4, 8)}, /* Dell Wireless 5570e HSPA+ (42Mbps) Mobile Broadband Card */ @@ -1375,6 +1379,7 @@ {QMI_QUIRK_SET_DTR(0x2cb7, 0x0104, 4)}, /* Fibocom NL678 series */ {QMI_FIXED_INTF(0x0489, 0xe0b4, 0)}, /* Foxconn T77W968 LTE */ {QMI_FIXED_INTF(0x0489, 0xe0b5, 0)}, /* Foxconn T77W968 LTE with eSIM support*/ + {QMI_FIXED_INTF(0x2692, 0x9025, 4)}, /* Cellient MPL200 (rebranded Qualcomm 05c6:9025) */ /* 4. Gobi 1000 devices */ {QMI_GOBI1K_DEVICE(0x05c6, 0x9212)}, /* Acer Gobi Modem Device */ --- linux-azure-5.8-5.8.0.orig/drivers/net/usb/r8152.c +++ linux-azure-5.8-5.8.0/drivers/net/usb/r8152.c @@ -1504,7 +1504,7 @@ sa->sa_family = dev->type; - ret = eth_platform_get_mac_address(&dev->dev, sa->sa_data); + ret = eth_platform_get_mac_address(&tp->udev->dev, sa->sa_data); if (ret < 0) { if (tp->version == RTL_VER_01) { ret = pla_ocp_read(tp, PLA_IDR, 8, sa->sa_data); @@ -6893,6 +6893,7 @@ {REALTEK_USB_DEVICE(VENDOR_ID_LENOVO, 0x7205)}, {REALTEK_USB_DEVICE(VENDOR_ID_LENOVO, 0x720c)}, {REALTEK_USB_DEVICE(VENDOR_ID_LENOVO, 0x7214)}, + {REALTEK_USB_DEVICE(VENDOR_ID_LENOVO, 0x721e)}, {REALTEK_USB_DEVICE(VENDOR_ID_LENOVO, 0xa387)}, {REALTEK_USB_DEVICE(VENDOR_ID_LINKSYS, 0x0041)}, {REALTEK_USB_DEVICE(VENDOR_ID_NVIDIA, 0x09ff)}, --- linux-azure-5.8-5.8.0.orig/drivers/net/usb/rndis_host.c +++ linux-azure-5.8-5.8.0/drivers/net/usb/rndis_host.c @@ -201,7 +201,7 @@ dev_dbg(&info->control->dev, "rndis response error, code %d\n", retval); } - msleep(20); + msleep(40); } dev_dbg(&info->control->dev, "rndis response timeout\n"); return -ETIMEDOUT; @@ -387,7 +387,7 @@ reply_len = sizeof *phym; retval = rndis_query(dev, intf, u.buf, RNDIS_OID_GEN_PHYSICAL_MEDIUM, - 0, (void **) &phym, &reply_len); + reply_len, (void **)&phym, &reply_len); if (retval != 0 || !phym) { /* OID is optional so don't fail here. */ phym_unspec = cpu_to_le32(RNDIS_PHYSICAL_MEDIUM_UNSPECIFIED); --- linux-azure-5.8-5.8.0.orig/drivers/net/usb/rtl8150.c +++ linux-azure-5.8-5.8.0/drivers/net/usb/rtl8150.c @@ -274,12 +274,20 @@ return 1; } -static inline void set_ethernet_addr(rtl8150_t * dev) +static void set_ethernet_addr(rtl8150_t *dev) { - u8 node_id[6]; + u8 node_id[ETH_ALEN]; + int ret; - get_registers(dev, IDR, sizeof(node_id), node_id); - memcpy(dev->netdev->dev_addr, node_id, sizeof(node_id)); + ret = get_registers(dev, IDR, sizeof(node_id), node_id); + + if (ret == sizeof(node_id)) { + ether_addr_copy(dev->netdev->dev_addr, node_id); + } else { + eth_hw_addr_random(dev->netdev); + netdev_notice(dev->netdev, "Assigned a random MAC address: %pM\n", + dev->netdev->dev_addr); + } } static int rtl8150_set_mac_address(struct net_device *netdev, void *p) --- linux-azure-5.8-5.8.0.orig/drivers/net/virtio_net.c +++ linux-azure-5.8-5.8.0/drivers/net/virtio_net.c @@ -63,6 +63,11 @@ VIRTIO_NET_F_GUEST_CSUM }; +#define GUEST_OFFLOAD_LRO_MASK ((1ULL << VIRTIO_NET_F_GUEST_TSO4) | \ + (1ULL << VIRTIO_NET_F_GUEST_TSO6) | \ + (1ULL << VIRTIO_NET_F_GUEST_ECN) | \ + (1ULL << VIRTIO_NET_F_GUEST_UFO)) + struct virtnet_stat_desc { char desc[ETH_GSTRING_LEN]; size_t offset; @@ -2088,14 +2093,16 @@ get_online_cpus(); err = _virtnet_set_queues(vi, queue_pairs); - if (!err) { - netif_set_real_num_tx_queues(dev, queue_pairs); - netif_set_real_num_rx_queues(dev, queue_pairs); - - virtnet_set_affinity(vi); + if (err) { + put_online_cpus(); + goto err; } + virtnet_set_affinity(vi); put_online_cpus(); + netif_set_real_num_tx_queues(dev, queue_pairs); + netif_set_real_num_rx_queues(dev, queue_pairs); + err: return err; } @@ -2547,7 +2554,8 @@ if (features & NETIF_F_LRO) offloads = vi->guest_offloads_capable; else - offloads = 0; + offloads = vi->guest_offloads_capable & + ~GUEST_OFFLOAD_LRO_MASK; err = virtnet_set_guest_offloads(vi, offloads); if (err) @@ -3083,6 +3091,7 @@ dev_err(&vdev->dev, "device MTU appears to have changed it is now %d < %d", mtu, dev->min_mtu); + err = -EINVAL; goto free; } --- linux-azure-5.8-5.8.0.orig/drivers/net/vmxnet3/vmxnet3_drv.c +++ linux-azure-5.8-5.8.0/drivers/net/vmxnet3/vmxnet3_drv.c @@ -886,7 +886,8 @@ switch (protocol) { case IPPROTO_TCP: - ctx->l4_hdr_size = tcp_hdrlen(skb); + ctx->l4_hdr_size = skb->encapsulation ? inner_tcp_hdrlen(skb) : + tcp_hdrlen(skb); break; case IPPROTO_UDP: ctx->l4_hdr_size = sizeof(struct udphdr); @@ -1031,7 +1032,6 @@ /* Use temporary descriptor to avoid touching bits multiple times */ union Vmxnet3_GenericDesc tempTxDesc; #endif - struct udphdr *udph; count = txd_estimate(skb); @@ -1134,8 +1134,7 @@ gdesc->txd.om = VMXNET3_OM_ENCAP; gdesc->txd.msscof = ctx.mss; - udph = udp_hdr(skb); - if (udph->check) + if (skb_shinfo(skb)->gso_type & SKB_GSO_UDP_TUNNEL_CSUM) gdesc->txd.oco = 1; } else { gdesc->txd.hlen = ctx.l4_offset + ctx.l4_hdr_size; @@ -3370,6 +3369,7 @@ .ndo_change_mtu = vmxnet3_change_mtu, .ndo_fix_features = vmxnet3_fix_features, .ndo_set_features = vmxnet3_set_features, + .ndo_features_check = vmxnet3_features_check, .ndo_get_stats64 = vmxnet3_get_stats64, .ndo_tx_timeout = vmxnet3_tx_timeout, .ndo_set_rx_mode = vmxnet3_set_mc, --- linux-azure-5.8-5.8.0.orig/drivers/net/vmxnet3/vmxnet3_ethtool.c +++ linux-azure-5.8-5.8.0/drivers/net/vmxnet3/vmxnet3_ethtool.c @@ -267,6 +267,34 @@ return features; } +netdev_features_t vmxnet3_features_check(struct sk_buff *skb, + struct net_device *netdev, + netdev_features_t features) +{ + struct vmxnet3_adapter *adapter = netdev_priv(netdev); + + /* Validate if the tunneled packet is being offloaded by the device */ + if (VMXNET3_VERSION_GE_4(adapter) && + skb->encapsulation && skb->ip_summed == CHECKSUM_PARTIAL) { + u8 l4_proto = 0; + + switch (vlan_get_protocol(skb)) { + case htons(ETH_P_IP): + l4_proto = ip_hdr(skb)->protocol; + break; + case htons(ETH_P_IPV6): + l4_proto = ipv6_hdr(skb)->nexthdr; + break; + default: + return features & ~(NETIF_F_CSUM_MASK | NETIF_F_GSO_MASK); + } + + if (l4_proto != IPPROTO_UDP) + return features & ~(NETIF_F_CSUM_MASK | NETIF_F_GSO_MASK); + } + return features; +} + static void vmxnet3_enable_encap_offloads(struct net_device *netdev) { struct vmxnet3_adapter *adapter = netdev_priv(netdev); --- linux-azure-5.8-5.8.0.orig/drivers/net/vmxnet3/vmxnet3_int.h +++ linux-azure-5.8-5.8.0/drivers/net/vmxnet3/vmxnet3_int.h @@ -470,6 +470,10 @@ netdev_features_t vmxnet3_fix_features(struct net_device *netdev, netdev_features_t features); +netdev_features_t +vmxnet3_features_check(struct sk_buff *skb, + struct net_device *netdev, netdev_features_t features); + int vmxnet3_set_features(struct net_device *netdev, netdev_features_t features); --- linux-azure-5.8-5.8.0.orig/drivers/net/vrf.c +++ linux-azure-5.8-5.8.0/drivers/net/vrf.c @@ -332,8 +332,7 @@ return ret; } -static int vrf_finish_direct(struct net *net, struct sock *sk, - struct sk_buff *skb) +static void vrf_finish_direct(struct sk_buff *skb) { struct net_device *vrf_dev = skb->dev; @@ -352,7 +351,8 @@ skb_pull(skb, ETH_HLEN); } - return 1; + /* reset skb device */ + nf_reset_ct(skb); } #if IS_ENABLED(CONFIG_IPV6) @@ -431,15 +431,41 @@ return skb; } +static int vrf_output6_direct_finish(struct net *net, struct sock *sk, + struct sk_buff *skb) +{ + vrf_finish_direct(skb); + + return vrf_ip6_local_out(net, sk, skb); +} + static int vrf_output6_direct(struct net *net, struct sock *sk, struct sk_buff *skb) { + int err = 1; + skb->protocol = htons(ETH_P_IPV6); - return NF_HOOK_COND(NFPROTO_IPV6, NF_INET_POST_ROUTING, - net, sk, skb, NULL, skb->dev, - vrf_finish_direct, - !(IPCB(skb)->flags & IPSKB_REROUTED)); + if (!(IPCB(skb)->flags & IPSKB_REROUTED)) + err = nf_hook(NFPROTO_IPV6, NF_INET_POST_ROUTING, net, sk, skb, + NULL, skb->dev, vrf_output6_direct_finish); + + if (likely(err == 1)) + vrf_finish_direct(skb); + + return err; +} + +static int vrf_ip6_out_direct_finish(struct net *net, struct sock *sk, + struct sk_buff *skb) +{ + int err; + + err = vrf_output6_direct(net, sk, skb); + if (likely(err == 1)) + err = vrf_ip6_local_out(net, sk, skb); + + return err; } static struct sk_buff *vrf_ip6_out_direct(struct net_device *vrf_dev, @@ -452,18 +478,15 @@ skb->dev = vrf_dev; err = nf_hook(NFPROTO_IPV6, NF_INET_LOCAL_OUT, net, sk, - skb, NULL, vrf_dev, vrf_output6_direct); + skb, NULL, vrf_dev, vrf_ip6_out_direct_finish); if (likely(err == 1)) err = vrf_output6_direct(net, sk, skb); - /* reset skb device */ if (likely(err == 1)) - nf_reset_ct(skb); - else - skb = NULL; + return skb; - return skb; + return NULL; } static struct sk_buff *vrf_ip6_out(struct net_device *vrf_dev, @@ -643,15 +666,41 @@ return skb; } +static int vrf_output_direct_finish(struct net *net, struct sock *sk, + struct sk_buff *skb) +{ + vrf_finish_direct(skb); + + return vrf_ip_local_out(net, sk, skb); +} + static int vrf_output_direct(struct net *net, struct sock *sk, struct sk_buff *skb) { + int err = 1; + skb->protocol = htons(ETH_P_IP); - return NF_HOOK_COND(NFPROTO_IPV4, NF_INET_POST_ROUTING, - net, sk, skb, NULL, skb->dev, - vrf_finish_direct, - !(IPCB(skb)->flags & IPSKB_REROUTED)); + if (!(IPCB(skb)->flags & IPSKB_REROUTED)) + err = nf_hook(NFPROTO_IPV4, NF_INET_POST_ROUTING, net, sk, skb, + NULL, skb->dev, vrf_output_direct_finish); + + if (likely(err == 1)) + vrf_finish_direct(skb); + + return err; +} + +static int vrf_ip_out_direct_finish(struct net *net, struct sock *sk, + struct sk_buff *skb) +{ + int err; + + err = vrf_output_direct(net, sk, skb); + if (likely(err == 1)) + err = vrf_ip_local_out(net, sk, skb); + + return err; } static struct sk_buff *vrf_ip_out_direct(struct net_device *vrf_dev, @@ -664,18 +713,15 @@ skb->dev = vrf_dev; err = nf_hook(NFPROTO_IPV4, NF_INET_LOCAL_OUT, net, sk, - skb, NULL, vrf_dev, vrf_output_direct); + skb, NULL, vrf_dev, vrf_ip_out_direct_finish); if (likely(err == 1)) err = vrf_output_direct(net, sk, skb); - /* reset skb device */ if (likely(err == 1)) - nf_reset_ct(skb); - else - skb = NULL; + return skb; - return skb; + return NULL; } static struct sk_buff *vrf_ip_out(struct net_device *vrf_dev, @@ -993,11 +1039,17 @@ int orig_iif = skb->skb_iif; bool need_strict = rt6_need_strict(&ipv6_hdr(skb)->daddr); bool is_ndisc = ipv6_ndisc_frame(skb); + bool is_ll_src; /* loopback, multicast & non-ND link-local traffic; do not push through - * packet taps again. Reset pkt_type for upper layers to process skb + * packet taps again. Reset pkt_type for upper layers to process skb. + * for packets with lladdr src, however, skip so that the dst can be + * determine at input using original ifindex in the case that daddr + * needs strict */ - if (skb->pkt_type == PACKET_LOOPBACK || (need_strict && !is_ndisc)) { + is_ll_src = ipv6_addr_type(&ipv6_hdr(skb)->saddr) & IPV6_ADDR_LINKLOCAL; + if (skb->pkt_type == PACKET_LOOPBACK || + (need_strict && !is_ndisc && !is_ll_src)) { skb->dev = vrf_dev; skb->skb_iif = vrf_dev->ifindex; IP6CB(skb)->flags |= IP6SKB_L3SLAVE; --- linux-azure-5.8-5.8.0.orig/drivers/net/vxlan.c +++ linux-azure-5.8-5.8.0/drivers/net/vxlan.c @@ -13,6 +13,7 @@ #include #include #include +#include #include #include #include @@ -95,6 +96,167 @@ ip_tunnel_collect_metadata(); } +static struct ip_fan_map *vxlan_fan_find_map(struct vxlan_dev *vxlan, __be32 daddr) +{ + struct ip_fan_map *fan_map; + + rcu_read_lock(); + list_for_each_entry_rcu(fan_map, &vxlan->fan.fan_maps, list) { + if (fan_map->overlay == + (daddr & inet_make_mask(fan_map->overlay_prefix))) { + rcu_read_unlock(); + return fan_map; + } + } + rcu_read_unlock(); + + return NULL; +} + +static void vxlan_fan_flush_map(struct vxlan_dev *vxlan) +{ + struct ip_fan_map *fan_map; + + list_for_each_entry_rcu(fan_map, &vxlan->fan.fan_maps, list) { + list_del_rcu(&fan_map->list); + kfree_rcu(fan_map, rcu); + } +} + +static int vxlan_fan_del_map(struct vxlan_dev *vxlan, __be32 overlay) +{ + struct ip_fan_map *fan_map; + + fan_map = vxlan_fan_find_map(vxlan, overlay); + if (!fan_map) + return -ENOENT; + + list_del_rcu(&fan_map->list); + kfree_rcu(fan_map, rcu); + + return 0; +} + +static int vxlan_fan_add_map(struct vxlan_dev *vxlan, struct ifla_fan_map *map) +{ + __be32 overlay_mask, underlay_mask; + struct ip_fan_map *fan_map; + + overlay_mask = inet_make_mask(map->overlay_prefix); + underlay_mask = inet_make_mask(map->underlay_prefix); + + netdev_dbg(vxlan->dev, "vfam: map: o %x/%d u %x/%d om %x um %x\n", + map->overlay, map->overlay_prefix, + map->underlay, map->underlay_prefix, + overlay_mask, underlay_mask); + + if ((map->overlay & ~overlay_mask) || (map->underlay & ~underlay_mask)) + return -EINVAL; + + if (!(map->overlay & overlay_mask) && (map->underlay & underlay_mask)) + return -EINVAL; + + /* Special case: overlay 0 and underlay 0: flush all mappings */ + if (!map->overlay && !map->underlay) { + vxlan_fan_flush_map(vxlan); + return 0; + } + + /* Special case: overlay set and underlay 0: clear map for overlay */ + if (!map->underlay) + return vxlan_fan_del_map(vxlan, map->overlay); + + if (vxlan_fan_find_map(vxlan, map->overlay)) + return -EEXIST; + + fan_map = kmalloc(sizeof(*fan_map), GFP_KERNEL); + fan_map->underlay = map->underlay; + fan_map->overlay = map->overlay; + fan_map->underlay_prefix = map->underlay_prefix; + fan_map->overlay_mask = ntohl(overlay_mask); + fan_map->overlay_prefix = map->overlay_prefix; + + list_add_tail_rcu(&fan_map->list, &vxlan->fan.fan_maps); + + return 0; +} + +static int vxlan_parse_fan_map(struct nlattr *data[], struct vxlan_dev *vxlan) +{ + struct ifla_fan_map *map; + struct nlattr *attr; + int rem, rv; + + nla_for_each_nested(attr, data[IFLA_IPTUN_FAN_MAP], rem) { + map = nla_data(attr); + rv = vxlan_fan_add_map(vxlan, map); + if (rv) + return rv; + } + + return 0; +} + +static int vxlan_fan_build_rdst(struct vxlan_dev *vxlan, struct sk_buff *skb, + struct vxlan_rdst *fan_rdst) +{ + struct ip_fan_map *f_map; + union vxlan_addr *va; + u32 daddr, underlay; + struct arphdr *arp; + void *arp_ptr; + struct ethhdr *eth; + struct iphdr *iph; + + eth = eth_hdr(skb); + switch (eth->h_proto) { + case htons(ETH_P_IP): + iph = ip_hdr(skb); + if (!iph) + return -EINVAL; + daddr = iph->daddr; + break; + case htons(ETH_P_ARP): + arp = arp_hdr(skb); + if (!arp) + return -EINVAL; + arp_ptr = arp + 1; + netdev_dbg(vxlan->dev, + "vfbr: arp sha %pM sip %pI4 tha %pM tip %pI4\n", + arp_ptr, arp_ptr + skb->dev->addr_len, + arp_ptr + skb->dev->addr_len + 4, + arp_ptr + (skb->dev->addr_len * 2) + 4); + arp_ptr += (skb->dev->addr_len * 2) + 4; + memcpy(&daddr, arp_ptr, 4); + break; + default: + netdev_dbg(vxlan->dev, "vfbr: unknown eth p %x\n", eth->h_proto); + return -EINVAL; + } + + f_map = vxlan_fan_find_map(vxlan, daddr); + if (!f_map) + return -EINVAL; + + daddr = ntohl(daddr); + underlay = ntohl(f_map->underlay); + if (!underlay) + return -EINVAL; + + memset(fan_rdst, 0, sizeof(*fan_rdst)); + va = &fan_rdst->remote_ip; + va->sa.sa_family = AF_INET; + fan_rdst->remote_vni = vxlan->default_dst.remote_vni; + va->sin.sin_addr.s_addr = htonl(underlay | + ((daddr & ~f_map->overlay_mask) >> + (32 - f_map->overlay_prefix - + (32 - f_map->underlay_prefix)))); + netdev_dbg(vxlan->dev, "vfbr: daddr %x ul %x dst %x\n", + daddr, underlay, va->sin.sin_addr.s_addr); + + return 0; +} + #if IS_ENABLED(CONFIG_IPV6) static inline bool vxlan_addr_equal(const union vxlan_addr *a, const union vxlan_addr *b) @@ -2697,6 +2859,13 @@ goto tx_error; } + if (fan_has_map(&vxlan->fan) && rt->rt_flags & RTCF_LOCAL) { + netdev_dbg(dev, "discard fan to localhost %pI4\n", + &dst->sin.sin_addr.s_addr); + ip_rt_put(rt); + goto tx_free; + } + if (!info) { /* Bypass encapsulation if the destination is local */ err = encap_bypass_if_local(skb, dev, vxlan, dst, @@ -2722,7 +2891,7 @@ ndst = &rt->dst; skb_tunnel_check_pmtu(skb, ndst, VXLAN_HEADROOM); - tos = ip_tunnel_ecn_encap(RT_TOS(tos), old_iph, skb); + tos = ip_tunnel_ecn_encap(tos, old_iph, skb); ttl = ttl ? : ip4_dst_hoplimit(&rt->dst); err = vxlan_build_skb(skb, ndst, sizeof(struct iphdr), vni, md, flags, udp_sum); @@ -2762,7 +2931,7 @@ skb_tunnel_check_pmtu(skb, ndst, VXLAN6_HEADROOM); - tos = ip_tunnel_ecn_encap(RT_TOS(tos), old_iph, skb); + tos = ip_tunnel_ecn_encap(tos, old_iph, skb); ttl = ttl ? : ip6_dst_hoplimit(ndst); skb_scrub_packet(skb, xnet); err = vxlan_build_skb(skb, ndst, sizeof(struct ipv6hdr), @@ -2793,6 +2962,7 @@ dev->stats.tx_carrier_errors++; dst_release(ndst); dev->stats.tx_errors++; +tx_free: kfree_skb(skb); } @@ -2879,6 +3049,20 @@ #endif } + if (fan_has_map(&vxlan->fan)) { + struct vxlan_rdst fan_rdst; + + netdev_dbg(vxlan->dev, "vxlan_xmit p %x d %pM\n", + eth->h_proto, eth->h_dest); + if (vxlan_fan_build_rdst(vxlan, skb, &fan_rdst)) { + dev->stats.tx_dropped++; + kfree_skb(skb); + return NETDEV_TX_OK; + } + vxlan_xmit_one(skb, dev, vni, &fan_rdst, 0); + return NETDEV_TX_OK; + } + eth = eth_hdr(skb); f = vxlan_find_mac(vxlan, eth->h_dest, vni); did_rsc = false; @@ -3275,6 +3459,8 @@ spin_lock_init(&vxlan->hash_lock[h]); INIT_HLIST_HEAD(&vxlan->fdb_head[h]); } + + INIT_LIST_HEAD(&vxlan->fan.fan_maps); } static void vxlan_ether_setup(struct net_device *dev) @@ -3767,6 +3953,9 @@ dev->gso_max_segs = lowerdev->gso_max_segs; needed_headroom = lowerdev->hard_header_len; + needed_headroom += lowerdev->needed_headroom; + + dev->needed_tailroom = lowerdev->needed_tailroom; max_mtu = lowerdev->mtu - (use_ipv6 ? VXLAN6_HEADROOM : VXLAN_HEADROOM); @@ -3846,8 +4035,10 @@ if (dst->remote_ifindex) { remote_dev = __dev_get_by_index(net, dst->remote_ifindex); - if (!remote_dev) + if (!remote_dev) { + err = -ENODEV; goto errout; + } err = netdev_upper_dev_link(remote_dev, dev, extack); if (err) @@ -3966,6 +4157,12 @@ conf->remote_ip.sa.sa_family = AF_INET6; } + if (data[IFLA_VXLAN_FAN_MAP]) { + err = vxlan_parse_fan_map(data, vxlan); + if (err) + return err; + } + if (data[IFLA_VXLAN_LOCAL]) { if (changelink && (conf->saddr.sa.sa_family != AF_INET)) { NL_SET_ERR_MSG_ATTR(extack, tb[IFLA_VXLAN_LOCAL], "New local address family does not match old"); @@ -4300,6 +4497,7 @@ nla_total_size(sizeof(__u8)) + /* IFLA_VXLAN_UDP_ZERO_CSUM6_RX */ nla_total_size(sizeof(__u8)) + /* IFLA_VXLAN_REMCSUM_TX */ nla_total_size(sizeof(__u8)) + /* IFLA_VXLAN_REMCSUM_RX */ + nla_total_size(sizeof(struct ip_fan_map) * 256) + 0; } @@ -4346,6 +4544,26 @@ } } + if (fan_has_map(&vxlan->fan)) { + struct nlattr *fan_nest; + struct ip_fan_map *fan_map; + + fan_nest = nla_nest_start(skb, IFLA_VXLAN_FAN_MAP); + if (!fan_nest) + goto nla_put_failure; + list_for_each_entry_rcu(fan_map, &vxlan->fan.fan_maps, list) { + struct ifla_fan_map map; + + map.underlay = fan_map->underlay; + map.underlay_prefix = fan_map->underlay_prefix; + map.overlay = fan_map->overlay; + map.overlay_prefix = fan_map->overlay_prefix; + if (nla_put(skb, IFLA_FAN_MAPPING, sizeof(map), &map)) + goto nla_put_failure; + } + nla_nest_end(skb, fan_nest); + } + if (nla_put_u8(skb, IFLA_VXLAN_TTL, vxlan->cfg.ttl) || nla_put_u8(skb, IFLA_VXLAN_TTL_INHERIT, !!(vxlan->cfg.flags & VXLAN_F_TTL_INHERIT)) || @@ -4678,12 +4896,27 @@ return register_nexthop_notifier(net, &vxlan_nexthop_notifier_block); } +#ifdef CONFIG_SYSCTL +static struct ctl_table_header *vxlan_fan_header; +static unsigned int vxlan_fan_version = 4; + +static struct ctl_table vxlan_fan_sysctls[] = { + { + .procname = "vxlan", + .data = &vxlan_fan_version, + .maxlen = sizeof(vxlan_fan_version), + .mode = 0444, + .proc_handler = proc_dointvec, + }, + {}, +}; +#endif /* CONFIG_SYSCTL */ + static void vxlan_destroy_tunnels(struct net *net, struct list_head *head) { struct vxlan_net *vn = net_generic(net, vxlan_net_id); struct vxlan_dev *vxlan, *next; struct net_device *dev, *aux; - unsigned int h; for_each_netdev_safe(net, dev, aux) if (dev->rtnl_link_ops == &vxlan_link_ops) @@ -4697,14 +4930,13 @@ unregister_netdevice_queue(vxlan->dev, head); } - for (h = 0; h < PORT_HASH_SIZE; ++h) - WARN_ON_ONCE(!hlist_empty(&vn->sock_list[h])); } static void __net_exit vxlan_exit_batch_net(struct list_head *net_list) { struct net *net; LIST_HEAD(list); + unsigned int h; rtnl_lock(); list_for_each_entry(net, net_list, exit_list) @@ -4714,6 +4946,13 @@ unregister_netdevice_many(&list); rtnl_unlock(); + + list_for_each_entry(net, net_list, exit_list) { + struct vxlan_net *vn = net_generic(net, vxlan_net_id); + + for (h = 0; h < PORT_HASH_SIZE; ++h) + WARN_ON_ONCE(!hlist_empty(&vn->sock_list[h])); + } } static struct pernet_operations vxlan_net_ops = { @@ -4745,7 +4984,20 @@ if (rc) goto out4; +#ifdef CONFIG_SYSCTL + vxlan_fan_header = register_net_sysctl(&init_net, "net/fan", + vxlan_fan_sysctls); + if (!vxlan_fan_header) { + rc = -ENOMEM; + goto sysctl_failed; + } +#endif /* CONFIG_SYSCTL */ + return 0; +#ifdef CONFIG_SYSCTL +sysctl_failed: + rtnl_link_unregister(&vxlan_link_ops); +#endif /* CONFIG_SYSCTL */ out4: unregister_switchdev_notifier(&vxlan_switchdev_notifier_block); out3: @@ -4759,6 +5011,9 @@ static void __exit vxlan_cleanup_module(void) { +#ifdef CONFIG_SYSCTL + unregister_net_sysctl_table(vxlan_fan_header); +#endif /* CONFIG_SYSCTL */ rtnl_link_unregister(&vxlan_link_ops); unregister_switchdev_notifier(&vxlan_switchdev_notifier_block); unregister_netdevice_notifier(&vxlan_notifier_block); --- linux-azure-5.8-5.8.0.orig/drivers/net/wan/Kconfig +++ linux-azure-5.8-5.8.0/drivers/net/wan/Kconfig @@ -282,6 +282,7 @@ tristate "Slic Maxim ds26522 card support" depends on SPI depends on FSL_SOC || ARCH_MXC || ARCH_LAYERSCAPE || COMPILE_TEST + select BITREVERSE help This module initializes and configures the slic maxim card in T1 or E1 mode. --- linux-azure-5.8-5.8.0.orig/drivers/net/wan/cosa.c +++ linux-azure-5.8-5.8.0/drivers/net/wan/cosa.c @@ -889,6 +889,7 @@ chan->tx_status = 1; spin_unlock_irqrestore(&cosa->lock, flags); up(&chan->wsem); + kfree(kbuf); return -ERESTARTSYS; } } --- linux-azure-5.8-5.8.0.orig/drivers/net/wan/hdlc.c +++ linux-azure-5.8-5.8.0/drivers/net/wan/hdlc.c @@ -46,7 +46,15 @@ static int hdlc_rcv(struct sk_buff *skb, struct net_device *dev, struct packet_type *p, struct net_device *orig_dev) { - struct hdlc_device *hdlc = dev_to_hdlc(dev); + struct hdlc_device *hdlc; + + /* First make sure "dev" is an HDLC device */ + if (!(dev->priv_flags & IFF_WAN_HDLC)) { + kfree_skb(skb); + return NET_RX_SUCCESS; + } + + hdlc = dev_to_hdlc(dev); if (!net_eq(dev_net(dev), &init_net)) { kfree_skb(skb); @@ -229,7 +237,8 @@ dev->min_mtu = 68; dev->max_mtu = HDLC_MAX_MTU; dev->type = ARPHRD_RAWHDLC; - dev->hard_header_len = 16; + dev->hard_header_len = 0; + dev->needed_headroom = 0; dev->addr_len = 0; dev->header_ops = &hdlc_null_ops; } --- linux-azure-5.8-5.8.0.orig/drivers/net/wan/hdlc_cisco.c +++ linux-azure-5.8-5.8.0/drivers/net/wan/hdlc_cisco.c @@ -118,6 +118,7 @@ skb_put(skb, sizeof(struct cisco_packet)); skb->priority = TC_PRIO_CONTROL; skb->dev = dev; + skb->protocol = htons(ETH_P_HDLC); skb_reset_network_header(skb); dev_queue_xmit(skb); @@ -370,6 +371,7 @@ memcpy(&state(hdlc)->settings, &new_settings, size); spin_lock_init(&state(hdlc)->lock); dev->header_ops = &cisco_header_ops; + dev->hard_header_len = sizeof(struct hdlc_header); dev->type = ARPHRD_CISCO; call_netdevice_notifiers(NETDEV_POST_TYPE_CHANGE, dev); netif_dormant_on(dev); --- linux-azure-5.8-5.8.0.orig/drivers/net/wan/hdlc_fr.c +++ linux-azure-5.8-5.8.0/drivers/net/wan/hdlc_fr.c @@ -273,63 +273,69 @@ static int fr_hard_header(struct sk_buff **skb_p, u16 dlci) { - u16 head_len; struct sk_buff *skb = *skb_p; - switch (skb->protocol) { - case cpu_to_be16(NLPID_CCITT_ANSI_LMI): - head_len = 4; - skb_push(skb, head_len); - skb->data[3] = NLPID_CCITT_ANSI_LMI; - break; - - case cpu_to_be16(NLPID_CISCO_LMI): - head_len = 4; - skb_push(skb, head_len); - skb->data[3] = NLPID_CISCO_LMI; - break; - - case cpu_to_be16(ETH_P_IP): - head_len = 4; - skb_push(skb, head_len); - skb->data[3] = NLPID_IP; - break; - - case cpu_to_be16(ETH_P_IPV6): - head_len = 4; - skb_push(skb, head_len); - skb->data[3] = NLPID_IPV6; - break; - - case cpu_to_be16(ETH_P_802_3): - head_len = 10; - if (skb_headroom(skb) < head_len) { - struct sk_buff *skb2 = skb_realloc_headroom(skb, - head_len); + if (!skb->dev) { /* Control packets */ + switch (dlci) { + case LMI_CCITT_ANSI_DLCI: + skb_push(skb, 4); + skb->data[3] = NLPID_CCITT_ANSI_LMI; + break; + + case LMI_CISCO_DLCI: + skb_push(skb, 4); + skb->data[3] = NLPID_CISCO_LMI; + break; + + default: + return -EINVAL; + } + + } else if (skb->dev->type == ARPHRD_DLCI) { + switch (skb->protocol) { + case htons(ETH_P_IP): + skb_push(skb, 4); + skb->data[3] = NLPID_IP; + break; + + case htons(ETH_P_IPV6): + skb_push(skb, 4); + skb->data[3] = NLPID_IPV6; + break; + + default: + skb_push(skb, 10); + skb->data[3] = FR_PAD; + skb->data[4] = NLPID_SNAP; + /* OUI 00-00-00 indicates an Ethertype follows */ + skb->data[5] = 0x00; + skb->data[6] = 0x00; + skb->data[7] = 0x00; + /* This should be an Ethertype: */ + *(__be16 *)(skb->data + 8) = skb->protocol; + } + + } else if (skb->dev->type == ARPHRD_ETHER) { + if (skb_headroom(skb) < 10) { + struct sk_buff *skb2 = skb_realloc_headroom(skb, 10); if (!skb2) return -ENOBUFS; dev_kfree_skb(skb); skb = *skb_p = skb2; } - skb_push(skb, head_len); + skb_push(skb, 10); skb->data[3] = FR_PAD; skb->data[4] = NLPID_SNAP; - skb->data[5] = FR_PAD; + /* OUI 00-80-C2 stands for the 802.1 organization */ + skb->data[5] = 0x00; skb->data[6] = 0x80; skb->data[7] = 0xC2; + /* PID 00-07 stands for Ethernet frames without FCS */ skb->data[8] = 0x00; - skb->data[9] = 0x07; /* bridged Ethernet frame w/out FCS */ - break; + skb->data[9] = 0x07; - default: - head_len = 10; - skb_push(skb, head_len); - skb->data[3] = FR_PAD; - skb->data[4] = NLPID_SNAP; - skb->data[5] = FR_PAD; - skb->data[6] = FR_PAD; - skb->data[7] = FR_PAD; - *(__be16*)(skb->data + 8) = skb->protocol; + } else { + return -EINVAL; } dlci_to_q922(skb->data, dlci); @@ -425,14 +431,16 @@ skb_put(skb, pad); memset(skb->data + len, 0, pad); } - skb->protocol = cpu_to_be16(ETH_P_802_3); } + skb->dev = dev; if (!fr_hard_header(&skb, pvc->dlci)) { dev->stats.tx_bytes += skb->len; dev->stats.tx_packets++; if (pvc->state.fecn) /* TX Congestion counter */ dev->stats.tx_compressed++; skb->dev = pvc->frad; + skb->protocol = htons(ETH_P_HDLC); + skb_reset_network_header(skb); dev_queue_xmit(skb); return NETDEV_TX_OK; } @@ -492,10 +500,8 @@ memset(skb->data, 0, len); skb_reserve(skb, 4); if (lmi == LMI_CISCO) { - skb->protocol = cpu_to_be16(NLPID_CISCO_LMI); fr_hard_header(&skb, LMI_CISCO_DLCI); } else { - skb->protocol = cpu_to_be16(NLPID_CCITT_ANSI_LMI); fr_hard_header(&skb, LMI_CCITT_ANSI_DLCI); } data = skb_tail_pointer(skb); @@ -555,6 +561,7 @@ skb_put(skb, i); skb->priority = TC_PRIO_CONTROL; skb->dev = dev; + skb->protocol = htons(ETH_P_HDLC); skb_reset_network_header(skb); dev_queue_xmit(skb); @@ -1041,7 +1048,7 @@ { dev->type = ARPHRD_DLCI; dev->flags = IFF_POINTOPOINT; - dev->hard_header_len = 10; + dev->hard_header_len = 0; dev->addr_len = 2; netif_keep_dst(dev); } @@ -1093,6 +1100,7 @@ dev->mtu = HDLC_MAX_MTU; dev->min_mtu = 68; dev->max_mtu = HDLC_MAX_MTU; + dev->needed_headroom = 10; dev->priv_flags |= IFF_NO_QUEUE; dev->ml_priv = pvc; --- linux-azure-5.8-5.8.0.orig/drivers/net/wan/hdlc_ppp.c +++ linux-azure-5.8-5.8.0/drivers/net/wan/hdlc_ppp.c @@ -251,6 +251,7 @@ skb->priority = TC_PRIO_CONTROL; skb->dev = dev; + skb->protocol = htons(ETH_P_HDLC); skb_reset_network_header(skb); skb_queue_tail(&tx_queue, skb); } @@ -383,11 +384,8 @@ } for (opt = data; len; len -= opt[1], opt += opt[1]) { - if (len < 2 || len < opt[1]) { - dev->stats.rx_errors++; - kfree(out); - return; /* bad packet, drop silently */ - } + if (len < 2 || opt[1] < 2 || len < opt[1]) + goto err_out; if (pid == PID_LCP) switch (opt[0]) { @@ -395,6 +393,8 @@ continue; /* MRU always OK and > 1500 bytes? */ case LCP_OPTION_ACCM: /* async control character map */ + if (opt[1] < sizeof(valid_accm)) + goto err_out; if (!memcmp(opt, valid_accm, sizeof(valid_accm))) continue; @@ -406,6 +406,8 @@ } break; case LCP_OPTION_MAGIC: + if (len < 6) + goto err_out; if (opt[1] != 6 || (!opt[2] && !opt[3] && !opt[4] && !opt[5])) break; /* reject invalid magic number */ @@ -424,6 +426,11 @@ ppp_cp_event(dev, pid, RCR_GOOD, CP_CONF_ACK, id, req_len, data); kfree(out); + return; + +err_out: + dev->stats.rx_errors++; + kfree(out); } static int ppp_rx(struct sk_buff *skb) @@ -562,6 +569,13 @@ unsigned long flags; spin_lock_irqsave(&ppp->lock, flags); + /* mod_timer could be called after we entered this function but + * before we got the lock. + */ + if (timer_pending(&proto->timer)) { + spin_unlock_irqrestore(&ppp->lock, flags); + return; + } switch (proto->state) { case STOPPING: case REQ_SENT: --- linux-azure-5.8-5.8.0.orig/drivers/net/wan/hdlc_raw_eth.c +++ linux-azure-5.8-5.8.0/drivers/net/wan/hdlc_raw_eth.c @@ -99,6 +99,7 @@ old_qlen = dev->tx_queue_len; ether_setup(dev); dev->tx_queue_len = old_qlen; + dev->priv_flags &= ~IFF_TX_SKB_SHARING; eth_hw_addr_random(dev); call_netdevice_notifiers(NETDEV_POST_TYPE_CHANGE, dev); netif_dormant_off(dev); --- linux-azure-5.8-5.8.0.orig/drivers/net/wan/hdlc_x25.c +++ linux-azure-5.8-5.8.0/drivers/net/wan/hdlc_x25.c @@ -107,8 +107,14 @@ { int result; + /* There should be a pseudo header of 1 byte added by upper layers. + * Check to make sure it is there before reading it. + */ + if (skb->len < 1) { + kfree_skb(skb); + return NETDEV_TX_OK; + } - /* X.25 to LAPB */ switch (skb->data[0]) { case X25_IFACE_DATA: /* Data to be transmitted */ skb_pull(skb, 1); @@ -165,11 +171,11 @@ result = lapb_register(dev, &cb); if (result != LAPB_OK) - return result; + return -ENOMEM; result = lapb_getparms(dev, ¶ms); if (result != LAPB_OK) - return result; + return -EINVAL; if (state(hdlc)->settings.dce) params.mode = params.mode | LAPB_DCE; @@ -184,7 +190,7 @@ result = lapb_setparms(dev, ¶ms); if (result != LAPB_OK) - return result; + return -EINVAL; return 0; } @@ -294,6 +300,15 @@ return result; memcpy(&state(hdlc)->settings, &new_settings, size); + + /* There's no header_ops so hard_header_len should be 0. */ + dev->hard_header_len = 0; + /* When transmitting data: + * first we'll remove a pseudo header of 1 byte, + * then we'll prepend an LAPB header of at most 3 bytes. + */ + dev->needed_headroom = 3 - 1; + dev->type = ARPHRD_X25; call_netdevice_notifiers(NETDEV_POST_TYPE_CHANGE, dev); netif_dormant_off(dev); --- linux-azure-5.8-5.8.0.orig/drivers/net/wan/lapbether.c +++ linux-azure-5.8-5.8.0/drivers/net/wan/lapbether.c @@ -157,6 +157,12 @@ if (!netif_running(dev)) goto drop; + /* There should be a pseudo header of 1 byte added by upper layers. + * Check to make sure it is there before reading it. + */ + if (skb->len < 1) + goto drop; + switch (skb->data[0]) { case X25_IFACE_DATA: break; @@ -192,8 +198,6 @@ struct net_device *dev; int size = skb->len; - skb->protocol = htons(ETH_P_X25); - ptr = skb_push(skb, 2); *ptr++ = size % 256; @@ -204,6 +208,10 @@ skb->dev = dev = lapbeth->ethdev; + skb->protocol = htons(ETH_P_DEC); + + skb_reset_network_header(skb); + dev_hard_header(skb, dev, ETH_P_DEC, bcast_addr, NULL, 0); dev_queue_xmit(skb); @@ -305,6 +313,7 @@ dev->netdev_ops = &lapbeth_netdev_ops; dev->needs_free_netdev = true; dev->type = ARPHRD_X25; + dev->hard_header_len = 0; dev->mtu = 1000; dev->addr_len = 0; } @@ -331,7 +340,9 @@ * then this driver prepends a length field of 2 bytes, * then the underlying Ethernet device prepends its own header. */ - ndev->hard_header_len = -1 + 3 + 2 + dev->hard_header_len; + ndev->needed_headroom = -1 + 3 + 2 + dev->hard_header_len + + dev->needed_headroom; + ndev->needed_tailroom = dev->needed_tailroom; lapbeth = netdev_priv(ndev); lapbeth->axdev = ndev; --- linux-azure-5.8-5.8.0.orig/drivers/net/wireguard/device.c +++ linux-azure-5.8-5.8.0/drivers/net/wireguard/device.c @@ -138,7 +138,7 @@ else if (skb->protocol == htons(ETH_P_IPV6)) net_dbg_ratelimited("%s: No peer has allowed IPs matching %pI6\n", dev->name, &ipv6_hdr(skb)->daddr); - goto err; + goto err_icmp; } family = READ_ONCE(peer->endpoint.addr.sa_family); @@ -201,12 +201,13 @@ err_peer: wg_peer_put(peer); -err: - ++dev->stats.tx_errors; +err_icmp: if (skb->protocol == htons(ETH_P_IP)) icmp_ndo_send(skb, ICMP_DEST_UNREACH, ICMP_HOST_UNREACH, 0); else if (skb->protocol == htons(ETH_P_IPV6)) icmpv6_ndo_send(skb, ICMPV6_DEST_UNREACH, ICMPV6_ADDR_UNREACH, 0); +err: + ++dev->stats.tx_errors; kfree_skb(skb); return ret; } @@ -234,8 +235,8 @@ destroy_workqueue(wg->handshake_receive_wq); destroy_workqueue(wg->handshake_send_wq); destroy_workqueue(wg->packet_crypt_wq); - wg_packet_queue_free(&wg->decrypt_queue, true); - wg_packet_queue_free(&wg->encrypt_queue, true); + wg_packet_queue_free(&wg->decrypt_queue); + wg_packet_queue_free(&wg->encrypt_queue); rcu_barrier(); /* Wait for all the peers to be actually freed. */ wg_ratelimiter_uninit(); memzero_explicit(&wg->static_identity, sizeof(wg->static_identity)); @@ -337,12 +338,12 @@ goto err_destroy_handshake_send; ret = wg_packet_queue_init(&wg->encrypt_queue, wg_packet_encrypt_worker, - true, MAX_QUEUED_PACKETS); + MAX_QUEUED_PACKETS); if (ret < 0) goto err_destroy_packet_crypt; ret = wg_packet_queue_init(&wg->decrypt_queue, wg_packet_decrypt_worker, - true, MAX_QUEUED_PACKETS); + MAX_QUEUED_PACKETS); if (ret < 0) goto err_free_encrypt_queue; @@ -367,9 +368,9 @@ err_uninit_ratelimiter: wg_ratelimiter_uninit(); err_free_decrypt_queue: - wg_packet_queue_free(&wg->decrypt_queue, true); + wg_packet_queue_free(&wg->decrypt_queue); err_free_encrypt_queue: - wg_packet_queue_free(&wg->encrypt_queue, true); + wg_packet_queue_free(&wg->encrypt_queue); err_destroy_packet_crypt: destroy_workqueue(wg->packet_crypt_wq); err_destroy_handshake_send: --- linux-azure-5.8-5.8.0.orig/drivers/net/wireguard/device.h +++ linux-azure-5.8-5.8.0/drivers/net/wireguard/device.h @@ -27,13 +27,14 @@ struct crypt_queue { struct ptr_ring ring; - union { - struct { - struct multicore_worker __percpu *worker; - int last_cpu; - }; - struct work_struct work; - }; + struct multicore_worker __percpu *worker; + int last_cpu; +}; + +struct prev_queue { + struct sk_buff *head, *tail, *peeked; + struct { struct sk_buff *next, *prev; } empty; // Match first 2 members of struct sk_buff. + atomic_t count; }; struct wg_device { --- linux-azure-5.8-5.8.0.orig/drivers/net/wireguard/noise.c +++ linux-azure-5.8-5.8.0/drivers/net/wireguard/noise.c @@ -87,15 +87,12 @@ void wg_noise_handshake_clear(struct noise_handshake *handshake) { + down_write(&handshake->lock); wg_index_hashtable_remove( handshake->entry.peer->device->index_hashtable, &handshake->entry); - down_write(&handshake->lock); handshake_zero(handshake); up_write(&handshake->lock); - wg_index_hashtable_remove( - handshake->entry.peer->device->index_hashtable, - &handshake->entry); } static struct noise_keypair *keypair_create(struct wg_peer *peer) --- linux-azure-5.8-5.8.0.orig/drivers/net/wireguard/peer.c +++ linux-azure-5.8-5.8.0/drivers/net/wireguard/peer.c @@ -32,27 +32,22 @@ peer = kzalloc(sizeof(*peer), GFP_KERNEL); if (unlikely(!peer)) return ERR_PTR(ret); - peer->device = wg; + if (dst_cache_init(&peer->endpoint_cache, GFP_KERNEL)) + goto err; + peer->device = wg; wg_noise_handshake_init(&peer->handshake, &wg->static_identity, public_key, preshared_key, peer); - if (dst_cache_init(&peer->endpoint_cache, GFP_KERNEL)) - goto err_1; - if (wg_packet_queue_init(&peer->tx_queue, wg_packet_tx_worker, false, - MAX_QUEUED_PACKETS)) - goto err_2; - if (wg_packet_queue_init(&peer->rx_queue, NULL, false, - MAX_QUEUED_PACKETS)) - goto err_3; - peer->internal_id = atomic64_inc_return(&peer_counter); peer->serial_work_cpu = nr_cpumask_bits; wg_cookie_init(&peer->latest_cookie); wg_timers_init(peer); wg_cookie_checker_precompute_peer_keys(peer); spin_lock_init(&peer->keypairs.keypair_update_lock); - INIT_WORK(&peer->transmit_handshake_work, - wg_packet_handshake_send_worker); + INIT_WORK(&peer->transmit_handshake_work, wg_packet_handshake_send_worker); + INIT_WORK(&peer->transmit_packet_work, wg_packet_tx_worker); + wg_prev_queue_init(&peer->tx_queue); + wg_prev_queue_init(&peer->rx_queue); rwlock_init(&peer->endpoint_lock); kref_init(&peer->refcount); skb_queue_head_init(&peer->staged_packet_queue); @@ -68,11 +63,7 @@ pr_debug("%s: Peer %llu created\n", wg->dev->name, peer->internal_id); return peer; -err_3: - wg_packet_queue_free(&peer->tx_queue, false); -err_2: - dst_cache_destroy(&peer->endpoint_cache); -err_1: +err: kfree(peer); return ERR_PTR(ret); } @@ -197,8 +188,7 @@ struct wg_peer *peer = container_of(rcu, struct wg_peer, rcu); dst_cache_destroy(&peer->endpoint_cache); - wg_packet_queue_free(&peer->rx_queue, false); - wg_packet_queue_free(&peer->tx_queue, false); + WARN_ON(wg_prev_queue_peek(&peer->tx_queue) || wg_prev_queue_peek(&peer->rx_queue)); /* The final zeroing takes care of clearing any remaining handshake key * material and other potentially sensitive information. --- linux-azure-5.8-5.8.0.orig/drivers/net/wireguard/peer.h +++ linux-azure-5.8-5.8.0/drivers/net/wireguard/peer.h @@ -36,7 +36,7 @@ struct wg_peer { struct wg_device *device; - struct crypt_queue tx_queue, rx_queue; + struct prev_queue tx_queue, rx_queue; struct sk_buff_head staged_packet_queue; int serial_work_cpu; struct noise_keypairs keypairs; @@ -45,7 +45,7 @@ rwlock_t endpoint_lock; struct noise_handshake handshake; atomic64_t last_sent_handshake; - struct work_struct transmit_handshake_work, clear_peer_work; + struct work_struct transmit_handshake_work, clear_peer_work, transmit_packet_work; struct cookie latest_cookie; struct hlist_node pubkey_hash; u64 rx_bytes, tx_bytes; --- linux-azure-5.8-5.8.0.orig/drivers/net/wireguard/peerlookup.c +++ linux-azure-5.8-5.8.0/drivers/net/wireguard/peerlookup.c @@ -167,9 +167,13 @@ struct index_hashtable_entry *old, struct index_hashtable_entry *new) { - if (unlikely(hlist_unhashed(&old->index_hash))) - return false; + bool ret; + spin_lock_bh(&table->lock); + ret = !hlist_unhashed(&old->index_hash); + if (unlikely(!ret)) + goto out; + new->index = old->index; hlist_replace_rcu(&old->index_hash, &new->index_hash); @@ -180,8 +184,9 @@ * simply gets dropped, which isn't terrible. */ INIT_HLIST_NODE(&old->index_hash); +out: spin_unlock_bh(&table->lock); - return true; + return ret; } void wg_index_hashtable_remove(struct index_hashtable *table, --- linux-azure-5.8-5.8.0.orig/drivers/net/wireguard/queueing.c +++ linux-azure-5.8-5.8.0/drivers/net/wireguard/queueing.c @@ -9,8 +9,7 @@ wg_packet_percpu_multicore_worker_alloc(work_func_t function, void *ptr) { int cpu; - struct multicore_worker __percpu *worker = - alloc_percpu(struct multicore_worker); + struct multicore_worker __percpu *worker = alloc_percpu(struct multicore_worker); if (!worker) return NULL; @@ -23,7 +22,7 @@ } int wg_packet_queue_init(struct crypt_queue *queue, work_func_t function, - bool multicore, unsigned int len) + unsigned int len) { int ret; @@ -31,25 +30,78 @@ ret = ptr_ring_init(&queue->ring, len, GFP_KERNEL); if (ret) return ret; - if (function) { - if (multicore) { - queue->worker = wg_packet_percpu_multicore_worker_alloc( - function, queue); - if (!queue->worker) { - ptr_ring_cleanup(&queue->ring, NULL); - return -ENOMEM; - } - } else { - INIT_WORK(&queue->work, function); - } + queue->worker = wg_packet_percpu_multicore_worker_alloc(function, queue); + if (!queue->worker) { + ptr_ring_cleanup(&queue->ring, NULL); + return -ENOMEM; } return 0; } -void wg_packet_queue_free(struct crypt_queue *queue, bool multicore) +void wg_packet_queue_free(struct crypt_queue *queue) { - if (multicore) - free_percpu(queue->worker); + free_percpu(queue->worker); WARN_ON(!__ptr_ring_empty(&queue->ring)); ptr_ring_cleanup(&queue->ring, NULL); } + +#define NEXT(skb) ((skb)->prev) +#define STUB(queue) ((struct sk_buff *)&queue->empty) + +void wg_prev_queue_init(struct prev_queue *queue) +{ + NEXT(STUB(queue)) = NULL; + queue->head = queue->tail = STUB(queue); + queue->peeked = NULL; + atomic_set(&queue->count, 0); + BUILD_BUG_ON( + offsetof(struct sk_buff, next) != offsetof(struct prev_queue, empty.next) - + offsetof(struct prev_queue, empty) || + offsetof(struct sk_buff, prev) != offsetof(struct prev_queue, empty.prev) - + offsetof(struct prev_queue, empty)); +} + +static void __wg_prev_queue_enqueue(struct prev_queue *queue, struct sk_buff *skb) +{ + WRITE_ONCE(NEXT(skb), NULL); + WRITE_ONCE(NEXT(xchg_release(&queue->head, skb)), skb); +} + +bool wg_prev_queue_enqueue(struct prev_queue *queue, struct sk_buff *skb) +{ + if (!atomic_add_unless(&queue->count, 1, MAX_QUEUED_PACKETS)) + return false; + __wg_prev_queue_enqueue(queue, skb); + return true; +} + +struct sk_buff *wg_prev_queue_dequeue(struct prev_queue *queue) +{ + struct sk_buff *tail = queue->tail, *next = smp_load_acquire(&NEXT(tail)); + + if (tail == STUB(queue)) { + if (!next) + return NULL; + queue->tail = next; + tail = next; + next = smp_load_acquire(&NEXT(next)); + } + if (next) { + queue->tail = next; + atomic_dec(&queue->count); + return tail; + } + if (tail != READ_ONCE(queue->head)) + return NULL; + __wg_prev_queue_enqueue(queue, STUB(queue)); + next = smp_load_acquire(&NEXT(tail)); + if (next) { + queue->tail = next; + atomic_dec(&queue->count); + return tail; + } + return NULL; +} + +#undef NEXT +#undef STUB --- linux-azure-5.8-5.8.0.orig/drivers/net/wireguard/queueing.h +++ linux-azure-5.8-5.8.0/drivers/net/wireguard/queueing.h @@ -17,12 +17,13 @@ struct wg_peer; struct multicore_worker; struct crypt_queue; +struct prev_queue; struct sk_buff; /* queueing.c APIs: */ int wg_packet_queue_init(struct crypt_queue *queue, work_func_t function, - bool multicore, unsigned int len); -void wg_packet_queue_free(struct crypt_queue *queue, bool multicore); + unsigned int len); +void wg_packet_queue_free(struct crypt_queue *queue); struct multicore_worker __percpu * wg_packet_percpu_multicore_worker_alloc(work_func_t function, void *ptr); @@ -135,8 +136,31 @@ return cpu; } +void wg_prev_queue_init(struct prev_queue *queue); + +/* Multi producer */ +bool wg_prev_queue_enqueue(struct prev_queue *queue, struct sk_buff *skb); + +/* Single consumer */ +struct sk_buff *wg_prev_queue_dequeue(struct prev_queue *queue); + +/* Single consumer */ +static inline struct sk_buff *wg_prev_queue_peek(struct prev_queue *queue) +{ + if (queue->peeked) + return queue->peeked; + queue->peeked = wg_prev_queue_dequeue(queue); + return queue->peeked; +} + +/* Single consumer */ +static inline void wg_prev_queue_drop_peeked(struct prev_queue *queue) +{ + queue->peeked = NULL; +} + static inline int wg_queue_enqueue_per_device_and_peer( - struct crypt_queue *device_queue, struct crypt_queue *peer_queue, + struct crypt_queue *device_queue, struct prev_queue *peer_queue, struct sk_buff *skb, struct workqueue_struct *wq, int *next_cpu) { int cpu; @@ -145,8 +169,9 @@ /* We first queue this up for the peer ingestion, but the consumer * will wait for the state to change to CRYPTED or DEAD before. */ - if (unlikely(ptr_ring_produce_bh(&peer_queue->ring, skb))) + if (unlikely(!wg_prev_queue_enqueue(peer_queue, skb))) return -ENOSPC; + /* Then we queue it up in the device queue, which consumes the * packet as soon as it can. */ @@ -157,9 +182,7 @@ return 0; } -static inline void wg_queue_enqueue_per_peer(struct crypt_queue *queue, - struct sk_buff *skb, - enum packet_state state) +static inline void wg_queue_enqueue_per_peer_tx(struct sk_buff *skb, enum packet_state state) { /* We take a reference, because as soon as we call atomic_set, the * peer can be freed from below us. @@ -167,14 +190,12 @@ struct wg_peer *peer = wg_peer_get(PACKET_PEER(skb)); atomic_set_release(&PACKET_CB(skb)->state, state); - queue_work_on(wg_cpumask_choose_online(&peer->serial_work_cpu, - peer->internal_id), - peer->device->packet_crypt_wq, &queue->work); + queue_work_on(wg_cpumask_choose_online(&peer->serial_work_cpu, peer->internal_id), + peer->device->packet_crypt_wq, &peer->transmit_packet_work); wg_peer_put(peer); } -static inline void wg_queue_enqueue_per_peer_napi(struct sk_buff *skb, - enum packet_state state) +static inline void wg_queue_enqueue_per_peer_rx(struct sk_buff *skb, enum packet_state state) { /* We take a reference, because as soon as we call atomic_set, the * peer can be freed from below us. --- linux-azure-5.8-5.8.0.orig/drivers/net/wireguard/receive.c +++ linux-azure-5.8-5.8.0/drivers/net/wireguard/receive.c @@ -444,7 +444,6 @@ int wg_packet_rx_poll(struct napi_struct *napi, int budget) { struct wg_peer *peer = container_of(napi, struct wg_peer, napi); - struct crypt_queue *queue = &peer->rx_queue; struct noise_keypair *keypair; struct endpoint endpoint; enum packet_state state; @@ -455,11 +454,10 @@ if (unlikely(budget <= 0)) return 0; - while ((skb = __ptr_ring_peek(&queue->ring)) != NULL && + while ((skb = wg_prev_queue_peek(&peer->rx_queue)) != NULL && (state = atomic_read_acquire(&PACKET_CB(skb)->state)) != PACKET_STATE_UNCRYPTED) { - __ptr_ring_discard_one(&queue->ring); - peer = PACKET_PEER(skb); + wg_prev_queue_drop_peeked(&peer->rx_queue); keypair = PACKET_CB(skb)->keypair; free = true; @@ -508,7 +506,7 @@ enum packet_state state = likely(decrypt_packet(skb, PACKET_CB(skb)->keypair)) ? PACKET_STATE_CRYPTED : PACKET_STATE_DEAD; - wg_queue_enqueue_per_peer_napi(skb, state); + wg_queue_enqueue_per_peer_rx(skb, state); if (need_resched()) cond_resched(); } @@ -531,12 +529,10 @@ if (unlikely(READ_ONCE(peer->is_dead))) goto err; - ret = wg_queue_enqueue_per_device_and_peer(&wg->decrypt_queue, - &peer->rx_queue, skb, - wg->packet_crypt_wq, - &wg->decrypt_queue.last_cpu); + ret = wg_queue_enqueue_per_device_and_peer(&wg->decrypt_queue, &peer->rx_queue, skb, + wg->packet_crypt_wq, &wg->decrypt_queue.last_cpu); if (unlikely(ret == -EPIPE)) - wg_queue_enqueue_per_peer_napi(skb, PACKET_STATE_DEAD); + wg_queue_enqueue_per_peer_rx(skb, PACKET_STATE_DEAD); if (likely(!ret || ret == -EPIPE)) { rcu_read_unlock_bh(); return; --- linux-azure-5.8-5.8.0.orig/drivers/net/wireguard/send.c +++ linux-azure-5.8-5.8.0/drivers/net/wireguard/send.c @@ -239,8 +239,7 @@ wg_packet_send_staged_packets(peer); } -static void wg_packet_create_data_done(struct sk_buff *first, - struct wg_peer *peer) +static void wg_packet_create_data_done(struct wg_peer *peer, struct sk_buff *first) { struct sk_buff *skb, *next; bool is_keepalive, data_sent = false; @@ -262,22 +261,19 @@ void wg_packet_tx_worker(struct work_struct *work) { - struct crypt_queue *queue = container_of(work, struct crypt_queue, - work); + struct wg_peer *peer = container_of(work, struct wg_peer, transmit_packet_work); struct noise_keypair *keypair; enum packet_state state; struct sk_buff *first; - struct wg_peer *peer; - while ((first = __ptr_ring_peek(&queue->ring)) != NULL && + while ((first = wg_prev_queue_peek(&peer->tx_queue)) != NULL && (state = atomic_read_acquire(&PACKET_CB(first)->state)) != PACKET_STATE_UNCRYPTED) { - __ptr_ring_discard_one(&queue->ring); - peer = PACKET_PEER(first); + wg_prev_queue_drop_peeked(&peer->tx_queue); keypair = PACKET_CB(first)->keypair; if (likely(state == PACKET_STATE_CRYPTED)) - wg_packet_create_data_done(first, peer); + wg_packet_create_data_done(peer, first); else kfree_skb_list(first); @@ -306,16 +302,14 @@ break; } } - wg_queue_enqueue_per_peer(&PACKET_PEER(first)->tx_queue, first, - state); + wg_queue_enqueue_per_peer_tx(first, state); if (need_resched()) cond_resched(); } } -static void wg_packet_create_data(struct sk_buff *first) +static void wg_packet_create_data(struct wg_peer *peer, struct sk_buff *first) { - struct wg_peer *peer = PACKET_PEER(first); struct wg_device *wg = peer->device; int ret = -EINVAL; @@ -323,13 +317,10 @@ if (unlikely(READ_ONCE(peer->is_dead))) goto err; - ret = wg_queue_enqueue_per_device_and_peer(&wg->encrypt_queue, - &peer->tx_queue, first, - wg->packet_crypt_wq, - &wg->encrypt_queue.last_cpu); + ret = wg_queue_enqueue_per_device_and_peer(&wg->encrypt_queue, &peer->tx_queue, first, + wg->packet_crypt_wq, &wg->encrypt_queue.last_cpu); if (unlikely(ret == -EPIPE)) - wg_queue_enqueue_per_peer(&peer->tx_queue, first, - PACKET_STATE_DEAD); + wg_queue_enqueue_per_peer_tx(first, PACKET_STATE_DEAD); err: rcu_read_unlock_bh(); if (likely(!ret || ret == -EPIPE)) @@ -393,7 +384,7 @@ packets.prev->next = NULL; wg_peer_get(keypair->entry.peer); PACKET_CB(packets.next)->keypair = keypair; - wg_packet_create_data(packets.next); + wg_packet_create_data(peer, packets.next); return; out_invalid: --- linux-azure-5.8-5.8.0.orig/drivers/net/wireless/ath/ath10k/ce.c +++ linux-azure-5.8-5.8.0/drivers/net/wireless/ath/ath10k/ce.c @@ -1555,7 +1555,7 @@ ret = ath10k_ce_alloc_shadow_base(ar, src_ring, nentries); if (ret) { dma_free_coherent(ar->dev, - (nentries * sizeof(struct ce_desc_64) + + (nentries * sizeof(struct ce_desc) + CE_DESC_RING_ALIGN), src_ring->base_addr_owner_space_unaligned, base_addr); --- linux-azure-5.8-5.8.0.orig/drivers/net/wireless/ath/ath10k/htt_rx.c +++ linux-azure-5.8-5.8.0/drivers/net/wireless/ath/ath10k/htt_rx.c @@ -142,6 +142,14 @@ BUILD_BUG_ON(HTT_RX_RING_FILL_LEVEL >= HTT_RX_RING_SIZE / 2); idx = __le32_to_cpu(*htt->rx_ring.alloc_idx.vaddr); + + if (idx < 0 || idx >= htt->rx_ring.size) { + ath10k_err(htt->ar, "rx ring index is not valid, firmware malfunctioning?\n"); + idx &= htt->rx_ring.size_mask; + ret = -ENOMEM; + goto fail; + } + while (num > 0) { skb = dev_alloc_skb(HTT_RX_BUF_SIZE + HTT_RX_DESC_ALIGN); if (!skb) { @@ -941,6 +949,7 @@ u8 preamble = 0; u8 group_id; u32 info1, info2, info3; + u32 stbc, nsts_su; info1 = __le32_to_cpu(rxd->ppdu_start.info1); info2 = __le32_to_cpu(rxd->ppdu_start.info2); @@ -985,11 +994,16 @@ */ bw = info2 & 3; sgi = info3 & 1; + stbc = (info2 >> 3) & 1; group_id = (info2 >> 4) & 0x3F; if (GROUP_ID_IS_SU_MIMO(group_id)) { mcs = (info3 >> 4) & 0x0F; - nss = ((info2 >> 10) & 0x07) + 1; + nsts_su = ((info2 >> 10) & 0x07); + if (stbc) + nss = (nsts_su >> 2) + 1; + else + nss = (nsts_su + 1); } else { /* Hardware doesn't decode VHT-SIG-B into Rx descriptor * so it's impossible to decode MCS. Also since @@ -3575,12 +3589,14 @@ } if (ar->htt.disable_tx_comp) { - arsta->tx_retries += peer_stats->retry_pkts; arsta->tx_failed += peer_stats->failed_pkts; - ath10k_dbg(ar, ATH10K_DBG_HTT, "htt tx retries %d tx failed %d\n", - arsta->tx_retries, arsta->tx_failed); + ath10k_dbg(ar, ATH10K_DBG_HTT, "tx failed %d\n", + arsta->tx_failed); } + arsta->tx_retries += peer_stats->retry_pkts; + ath10k_dbg(ar, ATH10K_DBG_HTT, "htt tx retries %d", arsta->tx_retries); + if (ath10k_debug_is_extd_tx_stats_enabled(ar)) ath10k_accumulate_per_peer_tx_stats(ar, arsta, peer_stats, rate_idx); --- linux-azure-5.8-5.8.0.orig/drivers/net/wireless/ath/ath10k/htt_tx.c +++ linux-azure-5.8-5.8.0/drivers/net/wireless/ath/ath10k/htt_tx.c @@ -1591,7 +1591,9 @@ err_unmap_msdu: dma_unmap_single(dev, skb_cb->paddr, msdu->len, DMA_TO_DEVICE); err_free_msdu_id: + spin_lock_bh(&htt->tx_lock); ath10k_htt_tx_free_msdu_id(htt, msdu_id); + spin_unlock_bh(&htt->tx_lock); err: return res; } @@ -1798,7 +1800,9 @@ err_unmap_msdu: dma_unmap_single(dev, skb_cb->paddr, msdu->len, DMA_TO_DEVICE); err_free_msdu_id: + spin_lock_bh(&htt->tx_lock); ath10k_htt_tx_free_msdu_id(htt, msdu_id); + spin_unlock_bh(&htt->tx_lock); err: return res; } --- linux-azure-5.8-5.8.0.orig/drivers/net/wireless/ath/ath10k/mac.c +++ linux-azure-5.8-5.8.0/drivers/net/wireless/ath/ath10k/mac.c @@ -7283,7 +7283,7 @@ struct ieee80211_channel *channel) { int ret; - enum wmi_bss_survey_req_type type = WMI_BSS_SURVEY_REQ_TYPE_READ_CLEAR; + enum wmi_bss_survey_req_type type = WMI_BSS_SURVEY_REQ_TYPE_READ; lockdep_assert_held(&ar->conf_mutex); @@ -8528,7 +8528,9 @@ if (!ath10k_peer_stats_enabled(ar)) return; + mutex_lock(&ar->conf_mutex); ath10k_debug_fw_stats_request(ar); + mutex_unlock(&ar->conf_mutex); sinfo->rx_duration = arsta->rx_duration; sinfo->filled |= BIT_ULL(NL80211_STA_INFO_RX_DURATION); @@ -8547,12 +8549,13 @@ sinfo->filled |= BIT_ULL(NL80211_STA_INFO_TX_BITRATE); if (ar->htt.disable_tx_comp) { - sinfo->tx_retries = arsta->tx_retries; - sinfo->filled |= BIT_ULL(NL80211_STA_INFO_TX_RETRIES); sinfo->tx_failed = arsta->tx_failed; sinfo->filled |= BIT_ULL(NL80211_STA_INFO_TX_FAILED); } + sinfo->tx_retries = arsta->tx_retries; + sinfo->filled |= BIT_ULL(NL80211_STA_INFO_TX_RETRIES); + ath10k_mac_sta_get_peer_stats_info(ar, sta, sinfo); } --- linux-azure-5.8-5.8.0.orig/drivers/net/wireless/ath/ath10k/sdio.c +++ linux-azure-5.8-5.8.0/drivers/net/wireless/ath/ath10k/sdio.c @@ -557,6 +557,10 @@ le16_to_cpu(htc_hdr->len), ATH10K_HTC_MBOX_MAX_PAYLOAD_LENGTH); ret = -ENOMEM; + + queue_work(ar->workqueue, &ar->restart_work); + ath10k_warn(ar, "exceeds length, start recovery\n"); + goto err; } --- linux-azure-5.8-5.8.0.orig/drivers/net/wireless/ath/ath10k/snoc.c +++ linux-azure-5.8-5.8.0/drivers/net/wireless/ath/ath10k/snoc.c @@ -1042,12 +1042,13 @@ ret = ath10k_snoc_init_pipes(ar); if (ret) { ath10k_err(ar, "failed to initialize CE: %d\n", ret); - goto err_wlan_enable; + goto err_free_rri; } return 0; -err_wlan_enable: +err_free_rri: + ath10k_ce_free_rri(ar); ath10k_snoc_wlan_disable(ar); return ret; --- linux-azure-5.8-5.8.0.orig/drivers/net/wireless/ath/ath10k/usb.c +++ linux-azure-5.8-5.8.0/drivers/net/wireless/ath/ath10k/usb.c @@ -997,6 +997,8 @@ ar_usb = ath10k_usb_priv(ar); ret = ath10k_usb_create(ar, interface); + if (ret) + goto err; ar_usb->ar = ar; ar->dev_id = product_id; @@ -1009,7 +1011,7 @@ ret = ath10k_core_register(ar, &bus_params); if (ret) { ath10k_warn(ar, "failed to register driver core: %d\n", ret); - goto err; + goto err_usb_destroy; } /* TODO: remove this once USB support is fully implemented */ @@ -1017,6 +1019,9 @@ return 0; +err_usb_destroy: + ath10k_usb_destroy(ar); + err: ath10k_core_destroy(ar); --- linux-azure-5.8-5.8.0.orig/drivers/net/wireless/ath/ath10k/wmi-tlv.c +++ linux-azure-5.8-5.8.0/drivers/net/wireless/ath/ath10k/wmi-tlv.c @@ -240,8 +240,10 @@ __le32_to_cpu(stat->last_tx_rate_code), __le32_to_cpu(stat->last_tx_bitrate_kbps)); + rcu_read_lock(); sta = ieee80211_find_sta_by_ifaddr(ar->hw, stat->peer_macaddr.addr, NULL); if (!sta) { + rcu_read_unlock(); ath10k_warn(ar, "not found station for peer stats\n"); return -EINVAL; } @@ -251,6 +253,7 @@ arsta->rx_bitrate_kbps = __le32_to_cpu(stat->last_rx_bitrate_kbps); arsta->tx_rate_code = __le32_to_cpu(stat->last_tx_rate_code); arsta->tx_bitrate_kbps = __le32_to_cpu(stat->last_tx_bitrate_kbps); + rcu_read_unlock(); return 0; } @@ -1401,13 +1404,15 @@ switch (tag) { case WMI_TLV_TAG_STRUCT_SERVICE_AVAILABLE_EVENT: + arg->service_map_ext_valid = true; arg->service_map_ext_len = *(__le32 *)ptr; arg->service_map_ext = ptr + sizeof(__le32); return 0; default: break; } - return -EPROTO; + + return 0; } static int ath10k_wmi_tlv_op_pull_svc_avail(struct ath10k *ar, --- linux-azure-5.8-5.8.0.orig/drivers/net/wireless/ath/ath10k/wmi.c +++ linux-azure-5.8-5.8.0/drivers/net/wireless/ath/ath10k/wmi.c @@ -5750,8 +5750,13 @@ ret); } - ath10k_wmi_map_svc_ext(ar, arg.service_map_ext, ar->wmi.svc_map, - __le32_to_cpu(arg.service_map_ext_len)); + /* + * Initialization of "arg.service_map_ext_valid" to ZERO is necessary + * for the below logic to work. + */ + if (arg.service_map_ext_valid) + ath10k_wmi_map_svc_ext(ar, arg.service_map_ext, ar->wmi.svc_map, + __le32_to_cpu(arg.service_map_ext_len)); } static int ath10k_wmi_event_temperature(struct ath10k *ar, struct sk_buff *skb) --- linux-azure-5.8-5.8.0.orig/drivers/net/wireless/ath/ath10k/wmi.h +++ linux-azure-5.8-5.8.0/drivers/net/wireless/ath/ath10k/wmi.h @@ -6906,6 +6906,7 @@ }; struct wmi_svc_avail_ev_arg { + bool service_map_ext_valid; __le32 service_map_ext_len; const __le32 *service_map_ext; }; --- linux-azure-5.8-5.8.0.orig/drivers/net/wireless/ath/ath11k/ahb.c +++ linux-azure-5.8-5.8.0/drivers/net/wireless/ath/ath11k/ahb.c @@ -981,12 +981,16 @@ static int ath11k_ahb_remove(struct platform_device *pdev) { struct ath11k_base *ab = platform_get_drvdata(pdev); + unsigned long left; reinit_completion(&ab->driver_recovery); - if (test_bit(ATH11K_FLAG_RECOVERY, &ab->dev_flags)) - wait_for_completion_timeout(&ab->driver_recovery, - ATH11K_AHB_RECOVERY_TIMEOUT); + if (test_bit(ATH11K_FLAG_RECOVERY, &ab->dev_flags)) { + left = wait_for_completion_timeout(&ab->driver_recovery, + ATH11K_AHB_RECOVERY_TIMEOUT); + if (!left) + ath11k_warn(ab, "failed to receive recovery response completion\n"); + } set_bit(ATH11K_FLAG_UNREGISTERING, &ab->dev_flags); cancel_work_sync(&ab->restart_work); --- linux-azure-5.8-5.8.0.orig/drivers/net/wireless/ath/ath11k/dp_rx.c +++ linux-azure-5.8-5.8.0/drivers/net/wireless/ath/ath11k/dp_rx.c @@ -1423,7 +1423,7 @@ } spin_unlock_bh(&ar->data_lock); - ppdu_info = kzalloc(sizeof(*ppdu_info), GFP_KERNEL); + ppdu_info = kzalloc(sizeof(*ppdu_info), GFP_ATOMIC); if (!ppdu_info) return NULL; @@ -2162,6 +2162,7 @@ struct ieee80211_rx_status *rx_status) { u8 channel_num; + struct ieee80211_channel *channel; rx_status->freq = 0; rx_status->rate_idx = 0; @@ -2179,9 +2180,12 @@ rx_status->band = NL80211_BAND_5GHZ; } else { spin_lock_bh(&ar->data_lock); - rx_status->band = ar->rx_channel->band; - channel_num = - ieee80211_frequency_to_channel(ar->rx_channel->center_freq); + channel = ar->rx_channel; + if (channel) { + rx_status->band = channel->band; + channel_num = + ieee80211_frequency_to_channel(channel->center_freq); + } spin_unlock_bh(&ar->data_lock); ath11k_dbg_dump(ar->ab, ATH11K_DBG_DATA, NULL, "rx_desc: ", rx_desc, sizeof(struct hal_rx_desc)); --- linux-azure-5.8-5.8.0.orig/drivers/net/wireless/ath/ath11k/dp_tx.c +++ linux-azure-5.8-5.8.0/drivers/net/wireless/ath/ath11k/dp_tx.c @@ -509,6 +509,8 @@ u32 msdu_id; u8 mac_id; + spin_lock_bh(&status_ring->lock); + ath11k_hal_srng_access_begin(ab, status_ring); while ((ATH11K_TX_COMPL_NEXT(tx_ring->tx_status_head) != @@ -528,6 +530,8 @@ ath11k_hal_srng_access_end(ab, status_ring); + spin_unlock_bh(&status_ring->lock); + while (ATH11K_TX_COMPL_NEXT(tx_ring->tx_status_tail) != tx_ring->tx_status_head) { struct hal_wbm_release_ring *tx_status; u32 desc_id; --- linux-azure-5.8-5.8.0.orig/drivers/net/wireless/ath/ath11k/mac.c +++ linux-azure-5.8-5.8.0/drivers/net/wireless/ath/ath11k/mac.c @@ -3912,7 +3912,8 @@ if (enable) { tlv_filter = ath11k_mac_mon_status_filter_default; - tlv_filter.rx_filter = ath11k_debug_rx_filter(ar); + if (ath11k_debug_rx_filter(ar)) + tlv_filter.rx_filter = ath11k_debug_rx_filter(ar); } ring_id = ar->dp.rx_mon_status_refill_ring.refill_buf_ring.ring_id; @@ -5824,7 +5825,7 @@ ret = ath11k_mac_setup_channels_rates(ar, cap->supported_bands); if (ret) - goto err_free; + goto err; ath11k_mac_setup_ht_vht_cap(ar, cap, &ht_cap); ath11k_mac_setup_he_cap(ar, cap); @@ -5938,7 +5939,9 @@ err_free: kfree(ar->mac.sbands[NL80211_BAND_2GHZ].channels); kfree(ar->mac.sbands[NL80211_BAND_5GHZ].channels); + kfree(ar->mac.sbands[NL80211_BAND_6GHZ].channels); +err: SET_IEEE80211_DEV(ar->hw, NULL); return ret; } --- linux-azure-5.8-5.8.0.orig/drivers/net/wireless/ath/ath11k/qmi.c +++ linux-azure-5.8-5.8.0/drivers/net/wireless/ath/ath11k/qmi.c @@ -1560,15 +1560,17 @@ struct qmi_wlanfw_ind_register_resp_msg_v01 *resp; struct qmi_handle *handle = &ab->qmi.handle; struct qmi_txn txn; - int ret = 0; + int ret; req = kzalloc(sizeof(*req), GFP_KERNEL); if (!req) return -ENOMEM; resp = kzalloc(sizeof(*resp), GFP_KERNEL); - if (!resp) + if (!resp) { + ret = -ENOMEM; goto resp_out; + } req->client_id_valid = 1; req->client_id = QMI_WLANFW_CLIENT_ID; @@ -2419,6 +2421,7 @@ ATH11K_QMI_WLFW_SERVICE_INS_ID_V01); if (ret < 0) { ath11k_warn(ab, "failed to add qmi lookup\n"); + destroy_workqueue(ab->qmi.event_wq); return ret; } --- linux-azure-5.8-5.8.0.orig/drivers/net/wireless/ath/ath11k/reg.c +++ linux-azure-5.8-5.8.0/drivers/net/wireless/ath/ath11k/reg.c @@ -80,6 +80,7 @@ */ init_country_param.flags = ALPHA_IS_SET; memcpy(&init_country_param.cc_info.alpha2, request->alpha2, 2); + init_country_param.cc_info.alpha2[2] = 0; ret = ath11k_wmi_send_init_country_cmd(ar, init_country_param); if (ret) @@ -202,7 +203,7 @@ ab = ar->ab; pdev_id = ar->pdev_idx; - spin_lock(&ab->base_lock); + spin_lock_bh(&ab->base_lock); if (init) { /* Apply the regd received during init through @@ -223,7 +224,7 @@ if (!regd) { ret = -EINVAL; - spin_unlock(&ab->base_lock); + spin_unlock_bh(&ab->base_lock); goto err; } @@ -234,7 +235,7 @@ if (regd_copy) ath11k_copy_regd(regd, regd_copy); - spin_unlock(&ab->base_lock); + spin_unlock_bh(&ab->base_lock); if (!regd_copy) { ret = -ENOMEM; @@ -580,7 +581,6 @@ if (!tmp_regd) goto ret; - tmp_regd->n_reg_rules = num_rules; memcpy(tmp_regd->alpha2, reg_info->alpha2, REG_ALPHA2_LEN + 1); memcpy(alpha2, reg_info->alpha2, REG_ALPHA2_LEN + 1); alpha2[2] = '\0'; @@ -593,7 +593,7 @@ /* Update reg_rules[] below. Firmware is expected to * send these rules in order(2G rules first and then 5G) */ - for (; i < tmp_regd->n_reg_rules; i++) { + for (; i < num_rules; i++) { if (reg_info->num_2g_reg_rules && (i < reg_info->num_2g_reg_rules)) { reg_rule = reg_info->reg_rules_2g_ptr + i; @@ -648,6 +648,8 @@ flags); } + tmp_regd->n_reg_rules = i; + if (intersect) { default_regd = ab->default_regd[reg_info->phy_id]; --- linux-azure-5.8-5.8.0.orig/drivers/net/wireless/ath/ath6kl/main.c +++ linux-azure-5.8-5.8.0/drivers/net/wireless/ath/ath6kl/main.c @@ -430,6 +430,9 @@ ath6kl_dbg(ATH6KL_DBG_TRC, "new station %pM aid=%d\n", mac_addr, aid); + if (aid < 1 || aid > AP_MAX_NUM_STA) + return; + if (assoc_req_len > sizeof(struct ieee80211_hdr_3addr)) { struct ieee80211_mgmt *mgmt = (struct ieee80211_mgmt *) assoc_info; --- linux-azure-5.8-5.8.0.orig/drivers/net/wireless/ath/ath6kl/wmi.c +++ linux-azure-5.8-5.8.0/drivers/net/wireless/ath/ath6kl/wmi.c @@ -2645,6 +2645,11 @@ return -EINVAL; } + if (tsid >= 16) { + ath6kl_err("invalid tsid: %d\n", tsid); + return -EINVAL; + } + skb = ath6kl_wmi_get_new_buf(sizeof(*cmd)); if (!skb) return -ENOMEM; --- linux-azure-5.8-5.8.0.orig/drivers/net/wireless/ath/ath9k/debug.c +++ linux-azure-5.8-5.8.0/drivers/net/wireless/ath/ath9k/debug.c @@ -1223,8 +1223,11 @@ ah->nf_override = val; - if (ah->curchan) + if (ah->curchan) { + ath9k_ps_wakeup(sc); ath9k_hw_loadnf(ah, ah->curchan); + ath9k_ps_restore(sc); + } return count; } --- linux-azure-5.8-5.8.0.orig/drivers/net/wireless/ath/ath9k/hif_usb.c +++ linux-azure-5.8-5.8.0/drivers/net/wireless/ath/ath9k/hif_usb.c @@ -449,10 +449,19 @@ spin_unlock_irqrestore(&hif_dev->tx.tx_lock, flags); /* The pending URBs have to be canceled. */ + spin_lock_irqsave(&hif_dev->tx.tx_lock, flags); list_for_each_entry_safe(tx_buf, tx_buf_tmp, &hif_dev->tx.tx_pending, list) { + usb_get_urb(tx_buf->urb); + spin_unlock_irqrestore(&hif_dev->tx.tx_lock, flags); usb_kill_urb(tx_buf->urb); + list_del(&tx_buf->list); + usb_free_urb(tx_buf->urb); + kfree(tx_buf->buf); + kfree(tx_buf); + spin_lock_irqsave(&hif_dev->tx.tx_lock, flags); } + spin_unlock_irqrestore(&hif_dev->tx.tx_lock, flags); usb_kill_anchored_urbs(&hif_dev->mgmt_submitted); } @@ -762,27 +771,37 @@ struct tx_buf *tx_buf = NULL, *tx_buf_tmp = NULL; unsigned long flags; + spin_lock_irqsave(&hif_dev->tx.tx_lock, flags); list_for_each_entry_safe(tx_buf, tx_buf_tmp, &hif_dev->tx.tx_buf, list) { + usb_get_urb(tx_buf->urb); + spin_unlock_irqrestore(&hif_dev->tx.tx_lock, flags); usb_kill_urb(tx_buf->urb); list_del(&tx_buf->list); usb_free_urb(tx_buf->urb); kfree(tx_buf->buf); kfree(tx_buf); + spin_lock_irqsave(&hif_dev->tx.tx_lock, flags); } + spin_unlock_irqrestore(&hif_dev->tx.tx_lock, flags); spin_lock_irqsave(&hif_dev->tx.tx_lock, flags); hif_dev->tx.flags |= HIF_USB_TX_FLUSH; spin_unlock_irqrestore(&hif_dev->tx.tx_lock, flags); + spin_lock_irqsave(&hif_dev->tx.tx_lock, flags); list_for_each_entry_safe(tx_buf, tx_buf_tmp, &hif_dev->tx.tx_pending, list) { + usb_get_urb(tx_buf->urb); + spin_unlock_irqrestore(&hif_dev->tx.tx_lock, flags); usb_kill_urb(tx_buf->urb); list_del(&tx_buf->list); usb_free_urb(tx_buf->urb); kfree(tx_buf->buf); kfree(tx_buf); + spin_lock_irqsave(&hif_dev->tx.tx_lock, flags); } + spin_unlock_irqrestore(&hif_dev->tx.tx_lock, flags); usb_kill_anchored_urbs(&hif_dev->mgmt_submitted); } --- linux-azure-5.8-5.8.0.orig/drivers/net/wireless/ath/ath9k/htc_drv_txrx.c +++ linux-azure-5.8-5.8.0/drivers/net/wireless/ath/ath9k/htc_drv_txrx.c @@ -974,7 +974,7 @@ struct ath_htc_rx_status *rxstatus; struct ath_rx_status rx_stats; bool decrypt_error = false; - __be16 rs_datalen; + u16 rs_datalen; bool is_phyerr; if (skb->len < HTC_RX_FRAME_HEADER_SIZE) { --- linux-azure-5.8-5.8.0.orig/drivers/net/wireless/ath/ath9k/htc_hst.c +++ linux-azure-5.8-5.8.0/drivers/net/wireless/ath/ath9k/htc_hst.c @@ -339,6 +339,8 @@ if (skb) { htc_hdr = (struct htc_frame_hdr *) skb->data; + if (htc_hdr->endpoint_id >= ARRAY_SIZE(htc_handle->endpoint)) + goto ret; endpoint = &htc_handle->endpoint[htc_hdr->endpoint_id]; skb_pull(skb, sizeof(struct htc_frame_hdr)); --- linux-azure-5.8-5.8.0.orig/drivers/net/wireless/ath/wcn36xx/main.c +++ linux-azure-5.8-5.8.0/drivers/net/wireless/ath/wcn36xx/main.c @@ -163,7 +163,7 @@ .ampdu_density = IEEE80211_HT_MPDU_DENSITY_16, .mcs = { .rx_mask = { 0xff, 0, 0, 0, 0, 0, 0, 0, 0, 0, }, - .rx_highest = cpu_to_le16(72), + .rx_highest = cpu_to_le16(150), .tx_params = IEEE80211_HT_MCS_TX_DEFINED, } } --- linux-azure-5.8-5.8.0.orig/drivers/net/wireless/ath/wil6210/Kconfig +++ linux-azure-5.8-5.8.0/drivers/net/wireless/ath/wil6210/Kconfig @@ -2,6 +2,7 @@ config WIL6210 tristate "Wilocity 60g WiFi card wil6210 support" select WANT_DEV_COREDUMP + select CRC32 depends on CFG80211 depends on PCI default n --- linux-azure-5.8-5.8.0.orig/drivers/net/wireless/broadcom/b43/phy_n.c +++ linux-azure-5.8-5.8.0/drivers/net/wireless/broadcom/b43/phy_n.c @@ -5308,7 +5308,7 @@ for (i = 0; i < 4; i++) { if (dev->phy.rev >= 3) - table[i] = coef[i]; + coef[i] = table[i]; else coef[i] = 0; } --- linux-azure-5.8-5.8.0.orig/drivers/net/wireless/broadcom/brcm80211/brcmfmac/cfg80211.c +++ linux-azure-5.8-5.8.0/drivers/net/wireless/broadcom/brcm80211/brcmfmac/cfg80211.c @@ -84,6 +84,8 @@ #define BRCMF_ND_INFO_TIMEOUT msecs_to_jiffies(2000) +#define BRCMF_PS_MAX_TIMEOUT_MS 2000 + #define BRCMF_ASSOC_PARAMS_FIXED_SIZE \ (sizeof(struct brcmf_assoc_params_le) - sizeof(u16)) @@ -2133,7 +2135,8 @@ BRCMF_WSEC_MAX_PSK_LEN); else if (profile->use_fwsup == BRCMF_PROFILE_FWSUP_SAE) { /* clean up user-space RSNE */ - if (brcmf_fil_iovar_data_set(ifp, "wpaie", NULL, 0)) { + err = brcmf_fil_iovar_data_set(ifp, "wpaie", NULL, 0); + if (err) { bphy_err(drvr, "failed to clean up user-space RSNE\n"); goto done; } @@ -2941,6 +2944,12 @@ else bphy_err(drvr, "error (%d)\n", err); } + + err = brcmf_fil_iovar_int_set(ifp, "pm2_sleep_ret", + min_t(u32, timeout, BRCMF_PS_MAX_TIMEOUT_MS)); + if (err) + bphy_err(drvr, "Unable to set pm timeout, (%d)\n", err); + done: brcmf_dbg(TRACE, "Exit\n"); return err; --- linux-azure-5.8-5.8.0.orig/drivers/net/wireless/broadcom/brcm80211/brcmfmac/core.c +++ linux-azure-5.8-5.8.0/drivers/net/wireless/broadcom/brcm80211/brcmfmac/core.c @@ -483,7 +483,7 @@ ret = brcmf_proto_hdrpull(drvr, true, skb, ifp); if (ret || !(*ifp) || !(*ifp)->ndev) { - if (ret != -ENODATA && *ifp) + if (ret != -ENODATA && *ifp && (*ifp)->ndev) (*ifp)->ndev->stats.rx_errors++; brcmu_pkt_buf_free_skb(skb); return -ENODATA; --- linux-azure-5.8-5.8.0.orig/drivers/net/wireless/broadcom/brcm80211/brcmfmac/fweh.c +++ linux-azure-5.8-5.8.0/drivers/net/wireless/broadcom/brcm80211/brcmfmac/fweh.c @@ -304,10 +304,12 @@ { struct brcmf_fweh_info *fweh = &drvr->fweh; - /* cancel the worker */ - cancel_work_sync(&fweh->event_work); - WARN_ON(!list_empty(&fweh->event_q)); - memset(fweh->evt_handler, 0, sizeof(fweh->evt_handler)); + /* cancel the worker if initialized */ + if (fweh->event_work.func) { + cancel_work_sync(&fweh->event_work); + WARN_ON(!list_empty(&fweh->event_q)); + memset(fweh->evt_handler, 0, sizeof(fweh->evt_handler)); + } } /** --- linux-azure-5.8-5.8.0.orig/drivers/net/wireless/broadcom/brcm80211/brcmfmac/fwil_types.h +++ linux-azure-5.8-5.8.0/drivers/net/wireless/broadcom/brcm80211/brcmfmac/fwil_types.h @@ -19,7 +19,7 @@ #define BRCMF_ARP_OL_PEER_AUTO_REPLY 0x00000008 #define BRCMF_BSS_INFO_VERSION 109 /* curr ver of brcmf_bss_info_le struct */ -#define BRCMF_BSS_RSSI_ON_CHANNEL 0x0002 +#define BRCMF_BSS_RSSI_ON_CHANNEL 0x0004 #define BRCMF_STA_BRCM 0x00000001 /* Running a Broadcom driver */ #define BRCMF_STA_WME 0x00000002 /* WMM association */ --- linux-azure-5.8-5.8.0.orig/drivers/net/wireless/broadcom/brcm80211/brcmfmac/fwsignal.c +++ linux-azure-5.8-5.8.0/drivers/net/wireless/broadcom/brcm80211/brcmfmac/fwsignal.c @@ -621,6 +621,7 @@ static void brcmf_fws_psq_flush(struct brcmf_fws_info *fws, struct pktq *q, int ifidx) { + struct brcmf_fws_hanger_item *hi; bool (*matchfn)(struct sk_buff *, void *) = NULL; struct sk_buff *skb; int prec; @@ -632,6 +633,9 @@ skb = brcmu_pktq_pdeq_match(q, prec, matchfn, &ifidx); while (skb) { hslot = brcmf_skb_htod_tag_get_field(skb, HSLOT); + hi = &fws->hanger.items[hslot]; + WARN_ON(skb != hi->pkt); + hi->state = BRCMF_FWS_HANGER_ITEM_STATE_FREE; brcmf_fws_hanger_poppkt(&fws->hanger, hslot, &skb, true); brcmu_pkt_buf_free_skb(skb); --- linux-azure-5.8-5.8.0.orig/drivers/net/wireless/broadcom/brcm80211/brcmfmac/msgbuf.c +++ linux-azure-5.8-5.8.0/drivers/net/wireless/broadcom/brcm80211/brcmfmac/msgbuf.c @@ -1619,6 +1619,8 @@ BRCMF_TX_IOCTL_MAX_MSG_SIZE, msgbuf->ioctbuf, msgbuf->ioctbuf_handle); + if (msgbuf->txflow_wq) + destroy_workqueue(msgbuf->txflow_wq); kfree(msgbuf); } return -ENOMEM; --- linux-azure-5.8-5.8.0.orig/drivers/net/wireless/broadcom/brcm80211/brcmfmac/pcie.c +++ linux-azure-5.8-5.8.0/drivers/net/wireless/broadcom/brcm80211/brcmfmac/pcie.c @@ -1936,16 +1936,18 @@ fwreq = brcmf_pcie_prepare_fw_request(devinfo); if (!fwreq) { ret = -ENOMEM; - goto fail_bus; + goto fail_brcmf; } ret = brcmf_fw_get_firmwares(bus->dev, fwreq, brcmf_pcie_setup); if (ret < 0) { kfree(fwreq); - goto fail_bus; + goto fail_brcmf; } return 0; +fail_brcmf: + brcmf_free(&devinfo->pdev->dev); fail_bus: kfree(bus->msgbuf); kfree(bus); --- linux-azure-5.8-5.8.0.orig/drivers/net/wireless/broadcom/brcm80211/brcmfmac/sdio.c +++ linux-azure-5.8-5.8.0/drivers/net/wireless/broadcom/brcm80211/brcmfmac/sdio.c @@ -3699,7 +3699,11 @@ if (bus->idlecount > bus->idletime) { brcmf_dbg(SDIO, "idle\n"); sdio_claim_host(bus->sdiodev->func1); - brcmf_sdio_wd_timer(bus, false); +#ifdef DEBUG + if (!BRCMF_FWCON_ON() || + bus->console_interval == 0) +#endif + brcmf_sdio_wd_timer(bus, false); bus->idlecount = 0; brcmf_sdio_bus_sleep(bus, true, false); sdio_release_host(bus->sdiodev->func1); @@ -4223,6 +4227,7 @@ brcmf_sdiod_writeb(sdiod, SBSDIO_FUNC1_MESBUSYCTRL, CY_43012_MESBUSYCTRL, &err); break; + case SDIO_DEVICE_ID_BROADCOM_4329: case SDIO_DEVICE_ID_BROADCOM_4339: brcmf_dbg(INFO, "set F2 watermark to 0x%x*4 bytes for 4339\n", CY_4339_F2_WATERMARK); @@ -4487,6 +4492,7 @@ brcmf_sdiod_intr_unregister(bus->sdiodev); brcmf_detach(bus->sdiodev->dev); + brcmf_free(bus->sdiodev->dev); cancel_work_sync(&bus->datawork); if (bus->brcmf_wq) --- linux-azure-5.8-5.8.0.orig/drivers/net/wireless/broadcom/brcm80211/brcmsmac/phy/phy_lcn.c +++ linux-azure-5.8-5.8.0/drivers/net/wireless/broadcom/brcm80211/brcmsmac/phy/phy_lcn.c @@ -5065,8 +5065,10 @@ pi->pi_fptr.radioloftget = wlc_lcnphy_get_radio_loft; pi->pi_fptr.detach = wlc_phy_detach_lcnphy; - if (!wlc_phy_txpwr_srom_read_lcnphy(pi)) + if (!wlc_phy_txpwr_srom_read_lcnphy(pi)) { + kfree(pi->u.pi_lcnphy); return false; + } if (LCNREV_IS(pi->pubpi.phy_rev, 1)) { if (pi_lcn->lcnphy_tempsense_option == 3) { --- linux-azure-5.8-5.8.0.orig/drivers/net/wireless/intel/iwlegacy/common.c +++ linux-azure-5.8-5.8.0/drivers/net/wireless/intel/iwlegacy/common.c @@ -4286,8 +4286,8 @@ * power savings, even without L1. */ if (il->cfg->set_l0s) { - pcie_capability_read_word(il->pci_dev, PCI_EXP_LNKCTL, &lctl); - if (lctl & PCI_EXP_LNKCTL_ASPM_L1) { + ret = pcie_capability_read_word(il->pci_dev, PCI_EXP_LNKCTL, &lctl); + if (!ret && (lctl & PCI_EXP_LNKCTL_ASPM_L1)) { /* L1-ASPM enabled; disable(!) L0S */ il_set_bit(il, CSR_GIO_REG, CSR_GIO_REG_VAL_L0S_ENABLED); --- linux-azure-5.8-5.8.0.orig/drivers/net/wireless/intel/iwlwifi/cfg/22000.c +++ linux-azure-5.8-5.8.0/drivers/net/wireless/intel/iwlwifi/cfg/22000.c @@ -338,6 +338,7 @@ const char iwl_ax200_name[] = "Intel(R) Wi-Fi 6 AX200 160MHz"; const char iwl_ax201_name[] = "Intel(R) Wi-Fi 6 AX201 160MHz"; const char iwl_ax101_name[] = "Intel(R) Wi-Fi 6 AX101"; +const char iwl_ax203_name[] = "Intel(R) Wi-Fi 6 AX203"; const char iwl_ax200_killer_1650w_name[] = "Killer(R) Wi-Fi 6 AX1650w 160MHz Wireless Network Adapter (200D2W)"; @@ -357,6 +358,18 @@ .num_rbds = IWL_NUM_RBDS_22000_HE, }; +const struct iwl_cfg iwl_qu_b0_hr_b0 = { + .fw_name_pre = IWL_QU_B_HR_B_FW_PRE, + IWL_DEVICE_22500, + /* + * This device doesn't support receiving BlockAck with a large bitmap + * so we need to restrict the size of transmitted aggregation to the + * HT size; mac80211 would otherwise pick the HE max (256) by default. + */ + .max_tx_agg_size = IEEE80211_MAX_AMPDU_BUF_HT, + .num_rbds = IWL_NUM_RBDS_22000_HE, +}; + const struct iwl_cfg iwl_ax201_cfg_qu_hr = { .name = "Intel(R) Wi-Fi 6 AX201 160MHz", .fw_name_pre = IWL_QU_B_HR_B_FW_PRE, @@ -383,6 +396,18 @@ .num_rbds = IWL_NUM_RBDS_22000_HE, }; +const struct iwl_cfg iwl_qu_c0_hr_b0 = { + .fw_name_pre = IWL_QU_C_HR_B_FW_PRE, + IWL_DEVICE_22500, + /* + * This device doesn't support receiving BlockAck with a large bitmap + * so we need to restrict the size of transmitted aggregation to the + * HT size; mac80211 would otherwise pick the HE max (256) by default. + */ + .max_tx_agg_size = IEEE80211_MAX_AMPDU_BUF_HT, + .num_rbds = IWL_NUM_RBDS_22000_HE, +}; + const struct iwl_cfg iwl_ax201_cfg_qu_c0_hr_b0 = { .name = "Intel(R) Wi-Fi 6 AX201 160MHz", .fw_name_pre = IWL_QU_C_HR_B_FW_PRE, --- linux-azure-5.8-5.8.0.orig/drivers/net/wireless/intel/iwlwifi/fw/api/sta.h +++ linux-azure-5.8-5.8.0/drivers/net/wireless/intel/iwlwifi/fw/api/sta.h @@ -5,10 +5,9 @@ * * GPL LICENSE SUMMARY * - * Copyright(c) 2012 - 2014 Intel Corporation. All rights reserved. * Copyright(c) 2013 - 2014 Intel Mobile Communications GmbH * Copyright(c) 2016 - 2017 Intel Deutschland GmbH - * Copyright(c) 2018 - 2019 Intel Corporation + * Copyright(c) 2012-2014, 2018 - 2020 Intel Corporation * * This program is free software; you can redistribute it and/or modify * it under the terms of version 2 of the GNU General Public License as @@ -28,10 +27,9 @@ * * BSD LICENSE * - * Copyright(c) 2012 - 2014 Intel Corporation. All rights reserved. * Copyright(c) 2013 - 2014 Intel Mobile Communications GmbH * Copyright(c) 2016 - 2017 Intel Deutschland GmbH - * Copyright(c) 2018 - 2019 Intel Corporation + * Copyright(c) 2012-2014, 2018 - 2020 Intel Corporation * All rights reserved. * * Redistribution and use in source and binary forms, with or without @@ -128,7 +126,9 @@ STA_FLG_MAX_AGG_SIZE_256K = (5 << STA_FLG_MAX_AGG_SIZE_SHIFT), STA_FLG_MAX_AGG_SIZE_512K = (6 << STA_FLG_MAX_AGG_SIZE_SHIFT), STA_FLG_MAX_AGG_SIZE_1024K = (7 << STA_FLG_MAX_AGG_SIZE_SHIFT), - STA_FLG_MAX_AGG_SIZE_MSK = (7 << STA_FLG_MAX_AGG_SIZE_SHIFT), + STA_FLG_MAX_AGG_SIZE_2M = (8 << STA_FLG_MAX_AGG_SIZE_SHIFT), + STA_FLG_MAX_AGG_SIZE_4M = (9 << STA_FLG_MAX_AGG_SIZE_SHIFT), + STA_FLG_MAX_AGG_SIZE_MSK = (0xf << STA_FLG_MAX_AGG_SIZE_SHIFT), STA_FLG_AGG_MPDU_DENS_SHIFT = 23, STA_FLG_AGG_MPDU_DENS_2US = (4 << STA_FLG_AGG_MPDU_DENS_SHIFT), --- linux-azure-5.8-5.8.0.orig/drivers/net/wireless/intel/iwlwifi/fw/api/time-event.h +++ linux-azure-5.8-5.8.0/drivers/net/wireless/intel/iwlwifi/fw/api/time-event.h @@ -8,7 +8,7 @@ * Copyright(c) 2012 - 2014 Intel Corporation. All rights reserved. * Copyright(c) 2013 - 2015 Intel Mobile Communications GmbH * Copyright(c) 2016 - 2017 Intel Deutschland GmbH - * Copyright(c) 2018 - 2019 Intel Corporation + * Copyright(c) 2018 - 2020 Intel Corporation * * This program is free software; you can redistribute it and/or modify * it under the terms of version 2 of the GNU General Public License as @@ -31,7 +31,7 @@ * Copyright(c) 2012 - 2014 Intel Corporation. All rights reserved. * Copyright(c) 2013 - 2015 Intel Mobile Communications GmbH * Copyright(c) 2016 - 2017 Intel Deutschland GmbH - * Copyright(c) 2018 - 2019 Intel Corporation + * Copyright(c) 2018 - 2020 Intel Corporation * All rights reserved. * * Redistribution and use in source and binary forms, with or without @@ -421,12 +421,14 @@ * able to run the GO Negotiation. Will not be fragmented and not * repetitive. Valid only on the P2P Device MAC. Only the duration will * be taken into account. + * @SESSION_PROTECT_CONF_MAX_ID: not used */ enum iwl_mvm_session_prot_conf_id { SESSION_PROTECT_CONF_ASSOC, SESSION_PROTECT_CONF_GO_CLIENT_ASSOC, SESSION_PROTECT_CONF_P2P_DEVICE_DISCOV, SESSION_PROTECT_CONF_P2P_GO_NEGOTIATION, + SESSION_PROTECT_CONF_MAX_ID, }; /* SESSION_PROTECTION_CONF_ID_E_VER_1 */ /** @@ -459,7 +461,7 @@ * @mac_id: the mac id for which the session protection started / ended * @status: 1 means success, 0 means failure * @start: 1 means the session protection started, 0 means it ended - * @conf_id: the configuration id of the session that started / eneded + * @conf_id: see &enum iwl_mvm_session_prot_conf_id * * Note that any session protection will always get two notifications: start * and end even the firmware could not schedule it. --- linux-azure-5.8-5.8.0.orig/drivers/net/wireless/intel/iwlwifi/iwl-config.h +++ linux-azure-5.8-5.8.0/drivers/net/wireless/intel/iwlwifi/iwl-config.h @@ -488,14 +488,14 @@ #define IWL_CFG_RF_ID_HR 0x7 #define IWL_CFG_RF_ID_HR1 0x4 -#define IWL_CFG_NO_160 0x0 -#define IWL_CFG_160 0x1 +#define IWL_CFG_NO_160 0x1 +#define IWL_CFG_160 0x0 #define IWL_CFG_CORES_BT 0x0 #define IWL_CFG_CORES_BT_GNSS 0x5 #define IWL_SUBDEVICE_RF_ID(subdevice) ((u16)((subdevice) & 0x00F0) >> 4) -#define IWL_SUBDEVICE_NO_160(subdevice) ((u16)((subdevice) & 0x0100) >> 9) +#define IWL_SUBDEVICE_NO_160(subdevice) ((u16)((subdevice) & 0x0200) >> 9) #define IWL_SUBDEVICE_CORES(subdevice) ((u16)((subdevice) & 0x1C00) >> 10) struct iwl_dev_info { @@ -539,6 +539,7 @@ extern const char iwl9560_killer_1550i_name[]; extern const char iwl9560_killer_1550s_name[]; extern const char iwl_ax200_name[]; +extern const char iwl_ax203_name[]; extern const char iwl_ax201_name[]; extern const char iwl_ax101_name[]; extern const char iwl_ax200_killer_1650w_name[]; @@ -618,6 +619,8 @@ extern const struct iwl_cfg iwl_qu_b0_hr1_b0; extern const struct iwl_cfg iwl_qu_c0_hr1_b0; extern const struct iwl_cfg iwl_quz_a0_hr1_b0; +extern const struct iwl_cfg iwl_qu_b0_hr_b0; +extern const struct iwl_cfg iwl_qu_c0_hr_b0; extern const struct iwl_cfg iwl_ax200_cfg_cc; extern const struct iwl_cfg iwl_ax201_cfg_qu_hr; extern const struct iwl_cfg iwl_ax201_cfg_qu_hr; --- linux-azure-5.8-5.8.0.orig/drivers/net/wireless/intel/iwlwifi/iwl-csr.h +++ linux-azure-5.8-5.8.0/drivers/net/wireless/intel/iwlwifi/iwl-csr.h @@ -147,6 +147,16 @@ #define CSR_MAC_SHADOW_REG_CTL2 (CSR_BASE + 0x0AC) #define CSR_MAC_SHADOW_REG_CTL2_RX_WAKE 0xFFFF +/* LTR control (since IWL_DEVICE_FAMILY_22000) */ +#define CSR_LTR_LONG_VAL_AD (CSR_BASE + 0x0D4) +#define CSR_LTR_LONG_VAL_AD_NO_SNOOP_REQ 0x80000000 +#define CSR_LTR_LONG_VAL_AD_NO_SNOOP_SCALE 0x1c000000 +#define CSR_LTR_LONG_VAL_AD_NO_SNOOP_VAL 0x03ff0000 +#define CSR_LTR_LONG_VAL_AD_SNOOP_REQ 0x00008000 +#define CSR_LTR_LONG_VAL_AD_SNOOP_SCALE 0x00001c00 +#define CSR_LTR_LONG_VAL_AD_SNOOP_VAL 0x000003ff +#define CSR_LTR_LONG_VAL_AD_SCALE_USEC 2 + /* GIO Chicken Bits (PCI Express bus link power management) */ #define CSR_GIO_CHICKEN_BITS (CSR_BASE+0x100) --- linux-azure-5.8-5.8.0.orig/drivers/net/wireless/intel/iwlwifi/iwl-dbg-tlv.c +++ linux-azure-5.8-5.8.0/drivers/net/wireless/intel/iwlwifi/iwl-dbg-tlv.c @@ -797,7 +797,7 @@ struct iwl_fw_ini_trigger_tlv *old_trig = (void *)old->data; __le32 *new_data = new_trig->data, *old_data = old_trig->data; u32 new_dwords_num = iwl_tlv_array_len(new, new_trig, data); - u32 old_dwords_num = iwl_tlv_array_len(new, new_trig, data); + u32 old_dwords_num = iwl_tlv_array_len(old, old_trig, data); int i, j; for (i = 0; i < new_dwords_num; i++) { @@ -947,9 +947,8 @@ struct iwl_rx_packet *pkt = tp_data->fw_pkt; struct iwl_cmd_header *wanted_hdr = (void *)&trig_data; - if (pkt && ((wanted_hdr->cmd == 0 && wanted_hdr->group_id == 0) || - (pkt->hdr.cmd == wanted_hdr->cmd && - pkt->hdr.group_id == wanted_hdr->group_id))) { + if (pkt && (pkt->hdr.cmd == wanted_hdr->cmd && + pkt->hdr.group_id == wanted_hdr->group_id)) { struct iwl_rx_packet *fw_pkt = kmemdup(pkt, sizeof(*pkt) + iwl_rx_packet_payload_len(pkt), @@ -1012,6 +1011,9 @@ enum iwl_fw_ini_buffer_location *ini_dest = &fwrt->trans->dbg.ini_dest; int ret, i; + if (*ini_dest != IWL_FW_INI_LOCATION_INVALID) + return; + IWL_DEBUG_FW(fwrt, "WRT: Generating active triggers list, domain 0x%x\n", fwrt->trans->dbg.domains_bitmap); --- linux-azure-5.8-5.8.0.orig/drivers/net/wireless/intel/iwlwifi/iwl-prph.h +++ linux-azure-5.8-5.8.0/drivers/net/wireless/intel/iwlwifi/iwl-prph.h @@ -355,6 +355,12 @@ #define RADIO_RSP_ADDR_POS (6) #define RADIO_RSP_RD_CMD (3) +/* LTR control (Qu only) */ +#define HPM_MAC_LTR_CSR 0xa0348c +#define HPM_MAC_LRT_ENABLE_ALL 0xf +/* also uses CSR_LTR_* for values */ +#define HPM_UMAC_LTR 0xa03480 + /* FW monitor */ #define MON_BUFF_SAMPLE_CTL (0xa03c00) #define MON_BUFF_BASE_ADDR (0xa03c1c) --- linux-azure-5.8-5.8.0.orig/drivers/net/wireless/intel/iwlwifi/iwl-trans.h +++ linux-azure-5.8-5.8.0/drivers/net/wireless/intel/iwlwifi/iwl-trans.h @@ -316,6 +316,7 @@ #define IWL_MGMT_TID 15 #define IWL_FRAME_LIMIT 64 #define IWL_MAX_RX_HW_QUEUES 16 +#define IWL_9000_MAX_RX_HW_QUEUES 6 /** * enum iwl_wowlan_status - WoWLAN image/device status --- linux-azure-5.8-5.8.0.orig/drivers/net/wireless/intel/iwlwifi/mvm/debugfs-vif.c +++ linux-azure-5.8-5.8.0/drivers/net/wireless/intel/iwlwifi/mvm/debugfs-vif.c @@ -514,7 +514,10 @@ const size_t bufsz = sizeof(buf); int pos = 0; + mutex_lock(&mvm->mutex); iwl_mvm_get_sync_time(mvm, &curr_gp2, &curr_os); + mutex_unlock(&mvm->mutex); + do_div(curr_os, NSEC_PER_USEC); diff = curr_os - curr_gp2; pos += scnprintf(buf + pos, bufsz - pos, "diff=%lld\n", diff); --- linux-azure-5.8-5.8.0.orig/drivers/net/wireless/intel/iwlwifi/mvm/fw.c +++ linux-azure-5.8-5.8.0/drivers/net/wireless/intel/iwlwifi/mvm/fw.c @@ -132,7 +132,14 @@ .dataflags[0] = IWL_HCMD_DFL_NOCOPY, }; - /* Do not configure default queue, it is configured via context info */ + /* + * The default queue is configured via context info, so if we + * have a single queue, there's nothing to do here. + */ + if (mvm->trans->num_rx_queues == 1) + return 0; + + /* skip the default queue */ num_queues = mvm->trans->num_rx_queues - 1; size = struct_size(cmd, data, num_queues); --- linux-azure-5.8-5.8.0.orig/drivers/net/wireless/intel/iwlwifi/mvm/mac80211.c +++ linux-azure-5.8-5.8.0/drivers/net/wireless/intel/iwlwifi/mvm/mac80211.c @@ -3049,7 +3049,7 @@ /* this would be a mac80211 bug ... but don't crash */ if (WARN_ON_ONCE(!mvmvif->phy_ctxt)) - return -EINVAL; + return test_bit(IWL_MVM_STATUS_HW_RESTART_REQUESTED, &mvm->status) ? 0 : -EINVAL; /* * If we are in a STA removal flow and in DQA mode: @@ -3096,6 +3096,9 @@ goto out_unlock; } + if (vif->type == NL80211_IFTYPE_STATION) + vif->bss_conf.he_support = sta->he_cap.has_he; + if (sta->tdls && (vif->p2p || iwl_mvm_tdls_sta_count(mvm, NULL) == @@ -3685,9 +3688,12 @@ tail->apply_time_max_delay = cpu_to_le32(delay); IWL_DEBUG_TE(mvm, - "ROC: Requesting to remain on channel %u for %ums (requested = %ums, max_delay = %ums, dtim_interval = %ums)\n", - channel->hw_value, req_dur, duration, delay, - dtim_interval); + "ROC: Requesting to remain on channel %u for %ums\n", + channel->hw_value, req_dur); + IWL_DEBUG_TE(mvm, + "\t(requested = %ums, max_delay = %ums, dtim_interval = %ums)\n", + duration, delay, dtim_interval); + /* Set the node address */ memcpy(tail->node_addr, vif->addr, ETH_ALEN); @@ -4198,6 +4204,9 @@ iwl_mvm_binding_remove_vif(mvm, vif); out: + if (fw_has_capa(&mvm->fw->ucode_capa, IWL_UCODE_TLV_CAPA_CHANNEL_SWITCH_CMD) && + switching_chanctx) + return; mvmvif->phy_ctxt = NULL; iwl_mvm_power_update_mac(mvm); } --- linux-azure-5.8-5.8.0.orig/drivers/net/wireless/intel/iwlwifi/mvm/ops.c +++ linux-azure-5.8-5.8.0/drivers/net/wireless/intel/iwlwifi/mvm/ops.c @@ -311,6 +311,12 @@ iwl_mvm_mu_mimo_grp_notif, RX_HANDLER_SYNC), RX_HANDLER_GRP(DATA_PATH_GROUP, STA_PM_NOTIF, iwl_mvm_sta_pm_notif, RX_HANDLER_SYNC), + RX_HANDLER_GRP(MAC_CONF_GROUP, PROBE_RESPONSE_DATA_NOTIF, + iwl_mvm_probe_resp_data_notif, + RX_HANDLER_ASYNC_LOCKED), + RX_HANDLER_GRP(MAC_CONF_GROUP, CHANNEL_SWITCH_NOA_NOTIF, + iwl_mvm_channel_switch_noa_notif, + RX_HANDLER_SYNC), }; #undef RX_HANDLER #undef RX_HANDLER_GRP @@ -834,6 +840,10 @@ if (!mvm->scan_cmd) goto out_free; + /* invalidate ids to prevent accidental removal of sta_id 0 */ + mvm->aux_sta.sta_id = IWL_MVM_INVALID_STA; + mvm->snif_sta.sta_id = IWL_MVM_INVALID_STA; + /* Set EBS as successful as long as not stated otherwise by the FW. */ mvm->last_ebs_successful = true; @@ -1234,6 +1244,7 @@ reprobe = container_of(wk, struct iwl_mvm_reprobe, work); if (device_reprobe(reprobe->dev)) dev_err(reprobe->dev, "reprobe failed!\n"); + put_device(reprobe->dev); kfree(reprobe); module_put(THIS_MODULE); } @@ -1284,7 +1295,7 @@ module_put(THIS_MODULE); return; } - reprobe->dev = mvm->trans->dev; + reprobe->dev = get_device(mvm->trans->dev); INIT_WORK(&reprobe->work, iwl_mvm_reprobe_wk); schedule_work(&reprobe->work); } else if (test_bit(IWL_MVM_STATUS_HW_RESTART_REQUESTED, --- linux-azure-5.8-5.8.0.orig/drivers/net/wireless/intel/iwlwifi/mvm/sta.c +++ linux-azure-5.8-5.8.0/drivers/net/wireless/intel/iwlwifi/mvm/sta.c @@ -196,6 +196,7 @@ mpdu_dens = sta->ht_cap.ampdu_density; } + if (sta->vht_cap.vht_supported) { agg_size = sta->vht_cap.cap & IEEE80211_VHT_CAP_MAX_A_MPDU_LENGTH_EXPONENT_MASK; @@ -205,6 +206,23 @@ agg_size = sta->ht_cap.ampdu_factor; } + /* D6.0 10.12.2 A-MPDU length limit rules + * A STA indicates the maximum length of the A-MPDU preEOF padding + * that it can receive in an HE PPDU in the Maximum A-MPDU Length + * Exponent field in its HT Capabilities, VHT Capabilities, + * and HE 6 GHz Band Capabilities elements (if present) and the + * Maximum AMPDU Length Exponent Extension field in its HE + * Capabilities element + */ + if (sta->he_cap.has_he) + agg_size += u8_get_bits(sta->he_cap.he_cap_elem.mac_cap_info[3], + IEEE80211_HE_MAC_CAP3_MAX_AMPDU_LEN_EXP_MASK); + + /* Limit to max A-MPDU supported by FW */ + if (agg_size > (STA_FLG_MAX_AGG_SIZE_4M >> STA_FLG_MAX_AGG_SIZE_SHIFT)) + agg_size = (STA_FLG_MAX_AGG_SIZE_4M >> + STA_FLG_MAX_AGG_SIZE_SHIFT); + add_sta_cmd.station_flags |= cpu_to_le32(agg_size << STA_FLG_MAX_AGG_SIZE_SHIFT); add_sta_cmd.station_flags |= @@ -2083,6 +2101,9 @@ lockdep_assert_held(&mvm->mutex); + if (WARN_ON_ONCE(mvm->snif_sta.sta_id == IWL_MVM_INVALID_STA)) + return -EINVAL; + iwl_mvm_disable_txq(mvm, NULL, mvm->snif_queue, IWL_MAX_TID_COUNT, 0); ret = iwl_mvm_rm_sta_common(mvm, mvm->snif_sta.sta_id); if (ret) @@ -2097,6 +2118,9 @@ lockdep_assert_held(&mvm->mutex); + if (WARN_ON_ONCE(mvm->aux_sta.sta_id == IWL_MVM_INVALID_STA)) + return -EINVAL; + iwl_mvm_disable_txq(mvm, NULL, mvm->aux_queue, IWL_MAX_TID_COUNT, 0); ret = iwl_mvm_rm_sta_common(mvm, mvm->aux_sta.sta_id); if (ret) --- linux-azure-5.8-5.8.0.orig/drivers/net/wireless/intel/iwlwifi/mvm/time-event.c +++ linux-azure-5.8-5.8.0/drivers/net/wireless/intel/iwlwifi/mvm/time-event.c @@ -638,11 +638,32 @@ } } +static void iwl_mvm_cancel_session_protection(struct iwl_mvm *mvm, + struct iwl_mvm_vif *mvmvif) +{ + struct iwl_mvm_session_prot_cmd cmd = { + .id_and_color = + cpu_to_le32(FW_CMD_ID_AND_COLOR(mvmvif->id, + mvmvif->color)), + .action = cpu_to_le32(FW_CTXT_ACTION_REMOVE), + .conf_id = cpu_to_le32(mvmvif->time_event_data.id), + }; + int ret; + + ret = iwl_mvm_send_cmd_pdu(mvm, iwl_cmd_id(SESSION_PROTECTION_CMD, + MAC_CONF_GROUP, 0), + 0, sizeof(cmd), &cmd); + if (ret) + IWL_ERR(mvm, + "Couldn't send the SESSION_PROTECTION_CMD: %d\n", ret); +} + static bool __iwl_mvm_remove_time_event(struct iwl_mvm *mvm, struct iwl_mvm_time_event_data *te_data, u32 *uid) { u32 id; + struct iwl_mvm_vif *mvmvif = iwl_mvm_vif_from_mac80211(te_data->vif); /* * It is possible that by the time we got to this point the time @@ -660,14 +681,29 @@ iwl_mvm_te_clear_data(mvm, te_data); spin_unlock_bh(&mvm->time_event_lock); - /* - * It is possible that by the time we try to remove it, the time event - * has already ended and removed. In such a case there is no need to - * send a removal command. + /* When session protection is supported, the te_data->id field + * is reused to save session protection's configuration. */ - if (id == TE_MAX) { - IWL_DEBUG_TE(mvm, "TE 0x%x has already ended\n", *uid); + if (fw_has_capa(&mvm->fw->ucode_capa, + IWL_UCODE_TLV_CAPA_SESSION_PROT_CMD)) { + if (mvmvif && id < SESSION_PROTECT_CONF_MAX_ID) { + /* Session protection is still ongoing. Cancel it */ + iwl_mvm_cancel_session_protection(mvm, mvmvif); + if (te_data->vif->type == NL80211_IFTYPE_P2P_DEVICE) { + set_bit(IWL_MVM_STATUS_NEED_FLUSH_P2P, &mvm->status); + iwl_mvm_roc_finished(mvm); + } + } return false; + } else { + /* It is possible that by the time we try to remove it, the + * time event has already ended and removed. In such a case + * there is no need to send a removal command. + */ + if (id == TE_MAX) { + IWL_DEBUG_TE(mvm, "TE 0x%x has already ended\n", *uid); + return false; + } } return true; @@ -768,6 +804,7 @@ struct iwl_rx_packet *pkt = rxb_addr(rxb); struct iwl_mvm_session_prot_notif *notif = (void *)pkt->data; struct ieee80211_vif *vif; + struct iwl_mvm_vif *mvmvif; rcu_read_lock(); vif = iwl_mvm_rcu_dereference_vif_id(mvm, le32_to_cpu(notif->mac_id), @@ -776,9 +813,10 @@ if (!vif) goto out_unlock; + mvmvif = iwl_mvm_vif_from_mac80211(vif); + /* The vif is not a P2P_DEVICE, maintain its time_event_data */ if (vif->type != NL80211_IFTYPE_P2P_DEVICE) { - struct iwl_mvm_vif *mvmvif = iwl_mvm_vif_from_mac80211(vif); struct iwl_mvm_time_event_data *te_data = &mvmvif->time_event_data; @@ -813,10 +851,14 @@ if (!le32_to_cpu(notif->status) || !le32_to_cpu(notif->start)) { /* End TE, notify mac80211 */ + mvmvif->time_event_data.id = SESSION_PROTECT_CONF_MAX_ID; ieee80211_remain_on_channel_expired(mvm->hw); set_bit(IWL_MVM_STATUS_NEED_FLUSH_P2P, &mvm->status); iwl_mvm_roc_finished(mvm); } else if (le32_to_cpu(notif->start)) { + if (WARN_ON(mvmvif->time_event_data.id != + le32_to_cpu(notif->conf_id))) + goto out_unlock; set_bit(IWL_MVM_STATUS_ROC_RUNNING, &mvm->status); ieee80211_ready_on_channel(mvm->hw); /* Start TE */ } @@ -842,20 +884,24 @@ lockdep_assert_held(&mvm->mutex); + /* The time_event_data.id field is reused to save session + * protection's configuration. + */ switch (type) { case IEEE80211_ROC_TYPE_NORMAL: - cmd.conf_id = - cpu_to_le32(SESSION_PROTECT_CONF_P2P_DEVICE_DISCOV); + mvmvif->time_event_data.id = + SESSION_PROTECT_CONF_P2P_DEVICE_DISCOV; break; case IEEE80211_ROC_TYPE_MGMT_TX: - cmd.conf_id = - cpu_to_le32(SESSION_PROTECT_CONF_P2P_GO_NEGOTIATION); + mvmvif->time_event_data.id = + SESSION_PROTECT_CONF_P2P_GO_NEGOTIATION; break; default: WARN_ONCE(1, "Got an invalid ROC type\n"); return -EINVAL; } + cmd.conf_id = cpu_to_le32(mvmvif->time_event_data.id); return iwl_mvm_send_cmd_pdu(mvm, iwl_cmd_id(SESSION_PROTECTION_CMD, MAC_CONF_GROUP, 0), 0, sizeof(cmd), &cmd); @@ -957,25 +1003,6 @@ __iwl_mvm_remove_time_event(mvm, te_data, &uid); } -static void iwl_mvm_cancel_session_protection(struct iwl_mvm *mvm, - struct iwl_mvm_vif *mvmvif) -{ - struct iwl_mvm_session_prot_cmd cmd = { - .id_and_color = - cpu_to_le32(FW_CMD_ID_AND_COLOR(mvmvif->id, - mvmvif->color)), - .action = cpu_to_le32(FW_CTXT_ACTION_REMOVE), - }; - int ret; - - ret = iwl_mvm_send_cmd_pdu(mvm, iwl_cmd_id(SESSION_PROTECTION_CMD, - MAC_CONF_GROUP, 0), - 0, sizeof(cmd), &cmd); - if (ret) - IWL_ERR(mvm, - "Couldn't send the SESSION_PROTECTION_CMD: %d\n", ret); -} - void iwl_mvm_stop_roc(struct iwl_mvm *mvm, struct ieee80211_vif *vif) { struct iwl_mvm_vif *mvmvif; @@ -985,10 +1012,13 @@ IWL_UCODE_TLV_CAPA_SESSION_PROT_CMD)) { mvmvif = iwl_mvm_vif_from_mac80211(vif); - iwl_mvm_cancel_session_protection(mvm, mvmvif); - - if (vif->type == NL80211_IFTYPE_P2P_DEVICE) + if (vif->type == NL80211_IFTYPE_P2P_DEVICE) { + iwl_mvm_cancel_session_protection(mvm, mvmvif); set_bit(IWL_MVM_STATUS_NEED_FLUSH_P2P, &mvm->status); + } else { + iwl_mvm_remove_aux_roc_te(mvm, mvmvif, + &mvmvif->time_event_data); + } iwl_mvm_roc_finished(mvm); @@ -1101,10 +1131,15 @@ cpu_to_le32(FW_CMD_ID_AND_COLOR(mvmvif->id, mvmvif->color)), .action = cpu_to_le32(FW_CTXT_ACTION_ADD), - .conf_id = cpu_to_le32(SESSION_PROTECT_CONF_ASSOC), .duration_tu = cpu_to_le32(MSEC_TO_TU(duration)), }; + /* The time_event_data.id field is reused to save session + * protection's configuration. + */ + mvmvif->time_event_data.id = SESSION_PROTECT_CONF_ASSOC; + cmd.conf_id = cpu_to_le32(mvmvif->time_event_data.id); + lockdep_assert_held(&mvm->mutex); spin_lock_bh(&mvm->time_event_lock); --- linux-azure-5.8-5.8.0.orig/drivers/net/wireless/intel/iwlwifi/mvm/tx.c +++ linux-azure-5.8-5.8.0/drivers/net/wireless/intel/iwlwifi/mvm/tx.c @@ -837,6 +837,7 @@ next = skb_gso_segment(skb, netdev_flags); skb_shinfo(skb)->gso_size = mss; + skb_shinfo(skb)->gso_type = ipv4 ? SKB_GSO_TCPV4 : SKB_GSO_TCPV6; if (WARN_ON_ONCE(IS_ERR(next))) return -EINVAL; else if (next) @@ -859,6 +860,8 @@ if (tcp_payload_len > mss) { skb_shinfo(tmp)->gso_size = mss; + skb_shinfo(tmp)->gso_type = ipv4 ? SKB_GSO_TCPV4 : + SKB_GSO_TCPV6; } else { if (qos) { u8 *qc; --- linux-azure-5.8-5.8.0.orig/drivers/net/wireless/intel/iwlwifi/pcie/ctxt-info-gen3.c +++ linux-azure-5.8-5.8.0/drivers/net/wireless/intel/iwlwifi/pcie/ctxt-info-gen3.c @@ -122,6 +122,15 @@ const struct fw_img *fw) { struct iwl_trans_pcie *trans_pcie = IWL_TRANS_GET_PCIE_TRANS(trans); + u32 ltr_val = CSR_LTR_LONG_VAL_AD_NO_SNOOP_REQ | + u32_encode_bits(CSR_LTR_LONG_VAL_AD_SCALE_USEC, + CSR_LTR_LONG_VAL_AD_NO_SNOOP_SCALE) | + u32_encode_bits(250, + CSR_LTR_LONG_VAL_AD_NO_SNOOP_VAL) | + CSR_LTR_LONG_VAL_AD_SNOOP_REQ | + u32_encode_bits(CSR_LTR_LONG_VAL_AD_SCALE_USEC, + CSR_LTR_LONG_VAL_AD_SNOOP_SCALE) | + u32_encode_bits(250, CSR_LTR_LONG_VAL_AD_SNOOP_VAL); struct iwl_context_info_gen3 *ctxt_info_gen3; struct iwl_prph_scratch *prph_scratch; struct iwl_prph_scratch_ctrl_cfg *prph_sc_ctrl; @@ -236,8 +245,10 @@ /* Allocate IML */ iml_img = dma_alloc_coherent(trans->dev, trans->iml_len, &trans_pcie->iml_dma_addr, GFP_KERNEL); - if (!iml_img) - return -ENOMEM; + if (!iml_img) { + ret = -ENOMEM; + goto err_free_ctxt_info; + } memcpy(iml_img, trans->iml, trans->iml_len); @@ -252,6 +263,22 @@ iwl_set_bit(trans, CSR_CTXT_INFO_BOOT_CTRL, CSR_AUTO_FUNC_BOOT_ENA); + + /* + * To workaround hardware latency issues during the boot process, + * initialize the LTR to ~250 usec (see ltr_val above). + * The firmware initializes this again later (to a smaller value). + */ + if ((trans->trans_cfg->device_family == IWL_DEVICE_FAMILY_AX210 || + trans->trans_cfg->device_family == IWL_DEVICE_FAMILY_22000) && + !trans->trans_cfg->integrated) { + iwl_write32(trans, CSR_LTR_LONG_VAL_AD, ltr_val); + } else if (trans->trans_cfg->integrated && + trans->trans_cfg->device_family == IWL_DEVICE_FAMILY_22000) { + iwl_write_prph(trans, HPM_MAC_LTR_CSR, HPM_MAC_LRT_ENABLE_ALL); + iwl_write_prph(trans, HPM_UMAC_LTR, ltr_val); + } + if (trans->trans_cfg->device_family >= IWL_DEVICE_FAMILY_AX210) iwl_write_umac_prph(trans, UREG_CPU_INIT_RUN, 1); else @@ -259,6 +286,11 @@ return 0; +err_free_ctxt_info: + dma_free_coherent(trans->dev, sizeof(*trans_pcie->ctxt_info_gen3), + trans_pcie->ctxt_info_gen3, + trans_pcie->ctxt_info_dma_addr); + trans_pcie->ctxt_info_gen3 = NULL; err_free_prph_info: dma_free_coherent(trans->dev, sizeof(*prph_info), --- linux-azure-5.8-5.8.0.orig/drivers/net/wireless/intel/iwlwifi/pcie/drv.c +++ linux-azure-5.8-5.8.0/drivers/net/wireless/intel/iwlwifi/pcie/drv.c @@ -536,6 +536,7 @@ {IWL_PCI_DEVICE(0x2725, 0x0090, iwlax211_2ax_cfg_so_gf_a0)}, {IWL_PCI_DEVICE(0x2725, 0x0020, iwlax210_2ax_cfg_ty_gf_a0)}, + {IWL_PCI_DEVICE(0x2725, 0x0024, iwlax210_2ax_cfg_ty_gf_a0)}, {IWL_PCI_DEVICE(0x2725, 0x0310, iwlax210_2ax_cfg_ty_gf_a0)}, {IWL_PCI_DEVICE(0x2725, 0x0510, iwlax210_2ax_cfg_ty_gf_a0)}, {IWL_PCI_DEVICE(0x2725, 0x0A10, iwlax210_2ax_cfg_ty_gf_a0)}, @@ -940,6 +941,11 @@ IWL_CFG_RF_TYPE_HR1, IWL_CFG_ANY, IWL_CFG_ANY, IWL_CFG_ANY, iwl_qu_b0_hr1_b0, iwl_ax101_name), + _IWL_DEV_INFO(IWL_CFG_ANY, IWL_CFG_ANY, + IWL_CFG_MAC_TYPE_QU, SILICON_C_STEP, + IWL_CFG_RF_TYPE_HR2, IWL_CFG_ANY, + IWL_CFG_ANY, IWL_CFG_ANY, + iwl_qu_b0_hr_b0, iwl_ax203_name), /* Qu C step */ _IWL_DEV_INFO(IWL_CFG_ANY, IWL_CFG_ANY, @@ -947,6 +953,11 @@ IWL_CFG_RF_TYPE_HR1, IWL_CFG_ANY, IWL_CFG_ANY, IWL_CFG_ANY, iwl_qu_c0_hr1_b0, iwl_ax101_name), + _IWL_DEV_INFO(IWL_CFG_ANY, IWL_CFG_ANY, + IWL_CFG_MAC_TYPE_QU, SILICON_C_STEP, + IWL_CFG_RF_TYPE_HR2, IWL_CFG_ANY, + IWL_CFG_ANY, IWL_CFG_ANY, + iwl_qu_c0_hr_b0, iwl_ax203_name), /* QuZ */ _IWL_DEV_INFO(IWL_CFG_ANY, IWL_CFG_ANY, --- linux-azure-5.8-5.8.0.orig/drivers/net/wireless/intel/iwlwifi/pcie/trans.c +++ linux-azure-5.8-5.8.0/drivers/net/wireless/intel/iwlwifi/pcie/trans.c @@ -1607,11 +1607,15 @@ struct iwl_trans_pcie *trans_pcie = IWL_TRANS_GET_PCIE_TRANS(trans); int max_irqs, num_irqs, i, ret; u16 pci_cmd; + u32 max_rx_queues = IWL_MAX_RX_HW_QUEUES; if (!cfg_trans->mq_rx_supported) goto enable_msi; - max_irqs = min_t(u32, num_online_cpus() + 2, IWL_MAX_RX_HW_QUEUES); + if (cfg_trans->device_family <= IWL_DEVICE_FAMILY_9000) + max_rx_queues = IWL_9000_MAX_RX_HW_QUEUES; + + max_irqs = min_t(u32, num_online_cpus() + 2, max_rx_queues); for (i = 0; i < max_irqs; i++) trans_pcie->msix_entries[i].entry = i; @@ -2155,18 +2159,38 @@ void *buf, int dwords) { unsigned long flags; - int offs, ret = 0; + int offs = 0; u32 *vals = buf; - if (iwl_trans_grab_nic_access(trans, &flags)) { - iwl_write32(trans, HBUS_TARG_MEM_RADDR, addr); - for (offs = 0; offs < dwords; offs++) - vals[offs] = iwl_read32(trans, HBUS_TARG_MEM_RDAT); - iwl_trans_release_nic_access(trans, &flags); - } else { - ret = -EBUSY; + while (offs < dwords) { + /* limit the time we spin here under lock to 1/2s */ + unsigned long end = jiffies + HZ / 2; + bool resched = false; + + if (iwl_trans_grab_nic_access(trans, &flags)) { + iwl_write32(trans, HBUS_TARG_MEM_RADDR, + addr + 4 * offs); + + while (offs < dwords) { + vals[offs] = iwl_read32(trans, + HBUS_TARG_MEM_RDAT); + offs++; + + if (time_after(jiffies, end)) { + resched = true; + break; + } + } + iwl_trans_release_nic_access(trans, &flags); + + if (resched) + cond_resched(); + } else { + return -EBUSY; + } } - return ret; + + return 0; } static int iwl_trans_pcie_write_mem(struct iwl_trans *trans, u32 addr, --- linux-azure-5.8-5.8.0.orig/drivers/net/wireless/intel/iwlwifi/pcie/tx.c +++ linux-azure-5.8-5.8.0/drivers/net/wireless/intel/iwlwifi/pcie/tx.c @@ -660,6 +660,11 @@ struct iwl_trans_pcie *trans_pcie = IWL_TRANS_GET_PCIE_TRANS(trans); struct iwl_txq *txq = trans->txqs.txq[txq_id]; + if (!txq) { + IWL_ERR(trans, "Trying to free a queue that wasn't allocated?\n"); + return; + } + spin_lock_bh(&txq->lock); while (txq->write_ptr != txq->read_ptr) { IWL_DEBUG_TX_REPLY(trans, "Q %d Free %d\n", --- linux-azure-5.8-5.8.0.orig/drivers/net/wireless/intersil/orinoco/orinoco_usb.c +++ linux-azure-5.8-5.8.0/drivers/net/wireless/intersil/orinoco/orinoco_usb.c @@ -1223,13 +1223,6 @@ if (skb->len < ETH_HLEN) goto drop; - ctx = ezusb_alloc_ctx(upriv, EZUSB_RID_TX, 0); - if (!ctx) - goto busy; - - memset(ctx->buf, 0, BULK_BUF_SIZE); - buf = ctx->buf->data; - tx_control = 0; err = orinoco_process_xmit_skb(skb, dev, priv, &tx_control, @@ -1237,6 +1230,13 @@ if (err) goto drop; + ctx = ezusb_alloc_ctx(upriv, EZUSB_RID_TX, 0); + if (!ctx) + goto drop; + + memset(ctx->buf, 0, BULK_BUF_SIZE); + buf = ctx->buf->data; + { __le16 *tx_cntl = (__le16 *)buf; *tx_cntl = cpu_to_le16(tx_control); --- linux-azure-5.8-5.8.0.orig/drivers/net/wireless/intersil/p54/p54pci.c +++ linux-azure-5.8-5.8.0/drivers/net/wireless/intersil/p54/p54pci.c @@ -329,10 +329,12 @@ struct p54p_desc *desc; dma_addr_t mapping; u32 idx, i; + __le32 device_addr; spin_lock_irqsave(&priv->lock, flags); idx = le32_to_cpu(ring_control->host_idx[1]); i = idx % ARRAY_SIZE(ring_control->tx_data); + device_addr = ((struct p54_hdr *)skb->data)->req_id; mapping = pci_map_single(priv->pdev, skb->data, skb->len, PCI_DMA_TODEVICE); @@ -346,7 +348,7 @@ desc = &ring_control->tx_data[i]; desc->host_addr = cpu_to_le32(mapping); - desc->device_addr = ((struct p54_hdr *)skb->data)->req_id; + desc->device_addr = device_addr; desc->len = cpu_to_le16(skb->len); desc->flags = 0; --- linux-azure-5.8-5.8.0.orig/drivers/net/wireless/marvell/mwifiex/fw.h +++ linux-azure-5.8-5.8.0/drivers/net/wireless/marvell/mwifiex/fw.h @@ -217,6 +217,7 @@ #define TLV_TYPE_CHANNEL_STATS (PROPRIETARY_TLV_BASE_ID + 198) #define TLV_BTCOEX_WL_AGGR_WINSIZE (PROPRIETARY_TLV_BASE_ID + 202) #define TLV_BTCOEX_WL_SCANTIME (PROPRIETARY_TLV_BASE_ID + 203) +#define TLV_TYPE_LED_CONTROL (PROPRIETARY_TLV_BASE_ID + 205) #define TLV_TYPE_BSS_MODE (PROPRIETARY_TLV_BASE_ID + 206) #define TLV_TYPE_RANDOM_MAC (PROPRIETARY_TLV_BASE_ID + 236) #define TLV_TYPE_CHAN_ATTR_CFG (PROPRIETARY_TLV_BASE_ID + 237) @@ -364,6 +365,7 @@ #define HostCmd_CMD_802_11_AD_HOC_JOIN 0x002c #define HostCmd_CMD_802_11_AD_HOC_STOP 0x0040 #define HostCmd_CMD_802_11_MAC_ADDRESS 0x004D +#define HostCmd_CMD_802_11_LED_CONTROL 0X004E #define HostCmd_CMD_802_11D_DOMAIN_INFO 0x005b #define HostCmd_CMD_802_11_KEY_MATERIAL 0x005e #define HostCmd_CMD_802_11_BG_SCAN_CONFIG 0x006b @@ -954,7 +956,7 @@ struct mwifiex_aes_param { u8 pn[WPA_PN_SIZE]; __le16 key_len; - u8 key[WLAN_KEY_LEN_CCMP]; + u8 key[WLAN_KEY_LEN_CCMP_256]; } __packed; struct mwifiex_wapi_param { @@ -1196,6 +1198,16 @@ u8 oper_mode; } __packed; +struct mwifiex_led_param { + __le16 mode; + __le16 on; +} __packed; + +struct mwifiex_ie_types_led_param { + struct mwifiex_ie_types_header header; + struct mwifiex_led_param led_cfg; +} __packed; + struct host_cmd_ds_802_11_ad_hoc_start { u8 ssid[IEEE80211_MAX_SSID_LEN]; u8 bss_mode; @@ -1319,6 +1331,11 @@ } params; } __packed; +struct host_cmd_ds_802_11_led_control { + __le16 action; + __le16 num_led; +} __packed; + enum SNMP_MIB_INDEX { OP_RATE_SET_I = 1, DTIM_PERIOD_I = 3, @@ -2373,6 +2390,7 @@ struct host_cmd_sdio_sp_rx_aggr_cfg sdio_rx_aggr_cfg; struct host_cmd_ds_multi_chan_policy mc_policy; struct host_cmd_ds_robust_coex coex; + struct host_cmd_ds_802_11_led_control led_cfg; struct host_cmd_ds_wakeup_reason hs_wakeup_reason; struct host_cmd_ds_gtk_rekey_params rekey; struct host_cmd_ds_chan_region_cfg reg_cfg; --- linux-azure-5.8-5.8.0.orig/drivers/net/wireless/marvell/mwifiex/join.c +++ linux-azure-5.8-5.8.0/drivers/net/wireless/marvell/mwifiex/join.c @@ -877,6 +877,8 @@ memset(adhoc_start->ssid, 0, IEEE80211_MAX_SSID_LEN); + if (req_ssid->ssid_len > IEEE80211_MAX_SSID_LEN) + req_ssid->ssid_len = IEEE80211_MAX_SSID_LEN; memcpy(adhoc_start->ssid, req_ssid->ssid, req_ssid->ssid_len); mwifiex_dbg(adapter, INFO, "info: ADHOC_S_CMD: SSID = %s\n", --- linux-azure-5.8-5.8.0.orig/drivers/net/wireless/marvell/mwifiex/main.c +++ linux-azure-5.8-5.8.0/drivers/net/wireless/marvell/mwifiex/main.c @@ -728,8 +728,10 @@ static int mwifiex_open(struct net_device *dev) { - netif_carrier_off(dev); + struct mwifiex_private *priv = mwifiex_netdev_get_priv(dev); + netif_carrier_off(dev); + mwifiex_set_led(priv->adapter, MWIFIEX_LED_ON); return 0; } @@ -760,6 +762,7 @@ cfg80211_sched_scan_stopped(priv->wdev.wiphy, 0); } + mwifiex_set_led(priv->adapter, MWIFIEX_LED_OFF); return 0; } @@ -1469,6 +1472,8 @@ priv = mwifiex_get_priv(adapter, MWIFIEX_BSS_ROLE_ANY); mwifiex_deauthenticate(priv, NULL); + mwifiex_init_shutdown_fw(priv, MWIFIEX_FUNC_SHUTDOWN); + mwifiex_uninit_sw(adapter); adapter->is_up = false; --- linux-azure-5.8-5.8.0.orig/drivers/net/wireless/marvell/mwifiex/main.h +++ linux-azure-5.8-5.8.0/drivers/net/wireless/marvell/mwifiex/main.h @@ -132,6 +132,10 @@ #define PKT_TYPE_MGMT 0xE5 +#define MWIFIEX_LED_ON 1 +#define MWIFIEX_LED_OFF 0 +#define MWIFIEX_LED_MAX 3 + /* * Do not check for data_received for USB, as data_received * is handled in mwifiex_usb_recv for USB @@ -700,6 +704,7 @@ struct mwifiex_user_scan_chan hidden_chan[MWIFIEX_USER_SCAN_CHAN_MAX]; u8 assoc_resp_ht_param; bool ht_param_present; + bool is_edge_gateway; }; @@ -1495,6 +1500,7 @@ struct cmd_ctrl_node *cmd_queued); int mwifiex_bss_start(struct mwifiex_private *priv, struct cfg80211_bss *bss, struct cfg80211_ssid *req_ssid); +int mwifiex_set_led(struct mwifiex_adapter *adapter, int on); int mwifiex_cancel_hs(struct mwifiex_private *priv, int cmd_type); int mwifiex_enable_hs(struct mwifiex_adapter *adapter); int mwifiex_disable_auto_ds(struct mwifiex_private *priv); --- linux-azure-5.8-5.8.0.orig/drivers/net/wireless/marvell/mwifiex/pcie.c +++ linux-azure-5.8-5.8.0/drivers/net/wireless/marvell/mwifiex/pcie.c @@ -229,6 +229,8 @@ const struct pci_device_id *ent) { struct pcie_service_card *card; + struct mwifiex_private *priv; + struct pci_dev *pdev_host; int ret; pr_debug("info: vendor=0x%4.04X device=0x%4.04X rev=%d\n", @@ -267,6 +269,14 @@ return -1; } + priv = mwifiex_get_priv(card->adapter, MWIFIEX_BSS_ROLE_STA); + pdev_host = pci_get_subsys(PCI_ANY_ID, PCI_ANY_ID, 0x1028, 0x0720, NULL); + if (!pdev_host) + pdev_host = pci_get_subsys(PCI_ANY_ID, PCI_ANY_ID, 0x1028, 0x0733, NULL); + if (pdev_host) { + priv->is_edge_gateway = true; + pci_dev_put(pdev_host); + } return 0; } --- linux-azure-5.8-5.8.0.orig/drivers/net/wireless/marvell/mwifiex/scan.c +++ linux-azure-5.8-5.8.0/drivers/net/wireless/marvell/mwifiex/scan.c @@ -1889,7 +1889,7 @@ chan, CFG80211_BSS_FTYPE_UNKNOWN, bssid, timestamp, cap_info_bitmap, beacon_period, - ie_buf, ie_len, rssi, GFP_KERNEL); + ie_buf, ie_len, rssi, GFP_ATOMIC); if (bss) { bss_priv = (struct mwifiex_bss_priv *)bss->priv; bss_priv->band = band; --- linux-azure-5.8-5.8.0.orig/drivers/net/wireless/marvell/mwifiex/sdio.c +++ linux-azure-5.8-5.8.0/drivers/net/wireless/marvell/mwifiex/sdio.c @@ -1976,6 +1976,8 @@ kfree(card->mpa_rx.buf); card->mpa_tx.buf_size = 0; card->mpa_rx.buf_size = 0; + card->mpa_tx.buf = NULL; + card->mpa_rx.buf = NULL; } return ret; --- linux-azure-5.8-5.8.0.orig/drivers/net/wireless/marvell/mwifiex/sdio.h +++ linux-azure-5.8-5.8.0/drivers/net/wireless/marvell/mwifiex/sdio.h @@ -36,9 +36,9 @@ #define SD8897_DEFAULT_FW_NAME "mrvl/sd8897_uapsta.bin" #define SD8887_DEFAULT_FW_NAME "mrvl/sd8887_uapsta.bin" #define SD8801_DEFAULT_FW_NAME "mrvl/sd8801_uapsta.bin" -#define SD8977_DEFAULT_FW_NAME "mrvl/sd8977_uapsta.bin" +#define SD8977_DEFAULT_FW_NAME "mrvl/sdsd8977_combo_v2.bin" #define SD8987_DEFAULT_FW_NAME "mrvl/sd8987_uapsta.bin" -#define SD8997_DEFAULT_FW_NAME "mrvl/sd8997_uapsta.bin" +#define SD8997_DEFAULT_FW_NAME "mrvl/sdsd8997_combo_v4.bin" #define BLOCK_MODE 1 #define BYTE_MODE 0 --- linux-azure-5.8-5.8.0.orig/drivers/net/wireless/marvell/mwifiex/sta_cmd.c +++ linux-azure-5.8-5.8.0/drivers/net/wireless/marvell/mwifiex/sta_cmd.c @@ -424,6 +424,31 @@ return 0; } +static int mwifiex_cmd_802_11_led_cfg(struct mwifiex_private *priv, + struct host_cmd_ds_command *cmd, + u16 cmd_action, + struct mwifiex_led_param *ledcfg_param) +{ + struct host_cmd_ds_802_11_led_control *led_cfg = &cmd->params.led_cfg; + struct mwifiex_ie_types_led_param *led_tlv; + u8 *pos; + + cmd->command = cpu_to_le16(HostCmd_CMD_802_11_LED_CONTROL); + cmd->size = cpu_to_le16(S_DS_GEN); + le16_add_cpu(&cmd->size, sizeof(struct host_cmd_ds_802_11_led_control)); + + led_cfg->action = cpu_to_le16(cmd_action); + led_cfg->num_led = cpu_to_le16(MWIFIEX_LED_MAX); + + pos = (u8 *)led_cfg + sizeof(struct host_cmd_ds_802_11_led_control); + led_tlv = (void *)pos; + led_tlv->header.type = cpu_to_le16(TLV_TYPE_LED_CONTROL); + led_tlv->header.len = cpu_to_le16(sizeof(struct mwifiex_led_param)); + memcpy(&led_tlv->led_cfg, ledcfg_param, sizeof(struct mwifiex_led_param)); + le16_add_cpu(&cmd->size, sizeof(struct mwifiex_ie_types_led_param)); + return 0; +} + /* * This function prepares command to set/get MAC address. * @@ -1992,6 +2017,10 @@ ret = mwifiex_cmd_802_11_hs_cfg(priv, cmd_ptr, cmd_action, (struct mwifiex_hs_config_param *) data_buf); break; + case HostCmd_CMD_802_11_LED_CONTROL: + ret = mwifiex_cmd_802_11_led_cfg(priv, cmd_ptr, cmd_action, + data_buf); + break; case HostCmd_CMD_802_11_SCAN: ret = mwifiex_cmd_802_11_scan(cmd_ptr, data_buf); break; --- linux-azure-5.8-5.8.0.orig/drivers/net/wireless/marvell/mwifiex/sta_cmdresp.c +++ linux-azure-5.8-5.8.0/drivers/net/wireless/marvell/mwifiex/sta_cmdresp.c @@ -580,6 +580,11 @@ { struct host_cmd_ds_802_11_key_material *key = &resp->params.key_material; + int len; + + len = le16_to_cpu(key->key_param_set.key_len); + if (len > sizeof(key->key_param_set.key)) + return -EINVAL; if (le16_to_cpu(key->action) == HostCmd_ACT_GEN_SET) { if ((le16_to_cpu(key->key_param_set.key_info) & KEY_MCAST)) { @@ -593,9 +598,8 @@ memset(priv->aes_key.key_param_set.key, 0, sizeof(key->key_param_set.key)); - priv->aes_key.key_param_set.key_len = key->key_param_set.key_len; - memcpy(priv->aes_key.key_param_set.key, key->key_param_set.key, - le16_to_cpu(priv->aes_key.key_param_set.key_len)); + priv->aes_key.key_param_set.key_len = cpu_to_le16(len); + memcpy(priv->aes_key.key_param_set.key, key->key_param_set.key, len); return 0; } @@ -610,9 +614,14 @@ struct host_cmd_ds_command *resp) { struct host_cmd_ds_802_11_key_material_v2 *key_v2; - __le16 len; + int len; key_v2 = &resp->params.key_material_v2; + + len = le16_to_cpu(key_v2->key_param_set.key_params.aes.key_len); + if (len > sizeof(key_v2->key_param_set.key_params.aes.key)) + return -EINVAL; + if (le16_to_cpu(key_v2->action) == HostCmd_ACT_GEN_SET) { if ((le16_to_cpu(key_v2->key_param_set.key_info) & KEY_MCAST)) { mwifiex_dbg(priv->adapter, INFO, "info: key: GTK is set\n"); @@ -626,12 +635,11 @@ return 0; memset(priv->aes_key_v2.key_param_set.key_params.aes.key, 0, - WLAN_KEY_LEN_CCMP); + sizeof(key_v2->key_param_set.key_params.aes.key)); priv->aes_key_v2.key_param_set.key_params.aes.key_len = - key_v2->key_param_set.key_params.aes.key_len; - len = priv->aes_key_v2.key_param_set.key_params.aes.key_len; + cpu_to_le16(len); memcpy(priv->aes_key_v2.key_param_set.key_params.aes.key, - key_v2->key_param_set.key_params.aes.key, le16_to_cpu(len)); + key_v2->key_param_set.key_params.aes.key, len); return 0; } @@ -1400,6 +1408,8 @@ case HostCmd_CMD_ROBUST_COEX: ret = mwifiex_ret_robust_coex(priv, resp, data_buf); break; + case HostCmd_CMD_802_11_LED_CONTROL: + break; case HostCmd_CMD_GTK_REKEY_OFFLOAD_CFG: break; case HostCmd_CMD_CHAN_REGION_CFG: --- linux-azure-5.8-5.8.0.orig/drivers/net/wireless/marvell/mwifiex/sta_ioctl.c +++ linux-azure-5.8-5.8.0/drivers/net/wireless/marvell/mwifiex/sta_ioctl.c @@ -570,6 +570,24 @@ } EXPORT_SYMBOL_GPL(mwifiex_enable_hs); +int mwifiex_set_led(struct mwifiex_adapter *adapter, int on) +{ + struct mwifiex_private *priv; + struct mwifiex_led_param ledcfg; + + priv = mwifiex_get_priv(adapter, MWIFIEX_BSS_ROLE_STA); + if (!priv->is_edge_gateway) + return -ENODEV; + + memset(&ledcfg, 0, sizeof(struct mwifiex_led_param)); + ledcfg.on = cpu_to_le16(on); + + return mwifiex_send_cmd(priv, + HostCmd_CMD_802_11_LED_CONTROL, + HostCmd_ACT_GEN_SET, 0, + &ledcfg, true); +} + /* * IOCTL request handler to get BSS information. * --- linux-azure-5.8-5.8.0.orig/drivers/net/wireless/marvell/mwifiex/usb.c +++ linux-azure-5.8-5.8.0/drivers/net/wireless/marvell/mwifiex/usb.c @@ -1353,7 +1353,8 @@ skb_dequeue(&port->tx_aggr.aggr_list))) mwifiex_write_data_complete(adapter, skb_tmp, 0, -1); - del_timer_sync(&port->tx_aggr.timer_cnxt.hold_timer); + if (port->tx_aggr.timer_cnxt.hold_timer.function) + del_timer_sync(&port->tx_aggr.timer_cnxt.hold_timer); port->tx_aggr.timer_cnxt.is_hold_timer_set = false; port->tx_aggr.timer_cnxt.hold_tmo_msecs = 0; } --- linux-azure-5.8-5.8.0.orig/drivers/net/wireless/mediatek/mt76/dma.c +++ linux-azure-5.8-5.8.0/drivers/net/wireless/mediatek/mt76/dma.c @@ -464,15 +464,17 @@ mt76_add_fragment(struct mt76_dev *dev, struct mt76_queue *q, void *data, int len, bool more) { - struct page *page = virt_to_head_page(data); - int offset = data - page_address(page); struct sk_buff *skb = q->rx_head; struct skb_shared_info *shinfo = skb_shinfo(skb); if (shinfo->nr_frags < ARRAY_SIZE(shinfo->frags)) { - offset += q->buf_offset; + struct page *page = virt_to_head_page(data); + int offset = data - page_address(page) + q->buf_offset; + skb_add_rx_frag(skb, shinfo->nr_frags, page, offset, len, q->buf_size); + } else { + skb_free_frag(data); } if (more) --- linux-azure-5.8-5.8.0.orig/drivers/net/wireless/mediatek/mt76/mac80211.c +++ linux-azure-5.8-5.8.0/drivers/net/wireless/mediatek/mt76/mac80211.c @@ -299,6 +299,7 @@ ieee80211_hw_set(hw, SUPPORT_FAST_XMIT); ieee80211_hw_set(hw, SUPPORTS_CLONED_SKBS); ieee80211_hw_set(hw, SUPPORTS_AMSDU_IN_AMPDU); + ieee80211_hw_set(hw, SUPPORTS_REORDERING_BUFFER); ieee80211_hw_set(hw, TX_AMSDU); ieee80211_hw_set(hw, TX_FRAG_LIST); ieee80211_hw_set(hw, MFP_CAPABLE); --- linux-azure-5.8-5.8.0.orig/drivers/net/wireless/mediatek/mt76/mt7603/pci.c +++ linux-azure-5.8-5.8.0/drivers/net/wireless/mediatek/mt76/mt7603/pci.c @@ -55,7 +55,8 @@ return 0; error: - ieee80211_free_hw(mt76_hw(dev)); + mt76_free_device(&dev->mt76); + return ret; } --- linux-azure-5.8-5.8.0.orig/drivers/net/wireless/mediatek/mt76/mt7615/mac.c +++ linux-azure-5.8-5.8.0/drivers/net/wireless/mediatek/mt76/mt7615/mac.c @@ -980,15 +980,17 @@ if (cmd == SET_KEY) { if (cipher == MT_CIPHER_TKIP) { /* Rx/Tx MIC keys are swapped */ + memcpy(data, key, 16); memcpy(data + 16, key + 24, 8); memcpy(data + 24, key + 16, 8); + } else { + if (cipher != MT_CIPHER_BIP_CMAC_128 && wcid->cipher) + memmove(data + 16, data, 16); + if (cipher != MT_CIPHER_BIP_CMAC_128 || !wcid->cipher) + memcpy(data, key, keylen); + else if (cipher == MT_CIPHER_BIP_CMAC_128) + memcpy(data + 16, key, 16); } - if (cipher != MT_CIPHER_BIP_CMAC_128 && wcid->cipher) - memmove(data + 16, data, 16); - if (cipher != MT_CIPHER_BIP_CMAC_128 || !wcid->cipher) - memcpy(data, key, keylen); - else if (cipher == MT_CIPHER_BIP_CMAC_128) - memcpy(data + 16, key, 16); } else { if (wcid->cipher & ~BIT(cipher)) { if (cipher != MT_CIPHER_BIP_CMAC_128) --- linux-azure-5.8-5.8.0.orig/drivers/net/wireless/mediatek/mt76/mt7615/mcu.c +++ linux-azure-5.8-5.8.0/drivers/net/wireless/mediatek/mt76/mt7615/mcu.c @@ -180,8 +180,10 @@ struct mt7615_mcu_rxd *rxd = (struct mt7615_mcu_rxd *)skb->data; int ret = 0; - if (seq != rxd->seq) - return -EAGAIN; + if (seq != rxd->seq) { + ret = -EAGAIN; + goto out; + } switch (cmd) { case MCU_CMD_PATCH_SEM_CONTROL: @@ -208,6 +210,7 @@ default: break; } +out: dev_kfree_skb(skb); return ret; @@ -1206,8 +1209,12 @@ skb = enable ? wskb : sskb; err = __mt76_mcu_skb_send_msg(&dev->mt76, skb, cmd, true); - if (err < 0) + if (err < 0) { + skb = enable ? sskb : wskb; + dev_kfree_skb(skb); + return err; + } cmd = enable ? MCU_EXT_CMD_STA_REC_UPDATE : MCU_EXT_CMD_WTBL_UPDATE; skb = enable ? sskb : wskb; @@ -2007,7 +2014,8 @@ sizeof(dev->mt76.hw->wiphy->fw_version), "%.10s-%.15s", hdr->fw_ver, hdr->build_date); - if (!strncmp(hdr->fw_ver, "2.0", sizeof(hdr->fw_ver))) { + if (!is_mt7615(&dev->mt76) && + !strncmp(hdr->fw_ver, "2.0", sizeof(hdr->fw_ver))) { dev->fw_ver = MT7615_FIRMWARE_V2; dev->mcu_ops = &sta_update_ops; } else { @@ -2574,11 +2582,11 @@ int mt7615_mcu_set_fcc5_lpn(struct mt7615_dev *dev, int val) { struct { - u16 tag; - u16 min_lpn; + __le16 tag; + __le16 min_lpn; } req = { - .tag = 0x1, - .min_lpn = val, + .tag = cpu_to_le16(0x1), + .min_lpn = cpu_to_le16(val), }; return __mt76_mcu_send_msg(&dev->mt76, MCU_EXT_CMD_SET_RDD_TH, @@ -2589,14 +2597,27 @@ const struct mt7615_dfs_pulse *pulse) { struct { - u16 tag; - struct mt7615_dfs_pulse pulse; + __le16 tag; + __le32 max_width; /* us */ + __le32 max_pwr; /* dbm */ + __le32 min_pwr; /* dbm */ + __le32 min_stgr_pri; /* us */ + __le32 max_stgr_pri; /* us */ + __le32 min_cr_pri; /* us */ + __le32 max_cr_pri; /* us */ } req = { - .tag = 0x3, + .tag = cpu_to_le16(0x3), +#define __req_field(field) .field = cpu_to_le32(pulse->field) + __req_field(max_width), + __req_field(max_pwr), + __req_field(min_pwr), + __req_field(min_stgr_pri), + __req_field(max_stgr_pri), + __req_field(min_cr_pri), + __req_field(max_cr_pri), +#undef __req_field }; - memcpy(&req.pulse, pulse, sizeof(*pulse)); - return __mt76_mcu_send_msg(&dev->mt76, MCU_EXT_CMD_SET_RDD_TH, &req, sizeof(req), true); } @@ -2605,16 +2626,45 @@ const struct mt7615_dfs_pattern *pattern) { struct { - u16 tag; - u16 radar_type; - struct mt7615_dfs_pattern pattern; + __le16 tag; + __le16 radar_type; + u8 enb; + u8 stgr; + u8 min_crpn; + u8 max_crpn; + u8 min_crpr; + u8 min_pw; + u8 max_pw; + __le32 min_pri; + __le32 max_pri; + u8 min_crbn; + u8 max_crbn; + u8 min_stgpn; + u8 max_stgpn; + u8 min_stgpr; } req = { - .tag = 0x2, - .radar_type = index, + .tag = cpu_to_le16(0x2), + .radar_type = cpu_to_le16(index), +#define __req_field_u8(field) .field = pattern->field +#define __req_field_u32(field) .field = cpu_to_le32(pattern->field) + __req_field_u8(enb), + __req_field_u8(stgr), + __req_field_u8(min_crpn), + __req_field_u8(max_crpn), + __req_field_u8(min_crpr), + __req_field_u8(min_pw), + __req_field_u8(max_pw), + __req_field_u32(min_pri), + __req_field_u32(max_pri), + __req_field_u8(min_crbn), + __req_field_u8(max_crbn), + __req_field_u8(min_stgpn), + __req_field_u8(max_stgpn), + __req_field_u8(min_stgpr), +#undef __req_field_u8 +#undef __req_field_u32 }; - memcpy(&req.pattern, pattern, sizeof(*pattern)); - return __mt76_mcu_send_msg(&dev->mt76, MCU_EXT_CMD_SET_RDD_TH, &req, sizeof(req), true); } @@ -2625,9 +2675,9 @@ u8 pulse_num; u8 rsv[3]; struct { - u32 start_time; - u16 width; - s16 power; + __le32 start_time; + __le16 width; + __le16 power; } pattern[32]; } req = { .pulse_num = dev->radar_pattern.n_pulses, @@ -2640,10 +2690,11 @@ /* TODO: add some noise here */ for (i = 0; i < dev->radar_pattern.n_pulses; i++) { - req.pattern[i].width = dev->radar_pattern.width; - req.pattern[i].power = dev->radar_pattern.power; - req.pattern[i].start_time = start_time + - i * dev->radar_pattern.period; + u32 ts = start_time + i * dev->radar_pattern.period; + + req.pattern[i].width = cpu_to_le16(dev->radar_pattern.width); + req.pattern[i].power = cpu_to_le16(dev->radar_pattern.power); + req.pattern[i].start_time = cpu_to_le32(ts); } return __mt76_mcu_send_msg(&dev->mt76, MCU_EXT_CMD_SET_RDD_PATTERN, --- linux-azure-5.8-5.8.0.orig/drivers/net/wireless/mediatek/mt76/mt7615/mmio.c +++ linux-azure-5.8-5.8.0/drivers/net/wireless/mediatek/mt76/mt7615/mmio.c @@ -196,7 +196,8 @@ return 0; error: - ieee80211_free_hw(mt76_hw(dev)); + mt76_free_device(&dev->mt76); + return ret; } --- linux-azure-5.8-5.8.0.orig/drivers/net/wireless/mediatek/mt76/mt7615/usb.c +++ linux-azure-5.8-5.8.0/drivers/net/wireless/mediatek/mt76/mt7615/usb.c @@ -166,12 +166,16 @@ lockdep_assert_held(&dev->mt76.mutex); - if (!sta) - return -EINVAL; + if (!sta) { + err = -EINVAL; + goto out; + } cipher = mt7615_mac_get_cipher(key->cipher); - if (cipher == MT_CIPHER_NONE) - return -EOPNOTSUPP; + if (cipher == MT_CIPHER_NONE) { + err = -EOPNOTSUPP; + goto out; + } wcid = &wd->sta->wcid; @@ -179,19 +183,22 @@ err = mt7615_mac_wtbl_update_key(dev, wcid, key->key, key->keylen, cipher, key->cmd); if (err < 0) - return err; + goto out; err = mt7615_mac_wtbl_update_pk(dev, wcid, cipher, key->keyidx, key->cmd); if (err < 0) - return err; + goto out; if (key->cmd == SET_KEY) wcid->cipher |= BIT(cipher); else wcid->cipher &= ~BIT(cipher); - return 0; +out: + kfree(key->key); + + return err; } void mt7663u_wtbl_work(struct work_struct *work) --- linux-azure-5.8-5.8.0.orig/drivers/net/wireless/mediatek/mt76/mt7615/usb_mcu.c +++ linux-azure-5.8-5.8.0/drivers/net/wireless/mediatek/mt76/mt7615/usb_mcu.c @@ -34,7 +34,6 @@ ret = mt76u_bulk_msg(&dev->mt76, skb->data, skb->len, NULL, 1000, ep); - dev_kfree_skb(skb); if (ret < 0) goto out; @@ -43,6 +42,7 @@ out: mutex_unlock(&mdev->mcu.mutex); + dev_kfree_skb(skb); return ret; } --- linux-azure-5.8-5.8.0.orig/drivers/net/wireless/mediatek/mt76/mt76x0/pci.c +++ linux-azure-5.8-5.8.0/drivers/net/wireless/mediatek/mt76/mt76x0/pci.c @@ -192,7 +192,8 @@ return 0; error: - ieee80211_free_hw(mt76_hw(dev)); + mt76_free_device(&dev->mt76); + return ret; } --- linux-azure-5.8-5.8.0.orig/drivers/net/wireless/mediatek/mt76/mt76x2/pci.c +++ linux-azure-5.8-5.8.0/drivers/net/wireless/mediatek/mt76/mt76x2/pci.c @@ -88,7 +88,8 @@ return 0; error: - ieee80211_free_hw(mt76_hw(dev)); + mt76_free_device(&dev->mt76); + return ret; } --- linux-azure-5.8-5.8.0.orig/drivers/net/wireless/mediatek/mt76/mt7915/debugfs.c +++ linux-azure-5.8-5.8.0/drivers/net/wireless/mediatek/mt76/mt7915/debugfs.c @@ -227,6 +227,7 @@ .read = seq_read, .llseek = seq_lseek, .release = single_release, + .owner = THIS_MODULE, }; static int mt7915_read_temperature(struct seq_file *s, void *data) @@ -384,6 +385,7 @@ return 0; } +#ifdef CONFIG_MAC80211_DEBUGFS /** per-station debugfs **/ /* usage: */ @@ -453,6 +455,7 @@ .read = seq_read, .llseek = seq_lseek, .release = single_release, + .owner = THIS_MODULE, }; void mt7915_sta_add_debugfs(struct ieee80211_hw *hw, struct ieee80211_vif *vif, @@ -461,3 +464,4 @@ debugfs_create_file("fixed_rate", 0600, dir, sta, &fops_fixed_rate); debugfs_create_file("stats", 0400, dir, sta, &fops_sta_stats); } +#endif --- linux-azure-5.8-5.8.0.orig/drivers/net/wireless/mediatek/mt76/mt7915/init.c +++ linux-azure-5.8-5.8.0/drivers/net/wireless/mediatek/mt76/mt7915/init.c @@ -691,8 +691,12 @@ spin_lock_bh(&dev->token_lock); idr_for_each_entry(&dev->token, txwi, id) { mt7915_txp_skb_unmap(&dev->mt76, txwi); - if (txwi->skb) - dev_kfree_skb_any(txwi->skb); + if (txwi->skb) { + struct ieee80211_hw *hw; + + hw = mt76_tx_status_get_hw(&dev->mt76, txwi->skb); + ieee80211_free_txskb(hw, txwi->skb); + } mt76_put_txwi(&dev->mt76, txwi); } spin_unlock_bh(&dev->token_lock); --- linux-azure-5.8-5.8.0.orig/drivers/net/wireless/mediatek/mt76/mt7915/mac.c +++ linux-azure-5.8-5.8.0/drivers/net/wireless/mediatek/mt76/mt7915/mac.c @@ -844,7 +844,7 @@ if (sta || !(info->flags & IEEE80211_TX_CTL_NO_ACK)) mt7915_tx_status(sta, hw, info, NULL); - dev_kfree_skb(skb); + ieee80211_free_txskb(hw, skb); } void mt7915_txp_skb_unmap(struct mt76_dev *dev, --- linux-azure-5.8-5.8.0.orig/drivers/net/wireless/mediatek/mt76/mt7915/mcu.c +++ linux-azure-5.8-5.8.0/drivers/net/wireless/mediatek/mt76/mt7915/mcu.c @@ -505,15 +505,22 @@ mt7915_mcu_tx_rate_report(struct mt7915_dev *dev, struct sk_buff *skb) { struct mt7915_mcu_ra_info *ra = (struct mt7915_mcu_ra_info *)skb->data; - u16 wcidx = le16_to_cpu(ra->wlan_idx); - struct mt76_wcid *wcid = rcu_dereference(dev->mt76.wcid[wcidx]); - struct mt7915_sta *msta = container_of(wcid, struct mt7915_sta, wcid); - struct mt7915_sta_stats *stats = &msta->stats; - struct mt76_phy *mphy = &dev->mphy; struct rate_info rate = {}, prob_rate = {}; + u16 probe = le16_to_cpu(ra->prob_up_rate); u16 attempts = le16_to_cpu(ra->attempts); u16 curr = le16_to_cpu(ra->curr_rate); - u16 probe = le16_to_cpu(ra->prob_up_rate); + u16 wcidx = le16_to_cpu(ra->wlan_idx); + struct mt76_phy *mphy = &dev->mphy; + struct mt7915_sta_stats *stats; + struct mt7915_sta *msta; + struct mt76_wcid *wcid; + + if (wcidx >= MT76_N_WCIDS) + return; + + wcid = rcu_dereference(dev->mt76.wcid[wcidx]); + msta = container_of(wcid, struct mt7915_sta, wcid); + stats = &msta->stats; if (msta->wcid.ext_phy && dev->mt76.phy2) mphy = dev->mt76.phy2; @@ -2260,14 +2267,6 @@ struct bss_info_bcn *bcn; int len = MT7915_BEACON_UPDATE_SIZE + MAX_BEACON_SIZE; - rskb = mt7915_mcu_alloc_sta_req(dev, mvif, NULL, len); - if (IS_ERR(rskb)) - return PTR_ERR(rskb); - - tlv = mt7915_mcu_add_tlv(rskb, BSS_INFO_OFFLOAD, sizeof(*bcn)); - bcn = (struct bss_info_bcn *)tlv; - bcn->enable = en; - skb = ieee80211_beacon_get_template(hw, vif, &offs); if (!skb) return -EINVAL; @@ -2278,6 +2277,16 @@ return -EINVAL; } + rskb = mt7915_mcu_alloc_sta_req(dev, mvif, NULL, len); + if (IS_ERR(rskb)) { + dev_kfree_skb(skb); + return PTR_ERR(rskb); + } + + tlv = mt7915_mcu_add_tlv(rskb, BSS_INFO_OFFLOAD, sizeof(*bcn)); + bcn = (struct bss_info_bcn *)tlv; + bcn->enable = en; + if (mvif->band_idx) { info = IEEE80211_SKB_CB(skb); info->hw_queue |= MT_TX_HW_QUEUE_EXT_PHY; @@ -2665,7 +2674,7 @@ struct { u8 ver; u8 pad; - u16 len; + __le16 len; u8 level; u8 rsv[3]; __le32 module_idx; @@ -2899,12 +2908,12 @@ int mt7915_mcu_set_fcc5_lpn(struct mt7915_dev *dev, int val) { struct { - u32 tag; - u16 min_lpn; + __le32 tag; + __le16 min_lpn; u8 rsv[2]; } __packed req = { - .tag = 0x1, - .min_lpn = val, + .tag = cpu_to_le32(0x1), + .min_lpn = cpu_to_le16(val), }; return __mt76_mcu_send_msg(&dev->mt76, MCU_EXT_CMD_SET_RDD_TH, @@ -2915,13 +2924,28 @@ const struct mt7915_dfs_pulse *pulse) { struct { - u32 tag; - struct mt7915_dfs_pulse pulse; + __le32 tag; + + __le32 max_width; /* us */ + __le32 max_pwr; /* dbm */ + __le32 min_pwr; /* dbm */ + __le32 min_stgr_pri; /* us */ + __le32 max_stgr_pri; /* us */ + __le32 min_cr_pri; /* us */ + __le32 max_cr_pri; /* us */ } __packed req = { - .tag = 0x3, - }; + .tag = cpu_to_le32(0x3), - memcpy(&req.pulse, pulse, sizeof(*pulse)); +#define __req_field(field) .field = cpu_to_le32(pulse->field) + __req_field(max_width), + __req_field(max_pwr), + __req_field(min_pwr), + __req_field(min_stgr_pri), + __req_field(max_stgr_pri), + __req_field(min_cr_pri), + __req_field(max_cr_pri), +#undef __req_field + }; return __mt76_mcu_send_msg(&dev->mt76, MCU_EXT_CMD_SET_RDD_TH, &req, sizeof(req), true); @@ -2931,15 +2955,49 @@ const struct mt7915_dfs_pattern *pattern) { struct { - u32 tag; - u16 radar_type; - struct mt7915_dfs_pattern pattern; + __le32 tag; + __le16 radar_type; + + u8 enb; + u8 stgr; + u8 min_crpn; + u8 max_crpn; + u8 min_crpr; + u8 min_pw; + u32 min_pri; + u32 max_pri; + u8 max_pw; + u8 min_crbn; + u8 max_crbn; + u8 min_stgpn; + u8 max_stgpn; + u8 min_stgpr; + u8 rsv[2]; + u32 min_stgpr_diff; } __packed req = { - .tag = 0x2, - .radar_type = index, - }; + .tag = cpu_to_le32(0x2), + .radar_type = cpu_to_le16(index), - memcpy(&req.pattern, pattern, sizeof(*pattern)); +#define __req_field_u8(field) .field = pattern->field +#define __req_field_u32(field) .field = cpu_to_le32(pattern->field) + __req_field_u8(enb), + __req_field_u8(stgr), + __req_field_u8(min_crpn), + __req_field_u8(max_crpn), + __req_field_u8(min_crpr), + __req_field_u8(min_pw), + __req_field_u32(min_pri), + __req_field_u32(max_pri), + __req_field_u8(max_pw), + __req_field_u8(min_crbn), + __req_field_u8(max_crbn), + __req_field_u8(min_stgpn), + __req_field_u8(max_stgpn), + __req_field_u8(min_stgpr), + __req_field_u32(min_stgpr_diff), +#undef __req_field_u8 +#undef __req_field_u32 + }; return __mt76_mcu_send_msg(&dev->mt76, MCU_EXT_CMD_SET_RDD_TH, &req, sizeof(req), true); @@ -3169,12 +3227,12 @@ u8 drop_tx_idx; u8 sta_idx; /* 256 sta */ u8 rsv[2]; - u32 val; + __le32 val; } __packed req = { .action = MT_SPR_ENABLE, .arg_num = 1, .band_idx = mvif->band_idx, - .val = enable, + .val = cpu_to_le32(enable), }; return __mt76_mcu_send_msg(&dev->mt76, MCU_EXT_CMD_SET_SPR, --- linux-azure-5.8-5.8.0.orig/drivers/net/wireless/mediatek/mt76/mt7915/pci.c +++ linux-azure-5.8-5.8.0/drivers/net/wireless/mediatek/mt76/mt7915/pci.c @@ -142,7 +142,7 @@ dev = container_of(mdev, struct mt7915_dev, mt76); ret = mt7915_alloc_device(pdev, dev); if (ret) - return ret; + goto error; mt76_mmio_init(&dev->mt76, pcim_iomap_table(pdev)[0]); mdev->rev = (mt7915_l1_rr(dev, MT_HW_CHIPID) << 16) | @@ -163,7 +163,8 @@ return 0; error: - ieee80211_free_hw(mt76_hw(dev)); + mt76_free_device(&dev->mt76); + return ret; } --- linux-azure-5.8-5.8.0.orig/drivers/net/wireless/mediatek/mt7601u/dma.c +++ linux-azure-5.8-5.8.0/drivers/net/wireless/mediatek/mt7601u/dma.c @@ -152,8 +152,7 @@ if (new_p) { /* we have one extra ref from the allocator */ - __free_pages(e->p, MT_RX_ORDER); - + put_page(e->p); e->p = new_p; } } @@ -310,7 +309,6 @@ } e = &q->e[q->end]; - e->skb = skb; usb_fill_bulk_urb(e->urb, usb_dev, snd_pipe, skb->data, skb->len, mt7601u_complete_tx, q); ret = usb_submit_urb(e->urb, GFP_ATOMIC); @@ -328,6 +326,7 @@ q->end = (q->end + 1) % q->entries; q->used++; + e->skb = skb; if (q->used >= q->entries) ieee80211_stop_queue(dev->hw, skb_get_queue_mapping(skb)); --- linux-azure-5.8-5.8.0.orig/drivers/net/wireless/quantenna/qtnfmac/commands.c +++ linux-azure-5.8-5.8.0/drivers/net/wireless/quantenna/qtnfmac/commands.c @@ -869,6 +869,7 @@ default: pr_warn("VIF%u.%u: unsupported iftype %d\n", vif->mac->macid, vif->vifid, vif->wdev.iftype); + dev_kfree_skb(cmd_skb); ret = -EINVAL; goto out; } @@ -1924,6 +1925,7 @@ break; default: pr_err("unsupported iftype %d\n", vif->wdev.iftype); + dev_kfree_skb(cmd_skb); ret = -EINVAL; goto out; } --- linux-azure-5.8-5.8.0.orig/drivers/net/wireless/quantenna/qtnfmac/core.c +++ linux-azure-5.8-5.8.0/drivers/net/wireless/quantenna/qtnfmac/core.c @@ -446,8 +446,11 @@ } wiphy = qtnf_wiphy_allocate(bus, pdev); - if (!wiphy) + if (!wiphy) { + if (pdev) + platform_device_unregister(pdev); return ERR_PTR(-ENOMEM); + } mac = wiphy_priv(wiphy); --- linux-azure-5.8-5.8.0.orig/drivers/net/wireless/quantenna/qtnfmac/pcie/pcie.c +++ linux-azure-5.8-5.8.0/drivers/net/wireless/quantenna/qtnfmac/pcie/pcie.c @@ -299,19 +299,19 @@ sysctl_bar = qtnf_map_bar(pdev, QTN_SYSCTL_BAR); if (IS_ERR(sysctl_bar)) { pr_err("failed to map BAR%u\n", QTN_SYSCTL_BAR); - return ret; + return PTR_ERR(sysctl_bar); } dmareg_bar = qtnf_map_bar(pdev, QTN_DMA_BAR); if (IS_ERR(dmareg_bar)) { pr_err("failed to map BAR%u\n", QTN_DMA_BAR); - return ret; + return PTR_ERR(dmareg_bar); } epmem_bar = qtnf_map_bar(pdev, QTN_SHMEM_BAR); if (IS_ERR(epmem_bar)) { pr_err("failed to map BAR%u\n", QTN_SHMEM_BAR); - return ret; + return PTR_ERR(epmem_bar); } chipid = qtnf_chip_id_get(sysctl_bar); --- linux-azure-5.8-5.8.0.orig/drivers/net/wireless/realtek/rtl8xxxu/rtl8xxxu_core.c +++ linux-azure-5.8-5.8.0/drivers/net/wireless/realtek/rtl8xxxu/rtl8xxxu_core.c @@ -5795,7 +5795,6 @@ ret = usb_submit_urb(urb, GFP_KERNEL); if (ret) { usb_unanchor_urb(urb); - usb_free_urb(urb); goto error; } @@ -5804,6 +5803,7 @@ rtl8xxxu_write32(priv, REG_USB_HIMR, val32); error: + usb_free_urb(urb); return ret; } @@ -6318,6 +6318,7 @@ struct rtl8xxxu_priv *priv = hw->priv; struct rtl8xxxu_rx_urb *rx_urb; struct rtl8xxxu_tx_urb *tx_urb; + struct sk_buff *skb; unsigned long flags; int ret, i; @@ -6368,6 +6369,13 @@ rx_urb->hw = hw; ret = rtl8xxxu_submit_rx_urb(priv, rx_urb); + if (ret) { + if (ret != -ENOMEM) { + skb = (struct sk_buff *)rx_urb->urb.context; + dev_kfree_skb(skb); + } + rtl8xxxu_queue_rx_urb(priv, rx_urb); + } } schedule_delayed_work(&priv->ra_watchdog, 2 * HZ); --- linux-azure-5.8-5.8.0.orig/drivers/net/wireless/realtek/rtlwifi/core.c +++ linux-azure-5.8-5.8.0/drivers/net/wireless/realtek/rtlwifi/core.c @@ -78,7 +78,6 @@ RT_TRACE(rtlpriv, COMP_ERR, DBG_LOUD, "Firmware callback routine entered!\n"); - complete(&rtlpriv->firmware_loading_complete); if (!firmware) { if (rtlpriv->cfg->alt_fw_name) { err = request_firmware(&firmware, @@ -91,13 +90,13 @@ } pr_err("Selected firmware is not available\n"); rtlpriv->max_fw_size = 0; - return; + goto exit; } found_alt: if (firmware->size > rtlpriv->max_fw_size) { pr_err("Firmware is too big!\n"); release_firmware(firmware); - return; + goto exit; } if (!is_wow) { memcpy(rtlpriv->rtlhal.pfirmware, firmware->data, @@ -109,6 +108,9 @@ rtlpriv->rtlhal.wowlan_fwsize = firmware->size; } release_firmware(firmware); + +exit: + complete(&rtlpriv->firmware_loading_complete); } void rtl_fw_cb(const struct firmware *firmware, void *context) --- linux-azure-5.8-5.8.0.orig/drivers/net/wireless/realtek/rtlwifi/usb.c +++ linux-azure-5.8-5.8.0/drivers/net/wireless/realtek/rtlwifi/usb.c @@ -718,8 +718,11 @@ usb_anchor_urb(urb, &rtlusb->rx_submitted); err = usb_submit_urb(urb, GFP_KERNEL); - if (err) + if (err) { + usb_unanchor_urb(urb); + usb_free_urb(urb); goto err_out; + } usb_free_urb(urb); } return 0; --- linux-azure-5.8-5.8.0.orig/drivers/net/wireless/realtek/rtw88/coex.c +++ linux-azure-5.8-5.8.0/drivers/net/wireless/realtek/rtw88/coex.c @@ -1934,7 +1934,8 @@ if (coex_stat->wl_under_ips) return; - if (coex->freeze && !coex_stat->bt_setup_link) + if (coex->freeze && coex_dm->reason == COEX_RSN_BTINFO && + !coex_stat->bt_setup_link) return; coex_stat->cnt_wl[COEX_CNT_WL_COEXRUN]++; --- linux-azure-5.8-5.8.0.orig/drivers/net/wireless/realtek/rtw88/debug.c +++ linux-azure-5.8-5.8.0/drivers/net/wireless/realtek/rtw88/debug.c @@ -147,6 +147,8 @@ { int tmp_len; + memset(tmp, 0, size); + if (count < num) return -EFAULT; --- linux-azure-5.8-5.8.0.orig/drivers/net/wireless/realtek/rtw88/fw.c +++ linux-azure-5.8-5.8.0/drivers/net/wireless/realtek/rtw88/fw.c @@ -456,7 +456,7 @@ SET_RA_INFO_INIT_RA_LVL(h2c_pkt, si->init_ra_lv); SET_RA_INFO_SGI_EN(h2c_pkt, si->sgi_enable); SET_RA_INFO_BW_MODE(h2c_pkt, si->bw_mode); - SET_RA_INFO_LDPC(h2c_pkt, si->ldpc_en); + SET_RA_INFO_LDPC(h2c_pkt, !!si->ldpc_en); SET_RA_INFO_NO_UPDATE(h2c_pkt, no_update); SET_RA_INFO_VHT_EN(h2c_pkt, si->vht_enable); SET_RA_INFO_DIS_PT(h2c_pkt, disable_pt); --- linux-azure-5.8-5.8.0.orig/drivers/net/wireless/realtek/rtw88/main.c +++ linux-azure-5.8-5.8.0/drivers/net/wireless/realtek/rtw88/main.c @@ -722,8 +722,6 @@ stbc_en = VHT_STBC_EN; if (sta->vht_cap.cap & IEEE80211_VHT_CAP_RXLDPC) ldpc_en = VHT_LDPC_EN; - if (sta->vht_cap.cap & IEEE80211_VHT_CAP_SHORT_GI_80) - is_support_sgi = true; } else if (sta->ht_cap.ht_supported) { ra_mask |= (sta->ht_cap.mcs.rx_mask[1] << 20) | (sta->ht_cap.mcs.rx_mask[0] << 12); @@ -731,9 +729,6 @@ stbc_en = HT_STBC_EN; if (sta->ht_cap.cap & IEEE80211_HT_CAP_LDPC_CODING) ldpc_en = HT_LDPC_EN; - if (sta->ht_cap.cap & IEEE80211_HT_CAP_SGI_20 || - sta->ht_cap.cap & IEEE80211_HT_CAP_SGI_40) - is_support_sgi = true; } if (efuse->hw_cap.nss == 1) @@ -775,12 +770,18 @@ switch (sta->bandwidth) { case IEEE80211_STA_RX_BW_80: bw_mode = RTW_CHANNEL_WIDTH_80; + is_support_sgi = sta->vht_cap.vht_supported && + (sta->vht_cap.cap & IEEE80211_VHT_CAP_SHORT_GI_80); break; case IEEE80211_STA_RX_BW_40: bw_mode = RTW_CHANNEL_WIDTH_40; + is_support_sgi = sta->ht_cap.ht_supported && + (sta->ht_cap.cap & IEEE80211_HT_CAP_SGI_40); break; default: bw_mode = RTW_CHANNEL_WIDTH_20; + is_support_sgi = sta->ht_cap.ht_supported && + (sta->ht_cap.cap & IEEE80211_HT_CAP_SGI_20); break; } @@ -1464,6 +1465,9 @@ ret = rtw_load_firmware(rtwdev, RTW_WOWLAN_FW); if (ret) { rtw_warn(rtwdev, "no wow firmware loaded\n"); + wait_for_completion(&rtwdev->fw.completion); + if (rtwdev->fw.firmware) + release_firmware(rtwdev->fw.firmware); return ret; } } @@ -1478,6 +1482,8 @@ struct rtw_rsvd_page *rsvd_pkt, *tmp; unsigned long flags; + rtw_wait_firmware_completion(rtwdev); + if (fw->firmware) release_firmware(fw->firmware); --- linux-azure-5.8-5.8.0.orig/drivers/net/wireless/realtek/rtw88/pci.c +++ linux-azure-5.8-5.8.0/drivers/net/wireless/realtek/rtw88/pci.c @@ -14,8 +14,11 @@ #include "debug.h" static bool rtw_disable_msi; +static bool rtw_pci_disable_aspm; module_param_named(disable_msi, rtw_disable_msi, bool, 0644); +module_param_named(disable_aspm, rtw_pci_disable_aspm, bool, 0644); MODULE_PARM_DESC(disable_msi, "Set Y to disable MSI interrupt support"); +MODULE_PARM_DESC(disable_aspm, "Set Y to disable PCI ASPM support"); static u32 rtw_pci_tx_queue_idx_addr[] = { [RTW_TX_QUEUE_BK] = RTK_PCI_TXBD_IDX_BKQ, @@ -1200,6 +1203,9 @@ u8 value; int ret; + if (rtw_pci_disable_aspm) + return; + ret = rtw_dbi_read8(rtwdev, RTK_PCIE_LINK_CFG, &value); if (ret) { rtw_err(rtwdev, "failed to read CLKREQ_L1, ret=%d", ret); @@ -1219,6 +1225,9 @@ u8 value; int ret; + if (rtw_pci_disable_aspm) + return; + ret = rtw_dbi_read8(rtwdev, RTK_PCIE_LINK_CFG, &value); if (ret) { rtw_err(rtwdev, "failed to read ASPM, ret=%d", ret); @@ -1590,6 +1599,8 @@ if (chip->ops->shutdown) chip->ops->shutdown(rtwdev); + + pci_set_power_state(pdev, PCI_D3hot); } EXPORT_SYMBOL(rtw_pci_shutdown); --- linux-azure-5.8-5.8.0.orig/drivers/net/wireless/realtek/rtw88/pci.h +++ linux-azure-5.8-5.8.0/drivers/net/wireless/realtek/rtw88/pci.h @@ -9,8 +9,8 @@ #define RTK_BEQ_TX_DESC_NUM 256 #define RTK_MAX_RX_DESC_NUM 512 -/* 8K + rx desc size */ -#define RTK_PCI_RX_BUF_SIZE (8192 + 24) +/* 11K + rx desc size */ +#define RTK_PCI_RX_BUF_SIZE (11454 + 24) #define RTK_PCI_CTRL 0x300 #define BIT_RST_TRXDMA_INTF BIT(20) --- linux-azure-5.8-5.8.0.orig/drivers/net/wireless/realtek/rtw88/phy.c +++ linux-azure-5.8-5.8.0/drivers/net/wireless/realtek/rtw88/phy.c @@ -147,12 +147,13 @@ { struct rtw_chip_info *chip = rtwdev->chip; struct rtw_hal *hal = &rtwdev->hal; - const struct rtw_hw_reg *dig_cck = &chip->dig_cck[0]; u32 addr, mask; u8 path; - if (dig_cck) + if (chip->dig_cck) { + const struct rtw_hw_reg *dig_cck = &chip->dig_cck[0]; rtw_write32_mask(rtwdev, dig_cck->addr, dig_cck->mask, igi >> 1); + } for (path = 0; path < hal->rf_path_num; path++) { addr = chip->dig[path].addr; --- linux-azure-5.8-5.8.0.orig/drivers/net/wireless/realtek/rtw88/rtw8723d.c +++ linux-azure-5.8-5.8.0/drivers/net/wireless/realtek/rtw88/rtw8723d.c @@ -60,8 +60,8 @@ #define WLAN_MAX_AGG_NR 0x0A #define WLAN_AMPDU_MAX_TIME 0x1C #define WLAN_ANT_SEL 0x82 -#define WLAN_LTR_IDLE_LAT 0x883C883C -#define WLAN_LTR_ACT_LAT 0x880B880B +#define WLAN_LTR_IDLE_LAT 0x90039003 +#define WLAN_LTR_ACT_LAT 0x883c883c #define WLAN_LTR_CTRL1 0xCB004010 #define WLAN_LTR_CTRL2 0x01233425 --- linux-azure-5.8-5.8.0.orig/drivers/net/wireless/realtek/rtw88/rtw8822ce.c +++ linux-azure-5.8-5.8.0/drivers/net/wireless/realtek/rtw88/rtw8822ce.c @@ -11,6 +11,10 @@ PCI_DEVICE(PCI_VENDOR_ID_REALTEK, 0xC822), .driver_data = (kernel_ulong_t)&rtw8822c_hw_spec }, + { + PCI_DEVICE(PCI_VENDOR_ID_REALTEK, 0xC82F), + .driver_data = (kernel_ulong_t)&rtw8822c_hw_spec + }, {} }; MODULE_DEVICE_TABLE(pci, rtw_8822ce_id_table); --- linux-azure-5.8-5.8.0.orig/drivers/net/wireless/realtek/rtw88/tx.c +++ linux-azure-5.8-5.8.0/drivers/net/wireless/realtek/rtw88/tx.c @@ -156,7 +156,7 @@ if (skb_queue_len(&tx_report->queue) == 0) return; - WARN(1, "purge skb(s) not reported by firmware\n"); + rtw_dbg(rtwdev, RTW_DBG_TX, "purge skb(s) not reported by firmware\n"); spin_lock_irqsave(&tx_report->q_lock, flags); skb_queue_purge(&tx_report->queue); --- linux-azure-5.8-5.8.0.orig/drivers/net/wireless/rsi/rsi_91x_usb.c +++ linux-azure-5.8-5.8.0/drivers/net/wireless/rsi/rsi_91x_usb.c @@ -741,24 +741,24 @@ if (ret < 0) goto fail; } else { - if ((rsi_usb_master_reg_write(adapter, - NWP_WWD_INTERRUPT_TIMER, - NWP_WWD_INT_TIMER_CLKS, - RSI_9116_REG_SIZE)) < 0) { + ret = rsi_usb_master_reg_write(adapter, + NWP_WWD_INTERRUPT_TIMER, + NWP_WWD_INT_TIMER_CLKS, + RSI_9116_REG_SIZE); + if (ret < 0) goto fail; - } - if ((rsi_usb_master_reg_write(adapter, - NWP_WWD_SYSTEM_RESET_TIMER, - NWP_WWD_SYS_RESET_TIMER_CLKS, - RSI_9116_REG_SIZE)) < 0) { + ret = rsi_usb_master_reg_write(adapter, + NWP_WWD_SYSTEM_RESET_TIMER, + NWP_WWD_SYS_RESET_TIMER_CLKS, + RSI_9116_REG_SIZE); + if (ret < 0) goto fail; - } - if ((rsi_usb_master_reg_write(adapter, - NWP_WWD_MODE_AND_RSTART, - NWP_WWD_TIMER_DISABLE, - RSI_9116_REG_SIZE)) < 0) { + ret = rsi_usb_master_reg_write(adapter, + NWP_WWD_MODE_AND_RSTART, + NWP_WWD_TIMER_DISABLE, + RSI_9116_REG_SIZE); + if (ret < 0) goto fail; - } } rsi_dbg(INFO_ZONE, "Reset card done\n"); --- linux-azure-5.8-5.8.0.orig/drivers/net/wireless/st/cw1200/main.c +++ linux-azure-5.8-5.8.0/drivers/net/wireless/st/cw1200/main.c @@ -381,6 +381,7 @@ CW1200_LINK_ID_MAX, cw1200_skb_dtor, priv)) { + destroy_workqueue(priv->workqueue); ieee80211_free_hw(hw); return NULL; } @@ -392,6 +393,7 @@ for (; i > 0; i--) cw1200_queue_deinit(&priv->tx_queue[i - 1]); cw1200_queue_stats_deinit(&priv->tx_queue_stats); + destroy_workqueue(priv->workqueue); ieee80211_free_hw(hw); return NULL; } --- linux-azure-5.8-5.8.0.orig/drivers/net/wireless/ti/wl1251/event.c +++ linux-azure-5.8-5.8.0/drivers/net/wireless/ti/wl1251/event.c @@ -70,7 +70,7 @@ break; } - return 0; + return ret; } static void wl1251_event_mbox_dump(struct event_mailbox *mbox) --- linux-azure-5.8-5.8.0.orig/drivers/net/wireless/ti/wlcore/cmd.h +++ linux-azure-5.8-5.8.0/drivers/net/wireless/ti/wlcore/cmd.h @@ -458,7 +458,6 @@ KEY_TKIP = 2, KEY_AES = 3, KEY_GEM = 4, - KEY_IGTK = 5, }; struct wl1271_cmd_set_keys { --- linux-azure-5.8-5.8.0.orig/drivers/net/wireless/ti/wlcore/main.c +++ linux-azure-5.8-5.8.0/drivers/net/wireless/ti/wlcore/main.c @@ -3550,9 +3550,6 @@ case WL1271_CIPHER_SUITE_GEM: key_type = KEY_GEM; break; - case WLAN_CIPHER_SUITE_AES_CMAC: - key_type = KEY_IGTK; - break; default: wl1271_error("Unknown key algo 0x%x", key_conf->cipher); @@ -6222,7 +6219,6 @@ WLAN_CIPHER_SUITE_TKIP, WLAN_CIPHER_SUITE_CCMP, WL1271_CIPHER_SUITE_GEM, - WLAN_CIPHER_SUITE_AES_CMAC, }; /* The tx descriptor buffer */ --- linux-azure-5.8-5.8.0.orig/drivers/net/xen-netback/common.h +++ linux-azure-5.8-5.8.0/drivers/net/xen-netback/common.h @@ -140,6 +140,20 @@ char name[QUEUE_NAME_SIZE]; /* DEVNAME-qN */ struct xenvif *vif; /* Parent VIF */ + /* + * TX/RX common EOI handling. + * When feature-split-event-channels = 0, interrupt handler sets + * NETBK_COMMON_EOI, otherwise NETBK_RX_EOI and NETBK_TX_EOI are set + * by the RX and TX interrupt handlers. + * RX and TX handler threads will issue an EOI when either + * NETBK_COMMON_EOI or their specific bits (NETBK_RX_EOI or + * NETBK_TX_EOI) are set and they will reset those bits. + */ + atomic_t eoi_pending; +#define NETBK_RX_EOI 0x01 +#define NETBK_TX_EOI 0x02 +#define NETBK_COMMON_EOI 0x04 + /* Use NAPI for guest TX */ struct napi_struct napi; /* When feature-split-event-channels = 0, tx_irq = rx_irq. */ @@ -375,6 +389,7 @@ irqreturn_t xenvif_ctrl_irq_fn(int irq, void *data); +bool xenvif_have_rx_work(struct xenvif_queue *queue, bool test_kthread); void xenvif_rx_action(struct xenvif_queue *queue); void xenvif_rx_queue_tail(struct xenvif_queue *queue, struct sk_buff *skb); --- linux-azure-5.8-5.8.0.orig/drivers/net/xen-netback/interface.c +++ linux-azure-5.8-5.8.0/drivers/net/xen-netback/interface.c @@ -77,12 +77,28 @@ !vif->disabled; } +static bool xenvif_handle_tx_interrupt(struct xenvif_queue *queue) +{ + bool rc; + + rc = RING_HAS_UNCONSUMED_REQUESTS(&queue->tx); + if (rc) + napi_schedule(&queue->napi); + return rc; +} + static irqreturn_t xenvif_tx_interrupt(int irq, void *dev_id) { struct xenvif_queue *queue = dev_id; + int old; - if (RING_HAS_UNCONSUMED_REQUESTS(&queue->tx)) - napi_schedule(&queue->napi); + old = atomic_fetch_or(NETBK_TX_EOI, &queue->eoi_pending); + WARN(old & NETBK_TX_EOI, "Interrupt while EOI pending\n"); + + if (!xenvif_handle_tx_interrupt(queue)) { + atomic_andnot(NETBK_TX_EOI, &queue->eoi_pending); + xen_irq_lateeoi(irq, XEN_EOI_FLAG_SPURIOUS); + } return IRQ_HANDLED; } @@ -116,19 +132,48 @@ return work_done; } +static bool xenvif_handle_rx_interrupt(struct xenvif_queue *queue) +{ + bool rc; + + rc = xenvif_have_rx_work(queue, false); + if (rc) + xenvif_kick_thread(queue); + return rc; +} + static irqreturn_t xenvif_rx_interrupt(int irq, void *dev_id) { struct xenvif_queue *queue = dev_id; + int old; - xenvif_kick_thread(queue); + old = atomic_fetch_or(NETBK_RX_EOI, &queue->eoi_pending); + WARN(old & NETBK_RX_EOI, "Interrupt while EOI pending\n"); + + if (!xenvif_handle_rx_interrupt(queue)) { + atomic_andnot(NETBK_RX_EOI, &queue->eoi_pending); + xen_irq_lateeoi(irq, XEN_EOI_FLAG_SPURIOUS); + } return IRQ_HANDLED; } irqreturn_t xenvif_interrupt(int irq, void *dev_id) { - xenvif_tx_interrupt(irq, dev_id); - xenvif_rx_interrupt(irq, dev_id); + struct xenvif_queue *queue = dev_id; + int old; + bool has_rx, has_tx; + + old = atomic_fetch_or(NETBK_COMMON_EOI, &queue->eoi_pending); + WARN(old, "Interrupt while EOI pending\n"); + + has_tx = xenvif_handle_tx_interrupt(queue); + has_rx = xenvif_handle_rx_interrupt(queue); + + if (!has_rx && !has_tx) { + atomic_andnot(NETBK_COMMON_EOI, &queue->eoi_pending); + xen_irq_lateeoi(irq, XEN_EOI_FLAG_SPURIOUS); + } return IRQ_HANDLED; } @@ -603,7 +648,7 @@ if (req_prod - rsp_prod > RING_SIZE(&vif->ctrl)) goto err_unmap; - err = bind_interdomain_evtchn_to_irq(vif->domid, evtchn); + err = bind_interdomain_evtchn_to_irq_lateeoi(vif->domid, evtchn); if (err < 0) goto err_unmap; @@ -707,7 +752,7 @@ if (tx_evtchn == rx_evtchn) { /* feature-split-event-channels == 0 */ - err = bind_interdomain_evtchn_to_irqhandler( + err = bind_interdomain_evtchn_to_irqhandler_lateeoi( queue->vif->domid, tx_evtchn, xenvif_interrupt, 0, queue->name, queue); if (err < 0) @@ -718,7 +763,7 @@ /* feature-split-event-channels == 1 */ snprintf(queue->tx_irq_name, sizeof(queue->tx_irq_name), "%s-tx", queue->name); - err = bind_interdomain_evtchn_to_irqhandler( + err = bind_interdomain_evtchn_to_irqhandler_lateeoi( queue->vif->domid, tx_evtchn, xenvif_tx_interrupt, 0, queue->tx_irq_name, queue); if (err < 0) @@ -728,7 +773,7 @@ snprintf(queue->rx_irq_name, sizeof(queue->rx_irq_name), "%s-rx", queue->name); - err = bind_interdomain_evtchn_to_irqhandler( + err = bind_interdomain_evtchn_to_irqhandler_lateeoi( queue->vif->domid, rx_evtchn, xenvif_rx_interrupt, 0, queue->rx_irq_name, queue); if (err < 0) --- linux-azure-5.8-5.8.0.orig/drivers/net/xen-netback/netback.c +++ linux-azure-5.8-5.8.0/drivers/net/xen-netback/netback.c @@ -162,6 +162,10 @@ if (more_to_do) napi_schedule(&queue->napi); + else if (atomic_fetch_andnot(NETBK_TX_EOI | NETBK_COMMON_EOI, + &queue->eoi_pending) & + (NETBK_TX_EOI | NETBK_COMMON_EOI)) + xen_irq_lateeoi(queue->tx_irq, 0); } static void tx_add_credit(struct xenvif_queue *queue) @@ -1331,13 +1335,11 @@ return 0; gnttab_batch_copy(queue->tx_copy_ops, nr_cops); - if (nr_mops != 0) { + if (nr_mops != 0) ret = gnttab_map_refs(queue->tx_map_ops, NULL, queue->pages_to_map, nr_mops); - BUG_ON(ret); - } work_done = xenvif_tx_submit(queue); @@ -1636,9 +1638,14 @@ irqreturn_t xenvif_ctrl_irq_fn(int irq, void *data) { struct xenvif *vif = data; + unsigned int eoi_flag = XEN_EOI_FLAG_SPURIOUS; - while (xenvif_ctrl_work_todo(vif)) + while (xenvif_ctrl_work_todo(vif)) { xenvif_ctrl_action(vif); + eoi_flag = 0; + } + + xen_irq_lateeoi(irq, eoi_flag); return IRQ_HANDLED; } --- linux-azure-5.8-5.8.0.orig/drivers/net/xen-netback/rx.c +++ linux-azure-5.8-5.8.0/drivers/net/xen-netback/rx.c @@ -38,10 +38,15 @@ RING_IDX prod, cons; struct sk_buff *skb; int needed; + unsigned long flags; + + spin_lock_irqsave(&queue->rx_queue.lock, flags); skb = skb_peek(&queue->rx_queue); - if (!skb) + if (!skb) { + spin_unlock_irqrestore(&queue->rx_queue.lock, flags); return false; + } needed = DIV_ROUND_UP(skb->len, XEN_PAGE_SIZE); if (skb_is_gso(skb)) @@ -49,6 +54,8 @@ if (skb->sw_hash) needed++; + spin_unlock_irqrestore(&queue->rx_queue.lock, flags); + do { prod = queue->rx.sring->req_prod; cons = queue->rx.req_cons; @@ -490,13 +497,13 @@ return queue->stalled && prod - cons >= 1; } -static bool xenvif_have_rx_work(struct xenvif_queue *queue) +bool xenvif_have_rx_work(struct xenvif_queue *queue, bool test_kthread) { return xenvif_rx_ring_slots_available(queue) || (queue->vif->stall_timeout && (xenvif_rx_queue_stalled(queue) || xenvif_rx_queue_ready(queue))) || - kthread_should_stop() || + (test_kthread && kthread_should_stop()) || queue->vif->disabled; } @@ -527,15 +534,20 @@ { DEFINE_WAIT(wait); - if (xenvif_have_rx_work(queue)) + if (xenvif_have_rx_work(queue, true)) return; for (;;) { long ret; prepare_to_wait(&queue->wq, &wait, TASK_INTERRUPTIBLE); - if (xenvif_have_rx_work(queue)) + if (xenvif_have_rx_work(queue, true)) break; + if (atomic_fetch_andnot(NETBK_RX_EOI | NETBK_COMMON_EOI, + &queue->eoi_pending) & + (NETBK_RX_EOI | NETBK_COMMON_EOI)) + xen_irq_lateeoi(queue->rx_irq, 0); + ret = schedule_timeout(xenvif_rx_queue_timeout(queue)); if (!ret) break; --- linux-azure-5.8-5.8.0.orig/drivers/net/xen-netback/xenbus.c +++ linux-azure-5.8-5.8.0/drivers/net/xen-netback/xenbus.c @@ -534,12 +534,14 @@ return -ENOMEM; snprintf(node, maxlen, "%s/rate", dev->nodename); vif->credit_watch.node = node; + vif->credit_watch.will_handle = NULL; vif->credit_watch.callback = xen_net_rate_changed; err = register_xenbus_watch(&vif->credit_watch); if (err) { pr_err("Failed to set watcher %s\n", vif->credit_watch.node); kfree(node); vif->credit_watch.node = NULL; + vif->credit_watch.will_handle = NULL; vif->credit_watch.callback = NULL; } return err; @@ -586,6 +588,7 @@ snprintf(node, maxlen, "%s/request-multicast-control", dev->otherend); vif->mcast_ctrl_watch.node = node; + vif->mcast_ctrl_watch.will_handle = NULL; vif->mcast_ctrl_watch.callback = xen_mcast_ctrl_changed; err = register_xenbus_watch(&vif->mcast_ctrl_watch); if (err) { @@ -593,6 +596,7 @@ vif->mcast_ctrl_watch.node); kfree(node); vif->mcast_ctrl_watch.node = NULL; + vif->mcast_ctrl_watch.will_handle = NULL; vif->mcast_ctrl_watch.callback = NULL; } return err; @@ -797,7 +801,7 @@ xenvif_carrier_on(be->vif); unregister_hotplug_status_watch(be); - err = xenbus_watch_pathfmt(dev, &be->hotplug_status_watch, + err = xenbus_watch_pathfmt(dev, &be->hotplug_status_watch, NULL, hotplug_status_changed, "%s/%s", dev->nodename, "hotplug-status"); if (!err) --- linux-azure-5.8-5.8.0.orig/drivers/nfc/s3fwrn5/Kconfig +++ linux-azure-5.8-5.8.0/drivers/nfc/s3fwrn5/Kconfig @@ -2,6 +2,7 @@ config NFC_S3FWRN5 tristate select CRYPTO + select CRYPTO_HASH help Core driver for Samsung S3FWRN5 NFC chip. Contains core utilities of chip. It's intended to be used by PHYs to avoid duplicating lots --- linux-azure-5.8-5.8.0.orig/drivers/nfc/s3fwrn5/firmware.c +++ linux-azure-5.8-5.8.0/drivers/nfc/s3fwrn5/firmware.c @@ -293,8 +293,10 @@ if (ret < 0) return ret; - if (fw->fw->size < S3FWRN5_FW_IMAGE_HEADER_SIZE) + if (fw->fw->size < S3FWRN5_FW_IMAGE_HEADER_SIZE) { + release_firmware(fw->fw); return -EINVAL; + } memcpy(fw->date, fw->fw->data + 0x00, 12); fw->date[12] = '\0'; --- linux-azure-5.8-5.8.0.orig/drivers/nfc/s3fwrn5/i2c.c +++ linux-azure-5.8-5.8.0/drivers/nfc/s3fwrn5/i2c.c @@ -26,8 +26,8 @@ struct i2c_client *i2c_dev; struct nci_dev *ndev; - unsigned int gpio_en; - unsigned int gpio_fw_wake; + int gpio_en; + int gpio_fw_wake; struct mutex mutex; --- linux-azure-5.8-5.8.0.orig/drivers/nfc/st95hf/core.c +++ linux-azure-5.8-5.8.0/drivers/nfc/st95hf/core.c @@ -966,7 +966,7 @@ rc = down_killable(&stcontext->exchange_lock); if (rc) { WARN(1, "Semaphore is not found up in st95hf_in_send_cmd\n"); - return rc; + goto free_skb_resp; } rc = st95hf_spi_send(&stcontext->spicontext, skb->data, --- linux-azure-5.8-5.8.0.orig/drivers/ntb/hw/amd/ntb_hw_amd.c +++ linux-azure-5.8-5.8.0/drivers/ntb/hw/amd/ntb_hw_amd.c @@ -1203,6 +1203,7 @@ err_dma_mask: pci_clear_master(pdev); + pci_release_regions(pdev); err_pci_regions: pci_disable_device(pdev); err_pci_enable: --- linux-azure-5.8-5.8.0.orig/drivers/ntb/hw/intel/ntb_hw_gen1.c +++ linux-azure-5.8-5.8.0/drivers/ntb/hw/intel/ntb_hw_gen1.c @@ -1893,7 +1893,7 @@ goto err_init_dev; } else { rc = -EINVAL; - goto err_ndev; + goto err_init_pci; } ndev_reset_unsafe_flags(ndev); --- linux-azure-5.8-5.8.0.orig/drivers/nvdimm/btt.c +++ linux-azure-5.8-5.8.0/drivers/nvdimm/btt.c @@ -1490,10 +1490,8 @@ { struct btt *btt = bdev->bd_disk->private_data; int rc; - unsigned int len; - len = hpage_nr_pages(page) * PAGE_SIZE; - rc = btt_do_bvec(btt, NULL, page, len, 0, op, sector); + rc = btt_do_bvec(btt, NULL, page, thp_size(page), 0, op, sector); if (rc == 0) page_endio(page, op_is_write(op), 0); --- linux-azure-5.8-5.8.0.orig/drivers/nvdimm/bus.c +++ linux-azure-5.8-5.8.0/drivers/nvdimm/bus.c @@ -1037,9 +1037,25 @@ dimm_name = "bus"; } + /* Validate command family support against bus declared support */ if (cmd == ND_CMD_CALL) { + unsigned long *mask; + if (copy_from_user(&pkg, p, sizeof(pkg))) return -EFAULT; + + if (nvdimm) { + if (pkg.nd_family > NVDIMM_FAMILY_MAX) + return -EINVAL; + mask = &nd_desc->dimm_family_mask; + } else { + if (pkg.nd_family > NVDIMM_BUS_FAMILY_MAX) + return -EINVAL; + mask = &nd_desc->bus_family_mask; + } + + if (!test_bit(pkg.nd_family, mask)) + return -EINVAL; } if (!desc || --- linux-azure-5.8-5.8.0.orig/drivers/nvdimm/claim.c +++ linux-azure-5.8-5.8.0/drivers/nvdimm/claim.c @@ -268,7 +268,7 @@ if (rw == READ) { if (unlikely(is_bad_pmem(&nsio->bb, sector, sz_align))) return -EIO; - if (memcpy_mcsafe(buf, nsio->addr + offset, size) != 0) + if (copy_mc_to_kernel(buf, nsio->addr + offset, size) != 0) return -EIO; return 0; } --- linux-azure-5.8-5.8.0.orig/drivers/nvdimm/dimm_devs.c +++ linux-azure-5.8-5.8.0/drivers/nvdimm/dimm_devs.c @@ -335,16 +335,16 @@ } static DEVICE_ATTR_RO(state); -static ssize_t available_slots_show(struct device *dev, - struct device_attribute *attr, char *buf) +static ssize_t __available_slots_show(struct nvdimm_drvdata *ndd, char *buf) { - struct nvdimm_drvdata *ndd = dev_get_drvdata(dev); + struct device *dev; ssize_t rc; u32 nfree; if (!ndd) return -ENXIO; + dev = ndd->dev; nvdimm_bus_lock(dev); nfree = nd_label_nfree(ndd); if (nfree - 1 > nfree) { @@ -356,6 +356,18 @@ nvdimm_bus_unlock(dev); return rc; } + +static ssize_t available_slots_show(struct device *dev, + struct device_attribute *attr, char *buf) +{ + ssize_t rc; + + nd_device_lock(dev); + rc = __available_slots_show(dev_get_drvdata(dev), buf); + nd_device_unlock(dev); + + return rc; +} static DEVICE_ATTR_RO(available_slots); __weak ssize_t security_show(struct device *dev, --- linux-azure-5.8-5.8.0.orig/drivers/nvdimm/label.c +++ linux-azure-5.8-5.8.0/drivers/nvdimm/label.c @@ -980,6 +980,15 @@ } } + /* release slots associated with any invalidated UUIDs */ + mutex_lock(&nd_mapping->lock); + list_for_each_entry_safe(label_ent, e, &nd_mapping->labels, list) + if (test_and_clear_bit(ND_LABEL_REAP, &label_ent->flags)) { + reap_victim(nd_mapping, label_ent); + list_move(&label_ent->list, &list); + } + mutex_unlock(&nd_mapping->lock); + /* * Find the resource associated with the first label in the set * per the v1.2 namespace specification. @@ -999,8 +1008,10 @@ if (is_old_resource(res, old_res_list, old_num_resources)) continue; /* carry-over */ slot = nd_label_alloc_slot(ndd); - if (slot == UINT_MAX) + if (slot == UINT_MAX) { + rc = -ENXIO; goto abort; + } dev_dbg(ndd->dev, "allocated: %d\n", slot); nd_label = to_label(ndd, slot); --- linux-azure-5.8-5.8.0.orig/drivers/nvdimm/namespace_devs.c +++ linux-azure-5.8-5.8.0/drivers/nvdimm/namespace_devs.c @@ -1635,11 +1635,11 @@ return a->mode; } - if (a == &dev_attr_nstype.attr || a == &dev_attr_size.attr - || a == &dev_attr_holder.attr - || a == &dev_attr_holder_class.attr - || a == &dev_attr_force_raw.attr - || a == &dev_attr_mode.attr) + /* base is_namespace_io() attributes */ + if (a == &dev_attr_nstype.attr || a == &dev_attr_size.attr || + a == &dev_attr_holder.attr || a == &dev_attr_holder_class.attr || + a == &dev_attr_force_raw.attr || a == &dev_attr_mode.attr || + a == &dev_attr_resource.attr) return a->mode; return 0; --- linux-azure-5.8-5.8.0.orig/drivers/nvdimm/pmem.c +++ linux-azure-5.8-5.8.0/drivers/nvdimm/pmem.c @@ -125,7 +125,7 @@ while (len) { mem = kmap_atomic(page); chunk = min_t(unsigned int, len, PAGE_SIZE - off); - rem = memcpy_mcsafe(mem + off, pmem_addr, chunk); + rem = copy_mc_to_kernel(mem + off, pmem_addr, chunk); kunmap_atomic(mem); if (rem) return BLK_STS_IOERR; @@ -238,11 +238,9 @@ blk_status_t rc; if (op_is_write(op)) - rc = pmem_do_write(pmem, page, 0, sector, - hpage_nr_pages(page) * PAGE_SIZE); + rc = pmem_do_write(pmem, page, 0, sector, thp_size(page)); else - rc = pmem_do_read(pmem, page, 0, sector, - hpage_nr_pages(page) * PAGE_SIZE); + rc = pmem_do_read(pmem, page, 0, sector, thp_size(page)); /* * The ->rw_page interface is subtle and tricky. The core * retries on any error, so we can only invoke page_endio() in @@ -305,7 +303,7 @@ /* * Use the 'no check' versions of copy_from_iter_flushcache() and - * copy_to_iter_mcsafe() to bypass HARDENED_USERCOPY overhead. Bounds + * copy_mc_to_iter() to bypass HARDENED_USERCOPY overhead. Bounds * checking, both file offset and device offset, is handled by * dax_iomap_actor() */ @@ -318,7 +316,7 @@ static size_t pmem_copy_to_iter(struct dax_device *dax_dev, pgoff_t pgoff, void *addr, size_t bytes, struct iov_iter *i) { - return _copy_to_iter_mcsafe(addr, bytes, i); + return _copy_mc_to_iter(addr, bytes, i); } static const struct dax_operations pmem_dax_ops = { --- linux-azure-5.8-5.8.0.orig/drivers/nvdimm/security.c +++ linux-azure-5.8-5.8.0/drivers/nvdimm/security.c @@ -450,14 +450,19 @@ else dev_dbg(&nvdimm->dev, "overwrite completed\n"); - if (nvdimm->sec.overwrite_state) - sysfs_notify_dirent(nvdimm->sec.overwrite_state); + /* + * Mark the overwrite work done and update dimm security flags, + * then send a sysfs event notification to wake up userspace + * poll threads to picked up the changed state. + */ nvdimm->sec.overwrite_tmo = 0; clear_bit(NDD_SECURITY_OVERWRITE, &nvdimm->flags); clear_bit(NDD_WORK_PENDING, &nvdimm->flags); - put_device(&nvdimm->dev); nvdimm->sec.flags = nvdimm_security_flags(nvdimm, NVDIMM_USER); - nvdimm->sec.flags = nvdimm_security_flags(nvdimm, NVDIMM_MASTER); + nvdimm->sec.ext_flags = nvdimm_security_flags(nvdimm, NVDIMM_MASTER); + if (nvdimm->sec.overwrite_state) + sysfs_notify_dirent(nvdimm->sec.overwrite_state); + put_device(&nvdimm->dev); } void nvdimm_security_overwrite_query(struct work_struct *work) --- linux-azure-5.8-5.8.0.orig/drivers/nvme/host/Kconfig +++ linux-azure-5.8-5.8.0/drivers/nvme/host/Kconfig @@ -73,6 +73,7 @@ depends on INET depends on BLK_DEV_NVME select NVME_FABRICS + select CRYPTO select CRYPTO_CRC32C help This provides support for the NVMe over Fabrics protocol using --- linux-azure-5.8-5.8.0.orig/drivers/nvme/host/core.c +++ linux-azure-5.8-5.8.0/drivers/nvme/host/core.c @@ -362,6 +362,16 @@ break; } break; + case NVME_CTRL_DELETING_NOIO: + switch (old_state) { + case NVME_CTRL_DELETING: + case NVME_CTRL_DEAD: + changed = true; + /* FALLTHRU */ + default: + break; + } + break; case NVME_CTRL_DEAD: switch (old_state) { case NVME_CTRL_DELETING: @@ -399,6 +409,7 @@ case NVME_CTRL_CONNECTING: return false; case NVME_CTRL_DELETING: + case NVME_CTRL_DELETING_NOIO: case NVME_CTRL_DEAD: return true; default: @@ -1293,8 +1304,21 @@ } length = (io.nblocks + 1) << ns->lba_shift; - meta_len = (io.nblocks + 1) * ns->ms; - metadata = nvme_to_user_ptr(io.metadata); + + if ((io.control & NVME_RW_PRINFO_PRACT) && + ns->ms == sizeof(struct t10_pi_tuple)) { + /* + * Protection information is stripped/inserted by the + * controller. + */ + if (nvme_to_user_ptr(io.metadata)) + return -EINVAL; + meta_len = 0; + metadata = NULL; + } else { + meta_len = (io.nblocks + 1) * ns->ms; + metadata = nvme_to_user_ptr(io.metadata); + } if (ns->features & NVME_NS_EXT_LBAS) { length += meta_len; @@ -1833,6 +1857,50 @@ return 0; } +static int nvme_configure_metadata(struct nvme_ns *ns, struct nvme_id_ns *id) +{ + struct nvme_ctrl *ctrl = ns->ctrl; + + /* + * The PI implementation requires the metadata size to be equal to the + * t10 pi tuple size. + */ + ns->ms = le16_to_cpu(id->lbaf[id->flbas & NVME_NS_FLBAS_LBA_MASK].ms); + if (ns->ms == sizeof(struct t10_pi_tuple)) + ns->pi_type = id->dps & NVME_NS_DPS_PI_MASK; + else + ns->pi_type = 0; + + ns->features &= ~(NVME_NS_METADATA_SUPPORTED | NVME_NS_EXT_LBAS); + if (!ns->ms || !(ctrl->ops->flags & NVME_F_METADATA_SUPPORTED)) + return 0; + if (ctrl->ops->flags & NVME_F_FABRICS) { + /* + * The NVMe over Fabrics specification only supports metadata as + * part of the extended data LBA. We rely on HCA/HBA support to + * remap the separate metadata buffer from the block layer. + */ + if (WARN_ON_ONCE(!(id->flbas & NVME_NS_FLBAS_META_EXT))) + return -EINVAL; + if (ctrl->max_integrity_segments) + ns->features |= + (NVME_NS_METADATA_SUPPORTED | NVME_NS_EXT_LBAS); + } else { + /* + * For PCIe controllers, we can't easily remap the separate + * metadata buffer from the block layer and thus require a + * separate metadata buffer for block layer metadata/PI support. + * We allow extended LBAs for the passthrough interface, though. + */ + if (id->flbas & NVME_NS_FLBAS_META_EXT) + ns->features |= NVME_NS_EXT_LBAS; + else + ns->features |= NVME_NS_METADATA_SUPPORTED; + } + + return 0; +} + static void nvme_update_disk_info(struct gendisk *disk, struct nvme_ns *ns, struct nvme_id_ns *id) { @@ -1844,7 +1912,7 @@ /* unsupported block size, set capacity to 0 later */ bs = (1 << 9); } - blk_mq_freeze_queue(disk->queue); + blk_integrity_unregister(disk); atomic_bs = phys_bs = bs; @@ -1907,10 +1975,6 @@ if (id->nsattr & NVME_NS_ATTR_RO) set_disk_ro(disk, true); - else - set_disk_ro(disk, false); - - blk_mq_unfreeze_queue(disk->queue); } static int __nvme_revalidate_disk(struct gendisk *disk, struct nvme_id_ns *id) @@ -1918,7 +1982,9 @@ struct nvme_ns *ns = disk->private_data; struct nvme_ctrl *ctrl = ns->ctrl; u32 iob; + int ret; + blk_mq_freeze_queue(ns->disk->queue); /* * If identify namespace failed, use default 512 byte block size so * block layer can use before failing read/write for 0 capacity. @@ -1933,48 +1999,28 @@ else iob = nvme_lba_to_sect(ns, le16_to_cpu(id->noiob)); - ns->features = 0; - ns->ms = le16_to_cpu(id->lbaf[id->flbas & NVME_NS_FLBAS_LBA_MASK].ms); - /* the PI implementation requires metadata equal t10 pi tuple size */ - if (ns->ms == sizeof(struct t10_pi_tuple)) - ns->pi_type = id->dps & NVME_NS_DPS_PI_MASK; - else - ns->pi_type = 0; - - if (ns->ms) { - /* - * For PCIe only the separate metadata pointer is supported, - * as the block layer supplies metadata in a separate bio_vec - * chain. For Fabrics, only metadata as part of extended data - * LBA is supported on the wire per the Fabrics specification, - * but the HBA/HCA will do the remapping from the separate - * metadata buffers for us. - */ - if (id->flbas & NVME_NS_FLBAS_META_EXT) { - ns->features |= NVME_NS_EXT_LBAS; - if ((ctrl->ops->flags & NVME_F_FABRICS) && - (ctrl->ops->flags & NVME_F_METADATA_SUPPORTED) && - ctrl->max_integrity_segments) - ns->features |= NVME_NS_METADATA_SUPPORTED; - } else { - if (WARN_ON_ONCE(ctrl->ops->flags & NVME_F_FABRICS)) - return -EINVAL; - if (ctrl->ops->flags & NVME_F_METADATA_SUPPORTED) - ns->features |= NVME_NS_METADATA_SUPPORTED; - } - } - + ret = nvme_configure_metadata(ns, id); + if (ret) + goto out_unfreeze; if (iob) blk_queue_chunk_sectors(ns->queue, rounddown_pow_of_two(iob)); nvme_update_disk_info(disk, ns, id); + blk_mq_unfreeze_queue(ns->disk->queue); + #ifdef CONFIG_NVME_MULTIPATH if (ns->head->disk) { + blk_mq_freeze_queue(ns->head->disk->queue); nvme_update_disk_info(ns->head->disk, ns, id); blk_queue_stack_limits(ns->head->disk->queue, ns->queue); nvme_mpath_update_disk_size(ns->head->disk); + blk_mq_unfreeze_queue(ns->head->disk->queue); } #endif return 0; + +out_unfreeze: + blk_mq_unfreeze_queue(ns->disk->queue); + return ret; } static int nvme_revalidate_disk(struct gendisk *disk) @@ -2704,6 +2750,11 @@ NULL, }; +static inline bool nvme_discovery_ctrl(struct nvme_ctrl *ctrl) +{ + return ctrl->opts && ctrl->opts->discovery_nqn; +} + static bool nvme_validate_cntlid(struct nvme_subsystem *subsys, struct nvme_ctrl *ctrl, struct nvme_id_ctrl *id) { @@ -2723,7 +2774,7 @@ } if ((id->cmic & NVME_CTRL_CMIC_MULTI_CTRL) || - (ctrl->opts && ctrl->opts->discovery_nqn)) + nvme_discovery_ctrl(ctrl)) continue; dev_err(ctrl->device, @@ -2884,7 +2935,7 @@ if (!(ctrl->ops->flags & NVME_F_FABRICS)) ctrl->cntlid = le16_to_cpu(id->cntlid); - if (!ctrl->identified) { + if (!ctrl->identified && !nvme_discovery_ctrl(ctrl)) { int i; ret = nvme_init_subsystem(ctrl, id); @@ -2984,7 +3035,7 @@ goto out_free; } - if (!ctrl->opts->discovery_nqn && !ctrl->kas) { + if (!nvme_discovery_ctrl(ctrl) && !ctrl->kas) { dev_err(ctrl->device, "keep-alive support is mandatory for fabrics\n"); ret = -EINVAL; @@ -3049,10 +3100,26 @@ return -EWOULDBLOCK; } + nvme_get_ctrl(ctrl); + if (!try_module_get(ctrl->ops->module)) { + nvme_put_ctrl(ctrl); + return -EINVAL; + } + file->private_data = ctrl; return 0; } +static int nvme_dev_release(struct inode *inode, struct file *file) +{ + struct nvme_ctrl *ctrl = + container_of(inode->i_cdev, struct nvme_ctrl, cdev); + + module_put(ctrl->ops->module); + nvme_put_ctrl(ctrl); + return 0; +} + static int nvme_dev_user_cmd(struct nvme_ctrl *ctrl, void __user *argp) { struct nvme_ns *ns; @@ -3115,6 +3182,7 @@ static const struct file_operations nvme_dev_fops = { .owner = THIS_MODULE, .open = nvme_dev_open, + .release = nvme_dev_release, .unlocked_ioctl = nvme_dev_ioctl, .compat_ioctl = compat_ptr_ioctl, }; @@ -3313,10 +3381,6 @@ { struct nvme_ctrl *ctrl = dev_get_drvdata(dev); - /* Can't delete non-created controllers */ - if (!ctrl->created) - return -EBUSY; - if (device_remove_file_self(dev, attr)) nvme_delete_ctrl_sync(ctrl); return count; @@ -3344,6 +3408,7 @@ [NVME_CTRL_RESETTING] = "resetting", [NVME_CTRL_CONNECTING] = "connecting", [NVME_CTRL_DELETING] = "deleting", + [NVME_CTRL_DELETING_NOIO]= "deleting (no IO)", [NVME_CTRL_DEAD] = "dead", }; @@ -3911,6 +3976,9 @@ if (ctrl->state == NVME_CTRL_DEAD) nvme_kill_queues(ctrl); + /* this is a no-op when called from the controller reset handler */ + nvme_change_ctrl_state(ctrl, NVME_CTRL_DELETING_NOIO); + down_write(&ctrl->namespaces_rwsem); list_splice_init(&ctrl->namespaces, &ns_list); up_write(&ctrl->namespaces_rwsem); @@ -4114,7 +4182,6 @@ nvme_queue_scan(ctrl); nvme_start_queues(ctrl); } - ctrl->created = true; } EXPORT_SYMBOL_GPL(nvme_start_ctrl); @@ -4133,7 +4200,7 @@ container_of(dev, struct nvme_ctrl, ctrl_device); struct nvme_subsystem *subsys = ctrl->subsys; - if (subsys && ctrl->instance != subsys->instance) + if (!subsys || ctrl->instance != subsys->instance) ida_simple_remove(&nvme_instance_ida, ctrl->instance); kfree(ctrl->effects); @@ -4272,7 +4339,7 @@ } EXPORT_SYMBOL_GPL(nvme_unfreeze); -void nvme_wait_freeze_timeout(struct nvme_ctrl *ctrl, long timeout) +int nvme_wait_freeze_timeout(struct nvme_ctrl *ctrl, long timeout) { struct nvme_ns *ns; @@ -4283,6 +4350,7 @@ break; } up_read(&ctrl->namespaces_rwsem); + return timeout; } EXPORT_SYMBOL_GPL(nvme_wait_freeze_timeout); @@ -4330,8 +4398,7 @@ } EXPORT_SYMBOL_GPL(nvme_start_queues); - -void nvme_sync_queues(struct nvme_ctrl *ctrl) +void nvme_sync_io_queues(struct nvme_ctrl *ctrl) { struct nvme_ns *ns; @@ -4339,7 +4406,12 @@ list_for_each_entry(ns, &ctrl->namespaces, list) blk_sync_queue(ns->queue); up_read(&ctrl->namespaces_rwsem); +} +EXPORT_SYMBOL_GPL(nvme_sync_io_queues); +void nvme_sync_queues(struct nvme_ctrl *ctrl) +{ + nvme_sync_io_queues(ctrl); if (ctrl->admin_q) blk_sync_queue(ctrl->admin_q); } --- linux-azure-5.8-5.8.0.orig/drivers/nvme/host/fabrics.c +++ linux-azure-5.8-5.8.0/drivers/nvme/host/fabrics.c @@ -547,7 +547,7 @@ blk_status_t nvmf_fail_nonready_command(struct nvme_ctrl *ctrl, struct request *rq) { - if (ctrl->state != NVME_CTRL_DELETING && + if (ctrl->state != NVME_CTRL_DELETING_NOIO && ctrl->state != NVME_CTRL_DEAD && !blk_noretry_request(rq) && !(rq->cmd_flags & REQ_NVME_MPATH)) return BLK_STS_RESOURCE; @@ -565,10 +565,14 @@ struct nvme_request *req = nvme_req(rq); /* - * If we are in some state of setup or teardown only allow - * internally generated commands. + * currently we have a problem sending passthru commands + * on the admin_q if the controller is not LIVE because we can't + * make sure that they are going out after the admin connect, + * controller enable and/or other commands in the initialization + * sequence. until the controller will be LIVE, fail with + * BLK_STS_RESOURCE so that they will be rescheduled. */ - if (!blk_rq_is_passthrough(rq) || (req->flags & NVME_REQ_USERCMD)) + if (rq->q == ctrl->admin_q && (req->flags & NVME_REQ_USERCMD)) return false; /* @@ -576,9 +580,8 @@ * which is require to set the queue live in the appropinquate states. */ switch (ctrl->state) { - case NVME_CTRL_NEW: case NVME_CTRL_CONNECTING: - if (nvme_is_fabrics(req->cmd) && + if (blk_rq_is_passthrough(rq) && nvme_is_fabrics(req->cmd) && req->cmd->fabrics.fctype == nvme_fabrics_type_connect) return true; break; --- linux-azure-5.8-5.8.0.orig/drivers/nvme/host/fabrics.h +++ linux-azure-5.8-5.8.0/drivers/nvme/host/fabrics.h @@ -182,7 +182,8 @@ static inline bool nvmf_check_ready(struct nvme_ctrl *ctrl, struct request *rq, bool queue_live) { - if (likely(ctrl->state == NVME_CTRL_LIVE)) + if (likely(ctrl->state == NVME_CTRL_LIVE || + ctrl->state == NVME_CTRL_DELETING)) return true; return __nvmf_check_ready(ctrl, rq, queue_live); } --- linux-azure-5.8-5.8.0.orig/drivers/nvme/host/fc.c +++ linux-azure-5.8-5.8.0/drivers/nvme/host/fc.c @@ -825,6 +825,7 @@ break; case NVME_CTRL_DELETING: + case NVME_CTRL_DELETING_NOIO: default: /* no action to take - let it delete */ break; @@ -2075,7 +2076,7 @@ if (fc_dma_mapping_error(ctrl->lport->dev, op->fcp_req.cmddma)) { dev_err(ctrl->dev, "FCP Op failed - cmdiu dma mapping failed.\n"); - ret = EFAULT; + ret = -EFAULT; goto out_on_error; } @@ -2085,7 +2086,7 @@ if (fc_dma_mapping_error(ctrl->lport->dev, op->fcp_req.rspdma)) { dev_err(ctrl->dev, "FCP Op failed - rspiu dma mapping failed.\n"); - ret = EFAULT; + ret = -EFAULT; } atomic_set(&op->state, FCPOP_STATE_IDLE); @@ -2157,6 +2158,7 @@ struct nvme_fc_fcp_op *aen_op; int i; + cancel_work_sync(&ctrl->ctrl.async_event_work); aen_op = ctrl->aen_ops; for (i = 0; i < NVME_NR_AEN_COMMANDS; i++, aen_op++) { __nvme_fc_exit_request(ctrl, aen_op); @@ -3666,12 +3668,14 @@ spin_lock_irqsave(&nvme_fc_lock, flags); list_for_each_entry(lport, &nvme_fc_lport_list, port_list) { if (lport->localport.node_name != laddr.nn || - lport->localport.port_name != laddr.pn) + lport->localport.port_name != laddr.pn || + lport->localport.port_state != FC_OBJSTATE_ONLINE) continue; list_for_each_entry(rport, &lport->endp_list, endp_list) { if (rport->remoteport.node_name != raddr.nn || - rport->remoteport.port_name != raddr.pn) + rport->remoteport.port_name != raddr.pn || + rport->remoteport.port_state != FC_OBJSTATE_ONLINE) continue; /* if fail to get reference fall through. Will error */ --- linux-azure-5.8-5.8.0.orig/drivers/nvme/host/multipath.c +++ linux-azure-5.8-5.8.0/drivers/nvme/host/multipath.c @@ -167,9 +167,18 @@ static bool nvme_path_is_disabled(struct nvme_ns *ns) { - return ns->ctrl->state != NVME_CTRL_LIVE || - test_bit(NVME_NS_ANA_PENDING, &ns->flags) || - test_bit(NVME_NS_REMOVING, &ns->flags); + /* + * We don't treat NVME_CTRL_DELETING as a disabled path as I/O should + * still be able to complete assuming that the controller is connected. + * Otherwise it will fail immediately and return to the requeue list. + */ + if (ns->ctrl->state != NVME_CTRL_LIVE && + ns->ctrl->state != NVME_CTRL_DELETING) + return true; + if (test_bit(NVME_NS_ANA_PENDING, &ns->flags) || + test_bit(NVME_NS_REMOVING, &ns->flags)) + return true; + return false; } static struct nvme_ns *__nvme_find_path(struct nvme_ns_head *head, int node) @@ -233,7 +242,7 @@ } for (ns = nvme_next_ns(head, old); - ns != old; + ns && ns != old; ns = nvme_next_ns(head, ns)) { if (nvme_path_is_disabled(ns)) continue; @@ -246,6 +255,17 @@ fallback = ns; } + /* + * The loop above skips the current path for round-robin semantics. + * Fall back to the current path if either: + * - no other optimized path found and current is optimized, + * - no other usable path found and current is usable. + */ + if (!nvme_path_is_disabled(old) && + (old->ana_state == NVME_ANA_OPTIMIZED || + (!fallback && old->ana_state == NVME_ANA_NONOPTIMIZED))) + return old; + if (!fallback) return NULL; found = fallback; @@ -266,10 +286,13 @@ struct nvme_ns *ns; ns = srcu_dereference(head->current_path[node], &head->srcu); - if (READ_ONCE(head->subsys->iopolicy) == NVME_IOPOLICY_RR && ns) - ns = nvme_round_robin_path(head, node, ns); - if (unlikely(!ns || !nvme_path_is_optimized(ns))) - ns = __nvme_find_path(head, node); + if (unlikely(!ns)) + return __nvme_find_path(head, node); + + if (READ_ONCE(head->subsys->iopolicy) == NVME_IOPOLICY_RR) + return nvme_round_robin_path(head, node, ns); + if (unlikely(!nvme_path_is_optimized(ns))) + return __nvme_find_path(head, node); return ns; } @@ -565,6 +588,9 @@ { struct nvme_ctrl *ctrl = container_of(work, struct nvme_ctrl, ana_work); + if (ctrl->state != NVME_CTRL_LIVE) + return; + nvme_read_ana_log(ctrl); } --- linux-azure-5.8-5.8.0.orig/drivers/nvme/host/nvme.h +++ linux-azure-5.8-5.8.0/drivers/nvme/host/nvme.h @@ -186,6 +186,7 @@ NVME_CTRL_RESETTING, NVME_CTRL_CONNECTING, NVME_CTRL_DELETING, + NVME_CTRL_DELETING_NOIO, NVME_CTRL_DEAD, }; @@ -270,7 +271,6 @@ struct nvme_command ka_cmd; struct work_struct fw_act_work; unsigned long events; - bool created; #ifdef CONFIG_NVME_MULTIPATH /* asymmetric namespace access: */ @@ -535,9 +535,10 @@ void nvme_start_queues(struct nvme_ctrl *ctrl); void nvme_kill_queues(struct nvme_ctrl *ctrl); void nvme_sync_queues(struct nvme_ctrl *ctrl); +void nvme_sync_io_queues(struct nvme_ctrl *ctrl); void nvme_unfreeze(struct nvme_ctrl *ctrl); void nvme_wait_freeze(struct nvme_ctrl *ctrl); -void nvme_wait_freeze_timeout(struct nvme_ctrl *ctrl, long timeout); +int nvme_wait_freeze_timeout(struct nvme_ctrl *ctrl, long timeout); void nvme_start_freeze(struct nvme_ctrl *ctrl); #define NVME_QID_ANY -1 --- linux-azure-5.8-5.8.0.orig/drivers/nvme/host/pci.c +++ linux-azure-5.8-5.8.0/drivers/nvme/host/pci.c @@ -22,6 +22,7 @@ #include #include #include +#include #include #include @@ -192,6 +193,7 @@ u16 q_depth; u16 cq_vector; u16 sq_tail; + u16 last_sq_tail; u16 cq_head; u16 qid; u8 cq_phase; @@ -285,9 +287,21 @@ nvmeq->dbbuf_cq_ei = &dev->dbbuf_eis[cq_idx(qid, dev->db_stride)]; } +static void nvme_dbbuf_free(struct nvme_queue *nvmeq) +{ + if (!nvmeq->qid) + return; + + nvmeq->dbbuf_sq_db = NULL; + nvmeq->dbbuf_cq_db = NULL; + nvmeq->dbbuf_sq_ei = NULL; + nvmeq->dbbuf_cq_ei = NULL; +} + static void nvme_dbbuf_set(struct nvme_dev *dev) { struct nvme_command c; + unsigned int i; if (!dev->dbbuf_dbs) return; @@ -301,6 +315,9 @@ dev_warn(dev->ctrl.device, "unable to set dbbuf\n"); /* Free memory and continue on */ nvme_dbbuf_dma_free(dev); + + for (i = 1; i <= dev->online_queues; i++) + nvme_dbbuf_free(&dev->queues[i]); } } @@ -453,11 +470,24 @@ return 0; } -static inline void nvme_write_sq_db(struct nvme_queue *nvmeq) +/* + * Write sq tail if we are asked to, or if the next command would wrap. + */ +static inline void nvme_write_sq_db(struct nvme_queue *nvmeq, bool write_sq) { + if (!write_sq) { + u16 next_tail = nvmeq->sq_tail + 1; + + if (next_tail == nvmeq->q_depth) + next_tail = 0; + if (next_tail != nvmeq->last_sq_tail) + return; + } + if (nvme_dbbuf_update_and_check_event(nvmeq->sq_tail, nvmeq->dbbuf_sq_db, nvmeq->dbbuf_sq_ei)) writel(nvmeq->sq_tail, nvmeq->q_db); + nvmeq->last_sq_tail = nvmeq->sq_tail; } /** @@ -474,8 +504,7 @@ cmd, sizeof(*cmd)); if (++nvmeq->sq_tail == nvmeq->q_depth) nvmeq->sq_tail = 0; - if (write_sq) - nvme_write_sq_db(nvmeq); + nvme_write_sq_db(nvmeq, write_sq); spin_unlock(&nvmeq->sq_lock); } @@ -484,7 +513,8 @@ struct nvme_queue *nvmeq = hctx->driver_data; spin_lock(&nvmeq->sq_lock); - nvme_write_sq_db(nvmeq); + if (nvmeq->sq_tail != nvmeq->last_sq_tail) + nvme_write_sq_db(nvmeq, true); spin_unlock(&nvmeq->sq_lock); } @@ -940,28 +970,29 @@ static inline void nvme_handle_cqe(struct nvme_queue *nvmeq, u16 idx) { struct nvme_completion *cqe = &nvmeq->cqes[idx]; + __u16 command_id = READ_ONCE(cqe->command_id); struct request *req; - if (unlikely(cqe->command_id >= nvmeq->q_depth)) { - dev_warn(nvmeq->dev->ctrl.device, - "invalid id %d completed on queue %d\n", - cqe->command_id, le16_to_cpu(cqe->sq_id)); - return; - } - /* * AEN requests are special as they don't time out and can * survive any kind of queue freeze and often don't respond to * aborts. We don't even bother to allocate a struct request * for them but rather special case them here. */ - if (unlikely(nvme_is_aen_req(nvmeq->qid, cqe->command_id))) { + if (unlikely(nvme_is_aen_req(nvmeq->qid, command_id))) { nvme_complete_async_event(&nvmeq->dev->ctrl, cqe->status, &cqe->result); return; } - req = blk_mq_tag_to_rq(nvme_queue_tagset(nvmeq), cqe->command_id); + req = blk_mq_tag_to_rq(nvme_queue_tagset(nvmeq), command_id); + if (unlikely(!req)) { + dev_warn(nvmeq->dev->ctrl.device, + "invalid id %d completed on queue %d\n", + command_id, le16_to_cpu(cqe->sq_id)); + return; + } + trace_nvme_sq(req, cqe->sq_head, nvmeq->sq_tail); nvme_end_request(req, cqe->status, cqe->result); } @@ -1250,8 +1281,8 @@ dev_warn_ratelimited(dev->ctrl.device, "I/O %d QID %d timeout, disable controller\n", req->tag, nvmeq->qid); - nvme_dev_disable(dev, true); nvme_req(req)->flags |= NVME_REQ_CANCELLED; + nvme_dev_disable(dev, true); return BLK_EH_DONE; case NVME_CTRL_RESETTING: return BLK_EH_RESET_TIMER; @@ -1268,10 +1299,10 @@ dev_warn(dev->ctrl.device, "I/O %d QID %d timeout, reset controller\n", req->tag, nvmeq->qid); + nvme_req(req)->flags |= NVME_REQ_CANCELLED; nvme_dev_disable(dev, false); nvme_reset_ctrl(&dev->ctrl); - nvme_req(req)->flags |= NVME_REQ_CANCELLED; return BLK_EH_DONE; } @@ -1496,6 +1527,7 @@ struct nvme_dev *dev = nvmeq->dev; nvmeq->sq_tail = 0; + nvmeq->last_sq_tail = 0; nvmeq->cq_head = 0; nvmeq->cq_phase = 1; nvmeq->q_db = &dev->dbs[qid * 2 * dev->db_stride]; @@ -1765,6 +1797,9 @@ if (dev->cmb_size) return; + if (NVME_CAP_CMBS(dev->ctrl.cap)) + writel(NVME_CMBMSC_CRE, dev->bar + NVME_REG_CMBMSC); + dev->cmbsz = readl(dev->bar + NVME_REG_CMBSZ); if (!dev->cmbsz) return; @@ -1779,6 +1814,16 @@ return; /* + * Tell the controller about the host side address mapping the CMB, + * and enable CMB decoding for the NVMe 1.4+ scheme: + */ + if (NVME_CAP_CMBS(dev->ctrl.cap)) { + hi_lo_writeq(NVME_CMBMSC_CRE | NVME_CMBMSC_CMSE | + (pci_bus_address(pdev, bar) + offset), + dev->bar + NVME_REG_CMBMSC); + } + + /* * Controllers may support a CMB size larger than their BAR, * for example, due to being behind a bridge. Reduce the CMB to * the reported size of the BAR @@ -3093,7 +3138,8 @@ { PCI_VDEVICE(INTEL, 0xf1a5), /* Intel 600P/P3100 */ .driver_data = NVME_QUIRK_NO_DEEPEST_PS | NVME_QUIRK_MEDIUM_PRIO_SQ | - NVME_QUIRK_NO_TEMP_THRESH_CHANGE }, + NVME_QUIRK_NO_TEMP_THRESH_CHANGE | + NVME_QUIRK_DISABLE_WRITE_ZEROES, }, { PCI_VDEVICE(INTEL, 0xf1a6), /* Intel 760p/Pro 7600p */ .driver_data = NVME_QUIRK_IGNORE_DEV_SUBNQN, }, { PCI_VDEVICE(INTEL, 0x5845), /* Qemu emulated controller */ @@ -3112,7 +3158,10 @@ { PCI_DEVICE(0x144d, 0xa821), /* Samsung PM1725 */ .driver_data = NVME_QUIRK_DELAY_BEFORE_CHK_RDY, }, { PCI_DEVICE(0x144d, 0xa822), /* Samsung PM1725a */ - .driver_data = NVME_QUIRK_DELAY_BEFORE_CHK_RDY, }, + .driver_data = NVME_QUIRK_DELAY_BEFORE_CHK_RDY | + NVME_QUIRK_IGNORE_DEV_SUBNQN, }, + { PCI_DEVICE(0x1987, 0x5016), /* Phison E16 */ + .driver_data = NVME_QUIRK_IGNORE_DEV_SUBNQN, }, { PCI_DEVICE(0x1d1d, 0x1f1f), /* LighNVM qemu device */ .driver_data = NVME_QUIRK_LIGHTNVM, }, { PCI_DEVICE(0x1d1d, 0x2807), /* CNEX WL */ @@ -3127,6 +3176,8 @@ { PCI_DEVICE(0x1c5c, 0x1504), /* SK Hynix PC400 */ .driver_data = NVME_QUIRK_DISABLE_WRITE_ZEROES, }, { PCI_DEVICE_CLASS(PCI_CLASS_STORAGE_EXPRESS, 0xffffff) }, + { PCI_DEVICE(0x2646, 0x2263), /* KINGSTON A2000 NVMe SSD */ + .driver_data = NVME_QUIRK_NO_DEEPEST_PS, }, { PCI_DEVICE(PCI_VENDOR_ID_APPLE, 0x2001), .driver_data = NVME_QUIRK_SINGLE_VECTOR }, { PCI_DEVICE(PCI_VENDOR_ID_APPLE, 0x2003) }, --- linux-azure-5.8-5.8.0.orig/drivers/nvme/host/rdma.c +++ linux-azure-5.8-5.8.0/drivers/nvme/host/rdma.c @@ -96,6 +96,7 @@ int cm_error; struct completion cm_done; bool pi_support; + struct mutex queue_lock; }; struct nvme_rdma_ctrl { @@ -553,6 +554,7 @@ int ret; queue = &ctrl->queues[idx]; + mutex_init(&queue->queue_lock); queue->ctrl = ctrl; if (idx && ctrl->ctrl.max_integrity_segments) queue->pi_support = true; @@ -572,7 +574,8 @@ if (IS_ERR(queue->cm_id)) { dev_info(ctrl->ctrl.device, "failed to create CM ID: %ld\n", PTR_ERR(queue->cm_id)); - return PTR_ERR(queue->cm_id); + ret = PTR_ERR(queue->cm_id); + goto out_destroy_mutex; } if (ctrl->ctrl.opts->mask & NVMF_OPT_HOST_TRADDR) @@ -602,6 +605,8 @@ out_destroy_cm_id: rdma_destroy_id(queue->cm_id); nvme_rdma_destroy_queue_ib(queue); +out_destroy_mutex: + mutex_destroy(&queue->queue_lock); return ret; } @@ -613,9 +618,10 @@ static void nvme_rdma_stop_queue(struct nvme_rdma_queue *queue) { - if (!test_and_clear_bit(NVME_RDMA_Q_LIVE, &queue->flags)) - return; - __nvme_rdma_stop_queue(queue); + mutex_lock(&queue->queue_lock); + if (test_and_clear_bit(NVME_RDMA_Q_LIVE, &queue->flags)) + __nvme_rdma_stop_queue(queue); + mutex_unlock(&queue->queue_lock); } static void nvme_rdma_free_queue(struct nvme_rdma_queue *queue) @@ -625,6 +631,7 @@ nvme_rdma_destroy_queue_ib(queue); rdma_destroy_id(queue->cm_id); + mutex_destroy(&queue->queue_lock); } static void nvme_rdma_free_io_queues(struct nvme_rdma_ctrl *ctrl) @@ -808,6 +815,7 @@ blk_mq_free_tag_set(ctrl->ctrl.admin_tagset); } if (ctrl->async_event_sqe.data) { + cancel_work_sync(&ctrl->ctrl.async_event_work); nvme_rdma_free_qe(ctrl->device->dev, &ctrl->async_event_sqe, sizeof(struct nvme_command), DMA_TO_DEVICE); ctrl->async_event_sqe.data = NULL; @@ -826,7 +834,7 @@ return error; ctrl->device = ctrl->queues[0].device; - ctrl->ctrl.numa_node = dev_to_node(ctrl->device->dev->dma_device); + ctrl->ctrl.numa_node = ibdev_to_node(ctrl->device->dev); /* T10-PI support */ if (ctrl->device->dev->attrs.device_cap_flags & @@ -941,17 +949,33 @@ ret = PTR_ERR(ctrl->ctrl.connect_q); goto out_free_tag_set; } - } else { - blk_mq_update_nr_hw_queues(&ctrl->tag_set, - ctrl->ctrl.queue_count - 1); } ret = nvme_rdma_start_io_queues(ctrl); if (ret) goto out_cleanup_connect_q; + if (!new) { + nvme_start_queues(&ctrl->ctrl); + if (!nvme_wait_freeze_timeout(&ctrl->ctrl, NVME_IO_TIMEOUT)) { + /* + * If we timed out waiting for freeze we are likely to + * be stuck. Fail the controller initialization just + * to be safe. + */ + ret = -ENODEV; + goto out_wait_freeze_timed_out; + } + blk_mq_update_nr_hw_queues(ctrl->ctrl.tagset, + ctrl->ctrl.queue_count - 1); + nvme_unfreeze(&ctrl->ctrl); + } + return 0; +out_wait_freeze_timed_out: + nvme_stop_queues(&ctrl->ctrl); + nvme_rdma_stop_io_queues(ctrl); out_cleanup_connect_q: if (new) blk_cleanup_queue(ctrl->ctrl.connect_q); @@ -967,6 +991,7 @@ bool remove) { blk_mq_quiesce_queue(ctrl->ctrl.admin_q); + blk_sync_queue(ctrl->ctrl.admin_q); nvme_rdma_stop_queue(&ctrl->queues[0]); if (ctrl->ctrl.admin_tagset) { blk_mq_tagset_busy_iter(ctrl->ctrl.admin_tagset, @@ -982,7 +1007,9 @@ bool remove) { if (ctrl->ctrl.queue_count > 1) { + nvme_start_freeze(&ctrl->ctrl); nvme_stop_queues(&ctrl->ctrl); + nvme_sync_io_queues(&ctrl->ctrl); nvme_rdma_stop_io_queues(ctrl); if (ctrl->ctrl.tagset) { blk_mq_tagset_busy_iter(ctrl->ctrl.tagset, @@ -1076,11 +1103,12 @@ changed = nvme_change_ctrl_state(&ctrl->ctrl, NVME_CTRL_LIVE); if (!changed) { /* - * state change failure is ok if we're in DELETING state, + * state change failure is ok if we started ctrl delete, * unless we're during creation of a new controller to * avoid races with teardown flow. */ - WARN_ON_ONCE(ctrl->ctrl.state != NVME_CTRL_DELETING); + WARN_ON_ONCE(ctrl->ctrl.state != NVME_CTRL_DELETING && + ctrl->ctrl.state != NVME_CTRL_DELETING_NOIO); WARN_ON_ONCE(new); ret = -EINVAL; goto destroy_io; @@ -1133,8 +1161,9 @@ blk_mq_unquiesce_queue(ctrl->ctrl.admin_q); if (!nvme_change_ctrl_state(&ctrl->ctrl, NVME_CTRL_CONNECTING)) { - /* state change failure is ok if we're in DELETING state */ - WARN_ON_ONCE(ctrl->ctrl.state != NVME_CTRL_DELETING); + /* state change failure is ok if we started ctrl delete */ + WARN_ON_ONCE(ctrl->ctrl.state != NVME_CTRL_DELETING && + ctrl->ctrl.state != NVME_CTRL_DELETING_NOIO); return; } @@ -1146,6 +1175,7 @@ if (!nvme_change_ctrl_state(&ctrl->ctrl, NVME_CTRL_RESETTING)) return; + dev_warn(ctrl->ctrl.device, "starting error recovery\n"); queue_work(nvme_reset_wq, &ctrl->err_work); } @@ -1715,6 +1745,14 @@ return; } + /* sanity checking for received data length */ + if (unlikely(wc->byte_len < len)) { + dev_err(queue->ctrl->ctrl.device, + "Unexpected nvme completion length(%d)\n", wc->byte_len); + nvme_rdma_error_recovery(queue->ctrl); + return; + } + ib_dma_sync_single_for_cpu(ibdev, qe->dma, len, DMA_FROM_DEVICE); /* * AEN requests are special as they don't time out and can @@ -1874,7 +1912,6 @@ complete(&queue->cm_done); return 0; case RDMA_CM_EVENT_REJECTED: - nvme_rdma_destroy_queue_ib(queue); cm_error = nvme_rdma_conn_rejected(queue, ev); break; case RDMA_CM_EVENT_ROUTE_ERROR: @@ -1912,6 +1949,18 @@ return 0; } +static void nvme_rdma_complete_timed_out(struct request *rq) +{ + struct nvme_rdma_request *req = blk_mq_rq_to_pdu(rq); + struct nvme_rdma_queue *queue = req->queue; + + nvme_rdma_stop_queue(queue); + if (blk_mq_request_started(rq) && !blk_mq_request_completed(rq)) { + nvme_req(rq)->status = NVME_SC_HOST_ABORTED_CMD; + blk_mq_complete_request(rq); + } +} + static enum blk_eh_timer_return nvme_rdma_timeout(struct request *rq, bool reserved) { @@ -1922,29 +1971,29 @@ dev_warn(ctrl->ctrl.device, "I/O %d QID %d timeout\n", rq->tag, nvme_rdma_queue_idx(queue)); - /* - * Restart the timer if a controller reset is already scheduled. Any - * timed out commands would be handled before entering the connecting - * state. - */ - if (ctrl->ctrl.state == NVME_CTRL_RESETTING) - return BLK_EH_RESET_TIMER; - if (ctrl->ctrl.state != NVME_CTRL_LIVE) { /* - * Teardown immediately if controller times out while starting - * or we are already started error recovery. all outstanding - * requests are completed on shutdown, so we return BLK_EH_DONE. + * If we are resetting, connecting or deleting we should + * complete immediately because we may block controller + * teardown or setup sequence + * - ctrl disable/shutdown fabrics requests + * - connect requests + * - initialization admin requests + * - I/O requests that entered after unquiescing and + * the controller stopped responding + * + * All other requests should be cancelled by the error + * recovery work, so it's fine that we fail it here. */ - flush_work(&ctrl->err_work); - nvme_rdma_teardown_io_queues(ctrl, false); - nvme_rdma_teardown_admin_queue(ctrl, false); + nvme_rdma_complete_timed_out(rq); return BLK_EH_DONE; } - dev_warn(ctrl->ctrl.device, "starting error recovery\n"); + /* + * LIVE state should trigger the normal error recovery which will + * handle completing this request. + */ nvme_rdma_error_recovery(ctrl); - return BLK_EH_RESET_TIMER; } --- linux-azure-5.8-5.8.0.orig/drivers/nvme/host/tcp.c +++ linux-azure-5.8-5.8.0/drivers/nvme/host/tcp.c @@ -76,6 +76,7 @@ int io_cpu; spinlock_t lock; + struct mutex queue_lock; struct mutex send_mutex; struct list_head send_list; @@ -199,7 +200,7 @@ static inline size_t nvme_tcp_req_cur_length(struct nvme_tcp_request *req) { - return min_t(size_t, req->iter.bvec->bv_len - req->iter.iov_offset, + return min_t(size_t, iov_iter_single_seg_count(&req->iter), req->pdu_len - req->pdu_sent); } @@ -260,6 +261,16 @@ } } +static inline void nvme_tcp_send_all(struct nvme_tcp_queue *queue) +{ + int ret; + + /* drain the send queue as much as we can... */ + do { + ret = nvme_tcp_try_send(queue); + } while (ret > 0); +} + static inline void nvme_tcp_queue_request(struct nvme_tcp_request *req, bool sync) { @@ -276,9 +287,9 @@ * directly, otherwise queue io_work. Also, only do that if we * are on the same cpu, so we don't introduce contention. */ - if (queue->io_cpu == smp_processor_id() && + if (queue->io_cpu == __smp_processor_id() && sync && empty && mutex_trylock(&queue->send_mutex)) { - nvme_tcp_try_send(queue); + nvme_tcp_send_all(queue); mutex_unlock(&queue->send_mutex); } else { queue_work_on(queue->io_cpu, nvme_tcp_wq, &queue->io_work); @@ -447,6 +458,7 @@ if (!nvme_change_ctrl_state(ctrl, NVME_CTRL_RESETTING)) return; + dev_warn(ctrl->device, "starting error recovery\n"); queue_work(nvme_reset_wq, &to_tcp_ctrl(ctrl)->err_work); } @@ -887,12 +899,11 @@ else flags |= MSG_MORE | MSG_SENDPAGE_NOTLAST; - /* can't zcopy slab pages */ - if (unlikely(PageSlab(page))) { - ret = sock_no_sendpage(queue->sock, page, offset, len, + if (sendpage_ok(page)) { + ret = kernel_sendpage(queue->sock, page, offset, len, flags); } else { - ret = kernel_sendpage(queue->sock, page, offset, len, + ret = sock_no_sendpage(queue->sock, page, offset, len, flags); } if (ret <= 0) @@ -1180,6 +1191,7 @@ sock_release(queue->sock); kfree(queue->pdu); + mutex_destroy(&queue->queue_lock); } static int nvme_tcp_init_connection(struct nvme_tcp_queue *queue) @@ -1341,6 +1353,7 @@ struct nvme_tcp_queue *queue = &ctrl->queues[qid]; int ret, rcv_pdu_size; + mutex_init(&queue->queue_lock); queue->ctrl = ctrl; INIT_LIST_HEAD(&queue->send_list); spin_lock_init(&queue->lock); @@ -1359,7 +1372,7 @@ if (ret) { dev_err(nctrl->device, "failed to create socket: %d\n", ret); - return ret; + goto err_destroy_mutex; } /* Single syn retry */ @@ -1468,6 +1481,8 @@ err_sock: sock_release(queue->sock); queue->sock = NULL; +err_destroy_mutex: + mutex_destroy(&queue->queue_lock); return ret; } @@ -1495,10 +1510,10 @@ struct nvme_tcp_ctrl *ctrl = to_tcp_ctrl(nctrl); struct nvme_tcp_queue *queue = &ctrl->queues[qid]; - if (!test_and_clear_bit(NVME_TCP_Q_LIVE, &queue->flags)) - return; - - __nvme_tcp_stop_queue(queue); + mutex_lock(&queue->queue_lock); + if (test_and_clear_bit(NVME_TCP_Q_LIVE, &queue->flags)) + __nvme_tcp_stop_queue(queue); + mutex_unlock(&queue->queue_lock); } static int nvme_tcp_start_queue(struct nvme_ctrl *nctrl, int idx) @@ -1566,6 +1581,7 @@ static void nvme_tcp_free_admin_queue(struct nvme_ctrl *ctrl) { if (to_tcp_ctrl(ctrl)->async_req.pdu) { + cancel_work_sync(&ctrl->async_event_work); nvme_tcp_free_async_req(to_tcp_ctrl(ctrl)); to_tcp_ctrl(ctrl)->async_req.pdu = NULL; } @@ -1744,17 +1760,33 @@ ret = PTR_ERR(ctrl->connect_q); goto out_free_tag_set; } - } else { - blk_mq_update_nr_hw_queues(ctrl->tagset, - ctrl->queue_count - 1); } ret = nvme_tcp_start_io_queues(ctrl); if (ret) goto out_cleanup_connect_q; + if (!new) { + nvme_start_queues(ctrl); + if (!nvme_wait_freeze_timeout(ctrl, NVME_IO_TIMEOUT)) { + /* + * If we timed out waiting for freeze we are likely to + * be stuck. Fail the controller initialization just + * to be safe. + */ + ret = -ENODEV; + goto out_wait_freeze_timed_out; + } + blk_mq_update_nr_hw_queues(ctrl->tagset, + ctrl->queue_count - 1); + nvme_unfreeze(ctrl); + } + return 0; +out_wait_freeze_timed_out: + nvme_stop_queues(ctrl); + nvme_tcp_stop_io_queues(ctrl); out_cleanup_connect_q: if (new) blk_cleanup_queue(ctrl->connect_q); @@ -1841,6 +1873,7 @@ bool remove) { blk_mq_quiesce_queue(ctrl->admin_q); + blk_sync_queue(ctrl->admin_q); nvme_tcp_stop_queue(ctrl, 0); if (ctrl->admin_tagset) { blk_mq_tagset_busy_iter(ctrl->admin_tagset, @@ -1857,7 +1890,10 @@ { if (ctrl->queue_count <= 1) return; + blk_mq_quiesce_queue(ctrl->admin_q); + nvme_start_freeze(ctrl); nvme_stop_queues(ctrl); + nvme_sync_io_queues(ctrl); nvme_tcp_stop_io_queues(ctrl); if (ctrl->tagset) { blk_mq_tagset_busy_iter(ctrl->tagset, @@ -1923,11 +1959,12 @@ if (!nvme_change_ctrl_state(ctrl, NVME_CTRL_LIVE)) { /* - * state change failure is ok if we're in DELETING state, + * state change failure is ok if we started ctrl delete, * unless we're during creation of a new controller to * avoid races with teardown flow. */ - WARN_ON_ONCE(ctrl->state != NVME_CTRL_DELETING); + WARN_ON_ONCE(ctrl->state != NVME_CTRL_DELETING && + ctrl->state != NVME_CTRL_DELETING_NOIO); WARN_ON_ONCE(new); ret = -EINVAL; goto destroy_io; @@ -1983,8 +2020,9 @@ blk_mq_unquiesce_queue(ctrl->admin_q); if (!nvme_change_ctrl_state(ctrl, NVME_CTRL_CONNECTING)) { - /* state change failure is ok if we're in DELETING state */ - WARN_ON_ONCE(ctrl->state != NVME_CTRL_DELETING); + /* state change failure is ok if we started ctrl delete */ + WARN_ON_ONCE(ctrl->state != NVME_CTRL_DELETING && + ctrl->state != NVME_CTRL_DELETING_NOIO); return; } @@ -2019,8 +2057,9 @@ nvme_tcp_teardown_ctrl(ctrl, false); if (!nvme_change_ctrl_state(ctrl, NVME_CTRL_CONNECTING)) { - /* state change failure is ok if we're in DELETING state */ - WARN_ON_ONCE(ctrl->state != NVME_CTRL_DELETING); + /* state change failure is ok if we started ctrl delete */ + WARN_ON_ONCE(ctrl->state != NVME_CTRL_DELETING && + ctrl->state != NVME_CTRL_DELETING_NOIO); return; } @@ -2110,40 +2149,52 @@ nvme_tcp_queue_request(&ctrl->async_req, true); } +static void nvme_tcp_complete_timed_out(struct request *rq) +{ + struct nvme_tcp_request *req = blk_mq_rq_to_pdu(rq); + struct nvme_ctrl *ctrl = &req->queue->ctrl->ctrl; + + nvme_tcp_stop_queue(ctrl, nvme_tcp_queue_id(req->queue)); + if (blk_mq_request_started(rq) && !blk_mq_request_completed(rq)) { + nvme_req(rq)->status = NVME_SC_HOST_ABORTED_CMD; + blk_mq_complete_request(rq); + } +} + static enum blk_eh_timer_return nvme_tcp_timeout(struct request *rq, bool reserved) { struct nvme_tcp_request *req = blk_mq_rq_to_pdu(rq); - struct nvme_tcp_ctrl *ctrl = req->queue->ctrl; + struct nvme_ctrl *ctrl = &req->queue->ctrl->ctrl; struct nvme_tcp_cmd_pdu *pdu = req->pdu; - /* - * Restart the timer if a controller reset is already scheduled. Any - * timed out commands would be handled before entering the connecting - * state. - */ - if (ctrl->ctrl.state == NVME_CTRL_RESETTING) - return BLK_EH_RESET_TIMER; - - dev_warn(ctrl->ctrl.device, + dev_warn(ctrl->device, "queue %d: timeout request %#x type %d\n", nvme_tcp_queue_id(req->queue), rq->tag, pdu->hdr.type); - if (ctrl->ctrl.state != NVME_CTRL_LIVE) { + if (ctrl->state != NVME_CTRL_LIVE) { /* - * Teardown immediately if controller times out while starting - * or we are already started error recovery. all outstanding - * requests are completed on shutdown, so we return BLK_EH_DONE. + * If we are resetting, connecting or deleting we should + * complete immediately because we may block controller + * teardown or setup sequence + * - ctrl disable/shutdown fabrics requests + * - connect requests + * - initialization admin requests + * - I/O requests that entered after unquiescing and + * the controller stopped responding + * + * All other requests should be cancelled by the error + * recovery work, so it's fine that we fail it here. */ - flush_work(&ctrl->err_work); - nvme_tcp_teardown_io_queues(&ctrl->ctrl, false); - nvme_tcp_teardown_admin_queue(&ctrl->ctrl, false); + nvme_tcp_complete_timed_out(rq); return BLK_EH_DONE; } - dev_warn(ctrl->ctrl.device, "starting error recovery\n"); - nvme_tcp_error_recovery(&ctrl->ctrl); - + /* + * LIVE state should trigger the normal error recovery which will + * handle completing this request. + */ + nvme_tcp_error_recovery(ctrl); return BLK_EH_RESET_TIMER; } --- linux-azure-5.8-5.8.0.orig/drivers/nvme/target/admin-cmd.c +++ linux-azure-5.8-5.8.0/drivers/nvme/target/admin-cmd.c @@ -473,7 +473,6 @@ static void nvmet_execute_identify_ns(struct nvmet_req *req) { struct nvmet_ctrl *ctrl = req->sq->ctrl; - struct nvmet_ns *ns; struct nvme_id_ns *id; u16 status = 0; @@ -490,18 +489,21 @@ } /* return an all zeroed buffer if we can't find an active namespace */ - ns = nvmet_find_namespace(ctrl, req->cmd->identify.nsid); - if (!ns) + req->ns = nvmet_find_namespace(ctrl, req->cmd->identify.nsid); + if (!req->ns) { + status = 0; goto done; + } - nvmet_ns_revalidate(ns); + nvmet_ns_revalidate(req->ns); /* * nuse = ncap = nsze isn't always true, but we have no way to find * that out from the underlying device. */ - id->ncap = id->nsze = cpu_to_le64(ns->size >> ns->blksize_shift); - switch (req->port->ana_state[ns->anagrpid]) { + id->ncap = id->nsze = + cpu_to_le64(req->ns->size >> req->ns->blksize_shift); + switch (req->port->ana_state[req->ns->anagrpid]) { case NVME_ANA_INACCESSIBLE: case NVME_ANA_PERSISTENT_LOSS: break; @@ -510,8 +512,8 @@ break; } - if (ns->bdev) - nvmet_bdev_set_limits(ns->bdev, id); + if (req->ns->bdev) + nvmet_bdev_set_limits(req->ns->bdev, id); /* * We just provide a single LBA format that matches what the @@ -525,27 +527,28 @@ * controllers, but also with any other user of the block device. */ id->nmic = (1 << 0); - id->anagrpid = cpu_to_le32(ns->anagrpid); + id->anagrpid = cpu_to_le32(req->ns->anagrpid); - memcpy(&id->nguid, &ns->nguid, sizeof(id->nguid)); + memcpy(&id->nguid, &req->ns->nguid, sizeof(id->nguid)); - id->lbaf[0].ds = ns->blksize_shift; + id->lbaf[0].ds = req->ns->blksize_shift; - if (ctrl->pi_support && nvmet_ns_has_pi(ns)) { + if (ctrl->pi_support && nvmet_ns_has_pi(req->ns)) { id->dpc = NVME_NS_DPC_PI_FIRST | NVME_NS_DPC_PI_LAST | NVME_NS_DPC_PI_TYPE1 | NVME_NS_DPC_PI_TYPE2 | NVME_NS_DPC_PI_TYPE3; id->mc = NVME_MC_EXTENDED_LBA; - id->dps = ns->pi_type; + id->dps = req->ns->pi_type; id->flbas = NVME_NS_FLBAS_META_EXT; - id->lbaf[0].ms = cpu_to_le16(ns->metadata_size); + id->lbaf[0].ms = cpu_to_le16(req->ns->metadata_size); } - if (ns->readonly) + if (req->ns->readonly) id->nsattr |= (1 << 0); - nvmet_put_namespace(ns); done: - status = nvmet_copy_to_sgl(req, 0, id, sizeof(*id)); + if (!status) + status = nvmet_copy_to_sgl(req, 0, id, sizeof(*id)); + kfree(id); out: nvmet_req_complete(req, status); --- linux-azure-5.8-5.8.0.orig/drivers/nvme/target/configfs.c +++ linux-azure-5.8-5.8.0/drivers/nvme/target/configfs.c @@ -1035,6 +1035,7 @@ up_write(&nvmet_config_sem); kfree_rcu(new_model, rcuhead); + kfree(new_model_number); return count; } --- linux-azure-5.8-5.8.0.orig/drivers/nvme/target/core.c +++ linux-azure-5.8-5.8.0/drivers/nvme/target/core.c @@ -396,6 +396,9 @@ static void nvmet_start_keep_alive_timer(struct nvmet_ctrl *ctrl) { + if (unlikely(ctrl->kato == 0)) + return; + pr_debug("ctrl %d start keep-alive timer for %d secs\n", ctrl->cntlid, ctrl->kato); @@ -405,6 +408,9 @@ static void nvmet_stop_keep_alive_timer(struct nvmet_ctrl *ctrl) { + if (unlikely(ctrl->kato == 0)) + return; + pr_debug("ctrl %d stop keep-alive\n", ctrl->cntlid); cancel_delayed_work_sync(&ctrl->ka_work); @@ -917,8 +923,6 @@ req->error_loc = NVMET_NO_ERROR_LOC; req->error_slba = 0; - trace_nvmet_req_init(req, req->cmd); - /* no support for fused commands yet */ if (unlikely(flags & (NVME_CMD_FUSE_FIRST | NVME_CMD_FUSE_SECOND))) { req->error_loc = offsetof(struct nvme_common_command, flags); @@ -948,6 +952,8 @@ if (status) goto fail; + trace_nvmet_req_init(req, req->cmd); + if (unlikely(!percpu_ref_tryget_live(&sq->ref))) { status = NVME_SC_INVALID_FIELD | NVME_SC_DNR; goto fail; @@ -1136,7 +1142,8 @@ * in case a host died before it enabled the controller. Hence, simply * reset the keep alive timer when the controller is enabled. */ - mod_delayed_work(system_wq, &ctrl->ka_work, ctrl->kato * HZ); + if (ctrl->kato) + mod_delayed_work(system_wq, &ctrl->ka_work, ctrl->kato * HZ); } static void nvmet_clear_ctrl(struct nvmet_ctrl *ctrl) --- linux-azure-5.8-5.8.0.orig/drivers/nvme/target/fc.c +++ linux-azure-5.8-5.8.0/drivers/nvme/target/fc.c @@ -2362,9 +2362,9 @@ return; if (fcpreq->fcp_error || fcpreq->transferred_length != fcpreq->transfer_length) { - spin_lock(&fod->flock); + spin_lock_irqsave(&fod->flock, flags); fod->abort = true; - spin_unlock(&fod->flock); + spin_unlock_irqrestore(&fod->flock, flags); nvmet_req_complete(&fod->req, NVME_SC_INTERNAL); return; --- linux-azure-5.8-5.8.0.orig/drivers/nvme/target/loop.c +++ linux-azure-5.8-5.8.0/drivers/nvme/target/loop.c @@ -583,6 +583,9 @@ if (ret) goto out_put_ctrl; + changed = nvme_change_ctrl_state(&ctrl->ctrl, NVME_CTRL_CONNECTING); + WARN_ON_ONCE(!changed); + ret = -ENOMEM; ctrl->ctrl.sqsize = opts->queue_size - 1; --- linux-azure-5.8-5.8.0.orig/drivers/nvme/target/rdma.c +++ linux-azure-5.8-5.8.0/drivers/nvme/target/rdma.c @@ -1219,6 +1219,14 @@ } ndev->inline_data_size = nport->inline_data_size; ndev->inline_page_count = inline_page_count; + + if (nport->pi_enable && !(cm_id->device->attrs.device_cap_flags & + IB_DEVICE_INTEGRITY_HANDOVER)) { + pr_warn("T10-PI is not supported by device %s. Disabling it\n", + cm_id->device->name); + nport->pi_enable = false; + } + ndev->device = cm_id->device; kref_init(&ndev->ref); @@ -1640,6 +1648,16 @@ spin_lock_irqsave(&queue->state_lock, flags); switch (queue->state) { case NVMET_RDMA_Q_CONNECTING: + while (!list_empty(&queue->rsp_wait_list)) { + struct nvmet_rdma_rsp *rsp; + + rsp = list_first_entry(&queue->rsp_wait_list, + struct nvmet_rdma_rsp, + wait_list); + list_del(&rsp->wait_list); + nvmet_rdma_put_rsp(rsp); + } + fallthrough; case NVMET_RDMA_Q_LIVE: queue->state = NVMET_RDMA_Q_DISCONNECTING; disconnect = true; @@ -1844,14 +1862,6 @@ goto out_destroy_id; } - if (port->nport->pi_enable && - !(cm_id->device->attrs.device_cap_flags & - IB_DEVICE_INTEGRITY_HANDOVER)) { - pr_err("T10-PI is not supported for %pISpcs\n", addr); - ret = -EINVAL; - goto out_destroy_id; - } - port->cm_id = cm_id; return 0; --- linux-azure-5.8-5.8.0.orig/drivers/nvme/target/tcp.c +++ linux-azure-5.8-5.8.0/drivers/nvme/target/tcp.c @@ -160,6 +160,11 @@ static inline u16 nvmet_tcp_cmd_tag(struct nvmet_tcp_queue *queue, struct nvmet_tcp_cmd *cmd) { + if (unlikely(!queue->nr_cmds)) { + /* We didn't allocate cmds yet, send 0xffff */ + return USHRT_MAX; + } + return cmd - queue->cmds; } @@ -297,7 +302,7 @@ length = cmd->pdu_len; cmd->nr_mapped = DIV_ROUND_UP(length, PAGE_SIZE); offset = cmd->rbytes_done; - cmd->sg_idx = DIV_ROUND_UP(offset, PAGE_SIZE); + cmd->sg_idx = offset / PAGE_SIZE; sg_offset = offset % PAGE_SIZE; sg = &cmd->req.sg[cmd->sg_idx]; @@ -310,6 +315,7 @@ length -= iov_len; sg = sg_next(sg); iov++; + sg_offset = 0; } iov_iter_kvec(&cmd->recv_msg.msg_iter, READ, cmd->iov, @@ -370,7 +376,7 @@ return NVME_SC_INTERNAL; } -static void nvmet_tcp_ddgst(struct ahash_request *hash, +static void nvmet_tcp_send_ddgst(struct ahash_request *hash, struct nvmet_tcp_cmd *cmd) { ahash_request_set_crypt(hash, cmd->req.sg, @@ -378,6 +384,23 @@ crypto_ahash_digest(hash); } +static void nvmet_tcp_recv_ddgst(struct ahash_request *hash, + struct nvmet_tcp_cmd *cmd) +{ + struct scatterlist sg; + struct kvec *iov; + int i; + + crypto_ahash_init(hash); + for (i = 0, iov = cmd->iov; i < cmd->nr_mapped; i++, iov++) { + sg_init_one(&sg, iov->iov_base, iov->iov_len); + ahash_request_set_crypt(hash, &sg, NULL, iov->iov_len); + crypto_ahash_update(hash); + } + ahash_request_set_crypt(hash, NULL, (void *)&cmd->exp_ddgst, 0); + crypto_ahash_final(hash); +} + static void nvmet_setup_c2h_data_pdu(struct nvmet_tcp_cmd *cmd) { struct nvme_tcp_data_pdu *pdu = cmd->data_pdu; @@ -402,7 +425,7 @@ if (queue->data_digest) { pdu->hdr.flags |= NVME_TCP_F_DDGST; - nvmet_tcp_ddgst(queue->snd_hash, cmd); + nvmet_tcp_send_ddgst(queue->snd_hash, cmd); } if (cmd->queue->hdr_digest) { @@ -872,7 +895,10 @@ struct nvme_tcp_data_pdu *data = &queue->pdu.data; struct nvmet_tcp_cmd *cmd; - cmd = &queue->cmds[data->ttag]; + if (likely(queue->nr_cmds)) + cmd = &queue->cmds[data->ttag]; + else + cmd = &queue->connect; if (le32_to_cpu(data->data_offset) != cmd->rbytes_done) { pr_err("ttag %u unexpected data offset %u (expected %u)\n", @@ -1054,7 +1080,7 @@ { struct nvmet_tcp_queue *queue = cmd->queue; - nvmet_tcp_ddgst(queue->rcv_hash, cmd); + nvmet_tcp_recv_ddgst(queue->rcv_hash, cmd); queue->offset = 0; queue->left = NVME_TCP_DIGEST_LENGTH; queue->rcv_state = NVMET_TCP_RECV_DDGST; @@ -1075,14 +1101,14 @@ cmd->rbytes_done += ret; } + if (queue->data_digest) { + nvmet_tcp_prep_recv_ddgst(cmd); + return 0; + } nvmet_tcp_unmap_pdu_iovec(cmd); if (!(cmd->flags & NVMET_TCP_F_INIT_FAILED) && cmd->rbytes_done == cmd->req.transfer_len) { - if (queue->data_digest) { - nvmet_tcp_prep_recv_ddgst(cmd); - return 0; - } cmd->req.execute(&cmd->req); } @@ -1462,17 +1488,27 @@ if (inet->rcv_tos > 0) ip_sock_set_tos(sock->sk, inet->rcv_tos); + ret = 0; write_lock_bh(&sock->sk->sk_callback_lock); - sock->sk->sk_user_data = queue; - queue->data_ready = sock->sk->sk_data_ready; - sock->sk->sk_data_ready = nvmet_tcp_data_ready; - queue->state_change = sock->sk->sk_state_change; - sock->sk->sk_state_change = nvmet_tcp_state_change; - queue->write_space = sock->sk->sk_write_space; - sock->sk->sk_write_space = nvmet_tcp_write_space; + if (sock->sk->sk_state != TCP_ESTABLISHED) { + /* + * If the socket is already closing, don't even start + * consuming it + */ + ret = -ENOTCONN; + } else { + sock->sk->sk_user_data = queue; + queue->data_ready = sock->sk->sk_data_ready; + sock->sk->sk_data_ready = nvmet_tcp_data_ready; + queue->state_change = sock->sk->sk_state_change; + sock->sk->sk_state_change = nvmet_tcp_state_change; + queue->write_space = sock->sk->sk_write_space; + sock->sk->sk_write_space = nvmet_tcp_write_space; + queue_work_on(queue->cpu, nvmet_tcp_wq, &queue->io_work); + } write_unlock_bh(&sock->sk->sk_callback_lock); - return 0; + return ret; } static int nvmet_tcp_alloc_queue(struct nvmet_tcp_port *port, @@ -1523,8 +1559,6 @@ if (ret) goto out_destroy_sq; - queue_work_on(queue->cpu, nvmet_tcp_wq, &queue->io_work); - return 0; out_destroy_sq: mutex_lock(&nvmet_tcp_queue_mutex); --- linux-azure-5.8-5.8.0.orig/drivers/nvme/target/trace.h +++ linux-azure-5.8-5.8.0/drivers/nvme/target/trace.h @@ -46,19 +46,12 @@ return req->sq->ctrl; } -static inline void __assign_disk_name(char *name, struct nvmet_req *req, - bool init) +static inline void __assign_req_name(char *name, struct nvmet_req *req) { - struct nvmet_ctrl *ctrl = nvmet_req_to_ctrl(req); - struct nvmet_ns *ns; - - if ((init && req->sq->qid) || (!init && req->cq->qid)) { - ns = nvmet_find_namespace(ctrl, req->cmd->rw.nsid); - strncpy(name, ns->device_path, DISK_NAME_LEN); - return; - } - - memset(name, 0, DISK_NAME_LEN); + if (req->ns) + strncpy(name, req->ns->device_path, DISK_NAME_LEN); + else + memset(name, 0, DISK_NAME_LEN); } #endif @@ -81,7 +74,7 @@ TP_fast_assign( __entry->cmd = cmd; __entry->ctrl = nvmet_req_to_ctrl(req); - __assign_disk_name(__entry->disk, req, true); + __assign_req_name(__entry->disk, req); __entry->qid = req->sq->qid; __entry->cid = cmd->common.command_id; __entry->opcode = cmd->common.opcode; @@ -121,7 +114,7 @@ __entry->cid = req->cqe->command_id; __entry->result = le64_to_cpu(req->cqe->result.u64); __entry->status = le16_to_cpu(req->cqe->status) >> 1; - __assign_disk_name(__entry->disk, req, false); + __assign_req_name(__entry->disk, req); ), TP_printk("nvmet%s: %sqid=%d, cmdid=%u, res=%#llx, status=%#x", __print_ctrl_name(__entry->ctrl), --- linux-azure-5.8-5.8.0.orig/drivers/nvmem/core.c +++ linux-azure-5.8-5.8.0/drivers/nvmem/core.c @@ -355,16 +355,14 @@ blocking_notifier_call_chain(&nvmem_notifier, NVMEM_CELL_ADD, cell); } -static int nvmem_cell_info_to_nvmem_cell(struct nvmem_device *nvmem, - const struct nvmem_cell_info *info, - struct nvmem_cell *cell) +static int nvmem_cell_info_to_nvmem_cell_nodup(struct nvmem_device *nvmem, + const struct nvmem_cell_info *info, + struct nvmem_cell *cell) { cell->nvmem = nvmem; cell->offset = info->offset; cell->bytes = info->bytes; - cell->name = kstrdup_const(info->name, GFP_KERNEL); - if (!cell->name) - return -ENOMEM; + cell->name = info->name; cell->bit_offset = info->bit_offset; cell->nbits = info->nbits; @@ -376,13 +374,30 @@ if (!IS_ALIGNED(cell->offset, nvmem->stride)) { dev_err(&nvmem->dev, "cell %s unaligned to nvmem stride %d\n", - cell->name, nvmem->stride); + cell->name ?: "", nvmem->stride); return -EINVAL; } return 0; } +static int nvmem_cell_info_to_nvmem_cell(struct nvmem_device *nvmem, + const struct nvmem_cell_info *info, + struct nvmem_cell *cell) +{ + int err; + + err = nvmem_cell_info_to_nvmem_cell_nodup(nvmem, info, cell); + if (err) + return err; + + cell->name = kstrdup_const(info->name, GFP_KERNEL); + if (!cell->name) + return -ENOMEM; + + return 0; +} + /** * nvmem_add_cells() - Add cell information to an nvmem device * @@ -524,7 +539,9 @@ for_each_child_of_node(parent, child) { addr = of_get_property(child, "reg", &len); - if (!addr || (len < 2 * sizeof(u32))) { + if (!addr) + continue; + if (len < 2 * sizeof(u32)) { dev_err(dev, "nvmem: invalid reg on %pOF\n", child); return -EINVAL; } @@ -555,6 +572,7 @@ cell->name, nvmem->stride); /* Cells already added will be freed later. */ kfree_const(cell->name); + of_node_put(cell->np); kfree(cell); return -EINVAL; } @@ -823,6 +841,7 @@ { struct device_node *nvmem_np; + struct nvmem_device *nvmem; int index = 0; if (id) @@ -832,7 +851,9 @@ if (!nvmem_np) return ERR_PTR(-ENOENT); - return __nvmem_device_get(nvmem_np, device_match_of_node); + nvmem = __nvmem_device_get(nvmem_np, device_match_of_node); + of_node_put(nvmem_np); + return nvmem; } EXPORT_SYMBOL_GPL(of_nvmem_device_get); #endif @@ -1433,7 +1454,7 @@ if (!nvmem) return -EINVAL; - rc = nvmem_cell_info_to_nvmem_cell(nvmem, info, &cell); + rc = nvmem_cell_info_to_nvmem_cell_nodup(nvmem, info, &cell); if (rc) return rc; @@ -1463,7 +1484,7 @@ if (!nvmem) return -EINVAL; - rc = nvmem_cell_info_to_nvmem_cell(nvmem, info, &cell); + rc = nvmem_cell_info_to_nvmem_cell_nodup(nvmem, info, &cell); if (rc) return rc; --- linux-azure-5.8-5.8.0.orig/drivers/nvmem/qcom-spmi-sdam.c +++ linux-azure-5.8-5.8.0/drivers/nvmem/qcom-spmi-sdam.c @@ -1,6 +1,6 @@ // SPDX-License-Identifier: GPL-2.0-only /* - * Copyright (c) 2017 The Linux Foundation. All rights reserved. + * Copyright (c) 2017, 2020-2021, The Linux Foundation. All rights reserved. */ #include @@ -18,7 +18,6 @@ #define SDAM_PBS_TRIG_CLR 0xE6 struct sdam_chip { - struct platform_device *pdev; struct regmap *regmap; struct nvmem_config sdam_config; unsigned int base; @@ -65,7 +64,7 @@ size_t bytes) { struct sdam_chip *sdam = priv; - struct device *dev = &sdam->pdev->dev; + struct device *dev = sdam->sdam_config.dev; int rc; if (!sdam_is_valid(sdam, offset, bytes)) { @@ -86,7 +85,7 @@ size_t bytes) { struct sdam_chip *sdam = priv; - struct device *dev = &sdam->pdev->dev; + struct device *dev = sdam->sdam_config.dev; int rc; if (!sdam_is_valid(sdam, offset, bytes)) { --- linux-azure-5.8-5.8.0.orig/drivers/nvmem/sprd-efuse.c +++ linux-azure-5.8-5.8.0/drivers/nvmem/sprd-efuse.c @@ -378,8 +378,8 @@ return -ENOMEM; efuse->base = devm_platform_ioremap_resource(pdev, 0); - if (!efuse->base) - return -ENOMEM; + if (IS_ERR(efuse->base)) + return PTR_ERR(efuse->base); ret = of_hwspin_lock_get_id(np, 0); if (ret < 0) { --- linux-azure-5.8-5.8.0.orig/drivers/of/address.c +++ linux-azure-5.8-5.8.0/drivers/of/address.c @@ -980,6 +980,11 @@ /* Don't error out as we'd break some existing DTs */ continue; } + if (range.cpu_addr == OF_BAD_ADDR) { + pr_err("translation of DMA address(%llx) to CPU address failed node(%pOF)\n", + range.bus_addr, node); + continue; + } dma_offset = range.cpu_addr - range.bus_addr; /* Take lower and upper limits */ @@ -1019,11 +1024,13 @@ */ bool of_dma_is_coherent(struct device_node *np) { - struct device_node *node = of_node_get(np); + struct device_node *node; if (IS_ENABLED(CONFIG_OF_DMA_DEFAULT_COHERENT)) return true; + node = of_node_get(np); + while (node) { if (of_property_read_bool(node, "dma-coherent")) { of_node_put(node); --- linux-azure-5.8-5.8.0.orig/drivers/of/fdt.c +++ linux-azure-5.8-5.8.0/drivers/of/fdt.c @@ -1149,8 +1149,16 @@ int __init __weak early_init_dt_reserve_memory_arch(phys_addr_t base, phys_addr_t size, bool nomap) { - if (nomap) - return memblock_remove(base, size); + if (nomap) { + /* + * If the memory is already reserved (by another region), we + * should not allow it to be marked nomap. + */ + if (memblock_is_region_reserved(base, size)) + return -EBUSY; + + return memblock_mark_nomap(base, size); + } return memblock_reserve(base, size); } --- linux-azure-5.8-5.8.0.orig/drivers/of/of_reserved_mem.c +++ linux-azure-5.8-5.8.0/drivers/of/of_reserved_mem.c @@ -200,6 +200,16 @@ if (ra->base > rb->base) return 1; + /* + * Put the dynamic allocations (address == 0, size == 0) before static + * allocations at address 0x0 so that overlap detection works + * correctly. + */ + if (ra->size < rb->size) + return -1; + if (ra->size > rb->size) + return 1; + return 0; } @@ -217,8 +227,7 @@ this = &reserved_mem[i]; next = &reserved_mem[i + 1]; - if (!(this->base && next->base)) - continue; + if (this->base + this->size > next->base) { phys_addr_t this_end, next_end; --- linux-azure-5.8-5.8.0.orig/drivers/opp/core.c +++ linux-azure-5.8-5.8.0/drivers/opp/core.c @@ -862,8 +862,10 @@ * have OPP table for the device, while others don't and * opp_set_rate() just needs to behave like clk_set_rate(). */ - if (!_get_opp_count(opp_table)) - return 0; + if (!_get_opp_count(opp_table)) { + ret = 0; + goto put_opp_table; + } if (!opp_table->required_opp_tables && !opp_table->regulators && !opp_table->paths) { @@ -874,7 +876,7 @@ ret = _set_opp_bw(opp_table, NULL, dev, true); if (ret) - return ret; + goto put_opp_table; if (opp_table->regulator_enabled) { regulator_disable(opp_table->regulators[0]); @@ -901,10 +903,13 @@ /* Return early if nothing to do */ if (old_freq == freq) { - dev_dbg(dev, "%s: old/new frequencies (%lu Hz) are same, nothing to do\n", - __func__, freq); - ret = 0; - goto put_opp_table; + if (!opp_table->required_opp_tables && !opp_table->regulators && + !opp_table->paths) { + dev_dbg(dev, "%s: old/new frequencies (%lu Hz) are same, nothing to do\n", + __func__, freq); + ret = 0; + goto put_opp_table; + } } /* @@ -1124,6 +1129,10 @@ struct opp_device *opp_dev, *temp; int i; + /* Drop the lock as soon as we can */ + list_del(&opp_table->node); + mutex_unlock(&opp_table_lock); + _of_clear_opp_table(opp_table); /* Release clk */ @@ -1151,10 +1160,7 @@ mutex_destroy(&opp_table->genpd_virt_dev_lock); mutex_destroy(&opp_table->lock); - list_del(&opp_table->node); kfree(opp_table); - - mutex_unlock(&opp_table_lock); } void dev_pm_opp_put_opp_table(struct opp_table *opp_table) @@ -1260,13 +1266,19 @@ } EXPORT_SYMBOL_GPL(dev_pm_opp_remove); -void _opp_remove_all_static(struct opp_table *opp_table) +bool _opp_remove_all_static(struct opp_table *opp_table) { struct dev_pm_opp *opp, *tmp; + bool ret = true; mutex_lock(&opp_table->lock); - if (!opp_table->parsed_static_opps || --opp_table->parsed_static_opps) + if (!opp_table->parsed_static_opps) { + ret = false; + goto unlock; + } + + if (--opp_table->parsed_static_opps) goto unlock; list_for_each_entry_safe(opp, tmp, &opp_table->opp_list, node) { @@ -1276,6 +1288,8 @@ unlock: mutex_unlock(&opp_table->lock); + + return ret; } /** @@ -1905,6 +1919,9 @@ { int index; + if (!opp_table->genpd_virt_devs) + return; + for (index = 0; index < opp_table->required_opp_count; index++) { if (!opp_table->genpd_virt_devs[index]) continue; @@ -1951,6 +1968,9 @@ if (!opp_table) return ERR_PTR(-ENOMEM); + if (opp_table->genpd_virt_devs) + return opp_table; + /* * If the genpd's OPP table isn't already initialized, parsing of the * required-opps fail for dev. We should retry this after genpd's OPP @@ -2377,13 +2397,15 @@ return; } - _opp_remove_all_static(opp_table); + /* + * Drop the extra reference only if the OPP table was successfully added + * with dev_pm_opp_of_add_table() earlier. + **/ + if (_opp_remove_all_static(opp_table)) + dev_pm_opp_put_opp_table(opp_table); /* Drop reference taken by _find_opp_table() */ dev_pm_opp_put_opp_table(opp_table); - - /* Drop reference taken while the OPP table was added */ - dev_pm_opp_put_opp_table(opp_table); } /** --- linux-azure-5.8-5.8.0.orig/drivers/opp/of.c +++ linux-azure-5.8-5.8.0/drivers/opp/of.c @@ -732,7 +732,6 @@ struct device *dev, struct device_node *np) { struct dev_pm_opp *new_opp; - u64 rate = 0; u32 val; int ret; bool rate_not_available = false; @@ -749,7 +748,8 @@ /* Check if the OPP supports hardware's hierarchy of versions or not */ if (!_opp_is_supported(dev, opp_table, np)) { - dev_dbg(dev, "OPP not supported by hardware: %llu\n", rate); + dev_dbg(dev, "OPP not supported by hardware: %lu\n", + new_opp->rate); goto free_opp; } --- linux-azure-5.8-5.8.0.orig/drivers/opp/opp.h +++ linux-azure-5.8-5.8.0/drivers/opp/opp.h @@ -212,7 +212,7 @@ /* Routines internal to opp core */ void dev_pm_opp_get(struct dev_pm_opp *opp); -void _opp_remove_all_static(struct opp_table *opp_table); +bool _opp_remove_all_static(struct opp_table *opp_table); void _get_opp_table_kref(struct opp_table *opp_table); int _get_opp_count(struct opp_table *opp_table); struct opp_table *_find_opp_table(struct device *dev); --- linux-azure-5.8-5.8.0.orig/drivers/parisc/sba_iommu.c +++ linux-azure-5.8-5.8.0/drivers/parisc/sba_iommu.c @@ -1270,7 +1270,7 @@ ** (one that doesn't overlap memory or LMMIO space) in the ** IBASE and IMASK registers. */ - ioc->ibase = READ_REG(ioc->ioc_hpa + IOC_IBASE); + ioc->ibase = READ_REG(ioc->ioc_hpa + IOC_IBASE) & ~0x1fffffULL; iova_space_size = ~(READ_REG(ioc->ioc_hpa + IOC_IMASK) & 0xFFFFFFFFUL) + 1; if ((ioc->ibase < 0xfed00000UL) && ((ioc->ibase + iova_space_size) > 0xfee00000UL)) { --- linux-azure-5.8-5.8.0.orig/drivers/pci/access.c +++ linux-azure-5.8-5.8.0/drivers/pci/access.c @@ -204,17 +204,13 @@ static DECLARE_WAIT_QUEUE_HEAD(pci_cfg_wait); static noinline void pci_wait_cfg(struct pci_dev *dev) + __must_hold(&pci_lock) { - DECLARE_WAITQUEUE(wait, current); - - __add_wait_queue(&pci_cfg_wait, &wait); do { - set_current_state(TASK_UNINTERRUPTIBLE); raw_spin_unlock_irq(&pci_lock); - schedule(); + wait_event(pci_cfg_wait, !dev->block_cfg_access); raw_spin_lock_irq(&pci_lock); } while (dev->block_cfg_access); - __remove_wait_queue(&pci_cfg_wait, &wait); } /* Returns 0 on success, negative values indicate error. */ --- linux-azure-5.8-5.8.0.orig/drivers/pci/ats.c +++ linux-azure-5.8-5.8.0/drivers/pci/ats.c @@ -325,6 +325,21 @@ return pdev->pasid_required; } + +/** + * pci_pri_supported - Check if PRI is supported. + * @pdev: PCI device structure + * + * Returns true if PRI capability is present, false otherwise. + */ +bool pci_pri_supported(struct pci_dev *pdev) +{ + /* VFs share the PF PRI */ + if (pci_physfn(pdev)->pri_cap) + return true; + return false; +} +EXPORT_SYMBOL_GPL(pci_pri_supported); #endif /* CONFIG_PCI_PRI */ #ifdef CONFIG_PCI_PASID --- linux-azure-5.8-5.8.0.orig/drivers/pci/bus.c +++ linux-azure-5.8-5.8.0/drivers/pci/bus.c @@ -322,12 +322,8 @@ dev->match_driver = true; retval = device_attach(&dev->dev); - if (retval < 0 && retval != -EPROBE_DEFER) { + if (retval < 0 && retval != -EPROBE_DEFER) pci_warn(dev, "device attach failed (%d)\n", retval); - pci_proc_detach_device(dev); - pci_remove_sysfs_dev_files(dev); - return; - } pci_dev_assign_added(dev, true); } --- linux-azure-5.8-5.8.0.orig/drivers/pci/controller/cadence/pcie-cadence-ep.c +++ linux-azure-5.8-5.8.0/drivers/pci/controller/cadence/pcie-cadence-ep.c @@ -8,7 +8,6 @@ #include #include #include -#include #include #include "pcie-cadence.h" @@ -440,8 +439,7 @@ epc = devm_pci_epc_create(dev, &cdns_pcie_epc_ops); if (IS_ERR(epc)) { dev_err(dev, "failed to create epc device\n"); - ret = PTR_ERR(epc); - goto err_init; + return PTR_ERR(epc); } epc_set_drvdata(epc, ep); @@ -453,7 +451,7 @@ resource_size(pcie->mem_res), PAGE_SIZE); if (ret < 0) { dev_err(dev, "failed to initialize the memory space\n"); - goto err_init; + return ret; } ep->irq_cpu_addr = pci_epc_mem_alloc_addr(epc, &ep->irq_phys_addr, @@ -472,8 +470,5 @@ free_epc_mem: pci_epc_mem_exit(epc); - err_init: - pm_runtime_put_sync(dev); - return ret; } --- linux-azure-5.8-5.8.0.orig/drivers/pci/controller/cadence/pcie-cadence-host.c +++ linux-azure-5.8-5.8.0/drivers/pci/controller/cadence/pcie-cadence-host.c @@ -7,7 +7,6 @@ #include #include #include -#include #include "pcie-cadence.h" @@ -70,6 +69,7 @@ { struct cdns_pcie *pcie = &rc->pcie; u32 value, ctrl; + u32 id; /* * Set the root complex BAR configuration register: @@ -89,8 +89,12 @@ cdns_pcie_writel(pcie, CDNS_PCIE_LM_RC_BAR_CFG, value); /* Set root port configuration space */ - if (rc->vendor_id != 0xffff) - cdns_pcie_rp_writew(pcie, PCI_VENDOR_ID, rc->vendor_id); + if (rc->vendor_id != 0xffff) { + id = CDNS_PCIE_LM_ID_VENDOR(rc->vendor_id) | + CDNS_PCIE_LM_ID_SUBSYS(rc->vendor_id); + cdns_pcie_writel(pcie, CDNS_PCIE_LM_ID, id); + } + if (rc->device_id != 0xffff) cdns_pcie_rp_writew(pcie, PCI_DEVICE_ID, rc->device_id); @@ -250,7 +254,7 @@ ret = cdns_pcie_host_init(dev, &resources, rc); if (ret) - goto err_init; + return ret; list_splice_init(&resources, &bridge->windows); bridge->dev.parent = dev; @@ -268,8 +272,5 @@ err_host_probe: pci_free_resource_list(&resources); - err_init: - pm_runtime_put_sync(dev); - return ret; } --- linux-azure-5.8-5.8.0.orig/drivers/pci/controller/dwc/pcie-designware-ep.c +++ linux-azure-5.8-5.8.0/drivers/pci/controller/dwc/pcie-designware-ep.c @@ -505,7 +505,8 @@ u32 reg; int i; - hdr_type = dw_pcie_readb_dbi(pci, PCI_HEADER_TYPE); + hdr_type = dw_pcie_readb_dbi(pci, PCI_HEADER_TYPE) & + PCI_HEADER_TYPE_MASK; if (hdr_type != PCI_HEADER_TYPE_NORMAL) { dev_err(pci->dev, "PCIe controller is not set to EP mode (hdr_type:0x%x)!\n", --- linux-azure-5.8-5.8.0.orig/drivers/pci/controller/dwc/pcie-qcom.c +++ linux-azure-5.8-5.8.0/drivers/pci/controller/dwc/pcie-qcom.c @@ -45,7 +45,13 @@ #define PCIE_CAP_CPL_TIMEOUT_DISABLE 0x10 #define PCIE20_PARF_PHY_CTRL 0x40 +#define PHY_CTRL_PHY_TX0_TERM_OFFSET_MASK GENMASK(20, 16) +#define PHY_CTRL_PHY_TX0_TERM_OFFSET(x) ((x) << 16) + #define PCIE20_PARF_PHY_REFCLK 0x4C +#define PHY_REFCLK_SSP_EN BIT(16) +#define PHY_REFCLK_USE_PAD BIT(12) + #define PCIE20_PARF_DBI_BASE_ADDR 0x168 #define PCIE20_PARF_SLV_ADDR_SPACE_SIZE 0x16C #define PCIE20_PARF_MHI_CLOCK_RESET_CTRL 0x174 @@ -77,6 +83,18 @@ #define DBI_RO_WR_EN 1 #define PERST_DELAY_US 1000 +/* PARF registers */ +#define PCIE20_PARF_PCS_DEEMPH 0x34 +#define PCS_DEEMPH_TX_DEEMPH_GEN1(x) ((x) << 16) +#define PCS_DEEMPH_TX_DEEMPH_GEN2_3_5DB(x) ((x) << 8) +#define PCS_DEEMPH_TX_DEEMPH_GEN2_6DB(x) ((x) << 0) + +#define PCIE20_PARF_PCS_SWING 0x38 +#define PCS_SWING_TX_SWING_FULL(x) ((x) << 8) +#define PCS_SWING_TX_SWING_LOW(x) ((x) << 0) + +#define PCIE20_PARF_CONFIG_BITS 0x50 +#define PHY_RX0_EQ(x) ((x) << 24) #define PCIE20_v3_PARF_SLV_ADDR_SPACE_SIZE 0x358 #define SLV_ADDR_SPACE_SZ 0x10000000 @@ -88,11 +106,14 @@ struct clk *iface_clk; struct clk *core_clk; struct clk *phy_clk; + struct clk *aux_clk; + struct clk *ref_clk; struct reset_control *pci_reset; struct reset_control *axi_reset; struct reset_control *ahb_reset; struct reset_control *por_reset; struct reset_control *phy_reset; + struct reset_control *ext_reset; struct regulator_bulk_data supplies[QCOM_PCIE_2_1_0_MAX_SUPPLY]; }; @@ -246,6 +267,14 @@ if (IS_ERR(res->phy_clk)) return PTR_ERR(res->phy_clk); + res->aux_clk = devm_clk_get_optional(dev, "aux"); + if (IS_ERR(res->aux_clk)) + return PTR_ERR(res->aux_clk); + + res->ref_clk = devm_clk_get_optional(dev, "ref"); + if (IS_ERR(res->ref_clk)) + return PTR_ERR(res->ref_clk); + res->pci_reset = devm_reset_control_get_exclusive(dev, "pci"); if (IS_ERR(res->pci_reset)) return PTR_ERR(res->pci_reset); @@ -262,6 +291,10 @@ if (IS_ERR(res->por_reset)) return PTR_ERR(res->por_reset); + res->ext_reset = devm_reset_control_get_optional_exclusive(dev, "ext"); + if (IS_ERR(res->ext_reset)) + return PTR_ERR(res->ext_reset); + res->phy_reset = devm_reset_control_get_exclusive(dev, "phy"); return PTR_ERR_OR_ZERO(res->phy_reset); } @@ -270,14 +303,20 @@ { struct qcom_pcie_resources_2_1_0 *res = &pcie->res.v2_1_0; + clk_disable_unprepare(res->phy_clk); reset_control_assert(res->pci_reset); reset_control_assert(res->axi_reset); reset_control_assert(res->ahb_reset); reset_control_assert(res->por_reset); - reset_control_assert(res->pci_reset); + reset_control_assert(res->ext_reset); + reset_control_assert(res->phy_reset); clk_disable_unprepare(res->iface_clk); clk_disable_unprepare(res->core_clk); - clk_disable_unprepare(res->phy_clk); + clk_disable_unprepare(res->aux_clk); + clk_disable_unprepare(res->ref_clk); + + writel(1, pcie->parf + PCIE20_PARF_PHY_CTRL); + regulator_bulk_disable(ARRAY_SIZE(res->supplies), res->supplies); } @@ -286,9 +325,20 @@ struct qcom_pcie_resources_2_1_0 *res = &pcie->res.v2_1_0; struct dw_pcie *pci = pcie->pci; struct device *dev = pci->dev; + struct device_node *node = dev->of_node; u32 val; int ret; + /* reset the PCIe interface as uboot can leave it undefined state */ + reset_control_assert(res->pci_reset); + reset_control_assert(res->axi_reset); + reset_control_assert(res->ahb_reset); + reset_control_assert(res->por_reset); + reset_control_assert(res->ext_reset); + reset_control_assert(res->phy_reset); + + writel(1, pcie->parf + PCIE20_PARF_PHY_CTRL); + ret = regulator_bulk_enable(ARRAY_SIZE(res->supplies), res->supplies); if (ret < 0) { dev_err(dev, "cannot enable regulators\n"); @@ -307,32 +357,66 @@ goto err_assert_ahb; } - ret = clk_prepare_enable(res->phy_clk); - if (ret) { - dev_err(dev, "cannot prepare/enable phy clock\n"); - goto err_clk_phy; - } - ret = clk_prepare_enable(res->core_clk); if (ret) { dev_err(dev, "cannot prepare/enable core clock\n"); goto err_clk_core; } + ret = clk_prepare_enable(res->aux_clk); + if (ret) { + dev_err(dev, "cannot prepare/enable aux clock\n"); + goto err_clk_aux; + } + + ret = clk_prepare_enable(res->ref_clk); + if (ret) { + dev_err(dev, "cannot prepare/enable ref clock\n"); + goto err_clk_ref; + } + ret = reset_control_deassert(res->ahb_reset); if (ret) { dev_err(dev, "cannot deassert ahb reset\n"); goto err_deassert_ahb; } + ret = reset_control_deassert(res->ext_reset); + if (ret) { + dev_err(dev, "cannot deassert ext reset\n"); + goto err_deassert_ahb; + } + /* enable PCIe clocks and resets */ val = readl(pcie->parf + PCIE20_PARF_PHY_CTRL); val &= ~BIT(0); writel(val, pcie->parf + PCIE20_PARF_PHY_CTRL); + if (of_device_is_compatible(node, "qcom,pcie-ipq8064")) { + writel(PCS_DEEMPH_TX_DEEMPH_GEN1(24) | + PCS_DEEMPH_TX_DEEMPH_GEN2_3_5DB(24) | + PCS_DEEMPH_TX_DEEMPH_GEN2_6DB(34), + pcie->parf + PCIE20_PARF_PCS_DEEMPH); + writel(PCS_SWING_TX_SWING_FULL(120) | + PCS_SWING_TX_SWING_LOW(120), + pcie->parf + PCIE20_PARF_PCS_SWING); + writel(PHY_RX0_EQ(4), pcie->parf + PCIE20_PARF_CONFIG_BITS); + } + + if (of_device_is_compatible(node, "qcom,pcie-ipq8064")) { + /* set TX termination offset */ + val = readl(pcie->parf + PCIE20_PARF_PHY_CTRL); + val &= ~PHY_CTRL_PHY_TX0_TERM_OFFSET_MASK; + val |= PHY_CTRL_PHY_TX0_TERM_OFFSET(7); + writel(val, pcie->parf + PCIE20_PARF_PHY_CTRL); + } + /* enable external reference clock */ val = readl(pcie->parf + PCIE20_PARF_PHY_REFCLK); - val |= BIT(16); + /* USE_PAD is required only for ipq806x */ + if (!of_device_is_compatible(node, "qcom,pcie-apq8064")) + val &= ~PHY_REFCLK_USE_PAD; + val |= PHY_REFCLK_SSP_EN; writel(val, pcie->parf + PCIE20_PARF_PHY_REFCLK); ret = reset_control_deassert(res->phy_reset); @@ -359,6 +443,12 @@ return ret; } + ret = clk_prepare_enable(res->phy_clk); + if (ret) { + dev_err(dev, "cannot prepare/enable phy clock\n"); + goto err_deassert_ahb; + } + /* wait for clock acquisition */ usleep_range(1000, 1500); @@ -372,10 +462,12 @@ return 0; err_deassert_ahb: + clk_disable_unprepare(res->ref_clk); +err_clk_ref: + clk_disable_unprepare(res->aux_clk); +err_clk_aux: clk_disable_unprepare(res->core_clk); err_clk_core: - clk_disable_unprepare(res->phy_clk); -err_clk_phy: clk_disable_unprepare(res->iface_clk); err_assert_ahb: regulator_bulk_disable(ARRAY_SIZE(res->supplies), res->supplies); --- linux-azure-5.8-5.8.0.orig/drivers/pci/controller/pci-aardvark.c +++ linux-azure-5.8-5.8.0/drivers/pci/controller/pci-aardvark.c @@ -9,7 +9,7 @@ */ #include -#include +#include #include #include #include @@ -608,7 +608,7 @@ * Initialize the configuration space of the PCI-to-PCI bridge * associated with the given PCIe interface. */ -static void advk_sw_pci_bridge_init(struct advk_pcie *pcie) +static int advk_sw_pci_bridge_init(struct advk_pcie *pcie) { struct pci_bridge_emul *bridge = &pcie->bridge; @@ -634,8 +634,7 @@ bridge->data = pcie; bridge->ops = &advk_pci_bridge_emul_ops; - pci_bridge_emul_init(bridge, 0); - + return pci_bridge_emul_init(bridge, 0); } static bool advk_pcie_valid_device(struct advk_pcie *pcie, struct pci_bus *bus, @@ -1069,7 +1068,9 @@ } ret = phy_power_on(pcie->phy); - if (ret) { + if (ret == -EOPNOTSUPP) { + dev_warn(&pcie->pdev->dev, "PHY unsupported by firmware\n"); + } else if (ret) { phy_exit(pcie->phy); return ret; } @@ -1169,7 +1170,11 @@ advk_pcie_setup_hw(pcie); - advk_sw_pci_bridge_init(pcie); + ret = advk_sw_pci_bridge_init(pcie); + if (ret) { + dev_err(dev, "Failed to register emulated root PCI bridge\n"); + return ret; + } ret = advk_pcie_init_irq_domain(pcie); if (ret) { --- linux-azure-5.8-5.8.0.orig/drivers/pci/controller/pci-hyperv.c +++ linux-azure-5.8-5.8.0/drivers/pci/controller/pci-hyperv.c @@ -1275,11 +1275,25 @@ exit_unlock: spin_unlock_irqrestore(&hbus->retarget_msi_interrupt_lock, flags); - if (res) { + /* + * During hibernation, when a CPU is offlined, the kernel tries + * to move the interrupt to the remaining CPUs that haven't + * been offlined yet. In this case, the below hv_do_hypercall() + * always fails since the vmbus channel has been closed: + * refer to cpu_disable_common() -> fixup_irqs() -> + * irq_migrate_all_off_this_cpu() -> migrate_one_irq(). + * + * Suppress the error message for hibernation because the failure + * during hibernation does not matter (at this time all the devices + * have been frozen). Note: the correct affinity info is still updated + * into the irqdata data structure in migrate_one_irq() -> + * irq_do_set_affinity() -> hv_set_affinity(), so later when the VM + * resumes, hv_pci_restore_msi_state() is able to correctly restore + * the interrupt with the correct affinity. + */ + if (res && hbus->state != hv_pcibus_removing) dev_err(&hbus->hdev->device, "%s() failed: %#llx", __func__, res); - return; - } pci_msi_unmask_irq(data); } @@ -3368,6 +3382,34 @@ return 0; } +static int hv_pci_restore_msi_msg(struct pci_dev *pdev, void *arg) +{ + struct msi_desc *entry; + struct irq_data *irq_data; + + for_each_pci_msi_entry(entry, pdev) { + irq_data = irq_get_irq_data(entry->irq); + if (WARN_ON_ONCE(!irq_data)) + return -EINVAL; + + hv_compose_msi_msg(irq_data, &entry->msg); + } + + return 0; +} + +/* + * Upon resume, pci_restore_msi_state() -> ... -> __pci_write_msi_msg() + * directly writes the MSI/MSI-X registers via MMIO, but since Hyper-V + * doesn't trap and emulate the MMIO accesses, here hv_compose_msi_msg() + * must be used to ask Hyper-V to re-create the IOMMU Interrupt Remapping + * Table entries. + */ +static void hv_pci_restore_msi_state(struct hv_pcibus_device *hbus) +{ + pci_walk_bus(hbus->pci_bus, hv_pci_restore_msi_msg, NULL); +} + static int hv_pci_resume(struct hv_device *hdev) { struct hv_pcibus_device *hbus = hv_get_drvdata(hdev); @@ -3401,6 +3443,8 @@ prepopulate_bars(hbus); + hv_pci_restore_msi_state(hbus); + hbus->state = hv_pcibus_installed; return 0; out: --- linux-azure-5.8-5.8.0.orig/drivers/pci/controller/pci-loongson.c +++ linux-azure-5.8-5.8.0/drivers/pci/controller/pci-loongson.c @@ -37,11 +37,11 @@ { dev->class = PCI_CLASS_BRIDGE_PCI << 8; } -DECLARE_PCI_FIXUP_HEADER(PCI_VENDOR_ID_LOONGSON, +DECLARE_PCI_FIXUP_EARLY(PCI_VENDOR_ID_LOONGSON, DEV_PCIE_PORT_0, bridge_class_quirk); -DECLARE_PCI_FIXUP_HEADER(PCI_VENDOR_ID_LOONGSON, +DECLARE_PCI_FIXUP_EARLY(PCI_VENDOR_ID_LOONGSON, DEV_PCIE_PORT_1, bridge_class_quirk); -DECLARE_PCI_FIXUP_HEADER(PCI_VENDOR_ID_LOONGSON, +DECLARE_PCI_FIXUP_EARLY(PCI_VENDOR_ID_LOONGSON, DEV_PCIE_PORT_2, bridge_class_quirk); static void system_bus_quirk(struct pci_dev *pdev) --- linux-azure-5.8-5.8.0.orig/drivers/pci/controller/pci-tegra.c +++ linux-azure-5.8-5.8.0/drivers/pci/controller/pci-tegra.c @@ -181,13 +181,6 @@ #define AFI_PEXBIAS_CTRL_0 0x168 -#define RP_PRIV_XP_DL 0x00000494 -#define RP_PRIV_XP_DL_GEN2_UPD_FC_TSHOLD (0x1ff << 1) - -#define RP_RX_HDR_LIMIT 0x00000e00 -#define RP_RX_HDR_LIMIT_PW_MASK (0xff << 8) -#define RP_RX_HDR_LIMIT_PW (0x0e << 8) - #define RP_ECTL_2_R1 0x00000e84 #define RP_ECTL_2_R1_RX_CTLE_1C_MASK 0xffff @@ -323,7 +316,6 @@ bool program_uphy; bool update_clamp_threshold; bool program_deskew_time; - bool raw_violation_fixup; bool update_fc_timer; bool has_cache_bars; struct { @@ -659,23 +651,6 @@ writel(value, port->base + RP_VEND_CTL0); } - /* Fixup for read after write violation. */ - if (soc->raw_violation_fixup) { - value = readl(port->base + RP_RX_HDR_LIMIT); - value &= ~RP_RX_HDR_LIMIT_PW_MASK; - value |= RP_RX_HDR_LIMIT_PW; - writel(value, port->base + RP_RX_HDR_LIMIT); - - value = readl(port->base + RP_PRIV_XP_DL); - value |= RP_PRIV_XP_DL_GEN2_UPD_FC_TSHOLD; - writel(value, port->base + RP_PRIV_XP_DL); - - value = readl(port->base + RP_VEND_XP); - value &= ~RP_VEND_XP_UPDATE_FC_THRESHOLD_MASK; - value |= soc->update_fc_threshold; - writel(value, port->base + RP_VEND_XP); - } - if (soc->update_fc_timer) { value = readl(port->base + RP_VEND_XP); value &= ~RP_VEND_XP_UPDATE_FC_THRESHOLD_MASK; @@ -2416,7 +2391,6 @@ .program_uphy = true, .update_clamp_threshold = false, .program_deskew_time = false, - .raw_violation_fixup = false, .update_fc_timer = false, .has_cache_bars = true, .ectl.enable = false, @@ -2446,7 +2420,6 @@ .program_uphy = true, .update_clamp_threshold = false, .program_deskew_time = false, - .raw_violation_fixup = false, .update_fc_timer = false, .has_cache_bars = false, .ectl.enable = false, @@ -2459,8 +2432,6 @@ .pads_pll_ctl = PADS_PLL_CTL_TEGRA30, .tx_ref_sel = PADS_PLL_CTL_TXCLKREF_BUF_EN, .pads_refclk_cfg0 = 0x44ac44ac, - /* FC threshold is bit[25:18] */ - .update_fc_threshold = 0x03fc0000, .has_pex_clkreq_en = true, .has_pex_bias_ctrl = true, .has_intr_prsnt_sense = true, @@ -2470,7 +2441,6 @@ .program_uphy = true, .update_clamp_threshold = true, .program_deskew_time = false, - .raw_violation_fixup = true, .update_fc_timer = false, .has_cache_bars = false, .ectl.enable = false, @@ -2494,7 +2464,6 @@ .program_uphy = true, .update_clamp_threshold = true, .program_deskew_time = true, - .raw_violation_fixup = false, .update_fc_timer = true, .has_cache_bars = false, .ectl = { @@ -2536,7 +2505,6 @@ .program_uphy = false, .update_clamp_threshold = false, .program_deskew_time = false, - .raw_violation_fixup = false, .update_fc_timer = false, .has_cache_bars = false, .ectl.enable = false, --- linux-azure-5.8-5.8.0.orig/drivers/pci/controller/pcie-brcmstb.c +++ linux-azure-5.8-5.8.0/drivers/pci/controller/pcie-brcmstb.c @@ -716,6 +716,7 @@ usleep_range(100, 200); /* Set SCB_MAX_BURST_SIZE, CFG_READ_UR_MODE, SCB_ACCESS_EN */ + tmp = readl(base + PCIE_MISC_MISC_CTRL); u32p_replace_bits(&tmp, 1, PCIE_MISC_MISC_CTRL_SCB_ACCESS_EN_MASK); u32p_replace_bits(&tmp, 1, PCIE_MISC_MISC_CTRL_CFG_READ_UR_MODE_MASK); u32p_replace_bits(&tmp, PCIE_MISC_MISC_CTRL_MAX_BURST_SIZE_128, --- linux-azure-5.8-5.8.0.orig/drivers/pci/controller/pcie-iproc-msi.c +++ linux-azure-5.8-5.8.0/drivers/pci/controller/pcie-iproc-msi.c @@ -209,15 +209,20 @@ struct iproc_msi *msi = irq_data_get_irq_chip_data(data); int target_cpu = cpumask_first(mask); int curr_cpu; + int ret; curr_cpu = hwirq_to_cpu(msi, data->hwirq); if (curr_cpu == target_cpu) - return IRQ_SET_MASK_OK_DONE; + ret = IRQ_SET_MASK_OK_DONE; + else { + /* steer MSI to the target CPU */ + data->hwirq = hwirq_to_canonical_hwirq(msi, data->hwirq) + target_cpu; + ret = IRQ_SET_MASK_OK; + } - /* steer MSI to the target CPU */ - data->hwirq = hwirq_to_canonical_hwirq(msi, data->hwirq) + target_cpu; + irq_data_update_effective_affinity(data, cpumask_of(target_cpu)); - return IRQ_SET_MASK_OK; + return ret; } static void iproc_msi_irq_compose_msi_msg(struct irq_data *data, --- linux-azure-5.8-5.8.0.orig/drivers/pci/controller/pcie-iproc.c +++ linux-azure-5.8-5.8.0/drivers/pci/controller/pcie-iproc.c @@ -192,8 +192,15 @@ .imap_window_offset = 0x4, }, { - /* IARR1/IMAP1 (currently unused) */ - .type = IPROC_PCIE_IB_MAP_INVALID, + /* IARR1/IMAP1 */ + .type = IPROC_PCIE_IB_MAP_MEM, + .size_unit = SZ_1M, + .region_sizes = { 8 }, + .nr_sizes = 1, + .nr_windows = 8, + .imap_addr_offset = 0x4, + .imap_window_offset = 0x8, + }, { /* IARR2/IMAP2 */ @@ -307,7 +314,7 @@ }; /* iProc PCIe PAXB BCMA registers */ -static const u16 iproc_pcie_reg_paxb_bcma[] = { +static const u16 iproc_pcie_reg_paxb_bcma[IPROC_PCIE_MAX_NUM_REG] = { [IPROC_PCIE_CLK_CTRL] = 0x000, [IPROC_PCIE_CFG_IND_ADDR] = 0x120, [IPROC_PCIE_CFG_IND_DATA] = 0x124, @@ -318,7 +325,7 @@ }; /* iProc PCIe PAXB registers */ -static const u16 iproc_pcie_reg_paxb[] = { +static const u16 iproc_pcie_reg_paxb[IPROC_PCIE_MAX_NUM_REG] = { [IPROC_PCIE_CLK_CTRL] = 0x000, [IPROC_PCIE_CFG_IND_ADDR] = 0x120, [IPROC_PCIE_CFG_IND_DATA] = 0x124, @@ -334,7 +341,7 @@ }; /* iProc PCIe PAXB v2 registers */ -static const u16 iproc_pcie_reg_paxb_v2[] = { +static const u16 iproc_pcie_reg_paxb_v2[IPROC_PCIE_MAX_NUM_REG] = { [IPROC_PCIE_CLK_CTRL] = 0x000, [IPROC_PCIE_CFG_IND_ADDR] = 0x120, [IPROC_PCIE_CFG_IND_DATA] = 0x124, @@ -351,6 +358,8 @@ [IPROC_PCIE_OMAP3] = 0xdf8, [IPROC_PCIE_IARR0] = 0xd00, [IPROC_PCIE_IMAP0] = 0xc00, + [IPROC_PCIE_IARR1] = 0xd08, + [IPROC_PCIE_IMAP1] = 0xd70, [IPROC_PCIE_IARR2] = 0xd10, [IPROC_PCIE_IMAP2] = 0xcc0, [IPROC_PCIE_IARR3] = 0xe00, @@ -363,7 +372,7 @@ }; /* iProc PCIe PAXC v1 registers */ -static const u16 iproc_pcie_reg_paxc[] = { +static const u16 iproc_pcie_reg_paxc[IPROC_PCIE_MAX_NUM_REG] = { [IPROC_PCIE_CLK_CTRL] = 0x000, [IPROC_PCIE_CFG_IND_ADDR] = 0x1f0, [IPROC_PCIE_CFG_IND_DATA] = 0x1f4, @@ -372,7 +381,7 @@ }; /* iProc PCIe PAXC v2 registers */ -static const u16 iproc_pcie_reg_paxc_v2[] = { +static const u16 iproc_pcie_reg_paxc_v2[IPROC_PCIE_MAX_NUM_REG] = { [IPROC_PCIE_MSI_GIC_MODE] = 0x050, [IPROC_PCIE_MSI_BASE_ADDR] = 0x074, [IPROC_PCIE_MSI_WINDOW_SIZE] = 0x078, --- linux-azure-5.8-5.8.0.orig/drivers/pci/controller/pcie-rcar-host.c +++ linux-azure-5.8-5.8.0/drivers/pci/controller/pcie-rcar-host.c @@ -803,7 +803,7 @@ } /* setup MSI data target */ - msi->pages = __get_free_pages(GFP_KERNEL, 0); + msi->pages = __get_free_pages(GFP_KERNEL | GFP_DMA32, 0); rcar_pcie_hw_enable_msi(host); return 0; @@ -986,7 +986,7 @@ err = pm_runtime_get_sync(pcie->dev); if (err < 0) { dev_err(pcie->dev, "pm_runtime_get_sync failed\n"); - goto err_pm_disable; + goto err_pm_put; } err = rcar_pcie_get_resources(host); @@ -1057,8 +1057,6 @@ err_pm_put: pm_runtime_put(dev); - -err_pm_disable: pm_runtime_disable(dev); pci_free_resource_list(&host->resources); --- linux-azure-5.8-5.8.0.orig/drivers/pci/controller/vmd.c +++ linux-azure-5.8-5.8.0/drivers/pci/controller/vmd.c @@ -47,6 +47,12 @@ * bus numbering */ VMD_FEAT_HAS_BUS_RESTRICTIONS = (1 << 1), + + /* + * Device may use MSI-X vector 0 for software triggering and will not + * be used for MSI remapping + */ + VMD_FEAT_OFFSET_FIRST_VECTOR = (1 << 3), }; /* @@ -98,6 +104,7 @@ struct irq_domain *irq_domain; struct pci_bus *bus; u8 busn_start; + u8 first_vec; }; static inline struct vmd_dev *vmd_from_bus(struct pci_bus *bus) @@ -193,11 +200,11 @@ */ static struct vmd_irq_list *vmd_next_irq(struct vmd_dev *vmd, struct msi_desc *desc) { - int i, best = 1; unsigned long flags; + int i, best; - if (vmd->msix_count == 1) - return &vmd->irqs[0]; + if (vmd->msix_count == 1 + vmd->first_vec) + return &vmd->irqs[vmd->first_vec]; /* * White list for fast-interrupt handlers. All others will share the @@ -207,11 +214,12 @@ case PCI_CLASS_STORAGE_EXPRESS: break; default: - return &vmd->irqs[0]; + return &vmd->irqs[vmd->first_vec]; } raw_spin_lock_irqsave(&list_lock, flags); - for (i = 1; i < vmd->msix_count; i++) + best = vmd->first_vec + 1; + for (i = best; i < vmd->msix_count; i++) if (vmd->irqs[i].count < vmd->irqs[best].count) best = i; vmd->irqs[best].count++; @@ -560,6 +568,7 @@ if (!vmd->bus) { pci_free_resource_list(&resources); irq_domain_remove(vmd->irq_domain); + irq_domain_free_fwnode(fn); return -ENODEV; } @@ -600,6 +609,7 @@ static int vmd_probe(struct pci_dev *dev, const struct pci_device_id *id) { + unsigned long features = (unsigned long) id->driver_data; struct vmd_dev *vmd; int i, err; @@ -624,12 +634,15 @@ dma_set_mask_and_coherent(&dev->dev, DMA_BIT_MASK(32))) return -ENODEV; + if (features & VMD_FEAT_OFFSET_FIRST_VECTOR) + vmd->first_vec = 1; + vmd->msix_count = pci_msix_vec_count(dev); if (vmd->msix_count < 0) return -ENODEV; - vmd->msix_count = pci_alloc_irq_vectors(dev, 1, vmd->msix_count, - PCI_IRQ_MSIX); + vmd->msix_count = pci_alloc_irq_vectors(dev, vmd->first_vec + 1, + vmd->msix_count, PCI_IRQ_MSIX); if (vmd->msix_count < 0) return vmd->msix_count; @@ -653,7 +666,7 @@ spin_lock_init(&vmd->cfg_lock); pci_set_drvdata(dev, vmd); - err = vmd_enable_domain(vmd, (unsigned long) id->driver_data); + err = vmd_enable_domain(vmd, features); if (err) return err; @@ -673,6 +686,7 @@ static void vmd_remove(struct pci_dev *dev) { struct vmd_dev *vmd = pci_get_drvdata(dev); + struct fwnode_handle *fn = vmd->irq_domain->fwnode; sysfs_remove_link(&vmd->dev->dev.kobj, "domain"); pci_stop_root_bus(vmd->bus); @@ -680,6 +694,7 @@ vmd_cleanup_srcu(vmd); vmd_detach_resources(vmd); irq_domain_remove(vmd->irq_domain); + irq_domain_free_fwnode(fn); } #ifdef CONFIG_PM_SLEEP @@ -722,11 +737,14 @@ .driver_data = VMD_FEAT_HAS_MEMBAR_SHADOW | VMD_FEAT_HAS_BUS_RESTRICTIONS,}, {PCI_DEVICE(PCI_VENDOR_ID_INTEL, 0x467f), - .driver_data = VMD_FEAT_HAS_BUS_RESTRICTIONS,}, + .driver_data = VMD_FEAT_HAS_BUS_RESTRICTIONS | + VMD_FEAT_OFFSET_FIRST_VECTOR,}, {PCI_DEVICE(PCI_VENDOR_ID_INTEL, 0x4c3d), - .driver_data = VMD_FEAT_HAS_BUS_RESTRICTIONS,}, + .driver_data = VMD_FEAT_HAS_BUS_RESTRICTIONS | + VMD_FEAT_OFFSET_FIRST_VECTOR,}, {PCI_DEVICE(PCI_VENDOR_ID_INTEL, PCI_DEVICE_ID_INTEL_VMD_9A0B), - .driver_data = VMD_FEAT_HAS_BUS_RESTRICTIONS,}, + .driver_data = VMD_FEAT_HAS_BUS_RESTRICTIONS | + VMD_FEAT_OFFSET_FIRST_VECTOR,}, {0,} }; MODULE_DEVICE_TABLE(pci, vmd_ids); --- linux-azure-5.8-5.8.0.orig/drivers/pci/ecam.c +++ linux-azure-5.8-5.8.0/drivers/pci/ecam.c @@ -168,4 +168,14 @@ .write = pci_generic_config_write32, } }; + +/* ECAM ops for 32-bit read only (non-compliant) */ +const struct pci_ecam_ops pci_32b_read_ops = { + .bus_shift = 20, + .pci_ops = { + .map_bus = pci_ecam_map_bus, + .read = pci_generic_config_read32, + .write = pci_generic_config_write, + } +}; #endif --- linux-azure-5.8-5.8.0.orig/drivers/pci/hotplug/acpiphp_glue.c +++ linux-azure-5.8-5.8.0/drivers/pci/hotplug/acpiphp_glue.c @@ -122,13 +122,21 @@ struct acpiphp_context *context; acpi_lock_hp_context(); + context = acpiphp_get_context(adev); - if (!context || context->func.parent->is_going_away) { - acpi_unlock_hp_context(); - return NULL; + if (!context) + goto unlock; + + if (context->func.parent->is_going_away) { + acpiphp_put_context(context); + context = NULL; + goto unlock; } + get_bridge(context->func.parent); acpiphp_put_context(context); + +unlock: acpi_unlock_hp_context(); return context; } --- linux-azure-5.8-5.8.0.orig/drivers/pci/hotplug/s390_pci_hpc.c +++ linux-azure-5.8-5.8.0/drivers/pci/hotplug/s390_pci_hpc.c @@ -83,21 +83,19 @@ struct zpci_dev *zdev = container_of(hotplug_slot, struct zpci_dev, hotplug_slot); struct pci_dev *pdev; - struct zpci_bus *zbus = zdev->zbus; int rc; if (!zpci_fn_configured(zdev->state)) return -EIO; - pdev = pci_get_slot(zbus->bus, zdev->devfn); - if (pdev) { - if (pci_num_vf(pdev)) - return -EBUSY; - - pci_stop_and_remove_bus_device_locked(pdev); + pdev = pci_get_slot(zdev->zbus->bus, zdev->devfn); + if (pdev && pci_num_vf(pdev)) { pci_dev_put(pdev); + return -EBUSY; } + zpci_remove_device(zdev); + rc = zpci_disable_device(zdev); if (rc) return rc; --- linux-azure-5.8-5.8.0.orig/drivers/pci/iov.c +++ linux-azure-5.8-5.8.0/drivers/pci/iov.c @@ -180,6 +180,7 @@ virtfn->device = iov->vf_device; virtfn->is_virtfn = 1; virtfn->physfn = pci_dev_get(dev); + virtfn->no_command_memory = 1; if (id == 0) pci_read_vf_config_common(virtfn); --- linux-azure-5.8-5.8.0.orig/drivers/pci/pci-acpi.c +++ linux-azure-5.8-5.8.0/drivers/pci/pci-acpi.c @@ -944,6 +944,16 @@ if (!dev->is_hotplug_bridge) return false; + /* Assume D3 support if the bridge is power-manageable by ACPI. */ + adev = ACPI_COMPANION(&dev->dev); + if (!adev && !pci_dev_is_added(dev)) { + adev = acpi_pci_find_companion(&dev->dev); + ACPI_COMPANION_SET(&dev->dev, adev); + } + + if (adev && acpi_device_power_manageable(adev)) + return true; + /* * Look for a special _DSD property for the root port and if it * is set we know the hierarchy behind it supports D3 just fine. @@ -1050,7 +1060,7 @@ { while (bus->parent) { if (acpi_pm_device_can_wakeup(&bus->self->dev)) - return acpi_pm_set_bridge_wakeup(&bus->self->dev, enable); + return acpi_pm_set_device_wakeup(&bus->self->dev, enable); bus = bus->parent; } @@ -1058,7 +1068,7 @@ /* We have reached the root bus. */ if (bus->bridge) { if (acpi_pm_device_can_wakeup(bus->bridge)) - return acpi_pm_set_bridge_wakeup(bus->bridge, enable); + return acpi_pm_set_device_wakeup(bus->bridge, enable); } return 0; } --- linux-azure-5.8-5.8.0.orig/drivers/pci/pci-bridge-emul.c +++ linux-azure-5.8-5.8.0/drivers/pci/pci-bridge-emul.c @@ -21,8 +21,9 @@ #include "pci-bridge-emul.h" #define PCI_BRIDGE_CONF_END PCI_STD_HEADER_SIZEOF +#define PCI_CAP_PCIE_SIZEOF (PCI_EXP_SLTSTA2 + 2) #define PCI_CAP_PCIE_START PCI_BRIDGE_CONF_END -#define PCI_CAP_PCIE_END (PCI_CAP_PCIE_START + PCI_EXP_SLTSTA2 + 2) +#define PCI_CAP_PCIE_END (PCI_CAP_PCIE_START + PCI_CAP_PCIE_SIZEOF) /** * struct pci_bridge_reg_behavior - register bits behaviors @@ -46,7 +47,8 @@ u32 w1c; }; -static const struct pci_bridge_reg_behavior pci_regs_behavior[] = { +static const +struct pci_bridge_reg_behavior pci_regs_behavior[PCI_STD_HEADER_SIZEOF / 4] = { [PCI_VENDOR_ID / 4] = { .ro = ~0 }, [PCI_COMMAND / 4] = { .rw = (PCI_COMMAND_IO | PCI_COMMAND_MEMORY | @@ -164,7 +166,8 @@ }, }; -static const struct pci_bridge_reg_behavior pcie_cap_regs_behavior[] = { +static const +struct pci_bridge_reg_behavior pcie_cap_regs_behavior[PCI_CAP_PCIE_SIZEOF / 4] = { [PCI_CAP_LIST_ID / 4] = { /* * Capability ID, Next Capability Pointer and @@ -260,6 +263,8 @@ int pci_bridge_emul_init(struct pci_bridge_emul *bridge, unsigned int flags) { + BUILD_BUG_ON(sizeof(bridge->conf) != PCI_BRIDGE_CONF_END); + bridge->conf.class_revision |= cpu_to_le32(PCI_CLASS_BRIDGE_PCI << 16); bridge->conf.header_type = PCI_HEADER_TYPE_BRIDGE; bridge->conf.cache_line_size = 0x10; --- linux-azure-5.8-5.8.0.orig/drivers/pci/pci.c +++ linux-azure-5.8-5.8.0/drivers/pci/pci.c @@ -6165,19 +6165,21 @@ while (*p) { count = 0; if (sscanf(p, "%d%n", &align_order, &count) == 1 && - p[count] == '@') { + p[count] == '@') { p += count + 1; + if (align_order > 63) { + pr_err("PCI: Invalid requested alignment (order %d)\n", + align_order); + align_order = PAGE_SHIFT; + } } else { - align_order = -1; + align_order = PAGE_SHIFT; } ret = pci_dev_str_match(dev, p, &p); if (ret == 1) { *resize = true; - if (align_order == -1) - align = PAGE_SIZE; - else - align = 1 << align_order; + align = 1ULL << align_order; break; } else if (ret < 0) { pr_err("PCI: Can't parse resource_alignment parameter: %s\n", --- linux-azure-5.8-5.8.0.orig/drivers/pci/pcie/aspm.c +++ linux-azure-5.8-5.8.0/drivers/pci/pcie/aspm.c @@ -624,7 +624,8 @@ aspm_calc_l1ss_info(link, &upreg, &dwreg); /* Save default state */ - link->aspm_default = link->aspm_enabled; + link->aspm_default = parent->dev_flags & PCI_DEV_FLAGS_ENABLE_ASPM ? + ASPM_STATE_ALL : link->aspm_enabled; /* Setup initial capable state. Will be updated later */ link->aspm_capable = link->aspm_support; @@ -1182,6 +1183,7 @@ cnt += sprintf(buffer + cnt, "[%s] ", policy_str[i]); else cnt += sprintf(buffer + cnt, "%s ", policy_str[i]); + cnt += sprintf(buffer + cnt, "\n"); return cnt; } --- linux-azure-5.8-5.8.0.orig/drivers/pci/quirks.c +++ linux-azure-5.8-5.8.0/drivers/pci/quirks.c @@ -205,6 +205,21 @@ DECLARE_PCI_FIXUP_CLASS_EARLY(PCI_ANY_ID, PCI_ANY_ID, PCI_CLASS_BRIDGE_HOST, 8, quirk_mmio_always_on); +/* The BAR0 ~ BAR4 of Marvell 9125 device can't be accessed +* by IO resource file, and need to skip the files +*/ +static void quirk_marvell_mask_bar(struct pci_dev *dev) +{ + int i; + + for (i = 0; i < 5; i++) + if (dev->resource[i].start) + dev->resource[i].start = + dev->resource[i].end = 0; +} +DECLARE_PCI_FIXUP_HEADER(PCI_VENDOR_ID_MARVELL_EXT, 0x9125, + quirk_marvell_mask_bar); + /* * The Mellanox Tavor device gives false positive parity errors. Mark this * device with a broken_parity_status to allow PCI scanning code to "skip" @@ -4422,6 +4437,8 @@ if (ACPI_FAILURE(status)) return -ENODEV; + acpi_put_table(header); + /* Filter out flags not applicable to multifunction */ acs_flags &= (PCI_ACS_RR | PCI_ACS_CR | PCI_ACS_EC | PCI_ACS_DT); @@ -4647,6 +4664,7 @@ return false; switch (dev->device) { + case 0x06ac ... 0x06c3: /* Comet Lake */ case 0xa110 ... 0xa11f: case 0xa167 ... 0xa16a: /* Sunrise Point */ case 0xa290 ... 0xa29f: case 0xa2e7 ... 0xa2ee: /* Union Point */ case 0x9d10 ... 0x9d1b: /* 7th & 8th Gen Mobile */ @@ -5177,6 +5195,27 @@ DECLARE_PCI_FIXUP_EARLY(PCI_VENDOR_ID_INTEL, 0x1502, quirk_no_flr); DECLARE_PCI_FIXUP_EARLY(PCI_VENDOR_ID_INTEL, 0x1503, quirk_no_flr); +static void quirk_intel_th_rtit_bar(struct pci_dev *dev) +{ + struct resource *r = &dev->resource[4]; + + /* + * Hello, Denverton! + * Denverton reports 2k of RTIT_BAR (resource 4), which can't be + * right given the 16 threads. When Intel TH gets enabled, the + * actual resource overlaps the XHCI MMIO space and causes it + * to die. + * We're not really using RTIT_BAR at all at the moment, so it's + * a safe choice to disable this resource. + */ + if (r->end == r->start + 0x7ff) { + r->flags = 0; + r->start = 0; + r->end = 0; + } +} +DECLARE_PCI_FIXUP_HEADER(PCI_VENDOR_ID_INTEL, 0x19e1, quirk_intel_th_rtit_bar); + static void quirk_no_ext_tags(struct pci_dev *pdev) { struct pci_host_bridge *bridge = pci_find_host_bridge(pdev->bus); @@ -5205,7 +5244,8 @@ */ static void quirk_amd_harvest_no_ats(struct pci_dev *pdev) { - if (pdev->device == 0x7340 && pdev->revision != 0xc5) + if ((pdev->device == 0x7312 && pdev->revision != 0x00) || + (pdev->device == 0x7340 && pdev->revision != 0xc5)) return; pci_info(pdev, "disabling ATS\n"); @@ -5216,6 +5256,8 @@ DECLARE_PCI_FIXUP_FINAL(PCI_VENDOR_ID_ATI, 0x98e4, quirk_amd_harvest_no_ats); /* AMD Iceland dGPU */ DECLARE_PCI_FIXUP_FINAL(PCI_VENDOR_ID_ATI, 0x6900, quirk_amd_harvest_no_ats); +/* AMD Navi10 dGPU */ +DECLARE_PCI_FIXUP_FINAL(PCI_VENDOR_ID_ATI, 0x7312, quirk_amd_harvest_no_ats); /* AMD Navi14 dGPU */ DECLARE_PCI_FIXUP_FINAL(PCI_VENDOR_ID_ATI, 0x7340, quirk_amd_harvest_no_ats); #endif /* CONFIG_PCI_ATS */ @@ -5609,17 +5651,26 @@ DECLARE_PCI_FIXUP_FINAL(PCI_VENDOR_ID_ASMEDIA, 0x2142, pci_fixup_no_d0_pme); /* - * Device [12d8:0x400e] and [12d8:0x400f] + * Device 12d8:0x400e [OHCI] and 12d8:0x400f [EHCI] + * * These devices advertise PME# support in all power states but don't * reliably assert it. + * + * These devices also advertise MSI, but documentation (PI7C9X440SL.pdf) + * says "The MSI Function is not implemented on this device" in chapters + * 7.3.27, 7.3.29-7.3.31. */ -static void pci_fixup_no_pme(struct pci_dev *dev) +static void pci_fixup_no_msi_no_pme(struct pci_dev *dev) { +#ifdef CONFIG_PCI_MSI + pci_info(dev, "MSI is not implemented on this device, disabling it\n"); + dev->no_msi = 1; +#endif pci_info(dev, "PME# is unreliable, disabling it\n"); dev->pme_support = 0; } -DECLARE_PCI_FIXUP_FINAL(PCI_VENDOR_ID_PERICOM, 0x400e, pci_fixup_no_pme); -DECLARE_PCI_FIXUP_FINAL(PCI_VENDOR_ID_PERICOM, 0x400f, pci_fixup_no_pme); +DECLARE_PCI_FIXUP_FINAL(PCI_VENDOR_ID_PERICOM, 0x400e, pci_fixup_no_msi_no_pme); +DECLARE_PCI_FIXUP_FINAL(PCI_VENDOR_ID_PERICOM, 0x400f, pci_fixup_no_msi_no_pme); static void apex_pci_fixup_class(struct pci_dev *pdev) { @@ -5627,3 +5678,57 @@ } DECLARE_PCI_FIXUP_CLASS_HEADER(0x1ac1, 0x089a, PCI_CLASS_NOT_DEFINED, 8, apex_pci_fixup_class); + +/* + * Device [8086:9a09], [8086:a0b0] and [8086:a0bc] + * BIOS may not be able to access config space of devices under VMD domain, so + * it relies on software to enable ASPM for links under VMD. + */ +static const struct pci_device_id vmd_bridge_tbl[] = { + { PCI_VDEVICE(INTEL, 0x9a09) }, + { PCI_VDEVICE(INTEL, 0xa0b0) }, + { PCI_VDEVICE(INTEL, 0xa0bc) }, + { } +}; + +static void pci_fixup_enable_aspm(struct pci_dev *pdev) +{ + if (!pci_match_id(vmd_bridge_tbl, pdev)) + return; + + pdev->dev_flags |= PCI_DEV_FLAGS_ENABLE_ASPM; +} +DECLARE_PCI_FIXUP_CLASS_HEADER(PCI_VENDOR_ID_INTEL, PCI_ANY_ID, + PCI_CLASS_BRIDGE_PCI, 8, pci_fixup_enable_aspm); + +static void pci_fixup_enable_vmd_nvme_ltr(struct pci_dev *pdev) +{ + struct pci_dev *parent; + int pos; + u16 val; + + parent = pci_upstream_bridge(pdev); + if (!parent) + return; + + if (!pci_match_id(vmd_bridge_tbl, parent)) + return; + + pos = pci_find_ext_capability(pdev, PCI_EXT_CAP_ID_LTR); + if (!pos) + return; + + pci_read_config_word(pdev, pos + PCI_LTR_MAX_SNOOP_LAT, &val); + if (val) + return; + + pci_read_config_word(pdev, pos + PCI_LTR_MAX_NOSNOOP_LAT, &val); + if (val) + return; + + /* 3145728ns, i.e. 0x300000ns */ + pci_write_config_word(pdev, pos + PCI_LTR_MAX_SNOOP_LAT, 0x1003); + pci_write_config_word(pdev, pos + PCI_LTR_MAX_NOSNOOP_LAT, 0x1003); +} +DECLARE_PCI_FIXUP_CLASS_EARLY(PCI_ANY_ID, PCI_ANY_ID, + PCI_CLASS_STORAGE_EXPRESS, 0, pci_fixup_enable_vmd_nvme_ltr); --- linux-azure-5.8-5.8.0.orig/drivers/pci/setup-res.c +++ linux-azure-5.8-5.8.0/drivers/pci/setup-res.c @@ -409,10 +409,16 @@ int pci_resize_resource(struct pci_dev *dev, int resno, int size) { struct resource *res = dev->resource + resno; + struct pci_host_bridge *host; int old, ret; u32 sizes; u16 cmd; + /* Check if we must preserve the firmware's resource assignment */ + host = pci_find_host_bridge(dev->bus); + if (host->preserve_config) + return -ENOTSUPP; + /* Make sure the resource isn't assigned before resizing it. */ if (!(res->flags & IORESOURCE_UNSET)) return -EBUSY; --- linux-azure-5.8-5.8.0.orig/drivers/pci/slot.c +++ linux-azure-5.8-5.8.0/drivers/pci/slot.c @@ -268,16 +268,19 @@ slot_name = make_slot_name(name); if (!slot_name) { err = -ENOMEM; + kfree(slot); goto err; } + INIT_LIST_HEAD(&slot->list); + list_add(&slot->list, &parent->slots); + err = kobject_init_and_add(&slot->kobj, &pci_slot_ktype, NULL, "%s", slot_name); - if (err) + if (err) { + kobject_put(&slot->kobj); goto err; - - INIT_LIST_HEAD(&slot->list); - list_add(&slot->list, &parent->slots); + } down_read(&pci_bus_sem); list_for_each_entry(dev, &parent->devices, bus_list) @@ -293,7 +296,6 @@ mutex_unlock(&pci_slot_mutex); return slot; err: - kfree(slot); slot = ERR_PTR(err); goto out; } --- linux-azure-5.8-5.8.0.orig/drivers/pci/syscall.c +++ linux-azure-5.8-5.8.0/drivers/pci/syscall.c @@ -20,7 +20,7 @@ u16 word; u32 dword; long err; - long cfg_ret; + int cfg_ret; if (!capable(CAP_SYS_ADMIN)) return -EPERM; @@ -46,7 +46,7 @@ } err = -EIO; - if (cfg_ret != PCIBIOS_SUCCESSFUL) + if (cfg_ret) goto error; switch (len) { @@ -105,7 +105,7 @@ if (err) break; err = pci_user_write_config_byte(dev, off, byte); - if (err != PCIBIOS_SUCCESSFUL) + if (err) err = -EIO; break; @@ -114,7 +114,7 @@ if (err) break; err = pci_user_write_config_word(dev, off, word); - if (err != PCIBIOS_SUCCESSFUL) + if (err) err = -EIO; break; @@ -123,7 +123,7 @@ if (err) break; err = pci_user_write_config_dword(dev, off, dword); - if (err != PCIBIOS_SUCCESSFUL) + if (err) err = -EIO; break; --- linux-azure-5.8-5.8.0.orig/drivers/perf/thunderx2_pmu.c +++ linux-azure-5.8-5.8.0/drivers/perf/thunderx2_pmu.c @@ -805,14 +805,17 @@ list_for_each_entry(rentry, &list, node) { if (resource_type(rentry->res) == IORESOURCE_MEM) { res = *rentry->res; + rentry = NULL; break; } } + acpi_dev_free_resource_list(&list); - if (!rentry->res) + if (rentry) { + dev_err(dev, "PMU type %d: Fail to find resource\n", type); return NULL; + } - acpi_dev_free_resource_list(&list); base = devm_ioremap_resource(dev, &res); if (IS_ERR(base)) { dev_err(dev, "PMU type %d: Fail to map resource\n", type); --- linux-azure-5.8-5.8.0.orig/drivers/perf/xgene_pmu.c +++ linux-azure-5.8-5.8.0/drivers/perf/xgene_pmu.c @@ -1453,17 +1453,6 @@ } #if defined(CONFIG_ACPI) -static int acpi_pmu_dev_add_resource(struct acpi_resource *ares, void *data) -{ - struct resource *res = data; - - if (ares->type == ACPI_RESOURCE_TYPE_FIXED_MEMORY32) - acpi_dev_resource_memory(ares, res); - - /* Always tell the ACPI core to skip this resource */ - return 1; -} - static struct xgene_pmu_dev_ctx *acpi_get_pmu_hw_inf(struct xgene_pmu *xgene_pmu, struct acpi_device *adev, u32 type) @@ -1475,6 +1464,7 @@ struct hw_pmu_info *inf; void __iomem *dev_csr; struct resource res; + struct resource_entry *rentry; int enable_bit; int rc; @@ -1483,11 +1473,23 @@ return NULL; INIT_LIST_HEAD(&resource_list); - rc = acpi_dev_get_resources(adev, &resource_list, - acpi_pmu_dev_add_resource, &res); + rc = acpi_dev_get_resources(adev, &resource_list, NULL, NULL); + if (rc <= 0) { + dev_err(dev, "PMU type %d: No resources found\n", type); + return NULL; + } + + list_for_each_entry(rentry, &resource_list, node) { + if (resource_type(rentry->res) == IORESOURCE_MEM) { + res = *rentry->res; + rentry = NULL; + break; + } + } acpi_dev_free_resource_list(&resource_list); - if (rc < 0) { - dev_err(dev, "PMU type %d: No resource address found\n", type); + + if (rentry) { + dev_err(dev, "PMU type %d: No memory resource found\n", type); return NULL; } --- linux-azure-5.8-5.8.0.orig/drivers/phy/broadcom/phy-brcm-usb-init-synopsys.c +++ linux-azure-5.8-5.8.0/drivers/phy/broadcom/phy-brcm-usb-init-synopsys.c @@ -270,11 +270,6 @@ reg |= params->mode << USB_PHY_UTMI_CTL_1_PHY_MODE_SHIFT; brcm_usb_writel(reg, usb_phy + USB_PHY_UTMI_CTL_1); - /* Fix the incorrect default */ - reg = brcm_usb_readl(ctrl + USB_CTRL_SETUP); - reg &= ~USB_CTRL_SETUP_tca_drv_sel_MASK; - brcm_usb_writel(reg, ctrl + USB_CTRL_SETUP); - usb_init_common(params); /* --- linux-azure-5.8-5.8.0.orig/drivers/phy/cadence/phy-cadence-salvo.c +++ linux-azure-5.8-5.8.0/drivers/phy/cadence/phy-cadence-salvo.c @@ -88,7 +88,7 @@ #define TB_ADDR_TX_RCVDETSC_CTRL 0x4124 /* TB_ADDR_TX_RCVDETSC_CTRL */ -#define RXDET_IN_P3_32KHZ BIT(1) +#define RXDET_IN_P3_32KHZ BIT(0) struct cdns_reg_pairs { u16 val; --- linux-azure-5.8-5.8.0.orig/drivers/phy/lantiq/phy-lantiq-rcu-usb2.c +++ linux-azure-5.8-5.8.0/drivers/phy/lantiq/phy-lantiq-rcu-usb2.c @@ -124,8 +124,16 @@ reset_control_deassert(priv->phy_reset); ret = clk_prepare_enable(priv->phy_gate_clk); - if (ret) + if (ret) { dev_err(dev, "failed to enable PHY gate\n"); + return ret; + } + + /* + * at least the xrx200 usb2 phy requires some extra time to be + * operational after enabling the clock + */ + usleep_range(100, 200); return ret; } --- linux-azure-5.8-5.8.0.orig/drivers/phy/marvell/phy-armada38x-comphy.c +++ linux-azure-5.8-5.8.0/drivers/phy/marvell/phy-armada38x-comphy.c @@ -41,6 +41,7 @@ struct a38x_comphy { void __iomem *base; + void __iomem *conf; struct device *dev; struct a38x_comphy_lane lane[MAX_A38X_COMPHY]; }; @@ -54,6 +55,21 @@ { 0, 0, 3 }, }; +static void a38x_set_conf(struct a38x_comphy_lane *lane, bool enable) +{ + struct a38x_comphy *priv = lane->priv; + u32 conf; + + if (priv->conf) { + conf = readl_relaxed(priv->conf); + if (enable) + conf |= BIT(lane->port); + else + conf &= ~BIT(lane->port); + writel(conf, priv->conf); + } +} + static void a38x_comphy_set_reg(struct a38x_comphy_lane *lane, unsigned int offset, u32 mask, u32 value) { @@ -97,6 +113,7 @@ { struct a38x_comphy_lane *lane = phy_get_drvdata(phy); unsigned int gen; + int ret; if (mode != PHY_MODE_ETHERNET) return -EINVAL; @@ -115,13 +132,20 @@ return -EINVAL; } + a38x_set_conf(lane, false); + a38x_comphy_set_speed(lane, gen, gen); - return a38x_comphy_poll(lane, COMPHY_STAT1, - COMPHY_STAT1_PLL_RDY_TX | - COMPHY_STAT1_PLL_RDY_RX, - COMPHY_STAT1_PLL_RDY_TX | - COMPHY_STAT1_PLL_RDY_RX); + ret = a38x_comphy_poll(lane, COMPHY_STAT1, + COMPHY_STAT1_PLL_RDY_TX | + COMPHY_STAT1_PLL_RDY_RX, + COMPHY_STAT1_PLL_RDY_TX | + COMPHY_STAT1_PLL_RDY_RX); + + if (ret == 0) + a38x_set_conf(lane, true); + + return ret; } static const struct phy_ops a38x_comphy_ops = { @@ -174,14 +198,21 @@ if (!priv) return -ENOMEM; - res = platform_get_resource(pdev, IORESOURCE_MEM, 0); - base = devm_ioremap_resource(&pdev->dev, res); + base = devm_platform_ioremap_resource(pdev, 0); if (IS_ERR(base)) return PTR_ERR(base); priv->dev = &pdev->dev; priv->base = base; + /* Optional */ + res = platform_get_resource_byname(pdev, IORESOURCE_MEM, "conf"); + if (res) { + priv->conf = devm_ioremap_resource(&pdev->dev, res); + if (IS_ERR(priv->conf)) + return PTR_ERR(priv->conf); + } + for_each_available_child_of_node(pdev->dev.of_node, child) { struct phy *phy; int ret; --- linux-azure-5.8-5.8.0.orig/drivers/phy/marvell/phy-mvebu-a3700-comphy.c +++ linux-azure-5.8-5.8.0/drivers/phy/marvell/phy-mvebu-a3700-comphy.c @@ -26,7 +26,6 @@ #define COMPHY_SIP_POWER_ON 0x82000001 #define COMPHY_SIP_POWER_OFF 0x82000002 #define COMPHY_SIP_PLL_LOCK 0x82000003 -#define COMPHY_FW_NOT_SUPPORTED (-1) #define COMPHY_FW_MODE_SATA 0x1 #define COMPHY_FW_MODE_SGMII 0x2 @@ -112,10 +111,19 @@ unsigned long mode) { struct arm_smccc_res res; + s32 ret; arm_smccc_smc(function, lane, mode, 0, 0, 0, 0, 0, &res); + ret = res.a0; - return res.a0; + switch (ret) { + case SMCCC_RET_SUCCESS: + return 0; + case SMCCC_RET_NOT_SUPPORTED: + return -EOPNOTSUPP; + default: + return -EINVAL; + } } static int mvebu_a3700_comphy_get_fw_mode(int lane, int port, @@ -220,7 +228,7 @@ } ret = mvebu_a3700_comphy_smc(COMPHY_SIP_POWER_ON, lane->id, fw_param); - if (ret == COMPHY_FW_NOT_SUPPORTED) + if (ret == -EOPNOTSUPP) dev_err(lane->dev, "unsupported SMC call, try updating your firmware\n"); --- linux-azure-5.8-5.8.0.orig/drivers/phy/marvell/phy-mvebu-cp110-comphy.c +++ linux-azure-5.8-5.8.0/drivers/phy/marvell/phy-mvebu-cp110-comphy.c @@ -123,7 +123,6 @@ #define COMPHY_SIP_POWER_ON 0x82000001 #define COMPHY_SIP_POWER_OFF 0x82000002 -#define COMPHY_FW_NOT_SUPPORTED (-1) /* * A lane is described by the following bitfields: @@ -273,10 +272,19 @@ unsigned long lane, unsigned long mode) { struct arm_smccc_res res; + s32 ret; arm_smccc_smc(function, phys, lane, mode, 0, 0, 0, 0, &res); + ret = res.a0; - return res.a0; + switch (ret) { + case SMCCC_RET_SUCCESS: + return 0; + case SMCCC_RET_NOT_SUPPORTED: + return -EOPNOTSUPP; + default: + return -EINVAL; + } } static int mvebu_comphy_get_mode(bool fw_mode, int lane, int port, @@ -819,7 +827,7 @@ if (!ret) return ret; - if (ret == COMPHY_FW_NOT_SUPPORTED) + if (ret == -EOPNOTSUPP) dev_err(priv->dev, "unsupported SMC call, try updating your firmware\n"); --- linux-azure-5.8-5.8.0.orig/drivers/phy/motorola/phy-cpcap-usb.c +++ linux-azure-5.8-5.8.0/drivers/phy/motorola/phy-cpcap-usb.c @@ -661,35 +661,42 @@ generic_phy = devm_phy_create(ddata->dev, NULL, &ops); if (IS_ERR(generic_phy)) { error = PTR_ERR(generic_phy); - return PTR_ERR(generic_phy); + goto out_reg_disable; } phy_set_drvdata(generic_phy, ddata); phy_provider = devm_of_phy_provider_register(ddata->dev, of_phy_simple_xlate); - if (IS_ERR(phy_provider)) - return PTR_ERR(phy_provider); + if (IS_ERR(phy_provider)) { + error = PTR_ERR(phy_provider); + goto out_reg_disable; + } error = cpcap_usb_init_optional_pins(ddata); if (error) - return error; + goto out_reg_disable; cpcap_usb_init_optional_gpios(ddata); error = cpcap_usb_init_iio(ddata); if (error) - return error; + goto out_reg_disable; error = cpcap_usb_init_interrupts(pdev, ddata); if (error) - return error; + goto out_reg_disable; usb_add_phy_dev(&ddata->phy); atomic_set(&ddata->active, 1); schedule_delayed_work(&ddata->detect_work, msecs_to_jiffies(1)); return 0; + +out_reg_disable: + regulator_disable(ddata->vusb); + + return error; } static int cpcap_usb_phy_remove(struct platform_device *pdev) --- linux-azure-5.8-5.8.0.orig/drivers/phy/qualcomm/Kconfig +++ linux-azure-5.8-5.8.0/drivers/phy/qualcomm/Kconfig @@ -111,7 +111,7 @@ config PHY_QCOM_USB_HS_28NM tristate "Qualcomm 28nm High-Speed PHY" - depends on ARCH_QCOM || COMPILE_TEST + depends on OF && (ARCH_QCOM || COMPILE_TEST) depends on EXTCON || !EXTCON # if EXTCON=m, this cannot be built-in select GENERIC_PHY help @@ -122,7 +122,7 @@ config PHY_QCOM_USB_SS tristate "Qualcomm USB Super-Speed PHY driver" - depends on ARCH_QCOM || COMPILE_TEST + depends on OF && (ARCH_QCOM || COMPILE_TEST) depends on EXTCON || !EXTCON # if EXTCON=m, this cannot be built-in select GENERIC_PHY help --- linux-azure-5.8-5.8.0.orig/drivers/phy/qualcomm/phy-qcom-qmp.c +++ linux-azure-5.8-5.8.0/drivers/phy/qualcomm/phy-qcom-qmp.c @@ -504,8 +504,8 @@ QMP_PHY_INIT_CFG(QSERDES_COM_BG_TRIM, 0xf), QMP_PHY_INIT_CFG(QSERDES_COM_LOCK_CMP_EN, 0x1), QMP_PHY_INIT_CFG(QSERDES_COM_VCO_TUNE_MAP, 0x0), - QMP_PHY_INIT_CFG(QSERDES_COM_VCO_TUNE_TIMER1, 0x1f), - QMP_PHY_INIT_CFG(QSERDES_COM_VCO_TUNE_TIMER2, 0x3f), + QMP_PHY_INIT_CFG(QSERDES_COM_VCO_TUNE_TIMER1, 0xff), + QMP_PHY_INIT_CFG(QSERDES_COM_VCO_TUNE_TIMER2, 0x1f), QMP_PHY_INIT_CFG(QSERDES_COM_CMN_CONFIG, 0x6), QMP_PHY_INIT_CFG(QSERDES_COM_PLL_IVCO, 0xf), QMP_PHY_INIT_CFG(QSERDES_COM_HSCLK_SEL, 0x0), @@ -531,7 +531,6 @@ QMP_PHY_INIT_CFG(QSERDES_COM_INTEGLOOP_GAIN1_MODE0, 0x0), QMP_PHY_INIT_CFG(QSERDES_COM_INTEGLOOP_GAIN0_MODE0, 0x80), QMP_PHY_INIT_CFG(QSERDES_COM_BIAS_EN_CTRL_BY_PSM, 0x1), - QMP_PHY_INIT_CFG(QSERDES_COM_VCO_TUNE_CTRL, 0xa), QMP_PHY_INIT_CFG(QSERDES_COM_SSC_EN_CENTER, 0x1), QMP_PHY_INIT_CFG(QSERDES_COM_SSC_PER1, 0x31), QMP_PHY_INIT_CFG(QSERDES_COM_SSC_PER2, 0x1), @@ -540,7 +539,6 @@ QMP_PHY_INIT_CFG(QSERDES_COM_SSC_STEP_SIZE1, 0x2f), QMP_PHY_INIT_CFG(QSERDES_COM_SSC_STEP_SIZE2, 0x19), QMP_PHY_INIT_CFG(QSERDES_COM_CLK_EP_DIV, 0x19), - QMP_PHY_INIT_CFG(QSERDES_RX_SIGDET_CNTRL, 0x7), }; static const struct qmp_phy_init_tbl ipq8074_pcie_tx_tbl[] = { @@ -548,6 +546,8 @@ QMP_PHY_INIT_CFG(QSERDES_TX_LANE_MODE, 0x6), QMP_PHY_INIT_CFG(QSERDES_TX_RES_CODE_LANE_OFFSET, 0x2), QMP_PHY_INIT_CFG(QSERDES_TX_RCV_DETECT_LVL_2, 0x12), + QMP_PHY_INIT_CFG(QSERDES_TX_EMP_POST1_LVL, 0x36), + QMP_PHY_INIT_CFG(QSERDES_TX_SLEW_CNTL, 0x0a), }; static const struct qmp_phy_init_tbl ipq8074_pcie_rx_tbl[] = { @@ -558,7 +558,6 @@ QMP_PHY_INIT_CFG(QSERDES_RX_RX_EQU_ADAPTOR_CNTRL4, 0xdb), QMP_PHY_INIT_CFG(QSERDES_RX_UCDR_SO_SATURATION_AND_ENABLE, 0x4b), QMP_PHY_INIT_CFG(QSERDES_RX_UCDR_SO_GAIN, 0x4), - QMP_PHY_INIT_CFG(QSERDES_RX_UCDR_SO_GAIN_HALF, 0x4), }; static const struct qmp_phy_init_tbl ipq8074_pcie_pcs_tbl[] = { @@ -1673,6 +1672,9 @@ .pwrdn_ctrl = SW_PWRDN, }; +static const char * const ipq8074_pciephy_clk_l[] = { + "aux", "cfg_ahb", +}; /* list of resets */ static const char * const ipq8074_pciephy_reset_l[] = { "phy", "common", @@ -1690,8 +1692,8 @@ .rx_tbl_num = ARRAY_SIZE(ipq8074_pcie_rx_tbl), .pcs_tbl = ipq8074_pcie_pcs_tbl, .pcs_tbl_num = ARRAY_SIZE(ipq8074_pcie_pcs_tbl), - .clk_list = NULL, - .num_clks = 0, + .clk_list = ipq8074_pciephy_clk_l, + .num_clks = ARRAY_SIZE(ipq8074_pciephy_clk_l), .reset_list = ipq8074_pciephy_reset_l, .num_resets = ARRAY_SIZE(ipq8074_pciephy_reset_l), .vreg_list = NULL, --- linux-azure-5.8-5.8.0.orig/drivers/phy/qualcomm/phy-qcom-qmp.h +++ linux-azure-5.8-5.8.0/drivers/phy/qualcomm/phy-qcom-qmp.h @@ -77,6 +77,8 @@ #define QSERDES_COM_CORECLK_DIV_MODE1 0x1bc /* Only for QMP V2 PHY - TX registers */ +#define QSERDES_TX_EMP_POST1_LVL 0x018 +#define QSERDES_TX_SLEW_CNTL 0x040 #define QSERDES_TX_RES_CODE_LANE_OFFSET 0x054 #define QSERDES_TX_DEBUG_BUS_SEL 0x064 #define QSERDES_TX_HIGHZ_TRANSCEIVEREN_BIAS_DRVR_EN 0x068 --- linux-azure-5.8-5.8.0.orig/drivers/phy/renesas/phy-rcar-gen3-usb2.c +++ linux-azure-5.8-5.8.0/drivers/phy/renesas/phy-rcar-gen3-usb2.c @@ -111,6 +111,7 @@ struct work_struct work; struct mutex lock; /* protects rphys[...].powered */ enum usb_dr_mode dr_mode; + int irq; bool extcon_host; bool is_otg_channel; bool uses_otg_pins; @@ -389,12 +390,38 @@ rcar_gen3_device_recognition(ch); } +static irqreturn_t rcar_gen3_phy_usb2_irq(int irq, void *_ch) +{ + struct rcar_gen3_chan *ch = _ch; + void __iomem *usb2_base = ch->base; + u32 status = readl(usb2_base + USB2_OBINTSTA); + irqreturn_t ret = IRQ_NONE; + + if (status & USB2_OBINT_BITS) { + dev_vdbg(ch->dev, "%s: %08x\n", __func__, status); + writel(USB2_OBINT_BITS, usb2_base + USB2_OBINTSTA); + rcar_gen3_device_recognition(ch); + ret = IRQ_HANDLED; + } + + return ret; +} + static int rcar_gen3_phy_usb2_init(struct phy *p) { struct rcar_gen3_phy *rphy = phy_get_drvdata(p); struct rcar_gen3_chan *channel = rphy->ch; void __iomem *usb2_base = channel->base; u32 val; + int ret; + + if (!rcar_gen3_is_any_rphy_initialized(channel) && channel->irq >= 0) { + INIT_WORK(&channel->work, rcar_gen3_phy_usb2_work); + ret = request_irq(channel->irq, rcar_gen3_phy_usb2_irq, + IRQF_SHARED, dev_name(channel->dev), channel); + if (ret < 0) + dev_err(channel->dev, "No irq handler (%d)\n", channel->irq); + } /* Initialize USB2 part */ val = readl(usb2_base + USB2_INT_ENABLE); @@ -433,6 +460,9 @@ val &= ~USB2_INT_ENABLE_UCOM_INTEN; writel(val, usb2_base + USB2_INT_ENABLE); + if (channel->irq >= 0 && !rcar_gen3_is_any_rphy_initialized(channel)) + free_irq(channel->irq, channel); + return 0; } @@ -503,23 +533,6 @@ .owner = THIS_MODULE, }; -static irqreturn_t rcar_gen3_phy_usb2_irq(int irq, void *_ch) -{ - struct rcar_gen3_chan *ch = _ch; - void __iomem *usb2_base = ch->base; - u32 status = readl(usb2_base + USB2_OBINTSTA); - irqreturn_t ret = IRQ_NONE; - - if (status & USB2_OBINT_BITS) { - dev_vdbg(ch->dev, "%s: %08x\n", __func__, status); - writel(USB2_OBINT_BITS, usb2_base + USB2_OBINTSTA); - rcar_gen3_device_recognition(ch); - ret = IRQ_HANDLED; - } - - return ret; -} - static const struct of_device_id rcar_gen3_phy_usb2_match_table[] = { { .compatible = "renesas,usb2-phy-r8a77470", @@ -598,7 +611,7 @@ struct phy_provider *provider; struct resource *res; const struct phy_ops *phy_usb2_ops; - int irq, ret = 0, i; + int ret = 0, i; if (!dev->of_node) { dev_err(dev, "This driver needs device tree\n"); @@ -614,16 +627,8 @@ if (IS_ERR(channel->base)) return PTR_ERR(channel->base); - /* call request_irq for OTG */ - irq = platform_get_irq_optional(pdev, 0); - if (irq >= 0) { - INIT_WORK(&channel->work, rcar_gen3_phy_usb2_work); - irq = devm_request_irq(dev, irq, rcar_gen3_phy_usb2_irq, - IRQF_SHARED, dev_name(dev), channel); - if (irq < 0) - dev_err(dev, "No irq handler (%d)\n", irq); - } - + /* get irq number here and request_irq for OTG in phy_init */ + channel->irq = platform_get_irq_optional(pdev, 0); channel->dr_mode = rcar_gen3_get_dr_mode(dev->of_node); if (channel->dr_mode != USB_DR_MODE_UNKNOWN) { int ret; @@ -649,8 +654,10 @@ */ pm_runtime_enable(dev); phy_usb2_ops = of_device_get_match_data(dev); - if (!phy_usb2_ops) - return -EINVAL; + if (!phy_usb2_ops) { + ret = -EINVAL; + goto error; + } mutex_init(&channel->lock); for (i = 0; i < NUM_OF_PHYS; i++) { --- linux-azure-5.8-5.8.0.orig/drivers/phy/rockchip/phy-rockchip-emmc.c +++ linux-azure-5.8-5.8.0/drivers/phy/rockchip/phy-rockchip-emmc.c @@ -240,15 +240,17 @@ * - SDHCI driver to get the PHY * - SDHCI driver to init the PHY * - * The clock is optional, so upon any error we just set to NULL. + * The clock is optional, using clk_get_optional() to get the clock + * and do error processing if the return value != NULL * * NOTE: we don't do anything special for EPROBE_DEFER here. Given the * above expected use case, EPROBE_DEFER isn't sensible to expect, so * it's just like any other error. */ - rk_phy->emmcclk = clk_get(&phy->dev, "emmcclk"); + rk_phy->emmcclk = clk_get_optional(&phy->dev, "emmcclk"); if (IS_ERR(rk_phy->emmcclk)) { - dev_dbg(&phy->dev, "Error getting emmcclk: %d\n", ret); + ret = PTR_ERR(rk_phy->emmcclk); + dev_err(&phy->dev, "Error getting emmcclk: %d\n", ret); rk_phy->emmcclk = NULL; } --- linux-azure-5.8-5.8.0.orig/drivers/phy/samsung/phy-exynos5-usbdrd.c +++ linux-azure-5.8-5.8.0/drivers/phy/samsung/phy-exynos5-usbdrd.c @@ -714,7 +714,9 @@ struct phy_usb_instance *inst = phy_get_drvdata(phy); struct exynos5_usbdrd_phy *phy_drd = to_usbdrd_phy(inst); - return exynos5420_usbdrd_phy_calibrate(phy_drd); + if (inst->phy_cfg->id == EXYNOS5_DRDPHY_UTMI) + return exynos5420_usbdrd_phy_calibrate(phy_drd); + return 0; } static const struct phy_ops exynos5_usbdrd_phy_ops = { --- linux-azure-5.8-5.8.0.orig/drivers/phy/tegra/xusb.c +++ linux-azure-5.8-5.8.0/drivers/phy/tegra/xusb.c @@ -688,7 +688,7 @@ * reference to retrieve usb-phy details. */ port->usb_phy.dev = &lane->pad->lanes[port->index]->dev; - port->usb_phy.dev->driver = port->padctl->dev->driver; + port->usb_phy.dev->driver = port->dev.driver; port->usb_phy.otg->usb_phy = &port->usb_phy; port->usb_phy.otg->set_peripheral = tegra_xusb_set_peripheral; port->usb_phy.otg->set_host = tegra_xusb_set_host; @@ -1242,6 +1242,7 @@ reset: reset_control_assert(padctl->rst); remove: + platform_set_drvdata(pdev, NULL); soc->ops->remove(padctl); return err; } --- linux-azure-5.8-5.8.0.orig/drivers/phy/ti/phy-am654-serdes.c +++ linux-azure-5.8-5.8.0/drivers/phy/ti/phy-am654-serdes.c @@ -725,8 +725,10 @@ pm_runtime_enable(dev); phy = devm_phy_create(dev, NULL, &ops); - if (IS_ERR(phy)) - return PTR_ERR(phy); + if (IS_ERR(phy)) { + ret = PTR_ERR(phy); + goto clk_err; + } phy_set_drvdata(phy, am654_phy); phy_provider = devm_of_phy_provider_register(dev, serdes_am654_xlate); --- linux-azure-5.8-5.8.0.orig/drivers/phy/ti/phy-omap-usb2.c +++ linux-azure-5.8-5.8.0/drivers/phy/ti/phy-omap-usb2.c @@ -22,10 +22,15 @@ #include #include #include +#include #define USB2PHY_ANA_CONFIG1 0x4c #define USB2PHY_DISCON_BYP_LATCH BIT(31) +#define USB2PHY_CHRG_DET 0x14 +#define USB2PHY_CHRG_DET_USE_CHG_DET_REG BIT(29) +#define USB2PHY_CHRG_DET_DIS_CHG_DET BIT(28) + /* SoC Specific USB2_OTG register definitions */ #define AM654_USB2_OTG_PD BIT(8) #define AM654_USB2_VBUS_DET_EN BIT(5) @@ -43,6 +48,7 @@ #define OMAP_USB2_HAS_START_SRP BIT(0) #define OMAP_USB2_HAS_SET_VBUS BIT(1) #define OMAP_USB2_CALIBRATE_FALSE_DISCONNECT BIT(2) +#define OMAP_USB2_DISABLE_CHRG_DET BIT(3) struct omap_usb { struct usb_phy phy; @@ -236,6 +242,13 @@ omap_usb_writel(phy->phy_base, USB2PHY_ANA_CONFIG1, val); } + if (phy->flags & OMAP_USB2_DISABLE_CHRG_DET) { + val = omap_usb_readl(phy->phy_base, USB2PHY_CHRG_DET); + val |= USB2PHY_CHRG_DET_USE_CHG_DET_REG | + USB2PHY_CHRG_DET_DIS_CHG_DET; + omap_usb_writel(phy->phy_base, USB2PHY_CHRG_DET, val); + } + return 0; } @@ -329,6 +342,26 @@ }; MODULE_DEVICE_TABLE(of, omap_usb2_id_table); +static void omap_usb2_init_errata(struct omap_usb *phy) +{ + static const struct soc_device_attribute am65x_sr10_soc_devices[] = { + { .family = "AM65X", .revision = "SR1.0" }, + { /* sentinel */ } + }; + + /* + * Errata i2075: USB2PHY: USB2PHY Charger Detect is Enabled by + * Default Without VBUS Presence. + * + * AM654x SR1.0 has a silicon bug due to which D+ is pulled high after + * POR, which could cause enumeration failure with some USB hubs. + * Disabling the USB2_PHY Charger Detect function will put D+ + * into the normal state. + */ + if (soc_device_match(am65x_sr10_soc_devices)) + phy->flags |= OMAP_USB2_DISABLE_CHRG_DET; +} + static int omap_usb2_probe(struct platform_device *pdev) { struct omap_usb *phy; @@ -366,14 +399,14 @@ phy->mask = phy_data->mask; phy->power_on = phy_data->power_on; phy->power_off = phy_data->power_off; + phy->flags = phy_data->flags; - if (phy_data->flags & OMAP_USB2_CALIBRATE_FALSE_DISCONNECT) { - res = platform_get_resource(pdev, IORESOURCE_MEM, 0); - phy->phy_base = devm_ioremap_resource(&pdev->dev, res); - if (IS_ERR(phy->phy_base)) - return PTR_ERR(phy->phy_base); - phy->flags |= OMAP_USB2_CALIBRATE_FALSE_DISCONNECT; - } + omap_usb2_init_errata(phy); + + res = platform_get_resource(pdev, IORESOURCE_MEM, 0); + phy->phy_base = devm_ioremap_resource(&pdev->dev, res); + if (IS_ERR(phy->phy_base)) + return PTR_ERR(phy->phy_base); phy->syscon_phy_power = syscon_regmap_lookup_by_phandle(node, "syscon-phy-power"); --- linux-azure-5.8-5.8.0.orig/drivers/pinctrl/aspeed/pinctrl-aspeed-g6.c +++ linux-azure-5.8-5.8.0/drivers/pinctrl/aspeed/pinctrl-aspeed-g6.c @@ -345,7 +345,7 @@ #define D22 40 SIG_EXPR_LIST_DECL_SESG(D22, SD1CLK, SD1, SIG_DESC_SET(SCU414, 8)); -SIG_EXPR_LIST_DECL_SEMG(D22, PWM8, PWM8G0, PWM8, SIG_DESC_SET(SCU414, 8)); +SIG_EXPR_LIST_DECL_SEMG(D22, PWM8, PWM8G0, PWM8, SIG_DESC_SET(SCU4B4, 8)); PIN_DECL_2(D22, GPIOF0, SD1CLK, PWM8); GROUP_DECL(PWM8G0, D22); --- linux-azure-5.8-5.8.0.orig/drivers/pinctrl/aspeed/pinctrl-aspeed.c +++ linux-azure-5.8-5.8.0/drivers/pinctrl/aspeed/pinctrl-aspeed.c @@ -277,13 +277,76 @@ static bool aspeed_expr_is_gpio(const struct aspeed_sig_expr *expr) { /* - * The signal type is GPIO if the signal name has "GPIO" as a prefix. - * strncmp (rather than strcmp) is used to implement the prefix - * requirement. + * We need to differentiate between GPIO and non-GPIO signals to + * implement the gpio_request_enable() interface. For better or worse + * the ASPEED pinctrl driver uses the expression names to determine + * whether an expression will mux a pin for GPIO. * - * expr->signal might look like "GPIOT3" in the GPIO case. + * Generally we have the following - A GPIO such as B1 has: + * + * - expr->signal set to "GPIOB1" + * - expr->function set to "GPIOB1" + * + * Using this fact we can determine whether the provided expression is + * a GPIO expression by testing the signal name for the string prefix + * "GPIO". + * + * However, some GPIOs are input-only, and the ASPEED datasheets name + * them differently. An input-only GPIO such as T0 has: + * + * - expr->signal set to "GPIT0" + * - expr->function set to "GPIT0" + * + * It's tempting to generalise the prefix test from "GPIO" to "GPI" to + * account for both GPIOs and GPIs, but in doing so we run aground on + * another feature: + * + * Some pins in the ASPEED BMC SoCs have a "pass-through" GPIO + * function where the input state of one pin is replicated as the + * output state of another (as if they were shorted together - a mux + * configuration that is typically enabled by hardware strapping). + * This feature allows the BMC to pass e.g. power button state through + * to the host while the BMC is yet to boot, but take control of the + * button state once the BMC has booted by muxing each pin as a + * separate, pin-specific GPIO. + * + * Conceptually this pass-through mode is a form of GPIO and is named + * as such in the datasheets, e.g. "GPID0". This naming similarity + * trips us up with the simple GPI-prefixed-signal-name scheme + * discussed above, as the pass-through configuration is not what we + * want when muxing a pin as GPIO for the GPIO subsystem. + * + * On e.g. the AST2400, a pass-through function "GPID0" is grouped on + * balls A18 and D16, where we have: + * + * For ball A18: + * - expr->signal set to "GPID0IN" + * - expr->function set to "GPID0" + * + * For ball D16: + * - expr->signal set to "GPID0OUT" + * - expr->function set to "GPID0" + * + * By contrast, the pin-specific GPIO expressions for the same pins are + * as follows: + * + * For ball A18: + * - expr->signal looks like "GPIOD0" + * - expr->function looks like "GPIOD0" + * + * For ball D16: + * - expr->signal looks like "GPIOD1" + * - expr->function looks like "GPIOD1" + * + * Testing both the signal _and_ function names gives us the means + * differentiate the pass-through GPIO pinmux configuration from the + * pin-specific configuration that the GPIO subsystem is after: An + * expression is a pin-specific (non-pass-through) GPIO configuration + * if the signal prefix is "GPI" and the signal name matches the + * function name. */ - return strncmp(expr->signal, "GPIO", 4) == 0; + return !strncmp(expr->signal, "GPI", 3) && + !strcmp(expr->signal, expr->function); } static bool aspeed_gpio_in_exprs(const struct aspeed_sig_expr **exprs) @@ -515,7 +578,7 @@ val = pmap->val << __ffs(pconf->mask); rc = regmap_update_bits(pdata->scu, pconf->reg, - pmap->mask, val); + pconf->mask, val); if (rc < 0) return rc; --- linux-azure-5.8-5.8.0.orig/drivers/pinctrl/aspeed/pinmux-aspeed.h +++ linux-azure-5.8-5.8.0/drivers/pinctrl/aspeed/pinmux-aspeed.h @@ -452,10 +452,11 @@ * evaluation of the descriptors. * * @signal: The signal name for the priority level on the pin. If the signal - * type is GPIO, then the signal name must begin with the string - * "GPIO", e.g. GPIOA0, GPIOT4 etc. + * type is GPIO, then the signal name must begin with the + * prefix "GPI", e.g. GPIOA0, GPIT0 etc. * @function: The name of the function the signal participates in for the - * associated expression + * associated expression. For pin-specific GPIO, the function + * name must match the signal name. * @ndescs: The number of signal descriptors in the expression * @descs: Pointer to an array of signal descriptors that comprise the * function expression --- linux-azure-5.8-5.8.0.orig/drivers/pinctrl/bcm/Kconfig +++ linux-azure-5.8-5.8.0/drivers/pinctrl/bcm/Kconfig @@ -23,6 +23,7 @@ select PINMUX select PINCONF select GENERIC_PINCONF + select GPIOLIB select GPIOLIB_IRQCHIP default ARCH_BCM2835 || ARCH_BRCMSTB help --- linux-azure-5.8-5.8.0.orig/drivers/pinctrl/devicetree.c +++ linux-azure-5.8-5.8.0/drivers/pinctrl/devicetree.c @@ -129,9 +129,8 @@ if (!np_pctldev || of_node_is_root(np_pctldev)) { of_node_put(np_pctldev); ret = driver_deferred_probe_check_state(p->dev); - /* keep deferring if modules are enabled unless we've timed out */ - if (IS_ENABLED(CONFIG_MODULES) && !allow_default && - (ret == -ENODEV)) + /* keep deferring if modules are enabled */ + if (IS_ENABLED(CONFIG_MODULES) && !allow_default && ret < 0) ret = -EPROBE_DEFER; return ret; } --- linux-azure-5.8-5.8.0.orig/drivers/pinctrl/intel/pinctrl-baytrail.c +++ linux-azure-5.8-5.8.0/drivers/pinctrl/intel/pinctrl-baytrail.c @@ -1049,7 +1049,6 @@ break; case PIN_CONFIG_INPUT_DEBOUNCE: debounce = readl(db_reg); - debounce &= ~BYT_DEBOUNCE_PULSE_MASK; if (arg) conf |= BYT_DEBOUNCE_EN; @@ -1058,24 +1057,31 @@ switch (arg) { case 375: + debounce &= ~BYT_DEBOUNCE_PULSE_MASK; debounce |= BYT_DEBOUNCE_PULSE_375US; break; case 750: + debounce &= ~BYT_DEBOUNCE_PULSE_MASK; debounce |= BYT_DEBOUNCE_PULSE_750US; break; case 1500: + debounce &= ~BYT_DEBOUNCE_PULSE_MASK; debounce |= BYT_DEBOUNCE_PULSE_1500US; break; case 3000: + debounce &= ~BYT_DEBOUNCE_PULSE_MASK; debounce |= BYT_DEBOUNCE_PULSE_3MS; break; case 6000: + debounce &= ~BYT_DEBOUNCE_PULSE_MASK; debounce |= BYT_DEBOUNCE_PULSE_6MS; break; case 12000: + debounce &= ~BYT_DEBOUNCE_PULSE_MASK; debounce |= BYT_DEBOUNCE_PULSE_12MS; break; case 24000: + debounce &= ~BYT_DEBOUNCE_PULSE_MASK; debounce |= BYT_DEBOUNCE_PULSE_24MS; break; default: --- linux-azure-5.8-5.8.0.orig/drivers/pinctrl/intel/pinctrl-intel.c +++ linux-azure-5.8-5.8.0/drivers/pinctrl/intel/pinctrl-intel.c @@ -62,10 +62,10 @@ #define PADCFG1_TERM_UP BIT(13) #define PADCFG1_TERM_SHIFT 10 #define PADCFG1_TERM_MASK GENMASK(12, 10) -#define PADCFG1_TERM_20K 4 -#define PADCFG1_TERM_2K 3 -#define PADCFG1_TERM_5K 2 -#define PADCFG1_TERM_1K 1 +#define PADCFG1_TERM_20K BIT(2) +#define PADCFG1_TERM_5K BIT(1) +#define PADCFG1_TERM_1K BIT(0) +#define PADCFG1_TERM_833 (BIT(1) | BIT(0)) #define PADCFG2 0x008 #define PADCFG2_DEBEN BIT(0) @@ -540,12 +540,12 @@ return -EINVAL; switch (term) { + case PADCFG1_TERM_833: + arg = 833; + break; case PADCFG1_TERM_1K: arg = 1000; break; - case PADCFG1_TERM_2K: - arg = 2000; - break; case PADCFG1_TERM_5K: arg = 5000; break; @@ -561,6 +561,11 @@ return -EINVAL; switch (term) { + case PADCFG1_TERM_833: + if (!(community->features & PINCTRL_FEATURE_1K_PD)) + return -EINVAL; + arg = 833; + break; case PADCFG1_TERM_1K: if (!(community->features & PINCTRL_FEATURE_1K_PD)) return -EINVAL; @@ -629,6 +634,10 @@ value |= PADCFG1_TERM_UP; + /* Set default strength value in case none is given */ + if (arg == 1) + arg = 5000; + switch (arg) { case 20000: value |= PADCFG1_TERM_20K << PADCFG1_TERM_SHIFT; @@ -636,12 +645,12 @@ case 5000: value |= PADCFG1_TERM_5K << PADCFG1_TERM_SHIFT; break; - case 2000: - value |= PADCFG1_TERM_2K << PADCFG1_TERM_SHIFT; - break; case 1000: value |= PADCFG1_TERM_1K << PADCFG1_TERM_SHIFT; break; + case 833: + value |= PADCFG1_TERM_833 << PADCFG1_TERM_SHIFT; + break; default: ret = -EINVAL; } @@ -651,6 +660,10 @@ case PIN_CONFIG_BIAS_PULL_DOWN: value &= ~(PADCFG1_TERM_UP | PADCFG1_TERM_MASK); + /* Set default strength value in case none is given */ + if (arg == 1) + arg = 5000; + switch (arg) { case 20000: value |= PADCFG1_TERM_20K << PADCFG1_TERM_SHIFT; @@ -665,6 +678,13 @@ } value |= PADCFG1_TERM_1K << PADCFG1_TERM_SHIFT; break; + case 833: + if (!(community->features & PINCTRL_FEATURE_1K_PD)) { + ret = -EINVAL; + break; + } + value |= PADCFG1_TERM_833 << PADCFG1_TERM_SHIFT; + break; default: ret = -EINVAL; } --- linux-azure-5.8-5.8.0.orig/drivers/pinctrl/intel/pinctrl-jasperlake.c +++ linux-azure-5.8-5.8.0/drivers/pinctrl/intel/pinctrl-jasperlake.c @@ -16,7 +16,7 @@ #define JSL_PAD_OWN 0x020 #define JSL_PADCFGLOCK 0x080 -#define JSL_HOSTSW_OWN 0x0b0 +#define JSL_HOSTSW_OWN 0x0c0 #define JSL_GPI_IS 0x100 #define JSL_GPI_IE 0x120 --- linux-azure-5.8-5.8.0.orig/drivers/pinctrl/intel/pinctrl-merrifield.c +++ linux-azure-5.8-5.8.0/drivers/pinctrl/intel/pinctrl-merrifield.c @@ -741,6 +741,10 @@ mask |= BUFCFG_Px_EN_MASK | BUFCFG_PUPD_VAL_MASK; bits |= BUFCFG_PU_EN; + /* Set default strength value in case none is given */ + if (arg == 1) + arg = 20000; + switch (arg) { case 50000: bits |= BUFCFG_PUPD_VAL_50K << BUFCFG_PUPD_VAL_SHIFT; @@ -761,6 +765,10 @@ mask |= BUFCFG_Px_EN_MASK | BUFCFG_PUPD_VAL_MASK; bits |= BUFCFG_PD_EN; + /* Set default strength value in case none is given */ + if (arg == 1) + arg = 20000; + switch (arg) { case 50000: bits |= BUFCFG_PUPD_VAL_50K << BUFCFG_PUPD_VAL_SHIFT; --- linux-azure-5.8-5.8.0.orig/drivers/pinctrl/intel/pinctrl-tigerlake.c +++ linux-azure-5.8-5.8.0/drivers/pinctrl/intel/pinctrl-tigerlake.c @@ -380,8 +380,366 @@ .ncommunities = ARRAY_SIZE(tgllp_communities), }; +/* Tiger Lake-H */ +static const struct pinctrl_pin_desc tglh_pins[] = { + /* GPP_A */ + PINCTRL_PIN(0, "SPI0_IO_2"), + PINCTRL_PIN(1, "SPI0_IO_3"), + PINCTRL_PIN(2, "SPI0_MOSI_IO_0"), + PINCTRL_PIN(3, "SPI0_MISO_IO_1"), + PINCTRL_PIN(4, "SPI0_TPM_CSB"), + PINCTRL_PIN(5, "SPI0_FLASH_0_CSB"), + PINCTRL_PIN(6, "SPI0_FLASH_1_CSB"), + PINCTRL_PIN(7, "SPI0_CLK"), + PINCTRL_PIN(8, "ESPI_IO_0"), + PINCTRL_PIN(9, "ESPI_IO_1"), + PINCTRL_PIN(10, "ESPI_IO_2"), + PINCTRL_PIN(11, "ESPI_IO_3"), + PINCTRL_PIN(12, "ESPI_CS0B"), + PINCTRL_PIN(13, "ESPI_CLK"), + PINCTRL_PIN(14, "ESPI_RESETB"), + PINCTRL_PIN(15, "ESPI_CS1B"), + PINCTRL_PIN(16, "ESPI_CS2B"), + PINCTRL_PIN(17, "ESPI_CS3B"), + PINCTRL_PIN(18, "ESPI_ALERT0B"), + PINCTRL_PIN(19, "ESPI_ALERT1B"), + PINCTRL_PIN(20, "ESPI_ALERT2B"), + PINCTRL_PIN(21, "ESPI_ALERT3B"), + PINCTRL_PIN(22, "GPPC_A_14"), + PINCTRL_PIN(23, "SPI0_CLK_LOOPBK"), + PINCTRL_PIN(24, "ESPI_CLK_LOOPBK"), + /* GPP_R */ + PINCTRL_PIN(25, "HDA_BCLK"), + PINCTRL_PIN(26, "HDA_SYNC"), + PINCTRL_PIN(27, "HDA_SDO"), + PINCTRL_PIN(28, "HDA_SDI_0"), + PINCTRL_PIN(29, "HDA_RSTB"), + PINCTRL_PIN(30, "HDA_SDI_1"), + PINCTRL_PIN(31, "GPP_R_6"), + PINCTRL_PIN(32, "GPP_R_7"), + PINCTRL_PIN(33, "GPP_R_8"), + PINCTRL_PIN(34, "PCIE_LNK_DOWN"), + PINCTRL_PIN(35, "ISH_UART0_RTSB"), + PINCTRL_PIN(36, "SX_EXIT_HOLDOFFB"), + PINCTRL_PIN(37, "CLKOUT_48"), + PINCTRL_PIN(38, "ISH_GP_7"), + PINCTRL_PIN(39, "ISH_GP_0"), + PINCTRL_PIN(40, "ISH_GP_1"), + PINCTRL_PIN(41, "ISH_GP_2"), + PINCTRL_PIN(42, "ISH_GP_3"), + PINCTRL_PIN(43, "ISH_GP_4"), + PINCTRL_PIN(44, "ISH_GP_5"), + /* GPP_B */ + PINCTRL_PIN(45, "GSPI0_CS1B"), + PINCTRL_PIN(46, "GSPI1_CS1B"), + PINCTRL_PIN(47, "VRALERTB"), + PINCTRL_PIN(48, "CPU_GP_2"), + PINCTRL_PIN(49, "CPU_GP_3"), + PINCTRL_PIN(50, "SRCCLKREQB_0"), + PINCTRL_PIN(51, "SRCCLKREQB_1"), + PINCTRL_PIN(52, "SRCCLKREQB_2"), + PINCTRL_PIN(53, "SRCCLKREQB_3"), + PINCTRL_PIN(54, "SRCCLKREQB_4"), + PINCTRL_PIN(55, "SRCCLKREQB_5"), + PINCTRL_PIN(56, "I2S_MCLK"), + PINCTRL_PIN(57, "SLP_S0B"), + PINCTRL_PIN(58, "PLTRSTB"), + PINCTRL_PIN(59, "SPKR"), + PINCTRL_PIN(60, "GSPI0_CS0B"), + PINCTRL_PIN(61, "GSPI0_CLK"), + PINCTRL_PIN(62, "GSPI0_MISO"), + PINCTRL_PIN(63, "GSPI0_MOSI"), + PINCTRL_PIN(64, "GSPI1_CS0B"), + PINCTRL_PIN(65, "GSPI1_CLK"), + PINCTRL_PIN(66, "GSPI1_MISO"), + PINCTRL_PIN(67, "GSPI1_MOSI"), + PINCTRL_PIN(68, "SML1ALERTB"), + PINCTRL_PIN(69, "GSPI0_CLK_LOOPBK"), + PINCTRL_PIN(70, "GSPI1_CLK_LOOPBK"), + /* vGPIO_0 */ + PINCTRL_PIN(71, "ESPI_USB_OCB_0"), + PINCTRL_PIN(72, "ESPI_USB_OCB_1"), + PINCTRL_PIN(73, "ESPI_USB_OCB_2"), + PINCTRL_PIN(74, "ESPI_USB_OCB_3"), + PINCTRL_PIN(75, "USB_CPU_OCB_0"), + PINCTRL_PIN(76, "USB_CPU_OCB_1"), + PINCTRL_PIN(77, "USB_CPU_OCB_2"), + PINCTRL_PIN(78, "USB_CPU_OCB_3"), + /* GPP_D */ + PINCTRL_PIN(79, "SPI1_CSB"), + PINCTRL_PIN(80, "SPI1_CLK"), + PINCTRL_PIN(81, "SPI1_MISO_IO_1"), + PINCTRL_PIN(82, "SPI1_MOSI_IO_0"), + PINCTRL_PIN(83, "SML1CLK"), + PINCTRL_PIN(84, "I2S2_SFRM"), + PINCTRL_PIN(85, "I2S2_TXD"), + PINCTRL_PIN(86, "I2S2_RXD"), + PINCTRL_PIN(87, "I2S2_SCLK"), + PINCTRL_PIN(88, "SML0CLK"), + PINCTRL_PIN(89, "SML0DATA"), + PINCTRL_PIN(90, "GPP_D_11"), + PINCTRL_PIN(91, "ISH_UART0_CTSB"), + PINCTRL_PIN(92, "SPI1_IO_2"), + PINCTRL_PIN(93, "SPI1_IO_3"), + PINCTRL_PIN(94, "SML1DATA"), + PINCTRL_PIN(95, "GSPI3_CS0B"), + PINCTRL_PIN(96, "GSPI3_CLK"), + PINCTRL_PIN(97, "GSPI3_MISO"), + PINCTRL_PIN(98, "GSPI3_MOSI"), + PINCTRL_PIN(99, "UART3_RXD"), + PINCTRL_PIN(100, "UART3_TXD"), + PINCTRL_PIN(101, "UART3_RTSB"), + PINCTRL_PIN(102, "UART3_CTSB"), + PINCTRL_PIN(103, "SPI1_CLK_LOOPBK"), + PINCTRL_PIN(104, "GSPI3_CLK_LOOPBK"), + /* GPP_C */ + PINCTRL_PIN(105, "SMBCLK"), + PINCTRL_PIN(106, "SMBDATA"), + PINCTRL_PIN(107, "SMBALERTB"), + PINCTRL_PIN(108, "ISH_UART0_RXD"), + PINCTRL_PIN(109, "ISH_UART0_TXD"), + PINCTRL_PIN(110, "SML0ALERTB"), + PINCTRL_PIN(111, "ISH_I2C2_SDA"), + PINCTRL_PIN(112, "ISH_I2C2_SCL"), + PINCTRL_PIN(113, "UART0_RXD"), + PINCTRL_PIN(114, "UART0_TXD"), + PINCTRL_PIN(115, "UART0_RTSB"), + PINCTRL_PIN(116, "UART0_CTSB"), + PINCTRL_PIN(117, "UART1_RXD"), + PINCTRL_PIN(118, "UART1_TXD"), + PINCTRL_PIN(119, "UART1_RTSB"), + PINCTRL_PIN(120, "UART1_CTSB"), + PINCTRL_PIN(121, "I2C0_SDA"), + PINCTRL_PIN(122, "I2C0_SCL"), + PINCTRL_PIN(123, "I2C1_SDA"), + PINCTRL_PIN(124, "I2C1_SCL"), + PINCTRL_PIN(125, "UART2_RXD"), + PINCTRL_PIN(126, "UART2_TXD"), + PINCTRL_PIN(127, "UART2_RTSB"), + PINCTRL_PIN(128, "UART2_CTSB"), + /* GPP_S */ + PINCTRL_PIN(129, "SNDW1_CLK"), + PINCTRL_PIN(130, "SNDW1_DATA"), + PINCTRL_PIN(131, "SNDW2_CLK"), + PINCTRL_PIN(132, "SNDW2_DATA"), + PINCTRL_PIN(133, "SNDW3_CLK"), + PINCTRL_PIN(134, "SNDW3_DATA"), + PINCTRL_PIN(135, "SNDW4_CLK"), + PINCTRL_PIN(136, "SNDW4_DATA"), + /* GPP_G */ + PINCTRL_PIN(137, "DDPA_CTRLCLK"), + PINCTRL_PIN(138, "DDPA_CTRLDATA"), + PINCTRL_PIN(139, "DNX_FORCE_RELOAD"), + PINCTRL_PIN(140, "GMII_MDC_0"), + PINCTRL_PIN(141, "GMII_MDIO_0"), + PINCTRL_PIN(142, "SLP_DRAMB"), + PINCTRL_PIN(143, "GPPC_G_6"), + PINCTRL_PIN(144, "GPPC_G_7"), + PINCTRL_PIN(145, "ISH_SPI_CSB"), + PINCTRL_PIN(146, "ISH_SPI_CLK"), + PINCTRL_PIN(147, "ISH_SPI_MISO"), + PINCTRL_PIN(148, "ISH_SPI_MOSI"), + PINCTRL_PIN(149, "DDP1_CTRLCLK"), + PINCTRL_PIN(150, "DDP1_CTRLDATA"), + PINCTRL_PIN(151, "DDP2_CTRLCLK"), + PINCTRL_PIN(152, "DDP2_CTRLDATA"), + PINCTRL_PIN(153, "GSPI2_CLK_LOOPBK"), + /* vGPIO */ + PINCTRL_PIN(154, "CNV_BTEN"), + PINCTRL_PIN(155, "CNV_BT_HOST_WAKEB"), + PINCTRL_PIN(156, "CNV_BT_IF_SELECT"), + PINCTRL_PIN(157, "vCNV_BT_UART_TXD"), + PINCTRL_PIN(158, "vCNV_BT_UART_RXD"), + PINCTRL_PIN(159, "vCNV_BT_UART_CTS_B"), + PINCTRL_PIN(160, "vCNV_BT_UART_RTS_B"), + PINCTRL_PIN(161, "vCNV_MFUART1_TXD"), + PINCTRL_PIN(162, "vCNV_MFUART1_RXD"), + PINCTRL_PIN(163, "vCNV_MFUART1_CTS_B"), + PINCTRL_PIN(164, "vCNV_MFUART1_RTS_B"), + PINCTRL_PIN(165, "vUART0_TXD"), + PINCTRL_PIN(166, "vUART0_RXD"), + PINCTRL_PIN(167, "vUART0_CTS_B"), + PINCTRL_PIN(168, "vUART0_RTS_B"), + PINCTRL_PIN(169, "vISH_UART0_TXD"), + PINCTRL_PIN(170, "vISH_UART0_RXD"), + PINCTRL_PIN(171, "vISH_UART0_CTS_B"), + PINCTRL_PIN(172, "vISH_UART0_RTS_B"), + PINCTRL_PIN(173, "vCNV_BT_I2S_BCLK"), + PINCTRL_PIN(174, "vCNV_BT_I2S_WS_SYNC"), + PINCTRL_PIN(175, "vCNV_BT_I2S_SDO"), + PINCTRL_PIN(176, "vCNV_BT_I2S_SDI"), + PINCTRL_PIN(177, "vI2S2_SCLK"), + PINCTRL_PIN(178, "vI2S2_SFRM"), + PINCTRL_PIN(179, "vI2S2_TXD"), + PINCTRL_PIN(180, "vI2S2_RXD"), + /* GPP_E */ + PINCTRL_PIN(181, "SATAXPCIE_0"), + PINCTRL_PIN(182, "SATAXPCIE_1"), + PINCTRL_PIN(183, "SATAXPCIE_2"), + PINCTRL_PIN(184, "CPU_GP_0"), + PINCTRL_PIN(185, "SATA_DEVSLP_0"), + PINCTRL_PIN(186, "SATA_DEVSLP_1"), + PINCTRL_PIN(187, "SATA_DEVSLP_2"), + PINCTRL_PIN(188, "CPU_GP_1"), + PINCTRL_PIN(189, "SATA_LEDB"), + PINCTRL_PIN(190, "USB2_OCB_0"), + PINCTRL_PIN(191, "USB2_OCB_1"), + PINCTRL_PIN(192, "USB2_OCB_2"), + PINCTRL_PIN(193, "USB2_OCB_3"), + /* GPP_F */ + PINCTRL_PIN(194, "SATAXPCIE_3"), + PINCTRL_PIN(195, "SATAXPCIE_4"), + PINCTRL_PIN(196, "SATAXPCIE_5"), + PINCTRL_PIN(197, "SATAXPCIE_6"), + PINCTRL_PIN(198, "SATAXPCIE_7"), + PINCTRL_PIN(199, "SATA_DEVSLP_3"), + PINCTRL_PIN(200, "SATA_DEVSLP_4"), + PINCTRL_PIN(201, "SATA_DEVSLP_5"), + PINCTRL_PIN(202, "SATA_DEVSLP_6"), + PINCTRL_PIN(203, "SATA_DEVSLP_7"), + PINCTRL_PIN(204, "SATA_SCLOCK"), + PINCTRL_PIN(205, "SATA_SLOAD"), + PINCTRL_PIN(206, "SATA_SDATAOUT1"), + PINCTRL_PIN(207, "SATA_SDATAOUT0"), + PINCTRL_PIN(208, "PS_ONB"), + PINCTRL_PIN(209, "M2_SKT2_CFG_0"), + PINCTRL_PIN(210, "M2_SKT2_CFG_1"), + PINCTRL_PIN(211, "M2_SKT2_CFG_2"), + PINCTRL_PIN(212, "M2_SKT2_CFG_3"), + PINCTRL_PIN(213, "L_VDDEN"), + PINCTRL_PIN(214, "L_BKLTEN"), + PINCTRL_PIN(215, "L_BKLTCTL"), + PINCTRL_PIN(216, "VNN_CTRL"), + PINCTRL_PIN(217, "GPP_F_23"), + /* GPP_H */ + PINCTRL_PIN(218, "SRCCLKREQB_6"), + PINCTRL_PIN(219, "SRCCLKREQB_7"), + PINCTRL_PIN(220, "SRCCLKREQB_8"), + PINCTRL_PIN(221, "SRCCLKREQB_9"), + PINCTRL_PIN(222, "SRCCLKREQB_10"), + PINCTRL_PIN(223, "SRCCLKREQB_11"), + PINCTRL_PIN(224, "SRCCLKREQB_12"), + PINCTRL_PIN(225, "SRCCLKREQB_13"), + PINCTRL_PIN(226, "SRCCLKREQB_14"), + PINCTRL_PIN(227, "SRCCLKREQB_15"), + PINCTRL_PIN(228, "SML2CLK"), + PINCTRL_PIN(229, "SML2DATA"), + PINCTRL_PIN(230, "SML2ALERTB"), + PINCTRL_PIN(231, "SML3CLK"), + PINCTRL_PIN(232, "SML3DATA"), + PINCTRL_PIN(233, "SML3ALERTB"), + PINCTRL_PIN(234, "SML4CLK"), + PINCTRL_PIN(235, "SML4DATA"), + PINCTRL_PIN(236, "SML4ALERTB"), + PINCTRL_PIN(237, "ISH_I2C0_SDA"), + PINCTRL_PIN(238, "ISH_I2C0_SCL"), + PINCTRL_PIN(239, "ISH_I2C1_SDA"), + PINCTRL_PIN(240, "ISH_I2C1_SCL"), + PINCTRL_PIN(241, "TIME_SYNC_0"), + /* GPP_J */ + PINCTRL_PIN(242, "CNV_PA_BLANKING"), + PINCTRL_PIN(243, "CPU_C10_GATEB"), + PINCTRL_PIN(244, "CNV_BRI_DT"), + PINCTRL_PIN(245, "CNV_BRI_RSP"), + PINCTRL_PIN(246, "CNV_RGI_DT"), + PINCTRL_PIN(247, "CNV_RGI_RSP"), + PINCTRL_PIN(248, "CNV_MFUART2_RXD"), + PINCTRL_PIN(249, "CNV_MFUART2_TXD"), + PINCTRL_PIN(250, "GPP_J_8"), + PINCTRL_PIN(251, "GPP_J_9"), + /* GPP_K */ + PINCTRL_PIN(252, "GSXDOUT"), + PINCTRL_PIN(253, "GSXSLOAD"), + PINCTRL_PIN(254, "GSXDIN"), + PINCTRL_PIN(255, "GSXSRESETB"), + PINCTRL_PIN(256, "GSXCLK"), + PINCTRL_PIN(257, "ADR_COMPLETE"), + PINCTRL_PIN(258, "DDSP_HPD_A"), + PINCTRL_PIN(259, "DDSP_HPD_B"), + PINCTRL_PIN(260, "CORE_VID_0"), + PINCTRL_PIN(261, "CORE_VID_1"), + PINCTRL_PIN(262, "DDSP_HPD_C"), + PINCTRL_PIN(263, "GPP_K_11"), + PINCTRL_PIN(264, "SYS_PWROK"), + PINCTRL_PIN(265, "SYS_RESETB"), + PINCTRL_PIN(266, "MLK_RSTB"), + /* GPP_I */ + PINCTRL_PIN(267, "PMCALERTB"), + PINCTRL_PIN(268, "DDSP_HPD_1"), + PINCTRL_PIN(269, "DDSP_HPD_2"), + PINCTRL_PIN(270, "DDSP_HPD_3"), + PINCTRL_PIN(271, "DDSP_HPD_4"), + PINCTRL_PIN(272, "DDPB_CTRLCLK"), + PINCTRL_PIN(273, "DDPB_CTRLDATA"), + PINCTRL_PIN(274, "DDPC_CTRLCLK"), + PINCTRL_PIN(275, "DDPC_CTRLDATA"), + PINCTRL_PIN(276, "FUSA_DIAGTEST_EN"), + PINCTRL_PIN(277, "FUSA_DIAGTEST_MODE"), + PINCTRL_PIN(278, "USB2_OCB_4"), + PINCTRL_PIN(279, "USB2_OCB_5"), + PINCTRL_PIN(280, "USB2_OCB_6"), + PINCTRL_PIN(281, "USB2_OCB_7"), + /* JTAG */ + PINCTRL_PIN(282, "JTAG_TDO"), + PINCTRL_PIN(283, "JTAGX"), + PINCTRL_PIN(284, "PRDYB"), + PINCTRL_PIN(285, "PREQB"), + PINCTRL_PIN(286, "JTAG_TDI"), + PINCTRL_PIN(287, "JTAG_TMS"), + PINCTRL_PIN(288, "JTAG_TCK"), + PINCTRL_PIN(289, "DBG_PMODE"), + PINCTRL_PIN(290, "CPU_TRSTB"), +}; + +static const struct intel_padgroup tglh_community0_gpps[] = { + TGL_GPP(0, 0, 24, 0), /* GPP_A */ + TGL_GPP(1, 25, 44, 128), /* GPP_R */ + TGL_GPP(2, 45, 70, 32), /* GPP_B */ + TGL_GPP(3, 71, 78, INTEL_GPIO_BASE_NOMAP), /* vGPIO_0 */ +}; + +static const struct intel_padgroup tglh_community1_gpps[] = { + TGL_GPP(0, 79, 104, 96), /* GPP_D */ + TGL_GPP(1, 105, 128, 64), /* GPP_C */ + TGL_GPP(2, 129, 136, 160), /* GPP_S */ + TGL_GPP(3, 137, 153, 192), /* GPP_G */ + TGL_GPP(4, 154, 180, 224), /* vGPIO */ +}; + +static const struct intel_padgroup tglh_community3_gpps[] = { + TGL_GPP(0, 181, 193, 256), /* GPP_E */ + TGL_GPP(1, 194, 217, 288), /* GPP_F */ +}; + +static const struct intel_padgroup tglh_community4_gpps[] = { + TGL_GPP(0, 218, 241, 320), /* GPP_H */ + TGL_GPP(1, 242, 251, 384), /* GPP_J */ + TGL_GPP(2, 252, 266, 352), /* GPP_K */ +}; + +static const struct intel_padgroup tglh_community5_gpps[] = { + TGL_GPP(0, 267, 281, 416), /* GPP_I */ + TGL_GPP(1, 282, 290, INTEL_GPIO_BASE_NOMAP), /* JTAG */ +}; + +static const struct intel_community tglh_communities[] = { + TGL_COMMUNITY(0, 0, 78, tglh_community0_gpps), + TGL_COMMUNITY(1, 79, 180, tglh_community1_gpps), + TGL_COMMUNITY(2, 181, 217, tglh_community3_gpps), + TGL_COMMUNITY(3, 218, 266, tglh_community4_gpps), + TGL_COMMUNITY(4, 267, 290, tglh_community5_gpps), +}; + +static const struct intel_pinctrl_soc_data tglh_soc_data = { + .pins = tglh_pins, + .npins = ARRAY_SIZE(tglh_pins), + .communities = tglh_communities, + .ncommunities = ARRAY_SIZE(tglh_communities), +}; + static const struct acpi_device_id tgl_pinctrl_acpi_match[] = { { "INT34C5", (kernel_ulong_t)&tgllp_soc_data }, + { "INT34C6", (kernel_ulong_t)&tglh_soc_data }, { } }; MODULE_DEVICE_TABLE(acpi, tgl_pinctrl_acpi_match); --- linux-azure-5.8-5.8.0.orig/drivers/pinctrl/mediatek/pinctrl-mtk-common-v2.c +++ linux-azure-5.8-5.8.0/drivers/pinctrl/mediatek/pinctrl-mtk-common-v2.c @@ -243,6 +243,33 @@ return EINT_NA; } +/* + * Virtual GPIO only used inside SOC and not being exported to outside SOC. + * Some modules use virtual GPIO as eint (e.g. pmif or usb). + * In MTK platform, external interrupt (EINT) and GPIO is 1-1 mapping + * and we can set GPIO as eint. + * But some modules use specific eint which doesn't have real GPIO pin. + * So we use virtual GPIO to map it. + */ + +bool mtk_is_virt_gpio(struct mtk_pinctrl *hw, unsigned int gpio_n) +{ + const struct mtk_pin_desc *desc; + bool virt_gpio = false; + + desc = (const struct mtk_pin_desc *)&hw->soc->pins[gpio_n]; + + /* if the GPIO is not supported for eint mode */ + if (desc->eint.eint_m == NO_EINT_SUPPORT) + return virt_gpio; + + if (desc->funcs && !desc->funcs[desc->eint.eint_m].name) + virt_gpio = true; + + return virt_gpio; +} +EXPORT_SYMBOL_GPL(mtk_is_virt_gpio); + static int mtk_xt_get_gpio_n(void *data, unsigned long eint_n, unsigned int *gpio_n, struct gpio_chip **gpio_chip) @@ -295,6 +322,9 @@ if (err) return err; + if (mtk_is_virt_gpio(hw, gpio_n)) + return 0; + desc = (const struct mtk_pin_desc *)&hw->soc->pins[gpio_n]; err = mtk_hw_set_value(hw, desc, PINCTRL_PIN_REG_MODE, @@ -891,6 +921,10 @@ err = hw->soc->bias_set(hw, desc, pullup); if (err) return err; + } else if (hw->soc->bias_set_combo) { + err = hw->soc->bias_set_combo(hw, desc, pullup, arg); + if (err) + return err; } else { return -ENOTSUPP; } --- linux-azure-5.8-5.8.0.orig/drivers/pinctrl/mediatek/pinctrl-mtk-common-v2.h +++ linux-azure-5.8-5.8.0/drivers/pinctrl/mediatek/pinctrl-mtk-common-v2.h @@ -315,4 +315,5 @@ int mtk_pinconf_adv_drive_get(struct mtk_pinctrl *hw, const struct mtk_pin_desc *desc, u32 *val); +bool mtk_is_virt_gpio(struct mtk_pinctrl *hw, unsigned int gpio_n); #endif /* __PINCTRL_MTK_COMMON_V2_H */ --- linux-azure-5.8-5.8.0.orig/drivers/pinctrl/mediatek/pinctrl-paris.c +++ linux-azure-5.8-5.8.0/drivers/pinctrl/mediatek/pinctrl-paris.c @@ -769,6 +769,13 @@ if (gpio >= hw->soc->npins) return -EINVAL; + /* + * "Virtual" GPIOs are always and only used for interrupts + * Since they are only used for interrupts, they are always inputs + */ + if (mtk_is_virt_gpio(hw, gpio)) + return 1; + desc = (const struct mtk_pin_desc *)&hw->soc->pins[gpio]; err = mtk_hw_get_value(hw, desc, PINCTRL_PIN_REG_DIR, &value); --- linux-azure-5.8-5.8.0.orig/drivers/pinctrl/mvebu/pinctrl-armada-xp.c +++ linux-azure-5.8-5.8.0/drivers/pinctrl/mvebu/pinctrl-armada-xp.c @@ -414,7 +414,7 @@ MPP_VAR_FUNCTION(0x1, "i2c0", "sck", V_98DX3236_PLUS)), MPP_MODE(15, MPP_VAR_FUNCTION(0x0, "gpio", NULL, V_98DX3236_PLUS), - MPP_VAR_FUNCTION(0x4, "i2c0", "sda", V_98DX3236_PLUS)), + MPP_VAR_FUNCTION(0x1, "i2c0", "sda", V_98DX3236_PLUS)), MPP_MODE(16, MPP_VAR_FUNCTION(0x0, "gpo", NULL, V_98DX3236_PLUS), MPP_VAR_FUNCTION(0x4, "dev", "oe", V_98DX3236_PLUS)), --- linux-azure-5.8-5.8.0.orig/drivers/pinctrl/pinctrl-amd.c +++ linux-azure-5.8-5.8.0/drivers/pinctrl/pinctrl-amd.c @@ -156,7 +156,7 @@ pin_reg |= BIT(DB_TMR_OUT_UNIT_OFF); pin_reg &= ~BIT(DB_TMR_LARGE_OFF); } else if (debounce < 250000) { - time = debounce / 15600; + time = debounce / 15625; pin_reg |= time & DB_TMR_OUT_MASK; pin_reg &= ~BIT(DB_TMR_OUT_UNIT_OFF); pin_reg |= BIT(DB_TMR_LARGE_OFF); @@ -166,14 +166,14 @@ pin_reg |= BIT(DB_TMR_OUT_UNIT_OFF); pin_reg |= BIT(DB_TMR_LARGE_OFF); } else { - pin_reg &= ~DB_CNTRl_MASK; + pin_reg &= ~(DB_CNTRl_MASK << DB_CNTRL_OFF); ret = -EINVAL; } } else { pin_reg &= ~BIT(DB_TMR_OUT_UNIT_OFF); pin_reg &= ~BIT(DB_TMR_LARGE_OFF); pin_reg &= ~DB_TMR_OUT_MASK; - pin_reg &= ~DB_CNTRl_MASK; + pin_reg &= ~(DB_CNTRl_MASK << DB_CNTRL_OFF); } writel(pin_reg, gpio_dev->base + offset * 4); raw_spin_unlock_irqrestore(&gpio_dev->lock, flags); @@ -438,7 +438,6 @@ pin_reg &= ~BIT(LEVEL_TRIG_OFF); pin_reg &= ~(ACTIVE_LEVEL_MASK << ACTIVE_LEVEL_OFF); pin_reg |= ACTIVE_HIGH << ACTIVE_LEVEL_OFF; - pin_reg |= DB_TYPE_REMOVE_GLITCH << DB_CNTRL_OFF; irq_set_handler_locked(d, handle_edge_irq); break; @@ -446,7 +445,6 @@ pin_reg &= ~BIT(LEVEL_TRIG_OFF); pin_reg &= ~(ACTIVE_LEVEL_MASK << ACTIVE_LEVEL_OFF); pin_reg |= ACTIVE_LOW << ACTIVE_LEVEL_OFF; - pin_reg |= DB_TYPE_REMOVE_GLITCH << DB_CNTRL_OFF; irq_set_handler_locked(d, handle_edge_irq); break; @@ -454,7 +452,6 @@ pin_reg &= ~BIT(LEVEL_TRIG_OFF); pin_reg &= ~(ACTIVE_LEVEL_MASK << ACTIVE_LEVEL_OFF); pin_reg |= BOTH_EADGE << ACTIVE_LEVEL_OFF; - pin_reg |= DB_TYPE_REMOVE_GLITCH << DB_CNTRL_OFF; irq_set_handler_locked(d, handle_edge_irq); break; @@ -462,8 +459,6 @@ pin_reg |= LEVEL_TRIGGER << LEVEL_TRIG_OFF; pin_reg &= ~(ACTIVE_LEVEL_MASK << ACTIVE_LEVEL_OFF); pin_reg |= ACTIVE_HIGH << ACTIVE_LEVEL_OFF; - pin_reg &= ~(DB_CNTRl_MASK << DB_CNTRL_OFF); - pin_reg |= DB_TYPE_PRESERVE_LOW_GLITCH << DB_CNTRL_OFF; irq_set_handler_locked(d, handle_level_irq); break; @@ -471,8 +466,6 @@ pin_reg |= LEVEL_TRIGGER << LEVEL_TRIG_OFF; pin_reg &= ~(ACTIVE_LEVEL_MASK << ACTIVE_LEVEL_OFF); pin_reg |= ACTIVE_LOW << ACTIVE_LEVEL_OFF; - pin_reg &= ~(DB_CNTRl_MASK << DB_CNTRL_OFF); - pin_reg |= DB_TYPE_PRESERVE_HIGH_GLITCH << DB_CNTRL_OFF; irq_set_handler_locked(d, handle_level_irq); break; --- linux-azure-5.8-5.8.0.orig/drivers/pinctrl/pinctrl-falcon.c +++ linux-azure-5.8-5.8.0/drivers/pinctrl/pinctrl-falcon.c @@ -431,24 +431,28 @@ /* load and remap the pad resources of the different banks */ for_each_compatible_node(np, NULL, "lantiq,pad-falcon") { - struct platform_device *ppdev = of_find_device_by_node(np); const __be32 *bank = of_get_property(np, "lantiq,bank", NULL); struct resource res; + struct platform_device *ppdev; u32 avail; int pins; if (!of_device_is_available(np)) continue; - if (!ppdev) { - dev_err(&pdev->dev, "failed to find pad pdev\n"); - continue; - } if (!bank || *bank >= PORTS) continue; if (of_address_to_resource(np, 0, &res)) continue; + + ppdev = of_find_device_by_node(np); + if (!ppdev) { + dev_err(&pdev->dev, "failed to find pad pdev\n"); + continue; + } + falcon_info.clk[*bank] = clk_get(&ppdev->dev, NULL); + put_device(&ppdev->dev); if (IS_ERR(falcon_info.clk[*bank])) { dev_err(&ppdev->dev, "failed to get clock\n"); of_node_put(np); --- linux-azure-5.8-5.8.0.orig/drivers/pinctrl/pinctrl-ingenic.c +++ linux-azure-5.8-5.8.0/drivers/pinctrl/pinctrl-ingenic.c @@ -1704,7 +1704,7 @@ static void ingenic_gpio_set_value(struct ingenic_gpio_chip *jzgc, u8 offset, int value) { - if (jzgc->jzpc->info->version >= ID_JZ4760) + if (jzgc->jzpc->info->version >= ID_JZ4770) ingenic_gpio_set_bit(jzgc, JZ4760_GPIO_PAT0, offset, !!value); else ingenic_gpio_set_bit(jzgc, JZ4740_GPIO_DATA, offset, !!value); @@ -1734,7 +1734,7 @@ break; } - if (jzgc->jzpc->info->version >= ID_JZ4760) { + if (jzgc->jzpc->info->version >= ID_JZ4770) { reg1 = JZ4760_GPIO_PAT1; reg2 = JZ4760_GPIO_PAT0; } else { @@ -1774,7 +1774,7 @@ struct ingenic_gpio_chip *jzgc = gpiochip_get_data(gc); int irq = irqd->hwirq; - if (jzgc->jzpc->info->version >= ID_JZ4760) + if (jzgc->jzpc->info->version >= ID_JZ4770) ingenic_gpio_set_bit(jzgc, JZ4760_GPIO_INT, irq, true); else ingenic_gpio_set_bit(jzgc, JZ4740_GPIO_SELECT, irq, true); @@ -1790,7 +1790,7 @@ ingenic_gpio_irq_mask(irqd); - if (jzgc->jzpc->info->version >= ID_JZ4760) + if (jzgc->jzpc->info->version >= ID_JZ4770) ingenic_gpio_set_bit(jzgc, JZ4760_GPIO_INT, irq, false); else ingenic_gpio_set_bit(jzgc, JZ4740_GPIO_SELECT, irq, false); @@ -1810,12 +1810,12 @@ */ high = ingenic_gpio_get_value(jzgc, irq); if (high) - irq_set_type(jzgc, irq, IRQ_TYPE_EDGE_FALLING); + irq_set_type(jzgc, irq, IRQ_TYPE_LEVEL_LOW); else - irq_set_type(jzgc, irq, IRQ_TYPE_EDGE_RISING); + irq_set_type(jzgc, irq, IRQ_TYPE_LEVEL_HIGH); } - if (jzgc->jzpc->info->version >= ID_JZ4760) + if (jzgc->jzpc->info->version >= ID_JZ4770) ingenic_gpio_set_bit(jzgc, JZ4760_GPIO_FLAG, irq, false); else ingenic_gpio_set_bit(jzgc, JZ4740_GPIO_DATA, irq, true); @@ -1848,7 +1848,7 @@ */ bool high = ingenic_gpio_get_value(jzgc, irqd->hwirq); - type = high ? IRQ_TYPE_EDGE_FALLING : IRQ_TYPE_EDGE_RISING; + type = high ? IRQ_TYPE_LEVEL_LOW : IRQ_TYPE_LEVEL_HIGH; } irq_set_type(jzgc, irqd->hwirq, type); @@ -1872,7 +1872,7 @@ chained_irq_enter(irq_chip, desc); - if (jzgc->jzpc->info->version >= ID_JZ4760) + if (jzgc->jzpc->info->version >= ID_JZ4770) flag = ingenic_gpio_read_reg(jzgc, JZ4760_GPIO_FLAG); else flag = ingenic_gpio_read_reg(jzgc, JZ4740_GPIO_FLAG); @@ -1954,8 +1954,9 @@ struct ingenic_pinctrl *jzpc = jzgc->jzpc; unsigned int pin = gc->base + offset; - if (jzpc->info->version >= ID_JZ4760) { - if (ingenic_get_pin_config(jzpc, pin, JZ4760_GPIO_PAT1)) + if (jzpc->info->version >= ID_JZ4770) { + if (ingenic_get_pin_config(jzpc, pin, JZ4760_GPIO_INT) || + ingenic_get_pin_config(jzpc, pin, JZ4760_GPIO_PAT1)) return GPIO_LINE_DIRECTION_IN; return GPIO_LINE_DIRECTION_OUT; } @@ -2011,7 +2012,7 @@ ingenic_shadow_config_pin(jzpc, pin, JZ4760_GPIO_PAT1, func & 0x2); ingenic_shadow_config_pin(jzpc, pin, JZ4760_GPIO_PAT0, func & 0x1); ingenic_shadow_config_pin_load(jzpc, pin); - } else if (jzpc->info->version >= ID_JZ4760) { + } else if (jzpc->info->version >= ID_JZ4770) { ingenic_config_pin(jzpc, pin, JZ4760_GPIO_INT, false); ingenic_config_pin(jzpc, pin, GPIO_MSK, false); ingenic_config_pin(jzpc, pin, JZ4760_GPIO_PAT1, func & 0x2); @@ -2019,7 +2020,7 @@ } else { ingenic_config_pin(jzpc, pin, JZ4740_GPIO_FUNC, true); ingenic_config_pin(jzpc, pin, JZ4740_GPIO_TRIG, func & 0x2); - ingenic_config_pin(jzpc, pin, JZ4740_GPIO_SELECT, func > 0); + ingenic_config_pin(jzpc, pin, JZ4740_GPIO_SELECT, func & 0x1); } return 0; @@ -2069,7 +2070,7 @@ ingenic_shadow_config_pin(jzpc, pin, GPIO_MSK, true); ingenic_shadow_config_pin(jzpc, pin, JZ4760_GPIO_PAT1, input); ingenic_shadow_config_pin_load(jzpc, pin); - } else if (jzpc->info->version >= ID_JZ4760) { + } else if (jzpc->info->version >= ID_JZ4770) { ingenic_config_pin(jzpc, pin, JZ4760_GPIO_INT, false); ingenic_config_pin(jzpc, pin, GPIO_MSK, true); ingenic_config_pin(jzpc, pin, JZ4760_GPIO_PAT1, input); @@ -2099,7 +2100,7 @@ unsigned int offt = pin / PINS_PER_GPIO_CHIP; bool pull; - if (jzpc->info->version >= ID_JZ4760) + if (jzpc->info->version >= ID_JZ4770) pull = !ingenic_get_pin_config(jzpc, pin, JZ4760_GPIO_PEN); else pull = !ingenic_get_pin_config(jzpc, pin, JZ4740_GPIO_PULL_DIS); @@ -2149,7 +2150,7 @@ REG_SET(X1830_GPIO_PEH), bias << idxh); } - } else if (jzpc->info->version >= ID_JZ4760) { + } else if (jzpc->info->version >= ID_JZ4770) { ingenic_config_pin(jzpc, pin, JZ4760_GPIO_PEN, !bias); } else { ingenic_config_pin(jzpc, pin, JZ4740_GPIO_PULL_DIS, !bias); @@ -2159,7 +2160,7 @@ static void ingenic_set_output_level(struct ingenic_pinctrl *jzpc, unsigned int pin, bool high) { - if (jzpc->info->version >= ID_JZ4760) + if (jzpc->info->version >= ID_JZ4770) ingenic_config_pin(jzpc, pin, JZ4760_GPIO_PAT0, high); else ingenic_config_pin(jzpc, pin, JZ4740_GPIO_DATA, high); --- linux-azure-5.8-5.8.0.orig/drivers/pinctrl/pinctrl-mcp23s08.c +++ linux-azure-5.8-5.8.0/drivers/pinctrl/pinctrl-mcp23s08.c @@ -87,7 +87,7 @@ }; EXPORT_SYMBOL_GPL(mcp23x08_regmap); -static const struct reg_default mcp23x16_defaults[] = { +static const struct reg_default mcp23x17_defaults[] = { {.reg = MCP_IODIR << 1, .def = 0xffff}, {.reg = MCP_IPOL << 1, .def = 0x0000}, {.reg = MCP_GPINTEN << 1, .def = 0x0000}, @@ -98,23 +98,23 @@ {.reg = MCP_OLAT << 1, .def = 0x0000}, }; -static const struct regmap_range mcp23x16_volatile_range = { +static const struct regmap_range mcp23x17_volatile_range = { .range_min = MCP_INTF << 1, .range_max = MCP_GPIO << 1, }; -static const struct regmap_access_table mcp23x16_volatile_table = { - .yes_ranges = &mcp23x16_volatile_range, +static const struct regmap_access_table mcp23x17_volatile_table = { + .yes_ranges = &mcp23x17_volatile_range, .n_yes_ranges = 1, }; -static const struct regmap_range mcp23x16_precious_range = { - .range_min = MCP_GPIO << 1, +static const struct regmap_range mcp23x17_precious_range = { + .range_min = MCP_INTCAP << 1, .range_max = MCP_GPIO << 1, }; -static const struct regmap_access_table mcp23x16_precious_table = { - .yes_ranges = &mcp23x16_precious_range, +static const struct regmap_access_table mcp23x17_precious_table = { + .yes_ranges = &mcp23x17_precious_range, .n_yes_ranges = 1, }; @@ -124,10 +124,10 @@ .reg_stride = 2, .max_register = MCP_OLAT << 1, - .volatile_table = &mcp23x16_volatile_table, - .precious_table = &mcp23x16_precious_table, - .reg_defaults = mcp23x16_defaults, - .num_reg_defaults = ARRAY_SIZE(mcp23x16_defaults), + .volatile_table = &mcp23x17_volatile_table, + .precious_table = &mcp23x17_precious_table, + .reg_defaults = mcp23x17_defaults, + .num_reg_defaults = ARRAY_SIZE(mcp23x17_defaults), .cache_type = REGCACHE_FLAT, .val_format_endian = REGMAP_ENDIAN_LITTLE, }; --- linux-azure-5.8-5.8.0.orig/drivers/pinctrl/pinctrl-mcp23s08_spi.c +++ linux-azure-5.8-5.8.0/drivers/pinctrl/pinctrl-mcp23s08_spi.c @@ -119,13 +119,15 @@ return -EINVAL; } - copy = devm_kmemdup(dev, &config, sizeof(config), GFP_KERNEL); + copy = devm_kmemdup(dev, config, sizeof(*config), GFP_KERNEL); if (!copy) return -ENOMEM; copy->name = name; mcp->regmap = devm_regmap_init(dev, &mcp23sxx_spi_regmap, mcp, copy); + if (IS_ERR(mcp->regmap)) + dev_err(dev, "regmap init failed for %s\n", mcp->chip.label); return PTR_ERR_OR_ZERO(mcp->regmap); } --- linux-azure-5.8-5.8.0.orig/drivers/pinctrl/pinctrl-rockchip.c +++ linux-azure-5.8-5.8.0/drivers/pinctrl/pinctrl-rockchip.c @@ -3153,7 +3153,9 @@ if (!bank->domain) return -ENXIO; + clk_enable(bank->clk); virq = irq_create_mapping(bank->domain, offset); + clk_disable(bank->clk); return (virq) ? : -ENXIO; } --- linux-azure-5.8-5.8.0.orig/drivers/pinctrl/pinctrl-single.c +++ linux-azure-5.8-5.8.0/drivers/pinctrl/pinctrl-single.c @@ -916,7 +916,7 @@ /* If pinconf isn't supported, don't parse properties in below. */ if (!PCS_HAS_PINCONF) - return 0; + return -ENOTSUPP; /* cacluate how much properties are supported in current node */ for (i = 0; i < ARRAY_SIZE(prop2); i++) { @@ -928,7 +928,7 @@ nconfs++; } if (!nconfs) - return 0; + return -ENOTSUPP; func->conf = devm_kcalloc(pcs->dev, nconfs, sizeof(struct pcs_conf_vals), @@ -1056,9 +1056,12 @@ if (PCS_HAS_PINCONF && function) { res = pcs_parse_pinconf(pcs, np, function, map); - if (res) + if (res == 0) + *num_maps = 2; + else if (res == -ENOTSUPP) + *num_maps = 1; + else goto free_pingroups; - *num_maps = 2; } else { *num_maps = 1; } --- linux-azure-5.8-5.8.0.orig/drivers/pinctrl/qcom/pinctrl-msm.c +++ linux-azure-5.8-5.8.0/drivers/pinctrl/qcom/pinctrl-msm.c @@ -48,6 +48,7 @@ * @dual_edge_irqs: Bitmap of irqs that need sw emulated dual edge * detection. * @skip_wake_irqs: Skip IRQs that are handled by wakeup interrupt controller + * @disabled_for_mux: These IRQs were disabled because we muxed away. * @soc; Reference to soc_data of platform specific data. * @regs: Base addresses for the TLMM tiles. */ @@ -68,6 +69,7 @@ DECLARE_BITMAP(dual_edge_irqs, MAX_NR_GPIO); DECLARE_BITMAP(enabled_irqs, MAX_NR_GPIO); DECLARE_BITMAP(skip_wake_irqs, MAX_NR_GPIO); + DECLARE_BITMAP(disabled_for_mux, MAX_NR_GPIO); const struct msm_pinctrl_soc_data *soc; void __iomem *regs[MAX_NR_TILES]; @@ -92,6 +94,14 @@ MSM_ACCESSOR(intr_status) MSM_ACCESSOR(intr_target) +static void msm_ack_intr_status(struct msm_pinctrl *pctrl, + const struct msm_pingroup *g) +{ + u32 val = g->intr_ack_high ? BIT(g->intr_status_bit) : 0; + + msm_writel_intr_status(val, pctrl, g); +} + static int msm_get_groups_count(struct pinctrl_dev *pctldev) { struct msm_pinctrl *pctrl = pinctrl_dev_get_drvdata(pctldev); @@ -167,6 +177,10 @@ unsigned group) { struct msm_pinctrl *pctrl = pinctrl_dev_get_drvdata(pctldev); + struct gpio_chip *gc = &pctrl->chip; + unsigned int irq = irq_find_mapping(gc->irq.domain, group); + struct irq_data *d = irq_get_irq_data(irq); + unsigned int gpio_func = pctrl->soc->gpio_func; const struct msm_pingroup *g; unsigned long flags; u32 val, mask; @@ -183,6 +197,20 @@ if (WARN_ON(i == g->nfuncs)) return -EINVAL; + /* + * If an GPIO interrupt is setup on this pin then we need special + * handling. Specifically interrupt detection logic will still see + * the pin twiddle even when we're muxed away. + * + * When we see a pin with an interrupt setup on it then we'll disable + * (mask) interrupts on it when we mux away until we mux back. Note + * that disable_irq() refcounts and interrupts are disabled as long as + * at least one disable_irq() has been called. + */ + if (d && i != gpio_func && + !test_and_set_bit(d->hwirq, pctrl->disabled_for_mux)) + disable_irq(irq); + raw_spin_lock_irqsave(&pctrl->lock, flags); val = msm_readl_ctl(pctrl, g); @@ -192,6 +220,20 @@ raw_spin_unlock_irqrestore(&pctrl->lock, flags); + if (d && i == gpio_func && + test_and_clear_bit(d->hwirq, pctrl->disabled_for_mux)) { + /* + * Clear interrupts detected while not GPIO since we only + * masked things. + */ + if (d->parent_data && test_bit(d->hwirq, pctrl->skip_wake_irqs)) + irq_chip_set_parent_state(d, IRQCHIP_STATE_PENDING, false); + else + msm_ack_intr_status(pctrl, g); + + enable_irq(irq); + } + return 0; } @@ -206,8 +248,7 @@ if (!g->nfuncs) return 0; - /* For now assume function 0 is GPIO because it always is */ - return msm_pinmux_set_mux(pctldev, g->funcs[0], offset); + return msm_pinmux_set_mux(pctldev, g->funcs[pctrl->soc->gpio_func], offset); } static const struct pinmux_ops msm_pinmux_ops = { @@ -757,7 +798,7 @@ raw_spin_unlock_irqrestore(&pctrl->lock, flags); } -static void msm_gpio_irq_clear_unmask(struct irq_data *d, bool status_clear) +static void msm_gpio_irq_unmask(struct irq_data *d) { struct gpio_chip *gc = irq_data_get_irq_chip_data(d); struct msm_pinctrl *pctrl = gpiochip_get_data(gc); @@ -775,17 +816,6 @@ raw_spin_lock_irqsave(&pctrl->lock, flags); - if (status_clear) { - /* - * clear the interrupt status bit before unmask to avoid - * any erroneous interrupts that would have got latched - * when the interrupt is not in use. - */ - val = msm_readl_intr_status(pctrl, g); - val &= ~BIT(g->intr_status_bit); - msm_writel_intr_status(val, pctrl, g); - } - val = msm_readl_intr_cfg(pctrl, g); val |= BIT(g->intr_raw_status_bit); val |= BIT(g->intr_enable_bit); @@ -798,21 +828,14 @@ static void msm_gpio_irq_enable(struct irq_data *d) { - /* - * Clear the interrupt that may be pending before we enable - * the line. - * This is especially a problem with the GPIOs routed to the - * PDC. These GPIOs are direct-connect interrupts to the GIC. - * Disabling the interrupt line at the PDC does not prevent - * the interrupt from being latched at the GIC. The state at - * GIC needs to be cleared before enabling. - */ - if (d->parent_data) { - irq_chip_set_parent_state(d, IRQCHIP_STATE_PENDING, 0); + struct gpio_chip *gc = irq_data_get_irq_chip_data(d); + struct msm_pinctrl *pctrl = gpiochip_get_data(gc); + + if (d->parent_data) irq_chip_enable_parent(d); - } - msm_gpio_irq_clear_unmask(d, true); + if (!test_bit(d->hwirq, pctrl->skip_wake_irqs)) + msm_gpio_irq_unmask(d); } static void msm_gpio_irq_disable(struct irq_data *d) @@ -827,11 +850,6 @@ msm_gpio_irq_mask(d); } -static void msm_gpio_irq_unmask(struct irq_data *d) -{ - msm_gpio_irq_clear_unmask(d, false); -} - /** * msm_gpio_update_dual_edge_parent() - Prime next edge for IRQs handled by parent. * @d: The irq dta. @@ -884,7 +902,6 @@ struct msm_pinctrl *pctrl = gpiochip_get_data(gc); const struct msm_pingroup *g; unsigned long flags; - u32 val; if (test_bit(d->hwirq, pctrl->skip_wake_irqs)) { if (test_bit(d->hwirq, pctrl->dual_edge_irqs)) @@ -896,12 +913,7 @@ raw_spin_lock_irqsave(&pctrl->lock, flags); - val = msm_readl_intr_status(pctrl, g); - if (g->intr_ack_high) - val |= BIT(g->intr_status_bit); - else - val &= ~BIT(g->intr_status_bit); - msm_writel_intr_status(val, pctrl, g); + msm_ack_intr_status(pctrl, g); if (test_bit(d->hwirq, pctrl->dual_edge_irqs)) msm_gpio_update_dual_edge_pos(pctrl, g, d); @@ -926,6 +938,7 @@ struct msm_pinctrl *pctrl = gpiochip_get_data(gc); const struct msm_pingroup *g; unsigned long flags; + bool was_enabled; u32 val; if (msm_gpio_needs_dual_edge_parent_workaround(d, type)) { @@ -987,6 +1000,7 @@ * could cause the INTR_STATUS to be set for EDGE interrupts. */ val = msm_readl_intr_cfg(pctrl, g); + was_enabled = val & BIT(g->intr_raw_status_bit); val |= BIT(g->intr_raw_status_bit); if (g->intr_detection_width == 2) { val &= ~(3 << g->intr_detection_bit); @@ -1036,6 +1050,14 @@ } msm_writel_intr_cfg(val, pctrl, g); + /* + * The first time we set RAW_STATUS_EN it could trigger an interrupt. + * Clear the interrupt. This is safe because we have + * IRQCHIP_SET_TYPE_MASKED. + */ + if (!was_enabled) + msm_ack_intr_status(pctrl, g); + if (test_bit(d->hwirq, pctrl->dual_edge_irqs)) msm_gpio_update_dual_edge_pos(pctrl, g, d); @@ -1060,12 +1082,10 @@ * when TLMM is powered on. To allow that, enable the GPIO * summary line to be wakeup capable at GIC. */ - if (d->parent_data) - irq_chip_set_wake_parent(d, on); - - irq_set_irq_wake(pctrl->irq, on); + if (d->parent_data && test_bit(d->hwirq, pctrl->skip_wake_irqs)) + return irq_chip_set_wake_parent(d, on); - return 0; + return irq_set_irq_wake(pctrl->irq, on); } static int msm_gpio_irq_reqres(struct irq_data *d) @@ -1089,6 +1109,14 @@ ret = -EINVAL; goto out; } + + /* + * The disable / clear-enable workaround we do in msm_pinmux_set_mux() + * only works if disable is not lazy since we only clear any bogus + * interrupt in hardware. Explicitly mark the interrupt as UNLAZY. + */ + irq_set_status_flags(d->irq, IRQ_DISABLE_UNLAZY); + return 0; out: module_put(gc->owner); @@ -1226,6 +1254,8 @@ pctrl->irq_chip.irq_release_resources = msm_gpio_irq_relres; pctrl->irq_chip.irq_set_affinity = msm_gpio_irq_set_affinity; pctrl->irq_chip.irq_set_vcpu_affinity = msm_gpio_irq_set_vcpu_affinity; + pctrl->irq_chip.flags = IRQCHIP_MASK_ON_SUSPEND | + IRQCHIP_SET_TYPE_MASKED; np = of_parse_phandle(pctrl->dev->of_node, "wakeup-parent", 0); if (np) { --- linux-azure-5.8-5.8.0.orig/drivers/pinctrl/qcom/pinctrl-msm.h +++ linux-azure-5.8-5.8.0/drivers/pinctrl/qcom/pinctrl-msm.h @@ -116,6 +116,7 @@ * @wakeirq_dual_edge_errata: If true then GPIOs using the wakeirq_map need * to be aware that their parent can't handle dual * edge interrupts. + * @gpio_func: Which function number is GPIO (usually 0). */ struct msm_pinctrl_soc_data { const struct pinctrl_pin_desc *pins; @@ -132,6 +133,7 @@ const struct msm_gpio_wakeirq_map *wakeirq_map; unsigned int nwakeirq_map; bool wakeirq_dual_edge_errata; + unsigned int gpio_func; }; extern const struct dev_pm_ops msm_pinctrl_dev_pm_ops; --- linux-azure-5.8-5.8.0.orig/drivers/pinctrl/qcom/pinctrl-sm8250.c +++ linux-azure-5.8-5.8.0/drivers/pinctrl/qcom/pinctrl-sm8250.c @@ -1308,11 +1308,27 @@ [178] = PINGROUP(178, WEST, _, _, _, _, _, _, _, _, _), [179] = PINGROUP(179, WEST, _, _, _, _, _, _, _, _, _), [180] = UFS_RESET(ufs_reset, 0xb8000), - [181] = SDC_PINGROUP(sdc2_clk, 0x7000, 14, 6), + [181] = SDC_PINGROUP(sdc2_clk, 0xb7000, 14, 6), [182] = SDC_PINGROUP(sdc2_cmd, 0xb7000, 11, 3), [183] = SDC_PINGROUP(sdc2_data, 0xb7000, 9, 0), }; +static const struct msm_gpio_wakeirq_map sm8250_pdc_map[] = { + { 0, 79 }, { 1, 84 }, { 2, 80 }, { 3, 82 }, { 4, 107 }, { 7, 43 }, + { 11, 42 }, { 14, 44 }, { 15, 52 }, { 19, 67 }, { 23, 68 }, { 24, 105 }, + { 27, 92 }, { 28, 106 }, { 31, 69 }, { 35, 70 }, { 39, 37 }, + { 40, 108 }, { 43, 71 }, { 45, 72 }, { 47, 83 }, { 51, 74 }, { 55, 77 }, + { 59, 78 }, { 63, 75 }, { 64, 81 }, { 65, 87 }, { 66, 88 }, { 67, 89 }, + { 68, 54 }, { 70, 85 }, { 77, 46 }, { 80, 90 }, { 81, 91 }, { 83, 97 }, + { 84, 98 }, { 86, 99 }, { 87, 100 }, { 88, 101 }, { 89, 102 }, + { 92, 103 }, { 93, 104 }, { 100, 53 }, { 103, 47 }, { 104, 48 }, + { 108, 49 }, { 109, 94 }, { 110, 95 }, { 111, 96 }, { 112, 55 }, + { 113, 56 }, { 118, 50 }, { 121, 51 }, { 122, 57 }, { 123, 58 }, + { 124, 45 }, { 126, 59 }, { 128, 76 }, { 129, 86 }, { 132, 93 }, + { 133, 65 }, { 134, 66 }, { 136, 62 }, { 137, 63 }, { 138, 64 }, + { 142, 60 }, { 143, 61 } +}; + static const struct msm_pinctrl_soc_data sm8250_pinctrl = { .pins = sm8250_pins, .npins = ARRAY_SIZE(sm8250_pins), @@ -1323,6 +1339,8 @@ .ngpios = 181, .tiles = sm8250_tiles, .ntiles = ARRAY_SIZE(sm8250_tiles), + .wakeirq_map = sm8250_pdc_map, + .nwakeirq_map = ARRAY_SIZE(sm8250_pdc_map), }; static int sm8250_pinctrl_probe(struct platform_device *pdev) --- linux-azure-5.8-5.8.0.orig/drivers/pinctrl/sunxi/pinctrl-sunxi.c +++ linux-azure-5.8-5.8.0/drivers/pinctrl/sunxi/pinctrl-sunxi.c @@ -1142,20 +1142,22 @@ if (bank == pctl->desc->irq_banks) return; + chained_irq_enter(chip, desc); + reg = sunxi_irq_status_reg_from_bank(pctl->desc, bank); val = readl(pctl->membase + reg); if (val) { int irqoffset; - chained_irq_enter(chip, desc); for_each_set_bit(irqoffset, &val, IRQ_PER_BANK) { int pin_irq = irq_find_mapping(pctl->domain, bank * IRQ_PER_BANK + irqoffset); generic_handle_irq(pin_irq); } - chained_irq_exit(chip, desc); } + + chained_irq_exit(chip, desc); } static int sunxi_pinctrl_add_function(struct sunxi_pinctrl *pctl, --- linux-azure-5.8-5.8.0.orig/drivers/platform/chrome/cros_ec_ishtp.c +++ linux-azure-5.8-5.8.0/drivers/platform/chrome/cros_ec_ishtp.c @@ -681,8 +681,10 @@ /* Register croc_ec_dev mfd */ rv = cros_ec_dev_init(client_data); - if (rv) + if (rv) { + down_write(&init_lock); goto end_cros_ec_dev_init_error; + } return 0; --- linux-azure-5.8-5.8.0.orig/drivers/platform/chrome/cros_ec_lightbar.c +++ linux-azure-5.8-5.8.0/drivers/platform/chrome/cros_ec_lightbar.c @@ -116,6 +116,8 @@ param = (struct ec_params_lightbar *)msg->data; param->cmd = LIGHTBAR_CMD_VERSION; + msg->outsize = sizeof(param->cmd); + msg->result = sizeof(resp->version); ret = cros_ec_cmd_xfer_status(ec->ec_dev, msg); if (ret < 0) { ret = 0; --- linux-azure-5.8-5.8.0.orig/drivers/platform/chrome/cros_ec_sensorhub_ring.c +++ linux-azure-5.8-5.8.0/drivers/platform/chrome/cros_ec_sensorhub_ring.c @@ -419,9 +419,7 @@ * Disable filtering since we might add more jitter * if b is in a random point in time. */ - new_timestamp = fifo_timestamp - - fifo_info->timestamp * 1000 + - in->timestamp * 1000; + new_timestamp = c - b * 1000 + a * 1000; /* * The timestamp can be stale if we had to use the fifo * info timestamp. --- linux-azure-5.8-5.8.0.orig/drivers/platform/chrome/cros_ec_spi.c +++ linux-azure-5.8-5.8.0/drivers/platform/chrome/cros_ec_spi.c @@ -743,7 +743,6 @@ int err; spi->bits_per_word = 8; - spi->mode = SPI_MODE_0; spi->rt = true; err = spi_setup(spi); if (err < 0) --- linux-azure-5.8-5.8.0.orig/drivers/platform/olpc/olpc-ec.c +++ linux-azure-5.8-5.8.0/drivers/platform/olpc/olpc-ec.c @@ -439,7 +439,9 @@ &config); if (IS_ERR(ec->dcon_rdev)) { dev_err(&pdev->dev, "failed to register DCON regulator\n"); - return PTR_ERR(ec->dcon_rdev); + err = PTR_ERR(ec->dcon_rdev); + kfree(ec); + return err; } ec->dbgfs_dir = olpc_ec_setup_debugfs(); --- linux-azure-5.8-5.8.0.orig/drivers/platform/x86/Kconfig +++ linux-azure-5.8-5.8.0/drivers/platform/x86/Kconfig @@ -462,6 +462,20 @@ This is a driver for enabling wifi on some Fujitsu-Siemens Amilo laptops. +config DELL_UART_BACKLIGHT + tristate "Dell AIO UART Backlight driver" + depends on SERIAL_8250 + depends on ACPI + ---help--- + Say Y here if you want to support Dell AIO UART backlight interface. + The Dell AIO machines released after 2017 come with a UART interface + to communicate with the backlight scalar board. This driver creates + a standard backlight interface and talks to the scalar board through + UART to adjust the AIO screen brightness. + + To compile this driver as a module, choose M here: the module will + be called dell_uart_backlight. + config FUJITSU_LAPTOP tristate "Fujitsu Laptop Extras" depends on ACPI @@ -469,6 +483,7 @@ depends on BACKLIGHT_CLASS_DEVICE depends on ACPI_VIDEO || ACPI_VIDEO = n select INPUT_SPARSEKMAP + select NEW_LEDS select LEDS_CLASS help This is a driver for laptops built by Fujitsu: @@ -1091,6 +1106,7 @@ depends on ACPI_WMI depends on INPUT select INPUT_SPARSEKMAP + select NEW_LEDS select LEDS_CLASS help This driver adds support for hotkeys as well as control of keyboard --- linux-azure-5.8-5.8.0.orig/drivers/platform/x86/Makefile +++ linux-azure-5.8-5.8.0/drivers/platform/x86/Makefile @@ -42,6 +42,7 @@ obj-$(CONFIG_DELL_LAPTOP) += dell-laptop.o obj-$(CONFIG_DELL_RBTN) += dell-rbtn.o obj-$(CONFIG_DELL_RBU) += dell_rbu.o +obj-$(CONFIG_DELL_UART_BACKLIGHT) += dell-uart-backlight.o obj-$(CONFIG_DELL_SMO8800) += dell-smo8800.o obj-$(CONFIG_DELL_WMI) += dell-wmi.o obj-$(CONFIG_DELL_WMI_DESCRIPTOR) += dell-wmi-descriptor.o --- linux-azure-5.8-5.8.0.orig/drivers/platform/x86/acer-wmi.c +++ linux-azure-5.8-5.8.0/drivers/platform/x86/acer-wmi.c @@ -111,6 +111,7 @@ {KE_KEY, 0x64, {KEY_SWITCHVIDEOMODE} }, /* Display Switch */ {KE_IGNORE, 0x81, {KEY_SLEEP} }, {KE_KEY, 0x82, {KEY_TOUCHPAD_TOGGLE} }, /* Touch Pad Toggle */ + {KE_IGNORE, 0x84, {KEY_KBDILLUMTOGGLE} }, /* Automatic Keyboard background light toggle */ {KE_KEY, KEY_TOUCHPAD_ON, {KEY_TOUCHPAD_ON} }, {KE_KEY, KEY_TOUCHPAD_OFF, {KEY_TOUCHPAD_OFF} }, {KE_IGNORE, 0x83, {KEY_TOUCHPAD_TOGGLE} }, --- linux-azure-5.8-5.8.0.orig/drivers/platform/x86/asus-nb-wmi.c +++ linux-azure-5.8-5.8.0/drivers/platform/x86/asus-nb-wmi.c @@ -110,6 +110,20 @@ .wmi_force_als_set = true, }; +static struct quirk_entry quirk_asus_ga401i = { + .wmi_backlight_power = true, + .wmi_backlight_set_devstate = true, +}; + +static struct quirk_entry quirk_asus_ga502i = { + .wmi_backlight_power = true, + .wmi_backlight_set_devstate = true, +}; + +static struct quirk_entry quirk_asus_use_kbd_dock_devid = { + .use_kbd_dock_devid = true, +}; + static int dmi_matched(const struct dmi_system_id *dmi) { pr_info("Identified laptop model '%s'\n", dmi->ident); @@ -411,6 +425,106 @@ }, .driver_data = &quirk_asus_forceals, }, + { + .callback = dmi_matched, + .ident = "ASUSTeK COMPUTER INC. GA401IH", + .matches = { + DMI_MATCH(DMI_SYS_VENDOR, "ASUSTeK COMPUTER INC."), + DMI_MATCH(DMI_PRODUCT_NAME, "GA401IH"), + }, + .driver_data = &quirk_asus_ga401i, + }, + { + .callback = dmi_matched, + .ident = "ASUSTeK COMPUTER INC. GA401II", + .matches = { + DMI_MATCH(DMI_SYS_VENDOR, "ASUSTeK COMPUTER INC."), + DMI_MATCH(DMI_PRODUCT_NAME, "GA401II"), + }, + .driver_data = &quirk_asus_ga401i, + }, + { + .callback = dmi_matched, + .ident = "ASUSTeK COMPUTER INC. GA401IU", + .matches = { + DMI_MATCH(DMI_SYS_VENDOR, "ASUSTeK COMPUTER INC."), + DMI_MATCH(DMI_PRODUCT_NAME, "GA401IU"), + }, + .driver_data = &quirk_asus_ga401i, + }, + { + .callback = dmi_matched, + .ident = "ASUSTeK COMPUTER INC. GA401IV", + .matches = { + DMI_MATCH(DMI_SYS_VENDOR, "ASUSTeK COMPUTER INC."), + DMI_MATCH(DMI_PRODUCT_NAME, "GA401IV"), + }, + .driver_data = &quirk_asus_ga401i, + }, + { + .callback = dmi_matched, + .ident = "ASUSTeK COMPUTER INC. GA401IVC", + .matches = { + DMI_MATCH(DMI_SYS_VENDOR, "ASUSTeK COMPUTER INC."), + DMI_MATCH(DMI_PRODUCT_NAME, "GA401IVC"), + }, + .driver_data = &quirk_asus_ga401i, + }, + { + .callback = dmi_matched, + .ident = "ASUSTeK COMPUTER INC. GA502II", + .matches = { + DMI_MATCH(DMI_SYS_VENDOR, "ASUSTeK COMPUTER INC."), + DMI_MATCH(DMI_PRODUCT_NAME, "GA502II"), + }, + .driver_data = &quirk_asus_ga502i, + }, + { + .callback = dmi_matched, + .ident = "ASUSTeK COMPUTER INC. GA502IU", + .matches = { + DMI_MATCH(DMI_SYS_VENDOR, "ASUSTeK COMPUTER INC."), + DMI_MATCH(DMI_PRODUCT_NAME, "GA502IU"), + }, + .driver_data = &quirk_asus_ga502i, + }, + { + .callback = dmi_matched, + .ident = "ASUSTeK COMPUTER INC. GA502IV", + .matches = { + DMI_MATCH(DMI_SYS_VENDOR, "ASUSTeK COMPUTER INC."), + DMI_MATCH(DMI_PRODUCT_NAME, "GA502IV"), + }, + .driver_data = &quirk_asus_ga502i, + }, + { + .callback = dmi_matched, + .ident = "Asus Transformer T100TA / T100HA / T100CHI", + .matches = { + DMI_MATCH(DMI_SYS_VENDOR, "ASUSTeK COMPUTER INC."), + /* Match *T100* */ + DMI_MATCH(DMI_PRODUCT_NAME, "T100"), + }, + .driver_data = &quirk_asus_use_kbd_dock_devid, + }, + { + .callback = dmi_matched, + .ident = "Asus Transformer T101HA", + .matches = { + DMI_MATCH(DMI_SYS_VENDOR, "ASUSTeK COMPUTER INC."), + DMI_MATCH(DMI_PRODUCT_NAME, "T101HA"), + }, + .driver_data = &quirk_asus_use_kbd_dock_devid, + }, + { + .callback = dmi_matched, + .ident = "Asus Transformer T200TA", + .matches = { + DMI_MATCH(DMI_SYS_VENDOR, "ASUSTeK COMPUTER INC."), + DMI_MATCH(DMI_PRODUCT_NAME, "T200TA"), + }, + .driver_data = &quirk_asus_use_kbd_dock_devid, + }, {}, }; --- linux-azure-5.8-5.8.0.orig/drivers/platform/x86/asus-wmi.c +++ linux-azure-5.8-5.8.0/drivers/platform/x86/asus-wmi.c @@ -365,12 +365,14 @@ if (err) goto err_free_dev; - result = asus_wmi_get_devstate_simple(asus, ASUS_WMI_DEVID_KBD_DOCK); - if (result >= 0) { - input_set_capability(asus->inputdev, EV_SW, SW_TABLET_MODE); - input_report_switch(asus->inputdev, SW_TABLET_MODE, !result); - } else if (result != -ENODEV) { - pr_err("Error checking for keyboard-dock: %d\n", result); + if (asus->driver->quirks->use_kbd_dock_devid) { + result = asus_wmi_get_devstate_simple(asus, ASUS_WMI_DEVID_KBD_DOCK); + if (result >= 0) { + input_set_capability(asus->inputdev, EV_SW, SW_TABLET_MODE); + input_report_switch(asus->inputdev, SW_TABLET_MODE, !result); + } else if (result != -ENODEV) { + pr_err("Error checking for keyboard-dock: %d\n", result); + } } err = input_register_device(asus->inputdev); @@ -2114,7 +2116,7 @@ return; } - if (code == NOTIFY_KBD_DOCK_CHANGE) { + if (asus->driver->quirks->use_kbd_dock_devid && code == NOTIFY_KBD_DOCK_CHANGE) { result = asus_wmi_get_devstate_simple(asus, ASUS_WMI_DEVID_KBD_DOCK); if (result >= 0) { --- linux-azure-5.8-5.8.0.orig/drivers/platform/x86/asus-wmi.h +++ linux-azure-5.8-5.8.0/drivers/platform/x86/asus-wmi.h @@ -33,6 +33,7 @@ bool wmi_backlight_native; bool wmi_backlight_set_devstate; bool wmi_force_als_set; + bool use_kbd_dock_devid; int wapf; /* * For machines with AMD graphic chips, it will send out WMI event --- linux-azure-5.8-5.8.0.orig/drivers/platform/x86/dell-smbios-base.c +++ linux-azure-5.8-5.8.0/drivers/platform/x86/dell-smbios-base.c @@ -594,6 +594,7 @@ if (wmi && smm) { pr_err("No SMBIOS backends available (wmi: %d, smm: %d)\n", wmi, smm); + ret = -ENODEV; goto fail_create_group; } --- linux-azure-5.8-5.8.0.orig/drivers/platform/x86/dell-uart-backlight.c +++ linux-azure-5.8-5.8.0/drivers/platform/x86/dell-uart-backlight.c @@ -0,0 +1,530 @@ +/* + * Dell AIO Serial Backlight Driver + * + * Copyright (C) 2017 AceLan Kao + * + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; either version 2 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + */ + +#include +#include +#include +#include +#include +#include +#include +#include + +#include "dell-uart-backlight.h" + +struct dell_uart_backlight { + struct device *dev; + struct backlight_device *dell_uart_bd; + struct mutex brightness_mutex; + int line; + int bl_power; +}; +struct uart_8250_port *serial8250_get_port(int line); +static struct tty_struct *tty; +static struct file *ftty; + +unsigned int (*io_serial_in)(struct uart_port *p, int offset); +int (*uart_write)(struct tty_struct *tty, const unsigned char *buf, int count); +int (*uart_chars_in_buffer)(struct tty_struct *tty); + +static bool force; +module_param(force, bool, 0444); +MODULE_PARM_DESC(force, "load the driver regardless of the scalar status"); + +static struct dell_uart_bl_cmd uart_cmd[] = { + /* + * Get Firmware Version: Tool uses this command to get firmware version. + * Command: 0x6A 0x06 0x8F (Length:3 Type: 0x0A, Cmd:6 Checksum:0x8F) + * Return data: 0x0D 0x06 Data checksum (Length:13,Cmd:0x06, + * Data :F/W version(APRILIA=APR27-VXXX,PHINE=PHI23-VXXX), + * checksum:SUM(Length and Cmd and Data)xor 0xFF . + */ + [DELL_UART_GET_FIRMWARE_VER] = { + .cmd = {0x6A, 0x06, 0x8F}, + .tx_len = 3, + }, + /* + * Get Scalar Status: Tool uses this command to check if scalar IC controls brightness. + * Command: 0x6A 0x1F 0x8F (Length:3 Type: 0x0A, Cmd:0x1F Checksum:0x76) + * Return data: 0x04 0x1F Data checksum + * (Data = 0: scalar cannot adjust brightness, Data = 1: scalar can adjust brightness) + */ + [DELL_UART_GET_SCALAR] = { + .cmd = {0x6A,0x1F,0x76}, + .ret = {0x04,0x1F,0x00,0x00}, + .tx_len = 3, + .rx_len = 4, + }, + /* + * Get Brightness level: Application uses this command for scaler to + * get brightness. + * Command: 0x6A 0x0C 0x89 + * (Length:3 Type: 0x0A, Cmd:0x0C, Checksum:0x89) + * Return data: 0x04 0x0C Data checksum + * (Length:4 Cmd: 0x0C Data: brightness level + * checksum: SUM(Length and Cmd and Data)xor 0xFF) + * brightness level which ranges from 0~100. + */ + [DELL_UART_GET_BRIGHTNESS] = { + .cmd = {0x6A, 0x0C, 0x89}, + .ret = {0x04, 0x0C, 0x00, 0x00}, + .tx_len = 3, + .rx_len = 4, + }, + /* Set Brightness level: Application uses this command for scaler to + * set brightness. + * Command: 0x8A 0x0B Byte2 Checksum (Length:4 Type: 0x0A, Cmd:0x0B) + * where Byte2 is the brightness level which ranges from 0~100. + * Return data: 0x03 0x0B 0xF1(Length:3,Cmd:B,checksum:0xF1) + * Scaler must send the 3bytes ack within 1 second when success, + * other value if error + */ + [DELL_UART_SET_BRIGHTNESS] = { + .cmd = {0x8A, 0x0B, 0x0, 0x0}, + .ret = {0x03, 0x0B, 0xF1}, + .tx_len = 4, + .rx_len = 3, + }, + /* + * Screen ON/OFF Control: Application uses this command to control + * screen ON or OFF. + * Command: 0x8A 0x0E Byte2 Checksum (Length:4 Type: 0x0A, Cmd:0x0E) + * where + * Byte2=0 to turn OFF the screen. + * Byte2=1 to turn ON the screen + * Other value of Byte2 is reserved and invalid. + * Return data: 0x03 0x0E 0xEE(Length:3,Cmd:E,checksum:0xEE) + */ + [DELL_UART_SET_BACKLIGHT_POWER] = { + .cmd = {0x8A, 0x0E, 0x00, 0x0}, + .ret = {0x03, 0x0E, 0xEE}, + .tx_len = 4, + .rx_len = 3, + }, +}; + +static const struct dmi_system_id dell_uart_backlight_alpha_platform[] = { + { + .ident = "Dell Inspiron 7777 AIO", + .matches = { + DMI_MATCH(DMI_SYS_VENDOR, "Dell Inc."), + DMI_MATCH(DMI_PRODUCT_NAME, "Inspiron 7777 AIO"), + }, + }, + { + .ident = "Dell Inspiron 5477 AIO", + .matches = { + DMI_MATCH(DMI_SYS_VENDOR, "Dell Inc."), + DMI_MATCH(DMI_PRODUCT_NAME, "Inspiron 5477 AIO"), + }, + }, + { + .ident = "Dell OptiPlex 7769 AIO", + .matches = { + DMI_MATCH(DMI_SYS_VENDOR, "Dell Inc."), + DMI_MATCH(DMI_PRODUCT_NAME, "OptiPlex 7769 AIO"), + }, + }, + { + .ident = "Dell OptiPlex 5260 AIO", + .matches = { + DMI_MATCH(DMI_SYS_VENDOR, "Dell Inc."), + DMI_MATCH(DMI_PRODUCT_NAME, "OptiPlex 5260 AIO"), + }, + }, + { } +}; + +static int dell_uart_write(struct uart_8250_port *up, __u8 *buf, int len) +{ + int actual = 0; + struct uart_port *port = &up->port; + + tty_port_tty_wakeup(&port->state->port); + tty = tty_port_tty_get(&port->state->port); + actual = uart_write(tty, buf, len); + while (uart_chars_in_buffer(tty)) + udelay(10); + + return actual; +} + +static int dell_uart_read(struct uart_8250_port *up, __u8 *buf, int len) +{ + int i, retry; + unsigned long flags; + + spin_lock_irqsave(&up->port.lock, flags); + for (i = 0; i < len; i++) { + retry = 10; + while (!(io_serial_in(&up->port, UART_LSR) & UART_LSR_DR)) { + if (--retry == 0) + break; + mdelay(20); + } + + if (retry == 0) + break; + buf[i] = io_serial_in(&up->port, UART_RX); + } + spin_unlock_irqrestore(&up->port.lock, flags); + + return i; +} + +static void dell_uart_dump_cmd(const char *func, const char *prefix, + const char *cmd, int len) +{ + char buf[80]; + + snprintf(buf, 80, "dell_uart_backlight:%s:%s", func, prefix); + if (len != 0) + print_hex_dump_debug(buf, DUMP_PREFIX_NONE, + 16, 1, cmd, len, false); + else + pr_debug("dell_uart_backlight:%s:%sNULL\n", func, prefix); + +} + +/* + * checksum: SUM(Length and Cmd and Data)xor 0xFF) + */ +static unsigned char dell_uart_checksum(unsigned char *buf, int len) +{ + unsigned char val = 0; + + while (len-- > 0) + val += buf[len]; + + return val ^ 0xff; +} + +/* + * There is no command to get backlight power status, + * so we set the backlight power to "on" while initializing, + * and then track and report its status by bl_power variable + */ +static inline int dell_uart_get_bl_power(struct dell_uart_backlight *dell_pdata) +{ + return dell_pdata->bl_power; +} + +static int dell_uart_set_bl_power(struct backlight_device *bd, int power) +{ + struct dell_uart_bl_cmd *bl_cmd = + &uart_cmd[DELL_UART_SET_BACKLIGHT_POWER]; + struct dell_uart_backlight *dell_pdata = bl_get_data(bd); + struct uart_8250_port *uart = serial8250_get_port(dell_pdata->line); + int rx_len; + + if (power != FB_BLANK_POWERDOWN) + power = FB_BLANK_UNBLANK; + + bl_cmd->cmd[2] = power ? 0 : 1; + bl_cmd->cmd[3] = dell_uart_checksum(bl_cmd->cmd, bl_cmd->tx_len - 1); + + dell_uart_dump_cmd(__func__, "tx: ", bl_cmd->cmd, bl_cmd->tx_len); + + if (mutex_lock_killable(&dell_pdata->brightness_mutex) < 0) { + pr_debug("Failed to get mutex_lock"); + return 0; + } + + dell_uart_write(uart, bl_cmd->cmd, bl_cmd->tx_len); + rx_len = dell_uart_read(uart, bl_cmd->ret, bl_cmd->rx_len); + + mutex_unlock(&dell_pdata->brightness_mutex); + + dell_uart_dump_cmd(__func__, "rx: ", bl_cmd->ret, rx_len); + + bd->props.power = power; + dell_pdata->bl_power = power; + + return 0; +} + +static int dell_uart_get_brightness(struct backlight_device *bd) +{ + struct dell_uart_bl_cmd *bl_cmd = &uart_cmd[DELL_UART_GET_BRIGHTNESS]; + struct dell_uart_backlight *dell_pdata = bl_get_data(bd); + struct uart_8250_port *uart = serial8250_get_port(dell_pdata->line); + int rx_len, brightness = 0; + + dell_uart_dump_cmd(__func__, "tx: ", bl_cmd->cmd, bl_cmd->tx_len); + + if (mutex_lock_killable(&dell_pdata->brightness_mutex) < 0) { + pr_debug("Failed to get mutex_lock"); + return 0; + } + + dell_uart_write(uart, bl_cmd->cmd, bl_cmd->tx_len); + rx_len = dell_uart_read(uart, bl_cmd->ret, bl_cmd->rx_len); + + mutex_unlock(&dell_pdata->brightness_mutex); + + dell_uart_dump_cmd(__func__, "rx: ", bl_cmd->ret, rx_len); + + brightness = (unsigned int)bl_cmd->ret[2]; + + return brightness; +} + +static int dell_uart_update_status(struct backlight_device *bd) +{ + struct dell_uart_bl_cmd *bl_cmd = &uart_cmd[DELL_UART_SET_BRIGHTNESS]; + struct dell_uart_backlight *dell_pdata = bl_get_data(bd); + struct uart_8250_port *uart = serial8250_get_port(dell_pdata->line); + int rx_len; + + bl_cmd->cmd[2] = bd->props.brightness; + bl_cmd->cmd[3] = dell_uart_checksum(bl_cmd->cmd, bl_cmd->tx_len - 1); + + dell_uart_dump_cmd(__func__, "tx: ", bl_cmd->cmd, bl_cmd->tx_len); + + if (mutex_lock_killable(&dell_pdata->brightness_mutex) < 0) { + pr_debug("Failed to get mutex_lock"); + return 0; + } + + dell_uart_write(uart, bl_cmd->cmd, bl_cmd->tx_len); + rx_len = dell_uart_read(uart, bl_cmd->ret, bl_cmd->rx_len); + + mutex_unlock(&dell_pdata->brightness_mutex); + + dell_uart_dump_cmd(__func__, "rx: ", bl_cmd->ret, rx_len); + + if (bd->props.power != dell_uart_get_bl_power(dell_pdata)) + dell_uart_set_bl_power(bd, bd->props.power); + + return 0; +} + +static int dell_uart_get_scalar_status(struct dell_uart_backlight *dell_pdata) +{ + struct dell_uart_bl_cmd *bl_cmd = &uart_cmd[DELL_UART_GET_SCALAR]; + struct uart_8250_port *uart = serial8250_get_port(dell_pdata->line); + int rx_len; + int status = 0, retry = 50; + + dell_uart_dump_cmd(__func__, "tx: ", bl_cmd->cmd, bl_cmd->tx_len); + + if (mutex_lock_killable(&dell_pdata->brightness_mutex) < 0) { + pr_debug("Failed to get mutex_lock"); + return 0; + } + + dell_uart_write(uart, bl_cmd->cmd, bl_cmd->tx_len); + do { + rx_len = dell_uart_read(uart, bl_cmd->ret, bl_cmd->rx_len); + if (rx_len == 0) + msleep(100); + } while (rx_len == 0 && --retry); + + mutex_unlock(&dell_pdata->brightness_mutex); + + dell_uart_dump_cmd(__func__, "rx: ", bl_cmd->ret, rx_len); + + if (rx_len == 4) + status = (unsigned int)bl_cmd->ret[2]; + + return status; +} + +static int dell_uart_show_firmware_ver(struct dell_uart_backlight *dell_pdata) +{ + struct dell_uart_bl_cmd *bl_cmd = &uart_cmd[DELL_UART_GET_FIRMWARE_VER]; + struct uart_8250_port *uart = serial8250_get_port(dell_pdata->line); + int rx_len = 0, retry = 10; + + dell_uart_dump_cmd(__func__, "tx: ", bl_cmd->cmd, bl_cmd->tx_len); + + if (mutex_lock_killable(&dell_pdata->brightness_mutex) < 0) { + pr_debug("Failed to get mutex_lock"); + return -1; + } + + dell_uart_write(uart, bl_cmd->cmd, bl_cmd->tx_len); + while (retry-- > 0) { + /* first byte is data length */ + dell_uart_read(uart, bl_cmd->ret, 1); + rx_len = (int)bl_cmd->ret[0]; + if (bl_cmd->ret[0] > 80 || bl_cmd->ret[0] == 0) { + pr_debug("Failed to get firmware version\n"); + if (retry == 0) { + mutex_unlock(&dell_pdata->brightness_mutex); + return -1; + } + msleep(100); + continue; + } + + dell_uart_read(uart, bl_cmd->ret+1, rx_len-1); + break; + } + mutex_unlock(&dell_pdata->brightness_mutex); + + dell_uart_dump_cmd(__func__, "rx: ", bl_cmd->ret, rx_len); + + pr_debug("Firmare str(%d)= %s\n", (int)bl_cmd->ret[0], bl_cmd->ret+2); + return rx_len; +} + +static const struct backlight_ops dell_uart_backlight_ops = { + .get_brightness = dell_uart_get_brightness, + .update_status = dell_uart_update_status, +}; + +static int dell_uart_startup(struct dell_uart_backlight *dell_pdata) +{ + struct uart_8250_port *uartp; + struct uart_port *port; + + dell_pdata->line = 0; + uartp = serial8250_get_port(dell_pdata->line); + port = &uartp->port; + tty = port->state->port.tty; + io_serial_in = port->serial_in; + uart_write = tty->driver->ops->write; + uart_chars_in_buffer = tty->driver->ops->chars_in_buffer; + + return 0; +} + +static int dell_uart_bl_add(struct acpi_device *dev) +{ + struct dell_uart_backlight *dell_pdata; + struct backlight_properties props; + struct backlight_device *dell_uart_bd; + + dell_pdata = kzalloc(sizeof(struct dell_uart_backlight), GFP_KERNEL); + if (!dell_pdata) { + pr_debug("Failed to allocate memory for dell_uart_backlight\n"); + return -ENOMEM; + } + dell_pdata->dev = &dev->dev; + dell_uart_startup(dell_pdata); + dev->driver_data = dell_pdata; + + mutex_init(&dell_pdata->brightness_mutex); + + if (!force) { + if (dmi_check_system(dell_uart_backlight_alpha_platform)) { + /* try another command to make sure there is no scalar IC */ + if (dell_uart_show_firmware_ver(dell_pdata) <= 4) { + pr_debug("Scalar is not in charge of brightness adjustment.\n"); + kzfree(dell_pdata); + return -ENODEV; + } + } + else if (!dell_uart_get_scalar_status(dell_pdata)) { + pr_debug("Scalar is not in charge of brightness adjustment.\n"); + kzfree(dell_pdata); + return -ENODEV; + } + } + dell_uart_show_firmware_ver(dell_pdata); + + memset(&props, 0, sizeof(struct backlight_properties)); + props.type = BACKLIGHT_PLATFORM; + props.max_brightness = 100; + + dell_uart_bd = backlight_device_register("dell_uart_backlight", + &dev->dev, + dell_pdata, + &dell_uart_backlight_ops, + &props); + if (IS_ERR(dell_uart_bd)) { + kzfree(dell_pdata); + pr_debug("Backlight registration failed\n"); + return PTR_ERR(dell_uart_bd); + } + + dell_pdata->dell_uart_bd = dell_uart_bd; + + dell_uart_set_bl_power(dell_uart_bd, FB_BLANK_UNBLANK); + dell_uart_bd->props.brightness = 100; + backlight_update_status(dell_uart_bd); + + /* unregister acpi backlight interface */ + acpi_video_set_dmi_backlight_type(acpi_backlight_vendor); + + return 0; +} + +static int dell_uart_bl_remove(struct acpi_device *dev) +{ + struct dell_uart_backlight *dell_pdata = dev->driver_data; + + backlight_device_unregister(dell_pdata->dell_uart_bd); + kzfree(dell_pdata); + + return 0; +} + +static int dell_uart_bl_suspend(struct device *dev) +{ + filp_close(ftty, NULL); + return 0; +} + +static int dell_uart_bl_resume(struct device *dev) +{ + ftty = filp_open("/dev/ttyS0", O_RDWR | O_NOCTTY | O_NDELAY, 0); + return 0; +} + +static SIMPLE_DEV_PM_OPS(dell_uart_bl_pm, dell_uart_bl_suspend, dell_uart_bl_resume); + +static const struct acpi_device_id dell_uart_bl_ids[] = { + {"DELL0501", 0}, + {"", 0}, +}; + +static struct acpi_driver dell_uart_backlight_driver = { + .name = "Dell AIO serial backlight", + .ids = dell_uart_bl_ids, + .ops = { + .add = dell_uart_bl_add, + .remove = dell_uart_bl_remove, + }, + .drv.pm = &dell_uart_bl_pm, +}; + +static int __init dell_uart_bl_init(void) +{ + ftty = filp_open("/dev/ttyS0", O_RDWR | O_NOCTTY | O_NDELAY, 0); + if (IS_ERR(ftty)) { + pr_debug("cannot open /dev/ttyS0\n"); + return -EINVAL; + } + + return acpi_bus_register_driver(&dell_uart_backlight_driver); +} + +static void __exit dell_uart_bl_exit(void) +{ + filp_close(ftty, NULL); + + acpi_bus_unregister_driver(&dell_uart_backlight_driver); +} + +module_init(dell_uart_bl_init); +module_exit(dell_uart_bl_exit); +MODULE_DEVICE_TABLE(acpi, dell_uart_bl_ids); +MODULE_DESCRIPTION("Dell AIO Serial Backlight module"); +MODULE_AUTHOR("AceLan Kao "); +MODULE_LICENSE("GPL"); --- linux-azure-5.8-5.8.0.orig/drivers/platform/x86/dell-uart-backlight.h +++ linux-azure-5.8-5.8.0/drivers/platform/x86/dell-uart-backlight.h @@ -0,0 +1,36 @@ +/* + * Dell AIO Serial Backlight Driver + * + * Copyright (C) 2017 AceLan Kao + * + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; either version 2 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + */ + +#ifndef _DELL_UART_BACKLIGHT_H_ +#define _DELL_UART_BACKLIGHT_H_ + +enum { + DELL_UART_GET_FIRMWARE_VER, + DELL_UART_GET_SCALAR, + DELL_UART_GET_BRIGHTNESS, + DELL_UART_SET_BRIGHTNESS, + DELL_UART_SET_BACKLIGHT_POWER, +}; + +struct dell_uart_bl_cmd { + unsigned char cmd[10]; + unsigned char ret[80]; + unsigned short tx_len; + unsigned short rx_len; +}; + +#endif /* _DELL_UART_BACKLIGHT_H_ */ --- linux-azure-5.8-5.8.0.orig/drivers/platform/x86/hp-wmi.c +++ linux-azure-5.8-5.8.0/drivers/platform/x86/hp-wmi.c @@ -32,6 +32,10 @@ MODULE_ALIAS("wmi:95F24279-4D7B-4334-9387-ACCDC67EF61C"); MODULE_ALIAS("wmi:5FB7F034-2C63-45e9-BE91-3D44E2C707E4"); +static int enable_tablet_mode_sw = -1; +module_param(enable_tablet_mode_sw, int, 0444); +MODULE_PARM_DESC(enable_tablet_mode_sw, "Enable SW_TABLET_MODE reporting (-1=auto, 0=no, 1=yes)"); + #define HPWMI_EVENT_GUID "95F24279-4D7B-4334-9387-ACCDC67EF61C" #define HPWMI_BIOS_GUID "5FB7F034-2C63-45e9-BE91-3D44E2C707E4" @@ -246,7 +250,8 @@ ret = bios_return->return_code; if (ret) { - if (ret != HPWMI_RET_UNKNOWN_CMDTYPE) + if (ret != HPWMI_RET_UNKNOWN_COMMAND && + ret != HPWMI_RET_UNKNOWN_CMDTYPE) pr_warn("query 0x%x returned error 0x%x\n", query, ret); goto out_free; } @@ -652,10 +657,12 @@ } /* Tablet mode */ - val = hp_wmi_hw_state(HPWMI_TABLET_MASK); - if (!(val < 0)) { - __set_bit(SW_TABLET_MODE, hp_wmi_input_dev->swbit); - input_report_switch(hp_wmi_input_dev, SW_TABLET_MODE, val); + if (enable_tablet_mode_sw > 0) { + val = hp_wmi_hw_state(HPWMI_TABLET_MASK); + if (val >= 0) { + __set_bit(SW_TABLET_MODE, hp_wmi_input_dev->swbit); + input_report_switch(hp_wmi_input_dev, SW_TABLET_MODE, val); + } } err = sparse_keymap_setup(hp_wmi_input_dev, hp_wmi_keymap, NULL); --- linux-azure-5.8-5.8.0.orig/drivers/platform/x86/i2c-multi-instantiate.c +++ linux-azure-5.8-5.8.0/drivers/platform/x86/i2c-multi-instantiate.c @@ -166,13 +166,29 @@ {} }; -static const struct i2c_inst_data int3515_data[] = { - { "tps6598x", IRQ_RESOURCE_APIC, 0 }, - { "tps6598x", IRQ_RESOURCE_APIC, 1 }, - { "tps6598x", IRQ_RESOURCE_APIC, 2 }, - { "tps6598x", IRQ_RESOURCE_APIC, 3 }, - {} -}; +/* + * Device with _HID INT3515 (TI PD controllers) has some unresolved interrupt + * issues. The most common problem seen is interrupt flood. + * + * There are at least two known causes. Firstly, on some boards, the + * I2CSerialBus resource index does not match the Interrupt resource, i.e. they + * are not one-to-one mapped like in the array below. Secondly, on some boards + * the IRQ line from the PD controller is not actually connected at all. But the + * interrupt flood is also seen on some boards where those are not a problem, so + * there are some other problems as well. + * + * Because of the issues with the interrupt, the device is disabled for now. If + * you wish to debug the issues, uncomment the below, and add an entry for the + * INT3515 device to the i2c_multi_instance_ids table. + * + * static const struct i2c_inst_data int3515_data[] = { + * { "tps6598x", IRQ_RESOURCE_APIC, 0 }, + * { "tps6598x", IRQ_RESOURCE_APIC, 1 }, + * { "tps6598x", IRQ_RESOURCE_APIC, 2 }, + * { "tps6598x", IRQ_RESOURCE_APIC, 3 }, + * { } + * }; + */ /* * Note new device-ids must also be added to i2c_multi_instantiate_ids in @@ -181,7 +197,6 @@ static const struct acpi_device_id i2c_multi_inst_acpi_ids[] = { { "BSG1160", (unsigned long)bsg1160_data }, { "BSG2150", (unsigned long)bsg2150_data }, - { "INT3515", (unsigned long)int3515_data }, { } }; MODULE_DEVICE_TABLE(acpi, i2c_multi_inst_acpi_ids); --- linux-azure-5.8-5.8.0.orig/drivers/platform/x86/ideapad-laptop.c +++ linux-azure-5.8-5.8.0/drivers/platform/x86/ideapad-laptop.c @@ -92,6 +92,7 @@ struct dentry *debug; unsigned long cfg; bool has_hw_rfkill_switch; + bool has_touchpad_switch; const char *fnesc_guid; }; @@ -535,7 +536,9 @@ } else if (attr == &dev_attr_fn_lock.attr) { supported = acpi_has_method(priv->adev->handle, "HALS") && acpi_has_method(priv->adev->handle, "SALS"); - } else + } else if (attr == &dev_attr_touchpad.attr) + supported = priv->has_touchpad_switch; + else supported = true; return supported ? attr->mode : 0; @@ -867,6 +870,9 @@ { unsigned long value; + if (!priv->has_touchpad_switch) + return; + /* Without reading from EC touchpad LED doesn't switch state */ if (!read_ec_data(priv->adev->handle, VPCCMD_R_TOUCHPAD, &value)) { /* Some IdeaPads don't really turn off touchpad - they only @@ -989,6 +995,9 @@ priv->platform_device = pdev; priv->has_hw_rfkill_switch = dmi_check_system(hw_rfkill_list); + /* Most ideapads with ELAN0634 touchpad don't use EC touchpad switch */ + priv->has_touchpad_switch = !acpi_dev_present("ELAN0634", NULL, -1); + ret = ideapad_sysfs_init(priv); if (ret) return ret; @@ -1006,6 +1015,10 @@ if (!priv->has_hw_rfkill_switch) write_ec_cmd(priv->adev->handle, VPCCMD_W_RF, 1); + /* The same for Touchpad */ + if (!priv->has_touchpad_switch) + write_ec_cmd(priv->adev->handle, VPCCMD_W_TOUCHPAD, 1); + for (i = 0; i < IDEAPAD_RFKILL_DEV_NUM; i++) if (test_bit(ideapad_rfk_data[i].cfgbit, &priv->cfg)) ideapad_register_rfkill(priv, i); --- linux-azure-5.8-5.8.0.orig/drivers/platform/x86/intel-hid.c +++ linux-azure-5.8-5.8.0/drivers/platform/x86/intel-hid.c @@ -21,6 +21,7 @@ static const struct acpi_device_id intel_hid_ids[] = { {"INT33D5", 0}, {"INTC1051", 0}, + {"INTC1054", 0}, {"", 0}, }; MODULE_DEVICE_TABLE(acpi, intel_hid_ids); @@ -571,7 +572,7 @@ return AE_OK; if (acpi_match_device_ids(dev, ids) == 0) - if (acpi_create_platform_device(dev, NULL)) + if (!IS_ERR_OR_NULL(acpi_create_platform_device(dev, NULL))) dev_info(&dev->dev, "intel-hid: created platform device\n"); --- linux-azure-5.8-5.8.0.orig/drivers/platform/x86/intel-vbtn.c +++ linux-azure-5.8-5.8.0/drivers/platform/x86/intel-vbtn.c @@ -15,9 +15,13 @@ #include #include +/* Returned when NOT in tablet mode on some HP Stream x360 11 models */ +#define VGBS_TABLET_MODE_FLAG_ALT 0x10 /* When NOT in tablet mode, VGBS returns with the flag 0x40 */ -#define TABLET_MODE_FLAG 0x40 -#define DOCK_MODE_FLAG 0x80 +#define VGBS_TABLET_MODE_FLAG 0x40 +#define VGBS_DOCK_MODE_FLAG 0x80 + +#define VGBS_TABLET_MODE_FLAGS (VGBS_TABLET_MODE_FLAG | VGBS_TABLET_MODE_FLAG_ALT) MODULE_LICENSE("GPL"); MODULE_AUTHOR("AceLan Kao"); @@ -72,9 +76,9 @@ if (ACPI_FAILURE(status)) return; - m = !(vgbs & TABLET_MODE_FLAG); + m = !(vgbs & VGBS_TABLET_MODE_FLAGS); input_report_switch(priv->input_dev, SW_TABLET_MODE, m); - m = (vgbs & DOCK_MODE_FLAG) ? 1 : 0; + m = (vgbs & VGBS_DOCK_MODE_FLAG) ? 1 : 0; input_report_switch(priv->input_dev, SW_DOCK, m); } @@ -167,20 +171,66 @@ return ACPI_SUCCESS(status); } +/* + * There are several laptops (non 2-in-1) models out there which support VGBS, + * but simply always return 0, which we translate to SW_TABLET_MODE=1. This in + * turn causes userspace (libinput) to suppress events from the builtin + * keyboard and touchpad, making the laptop essentially unusable. + * + * Since the problem of wrongly reporting SW_TABLET_MODE=1 in combination + * with libinput, leads to a non-usable system. Where as OTOH many people will + * not even notice when SW_TABLET_MODE is not being reported, a DMI based allow + * list is used here. This list mainly matches on the chassis-type of 2-in-1s. + * + * There are also some 2-in-1s which use the intel-vbtn ACPI interface to report + * SW_TABLET_MODE with a chassis-type of 8 ("Portable") or 10 ("Notebook"), + * these are matched on a per model basis, since many normal laptops with a + * possible broken VGBS ACPI-method also use these chassis-types. + */ +static const struct dmi_system_id dmi_switches_allow_list[] = { + { + .matches = { + DMI_EXACT_MATCH(DMI_CHASSIS_TYPE, "31" /* Convertible */), + }, + }, + { + .matches = { + DMI_EXACT_MATCH(DMI_CHASSIS_TYPE, "32" /* Detachable */), + }, + }, + { + .matches = { + DMI_MATCH(DMI_SYS_VENDOR, "Dell Inc."), + DMI_MATCH(DMI_PRODUCT_NAME, "Venue 11 Pro 7130"), + }, + }, + { + .matches = { + DMI_MATCH(DMI_SYS_VENDOR, "Hewlett-Packard"), + DMI_MATCH(DMI_PRODUCT_NAME, "HP Pavilion 13 x360 PC"), + }, + }, + { + .matches = { + DMI_MATCH(DMI_SYS_VENDOR, "Acer"), + DMI_MATCH(DMI_PRODUCT_NAME, "Switch SA5-271"), + }, + }, + { + .matches = { + DMI_MATCH(DMI_SYS_VENDOR, "Dell Inc."), + DMI_MATCH(DMI_PRODUCT_NAME, "Inspiron 7352"), + }, + }, + {} /* Array terminator */ +}; + static bool intel_vbtn_has_switches(acpi_handle handle) { - const char *chassis_type = dmi_get_system_info(DMI_CHASSIS_TYPE); unsigned long long vgbs; acpi_status status; - /* - * Some normal laptops have a VGBS method despite being non-convertible - * and their VGBS method always returns 0, causing detect_tablet_mode() - * to report SW_TABLET_MODE=1 to userspace, which causes issues. - * These laptops have a DMI chassis_type of 9 ("Laptop"), do not report - * switches on any devices with a DMI chassis_type of 9. - */ - if (chassis_type && strcmp(chassis_type, "9") == 0) + if (!dmi_check_system(dmi_switches_allow_list)) return false; status = acpi_evaluate_integer(handle, "VGBS", NULL, &vgbs); @@ -299,7 +349,7 @@ return AE_OK; if (acpi_match_device_ids(dev, ids) == 0) - if (acpi_create_platform_device(dev, NULL)) + if (!IS_ERR_OR_NULL(acpi_create_platform_device(dev, NULL))) dev_info(&dev->dev, "intel-vbtn: created platform device\n"); --- linux-azure-5.8-5.8.0.orig/drivers/platform/x86/intel_ips.c +++ linux-azure-5.8-5.8.0/drivers/platform/x86/intel_ips.c @@ -1432,6 +1432,14 @@ DMI_MATCH(DMI_PRODUCT_NAME, "HP ProBook"), }, }, + { + .callback = ips_blacklist_callback, + .ident = "G60JX", + .matches = { + DMI_MATCH(DMI_SYS_VENDOR, "ASUSTeK Computer Inc."), + DMI_MATCH(DMI_PRODUCT_NAME, "G60JX"), + }, + }, { } /* terminating entry */ }; --- linux-azure-5.8-5.8.0.orig/drivers/platform/x86/intel_pmc_core.c +++ linux-azure-5.8-5.8.0/drivers/platform/x86/intel_pmc_core.c @@ -154,6 +154,7 @@ .ltr_show_sts = spt_ltr_show_map, .msr_sts = msr_map, .slp_s0_offset = SPT_PMC_SLP_S0_RES_COUNTER_OFFSET, + .slp_s0_res_counter_step = SPT_PMC_SLP_S0_RES_COUNTER_STEP, .ltr_ignore_offset = SPT_PMC_LTR_IGNORE_OFFSET, .regmap_length = SPT_PMC_MMIO_REG_LEN, .ppfear0_offset = SPT_PMC_XRAM_PPFEAR0A, @@ -380,6 +381,7 @@ static const struct pmc_reg_map cnp_reg_map = { .pfear_sts = ext_cnp_pfear_map, .slp_s0_offset = CNP_PMC_SLP_S0_RES_COUNTER_OFFSET, + .slp_s0_res_counter_step = SPT_PMC_SLP_S0_RES_COUNTER_STEP, .slps0_dbg_maps = cnp_slps0_dbg_maps, .ltr_show_sts = cnp_ltr_show_map, .msr_sts = msr_map, @@ -396,6 +398,7 @@ static const struct pmc_reg_map icl_reg_map = { .pfear_sts = ext_icl_pfear_map, .slp_s0_offset = CNP_PMC_SLP_S0_RES_COUNTER_OFFSET, + .slp_s0_res_counter_step = ICL_PMC_SLP_S0_RES_COUNTER_STEP, .slps0_dbg_maps = cnp_slps0_dbg_maps, .ltr_show_sts = cnp_ltr_show_map, .msr_sts = msr_map, @@ -409,13 +412,13 @@ .ltr_ignore_max = ICL_NUM_IP_IGN_ALLOWED, }; -static const struct pmc_bit_map tgl_lpm0_map[] = { +static const struct pmc_bit_map tgl_clocksource_status_map[] = { {"USB2PLL_OFF_STS", BIT(18)}, {"PCIe/USB3.1_Gen2PLL_OFF_STS", BIT(19)}, {"PCIe_Gen3PLL_OFF_STS", BIT(20)}, {"OPIOPLL_OFF_STS", BIT(21)}, {"OCPLL_OFF_STS", BIT(22)}, - {"AudioPLL_OFF_STS", BIT(23)}, + {"MainPLL_OFF_STS", BIT(23)}, {"MIPIPLL_OFF_STS", BIT(24)}, {"Fast_XTAL_Osc_OFF_STS", BIT(25)}, {"AC_Ring_Osc_OFF_STS", BIT(26)}, @@ -425,35 +428,35 @@ {} }; -static const struct pmc_bit_map tgl_lpm1_map[] = { - {"SPI_PG_STS", BIT(2)}, - {"xHCI_PG_STS", BIT(3)}, - {"PCIe_Ctrller_A_PG_STS", BIT(4)}, - {"PCIe_Ctrller_B_PG_STS", BIT(5)}, - {"PCIe_Ctrller_C_PG_STS", BIT(6)}, - {"GBE_PG_STS", BIT(7)}, - {"SATA_PG_STS", BIT(8)}, - {"HDA0_PG_STS", BIT(9)}, - {"HDA1_PG_STS", BIT(10)}, - {"HDA2_PG_STS", BIT(11)}, - {"HDA3_PG_STS", BIT(12)}, - {"PCIe_Ctrller_D_PG_STS", BIT(13)}, - {"ISIO_PG_STS", BIT(14)}, - {"SMB_PG_STS", BIT(16)}, - {"ISH_PG_STS", BIT(17)}, - {"ITH_PG_STS", BIT(19)}, - {"SDX_PG_STS", BIT(20)}, - {"xDCI_PG_STS", BIT(25)}, - {"DCI_PG_STS", BIT(26)}, - {"CSME0_PG_STS", BIT(27)}, - {"CSME_KVM_PG_STS", BIT(28)}, - {"CSME1_PG_STS", BIT(29)}, - {"CSME_CLINK_PG_STS", BIT(30)}, - {"CSME2_PG_STS", BIT(31)}, +static const struct pmc_bit_map tgl_power_gating_status_map[] = { + {"CSME_PG_STS", BIT(0)}, + {"SATA_PG_STS", BIT(1)}, + {"xHCI_PG_STS", BIT(2)}, + {"UFSX2_PG_STS", BIT(3)}, + {"OTG_PG_STS", BIT(5)}, + {"SPA_PG_STS", BIT(6)}, + {"SPB_PG_STS", BIT(7)}, + {"SPC_PG_STS", BIT(8)}, + {"SPD_PG_STS", BIT(9)}, + {"SPE_PG_STS", BIT(10)}, + {"SPF_PG_STS", BIT(11)}, + {"LSX_PG_STS", BIT(13)}, + {"P2SB_PG_STS", BIT(14)}, + {"PSF_PG_STS", BIT(15)}, + {"SBR_PG_STS", BIT(16)}, + {"OPIDMI_PG_STS", BIT(17)}, + {"THC0_PG_STS", BIT(18)}, + {"THC1_PG_STS", BIT(19)}, + {"GBETSN_PG_STS", BIT(20)}, + {"GBE_PG_STS", BIT(21)}, + {"LPSS_PG_STS", BIT(22)}, + {"MMP_UFSX2_PG_STS", BIT(23)}, + {"MMP_UFSX2B_PG_STS", BIT(24)}, + {"FIA_PG_STS", BIT(25)}, {} }; -static const struct pmc_bit_map tgl_lpm2_map[] = { +static const struct pmc_bit_map tgl_d3_status_map[] = { {"ADSP_D3_STS", BIT(0)}, {"SATA_D3_STS", BIT(1)}, {"xHCI0_D3_STS", BIT(2)}, @@ -468,7 +471,7 @@ {} }; -static const struct pmc_bit_map tgl_lpm3_map[] = { +static const struct pmc_bit_map tgl_vnn_req_status_map[] = { {"GPIO_COM0_VNN_REQ_STS", BIT(1)}, {"GPIO_COM1_VNN_REQ_STS", BIT(2)}, {"GPIO_COM2_VNN_REQ_STS", BIT(3)}, @@ -493,7 +496,7 @@ {} }; -static const struct pmc_bit_map tgl_lpm4_map[] = { +static const struct pmc_bit_map tgl_vnn_misc_status_map[] = { {"CPU_C10_REQ_STS_0", BIT(0)}, {"PCIe_LPM_En_REQ_STS_3", BIT(3)}, {"ITH_REQ_STS_5", BIT(5)}, @@ -509,7 +512,7 @@ {} }; -static const struct pmc_bit_map tgl_lpm5_map[] = { +static const struct pmc_bit_map tgl_signal_status_map[] = { {"LSX_Wake0_En_STS", BIT(0)}, {"LSX_Wake0_Pol_STS", BIT(1)}, {"LSX_Wake1_En_STS", BIT(2)}, @@ -546,18 +549,19 @@ }; static const struct pmc_bit_map *tgl_lpm_maps[] = { - tgl_lpm0_map, - tgl_lpm1_map, - tgl_lpm2_map, - tgl_lpm3_map, - tgl_lpm4_map, - tgl_lpm5_map, + tgl_clocksource_status_map, + tgl_power_gating_status_map, + tgl_d3_status_map, + tgl_vnn_req_status_map, + tgl_vnn_misc_status_map, + tgl_signal_status_map, NULL }; static const struct pmc_reg_map tgl_reg_map = { .pfear_sts = ext_tgl_pfear_map, .slp_s0_offset = CNP_PMC_SLP_S0_RES_COUNTER_OFFSET, + .slp_s0_res_counter_step = TGL_PMC_SLP_S0_RES_COUNTER_STEP, .ltr_show_sts = cnp_ltr_show_map, .msr_sts = msr_map, .ltr_ignore_offset = CNP_PMC_LTR_IGNORE_OFFSET, @@ -586,9 +590,9 @@ writel(val, pmcdev->regbase + reg_offset); } -static inline u64 pmc_core_adjust_slp_s0_step(u32 value) +static inline u64 pmc_core_adjust_slp_s0_step(struct pmc_dev *pmcdev, u32 value) { - return (u64)value * SPT_PMC_SLP_S0_RES_COUNTER_STEP; + return (u64)value * pmcdev->map->slp_s0_res_counter_step; } static int pmc_core_dev_state_get(void *data, u64 *val) @@ -598,7 +602,7 @@ u32 value; value = pmc_core_reg_read(pmcdev, map->slp_s0_offset); - *val = pmc_core_adjust_slp_s0_step(value); + *val = pmc_core_adjust_slp_s0_step(pmcdev, value); return 0; } @@ -795,7 +799,7 @@ msleep(10); val_high = pmc_core_reg_read(pmcdev, SPT_PMC_MFPMC_OFFSET); - for (index = 0; map[index].name && index < 8; index++) { + for (index = 0; index < 8 && map[index].name; index++) { seq_printf(s, "%-32s\tState: %s\n", map[index].name, map[index].bit_mask & val_low ? "Not power gated" : --- linux-azure-5.8-5.8.0.orig/drivers/platform/x86/intel_pmc_core.h +++ linux-azure-5.8-5.8.0/drivers/platform/x86/intel_pmc_core.h @@ -30,7 +30,7 @@ #define SPT_PMC_MPHY_CORE_STS_1 0x1142 #define SPT_PMC_MPHY_COM_STS_0 0x1155 #define SPT_PMC_MMIO_REG_LEN 0x1000 -#define SPT_PMC_SLP_S0_RES_COUNTER_STEP 0x64 +#define SPT_PMC_SLP_S0_RES_COUNTER_STEP 0x68 #define PMC_BASE_ADDR_MASK ~(SPT_PMC_MMIO_REG_LEN - 1) #define MTPMC_MASK 0xffff0000 #define PPFEAR_MAX_NUM_ENTRIES 12 @@ -185,8 +185,10 @@ #define ICL_PPFEAR_NUM_ENTRIES 9 #define ICL_NUM_IP_IGN_ALLOWED 20 #define ICL_PMC_LTR_WIGIG 0x1BFC +#define ICL_PMC_SLP_S0_RES_COUNTER_STEP 0x64 #define TGL_NUM_IP_IGN_ALLOWED 22 +#define TGL_PMC_SLP_S0_RES_COUNTER_STEP 0x7A /* * Tigerlake Power Management Controller register offsets @@ -245,6 +247,7 @@ const struct pmc_bit_map *msr_sts; const struct pmc_bit_map **lpm_sts; const u32 slp_s0_offset; + const int slp_s0_res_counter_step; const u32 ltr_ignore_offset; const int regmap_length; const u32 ppfear0_offset; --- linux-azure-5.8-5.8.0.orig/drivers/platform/x86/mlx-platform.c +++ linux-azure-5.8-5.8.0/drivers/platform/x86/mlx-platform.c @@ -310,24 +310,6 @@ }; /* Platform hotplug devices */ -static struct i2c_board_info mlxplat_mlxcpld_psu[] = { - { - I2C_BOARD_INFO("24c02", 0x51), - }, - { - I2C_BOARD_INFO("24c02", 0x50), - }, -}; - -static struct i2c_board_info mlxplat_mlxcpld_ng_psu[] = { - { - I2C_BOARD_INFO("24c32", 0x51), - }, - { - I2C_BOARD_INFO("24c32", 0x50), - }, -}; - static struct i2c_board_info mlxplat_mlxcpld_pwr[] = { { I2C_BOARD_INFO("dps460", 0x59), @@ -374,15 +356,13 @@ .label = "psu1", .reg = MLXPLAT_CPLD_LPC_REG_PSU_OFFSET, .mask = BIT(0), - .hpdev.brdinfo = &mlxplat_mlxcpld_psu[0], - .hpdev.nr = MLXPLAT_CPLD_PSU_DEFAULT_NR, + .hpdev.nr = MLXPLAT_CPLD_NR_NONE, }, { .label = "psu2", .reg = MLXPLAT_CPLD_LPC_REG_PSU_OFFSET, .mask = BIT(1), - .hpdev.brdinfo = &mlxplat_mlxcpld_psu[1], - .hpdev.nr = MLXPLAT_CPLD_PSU_DEFAULT_NR, + .hpdev.nr = MLXPLAT_CPLD_NR_NONE, }, }; @@ -449,7 +429,7 @@ .aggr_mask = MLXPLAT_CPLD_AGGR_PSU_MASK_DEF, .reg = MLXPLAT_CPLD_LPC_REG_PSU_OFFSET, .mask = MLXPLAT_CPLD_PSU_MASK, - .count = ARRAY_SIZE(mlxplat_mlxcpld_psu), + .count = ARRAY_SIZE(mlxplat_mlxcpld_default_psu_items_data), .inversed = 1, .health = false, }, @@ -458,7 +438,7 @@ .aggr_mask = MLXPLAT_CPLD_AGGR_PWR_MASK_DEF, .reg = MLXPLAT_CPLD_LPC_REG_PWR_OFFSET, .mask = MLXPLAT_CPLD_PWR_MASK, - .count = ARRAY_SIZE(mlxplat_mlxcpld_pwr), + .count = ARRAY_SIZE(mlxplat_mlxcpld_default_pwr_items_data), .inversed = 0, .health = false, }, @@ -467,7 +447,7 @@ .aggr_mask = MLXPLAT_CPLD_AGGR_FAN_MASK_DEF, .reg = MLXPLAT_CPLD_LPC_REG_FAN_OFFSET, .mask = MLXPLAT_CPLD_FAN_MASK, - .count = ARRAY_SIZE(mlxplat_mlxcpld_fan), + .count = ARRAY_SIZE(mlxplat_mlxcpld_default_fan_items_data), .inversed = 1, .health = false, }, @@ -488,7 +468,7 @@ .aggr_mask = MLXPLAT_CPLD_AGGR_MASK_CARRIER, .reg = MLXPLAT_CPLD_LPC_REG_PSU_OFFSET, .mask = MLXPLAT_CPLD_PSU_MASK, - .count = ARRAY_SIZE(mlxplat_mlxcpld_psu), + .count = ARRAY_SIZE(mlxplat_mlxcpld_default_psu_items_data), .inversed = 1, .health = false, }, @@ -497,7 +477,7 @@ .aggr_mask = MLXPLAT_CPLD_AGGR_MASK_CARRIER, .reg = MLXPLAT_CPLD_LPC_REG_PWR_OFFSET, .mask = MLXPLAT_CPLD_PWR_MASK, - .count = ARRAY_SIZE(mlxplat_mlxcpld_pwr), + .count = ARRAY_SIZE(mlxplat_mlxcpld_default_pwr_items_data), .inversed = 0, .health = false, }, @@ -506,7 +486,7 @@ .aggr_mask = MLXPLAT_CPLD_AGGR_MASK_CARRIER, .reg = MLXPLAT_CPLD_LPC_REG_FAN_OFFSET, .mask = MLXPLAT_CPLD_FAN_MASK, - .count = ARRAY_SIZE(mlxplat_mlxcpld_fan), + .count = ARRAY_SIZE(mlxplat_mlxcpld_default_fan_items_data), .inversed = 1, .health = false, }, @@ -594,15 +574,13 @@ .label = "psu1", .reg = MLXPLAT_CPLD_LPC_REG_PSU_OFFSET, .mask = BIT(0), - .hpdev.brdinfo = &mlxplat_mlxcpld_psu[0], - .hpdev.nr = MLXPLAT_CPLD_PSU_MSNXXXX_NR, + .hpdev.nr = MLXPLAT_CPLD_NR_NONE, }, { .label = "psu2", .reg = MLXPLAT_CPLD_LPC_REG_PSU_OFFSET, .mask = BIT(1), - .hpdev.brdinfo = &mlxplat_mlxcpld_psu[1], - .hpdev.nr = MLXPLAT_CPLD_PSU_MSNXXXX_NR, + .hpdev.nr = MLXPLAT_CPLD_NR_NONE, }, }; @@ -752,15 +730,13 @@ .label = "psu1", .reg = MLXPLAT_CPLD_LPC_REG_PSU_OFFSET, .mask = BIT(0), - .hpdev.brdinfo = &mlxplat_mlxcpld_ng_psu[0], - .hpdev.nr = MLXPLAT_CPLD_PSU_MSNXXXX_NR, + .hpdev.nr = MLXPLAT_CPLD_NR_NONE, }, { .label = "psu2", .reg = MLXPLAT_CPLD_LPC_REG_PSU_OFFSET, .mask = BIT(1), - .hpdev.brdinfo = &mlxplat_mlxcpld_ng_psu[1], - .hpdev.nr = MLXPLAT_CPLD_PSU_MSNXXXX_NR, + .hpdev.nr = MLXPLAT_CPLD_NR_NONE, }, }; --- linux-azure-5.8-5.8.0.orig/drivers/platform/x86/thinkpad_acpi.c +++ linux-azure-5.8-5.8.0/drivers/platform/x86/thinkpad_acpi.c @@ -2569,7 +2569,7 @@ */ static int hotkey_kthread(void *data) { - struct tp_nvram_state s[2]; + struct tp_nvram_state s[2] = { 0 }; u32 poll_mask, event_mask; unsigned int si, so; unsigned long t; @@ -3214,7 +3214,14 @@ in_tablet_mode = hotkey_gmms_get_tablet_mode(res, &has_tablet_mode); - if (has_tablet_mode) + /* + * The Yoga 11e series has 2 accelerometers described by a + * BOSC0200 ACPI node. This setup relies on a Windows service + * which calls special ACPI methods on this node to report + * the laptop/tent/tablet mode to the EC. The bmc150 iio driver + * does not support this, so skip the hotkey on these models. + */ + if (has_tablet_mode && !acpi_dev_present("BOSC0200", "1", -1)) tp_features.hotkey_tablet = TP_HOTKEY_TABLET_USES_GMMS; type = "GMMS"; } else if (acpi_evalf(hkey_handle, &res, "MHKG", "qd")) { @@ -4220,6 +4227,7 @@ pr_err("error while attempting to reset the event firmware interface\n"); tpacpi_send_radiosw_update(); + tpacpi_input_send_tabletsw(); hotkey_tablet_mode_notify_change(); hotkey_wakeup_reason_notify_change(); hotkey_wakeup_hotunplug_complete_notify_change(); @@ -6829,8 +6837,10 @@ list_for_each_entry(child, &device->children, node) { acpi_status status = acpi_evaluate_object(child->handle, "_BCL", NULL, &buffer); - if (ACPI_FAILURE(status)) + if (ACPI_FAILURE(status)) { + buffer.length = ACPI_ALLOCATE_BUFFER; continue; + } obj = (union acpi_object *)buffer.pointer; if (!obj || (obj->type != ACPI_TYPE_PACKAGE)) { @@ -6963,10 +6973,13 @@ pr_warn("Cannot enable backlight brightness support, ACPI is already handling it. Refer to the acpi_backlight kernel parameter.\n"); return 1; } - } else if (tp_features.bright_acpimode && brightness_enable > 1) { - pr_notice("Standard ACPI backlight interface not available, thinkpad_acpi native brightness control enabled\n"); + } else if (!tp_features.bright_acpimode) { + pr_notice("ACPI backlight interface not available\n"); + return 1; } + pr_notice("ACPI native brightness control enabled\n"); + /* * Check for module parameter bogosity, note that we * init brightness_mode to TPACPI_BRGHT_MODE_MAX in order to be @@ -8761,8 +8774,11 @@ TPACPI_Q_LNV3('N', '1', 'T', TPACPI_FAN_2CTL), /* P71 */ TPACPI_Q_LNV3('N', '1', 'U', TPACPI_FAN_2CTL), /* P51 */ TPACPI_Q_LNV3('N', '2', 'C', TPACPI_FAN_2CTL), /* P52 / P72 */ + TPACPI_Q_LNV3('N', '2', 'N', TPACPI_FAN_2CTL), /* P53 / P73 */ TPACPI_Q_LNV3('N', '2', 'E', TPACPI_FAN_2CTL), /* P1 / X1 Extreme (1st gen) */ TPACPI_Q_LNV3('N', '2', 'O', TPACPI_FAN_2CTL), /* P1 / X1 Extreme (2nd gen) */ + TPACPI_Q_LNV3('N', '2', 'V', TPACPI_FAN_2CTL), /* P1 / X1 Extreme (3nd gen) */ + TPACPI_Q_LNV3('N', '3', '0', TPACPI_FAN_2CTL), /* P15 (1st gen) / P15v (1st gen) */ }; static int __init fan_init(struct ibm_init_struct *iibm) @@ -9679,6 +9695,7 @@ TPACPI_Q_LNV3('R', '0', 'B', true), /* Thinkpad 11e gen 3 */ TPACPI_Q_LNV3('R', '0', 'C', true), /* Thinkpad 13 */ TPACPI_Q_LNV3('R', '0', 'J', true), /* Thinkpad 13 gen 2 */ + TPACPI_Q_LNV3('R', '0', 'K', true), /* Thinkpad 11e gen 4 celeron BIOS */ }; static int __init tpacpi_battery_init(struct ibm_init_struct *ibm) --- linux-azure-5.8-5.8.0.orig/drivers/platform/x86/toshiba_acpi.c +++ linux-azure-5.8-5.8.0/drivers/platform/x86/toshiba_acpi.c @@ -1478,7 +1478,7 @@ struct toshiba_acpi_dev *dev = PDE_DATA(file_inode(file)); char *buffer; char *cmd; - int lcd_out, crt_out, tv_out; + int lcd_out = -1, crt_out = -1, tv_out = -1; int remain = count; int value; int ret; @@ -1510,7 +1510,6 @@ kfree(cmd); - lcd_out = crt_out = tv_out = -1; ret = get_video_status(dev, &video_out); if (!ret) { unsigned int new_video_out = video_out; --- linux-azure-5.8-5.8.0.orig/drivers/platform/x86/touchscreen_dmi.c +++ linux-azure-5.8-5.8.0/drivers/platform/x86/touchscreen_dmi.c @@ -263,6 +263,16 @@ .properties = digma_citi_e200_props, }; +static const struct property_entry estar_beauty_hd_props[] = { + PROPERTY_ENTRY_BOOL("touchscreen-swapped-x-y"), + { } +}; + +static const struct ts_dmi_data estar_beauty_hd_data = { + .acpi_name = "GDIX1001:00", + .properties = estar_beauty_hd_props, +}; + static const struct property_entry gp_electronic_t701_props[] = { PROPERTY_ENTRY_U32("touchscreen-size-x", 960), PROPERTY_ENTRY_U32("touchscreen-size-y", 640), @@ -295,6 +305,21 @@ .properties = irbis_tw90_props, }; +static const struct property_entry irbis_tw118_props[] = { + PROPERTY_ENTRY_U32("touchscreen-min-x", 20), + PROPERTY_ENTRY_U32("touchscreen-min-y", 30), + PROPERTY_ENTRY_U32("touchscreen-size-x", 1960), + PROPERTY_ENTRY_U32("touchscreen-size-y", 1510), + PROPERTY_ENTRY_STRING("firmware-name", "gsl1680-irbis-tw118.fw"), + PROPERTY_ENTRY_U32("silead,max-fingers", 10), + { } +}; + +static const struct ts_dmi_data irbis_tw118_data = { + .acpi_name = "MSSL1680:00", + .properties = irbis_tw118_props, +}; + static const struct property_entry itworks_tw891_props[] = { PROPERTY_ENTRY_U32("touchscreen-min-x", 1), PROPERTY_ENTRY_U32("touchscreen-min-y", 5), @@ -606,6 +631,23 @@ .properties = pov_mobii_wintab_p1006w_v10_props, }; +static const struct property_entry predia_basic_props[] = { + PROPERTY_ENTRY_U32("touchscreen-min-x", 3), + PROPERTY_ENTRY_U32("touchscreen-min-y", 10), + PROPERTY_ENTRY_U32("touchscreen-size-x", 1728), + PROPERTY_ENTRY_U32("touchscreen-size-y", 1144), + PROPERTY_ENTRY_BOOL("touchscreen-swapped-x-y"), + PROPERTY_ENTRY_STRING("firmware-name", "gsl3680-predia-basic.fw"), + PROPERTY_ENTRY_U32("silead,max-fingers", 10), + PROPERTY_ENTRY_BOOL("silead,home-button"), + { } +}; + +static const struct ts_dmi_data predia_basic_data = { + .acpi_name = "MSSL1680:00", + .properties = predia_basic_props, +}; + static const struct property_entry schneider_sct101ctm_props[] = { PROPERTY_ENTRY_U32("touchscreen-size-x", 1715), PROPERTY_ENTRY_U32("touchscreen-size-y", 1140), @@ -894,6 +936,14 @@ }, }, { + /* Estar Beauty HD (MID 7316R) */ + .driver_data = (void *)&estar_beauty_hd_data, + .matches = { + DMI_MATCH(DMI_SYS_VENDOR, "Estar"), + DMI_MATCH(DMI_PRODUCT_NAME, "eSTAR BEAUTY HD Intel Quad core"), + }, + }, + { /* GP-electronic T701 */ .driver_data = (void *)&gp_electronic_t701_data, .matches = { @@ -920,6 +970,14 @@ }, }, { + /* Irbis TW118 */ + .driver_data = (void *)&irbis_tw118_data, + .matches = { + DMI_MATCH(DMI_SYS_VENDOR, "IRBIS"), + DMI_MATCH(DMI_PRODUCT_NAME, "TW118"), + }, + }, + { /* I.T.Works TW891 */ .driver_data = (void *)&itworks_tw891_data, .matches = { @@ -1085,6 +1143,16 @@ }, }, { + /* Predia Basic tablet) */ + .driver_data = (void *)&predia_basic_data, + .matches = { + DMI_MATCH(DMI_SYS_VENDOR, "Insyde"), + DMI_MATCH(DMI_PRODUCT_NAME, "CherryTrail"), + /* Above matches are too generic, add bios-version match */ + DMI_MATCH(DMI_BIOS_VERSION, "Mx.WT107.KUBNGEA"), + }, + }, + { /* Point of View mobii wintab p800w (v2.1) */ .driver_data = (void *)&pov_mobii_wintab_p800w_v21_data, .matches = { --- linux-azure-5.8-5.8.0.orig/drivers/pnp/isapnp/core.c +++ linux-azure-5.8-5.8.0/drivers/pnp/isapnp/core.c @@ -27,6 +27,7 @@ #include #include #include +#include #include #include "../base.h" @@ -950,7 +951,7 @@ .disable = isapnp_disable_resources, }; -static int __init isapnp_init(void) +static int __init real_isapnp_init(void) { int cards; struct pnp_card *card; @@ -1044,6 +1045,16 @@ return 0; } +static void __init async_isapnp_init(void *unused, async_cookie_t cookie) +{ + (void)real_isapnp_init(); +} + +static int __init isapnp_init(void) +{ + async_schedule(async_isapnp_init, NULL); + return 0; +} device_initcall(isapnp_init); /* format is: noisapnp */ --- linux-azure-5.8-5.8.0.orig/drivers/power/reset/at91-sama5d2_shdwc.c +++ linux-azure-5.8-5.8.0/drivers/power/reset/at91-sama5d2_shdwc.c @@ -37,7 +37,7 @@ #define AT91_SHDW_MR 0x04 /* Shut Down Mode Register */ #define AT91_SHDW_WKUPDBC_SHIFT 24 -#define AT91_SHDW_WKUPDBC_MASK GENMASK(31, 16) +#define AT91_SHDW_WKUPDBC_MASK GENMASK(26, 24) #define AT91_SHDW_WKUPDBC(x) (((x) << AT91_SHDW_WKUPDBC_SHIFT) \ & AT91_SHDW_WKUPDBC_MASK) --- linux-azure-5.8-5.8.0.orig/drivers/power/supply/88pm860x_battery.c +++ linux-azure-5.8-5.8.0/drivers/power/supply/88pm860x_battery.c @@ -433,7 +433,7 @@ int ret; int data; int bat_remove; - int soc; + int soc = 0; /* measure enable on GPADC1 */ data = MEAS1_GP1; @@ -496,7 +496,9 @@ } mutex_unlock(&info->lock); - calc_soc(info, OCV_MODE_ACTIVE, &soc); + ret = calc_soc(info, OCV_MODE_ACTIVE, &soc); + if (ret < 0) + goto out; data = pm860x_reg_read(info->i2c, PM8607_POWER_UP_LOG); bat_remove = data & BAT_WU_LOG; --- linux-azure-5.8-5.8.0.orig/drivers/power/supply/Kconfig +++ linux-azure-5.8-5.8.0/drivers/power/supply/Kconfig @@ -229,6 +229,7 @@ config CHARGER_SBS tristate "SBS Compliant charger" depends on I2C + select REGMAP_I2C help Say Y to include support for SBS compliant battery chargers. --- linux-azure-5.8-5.8.0.orig/drivers/power/supply/axp20x_usb_power.c +++ linux-azure-5.8-5.8.0/drivers/power/supply/axp20x_usb_power.c @@ -593,6 +593,7 @@ power->axp20x_id = axp_data->axp20x_id; power->regmap = axp20x->regmap; power->num_irqs = axp_data->num_irq_names; + INIT_DELAYED_WORK(&power->vbus_detect, axp20x_usb_power_poll_vbus); if (power->axp20x_id == AXP202_ID) { /* Enable vbus valid checking */ @@ -645,7 +646,6 @@ } } - INIT_DELAYED_WORK(&power->vbus_detect, axp20x_usb_power_poll_vbus); if (axp20x_usb_vbus_needs_polling(power)) queue_delayed_work(system_wq, &power->vbus_detect, 0); --- linux-azure-5.8-5.8.0.orig/drivers/power/supply/axp288_charger.c +++ linux-azure-5.8-5.8.0/drivers/power/supply/axp288_charger.c @@ -548,14 +548,15 @@ /* * The HP Pavilion x2 10 series comes in a number of variants: - * Bay Trail SoC + AXP288 PMIC, DMI_BOARD_NAME: "815D" - * Cherry Trail SoC + AXP288 PMIC, DMI_BOARD_NAME: "813E" - * Cherry Trail SoC + TI PMIC, DMI_BOARD_NAME: "827C" or "82F4" + * Bay Trail SoC + AXP288 PMIC, Micro-USB, DMI_BOARD_NAME: "8021" + * Bay Trail SoC + AXP288 PMIC, Type-C, DMI_BOARD_NAME: "815D" + * Cherry Trail SoC + AXP288 PMIC, Type-C, DMI_BOARD_NAME: "813E" + * Cherry Trail SoC + TI PMIC, Type-C, DMI_BOARD_NAME: "827C" or "82F4" * - * The variants with the AXP288 PMIC are all kinds of special: + * The variants with the AXP288 + Type-C connector are all kinds of special: * - * 1. All variants use a Type-C connector which the AXP288 does not support, so - * when using a Type-C charger it is not recognized. Unlike most AXP288 devices, + * 1. They use a Type-C connector which the AXP288 does not support, so when + * using a Type-C charger it is not recognized. Unlike most AXP288 devices, * this model actually has mostly working ACPI AC / Battery code, the ACPI code * "solves" this by simply setting the input_current_limit to 3A. * There are still some issues with the ACPI code, so we use this native driver, @@ -578,12 +579,17 @@ */ static const struct dmi_system_id axp288_hp_x2_dmi_ids[] = { { - /* - * Bay Trail model has "Hewlett-Packard" as sys_vendor, Cherry - * Trail model has "HP", so we only match on product_name. - */ .matches = { - DMI_MATCH(DMI_PRODUCT_NAME, "HP Pavilion x2 Detachable"), + DMI_EXACT_MATCH(DMI_SYS_VENDOR, "Hewlett-Packard"), + DMI_EXACT_MATCH(DMI_PRODUCT_NAME, "HP Pavilion x2 Detachable"), + DMI_EXACT_MATCH(DMI_BOARD_NAME, "815D"), + }, + }, + { + .matches = { + DMI_EXACT_MATCH(DMI_SYS_VENDOR, "HP"), + DMI_EXACT_MATCH(DMI_PRODUCT_NAME, "HP Pavilion x2 Detachable"), + DMI_EXACT_MATCH(DMI_BOARD_NAME, "813E"), }, }, {} /* Terminating entry */ --- linux-azure-5.8-5.8.0.orig/drivers/power/supply/bq24190_charger.c +++ linux-azure-5.8-5.8.0/drivers/power/supply/bq24190_charger.c @@ -448,8 +448,10 @@ return -EINVAL; ret = pm_runtime_get_sync(bdi->dev); - if (ret < 0) + if (ret < 0) { + pm_runtime_put_noidle(bdi->dev); return ret; + } ret = bq24190_read_mask(bdi, info->reg, info->mask, info->shift, &v); if (ret) @@ -1075,8 +1077,10 @@ dev_dbg(bdi->dev, "prop: %d\n", psp); ret = pm_runtime_get_sync(bdi->dev); - if (ret < 0) + if (ret < 0) { + pm_runtime_put_noidle(bdi->dev); return ret; + } switch (psp) { case POWER_SUPPLY_PROP_CHARGE_TYPE: @@ -1147,8 +1151,10 @@ dev_dbg(bdi->dev, "prop: %d\n", psp); ret = pm_runtime_get_sync(bdi->dev); - if (ret < 0) + if (ret < 0) { + pm_runtime_put_noidle(bdi->dev); return ret; + } switch (psp) { case POWER_SUPPLY_PROP_ONLINE: @@ -1408,8 +1414,10 @@ dev_dbg(bdi->dev, "prop: %d\n", psp); ret = pm_runtime_get_sync(bdi->dev); - if (ret < 0) + if (ret < 0) { + pm_runtime_put_noidle(bdi->dev); return ret; + } switch (psp) { case POWER_SUPPLY_PROP_STATUS: @@ -1454,8 +1462,10 @@ dev_dbg(bdi->dev, "prop: %d\n", psp); ret = pm_runtime_get_sync(bdi->dev); - if (ret < 0) + if (ret < 0) { + pm_runtime_put_noidle(bdi->dev); return ret; + } switch (psp) { case POWER_SUPPLY_PROP_ONLINE: --- linux-azure-5.8-5.8.0.orig/drivers/power/supply/bq25890_charger.c +++ linux-azure-5.8-5.8.0/drivers/power/supply/bq25890_charger.c @@ -295,7 +295,7 @@ /* TODO: BQ25896 has max ICHG 3008 mA */ [TBL_ICHG] = { .rt = {0, 5056000, 64000} }, /* uA */ [TBL_ITERM] = { .rt = {64000, 1024000, 64000} }, /* uA */ - [TBL_IILIM] = { .rt = {50000, 3200000, 50000} }, /* uA */ + [TBL_IILIM] = { .rt = {100000, 3250000, 50000} }, /* uA */ [TBL_VREG] = { .rt = {3840000, 4608000, 16000} }, /* uV */ [TBL_BOOSTV] = { .rt = {4550000, 5510000, 64000} }, /* uV */ [TBL_SYSVMIN] = { .rt = {3000000, 3700000, 100000} }, /* uV */ --- linux-azure-5.8-5.8.0.orig/drivers/power/supply/bq27xxx_battery.c +++ linux-azure-5.8-5.8.0/drivers/power/supply/bq27xxx_battery.c @@ -1678,8 +1678,6 @@ status = POWER_SUPPLY_STATUS_FULL; else if (di->cache.flags & BQ27000_FLAG_CHGS) status = POWER_SUPPLY_STATUS_CHARGING; - else if (power_supply_am_i_supplied(di->bat) > 0) - status = POWER_SUPPLY_STATUS_NOT_CHARGING; else status = POWER_SUPPLY_STATUS_DISCHARGING; } else { @@ -1691,6 +1689,10 @@ status = POWER_SUPPLY_STATUS_CHARGING; } + if ((status == POWER_SUPPLY_STATUS_DISCHARGING) && + (power_supply_am_i_supplied(di->bat) > 0)) + status = POWER_SUPPLY_STATUS_NOT_CHARGING; + val->intval = status; return 0; --- linux-azure-5.8-5.8.0.orig/drivers/power/supply/cpcap-battery.c +++ linux-azure-5.8-5.8.0/drivers/power/supply/cpcap-battery.c @@ -561,17 +561,21 @@ POWER_SUPPLY_PROP_CONSTANT_CHARGE_VOLTAGE, &prop); if (error) - return error; + goto out_put; /* Allow charger const voltage lower than battery const voltage */ if (const_charge_voltage > prop.intval) - return 0; + goto out_put; val.intval = const_charge_voltage; - return power_supply_set_property(charger, + error = power_supply_set_property(charger, POWER_SUPPLY_PROP_CONSTANT_CHARGE_VOLTAGE, &val); +out_put: + power_supply_put(charger); + + return error; } static int cpcap_battery_set_property(struct power_supply *psy, @@ -666,7 +670,7 @@ error = devm_request_threaded_irq(ddata->dev, irq, NULL, cpcap_battery_irq_thread, - IRQF_SHARED, + IRQF_SHARED | IRQF_ONESHOT, name, ddata); if (error) { dev_err(ddata->dev, "could not get irq %s: %i\n", --- linux-azure-5.8-5.8.0.orig/drivers/power/supply/cpcap-charger.c +++ linux-azure-5.8-5.8.0/drivers/power/supply/cpcap-charger.c @@ -301,6 +301,8 @@ &prop); if (!error) voltage = prop.intval; + + power_supply_put(battery); } return voltage; @@ -708,7 +710,7 @@ error = devm_request_threaded_irq(ddata->dev, irq, NULL, cpcap_charger_irq_thread, - IRQF_SHARED, + IRQF_SHARED | IRQF_ONESHOT, name, ddata); if (error) { dev_err(ddata->dev, "could not get irq %s: %i\n", --- linux-azure-5.8-5.8.0.orig/drivers/power/supply/max17042_battery.c +++ linux-azure-5.8-5.8.0/drivers/power/supply/max17042_battery.c @@ -85,9 +85,10 @@ POWER_SUPPLY_PROP_TEMP_MAX, POWER_SUPPLY_PROP_HEALTH, POWER_SUPPLY_PROP_SCOPE, + POWER_SUPPLY_PROP_TIME_TO_EMPTY_NOW, + // these two have to be at the end on the list POWER_SUPPLY_PROP_CURRENT_NOW, POWER_SUPPLY_PROP_CURRENT_AVG, - POWER_SUPPLY_PROP_TIME_TO_EMPTY_NOW, }; static int max17042_get_temperature(struct max17042_chip *chip, int *temp) --- linux-azure-5.8-5.8.0.orig/drivers/power/supply/test_power.c +++ linux-azure-5.8-5.8.0/drivers/power/supply/test_power.c @@ -353,6 +353,7 @@ static int param_get_ac_online(char *buffer, const struct kernel_param *kp) { strcpy(buffer, map_get_key(map_ac_online, ac_online, "unknown")); + strcat(buffer, "\n"); return strlen(buffer); } @@ -366,6 +367,7 @@ static int param_get_usb_online(char *buffer, const struct kernel_param *kp) { strcpy(buffer, map_get_key(map_ac_online, usb_online, "unknown")); + strcat(buffer, "\n"); return strlen(buffer); } @@ -380,6 +382,7 @@ static int param_get_battery_status(char *buffer, const struct kernel_param *kp) { strcpy(buffer, map_get_key(map_status, battery_status, "unknown")); + strcat(buffer, "\n"); return strlen(buffer); } @@ -394,6 +397,7 @@ static int param_get_battery_health(char *buffer, const struct kernel_param *kp) { strcpy(buffer, map_get_key(map_health, battery_health, "unknown")); + strcat(buffer, "\n"); return strlen(buffer); } @@ -409,6 +413,7 @@ const struct kernel_param *kp) { strcpy(buffer, map_get_key(map_present, battery_present, "unknown")); + strcat(buffer, "\n"); return strlen(buffer); } @@ -426,6 +431,7 @@ { strcpy(buffer, map_get_key(map_technology, battery_technology, "unknown")); + strcat(buffer, "\n"); return strlen(buffer); } --- linux-azure-5.8-5.8.0.orig/drivers/powercap/intel_rapl_common.c +++ linux-azure-5.8-5.8.0/drivers/powercap/intel_rapl_common.c @@ -1423,7 +1423,7 @@ id = x86_match_cpu(rapl_ids); if (!id) { - pr_err("driver does not support CPU family %d model %d\n", + pr_info("driver does not support CPU family %d model %d\n", boot_cpu_data.x86, boot_cpu_data.x86_model); return -ENODEV; --- linux-azure-5.8-5.8.0.orig/drivers/powercap/powercap_sys.c +++ linux-azure-5.8-5.8.0/drivers/powercap/powercap_sys.c @@ -224,46 +224,46 @@ for (i = 0; i < MAX_CONSTRAINTS_PER_ZONE; ++i) { ret = create_constraint_attribute(i, "power_limit_uw", - S_IWUSR | S_IRUGO, + S_IWUSR | S_IRUSR, &constraint_attrs[i].power_limit_attr, show_constraint_power_limit_uw, store_constraint_power_limit_uw); if (ret) goto err_alloc; ret = create_constraint_attribute(i, "time_window_us", - S_IWUSR | S_IRUGO, + S_IWUSR | S_IRUSR, &constraint_attrs[i].time_window_attr, show_constraint_time_window_us, store_constraint_time_window_us); if (ret) goto err_alloc; - ret = create_constraint_attribute(i, "name", S_IRUGO, + ret = create_constraint_attribute(i, "name", S_IRUSR, &constraint_attrs[i].name_attr, show_constraint_name, NULL); if (ret) goto err_alloc; - ret = create_constraint_attribute(i, "max_power_uw", S_IRUGO, + ret = create_constraint_attribute(i, "max_power_uw", S_IRUSR, &constraint_attrs[i].max_power_attr, show_constraint_max_power_uw, NULL); if (ret) goto err_alloc; - ret = create_constraint_attribute(i, "min_power_uw", S_IRUGO, + ret = create_constraint_attribute(i, "min_power_uw", S_IRUSR, &constraint_attrs[i].min_power_attr, show_constraint_min_power_uw, NULL); if (ret) goto err_alloc; ret = create_constraint_attribute(i, "max_time_window_us", - S_IRUGO, + S_IRUSR, &constraint_attrs[i].max_time_window_attr, show_constraint_max_time_window_us, NULL); if (ret) goto err_alloc; ret = create_constraint_attribute(i, "min_time_window_us", - S_IRUGO, + S_IRUSR, &constraint_attrs[i].min_time_window_attr, show_constraint_min_time_window_us, NULL); @@ -362,23 +362,29 @@ int count = 0; power_zone->zone_dev_attrs[count++] = &dev_attr_name.attr; - if (power_zone->ops->get_max_energy_range_uj) + if (power_zone->ops->get_max_energy_range_uj) { + dev_attr_max_energy_range_uj.attr.mode = S_IRUSR; power_zone->zone_dev_attrs[count++] = &dev_attr_max_energy_range_uj.attr; + } if (power_zone->ops->get_energy_uj) { if (power_zone->ops->reset_energy_uj) - dev_attr_energy_uj.attr.mode = S_IWUSR | S_IRUGO; + dev_attr_energy_uj.attr.mode = S_IWUSR | S_IRUSR; else - dev_attr_energy_uj.attr.mode = S_IRUGO; + dev_attr_energy_uj.attr.mode = S_IRUSR; power_zone->zone_dev_attrs[count++] = &dev_attr_energy_uj.attr; } - if (power_zone->ops->get_power_uw) + if (power_zone->ops->get_power_uw) { + dev_attr_power_uw.attr.mode = S_IRUSR; power_zone->zone_dev_attrs[count++] = &dev_attr_power_uw.attr; - if (power_zone->ops->get_max_power_range_uw) + } + if (power_zone->ops->get_max_power_range_uw) { + dev_attr_max_power_range_uw.attr.mode = S_IRUSR; power_zone->zone_dev_attrs[count++] = &dev_attr_max_power_range_uw.attr; + } power_zone->zone_dev_attrs[count] = NULL; power_zone->zone_attr_count = count; } --- linux-azure-5.8-5.8.0.orig/drivers/ps3/ps3stor_lib.c +++ linux-azure-5.8-5.8.0/drivers/ps3/ps3stor_lib.c @@ -189,7 +189,7 @@ dev->bounce_lpar = ps3_mm_phys_to_lpar(__pa(dev->bounce_buf)); dev->bounce_dma = dma_map_single(&dev->sbd.core, dev->bounce_buf, dev->bounce_size, DMA_BIDIRECTIONAL); - if (!dev->bounce_dma) { + if (dma_mapping_error(&dev->sbd.core, dev->bounce_dma)) { dev_err(&dev->sbd.core, "%s:%u: map DMA region failed\n", __func__, __LINE__); error = -ENODEV; --- linux-azure-5.8-5.8.0.orig/drivers/ptp/Kconfig +++ linux-azure-5.8-5.8.0/drivers/ptp/Kconfig @@ -64,6 +64,7 @@ depends on NETWORK_PHY_TIMESTAMPING depends on PHYLIB depends on PTP_1588_CLOCK + select CRC32 help Supports the DP83640 PHYTER with IEEE 1588 features. @@ -78,6 +79,7 @@ config PTP_1588_CLOCK_INES tristate "ZHAW InES PTP time stamping IP core" depends on NETWORK_PHY_TIMESTAMPING + depends on HAS_IOMEM depends on PHYLIB depends on PTP_1588_CLOCK help --- linux-azure-5.8-5.8.0.orig/drivers/ptp/ptp_clock.c +++ linux-azure-5.8-5.8.0/drivers/ptp/ptp_clock.c @@ -179,6 +179,9 @@ { struct ptp_clock *ptp = container_of(dev, struct ptp_clock, dev); + /* Release the clock's resources. */ + if (ptp->pps_source) + pps_unregister_source(ptp->pps_source); ptp_cleanup_pin_groups(ptp); mutex_destroy(&ptp->tsevq_mux); mutex_destroy(&ptp->pincfg_mux); @@ -307,11 +310,6 @@ kthread_cancel_delayed_work_sync(&ptp->aux_work); kthread_destroy_worker(ptp->kworker); } - - /* Release the clock's resources. */ - if (ptp->pps_source) - pps_unregister_source(ptp->pps_source); - posix_clock_unregister(&ptp->clock); return 0; --- linux-azure-5.8-5.8.0.orig/drivers/pwm/pwm-bcm-iproc.c +++ linux-azure-5.8-5.8.0/drivers/pwm/pwm-bcm-iproc.c @@ -85,8 +85,6 @@ u64 tmp, multi, rate; u32 value, prescale; - rate = clk_get_rate(ip->clk); - value = readl(ip->base + IPROC_PWM_CTRL_OFFSET); if (value & BIT(IPROC_PWM_CTRL_EN_SHIFT(pwm->hwpwm))) @@ -99,6 +97,13 @@ else state->polarity = PWM_POLARITY_INVERSED; + rate = clk_get_rate(ip->clk); + if (rate == 0) { + state->period = 0; + state->duty_cycle = 0; + return; + } + value = readl(ip->base + IPROC_PWM_PRESCALE_OFFSET); prescale = value >> IPROC_PWM_PRESCALE_SHIFT(pwm->hwpwm); prescale &= IPROC_PWM_PRESCALE_MAX; --- linux-azure-5.8-5.8.0.orig/drivers/pwm/pwm-img.c +++ linux-azure-5.8-5.8.0/drivers/pwm/pwm-img.c @@ -277,6 +277,8 @@ return PTR_ERR(pwm->pwm_clk); } + platform_set_drvdata(pdev, pwm); + pm_runtime_set_autosuspend_delay(&pdev->dev, IMG_PWM_PM_TIMEOUT); pm_runtime_use_autosuspend(&pdev->dev); pm_runtime_enable(&pdev->dev); @@ -313,7 +315,6 @@ goto err_suspend; } - platform_set_drvdata(pdev, pwm); return 0; err_suspend: --- linux-azure-5.8-5.8.0.orig/drivers/pwm/pwm-imx27.c +++ linux-azure-5.8-5.8.0/drivers/pwm/pwm-imx27.c @@ -235,8 +235,9 @@ period_cycles /= prescale; c = clkrate * state->duty_cycle; - do_div(c, NSEC_PER_SEC * prescale); + do_div(c, NSEC_PER_SEC); duty_cycles = c; + duty_cycles /= prescale; /* * according to imx pwm RM, the real period value should be PERIOD --- linux-azure-5.8-5.8.0.orig/drivers/pwm/pwm-lp3943.c +++ linux-azure-5.8-5.8.0/drivers/pwm/pwm-lp3943.c @@ -275,6 +275,7 @@ lp3943_pwm->chip.dev = &pdev->dev; lp3943_pwm->chip.ops = &lp3943_pwm_ops; lp3943_pwm->chip.npwm = LP3943_NUM_PWMS; + lp3943_pwm->chip.base = -1; platform_set_drvdata(pdev, lp3943_pwm); --- linux-azure-5.8-5.8.0.orig/drivers/pwm/pwm-lpss.c +++ linux-azure-5.8-5.8.0/drivers/pwm/pwm-lpss.c @@ -93,10 +93,12 @@ * The equation is: * base_unit = round(base_unit_range * freq / c) */ - base_unit_range = BIT(lpwm->info->base_unit_bits) - 1; + base_unit_range = BIT(lpwm->info->base_unit_bits); freq *= base_unit_range; base_unit = DIV_ROUND_CLOSEST_ULL(freq, c); + /* base_unit must not be 0 and we also want to avoid overflowing it */ + base_unit = clamp_val(base_unit, 1, base_unit_range - 1); on_time_div = 255ULL * duty_ns; do_div(on_time_div, period_ns); @@ -104,8 +106,7 @@ orig_ctrl = ctrl = pwm_lpss_read(pwm); ctrl &= ~PWM_ON_TIME_DIV_MASK; - ctrl &= ~(base_unit_range << PWM_BASE_UNIT_SHIFT); - base_unit &= base_unit_range; + ctrl &= ~((base_unit_range - 1) << PWM_BASE_UNIT_SHIFT); ctrl |= (u32) base_unit << PWM_BASE_UNIT_SHIFT; ctrl |= on_time_div; --- linux-azure-5.8-5.8.0.orig/drivers/pwm/pwm-rockchip.c +++ linux-azure-5.8-5.8.0/drivers/pwm/pwm-rockchip.c @@ -288,6 +288,8 @@ const struct of_device_id *id; struct rockchip_pwm_chip *pc; struct resource *r; + u32 enable_conf, ctrl; + bool enabled; int ret, count; id = of_match_device(rockchip_pwm_dt_ids, &pdev->dev); @@ -335,9 +337,9 @@ return ret; } - ret = clk_prepare(pc->pclk); + ret = clk_prepare_enable(pc->pclk); if (ret) { - dev_err(&pdev->dev, "Can't prepare APB clk: %d\n", ret); + dev_err(&pdev->dev, "Can't prepare enable APB clk: %d\n", ret); goto err_clk; } @@ -354,21 +356,26 @@ pc->chip.of_pwm_n_cells = 3; } + enable_conf = pc->data->enable_conf; + ctrl = readl_relaxed(pc->base + pc->data->regs.ctrl); + enabled = (ctrl & enable_conf) == enable_conf; + ret = pwmchip_add(&pc->chip); if (ret < 0) { - clk_unprepare(pc->clk); dev_err(&pdev->dev, "pwmchip_add() failed: %d\n", ret); goto err_pclk; } /* Keep the PWM clk enabled if the PWM appears to be up and running. */ - if (!pwm_is_enabled(pc->chip.pwms)) + if (!enabled) clk_disable(pc->clk); + clk_disable(pc->pclk); + return 0; err_pclk: - clk_unprepare(pc->pclk); + clk_disable_unprepare(pc->pclk); err_clk: clk_disable_unprepare(pc->clk); --- linux-azure-5.8-5.8.0.orig/drivers/pwm/pwm-sun4i.c +++ linux-azure-5.8-5.8.0/drivers/pwm/pwm-sun4i.c @@ -294,12 +294,8 @@ ctrl |= BIT_CH(PWM_CLK_GATING, pwm->hwpwm); - if (state->enabled) { + if (state->enabled) ctrl |= BIT_CH(PWM_EN, pwm->hwpwm); - } else { - ctrl &= ~BIT_CH(PWM_EN, pwm->hwpwm); - ctrl &= ~BIT_CH(PWM_CLK_GATING, pwm->hwpwm); - } sun4i_pwm_writel(sun4i_pwm, ctrl, PWM_CTRL_REG); --- linux-azure-5.8-5.8.0.orig/drivers/pwm/pwm-zx.c +++ linux-azure-5.8-5.8.0/drivers/pwm/pwm-zx.c @@ -238,6 +238,7 @@ ret = pwmchip_add(&zpc->chip); if (ret < 0) { dev_err(&pdev->dev, "failed to add PWM chip: %d\n", ret); + clk_disable_unprepare(zpc->pclk); return ret; } --- linux-azure-5.8-5.8.0.orig/drivers/rapidio/Kconfig +++ linux-azure-5.8-5.8.0/drivers/rapidio/Kconfig @@ -37,7 +37,7 @@ config RAPIDIO_DMA_ENGINE bool "DMA Engine support for RapidIO" depends on RAPIDIO - select DMADEVICES + depends on DMADEVICES select DMA_ENGINE help Say Y here if you want to use DMA Engine frameork for RapidIO data --- linux-azure-5.8-5.8.0.orig/drivers/rapidio/devices/rio_mport_cdev.c +++ linux-azure-5.8-5.8.0/drivers/rapidio/devices/rio_mport_cdev.c @@ -871,15 +871,16 @@ rmcd_error("pin_user_pages_fast err=%ld", pinned); nr_pages = 0; - } else + } else { rmcd_error("pinned %ld out of %ld pages", pinned, nr_pages); + /* + * Set nr_pages up to mean "how many pages to unpin, in + * the error handler: + */ + nr_pages = pinned; + } ret = -EFAULT; - /* - * Set nr_pages up to mean "how many pages to unpin, in - * the error handler: - */ - nr_pages = pinned; goto err_pg; } @@ -1679,6 +1680,7 @@ struct rio_dev *rdev; struct rio_switch *rswitch = NULL; struct rio_mport *mport; + struct device *dev; size_t size; u32 rval; u32 swpinfo = 0; @@ -1693,8 +1695,10 @@ rmcd_debug(RDEV, "name:%s ct:0x%x did:0x%x hc:0x%x", dev_info.name, dev_info.comptag, dev_info.destid, dev_info.hopcount); - if (bus_find_device_by_name(&rio_bus_type, NULL, dev_info.name)) { + dev = bus_find_device_by_name(&rio_bus_type, NULL, dev_info.name); + if (dev) { rmcd_debug(RDEV, "device %s already exists", dev_info.name); + put_device(dev); return -EEXIST; } --- linux-azure-5.8-5.8.0.orig/drivers/ras/cec.c +++ linux-azure-5.8-5.8.0/drivers/ras/cec.c @@ -553,20 +553,20 @@ .priority = MCE_PRIO_CEC, }; -static void __init cec_init(void) +static int __init cec_init(void) { if (ce_arr.disabled) - return; + return -ENODEV; ce_arr.array = (void *)get_zeroed_page(GFP_KERNEL); if (!ce_arr.array) { pr_err("Error allocating CE array page!\n"); - return; + return -ENOMEM; } if (create_debugfs_nodes()) { free_page((unsigned long)ce_arr.array); - return; + return -ENOMEM; } INIT_DELAYED_WORK(&cec_work, cec_work_fn); @@ -575,6 +575,7 @@ mce_register_decode_chain(&cec_nb); pr_info("Correctable Errors collector initialized.\n"); + return 0; } late_initcall(cec_init); --- linux-azure-5.8-5.8.0.orig/drivers/regulator/axp20x-regulator.c +++ linux-azure-5.8-5.8.0/drivers/regulator/axp20x-regulator.c @@ -42,8 +42,9 @@ #define AXP20X_DCDC2_V_OUT_MASK GENMASK(5, 0) #define AXP20X_DCDC3_V_OUT_MASK GENMASK(7, 0) -#define AXP20X_LDO24_V_OUT_MASK GENMASK(7, 4) +#define AXP20X_LDO2_V_OUT_MASK GENMASK(7, 4) #define AXP20X_LDO3_V_OUT_MASK GENMASK(6, 0) +#define AXP20X_LDO4_V_OUT_MASK GENMASK(3, 0) #define AXP20X_LDO5_V_OUT_MASK GENMASK(7, 4) #define AXP20X_PWR_OUT_EXTEN_MASK BIT_MASK(0) @@ -542,14 +543,14 @@ AXP20X_PWR_OUT_CTRL, AXP20X_PWR_OUT_DCDC3_MASK), AXP_DESC_FIXED(AXP20X, LDO1, "ldo1", "acin", 1300), AXP_DESC(AXP20X, LDO2, "ldo2", "ldo24in", 1800, 3300, 100, - AXP20X_LDO24_V_OUT, AXP20X_LDO24_V_OUT_MASK, + AXP20X_LDO24_V_OUT, AXP20X_LDO2_V_OUT_MASK, AXP20X_PWR_OUT_CTRL, AXP20X_PWR_OUT_LDO2_MASK), AXP_DESC(AXP20X, LDO3, "ldo3", "ldo3in", 700, 3500, 25, AXP20X_LDO3_V_OUT, AXP20X_LDO3_V_OUT_MASK, AXP20X_PWR_OUT_CTRL, AXP20X_PWR_OUT_LDO3_MASK), AXP_DESC_RANGES(AXP20X, LDO4, "ldo4", "ldo24in", axp20x_ldo4_ranges, AXP20X_LDO4_V_OUT_NUM_VOLTAGES, - AXP20X_LDO24_V_OUT, AXP20X_LDO24_V_OUT_MASK, + AXP20X_LDO24_V_OUT, AXP20X_LDO4_V_OUT_MASK, AXP20X_PWR_OUT_CTRL, AXP20X_PWR_OUT_LDO4_MASK), AXP_DESC_IO(AXP20X, LDO5, "ldo5", "ldo5in", 1800, 3300, 100, AXP20X_LDO5_V_OUT, AXP20X_LDO5_V_OUT_MASK, @@ -593,7 +594,7 @@ AXP22X_DLDO1_V_OUT, AXP22X_DLDO1_V_OUT_MASK, AXP22X_PWR_OUT_CTRL2, AXP22X_PWR_OUT_DLDO1_MASK), AXP_DESC(AXP22X, DLDO2, "dldo2", "dldoin", 700, 3300, 100, - AXP22X_DLDO2_V_OUT, AXP22X_PWR_OUT_DLDO2_MASK, + AXP22X_DLDO2_V_OUT, AXP22X_DLDO2_V_OUT_MASK, AXP22X_PWR_OUT_CTRL2, AXP22X_PWR_OUT_DLDO2_MASK), AXP_DESC(AXP22X, DLDO3, "dldo3", "dldoin", 700, 3300, 100, AXP22X_DLDO3_V_OUT, AXP22X_DLDO3_V_OUT_MASK, @@ -1069,7 +1070,7 @@ static int axp20x_regulator_parse_dt(struct platform_device *pdev) { struct device_node *np, *regulators; - int ret; + int ret = 0; u32 dcdcfreq = 0; np = of_node_get(pdev->dev.parent->of_node); @@ -1084,13 +1085,12 @@ ret = axp20x_set_dcdc_freq(pdev, dcdcfreq); if (ret < 0) { dev_err(&pdev->dev, "Error setting dcdc frequency: %d\n", ret); - return ret; } - of_node_put(regulators); } - return 0; + of_node_put(np); + return ret; } static int axp20x_set_dcdc_workmode(struct regulator_dev *rdev, int id, u32 workmode) --- linux-azure-5.8-5.8.0.orig/drivers/regulator/bd718x7-regulator.c +++ linux-azure-5.8-5.8.0/drivers/regulator/bd718x7-regulator.c @@ -15,6 +15,36 @@ #include #include +/* Typical regulator startup times as per data sheet in uS */ +#define BD71847_BUCK1_STARTUP_TIME 144 +#define BD71847_BUCK2_STARTUP_TIME 162 +#define BD71847_BUCK3_STARTUP_TIME 162 +#define BD71847_BUCK4_STARTUP_TIME 240 +#define BD71847_BUCK5_STARTUP_TIME 270 +#define BD71847_BUCK6_STARTUP_TIME 200 +#define BD71847_LDO1_STARTUP_TIME 440 +#define BD71847_LDO2_STARTUP_TIME 370 +#define BD71847_LDO3_STARTUP_TIME 310 +#define BD71847_LDO4_STARTUP_TIME 400 +#define BD71847_LDO5_STARTUP_TIME 530 +#define BD71847_LDO6_STARTUP_TIME 400 + +#define BD71837_BUCK1_STARTUP_TIME 160 +#define BD71837_BUCK2_STARTUP_TIME 180 +#define BD71837_BUCK3_STARTUP_TIME 180 +#define BD71837_BUCK4_STARTUP_TIME 180 +#define BD71837_BUCK5_STARTUP_TIME 160 +#define BD71837_BUCK6_STARTUP_TIME 240 +#define BD71837_BUCK7_STARTUP_TIME 220 +#define BD71837_BUCK8_STARTUP_TIME 200 +#define BD71837_LDO1_STARTUP_TIME 440 +#define BD71837_LDO2_STARTUP_TIME 370 +#define BD71837_LDO3_STARTUP_TIME 310 +#define BD71837_LDO4_STARTUP_TIME 400 +#define BD71837_LDO5_STARTUP_TIME 310 +#define BD71837_LDO6_STARTUP_TIME 400 +#define BD71837_LDO7_STARTUP_TIME 530 + /* * BUCK1/2/3/4 * BUCK1RAMPRATE[1:0] BUCK1 DVS ramp rate setting @@ -560,6 +590,7 @@ .vsel_mask = DVS_BUCK_RUN_MASK, .enable_reg = BD718XX_REG_BUCK1_CTRL, .enable_mask = BD718XX_BUCK_EN, + .enable_time = BD71847_BUCK1_STARTUP_TIME, .owner = THIS_MODULE, .of_parse_cb = buck_set_hw_dvs_levels, }, @@ -594,6 +625,7 @@ .vsel_mask = DVS_BUCK_RUN_MASK, .enable_reg = BD718XX_REG_BUCK2_CTRL, .enable_mask = BD718XX_BUCK_EN, + .enable_time = BD71847_BUCK2_STARTUP_TIME, .owner = THIS_MODULE, .of_parse_cb = buck_set_hw_dvs_levels, }, @@ -629,6 +661,7 @@ .linear_range_selectors = bd71847_buck3_volt_range_sel, .enable_reg = BD718XX_REG_1ST_NODVS_BUCK_CTRL, .enable_mask = BD718XX_BUCK_EN, + .enable_time = BD71847_BUCK3_STARTUP_TIME, .owner = THIS_MODULE, }, .init = { @@ -656,6 +689,7 @@ .vsel_range_mask = BD71847_BUCK4_RANGE_MASK, .linear_range_selectors = bd71847_buck4_volt_range_sel, .enable_mask = BD718XX_BUCK_EN, + .enable_time = BD71847_BUCK4_STARTUP_TIME, .owner = THIS_MODULE, }, .init = { @@ -678,6 +712,7 @@ .vsel_mask = BD718XX_3RD_NODVS_BUCK_MASK, .enable_reg = BD718XX_REG_3RD_NODVS_BUCK_CTRL, .enable_mask = BD718XX_BUCK_EN, + .enable_time = BD71847_BUCK5_STARTUP_TIME, .owner = THIS_MODULE, }, .init = { @@ -702,6 +737,7 @@ .vsel_mask = BD718XX_4TH_NODVS_BUCK_MASK, .enable_reg = BD718XX_REG_4TH_NODVS_BUCK_CTRL, .enable_mask = BD718XX_BUCK_EN, + .enable_time = BD71847_BUCK6_STARTUP_TIME, .owner = THIS_MODULE, }, .init = { @@ -728,6 +764,7 @@ .linear_range_selectors = bd718xx_ldo1_volt_range_sel, .enable_reg = BD718XX_REG_LDO1_VOLT, .enable_mask = BD718XX_LDO_EN, + .enable_time = BD71847_LDO1_STARTUP_TIME, .owner = THIS_MODULE, }, .init = { @@ -750,6 +787,7 @@ .n_voltages = ARRAY_SIZE(ldo_2_volts), .enable_reg = BD718XX_REG_LDO2_VOLT, .enable_mask = BD718XX_LDO_EN, + .enable_time = BD71847_LDO2_STARTUP_TIME, .owner = THIS_MODULE, }, .init = { @@ -773,6 +811,7 @@ .vsel_mask = BD718XX_LDO3_MASK, .enable_reg = BD718XX_REG_LDO3_VOLT, .enable_mask = BD718XX_LDO_EN, + .enable_time = BD71847_LDO3_STARTUP_TIME, .owner = THIS_MODULE, }, .init = { @@ -796,6 +835,7 @@ .vsel_mask = BD718XX_LDO4_MASK, .enable_reg = BD718XX_REG_LDO4_VOLT, .enable_mask = BD718XX_LDO_EN, + .enable_time = BD71847_LDO4_STARTUP_TIME, .owner = THIS_MODULE, }, .init = { @@ -822,6 +862,7 @@ .linear_range_selectors = bd71847_ldo5_volt_range_sel, .enable_reg = BD718XX_REG_LDO5_VOLT, .enable_mask = BD718XX_LDO_EN, + .enable_time = BD71847_LDO5_STARTUP_TIME, .owner = THIS_MODULE, }, .init = { @@ -847,6 +888,7 @@ .vsel_mask = BD718XX_LDO6_MASK, .enable_reg = BD718XX_REG_LDO6_VOLT, .enable_mask = BD718XX_LDO_EN, + .enable_time = BD71847_LDO6_STARTUP_TIME, .owner = THIS_MODULE, }, .init = { @@ -873,6 +915,7 @@ .vsel_mask = DVS_BUCK_RUN_MASK, .enable_reg = BD718XX_REG_BUCK1_CTRL, .enable_mask = BD718XX_BUCK_EN, + .enable_time = BD71837_BUCK1_STARTUP_TIME, .owner = THIS_MODULE, .of_parse_cb = buck_set_hw_dvs_levels, }, @@ -907,6 +950,7 @@ .vsel_mask = DVS_BUCK_RUN_MASK, .enable_reg = BD718XX_REG_BUCK2_CTRL, .enable_mask = BD718XX_BUCK_EN, + .enable_time = BD71837_BUCK2_STARTUP_TIME, .owner = THIS_MODULE, .of_parse_cb = buck_set_hw_dvs_levels, }, @@ -938,6 +982,7 @@ .vsel_mask = DVS_BUCK_RUN_MASK, .enable_reg = BD71837_REG_BUCK3_CTRL, .enable_mask = BD718XX_BUCK_EN, + .enable_time = BD71837_BUCK3_STARTUP_TIME, .owner = THIS_MODULE, .of_parse_cb = buck_set_hw_dvs_levels, }, @@ -967,6 +1012,7 @@ .vsel_mask = DVS_BUCK_RUN_MASK, .enable_reg = BD71837_REG_BUCK4_CTRL, .enable_mask = BD718XX_BUCK_EN, + .enable_time = BD71837_BUCK4_STARTUP_TIME, .owner = THIS_MODULE, .of_parse_cb = buck_set_hw_dvs_levels, }, @@ -1000,6 +1046,7 @@ .linear_range_selectors = bd71837_buck5_volt_range_sel, .enable_reg = BD718XX_REG_1ST_NODVS_BUCK_CTRL, .enable_mask = BD718XX_BUCK_EN, + .enable_time = BD71837_BUCK5_STARTUP_TIME, .owner = THIS_MODULE, }, .init = { @@ -1024,6 +1071,7 @@ .vsel_mask = BD71837_BUCK6_MASK, .enable_reg = BD718XX_REG_2ND_NODVS_BUCK_CTRL, .enable_mask = BD718XX_BUCK_EN, + .enable_time = BD71837_BUCK6_STARTUP_TIME, .owner = THIS_MODULE, }, .init = { @@ -1046,6 +1094,7 @@ .vsel_mask = BD718XX_3RD_NODVS_BUCK_MASK, .enable_reg = BD718XX_REG_3RD_NODVS_BUCK_CTRL, .enable_mask = BD718XX_BUCK_EN, + .enable_time = BD71837_BUCK7_STARTUP_TIME, .owner = THIS_MODULE, }, .init = { @@ -1070,6 +1119,7 @@ .vsel_mask = BD718XX_4TH_NODVS_BUCK_MASK, .enable_reg = BD718XX_REG_4TH_NODVS_BUCK_CTRL, .enable_mask = BD718XX_BUCK_EN, + .enable_time = BD71837_BUCK8_STARTUP_TIME, .owner = THIS_MODULE, }, .init = { @@ -1096,6 +1146,7 @@ .linear_range_selectors = bd718xx_ldo1_volt_range_sel, .enable_reg = BD718XX_REG_LDO1_VOLT, .enable_mask = BD718XX_LDO_EN, + .enable_time = BD71837_LDO1_STARTUP_TIME, .owner = THIS_MODULE, }, .init = { @@ -1118,6 +1169,7 @@ .n_voltages = ARRAY_SIZE(ldo_2_volts), .enable_reg = BD718XX_REG_LDO2_VOLT, .enable_mask = BD718XX_LDO_EN, + .enable_time = BD71837_LDO2_STARTUP_TIME, .owner = THIS_MODULE, }, .init = { @@ -1141,6 +1193,7 @@ .vsel_mask = BD718XX_LDO3_MASK, .enable_reg = BD718XX_REG_LDO3_VOLT, .enable_mask = BD718XX_LDO_EN, + .enable_time = BD71837_LDO3_STARTUP_TIME, .owner = THIS_MODULE, }, .init = { @@ -1164,6 +1217,7 @@ .vsel_mask = BD718XX_LDO4_MASK, .enable_reg = BD718XX_REG_LDO4_VOLT, .enable_mask = BD718XX_LDO_EN, + .enable_time = BD71837_LDO4_STARTUP_TIME, .owner = THIS_MODULE, }, .init = { @@ -1189,6 +1243,7 @@ .vsel_mask = BD71837_LDO5_MASK, .enable_reg = BD718XX_REG_LDO5_VOLT, .enable_mask = BD718XX_LDO_EN, + .enable_time = BD71837_LDO5_STARTUP_TIME, .owner = THIS_MODULE, }, .init = { @@ -1216,6 +1271,7 @@ .vsel_mask = BD718XX_LDO6_MASK, .enable_reg = BD718XX_REG_LDO6_VOLT, .enable_mask = BD718XX_LDO_EN, + .enable_time = BD71837_LDO6_STARTUP_TIME, .owner = THIS_MODULE, }, .init = { @@ -1241,6 +1297,7 @@ .vsel_mask = BD71837_LDO7_MASK, .enable_reg = BD71837_REG_LDO7_VOLT, .enable_mask = BD718XX_LDO_EN, + .enable_time = BD71837_LDO7_STARTUP_TIME, .owner = THIS_MODULE, }, .init = { --- linux-azure-5.8-5.8.0.orig/drivers/regulator/core.c +++ linux-azure-5.8-5.8.0/drivers/regulator/core.c @@ -235,8 +235,8 @@ static void regulator_unlock_recursive(struct regulator_dev *rdev, unsigned int n_coupled) { - struct regulator_dev *c_rdev; - int i; + struct regulator_dev *c_rdev, *supply_rdev; + int i, supply_n_coupled; for (i = n_coupled; i > 0; i--) { c_rdev = rdev->coupling_desc.coupled_rdevs[i - 1]; @@ -244,10 +244,13 @@ if (!c_rdev) continue; - if (c_rdev->supply && !regulator_supply_is_couple(c_rdev)) - regulator_unlock_recursive( - c_rdev->supply->rdev, - c_rdev->coupling_desc.n_coupled); + if (c_rdev->supply && !regulator_supply_is_couple(c_rdev)) { + supply_rdev = c_rdev->supply->rdev; + supply_n_coupled = supply_rdev->coupling_desc.n_coupled; + + regulator_unlock_recursive(supply_rdev, + supply_n_coupled); + } regulator_unlock(c_rdev); } @@ -1276,7 +1279,6 @@ /** * set_machine_constraints - sets regulator constraints * @rdev: regulator source - * @constraints: constraints to apply * * Allows platform initialisation code to define and constrain * regulator circuits e.g. valid voltage/current ranges, etc. NOTE: @@ -1284,21 +1286,11 @@ * regulator operations to proceed i.e. set_voltage, set_current_limit, * set_mode. */ -static int set_machine_constraints(struct regulator_dev *rdev, - const struct regulation_constraints *constraints) +static int set_machine_constraints(struct regulator_dev *rdev) { int ret = 0; const struct regulator_ops *ops = rdev->desc->ops; - if (constraints) - rdev->constraints = kmemdup(constraints, sizeof(*constraints), - GFP_KERNEL); - else - rdev->constraints = kzalloc(sizeof(*constraints), - GFP_KERNEL); - if (!rdev->constraints) - return -ENOMEM; - ret = machine_constraints_voltage(rdev, rdev->constraints); if (ret != 0) return ret; @@ -1460,7 +1452,7 @@ const char *consumer_dev_name, const char *supply) { - struct regulator_map *node; + struct regulator_map *node, *new_node; int has_dev; if (supply == NULL) @@ -1471,6 +1463,22 @@ else has_dev = 0; + new_node = kzalloc(sizeof(struct regulator_map), GFP_KERNEL); + if (new_node == NULL) + return -ENOMEM; + + new_node->regulator = rdev; + new_node->supply = supply; + + if (has_dev) { + new_node->dev_name = kstrdup(consumer_dev_name, GFP_KERNEL); + if (new_node->dev_name == NULL) { + kfree(new_node); + return -ENOMEM; + } + } + + mutex_lock(®ulator_list_mutex); list_for_each_entry(node, ®ulator_map_list, list) { if (node->dev_name && consumer_dev_name) { if (strcmp(node->dev_name, consumer_dev_name) != 0) @@ -1488,26 +1496,19 @@ node->regulator->desc->name, supply, dev_name(&rdev->dev), rdev_get_name(rdev)); - return -EBUSY; + goto fail; } - node = kzalloc(sizeof(struct regulator_map), GFP_KERNEL); - if (node == NULL) - return -ENOMEM; - - node->regulator = rdev; - node->supply = supply; - - if (has_dev) { - node->dev_name = kstrdup(consumer_dev_name, GFP_KERNEL); - if (node->dev_name == NULL) { - kfree(node); - return -ENOMEM; - } - } + list_add(&new_node->list, ®ulator_map_list); + mutex_unlock(®ulator_list_mutex); - list_add(&node->list, ®ulator_map_list); return 0; + +fail: + mutex_unlock(®ulator_list_mutex); + kfree(new_node->dev_name); + kfree(new_node); + return -EBUSY; } static void unset_regulator_supplies(struct regulator_dev *rdev) @@ -1579,45 +1580,54 @@ const char *supply_name) { struct regulator *regulator; - char buf[REG_STR_SIZE]; - int err, size; + int err = 0; + + if (dev) { + char buf[REG_STR_SIZE]; + int size; + + size = snprintf(buf, REG_STR_SIZE, "%s-%s", + dev->kobj.name, supply_name); + if (size >= REG_STR_SIZE) + return NULL; + + supply_name = kstrdup(buf, GFP_KERNEL); + if (supply_name == NULL) + return NULL; + } else { + supply_name = kstrdup_const(supply_name, GFP_KERNEL); + if (supply_name == NULL) + return NULL; + } regulator = kzalloc(sizeof(*regulator), GFP_KERNEL); - if (regulator == NULL) + if (regulator == NULL) { + kfree(supply_name); return NULL; + } - regulator_lock(rdev); regulator->rdev = rdev; + regulator->supply_name = supply_name; + + regulator_lock(rdev); list_add(®ulator->list, &rdev->consumer_list); + regulator_unlock(rdev); if (dev) { regulator->dev = dev; /* Add a link to the device sysfs entry */ - size = snprintf(buf, REG_STR_SIZE, "%s-%s", - dev->kobj.name, supply_name); - if (size >= REG_STR_SIZE) - goto overflow_err; - - regulator->supply_name = kstrdup(buf, GFP_KERNEL); - if (regulator->supply_name == NULL) - goto overflow_err; - err = sysfs_create_link_nowarn(&rdev->dev.kobj, &dev->kobj, - buf); + supply_name); if (err) { rdev_dbg(rdev, "could not add device link %s err %d\n", dev->kobj.name, err); /* non-fatal */ } - } else { - regulator->supply_name = kstrdup_const(supply_name, GFP_KERNEL); - if (regulator->supply_name == NULL) - goto overflow_err; } - regulator->debugfs = debugfs_create_dir(regulator->supply_name, - rdev->debugfs); + if (err != -EEXIST) + regulator->debugfs = debugfs_create_dir(supply_name, rdev->debugfs); if (!regulator->debugfs) { rdev_dbg(rdev, "Failed to create debugfs directory\n"); } else { @@ -1641,13 +1651,7 @@ _regulator_is_enabled(rdev)) regulator->always_on = true; - regulator_unlock(rdev); return regulator; -overflow_err: - list_del(®ulator->list); - kfree(regulator); - regulator_unlock(rdev); - return NULL; } static int _regulator_get_enable_time(struct regulator_dev *rdev) @@ -1772,13 +1776,13 @@ { struct regulator_dev *r; struct device *dev = rdev->dev.parent; - int ret; + int ret = 0; /* No supply to resolve? */ if (!rdev->supply_name) return 0; - /* Supply already resolved? */ + /* Supply already resolved? (fast-path without locking contention) */ if (rdev->supply) return 0; @@ -1788,7 +1792,7 @@ /* Did the lookup explicitly defer for us? */ if (ret == -EPROBE_DEFER) - return ret; + goto out; if (have_full_constraints()) { r = dummy_regulator_rdev; @@ -1796,8 +1800,20 @@ } else { dev_err(dev, "Failed to resolve %s-supply for %s\n", rdev->supply_name, rdev->desc->name); - return -EPROBE_DEFER; + ret = -EPROBE_DEFER; + goto out; + } + } + + if (r == rdev) { + dev_err(dev, "Supply for %s (%s) resolved to itself\n", + rdev->desc->name, rdev->supply_name); + if (!have_full_constraints()) { + ret = -EINVAL; + goto out; } + r = dummy_regulator_rdev; + get_device(&r->dev); } /* @@ -1809,7 +1825,8 @@ if (r->dev.parent && r->dev.parent != rdev->dev.parent) { if (!device_is_bound(r->dev.parent)) { put_device(&r->dev); - return -EPROBE_DEFER; + ret = -EPROBE_DEFER; + goto out; } } @@ -1817,15 +1834,32 @@ ret = regulator_resolve_supply(r); if (ret < 0) { put_device(&r->dev); - return ret; + goto out; + } + + /* + * Recheck rdev->supply with rdev->mutex lock held to avoid a race + * between rdev->supply null check and setting rdev->supply in + * set_supply() from concurrent tasks. + */ + regulator_lock(rdev); + + /* Supply just resolved by a concurrent task? */ + if (rdev->supply) { + regulator_unlock(rdev); + put_device(&r->dev); + goto out; } ret = set_supply(rdev, r); if (ret < 0) { + regulator_unlock(rdev); put_device(&r->dev); - return ret; + goto out; } + regulator_unlock(rdev); + /* * In set_machine_constraints() we may have turned this regulator on * but we couldn't propagate to the supply if it hadn't been resolved @@ -1836,11 +1870,12 @@ if (ret < 0) { _regulator_put(rdev->supply); rdev->supply = NULL; - return ret; + goto out; } } - return 0; +out: + return ret; } /* Internal regulator request function */ @@ -2222,10 +2257,13 @@ static int regulator_ena_gpio_request(struct regulator_dev *rdev, const struct regulator_config *config) { - struct regulator_enable_gpio *pin; + struct regulator_enable_gpio *pin, *new_pin; struct gpio_desc *gpiod; gpiod = config->ena_gpiod; + new_pin = kzalloc(sizeof(*new_pin), GFP_KERNEL); + + mutex_lock(®ulator_list_mutex); list_for_each_entry(pin, ®ulator_ena_gpio_list, list) { if (pin->gpiod == gpiod) { @@ -2234,9 +2272,13 @@ } } - pin = kzalloc(sizeof(struct regulator_enable_gpio), GFP_KERNEL); - if (pin == NULL) + if (new_pin == NULL) { + mutex_unlock(®ulator_list_mutex); return -ENOMEM; + } + + pin = new_pin; + new_pin = NULL; pin->gpiod = gpiod; list_add(&pin->list, ®ulator_ena_gpio_list); @@ -2244,6 +2286,10 @@ update_ena_gpio_to_rdev: pin->request_count++; rdev->ena_pin = pin; + + mutex_unlock(®ulator_list_mutex); + kfree(new_pin); + return 0; } @@ -4033,6 +4079,8 @@ ret = rdev->desc->fixed_uV; } else if (rdev->supply) { ret = regulator_get_voltage_rdev(rdev->supply->rdev); + } else if (rdev->supply_name) { + return -EPROBE_DEFER; } else { return -EINVAL; } @@ -4880,13 +4928,9 @@ return; } - regulator_lock(c_rdev); - c_desc->coupled_rdevs[i] = c_rdev; c_desc->n_resolved++; - regulator_unlock(c_rdev); - regulator_resolve_coupling(c_rdev); } } @@ -4971,7 +5015,10 @@ if (!of_check_coupling_data(rdev)) return -EPERM; + mutex_lock(®ulator_list_mutex); rdev->coupling_desc.coupler = regulator_find_coupler(rdev); + mutex_unlock(®ulator_list_mutex); + if (IS_ERR(rdev->coupling_desc.coupler)) { err = PTR_ERR(rdev->coupling_desc.coupler); rdev_err(rdev, "failed to get coupler: %d\n", err); @@ -5016,14 +5063,12 @@ regulator_register(const struct regulator_desc *regulator_desc, const struct regulator_config *cfg) { - const struct regulation_constraints *constraints = NULL; const struct regulator_init_data *init_data; struct regulator_config *config = NULL; static atomic_t regulator_no = ATOMIC_INIT(-1); struct regulator_dev *rdev; bool dangling_cfg_gpiod = false; bool dangling_of_gpiod = false; - bool reg_device_fail = false; struct device *dev; int ret, i; @@ -5073,6 +5118,7 @@ ret = -ENOMEM; goto rinse; } + device_initialize(&rdev->dev); /* * Duplicate the config so the driver could override it after @@ -5080,9 +5126,8 @@ */ config = kmemdup(cfg, sizeof(*cfg), GFP_KERNEL); if (config == NULL) { - kfree(rdev); ret = -ENOMEM; - goto rinse; + goto clean; } init_data = regulator_of_get_init_data(dev, regulator_desc, config, @@ -5094,10 +5139,8 @@ * from a gpio extender or something else. */ if (PTR_ERR(init_data) == -EPROBE_DEFER) { - kfree(config); - kfree(rdev); ret = -EPROBE_DEFER; - goto rinse; + goto clean; } /* @@ -5138,9 +5181,7 @@ } if (config->ena_gpiod) { - mutex_lock(®ulator_list_mutex); ret = regulator_ena_gpio_request(rdev, config); - mutex_unlock(®ulator_list_mutex); if (ret != 0) { rdev_err(rdev, "Failed to request enable GPIO: %d\n", ret); @@ -5156,49 +5197,59 @@ rdev->dev.parent = dev; dev_set_name(&rdev->dev, "regulator.%lu", (unsigned long) atomic_inc_return(®ulator_no)); + dev_set_drvdata(&rdev->dev, rdev); /* set regulator constraints */ if (init_data) - constraints = &init_data->constraints; + rdev->constraints = kmemdup(&init_data->constraints, + sizeof(*rdev->constraints), + GFP_KERNEL); + else + rdev->constraints = kzalloc(sizeof(*rdev->constraints), + GFP_KERNEL); + if (!rdev->constraints) { + ret = -ENOMEM; + goto wash; + } if (init_data && init_data->supply_regulator) rdev->supply_name = init_data->supply_regulator; else if (regulator_desc->supply_name) rdev->supply_name = regulator_desc->supply_name; - /* - * Attempt to resolve the regulator supply, if specified, - * but don't return an error if we fail because we will try - * to resolve it again later as more regulators are added. - */ - if (regulator_resolve_supply(rdev)) - rdev_dbg(rdev, "unable to resolve supply\n"); - - ret = set_machine_constraints(rdev, constraints); + ret = set_machine_constraints(rdev); + if (ret == -EPROBE_DEFER) { + /* Regulator might be in bypass mode and so needs its supply + * to set the constraints */ + /* FIXME: this currently triggers a chicken-and-egg problem + * when creating -SUPPLY symlink in sysfs to a regulator + * that is just being created */ + ret = regulator_resolve_supply(rdev); + if (!ret) + ret = set_machine_constraints(rdev); + else + rdev_dbg(rdev, "unable to resolve supply early: %pe\n", + ERR_PTR(ret)); + } if (ret < 0) goto wash; - mutex_lock(®ulator_list_mutex); ret = regulator_init_coupling(rdev); - mutex_unlock(®ulator_list_mutex); if (ret < 0) goto wash; /* add consumers devices */ if (init_data) { - mutex_lock(®ulator_list_mutex); for (i = 0; i < init_data->num_consumer_supplies; i++) { ret = set_consumer_device_supply(rdev, init_data->consumer_supplies[i].dev_name, init_data->consumer_supplies[i].supply); if (ret < 0) { - mutex_unlock(®ulator_list_mutex); dev_err(dev, "Failed to set supply %s\n", init_data->consumer_supplies[i].supply); goto unset_supplies; } } - mutex_unlock(®ulator_list_mutex); } if (!rdev->desc->ops->get_voltage && @@ -5206,12 +5257,9 @@ !rdev->desc->fixed_uV) rdev->is_switch = true; - dev_set_drvdata(&rdev->dev, rdev); - ret = device_register(&rdev->dev); - if (ret != 0) { - reg_device_fail = true; + ret = device_add(&rdev->dev); + if (ret != 0) goto unset_supplies; - } rdev_init_debugfs(rdev); @@ -5233,18 +5281,14 @@ mutex_unlock(®ulator_list_mutex); wash: kfree(rdev->coupling_desc.coupled_rdevs); - kfree(rdev->constraints); mutex_lock(®ulator_list_mutex); regulator_ena_gpio_free(rdev); mutex_unlock(®ulator_list_mutex); clean: if (dangling_of_gpiod) gpiod_put(config->ena_gpiod); - if (reg_device_fail) - put_device(&rdev->dev); - else - kfree(rdev); kfree(config); + put_device(&rdev->dev); rinse: if (dangling_cfg_gpiod) gpiod_put(cfg->ena_gpiod); --- linux-azure-5.8-5.8.0.orig/drivers/regulator/pfuze100-regulator.c +++ linux-azure-5.8-5.8.0/drivers/regulator/pfuze100-regulator.c @@ -833,11 +833,14 @@ * the switched regulator till yet. */ if (pfuze_chip->flags & PFUZE_FLAG_DISABLE_SW) { - if (pfuze_chip->regulator_descs[i].sw_reg) { - desc->ops = &pfuze100_sw_disable_regulator_ops; - desc->enable_val = 0x8; - desc->disable_val = 0x0; - desc->enable_time = 500; + if (pfuze_chip->chip_id == PFUZE100 || + pfuze_chip->chip_id == PFUZE200) { + if (pfuze_chip->regulator_descs[i].sw_reg) { + desc->ops = &pfuze100_sw_disable_regulator_ops; + desc->enable_val = 0x8; + desc->disable_val = 0x0; + desc->enable_time = 500; + } } } --- linux-azure-5.8-5.8.0.orig/drivers/regulator/pwm-regulator.c +++ linux-azure-5.8-5.8.0/drivers/regulator/pwm-regulator.c @@ -279,7 +279,7 @@ return ret; } - drvdata->state = -EINVAL; + drvdata->state = -ENOTRECOVERABLE; drvdata->duty_cycle_table = duty_cycle_table; drvdata->desc.ops = &pwm_regulator_voltage_table_ops; drvdata->desc.n_voltages = length / sizeof(*duty_cycle_table); --- linux-azure-5.8-5.8.0.orig/drivers/regulator/qcom-rpmh-regulator.c +++ linux-azure-5.8-5.8.0/drivers/regulator/qcom-rpmh-regulator.c @@ -726,7 +726,16 @@ static const struct rpmh_vreg_hw_data pmic5_hfsmps515 = { .regulator_type = VRM, .ops = &rpmh_regulator_vrm_ops, - .voltage_range = REGULATOR_LINEAR_RANGE(2800000, 0, 4, 1600), + .voltage_range = REGULATOR_LINEAR_RANGE(2800000, 0, 4, 16000), + .n_voltages = 5, + .pmic_mode_map = pmic_mode_map_pmic5_smps, + .of_map_mode = rpmh_regulator_pmic4_smps_of_map_mode, +}; + +static const struct rpmh_vreg_hw_data pmic5_hfsmps515_1 = { + .regulator_type = VRM, + .ops = &rpmh_regulator_vrm_ops, + .voltage_range = REGULATOR_LINEAR_RANGE(900000, 0, 4, 16000), .n_voltages = 5, .pmic_mode_map = pmic_mode_map_pmic5_smps, .of_map_mode = rpmh_regulator_pmic4_smps_of_map_mode, @@ -874,6 +883,19 @@ RPMH_VREG("ldo4", "ldo%s4", &pmic5_nldo, "vdd-l4"), RPMH_VREG("ldo5", "ldo%s5", &pmic5_pldo, "vdd-l5-l6"), RPMH_VREG("ldo6", "ldo%s6", &pmic5_pldo, "vdd-l5-l6"), + RPMH_VREG("ldo7", "ldo%s7", &pmic5_pldo_lv, "vdd-l7"), + {}, +}; + +static const struct rpmh_vreg_init_data pm8009_1_vreg_data[] = { + RPMH_VREG("smps1", "smp%s1", &pmic5_hfsmps510, "vdd-s1"), + RPMH_VREG("smps2", "smp%s2", &pmic5_hfsmps515_1, "vdd-s2"), + RPMH_VREG("ldo1", "ldo%s1", &pmic5_nldo, "vdd-l1"), + RPMH_VREG("ldo2", "ldo%s2", &pmic5_nldo, "vdd-l2"), + RPMH_VREG("ldo3", "ldo%s3", &pmic5_nldo, "vdd-l3"), + RPMH_VREG("ldo4", "ldo%s4", &pmic5_nldo, "vdd-l4"), + RPMH_VREG("ldo5", "ldo%s5", &pmic5_pldo, "vdd-l5-l6"), + RPMH_VREG("ldo6", "ldo%s6", &pmic5_pldo, "vdd-l5-l6"), RPMH_VREG("ldo7", "ldo%s6", &pmic5_pldo_lv, "vdd-l7"), {}, }; @@ -977,6 +999,10 @@ .data = pm8009_vreg_data, }, { + .compatible = "qcom,pm8009-1-rpmh-regulators", + .data = pm8009_1_vreg_data, + }, + { .compatible = "qcom,pm8150-rpmh-regulators", .data = pm8150_vreg_data, }, --- linux-azure-5.8-5.8.0.orig/drivers/regulator/rohm-regulator.c +++ linux-azure-5.8-5.8.0/drivers/regulator/rohm-regulator.c @@ -52,9 +52,12 @@ char *prop; unsigned int reg, mask, omask, oreg = desc->enable_reg; - for (i = 0; i < ROHM_DVS_LEVEL_MAX && !ret; i++) { - if (dvs->level_map & (1 << i)) { - switch (i + 1) { + for (i = 0; i < ROHM_DVS_LEVEL_VALID_AMOUNT && !ret; i++) { + int bit; + + bit = BIT(i); + if (dvs->level_map & bit) { + switch (bit) { case ROHM_DVS_LEVEL_RUN: prop = "rohm,dvs-run-voltage"; reg = dvs->run_reg; --- linux-azure-5.8-5.8.0.orig/drivers/regulator/s5m8767.c +++ linux-azure-5.8-5.8.0/drivers/regulator/s5m8767.c @@ -544,14 +544,18 @@ rdata = devm_kcalloc(&pdev->dev, pdata->num_regulators, sizeof(*rdata), GFP_KERNEL); - if (!rdata) + if (!rdata) { + of_node_put(regulators_np); return -ENOMEM; + } rmode = devm_kcalloc(&pdev->dev, pdata->num_regulators, sizeof(*rmode), GFP_KERNEL); - if (!rmode) + if (!rmode) { + of_node_put(regulators_np); return -ENOMEM; + } pdata->regulators = rdata; pdata->opmode = rmode; @@ -573,10 +577,13 @@ "s5m8767,pmic-ext-control", GPIOD_OUT_HIGH | GPIOD_FLAGS_BIT_NONEXCLUSIVE, "s5m8767"); - if (PTR_ERR(rdata->ext_control_gpiod) == -ENOENT) + if (PTR_ERR(rdata->ext_control_gpiod) == -ENOENT) { rdata->ext_control_gpiod = NULL; - else if (IS_ERR(rdata->ext_control_gpiod)) + } else if (IS_ERR(rdata->ext_control_gpiod)) { + of_node_put(reg_np); + of_node_put(regulators_np); return PTR_ERR(rdata->ext_control_gpiod); + } rdata->id = i; rdata->initdata = of_get_regulator_init_data( --- linux-azure-5.8-5.8.0.orig/drivers/regulator/ti-abb-regulator.c +++ linux-azure-5.8-5.8.0/drivers/regulator/ti-abb-regulator.c @@ -342,8 +342,17 @@ return ret; } - /* If data is exactly the same, then just update index, no change */ info = &abb->info[sel]; + /* + * When Linux kernel is starting up, we are'nt sure of the + * Bias configuration that bootloader has configured. + * So, we get to know the actual setting the first time + * we are asked to transition. + */ + if (abb->current_info_idx == -EINVAL) + goto just_set_abb; + + /* If data is exactly the same, then just update index, no change */ oinfo = &abb->info[abb->current_info_idx]; if (!memcmp(info, oinfo, sizeof(*info))) { dev_dbg(dev, "%s: Same data new idx=%d, old idx=%d\n", __func__, @@ -351,6 +360,7 @@ goto out; } +just_set_abb: ret = ti_abb_set_opp(rdev, abb, info); out: --- linux-azure-5.8-5.8.0.orig/drivers/remoteproc/mtk_scp_ipi.c +++ linux-azure-5.8-5.8.0/drivers/remoteproc/mtk_scp_ipi.c @@ -30,10 +30,8 @@ scp_ipi_handler_t handler, void *priv) { - if (!scp) { - dev_err(scp->dev, "scp device is not ready\n"); + if (!scp) return -EPROBE_DEFER; - } if (WARN_ON(id >= SCP_IPI_MAX) || WARN_ON(handler == NULL)) return -EINVAL; --- linux-azure-5.8-5.8.0.orig/drivers/remoteproc/qcom_q6v5.c +++ linux-azure-5.8-5.8.0/drivers/remoteproc/qcom_q6v5.c @@ -153,6 +153,8 @@ { int ret; + q6v5->running = false; + qcom_smem_state_update_bits(q6v5->state, BIT(q6v5->stop_bit), BIT(q6v5->stop_bit)); --- linux-azure-5.8-5.8.0.orig/drivers/remoteproc/qcom_q6v5_adsp.c +++ linux-azure-5.8-5.8.0/drivers/remoteproc/qcom_q6v5_adsp.c @@ -184,8 +184,10 @@ dev_pm_genpd_set_performance_state(adsp->dev, INT_MAX); ret = pm_runtime_get_sync(adsp->dev); - if (ret) + if (ret) { + pm_runtime_put_noidle(adsp->dev); goto disable_xo_clk; + } ret = clk_bulk_prepare_enable(adsp->num_clks, adsp->clks); if (ret) { @@ -353,15 +355,12 @@ struct platform_device *pdev) { struct device_node *syscon; - struct resource *res; int ret; - res = platform_get_resource(pdev, IORESOURCE_MEM, 0); - adsp->qdsp6ss_base = devm_ioremap(&pdev->dev, res->start, - resource_size(res)); - if (!adsp->qdsp6ss_base) { + adsp->qdsp6ss_base = devm_platform_ioremap_resource(pdev, 0); + if (IS_ERR(adsp->qdsp6ss_base)) { dev_err(adsp->dev, "failed to map QDSP6SS registers\n"); - return -ENOMEM; + return PTR_ERR(adsp->qdsp6ss_base); } syscon = of_parse_phandle(pdev->dev.of_node, "qcom,halt-regs", 0); --- linux-azure-5.8-5.8.0.orig/drivers/remoteproc/qcom_q6v5_mss.c +++ linux-azure-5.8-5.8.0/drivers/remoteproc/qcom_q6v5_mss.c @@ -347,8 +347,11 @@ for (i = 0; i < pd_count; i++) { dev_pm_genpd_set_performance_state(pds[i], INT_MAX); ret = pm_runtime_get_sync(pds[i]); - if (ret < 0) + if (ret < 0) { + pm_runtime_put_noidle(pds[i]); + dev_pm_genpd_set_performance_state(pds[i], 0); goto unroll_pd_votes; + } } return 0; @@ -407,6 +410,12 @@ { struct q6v5 *qproc = rproc->priv; + /* MBA is restricted to a maximum size of 1M */ + if (fw->size > qproc->mba_size || fw->size > SZ_1M) { + dev_err(qproc->dev, "MBA firmware load failed\n"); + return -EINVAL; + } + memcpy(qproc->mba_region, fw->data, fw->size); return 0; @@ -1138,15 +1147,14 @@ } else if (phdr->p_filesz) { /* Replace "xxx.xxx" with "xxx.bxx" */ sprintf(fw_name + fw_name_len - 3, "b%02d", i); - ret = request_firmware(&seg_fw, fw_name, qproc->dev); + ret = request_firmware_into_buf(&seg_fw, fw_name, qproc->dev, + ptr, phdr->p_filesz); if (ret) { dev_err(qproc->dev, "failed to load %s\n", fw_name); iounmap(ptr); goto release_firmware; } - memcpy(ptr, seg_fw->data, seg_fw->size); - release_firmware(seg_fw); } --- linux-azure-5.8-5.8.0.orig/drivers/remoteproc/qcom_q6v5_pas.c +++ linux-azure-5.8-5.8.0/drivers/remoteproc/qcom_q6v5_pas.c @@ -88,8 +88,11 @@ for (i = 0; i < pd_count; i++) { dev_pm_genpd_set_performance_state(pds[i], INT_MAX); ret = pm_runtime_get_sync(pds[i]); - if (ret < 0) + if (ret < 0) { + pm_runtime_put_noidle(pds[i]); + dev_pm_genpd_set_performance_state(pds[i], 0); goto unroll_pd_votes; + } } return 0; --- linux-azure-5.8-5.8.0.orig/drivers/remoteproc/qcom_sysmon.c +++ linux-azure-5.8-5.8.0/drivers/remoteproc/qcom_sysmon.c @@ -22,6 +22,9 @@ struct rproc_subdev subdev; struct rproc *rproc; + int state; + struct mutex state_lock; + struct list_head node; const char *name; @@ -448,7 +451,10 @@ .ssr_event = SSCTL_SSR_EVENT_BEFORE_POWERUP }; + mutex_lock(&sysmon->state_lock); + sysmon->state = SSCTL_SSR_EVENT_BEFORE_POWERUP; blocking_notifier_call_chain(&sysmon_notifiers, 0, (void *)&event); + mutex_unlock(&sysmon->state_lock); return 0; } @@ -472,20 +478,25 @@ .ssr_event = SSCTL_SSR_EVENT_AFTER_POWERUP }; + mutex_lock(&sysmon->state_lock); + sysmon->state = SSCTL_SSR_EVENT_AFTER_POWERUP; blocking_notifier_call_chain(&sysmon_notifiers, 0, (void *)&event); + mutex_unlock(&sysmon->state_lock); mutex_lock(&sysmon_lock); list_for_each_entry(target, &sysmon_list, node) { - if (target == sysmon || - target->rproc->state != RPROC_RUNNING) + if (target == sysmon) continue; + mutex_lock(&target->state_lock); event.subsys_name = target->name; + event.ssr_event = target->state; if (sysmon->ssctl_version == 2) ssctl_send_event(sysmon, &event); else if (sysmon->ept) sysmon_send_event(sysmon, &event); + mutex_unlock(&target->state_lock); } mutex_unlock(&sysmon_lock); @@ -500,7 +511,10 @@ .ssr_event = SSCTL_SSR_EVENT_BEFORE_SHUTDOWN }; + mutex_lock(&sysmon->state_lock); + sysmon->state = SSCTL_SSR_EVENT_BEFORE_SHUTDOWN; blocking_notifier_call_chain(&sysmon_notifiers, 0, (void *)&event); + mutex_unlock(&sysmon->state_lock); /* Don't request graceful shutdown if we've crashed */ if (crashed) @@ -521,7 +535,10 @@ .ssr_event = SSCTL_SSR_EVENT_AFTER_SHUTDOWN }; + mutex_lock(&sysmon->state_lock); + sysmon->state = SSCTL_SSR_EVENT_AFTER_SHUTDOWN; blocking_notifier_call_chain(&sysmon_notifiers, 0, (void *)&event); + mutex_unlock(&sysmon->state_lock); } /** @@ -534,11 +551,10 @@ void *data) { struct qcom_sysmon *sysmon = container_of(nb, struct qcom_sysmon, nb); - struct rproc *rproc = sysmon->rproc; struct sysmon_event *sysmon_event = data; /* Skip non-running rprocs and the originating instance */ - if (rproc->state != RPROC_RUNNING || + if (sysmon->state != SSCTL_SSR_EVENT_AFTER_POWERUP || !strcmp(sysmon_event->subsys_name, sysmon->name)) { dev_dbg(sysmon->dev, "not notifying %s\n", sysmon->name); return NOTIFY_DONE; @@ -591,6 +607,7 @@ init_completion(&sysmon->ind_comp); init_completion(&sysmon->shutdown_comp); mutex_init(&sysmon->lock); + mutex_init(&sysmon->state_lock); sysmon->shutdown_irq = of_irq_get_byname(sysmon->dev->of_node, "shutdown-ack"); --- linux-azure-5.8-5.8.0.orig/drivers/reset/reset-intel-gw.c +++ linux-azure-5.8-5.8.0/drivers/reset/reset-intel-gw.c @@ -15,9 +15,9 @@ #define RCU_RST_STAT 0x0024 #define RCU_RST_REQ 0x0048 -#define REG_OFFSET GENMASK(31, 16) -#define BIT_OFFSET GENMASK(15, 8) -#define STAT_BIT_OFFSET GENMASK(7, 0) +#define REG_OFFSET_MASK GENMASK(31, 16) +#define BIT_OFFSET_MASK GENMASK(15, 8) +#define STAT_BIT_OFFSET_MASK GENMASK(7, 0) #define to_reset_data(x) container_of(x, struct intel_reset_data, rcdev) @@ -51,11 +51,11 @@ unsigned long id, u32 *rst_req, u32 *req_bit, u32 *stat_bit) { - *rst_req = FIELD_GET(REG_OFFSET, id); - *req_bit = FIELD_GET(BIT_OFFSET, id); + *rst_req = FIELD_GET(REG_OFFSET_MASK, id); + *req_bit = FIELD_GET(BIT_OFFSET_MASK, id); if (data->soc_data->legacy) - *stat_bit = FIELD_GET(STAT_BIT_OFFSET, id); + *stat_bit = FIELD_GET(STAT_BIT_OFFSET_MASK, id); else *stat_bit = *req_bit; @@ -141,14 +141,14 @@ if (spec->args[1] > 31) return -EINVAL; - id = FIELD_PREP(REG_OFFSET, spec->args[0]); - id |= FIELD_PREP(BIT_OFFSET, spec->args[1]); + id = FIELD_PREP(REG_OFFSET_MASK, spec->args[0]); + id |= FIELD_PREP(BIT_OFFSET_MASK, spec->args[1]); if (data->soc_data->legacy) { if (spec->args[2] > 31) return -EINVAL; - id |= FIELD_PREP(STAT_BIT_OFFSET, spec->args[2]); + id |= FIELD_PREP(STAT_BIT_OFFSET_MASK, spec->args[2]); } return id; @@ -210,11 +210,11 @@ if (ret) return ret; - data->reboot_id = FIELD_PREP(REG_OFFSET, rb_id[0]); - data->reboot_id |= FIELD_PREP(BIT_OFFSET, rb_id[1]); + data->reboot_id = FIELD_PREP(REG_OFFSET_MASK, rb_id[0]); + data->reboot_id |= FIELD_PREP(BIT_OFFSET_MASK, rb_id[1]); if (data->soc_data->legacy) - data->reboot_id |= FIELD_PREP(STAT_BIT_OFFSET, rb_id[2]); + data->reboot_id |= FIELD_PREP(STAT_BIT_OFFSET_MASK, rb_id[2]); data->restart_nb.notifier_call = intel_reset_restart_handler; data->restart_nb.priority = 128; --- linux-azure-5.8-5.8.0.orig/drivers/rpmsg/mtk_rpmsg.c +++ linux-azure-5.8-5.8.0/drivers/rpmsg/mtk_rpmsg.c @@ -200,7 +200,6 @@ struct rpmsg_device *rpdev; struct mtk_rpmsg_device *mdev; struct platform_device *pdev = mtk_subdev->pdev; - int ret; mdev = kzalloc(sizeof(*mdev), GFP_KERNEL); if (!mdev) @@ -219,13 +218,7 @@ rpdev->dev.parent = &pdev->dev; rpdev->dev.release = mtk_rpmsg_release_device; - ret = rpmsg_register_device(rpdev); - if (ret) { - kfree(mdev); - return ret; - } - - return 0; + return rpmsg_register_device(rpdev); } static void mtk_register_device_work_function(struct work_struct *register_work) --- linux-azure-5.8-5.8.0.orig/drivers/rpmsg/qcom_glink_native.c +++ linux-azure-5.8-5.8.0/drivers/rpmsg/qcom_glink_native.c @@ -970,7 +970,7 @@ return -EINVAL; } - complete(&channel->open_ack); + complete_all(&channel->open_ack); return 0; } @@ -1178,7 +1178,7 @@ __be32 *val = defaults; int size; - if (glink->intentless) + if (glink->intentless || !completion_done(&channel->open_ack)) return 0; prop = of_find_property(np, "qcom,intents", NULL); @@ -1413,7 +1413,7 @@ channel->rcid = ret; spin_unlock_irqrestore(&glink->idr_lock, flags); - complete(&channel->open_req); + complete_all(&channel->open_req); if (create_device) { rpdev = kzalloc(sizeof(*rpdev), GFP_KERNEL); --- linux-azure-5.8-5.8.0.orig/drivers/rpmsg/qcom_smd.c +++ linux-azure-5.8-5.8.0/drivers/rpmsg/qcom_smd.c @@ -1338,7 +1338,7 @@ ret = of_property_read_u32(node, key, &edge->edge_id); if (ret) { dev_err(dev, "edge missing %s property\n", key); - return -EINVAL; + goto put_node; } edge->remote_pid = QCOM_SMEM_HOST_ANY; @@ -1349,32 +1349,37 @@ edge->mbox_client.knows_txdone = true; edge->mbox_chan = mbox_request_channel(&edge->mbox_client, 0); if (IS_ERR(edge->mbox_chan)) { - if (PTR_ERR(edge->mbox_chan) != -ENODEV) - return PTR_ERR(edge->mbox_chan); + if (PTR_ERR(edge->mbox_chan) != -ENODEV) { + ret = PTR_ERR(edge->mbox_chan); + goto put_node; + } edge->mbox_chan = NULL; syscon_np = of_parse_phandle(node, "qcom,ipc", 0); if (!syscon_np) { dev_err(dev, "no qcom,ipc node\n"); - return -ENODEV; + ret = -ENODEV; + goto put_node; } edge->ipc_regmap = syscon_node_to_regmap(syscon_np); - if (IS_ERR(edge->ipc_regmap)) - return PTR_ERR(edge->ipc_regmap); + if (IS_ERR(edge->ipc_regmap)) { + ret = PTR_ERR(edge->ipc_regmap); + goto put_node; + } key = "qcom,ipc"; ret = of_property_read_u32_index(node, key, 1, &edge->ipc_offset); if (ret < 0) { dev_err(dev, "no offset in %s\n", key); - return -EINVAL; + goto put_node; } ret = of_property_read_u32_index(node, key, 2, &edge->ipc_bit); if (ret < 0) { dev_err(dev, "no bit in %s\n", key); - return -EINVAL; + goto put_node; } } @@ -1385,7 +1390,8 @@ irq = irq_of_parse_and_map(node, 0); if (irq < 0) { dev_err(dev, "required smd interrupt missing\n"); - return -EINVAL; + ret = irq; + goto put_node; } ret = devm_request_irq(dev, irq, @@ -1393,12 +1399,18 @@ node->name, edge); if (ret) { dev_err(dev, "failed to request smd irq\n"); - return ret; + goto put_node; } edge->irq = irq; return 0; + +put_node: + of_node_put(node); + edge->of_node = NULL; + + return ret; } /* --- linux-azure-5.8-5.8.0.orig/drivers/rtc/Kconfig +++ linux-azure-5.8-5.8.0/drivers/rtc/Kconfig @@ -681,6 +681,7 @@ tristate "Samsung S2M/S5M series" depends on MFD_SEC_CORE || COMPILE_TEST select REGMAP_IRQ + select REGMAP_I2C help If you say yes here you will get support for the RTC of Samsung S2MPS14 and S5M PMIC series. @@ -1285,7 +1286,7 @@ config RTC_DRV_ZYNQMP tristate "Xilinx Zynq Ultrascale+ MPSoC RTC" - depends on OF + depends on OF && HAS_IOMEM help If you say yes here you get support for the RTC controller found on Xilinx Zynq Ultrascale+ MPSoC. --- linux-azure-5.8-5.8.0.orig/drivers/rtc/rtc-cpcap.c +++ linux-azure-5.8-5.8.0/drivers/rtc/rtc-cpcap.c @@ -261,7 +261,7 @@ return PTR_ERR(rtc->rtc_dev); rtc->rtc_dev->ops = &cpcap_rtc_ops; - rtc->rtc_dev->range_max = (1 << 14) * SECS_PER_DAY - 1; + rtc->rtc_dev->range_max = (timeu64_t) (DAY_MASK + 1) * SECS_PER_DAY - 1; err = cpcap_get_vendor(dev, rtc->regmap, &rtc->vendor); if (err) --- linux-azure-5.8-5.8.0.orig/drivers/rtc/rtc-ds1307.c +++ linux-azure-5.8-5.8.0/drivers/rtc/rtc-ds1307.c @@ -352,6 +352,10 @@ regmap_update_bits(ds1307->regmap, DS1340_REG_FLAG, DS1340_BIT_OSF, 0); break; + case ds_1388: + regmap_update_bits(ds1307->regmap, DS1388_REG_FLAG, + DS1388_BIT_OSF, 0); + break; case mcp794xx: /* * these bits were cleared when preparing the date/time --- linux-azure-5.8-5.8.0.orig/drivers/rtc/rtc-ep93xx.c +++ linux-azure-5.8-5.8.0/drivers/rtc/rtc-ep93xx.c @@ -33,7 +33,7 @@ static int ep93xx_rtc_get_swcomp(struct device *dev, unsigned short *preload, unsigned short *delete) { - struct ep93xx_rtc *ep93xx_rtc = dev_get_platdata(dev); + struct ep93xx_rtc *ep93xx_rtc = dev_get_drvdata(dev); unsigned long comp; comp = readl(ep93xx_rtc->mmio_base + EP93XX_RTC_SWCOMP); @@ -51,7 +51,7 @@ static int ep93xx_rtc_read_time(struct device *dev, struct rtc_time *tm) { - struct ep93xx_rtc *ep93xx_rtc = dev_get_platdata(dev); + struct ep93xx_rtc *ep93xx_rtc = dev_get_drvdata(dev); unsigned long time; time = readl(ep93xx_rtc->mmio_base + EP93XX_RTC_DATA); @@ -62,7 +62,7 @@ static int ep93xx_rtc_set_time(struct device *dev, struct rtc_time *tm) { - struct ep93xx_rtc *ep93xx_rtc = dev_get_platdata(dev); + struct ep93xx_rtc *ep93xx_rtc = dev_get_drvdata(dev); unsigned long secs = rtc_tm_to_time64(tm); writel(secs + 1, ep93xx_rtc->mmio_base + EP93XX_RTC_LOAD); --- linux-azure-5.8-5.8.0.orig/drivers/rtc/rtc-goldfish.c +++ linux-azure-5.8-5.8.0/drivers/rtc/rtc-goldfish.c @@ -73,6 +73,7 @@ rtc_alarm64 = rtc_tm_to_time64(&alrm->time) * NSEC_PER_SEC; writel((rtc_alarm64 >> 32), base + TIMER_ALARM_HIGH); writel(rtc_alarm64, base + TIMER_ALARM_LOW); + writel(1, base + TIMER_IRQ_ENABLED); } else { /* * if this function was called with enabled=0 --- linux-azure-5.8-5.8.0.orig/drivers/rtc/rtc-pcf2127.c +++ linux-azure-5.8-5.8.0/drivers/rtc/rtc-pcf2127.c @@ -232,10 +232,8 @@ if (ret) return ret; - ret = regmap_bulk_read(pcf2127->regmap, PCF2127_REG_RAM_RD_CMD, - val, bytes); - - return ret ?: bytes; + return regmap_bulk_read(pcf2127->regmap, PCF2127_REG_RAM_RD_CMD, + val, bytes); } static int pcf2127_nvmem_write(void *priv, unsigned int offset, @@ -250,10 +248,8 @@ if (ret) return ret; - ret = regmap_bulk_write(pcf2127->regmap, PCF2127_REG_RAM_WRT_CMD, - val, bytes); - - return ret ?: bytes; + return regmap_bulk_write(pcf2127->regmap, PCF2127_REG_RAM_WRT_CMD, + val, bytes); } /* watchdog driver */ @@ -324,6 +320,37 @@ .set_timeout = pcf2127_wdt_set_timeout, }; +static int pcf2127_watchdog_init(struct device *dev, struct pcf2127 *pcf2127) +{ + u32 wdd_timeout; + int ret; + + if (!IS_ENABLED(CONFIG_WATCHDOG) || + !device_property_read_bool(dev, "reset-source")) + return 0; + + pcf2127->wdd.parent = dev; + pcf2127->wdd.info = &pcf2127_wdt_info; + pcf2127->wdd.ops = &pcf2127_watchdog_ops; + pcf2127->wdd.min_timeout = PCF2127_WD_VAL_MIN; + pcf2127->wdd.max_timeout = PCF2127_WD_VAL_MAX; + pcf2127->wdd.timeout = PCF2127_WD_VAL_DEFAULT; + pcf2127->wdd.min_hw_heartbeat_ms = 500; + pcf2127->wdd.status = WATCHDOG_NOWAYOUT_INIT_STATUS; + + watchdog_set_drvdata(&pcf2127->wdd, pcf2127); + + /* Test if watchdog timer is started by bootloader */ + ret = regmap_read(pcf2127->regmap, PCF2127_REG_WD_VAL, &wdd_timeout); + if (ret) + return ret; + + if (wdd_timeout) + set_bit(WDOG_HW_RUNNING, &pcf2127->wdd.status); + + return devm_watchdog_register_device(dev, &pcf2127->wdd); +} + /* sysfs interface */ static ssize_t timestamp0_store(struct device *dev, @@ -419,7 +446,6 @@ const char *name, bool has_nvmem) { struct pcf2127 *pcf2127; - u32 wdd_timeout; int ret = 0; dev_dbg(dev, "%s\n", __func__); @@ -441,17 +467,6 @@ pcf2127->rtc->range_max = RTC_TIMESTAMP_END_2099; pcf2127->rtc->set_start_time = true; /* Sets actual start to 1970 */ - pcf2127->wdd.parent = dev; - pcf2127->wdd.info = &pcf2127_wdt_info; - pcf2127->wdd.ops = &pcf2127_watchdog_ops; - pcf2127->wdd.min_timeout = PCF2127_WD_VAL_MIN; - pcf2127->wdd.max_timeout = PCF2127_WD_VAL_MAX; - pcf2127->wdd.timeout = PCF2127_WD_VAL_DEFAULT; - pcf2127->wdd.min_hw_heartbeat_ms = 500; - pcf2127->wdd.status = WATCHDOG_NOWAYOUT_INIT_STATUS; - - watchdog_set_drvdata(&pcf2127->wdd, pcf2127); - if (has_nvmem) { struct nvmem_config nvmem_cfg = { .priv = pcf2127, @@ -481,19 +496,7 @@ return ret; } - /* Test if watchdog timer is started by bootloader */ - ret = regmap_read(pcf2127->regmap, PCF2127_REG_WD_VAL, &wdd_timeout); - if (ret) - return ret; - - if (wdd_timeout) - set_bit(WDOG_HW_RUNNING, &pcf2127->wdd.status); - -#ifdef CONFIG_WATCHDOG - ret = devm_watchdog_register_device(dev, &pcf2127->wdd); - if (ret) - return ret; -#endif /* CONFIG_WATCHDOG */ + pcf2127_watchdog_init(dev, pcf2127); /* * Disable battery low/switch-over timestamp and interrupts. --- linux-azure-5.8-5.8.0.orig/drivers/rtc/rtc-pl031.c +++ linux-azure-5.8-5.8.0/drivers/rtc/rtc-pl031.c @@ -275,6 +275,7 @@ struct pl031_local *ldata = dev_get_drvdata(dev); writel(rtc_tm_to_time64(&alarm->time), ldata->base + RTC_MR); + pl031_alarm_irq_enable(dev, alarm->enabled); return 0; } @@ -360,8 +361,10 @@ device_init_wakeup(&adev->dev, true); ldata->rtc = devm_rtc_allocate_device(&adev->dev); - if (IS_ERR(ldata->rtc)) - return PTR_ERR(ldata->rtc); + if (IS_ERR(ldata->rtc)) { + ret = PTR_ERR(ldata->rtc); + goto out; + } ldata->rtc->ops = ops; ldata->rtc->range_min = vendor->range_min; --- linux-azure-5.8-5.8.0.orig/drivers/rtc/rtc-rx8010.c +++ linux-azure-5.8-5.8.0/drivers/rtc/rtc-rx8010.c @@ -407,16 +407,26 @@ } } -static struct rtc_class_ops rx8010_rtc_ops = { +static const struct rtc_class_ops rx8010_rtc_ops_default = { .read_time = rx8010_get_time, .set_time = rx8010_set_time, .ioctl = rx8010_ioctl, }; +static const struct rtc_class_ops rx8010_rtc_ops_alarm = { + .read_time = rx8010_get_time, + .set_time = rx8010_set_time, + .ioctl = rx8010_ioctl, + .read_alarm = rx8010_read_alarm, + .set_alarm = rx8010_set_alarm, + .alarm_irq_enable = rx8010_alarm_irq_enable, +}; + static int rx8010_probe(struct i2c_client *client, const struct i2c_device_id *id) { struct i2c_adapter *adapter = client->adapter; + const struct rtc_class_ops *rtc_ops; struct rx8010_data *rx8010; int err = 0; @@ -447,16 +457,16 @@ if (err) { dev_err(&client->dev, "unable to request IRQ\n"); - client->irq = 0; - } else { - rx8010_rtc_ops.read_alarm = rx8010_read_alarm; - rx8010_rtc_ops.set_alarm = rx8010_set_alarm; - rx8010_rtc_ops.alarm_irq_enable = rx8010_alarm_irq_enable; + return err; } + + rtc_ops = &rx8010_rtc_ops_alarm; + } else { + rtc_ops = &rx8010_rtc_ops_default; } rx8010->rtc = devm_rtc_device_register(&client->dev, client->name, - &rx8010_rtc_ops, THIS_MODULE); + rtc_ops, THIS_MODULE); if (IS_ERR(rx8010->rtc)) { dev_err(&client->dev, "unable to register the class device\n"); --- linux-azure-5.8-5.8.0.orig/drivers/rtc/rtc-sun6i.c +++ linux-azure-5.8-5.8.0/drivers/rtc/rtc-sun6i.c @@ -272,7 +272,7 @@ 300000000); if (IS_ERR(rtc->int_osc)) { pr_crit("Couldn't register the internal oscillator\n"); - return; + goto err; } parents[0] = clk_hw_get_name(rtc->int_osc); @@ -290,7 +290,7 @@ rtc->losc = clk_register(NULL, &rtc->hw); if (IS_ERR(rtc->losc)) { pr_crit("Couldn't register the LOSC clock\n"); - return; + goto err_register; } of_property_read_string_index(node, "clock-output-names", 1, @@ -301,7 +301,7 @@ &rtc->lock); if (IS_ERR(rtc->ext_losc)) { pr_crit("Couldn't register the LOSC external gate\n"); - return; + goto err_register; } clk_data->num = 2; @@ -314,6 +314,8 @@ of_clk_add_hw_provider(node, of_clk_hw_onecell_get, clk_data); return; +err_register: + clk_hw_unregister_fixed_rate(rtc->int_osc); err: kfree(clk_data); } --- linux-azure-5.8-5.8.0.orig/drivers/s390/block/dasd.c +++ linux-azure-5.8-5.8.0/drivers/s390/block/dasd.c @@ -2980,6 +2980,12 @@ if (!block) return -EINVAL; + /* + * If the request is an ERP request there is nothing to requeue. + * This will be done with the remaining original request. + */ + if (cqr->refers) + return 0; spin_lock_irq(&cqr->dq->lock); req = (struct request *) cqr->callback_data; blk_mq_requeue_request(req, false); --- linux-azure-5.8-5.8.0.orig/drivers/s390/block/dasd_alias.c +++ linux-azure-5.8-5.8.0/drivers/s390/block/dasd_alias.c @@ -256,7 +256,6 @@ return; device->discipline->get_uid(device, &uid); spin_lock_irqsave(&lcu->lock, flags); - list_del_init(&device->alias_list); /* make sure that the workers don't use this device */ if (device == lcu->suc_data.device) { spin_unlock_irqrestore(&lcu->lock, flags); @@ -283,6 +282,7 @@ spin_lock_irqsave(&aliastree.lock, flags); spin_lock(&lcu->lock); + list_del_init(&device->alias_list); if (list_empty(&lcu->grouplist) && list_empty(&lcu->active_devices) && list_empty(&lcu->inactive_devices)) { @@ -462,11 +462,19 @@ spin_unlock_irqrestore(&lcu->lock, flags); rc = dasd_sleep_on(cqr); - if (rc && !suborder_not_supported(cqr)) { + if (!rc) + goto out; + + if (suborder_not_supported(cqr)) { + /* suborder not supported or device unusable for IO */ + rc = -EOPNOTSUPP; + } else { + /* IO failed but should be retried */ spin_lock_irqsave(&lcu->lock, flags); lcu->flags |= NEED_UAC_UPDATE; spin_unlock_irqrestore(&lcu->lock, flags); } +out: dasd_sfree_request(cqr, cqr->memdev); return rc; } @@ -503,6 +511,14 @@ return rc; spin_lock_irqsave(&lcu->lock, flags); + /* + * there is another update needed skip the remaining handling + * the data might already be outdated + * but especially do not add the device to an LCU with pending + * update + */ + if (lcu->flags & NEED_UAC_UPDATE) + goto out; lcu->pav = NO_PAV; for (i = 0; i < MAX_DEVICES_PER_LCU; ++i) { switch (lcu->uac->unit[i].ua_type) { @@ -521,6 +537,7 @@ alias_list) { _add_device_to_lcu(lcu, device, refdev); } +out: spin_unlock_irqrestore(&lcu->lock, flags); return 0; } @@ -625,6 +642,7 @@ } if (lcu->flags & UPDATE_PENDING) { list_move(&device->alias_list, &lcu->active_devices); + private->pavgroup = NULL; _schedule_lcu_update(lcu, device); } spin_unlock_irqrestore(&lcu->lock, flags); --- linux-azure-5.8-5.8.0.orig/drivers/s390/block/dasd_diag.c +++ linux-azure-5.8-5.8.0/drivers/s390/block/dasd_diag.c @@ -319,7 +319,7 @@ struct dasd_diag_characteristics *rdc_data; struct vtoc_cms_label *label; struct dasd_block *block; - struct dasd_diag_bio bio; + struct dasd_diag_bio *bio; unsigned int sb, bsize; blocknum_t end_block; int rc; @@ -395,29 +395,36 @@ rc = -ENOMEM; goto out; } + bio = kzalloc(sizeof(*bio), GFP_KERNEL); + if (bio == NULL) { + DBF_DEV_EVENT(DBF_WARNING, device, "%s", + "No memory to allocate initialization bio"); + rc = -ENOMEM; + goto out_label; + } rc = 0; end_block = 0; /* try all sizes - needed for ECKD devices */ for (bsize = 512; bsize <= PAGE_SIZE; bsize <<= 1) { mdsk_init_io(device, bsize, 0, &end_block); - memset(&bio, 0, sizeof (struct dasd_diag_bio)); - bio.type = MDSK_READ_REQ; - bio.block_number = private->pt_block + 1; - bio.buffer = label; + memset(bio, 0, sizeof(*bio)); + bio->type = MDSK_READ_REQ; + bio->block_number = private->pt_block + 1; + bio->buffer = label; memset(&private->iob, 0, sizeof (struct dasd_diag_rw_io)); private->iob.dev_nr = rdc_data->dev_nr; private->iob.key = 0; private->iob.flags = 0; /* do synchronous io */ private->iob.block_count = 1; private->iob.interrupt_params = 0; - private->iob.bio_list = &bio; + private->iob.bio_list = bio; private->iob.flaga = DASD_DIAG_FLAGA_DEFAULT; rc = dia250(&private->iob, RW_BIO); if (rc == 3) { pr_warn("%s: A 64-bit DIAG call failed\n", dev_name(&device->cdev->dev)); rc = -EOPNOTSUPP; - goto out_label; + goto out_bio; } mdsk_term_io(device); if (rc == 0) @@ -427,7 +434,7 @@ pr_warn("%s: Accessing the DASD failed because of an incorrect format (rc=%d)\n", dev_name(&device->cdev->dev), rc); rc = -EIO; - goto out_label; + goto out_bio; } /* check for label block */ if (memcmp(label->label_id, DASD_DIAG_CMS1, @@ -457,6 +464,8 @@ (rc == 4) ? ", read-only device" : ""); rc = 0; } +out_bio: + kfree(bio); out_label: free_page((long) label); out: --- linux-azure-5.8-5.8.0.orig/drivers/s390/block/dasd_fba.c +++ linux-azure-5.8-5.8.0/drivers/s390/block/dasd_fba.c @@ -40,6 +40,7 @@ MODULE_LICENSE("GPL"); static struct dasd_discipline dasd_fba_discipline; +static void *dasd_fba_zero_page; struct dasd_fba_private { struct dasd_fba_characteristics rdc_data; @@ -270,7 +271,7 @@ ccw->cmd_code = DASD_FBA_CCW_WRITE; ccw->flags |= CCW_FLAG_SLI; ccw->count = count; - ccw->cda = (__u32) (addr_t) page_to_phys(ZERO_PAGE(0)); + ccw->cda = (__u32) (addr_t) dasd_fba_zero_page; } /* @@ -830,6 +831,11 @@ int ret; ASCEBC(dasd_fba_discipline.ebcname, 4); + + dasd_fba_zero_page = (void *)get_zeroed_page(GFP_KERNEL | GFP_DMA); + if (!dasd_fba_zero_page) + return -ENOMEM; + ret = ccw_driver_register(&dasd_fba_driver); if (!ret) wait_for_device_probe(); @@ -841,6 +847,7 @@ dasd_fba_cleanup(void) { ccw_driver_unregister(&dasd_fba_driver); + free_page((unsigned long)dasd_fba_zero_page); } module_init(dasd_fba_init); --- linux-azure-5.8-5.8.0.orig/drivers/s390/cio/css.c +++ linux-azure-5.8-5.8.0/drivers/s390/cio/css.c @@ -677,6 +677,11 @@ rc = css_evaluate_known_subchannel(sch, 1); if (rc == -EAGAIN) css_schedule_eval(sch->schid); + /* + * The loop might take long time for platforms with lots of + * known devices. Allow scheduling here. + */ + cond_resched(); } return 0; } --- linux-azure-5.8-5.8.0.orig/drivers/s390/cio/device.c +++ linux-azure-5.8-5.8.0/drivers/s390/cio/device.c @@ -1664,10 +1664,10 @@ struct io_subchannel_private *io_priv = to_io_private(sch); set_io_private(sch, NULL); - put_device(&sch->dev); - put_device(&cdev->dev); dma_free_coherent(&sch->dev, sizeof(*io_priv->dma_area), io_priv->dma_area, io_priv->dma_area_dma); + put_device(&sch->dev); + put_device(&cdev->dev); kfree(io_priv); } --- linux-azure-5.8-5.8.0.orig/drivers/s390/crypto/pkey_api.c +++ linux-azure-5.8-5.8.0/drivers/s390/crypto/pkey_api.c @@ -34,9 +34,6 @@ #define KEYBLOBBUFSIZE 8192 /* key buffer size used for internal processing */ #define MAXAPQNSINLIST 64 /* max 64 apqns within a apqn list */ -/* mask of available pckmo subfunctions, fetched once at module init */ -static cpacf_mask_t pckmo_functions; - /* * debug feature data and functions */ @@ -90,6 +87,9 @@ const struct pkey_clrkey *clrkey, struct pkey_protkey *protkey) { + /* mask of available pckmo subfunctions */ + static cpacf_mask_t pckmo_functions; + long fc; int keysize; u8 paramblock[64]; @@ -113,11 +113,13 @@ return -EINVAL; } - /* - * Check if the needed pckmo subfunction is available. - * These subfunctions can be enabled/disabled by customers - * in the LPAR profile or may even change on the fly. - */ + /* Did we already check for PCKMO ? */ + if (!pckmo_functions.bytes[0]) { + /* no, so check now */ + if (!cpacf_query(CPACF_PCKMO, &pckmo_functions)) + return -ENODEV; + } + /* check for the pckmo subfunction we need now */ if (!cpacf_test_func(&pckmo_functions, fc)) { DEBUG_ERR("%s pckmo functions not available\n", __func__); return -ENODEV; @@ -1838,7 +1840,7 @@ */ static int __init pkey_init(void) { - cpacf_mask_t kmc_functions; + cpacf_mask_t func_mask; /* * The pckmo instruction should be available - even if we don't @@ -1846,15 +1848,15 @@ * is also the minimum level for the kmc instructions which * are able to work with protected keys. */ - if (!cpacf_query(CPACF_PCKMO, &pckmo_functions)) + if (!cpacf_query(CPACF_PCKMO, &func_mask)) return -ENODEV; /* check for kmc instructions available */ - if (!cpacf_query(CPACF_KMC, &kmc_functions)) + if (!cpacf_query(CPACF_KMC, &func_mask)) return -ENODEV; - if (!cpacf_test_func(&kmc_functions, CPACF_KMC_PAES_128) || - !cpacf_test_func(&kmc_functions, CPACF_KMC_PAES_192) || - !cpacf_test_func(&kmc_functions, CPACF_KMC_PAES_256)) + if (!cpacf_test_func(&func_mask, CPACF_KMC_PAES_128) || + !cpacf_test_func(&func_mask, CPACF_KMC_PAES_192) || + !cpacf_test_func(&func_mask, CPACF_KMC_PAES_256)) return -ENODEV; pkey_debug_init(); --- linux-azure-5.8-5.8.0.orig/drivers/s390/crypto/vfio_ap_drv.c +++ linux-azure-5.8-5.8.0/drivers/s390/crypto/vfio_ap_drv.c @@ -71,15 +71,11 @@ static void vfio_ap_queue_dev_remove(struct ap_device *apdev) { struct vfio_ap_queue *q; - int apid, apqi; mutex_lock(&matrix_dev->lock); q = dev_get_drvdata(&apdev->device); + vfio_ap_mdev_reset_queue(q, 1); dev_set_drvdata(&apdev->device, NULL); - apid = AP_QID_CARD(q->apqn); - apqi = AP_QID_QUEUE(q->apqn); - vfio_ap_mdev_reset_queue(apid, apqi, 1); - vfio_ap_irq_disable(q); kfree(q); mutex_unlock(&matrix_dev->lock); } --- linux-azure-5.8-5.8.0.orig/drivers/s390/crypto/vfio_ap_ops.c +++ linux-azure-5.8-5.8.0/drivers/s390/crypto/vfio_ap_ops.c @@ -25,6 +25,7 @@ #define VFIO_AP_MDEV_NAME_HWVIRT "VFIO AP Passthrough Device" static int vfio_ap_mdev_reset_queues(struct mdev_device *mdev); +static struct vfio_ap_queue *vfio_ap_find_queue(int apqn); static int match_apqn(struct device *dev, const void *data) { @@ -49,20 +50,15 @@ int apqn) { struct vfio_ap_queue *q; - struct device *dev; if (!test_bit_inv(AP_QID_CARD(apqn), matrix_mdev->matrix.apm)) return NULL; if (!test_bit_inv(AP_QID_QUEUE(apqn), matrix_mdev->matrix.aqm)) return NULL; - dev = driver_find_device(&matrix_dev->vfio_ap_drv->driver, NULL, - &apqn, match_apqn); - if (!dev) - return NULL; - q = dev_get_drvdata(dev); - q->matrix_mdev = matrix_mdev; - put_device(dev); + q = vfio_ap_find_queue(apqn); + if (q) + q->matrix_mdev = matrix_mdev; return q; } @@ -119,13 +115,18 @@ */ static void vfio_ap_free_aqic_resources(struct vfio_ap_queue *q) { - if (q->saved_isc != VFIO_AP_ISC_INVALID && q->matrix_mdev) + if (!q) + return; + if (q->saved_isc != VFIO_AP_ISC_INVALID && + !WARN_ON(!(q->matrix_mdev && q->matrix_mdev->kvm))) { kvm_s390_gisc_unregister(q->matrix_mdev->kvm, q->saved_isc); - if (q->saved_pfn && q->matrix_mdev) + q->saved_isc = VFIO_AP_ISC_INVALID; + } + if (q->saved_pfn && !WARN_ON(!q->matrix_mdev)) { vfio_unpin_pages(mdev_dev(q->matrix_mdev->mdev), &q->saved_pfn, 1); - q->saved_pfn = 0; - q->saved_isc = VFIO_AP_ISC_INVALID; + q->saved_pfn = 0; + } } /** @@ -144,7 +145,7 @@ * Returns if ap_aqic function failed with invalid, deconfigured or * checkstopped AP. */ -struct ap_queue_status vfio_ap_irq_disable(struct vfio_ap_queue *q) +static struct ap_queue_status vfio_ap_irq_disable(struct vfio_ap_queue *q) { struct ap_qirq_ctrl aqic_gisa = {}; struct ap_queue_status status; @@ -1114,48 +1115,70 @@ return NOTIFY_OK; } -static void vfio_ap_irq_disable_apqn(int apqn) +static struct vfio_ap_queue *vfio_ap_find_queue(int apqn) { struct device *dev; - struct vfio_ap_queue *q; + struct vfio_ap_queue *q = NULL; dev = driver_find_device(&matrix_dev->vfio_ap_drv->driver, NULL, &apqn, match_apqn); if (dev) { q = dev_get_drvdata(dev); - vfio_ap_irq_disable(q); put_device(dev); } + + return q; } -int vfio_ap_mdev_reset_queue(unsigned int apid, unsigned int apqi, +int vfio_ap_mdev_reset_queue(struct vfio_ap_queue *q, unsigned int retry) { struct ap_queue_status status; + int ret; int retry2 = 2; - int apqn = AP_MKQID(apid, apqi); - do { - status = ap_zapq(apqn); - switch (status.response_code) { - case AP_RESPONSE_NORMAL: - while (!status.queue_empty && retry2--) { - msleep(20); - status = ap_tapq(apqn, NULL); - } - WARN_ON_ONCE(retry2 <= 0); - return 0; - case AP_RESPONSE_RESET_IN_PROGRESS: - case AP_RESPONSE_BUSY: + if (!q) + return 0; + +retry_zapq: + status = ap_zapq(q->apqn); + switch (status.response_code) { + case AP_RESPONSE_NORMAL: + ret = 0; + break; + case AP_RESPONSE_RESET_IN_PROGRESS: + if (retry--) { msleep(20); - break; - default: - /* things are really broken, give up */ - return -EIO; + goto retry_zapq; } - } while (retry--); + ret = -EBUSY; + break; + case AP_RESPONSE_Q_NOT_AVAIL: + case AP_RESPONSE_DECONFIGURED: + case AP_RESPONSE_CHECKSTOPPED: + WARN_ON_ONCE(status.irq_enabled); + ret = -EBUSY; + goto free_resources; + default: + /* things are really broken, give up */ + WARN(true, "PQAP/ZAPQ completed with invalid rc (%x)\n", + status.response_code); + return -EIO; + } + + /* wait for the reset to take effect */ + while (retry2--) { + if (status.queue_empty && !status.irq_enabled) + break; + msleep(20); + status = ap_tapq(q->apqn, NULL); + } + WARN_ON_ONCE(retry2 <= 0); - return -EBUSY; +free_resources: + vfio_ap_free_aqic_resources(q); + + return ret; } static int vfio_ap_mdev_reset_queues(struct mdev_device *mdev) @@ -1163,13 +1186,15 @@ int ret; int rc = 0; unsigned long apid, apqi; + struct vfio_ap_queue *q; struct ap_matrix_mdev *matrix_mdev = mdev_get_drvdata(mdev); for_each_set_bit_inv(apid, matrix_mdev->matrix.apm, matrix_mdev->matrix.apm_max + 1) { for_each_set_bit_inv(apqi, matrix_mdev->matrix.aqm, matrix_mdev->matrix.aqm_max + 1) { - ret = vfio_ap_mdev_reset_queue(apid, apqi, 1); + q = vfio_ap_find_queue(AP_MKQID(apid, apqi)); + ret = vfio_ap_mdev_reset_queue(q, 1); /* * Regardless whether a queue turns out to be busy, or * is not operational, we need to continue resetting @@ -1177,7 +1202,6 @@ */ if (ret) rc = ret; - vfio_ap_irq_disable_apqn(AP_MKQID(apid, apqi)); } } --- linux-azure-5.8-5.8.0.orig/drivers/s390/crypto/vfio_ap_private.h +++ linux-azure-5.8-5.8.0/drivers/s390/crypto/vfio_ap_private.h @@ -88,11 +88,6 @@ struct mdev_device *mdev; }; -extern int vfio_ap_mdev_register(void); -extern void vfio_ap_mdev_unregister(void); -int vfio_ap_mdev_reset_queue(unsigned int apid, unsigned int apqi, - unsigned int retry); - struct vfio_ap_queue { struct ap_matrix_mdev *matrix_mdev; unsigned long saved_pfn; @@ -100,5 +95,10 @@ #define VFIO_AP_ISC_INVALID 0xff unsigned char saved_isc; }; -struct ap_queue_status vfio_ap_irq_disable(struct vfio_ap_queue *q); + +int vfio_ap_mdev_register(void); +void vfio_ap_mdev_unregister(void); +int vfio_ap_mdev_reset_queue(struct vfio_ap_queue *q, + unsigned int retry); + #endif /* _VFIO_AP_PRIVATE_H_ */ --- linux-azure-5.8-5.8.0.orig/drivers/s390/crypto/zcrypt_api.c +++ linux-azure-5.8-5.8.0/drivers/s390/crypto/zcrypt_api.c @@ -1429,7 +1429,8 @@ if (!reqcnt) return -ENOMEM; zcrypt_perdev_reqcnt(reqcnt, AP_DEVICES); - if (copy_to_user((int __user *) arg, reqcnt, sizeof(reqcnt))) + if (copy_to_user((int __user *) arg, reqcnt, + sizeof(u32) * AP_DEVICES)) rc = -EFAULT; kfree(reqcnt); return rc; --- linux-azure-5.8-5.8.0.orig/drivers/s390/crypto/zcrypt_ccamisc.c +++ linux-azure-5.8-5.8.0/drivers/s390/crypto/zcrypt_ccamisc.c @@ -1685,9 +1685,9 @@ *nr_apqns = 0; /* fetch status of all crypto cards */ - device_status = kmalloc_array(MAX_ZDEV_ENTRIES_EXT, - sizeof(struct zcrypt_device_status_ext), - GFP_KERNEL); + device_status = kvmalloc_array(MAX_ZDEV_ENTRIES_EXT, + sizeof(struct zcrypt_device_status_ext), + GFP_KERNEL); if (!device_status) return -ENOMEM; zcrypt_device_status_mask_ext(device_status); @@ -1755,7 +1755,7 @@ verify = 0; } - kfree(device_status); + kvfree(device_status); return rc; } EXPORT_SYMBOL(cca_findcard2); --- linux-azure-5.8-5.8.0.orig/drivers/s390/net/qeth_core.h +++ linux-azure-5.8-5.8.0/drivers/s390/net/qeth_core.h @@ -397,10 +397,13 @@ QETH_QDIO_BUF_EMPTY, /* Filled by driver; owned by hardware in order to be sent. */ QETH_QDIO_BUF_PRIMED, - /* Identified to be pending in TPQ. */ + /* Discovered by the TX completion code: */ QETH_QDIO_BUF_PENDING, - /* Found in completion queue. */ - QETH_QDIO_BUF_IN_CQ, + /* Finished by the TX completion code: */ + QETH_QDIO_BUF_NEED_QAOB, + /* Received QAOB notification on CQ: */ + QETH_QDIO_BUF_QAOB_OK, + QETH_QDIO_BUF_QAOB_ERROR, /* Handled via transfer pending / completion queue. */ QETH_QDIO_BUF_HANDLED_DELAYED, }; @@ -680,6 +683,11 @@ int inter_packet_jumbo; }; +enum qeth_pnso_mode { + QETH_PNSO_NONE, + QETH_PNSO_BRIDGEPORT, +}; + #define QETH_BROADCAST_WITH_ECHO 0x01 #define QETH_BROADCAST_WITHOUT_ECHO 0x02 struct qeth_card_info { @@ -696,6 +704,7 @@ /* no bitfield, we take a pointer on these two: */ u8 has_lp2lp_cso_v6; u8 has_lp2lp_cso_v4; + enum qeth_pnso_mode pnso_mode; enum qeth_card_types type; enum qeth_link_types link_type; int broadcast_capable; --- linux-azure-5.8-5.8.0.orig/drivers/s390/net/qeth_core_main.c +++ linux-azure-5.8-5.8.0/drivers/s390/net/qeth_core_main.c @@ -32,6 +32,7 @@ #include #include +#include #include #include @@ -204,12 +205,17 @@ void qeth_clear_working_pool_list(struct qeth_card *card) { struct qeth_buffer_pool_entry *pool_entry, *tmp; + struct qeth_qdio_q *queue = card->qdio.in_q; + unsigned int i; QETH_CARD_TEXT(card, 5, "clwrklst"); list_for_each_entry_safe(pool_entry, tmp, &card->qdio.in_buf_pool.entry_list, list){ list_del(&pool_entry->list); } + + for (i = 0; i < ARRAY_SIZE(queue->bufs); i++) + queue->bufs[i].pool_entry = NULL; } EXPORT_SYMBOL_GPL(qeth_clear_working_pool_list); @@ -495,18 +501,13 @@ } } - if (forced_cleanup && (atomic_read(&(q->bufs[bidx]->state)) == - QETH_QDIO_BUF_HANDLED_DELAYED)) { - /* for recovery situations */ - qeth_init_qdio_out_buf(q, bidx); - QETH_CARD_TEXT(q->card, 2, "clprecov"); - } } static void qeth_qdio_handle_aob(struct qeth_card *card, unsigned long phys_aob_addr) { + enum qeth_qdio_out_buffer_state new_state = QETH_QDIO_BUF_QAOB_OK; struct qaob *aob; struct qeth_qdio_out_buffer *buffer; enum iucv_tx_notify notification; @@ -518,22 +519,6 @@ buffer = (struct qeth_qdio_out_buffer *) aob->user1; QETH_CARD_TEXT_(card, 5, "%lx", aob->user1); - if (atomic_cmpxchg(&buffer->state, QETH_QDIO_BUF_PRIMED, - QETH_QDIO_BUF_IN_CQ) == QETH_QDIO_BUF_PRIMED) { - notification = TX_NOTIFY_OK; - } else { - WARN_ON_ONCE(atomic_read(&buffer->state) != - QETH_QDIO_BUF_PENDING); - atomic_set(&buffer->state, QETH_QDIO_BUF_IN_CQ); - notification = TX_NOTIFY_DELAYED_OK; - } - - if (aob->aorc != 0) { - QETH_CARD_TEXT_(card, 2, "aorc%02X", aob->aorc); - notification = qeth_compute_cq_notification(aob->aorc, 1); - } - qeth_notify_skbs(buffer->q, buffer, notification); - /* Free dangling allocations. The attached skbs are handled by * qeth_cleanup_handled_pending(). */ @@ -545,7 +530,33 @@ if (data && buffer->is_header[i]) kmem_cache_free(qeth_core_header_cache, data); } - atomic_set(&buffer->state, QETH_QDIO_BUF_HANDLED_DELAYED); + + if (aob->aorc) { + QETH_CARD_TEXT_(card, 2, "aorc%02X", aob->aorc); + new_state = QETH_QDIO_BUF_QAOB_ERROR; + } + + switch (atomic_xchg(&buffer->state, new_state)) { + case QETH_QDIO_BUF_PRIMED: + /* Faster than TX completion code. */ + notification = qeth_compute_cq_notification(aob->aorc, 0); + qeth_notify_skbs(buffer->q, buffer, notification); + atomic_set(&buffer->state, QETH_QDIO_BUF_HANDLED_DELAYED); + break; + case QETH_QDIO_BUF_PENDING: + /* TX completion code is active and will handle the async + * completion for us. + */ + break; + case QETH_QDIO_BUF_NEED_QAOB: + /* TX completion code is already finished. */ + notification = qeth_compute_cq_notification(aob->aorc, 1); + qeth_notify_skbs(buffer->q, buffer, notification); + atomic_set(&buffer->state, QETH_QDIO_BUF_HANDLED_DELAYED); + break; + default: + WARN_ON_ONCE(1); + } qdio_release_aob(aob); } @@ -1403,7 +1414,7 @@ skb_queue_walk(&buf->skb_list, skb) { QETH_CARD_TEXT_(q->card, 5, "skbn%d", notification); QETH_CARD_TEXT_(q->card, 5, "%lx", (long) skb); - if (skb->protocol == htons(ETH_P_AF_IUCV) && skb->sk) + if (skb->sk && skb->sk->sk_family == PF_IUCV) iucv_sk(skb->sk)->sk_txnotify(skb, notification); } } @@ -1414,9 +1425,6 @@ struct qeth_qdio_out_q *queue = buf->q; struct sk_buff *skb; - /* release may never happen from within CQ tasklet scope */ - WARN_ON_ONCE(atomic_read(&buf->state) == QETH_QDIO_BUF_IN_CQ); - if (atomic_read(&buf->state) == QETH_QDIO_BUF_PENDING) qeth_notify_skbs(queue, buf, TX_NOTIFY_GENERALERROR); @@ -2951,7 +2959,7 @@ static int qeth_init_input_buffer(struct qeth_card *card, struct qeth_qdio_buffer *buf) { - struct qeth_buffer_pool_entry *pool_entry; + struct qeth_buffer_pool_entry *pool_entry = buf->pool_entry; int i; if ((card->options.cq == QETH_CQ_ENABLED) && (!buf->rx_skb)) { @@ -2962,9 +2970,13 @@ return -ENOMEM; } - pool_entry = qeth_find_free_buffer_pool_entry(card); - if (!pool_entry) - return -ENOBUFS; + if (!pool_entry) { + pool_entry = qeth_find_free_buffer_pool_entry(card); + if (!pool_entry) + return -ENOBUFS; + + buf->pool_entry = pool_entry; + } /* * since the buffer is accessed only from the input_tasklet @@ -2972,8 +2984,6 @@ * the QETH_IN_BUF_REQUEUE_THRESHOLD we should never run out off * buffers */ - - buf->pool_entry = pool_entry; for (i = 0; i < QETH_MAX_BUFFER_ELEMENTS(card); ++i) { buf->buffer->element[i].length = PAGE_SIZE; buf->buffer->element[i].addr = @@ -5802,6 +5812,7 @@ if (done) { QETH_CARD_STAT_INC(card, rx_bufs); qeth_put_buffer_pool_entry(card, buffer->pool_entry); + buffer->pool_entry = NULL; qeth_queue_input_buffer(card, card->rx.b_index); card->rx.b_count--; @@ -5868,9 +5879,32 @@ if (atomic_cmpxchg(&buffer->state, QETH_QDIO_BUF_PRIMED, QETH_QDIO_BUF_PENDING) == - QETH_QDIO_BUF_PRIMED) + QETH_QDIO_BUF_PRIMED) { qeth_notify_skbs(queue, buffer, TX_NOTIFY_PENDING); + /* Handle race with qeth_qdio_handle_aob(): */ + switch (atomic_xchg(&buffer->state, + QETH_QDIO_BUF_NEED_QAOB)) { + case QETH_QDIO_BUF_PENDING: + /* No concurrent QAOB notification. */ + break; + case QETH_QDIO_BUF_QAOB_OK: + qeth_notify_skbs(queue, buffer, + TX_NOTIFY_DELAYED_OK); + atomic_set(&buffer->state, + QETH_QDIO_BUF_HANDLED_DELAYED); + break; + case QETH_QDIO_BUF_QAOB_ERROR: + qeth_notify_skbs(queue, buffer, + TX_NOTIFY_DELAYED_GENERALERROR); + atomic_set(&buffer->state, + QETH_QDIO_BUF_HANDLED_DELAYED); + break; + default: + WARN_ON_ONCE(1); + } + } + QETH_CARD_TEXT_(card, 5, "pel%u", bidx); /* prepare the queue slot for re-use: */ --- linux-azure-5.8-5.8.0.orig/drivers/s390/net/qeth_l2_main.c +++ linux-azure-5.8-5.8.0/drivers/s390/net/qeth_l2_main.c @@ -273,6 +273,17 @@ return qeth_l2_send_setdelvlan(card, vid, IPA_CMD_DELVLAN); } +static void qeth_l2_set_pnso_mode(struct qeth_card *card, + enum qeth_pnso_mode mode) +{ + spin_lock_irq(get_ccwdev_lock(CARD_RDEV(card))); + WRITE_ONCE(card->info.pnso_mode, mode); + spin_unlock_irq(get_ccwdev_lock(CARD_RDEV(card))); + + if (mode == QETH_PNSO_NONE) + drain_workqueue(card->event_wq); +} + static void qeth_l2_stop_card(struct qeth_card *card) { QETH_CARD_TEXT(card, 2, "stopcard"); @@ -291,7 +302,7 @@ qeth_qdio_clear_card(card, 0); qeth_clear_working_pool_list(card); - flush_workqueue(card->event_wq); + qeth_l2_set_pnso_mode(card, QETH_PNSO_NONE); qeth_flush_local_addrs(card); card->info.promisc_mode = 0; } @@ -1111,12 +1122,6 @@ NULL }; - /* Role should not change by itself, but if it did, */ - /* information from the hardware is authoritative. */ - mutex_lock(&data->card->sbp_lock); - data->card->options.sbp.role = entry->role; - mutex_unlock(&data->card->sbp_lock); - snprintf(env_locrem, sizeof(env_locrem), "BRIDGEPORT=statechange"); snprintf(env_role, sizeof(env_role), "ROLE=%s", (entry->role == QETH_SBP_ROLE_NONE) ? "none" : @@ -1142,6 +1147,10 @@ int extrasize; QETH_CARD_TEXT(card, 2, "brstchng"); + if (qports->num_entries == 0) { + QETH_CARD_TEXT(card, 2, "BPempty"); + return; + } if (qports->entry_length != sizeof(struct qeth_sbp_port_entry)) { QETH_CARD_TEXT_(card, 2, "BPsz%04x", qports->entry_length); return; @@ -1161,19 +1170,34 @@ } struct qeth_addr_change_data { - struct work_struct worker; + struct delayed_work dwork; struct qeth_card *card; struct qeth_ipacmd_addr_change ac_event; }; static void qeth_addr_change_event_worker(struct work_struct *work) { - struct qeth_addr_change_data *data = - container_of(work, struct qeth_addr_change_data, worker); + struct delayed_work *dwork = to_delayed_work(work); + struct qeth_addr_change_data *data; + struct qeth_card *card; int i; + data = container_of(dwork, struct qeth_addr_change_data, dwork); + card = data->card; + QETH_CARD_TEXT(data->card, 4, "adrchgew"); + + if (READ_ONCE(card->info.pnso_mode) == QETH_PNSO_NONE) + goto free; + if (data->ac_event.lost_event_mask) { + /* Potential re-config in progress, try again later: */ + if (!mutex_trylock(&card->sbp_lock)) { + queue_delayed_work(card->event_wq, dwork, + msecs_to_jiffies(100)); + return; + } + dev_info(&data->card->gdev->dev, "Address change notification stopped on %s (%s)\n", data->card->dev->name, @@ -1182,8 +1206,9 @@ : (data->ac_event.lost_event_mask == 0x02) ? "Bridge port state change" : "Unknown reason"); - mutex_lock(&data->card->sbp_lock); + data->card->options.sbp.hostnotification = 0; + card->info.pnso_mode = QETH_PNSO_NONE; mutex_unlock(&data->card->sbp_lock); qeth_bridge_emit_host_event(data->card, anev_abort, 0, NULL, NULL); @@ -1197,6 +1222,8 @@ &entry->token, &entry->addr_lnid); } + +free: kfree(data); } @@ -1208,6 +1235,9 @@ struct qeth_addr_change_data *data; int extrasize; + if (card->info.pnso_mode == QETH_PNSO_NONE) + return; + QETH_CARD_TEXT(card, 4, "adrchgev"); if (cmd->hdr.return_code != 0x0000) { if (cmd->hdr.return_code == 0x0010) { @@ -1227,11 +1257,11 @@ QETH_CARD_TEXT(card, 2, "ACNalloc"); return; } - INIT_WORK(&data->worker, qeth_addr_change_event_worker); + INIT_DELAYED_WORK(&data->dwork, qeth_addr_change_event_worker); data->card = card; memcpy(&data->ac_event, hostevs, sizeof(struct qeth_ipacmd_addr_change) + extrasize); - queue_work(card->event_wq, &data->worker); + queue_delayed_work(card->event_wq, &data->dwork, 0); } /* SETBRIDGEPORT support; sending commands */ @@ -1552,9 +1582,14 @@ if (enable) { qeth_bridge_emit_host_event(card, anev_reset, 0, NULL, NULL); + qeth_l2_set_pnso_mode(card, QETH_PNSO_BRIDGEPORT); rc = qeth_l2_pnso(card, 1, qeth_bridgeport_an_set_cb, card); - } else + if (rc) + qeth_l2_set_pnso_mode(card, QETH_PNSO_NONE); + } else { rc = qeth_l2_pnso(card, 0, NULL, NULL); + qeth_l2_set_pnso_mode(card, QETH_PNSO_NONE); + } return rc; } --- linux-azure-5.8-5.8.0.orig/drivers/s390/net/qeth_l2_sys.c +++ linux-azure-5.8-5.8.0/drivers/s390/net/qeth_l2_sys.c @@ -157,6 +157,7 @@ rc = -EBUSY; else if (qeth_card_hw_is_reachable(card)) { rc = qeth_bridgeport_an_set(card, enable); + /* sbp_lock ensures ordering vs notifications-stopped events */ if (!rc) card->options.sbp.hostnotification = enable; } else --- linux-azure-5.8-5.8.0.orig/drivers/s390/net/qeth_l3_main.c +++ linux-azure-5.8-5.8.0/drivers/s390/net/qeth_l3_main.c @@ -1853,7 +1853,7 @@ struct net_device *dev, netdev_features_t features) { - if (qeth_get_ip_version(skb) != 4) + if (vlan_get_protocol(skb) != htons(ETH_P_IP)) features &= ~NETIF_F_HW_VLAN_CTAG_TX; return qeth_features_check(skb, dev, features); } --- linux-azure-5.8-5.8.0.orig/drivers/s390/scsi/zfcp_fsf.c +++ linux-azure-5.8-5.8.0/drivers/s390/scsi/zfcp_fsf.c @@ -434,7 +434,7 @@ return; } - del_timer(&req->timer); + del_timer_sync(&req->timer); zfcp_fsf_protstatus_eval(req); zfcp_fsf_fsfstatus_eval(req); req->handler(req); @@ -867,7 +867,7 @@ req->qdio_req.qdio_outb_usage = atomic_read(&qdio->req_q_free); req->issued = get_tod_clock(); if (zfcp_qdio_send(qdio, &req->qdio_req)) { - del_timer(&req->timer); + del_timer_sync(&req->timer); /* lookup request again, list might have changed */ zfcp_reqlist_find_rm(adapter->req_list, req_id); zfcp_erp_adapter_reopen(adapter, 0, "fsrs__1"); --- linux-azure-5.8-5.8.0.orig/drivers/s390/virtio/virtio_ccw.c +++ linux-azure-5.8-5.8.0/drivers/s390/virtio/virtio_ccw.c @@ -117,7 +117,7 @@ }; /* the highest virtio-ccw revision we support */ -#define VIRTIO_CCW_REV_MAX 1 +#define VIRTIO_CCW_REV_MAX 2 struct virtio_ccw_vq_info { struct virtqueue *vq; @@ -952,7 +952,7 @@ u8 old_status = vcdev->dma_area->status; struct ccw1 *ccw; - if (vcdev->revision < 1) + if (vcdev->revision < 2) return vcdev->dma_area->status; ccw = ccw_device_dma_zalloc(vcdev->cdev, sizeof(*ccw)); --- linux-azure-5.8-5.8.0.orig/drivers/scsi/aacraid/commctrl.c +++ linux-azure-5.8-5.8.0/drivers/scsi/aacraid/commctrl.c @@ -25,6 +25,7 @@ #include #include #include +#include #include /* ssleep prototype */ #include #include @@ -226,6 +227,12 @@ return status; } +struct compat_fib_ioctl { + u32 fibctx; + s32 wait; + compat_uptr_t fib; +}; + /** * next_getadapter_fib - get the next fib * @dev: adapter to use @@ -244,8 +251,19 @@ struct list_head * entry; unsigned long flags; - if(copy_from_user((void *)&f, arg, sizeof(struct fib_ioctl))) - return -EFAULT; + if (in_compat_syscall()) { + struct compat_fib_ioctl cf; + + if (copy_from_user(&cf, arg, sizeof(struct compat_fib_ioctl))) + return -EFAULT; + + f.fibctx = cf.fibctx; + f.wait = cf.wait; + f.fib = compat_ptr(cf.fib); + } else { + if (copy_from_user(&f, arg, sizeof(struct fib_ioctl))) + return -EFAULT; + } /* * Verify that the HANDLE passed in was a valid AdapterFibContext * --- linux-azure-5.8-5.8.0.orig/drivers/scsi/aacraid/linit.c +++ linux-azure-5.8-5.8.0/drivers/scsi/aacraid/linit.c @@ -1182,63 +1182,6 @@ return aac_do_ioctl(aac, cmd, (void __user *)arg); } -#ifdef CONFIG_COMPAT -static long aac_compat_do_ioctl(struct aac_dev *dev, unsigned cmd, unsigned long arg) -{ - long ret; - switch (cmd) { - case FSACTL_MINIPORT_REV_CHECK: - case FSACTL_SENDFIB: - case FSACTL_OPEN_GET_ADAPTER_FIB: - case FSACTL_CLOSE_GET_ADAPTER_FIB: - case FSACTL_SEND_RAW_SRB: - case FSACTL_GET_PCI_INFO: - case FSACTL_QUERY_DISK: - case FSACTL_DELETE_DISK: - case FSACTL_FORCE_DELETE_DISK: - case FSACTL_GET_CONTAINERS: - case FSACTL_SEND_LARGE_FIB: - ret = aac_do_ioctl(dev, cmd, (void __user *)arg); - break; - - case FSACTL_GET_NEXT_ADAPTER_FIB: { - struct fib_ioctl __user *f; - - f = compat_alloc_user_space(sizeof(*f)); - ret = 0; - if (clear_user(f, sizeof(*f))) - ret = -EFAULT; - if (copy_in_user(f, (void __user *)arg, sizeof(struct fib_ioctl) - sizeof(u32))) - ret = -EFAULT; - if (!ret) - ret = aac_do_ioctl(dev, cmd, f); - break; - } - - default: - ret = -ENOIOCTLCMD; - break; - } - return ret; -} - -static int aac_compat_ioctl(struct scsi_device *sdev, unsigned int cmd, - void __user *arg) -{ - struct aac_dev *dev = (struct aac_dev *)sdev->host->hostdata; - if (!capable(CAP_SYS_RAWIO)) - return -EPERM; - return aac_compat_do_ioctl(dev, cmd, (unsigned long)arg); -} - -static long aac_compat_cfg_ioctl(struct file *file, unsigned cmd, unsigned long arg) -{ - if (!capable(CAP_SYS_RAWIO)) - return -EPERM; - return aac_compat_do_ioctl(file->private_data, cmd, arg); -} -#endif - static ssize_t aac_show_model(struct device *device, struct device_attribute *attr, char *buf) { @@ -1523,7 +1466,7 @@ .owner = THIS_MODULE, .unlocked_ioctl = aac_cfg_ioctl, #ifdef CONFIG_COMPAT - .compat_ioctl = aac_compat_cfg_ioctl, + .compat_ioctl = aac_cfg_ioctl, #endif .open = aac_cfg_open, .llseek = noop_llseek, @@ -1536,7 +1479,7 @@ .info = aac_info, .ioctl = aac_ioctl, #ifdef CONFIG_COMPAT - .compat_ioctl = aac_compat_ioctl, + .compat_ioctl = aac_ioctl, #endif .queuecommand = aac_queuecommand, .bios_param = aac_biosparm, --- linux-azure-5.8-5.8.0.orig/drivers/scsi/arm/cumana_2.c +++ linux-azure-5.8-5.8.0/drivers/scsi/arm/cumana_2.c @@ -450,7 +450,7 @@ if (info->info.scsi.dma != NO_DMA) free_dma(info->info.scsi.dma); - free_irq(ec->irq, host); + free_irq(ec->irq, info); out_release: fas216_release(host); --- linux-azure-5.8-5.8.0.orig/drivers/scsi/arm/eesox.c +++ linux-azure-5.8-5.8.0/drivers/scsi/arm/eesox.c @@ -571,7 +571,7 @@ if (info->info.scsi.dma != NO_DMA) free_dma(info->info.scsi.dma); - free_irq(ec->irq, host); + free_irq(ec->irq, info); out_remove: fas216_remove(host); --- linux-azure-5.8-5.8.0.orig/drivers/scsi/arm/powertec.c +++ linux-azure-5.8-5.8.0/drivers/scsi/arm/powertec.c @@ -378,7 +378,7 @@ if (info->info.scsi.dma != NO_DMA) free_dma(info->info.scsi.dma); - free_irq(ec->irq, host); + free_irq(ec->irq, info); out_release: fas216_release(host); --- linux-azure-5.8-5.8.0.orig/drivers/scsi/bfa/bfad.c +++ linux-azure-5.8-5.8.0/drivers/scsi/bfa/bfad.c @@ -749,6 +749,7 @@ if (bfad->pci_bar0_kva == NULL) { printk(KERN_ERR "Fail to map bar0\n"); + rc = -ENODEV; goto out_release_region; } --- linux-azure-5.8-5.8.0.orig/drivers/scsi/bnx2fc/Kconfig +++ linux-azure-5.8-5.8.0/drivers/scsi/bnx2fc/Kconfig @@ -5,6 +5,7 @@ depends on (IPV6 || IPV6=n) depends on LIBFC depends on LIBFCOE + depends on MMU select NETDEVICES select ETHERNET select NET_VENDOR_BROADCOM --- linux-azure-5.8-5.8.0.orig/drivers/scsi/bnx2i/Kconfig +++ linux-azure-5.8-5.8.0/drivers/scsi/bnx2i/Kconfig @@ -4,6 +4,7 @@ depends on NET depends on PCI depends on (IPV6 || IPV6=n) + depends on MMU select SCSI_ISCSI_ATTRS select NETDEVICES select ETHERNET --- linux-azure-5.8-5.8.0.orig/drivers/scsi/csiostor/csio_hw.c +++ linux-azure-5.8-5.8.0/drivers/scsi/csiostor/csio_hw.c @@ -2384,7 +2384,7 @@ FW_HDR_FW_VER_MICRO_G(c), FW_HDR_FW_VER_BUILD_G(c), FW_HDR_FW_VER_MAJOR_G(k), FW_HDR_FW_VER_MINOR_G(k), FW_HDR_FW_VER_MICRO_G(k), FW_HDR_FW_VER_BUILD_G(k)); - ret = EINVAL; + ret = -EINVAL; goto bye; } --- linux-azure-5.8-5.8.0.orig/drivers/scsi/cxgbi/cxgb4i/Kconfig +++ linux-azure-5.8-5.8.0/drivers/scsi/cxgbi/cxgb4i/Kconfig @@ -4,6 +4,7 @@ depends on PCI && INET && (IPV6 || IPV6=n) depends on THERMAL || !THERMAL depends on ETHERNET + depends on TLS || TLS=n select NET_VENDOR_CHELSIO select CHELSIO_T4 select CHELSIO_LIB --- linux-azure-5.8-5.8.0.orig/drivers/scsi/device_handler/scsi_dh_alua.c +++ linux-azure-5.8-5.8.0/drivers/scsi/device_handler/scsi_dh_alua.c @@ -658,8 +658,8 @@ rcu_read_lock(); list_for_each_entry_rcu(h, &tmp_pg->dh_list, node) { - /* h->sdev should always be valid */ - BUG_ON(!h->sdev); + if (!h->sdev) + continue; h->sdev->access_state = desc[0]; } rcu_read_unlock(); @@ -705,7 +705,8 @@ pg->expiry = 0; rcu_read_lock(); list_for_each_entry_rcu(h, &pg->dh_list, node) { - BUG_ON(!h->sdev); + if (!h->sdev) + continue; h->sdev->access_state = (pg->state & SCSI_ACCESS_STATE_MASK); if (pg->pref) @@ -1147,7 +1148,6 @@ spin_lock(&h->pg_lock); pg = rcu_dereference_protected(h->pg, lockdep_is_held(&h->pg_lock)); rcu_assign_pointer(h->pg, NULL); - h->sdev = NULL; spin_unlock(&h->pg_lock); if (pg) { spin_lock_irq(&pg->lock); @@ -1156,6 +1156,7 @@ kref_put(&pg->kref, release_port_group); } sdev->handler_data = NULL; + synchronize_rcu(); kfree(h); } --- linux-azure-5.8-5.8.0.orig/drivers/scsi/fcoe/fcoe_ctlr.c +++ linux-azure-5.8-5.8.0/drivers/scsi/fcoe/fcoe_ctlr.c @@ -255,9 +255,9 @@ WARN_ON(!fcf_dev); new->fcf_dev = NULL; fcoe_fcf_device_delete(fcf_dev); - kfree(new); mutex_unlock(&cdev->lock); } + kfree(new); } /** --- linux-azure-5.8-5.8.0.orig/drivers/scsi/fnic/fnic_main.c +++ linux-azure-5.8-5.8.0/drivers/scsi/fnic/fnic_main.c @@ -741,6 +741,7 @@ for (i = 0; i < FNIC_IO_LOCKS; i++) spin_lock_init(&fnic->io_req_lock[i]); + err = -ENOMEM; fnic->io_req_pool = mempool_create_slab_pool(2, fnic_io_req_cache); if (!fnic->io_req_pool) goto err_out_free_resources; --- linux-azure-5.8-5.8.0.orig/drivers/scsi/fnic/vnic_dev.c +++ linux-azure-5.8-5.8.0/drivers/scsi/fnic/vnic_dev.c @@ -444,7 +444,8 @@ fetch_index = ioread32(&vdev->devcmd2->wq.ctrl->fetch_index); if (fetch_index == 0xFFFFFFFF) { /* check for hardware gone */ pr_err("error in devcmd2 init"); - return -ENODEV; + err = -ENODEV; + goto err_free_wq; } /* @@ -460,7 +461,7 @@ err = vnic_dev_alloc_desc_ring(vdev, &vdev->devcmd2->results_ring, DEVCMD2_RING_SIZE, DEVCMD2_DESC_SIZE); if (err) - goto err_free_wq; + goto err_disable_wq; vdev->devcmd2->result = (struct devcmd2_result *) vdev->devcmd2->results_ring.descs; @@ -481,8 +482,9 @@ err_free_desc_ring: vnic_dev_free_desc_ring(vdev, &vdev->devcmd2->results_ring); -err_free_wq: +err_disable_wq: vnic_wq_disable(&vdev->devcmd2->wq); +err_free_wq: vnic_wq_free(&vdev->devcmd2->wq); err_free_devcmd2: kfree(vdev->devcmd2); --- linux-azure-5.8-5.8.0.orig/drivers/scsi/hpsa.c +++ linux-azure-5.8-5.8.0/drivers/scsi/hpsa.c @@ -8835,7 +8835,7 @@ /* hook into SCSI subsystem */ rc = hpsa_scsi_add_host(h); if (rc) - goto clean7; /* perf, sg, cmd, irq, shost, pci, lu, aer/h */ + goto clean8; /* lastlogicals, perf, sg, cmd, irq, shost, pci, lu, aer/h */ /* Monitor the controller for firmware lockups */ h->heartbeat_sample_interval = HEARTBEAT_SAMPLE_INTERVAL; @@ -8850,6 +8850,8 @@ HPSA_EVENT_MONITOR_INTERVAL); return 0; +clean8: /* lastlogicals, perf, sg, cmd, irq, shost, pci, lu, aer/h */ + kfree(h->lastlogicals); clean7: /* perf, sg, cmd, irq, shost, pci, lu, aer/h */ hpsa_free_performant_mode(h); h->access.set_intr_mask(h, HPSA_INTR_OFF); --- linux-azure-5.8-5.8.0.orig/drivers/scsi/ibmvscsi/ibmvfc.c +++ linux-azure-5.8-5.8.0/drivers/scsi/ibmvscsi/ibmvfc.c @@ -2917,8 +2917,10 @@ unsigned long flags = 0; spin_lock_irqsave(shost->host_lock, flags); - if (sdev->type == TYPE_DISK) + if (sdev->type == TYPE_DISK) { sdev->allow_restart = 1; + blk_queue_rq_timeout(sdev->request_queue, 120 * HZ); + } spin_unlock_irqrestore(shost->host_lock, flags); return 0; } @@ -4928,6 +4930,7 @@ if (IS_ERR(vhost->work_thread)) { dev_err(dev, "Couldn't create kernel thread: %ld\n", PTR_ERR(vhost->work_thread)); + rc = PTR_ERR(vhost->work_thread); goto free_host_mem; } --- linux-azure-5.8-5.8.0.orig/drivers/scsi/ibmvscsi/ibmvscsi.c +++ linux-azure-5.8-5.8.0/drivers/scsi/ibmvscsi/ibmvscsi.c @@ -807,13 +807,29 @@ } /** + * ibmvscsi_set_request_limit - Set the adapter request_limit in response to + * an adapter failure, reset, or SRP Login. Done under host lock to prevent + * race with SCSI command submission. + * @hostdata: adapter to adjust + * @limit: new request limit + */ +static void ibmvscsi_set_request_limit(struct ibmvscsi_host_data *hostdata, int limit) +{ + unsigned long flags; + + spin_lock_irqsave(hostdata->host->host_lock, flags); + atomic_set(&hostdata->request_limit, limit); + spin_unlock_irqrestore(hostdata->host->host_lock, flags); +} + +/** * ibmvscsi_reset_host - Reset the connection to the server * @hostdata: struct ibmvscsi_host_data to reset */ static void ibmvscsi_reset_host(struct ibmvscsi_host_data *hostdata) { scsi_block_requests(hostdata->host); - atomic_set(&hostdata->request_limit, 0); + ibmvscsi_set_request_limit(hostdata, 0); purge_requests(hostdata, DID_ERROR); hostdata->action = IBMVSCSI_HOST_ACTION_RESET; @@ -1146,13 +1162,13 @@ dev_info(hostdata->dev, "SRP_LOGIN_REJ reason %u\n", evt_struct->xfer_iu->srp.login_rej.reason); /* Login failed. */ - atomic_set(&hostdata->request_limit, -1); + ibmvscsi_set_request_limit(hostdata, -1); return; default: dev_err(hostdata->dev, "Invalid login response typecode 0x%02x!\n", evt_struct->xfer_iu->srp.login_rsp.opcode); /* Login failed. */ - atomic_set(&hostdata->request_limit, -1); + ibmvscsi_set_request_limit(hostdata, -1); return; } @@ -1163,7 +1179,7 @@ * This value is set rather than added to request_limit because * request_limit could have been set to -1 by this client. */ - atomic_set(&hostdata->request_limit, + ibmvscsi_set_request_limit(hostdata, be32_to_cpu(evt_struct->xfer_iu->srp.login_rsp.req_lim_delta)); /* If we had any pending I/Os, kick them */ @@ -1195,13 +1211,13 @@ login->req_buf_fmt = cpu_to_be16(SRP_BUF_FORMAT_DIRECT | SRP_BUF_FORMAT_INDIRECT); - spin_lock_irqsave(hostdata->host->host_lock, flags); /* Start out with a request limit of 0, since this is negotiated in * the login request we are just sending and login requests always * get sent by the driver regardless of request_limit. */ - atomic_set(&hostdata->request_limit, 0); + ibmvscsi_set_request_limit(hostdata, 0); + spin_lock_irqsave(hostdata->host->host_lock, flags); rc = ibmvscsi_send_srp_event(evt_struct, hostdata, login_timeout * 2); spin_unlock_irqrestore(hostdata->host->host_lock, flags); dev_info(hostdata->dev, "sent SRP login\n"); @@ -1781,7 +1797,7 @@ return; case VIOSRP_CRQ_XPORT_EVENT: /* Hypervisor telling us the connection is closed */ scsi_block_requests(hostdata->host); - atomic_set(&hostdata->request_limit, 0); + ibmvscsi_set_request_limit(hostdata, 0); if (crq->format == 0x06) { /* We need to re-setup the interpartition connection */ dev_info(hostdata->dev, "Re-enabling adapter!\n"); @@ -2137,12 +2153,12 @@ } hostdata->action = IBMVSCSI_HOST_ACTION_NONE; + spin_unlock_irqrestore(hostdata->host->host_lock, flags); if (rc) { - atomic_set(&hostdata->request_limit, -1); + ibmvscsi_set_request_limit(hostdata, -1); dev_err(hostdata->dev, "error after %s\n", action); } - spin_unlock_irqrestore(hostdata->host->host_lock, flags); scsi_unblock_requests(hostdata->host); } @@ -2226,7 +2242,7 @@ init_waitqueue_head(&hostdata->work_wait_q); hostdata->host = host; hostdata->dev = dev; - atomic_set(&hostdata->request_limit, -1); + ibmvscsi_set_request_limit(hostdata, -1); hostdata->host->max_sectors = IBMVSCSI_MAX_SECTORS_DEFAULT; if (map_persist_bufs(hostdata)) { --- linux-azure-5.8-5.8.0.orig/drivers/scsi/iscsi_tcp.c +++ linux-azure-5.8-5.8.0/drivers/scsi/iscsi_tcp.c @@ -736,6 +736,7 @@ struct iscsi_tcp_conn *tcp_conn = conn->dd_data; struct iscsi_sw_tcp_conn *tcp_sw_conn = tcp_conn->dd_data; struct sockaddr_in6 addr; + struct socket *sock; int rc; switch(param) { @@ -747,13 +748,17 @@ spin_unlock_bh(&conn->session->frwd_lock); return -ENOTCONN; } + sock = tcp_sw_conn->sock; + sock_hold(sock->sk); + spin_unlock_bh(&conn->session->frwd_lock); + if (param == ISCSI_PARAM_LOCAL_PORT) - rc = kernel_getsockname(tcp_sw_conn->sock, + rc = kernel_getsockname(sock, (struct sockaddr *)&addr); else - rc = kernel_getpeername(tcp_sw_conn->sock, + rc = kernel_getpeername(sock, (struct sockaddr *)&addr); - spin_unlock_bh(&conn->session->frwd_lock); + sock_put(sock->sk); if (rc < 0) return rc; @@ -775,6 +780,7 @@ struct iscsi_tcp_conn *tcp_conn; struct iscsi_sw_tcp_conn *tcp_sw_conn; struct sockaddr_in6 addr; + struct socket *sock; int rc; switch (param) { @@ -789,16 +795,18 @@ return -ENOTCONN; } tcp_conn = conn->dd_data; - tcp_sw_conn = tcp_conn->dd_data; - if (!tcp_sw_conn->sock) { + sock = tcp_sw_conn->sock; + if (!sock) { spin_unlock_bh(&session->frwd_lock); return -ENOTCONN; } + sock_hold(sock->sk); + spin_unlock_bh(&session->frwd_lock); - rc = kernel_getsockname(tcp_sw_conn->sock, + rc = kernel_getsockname(sock, (struct sockaddr *)&addr); - spin_unlock_bh(&session->frwd_lock); + sock_put(sock->sk); if (rc < 0) return rc; --- linux-azure-5.8-5.8.0.orig/drivers/scsi/libfc/fc_disc.c +++ linux-azure-5.8-5.8.0/drivers/scsi/libfc/fc_disc.c @@ -581,8 +581,12 @@ if (PTR_ERR(fp) == -FC_EX_CLOSED) goto out; - if (IS_ERR(fp)) - goto redisc; + if (IS_ERR(fp)) { + mutex_lock(&disc->disc_mutex); + fc_disc_restart(disc); + mutex_unlock(&disc->disc_mutex); + goto out; + } cp = fc_frame_payload_get(fp, sizeof(*cp)); if (!cp) @@ -609,7 +613,7 @@ new_rdata->disc_id = disc->disc_id; fc_rport_login(new_rdata); } - goto out; + goto free_fp; } rdata->disc_id = disc->disc_id; mutex_unlock(&rdata->rp_mutex); @@ -626,10 +630,10 @@ fc_disc_restart(disc); mutex_unlock(&disc->disc_mutex); } +free_fp: + fc_frame_free(fp); out: kref_put(&rdata->kref, fc_rport_destroy); - if (!IS_ERR(fp)) - fc_frame_free(fp); } /** --- linux-azure-5.8-5.8.0.orig/drivers/scsi/libfc/fc_exch.c +++ linux-azure-5.8-5.8.0/drivers/scsi/libfc/fc_exch.c @@ -1619,8 +1619,13 @@ rc = fc_exch_done_locked(ep); WARN_ON(fc_seq_exch(sp) != ep); spin_unlock_bh(&ep->ex_lock); - if (!rc) + if (!rc) { fc_exch_delete(ep); + } else { + FC_EXCH_DBG(ep, "ep is completed already," + "hence skip calling the resp\n"); + goto skip_resp; + } } /* @@ -1639,6 +1644,7 @@ if (!fc_invoke_resp(ep, sp, fp)) fc_frame_free(fp); +skip_resp: fc_exch_release(ep); return; rel: @@ -1895,10 +1901,16 @@ fc_exch_hold(ep); - if (!rc) + if (!rc) { fc_exch_delete(ep); + } else { + FC_EXCH_DBG(ep, "ep is completed already," + "hence skip calling the resp\n"); + goto skip_resp; + } fc_invoke_resp(ep, sp, ERR_PTR(-FC_EX_CLOSED)); +skip_resp: fc_seq_set_resp(sp, NULL, ep->arg); fc_exch_release(ep); } --- linux-azure-5.8-5.8.0.orig/drivers/scsi/libiscsi.c +++ linux-azure-5.8-5.8.0/drivers/scsi/libiscsi.c @@ -533,8 +533,8 @@ if (conn->task == task) conn->task = NULL; - if (conn->ping_task == task) - conn->ping_task = NULL; + if (READ_ONCE(conn->ping_task) == task) + WRITE_ONCE(conn->ping_task, NULL); /* release get from queueing */ __iscsi_put_task(task); @@ -738,6 +738,9 @@ task->conn->session->age); } + if (unlikely(READ_ONCE(conn->ping_task) == INVALID_SCSI_TASK)) + WRITE_ONCE(conn->ping_task, task); + if (!ihost->workq) { if (iscsi_prep_mgmt_task(conn, task)) goto free_task; @@ -941,8 +944,11 @@ struct iscsi_nopout hdr; struct iscsi_task *task; - if (!rhdr && conn->ping_task) - return -EINVAL; + if (!rhdr) { + if (READ_ONCE(conn->ping_task)) + return -EINVAL; + WRITE_ONCE(conn->ping_task, INVALID_SCSI_TASK); + } memset(&hdr, 0, sizeof(struct iscsi_nopout)); hdr.opcode = ISCSI_OP_NOOP_OUT | ISCSI_OP_IMMEDIATE; @@ -957,11 +963,12 @@ task = __iscsi_conn_send_pdu(conn, (struct iscsi_hdr *)&hdr, NULL, 0); if (!task) { + if (!rhdr) + WRITE_ONCE(conn->ping_task, NULL); iscsi_conn_printk(KERN_ERR, conn, "Could not send nopout\n"); return -EIO; } else if (!rhdr) { /* only track our nops */ - conn->ping_task = task; conn->last_ping = jiffies; } @@ -984,7 +991,7 @@ struct iscsi_conn *conn = task->conn; int rc = 0; - if (conn->ping_task != task) { + if (READ_ONCE(conn->ping_task) != task) { /* * If this is not in response to one of our * nops then it must be from userspace. @@ -1923,7 +1930,7 @@ */ static int iscsi_has_ping_timed_out(struct iscsi_conn *conn) { - if (conn->ping_task && + if (READ_ONCE(conn->ping_task) && time_before_eq(conn->last_recv + (conn->recv_timeout * HZ) + (conn->ping_timeout * HZ), jiffies)) return 1; @@ -2058,7 +2065,7 @@ * Checking the transport already or nop from a cmd timeout still * running */ - if (conn->ping_task) { + if (READ_ONCE(conn->ping_task)) { task->have_checked_conn = true; rc = BLK_EH_RESET_TIMER; goto done; @@ -3331,125 +3338,125 @@ switch(param) { case ISCSI_PARAM_FAST_ABORT: - len = sprintf(buf, "%d\n", session->fast_abort); + len = sysfs_emit(buf, "%d\n", session->fast_abort); break; case ISCSI_PARAM_ABORT_TMO: - len = sprintf(buf, "%d\n", session->abort_timeout); + len = sysfs_emit(buf, "%d\n", session->abort_timeout); break; case ISCSI_PARAM_LU_RESET_TMO: - len = sprintf(buf, "%d\n", session->lu_reset_timeout); + len = sysfs_emit(buf, "%d\n", session->lu_reset_timeout); break; case ISCSI_PARAM_TGT_RESET_TMO: - len = sprintf(buf, "%d\n", session->tgt_reset_timeout); + len = sysfs_emit(buf, "%d\n", session->tgt_reset_timeout); break; case ISCSI_PARAM_INITIAL_R2T_EN: - len = sprintf(buf, "%d\n", session->initial_r2t_en); + len = sysfs_emit(buf, "%d\n", session->initial_r2t_en); break; case ISCSI_PARAM_MAX_R2T: - len = sprintf(buf, "%hu\n", session->max_r2t); + len = sysfs_emit(buf, "%hu\n", session->max_r2t); break; case ISCSI_PARAM_IMM_DATA_EN: - len = sprintf(buf, "%d\n", session->imm_data_en); + len = sysfs_emit(buf, "%d\n", session->imm_data_en); break; case ISCSI_PARAM_FIRST_BURST: - len = sprintf(buf, "%u\n", session->first_burst); + len = sysfs_emit(buf, "%u\n", session->first_burst); break; case ISCSI_PARAM_MAX_BURST: - len = sprintf(buf, "%u\n", session->max_burst); + len = sysfs_emit(buf, "%u\n", session->max_burst); break; case ISCSI_PARAM_PDU_INORDER_EN: - len = sprintf(buf, "%d\n", session->pdu_inorder_en); + len = sysfs_emit(buf, "%d\n", session->pdu_inorder_en); break; case ISCSI_PARAM_DATASEQ_INORDER_EN: - len = sprintf(buf, "%d\n", session->dataseq_inorder_en); + len = sysfs_emit(buf, "%d\n", session->dataseq_inorder_en); break; case ISCSI_PARAM_DEF_TASKMGMT_TMO: - len = sprintf(buf, "%d\n", session->def_taskmgmt_tmo); + len = sysfs_emit(buf, "%d\n", session->def_taskmgmt_tmo); break; case ISCSI_PARAM_ERL: - len = sprintf(buf, "%d\n", session->erl); + len = sysfs_emit(buf, "%d\n", session->erl); break; case ISCSI_PARAM_TARGET_NAME: - len = sprintf(buf, "%s\n", session->targetname); + len = sysfs_emit(buf, "%s\n", session->targetname); break; case ISCSI_PARAM_TARGET_ALIAS: - len = sprintf(buf, "%s\n", session->targetalias); + len = sysfs_emit(buf, "%s\n", session->targetalias); break; case ISCSI_PARAM_TPGT: - len = sprintf(buf, "%d\n", session->tpgt); + len = sysfs_emit(buf, "%d\n", session->tpgt); break; case ISCSI_PARAM_USERNAME: - len = sprintf(buf, "%s\n", session->username); + len = sysfs_emit(buf, "%s\n", session->username); break; case ISCSI_PARAM_USERNAME_IN: - len = sprintf(buf, "%s\n", session->username_in); + len = sysfs_emit(buf, "%s\n", session->username_in); break; case ISCSI_PARAM_PASSWORD: - len = sprintf(buf, "%s\n", session->password); + len = sysfs_emit(buf, "%s\n", session->password); break; case ISCSI_PARAM_PASSWORD_IN: - len = sprintf(buf, "%s\n", session->password_in); + len = sysfs_emit(buf, "%s\n", session->password_in); break; case ISCSI_PARAM_IFACE_NAME: - len = sprintf(buf, "%s\n", session->ifacename); + len = sysfs_emit(buf, "%s\n", session->ifacename); break; case ISCSI_PARAM_INITIATOR_NAME: - len = sprintf(buf, "%s\n", session->initiatorname); + len = sysfs_emit(buf, "%s\n", session->initiatorname); break; case ISCSI_PARAM_BOOT_ROOT: - len = sprintf(buf, "%s\n", session->boot_root); + len = sysfs_emit(buf, "%s\n", session->boot_root); break; case ISCSI_PARAM_BOOT_NIC: - len = sprintf(buf, "%s\n", session->boot_nic); + len = sysfs_emit(buf, "%s\n", session->boot_nic); break; case ISCSI_PARAM_BOOT_TARGET: - len = sprintf(buf, "%s\n", session->boot_target); + len = sysfs_emit(buf, "%s\n", session->boot_target); break; case ISCSI_PARAM_AUTO_SND_TGT_DISABLE: - len = sprintf(buf, "%u\n", session->auto_snd_tgt_disable); + len = sysfs_emit(buf, "%u\n", session->auto_snd_tgt_disable); break; case ISCSI_PARAM_DISCOVERY_SESS: - len = sprintf(buf, "%u\n", session->discovery_sess); + len = sysfs_emit(buf, "%u\n", session->discovery_sess); break; case ISCSI_PARAM_PORTAL_TYPE: - len = sprintf(buf, "%s\n", session->portal_type); + len = sysfs_emit(buf, "%s\n", session->portal_type); break; case ISCSI_PARAM_CHAP_AUTH_EN: - len = sprintf(buf, "%u\n", session->chap_auth_en); + len = sysfs_emit(buf, "%u\n", session->chap_auth_en); break; case ISCSI_PARAM_DISCOVERY_LOGOUT_EN: - len = sprintf(buf, "%u\n", session->discovery_logout_en); + len = sysfs_emit(buf, "%u\n", session->discovery_logout_en); break; case ISCSI_PARAM_BIDI_CHAP_EN: - len = sprintf(buf, "%u\n", session->bidi_chap_en); + len = sysfs_emit(buf, "%u\n", session->bidi_chap_en); break; case ISCSI_PARAM_DISCOVERY_AUTH_OPTIONAL: - len = sprintf(buf, "%u\n", session->discovery_auth_optional); + len = sysfs_emit(buf, "%u\n", session->discovery_auth_optional); break; case ISCSI_PARAM_DEF_TIME2WAIT: - len = sprintf(buf, "%d\n", session->time2wait); + len = sysfs_emit(buf, "%d\n", session->time2wait); break; case ISCSI_PARAM_DEF_TIME2RETAIN: - len = sprintf(buf, "%d\n", session->time2retain); + len = sysfs_emit(buf, "%d\n", session->time2retain); break; case ISCSI_PARAM_TSID: - len = sprintf(buf, "%u\n", session->tsid); + len = sysfs_emit(buf, "%u\n", session->tsid); break; case ISCSI_PARAM_ISID: - len = sprintf(buf, "%02x%02x%02x%02x%02x%02x\n", + len = sysfs_emit(buf, "%02x%02x%02x%02x%02x%02x\n", session->isid[0], session->isid[1], session->isid[2], session->isid[3], session->isid[4], session->isid[5]); break; case ISCSI_PARAM_DISCOVERY_PARENT_IDX: - len = sprintf(buf, "%u\n", session->discovery_parent_idx); + len = sysfs_emit(buf, "%u\n", session->discovery_parent_idx); break; case ISCSI_PARAM_DISCOVERY_PARENT_TYPE: if (session->discovery_parent_type) - len = sprintf(buf, "%s\n", + len = sysfs_emit(buf, "%s\n", session->discovery_parent_type); else - len = sprintf(buf, "\n"); + len = sysfs_emit(buf, "\n"); break; default: return -ENOSYS; @@ -3481,16 +3488,16 @@ case ISCSI_PARAM_CONN_ADDRESS: case ISCSI_HOST_PARAM_IPADDRESS: if (sin) - len = sprintf(buf, "%pI4\n", &sin->sin_addr.s_addr); + len = sysfs_emit(buf, "%pI4\n", &sin->sin_addr.s_addr); else - len = sprintf(buf, "%pI6\n", &sin6->sin6_addr); + len = sysfs_emit(buf, "%pI6\n", &sin6->sin6_addr); break; case ISCSI_PARAM_CONN_PORT: case ISCSI_PARAM_LOCAL_PORT: if (sin) - len = sprintf(buf, "%hu\n", be16_to_cpu(sin->sin_port)); + len = sysfs_emit(buf, "%hu\n", be16_to_cpu(sin->sin_port)); else - len = sprintf(buf, "%hu\n", + len = sysfs_emit(buf, "%hu\n", be16_to_cpu(sin6->sin6_port)); break; default: @@ -3509,88 +3516,88 @@ switch(param) { case ISCSI_PARAM_PING_TMO: - len = sprintf(buf, "%u\n", conn->ping_timeout); + len = sysfs_emit(buf, "%u\n", conn->ping_timeout); break; case ISCSI_PARAM_RECV_TMO: - len = sprintf(buf, "%u\n", conn->recv_timeout); + len = sysfs_emit(buf, "%u\n", conn->recv_timeout); break; case ISCSI_PARAM_MAX_RECV_DLENGTH: - len = sprintf(buf, "%u\n", conn->max_recv_dlength); + len = sysfs_emit(buf, "%u\n", conn->max_recv_dlength); break; case ISCSI_PARAM_MAX_XMIT_DLENGTH: - len = sprintf(buf, "%u\n", conn->max_xmit_dlength); + len = sysfs_emit(buf, "%u\n", conn->max_xmit_dlength); break; case ISCSI_PARAM_HDRDGST_EN: - len = sprintf(buf, "%d\n", conn->hdrdgst_en); + len = sysfs_emit(buf, "%d\n", conn->hdrdgst_en); break; case ISCSI_PARAM_DATADGST_EN: - len = sprintf(buf, "%d\n", conn->datadgst_en); + len = sysfs_emit(buf, "%d\n", conn->datadgst_en); break; case ISCSI_PARAM_IFMARKER_EN: - len = sprintf(buf, "%d\n", conn->ifmarker_en); + len = sysfs_emit(buf, "%d\n", conn->ifmarker_en); break; case ISCSI_PARAM_OFMARKER_EN: - len = sprintf(buf, "%d\n", conn->ofmarker_en); + len = sysfs_emit(buf, "%d\n", conn->ofmarker_en); break; case ISCSI_PARAM_EXP_STATSN: - len = sprintf(buf, "%u\n", conn->exp_statsn); + len = sysfs_emit(buf, "%u\n", conn->exp_statsn); break; case ISCSI_PARAM_PERSISTENT_PORT: - len = sprintf(buf, "%d\n", conn->persistent_port); + len = sysfs_emit(buf, "%d\n", conn->persistent_port); break; case ISCSI_PARAM_PERSISTENT_ADDRESS: - len = sprintf(buf, "%s\n", conn->persistent_address); + len = sysfs_emit(buf, "%s\n", conn->persistent_address); break; case ISCSI_PARAM_STATSN: - len = sprintf(buf, "%u\n", conn->statsn); + len = sysfs_emit(buf, "%u\n", conn->statsn); break; case ISCSI_PARAM_MAX_SEGMENT_SIZE: - len = sprintf(buf, "%u\n", conn->max_segment_size); + len = sysfs_emit(buf, "%u\n", conn->max_segment_size); break; case ISCSI_PARAM_KEEPALIVE_TMO: - len = sprintf(buf, "%u\n", conn->keepalive_tmo); + len = sysfs_emit(buf, "%u\n", conn->keepalive_tmo); break; case ISCSI_PARAM_LOCAL_PORT: - len = sprintf(buf, "%u\n", conn->local_port); + len = sysfs_emit(buf, "%u\n", conn->local_port); break; case ISCSI_PARAM_TCP_TIMESTAMP_STAT: - len = sprintf(buf, "%u\n", conn->tcp_timestamp_stat); + len = sysfs_emit(buf, "%u\n", conn->tcp_timestamp_stat); break; case ISCSI_PARAM_TCP_NAGLE_DISABLE: - len = sprintf(buf, "%u\n", conn->tcp_nagle_disable); + len = sysfs_emit(buf, "%u\n", conn->tcp_nagle_disable); break; case ISCSI_PARAM_TCP_WSF_DISABLE: - len = sprintf(buf, "%u\n", conn->tcp_wsf_disable); + len = sysfs_emit(buf, "%u\n", conn->tcp_wsf_disable); break; case ISCSI_PARAM_TCP_TIMER_SCALE: - len = sprintf(buf, "%u\n", conn->tcp_timer_scale); + len = sysfs_emit(buf, "%u\n", conn->tcp_timer_scale); break; case ISCSI_PARAM_TCP_TIMESTAMP_EN: - len = sprintf(buf, "%u\n", conn->tcp_timestamp_en); + len = sysfs_emit(buf, "%u\n", conn->tcp_timestamp_en); break; case ISCSI_PARAM_IP_FRAGMENT_DISABLE: - len = sprintf(buf, "%u\n", conn->fragment_disable); + len = sysfs_emit(buf, "%u\n", conn->fragment_disable); break; case ISCSI_PARAM_IPV4_TOS: - len = sprintf(buf, "%u\n", conn->ipv4_tos); + len = sysfs_emit(buf, "%u\n", conn->ipv4_tos); break; case ISCSI_PARAM_IPV6_TC: - len = sprintf(buf, "%u\n", conn->ipv6_traffic_class); + len = sysfs_emit(buf, "%u\n", conn->ipv6_traffic_class); break; case ISCSI_PARAM_IPV6_FLOW_LABEL: - len = sprintf(buf, "%u\n", conn->ipv6_flow_label); + len = sysfs_emit(buf, "%u\n", conn->ipv6_flow_label); break; case ISCSI_PARAM_IS_FW_ASSIGNED_IPV6: - len = sprintf(buf, "%u\n", conn->is_fw_assigned_ipv6); + len = sysfs_emit(buf, "%u\n", conn->is_fw_assigned_ipv6); break; case ISCSI_PARAM_TCP_XMIT_WSF: - len = sprintf(buf, "%u\n", conn->tcp_xmit_wsf); + len = sysfs_emit(buf, "%u\n", conn->tcp_xmit_wsf); break; case ISCSI_PARAM_TCP_RECV_WSF: - len = sprintf(buf, "%u\n", conn->tcp_recv_wsf); + len = sysfs_emit(buf, "%u\n", conn->tcp_recv_wsf); break; case ISCSI_PARAM_LOCAL_IPADDR: - len = sprintf(buf, "%s\n", conn->local_ipaddr); + len = sysfs_emit(buf, "%s\n", conn->local_ipaddr); break; default: return -ENOSYS; @@ -3608,13 +3615,13 @@ switch (param) { case ISCSI_HOST_PARAM_NETDEV_NAME: - len = sprintf(buf, "%s\n", ihost->netdev); + len = sysfs_emit(buf, "%s\n", ihost->netdev); break; case ISCSI_HOST_PARAM_HWADDRESS: - len = sprintf(buf, "%s\n", ihost->hwaddress); + len = sysfs_emit(buf, "%s\n", ihost->hwaddress); break; case ISCSI_HOST_PARAM_INITIATOR_NAME: - len = sprintf(buf, "%s\n", ihost->initiatorname); + len = sysfs_emit(buf, "%s\n", ihost->initiatorname); break; default: return -ENOSYS; --- linux-azure-5.8-5.8.0.orig/drivers/scsi/libsas/sas_ata.c +++ linux-azure-5.8-5.8.0/drivers/scsi/libsas/sas_ata.c @@ -209,7 +209,10 @@ task->num_scatter = si; } - task->data_dir = qc->dma_dir; + if (qc->tf.protocol == ATA_PROT_NODATA) + task->data_dir = DMA_NONE; + else + task->data_dir = qc->dma_dir; task->scatter = qc->sg; task->ata_task.retry_count = 1; task->task_state_flags = SAS_TASK_STATE_PENDING; --- linux-azure-5.8-5.8.0.orig/drivers/scsi/libsas/sas_discover.c +++ linux-azure-5.8-5.8.0/drivers/scsi/libsas/sas_discover.c @@ -182,10 +182,11 @@ pr_warn("driver on host %s cannot handle device %016llx, error:%d\n", dev_name(sas_ha->dev), SAS_ADDR(dev->sas_addr), res); + return res; } set_bit(SAS_DEV_FOUND, &dev->state); kref_get(&dev->kref); - return res; + return 0; } --- linux-azure-5.8-5.8.0.orig/drivers/scsi/libsas/sas_scsi_host.c +++ linux-azure-5.8-5.8.0/drivers/scsi/libsas/sas_scsi_host.c @@ -466,6 +466,9 @@ struct sas_internal *i = to_sas_internal(host->transportt); unsigned long flags; + if (current != host->ehandler) + return FAILED; + if (!i->dft->lldd_abort_task) return FAILED; --- linux-azure-5.8-5.8.0.orig/drivers/scsi/lpfc/lpfc_els.c +++ linux-azure-5.8-5.8.0/drivers/scsi/lpfc/lpfc_els.c @@ -3512,6 +3512,9 @@ FC_TLV_DESC_LENGTH_FROM_SZ(prdf->reg_d1)); prdf->reg_d1.reg_desc.count = cpu_to_be32(ELS_RDF_REG_TAG_CNT); prdf->reg_d1.desc_tags[0] = cpu_to_be32(ELS_DTAG_LNK_INTEGRITY); + prdf->reg_d1.desc_tags[1] = cpu_to_be32(ELS_DTAG_DELIVERY); + prdf->reg_d1.desc_tags[2] = cpu_to_be32(ELS_DTAG_PEER_CONGEST); + prdf->reg_d1.desc_tags[3] = cpu_to_be32(ELS_DTAG_CONGESTION); lpfc_debugfs_disc_trc(vport, LPFC_DISC_TRC_ELS_CMD, "Issue RDF: did:x%x", @@ -4644,7 +4647,9 @@ out: if (ndlp && NLP_CHK_NODE_ACT(ndlp) && shost) { spin_lock_irq(shost->host_lock); - ndlp->nlp_flag &= ~(NLP_ACC_REGLOGIN | NLP_RM_DFLT_RPI); + if (mbox) + ndlp->nlp_flag &= ~NLP_ACC_REGLOGIN; + ndlp->nlp_flag &= ~NLP_RM_DFLT_RPI; spin_unlock_irq(shost->host_lock); /* If the node is not being used by another discovery thread, --- linux-azure-5.8-5.8.0.orig/drivers/scsi/lpfc/lpfc_hbadisc.c +++ linux-azure-5.8-5.8.0/drivers/scsi/lpfc/lpfc_hbadisc.c @@ -71,6 +71,7 @@ static void lpfc_disc_flush_list(struct lpfc_vport *vport); static void lpfc_unregister_fcfi_cmpl(struct lpfc_hba *, LPFC_MBOXQ_t *); static int lpfc_fcf_inuse(struct lpfc_hba *); +static void lpfc_mbx_cmpl_read_sparam(struct lpfc_hba *, LPFC_MBOXQ_t *); void lpfc_terminate_rport_io(struct fc_rport *rport) @@ -1138,11 +1139,13 @@ return; } - void lpfc_mbx_cmpl_local_config_link(struct lpfc_hba *phba, LPFC_MBOXQ_t *pmb) { struct lpfc_vport *vport = pmb->vport; + LPFC_MBOXQ_t *sparam_mb; + struct lpfc_dmabuf *sparam_mp; + int rc; if (pmb->u.mb.mbxStatus) goto out; @@ -1167,12 +1170,42 @@ } /* Start discovery by sending a FLOGI. port_state is identically - * LPFC_FLOGI while waiting for FLOGI cmpl. Check if sending - * the FLOGI is being deferred till after MBX_READ_SPARAM completes. + * LPFC_FLOGI while waiting for FLOGI cmpl. */ if (vport->port_state != LPFC_FLOGI) { - if (!(phba->hba_flag & HBA_DEFER_FLOGI)) + /* Issue MBX_READ_SPARAM to update CSPs before FLOGI if + * bb-credit recovery is in place. + */ + if (phba->bbcredit_support && phba->cfg_enable_bbcr && + !(phba->link_flag & LS_LOOPBACK_MODE)) { + sparam_mb = mempool_alloc(phba->mbox_mem_pool, + GFP_KERNEL); + if (!sparam_mb) + goto sparam_out; + + rc = lpfc_read_sparam(phba, sparam_mb, 0); + if (rc) { + mempool_free(sparam_mb, phba->mbox_mem_pool); + goto sparam_out; + } + sparam_mb->vport = vport; + sparam_mb->mbox_cmpl = lpfc_mbx_cmpl_read_sparam; + rc = lpfc_sli_issue_mbox(phba, sparam_mb, MBX_NOWAIT); + if (rc == MBX_NOT_FINISHED) { + sparam_mp = (struct lpfc_dmabuf *) + sparam_mb->ctx_buf; + lpfc_mbuf_free(phba, sparam_mp->virt, + sparam_mp->phys); + kfree(sparam_mp); + sparam_mb->ctx_buf = NULL; + mempool_free(sparam_mb, phba->mbox_mem_pool); + goto sparam_out; + } + + phba->hba_flag |= HBA_DEFER_FLOGI; + } else { lpfc_initial_flogi(vport); + } } else { if (vport->fc_flag & FC_PT2PT) lpfc_disc_start(vport); @@ -1184,6 +1217,7 @@ "0306 CONFIG_LINK mbxStatus error x%x " "HBA state x%x\n", pmb->u.mb.mbxStatus, vport->port_state); +sparam_out: mempool_free(pmb, phba->mbox_mem_pool); lpfc_linkdown(phba); @@ -3239,21 +3273,6 @@ lpfc_linkup(phba); sparam_mbox = NULL; - if (!(phba->hba_flag & HBA_FCOE_MODE)) { - cfglink_mbox = mempool_alloc(phba->mbox_mem_pool, GFP_KERNEL); - if (!cfglink_mbox) - goto out; - vport->port_state = LPFC_LOCAL_CFG_LINK; - lpfc_config_link(phba, cfglink_mbox); - cfglink_mbox->vport = vport; - cfglink_mbox->mbox_cmpl = lpfc_mbx_cmpl_local_config_link; - rc = lpfc_sli_issue_mbox(phba, cfglink_mbox, MBX_NOWAIT); - if (rc == MBX_NOT_FINISHED) { - mempool_free(cfglink_mbox, phba->mbox_mem_pool); - goto out; - } - } - sparam_mbox = mempool_alloc(phba->mbox_mem_pool, GFP_KERNEL); if (!sparam_mbox) goto out; @@ -3274,7 +3293,20 @@ goto out; } - if (phba->hba_flag & HBA_FCOE_MODE) { + if (!(phba->hba_flag & HBA_FCOE_MODE)) { + cfglink_mbox = mempool_alloc(phba->mbox_mem_pool, GFP_KERNEL); + if (!cfglink_mbox) + goto out; + vport->port_state = LPFC_LOCAL_CFG_LINK; + lpfc_config_link(phba, cfglink_mbox); + cfglink_mbox->vport = vport; + cfglink_mbox->mbox_cmpl = lpfc_mbx_cmpl_local_config_link; + rc = lpfc_sli_issue_mbox(phba, cfglink_mbox, MBX_NOWAIT); + if (rc == MBX_NOT_FINISHED) { + mempool_free(cfglink_mbox, phba->mbox_mem_pool); + goto out; + } + } else { vport->port_state = LPFC_VPORT_UNKNOWN; /* * Add the driver's default FCF record at FCF index 0 now. This @@ -3331,10 +3363,6 @@ } /* Reset FCF roundrobin bmask for new discovery */ lpfc_sli4_clear_fcf_rr_bmask(phba); - } else { - if (phba->bbcredit_support && phba->cfg_enable_bbcr && - !(phba->link_flag & LS_LOOPBACK_MODE)) - phba->hba_flag |= HBA_DEFER_FLOGI; } /* Prepare for LINK up registrations */ --- linux-azure-5.8-5.8.0.orig/drivers/scsi/lpfc/lpfc_hw4.h +++ linux-azure-5.8-5.8.0/drivers/scsi/lpfc/lpfc_hw4.h @@ -4797,7 +4797,7 @@ uint32_t fc_hdr_wd5; /* word 15 */ }; -#define ELS_RDF_REG_TAG_CNT 1 +#define ELS_RDF_REG_TAG_CNT 4 struct lpfc_els_rdf_reg_desc { struct fc_df_desc_fpin_reg reg_desc; /* descriptor header */ __be32 desc_tags[ELS_RDF_REG_TAG_CNT]; --- linux-azure-5.8-5.8.0.orig/drivers/scsi/lpfc/lpfc_init.c +++ linux-azure-5.8-5.8.0/drivers/scsi/lpfc/lpfc_init.c @@ -11257,7 +11257,6 @@ { cpumask_clear(&eqhdl->aff_mask); irq_clear_status_flags(eqhdl->irq, IRQ_NO_BALANCING); - irq_set_affinity_hint(eqhdl->irq, &eqhdl->aff_mask); } /** --- linux-azure-5.8-5.8.0.orig/drivers/scsi/lpfc/lpfc_mem.c +++ linux-azure-5.8-5.8.0/drivers/scsi/lpfc/lpfc_mem.c @@ -586,8 +586,6 @@ * Description: Allocates a DMA-mapped receive buffer from the lpfc_hrb_pool PCI * pool along a non-DMA-mapped container for it. * - * Notes: Not interrupt-safe. Must be called with no locks held. - * * Returns: * pointer to HBQ on success * NULL on failure @@ -597,7 +595,7 @@ { struct rqb_dmabuf *dma_buf; - dma_buf = kzalloc(sizeof(struct rqb_dmabuf), GFP_KERNEL); + dma_buf = kzalloc(sizeof(*dma_buf), GFP_KERNEL); if (!dma_buf) return NULL; @@ -720,7 +718,6 @@ drqe.address_hi = putPaddrHigh(rqb_entry->dbuf.phys); rc = lpfc_sli4_rq_put(rqb_entry->hrq, rqb_entry->drq, &hrqe, &drqe); if (rc < 0) { - (rqbp->rqb_free_buffer)(phba, rqb_entry); lpfc_printf_log(phba, KERN_ERR, LOG_INIT, "6409 Cannot post to HRQ %d: %x %x %x " "DRQ %x %x\n", @@ -730,6 +727,7 @@ rqb_entry->hrq->entry_count, rqb_entry->drq->host_index, rqb_entry->drq->hba_index); + (rqbp->rqb_free_buffer)(phba, rqb_entry); } else { list_add_tail(&rqb_entry->hbuf.list, &rqbp->rqb_buffer_list); rqbp->buffer_count++; --- linux-azure-5.8-5.8.0.orig/drivers/scsi/lpfc/lpfc_nvme.c +++ linux-azure-5.8-5.8.0/drivers/scsi/lpfc/lpfc_nvme.c @@ -713,6 +713,9 @@ return -ENODEV; } + if (!vport->phba->sli4_hba.nvmels_wq) + return -ENOMEM; + /* * there are two dma buf in the request, actually there is one and * the second one is just the start address + cmd size. --- linux-azure-5.8-5.8.0.orig/drivers/scsi/lpfc/lpfc_nvmet.c +++ linux-azure-5.8-5.8.0/drivers/scsi/lpfc/lpfc_nvmet.c @@ -2112,7 +2112,7 @@ } tgtp->tport_unreg_cmp = &tport_unreg_cmp; nvmet_fc_unregister_targetport(phba->targetport); - if (!wait_for_completion_timeout(tgtp->tport_unreg_cmp, + if (!wait_for_completion_timeout(&tport_unreg_cmp, msecs_to_jiffies(LPFC_NVMET_WAIT_TMO))) lpfc_printf_log(phba, KERN_ERR, LOG_NVME, "6179 Unreg targetport x%px timeout " --- linux-azure-5.8-5.8.0.orig/drivers/scsi/lpfc/lpfc_sli.c +++ linux-azure-5.8-5.8.0/drivers/scsi/lpfc/lpfc_sli.c @@ -7254,12 +7254,16 @@ struct rqb_dmabuf *rqb_buffer; LIST_HEAD(rqb_buf_list); - spin_lock_irqsave(&phba->hbalock, flags); rqbp = hrq->rqbp; for (i = 0; i < count; i++) { + spin_lock_irqsave(&phba->hbalock, flags); /* IF RQ is already full, don't bother */ - if (rqbp->buffer_count + i >= rqbp->entry_count - 1) + if (rqbp->buffer_count + i >= rqbp->entry_count - 1) { + spin_unlock_irqrestore(&phba->hbalock, flags); break; + } + spin_unlock_irqrestore(&phba->hbalock, flags); + rqb_buffer = rqbp->rqb_alloc_buffer(phba); if (!rqb_buffer) break; @@ -7268,6 +7272,8 @@ rqb_buffer->idx = idx; list_add_tail(&rqb_buffer->hbuf.list, &rqb_buf_list); } + + spin_lock_irqsave(&phba->hbalock, flags); while (!list_empty(&rqb_buf_list)) { list_remove_head(&rqb_buf_list, rqb_buffer, struct rqb_dmabuf, hbuf.list); --- linux-azure-5.8-5.8.0.orig/drivers/scsi/lpfc/lpfc_vport.c +++ linux-azure-5.8-5.8.0/drivers/scsi/lpfc/lpfc_vport.c @@ -642,27 +642,16 @@ vport->port_state < LPFC_VPORT_READY) return -EAGAIN; } + /* - * This is a bit of a mess. We want to ensure the shost doesn't get - * torn down until we're done with the embedded lpfc_vport structure. - * - * Beyond holding a reference for this function, we also need a - * reference for outstanding I/O requests we schedule during delete - * processing. But once we scsi_remove_host() we can no longer obtain - * a reference through scsi_host_get(). - * - * So we take two references here. We release one reference at the - * bottom of the function -- after delinking the vport. And we - * release the other at the completion of the unreg_vpi that get's - * initiated after we've disposed of all other resources associated - * with the port. + * Take early refcount for outstanding I/O requests we schedule during + * delete processing for unreg_vpi. Always keep this before + * scsi_remove_host() as we can no longer obtain a reference through + * scsi_host_get() after scsi_host_remove as shost is set to SHOST_DEL. */ if (!scsi_host_get(shost)) return VPORT_INVAL; - if (!scsi_host_get(shost)) { - scsi_host_put(shost); - return VPORT_INVAL; - } + lpfc_free_sysfs_attr(vport); lpfc_debugfs_terminate(vport); @@ -809,8 +798,9 @@ if (!(vport->vpi_state & LPFC_VPI_REGISTERED) || lpfc_mbx_unreg_vpi(vport)) scsi_host_put(shost); - } else + } else { scsi_host_put(shost); + } lpfc_free_vpi(phba, vport->vpi); vport->work_port_events = 0; --- linux-azure-5.8-5.8.0.orig/drivers/scsi/megaraid/megaraid_sas_base.c +++ linux-azure-5.8-5.8.0/drivers/scsi/megaraid/megaraid_sas_base.c @@ -5602,9 +5602,13 @@ &instance->irq_context[i])) { dev_err(&instance->pdev->dev, "Failed to register IRQ for vector %d.\n", i); - for (j = 0; j < i; j++) + for (j = 0; j < i; j++) { + if (j < instance->low_latency_index_start) + irq_set_affinity_hint( + pci_irq_vector(pdev, j), NULL); free_irq(pci_irq_vector(pdev, j), &instance->irq_context[j]); + } /* Retry irq register for IO_APIC*/ instance->msix_vectors = 0; instance->msix_load_balance = false; @@ -5642,6 +5646,9 @@ if (instance->msix_vectors) for (i = 0; i < instance->msix_vectors; i++) { + if (i < instance->low_latency_index_start) + irq_set_affinity_hint( + pci_irq_vector(instance->pdev, i), NULL); free_irq(pci_irq_vector(instance->pdev, i), &instance->irq_context[i]); } @@ -8072,7 +8079,7 @@ int error = 0, i; void *sense = NULL; dma_addr_t sense_handle; - unsigned long *sense_ptr; + void *sense_ptr; u32 opcode = 0; int ret = DCMD_SUCCESS; @@ -8195,6 +8202,13 @@ } if (ioc->sense_len) { + /* make sure the pointer is part of the frame */ + if (ioc->sense_off > + (sizeof(union megasas_frame) - sizeof(__le64))) { + error = -EINVAL; + goto out; + } + sense = dma_alloc_coherent(&instance->pdev->dev, ioc->sense_len, &sense_handle, GFP_KERNEL); if (!sense) { @@ -8202,12 +8216,9 @@ goto out; } - sense_ptr = - (unsigned long *) ((unsigned long)cmd->frame + ioc->sense_off); - if (instance->consistent_mask_64bit) - *sense_ptr = cpu_to_le64(sense_handle); - else - *sense_ptr = cpu_to_le32(sense_handle); + /* always store 64 bits regardless of addressing */ + sense_ptr = (void *)cmd->frame + ioc->sense_off; + put_unaligned_le64(sense_handle, sense_ptr); } /* --- linux-azure-5.8-5.8.0.orig/drivers/scsi/megaraid/megaraid_sas_fusion.c +++ linux-azure-5.8-5.8.0/drivers/scsi/megaraid/megaraid_sas_fusion.c @@ -3690,7 +3690,7 @@ instance = irq_ctx->instance; if (irq_ctx->irq_line_enable) { - disable_irq(irq_ctx->os_irq); + disable_irq_nosync(irq_ctx->os_irq); irq_ctx->irq_line_enable = false; } --- linux-azure-5.8-5.8.0.orig/drivers/scsi/mesh.c +++ linux-azure-5.8-5.8.0/drivers/scsi/mesh.c @@ -1045,6 +1045,8 @@ while ((in_8(&mr->bus_status1) & BS1_RST) != 0) udelay(1); printk("done\n"); + if (ms->dma_started) + halt_dma(ms); handle_reset(ms); /* request_q is empty, no point in mesh_start() */ return; @@ -1357,7 +1359,8 @@ ms->conn_tgt, ms->data_ptr, scsi_bufflen(cmd), ms->tgts[ms->conn_tgt].data_goes_out); } - scsi_dma_unmap(cmd); + if (cmd) + scsi_dma_unmap(cmd); ms->dma_started = 0; } @@ -1712,6 +1715,9 @@ spin_lock_irqsave(ms->host->host_lock, flags); + if (ms->dma_started) + halt_dma(ms); + /* Reset the controller & dbdma channel */ out_le32(&md->control, (RUN|PAUSE|FLUSH|WAKE) << 16); /* stop dma */ out_8(&mr->exception, 0xff); /* clear all exception bits */ --- linux-azure-5.8-5.8.0.orig/drivers/scsi/mpt3sas/mpt3sas_base.c +++ linux-azure-5.8-5.8.0/drivers/scsi/mpt3sas/mpt3sas_base.c @@ -1732,7 +1732,7 @@ reply_q = container_of(irqpoll, struct adapter_reply_queue, irqpoll); if (reply_q->irq_line_enable) { - disable_irq(reply_q->os_irq); + disable_irq_nosync(reply_q->os_irq); reply_q->irq_line_enable = false; } num_entries = _base_process_reply_queue(reply_q); @@ -1741,6 +1741,13 @@ reply_q->irq_poll_scheduled = false; reply_q->irq_line_enable = true; enable_irq(reply_q->os_irq); + /* + * Go for one more round of processing the + * reply descriptor post queue incase if HBA + * Firmware has posted some reply descriptors + * while reenabling the IRQ. + */ + _base_process_reply_queue(reply_q); } return num_entries; @@ -1808,18 +1815,22 @@ /* TMs are on msix_index == 0 */ if (reply_q->msix_index == 0) continue; + synchronize_irq(pci_irq_vector(ioc->pdev, reply_q->msix_index)); if (reply_q->irq_poll_scheduled) { /* Calling irq_poll_disable will wait for any pending * callbacks to have completed. */ irq_poll_disable(&reply_q->irqpoll); irq_poll_enable(&reply_q->irqpoll); - reply_q->irq_poll_scheduled = false; - reply_q->irq_line_enable = true; - enable_irq(reply_q->os_irq); - continue; + /* check how the scheduled poll has ended, + * clean up only if necessary + */ + if (reply_q->irq_poll_scheduled) { + reply_q->irq_poll_scheduled = false; + reply_q->irq_line_enable = true; + enable_irq(reply_q->os_irq); + } } - synchronize_irq(pci_irq_vector(ioc->pdev, reply_q->msix_index)); } } @@ -6428,7 +6439,7 @@ r = _base_handshake_req_reply_wait(ioc, sizeof(Mpi2IOCInitRequest_t), (u32 *)&mpi_request, - sizeof(Mpi2IOCInitReply_t), (u16 *)&mpi_reply, 10); + sizeof(Mpi2IOCInitReply_t), (u16 *)&mpi_reply, 30); if (r != 0) { ioc_err(ioc, "%s: handshake failed (r=%d)\n", __func__, r); --- linux-azure-5.8-5.8.0.orig/drivers/scsi/mpt3sas/mpt3sas_base.h +++ linux-azure-5.8-5.8.0/drivers/scsi/mpt3sas/mpt3sas_base.h @@ -76,9 +76,9 @@ #define MPT3SAS_DRIVER_NAME "mpt3sas" #define MPT3SAS_AUTHOR "Avago Technologies " #define MPT3SAS_DESCRIPTION "LSI MPT Fusion SAS 3.0 Device Driver" -#define MPT3SAS_DRIVER_VERSION "34.100.00.00" -#define MPT3SAS_MAJOR_VERSION 34 -#define MPT3SAS_MINOR_VERSION 100 +#define MPT3SAS_DRIVER_VERSION "35.101.00.00" +#define MPT3SAS_MAJOR_VERSION 35 +#define MPT3SAS_MINOR_VERSION 101 #define MPT3SAS_BUILD_VERSION 0 #define MPT3SAS_RELEASE_VERSION 00 @@ -420,6 +420,7 @@ * @flags: MPT_TARGET_FLAGS_XXX flags * @deleted: target flaged for deletion * @tm_busy: target is busy with TM request. + * @port: hba port entry containing target's port number info * @sas_dev: The sas_device associated with this target * @pcie_dev: The pcie device associated with this target */ @@ -432,6 +433,7 @@ u32 flags; u8 deleted; u8 tm_busy; + struct hba_port *port; struct _sas_device *sas_dev; struct _pcie_device *pcie_dev; }; @@ -534,6 +536,9 @@ * addition routine. * @chassis_slot: chassis slot * @is_chassis_slot_valid: chassis slot valid or not + * @port: hba port entry containing device's port number info + * @rphy: device's sas_rphy address used to identify this device structure in + * target_alloc callback function */ struct _sas_device { struct list_head list; @@ -560,6 +565,8 @@ u8 is_chassis_slot_valid; u8 connector_name[5]; struct kref refcount; + struct hba_port *port; + struct sas_rphy *rphy; }; static inline void sas_device_get(struct _sas_device *s) @@ -730,6 +737,7 @@ * @remote_identify: attached device identification * @rphy: sas transport rphy object * @port: sas transport wide/narrow port object + * @hba_port: hba port entry containing port's port number info * @phy_list: _sas_phy list objects belonging to this port */ struct _sas_port { @@ -738,6 +746,7 @@ struct sas_identify remote_identify; struct sas_rphy *rphy; struct sas_port *port; + struct hba_port *hba_port; struct list_head phy_list; }; @@ -751,6 +760,7 @@ * @handle: device handle for this phy * @attached_handle: device handle for attached device * @phy_belongs_to_port: port has been created for this phy + * @port: hba port entry containing port number info */ struct _sas_phy { struct list_head port_siblings; @@ -761,6 +771,8 @@ u16 handle; u16 attached_handle; u8 phy_belongs_to_port; + u8 hba_vphy; + struct hba_port *port; }; /** @@ -776,6 +788,8 @@ * @responding: used in _scsih_expander_device_mark_responding * @phy: a list of phys that make up this sas_host/expander * @sas_port_list: list of ports attached to this sas_host/expander + * @port: hba port entry containing node's port number info + * @rphy: sas_rphy object of this expander */ struct _sas_node { struct list_head list; @@ -787,11 +801,12 @@ u16 enclosure_handle; u64 enclosure_logical_id; u8 responding; + struct hba_port *port; struct _sas_phy *phy; struct list_head sas_port_list; + struct sas_rphy *rphy; }; - /** * struct _enclosure_node - enclosure information * @list: list of enclosures @@ -1009,6 +1024,46 @@ dma_addr_t reply_post_free_dma; }; +/** + * struct virtual_phy - vSES phy structure + * sas_address: SAS Address of vSES device + * phy_mask: vSES device's phy number + * flags: flags used to manage this structure + */ +struct virtual_phy { + struct list_head list; + u64 sas_address; + u32 phy_mask; + u8 flags; +}; + +#define MPT_VPHY_FLAG_DIRTY_PHY 0x01 + +/** + * struct hba_port - Saves each HBA's Wide/Narrow port info + * @sas_address: sas address of this wide/narrow port's attached device + * @phy_mask: HBA PHY's belonging to this port + * @port_id: port number + * @flags: hba port flags + * @vphys_mask : mask of vSES devices Phy number + * @vphys_list : list containing vSES device structures + */ +struct hba_port { + struct list_head list; + u64 sas_address; + u32 phy_mask; + u8 port_id; + u8 flags; + u32 vphys_mask; + struct list_head vphys_list; +}; + +/* hba port flags */ +#define HBA_PORT_FLAG_DIRTY_PORT 0x01 +#define HBA_PORT_FLAG_NEW_PORT 0x02 + +#define MULTIPATH_DISABLED_PORT_ID 0xFF + typedef void (*MPT3SAS_FLUSH_RUNNING_CMDS)(struct MPT3SAS_ADAPTER *ioc); /** * struct MPT3SAS_ADAPTER - per adapter struct @@ -1189,6 +1244,8 @@ * which ensures the syncrhonization between cli/sysfs_show path. * @atomic_desc_capable: Atomic Request Descriptor support. * @GET_MSIX_INDEX: Get the msix index of high iops queues. + * @multipath_on_hba: flag to determine multipath on hba is enabled or not + * @port_table_list: list containing HBA's wide/narrow port's info */ struct MPT3SAS_ADAPTER { struct list_head list; @@ -1479,6 +1536,9 @@ PUT_SMID_IO_FP_HIP put_smid_hi_priority; PUT_SMID_DEFAULT put_smid_default; GET_MSIX_INDEX get_msix_index_for_smlio; + + u8 multipath_on_hba; + struct list_head port_table_list; }; struct mpt3sas_debugfs_buffer { @@ -1612,20 +1672,27 @@ void mpt3sas_scsih_set_tm_flag(struct MPT3SAS_ADAPTER *ioc, u16 handle); void mpt3sas_scsih_clear_tm_flag(struct MPT3SAS_ADAPTER *ioc, u16 handle); -void mpt3sas_expander_remove(struct MPT3SAS_ADAPTER *ioc, u64 sas_address); +void mpt3sas_expander_remove(struct MPT3SAS_ADAPTER *ioc, u64 sas_address, + struct hba_port *port); void mpt3sas_device_remove_by_sas_address(struct MPT3SAS_ADAPTER *ioc, - u64 sas_address); + u64 sas_address, struct hba_port *port); u8 mpt3sas_check_for_pending_internal_cmds(struct MPT3SAS_ADAPTER *ioc, u16 smid); +struct hba_port * +mpt3sas_get_port_by_id(struct MPT3SAS_ADAPTER *ioc, u8 port, + u8 bypass_dirty_port_flag); struct _sas_node *mpt3sas_scsih_expander_find_by_handle( struct MPT3SAS_ADAPTER *ioc, u16 handle); struct _sas_node *mpt3sas_scsih_expander_find_by_sas_address( - struct MPT3SAS_ADAPTER *ioc, u64 sas_address); + struct MPT3SAS_ADAPTER *ioc, u64 sas_address, + struct hba_port *port); struct _sas_device *mpt3sas_get_sdev_by_addr( - struct MPT3SAS_ADAPTER *ioc, u64 sas_address); + struct MPT3SAS_ADAPTER *ioc, u64 sas_address, + struct hba_port *port); struct _sas_device *__mpt3sas_get_sdev_by_addr( - struct MPT3SAS_ADAPTER *ioc, u64 sas_address); + struct MPT3SAS_ADAPTER *ioc, u64 sas_address, + struct hba_port *port); struct _sas_device *mpt3sas_get_sdev_by_handle(struct MPT3SAS_ADAPTER *ioc, u16 handle); struct _pcie_device *mpt3sas_get_pdev_by_handle(struct MPT3SAS_ADAPTER *ioc, @@ -1635,6 +1702,11 @@ struct _raid_device * mpt3sas_raid_device_find_by_handle(struct MPT3SAS_ADAPTER *ioc, u16 handle); void mpt3sas_scsih_change_queue_depth(struct scsi_device *sdev, int qdepth); +struct _sas_device * +__mpt3sas_get_sdev_by_rphy(struct MPT3SAS_ADAPTER *ioc, struct sas_rphy *rphy); +struct virtual_phy * +mpt3sas_get_vphy_by_phy(struct MPT3SAS_ADAPTER *ioc, + struct hba_port *port, u32 phy); /* config shared API */ u8 mpt3sas_config_done(struct MPT3SAS_ADAPTER *ioc, u16 smid, u8 msix_index, @@ -1752,18 +1824,26 @@ u8 mpt3sas_transport_done(struct MPT3SAS_ADAPTER *ioc, u16 smid, u8 msix_index, u32 reply); struct _sas_port *mpt3sas_transport_port_add(struct MPT3SAS_ADAPTER *ioc, - u16 handle, u64 sas_address); + u16 handle, u64 sas_address, struct hba_port *port); void mpt3sas_transport_port_remove(struct MPT3SAS_ADAPTER *ioc, u64 sas_address, - u64 sas_address_parent); + u64 sas_address_parent, struct hba_port *port); int mpt3sas_transport_add_host_phy(struct MPT3SAS_ADAPTER *ioc, struct _sas_phy *mpt3sas_phy, Mpi2SasPhyPage0_t phy_pg0, struct device *parent_dev); int mpt3sas_transport_add_expander_phy(struct MPT3SAS_ADAPTER *ioc, struct _sas_phy *mpt3sas_phy, Mpi2ExpanderPage1_t expander_pg1, struct device *parent_dev); void mpt3sas_transport_update_links(struct MPT3SAS_ADAPTER *ioc, - u64 sas_address, u16 handle, u8 phy_number, u8 link_rate); + u64 sas_address, u16 handle, u8 phy_number, u8 link_rate, + struct hba_port *port); extern struct sas_function_template mpt3sas_transport_functions; extern struct scsi_transport_template *mpt3sas_transport_template; +void +mpt3sas_transport_del_phy_from_an_existing_port(struct MPT3SAS_ADAPTER *ioc, + struct _sas_node *sas_node, struct _sas_phy *mpt3sas_phy); +void +mpt3sas_transport_add_phy_to_an_existing_port(struct MPT3SAS_ADAPTER *ioc, + struct _sas_node *sas_node, struct _sas_phy *mpt3sas_phy, + u64 sas_address, struct hba_port *port); /* trigger data externs */ void mpt3sas_send_trigger_data_event(struct MPT3SAS_ADAPTER *ioc, struct SL_WH_TRIGGERS_EVENT_DATA_T *event_data); --- linux-azure-5.8-5.8.0.orig/drivers/scsi/mpt3sas/mpt3sas_ctl.c +++ linux-azure-5.8-5.8.0/drivers/scsi/mpt3sas/mpt3sas_ctl.c @@ -664,7 +664,7 @@ Mpi26NVMeEncapsulatedRequest_t *nvme_encap_request = NULL; struct _pcie_device *pcie_device = NULL; u16 smid; - u8 timeout; + unsigned long timeout; u8 issue_reset; u32 sz, sz_arg; void *psge; @@ -902,8 +902,10 @@ (Mpi2SmpPassthroughRequest_t *)mpi_request; u8 *data; - /* ioc determines which port to use */ - smp_request->PhysicalPort = 0xFF; + if (!ioc->multipath_on_hba) { + /* ioc determines which port to use */ + smp_request->PhysicalPort = 0xFF; + } if (smp_request->PassthroughFlags & MPI2_SMP_PT_REQ_PT_FLAGS_IMMEDIATE) data = (u8 *)&smp_request->SGL; --- linux-azure-5.8-5.8.0.orig/drivers/scsi/mpt3sas/mpt3sas_scsih.c +++ linux-azure-5.8-5.8.0/drivers/scsi/mpt3sas/mpt3sas_scsih.c @@ -159,6 +159,15 @@ MODULE_PARM_DESC(enable_sdev_max_qd, "Enable sdev max qd as can_queue, def=disabled(0)"); +static int multipath_on_hba = -1; +module_param(multipath_on_hba, int, 0); +MODULE_PARM_DESC(multipath_on_hba, + "Multipath support to add same target device\n\t\t" + "as many times as it is visible to HBA from various paths\n\t\t" + "(by default:\n\t\t" + "\t SAS 2.0 & SAS 3.0 HBA - This will be disabled,\n\t\t" + "\t SAS 3.5 HBA - This will be enabled)"); + /* raid transport support */ static struct raid_template *mpt3sas_raid_template; static struct raid_template *mpt2sas_raid_template; @@ -357,6 +366,87 @@ } /** + * mpt3sas_get_port_by_id - get hba port entry corresponding to provided + * port number from port list + * @ioc: per adapter object + * @port_id: port number + * @bypass_dirty_port_flag: when set look the matching hba port entry even + * if hba port entry is marked as dirty. + * + * Search for hba port entry corresponding to provided port number, + * if available return port object otherwise return NULL. + */ +struct hba_port * +mpt3sas_get_port_by_id(struct MPT3SAS_ADAPTER *ioc, + u8 port_id, u8 bypass_dirty_port_flag) +{ + struct hba_port *port, *port_next; + + /* + * When multipath_on_hba is disabled then + * search the hba_port entry using default + * port id i.e. 255 + */ + if (!ioc->multipath_on_hba) + port_id = MULTIPATH_DISABLED_PORT_ID; + + list_for_each_entry_safe(port, port_next, + &ioc->port_table_list, list) { + if (port->port_id != port_id) + continue; + if (bypass_dirty_port_flag) + return port; + if (port->flags & HBA_PORT_FLAG_DIRTY_PORT) + continue; + return port; + } + + /* + * Allocate hba_port object for default port id (i.e. 255) + * when multipath_on_hba is disabled for the HBA. + * And add this object to port_table_list. + */ + if (!ioc->multipath_on_hba) { + port = kzalloc(sizeof(struct hba_port), GFP_KERNEL); + if (!port) + return NULL; + + port->port_id = port_id; + ioc_info(ioc, + "hba_port entry: %p, port: %d is added to hba_port list\n", + port, port->port_id); + list_add_tail(&port->list, + &ioc->port_table_list); + return port; + } + return NULL; +} + +/** + * mpt3sas_get_vphy_by_phy - get virtual_phy object corresponding to phy number + * @ioc: per adapter object + * @port: hba_port object + * @phy: phy number + * + * Return virtual_phy object corresponding to phy number. + */ +struct virtual_phy * +mpt3sas_get_vphy_by_phy(struct MPT3SAS_ADAPTER *ioc, + struct hba_port *port, u32 phy) +{ + struct virtual_phy *vphy, *vphy_next; + + if (!port->vphys_mask) + return NULL; + + list_for_each_entry_safe(vphy, vphy_next, &port->vphys_list, list) { + if (vphy->phy_mask & (1 << phy)) + return vphy; + } + return NULL; +} + +/** * _scsih_is_boot_device - search for matching boot device. * @sas_address: sas address * @device_name: device name specified in INDENTIFY fram @@ -614,48 +704,105 @@ return ret; } + +/** + * __mpt3sas_get_sdev_by_rphy - sas device search + * @ioc: per adapter object + * @rphy: sas_rphy pointer + * + * Context: This function will acquire ioc->sas_device_lock and will release + * before returning the sas_device object. + * + * This searches for sas_device from rphy object + * then return sas_device object. + */ struct _sas_device * -__mpt3sas_get_sdev_by_addr(struct MPT3SAS_ADAPTER *ioc, - u64 sas_address) +__mpt3sas_get_sdev_by_rphy(struct MPT3SAS_ADAPTER *ioc, + struct sas_rphy *rphy) { struct _sas_device *sas_device; assert_spin_locked(&ioc->sas_device_lock); - list_for_each_entry(sas_device, &ioc->sas_device_list, list) - if (sas_device->sas_address == sas_address) - goto found_device; + list_for_each_entry(sas_device, &ioc->sas_device_list, list) { + if (sas_device->rphy != rphy) + continue; + sas_device_get(sas_device); + return sas_device; + } - list_for_each_entry(sas_device, &ioc->sas_device_init_list, list) - if (sas_device->sas_address == sas_address) - goto found_device; + sas_device = NULL; + list_for_each_entry(sas_device, &ioc->sas_device_init_list, list) { + if (sas_device->rphy != rphy) + continue; + sas_device_get(sas_device); + return sas_device; + } return NULL; +} -found_device: - sas_device_get(sas_device); - return sas_device; +/** + * mpt3sas_get_sdev_by_addr - get _sas_device object corresponding to provided + * sas address from sas_device_list list + * @ioc: per adapter object + * @port: port number + * + * Search for _sas_device object corresponding to provided sas address, + * if available return _sas_device object address otherwise return NULL. + */ +struct _sas_device * +__mpt3sas_get_sdev_by_addr(struct MPT3SAS_ADAPTER *ioc, + u64 sas_address, struct hba_port *port) +{ + struct _sas_device *sas_device; + + if (!port) + return NULL; + + assert_spin_locked(&ioc->sas_device_lock); + + list_for_each_entry(sas_device, &ioc->sas_device_list, list) { + if (sas_device->sas_address != sas_address) + continue; + if (sas_device->port != port) + continue; + sas_device_get(sas_device); + return sas_device; + } + + list_for_each_entry(sas_device, &ioc->sas_device_init_list, list) { + if (sas_device->sas_address != sas_address) + continue; + if (sas_device->port != port) + continue; + sas_device_get(sas_device); + return sas_device; + } + + return NULL; } /** * mpt3sas_get_sdev_by_addr - sas device search * @ioc: per adapter object * @sas_address: sas address + * @port: hba port entry * Context: Calling function should acquire ioc->sas_device_lock * - * This searches for sas_device based on sas_address, then return sas_device - * object. + * This searches for sas_device based on sas_address & port number, + * then return sas_device object. */ struct _sas_device * mpt3sas_get_sdev_by_addr(struct MPT3SAS_ADAPTER *ioc, - u64 sas_address) + u64 sas_address, struct hba_port *port) { struct _sas_device *sas_device; unsigned long flags; spin_lock_irqsave(&ioc->sas_device_lock, flags); sas_device = __mpt3sas_get_sdev_by_addr(ioc, - sas_address); + sas_address, port); spin_unlock_irqrestore(&ioc->sas_device_lock, flags); return sas_device; @@ -824,13 +971,17 @@ } /** - * mpt3sas_device_remove_by_sas_address - removing device object by sas address + * mpt3sas_device_remove_by_sas_address - removing device object by + * sas address & port number * @ioc: per adapter object * @sas_address: device sas_address + * @port: hba port entry + * + * Return nothing. */ void mpt3sas_device_remove_by_sas_address(struct MPT3SAS_ADAPTER *ioc, - u64 sas_address) + u64 sas_address, struct hba_port *port) { struct _sas_device *sas_device; unsigned long flags; @@ -839,7 +990,7 @@ return; spin_lock_irqsave(&ioc->sas_device_lock, flags); - sas_device = __mpt3sas_get_sdev_by_addr(ioc, sas_address); + sas_device = __mpt3sas_get_sdev_by_addr(ioc, sas_address, port); if (sas_device) { list_del_init(&sas_device->list); sas_device_put(sas_device); @@ -884,7 +1035,7 @@ } if (!mpt3sas_transport_port_add(ioc, sas_device->handle, - sas_device->sas_address_parent)) { + sas_device->sas_address_parent, sas_device->port)) { _scsih_sas_device_remove(ioc, sas_device); } else if (!sas_device->starget) { /* @@ -895,7 +1046,8 @@ if (!ioc->is_driver_loading) { mpt3sas_transport_port_remove(ioc, sas_device->sas_address, - sas_device->sas_address_parent); + sas_device->sas_address_parent, + sas_device->port); _scsih_sas_device_remove(ioc, sas_device); } } else @@ -1432,21 +1584,26 @@ * mpt3sas_scsih_expander_find_by_sas_address - expander device search * @ioc: per adapter object * @sas_address: sas address + * @port: hba port entry * Context: Calling function should acquire ioc->sas_node_lock. * - * This searches for expander device based on sas_address, then returns the - * sas_node object. + * This searches for expander device based on sas_address & port number, + * then returns the sas_node object. */ struct _sas_node * mpt3sas_scsih_expander_find_by_sas_address(struct MPT3SAS_ADAPTER *ioc, - u64 sas_address) + u64 sas_address, struct hba_port *port) { - struct _sas_node *sas_expander, *r; + struct _sas_node *sas_expander, *r = NULL; + + if (!port) + return r; - r = NULL; list_for_each_entry(sas_expander, &ioc->sas_expander_list, list) { if (sas_expander->sas_address != sas_address) continue; + if (sas_expander->port != port) + continue; r = sas_expander; goto out; } @@ -1684,6 +1841,7 @@ if (pcie_device) { sas_target_priv_data->handle = pcie_device->handle; sas_target_priv_data->sas_address = pcie_device->wwid; + sas_target_priv_data->port = NULL; sas_target_priv_data->pcie_dev = pcie_device; pcie_device->starget = starget; pcie_device->id = starget->id; @@ -1701,12 +1859,12 @@ /* sas/sata devices */ spin_lock_irqsave(&ioc->sas_device_lock, flags); rphy = dev_to_rphy(starget->dev.parent); - sas_device = __mpt3sas_get_sdev_by_addr(ioc, - rphy->identify.sas_address); + sas_device = __mpt3sas_get_sdev_by_rphy(ioc, rphy); if (sas_device) { sas_target_priv_data->handle = sas_device->handle; sas_target_priv_data->sas_address = sas_device->sas_address; + sas_target_priv_data->port = sas_device->port; sas_target_priv_data->sas_dev = sas_device; sas_device->starget = starget; sas_device->id = starget->id; @@ -1862,7 +2020,8 @@ } else if (!(sas_target_priv_data->flags & MPT_TARGET_FLAGS_VOLUME)) { spin_lock_irqsave(&ioc->sas_device_lock, flags); sas_device = __mpt3sas_get_sdev_by_addr(ioc, - sas_target_priv_data->sas_address); + sas_target_priv_data->sas_address, + sas_target_priv_data->port); if (sas_device && (sas_device->starget == NULL)) { sdev_printk(KERN_INFO, sdev, "%s : sas_device->starget set to starget @ %d\n", @@ -2467,7 +2626,8 @@ spin_lock_irqsave(&ioc->sas_device_lock, flags); sas_device = __mpt3sas_get_sdev_by_addr(ioc, - sas_device_priv_data->sas_target->sas_address); + sas_device_priv_data->sas_target->sas_address, + sas_device_priv_data->sas_target->port); if (!sas_device) { spin_unlock_irqrestore(&ioc->sas_device_lock, flags); dfailprintk(ioc, @@ -3443,11 +3603,13 @@ * _scsih_ublock_io_device - prepare device to be deleted * @ioc: per adapter object * @sas_address: sas address + * @port: hba port entry * * unblock then put device in offline state */ static void -_scsih_ublock_io_device(struct MPT3SAS_ADAPTER *ioc, u64 sas_address) +_scsih_ublock_io_device(struct MPT3SAS_ADAPTER *ioc, + u64 sas_address, struct hba_port *port) { struct MPT3SAS_DEVICE *sas_device_priv_data; struct scsi_device *sdev; @@ -3459,6 +3621,8 @@ if (sas_device_priv_data->sas_target->sas_address != sas_address) continue; + if (sas_device_priv_data->sas_target->port != port) + continue; if (sas_device_priv_data->block) _scsih_internal_device_unblock(sdev, sas_device_priv_data); @@ -3559,7 +3723,8 @@ SAS_END_DEVICE) { spin_lock_irqsave(&ioc->sas_device_lock, flags); sas_device = __mpt3sas_get_sdev_by_addr(ioc, - mpt3sas_port->remote_identify.sas_address); + mpt3sas_port->remote_identify.sas_address, + mpt3sas_port->hba_port); if (sas_device) { set_bit(sas_device->handle, ioc->blocking_handles); @@ -3578,7 +3743,8 @@ SAS_FANOUT_EXPANDER_DEVICE) { expander_sibling = mpt3sas_scsih_expander_find_by_sas_address( - ioc, mpt3sas_port->remote_identify.sas_address); + ioc, mpt3sas_port->remote_identify.sas_address, + mpt3sas_port->hba_port); _scsih_block_io_to_children_attached_to_ex(ioc, expander_sibling); } @@ -3667,6 +3833,7 @@ struct _tr_list *delayed_tr; u32 ioc_state; u8 tr_method = 0; + struct hba_port *port = NULL; if (ioc->pci_error_recovery) { dewtprintk(ioc, @@ -3695,6 +3862,7 @@ sas_target_priv_data = sas_device->starget->hostdata; sas_target_priv_data->deleted = 1; sas_address = sas_device->sas_address; + port = sas_device->port; } spin_unlock_irqrestore(&ioc->sas_device_lock, flags); if (!sas_device) { @@ -3742,7 +3910,7 @@ pcie_device->enclosure_level, pcie_device->connector_name)); } - _scsih_ublock_io_device(ioc, sas_address); + _scsih_ublock_io_device(ioc, sas_address, port); sas_target_priv_data->handle = MPT3SAS_INVALID_DEVICE_HANDLE; } @@ -5516,6 +5684,614 @@ } /** + * _scsih_update_vphys_after_reset - update the Port's + * vphys_list after reset + * @ioc: per adapter object + * + * Returns nothing. + */ +static void +_scsih_update_vphys_after_reset(struct MPT3SAS_ADAPTER *ioc) +{ + u16 sz, ioc_status; + int i; + Mpi2ConfigReply_t mpi_reply; + Mpi2SasIOUnitPage0_t *sas_iounit_pg0 = NULL; + u16 attached_handle; + u64 attached_sas_addr; + u8 found = 0, port_id; + Mpi2SasPhyPage0_t phy_pg0; + struct hba_port *port, *port_next, *mport; + struct virtual_phy *vphy, *vphy_next; + struct _sas_device *sas_device; + + /* + * Mark all the vphys objects as dirty. + */ + list_for_each_entry_safe(port, port_next, + &ioc->port_table_list, list) { + if (!port->vphys_mask) + continue; + list_for_each_entry_safe(vphy, vphy_next, + &port->vphys_list, list) { + vphy->flags |= MPT_VPHY_FLAG_DIRTY_PHY; + } + } + + /* + * Read SASIOUnitPage0 to get each HBA Phy's data. + */ + sz = offsetof(Mpi2SasIOUnitPage0_t, PhyData) + + (ioc->sas_hba.num_phys * sizeof(Mpi2SasIOUnit0PhyData_t)); + sas_iounit_pg0 = kzalloc(sz, GFP_KERNEL); + if (!sas_iounit_pg0) { + ioc_err(ioc, "failure at %s:%d/%s()!\n", + __FILE__, __LINE__, __func__); + return; + } + if ((mpt3sas_config_get_sas_iounit_pg0(ioc, &mpi_reply, + sas_iounit_pg0, sz)) != 0) + goto out; + ioc_status = le16_to_cpu(mpi_reply.IOCStatus) & MPI2_IOCSTATUS_MASK; + if (ioc_status != MPI2_IOCSTATUS_SUCCESS) + goto out; + /* + * Loop over each HBA Phy. + */ + for (i = 0; i < ioc->sas_hba.num_phys; i++) { + /* + * Check whether Phy's Negotiation Link Rate is > 1.5G or not. + */ + if ((sas_iounit_pg0->PhyData[i].NegotiatedLinkRate >> 4) < + MPI2_SAS_NEG_LINK_RATE_1_5) + continue; + /* + * Check whether Phy is connected to SEP device or not, + * if it is SEP device then read the Phy's SASPHYPage0 data to + * determine whether Phy is a virtual Phy or not. if it is + * virtual phy then it is conformed that the attached remote + * device is a HBA's vSES device. + */ + if (!(le32_to_cpu( + sas_iounit_pg0->PhyData[i].ControllerPhyDeviceInfo) & + MPI2_SAS_DEVICE_INFO_SEP)) + continue; + + if ((mpt3sas_config_get_phy_pg0(ioc, &mpi_reply, &phy_pg0, + i))) { + ioc_err(ioc, "failure at %s:%d/%s()!\n", + __FILE__, __LINE__, __func__); + continue; + } + + if (!(le32_to_cpu(phy_pg0.PhyInfo) & + MPI2_SAS_PHYINFO_VIRTUAL_PHY)) + continue; + /* + * Get the vSES device's SAS Address. + */ + attached_handle = le16_to_cpu( + sas_iounit_pg0->PhyData[i].AttachedDevHandle); + if (_scsih_get_sas_address(ioc, attached_handle, + &attached_sas_addr) != 0) { + ioc_err(ioc, "failure at %s:%d/%s()!\n", + __FILE__, __LINE__, __func__); + continue; + } + + found = 0; + port = port_next = NULL; + /* + * Loop over each virtual_phy object from + * each port's vphys_list. + */ + list_for_each_entry_safe(port, + port_next, &ioc->port_table_list, list) { + if (!port->vphys_mask) + continue; + list_for_each_entry_safe(vphy, vphy_next, + &port->vphys_list, list) { + /* + * Continue with next virtual_phy object + * if the object is not marked as dirty. + */ + if (!(vphy->flags & MPT_VPHY_FLAG_DIRTY_PHY)) + continue; + + /* + * Continue with next virtual_phy object + * if the object's SAS Address is not equals + * to current Phy's vSES device SAS Address. + */ + if (vphy->sas_address != attached_sas_addr) + continue; + /* + * Enable current Phy number bit in object's + * phy_mask field. + */ + if (!(vphy->phy_mask & (1 << i))) + vphy->phy_mask = (1 << i); + /* + * Get hba_port object from hba_port table + * corresponding to current phy's Port ID. + * if there is no hba_port object corresponding + * to Phy's Port ID then create a new hba_port + * object & add to hba_port table. + */ + port_id = sas_iounit_pg0->PhyData[i].Port; + mport = mpt3sas_get_port_by_id(ioc, port_id, 1); + if (!mport) { + mport = kzalloc( + sizeof(struct hba_port), GFP_KERNEL); + if (!mport) + break; + mport->port_id = port_id; + ioc_info(ioc, + "%s: hba_port entry: %p, port: %d is added to hba_port list\n", + __func__, mport, mport->port_id); + list_add_tail(&mport->list, + &ioc->port_table_list); + } + /* + * If mport & port pointers are not pointing to + * same hba_port object then it means that vSES + * device's Port ID got changed after reset and + * hence move current virtual_phy object from + * port's vphys_list to mport's vphys_list. + */ + if (port != mport) { + if (!mport->vphys_mask) + INIT_LIST_HEAD( + &mport->vphys_list); + mport->vphys_mask |= (1 << i); + port->vphys_mask &= ~(1 << i); + list_move(&vphy->list, + &mport->vphys_list); + sas_device = mpt3sas_get_sdev_by_addr( + ioc, attached_sas_addr, port); + if (sas_device) + sas_device->port = mport; + } + /* + * Earlier while updating the hba_port table, + * it is determined that there is no other + * direct attached device with mport's Port ID, + * Hence mport was marked as dirty. Only vSES + * device has this Port ID, so unmark the mport + * as dirt. + */ + if (mport->flags & HBA_PORT_FLAG_DIRTY_PORT) { + mport->sas_address = 0; + mport->phy_mask = 0; + mport->flags &= + ~HBA_PORT_FLAG_DIRTY_PORT; + } + /* + * Unmark current virtual_phy object as dirty. + */ + vphy->flags &= ~MPT_VPHY_FLAG_DIRTY_PHY; + found = 1; + break; + } + if (found) + break; + } + } +out: + kfree(sas_iounit_pg0); +} + +/** + * _scsih_get_port_table_after_reset - Construct temporary port table + * @ioc: per adapter object + * @port_table: address where port table needs to be constructed + * + * return number of HBA port entries available after reset. + */ +static int +_scsih_get_port_table_after_reset(struct MPT3SAS_ADAPTER *ioc, + struct hba_port *port_table) +{ + u16 sz, ioc_status; + int i, j; + Mpi2ConfigReply_t mpi_reply; + Mpi2SasIOUnitPage0_t *sas_iounit_pg0 = NULL; + u16 attached_handle; + u64 attached_sas_addr; + u8 found = 0, port_count = 0, port_id; + + sz = offsetof(Mpi2SasIOUnitPage0_t, PhyData) + (ioc->sas_hba.num_phys + * sizeof(Mpi2SasIOUnit0PhyData_t)); + sas_iounit_pg0 = kzalloc(sz, GFP_KERNEL); + if (!sas_iounit_pg0) { + ioc_err(ioc, "failure at %s:%d/%s()!\n", + __FILE__, __LINE__, __func__); + return port_count; + } + + if ((mpt3sas_config_get_sas_iounit_pg0(ioc, &mpi_reply, + sas_iounit_pg0, sz)) != 0) + goto out; + ioc_status = le16_to_cpu(mpi_reply.IOCStatus) & MPI2_IOCSTATUS_MASK; + if (ioc_status != MPI2_IOCSTATUS_SUCCESS) + goto out; + for (i = 0; i < ioc->sas_hba.num_phys; i++) { + found = 0; + if ((sas_iounit_pg0->PhyData[i].NegotiatedLinkRate >> 4) < + MPI2_SAS_NEG_LINK_RATE_1_5) + continue; + attached_handle = + le16_to_cpu(sas_iounit_pg0->PhyData[i].AttachedDevHandle); + if (_scsih_get_sas_address( + ioc, attached_handle, &attached_sas_addr) != 0) { + ioc_err(ioc, "failure at %s:%d/%s()!\n", + __FILE__, __LINE__, __func__); + continue; + } + + for (j = 0; j < port_count; j++) { + port_id = sas_iounit_pg0->PhyData[i].Port; + if (port_table[j].port_id == port_id && + port_table[j].sas_address == attached_sas_addr) { + port_table[j].phy_mask |= (1 << i); + found = 1; + break; + } + } + + if (found) + continue; + + port_id = sas_iounit_pg0->PhyData[i].Port; + port_table[port_count].port_id = port_id; + port_table[port_count].phy_mask = (1 << i); + port_table[port_count].sas_address = attached_sas_addr; + port_count++; + } +out: + kfree(sas_iounit_pg0); + return port_count; +} + +enum hba_port_matched_codes { + NOT_MATCHED = 0, + MATCHED_WITH_ADDR_AND_PHYMASK, + MATCHED_WITH_ADDR_SUBPHYMASK_AND_PORT, + MATCHED_WITH_ADDR_AND_SUBPHYMASK, + MATCHED_WITH_ADDR, +}; + +/** + * _scsih_look_and_get_matched_port_entry - Get matched hba port entry + * from HBA port table + * @ioc: per adapter object + * @port_entry - hba port entry from temporary port table which needs to be + * searched for matched entry in the HBA port table + * @matched_port_entry - save matched hba port entry here + * @count - count of matched entries + * + * return type of matched entry found. + */ +static enum hba_port_matched_codes +_scsih_look_and_get_matched_port_entry(struct MPT3SAS_ADAPTER *ioc, + struct hba_port *port_entry, + struct hba_port **matched_port_entry, int *count) +{ + struct hba_port *port_table_entry, *matched_port = NULL; + enum hba_port_matched_codes matched_code = NOT_MATCHED; + int lcount = 0; + *matched_port_entry = NULL; + + list_for_each_entry(port_table_entry, &ioc->port_table_list, list) { + if (!(port_table_entry->flags & HBA_PORT_FLAG_DIRTY_PORT)) + continue; + + if ((port_table_entry->sas_address == port_entry->sas_address) + && (port_table_entry->phy_mask == port_entry->phy_mask)) { + matched_code = MATCHED_WITH_ADDR_AND_PHYMASK; + matched_port = port_table_entry; + break; + } + + if ((port_table_entry->sas_address == port_entry->sas_address) + && (port_table_entry->phy_mask & port_entry->phy_mask) + && (port_table_entry->port_id == port_entry->port_id)) { + matched_code = MATCHED_WITH_ADDR_SUBPHYMASK_AND_PORT; + matched_port = port_table_entry; + continue; + } + + if ((port_table_entry->sas_address == port_entry->sas_address) + && (port_table_entry->phy_mask & port_entry->phy_mask)) { + if (matched_code == + MATCHED_WITH_ADDR_SUBPHYMASK_AND_PORT) + continue; + matched_code = MATCHED_WITH_ADDR_AND_SUBPHYMASK; + matched_port = port_table_entry; + continue; + } + + if (port_table_entry->sas_address == port_entry->sas_address) { + if (matched_code == + MATCHED_WITH_ADDR_SUBPHYMASK_AND_PORT) + continue; + if (matched_code == MATCHED_WITH_ADDR_AND_SUBPHYMASK) + continue; + matched_code = MATCHED_WITH_ADDR; + matched_port = port_table_entry; + lcount++; + } + } + + *matched_port_entry = matched_port; + if (matched_code == MATCHED_WITH_ADDR) + *count = lcount; + return matched_code; +} + +/** + * _scsih_del_phy_part_of_anther_port - remove phy if it + * is a part of anther port + *@ioc: per adapter object + *@port_table: port table after reset + *@index: hba port entry index + *@port_count: number of ports available after host reset + *@offset: HBA phy bit offset + * + */ +static void +_scsih_del_phy_part_of_anther_port(struct MPT3SAS_ADAPTER *ioc, + struct hba_port *port_table, + int index, u8 port_count, int offset) +{ + struct _sas_node *sas_node = &ioc->sas_hba; + u32 i, found = 0; + + for (i = 0; i < port_count; i++) { + if (i == index) + continue; + + if (port_table[i].phy_mask & (1 << offset)) { + mpt3sas_transport_del_phy_from_an_existing_port( + ioc, sas_node, &sas_node->phy[offset]); + found = 1; + break; + } + } + if (!found) + port_table[index].phy_mask |= (1 << offset); +} + +/** + * _scsih_add_or_del_phys_from_existing_port - add/remove phy to/from + * right port + *@ioc: per adapter object + *@hba_port_entry: hba port table entry + *@port_table: temporary port table + *@index: hba port entry index + *@port_count: number of ports available after host reset + * + */ +static void +_scsih_add_or_del_phys_from_existing_port(struct MPT3SAS_ADAPTER *ioc, + struct hba_port *hba_port_entry, struct hba_port *port_table, + int index, int port_count) +{ + u32 phy_mask, offset = 0; + struct _sas_node *sas_node = &ioc->sas_hba; + + phy_mask = hba_port_entry->phy_mask ^ port_table[index].phy_mask; + + for (offset = 0; offset < ioc->sas_hba.num_phys; offset++) { + if (phy_mask & (1 << offset)) { + if (!(port_table[index].phy_mask & (1 << offset))) { + _scsih_del_phy_part_of_anther_port( + ioc, port_table, index, port_count, + offset); + continue; + } + if (sas_node->phy[offset].phy_belongs_to_port) + mpt3sas_transport_del_phy_from_an_existing_port( + ioc, sas_node, &sas_node->phy[offset]); + mpt3sas_transport_add_phy_to_an_existing_port( + ioc, sas_node, &sas_node->phy[offset], + hba_port_entry->sas_address, + hba_port_entry); + } + } +} + +/** + * _scsih_del_dirty_vphy - delete virtual_phy objects marked as dirty. + * @ioc: per adapter object + * + * Returns nothing. + */ +static void +_scsih_del_dirty_vphy(struct MPT3SAS_ADAPTER *ioc) +{ + struct hba_port *port, *port_next; + struct virtual_phy *vphy, *vphy_next; + + list_for_each_entry_safe(port, port_next, + &ioc->port_table_list, list) { + if (!port->vphys_mask) + continue; + list_for_each_entry_safe(vphy, vphy_next, + &port->vphys_list, list) { + if (vphy->flags & MPT_VPHY_FLAG_DIRTY_PHY) { + drsprintk(ioc, ioc_info(ioc, + "Deleting vphy %p entry from port id: %d\t, Phy_mask 0x%08x\n", + vphy, port->port_id, + vphy->phy_mask)); + port->vphys_mask &= ~vphy->phy_mask; + list_del(&vphy->list); + kfree(vphy); + } + } + if (!port->vphys_mask && !port->sas_address) + port->flags |= HBA_PORT_FLAG_DIRTY_PORT; + } +} + +/** + * _scsih_del_dirty_port_entries - delete dirty port entries from port list + * after host reset + *@ioc: per adapter object + * + */ +static void +_scsih_del_dirty_port_entries(struct MPT3SAS_ADAPTER *ioc) +{ + struct hba_port *port, *port_next; + + list_for_each_entry_safe(port, port_next, + &ioc->port_table_list, list) { + if (!(port->flags & HBA_PORT_FLAG_DIRTY_PORT) || + port->flags & HBA_PORT_FLAG_NEW_PORT) + continue; + + drsprintk(ioc, ioc_info(ioc, + "Deleting port table entry %p having Port: %d\t Phy_mask 0x%08x\n", + port, port->port_id, port->phy_mask)); + list_del(&port->list); + kfree(port); + } +} + +/** + * _scsih_sas_port_refresh - Update HBA port table after host reset + * @ioc: per adapter object + */ +static void +_scsih_sas_port_refresh(struct MPT3SAS_ADAPTER *ioc) +{ + u32 port_count = 0; + struct hba_port *port_table; + struct hba_port *port_table_entry; + struct hba_port *port_entry = NULL; + int i, j, count = 0, lcount = 0; + int ret; + u64 sas_addr; + + drsprintk(ioc, ioc_info(ioc, + "updating ports for sas_host(0x%016llx)\n", + (unsigned long long)ioc->sas_hba.sas_address)); + + port_table = kcalloc(ioc->sas_hba.num_phys, + sizeof(struct hba_port), GFP_KERNEL); + if (!port_table) + return; + + port_count = _scsih_get_port_table_after_reset(ioc, port_table); + if (!port_count) + return; + + drsprintk(ioc, ioc_info(ioc, "New Port table\n")); + for (j = 0; j < port_count; j++) + drsprintk(ioc, ioc_info(ioc, + "Port: %d\t Phy_mask 0x%08x\t sas_addr(0x%016llx)\n", + port_table[j].port_id, + port_table[j].phy_mask, port_table[j].sas_address)); + + list_for_each_entry(port_table_entry, &ioc->port_table_list, list) + port_table_entry->flags |= HBA_PORT_FLAG_DIRTY_PORT; + + drsprintk(ioc, ioc_info(ioc, "Old Port table\n")); + port_table_entry = NULL; + list_for_each_entry(port_table_entry, &ioc->port_table_list, list) { + drsprintk(ioc, ioc_info(ioc, + "Port: %d\t Phy_mask 0x%08x\t sas_addr(0x%016llx)\n", + port_table_entry->port_id, + port_table_entry->phy_mask, + port_table_entry->sas_address)); + } + + for (j = 0; j < port_count; j++) { + ret = _scsih_look_and_get_matched_port_entry(ioc, + &port_table[j], &port_entry, &count); + if (!port_entry) { + drsprintk(ioc, ioc_info(ioc, + "No Matched entry for sas_addr(0x%16llx), Port:%d\n", + port_table[j].sas_address, + port_table[j].port_id)); + continue; + } + + switch (ret) { + case MATCHED_WITH_ADDR_SUBPHYMASK_AND_PORT: + case MATCHED_WITH_ADDR_AND_SUBPHYMASK: + _scsih_add_or_del_phys_from_existing_port(ioc, + port_entry, port_table, j, port_count); + break; + case MATCHED_WITH_ADDR: + sas_addr = port_table[j].sas_address; + for (i = 0; i < port_count; i++) { + if (port_table[i].sas_address == sas_addr) + lcount++; + } + + if (count > 1 || lcount > 1) + port_entry = NULL; + else + _scsih_add_or_del_phys_from_existing_port(ioc, + port_entry, port_table, j, port_count); + } + + if (!port_entry) + continue; + + if (port_entry->port_id != port_table[j].port_id) + port_entry->port_id = port_table[j].port_id; + port_entry->flags &= ~HBA_PORT_FLAG_DIRTY_PORT; + port_entry->phy_mask = port_table[j].phy_mask; + } + + port_table_entry = NULL; +} + +/** + * _scsih_alloc_vphy - allocate virtual_phy object + * @ioc: per adapter object + * @port_id: Port ID number + * @phy_num: HBA Phy number + * + * Returns allocated virtual_phy object. + */ +static struct virtual_phy * +_scsih_alloc_vphy(struct MPT3SAS_ADAPTER *ioc, u8 port_id, u8 phy_num) +{ + struct virtual_phy *vphy; + struct hba_port *port; + + port = mpt3sas_get_port_by_id(ioc, port_id, 0); + if (!port) + return NULL; + + vphy = mpt3sas_get_vphy_by_phy(ioc, port, phy_num); + if (!vphy) { + vphy = kzalloc(sizeof(struct virtual_phy), GFP_KERNEL); + if (!vphy) + return NULL; + + /* + * Enable bit corresponding to HBA phy number on its + * parent hba_port object's vphys_mask field. + */ + port->vphys_mask |= (1 << phy_num); + vphy->phy_mask |= (1 << phy_num); + + INIT_LIST_HEAD(&port->vphys_list); + list_add_tail(&vphy->list, &port->vphys_list); + + ioc_info(ioc, + "vphy entry: %p, port id: %d, phy:%d is added to port's vphys_list\n", + vphy, port->port_id, phy_num); + } + return vphy; +} + +/** * _scsih_sas_host_refresh - refreshing sas host object contents * @ioc: per adapter object * Context: user @@ -5533,7 +6309,9 @@ Mpi2ConfigReply_t mpi_reply; Mpi2SasIOUnitPage0_t *sas_iounit_pg0 = NULL; u16 attached_handle; - u8 link_rate; + u8 link_rate, port_id; + struct hba_port *port; + Mpi2SasPhyPage0_t phy_pg0; dtmprintk(ioc, ioc_info(ioc, "updating handles for sas_host(0x%016llx)\n", @@ -5557,15 +6335,57 @@ for (i = 0; i < ioc->sas_hba.num_phys ; i++) { link_rate = sas_iounit_pg0->PhyData[i].NegotiatedLinkRate >> 4; if (i == 0) - ioc->sas_hba.handle = le16_to_cpu(sas_iounit_pg0-> - PhyData[0].ControllerDevHandle); + ioc->sas_hba.handle = le16_to_cpu( + sas_iounit_pg0->PhyData[0].ControllerDevHandle); + port_id = sas_iounit_pg0->PhyData[i].Port; + if (!(mpt3sas_get_port_by_id(ioc, port_id, 0))) { + port = kzalloc(sizeof(struct hba_port), GFP_KERNEL); + if (!port) + goto out; + + port->port_id = port_id; + ioc_info(ioc, + "hba_port entry: %p, port: %d is added to hba_port list\n", + port, port->port_id); + if (ioc->shost_recovery) + port->flags = HBA_PORT_FLAG_NEW_PORT; + list_add_tail(&port->list, &ioc->port_table_list); + } + /* + * Check whether current Phy belongs to HBA vSES device or not. + */ + if (le32_to_cpu(sas_iounit_pg0->PhyData[i].ControllerPhyDeviceInfo) & + MPI2_SAS_DEVICE_INFO_SEP && + (link_rate >= MPI2_SAS_NEG_LINK_RATE_1_5)) { + if ((mpt3sas_config_get_phy_pg0(ioc, &mpi_reply, + &phy_pg0, i))) { + ioc_err(ioc, + "failure at %s:%d/%s()!\n", + __FILE__, __LINE__, __func__); + goto out; + } + if (!(le32_to_cpu(phy_pg0.PhyInfo) & + MPI2_SAS_PHYINFO_VIRTUAL_PHY)) + continue; + /* + * Allocate a virtual_phy object for vSES device, if + * this vSES device is hot added. + */ + if (!_scsih_alloc_vphy(ioc, port_id, i)) + goto out; + ioc->sas_hba.phy[i].hba_vphy = 1; + } + ioc->sas_hba.phy[i].handle = ioc->sas_hba.handle; attached_handle = le16_to_cpu(sas_iounit_pg0->PhyData[i]. AttachedDevHandle); if (attached_handle && link_rate < MPI2_SAS_NEG_LINK_RATE_1_5) link_rate = MPI2_SAS_NEG_LINK_RATE_1_5; + ioc->sas_hba.phy[i].port = + mpt3sas_get_port_by_id(ioc, port_id, 0); mpt3sas_transport_update_links(ioc, ioc->sas_hba.sas_address, - attached_handle, i, link_rate); + attached_handle, i, link_rate, + ioc->sas_hba.phy[i].port); } out: kfree(sas_iounit_pg0); @@ -5590,7 +6410,8 @@ u16 ioc_status; u16 sz; u8 device_missing_delay; - u8 num_phys; + u8 num_phys, port_id; + struct hba_port *port; mpt3sas_config_get_number_hba_phys(ioc, &num_phys); if (!num_phys) { @@ -5683,8 +6504,40 @@ if (i == 0) ioc->sas_hba.handle = le16_to_cpu(sas_iounit_pg0-> PhyData[0].ControllerDevHandle); + + port_id = sas_iounit_pg0->PhyData[i].Port; + if (!(mpt3sas_get_port_by_id(ioc, port_id, 0))) { + port = kzalloc(sizeof(struct hba_port), GFP_KERNEL); + if (!port) + goto out; + + port->port_id = port_id; + ioc_info(ioc, + "hba_port entry: %p, port: %d is added to hba_port list\n", + port, port->port_id); + list_add_tail(&port->list, + &ioc->port_table_list); + } + + /* + * Check whether current Phy belongs to HBA vSES device or not. + */ + if ((le32_to_cpu(phy_pg0.PhyInfo) & + MPI2_SAS_PHYINFO_VIRTUAL_PHY) && + (phy_pg0.NegotiatedLinkRate >> 4) >= + MPI2_SAS_NEG_LINK_RATE_1_5) { + /* + * Allocate a virtual_phy object for vSES device. + */ + if (!_scsih_alloc_vphy(ioc, port_id, i)) + goto out; + ioc->sas_hba.phy[i].hba_vphy = 1; + } + ioc->sas_hba.phy[i].handle = ioc->sas_hba.handle; ioc->sas_hba.phy[i].phy_id = i; + ioc->sas_hba.phy[i].port = + mpt3sas_get_port_by_id(ioc, port_id, 0); mpt3sas_transport_add_host_phy(ioc, &ioc->sas_hba.phy[i], phy_pg0, ioc->sas_hba.parent_dev); } @@ -5738,6 +6591,7 @@ int i; unsigned long flags; struct _sas_port *mpt3sas_port = NULL; + u8 port_id; int rc = 0; @@ -5770,10 +6624,13 @@ __FILE__, __LINE__, __func__); return -1; } + + port_id = expander_pg0.PhysicalPort; if (sas_address_parent != ioc->sas_hba.sas_address) { spin_lock_irqsave(&ioc->sas_node_lock, flags); sas_expander = mpt3sas_scsih_expander_find_by_sas_address(ioc, - sas_address_parent); + sas_address_parent, + mpt3sas_get_port_by_id(ioc, port_id, 0)); spin_unlock_irqrestore(&ioc->sas_node_lock, flags); if (!sas_expander) { rc = _scsih_expander_add(ioc, parent_handle); @@ -5785,7 +6642,7 @@ spin_lock_irqsave(&ioc->sas_node_lock, flags); sas_address = le64_to_cpu(expander_pg0.SASAddress); sas_expander = mpt3sas_scsih_expander_find_by_sas_address(ioc, - sas_address); + sas_address, mpt3sas_get_port_by_id(ioc, port_id, 0)); spin_unlock_irqrestore(&ioc->sas_node_lock, flags); if (sas_expander) @@ -5803,6 +6660,13 @@ sas_expander->num_phys = expander_pg0.NumPhys; sas_expander->sas_address_parent = sas_address_parent; sas_expander->sas_address = sas_address; + sas_expander->port = mpt3sas_get_port_by_id(ioc, port_id, 0); + if (!sas_expander->port) { + ioc_err(ioc, "failure at %s:%d/%s()!\n", + __FILE__, __LINE__, __func__); + rc = -1; + goto out_fail; + } ioc_info(ioc, "expander_add: handle(0x%04x), parent(0x%04x), sas_addr(0x%016llx), phys(%d)\n", handle, parent_handle, @@ -5821,7 +6685,7 @@ INIT_LIST_HEAD(&sas_expander->sas_port_list); mpt3sas_port = mpt3sas_transport_port_add(ioc, handle, - sas_address_parent); + sas_address_parent, sas_expander->port); if (!mpt3sas_port) { ioc_err(ioc, "failure at %s:%d/%s()!\n", __FILE__, __LINE__, __func__); @@ -5829,6 +6693,7 @@ goto out_fail; } sas_expander->parent_dev = &mpt3sas_port->rphy->dev; + sas_expander->rphy = mpt3sas_port->rphy; for (i = 0 ; i < sas_expander->num_phys ; i++) { if ((mpt3sas_config_get_expander_pg1(ioc, &mpi_reply, @@ -5840,6 +6705,8 @@ } sas_expander->phy[i].handle = handle; sas_expander->phy[i].phy_id = i; + sas_expander->phy[i].port = + mpt3sas_get_port_by_id(ioc, port_id, 0); if ((mpt3sas_transport_add_expander_phy(ioc, &sas_expander->phy[i], expander_pg1, @@ -5867,7 +6734,7 @@ if (mpt3sas_port) mpt3sas_transport_port_remove(ioc, sas_expander->sas_address, - sas_address_parent); + sas_address_parent, sas_expander->port); kfree(sas_expander); return rc; } @@ -5878,7 +6745,8 @@ * @sas_address: expander sas_address */ void -mpt3sas_expander_remove(struct MPT3SAS_ADAPTER *ioc, u64 sas_address) +mpt3sas_expander_remove(struct MPT3SAS_ADAPTER *ioc, u64 sas_address, + struct hba_port *port) { struct _sas_node *sas_expander; unsigned long flags; @@ -5886,9 +6754,12 @@ if (ioc->shost_recovery) return; + if (!port) + return; + spin_lock_irqsave(&ioc->sas_node_lock, flags); sas_expander = mpt3sas_scsih_expander_find_by_sas_address(ioc, - sas_address); + sas_address, port); spin_unlock_irqrestore(&ioc->sas_node_lock, flags); if (sas_expander) _scsih_expander_node_remove(ioc, sas_expander); @@ -6011,7 +6882,7 @@ { Mpi2ConfigReply_t mpi_reply; Mpi2SasDevicePage0_t sas_device_pg0; - struct _sas_device *sas_device; + struct _sas_device *sas_device = NULL; struct _enclosure_node *enclosure_dev = NULL; u32 ioc_status; unsigned long flags; @@ -6019,6 +6890,7 @@ struct scsi_target *starget; struct MPT3SAS_TARGET *sas_target_priv_data; u32 device_info; + struct hba_port *port; if ((mpt3sas_config_get_sas_device_pg0(ioc, &mpi_reply, &sas_device_pg0, MPI2_SAS_DEVICE_PGAD_FORM_HANDLE, handle))) @@ -6041,8 +6913,11 @@ spin_lock_irqsave(&ioc->sas_device_lock, flags); sas_address = le64_to_cpu(sas_device_pg0.SASAddress); + port = mpt3sas_get_port_by_id(ioc, sas_device_pg0.PhysicalPort, 0); + if (!port) + goto out_unlock; sas_device = __mpt3sas_get_sdev_by_addr(ioc, - sas_address); + sas_address, port); if (!sas_device) goto out_unlock; @@ -6098,7 +6973,7 @@ goto out_unlock; spin_unlock_irqrestore(&ioc->sas_device_lock, flags); - _scsih_ublock_io_device(ioc, sas_address); + _scsih_ublock_io_device(ioc, sas_address, port); if (sas_device) sas_device_put(sas_device); @@ -6132,6 +7007,7 @@ u32 ioc_status; u64 sas_address; u32 device_info; + u8 port_id; if ((mpt3sas_config_get_sas_device_pg0(ioc, &mpi_reply, &sas_device_pg0, MPI2_SAS_DEVICE_PGAD_FORM_HANDLE, handle))) { @@ -6168,8 +7044,9 @@ sas_device_pg0.AccessStatus)) return -1; + port_id = sas_device_pg0.PhysicalPort; sas_device = mpt3sas_get_sdev_by_addr(ioc, - sas_address); + sas_address, mpt3sas_get_port_by_id(ioc, port_id, 0)); if (sas_device) { clear_bit(handle, ioc->pend_os_device_add); sas_device_put(sas_device); @@ -6210,6 +7087,12 @@ sas_device->phy = sas_device_pg0.PhyNum; sas_device->fast_path = (le16_to_cpu(sas_device_pg0.Flags) & MPI25_SAS_DEVICE0_FLAGS_FAST_PATH_CAPABLE) ? 1 : 0; + sas_device->port = mpt3sas_get_port_by_id(ioc, port_id, 0); + if (!sas_device->port) { + ioc_err(ioc, "failure at %s:%d/%s()!\n", + __FILE__, __LINE__, __func__); + goto out; + } if (le16_to_cpu(sas_device_pg0.Flags) & MPI2_SAS_DEVICE0_FLAGS_ENCL_LEVEL_VALID) { @@ -6243,6 +7126,7 @@ else _scsih_sas_device_add(ioc, sas_device); +out: sas_device_put(sas_device); return 0; } @@ -6275,7 +7159,8 @@ if (sas_device->starget && sas_device->starget->hostdata) { sas_target_priv_data = sas_device->starget->hostdata; sas_target_priv_data->deleted = 1; - _scsih_ublock_io_device(ioc, sas_device->sas_address); + _scsih_ublock_io_device(ioc, sas_device->sas_address, + sas_device->port); sas_target_priv_data->handle = MPT3SAS_INVALID_DEVICE_HANDLE; } @@ -6283,7 +7168,8 @@ if (!ioc->hide_drives) mpt3sas_transport_port_remove(ioc, sas_device->sas_address, - sas_device->sas_address_parent); + sas_device->sas_address_parent, + sas_device->port); ioc_info(ioc, "removing handle(0x%04x), sas_addr(0x%016llx)\n", sas_device->handle, (u64)sas_device->sas_address); @@ -6394,6 +7280,7 @@ u64 sas_address; unsigned long flags; u8 link_rate, prev_link_rate; + struct hba_port *port; Mpi2EventDataSasTopologyChangeList_t *event_data = (Mpi2EventDataSasTopologyChangeList_t *) fw_event->event_data; @@ -6415,6 +7302,7 @@ } parent_handle = le16_to_cpu(event_data->ExpanderDevHandle); + port = mpt3sas_get_port_by_id(ioc, event_data->PhysicalPort, 0); /* handle expander add */ if (event_data->ExpStatus == MPI2_EVENT_SAS_TOPO_ES_ADDED) @@ -6427,6 +7315,7 @@ if (sas_expander) { sas_address = sas_expander->sas_address; max_phys = sas_expander->num_phys; + port = sas_expander->port; } else if (parent_handle < ioc->sas_hba.num_phys) { sas_address = ioc->sas_hba.sas_address; max_phys = ioc->sas_hba.num_phys; @@ -6469,7 +7358,7 @@ break; mpt3sas_transport_update_links(ioc, sas_address, - handle, phy_number, link_rate); + handle, phy_number, link_rate, port); if (link_rate < MPI2_SAS_NEG_LINK_RATE_1_5) break; @@ -6488,7 +7377,7 @@ break; mpt3sas_transport_update_links(ioc, sas_address, - handle, phy_number, link_rate); + handle, phy_number, link_rate, port); _scsih_add_device(ioc, handle, phy_number, 0); @@ -6503,7 +7392,7 @@ /* handle expander removal */ if (event_data->ExpStatus == MPI2_EVENT_SAS_TOPO_ES_NOT_RESPONDING && sas_expander) - mpt3sas_expander_remove(ioc, sas_address); + mpt3sas_expander_remove(ioc, sas_address, port); return 0; } @@ -6604,7 +7493,8 @@ spin_lock_irqsave(&ioc->sas_device_lock, flags); sas_address = le64_to_cpu(event_data->SASAddress); sas_device = __mpt3sas_get_sdev_by_addr(ioc, - sas_address); + sas_address, + mpt3sas_get_port_by_id(ioc, event_data->PhysicalPort, 0)); if (!sas_device || !sas_device->starget) goto out; @@ -6753,7 +7643,7 @@ if (pcie_device->starget && pcie_device->starget->hostdata) { sas_target_priv_data = pcie_device->starget->hostdata; sas_target_priv_data->deleted = 1; - _scsih_ublock_io_device(ioc, pcie_device->wwid); + _scsih_ublock_io_device(ioc, pcie_device->wwid, NULL); sas_target_priv_data->handle = MPT3SAS_INVALID_DEVICE_HANDLE; } @@ -6875,7 +7765,7 @@ spin_unlock_irqrestore(&ioc->pcie_device_lock, flags); pcie_device_put(pcie_device); - _scsih_ublock_io_device(ioc, wwid); + _scsih_ublock_io_device(ioc, wwid, NULL); return; } @@ -8044,7 +8934,9 @@ parent_handle = le16_to_cpu(sas_device_pg0.ParentDevHandle); if (!_scsih_get_sas_address(ioc, parent_handle, &sas_address)) mpt3sas_transport_update_links(ioc, sas_address, handle, - sas_device_pg0.PhyNum, MPI2_SAS_NEG_LINK_RATE_1_5); + sas_device_pg0.PhyNum, MPI2_SAS_NEG_LINK_RATE_1_5, + mpt3sas_get_port_by_id(ioc, + sas_device_pg0.PhysicalPort, 0)); _scsih_ir_fastpath(ioc, handle, element->PhysDiskNum); _scsih_add_device(ioc, handle, 0, 1); @@ -8350,7 +9242,9 @@ parent_handle = le16_to_cpu(sas_device_pg0.ParentDevHandle); if (!_scsih_get_sas_address(ioc, parent_handle, &sas_address)) mpt3sas_transport_update_links(ioc, sas_address, handle, - sas_device_pg0.PhyNum, MPI2_SAS_NEG_LINK_RATE_1_5); + sas_device_pg0.PhyNum, MPI2_SAS_NEG_LINK_RATE_1_5, + mpt3sas_get_port_by_id(ioc, + sas_device_pg0.PhysicalPort, 0)); _scsih_add_device(ioc, handle, 0, 1); @@ -8475,6 +9369,8 @@ struct _sas_device *sas_device = NULL; struct _enclosure_node *enclosure_dev = NULL; unsigned long flags; + struct hba_port *port = mpt3sas_get_port_by_id( + ioc, sas_device_pg0->PhysicalPort, 0); if (sas_device_pg0->EnclosureHandle) { enclosure_dev = @@ -8486,69 +9382,71 @@ } spin_lock_irqsave(&ioc->sas_device_lock, flags); list_for_each_entry(sas_device, &ioc->sas_device_list, list) { - if ((sas_device->sas_address == le64_to_cpu( - sas_device_pg0->SASAddress)) && (sas_device->slot == - le16_to_cpu(sas_device_pg0->Slot))) { - sas_device->responding = 1; - starget = sas_device->starget; - if (starget && starget->hostdata) { - sas_target_priv_data = starget->hostdata; - sas_target_priv_data->tm_busy = 0; - sas_target_priv_data->deleted = 0; - } else - sas_target_priv_data = NULL; - if (starget) { - starget_printk(KERN_INFO, starget, - "handle(0x%04x), sas_addr(0x%016llx)\n", - le16_to_cpu(sas_device_pg0->DevHandle), - (unsigned long long) - sas_device->sas_address); + if (sas_device->sas_address != le64_to_cpu( + sas_device_pg0->SASAddress)) + continue; + if (sas_device->slot != le16_to_cpu(sas_device_pg0->Slot)) + continue; + if (sas_device->port != port) + continue; + sas_device->responding = 1; + starget = sas_device->starget; + if (starget && starget->hostdata) { + sas_target_priv_data = starget->hostdata; + sas_target_priv_data->tm_busy = 0; + sas_target_priv_data->deleted = 0; + } else + sas_target_priv_data = NULL; + if (starget) { + starget_printk(KERN_INFO, starget, + "handle(0x%04x), sas_addr(0x%016llx)\n", + le16_to_cpu(sas_device_pg0->DevHandle), + (unsigned long long) + sas_device->sas_address); - if (sas_device->enclosure_handle != 0) - starget_printk(KERN_INFO, starget, - "enclosure logical id(0x%016llx)," - " slot(%d)\n", - (unsigned long long) - sas_device->enclosure_logical_id, - sas_device->slot); - } - if (le16_to_cpu(sas_device_pg0->Flags) & - MPI2_SAS_DEVICE0_FLAGS_ENCL_LEVEL_VALID) { - sas_device->enclosure_level = - sas_device_pg0->EnclosureLevel; - memcpy(&sas_device->connector_name[0], - &sas_device_pg0->ConnectorName[0], 4); - } else { - sas_device->enclosure_level = 0; - sas_device->connector_name[0] = '\0'; - } + if (sas_device->enclosure_handle != 0) + starget_printk(KERN_INFO, starget, + "enclosure logical id(0x%016llx), slot(%d)\n", + (unsigned long long) + sas_device->enclosure_logical_id, + sas_device->slot); + } + if (le16_to_cpu(sas_device_pg0->Flags) & + MPI2_SAS_DEVICE0_FLAGS_ENCL_LEVEL_VALID) { + sas_device->enclosure_level = + sas_device_pg0->EnclosureLevel; + memcpy(&sas_device->connector_name[0], + &sas_device_pg0->ConnectorName[0], 4); + } else { + sas_device->enclosure_level = 0; + sas_device->connector_name[0] = '\0'; + } - sas_device->enclosure_handle = - le16_to_cpu(sas_device_pg0->EnclosureHandle); - sas_device->is_chassis_slot_valid = 0; - if (enclosure_dev) { - sas_device->enclosure_logical_id = le64_to_cpu( - enclosure_dev->pg0.EnclosureLogicalID); - if (le16_to_cpu(enclosure_dev->pg0.Flags) & - MPI2_SAS_ENCLS0_FLAGS_CHASSIS_SLOT_VALID) { - sas_device->is_chassis_slot_valid = 1; - sas_device->chassis_slot = - enclosure_dev->pg0.ChassisSlot; - } + sas_device->enclosure_handle = + le16_to_cpu(sas_device_pg0->EnclosureHandle); + sas_device->is_chassis_slot_valid = 0; + if (enclosure_dev) { + sas_device->enclosure_logical_id = le64_to_cpu( + enclosure_dev->pg0.EnclosureLogicalID); + if (le16_to_cpu(enclosure_dev->pg0.Flags) & + MPI2_SAS_ENCLS0_FLAGS_CHASSIS_SLOT_VALID) { + sas_device->is_chassis_slot_valid = 1; + sas_device->chassis_slot = + enclosure_dev->pg0.ChassisSlot; } + } - if (sas_device->handle == le16_to_cpu( - sas_device_pg0->DevHandle)) - goto out; - pr_info("\thandle changed from(0x%04x)!!!\n", - sas_device->handle); - sas_device->handle = le16_to_cpu( - sas_device_pg0->DevHandle); - if (sas_target_priv_data) - sas_target_priv_data->handle = - le16_to_cpu(sas_device_pg0->DevHandle); + if (sas_device->handle == le16_to_cpu( + sas_device_pg0->DevHandle)) goto out; - } + pr_info("\thandle changed from(0x%04x)!!!\n", + sas_device->handle); + sas_device->handle = le16_to_cpu( + sas_device_pg0->DevHandle); + if (sas_target_priv_data) + sas_target_priv_data->handle = + le16_to_cpu(sas_device_pg0->DevHandle); + goto out; } out: spin_unlock_irqrestore(&ioc->sas_device_lock, flags); @@ -8899,6 +9797,8 @@ u16 handle = le16_to_cpu(expander_pg0->DevHandle); u16 enclosure_handle = le16_to_cpu(expander_pg0->EnclosureHandle); u64 sas_address = le64_to_cpu(expander_pg0->SASAddress); + struct hba_port *port = mpt3sas_get_port_by_id( + ioc, expander_pg0->PhysicalPort, 0); if (enclosure_handle) enclosure_dev = @@ -8909,6 +9809,8 @@ list_for_each_entry(sas_expander, &ioc->sas_expander_list, list) { if (sas_expander->sas_address != sas_address) continue; + if (sas_expander->port != port) + continue; sas_expander->responding = 1; if (enclosure_dev) { @@ -8948,6 +9850,7 @@ u16 ioc_status; u64 sas_address; u16 handle; + u8 port; ioc_info(ioc, "search for expanders: start\n"); @@ -8965,9 +9868,12 @@ handle = le16_to_cpu(expander_pg0.DevHandle); sas_address = le64_to_cpu(expander_pg0.SASAddress); - pr_info("\texpander present: handle(0x%04x), sas_addr(0x%016llx)\n", - handle, - (unsigned long long)sas_address); + port = expander_pg0.PhysicalPort; + pr_info( + "\texpander present: handle(0x%04x), sas_addr(0x%016llx), port:%d\n", + handle, (unsigned long long)sas_address, + (ioc->multipath_on_hba ? + port : MULTIPATH_DISABLED_PORT_ID)); _scsih_mark_responding_expander(ioc, &expander_pg0); } @@ -9089,7 +9995,8 @@ mpt3sas_transport_update_links(ioc, sas_expander->sas_address, le16_to_cpu(expander_pg1.AttachedDevHandle), i, - expander_pg1.NegotiatedLinkRate >> 4); + expander_pg1.NegotiatedLinkRate >> 4, + sas_expander->port); } } @@ -9108,7 +10015,7 @@ Mpi2RaidPhysDiskPage0_t pd_pg0; Mpi2EventIrConfigElement_t element; Mpi2ConfigReply_t mpi_reply; - u8 phys_disk_num; + u8 phys_disk_num, port_id; u16 ioc_status; u16 handle, parent_handle; u64 sas_address; @@ -9138,8 +10045,10 @@ } handle = le16_to_cpu(expander_pg0.DevHandle); spin_lock_irqsave(&ioc->sas_node_lock, flags); + port_id = expander_pg0.PhysicalPort; expander_device = mpt3sas_scsih_expander_find_by_sas_address( - ioc, le64_to_cpu(expander_pg0.SASAddress)); + ioc, le64_to_cpu(expander_pg0.SASAddress), + mpt3sas_get_port_by_id(ioc, port_id, 0)); spin_unlock_irqrestore(&ioc->sas_node_lock, flags); if (expander_device) _scsih_refresh_expander_links(ioc, expander_device, @@ -9198,9 +10107,11 @@ ioc_info(ioc, "\tBEFORE adding phys disk: handle (0x%04x), sas_addr(0x%016llx)\n", handle, (u64)le64_to_cpu(sas_device_pg0.SASAddress)); + port_id = sas_device_pg0.PhysicalPort; mpt3sas_transport_update_links(ioc, sas_address, handle, sas_device_pg0.PhyNum, - MPI2_SAS_NEG_LINK_RATE_1_5); + MPI2_SAS_NEG_LINK_RATE_1_5, + mpt3sas_get_port_by_id(ioc, port_id, 0)); set_bit(handle, ioc->pd_handles); retry_count = 0; /* This will retry adding the end device. @@ -9286,8 +10197,10 @@ if (!(_scsih_is_end_device( le32_to_cpu(sas_device_pg0.DeviceInfo)))) continue; + port_id = sas_device_pg0.PhysicalPort; sas_device = mpt3sas_get_sdev_by_addr(ioc, - le64_to_cpu(sas_device_pg0.SASAddress)); + le64_to_cpu(sas_device_pg0.SASAddress), + mpt3sas_get_port_by_id(ioc, port_id, 0)); if (sas_device) { sas_device_put(sas_device); continue; @@ -9298,7 +10211,8 @@ handle, (u64)le64_to_cpu(sas_device_pg0.SASAddress)); mpt3sas_transport_update_links(ioc, sas_address, handle, - sas_device_pg0.PhyNum, MPI2_SAS_NEG_LINK_RATE_1_5); + sas_device_pg0.PhyNum, MPI2_SAS_NEG_LINK_RATE_1_5, + mpt3sas_get_port_by_id(ioc, port_id, 0)); retry_count = 0; /* This will retry adding the end device. * _scsih_add_device() will decide on retries and @@ -9402,6 +10316,10 @@ dtmprintk(ioc, ioc_info(ioc, "%s: MPT3_IOC_DONE_RESET\n", __func__)); if ((!ioc->is_driver_loading) && !(disable_discovery > 0 && !ioc->sas_hba.num_phys)) { + if (ioc->multipath_on_hba) { + _scsih_sas_port_refresh(ioc); + _scsih_update_vphys_after_reset(ioc); + } _scsih_prep_device_scan(ioc); _scsih_create_enclosure_list_after_reset(ioc); _scsih_search_responding_sas_devices(ioc); @@ -9447,6 +10365,8 @@ ssleep(1); } _scsih_remove_unresponding_devices(ioc); + _scsih_del_dirty_vphy(ioc); + _scsih_del_dirty_port_entries(ioc); _scsih_scan_for_devices_after_reset(ioc); _scsih_set_nvme_max_shutdown_latency(ioc); break; @@ -9727,21 +10647,25 @@ if (mpt3sas_port->remote_identify.device_type == SAS_END_DEVICE) mpt3sas_device_remove_by_sas_address(ioc, - mpt3sas_port->remote_identify.sas_address); + mpt3sas_port->remote_identify.sas_address, + mpt3sas_port->hba_port); else if (mpt3sas_port->remote_identify.device_type == SAS_EDGE_EXPANDER_DEVICE || mpt3sas_port->remote_identify.device_type == SAS_FANOUT_EXPANDER_DEVICE) mpt3sas_expander_remove(ioc, - mpt3sas_port->remote_identify.sas_address); + mpt3sas_port->remote_identify.sas_address, + mpt3sas_port->hba_port); } mpt3sas_transport_port_remove(ioc, sas_expander->sas_address, - sas_expander->sas_address_parent); + sas_expander->sas_address_parent, sas_expander->port); - ioc_info(ioc, "expander_remove: handle(0x%04x), sas_addr(0x%016llx)\n", - sas_expander->handle, (unsigned long long) - sas_expander->sas_address); + ioc_info(ioc, + "expander_remove: handle(0x%04x), sas_addr(0x%016llx), port:%d\n", + sas_expander->handle, (unsigned long long) + sas_expander->sas_address, + sas_expander->port->port_id); spin_lock_irqsave(&ioc->sas_node_lock, flags); list_del(&sas_expander->list); @@ -9905,6 +10829,7 @@ struct workqueue_struct *wq; unsigned long flags; Mpi2ConfigReply_t mpi_reply; + struct hba_port *port, *port_next; ioc->remove_host = 1; @@ -9955,13 +10880,21 @@ if (mpt3sas_port->remote_identify.device_type == SAS_END_DEVICE) mpt3sas_device_remove_by_sas_address(ioc, - mpt3sas_port->remote_identify.sas_address); + mpt3sas_port->remote_identify.sas_address, + mpt3sas_port->hba_port); else if (mpt3sas_port->remote_identify.device_type == SAS_EDGE_EXPANDER_DEVICE || mpt3sas_port->remote_identify.device_type == SAS_FANOUT_EXPANDER_DEVICE) mpt3sas_expander_remove(ioc, - mpt3sas_port->remote_identify.sas_address); + mpt3sas_port->remote_identify.sas_address, + mpt3sas_port->hba_port); + } + + list_for_each_entry_safe(port, port_next, + &ioc->port_table_list, list) { + list_del(&port->list); + kfree(port); } /* free phys attached to the sas_host */ @@ -10040,6 +10973,7 @@ unsigned long flags; int rc; int tid; + struct hba_port *port; /* no Bios, return immediately */ if (!ioc->bios_pg3.BiosVersion) @@ -10081,19 +11015,24 @@ handle = sas_device->handle; sas_address_parent = sas_device->sas_address_parent; sas_address = sas_device->sas_address; + port = sas_device->port; list_move_tail(&sas_device->list, &ioc->sas_device_list); spin_unlock_irqrestore(&ioc->sas_device_lock, flags); if (ioc->hide_drives) return; + + if (!port) + return; + if (!mpt3sas_transport_port_add(ioc, handle, - sas_address_parent)) { + sas_address_parent, port)) { _scsih_sas_device_remove(ioc, sas_device); } else if (!sas_device->starget) { if (!ioc->is_driver_loading) { mpt3sas_transport_port_remove(ioc, sas_address, - sas_address_parent); + sas_address_parent, port); _scsih_sas_device_remove(ioc, sas_device); } } @@ -10181,7 +11120,7 @@ while ((sas_device = get_next_sas_device(ioc))) { if (!mpt3sas_transport_port_add(ioc, sas_device->handle, - sas_device->sas_address_parent)) { + sas_device->sas_address_parent, sas_device->port)) { _scsih_sas_device_remove(ioc, sas_device); sas_device_put(sas_device); continue; @@ -10195,7 +11134,8 @@ if (!ioc->is_driver_loading) { mpt3sas_transport_port_remove(ioc, sas_device->sas_address, - sas_device->sas_address_parent); + sas_device->sas_address_parent, + sas_device->port); _scsih_sas_device_remove(ioc, sas_device); sas_device_put(sas_device); continue; @@ -10625,6 +11565,12 @@ ioc->mfg_pg10_hide_flag = MFG_PAGE10_EXPOSE_ALL_DISKS; break; } + + if (multipath_on_hba == -1 || multipath_on_hba == 0) + ioc->multipath_on_hba = 0; + else + ioc->multipath_on_hba = 1; + break; case MPI25_VERSION: case MPI26_VERSION: @@ -10672,6 +11618,23 @@ ioc->combined_reply_index_count = MPT3_SUP_REPLY_POST_HOST_INDEX_REG_COUNT_G3; } + + switch (ioc->is_gen35_ioc) { + case 0: + if (multipath_on_hba == -1 || multipath_on_hba == 0) + ioc->multipath_on_hba = 0; + else + ioc->multipath_on_hba = 1; + break; + case 1: + if (multipath_on_hba == -1 || multipath_on_hba > 0) + ioc->multipath_on_hba = 1; + else + ioc->multipath_on_hba = 0; + default: + break; + } + break; default: return -ENODEV; @@ -10732,6 +11695,7 @@ INIT_LIST_HEAD(&ioc->delayed_event_ack_list); INIT_LIST_HEAD(&ioc->delayed_tr_volume_list); INIT_LIST_HEAD(&ioc->reply_queue_list); + INIT_LIST_HEAD(&ioc->port_table_list); sprintf(ioc->name, "%s_cm%d", ioc->driver_name, ioc->id); --- linux-azure-5.8-5.8.0.orig/drivers/scsi/mpt3sas/mpt3sas_transport.c +++ linux-azure-5.8-5.8.0/drivers/scsi/mpt3sas/mpt3sas_transport.c @@ -61,9 +61,28 @@ #include "mpt3sas_base.h" /** + * _transport_get_port_id_by_sas_phy - get zone's port id that Phy belong to + * @phy - sas_phy object + * + * Return Port number + */ +static inline u8 +_transport_get_port_id_by_sas_phy(struct sas_phy *phy) +{ + u8 port_id = 0xFF; + struct hba_port *port = phy->hostdata; + + if (port) + port_id = port->port_id; + + return port_id; +} + +/** * _transport_sas_node_find_by_sas_address - sas node search * @ioc: per adapter object * @sas_address: sas address of expander or sas host + * @port: hba port entry * Context: Calling function should acquire ioc->sas_node_lock. * * Search for either hba phys or expander device based on handle, then returns @@ -71,13 +90,56 @@ */ static struct _sas_node * _transport_sas_node_find_by_sas_address(struct MPT3SAS_ADAPTER *ioc, - u64 sas_address) + u64 sas_address, struct hba_port *port) { if (ioc->sas_hba.sas_address == sas_address) return &ioc->sas_hba; else return mpt3sas_scsih_expander_find_by_sas_address(ioc, - sas_address); + sas_address, port); +} + +/** + * _transport_get_port_id_by_rphy - Get Port number from rphy object + * @ioc: per adapter object + * @rphy: sas_rphy object + * + * Returns Port number. + */ +static u8 +_transport_get_port_id_by_rphy(struct MPT3SAS_ADAPTER *ioc, + struct sas_rphy *rphy) +{ + struct _sas_node *sas_expander; + struct _sas_device *sas_device; + unsigned long flags; + u8 port_id = 0xFF; + + if (!rphy) + return port_id; + + if (rphy->identify.device_type == SAS_EDGE_EXPANDER_DEVICE || + rphy->identify.device_type == SAS_FANOUT_EXPANDER_DEVICE) { + spin_lock_irqsave(&ioc->sas_node_lock, flags); + list_for_each_entry(sas_expander, + &ioc->sas_expander_list, list) { + if (sas_expander->rphy == rphy) { + port_id = sas_expander->port->port_id; + break; + } + } + spin_unlock_irqrestore(&ioc->sas_node_lock, flags); + } else if (rphy->identify.device_type == SAS_END_DEVICE) { + spin_lock_irqsave(&ioc->sas_device_lock, flags); + sas_device = __mpt3sas_get_sdev_by_rphy(ioc, rphy); + if (sas_device) { + port_id = sas_device->port->port_id; + sas_device_put(sas_device); + } + spin_unlock_irqrestore(&ioc->sas_device_lock, flags); + } + + return port_id; } /** @@ -288,7 +350,7 @@ */ static int _transport_expander_report_manufacture(struct MPT3SAS_ADAPTER *ioc, - u64 sas_address, struct sas_expander_device *edev) + u64 sas_address, struct sas_expander_device *edev, u8 port_id) { Mpi2SmpPassthroughRequest_t *mpi_request; Mpi2SmpPassthroughReply_t *mpi_reply; @@ -355,7 +417,7 @@ memset(mpi_request, 0, sizeof(Mpi2SmpPassthroughRequest_t)); mpi_request->Function = MPI2_FUNCTION_SMP_PASSTHROUGH; - mpi_request->PhysicalPort = 0xFF; + mpi_request->PhysicalPort = port_id; mpi_request->SASAddress = cpu_to_le64(sas_address); mpi_request->RequestDataLength = cpu_to_le16(data_out_sz); psge = &mpi_request->SGL; @@ -439,6 +501,7 @@ struct _sas_port *mpt3sas_port) { u64 sas_address = mpt3sas_port->remote_identify.sas_address; + struct hba_port *port = mpt3sas_port->hba_port; enum sas_device_type device_type = mpt3sas_port->remote_identify.device_type; @@ -448,10 +511,11 @@ ioc->logging_level |= MPT_DEBUG_TRANSPORT; if (device_type == SAS_END_DEVICE) - mpt3sas_device_remove_by_sas_address(ioc, sas_address); + mpt3sas_device_remove_by_sas_address(ioc, + sas_address, port); else if (device_type == SAS_EDGE_EXPANDER_DEVICE || device_type == SAS_FANOUT_EXPANDER_DEVICE) - mpt3sas_expander_remove(ioc, sas_address); + mpt3sas_expander_remove(ioc, sas_address, port); ioc->logging_level &= ~MPT_DEBUG_TRANSPORT; } @@ -500,16 +564,17 @@ } /** - * _transport_add_phy_to_an_existing_port - adding new phy to existing port + * mpt3sas_transport_add_phy_to_an_existing_port - adding new phy to existing port * @ioc: per adapter object * @sas_node: sas node object (either expander or sas host) * @mpt3sas_phy: mpt3sas per phy object * @sas_address: sas address of device/expander were phy needs to be added to + * @port: hba port entry */ -static void -_transport_add_phy_to_an_existing_port(struct MPT3SAS_ADAPTER *ioc, +void +mpt3sas_transport_add_phy_to_an_existing_port(struct MPT3SAS_ADAPTER *ioc, struct _sas_node *sas_node, struct _sas_phy *mpt3sas_phy, - u64 sas_address) + u64 sas_address, struct hba_port *port) { struct _sas_port *mpt3sas_port; struct _sas_phy *phy_srch; @@ -517,11 +582,16 @@ if (mpt3sas_phy->phy_belongs_to_port == 1) return; + if (!port) + return; + list_for_each_entry(mpt3sas_port, &sas_node->sas_port_list, port_list) { if (mpt3sas_port->remote_identify.sas_address != sas_address) continue; + if (mpt3sas_port->hba_port != port) + continue; list_for_each_entry(phy_srch, &mpt3sas_port->phy_list, port_siblings) { if (phy_srch == mpt3sas_phy) @@ -534,13 +604,13 @@ } /** - * _transport_del_phy_from_an_existing_port - delete phy from existing port + * mpt3sas_transport_del_phy_from_an_existing_port - delete phy from existing port * @ioc: per adapter object * @sas_node: sas node object (either expander or sas host) * @mpt3sas_phy: mpt3sas per phy object */ -static void -_transport_del_phy_from_an_existing_port(struct MPT3SAS_ADAPTER *ioc, +void +mpt3sas_transport_del_phy_from_an_existing_port(struct MPT3SAS_ADAPTER *ioc, struct _sas_node *sas_node, struct _sas_phy *mpt3sas_phy) { struct _sas_port *mpt3sas_port, *next; @@ -556,7 +626,11 @@ if (phy_srch != mpt3sas_phy) continue; - if (mpt3sas_port->num_phys == 1) + /* + * Don't delete port during host reset, + * just delete phy. + */ + if (mpt3sas_port->num_phys == 1 && !ioc->shost_recovery) _transport_delete_port(ioc, mpt3sas_port); else _transport_delete_phy(ioc, mpt3sas_port, @@ -571,21 +645,24 @@ * @ioc: per adapter object * @sas_node: sas node object (either expander or sas host) * @sas_address: sas address of device being added + * @port: hba port entry * * See the explanation above from _transport_delete_duplicate_port */ static void _transport_sanity_check(struct MPT3SAS_ADAPTER *ioc, struct _sas_node *sas_node, - u64 sas_address) + u64 sas_address, struct hba_port *port) { int i; for (i = 0; i < sas_node->num_phys; i++) { if (sas_node->phy[i].remote_identify.sas_address != sas_address) continue; + if (sas_node->phy[i].port != port) + continue; if (sas_node->phy[i].phy_belongs_to_port == 1) - _transport_del_phy_from_an_existing_port(ioc, sas_node, - &sas_node->phy[i]); + mpt3sas_transport_del_phy_from_an_existing_port(ioc, + sas_node, &sas_node->phy[i]); } } @@ -594,6 +671,7 @@ * @ioc: per adapter object * @handle: handle of attached device * @sas_address: sas address of parent expander or sas host + * @port: hba port entry * Context: This function will acquire ioc->sas_node_lock. * * Adding new port object to the sas_node->sas_port_list. @@ -602,7 +680,7 @@ */ struct _sas_port * mpt3sas_transport_port_add(struct MPT3SAS_ADAPTER *ioc, u16 handle, - u64 sas_address) + u64 sas_address, struct hba_port *hba_port) { struct _sas_phy *mpt3sas_phy, *next; struct _sas_port *mpt3sas_port; @@ -612,6 +690,13 @@ struct _sas_device *sas_device = NULL; int i; struct sas_port *port; + struct virtual_phy *vphy = NULL; + + if (!hba_port) { + ioc_err(ioc, "failure at %s:%d/%s()!\n", + __FILE__, __LINE__, __func__); + return NULL; + } mpt3sas_port = kzalloc(sizeof(struct _sas_port), GFP_KERNEL); @@ -624,7 +709,8 @@ INIT_LIST_HEAD(&mpt3sas_port->port_list); INIT_LIST_HEAD(&mpt3sas_port->phy_list); spin_lock_irqsave(&ioc->sas_node_lock, flags); - sas_node = _transport_sas_node_find_by_sas_address(ioc, sas_address); + sas_node = _transport_sas_node_find_by_sas_address(ioc, + sas_address, hba_port); spin_unlock_irqrestore(&ioc->sas_node_lock, flags); if (!sas_node) { @@ -646,16 +732,32 @@ goto out_fail; } + mpt3sas_port->hba_port = hba_port; _transport_sanity_check(ioc, sas_node, - mpt3sas_port->remote_identify.sas_address); + mpt3sas_port->remote_identify.sas_address, hba_port); for (i = 0; i < sas_node->num_phys; i++) { if (sas_node->phy[i].remote_identify.sas_address != mpt3sas_port->remote_identify.sas_address) continue; + if (sas_node->phy[i].port != hba_port) + continue; list_add_tail(&sas_node->phy[i].port_siblings, &mpt3sas_port->phy_list); mpt3sas_port->num_phys++; + if (sas_node->handle <= ioc->sas_hba.num_phys) { + if (!sas_node->phy[i].hba_vphy) { + hba_port->phy_mask |= (1 << i); + continue; + } + + vphy = mpt3sas_get_vphy_by_phy(ioc, hba_port, i); + if (!vphy) { + ioc_err(ioc, "failure at %s:%d/%s()!\n", + __FILE__, __LINE__, __func__); + goto out_fail; + } + } } if (!mpt3sas_port->num_phys) { @@ -664,6 +766,18 @@ goto out_fail; } + if (mpt3sas_port->remote_identify.device_type == SAS_END_DEVICE) { + sas_device = mpt3sas_get_sdev_by_addr(ioc, + mpt3sas_port->remote_identify.sas_address, + mpt3sas_port->hba_port); + if (!sas_device) { + ioc_err(ioc, "failure at %s:%d/%s()!\n", + __FILE__, __LINE__, __func__); + goto out_fail; + } + sas_device->pend_sas_rphy_add = 1; + } + if (!sas_node->parent_dev) { ioc_err(ioc, "failure at %s:%d/%s()!\n", __FILE__, __LINE__, __func__); @@ -686,29 +800,31 @@ mpt3sas_phy->phy_id); sas_port_add_phy(port, mpt3sas_phy->phy); mpt3sas_phy->phy_belongs_to_port = 1; + mpt3sas_phy->port = hba_port; } mpt3sas_port->port = port; - if (mpt3sas_port->remote_identify.device_type == SAS_END_DEVICE) + if (mpt3sas_port->remote_identify.device_type == SAS_END_DEVICE) { rphy = sas_end_device_alloc(port); - else + sas_device->rphy = rphy; + if (sas_node->handle <= ioc->sas_hba.num_phys) { + if (!vphy) + hba_port->sas_address = + sas_device->sas_address; + else + vphy->sas_address = + sas_device->sas_address; + } + } else { rphy = sas_expander_alloc(port, mpt3sas_port->remote_identify.device_type); + if (sas_node->handle <= ioc->sas_hba.num_phys) + hba_port->sas_address = + mpt3sas_port->remote_identify.sas_address; + } rphy->identify = mpt3sas_port->remote_identify; - if (mpt3sas_port->remote_identify.device_type == SAS_END_DEVICE) { - sas_device = mpt3sas_get_sdev_by_addr(ioc, - mpt3sas_port->remote_identify.sas_address); - if (!sas_device) { - dfailprintk(ioc, - ioc_info(ioc, "failure at %s:%d/%s()!\n", - __FILE__, __LINE__, __func__)); - goto out_fail; - } - sas_device->pend_sas_rphy_add = 1; - } - if ((sas_rphy_add(rphy))) { ioc_err(ioc, "failure at %s:%d/%s()!\n", __FILE__, __LINE__, __func__); @@ -735,7 +851,7 @@ MPI2_SAS_DEVICE_INFO_FANOUT_EXPANDER) _transport_expander_report_manufacture(ioc, mpt3sas_port->remote_identify.sas_address, - rphy_to_expander_device(rphy)); + rphy_to_expander_device(rphy), hba_port->port_id); return mpt3sas_port; out_fail: @@ -751,6 +867,7 @@ * @ioc: per adapter object * @sas_address: sas address of attached device * @sas_address_parent: sas address of parent expander or sas host + * @port: hba port entry * Context: This function will acquire ioc->sas_node_lock. * * Removing object and freeing associated memory from the @@ -758,7 +875,7 @@ */ void mpt3sas_transport_port_remove(struct MPT3SAS_ADAPTER *ioc, u64 sas_address, - u64 sas_address_parent) + u64 sas_address_parent, struct hba_port *port) { int i; unsigned long flags; @@ -766,10 +883,15 @@ struct _sas_node *sas_node; u8 found = 0; struct _sas_phy *mpt3sas_phy, *next_phy; + struct hba_port *hba_port_next, *hba_port = NULL; + struct virtual_phy *vphy, *vphy_next = NULL; + + if (!port) + return; spin_lock_irqsave(&ioc->sas_node_lock, flags); sas_node = _transport_sas_node_find_by_sas_address(ioc, - sas_address_parent); + sas_address_parent, port); if (!sas_node) { spin_unlock_irqrestore(&ioc->sas_node_lock, flags); return; @@ -778,6 +900,8 @@ port_list) { if (mpt3sas_port->remote_identify.sas_address != sas_address) continue; + if (mpt3sas_port->hba_port != port) + continue; found = 1; list_del(&mpt3sas_port->port_list); goto out; @@ -788,6 +912,61 @@ return; } + if (sas_node->handle <= ioc->sas_hba.num_phys && + (ioc->multipath_on_hba)) { + if (port->vphys_mask) { + list_for_each_entry_safe(vphy, vphy_next, + &port->vphys_list, list) { + if (vphy->sas_address != sas_address) + continue; + ioc_info(ioc, + "remove vphy entry: %p of port:%p,from %d port's vphys list\n", + vphy, port, port->port_id); + port->vphys_mask &= ~vphy->phy_mask; + list_del(&vphy->list); + kfree(vphy); + } + } + + list_for_each_entry_safe(hba_port, hba_port_next, + &ioc->port_table_list, list) { + if (hba_port != port) + continue; + /* + * Delete hba_port object if + * - hba_port object's sas address matches with current + * removed device's sas address and no vphy's + * associated with it. + * - Current removed device is a vSES device and + * none of the other direct attached device have + * this vSES device's port number (hence hba_port + * object sas_address field will be zero). + */ + if ((hba_port->sas_address == sas_address || + !hba_port->sas_address) && !hba_port->vphys_mask) { + ioc_info(ioc, + "remove hba_port entry: %p port: %d from hba_port list\n", + hba_port, hba_port->port_id); + list_del(&hba_port->list); + kfree(hba_port); + } else if (hba_port->sas_address == sas_address && + hba_port->vphys_mask) { + /* + * Current removed device is a non vSES device + * and a vSES device has the same port number + * as of current device's port number. Hence + * only clear the sas_address filed, don't + * delete the hba_port object. + */ + ioc_info(ioc, + "clearing sas_address from hba_port entry: %p port: %d from hba_port list\n", + hba_port, hba_port->port_id); + port->sas_address = 0; + } + break; + } + } + for (i = 0; i < sas_node->num_phys; i++) { if (sas_node->phy[i].remote_identify.sas_address == sas_address) memset(&sas_node->phy[i].remote_identify, 0 , @@ -864,6 +1043,7 @@ phy_pg0.ProgrammedLinkRate & MPI2_SAS_PRATE_MIN_RATE_MASK); phy->maximum_linkrate = _transport_convert_phy_link_rate( phy_pg0.ProgrammedLinkRate >> 4); + phy->hostdata = mpt3sas_phy->port; if ((sas_phy_add(phy))) { ioc_err(ioc, "failure at %s:%d/%s()!\n", @@ -934,6 +1114,7 @@ expander_pg1.ProgrammedLinkRate & MPI2_SAS_PRATE_MIN_RATE_MASK); phy->maximum_linkrate = _transport_convert_phy_link_rate( expander_pg1.ProgrammedLinkRate >> 4); + phy->hostdata = mpt3sas_phy->port; if ((sas_phy_add(phy))) { ioc_err(ioc, "failure at %s:%d/%s()!\n", @@ -961,20 +1142,26 @@ * @handle: attached device handle * @phy_number: phy number * @link_rate: new link rate + * @port: hba port entry + * + * Return nothing. */ void mpt3sas_transport_update_links(struct MPT3SAS_ADAPTER *ioc, - u64 sas_address, u16 handle, u8 phy_number, u8 link_rate) + u64 sas_address, u16 handle, u8 phy_number, u8 link_rate, + struct hba_port *port) { unsigned long flags; struct _sas_node *sas_node; struct _sas_phy *mpt3sas_phy; + struct hba_port *hba_port = NULL; if (ioc->shost_recovery || ioc->pci_error_recovery) return; spin_lock_irqsave(&ioc->sas_node_lock, flags); - sas_node = _transport_sas_node_find_by_sas_address(ioc, sas_address); + sas_node = _transport_sas_node_find_by_sas_address(ioc, + sas_address, port); if (!sas_node) { spin_unlock_irqrestore(&ioc->sas_node_lock, flags); return; @@ -986,8 +1173,19 @@ if (handle && (link_rate >= MPI2_SAS_NEG_LINK_RATE_1_5)) { _transport_set_identify(ioc, handle, &mpt3sas_phy->remote_identify); - _transport_add_phy_to_an_existing_port(ioc, sas_node, - mpt3sas_phy, mpt3sas_phy->remote_identify.sas_address); + if ((sas_node->handle <= ioc->sas_hba.num_phys) && + (ioc->multipath_on_hba)) { + list_for_each_entry(hba_port, + &ioc->port_table_list, list) { + if (hba_port->sas_address == sas_address && + hba_port == port) + hba_port->phy_mask |= + (1 << mpt3sas_phy->phy_id); + } + } + mpt3sas_transport_add_phy_to_an_existing_port(ioc, sas_node, + mpt3sas_phy, mpt3sas_phy->remote_identify.sas_address, + port); } else memset(&mpt3sas_phy->remote_identify, 0 , sizeof(struct sas_identify)); @@ -1122,7 +1320,7 @@ memset(mpi_request, 0, sizeof(Mpi2SmpPassthroughRequest_t)); mpi_request->Function = MPI2_FUNCTION_SMP_PASSTHROUGH; - mpi_request->PhysicalPort = 0xFF; + mpi_request->PhysicalPort = _transport_get_port_id_by_sas_phy(phy); mpi_request->VF_ID = 0; /* TODO */ mpi_request->VP_ID = 0; mpi_request->SASAddress = cpu_to_le64(phy->identify.sas_address); @@ -1212,10 +1410,13 @@ unsigned long flags; Mpi2ConfigReply_t mpi_reply; Mpi2SasPhyPage1_t phy_pg1; + struct hba_port *port = phy->hostdata; + int port_id = port->port_id; spin_lock_irqsave(&ioc->sas_node_lock, flags); if (_transport_sas_node_find_by_sas_address(ioc, - phy->identify.sas_address) == NULL) { + phy->identify.sas_address, + mpt3sas_get_port_by_id(ioc, port_id, 0)) == NULL) { spin_unlock_irqrestore(&ioc->sas_node_lock, flags); return -EINVAL; } @@ -1265,8 +1466,7 @@ int rc; spin_lock_irqsave(&ioc->sas_device_lock, flags); - sas_device = __mpt3sas_get_sdev_by_addr(ioc, - rphy->identify.sas_address); + sas_device = __mpt3sas_get_sdev_by_rphy(ioc, rphy); if (sas_device) { *identifier = sas_device->enclosure_logical_id; rc = 0; @@ -1295,8 +1495,7 @@ int rc; spin_lock_irqsave(&ioc->sas_device_lock, flags); - sas_device = __mpt3sas_get_sdev_by_addr(ioc, - rphy->identify.sas_address); + sas_device = __mpt3sas_get_sdev_by_rphy(ioc, rphy); if (sas_device) { rc = sas_device->slot; sas_device_put(sas_device); @@ -1417,7 +1616,7 @@ memset(mpi_request, 0, sizeof(Mpi2SmpPassthroughRequest_t)); mpi_request->Function = MPI2_FUNCTION_SMP_PASSTHROUGH; - mpi_request->PhysicalPort = 0xFF; + mpi_request->PhysicalPort = _transport_get_port_id_by_sas_phy(phy); mpi_request->VF_ID = 0; /* TODO */ mpi_request->VP_ID = 0; mpi_request->SASAddress = cpu_to_le64(phy->identify.sas_address); @@ -1499,11 +1698,14 @@ struct MPT3SAS_ADAPTER *ioc = phy_to_ioc(phy); Mpi2SasIoUnitControlReply_t mpi_reply; Mpi2SasIoUnitControlRequest_t mpi_request; + struct hba_port *port = phy->hostdata; + int port_id = port->port_id; unsigned long flags; spin_lock_irqsave(&ioc->sas_node_lock, flags); if (_transport_sas_node_find_by_sas_address(ioc, - phy->identify.sas_address) == NULL) { + phy->identify.sas_address, + mpt3sas_get_port_by_id(ioc, port_id, 0)) == NULL) { spin_unlock_irqrestore(&ioc->sas_node_lock, flags); return -EINVAL; } @@ -1556,10 +1758,13 @@ int rc = 0; unsigned long flags; int i, discovery_active; + struct hba_port *port = phy->hostdata; + int port_id = port->port_id; spin_lock_irqsave(&ioc->sas_node_lock, flags); if (_transport_sas_node_find_by_sas_address(ioc, - phy->identify.sas_address) == NULL) { + phy->identify.sas_address, + mpt3sas_get_port_by_id(ioc, port_id, 0)) == NULL) { spin_unlock_irqrestore(&ioc->sas_node_lock, flags); return -EINVAL; } @@ -1693,10 +1898,13 @@ int i; int rc = 0; unsigned long flags; + struct hba_port *port = phy->hostdata; + int port_id = port->port_id; spin_lock_irqsave(&ioc->sas_node_lock, flags); if (_transport_sas_node_find_by_sas_address(ioc, - phy->identify.sas_address) == NULL) { + phy->identify.sas_address, + mpt3sas_get_port_by_id(ioc, port_id, 0)) == NULL) { spin_unlock_irqrestore(&ioc->sas_node_lock, flags); return -EINVAL; } @@ -1898,7 +2106,7 @@ memset(mpi_request, 0, sizeof(Mpi2SmpPassthroughRequest_t)); mpi_request->Function = MPI2_FUNCTION_SMP_PASSTHROUGH; - mpi_request->PhysicalPort = 0xFF; + mpi_request->PhysicalPort = _transport_get_port_id_by_rphy(ioc, rphy); mpi_request->SASAddress = (rphy) ? cpu_to_le64(rphy->identify.sas_address) : cpu_to_le64(ioc->sas_hba.sas_address); --- linux-azure-5.8-5.8.0.orig/drivers/scsi/mvumi.c +++ linux-azure-5.8-5.8.0/drivers/scsi/mvumi.c @@ -2425,6 +2425,7 @@ if (IS_ERR(mhba->dm_thread)) { dev_err(&mhba->pdev->dev, "failed to create device scan thread\n"); + ret = PTR_ERR(mhba->dm_thread); mutex_unlock(&mhba->sas_discovery_mutex); goto fail_create_thread; } --- linux-azure-5.8-5.8.0.orig/drivers/scsi/pm8001/pm8001_init.c +++ linux-azure-5.8-5.8.0/drivers/scsi/pm8001/pm8001_init.c @@ -1106,7 +1106,8 @@ pm8001_init_sas_add(pm8001_ha); /* phy setting support for motherboard controller */ - if (pm8001_configure_phy_settings(pm8001_ha)) + rc = pm8001_configure_phy_settings(pm8001_ha); + if (rc) goto err_out_shost; pm8001_post_sas_ha_init(shost, chip); --- linux-azure-5.8-5.8.0.orig/drivers/scsi/pm8001/pm8001_sas.c +++ linux-azure-5.8-5.8.0/drivers/scsi/pm8001/pm8001_sas.c @@ -818,7 +818,7 @@ res = pm8001_tag_alloc(pm8001_ha, &ccb_tag); if (res) - return res; + goto ex_err; ccb = &pm8001_ha->ccb_info[ccb_tag]; ccb->device = pm8001_dev; ccb->ccb_tag = ccb_tag; --- linux-azure-5.8-5.8.0.orig/drivers/scsi/pm8001/pm80xx_hwi.c +++ linux-azure-5.8-5.8.0/drivers/scsi/pm8001/pm80xx_hwi.c @@ -3352,7 +3352,7 @@ pm8001_get_attached_sas_addr(phy, phy->sas_phy.attached_sas_addr); spin_unlock_irqrestore(&phy->sas_phy.frame_rcvd_lock, flags); if (pm8001_ha->flags == PM8001F_RUN_TIME) - msleep(200);/*delay a moment to wait disk to spinup*/ + mdelay(200); /* delay a moment to wait for disk to spin up */ pm8001_bytes_dmaed(pm8001_ha, phy_id); } --- linux-azure-5.8-5.8.0.orig/drivers/scsi/qedf/qedf_main.c +++ linux-azure-5.8-5.8.0/drivers/scsi/qedf/qedf_main.c @@ -704,7 +704,7 @@ rdata = fcport->rdata; if (!rdata || !kref_get_unless_zero(&rdata->kref)) { QEDF_ERR(&qedf->dbg_ctx, "stale rport, sc_cmd=%p\n", sc_cmd); - rc = 1; + rc = SUCCESS; goto out; } @@ -3843,7 +3843,7 @@ container_of(work, struct qedf_ctx, stag_work.work); if (!qedf) { - QEDF_ERR(&qedf->dbg_ctx, "qedf is NULL"); + QEDF_ERR(NULL, "qedf is NULL"); return; } QEDF_ERR(&qedf->dbg_ctx, "Performing software context reset.\n"); --- linux-azure-5.8-5.8.0.orig/drivers/scsi/qedi/qedi_fw.c +++ linux-azure-5.8-5.8.0/drivers/scsi/qedi/qedi_fw.c @@ -59,6 +59,7 @@ "Freeing tid=0x%x for cid=0x%x\n", cmd->task_id, qedi_conn->iscsi_conn_id); + spin_lock(&qedi_conn->list_lock); if (likely(cmd->io_cmd_in_list)) { cmd->io_cmd_in_list = false; list_del_init(&cmd->io_cmd); @@ -69,6 +70,7 @@ cmd->task_id, qedi_conn->iscsi_conn_id, &cmd->io_cmd); } + spin_unlock(&qedi_conn->list_lock); cmd->state = RESPONSE_RECEIVED; qedi_clear_task_idx(qedi, cmd->task_id); @@ -122,6 +124,7 @@ "Freeing tid=0x%x for cid=0x%x\n", cmd->task_id, qedi_conn->iscsi_conn_id); + spin_lock(&qedi_conn->list_lock); if (likely(cmd->io_cmd_in_list)) { cmd->io_cmd_in_list = false; list_del_init(&cmd->io_cmd); @@ -132,6 +135,7 @@ cmd->task_id, qedi_conn->iscsi_conn_id, &cmd->io_cmd); } + spin_unlock(&qedi_conn->list_lock); cmd->state = RESPONSE_RECEIVED; qedi_clear_task_idx(qedi, cmd->task_id); @@ -222,11 +226,13 @@ tmf_hdr = (struct iscsi_tm *)qedi_cmd->task->hdr; + spin_lock(&qedi_conn->list_lock); if (likely(qedi_cmd->io_cmd_in_list)) { qedi_cmd->io_cmd_in_list = false; list_del_init(&qedi_cmd->io_cmd); qedi_conn->active_cmd_count--; } + spin_unlock(&qedi_conn->list_lock); if (((tmf_hdr->flags & ISCSI_FLAG_TM_FUNC_MASK) == ISCSI_TM_FUNC_LOGICAL_UNIT_RESET) || @@ -288,11 +294,13 @@ ISCSI_LOGIN_RESPONSE_HDR_DATA_SEG_LEN_MASK; qedi_conn->gen_pdu.resp_wr_ptr = qedi_conn->gen_pdu.resp_buf + pld_len; + spin_lock(&qedi_conn->list_lock); if (likely(cmd->io_cmd_in_list)) { cmd->io_cmd_in_list = false; list_del_init(&cmd->io_cmd); qedi_conn->active_cmd_count--; } + spin_unlock(&qedi_conn->list_lock); memset(task_ctx, '\0', sizeof(*task_ctx)); @@ -817,8 +825,11 @@ qedi_clear_task_idx(qedi_conn->qedi, rtid); spin_lock(&qedi_conn->list_lock); - list_del_init(&dbg_cmd->io_cmd); - qedi_conn->active_cmd_count--; + if (likely(dbg_cmd->io_cmd_in_list)) { + dbg_cmd->io_cmd_in_list = false; + list_del_init(&dbg_cmd->io_cmd); + qedi_conn->active_cmd_count--; + } spin_unlock(&qedi_conn->list_lock); qedi_cmd->state = CLEANUP_RECV; wake_up_interruptible(&qedi_conn->wait_queue); @@ -1236,6 +1247,7 @@ qedi_conn->cmd_cleanup_req++; qedi_iscsi_cleanup_task(ctask, true); + cmd->io_cmd_in_list = false; list_del_init(&cmd->io_cmd); qedi_conn->active_cmd_count--; QEDI_WARN(&qedi->dbg_ctx, @@ -1447,8 +1459,11 @@ spin_unlock_bh(&qedi_conn->tmf_work_lock); spin_lock(&qedi_conn->list_lock); - list_del_init(&cmd->io_cmd); - qedi_conn->active_cmd_count--; + if (likely(cmd->io_cmd_in_list)) { + cmd->io_cmd_in_list = false; + list_del_init(&cmd->io_cmd); + qedi_conn->active_cmd_count--; + } spin_unlock(&qedi_conn->list_lock); clear_bit(QEDI_CONN_FW_CLEANUP, &qedi_conn->flags); --- linux-azure-5.8-5.8.0.orig/drivers/scsi/qedi/qedi_iscsi.c +++ linux-azure-5.8-5.8.0/drivers/scsi/qedi/qedi_iscsi.c @@ -975,11 +975,13 @@ { struct qedi_cmd *cmd, *cmd_tmp; + spin_lock(&qedi_conn->list_lock); list_for_each_entry_safe(cmd, cmd_tmp, &qedi_conn->active_cmd_list, io_cmd) { list_del_init(&cmd->io_cmd); qedi_conn->active_cmd_count--; } + spin_unlock(&qedi_conn->list_lock); } static void qedi_ep_disconnect(struct iscsi_endpoint *ep) --- linux-azure-5.8-5.8.0.orig/drivers/scsi/qedi/qedi_main.c +++ linux-azure-5.8-5.8.0/drivers/scsi/qedi/qedi_main.c @@ -1127,6 +1127,15 @@ schedule_delayed_work(&qedi->recovery_work, 0); } +static void qedi_set_conn_recovery(struct iscsi_cls_session *cls_session) +{ + struct iscsi_session *session = cls_session->dd_data; + struct iscsi_conn *conn = session->leadconn; + struct qedi_conn *qedi_conn = conn->dd_data; + + qedi_start_conn_recovery(qedi_conn->qedi, qedi_conn); +} + static void qedi_link_update(void *dev, struct qed_link_output *link) { struct qedi_ctx *qedi = (struct qedi_ctx *)dev; @@ -1138,6 +1147,7 @@ QEDI_INFO(&qedi->dbg_ctx, QEDI_LOG_INFO, "Link Down event.\n"); atomic_set(&qedi->link_state, QEDI_LINK_DOWN); + iscsi_host_for_each_session(qedi->shost, qedi_set_conn_recovery); } } @@ -2190,7 +2200,7 @@ chap_name); break; case ISCSI_BOOT_TGT_CHAP_SECRET: - rc = sprintf(buf, "%.*s\n", NVM_ISCSI_CFG_CHAP_NAME_MAX_LEN, + rc = sprintf(buf, "%.*s\n", NVM_ISCSI_CFG_CHAP_PWD_MAX_LEN, chap_secret); break; case ISCSI_BOOT_TGT_REV_CHAP_NAME: @@ -2198,7 +2208,7 @@ mchap_name); break; case ISCSI_BOOT_TGT_REV_CHAP_SECRET: - rc = sprintf(buf, "%.*s\n", NVM_ISCSI_CFG_CHAP_NAME_MAX_LEN, + rc = sprintf(buf, "%.*s\n", NVM_ISCSI_CFG_CHAP_PWD_MAX_LEN, mchap_secret); break; case ISCSI_BOOT_TGT_FLAGS: @@ -2657,7 +2667,7 @@ QEDI_ERR(&qedi->dbg_ctx, "Unable to start offload thread!\n"); rc = -ENODEV; - goto free_cid_que; + goto free_tmf_thread; } INIT_DELAYED_WORK(&qedi->recovery_work, qedi_recovery_handler); @@ -2679,6 +2689,8 @@ return 0; +free_tmf_thread: + destroy_workqueue(qedi->tmf_thread); free_cid_que: qedi_release_cid_que(qedi); free_uio: --- linux-azure-5.8-5.8.0.orig/drivers/scsi/qla2xxx/qla_attr.c +++ linux-azure-5.8-5.8.0/drivers/scsi/qla2xxx/qla_attr.c @@ -157,6 +157,14 @@ vha->host_no); } break; + case 10: + if (IS_QLA27XX(ha) || IS_QLA28XX(ha)) { + ql_log(ql_log_info, vha, 0x70e9, + "Issuing MPI firmware dump on host#%ld.\n", + vha->host_no); + ha->isp_ops->mpi_fw_dump(vha, 0); + } + break; } return count; } @@ -744,8 +752,6 @@ qla83xx_idc_audit(vha, IDC_AUDIT_TIMESTAMP); qla83xx_idc_unlock(vha, 0); break; - } else if (IS_QLA27XX(ha) || IS_QLA28XX(ha)) { - qla27xx_reset_mpi(vha); } else { /* Make sure FC side is not in reset */ WARN_ON_ONCE(qla2x00_wait_for_hba_online(vha) != --- linux-azure-5.8-5.8.0.orig/drivers/scsi/qla2xxx/qla_dbg.c +++ linux-azure-5.8-5.8.0/drivers/scsi/qla2xxx/qla_dbg.c @@ -209,6 +209,7 @@ wrt_reg_word(®->mailbox0, MBC_DUMP_RISC_RAM_EXTENDED); wrt_reg_word(®->mailbox1, LSW(addr)); wrt_reg_word(®->mailbox8, MSW(addr)); + wrt_reg_word(®->mailbox10, 0); wrt_reg_word(®->mailbox2, MSW(LSD(dump_dma))); wrt_reg_word(®->mailbox3, LSW(LSD(dump_dma))); --- linux-azure-5.8-5.8.0.orig/drivers/scsi/qla2xxx/qla_def.h +++ linux-azure-5.8-5.8.0/drivers/scsi/qla2xxx/qla_def.h @@ -1605,7 +1605,7 @@ */ uint8_t firmware_options[2]; - uint16_t frame_payload_size; + __le16 frame_payload_size; __le16 max_iocb_allocation; __le16 execution_throttle; uint8_t retry_count; --- linux-azure-5.8-5.8.0.orig/drivers/scsi/qla2xxx/qla_gbl.h +++ linux-azure-5.8-5.8.0/drivers/scsi/qla2xxx/qla_gbl.h @@ -936,6 +936,5 @@ /* nvme.c */ void qla_nvme_unregister_remote_port(struct fc_port *fcport); -void qla27xx_reset_mpi(scsi_qla_host_t *vha); void qla_handle_els_plogi_done(scsi_qla_host_t *vha, struct event_arg *ea); #endif /* _QLA_GBL_H */ --- linux-azure-5.8-5.8.0.orig/drivers/scsi/qla2xxx/qla_gs.c +++ linux-azure-5.8-5.8.0/drivers/scsi/qla2xxx/qla_gs.c @@ -1505,11 +1505,11 @@ static uint qla25xx_fdmi_port_speed_capability(struct qla_hw_data *ha) { + uint speeds = 0; + if (IS_CNA_CAPABLE(ha)) return FDMI_PORT_SPEED_10GB; if (IS_QLA28XX(ha) || IS_QLA27XX(ha)) { - uint speeds = 0; - if (ha->max_supported_speed == 2) { if (ha->min_supported_speed <= 6) speeds |= FDMI_PORT_SPEED_64GB; @@ -1536,9 +1536,16 @@ } return speeds; } - if (IS_QLA2031(ha)) - return FDMI_PORT_SPEED_16GB|FDMI_PORT_SPEED_8GB| - FDMI_PORT_SPEED_4GB; + if (IS_QLA2031(ha)) { + if ((ha->pdev->subsystem_vendor == 0x103C) && + (ha->pdev->subsystem_device == 0x8002)) { + speeds = FDMI_PORT_SPEED_16GB; + } else { + speeds = FDMI_PORT_SPEED_16GB|FDMI_PORT_SPEED_8GB| + FDMI_PORT_SPEED_4GB; + } + return speeds; + } if (IS_QLA25XX(ha)) return FDMI_PORT_SPEED_8GB|FDMI_PORT_SPEED_4GB| FDMI_PORT_SPEED_2GB|FDMI_PORT_SPEED_1GB; @@ -3436,7 +3443,6 @@ list_for_each_entry(fcport, &vha->vp_fcports, list) { if ((fcport->flags & FCF_FABRIC_DEVICE) != 0) { fcport->scan_state = QLA_FCPORT_SCAN; - fcport->logout_on_delete = 0; } } goto login_logout; @@ -3532,10 +3538,22 @@ } if (fcport->scan_state != QLA_FCPORT_FOUND) { + bool do_delete = false; + + if (fcport->scan_needed && + fcport->disc_state == DSC_LOGIN_PEND) { + /* Cable got disconnected after we sent + * a login. Do delete to prevent timeout. + */ + fcport->logout_on_delete = 1; + do_delete = true; + } + fcport->scan_needed = 0; - if ((qla_dual_mode_enabled(vha) || - qla_ini_mode_enabled(vha)) && - atomic_read(&fcport->state) == FCS_ONLINE) { + if (((qla_dual_mode_enabled(vha) || + qla_ini_mode_enabled(vha)) && + atomic_read(&fcport->state) == FCS_ONLINE) || + do_delete) { if (fcport->loop_id != FC_NO_LOOP_ID) { if (fcport->flags & FCF_FCP2_DEVICE) fcport->logout_on_delete = 0; @@ -3736,6 +3754,18 @@ unsigned long flags; const char *name = sp->name; + if (res == QLA_OS_TIMER_EXPIRED) { + /* switch is ignoring all commands. + * This might be a zone disable behavior. + * This means we hit 64s timeout. + * 22s GPNFT + 44s Abort = 64s + */ + ql_dbg(ql_dbg_disc, vha, 0xffff, + "%s: Switch Zone check please .\n", + name); + qla2x00_mark_all_devices_lost(vha); + } + /* * We are in an Interrupt context, queue up this * sp for GNNFT_DONE work. This will allow all --- linux-azure-5.8-5.8.0.orig/drivers/scsi/qla2xxx/qla_init.c +++ linux-azure-5.8-5.8.0/drivers/scsi/qla2xxx/qla_init.c @@ -63,6 +63,16 @@ qla2x00_rel_sp(sp); } +void qla2xxx_rel_done_warning(srb_t *sp, int res) +{ + WARN_ONCE(1, "Calling done() of an already freed srb %p object\n", sp); +} + +void qla2xxx_rel_free_warning(srb_t *sp) +{ + WARN_ONCE(1, "Calling free() of an already freed srb %p object\n", sp); +} + /* Asynchronous Login/Logout Routines -------------------------------------- */ unsigned long @@ -1259,9 +1269,10 @@ lio->u.logio.flags |= SRB_LOGIN_NVME_PRLI; ql_dbg(ql_dbg_disc, vha, 0x211b, - "Async-prli - %8phC hdl=%x, loopid=%x portid=%06x retries=%d %s.\n", + "Async-prli - %8phC hdl=%x, loopid=%x portid=%06x retries=%d fc4type %x priority %x %s.\n", fcport->port_name, sp->handle, fcport->loop_id, fcport->d_id.b24, - fcport->login_retry, NVME_TARGET(vha->hw, fcport) ? "nvme" : "fc"); + fcport->login_retry, fcport->fc4_type, vha->hw->fc4_type_priority, + NVME_TARGET(vha->hw, fcport) ? "nvme" : "fcp"); rval = qla2x00_start_sp(sp); if (rval != QLA_SUCCESS) { @@ -1923,26 +1934,58 @@ break; } - /* - * Retry PRLI with other FC-4 type if failure occurred on dual - * FCP/NVMe port - */ - if (NVME_FCP_TARGET(ea->fcport)) { - ql_dbg(ql_dbg_disc, vha, 0x2118, - "%s %d %8phC post %s prli\n", - __func__, __LINE__, ea->fcport->port_name, - (ea->fcport->fc4_type & FS_FC4TYPE_NVME) ? - "NVMe" : "FCP"); - if (vha->hw->fc4_type_priority == FC4_PRIORITY_NVME) + ql_dbg(ql_dbg_disc, vha, 0x2118, + "%s %d %8phC priority %s, fc4type %x\n", + __func__, __LINE__, ea->fcport->port_name, + vha->hw->fc4_type_priority == FC4_PRIORITY_FCP ? + "FCP" : "NVMe", ea->fcport->fc4_type); + + if (N2N_TOPO(vha->hw)) { + if (vha->hw->fc4_type_priority == FC4_PRIORITY_NVME) { ea->fcport->fc4_type &= ~FS_FC4TYPE_NVME; - else + ea->fcport->fc4_type |= FS_FC4TYPE_FCP; + } else { ea->fcport->fc4_type &= ~FS_FC4TYPE_FCP; - } + ea->fcport->fc4_type |= FS_FC4TYPE_NVME; + } - ea->fcport->flags &= ~FCF_ASYNC_SENT; - ea->fcport->keep_nport_handle = 0; - ea->fcport->logout_on_delete = 1; - qlt_schedule_sess_for_deletion(ea->fcport); + if (ea->fcport->n2n_link_reset_cnt < 3) { + ea->fcport->n2n_link_reset_cnt++; + vha->relogin_jif = jiffies + 2 * HZ; + /* + * PRLI failed. Reset link to kick start + * state machine + */ + set_bit(N2N_LINK_RESET, &vha->dpc_flags); + } else { + ql_log(ql_log_warn, vha, 0x2119, + "%s %d %8phC Unable to reconnect\n", + __func__, __LINE__, + ea->fcport->port_name); + } + } else { + /* + * switch connect. login failed. Take connection down + * and allow relogin to retrigger + */ + if (NVME_FCP_TARGET(ea->fcport)) { + ql_dbg(ql_dbg_disc, vha, 0x2118, + "%s %d %8phC post %s prli\n", + __func__, __LINE__, + ea->fcport->port_name, + (ea->fcport->fc4_type & FS_FC4TYPE_NVME) + ? "NVMe" : "FCP"); + if (vha->hw->fc4_type_priority == FC4_PRIORITY_NVME) + ea->fcport->fc4_type &= ~FS_FC4TYPE_NVME; + else + ea->fcport->fc4_type &= ~FS_FC4TYPE_FCP; + } + + ea->fcport->flags &= ~FCF_ASYNC_SENT; + ea->fcport->keep_nport_handle = 0; + ea->fcport->logout_on_delete = 1; + qlt_schedule_sess_for_deletion(ea->fcport); + } break; } } @@ -3288,6 +3331,8 @@ j, fwdt->dump_size); dump_size += fwdt->dump_size; } + /* Add space for spare MPI fw dump. */ + dump_size += ha->fwdt[1].dump_size; } else { req_q_size = req->length * sizeof(request_t); rsp_q_size = rsp->length * sizeof(response_t); @@ -4603,18 +4648,18 @@ nv->firmware_options[1] = BIT_7 | BIT_5; nv->add_firmware_options[0] = BIT_5; nv->add_firmware_options[1] = BIT_5 | BIT_4; - nv->frame_payload_size = 2048; + nv->frame_payload_size = cpu_to_le16(2048); nv->special_options[1] = BIT_7; } else if (IS_QLA2200(ha)) { nv->firmware_options[0] = BIT_2 | BIT_1; nv->firmware_options[1] = BIT_7 | BIT_5; nv->add_firmware_options[0] = BIT_5; nv->add_firmware_options[1] = BIT_5 | BIT_4; - nv->frame_payload_size = 1024; + nv->frame_payload_size = cpu_to_le16(1024); } else if (IS_QLA2100(ha)) { nv->firmware_options[0] = BIT_3 | BIT_1; nv->firmware_options[1] = BIT_5; - nv->frame_payload_size = 1024; + nv->frame_payload_size = cpu_to_le16(1024); } nv->max_iocb_allocation = cpu_to_le16(256); --- linux-azure-5.8-5.8.0.orig/drivers/scsi/qla2xxx/qla_inline.h +++ linux-azure-5.8-5.8.0/drivers/scsi/qla2xxx/qla_inline.h @@ -207,10 +207,15 @@ return sp; } +void qla2xxx_rel_done_warning(srb_t *sp, int res); +void qla2xxx_rel_free_warning(srb_t *sp); + static inline void qla2xxx_rel_qpair_sp(struct qla_qpair *qpair, srb_t *sp) { sp->qpair = NULL; + sp->done = qla2xxx_rel_done_warning; + sp->free = qla2xxx_rel_free_warning; mempool_free(sp, qpair->srb_mempool); QLA_QPAIR_MARK_NOT_BUSY(qpair); } --- linux-azure-5.8-5.8.0.orig/drivers/scsi/qla2xxx/qla_iocb.c +++ linux-azure-5.8-5.8.0/drivers/scsi/qla2xxx/qla_iocb.c @@ -2305,8 +2305,8 @@ pkt = req->ring_ptr; memset(pkt, 0, REQUEST_ENTRY_SIZE); if (IS_QLAFX00(ha)) { - wrt_reg_byte((void __iomem *)&pkt->entry_count, req_cnt); - wrt_reg_word((void __iomem *)&pkt->handle, handle); + wrt_reg_byte((u8 __force __iomem *)&pkt->entry_count, req_cnt); + wrt_reg_dword((__le32 __force __iomem *)&pkt->handle, handle); } else { pkt->entry_count = req_cnt; pkt->handle = handle; --- linux-azure-5.8-5.8.0.orig/drivers/scsi/qla2xxx/qla_isr.c +++ linux-azure-5.8-5.8.0/drivers/scsi/qla2xxx/qla_isr.c @@ -766,7 +766,7 @@ ql_log(ql_log_warn, vha, 0x02f0, "MPI Heartbeat stop. MPI reset is%s needed. " "MB0[%xh] MB1[%xh] MB2[%xh] MB3[%xh]\n", - mb[0] & BIT_8 ? "" : " not", + mb[1] & BIT_8 ? "" : " not", mb[0], mb[1], mb[2], mb[3]); if ((mb[1] & BIT_8) == 0) --- linux-azure-5.8-5.8.0.orig/drivers/scsi/qla2xxx/qla_mbx.c +++ linux-azure-5.8-5.8.0/drivers/scsi/qla2xxx/qla_mbx.c @@ -333,14 +333,6 @@ if (time_after(jiffies, wait_time)) break; - /* - * Check if it's UNLOADING, cause we cannot poll in - * this case, or else a NULL pointer dereference - * is triggered. - */ - if (unlikely(test_bit(UNLOADING, &base_vha->dpc_flags))) - return QLA_FUNCTION_TIMEOUT; - /* Check for pending interrupts. */ qla2x00_poll(ha->rsp_q_map[0]); @@ -3952,9 +3944,6 @@ fcport->scan_state = QLA_FCPORT_FOUND; fcport->n2n_flag = 1; fcport->keep_nport_handle = 1; - fcport->fc4_type = FS_FC4TYPE_FCP; - if (vha->flags.nvme_enabled) - fcport->fc4_type |= FS_FC4TYPE_NVME; if (wwn_to_u64(vha->port_name) > wwn_to_u64(fcport->port_name)) { @@ -4234,7 +4223,8 @@ if (MSW(addr) || IS_FWI2_CAPABLE(vha->hw)) { mcp->mb[0] = MBC_DUMP_RISC_RAM_EXTENDED; mcp->mb[8] = MSW(addr); - mcp->out_mb = MBX_8|MBX_0; + mcp->mb[10] = 0; + mcp->out_mb = MBX_10|MBX_8|MBX_0; } else { mcp->mb[0] = MBC_DUMP_RISC_RAM; mcp->out_mb = MBX_0; @@ -4916,7 +4906,7 @@ "Done %s.\n", __func__); } - dma_free_coherent(&ha->pdev->dev, DMA_POOL_SIZE, + dma_free_coherent(&ha->pdev->dev, ELS_CMD_MAP_SIZE, els_cmd_map, els_cmd_map_dma); return rval; --- linux-azure-5.8-5.8.0.orig/drivers/scsi/qla2xxx/qla_nvme.c +++ linux-azure-5.8-5.8.0/drivers/scsi/qla2xxx/qla_nvme.c @@ -536,6 +536,11 @@ struct nvme_private *priv = fd->private; struct qla_nvme_rport *qla_rport = rport->private; + if (!priv) { + /* nvme association has been torn down */ + return rval; + } + fcport = qla_rport->fcport; if (!qpair || !fcport || (qpair && !qpair->fw_started) || @@ -678,7 +683,7 @@ struct nvme_fc_port_template *tmpl; struct qla_hw_data *ha; struct nvme_fc_port_info pinfo; - int ret = EINVAL; + int ret = -EINVAL; if (!IS_ENABLED(CONFIG_NVME_FC)) return ret; --- linux-azure-5.8-5.8.0.orig/drivers/scsi/qla2xxx/qla_os.c +++ linux-azure-5.8-5.8.0/drivers/scsi/qla2xxx/qla_os.c @@ -2017,6 +2017,11 @@ /* Determine queue resources */ ha->max_req_queues = ha->max_rsp_queues = 1; ha->msix_count = QLA_BASE_VECTORS; + + /* Check if FW supports MQ or not */ + if (!(ha->fw_attributes & BIT_6)) + goto mqiobase_exit; + if (!ql2xmqsupport || !ql2xnvmeenable || (!IS_QLA25XX(ha) && !IS_QLA81XX(ha))) goto mqiobase_exit; @@ -2829,10 +2834,6 @@ /* This may fail but that's ok */ pci_enable_pcie_error_reporting(pdev); - /* Turn off T10-DIF when FC-NVMe is enabled */ - if (ql2xnvmeenable) - ql2xenabledif = 0; - ha = kzalloc(sizeof(struct qla_hw_data), GFP_KERNEL); if (!ha) { ql_log_pci(ql_log_fatal, pdev, 0x0009, --- linux-azure-5.8-5.8.0.orig/drivers/scsi/qla2xxx/qla_target.c +++ linux-azure-5.8-5.8.0/drivers/scsi/qla2xxx/qla_target.c @@ -1229,14 +1229,15 @@ case DSC_DELETE_PEND: return; case DSC_DELETED: - if (tgt && tgt->tgt_stop && (tgt->sess_count == 0)) - wake_up_all(&tgt->waitQ); - if (sess->vha->fcport_count == 0) - wake_up_all(&sess->vha->fcport_waitQ); - if (!sess->plogi_link[QLT_PLOGI_LINK_SAME_WWN] && - !sess->plogi_link[QLT_PLOGI_LINK_CONFLICT]) + !sess->plogi_link[QLT_PLOGI_LINK_CONFLICT]) { + if (tgt && tgt->tgt_stop && tgt->sess_count == 0) + wake_up_all(&tgt->waitQ); + + if (sess->vha->fcport_count == 0) + wake_up_all(&sess->vha->fcport_waitQ); return; + } break; case DSC_UPD_FCPORT: /* @@ -1270,7 +1271,7 @@ qla24xx_chk_fcp_state(sess); - ql_dbg(ql_dbg_tgt, sess->vha, 0xe001, + ql_dbg(ql_dbg_disc, sess->vha, 0xe001, "Scheduling sess %p for deletion %8phC\n", sess, sess->port_name); @@ -5668,7 +5669,7 @@ /* found existing exchange */ qpair->retry_term_cnt++; if (qpair->retry_term_cnt >= 5) { - rc = EIO; + rc = -EIO; qpair->retry_term_cnt = 0; ql_log(ql_log_warn, vha, 0xffff, "Unable to send ABTS Respond. Dumping firmware.\n"); --- linux-azure-5.8-5.8.0.orig/drivers/scsi/qla2xxx/qla_tmpl.c +++ linux-azure-5.8-5.8.0/drivers/scsi/qla2xxx/qla_tmpl.c @@ -12,33 +12,6 @@ #define IOBASE(vha) IOBAR(ISPREG(vha)) #define INVALID_ENTRY ((struct qla27xx_fwdt_entry *)0xffffffffffffffffUL) -/* hardware_lock assumed held. */ -static void -qla27xx_write_remote_reg(struct scsi_qla_host *vha, - u32 addr, u32 data) -{ - struct device_reg_24xx __iomem *reg = &vha->hw->iobase->isp24; - - ql_dbg(ql_dbg_misc, vha, 0xd300, - "%s: addr/data = %xh/%xh\n", __func__, addr, data); - - wrt_reg_dword(®->iobase_addr, 0x40); - wrt_reg_dword(®->iobase_c4, data); - wrt_reg_dword(®->iobase_window, addr); -} - -void -qla27xx_reset_mpi(scsi_qla_host_t *vha) -{ - ql_dbg(ql_dbg_misc + ql_dbg_verbose, vha, 0xd301, - "Entered %s.\n", __func__); - - qla27xx_write_remote_reg(vha, 0x104050, 0x40004); - qla27xx_write_remote_reg(vha, 0x10405c, 0x4); - - vha->hw->stat.num_mpi_reset++; -} - static inline void qla27xx_insert16(uint16_t value, void *buf, ulong *len) { @@ -956,7 +929,8 @@ static inline int qla27xx_verify_template_checksum(struct qla27xx_fwdt_template *tmp) { - return qla27xx_template_checksum(tmp, tmp->template_size) == 0; + return qla27xx_template_checksum(tmp, + le32_to_cpu(tmp->template_size)) == 0; } static inline int @@ -972,7 +946,7 @@ ulong len = 0; if (qla27xx_fwdt_template_valid(tmp)) { - len = tmp->template_size; + len = le32_to_cpu(tmp->template_size); tmp = memcpy(buf, tmp, len); ql27xx_edit_template(vha, tmp); qla27xx_walk_template(vha, tmp, buf, &len); @@ -988,7 +962,7 @@ ulong len = 0; if (qla27xx_fwdt_template_valid(tmp)) { - len = tmp->template_size; + len = le32_to_cpu(tmp->template_size); qla27xx_walk_template(vha, tmp, NULL, &len); } @@ -1000,7 +974,7 @@ { struct qla27xx_fwdt_template *tmp = p; - return tmp->template_size; + return le32_to_cpu(tmp->template_size); } int @@ -1028,7 +1002,6 @@ qla27xx_mpi_fwdump(scsi_qla_host_t *vha, int hardware_locked) { ulong flags = 0; - bool need_mpi_reset = true; #ifndef __CHECKER__ if (!hardware_locked) @@ -1036,14 +1009,20 @@ #endif if (!vha->hw->mpi_fw_dump) { ql_log(ql_log_warn, vha, 0x02f3, "-> mpi_fwdump no buffer\n"); - } else if (vha->hw->mpi_fw_dumped) { - ql_log(ql_log_warn, vha, 0x02f4, - "-> MPI firmware already dumped (%p) -- ignoring request\n", - vha->hw->mpi_fw_dump); } else { struct fwdt *fwdt = &vha->hw->fwdt[1]; ulong len; void *buf = vha->hw->mpi_fw_dump; + bool walk_template_only = false; + + if (vha->hw->mpi_fw_dumped) { + /* Use the spare area for any further dumps. */ + buf += fwdt->dump_size; + walk_template_only = true; + ql_log(ql_log_warn, vha, 0x02f4, + "-> MPI firmware already dumped -- dump saving to temporary buffer %p.\n", + buf); + } ql_log(ql_log_warn, vha, 0x02f5, "-> fwdt1 running...\n"); if (!fwdt->template) { @@ -1058,9 +1037,10 @@ ql_log(ql_log_warn, vha, 0x02f7, "-> fwdt1 fwdump residual=%+ld\n", fwdt->dump_size - len); - } else { - need_mpi_reset = false; } + vha->hw->stat.num_mpi_reset++; + if (walk_template_only) + goto bailout; vha->hw->mpi_fw_dump_len = len; vha->hw->mpi_fw_dumped = 1; @@ -1072,8 +1052,6 @@ } bailout: - if (need_mpi_reset) - qla27xx_reset_mpi(vha); #ifndef __CHECKER__ if (!hardware_locked) spin_unlock_irqrestore(&vha->hw->hardware_lock, flags); --- linux-azure-5.8-5.8.0.orig/drivers/scsi/qla2xxx/qla_tmpl.h +++ linux-azure-5.8-5.8.0/drivers/scsi/qla2xxx/qla_tmpl.h @@ -13,7 +13,7 @@ struct __packed qla27xx_fwdt_template { __le32 template_type; __le32 entry_offset; - uint32_t template_size; + __le32 template_size; uint32_t count; /* borrow field for running/residual count */ __le32 entry_count; --- linux-azure-5.8-5.8.0.orig/drivers/scsi/qla4xxx/ql4_os.c +++ linux-azure-5.8-5.8.0/drivers/scsi/qla4xxx/ql4_os.c @@ -1220,7 +1220,7 @@ le64_to_cpu(ql_iscsi_stats->iscsi_sequence_error); exit_host_stats: if (ql_iscsi_stats) - dma_free_coherent(&ha->pdev->dev, host_stats_size, + dma_free_coherent(&ha->pdev->dev, stats_size, ql_iscsi_stats, iscsi_stats_dma); ql4_printk(KERN_INFO, ha, "%s: Get host stats done\n", --- linux-azure-5.8-5.8.0.orig/drivers/scsi/scsi_debug.c +++ linux-azure-5.8-5.8.0/drivers/scsi/scsi_debug.c @@ -5486,9 +5486,11 @@ u64 d = ktime_get_boottime_ns() - ns_from_boot; if (kt <= d) { /* elapsed duration >= kt */ + spin_lock_irqsave(&sqp->qc_lock, iflags); sqcp->a_cmnd = NULL; atomic_dec(&devip->num_in_q); clear_bit(k, sqp->in_use_bm); + spin_unlock_irqrestore(&sqp->qc_lock, iflags); if (new_sd_dp) kfree(sd_dp); /* call scsi_done() from this thread */ @@ -6610,6 +6612,12 @@ pr_err("submit_queues must be 1 or more\n"); return -EINVAL; } + + if ((sdebug_max_queue > SDEBUG_CANQUEUE) || (sdebug_max_queue < 1)) { + pr_err("max_queue must be in range [1, %d]\n", SDEBUG_CANQUEUE); + return -EINVAL; + } + sdebug_q_arr = kcalloc(submit_queues, sizeof(struct sdebug_queue), GFP_KERNEL); if (sdebug_q_arr == NULL) @@ -6627,7 +6635,7 @@ k = sdeb_zbc_model_str(sdeb_zbc_model_s); if (k < 0) { ret = k; - goto free_vm; + goto free_q_arr; } sdeb_zbc_model = k; switch (sdeb_zbc_model) { @@ -6640,7 +6648,8 @@ break; default: pr_err("Invalid ZBC model\n"); - return -EINVAL; + ret = -EINVAL; + goto free_q_arr; } } if (sdeb_zbc_model != BLK_ZONED_NONE) { @@ -6767,6 +6776,7 @@ sdebug_erase_all_stores(false); xa_destroy(per_store_ap); + kfree(sdebug_q_arr); } device_initcall(scsi_debug_init); --- linux-azure-5.8-5.8.0.orig/drivers/scsi/scsi_lib.c +++ linux-azure-5.8-5.8.0/drivers/scsi/scsi_lib.c @@ -250,7 +250,8 @@ req = blk_get_request(sdev->request_queue, data_direction == DMA_TO_DEVICE ? - REQ_OP_SCSI_OUT : REQ_OP_SCSI_IN, BLK_MQ_REQ_PREEMPT); + REQ_OP_SCSI_OUT : REQ_OP_SCSI_IN, + rq_flags & RQF_PM ? BLK_MQ_REQ_PM : 0); if (IS_ERR(req)) return ret; rq = scsi_req(req); @@ -531,7 +532,7 @@ } } -static void scsi_free_sgtables(struct scsi_cmnd *cmd) +void scsi_free_sgtables(struct scsi_cmnd *cmd) { if (cmd->sdb.table.nents) sg_free_table_chained(&cmd->sdb.table, @@ -540,6 +541,7 @@ sg_free_table_chained(&cmd->prot_sdb->table, SCSI_INLINE_PROT_SG_CNT); } +EXPORT_SYMBOL_GPL(scsi_free_sgtables); static void scsi_mq_uninit_cmd(struct scsi_cmnd *cmd) { @@ -967,7 +969,7 @@ } /** - * scsi_init_io - SCSI I/O initialization function. + * scsi_alloc_sgtables - allocate S/G tables for a command * @cmd: command descriptor we wish to initialize * * Returns: @@ -975,7 +977,7 @@ * * BLK_STS_RESOURCE - if the failure is retryable * * BLK_STS_IOERR - if the failure is fatal */ -blk_status_t scsi_init_io(struct scsi_cmnd *cmd) +blk_status_t scsi_alloc_sgtables(struct scsi_cmnd *cmd) { struct scsi_device *sdev = cmd->device; struct request *rq = cmd->request; @@ -1067,7 +1069,7 @@ scsi_free_sgtables(cmd); return ret; } -EXPORT_SYMBOL(scsi_init_io); +EXPORT_SYMBOL(scsi_alloc_sgtables); /** * scsi_initialize_rq - initialize struct scsi_cmnd partially @@ -1155,7 +1157,7 @@ * submit a request without an attached bio. */ if (req->bio) { - blk_status_t ret = scsi_init_io(cmd); + blk_status_t ret = scsi_alloc_sgtables(cmd); if (unlikely(ret != BLK_STS_OK)) return ret; } else { @@ -1195,7 +1197,6 @@ struct request *req) { struct scsi_cmnd *cmd = blk_mq_rq_to_pdu(req); - blk_status_t ret; if (!blk_rq_bytes(req)) cmd->sc_data_direction = DMA_NONE; @@ -1205,20 +1206,16 @@ cmd->sc_data_direction = DMA_FROM_DEVICE; if (blk_rq_is_scsi(req)) - ret = scsi_setup_scsi_cmnd(sdev, req); - else - ret = scsi_setup_fs_cmnd(sdev, req); - - if (ret != BLK_STS_OK) - scsi_free_sgtables(cmd); - - return ret; + return scsi_setup_scsi_cmnd(sdev, req); + return scsi_setup_fs_cmnd(sdev, req); } static blk_status_t scsi_prep_state_check(struct scsi_device *sdev, struct request *req) { switch (sdev->sdev_state) { + case SDEV_CREATED: + return BLK_STS_OK; case SDEV_OFFLINE: case SDEV_TRANSPORT_OFFLINE: /* @@ -1245,18 +1242,18 @@ return BLK_STS_RESOURCE; case SDEV_QUIESCE: /* - * If the devices is blocked we defer normal commands. + * If the device is blocked we only accept power management + * commands. */ - if (req && !(req->rq_flags & RQF_PREEMPT)) + if (req && WARN_ON_ONCE(!(req->rq_flags & RQF_PM))) return BLK_STS_RESOURCE; return BLK_STS_OK; default: /* * For any other not fully online state we only allow - * special commands. In particular any user initiated - * command is not allowed. + * power management commands. */ - if (req && !(req->rq_flags & RQF_PREEMPT)) + if (req && !(req->rq_flags & RQF_PM)) return BLK_STS_IOERR; return BLK_STS_OK; } @@ -2511,15 +2508,13 @@ EXPORT_SYMBOL_GPL(sdev_evt_send_simple); /** - * scsi_device_quiesce - Block user issued commands. + * scsi_device_quiesce - Block all commands except power management. * @sdev: scsi device to quiesce. * * This works by trying to transition to the SDEV_QUIESCE state * (which must be a legal transition). When the device is in this - * state, only special requests will be accepted, all others will - * be deferred. Since special requests may also be requeued requests, - * a successful return doesn't guarantee the device will be - * totally quiescent. + * state, only power management requests will be accepted, all others will + * be deferred. * * Must be called with user context, may sleep. * @@ -2581,12 +2576,12 @@ * device deleted during suspend) */ mutex_lock(&sdev->state_mutex); + if (sdev->sdev_state == SDEV_QUIESCE) + scsi_device_set_state(sdev, SDEV_RUNNING); if (sdev->quiesced_by) { sdev->quiesced_by = NULL; blk_clear_pm_only(sdev->request_queue); } - if (sdev->sdev_state == SDEV_QUIESCE) - scsi_device_set_state(sdev, SDEV_RUNNING); mutex_unlock(&sdev->state_mutex); } EXPORT_SYMBOL(scsi_device_resume); @@ -2841,8 +2836,10 @@ mutex_lock(&sdev->state_mutex); ret = scsi_internal_device_block_nowait(sdev); mutex_unlock(&sdev->state_mutex); - if (ret) + if (ret) { + scsi_device_put(sdev); break; + } } /* @@ -2949,6 +2946,78 @@ } EXPORT_SYMBOL(sdev_enable_disk_events); +static unsigned char designator_prio(const unsigned char *d) +{ + if (d[1] & 0x30) + /* not associated with LUN */ + return 0; + + if (d[3] == 0) + /* invalid length */ + return 0; + + /* + * Order of preference for lun descriptor: + * - SCSI name string + * - NAA IEEE Registered Extended + * - EUI-64 based 16-byte + * - EUI-64 based 12-byte + * - NAA IEEE Registered + * - NAA IEEE Extended + * - EUI-64 based 8-byte + * - SCSI name string (truncated) + * - T10 Vendor ID + * as longer descriptors reduce the likelyhood + * of identification clashes. + */ + + switch (d[1] & 0xf) { + case 8: + /* SCSI name string, variable-length UTF-8 */ + return 9; + case 3: + switch (d[4] >> 4) { + case 6: + /* NAA registered extended */ + return 8; + case 5: + /* NAA registered */ + return 5; + case 4: + /* NAA extended */ + return 4; + case 3: + /* NAA locally assigned */ + return 1; + default: + break; + } + break; + case 2: + switch (d[3]) { + case 16: + /* EUI64-based, 16 byte */ + return 7; + case 12: + /* EUI64-based, 12 byte */ + return 6; + case 8: + /* EUI64-based, 8 byte */ + return 3; + default: + break; + } + break; + case 1: + /* T10 vendor ID */ + return 1; + default: + break; + } + + return 0; +} + /** * scsi_vpd_lun_id - return a unique device identification * @sdev: SCSI device @@ -2965,7 +3034,7 @@ */ int scsi_vpd_lun_id(struct scsi_device *sdev, char *id, size_t id_len) { - u8 cur_id_type = 0xff; + u8 cur_id_prio = 0; u8 cur_id_size = 0; const unsigned char *d, *cur_id_str; const struct scsi_vpd *vpd_pg83; @@ -2978,20 +3047,6 @@ return -ENXIO; } - /* - * Look for the correct descriptor. - * Order of preference for lun descriptor: - * - SCSI name string - * - NAA IEEE Registered Extended - * - EUI-64 based 16-byte - * - EUI-64 based 12-byte - * - NAA IEEE Registered - * - NAA IEEE Extended - * - T10 Vendor ID - * as longer descriptors reduce the likelyhood - * of identification clashes. - */ - /* The id string must be at least 20 bytes + terminating NULL byte */ if (id_len < 21) { rcu_read_unlock(); @@ -3001,8 +3056,9 @@ memset(id, 0, id_len); d = vpd_pg83->data + 4; while (d < vpd_pg83->data + vpd_pg83->len) { - /* Skip designators not referring to the LUN */ - if ((d[1] & 0x30) != 0x00) + u8 prio = designator_prio(d); + + if (prio == 0 || cur_id_prio > prio) goto next_desig; switch (d[1] & 0xf) { @@ -3010,28 +3066,19 @@ /* T10 Vendor ID */ if (cur_id_size > d[3]) break; - /* Prefer anything */ - if (cur_id_type > 0x01 && cur_id_type != 0xff) - break; + cur_id_prio = prio; cur_id_size = d[3]; if (cur_id_size + 4 > id_len) cur_id_size = id_len - 4; cur_id_str = d + 4; - cur_id_type = d[1] & 0xf; id_size = snprintf(id, id_len, "t10.%*pE", cur_id_size, cur_id_str); break; case 0x2: /* EUI-64 */ - if (cur_id_size > d[3]) - break; - /* Prefer NAA IEEE Registered Extended */ - if (cur_id_type == 0x3 && - cur_id_size == d[3]) - break; + cur_id_prio = prio; cur_id_size = d[3]; cur_id_str = d + 4; - cur_id_type = d[1] & 0xf; switch (cur_id_size) { case 8: id_size = snprintf(id, id_len, @@ -3049,17 +3096,14 @@ cur_id_str); break; default: - cur_id_size = 0; break; } break; case 0x3: /* NAA */ - if (cur_id_size > d[3]) - break; + cur_id_prio = prio; cur_id_size = d[3]; cur_id_str = d + 4; - cur_id_type = d[1] & 0xf; switch (cur_id_size) { case 8: id_size = snprintf(id, id_len, @@ -3072,26 +3116,25 @@ cur_id_str); break; default: - cur_id_size = 0; break; } break; case 0x8: /* SCSI name string */ - if (cur_id_size + 4 > d[3]) + if (cur_id_size > d[3]) break; /* Prefer others for truncated descriptor */ - if (cur_id_size && d[3] > id_len) - break; + if (d[3] > id_len) { + prio = 2; + if (cur_id_prio > prio) + break; + } + cur_id_prio = prio; cur_id_size = id_size = d[3]; cur_id_str = d + 4; - cur_id_type = d[1] & 0xf; if (cur_id_size >= id_len) cur_id_size = id_len - 1; memcpy(id, cur_id_str, cur_id_size); - /* Decrease priority for truncated descriptor */ - if (cur_id_size != id_size) - cur_id_size = 6; break; default: break; --- linux-azure-5.8-5.8.0.orig/drivers/scsi/scsi_scan.c +++ linux-azure-5.8-5.8.0/drivers/scsi/scsi_scan.c @@ -1714,15 +1714,16 @@ */ static struct async_scan_data *scsi_prep_async_scan(struct Scsi_Host *shost) { - struct async_scan_data *data; + struct async_scan_data *data = NULL; unsigned long flags; if (strncmp(scsi_scan_type, "sync", 4) == 0) return NULL; + mutex_lock(&shost->scan_mutex); if (shost->async_scan) { shost_printk(KERN_DEBUG, shost, "%s called twice\n", __func__); - return NULL; + goto err; } data = kmalloc(sizeof(*data), GFP_KERNEL); @@ -1733,7 +1734,6 @@ goto err; init_completion(&data->prev_finished); - mutex_lock(&shost->scan_mutex); spin_lock_irqsave(shost->host_lock, flags); shost->async_scan = 1; spin_unlock_irqrestore(shost->host_lock, flags); @@ -1748,6 +1748,7 @@ return data; err: + mutex_unlock(&shost->scan_mutex); kfree(data); return NULL; } --- linux-azure-5.8-5.8.0.orig/drivers/scsi/scsi_transport_iscsi.c +++ linux-azure-5.8-5.8.0/drivers/scsi/scsi_transport_iscsi.c @@ -132,7 +132,11 @@ char *buf) { struct iscsi_internal *priv = dev_to_iscsi_internal(dev); - return sprintf(buf, "%llu\n", (unsigned long long)iscsi_handle(priv->iscsi_transport)); + + if (!capable(CAP_SYS_ADMIN)) + return -EACCES; + return sysfs_emit(buf, "%llu\n", + (unsigned long long)iscsi_handle(priv->iscsi_transport)); } static DEVICE_ATTR(handle, S_IRUGO, show_transport_handle, NULL); @@ -142,7 +146,7 @@ struct device_attribute *attr,char *buf) \ { \ struct iscsi_internal *priv = dev_to_iscsi_internal(dev); \ - return sprintf(buf, format"\n", priv->iscsi_transport->name); \ + return sysfs_emit(buf, format"\n", priv->iscsi_transport->name);\ } \ static DEVICE_ATTR(name, S_IRUGO, show_transport_##name, NULL); @@ -183,7 +187,7 @@ show_ep_handle(struct device *dev, struct device_attribute *attr, char *buf) { struct iscsi_endpoint *ep = iscsi_dev_to_endpoint(dev); - return sprintf(buf, "%llu\n", (unsigned long long) ep->id); + return sysfs_emit(buf, "%llu\n", (unsigned long long) ep->id); } static ISCSI_ATTR(ep, handle, S_IRUGO, show_ep_handle, NULL); @@ -2314,7 +2318,9 @@ return conn; release_conn_ref: - put_device(&conn->dev); + device_unregister(&conn->dev); + put_device(&session->dev); + return NULL; release_parent_ref: put_device(&session->dev); free_conn: @@ -2882,6 +2888,9 @@ struct iscsi_cls_session *session; int err = 0, value = 0; + if (ev->u.set_param.len > PAGE_SIZE) + return -EINVAL; + session = iscsi_session_lookup(ev->u.set_param.sid); conn = iscsi_conn_lookup(ev->u.set_param.sid, ev->u.set_param.cid); if (!conn || !session) @@ -3029,6 +3038,9 @@ if (!transport->set_host_param) return -ENOSYS; + if (ev->u.set_host_param.len > PAGE_SIZE) + return -EINVAL; + shost = scsi_host_lookup(ev->u.set_host_param.host_no); if (!shost) { printk(KERN_ERR "set_host_param could not find host no %u\n", @@ -3291,7 +3303,7 @@ pr_err("%s could not find host no %u\n", __func__, ev->u.set_flashnode.host_no); err = -ENODEV; - goto put_host; + goto exit_set_fnode; } idx = ev->u.set_flashnode.flashnode_idx; @@ -3616,6 +3628,7 @@ { int err = 0; u32 portid; + u32 pdu_len; struct iscsi_uevent *ev = nlmsg_data(nlh); struct iscsi_transport *transport = NULL; struct iscsi_internal *priv; @@ -3623,6 +3636,9 @@ struct iscsi_cls_conn *conn; struct iscsi_endpoint *ep = NULL; + if (!netlink_capable(skb, CAP_SYS_ADMIN)) + return -EPERM; + if (nlh->nlmsg_type == ISCSI_UEVENT_PATH_UPDATE) *group = ISCSI_NL_GRP_UIP; else @@ -3755,6 +3771,14 @@ err = -EINVAL; break; case ISCSI_UEVENT_SEND_PDU: + pdu_len = nlh->nlmsg_len - sizeof(*nlh) - sizeof(*ev); + + if ((ev->u.send_pdu.hdr_size > pdu_len) || + (ev->u.send_pdu.data_size > (pdu_len - ev->u.send_pdu.hdr_size))) { + err = -EINVAL; + break; + } + conn = iscsi_conn_lookup(ev->u.send_pdu.sid, ev->u.send_pdu.cid); if (conn) { mutex_lock(&conn_mutex); @@ -3959,7 +3983,7 @@ conn->state < ARRAY_SIZE(connection_state_names)) state = connection_state_names[conn->state]; - return sprintf(buf, "%s\n", state); + return sysfs_emit(buf, "%s\n", state); } static ISCSI_CLASS_ATTR(conn, state, S_IRUGO, show_conn_state, NULL); @@ -4187,7 +4211,7 @@ char *buf) { struct iscsi_cls_session *session = iscsi_dev_to_session(dev->parent); - return sprintf(buf, "%s\n", iscsi_session_state_name(session->state)); + return sysfs_emit(buf, "%s\n", iscsi_session_state_name(session->state)); } static ISCSI_CLASS_ATTR(priv_sess, state, S_IRUGO, show_priv_session_state, NULL); @@ -4196,7 +4220,7 @@ char *buf) { struct iscsi_cls_session *session = iscsi_dev_to_session(dev->parent); - return sprintf(buf, "%d\n", session->creator); + return sysfs_emit(buf, "%d\n", session->creator); } static ISCSI_CLASS_ATTR(priv_sess, creator, S_IRUGO, show_priv_session_creator, NULL); @@ -4205,7 +4229,7 @@ char *buf) { struct iscsi_cls_session *session = iscsi_dev_to_session(dev->parent); - return sprintf(buf, "%d\n", session->target_id); + return sysfs_emit(buf, "%d\n", session->target_id); } static ISCSI_CLASS_ATTR(priv_sess, target_id, S_IRUGO, show_priv_session_target_id, NULL); @@ -4218,8 +4242,8 @@ struct iscsi_cls_session *session = \ iscsi_dev_to_session(dev->parent); \ if (session->field == -1) \ - return sprintf(buf, "off\n"); \ - return sprintf(buf, format"\n", session->field); \ + return sysfs_emit(buf, "off\n"); \ + return sysfs_emit(buf, format"\n", session->field); \ } #define iscsi_priv_session_attr_store(field) \ --- linux-azure-5.8-5.8.0.orig/drivers/scsi/scsi_transport_spi.c +++ linux-azure-5.8-5.8.0/drivers/scsi/scsi_transport_spi.c @@ -117,12 +117,16 @@ sshdr = &sshdr_tmp; for(i = 0; i < DV_RETRIES; i++) { + /* + * The purpose of the RQF_PM flag below is to bypass the + * SDEV_QUIESCE state. + */ result = scsi_execute(sdev, cmd, dir, buffer, bufflen, sense, sshdr, DV_TIMEOUT, /* retries */ 1, REQ_FAILFAST_DEV | REQ_FAILFAST_TRANSPORT | REQ_FAILFAST_DRIVER, - 0, NULL); + RQF_PM, NULL); if (driver_byte(result) != DRIVER_SENSE || sshdr->sense_key != UNIT_ATTENTION) break; @@ -1005,23 +1009,26 @@ */ lock_system_sleep(); + if (scsi_autopm_get_device(sdev)) + goto unlock_system_sleep; + if (unlikely(spi_dv_in_progress(starget))) - goto unlock; + goto put_autopm; if (unlikely(scsi_device_get(sdev))) - goto unlock; + goto put_autopm; spi_dv_in_progress(starget) = 1; buffer = kzalloc(len, GFP_KERNEL); if (unlikely(!buffer)) - goto out_put; + goto put_sdev; /* We need to verify that the actual device will quiesce; the * later target quiesce is just a nice to have */ if (unlikely(scsi_device_quiesce(sdev))) - goto out_free; + goto free_buffer; scsi_target_quiesce(starget); @@ -1041,12 +1048,16 @@ spi_initial_dv(starget) = 1; - out_free: +free_buffer: kfree(buffer); - out_put: + +put_sdev: spi_dv_in_progress(starget) = 0; scsi_device_put(sdev); -unlock: +put_autopm: + scsi_autopm_put_device(sdev); + +unlock_system_sleep: unlock_system_sleep(); } EXPORT_SYMBOL(spi_dv_device); --- linux-azure-5.8-5.8.0.orig/drivers/scsi/scsi_transport_srp.c +++ linux-azure-5.8-5.8.0/drivers/scsi/scsi_transport_srp.c @@ -541,7 +541,14 @@ res = mutex_lock_interruptible(&rport->mutex); if (res) goto out; - scsi_target_block(&shost->shost_gendev); + if (rport->state != SRP_RPORT_FAIL_FAST) + /* + * sdev state must be SDEV_TRANSPORT_OFFLINE, transition + * to SDEV_BLOCK is illegal. Calling scsi_target_unblock() + * later is ok though, scsi_internal_device_unblock_nowait() + * treats SDEV_TRANSPORT_OFFLINE like SDEV_BLOCK. + */ + scsi_target_block(&shost->shost_gendev); res = rport->state != SRP_RPORT_LOST ? i->f->reconnect(rport) : -ENODEV; pr_debug("%s (state %d): transport.reconnect() returned %d\n", dev_name(&shost->shost_gendev), rport->state, res); --- linux-azure-5.8-5.8.0.orig/drivers/scsi/sd.c +++ linux-azure-5.8-5.8.0/drivers/scsi/sd.c @@ -674,9 +674,9 @@ put_unaligned_be16(spsp, &cdb[2]); put_unaligned_be32(len, &cdb[6]); - ret = scsi_execute_req(sdev, cdb, - send ? DMA_TO_DEVICE : DMA_FROM_DEVICE, - buffer, len, NULL, SD_TIMEOUT, SD_MAX_RETRIES, NULL); + ret = scsi_execute(sdev, cdb, send ? DMA_TO_DEVICE : DMA_FROM_DEVICE, + buffer, len, NULL, NULL, SD_TIMEOUT, SD_MAX_RETRIES, 0, + RQF_PM, NULL); return ret <= 0 ? ret : -EIO; } #endif /* CONFIG_BLK_SED_OPAL */ @@ -866,7 +866,7 @@ cmd->transfersize = data_len; rq->timeout = SD_TIMEOUT; - return scsi_init_io(cmd); + return scsi_alloc_sgtables(cmd); } static blk_status_t sd_setup_write_same16_cmnd(struct scsi_cmnd *cmd, @@ -897,7 +897,7 @@ cmd->transfersize = data_len; rq->timeout = unmap ? SD_TIMEOUT : SD_WRITE_SAME_TIMEOUT; - return scsi_init_io(cmd); + return scsi_alloc_sgtables(cmd); } static blk_status_t sd_setup_write_same10_cmnd(struct scsi_cmnd *cmd, @@ -928,7 +928,7 @@ cmd->transfersize = data_len; rq->timeout = unmap ? SD_TIMEOUT : SD_WRITE_SAME_TIMEOUT; - return scsi_init_io(cmd); + return scsi_alloc_sgtables(cmd); } static blk_status_t sd_setup_write_zeroes_cmnd(struct scsi_cmnd *cmd) @@ -948,8 +948,10 @@ } } - if (sdp->no_write_same) + if (sdp->no_write_same) { + rq->rq_flags |= RQF_QUIET; return BLK_STS_TARGET; + } if (sdkp->ws16 || lba > 0xffffffff || nr_blocks > 0xffff) return sd_setup_write_same16_cmnd(cmd, false); @@ -1069,7 +1071,7 @@ * knows how much to actually write. */ rq->__data_len = sdp->sector_size; - ret = scsi_init_io(cmd); + ret = scsi_alloc_sgtables(cmd); rq->__data_len = blk_rq_bytes(rq); return ret; @@ -1187,23 +1189,24 @@ unsigned int dif; bool dix; - ret = scsi_init_io(cmd); + ret = scsi_alloc_sgtables(cmd); if (ret != BLK_STS_OK) return ret; + ret = BLK_STS_IOERR; if (!scsi_device_online(sdp) || sdp->changed) { scmd_printk(KERN_ERR, cmd, "device offline or changed\n"); - return BLK_STS_IOERR; + goto fail; } if (blk_rq_pos(rq) + blk_rq_sectors(rq) > get_capacity(rq->rq_disk)) { scmd_printk(KERN_ERR, cmd, "access beyond end of device\n"); - return BLK_STS_IOERR; + goto fail; } if ((blk_rq_pos(rq) & mask) || (blk_rq_sectors(rq) & mask)) { scmd_printk(KERN_ERR, cmd, "request not aligned to the logical block size\n"); - return BLK_STS_IOERR; + goto fail; } /* @@ -1225,7 +1228,7 @@ if (req_op(rq) == REQ_OP_ZONE_APPEND) { ret = sd_zbc_prepare_zone_append(cmd, &lba, nr_blocks); if (ret) - return ret; + goto fail; } fua = rq->cmd_flags & REQ_FUA ? 0x8 : 0; @@ -1253,7 +1256,7 @@ } if (unlikely(ret != BLK_STS_OK)) - return ret; + goto fail; /* * We shouldn't disconnect in the middle of a sector, so with a dumb @@ -1277,10 +1280,12 @@ blk_rq_sectors(rq))); /* - * This indicates that the command is ready from our end to be - * queued. + * This indicates that the command is ready from our end to be queued. */ return BLK_STS_OK; +fail: + scsi_free_sgtables(cmd); + return ret; } static blk_status_t sd_init_command(struct scsi_cmnd *cmd) @@ -2966,26 +2971,32 @@ if (sdkp->device->type == TYPE_ZBC) { /* Host-managed */ - q->limits.zoned = BLK_ZONED_HM; + blk_queue_set_zoned(sdkp->disk, BLK_ZONED_HM); } else { sdkp->zoned = (buffer[8] >> 4) & 3; - if (sdkp->zoned == 1 && !disk_has_partitions(sdkp->disk)) { + if (sdkp->zoned == 1) { /* Host-aware */ - q->limits.zoned = BLK_ZONED_HA; + blk_queue_set_zoned(sdkp->disk, BLK_ZONED_HA); } else { - /* - * Treat drive-managed devices and host-aware devices - * with partitions as regular block devices. - */ - q->limits.zoned = BLK_ZONED_NONE; - if (sdkp->zoned == 2 && sdkp->first_scan) - sd_printk(KERN_NOTICE, sdkp, - "Drive-managed SMR disk\n"); + /* Regular disk or drive managed disk */ + blk_queue_set_zoned(sdkp->disk, BLK_ZONED_NONE); } } - if (blk_queue_is_zoned(q) && sdkp->first_scan) + + if (!sdkp->first_scan) + goto out; + + if (blk_queue_is_zoned(q)) { sd_printk(KERN_NOTICE, sdkp, "Host-%s zoned block device\n", q->limits.zoned == BLK_ZONED_HM ? "managed" : "aware"); + } else { + if (sdkp->zoned == 1) + sd_printk(KERN_NOTICE, sdkp, + "Host-aware SMR disk used as regular disk\n"); + else if (sdkp->zoned == 2) + sd_printk(KERN_NOTICE, sdkp, + "Drive-managed SMR disk\n"); + } out: kfree(buffer); @@ -3398,10 +3409,6 @@ sdkp->first_scan = 1; sdkp->max_medium_access_timeouts = SD_MAX_MEDIUM_TIMEOUTS; - error = sd_zbc_init_disk(sdkp); - if (error) - goto out_free_index; - sd_revalidate_disk(gd); gd->flags = GENHD_FL_EXT_DEVT; --- linux-azure-5.8-5.8.0.orig/drivers/scsi/sd.h +++ linux-azure-5.8-5.8.0/drivers/scsi/sd.h @@ -213,7 +213,6 @@ #ifdef CONFIG_BLK_DEV_ZONED -int sd_zbc_init_disk(struct scsi_disk *sdkp); void sd_zbc_release_disk(struct scsi_disk *sdkp); extern int sd_zbc_read_zones(struct scsi_disk *sdkp, unsigned char *buffer); extern void sd_zbc_print_zones(struct scsi_disk *sdkp); @@ -229,17 +228,6 @@ #else /* CONFIG_BLK_DEV_ZONED */ -static inline int sd_zbc_init(void) -{ - return 0; -} - -static inline int sd_zbc_init_disk(struct scsi_disk *sdkp) -{ - return 0; -} - -static inline void sd_zbc_exit(void) {} static inline void sd_zbc_release_disk(struct scsi_disk *sdkp) {} static inline int sd_zbc_read_zones(struct scsi_disk *sdkp, @@ -260,7 +248,7 @@ static inline unsigned int sd_zbc_complete(struct scsi_cmnd *cmd, unsigned int good_bytes, struct scsi_sense_hdr *sshdr) { - return 0; + return good_bytes; } static inline blk_status_t sd_zbc_prepare_zone_append(struct scsi_cmnd *cmd, --- linux-azure-5.8-5.8.0.orig/drivers/scsi/sd_zbc.c +++ linux-azure-5.8-5.8.0/drivers/scsi/sd_zbc.c @@ -59,6 +59,7 @@ zone.non_seq = 1; zone.len = logical_to_sectors(sdp, get_unaligned_be64(&buf[8])); + zone.capacity = zone.len; zone.start = logical_to_sectors(sdp, get_unaligned_be64(&buf[16])); zone.wp = logical_to_sectors(sdp, get_unaligned_be64(&buf[24])); if (zone.type != ZBC_ZONE_TYPE_CONV && @@ -633,6 +634,45 @@ return 0; } +void sd_zbc_print_zones(struct scsi_disk *sdkp) +{ + if (!sd_is_zoned(sdkp) || !sdkp->capacity) + return; + + if (sdkp->capacity & (sdkp->zone_blocks - 1)) + sd_printk(KERN_NOTICE, sdkp, + "%u zones of %u logical blocks + 1 runt zone\n", + sdkp->nr_zones - 1, + sdkp->zone_blocks); + else + sd_printk(KERN_NOTICE, sdkp, + "%u zones of %u logical blocks\n", + sdkp->nr_zones, + sdkp->zone_blocks); +} + +static int sd_zbc_init_disk(struct scsi_disk *sdkp) +{ + sdkp->zones_wp_offset = NULL; + spin_lock_init(&sdkp->zones_wp_offset_lock); + sdkp->rev_wp_offset = NULL; + mutex_init(&sdkp->rev_mutex); + INIT_WORK(&sdkp->zone_wp_offset_work, sd_zbc_update_wp_offset_workfn); + sdkp->zone_wp_update_buf = kzalloc(SD_BUF_SIZE, GFP_KERNEL); + if (!sdkp->zone_wp_update_buf) + return -ENOMEM; + + return 0; +} + +void sd_zbc_release_disk(struct scsi_disk *sdkp) +{ + kvfree(sdkp->zones_wp_offset); + sdkp->zones_wp_offset = NULL; + kfree(sdkp->zone_wp_update_buf); + sdkp->zone_wp_update_buf = NULL; +} + static void sd_zbc_revalidate_zones_cb(struct gendisk *disk) { struct scsi_disk *sdkp = scsi_disk(disk); @@ -645,9 +685,31 @@ unsigned int nr_zones) { struct gendisk *disk = sdkp->disk; + struct request_queue *q = disk->queue; + u32 max_append; int ret = 0; /* + * For all zoned disks, initialize zone append emulation data if not + * already done. This is necessary also for host-aware disks used as + * regular disks due to the presence of partitions as these partitions + * may be deleted and the disk zoned model changed back from + * BLK_ZONED_NONE to BLK_ZONED_HA. + */ + if (sd_is_zoned(sdkp) && !sdkp->zone_wp_update_buf) { + ret = sd_zbc_init_disk(sdkp); + if (ret) + return ret; + } + + /* + * There is nothing to do for regular disks, including host-aware disks + * that have partitions. + */ + if (!blk_queue_is_zoned(q)) + return 0; + + /* * Make sure revalidate zones are serialized to ensure exclusive * updates of the scsi disk data. */ @@ -681,6 +743,19 @@ kvfree(sdkp->rev_wp_offset); sdkp->rev_wp_offset = NULL; + if (ret) { + sdkp->zone_blocks = 0; + sdkp->nr_zones = 0; + sdkp->capacity = 0; + goto unlock; + } + + max_append = min_t(u32, logical_to_sectors(sdkp->device, zone_blocks), + q->limits.max_segments << (PAGE_SHIFT - 9)); + max_append = min_t(u32, max_append, queue_max_hw_sectors(q)); + + blk_queue_max_zone_append_sectors(q, max_append); + unlock: mutex_unlock(&sdkp->rev_mutex); @@ -693,7 +768,6 @@ struct request_queue *q = disk->queue; unsigned int nr_zones; u32 zone_blocks = 0; - u32 max_append; int ret; if (!sd_is_zoned(sdkp)) @@ -726,20 +800,6 @@ if (ret) goto err; - /* - * On the first scan 'chunk_sectors' isn't setup yet, so calling - * blk_queue_max_zone_append_sectors() will result in a WARN(). Defer - * this setting to the second scan. - */ - if (sdkp->first_scan) - return 0; - - max_append = min_t(u32, logical_to_sectors(sdkp->device, zone_blocks), - q->limits.max_segments << (PAGE_SHIFT - 9)); - max_append = min_t(u32, max_append, queue_max_hw_sectors(q)); - - blk_queue_max_zone_append_sectors(q, max_append); - return 0; err: @@ -747,45 +807,3 @@ return ret; } - -void sd_zbc_print_zones(struct scsi_disk *sdkp) -{ - if (!sd_is_zoned(sdkp) || !sdkp->capacity) - return; - - if (sdkp->capacity & (sdkp->zone_blocks - 1)) - sd_printk(KERN_NOTICE, sdkp, - "%u zones of %u logical blocks + 1 runt zone\n", - sdkp->nr_zones - 1, - sdkp->zone_blocks); - else - sd_printk(KERN_NOTICE, sdkp, - "%u zones of %u logical blocks\n", - sdkp->nr_zones, - sdkp->zone_blocks); -} - -int sd_zbc_init_disk(struct scsi_disk *sdkp) -{ - if (!sd_is_zoned(sdkp)) - return 0; - - sdkp->zones_wp_offset = NULL; - spin_lock_init(&sdkp->zones_wp_offset_lock); - sdkp->rev_wp_offset = NULL; - mutex_init(&sdkp->rev_mutex); - INIT_WORK(&sdkp->zone_wp_offset_work, sd_zbc_update_wp_offset_workfn); - sdkp->zone_wp_update_buf = kzalloc(SD_BUF_SIZE, GFP_KERNEL); - if (!sdkp->zone_wp_update_buf) - return -ENOMEM; - - return 0; -} - -void sd_zbc_release_disk(struct scsi_disk *sdkp) -{ - kvfree(sdkp->zones_wp_offset); - sdkp->zones_wp_offset = NULL; - kfree(sdkp->zone_wp_update_buf); - sdkp->zone_wp_update_buf = NULL; -} --- linux-azure-5.8-5.8.0.orig/drivers/scsi/smartpqi/smartpqi.h +++ linux-azure-5.8-5.8.0/drivers/scsi/smartpqi/smartpqi.h @@ -359,7 +359,7 @@ struct pqi_iu_header header; u8 event_type; u8 reserved2 : 7; - u8 request_acknowlege : 1; + u8 request_acknowledge : 1; __le16 event_id; __le32 additional_event_id; union { --- linux-azure-5.8-5.8.0.orig/drivers/scsi/smartpqi/smartpqi_init.c +++ linux-azure-5.8-5.8.0/drivers/scsi/smartpqi/smartpqi_init.c @@ -542,8 +542,7 @@ put_unaligned_be16(cdb_length, &cdb[7]); break; default: - dev_err(&ctrl_info->pci_dev->dev, "unknown command 0x%c\n", - cmd); + dev_err(&ctrl_info->pci_dev->dev, "unknown command 0x%c\n", cmd); break; } @@ -2462,7 +2461,6 @@ offload_to_mirror = (offload_to_mirror >= layout_map_count - 1) ? 0 : offload_to_mirror + 1; - WARN_ON(offload_to_mirror >= layout_map_count); device->offload_to_mirror = offload_to_mirror; /* * Avoid direct use of device->offload_to_mirror within this @@ -2915,10 +2913,14 @@ return rc; } -static unsigned int pqi_process_io_intr(struct pqi_ctrl_info *ctrl_info, - struct pqi_queue_group *queue_group) +static inline void pqi_invalid_response(struct pqi_ctrl_info *ctrl_info) +{ + pqi_take_ctrl_offline(ctrl_info); +} + +static int pqi_process_io_intr(struct pqi_ctrl_info *ctrl_info, struct pqi_queue_group *queue_group) { - unsigned int num_responses; + int num_responses; pqi_index_t oq_pi; pqi_index_t oq_ci; struct pqi_io_request *io_request; @@ -2930,6 +2932,13 @@ while (1) { oq_pi = readl(queue_group->oq_pi); + if (oq_pi >= ctrl_info->num_elements_per_oq) { + pqi_invalid_response(ctrl_info); + dev_err(&ctrl_info->pci_dev->dev, + "I/O interrupt: producer index (%u) out of range (0-%u): consumer index: %u\n", + oq_pi, ctrl_info->num_elements_per_oq - 1, oq_ci); + return -1; + } if (oq_pi == oq_ci) break; @@ -2938,10 +2947,22 @@ (oq_ci * PQI_OPERATIONAL_OQ_ELEMENT_LENGTH); request_id = get_unaligned_le16(&response->request_id); - WARN_ON(request_id >= ctrl_info->max_io_slots); + if (request_id >= ctrl_info->max_io_slots) { + pqi_invalid_response(ctrl_info); + dev_err(&ctrl_info->pci_dev->dev, + "request ID in response (%u) out of range (0-%u): producer index: %u consumer index: %u\n", + request_id, ctrl_info->max_io_slots - 1, oq_pi, oq_ci); + return -1; + } io_request = &ctrl_info->io_request_pool[request_id]; - WARN_ON(atomic_read(&io_request->refcount) == 0); + if (atomic_read(&io_request->refcount) == 0) { + pqi_invalid_response(ctrl_info); + dev_err(&ctrl_info->pci_dev->dev, + "request ID in response (%u) does not match an outstanding I/O request: producer index: %u consumer index: %u\n", + request_id, oq_pi, oq_ci); + return -1; + } switch (response->header.iu_type) { case PQI_RESPONSE_IU_RAID_PATH_IO_SUCCESS: @@ -2971,24 +2992,22 @@ io_request->error_info = ctrl_info->error_buffer + (get_unaligned_le16(&response->error_index) * PQI_ERROR_BUFFER_ELEMENT_LENGTH); - pqi_process_io_error(response->header.iu_type, - io_request); + pqi_process_io_error(response->header.iu_type, io_request); break; default: + pqi_invalid_response(ctrl_info); dev_err(&ctrl_info->pci_dev->dev, - "unexpected IU type: 0x%x\n", - response->header.iu_type); - break; + "unexpected IU type: 0x%x: producer index: %u consumer index: %u\n", + response->header.iu_type, oq_pi, oq_ci); + return -1; } - io_request->io_complete_callback(io_request, - io_request->context); + io_request->io_complete_callback(io_request, io_request->context); /* * Note that the I/O request structure CANNOT BE TOUCHED after * returning from the I/O completion callback! */ - oq_ci = (oq_ci + 1) % ctrl_info->num_elements_per_oq; } @@ -3301,9 +3320,9 @@ } } -static unsigned int pqi_process_event_intr(struct pqi_ctrl_info *ctrl_info) +static int pqi_process_event_intr(struct pqi_ctrl_info *ctrl_info) { - unsigned int num_events; + int num_events; pqi_index_t oq_pi; pqi_index_t oq_ci; struct pqi_event_queue *event_queue; @@ -3317,26 +3336,31 @@ while (1) { oq_pi = readl(event_queue->oq_pi); + if (oq_pi >= PQI_NUM_EVENT_QUEUE_ELEMENTS) { + pqi_invalid_response(ctrl_info); + dev_err(&ctrl_info->pci_dev->dev, + "event interrupt: producer index (%u) out of range (0-%u): consumer index: %u\n", + oq_pi, PQI_NUM_EVENT_QUEUE_ELEMENTS - 1, oq_ci); + return -1; + } + if (oq_pi == oq_ci) break; num_events++; - response = event_queue->oq_element_array + - (oq_ci * PQI_EVENT_OQ_ELEMENT_LENGTH); + response = event_queue->oq_element_array + (oq_ci * PQI_EVENT_OQ_ELEMENT_LENGTH); event_index = pqi_event_type_to_event_index(response->event_type); - if (event_index >= 0) { - if (response->request_acknowlege) { - event = &ctrl_info->events[event_index]; - event->pending = true; - event->event_type = response->event_type; - event->event_id = response->event_id; - event->additional_event_id = - response->additional_event_id; + if (event_index >= 0 && response->request_acknowledge) { + event = &ctrl_info->events[event_index]; + event->pending = true; + event->event_type = response->event_type; + event->event_id = response->event_id; + event->additional_event_id = response->additional_event_id; + if (event->event_type == PQI_EVENT_TYPE_OFA) pqi_ofa_capture_event_payload(event, response); - } } oq_ci = (oq_ci + 1) % PQI_NUM_EVENT_QUEUE_ELEMENTS; @@ -3451,7 +3475,8 @@ { struct pqi_ctrl_info *ctrl_info; struct pqi_queue_group *queue_group; - unsigned int num_responses_handled; + int num_io_responses_handled; + int num_events_handled; queue_group = data; ctrl_info = queue_group->ctrl_info; @@ -3459,17 +3484,25 @@ if (!pqi_is_valid_irq(ctrl_info)) return IRQ_NONE; - num_responses_handled = pqi_process_io_intr(ctrl_info, queue_group); + num_io_responses_handled = pqi_process_io_intr(ctrl_info, queue_group); + if (num_io_responses_handled < 0) + goto out; - if (irq == ctrl_info->event_irq) - num_responses_handled += pqi_process_event_intr(ctrl_info); + if (irq == ctrl_info->event_irq) { + num_events_handled = pqi_process_event_intr(ctrl_info); + if (num_events_handled < 0) + goto out; + } else { + num_events_handled = 0; + } - if (num_responses_handled) + if (num_io_responses_handled + num_events_handled > 0) atomic_inc(&ctrl_info->num_interrupts); pqi_start_io(ctrl_info, queue_group, RAID_PATH, NULL); pqi_start_io(ctrl_info, queue_group, AIO_PATH, NULL); +out: return IRQ_HANDLED; } --- linux-azure-5.8-5.8.0.orig/drivers/scsi/sr.c +++ linux-azure-5.8-5.8.0/drivers/scsi/sr.c @@ -392,15 +392,11 @@ struct request *rq = SCpnt->request; blk_status_t ret; - ret = scsi_init_io(SCpnt); + ret = scsi_alloc_sgtables(SCpnt); if (ret != BLK_STS_OK) - goto out; + return ret; cd = scsi_cd(rq->rq_disk); - /* from here on until we're complete, any goto out - * is used for a killable error condition */ - ret = BLK_STS_IOERR; - SCSI_LOG_HLQUEUE(1, scmd_printk(KERN_INFO, SCpnt, "Doing sr request, block = %d\n", block)); @@ -509,12 +505,12 @@ SCpnt->allowed = MAX_RETRIES; /* - * This indicates that the command is ready from our end to be - * queued. + * This indicates that the command is ready from our end to be queued. */ - ret = BLK_STS_OK; + return BLK_STS_OK; out: - return ret; + scsi_free_sgtables(SCpnt); + return BLK_STS_IOERR; } static int sr_block_open(struct block_device *bdev, fmode_t mode) --- linux-azure-5.8-5.8.0.orig/drivers/scsi/storvsc_drv.c +++ linux-azure-5.8-5.8.0/drivers/scsi/storvsc_drv.c @@ -1921,6 +1921,12 @@ * from the host. */ host->sg_tablesize = (stor_device->max_transfer_bytes >> PAGE_SHIFT); +#if defined(CONFIG_X86_32) + dev_warn(&device->device, "adjusting sg_tablesize 0x%x -> 0x%x", + host->sg_tablesize, MAX_MULTIPAGE_BUFFER_COUNT); + host->sg_tablesize = MAX_MULTIPAGE_BUFFER_COUNT; +#endif + /* * For non-IDE disks, the host supports multiple channels. * Set the number of HW queues we are supporting. @@ -1935,8 +1941,10 @@ alloc_ordered_workqueue("storvsc_error_wq_%d", WQ_MEM_RECLAIM, host->host_no); - if (!host_dev->handle_error_wq) + if (!host_dev->handle_error_wq) { + ret = -ENOMEM; goto err_out2; + } INIT_WORK(&host_dev->host_scan_work, storvsc_host_scan); /* Register the HBA and start the scsi bus scan */ ret = scsi_add_host(host, &device->device); --- linux-azure-5.8-5.8.0.orig/drivers/scsi/ufs/Kconfig +++ linux-azure-5.8-5.8.0/drivers/scsi/ufs/Kconfig @@ -72,6 +72,7 @@ config SCSI_UFSHCD_PLATFORM tristate "Platform bus based UFS Controller support" depends on SCSI_UFSHCD + depends on HAS_IOMEM help This selects the UFS host controller support. Select this if you have an UFS controller on Platform bus. --- linux-azure-5.8-5.8.0.orig/drivers/scsi/ufs/ti-j721e-ufs.c +++ linux-azure-5.8-5.8.0/drivers/scsi/ufs/ti-j721e-ufs.c @@ -38,6 +38,7 @@ /* Select MPHY refclk frequency */ clk = devm_clk_get(dev, NULL); if (IS_ERR(clk)) { + ret = PTR_ERR(clk); dev_err(dev, "Cannot claim MPHY clock.\n"); goto clk_err; } --- linux-azure-5.8-5.8.0.orig/drivers/scsi/ufs/ufs-mediatek.c +++ linux-azure-5.8-5.8.0/drivers/scsi/ufs/ufs-mediatek.c @@ -440,7 +440,7 @@ return ret; } -static void ufs_mtk_device_reset(struct ufs_hba *hba) +static int ufs_mtk_device_reset(struct ufs_hba *hba) { struct arm_smccc_res res; @@ -461,6 +461,8 @@ usleep_range(10000, 15000); dev_info(hba->dev, "device reset done\n"); + + return 0; } static int ufs_mtk_link_set_hpm(struct ufs_hba *hba) @@ -585,13 +587,7 @@ static void ufs_mtk_fixup_dev_quirks(struct ufs_hba *hba) { - struct ufs_dev_info *dev_info = &hba->dev_info; - u16 mid = dev_info->wmanufacturerid; - ufshcd_fixup_dev_quirks(hba, ufs_mtk_dev_fixups); - - if (mid == UFS_VENDOR_SAMSUNG) - hba->dev_quirks &= ~UFS_DEVICE_QUIRK_HOST_PA_TACTIVATE; } /** --- linux-azure-5.8-5.8.0.orig/drivers/scsi/ufs/ufs-qcom.c +++ linux-azure-5.8-5.8.0/drivers/scsi/ufs/ufs-qcom.c @@ -1604,9 +1604,6 @@ */ } mask <<= offset; - - pm_runtime_get_sync(host->hba->dev); - ufshcd_hold(host->hba, false); ufshcd_rmwl(host->hba, TEST_BUS_SEL, (u32)host->testbus.select_major << 19, REG_UFS_CFG1); @@ -1619,8 +1616,6 @@ * committed before returning. */ mb(); - ufshcd_release(host->hba); - pm_runtime_put_sync(host->hba->dev); return 0; } @@ -1671,13 +1666,13 @@ * * Toggles the (optional) reset line to reset the attached device. */ -static void ufs_qcom_device_reset(struct ufs_hba *hba) +static int ufs_qcom_device_reset(struct ufs_hba *hba) { struct ufs_qcom_host *host = ufshcd_get_variant(hba); /* reset gpio is optional */ if (!host->device_reset) - return; + return -EOPNOTSUPP; /* * The UFS device shall detect reset pulses of 1us, sleep for 10us to @@ -1688,6 +1683,8 @@ gpiod_set_value_cansleep(host->device_reset, 0); usleep_range(10, 15); + + return 0; } #if IS_ENABLED(CONFIG_DEVFREQ_GOV_SIMPLE_ONDEMAND) --- linux-azure-5.8-5.8.0.orig/drivers/scsi/ufs/ufs_quirks.h +++ linux-azure-5.8-5.8.0/drivers/scsi/ufs/ufs_quirks.h @@ -12,6 +12,7 @@ #define UFS_ANY_VENDOR 0xFFFF #define UFS_ANY_MODEL "ANY_MODEL" +#define UFS_VENDOR_MICRON 0x12C #define UFS_VENDOR_TOSHIBA 0x198 #define UFS_VENDOR_SAMSUNG 0x1CE #define UFS_VENDOR_SKHYNIX 0x1AD --- linux-azure-5.8-5.8.0.orig/drivers/scsi/ufs/ufshcd-pci.c +++ linux-azure-5.8-5.8.0/drivers/scsi/ufs/ufshcd-pci.c @@ -67,9 +67,58 @@ return err; } +static int ufs_intel_resume(struct ufs_hba *hba, enum ufs_pm_op op) +{ + /* + * To support S4 (suspend-to-disk) with spm_lvl other than 5, the base + * address registers must be restored because the restore kernel can + * have used different addresses. + */ + ufshcd_writel(hba, lower_32_bits(hba->utrdl_dma_addr), + REG_UTP_TRANSFER_REQ_LIST_BASE_L); + ufshcd_writel(hba, upper_32_bits(hba->utrdl_dma_addr), + REG_UTP_TRANSFER_REQ_LIST_BASE_H); + ufshcd_writel(hba, lower_32_bits(hba->utmrdl_dma_addr), + REG_UTP_TASK_REQ_LIST_BASE_L); + ufshcd_writel(hba, upper_32_bits(hba->utmrdl_dma_addr), + REG_UTP_TASK_REQ_LIST_BASE_H); + + if (ufshcd_is_link_hibern8(hba)) { + int ret = ufshcd_uic_hibern8_exit(hba); + + if (!ret) { + ufshcd_set_link_active(hba); + } else { + dev_err(hba->dev, "%s: hibern8 exit failed %d\n", + __func__, ret); + /* + * Force reset and restore. Any other actions can lead + * to an unrecoverable state. + */ + ufshcd_set_link_off(hba); + } + } + + return 0; +} + +static int ufs_intel_ehl_init(struct ufs_hba *hba) +{ + hba->quirks |= UFSHCD_QUIRK_BROKEN_AUTO_HIBERN8; + return 0; +} + static struct ufs_hba_variant_ops ufs_intel_cnl_hba_vops = { .name = "intel-pci", .link_startup_notify = ufs_intel_link_startup_notify, + .resume = ufs_intel_resume, +}; + +static struct ufs_hba_variant_ops ufs_intel_ehl_hba_vops = { + .name = "intel-pci", + .init = ufs_intel_ehl_init, + .link_startup_notify = ufs_intel_link_startup_notify, + .resume = ufs_intel_resume, }; #ifdef CONFIG_PM_SLEEP @@ -96,6 +145,30 @@ { return ufshcd_system_resume(dev_get_drvdata(dev)); } + +/** + * ufshcd_pci_poweroff - suspend-to-disk poweroff function + * @dev: pointer to PCI device handle + * + * Returns 0 if successful + * Returns non-zero otherwise + */ +static int ufshcd_pci_poweroff(struct device *dev) +{ + struct ufs_hba *hba = dev_get_drvdata(dev); + int spm_lvl = hba->spm_lvl; + int ret; + + /* + * For poweroff we need to set the UFS device to PowerDown mode. + * Force spm_lvl to ensure that. + */ + hba->spm_lvl = 5; + ret = ufshcd_system_suspend(hba); + hba->spm_lvl = spm_lvl; + return ret; +} + #endif /* !CONFIG_PM_SLEEP */ #ifdef CONFIG_PM @@ -190,8 +263,14 @@ } static const struct dev_pm_ops ufshcd_pci_pm_ops = { - SET_SYSTEM_SLEEP_PM_OPS(ufshcd_pci_suspend, - ufshcd_pci_resume) +#ifdef CONFIG_PM_SLEEP + .suspend = ufshcd_pci_suspend, + .resume = ufshcd_pci_resume, + .freeze = ufshcd_pci_suspend, + .thaw = ufshcd_pci_resume, + .poweroff = ufshcd_pci_poweroff, + .restore = ufshcd_pci_resume, +#endif SET_RUNTIME_PM_OPS(ufshcd_pci_runtime_suspend, ufshcd_pci_runtime_resume, ufshcd_pci_runtime_idle) @@ -200,8 +279,8 @@ static const struct pci_device_id ufshcd_pci_tbl[] = { { PCI_VENDOR_ID_SAMSUNG, 0xC00C, PCI_ANY_ID, PCI_ANY_ID, 0, 0, 0 }, { PCI_VDEVICE(INTEL, 0x9DFA), (kernel_ulong_t)&ufs_intel_cnl_hba_vops }, - { PCI_VDEVICE(INTEL, 0x4B41), (kernel_ulong_t)&ufs_intel_cnl_hba_vops }, - { PCI_VDEVICE(INTEL, 0x4B43), (kernel_ulong_t)&ufs_intel_cnl_hba_vops }, + { PCI_VDEVICE(INTEL, 0x4B41), (kernel_ulong_t)&ufs_intel_ehl_hba_vops }, + { PCI_VDEVICE(INTEL, 0x4B43), (kernel_ulong_t)&ufs_intel_ehl_hba_vops }, { } /* terminate list */ }; --- linux-azure-5.8-5.8.0.orig/drivers/scsi/ufs/ufshcd.c +++ linux-azure-5.8-5.8.0/drivers/scsi/ufs/ufshcd.c @@ -216,6 +216,8 @@ static struct ufs_dev_fix ufs_fixups[] = { /* UFS cards deviations table */ + UFS_FIX(UFS_VENDOR_MICRON, UFS_ANY_MODEL, + UFS_DEVICE_QUIRK_DELAY_BEFORE_LPM), UFS_FIX(UFS_VENDOR_SAMSUNG, UFS_ANY_MODEL, UFS_DEVICE_QUIRK_DELAY_BEFORE_LPM), UFS_FIX(UFS_VENDOR_SAMSUNG, UFS_ANY_MODEL, @@ -482,6 +484,9 @@ prdt_length = le16_to_cpu( lrbp->utr_descriptor_ptr->prd_table_length); + if (hba->quirks & UFSHCD_QUIRK_PRDT_BYTE_GRAN) + prdt_length /= sizeof(struct ufshcd_sg_entry); + dev_err(hba->dev, "UPIU[%d] - PRDT - %d entries phys@0x%llx\n", tag, prdt_length, @@ -672,7 +677,11 @@ */ static inline void ufshcd_utrl_clear(struct ufs_hba *hba, u32 pos) { - ufshcd_writel(hba, ~(1 << pos), REG_UTP_TRANSFER_REQ_LIST_CLEAR); + if (hba->quirks & UFSHCI_QUIRK_BROKEN_REQ_LIST_CLR) + ufshcd_writel(hba, (1 << pos), REG_UTP_TRANSFER_REQ_LIST_CLEAR); + else + ufshcd_writel(hba, ~(1 << pos), + REG_UTP_TRANSFER_REQ_LIST_CLEAR); } /** @@ -682,7 +691,10 @@ */ static inline void ufshcd_utmrl_clear(struct ufs_hba *hba, u32 pos) { - ufshcd_writel(hba, ~(1 << pos), REG_UTP_TASK_REQ_LIST_CLEAR); + if (hba->quirks & UFSHCI_QUIRK_BROKEN_REQ_LIST_CLR) + ufshcd_writel(hba, (1 << pos), REG_UTP_TASK_REQ_LIST_CLEAR); + else + ufshcd_writel(hba, ~(1 << pos), REG_UTP_TASK_REQ_LIST_CLEAR); } /** @@ -1272,8 +1284,15 @@ } spin_unlock_irqrestore(hba->host->host_lock, irq_flags); + pm_runtime_get_noresume(hba->dev); + if (!pm_runtime_active(hba->dev)) { + pm_runtime_put_noidle(hba->dev); + ret = -EAGAIN; + goto out; + } start = ktime_get(); ret = ufshcd_devfreq_scale(hba, scale_up); + pm_runtime_put(hba->dev); trace_ufshcd_profile_clk_scaling(dev_name(hba->dev), (scale_up ? "up" : "down"), @@ -1314,6 +1333,7 @@ unsigned long flags; struct list_head *clk_list = &hba->clk_list_head; struct ufs_clk_info *clki; + ktime_t curr_t; if (!ufshcd_is_clkscaling_supported(hba)) return -EINVAL; @@ -1321,6 +1341,7 @@ memset(stat, 0, sizeof(*stat)); spin_lock_irqsave(hba->host->host_lock, flags); + curr_t = ktime_get(); if (!scaling->window_start_t) goto start_window; @@ -1332,18 +1353,17 @@ */ stat->current_frequency = clki->curr_freq; if (scaling->is_busy_started) - scaling->tot_busy_t += ktime_to_us(ktime_sub(ktime_get(), - scaling->busy_start_t)); + scaling->tot_busy_t += ktime_us_delta(curr_t, + scaling->busy_start_t); - stat->total_time = jiffies_to_usecs((long)jiffies - - (long)scaling->window_start_t); + stat->total_time = ktime_us_delta(curr_t, scaling->window_start_t); stat->busy_time = scaling->tot_busy_t; start_window: - scaling->window_start_t = jiffies; + scaling->window_start_t = curr_t; scaling->tot_busy_t = 0; if (hba->outstanding_reqs) { - scaling->busy_start_t = ktime_get(); + scaling->busy_start_t = curr_t; scaling->is_busy_started = true; } else { scaling->busy_start_t = 0; @@ -1556,6 +1576,7 @@ int ufshcd_hold(struct ufs_hba *hba, bool async) { int rc = 0; + bool flush_result; unsigned long flags; if (!ufshcd_is_clkgating_allowed(hba)) @@ -1587,7 +1608,9 @@ break; } spin_unlock_irqrestore(hba->host->host_lock, flags); - flush_work(&hba->clk_gating.ungate_work); + flush_result = flush_work(&hba->clk_gating.ungate_work); + if (hba->clk_gating.is_suspended && !flush_result) + goto out; spin_lock_irqsave(hba->host->host_lock, flags); goto start; } @@ -1606,12 +1629,12 @@ */ /* fallthrough */ case CLKS_OFF: - ufshcd_scsi_block_requests(hba); hba->clk_gating.state = REQ_CLKS_ON; trace_ufshcd_clk_gating(dev_name(hba->dev), hba->clk_gating.state); - queue_work(hba->clk_gating.clk_gating_workq, - &hba->clk_gating.ungate_work); + if (queue_work(hba->clk_gating.clk_gating_workq, + &hba->clk_gating.ungate_work)) + ufshcd_scsi_block_requests(hba); /* * fall through to check if we should wait for this * work to be done or not. @@ -1719,8 +1742,9 @@ if (hba->clk_gating.active_reqs || hba->clk_gating.is_suspended || hba->ufshcd_state != UFSHCD_STATE_OPERATIONAL - || ufshcd_any_tag_in_use(hba) || hba->outstanding_tasks + || hba->outstanding_tasks || hba->active_uic_cmd || hba->uic_async_done + || hba->clk_gating.state == CLKS_OFF || ufshcd_eh_in_progress(hba)) return; @@ -1877,6 +1901,7 @@ static void ufshcd_clk_scaling_start_busy(struct ufs_hba *hba) { bool queue_resume_work = false; + ktime_t curr_t = ktime_get(); if (!ufshcd_is_clkscaling_supported(hba)) return; @@ -1892,13 +1917,13 @@ &hba->clk_scaling.resume_work); if (!hba->clk_scaling.window_start_t) { - hba->clk_scaling.window_start_t = jiffies; + hba->clk_scaling.window_start_t = curr_t; hba->clk_scaling.tot_busy_t = 0; hba->clk_scaling.is_busy_started = false; } if (!hba->clk_scaling.is_busy_started) { - hba->clk_scaling.busy_start_t = ktime_get(); + hba->clk_scaling.busy_start_t = curr_t; hba->clk_scaling.is_busy_started = true; } } @@ -1925,8 +1950,11 @@ static inline void ufshcd_send_command(struct ufs_hba *hba, unsigned int task_tag) { - hba->lrb[task_tag].issue_time_stamp = ktime_get(); - hba->lrb[task_tag].compl_time_stamp = ktime_set(0, 0); + struct ufshcd_lrb *lrbp = &hba->lrb[task_tag]; + + lrbp->issue_time_stamp = ktime_get(); + lrbp->compl_time_stamp = ktime_set(0, 0); + ufshcd_vops_setup_xfer_req(hba, task_tag, (lrbp->cmd ? true : false)); ufshcd_add_command_trace(hba, task_tag, "send"); ufshcd_clk_scaling_start_busy(hba); __set_bit(task_tag, &hba->outstanding_reqs); @@ -2072,10 +2100,20 @@ unsigned long flags; if (wait_for_completion_timeout(&uic_cmd->done, - msecs_to_jiffies(UIC_CMD_TIMEOUT))) + msecs_to_jiffies(UIC_CMD_TIMEOUT))) { ret = uic_cmd->argument2 & MASK_UIC_COMMAND_RESULT; - else + } else { ret = -ETIMEDOUT; + dev_err(hba->dev, + "uic cmd 0x%x with arg3 0x%x completion timeout\n", + uic_cmd->command, uic_cmd->argument3); + + if (!uic_cmd->cmd_active) { + dev_err(hba->dev, "%s: UIC cmd has been completed, return the result\n", + __func__); + ret = uic_cmd->argument2 & MASK_UIC_COMMAND_RESULT; + } + } spin_lock_irqsave(hba->host->host_lock, flags); hba->active_uic_cmd = NULL; @@ -2107,6 +2145,7 @@ if (completion) init_completion(&uic_cmd->done); + uic_cmd->cmd_active = 1; ufshcd_dispatch_uic_cmd(hba, uic_cmd); return 0; @@ -2161,8 +2200,14 @@ return sg_segments; if (sg_segments) { - lrbp->utr_descriptor_ptr->prd_table_length = - cpu_to_le16((u16)sg_segments); + + if (hba->quirks & UFSHCD_QUIRK_PRDT_BYTE_GRAN) + lrbp->utr_descriptor_ptr->prd_table_length = + cpu_to_le16((sg_segments * + sizeof(struct ufshcd_sg_entry))); + else + lrbp->utr_descriptor_ptr->prd_table_length = + cpu_to_le16((u16) (sg_segments)); prd_table = (struct ufshcd_sg_entry *)lrbp->ucd_prdt_ptr; @@ -2536,7 +2581,6 @@ /* issue command to the controller */ spin_lock_irqsave(hba->host->host_lock, flags); - ufshcd_vops_setup_xfer_req(hba, tag, true); ufshcd_send_command(hba, tag); out_unlock: spin_unlock_irqrestore(hba->host->host_lock, flags); @@ -2723,7 +2767,6 @@ /* Make sure descriptors are ready before ringing the doorbell */ wmb(); spin_lock_irqsave(hba->host->host_lock, flags); - ufshcd_vops_setup_xfer_req(hba, tag, false); ufshcd_send_command(hba, tag); spin_unlock_irqrestore(hba->host->host_lock, flags); @@ -3175,14 +3218,19 @@ /* Sanity checks */ if (ret || !buff_len) { - dev_err(hba->dev, "%s: Failed to get full descriptor length", - __func__); + dev_err(hba->dev, "%s: Failed to get desc length\n", __func__); + return -EINVAL; + } + + if (param_offset >= buff_len) { + dev_err(hba->dev, "%s: Invalid offset 0x%x in descriptor IDN 0x%x, length 0x%x\n", + __func__, param_offset, desc_id, buff_len); return ret; } /* Check whether we need temp memory */ if (param_offset != 0 || param_size < buff_len) { - desc_buf = kmalloc(buff_len, GFP_KERNEL); + desc_buf = kzalloc(buff_len, GFP_KERNEL); if (!desc_buf) return -ENOMEM; } else { @@ -3196,25 +3244,25 @@ desc_buf, &buff_len); if (ret) { - dev_err(hba->dev, "%s: Failed reading descriptor. desc_id %d, desc_index %d, param_offset %d, ret %d", + dev_err(hba->dev, "%s: Failed reading descriptor. desc_id %d, desc_index %d, param_offset %d, ret %d\n", __func__, desc_id, desc_index, param_offset, ret); goto out; } /* Sanity check */ if (desc_buf[QUERY_DESC_DESC_TYPE_OFFSET] != desc_id) { - dev_err(hba->dev, "%s: invalid desc_id %d in descriptor header", + dev_err(hba->dev, "%s: invalid desc_id %d in descriptor header\n", __func__, desc_buf[QUERY_DESC_DESC_TYPE_OFFSET]); ret = -EINVAL; goto out; } - /* Check wherher we will not copy more data, than available */ - if (is_kmalloc && param_size > buff_len) - param_size = buff_len; - - if (is_kmalloc) + if (is_kmalloc) { + /* Make sure we don't copy more data than available */ + if (param_offset + param_size > buff_len) + param_size = buff_len - param_offset; memcpy(param_read_buf, &desc_buf[param_offset], param_size); + } out: if (is_kmalloc) kfree(desc_buf); @@ -3511,11 +3559,21 @@ cpu_to_le32(upper_32_bits(cmd_desc_element_addr)); /* Response upiu and prdt offset should be in double words */ - utrdlp[i].response_upiu_offset = - cpu_to_le16(response_offset >> 2); - utrdlp[i].prd_table_offset = cpu_to_le16(prdt_offset >> 2); - utrdlp[i].response_upiu_length = - cpu_to_le16(ALIGNED_UPIU_SIZE >> 2); + if (hba->quirks & UFSHCD_QUIRK_PRDT_BYTE_GRAN) { + utrdlp[i].response_upiu_offset = + cpu_to_le16(response_offset); + utrdlp[i].prd_table_offset = + cpu_to_le16(prdt_offset); + utrdlp[i].response_upiu_length = + cpu_to_le16(ALIGNED_UPIU_SIZE); + } else { + utrdlp[i].response_upiu_offset = + cpu_to_le16(response_offset >> 2); + utrdlp[i].prd_table_offset = + cpu_to_le16(prdt_offset >> 2); + utrdlp[i].response_upiu_length = + cpu_to_le16(ALIGNED_UPIU_SIZE >> 2); + } ufshcd_init_lrb(hba, &hba->lrb[i], i); } @@ -3545,6 +3603,52 @@ "dme-link-startup: error code %d\n", ret); return ret; } +/** + * ufshcd_dme_reset - UIC command for DME_RESET + * @hba: per adapter instance + * + * DME_RESET command is issued in order to reset UniPro stack. + * This function now deals with cold reset. + * + * Returns 0 on success, non-zero value on failure + */ +static int ufshcd_dme_reset(struct ufs_hba *hba) +{ + struct uic_command uic_cmd = {0}; + int ret; + + uic_cmd.command = UIC_CMD_DME_RESET; + + ret = ufshcd_send_uic_cmd(hba, &uic_cmd); + if (ret) + dev_err(hba->dev, + "dme-enable: error code %d\n", ret); + + return ret; +} + +/** + * ufshcd_dme_enable - UIC command for DME_ENABLE + * @hba: per adapter instance + * + * DME_ENABLE command is issued in order to enable UniPro stack. + * + * Returns 0 on success, non-zero value on failure + */ +static int ufshcd_dme_enable(struct ufs_hba *hba) +{ + struct uic_command uic_cmd = {0}; + int ret; + + uic_cmd.command = UIC_CMD_DME_ENABLE; + + ret = ufshcd_send_uic_cmd(hba, &uic_cmd); + if (ret) + dev_err(hba->dev, + "dme-reset: error code %d\n", ret); + + return ret; +} static inline void ufshcd_add_delay_before_dme_cmd(struct ufs_hba *hba) { @@ -3749,10 +3853,18 @@ dev_err(hba->dev, "pwr ctrl cmd 0x%x with mode 0x%x completion timeout\n", cmd->command, cmd->argument3); + + if (!cmd->cmd_active) { + dev_err(hba->dev, "%s: Power Mode Change operation has been completed, go check UPMCRS\n", + __func__); + goto check_upmcrs; + } + ret = -ETIMEDOUT; goto out; } +check_upmcrs: status = ufshcd_get_upmcrs(hba); if (status != PWR_LOCAL) { dev_err(hba->dev, @@ -4269,7 +4381,7 @@ } /** - * ufshcd_hba_enable - initialize the controller + * ufshcd_hba_execute_hce - initialize the controller * @hba: per adapter instance * * The controller resets itself and controller firmware initialization @@ -4278,7 +4390,7 @@ * * Returns 0 on success, non-zero value on failure */ -int ufshcd_hba_enable(struct ufs_hba *hba) +static int ufshcd_hba_execute_hce(struct ufs_hba *hba) { int retry; @@ -4326,6 +4438,32 @@ return 0; } + +int ufshcd_hba_enable(struct ufs_hba *hba) +{ + int ret; + + if (hba->quirks & UFSHCI_QUIRK_BROKEN_HCE) { + ufshcd_set_link_off(hba); + ufshcd_vops_hce_enable_notify(hba, PRE_CHANGE); + + /* enable UIC related interrupts */ + ufshcd_enable_intr(hba, UFSHCD_UIC_MASK); + ret = ufshcd_dme_reset(hba); + if (!ret) { + ret = ufshcd_dme_enable(hba); + if (!ret) + ufshcd_vops_hce_enable_notify(hba, POST_CHANGE); + if (ret) + dev_err(hba->dev, + "Host controller enable failed with non-hce\n"); + } + } else { + ret = ufshcd_hba_execute_hce(hba); + } + + return ret; +} EXPORT_SYMBOL_GPL(ufshcd_hba_enable); static int ufshcd_disable_tx_lcc(struct ufs_hba *hba, bool peer) @@ -4724,6 +4862,12 @@ /* overall command status of utrd */ ocs = ufshcd_get_tr_ocs(lrbp); + if (hba->quirks & UFSHCD_QUIRK_BROKEN_OCS_FATAL_ERROR) { + if (be32_to_cpu(lrbp->ucd_rsp_ptr->header.dword_1) & + MASK_RSP_UPIU_RESULT) + ocs = OCS_SUCCESS; + } + switch (ocs) { case OCS_SUCCESS: result = ufshcd_get_req_rsp(lrbp->ucd_rsp_ptr); @@ -4825,11 +4969,14 @@ ufshcd_get_uic_cmd_result(hba); hba->active_uic_cmd->argument3 = ufshcd_get_dme_attr_val(hba); + if (!hba->uic_async_done) + hba->active_uic_cmd->cmd_active = 0; complete(&hba->active_uic_cmd->done); retval = IRQ_HANDLED; } if ((intr_status & UFSHCD_UIC_PWR_MASK) && hba->uic_async_done) { + hba->active_uic_cmd->cmd_active = 0; complete(hba->uic_async_done); retval = IRQ_HANDLED; } @@ -4902,7 +5049,8 @@ * false interrupt if device completes another request after resetting * aggregation and before reading the DB. */ - if (ufshcd_is_intr_aggr_allowed(hba)) + if (ufshcd_is_intr_aggr_allowed(hba) && + !(hba->quirks & UFSHCI_QUIRK_SKIP_RESET_INTR_AGGR)) ufshcd_reset_intr_aggr(hba); tr_doorbell = ufshcd_readl(hba, REG_UTP_TRANSFER_REQ_DOOR_BELL); @@ -5881,7 +6029,7 @@ */ static irqreturn_t ufshcd_intr(int irq, void *__hba) { - u32 intr_status, enabled_intr_status; + u32 intr_status, enabled_intr_status = 0; irqreturn_t retval = IRQ_NONE; struct ufs_hba *hba = __hba; int retries = hba->nutrs; @@ -5895,7 +6043,7 @@ * read, make sure we handle them by checking the interrupt status * again in a loop until we process all of the reqs before returning. */ - do { + while (intr_status && retries--) { enabled_intr_status = intr_status & ufshcd_readl(hba, REG_INTERRUPT_ENABLE); if (intr_status) @@ -5904,9 +6052,9 @@ retval |= ufshcd_sl_intr(hba, enabled_intr_status); intr_status = ufshcd_readl(hba, REG_INTERRUPT_STATUS); - } while (intr_status && --retries); + } - if (retval == IRQ_NONE) { + if (enabled_intr_status && retval == IRQ_NONE) { dev_err(hba->dev, "%s: Unhandled interrupt 0x%08x\n", __func__, intr_status); ufshcd_dump_regs(hba, 0, UFSHCI_REG_SPACE_SIZE, "host_regs: "); @@ -6264,19 +6412,16 @@ { struct Scsi_Host *host; struct ufs_hba *hba; - unsigned int tag; u32 pos; int err; - u8 resp = 0xF; - struct ufshcd_lrb *lrbp; + u8 resp = 0xF, lun; unsigned long flags; host = cmd->device->host; hba = shost_priv(host); - tag = cmd->request->tag; - lrbp = &hba->lrb[tag]; - err = ufshcd_issue_tm_cmd(hba, lrbp->lun, 0, UFS_LOGICAL_RESET, &resp); + lun = ufshcd_scsi_to_upiu_lun(cmd->device->lun); + err = ufshcd_issue_tm_cmd(hba, lun, 0, UFS_LOGICAL_RESET, &resp); if (err || resp != UPIU_TASK_MANAGEMENT_FUNC_COMPL) { if (!err) err = resp; @@ -6285,7 +6430,7 @@ /* clear the commands that were pending for corresponding LUN */ for_each_set_bit(pos, &hba->outstanding_reqs, hba->nutrs) { - if (hba->lrb[pos].lun == lrbp->lun) { + if (hba->lrb[pos].lun == lun) { err = ufshcd_clear_cmd(hba, pos); if (err) break; @@ -6431,7 +6576,7 @@ /* command completed already */ dev_err(hba->dev, "%s: cmd at tag %d successfully cleared from DB.\n", __func__, tag); - goto out; + goto cleanup; } else { dev_err(hba->dev, "%s: no response from device. tag = %d, err %d\n", @@ -6465,6 +6610,7 @@ goto out; } +cleanup: scsi_dma_unmap(cmd); spin_lock_irqsave(host->host_lock, flags); @@ -6775,7 +6921,6 @@ static int ufshcd_scsi_add_wlus(struct ufs_hba *hba) { int ret = 0; - struct scsi_device *sdev_rpmb; struct scsi_device *sdev_boot; hba->sdev_ufs_device = __scsi_add_device(hba->host, 0, 0, @@ -6788,14 +6933,14 @@ ufshcd_blk_pm_runtime_init(hba->sdev_ufs_device); scsi_device_put(hba->sdev_ufs_device); - sdev_rpmb = __scsi_add_device(hba->host, 0, 0, + hba->sdev_rpmb = __scsi_add_device(hba->host, 0, 0, ufshcd_upiu_wlun_to_scsi_wlun(UFS_UPIU_RPMB_WLUN), NULL); - if (IS_ERR(sdev_rpmb)) { - ret = PTR_ERR(sdev_rpmb); + if (IS_ERR(hba->sdev_rpmb)) { + ret = PTR_ERR(hba->sdev_rpmb); goto remove_sdev_ufs_device; } - ufshcd_blk_pm_runtime_init(sdev_rpmb); - scsi_device_put(sdev_rpmb); + ufshcd_blk_pm_runtime_init(hba->sdev_rpmb); + scsi_device_put(hba->sdev_rpmb); sdev_boot = __scsi_add_device(hba->host, 0, 0, ufshcd_upiu_wlun_to_scsi_wlun(UFS_UPIU_BOOT_WLUN), NULL); @@ -6815,20 +6960,30 @@ static void ufshcd_wb_probe(struct ufs_hba *hba, u8 *desc_buf) { + struct ufs_dev_info *dev_info = &hba->dev_info; u8 lun; u32 d_lu_wb_buf_alloc; if (!ufshcd_is_wb_allowed(hba)) return; + /* + * Probe WB only for UFS-2.2 and UFS-3.1 (and later) devices or + * UFS devices with quirk UFS_DEVICE_QUIRK_SUPPORT_EXTENDED_FEATURES + * enabled + */ + if (!(dev_info->wspecversion >= 0x310 || + dev_info->wspecversion == 0x220 || + (hba->dev_quirks & UFS_DEVICE_QUIRK_SUPPORT_EXTENDED_FEATURES))) + goto wb_disabled; if (hba->desc_size.dev_desc < DEVICE_DESC_PARAM_EXT_UFS_FEATURE_SUP + 4) goto wb_disabled; - hba->dev_info.d_ext_ufs_feature_sup = + dev_info->d_ext_ufs_feature_sup = get_unaligned_be32(desc_buf + DEVICE_DESC_PARAM_EXT_UFS_FEATURE_SUP); - if (!(hba->dev_info.d_ext_ufs_feature_sup & UFS_DEV_WRITE_BOOSTER_SUP)) + if (!(dev_info->d_ext_ufs_feature_sup & UFS_DEV_WRITE_BOOSTER_SUP)) goto wb_disabled; /* @@ -6837,17 +6992,17 @@ * a max of 1 lun would have wb buffer configured. * Now only shared buffer mode is supported. */ - hba->dev_info.b_wb_buffer_type = + dev_info->b_wb_buffer_type = desc_buf[DEVICE_DESC_PARAM_WB_TYPE]; - hba->dev_info.b_presrv_uspc_en = + dev_info->b_presrv_uspc_en = desc_buf[DEVICE_DESC_PARAM_WB_PRESRV_USRSPC_EN]; - if (hba->dev_info.b_wb_buffer_type == WB_BUF_MODE_SHARED) { - hba->dev_info.d_wb_alloc_units = + if (dev_info->b_wb_buffer_type == WB_BUF_MODE_SHARED) { + dev_info->d_wb_alloc_units = get_unaligned_be32(desc_buf + DEVICE_DESC_PARAM_WB_SHARED_ALLOC_UNITS); - if (!hba->dev_info.d_wb_alloc_units) + if (!dev_info->d_wb_alloc_units) goto wb_disabled; } else { for (lun = 0; lun < UFS_UPIU_MAX_WB_LUN_ID; lun++) { @@ -6858,7 +7013,7 @@ (u8 *)&d_lu_wb_buf_alloc, sizeof(d_lu_wb_buf_alloc)); if (d_lu_wb_buf_alloc) { - hba->dev_info.wb_dedicated_lu = lun; + dev_info->wb_dedicated_lu = lun; break; } } @@ -6947,14 +7102,7 @@ ufs_fixup_device_setup(hba); - /* - * Probe WB only for UFS-3.1 devices or UFS devices with quirk - * UFS_DEVICE_QUIRK_SUPPORT_EXTENDED_FEATURES enabled - */ - if (dev_info->wspecversion >= 0x310 || - dev_info->wspecversion == 0x220 || - (hba->dev_quirks & UFS_DEVICE_QUIRK_SUPPORT_EXTENDED_FEATURES)) - ufshcd_wb_probe(hba, desc_buf); + ufshcd_wb_probe(hba, desc_buf); /* * ufshcd_read_string_desc returns size of the string @@ -7357,6 +7505,63 @@ return ret; } +static int +ufshcd_send_request_sense(struct ufs_hba *hba, struct scsi_device *sdp); + +static int ufshcd_clear_ua_wlun(struct ufs_hba *hba, u8 wlun) +{ + struct scsi_device *sdp; + unsigned long flags; + int ret = 0; + + spin_lock_irqsave(hba->host->host_lock, flags); + if (wlun == UFS_UPIU_UFS_DEVICE_WLUN) + sdp = hba->sdev_ufs_device; + else if (wlun == UFS_UPIU_RPMB_WLUN) + sdp = hba->sdev_rpmb; + else + BUG(); + if (sdp) { + ret = scsi_device_get(sdp); + if (!ret && !scsi_device_online(sdp)) { + ret = -ENODEV; + scsi_device_put(sdp); + } + } else { + ret = -ENODEV; + } + spin_unlock_irqrestore(hba->host->host_lock, flags); + if (ret) + goto out_err; + + ret = ufshcd_send_request_sense(hba, sdp); + scsi_device_put(sdp); +out_err: + if (ret) + dev_err(hba->dev, "%s: UAC clear LU=%x ret = %d\n", + __func__, wlun, ret); + return ret; +} + +static int ufshcd_clear_ua_wluns(struct ufs_hba *hba) +{ + int ret = 0; + + if (!hba->wlun_dev_clr_ua) + goto out; + + ret = ufshcd_clear_ua_wlun(hba, UFS_UPIU_UFS_DEVICE_WLUN); + if (!ret) + ret = ufshcd_clear_ua_wlun(hba, UFS_UPIU_RPMB_WLUN); + if (!ret) + hba->wlun_dev_clr_ua = false; +out: + if (ret) + dev_err(hba->dev, "%s: Failed to clear UAC WLUNS ret = %d\n", + __func__, ret); + return ret; +} + /** * ufshcd_probe_hba - probe hba to detect device and initialize * @hba: per-adapter instance @@ -7472,6 +7677,8 @@ pm_runtime_put_sync(hba->dev); ufshcd_exit_clk_scaling(hba); ufshcd_hba_exit(hba); + } else { + ufshcd_clear_ua_wluns(hba); } } @@ -8459,7 +8666,8 @@ if ((ufs_get_pm_lvl_to_dev_pwr_mode(hba->spm_lvl) == hba->curr_dev_pwr_mode) && (ufs_get_pm_lvl_to_link_pwr_state(hba->spm_lvl) == - hba->uic_link_state)) + hba->uic_link_state) && + !hba->dev_info.b_rpm_dev_flush_capable) goto out; if (pm_runtime_suspended(hba->dev)) { @@ -8613,11 +8821,7 @@ if (ufshcd_is_ufs_dev_poweroff(hba) && ufshcd_is_link_off(hba)) goto out; - if (pm_runtime_suspended(hba->dev)) { - ret = ufshcd_runtime_resume(hba); - if (ret) - goto out; - } + pm_runtime_get_sync(hba->dev); ret = ufshcd_suspend(hba, UFS_SHUTDOWN_PM); out: --- linux-azure-5.8-5.8.0.orig/drivers/scsi/ufs/ufshcd.h +++ linux-azure-5.8-5.8.0/drivers/scsi/ufs/ufshcd.h @@ -342,7 +342,7 @@ int (*resume)(struct ufs_hba *, enum ufs_pm_op); void (*dbg_register_dump)(struct ufs_hba *hba); int (*phy_initialization)(struct ufs_hba *); - void (*device_reset)(struct ufs_hba *hba); + int (*device_reset)(struct ufs_hba *hba); void (*config_scaling_param)(struct ufs_hba *hba, struct devfreq_dev_profile *profile, void *data); @@ -411,7 +411,7 @@ struct ufs_clk_scaling { int active_reqs; unsigned long tot_busy_t; - unsigned long window_start_t; + ktime_t window_start_t; ktime_t busy_start_t; struct device_attribute enable_attr; struct ufs_saved_pwr_info saved_pwr_info; @@ -520,6 +520,41 @@ * ops (get_ufs_hci_version) to get the correct version. */ UFSHCD_QUIRK_BROKEN_UFS_HCI_VERSION = 1 << 5, + + /* + * Clear handling for transfer/task request list is just opposite. + */ + UFSHCI_QUIRK_BROKEN_REQ_LIST_CLR = 1 << 6, + + /* + * This quirk needs to be enabled if host controller doesn't allow + * that the interrupt aggregation timer and counter are reset by s/w. + */ + UFSHCI_QUIRK_SKIP_RESET_INTR_AGGR = 1 << 7, + + /* + * This quirks needs to be enabled if host controller cannot be + * enabled via HCE register. + */ + UFSHCI_QUIRK_BROKEN_HCE = 1 << 8, + + /* + * This quirk needs to be enabled if the host controller regards + * resolution of the values of PRDTO and PRDTL in UTRD as byte. + */ + UFSHCD_QUIRK_PRDT_BYTE_GRAN = 1 << 9, + + /* + * This quirk needs to be enabled if the host controller reports + * OCS FATAL ERROR with device error through sense data + */ + UFSHCD_QUIRK_BROKEN_OCS_FATAL_ERROR = 1 << 10, + + /* + * This quirk needs to be enabled if the host controller has + * auto-hibernate capability but it doesn't work. + */ + UFSHCD_QUIRK_BROKEN_AUTO_HIBERN8 = 1 << 11, }; enum ufshcd_caps { @@ -646,6 +681,7 @@ * "UFS device" W-LU. */ struct scsi_device *sdev_ufs_device; + struct scsi_device *sdev_rpmb; enum ufs_dev_pwr_mode curr_dev_pwr_mode; enum uic_link_state uic_link_state; @@ -786,7 +822,8 @@ static inline bool ufshcd_is_auto_hibern8_supported(struct ufs_hba *hba) { - return (hba->capabilities & MASK_AUTO_HIBERN8_SUPPORT); + return (hba->capabilities & MASK_AUTO_HIBERN8_SUPPORT) && + !(hba->quirks & UFSHCD_QUIRK_BROKEN_AUTO_HIBERN8); } static inline bool ufshcd_is_auto_hibern8_enabled(struct ufs_hba *hba) @@ -1133,9 +1170,17 @@ static inline void ufshcd_vops_device_reset(struct ufs_hba *hba) { if (hba->vops && hba->vops->device_reset) { - hba->vops->device_reset(hba); - ufshcd_set_ufs_dev_active(hba); - ufshcd_update_reg_hist(&hba->ufs_stats.dev_reset, 0); + int err = hba->vops->device_reset(hba); + + if (!err) { + ufshcd_set_ufs_dev_active(hba); + if (ufshcd_is_wb_allowed(hba)) { + hba->wb_enabled = false; + hba->wb_buf_flush_enabled = false; + } + } + if (err != -EOPNOTSUPP) + ufshcd_update_reg_hist(&hba->ufs_stats.dev_reset, err); } } --- linux-azure-5.8-5.8.0.orig/drivers/slimbus/core.c +++ linux-azure-5.8-5.8.0/drivers/slimbus/core.c @@ -301,8 +301,6 @@ { /* Remove all clients */ device_for_each_child(ctrl->dev, NULL, slim_ctrl_remove_device); - /* Enter Clock Pause */ - slim_ctrl_clk_pause(ctrl, false, 0); ida_simple_remove(&ctrl_ida, ctrl->id); return 0; @@ -326,8 +324,8 @@ mutex_lock(&ctrl->lock); sbdev->is_laddr_valid = false; mutex_unlock(&ctrl->lock); - - ida_simple_remove(&ctrl->laddr_ida, sbdev->laddr); + if (!ctrl->get_laddr) + ida_simple_remove(&ctrl->laddr_ida, sbdev->laddr); slim_device_update_status(sbdev, SLIM_DEVICE_STATUS_DOWN); } EXPORT_SYMBOL_GPL(slim_report_absent); --- linux-azure-5.8-5.8.0.orig/drivers/slimbus/qcom-ctrl.c +++ linux-azure-5.8-5.8.0/drivers/slimbus/qcom-ctrl.c @@ -472,15 +472,10 @@ static void qcom_slim_prg_slew(struct platform_device *pdev, struct qcom_slim_ctrl *ctrl) { - struct resource *slew_mem; - if (!ctrl->slew_reg) { /* SLEW RATE register for this SLIMbus */ - slew_mem = platform_get_resource_byname(pdev, IORESOURCE_MEM, - "slew"); - ctrl->slew_reg = devm_ioremap(&pdev->dev, slew_mem->start, - resource_size(slew_mem)); - if (!ctrl->slew_reg) + ctrl->slew_reg = devm_platform_ioremap_resource_byname(pdev, "slew"); + if (IS_ERR(ctrl->slew_reg)) return; } --- linux-azure-5.8-5.8.0.orig/drivers/slimbus/qcom-ngd-ctrl.c +++ linux-azure-5.8-5.8.0/drivers/slimbus/qcom-ngd-ctrl.c @@ -1205,6 +1205,9 @@ struct qcom_slim_ngd_ctrl *ctrl = dev_get_drvdata(dev); int ret = 0; + if (!ctrl->qmi.handle) + return 0; + if (ctrl->state >= QCOM_SLIM_NGD_CTRL_ASLEEP) ret = qcom_slim_ngd_power_up(ctrl); if (ret) { @@ -1277,9 +1280,13 @@ { struct qcom_slim_ngd_qmi *qmi = container_of(hdl, struct qcom_slim_ngd_qmi, svc_event_hdl); + struct qcom_slim_ngd_ctrl *ctrl = + container_of(qmi, struct qcom_slim_ngd_ctrl, qmi); qmi->svc_info.sq_node = 0; qmi->svc_info.sq_port = 0; + + qcom_slim_ngd_enable(ctrl, false); } static struct qmi_ops qcom_slim_ngd_qmi_svc_event_ops = { @@ -1499,6 +1506,9 @@ struct qcom_slim_ngd_ctrl *ctrl = dev_get_drvdata(dev); int ret = 0; + if (!ctrl->qmi.handle) + return 0; + ret = qcom_slim_qmi_power_request(ctrl, false); if (ret && ret != -EBUSY) dev_info(ctrl->dev, "slim resource not idle:%d\n", ret); --- linux-azure-5.8-5.8.0.orig/drivers/soc/amlogic/meson-canvas.c +++ linux-azure-5.8-5.8.0/drivers/soc/amlogic/meson-canvas.c @@ -72,8 +72,10 @@ * current state, this driver probe cannot return -EPROBE_DEFER */ canvas = dev_get_drvdata(&canvas_pdev->dev); - if (!canvas) + if (!canvas) { + put_device(&canvas_pdev->dev); return ERR_PTR(-EINVAL); + } return canvas; } --- linux-azure-5.8-5.8.0.orig/drivers/soc/aspeed/aspeed-lpc-snoop.c +++ linux-azure-5.8-5.8.0/drivers/soc/aspeed/aspeed-lpc-snoop.c @@ -11,6 +11,7 @@ */ #include +#include #include #include #include @@ -67,6 +68,7 @@ struct aspeed_lpc_snoop { struct regmap *regmap; int irq; + struct clk *clk; struct aspeed_lpc_snoop_channel chan[NUM_SNOOP_CHANNELS]; }; @@ -282,22 +284,42 @@ return -ENODEV; } + lpc_snoop->clk = devm_clk_get(dev, NULL); + if (IS_ERR(lpc_snoop->clk)) { + rc = PTR_ERR(lpc_snoop->clk); + if (rc != -EPROBE_DEFER) + dev_err(dev, "couldn't get clock\n"); + return rc; + } + rc = clk_prepare_enable(lpc_snoop->clk); + if (rc) { + dev_err(dev, "couldn't enable clock\n"); + return rc; + } + rc = aspeed_lpc_snoop_config_irq(lpc_snoop, pdev); if (rc) - return rc; + goto err; rc = aspeed_lpc_enable_snoop(lpc_snoop, dev, 0, port); if (rc) - return rc; + goto err; /* Configuration of 2nd snoop channel port is optional */ if (of_property_read_u32_index(dev->of_node, "snoop-ports", 1, &port) == 0) { rc = aspeed_lpc_enable_snoop(lpc_snoop, dev, 1, port); - if (rc) + if (rc) { aspeed_lpc_disable_snoop(lpc_snoop, 0); + goto err; + } } + return 0; + +err: + clk_disable_unprepare(lpc_snoop->clk); + return rc; } @@ -309,6 +331,8 @@ aspeed_lpc_disable_snoop(lpc_snoop, 0); aspeed_lpc_disable_snoop(lpc_snoop, 1); + clk_disable_unprepare(lpc_snoop->clk); + return 0; } --- linux-azure-5.8-5.8.0.orig/drivers/soc/atmel/soc.c +++ linux-azure-5.8-5.8.0/drivers/soc/atmel/soc.c @@ -265,8 +265,21 @@ return soc_dev; } +static const struct of_device_id at91_soc_allowed_list[] __initconst = { + { .compatible = "atmel,at91rm9200", }, + { .compatible = "atmel,at91sam9", }, + { .compatible = "atmel,sama5", }, + { .compatible = "atmel,samv7", }, + { } +}; + static int __init atmel_soc_device_init(void) { + struct device_node *np = of_find_node_by_path("/"); + + if (!of_match_node(at91_soc_allowed_list, np)) + return 0; + at91_soc_init(socs); return 0; --- linux-azure-5.8-5.8.0.orig/drivers/soc/fsl/dpio/dpio-driver.c +++ linux-azure-5.8-5.8.0/drivers/soc/fsl/dpio/dpio-driver.c @@ -95,7 +95,6 @@ { int error; struct fsl_mc_device_irq *irq; - cpumask_t mask; irq = dpio_dev->irqs[0]; error = devm_request_irq(&dpio_dev->dev, @@ -112,9 +111,7 @@ } /* set the affinity hint */ - cpumask_clear(&mask); - cpumask_set_cpu(cpu, &mask); - if (irq_set_affinity_hint(irq->msi_desc->irq, &mask)) + if (irq_set_affinity_hint(irq->msi_desc->irq, cpumask_of(cpu))) dev_err(&dpio_dev->dev, "irq_set_affinity failed irq %d cpu %d\n", irq->msi_desc->irq, cpu); --- linux-azure-5.8-5.8.0.orig/drivers/soc/fsl/qbman/bman.c +++ linux-azure-5.8-5.8.0/drivers/soc/fsl/qbman/bman.c @@ -660,7 +660,7 @@ } done: put_affine_portal(); - return 0; + return err; } struct gen_pool *bm_bpalloc; --- linux-azure-5.8-5.8.0.orig/drivers/soc/mediatek/mtk-cmdq-helper.c +++ linux-azure-5.8-5.8.0/drivers/soc/mediatek/mtk-cmdq-helper.c @@ -213,15 +213,16 @@ } EXPORT_SYMBOL(cmdq_pkt_write_mask); -int cmdq_pkt_wfe(struct cmdq_pkt *pkt, u16 event) +int cmdq_pkt_wfe(struct cmdq_pkt *pkt, u16 event, bool clear) { struct cmdq_instruction inst = { {0} }; + u32 clear_option = clear ? CMDQ_WFE_UPDATE : 0; if (event >= CMDQ_MAX_EVENT) return -EINVAL; inst.op = CMDQ_CODE_WFE; - inst.value = CMDQ_WFE_OPTION; + inst.value = CMDQ_WFE_OPTION | clear_option; inst.event = event; return cmdq_pkt_append_command(pkt, inst); --- linux-azure-5.8-5.8.0.orig/drivers/soc/mediatek/mtk-scpsys.c +++ linux-azure-5.8-5.8.0/drivers/soc/mediatek/mtk-scpsys.c @@ -524,6 +524,7 @@ for (i = 0; i < num; i++) { struct scp_domain *scpd = &scp->domains[i]; struct generic_pm_domain *genpd = &scpd->genpd; + bool on; /* * Initially turn on all domains to make the domains usable @@ -531,9 +532,9 @@ * software. The unused domains will be switched off during * late_init time. */ - genpd->power_on(genpd); + on = !WARN_ON(genpd->power_on(genpd) < 0); - pm_genpd_init(genpd, NULL, false); + pm_genpd_init(genpd, NULL, !on); } /* --- linux-azure-5.8-5.8.0.orig/drivers/soc/qcom/apr.c +++ linux-azure-5.8-5.8.0/drivers/soc/qcom/apr.c @@ -328,7 +328,7 @@ pds = pdr_add_lookup(apr->pdr, service_name, service_path); if (IS_ERR(pds) && PTR_ERR(pds) != -EALREADY) { - dev_err(dev, "pdr add lookup failed: %d\n", ret); + dev_err(dev, "pdr add lookup failed: %ld\n", PTR_ERR(pds)); return PTR_ERR(pds); } } --- linux-azure-5.8-5.8.0.orig/drivers/soc/qcom/ocmem.c +++ linux-azure-5.8-5.8.0/drivers/soc/qcom/ocmem.c @@ -189,6 +189,7 @@ { struct platform_device *pdev; struct device_node *devnode; + struct ocmem *ocmem; devnode = of_parse_phandle(dev->of_node, "sram", 0); if (!devnode || !devnode->parent) { @@ -202,7 +203,12 @@ return ERR_PTR(-EPROBE_DEFER); } - return platform_get_drvdata(pdev); + ocmem = platform_get_drvdata(pdev); + if (!ocmem) { + dev_err(dev, "Cannot get ocmem\n"); + return ERR_PTR(-ENODEV); + } + return ocmem; } EXPORT_SYMBOL(of_get_ocmem); --- linux-azure-5.8-5.8.0.orig/drivers/soc/qcom/pdr_interface.c +++ linux-azure-5.8-5.8.0/drivers/soc/qcom/pdr_interface.c @@ -278,13 +278,15 @@ list_for_each_entry_safe(ind, tmp, &pdr->indack_list, node) { pds = ind->pds; - pdr_send_indack_msg(pdr, pds, ind->transaction_id); mutex_lock(&pdr->status_lock); pds->state = ind->curr_state; pdr->status(pds->state, pds->service_path, pdr->priv); mutex_unlock(&pdr->status_lock); + /* Ack the indication after clients release the PD resources */ + pdr_send_indack_msg(pdr, pds, ind->transaction_id); + mutex_lock(&pdr->list_lock); list_del(&ind->node); mutex_unlock(&pdr->list_lock); @@ -566,7 +568,7 @@ int pdr_restart_pd(struct pdr_handle *pdr, struct pdr_service *pds) { struct servreg_restart_pd_resp resp; - struct servreg_restart_pd_req req; + struct servreg_restart_pd_req req = { 0 }; struct sockaddr_qrtr addr; struct pdr_service *tmp; struct qmi_txn txn; --- linux-azure-5.8-5.8.0.orig/drivers/soc/qcom/pdr_internal.h +++ linux-azure-5.8-5.8.0/drivers/soc/qcom/pdr_internal.h @@ -185,7 +185,7 @@ .data_type = QMI_STRUCT, .elem_len = SERVREG_DOMAIN_LIST_LENGTH, .elem_size = sizeof(struct servreg_location_entry), - .array_type = NO_ARRAY, + .array_type = VAR_LEN_ARRAY, .tlv_type = 0x12, .offset = offsetof(struct servreg_get_domain_list_resp, domain_list), --- linux-azure-5.8-5.8.0.orig/drivers/soc/qcom/qcom-geni-se.c +++ linux-azure-5.8-5.8.0/drivers/soc/qcom/qcom-geni-se.c @@ -282,10 +282,23 @@ static void geni_se_select_dma_mode(struct geni_se *se) { + u32 proto = geni_se_read_proto(se); u32 val; geni_se_irq_clear(se); + val = readl_relaxed(se->base + SE_GENI_M_IRQ_EN); + if (proto != GENI_SE_UART) { + val &= ~(M_CMD_DONE_EN | M_TX_FIFO_WATERMARK_EN); + val &= ~(M_RX_FIFO_WATERMARK_EN | M_RX_FIFO_LAST_EN); + } + writel_relaxed(val, se->base + SE_GENI_M_IRQ_EN); + + val = readl_relaxed(se->base + SE_GENI_S_IRQ_EN); + if (proto != GENI_SE_UART) + val &= ~S_CMD_DONE_EN; + writel_relaxed(val, se->base + SE_GENI_S_IRQ_EN); + val = readl_relaxed(se->base + SE_GENI_DMA_MODE_EN); val |= GENI_DMA_MODE_EN; writel_relaxed(val, se->base + SE_GENI_DMA_MODE_EN); @@ -644,7 +657,7 @@ writel_relaxed(lower_32_bits(*iova), se->base + SE_DMA_TX_PTR_L); writel_relaxed(upper_32_bits(*iova), se->base + SE_DMA_TX_PTR_H); writel_relaxed(GENI_SE_DMA_EOT_BUF, se->base + SE_DMA_TX_ATTR); - writel_relaxed(len, se->base + SE_DMA_TX_LEN); + writel(len, se->base + SE_DMA_TX_LEN); return 0; } EXPORT_SYMBOL(geni_se_tx_dma_prep); @@ -681,7 +694,7 @@ writel_relaxed(upper_32_bits(*iova), se->base + SE_DMA_RX_PTR_H); /* RX does not have EOT buffer type bit. So just reset RX_ATTR */ writel_relaxed(0, se->base + SE_DMA_RX_ATTR); - writel_relaxed(len, se->base + SE_DMA_RX_LEN); + writel(len, se->base + SE_DMA_RX_LEN); return 0; } EXPORT_SYMBOL(geni_se_rx_dma_prep); --- linux-azure-5.8-5.8.0.orig/drivers/soc/qcom/rpmh-internal.h +++ linux-azure-5.8-5.8.0/drivers/soc/qcom/rpmh-internal.h @@ -8,6 +8,7 @@ #define __RPM_INTERNAL_H__ #include +#include #include #define TCS_TYPE_NR 4 @@ -106,6 +107,8 @@ * @lock: Synchronize state of the controller. If RPMH's cache * lock will also be held, the order is: drv->lock then * cache_lock. + * @tcs_wait: Wait queue used to wait for @tcs_in_use to free up a + * slot * @client: Handle to the DRV's client. */ struct rsc_drv { @@ -118,6 +121,7 @@ struct tcs_group tcs[TCS_TYPE_NR]; DECLARE_BITMAP(tcs_in_use, MAX_TCS_NR); spinlock_t lock; + wait_queue_head_t tcs_wait; struct rpmh_ctrlr client; }; --- linux-azure-5.8-5.8.0.orig/drivers/soc/qcom/rpmh-rsc.c +++ linux-azure-5.8-5.8.0/drivers/soc/qcom/rpmh-rsc.c @@ -19,6 +19,7 @@ #include #include #include +#include #include #include @@ -175,13 +176,21 @@ static void write_tcs_reg_sync(const struct rsc_drv *drv, int reg, int tcs_id, u32 data) { - u32 new_data; + int i; writel(data, tcs_reg_addr(drv, reg, tcs_id)); - if (readl_poll_timeout_atomic(tcs_reg_addr(drv, reg, tcs_id), new_data, - new_data == data, 1, USEC_PER_SEC)) - pr_err("%s: error writing %#x to %d:%#x\n", drv->name, - data, tcs_id, reg); + + /* + * Wait until we read back the same value. Use a counter rather than + * ktime for timeout since this may be called after timekeeping stops. + */ + for (i = 0; i < USEC_PER_SEC; i++) { + if (readl(tcs_reg_addr(drv, reg, tcs_id)) == data) + return; + udelay(1); + } + pr_err("%s: error writing %#x to %d:%#x\n", drv->name, + data, tcs_id, reg); } /** @@ -445,6 +454,7 @@ if (!drv->tcs[ACTIVE_TCS].num_tcs) enable_tcs_irq(drv, i, false); spin_unlock(&drv->lock); + wake_up(&drv->tcs_wait); if (req) rpmh_tx_done(req, err); } @@ -563,73 +573,34 @@ } /** - * tcs_write() - Store messages into a TCS right now, or return -EBUSY. + * claim_tcs_for_req() - Claim a tcs in the given tcs_group; only for active. * @drv: The controller. + * @tcs: The tcs_group used for ACTIVE_ONLY transfers. * @msg: The data to be sent. * - * Grabs a TCS for ACTIVE_ONLY transfers and writes the messages to it. + * Claims a tcs in the given tcs_group while making sure that no existing cmd + * is in flight that would conflict with the one in @msg. * - * If there are no free TCSes for ACTIVE_ONLY transfers or if a command for - * the same address is already transferring returns -EBUSY which means the - * client should retry shortly. + * Context: Must be called with the drv->lock held since that protects + * tcs_in_use. * - * Return: 0 on success, -EBUSY if client should retry, or an error. - * Client should have interrupts enabled for a bit before retrying. + * Return: The id of the claimed tcs or -EBUSY if a matching msg is in flight + * or the tcs_group is full. */ -static int tcs_write(struct rsc_drv *drv, const struct tcs_request *msg) +static int claim_tcs_for_req(struct rsc_drv *drv, struct tcs_group *tcs, + const struct tcs_request *msg) { - struct tcs_group *tcs; - int tcs_id; - unsigned long flags; int ret; - tcs = get_tcs_for_msg(drv, msg); - if (IS_ERR(tcs)) - return PTR_ERR(tcs); - - spin_lock_irqsave(&drv->lock, flags); /* * The h/w does not like if we send a request to the same address, * when one is already in-flight or being processed. */ ret = check_for_req_inflight(drv, tcs, msg); if (ret) - goto unlock; - - ret = find_free_tcs(tcs); - if (ret < 0) - goto unlock; - tcs_id = ret; - - tcs->req[tcs_id - tcs->offset] = msg; - set_bit(tcs_id, drv->tcs_in_use); - if (msg->state == RPMH_ACTIVE_ONLY_STATE && tcs->type != ACTIVE_TCS) { - /* - * Clear previously programmed WAKE commands in selected - * repurposed TCS to avoid triggering them. tcs->slots will be - * cleaned from rpmh_flush() by invoking rpmh_rsc_invalidate() - */ - write_tcs_reg_sync(drv, RSC_DRV_CMD_ENABLE, tcs_id, 0); - write_tcs_reg_sync(drv, RSC_DRV_CMD_WAIT_FOR_CMPL, tcs_id, 0); - enable_tcs_irq(drv, tcs_id, true); - } - spin_unlock_irqrestore(&drv->lock, flags); - - /* - * These two can be done after the lock is released because: - * - We marked "tcs_in_use" under lock. - * - Once "tcs_in_use" has been marked nobody else could be writing - * to these registers until the interrupt goes off. - * - The interrupt can't go off until we trigger w/ the last line - * of __tcs_set_trigger() below. - */ - __tcs_buffer_write(drv, tcs_id, 0, msg); - __tcs_set_trigger(drv, tcs_id, true); + return ret; - return 0; -unlock: - spin_unlock_irqrestore(&drv->lock, flags); - return ret; + return find_free_tcs(tcs); } /** @@ -656,18 +627,47 @@ */ int rpmh_rsc_send_data(struct rsc_drv *drv, const struct tcs_request *msg) { - int ret; + struct tcs_group *tcs; + int tcs_id; + unsigned long flags; - do { - ret = tcs_write(drv, msg); - if (ret == -EBUSY) { - pr_info_ratelimited("TCS Busy, retrying RPMH message send: addr=%#x\n", - msg->cmds[0].addr); - udelay(10); - } - } while (ret == -EBUSY); + tcs = get_tcs_for_msg(drv, msg); + if (IS_ERR(tcs)) + return PTR_ERR(tcs); - return ret; + spin_lock_irqsave(&drv->lock, flags); + + /* Wait forever for a free tcs. It better be there eventually! */ + wait_event_lock_irq(drv->tcs_wait, + (tcs_id = claim_tcs_for_req(drv, tcs, msg)) >= 0, + drv->lock); + + tcs->req[tcs_id - tcs->offset] = msg; + set_bit(tcs_id, drv->tcs_in_use); + if (msg->state == RPMH_ACTIVE_ONLY_STATE && tcs->type != ACTIVE_TCS) { + /* + * Clear previously programmed WAKE commands in selected + * repurposed TCS to avoid triggering them. tcs->slots will be + * cleaned from rpmh_flush() by invoking rpmh_rsc_invalidate() + */ + write_tcs_reg_sync(drv, RSC_DRV_CMD_ENABLE, tcs_id, 0); + write_tcs_reg_sync(drv, RSC_DRV_CMD_WAIT_FOR_CMPL, tcs_id, 0); + enable_tcs_irq(drv, tcs_id, true); + } + spin_unlock_irqrestore(&drv->lock, flags); + + /* + * These two can be done after the lock is released because: + * - We marked "tcs_in_use" under lock. + * - Once "tcs_in_use" has been marked nobody else could be writing + * to these registers until the interrupt goes off. + * - The interrupt can't go off until we trigger w/ the last line + * of __tcs_set_trigger() below. + */ + __tcs_buffer_write(drv, tcs_id, 0, msg); + __tcs_set_trigger(drv, tcs_id, true); + + return 0; } /** @@ -975,6 +975,7 @@ return ret; spin_lock_init(&drv->lock); + init_waitqueue_head(&drv->tcs_wait); bitmap_zero(drv->tcs_in_use, MAX_TCS_NR); irq = platform_get_irq(pdev, drv->id); @@ -1023,6 +1024,7 @@ .driver = { .name = "rpmh", .of_match_table = rpmh_drv_match, + .suppress_bind_attrs = true, }, }; --- linux-azure-5.8-5.8.0.orig/drivers/soc/qcom/smp2p.c +++ linux-azure-5.8-5.8.0/drivers/soc/qcom/smp2p.c @@ -318,15 +318,16 @@ static int smp2p_update_bits(void *data, u32 mask, u32 value) { struct smp2p_entry *entry = data; + unsigned long flags; u32 orig; u32 val; - spin_lock(&entry->lock); + spin_lock_irqsave(&entry->lock, flags); val = orig = readl(entry->value); val &= ~mask; val |= value; writel(val, entry->value); - spin_unlock(&entry->lock); + spin_unlock_irqrestore(&entry->lock, flags); if (val != orig) qcom_smp2p_kick(entry->smp2p); --- linux-azure-5.8-5.8.0.orig/drivers/soc/renesas/rmobile-sysc.c +++ linux-azure-5.8-5.8.0/drivers/soc/renesas/rmobile-sysc.c @@ -327,6 +327,7 @@ pmd = of_get_child_by_name(np, "pm-domains"); if (!pmd) { + iounmap(base); pr_warn("%pOF lacks pm-domains node\n", np); continue; } --- linux-azure-5.8-5.8.0.orig/drivers/soc/samsung/exynos-asv.c +++ linux-azure-5.8-5.8.0/drivers/soc/samsung/exynos-asv.c @@ -119,11 +119,6 @@ u32 product_id = 0; int ret, i; - cpu_dev = get_cpu_device(0); - ret = dev_pm_opp_get_opp_count(cpu_dev); - if (ret < 0) - return -EPROBE_DEFER; - asv = devm_kzalloc(&pdev->dev, sizeof(*asv), GFP_KERNEL); if (!asv) return -ENOMEM; @@ -134,7 +129,13 @@ return PTR_ERR(asv->chipid_regmap); } - regmap_read(asv->chipid_regmap, EXYNOS_CHIPID_REG_PRO_ID, &product_id); + ret = regmap_read(asv->chipid_regmap, EXYNOS_CHIPID_REG_PRO_ID, + &product_id); + if (ret < 0) { + dev_err(&pdev->dev, "Cannot read revision from ChipID: %d\n", + ret); + return -ENODEV; + } switch (product_id & EXYNOS_MASK) { case 0xE5422000: @@ -144,6 +145,11 @@ return -ENODEV; } + cpu_dev = get_cpu_device(0); + ret = dev_pm_opp_get_opp_count(cpu_dev); + if (ret < 0) + return -EPROBE_DEFER; + ret = of_property_read_u32(pdev->dev.of_node, "samsung,asv-bin", &asv->of_bin); if (ret < 0) --- linux-azure-5.8-5.8.0.orig/drivers/soc/tegra/fuse/speedo-tegra210.c +++ linux-azure-5.8-5.8.0/drivers/soc/tegra/fuse/speedo-tegra210.c @@ -94,7 +94,7 @@ unsigned int i; for (i = 0; i < num; i++) - if (value < speedos[num]) + if (value < speedos[i]) return i; return -EINVAL; --- linux-azure-5.8-5.8.0.orig/drivers/soc/ti/knav_dma.c +++ linux-azure-5.8-5.8.0/drivers/soc/ti/knav_dma.c @@ -759,8 +759,9 @@ pm_runtime_enable(kdev->dev); ret = pm_runtime_get_sync(kdev->dev); if (ret < 0) { + pm_runtime_put_noidle(kdev->dev); dev_err(kdev->dev, "unable to enable pktdma, err %d\n", ret); - return ret; + goto err_pm_disable; } /* Initialise all packet dmas */ @@ -774,7 +775,8 @@ if (list_empty(&kdev->list)) { dev_err(dev, "no valid dma instance\n"); - return -ENODEV; + ret = -ENODEV; + goto err_put_sync; } debugfs_create_file("knav_dma", S_IFREG | S_IRUGO, NULL, NULL, @@ -782,6 +784,13 @@ device_ready = true; return ret; + +err_put_sync: + pm_runtime_put_sync(kdev->dev); +err_pm_disable: + pm_runtime_disable(kdev->dev); + + return ret; } static int knav_dma_remove(struct platform_device *pdev) --- linux-azure-5.8-5.8.0.orig/drivers/soc/ti/knav_qmss_queue.c +++ linux-azure-5.8-5.8.0/drivers/soc/ti/knav_qmss_queue.c @@ -1794,6 +1794,7 @@ pm_runtime_enable(&pdev->dev); ret = pm_runtime_get_sync(&pdev->dev); if (ret < 0) { + pm_runtime_put_noidle(&pdev->dev); dev_err(dev, "Failed to enable QMSS\n"); return ret; } @@ -1861,9 +1862,10 @@ if (ret) goto err; - regions = of_get_child_by_name(node, "descriptor-regions"); + regions = of_get_child_by_name(node, "descriptor-regions"); if (!regions) { dev_err(dev, "descriptor-regions not specified\n"); + ret = -ENODEV; goto err; } ret = knav_queue_setup_regions(kdev, regions); --- linux-azure-5.8-5.8.0.orig/drivers/soc/ti/omap_prm.c +++ linux-azure-5.8-5.8.0/drivers/soc/ti/omap_prm.c @@ -231,6 +231,10 @@ struct ti_prm_platform_data *pdata = dev_get_platdata(reset->dev); int ret = 0; + /* Nothing to do if the reset is already deasserted */ + if (!omap_reset_status(rcdev, id)) + return 0; + has_rstst = reset->prm->data->rstst || (reset->prm->data->flags & OMAP_PRM_HAS_RSTST); @@ -295,6 +299,7 @@ const struct omap_rst_map *map; struct ti_prm_platform_data *pdata = dev_get_platdata(&pdev->dev); char buf[32]; + u32 v; /* * Check if we have controllable resets. If either rstctrl is non-zero @@ -342,6 +347,16 @@ map++; } + /* Quirk handling to assert rst_map_012 bits on reset and avoid errors */ + if (prm->data->rstmap == rst_map_012) { + v = readl_relaxed(reset->prm->base + reset->prm->data->rstctrl); + if ((v & reset->mask) != reset->mask) { + dev_dbg(&pdev->dev, "Asserting all resets: %08x\n", v); + writel_relaxed(reset->mask, reset->prm->base + + reset->prm->data->rstctrl); + } + } + return devm_reset_controller_register(&pdev->dev, &reset->rcdev); } --- linux-azure-5.8-5.8.0.orig/drivers/soc/ti/pm33xx.c +++ linux-azure-5.8-5.8.0/drivers/soc/ti/pm33xx.c @@ -501,7 +501,7 @@ ret = am33xx_push_sram_idle(); if (ret) - goto err_free_sram; + goto err_unsetup_rtc; am33xx_pm_set_ipc_ops(); @@ -531,6 +531,9 @@ err_put_wkup_m3_ipc: wkup_m3_ipc_put(m3_ipc); +err_unsetup_rtc: + iounmap(rtc_base_virt); + clk_put(rtc_fck); err_free_sram: am33xx_pm_free_sram(); pm33xx_dev = NULL; --- linux-azure-5.8-5.8.0.orig/drivers/soc/xilinx/zynqmp_power.c +++ linux-azure-5.8-5.8.0/drivers/soc/xilinx/zynqmp_power.c @@ -205,7 +205,7 @@ rx_chan = mbox_request_channel_byname(client, "rx"); if (IS_ERR(rx_chan)) { dev_err(&pdev->dev, "Failed to request rx channel\n"); - return IS_ERR(rx_chan); + return PTR_ERR(rx_chan); } } else if (of_find_property(pdev->dev.of_node, "interrupts", NULL)) { irq = platform_get_irq(pdev, 0); --- linux-azure-5.8-5.8.0.orig/drivers/soundwire/bus.c +++ linux-azure-5.8-5.8.0/drivers/soundwire/bus.c @@ -390,10 +390,11 @@ return sdw_transfer(slave->bus, &msg); } -static int sdw_write_no_pm(struct sdw_slave *slave, u32 addr, u8 value) +int sdw_write_no_pm(struct sdw_slave *slave, u32 addr, u8 value) { return sdw_nwrite_no_pm(slave, addr, 1, &value); } +EXPORT_SYMBOL(sdw_write_no_pm); static int sdw_bread_no_pm(struct sdw_bus *bus, u16 dev_num, u32 addr) @@ -428,8 +429,7 @@ return sdw_transfer(bus, &msg); } -static int -sdw_read_no_pm(struct sdw_slave *slave, u32 addr) +int sdw_read_no_pm(struct sdw_slave *slave, u32 addr) { u8 buf; int ret; @@ -440,6 +440,19 @@ else return buf; } +EXPORT_SYMBOL(sdw_read_no_pm); + +static int sdw_update_no_pm(struct sdw_slave *slave, u32 addr, u8 mask, u8 val) +{ + int tmp; + + tmp = sdw_read_no_pm(slave, addr); + if (tmp < 0) + return tmp; + + tmp = (tmp & ~mask) | val; + return sdw_write_no_pm(slave, addr, tmp); +} /** * sdw_nread() - Read "n" contiguous SDW Slave registers @@ -452,16 +465,16 @@ { int ret; - ret = pm_runtime_get_sync(slave->bus->dev); + ret = pm_runtime_get_sync(&slave->dev); if (ret < 0 && ret != -EACCES) { - pm_runtime_put_noidle(slave->bus->dev); + pm_runtime_put_noidle(&slave->dev); return ret; } ret = sdw_nread_no_pm(slave, addr, count, val); - pm_runtime_mark_last_busy(slave->bus->dev); - pm_runtime_put(slave->bus->dev); + pm_runtime_mark_last_busy(&slave->dev); + pm_runtime_put(&slave->dev); return ret; } @@ -478,16 +491,16 @@ { int ret; - ret = pm_runtime_get_sync(slave->bus->dev); + ret = pm_runtime_get_sync(&slave->dev); if (ret < 0 && ret != -EACCES) { - pm_runtime_put_noidle(slave->bus->dev); + pm_runtime_put_noidle(&slave->dev); return ret; } ret = sdw_nwrite_no_pm(slave, addr, count, val); - pm_runtime_mark_last_busy(slave->bus->dev); - pm_runtime_put(slave->bus->dev); + pm_runtime_mark_last_busy(&slave->dev); + pm_runtime_put(&slave->dev); return ret; } @@ -1075,7 +1088,7 @@ SDW_SCP_INT1_PARITY; /* Enable SCP interrupts */ - ret = sdw_update(slave, SDW_SCP_INTMASK1, val, val); + ret = sdw_update_no_pm(slave, SDW_SCP_INTMASK1, val, val); if (ret < 0) { dev_err(slave->bus->dev, "SDW_SCP_INTMASK1 write failed:%d\n", ret); @@ -1090,7 +1103,7 @@ val = prop->dp0_prop->imp_def_interrupts; val |= SDW_DP0_INT_PORT_READY | SDW_DP0_INT_BRA_FAILURE; - ret = sdw_update(slave, SDW_DP0_INTMASK, val, val); + ret = sdw_update_no_pm(slave, SDW_DP0_INTMASK, val, val); if (ret < 0) dev_err(slave->bus->dev, "SDW_DP0_INTMASK read failed:%d\n", ret); @@ -1250,7 +1263,7 @@ ret = pm_runtime_get_sync(&slave->dev); if (ret < 0 && ret != -EACCES) { dev_err(&slave->dev, "Failed to resume device: %d\n", ret); - pm_runtime_put_noidle(slave->bus->dev); + pm_runtime_put_noidle(&slave->dev); return ret; } --- linux-azure-5.8-5.8.0.orig/drivers/soundwire/cadence_master.c +++ linux-azure-5.8-5.8.0/drivers/soundwire/cadence_master.c @@ -397,10 +397,10 @@ if (!(cdns->response_buf[i] & CDNS_MCP_RESP_ACK)) { no_ack = 1; dev_dbg_ratelimited(cdns->dev, "Msg Ack not received\n"); - if (cdns->response_buf[i] & CDNS_MCP_RESP_NACK) { - nack = 1; - dev_err_ratelimited(cdns->dev, "Msg NACK received\n"); - } + } + if (cdns->response_buf[i] & CDNS_MCP_RESP_NACK) { + nack = 1; + dev_err_ratelimited(cdns->dev, "Msg NACK received\n"); } } --- linux-azure-5.8-5.8.0.orig/drivers/soundwire/intel_init.c +++ linux-azure-5.8-5.8.0/drivers/soundwire/intel_init.c @@ -196,11 +196,12 @@ { acpi_status status; + res->handle = NULL; status = acpi_walk_namespace(ACPI_TYPE_DEVICE, parent_handle, 1, sdw_intel_acpi_cb, NULL, res, NULL); - if (ACPI_FAILURE(status)) + if (ACPI_FAILURE(status) || res->handle == NULL) return NULL; return sdw_intel_add_controller(res); --- linux-azure-5.8-5.8.0.orig/drivers/soundwire/stream.c +++ linux-azure-5.8-5.8.0/drivers/soundwire/stream.c @@ -716,6 +716,7 @@ kfree(wbuf); error_1: kfree(wr_msg); + bus->defer_msg.msg = NULL; return ret; } @@ -839,9 +840,10 @@ error: list_for_each_entry(m_rt, &stream->master_list, stream_node) { bus = m_rt->bus; - - kfree(bus->defer_msg.msg->buf); - kfree(bus->defer_msg.msg); + if (bus->defer_msg.msg) { + kfree(bus->defer_msg.msg->buf); + kfree(bus->defer_msg.msg); + } } msg_unlock: --- linux-azure-5.8-5.8.0.orig/drivers/soundwire/sysfs_slave_dpn.c +++ linux-azure-5.8-5.8.0/drivers/soundwire/sysfs_slave_dpn.c @@ -37,6 +37,7 @@ return -ENOMEM; \ dpn_attr->N = N; \ dpn_attr->dir = dir; \ + sysfs_attr_init(&dpn_attr->dev_attr.attr); \ dpn_attr->format_string = format_string; \ dpn_attr->dev_attr.attr.name = __stringify(field); \ dpn_attr->dev_attr.attr.mode = 0444; \ --- linux-azure-5.8-5.8.0.orig/drivers/spi/Kconfig +++ linux-azure-5.8-5.8.0/drivers/spi/Kconfig @@ -999,4 +999,7 @@ endif # SPI_SLAVE +config SPI_DYNAMIC + def_bool ACPI || OF_DYNAMIC || SPI_SLAVE + endif # SPI --- linux-azure-5.8-5.8.0.orig/drivers/spi/atmel-quadspi.c +++ linux-azure-5.8-5.8.0/drivers/spi/atmel-quadspi.c @@ -359,10 +359,14 @@ if (dummy_cycles) ifr |= QSPI_IFR_NBDUM(dummy_cycles); - /* Set data enable */ - if (op->data.nbytes) + /* Set data enable and data transfer type. */ + if (op->data.nbytes) { ifr |= QSPI_IFR_DATAEN; + if (op->addr.nbytes) + ifr |= QSPI_IFR_TFRTYP_MEM; + } + /* * If the QSPI controller is set in regular SPI mode, set it in * Serial Memory Mode (SMM). @@ -387,7 +391,7 @@ atmel_qspi_write(icr, aq, QSPI_WICR); atmel_qspi_write(ifr, aq, QSPI_IFR); } else { - if (op->data.dir == SPI_MEM_DATA_OUT) + if (op->data.nbytes && op->data.dir == SPI_MEM_DATA_OUT) ifr |= QSPI_IFR_SAMA5D2_WRITE_TRSFR; /* Set QSPI Instruction Frame registers */ @@ -529,7 +533,7 @@ struct resource *res; int irq, err = 0; - ctrl = spi_alloc_master(&pdev->dev, sizeof(*aq)); + ctrl = devm_spi_alloc_master(&pdev->dev, sizeof(*aq)); if (!ctrl) return -ENOMEM; @@ -551,8 +555,7 @@ aq->regs = devm_ioremap_resource(&pdev->dev, res); if (IS_ERR(aq->regs)) { dev_err(&pdev->dev, "missing registers\n"); - err = PTR_ERR(aq->regs); - goto exit; + return PTR_ERR(aq->regs); } /* Map the AHB memory */ @@ -560,8 +563,7 @@ aq->mem = devm_ioremap_resource(&pdev->dev, res); if (IS_ERR(aq->mem)) { dev_err(&pdev->dev, "missing AHB memory\n"); - err = PTR_ERR(aq->mem); - goto exit; + return PTR_ERR(aq->mem); } aq->mmap_size = resource_size(res); @@ -573,22 +575,21 @@ if (IS_ERR(aq->pclk)) { dev_err(&pdev->dev, "missing peripheral clock\n"); - err = PTR_ERR(aq->pclk); - goto exit; + return PTR_ERR(aq->pclk); } /* Enable the peripheral clock */ err = clk_prepare_enable(aq->pclk); if (err) { dev_err(&pdev->dev, "failed to enable the peripheral clock\n"); - goto exit; + return err; } aq->caps = of_device_get_match_data(&pdev->dev); if (!aq->caps) { dev_err(&pdev->dev, "Could not retrieve QSPI caps\n"); err = -EINVAL; - goto exit; + goto disable_pclk; } if (aq->caps->has_qspick) { @@ -632,8 +633,6 @@ clk_disable_unprepare(aq->qspick); disable_pclk: clk_disable_unprepare(aq->pclk); -exit: - spi_controller_put(ctrl); return err; } --- linux-azure-5.8-5.8.0.orig/drivers/spi/spi-ar934x.c +++ linux-azure-5.8-5.8.0/drivers/spi/spi-ar934x.c @@ -176,10 +176,11 @@ if (ret) return ret; - ctlr = spi_alloc_master(&pdev->dev, sizeof(*sp)); + ctlr = devm_spi_alloc_master(&pdev->dev, sizeof(*sp)); if (!ctlr) { dev_info(&pdev->dev, "failed to allocate spi controller\n"); - return -ENOMEM; + ret = -ENOMEM; + goto err_clk_disable; } /* disable flash mapping and expose spi controller registers */ @@ -202,7 +203,13 @@ sp->clk_freq = clk_get_rate(clk); sp->ctlr = ctlr; - return devm_spi_register_controller(&pdev->dev, ctlr); + ret = spi_register_controller(ctlr); + if (!ret) + return 0; + +err_clk_disable: + clk_disable_unprepare(clk); + return ret; } static int ar934x_spi_remove(struct platform_device *pdev) @@ -213,6 +220,7 @@ ctlr = dev_get_drvdata(&pdev->dev); sp = spi_controller_get_devdata(ctlr); + spi_unregister_controller(ctlr); clk_disable_unprepare(sp->clk); return 0; --- linux-azure-5.8-5.8.0.orig/drivers/spi/spi-atmel.c +++ linux-azure-5.8-5.8.0/drivers/spi/spi-atmel.c @@ -1592,7 +1592,7 @@ if (ret == 0) { as->use_dma = true; } else if (ret == -EPROBE_DEFER) { - return ret; + goto out_unmap_regs; } } else if (as->caps.has_pdc_support) { as->use_pdc = true; --- linux-azure-5.8-5.8.0.orig/drivers/spi/spi-bcm-qspi.c +++ linux-azure-5.8-5.8.0/drivers/spi/spi-bcm-qspi.c @@ -1295,7 +1295,7 @@ }, { .compatible = "brcm,spi-bcm-qspi", - .data = &bcm_qspi_rev_data, + .data = &bcm_qspi_no_rev_data, }, { .compatible = "brcm,spi-bcm7216-qspi", @@ -1334,7 +1334,7 @@ data = of_id->data; - master = spi_alloc_master(dev, sizeof(struct bcm_qspi)); + master = devm_spi_alloc_master(dev, sizeof(struct bcm_qspi)); if (!master) { dev_err(dev, "error allocating spi_master\n"); return -ENOMEM; @@ -1374,21 +1374,17 @@ if (res) { qspi->base[MSPI] = devm_ioremap_resource(dev, res); - if (IS_ERR(qspi->base[MSPI])) { - ret = PTR_ERR(qspi->base[MSPI]); - goto qspi_resource_err; - } + if (IS_ERR(qspi->base[MSPI])) + return PTR_ERR(qspi->base[MSPI]); } else { - goto qspi_resource_err; + return 0; } res = platform_get_resource_byname(pdev, IORESOURCE_MEM, "bspi"); if (res) { qspi->base[BSPI] = devm_ioremap_resource(dev, res); - if (IS_ERR(qspi->base[BSPI])) { - ret = PTR_ERR(qspi->base[BSPI]); - goto qspi_resource_err; - } + if (IS_ERR(qspi->base[BSPI])) + return PTR_ERR(qspi->base[BSPI]); qspi->bspi_mode = true; } else { qspi->bspi_mode = false; @@ -1399,18 +1395,14 @@ res = platform_get_resource_byname(pdev, IORESOURCE_MEM, "cs_reg"); if (res) { qspi->base[CHIP_SELECT] = devm_ioremap_resource(dev, res); - if (IS_ERR(qspi->base[CHIP_SELECT])) { - ret = PTR_ERR(qspi->base[CHIP_SELECT]); - goto qspi_resource_err; - } + if (IS_ERR(qspi->base[CHIP_SELECT])) + return PTR_ERR(qspi->base[CHIP_SELECT]); } qspi->dev_ids = kcalloc(num_irqs, sizeof(struct bcm_qspi_dev_id), GFP_KERNEL); - if (!qspi->dev_ids) { - ret = -ENOMEM; - goto qspi_resource_err; - } + if (!qspi->dev_ids) + return -ENOMEM; for (val = 0; val < num_irqs; val++) { irq = -1; @@ -1491,7 +1483,7 @@ qspi->xfer_mode.addrlen = -1; qspi->xfer_mode.hp = -1; - ret = devm_spi_register_master(&pdev->dev, master); + ret = spi_register_master(master); if (ret < 0) { dev_err(dev, "can't register master\n"); goto qspi_reg_err; @@ -1504,8 +1496,6 @@ clk_disable_unprepare(qspi->clk); qspi_probe_err: kfree(qspi->dev_ids); -qspi_resource_err: - spi_master_put(master); return ret; } /* probe function to be called by SoC specific platform driver probe */ @@ -1515,10 +1505,10 @@ { struct bcm_qspi *qspi = platform_get_drvdata(pdev); + spi_unregister_master(qspi->master); bcm_qspi_hw_uninit(qspi); clk_disable_unprepare(qspi->clk); kfree(qspi->dev_ids); - spi_unregister_master(qspi->master); return 0; } --- linux-azure-5.8-5.8.0.orig/drivers/spi/spi-bcm2835.c +++ linux-azure-5.8-5.8.0/drivers/spi/spi-bcm2835.c @@ -1195,7 +1195,6 @@ struct spi_controller *ctlr = spi->controller; struct bcm2835_spi *bs = spi_controller_get_devdata(ctlr); struct gpio_chip *chip; - enum gpio_lookup_flags lflags; u32 cs; /* @@ -1261,21 +1260,9 @@ if (!chip) return 0; - /* - * Retrieve the corresponding GPIO line used for CS. - * The inversion semantics will be handled by the GPIO core - * code, so we pass GPIOD_OUT_LOW for "unasserted" and - * the correct flag for inversion semantics. The SPI_CS_HIGH - * on spi->mode cannot be checked for polarity in this case - * as the flag use_gpio_descriptors enforces SPI_CS_HIGH. - */ - if (of_property_read_bool(spi->dev.of_node, "spi-cs-high")) - lflags = GPIO_ACTIVE_HIGH; - else - lflags = GPIO_ACTIVE_LOW; spi->cs_gpiod = gpiochip_request_own_desc(chip, 8 - spi->chip_select, DRV_NAME, - lflags, + GPIO_LOOKUP_FLAGS_DEFAULT, GPIOD_OUT_LOW); if (IS_ERR(spi->cs_gpiod)) return PTR_ERR(spi->cs_gpiod); @@ -1293,7 +1280,7 @@ struct bcm2835_spi *bs; int err; - ctlr = spi_alloc_master(&pdev->dev, ALIGN(sizeof(*bs), + ctlr = devm_spi_alloc_master(&pdev->dev, ALIGN(sizeof(*bs), dma_get_cache_alignment())); if (!ctlr) return -ENOMEM; @@ -1313,10 +1300,8 @@ bs = spi_controller_get_devdata(ctlr); bs->regs = devm_platform_ioremap_resource(pdev, 0); - if (IS_ERR(bs->regs)) { - err = PTR_ERR(bs->regs); - goto out_controller_put; - } + if (IS_ERR(bs->regs)) + return PTR_ERR(bs->regs); bs->clk = devm_clk_get(&pdev->dev, NULL); if (IS_ERR(bs->clk)) { @@ -1325,14 +1310,12 @@ dev_dbg(&pdev->dev, "could not get clk: %d\n", err); else dev_err(&pdev->dev, "could not get clk: %d\n", err); - goto out_controller_put; + return err; } bs->irq = platform_get_irq(pdev, 0); - if (bs->irq <= 0) { - err = bs->irq ? bs->irq : -ENODEV; - goto out_controller_put; - } + if (bs->irq <= 0) + return bs->irq ? bs->irq : -ENODEV; clk_prepare_enable(bs->clk); @@ -1366,8 +1349,6 @@ bcm2835_dma_release(ctlr, bs); out_clk_disable: clk_disable_unprepare(bs->clk); -out_controller_put: - spi_controller_put(ctlr); return err; } --- linux-azure-5.8-5.8.0.orig/drivers/spi/spi-bcm2835aux.c +++ linux-azure-5.8-5.8.0/drivers/spi/spi-bcm2835aux.c @@ -494,7 +494,7 @@ unsigned long clk_hz; int err; - master = spi_alloc_master(&pdev->dev, sizeof(*bs)); + master = devm_spi_alloc_master(&pdev->dev, sizeof(*bs)); if (!master) return -ENOMEM; @@ -524,29 +524,25 @@ /* the main area */ bs->regs = devm_platform_ioremap_resource(pdev, 0); - if (IS_ERR(bs->regs)) { - err = PTR_ERR(bs->regs); - goto out_master_put; - } + if (IS_ERR(bs->regs)) + return PTR_ERR(bs->regs); bs->clk = devm_clk_get(&pdev->dev, NULL); if (IS_ERR(bs->clk)) { err = PTR_ERR(bs->clk); dev_err(&pdev->dev, "could not get clk: %d\n", err); - goto out_master_put; + return err; } bs->irq = platform_get_irq(pdev, 0); - if (bs->irq <= 0) { - err = bs->irq ? bs->irq : -ENODEV; - goto out_master_put; - } + if (bs->irq <= 0) + return bs->irq ? bs->irq : -ENODEV; /* this also enables the HW block */ err = clk_prepare_enable(bs->clk); if (err) { dev_err(&pdev->dev, "could not prepare clock: %d\n", err); - goto out_master_put; + return err; } /* just checking if the clock returns a sane value */ @@ -581,8 +577,6 @@ out_clk_disable: clk_disable_unprepare(bs->clk); -out_master_put: - spi_master_put(master); return err; } --- linux-azure-5.8-5.8.0.orig/drivers/spi/spi-bcm63xx-hsspi.c +++ linux-azure-5.8-5.8.0/drivers/spi/spi-bcm63xx-hsspi.c @@ -482,8 +482,10 @@ if (bs->pll_clk) { ret = clk_prepare_enable(bs->pll_clk); - if (ret) + if (ret) { + clk_disable_unprepare(bs->clk); return ret; + } } spi_master_resume(master); --- linux-azure-5.8-5.8.0.orig/drivers/spi/spi-cadence.c +++ linux-azure-5.8-5.8.0/drivers/spi/spi-cadence.c @@ -115,6 +115,7 @@ void __iomem *regs; struct clk *ref_clk; struct clk *pclk; + unsigned int clk_rate; u32 speed_hz; const u8 *txbuf; u8 *rxbuf; @@ -250,7 +251,7 @@ u32 ctrl_reg, baud_rate_val; unsigned long frequency; - frequency = clk_get_rate(xspi->ref_clk); + frequency = xspi->clk_rate; ctrl_reg = cdns_spi_read(xspi, CDNS_SPI_CR); @@ -558,8 +559,9 @@ master->auto_runtime_pm = true; master->mode_bits = SPI_CPOL | SPI_CPHA; + xspi->clk_rate = clk_get_rate(xspi->ref_clk); /* Set to default valid value */ - master->max_speed_hz = clk_get_rate(xspi->ref_clk) / 4; + master->max_speed_hz = xspi->clk_rate / 4; xspi->speed_hz = master->max_speed_hz; master->bits_per_word_mask = SPI_BPW_MASK(8); --- linux-azure-5.8-5.8.0.orig/drivers/spi/spi-davinci.c +++ linux-azure-5.8-5.8.0/drivers/spi/spi-davinci.c @@ -1040,13 +1040,13 @@ spi_bitbang_stop(&dspi->bitbang); clk_disable_unprepare(dspi->clk); - spi_master_put(master); if (dspi->dma_rx) { dma_release_channel(dspi->dma_rx); dma_release_channel(dspi->dma_tx); } + spi_master_put(master); return 0; } --- linux-azure-5.8-5.8.0.orig/drivers/spi/spi-dw-dma.c +++ linux-azure-5.8-5.8.0/drivers/spi/spi-dw-dma.c @@ -372,8 +372,20 @@ { u16 imr = 0, dma_ctrl = 0; + /* + * Having a Rx DMA channel serviced with higher priority than a Tx DMA + * channel might not be enough to provide a well balanced DMA-based + * SPI transfer interface. There might still be moments when the Tx DMA + * channel is occasionally handled faster than the Rx DMA channel. + * That in its turn will eventually cause the SPI Rx FIFO overflow if + * SPI bus speed is high enough to fill the SPI Rx FIFO in before it's + * cleared by the Rx DMA channel. In order to fix the problem the Tx + * DMA activity is intentionally slowed down by limiting the SPI Tx + * FIFO depth with a value twice bigger than the Tx burst length + * calculated earlier by the dw_spi_dma_maxburst_init() method. + */ dw_writel(dws, DW_SPI_DMARDLR, dws->rxburst - 1); - dw_writel(dws, DW_SPI_DMATDLR, dws->fifo_len - dws->txburst); + dw_writel(dws, DW_SPI_DMATDLR, dws->txburst); if (xfer->tx_buf) dma_ctrl |= SPI_DMA_TDMAE; --- linux-azure-5.8-5.8.0.orig/drivers/spi/spi-dw-pci.c +++ linux-azure-5.8-5.8.0/drivers/spi/spi-dw-pci.c @@ -127,18 +127,16 @@ if (desc->setup) { ret = desc->setup(dws); if (ret) - return ret; + goto err_free_irq_vectors; } } else { - pci_free_irq_vectors(pdev); - return -ENODEV; + ret = -ENODEV; + goto err_free_irq_vectors; } ret = dw_spi_add_host(&pdev->dev, dws); - if (ret) { - pci_free_irq_vectors(pdev); - return ret; - } + if (ret) + goto err_free_irq_vectors; /* PCI hook and SPI hook use the same drv data */ pci_set_drvdata(pdev, dws); @@ -152,6 +150,10 @@ pm_runtime_allow(&pdev->dev); return 0; + +err_free_irq_vectors: + pci_free_irq_vectors(pdev); + return ret; } static void spi_pci_remove(struct pci_dev *pdev) --- linux-azure-5.8-5.8.0.orig/drivers/spi/spi-fsi.c +++ linux-azure-5.8-5.8.0/drivers/spi/spi-fsi.c @@ -24,11 +24,16 @@ #define SPI_FSI_BASE 0x70000 #define SPI_FSI_INIT_TIMEOUT_MS 1000 -#define SPI_FSI_MAX_TRANSFER_SIZE 2048 +#define SPI_FSI_MAX_XFR_SIZE 2048 +#define SPI_FSI_MAX_XFR_SIZE_RESTRICTED 32 #define SPI_FSI_ERROR 0x0 #define SPI_FSI_COUNTER_CFG 0x1 #define SPI_FSI_COUNTER_CFG_LOOPS(x) (((u64)(x) & 0xffULL) << 32) +#define SPI_FSI_COUNTER_CFG_N2_RX BIT_ULL(8) +#define SPI_FSI_COUNTER_CFG_N2_TX BIT_ULL(9) +#define SPI_FSI_COUNTER_CFG_N2_IMPLICIT BIT_ULL(10) +#define SPI_FSI_COUNTER_CFG_N2_RELOAD BIT_ULL(11) #define SPI_FSI_CFG1 0x2 #define SPI_FSI_CLOCK_CFG 0x3 #define SPI_FSI_CLOCK_CFG_MM_ENABLE BIT_ULL(32) @@ -61,7 +66,7 @@ #define SPI_FSI_STATUS_RDR_OVERRUN BIT_ULL(62) #define SPI_FSI_STATUS_RDR_FULL BIT_ULL(63) #define SPI_FSI_STATUS_ANY_ERROR \ - (SPI_FSI_STATUS_ERROR | SPI_FSI_STATUS_TDR_UNDERRUN | \ + (SPI_FSI_STATUS_ERROR | \ SPI_FSI_STATUS_TDR_OVERRUN | SPI_FSI_STATUS_RDR_UNDERRUN | \ SPI_FSI_STATUS_RDR_OVERRUN) #define SPI_FSI_PORT_CTRL 0x9 @@ -70,6 +75,8 @@ struct device *dev; /* SPI controller device */ struct fsi_device *fsi; /* FSI2SPI CFAM engine device */ u32 base; + size_t max_xfr_size; + bool restricted; }; struct fsi_spi_sequence { @@ -205,8 +212,12 @@ if (rc) return rc; - return fsi_spi_write_reg(ctx, SPI_FSI_CLOCK_CFG, - SPI_FSI_CLOCK_CFG_RESET2); + rc = fsi_spi_write_reg(ctx, SPI_FSI_CLOCK_CFG, + SPI_FSI_CLOCK_CFG_RESET2); + if (rc) + return rc; + + return fsi_spi_write_reg(ctx, SPI_FSI_STATUS, 0ULL); } static int fsi_spi_sequence_add(struct fsi_spi_sequence *seq, u8 val) @@ -214,8 +225,8 @@ /* * Add the next byte of instruction to the 8-byte sequence register. * Then decrement the counter so that the next instruction will go in - * the right place. Return the number of "slots" left in the sequence - * register. + * the right place. Return the index of the slot we just filled in the + * sequence register. */ seq->data |= (u64)val << seq->bit; seq->bit -= 8; @@ -233,40 +244,71 @@ struct fsi_spi_sequence *seq, struct spi_transfer *transfer) { + bool docfg = false; int loops; int idx; int rc; + u8 val = 0; u8 len = min(transfer->len, 8U); u8 rem = transfer->len % len; + u64 cfg = 0ULL; loops = transfer->len / len; if (transfer->tx_buf) { - idx = fsi_spi_sequence_add(seq, - SPI_FSI_SEQUENCE_SHIFT_OUT(len)); + val = SPI_FSI_SEQUENCE_SHIFT_OUT(len); + idx = fsi_spi_sequence_add(seq, val); + if (rem) rem = SPI_FSI_SEQUENCE_SHIFT_OUT(rem); } else if (transfer->rx_buf) { - idx = fsi_spi_sequence_add(seq, - SPI_FSI_SEQUENCE_SHIFT_IN(len)); + val = SPI_FSI_SEQUENCE_SHIFT_IN(len); + idx = fsi_spi_sequence_add(seq, val); + if (rem) rem = SPI_FSI_SEQUENCE_SHIFT_IN(rem); } else { return -EINVAL; } + if (ctx->restricted) { + const int eidx = rem ? 5 : 6; + + while (loops > 1 && idx <= eidx) { + idx = fsi_spi_sequence_add(seq, val); + loops--; + docfg = true; + } + + if (loops > 1) { + dev_warn(ctx->dev, "No sequencer slots; aborting.\n"); + return -EINVAL; + } + } + if (loops > 1) { fsi_spi_sequence_add(seq, SPI_FSI_SEQUENCE_BRANCH(idx)); + docfg = true; + } - if (rem) - fsi_spi_sequence_add(seq, rem); + if (docfg) { + cfg = SPI_FSI_COUNTER_CFG_LOOPS(loops - 1); + if (transfer->rx_buf) + cfg |= SPI_FSI_COUNTER_CFG_N2_RX | + SPI_FSI_COUNTER_CFG_N2_TX | + SPI_FSI_COUNTER_CFG_N2_IMPLICIT | + SPI_FSI_COUNTER_CFG_N2_RELOAD; - rc = fsi_spi_write_reg(ctx, SPI_FSI_COUNTER_CFG, - SPI_FSI_COUNTER_CFG_LOOPS(loops - 1)); + rc = fsi_spi_write_reg(ctx, SPI_FSI_COUNTER_CFG, cfg); if (rc) return rc; + } else { + fsi_spi_write_reg(ctx, SPI_FSI_COUNTER_CFG, 0ULL); } + if (rem) + fsi_spi_sequence_add(seq, rem); + return 0; } @@ -275,6 +317,7 @@ { int rc = 0; u64 status = 0ULL; + u64 cfg = 0ULL; if (transfer->tx_buf) { int nb; @@ -312,6 +355,16 @@ u64 in = 0ULL; u8 *rx = transfer->rx_buf; + rc = fsi_spi_read_reg(ctx, SPI_FSI_COUNTER_CFG, &cfg); + if (rc) + return rc; + + if (cfg & SPI_FSI_COUNTER_CFG_N2_IMPLICIT) { + rc = fsi_spi_write_reg(ctx, SPI_FSI_DATA_TX, 0); + if (rc) + return rc; + } + while (transfer->len > recv) { do { rc = fsi_spi_read_reg(ctx, SPI_FSI_STATUS, @@ -350,7 +403,7 @@ u64 status = 0ULL; u64 wanted_clock_cfg = SPI_FSI_CLOCK_CFG_ECC_DISABLE | SPI_FSI_CLOCK_CFG_SCK_NO_DEL | - FIELD_PREP(SPI_FSI_CLOCK_CFG_SCK_DIV, 4); + FIELD_PREP(SPI_FSI_CLOCK_CFG_SCK_DIV, 19); end = jiffies + msecs_to_jiffies(SPI_FSI_INIT_TIMEOUT_MS); do { @@ -407,7 +460,7 @@ /* Sequencer must do shift out (tx) first. */ if (!transfer->tx_buf || - transfer->len > SPI_FSI_MAX_TRANSFER_SIZE) { + transfer->len > (ctx->max_xfr_size + 8)) { rc = -EINVAL; goto error; } @@ -431,7 +484,7 @@ /* Sequencer can only do shift in (rx) after tx. */ if (next->rx_buf) { - if (next->len > SPI_FSI_MAX_TRANSFER_SIZE) { + if (next->len > ctx->max_xfr_size) { rc = -EINVAL; goto error; } @@ -476,7 +529,9 @@ static size_t fsi_spi_max_transfer_size(struct spi_device *spi) { - return SPI_FSI_MAX_TRANSFER_SIZE; + struct fsi_spi *ctx = spi_controller_get_devdata(spi->controller); + + return ctx->max_xfr_size; } static int fsi_spi_probe(struct device *dev) @@ -524,6 +579,14 @@ ctx->fsi = fsi; ctx->base = base + SPI_FSI_BASE; + if (of_device_is_compatible(np, "ibm,fsi2spi-restricted")) { + ctx->restricted = true; + ctx->max_xfr_size = SPI_FSI_MAX_XFR_SIZE_RESTRICTED; + } else { + ctx->restricted = false; + ctx->max_xfr_size = SPI_FSI_MAX_XFR_SIZE; + } + rc = devm_spi_register_controller(dev, ctlr); if (rc) spi_controller_put(ctlr); --- linux-azure-5.8-5.8.0.orig/drivers/spi/spi-fsl-dspi.c +++ linux-azure-5.8-5.8.0/drivers/spi/spi-fsl-dspi.c @@ -174,17 +174,17 @@ .fifo_size = 16, }, [LS2080A] = { - .trans_mode = DSPI_DMA_MODE, + .trans_mode = DSPI_XSPI_MODE, .max_clock_factor = 8, .fifo_size = 4, }, [LS2085A] = { - .trans_mode = DSPI_DMA_MODE, + .trans_mode = DSPI_XSPI_MODE, .max_clock_factor = 8, .fifo_size = 4, }, [LX2160A] = { - .trans_mode = DSPI_DMA_MODE, + .trans_mode = DSPI_XSPI_MODE, .max_clock_factor = 8, .fifo_size = 4, }, @@ -1106,12 +1106,11 @@ #ifdef CONFIG_PM_SLEEP static int dspi_suspend(struct device *dev) { - struct spi_controller *ctlr = dev_get_drvdata(dev); - struct fsl_dspi *dspi = spi_controller_get_devdata(ctlr); + struct fsl_dspi *dspi = dev_get_drvdata(dev); if (dspi->irq) disable_irq(dspi->irq); - spi_controller_suspend(ctlr); + spi_controller_suspend(dspi->ctlr); clk_disable_unprepare(dspi->clk); pinctrl_pm_select_sleep_state(dev); @@ -1121,8 +1120,7 @@ static int dspi_resume(struct device *dev) { - struct spi_controller *ctlr = dev_get_drvdata(dev); - struct fsl_dspi *dspi = spi_controller_get_devdata(ctlr); + struct fsl_dspi *dspi = dev_get_drvdata(dev); int ret; pinctrl_pm_select_default_state(dev); @@ -1130,7 +1128,7 @@ ret = clk_prepare_enable(dspi->clk); if (ret) return ret; - spi_controller_resume(ctlr); + spi_controller_resume(dspi->ctlr); if (dspi->irq) enable_irq(dspi->irq); @@ -1193,7 +1191,7 @@ unsigned int mcr; /* Set idle states for all chip select signals to high */ - mcr = SPI_MCR_PCSIS(GENMASK(dspi->ctlr->num_chipselect - 1, 0)); + mcr = SPI_MCR_PCSIS(GENMASK(dspi->ctlr->max_native_cs - 1, 0)); if (dspi->devtype_data->trans_mode == DSPI_XSPI_MODE) mcr |= SPI_MCR_XSPI; @@ -1292,7 +1290,7 @@ pdata = dev_get_platdata(&pdev->dev); if (pdata) { - ctlr->num_chipselect = pdata->cs_num; + ctlr->num_chipselect = ctlr->max_native_cs = pdata->cs_num; ctlr->bus_num = pdata->bus_num; /* Only Coldfire uses platform data */ @@ -1305,7 +1303,7 @@ dev_err(&pdev->dev, "can't get spi-num-chipselects\n"); goto out_ctlr_put; } - ctlr->num_chipselect = cs_num; + ctlr->num_chipselect = ctlr->max_native_cs = cs_num; of_property_read_u32(np, "bus-num", &bus_num); ctlr->bus_num = bus_num; --- linux-azure-5.8-5.8.0.orig/drivers/spi/spi-fsl-espi.c +++ linux-azure-5.8-5.8.0/drivers/spi/spi-fsl-espi.c @@ -564,13 +564,14 @@ static irqreturn_t fsl_espi_irq(s32 irq, void *context_data) { struct fsl_espi *espi = context_data; - u32 events; + u32 events, mask; spin_lock(&espi->lock); /* Get interrupt events(tx/rx) */ events = fsl_espi_read_reg(espi, ESPI_SPIE); - if (!events) { + mask = fsl_espi_read_reg(espi, ESPI_SPIM); + if (!(events & mask)) { spin_unlock(&espi->lock); return IRQ_NONE; } --- linux-azure-5.8-5.8.0.orig/drivers/spi/spi-fsl-lpspi.c +++ linux-azure-5.8-5.8.0/drivers/spi/spi-fsl-lpspi.c @@ -971,9 +971,6 @@ spi_controller_get_devdata(controller); pm_runtime_disable(fsl_lpspi->dev); - - spi_master_put(controller); - return 0; } --- linux-azure-5.8-5.8.0.orig/drivers/spi/spi-fsl-spi.c +++ linux-azure-5.8-5.8.0/drivers/spi/spi-fsl-spi.c @@ -115,14 +115,13 @@ { struct mpc8xxx_spi *mpc8xxx_spi = spi_master_get_devdata(spi->master); struct fsl_spi_platform_data *pdata; - bool pol = spi->mode & SPI_CS_HIGH; struct spi_mpc8xxx_cs *cs = spi->controller_state; pdata = spi->dev.parent->parent->platform_data; if (value == BITBANG_CS_INACTIVE) { if (pdata->cs_control) - pdata->cs_control(spi, !pol); + pdata->cs_control(spi, false); } if (value == BITBANG_CS_ACTIVE) { @@ -134,7 +133,7 @@ fsl_spi_change_mode(spi); if (pdata->cs_control) - pdata->cs_control(spi, pol); + pdata->cs_control(spi, true); } } @@ -696,7 +695,7 @@ if (WARN_ON_ONCE(!pinfo->immr_spi_cs)) return; - iowrite32be(on ? SPI_BOOT_SEL_BIT : 0, pinfo->immr_spi_cs); + iowrite32be(on ? 0 : SPI_BOOT_SEL_BIT, pinfo->immr_spi_cs); } } @@ -716,10 +715,11 @@ type = fsl_spi_get_type(&ofdev->dev); if (type == TYPE_FSL) { struct fsl_spi_platform_data *pdata = dev_get_platdata(dev); + bool spisel_boot = false; #if IS_ENABLED(CONFIG_FSL_SOC) struct mpc8xxx_spi_probe_info *pinfo = to_of_pinfo(pdata); - bool spisel_boot = of_property_read_bool(np, "fsl,spisel_boot"); + spisel_boot = of_property_read_bool(np, "fsl,spisel_boot"); if (spisel_boot) { pinfo->immr_spi_cs = ioremap(get_immrbase() + IMMR_SPI_CS_OFFSET, 4); if (!pinfo->immr_spi_cs) @@ -734,10 +734,14 @@ * supported on the GRLIB variant. */ ret = gpiod_count(dev, "cs"); - if (ret <= 0) + if (ret < 0) + ret = 0; + if (ret == 0 && !spisel_boot) { pdata->max_chipselect = 1; - else + } else { + pdata->max_chipselect = ret + spisel_boot; pdata->cs_control = fsl_spi_cs_control; + } } ret = of_address_to_resource(np, 0, &mem); --- linux-azure-5.8-5.8.0.orig/drivers/spi/spi-geni-qcom.c +++ linux-azure-5.8-5.8.0/drivers/spi/spi-geni-qcom.c @@ -414,6 +414,12 @@ unsigned int bytes_per_fifo_word = geni_byte_per_fifo_word(mas); unsigned int i = 0; + /* Stop the watermark IRQ if nothing to send */ + if (!mas->cur_xfer) { + writel(0, se->base + SE_GENI_TX_WATERMARK_REG); + return; + } + max_bytes = (mas->tx_fifo_depth - mas->tx_wm) * bytes_per_fifo_word; if (mas->tx_rem_bytes < max_bytes) max_bytes = mas->tx_rem_bytes; @@ -453,6 +459,14 @@ if (rx_last_byte_valid && rx_last_byte_valid < 4) rx_bytes -= bytes_per_fifo_word - rx_last_byte_valid; } + + /* Clear out the FIFO and bail if nowhere to put it */ + if (!mas->cur_xfer) { + for (i = 0; i < DIV_ROUND_UP(rx_bytes, bytes_per_fifo_word); i++) + readl(se->base + SE_GENI_RX_FIFOn); + return; + } + if (mas->rx_rem_bytes < rx_bytes) rx_bytes = mas->rx_rem_bytes; @@ -549,7 +563,7 @@ if (IS_ERR(clk)) return PTR_ERR(clk); - spi = spi_alloc_master(dev, sizeof(*mas)); + spi = devm_spi_alloc_master(dev, sizeof(*mas)); if (!spi) return -ENOMEM; @@ -595,7 +609,6 @@ free_irq(mas->irq, spi); spi_geni_probe_runtime_disable: pm_runtime_disable(dev); - spi_master_put(spi); return ret; } --- linux-azure-5.8-5.8.0.orig/drivers/spi/spi-gpio.c +++ linux-azure-5.8-5.8.0/drivers/spi/spi-gpio.c @@ -350,11 +350,6 @@ return 0; } -static void spi_gpio_put(void *data) -{ - spi_master_put(data); -} - static int spi_gpio_probe(struct platform_device *pdev) { int status; @@ -363,16 +358,10 @@ struct device *dev = &pdev->dev; struct spi_bitbang *bb; - master = spi_alloc_master(dev, sizeof(*spi_gpio)); + master = devm_spi_alloc_master(dev, sizeof(*spi_gpio)); if (!master) return -ENOMEM; - status = devm_add_action_or_reset(&pdev->dev, spi_gpio_put, master); - if (status) { - spi_master_put(master); - return status; - } - if (pdev->dev.of_node) status = spi_gpio_probe_dt(pdev, master); else @@ -432,7 +421,7 @@ if (status) return status; - return devm_spi_register_master(&pdev->dev, spi_master_get(master)); + return devm_spi_register_master(&pdev->dev, master); } MODULE_ALIAS("platform:" DRIVER_NAME); --- linux-azure-5.8-5.8.0.orig/drivers/spi/spi-img-spfi.c +++ linux-azure-5.8-5.8.0/drivers/spi/spi-img-spfi.c @@ -785,8 +785,10 @@ int ret; ret = pm_runtime_get_sync(dev); - if (ret) + if (ret) { + pm_runtime_put_noidle(dev); return ret; + } spfi_reset(spfi); pm_runtime_put(dev); --- linux-azure-5.8-5.8.0.orig/drivers/spi/spi-lantiq-ssc.c +++ linux-azure-5.8-5.8.0/drivers/spi/spi-lantiq-ssc.c @@ -184,6 +184,7 @@ unsigned int tx_fifo_size; unsigned int rx_fifo_size; unsigned int base_cs; + unsigned int fdx_tx_level; }; static u32 lantiq_ssc_readl(const struct lantiq_ssc_spi *spi, u32 reg) @@ -481,6 +482,7 @@ u32 data; unsigned int tx_free = tx_fifo_free(spi); + spi->fdx_tx_level = 0; while (spi->tx_todo && tx_free) { switch (spi->bits_per_word) { case 2 ... 8: @@ -509,6 +511,7 @@ lantiq_ssc_writel(spi, data, LTQ_SPI_TB); tx_free--; + spi->fdx_tx_level++; } } @@ -520,6 +523,13 @@ u32 data; unsigned int rx_fill = rx_fifo_level(spi); + /* + * Wait until all expected data to be shifted in. + * Otherwise, rx overrun may occur. + */ + while (rx_fill != spi->fdx_tx_level) + rx_fill = rx_fifo_level(spi); + while (rx_fill) { data = lantiq_ssc_readl(spi, LTQ_SPI_RB); @@ -899,7 +909,7 @@ master->bits_per_word_mask = SPI_BPW_RANGE_MASK(2, 8) | SPI_BPW_MASK(16) | SPI_BPW_MASK(32); - spi->wq = alloc_ordered_workqueue(dev_name(dev), 0); + spi->wq = alloc_ordered_workqueue(dev_name(dev), WQ_MEM_RECLAIM); if (!spi->wq) { err = -ENOMEM; goto err_clk_put; --- linux-azure-5.8-5.8.0.orig/drivers/spi/spi-loopback-test.c +++ linux-azure-5.8-5.8.0/drivers/spi/spi-loopback-test.c @@ -90,7 +90,7 @@ { .description = "tx/rx-transfer - crossing PAGE_SIZE", .fill_option = FILL_COUNT_8, - .iterate_len = { ITERATE_MAX_LEN }, + .iterate_len = { ITERATE_LEN }, .iterate_tx_align = ITERATE_ALIGN, .iterate_rx_align = ITERATE_ALIGN, .transfer_count = 1, --- linux-azure-5.8-5.8.0.orig/drivers/spi/spi-mem.c +++ linux-azure-5.8-5.8.0/drivers/spi/spi-mem.c @@ -237,6 +237,7 @@ ret = pm_runtime_get_sync(ctlr->dev.parent); if (ret < 0) { + pm_runtime_put_noidle(ctlr->dev.parent); dev_err(&ctlr->dev, "Failed to power device: %d\n", ret); return ret; --- linux-azure-5.8-5.8.0.orig/drivers/spi/spi-mt7621.c +++ linux-azure-5.8-5.8.0/drivers/spi/spi-mt7621.c @@ -350,9 +350,10 @@ if (status) return status; - master = spi_alloc_master(&pdev->dev, sizeof(*rs)); + master = devm_spi_alloc_master(&pdev->dev, sizeof(*rs)); if (!master) { dev_info(&pdev->dev, "master allocation failed\n"); + clk_disable_unprepare(clk); return -ENOMEM; } @@ -377,10 +378,15 @@ ret = device_reset(&pdev->dev); if (ret) { dev_err(&pdev->dev, "SPI reset failed!\n"); + clk_disable_unprepare(clk); return ret; } - return devm_spi_register_controller(&pdev->dev, master); + ret = spi_register_controller(master); + if (ret) + clk_disable_unprepare(clk); + + return ret; } static int mt7621_spi_remove(struct platform_device *pdev) @@ -391,6 +397,7 @@ master = dev_get_drvdata(&pdev->dev); rs = spi_controller_get_devdata(master); + spi_unregister_controller(master); clk_disable_unprepare(rs->clk); return 0; --- linux-azure-5.8-5.8.0.orig/drivers/spi/spi-mtk-nor.c +++ linux-azure-5.8-5.8.0/drivers/spi/spi-mtk-nor.c @@ -89,7 +89,7 @@ // Buffered page program can do one 128-byte transfer #define MTK_NOR_PP_SIZE 128 -#define CLK_TO_US(sp, clkcnt) ((clkcnt) * 1000000 / sp->spi_freq) +#define CLK_TO_US(sp, clkcnt) DIV_ROUND_UP(clkcnt, sp->spi_freq / 1000000) struct mtk_nor { struct spi_controller *ctlr; @@ -177,6 +177,10 @@ if ((op->addr.nbytes == 3) || (op->addr.nbytes == 4)) { if ((op->data.dir == SPI_MEM_DATA_IN) && mtk_nor_match_read(op)) { + // limit size to prevent timeout calculation overflow + if (op->data.nbytes > 0x400000) + op->data.nbytes = 0x400000; + if ((op->addr.val & MTK_NOR_DMA_ALIGN_MASK) || (op->data.nbytes < MTK_NOR_DMA_ALIGN)) op->data.nbytes = 1; @@ -605,7 +609,7 @@ buffer = (u8 *)(((ulong)buffer + MTK_NOR_DMA_ALIGN) & ~MTK_NOR_DMA_ALIGN_MASK); - ctlr = spi_alloc_master(&pdev->dev, sizeof(*sp)); + ctlr = devm_spi_alloc_master(&pdev->dev, sizeof(*sp)); if (!ctlr) { dev_err(&pdev->dev, "failed to allocate spi controller\n"); return -ENOMEM; --- linux-azure-5.8-5.8.0.orig/drivers/spi/spi-mxic.c +++ linux-azure-5.8-5.8.0/drivers/spi/spi-mxic.c @@ -528,7 +528,7 @@ struct mxic_spi *mxic; int ret; - master = spi_alloc_master(&pdev->dev, sizeof(struct mxic_spi)); + master = devm_spi_alloc_master(&pdev->dev, sizeof(struct mxic_spi)); if (!master) return -ENOMEM; @@ -573,15 +573,9 @@ ret = spi_register_master(master); if (ret) { dev_err(&pdev->dev, "spi_register_master failed\n"); - goto err_put_master; + pm_runtime_disable(&pdev->dev); } - return 0; - -err_put_master: - spi_master_put(master); - pm_runtime_disable(&pdev->dev); - return ret; } --- linux-azure-5.8-5.8.0.orig/drivers/spi/spi-mxs.c +++ linux-azure-5.8-5.8.0/drivers/spi/spi-mxs.c @@ -607,6 +607,7 @@ ret = pm_runtime_get_sync(ssp->dev); if (ret < 0) { + pm_runtime_put_noidle(ssp->dev); dev_err(ssp->dev, "runtime_get_sync failed\n"); goto out_pm_runtime_disable; } --- linux-azure-5.8-5.8.0.orig/drivers/spi/spi-npcm-fiu.c +++ linux-azure-5.8-5.8.0/drivers/spi/spi-npcm-fiu.c @@ -677,10 +677,9 @@ struct npcm_fiu_spi *fiu; void __iomem *regbase; struct resource *res; - int ret; - int id; + int id, ret; - ctrl = spi_alloc_master(dev, sizeof(*fiu)); + ctrl = devm_spi_alloc_master(dev, sizeof(*fiu)); if (!ctrl) return -ENOMEM; @@ -738,9 +737,9 @@ ret = devm_spi_register_master(dev, ctrl); if (ret) - return ret; + clk_disable_unprepare(fiu->clk); - return 0; + return ret; } static int npcm_fiu_remove(struct platform_device *pdev) --- linux-azure-5.8-5.8.0.orig/drivers/spi/spi-nxp-fspi.c +++ linux-azure-5.8-5.8.0/drivers/spi/spi-nxp-fspi.c @@ -991,6 +991,7 @@ struct resource *res; struct nxp_fspi *f; int ret; + u32 reg; ctlr = spi_alloc_master(&pdev->dev, sizeof(*f)); if (!ctlr) @@ -1017,6 +1018,12 @@ goto err_put_ctrl; } + /* Clear potential interrupts */ + reg = fspi_readl(f, f->iobase + FSPI_INTR); + if (reg) + fspi_writel(f, reg, f->iobase + FSPI_INTR); + + /* find the resources - controller memory mapped space */ res = platform_get_resource_byname(pdev, IORESOURCE_MEM, "fspi_mmap"); if (!res) { --- linux-azure-5.8-5.8.0.orig/drivers/spi/spi-omap2-mcspi.c +++ linux-azure-5.8-5.8.0/drivers/spi/spi-omap2-mcspi.c @@ -24,7 +24,6 @@ #include #include #include -#include #include #include @@ -349,9 +348,19 @@ static int mcspi_wait_for_reg_bit(void __iomem *reg, unsigned long bit) { - u32 val; + unsigned long timeout; - return readl_poll_timeout(reg, val, val & bit, 1, MSEC_PER_SEC); + timeout = jiffies + msecs_to_jiffies(1000); + while (!(readl_relaxed(reg) & bit)) { + if (time_after(jiffies, timeout)) { + if (!(readl_relaxed(reg) & bit)) + return -ETIMEDOUT; + else + return 0; + } + cpu_relax(); + } + return 0; } static int mcspi_wait_for_completion(struct omap2_mcspi *mcspi, --- linux-azure-5.8-5.8.0.orig/drivers/spi/spi-pic32.c +++ linux-azure-5.8-5.8.0/drivers/spi/spi-pic32.c @@ -839,6 +839,7 @@ return 0; err_bailout: + pic32_spi_dma_unprep(pic32s); clk_disable_unprepare(pic32s->clk); err_master: spi_master_put(master); --- linux-azure-5.8-5.8.0.orig/drivers/spi/spi-pxa2xx-pci.c +++ linux-azure-5.8-5.8.0/drivers/spi/spi-pxa2xx-pci.c @@ -21,7 +21,8 @@ PORT_BSW1, PORT_BSW2, PORT_CE4100, - PORT_LPT, + PORT_LPT0, + PORT_LPT1, }; struct pxa_spi_info { @@ -57,8 +58,10 @@ static struct dw_dma_slave bsw2_tx_param = { .dst_id = 8 }; static struct dw_dma_slave bsw2_rx_param = { .src_id = 9 }; -static struct dw_dma_slave lpt_tx_param = { .dst_id = 0 }; -static struct dw_dma_slave lpt_rx_param = { .src_id = 1 }; +static struct dw_dma_slave lpt1_tx_param = { .dst_id = 0 }; +static struct dw_dma_slave lpt1_rx_param = { .src_id = 1 }; +static struct dw_dma_slave lpt0_tx_param = { .dst_id = 2 }; +static struct dw_dma_slave lpt0_rx_param = { .src_id = 3 }; static bool lpss_dma_filter(struct dma_chan *chan, void *param) { @@ -185,12 +188,19 @@ .num_chipselect = 1, .max_clk_rate = 50000000, }, - [PORT_LPT] = { + [PORT_LPT0] = { .type = LPSS_LPT_SSP, .port_id = 0, .setup = lpss_spi_setup, - .tx_param = &lpt_tx_param, - .rx_param = &lpt_rx_param, + .tx_param = &lpt0_tx_param, + .rx_param = &lpt0_rx_param, + }, + [PORT_LPT1] = { + .type = LPSS_LPT_SSP, + .port_id = 1, + .setup = lpss_spi_setup, + .tx_param = &lpt1_tx_param, + .rx_param = &lpt1_rx_param, }, }; @@ -285,8 +295,9 @@ { PCI_VDEVICE(INTEL, 0x2290), PORT_BSW1 }, { PCI_VDEVICE(INTEL, 0x22ac), PORT_BSW2 }, { PCI_VDEVICE(INTEL, 0x2e6a), PORT_CE4100 }, - { PCI_VDEVICE(INTEL, 0x9ce6), PORT_LPT }, - { }, + { PCI_VDEVICE(INTEL, 0x9ce5), PORT_LPT0 }, + { PCI_VDEVICE(INTEL, 0x9ce6), PORT_LPT1 }, + { } }; MODULE_DEVICE_TABLE(pci, pxa2xx_spi_pci_devices); --- linux-azure-5.8-5.8.0.orig/drivers/spi/spi-pxa2xx.c +++ linux-azure-5.8-5.8.0/drivers/spi/spi-pxa2xx.c @@ -1684,9 +1684,9 @@ } if (platform_info->is_slave) - controller = spi_alloc_slave(dev, sizeof(struct driver_data)); + controller = devm_spi_alloc_slave(dev, sizeof(*drv_data)); else - controller = spi_alloc_master(dev, sizeof(struct driver_data)); + controller = devm_spi_alloc_master(dev, sizeof(*drv_data)); if (!controller) { dev_err(&pdev->dev, "cannot alloc spi_controller\n"); @@ -1909,7 +1909,6 @@ free_irq(ssp->irq, drv_data); out_error_controller_alloc: - spi_controller_put(controller); pxa_ssp_free(ssp); return status; } --- linux-azure-5.8-5.8.0.orig/drivers/spi/spi-qcom-qspi.c +++ linux-azure-5.8-5.8.0/drivers/spi/spi-qcom-qspi.c @@ -429,7 +429,7 @@ dev = &pdev->dev; - master = spi_alloc_master(dev, sizeof(*ctrl)); + master = devm_spi_alloc_master(dev, sizeof(*ctrl)); if (!master) return -ENOMEM; @@ -440,32 +440,28 @@ spin_lock_init(&ctrl->lock); ctrl->dev = dev; ctrl->base = devm_platform_ioremap_resource(pdev, 0); - if (IS_ERR(ctrl->base)) { - ret = PTR_ERR(ctrl->base); - goto exit_probe_master_put; - } + if (IS_ERR(ctrl->base)) + return PTR_ERR(ctrl->base); ctrl->clks = devm_kcalloc(dev, QSPI_NUM_CLKS, sizeof(*ctrl->clks), GFP_KERNEL); - if (!ctrl->clks) { - ret = -ENOMEM; - goto exit_probe_master_put; - } + if (!ctrl->clks) + return -ENOMEM; ctrl->clks[QSPI_CLK_CORE].id = "core"; ctrl->clks[QSPI_CLK_IFACE].id = "iface"; ret = devm_clk_bulk_get(dev, QSPI_NUM_CLKS, ctrl->clks); if (ret) - goto exit_probe_master_put; + return ret; ret = platform_get_irq(pdev, 0); if (ret < 0) - goto exit_probe_master_put; + return ret; ret = devm_request_irq(dev, ret, qcom_qspi_irq, IRQF_TRIGGER_HIGH, dev_name(dev), ctrl); if (ret) { dev_err(dev, "Failed to request irq %d\n", ret); - goto exit_probe_master_put; + return ret; } master->max_speed_hz = 300000000; @@ -489,9 +485,6 @@ pm_runtime_disable(dev); -exit_probe_master_put: - spi_master_put(master); - return ret; } --- linux-azure-5.8-5.8.0.orig/drivers/spi/spi-rb4xx.c +++ linux-azure-5.8-5.8.0/drivers/spi/spi-rb4xx.c @@ -143,7 +143,7 @@ if (IS_ERR(spi_base)) return PTR_ERR(spi_base); - master = spi_alloc_master(&pdev->dev, sizeof(*rbspi)); + master = devm_spi_alloc_master(&pdev->dev, sizeof(*rbspi)); if (!master) return -ENOMEM; --- linux-azure-5.8-5.8.0.orig/drivers/spi/spi-rockchip.c +++ linux-azure-5.8-5.8.0/drivers/spi/spi-rockchip.c @@ -288,7 +288,7 @@ static void rockchip_spi_pio_reader(struct rockchip_spi *rs) { u32 words = readl_relaxed(rs->regs + ROCKCHIP_SPI_RXFLR); - u32 rx_left = rs->rx_left - words; + u32 rx_left = (rs->rx_left > words) ? rs->rx_left - words : 0; /* the hardware doesn't allow us to change fifo threshold * level while spi is enabled, so instead make sure to leave --- linux-azure-5.8-5.8.0.orig/drivers/spi/spi-s3c24xx-fiq.S +++ linux-azure-5.8-5.8.0/drivers/spi/spi-s3c24xx-fiq.S @@ -33,7 +33,6 @@ @ and an offset to the irq acknowledgment word ENTRY(s3c24xx_spi_fiq_rx) -s3c24xx_spi_fix_rx: .word fiq_rx_end - fiq_rx_start .word fiq_rx_irq_ack - fiq_rx_start fiq_rx_start: @@ -47,7 +46,7 @@ strb fiq_rtmp, [ fiq_rspi, # S3C2410_SPTDAT ] subs fiq_rcount, fiq_rcount, #1 - subnes pc, lr, #4 @@ return, still have work to do + subsne pc, lr, #4 @@ return, still have work to do @@ set IRQ controller so that next op will trigger IRQ mov fiq_rtmp, #0 @@ -59,7 +58,6 @@ fiq_rx_end: ENTRY(s3c24xx_spi_fiq_txrx) -s3c24xx_spi_fiq_txrx: .word fiq_txrx_end - fiq_txrx_start .word fiq_txrx_irq_ack - fiq_txrx_start fiq_txrx_start: @@ -74,7 +72,7 @@ strb fiq_rtmp, [ fiq_rspi, # S3C2410_SPTDAT ] subs fiq_rcount, fiq_rcount, #1 - subnes pc, lr, #4 @@ return, still have work to do + subsne pc, lr, #4 @@ return, still have work to do mov fiq_rtmp, #0 str fiq_rtmp, [ fiq_rirq, # S3C2410_INTMOD - S3C24XX_VA_IRQ ] @@ -86,7 +84,6 @@ fiq_txrx_end: ENTRY(s3c24xx_spi_fiq_tx) -s3c24xx_spi_fix_tx: .word fiq_tx_end - fiq_tx_start .word fiq_tx_irq_ack - fiq_tx_start fiq_tx_start: @@ -99,7 +96,7 @@ strb fiq_rtmp, [ fiq_rspi, # S3C2410_SPTDAT ] subs fiq_rcount, fiq_rcount, #1 - subnes pc, lr, #4 @@ return, still have work to do + subsne pc, lr, #4 @@ return, still have work to do mov fiq_rtmp, #0 str fiq_rtmp, [ fiq_rirq, # S3C2410_INTMOD - S3C24XX_VA_IRQ ] --- linux-azure-5.8-5.8.0.orig/drivers/spi/spi-s3c64xx.c +++ linux-azure-5.8-5.8.0/drivers/spi/spi-s3c64xx.c @@ -122,6 +122,7 @@ struct s3c64xx_spi_dma_data { struct dma_chan *ch; + dma_cookie_t cookie; enum dma_transfer_direction direction; }; @@ -264,12 +265,13 @@ spin_unlock_irqrestore(&sdd->lock, flags); } -static void prepare_dma(struct s3c64xx_spi_dma_data *dma, +static int prepare_dma(struct s3c64xx_spi_dma_data *dma, struct sg_table *sgt) { struct s3c64xx_spi_driver_data *sdd; struct dma_slave_config config; struct dma_async_tx_descriptor *desc; + int ret; memset(&config, 0, sizeof(config)); @@ -293,12 +295,24 @@ desc = dmaengine_prep_slave_sg(dma->ch, sgt->sgl, sgt->nents, dma->direction, DMA_PREP_INTERRUPT); + if (!desc) { + dev_err(&sdd->pdev->dev, "unable to prepare %s scatterlist", + dma->direction == DMA_DEV_TO_MEM ? "rx" : "tx"); + return -ENOMEM; + } desc->callback = s3c64xx_spi_dmacb; desc->callback_param = dma; - dmaengine_submit(desc); + dma->cookie = dmaengine_submit(desc); + ret = dma_submit_error(dma->cookie); + if (ret) { + dev_err(&sdd->pdev->dev, "DMA submission failed"); + return -EIO; + } + dma_async_issue_pending(dma->ch); + return 0; } static void s3c64xx_spi_set_cs(struct spi_device *spi, bool enable) @@ -348,11 +362,12 @@ return xfer->len > (FIFO_LVL_MASK(sdd) >> 1) + 1; } -static void s3c64xx_enable_datapath(struct s3c64xx_spi_driver_data *sdd, +static int s3c64xx_enable_datapath(struct s3c64xx_spi_driver_data *sdd, struct spi_transfer *xfer, int dma_mode) { void __iomem *regs = sdd->regs; u32 modecfg, chcfg; + int ret = 0; modecfg = readl(regs + S3C64XX_SPI_MODE_CFG); modecfg &= ~(S3C64XX_SPI_MODE_TXDMA_ON | S3C64XX_SPI_MODE_RXDMA_ON); @@ -378,7 +393,7 @@ chcfg |= S3C64XX_SPI_CH_TXCH_ON; if (dma_mode) { modecfg |= S3C64XX_SPI_MODE_TXDMA_ON; - prepare_dma(&sdd->tx_dma, &xfer->tx_sg); + ret = prepare_dma(&sdd->tx_dma, &xfer->tx_sg); } else { switch (sdd->cur_bpw) { case 32: @@ -410,12 +425,17 @@ writel(((xfer->len * 8 / sdd->cur_bpw) & 0xffff) | S3C64XX_SPI_PACKET_CNT_EN, regs + S3C64XX_SPI_PACKET_CNT); - prepare_dma(&sdd->rx_dma, &xfer->rx_sg); + ret = prepare_dma(&sdd->rx_dma, &xfer->rx_sg); } } + if (ret) + return ret; + writel(modecfg, regs + S3C64XX_SPI_MODE_CFG); writel(chcfg, regs + S3C64XX_SPI_CH_CFG); + + return 0; } static u32 s3c64xx_spi_wait_for_timeout(struct s3c64xx_spi_driver_data *sdd, @@ -548,9 +568,10 @@ return 0; } -static void s3c64xx_spi_config(struct s3c64xx_spi_driver_data *sdd) +static int s3c64xx_spi_config(struct s3c64xx_spi_driver_data *sdd) { void __iomem *regs = sdd->regs; + int ret; u32 val; /* Disable Clock */ @@ -598,7 +619,9 @@ if (sdd->port_conf->clk_from_cmu) { /* The src_clk clock is divided internally by 2 */ - clk_set_rate(sdd->src_clk, sdd->cur_speed * 2); + ret = clk_set_rate(sdd->src_clk, sdd->cur_speed * 2); + if (ret) + return ret; } else { /* Configure Clock */ val = readl(regs + S3C64XX_SPI_CLK_CFG); @@ -612,6 +635,8 @@ val |= S3C64XX_SPI_ENCLK_ENABLE; writel(val, regs + S3C64XX_SPI_CLK_CFG); } + + return 0; } #define XFER_DMAADDR_INVALID DMA_BIT_MASK(32) @@ -654,7 +679,9 @@ sdd->cur_bpw = bpw; sdd->cur_speed = speed; sdd->cur_mode = spi->mode; - s3c64xx_spi_config(sdd); + status = s3c64xx_spi_config(sdd); + if (status) + return status; } if (!is_polling(sdd) && (xfer->len > fifo_len) && @@ -678,13 +705,18 @@ sdd->state &= ~RXBUSY; sdd->state &= ~TXBUSY; - s3c64xx_enable_datapath(sdd, xfer, use_dma); - /* Start the signals */ s3c64xx_spi_set_cs(spi, true); + status = s3c64xx_enable_datapath(sdd, xfer, use_dma); + spin_unlock_irqrestore(&sdd->lock, flags); + if (status) { + dev_err(&spi->dev, "failed to enable data path for transfer: %d\n", status); + break; + } + if (use_dma) status = s3c64xx_wait_for_dma(sdd, xfer); else --- linux-azure-5.8-5.8.0.orig/drivers/spi/spi-sc18is602.c +++ linux-azure-5.8-5.8.0/drivers/spi/spi-sc18is602.c @@ -238,13 +238,12 @@ struct sc18is602_platform_data *pdata = dev_get_platdata(dev); struct sc18is602 *hw; struct spi_master *master; - int error; if (!i2c_check_functionality(client->adapter, I2C_FUNC_I2C | I2C_FUNC_SMBUS_WRITE_BYTE_DATA)) return -EINVAL; - master = spi_alloc_master(dev, sizeof(struct sc18is602)); + master = devm_spi_alloc_master(dev, sizeof(struct sc18is602)); if (!master) return -ENOMEM; @@ -298,15 +297,7 @@ master->min_speed_hz = hw->freq / 128; master->max_speed_hz = hw->freq / 4; - error = devm_spi_register_master(dev, master); - if (error) - goto error_reg; - - return 0; - -error_reg: - spi_master_put(master); - return error; + return devm_spi_register_master(dev, master); } static const struct i2c_device_id sc18is602_id[] = { --- linux-azure-5.8-5.8.0.orig/drivers/spi/spi-sh.c +++ linux-azure-5.8-5.8.0/drivers/spi/spi-sh.c @@ -440,7 +440,7 @@ if (irq < 0) return irq; - master = spi_alloc_master(&pdev->dev, sizeof(struct spi_sh_data)); + master = devm_spi_alloc_master(&pdev->dev, sizeof(struct spi_sh_data)); if (master == NULL) { dev_err(&pdev->dev, "spi_alloc_master error.\n"); return -ENOMEM; @@ -458,16 +458,14 @@ break; default: dev_err(&pdev->dev, "No support width\n"); - ret = -ENODEV; - goto error1; + return -ENODEV; } ss->irq = irq; ss->master = master; ss->addr = devm_ioremap(&pdev->dev, res->start, resource_size(res)); if (ss->addr == NULL) { dev_err(&pdev->dev, "ioremap error.\n"); - ret = -ENOMEM; - goto error1; + return -ENOMEM; } INIT_LIST_HEAD(&ss->queue); spin_lock_init(&ss->lock); @@ -477,7 +475,7 @@ ret = request_irq(irq, spi_sh_irq, 0, "spi_sh", ss); if (ret < 0) { dev_err(&pdev->dev, "request_irq error\n"); - goto error1; + return ret; } master->num_chipselect = 2; @@ -496,9 +494,6 @@ error3: free_irq(irq, ss); - error1: - spi_master_put(master); - return ret; } --- linux-azure-5.8-5.8.0.orig/drivers/spi/spi-sprd.c +++ linux-azure-5.8-5.8.0/drivers/spi/spi-sprd.c @@ -563,11 +563,11 @@ ss->dma.dma_chan[SPRD_SPI_TX] = dma_request_chan(ss->dev, "tx_chn"); if (IS_ERR_OR_NULL(ss->dma.dma_chan[SPRD_SPI_TX])) { + dma_release_channel(ss->dma.dma_chan[SPRD_SPI_RX]); if (PTR_ERR(ss->dma.dma_chan[SPRD_SPI_TX]) == -EPROBE_DEFER) return PTR_ERR(ss->dma.dma_chan[SPRD_SPI_TX]); dev_err(ss->dev, "request TX DMA channel failed!\n"); - dma_release_channel(ss->dma.dma_chan[SPRD_SPI_RX]); return PTR_ERR(ss->dma.dma_chan[SPRD_SPI_TX]); } @@ -1017,6 +1017,7 @@ ret = pm_runtime_get_sync(ss->dev); if (ret < 0) { + pm_runtime_put_noidle(ss->dev); dev_err(ss->dev, "failed to resume SPI controller\n"); return ret; } --- linux-azure-5.8-5.8.0.orig/drivers/spi/spi-st-ssc4.c +++ linux-azure-5.8-5.8.0/drivers/spi/spi-st-ssc4.c @@ -375,13 +375,14 @@ ret = devm_spi_register_master(&pdev->dev, master); if (ret) { dev_err(&pdev->dev, "Failed to register master\n"); - goto clk_disable; + goto rpm_disable; } return 0; -clk_disable: +rpm_disable: pm_runtime_disable(&pdev->dev); +clk_disable: clk_disable_unprepare(spi_st->clk); put_master: spi_master_put(master); --- linux-azure-5.8-5.8.0.orig/drivers/spi/spi-stm32-qspi.c +++ linux-azure-5.8-5.8.0/drivers/spi/spi-stm32-qspi.c @@ -434,8 +434,10 @@ int ret; ret = pm_runtime_get_sync(qspi->dev); - if (ret < 0) + if (ret < 0) { + pm_runtime_put_noidle(qspi->dev); return ret; + } mutex_lock(&qspi->lock); ret = stm32_qspi_send(mem, op); @@ -462,8 +464,10 @@ return -EINVAL; ret = pm_runtime_get_sync(qspi->dev); - if (ret < 0) + if (ret < 0) { + pm_runtime_put_noidle(qspi->dev); return ret; + } presc = DIV_ROUND_UP(qspi->clk_rate, spi->max_speed_hz) - 1; --- linux-azure-5.8-5.8.0.orig/drivers/spi/spi-stm32.c +++ linux-azure-5.8-5.8.0/drivers/spi/spi-stm32.c @@ -13,6 +13,7 @@ #include #include #include +#include #include #include #include @@ -441,7 +442,8 @@ { u32 div, mbrdiv; - div = DIV_ROUND_UP(spi->clk_rate, speed_hz); + /* Ensure spi->clk_rate is even */ + div = DIV_ROUND_UP(spi->clk_rate & ~0x1, speed_hz); /* * SPI framework set xfer->speed_hz to master->max_speed_hz if @@ -467,26 +469,36 @@ /** * stm32h7_spi_prepare_fthlv - Determine FIFO threshold level * @spi: pointer to the spi controller data structure + * @xfer_len: length of the message to be transferred */ -static u32 stm32h7_spi_prepare_fthlv(struct stm32_spi *spi) +static u32 stm32h7_spi_prepare_fthlv(struct stm32_spi *spi, u32 xfer_len) { - u32 fthlv, half_fifo; + u32 fthlv, half_fifo, packet; /* data packet should not exceed 1/2 of fifo space */ half_fifo = (spi->fifo_size / 2); + /* data_packet should not exceed transfer length */ + if (half_fifo > xfer_len) + packet = xfer_len; + else + packet = half_fifo; + if (spi->cur_bpw <= 8) - fthlv = half_fifo; + fthlv = packet; else if (spi->cur_bpw <= 16) - fthlv = half_fifo / 2; + fthlv = packet / 2; else - fthlv = half_fifo / 4; + fthlv = packet / 4; /* align packet size with data registers access */ if (spi->cur_bpw > 8) - fthlv -= (fthlv % 2); /* multiple of 2 */ + fthlv += (fthlv % 2) ? 1 : 0; else - fthlv -= (fthlv % 4); /* multiple of 4 */ + fthlv += (fthlv % 4) ? (4 - (fthlv % 4)) : 0; + + if (!fthlv) + fthlv = 1; return fthlv; } @@ -924,7 +936,11 @@ } if (sr & STM32H7_SPI_SR_SUSP) { - dev_warn(spi->dev, "Communication suspended\n"); + static DEFINE_RATELIMIT_STATE(rs, + DEFAULT_RATELIMIT_INTERVAL * 10, + 1); + if (__ratelimit(&rs)) + dev_dbg_ratelimited(spi->dev, "Communication suspended\n"); if (!spi->cur_usedma && (spi->rx_buf && (spi->rx_len > 0))) stm32h7_spi_read_rxfifo(spi, false); /* @@ -966,13 +982,13 @@ if (!spi->cur_usedma && (spi->rx_buf && (spi->rx_len > 0))) stm32h7_spi_read_rxfifo(spi, false); - writel_relaxed(mask, spi->base + STM32H7_SPI_IFCR); + writel_relaxed(sr & mask, spi->base + STM32H7_SPI_IFCR); spin_unlock_irqrestore(&spi->lock, flags); if (end) { - spi_finalize_current_transfer(master); stm32h7_spi_disable(spi); + spi_finalize_current_transfer(master); } return IRQ_HANDLED; @@ -1393,7 +1409,7 @@ cfg1_setb |= (bpw << STM32H7_SPI_CFG1_DSIZE_SHIFT) & STM32H7_SPI_CFG1_DSIZE; - spi->cur_fthlv = stm32h7_spi_prepare_fthlv(spi); + spi->cur_fthlv = stm32h7_spi_prepare_fthlv(spi, spi->cur_xferlen); fthlv = spi->cur_fthlv - 1; cfg1_clrb |= STM32H7_SPI_CFG1_FTHLV; @@ -1585,39 +1601,33 @@ unsigned long flags; unsigned int comm_type; int nb_words, ret = 0; + int mbr; spin_lock_irqsave(&spi->lock, flags); - if (spi->cur_bpw != transfer->bits_per_word) { - spi->cur_bpw = transfer->bits_per_word; - spi->cfg->set_bpw(spi); - } + spi->cur_xferlen = transfer->len; - if (spi->cur_speed != transfer->speed_hz) { - int mbr; - - /* Update spi->cur_speed with real clock speed */ - mbr = stm32_spi_prepare_mbr(spi, transfer->speed_hz, - spi->cfg->baud_rate_div_min, - spi->cfg->baud_rate_div_max); - if (mbr < 0) { - ret = mbr; - goto out; - } + spi->cur_bpw = transfer->bits_per_word; + spi->cfg->set_bpw(spi); - transfer->speed_hz = spi->cur_speed; - stm32_spi_set_mbr(spi, mbr); + /* Update spi->cur_speed with real clock speed */ + mbr = stm32_spi_prepare_mbr(spi, transfer->speed_hz, + spi->cfg->baud_rate_div_min, + spi->cfg->baud_rate_div_max); + if (mbr < 0) { + ret = mbr; + goto out; } - comm_type = stm32_spi_communication_type(spi_dev, transfer); - if (spi->cur_comm != comm_type) { - ret = spi->cfg->set_mode(spi, comm_type); + transfer->speed_hz = spi->cur_speed; + stm32_spi_set_mbr(spi, mbr); - if (ret < 0) - goto out; + comm_type = stm32_spi_communication_type(spi_dev, transfer); + ret = spi->cfg->set_mode(spi, comm_type); + if (ret < 0) + goto out; - spi->cur_comm = comm_type; - } + spi->cur_comm = comm_type; if (spi->cfg->set_data_idleness) spi->cfg->set_data_idleness(spi, transfer->len); @@ -1635,8 +1645,6 @@ goto out; } - spi->cur_xferlen = transfer->len; - dev_dbg(spi->dev, "transfer communication mode set to %d\n", spi->cur_comm); dev_dbg(spi->dev, @@ -1670,6 +1678,10 @@ struct stm32_spi *spi = spi_master_get_devdata(master); int ret; + /* Don't do anything on 0 bytes transfers */ + if (transfer->len == 0) + return 0; + spi->tx_buf = transfer->tx_buf; spi->rx_buf = transfer->rx_buf; spi->tx_len = spi->tx_buf ? transfer->len : 0; @@ -1996,6 +2008,8 @@ pm_runtime_disable(&pdev->dev); + pinctrl_pm_select_sleep_state(&pdev->dev); + return 0; } @@ -2007,13 +2021,18 @@ clk_disable_unprepare(spi->clk); - return 0; + return pinctrl_pm_select_sleep_state(dev); } static int stm32_spi_runtime_resume(struct device *dev) { struct spi_master *master = dev_get_drvdata(dev); struct stm32_spi *spi = spi_master_get_devdata(master); + int ret; + + ret = pinctrl_pm_select_default_state(dev); + if (ret) + return ret; return clk_prepare_enable(spi->clk); } @@ -2043,10 +2062,24 @@ return ret; ret = spi_master_resume(master); - if (ret) + if (ret) { clk_disable_unprepare(spi->clk); + return ret; + } - return ret; + ret = pm_runtime_get_sync(dev); + if (ret < 0) { + pm_runtime_put_noidle(dev); + dev_err(dev, "Unable to power device:%d\n", ret); + return ret; + } + + spi->cfg->config(spi); + + pm_runtime_mark_last_busy(dev); + pm_runtime_put_autosuspend(dev); + + return 0; } #endif --- linux-azure-5.8-5.8.0.orig/drivers/spi/spi-synquacer.c +++ linux-azure-5.8-5.8.0/drivers/spi/spi-synquacer.c @@ -490,6 +490,10 @@ val &= ~(SYNQUACER_HSSPI_DMPSEL_CS_MASK << SYNQUACER_HSSPI_DMPSEL_CS_SHIFT); val |= spi->chip_select << SYNQUACER_HSSPI_DMPSEL_CS_SHIFT; + + if (!enable) + val |= SYNQUACER_HSSPI_DMSTOP_STOP; + writel(val, sspi->regs + SYNQUACER_HSSPI_REG_DMSTART); } @@ -658,7 +662,8 @@ if (!master->max_speed_hz) { dev_err(&pdev->dev, "missing clock source\n"); - return -EINVAL; + ret = -EINVAL; + goto disable_clk; } master->min_speed_hz = master->max_speed_hz / 254; @@ -671,7 +676,7 @@ rx_irq = platform_get_irq(pdev, 0); if (rx_irq <= 0) { ret = rx_irq; - goto put_spi; + goto disable_clk; } snprintf(sspi->rx_irq_name, SYNQUACER_HSSPI_IRQ_NAME_MAX, "%s-rx", dev_name(&pdev->dev)); @@ -679,13 +684,13 @@ 0, sspi->rx_irq_name, sspi); if (ret) { dev_err(&pdev->dev, "request rx_irq failed (%d)\n", ret); - goto put_spi; + goto disable_clk; } tx_irq = platform_get_irq(pdev, 1); if (tx_irq <= 0) { ret = tx_irq; - goto put_spi; + goto disable_clk; } snprintf(sspi->tx_irq_name, SYNQUACER_HSSPI_IRQ_NAME_MAX, "%s-tx", dev_name(&pdev->dev)); @@ -693,7 +698,7 @@ 0, sspi->tx_irq_name, sspi); if (ret) { dev_err(&pdev->dev, "request tx_irq failed (%d)\n", ret); - goto put_spi; + goto disable_clk; } master->dev.of_node = np; @@ -711,7 +716,7 @@ ret = synquacer_spi_enable(master); if (ret) - goto fail_enable; + goto disable_clk; pm_runtime_set_active(sspi->dev); pm_runtime_enable(sspi->dev); @@ -724,7 +729,7 @@ disable_pm: pm_runtime_disable(sspi->dev); -fail_enable: +disable_clk: clk_disable_unprepare(sspi->clk); put_spi: spi_master_put(master); --- linux-azure-5.8-5.8.0.orig/drivers/spi/spi-tegra114.c +++ linux-azure-5.8-5.8.0/drivers/spi/spi-tegra114.c @@ -971,6 +971,7 @@ ret = pm_runtime_get_sync(tspi->dev); if (ret < 0) { + pm_runtime_put_noidle(tspi->dev); dev_err(tspi->dev, "pm runtime failed, e = %d\n", ret); if (cdata) tegra_spi_cleanup(spi); @@ -1479,6 +1480,7 @@ ret = pm_runtime_get_sync(dev); if (ret < 0) { + pm_runtime_put_noidle(dev); dev_err(dev, "pm runtime failed, e = %d\n", ret); return ret; } --- linux-azure-5.8-5.8.0.orig/drivers/spi/spi-tegra20-sflash.c +++ linux-azure-5.8-5.8.0/drivers/spi/spi-tegra20-sflash.c @@ -553,6 +553,7 @@ ret = pm_runtime_get_sync(dev); if (ret < 0) { + pm_runtime_put_noidle(dev); dev_err(dev, "pm runtime failed, e = %d\n", ret); return ret; } --- linux-azure-5.8-5.8.0.orig/drivers/spi/spi-tegra20-slink.c +++ linux-azure-5.8-5.8.0/drivers/spi/spi-tegra20-slink.c @@ -755,6 +755,7 @@ ret = pm_runtime_get_sync(tspi->dev); if (ret < 0) { + pm_runtime_put_noidle(tspi->dev); dev_err(tspi->dev, "pm runtime failed, e = %d\n", ret); return ret; } @@ -1192,6 +1193,7 @@ ret = pm_runtime_get_sync(dev); if (ret < 0) { + pm_runtime_put_noidle(dev); dev_err(dev, "pm runtime failed, e = %d\n", ret); return ret; } --- linux-azure-5.8-5.8.0.orig/drivers/spi/spi-ti-qspi.c +++ linux-azure-5.8-5.8.0/drivers/spi/spi-ti-qspi.c @@ -174,6 +174,7 @@ ret = pm_runtime_get_sync(qspi->dev); if (ret < 0) { + pm_runtime_put_noidle(qspi->dev); dev_err(qspi->dev, "pm_runtime_get_sync() failed\n"); return ret; } --- linux-azure-5.8-5.8.0.orig/drivers/spi/spi.c +++ linux-azure-5.8-5.8.0/drivers/spi/spi.c @@ -405,9 +405,11 @@ if (ret) return ret; - ret = sdrv->probe(spi); - if (ret) - dev_pm_domain_detach(dev, true); + if (sdrv->probe) { + ret = sdrv->probe(spi); + if (ret) + dev_pm_domain_detach(dev, true); + } return ret; } @@ -415,9 +417,10 @@ static int spi_drv_remove(struct device *dev) { const struct spi_driver *sdrv = to_spi_driver(dev->driver); - int ret; + int ret = 0; - ret = sdrv->remove(to_spi_device(dev)); + if (sdrv->remove) + ret = sdrv->remove(to_spi_device(dev)); dev_pm_domain_detach(dev, true); return ret; @@ -442,10 +445,8 @@ { sdrv->driver.owner = owner; sdrv->driver.bus = &spi_bus_type; - if (sdrv->probe) - sdrv->driver.probe = spi_drv_probe; - if (sdrv->remove) - sdrv->driver.remove = spi_drv_remove; + sdrv->driver.probe = spi_drv_probe; + sdrv->driver.remove = spi_drv_remove; if (sdrv->shutdown) sdrv->driver.shutdown = spi_drv_shutdown; return driver_register(&sdrv->driver); @@ -475,6 +476,12 @@ */ static DEFINE_MUTEX(board_lock); +/* + * Prevents addition of devices with same chip select and + * addition of devices below an unregistering controller. + */ +static DEFINE_MUTEX(spi_add_lock); + /** * spi_alloc_device - Allocate a new SPI device * @ctlr: Controller to which device is connected @@ -554,7 +561,6 @@ */ int spi_add_device(struct spi_device *spi) { - static DEFINE_MUTEX(spi_add_lock); struct spi_controller *ctlr = spi->controller; struct device *dev = ctlr->dev.parent; int status; @@ -582,6 +588,13 @@ goto done; } + /* Controller may unregister concurrently */ + if (IS_ENABLED(CONFIG_SPI_DYNAMIC) && + !device_is_registered(&ctlr->dev)) { + status = -ENODEV; + goto done; + } + /* Descriptors take precedence */ if (ctlr->cs_gpiods) spi->cs_gpiod = ctlr->cs_gpiods[spi->chip_select]; @@ -789,18 +802,16 @@ enable = !enable; if (spi->cs_gpiod || gpio_is_valid(spi->cs_gpio)) { - /* - * Honour the SPI_NO_CS flag and invert the enable line, as - * active low is default for SPI. Execution paths that handle - * polarity inversion in gpiolib (such as device tree) will - * enforce active high using the SPI_CS_HIGH resulting in a - * double inversion through the code above. - */ if (!(spi->mode & SPI_NO_CS)) { if (spi->cs_gpiod) + /* polarity handled by gpiolib */ gpiod_set_value_cansleep(spi->cs_gpiod, - !enable); + enable1); else + /* + * invert the enable line, as active low is + * default for SPI. + */ gpio_set_value_cansleep(spi->cs_gpio, !enable); } /* Some SPI masters need both GPIO CS & slave_select */ @@ -1076,6 +1087,7 @@ { struct spi_statistics *statm = &ctlr->statistics; struct spi_statistics *stats = &msg->spi->statistics; + u32 speed_hz = xfer->speed_hz; unsigned long long ms; if (spi_controller_is_slave(ctlr)) { @@ -1084,8 +1096,11 @@ return -EINTR; } } else { + if (!speed_hz) + speed_hz = 100000; + ms = 8LL * 1000LL * xfer->len; - do_div(ms, xfer->speed_hz); + do_div(ms, speed_hz); ms += ms + 200; /* some tolerance */ if (ms > UINT_MAX) @@ -1293,8 +1308,6 @@ if (msg->status && ctlr->handle_err) ctlr->handle_err(ctlr, msg); - spi_res_release(ctlr, msg); - spi_finalize_current_message(ctlr); return ret; @@ -1682,6 +1695,13 @@ spi_unmap_msg(ctlr, mesg); + /* In the prepare_messages callback the spi bus has the opportunity to + * split a transfer to smaller chunks. + * Release splited transfers here since spi_map_msg is done on the + * splited transfers. + */ + spi_res_release(ctlr, mesg); + if (ctlr->cur_msg_prepared && ctlr->unprepare_message) { ret = ctlr->unprepare_message(ctlr, mesg); if (ret) { @@ -1944,15 +1964,6 @@ } spi->chip_select = value; - /* - * For descriptors associated with the device, polarity inversion is - * handled in the gpiolib, so all gpio chip selects are "active high" - * in the logical sense, the gpiolib will invert the line if need be. - */ - if ((ctlr->use_gpio_descriptors) && ctlr->cs_gpiods && - ctlr->cs_gpiods[spi->chip_select]) - spi->mode |= SPI_CS_HIGH; - /* Device speed */ if (!of_property_read_u32(nc, "spi-max-frequency", &value)) spi->max_speed_hz = value; @@ -2405,6 +2416,49 @@ } EXPORT_SYMBOL_GPL(__spi_alloc_controller); +static void devm_spi_release_controller(struct device *dev, void *ctlr) +{ + spi_controller_put(*(struct spi_controller **)ctlr); +} + +/** + * __devm_spi_alloc_controller - resource-managed __spi_alloc_controller() + * @dev: physical device of SPI controller + * @size: how much zeroed driver-private data to allocate + * @slave: whether to allocate an SPI master (false) or SPI slave (true) + * Context: can sleep + * + * Allocate an SPI controller and automatically release a reference on it + * when @dev is unbound from its driver. Drivers are thus relieved from + * having to call spi_controller_put(). + * + * The arguments to this function are identical to __spi_alloc_controller(). + * + * Return: the SPI controller structure on success, else NULL. + */ +struct spi_controller *__devm_spi_alloc_controller(struct device *dev, + unsigned int size, + bool slave) +{ + struct spi_controller **ptr, *ctlr; + + ptr = devres_alloc(devm_spi_release_controller, sizeof(*ptr), + GFP_KERNEL); + if (!ptr) + return NULL; + + ctlr = __spi_alloc_controller(dev, size, slave); + if (ctlr) { + *ptr = ctlr; + devres_add(dev, ptr); + } else { + devres_free(ptr); + } + + return ctlr; +} +EXPORT_SYMBOL_GPL(__devm_spi_alloc_controller); + #ifdef CONFIG_OF static int of_spi_get_gpio_numbers(struct spi_controller *ctlr) { @@ -2741,6 +2795,11 @@ } EXPORT_SYMBOL_GPL(devm_spi_register_controller); +static int devm_spi_match_controller(struct device *dev, void *res, void *ctlr) +{ + return *(struct spi_controller **)res == ctlr; +} + static int __unregister(struct device *dev, void *null) { spi_unregister_device(to_spi_device(dev)); @@ -2764,6 +2823,10 @@ struct spi_controller *found; int id = ctlr->bus_num; + /* Prevent addition of new devices, unregister existing ones */ + if (IS_ENABLED(CONFIG_SPI_DYNAMIC)) + mutex_lock(&spi_add_lock); + device_for_each_child(&ctlr->dev, NULL, __unregister); /* First make sure that this controller was ever added */ @@ -2778,12 +2841,23 @@ list_del(&ctlr->list); mutex_unlock(&board_lock); - device_unregister(&ctlr->dev); + device_del(&ctlr->dev); + + /* Release the last reference on the controller if its driver + * has not yet been converted to devm_spi_alloc_master/slave(). + */ + if (!devres_find(ctlr->dev.parent, devm_spi_release_controller, + devm_spi_match_controller, ctlr)) + put_device(&ctlr->dev); + /* free bus id */ mutex_lock(&board_lock); if (found == ctlr) idr_remove(&spi_master_idr, id); mutex_unlock(&board_lock); + + if (IS_ENABLED(CONFIG_SPI_DYNAMIC)) + mutex_unlock(&spi_add_lock); } EXPORT_SYMBOL_GPL(spi_unregister_controller); --- linux-azure-5.8-5.8.0.orig/drivers/spi/spidev.c +++ linux-azure-5.8-5.8.0/drivers/spi/spidev.c @@ -224,6 +224,11 @@ for (n = n_xfers, k_tmp = k_xfers, u_tmp = u_xfers; n; n--, k_tmp++, u_tmp++) { + /* Ensure that also following allocations from rx_buf/tx_buf will meet + * DMA alignment requirements. + */ + unsigned int len_aligned = ALIGN(u_tmp->len, ARCH_KMALLOC_MINALIGN); + k_tmp->len = u_tmp->len; total += k_tmp->len; @@ -239,17 +244,17 @@ if (u_tmp->rx_buf) { /* this transfer needs space in RX bounce buffer */ - rx_total += k_tmp->len; + rx_total += len_aligned; if (rx_total > bufsiz) { status = -EMSGSIZE; goto done; } k_tmp->rx_buf = rx_buf; - rx_buf += k_tmp->len; + rx_buf += len_aligned; } if (u_tmp->tx_buf) { /* this transfer needs space in TX bounce buffer */ - tx_total += k_tmp->len; + tx_total += len_aligned; if (tx_total > bufsiz) { status = -EMSGSIZE; goto done; @@ -259,7 +264,7 @@ (uintptr_t) u_tmp->tx_buf, u_tmp->len)) goto done; - tx_buf += k_tmp->len; + tx_buf += len_aligned; } k_tmp->cs_change = !!u_tmp->cs_change; @@ -293,16 +298,16 @@ goto done; /* copy any rx data out of bounce buffer */ - rx_buf = spidev->rx_buffer; - for (n = n_xfers, u_tmp = u_xfers; n; n--, u_tmp++) { + for (n = n_xfers, k_tmp = k_xfers, u_tmp = u_xfers; + n; + n--, k_tmp++, u_tmp++) { if (u_tmp->rx_buf) { if (copy_to_user((u8 __user *) - (uintptr_t) u_tmp->rx_buf, rx_buf, + (uintptr_t) u_tmp->rx_buf, k_tmp->rx_buf, u_tmp->len)) { status = -EFAULT; goto done; } - rx_buf += u_tmp->len; } } status = total; --- linux-azure-5.8-5.8.0.orig/drivers/spmi/spmi-pmic-arb.c +++ linux-azure-5.8-5.8.0/drivers/spmi/spmi-pmic-arb.c @@ -1,6 +1,6 @@ // SPDX-License-Identifier: GPL-2.0-only /* - * Copyright (c) 2012-2015, 2017, The Linux Foundation. All rights reserved. + * Copyright (c) 2012-2015, 2017, 2021, The Linux Foundation. All rights reserved. */ #include #include @@ -505,8 +505,7 @@ static void periph_interrupt(struct spmi_pmic_arb *pmic_arb, u16 apid) { unsigned int irq; - u32 status; - int id; + u32 status, id; u8 sid = (pmic_arb->apid_data[apid].ppid >> 8) & 0xF; u8 per = pmic_arb->apid_data[apid].ppid & 0xFF; --- linux-azure-5.8-5.8.0.orig/drivers/staging/android/Kconfig +++ linux-azure-5.8-5.8.0/drivers/staging/android/Kconfig @@ -4,7 +4,7 @@ if ANDROID config ASHMEM - bool "Enable the Anonymous Shared Memory Subsystem" + tristate "Enable the Anonymous Shared Memory Subsystem" depends on SHMEM help The ashmem subsystem is a new shared memory allocator, similar to --- linux-azure-5.8-5.8.0.orig/drivers/staging/android/Makefile +++ linux-azure-5.8-5.8.0/drivers/staging/android/Makefile @@ -3,4 +3,5 @@ obj-y += ion/ -obj-$(CONFIG_ASHMEM) += ashmem.o +ashmem_linux-y += ashmem.o +obj-$(CONFIG_ASHMEM) += ashmem_linux.o --- linux-azure-5.8-5.8.0.orig/drivers/staging/android/ashmem.c +++ linux-azure-5.8-5.8.0/drivers/staging/android/ashmem.c @@ -19,6 +19,7 @@ #include #include #include +#include #include #include #include @@ -95,6 +96,15 @@ static struct kmem_cache *ashmem_area_cachep __read_mostly; static struct kmem_cache *ashmem_range_cachep __read_mostly; +/* + * A separate lockdep class for the backing shmem inodes to resolve the lockdep + * warning about the race between kswapd taking fs_reclaim before inode_lock + * and write syscall taking inode_lock and then fs_reclaim. + * Note that such race is impossible because ashmem does not support write + * syscalls operating on the backing shmem. + */ +static struct lock_class_key backing_shmem_inode_class; + static inline unsigned long range_size(struct ashmem_range *range) { return range->pgend - range->pgstart + 1; @@ -396,6 +406,7 @@ if (!asma->file) { char *name = ASHMEM_NAME_DEF; struct file *vmfile; + struct inode *inode; if (asma->name[ASHMEM_NAME_PREFIX_LEN] != '\0') name = asma->name; @@ -407,6 +418,8 @@ goto out; } vmfile->f_mode |= FMODE_LSEEK; + inode = file_inode(vmfile); + lockdep_set_class(&inode->i_rwsem, &backing_shmem_inode_class); asma->file = vmfile; /* * override mmap operation of the vmfile so that it can't be @@ -952,4 +965,18 @@ out: return ret; } -device_initcall(ashmem_init); + +static void __exit ashmem_exit(void) +{ + misc_deregister(&ashmem_misc); + unregister_shrinker(&ashmem_shrinker); + kmem_cache_destroy(ashmem_range_cachep); + kmem_cache_destroy(ashmem_area_cachep); +} + +module_init(ashmem_init); +module_exit(ashmem_exit); + +MODULE_AUTHOR("Google, Inc."); +MODULE_DESCRIPTION("Driver for Android shared memory device"); +MODULE_LICENSE("GPL v2"); --- linux-azure-5.8-5.8.0.orig/drivers/staging/comedi/comedi_fops.c +++ linux-azure-5.8-5.8.0/drivers/staging/comedi/comedi_fops.c @@ -2984,7 +2984,9 @@ v32.chanlist_len = cmd->chanlist_len; v32.data = ptr_to_compat(cmd->data); v32.data_len = cmd->data_len; - return copy_to_user(cmd32, &v32, sizeof(v32)); + if (copy_to_user(cmd32, &v32, sizeof(v32))) + return -EFAULT; + return 0; } /* Handle 32-bit COMEDI_CMD ioctl. */ --- linux-azure-5.8-5.8.0.orig/drivers/staging/comedi/drivers/cb_pcidas.c +++ linux-azure-5.8-5.8.0/drivers/staging/comedi/drivers/cb_pcidas.c @@ -1342,6 +1342,7 @@ if (dev->irq && board->has_ao_fifo) { dev->write_subdev = s; s->subdev_flags |= SDF_CMD_WRITE; + s->len_chanlist = s->n_chan; s->do_cmdtest = cb_pcidas_ao_cmdtest; s->do_cmd = cb_pcidas_ao_cmd; s->cancel = cb_pcidas_ao_cancel; --- linux-azure-5.8-5.8.0.orig/drivers/staging/comedi/drivers/mf6x4.c +++ linux-azure-5.8-5.8.0/drivers/staging/comedi/drivers/mf6x4.c @@ -112,8 +112,9 @@ struct mf6x4_private *devpriv = dev->private; unsigned int status; + /* EOLC goes low at end of conversion. */ status = ioread32(devpriv->gpioc_reg); - if (status & MF6X4_GPIOC_EOLC) + if ((status & MF6X4_GPIOC_EOLC) == 0) return 0; return -EBUSY; } --- linux-azure-5.8-5.8.0.orig/drivers/staging/comedi/drivers/vmk80xx.c +++ linux-azure-5.8-5.8.0/drivers/staging/comedi/drivers/vmk80xx.c @@ -667,6 +667,9 @@ if (!devpriv->ep_rx || !devpriv->ep_tx) return -ENODEV; + if (!usb_endpoint_maxp(devpriv->ep_rx) || !usb_endpoint_maxp(devpriv->ep_tx)) + return -EINVAL; + return 0; } --- linux-azure-5.8-5.8.0.orig/drivers/staging/emxx_udc/emxx_udc.c +++ linux-azure-5.8-5.8.0/drivers/staging/emxx_udc/emxx_udc.c @@ -2593,7 +2593,7 @@ if (req->unaligned) { if (!ep->virt_buf) - ep->virt_buf = dma_alloc_coherent(NULL, PAGE_SIZE, + ep->virt_buf = dma_alloc_coherent(udc->dev, PAGE_SIZE, &ep->phys_buf, GFP_ATOMIC | GFP_DMA); if (ep->epnum > 0) { @@ -3148,7 +3148,7 @@ for (i = 0; i < NUM_ENDPOINTS; i++) { ep = &udc->ep[i]; if (ep->virt_buf) - dma_free_coherent(NULL, PAGE_SIZE, (void *)ep->virt_buf, + dma_free_coherent(udc->dev, PAGE_SIZE, (void *)ep->virt_buf, ep->phys_buf); } --- linux-azure-5.8-5.8.0.orig/drivers/staging/fieldbus/anybuss/arcx-anybus.c +++ linux-azure-5.8-5.8.0/drivers/staging/fieldbus/anybuss/arcx-anybus.c @@ -293,7 +293,7 @@ regulator = devm_regulator_register(dev, &can_power_desc, &config); if (IS_ERR(regulator)) { err = PTR_ERR(regulator); - goto out_reset; + goto out_ida; } /* make controller info visible to userspace */ cd->class_dev = kzalloc(sizeof(*cd->class_dev), GFP_KERNEL); --- linux-azure-5.8-5.8.0.orig/drivers/staging/gasket/gasket_interrupt.c +++ linux-azure-5.8-5.8.0/drivers/staging/gasket/gasket_interrupt.c @@ -487,14 +487,16 @@ int gasket_interrupt_set_eventfd(struct gasket_interrupt_data *interrupt_data, int interrupt, int event_fd) { - struct eventfd_ctx *ctx = eventfd_ctx_fdget(event_fd); - - if (IS_ERR(ctx)) - return PTR_ERR(ctx); + struct eventfd_ctx *ctx; if (interrupt < 0 || interrupt >= interrupt_data->num_interrupts) return -EINVAL; + ctx = eventfd_ctx_fdget(event_fd); + + if (IS_ERR(ctx)) + return PTR_ERR(ctx); + interrupt_data->eventfd_ctxs[interrupt] = ctx; return 0; } @@ -505,6 +507,9 @@ if (interrupt < 0 || interrupt >= interrupt_data->num_interrupts) return -EINVAL; - interrupt_data->eventfd_ctxs[interrupt] = NULL; + if (interrupt_data->eventfd_ctxs[interrupt]) { + eventfd_ctx_put(interrupt_data->eventfd_ctxs[interrupt]); + interrupt_data->eventfd_ctxs[interrupt] = NULL; + } return 0; } --- linux-azure-5.8-5.8.0.orig/drivers/staging/gdm724x/gdm_usb.c +++ linux-azure-5.8-5.8.0/drivers/staging/gdm724x/gdm_usb.c @@ -56,20 +56,24 @@ static int request_mac_address(struct lte_udev *udev) { - u8 buf[16] = {0,}; - struct hci_packet *hci = (struct hci_packet *)buf; + struct hci_packet *hci; struct usb_device *usbdev = udev->usbdev; int actual; int ret = -1; + hci = kmalloc(struct_size(hci, data, 1), GFP_KERNEL); + if (!hci) + return -ENOMEM; + hci->cmd_evt = gdm_cpu_to_dev16(udev->gdm_ed, LTE_GET_INFORMATION); hci->len = gdm_cpu_to_dev16(udev->gdm_ed, 1); hci->data[0] = MAC_ADDRESS; - ret = usb_bulk_msg(usbdev, usb_sndbulkpipe(usbdev, 2), buf, 5, + ret = usb_bulk_msg(usbdev, usb_sndbulkpipe(usbdev, 2), hci, 5, &actual, 1000); udev->request_mac_addr = 1; + kfree(hci); return ret; } --- linux-azure-5.8-5.8.0.orig/drivers/staging/greybus/audio_codec.c +++ linux-azure-5.8-5.8.0/drivers/staging/greybus/audio_codec.c @@ -489,6 +489,7 @@ if (ret) { dev_err_ratelimited(dai->dev, "%d: Error during set_config\n", ret); + gb_pm_runtime_put_noidle(bundle); mutex_unlock(&codec->lock); return ret; } @@ -565,6 +566,7 @@ break; } if (ret) { + gb_pm_runtime_put_noidle(bundle); mutex_unlock(&codec->lock); dev_err_ratelimited(dai->dev, "set_data_size failed:%d\n", ret); --- linux-azure-5.8-5.8.0.orig/drivers/staging/greybus/audio_topology.c +++ linux-azure-5.8-5.8.0/drivers/staging/greybus/audio_topology.c @@ -460,6 +460,15 @@ val = ucontrol->value.integer.value[0] & mask; connect = !!val; + ret = gb_pm_runtime_get_sync(bundle); + if (ret) + return ret; + + ret = gb_audio_gb_get_control(module->mgmt_connection, data->ctl_id, + GB_AUDIO_INVALID_INDEX, &gbvalue); + if (ret) + goto exit; + /* update ucontrol */ if (gbvalue.value.integer_value[0] != val) { for (wi = 0; wi < wlist->num_widgets; wi++) { @@ -473,25 +482,17 @@ gbvalue.value.integer_value[0] = cpu_to_le32(ucontrol->value.integer.value[0]); - ret = gb_pm_runtime_get_sync(bundle); - if (ret) - return ret; - ret = gb_audio_gb_set_control(module->mgmt_connection, data->ctl_id, GB_AUDIO_INVALID_INDEX, &gbvalue); - - gb_pm_runtime_put_autosuspend(bundle); - - if (ret) { - dev_err_ratelimited(codec->dev, - "%d:Error in %s for %s\n", ret, - __func__, kcontrol->id.name); - return ret; - } } - return 0; +exit: + gb_pm_runtime_put_autosuspend(bundle); + if (ret) + dev_err_ratelimited(codec_dev, "%d:Error in %s for %s\n", ret, + __func__, kcontrol->id.name); + return ret; } #define SOC_DAPM_MIXER_GB(xname, kcount, data) \ --- linux-azure-5.8-5.8.0.orig/drivers/staging/media/allegro-dvt/allegro-core.c +++ linux-azure-5.8-5.8.0/drivers/staging/media/allegro-dvt/allegro-core.c @@ -2422,8 +2422,6 @@ INIT_LIST_HEAD(&channel->buffers_reference); INIT_LIST_HEAD(&channel->buffers_intermediate); - list_add(&channel->list, &dev->channels); - channel->fh.m2m_ctx = v4l2_m2m_ctx_init(dev->m2m_dev, channel, allegro_queue_init); @@ -2432,6 +2430,7 @@ goto error; } + list_add(&channel->list, &dev->channels); file->private_data = &channel->fh; v4l2_fh_add(&channel->fh); @@ -3065,9 +3064,9 @@ return -EINVAL; } regs = devm_ioremap(&pdev->dev, res->start, resource_size(res)); - if (IS_ERR(regs)) { + if (!regs) { dev_err(&pdev->dev, "failed to map registers\n"); - return PTR_ERR(regs); + return -ENOMEM; } dev->regmap = devm_regmap_init_mmio(&pdev->dev, regs, &allegro_regmap_config); @@ -3085,9 +3084,9 @@ sram_regs = devm_ioremap(&pdev->dev, sram_res->start, resource_size(sram_res)); - if (IS_ERR(sram_regs)) { + if (!sram_regs) { dev_err(&pdev->dev, "failed to map sram\n"); - return PTR_ERR(sram_regs); + return -ENOMEM; } dev->sram = devm_regmap_init_mmio(&pdev->dev, sram_regs, &allegro_sram_config); --- linux-azure-5.8-5.8.0.orig/drivers/staging/media/atomisp/pci/atomisp_subdev.c +++ linux-azure-5.8-5.8.0/drivers/staging/media/atomisp/pci/atomisp_subdev.c @@ -349,12 +349,20 @@ return 0; } -static char *atomisp_pad_str[] = { "ATOMISP_SUBDEV_PAD_SINK", - "ATOMISP_SUBDEV_PAD_SOURCE_CAPTURE", - "ATOMISP_SUBDEV_PAD_SOURCE_VF", - "ATOMISP_SUBDEV_PAD_SOURCE_PREVIEW", - "ATOMISP_SUBDEV_PAD_SOURCE_VIDEO" - }; +static const char *atomisp_pad_str(unsigned int pad) +{ + static const char *const pad_str[] = { + "ATOMISP_SUBDEV_PAD_SINK", + "ATOMISP_SUBDEV_PAD_SOURCE_CAPTURE", + "ATOMISP_SUBDEV_PAD_SOURCE_VF", + "ATOMISP_SUBDEV_PAD_SOURCE_PREVIEW", + "ATOMISP_SUBDEV_PAD_SOURCE_VIDEO", + }; + + if (pad >= ARRAY_SIZE(pad_str)) + return "ATOMISP_INVALID_PAD"; + return pad_str[pad]; +} int atomisp_subdev_set_selection(struct v4l2_subdev *sd, struct v4l2_subdev_pad_config *cfg, @@ -378,7 +386,7 @@ dev_dbg(isp->dev, "sel: pad %s tgt %s l %d t %d w %d h %d which %s f 0x%8.8x\n", - atomisp_pad_str[pad], target == V4L2_SEL_TGT_CROP + atomisp_pad_str(pad), target == V4L2_SEL_TGT_CROP ? "V4L2_SEL_TGT_CROP" : "V4L2_SEL_TGT_COMPOSE", r->left, r->top, r->width, r->height, which == V4L2_SUBDEV_FORMAT_TRY ? "V4L2_SUBDEV_FORMAT_TRY" @@ -610,7 +618,7 @@ enum atomisp_input_stream_id stream_id; dev_dbg(isp->dev, "ffmt: pad %s w %d h %d code 0x%8.8x which %s\n", - atomisp_pad_str[pad], ffmt->width, ffmt->height, ffmt->code, + atomisp_pad_str(pad), ffmt->width, ffmt->height, ffmt->code, which == V4L2_SUBDEV_FORMAT_TRY ? "V4L2_SUBDEV_FORMAT_TRY" : "V4L2_SUBDEV_FORMAT_ACTIVE"); --- linux-azure-5.8-5.8.0.orig/drivers/staging/media/atomisp/pci/hmm/hmm.c +++ linux-azure-5.8-5.8.0/drivers/staging/media/atomisp/pci/hmm/hmm.c @@ -269,7 +269,7 @@ hmm_set(bo->start, 0, bytes); dev_dbg(atomisp_dev, - "%s: pages: 0x%08x (%ld bytes), type: %d from highmem %d, user ptr %p, cached %d\n", + "%s: pages: 0x%08x (%zu bytes), type: %d from highmem %d, user ptr %p, cached %d\n", __func__, bo->start, bytes, type, from_highmem, userptr, cached); return bo->start; --- linux-azure-5.8-5.8.0.orig/drivers/staging/media/atomisp/pci/sh_css.c +++ linux-azure-5.8-5.8.0/drivers/staging/media/atomisp/pci/sh_css.c @@ -9521,7 +9521,7 @@ if (err) { IA_CSS_LEAVE_ERR(err); - return err; + goto ERR; } #endif for (i = 0; i < num_pipes; i++) --- linux-azure-5.8-5.8.0.orig/drivers/staging/media/hantro/hantro_h264.c +++ linux-azure-5.8-5.8.0/drivers/staging/media/hantro/hantro_h264.c @@ -327,7 +327,7 @@ */ dst_buf = hantro_get_dst_buf(ctx); buf = &dst_buf->vb2_buf; - dma_addr = vb2_dma_contig_plane_dma_addr(buf, 0); + dma_addr = hantro_get_dec_buf_addr(ctx, buf); } return dma_addr; --- linux-azure-5.8-5.8.0.orig/drivers/staging/media/hantro/hantro_postproc.c +++ linux-azure-5.8-5.8.0/drivers/staging/media/hantro/hantro_postproc.c @@ -118,7 +118,9 @@ unsigned int num_buffers = cap_queue->num_buffers; unsigned int i, buf_size; - buf_size = ctx->dst_fmt.plane_fmt[0].sizeimage; + buf_size = ctx->dst_fmt.plane_fmt[0].sizeimage + + hantro_h264_mv_size(ctx->dst_fmt.width, + ctx->dst_fmt.height); for (i = 0; i < num_buffers; ++i) { struct hantro_aux_buf *priv = &ctx->postproc.dec_q[i]; --- linux-azure-5.8-5.8.0.orig/drivers/staging/media/hantro/hantro_v4l2.c +++ linux-azure-5.8-5.8.0/drivers/staging/media/hantro/hantro_v4l2.c @@ -367,7 +367,7 @@ hantro_reset_fmt(raw_fmt, raw_vpu_fmt); raw_fmt->width = encoded_fmt->width; - raw_fmt->width = encoded_fmt->width; + raw_fmt->height = encoded_fmt->height; if (hantro_is_encoder_ctx(ctx)) hantro_set_fmt_out(ctx, raw_fmt); else --- linux-azure-5.8-5.8.0.orig/drivers/staging/media/imx/imx-media-csc-scaler.c +++ linux-azure-5.8-5.8.0/drivers/staging/media/imx/imx-media-csc-scaler.c @@ -869,11 +869,7 @@ struct ipu_csc_scaler_priv *priv = vdev_to_priv(vdev); struct video_device *vfd = priv->vdev.vfd; - mutex_lock(&priv->mutex); - video_unregister_device(vfd); - - mutex_unlock(&priv->mutex); } struct imx_media_video_dev * --- linux-azure-5.8-5.8.0.orig/drivers/staging/media/imx/imx-media-dev.c +++ linux-azure-5.8-5.8.0/drivers/staging/media/imx/imx-media-dev.c @@ -53,6 +53,7 @@ imxmd->m2m_vdev = imx_media_csc_scaler_device_init(imxmd); if (IS_ERR(imxmd->m2m_vdev)) { ret = PTR_ERR(imxmd->m2m_vdev); + imxmd->m2m_vdev = NULL; goto unlock; } @@ -107,10 +108,14 @@ v4l2_info(&imxmd->v4l2_dev, "Removing imx-media\n"); + if (imxmd->m2m_vdev) { + imx_media_csc_scaler_device_unregister(imxmd->m2m_vdev); + imxmd->m2m_vdev = NULL; + } + v4l2_async_notifier_unregister(&imxmd->notifier); imx_media_unregister_ipu_internal_subdevs(imxmd); v4l2_async_notifier_cleanup(&imxmd->notifier); - imx_media_csc_scaler_device_unregister(imxmd->m2m_vdev); media_device_unregister(&imxmd->md); v4l2_device_unregister(&imxmd->v4l2_dev); media_device_cleanup(&imxmd->md); --- linux-azure-5.8-5.8.0.orig/drivers/staging/media/imx/imx7-media-csi.c +++ linux-azure-5.8-5.8.0/drivers/staging/media/imx/imx7-media-csi.c @@ -499,6 +499,7 @@ struct v4l2_subdev_format *sink_fmt) { struct imx7_csi *csi = v4l2_get_subdevdata(sd); + struct media_entity *src; struct media_pad *pad; int ret; @@ -509,11 +510,21 @@ if (!csi->src_sd) return -EPIPE; + src = &csi->src_sd->entity; + + /* + * if the source is neither a CSI MUX or CSI-2 get the one directly + * upstream from this CSI + */ + if (src->function != MEDIA_ENT_F_VID_IF_BRIDGE && + src->function != MEDIA_ENT_F_VID_MUX) + src = &csi->sd.entity; + /* - * find the entity that is selected by the CSI mux. This is needed + * find the entity that is selected by the source. This is needed * to distinguish between a parallel or CSI-2 pipeline. */ - pad = imx_media_pipeline_pad(&csi->src_sd->entity, 0, 0, true); + pad = imx_media_pipeline_pad(src, 0, 0, true); if (!pad) return -ENODEV; @@ -1164,12 +1175,12 @@ struct imx7_csi *csi = imx7_csi_notifier_to_dev(notifier); struct media_pad *sink = &csi->sd.entity.pads[IMX7_CSI_PAD_SINK]; - /* The bound subdev must always be the CSI mux */ - if (WARN_ON(sd->entity.function != MEDIA_ENT_F_VID_MUX)) - return -ENXIO; - - /* Mark it as such via its group id */ - sd->grp_id = IMX_MEDIA_GRP_ID_CSI_MUX; + /* + * If the subdev is a video mux, it must be one of the CSI + * muxes. Mark it as such via its group id. + */ + if (sd->entity.function == MEDIA_ENT_F_VID_MUX) + sd->grp_id = IMX_MEDIA_GRP_ID_CSI_MUX; return v4l2_create_fwnode_links_to_pad(sd, sink); } --- linux-azure-5.8-5.8.0.orig/drivers/staging/media/ipu3/ipu3-css-params.c +++ linux-azure-5.8-5.8.0/drivers/staging/media/ipu3/ipu3-css-params.c @@ -159,7 +159,7 @@ memset(&cfg->scaler_coeffs_chroma, 0, sizeof(cfg->scaler_coeffs_chroma)); - memset(&cfg->scaler_coeffs_luma, 0, sizeof(*cfg->scaler_coeffs_luma)); + memset(&cfg->scaler_coeffs_luma, 0, sizeof(cfg->scaler_coeffs_luma)); do { phase_step_correction++; --- linux-azure-5.8-5.8.0.orig/drivers/staging/media/phy-rockchip-dphy-rx0/phy-rockchip-dphy-rx0.c +++ linux-azure-5.8-5.8.0/drivers/staging/media/phy-rockchip-dphy-rx0/phy-rockchip-dphy-rx0.c @@ -16,6 +16,7 @@ */ #include +#include #include #include #include --- linux-azure-5.8-5.8.0.orig/drivers/staging/media/rkisp1/rkisp1-capture.c +++ linux-azure-5.8-5.8.0/drivers/staging/media/rkisp1/rkisp1-capture.c @@ -967,6 +967,7 @@ ret = pm_runtime_get_sync(cap->rkisp1->dev); if (ret < 0) { + pm_runtime_put_noidle(cap->rkisp1->dev); dev_err(cap->rkisp1->dev, "power up failed %d\n", ret); goto err_destroy_dummy; } --- linux-azure-5.8-5.8.0.orig/drivers/staging/media/rkisp1/rkisp1-common.h +++ linux-azure-5.8-5.8.0/drivers/staging/media/rkisp1/rkisp1-common.h @@ -22,6 +22,9 @@ #include "rkisp1-regs.h" #include "uapi/rkisp1-config.h" +#define RKISP1_ISP_SD_SRC BIT(0) +#define RKISP1_ISP_SD_SINK BIT(1) + #define RKISP1_ISP_MAX_WIDTH 4032 #define RKISP1_ISP_MAX_HEIGHT 3024 #define RKISP1_ISP_MIN_WIDTH 32 --- linux-azure-5.8-5.8.0.orig/drivers/staging/media/rkisp1/rkisp1-isp.c +++ linux-azure-5.8-5.8.0/drivers/staging/media/rkisp1/rkisp1-isp.c @@ -23,10 +23,6 @@ #define RKISP1_ISP_DEV_NAME RKISP1_DRIVER_NAME "_isp" -#define RKISP1_DIR_SRC BIT(0) -#define RKISP1_DIR_SINK BIT(1) -#define RKISP1_DIR_SINK_SRC (RKISP1_DIR_SINK | RKISP1_DIR_SRC) - /* * NOTE: MIPI controller and input MUX are also configured in this file. * This is because ISP Subdev describes not only ISP submodule (input size, @@ -62,119 +58,119 @@ { .mbus_code = MEDIA_BUS_FMT_YUYV8_2X8, .pixel_enc = V4L2_PIXEL_ENC_YUV, - .direction = RKISP1_DIR_SRC, + .direction = RKISP1_ISP_SD_SRC, }, { .mbus_code = MEDIA_BUS_FMT_SRGGB10_1X10, .pixel_enc = V4L2_PIXEL_ENC_BAYER, .mipi_dt = RKISP1_CIF_CSI2_DT_RAW10, .bayer_pat = RKISP1_RAW_RGGB, .bus_width = 10, - .direction = RKISP1_DIR_SINK_SRC, + .direction = RKISP1_ISP_SD_SINK | RKISP1_ISP_SD_SRC, }, { .mbus_code = MEDIA_BUS_FMT_SBGGR10_1X10, .pixel_enc = V4L2_PIXEL_ENC_BAYER, .mipi_dt = RKISP1_CIF_CSI2_DT_RAW10, .bayer_pat = RKISP1_RAW_BGGR, .bus_width = 10, - .direction = RKISP1_DIR_SINK_SRC, + .direction = RKISP1_ISP_SD_SINK | RKISP1_ISP_SD_SRC, }, { .mbus_code = MEDIA_BUS_FMT_SGBRG10_1X10, .pixel_enc = V4L2_PIXEL_ENC_BAYER, .mipi_dt = RKISP1_CIF_CSI2_DT_RAW10, .bayer_pat = RKISP1_RAW_GBRG, .bus_width = 10, - .direction = RKISP1_DIR_SINK_SRC, + .direction = RKISP1_ISP_SD_SINK | RKISP1_ISP_SD_SRC, }, { .mbus_code = MEDIA_BUS_FMT_SGRBG10_1X10, .pixel_enc = V4L2_PIXEL_ENC_BAYER, .mipi_dt = RKISP1_CIF_CSI2_DT_RAW10, .bayer_pat = RKISP1_RAW_GRBG, .bus_width = 10, - .direction = RKISP1_DIR_SINK_SRC, + .direction = RKISP1_ISP_SD_SINK | RKISP1_ISP_SD_SRC, }, { .mbus_code = MEDIA_BUS_FMT_SRGGB12_1X12, .pixel_enc = V4L2_PIXEL_ENC_BAYER, .mipi_dt = RKISP1_CIF_CSI2_DT_RAW12, .bayer_pat = RKISP1_RAW_RGGB, .bus_width = 12, - .direction = RKISP1_DIR_SINK_SRC, + .direction = RKISP1_ISP_SD_SINK | RKISP1_ISP_SD_SRC, }, { .mbus_code = MEDIA_BUS_FMT_SBGGR12_1X12, .pixel_enc = V4L2_PIXEL_ENC_BAYER, .mipi_dt = RKISP1_CIF_CSI2_DT_RAW12, .bayer_pat = RKISP1_RAW_BGGR, .bus_width = 12, - .direction = RKISP1_DIR_SINK_SRC, + .direction = RKISP1_ISP_SD_SINK | RKISP1_ISP_SD_SRC, }, { .mbus_code = MEDIA_BUS_FMT_SGBRG12_1X12, .pixel_enc = V4L2_PIXEL_ENC_BAYER, .mipi_dt = RKISP1_CIF_CSI2_DT_RAW12, .bayer_pat = RKISP1_RAW_GBRG, .bus_width = 12, - .direction = RKISP1_DIR_SINK_SRC, + .direction = RKISP1_ISP_SD_SINK | RKISP1_ISP_SD_SRC, }, { .mbus_code = MEDIA_BUS_FMT_SGRBG12_1X12, .pixel_enc = V4L2_PIXEL_ENC_BAYER, .mipi_dt = RKISP1_CIF_CSI2_DT_RAW12, .bayer_pat = RKISP1_RAW_GRBG, .bus_width = 12, - .direction = RKISP1_DIR_SINK_SRC, + .direction = RKISP1_ISP_SD_SINK | RKISP1_ISP_SD_SRC, }, { .mbus_code = MEDIA_BUS_FMT_SRGGB8_1X8, .pixel_enc = V4L2_PIXEL_ENC_BAYER, .mipi_dt = RKISP1_CIF_CSI2_DT_RAW8, .bayer_pat = RKISP1_RAW_RGGB, .bus_width = 8, - .direction = RKISP1_DIR_SINK_SRC, + .direction = RKISP1_ISP_SD_SINK | RKISP1_ISP_SD_SRC, }, { .mbus_code = MEDIA_BUS_FMT_SBGGR8_1X8, .pixel_enc = V4L2_PIXEL_ENC_BAYER, .mipi_dt = RKISP1_CIF_CSI2_DT_RAW8, .bayer_pat = RKISP1_RAW_BGGR, .bus_width = 8, - .direction = RKISP1_DIR_SINK_SRC, + .direction = RKISP1_ISP_SD_SINK | RKISP1_ISP_SD_SRC, }, { .mbus_code = MEDIA_BUS_FMT_SGBRG8_1X8, .pixel_enc = V4L2_PIXEL_ENC_BAYER, .mipi_dt = RKISP1_CIF_CSI2_DT_RAW8, .bayer_pat = RKISP1_RAW_GBRG, .bus_width = 8, - .direction = RKISP1_DIR_SINK_SRC, + .direction = RKISP1_ISP_SD_SINK | RKISP1_ISP_SD_SRC, }, { .mbus_code = MEDIA_BUS_FMT_SGRBG8_1X8, .pixel_enc = V4L2_PIXEL_ENC_BAYER, .mipi_dt = RKISP1_CIF_CSI2_DT_RAW8, .bayer_pat = RKISP1_RAW_GRBG, .bus_width = 8, - .direction = RKISP1_DIR_SINK_SRC, + .direction = RKISP1_ISP_SD_SINK | RKISP1_ISP_SD_SRC, }, { .mbus_code = MEDIA_BUS_FMT_YUYV8_1X16, .pixel_enc = V4L2_PIXEL_ENC_YUV, .mipi_dt = RKISP1_CIF_CSI2_DT_YUV422_8b, .yuv_seq = RKISP1_CIF_ISP_ACQ_PROP_YCBYCR, .bus_width = 16, - .direction = RKISP1_DIR_SINK, + .direction = RKISP1_ISP_SD_SINK, }, { .mbus_code = MEDIA_BUS_FMT_YVYU8_1X16, .pixel_enc = V4L2_PIXEL_ENC_YUV, .mipi_dt = RKISP1_CIF_CSI2_DT_YUV422_8b, .yuv_seq = RKISP1_CIF_ISP_ACQ_PROP_YCRYCB, .bus_width = 16, - .direction = RKISP1_DIR_SINK, + .direction = RKISP1_ISP_SD_SINK, }, { .mbus_code = MEDIA_BUS_FMT_UYVY8_1X16, .pixel_enc = V4L2_PIXEL_ENC_YUV, .mipi_dt = RKISP1_CIF_CSI2_DT_YUV422_8b, .yuv_seq = RKISP1_CIF_ISP_ACQ_PROP_CBYCRY, .bus_width = 16, - .direction = RKISP1_DIR_SINK, + .direction = RKISP1_ISP_SD_SINK, }, { .mbus_code = MEDIA_BUS_FMT_VYUY8_1X16, .pixel_enc = V4L2_PIXEL_ENC_YUV, .mipi_dt = RKISP1_CIF_CSI2_DT_YUV422_8b, .yuv_seq = RKISP1_CIF_ISP_ACQ_PROP_CRYCBY, .bus_width = 16, - .direction = RKISP1_DIR_SINK, + .direction = RKISP1_ISP_SD_SINK, }, }; @@ -574,9 +570,9 @@ int pos = 0; if (code->pad == RKISP1_ISP_PAD_SINK_VIDEO) { - dir = RKISP1_DIR_SINK; + dir = RKISP1_ISP_SD_SINK; } else if (code->pad == RKISP1_ISP_PAD_SOURCE_VIDEO) { - dir = RKISP1_DIR_SRC; + dir = RKISP1_ISP_SD_SRC; } else { if (code->index > 0) return -EINVAL; @@ -661,7 +657,7 @@ src_fmt->code = format->code; mbus_info = rkisp1_isp_mbus_info_get(src_fmt->code); - if (!mbus_info || !(mbus_info->direction & RKISP1_DIR_SRC)) { + if (!mbus_info || !(mbus_info->direction & RKISP1_ISP_SD_SRC)) { src_fmt->code = RKISP1_DEF_SRC_PAD_FMT; mbus_info = rkisp1_isp_mbus_info_get(src_fmt->code); } @@ -745,7 +741,7 @@ which); sink_fmt->code = format->code; mbus_info = rkisp1_isp_mbus_info_get(sink_fmt->code); - if (!mbus_info || !(mbus_info->direction & RKISP1_DIR_SINK)) { + if (!mbus_info || !(mbus_info->direction & RKISP1_ISP_SD_SINK)) { sink_fmt->code = RKISP1_DEF_SINK_PAD_FMT; mbus_info = rkisp1_isp_mbus_info_get(sink_fmt->code); } --- linux-azure-5.8-5.8.0.orig/drivers/staging/media/rkisp1/rkisp1-resizer.c +++ linux-azure-5.8-5.8.0/drivers/staging/media/rkisp1/rkisp1-resizer.c @@ -437,8 +437,8 @@ u32 pad = code->pad; int ret; - /* supported mbus codes are the same in isp sink pad */ - code->pad = RKISP1_ISP_PAD_SINK_VIDEO; + /* supported mbus codes are the same in isp video src pad */ + code->pad = RKISP1_ISP_PAD_SOURCE_VIDEO; ret = v4l2_subdev_call(&rsz->rkisp1->isp.sd, pad, enum_mbus_code, &dummy_cfg, code); @@ -542,7 +542,7 @@ which); sink_fmt->code = format->code; mbus_info = rkisp1_isp_mbus_info_get(sink_fmt->code); - if (!mbus_info) { + if (!mbus_info || !(mbus_info->direction & RKISP1_ISP_SD_SRC)) { sink_fmt->code = RKISP1_DEF_FMT; mbus_info = rkisp1_isp_mbus_info_get(sink_fmt->code); } @@ -553,11 +553,11 @@ src_fmt->code = sink_fmt->code; sink_fmt->width = clamp_t(u32, format->width, - rsz->config->min_rsz_width, - rsz->config->max_rsz_width); + RKISP1_ISP_MIN_WIDTH, + RKISP1_ISP_MAX_WIDTH); sink_fmt->height = clamp_t(u32, format->height, - rsz->config->min_rsz_height, - rsz->config->max_rsz_height); + RKISP1_ISP_MIN_HEIGHT, + RKISP1_ISP_MAX_HEIGHT); *format = *sink_fmt; --- linux-azure-5.8-5.8.0.orig/drivers/staging/media/sunxi/cedrus/cedrus.c +++ linux-azure-5.8-5.8.0/drivers/staging/media/sunxi/cedrus/cedrus.c @@ -199,6 +199,7 @@ struct v4l2_ctrl *ctrl_test; unsigned int count; unsigned int i; + int ret = 0; list_for_each_entry(obj, &req->objects, list) { struct vb2_buffer *vb; @@ -243,12 +244,16 @@ if (!ctrl_test) { v4l2_info(&ctx->dev->v4l2_dev, "Missing required codec control\n"); - return -ENOENT; + ret = -ENOENT; + break; } } v4l2_ctrl_request_hdl_put(hdl); + if (ret) + return ret; + return vb2_request_validate(req); } --- linux-azure-5.8-5.8.0.orig/drivers/staging/media/sunxi/cedrus/cedrus_video.c +++ linux-azure-5.8-5.8.0/drivers/staging/media/sunxi/cedrus/cedrus_video.c @@ -454,8 +454,10 @@ if (V4L2_TYPE_IS_OUTPUT(vq->type)) { ret = pm_runtime_get_sync(dev->dev); - if (ret < 0) + if (ret < 0) { + pm_runtime_put_noidle(dev->dev); goto err_cleanup; + } if (dev->dec_ops[ctx->current_codec]->start) { ret = dev->dec_ops[ctx->current_codec]->start(ctx); --- linux-azure-5.8-5.8.0.orig/drivers/staging/mt7621-dma/Makefile +++ linux-azure-5.8-5.8.0/drivers/staging/mt7621-dma/Makefile @@ -1,4 +1,4 @@ # SPDX-License-Identifier: GPL-2.0 -obj-$(CONFIG_MTK_HSDMA) += mtk-hsdma.o +obj-$(CONFIG_MTK_HSDMA) += hsdma-mt7621.o ccflags-y += -I$(srctree)/drivers/dma --- linux-azure-5.8-5.8.0.orig/drivers/staging/mt7621-dma/hsdma-mt7621.c +++ linux-azure-5.8-5.8.0/drivers/staging/mt7621-dma/hsdma-mt7621.c @@ -0,0 +1,760 @@ +// SPDX-License-Identifier: GPL-2.0+ +/* + * Copyright (C) 2015, Michael Lee + * MTK HSDMA support + */ + +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include + +#include "virt-dma.h" + +#define HSDMA_BASE_OFFSET 0x800 + +#define HSDMA_REG_TX_BASE 0x00 +#define HSDMA_REG_TX_CNT 0x04 +#define HSDMA_REG_TX_CTX 0x08 +#define HSDMA_REG_TX_DTX 0x0c +#define HSDMA_REG_RX_BASE 0x100 +#define HSDMA_REG_RX_CNT 0x104 +#define HSDMA_REG_RX_CRX 0x108 +#define HSDMA_REG_RX_DRX 0x10c +#define HSDMA_REG_INFO 0x200 +#define HSDMA_REG_GLO_CFG 0x204 +#define HSDMA_REG_RST_CFG 0x208 +#define HSDMA_REG_DELAY_INT 0x20c +#define HSDMA_REG_FREEQ_THRES 0x210 +#define HSDMA_REG_INT_STATUS 0x220 +#define HSDMA_REG_INT_MASK 0x228 +#define HSDMA_REG_SCH_Q01 0x280 +#define HSDMA_REG_SCH_Q23 0x284 + +#define HSDMA_DESCS_MAX 0xfff +#define HSDMA_DESCS_NUM 8 +#define HSDMA_DESCS_MASK (HSDMA_DESCS_NUM - 1) +#define HSDMA_NEXT_DESC(x) (((x) + 1) & HSDMA_DESCS_MASK) + +/* HSDMA_REG_INFO */ +#define HSDMA_INFO_INDEX_MASK 0xf +#define HSDMA_INFO_INDEX_SHIFT 24 +#define HSDMA_INFO_BASE_MASK 0xff +#define HSDMA_INFO_BASE_SHIFT 16 +#define HSDMA_INFO_RX_MASK 0xff +#define HSDMA_INFO_RX_SHIFT 8 +#define HSDMA_INFO_TX_MASK 0xff +#define HSDMA_INFO_TX_SHIFT 0 + +/* HSDMA_REG_GLO_CFG */ +#define HSDMA_GLO_TX_2B_OFFSET BIT(31) +#define HSDMA_GLO_CLK_GATE BIT(30) +#define HSDMA_GLO_BYTE_SWAP BIT(29) +#define HSDMA_GLO_MULTI_DMA BIT(10) +#define HSDMA_GLO_TWO_BUF BIT(9) +#define HSDMA_GLO_32B_DESC BIT(8) +#define HSDMA_GLO_BIG_ENDIAN BIT(7) +#define HSDMA_GLO_TX_DONE BIT(6) +#define HSDMA_GLO_BT_MASK 0x3 +#define HSDMA_GLO_BT_SHIFT 4 +#define HSDMA_GLO_RX_BUSY BIT(3) +#define HSDMA_GLO_RX_DMA BIT(2) +#define HSDMA_GLO_TX_BUSY BIT(1) +#define HSDMA_GLO_TX_DMA BIT(0) + +#define HSDMA_BT_SIZE_16BYTES (0 << HSDMA_GLO_BT_SHIFT) +#define HSDMA_BT_SIZE_32BYTES (1 << HSDMA_GLO_BT_SHIFT) +#define HSDMA_BT_SIZE_64BYTES (2 << HSDMA_GLO_BT_SHIFT) +#define HSDMA_BT_SIZE_128BYTES (3 << HSDMA_GLO_BT_SHIFT) + +#define HSDMA_GLO_DEFAULT (HSDMA_GLO_MULTI_DMA | \ + HSDMA_GLO_RX_DMA | HSDMA_GLO_TX_DMA | HSDMA_BT_SIZE_32BYTES) + +/* HSDMA_REG_RST_CFG */ +#define HSDMA_RST_RX_SHIFT 16 +#define HSDMA_RST_TX_SHIFT 0 + +/* HSDMA_REG_DELAY_INT */ +#define HSDMA_DELAY_INT_EN BIT(15) +#define HSDMA_DELAY_PEND_OFFSET 8 +#define HSDMA_DELAY_TIME_OFFSET 0 +#define HSDMA_DELAY_TX_OFFSET 16 +#define HSDMA_DELAY_RX_OFFSET 0 + +#define HSDMA_DELAY_INIT(x) (HSDMA_DELAY_INT_EN | \ + ((x) << HSDMA_DELAY_PEND_OFFSET)) +#define HSDMA_DELAY(x) ((HSDMA_DELAY_INIT(x) << \ + HSDMA_DELAY_TX_OFFSET) | HSDMA_DELAY_INIT(x)) + +/* HSDMA_REG_INT_STATUS */ +#define HSDMA_INT_DELAY_RX_COH BIT(31) +#define HSDMA_INT_DELAY_RX_INT BIT(30) +#define HSDMA_INT_DELAY_TX_COH BIT(29) +#define HSDMA_INT_DELAY_TX_INT BIT(28) +#define HSDMA_INT_RX_MASK 0x3 +#define HSDMA_INT_RX_SHIFT 16 +#define HSDMA_INT_RX_Q0 BIT(16) +#define HSDMA_INT_TX_MASK 0xf +#define HSDMA_INT_TX_SHIFT 0 +#define HSDMA_INT_TX_Q0 BIT(0) + +/* tx/rx dma desc flags */ +#define HSDMA_PLEN_MASK 0x3fff +#define HSDMA_DESC_DONE BIT(31) +#define HSDMA_DESC_LS0 BIT(30) +#define HSDMA_DESC_PLEN0(_x) (((_x) & HSDMA_PLEN_MASK) << 16) +#define HSDMA_DESC_TAG BIT(15) +#define HSDMA_DESC_LS1 BIT(14) +#define HSDMA_DESC_PLEN1(_x) ((_x) & HSDMA_PLEN_MASK) + +/* align 4 bytes */ +#define HSDMA_ALIGN_SIZE 3 +/* align size 128bytes */ +#define HSDMA_MAX_PLEN 0x3f80 + +struct hsdma_desc { + u32 addr0; + u32 flags; + u32 addr1; + u32 unused; +}; + +struct mtk_hsdma_sg { + dma_addr_t src_addr; + dma_addr_t dst_addr; + u32 len; +}; + +struct mtk_hsdma_desc { + struct virt_dma_desc vdesc; + unsigned int num_sgs; + struct mtk_hsdma_sg sg[1]; +}; + +struct mtk_hsdma_chan { + struct virt_dma_chan vchan; + unsigned int id; + dma_addr_t desc_addr; + int tx_idx; + int rx_idx; + struct hsdma_desc *tx_ring; + struct hsdma_desc *rx_ring; + struct mtk_hsdma_desc *desc; + unsigned int next_sg; +}; + +struct mtk_hsdam_engine { + struct dma_device ddev; + struct device_dma_parameters dma_parms; + void __iomem *base; + struct tasklet_struct task; + volatile unsigned long chan_issued; + + struct mtk_hsdma_chan chan[1]; +}; + +static inline struct mtk_hsdam_engine *mtk_hsdma_chan_get_dev( + struct mtk_hsdma_chan *chan) +{ + return container_of(chan->vchan.chan.device, struct mtk_hsdam_engine, + ddev); +} + +static inline struct mtk_hsdma_chan *to_mtk_hsdma_chan(struct dma_chan *c) +{ + return container_of(c, struct mtk_hsdma_chan, vchan.chan); +} + +static inline struct mtk_hsdma_desc *to_mtk_hsdma_desc( + struct virt_dma_desc *vdesc) +{ + return container_of(vdesc, struct mtk_hsdma_desc, vdesc); +} + +static inline u32 mtk_hsdma_read(struct mtk_hsdam_engine *hsdma, u32 reg) +{ + return readl(hsdma->base + reg); +} + +static inline void mtk_hsdma_write(struct mtk_hsdam_engine *hsdma, + unsigned int reg, u32 val) +{ + writel(val, hsdma->base + reg); +} + +static void mtk_hsdma_reset_chan(struct mtk_hsdam_engine *hsdma, + struct mtk_hsdma_chan *chan) +{ + chan->tx_idx = 0; + chan->rx_idx = HSDMA_DESCS_NUM - 1; + + mtk_hsdma_write(hsdma, HSDMA_REG_TX_CTX, chan->tx_idx); + mtk_hsdma_write(hsdma, HSDMA_REG_RX_CRX, chan->rx_idx); + + mtk_hsdma_write(hsdma, HSDMA_REG_RST_CFG, + 0x1 << (chan->id + HSDMA_RST_TX_SHIFT)); + mtk_hsdma_write(hsdma, HSDMA_REG_RST_CFG, + 0x1 << (chan->id + HSDMA_RST_RX_SHIFT)); +} + +static void hsdma_dump_reg(struct mtk_hsdam_engine *hsdma) +{ + dev_dbg(hsdma->ddev.dev, "tbase %08x, tcnt %08x, " + "tctx %08x, tdtx: %08x, rbase %08x, " + "rcnt %08x, rctx %08x, rdtx %08x\n", + mtk_hsdma_read(hsdma, HSDMA_REG_TX_BASE), + mtk_hsdma_read(hsdma, HSDMA_REG_TX_CNT), + mtk_hsdma_read(hsdma, HSDMA_REG_TX_CTX), + mtk_hsdma_read(hsdma, HSDMA_REG_TX_DTX), + mtk_hsdma_read(hsdma, HSDMA_REG_RX_BASE), + mtk_hsdma_read(hsdma, HSDMA_REG_RX_CNT), + mtk_hsdma_read(hsdma, HSDMA_REG_RX_CRX), + mtk_hsdma_read(hsdma, HSDMA_REG_RX_DRX)); + + dev_dbg(hsdma->ddev.dev, "info %08x, glo %08x, delay %08x, intr_stat %08x, intr_mask %08x\n", + mtk_hsdma_read(hsdma, HSDMA_REG_INFO), + mtk_hsdma_read(hsdma, HSDMA_REG_GLO_CFG), + mtk_hsdma_read(hsdma, HSDMA_REG_DELAY_INT), + mtk_hsdma_read(hsdma, HSDMA_REG_INT_STATUS), + mtk_hsdma_read(hsdma, HSDMA_REG_INT_MASK)); +} + +static void hsdma_dump_desc(struct mtk_hsdam_engine *hsdma, + struct mtk_hsdma_chan *chan) +{ + struct hsdma_desc *tx_desc; + struct hsdma_desc *rx_desc; + int i; + + dev_dbg(hsdma->ddev.dev, "tx idx: %d, rx idx: %d\n", + chan->tx_idx, chan->rx_idx); + + for (i = 0; i < HSDMA_DESCS_NUM; i++) { + tx_desc = &chan->tx_ring[i]; + rx_desc = &chan->rx_ring[i]; + + dev_dbg(hsdma->ddev.dev, "%d tx addr0: %08x, flags %08x, " + "tx addr1: %08x, rx addr0 %08x, flags %08x\n", + i, tx_desc->addr0, tx_desc->flags, + tx_desc->addr1, rx_desc->addr0, rx_desc->flags); + } +} + +static void mtk_hsdma_reset(struct mtk_hsdam_engine *hsdma, + struct mtk_hsdma_chan *chan) +{ + int i; + + /* disable dma */ + mtk_hsdma_write(hsdma, HSDMA_REG_GLO_CFG, 0); + + /* disable intr */ + mtk_hsdma_write(hsdma, HSDMA_REG_INT_MASK, 0); + + /* init desc value */ + for (i = 0; i < HSDMA_DESCS_NUM; i++) { + chan->tx_ring[i].addr0 = 0; + chan->tx_ring[i].flags = HSDMA_DESC_LS0 | HSDMA_DESC_DONE; + } + for (i = 0; i < HSDMA_DESCS_NUM; i++) { + chan->rx_ring[i].addr0 = 0; + chan->rx_ring[i].flags = 0; + } + + /* reset */ + mtk_hsdma_reset_chan(hsdma, chan); + + /* enable intr */ + mtk_hsdma_write(hsdma, HSDMA_REG_INT_MASK, HSDMA_INT_RX_Q0); + + /* enable dma */ + mtk_hsdma_write(hsdma, HSDMA_REG_GLO_CFG, HSDMA_GLO_DEFAULT); +} + +static int mtk_hsdma_terminate_all(struct dma_chan *c) +{ + struct mtk_hsdma_chan *chan = to_mtk_hsdma_chan(c); + struct mtk_hsdam_engine *hsdma = mtk_hsdma_chan_get_dev(chan); + unsigned long timeout; + LIST_HEAD(head); + + spin_lock_bh(&chan->vchan.lock); + chan->desc = NULL; + clear_bit(chan->id, &hsdma->chan_issued); + vchan_get_all_descriptors(&chan->vchan, &head); + spin_unlock_bh(&chan->vchan.lock); + + vchan_dma_desc_free_list(&chan->vchan, &head); + + /* wait dma transfer complete */ + timeout = jiffies + msecs_to_jiffies(2000); + while (mtk_hsdma_read(hsdma, HSDMA_REG_GLO_CFG) & + (HSDMA_GLO_RX_BUSY | HSDMA_GLO_TX_BUSY)) { + if (time_after_eq(jiffies, timeout)) { + hsdma_dump_desc(hsdma, chan); + mtk_hsdma_reset(hsdma, chan); + dev_err(hsdma->ddev.dev, "timeout, reset it\n"); + break; + } + cpu_relax(); + } + + return 0; +} + +static int mtk_hsdma_start_transfer(struct mtk_hsdam_engine *hsdma, + struct mtk_hsdma_chan *chan) +{ + dma_addr_t src, dst; + size_t len, tlen; + struct hsdma_desc *tx_desc, *rx_desc; + struct mtk_hsdma_sg *sg; + unsigned int i; + int rx_idx; + + sg = &chan->desc->sg[0]; + len = sg->len; + chan->desc->num_sgs = DIV_ROUND_UP(len, HSDMA_MAX_PLEN); + + /* tx desc */ + src = sg->src_addr; + for (i = 0; i < chan->desc->num_sgs; i++) { + tx_desc = &chan->tx_ring[chan->tx_idx]; + + if (len > HSDMA_MAX_PLEN) + tlen = HSDMA_MAX_PLEN; + else + tlen = len; + + if (i & 0x1) { + tx_desc->addr1 = src; + tx_desc->flags |= HSDMA_DESC_PLEN1(tlen); + } else { + tx_desc->addr0 = src; + tx_desc->flags = HSDMA_DESC_PLEN0(tlen); + + /* update index */ + chan->tx_idx = HSDMA_NEXT_DESC(chan->tx_idx); + } + + src += tlen; + len -= tlen; + } + if (i & 0x1) + tx_desc->flags |= HSDMA_DESC_LS0; + else + tx_desc->flags |= HSDMA_DESC_LS1; + + /* rx desc */ + rx_idx = HSDMA_NEXT_DESC(chan->rx_idx); + len = sg->len; + dst = sg->dst_addr; + for (i = 0; i < chan->desc->num_sgs; i++) { + rx_desc = &chan->rx_ring[rx_idx]; + if (len > HSDMA_MAX_PLEN) + tlen = HSDMA_MAX_PLEN; + else + tlen = len; + + rx_desc->addr0 = dst; + rx_desc->flags = HSDMA_DESC_PLEN0(tlen); + + dst += tlen; + len -= tlen; + + /* update index */ + rx_idx = HSDMA_NEXT_DESC(rx_idx); + } + + /* make sure desc and index all up to date */ + wmb(); + mtk_hsdma_write(hsdma, HSDMA_REG_TX_CTX, chan->tx_idx); + + return 0; +} + +static int gdma_next_desc(struct mtk_hsdma_chan *chan) +{ + struct virt_dma_desc *vdesc; + + vdesc = vchan_next_desc(&chan->vchan); + if (!vdesc) { + chan->desc = NULL; + return 0; + } + chan->desc = to_mtk_hsdma_desc(vdesc); + chan->next_sg = 0; + + return 1; +} + +static void mtk_hsdma_chan_done(struct mtk_hsdam_engine *hsdma, + struct mtk_hsdma_chan *chan) +{ + struct mtk_hsdma_desc *desc; + int chan_issued; + + chan_issued = 0; + spin_lock_bh(&chan->vchan.lock); + desc = chan->desc; + if (likely(desc)) { + if (chan->next_sg == desc->num_sgs) { + list_del(&desc->vdesc.node); + vchan_cookie_complete(&desc->vdesc); + chan_issued = gdma_next_desc(chan); + } + } else { + dev_dbg(hsdma->ddev.dev, "no desc to complete\n"); + } + + if (chan_issued) + set_bit(chan->id, &hsdma->chan_issued); + spin_unlock_bh(&chan->vchan.lock); +} + +static irqreturn_t mtk_hsdma_irq(int irq, void *devid) +{ + struct mtk_hsdam_engine *hsdma = devid; + u32 status; + + status = mtk_hsdma_read(hsdma, HSDMA_REG_INT_STATUS); + if (unlikely(!status)) + return IRQ_NONE; + + if (likely(status & HSDMA_INT_RX_Q0)) + tasklet_schedule(&hsdma->task); + else + dev_dbg(hsdma->ddev.dev, "unhandle irq status %08x\n", status); + /* clean intr bits */ + mtk_hsdma_write(hsdma, HSDMA_REG_INT_STATUS, status); + + return IRQ_HANDLED; +} + +static void mtk_hsdma_issue_pending(struct dma_chan *c) +{ + struct mtk_hsdma_chan *chan = to_mtk_hsdma_chan(c); + struct mtk_hsdam_engine *hsdma = mtk_hsdma_chan_get_dev(chan); + + spin_lock_bh(&chan->vchan.lock); + if (vchan_issue_pending(&chan->vchan) && !chan->desc) { + if (gdma_next_desc(chan)) { + set_bit(chan->id, &hsdma->chan_issued); + tasklet_schedule(&hsdma->task); + } else { + dev_dbg(hsdma->ddev.dev, "no desc to issue\n"); + } + } + spin_unlock_bh(&chan->vchan.lock); +} + +static struct dma_async_tx_descriptor *mtk_hsdma_prep_dma_memcpy( + struct dma_chan *c, dma_addr_t dest, dma_addr_t src, + size_t len, unsigned long flags) +{ + struct mtk_hsdma_chan *chan = to_mtk_hsdma_chan(c); + struct mtk_hsdma_desc *desc; + + if (len <= 0) + return NULL; + + desc = kzalloc(sizeof(*desc), GFP_ATOMIC); + if (!desc) { + dev_err(c->device->dev, "alloc memcpy decs error\n"); + return NULL; + } + + desc->sg[0].src_addr = src; + desc->sg[0].dst_addr = dest; + desc->sg[0].len = len; + + return vchan_tx_prep(&chan->vchan, &desc->vdesc, flags); +} + +static enum dma_status mtk_hsdma_tx_status(struct dma_chan *c, + dma_cookie_t cookie, + struct dma_tx_state *state) +{ + return dma_cookie_status(c, cookie, state); +} + +static void mtk_hsdma_free_chan_resources(struct dma_chan *c) +{ + vchan_free_chan_resources(to_virt_chan(c)); +} + +static void mtk_hsdma_desc_free(struct virt_dma_desc *vdesc) +{ + kfree(container_of(vdesc, struct mtk_hsdma_desc, vdesc)); +} + +static void mtk_hsdma_tx(struct mtk_hsdam_engine *hsdma) +{ + struct mtk_hsdma_chan *chan; + + if (test_and_clear_bit(0, &hsdma->chan_issued)) { + chan = &hsdma->chan[0]; + if (chan->desc) + mtk_hsdma_start_transfer(hsdma, chan); + else + dev_dbg(hsdma->ddev.dev, "chan 0 no desc to issue\n"); + } +} + +static void mtk_hsdma_rx(struct mtk_hsdam_engine *hsdma) +{ + struct mtk_hsdma_chan *chan; + int next_idx, drx_idx, cnt; + + chan = &hsdma->chan[0]; + next_idx = HSDMA_NEXT_DESC(chan->rx_idx); + drx_idx = mtk_hsdma_read(hsdma, HSDMA_REG_RX_DRX); + + cnt = (drx_idx - next_idx) & HSDMA_DESCS_MASK; + if (!cnt) + return; + + chan->next_sg += cnt; + chan->rx_idx = (chan->rx_idx + cnt) & HSDMA_DESCS_MASK; + + /* update rx crx */ + wmb(); + mtk_hsdma_write(hsdma, HSDMA_REG_RX_CRX, chan->rx_idx); + + mtk_hsdma_chan_done(hsdma, chan); +} + +static void mtk_hsdma_tasklet(unsigned long arg) +{ + struct mtk_hsdam_engine *hsdma = (struct mtk_hsdam_engine *)arg; + + mtk_hsdma_rx(hsdma); + mtk_hsdma_tx(hsdma); +} + +static int mtk_hsdam_alloc_desc(struct mtk_hsdam_engine *hsdma, + struct mtk_hsdma_chan *chan) +{ + int i; + + chan->tx_ring = dma_alloc_coherent(hsdma->ddev.dev, + 2 * HSDMA_DESCS_NUM * + sizeof(*chan->tx_ring), + &chan->desc_addr, GFP_ATOMIC | __GFP_ZERO); + if (!chan->tx_ring) + goto no_mem; + + chan->rx_ring = &chan->tx_ring[HSDMA_DESCS_NUM]; + + /* init tx ring value */ + for (i = 0; i < HSDMA_DESCS_NUM; i++) + chan->tx_ring[i].flags = HSDMA_DESC_LS0 | HSDMA_DESC_DONE; + + return 0; +no_mem: + return -ENOMEM; +} + +static void mtk_hsdam_free_desc(struct mtk_hsdam_engine *hsdma, + struct mtk_hsdma_chan *chan) +{ + if (chan->tx_ring) { + dma_free_coherent(hsdma->ddev.dev, + 2 * HSDMA_DESCS_NUM * sizeof(*chan->tx_ring), + chan->tx_ring, chan->desc_addr); + chan->tx_ring = NULL; + chan->rx_ring = NULL; + } +} + +static int mtk_hsdma_init(struct mtk_hsdam_engine *hsdma) +{ + struct mtk_hsdma_chan *chan; + int ret; + u32 reg; + + /* init desc */ + chan = &hsdma->chan[0]; + ret = mtk_hsdam_alloc_desc(hsdma, chan); + if (ret) + return ret; + + /* tx */ + mtk_hsdma_write(hsdma, HSDMA_REG_TX_BASE, chan->desc_addr); + mtk_hsdma_write(hsdma, HSDMA_REG_TX_CNT, HSDMA_DESCS_NUM); + /* rx */ + mtk_hsdma_write(hsdma, HSDMA_REG_RX_BASE, chan->desc_addr + + (sizeof(struct hsdma_desc) * HSDMA_DESCS_NUM)); + mtk_hsdma_write(hsdma, HSDMA_REG_RX_CNT, HSDMA_DESCS_NUM); + /* reset */ + mtk_hsdma_reset_chan(hsdma, chan); + + /* enable rx intr */ + mtk_hsdma_write(hsdma, HSDMA_REG_INT_MASK, HSDMA_INT_RX_Q0); + + /* enable dma */ + mtk_hsdma_write(hsdma, HSDMA_REG_GLO_CFG, HSDMA_GLO_DEFAULT); + + /* hardware info */ + reg = mtk_hsdma_read(hsdma, HSDMA_REG_INFO); + dev_info(hsdma->ddev.dev, "rx: %d, tx: %d\n", + (reg >> HSDMA_INFO_RX_SHIFT) & HSDMA_INFO_RX_MASK, + (reg >> HSDMA_INFO_TX_SHIFT) & HSDMA_INFO_TX_MASK); + + hsdma_dump_reg(hsdma); + + return ret; +} + +static void mtk_hsdma_uninit(struct mtk_hsdam_engine *hsdma) +{ + struct mtk_hsdma_chan *chan; + + /* disable dma */ + mtk_hsdma_write(hsdma, HSDMA_REG_GLO_CFG, 0); + + /* disable intr */ + mtk_hsdma_write(hsdma, HSDMA_REG_INT_MASK, 0); + + /* free desc */ + chan = &hsdma->chan[0]; + mtk_hsdam_free_desc(hsdma, chan); + + /* tx */ + mtk_hsdma_write(hsdma, HSDMA_REG_TX_BASE, 0); + mtk_hsdma_write(hsdma, HSDMA_REG_TX_CNT, 0); + /* rx */ + mtk_hsdma_write(hsdma, HSDMA_REG_RX_BASE, 0); + mtk_hsdma_write(hsdma, HSDMA_REG_RX_CNT, 0); + /* reset */ + mtk_hsdma_reset_chan(hsdma, chan); +} + +static const struct of_device_id mtk_hsdma_of_match[] = { + { .compatible = "mediatek,mt7621-hsdma" }, + { }, +}; + +static int mtk_hsdma_probe(struct platform_device *pdev) +{ + const struct of_device_id *match; + struct mtk_hsdma_chan *chan; + struct mtk_hsdam_engine *hsdma; + struct dma_device *dd; + int ret; + int irq; + void __iomem *base; + + ret = dma_set_mask_and_coherent(&pdev->dev, DMA_BIT_MASK(32)); + if (ret) + return ret; + + match = of_match_device(mtk_hsdma_of_match, &pdev->dev); + if (!match) + return -EINVAL; + + hsdma = devm_kzalloc(&pdev->dev, sizeof(*hsdma), GFP_KERNEL); + if (!hsdma) + return -EINVAL; + + base = devm_platform_ioremap_resource(pdev, 0); + if (IS_ERR(base)) + return PTR_ERR(base); + hsdma->base = base + HSDMA_BASE_OFFSET; + tasklet_init(&hsdma->task, mtk_hsdma_tasklet, (unsigned long)hsdma); + + irq = platform_get_irq(pdev, 0); + if (irq < 0) + return -EINVAL; + ret = devm_request_irq(&pdev->dev, irq, mtk_hsdma_irq, + 0, dev_name(&pdev->dev), hsdma); + if (ret) { + dev_err(&pdev->dev, "failed to request irq\n"); + return ret; + } + + device_reset(&pdev->dev); + + dd = &hsdma->ddev; + dma_cap_set(DMA_MEMCPY, dd->cap_mask); + dd->copy_align = HSDMA_ALIGN_SIZE; + dd->device_free_chan_resources = mtk_hsdma_free_chan_resources; + dd->device_prep_dma_memcpy = mtk_hsdma_prep_dma_memcpy; + dd->device_terminate_all = mtk_hsdma_terminate_all; + dd->device_tx_status = mtk_hsdma_tx_status; + dd->device_issue_pending = mtk_hsdma_issue_pending; + dd->dev = &pdev->dev; + dd->dev->dma_parms = &hsdma->dma_parms; + dma_set_max_seg_size(dd->dev, HSDMA_MAX_PLEN); + INIT_LIST_HEAD(&dd->channels); + + chan = &hsdma->chan[0]; + chan->id = 0; + chan->vchan.desc_free = mtk_hsdma_desc_free; + vchan_init(&chan->vchan, dd); + + /* init hardware */ + ret = mtk_hsdma_init(hsdma); + if (ret) { + dev_err(&pdev->dev, "failed to alloc ring descs\n"); + return ret; + } + + ret = dma_async_device_register(dd); + if (ret) { + dev_err(&pdev->dev, "failed to register dma device\n"); + goto err_uninit_hsdma; + } + + ret = of_dma_controller_register(pdev->dev.of_node, + of_dma_xlate_by_chan_id, hsdma); + if (ret) { + dev_err(&pdev->dev, "failed to register of dma controller\n"); + goto err_unregister; + } + + platform_set_drvdata(pdev, hsdma); + + return 0; + +err_unregister: + dma_async_device_unregister(dd); +err_uninit_hsdma: + mtk_hsdma_uninit(hsdma); + return ret; +} + +static int mtk_hsdma_remove(struct platform_device *pdev) +{ + struct mtk_hsdam_engine *hsdma = platform_get_drvdata(pdev); + + mtk_hsdma_uninit(hsdma); + + of_dma_controller_free(pdev->dev.of_node); + dma_async_device_unregister(&hsdma->ddev); + + return 0; +} + +static struct platform_driver mtk_hsdma_driver = { + .probe = mtk_hsdma_probe, + .remove = mtk_hsdma_remove, + .driver = { + .name = KBUILD_MODNAME, + .of_match_table = mtk_hsdma_of_match, + }, +}; +module_platform_driver(mtk_hsdma_driver); + +MODULE_AUTHOR("Michael Lee "); +MODULE_DESCRIPTION("MTK HSDMA driver"); +MODULE_LICENSE("GPL v2"); --- linux-azure-5.8-5.8.0.orig/drivers/staging/mt7621-pci/pci-mt7621.c +++ linux-azure-5.8-5.8.0/drivers/staging/mt7621-pci/pci-mt7621.c @@ -653,16 +653,11 @@ return 0; } -static int mt7621_pcie_request_resources(struct mt7621_pcie *pcie, - struct list_head *res) +static void mt7621_pcie_add_resources(struct mt7621_pcie *pcie, + struct list_head *res) { - struct device *dev = pcie->dev; - pci_add_resource_offset(res, &pcie->io, pcie->offset.io); pci_add_resource_offset(res, &pcie->mem, pcie->offset.mem); - pci_add_resource(res, &pcie->busn); - - return devm_request_pci_bus_resources(dev, res); } static int mt7621_pcie_register_host(struct pci_host_bridge *host, @@ -738,11 +733,7 @@ setup_cm_memory_region(pcie); - err = mt7621_pcie_request_resources(pcie, &res); - if (err) { - dev_err(dev, "Error requesting resources\n"); - return err; - } + mt7621_pcie_add_resources(pcie, &res); err = mt7621_pcie_register_host(bridge, &res); if (err) { --- linux-azure-5.8-5.8.0.orig/drivers/staging/octeon/ethernet-mdio.c +++ linux-azure-5.8-5.8.0/drivers/staging/octeon/ethernet-mdio.c @@ -147,12 +147,6 @@ phy_node = of_parse_phandle(priv->of_node, "phy-handle", 0); if (!phy_node && of_phy_is_fixed_link(priv->of_node)) { - int rc; - - rc = of_phy_register_fixed_link(priv->of_node); - if (rc) - return rc; - phy_node = of_node_get(priv->of_node); } if (!phy_node) --- linux-azure-5.8-5.8.0.orig/drivers/staging/octeon/ethernet-rx.c +++ linux-azure-5.8-5.8.0/drivers/staging/octeon/ethernet-rx.c @@ -69,15 +69,17 @@ else port = work->word1.cn38xx.ipprt; - if ((work->word2.snoip.err_code == 10) && (work->word1.len <= 64)) { + if ((work->word2.snoip.err_code == 10) && (work->word1.len <= 64)) /* * Ignore length errors on min size packets. Some * equipment incorrectly pads packets to 64+4FCS * instead of 60+4FCS. Note these packets still get * counted as frame errors. */ - } else if (work->word2.snoip.err_code == 5 || - work->word2.snoip.err_code == 7) { + return 0; + + if (work->word2.snoip.err_code == 5 || + work->word2.snoip.err_code == 7) { /* * We received a packet with either an alignment error * or a FCS error. This may be signalling that we are @@ -108,7 +110,10 @@ /* Port received 0xd5 preamble */ work->packet_ptr.s.addr += i + 1; work->word1.len -= i + 5; - } else if ((*ptr & 0xf) == 0xd) { + return 0; + } + + if ((*ptr & 0xf) == 0xd) { /* Port received 0xd preamble */ work->packet_ptr.s.addr += i; work->word1.len -= i + 4; @@ -118,21 +123,20 @@ ((*(ptr + 1) & 0xf) << 4); ptr++; } - } else { - printk_ratelimited("Port %d unknown preamble, packet dropped\n", - port); - cvm_oct_free_work(work); - return 1; + return 0; } + + printk_ratelimited("Port %d unknown preamble, packet dropped\n", + port); + cvm_oct_free_work(work); + return 1; } - } else { - printk_ratelimited("Port %d receive error code %d, packet dropped\n", - port, work->word2.snoip.err_code); - cvm_oct_free_work(work); - return 1; } - return 0; + printk_ratelimited("Port %d receive error code %d, packet dropped\n", + port, work->word2.snoip.err_code); + cvm_oct_free_work(work); + return 1; } static void copy_segments_to_skb(struct cvmx_wqe *work, struct sk_buff *skb) --- linux-azure-5.8-5.8.0.orig/drivers/staging/octeon/ethernet.c +++ linux-azure-5.8-5.8.0/drivers/staging/octeon/ethernet.c @@ -13,6 +13,7 @@ #include #include #include +#include #include #include #include @@ -894,6 +895,14 @@ break; } + if (priv->of_node && of_phy_is_fixed_link(priv->of_node)) { + if (of_phy_register_fixed_link(priv->of_node)) { + netdev_err(dev, "Failed to register fixed link for interface %d, port %d\n", + interface, priv->port); + dev->netdev_ops = NULL; + } + } + if (!dev->netdev_ops) { free_netdev(dev); } else if (register_netdev(dev) < 0) { --- linux-azure-5.8-5.8.0.orig/drivers/staging/ralink-gdma/Kconfig +++ linux-azure-5.8-5.8.0/drivers/staging/ralink-gdma/Kconfig @@ -2,6 +2,7 @@ config DMA_RALINK tristate "RALINK DMA support" depends on RALINK && !SOC_RT288X + depends on DMADEVICES select DMA_ENGINE select DMA_VIRTUAL_CHANNELS --- linux-azure-5.8-5.8.0.orig/drivers/staging/rtl8188eu/core/rtw_mlme.c +++ linux-azure-5.8-5.8.0/drivers/staging/rtl8188eu/core/rtw_mlme.c @@ -1729,9 +1729,11 @@ if ((ndisauthmode == Ndis802_11AuthModeWPA) || (ndisauthmode == Ndis802_11AuthModeWPAPSK)) authmode = _WPA_IE_ID_; - if ((ndisauthmode == Ndis802_11AuthModeWPA2) || + else if ((ndisauthmode == Ndis802_11AuthModeWPA2) || (ndisauthmode == Ndis802_11AuthModeWPA2PSK)) authmode = _WPA2_IE_ID_; + else + authmode = 0x0; if (check_fwstate(pmlmepriv, WIFI_UNDER_WPS)) { memcpy(out_ie + ielength, psecuritypriv->wps_ie, psecuritypriv->wps_ie_len); --- linux-azure-5.8-5.8.0.orig/drivers/staging/rtl8188eu/os_dep/usb_intf.c +++ linux-azure-5.8-5.8.0/drivers/staging/rtl8188eu/os_dep/usb_intf.c @@ -41,6 +41,7 @@ {USB_DEVICE(0x2357, 0x0111)}, /* TP-Link TL-WN727N v5.21 */ {USB_DEVICE(0x2C4E, 0x0102)}, /* MERCUSYS MW150US v2 */ {USB_DEVICE(0x0df6, 0x0076)}, /* Sitecom N150 v2 */ + {USB_DEVICE(0x7392, 0xb811)}, /* Edimax EW-7811UN V2 */ {USB_DEVICE(USB_VENDER_ID_REALTEK, 0xffef)}, /* Rosewill RNX-N150NUB */ {} /* Terminating entry */ }; --- linux-azure-5.8-5.8.0.orig/drivers/staging/rtl8192u/ieee80211/ieee80211_rx.c +++ linux-azure-5.8-5.8.0/drivers/staging/rtl8192u/ieee80211/ieee80211_rx.c @@ -597,7 +597,7 @@ prxbIndicateArray = kmalloc_array(REORDER_WIN_SIZE, sizeof(struct ieee80211_rxb *), - GFP_KERNEL); + GFP_ATOMIC); if (!prxbIndicateArray) return; --- linux-azure-5.8-5.8.0.orig/drivers/staging/rtl8192u/r8192U_core.c +++ linux-azure-5.8-5.8.0/drivers/staging/rtl8192u/r8192U_core.c @@ -2374,7 +2374,7 @@ ret = eprom_read(dev, (EEPROM_TX_PW_INDEX_CCK >> 1)); if (ret < 0) return ret; - priv->EEPROMTxPowerLevelCCK = ((u16)ret & 0xff) >> 8; + priv->EEPROMTxPowerLevelCCK = ((u16)ret & 0xff00) >> 8; } else priv->EEPROMTxPowerLevelCCK = 0x10; RT_TRACE(COMP_EPROM, "CCK Tx Power Levl: 0x%02x\n", priv->EEPROMTxPowerLevelCCK); --- linux-azure-5.8-5.8.0.orig/drivers/staging/rtl8712/hal_init.c +++ linux-azure-5.8-5.8.0/drivers/staging/rtl8712/hal_init.c @@ -33,7 +33,6 @@ { struct _adapter *adapter = context; - complete(&adapter->rtl8712_fw_ready); if (!firmware) { struct usb_device *udev = adapter->dvobjpriv.pusbdev; struct usb_interface *usb_intf = adapter->pusb_intf; @@ -41,11 +40,13 @@ dev_err(&udev->dev, "r8712u: Firmware request failed\n"); usb_put_dev(udev); usb_set_intfdata(usb_intf, NULL); + complete(&adapter->rtl8712_fw_ready); return; } adapter->fw = firmware; /* firmware available - start netdev */ register_netdev(adapter->pnetdev); + complete(&adapter->rtl8712_fw_ready); } static const char firmware_file[] = "rtlwifi/rtl8712u.bin"; --- linux-azure-5.8-5.8.0.orig/drivers/staging/rtl8712/usb_intf.c +++ linux-azure-5.8-5.8.0/drivers/staging/rtl8712/usb_intf.c @@ -595,13 +595,17 @@ if (pnetdev) { struct _adapter *padapter = netdev_priv(pnetdev); - usb_set_intfdata(pusb_intf, NULL); - release_firmware(padapter->fw); /* never exit with a firmware callback pending */ wait_for_completion(&padapter->rtl8712_fw_ready); + pnetdev = usb_get_intfdata(pusb_intf); + usb_set_intfdata(pusb_intf, NULL); + if (!pnetdev) + goto firmware_load_fail; + release_firmware(padapter->fw); if (drvpriv.drv_registered) padapter->surprise_removed = true; - unregister_netdev(pnetdev); /* will call netdev_close() */ + if (pnetdev->reg_state != NETREG_UNINITIALIZED) + unregister_netdev(pnetdev); /* will call netdev_close() */ flush_scheduled_work(); udelay(1); /* Stop driver mlme relation timer */ @@ -614,6 +618,7 @@ */ usb_put_dev(udev); } +firmware_load_fail: /* If we didn't unplug usb dongle and remove/insert module, driver * fails on sitesurvey for the first time when device is up. * Reset usb port for sitesurvey fail issue. --- linux-azure-5.8-5.8.0.orig/drivers/staging/rtl8723bs/os_dep/sdio_intf.c +++ linux-azure-5.8-5.8.0/drivers/staging/rtl8723bs/os_dep/sdio_intf.c @@ -21,6 +21,7 @@ { SDIO_DEVICE(0x024c, 0x0525), }, { SDIO_DEVICE(0x024c, 0x0623), }, { SDIO_DEVICE(0x024c, 0x0626), }, + { SDIO_DEVICE(0x024c, 0x0627), }, { SDIO_DEVICE(0x024c, 0xb723), }, { /* end: all zeroes */ }, }; --- linux-azure-5.8-5.8.0.orig/drivers/staging/rtl8723bs/os_dep/wifi_regd.c +++ linux-azure-5.8-5.8.0/drivers/staging/rtl8723bs/os_dep/wifi_regd.c @@ -34,7 +34,7 @@ NL80211_RRF_PASSIVE_SCAN) static const struct ieee80211_regdomain rtw_regdom_rd = { - .n_reg_rules = 3, + .n_reg_rules = 2, .alpha2 = "99", .reg_rules = { RTW_2GHZ_CH01_11, --- linux-azure-5.8-5.8.0.orig/drivers/staging/rts5208/rtsx.c +++ linux-azure-5.8-5.8.0/drivers/staging/rts5208/rtsx.c @@ -972,6 +972,7 @@ kfree(dev->chip); chip_alloc_fail: dev_err(&pci->dev, "%s failed\n", __func__); + scsi_host_put(host); scsi_host_alloc_fail: pci_release_regions(pci); return err; --- linux-azure-5.8-5.8.0.orig/drivers/staging/signature-inclusion +++ linux-azure-5.8-5.8.0/drivers/staging/signature-inclusion @@ -0,0 +1,20 @@ +# +# This file lists the staging drivers that are safe for signing +# and loading in a secure boot environment with signed module enforcement. +# +exfat.ko +rtl8192c-common.ko +rtl8192ce.ko +rtl8192cu.ko +rtl8192de.ko +rtl8192ee.ko +rtl8192se.ko +r8188eu.ko +r8192e_pci.ko +r8192u_usb.ko +r8712u.ko +r8822be.ko +rtllib_crypt_ccmp.ko +rtllib_crypt_tkip.ko +rtllib_crypt_wep.ko +rtllib.ko --- linux-azure-5.8-5.8.0.orig/drivers/staging/speakup/main.c +++ linux-azure-5.8-5.8.0/drivers/staging/speakup/main.c @@ -357,7 +357,6 @@ mark_cut_flag = 0; synth_printf("%s\n", spk_msg_get(MSG_CUT)); - speakup_clear_selection(); ret = speakup_set_selection(tty); switch (ret) { --- linux-azure-5.8-5.8.0.orig/drivers/staging/speakup/selection.c +++ linux-azure-5.8-5.8.0/drivers/staging/speakup/selection.c @@ -22,13 +22,6 @@ struct tty_struct *tty; }; -void speakup_clear_selection(void) -{ - console_lock(); - clear_selection(); - console_unlock(); -} - static void __speakup_set_selection(struct work_struct *work) { struct speakup_selection_work *ssw = @@ -51,6 +44,10 @@ goto unref; } + console_lock(); + clear_selection(); + console_unlock(); + set_selection_kernel(&sel, tty); unref: --- linux-azure-5.8-5.8.0.orig/drivers/staging/speakup/speakup.h +++ linux-azure-5.8-5.8.0/drivers/staging/speakup/speakup.h @@ -70,7 +70,6 @@ void speakup_start_ttys(void); void synth_buffer_add(u16 ch); void synth_buffer_clear(void); -void speakup_clear_selection(void); int speakup_set_selection(struct tty_struct *tty); void speakup_cancel_selection(void); int speakup_paste_selection(struct tty_struct *tty); --- linux-azure-5.8-5.8.0.orig/drivers/staging/speakup/speakup_dectlk.c +++ linux-azure-5.8-5.8.0/drivers/staging/speakup/speakup_dectlk.c @@ -37,7 +37,7 @@ static int in_escape; static int is_flushing; -static spinlock_t flush_lock; +static DEFINE_SPINLOCK(flush_lock); static DECLARE_WAIT_QUEUE_HEAD(flush); static struct var_t vars[] = { --- linux-azure-5.8-5.8.0.orig/drivers/staging/speakup/spk_ttyio.c +++ linux-azure-5.8-5.8.0/drivers/staging/speakup/spk_ttyio.c @@ -47,9 +47,12 @@ { struct spk_ldisc_data *ldisc_data; + if (tty != speakup_tty) + /* Somebody tried to use this line discipline outside speakup */ + return -ENODEV; + if (!tty->ops->write) return -EOPNOTSUPP; - speakup_tty = tty; ldisc_data = kmalloc(sizeof(*ldisc_data), GFP_KERNEL); if (!ldisc_data) @@ -57,7 +60,7 @@ init_completion(&ldisc_data->completion); ldisc_data->buf_free = true; - speakup_tty->disc_data = ldisc_data; + tty->disc_data = ldisc_data; return 0; } @@ -179,9 +182,25 @@ tty_unlock(tty); + mutex_lock(&speakup_tty_mutex); + speakup_tty = tty; ret = tty_set_ldisc(tty, N_SPEAKUP); if (ret) - pr_err("speakup: Failed to set N_SPEAKUP on tty\n"); + speakup_tty = NULL; + mutex_unlock(&speakup_tty_mutex); + + if (!ret) + /* Success */ + return 0; + + pr_err("speakup: Failed to set N_SPEAKUP on tty\n"); + + tty_lock(tty); + if (tty->ops->close) + tty->ops->close(tty, NULL); + tty_unlock(tty); + + tty_kclose(tty); return ret; } @@ -291,11 +310,13 @@ struct spk_ldisc_data *ldisc_data = speakup_tty->disc_data; char rv; - if (wait_for_completion_timeout(&ldisc_data->completion, + if (!timeout) { + if (!try_wait_for_completion(&ldisc_data->completion)) + return 0xff; + } else if (wait_for_completion_timeout(&ldisc_data->completion, usecs_to_jiffies(timeout)) == 0) { - if (timeout) - pr_warn("spk_ttyio: timeout (%d) while waiting for input\n", - timeout); + pr_warn("spk_ttyio: timeout (%d) while waiting for input\n", + timeout); return 0xff; } --- linux-azure-5.8-5.8.0.orig/drivers/staging/speakup/spk_types.h +++ linux-azure-5.8-5.8.0/drivers/staging/speakup/spk_types.h @@ -32,6 +32,10 @@ E_NEW_DEFAULT, }; +/* + * Note: add new members at the end, speakupmap.h depends on the values of the + * enum starting from SPELL_DELAY (see inc_dec_var) + */ enum var_id_t { VERSION = 0, SYNTH, SILENT, SYNTH_DIRECT, KEYMAP, CHARS, @@ -42,9 +46,9 @@ SAY_CONTROL, SAY_WORD_CTL, NO_INTERRUPT, KEY_ECHO, SPELL_DELAY, PUNC_LEVEL, READING_PUNC, ATTRIB_BLEEP, BLEEPS, - RATE, PITCH, INFLECTION, VOL, TONE, PUNCT, VOICE, FREQUENCY, LANG, + RATE, PITCH, VOL, TONE, PUNCT, VOICE, FREQUENCY, LANG, DIRECT, PAUSE, - CAPS_START, CAPS_STOP, CHARTAB, + CAPS_START, CAPS_STOP, CHARTAB, INFLECTION, MAXVARS }; --- linux-azure-5.8-5.8.0.orig/drivers/staging/vc04_services/interface/vchiq_arm/vchiq_arm.c +++ linux-azure-5.8-5.8.0/drivers/staging/vc04_services/interface/vchiq_arm/vchiq_arm.c @@ -2805,6 +2805,7 @@ static int vchiq_remove(struct platform_device *pdev) { + platform_device_unregister(bcm2835_audio); platform_device_unregister(bcm2835_camera); vchiq_debugfs_deinit(); device_destroy(vchiq_class, vchiq_devid); --- linux-azure-5.8-5.8.0.orig/drivers/staging/wfx/data_rx.c +++ linux-azure-5.8-5.8.0/drivers/staging/wfx/data_rx.c @@ -80,7 +80,7 @@ goto drop; if (arg->status == HIF_STATUS_RX_FAIL_MIC) - hdr->flag |= RX_FLAG_MMIC_ERROR; + hdr->flag |= RX_FLAG_MMIC_ERROR | RX_FLAG_IV_STRIPPED; else if (arg->status) goto drop; --- linux-azure-5.8-5.8.0.orig/drivers/staging/wfx/sta.c +++ linux-azure-5.8-5.8.0/drivers/staging/wfx/sta.c @@ -773,17 +773,6 @@ return -EOPNOTSUPP; } - for (i = 0; i < ARRAY_SIZE(wdev->vif); i++) { - if (!wdev->vif[i]) { - wdev->vif[i] = vif; - wvif->id = i; - break; - } - } - if (i == ARRAY_SIZE(wdev->vif)) { - mutex_unlock(&wdev->conf_mutex); - return -EOPNOTSUPP; - } // FIXME: prefer use of container_of() to get vif wvif->vif = vif; wvif->wdev = wdev; @@ -801,11 +790,21 @@ init_completion(&wvif->scan_complete); INIT_WORK(&wvif->scan_work, wfx_hw_scan_work); - mutex_unlock(&wdev->conf_mutex); + wfx_tx_policy_init(wvif); + + for (i = 0; i < ARRAY_SIZE(wdev->vif); i++) { + if (!wdev->vif[i]) { + wdev->vif[i] = vif; + wvif->id = i; + break; + } + } + WARN(i == ARRAY_SIZE(wdev->vif), "try to instantiate more vif than supported"); hif_set_macaddr(wvif, vif->addr); - wfx_tx_policy_init(wvif); + mutex_unlock(&wdev->conf_mutex); + wvif = NULL; while ((wvif = wvif_iterate(wdev, wvif)) != NULL) { // Combo mode does not support Block Acks. We can re-enable them @@ -836,6 +835,7 @@ wvif->vif = NULL; mutex_unlock(&wdev->conf_mutex); + wvif = NULL; while ((wvif = wvif_iterate(wdev, wvif)) != NULL) { // Combo mode does not support Block Acks. We can re-enable them --- linux-azure-5.8-5.8.0.orig/drivers/staging/wilc1000/mon.c +++ linux-azure-5.8-5.8.0/drivers/staging/wilc1000/mon.c @@ -236,11 +236,10 @@ if (register_netdevice(wl->monitor_dev)) { netdev_err(real_dev, "register_netdevice failed\n"); + free_netdev(wl->monitor_dev); return NULL; } priv = netdev_priv(wl->monitor_dev); - if (!priv) - return NULL; priv->real_ndev = real_dev; --- linux-azure-5.8-5.8.0.orig/drivers/staging/wilc1000/sdio.c +++ linux-azure-5.8-5.8.0/drivers/staging/wilc1000/sdio.c @@ -151,9 +151,10 @@ wilc->dev = &func->dev; wilc->rtc_clk = devm_clk_get(&func->card->dev, "rtc"); - if (PTR_ERR_OR_ZERO(wilc->rtc_clk) == -EPROBE_DEFER) + if (PTR_ERR_OR_ZERO(wilc->rtc_clk) == -EPROBE_DEFER) { + kfree(sdio_priv); return -EPROBE_DEFER; - else if (!IS_ERR(wilc->rtc_clk)) + } else if (!IS_ERR(wilc->rtc_clk)) clk_prepare_enable(wilc->rtc_clk); dev_info(&func->dev, "Driver Initializing success\n"); --- linux-azure-5.8-5.8.0.orig/drivers/staging/wilc1000/spi.c +++ linux-azure-5.8-5.8.0/drivers/staging/wilc1000/spi.c @@ -112,9 +112,10 @@ wilc->dev_irq_num = spi->irq; wilc->rtc_clk = devm_clk_get(&spi->dev, "rtc_clk"); - if (PTR_ERR_OR_ZERO(wilc->rtc_clk) == -EPROBE_DEFER) + if (PTR_ERR_OR_ZERO(wilc->rtc_clk) == -EPROBE_DEFER) { + kfree(spi_priv); return -EPROBE_DEFER; - else if (!IS_ERR(wilc->rtc_clk)) + } else if (!IS_ERR(wilc->rtc_clk)) clk_prepare_enable(wilc->rtc_clk); return 0; --- linux-azure-5.8-5.8.0.orig/drivers/staging/wlan-ng/hfa384x_usb.c +++ linux-azure-5.8-5.8.0/drivers/staging/wlan-ng/hfa384x_usb.c @@ -524,13 +524,8 @@ */ void hfa384x_create(struct hfa384x *hw, struct usb_device *usb) { - memset(hw, 0, sizeof(*hw)); hw->usb = usb; - /* set up the endpoints */ - hw->endp_in = usb_rcvbulkpipe(usb, 1); - hw->endp_out = usb_sndbulkpipe(usb, 2); - /* Set up the waitq */ init_waitqueue_head(&hw->cmdq); --- linux-azure-5.8-5.8.0.orig/drivers/staging/wlan-ng/prism2usb.c +++ linux-azure-5.8-5.8.0/drivers/staging/wlan-ng/prism2usb.c @@ -61,23 +61,14 @@ const struct usb_device_id *id) { struct usb_device *dev; - const struct usb_endpoint_descriptor *epd; - const struct usb_host_interface *iface_desc = interface->cur_altsetting; + struct usb_endpoint_descriptor *bulk_in, *bulk_out; + struct usb_host_interface *iface_desc = interface->cur_altsetting; struct wlandevice *wlandev = NULL; struct hfa384x *hw = NULL; int result = 0; - if (iface_desc->desc.bNumEndpoints != 2) { - result = -ENODEV; - goto failed; - } - - result = -EINVAL; - epd = &iface_desc->endpoint[1].desc; - if (!usb_endpoint_is_bulk_in(epd)) - goto failed; - epd = &iface_desc->endpoint[2].desc; - if (!usb_endpoint_is_bulk_out(epd)) + result = usb_find_common_endpoints(iface_desc, &bulk_in, &bulk_out, NULL, NULL); + if (result) goto failed; dev = interface_to_usbdev(interface); @@ -96,6 +87,8 @@ } /* Initialize the hw data */ + hw->endp_in = usb_rcvbulkpipe(dev, bulk_in->bEndpointAddress); + hw->endp_out = usb_sndbulkpipe(dev, bulk_out->bEndpointAddress); hfa384x_create(hw, dev); hw->wlandev = wlandev; --- linux-azure-5.8-5.8.0.orig/drivers/target/iscsi/cxgbit/cxgbit_target.c +++ linux-azure-5.8-5.8.0/drivers/target/iscsi/cxgbit/cxgbit_target.c @@ -86,8 +86,7 @@ if (likely(cxgbit_skcb_flags(skb) & SKCBF_TX_ISO)) length += sizeof(struct cpl_tx_data_iso); -#define MAX_IMM_TX_PKT_LEN 256 - return length <= MAX_IMM_TX_PKT_LEN; + return length <= MAX_IMM_OFLD_TX_DATA_WR_LEN; } /* --- linux-azure-5.8-5.8.0.orig/drivers/target/iscsi/iscsi_target.c +++ linux-azure-5.8-5.8.0/drivers/target/iscsi/iscsi_target.c @@ -483,8 +483,7 @@ void iscsit_aborted_task(struct iscsi_conn *conn, struct iscsi_cmd *cmd) { spin_lock_bh(&conn->cmd_lock); - if (!list_empty(&cmd->i_conn_node) && - !(cmd->se_cmd.transport_state & CMD_T_FABRIC_STOP)) + if (!list_empty(&cmd->i_conn_node)) list_del_init(&cmd->i_conn_node); spin_unlock_bh(&conn->cmd_lock); @@ -1389,14 +1388,27 @@ sg = cmd->first_data_sg; page_off = cmd->first_data_sg_off; + if (data_length && page_off) { + struct scatterlist first_sg; + u32 len = min_t(u32, data_length, sg->length - page_off); + + sg_init_table(&first_sg, 1); + sg_set_page(&first_sg, sg_page(sg), len, sg->offset + page_off); + + ahash_request_set_crypt(hash, &first_sg, NULL, len); + crypto_ahash_update(hash); + + data_length -= len; + sg = sg_next(sg); + } + while (data_length) { - u32 cur_len = min_t(u32, data_length, (sg->length - page_off)); + u32 cur_len = min_t(u32, data_length, sg->length); ahash_request_set_crypt(hash, sg, NULL, cur_len); crypto_ahash_update(hash); data_length -= cur_len; - page_off = 0; /* iscsit_map_iovec has already checked for invalid sg pointers */ sg = sg_next(sg); } @@ -4070,12 +4082,22 @@ spin_lock_bh(&conn->cmd_lock); list_splice_init(&conn->conn_cmd_list, &tmp_list); - list_for_each_entry(cmd, &tmp_list, i_conn_node) { + list_for_each_entry_safe(cmd, cmd_tmp, &tmp_list, i_conn_node) { struct se_cmd *se_cmd = &cmd->se_cmd; if (se_cmd->se_tfo != NULL) { spin_lock_irq(&se_cmd->t_state_lock); - se_cmd->transport_state |= CMD_T_FABRIC_STOP; + if (se_cmd->transport_state & CMD_T_ABORTED) { + /* + * LIO's abort path owns the cleanup for this, + * so put it back on the list and let + * aborted_task handle it. + */ + list_move_tail(&cmd->i_conn_node, + &conn->conn_cmd_list); + } else { + se_cmd->transport_state |= CMD_T_FABRIC_STOP; + } spin_unlock_irq(&se_cmd->t_state_lock); } } --- linux-azure-5.8-5.8.0.orig/drivers/target/iscsi/iscsi_target_login.c +++ linux-azure-5.8-5.8.0/drivers/target/iscsi/iscsi_target_login.c @@ -1149,7 +1149,7 @@ } void iscsi_target_login_sess_out(struct iscsi_conn *conn, - struct iscsi_np *np, bool zero_tsih, bool new_sess) + bool zero_tsih, bool new_sess) { if (!new_sess) goto old_sess_out; @@ -1167,7 +1167,6 @@ conn->sess = NULL; old_sess_out: - iscsi_stop_login_thread_timer(np); /* * If login negotiation fails check if the Time2Retain timer * needs to be restarted. @@ -1407,8 +1406,9 @@ new_sess_out: new_sess = true; old_sess_out: + iscsi_stop_login_thread_timer(np); tpg_np = conn->tpg_np; - iscsi_target_login_sess_out(conn, np, zero_tsih, new_sess); + iscsi_target_login_sess_out(conn, zero_tsih, new_sess); new_sess = false; if (tpg) { --- linux-azure-5.8-5.8.0.orig/drivers/target/iscsi/iscsi_target_login.h +++ linux-azure-5.8-5.8.0/drivers/target/iscsi/iscsi_target_login.h @@ -22,8 +22,7 @@ extern void iscsit_free_conn(struct iscsi_conn *); extern int iscsit_start_kthreads(struct iscsi_conn *); extern void iscsi_post_login_handler(struct iscsi_np *, struct iscsi_conn *, u8); -extern void iscsi_target_login_sess_out(struct iscsi_conn *, struct iscsi_np *, - bool, bool); +extern void iscsi_target_login_sess_out(struct iscsi_conn *, bool, bool); extern int iscsi_target_login_thread(void *); extern void iscsi_handle_login_thread_timeout(struct timer_list *t); --- linux-azure-5.8-5.8.0.orig/drivers/target/iscsi/iscsi_target_nego.c +++ linux-azure-5.8-5.8.0/drivers/target/iscsi/iscsi_target_nego.c @@ -535,12 +535,11 @@ static void iscsi_target_login_drop(struct iscsi_conn *conn, struct iscsi_login *login) { - struct iscsi_np *np = login->np; bool zero_tsih = login->zero_tsih; iscsi_remove_failed_auth_entry(conn); iscsi_target_nego_release(conn); - iscsi_target_login_sess_out(conn, np, zero_tsih, true); + iscsi_target_login_sess_out(conn, zero_tsih, true); } struct conn_timeout { --- linux-azure-5.8-5.8.0.orig/drivers/target/target_core_internal.h +++ linux-azure-5.8-5.8.0/drivers/target/target_core_internal.h @@ -138,6 +138,7 @@ void release_se_kmem_caches(void); u32 scsi_get_new_index(scsi_index_t); void transport_subsystem_check_init(void); +void transport_uninit_session(struct se_session *); unsigned char *transport_dump_cmd_direction(struct se_cmd *); void transport_dump_dev_state(struct se_device *, char *, int *); void transport_dump_dev_info(struct se_device *, struct se_lun *, --- linux-azure-5.8-5.8.0.orig/drivers/target/target_core_transport.c +++ linux-azure-5.8-5.8.0/drivers/target/target_core_transport.c @@ -236,6 +236,11 @@ } EXPORT_SYMBOL(transport_init_session); +void transport_uninit_session(struct se_session *se_sess) +{ + percpu_ref_exit(&se_sess->cmd_count); +} + /** * transport_alloc_session - allocate a session object and initialize it * @sup_prot_ops: bitmask that defines which T10-PI modes are supported. @@ -579,7 +584,7 @@ sbitmap_queue_free(&se_sess->sess_tag_pool); kvfree(se_sess->sess_cmd_map); } - percpu_ref_exit(&se_sess->cmd_count); + transport_uninit_session(se_sess); kmem_cache_free(se_sess_cache, se_sess); } EXPORT_SYMBOL(transport_free_session); @@ -1835,7 +1840,8 @@ * out unpacked_lun for the original se_cmd. */ if (tm_type == TMR_ABORT_TASK && (flags & TARGET_SCF_LOOKUP_LUN_FROM_TAG)) { - if (!target_lookup_lun_from_tag(se_sess, tag, &unpacked_lun)) + if (!target_lookup_lun_from_tag(se_sess, tag, + &se_cmd->orig_fe_lun)) goto failure; } --- linux-azure-5.8-5.8.0.orig/drivers/target/target_core_user.c +++ linux-azure-5.8-5.8.0/drivers/target/target_core_user.c @@ -601,7 +601,7 @@ size = round_up(size+offset, PAGE_SIZE); while (size) { - flush_dcache_page(virt_to_page(start)); + flush_dcache_page(vmalloc_to_page(start)); start += PAGE_SIZE; size -= PAGE_SIZE; } @@ -669,15 +669,17 @@ void *from, *to = NULL; size_t copy_bytes, to_offset, offset; struct scatterlist *sg; - struct page *page; + struct page *page = NULL; for_each_sg(data_sg, sg, data_nents, i) { int sg_remaining = sg->length; from = kmap_atomic(sg_page(sg)) + sg->offset; while (sg_remaining > 0) { if (block_remaining == 0) { - if (to) + if (to) { + flush_dcache_page(page); kunmap_atomic(to); + } block_remaining = DATA_BLOCK_SIZE; dbi = tcmu_cmd_get_dbi(tcmu_cmd); @@ -722,7 +724,6 @@ memcpy(to + offset, from + sg->length - sg_remaining, copy_bytes); - tcmu_flush_dcache_range(to, copy_bytes); } sg_remaining -= copy_bytes; @@ -731,8 +732,10 @@ kunmap_atomic(from - sg->offset); } - if (to) + if (to) { + flush_dcache_page(page); kunmap_atomic(to); + } } static void gather_data_area(struct tcmu_dev *udev, struct tcmu_cmd *cmd, @@ -778,13 +781,13 @@ dbi = tcmu_cmd_get_dbi(cmd); page = tcmu_get_block_page(udev, dbi); from = kmap_atomic(page); + flush_dcache_page(page); } copy_bytes = min_t(size_t, sg_remaining, block_remaining); if (read_len < copy_bytes) copy_bytes = read_len; offset = DATA_BLOCK_SIZE - block_remaining; - tcmu_flush_dcache_range(from, copy_bytes); memcpy(to + sg->length - sg_remaining, from + offset, copy_bytes); @@ -1220,7 +1223,14 @@ struct tcmu_cmd_entry *entry = (void *) mb + CMDR_OFF + udev->cmdr_last_cleaned; - tcmu_flush_dcache_range(entry, sizeof(*entry)); + /* + * Flush max. up to end of cmd ring since current entry might + * be a padding that is shorter than sizeof(*entry) + */ + size_t ring_left = head_to_end(udev->cmdr_last_cleaned, + udev->cmdr_size); + tcmu_flush_dcache_range(entry, ring_left < sizeof(*entry) ? + ring_left : sizeof(*entry)); if (tcmu_hdr_get_op(entry->hdr.len_op) == TCMU_OP_PAD) { UPDATE_HEAD(udev->cmdr_last_cleaned, --- linux-azure-5.8-5.8.0.orig/drivers/target/target_core_xcopy.c +++ linux-azure-5.8-5.8.0/drivers/target/target_core_xcopy.c @@ -46,60 +46,83 @@ return 0; } -struct xcopy_dev_search_info { - const unsigned char *dev_wwn; - struct se_device *found_dev; -}; - +/** + * target_xcopy_locate_se_dev_e4_iter - compare XCOPY NAA device identifiers + * + * @se_dev: device being considered for match + * @dev_wwn: XCOPY requested NAA dev_wwn + * @return: 1 on match, 0 on no-match + */ static int target_xcopy_locate_se_dev_e4_iter(struct se_device *se_dev, - void *data) + const unsigned char *dev_wwn) { - struct xcopy_dev_search_info *info = data; unsigned char tmp_dev_wwn[XCOPY_NAA_IEEE_REGEX_LEN]; int rc; - if (!se_dev->dev_attrib.emulate_3pc) + if (!se_dev->dev_attrib.emulate_3pc) { + pr_debug("XCOPY: emulate_3pc disabled on se_dev %p\n", se_dev); return 0; + } memset(&tmp_dev_wwn[0], 0, XCOPY_NAA_IEEE_REGEX_LEN); target_xcopy_gen_naa_ieee(se_dev, &tmp_dev_wwn[0]); - rc = memcmp(&tmp_dev_wwn[0], info->dev_wwn, XCOPY_NAA_IEEE_REGEX_LEN); - if (rc != 0) - return 0; - - info->found_dev = se_dev; - pr_debug("XCOPY 0xe4: located se_dev: %p\n", se_dev); - - rc = target_depend_item(&se_dev->dev_group.cg_item); + rc = memcmp(&tmp_dev_wwn[0], dev_wwn, XCOPY_NAA_IEEE_REGEX_LEN); if (rc != 0) { - pr_err("configfs_depend_item attempt failed: %d for se_dev: %p\n", - rc, se_dev); - return rc; + pr_debug("XCOPY: skip non-matching: %*ph\n", + XCOPY_NAA_IEEE_REGEX_LEN, tmp_dev_wwn); + return 0; } + pr_debug("XCOPY 0xe4: located se_dev: %p\n", se_dev); - pr_debug("Called configfs_depend_item for se_dev: %p se_dev->se_dev_group: %p\n", - se_dev, &se_dev->dev_group); return 1; } -static int target_xcopy_locate_se_dev_e4(const unsigned char *dev_wwn, - struct se_device **found_dev) -{ - struct xcopy_dev_search_info info; - int ret; - - memset(&info, 0, sizeof(info)); - info.dev_wwn = dev_wwn; - - ret = target_for_each_device(target_xcopy_locate_se_dev_e4_iter, &info); - if (ret == 1) { - *found_dev = info.found_dev; - return 0; - } else { - pr_debug_ratelimited("Unable to locate 0xe4 descriptor for EXTENDED_COPY\n"); - return -EINVAL; +static int target_xcopy_locate_se_dev_e4(struct se_session *sess, + const unsigned char *dev_wwn, + struct se_device **_found_dev, + struct percpu_ref **_found_lun_ref) +{ + struct se_dev_entry *deve; + struct se_node_acl *nacl; + struct se_lun *this_lun = NULL; + struct se_device *found_dev = NULL; + + /* cmd with NULL sess indicates no associated $FABRIC_MOD */ + if (!sess) + goto err_out; + + pr_debug("XCOPY 0xe4: searching for: %*ph\n", + XCOPY_NAA_IEEE_REGEX_LEN, dev_wwn); + + nacl = sess->se_node_acl; + rcu_read_lock(); + hlist_for_each_entry_rcu(deve, &nacl->lun_entry_hlist, link) { + struct se_device *this_dev; + int rc; + + this_lun = rcu_dereference(deve->se_lun); + this_dev = rcu_dereference_raw(this_lun->lun_se_dev); + + rc = target_xcopy_locate_se_dev_e4_iter(this_dev, dev_wwn); + if (rc) { + if (percpu_ref_tryget_live(&this_lun->lun_ref)) + found_dev = this_dev; + break; + } } + rcu_read_unlock(); + if (found_dev == NULL) + goto err_out; + + pr_debug("lun_ref held for se_dev: %p se_dev->se_dev_group: %p\n", + found_dev, &found_dev->dev_group); + *_found_dev = found_dev; + *_found_lun_ref = &this_lun->lun_ref; + return 0; +err_out: + pr_debug_ratelimited("Unable to locate 0xe4 descriptor for EXTENDED_COPY\n"); + return -EINVAL; } static int target_xcopy_parse_tiddesc_e4(struct se_cmd *se_cmd, struct xcopy_op *xop, @@ -246,12 +269,16 @@ switch (xop->op_origin) { case XCOL_SOURCE_RECV_OP: - rc = target_xcopy_locate_se_dev_e4(xop->dst_tid_wwn, - &xop->dst_dev); + rc = target_xcopy_locate_se_dev_e4(se_cmd->se_sess, + xop->dst_tid_wwn, + &xop->dst_dev, + &xop->remote_lun_ref); break; case XCOL_DEST_RECV_OP: - rc = target_xcopy_locate_se_dev_e4(xop->src_tid_wwn, - &xop->src_dev); + rc = target_xcopy_locate_se_dev_e4(se_cmd->se_sess, + xop->src_tid_wwn, + &xop->src_dev, + &xop->remote_lun_ref); break; default: pr_err("XCOPY CSCD descriptor IDs not found in CSCD list - " @@ -391,18 +418,12 @@ static void xcopy_pt_undepend_remotedev(struct xcopy_op *xop) { - struct se_device *remote_dev; - if (xop->op_origin == XCOL_SOURCE_RECV_OP) - remote_dev = xop->dst_dev; + pr_debug("putting dst lun_ref for %p\n", xop->dst_dev); else - remote_dev = xop->src_dev; - - pr_debug("Calling configfs_undepend_item for" - " remote_dev: %p remote_dev->dev_group: %p\n", - remote_dev, &remote_dev->dev_group.cg_item); + pr_debug("putting src lun_ref for %p\n", xop->src_dev); - target_undepend_item(&remote_dev->dev_group.cg_item); + percpu_ref_put(xop->remote_lun_ref); } static void xcopy_pt_release_cmd(struct se_cmd *se_cmd) @@ -474,7 +495,7 @@ memset(&xcopy_pt_sess, 0, sizeof(struct se_session)); ret = transport_init_session(&xcopy_pt_sess); if (ret < 0) - return ret; + goto destroy_wq; xcopy_pt_nacl.se_tpg = &xcopy_pt_tpg; xcopy_pt_nacl.nacl_sess = &xcopy_pt_sess; @@ -483,12 +504,19 @@ xcopy_pt_sess.se_node_acl = &xcopy_pt_nacl; return 0; + +destroy_wq: + destroy_workqueue(xcopy_wq); + xcopy_wq = NULL; + return ret; } void target_xcopy_release_pt(void) { - if (xcopy_wq) + if (xcopy_wq) { destroy_workqueue(xcopy_wq); + transport_uninit_session(&xcopy_pt_sess); + } } /* --- linux-azure-5.8-5.8.0.orig/drivers/target/target_core_xcopy.h +++ linux-azure-5.8-5.8.0/drivers/target/target_core_xcopy.h @@ -27,6 +27,7 @@ struct se_device *dst_dev; unsigned char dst_tid_wwn[XCOPY_NAA_IEEE_REGEX_LEN]; unsigned char local_dev_wwn[XCOPY_NAA_IEEE_REGEX_LEN]; + struct percpu_ref *remote_lun_ref; sector_t src_lba; sector_t dst_lba; --- linux-azure-5.8-5.8.0.orig/drivers/tee/amdtee/amdtee_private.h +++ linux-azure-5.8-5.8.0/drivers/tee/amdtee/amdtee_private.h @@ -64,9 +64,13 @@ /** * struct amdtee_context_data - AMD-TEE driver context data * @sess_list: Keeps track of sessions opened in current TEE context + * @shm_list: Keeps track of buffers allocated and mapped in current TEE + * context */ struct amdtee_context_data { struct list_head sess_list; + struct list_head shm_list; + struct mutex shm_mutex; /* synchronizes access to @shm_list */ }; struct amdtee_driver_data { @@ -89,10 +93,6 @@ u32 buf_id; }; -struct amdtee_shm_context { - struct list_head shmdata_list; -}; - #define LOWER_TWO_BYTE_MASK 0x0000FFFF /** --- linux-azure-5.8-5.8.0.orig/drivers/tee/amdtee/core.c +++ linux-azure-5.8-5.8.0/drivers/tee/amdtee/core.c @@ -20,7 +20,6 @@ static struct amdtee_driver_data *drv_data; static DEFINE_MUTEX(session_list_mutex); -static struct amdtee_shm_context shmctx; static void amdtee_get_version(struct tee_device *teedev, struct tee_ioctl_version_data *vers) @@ -42,7 +41,8 @@ return -ENOMEM; INIT_LIST_HEAD(&ctxdata->sess_list); - INIT_LIST_HEAD(&shmctx.shmdata_list); + INIT_LIST_HEAD(&ctxdata->shm_list); + mutex_init(&ctxdata->shm_mutex); ctx->data = ctxdata; return 0; @@ -86,6 +86,7 @@ list_del(&sess->list_node); release_session(sess); } + mutex_destroy(&ctxdata->shm_mutex); kfree(ctxdata); ctx->data = NULL; @@ -152,14 +153,17 @@ u32 get_buffer_id(struct tee_shm *shm) { - u32 buf_id = 0; + struct amdtee_context_data *ctxdata = shm->ctx->data; struct amdtee_shm_data *shmdata; + u32 buf_id = 0; - list_for_each_entry(shmdata, &shmctx.shmdata_list, shm_node) + mutex_lock(&ctxdata->shm_mutex); + list_for_each_entry(shmdata, &ctxdata->shm_list, shm_node) if (shmdata->kaddr == shm->kaddr) { buf_id = shmdata->buf_id; break; } + mutex_unlock(&ctxdata->shm_mutex); return buf_id; } @@ -333,8 +337,9 @@ int amdtee_map_shmem(struct tee_shm *shm) { - struct shmem_desc shmem; + struct amdtee_context_data *ctxdata; struct amdtee_shm_data *shmnode; + struct shmem_desc shmem; int rc, count; u32 buf_id; @@ -362,7 +367,10 @@ shmnode->kaddr = shm->kaddr; shmnode->buf_id = buf_id; - list_add(&shmnode->shm_node, &shmctx.shmdata_list); + ctxdata = shm->ctx->data; + mutex_lock(&ctxdata->shm_mutex); + list_add(&shmnode->shm_node, &ctxdata->shm_list); + mutex_unlock(&ctxdata->shm_mutex); pr_debug("buf_id :[%x] kaddr[%p]\n", shmnode->buf_id, shmnode->kaddr); @@ -371,6 +379,7 @@ void amdtee_unmap_shmem(struct tee_shm *shm) { + struct amdtee_context_data *ctxdata; struct amdtee_shm_data *shmnode; u32 buf_id; @@ -381,12 +390,15 @@ /* Unmap the shared memory from TEE */ handle_unmap_shmem(buf_id); - list_for_each_entry(shmnode, &shmctx.shmdata_list, shm_node) + ctxdata = shm->ctx->data; + mutex_lock(&ctxdata->shm_mutex); + list_for_each_entry(shmnode, &ctxdata->shm_list, shm_node) if (buf_id == shmnode->buf_id) { list_del(&shmnode->shm_node); kfree(shmnode); break; } + mutex_unlock(&ctxdata->shm_mutex); } int amdtee_invoke_func(struct tee_context *ctx, --- linux-azure-5.8-5.8.0.orig/drivers/tee/optee/call.c +++ linux-azure-5.8-5.8.0/drivers/tee/optee/call.c @@ -7,6 +7,7 @@ #include #include #include +#include #include #include #include @@ -148,7 +149,8 @@ */ optee_cq_wait_for_completion(&optee->call_queue, &w); } else if (OPTEE_SMC_RETURN_IS_RPC(res.a0)) { - might_sleep(); + if (need_resched()) + cond_resched(); param.a0 = res.a0; param.a1 = res.a1; param.a2 = res.a2; @@ -534,7 +536,8 @@ static bool is_normal_memory(pgprot_t p) { #if defined(CONFIG_ARM) - return (pgprot_val(p) & L_PTE_MT_MASK) == L_PTE_MT_WRITEALLOC; + return (((pgprot_val(p) & L_PTE_MT_MASK) == L_PTE_MT_WRITEALLOC) || + ((pgprot_val(p) & L_PTE_MT_MASK) == L_PTE_MT_WRITEBACK)); #elif defined(CONFIG_ARM64) return (pgprot_val(p) & PTE_ATTRINDX_MASK) == PTE_ATTRINDX(MT_NORMAL); #else --- linux-azure-5.8-5.8.0.orig/drivers/tee/tee_core.c +++ linux-azure-5.8-5.8.0/drivers/tee/tee_core.c @@ -200,7 +200,8 @@ int name_len; int rc; - if (connection_method == TEE_IOCTL_LOGIN_PUBLIC) { + if (connection_method == TEE_IOCTL_LOGIN_PUBLIC || + connection_method == TEE_IOCTL_LOGIN_REE_KERNEL) { /* Nil UUID to be passed to TEE environment */ uuid_copy(uuid, &uuid_null); return 0; --- linux-azure-5.8-5.8.0.orig/drivers/thermal/cpufreq_cooling.c +++ linux-azure-5.8-5.8.0/drivers/thermal/cpufreq_cooling.c @@ -444,13 +444,11 @@ if (cpufreq_cdev->cpufreq_state == state) return 0; - cpufreq_cdev->cpufreq_state = state; - frequency = get_state_freq(cpufreq_cdev, state); ret = freq_qos_update_request(&cpufreq_cdev->qos_req, frequency); - - if (ret > 0) { + if (ret >= 0) { + cpufreq_cdev->cpufreq_state = state; cpus = cpufreq_cdev->policy->cpus; max_capacity = arch_scale_cpu_capacity(cpumask_first(cpus)); capacity = frequency * max_capacity; --- linux-azure-5.8-5.8.0.orig/drivers/thermal/intel/int340x_thermal/int340x_thermal_zone.c +++ linux-azure-5.8-5.8.0/drivers/thermal/intel/int340x_thermal/int340x_thermal_zone.c @@ -146,12 +146,18 @@ return 0; } +static void int340x_thermal_critical(struct thermal_zone_device *zone) +{ + dev_dbg(&zone->device, "%s: critical temperature reached\n", zone->type); +} + static struct thermal_zone_device_ops int340x_thermal_zone_ops = { .get_temp = int340x_thermal_get_zone_temp, .get_trip_temp = int340x_thermal_get_trip_temp, .get_trip_type = int340x_thermal_get_trip_type, .set_trip_temp = int340x_thermal_set_trip_temp, .get_trip_hyst = int340x_thermal_get_trip_hyst, + .critical = int340x_thermal_critical, }; static int int340x_thermal_get_trip_config(acpi_handle handle, char *name, --- linux-azure-5.8-5.8.0.orig/drivers/thermal/intel/int340x_thermal/processor_thermal_device.c +++ linux-azure-5.8-5.8.0/drivers/thermal/intel/int340x_thermal/processor_thermal_device.c @@ -43,7 +43,7 @@ #define PCI_DEVICE_ID_PROC_ICL_THERMAL 0x8a03 /* JasperLake thermal reporting device */ -#define PCI_DEVICE_ID_PROC_JSL_THERMAL 0x4503 +#define PCI_DEVICE_ID_PROC_JSL_THERMAL 0x4E03 /* TigerLake thermal reporting device */ #define PCI_DEVICE_ID_PROC_TGL_THERMAL 0x9A03 --- linux-azure-5.8-5.8.0.orig/drivers/thermal/intel/intel_pch_thermal.c +++ linux-azure-5.8-5.8.0/drivers/thermal/intel/intel_pch_thermal.c @@ -263,10 +263,16 @@ return 0; } +static void pch_critical(struct thermal_zone_device *tzd) +{ + dev_dbg(&tzd->device, "%s: critical temperature reached\n", tzd->type); +} + static struct thermal_zone_device_ops tzd_ops = { .get_temp = pch_thermal_get_temp, .get_trip_type = pch_get_trip_type, .get_trip_temp = pch_get_trip_temp, + .critical = pch_critical, }; enum board_ids { --- linux-azure-5.8-5.8.0.orig/drivers/thermal/qcom/qcom-spmi-temp-alarm.c +++ linux-azure-5.8-5.8.0/drivers/thermal/qcom/qcom-spmi-temp-alarm.c @@ -1,6 +1,6 @@ // SPDX-License-Identifier: GPL-2.0-only /* - * Copyright (c) 2011-2015, 2017, The Linux Foundation. All rights reserved. + * Copyright (c) 2011-2015, 2017, 2020, The Linux Foundation. All rights reserved. */ #include @@ -191,7 +191,7 @@ chip->temp = mili_celsius; } - *temp = chip->temp < 0 ? 0 : chip->temp; + *temp = chip->temp; return 0; } --- linux-azure-5.8-5.8.0.orig/drivers/thermal/rcar_thermal.c +++ linux-azure-5.8-5.8.0/drivers/thermal/rcar_thermal.c @@ -323,24 +323,6 @@ return 0; } -static int rcar_thermal_notify(struct thermal_zone_device *zone, - int trip, enum thermal_trip_type type) -{ - struct rcar_thermal_priv *priv = rcar_zone_to_priv(zone); - struct device *dev = rcar_priv_to_dev(priv); - - switch (type) { - case THERMAL_TRIP_CRITICAL: - /* FIXME */ - dev_warn(dev, "Thermal reached to critical temperature\n"); - break; - default: - break; - } - - return 0; -} - static const struct thermal_zone_of_device_ops rcar_thermal_zone_of_ops = { .get_temp = rcar_thermal_of_get_temp, }; @@ -349,7 +331,6 @@ .get_temp = rcar_thermal_get_temp, .get_trip_type = rcar_thermal_get_trip_type, .get_trip_temp = rcar_thermal_get_trip_temp, - .notify = rcar_thermal_notify, }; /* --- linux-azure-5.8-5.8.0.orig/drivers/thermal/thermal_core.c +++ linux-azure-5.8-5.8.0/drivers/thermal/thermal_core.c @@ -369,6 +369,25 @@ msecs_to_jiffies(poweroff_delay_ms)); } +void thermal_zone_device_critical(struct thermal_zone_device *tz) +{ + dev_emerg(&tz->device, "%s: critical temperature reached, " + "shutting down\n", tz->type); + + mutex_lock(&poweroff_lock); + if (!power_off_triggered) { + /* + * Queue a backup emergency shutdown in the event of + * orderly_poweroff failure + */ + thermal_emergency_poweroff(); + orderly_poweroff(true); + power_off_triggered = true; + } + mutex_unlock(&poweroff_lock); +} +EXPORT_SYMBOL(thermal_zone_device_critical); + static void handle_critical_trips(struct thermal_zone_device *tz, int trip, enum thermal_trip_type trip_type) { @@ -385,22 +404,10 @@ if (tz->ops->notify) tz->ops->notify(tz, trip, trip_type); - if (trip_type == THERMAL_TRIP_CRITICAL) { - dev_emerg(&tz->device, - "critical temperature reached (%d C), shutting down\n", - tz->temperature / 1000); - mutex_lock(&poweroff_lock); - if (!power_off_triggered) { - /* - * Queue a backup emergency shutdown in the event of - * orderly_poweroff failure - */ - thermal_emergency_poweroff(); - orderly_poweroff(true); - power_off_triggered = true; - } - mutex_unlock(&poweroff_lock); - } + if (trip_type == THERMAL_TRIP_HOT && tz->ops->hot) + tz->ops->hot(tz); + else if (trip_type == THERMAL_TRIP_CRITICAL) + tz->ops->critical(tz); } static void handle_thermal_trip(struct thermal_zone_device *tz, int trip) @@ -467,7 +474,8 @@ if (atomic_read(&in_suspend)) return; - if (!tz->ops->get_temp) + if (WARN_ONCE(!tz->ops->get_temp, "'%s' must not be called without " + "'get_temp' ops set\n", __func__)) return; update_temperature(tz); @@ -1272,6 +1280,10 @@ tz->id = id; strlcpy(tz->type, type, sizeof(tz->type)); + + if (!ops->critical) + ops->critical = thermal_zone_device_critical; + tz->ops = ops; tz->tzp = tzp; tz->device.class = &thermal_class; --- linux-azure-5.8-5.8.0.orig/drivers/thermal/ti-soc-thermal/omap4-thermal-data.c +++ linux-azure-5.8-5.8.0/drivers/thermal/ti-soc-thermal/omap4-thermal-data.c @@ -37,20 +37,21 @@ /* * Temperature values in milli degree celsius - * ADC code values from 530 to 923 + * ADC code values from 13 to 107, see TRM + * "18.4.10.2.3 ADC Codes Versus Temperature". */ static const int omap4430_adc_to_temp[OMAP4430_ADC_END_VALUE - OMAP4430_ADC_START_VALUE + 1] = { - -38000, -35000, -34000, -32000, -30000, -28000, -26000, -24000, -22000, - -20000, -18000, -17000, -15000, -13000, -12000, -10000, -8000, -6000, - -5000, -3000, -1000, 0, 2000, 3000, 5000, 6000, 8000, 10000, 12000, - 13000, 15000, 17000, 19000, 21000, 23000, 25000, 27000, 28000, 30000, - 32000, 33000, 35000, 37000, 38000, 40000, 42000, 43000, 45000, 47000, - 48000, 50000, 52000, 53000, 55000, 57000, 58000, 60000, 62000, 64000, - 66000, 68000, 70000, 71000, 73000, 75000, 77000, 78000, 80000, 82000, - 83000, 85000, 87000, 88000, 90000, 92000, 93000, 95000, 97000, 98000, - 100000, 102000, 103000, 105000, 107000, 109000, 111000, 113000, 115000, - 117000, 118000, 120000, 122000, 123000, + -40000, -38000, -35000, -34000, -32000, -30000, -28000, -26000, -24000, + -22000, -20000, -18500, -17000, -15000, -13500, -12000, -10000, -8000, + -6500, -5000, -3500, -1500, 0, 2000, 3500, 5000, 6500, 8500, 10000, + 12000, 13500, 15000, 17000, 19000, 21000, 23000, 25000, 27000, 28500, + 30000, 32000, 33500, 35000, 37000, 38500, 40000, 42000, 43500, 45000, + 47000, 48500, 50000, 52000, 53500, 55000, 57000, 58500, 60000, 62000, + 64000, 66000, 68000, 70000, 71500, 73500, 75000, 77000, 78500, 80000, + 82000, 83500, 85000, 87000, 88500, 90000, 92000, 93500, 95000, 97000, + 98500, 100000, 102000, 103500, 105000, 107000, 109000, 111000, 113000, + 115000, 117000, 118500, 120000, 122000, 123500, 125000, }; /* OMAP4430 data */ --- linux-azure-5.8-5.8.0.orig/drivers/thermal/ti-soc-thermal/omap4xxx-bandgap.h +++ linux-azure-5.8-5.8.0/drivers/thermal/ti-soc-thermal/omap4xxx-bandgap.h @@ -53,9 +53,13 @@ * and thresholds for OMAP4430. */ -/* ADC conversion table limits */ -#define OMAP4430_ADC_START_VALUE 0 -#define OMAP4430_ADC_END_VALUE 127 +/* + * ADC conversion table limits. Ignore values outside the TRM listed + * range to avoid bogus thermal shutdowns. See omap4430 TRM chapter + * "18.4.10.2.3 ADC Codes Versus Temperature". + */ +#define OMAP4430_ADC_START_VALUE 13 +#define OMAP4430_ADC_END_VALUE 107 /* bandgap clock limits (no control on 4430) */ #define OMAP4430_MAX_FREQ 32768 #define OMAP4430_MIN_FREQ 32768 --- linux-azure-5.8-5.8.0.orig/drivers/thermal/ti-soc-thermal/ti-thermal-common.c +++ linux-azure-5.8-5.8.0/drivers/thermal/ti-soc-thermal/ti-thermal-common.c @@ -169,7 +169,7 @@ data = ti_bandgap_get_sensor_data(bgp, id); - if (!IS_ERR_OR_NULL(data)) + if (IS_ERR_OR_NULL(data)) data = ti_thermal_build_data(bgp, id); if (!data) --- linux-azure-5.8-5.8.0.orig/drivers/thunderbolt/eeprom.c +++ linux-azure-5.8-5.8.0/drivers/thunderbolt/eeprom.c @@ -7,6 +7,7 @@ */ #include +#include #include #include #include "tb.h" @@ -389,8 +390,8 @@ struct tb_drom_entry_header *entry = (void *) (sw->drom + pos); if (pos + 1 == drom_size || pos + entry->len > drom_size || !entry->len) { - tb_sw_warn(sw, "drom buffer overrun, aborting\n"); - return -EIO; + tb_sw_warn(sw, "DROM buffer overrun\n"); + return -EILSEQ; } switch (entry->type) { @@ -526,7 +527,8 @@ u16 size; u32 crc; struct tb_drom_header *header; - int res; + int res, retries = 1; + if (sw->drom) return 0; @@ -611,7 +613,17 @@ tb_sw_warn(sw, "drom device_rom_revision %#x unknown\n", header->device_rom_revision); - return tb_drom_parse_entries(sw); + res = tb_drom_parse_entries(sw); + /* If the DROM parsing fails, wait a moment and retry once */ + if (res == -EILSEQ && retries--) { + tb_sw_warn(sw, "parsing DROM failed, retrying\n"); + msleep(100); + res = tb_drom_read_n(sw, 0, sw->drom, size); + if (!res) + goto parse; + } + + return res; err: kfree(sw->drom); sw->drom = NULL; --- linux-azure-5.8-5.8.0.orig/drivers/thunderbolt/icm.c +++ linux-azure-5.8-5.8.0/drivers/thunderbolt/icm.c @@ -1973,7 +1973,9 @@ static void remove_unplugged_switch(struct tb_switch *sw) { - pm_runtime_get_sync(sw->dev.parent); + struct device *parent = get_device(sw->dev.parent); + + pm_runtime_get_sync(parent); /* * Signal this and switches below for rpm_complete because @@ -1984,8 +1986,10 @@ bus_for_each_dev(&tb_bus_type, &sw->dev, NULL, complete_rpm); tb_switch_remove(sw); - pm_runtime_mark_last_busy(sw->dev.parent); - pm_runtime_put_autosuspend(sw->dev.parent); + pm_runtime_mark_last_busy(parent); + pm_runtime_put_autosuspend(parent); + + put_device(parent); } static void icm_free_unplugged_children(struct tb_switch *sw) --- linux-azure-5.8-5.8.0.orig/drivers/thunderbolt/nhi.c +++ linux-azure-5.8-5.8.0/drivers/thunderbolt/nhi.c @@ -410,12 +410,23 @@ ring->vector = ret; - ring->irq = pci_irq_vector(ring->nhi->pdev, ring->vector); - if (ring->irq < 0) - return ring->irq; + ret = pci_irq_vector(ring->nhi->pdev, ring->vector); + if (ret < 0) + goto err_ida_remove; + + ring->irq = ret; irqflags = no_suspend ? IRQF_NO_SUSPEND : 0; - return request_irq(ring->irq, ring_msix, irqflags, "thunderbolt", ring); + ret = request_irq(ring->irq, ring_msix, irqflags, "thunderbolt", ring); + if (ret) + goto err_ida_remove; + + return 0; + +err_ida_remove: + ida_simple_remove(&nhi->msix_ida, ring->vector); + + return ret; } static void ring_release_msix(struct tb_ring *ring) --- linux-azure-5.8-5.8.0.orig/drivers/thunderbolt/switch.c +++ linux-azure-5.8-5.8.0/drivers/thunderbolt/switch.c @@ -739,6 +739,7 @@ if (res == -ENODEV) { tb_dbg(port->sw->tb, " Port %d: not implemented\n", port->port); + port->disabled = true; return 0; } return res; --- linux-azure-5.8-5.8.0.orig/drivers/thunderbolt/tb.h +++ linux-azure-5.8-5.8.0/drivers/thunderbolt/tb.h @@ -167,7 +167,7 @@ * @cap_adap: Offset of the adapter specific capability (%0 if not present) * @cap_usb4: Offset to the USB4 port capability (%0 if not present) * @port: Port number on switch - * @disabled: Disabled by eeprom + * @disabled: Disabled by eeprom or enabled but not implemented * @bonded: true if the port is bonded (two lanes combined as one) * @dual_link_port: If the switch is connected using two ports, points * to the other port. --- linux-azure-5.8-5.8.0.orig/drivers/thunderbolt/xdomain.c +++ linux-azure-5.8-5.8.0/drivers/thunderbolt/xdomain.c @@ -830,6 +830,7 @@ id = ida_simple_get(&xd->service_ids, 0, 0, GFP_KERNEL); if (id < 0) { + kfree(svc->key); kfree(svc); break; } --- linux-azure-5.8-5.8.0.orig/drivers/tty/hvc/Kconfig +++ linux-azure-5.8-5.8.0/drivers/tty/hvc/Kconfig @@ -81,6 +81,7 @@ bool "ARM JTAG DCC console" depends on ARM || ARM64 select HVC_DRIVER + select SERIAL_CORE_CONSOLE help This console uses the JTAG DCC on ARM to create a console under the HVC driver. This console is used through a JTAG only on ARM. If you don't have --- linux-azure-5.8-5.8.0.orig/drivers/tty/hvc/hvcs.c +++ linux-azure-5.8-5.8.0/drivers/tty/hvc/hvcs.c @@ -1216,13 +1216,6 @@ tty_wait_until_sent(tty, HVCS_CLOSE_WAIT); - /* - * This line is important because it tells hvcs_open that this - * device needs to be re-configured the next time hvcs_open is - * called. - */ - tty->driver_data = NULL; - free_irq(irq, hvcsd); return; } else if (hvcsd->port.count < 0) { @@ -1237,6 +1230,13 @@ { struct hvcs_struct *hvcsd = tty->driver_data; + /* + * This line is important because it tells hvcs_open that this + * device needs to be re-configured the next time hvcs_open is + * called. + */ + tty->driver_data = NULL; + tty_port_put(&hvcsd->port); } --- linux-azure-5.8-5.8.0.orig/drivers/tty/ipwireless/network.c +++ linux-azure-5.8-5.8.0/drivers/tty/ipwireless/network.c @@ -117,7 +117,7 @@ skb->len, notify_packet_sent, network); - if (ret == -1) { + if (ret < 0) { skb_pull(skb, 2); return 0; } @@ -134,7 +134,7 @@ notify_packet_sent, network); kfree(buf); - if (ret == -1) + if (ret < 0) return 0; } kfree_skb(skb); --- linux-azure-5.8-5.8.0.orig/drivers/tty/ipwireless/tty.c +++ linux-azure-5.8-5.8.0/drivers/tty/ipwireless/tty.c @@ -218,7 +218,7 @@ ret = ipwireless_send_packet(tty->hardware, IPW_CHANNEL_RAS, buf, count, ipw_write_packet_sent_callback, tty); - if (ret == -1) { + if (ret < 0) { mutex_unlock(&tty->ipw_tty_mutex); return 0; } --- linux-azure-5.8-5.8.0.orig/drivers/tty/n_gsm.c +++ linux-azure-5.8-5.8.0/drivers/tty/n_gsm.c @@ -2561,7 +2561,8 @@ */ static ssize_t gsmld_read(struct tty_struct *tty, struct file *file, - unsigned char __user *buf, size_t nr) + unsigned char *buf, size_t nr, + void **cookie, unsigned long offset) { return -EOPNOTSUPP; } --- linux-azure-5.8-5.8.0.orig/drivers/tty/n_hdlc.c +++ linux-azure-5.8-5.8.0/drivers/tty/n_hdlc.c @@ -416,13 +416,19 @@ * Returns the number of bytes returned or error code. */ static ssize_t n_hdlc_tty_read(struct tty_struct *tty, struct file *file, - __u8 __user *buf, size_t nr) + __u8 *kbuf, size_t nr, + void **cookie, unsigned long offset) { struct n_hdlc *n_hdlc = tty->disc_data; int ret = 0; struct n_hdlc_buf *rbuf; DECLARE_WAITQUEUE(wait, current); + /* Is this a repeated call for an rbuf we already found earlier? */ + rbuf = *cookie; + if (rbuf) + goto have_rbuf; + add_wait_queue(&tty->read_wait, &wait); for (;;) { @@ -436,25 +442,8 @@ set_current_state(TASK_INTERRUPTIBLE); rbuf = n_hdlc_buf_get(&n_hdlc->rx_buf_list); - if (rbuf) { - if (rbuf->count > nr) { - /* too large for caller's buffer */ - ret = -EOVERFLOW; - } else { - __set_current_state(TASK_RUNNING); - if (copy_to_user(buf, rbuf->buf, rbuf->count)) - ret = -EFAULT; - else - ret = rbuf->count; - } - - if (n_hdlc->rx_free_buf_list.count > - DEFAULT_RX_BUF_COUNT) - kfree(rbuf); - else - n_hdlc_buf_put(&n_hdlc->rx_free_buf_list, rbuf); + if (rbuf) break; - } /* no data */ if (tty_io_nonblock(tty, file)) { @@ -473,6 +462,39 @@ remove_wait_queue(&tty->read_wait, &wait); __set_current_state(TASK_RUNNING); + if (!rbuf) + return ret; + *cookie = rbuf; + +have_rbuf: + /* Have we used it up entirely? */ + if (offset >= rbuf->count) + goto done_with_rbuf; + + /* More data to go, but can't copy any more? EOVERFLOW */ + ret = -EOVERFLOW; + if (!nr) + goto done_with_rbuf; + + /* Copy as much data as possible */ + ret = rbuf->count - offset; + if (ret > nr) + ret = nr; + memcpy(kbuf, rbuf->buf+offset, ret); + offset += ret; + + /* If we still have data left, we leave the rbuf in the cookie */ + if (offset < rbuf->count) + return ret; + +done_with_rbuf: + *cookie = NULL; + + if (n_hdlc->rx_free_buf_list.count > DEFAULT_RX_BUF_COUNT) + kfree(rbuf); + else + n_hdlc_buf_put(&n_hdlc->rx_free_buf_list, rbuf); + return ret; } /* end of n_hdlc_tty_read() */ --- linux-azure-5.8-5.8.0.orig/drivers/tty/n_null.c +++ linux-azure-5.8-5.8.0/drivers/tty/n_null.c @@ -20,7 +20,8 @@ } static ssize_t n_null_read(struct tty_struct *tty, struct file *file, - unsigned char __user * buf, size_t nr) + unsigned char *buf, size_t nr, + void **cookie, unsigned long offset) { return -EOPNOTSUPP; } --- linux-azure-5.8-5.8.0.orig/drivers/tty/n_r3964.c +++ linux-azure-5.8-5.8.0/drivers/tty/n_r3964.c @@ -129,7 +129,7 @@ static int r3964_open(struct tty_struct *tty); static void r3964_close(struct tty_struct *tty); static ssize_t r3964_read(struct tty_struct *tty, struct file *file, - unsigned char __user * buf, size_t nr); + void *cookie, unsigned char *buf, size_t nr); static ssize_t r3964_write(struct tty_struct *tty, struct file *file, const unsigned char *buf, size_t nr); static int r3964_ioctl(struct tty_struct *tty, struct file *file, @@ -1059,7 +1059,8 @@ } static ssize_t r3964_read(struct tty_struct *tty, struct file *file, - unsigned char __user * buf, size_t nr) + unsigned char *kbuf, size_t nr, + void **cookie, unsigned long offset) { struct r3964_info *pInfo = tty->disc_data; struct r3964_client_info *pClient; @@ -1110,10 +1111,7 @@ kfree(pMsg); TRACE_M("r3964_read - msg kfree %p", pMsg); - if (copy_to_user(buf, &theMsg, ret)) { - ret = -EFAULT; - goto unlock; - } + memcpy(kbuf, &theMsg, ret); TRACE_PS("read - return %d", ret); goto unlock; --- linux-azure-5.8-5.8.0.orig/drivers/tty/n_tracerouter.c +++ linux-azure-5.8-5.8.0/drivers/tty/n_tracerouter.c @@ -118,7 +118,9 @@ * -EINVAL */ static ssize_t n_tracerouter_read(struct tty_struct *tty, struct file *file, - unsigned char __user *buf, size_t nr) { + unsigned char *buf, size_t nr, + void **cookie, unsigned long offset) +{ return -EINVAL; } --- linux-azure-5.8-5.8.0.orig/drivers/tty/n_tracesink.c +++ linux-azure-5.8-5.8.0/drivers/tty/n_tracesink.c @@ -115,7 +115,9 @@ * -EINVAL */ static ssize_t n_tracesink_read(struct tty_struct *tty, struct file *file, - unsigned char __user *buf, size_t nr) { + unsigned char *buf, size_t nr, + void **cookie, unsigned long offset) +{ return -EINVAL; } --- linux-azure-5.8-5.8.0.orig/drivers/tty/n_tty.c +++ linux-azure-5.8-5.8.0/drivers/tty/n_tty.c @@ -164,29 +164,24 @@ memset(buffer, 0x00, size); } -static int tty_copy_to_user(struct tty_struct *tty, void __user *to, - size_t tail, size_t n) +static void tty_copy(struct tty_struct *tty, void *to, size_t tail, size_t n) { struct n_tty_data *ldata = tty->disc_data; size_t size = N_TTY_BUF_SIZE - tail; void *from = read_buf_addr(ldata, tail); - int uncopied; if (n > size) { tty_audit_add_data(tty, from, size); - uncopied = copy_to_user(to, from, size); - zero_buffer(tty, from, size - uncopied); - if (uncopied) - return uncopied; + memcpy(to, from, size); + zero_buffer(tty, from, size); to += size; n -= size; from = ldata->read_buf; } tty_audit_add_data(tty, from, n); - uncopied = copy_to_user(to, from, n); - zero_buffer(tty, from, n - uncopied); - return uncopied; + memcpy(to, from, n); + zero_buffer(tty, from, n); } /** @@ -1942,15 +1937,16 @@ /** * copy_from_read_buf - copy read data directly * @tty: terminal device - * @b: user data + * @kbp: data * @nr: size of data * * Helper function to speed up n_tty_read. It is only called when - * ICANON is off; it copies characters straight from the tty queue to - * user space directly. It can be profitably called twice; once to - * drain the space from the tail pointer to the (physical) end of the - * buffer, and once to drain the space from the (physical) beginning of - * the buffer to head pointer. + * ICANON is off; it copies characters straight from the tty queue. + * + * It can be profitably called twice; once to drain the space from + * the tail pointer to the (physical) end of the buffer, and once + * to drain the space from the (physical) beginning of the buffer + * to head pointer. * * Called under the ldata->atomic_read_lock sem * @@ -1960,7 +1956,7 @@ */ static int copy_from_read_buf(struct tty_struct *tty, - unsigned char __user **b, + unsigned char **kbp, size_t *nr) { @@ -1976,8 +1972,7 @@ n = min(*nr, n); if (n) { unsigned char *from = read_buf_addr(ldata, tail); - retval = copy_to_user(*b, from, n); - n -= retval; + memcpy(*kbp, from, n); is_eof = n == 1 && *from == EOF_CHAR(tty); tty_audit_add_data(tty, from, n); zero_buffer(tty, from, n); @@ -1986,7 +1981,7 @@ if (L_EXTPROC(tty) && ldata->icanon && is_eof && (head == ldata->read_tail)) n = 0; - *b += n; + *kbp += n; *nr -= n; } return retval; @@ -1995,12 +1990,12 @@ /** * canon_copy_from_read_buf - copy read data in canonical mode * @tty: terminal device - * @b: user data + * @kbp: data * @nr: size of data * * Helper function for n_tty_read. It is only called when ICANON is on; * it copies one line of input up to and including the line-delimiting - * character into the user-space buffer. + * character into the result buffer. * * NB: When termios is changed from non-canonical to canonical mode and * the read buffer contains data, n_tty_set_termios() simulates an EOF @@ -2016,14 +2011,14 @@ */ static int canon_copy_from_read_buf(struct tty_struct *tty, - unsigned char __user **b, + unsigned char **kbp, size_t *nr) { struct n_tty_data *ldata = tty->disc_data; size_t n, size, more, c; size_t eol; size_t tail; - int ret, found = 0; + int found = 0; /* N.B. avoid overrun if nr == 0 */ if (!*nr) @@ -2059,10 +2054,8 @@ n_tty_trace("%s: eol:%zu found:%d n:%zu c:%zu tail:%zu more:%zu\n", __func__, eol, found, n, c, tail, more); - ret = tty_copy_to_user(tty, *b, tail, n); - if (ret) - return -EFAULT; - *b += n; + tty_copy(tty, *kbp, tail, n); + *kbp += n; *nr -= n; if (found) @@ -2079,9 +2072,6 @@ return 0; } -extern ssize_t redirected_tty_write(struct file *, const char __user *, - size_t, loff_t *); - /** * job_control - check job control * @tty: tty @@ -2103,7 +2093,7 @@ /* NOTE: not yet done after every sleep pending a thorough check of the logic of this change. -- jlc */ /* don't stop on /dev/console */ - if (file->f_op->write == redirected_tty_write) + if (file->f_op->write_iter == redirected_tty_write) return 0; return __tty_check_change(tty, SIGTTIN); @@ -2130,10 +2120,11 @@ */ static ssize_t n_tty_read(struct tty_struct *tty, struct file *file, - unsigned char __user *buf, size_t nr) + unsigned char *kbuf, size_t nr, + void **cookie, unsigned long offset) { struct n_tty_data *ldata = tty->disc_data; - unsigned char __user *b = buf; + unsigned char *kb = kbuf; DEFINE_WAIT_FUNC(wait, woken_wake_function); int c; int minimum, time; @@ -2179,17 +2170,13 @@ /* First test for status change. */ if (packet && tty->link->ctrl_status) { unsigned char cs; - if (b != buf) + if (kb != kbuf) break; spin_lock_irq(&tty->link->ctrl_lock); cs = tty->link->ctrl_status; tty->link->ctrl_status = 0; spin_unlock_irq(&tty->link->ctrl_lock); - if (put_user(cs, b)) { - retval = -EFAULT; - break; - } - b++; + *kb++ = cs; nr--; break; } @@ -2232,24 +2219,20 @@ } if (ldata->icanon && !L_EXTPROC(tty)) { - retval = canon_copy_from_read_buf(tty, &b, &nr); + retval = canon_copy_from_read_buf(tty, &kb, &nr); if (retval) break; } else { int uncopied; /* Deal with packet mode. */ - if (packet && b == buf) { - if (put_user(TIOCPKT_DATA, b)) { - retval = -EFAULT; - break; - } - b++; + if (packet && kb == kbuf) { + *kb++ = TIOCPKT_DATA; nr--; } - uncopied = copy_from_read_buf(tty, &b, &nr); - uncopied += copy_from_read_buf(tty, &b, &nr); + uncopied = copy_from_read_buf(tty, &kb, &nr); + uncopied += copy_from_read_buf(tty, &kb, &nr); if (uncopied) { retval = -EFAULT; break; @@ -2258,7 +2241,7 @@ n_tty_check_unthrottle(tty); - if (b - buf >= minimum) + if (kb - kbuf >= minimum) break; if (time) timeout = time; @@ -2270,8 +2253,8 @@ remove_wait_queue(&tty->read_wait, &wait); mutex_unlock(&ldata->atomic_read_lock); - if (b - buf) - retval = b - buf; + if (kb - kbuf) + retval = kb - kbuf; return retval; } @@ -2307,7 +2290,7 @@ ssize_t retval = 0; /* Job control check -- must be done at start (POSIX.1 7.1.1.4). */ - if (L_TOSTOP(tty) && file->f_op->write != redirected_tty_write) { + if (L_TOSTOP(tty) && file->f_op->write_iter != redirected_tty_write) { retval = tty_check_change(tty); if (retval) return retval; --- linux-azure-5.8-5.8.0.orig/drivers/tty/pty.c +++ linux-azure-5.8-5.8.0/drivers/tty/pty.c @@ -120,10 +120,10 @@ spin_lock_irqsave(&to->port->lock, flags); /* Stuff the data into the input queue of the other end */ c = tty_insert_flip_string(to->port, buf, c); + spin_unlock_irqrestore(&to->port->lock, flags); /* And shovel */ if (c) tty_flip_buffer_push(to->port); - spin_unlock_irqrestore(&to->port->lock, flags); } return c; } --- linux-azure-5.8-5.8.0.orig/drivers/tty/serial/21285.c +++ linux-azure-5.8-5.8.0/drivers/tty/serial/21285.c @@ -50,25 +50,25 @@ static bool is_enabled(struct uart_port *port, int bit) { - unsigned long private_data = (unsigned long)port->private_data; + unsigned long *private_data = (unsigned long *)&port->private_data; - if (test_bit(bit, &private_data)) + if (test_bit(bit, private_data)) return true; return false; } static void enable(struct uart_port *port, int bit) { - unsigned long private_data = (unsigned long)port->private_data; + unsigned long *private_data = (unsigned long *)&port->private_data; - set_bit(bit, &private_data); + set_bit(bit, private_data); } static void disable(struct uart_port *port, int bit) { - unsigned long private_data = (unsigned long)port->private_data; + unsigned long *private_data = (unsigned long *)&port->private_data; - clear_bit(bit, &private_data); + clear_bit(bit, private_data); } #define is_tx_enabled(port) is_enabled(port, tx_enabled_bit) --- linux-azure-5.8-5.8.0.orig/drivers/tty/serial/8250/8250_exar.c +++ linux-azure-5.8-5.8.0/drivers/tty/serial/8250/8250_exar.c @@ -744,6 +744,24 @@ .exit = pci_xr17v35x_exit, }; +static const struct exar8250_board pbn_fastcom35x_2 = { + .num_ports = 2, + .setup = pci_xr17v35x_setup, + .exit = pci_xr17v35x_exit, +}; + +static const struct exar8250_board pbn_fastcom35x_4 = { + .num_ports = 4, + .setup = pci_xr17v35x_setup, + .exit = pci_xr17v35x_exit, +}; + +static const struct exar8250_board pbn_fastcom35x_8 = { + .num_ports = 8, + .setup = pci_xr17v35x_setup, + .exit = pci_xr17v35x_exit, +}; + static const struct exar8250_board pbn_exar_XR17V4358 = { .num_ports = 12, .setup = pci_xr17v35x_setup, @@ -811,9 +829,9 @@ EXAR_DEVICE(EXAR, XR17V358, pbn_exar_XR17V35x), EXAR_DEVICE(EXAR, XR17V4358, pbn_exar_XR17V4358), EXAR_DEVICE(EXAR, XR17V8358, pbn_exar_XR17V8358), - EXAR_DEVICE(COMMTECH, 4222PCIE, pbn_exar_XR17V35x), - EXAR_DEVICE(COMMTECH, 4224PCIE, pbn_exar_XR17V35x), - EXAR_DEVICE(COMMTECH, 4228PCIE, pbn_exar_XR17V35x), + EXAR_DEVICE(COMMTECH, 4222PCIE, pbn_fastcom35x_2), + EXAR_DEVICE(COMMTECH, 4224PCIE, pbn_fastcom35x_4), + EXAR_DEVICE(COMMTECH, 4228PCIE, pbn_fastcom35x_8), EXAR_DEVICE(COMMTECH, 4222PCI335, pbn_fastcom335_2), EXAR_DEVICE(COMMTECH, 4224PCI335, pbn_fastcom335_4), --- linux-azure-5.8-5.8.0.orig/drivers/tty/serial/8250/8250_mtk.c +++ linux-azure-5.8-5.8.0/drivers/tty/serial/8250/8250_mtk.c @@ -317,7 +317,7 @@ */ baud = tty_termios_baud_rate(termios); - serial8250_do_set_termios(port, termios, old); + serial8250_do_set_termios(port, termios, NULL); tty_termios_encode_baud_rate(termios, baud, baud); @@ -568,15 +568,22 @@ pm_runtime_enable(&pdev->dev); err = mtk8250_runtime_resume(&pdev->dev); if (err) - return err; + goto err_pm_disable; data->line = serial8250_register_8250_port(&uart); - if (data->line < 0) - return data->line; + if (data->line < 0) { + err = data->line; + goto err_pm_disable; + } data->rx_wakeup_irq = platform_get_irq_optional(pdev, 1); return 0; + +err_pm_disable: + pm_runtime_disable(&pdev->dev); + + return err; } static int mtk8250_remove(struct platform_device *pdev) --- linux-azure-5.8-5.8.0.orig/drivers/tty/serial/8250/8250_omap.c +++ linux-azure-5.8-5.8.0/drivers/tty/serial/8250/8250_omap.c @@ -184,11 +184,6 @@ struct omap8250_priv *priv) { u8 timeout = 255; - u8 old_mdr1; - - old_mdr1 = serial_in(up, UART_OMAP_MDR1); - if (old_mdr1 == priv->mdr1) - return; serial_out(up, UART_OMAP_MDR1, priv->mdr1); udelay(2); --- linux-azure-5.8-5.8.0.orig/drivers/tty/serial/8250/8250_pci.c +++ linux-azure-5.8-5.8.0/drivers/tty/serial/8250/8250_pci.c @@ -5566,6 +5566,17 @@ PCI_ANY_ID, PCI_ANY_ID, 0, 0, pbn_wch384_4 }, + /* + * Realtek RealManage + */ + { PCI_VENDOR_ID_REALTEK, 0x816a, + PCI_ANY_ID, PCI_ANY_ID, + 0, 0, pbn_b0_1_115200 }, + + { PCI_VENDOR_ID_REALTEK, 0x816b, + PCI_ANY_ID, PCI_ANY_ID, + 0, 0, pbn_b0_1_115200 }, + /* Fintek PCI serial cards */ { PCI_DEVICE(0x1c29, 0x1104), .driver_data = pbn_fintek_4 }, { PCI_DEVICE(0x1c29, 0x1108), .driver_data = pbn_fintek_8 }, --- linux-azure-5.8-5.8.0.orig/drivers/tty/serial/8250/8250_port.c +++ linux-azure-5.8-5.8.0/drivers/tty/serial/8250/8250_port.c @@ -2274,6 +2274,10 @@ if (port->irq && !(up->port.flags & UPF_NO_THRE_TEST)) { unsigned char iir1; + + if (port->irqflags & IRQF_SHARED) + disable_irq_nosync(port->irq); + /* * Test for UARTs that do not reassert THRE when the * transmitter is idle and the interrupt has already @@ -2283,8 +2287,6 @@ * allow register changes to become visible. */ spin_lock_irqsave(&port->lock, flags); - if (up->port.irqflags & IRQF_SHARED) - disable_irq_nosync(port->irq); wait_for_xmitr(up, UART_LSR_THRE); serial_port_out_sync(port, UART_IER, UART_IER_THRI); @@ -2296,9 +2298,10 @@ iir = serial_port_in(port, UART_IIR); serial_port_out(port, UART_IER, 0); + spin_unlock_irqrestore(&port->lock, flags); + if (port->irqflags & IRQF_SHARED) enable_irq(port->irq); - spin_unlock_irqrestore(&port->lock, flags); /* * If the interrupt is not reasserted, or we otherwise --- linux-azure-5.8-5.8.0.orig/drivers/tty/serial/Kconfig +++ linux-azure-5.8-5.8.0/drivers/tty/serial/Kconfig @@ -8,6 +8,7 @@ config SERIAL_EARLYCON bool + depends on SERIAL_CORE help Support for early consoles with the earlycon parameter. This enables the console before standard serial driver is probed. The console is --- linux-azure-5.8-5.8.0.orig/drivers/tty/serial/amba-pl011.c +++ linux-azure-5.8-5.8.0/drivers/tty/serial/amba-pl011.c @@ -308,8 +308,9 @@ */ static int pl011_fifo_to_tty(struct uart_amba_port *uap) { - u16 status; unsigned int ch, flag, fifotaken; + int sysrq; + u16 status; for (fifotaken = 0; fifotaken != 256; fifotaken++) { status = pl011_read(uap, REG_FR); @@ -344,10 +345,12 @@ flag = TTY_FRAME; } - if (uart_handle_sysrq_char(&uap->port, ch & 255)) - continue; + spin_unlock(&uap->port.lock); + sysrq = uart_handle_sysrq_char(&uap->port, ch & 255); + spin_lock(&uap->port.lock); - uart_insert_char(&uap->port, ch, UART011_DR_OE, ch, flag); + if (!sysrq) + uart_insert_char(&uap->port, ch, UART011_DR_OE, ch, flag); } return fifotaken; @@ -2241,9 +2244,8 @@ clk_disable(uap->clk); } -static void __init -pl011_console_get_options(struct uart_amba_port *uap, int *baud, - int *parity, int *bits) +static void pl011_console_get_options(struct uart_amba_port *uap, int *baud, + int *parity, int *bits) { if (pl011_read(uap, REG_CR) & UART01x_CR_UARTEN) { unsigned int lcr_h, ibrd, fbrd; @@ -2276,7 +2278,7 @@ } } -static int __init pl011_console_setup(struct console *co, char *options) +static int pl011_console_setup(struct console *co, char *options) { struct uart_amba_port *uap; int baud = 38400; @@ -2344,8 +2346,8 @@ * * Returns 0 if console matches; otherwise non-zero to use default matching */ -static int __init pl011_console_match(struct console *co, char *name, int idx, - char *options) +static int pl011_console_match(struct console *co, char *name, int idx, + char *options) { unsigned char iotype; resource_size_t addr; @@ -2616,7 +2618,7 @@ static int pl011_register_port(struct uart_amba_port *uap) { - int ret; + int ret, i; /* Ensure interrupts from this UART are masked and cleared */ pl011_write(0, uap, REG_IMSC); @@ -2627,6 +2629,9 @@ if (ret < 0) { dev_err(uap->port.dev, "Failed to register AMBA-PL011 driver\n"); + for (i = 0; i < ARRAY_SIZE(amba_ports); i++) + if (amba_ports[i] == uap) + amba_ports[i] = NULL; return ret; } } --- linux-azure-5.8-5.8.0.orig/drivers/tty/serial/ar933x_uart.c +++ linux-azure-5.8-5.8.0/drivers/tty/serial/ar933x_uart.c @@ -789,8 +789,10 @@ goto err_disable_clk; up->gpios = mctrl_gpio_init(port, 0); - if (IS_ERR(up->gpios) && PTR_ERR(up->gpios) != -ENOSYS) - return PTR_ERR(up->gpios); + if (IS_ERR(up->gpios) && PTR_ERR(up->gpios) != -ENOSYS) { + ret = PTR_ERR(up->gpios); + goto err_disable_clk; + } up->rts_gpiod = mctrl_gpio_to_gpiod(up->gpios, UART_GPIO_RTS); --- linux-azure-5.8-5.8.0.orig/drivers/tty/serial/fsl_lpuart.c +++ linux-azure-5.8-5.8.0/drivers/tty/serial/fsl_lpuart.c @@ -314,9 +314,10 @@ /* Forward declare this for the dma callbacks*/ static void lpuart_dma_tx_complete(void *arg); -static inline bool is_ls1028a_lpuart(struct lpuart_port *sport) +static inline bool is_layerscape_lpuart(struct lpuart_port *sport) { - return sport->devtype == LS1028A_LPUART; + return (sport->devtype == LS1021A_LPUART || + sport->devtype == LS1028A_LPUART); } static inline bool is_imx8qxp_lpuart(struct lpuart_port *sport) @@ -649,26 +650,24 @@ spin_lock_irqsave(&sport->port.lock, flags); /* Disable Rx & Tx */ - lpuart32_write(&sport->port, UARTCTRL, 0); + lpuart32_write(&sport->port, 0, UARTCTRL); temp = lpuart32_read(&sport->port, UARTFIFO); /* Enable Rx and Tx FIFO */ - lpuart32_write(&sport->port, UARTFIFO, - temp | UARTFIFO_RXFE | UARTFIFO_TXFE); + lpuart32_write(&sport->port, temp | UARTFIFO_RXFE | UARTFIFO_TXFE, UARTFIFO); /* flush Tx and Rx FIFO */ - lpuart32_write(&sport->port, UARTFIFO, - UARTFIFO_TXFLUSH | UARTFIFO_RXFLUSH); + lpuart32_write(&sport->port, UARTFIFO_TXFLUSH | UARTFIFO_RXFLUSH, UARTFIFO); /* explicitly clear RDRF */ if (lpuart32_read(&sport->port, UARTSTAT) & UARTSTAT_RDRF) { lpuart32_read(&sport->port, UARTDATA); - lpuart32_write(&sport->port, UARTFIFO, UARTFIFO_RXUF); + lpuart32_write(&sport->port, UARTFIFO_RXUF, UARTFIFO); } /* Enable Rx and Tx */ - lpuart32_write(&sport->port, UARTCTRL, UARTCTRL_RE | UARTCTRL_TE); + lpuart32_write(&sport->port, UARTCTRL_RE | UARTCTRL_TE, UARTCTRL); spin_unlock_irqrestore(&sport->port.lock, flags); return 0; @@ -677,12 +676,12 @@ static void lpuart32_poll_put_char(struct uart_port *port, unsigned char c) { lpuart32_wait_bit_set(port, UARTSTAT, UARTSTAT_TDRE); - lpuart32_write(port, UARTDATA, c); + lpuart32_write(port, c, UARTDATA); } static int lpuart32_poll_get_char(struct uart_port *port) { - if (!(lpuart32_read(port, UARTSTAT) & UARTSTAT_RDRF)) + if (!(lpuart32_read(port, UARTWATER) >> UARTWATER_RXCNT_OFF)) return NO_POLL_CHAR; return lpuart32_read(port, UARTDATA); @@ -1646,11 +1645,11 @@ UARTFIFO_FIFOSIZE_MASK); /* - * The LS1028A has a fixed length of 16 words. Although it supports the - * RX/TXSIZE fields their encoding is different. Eg the reference manual - * states 0b101 is 16 words. + * The LS1021A and LS1028A have a fixed FIFO depth of 16 words. + * Although they support the RX/TXSIZE fields, their encoding is + * different. Eg the reference manual states 0b101 is 16 words. */ - if (is_ls1028a_lpuart(sport)) { + if (is_layerscape_lpuart(sport)) { sport->rxfifo_size = 16; sport->txfifo_size = 16; sport->port.fifosize = sport->txfifo_size; --- linux-azure-5.8-5.8.0.orig/drivers/tty/serial/imx.c +++ linux-azure-5.8-5.8.0/drivers/tty/serial/imx.c @@ -873,8 +873,14 @@ struct imx_port *sport = dev_id; unsigned int usr1, usr2, ucr1, ucr2, ucr3, ucr4; irqreturn_t ret = IRQ_NONE; + unsigned long flags = 0; - spin_lock(&sport->port.lock); + /* + * IRQs might not be disabled upon entering this interrupt handler, + * e.g. when interrupt handlers are forced to be threaded. To support + * this scenario as well, disable IRQs when acquiring the spinlock. + */ + spin_lock_irqsave(&sport->port.lock, flags); usr1 = imx_uart_readl(sport, USR1); usr2 = imx_uart_readl(sport, USR2); @@ -944,7 +950,7 @@ ret = IRQ_HANDLED; } - spin_unlock(&sport->port.lock); + spin_unlock_irqrestore(&sport->port.lock, flags); return ret; } @@ -1937,16 +1943,6 @@ unsigned int ucr1; unsigned long flags = 0; int locked = 1; - int retval; - - retval = clk_enable(sport->clk_per); - if (retval) - return; - retval = clk_enable(sport->clk_ipg); - if (retval) { - clk_disable(sport->clk_per); - return; - } if (sport->port.sysrq) locked = 0; @@ -1982,9 +1978,6 @@ if (locked) spin_unlock_irqrestore(&sport->port.lock, flags); - - clk_disable(sport->clk_ipg); - clk_disable(sport->clk_per); } /* @@ -2085,15 +2078,14 @@ retval = uart_set_options(&sport->port, co, baud, parity, bits, flow); - clk_disable(sport->clk_ipg); if (retval) { - clk_unprepare(sport->clk_ipg); + clk_disable_unprepare(sport->clk_ipg); goto error_console; } - retval = clk_prepare(sport->clk_per); + retval = clk_prepare_enable(sport->clk_per); if (retval) - clk_unprepare(sport->clk_ipg); + clk_disable_unprepare(sport->clk_ipg); error_console: return retval; --- linux-azure-5.8-5.8.0.orig/drivers/tty/serial/mvebu-uart.c +++ linux-azure-5.8-5.8.0/drivers/tty/serial/mvebu-uart.c @@ -648,6 +648,14 @@ (val & STAT_TX_RDY(port)), 1, 10000); } +static void wait_for_xmite(struct uart_port *port) +{ + u32 val; + + readl_poll_timeout_atomic(port->membase + UART_STAT, val, + (val & STAT_TX_EMP), 1, 10000); +} + static void mvebu_uart_console_putchar(struct uart_port *port, int ch) { wait_for_xmitr(port); @@ -675,7 +683,7 @@ uart_console_write(port, s, count, mvebu_uart_console_putchar); - wait_for_xmitr(port); + wait_for_xmite(port); if (ier) writel(ier, port->membase + UART_CTRL(port)); --- linux-azure-5.8-5.8.0.orig/drivers/tty/serial/pmac_zilog.c +++ linux-azure-5.8-5.8.0/drivers/tty/serial/pmac_zilog.c @@ -1692,22 +1692,26 @@ #else +/* On PCI PowerMacs, pmz_probe() does an explicit search of the OpenFirmware + * tree to obtain the device_nodes needed to start the console before the + * macio driver. On Macs without OpenFirmware, global platform_devices take + * the place of those device_nodes. + */ extern struct platform_device scc_a_pdev, scc_b_pdev; static int __init pmz_init_port(struct uart_pmac_port *uap) { - struct resource *r_ports; - int irq; + struct resource *r_ports, *r_irq; r_ports = platform_get_resource(uap->pdev, IORESOURCE_MEM, 0); - irq = platform_get_irq(uap->pdev, 0); - if (!r_ports || irq <= 0) + r_irq = platform_get_resource(uap->pdev, IORESOURCE_IRQ, 0); + if (!r_ports || !r_irq) return -ENODEV; uap->port.mapbase = r_ports->start; uap->port.membase = (unsigned char __iomem *) r_ports->start; uap->port.iotype = UPIO_MEM; - uap->port.irq = irq; + uap->port.irq = r_irq->start; uap->port.uartclk = ZS_CLOCK; uap->port.fifosize = 1; uap->port.ops = &pmz_pops; --- linux-azure-5.8-5.8.0.orig/drivers/tty/serial/qcom_geni_serial.c +++ linux-azure-5.8-5.8.0/drivers/tty/serial/qcom_geni_serial.c @@ -954,7 +954,7 @@ sampling_rate = UART_OVERSAMPLING; /* Sampling rate is halved for IP versions >= 2.5 */ ver = geni_se_get_qup_hw_version(&port->se); - if (GENI_SE_VERSION_MAJOR(ver) >= 2 && GENI_SE_VERSION_MINOR(ver) >= 5) + if (ver >= QUP_SE_VERSION_2_5) sampling_rate /= 2; clk_rate = get_clk_div_rate(baud, sampling_rate, &clk_div); @@ -1047,7 +1047,7 @@ } #ifdef CONFIG_SERIAL_QCOM_GENI_CONSOLE -static int __init qcom_geni_console_setup(struct console *co, char *options) +static int qcom_geni_console_setup(struct console *co, char *options) { struct uart_port *uport; struct qcom_geni_serial_port *port; --- linux-azure-5.8-5.8.0.orig/drivers/tty/serial/samsung_tty.c +++ linux-azure-5.8-5.8.0/drivers/tty/serial/samsung_tty.c @@ -1911,9 +1911,11 @@ ourport->tx_irq = ret + 1; } - ret = platform_get_irq(platdev, 1); - if (ret > 0) - ourport->tx_irq = ret; + if (!s3c24xx_serial_has_interrupt_mask(port)) { + ret = platform_get_irq(platdev, 1); + if (ret > 0) + ourport->tx_irq = ret; + } /* * DMA is currently supported only on DT platforms, if DMA properties * are specified. --- linux-azure-5.8-5.8.0.orig/drivers/tty/serial/serial_core.c +++ linux-azure-5.8-5.8.0/drivers/tty/serial/serial_core.c @@ -1466,6 +1466,10 @@ { struct uart_state *state = tty->driver_data; struct uart_port *uport; + struct tty_port *port = &state->port; + + if (!tty_port_initialized(port)) + return; mutex_lock(&state->port.mutex); uport = uart_port_check(state); @@ -1914,24 +1918,12 @@ return uart_console(port) && (port->cons->flags & CON_ENABLED); } -static void __uart_port_spin_lock_init(struct uart_port *port) +static void uart_port_spin_lock_init(struct uart_port *port) { spin_lock_init(&port->lock); lockdep_set_class(&port->lock, &port_lock_key); } -/* - * Ensure that the serial console lock is initialised early. - * If this port is a console, then the spinlock is already initialised. - */ -static inline void uart_port_spin_lock_init(struct uart_port *port) -{ - if (uart_console(port)) - return; - - __uart_port_spin_lock_init(port); -} - #if defined(CONFIG_SERIAL_CORE_CONSOLE) || defined(CONFIG_CONSOLE_POLL) /** * uart_console_write - write a console message to a serial port @@ -2084,7 +2076,15 @@ struct ktermios termios; static struct ktermios dummy; - uart_port_spin_lock_init(port); + /* + * Ensure that the serial-console lock is initialised early. + * + * Note that the console-enabled check is needed because of kgdboc, + * which can end up calling uart_set_options() for an already enabled + * console via tty_find_polling_driver() and uart_poll_init(). + */ + if (!uart_console_enabled(port) && !port->console_reinit) + uart_port_spin_lock_init(port); memset(&termios, 0, sizeof(struct ktermios)); @@ -2376,13 +2376,6 @@ uart_change_pm(state, UART_PM_STATE_ON); /* - * If this driver supports console, and it hasn't been - * successfully registered yet, initialise spin lock for it. - */ - if (port->cons && !(port->cons->flags & CON_ENABLED)) - __uart_port_spin_lock_init(port); - - /* * Ensure that the modem control lines are de-activated. * keep the DTR setting that is set in uart_set_options() * We probably don't need a spinlock around this, but @@ -2798,10 +2791,12 @@ if (oldconsole && !newconsole) { ret = unregister_console(uport->cons); } else if (!oldconsole && newconsole) { - if (uart_console(uport)) + if (uart_console(uport)) { + uport->console_reinit = 1; register_console(uport->cons); - else + } else { ret = -ENOENT; + } } } else { ret = -ENXIO; @@ -2897,7 +2892,12 @@ goto out; } - uart_port_spin_lock_init(uport); + /* + * If this port is in use as a console then the spinlock is already + * initialised. + */ + if (!uart_console_enabled(uport)) + uart_port_spin_lock_init(uport); if (uport->cons && uport->dev) of_console_check(uport->dev->of_node, uport->cons->name, uport->line); --- linux-azure-5.8-5.8.0.orig/drivers/tty/serial/serial_txx9.c +++ linux-azure-5.8-5.8.0/drivers/tty/serial/serial_txx9.c @@ -1280,6 +1280,9 @@ #ifdef ENABLE_SERIAL_TXX9_PCI ret = pci_register_driver(&serial_txx9_pci_driver); + if (ret) { + platform_driver_unregister(&serial_txx9_plat_driver); + } #endif if (ret == 0) goto out; --- linux-azure-5.8-5.8.0.orig/drivers/tty/serial/sifive.c +++ linux-azure-5.8-5.8.0/drivers/tty/serial/sifive.c @@ -1000,6 +1000,7 @@ /* Set up clock divider */ ssp->clkin_rate = clk_get_rate(ssp->clk); ssp->baud_rate = SIFIVE_DEFAULT_BAUD_RATE; + ssp->port.uartclk = ssp->baud_rate * 16; __ssp_update_div(ssp); platform_set_drvdata(pdev, ssp); --- linux-azure-5.8-5.8.0.orig/drivers/tty/serial/stm32-usart.c +++ linux-azure-5.8-5.8.0/drivers/tty/serial/stm32-usart.c @@ -962,7 +962,7 @@ return ret; if (stm32port->info->cfg.has_wakeup) { - stm32port->wakeirq = platform_get_irq(pdev, 1); + stm32port->wakeirq = platform_get_irq_optional(pdev, 1); if (stm32port->wakeirq <= 0 && stm32port->wakeirq != -ENXIO) return stm32port->wakeirq ? : -ENODEV; } --- linux-azure-5.8-5.8.0.orig/drivers/tty/tty_io.c +++ linux-azure-5.8-5.8.0/drivers/tty/tty_io.c @@ -142,13 +142,10 @@ /* Mutex to protect creating and releasing a tty */ DEFINE_MUTEX(tty_mutex); -static ssize_t tty_read(struct file *, char __user *, size_t, loff_t *); -static ssize_t tty_write(struct file *, const char __user *, size_t, loff_t *); -ssize_t redirected_tty_write(struct file *, const char __user *, - size_t, loff_t *); +static ssize_t tty_read(struct kiocb *, struct iov_iter *); +static ssize_t tty_write(struct kiocb *, struct iov_iter *); static __poll_t tty_poll(struct file *, poll_table *); static int tty_open(struct inode *, struct file *); -long tty_ioctl(struct file *file, unsigned int cmd, unsigned long arg); #ifdef CONFIG_COMPAT static long tty_compat_ioctl(struct file *file, unsigned int cmd, unsigned long arg); @@ -438,8 +435,7 @@ return 0; } -static ssize_t hung_up_tty_write(struct file *file, const char __user *buf, - size_t count, loff_t *ppos) +static ssize_t hung_up_tty_write(struct kiocb *iocb, struct iov_iter *from) { return -EIO; } @@ -477,8 +473,10 @@ static const struct file_operations tty_fops = { .llseek = no_llseek, - .read = tty_read, - .write = tty_write, + .read_iter = tty_read, + .write_iter = tty_write, + .splice_read = generic_file_splice_read, + .splice_write = iter_file_splice_write, .poll = tty_poll, .unlocked_ioctl = tty_ioctl, .compat_ioctl = tty_compat_ioctl, @@ -490,8 +488,10 @@ static const struct file_operations console_fops = { .llseek = no_llseek, - .read = tty_read, - .write = redirected_tty_write, + .read_iter = tty_read, + .write_iter = redirected_tty_write, + .splice_read = generic_file_splice_read, + .splice_write = iter_file_splice_write, .poll = tty_poll, .unlocked_ioctl = tty_ioctl, .compat_ioctl = tty_compat_ioctl, @@ -503,7 +503,7 @@ static const struct file_operations hung_up_tty_fops = { .llseek = no_llseek, .read = hung_up_tty_read, - .write = hung_up_tty_write, + .write_iter = hung_up_tty_write, .poll = hung_up_tty_poll, .unlocked_ioctl = hung_up_tty_ioctl, .compat_ioctl = hung_up_tty_compat_ioctl, @@ -607,9 +607,9 @@ /* This breaks for file handles being sent over AF_UNIX sockets ? */ list_for_each_entry(priv, &tty->tty_files, list) { filp = priv->file; - if (filp->f_op->write == redirected_tty_write) + if (filp->f_op->write_iter == redirected_tty_write) cons_filp = filp; - if (filp->f_op->write != tty_write) + if (filp->f_op->write_iter != tty_write) continue; closecount++; __tty_fasync(-1, filp, 0); /* can't block */ @@ -832,6 +832,65 @@ time->tv_sec = sec; } +/* + * Iterate on the ldisc ->read() function until we've gotten all + * the data the ldisc has for us. + * + * The "cookie" is something that the ldisc read function can fill + * in to let us know that there is more data to be had. + * + * We promise to continue to call the ldisc until it stops returning + * data or clears the cookie. The cookie may be something that the + * ldisc maintains state for and needs to free. + */ +static int iterate_tty_read(struct tty_ldisc *ld, struct tty_struct *tty, + struct file *file, struct iov_iter *to) +{ + int retval = 0; + void *cookie = NULL; + unsigned long offset = 0; + char kernel_buf[64]; + size_t count = iov_iter_count(to); + + do { + int size, copied; + + size = count > sizeof(kernel_buf) ? sizeof(kernel_buf) : count; + size = ld->ops->read(tty, file, kernel_buf, size, &cookie, offset); + if (!size) + break; + + /* + * A ldisc read error return will override any previously copied + * data (eg -EOVERFLOW from HDLC) + */ + if (size < 0) { + memzero_explicit(kernel_buf, sizeof(kernel_buf)); + return size; + } + + copied = copy_to_iter(kernel_buf, size, to); + offset += copied; + count -= copied; + + /* + * If the user copy failed, we still need to do another ->read() + * call if we had a cookie to let the ldisc clear up. + * + * But make sure size is zeroed. + */ + if (unlikely(copied != size)) { + count = 0; + retval = -EFAULT; + } + } while (cookie); + + /* We always clear tty buffer in case they contained passwords */ + memzero_explicit(kernel_buf, sizeof(kernel_buf)); + return offset ? offset : retval; +} + + /** * tty_read - read method for tty device files * @file: pointer to tty file @@ -847,10 +906,10 @@ * read calls may be outstanding in parallel. */ -static ssize_t tty_read(struct file *file, char __user *buf, size_t count, - loff_t *ppos) +static ssize_t tty_read(struct kiocb *iocb, struct iov_iter *to) { int i; + struct file *file = iocb->ki_filp; struct inode *inode = file_inode(file); struct tty_struct *tty = file_tty(file); struct tty_ldisc *ld; @@ -863,12 +922,9 @@ /* We want to wait for the line discipline to sort out in this situation */ ld = tty_ldisc_ref_wait(tty); - if (!ld) - return hung_up_tty_read(file, buf, count, ppos); - if (ld->ops->read) - i = ld->ops->read(tty, file, buf, count); - else - i = -EIO; + i = -EIO; + if (ld && ld->ops->read) + i = iterate_tty_read(ld, tty, file, to); tty_ldisc_deref(ld); if (i > 0) @@ -902,9 +958,9 @@ ssize_t (*write)(struct tty_struct *, struct file *, const unsigned char *, size_t), struct tty_struct *tty, struct file *file, - const char __user *buf, - size_t count) + struct iov_iter *from) { + size_t count = iov_iter_count(from); ssize_t ret, written = 0; unsigned int chunk; @@ -956,14 +1012,23 @@ size_t size = count; if (size > chunk) size = chunk; + ret = -EFAULT; - if (copy_from_user(tty->write_buf, buf, size)) + if (copy_from_iter(tty->write_buf, size, from) != size) break; + ret = write(tty, file, tty->write_buf, size); if (ret <= 0) break; + written += ret; - buf += ret; + if (ret > size) + break; + + /* FIXME! Have Al check this! */ + if (ret != size) + iov_iter_revert(from, size-ret); + count -= ret; if (!count) break; @@ -1023,8 +1088,7 @@ * write method will not be invoked in parallel for each device. */ -static ssize_t tty_write(struct file *file, const char __user *buf, - size_t count, loff_t *ppos) +static ssize_t file_tty_write(struct file *file, struct kiocb *iocb, struct iov_iter *from) { struct tty_struct *tty = file_tty(file); struct tty_ldisc *ld; @@ -1039,17 +1103,21 @@ tty_err(tty, "missing write_room method\n"); ld = tty_ldisc_ref_wait(tty); if (!ld) - return hung_up_tty_write(file, buf, count, ppos); + return hung_up_tty_write(iocb, from); if (!ld->ops->write) ret = -EIO; else - ret = do_tty_write(ld->ops->write, tty, file, buf, count); + ret = do_tty_write(ld->ops->write, tty, file, from); tty_ldisc_deref(ld); return ret; } -ssize_t redirected_tty_write(struct file *file, const char __user *buf, - size_t count, loff_t *ppos) +static ssize_t tty_write(struct kiocb *iocb, struct iov_iter *from) +{ + return file_tty_write(iocb->ki_filp, iocb, from); +} + +ssize_t redirected_tty_write(struct kiocb *iocb, struct iov_iter *iter) { struct file *p = NULL; @@ -1058,13 +1126,17 @@ p = get_file(redirect); spin_unlock(&redirect_lock); + /* + * We know the redirected tty is just another tty, we can can + * call file_tty_write() directly with that file pointer. + */ if (p) { ssize_t res; - res = vfs_write(p, buf, count, &p->f_pos); + res = file_tty_write(p, iocb, iter); fput(p); return res; } - return tty_write(file, buf, count, ppos); + return tty_write(iocb, iter); } /** @@ -1514,10 +1586,12 @@ tty->ops->shutdown(tty); tty_save_termios(tty); tty_driver_remove_tty(tty->driver, tty); - tty->port->itty = NULL; + if (tty->port) + tty->port->itty = NULL; if (tty->link) tty->link->port->itty = NULL; - tty_buffer_cancel_work(tty->port); + if (tty->port) + tty_buffer_cancel_work(tty->port); if (tty->link) tty_buffer_cancel_work(tty->link->port); @@ -2292,7 +2366,7 @@ { if (!capable(CAP_SYS_ADMIN)) return -EPERM; - if (file->f_op->write == redirected_tty_write) { + if (file->f_op->write_iter == redirected_tty_write) { struct file *f; spin_lock(&redirect_lock); f = redirect; @@ -2302,6 +2376,12 @@ fput(f); return 0; } + if (file->f_op->write_iter != tty_write) + return -ENOTTY; + if (!(file->f_mode & FMODE_WRITE)) + return -EBADF; + if (!(file->f_mode & FMODE_CAN_WRITE)) + return -EINVAL; spin_lock(&redirect_lock); if (redirect) { spin_unlock(&redirect_lock); @@ -2865,7 +2945,7 @@ static int this_tty(const void *t, struct file *file, unsigned fd) { - if (likely(file->f_op->read != tty_read)) + if (likely(file->f_op->read_iter != tty_read)) return 0; return file_tty(file) != t ? 0 : fd + 1; } @@ -2897,10 +2977,14 @@ struct task_struct *g, *p; struct pid *session; int i; + unsigned long flags; if (!tty) return; - session = tty->session; + + spin_lock_irqsave(&tty->ctrl_lock, flags); + session = get_pid(tty->session); + spin_unlock_irqrestore(&tty->ctrl_lock, flags); tty_ldisc_flush(tty); @@ -2932,6 +3016,7 @@ task_unlock(p); } while_each_thread(g, p); read_unlock(&tasklist_lock); + put_pid(session); #endif } --- linux-azure-5.8-5.8.0.orig/drivers/tty/tty_jobctrl.c +++ linux-azure-5.8-5.8.0/drivers/tty/tty_jobctrl.c @@ -103,8 +103,8 @@ put_pid(tty->session); put_pid(tty->pgrp); tty->pgrp = get_pid(task_pgrp(current)); - spin_unlock_irqrestore(&tty->ctrl_lock, flags); tty->session = get_pid(task_session(current)); + spin_unlock_irqrestore(&tty->ctrl_lock, flags); if (current->signal->tty) { tty_debug(tty, "current tty %s not NULL!!\n", current->signal->tty->name); @@ -293,20 +293,23 @@ spin_lock_irq(¤t->sighand->siglock); put_pid(current->signal->tty_old_pgrp); current->signal->tty_old_pgrp = NULL; - tty = tty_kref_get(current->signal->tty); + spin_unlock_irq(¤t->sighand->siglock); + if (tty) { unsigned long flags; + + tty_lock(tty); spin_lock_irqsave(&tty->ctrl_lock, flags); put_pid(tty->session); put_pid(tty->pgrp); tty->session = NULL; tty->pgrp = NULL; spin_unlock_irqrestore(&tty->ctrl_lock, flags); + tty_unlock(tty); tty_kref_put(tty); } - spin_unlock_irq(¤t->sighand->siglock); /* Now clear signal->tty under the lock */ read_lock(&tasklist_lock); session_clear_tty(task_session(current)); @@ -477,14 +480,19 @@ return -ENOTTY; if (retval) return retval; - if (!current->signal->tty || - (current->signal->tty != real_tty) || - (real_tty->session != task_session(current))) - return -ENOTTY; + if (get_user(pgrp_nr, p)) return -EFAULT; if (pgrp_nr < 0) return -EINVAL; + + spin_lock_irq(&real_tty->ctrl_lock); + if (!current->signal->tty || + (current->signal->tty != real_tty) || + (real_tty->session != task_session(current))) { + retval = -ENOTTY; + goto out_unlock_ctrl; + } rcu_read_lock(); pgrp = find_vpid(pgrp_nr); retval = -ESRCH; @@ -494,12 +502,12 @@ if (session_of_pgrp(pgrp) != task_session(current)) goto out_unlock; retval = 0; - spin_lock_irq(&tty->ctrl_lock); put_pid(real_tty->pgrp); real_tty->pgrp = get_pid(pgrp); - spin_unlock_irq(&tty->ctrl_lock); out_unlock: rcu_read_unlock(); +out_unlock_ctrl: + spin_unlock_irq(&real_tty->ctrl_lock); return retval; } @@ -511,20 +519,30 @@ * * Obtain the session id of the tty. If there is no session * return an error. - * - * Locking: none. Reference to current->signal->tty is safe. */ static int tiocgsid(struct tty_struct *tty, struct tty_struct *real_tty, pid_t __user *p) { + unsigned long flags; + pid_t sid; + /* * (tty == real_tty) is a cheap way of * testing if the tty is NOT a master pty. */ if (tty == real_tty && current->signal->tty != real_tty) return -ENOTTY; + + spin_lock_irqsave(&real_tty->ctrl_lock, flags); if (!real_tty->session) - return -ENOTTY; - return put_user(pid_vnr(real_tty->session), p); + goto err; + sid = pid_vnr(real_tty->session); + spin_unlock_irqrestore(&real_tty->ctrl_lock, flags); + + return put_user(sid, p); + +err: + spin_unlock_irqrestore(&real_tty->ctrl_lock, flags); + return -ENOTTY; } /* --- linux-azure-5.8-5.8.0.orig/drivers/tty/vt/keyboard.c +++ linux-azure-5.8-5.8.0/drivers/tty/vt/keyboard.c @@ -742,8 +742,13 @@ return; if ((unsigned)value < ARRAY_SIZE(func_table)) { + unsigned long flags; + + spin_lock_irqsave(&func_buf_lock, flags); if (func_table[value]) puts_queue(vc, func_table[value]); + spin_unlock_irqrestore(&func_buf_lock, flags); + } else pr_err("k_fn called with value=%d\n", value); } @@ -1990,13 +1995,11 @@ #undef s #undef v -/* FIXME: This one needs untangling and locking */ +/* FIXME: This one needs untangling */ int vt_do_kdgkb_ioctl(int cmd, struct kbsentry __user *user_kdgkb, int perm) { struct kbsentry *kbs; - char *p; u_char *q; - u_char __user *up; int sz, fnw_sz; int delta; char *first_free, *fj, *fnw; @@ -2022,23 +2025,19 @@ i = kbs->kb_func; switch (cmd) { - case KDGKBSENT: - sz = sizeof(kbs->kb_string) - 1; /* sz should have been - a struct member */ - up = user_kdgkb->kb_string; - p = func_table[i]; - if(p) - for ( ; *p && sz; p++, sz--) - if (put_user(*p, up++)) { - ret = -EFAULT; - goto reterr; - } - if (put_user('\0', up)) { - ret = -EFAULT; - goto reterr; - } - kfree(kbs); - return ((p && *p) ? -EOVERFLOW : 0); + case KDGKBSENT: { + /* size should have been a struct member */ + ssize_t len = sizeof(user_kdgkb->kb_string); + + spin_lock_irqsave(&func_buf_lock, flags); + len = strlcpy(kbs->kb_string, func_table[i] ? : "", len); + spin_unlock_irqrestore(&func_buf_lock, flags); + + ret = copy_to_user(user_kdgkb->kb_string, kbs->kb_string, + len + 1) ? -EFAULT : 0; + + goto reterr; + } case KDSKBSENT: if (!perm) { ret = -EPERM; --- linux-azure-5.8-5.8.0.orig/drivers/tty/vt/selection.c +++ linux-azure-5.8-5.8.0/drivers/tty/vt/selection.c @@ -193,7 +193,7 @@ /* Allocate a new buffer before freeing the old one ... */ /* chars can take up to 4 bytes with unicode */ bp = kmalloc_array((vc_sel.end - vc_sel.start) / 2 + 1, unicode ? 4 : 1, - GFP_KERNEL); + GFP_KERNEL | __GFP_NOWARN); if (!bp) { printk(KERN_WARNING "selection: kmalloc() failed\n"); clear_selection(); --- linux-azure-5.8-5.8.0.orig/drivers/tty/vt/vt.c +++ linux-azure-5.8-5.8.0/drivers/tty/vt/vt.c @@ -106,6 +106,7 @@ #include #include #include +#include #define MAX_NR_CON_DRIVER 16 @@ -150,7 +151,7 @@ static int con_open(struct tty_struct *, struct file *); static void vc_init(struct vc_data *vc, unsigned int rows, - unsigned int cols, int do_clear); + unsigned int cols, int do_clear, int mode); static void gotoxy(struct vc_data *vc, int new_x, int new_y); static void save_cur(struct vc_data *vc); static void reset_terminal(struct vc_data *vc, int do_clear); @@ -174,6 +175,9 @@ static int cur_default = CUR_DEFAULT; module_param(cur_default, int, S_IRUGO | S_IWUSR); +int vt_handoff = 0; +module_param_named(handoff, vt_handoff, int, S_IRUGO | S_IWUSR); + /* * ignore_poke: don't unblank the screen when things are typed. This is * mainly for the privacy of braille terminal users. @@ -1002,6 +1006,13 @@ } if (tty0dev) sysfs_notify(&tty0dev->kobj, NULL, "active"); + /* + * If we are switching away from a transparent VT the contents + * will be lost, convert it into a blank text console then + * it will be repainted blank if we ever switch back. + */ + if (old_vc->vc_mode == KD_TRANSPARENT) + old_vc->vc_mode = KD_TEXT; } else { hide_cursor(vc); redraw = 1; @@ -1148,7 +1159,7 @@ if (global_cursor_default == -1) global_cursor_default = 1; - vc_init(vc, vc->vc_rows, vc->vc_cols, 1); + vc_init(vc, vc->vc_rows, vc->vc_cols, 1, KD_TEXT); vcs_make_sysfs(currcons); atomic_notifier_call_chain(&vt_notifier_list, VT_ALLOCATE, ¶m); @@ -1196,7 +1207,7 @@ unsigned int old_rows, old_row_size, first_copied_row; unsigned int new_cols, new_rows, new_row_size, new_screen_size; unsigned int user; - unsigned short *newscreen; + unsigned short *oldscreen, *newscreen; struct uni_screen *new_uniscr = NULL; WARN_CONSOLE_UNLOCKED(); @@ -1294,10 +1305,11 @@ if (new_scr_end > new_origin) scr_memsetw((void *)new_origin, vc->vc_video_erase_char, new_scr_end - new_origin); - kfree(vc->vc_screenbuf); + oldscreen = vc->vc_screenbuf; vc->vc_screenbuf = newscreen; vc->vc_screenbuf_size = new_screen_size; set_origin(vc); + kfree(oldscreen); /* do part of a reset_terminal() */ vc->vc_top = 0; @@ -3325,7 +3337,7 @@ module_param_named(underline, default_underline_color, int, S_IRUGO | S_IWUSR); static void vc_init(struct vc_data *vc, unsigned int rows, - unsigned int cols, int do_clear) + unsigned int cols, int do_clear, int mode) { int j, k ; @@ -3336,7 +3348,7 @@ set_origin(vc); vc->vc_pos = vc->vc_origin; - reset_vc(vc); + reset_vc(vc, mode); for (j=k=0; j<16; j++) { vc->vc_palette[k++] = default_red[j] ; vc->vc_palette[k++] = default_grn[j] ; @@ -3394,7 +3406,18 @@ mod_timer(&console_timer, jiffies + (blankinterval * HZ)); } + if (vt_handoff > 0 && vt_handoff <= MAX_NR_CONSOLES) { + currcons = vt_handoff - 1; + vc_cons[currcons].d = vc = kzalloc(sizeof(struct vc_data), GFP_NOWAIT); + INIT_WORK(&vc_cons[currcons].SAK_work, vc_SAK); + tty_port_init(&vc->port); + visual_init(vc, currcons, 1); + vc->vc_screenbuf = kzalloc(vc->vc_screenbuf_size, GFP_NOWAIT); + vc_init(vc, vc->vc_rows, vc->vc_cols, 0, KD_TRANSPARENT); + } for (currcons = 0; currcons < MIN_NR_CONSOLES; currcons++) { + if (currcons == vt_handoff - 1) + continue; vc_cons[currcons].d = vc = kzalloc(sizeof(struct vc_data), GFP_NOWAIT); INIT_WORK(&vc_cons[currcons].SAK_work, vc_SAK); tty_port_init(&vc->port); @@ -3402,9 +3425,14 @@ /* Assuming vc->vc_{cols,rows,screenbuf_size} are sane here. */ vc->vc_screenbuf = kzalloc(vc->vc_screenbuf_size, GFP_NOWAIT); vc_init(vc, vc->vc_rows, vc->vc_cols, - currcons || !vc->vc_sw->con_save_screen); + currcons || !vc->vc_sw->con_save_screen, KD_TEXT); } currcons = fg_console = 0; + if (vt_handoff > 0) { + printk(KERN_INFO "vt handoff: transparent VT on vt#%d\n", + vt_handoff); + currcons = fg_console = vt_handoff - 1; + } master_display_fg = vc = vc_cons[currcons].d; set_origin(vc); save_screen(vc); @@ -4615,27 +4643,6 @@ return rc; } -static int con_font_copy(struct vc_data *vc, struct console_font_op *op) -{ - int con = op->height; - int rc; - - - console_lock(); - if (vc->vc_mode != KD_TEXT) - rc = -EINVAL; - else if (!vc->vc_sw->con_font_copy) - rc = -ENOSYS; - else if (con < 0 || !vc_cons_allocated(con)) - rc = -ENOTTY; - else if (con == vc->vc_num) /* nothing to do */ - rc = 0; - else - rc = vc->vc_sw->con_font_copy(vc, con); - console_unlock(); - return rc; -} - int con_font_op(struct vc_data *vc, struct console_font_op *op) { switch (op->op) { @@ -4646,7 +4653,8 @@ case KD_FONT_OP_SET_DEFAULT: return con_font_default(vc, op); case KD_FONT_OP_COPY: - return con_font_copy(vc, op); + /* was buggy and never really used */ + return -EINVAL; } return -ENOSYS; } --- linux-azure-5.8-5.8.0.orig/drivers/tty/vt/vt_ioctl.c +++ linux-azure-5.8-5.8.0/drivers/tty/vt/vt_ioctl.c @@ -244,7 +244,7 @@ static inline int -do_fontx_ioctl(int cmd, struct consolefontdesc __user *user_cfd, int perm, struct console_font_op *op) +do_fontx_ioctl(struct vc_data *vc, int cmd, struct consolefontdesc __user *user_cfd, int perm, struct console_font_op *op) { struct consolefontdesc cfdarg; int i; @@ -262,15 +262,16 @@ op->height = cfdarg.charheight; op->charcount = cfdarg.charcount; op->data = cfdarg.chardata; - return con_font_op(vc_cons[fg_console].d, op); - case GIO_FONTX: { + return con_font_op(vc, op); + + case GIO_FONTX: op->op = KD_FONT_OP_GET; op->flags = KD_FONT_FLAG_OLD; op->width = 8; op->height = cfdarg.charheight; op->charcount = cfdarg.charcount; op->data = cfdarg.chardata; - i = con_font_op(vc_cons[fg_console].d, op); + i = con_font_op(vc, op); if (i) return i; cfdarg.charheight = op->height; @@ -278,7 +279,6 @@ if (copy_to_user(user_cfd, &cfdarg, sizeof(struct consolefontdesc))) return -EFAULT; return 0; - } } return -EINVAL; } @@ -893,12 +893,22 @@ console_lock(); vcp = vc_cons[i].d; if (vcp) { + int ret; + int save_scan_lines = vcp->vc_scan_lines; + int save_font_height = vcp->vc_font.height; + if (v.v_vlin) vcp->vc_scan_lines = v.v_vlin; if (v.v_clin) vcp->vc_font.height = v.v_clin; vcp->vc_resize_user = 1; - vc_resize(vcp, v.v_cols, v.v_rows); + ret = vc_resize(vcp, v.v_cols, v.v_rows); + if (ret) { + vcp->vc_scan_lines = save_scan_lines; + vcp->vc_font.height = save_font_height; + console_unlock(); + return ret; + } } console_unlock(); } @@ -914,7 +924,7 @@ op.height = 0; op.charcount = 256; op.data = up; - ret = con_font_op(vc_cons[fg_console].d, &op); + ret = con_font_op(vc, &op); break; } @@ -925,7 +935,7 @@ op.height = 32; op.charcount = 256; op.data = up; - ret = con_font_op(vc_cons[fg_console].d, &op); + ret = con_font_op(vc, &op); break; } @@ -942,7 +952,7 @@ case PIO_FONTX: case GIO_FONTX: - ret = do_fontx_ioctl(cmd, up, perm, &op); + ret = do_fontx_ioctl(vc, cmd, up, perm, &op); break; case PIO_FONTRESET: @@ -959,11 +969,11 @@ { op.op = KD_FONT_OP_SET_DEFAULT; op.data = NULL; - ret = con_font_op(vc_cons[fg_console].d, &op); + ret = con_font_op(vc, &op); if (ret) break; console_lock(); - con_set_default_unimap(vc_cons[fg_console].d); + con_set_default_unimap(vc); console_unlock(); break; } @@ -1042,9 +1052,9 @@ return ret; } -void reset_vc(struct vc_data *vc) +void reset_vc(struct vc_data *vc, int mode) { - vc->vc_mode = KD_TEXT; + vc->vc_mode = mode; vt_reset_unicode(vc->vc_num); vc->vt_mode.mode = VT_AUTO; vc->vt_mode.waitv = 0; @@ -1076,7 +1086,7 @@ */ if (tty) __do_SAK(tty); - reset_vc(vc); + reset_vc(vc, KD_TEXT); } console_unlock(); } @@ -1090,8 +1100,9 @@ }; static inline int -compat_fontx_ioctl(int cmd, struct compat_consolefontdesc __user *user_cfd, - int perm, struct console_font_op *op) +compat_fontx_ioctl(struct vc_data *vc, int cmd, + struct compat_consolefontdesc __user *user_cfd, + int perm, struct console_font_op *op) { struct compat_consolefontdesc cfdarg; int i; @@ -1109,7 +1120,8 @@ op->height = cfdarg.charheight; op->charcount = cfdarg.charcount; op->data = compat_ptr(cfdarg.chardata); - return con_font_op(vc_cons[fg_console].d, op); + return con_font_op(vc, op); + case GIO_FONTX: op->op = KD_FONT_OP_GET; op->flags = KD_FONT_FLAG_OLD; @@ -1117,7 +1129,7 @@ op->height = cfdarg.charheight; op->charcount = cfdarg.charcount; op->data = compat_ptr(cfdarg.chardata); - i = con_font_op(vc_cons[fg_console].d, op); + i = con_font_op(vc, op); if (i) return i; cfdarg.charheight = op->height; @@ -1207,7 +1219,7 @@ */ case PIO_FONTX: case GIO_FONTX: - return compat_fontx_ioctl(cmd, up, perm, &op); + return compat_fontx_ioctl(vc, cmd, up, perm, &op); case KDFONTOP: return compat_kdfontop_ioctl(up, perm, &op, vc); @@ -1311,7 +1323,7 @@ * this outside of VT_PROCESS but there is no single process * to account for and tracking tty count may be undesirable. */ - reset_vc(vc); + reset_vc(vc, KD_TEXT); if (old_vc_mode != vc->vc_mode) { if (vc->vc_mode == KD_TEXT) @@ -1383,7 +1395,7 @@ * this outside of VT_PROCESS but there is no single process * to account for and tracking tty count may be undesirable. */ - reset_vc(vc); + reset_vc(vc, KD_TEXT); /* * Fall through to normal (VT_AUTO) handling of the switch... --- linux-azure-5.8-5.8.0.orig/drivers/uio/uio.c +++ linux-azure-5.8-5.8.0/drivers/uio/uio.c @@ -413,10 +413,10 @@ return retval; } -static void uio_free_minor(struct uio_device *idev) +static void uio_free_minor(unsigned long minor) { mutex_lock(&minor_lock); - idr_remove(&uio_idr, idev->minor); + idr_remove(&uio_idr, minor); mutex_unlock(&minor_lock); } @@ -990,7 +990,7 @@ err_uio_dev_add_attributes: device_del(&idev->dev); err_device_create: - uio_free_minor(idev); + uio_free_minor(idev->minor); put_device(&idev->dev); return ret; } @@ -1042,13 +1042,13 @@ void uio_unregister_device(struct uio_info *info) { struct uio_device *idev; + unsigned long minor; if (!info || !info->uio_dev) return; idev = info->uio_dev; - - uio_free_minor(idev); + minor = idev->minor; mutex_lock(&idev->info_lock); uio_dev_del_attributes(idev); @@ -1064,6 +1064,8 @@ device_unregister(&idev->dev); + uio_free_minor(minor); + return; } EXPORT_SYMBOL_GPL(uio_unregister_device); --- linux-azure-5.8-5.8.0.orig/drivers/usb/cdns3/cdns3-imx.c +++ linux-azure-5.8-5.8.0/drivers/usb/cdns3/cdns3-imx.c @@ -149,7 +149,11 @@ } data->num_clks = ARRAY_SIZE(imx_cdns3_core_clks); - data->clks = (struct clk_bulk_data *)imx_cdns3_core_clks; + data->clks = devm_kmemdup(dev, imx_cdns3_core_clks, + sizeof(imx_cdns3_core_clks), GFP_KERNEL); + if (!data->clks) + return -ENOMEM; + ret = devm_clk_bulk_get(dev, data->num_clks, data->clks); if (ret) return ret; @@ -175,20 +179,11 @@ return ret; } -static int cdns_imx_remove_core(struct device *dev, void *data) -{ - struct platform_device *pdev = to_platform_device(dev); - - platform_device_unregister(pdev); - - return 0; -} - static int cdns_imx_remove(struct platform_device *pdev) { struct device *dev = &pdev->dev; - device_for_each_child(dev, NULL, cdns_imx_remove_core); + of_platform_depopulate(dev); platform_set_drvdata(pdev, NULL); return 0; --- linux-azure-5.8-5.8.0.orig/drivers/usb/cdns3/ep0.c +++ linux-azure-5.8-5.8.0/drivers/usb/cdns3/ep0.c @@ -138,49 +138,36 @@ struct usb_ctrlrequest *ctrl_req) { enum usb_device_state device_state = priv_dev->gadget.state; - struct cdns3_endpoint *priv_ep; u32 config = le16_to_cpu(ctrl_req->wValue); int result = 0; - int i; switch (device_state) { case USB_STATE_ADDRESS: - /* Configure non-control EPs */ - for (i = 0; i < CDNS3_ENDPOINTS_MAX_COUNT; i++) { - priv_ep = priv_dev->eps[i]; - if (!priv_ep) - continue; - - if (priv_ep->flags & EP_CLAIMED) - cdns3_ep_config(priv_ep); - } - result = cdns3_ep0_delegate_req(priv_dev, ctrl_req); - if (result) - return result; + if (result || !config) + goto reset_config; - if (config) { - cdns3_set_hw_configuration(priv_dev); - } else { - cdns3_hw_reset_eps_config(priv_dev); - usb_gadget_set_state(&priv_dev->gadget, - USB_STATE_ADDRESS); - } break; case USB_STATE_CONFIGURED: result = cdns3_ep0_delegate_req(priv_dev, ctrl_req); + if (!config && !result) + goto reset_config; - if (!config && !result) { - cdns3_hw_reset_eps_config(priv_dev); - usb_gadget_set_state(&priv_dev->gadget, - USB_STATE_ADDRESS); - } break; default: - result = -EINVAL; + return -EINVAL; } + return 0; + +reset_config: + if (result != USB_GADGET_DELAYED_STATUS) + cdns3_hw_reset_eps_config(priv_dev); + + usb_gadget_set_state(&priv_dev->gadget, + USB_STATE_ADDRESS); + return result; } @@ -701,9 +688,9 @@ struct cdns3_endpoint *priv_ep = ep_to_cdns3_ep(ep); struct cdns3_device *priv_dev = priv_ep->cdns3_dev; unsigned long flags; - int erdy_sent = 0; int ret = 0; u8 zlp = 0; + int i; spin_lock_irqsave(&priv_dev->lock, flags); trace_cdns3_ep0_queue(priv_dev, request); @@ -718,14 +705,18 @@ if (priv_dev->ep0_stage == CDNS3_STATUS_STAGE) { cdns3_select_ep(priv_dev, 0x00); - erdy_sent = !priv_dev->hw_configured_flag; - cdns3_set_hw_configuration(priv_dev); - - if (!erdy_sent) - cdns3_ep0_complete_setup(priv_dev, 0, 1); - - cdns3_allow_enable_l1(priv_dev, 1); + /* + * Configure all non-control EPs which are not enabled by class driver + */ + for (i = 0; i < CDNS3_ENDPOINTS_MAX_COUNT; i++) { + priv_ep = priv_dev->eps[i]; + if (priv_ep && priv_ep->flags & EP_CLAIMED && + !(priv_ep->flags & EP_ENABLED)) + cdns3_ep_config(priv_ep, 0); + } + cdns3_set_hw_configuration(priv_dev); + cdns3_ep0_complete_setup(priv_dev, 0, 1); request->actual = 0; priv_dev->status_completion_no_call = true; priv_dev->pending_status_request = request; @@ -809,6 +800,7 @@ struct cdns3_usb_regs __iomem *regs; struct cdns3_endpoint *priv_ep; u32 max_packet_size = 64; + u32 ep_cfg; regs = priv_dev->regs; @@ -840,8 +832,10 @@ BIT(0) | BIT(16)); } - writel(EP_CFG_ENABLE | EP_CFG_MAXPKTSIZE(max_packet_size), - ®s->ep_cfg); + ep_cfg = EP_CFG_ENABLE | EP_CFG_MAXPKTSIZE(max_packet_size); + + if (!(priv_ep->flags & EP_CONFIGURED)) + writel(ep_cfg, ®s->ep_cfg); writel(EP_STS_EN_SETUPEN | EP_STS_EN_DESCMISEN | EP_STS_EN_TRBERREN, ®s->ep_sts_en); @@ -849,8 +843,10 @@ /* init ep in */ cdns3_select_ep(priv_dev, USB_DIR_IN); - writel(EP_CFG_ENABLE | EP_CFG_MAXPKTSIZE(max_packet_size), - ®s->ep_cfg); + if (!(priv_ep->flags & EP_CONFIGURED)) + writel(ep_cfg, ®s->ep_cfg); + + priv_ep->flags |= EP_CONFIGURED; writel(EP_STS_EN_SETUPEN | EP_STS_EN_TRBERREN, ®s->ep_sts_en); --- linux-azure-5.8-5.8.0.orig/drivers/usb/cdns3/gadget.c +++ linux-azure-5.8-5.8.0/drivers/usb/cdns3/gadget.c @@ -242,9 +242,10 @@ return -ENOMEM; priv_ep->alloc_ring_size = ring_size; - memset(priv_ep->trb_pool, 0, ring_size); } + memset(priv_ep->trb_pool, 0, ring_size); + priv_ep->num_trbs = num_trbs; if (!priv_ep->num) @@ -260,8 +261,8 @@ */ link_trb->control = 0; } else { - link_trb->buffer = TRB_BUFFER(priv_ep->trb_pool_dma); - link_trb->control = TRB_CYCLE | TRB_TYPE(TRB_LINK) | TRB_TOGGLE; + link_trb->buffer = cpu_to_le32(TRB_BUFFER(priv_ep->trb_pool_dma)); + link_trb->control = cpu_to_le32(TRB_CYCLE | TRB_TYPE(TRB_LINK) | TRB_TOGGLE); } return 0; } @@ -295,6 +296,8 @@ */ void cdns3_hw_reset_eps_config(struct cdns3_device *priv_dev) { + int i; + writel(USB_CONF_CFGRST, &priv_dev->regs->usb_conf); cdns3_allow_enable_l1(priv_dev, 0); @@ -303,6 +306,10 @@ priv_dev->out_mem_is_allocated = 0; priv_dev->wait_for_setup = 0; priv_dev->using_streams = 0; + + for (i = 0; i < CDNS3_ENDPOINTS_MAX_COUNT; i++) + if (priv_dev->eps[i]) + priv_dev->eps[i]->flags &= ~EP_CONFIGURED; } /** @@ -846,10 +853,10 @@ priv_ep->wa1_trb_index = 0xFFFF; if (priv_ep->wa1_cycle_bit) { priv_ep->wa1_trb->control = - priv_ep->wa1_trb->control | 0x1; + priv_ep->wa1_trb->control | cpu_to_le32(0x1); } else { priv_ep->wa1_trb->control = - priv_ep->wa1_trb->control & ~0x1; + priv_ep->wa1_trb->control & cpu_to_le32(~0x1); } } } @@ -1007,17 +1014,16 @@ TRB_STREAM_ID(priv_req->request.stream_id) | TRB_ISP; if (!request->num_sgs) { - trb->buffer = TRB_BUFFER(trb_dma); + trb->buffer = cpu_to_le32(TRB_BUFFER(trb_dma)); length = request->length; } else { - trb->buffer = TRB_BUFFER(request->sg[sg_idx].dma_address); + trb->buffer = cpu_to_le32(TRB_BUFFER(request->sg[sg_idx].dma_address)); length = request->sg[sg_idx].length; } tdl = DIV_ROUND_UP(length, priv_ep->endpoint.maxpacket); - trb->length = TRB_BURST_LEN(16 /*priv_ep->trb_burst_size*/) | - TRB_LEN(length); + trb->length = cpu_to_le32(TRB_BURST_LEN(16) | TRB_LEN(length)); /* * For DEV_VER_V2 controller version we have enabled @@ -1026,11 +1032,11 @@ */ if (priv_dev->dev_ver >= DEV_VER_V2) { if (priv_dev->gadget.speed == USB_SPEED_SUPER) - trb->length |= TRB_TDL_SS_SIZE(tdl); + trb->length |= cpu_to_le32(TRB_TDL_SS_SIZE(tdl)); } priv_req->flags |= REQUEST_PENDING; - trb->control = control; + trb->control = cpu_to_le32(control); trace_cdns3_prepare_trb(priv_ep, priv_req->trb); @@ -1154,8 +1160,8 @@ TRBS_PER_SEGMENT > 2) ch_bit = TRB_CHAIN; - link_trb->control = ((priv_ep->pcs) ? TRB_CYCLE : 0) | - TRB_TYPE(TRB_LINK) | TRB_TOGGLE | ch_bit; + link_trb->control = cpu_to_le32(((priv_ep->pcs) ? TRB_CYCLE : 0) | + TRB_TYPE(TRB_LINK) | TRB_TOGGLE | ch_bit); } if (priv_dev->dev_ver <= DEV_VER_V2) @@ -1163,35 +1169,37 @@ /* set incorrect Cycle Bit for first trb*/ control = priv_ep->pcs ? 0 : TRB_CYCLE; + trb->length = 0; + if (priv_dev->dev_ver >= DEV_VER_V2) { + u16 td_size; + + td_size = DIV_ROUND_UP(request->length, + priv_ep->endpoint.maxpacket); + if (priv_dev->gadget.speed == USB_SPEED_SUPER) + trb->length = TRB_TDL_SS_SIZE(td_size); + else + control |= TRB_TDL_HS_SIZE(td_size); + } do { u32 length; - u16 td_size = 0; /* fill TRB */ control |= TRB_TYPE(TRB_NORMAL); - trb->buffer = TRB_BUFFER(request->num_sgs == 0 - ? trb_dma : request->sg[sg_iter].dma_address); + trb->buffer = cpu_to_le32(TRB_BUFFER(request->num_sgs == 0 + ? trb_dma : request->sg[sg_iter].dma_address)); if (likely(!request->num_sgs)) length = request->length; else length = request->sg[sg_iter].length; - if (likely(priv_dev->dev_ver >= DEV_VER_V2)) - td_size = DIV_ROUND_UP(length, - priv_ep->endpoint.maxpacket); - else if (priv_ep->flags & EP_TDLCHK_EN) + if (priv_ep->flags & EP_TDLCHK_EN) total_tdl += DIV_ROUND_UP(length, priv_ep->endpoint.maxpacket); - trb->length = TRB_BURST_LEN(priv_ep->trb_burst_size) | - TRB_LEN(length); - if (priv_dev->gadget.speed == USB_SPEED_SUPER) - trb->length |= TRB_TDL_SS_SIZE(td_size); - else - control |= TRB_TDL_HS_SIZE(td_size); - + trb->length |= cpu_to_le32(TRB_BURST_LEN(priv_ep->trb_burst_size) | + TRB_LEN(length)); pcs = priv_ep->pcs ? TRB_CYCLE : 0; /* @@ -1210,9 +1218,9 @@ } if (sg_iter) - trb->control = control; + trb->control = cpu_to_le32(control); else - priv_req->trb->control = control; + priv_req->trb->control = cpu_to_le32(control); control = 0; ++sg_iter; @@ -1226,7 +1234,7 @@ priv_req->flags |= REQUEST_PENDING; if (sg_iter == 1) - trb->control |= TRB_IOC | TRB_ISP; + trb->control |= cpu_to_le32(TRB_IOC | TRB_ISP); if (priv_dev->dev_ver < DEV_VER_V2 && (priv_ep->flags & EP_TDLCHK_EN)) { @@ -1252,7 +1260,7 @@ /* give the TD to the consumer*/ if (togle_pcs) - trb->control = trb->control ^ 1; + trb->control = trb->control ^ cpu_to_le32(1); if (priv_dev->dev_ver <= DEV_VER_V2) cdns3_wa1_tray_restore_cycle_bit(priv_dev, priv_ep); @@ -1314,7 +1322,6 @@ return; writel(USB_CONF_CFGSET, &priv_dev->regs->usb_conf); - writel(EP_CMD_ERDY | EP_CMD_REQ_CMPL, &priv_dev->regs->ep_cmd); cdns3_set_register_bit(&priv_dev->regs->usb_conf, USB_CONF_U1EN | USB_CONF_U2EN); @@ -1331,6 +1338,8 @@ cdns3_start_all_request(priv_dev, priv_ep); } } + + cdns3_allow_enable_l1(priv_dev, 1); } /** @@ -1390,7 +1399,7 @@ trb = &priv_ep->trb_pool[priv_req->start_trb]; - if ((trb->control & TRB_CYCLE) != priv_ep->ccs) + if ((le32_to_cpu(trb->control) & TRB_CYCLE) != priv_ep->ccs) goto finish; if (doorbell == 1 && current_index == priv_ep->dequeue) @@ -1439,7 +1448,7 @@ trb = priv_ep->trb_pool + priv_ep->dequeue; /* Request was dequeued and TRB was changed to TRB_LINK. */ - if (TRB_FIELD_TO_TYPE(trb->control) == TRB_LINK) { + if (TRB_FIELD_TO_TYPE(le32_to_cpu(trb->control)) == TRB_LINK) { trace_cdns3_complete_trb(priv_ep, trb); cdns3_move_deq_to_next_trb(priv_req); } @@ -1571,7 +1580,7 @@ * that host ignore the ERDY packet and driver has to send it * again. */ - if (tdl && (dbusy | !EP_STS_BUFFEMPTY(ep_sts_reg) | + if (tdl && (dbusy || !EP_STS_BUFFEMPTY(ep_sts_reg) || EP_STS_HOSTPP(ep_sts_reg))) { writel(EP_CMD_ERDY | EP_CMD_ERDY_SID(priv_ep->last_stream_id), @@ -1904,27 +1913,6 @@ return 0; } -static void cdns3_stream_ep_reconfig(struct cdns3_device *priv_dev, - struct cdns3_endpoint *priv_ep) -{ - if (!priv_ep->use_streams || priv_dev->gadget.speed < USB_SPEED_SUPER) - return; - - if (priv_dev->dev_ver >= DEV_VER_V3) { - u32 mask = BIT(priv_ep->num + (priv_ep->dir ? 16 : 0)); - - /* - * Stream capable endpoints are handled by using ep_tdl - * register. Other endpoints use TDL from TRB feature. - */ - cdns3_clear_register_bit(&priv_dev->regs->tdl_from_trb, mask); - } - - /* Enable Stream Bit TDL chk and SID chk */ - cdns3_set_register_bit(&priv_dev->regs->ep_cfg, EP_CFG_STREAM_EN | - EP_CFG_TDL_CHK | EP_CFG_SID_CHK); -} - static void cdns3_configure_dmult(struct cdns3_device *priv_dev, struct cdns3_endpoint *priv_ep) { @@ -1962,8 +1950,9 @@ /** * cdns3_ep_config Configure hardware endpoint * @priv_ep: extended endpoint object + * @enable: set EP_CFG_ENABLE bit in ep_cfg register. */ -void cdns3_ep_config(struct cdns3_endpoint *priv_ep) +int cdns3_ep_config(struct cdns3_endpoint *priv_ep, bool enable) { bool is_iso_ep = (priv_ep->type == USB_ENDPOINT_XFER_ISOC); struct cdns3_device *priv_dev = priv_ep->cdns3_dev; @@ -2024,7 +2013,7 @@ break; default: /* all other speed are not supported */ - return; + return -EINVAL; } if (max_packet_size == 1024) @@ -2034,11 +2023,33 @@ else priv_ep->trb_burst_size = 16; - ret = cdns3_ep_onchip_buffer_reserve(priv_dev, buffering + 1, - !!priv_ep->dir); - if (ret) { - dev_err(priv_dev->dev, "onchip mem is full, ep is invalid\n"); - return; + /* onchip buffer is only allocated before configuration */ + if (!priv_dev->hw_configured_flag) { + ret = cdns3_ep_onchip_buffer_reserve(priv_dev, buffering + 1, + !!priv_ep->dir); + if (ret) { + dev_err(priv_dev->dev, "onchip mem is full, ep is invalid\n"); + return ret; + } + } + + if (enable) + ep_cfg |= EP_CFG_ENABLE; + + if (priv_ep->use_streams && priv_dev->gadget.speed >= USB_SPEED_SUPER) { + if (priv_dev->dev_ver >= DEV_VER_V3) { + u32 mask = BIT(priv_ep->num + (priv_ep->dir ? 16 : 0)); + + /* + * Stream capable endpoints are handled by using ep_tdl + * register. Other endpoints use TDL from TRB feature. + */ + cdns3_clear_register_bit(&priv_dev->regs->tdl_from_trb, + mask); + } + + /* Enable Stream Bit TDL chk and SID chk */ + ep_cfg |= EP_CFG_STREAM_EN | EP_CFG_TDL_CHK | EP_CFG_SID_CHK; } ep_cfg |= EP_CFG_MAXPKTSIZE(max_packet_size) | @@ -2048,9 +2059,12 @@ cdns3_select_ep(priv_dev, bEndpointAddress); writel(ep_cfg, &priv_dev->regs->ep_cfg); + priv_ep->flags |= EP_CONFIGURED; dev_dbg(priv_dev->dev, "Configure %s: with val %08x\n", priv_ep->name, ep_cfg); + + return 0; } /* Find correct direction for HW endpoint according to description */ @@ -2191,7 +2205,7 @@ u32 bEndpointAddress; unsigned long flags; int enable = 1; - int ret; + int ret = 0; int val; priv_ep = ep_to_cdns3_ep(ep); @@ -2230,6 +2244,17 @@ bEndpointAddress = priv_ep->num | priv_ep->dir; cdns3_select_ep(priv_dev, bEndpointAddress); + /* + * For some versions of controller at some point during ISO OUT traffic + * DMA reads Transfer Ring for the EP which has never got doorbell. + * This issue was detected only on simulation, but to avoid this issue + * driver add protection against it. To fix it driver enable ISO OUT + * endpoint before setting DRBL. This special treatment of ISO OUT + * endpoints are recommended by controller specification. + */ + if (priv_ep->type == USB_ENDPOINT_XFER_ISOC && !priv_ep->dir) + enable = 0; + if (usb_ss_max_streams(comp_desc) && usb_endpoint_xfer_bulk(desc)) { /* * Enable stream support (SS mode) related interrupts @@ -2240,13 +2265,17 @@ EP_STS_EN_SIDERREN | EP_STS_EN_MD_EXITEN | EP_STS_EN_STREAMREN; priv_ep->use_streams = true; - cdns3_stream_ep_reconfig(priv_dev, priv_ep); + ret = cdns3_ep_config(priv_ep, enable); priv_dev->using_streams |= true; } + } else { + ret = cdns3_ep_config(priv_ep, enable); } - ret = cdns3_allocate_trb_pool(priv_ep); + if (ret) + goto exit; + ret = cdns3_allocate_trb_pool(priv_ep); if (ret) goto exit; @@ -2276,20 +2305,6 @@ writel(reg, &priv_dev->regs->ep_sts_en); - /* - * For some versions of controller at some point during ISO OUT traffic - * DMA reads Transfer Ring for the EP which has never got doorbell. - * This issue was detected only on simulation, but to avoid this issue - * driver add protection against it. To fix it driver enable ISO OUT - * endpoint before setting DRBL. This special treatment of ISO OUT - * endpoints are recommended by controller specification. - */ - if (priv_ep->type == USB_ENDPOINT_XFER_ISOC && !priv_ep->dir) - enable = 0; - - if (enable) - cdns3_set_register_bit(&priv_dev->regs->ep_cfg, EP_CFG_ENABLE); - ep->desc = desc; priv_ep->flags &= ~(EP_PENDING_REQUEST | EP_STALLED | EP_STALL_PENDING | EP_QUIRK_ISO_OUT_EN | EP_QUIRK_EXTRA_BUF_EN); @@ -2549,10 +2564,10 @@ /* Update ring only if removed request is on pending_req_list list */ if (req_on_hw_ring && link_trb) { - link_trb->buffer = TRB_BUFFER(priv_ep->trb_pool_dma + - ((priv_req->end_trb + 1) * TRB_SIZE)); - link_trb->control = (link_trb->control & TRB_CYCLE) | - TRB_TYPE(TRB_LINK) | TRB_CHAIN; + link_trb->buffer = cpu_to_le32(TRB_BUFFER(priv_ep->trb_pool_dma + + ((priv_req->end_trb + 1) * TRB_SIZE))); + link_trb->control = cpu_to_le32((le32_to_cpu(link_trb->control) & TRB_CYCLE) | + TRB_TYPE(TRB_LINK) | TRB_CHAIN); if (priv_ep->wa1_trb == priv_req->trb) cdns3_wa1_restore_cycle_bit(priv_ep); @@ -2607,7 +2622,7 @@ priv_req = to_cdns3_request(request); trb = priv_req->trb; if (trb) - trb->control = trb->control ^ TRB_CYCLE; + trb->control = trb->control ^ cpu_to_le32(TRB_CYCLE); } writel(EP_CMD_CSTALL | EP_CMD_EPRST, &priv_dev->regs->ep_cmd); @@ -2622,7 +2637,8 @@ if (request) { if (trb) - trb->control = trb->control ^ TRB_CYCLE; + trb->control = trb->control ^ cpu_to_le32(TRB_CYCLE); + cdns3_rearm_transfer(priv_ep, 1); } @@ -2987,12 +3003,12 @@ priv_dev = cdns->gadget_dev; - devm_free_irq(cdns->dev, cdns->dev_irq, priv_dev); pm_runtime_mark_last_busy(cdns->dev); pm_runtime_put_autosuspend(cdns->dev); usb_del_gadget_udc(&priv_dev->gadget); + devm_free_irq(cdns->dev, cdns->dev_irq, priv_dev); cdns3_free_all_eps(priv_dev); --- linux-azure-5.8-5.8.0.orig/drivers/usb/cdns3/gadget.h +++ linux-azure-5.8-5.8.0/drivers/usb/cdns3/gadget.h @@ -1067,7 +1067,7 @@ #define TRB_TDL_SS_SIZE_GET(p) (((p) & GENMASK(23, 17)) >> 17) /* transfer_len bitmasks - bits 31:24 */ -#define TRB_BURST_LEN(p) (((p) << 24) & GENMASK(31, 24)) +#define TRB_BURST_LEN(p) ((unsigned int)((p) << 24) & GENMASK(31, 24)) #define TRB_BURST_LEN_GET(p) (((p) & GENMASK(31, 24)) >> 24) /* Data buffer pointer bitmasks*/ @@ -1154,6 +1154,7 @@ #define EP_QUIRK_EXTRA_BUF_DET BIT(12) #define EP_QUIRK_EXTRA_BUF_EN BIT(13) #define EP_TDLCHK_EN BIT(15) +#define EP_CONFIGURED BIT(16) u32 flags; struct cdns3_request *descmis_req; @@ -1351,7 +1352,7 @@ int cdns3_init_ep0(struct cdns3_device *priv_dev, struct cdns3_endpoint *priv_ep); void cdns3_ep0_config(struct cdns3_device *priv_dev); -void cdns3_ep_config(struct cdns3_endpoint *priv_ep); +int cdns3_ep_config(struct cdns3_endpoint *priv_ep, bool enable); void cdns3_check_ep0_interrupt_proceed(struct cdns3_device *priv_dev, int dir); int __cdns3_gadget_wakeup(struct cdns3_device *priv_dev); --- linux-azure-5.8-5.8.0.orig/drivers/usb/chipidea/ci_hdrc_imx.c +++ linux-azure-5.8-5.8.0/drivers/usb/chipidea/ci_hdrc_imx.c @@ -57,7 +57,8 @@ static const struct ci_hdrc_imx_platform_flag imx6ul_usb_data = { .flags = CI_HDRC_SUPPORTS_RUNTIME_PM | - CI_HDRC_TURN_VBUS_EARLY_ON, + CI_HDRC_TURN_VBUS_EARLY_ON | + CI_HDRC_DISABLE_DEVICE_STREAMING, }; static const struct ci_hdrc_imx_platform_flag imx7d_usb_data = { @@ -138,9 +139,13 @@ misc_pdev = of_find_device_by_node(args.np); of_node_put(args.np); - if (!misc_pdev || !platform_get_drvdata(misc_pdev)) + if (!misc_pdev) return ERR_PTR(-EPROBE_DEFER); + if (!platform_get_drvdata(misc_pdev)) { + put_device(&misc_pdev->dev); + return ERR_PTR(-EPROBE_DEFER); + } data->dev = &misc_pdev->dev; /* --- linux-azure-5.8-5.8.0.orig/drivers/usb/class/cdc-acm.c +++ linux-azure-5.8-5.8.0/drivers/usb/class/cdc-acm.c @@ -378,21 +378,19 @@ if (current_size < expected_size) { /* notification is transmitted fragmented, reassemble */ if (acm->nb_size < expected_size) { - if (acm->nb_size) { - kfree(acm->notification_buffer); - acm->nb_size = 0; - } + u8 *new_buffer; alloc_size = roundup_pow_of_two(expected_size); - /* - * kmalloc ensures a valid notification_buffer after a - * use of kfree in case the previous allocation was too - * small. Final freeing is done on disconnect. - */ - acm->notification_buffer = - kmalloc(alloc_size, GFP_ATOMIC); - if (!acm->notification_buffer) + /* Final freeing is done on disconnect. */ + new_buffer = krealloc(acm->notification_buffer, + alloc_size, GFP_ATOMIC); + if (!new_buffer) { + acm->nb_index = 0; goto exit; + } + + acm->notification_buffer = new_buffer; acm->nb_size = alloc_size; + dr = (struct usb_cdc_notification *)acm->notification_buffer; } copy_size = min(current_size, @@ -509,6 +507,7 @@ "%s - cooling babbling device\n", __func__); usb_mark_last_busy(acm->dev); set_bit(rb->index, &acm->urbs_in_error_delay); + set_bit(ACM_ERROR_DELAY, &acm->flags); cooldown = true; break; default: @@ -534,7 +533,7 @@ if (stopped || stalled || cooldown) { if (stalled) - schedule_work(&acm->work); + schedule_delayed_work(&acm->dwork, 0); else if (cooldown) schedule_delayed_work(&acm->dwork, HZ / 2); return; @@ -564,13 +563,13 @@ acm_write_done(acm, wb); spin_unlock_irqrestore(&acm->write_lock, flags); set_bit(EVENT_TTY_WAKEUP, &acm->flags); - schedule_work(&acm->work); + schedule_delayed_work(&acm->dwork, 0); } static void acm_softint(struct work_struct *work) { int i; - struct acm *acm = container_of(work, struct acm, work); + struct acm *acm = container_of(work, struct acm, dwork.work); if (test_bit(EVENT_RX_STALL, &acm->flags)) { smp_mb(); /* against acm_suspend() */ @@ -586,7 +585,7 @@ if (test_and_clear_bit(ACM_ERROR_DELAY, &acm->flags)) { for (i = 0; i < acm->rx_buflimit; i++) if (test_and_clear_bit(i, &acm->urbs_in_error_delay)) - acm_submit_read_urb(acm, i, GFP_NOIO); + acm_submit_read_urb(acm, i, GFP_KERNEL); } if (test_and_clear_bit(EVENT_TTY_WAKEUP, &acm->flags)) @@ -1245,9 +1244,21 @@ } } } else { + int class = -1; + data_intf_num = union_header->bSlaveInterface0; control_interface = usb_ifnum_to_if(usb_dev, union_header->bMasterInterface0); data_interface = usb_ifnum_to_if(usb_dev, data_intf_num); + + if (control_interface) + class = control_interface->cur_altsetting->desc.bInterfaceClass; + + if (class != USB_CLASS_COMM && class != USB_CLASS_CDC_DATA) { + dev_dbg(&intf->dev, "Broken union descriptor, assuming single interface\n"); + combined_interfaces = 1; + control_interface = data_interface = intf; + goto look_for_collapsed_interface; + } } if (!control_interface || !data_interface) { @@ -1354,7 +1365,6 @@ acm->ctrlsize = ctrlsize; acm->readsize = readsize; acm->rx_buflimit = num_rx_buf; - INIT_WORK(&acm->work, acm_softint); INIT_DELAYED_WORK(&acm->dwork, acm_softint); init_waitqueue_head(&acm->wioctl); spin_lock_init(&acm->write_lock); @@ -1564,7 +1574,6 @@ } acm_kill_urbs(acm); - cancel_work_sync(&acm->work); cancel_delayed_work_sync(&acm->dwork); tty_unregister_device(acm_tty_driver, acm->minor); @@ -1607,7 +1616,6 @@ return 0; acm_kill_urbs(acm); - cancel_work_sync(&acm->work); cancel_delayed_work_sync(&acm->dwork); acm->urbs_in_error_delay = 0; @@ -1698,6 +1706,15 @@ { USB_DEVICE(0x0870, 0x0001), /* Metricom GS Modem */ .driver_info = NO_UNION_NORMAL, /* has no union descriptor */ }, + { USB_DEVICE(0x045b, 0x023c), /* Renesas USB Download mode */ + .driver_info = DISABLE_ECHO, /* Don't echo banner */ + }, + { USB_DEVICE(0x045b, 0x0248), /* Renesas USB Download mode */ + .driver_info = DISABLE_ECHO, /* Don't echo banner */ + }, + { USB_DEVICE(0x045b, 0x024D), /* Renesas USB Download mode */ + .driver_info = DISABLE_ECHO, /* Don't echo banner */ + }, { USB_DEVICE(0x0e8d, 0x0003), /* FIREFLY, MediaTek Inc; andrey.arapov@gmail.com */ .driver_info = NO_UNION_NORMAL, /* has no union descriptor */ }, @@ -1890,6 +1907,10 @@ { USB_DEVICE(0x04d8, 0x0083), /* Bootloader mode */ .driver_info = IGNORE_DEVICE, }, + + { USB_DEVICE(0x04d8, 0xf58b), + .driver_info = IGNORE_DEVICE, + }, #endif /*Samsung phone in firmware update mode */ @@ -1902,6 +1923,17 @@ .driver_info = IGNORE_DEVICE, }, + /* Exclude ETAS ES58x */ + { USB_DEVICE(0x108c, 0x0159), /* ES581.4 */ + .driver_info = IGNORE_DEVICE, + }, + { USB_DEVICE(0x108c, 0x0168), /* ES582.1 */ + .driver_info = IGNORE_DEVICE, + }, + { USB_DEVICE(0x108c, 0x0169), /* ES584.1 */ + .driver_info = IGNORE_DEVICE, + }, + { USB_DEVICE(0x1bc7, 0x0021), /* Telit 3G ACM only composition */ .driver_info = SEND_ZERO_PACKET, }, @@ -1909,6 +1941,20 @@ .driver_info = SEND_ZERO_PACKET, }, + /* Exclude Exar USB serial ports */ + { USB_DEVICE(0x04e2, 0x1400), .driver_info = IGNORE_DEVICE, }, + { USB_DEVICE(0x04e2, 0x1401), .driver_info = IGNORE_DEVICE, }, + { USB_DEVICE(0x04e2, 0x1402), .driver_info = IGNORE_DEVICE, }, + { USB_DEVICE(0x04e2, 0x1403), .driver_info = IGNORE_DEVICE, }, + { USB_DEVICE(0x04e2, 0x1410), .driver_info = IGNORE_DEVICE, }, + { USB_DEVICE(0x04e2, 0x1411), .driver_info = IGNORE_DEVICE, }, + { USB_DEVICE(0x04e2, 0x1412), .driver_info = IGNORE_DEVICE, }, + { USB_DEVICE(0x04e2, 0x1414), .driver_info = IGNORE_DEVICE, }, + { USB_DEVICE(0x04e2, 0x1420), .driver_info = IGNORE_DEVICE, }, + { USB_DEVICE(0x04e2, 0x1421), .driver_info = IGNORE_DEVICE, }, + { USB_DEVICE(0x04e2, 0x1422), .driver_info = IGNORE_DEVICE, }, + { USB_DEVICE(0x04e2, 0x1424), .driver_info = IGNORE_DEVICE, }, + /* control interfaces without any protocol set */ { USB_INTERFACE_INFO(USB_CLASS_COMM, USB_CDC_SUBCLASS_ACM, USB_CDC_PROTO_NONE) }, --- linux-azure-5.8-5.8.0.orig/drivers/usb/class/cdc-acm.h +++ linux-azure-5.8-5.8.0/drivers/usb/class/cdc-acm.h @@ -112,8 +112,7 @@ # define ACM_ERROR_DELAY 3 unsigned long urbs_in_error_delay; /* these need to be restarted after a delay */ struct usb_cdc_line_coding line; /* bits, stop, parity */ - struct work_struct work; /* work queue entry for various purposes*/ - struct delayed_work dwork; /* for cool downs needed in error recovery */ + struct delayed_work dwork; /* work queue entry for various purposes */ unsigned int ctrlin; /* input control lines (DCD, DSR, RI, break, overruns) */ unsigned int ctrlout; /* output control lines (DTR, RTS) */ struct async_icount iocount; /* counters for control line changes */ --- linux-azure-5.8-5.8.0.orig/drivers/usb/class/cdc-wdm.c +++ linux-azure-5.8-5.8.0/drivers/usb/class/cdc-wdm.c @@ -58,6 +58,9 @@ #define WDM_MAX 16 +/* we cannot wait forever at flush() */ +#define WDM_FLUSH_TIMEOUT (30 * HZ) + /* CDC-WMC r1.1 requires wMaxCommand to be "at least 256 decimal (0x100)" */ #define WDM_DEFAULT_BUFSIZE 256 @@ -151,7 +154,7 @@ kfree(desc->outbuf); desc->outbuf = NULL; clear_bit(WDM_IN_USE, &desc->flags); - wake_up(&desc->wait); + wake_up_all(&desc->wait); } static void wdm_in_callback(struct urb *urb) @@ -393,6 +396,9 @@ if (test_bit(WDM_RESETTING, &desc->flags)) r = -EIO; + if (test_bit(WDM_DISCONNECTING, &desc->flags)) + r = -ENODEV; + if (r < 0) { rv = r; goto out_free_mem_pm; @@ -424,6 +430,7 @@ if (rv < 0) { desc->outbuf = NULL; clear_bit(WDM_IN_USE, &desc->flags); + wake_up_all(&desc->wait); /* for wdm_wait_for_response() */ dev_err(&desc->intf->dev, "Tx URB error: %d\n", rv); rv = usb_translate_errors(rv); goto out_free_mem_pm; @@ -458,13 +465,23 @@ if (!desc->resp_count || !--desc->resp_count) goto out; + if (test_bit(WDM_DISCONNECTING, &desc->flags)) { + rv = -ENODEV; + goto out; + } + if (test_bit(WDM_RESETTING, &desc->flags)) { + rv = -EIO; + goto out; + } + set_bit(WDM_RESPONDING, &desc->flags); spin_unlock_irq(&desc->iuspin); rv = usb_submit_urb(desc->response, GFP_KERNEL); spin_lock_irq(&desc->iuspin); if (rv) { - dev_err(&desc->intf->dev, - "usb_submit_urb failed with result %d\n", rv); + if (!test_bit(WDM_DISCONNECTING, &desc->flags)) + dev_err(&desc->intf->dev, + "usb_submit_urb failed with result %d\n", rv); /* make sure the next notification trigger a submit */ clear_bit(WDM_RESPONDING, &desc->flags); @@ -583,28 +600,58 @@ return rv; } -static int wdm_flush(struct file *file, fl_owner_t id) +static int wdm_wait_for_response(struct file *file, long timeout) { struct wdm_device *desc = file->private_data; + long rv; /* Use long here because (int) MAX_SCHEDULE_TIMEOUT < 0. */ - wait_event(desc->wait, - /* - * needs both flags. We cannot do with one - * because resetting it would cause a race - * with write() yet we need to signal - * a disconnect - */ - !test_bit(WDM_IN_USE, &desc->flags) || - test_bit(WDM_DISCONNECTING, &desc->flags)); + /* + * Needs both flags. We cannot do with one because resetting it would + * cause a race with write() yet we need to signal a disconnect. + */ + rv = wait_event_interruptible_timeout(desc->wait, + !test_bit(WDM_IN_USE, &desc->flags) || + test_bit(WDM_DISCONNECTING, &desc->flags), + timeout); - /* cannot dereference desc->intf if WDM_DISCONNECTING */ + /* + * To report the correct error. This is best effort. + * We are inevitably racing with the hardware. + */ if (test_bit(WDM_DISCONNECTING, &desc->flags)) return -ENODEV; - if (desc->werr < 0) - dev_err(&desc->intf->dev, "Error in flush path: %d\n", - desc->werr); + if (!rv) + return -EIO; + if (rv < 0) + return -EINTR; + + spin_lock_irq(&desc->iuspin); + rv = desc->werr; + desc->werr = 0; + spin_unlock_irq(&desc->iuspin); + + return usb_translate_errors(rv); - return usb_translate_errors(desc->werr); +} + +/* + * You need to send a signal when you react to malicious or defective hardware. + * Also, don't abort when fsync() returned -EINVAL, for older kernels which do + * not implement wdm_flush() will return -EINVAL. + */ +static int wdm_fsync(struct file *file, loff_t start, loff_t end, int datasync) +{ + return wdm_wait_for_response(file, MAX_SCHEDULE_TIMEOUT); +} + +/* + * Same with wdm_fsync(), except it uses finite timeout in order to react to + * malicious or defective hardware which ceased communication after close() was + * implicitly called due to process termination. + */ +static int wdm_flush(struct file *file, fl_owner_t id) +{ + return wdm_wait_for_response(file, WDM_FLUSH_TIMEOUT); } static __poll_t wdm_poll(struct file *file, struct poll_table_struct *wait) @@ -729,6 +776,7 @@ .owner = THIS_MODULE, .read = wdm_read, .write = wdm_write, + .fsync = wdm_fsync, .open = wdm_open, .flush = wdm_flush, .release = wdm_release, @@ -988,9 +1036,9 @@ wake_up_all(&desc->wait); mutex_lock(&desc->rlock); mutex_lock(&desc->wlock); - kill_urbs(desc); cancel_work_sync(&desc->rxwork); cancel_work_sync(&desc->service_outs_intr); + kill_urbs(desc); mutex_unlock(&desc->wlock); mutex_unlock(&desc->rlock); --- linux-azure-5.8-5.8.0.orig/drivers/usb/class/usblp.c +++ linux-azure-5.8-5.8.0/drivers/usb/class/usblp.c @@ -274,8 +274,25 @@ #define usblp_reset(usblp)\ usblp_ctrl_msg(usblp, USBLP_REQ_RESET, USB_TYPE_CLASS, USB_DIR_OUT, USB_RECIP_OTHER, 0, NULL, 0) -#define usblp_hp_channel_change_request(usblp, channel, buffer) \ - usblp_ctrl_msg(usblp, USBLP_REQ_HP_CHANNEL_CHANGE_REQUEST, USB_TYPE_VENDOR, USB_DIR_IN, USB_RECIP_INTERFACE, channel, buffer, 1) +static int usblp_hp_channel_change_request(struct usblp *usblp, int channel, u8 *new_channel) +{ + u8 *buf; + int ret; + + buf = kzalloc(1, GFP_KERNEL); + if (!buf) + return -ENOMEM; + + ret = usblp_ctrl_msg(usblp, USBLP_REQ_HP_CHANNEL_CHANGE_REQUEST, + USB_TYPE_VENDOR, USB_DIR_IN, USB_RECIP_INTERFACE, + channel, buf, 1); + if (ret == 0) + *new_channel = buf[0]; + + kfree(buf); + + return ret; +} /* * See the description for usblp_select_alts() below for the usage @@ -827,6 +844,11 @@ if (rv < 0) return rv; + if (!usblp->present) { + count = -ENODEV; + goto done; + } + if ((avail = usblp->rstatus) < 0) { printk(KERN_ERR "usblp%d: error %d reading from printer\n", usblp->minor, (int)avail); @@ -1307,14 +1329,17 @@ if (protocol < USBLP_FIRST_PROTOCOL || protocol > USBLP_LAST_PROTOCOL) return -EINVAL; - alts = usblp->protocol[protocol].alt_setting; - if (alts < 0) - return -EINVAL; - r = usb_set_interface(usblp->dev, usblp->ifnum, alts); - if (r < 0) { - printk(KERN_ERR "usblp: can't set desired altsetting %d on interface %d\n", - alts, usblp->ifnum); - return r; + /* Don't unnecessarily set the interface if there's a single alt. */ + if (usblp->intf->num_altsetting > 1) { + alts = usblp->protocol[protocol].alt_setting; + if (alts < 0) + return -EINVAL; + r = usb_set_interface(usblp->dev, usblp->ifnum, alts); + if (r < 0) { + printk(KERN_ERR "usblp: can't set desired altsetting %d on interface %d\n", + alts, usblp->ifnum); + return r; + } } usblp->bidir = (usblp->protocol[protocol].epread != NULL); --- linux-azure-5.8-5.8.0.orig/drivers/usb/core/devio.c +++ linux-azure-5.8-5.8.0/drivers/usb/core/devio.c @@ -482,11 +482,11 @@ if (userurb) { /* Async */ if (when == SUBMIT) - dev_info(&udev->dev, "userurb %pK, ep%d %s-%s, " + dev_info(&udev->dev, "userurb %px, ep%d %s-%s, " "length %u\n", userurb, ep, t, d, length); else - dev_info(&udev->dev, "userurb %pK, ep%d %s-%s, " + dev_info(&udev->dev, "userurb %px, ep%d %s-%s, " "actual_length %u status %d\n", userurb, ep, t, d, length, timeout_or_status); @@ -1983,7 +1983,7 @@ if (as) { int retval; - snoop(&ps->dev->dev, "reap %pK\n", as->userurb); + snoop(&ps->dev->dev, "reap %px\n", as->userurb); retval = processcompl(as, (void __user * __user *)arg); free_async(as); return retval; @@ -2000,7 +2000,7 @@ as = async_getcompleted(ps); if (as) { - snoop(&ps->dev->dev, "reap %pK\n", as->userurb); + snoop(&ps->dev->dev, "reap %px\n", as->userurb); retval = processcompl(as, (void __user * __user *)arg); free_async(as); } else { @@ -2130,7 +2130,7 @@ if (as) { int retval; - snoop(&ps->dev->dev, "reap %pK\n", as->userurb); + snoop(&ps->dev->dev, "reap %px\n", as->userurb); retval = processcompl_compat(as, (void __user * __user *)arg); free_async(as); return retval; @@ -2147,7 +2147,7 @@ as = async_getcompleted(ps); if (as) { - snoop(&ps->dev->dev, "reap %pK\n", as->userurb); + snoop(&ps->dev->dev, "reap %px\n", as->userurb); retval = processcompl_compat(as, (void __user * __user *)arg); free_async(as); } else { @@ -2612,7 +2612,7 @@ #endif case USBDEVFS_DISCARDURB: - snoop(&dev->dev, "%s: DISCARDURB %pK\n", __func__, p); + snoop(&dev->dev, "%s: DISCARDURB %px\n", __func__, p); ret = proc_unlinkurb(ps, p); break; --- linux-azure-5.8-5.8.0.orig/drivers/usb/core/driver.c +++ linux-azure-5.8-5.8.0/drivers/usb/core/driver.c @@ -269,8 +269,30 @@ if (error) return error; + /* Probe the USB device with the driver in hand, but only + * defer to a generic driver in case the current USB + * device driver has an id_table or a match function; i.e., + * when the device driver was explicitly matched against + * a device. + * + * If the device driver does not have either of these, + * then we assume that it can bind to any device and is + * not truly a more specialized/non-generic driver, so a + * return value of -ENODEV should not force the device + * to be handled by the generic USB driver, as there + * can still be another, more specialized, device driver. + * + * This accommodates the usbip driver. + * + * TODO: What if, in the future, there are multiple + * specialized USB device drivers for a particular device? + * In such cases, there is a need to try all matching + * specialised device drivers prior to setting the + * use_generic_driver bit. + */ error = udriver->probe(udev); - if (error == -ENODEV && udriver != &usb_generic_driver) { + if (error == -ENODEV && udriver != &usb_generic_driver && + (udriver->id_table || udriver->match)) { udev->use_generic_driver = 1; return -EPROBE_DEFER; } @@ -817,6 +839,22 @@ return NULL; } +bool usb_driver_applicable(struct usb_device *udev, + struct usb_device_driver *udrv) +{ + if (udrv->id_table && udrv->match) + return usb_device_match_id(udev, udrv->id_table) != NULL && + udrv->match(udev); + + if (udrv->id_table) + return usb_device_match_id(udev, udrv->id_table) != NULL; + + if (udrv->match) + return udrv->match(udev); + + return false; +} + static int usb_device_match(struct device *dev, struct device_driver *drv) { /* devices and interfaces are handled separately */ @@ -831,14 +869,14 @@ udev = to_usb_device(dev); udrv = to_usb_device_driver(drv); - if (udrv->id_table && - usb_device_match_id(udev, udrv->id_table) != NULL) { + /* If the device driver under consideration does not have a + * id_table or a match function, then let the driver's probe + * function decide. + */ + if (!udrv->id_table && !udrv->match) return 1; - } - if (udrv->match) - return udrv->match(udev); - return 0; + return usb_driver_applicable(udev, udrv); } else if (is_usb_interface(dev)) { struct usb_interface *intf; @@ -905,6 +943,27 @@ return 0; } +static int __usb_bus_reprobe_drivers(struct device *dev, void *data) +{ + struct usb_device_driver *new_udriver = data; + struct usb_device *udev; + int ret; + + /* Don't reprobe if current driver isn't usb_generic_driver */ + if (dev->driver != &usb_generic_driver.drvwrap.driver) + return 0; + + udev = to_usb_device(dev); + if (!usb_driver_applicable(udev, new_udriver)) + return 0; + + ret = device_reprobe(dev); + if (ret && ret != -EPROBE_DEFER) + dev_err(dev, "Failed to reprobe device (error %d)\n", ret); + + return 0; +} + /** * usb_register_device_driver - register a USB device (not interface) driver * @new_udriver: USB operations for the device driver @@ -934,13 +993,20 @@ retval = driver_register(&new_udriver->drvwrap.driver); - if (!retval) + if (!retval) { pr_info("%s: registered new device driver %s\n", usbcore_name, new_udriver->name); - else + /* + * Check whether any device could be better served with + * this new driver + */ + bus_for_each_dev(&usb_bus_type, NULL, new_udriver, + __usb_bus_reprobe_drivers); + } else { printk(KERN_ERR "%s: error %d registering device " " driver %s\n", usbcore_name, retval, new_udriver->name); + } return retval; } --- linux-azure-5.8-5.8.0.orig/drivers/usb/core/generic.c +++ linux-azure-5.8-5.8.0/drivers/usb/core/generic.c @@ -207,8 +207,7 @@ return 0; if (!udrv->id_table) return 0; - - return usb_device_match_id(udev, udrv->id_table) != NULL; + return usb_driver_applicable(udev, udrv); } static bool usb_generic_driver_match(struct usb_device *udev) --- linux-azure-5.8-5.8.0.orig/drivers/usb/core/hcd.c +++ linux-azure-5.8-5.8.0/drivers/usb/core/hcd.c @@ -1646,9 +1646,16 @@ /* pass ownership to the completion handler */ urb->status = status; - kcov_remote_start_usb((u64)urb->dev->bus->busnum); + /* + * This function can be called in task context inside another remote + * coverage collection section, but KCOV doesn't support that kind of + * recursion yet. Only collect coverage in softirq context for now. + */ + if (in_serving_softirq()) + kcov_remote_start_usb((u64)urb->dev->bus->busnum); urb->complete(urb); - kcov_remote_stop(); + if (in_serving_softirq()) + kcov_remote_stop(); usb_anchor_resume_wakeups(anchor); atomic_dec(&urb->use_count); --- linux-azure-5.8-5.8.0.orig/drivers/usb/core/hub.c +++ linux-azure-5.8-5.8.0/drivers/usb/core/hub.c @@ -821,9 +821,9 @@ * * Return: 0 if successful. A negative error code otherwise. */ -int usb_hub_set_port_power(struct usb_device *hdev, struct usb_hub *hub, - int port1, bool set) +int usb_hub_set_port_power(struct usb_hub *hub, int port1, bool set) { + struct usb_device *hdev = hub->hdev; int ret; if (set) @@ -2755,6 +2755,39 @@ || link_state == USB_SS_PORT_LS_COMP_MOD; } +static bool hub_port_power_cycle_required(struct usb_hub *hub, int port1, + u16 portstatus) +{ + u16 link_state; + + if (!hub_is_superspeed(hub->hdev)) + return false; + + link_state = portstatus & USB_PORT_STAT_LINK_STATE; + return link_state == USB_SS_PORT_LS_SS_DISABLED; +} + +static void hub_port_power_cycle(struct usb_hub *hub, int port1) +{ + struct usb_port *port_dev = hub->ports[port1 - 1]; + int ret; + + ret = usb_hub_set_port_power(hub, port1, false); + if (ret) { + dev_info(&port_dev->dev, "failed to disable port power\n"); + return; + } + + msleep(2 * hub_power_on_good_delay(hub)); + ret = usb_hub_set_port_power(hub, port1, true); + if (ret) { + dev_info(&port_dev->dev, "failed to enable port power\n"); + return; + } + + msleep(hub_power_on_good_delay(hub)); +} + static int hub_port_wait_reset(struct usb_hub *hub, int port1, struct usb_device *udev, unsigned int delay, bool warm) { @@ -3605,6 +3638,10 @@ if (status < 0) { dev_dbg(&udev->dev, "can't resume, status %d\n", status); hub_port_logical_disconnect(hub, port1); + if (hub_port_power_cycle_required(hub, port1, portstatus)) { + dev_dbg(&udev->dev, "device in disabled state, attempt power cycle\n"); + hub_port_power_cycle(hub, port1); + } } else { /* Try to enable USB2 hardware LPM */ usb_enable_usb2_hardware_lpm(udev); @@ -5241,10 +5278,7 @@ /* When halfway through our retry count, power-cycle the port */ if (i == (SET_CONFIG_TRIES / 2) - 1) { dev_info(&port_dev->dev, "attempt power cycle\n"); - usb_hub_set_port_power(hdev, hub, port1, false); - msleep(2 * hub_power_on_good_delay(hub)); - usb_hub_set_port_power(hdev, hub, port1, true); - msleep(hub_power_on_good_delay(hub)); + hub_port_power_cycle(hub, port1); } } if (hub->hdev->parent || --- linux-azure-5.8-5.8.0.orig/drivers/usb/core/hub.h +++ linux-azure-5.8-5.8.0/drivers/usb/core/hub.h @@ -114,8 +114,7 @@ int port1); extern void usb_hub_remove_port_device(struct usb_hub *hub, int port1); -extern int usb_hub_set_port_power(struct usb_device *hdev, struct usb_hub *hub, - int port1, bool set); +extern int usb_hub_set_port_power(struct usb_hub *hub, int port1, bool set); extern struct usb_hub *usb_hub_to_struct_hub(struct usb_device *hdev); extern int hub_port_debounce(struct usb_hub *hub, int port1, bool must_be_connected); --- linux-azure-5.8-5.8.0.orig/drivers/usb/core/message.c +++ linux-azure-5.8-5.8.0/drivers/usb/core/message.c @@ -1205,6 +1205,34 @@ } } +/* + * usb_disable_device_endpoints -- Disable all endpoints for a device + * @dev: the device whose endpoints are being disabled + * @skip_ep0: 0 to disable endpoint 0, 1 to skip it. + */ +static void usb_disable_device_endpoints(struct usb_device *dev, int skip_ep0) +{ + struct usb_hcd *hcd = bus_to_hcd(dev->bus); + int i; + + if (hcd->driver->check_bandwidth) { + /* First pass: Cancel URBs, leave endpoint pointers intact. */ + for (i = skip_ep0; i < 16; ++i) { + usb_disable_endpoint(dev, i, false); + usb_disable_endpoint(dev, i + USB_DIR_IN, false); + } + /* Remove endpoints from the host controller internal state */ + mutex_lock(hcd->bandwidth_mutex); + usb_hcd_alloc_bandwidth(dev, NULL, NULL, NULL); + mutex_unlock(hcd->bandwidth_mutex); + } + /* Second pass: remove endpoint pointers */ + for (i = skip_ep0; i < 16; ++i) { + usb_disable_endpoint(dev, i, true); + usb_disable_endpoint(dev, i + USB_DIR_IN, true); + } +} + /** * usb_disable_device - Disable all the endpoints for a USB device * @dev: the device whose endpoints are being disabled @@ -1218,7 +1246,6 @@ void usb_disable_device(struct usb_device *dev, int skip_ep0) { int i; - struct usb_hcd *hcd = bus_to_hcd(dev->bus); /* getting rid of interfaces will disconnect * any drivers bound to them (a key side effect) @@ -1264,22 +1291,8 @@ dev_dbg(&dev->dev, "%s nuking %s URBs\n", __func__, skip_ep0 ? "non-ep0" : "all"); - if (hcd->driver->check_bandwidth) { - /* First pass: Cancel URBs, leave endpoint pointers intact. */ - for (i = skip_ep0; i < 16; ++i) { - usb_disable_endpoint(dev, i, false); - usb_disable_endpoint(dev, i + USB_DIR_IN, false); - } - /* Remove endpoints from the host controller internal state */ - mutex_lock(hcd->bandwidth_mutex); - usb_hcd_alloc_bandwidth(dev, NULL, NULL, NULL); - mutex_unlock(hcd->bandwidth_mutex); - /* Second pass: remove endpoint pointers */ - } - for (i = skip_ep0; i < 16; ++i) { - usb_disable_endpoint(dev, i, true); - usb_disable_endpoint(dev, i + USB_DIR_IN, true); - } + + usb_disable_device_endpoints(dev, skip_ep0); } /** @@ -1522,6 +1535,9 @@ * The caller must own the device lock. * * Return: Zero on success, else a negative error code. + * + * If this routine fails the device will probably be in an unusable state + * with endpoints disabled, and interfaces only partially enabled. */ int usb_reset_configuration(struct usb_device *dev) { @@ -1537,10 +1553,7 @@ * calls during probe() are fine */ - for (i = 1; i < 16; ++i) { - usb_disable_endpoint(dev, i, true); - usb_disable_endpoint(dev, i + USB_DIR_IN, true); - } + usb_disable_device_endpoints(dev, 1); /* skip ep0*/ config = dev->actconfig; retval = 0; @@ -1553,34 +1566,10 @@ mutex_unlock(hcd->bandwidth_mutex); return -ENOMEM; } - /* Make sure we have enough bandwidth for each alternate setting 0 */ - for (i = 0; i < config->desc.bNumInterfaces; i++) { - struct usb_interface *intf = config->interface[i]; - struct usb_host_interface *alt; - - alt = usb_altnum_to_altsetting(intf, 0); - if (!alt) - alt = &intf->altsetting[0]; - if (alt != intf->cur_altsetting) - retval = usb_hcd_alloc_bandwidth(dev, NULL, - intf->cur_altsetting, alt); - if (retval < 0) - break; - } - /* If not, reinstate the old alternate settings */ + + /* xHCI adds all endpoints in usb_hcd_alloc_bandwidth */ + retval = usb_hcd_alloc_bandwidth(dev, config, NULL, NULL); if (retval < 0) { -reset_old_alts: - for (i--; i >= 0; i--) { - struct usb_interface *intf = config->interface[i]; - struct usb_host_interface *alt; - - alt = usb_altnum_to_altsetting(intf, 0); - if (!alt) - alt = &intf->altsetting[0]; - if (alt != intf->cur_altsetting) - usb_hcd_alloc_bandwidth(dev, NULL, - alt, intf->cur_altsetting); - } usb_enable_lpm(dev); mutex_unlock(hcd->bandwidth_mutex); return retval; @@ -1589,8 +1578,12 @@ USB_REQ_SET_CONFIGURATION, 0, config->desc.bConfigurationValue, 0, NULL, 0, USB_CTRL_SET_TIMEOUT); - if (retval < 0) - goto reset_old_alts; + if (retval < 0) { + usb_hcd_alloc_bandwidth(dev, NULL, NULL, NULL); + usb_enable_lpm(dev); + mutex_unlock(hcd->bandwidth_mutex); + return retval; + } mutex_unlock(hcd->bandwidth_mutex); /* re-init hc/hcd interface/endpoint state */ --- linux-azure-5.8-5.8.0.orig/drivers/usb/core/port.c +++ linux-azure-5.8-5.8.0/drivers/usb/core/port.c @@ -217,7 +217,7 @@ if (retval < 0) return retval; - retval = usb_hub_set_port_power(hdev, hub, port1, true); + retval = usb_hub_set_port_power(hub, port1, true); msleep(hub_power_on_good_delay(hub)); if (udev && !retval) { /* @@ -273,7 +273,7 @@ if (retval < 0) return retval; - retval = usb_hub_set_port_power(hdev, hub, port1, false); + retval = usb_hub_set_port_power(hub, port1, false); usb_clear_port_feature(hdev, port1, USB_PORT_FEAT_C_CONNECTION); if (!port_dev->is_superspeed) usb_clear_port_feature(hdev, port1, USB_PORT_FEAT_C_ENABLE); --- linux-azure-5.8-5.8.0.orig/drivers/usb/core/quirks.c +++ linux-azure-5.8-5.8.0/drivers/usb/core/quirks.c @@ -25,17 +25,23 @@ static char quirks_param[128]; -static int quirks_param_set(const char *val, const struct kernel_param *kp) +static int quirks_param_set(const char *value, const struct kernel_param *kp) { - char *p, *field; + char *val, *p, *field; u16 vid, pid; u32 flags; size_t i; int err; + val = kstrdup(value, GFP_KERNEL); + if (!val) + return -ENOMEM; + err = param_set_copystring(val, kp); - if (err) + if (err) { + kfree(val); return err; + } mutex_lock(&quirk_mutex); @@ -60,10 +66,11 @@ if (!quirk_list) { quirk_count = 0; mutex_unlock(&quirk_mutex); + kfree(val); return -ENOMEM; } - for (i = 0, p = (char *)val; p && *p;) { + for (i = 0, p = val; p && *p;) { /* Each entry consists of VID:PID:flags */ field = strsep(&p, ":"); if (!field) @@ -144,6 +151,7 @@ unlock: mutex_unlock(&quirk_mutex); + kfree(val); return 0; } @@ -334,12 +342,19 @@ { USB_DEVICE(0x06a3, 0x0006), .driver_info = USB_QUIRK_CONFIG_INTF_STRINGS }, + /* Agfa SNAPSCAN 1212U */ + { USB_DEVICE(0x06bd, 0x0001), .driver_info = USB_QUIRK_RESET_RESUME }, + /* Guillemot Webcam Hercules Dualpix Exchange (2nd ID) */ { USB_DEVICE(0x06f8, 0x0804), .driver_info = USB_QUIRK_RESET_RESUME }, /* Guillemot Webcam Hercules Dualpix Exchange*/ { USB_DEVICE(0x06f8, 0x3005), .driver_info = USB_QUIRK_RESET_RESUME }, + /* Guillemot Hercules DJ Console audio card (BZ 208357) */ + { USB_DEVICE(0x06f8, 0xb000), .driver_info = + USB_QUIRK_ENDPOINT_BLACKLIST }, + /* Midiman M-Audio Keystation 88es */ { USB_DEVICE(0x0763, 0x0192), .driver_info = USB_QUIRK_RESET_RESUME }, @@ -362,13 +377,23 @@ { USB_DEVICE(0x0926, 0x0202), .driver_info = USB_QUIRK_ENDPOINT_BLACKLIST }, + /* Sound Devices MixPre-D */ + { USB_DEVICE(0x0926, 0x0208), .driver_info = + USB_QUIRK_ENDPOINT_BLACKLIST }, + /* Keytouch QWERTY Panel keyboard */ { USB_DEVICE(0x0926, 0x3333), .driver_info = USB_QUIRK_CONFIG_INTF_STRINGS }, + /* Kingston DataTraveler 3.0 */ + { USB_DEVICE(0x0951, 0x1666), .driver_info = USB_QUIRK_NO_LPM }, + /* X-Rite/Gretag-Macbeth Eye-One Pro display colorimeter */ { USB_DEVICE(0x0971, 0x2000), .driver_info = USB_QUIRK_NO_SET_INTF }, + /* ELMO L-12F document camera */ + { USB_DEVICE(0x09a1, 0x0028), .driver_info = USB_QUIRK_DELAY_CTRL_MSG }, + /* Broadcom BCM92035DGROM BT dongle */ { USB_DEVICE(0x0a5c, 0x2021), .driver_info = USB_QUIRK_RESET_RESUME }, @@ -385,10 +410,17 @@ /* Generic RTL8153 based ethernet adapters */ { USB_DEVICE(0x0bda, 0x8153), .driver_info = USB_QUIRK_NO_LPM }, + /* SONiX USB DEVICE Touchpad */ + { USB_DEVICE(0x0c45, 0x7056), .driver_info = + USB_QUIRK_IGNORE_REMOTE_WAKEUP }, + /* Action Semiconductor flash disk */ { USB_DEVICE(0x10d6, 0x2200), .driver_info = USB_QUIRK_STRING_FETCH_255 }, + /* novation SoundControl XL */ + { USB_DEVICE(0x1235, 0x0061), .driver_info = USB_QUIRK_RESET_RESUME }, + /* Huawei 4G LTE module */ { USB_DEVICE(0x12d1, 0x15bb), .driver_info = USB_QUIRK_DISCONNECT_SUSPEND }, @@ -402,6 +434,10 @@ { USB_DEVICE(0x1532, 0x0116), .driver_info = USB_QUIRK_LINEAR_UFRAME_INTR_BINTERVAL }, + /* Lenovo ThinkCenter A630Z TI024Gen3 usb-audio */ + { USB_DEVICE(0x17ef, 0xa012), .driver_info = + USB_QUIRK_DISCONNECT_SUSPEND }, + /* BUILDWIN Photo Frame */ { USB_DEVICE(0x1908, 0x1315), .driver_info = USB_QUIRK_HONOR_BNUMINTERFACES }, @@ -457,15 +493,14 @@ { USB_DEVICE(0x2386, 0x3119), .driver_info = USB_QUIRK_NO_LPM }, + { USB_DEVICE(0x2386, 0x350e), .driver_info = USB_QUIRK_NO_LPM }, + /* DJI CineSSD */ { USB_DEVICE(0x2ca3, 0x0031), .driver_info = USB_QUIRK_NO_LPM }, /* INTEL VALUE SSD */ { USB_DEVICE(0x8086, 0xf1a5), .driver_info = USB_QUIRK_RESET_RESUME }, - /* novation SoundControl XL */ - { USB_DEVICE(0x1235, 0x0061), .driver_info = USB_QUIRK_RESET_RESUME }, - { } /* terminating entry must be last */ }; @@ -500,7 +535,10 @@ * Matched for devices with USB_QUIRK_ENDPOINT_BLACKLIST. */ static const struct usb_device_id usb_endpoint_blacklist[] = { + { USB_DEVICE_INTERFACE_NUMBER(0x06f8, 0xb000, 5), .driver_info = 0x01 }, + { USB_DEVICE_INTERFACE_NUMBER(0x06f8, 0xb000, 5), .driver_info = 0x81 }, { USB_DEVICE_INTERFACE_NUMBER(0x0926, 0x0202, 1), .driver_info = 0x85 }, + { USB_DEVICE_INTERFACE_NUMBER(0x0926, 0x0208, 1), .driver_info = 0x85 }, { } }; --- linux-azure-5.8-5.8.0.orig/drivers/usb/core/sysfs.c +++ linux-azure-5.8-5.8.0/drivers/usb/core/sysfs.c @@ -889,7 +889,11 @@ size_t srclen, n; int cfgno; void *src; + int retval; + retval = usb_lock_device_interruptible(udev); + if (retval < 0) + return -EINTR; /* The binary attribute begins with the device descriptor. * Following that are the raw descriptor entries for all the * configurations (config plus subsidiary descriptors). @@ -914,6 +918,7 @@ off -= srclen; } } + usb_unlock_device(udev); return count - nleft; } --- linux-azure-5.8-5.8.0.orig/drivers/usb/core/urb.c +++ linux-azure-5.8-5.8.0/drivers/usb/core/urb.c @@ -772,11 +772,12 @@ EXPORT_SYMBOL_GPL(usb_block_urb); /** - * usb_kill_anchored_urbs - cancel transfer requests en masse + * usb_kill_anchored_urbs - kill all URBs associated with an anchor * @anchor: anchor the requests are bound to * - * this allows all outstanding URBs to be killed starting - * from the back of the queue + * This kills all outstanding URBs starting from the back of the queue, + * with guarantee that no completer callbacks will take place from the + * anchor after this function returns. * * This routine should not be called by a driver after its disconnect * method has returned. @@ -784,20 +785,26 @@ void usb_kill_anchored_urbs(struct usb_anchor *anchor) { struct urb *victim; + int surely_empty; - spin_lock_irq(&anchor->lock); - while (!list_empty(&anchor->urb_list)) { - victim = list_entry(anchor->urb_list.prev, struct urb, - anchor_list); - /* we must make sure the URB isn't freed before we kill it*/ - usb_get_urb(victim); - spin_unlock_irq(&anchor->lock); - /* this will unanchor the URB */ - usb_kill_urb(victim); - usb_put_urb(victim); + do { spin_lock_irq(&anchor->lock); - } - spin_unlock_irq(&anchor->lock); + while (!list_empty(&anchor->urb_list)) { + victim = list_entry(anchor->urb_list.prev, + struct urb, anchor_list); + /* make sure the URB isn't freed before we kill it */ + usb_get_urb(victim); + spin_unlock_irq(&anchor->lock); + /* this will unanchor the URB */ + usb_kill_urb(victim); + usb_put_urb(victim); + spin_lock_irq(&anchor->lock); + } + surely_empty = usb_anchor_check_wakeup(anchor); + + spin_unlock_irq(&anchor->lock); + cpu_relax(); + } while (!surely_empty); } EXPORT_SYMBOL_GPL(usb_kill_anchored_urbs); @@ -816,21 +823,27 @@ void usb_poison_anchored_urbs(struct usb_anchor *anchor) { struct urb *victim; + int surely_empty; - spin_lock_irq(&anchor->lock); - anchor->poisoned = 1; - while (!list_empty(&anchor->urb_list)) { - victim = list_entry(anchor->urb_list.prev, struct urb, - anchor_list); - /* we must make sure the URB isn't freed before we kill it*/ - usb_get_urb(victim); - spin_unlock_irq(&anchor->lock); - /* this will unanchor the URB */ - usb_poison_urb(victim); - usb_put_urb(victim); + do { spin_lock_irq(&anchor->lock); - } - spin_unlock_irq(&anchor->lock); + anchor->poisoned = 1; + while (!list_empty(&anchor->urb_list)) { + victim = list_entry(anchor->urb_list.prev, + struct urb, anchor_list); + /* make sure the URB isn't freed before we kill it */ + usb_get_urb(victim); + spin_unlock_irq(&anchor->lock); + /* this will unanchor the URB */ + usb_poison_urb(victim); + usb_put_urb(victim); + spin_lock_irq(&anchor->lock); + } + surely_empty = usb_anchor_check_wakeup(anchor); + + spin_unlock_irq(&anchor->lock); + cpu_relax(); + } while (!surely_empty); } EXPORT_SYMBOL_GPL(usb_poison_anchored_urbs); @@ -970,14 +983,20 @@ { struct urb *victim; unsigned long flags; + int surely_empty; - spin_lock_irqsave(&anchor->lock, flags); - while (!list_empty(&anchor->urb_list)) { - victim = list_entry(anchor->urb_list.prev, struct urb, - anchor_list); - __usb_unanchor_urb(victim, anchor); - } - spin_unlock_irqrestore(&anchor->lock, flags); + do { + spin_lock_irqsave(&anchor->lock, flags); + while (!list_empty(&anchor->urb_list)) { + victim = list_entry(anchor->urb_list.prev, + struct urb, anchor_list); + __usb_unanchor_urb(victim, anchor); + } + surely_empty = usb_anchor_check_wakeup(anchor); + + spin_unlock_irqrestore(&anchor->lock, flags); + cpu_relax(); + } while (!surely_empty); } EXPORT_SYMBOL_GPL(usb_scuttle_anchored_urbs); --- linux-azure-5.8-5.8.0.orig/drivers/usb/core/usb.h +++ linux-azure-5.8-5.8.0/drivers/usb/core/usb.h @@ -74,6 +74,8 @@ const struct usb_device_id *id); extern const struct usb_device_id *usb_device_match_id(struct usb_device *udev, const struct usb_device_id *id); +extern bool usb_driver_applicable(struct usb_device *udev, + struct usb_device_driver *udrv); extern void usb_forced_unbind_intf(struct usb_interface *intf); extern void usb_unbind_and_rebind_marked_interfaces(struct usb_device *udev); --- linux-azure-5.8-5.8.0.orig/drivers/usb/dwc2/gadget.c +++ linux-azure-5.8-5.8.0/drivers/usb/dwc2/gadget.c @@ -712,8 +712,11 @@ */ static unsigned int dwc2_gadget_get_chain_limit(struct dwc2_hsotg_ep *hs_ep) { + const struct usb_endpoint_descriptor *ep_desc = hs_ep->ep.desc; int is_isoc = hs_ep->isochronous; unsigned int maxsize; + u32 mps = hs_ep->ep.maxpacket; + int dir_in = hs_ep->dir_in; if (is_isoc) maxsize = (hs_ep->dir_in ? DEV_DMA_ISOC_TX_NBYTES_LIMIT : @@ -722,6 +725,11 @@ else maxsize = DEV_DMA_NBYTES_LIMIT * MAX_DMA_DESC_NUM_GENERIC; + /* Interrupt OUT EP with mps not multiple of 4 */ + if (hs_ep->index) + if (usb_endpoint_xfer_int(ep_desc) && !dir_in && (mps % 4)) + maxsize = mps * MAX_DMA_DESC_NUM_GENERIC; + return maxsize; } @@ -737,11 +745,14 @@ * Isochronous - descriptor rx/tx bytes bitfield limit, * Control In/Bulk/Interrupt - multiple of mps. This will allow to not * have concatenations from various descriptors within one packet. + * Interrupt OUT - if mps not multiple of 4 then a single packet corresponds + * to a single descriptor. * * Selects corresponding mask for RX/TX bytes as well. */ static u32 dwc2_gadget_get_desc_params(struct dwc2_hsotg_ep *hs_ep, u32 *mask) { + const struct usb_endpoint_descriptor *ep_desc = hs_ep->ep.desc; u32 mps = hs_ep->ep.maxpacket; int dir_in = hs_ep->dir_in; u32 desc_size = 0; @@ -765,6 +776,13 @@ desc_size -= desc_size % mps; } + /* Interrupt OUT EP with mps not multiple of 4 */ + if (hs_ep->index) + if (usb_endpoint_xfer_int(ep_desc) && !dir_in && (mps % 4)) { + desc_size = mps; + *mask = DEV_DMA_NBYTES_MASK; + } + return desc_size; } @@ -1123,13 +1141,7 @@ length += (mps - (length % mps)); } - /* - * If more data to send, adjust DMA for EP0 out data stage. - * ureq->dma stays unchanged, hence increment it by already - * passed passed data count before starting new transaction. - */ - if (!index && hsotg->ep0_state == DWC2_EP0_DATA_OUT && - continuing) + if (continuing) offset = ureq->actual; /* Fill DDMA chain entries */ @@ -1531,7 +1543,6 @@ static struct dwc2_hsotg_ep *ep_from_windex(struct dwc2_hsotg *hsotg, u32 windex) { - struct dwc2_hsotg_ep *ep; int dir = (windex & USB_DIR_IN) ? 1 : 0; int idx = windex & 0x7F; @@ -1541,12 +1552,7 @@ if (idx > hsotg->num_of_eps) return NULL; - ep = index_to_ep(hsotg, idx, dir); - - if (idx && ep->dir_in != dir) - return NULL; - - return ep; + return index_to_ep(hsotg, idx, dir); } /** @@ -2320,22 +2326,36 @@ */ static unsigned int dwc2_gadget_get_xfersize_ddma(struct dwc2_hsotg_ep *hs_ep) { + const struct usb_endpoint_descriptor *ep_desc = hs_ep->ep.desc; struct dwc2_hsotg *hsotg = hs_ep->parent; unsigned int bytes_rem = 0; + unsigned int bytes_rem_correction = 0; struct dwc2_dma_desc *desc = hs_ep->desc_list; int i; u32 status; + u32 mps = hs_ep->ep.maxpacket; + int dir_in = hs_ep->dir_in; if (!desc) return -EINVAL; + /* Interrupt OUT EP with mps not multiple of 4 */ + if (hs_ep->index) + if (usb_endpoint_xfer_int(ep_desc) && !dir_in && (mps % 4)) + bytes_rem_correction = 4 - (mps % 4); + for (i = 0; i < hs_ep->desc_count; ++i) { status = desc->status; bytes_rem += status & DEV_DMA_NBYTES_MASK; + bytes_rem -= bytes_rem_correction; if (status & DEV_DMA_STS_MASK) dev_err(hsotg->dev, "descriptor %d closed with %x\n", i, status & DEV_DMA_STS_MASK); + + if (status & DEV_DMA_L) + break; + desc++; } --- linux-azure-5.8-5.8.0.orig/drivers/usb/dwc2/hcd.c +++ linux-azure-5.8-5.8.0/drivers/usb/dwc2/hcd.c @@ -1313,19 +1313,20 @@ if (num_packets > max_hc_pkt_count) { num_packets = max_hc_pkt_count; chan->xfer_len = num_packets * chan->max_packet; + } else if (chan->ep_is_in) { + /* + * Always program an integral # of max packets + * for IN transfers. + * Note: This assumes that the input buffer is + * aligned and sized accordingly. + */ + chan->xfer_len = num_packets * chan->max_packet; } } else { /* Need 1 packet for transfer length of 0 */ num_packets = 1; } - if (chan->ep_is_in) - /* - * Always program an integral # of max packets for IN - * transfers - */ - chan->xfer_len = num_packets * chan->max_packet; - if (chan->ep_type == USB_ENDPOINT_XFER_INT || chan->ep_type == USB_ENDPOINT_XFER_ISOC) /* --- linux-azure-5.8-5.8.0.orig/drivers/usb/dwc2/hcd_intr.c +++ linux-azure-5.8-5.8.0/drivers/usb/dwc2/hcd_intr.c @@ -500,7 +500,7 @@ &short_read); if (urb->actual_length + xfer_length > urb->length) { - dev_warn(hsotg->dev, "%s(): trimming xfer length\n", __func__); + dev_dbg(hsotg->dev, "%s(): trimming xfer length\n", __func__); xfer_length = urb->length - urb->actual_length; } @@ -1977,6 +1977,18 @@ qtd->error_count++; dwc2_update_urb_state_abn(hsotg, chan, chnum, qtd->urb, qtd, DWC2_HC_XFER_XACT_ERR); + /* + * We can get here after a completed transaction + * (urb->actual_length >= urb->length) which was not reported + * as completed. If that is the case, and we do not abort + * the transfer, a transfer of size 0 will be enqueued + * subsequently. If urb->actual_length is not DMA-aligned, + * the buffer will then point to an unaligned address, and + * the resulting behavior is undefined. Bail out in that + * situation. + */ + if (qtd->urb->actual_length >= qtd->urb->length) + qtd->error_count = 3; dwc2_hcd_save_data_toggle(hsotg, chan, chnum, qtd); dwc2_halt_channel(hsotg, chan, qtd, DWC2_HC_XFER_XACT_ERR); } --- linux-azure-5.8-5.8.0.orig/drivers/usb/dwc2/params.c +++ linux-azure-5.8-5.8.0/drivers/usb/dwc2/params.c @@ -860,7 +860,7 @@ int dwc2_init_params(struct dwc2_hsotg *hsotg) { const struct of_device_id *match; - void (*set_params)(void *data); + void (*set_params)(struct dwc2_hsotg *data); dwc2_set_default_params(hsotg); dwc2_get_device_properties(hsotg); --- linux-azure-5.8-5.8.0.orig/drivers/usb/dwc2/platform.c +++ linux-azure-5.8-5.8.0/drivers/usb/dwc2/platform.c @@ -582,18 +582,27 @@ if (hsotg->gadget_enabled) { retval = usb_add_gadget_udc(hsotg->dev, &hsotg->gadget); if (retval) { + hsotg->gadget.udc = NULL; dwc2_hsotg_remove(hsotg); - goto error_init; + goto error_debugfs; } } #endif /* CONFIG_USB_DWC2_PERIPHERAL || CONFIG_USB_DWC2_DUAL_ROLE */ return 0; +#if IS_ENABLED(CONFIG_USB_DWC2_PERIPHERAL) || \ + IS_ENABLED(CONFIG_USB_DWC2_DUAL_ROLE) +error_debugfs: + dwc2_debugfs_exit(hsotg); + if (hsotg->hcd_enabled) + dwc2_hcd_remove(hsotg); +#endif error_init: if (hsotg->params.activate_stm_id_vb_detection) regulator_disable(hsotg->usb33d); error: - dwc2_lowlevel_hw_disable(hsotg); + if (hsotg->dr_mode != USB_DR_MODE_PERIPHERAL) + dwc2_lowlevel_hw_disable(hsotg); return retval; } --- linux-azure-5.8-5.8.0.orig/drivers/usb/dwc3/core.c +++ linux-azure-5.8-5.8.0/drivers/usb/dwc3/core.c @@ -119,9 +119,7 @@ struct dwc3 *dwc = work_to_dwc(work); unsigned long flags; int ret; - - if (dwc->dr_mode != USB_DR_MODE_OTG) - return; + u32 reg; pm_runtime_get_sync(dwc->dev); @@ -172,6 +170,11 @@ otg_set_vbus(dwc->usb2_phy->otg, true); phy_set_mode(dwc->usb2_generic_phy, PHY_MODE_USB_HOST); phy_set_mode(dwc->usb3_generic_phy, PHY_MODE_USB_HOST); + if (dwc->dis_split_quirk) { + reg = dwc3_readl(dwc->regs, DWC3_GUCTL3); + reg |= DWC3_GUCTL3_SPLITDISABLE; + dwc3_writel(dwc->regs, DWC3_GUCTL3, reg); + } } break; case DWC3_GCTL_PRTCAP_DEVICE: @@ -203,6 +206,9 @@ { unsigned long flags; + if (dwc->dr_mode != USB_DR_MODE_OTG) + return; + spin_lock_irqsave(&dwc->lock, flags); dwc->desired_dr_role = mode; spin_unlock_irqrestore(&dwc->lock, flags); @@ -930,13 +936,6 @@ */ dwc3_writel(dwc->regs, DWC3_GUID, LINUX_VERSION_CODE); - /* Handle USB2.0-only core configuration */ - if (DWC3_GHWPARAMS3_SSPHY_IFC(dwc->hwparams.hwparams3) == - DWC3_GHWPARAMS3_SSPHY_IFC_DIS) { - if (dwc->maximum_speed == USB_SPEED_SUPER) - dwc->maximum_speed = USB_SPEED_HIGH; - } - ret = dwc3_phy_setup(dwc); if (ret) goto err0; @@ -1357,6 +1356,9 @@ dwc->dis_metastability_quirk = device_property_read_bool(dev, "snps,dis_metastability_quirk"); + dwc->dis_split_quirk = device_property_read_bool(dev, + "snps,dis-split-quirk"); + dwc->lpm_nyet_threshold = lpm_nyet_threshold; dwc->tx_de_emphasis = tx_de_emphasis; @@ -1382,6 +1384,8 @@ static void dwc3_check_params(struct dwc3 *dwc) { struct device *dev = dwc->dev; + unsigned int hwparam_gen = + DWC3_GHWPARAMS3_SSPHY_IFC(dwc->hwparams.hwparams3); /* Check for proper value of imod_interval */ if (dwc->imod_interval && !dwc3_has_imod(dwc)) { @@ -1413,17 +1417,23 @@ dwc->maximum_speed); /* fall through */ case USB_SPEED_UNKNOWN: - /* default to superspeed */ - dwc->maximum_speed = USB_SPEED_SUPER; - - /* - * default to superspeed plus if we are capable. - */ - if ((DWC3_IP_IS(DWC31) || DWC3_IP_IS(DWC32)) && - (DWC3_GHWPARAMS3_SSPHY_IFC(dwc->hwparams.hwparams3) == - DWC3_GHWPARAMS3_SSPHY_IFC_GEN2)) + switch (hwparam_gen) { + case DWC3_GHWPARAMS3_SSPHY_IFC_GEN2: dwc->maximum_speed = USB_SPEED_SUPER_PLUS; - + break; + case DWC3_GHWPARAMS3_SSPHY_IFC_GEN1: + if (DWC3_IP_IS(DWC32)) + dwc->maximum_speed = USB_SPEED_SUPER_PLUS; + else + dwc->maximum_speed = USB_SPEED_SUPER; + break; + case DWC3_GHWPARAMS3_SSPHY_IFC_DIS: + dwc->maximum_speed = USB_SPEED_HIGH; + break; + default: + dwc->maximum_speed = USB_SPEED_SUPER; + break; + } break; } } @@ -1555,6 +1565,17 @@ err5: dwc3_event_buffers_cleanup(dwc); + + usb_phy_shutdown(dwc->usb2_phy); + usb_phy_shutdown(dwc->usb3_phy); + phy_exit(dwc->usb2_generic_phy); + phy_exit(dwc->usb3_generic_phy); + + usb_phy_set_suspend(dwc->usb2_phy, 1); + usb_phy_set_suspend(dwc->usb3_phy, 1); + phy_power_off(dwc->usb2_generic_phy); + phy_power_off(dwc->usb3_generic_phy); + dwc3_ulpi_exit(dwc); err4: @@ -1590,9 +1611,9 @@ dwc3_core_exit(dwc); dwc3_ulpi_exit(dwc); - pm_runtime_put_sync(&pdev->dev); - pm_runtime_allow(&pdev->dev); pm_runtime_disable(&pdev->dev); + pm_runtime_put_noidle(&pdev->dev); + pm_runtime_set_suspended(&pdev->dev); dwc3_free_event_buffers(dwc); dwc3_free_scratch_buffers(dwc); @@ -1729,7 +1750,7 @@ if (PMSG_IS_AUTO(msg)) break; - ret = dwc3_core_init(dwc); + ret = dwc3_core_init_for_resume(dwc); if (ret) return ret; @@ -1866,10 +1887,26 @@ return 0; } + +static void dwc3_complete(struct device *dev) +{ + struct dwc3 *dwc = dev_get_drvdata(dev); + u32 reg; + + if (dwc->current_dr_role == DWC3_GCTL_PRTCAP_HOST && + dwc->dis_split_quirk) { + reg = dwc3_readl(dwc->regs, DWC3_GUCTL3); + reg |= DWC3_GUCTL3_SPLITDISABLE; + dwc3_writel(dwc->regs, DWC3_GUCTL3, reg); + } +} +#else +#define dwc3_complete NULL #endif /* CONFIG_PM_SLEEP */ static const struct dev_pm_ops dwc3_dev_pm_ops = { SET_SYSTEM_SLEEP_PM_OPS(dwc3_suspend, dwc3_resume) + .complete = dwc3_complete, SET_RUNTIME_PM_OPS(dwc3_runtime_suspend, dwc3_runtime_resume, dwc3_runtime_idle) }; --- linux-azure-5.8-5.8.0.orig/drivers/usb/dwc3/core.h +++ linux-azure-5.8-5.8.0/drivers/usb/dwc3/core.h @@ -138,6 +138,7 @@ #define DWC3_GEVNTCOUNT(n) (0xc40c + ((n) * 0x10)) #define DWC3_GHWPARAMS8 0xc600 +#define DWC3_GUCTL3 0xc60c #define DWC3_GFLADJ 0xc630 /* Device Registers */ @@ -284,6 +285,7 @@ /* Global USB2 PHY Vendor Control Register */ #define DWC3_GUSB2PHYACC_NEWREGREQ BIT(25) +#define DWC3_GUSB2PHYACC_DONE BIT(24) #define DWC3_GUSB2PHYACC_BUSY BIT(23) #define DWC3_GUSB2PHYACC_WRITE BIT(22) #define DWC3_GUSB2PHYACC_ADDR(n) (n << 16) @@ -380,6 +382,9 @@ /* Global User Control Register 2 */ #define DWC3_GUCTL2_RST_ACTBITLATER BIT(14) +/* Global User Control Register 3 */ +#define DWC3_GUCTL3_SPLITDISABLE BIT(14) + /* Device Configuration Register */ #define DWC3_DCFG_DEVADDR(addr) ((addr) << 3) #define DWC3_DCFG_DEVADDR_MASK DWC3_DCFG_DEVADDR(0x7f) @@ -706,6 +711,7 @@ #define DWC3_EP_IGNORE_NEXT_NOSTREAM BIT(8) #define DWC3_EP_FORCE_RESTART_STREAM BIT(9) #define DWC3_EP_FIRST_STREAM_PRIMED BIT(10) +#define DWC3_EP_PENDING_CLEAR_STALL BIT(11) /* This last one is specific to EP0 */ #define DWC3_EP0_DIR_IN BIT(31) @@ -1052,6 +1058,7 @@ * 2 - No de-emphasis * 3 - Reserved * @dis_metastability_quirk: set to disable metastability quirk. + * @dis_split_quirk: set to disable split boundary. * @imod_interval: set the interrupt moderation interval in 250ns * increments or 0 to disable. */ @@ -1245,6 +1252,8 @@ unsigned dis_metastability_quirk:1; + unsigned dis_split_quirk:1; + u16 imod_interval; }; --- linux-azure-5.8-5.8.0.orig/drivers/usb/dwc3/dwc3-meson-g12a.c +++ linux-azure-5.8-5.8.0/drivers/usb/dwc3/dwc3-meson-g12a.c @@ -747,7 +747,7 @@ ret = priv->drvdata->setup_regmaps(priv, base); if (ret) - return ret; + goto err_disable_clks; if (priv->vbus) { ret = regulator_enable(priv->vbus); --- linux-azure-5.8-5.8.0.orig/drivers/usb/dwc3/dwc3-of-simple.c +++ linux-azure-5.8-5.8.0/drivers/usb/dwc3/dwc3-of-simple.c @@ -176,6 +176,7 @@ { .compatible = "cavium,octeon-7130-usb-uctl" }, { .compatible = "sprd,sc9860-dwc3" }, { .compatible = "allwinner,sun50i-h6-dwc3" }, + { .compatible = "hisilicon,hi3670-dwc3" }, { /* Sentinel */ } }; MODULE_DEVICE_TABLE(of, of_dwc3_simple_match); --- linux-azure-5.8-5.8.0.orig/drivers/usb/dwc3/dwc3-pci.c +++ linux-azure-5.8-5.8.0/drivers/usb/dwc3/dwc3-pci.c @@ -40,6 +40,7 @@ #define PCI_DEVICE_ID_INTEL_TGPLP 0xa0ee #define PCI_DEVICE_ID_INTEL_TGPH 0x43ee #define PCI_DEVICE_ID_INTEL_JSP 0x4dee +#define PCI_DEVICE_ID_INTEL_ADLS 0x7ae1 #define PCI_INTEL_BXT_DSM_GUID "732b85d5-b7a7-4a1b-9ba0-4bbd00ffd511" #define PCI_INTEL_BXT_FUNC_PMU_PWR 4 @@ -147,7 +148,8 @@ if (pdev->vendor == PCI_VENDOR_ID_INTEL) { if (pdev->device == PCI_DEVICE_ID_INTEL_BXT || - pdev->device == PCI_DEVICE_ID_INTEL_BXT_M) { + pdev->device == PCI_DEVICE_ID_INTEL_BXT_M || + pdev->device == PCI_DEVICE_ID_INTEL_EHLLP) { guid_parse(PCI_INTEL_BXT_DSM_GUID, &dwc->guid); dwc->has_dsm_for_pm = true; } @@ -366,6 +368,9 @@ { PCI_VDEVICE(INTEL, PCI_DEVICE_ID_INTEL_JSP), (kernel_ulong_t) &dwc3_pci_intel_properties, }, + { PCI_VDEVICE(INTEL, PCI_DEVICE_ID_INTEL_ADLS), + (kernel_ulong_t) &dwc3_pci_intel_properties, }, + { PCI_VDEVICE(AMD, PCI_DEVICE_ID_AMD_NL_USB), (kernel_ulong_t) &dwc3_pci_amd_properties, }, { } /* Terminating Entry */ --- linux-azure-5.8-5.8.0.orig/drivers/usb/dwc3/ep0.c +++ linux-azure-5.8-5.8.0/drivers/usb/dwc3/ep0.c @@ -524,6 +524,11 @@ ret = __dwc3_gadget_ep_set_halt(dep, set, true); if (ret) return -EINVAL; + + /* ClearFeature(Halt) may need delayed status */ + if (!set && (dep->flags & DWC3_EP_END_TRANSFER_PENDING)) + return USB_GADGET_DELAYED_STATUS; + break; default: return -EINVAL; @@ -942,12 +947,16 @@ static void __dwc3_ep0_do_control_data(struct dwc3 *dwc, struct dwc3_ep *dep, struct dwc3_request *req) { + unsigned int trb_length = 0; int ret; req->direction = !!dep->number; if (req->request.length == 0) { - dwc3_ep0_prepare_one_trb(dep, dwc->ep0_trb_addr, 0, + if (!req->direction) + trb_length = dep->endpoint.maxpacket; + + dwc3_ep0_prepare_one_trb(dep, dwc->bounce_addr, trb_length, DWC3_TRBCTL_CONTROL_DATA, false); ret = dwc3_ep0_start_trans(dep); } else if (!IS_ALIGNED(req->request.length, dep->endpoint.maxpacket) @@ -994,9 +1003,12 @@ req->trb = &dwc->ep0_trb[dep->trb_enqueue - 1]; + if (!req->direction) + trb_length = dep->endpoint.maxpacket; + /* Now prepare one extra TRB to align transfer size */ dwc3_ep0_prepare_one_trb(dep, dwc->bounce_addr, - 0, DWC3_TRBCTL_CONTROL_DATA, + trb_length, DWC3_TRBCTL_CONTROL_DATA, false); ret = dwc3_ep0_start_trans(dep); } else { @@ -1042,6 +1054,18 @@ __dwc3_ep0_do_control_status(dwc, dep); } +void dwc3_ep0_send_delayed_status(struct dwc3 *dwc) +{ + unsigned int direction = !dwc->ep0_expect_in; + + dwc->delayed_status = false; + + if (dwc->ep0state != EP0_STATUS_PHASE) + return; + + __dwc3_ep0_do_control_status(dwc, dwc->eps[direction]); +} + static void dwc3_ep0_end_control_data(struct dwc3 *dwc, struct dwc3_ep *dep) { struct dwc3_gadget_ep_cmd_params params; --- linux-azure-5.8-5.8.0.orig/drivers/usb/dwc3/gadget.c +++ linux-azure-5.8-5.8.0/drivers/usb/dwc3/gadget.c @@ -1054,27 +1054,25 @@ * dwc3_prepare_one_trb - setup one TRB from one request * @dep: endpoint for which this request is prepared * @req: dwc3_request pointer + * @trb_length: buffer size of the TRB * @chain: should this TRB be chained to the next? * @node: only for isochronous endpoints. First TRB needs different type. */ static void dwc3_prepare_one_trb(struct dwc3_ep *dep, - struct dwc3_request *req, unsigned chain, unsigned node) + struct dwc3_request *req, unsigned int trb_length, + unsigned chain, unsigned node) { struct dwc3_trb *trb; - unsigned int length; dma_addr_t dma; unsigned stream_id = req->request.stream_id; unsigned short_not_ok = req->request.short_not_ok; unsigned no_interrupt = req->request.no_interrupt; unsigned is_last = req->request.is_last; - if (req->request.num_sgs > 0) { - length = sg_dma_len(req->start_sg); + if (req->request.num_sgs > 0) dma = sg_dma_address(req->start_sg); - } else { - length = req->request.length; + else dma = req->request.dma; - } trb = &dep->trb_pool[dep->trb_enqueue]; @@ -1086,7 +1084,7 @@ req->num_trbs++; - __dwc3_prepare_one_trb(dep, trb, dma, length, chain, node, + __dwc3_prepare_one_trb(dep, trb, dma, trb_length, chain, node, stream_id, short_not_ok, no_interrupt, is_last); } @@ -1096,16 +1094,27 @@ struct scatterlist *sg = req->start_sg; struct scatterlist *s; int i; - + unsigned int length = req->request.length; + unsigned int maxp = usb_endpoint_maxp(dep->endpoint.desc); + unsigned int rem = length % maxp; unsigned int remaining = req->request.num_mapped_sgs - req->num_queued_sgs; + /* + * If we resume preparing the request, then get the remaining length of + * the request and resume where we left off. + */ + for_each_sg(req->request.sg, s, req->num_queued_sgs, i) + length -= sg_dma_len(s); + for_each_sg(sg, s, remaining, i) { - unsigned int length = req->request.length; - unsigned int maxp = usb_endpoint_maxp(dep->endpoint.desc); - unsigned int rem = length % maxp; + unsigned int trb_length; unsigned chain = true; + trb_length = min_t(unsigned int, length, sg_dma_len(s)); + + length -= trb_length; + /* * IOMMU driver is coalescing the list of sgs which shares a * page boundary into one and giving it to USB driver. With @@ -1113,7 +1122,7 @@ * sgs passed. So mark the chain bit to false if it isthe last * mapped sg. */ - if (i == remaining - 1) + if ((i == remaining - 1) || !length) chain = false; if (rem && usb_endpoint_dir_out(dep->endpoint.desc) && !chain) { @@ -1123,7 +1132,7 @@ req->needs_extra_trb = true; /* prepare normal TRB */ - dwc3_prepare_one_trb(dep, req, true, i); + dwc3_prepare_one_trb(dep, req, trb_length, true, i); /* Now prepare one extra TRB to align transfer size */ trb = &dep->trb_pool[dep->trb_enqueue]; @@ -1134,8 +1143,39 @@ req->request.short_not_ok, req->request.no_interrupt, req->request.is_last); + } else if (req->request.zero && req->request.length && + !usb_endpoint_xfer_isoc(dep->endpoint.desc) && + !rem && !chain) { + struct dwc3 *dwc = dep->dwc; + struct dwc3_trb *trb; + + req->needs_extra_trb = true; + + /* Prepare normal TRB */ + dwc3_prepare_one_trb(dep, req, trb_length, true, i); + + /* Prepare one extra TRB to handle ZLP */ + trb = &dep->trb_pool[dep->trb_enqueue]; + req->num_trbs++; + __dwc3_prepare_one_trb(dep, trb, dwc->bounce_addr, 0, + !req->direction, 1, + req->request.stream_id, + req->request.short_not_ok, + req->request.no_interrupt, + req->request.is_last); + + /* Prepare one more TRB to handle MPS alignment */ + if (!req->direction) { + trb = &dep->trb_pool[dep->trb_enqueue]; + req->num_trbs++; + __dwc3_prepare_one_trb(dep, trb, dwc->bounce_addr, maxp, + false, 1, req->request.stream_id, + req->request.short_not_ok, + req->request.no_interrupt, + req->request.is_last); + } } else { - dwc3_prepare_one_trb(dep, req, chain, i); + dwc3_prepare_one_trb(dep, req, trb_length, chain, i); } /* @@ -1150,6 +1190,16 @@ req->num_queued_sgs++; + /* + * The number of pending SG entries may not correspond to the + * number of mapped SG entries. If all the data are queued, then + * don't include unused SG entries. + */ + if (length == 0) { + req->num_pending_sgs -= req->request.num_mapped_sgs - req->num_queued_sgs; + break; + } + if (!dwc3_calc_trbs_left(dep)) break; } @@ -1169,7 +1219,7 @@ req->needs_extra_trb = true; /* prepare normal TRB */ - dwc3_prepare_one_trb(dep, req, true, 0); + dwc3_prepare_one_trb(dep, req, length, true, 0); /* Now prepare one extra TRB to align transfer size */ trb = &dep->trb_pool[dep->trb_enqueue]; @@ -1180,6 +1230,7 @@ req->request.no_interrupt, req->request.is_last); } else if (req->request.zero && req->request.length && + !usb_endpoint_xfer_isoc(dep->endpoint.desc) && (IS_ALIGNED(req->request.length, maxp))) { struct dwc3 *dwc = dep->dwc; struct dwc3_trb *trb; @@ -1187,18 +1238,29 @@ req->needs_extra_trb = true; /* prepare normal TRB */ - dwc3_prepare_one_trb(dep, req, true, 0); + dwc3_prepare_one_trb(dep, req, length, true, 0); - /* Now prepare one extra TRB to handle ZLP */ + /* Prepare one extra TRB to handle ZLP */ trb = &dep->trb_pool[dep->trb_enqueue]; req->num_trbs++; __dwc3_prepare_one_trb(dep, trb, dwc->bounce_addr, 0, - false, 1, req->request.stream_id, + !req->direction, 1, req->request.stream_id, req->request.short_not_ok, req->request.no_interrupt, req->request.is_last); + + /* Prepare one more TRB to handle MPS alignment for OUT */ + if (!req->direction) { + trb = &dep->trb_pool[dep->trb_enqueue]; + req->num_trbs++; + __dwc3_prepare_one_trb(dep, trb, dwc->bounce_addr, maxp, + false, 1, req->request.stream_id, + req->request.short_not_ok, + req->request.no_interrupt, + req->request.is_last); + } } else { - dwc3_prepare_one_trb(dep, req, false, 0); + dwc3_prepare_one_trb(dep, req, length, false, 0); } } @@ -1544,8 +1606,13 @@ if (dep->flags & DWC3_EP_WAIT_TRANSFER_COMPLETE) return 0; - /* Start the transfer only after the END_TRANSFER is completed */ - if (dep->flags & DWC3_EP_END_TRANSFER_PENDING) { + /* + * Start the transfer only after the END_TRANSFER is completed + * and endpoint STALL is cleared. + */ + if ((dep->flags & DWC3_EP_END_TRANSFER_PENDING) || + (dep->flags & DWC3_EP_WEDGE) || + (dep->flags & DWC3_EP_STALL)) { dep->flags |= DWC3_EP_DELAY_START; return 0; } @@ -1673,6 +1740,8 @@ list_for_each_entry_safe(r, t, &dep->started_list, list) dwc3_gadget_move_cancelled_request(r); + dep->flags &= ~DWC3_EP_WAIT_TRANSFER_COMPLETE; + goto out; } } @@ -1738,6 +1807,18 @@ return 0; } + dwc3_stop_active_transfer(dep, true, true); + + list_for_each_entry_safe(req, tmp, &dep->started_list, list) + dwc3_gadget_move_cancelled_request(req); + + if (dep->flags & DWC3_EP_END_TRANSFER_PENDING) { + dep->flags |= DWC3_EP_PENDING_CLEAR_STALL; + return 0; + } + + dwc3_gadget_ep_cleanup_cancelled_requests(dep); + ret = dwc3_send_clear_stall_ep_cmd(dep); if (ret) { dev_err(dwc->dev, "failed to clear STALL on %s\n", @@ -1747,18 +1828,11 @@ dep->flags &= ~(DWC3_EP_STALL | DWC3_EP_WEDGE); - dwc3_stop_active_transfer(dep, true, true); + if ((dep->flags & DWC3_EP_DELAY_START) && + !usb_endpoint_xfer_isoc(dep->endpoint.desc)) + __dwc3_gadget_kick_transfer(dep); - list_for_each_entry_safe(req, tmp, &dep->started_list, list) - dwc3_gadget_move_cancelled_request(req); - - list_for_each_entry_safe(req, tmp, &dep->pending_list, list) - dwc3_gadget_move_cancelled_request(req); - - if (!(dep->flags & DWC3_EP_END_TRANSFER_PENDING)) { - dep->flags &= ~DWC3_EP_DELAY_START; - dwc3_gadget_ep_cleanup_cancelled_requests(dep); - } + dep->flags &= ~DWC3_EP_DELAY_START; } return ret; @@ -2648,16 +2722,25 @@ ret = dwc3_gadget_ep_reclaim_trb_linear(dep, req, event, status); + req->request.actual = req->request.length - req->remaining; + + if (!dwc3_gadget_ep_request_completed(req)) + goto out; + if (req->needs_extra_trb) { + unsigned int maxp = usb_endpoint_maxp(dep->endpoint.desc); + ret = dwc3_gadget_ep_reclaim_trb_linear(dep, req, event, status); - req->needs_extra_trb = false; - } - req->request.actual = req->request.length - req->remaining; + /* Reclaim MPS padding TRB for ZLP */ + if (!req->direction && req->request.zero && req->request.length && + !usb_endpoint_xfer_isoc(dep->endpoint.desc) && + (IS_ALIGNED(req->request.length, maxp))) + ret = dwc3_gadget_ep_reclaim_trb_linear(dep, req, event, status); - if (!dwc3_gadget_ep_request_completed(req)) - goto out; + req->needs_extra_trb = false; + } dwc3_gadget_giveback(dep, req, status); @@ -2902,6 +2985,26 @@ dep->flags &= ~DWC3_EP_END_TRANSFER_PENDING; dep->flags &= ~DWC3_EP_TRANSFER_STARTED; dwc3_gadget_ep_cleanup_cancelled_requests(dep); + + if (dep->flags & DWC3_EP_PENDING_CLEAR_STALL) { + struct dwc3 *dwc = dep->dwc; + + dep->flags &= ~DWC3_EP_PENDING_CLEAR_STALL; + if (dwc3_send_clear_stall_ep_cmd(dep)) { + struct usb_ep *ep0 = &dwc->eps[0]->endpoint; + + dev_err(dwc->dev, "failed to clear STALL on %s\n", + dep->name); + if (dwc->delayed_status) + __dwc3_gadget_ep0_set_halt(ep0, 1); + return; + } + + dep->flags &= ~(DWC3_EP_STALL | DWC3_EP_WEDGE); + if (dwc->delayed_status) + dwc3_ep0_send_delayed_status(dwc); + } + if ((dep->flags & DWC3_EP_DELAY_START) && !usb_endpoint_xfer_isoc(dep->endpoint.desc)) __dwc3_gadget_kick_transfer(dep); --- linux-azure-5.8-5.8.0.orig/drivers/usb/dwc3/gadget.h +++ linux-azure-5.8-5.8.0/drivers/usb/dwc3/gadget.h @@ -111,6 +111,7 @@ int dwc3_gadget_ep0_queue(struct usb_ep *ep, struct usb_request *request, gfp_t gfp_flags); int __dwc3_gadget_ep_set_halt(struct dwc3_ep *dep, int value, int protocol); +void dwc3_ep0_send_delayed_status(struct dwc3 *dwc); /** * dwc3_gadget_ep_get_transfer_index - Gets transfer index from HW --- linux-azure-5.8-5.8.0.orig/drivers/usb/dwc3/ulpi.c +++ linux-azure-5.8-5.8.0/drivers/usb/dwc3/ulpi.c @@ -7,6 +7,8 @@ * Author: Heikki Krogerus */ +#include +#include #include #include "core.h" @@ -17,14 +19,28 @@ DWC3_GUSB2PHYACC_ADDR(ULPI_ACCESS_EXTENDED) | \ DWC3_GUSB2PHYACC_EXTEND_ADDR(a) : DWC3_GUSB2PHYACC_ADDR(a)) -static int dwc3_ulpi_busyloop(struct dwc3 *dwc) +#define DWC3_ULPI_BASE_DELAY DIV_ROUND_UP(NSEC_PER_SEC, 60000000L) + +static int dwc3_ulpi_busyloop(struct dwc3 *dwc, u8 addr, bool read) { - unsigned count = 1000; + unsigned long ns = 5L * DWC3_ULPI_BASE_DELAY; + unsigned int count = 10000; u32 reg; + if (addr >= ULPI_EXT_VENDOR_SPECIFIC) + ns += DWC3_ULPI_BASE_DELAY; + + if (read) + ns += DWC3_ULPI_BASE_DELAY; + + reg = dwc3_readl(dwc->regs, DWC3_GUSB2PHYCFG(0)); + if (reg & DWC3_GUSB2PHYCFG_SUSPHY) + usleep_range(1000, 1200); + while (count--) { + ndelay(ns); reg = dwc3_readl(dwc->regs, DWC3_GUSB2PHYACC(0)); - if (!(reg & DWC3_GUSB2PHYACC_BUSY)) + if (reg & DWC3_GUSB2PHYACC_DONE) return 0; cpu_relax(); } @@ -38,16 +54,10 @@ u32 reg; int ret; - reg = dwc3_readl(dwc->regs, DWC3_GUSB2PHYCFG(0)); - if (reg & DWC3_GUSB2PHYCFG_SUSPHY) { - reg &= ~DWC3_GUSB2PHYCFG_SUSPHY; - dwc3_writel(dwc->regs, DWC3_GUSB2PHYCFG(0), reg); - } - reg = DWC3_GUSB2PHYACC_NEWREGREQ | DWC3_ULPI_ADDR(addr); dwc3_writel(dwc->regs, DWC3_GUSB2PHYACC(0), reg); - ret = dwc3_ulpi_busyloop(dwc); + ret = dwc3_ulpi_busyloop(dwc, addr, true); if (ret) return ret; @@ -61,17 +71,11 @@ struct dwc3 *dwc = dev_get_drvdata(dev); u32 reg; - reg = dwc3_readl(dwc->regs, DWC3_GUSB2PHYCFG(0)); - if (reg & DWC3_GUSB2PHYCFG_SUSPHY) { - reg &= ~DWC3_GUSB2PHYCFG_SUSPHY; - dwc3_writel(dwc->regs, DWC3_GUSB2PHYCFG(0), reg); - } - reg = DWC3_GUSB2PHYACC_NEWREGREQ | DWC3_ULPI_ADDR(addr); reg |= DWC3_GUSB2PHYACC_WRITE | val; dwc3_writel(dwc->regs, DWC3_GUSB2PHYACC(0), reg); - return dwc3_ulpi_busyloop(dwc); + return dwc3_ulpi_busyloop(dwc, addr, false); } static const struct ulpi_ops dwc3_ulpi_ops = { --- linux-azure-5.8-5.8.0.orig/drivers/usb/gadget/Kconfig +++ linux-azure-5.8-5.8.0/drivers/usb/gadget/Kconfig @@ -265,6 +265,7 @@ depends on NET select USB_U_ETHER select USB_F_NCM + select CRC32 help NCM is an advanced protocol for Ethernet encapsulation, allows grouping of several ethernet frames into one USB transfer and @@ -314,6 +315,7 @@ depends on NET select USB_U_ETHER select USB_F_EEM + select CRC32 help CDC EEM is a newer USB standard that is somewhat simpler than CDC ECM and therefore can be supported by more hardware. Technically ECM and --- linux-azure-5.8-5.8.0.orig/drivers/usb/gadget/composite.c +++ linux-azure-5.8-5.8.0/drivers/usb/gadget/composite.c @@ -392,8 +392,11 @@ spin_lock_irqsave(&cdev->lock, flags); - if (cdev->deactivations == 0) + if (cdev->deactivations == 0) { + spin_unlock_irqrestore(&cdev->lock, flags); status = usb_gadget_deactivate(cdev->gadget); + spin_lock_irqsave(&cdev->lock, flags); + } if (status == 0) cdev->deactivations++; @@ -424,8 +427,11 @@ status = -EINVAL; else { cdev->deactivations--; - if (cdev->deactivations == 0) + if (cdev->deactivations == 0) { + spin_unlock_irqrestore(&cdev->lock, flags); status = usb_gadget_activate(cdev->gadget); + spin_lock_irqsave(&cdev->lock, flags); + } } spin_unlock_irqrestore(&cdev->lock, flags); --- linux-azure-5.8-5.8.0.orig/drivers/usb/gadget/configfs.c +++ linux-azure-5.8-5.8.0/drivers/usb/gadget/configfs.c @@ -221,9 +221,16 @@ static ssize_t gadget_dev_desc_UDC_show(struct config_item *item, char *page) { - char *udc_name = to_gadget_info(item)->composite.gadget_driver.udc_name; + struct gadget_info *gi = to_gadget_info(item); + char *udc_name; + int ret; + + mutex_lock(&gi->lock); + udc_name = gi->composite.gadget_driver.udc_name; + ret = sprintf(page, "%s\n", udc_name ?: ""); + mutex_unlock(&gi->lock); - return sprintf(page, "%s\n", udc_name ?: ""); + return ret; } static int unregister_gadget(struct gadget_info *gi) @@ -1248,9 +1255,9 @@ cfg = container_of(c, struct config_usb_cfg, c); - list_for_each_entry_safe(f, tmp, &c->functions, list) { + list_for_each_entry_safe_reverse(f, tmp, &c->functions, list) { - list_move_tail(&f->list, &cfg->func_list); + list_move(&f->list, &cfg->func_list); if (f->unbind) { dev_dbg(&gi->cdev.gadget->dev, "unbind function '%s'/%p\n", @@ -1536,7 +1543,7 @@ .suspend = configfs_composite_suspend, .resume = configfs_composite_resume, - .max_speed = USB_SPEED_SUPER, + .max_speed = USB_SPEED_SUPER_PLUS, .driver = { .owner = THIS_MODULE, .name = "configfs-gadget", @@ -1576,7 +1583,7 @@ gi->composite.unbind = configfs_do_nothing; gi->composite.suspend = NULL; gi->composite.resume = NULL; - gi->composite.max_speed = USB_SPEED_SUPER; + gi->composite.max_speed = USB_SPEED_SUPER_PLUS; spin_lock_init(&gi->spinlock); mutex_init(&gi->lock); --- linux-azure-5.8-5.8.0.orig/drivers/usb/gadget/function/f_acm.c +++ linux-azure-5.8-5.8.0/drivers/usb/gadget/function/f_acm.c @@ -684,7 +684,7 @@ acm_ss_out_desc.bEndpointAddress = acm_fs_out_desc.bEndpointAddress; status = usb_assign_descriptors(f, acm_fs_function, acm_hs_function, - acm_ss_function, NULL); + acm_ss_function, acm_ss_function); if (status) goto fail; --- linux-azure-5.8-5.8.0.orig/drivers/usb/gadget/function/f_fs.c +++ linux-azure-5.8-5.8.0/drivers/usb/gadget/function/f_fs.c @@ -1324,10 +1324,11 @@ case FUNCTIONFS_ENDPOINT_DESC: { int desc_idx; - struct usb_endpoint_descriptor *desc; + struct usb_endpoint_descriptor desc1, *desc; switch (epfile->ffs->gadget->speed) { case USB_SPEED_SUPER: + case USB_SPEED_SUPER_PLUS: desc_idx = 2; break; case USB_SPEED_HIGH: @@ -1336,10 +1337,12 @@ default: desc_idx = 0; } + desc = epfile->ep->descs[desc_idx]; + memcpy(&desc1, desc, desc->bLength); spin_unlock_irq(&epfile->ffs->eps_lock); - ret = copy_to_user((void __user *)value, desc, desc->bLength); + ret = copy_to_user((void __user *)value, &desc1, desc1.bLength); if (ret) ret = -EFAULT; return ret; @@ -3172,7 +3175,8 @@ } if (likely(super)) { - func->function.ss_descriptors = vla_ptr(vlabuf, d, ss_descs); + func->function.ss_descriptors = func->function.ssp_descriptors = + vla_ptr(vlabuf, d, ss_descs); ss_len = ffs_do_descs(ffs->ss_descs_count, vla_ptr(vlabuf, d, raw_descs) + fs_len + hs_len, d_raw_descs__sz - fs_len - hs_len, @@ -3582,6 +3586,7 @@ func->function.fs_descriptors = NULL; func->function.hs_descriptors = NULL; func->function.ss_descriptors = NULL; + func->function.ssp_descriptors = NULL; func->interfaces_nums = NULL; ffs_event_add(ffs, FUNCTIONFS_UNBIND); --- linux-azure-5.8-5.8.0.orig/drivers/usb/gadget/function/f_midi.c +++ linux-azure-5.8-5.8.0/drivers/usb/gadget/function/f_midi.c @@ -1048,6 +1048,12 @@ f->ss_descriptors = usb_copy_descriptors(midi_function); if (!f->ss_descriptors) goto fail_f_midi; + + if (gadget_is_superspeed_plus(c->cdev->gadget)) { + f->ssp_descriptors = usb_copy_descriptors(midi_function); + if (!f->ssp_descriptors) + goto fail_f_midi; + } } kfree(midi_function); @@ -1315,7 +1321,7 @@ midi->id = kstrdup(opts->id, GFP_KERNEL); if (opts->id && !midi->id) { status = -ENOMEM; - goto setup_fail; + goto midi_free; } midi->in_ports = opts->in_ports; midi->out_ports = opts->out_ports; @@ -1327,7 +1333,7 @@ status = kfifo_alloc(&midi->in_req_fifo, midi->qlen, GFP_KERNEL); if (status) - goto setup_fail; + goto midi_free; spin_lock_init(&midi->transmit_lock); @@ -1343,9 +1349,13 @@ return &midi->func; +midi_free: + if (midi) + kfree(midi->id); + kfree(midi); setup_fail: mutex_unlock(&opts->lock); - kfree(midi); + return ERR_PTR(status); } --- linux-azure-5.8-5.8.0.orig/drivers/usb/gadget/function/f_ncm.c +++ linux-azure-5.8-5.8.0/drivers/usb/gadget/function/f_ncm.c @@ -85,8 +85,10 @@ /* peak (theoretical) bulk transfer rate in bits-per-second */ static inline unsigned ncm_bitrate(struct usb_gadget *g) { - if (gadget_is_superspeed(g) && g->speed == USB_SPEED_SUPER) - return 13 * 1024 * 8 * 1000 * 8; + if (gadget_is_superspeed(g) && g->speed >= USB_SPEED_SUPER_PLUS) + return 4250000000U; + else if (gadget_is_superspeed(g) && g->speed == USB_SPEED_SUPER) + return 3750000000U; else if (gadget_is_dualspeed(g) && g->speed == USB_SPEED_HIGH) return 13 * 512 * 8 * 1000 * 8; else @@ -1181,9 +1183,11 @@ int ndp_index; unsigned dg_len, dg_len2; unsigned ndp_len; + unsigned block_len; struct sk_buff *skb2; int ret = -EINVAL; - unsigned max_size = le32_to_cpu(ntb_parameters.dwNtbOutMaxSize); + unsigned ntb_max = le32_to_cpu(ntb_parameters.dwNtbOutMaxSize); + unsigned frame_max = le16_to_cpu(ecm_desc.wMaxSegmentSize); const struct ndp_parser_opts *opts = ncm->parser_opts; unsigned crc_len = ncm->is_crc ? sizeof(uint32_t) : 0; int dgram_counter; @@ -1205,8 +1209,9 @@ } tmp++; /* skip wSequence */ + block_len = get_ncm(&tmp, opts->block_length); /* (d)wBlockLength */ - if (get_ncm(&tmp, opts->block_length) > max_size) { + if (block_len > ntb_max) { INFO(port->func.config->cdev, "OUT size exceeded\n"); goto err; } @@ -1215,15 +1220,23 @@ /* Run through all the NDP's in the NTB */ do { - /* NCM 3.2 */ - if (((ndp_index % 4) != 0) && - (ndp_index < opts->nth_size)) { + /* + * NCM 3.2 + * dwNdpIndex + */ + if (((ndp_index % 4) != 0) || + (ndp_index < opts->nth_size) || + (ndp_index > (block_len - + opts->ndp_size))) { INFO(port->func.config->cdev, "Bad index: %#X\n", ndp_index); goto err; } - /* walk through NDP */ + /* + * walk through NDP + * dwSignature + */ tmp = (void *)(skb->data + ndp_index); if (get_unaligned_le32(tmp) != ncm->ndp_sign) { INFO(port->func.config->cdev, "Wrong NDP SIGN\n"); @@ -1234,14 +1247,15 @@ ndp_len = get_unaligned_le16(tmp++); /* * NCM 3.3.1 + * wLength * entry is 2 items * item size is 16/32 bits, opts->dgram_item_len * 2 bytes * minimal: struct usb_cdc_ncm_ndpX + normal entry + zero entry * Each entry is a dgram index and a dgram length. */ if ((ndp_len < opts->ndp_size - + 2 * 2 * (opts->dgram_item_len * 2)) - || (ndp_len % opts->ndplen_align != 0)) { + + 2 * 2 * (opts->dgram_item_len * 2)) || + (ndp_len % opts->ndplen_align != 0)) { INFO(port->func.config->cdev, "Bad NDP length: %#X\n", ndp_len); goto err; @@ -1258,8 +1272,21 @@ do { index = index2; + /* wDatagramIndex[0] */ + if ((index < opts->nth_size) || + (index > block_len - opts->dpe_size)) { + INFO(port->func.config->cdev, + "Bad index: %#X\n", index); + goto err; + } + dg_len = dg_len2; - if (dg_len < 14 + crc_len) { /* ethernet hdr + crc */ + /* + * wDatagramLength[0] + * ethernet hdr + crc or larger than max frame size + */ + if ((dg_len < 14 + crc_len) || + (dg_len > frame_max)) { INFO(port->func.config->cdev, "Bad dgram length: %#X\n", dg_len); goto err; @@ -1283,6 +1310,13 @@ index2 = get_ncm(&tmp, opts->dgram_item_len); dg_len2 = get_ncm(&tmp, opts->dgram_item_len); + /* wDatagramIndex[1] */ + if (index2 > block_len - opts->dpe_size) { + INFO(port->func.config->cdev, + "Bad index: %#X\n", index2); + goto err; + } + /* * Copy the data into a new skb. * This ensures the truesize is correct @@ -1299,7 +1333,6 @@ ndp_len -= 2 * (opts->dgram_item_len * 2); dgram_counter++; - if (index2 == 0 || dg_len2 == 0) break; } while (ndp_len > 2 * (opts->dgram_item_len * 2)); @@ -1503,7 +1536,7 @@ fs_ncm_notify_desc.bEndpointAddress; status = usb_assign_descriptors(f, ncm_fs_function, ncm_hs_function, - ncm_ss_function, NULL); + ncm_ss_function, ncm_ss_function); if (status) goto fail; --- linux-azure-5.8-5.8.0.orig/drivers/usb/gadget/function/f_printer.c +++ linux-azure-5.8-5.8.0/drivers/usb/gadget/function/f_printer.c @@ -31,6 +31,7 @@ #include #include #include +#include #include #include @@ -64,7 +65,7 @@ struct usb_gadget *gadget; s8 interface; struct usb_ep *in_ep, *out_ep; - + struct kref kref; struct list_head rx_reqs; /* List of free RX structs */ struct list_head rx_reqs_active; /* List of Active RX xfers */ struct list_head rx_buffers; /* List of completed xfers */ @@ -218,6 +219,13 @@ /*-------------------------------------------------------------------------*/ +static void printer_dev_free(struct kref *kref) +{ + struct printer_dev *dev = container_of(kref, struct printer_dev, kref); + + kfree(dev); +} + static struct usb_request * printer_req_alloc(struct usb_ep *ep, unsigned len, gfp_t gfp_flags) { @@ -348,6 +356,7 @@ spin_unlock_irqrestore(&dev->lock, flags); + kref_get(&dev->kref); DBG(dev, "printer_open returned %x\n", ret); return ret; } @@ -365,6 +374,7 @@ dev->printer_status &= ~PRINTER_SELECTED; spin_unlock_irqrestore(&dev->lock, flags); + kref_put(&dev->kref, printer_dev_free); DBG(dev, "printer_close\n"); return 0; @@ -1116,6 +1126,7 @@ printer_req_free(dev->in_ep, req); } + usb_free_all_descriptors(f); return ret; } @@ -1350,7 +1361,8 @@ struct f_printer_opts *opts; opts = container_of(f->fi, struct f_printer_opts, func_inst); - kfree(dev); + + kref_put(&dev->kref, printer_dev_free); mutex_lock(&opts->lock); --opts->refcnt; mutex_unlock(&opts->lock); @@ -1419,6 +1431,7 @@ return ERR_PTR(-ENOMEM); } + kref_init(&dev->kref); ++opts->refcnt; dev->minor = opts->minor; dev->pnp_string = opts->pnp_string; --- linux-azure-5.8-5.8.0.orig/drivers/usb/gadget/function/f_rndis.c +++ linux-azure-5.8-5.8.0/drivers/usb/gadget/function/f_rndis.c @@ -87,8 +87,10 @@ /* peak (theoretical) bulk transfer rate in bits-per-second */ static unsigned int bitrate(struct usb_gadget *g) { + if (gadget_is_superspeed(g) && g->speed >= USB_SPEED_SUPER_PLUS) + return 4250000000U; if (gadget_is_superspeed(g) && g->speed == USB_SPEED_SUPER) - return 13 * 1024 * 8 * 1000 * 8; + return 3750000000U; else if (gadget_is_dualspeed(g) && g->speed == USB_SPEED_HIGH) return 13 * 512 * 8 * 1000 * 8; else --- linux-azure-5.8-5.8.0.orig/drivers/usb/gadget/function/f_tcm.c +++ linux-azure-5.8-5.8.0/drivers/usb/gadget/function/f_tcm.c @@ -753,12 +753,13 @@ goto err_sts; return 0; + err_sts: - usb_ep_free_request(fu->ep_status, stream->req_status); - stream->req_status = NULL; -err_out: usb_ep_free_request(fu->ep_out, stream->req_out); stream->req_out = NULL; +err_out: + usb_ep_free_request(fu->ep_in, stream->req_in); + stream->req_in = NULL; out: return -ENOMEM; } --- linux-azure-5.8-5.8.0.orig/drivers/usb/gadget/function/f_uac2.c +++ linux-azure-5.8-5.8.0/drivers/usb/gadget/function/f_uac2.c @@ -215,10 +215,7 @@ .bDescriptorSubtype = UAC_MS_HEADER, .bcdADC = cpu_to_le16(0x200), .bCategory = UAC2_FUNCTION_IO_BOX, - .wTotalLength = cpu_to_le16(sizeof in_clk_src_desc - + sizeof out_clk_src_desc + sizeof usb_out_it_desc - + sizeof io_in_it_desc + sizeof usb_in_ot_desc - + sizeof io_out_ot_desc), + /* .wTotalLength = DYNAMIC */ .bmControls = 0, }; @@ -274,7 +271,7 @@ .bEndpointAddress = USB_DIR_OUT, .bmAttributes = USB_ENDPOINT_XFER_ISOC | USB_ENDPOINT_SYNC_ASYNC, - .wMaxPacketSize = cpu_to_le16(1023), + /* .wMaxPacketSize = DYNAMIC */ .bInterval = 1, }; @@ -283,7 +280,7 @@ .bDescriptorType = USB_DT_ENDPOINT, .bmAttributes = USB_ENDPOINT_XFER_ISOC | USB_ENDPOINT_SYNC_ASYNC, - .wMaxPacketSize = cpu_to_le16(1024), + /* .wMaxPacketSize = DYNAMIC */ .bInterval = 4, }; @@ -351,7 +348,7 @@ .bEndpointAddress = USB_DIR_IN, .bmAttributes = USB_ENDPOINT_XFER_ISOC | USB_ENDPOINT_SYNC_ASYNC, - .wMaxPacketSize = cpu_to_le16(1023), + /* .wMaxPacketSize = DYNAMIC */ .bInterval = 1, }; @@ -360,7 +357,7 @@ .bDescriptorType = USB_DT_ENDPOINT, .bmAttributes = USB_ENDPOINT_XFER_ISOC | USB_ENDPOINT_SYNC_ASYNC, - .wMaxPacketSize = cpu_to_le16(1024), + /* .wMaxPacketSize = DYNAMIC */ .bInterval = 4, }; @@ -447,12 +444,28 @@ __le32 dRES; } __packed; -static void set_ep_max_packet_size(const struct f_uac2_opts *uac2_opts, +static int set_ep_max_packet_size(const struct f_uac2_opts *uac2_opts, struct usb_endpoint_descriptor *ep_desc, - unsigned int factor, bool is_playback) + enum usb_device_speed speed, bool is_playback) { int chmask, srate, ssize; - u16 max_packet_size; + u16 max_size_bw, max_size_ep; + unsigned int factor; + + switch (speed) { + case USB_SPEED_FULL: + max_size_ep = 1023; + factor = 1000; + break; + + case USB_SPEED_HIGH: + max_size_ep = 1024; + factor = 8000; + break; + + default: + return -EINVAL; + } if (is_playback) { chmask = uac2_opts->p_chmask; @@ -464,10 +477,12 @@ ssize = uac2_opts->c_ssize; } - max_packet_size = num_channels(chmask) * ssize * + max_size_bw = num_channels(chmask) * ssize * DIV_ROUND_UP(srate, factor / (1 << (ep_desc->bInterval - 1))); - ep_desc->wMaxPacketSize = cpu_to_le16(min_t(u16, max_packet_size, - le16_to_cpu(ep_desc->wMaxPacketSize))); + ep_desc->wMaxPacketSize = cpu_to_le16(min_t(u16, max_size_bw, + max_size_ep)); + + return 0; } /* Use macro to overcome line length limitation */ @@ -501,7 +516,7 @@ as_in_hdr_desc.bTerminalLink = usb_in_ot_desc.bTerminalID; iad_desc.bInterfaceCount = 1; - ac_hdr_desc.wTotalLength = 0; + ac_hdr_desc.wTotalLength = cpu_to_le16(sizeof(ac_hdr_desc)); if (EPIN_EN(opts)) { u16 len = le16_to_cpu(ac_hdr_desc.wTotalLength); @@ -673,10 +688,33 @@ } /* Calculate wMaxPacketSize according to audio bandwidth */ - set_ep_max_packet_size(uac2_opts, &fs_epin_desc, 1000, true); - set_ep_max_packet_size(uac2_opts, &fs_epout_desc, 1000, false); - set_ep_max_packet_size(uac2_opts, &hs_epin_desc, 8000, true); - set_ep_max_packet_size(uac2_opts, &hs_epout_desc, 8000, false); + ret = set_ep_max_packet_size(uac2_opts, &fs_epin_desc, USB_SPEED_FULL, + true); + if (ret < 0) { + dev_err(dev, "%s:%d Error!\n", __func__, __LINE__); + return ret; + } + + ret = set_ep_max_packet_size(uac2_opts, &fs_epout_desc, USB_SPEED_FULL, + false); + if (ret < 0) { + dev_err(dev, "%s:%d Error!\n", __func__, __LINE__); + return ret; + } + + ret = set_ep_max_packet_size(uac2_opts, &hs_epin_desc, USB_SPEED_HIGH, + true); + if (ret < 0) { + dev_err(dev, "%s:%d Error!\n", __func__, __LINE__); + return ret; + } + + ret = set_ep_max_packet_size(uac2_opts, &hs_epout_desc, USB_SPEED_HIGH, + false); + if (ret < 0) { + dev_err(dev, "%s:%d Error!\n", __func__, __LINE__); + return ret; + } if (EPOUT_EN(uac2_opts)) { agdev->out_ep = usb_ep_autoconfig(gadget, &fs_epout_desc); --- linux-azure-5.8-5.8.0.orig/drivers/usb/gadget/function/u_audio.c +++ linux-azure-5.8-5.8.0/drivers/usb/gadget/function/u_audio.c @@ -89,7 +89,12 @@ struct snd_uac_chip *uac = prm->uac; /* i/f shutting down */ - if (!prm->ep_enabled || req->status == -ESHUTDOWN) + if (!prm->ep_enabled) { + usb_ep_free_request(ep, req); + return; + } + + if (req->status == -ESHUTDOWN) return; /* @@ -336,8 +341,14 @@ for (i = 0; i < params->req_number; i++) { if (prm->ureq[i].req) { - usb_ep_dequeue(ep, prm->ureq[i].req); - usb_ep_free_request(ep, prm->ureq[i].req); + if (usb_ep_dequeue(ep, prm->ureq[i].req)) + usb_ep_free_request(ep, prm->ureq[i].req); + /* + * If usb_ep_dequeue() cannot successfully dequeue the + * request, the request will be freed by the completion + * callback. + */ + prm->ureq[i].req = NULL; } } --- linux-azure-5.8-5.8.0.orig/drivers/usb/gadget/function/u_ether.c +++ linux-azure-5.8-5.8.0/drivers/usb/gadget/function/u_ether.c @@ -45,9 +45,10 @@ #define UETH__VERSION "29-May-2008" /* Experiments show that both Linux and Windows hosts allow up to 16k - * frame sizes. Set the max size to 15k+52 to prevent allocating 32k + * frame sizes. Set the max MTU size to 15k+52 to prevent allocating 32k * blocks and still have efficient handling. */ -#define GETHER_MAX_ETH_FRAME_LEN 15412 +#define GETHER_MAX_MTU_SIZE 15412 +#define GETHER_MAX_ETH_FRAME_LEN (GETHER_MAX_MTU_SIZE + ETH_HLEN) struct eth_dev { /* lock is held while accessing port_usb @@ -93,7 +94,7 @@ static inline int qlen(struct usb_gadget *gadget, unsigned qmult) { if (gadget_is_dualspeed(gadget) && (gadget->speed == USB_SPEED_HIGH || - gadget->speed == USB_SPEED_SUPER)) + gadget->speed >= USB_SPEED_SUPER)) return qmult * DEFAULT_QLEN; else return DEFAULT_QLEN; @@ -786,7 +787,7 @@ /* MTU range: 14 - 15412 */ net->min_mtu = ETH_HLEN; - net->max_mtu = GETHER_MAX_ETH_FRAME_LEN; + net->max_mtu = GETHER_MAX_MTU_SIZE; dev->gadget = g; SET_NETDEV_DEV(net, &g->dev); @@ -848,7 +849,7 @@ /* MTU range: 14 - 15412 */ net->min_mtu = ETH_HLEN; - net->max_mtu = GETHER_MAX_ETH_FRAME_LEN; + net->max_mtu = GETHER_MAX_MTU_SIZE; return net; } --- linux-azure-5.8-5.8.0.orig/drivers/usb/gadget/function/u_serial.c +++ linux-azure-5.8-5.8.0/drivers/usb/gadget/function/u_serial.c @@ -1391,6 +1391,7 @@ if (port->port.tty) tty_hangup(port->port.tty); } + port->suspended = false; spin_unlock_irqrestore(&port->port_lock, flags); /* disable endpoints, aborting down any active I/O */ --- linux-azure-5.8-5.8.0.orig/drivers/usb/gadget/legacy/acm_ms.c +++ linux-azure-5.8-5.8.0/drivers/usb/gadget/legacy/acm_ms.c @@ -200,8 +200,10 @@ struct usb_descriptor_header *usb_desc; usb_desc = usb_otg_descriptor_alloc(gadget); - if (!usb_desc) + if (!usb_desc) { + status = -ENOMEM; goto fail_string_ids; + } usb_otg_descriptor_init(gadget, usb_desc); otg_desc[0] = usb_desc; otg_desc[1] = NULL; --- linux-azure-5.8-5.8.0.orig/drivers/usb/gadget/legacy/ether.c +++ linux-azure-5.8-5.8.0/drivers/usb/gadget/legacy/ether.c @@ -403,8 +403,10 @@ struct usb_descriptor_header *usb_desc; usb_desc = usb_otg_descriptor_alloc(gadget); - if (!usb_desc) + if (!usb_desc) { + status = -ENOMEM; goto fail1; + } usb_otg_descriptor_init(gadget, usb_desc); otg_desc[0] = usb_desc; otg_desc[1] = NULL; --- linux-azure-5.8-5.8.0.orig/drivers/usb/gadget/legacy/inode.c +++ linux-azure-5.8-5.8.0/drivers/usb/gadget/legacy/inode.c @@ -2040,6 +2040,9 @@ return 0; Enomem: + kfree(CHIP); + CHIP = NULL; + return -ENOMEM; } --- linux-azure-5.8-5.8.0.orig/drivers/usb/gadget/legacy/raw_gadget.c +++ linux-azure-5.8-5.8.0/drivers/usb/gadget/legacy/raw_gadget.c @@ -564,9 +564,12 @@ return -ENODEV; } length = min(arg.length, event->length); - if (copy_to_user((void __user *)value, event, sizeof(*event) + length)) + if (copy_to_user((void __user *)value, event, sizeof(*event) + length)) { + kfree(event); return -EFAULT; + } + kfree(event); return 0; } --- linux-azure-5.8-5.8.0.orig/drivers/usb/gadget/u_f.h +++ linux-azure-5.8-5.8.0/drivers/usb/gadget/u_f.h @@ -14,6 +14,7 @@ #define __U_F_H__ #include +#include /* Variable Length Array Macros **********************************************/ #define vla_group(groupname) size_t groupname##__next = 0 @@ -21,21 +22,36 @@ #define vla_item(groupname, type, name, n) \ size_t groupname##_##name##__offset = ({ \ - size_t align_mask = __alignof__(type) - 1; \ - size_t offset = (groupname##__next + align_mask) & ~align_mask;\ - size_t size = (n) * sizeof(type); \ - groupname##__next = offset + size; \ + size_t offset = 0; \ + if (groupname##__next != SIZE_MAX) { \ + size_t align_mask = __alignof__(type) - 1; \ + size_t size = array_size(n, sizeof(type)); \ + offset = (groupname##__next + align_mask) & \ + ~align_mask; \ + if (check_add_overflow(offset, size, \ + &groupname##__next)) { \ + groupname##__next = SIZE_MAX; \ + offset = 0; \ + } \ + } \ offset; \ }) #define vla_item_with_sz(groupname, type, name, n) \ - size_t groupname##_##name##__sz = (n) * sizeof(type); \ - size_t groupname##_##name##__offset = ({ \ - size_t align_mask = __alignof__(type) - 1; \ - size_t offset = (groupname##__next + align_mask) & ~align_mask;\ - size_t size = groupname##_##name##__sz; \ - groupname##__next = offset + size; \ - offset; \ + size_t groupname##_##name##__sz = array_size(n, sizeof(type)); \ + size_t groupname##_##name##__offset = ({ \ + size_t offset = 0; \ + if (groupname##__next != SIZE_MAX) { \ + size_t align_mask = __alignof__(type) - 1; \ + offset = (groupname##__next + align_mask) & \ + ~align_mask; \ + if (check_add_overflow(offset, groupname##_##name##__sz,\ + &groupname##__next)) { \ + groupname##__next = SIZE_MAX; \ + offset = 0; \ + } \ + } \ + offset; \ }) #define vla_ptr(ptr, groupname, name) \ --- linux-azure-5.8-5.8.0.orig/drivers/usb/gadget/udc/aspeed-vhub/epn.c +++ linux-azure-5.8-5.8.0/drivers/usb/gadget/udc/aspeed-vhub/epn.c @@ -420,7 +420,10 @@ u32 state, reg, loops; /* Stop DMA activity */ - writel(0, ep->epn.regs + AST_VHUB_EP_DMA_CTLSTAT); + if (ep->epn.desc_mode) + writel(VHUB_EP_DMA_CTRL_RESET, ep->epn.regs + AST_VHUB_EP_DMA_CTLSTAT); + else + writel(0, ep->epn.regs + AST_VHUB_EP_DMA_CTLSTAT); /* Wait for it to complete */ for (loops = 0; loops < 1000; loops++) { --- linux-azure-5.8-5.8.0.orig/drivers/usb/gadget/udc/aspeed-vhub/hub.c +++ linux-azure-5.8-5.8.0/drivers/usb/gadget/udc/aspeed-vhub/hub.c @@ -999,8 +999,10 @@ str_array[offset].s = NULL; ret = ast_vhub_str_alloc_add(vhub, &lang_str); - if (ret) + if (ret) { + of_node_put(child); break; + } } return ret; --- linux-azure-5.8-5.8.0.orig/drivers/usb/gadget/udc/bcm63xx_udc.c +++ linux-azure-5.8-5.8.0/drivers/usb/gadget/udc/bcm63xx_udc.c @@ -26,6 +26,7 @@ #include #include #include +#include #include #include #include --- linux-azure-5.8-5.8.0.orig/drivers/usb/gadget/udc/bdc/Kconfig +++ linux-azure-5.8-5.8.0/drivers/usb/gadget/udc/bdc/Kconfig @@ -17,7 +17,7 @@ comment "Platform Support" config USB_BDC_PCI tristate "BDC support for PCIe based platforms" - depends on USB_PCI + depends on USB_PCI && BROKEN default USB_BDC_UDC help Enable support for platforms which have BDC connected through PCIe, such as Lego3 FPGA platform. --- linux-azure-5.8-5.8.0.orig/drivers/usb/gadget/udc/bdc/bdc_core.c +++ linux-azure-5.8-5.8.0/drivers/usb/gadget/udc/bdc/bdc_core.c @@ -282,6 +282,7 @@ * in that case reinit is passed as 1 */ if (reinit) { + int i; /* Enable interrupts */ temp = bdc_readl(bdc->regs, BDC_BDCSC); temp |= BDC_GIE; @@ -291,6 +292,9 @@ /* Initialize SRR to 0 */ memset(bdc->srr.sr_bds, 0, NUM_SR_ENTRIES * sizeof(struct bdc_bd)); + /* clear ep flags to avoid post disconnect stops/deconfigs */ + for (i = 1; i < bdc->num_eps; ++i) + bdc->bdc_ep_array[i]->flags = 0; } else { /* One time initiaization only */ /* Enable status report function pointers */ @@ -599,9 +603,14 @@ static int bdc_suspend(struct device *dev) { struct bdc *bdc = dev_get_drvdata(dev); + int ret; - clk_disable_unprepare(bdc->clk); - return 0; + /* Halt the controller */ + ret = bdc_stop(bdc); + if (!ret) + clk_disable_unprepare(bdc->clk); + + return ret; } static int bdc_resume(struct device *dev) --- linux-azure-5.8-5.8.0.orig/drivers/usb/gadget/udc/bdc/bdc_ep.c +++ linux-azure-5.8-5.8.0/drivers/usb/gadget/udc/bdc/bdc_ep.c @@ -615,7 +615,6 @@ } bdc_dbg_bd_list(bdc, ep); /* only for ep0: config ep is called for ep0 from connect event */ - ep->flags |= BDC_EP_ENABLED; if (ep->ep_num == 1) return ret; @@ -759,10 +758,13 @@ __func__, ep->name, start_bdi, end_bdi); dev_dbg(bdc->dev, "ep_dequeue ep=%p ep->desc=%p\n", ep, (void *)ep->usb_ep.desc); - /* Stop the ep to see where the HW is ? */ - ret = bdc_stop_ep(bdc, ep->ep_num); - /* if there is an issue with stopping ep, then no need to go further */ - if (ret) + /* if still connected, stop the ep to see where the HW is ? */ + if (!(bdc_readl(bdc->regs, BDC_USPC) & BDC_PST_MASK)) { + ret = bdc_stop_ep(bdc, ep->ep_num); + /* if there is an issue, then no need to go further */ + if (ret) + return 0; + } else return 0; /* @@ -1911,7 +1913,9 @@ __func__, ep->name, ep->flags); if (!(ep->flags & BDC_EP_ENABLED)) { - dev_warn(bdc->dev, "%s is already disabled\n", ep->name); + if (bdc->gadget.speed != USB_SPEED_UNKNOWN) + dev_warn(bdc->dev, "%s is already disabled\n", + ep->name); return 0; } spin_lock_irqsave(&bdc->lock, flags); --- linux-azure-5.8-5.8.0.orig/drivers/usb/gadget/udc/core.c +++ linux-azure-5.8-5.8.0/drivers/usb/gadget/udc/core.c @@ -1479,10 +1479,13 @@ struct device_attribute *attr, const char *buf, size_t n) { struct usb_udc *udc = container_of(dev, struct usb_udc, dev); + ssize_t ret; + mutex_lock(&udc_lock); if (!udc->driver) { dev_err(dev, "soft-connect without a gadget driver\n"); - return -EOPNOTSUPP; + ret = -EOPNOTSUPP; + goto out; } if (sysfs_streq(buf, "connect")) { @@ -1493,10 +1496,14 @@ usb_gadget_udc_stop(udc); } else { dev_err(dev, "unsupported command '%s'\n", buf); - return -EINVAL; + ret = -EINVAL; + goto out; } - return n; + ret = n; +out: + mutex_unlock(&udc_lock); + return ret; } static DEVICE_ATTR_WO(soft_connect); --- linux-azure-5.8-5.8.0.orig/drivers/usb/gadget/udc/dummy_hcd.c +++ linux-azure-5.8-5.8.0/drivers/usb/gadget/udc/dummy_hcd.c @@ -2114,9 +2114,21 @@ dum_hcd->port_status &= ~USB_PORT_STAT_POWER; set_link_state(dum_hcd); break; - default: + case USB_PORT_FEAT_ENABLE: + case USB_PORT_FEAT_C_ENABLE: + case USB_PORT_FEAT_C_SUSPEND: + /* Not allowed for USB-3 */ + if (hcd->speed == HCD_USB3) + goto error; + fallthrough; + case USB_PORT_FEAT_C_CONNECTION: + case USB_PORT_FEAT_C_RESET: dum_hcd->port_status &= ~(1 << wValue); set_link_state(dum_hcd); + break; + default: + /* Disallow INDICATOR and C_OVER_CURRENT */ + goto error; } break; case GetHubDescriptor: @@ -2254,17 +2266,20 @@ } /* FALLS THROUGH */ case USB_PORT_FEAT_RESET: + if (!(dum_hcd->port_status & USB_PORT_STAT_CONNECTION)) + break; /* if it's already enabled, disable */ if (hcd->speed == HCD_USB3) { - dum_hcd->port_status = 0; dum_hcd->port_status = (USB_SS_PORT_STAT_POWER | USB_PORT_STAT_CONNECTION | USB_PORT_STAT_RESET); - } else + } else { dum_hcd->port_status &= ~(USB_PORT_STAT_ENABLE | USB_PORT_STAT_LOW_SPEED | USB_PORT_STAT_HIGH_SPEED); + dum_hcd->port_status |= USB_PORT_STAT_RESET; + } /* * We want to reset device status. All but the * Self powered feature @@ -2276,19 +2291,19 @@ * interval? Is it still 50msec as for HS? */ dum_hcd->re_timeout = jiffies + msecs_to_jiffies(50); - /* FALLS THROUGH */ - default: - if (hcd->speed == HCD_USB3) { - if ((dum_hcd->port_status & - USB_SS_PORT_STAT_POWER) != 0) { - dum_hcd->port_status |= (1 << wValue); - } - } else - if ((dum_hcd->port_status & - USB_PORT_STAT_POWER) != 0) { - dum_hcd->port_status |= (1 << wValue); - } set_link_state(dum_hcd); + break; + case USB_PORT_FEAT_C_CONNECTION: + case USB_PORT_FEAT_C_RESET: + case USB_PORT_FEAT_C_ENABLE: + case USB_PORT_FEAT_C_SUSPEND: + /* Not allowed for USB-3, and ignored for USB-2 */ + if (hcd->speed == HCD_USB3) + goto error; + break; + default: + /* Disallow TEST, INDICATOR, and C_OVER_CURRENT */ + goto error; } break; case GetPortErrorCount: @@ -2734,7 +2749,7 @@ { int retval = -ENOMEM; int i; - struct dummy *dum[MAX_NUM_UDC]; + struct dummy *dum[MAX_NUM_UDC] = {}; if (usb_disabled()) return -ENODEV; --- linux-azure-5.8-5.8.0.orig/drivers/usb/gadget/udc/fsl_udc_core.c +++ linux-azure-5.8-5.8.0/drivers/usb/gadget/udc/fsl_udc_core.c @@ -1051,7 +1051,7 @@ u32 bitmask; struct ep_queue_head *qh; - if (!_ep || _ep->desc || !(_ep->desc->bEndpointAddress&0xF)) + if (!_ep || !_ep->desc || !(_ep->desc->bEndpointAddress&0xF)) return -ENODEV; ep = container_of(_ep, struct fsl_ep, ep); --- linux-azure-5.8-5.8.0.orig/drivers/usb/gadget/udc/goku_udc.c +++ linux-azure-5.8-5.8.0/drivers/usb/gadget/udc/goku_udc.c @@ -1757,6 +1757,7 @@ goto err; } + pci_set_drvdata(pdev, dev); spin_lock_init(&dev->lock); dev->pdev = pdev; dev->gadget.ops = &goku_ops; @@ -1790,7 +1791,6 @@ } dev->regs = (struct goku_udc_regs __iomem *) base; - pci_set_drvdata(pdev, dev); INFO(dev, "%s\n", driver_desc); INFO(dev, "version: " DRIVER_VERSION " %s\n", dmastr()); INFO(dev, "irq %d, pci mem %p\n", pdev->irq, base); --- linux-azure-5.8-5.8.0.orig/drivers/usb/gadget/udc/net2280.c +++ linux-azure-5.8-5.8.0/drivers/usb/gadget/udc/net2280.c @@ -3781,8 +3781,10 @@ return 0; done: - if (dev) + if (dev) { net2280_remove(pdev); + kfree(dev); + } return retval; } --- linux-azure-5.8-5.8.0.orig/drivers/usb/host/ehci-hcd.c +++ linux-azure-5.8-5.8.0/drivers/usb/host/ehci-hcd.c @@ -22,6 +22,7 @@ #include #include #include +#include #include #include #include @@ -573,6 +574,7 @@ struct ehci_hcd *ehci = hcd_to_ehci (hcd); u32 temp; u32 hcc_params; + int rc; hcd->uses_new_polling = 1; @@ -628,9 +630,20 @@ down_write(&ehci_cf_port_reset_rwsem); ehci->rh_state = EHCI_RH_RUNNING; ehci_writel(ehci, FLAG_CF, &ehci->regs->configured_flag); + + /* Wait until HC become operational */ ehci_readl(ehci, &ehci->regs->command); /* unblock posted writes */ msleep(5); + rc = ehci_handshake(ehci, &ehci->regs->status, STS_HALT, 0, 100 * 1000); + up_write(&ehci_cf_port_reset_rwsem); + + if (rc) { + ehci_err(ehci, "USB %x.%x, controller refused to start: %d\n", + ((ehci->sbrn & 0xf0)>>4), (ehci->sbrn & 0x0f), rc); + return rc; + } + ehci->last_periodic_enable = ktime_get_real(); temp = HC_VERSION(ehci, ehci_readl(ehci, &ehci->caps->hc_capbase)); --- linux-azure-5.8-5.8.0.orig/drivers/usb/host/ehci-hub.c +++ linux-azure-5.8-5.8.0/drivers/usb/host/ehci-hub.c @@ -14,7 +14,6 @@ */ /*-------------------------------------------------------------------------*/ -#include #define PORT_WAKE_BITS (PORT_WKOC_E|PORT_WKDISC_E|PORT_WKCONN_E) @@ -346,6 +345,9 @@ unlink_empty_async_suspended(ehci); + /* Some Synopsys controllers mistakenly leave IAA turned on */ + ehci_writel(ehci, STS_IAA, &ehci->regs->status); + /* Any IAA cycle that started before the suspend is now invalid */ end_iaa_cycle(ehci); ehci_handle_start_intr_unlinks(ehci); --- linux-azure-5.8-5.8.0.orig/drivers/usb/host/ehci-omap.c +++ linux-azure-5.8-5.8.0/drivers/usb/host/ehci-omap.c @@ -220,6 +220,7 @@ err_pm_runtime: pm_runtime_put_sync(dev); + pm_runtime_disable(dev); err_phy: for (i = 0; i < omap->nports; i++) { --- linux-azure-5.8-5.8.0.orig/drivers/usb/host/ehci-tegra.c +++ linux-azure-5.8-5.8.0/drivers/usb/host/ehci-tegra.c @@ -479,8 +479,8 @@ u_phy->otg->host = hcd_to_bus(hcd); irq = platform_get_irq(pdev, 0); - if (!irq) { - err = -ENODEV; + if (irq < 0) { + err = irq; goto cleanup_phy; } --- linux-azure-5.8-5.8.0.orig/drivers/usb/host/fsl-mph-dr-of.c +++ linux-azure-5.8-5.8.0/drivers/usb/host/fsl-mph-dr-of.c @@ -94,10 +94,13 @@ pdev->dev.coherent_dma_mask = ofdev->dev.coherent_dma_mask; - if (!pdev->dev.dma_mask) + if (!pdev->dev.dma_mask) { pdev->dev.dma_mask = &ofdev->dev.coherent_dma_mask; - else - dma_set_mask(&pdev->dev, DMA_BIT_MASK(32)); + } else { + retval = dma_set_mask(&pdev->dev, DMA_BIT_MASK(32)); + if (retval) + goto error; + } retval = platform_device_add_data(pdev, pdata, sizeof(*pdata)); if (retval) --- linux-azure-5.8-5.8.0.orig/drivers/usb/host/max3421-hcd.c +++ linux-azure-5.8-5.8.0/drivers/usb/host/max3421-hcd.c @@ -1847,7 +1847,7 @@ struct max3421_hcd *max3421_hcd; struct usb_hcd *hcd = NULL; struct max3421_hcd_platform_data *pdata = NULL; - int retval = -ENOMEM; + int retval; if (spi_setup(spi) < 0) { dev_err(&spi->dev, "Unable to setup SPI bus"); @@ -1889,6 +1889,7 @@ goto error; } + retval = -ENOMEM; hcd = usb_create_hcd(&max3421_hcd_desc, &spi->dev, dev_name(&spi->dev)); if (!hcd) { --- linux-azure-5.8-5.8.0.orig/drivers/usb/host/ohci-exynos.c +++ linux-azure-5.8-5.8.0/drivers/usb/host/ohci-exynos.c @@ -171,9 +171,8 @@ hcd->rsrc_len = resource_size(res); irq = platform_get_irq(pdev, 0); - if (!irq) { - dev_err(&pdev->dev, "Failed to get IRQ\n"); - err = -ENODEV; + if (irq < 0) { + err = irq; goto fail_io; } --- linux-azure-5.8-5.8.0.orig/drivers/usb/host/ohci-hcd.c +++ linux-azure-5.8-5.8.0/drivers/usb/host/ohci-hcd.c @@ -102,7 +102,7 @@ /* Some boards misreport power switching/overcurrent */ -static bool distrust_firmware = true; +static bool distrust_firmware; module_param (distrust_firmware, bool, 0); MODULE_PARM_DESC (distrust_firmware, "true to distrust firmware power/overcurrent setup"); @@ -673,20 +673,24 @@ /* handle root hub init quirks ... */ val = roothub_a (ohci); - val &= ~(RH_A_PSM | RH_A_OCPM); + /* Configure for per-port over-current protection by default */ + val &= ~RH_A_NOCP; + val |= RH_A_OCPM; if (ohci->flags & OHCI_QUIRK_SUPERIO) { - /* NSC 87560 and maybe others */ + /* NSC 87560 and maybe others. + * Ganged power switching, no over-current protection. + */ val |= RH_A_NOCP; - val &= ~(RH_A_POTPGT | RH_A_NPS); - ohci_writel (ohci, val, &ohci->regs->roothub.a); + val &= ~(RH_A_POTPGT | RH_A_NPS | RH_A_PSM | RH_A_OCPM); } else if ((ohci->flags & OHCI_QUIRK_AMD756) || (ohci->flags & OHCI_QUIRK_HUB_POWER)) { /* hub power always on; required for AMD-756 and some - * Mac platforms. ganged overcurrent reporting, if any. + * Mac platforms. */ val |= RH_A_NPS; - ohci_writel (ohci, val, &ohci->regs->roothub.a); } + ohci_writel(ohci, val, &ohci->regs->roothub.a); + ohci_writel (ohci, RH_HS_LPSC, &ohci->regs->roothub.status); ohci_writel (ohci, (val & RH_A_NPS) ? 0 : RH_B_PPCM, &ohci->regs->roothub.b); --- linux-azure-5.8-5.8.0.orig/drivers/usb/host/oxu210hp-hcd.c +++ linux-azure-5.8-5.8.0/drivers/usb/host/oxu210hp-hcd.c @@ -4153,8 +4153,10 @@ oxu->is_otg = otg; ret = usb_add_hcd(hcd, irq, IRQF_SHARED); - if (ret < 0) + if (ret < 0) { + usb_put_hcd(hcd); return ERR_PTR(ret); + } device_wakeup_enable(hcd->self.controller); return hcd; --- linux-azure-5.8-5.8.0.orig/drivers/usb/host/xhci-debugfs.c +++ linux-azure-5.8-5.8.0/drivers/usb/host/xhci-debugfs.c @@ -273,7 +273,7 @@ static int xhci_endpoint_context_show(struct seq_file *s, void *unused) { - int dci; + int ep_index; dma_addr_t dma; struct xhci_hcd *xhci; struct xhci_ep_ctx *ep_ctx; @@ -282,9 +282,9 @@ xhci = hcd_to_xhci(bus_to_hcd(dev->udev->bus)); - for (dci = 1; dci < 32; dci++) { - ep_ctx = xhci_get_ep_ctx(xhci, dev->out_ctx, dci); - dma = dev->out_ctx->dma + dci * CTX_SIZE(xhci->hcc_params); + for (ep_index = 0; ep_index < 31; ep_index++) { + ep_ctx = xhci_get_ep_ctx(xhci, dev->out_ctx, ep_index); + dma = dev->out_ctx->dma + (ep_index + 1) * CTX_SIZE(xhci->hcc_params); seq_printf(s, "%pad: %s\n", &dma, xhci_decode_ep_context(le32_to_cpu(ep_ctx->ep_info), le32_to_cpu(ep_ctx->ep_info2), --- linux-azure-5.8-5.8.0.orig/drivers/usb/host/xhci-histb.c +++ linux-azure-5.8-5.8.0/drivers/usb/host/xhci-histb.c @@ -240,7 +240,7 @@ /* Initialize dma_mask and coherent_dma_mask to 32-bits */ ret = dma_set_mask_and_coherent(dev, DMA_BIT_MASK(32)); if (ret) - return ret; + goto disable_pm; hcd = usb_create_hcd(driver, dev, dev_name(dev)); if (!hcd) { --- linux-azure-5.8-5.8.0.orig/drivers/usb/host/xhci-hub.c +++ linux-azure-5.8-5.8.0/drivers/usb/host/xhci-hub.c @@ -740,15 +740,6 @@ { u32 pls = status_reg & PORT_PLS_MASK; - /* resume state is a xHCI internal state. - * Do not report it to usb core, instead, pretend to be U3, - * thus usb core knows it's not ready for transfer - */ - if (pls == XDEV_RESUME) { - *status |= USB_SS_PORT_LS_U3; - return; - } - /* When the CAS bit is set then warm reset * should be performed on port */ @@ -771,6 +762,16 @@ pls |= USB_PORT_STAT_CONNECTION; } else { /* + * Resume state is an xHCI internal state. Do not report it to + * usb core, instead, pretend to be U3, thus usb core knows + * it's not ready for transfer. + */ + if (pls == XDEV_RESUME) { + *status |= USB_SS_PORT_LS_U3; + return; + } + + /* * If CAS bit isn't set but the Port is already at * Compliance Mode, fake a connection so the USB core * notices the Compliance state and resets the port. @@ -1706,6 +1707,10 @@ hcd->state = HC_STATE_SUSPENDED; bus_state->next_statechange = jiffies + msecs_to_jiffies(10); spin_unlock_irqrestore(&xhci->lock, flags); + + if (bus_state->bus_suspended) + usleep_range(5000, 10000); + return 0; } --- linux-azure-5.8-5.8.0.orig/drivers/usb/host/xhci-mtk-sch.c +++ linux-azure-5.8-5.8.0/drivers/usb/host/xhci-mtk-sch.c @@ -200,6 +200,8 @@ sch_ep->sch_tt = tt; sch_ep->ep = ep; + INIT_LIST_HEAD(&sch_ep->endpoint); + INIT_LIST_HEAD(&sch_ep->tt_endpoint); return sch_ep; } @@ -373,6 +375,7 @@ sch_ep->bw_budget_table[j]; } } + sch_ep->allocated = used; } static int check_sch_tt(struct usb_device *udev, @@ -541,6 +544,22 @@ return 0; } +static void destroy_sch_ep(struct usb_device *udev, + struct mu3h_sch_bw_info *sch_bw, struct mu3h_sch_ep_info *sch_ep) +{ + /* only release ep bw check passed by check_sch_bw() */ + if (sch_ep->allocated) + update_bus_bw(sch_bw, sch_ep, 0); + + list_del(&sch_ep->endpoint); + + if (sch_ep->sch_tt) { + list_del(&sch_ep->tt_endpoint); + drop_tt(udev); + } + kfree(sch_ep); +} + static bool need_bw_sch(struct usb_host_endpoint *ep, enum usb_device_speed speed, int has_tt) { @@ -583,6 +602,8 @@ mtk->sch_array = sch_array; + INIT_LIST_HEAD(&mtk->bw_ep_chk_list); + return 0; } EXPORT_SYMBOL_GPL(xhci_mtk_sch_init); @@ -601,19 +622,14 @@ struct xhci_ep_ctx *ep_ctx; struct xhci_slot_ctx *slot_ctx; struct xhci_virt_device *virt_dev; - struct mu3h_sch_bw_info *sch_bw; struct mu3h_sch_ep_info *sch_ep; - struct mu3h_sch_bw_info *sch_array; unsigned int ep_index; - int bw_index; - int ret = 0; xhci = hcd_to_xhci(hcd); virt_dev = xhci->devs[udev->slot_id]; ep_index = xhci_get_endpoint_index(&ep->desc); slot_ctx = xhci_get_slot_ctx(xhci, virt_dev->in_ctx); ep_ctx = xhci_get_ep_ctx(xhci, virt_dev->in_ctx, ep_index); - sch_array = mtk->sch_array; xhci_dbg(xhci, "%s() type:%d, speed:%d, mpkt:%d, dir:%d, ep:%p\n", __func__, usb_endpoint_type(&ep->desc), udev->speed, @@ -632,35 +648,13 @@ return 0; } - bw_index = get_bw_index(xhci, udev, ep); - sch_bw = &sch_array[bw_index]; - sch_ep = create_sch_ep(udev, ep, ep_ctx); if (IS_ERR_OR_NULL(sch_ep)) return -ENOMEM; setup_sch_info(udev, ep_ctx, sch_ep); - ret = check_sch_bw(udev, sch_bw, sch_ep); - if (ret) { - xhci_err(xhci, "Not enough bandwidth!\n"); - if (is_fs_or_ls(udev->speed)) - drop_tt(udev); - - kfree(sch_ep); - return -ENOSPC; - } - - list_add_tail(&sch_ep->endpoint, &sch_bw->bw_ep_list); - - ep_ctx->reserved[0] |= cpu_to_le32(EP_BPKTS(sch_ep->pkts) - | EP_BCSCOUNT(sch_ep->cs_count) | EP_BBM(sch_ep->burst_mode)); - ep_ctx->reserved[1] |= cpu_to_le32(EP_BOFFSET(sch_ep->offset) - | EP_BREPEAT(sch_ep->repeat)); - - xhci_dbg(xhci, " PKTS:%x, CSCOUNT:%x, BM:%x, OFFSET:%x, REPEAT:%x\n", - sch_ep->pkts, sch_ep->cs_count, sch_ep->burst_mode, - sch_ep->offset, sch_ep->repeat); + list_add_tail(&sch_ep->endpoint, &mtk->bw_ep_chk_list); return 0; } @@ -675,7 +669,7 @@ struct xhci_virt_device *virt_dev; struct mu3h_sch_bw_info *sch_array; struct mu3h_sch_bw_info *sch_bw; - struct mu3h_sch_ep_info *sch_ep; + struct mu3h_sch_ep_info *sch_ep, *tmp; int bw_index; xhci = hcd_to_xhci(hcd); @@ -694,17 +688,79 @@ bw_index = get_bw_index(xhci, udev, ep); sch_bw = &sch_array[bw_index]; - list_for_each_entry(sch_ep, &sch_bw->bw_ep_list, endpoint) { + list_for_each_entry_safe(sch_ep, tmp, &sch_bw->bw_ep_list, endpoint) { if (sch_ep->ep == ep) { - update_bus_bw(sch_bw, sch_ep, 0); - list_del(&sch_ep->endpoint); - if (is_fs_or_ls(udev->speed)) { - list_del(&sch_ep->tt_endpoint); - drop_tt(udev); - } - kfree(sch_ep); + destroy_sch_ep(udev, sch_bw, sch_ep); break; } } } EXPORT_SYMBOL_GPL(xhci_mtk_drop_ep_quirk); + +int xhci_mtk_check_bandwidth(struct usb_hcd *hcd, struct usb_device *udev) +{ + struct xhci_hcd_mtk *mtk = hcd_to_mtk(hcd); + struct xhci_hcd *xhci = hcd_to_xhci(hcd); + struct xhci_virt_device *virt_dev = xhci->devs[udev->slot_id]; + struct mu3h_sch_bw_info *sch_bw; + struct mu3h_sch_ep_info *sch_ep, *tmp; + int bw_index, ret; + + xhci_dbg(xhci, "%s() udev %s\n", __func__, dev_name(&udev->dev)); + + list_for_each_entry(sch_ep, &mtk->bw_ep_chk_list, endpoint) { + bw_index = get_bw_index(xhci, udev, sch_ep->ep); + sch_bw = &mtk->sch_array[bw_index]; + + ret = check_sch_bw(udev, sch_bw, sch_ep); + if (ret) { + xhci_err(xhci, "Not enough bandwidth!\n"); + return -ENOSPC; + } + } + + list_for_each_entry_safe(sch_ep, tmp, &mtk->bw_ep_chk_list, endpoint) { + struct xhci_ep_ctx *ep_ctx; + struct usb_host_endpoint *ep = sch_ep->ep; + unsigned int ep_index = xhci_get_endpoint_index(&ep->desc); + + bw_index = get_bw_index(xhci, udev, ep); + sch_bw = &mtk->sch_array[bw_index]; + + list_move_tail(&sch_ep->endpoint, &sch_bw->bw_ep_list); + + ep_ctx = xhci_get_ep_ctx(xhci, virt_dev->in_ctx, ep_index); + ep_ctx->reserved[0] |= cpu_to_le32(EP_BPKTS(sch_ep->pkts) + | EP_BCSCOUNT(sch_ep->cs_count) + | EP_BBM(sch_ep->burst_mode)); + ep_ctx->reserved[1] |= cpu_to_le32(EP_BOFFSET(sch_ep->offset) + | EP_BREPEAT(sch_ep->repeat)); + + xhci_dbg(xhci, " PKTS:%x, CSCOUNT:%x, BM:%x, OFFSET:%x, REPEAT:%x\n", + sch_ep->pkts, sch_ep->cs_count, sch_ep->burst_mode, + sch_ep->offset, sch_ep->repeat); + } + + return xhci_check_bandwidth(hcd, udev); +} +EXPORT_SYMBOL_GPL(xhci_mtk_check_bandwidth); + +void xhci_mtk_reset_bandwidth(struct usb_hcd *hcd, struct usb_device *udev) +{ + struct xhci_hcd_mtk *mtk = hcd_to_mtk(hcd); + struct xhci_hcd *xhci = hcd_to_xhci(hcd); + struct mu3h_sch_bw_info *sch_bw; + struct mu3h_sch_ep_info *sch_ep, *tmp; + int bw_index; + + xhci_dbg(xhci, "%s() udev %s\n", __func__, dev_name(&udev->dev)); + + list_for_each_entry_safe(sch_ep, tmp, &mtk->bw_ep_chk_list, endpoint) { + bw_index = get_bw_index(xhci, udev, sch_ep->ep); + sch_bw = &mtk->sch_array[bw_index]; + destroy_sch_ep(udev, sch_bw, sch_ep); + } + + xhci_reset_bandwidth(hcd, udev); +} +EXPORT_SYMBOL_GPL(xhci_mtk_reset_bandwidth); --- linux-azure-5.8-5.8.0.orig/drivers/usb/host/xhci-mtk.c +++ linux-azure-5.8-5.8.0/drivers/usb/host/xhci-mtk.c @@ -347,6 +347,8 @@ static int xhci_mtk_setup(struct usb_hcd *hcd); static const struct xhci_driver_overrides xhci_mtk_overrides __initconst = { .reset = xhci_mtk_setup, + .check_bandwidth = xhci_mtk_check_bandwidth, + .reset_bandwidth = xhci_mtk_reset_bandwidth, }; static struct hc_driver __read_mostly xhci_mtk_hc_driver; --- linux-azure-5.8-5.8.0.orig/drivers/usb/host/xhci-mtk.h +++ linux-azure-5.8-5.8.0/drivers/usb/host/xhci-mtk.h @@ -59,6 +59,7 @@ * @ep_type: endpoint type * @maxpkt: max packet size of endpoint * @ep: address of usb_host_endpoint struct + * @allocated: the bandwidth is aready allocated from bus_bw * @offset: which uframe of the interval that transfer should be * scheduled first time within the interval * @repeat: the time gap between two uframes that transfers are @@ -86,6 +87,7 @@ u32 ep_type; u32 maxpkt; void *ep; + bool allocated; /* * mtk xHCI scheduling information put into reserved DWs * in ep context @@ -131,6 +133,7 @@ struct device *dev; struct usb_hcd *hcd; struct mu3h_sch_bw_info *sch_array; + struct list_head bw_ep_chk_list; struct mu3c_ippc_regs __iomem *ippc_regs; bool has_ippc; int num_u2_ports; @@ -166,6 +169,8 @@ struct usb_host_endpoint *ep); void xhci_mtk_drop_ep_quirk(struct usb_hcd *hcd, struct usb_device *udev, struct usb_host_endpoint *ep); +int xhci_mtk_check_bandwidth(struct usb_hcd *hcd, struct usb_device *udev); +void xhci_mtk_reset_bandwidth(struct usb_hcd *hcd, struct usb_device *udev); #else static inline int xhci_mtk_add_ep_quirk(struct usb_hcd *hcd, @@ -179,6 +184,16 @@ { } +static inline int xhci_mtk_check_bandwidth(struct usb_hcd *hcd, + struct usb_device *udev) +{ + return 0; +} + +static inline void xhci_mtk_reset_bandwidth(struct usb_hcd *hcd, + struct usb_device *udev) +{ +} #endif #endif /* _XHCI_MTK_H_ */ --- linux-azure-5.8-5.8.0.orig/drivers/usb/host/xhci-mvebu.c +++ linux-azure-5.8-5.8.0/drivers/usb/host/xhci-mvebu.c @@ -8,6 +8,7 @@ #include #include #include +#include #include #include @@ -73,6 +74,47 @@ return 0; } + +int xhci_mvebu_a3700_plat_setup(struct usb_hcd *hcd) +{ + struct xhci_hcd *xhci = hcd_to_xhci(hcd); + struct device *dev = hcd->self.controller; + struct phy *phy; + int ret; + + /* Old bindings miss the PHY handle */ + phy = of_phy_get(dev->of_node, "usb3-phy"); + if (IS_ERR(phy) && PTR_ERR(phy) == -EPROBE_DEFER) + return -EPROBE_DEFER; + else if (IS_ERR(phy)) + goto phy_out; + + ret = phy_init(phy); + if (ret) + goto phy_put; + + ret = phy_set_mode(phy, PHY_MODE_USB_HOST_SS); + if (ret) + goto phy_exit; + + ret = phy_power_on(phy); + if (ret == -EOPNOTSUPP) { + /* Skip initializatin of XHCI PHY when it is unsupported by firmware */ + dev_warn(dev, "PHY unsupported by firmware\n"); + xhci->quirks |= XHCI_SKIP_PHY_INIT; + } + if (ret) + goto phy_exit; + + phy_power_off(phy); +phy_exit: + phy_exit(phy); +phy_put: + of_phy_put(phy); +phy_out: + + return 0; +} int xhci_mvebu_a3700_init_quirk(struct usb_hcd *hcd) { --- linux-azure-5.8-5.8.0.orig/drivers/usb/host/xhci-mvebu.h +++ linux-azure-5.8-5.8.0/drivers/usb/host/xhci-mvebu.h @@ -12,12 +12,18 @@ #if IS_ENABLED(CONFIG_USB_XHCI_MVEBU) int xhci_mvebu_mbus_init_quirk(struct usb_hcd *hcd); +int xhci_mvebu_a3700_plat_setup(struct usb_hcd *hcd); int xhci_mvebu_a3700_init_quirk(struct usb_hcd *hcd); #else static inline int xhci_mvebu_mbus_init_quirk(struct usb_hcd *hcd) { return 0; } + +static inline int xhci_mvebu_a3700_plat_setup(struct usb_hcd *hcd) +{ + return 0; +} static inline int xhci_mvebu_a3700_init_quirk(struct usb_hcd *hcd) { --- linux-azure-5.8-5.8.0.orig/drivers/usb/host/xhci-pci-renesas.c +++ linux-azure-5.8-5.8.0/drivers/usb/host/xhci-pci-renesas.c @@ -50,20 +50,6 @@ #define RENESAS_RETRY 10000 #define RENESAS_DELAY 10 -#define ROM_VALID_01 0x2013 -#define ROM_VALID_02 0x2026 - -static int renesas_verify_fw_version(struct pci_dev *pdev, u32 version) -{ - switch (version) { - case ROM_VALID_01: - case ROM_VALID_02: - return 0; - } - dev_err(&pdev->dev, "FW has invalid version :%d\n", version); - return -EINVAL; -} - static int renesas_fw_download_image(struct pci_dev *dev, const u32 *fw, size_t step, bool rom) { @@ -202,10 +188,7 @@ version &= RENESAS_FW_VERSION_FIELD; version = version >> RENESAS_FW_VERSION_OFFSET; - - err = renesas_verify_fw_version(pdev, version); - if (err) - return err; + dev_dbg(&pdev->dev, "Found ROM version: %x\n", version); /* * Test if ROM is present and loaded, if so we can skip everything --- linux-azure-5.8-5.8.0.orig/drivers/usb/host/xhci-pci.c +++ linux-azure-5.8-5.8.0/drivers/usb/host/xhci-pci.c @@ -44,6 +44,7 @@ #define PCI_DEVICE_ID_INTEL_DNV_XHCI 0x19d0 #define PCI_DEVICE_ID_INTEL_ALPINE_RIDGE_2C_XHCI 0x15b5 #define PCI_DEVICE_ID_INTEL_ALPINE_RIDGE_4C_XHCI 0x15b6 +#define PCI_DEVICE_ID_INTEL_ALPINE_RIDGE_LP_XHCI 0x15c1 #define PCI_DEVICE_ID_INTEL_ALPINE_RIDGE_C_2C_XHCI 0x15db #define PCI_DEVICE_ID_INTEL_ALPINE_RIDGE_C_4C_XHCI 0x15d4 #define PCI_DEVICE_ID_INTEL_TITAN_RIDGE_2C_XHCI 0x15e9 @@ -52,12 +53,16 @@ #define PCI_DEVICE_ID_INTEL_ICE_LAKE_XHCI 0x8a13 #define PCI_DEVICE_ID_INTEL_CML_XHCI 0xa3af #define PCI_DEVICE_ID_INTEL_TIGER_LAKE_XHCI 0x9a13 +#define PCI_DEVICE_ID_INTEL_MAPLE_RIDGE_XHCI 0x1138 #define PCI_DEVICE_ID_AMD_PROMONTORYA_4 0x43b9 #define PCI_DEVICE_ID_AMD_PROMONTORYA_3 0x43ba #define PCI_DEVICE_ID_AMD_PROMONTORYA_2 0x43bb #define PCI_DEVICE_ID_AMD_PROMONTORYA_1 0x43bc +#define PCI_DEVICE_ID_ASMEDIA_1042_XHCI 0x1042 #define PCI_DEVICE_ID_ASMEDIA_1042A_XHCI 0x1142 +#define PCI_DEVICE_ID_ASMEDIA_1142_XHCI 0x1242 +#define PCI_DEVICE_ID_ASMEDIA_2142_XHCI 0x2142 static const char hcd_name[] = "xhci_hcd"; @@ -157,6 +162,9 @@ (pdev->device == 0x15e0 || pdev->device == 0x15e1)) xhci->quirks |= XHCI_SNPS_BROKEN_SUSPEND; + if (pdev->vendor == PCI_VENDOR_ID_AMD && pdev->device == 0x15e5) + xhci->quirks |= XHCI_DISABLE_SPARSE; + if (pdev->vendor == PCI_VENDOR_ID_AMD) xhci->quirks |= XHCI_TRUST_TX_LENGTH; @@ -223,13 +231,15 @@ if (pdev->vendor == PCI_VENDOR_ID_INTEL && (pdev->device == PCI_DEVICE_ID_INTEL_ALPINE_RIDGE_2C_XHCI || pdev->device == PCI_DEVICE_ID_INTEL_ALPINE_RIDGE_4C_XHCI || + pdev->device == PCI_DEVICE_ID_INTEL_ALPINE_RIDGE_LP_XHCI || pdev->device == PCI_DEVICE_ID_INTEL_ALPINE_RIDGE_C_2C_XHCI || pdev->device == PCI_DEVICE_ID_INTEL_ALPINE_RIDGE_C_4C_XHCI || pdev->device == PCI_DEVICE_ID_INTEL_TITAN_RIDGE_2C_XHCI || pdev->device == PCI_DEVICE_ID_INTEL_TITAN_RIDGE_4C_XHCI || pdev->device == PCI_DEVICE_ID_INTEL_TITAN_RIDGE_DD_XHCI || pdev->device == PCI_DEVICE_ID_INTEL_ICE_LAKE_XHCI || - pdev->device == PCI_DEVICE_ID_INTEL_TIGER_LAKE_XHCI)) + pdev->device == PCI_DEVICE_ID_INTEL_TIGER_LAKE_XHCI || + pdev->device == PCI_DEVICE_ID_INTEL_MAPLE_RIDGE_XHCI)) xhci->quirks |= XHCI_DEFAULT_PM_RUNTIME_ALLOW; if (pdev->vendor == PCI_VENDOR_ID_ETRON && @@ -260,13 +270,14 @@ xhci->quirks |= XHCI_LPM_SUPPORT; if (pdev->vendor == PCI_VENDOR_ID_ASMEDIA && - pdev->device == 0x1042) + pdev->device == PCI_DEVICE_ID_ASMEDIA_1042_XHCI) xhci->quirks |= XHCI_BROKEN_STREAMS; if (pdev->vendor == PCI_VENDOR_ID_ASMEDIA && - pdev->device == 0x1142) + pdev->device == PCI_DEVICE_ID_ASMEDIA_1042A_XHCI) xhci->quirks |= XHCI_TRUST_TX_LENGTH; if (pdev->vendor == PCI_VENDOR_ID_ASMEDIA && - pdev->device == 0x2142) + (pdev->device == PCI_DEVICE_ID_ASMEDIA_1142_XHCI || + pdev->device == PCI_DEVICE_ID_ASMEDIA_2142_XHCI)) xhci->quirks |= XHCI_NO_64BIT_SUPPORT; if (pdev->vendor == PCI_VENDOR_ID_ASMEDIA && @@ -367,6 +378,15 @@ /* USB 2.0 roothub is stored in the PCI device now. */ hcd = dev_get_drvdata(&dev->dev); xhci = hcd_to_xhci(hcd); + + if (xhci->quirks & XHCI_DISABLE_SPARSE) { + u32 reg; + + reg = readl(hcd->regs + 0xC12C); + reg &= ~BIT(17); + writel(reg, hcd->regs + 0xC12C); + } + xhci->shared_hcd = usb_create_shared_hcd(&xhci_pci_hc_driver, &dev->dev, pci_name(dev), hcd); if (!xhci->shared_hcd) { --- linux-azure-5.8-5.8.0.orig/drivers/usb/host/xhci-plat.c +++ linux-azure-5.8-5.8.0/drivers/usb/host/xhci-plat.c @@ -44,6 +44,16 @@ priv->plat_start(hcd); } +static int xhci_priv_plat_setup(struct usb_hcd *hcd) +{ + struct xhci_plat_priv *priv = hcd_to_xhci_priv(hcd); + + if (!priv->plat_setup) + return 0; + + return priv->plat_setup(hcd); +} + static int xhci_priv_init_quirk(struct usb_hcd *hcd) { struct xhci_plat_priv *priv = hcd_to_xhci_priv(hcd); @@ -101,6 +111,7 @@ }; static const struct xhci_plat_priv xhci_plat_marvell_armada3700 = { + .plat_setup = xhci_mvebu_a3700_plat_setup, .init_quirk = xhci_mvebu_a3700_init_quirk, }; @@ -173,6 +184,8 @@ struct usb_hcd *hcd; int ret; int irq; + struct xhci_plat_priv *priv = NULL; + if (usb_disabled()) return -ENODEV; @@ -266,8 +279,7 @@ priv_match = of_device_get_match_data(&pdev->dev); if (priv_match) { - struct xhci_plat_priv *priv = hcd_to_xhci_priv(hcd); - + priv = hcd_to_xhci_priv(hcd); /* Just copy data for now */ if (priv_match) *priv = *priv_match; @@ -316,6 +328,16 @@ hcd->tpl_support = of_usb_host_tpl_support(sysdev->of_node); xhci->shared_hcd->tpl_support = hcd->tpl_support; + + if (priv) { + ret = xhci_priv_plat_setup(hcd); + if (ret) + goto disable_usb_phy; + } + + if ((xhci->quirks & XHCI_SKIP_PHY_INIT) || (priv && (priv->quirks & XHCI_SKIP_PHY_INIT))) + hcd->skip_phy_initialization = 1; + ret = usb_add_hcd(hcd, irq, IRQF_SHARED); if (ret) goto disable_usb_phy; --- linux-azure-5.8-5.8.0.orig/drivers/usb/host/xhci-plat.h +++ linux-azure-5.8-5.8.0/drivers/usb/host/xhci-plat.h @@ -13,6 +13,7 @@ struct xhci_plat_priv { const char *firmware_name; unsigned long long quirks; + int (*plat_setup)(struct usb_hcd *); void (*plat_start)(struct usb_hcd *); int (*init_quirk)(struct usb_hcd *); int (*resume_quirk)(struct usb_hcd *); --- linux-azure-5.8-5.8.0.orig/drivers/usb/host/xhci-ring.c +++ linux-azure-5.8-5.8.0/drivers/usb/host/xhci-ring.c @@ -699,11 +699,16 @@ dma_unmap_single(dev, seg->bounce_dma, ring->bounce_buf_len, DMA_FROM_DEVICE); /* for in tranfers we need to copy the data from bounce to sg */ - len = sg_pcopy_from_buffer(urb->sg, urb->num_sgs, seg->bounce_buf, - seg->bounce_len, seg->bounce_offs); - if (len != seg->bounce_len) - xhci_warn(xhci, "WARN Wrong bounce buffer read length: %zu != %d\n", - len, seg->bounce_len); + if (urb->num_sgs) { + len = sg_pcopy_from_buffer(urb->sg, urb->num_sgs, seg->bounce_buf, + seg->bounce_len, seg->bounce_offs); + if (len != seg->bounce_len) + xhci_warn(xhci, "WARN Wrong bounce buffer read length: %zu != %d\n", + len, seg->bounce_len); + } else { + memcpy(urb->transfer_buffer + seg->bounce_offs, seg->bounce_buf, + seg->bounce_len); + } seg->bounce_len = 0; seg->bounce_offs = 0; } @@ -2930,6 +2935,8 @@ trb->field[0] = cpu_to_le32(field1); trb->field[1] = cpu_to_le32(field2); trb->field[2] = cpu_to_le32(field3); + /* make sure TRB is fully written before giving it to the controller */ + wmb(); trb->field[3] = cpu_to_le32(field4); trace_xhci_queue_trb(ring, trb); @@ -3273,12 +3280,16 @@ /* create a max max_pkt sized bounce buffer pointed to by last trb */ if (usb_urb_dir_out(urb)) { - len = sg_pcopy_to_buffer(urb->sg, urb->num_sgs, - seg->bounce_buf, new_buff_len, enqd_len); - if (len != new_buff_len) - xhci_warn(xhci, - "WARN Wrong bounce buffer write length: %zu != %d\n", - len, new_buff_len); + if (urb->num_sgs) { + len = sg_pcopy_to_buffer(urb->sg, urb->num_sgs, + seg->bounce_buf, new_buff_len, enqd_len); + if (len != new_buff_len) + xhci_warn(xhci, "WARN Wrong bounce buffer write length: %zu != %d\n", + len, new_buff_len); + } else { + memcpy(seg->bounce_buf, urb->transfer_buffer + enqd_len, new_buff_len); + } + seg->bounce_dma = dma_map_single(dev, seg->bounce_buf, max_pkt, DMA_TO_DEVICE); } else { --- linux-azure-5.8-5.8.0.orig/drivers/usb/host/xhci-tegra.c +++ linux-azure-5.8-5.8.0/drivers/usb/host/xhci-tegra.c @@ -623,6 +623,13 @@ enable); if (err < 0) break; + + /* + * wait 500us for LFPS detector to be disabled before + * sending ACK + */ + if (!enable) + usleep_range(500, 1000); } if (err < 0) { @@ -1136,7 +1143,7 @@ unsigned int i, phy_count = 0; for (i = 0; i < tegra->soc->num_types; i++) { - if (!strncmp(tegra->soc->phy_types[i].name, "usb2", + if (!strncmp(tegra->soc->phy_types[i].name, name, strlen(name))) return tegra->phys[phy_count+port]; @@ -1258,6 +1265,8 @@ INIT_WORK(&tegra->id_work, tegra_xhci_id_work); tegra->id_nb.notifier_call = tegra_xhci_id_notify; + tegra->otg_usb2_port = -EINVAL; + tegra->otg_usb3_port = -EINVAL; for (i = 0; i < tegra->num_usb_phys; i++) { struct phy *phy = tegra_xusb_get_phy(tegra, "usb2", i); --- linux-azure-5.8-5.8.0.orig/drivers/usb/host/xhci.c +++ linux-azure-5.8-5.8.0/drivers/usb/host/xhci.c @@ -982,12 +982,15 @@ xhci->shared_hcd->state != HC_STATE_SUSPENDED) return -EINVAL; - xhci_dbc_suspend(xhci); - /* Clear root port wake on bits if wakeup not allowed. */ if (!do_wakeup) xhci_disable_port_wake_on_bits(xhci); + if (!HCD_HW_ACCESSIBLE(hcd)) + return 0; + + xhci_dbc_suspend(xhci); + /* Don't poll the roothubs on bus suspend. */ xhci_dbg(xhci, "%s: stopping port polling.\n", __func__); clear_bit(HCD_FLAG_POLL_RH, &hcd->flags); @@ -1915,8 +1918,6 @@ ep_ctx = xhci_get_ep_ctx(xhci, virt_dev->in_ctx, ep_index); trace_xhci_add_endpoint(ep_ctx); - xhci_debugfs_create_endpoint(xhci, virt_dev, ep_index); - xhci_dbg(xhci, "add ep 0x%x, slot id %d, new drop flags = %#x, new add flags = %#x\n", (unsigned int) ep->desc.bEndpointAddress, udev->slot_id, @@ -2860,7 +2861,7 @@ * else should be touching the xhci->devs[slot_id] structure, so we * don't need to take the xhci->lock for manipulating that. */ -static int xhci_check_bandwidth(struct usb_hcd *hcd, struct usb_device *udev) +int xhci_check_bandwidth(struct usb_hcd *hcd, struct usb_device *udev) { int i; int ret = 0; @@ -2949,6 +2950,7 @@ xhci_check_bw_drop_ep_streams(xhci, virt_dev, i); virt_dev->eps[i].ring = virt_dev->eps[i].new_ring; virt_dev->eps[i].new_ring = NULL; + xhci_debugfs_create_endpoint(xhci, virt_dev, i); } command_cleanup: kfree(command->completion); @@ -2957,7 +2959,7 @@ return ret; } -static void xhci_reset_bandwidth(struct usb_hcd *hcd, struct usb_device *udev) +void xhci_reset_bandwidth(struct usb_hcd *hcd, struct usb_device *udev) { struct xhci_hcd *xhci; struct xhci_virt_device *virt_dev; @@ -3236,10 +3238,11 @@ wait_for_completion(cfg_cmd->completion); - ep->ep_state &= ~EP_SOFT_CLEAR_TOGGLE; xhci_free_command(xhci, cfg_cmd); cleanup: xhci_free_command(xhci, stop_cmd); + if (ep->ep_state & EP_SOFT_CLEAR_TOGGLE) + ep->ep_state &= ~EP_SOFT_CLEAR_TOGGLE; } static int xhci_check_streams_endpoint(struct xhci_hcd *xhci, @@ -4639,19 +4642,19 @@ { unsigned long long timeout_ns; + if (xhci->quirks & XHCI_INTEL_HOST) + timeout_ns = xhci_calculate_intel_u1_timeout(udev, desc); + else + timeout_ns = udev->u1_params.sel; + /* Prevent U1 if service interval is shorter than U1 exit latency */ if (usb_endpoint_xfer_int(desc) || usb_endpoint_xfer_isoc(desc)) { - if (xhci_service_interval_to_ns(desc) <= udev->u1_params.mel) { + if (xhci_service_interval_to_ns(desc) <= timeout_ns) { dev_dbg(&udev->dev, "Disable U1, ESIT shorter than exit latency\n"); return USB3_LPM_DISABLED; } } - if (xhci->quirks & XHCI_INTEL_HOST) - timeout_ns = xhci_calculate_intel_u1_timeout(udev, desc); - else - timeout_ns = udev->u1_params.sel; - /* The U1 timeout is encoded in 1us intervals. * Don't return a timeout of zero, because that's USB3_LPM_DISABLED. */ @@ -4703,19 +4706,19 @@ { unsigned long long timeout_ns; + if (xhci->quirks & XHCI_INTEL_HOST) + timeout_ns = xhci_calculate_intel_u2_timeout(udev, desc); + else + timeout_ns = udev->u2_params.sel; + /* Prevent U2 if service interval is shorter than U2 exit latency */ if (usb_endpoint_xfer_int(desc) || usb_endpoint_xfer_isoc(desc)) { - if (xhci_service_interval_to_ns(desc) <= udev->u2_params.mel) { + if (xhci_service_interval_to_ns(desc) <= timeout_ns) { dev_dbg(&udev->dev, "Disable U2, ESIT shorter than exit latency\n"); return USB3_LPM_DISABLED; } } - if (xhci->quirks & XHCI_INTEL_HOST) - timeout_ns = xhci_calculate_intel_u2_timeout(udev, desc); - else - timeout_ns = udev->u2_params.sel; - /* The U2 timeout is encoded in 256us intervals */ timeout_ns = DIV_ROUND_UP_ULL(timeout_ns, 256 * 1000); /* If the necessary timeout value is bigger than what we can set in the @@ -5378,6 +5381,10 @@ drv->reset = over->reset; if (over->start) drv->start = over->start; + if (over->check_bandwidth) + drv->check_bandwidth = over->check_bandwidth; + if (over->reset_bandwidth) + drv->reset_bandwidth = over->reset_bandwidth; } } EXPORT_SYMBOL_GPL(xhci_init_driver); --- linux-azure-5.8-5.8.0.orig/drivers/usb/host/xhci.h +++ linux-azure-5.8-5.8.0/drivers/usb/host/xhci.h @@ -1874,6 +1874,8 @@ #define XHCI_RESET_PLL_ON_DISCONNECT BIT_ULL(34) #define XHCI_SNPS_BROKEN_SUSPEND BIT_ULL(35) #define XHCI_RENESAS_FW_QUIRK BIT_ULL(36) +#define XHCI_SKIP_PHY_INIT BIT_ULL(37) +#define XHCI_DISABLE_SPARSE BIT_ULL(38) unsigned int num_active_eps; unsigned int limit_active_eps; @@ -1911,6 +1913,8 @@ size_t extra_priv_size; int (*reset)(struct usb_hcd *hcd); int (*start)(struct usb_hcd *hcd); + int (*check_bandwidth)(struct usb_hcd *, struct usb_device *); + void (*reset_bandwidth)(struct usb_hcd *, struct usb_device *); }; #define XHCI_CFC_DELAY 10 @@ -2063,6 +2067,8 @@ void xhci_shutdown(struct usb_hcd *hcd); void xhci_init_driver(struct hc_driver *drv, const struct xhci_driver_overrides *over); +int xhci_check_bandwidth(struct usb_hcd *hcd, struct usb_device *udev); +void xhci_reset_bandwidth(struct usb_hcd *hcd, struct usb_device *udev); int xhci_disable_slot(struct xhci_hcd *xhci, u32 slot_id); int xhci_ext_cap_init(struct xhci_hcd *xhci); --- linux-azure-5.8-5.8.0.orig/drivers/usb/misc/adutux.c +++ linux-azure-5.8-5.8.0/drivers/usb/misc/adutux.c @@ -209,6 +209,7 @@ if (status != 0) { if ((status != -ENOENT) && + (status != -ESHUTDOWN) && (status != -ECONNRESET)) { dev_dbg(&dev->udev->dev, "%s :nonzero status received: %d\n", __func__, --- linux-azure-5.8-5.8.0.orig/drivers/usb/misc/apple-mfi-fastcharge.c +++ linux-azure-5.8-5.8.0/drivers/usb/misc/apple-mfi-fastcharge.c @@ -120,8 +120,10 @@ dev_dbg(&mfi->udev->dev, "prop: %d\n", psp); ret = pm_runtime_get_sync(&mfi->udev->dev); - if (ret < 0) + if (ret < 0) { + pm_runtime_put_noidle(&mfi->udev->dev); return ret; + } switch (psp) { case POWER_SUPPLY_PROP_CHARGE_TYPE: @@ -163,17 +165,23 @@ .property_is_writeable = apple_mfi_fc_property_is_writeable }; +static bool mfi_fc_match(struct usb_device *udev) +{ + int idProduct; + + idProduct = le16_to_cpu(udev->descriptor.idProduct); + /* See comment above mfi_fc_id_table[] */ + return (idProduct >= 0x1200 && idProduct <= 0x12ff); +} + static int mfi_fc_probe(struct usb_device *udev) { struct power_supply_config battery_cfg = {}; struct mfi_device *mfi = NULL; - int err, idProduct; + int err; - idProduct = le16_to_cpu(udev->descriptor.idProduct); - /* See comment above mfi_fc_id_table[] */ - if (idProduct < 0x1200 || idProduct > 0x12ff) { + if (!mfi_fc_match(udev)) return -ENODEV; - } mfi = kzalloc(sizeof(struct mfi_device), GFP_KERNEL); if (!mfi) { @@ -220,6 +228,7 @@ .probe = mfi_fc_probe, .disconnect = mfi_fc_disconnect, .id_table = mfi_fc_id_table, + .match = mfi_fc_match, .generic_subclass = 1, }; --- linux-azure-5.8-5.8.0.orig/drivers/usb/misc/iowarrior.c +++ linux-azure-5.8-5.8.0/drivers/usb/misc/iowarrior.c @@ -2,8 +2,9 @@ /* * Native support for the I/O-Warrior USB devices * - * Copyright (c) 2003-2005 Code Mercenaries GmbH - * written by Christian Lucht + * Copyright (c) 2003-2005, 2020 Code Mercenaries GmbH + * written by Christian Lucht and + * Christoph Jung * * based on @@ -802,14 +803,28 @@ /* we have to check the report_size often, so remember it in the endianness suitable for our machine */ dev->report_size = usb_endpoint_maxp(dev->int_in_endpoint); - if ((dev->interface->cur_altsetting->desc.bInterfaceNumber == 0) && - ((dev->product_id == USB_DEVICE_ID_CODEMERCS_IOW56) || - (dev->product_id == USB_DEVICE_ID_CODEMERCS_IOW56AM) || - (dev->product_id == USB_DEVICE_ID_CODEMERCS_IOW28) || - (dev->product_id == USB_DEVICE_ID_CODEMERCS_IOW28L) || - (dev->product_id == USB_DEVICE_ID_CODEMERCS_IOW100))) - /* IOWarrior56 has wMaxPacketSize different from report size */ - dev->report_size = 7; + + /* + * Some devices need the report size to be different than the + * endpoint size. + */ + if (dev->interface->cur_altsetting->desc.bInterfaceNumber == 0) { + switch (dev->product_id) { + case USB_DEVICE_ID_CODEMERCS_IOW56: + case USB_DEVICE_ID_CODEMERCS_IOW56AM: + dev->report_size = 7; + break; + + case USB_DEVICE_ID_CODEMERCS_IOW28: + case USB_DEVICE_ID_CODEMERCS_IOW28L: + dev->report_size = 4; + break; + + case USB_DEVICE_ID_CODEMERCS_IOW100: + dev->report_size = 13; + break; + } + } /* create the urb and buffer for reading */ dev->int_in_urb = usb_alloc_urb(0, GFP_KERNEL); --- linux-azure-5.8-5.8.0.orig/drivers/usb/misc/lvstest.c +++ linux-azure-5.8-5.8.0/drivers/usb/misc/lvstest.c @@ -426,7 +426,7 @@ USB_DT_SS_HUB_SIZE, USB_CTRL_GET_TIMEOUT); if (ret < (USB_DT_HUB_NONVAR_SIZE + 2)) { dev_err(&hdev->dev, "wrong root hub descriptor read %d\n", ret); - return ret; + return ret < 0 ? ret : -EINVAL; } /* submit urb to poll interrupt endpoint */ --- linux-azure-5.8-5.8.0.orig/drivers/usb/misc/sisusbvga/Kconfig +++ linux-azure-5.8-5.8.0/drivers/usb/misc/sisusbvga/Kconfig @@ -16,7 +16,7 @@ config USB_SISUSBVGA_CON bool "Text console and mode switching support" if USB_SISUSBVGA - depends on VT + depends on VT && BROKEN select FONT_8x16 help Say Y here if you want a VGA text console via the USB dongle or --- linux-azure-5.8-5.8.0.orig/drivers/usb/misc/sisusbvga/sisusb.c +++ linux-azure-5.8-5.8.0/drivers/usb/misc/sisusbvga/sisusb.c @@ -761,7 +761,7 @@ u8 swap8, fromkern = kernbuffer ? 1 : 0; u16 swap16; u32 swap32, flag = (length >> 28) & 1; - char buf[4]; + u8 buf[4]; /* if neither kernbuffer not userbuffer are given, assume * data in obuf --- linux-azure-5.8-5.8.0.orig/drivers/usb/misc/yurex.c +++ linux-azure-5.8-5.8.0/drivers/usb/misc/yurex.c @@ -492,11 +492,14 @@ prepare_to_wait(&dev->waitq, &wait, TASK_INTERRUPTIBLE); dev_dbg(&dev->interface->dev, "%s - submit %c\n", __func__, dev->cntl_buffer[0]); - retval = usb_submit_urb(dev->cntl_urb, GFP_KERNEL); + retval = usb_submit_urb(dev->cntl_urb, GFP_ATOMIC); if (retval >= 0) timeout = schedule_timeout(YUREX_WRITE_TIMEOUT); finish_wait(&dev->waitq, &wait); + /* make sure URB is idle after timeout or (spurious) CMD_ACK */ + usb_kill_urb(dev->cntl_urb); + mutex_unlock(&dev->io_mutex); if (retval < 0) { --- linux-azure-5.8-5.8.0.orig/drivers/usb/mtu3/mtu3_core.c +++ linux-azure-5.8-5.8.0/drivers/usb/mtu3/mtu3_core.c @@ -131,8 +131,12 @@ mtu3_setbits(ibase, SSUSB_U2_CTRL(0), SSUSB_U2_PORT_DIS | SSUSB_U2_PORT_PDN); - if (mtu->ssusb->dr_mode == USB_DR_MODE_OTG) + if (mtu->ssusb->dr_mode == USB_DR_MODE_OTG) { mtu3_clrbits(ibase, SSUSB_U2_CTRL(0), SSUSB_U2_PORT_OTG_SEL); + if (mtu->is_u3_ip) + mtu3_clrbits(ibase, SSUSB_U3_CTRL(0), + SSUSB_U3_PORT_DUAL_MODE); + } mtu3_setbits(ibase, U3D_SSUSB_IP_PW_CTRL2, SSUSB_IP_DEV_PDN); } --- linux-azure-5.8-5.8.0.orig/drivers/usb/mtu3/mtu3_debugfs.c +++ linux-azure-5.8-5.8.0/drivers/usb/mtu3/mtu3_debugfs.c @@ -127,7 +127,7 @@ struct debugfs_regset32 *regset; struct mtu3_regset *mregs; - mregs = devm_kzalloc(mtu->dev, sizeof(*regset), GFP_KERNEL); + mregs = devm_kzalloc(mtu->dev, sizeof(*mregs), GFP_KERNEL); if (!mregs) return; --- linux-azure-5.8-5.8.0.orig/drivers/usb/mtu3/mtu3_gadget.c +++ linux-azure-5.8-5.8.0/drivers/usb/mtu3/mtu3_gadget.c @@ -587,6 +587,7 @@ spin_unlock_irqrestore(&mtu->lock, flags); + synchronize_irq(mtu->irq); return 0; } --- linux-azure-5.8-5.8.0.orig/drivers/usb/musb/musb_core.c +++ linux-azure-5.8-5.8.0/drivers/usb/musb/musb_core.c @@ -2241,32 +2241,35 @@ { struct musb_pending_work *w; unsigned long flags; + bool is_suspended; int error; if (WARN_ON(!callback)) return -EINVAL; - if (pm_runtime_active(musb->controller)) - return callback(musb, data); + spin_lock_irqsave(&musb->list_lock, flags); + is_suspended = musb->is_runtime_suspended; - w = devm_kzalloc(musb->controller, sizeof(*w), GFP_ATOMIC); - if (!w) - return -ENOMEM; + if (is_suspended) { + w = devm_kzalloc(musb->controller, sizeof(*w), GFP_ATOMIC); + if (!w) { + error = -ENOMEM; + goto out_unlock; + } + + w->callback = callback; + w->data = data; - w->callback = callback; - w->data = data; - spin_lock_irqsave(&musb->list_lock, flags); - if (musb->is_runtime_suspended) { list_add_tail(&w->node, &musb->pending_list); error = 0; - } else { - dev_err(musb->controller, "could not add resume work %p\n", - callback); - devm_kfree(musb->controller, w); - error = -EINPROGRESS; } + +out_unlock: spin_unlock_irqrestore(&musb->list_lock, flags); + if (!is_suspended) + error = callback(musb, data); + return error; } EXPORT_SYMBOL_GPL(musb_queue_resume_work); --- linux-azure-5.8-5.8.0.orig/drivers/usb/renesas_usbhs/fifo.c +++ linux-azure-5.8-5.8.0/drivers/usb/renesas_usbhs/fifo.c @@ -126,6 +126,7 @@ } usbhs_pipe_clear_without_sequence(pipe, 0, 0); + usbhs_pipe_running(pipe, 0); __usbhsf_pkt_del(pkt); } --- linux-azure-5.8-5.8.0.orig/drivers/usb/serial/ch341.c +++ linux-azure-5.8-5.8.0/drivers/usb/serial/ch341.c @@ -76,10 +76,11 @@ #define CH341_QUIRK_LIMITED_PRESCALER BIT(0) static const struct usb_device_id id_table[] = { - { USB_DEVICE(0x4348, 0x5523) }, + { USB_DEVICE(0x1a86, 0x5512) }, + { USB_DEVICE(0x1a86, 0x5523) }, { USB_DEVICE(0x1a86, 0x7522) }, { USB_DEVICE(0x1a86, 0x7523) }, - { USB_DEVICE(0x1a86, 0x5523) }, + { USB_DEVICE(0x4348, 0x5523) }, { }, }; MODULE_DEVICE_TABLE(usb, id_table); --- linux-azure-5.8-5.8.0.orig/drivers/usb/serial/cp210x.c +++ linux-azure-5.8-5.8.0/drivers/usb/serial/cp210x.c @@ -61,6 +61,7 @@ { USB_DEVICE(0x08e6, 0x5501) }, /* Gemalto Prox-PU/CU contactless smartcard reader */ { USB_DEVICE(0x08FD, 0x000A) }, /* Digianswer A/S , ZigBee/802.15.4 MAC Device */ { USB_DEVICE(0x0908, 0x01FF) }, /* Siemens RUGGEDCOM USB Serial Console */ + { USB_DEVICE(0x0988, 0x0578) }, /* Teraoka AD2000 */ { USB_DEVICE(0x0B00, 0x3070) }, /* Ingenico 3070 */ { USB_DEVICE(0x0BED, 0x1100) }, /* MEI (TM) Cashflow-SC Bill/Voucher Acceptor */ { USB_DEVICE(0x0BED, 0x1101) }, /* MEI series 2000 Combo Acceptor */ @@ -201,6 +202,7 @@ { USB_DEVICE(0x1901, 0x0194) }, /* GE Healthcare Remote Alarm Box */ { USB_DEVICE(0x1901, 0x0195) }, /* GE B850/B650/B450 CP2104 DP UART interface */ { USB_DEVICE(0x1901, 0x0196) }, /* GE B850 CP2105 DP UART interface */ + { USB_DEVICE(0x199B, 0xBA30) }, /* LORD WSDA-200-USB */ { USB_DEVICE(0x19CF, 0x3000) }, /* Parrot NMEA GPS Flight Recorder */ { USB_DEVICE(0x1ADB, 0x0001) }, /* Schweitzer Engineering C662 Cable */ { USB_DEVICE(0x1B1C, 0x1C00) }, /* Corsair USB Dongle */ @@ -272,6 +274,8 @@ .break_ctl = cp210x_break_ctl, .set_termios = cp210x_set_termios, .tx_empty = cp210x_tx_empty, + .throttle = usb_serial_generic_throttle, + .unthrottle = usb_serial_generic_unthrottle, .tiocmget = cp210x_tiocmget, .tiocmset = cp210x_tiocmset, .attach = cp210x_attach, @@ -915,6 +919,7 @@ u32 baud; u16 bits; u32 ctl_hs; + u32 flow_repl; cp210x_read_u32_reg(port, CP210X_GET_BAUDRATE, &baud); @@ -1015,6 +1020,22 @@ ctl_hs = le32_to_cpu(flow_ctl.ulControlHandshake); if (ctl_hs & CP210X_SERIAL_CTS_HANDSHAKE) { dev_dbg(dev, "%s - flow control = CRTSCTS\n", __func__); + /* + * When the port is closed, the CP210x hardware disables + * auto-RTS and RTS is deasserted but it leaves auto-CTS when + * in hardware flow control mode. When re-opening the port, if + * auto-CTS is enabled on the cp210x, then auto-RTS must be + * re-enabled in the driver. + */ + flow_repl = le32_to_cpu(flow_ctl.ulFlowReplace); + flow_repl &= ~CP210X_SERIAL_RTS_MASK; + flow_repl |= CP210X_SERIAL_RTS_SHIFT(CP210X_SERIAL_RTS_FLOW_CTL); + flow_ctl.ulFlowReplace = cpu_to_le32(flow_repl); + cp210x_write_reg_block(port, + CP210X_SET_FLOW, + &flow_ctl, + sizeof(flow_ctl)); + cflag |= CRTSCTS; } else { dev_dbg(dev, "%s - flow control = NONE\n", __func__); --- linux-azure-5.8-5.8.0.orig/drivers/usb/serial/cyberjack.c +++ linux-azure-5.8-5.8.0/drivers/usb/serial/cyberjack.c @@ -357,11 +357,12 @@ struct device *dev = &port->dev; int status = urb->status; unsigned long flags; + bool resubmitted = false; - set_bit(0, &port->write_urbs_free); if (status) { dev_dbg(dev, "%s - nonzero write bulk status received: %d\n", __func__, status); + set_bit(0, &port->write_urbs_free); return; } @@ -394,6 +395,8 @@ goto exit; } + resubmitted = true; + dev_dbg(dev, "%s - priv->wrsent=%d\n", __func__, priv->wrsent); dev_dbg(dev, "%s - priv->wrfilled=%d\n", __func__, priv->wrfilled); @@ -410,6 +413,8 @@ exit: spin_unlock_irqrestore(&priv->lock, flags); + if (!resubmitted) + set_bit(0, &port->write_urbs_free); usb_serial_port_softint(port); } --- linux-azure-5.8-5.8.0.orig/drivers/usb/serial/digi_acceleport.c +++ linux-azure-5.8-5.8.0/drivers/usb/serial/digi_acceleport.c @@ -19,7 +19,6 @@ #include #include #include -#include #include #include #include @@ -198,14 +197,12 @@ int dp_throttle_restart; wait_queue_head_t dp_flush_wait; wait_queue_head_t dp_close_wait; /* wait queue for close */ - struct work_struct dp_wakeup_work; struct usb_serial_port *dp_port; }; /* Local Function Declarations */ -static void digi_wakeup_write_lock(struct work_struct *work); static int digi_write_oob_command(struct usb_serial_port *port, unsigned char *buf, int count, int interruptible); static int digi_write_inb_command(struct usb_serial_port *port, @@ -356,26 +353,6 @@ return timeout; } - -/* - * Digi Wakeup Write - * - * Wake up port, line discipline, and tty processes sleeping - * on writes. - */ - -static void digi_wakeup_write_lock(struct work_struct *work) -{ - struct digi_port *priv = - container_of(work, struct digi_port, dp_wakeup_work); - struct usb_serial_port *port = priv->dp_port; - unsigned long flags; - - spin_lock_irqsave(&priv->dp_port_lock, flags); - tty_port_tty_wakeup(&port->port); - spin_unlock_irqrestore(&priv->dp_port_lock, flags); -} - /* * Digi Write OOB Command * @@ -986,6 +963,7 @@ unsigned long flags; int ret = 0; int status = urb->status; + bool wakeup; /* port and serial sanity check */ if (port == NULL || (priv = usb_get_serial_port_data(port)) == NULL) { @@ -1012,6 +990,7 @@ } /* try to send any buffered data on this port */ + wakeup = true; spin_lock_irqsave(&priv->dp_port_lock, flags); priv->dp_write_urb_in_use = 0; if (priv->dp_out_buf_len > 0) { @@ -1027,19 +1006,18 @@ if (ret == 0) { priv->dp_write_urb_in_use = 1; priv->dp_out_buf_len = 0; + wakeup = false; } } - /* wake up processes sleeping on writes immediately */ - tty_port_tty_wakeup(&port->port); - /* also queue up a wakeup at scheduler time, in case we */ - /* lost the race in write_chan(). */ - schedule_work(&priv->dp_wakeup_work); - spin_unlock_irqrestore(&priv->dp_port_lock, flags); + if (ret && ret != -EPERM) dev_err_console(port, "%s: usb_submit_urb failed, ret=%d, port=%d\n", __func__, ret, priv->dp_port_num); + + if (wakeup) + tty_port_tty_wakeup(&port->port); } static int digi_write_room(struct tty_struct *tty) @@ -1239,7 +1217,6 @@ init_waitqueue_head(&priv->dp_transmit_idle_wait); init_waitqueue_head(&priv->dp_flush_wait); init_waitqueue_head(&priv->dp_close_wait); - INIT_WORK(&priv->dp_wakeup_work, digi_wakeup_write_lock); priv->dp_port = port; init_waitqueue_head(&port->write_wait); @@ -1508,13 +1485,14 @@ rts = C_CRTSCTS(tty); if (tty && opcode == DIGI_CMD_READ_INPUT_SIGNALS) { + bool wakeup = false; + spin_lock_irqsave(&priv->dp_port_lock, flags); /* convert from digi flags to termiox flags */ if (val & DIGI_READ_INPUT_SIGNALS_CTS) { priv->dp_modem_signals |= TIOCM_CTS; - /* port must be open to use tty struct */ if (rts) - tty_port_tty_wakeup(&port->port); + wakeup = true; } else { priv->dp_modem_signals &= ~TIOCM_CTS; /* port must be open to use tty struct */ @@ -1533,6 +1511,9 @@ priv->dp_modem_signals &= ~TIOCM_CD; spin_unlock_irqrestore(&priv->dp_port_lock, flags); + + if (wakeup) + tty_port_tty_wakeup(&port->port); } else if (opcode == DIGI_CMD_TRANSMIT_IDLE) { spin_lock_irqsave(&priv->dp_port_lock, flags); priv->dp_transmit_idle = 1; --- linux-azure-5.8-5.8.0.orig/drivers/usb/serial/ftdi_sio.c +++ linux-azure-5.8-5.8.0/drivers/usb/serial/ftdi_sio.c @@ -713,6 +713,7 @@ { USB_DEVICE(XSENS_VID, XSENS_AWINDA_STATION_PID) }, { USB_DEVICE(XSENS_VID, XSENS_CONVERTER_PID) }, { USB_DEVICE(XSENS_VID, XSENS_MTDEVBOARD_PID) }, + { USB_DEVICE(XSENS_VID, XSENS_MTIUSBCONVERTER_PID) }, { USB_DEVICE(XSENS_VID, XSENS_MTW_PID) }, { USB_DEVICE(FTDI_VID, FTDI_OMNI1509) }, { USB_DEVICE(MOBILITY_VID, MOBILITY_USB_SERIAL_PID) }, @@ -1036,6 +1037,11 @@ /* U-Blox devices */ { USB_DEVICE(UBLOX_VID, UBLOX_C099F9P_ZED_PID) }, { USB_DEVICE(UBLOX_VID, UBLOX_C099F9P_ODIN_PID) }, + /* FreeCalypso USB adapters */ + { USB_DEVICE(FTDI_VID, FTDI_FALCONIA_JTAG_BUF_PID), + .driver_info = (kernel_ulong_t)&ftdi_jtag_quirk }, + { USB_DEVICE(FTDI_VID, FTDI_FALCONIA_JTAG_UNBUF_PID), + .driver_info = (kernel_ulong_t)&ftdi_jtag_quirk }, { } /* Terminating entry */ }; @@ -1380,8 +1386,9 @@ index_value = get_ftdi_divisor(tty, port); value = (u16)index_value; index = (u16)(index_value >> 16); - if ((priv->chip_type == FT2232C) || (priv->chip_type == FT2232H) || - (priv->chip_type == FT4232H) || (priv->chip_type == FT232H)) { + if (priv->chip_type == FT2232C || priv->chip_type == FT2232H || + priv->chip_type == FT4232H || priv->chip_type == FT232H || + priv->chip_type == FTX) { /* Probably the BM type needs the MSB of the encoded fractional * divider also moved like for the chips above. Any infos? */ index = (u16)((index << 8) | priv->interface); @@ -2480,12 +2487,11 @@ #define FTDI_RS_ERR_MASK (FTDI_RS_BI | FTDI_RS_PE | FTDI_RS_FE | FTDI_RS_OE) static int ftdi_process_packet(struct usb_serial_port *port, - struct ftdi_private *priv, char *packet, int len) + struct ftdi_private *priv, unsigned char *buf, int len) { + unsigned char status; int i; - char status; char flag; - char *ch; if (len < 2) { dev_dbg(&port->dev, "malformed packet\n"); @@ -2495,7 +2501,7 @@ /* Compare new line status to the old one, signal if different/ N.B. packet may be processed more than once, but differences are only processed once. */ - status = packet[0] & FTDI_STATUS_B0_MASK; + status = buf[0] & FTDI_STATUS_B0_MASK; if (status != priv->prev_status) { char diff_status = status ^ priv->prev_status; @@ -2521,13 +2527,12 @@ } /* save if the transmitter is empty or not */ - if (packet[1] & FTDI_RS_TEMT) + if (buf[1] & FTDI_RS_TEMT) priv->transmit_empty = 1; else priv->transmit_empty = 0; - len -= 2; - if (!len) + if (len == 2) return 0; /* status only */ /* @@ -2535,40 +2540,41 @@ * data payload to avoid over-reporting. */ flag = TTY_NORMAL; - if (packet[1] & FTDI_RS_ERR_MASK) { + if (buf[1] & FTDI_RS_ERR_MASK) { /* Break takes precedence over parity, which takes precedence * over framing errors */ - if (packet[1] & FTDI_RS_BI) { + if (buf[1] & FTDI_RS_BI) { flag = TTY_BREAK; port->icount.brk++; usb_serial_handle_break(port); - } else if (packet[1] & FTDI_RS_PE) { + } else if (buf[1] & FTDI_RS_PE) { flag = TTY_PARITY; port->icount.parity++; - } else if (packet[1] & FTDI_RS_FE) { + } else if (buf[1] & FTDI_RS_FE) { flag = TTY_FRAME; port->icount.frame++; } /* Overrun is special, not associated with a char */ - if (packet[1] & FTDI_RS_OE) { + if (buf[1] & FTDI_RS_OE) { port->icount.overrun++; tty_insert_flip_char(&port->port, 0, TTY_OVERRUN); } } - port->icount.rx += len; - ch = packet + 2; + port->icount.rx += len - 2; if (port->port.console && port->sysrq) { - for (i = 0; i < len; i++, ch++) { - if (!usb_serial_handle_sysrq_char(port, *ch)) - tty_insert_flip_char(&port->port, *ch, flag); + for (i = 2; i < len; i++) { + if (usb_serial_handle_sysrq_char(port, buf[i])) + continue; + tty_insert_flip_char(&port->port, buf[i], flag); } } else { - tty_insert_flip_string_fixed_flag(&port->port, ch, flag, len); + tty_insert_flip_string_fixed_flag(&port->port, buf + 2, flag, + len - 2); } - return len; + return len - 2; } static void ftdi_process_read_urb(struct urb *urb) --- linux-azure-5.8-5.8.0.orig/drivers/usb/serial/ftdi_sio_ids.h +++ linux-azure-5.8-5.8.0/drivers/usb/serial/ftdi_sio_ids.h @@ -39,6 +39,13 @@ #define FTDI_LUMEL_PD12_PID 0x6002 +/* + * Custom USB adapters made by Falconia Partners LLC + * for FreeCalypso project, ID codes allocated to Falconia by FTDI. + */ +#define FTDI_FALCONIA_JTAG_BUF_PID 0x7150 +#define FTDI_FALCONIA_JTAG_UNBUF_PID 0x7151 + /* Sienna Serial Interface by Secyourit GmbH */ #define FTDI_SIENNA_PID 0x8348 @@ -160,6 +167,7 @@ #define XSENS_AWINDA_DONGLE_PID 0x0102 #define XSENS_MTW_PID 0x0200 /* Xsens MTw */ #define XSENS_MTDEVBOARD_PID 0x0300 /* Motion Tracker Development Board */ +#define XSENS_MTIUSBCONVERTER_PID 0x0301 /* MTi USB converter */ #define XSENS_CONVERTER_PID 0xD00D /* Xsens USB-serial converter */ /* Xsens devices using FTDI VID */ --- linux-azure-5.8-5.8.0.orig/drivers/usb/serial/iuu_phoenix.c +++ linux-azure-5.8-5.8.0/drivers/usb/serial/iuu_phoenix.c @@ -353,10 +353,11 @@ struct usb_serial_port *port = urb->context; int result; char *buf_ptr = port->write_urb->transfer_buffer; - *buf_ptr++ = IUU_SET_LED; + if (xmas) { - get_random_bytes(buf_ptr, 6); - *(buf_ptr+7) = 1; + buf_ptr[0] = IUU_SET_LED; + get_random_bytes(buf_ptr + 1, 6); + buf_ptr[7] = 1; } else { iuu_rgbf_fill_buffer(buf_ptr, 255, 255, 0, 0, 0, 0, 255); } @@ -374,13 +375,14 @@ struct usb_serial_port *port = urb->context; int result; char *buf_ptr = port->write_urb->transfer_buffer; + if (xmas) { iuu_rxcmd(urb); return; - } else { - *buf_ptr++ = IUU_SET_LED; - iuu_rgbf_fill_buffer(buf_ptr, 0, 0, 255, 255, 0, 0, 255); } + + iuu_rgbf_fill_buffer(buf_ptr, 0, 0, 255, 255, 0, 0, 255); + usb_fill_bulk_urb(port->write_urb, port->serial->dev, usb_sndbulkpipe(port->serial->dev, port->bulk_out_endpointAddress), @@ -534,23 +536,29 @@ struct device *dev = &port->dev; int i; int status; - u8 rxcmd = IUU_UART_RX; + u8 *rxcmd; struct iuu_private *priv = usb_get_serial_port_data(port); if (iuu_led(port, 0xF000, 0, 0, 0xFF) < 0) return -EIO; + rxcmd = kmalloc(1, GFP_KERNEL); + if (!rxcmd) + return -ENOMEM; + + rxcmd[0] = IUU_UART_RX; + for (i = 0; i < 2; i++) { - status = bulk_immediate(port, &rxcmd, 1); + status = bulk_immediate(port, rxcmd, 1); if (status != IUU_OPERATION_OK) { dev_dbg(dev, "%s - uart_flush_write error\n", __func__); - return status; + goto out_free; } status = read_immediate(port, &priv->len, 1); if (status != IUU_OPERATION_OK) { dev_dbg(dev, "%s - uart_flush_read error\n", __func__); - return status; + goto out_free; } if (priv->len > 0) { @@ -558,12 +566,16 @@ status = read_immediate(port, priv->buf, priv->len); if (status != IUU_OPERATION_OK) { dev_dbg(dev, "%s - uart_flush_read error\n", __func__); - return status; + goto out_free; } } } dev_dbg(dev, "%s - uart_flush_read OK!\n", __func__); iuu_led(port, 0, 0xF000, 0, 0xFF); + +out_free: + kfree(rxcmd); + return status; } --- linux-azure-5.8-5.8.0.orig/drivers/usb/serial/keyspan_pda.c +++ linux-azure-5.8-5.8.0/drivers/usb/serial/keyspan_pda.c @@ -40,11 +40,12 @@ #define DRIVER_AUTHOR "Brian Warner " #define DRIVER_DESC "USB Keyspan PDA Converter driver" +#define KEYSPAN_TX_THRESHOLD 16 + struct keyspan_pda_private { int tx_room; int tx_throttled; - struct work_struct wakeup_work; - struct work_struct unthrottle_work; + struct work_struct unthrottle_work; struct usb_serial *serial; struct usb_serial_port *port; }; @@ -97,15 +98,6 @@ }; #endif -static void keyspan_pda_wakeup_write(struct work_struct *work) -{ - struct keyspan_pda_private *priv = - container_of(work, struct keyspan_pda_private, wakeup_work); - struct usb_serial_port *port = priv->port; - - tty_port_tty_wakeup(&port->port); -} - static void keyspan_pda_request_unthrottle(struct work_struct *work) { struct keyspan_pda_private *priv = @@ -120,7 +112,7 @@ 7, /* request_unthrottle */ USB_TYPE_VENDOR | USB_RECIP_INTERFACE | USB_DIR_OUT, - 16, /* value: threshold */ + KEYSPAN_TX_THRESHOLD, 0, /* index */ NULL, 0, @@ -139,6 +131,8 @@ int retval; int status = urb->status; struct keyspan_pda_private *priv; + unsigned long flags; + priv = usb_get_serial_port_data(port); switch (status) { @@ -172,18 +166,21 @@ break; case 1: /* status interrupt */ - if (len < 3) { + if (len < 2) { dev_warn(&port->dev, "short interrupt message received\n"); break; } - dev_dbg(&port->dev, "rx int, d1=%d, d2=%d\n", data[1], data[2]); + dev_dbg(&port->dev, "rx int, d1=%d\n", data[1]); switch (data[1]) { case 1: /* modemline change */ break; case 2: /* tx unthrottle interrupt */ + spin_lock_irqsave(&port->lock, flags); priv->tx_throttled = 0; + priv->tx_room = max(priv->tx_room, KEYSPAN_TX_THRESHOLD); + spin_unlock_irqrestore(&port->lock, flags); /* queue up a wakeup at scheduler time */ - schedule_work(&priv->wakeup_work); + usb_serial_port_softint(port); break; default: break; @@ -443,6 +440,7 @@ int request_unthrottle = 0; int rc = 0; struct keyspan_pda_private *priv; + unsigned long flags; priv = usb_get_serial_port_data(port); /* guess how much room is left in the device's ring buffer, and if we @@ -462,13 +460,13 @@ the TX urb is in-flight (wait until it completes) the device is full (wait until it says there is room) */ - spin_lock_bh(&port->lock); + spin_lock_irqsave(&port->lock, flags); if (!test_bit(0, &port->write_urbs_free) || priv->tx_throttled) { - spin_unlock_bh(&port->lock); + spin_unlock_irqrestore(&port->lock, flags); return 0; } clear_bit(0, &port->write_urbs_free); - spin_unlock_bh(&port->lock); + spin_unlock_irqrestore(&port->lock, flags); /* At this point the URB is in our control, nobody else can submit it again (the only sudden transition was the one from EINPROGRESS to @@ -514,7 +512,8 @@ goto exit; } } - if (count > priv->tx_room) { + + if (count >= priv->tx_room) { /* we're about to completely fill the Tx buffer, so we'll be throttled afterwards. */ count = priv->tx_room; @@ -547,7 +546,7 @@ rc = count; exit: - if (rc < 0) + if (rc <= 0) set_bit(0, &port->write_urbs_free); return rc; } @@ -556,27 +555,28 @@ static void keyspan_pda_write_bulk_callback(struct urb *urb) { struct usb_serial_port *port = urb->context; - struct keyspan_pda_private *priv; set_bit(0, &port->write_urbs_free); - priv = usb_get_serial_port_data(port); /* queue up a wakeup at scheduler time */ - schedule_work(&priv->wakeup_work); + usb_serial_port_softint(port); } static int keyspan_pda_write_room(struct tty_struct *tty) { struct usb_serial_port *port = tty->driver_data; - struct keyspan_pda_private *priv; - priv = usb_get_serial_port_data(port); - /* used by n_tty.c for processing of tabs and such. Giving it our - conservative guess is probably good enough, but needs testing by - running a console through the device. */ - return priv->tx_room; -} + struct keyspan_pda_private *priv = usb_get_serial_port_data(port); + unsigned long flags; + int room = 0; + spin_lock_irqsave(&port->lock, flags); + if (test_bit(0, &port->write_urbs_free) && !priv->tx_throttled) + room = priv->tx_room; + spin_unlock_irqrestore(&port->lock, flags); + + return room; +} static int keyspan_pda_chars_in_buffer(struct tty_struct *tty) { @@ -656,8 +656,12 @@ } static void keyspan_pda_close(struct usb_serial_port *port) { + struct keyspan_pda_private *priv = usb_get_serial_port_data(port); + usb_kill_urb(port->write_urb); usb_kill_urb(port->interrupt_in_urb); + + cancel_work_sync(&priv->unthrottle_work); } @@ -715,7 +719,6 @@ if (!priv) return -ENOMEM; - INIT_WORK(&priv->wakeup_work, keyspan_pda_wakeup_write); INIT_WORK(&priv->unthrottle_work, keyspan_pda_request_unthrottle); priv->serial = port->serial; priv->port = port; --- linux-azure-5.8-5.8.0.orig/drivers/usb/serial/kl5kusb105.c +++ linux-azure-5.8-5.8.0/drivers/usb/serial/kl5kusb105.c @@ -276,12 +276,12 @@ priv->cfg.unknown2 = cfg->unknown2; spin_unlock_irqrestore(&priv->lock, flags); + kfree(cfg); + /* READ_ON and urb submission */ rc = usb_serial_generic_open(tty, port); - if (rc) { - retval = rc; - goto err_free_cfg; - } + if (rc) + return rc; rc = usb_control_msg(port->serial->dev, usb_sndctrlpipe(port->serial->dev, 0), @@ -324,8 +324,6 @@ KLSI_TIMEOUT); err_generic_close: usb_serial_generic_close(port); -err_free_cfg: - kfree(cfg); return retval; } --- linux-azure-5.8-5.8.0.orig/drivers/usb/serial/mos7720.c +++ linux-azure-5.8-5.8.0/drivers/usb/serial/mos7720.c @@ -638,6 +638,8 @@ spin_unlock(&release_lock); return; } + mos_parport->shadowDCR = s->u.pc.ctr; + mos_parport->shadowECR = s->u.pc.ecr; write_parport_reg_nonblock(mos_parport, MOS7720_DCR, mos_parport->shadowDCR); write_parport_reg_nonblock(mos_parport, MOS7720_ECR, @@ -1248,8 +1250,10 @@ if (urb->transfer_buffer == NULL) { urb->transfer_buffer = kmalloc(URB_TRANSFER_BUFFER_SIZE, GFP_ATOMIC); - if (!urb->transfer_buffer) + if (!urb->transfer_buffer) { + bytes_sent = -ENOMEM; goto exit; + } } transfer_size = min(count, URB_TRANSFER_BUFFER_SIZE); --- linux-azure-5.8-5.8.0.orig/drivers/usb/serial/mos7840.c +++ linux-azure-5.8-5.8.0/drivers/usb/serial/mos7840.c @@ -883,8 +883,10 @@ if (urb->transfer_buffer == NULL) { urb->transfer_buffer = kmalloc(URB_TRANSFER_BUFFER_SIZE, GFP_ATOMIC); - if (!urb->transfer_buffer) + if (!urb->transfer_buffer) { + bytes_sent = -ENOMEM; goto exit; + } } transfer_size = min(count, URB_TRANSFER_BUFFER_SIZE); --- linux-azure-5.8-5.8.0.orig/drivers/usb/serial/option.c +++ linux-azure-5.8-5.8.0/drivers/usb/serial/option.c @@ -250,6 +250,7 @@ #define QUECTEL_PRODUCT_EP06 0x0306 #define QUECTEL_PRODUCT_EM12 0x0512 #define QUECTEL_PRODUCT_RM500Q 0x0800 +#define QUECTEL_PRODUCT_EC200T 0x6026 #define CMOTECH_VENDOR_ID 0x16d8 #define CMOTECH_PRODUCT_6001 0x6001 @@ -418,11 +419,14 @@ #define CINTERION_PRODUCT_PH8 0x0053 #define CINTERION_PRODUCT_AHXX 0x0055 #define CINTERION_PRODUCT_PLXX 0x0060 +#define CINTERION_PRODUCT_EXS82 0x006c #define CINTERION_PRODUCT_PH8_2RMNET 0x0082 #define CINTERION_PRODUCT_PH8_AUDIO 0x0083 #define CINTERION_PRODUCT_AHXX_2RMNET 0x0084 #define CINTERION_PRODUCT_AHXX_AUDIO 0x0085 #define CINTERION_PRODUCT_CLS8 0x00b0 +#define CINTERION_PRODUCT_MV31_MBIM 0x00b3 +#define CINTERION_PRODUCT_MV31_RMNET 0x00b7 /* Olivetti products */ #define OLIVETTI_VENDOR_ID 0x0b3c @@ -528,6 +532,7 @@ /* Cellient products */ #define CELLIENT_VENDOR_ID 0x2692 #define CELLIENT_PRODUCT_MEN200 0x9005 +#define CELLIENT_PRODUCT_MPL200 0x9025 /* Hyundai Petatel Inc. products */ #define PETATEL_VENDOR_ID 0x1ff4 @@ -560,6 +565,9 @@ /* Device flags */ +/* Highest interface number which can be used with NCTRL() and RSVD() */ +#define FLAG_IFNUM_MAX 7 + /* Interface does not support modem-control requests */ #define NCTRL(ifnum) ((BIT(ifnum) & 0xff) << 8) @@ -1094,12 +1102,15 @@ { USB_DEVICE(QUALCOMM_VENDOR_ID, UBLOX_PRODUCT_R410M), .driver_info = RSVD(1) | RSVD(3) }, /* Quectel products using Quectel vendor ID */ - { USB_DEVICE(QUECTEL_VENDOR_ID, QUECTEL_PRODUCT_EC21), - .driver_info = RSVD(4) }, - { USB_DEVICE(QUECTEL_VENDOR_ID, QUECTEL_PRODUCT_EC25), - .driver_info = RSVD(4) }, - { USB_DEVICE(QUECTEL_VENDOR_ID, QUECTEL_PRODUCT_EG95), - .driver_info = RSVD(4) }, + { USB_DEVICE_AND_INTERFACE_INFO(QUECTEL_VENDOR_ID, QUECTEL_PRODUCT_EC21, 0xff, 0xff, 0xff), + .driver_info = NUMEP2 }, + { USB_DEVICE_AND_INTERFACE_INFO(QUECTEL_VENDOR_ID, QUECTEL_PRODUCT_EC21, 0xff, 0, 0) }, + { USB_DEVICE_AND_INTERFACE_INFO(QUECTEL_VENDOR_ID, QUECTEL_PRODUCT_EC25, 0xff, 0xff, 0xff), + .driver_info = NUMEP2 }, + { USB_DEVICE_AND_INTERFACE_INFO(QUECTEL_VENDOR_ID, QUECTEL_PRODUCT_EC25, 0xff, 0, 0) }, + { USB_DEVICE_AND_INTERFACE_INFO(QUECTEL_VENDOR_ID, QUECTEL_PRODUCT_EG95, 0xff, 0xff, 0xff), + .driver_info = NUMEP2 }, + { USB_DEVICE_AND_INTERFACE_INFO(QUECTEL_VENDOR_ID, QUECTEL_PRODUCT_EG95, 0xff, 0, 0) }, { USB_DEVICE(QUECTEL_VENDOR_ID, QUECTEL_PRODUCT_BG96), .driver_info = RSVD(4) }, { USB_DEVICE_AND_INTERFACE_INFO(QUECTEL_VENDOR_ID, QUECTEL_PRODUCT_EP06, 0xff, 0xff, 0xff), @@ -1108,10 +1119,13 @@ { USB_DEVICE_AND_INTERFACE_INFO(QUECTEL_VENDOR_ID, QUECTEL_PRODUCT_EM12, 0xff, 0xff, 0xff), .driver_info = RSVD(1) | RSVD(2) | RSVD(3) | RSVD(4) | NUMEP2 }, { USB_DEVICE_AND_INTERFACE_INFO(QUECTEL_VENDOR_ID, QUECTEL_PRODUCT_EM12, 0xff, 0, 0) }, + { USB_DEVICE_AND_INTERFACE_INFO(QUECTEL_VENDOR_ID, 0x0620, 0xff, 0xff, 0x30) }, /* EM160R-GL */ + { USB_DEVICE_AND_INTERFACE_INFO(QUECTEL_VENDOR_ID, 0x0620, 0xff, 0, 0) }, { USB_DEVICE_AND_INTERFACE_INFO(QUECTEL_VENDOR_ID, QUECTEL_PRODUCT_RM500Q, 0xff, 0xff, 0x30) }, { USB_DEVICE_AND_INTERFACE_INFO(QUECTEL_VENDOR_ID, QUECTEL_PRODUCT_RM500Q, 0xff, 0, 0) }, { USB_DEVICE_AND_INTERFACE_INFO(QUECTEL_VENDOR_ID, QUECTEL_PRODUCT_RM500Q, 0xff, 0xff, 0x10), .driver_info = ZLP }, + { USB_DEVICE_AND_INTERFACE_INFO(QUECTEL_VENDOR_ID, QUECTEL_PRODUCT_EC200T, 0xff, 0, 0) }, { USB_DEVICE(CMOTECH_VENDOR_ID, CMOTECH_PRODUCT_6001) }, { USB_DEVICE(CMOTECH_VENDOR_ID, CMOTECH_PRODUCT_CMU_300) }, @@ -1182,6 +1196,10 @@ .driver_info = NCTRL(2) | RSVD(3) }, { USB_DEVICE_INTERFACE_CLASS(TELIT_VENDOR_ID, 0x1053, 0xff), /* Telit FN980 (ECM) */ .driver_info = NCTRL(0) | RSVD(1) }, + { USB_DEVICE_INTERFACE_CLASS(TELIT_VENDOR_ID, 0x1054, 0xff), /* Telit FT980-KS */ + .driver_info = NCTRL(2) | RSVD(3) }, + { USB_DEVICE_INTERFACE_CLASS(TELIT_VENDOR_ID, 0x1055, 0xff), /* Telit FN980 (PCIe) */ + .driver_info = NCTRL(0) | RSVD(1) }, { USB_DEVICE(TELIT_VENDOR_ID, TELIT_PRODUCT_ME910), .driver_info = NCTRL(0) | RSVD(1) | RSVD(3) }, { USB_DEVICE(TELIT_VENDOR_ID, TELIT_PRODUCT_ME910_DUAL_MODEM), @@ -1194,6 +1212,8 @@ .driver_info = NCTRL(0) }, { USB_DEVICE(TELIT_VENDOR_ID, TELIT_PRODUCT_LE910), .driver_info = NCTRL(0) | RSVD(1) | RSVD(2) }, + { USB_DEVICE_INTERFACE_CLASS(TELIT_VENDOR_ID, 0x1203, 0xff), /* Telit LE910Cx (RNDIS) */ + .driver_info = NCTRL(2) | RSVD(3) }, { USB_DEVICE(TELIT_VENDOR_ID, TELIT_PRODUCT_LE910_USBCFG4), .driver_info = NCTRL(0) | RSVD(1) | RSVD(2) | RSVD(3) }, { USB_DEVICE(TELIT_VENDOR_ID, TELIT_PRODUCT_LE920), @@ -1208,6 +1228,10 @@ { USB_DEVICE_INTERFACE_CLASS(TELIT_VENDOR_ID, TELIT_PRODUCT_LE920A4_1213, 0xff) }, { USB_DEVICE(TELIT_VENDOR_ID, TELIT_PRODUCT_LE920A4_1214), .driver_info = NCTRL(0) | RSVD(1) | RSVD(2) | RSVD(3) }, + { USB_DEVICE_INTERFACE_CLASS(TELIT_VENDOR_ID, 0x1230, 0xff), /* Telit LE910Cx (rmnet) */ + .driver_info = NCTRL(0) | RSVD(1) | RSVD(2) }, + { USB_DEVICE_INTERFACE_CLASS(TELIT_VENDOR_ID, 0x1231, 0xff), /* Telit LE910Cx (RNDIS) */ + .driver_info = NCTRL(2) | RSVD(3) }, { USB_DEVICE(TELIT_VENDOR_ID, 0x1260), .driver_info = NCTRL(0) | RSVD(1) | RSVD(2) }, { USB_DEVICE(TELIT_VENDOR_ID, 0x1261), @@ -1545,7 +1569,8 @@ { USB_DEVICE_AND_INTERFACE_INFO(ZTE_VENDOR_ID, 0x1272, 0xff, 0xff, 0xff) }, { USB_DEVICE_AND_INTERFACE_INFO(ZTE_VENDOR_ID, 0x1273, 0xff, 0xff, 0xff) }, { USB_DEVICE_AND_INTERFACE_INFO(ZTE_VENDOR_ID, 0x1274, 0xff, 0xff, 0xff) }, - { USB_DEVICE_AND_INTERFACE_INFO(ZTE_VENDOR_ID, 0x1275, 0xff, 0xff, 0xff) }, + { USB_DEVICE(ZTE_VENDOR_ID, 0x1275), /* ZTE P685M */ + .driver_info = RSVD(3) | RSVD(4) }, { USB_DEVICE_AND_INTERFACE_INFO(ZTE_VENDOR_ID, 0x1276, 0xff, 0xff, 0xff) }, { USB_DEVICE_AND_INTERFACE_INFO(ZTE_VENDOR_ID, 0x1277, 0xff, 0xff, 0xff) }, { USB_DEVICE_AND_INTERFACE_INFO(ZTE_VENDOR_ID, 0x1278, 0xff, 0xff, 0xff) }, @@ -1819,6 +1844,8 @@ { USB_DEVICE_INTERFACE_CLASS(0x1e0e, 0x9003, 0xff) }, /* Simcom SIM7500/SIM7600 MBIM mode */ { USB_DEVICE_INTERFACE_CLASS(0x1e0e, 0x9011, 0xff), /* Simcom SIM7500/SIM7600 RNDIS mode */ .driver_info = RSVD(7) }, + { USB_DEVICE_INTERFACE_CLASS(0x1e0e, 0x9205, 0xff) }, /* Simcom SIM7070/SIM7080/SIM7090 AT+ECM mode */ + { USB_DEVICE_INTERFACE_CLASS(0x1e0e, 0x9206, 0xff) }, /* Simcom SIM7070/SIM7080/SIM7090 AT-only mode */ { USB_DEVICE(ALCATEL_VENDOR_ID, ALCATEL_PRODUCT_X060S_X200), .driver_info = NCTRL(0) | NCTRL(1) | RSVD(4) }, { USB_DEVICE(ALCATEL_VENDOR_ID, ALCATEL_PRODUCT_X220_X500D), @@ -1883,12 +1910,17 @@ { USB_DEVICE_INTERFACE_CLASS(CINTERION_VENDOR_ID, CINTERION_PRODUCT_AHXX_AUDIO, 0xff) }, { USB_DEVICE_INTERFACE_CLASS(CINTERION_VENDOR_ID, CINTERION_PRODUCT_CLS8, 0xff), .driver_info = RSVD(0) | RSVD(4) }, + { USB_DEVICE_INTERFACE_CLASS(CINTERION_VENDOR_ID, CINTERION_PRODUCT_EXS82, 0xff) }, { USB_DEVICE(CINTERION_VENDOR_ID, CINTERION_PRODUCT_HC28_MDM) }, { USB_DEVICE(CINTERION_VENDOR_ID, CINTERION_PRODUCT_HC28_MDMNET) }, { USB_DEVICE(SIEMENS_VENDOR_ID, CINTERION_PRODUCT_HC25_MDM) }, { USB_DEVICE(SIEMENS_VENDOR_ID, CINTERION_PRODUCT_HC25_MDMNET) }, { USB_DEVICE(SIEMENS_VENDOR_ID, CINTERION_PRODUCT_HC28_MDM) }, /* HC28 enumerates with Siemens or Cinterion VID depending on FW revision */ { USB_DEVICE(SIEMENS_VENDOR_ID, CINTERION_PRODUCT_HC28_MDMNET) }, + { USB_DEVICE_INTERFACE_CLASS(CINTERION_VENDOR_ID, CINTERION_PRODUCT_MV31_MBIM, 0xff), + .driver_info = RSVD(3)}, + { USB_DEVICE_INTERFACE_CLASS(CINTERION_VENDOR_ID, CINTERION_PRODUCT_MV31_RMNET, 0xff), + .driver_info = RSVD(0)}, { USB_DEVICE(OLIVETTI_VENDOR_ID, OLIVETTI_PRODUCT_OLICARD100), .driver_info = RSVD(4) }, { USB_DEVICE(OLIVETTI_VENDOR_ID, OLIVETTI_PRODUCT_OLICARD120), @@ -1976,6 +2008,8 @@ { USB_DEVICE_AND_INTERFACE_INFO(MEDIATEK_VENDOR_ID, MEDIATEK_PRODUCT_DC_4COM2, 0xff, 0x02, 0x01) }, { USB_DEVICE_AND_INTERFACE_INFO(MEDIATEK_VENDOR_ID, MEDIATEK_PRODUCT_DC_4COM2, 0xff, 0x00, 0x00) }, { USB_DEVICE(CELLIENT_VENDOR_ID, CELLIENT_PRODUCT_MEN200) }, + { USB_DEVICE(CELLIENT_VENDOR_ID, CELLIENT_PRODUCT_MPL200), + .driver_info = RSVD(1) | RSVD(4) }, { USB_DEVICE(PETATEL_VENDOR_ID, PETATEL_PRODUCT_NP10T_600A) }, { USB_DEVICE(PETATEL_VENDOR_ID, PETATEL_PRODUCT_NP10T_600E) }, { USB_DEVICE_AND_INTERFACE_INFO(TPLINK_VENDOR_ID, TPLINK_PRODUCT_LTE, 0xff, 0x00, 0x00) }, /* TP-Link LTE Module */ @@ -2025,12 +2059,14 @@ .driver_info = RSVD(0) | RSVD(1) | RSVD(6) }, { USB_DEVICE(0x0489, 0xe0b5), /* Foxconn T77W968 ESIM */ .driver_info = RSVD(0) | RSVD(1) | RSVD(6) }, - { USB_DEVICE(0x1508, 0x1001), /* Fibocom NL668 */ + { USB_DEVICE(0x1508, 0x1001), /* Fibocom NL668 (IOT version) */ .driver_info = RSVD(4) | RSVD(5) | RSVD(6) }, { USB_DEVICE(0x2cb7, 0x0104), /* Fibocom NL678 series */ .driver_info = RSVD(4) | RSVD(5) }, { USB_DEVICE_INTERFACE_CLASS(0x2cb7, 0x0105, 0xff), /* Fibocom NL678 series */ .driver_info = RSVD(6) }, + { USB_DEVICE_INTERFACE_CLASS(0x2cb7, 0x01a0, 0xff) }, /* Fibocom NL668-AM/NL652-EU (laptop MBIM) */ + { USB_DEVICE_INTERFACE_CLASS(0x2df3, 0x9d03, 0xff) }, /* LongSung M5710 */ { USB_DEVICE_INTERFACE_CLASS(0x305a, 0x1404, 0xff) }, /* GosunCn GM500 RNDIS */ { USB_DEVICE_INTERFACE_CLASS(0x305a, 0x1405, 0xff) }, /* GosunCn GM500 MBIM */ { USB_DEVICE_INTERFACE_CLASS(0x305a, 0x1406, 0xff) }, /* GosunCn GM500 ECM/NCM */ @@ -2078,6 +2114,14 @@ module_usb_serial_driver(serial_drivers, option_ids); +static bool iface_is_reserved(unsigned long device_flags, u8 ifnum) +{ + if (ifnum > FLAG_IFNUM_MAX) + return false; + + return device_flags & RSVD(ifnum); +} + static int option_probe(struct usb_serial *serial, const struct usb_device_id *id) { @@ -2094,7 +2138,7 @@ * the same class/subclass/protocol as the serial interfaces. Look at * the Windows driver .INF files for reserved interface numbers. */ - if (device_flags & RSVD(iface_desc->bInterfaceNumber)) + if (iface_is_reserved(device_flags, iface_desc->bInterfaceNumber)) return -ENODEV; /* @@ -2110,6 +2154,14 @@ return 0; } +static bool iface_no_modem_control(unsigned long device_flags, u8 ifnum) +{ + if (ifnum > FLAG_IFNUM_MAX) + return false; + + return device_flags & NCTRL(ifnum); +} + static int option_attach(struct usb_serial *serial) { struct usb_interface_descriptor *iface_desc; @@ -2125,7 +2177,7 @@ iface_desc = &serial->interface->cur_altsetting->desc; - if (!(device_flags & NCTRL(iface_desc->bInterfaceNumber))) + if (!iface_no_modem_control(device_flags, iface_desc->bInterfaceNumber)) data->use_send_setup = 1; if (device_flags & ZLP) --- linux-azure-5.8-5.8.0.orig/drivers/usb/serial/pl2303.c +++ linux-azure-5.8-5.8.0/drivers/usb/serial/pl2303.c @@ -100,6 +100,7 @@ { USB_DEVICE(HP_VENDOR_ID, HP_LD220_PRODUCT_ID) }, { USB_DEVICE(HP_VENDOR_ID, HP_LD220TA_PRODUCT_ID) }, { USB_DEVICE(HP_VENDOR_ID, HP_LD381_PRODUCT_ID) }, + { USB_DEVICE(HP_VENDOR_ID, HP_LD381GC_PRODUCT_ID) }, { USB_DEVICE(HP_VENDOR_ID, HP_LD960_PRODUCT_ID) }, { USB_DEVICE(HP_VENDOR_ID, HP_LD960TA_PRODUCT_ID) }, { USB_DEVICE(HP_VENDOR_ID, HP_LCM220_PRODUCT_ID) }, @@ -182,6 +183,7 @@ speed_t max_baud_rate; unsigned long quirks; unsigned int no_autoxonxoff:1; + unsigned int no_divisors:1; }; struct pl2303_serial_private { @@ -208,6 +210,7 @@ }, [TYPE_HXN] = { .max_baud_rate = 12000000, + .no_divisors = true, }, }; @@ -570,8 +573,12 @@ baud = min_t(speed_t, baud, spriv->type->max_baud_rate); /* * Use direct method for supported baud rates, otherwise use divisors. + * Newer chip types do not support divisor encoding. */ - baud_sup = pl2303_get_supported_baud_rate(baud); + if (spriv->type->no_divisors) + baud_sup = baud; + else + baud_sup = pl2303_get_supported_baud_rate(baud); if (baud == baud_sup) baud = pl2303_encode_baud_rate_direct(buf, baud); --- linux-azure-5.8-5.8.0.orig/drivers/usb/serial/pl2303.h +++ linux-azure-5.8-5.8.0/drivers/usb/serial/pl2303.h @@ -127,6 +127,7 @@ /* Hewlett-Packard POS Pole Displays */ #define HP_VENDOR_ID 0x03f0 +#define HP_LD381GC_PRODUCT_ID 0x0183 #define HP_LM920_PRODUCT_ID 0x026b #define HP_TD620_PRODUCT_ID 0x0956 #define HP_LD960_PRODUCT_ID 0x0b39 --- linux-azure-5.8-5.8.0.orig/drivers/usb/serial/qcserial.c +++ linux-azure-5.8-5.8.0/drivers/usb/serial/qcserial.c @@ -155,6 +155,7 @@ {DEVICE_SWI(0x1199, 0x9056)}, /* Sierra Wireless Modem */ {DEVICE_SWI(0x1199, 0x9060)}, /* Sierra Wireless Modem */ {DEVICE_SWI(0x1199, 0x9061)}, /* Sierra Wireless Modem */ + {DEVICE_SWI(0x1199, 0x9062)}, /* Sierra Wireless EM7305 QDL */ {DEVICE_SWI(0x1199, 0x9063)}, /* Sierra Wireless EM7305 */ {DEVICE_SWI(0x1199, 0x9070)}, /* Sierra Wireless MC74xx */ {DEVICE_SWI(0x1199, 0x9071)}, /* Sierra Wireless MC74xx */ --- linux-azure-5.8-5.8.0.orig/drivers/usb/storage/realtek_cr.c +++ linux-azure-5.8-5.8.0/drivers/usb/storage/realtek_cr.c @@ -41,6 +41,10 @@ module_param(auto_delink_en, int, S_IRUGO | S_IWUSR); MODULE_PARM_DESC(auto_delink_en, "auto delink mode (0=firmware, 1=software [default])"); +static int enable_mmc = 1; +module_param(enable_mmc, int, S_IRUGO | S_IWUSR); +MODULE_PARM_DESC(enable_mmc, "enable mmc support"); + #ifdef CONFIG_REALTEK_AUTOPM static int ss_en = 1; module_param(ss_en, int, S_IRUGO | S_IWUSR); @@ -475,6 +479,27 @@ return 0; } +static int rts51x_lun_is_mmc_xd(struct us_data *us, u8 lun) +{ + struct rts51x_chip *chip = (struct rts51x_chip *)(us->extra); + + if (rts51x_check_status(us, lun)) + return -EIO; + + usb_stor_dbg(us,"cur_lun = 0x%02X\n", chip->status[lun].cur_lun); + usb_stor_dbg(us,"card_type = 0x%02X\n", chip->status[lun].card_type); + usb_stor_dbg(us,"detailed_type1= 0x%02X\n", chip->status[lun].detailed_type.detailed_type1); + switch (chip->status[lun].card_type) { + case 0x4: /* XD */ + return 1; + case 0x2: /* SD/MMC */ + if (chip->status[lun].detailed_type.detailed_type1 & 0x08) + return 1; + default: + return 0; + } +} + static int enable_oscillator(struct us_data *us) { int retval; @@ -850,6 +875,17 @@ chip->proto_handler_backup(srb, us); /* Check whether card is plugged in */ if (srb->cmnd[0] == TEST_UNIT_READY) { + if (!enable_mmc && rts51x_lun_is_mmc_xd(us, srb->device->lun)) { + usb_stor_dbg(us,"%s: lun is mmc/xd\n", __func__); + srb->result = SAM_STAT_CHECK_CONDITION; + memcpy(srb->sense_buffer, + media_not_present, + US_SENSE_SIZE); + CLR_LUN_READY(chip, srb->device->lun); + card_first_show = 1; + return; + } + if (srb->result == SAM_STAT_GOOD) { SET_LUN_READY(chip, srb->device->lun); if (card_first_show) { --- linux-azure-5.8-5.8.0.orig/drivers/usb/storage/uas.c +++ linux-azure-5.8-5.8.0/drivers/usb/storage/uas.c @@ -662,8 +662,7 @@ if (devinfo->resetting) { cmnd->result = DID_ERROR << 16; cmnd->scsi_done(cmnd); - spin_unlock_irqrestore(&devinfo->lock, flags); - return 0; + goto zombie; } /* Find a free uas-tag */ @@ -699,6 +698,16 @@ cmdinfo->state &= ~(SUBMIT_DATA_IN_URB | SUBMIT_DATA_OUT_URB); err = uas_submit_urbs(cmnd, devinfo); + /* + * in case of fatal errors the SCSI layer is peculiar + * a command that has finished is a success for the purpose + * of queueing, no matter how fatal the error + */ + if (err == -ENODEV) { + cmnd->result = DID_ERROR << 16; + cmnd->scsi_done(cmnd); + goto zombie; + } if (err) { /* If we did nothing, give up now */ if (cmdinfo->state & SUBMIT_STATUS_URB) { @@ -709,6 +718,7 @@ } devinfo->cmnd[idx] = cmnd; +zombie: spin_unlock_irqrestore(&devinfo->lock, flags); return 0; } @@ -857,6 +867,9 @@ if (devinfo->flags & US_FL_NO_READ_CAPACITY_16) sdev->no_read_capacity_16 = 1; + /* Some disks cannot handle WRITE_SAME */ + if (devinfo->flags & US_FL_NO_SAME) + sdev->no_write_same = 1; /* * Some disks return the total number of blocks in response * to READ CAPACITY rather than the highest block number. --- linux-azure-5.8-5.8.0.orig/drivers/usb/storage/unusual_devs.h +++ linux-azure-5.8-5.8.0/drivers/usb/storage/unusual_devs.h @@ -1337,6 +1337,13 @@ USB_SC_DEVICE, USB_PR_DEVICE, option_ms_init, 0), +/* Reported by Timo Aaltonen */ +UNUSUAL_DEV( 0x0af0, 0x7011, 0x0000, 0x9999, + "Option", + "Mass Storage", + USB_SC_DEVICE, USB_PR_DEVICE, option_ms_init, + 0 ), + /* * Reported by F. Aben * This device (wrongly) has a vendor-specific device descriptor. @@ -2328,7 +2335,7 @@ "JMicron", "USB to ATA/ATAPI Bridge", USB_SC_DEVICE, USB_PR_DEVICE, NULL, - US_FL_BROKEN_FUA ), + US_FL_BROKEN_FUA | US_FL_IGNORE_UAS ), /* Reported by Andrey Rahmatullin */ UNUSUAL_DEV( 0x4102, 0x1020, 0x0100, 0x0100, --- linux-azure-5.8-5.8.0.orig/drivers/usb/storage/unusual_uas.h +++ linux-azure-5.8-5.8.0/drivers/usb/storage/unusual_uas.h @@ -28,12 +28,22 @@ * and don't forget to CC: the USB development list */ -/* Reported-by: Julian Groß */ +/* Reported-by: Till Dörges */ +UNUSUAL_DEV(0x054c, 0x087d, 0x0000, 0x9999, + "Sony", + "PSZ-HA*", + USB_SC_DEVICE, USB_PR_DEVICE, NULL, + US_FL_NO_REPORT_OPCODES), + +/* + * Initially Reported-by: Julian Groß + * Further reports David C. Partridge + */ UNUSUAL_DEV(0x059f, 0x105f, 0x0000, 0x9999, "LaCie", "2Big Quadra USB3", USB_SC_DEVICE, USB_PR_DEVICE, NULL, - US_FL_NO_REPORT_OPCODES), + US_FL_NO_REPORT_OPCODES | US_FL_NO_SAME), /* * Apricorn USB3 dongle sometimes returns "USBSUSBSUSBS" in response to SCSI @@ -80,6 +90,20 @@ USB_SC_DEVICE, USB_PR_DEVICE, NULL, US_FL_BROKEN_FUA), +/* Reported-by: Thinh Nguyen */ +UNUSUAL_DEV(0x154b, 0xf00b, 0x0000, 0x9999, + "PNY", + "Pro Elite SSD", + USB_SC_DEVICE, USB_PR_DEVICE, NULL, + US_FL_NO_ATA_1X), + +/* Reported-by: Thinh Nguyen */ +UNUSUAL_DEV(0x154b, 0xf00d, 0x0000, 0x9999, + "PNY", + "Pro Elite SSD", + USB_SC_DEVICE, USB_PR_DEVICE, NULL, + US_FL_NO_ATA_1X), + /* Reported-by: Hans de Goede */ UNUSUAL_DEV(0x2109, 0x0711, 0x0000, 0x9999, "VIA", --- linux-azure-5.8-5.8.0.orig/drivers/usb/storage/usb.c +++ linux-azure-5.8-5.8.0/drivers/usb/storage/usb.c @@ -541,6 +541,9 @@ case 'j': f |= US_FL_NO_REPORT_LUNS; break; + case 'k': + f |= US_FL_NO_SAME; + break; case 'l': f |= US_FL_NOT_LOCKABLE; break; --- linux-azure-5.8-5.8.0.orig/drivers/usb/typec/altmodes/Kconfig +++ linux-azure-5.8-5.8.0/drivers/usb/typec/altmodes/Kconfig @@ -20,6 +20,6 @@ to enable support for VirtualLink devices with NVIDIA GPUs. To compile this driver as a module, choose M here: the - module will be called typec_displayport. + module will be called typec_nvidia. endmenu --- linux-azure-5.8-5.8.0.orig/drivers/usb/typec/mux/intel_pmc_mux.c +++ linux-azure-5.8-5.8.0/drivers/usb/typec/mux/intel_pmc_mux.c @@ -56,14 +56,11 @@ #define PMC_USB_ALTMODE_ORI_SHIFT 1 #define PMC_USB_ALTMODE_UFP_SHIFT 3 -#define PMC_USB_ALTMODE_ORI_AUX_SHIFT 4 -#define PMC_USB_ALTMODE_ORI_HSL_SHIFT 5 /* DP specific Mode Data bits */ #define PMC_USB_ALTMODE_DP_MODE_SHIFT 8 /* TBT specific Mode Data bits */ -#define PMC_USB_ALTMODE_HPD_HIGH BIT(14) #define PMC_USB_ALTMODE_TBT_TYPE BIT(17) #define PMC_USB_ALTMODE_CABLE_TYPE BIT(18) #define PMC_USB_ALTMODE_ACTIVE_LINK BIT(20) @@ -174,15 +171,9 @@ req.mode_data = (port->orientation - 1) << PMC_USB_ALTMODE_ORI_SHIFT; req.mode_data |= (port->role - 1) << PMC_USB_ALTMODE_UFP_SHIFT; - req.mode_data |= sbu_orientation(port) << PMC_USB_ALTMODE_ORI_AUX_SHIFT; - req.mode_data |= hsl_orientation(port) << PMC_USB_ALTMODE_ORI_HSL_SHIFT; - req.mode_data |= (state->mode - TYPEC_STATE_MODAL) << PMC_USB_ALTMODE_DP_MODE_SHIFT; - if (data->status & DP_STATUS_HPD_STATE) - req.mode_data |= PMC_USB_ALTMODE_HPD_HIGH; - ret = pmc_usb_command(port, (void *)&req, sizeof(req)); if (ret) return ret; @@ -207,9 +198,6 @@ req.mode_data = (port->orientation - 1) << PMC_USB_ALTMODE_ORI_SHIFT; req.mode_data |= (port->role - 1) << PMC_USB_ALTMODE_UFP_SHIFT; - req.mode_data |= sbu_orientation(port) << PMC_USB_ALTMODE_ORI_AUX_SHIFT; - req.mode_data |= hsl_orientation(port) << PMC_USB_ALTMODE_ORI_HSL_SHIFT; - if (TBT_ADAPTER(data->device_mode) == TBT_ADAPTER_TBT3) req.mode_data |= PMC_USB_ALTMODE_TBT_TYPE; @@ -441,6 +429,7 @@ for (i = 0; i < pmc->num_ports; i++) { typec_switch_unregister(pmc->port[i].typec_sw); typec_mux_unregister(pmc->port[i].typec_mux); + usb_role_switch_unregister(pmc->port[i].usb_sw); } return ret; @@ -454,6 +443,7 @@ for (i = 0; i < pmc->num_ports; i++) { typec_switch_unregister(pmc->port[i].typec_sw); typec_mux_unregister(pmc->port[i].typec_mux); + usb_role_switch_unregister(pmc->port[i].usb_sw); } return 0; --- linux-azure-5.8-5.8.0.orig/drivers/usb/typec/tcpm/tcpm.c +++ linux-azure-5.8-5.8.0/drivers/usb/typec/tcpm/tcpm.c @@ -2743,12 +2743,12 @@ static void tcpm_detach(struct tcpm_port *port) { - if (!port->attached) - return; - if (tcpm_port_is_disconnected(port)) port->hard_reset_count = 0; + if (!port->attached) + return; + tcpm_reset_port(port); } @@ -3321,13 +3321,31 @@ tcpm_set_state(port, SNK_HARD_RESET_SINK_OFF, 0); break; case SRC_HARD_RESET_VBUS_OFF: - tcpm_set_vconn(port, true); + /* + * 7.1.5 Response to Hard Resets + * Hard Reset Signaling indicates a communication failure has occurred and the + * Source Shall stop driving VCONN, Shall remove Rp from the VCONN pin and Shall + * drive VBUS to vSafe0V as shown in Figure 7-9. + */ + tcpm_set_vconn(port, false); tcpm_set_vbus(port, false); tcpm_set_roles(port, port->self_powered, TYPEC_SOURCE, tcpm_data_role_for_source(port)); - tcpm_set_state(port, SRC_HARD_RESET_VBUS_ON, PD_T_SRC_RECOVER); + /* + * If tcpc fails to notify vbus off, TCPM will wait for PD_T_SAFE_0V + + * PD_T_SRC_RECOVER before turning vbus back on. + * From Table 7-12 Sequence Description for a Source Initiated Hard Reset: + * 4. Policy Engine waits tPSHardReset after sending Hard Reset Signaling and then + * tells the Device Policy Manager to instruct the power supply to perform a + * Hard Reset. The transition to vSafe0V Shall occur within tSafe0V (t2). + * 5. After tSrcRecover the Source applies power to VBUS in an attempt to + * re-establish communication with the Sink and resume USB Default Operation. + * The transition to vSafe5V Shall occur within tSrcTurnOn(t4). + */ + tcpm_set_state(port, SRC_HARD_RESET_VBUS_ON, PD_T_SAFE_0V + PD_T_SRC_RECOVER); break; case SRC_HARD_RESET_VBUS_ON: + tcpm_set_vconn(port, true); tcpm_set_vbus(port, true); port->tcpc->set_pd_rx(port->tcpc, true); tcpm_set_attached_state(port, true); @@ -3504,7 +3522,7 @@ */ tcpm_set_pwr_role(port, TYPEC_SOURCE); tcpm_pd_send_control(port, PD_CTRL_PS_RDY); - tcpm_set_state(port, SRC_STARTUP, 0); + tcpm_set_state(port, SRC_STARTUP, PD_T_SWAP_SRC_START); break; case VCONN_SWAP_ACCEPT: @@ -3887,7 +3905,11 @@ tcpm_set_state(port, SNK_HARD_RESET_WAIT_VBUS, 0); break; case SRC_HARD_RESET_VBUS_OFF: - tcpm_set_state(port, SRC_HARD_RESET_VBUS_ON, 0); + /* + * After establishing the vSafe0V voltage condition on VBUS, the Source Shall wait + * tSrcRecover before re-applying VCONN and restoring VBUS to vSafe5V. + */ + tcpm_set_state(port, SRC_HARD_RESET_VBUS_ON, PD_T_SRC_RECOVER); break; case HARD_RESET_SEND: break; --- linux-azure-5.8-5.8.0.orig/drivers/usb/typec/ucsi/displayport.c +++ linux-azure-5.8-5.8.0/drivers/usb/typec/ucsi/displayport.c @@ -288,8 +288,6 @@ struct typec_altmode *alt; struct ucsi_dp *dp; - mutex_lock(&con->lock); - /* We can't rely on the firmware with the capabilities. */ desc->vdo |= DP_CAP_DP_SIGNALING | DP_CAP_RECEPTACLE; @@ -298,15 +296,12 @@ desc->vdo |= all_assignments << 16; alt = typec_port_register_altmode(con->port, desc); - if (IS_ERR(alt)) { - mutex_unlock(&con->lock); + if (IS_ERR(alt)) return alt; - } dp = devm_kzalloc(&alt->dev, sizeof(*dp), GFP_KERNEL); if (!dp) { typec_unregister_altmode(alt); - mutex_unlock(&con->lock); return ERR_PTR(-ENOMEM); } @@ -319,7 +314,5 @@ alt->ops = &ucsi_displayport_ops; typec_altmode_set_drvdata(alt, dp); - mutex_unlock(&con->lock); - return alt; } --- linux-azure-5.8-5.8.0.orig/drivers/usb/typec/ucsi/psy.c +++ linux-azure-5.8-5.8.0/drivers/usb/typec/ucsi/psy.c @@ -238,4 +238,13 @@ return; power_supply_unregister(con->psy); + con->psy = NULL; +} + +void ucsi_port_psy_changed(struct ucsi_connector *con) +{ + if (IS_ERR_OR_NULL(con->psy)) + return; + + power_supply_changed(con->psy); } --- linux-azure-5.8-5.8.0.orig/drivers/usb/typec/ucsi/ucsi.c +++ linux-azure-5.8-5.8.0/drivers/usb/typec/ucsi/ucsi.c @@ -146,40 +146,33 @@ return UCSI_CCI_LENGTH(cci); } -static int ucsi_run_command(struct ucsi *ucsi, u64 command, - void *data, size_t size) +int ucsi_send_command(struct ucsi *ucsi, u64 command, + void *data, size_t size) { u8 length; int ret; + mutex_lock(&ucsi->ppm_lock); + ret = ucsi_exec_command(ucsi, command); if (ret < 0) - return ret; + goto out; length = ret; if (data) { ret = ucsi->ops->read(ucsi, UCSI_MESSAGE_IN, data, size); if (ret) - return ret; + goto out; } ret = ucsi_acknowledge_command(ucsi); if (ret) - return ret; - - return length; -} + goto out; -int ucsi_send_command(struct ucsi *ucsi, u64 command, - void *retval, size_t size) -{ - int ret; - - mutex_lock(&ucsi->ppm_lock); - ret = ucsi_run_command(ucsi, command, retval, size); + ret = length; +out: mutex_unlock(&ucsi->ppm_lock); - return ret; } EXPORT_SYMBOL_GPL(ucsi_send_command); @@ -205,7 +198,7 @@ int i; command = UCSI_GET_CURRENT_CAM | UCSI_CONNECTOR_NUMBER(con->num); - ret = ucsi_run_command(con->ucsi, command, &cur, sizeof(cur)); + ret = ucsi_send_command(con->ucsi, command, &cur, sizeof(cur)); if (ret < 0) { if (con->ucsi->version > 0x0100) { dev_err(con->ucsi->dev, @@ -223,14 +216,18 @@ con->partner_altmode[i] == altmode); } -static u8 ucsi_altmode_next_mode(struct typec_altmode **alt, u16 svid) +static int ucsi_altmode_next_mode(struct typec_altmode **alt, u16 svid) { u8 mode = 1; int i; - for (i = 0; alt[i]; i++) + for (i = 0; alt[i]; i++) { + if (i > MODE_DISCOVERY_MAX) + return -ERANGE; + if (alt[i]->svid == svid) mode++; + } return mode; } @@ -265,8 +262,11 @@ goto err; } - desc->mode = ucsi_altmode_next_mode(con->port_altmode, - desc->svid); + ret = ucsi_altmode_next_mode(con->port_altmode, desc->svid); + if (ret < 0) + return ret; + + desc->mode = ret; switch (desc->svid) { case USB_TYPEC_DP_SID: @@ -299,8 +299,11 @@ goto err; } - desc->mode = ucsi_altmode_next_mode(con->partner_altmode, - desc->svid); + ret = ucsi_altmode_next_mode(con->partner_altmode, desc->svid); + if (ret < 0) + return ret; + + desc->mode = ret; alt = typec_partner_register_altmode(con->partner, desc); if (IS_ERR(alt)) { @@ -354,7 +357,7 @@ command |= UCSI_GET_ALTMODE_RECIPIENT(recipient); command |= UCSI_GET_ALTMODE_CONNECTOR_NUMBER(con->num); command |= UCSI_GET_ALTMODE_OFFSET(i); - len = ucsi_run_command(con->ucsi, command, &alt, sizeof(alt)); + len = ucsi_send_command(con->ucsi, command, &alt, sizeof(alt)); /* * We are collecting all altmodes first and then registering. * Some type-C device will return zero length data beyond last @@ -431,7 +434,7 @@ command |= UCSI_GET_ALTMODE_RECIPIENT(recipient); command |= UCSI_GET_ALTMODE_CONNECTOR_NUMBER(con->num); command |= UCSI_GET_ALTMODE_OFFSET(i); - len = ucsi_run_command(con->ucsi, command, alt, sizeof(alt)); + len = ucsi_send_command(con->ucsi, command, alt, sizeof(alt)); if (len <= 0) return len; @@ -502,7 +505,7 @@ command |= UCSI_GET_PDOS_PARTNER_PDO(is_partner); command |= UCSI_GET_PDOS_NUM_PDOS(UCSI_MAX_PDOS - 1); command |= UCSI_GET_PDOS_SRC_PDOS; - ret = ucsi_run_command(ucsi, command, con->src_pdos, + ret = ucsi_send_command(ucsi, command, con->src_pdos, sizeof(con->src_pdos)); if (ret < 0) { dev_err(ucsi->dev, "UCSI_GET_PDOS failed (%d)\n", ret); @@ -640,8 +643,10 @@ role = !!(con->status.flags & UCSI_CONSTAT_PWR_DIR); if (con->status.change & UCSI_CONSTAT_POWER_OPMODE_CHANGE || - con->status.change & UCSI_CONSTAT_POWER_LEVEL_CHANGE) + con->status.change & UCSI_CONSTAT_POWER_LEVEL_CHANGE) { ucsi_pwr_opmode_change(con); + ucsi_port_psy_changed(con); + } if (con->status.change & UCSI_CONSTAT_POWER_DIR_CHANGE) { typec_set_pwr_role(con->port, role); @@ -671,6 +676,8 @@ ucsi_register_partner(con); else ucsi_unregister_partner(con); + + ucsi_port_psy_changed(con); } if (con->status.change & UCSI_CONSTAT_CAM_CHANGE) { @@ -681,7 +688,7 @@ */ command = UCSI_GET_CAM_SUPPORTED; command |= UCSI_CONNECTOR_NUMBER(con->num); - ucsi_run_command(con->ucsi, command, NULL, 0); + ucsi_send_command(con->ucsi, command, NULL, 0); } if (con->status.change & UCSI_CONSTAT_PARTNER_CHANGE) @@ -736,20 +743,24 @@ u32 cci; int ret; + mutex_lock(&ucsi->ppm_lock); + ret = ucsi->ops->async_write(ucsi, UCSI_CONTROL, &command, sizeof(command)); if (ret < 0) - return ret; + goto out; tmo = jiffies + msecs_to_jiffies(UCSI_TIMEOUT_MS); do { - if (time_is_before_jiffies(tmo)) - return -ETIMEDOUT; + if (time_is_before_jiffies(tmo)) { + ret = -ETIMEDOUT; + goto out; + } ret = ucsi->ops->read(ucsi, UCSI_CCI, &cci, sizeof(cci)); if (ret) - return ret; + goto out; /* If the PPM is still doing something else, reset it again. */ if (cci & ~UCSI_CCI_RESET_COMPLETE) { @@ -757,13 +768,15 @@ &command, sizeof(command)); if (ret < 0) - return ret; + goto out; } msleep(20); } while (!(cci & UCSI_CCI_RESET_COMPLETE)); - return 0; +out: + mutex_unlock(&ucsi->ppm_lock); + return ret; } static int ucsi_role_cmd(struct ucsi_connector *con, u64 command) @@ -775,9 +788,7 @@ u64 c; /* PPM most likely stopped responding. Resetting everything. */ - mutex_lock(&con->ucsi->ppm_lock); ucsi_reset_ppm(con->ucsi); - mutex_unlock(&con->ucsi->ppm_lock); c = UCSI_SET_NOTIFICATION_ENABLE | con->ucsi->ntfy; ucsi_send_command(con->ucsi, c, NULL, 0); @@ -901,12 +912,15 @@ con->num = index + 1; con->ucsi = ucsi; + /* Delay other interactions with the con until registration is complete */ + mutex_lock(&con->lock); + /* Get connector capability */ command = UCSI_GET_CONNECTOR_CAPABILITY; command |= UCSI_CONNECTOR_NUMBER(con->num); - ret = ucsi_run_command(ucsi, command, &con->cap, sizeof(con->cap)); + ret = ucsi_send_command(ucsi, command, &con->cap, sizeof(con->cap)); if (ret < 0) - return ret; + goto out; if (con->cap.op_mode & UCSI_CONCAP_OPMODE_DRP) cap->data = TYPEC_PORT_DRD; @@ -938,27 +952,32 @@ ret = ucsi_register_port_psy(con); if (ret) - return ret; + goto out; /* Register the connector */ con->port = typec_register_port(ucsi->dev, cap); - if (IS_ERR(con->port)) - return PTR_ERR(con->port); + if (IS_ERR(con->port)) { + ret = PTR_ERR(con->port); + goto out; + } /* Alternate modes */ ret = ucsi_register_altmodes(con, UCSI_RECIPIENT_CON); - if (ret) + if (ret) { dev_err(ucsi->dev, "con%d: failed to register alt modes\n", con->num); + goto out; + } /* Get the status */ command = UCSI_GET_CONNECTOR_STATUS | UCSI_CONNECTOR_NUMBER(con->num); - ret = ucsi_run_command(ucsi, command, &con->status, - sizeof(con->status)); + ret = ucsi_send_command(ucsi, command, &con->status, sizeof(con->status)); if (ret < 0) { dev_err(ucsi->dev, "con%d: failed to get status\n", con->num); - return 0; + ret = 0; + goto out; } + ret = 0; /* ucsi_send_command() returns length on success */ switch (UCSI_CONSTAT_PARTNER_TYPE(con->status.flags)) { case UCSI_CONSTAT_PARTNER_TYPE_UFP: @@ -979,21 +998,26 @@ !!(con->status.flags & UCSI_CONSTAT_PWR_DIR)); ucsi_pwr_opmode_change(con); ucsi_register_partner(con); + ucsi_port_psy_changed(con); } if (con->partner) { ret = ucsi_register_altmodes(con, UCSI_RECIPIENT_SOP); - if (ret) + if (ret) { dev_err(ucsi->dev, "con%d: failed to register alternate modes\n", con->num); - else + ret = 0; + } else { ucsi_altmode_update_active(con); + } } trace_ucsi_register_port(con->num, &con->status); - return 0; +out: + mutex_unlock(&con->lock); + return ret; } /** @@ -1009,8 +1033,6 @@ int ret; int i; - mutex_lock(&ucsi->ppm_lock); - /* Reset the PPM */ ret = ucsi_reset_ppm(ucsi); if (ret) { @@ -1021,13 +1043,13 @@ /* Enable basic notifications */ ucsi->ntfy = UCSI_ENABLE_NTFY_CMD_COMPLETE | UCSI_ENABLE_NTFY_ERROR; command = UCSI_SET_NOTIFICATION_ENABLE | ucsi->ntfy; - ret = ucsi_run_command(ucsi, command, NULL, 0); + ret = ucsi_send_command(ucsi, command, NULL, 0); if (ret < 0) goto err_reset; /* Get PPM capabilities */ command = UCSI_GET_CAPABILITY; - ret = ucsi_run_command(ucsi, command, &ucsi->cap, sizeof(ucsi->cap)); + ret = ucsi_send_command(ucsi, command, &ucsi->cap, sizeof(ucsi->cap)); if (ret < 0) goto err_reset; @@ -1054,12 +1076,10 @@ /* Enable all notifications */ ucsi->ntfy = UCSI_ENABLE_NTFY_ALL; command = UCSI_SET_NOTIFICATION_ENABLE | ucsi->ntfy; - ret = ucsi_run_command(ucsi, command, NULL, 0); + ret = ucsi_send_command(ucsi, command, NULL, 0); if (ret < 0) goto err_unregister; - mutex_unlock(&ucsi->ppm_lock); - return 0; err_unregister: @@ -1074,8 +1094,6 @@ err_reset: ucsi_reset_ppm(ucsi); err: - mutex_unlock(&ucsi->ppm_lock); - return ret; } EXPORT_SYMBOL_GPL(ucsi_init); --- linux-azure-5.8-5.8.0.orig/drivers/usb/typec/ucsi/ucsi.h +++ linux-azure-5.8-5.8.0/drivers/usb/typec/ucsi/ucsi.h @@ -340,9 +340,11 @@ #if IS_ENABLED(CONFIG_POWER_SUPPLY) int ucsi_register_port_psy(struct ucsi_connector *con); void ucsi_unregister_port_psy(struct ucsi_connector *con); +void ucsi_port_psy_changed(struct ucsi_connector *con); #else static inline int ucsi_register_port_psy(struct ucsi_connector *con) { return 0; } static inline void ucsi_unregister_port_psy(struct ucsi_connector *con) { } +static inline void ucsi_port_psy_changed(struct ucsi_connector *con) { } #endif /* CONFIG_POWER_SUPPLY */ #if IS_ENABLED(CONFIG_TYPEC_DP_ALTMODE) --- linux-azure-5.8-5.8.0.orig/drivers/usb/typec/ucsi/ucsi_acpi.c +++ linux-azure-5.8-5.8.0/drivers/usb/typec/ucsi/ucsi_acpi.c @@ -78,7 +78,7 @@ if (ret) goto out_clear_bit; - if (!wait_for_completion_timeout(&ua->complete, msecs_to_jiffies(5000))) + if (!wait_for_completion_timeout(&ua->complete, 60 * HZ)) ret = -ETIMEDOUT; out_clear_bit: @@ -112,11 +112,15 @@ static int ucsi_acpi_probe(struct platform_device *pdev) { + struct acpi_device *adev = ACPI_COMPANION(&pdev->dev); struct ucsi_acpi *ua; struct resource *res; acpi_status status; int ret; + if (adev->dep_unmet) + return -EPROBE_DEFER; + ua = devm_kzalloc(&pdev->dev, sizeof(*ua), GFP_KERNEL); if (!ua) return -ENOMEM; --- linux-azure-5.8-5.8.0.orig/drivers/usb/usbip/stub_dev.c +++ linux-azure-5.8-5.8.0/drivers/usb/usbip/stub_dev.c @@ -46,6 +46,8 @@ int sockfd = 0; struct socket *socket; int rv; + struct task_struct *tcp_rx = NULL; + struct task_struct *tcp_tx = NULL; if (!sdev) { dev_err(dev, "sdev is null\n"); @@ -72,20 +74,36 @@ if (!socket) goto err; - sdev->ud.tcp_socket = socket; - sdev->ud.sockfd = sockfd; - + /* unlock and create threads and get tasks */ spin_unlock_irq(&sdev->ud.lock); + tcp_rx = kthread_create(stub_rx_loop, &sdev->ud, "stub_rx"); + if (IS_ERR(tcp_rx)) { + sockfd_put(socket); + return -EINVAL; + } + tcp_tx = kthread_create(stub_tx_loop, &sdev->ud, "stub_tx"); + if (IS_ERR(tcp_tx)) { + kthread_stop(tcp_rx); + sockfd_put(socket); + return -EINVAL; + } - sdev->ud.tcp_rx = kthread_get_run(stub_rx_loop, &sdev->ud, - "stub_rx"); - sdev->ud.tcp_tx = kthread_get_run(stub_tx_loop, &sdev->ud, - "stub_tx"); + /* get task structs now */ + get_task_struct(tcp_rx); + get_task_struct(tcp_tx); + /* lock and update sdev->ud state */ spin_lock_irq(&sdev->ud.lock); + sdev->ud.tcp_socket = socket; + sdev->ud.sockfd = sockfd; + sdev->ud.tcp_rx = tcp_rx; + sdev->ud.tcp_tx = tcp_tx; sdev->ud.status = SDEV_ST_USED; spin_unlock_irq(&sdev->ud.lock); + wake_up_process(sdev->ud.tcp_rx); + wake_up_process(sdev->ud.tcp_tx); + } else { dev_info(dev, "stub down\n"); --- linux-azure-5.8-5.8.0.orig/drivers/usb/usbip/vhci_hcd.c +++ linux-azure-5.8-5.8.0/drivers/usb/usbip/vhci_hcd.c @@ -396,6 +396,8 @@ default: usbip_dbg_vhci_rh(" ClearPortFeature: default %x\n", wValue); + if (wValue >= 32) + goto error; vhci_hcd->port_status[rhport] &= ~(1 << wValue); break; } --- linux-azure-5.8-5.8.0.orig/drivers/vdpa/Kconfig +++ linux-azure-5.8-5.8.0/drivers/vdpa/Kconfig @@ -12,6 +12,7 @@ tristate "vDPA device simulator" depends on RUNTIME_TESTING_MENU && HAS_DMA select VHOST_RING + select GENERIC_NET_UTILS default n help vDPA networking device simulator which loop TX traffic back --- linux-azure-5.8-5.8.0.orig/drivers/vdpa/ifcvf/ifcvf_base.h +++ linux-azure-5.8-5.8.0/drivers/vdpa/ifcvf/ifcvf_base.h @@ -84,7 +84,7 @@ void __iomem * const *base; char config_msix_name[256]; struct vdpa_callback config_cb; - + unsigned int config_irq; }; struct ifcvf_adapter { --- linux-azure-5.8-5.8.0.orig/drivers/vdpa/ifcvf/ifcvf_main.c +++ linux-azure-5.8-5.8.0/drivers/vdpa/ifcvf/ifcvf_main.c @@ -53,6 +53,7 @@ for (i = 0; i < queues; i++) devm_free_irq(&pdev->dev, vf->vring[i].irq, &vf->vring[i]); + devm_free_irq(&pdev->dev, vf->config_irq, vf); ifcvf_free_irq_vectors(pdev); } @@ -72,10 +73,14 @@ snprintf(vf->config_msix_name, 256, "ifcvf[%s]-config\n", pci_name(pdev)); vector = 0; - irq = pci_irq_vector(pdev, vector); - ret = devm_request_irq(&pdev->dev, irq, + vf->config_irq = pci_irq_vector(pdev, vector); + ret = devm_request_irq(&pdev->dev, vf->config_irq, ifcvf_config_changed, 0, vf->config_msix_name, vf); + if (ret) { + IFCVF_ERR(pdev, "Failed to request config irq\n"); + return ret; + } for (i = 0; i < IFCVF_MAX_QUEUE_PAIRS * 2; i++) { snprintf(vf->vring[i].msix_name, 256, "ifcvf[%s]-%d\n", --- linux-azure-5.8-5.8.0.orig/drivers/vdpa/vdpa_sim/vdpa_sim.c +++ linux-azure-5.8-5.8.0/drivers/vdpa/vdpa_sim/vdpa_sim.c @@ -70,6 +70,8 @@ u32 status; u32 generation; u64 features; + /* spinlock to synchronize iommu table */ + spinlock_t iommu_lock; }; static struct vdpasim *vdpasim_dev; @@ -118,7 +120,9 @@ for (i = 0; i < VDPASIM_VQ_NUM; i++) vdpasim_vq_reset(&vdpasim->vqs[i]); + spin_lock(&vdpasim->iommu_lock); vhost_iotlb_reset(vdpasim->iommu); + spin_unlock(&vdpasim->iommu_lock); vdpasim->features = 0; vdpasim->status = 0; @@ -236,8 +240,10 @@ /* For simplicity, use identical mapping to avoid e.g iova * allocator. */ + spin_lock(&vdpasim->iommu_lock); ret = vhost_iotlb_add_range(iommu, pa, pa + size - 1, pa, dir_to_perm(dir)); + spin_unlock(&vdpasim->iommu_lock); if (ret) return DMA_MAPPING_ERROR; @@ -251,8 +257,10 @@ struct vdpasim *vdpasim = dev_to_sim(dev); struct vhost_iotlb *iommu = vdpasim->iommu; + spin_lock(&vdpasim->iommu_lock); vhost_iotlb_del_range(iommu, (u64)dma_addr, (u64)dma_addr + size - 1); + spin_unlock(&vdpasim->iommu_lock); } static void *vdpasim_alloc_coherent(struct device *dev, size_t size, @@ -264,9 +272,10 @@ void *addr = kmalloc(size, flag); int ret; - if (!addr) + spin_lock(&vdpasim->iommu_lock); + if (!addr) { *dma_addr = DMA_MAPPING_ERROR; - else { + } else { u64 pa = virt_to_phys(addr); ret = vhost_iotlb_add_range(iommu, (u64)pa, @@ -279,6 +288,7 @@ } else *dma_addr = (dma_addr_t)pa; } + spin_unlock(&vdpasim->iommu_lock); return addr; } @@ -290,8 +300,11 @@ struct vdpasim *vdpasim = dev_to_sim(dev); struct vhost_iotlb *iommu = vdpasim->iommu; + spin_lock(&vdpasim->iommu_lock); vhost_iotlb_del_range(iommu, (u64)dma_addr, (u64)dma_addr + size - 1); + spin_unlock(&vdpasim->iommu_lock); + kfree(phys_to_virt((uintptr_t)dma_addr)); } @@ -318,9 +331,12 @@ INIT_WORK(&vdpasim->work, vdpasim_work); spin_lock_init(&vdpasim->lock); + spin_lock_init(&vdpasim->iommu_lock); dev = &vdpasim->vdpa.dev; - dev->coherent_dma_mask = DMA_BIT_MASK(64); + dev->dma_mask = &dev->coherent_dma_mask; + if (dma_set_mask_and_coherent(dev, DMA_BIT_MASK(64))) + goto err_iommu; set_dma_ops(dev, &vdpasim_dma_ops); vdpasim->iommu = vhost_iotlb_alloc(2048, 0); @@ -508,7 +524,7 @@ struct vdpasim *vdpasim = vdpa_to_sim(vdpa); if (offset + len < sizeof(struct virtio_net_config)) - memcpy(buf, &vdpasim->config + offset, len); + memcpy(buf, (u8 *)&vdpasim->config + offset, len); } static void vdpasim_set_config(struct vdpa_device *vdpa, unsigned int offset, @@ -532,6 +548,7 @@ u64 start = 0ULL, last = 0ULL - 1; int ret; + spin_lock(&vdpasim->iommu_lock); vhost_iotlb_reset(vdpasim->iommu); for (map = vhost_iotlb_itree_first(iotlb, start, last); map; @@ -541,10 +558,12 @@ if (ret) goto err; } + spin_unlock(&vdpasim->iommu_lock); return 0; err: vhost_iotlb_reset(vdpasim->iommu); + spin_unlock(&vdpasim->iommu_lock); return ret; } @@ -552,16 +571,23 @@ u64 pa, u32 perm) { struct vdpasim *vdpasim = vdpa_to_sim(vdpa); + int ret; - return vhost_iotlb_add_range(vdpasim->iommu, iova, - iova + size - 1, pa, perm); + spin_lock(&vdpasim->iommu_lock); + ret = vhost_iotlb_add_range(vdpasim->iommu, iova, iova + size - 1, pa, + perm); + spin_unlock(&vdpasim->iommu_lock); + + return ret; } static int vdpasim_dma_unmap(struct vdpa_device *vdpa, u64 iova, u64 size) { struct vdpasim *vdpasim = vdpa_to_sim(vdpa); + spin_lock(&vdpasim->iommu_lock); vhost_iotlb_del_range(vdpasim->iommu, iova, iova + size - 1); + spin_unlock(&vdpasim->iommu_lock); return 0; } --- linux-azure-5.8-5.8.0.orig/drivers/vfio/pci/vfio_pci.c +++ linux-azure-5.8-5.8.0/drivers/vfio/pci/vfio_pci.c @@ -119,8 +119,6 @@ int i; struct vfio_pci_dummy_resource *dummy_res; - INIT_LIST_HEAD(&vdev->dummy_resources_list); - for (i = 0; i < PCI_STD_NUM_BARS; i++) { int bar = i + PCI_STD_RESOURCES; @@ -341,7 +339,7 @@ pdev->vendor == PCI_VENDOR_ID_INTEL && IS_ENABLED(CONFIG_VFIO_PCI_IGD)) { ret = vfio_pci_igd_init(vdev); - if (ret) { + if (ret && ret != -ENODEV) { pci_warn(pdev, "Failed to setup Intel IGD regions\n"); goto disable_exit; } @@ -1558,8 +1556,8 @@ mutex_unlock(&vdev->vma_lock); - if (remap_pfn_range(vma, vma->vm_start, vma->vm_pgoff, - vma->vm_end - vma->vm_start, vma->vm_page_prot)) + if (io_remap_pfn_range(vma, vma->vm_start, vma->vm_pgoff, + vma->vm_end - vma->vm_start, vma->vm_page_prot)) ret = VM_FAULT_SIGBUS; up_out: @@ -1887,6 +1885,7 @@ mutex_init(&vdev->igate); spin_lock_init(&vdev->irqlock); mutex_init(&vdev->ioeventfds_lock); + INIT_LIST_HEAD(&vdev->dummy_resources_list); INIT_LIST_HEAD(&vdev->ioeventfds_list); mutex_init(&vdev->vma_lock); INIT_LIST_HEAD(&vdev->vma_list); --- linux-azure-5.8-5.8.0.orig/drivers/vfio/pci/vfio_pci_config.c +++ linux-azure-5.8-5.8.0/drivers/vfio/pci/vfio_pci_config.c @@ -406,7 +406,7 @@ * PF SR-IOV capability, there's therefore no need to trigger * faults based on the virtual value. */ - return pdev->is_virtfn || (cmd & PCI_COMMAND_MEMORY); + return pdev->no_command_memory || (cmd & PCI_COMMAND_MEMORY); } /* @@ -520,8 +520,8 @@ count = vfio_default_config_read(vdev, pos, count, perm, offset, val); - /* Mask in virtual memory enable for SR-IOV devices */ - if (offset == PCI_COMMAND && vdev->pdev->is_virtfn) { + /* Mask in virtual memory enable */ + if (offset == PCI_COMMAND && vdev->pdev->no_command_memory) { u16 cmd = le16_to_cpu(*(__le16 *)&vdev->vconfig[PCI_COMMAND]); u32 tmp_val = le32_to_cpu(*val); @@ -589,9 +589,11 @@ * shows it disabled (phys_mem/io, then the device has * undergone some kind of backdoor reset and needs to be * restored before we allow it to enable the bars. - * SR-IOV devices will trigger this, but we catch them later + * SR-IOV devices will trigger this - for mem enable let's + * catch this now and for io enable it will be caught later */ - if ((new_mem && virt_mem && !phys_mem) || + if ((new_mem && virt_mem && !phys_mem && + !pdev->no_command_memory) || (new_io && virt_io && !phys_io) || vfio_need_bar_restore(vdev)) vfio_bar_restore(vdev); @@ -1734,12 +1736,14 @@ vconfig[PCI_INTERRUPT_PIN]); vconfig[PCI_INTERRUPT_PIN] = 0; /* Gratuitous for good VFs */ - + } + if (pdev->no_command_memory) { /* - * VFs do no implement the memory enable bit of the COMMAND - * register therefore we'll not have it set in our initial - * copy of config space after pci_enable_device(). For - * consistency with PFs, set the virtual enable bit here. + * VFs and devices that set pdev->no_command_memory do not + * implement the memory enable bit of the COMMAND register + * therefore we'll not have it set in our initial copy of + * config space after pci_enable_device(). For consistency + * with PFs, set the virtual enable bit here. */ *(__le16 *)&vconfig[PCI_COMMAND] |= cpu_to_le16(PCI_COMMAND_MEMORY); --- linux-azure-5.8-5.8.0.orig/drivers/vfio/pci/vfio_pci_intrs.c +++ linux-azure-5.8-5.8.0/drivers/vfio/pci/vfio_pci_intrs.c @@ -352,11 +352,13 @@ vdev->ctx[vector].producer.token = trigger; vdev->ctx[vector].producer.irq = irq; ret = irq_bypass_register_producer(&vdev->ctx[vector].producer); - if (unlikely(ret)) + if (unlikely(ret)) { dev_info(&pdev->dev, "irq bypass producer (token %p) registration fails: %d\n", vdev->ctx[vector].producer.token, ret); + vdev->ctx[vector].producer.token = NULL; + } vdev->ctx[vector].trigger = trigger; return 0; --- linux-azure-5.8-5.8.0.orig/drivers/vfio/pci/vfio_pci_nvlink2.c +++ linux-azure-5.8-5.8.0/drivers/vfio/pci/vfio_pci_nvlink2.c @@ -231,7 +231,7 @@ return -EINVAL; if (of_property_read_u32(npu_node, "memory-region", &mem_phandle)) - return -EINVAL; + return -ENODEV; mem_node = of_find_node_by_phandle(mem_phandle); if (!mem_node) @@ -393,7 +393,7 @@ int ret; struct vfio_pci_npu2_data *data; struct device_node *nvlink_dn; - u32 nvlink_index = 0; + u32 nvlink_index = 0, mem_phandle = 0; struct pci_dev *npdev = vdev->pdev; struct device_node *npu_node = pci_device_to_OF_node(npdev); struct pci_controller *hose = pci_bus_to_host(npdev->bus); @@ -408,6 +408,9 @@ if (!pnv_pci_get_gpu_dev(vdev->pdev)) return -ENODEV; + if (of_property_read_u32(npu_node, "memory-region", &mem_phandle)) + return -ENODEV; + /* * NPU2 normally has 8 ATSD registers (for concurrency) and 6 links * so we can allocate one register per link, using nvlink index as --- linux-azure-5.8-5.8.0.orig/drivers/vfio/pci/vfio_pci_private.h +++ linux-azure-5.8-5.8.0/drivers/vfio/pci/vfio_pci_private.h @@ -33,12 +33,14 @@ struct vfio_pci_ioeventfd { struct list_head next; + struct vfio_pci_device *vdev; struct virqfd *virqfd; void __iomem *addr; uint64_t data; loff_t pos; int bar; int count; + bool test_mem; }; struct vfio_pci_irq_ctx { --- linux-azure-5.8-5.8.0.orig/drivers/vfio/pci/vfio_pci_rdwr.c +++ linux-azure-5.8-5.8.0/drivers/vfio/pci/vfio_pci_rdwr.c @@ -37,17 +37,70 @@ #define vfio_ioread8 ioread8 #define vfio_iowrite8 iowrite8 +#define VFIO_IOWRITE(size) \ +static int vfio_pci_iowrite##size(struct vfio_pci_device *vdev, \ + bool test_mem, u##size val, void __iomem *io) \ +{ \ + if (test_mem) { \ + down_read(&vdev->memory_lock); \ + if (!__vfio_pci_memory_enabled(vdev)) { \ + up_read(&vdev->memory_lock); \ + return -EIO; \ + } \ + } \ + \ + vfio_iowrite##size(val, io); \ + \ + if (test_mem) \ + up_read(&vdev->memory_lock); \ + \ + return 0; \ +} + +VFIO_IOWRITE(8) +VFIO_IOWRITE(16) +VFIO_IOWRITE(32) +#ifdef iowrite64 +VFIO_IOWRITE(64) +#endif + +#define VFIO_IOREAD(size) \ +static int vfio_pci_ioread##size(struct vfio_pci_device *vdev, \ + bool test_mem, u##size *val, void __iomem *io) \ +{ \ + if (test_mem) { \ + down_read(&vdev->memory_lock); \ + if (!__vfio_pci_memory_enabled(vdev)) { \ + up_read(&vdev->memory_lock); \ + return -EIO; \ + } \ + } \ + \ + *val = vfio_ioread##size(io); \ + \ + if (test_mem) \ + up_read(&vdev->memory_lock); \ + \ + return 0; \ +} + +VFIO_IOREAD(8) +VFIO_IOREAD(16) +VFIO_IOREAD(32) + /* * Read or write from an __iomem region (MMIO or I/O port) with an excluded * range which is inaccessible. The excluded range drops writes and fills * reads with -1. This is intended for handling MSI-X vector tables and * leftover space for ROM BARs. */ -static ssize_t do_io_rw(void __iomem *io, char __user *buf, +static ssize_t do_io_rw(struct vfio_pci_device *vdev, bool test_mem, + void __iomem *io, char __user *buf, loff_t off, size_t count, size_t x_start, size_t x_end, bool iswrite) { ssize_t done = 0; + int ret; while (count) { size_t fillable, filled; @@ -66,9 +119,15 @@ if (copy_from_user(&val, buf, 4)) return -EFAULT; - vfio_iowrite32(val, io + off); + ret = vfio_pci_iowrite32(vdev, test_mem, + val, io + off); + if (ret) + return ret; } else { - val = vfio_ioread32(io + off); + ret = vfio_pci_ioread32(vdev, test_mem, + &val, io + off); + if (ret) + return ret; if (copy_to_user(buf, &val, 4)) return -EFAULT; @@ -82,9 +141,15 @@ if (copy_from_user(&val, buf, 2)) return -EFAULT; - vfio_iowrite16(val, io + off); + ret = vfio_pci_iowrite16(vdev, test_mem, + val, io + off); + if (ret) + return ret; } else { - val = vfio_ioread16(io + off); + ret = vfio_pci_ioread16(vdev, test_mem, + &val, io + off); + if (ret) + return ret; if (copy_to_user(buf, &val, 2)) return -EFAULT; @@ -98,9 +163,15 @@ if (copy_from_user(&val, buf, 1)) return -EFAULT; - vfio_iowrite8(val, io + off); + ret = vfio_pci_iowrite8(vdev, test_mem, + val, io + off); + if (ret) + return ret; } else { - val = vfio_ioread8(io + off); + ret = vfio_pci_ioread8(vdev, test_mem, + &val, io + off); + if (ret) + return ret; if (copy_to_user(buf, &val, 1)) return -EFAULT; @@ -178,14 +249,6 @@ count = min(count, (size_t)(end - pos)); - if (res->flags & IORESOURCE_MEM) { - down_read(&vdev->memory_lock); - if (!__vfio_pci_memory_enabled(vdev)) { - up_read(&vdev->memory_lock); - return -EIO; - } - } - if (bar == PCI_ROM_RESOURCE) { /* * The ROM can fill less space than the BAR, so we start the @@ -213,7 +276,8 @@ x_end = vdev->msix_offset + vdev->msix_size; } - done = do_io_rw(io, buf, pos, count, x_start, x_end, iswrite); + done = do_io_rw(vdev, res->flags & IORESOURCE_MEM, io, buf, pos, + count, x_start, x_end, iswrite); if (done >= 0) *ppos += done; @@ -221,9 +285,6 @@ if (bar == PCI_ROM_RESOURCE) pci_unmap_rom(pdev, io); out: - if (res->flags & IORESOURCE_MEM) - up_read(&vdev->memory_lock); - return done; } @@ -278,7 +339,12 @@ return ret; } - done = do_io_rw(iomem, buf, off, count, 0, 0, iswrite); + /* + * VGA MMIO is a legacy, non-BAR resource that hopefully allows + * probing, so we don't currently worry about access in relation + * to the memory enable bit in the command register. + */ + done = do_io_rw(vdev, false, iomem, buf, off, count, 0, 0, iswrite); vga_put(vdev->pdev, rsrc); @@ -290,30 +356,60 @@ return done; } -static int vfio_pci_ioeventfd_handler(void *opaque, void *unused) +static void vfio_pci_ioeventfd_do_write(struct vfio_pci_ioeventfd *ioeventfd, + bool test_mem) { - struct vfio_pci_ioeventfd *ioeventfd = opaque; - switch (ioeventfd->count) { case 1: - vfio_iowrite8(ioeventfd->data, ioeventfd->addr); + vfio_pci_iowrite8(ioeventfd->vdev, test_mem, + ioeventfd->data, ioeventfd->addr); break; case 2: - vfio_iowrite16(ioeventfd->data, ioeventfd->addr); + vfio_pci_iowrite16(ioeventfd->vdev, test_mem, + ioeventfd->data, ioeventfd->addr); break; case 4: - vfio_iowrite32(ioeventfd->data, ioeventfd->addr); + vfio_pci_iowrite32(ioeventfd->vdev, test_mem, + ioeventfd->data, ioeventfd->addr); break; #ifdef iowrite64 case 8: - vfio_iowrite64(ioeventfd->data, ioeventfd->addr); + vfio_pci_iowrite64(ioeventfd->vdev, test_mem, + ioeventfd->data, ioeventfd->addr); break; #endif } +} + +static int vfio_pci_ioeventfd_handler(void *opaque, void *unused) +{ + struct vfio_pci_ioeventfd *ioeventfd = opaque; + struct vfio_pci_device *vdev = ioeventfd->vdev; + + if (ioeventfd->test_mem) { + if (!down_read_trylock(&vdev->memory_lock)) + return 1; /* Lock contended, use thread */ + if (!__vfio_pci_memory_enabled(vdev)) { + up_read(&vdev->memory_lock); + return 0; + } + } + + vfio_pci_ioeventfd_do_write(ioeventfd, false); + + if (ioeventfd->test_mem) + up_read(&vdev->memory_lock); return 0; } +static void vfio_pci_ioeventfd_thread(void *opaque, void *unused) +{ + struct vfio_pci_ioeventfd *ioeventfd = opaque; + + vfio_pci_ioeventfd_do_write(ioeventfd, ioeventfd->test_mem); +} + long vfio_pci_ioeventfd(struct vfio_pci_device *vdev, loff_t offset, uint64_t data, int count, int fd) { @@ -378,14 +474,17 @@ goto out_unlock; } + ioeventfd->vdev = vdev; ioeventfd->addr = vdev->barmap[bar] + pos; ioeventfd->data = data; ioeventfd->pos = pos; ioeventfd->bar = bar; ioeventfd->count = count; + ioeventfd->test_mem = vdev->pdev->resource[bar].flags & IORESOURCE_MEM; ret = vfio_virqfd_enable(ioeventfd, vfio_pci_ioeventfd_handler, - NULL, NULL, &ioeventfd->virqfd, fd); + vfio_pci_ioeventfd_thread, NULL, + &ioeventfd->virqfd, fd); if (ret) { kfree(ioeventfd); goto out_unlock; --- linux-azure-5.8-5.8.0.orig/drivers/vfio/platform/vfio_platform_common.c +++ linux-azure-5.8-5.8.0/drivers/vfio/platform/vfio_platform_common.c @@ -267,7 +267,7 @@ ret = pm_runtime_get_sync(vdev->device); if (ret < 0) - goto err_pm; + goto err_rst; ret = vfio_platform_call_reset(vdev, &extra_dbg); if (ret && vdev->reset_required) { @@ -284,7 +284,6 @@ err_rst: pm_runtime_put(vdev->device); -err_pm: vfio_platform_irq_cleanup(vdev); err_irq: vfio_platform_regions_cleanup(vdev); --- linux-azure-5.8-5.8.0.orig/drivers/vfio/vfio.c +++ linux-azure-5.8-5.8.0/drivers/vfio/vfio.c @@ -926,6 +926,10 @@ struct vfio_unbound_dev *unbound; unsigned int i = 0; bool interrupted = false; + bool locked = true; + struct device_driver *drv; + + drv = dev->driver; /* * The group exists so long as we have a device reference. Get @@ -968,8 +972,11 @@ if (!device) break; - if (device->ops->request) + if (device->ops->request) { + device_unlock(dev); + locked = false; device->ops->request(device_data, i++); + } vfio_device_put(device); @@ -987,6 +994,20 @@ } } + if (!locked) { + device_lock(dev); + locked = true; + /* + * A concurrent operation may have released the driver + * successfully while we had dropped the lock, + * check for that. + */ + if (dev->driver != drv) { + vfio_group_put(group); + return NULL; + } + } + } while (1); remove_wait_queue(&vfio.release_q, &wait); @@ -1948,8 +1969,10 @@ if (!group) return -ENODEV; - if (group->dev_counter > 1) - return -EINVAL; + if (group->dev_counter > 1) { + ret = -EINVAL; + goto err_pin_pages; + } ret = vfio_group_add_container_user(group); if (ret) @@ -2050,6 +2073,9 @@ if (!group || !user_iova_pfn || !phys_pfn || !npage) return -EINVAL; + if (group->dev_counter > 1) + return -EINVAL; + if (npage > VFIO_PIN_PAGES_MAX_ENTRIES) return -E2BIG; --- linux-azure-5.8-5.8.0.orig/drivers/vfio/vfio_iommu_type1.c +++ linux-azure-5.8-5.8.0/drivers/vfio/vfio_iommu_type1.c @@ -24,6 +24,7 @@ #include #include #include +#include #include #include #include @@ -236,6 +237,18 @@ } } +static void vfio_iommu_populate_bitmap_full(struct vfio_iommu *iommu) +{ + struct rb_node *n; + unsigned long pgshift = __ffs(iommu->pgsize_bitmap); + + for (n = rb_first(&iommu->dma_list); n; n = rb_next(n)) { + struct vfio_dma *dma = rb_entry(n, struct vfio_dma, node); + + bitmap_set(dma->bitmap, 0, dma->size >> pgshift); + } +} + static int vfio_dma_bitmap_alloc_all(struct vfio_iommu *iommu, size_t pgsize) { struct rb_node *n; @@ -419,9 +432,11 @@ unsigned long vaddr, unsigned long *pfn, bool write_fault) { + pte_t *ptep; + spinlock_t *ptl; int ret; - ret = follow_pfn(vma, vaddr, pfn); + ret = follow_pte(vma->vm_mm, vaddr, &ptep, &ptl); if (ret) { bool unlocked = false; @@ -435,9 +450,17 @@ if (ret) return ret; - ret = follow_pfn(vma, vaddr, pfn); + ret = follow_pte(vma->vm_mm, vaddr, &ptep, &ptl); + if (ret) + return ret; } + if (write_fault && !pte_write(*ptep)) + ret = -EFAULT; + else + *pfn = pte_pfn(*ptep); + + pte_unmap_unlock(ptep, ptl); return ret; } @@ -693,7 +716,8 @@ ret = vfio_add_to_pfn_list(dma, iova, phys_pfn[i]); if (ret) { - vfio_unpin_page_external(dma, iova, do_accounting); + if (put_pfn(phys_pfn[i], dma->prot) && do_accounting) + vfio_lock_acct(dma, -1, true); goto pin_unwind; } @@ -944,6 +968,7 @@ static void vfio_remove_dma(struct vfio_iommu *iommu, struct vfio_dma *dma) { + WARN_ON(!RB_EMPTY_ROOT(&dma->pfn_list)); vfio_unmap_unpin(iommu, dma, true); vfio_unlink_dma(iommu, dma); put_task_struct(dma->task); @@ -1422,13 +1447,16 @@ static int vfio_iommu_replay(struct vfio_iommu *iommu, struct vfio_domain *domain) { - struct vfio_domain *d; + struct vfio_domain *d = NULL; struct rb_node *n; unsigned long limit = rlimit(RLIMIT_MEMLOCK) >> PAGE_SHIFT; int ret; /* Arbitrarily pick the first domain in the list for lookups */ - d = list_first_entry(&iommu->domain_list, struct vfio_domain, next); + if (!list_empty(&iommu->domain_list)) + d = list_first_entry(&iommu->domain_list, + struct vfio_domain, next); + n = rb_first(&iommu->dma_list); for (; n; n = rb_next(n)) { @@ -1446,6 +1474,11 @@ phys_addr_t p; dma_addr_t i; + if (WARN_ON(!d)) { /* mapped w/o a domain?! */ + ret = -EINVAL; + goto unwind; + } + phys = iommu_iova_to_phys(d->domain, iova); if (WARN_ON(!phys)) { @@ -1475,7 +1508,7 @@ if (npage <= 0) { WARN_ON(!npage); ret = (int)npage; - return ret; + goto unwind; } phys = pfn << PAGE_SHIFT; @@ -1484,14 +1517,67 @@ ret = iommu_map(domain->domain, iova, phys, size, dma->prot | domain->prot); - if (ret) - return ret; + if (ret) { + if (!dma->iommu_mapped) + vfio_unpin_pages_remote(dma, iova, + phys >> PAGE_SHIFT, + size >> PAGE_SHIFT, + true); + goto unwind; + } iova += size; } + } + + /* All dmas are now mapped, defer to second tree walk for unwind */ + for (n = rb_first(&iommu->dma_list); n; n = rb_next(n)) { + struct vfio_dma *dma = rb_entry(n, struct vfio_dma, node); + dma->iommu_mapped = true; } + return 0; + +unwind: + for (; n; n = rb_prev(n)) { + struct vfio_dma *dma = rb_entry(n, struct vfio_dma, node); + dma_addr_t iova; + + if (dma->iommu_mapped) { + iommu_unmap(domain->domain, dma->iova, dma->size); + continue; + } + + iova = dma->iova; + while (iova < dma->iova + dma->size) { + phys_addr_t phys, p; + size_t size; + dma_addr_t i; + + phys = iommu_iova_to_phys(domain->domain, iova); + if (!phys) { + iova += PAGE_SIZE; + continue; + } + + size = PAGE_SIZE; + p = phys + size; + i = iova + size; + while (i < dma->iova + dma->size && + p == iommu_iova_to_phys(domain->domain, i)) { + size += PAGE_SIZE; + p += PAGE_SIZE; + i += PAGE_SIZE; + } + + iommu_unmap(domain->domain, iova, size); + vfio_unpin_pages_remote(dma, iova, phys >> PAGE_SHIFT, + size >> PAGE_SHIFT, true); + } + } + + return ret; } /* @@ -2181,23 +2267,6 @@ } } -static void vfio_sanity_check_pfn_list(struct vfio_iommu *iommu) -{ - struct rb_node *n; - - n = rb_first(&iommu->dma_list); - for (; n; n = rb_next(n)) { - struct vfio_dma *dma; - - dma = rb_entry(n, struct vfio_dma, node); - - if (WARN_ON(!RB_EMPTY_ROOT(&dma->pfn_list))) - break; - } - /* mdev vendor driver must unregister notifier */ - WARN_ON(iommu->notifier.head); -} - /* * Called when a domain is removed in detach. It is possible that * the removed domain decided the iova aperture window. Modify the @@ -2297,10 +2366,10 @@ kfree(group); if (list_empty(&iommu->external_domain->group_list)) { - vfio_sanity_check_pfn_list(iommu); - - if (!IS_IOMMU_CAP_DOMAIN_IN_CONTAINER(iommu)) + if (!IS_IOMMU_CAP_DOMAIN_IN_CONTAINER(iommu)) { + WARN_ON(iommu->notifier.head); vfio_iommu_unmap_unpin_all(iommu); + } kfree(iommu->external_domain); iommu->external_domain = NULL; @@ -2334,10 +2403,12 @@ */ if (list_empty(&domain->group_list)) { if (list_is_singular(&iommu->domain_list)) { - if (!iommu->external_domain) + if (!iommu->external_domain) { + WARN_ON(iommu->notifier.head); vfio_iommu_unmap_unpin_all(iommu); - else + } else { vfio_iommu_unmap_unpin_reaccount(iommu); + } } iommu_domain_free(domain->domain); list_del(&domain->next); @@ -2358,8 +2429,11 @@ * Removal of a group without dirty tracking may allow the iommu scope * to be promoted. */ - if (update_dirty_scope) + if (update_dirty_scope) { update_pinned_page_dirty_scope(iommu); + if (iommu->dirty_page_tracking) + vfio_iommu_populate_bitmap_full(iommu); + } mutex_unlock(&iommu->lock); } @@ -2418,7 +2492,6 @@ if (iommu->external_domain) { vfio_release_domain(iommu->external_domain, true); - vfio_sanity_check_pfn_list(iommu); kfree(iommu->external_domain); } @@ -2453,6 +2526,23 @@ return ret; } +static int vfio_iommu_type1_check_extension(struct vfio_iommu *iommu, + unsigned long arg) +{ + switch (arg) { + case VFIO_TYPE1_IOMMU: + case VFIO_TYPE1v2_IOMMU: + case VFIO_TYPE1_NESTING_IOMMU: + return 1; + case VFIO_DMA_CC_IOMMU: + if (!iommu) + return 0; + return vfio_domains_have_iommu_cache(iommu); + default: + return 0; + } +} + static int vfio_iommu_iova_add_cap(struct vfio_info_cap *caps, struct vfio_iommu_type1_info_cap_iova_range *cap_iovas, size_t size) @@ -2529,241 +2619,273 @@ return vfio_info_add_capability(caps, &cap_mig.header, sizeof(cap_mig)); } -static long vfio_iommu_type1_ioctl(void *iommu_data, - unsigned int cmd, unsigned long arg) +static int vfio_iommu_dma_avail_build_caps(struct vfio_iommu *iommu, + struct vfio_info_cap *caps) { - struct vfio_iommu *iommu = iommu_data; + struct vfio_iommu_type1_info_dma_avail cap_dma_avail; + + cap_dma_avail.header.id = VFIO_IOMMU_TYPE1_INFO_DMA_AVAIL; + cap_dma_avail.header.version = 1; + + cap_dma_avail.avail = iommu->dma_avail; + + return vfio_info_add_capability(caps, &cap_dma_avail.header, + sizeof(cap_dma_avail)); +} + +static int vfio_iommu_type1_get_info(struct vfio_iommu *iommu, + unsigned long arg) +{ + struct vfio_iommu_type1_info info; unsigned long minsz; + struct vfio_info_cap caps = { .buf = NULL, .size = 0 }; + unsigned long capsz; + int ret; - if (cmd == VFIO_CHECK_EXTENSION) { - switch (arg) { - case VFIO_TYPE1_IOMMU: - case VFIO_TYPE1v2_IOMMU: - case VFIO_TYPE1_NESTING_IOMMU: - return 1; - case VFIO_DMA_CC_IOMMU: - if (!iommu) - return 0; - return vfio_domains_have_iommu_cache(iommu); - default: - return 0; - } - } else if (cmd == VFIO_IOMMU_GET_INFO) { - struct vfio_iommu_type1_info info; - struct vfio_info_cap caps = { .buf = NULL, .size = 0 }; - unsigned long capsz; - int ret; + minsz = offsetofend(struct vfio_iommu_type1_info, iova_pgsizes); - minsz = offsetofend(struct vfio_iommu_type1_info, iova_pgsizes); + /* For backward compatibility, cannot require this */ + capsz = offsetofend(struct vfio_iommu_type1_info, cap_offset); - /* For backward compatibility, cannot require this */ - capsz = offsetofend(struct vfio_iommu_type1_info, cap_offset); + if (copy_from_user(&info, (void __user *)arg, minsz)) + return -EFAULT; - if (copy_from_user(&info, (void __user *)arg, minsz)) - return -EFAULT; + if (info.argsz < minsz) + return -EINVAL; - if (info.argsz < minsz) - return -EINVAL; + if (info.argsz >= capsz) { + minsz = capsz; + info.cap_offset = 0; /* output, no-recopy necessary */ + } - if (info.argsz >= capsz) { - minsz = capsz; - info.cap_offset = 0; /* output, no-recopy necessary */ - } + mutex_lock(&iommu->lock); + info.flags = VFIO_IOMMU_INFO_PGSIZES; - mutex_lock(&iommu->lock); - info.flags = VFIO_IOMMU_INFO_PGSIZES; + info.iova_pgsizes = iommu->pgsize_bitmap; - info.iova_pgsizes = iommu->pgsize_bitmap; + ret = vfio_iommu_migration_build_caps(iommu, &caps); - ret = vfio_iommu_migration_build_caps(iommu, &caps); + if (!ret) + ret = vfio_iommu_dma_avail_build_caps(iommu, &caps); - if (!ret) - ret = vfio_iommu_iova_build_caps(iommu, &caps); + if (!ret) + ret = vfio_iommu_iova_build_caps(iommu, &caps); - mutex_unlock(&iommu->lock); + mutex_unlock(&iommu->lock); - if (ret) - return ret; + if (ret) + return ret; - if (caps.size) { - info.flags |= VFIO_IOMMU_INFO_CAPS; + if (caps.size) { + info.flags |= VFIO_IOMMU_INFO_CAPS; - if (info.argsz < sizeof(info) + caps.size) { - info.argsz = sizeof(info) + caps.size; - } else { - vfio_info_cap_shift(&caps, sizeof(info)); - if (copy_to_user((void __user *)arg + - sizeof(info), caps.buf, - caps.size)) { - kfree(caps.buf); - return -EFAULT; - } - info.cap_offset = sizeof(info); + if (info.argsz < sizeof(info) + caps.size) { + info.argsz = sizeof(info) + caps.size; + } else { + vfio_info_cap_shift(&caps, sizeof(info)); + if (copy_to_user((void __user *)arg + + sizeof(info), caps.buf, + caps.size)) { + kfree(caps.buf); + return -EFAULT; } - - kfree(caps.buf); + info.cap_offset = sizeof(info); } - return copy_to_user((void __user *)arg, &info, minsz) ? - -EFAULT : 0; + kfree(caps.buf); + } - } else if (cmd == VFIO_IOMMU_MAP_DMA) { - struct vfio_iommu_type1_dma_map map; - uint32_t mask = VFIO_DMA_MAP_FLAG_READ | - VFIO_DMA_MAP_FLAG_WRITE; + return copy_to_user((void __user *)arg, &info, minsz) ? + -EFAULT : 0; +} - minsz = offsetofend(struct vfio_iommu_type1_dma_map, size); +static int vfio_iommu_type1_map_dma(struct vfio_iommu *iommu, + unsigned long arg) +{ + struct vfio_iommu_type1_dma_map map; + unsigned long minsz; + uint32_t mask = VFIO_DMA_MAP_FLAG_READ | VFIO_DMA_MAP_FLAG_WRITE; - if (copy_from_user(&map, (void __user *)arg, minsz)) - return -EFAULT; + minsz = offsetofend(struct vfio_iommu_type1_dma_map, size); - if (map.argsz < minsz || map.flags & ~mask) - return -EINVAL; + if (copy_from_user(&map, (void __user *)arg, minsz)) + return -EFAULT; - return vfio_dma_do_map(iommu, &map); + if (map.argsz < minsz || map.flags & ~mask) + return -EINVAL; - } else if (cmd == VFIO_IOMMU_UNMAP_DMA) { - struct vfio_iommu_type1_dma_unmap unmap; - struct vfio_bitmap bitmap = { 0 }; - int ret; + return vfio_dma_do_map(iommu, &map); +} - minsz = offsetofend(struct vfio_iommu_type1_dma_unmap, size); +static int vfio_iommu_type1_unmap_dma(struct vfio_iommu *iommu, + unsigned long arg) +{ + struct vfio_iommu_type1_dma_unmap unmap; + struct vfio_bitmap bitmap = { 0 }; + unsigned long minsz; + int ret; - if (copy_from_user(&unmap, (void __user *)arg, minsz)) - return -EFAULT; + minsz = offsetofend(struct vfio_iommu_type1_dma_unmap, size); - if (unmap.argsz < minsz || - unmap.flags & ~VFIO_DMA_UNMAP_FLAG_GET_DIRTY_BITMAP) - return -EINVAL; + if (copy_from_user(&unmap, (void __user *)arg, minsz)) + return -EFAULT; - if (unmap.flags & VFIO_DMA_UNMAP_FLAG_GET_DIRTY_BITMAP) { - unsigned long pgshift; + if (unmap.argsz < minsz || + unmap.flags & ~VFIO_DMA_UNMAP_FLAG_GET_DIRTY_BITMAP) + return -EINVAL; - if (unmap.argsz < (minsz + sizeof(bitmap))) - return -EINVAL; + if (unmap.flags & VFIO_DMA_UNMAP_FLAG_GET_DIRTY_BITMAP) { + unsigned long pgshift; - if (copy_from_user(&bitmap, - (void __user *)(arg + minsz), - sizeof(bitmap))) - return -EFAULT; + if (unmap.argsz < (minsz + sizeof(bitmap))) + return -EINVAL; - if (!access_ok((void __user *)bitmap.data, bitmap.size)) - return -EINVAL; + if (copy_from_user(&bitmap, + (void __user *)(arg + minsz), + sizeof(bitmap))) + return -EFAULT; - pgshift = __ffs(bitmap.pgsize); - ret = verify_bitmap_size(unmap.size >> pgshift, - bitmap.size); - if (ret) - return ret; - } + if (!access_ok((void __user *)bitmap.data, bitmap.size)) + return -EINVAL; - ret = vfio_dma_do_unmap(iommu, &unmap, &bitmap); + pgshift = __ffs(bitmap.pgsize); + ret = verify_bitmap_size(unmap.size >> pgshift, + bitmap.size); if (ret) return ret; + } - return copy_to_user((void __user *)arg, &unmap, minsz) ? + ret = vfio_dma_do_unmap(iommu, &unmap, &bitmap); + if (ret) + return ret; + + return copy_to_user((void __user *)arg, &unmap, minsz) ? -EFAULT : 0; - } else if (cmd == VFIO_IOMMU_DIRTY_PAGES) { - struct vfio_iommu_type1_dirty_bitmap dirty; - uint32_t mask = VFIO_IOMMU_DIRTY_PAGES_FLAG_START | - VFIO_IOMMU_DIRTY_PAGES_FLAG_STOP | - VFIO_IOMMU_DIRTY_PAGES_FLAG_GET_BITMAP; - int ret = 0; +} - if (!iommu->v2) - return -EACCES; +static int vfio_iommu_type1_dirty_pages(struct vfio_iommu *iommu, + unsigned long arg) +{ + struct vfio_iommu_type1_dirty_bitmap dirty; + uint32_t mask = VFIO_IOMMU_DIRTY_PAGES_FLAG_START | + VFIO_IOMMU_DIRTY_PAGES_FLAG_STOP | + VFIO_IOMMU_DIRTY_PAGES_FLAG_GET_BITMAP; + unsigned long minsz; + int ret = 0; - minsz = offsetofend(struct vfio_iommu_type1_dirty_bitmap, - flags); + if (!iommu->v2) + return -EACCES; - if (copy_from_user(&dirty, (void __user *)arg, minsz)) - return -EFAULT; + minsz = offsetofend(struct vfio_iommu_type1_dirty_bitmap, flags); - if (dirty.argsz < minsz || dirty.flags & ~mask) - return -EINVAL; + if (copy_from_user(&dirty, (void __user *)arg, minsz)) + return -EFAULT; - /* only one flag should be set at a time */ - if (__ffs(dirty.flags) != __fls(dirty.flags)) - return -EINVAL; + if (dirty.argsz < minsz || dirty.flags & ~mask) + return -EINVAL; - if (dirty.flags & VFIO_IOMMU_DIRTY_PAGES_FLAG_START) { - size_t pgsize; + /* only one flag should be set at a time */ + if (__ffs(dirty.flags) != __fls(dirty.flags)) + return -EINVAL; - mutex_lock(&iommu->lock); - pgsize = 1 << __ffs(iommu->pgsize_bitmap); - if (!iommu->dirty_page_tracking) { - ret = vfio_dma_bitmap_alloc_all(iommu, pgsize); - if (!ret) - iommu->dirty_page_tracking = true; - } - mutex_unlock(&iommu->lock); - return ret; - } else if (dirty.flags & VFIO_IOMMU_DIRTY_PAGES_FLAG_STOP) { - mutex_lock(&iommu->lock); - if (iommu->dirty_page_tracking) { - iommu->dirty_page_tracking = false; - vfio_dma_bitmap_free_all(iommu); - } - mutex_unlock(&iommu->lock); - return 0; - } else if (dirty.flags & - VFIO_IOMMU_DIRTY_PAGES_FLAG_GET_BITMAP) { - struct vfio_iommu_type1_dirty_bitmap_get range; - unsigned long pgshift; - size_t data_size = dirty.argsz - minsz; - size_t iommu_pgsize; + if (dirty.flags & VFIO_IOMMU_DIRTY_PAGES_FLAG_START) { + size_t pgsize; - if (!data_size || data_size < sizeof(range)) - return -EINVAL; + mutex_lock(&iommu->lock); + pgsize = 1 << __ffs(iommu->pgsize_bitmap); + if (!iommu->dirty_page_tracking) { + ret = vfio_dma_bitmap_alloc_all(iommu, pgsize); + if (!ret) + iommu->dirty_page_tracking = true; + } + mutex_unlock(&iommu->lock); + return ret; + } else if (dirty.flags & VFIO_IOMMU_DIRTY_PAGES_FLAG_STOP) { + mutex_lock(&iommu->lock); + if (iommu->dirty_page_tracking) { + iommu->dirty_page_tracking = false; + vfio_dma_bitmap_free_all(iommu); + } + mutex_unlock(&iommu->lock); + return 0; + } else if (dirty.flags & VFIO_IOMMU_DIRTY_PAGES_FLAG_GET_BITMAP) { + struct vfio_iommu_type1_dirty_bitmap_get range; + unsigned long pgshift; + size_t data_size = dirty.argsz - minsz; + size_t iommu_pgsize; - if (copy_from_user(&range, (void __user *)(arg + minsz), - sizeof(range))) - return -EFAULT; + if (!data_size || data_size < sizeof(range)) + return -EINVAL; - if (range.iova + range.size < range.iova) - return -EINVAL; - if (!access_ok((void __user *)range.bitmap.data, - range.bitmap.size)) - return -EINVAL; - - pgshift = __ffs(range.bitmap.pgsize); - ret = verify_bitmap_size(range.size >> pgshift, - range.bitmap.size); - if (ret) - return ret; + if (copy_from_user(&range, (void __user *)(arg + minsz), + sizeof(range))) + return -EFAULT; - mutex_lock(&iommu->lock); + if (range.iova + range.size < range.iova) + return -EINVAL; + if (!access_ok((void __user *)range.bitmap.data, + range.bitmap.size)) + return -EINVAL; - iommu_pgsize = (size_t)1 << __ffs(iommu->pgsize_bitmap); + pgshift = __ffs(range.bitmap.pgsize); + ret = verify_bitmap_size(range.size >> pgshift, + range.bitmap.size); + if (ret) + return ret; - /* allow only smallest supported pgsize */ - if (range.bitmap.pgsize != iommu_pgsize) { - ret = -EINVAL; - goto out_unlock; - } - if (range.iova & (iommu_pgsize - 1)) { - ret = -EINVAL; - goto out_unlock; - } - if (!range.size || range.size & (iommu_pgsize - 1)) { - ret = -EINVAL; - goto out_unlock; - } + mutex_lock(&iommu->lock); - if (iommu->dirty_page_tracking) - ret = vfio_iova_dirty_bitmap(range.bitmap.data, - iommu, range.iova, range.size, - range.bitmap.pgsize); - else - ret = -EINVAL; -out_unlock: - mutex_unlock(&iommu->lock); + iommu_pgsize = (size_t)1 << __ffs(iommu->pgsize_bitmap); - return ret; + /* allow only smallest supported pgsize */ + if (range.bitmap.pgsize != iommu_pgsize) { + ret = -EINVAL; + goto out_unlock; } + if (range.iova & (iommu_pgsize - 1)) { + ret = -EINVAL; + goto out_unlock; + } + if (!range.size || range.size & (iommu_pgsize - 1)) { + ret = -EINVAL; + goto out_unlock; + } + + if (iommu->dirty_page_tracking) + ret = vfio_iova_dirty_bitmap(range.bitmap.data, + iommu, range.iova, + range.size, + range.bitmap.pgsize); + else + ret = -EINVAL; +out_unlock: + mutex_unlock(&iommu->lock); + + return ret; } - return -ENOTTY; + return -EINVAL; +} + +static long vfio_iommu_type1_ioctl(void *iommu_data, + unsigned int cmd, unsigned long arg) +{ + struct vfio_iommu *iommu = iommu_data; + + switch (cmd) { + case VFIO_CHECK_EXTENSION: + return vfio_iommu_type1_check_extension(iommu, arg); + case VFIO_IOMMU_GET_INFO: + return vfio_iommu_type1_get_info(iommu, arg); + case VFIO_IOMMU_MAP_DMA: + return vfio_iommu_type1_map_dma(iommu, arg); + case VFIO_IOMMU_UNMAP_DMA: + return vfio_iommu_type1_unmap_dma(iommu, arg); + case VFIO_IOMMU_DIRTY_PAGES: + return vfio_iommu_type1_dirty_pages(iommu, arg); + default: + return -ENOTTY; + } } static int vfio_iommu_type1_register_notifier(void *iommu_data, @@ -2838,7 +2960,8 @@ * size */ bitmap_set(dma->bitmap, offset >> pgshift, - *copied >> pgshift); + ((offset + *copied - 1) >> pgshift) - + (offset >> pgshift) + 1); } } else *copied = copy_from_user(data, (void __user *)vaddr, --- linux-azure-5.8-5.8.0.orig/drivers/vhost/net.c +++ linux-azure-5.8-5.8.0/drivers/vhost/net.c @@ -863,6 +863,7 @@ size_t len, total_len = 0; int err; struct vhost_net_ubuf_ref *uninitialized_var(ubufs); + struct ubuf_info *ubuf; bool zcopy_used; int sent_pkts = 0; @@ -895,9 +896,7 @@ /* use msg_control to pass vhost zerocopy ubuf info to skb */ if (zcopy_used) { - struct ubuf_info *ubuf; ubuf = nvq->ubuf_info + nvq->upend_idx; - vq->heads[nvq->upend_idx].id = cpu_to_vhost32(vq, head); vq->heads[nvq->upend_idx].len = VHOST_DMA_IN_PROGRESS; ubuf->callback = vhost_zerocopy_callback; @@ -927,7 +926,8 @@ err = sock->ops->sendmsg(sock, &msg, len); if (unlikely(err < 0)) { if (zcopy_used) { - vhost_net_ubuf_put(ubufs); + if (vq->heads[ubuf->desc].len == VHOST_DMA_IN_PROGRESS) + vhost_net_ubuf_put(ubufs); nvq->upend_idx = ((unsigned)nvq->upend_idx - 1) % UIO_MAXIOV; } --- linux-azure-5.8-5.8.0.orig/drivers/vhost/scsi.c +++ linux-azure-5.8-5.8.0/drivers/vhost/scsi.c @@ -52,7 +52,6 @@ #define VHOST_SCSI_VERSION "v0.1" #define VHOST_SCSI_NAMELEN 256 #define VHOST_SCSI_MAX_CDB_SIZE 32 -#define VHOST_SCSI_DEFAULT_TAGS 256 #define VHOST_SCSI_PREALLOC_SGLS 2048 #define VHOST_SCSI_PREALLOC_UPAGES 2048 #define VHOST_SCSI_PREALLOC_PROT_SGLS 2048 @@ -189,6 +188,9 @@ * Writers must also take dev mutex and flush under it. */ int inflight_idx; + struct vhost_scsi_cmd *scsi_cmds; + struct sbitmap scsi_tags; + int max_cmds; }; struct vhost_scsi { @@ -320,11 +322,13 @@ return 1; } -static void vhost_scsi_release_cmd(struct se_cmd *se_cmd) +static void vhost_scsi_release_cmd_res(struct se_cmd *se_cmd) { struct vhost_scsi_cmd *tv_cmd = container_of(se_cmd, struct vhost_scsi_cmd, tvc_se_cmd); - struct se_session *se_sess = tv_cmd->tvc_nexus->tvn_se_sess; + struct vhost_scsi_virtqueue *svq = container_of(tv_cmd->tvc_vq, + struct vhost_scsi_virtqueue, vq); + struct vhost_scsi_inflight *inflight = tv_cmd->inflight; int i; if (tv_cmd->tvc_sgl_count) { @@ -336,8 +340,18 @@ put_page(sg_page(&tv_cmd->tvc_prot_sgl[i])); } - vhost_scsi_put_inflight(tv_cmd->inflight); - target_free_tag(se_sess, se_cmd); + sbitmap_clear_bit(&svq->scsi_tags, se_cmd->map_tag); + vhost_scsi_put_inflight(inflight); +} + +static void vhost_scsi_release_cmd(struct se_cmd *se_cmd) +{ + struct vhost_scsi_cmd *cmd = container_of(se_cmd, + struct vhost_scsi_cmd, tvc_se_cmd); + struct vhost_scsi *vs = cmd->tvc_vhost; + + llist_add(&cmd->tvc_completion_list, &vs->vs_completion_list); + vhost_work_queue(&vs->dev, &vs->vs_completion_work); } static u32 vhost_scsi_sess_get_index(struct se_session *se_sess) @@ -362,28 +376,15 @@ return 0; } -static void vhost_scsi_complete_cmd(struct vhost_scsi_cmd *cmd) -{ - struct vhost_scsi *vs = cmd->tvc_vhost; - - llist_add(&cmd->tvc_completion_list, &vs->vs_completion_list); - - vhost_work_queue(&vs->dev, &vs->vs_completion_work); -} - static int vhost_scsi_queue_data_in(struct se_cmd *se_cmd) { - struct vhost_scsi_cmd *cmd = container_of(se_cmd, - struct vhost_scsi_cmd, tvc_se_cmd); - vhost_scsi_complete_cmd(cmd); + transport_generic_free_cmd(se_cmd, 0); return 0; } static int vhost_scsi_queue_status(struct se_cmd *se_cmd) { - struct vhost_scsi_cmd *cmd = container_of(se_cmd, - struct vhost_scsi_cmd, tvc_se_cmd); - vhost_scsi_complete_cmd(cmd); + transport_generic_free_cmd(se_cmd, 0); return 0; } @@ -429,15 +430,6 @@ return evt; } -static void vhost_scsi_free_cmd(struct vhost_scsi_cmd *cmd) -{ - struct se_cmd *se_cmd = &cmd->tvc_se_cmd; - - /* TODO locking against target/backend threads? */ - transport_generic_free_cmd(se_cmd, 0); - -} - static int vhost_scsi_check_stop_free(struct se_cmd *se_cmd) { return target_put_sess_cmd(se_cmd); @@ -556,7 +548,7 @@ } else pr_err("Faulted on virtio_scsi_cmd_resp\n"); - vhost_scsi_free_cmd(cmd); + vhost_scsi_release_cmd_res(se_cmd); } vq = -1; @@ -566,31 +558,31 @@ } static struct vhost_scsi_cmd * -vhost_scsi_get_tag(struct vhost_virtqueue *vq, struct vhost_scsi_tpg *tpg, +vhost_scsi_get_cmd(struct vhost_virtqueue *vq, struct vhost_scsi_tpg *tpg, unsigned char *cdb, u64 scsi_tag, u16 lun, u8 task_attr, u32 exp_data_len, int data_direction) { + struct vhost_scsi_virtqueue *svq = container_of(vq, + struct vhost_scsi_virtqueue, vq); struct vhost_scsi_cmd *cmd; struct vhost_scsi_nexus *tv_nexus; - struct se_session *se_sess; struct scatterlist *sg, *prot_sg; struct page **pages; - int tag, cpu; + int tag; tv_nexus = tpg->tpg_nexus; if (!tv_nexus) { pr_err("Unable to locate active struct vhost_scsi_nexus\n"); return ERR_PTR(-EIO); } - se_sess = tv_nexus->tvn_se_sess; - tag = sbitmap_queue_get(&se_sess->sess_tag_pool, &cpu); + tag = sbitmap_get(&svq->scsi_tags, 0, false); if (tag < 0) { pr_err("Unable to obtain tag for vhost_scsi_cmd\n"); return ERR_PTR(-ENOMEM); } - cmd = &((struct vhost_scsi_cmd *)se_sess->sess_cmd_map)[tag]; + cmd = &svq->scsi_cmds[tag]; sg = cmd->tvc_sgl; prot_sg = cmd->tvc_prot_sgl; pages = cmd->tvc_upages; @@ -599,7 +591,6 @@ cmd->tvc_prot_sgl = prot_sg; cmd->tvc_upages = pages; cmd->tvc_se_cmd.map_tag = tag; - cmd->tvc_se_cmd.map_cpu = cpu; cmd->tvc_tag = scsi_tag; cmd->tvc_lun = lun; cmd->tvc_task_attr = task_attr; @@ -1065,11 +1056,11 @@ scsi_command_size(cdb), VHOST_SCSI_MAX_CDB_SIZE); goto err; } - cmd = vhost_scsi_get_tag(vq, tpg, cdb, tag, lun, task_attr, + cmd = vhost_scsi_get_cmd(vq, tpg, cdb, tag, lun, task_attr, exp_data_len + prot_bytes, data_direction); if (IS_ERR(cmd)) { - vq_err(vq, "vhost_scsi_get_tag failed %ld\n", + vq_err(vq, "vhost_scsi_get_cmd failed %ld\n", PTR_ERR(cmd)); goto err; } @@ -1088,7 +1079,7 @@ &prot_iter, exp_data_len, &data_iter))) { vq_err(vq, "Failed to map iov to sgl\n"); - vhost_scsi_release_cmd(&cmd->tvc_se_cmd); + vhost_scsi_release_cmd_res(&cmd->tvc_se_cmd); goto err; } } @@ -1373,6 +1364,83 @@ wait_for_completion(&old_inflight[i]->comp); } +static void vhost_scsi_destroy_vq_cmds(struct vhost_virtqueue *vq) +{ + struct vhost_scsi_virtqueue *svq = container_of(vq, + struct vhost_scsi_virtqueue, vq); + struct vhost_scsi_cmd *tv_cmd; + unsigned int i; + + if (!svq->scsi_cmds) + return; + + for (i = 0; i < svq->max_cmds; i++) { + tv_cmd = &svq->scsi_cmds[i]; + + kfree(tv_cmd->tvc_sgl); + kfree(tv_cmd->tvc_prot_sgl); + kfree(tv_cmd->tvc_upages); + } + + sbitmap_free(&svq->scsi_tags); + kfree(svq->scsi_cmds); + svq->scsi_cmds = NULL; +} + +static int vhost_scsi_setup_vq_cmds(struct vhost_virtqueue *vq, int max_cmds) +{ + struct vhost_scsi_virtqueue *svq = container_of(vq, + struct vhost_scsi_virtqueue, vq); + struct vhost_scsi_cmd *tv_cmd; + unsigned int i; + + if (svq->scsi_cmds) + return 0; + + if (sbitmap_init_node(&svq->scsi_tags, max_cmds, -1, GFP_KERNEL, + NUMA_NO_NODE)) + return -ENOMEM; + svq->max_cmds = max_cmds; + + svq->scsi_cmds = kcalloc(max_cmds, sizeof(*tv_cmd), GFP_KERNEL); + if (!svq->scsi_cmds) { + sbitmap_free(&svq->scsi_tags); + return -ENOMEM; + } + + for (i = 0; i < max_cmds; i++) { + tv_cmd = &svq->scsi_cmds[i]; + + tv_cmd->tvc_sgl = kcalloc(VHOST_SCSI_PREALLOC_SGLS, + sizeof(struct scatterlist), + GFP_KERNEL); + if (!tv_cmd->tvc_sgl) { + pr_err("Unable to allocate tv_cmd->tvc_sgl\n"); + goto out; + } + + tv_cmd->tvc_upages = kcalloc(VHOST_SCSI_PREALLOC_UPAGES, + sizeof(struct page *), + GFP_KERNEL); + if (!tv_cmd->tvc_upages) { + pr_err("Unable to allocate tv_cmd->tvc_upages\n"); + goto out; + } + + tv_cmd->tvc_prot_sgl = kcalloc(VHOST_SCSI_PREALLOC_PROT_SGLS, + sizeof(struct scatterlist), + GFP_KERNEL); + if (!tv_cmd->tvc_prot_sgl) { + pr_err("Unable to allocate tv_cmd->tvc_prot_sgl\n"); + goto out; + } + } + return 0; +out: + vhost_scsi_destroy_vq_cmds(vq); + return -ENOMEM; +} + /* * Called from vhost_scsi_ioctl() context to walk the list of available * vhost_scsi_tpg with an active struct vhost_scsi_nexus @@ -1427,10 +1495,9 @@ if (!strcmp(tv_tport->tport_name, t->vhost_wwpn)) { if (vs->vs_tpg && vs->vs_tpg[tpg->tport_tpgt]) { - kfree(vs_tpg); mutex_unlock(&tpg->tv_tpg_mutex); ret = -EEXIST; - goto out; + goto undepend; } /* * In order to ensure individual vhost-scsi configfs @@ -1442,9 +1509,8 @@ ret = target_depend_item(&se_tpg->tpg_group.cg_item); if (ret) { pr_warn("target_depend_item() failed: %d\n", ret); - kfree(vs_tpg); mutex_unlock(&tpg->tv_tpg_mutex); - goto out; + goto undepend; } tpg->tv_tpg_vhost_count++; tpg->vhost_scsi = vs; @@ -1457,6 +1523,17 @@ if (match) { memcpy(vs->vs_vhost_wwpn, t->vhost_wwpn, sizeof(vs->vs_vhost_wwpn)); + + for (i = VHOST_SCSI_VQ_IO; i < VHOST_SCSI_MAX_VQ; i++) { + vq = &vs->vqs[i].vq; + if (!vhost_vq_is_setup(vq)) + continue; + + ret = vhost_scsi_setup_vq_cmds(vq, vq->num); + if (ret) + goto destroy_vq_cmds; + } + for (i = 0; i < VHOST_SCSI_MAX_VQ; i++) { vq = &vs->vqs[i].vq; mutex_lock(&vq->mutex); @@ -1476,7 +1553,22 @@ vhost_scsi_flush(vs); kfree(vs->vs_tpg); vs->vs_tpg = vs_tpg; + goto out; +destroy_vq_cmds: + for (i--; i >= VHOST_SCSI_VQ_IO; i--) { + if (!vhost_vq_get_backend(&vs->vqs[i].vq)) + vhost_scsi_destroy_vq_cmds(&vs->vqs[i].vq); + } +undepend: + for (i = 0; i < VHOST_SCSI_MAX_TARGET; i++) { + tpg = vs_tpg[i]; + if (tpg) { + tpg->tv_tpg_vhost_count--; + target_undepend_item(&tpg->se_tpg.tpg_group.cg_item); + } + } + kfree(vs_tpg); out: mutex_unlock(&vs->dev.mutex); mutex_unlock(&vhost_scsi_mutex); @@ -1549,6 +1641,12 @@ mutex_lock(&vq->mutex); vhost_vq_set_backend(vq, NULL); mutex_unlock(&vq->mutex); + /* + * Make sure cmds are not running before tearing them + * down. + */ + vhost_scsi_flush(vs); + vhost_scsi_destroy_vq_cmds(vq); } } /* @@ -1842,23 +1940,6 @@ mutex_unlock(&vhost_scsi_mutex); } -static void vhost_scsi_free_cmd_map_res(struct se_session *se_sess) -{ - struct vhost_scsi_cmd *tv_cmd; - unsigned int i; - - if (!se_sess->sess_cmd_map) - return; - - for (i = 0; i < VHOST_SCSI_DEFAULT_TAGS; i++) { - tv_cmd = &((struct vhost_scsi_cmd *)se_sess->sess_cmd_map)[i]; - - kfree(tv_cmd->tvc_sgl); - kfree(tv_cmd->tvc_prot_sgl); - kfree(tv_cmd->tvc_upages); - } -} - static ssize_t vhost_scsi_tpg_attrib_fabric_prot_type_store( struct config_item *item, const char *page, size_t count) { @@ -1898,45 +1979,6 @@ NULL, }; -static int vhost_scsi_nexus_cb(struct se_portal_group *se_tpg, - struct se_session *se_sess, void *p) -{ - struct vhost_scsi_cmd *tv_cmd; - unsigned int i; - - for (i = 0; i < VHOST_SCSI_DEFAULT_TAGS; i++) { - tv_cmd = &((struct vhost_scsi_cmd *)se_sess->sess_cmd_map)[i]; - - tv_cmd->tvc_sgl = kcalloc(VHOST_SCSI_PREALLOC_SGLS, - sizeof(struct scatterlist), - GFP_KERNEL); - if (!tv_cmd->tvc_sgl) { - pr_err("Unable to allocate tv_cmd->tvc_sgl\n"); - goto out; - } - - tv_cmd->tvc_upages = kcalloc(VHOST_SCSI_PREALLOC_UPAGES, - sizeof(struct page *), - GFP_KERNEL); - if (!tv_cmd->tvc_upages) { - pr_err("Unable to allocate tv_cmd->tvc_upages\n"); - goto out; - } - - tv_cmd->tvc_prot_sgl = kcalloc(VHOST_SCSI_PREALLOC_PROT_SGLS, - sizeof(struct scatterlist), - GFP_KERNEL); - if (!tv_cmd->tvc_prot_sgl) { - pr_err("Unable to allocate tv_cmd->tvc_prot_sgl\n"); - goto out; - } - } - return 0; -out: - vhost_scsi_free_cmd_map_res(se_sess); - return -ENOMEM; -} - static int vhost_scsi_make_nexus(struct vhost_scsi_tpg *tpg, const char *name) { @@ -1960,12 +2002,9 @@ * struct se_node_acl for the vhost_scsi struct se_portal_group with * the SCSI Initiator port name of the passed configfs group 'name'. */ - tv_nexus->tvn_se_sess = target_setup_session(&tpg->se_tpg, - VHOST_SCSI_DEFAULT_TAGS, - sizeof(struct vhost_scsi_cmd), + tv_nexus->tvn_se_sess = target_setup_session(&tpg->se_tpg, 0, 0, TARGET_PROT_DIN_PASS | TARGET_PROT_DOUT_PASS, - (unsigned char *)name, tv_nexus, - vhost_scsi_nexus_cb); + (unsigned char *)name, tv_nexus, NULL); if (IS_ERR(tv_nexus->tvn_se_sess)) { mutex_unlock(&tpg->tv_tpg_mutex); kfree(tv_nexus); @@ -2015,7 +2054,6 @@ " %s Initiator Port: %s\n", vhost_scsi_dump_proto_id(tpg->tport), tv_nexus->tvn_se_sess->se_node_acl->initiatorname); - vhost_scsi_free_cmd_map_res(se_sess); /* * Release the SCSI I_T Nexus to the emulated vhost Target Port */ --- linux-azure-5.8-5.8.0.orig/drivers/vhost/vdpa.c +++ linux-azure-5.8-5.8.0/drivers/vhost/vdpa.c @@ -304,8 +304,10 @@ static void vhost_vdpa_config_put(struct vhost_vdpa *v) { - if (v->config_ctx) + if (v->config_ctx) { eventfd_ctx_put(v->config_ctx); + v->config_ctx = NULL; + } } static long vhost_vdpa_set_config_call(struct vhost_vdpa *v, u32 __user *argp) @@ -527,6 +529,11 @@ r = iommu_map(v->domain, iova, pa, size, perm_to_iommu_flags(perm)); + if (r) + vhost_iotlb_del_range(dev->iotlb, iova, iova + size - 1); + else + atomic64_add(size >> PAGE_SHIFT, &dev->mm->pinned_vm); + return r; } @@ -555,14 +562,16 @@ unsigned long list_size = PAGE_SIZE / sizeof(struct page *); unsigned int gup_flags = FOLL_LONGTERM; unsigned long npages, cur_base, map_pfn, last_pfn = 0; - unsigned long locked, lock_limit, pinned, i; + unsigned long lock_limit, sz2pin, nchunks, i; u64 iova = msg->iova; + long pinned; int ret = 0; if (vhost_iotlb_itree_first(iotlb, msg->iova, msg->iova + msg->size - 1)) return -EEXIST; + /* Limit the use of memory for bookkeeping */ page_list = (struct page **) __get_free_page(GFP_KERNEL); if (!page_list) return -ENOMEM; @@ -571,52 +580,75 @@ gup_flags |= FOLL_WRITE; npages = PAGE_ALIGN(msg->size + (iova & ~PAGE_MASK)) >> PAGE_SHIFT; - if (!npages) - return -EINVAL; + if (!npages) { + ret = -EINVAL; + goto free; + } mmap_read_lock(dev->mm); - locked = atomic64_add_return(npages, &dev->mm->pinned_vm); lock_limit = rlimit(RLIMIT_MEMLOCK) >> PAGE_SHIFT; - - if (locked > lock_limit) { + if (npages + atomic64_read(&dev->mm->pinned_vm) > lock_limit) { ret = -ENOMEM; - goto out; + goto unlock; } cur_base = msg->uaddr & PAGE_MASK; iova &= PAGE_MASK; + nchunks = 0; while (npages) { - pinned = min_t(unsigned long, npages, list_size); - ret = pin_user_pages(cur_base, pinned, - gup_flags, page_list, NULL); - if (ret != pinned) + sz2pin = min_t(unsigned long, npages, list_size); + pinned = pin_user_pages(cur_base, sz2pin, + gup_flags, page_list, NULL); + if (sz2pin != pinned) { + if (pinned < 0) { + ret = pinned; + } else { + unpin_user_pages(page_list, pinned); + ret = -ENOMEM; + } goto out; + } + nchunks++; if (!last_pfn) map_pfn = page_to_pfn(page_list[0]); - for (i = 0; i < ret; i++) { + for (i = 0; i < pinned; i++) { unsigned long this_pfn = page_to_pfn(page_list[i]); u64 csize; if (last_pfn && (this_pfn != last_pfn + 1)) { /* Pin a contiguous chunk of memory */ csize = (last_pfn - map_pfn + 1) << PAGE_SHIFT; - if (vhost_vdpa_map(v, iova, csize, - map_pfn << PAGE_SHIFT, - msg->perm)) + ret = vhost_vdpa_map(v, iova, csize, + map_pfn << PAGE_SHIFT, + msg->perm); + if (ret) { + /* + * Unpin the pages that are left unmapped + * from this point on in the current + * page_list. The remaining outstanding + * ones which may stride across several + * chunks will be covered in the common + * error path subsequently. + */ + unpin_user_pages(&page_list[i], + pinned - i); goto out; + } + map_pfn = this_pfn; iova += csize; + nchunks = 0; } last_pfn = this_pfn; } - cur_base += ret << PAGE_SHIFT; - npages -= ret; + cur_base += pinned << PAGE_SHIFT; + npages -= pinned; } /* Pin the rest chunk */ @@ -624,10 +656,27 @@ map_pfn << PAGE_SHIFT, msg->perm); out: if (ret) { + if (nchunks) { + unsigned long pfn; + + /* + * Unpin the outstanding pages which are yet to be + * mapped but haven't due to vdpa_map() or + * pin_user_pages() failure. + * + * Mapped pages are accounted in vdpa_map(), hence + * the corresponding unpinning will be handled by + * vdpa_unmap(). + */ + WARN_ON(!last_pfn); + for (pfn = map_pfn; pfn <= last_pfn; pfn++) + unpin_user_page(pfn_to_page(pfn)); + } vhost_vdpa_unmap(v, msg->iova, msg->size); - atomic64_sub(npages, &dev->mm->pinned_vm); } +unlock: mmap_read_unlock(dev->mm); +free: free_page((unsigned long)page_list); return ret; } --- linux-azure-5.8-5.8.0.orig/drivers/vhost/vhost.c +++ linux-azure-5.8-5.8.0/drivers/vhost/vhost.c @@ -298,6 +298,12 @@ __vhost_vq_meta_reset(d->vqs[i]); } +bool vhost_vq_is_setup(struct vhost_virtqueue *vq) +{ + return vq->avail && vq->desc && vq->used && vhost_vq_access_ok(vq); +} +EXPORT_SYMBOL_GPL(vhost_vq_is_setup); + static void vhost_vq_reset(struct vhost_dev *dev, struct vhost_virtqueue *vq) { @@ -1283,6 +1289,11 @@ vring_used_t __user *used) { + /* If an IOTLB device is present, the vring addresses are + * GIOVAs. Access validation occurs at prefetch time. */ + if (vq->iotlb) + return true; + return access_ok(desc, vhost_get_desc_size(vq, num)) && access_ok(avail, vhost_get_avail_size(vq, num)) && access_ok(used, vhost_get_used_size(vq, num)); @@ -1376,10 +1387,6 @@ if (!vq_log_access_ok(vq, vq->log_base)) return false; - /* Access validation occurs at prefetch time with IOTLB */ - if (vq->iotlb) - return true; - return vq_access_ok(vq, vq->num, vq->desc, vq->avail, vq->used); } EXPORT_SYMBOL_GPL(vhost_vq_access_ok); @@ -1511,8 +1518,7 @@ /* Also validate log access for used ring if enabled. */ if ((a.flags & (0x1 << VHOST_VRING_F_LOG)) && !log_access_ok(vq->log_base, a.log_guest_addr, - sizeof *vq->used + - vq->num * sizeof *vq->used->ring)) + vhost_get_used_size(vq, vq->num))) return -EINVAL; } --- linux-azure-5.8-5.8.0.orig/drivers/vhost/vhost.h +++ linux-azure-5.8-5.8.0/drivers/vhost/vhost.h @@ -183,6 +183,7 @@ struct vhost_log *log, unsigned int *log_num); void vhost_discard_vq_desc(struct vhost_virtqueue *, int n); +bool vhost_vq_is_setup(struct vhost_virtqueue *vq); int vhost_vq_init_access(struct vhost_virtqueue *); int vhost_add_used(struct vhost_virtqueue *, unsigned int head, int len); int vhost_add_used_n(struct vhost_virtqueue *, struct vring_used_elem *heads, --- linux-azure-5.8-5.8.0.orig/drivers/vhost/vringh.c +++ linux-azure-5.8-5.8.0/drivers/vhost/vringh.c @@ -284,13 +284,14 @@ desc_max = vrh->vring.num; up_next = -1; + /* You must want something! */ + if (WARN_ON(!riov && !wiov)) + return -EINVAL; + if (riov) riov->i = riov->used = 0; - else if (wiov) + if (wiov) wiov->i = wiov->used = 0; - else - /* You must want something! */ - BUG(); for (;;) { void *addr; --- linux-azure-5.8-5.8.0.orig/drivers/video/backlight/sky81452-backlight.c +++ linux-azure-5.8-5.8.0/drivers/video/backlight/sky81452-backlight.c @@ -196,6 +196,7 @@ num_entry); if (ret < 0) { dev_err(dev, "led-sources node is invalid.\n"); + of_node_put(np); return ERR_PTR(-EINVAL); } --- linux-azure-5.8-5.8.0.orig/drivers/video/console/Kconfig +++ linux-azure-5.8-5.8.0/drivers/video/console/Kconfig @@ -22,52 +22,6 @@ Say Y. -config VGACON_SOFT_SCROLLBACK - bool "Enable Scrollback Buffer in System RAM" - depends on VGA_CONSOLE - default n - help - The scrollback buffer of the standard VGA console is located in - the VGA RAM. The size of this RAM is fixed and is quite small. - If you require a larger scrollback buffer, this can be placed in - System RAM which is dynamically allocated during initialization. - Placing the scrollback buffer in System RAM will slightly slow - down the console. - - If you want this feature, say 'Y' here and enter the amount of - RAM to allocate for this buffer. If unsure, say 'N'. - -config VGACON_SOFT_SCROLLBACK_SIZE - int "Scrollback Buffer Size (in KB)" - depends on VGACON_SOFT_SCROLLBACK - range 1 1024 - default "64" - help - Enter the amount of System RAM to allocate for scrollback - buffers of VGA consoles. Each 64KB will give you approximately - 16 80x25 screenfuls of scrollback buffer. - -config VGACON_SOFT_SCROLLBACK_PERSISTENT_ENABLE_BY_DEFAULT - bool "Persistent Scrollback History for each console by default" - depends on VGACON_SOFT_SCROLLBACK - default n - help - Say Y here if the scrollback history should persist by default when - switching between consoles. Otherwise, the scrollback history will be - flushed each time the console is switched. This feature can also be - enabled using the boot command line parameter - 'vgacon.scrollback_persistent=1'. - - This feature might break your tool of choice to flush the scrollback - buffer, e.g. clear(1) will work fine but Debian's clear_console(1) - will be broken, which might cause security issues. - You can use the escape sequence \e[3J instead if this feature is - activated. - - Note that a buffer of VGACON_SOFT_SCROLLBACK_SIZE is taken for each - created tty device. - So if you use a RAM-constrained system, say N here. - config MDA_CONSOLE depends on !M68K && !PARISC && ISA tristate "MDA text console (dual-headed)" --- linux-azure-5.8-5.8.0.orig/drivers/video/console/newport_con.c +++ linux-azure-5.8-5.8.0/drivers/video/console/newport_con.c @@ -31,17 +31,14 @@ #include #include -#define FONT_DATA ((unsigned char *)font_vga_8x16.data) +#define NEWPORT_LEN 0x10000 -/* borrowed from fbcon.c */ -#define REFCOUNT(fd) (((int *)(fd))[-1]) -#define FNTSIZE(fd) (((int *)(fd))[-2]) -#define FNTCHARCNT(fd) (((int *)(fd))[-3]) -#define FONT_EXTRA_WORDS 3 +#define FONT_DATA ((unsigned char *)font_vga_8x16.data) static unsigned char *font_data[MAX_NR_CONSOLES]; static struct newport_regs *npregs; +static unsigned long newport_addr; static int logo_active; static int topscan; @@ -519,6 +516,7 @@ FNTSIZE(new_data) = size; FNTCHARCNT(new_data) = op->charcount; REFCOUNT(new_data) = 0; /* usage counter */ + FNTSUM(new_data) = 0; p = new_data; for (i = 0; i < op->charcount; i++) { @@ -701,7 +699,6 @@ static int newport_probe(struct gio_device *dev, const struct gio_device_id *id) { - unsigned long newport_addr; int err; if (!dev->resource.start) @@ -711,7 +708,7 @@ return -EBUSY; /* we only support one Newport as console */ newport_addr = dev->resource.start + 0xF0000; - if (!request_mem_region(newport_addr, 0x10000, "Newport")) + if (!request_mem_region(newport_addr, NEWPORT_LEN, "Newport")) return -ENODEV; npregs = (struct newport_regs *)/* ioremap cannot fail */ @@ -719,6 +716,11 @@ console_lock(); err = do_take_over_console(&newport_con, 0, MAX_NR_CONSOLES - 1, 1); console_unlock(); + + if (err) { + iounmap((void *)npregs); + release_mem_region(newport_addr, NEWPORT_LEN); + } return err; } @@ -726,6 +728,7 @@ { give_up_console(&newport_con); iounmap((void *)npregs); + release_mem_region(newport_addr, NEWPORT_LEN); } static struct gio_device_id newport_ids[] = { --- linux-azure-5.8-5.8.0.orig/drivers/video/console/vgacon.c +++ linux-azure-5.8-5.8.0/drivers/video/console/vgacon.c @@ -165,210 +165,6 @@ write_vga(12, (c->vc_visible_origin - vga_vram_base) / 2); } -#ifdef CONFIG_VGACON_SOFT_SCROLLBACK -/* software scrollback */ -struct vgacon_scrollback_info { - void *data; - int tail; - int size; - int rows; - int cnt; - int cur; - int save; - int restore; -}; - -static struct vgacon_scrollback_info *vgacon_scrollback_cur; -static struct vgacon_scrollback_info vgacon_scrollbacks[MAX_NR_CONSOLES]; -static bool scrollback_persistent = \ - IS_ENABLED(CONFIG_VGACON_SOFT_SCROLLBACK_PERSISTENT_ENABLE_BY_DEFAULT); -module_param_named(scrollback_persistent, scrollback_persistent, bool, 0000); -MODULE_PARM_DESC(scrollback_persistent, "Enable persistent scrollback for all vga consoles"); - -static void vgacon_scrollback_reset(int vc_num, size_t reset_size) -{ - struct vgacon_scrollback_info *scrollback = &vgacon_scrollbacks[vc_num]; - - if (scrollback->data && reset_size > 0) - memset(scrollback->data, 0, reset_size); - - scrollback->cnt = 0; - scrollback->tail = 0; - scrollback->cur = 0; -} - -static void vgacon_scrollback_init(int vc_num) -{ - int pitch = vga_video_num_columns * 2; - size_t size = CONFIG_VGACON_SOFT_SCROLLBACK_SIZE * 1024; - int rows = size / pitch; - void *data; - - data = kmalloc_array(CONFIG_VGACON_SOFT_SCROLLBACK_SIZE, 1024, - GFP_NOWAIT); - - vgacon_scrollbacks[vc_num].data = data; - vgacon_scrollback_cur = &vgacon_scrollbacks[vc_num]; - - vgacon_scrollback_cur->rows = rows - 1; - vgacon_scrollback_cur->size = rows * pitch; - - vgacon_scrollback_reset(vc_num, size); -} - -static void vgacon_scrollback_switch(int vc_num) -{ - if (!scrollback_persistent) - vc_num = 0; - - if (!vgacon_scrollbacks[vc_num].data) { - vgacon_scrollback_init(vc_num); - } else { - if (scrollback_persistent) { - vgacon_scrollback_cur = &vgacon_scrollbacks[vc_num]; - } else { - size_t size = CONFIG_VGACON_SOFT_SCROLLBACK_SIZE * 1024; - - vgacon_scrollback_reset(vc_num, size); - } - } -} - -static void vgacon_scrollback_startup(void) -{ - vgacon_scrollback_cur = &vgacon_scrollbacks[0]; - vgacon_scrollback_init(0); -} - -static void vgacon_scrollback_update(struct vc_data *c, int t, int count) -{ - void *p; - - if (!vgacon_scrollback_cur->data || !vgacon_scrollback_cur->size || - c->vc_num != fg_console) - return; - - p = (void *) (c->vc_origin + t * c->vc_size_row); - - while (count--) { - scr_memcpyw(vgacon_scrollback_cur->data + - vgacon_scrollback_cur->tail, - p, c->vc_size_row); - - vgacon_scrollback_cur->cnt++; - p += c->vc_size_row; - vgacon_scrollback_cur->tail += c->vc_size_row; - - if (vgacon_scrollback_cur->tail >= vgacon_scrollback_cur->size) - vgacon_scrollback_cur->tail = 0; - - if (vgacon_scrollback_cur->cnt > vgacon_scrollback_cur->rows) - vgacon_scrollback_cur->cnt = vgacon_scrollback_cur->rows; - - vgacon_scrollback_cur->cur = vgacon_scrollback_cur->cnt; - } -} - -static void vgacon_restore_screen(struct vc_data *c) -{ - c->vc_origin = c->vc_visible_origin; - vgacon_scrollback_cur->save = 0; - - if (!vga_is_gfx && !vgacon_scrollback_cur->restore) { - scr_memcpyw((u16 *) c->vc_origin, (u16 *) c->vc_screenbuf, - c->vc_screenbuf_size > vga_vram_size ? - vga_vram_size : c->vc_screenbuf_size); - vgacon_scrollback_cur->restore = 1; - vgacon_scrollback_cur->cur = vgacon_scrollback_cur->cnt; - } -} - -static void vgacon_scrolldelta(struct vc_data *c, int lines) -{ - int start, end, count, soff; - - if (!lines) { - vgacon_restore_screen(c); - return; - } - - if (!vgacon_scrollback_cur->data) - return; - - if (!vgacon_scrollback_cur->save) { - vgacon_cursor(c, CM_ERASE); - vgacon_save_screen(c); - c->vc_origin = (unsigned long)c->vc_screenbuf; - vgacon_scrollback_cur->save = 1; - } - - vgacon_scrollback_cur->restore = 0; - start = vgacon_scrollback_cur->cur + lines; - end = start + abs(lines); - - if (start < 0) - start = 0; - - if (start > vgacon_scrollback_cur->cnt) - start = vgacon_scrollback_cur->cnt; - - if (end < 0) - end = 0; - - if (end > vgacon_scrollback_cur->cnt) - end = vgacon_scrollback_cur->cnt; - - vgacon_scrollback_cur->cur = start; - count = end - start; - soff = vgacon_scrollback_cur->tail - - ((vgacon_scrollback_cur->cnt - end) * c->vc_size_row); - soff -= count * c->vc_size_row; - - if (soff < 0) - soff += vgacon_scrollback_cur->size; - - count = vgacon_scrollback_cur->cnt - start; - - if (count > c->vc_rows) - count = c->vc_rows; - - if (count) { - int copysize; - - int diff = c->vc_rows - count; - void *d = (void *) c->vc_visible_origin; - void *s = (void *) c->vc_screenbuf; - - count *= c->vc_size_row; - /* how much memory to end of buffer left? */ - copysize = min(count, vgacon_scrollback_cur->size - soff); - scr_memcpyw(d, vgacon_scrollback_cur->data + soff, copysize); - d += copysize; - count -= copysize; - - if (count) { - scr_memcpyw(d, vgacon_scrollback_cur->data, count); - d += count; - } - - if (diff) - scr_memcpyw(d, s, diff * c->vc_size_row); - } else - vgacon_cursor(c, CM_MOVE); -} - -static void vgacon_flush_scrollback(struct vc_data *c) -{ - size_t size = CONFIG_VGACON_SOFT_SCROLLBACK_SIZE * 1024; - - vgacon_scrollback_reset(c->vc_num, size); -} -#else -#define vgacon_scrollback_startup(...) do { } while (0) -#define vgacon_scrollback_init(...) do { } while (0) -#define vgacon_scrollback_update(...) do { } while (0) -#define vgacon_scrollback_switch(...) do { } while (0) - static void vgacon_restore_screen(struct vc_data *c) { if (c->vc_origin != c->vc_visible_origin) @@ -382,11 +178,6 @@ vga_set_mem_top(c); } -static void vgacon_flush_scrollback(struct vc_data *c) -{ -} -#endif /* CONFIG_VGACON_SOFT_SCROLLBACK */ - static const char *vgacon_startup(void) { const char *display_desc = NULL; @@ -569,10 +360,7 @@ vgacon_xres = screen_info.orig_video_cols * VGA_FONTWIDTH; vgacon_yres = vga_scan_lines; - if (!vga_init_done) { - vgacon_scrollback_startup(); - vga_init_done = true; - } + vga_init_done = true; return display_desc; } @@ -863,7 +651,6 @@ vgacon_doresize(c, c->vc_cols, c->vc_rows); } - vgacon_scrollback_switch(c->vc_num); return 0; /* Redrawing not needed */ } @@ -1380,7 +1167,6 @@ oldo = c->vc_origin; delta = lines * c->vc_size_row; if (dir == SM_UP) { - vgacon_scrollback_update(c, t, lines); if (c->vc_scr_end + delta >= vga_vram_end) { scr_memcpyw((u16 *) vga_vram_base, (u16 *) (oldo + delta), @@ -1444,7 +1230,6 @@ .con_save_screen = vgacon_save_screen, .con_build_attr = vgacon_build_attr, .con_invert_region = vgacon_invert_region, - .con_flush_scrollback = vgacon_flush_scrollback, }; EXPORT_SYMBOL(vga_con); --- linux-azure-5.8-5.8.0.orig/drivers/video/fbdev/Kconfig +++ linux-azure-5.8-5.8.0/drivers/video/fbdev/Kconfig @@ -1269,6 +1269,7 @@ select FB_CFB_IMAGEBLIT select FB_BACKLIGHT if FB_ATY_BACKLIGHT select FB_MACMODES if PPC + select FB_ATY_CT if SPARC64 && PCI help This driver supports graphics boards with the ATI Mach64 chips. Say Y if you have such a graphics board. @@ -1279,7 +1280,6 @@ config FB_ATY_CT bool "Mach64 CT/VT/GT/LT (incl. 3D RAGE) support" depends on PCI && FB_ATY - default y if SPARC64 && PCI help Say Y here to support use of ATI's 64-bit Rage boards (or other boards based on the Mach64 CT, VT, GT, and LT chipsets) as a --- linux-azure-5.8-5.8.0.orig/drivers/video/fbdev/atmel_lcdfb.c +++ linux-azure-5.8-5.8.0/drivers/video/fbdev/atmel_lcdfb.c @@ -987,8 +987,8 @@ } INIT_LIST_HEAD(&pdata->pwr_gpios); - ret = -ENOMEM; for (i = 0; i < gpiod_count(dev, "atmel,power-control"); i++) { + ret = -ENOMEM; gpiod = devm_gpiod_get_index(dev, "atmel,power-control", i, GPIOD_ASIS); if (IS_ERR(gpiod)) --- linux-azure-5.8-5.8.0.orig/drivers/video/fbdev/aty/radeon_base.c +++ linux-azure-5.8-5.8.0/drivers/video/fbdev/aty/radeon_base.c @@ -2311,7 +2311,7 @@ ret = radeon_kick_out_firmware_fb(pdev); if (ret) - return ret; + goto err_release_fb; /* request the mem regions */ ret = pci_request_region(pdev, 0, "radeonfb framebuffer"); --- linux-azure-5.8-5.8.0.orig/drivers/video/fbdev/controlfb.c +++ linux-azure-5.8-5.8.0/drivers/video/fbdev/controlfb.c @@ -49,6 +49,8 @@ #include #ifdef CONFIG_PPC_PMAC #include +#endif +#ifdef CONFIG_BOOTX_TEXT #include #endif --- linux-azure-5.8-5.8.0.orig/drivers/video/fbdev/core/bitblit.c +++ linux-azure-5.8-5.8.0/drivers/video/fbdev/core/bitblit.c @@ -234,7 +234,7 @@ } static void bit_cursor(struct vc_data *vc, struct fb_info *info, int mode, - int softback_lines, int fg, int bg) + int fg, int bg) { struct fb_cursor cursor; struct fbcon_ops *ops = info->fbcon_par; @@ -247,15 +247,6 @@ cursor.set = 0; - if (softback_lines) { - if (y + softback_lines >= vc->vc_rows) { - mode = CM_ERASE; - ops->cursor_flash = 0; - return; - } else - y += softback_lines; - } - c = scr_readw((u16 *) vc->vc_pos); attribute = get_attribute(info, c); src = vc->vc_font.data + ((c & charmask) * (w * vc->vc_font.height)); --- linux-azure-5.8-5.8.0.orig/drivers/video/fbdev/core/fbcon.c +++ linux-azure-5.8-5.8.0/drivers/video/fbdev/core/fbcon.c @@ -122,12 +122,6 @@ /* logo_shown is an index to vc_cons when >= 0; otherwise follows FBCON_LOGO enums. */ static int logo_shown = FBCON_LOGO_CANSHOW; -/* Software scrollback */ -static int fbcon_softback_size = 32768; -static unsigned long softback_buf, softback_curr; -static unsigned long softback_in; -static unsigned long softback_top, softback_end; -static int softback_lines; /* console mappings */ static int first_fb_vc; static int last_fb_vc = MAX_NR_CONSOLES - 1; @@ -167,8 +161,6 @@ static const struct consw fb_con; -#define CM_SOFTBACK (8) - #define advance_row(p, delta) (unsigned short *)((unsigned long)(p) + (delta) * vc->vc_size_row) static int fbcon_set_origin(struct vc_data *); @@ -373,18 +365,6 @@ return color; } -static void fbcon_update_softback(struct vc_data *vc) -{ - int l = fbcon_softback_size / vc->vc_size_row; - - if (l > 5) - softback_end = softback_buf + l * vc->vc_size_row; - else - /* Smaller scrollback makes no sense, and 0 would screw - the operation totally */ - softback_top = 0; -} - static void fb_flashcursor(struct work_struct *work) { struct fb_info *info = container_of(work, struct fb_info, queue); @@ -414,7 +394,7 @@ c = scr_readw((u16 *) vc->vc_pos); mode = (!ops->cursor_flash || ops->cursor_state.enable) ? CM_ERASE : CM_DRAW; - ops->cursor(vc, info, mode, softback_lines, get_color(vc, info, c, 1), + ops->cursor(vc, info, mode, get_color(vc, info, c, 1), get_color(vc, info, c, 0)); console_unlock(); } @@ -471,13 +451,7 @@ } if (!strncmp(options, "scrollback:", 11)) { - options += 11; - if (*options) { - fbcon_softback_size = simple_strtoul(options, &options, 0); - if (*options == 'k' || *options == 'K') { - fbcon_softback_size *= 1024; - } - } + pr_warn("Ignoring scrollback size option\n"); continue; } @@ -1022,31 +996,6 @@ set_blitting_type(vc, info); - if (info->fix.type != FB_TYPE_TEXT) { - if (fbcon_softback_size) { - if (!softback_buf) { - softback_buf = - (unsigned long) - kvmalloc(fbcon_softback_size, - GFP_KERNEL); - if (!softback_buf) { - fbcon_softback_size = 0; - softback_top = 0; - } - } - } else { - if (softback_buf) { - kvfree((void *) softback_buf); - softback_buf = 0; - softback_top = 0; - } - } - if (softback_buf) - softback_in = softback_top = softback_curr = - softback_buf; - softback_lines = 0; - } - /* Setup default font */ if (!p->fontdata && !vc->vc_font.data) { if (!fontname[0] || !(font = find_font(fontname))) @@ -1086,7 +1035,7 @@ struct vc_data *svc = *default_mode; struct fbcon_display *t, *p = &fb_display[vc->vc_num]; int logo = 1, new_rows, new_cols, rows, cols, charcnt = 256; - int cap, ret; + int ret; if (WARN_ON(info_idx == -1)) return; @@ -1095,7 +1044,6 @@ con2fb_map[vc->vc_num] = info_idx; info = registered_fb[con2fb_map[vc->vc_num]]; - cap = info->flags; if (logo_shown < 0 && console_loglevel <= CONSOLE_LOGLEVEL_QUIET) logo_shown = FBCON_LOGO_DONTSHOW; @@ -1200,11 +1148,13 @@ ops->graphics = 0; - if ((cap & FBINFO_HWACCEL_COPYAREA) && - !(cap & FBINFO_HWACCEL_DISABLED)) - p->scrollmode = SCROLL_MOVE; - else /* default to something safe */ - p->scrollmode = SCROLL_REDRAW; + /* + * No more hw acceleration for fbcon. + * + * FIXME: Garbage collect all the now dead code after sufficient time + * has passed. + */ + p->scrollmode = SCROLL_REDRAW; /* * ++guenther: console.c:vc_allocate() relies on initializing @@ -1220,9 +1170,6 @@ if (logo) fbcon_prepare_logo(vc, info, cols, rows, new_cols, new_rows); - if (vc == svc && softback_buf) - fbcon_update_softback(vc); - if (ops->rotate_font && ops->rotate_font(info, vc)) { ops->rotate = FB_ROTATE_UR; set_blitting_type(vc, info); @@ -1385,7 +1332,6 @@ { struct fb_info *info = registered_fb[con2fb_map[vc->vc_num]]; struct fbcon_ops *ops = info->fbcon_par; - int y; int c = scr_readw((u16 *) vc->vc_pos); ops->cur_blink_jiffies = msecs_to_jiffies(vc->vc_cur_blink_ms); @@ -1399,16 +1345,8 @@ fbcon_add_cursor_timer(info); ops->cursor_flash = (mode == CM_ERASE) ? 0 : 1; - if (mode & CM_SOFTBACK) { - mode &= ~CM_SOFTBACK; - y = softback_lines; - } else { - if (softback_lines) - fbcon_set_origin(vc); - y = 0; - } - ops->cursor(vc, info, mode, y, get_color(vc, info, c, 1), + ops->cursor(vc, info, mode, get_color(vc, info, c, 1), get_color(vc, info, c, 0)); } @@ -1479,8 +1417,6 @@ if (con_is_visible(vc)) { update_screen(vc); - if (softback_buf) - fbcon_update_softback(vc); } } @@ -1618,99 +1554,6 @@ scrollback_current = 0; } -static void fbcon_redraw_softback(struct vc_data *vc, struct fbcon_display *p, - long delta) -{ - int count = vc->vc_rows; - unsigned short *d, *s; - unsigned long n; - int line = 0; - - d = (u16 *) softback_curr; - if (d == (u16 *) softback_in) - d = (u16 *) vc->vc_origin; - n = softback_curr + delta * vc->vc_size_row; - softback_lines -= delta; - if (delta < 0) { - if (softback_curr < softback_top && n < softback_buf) { - n += softback_end - softback_buf; - if (n < softback_top) { - softback_lines -= - (softback_top - n) / vc->vc_size_row; - n = softback_top; - } - } else if (softback_curr >= softback_top - && n < softback_top) { - softback_lines -= - (softback_top - n) / vc->vc_size_row; - n = softback_top; - } - } else { - if (softback_curr > softback_in && n >= softback_end) { - n += softback_buf - softback_end; - if (n > softback_in) { - n = softback_in; - softback_lines = 0; - } - } else if (softback_curr <= softback_in && n > softback_in) { - n = softback_in; - softback_lines = 0; - } - } - if (n == softback_curr) - return; - softback_curr = n; - s = (u16 *) softback_curr; - if (s == (u16 *) softback_in) - s = (u16 *) vc->vc_origin; - while (count--) { - unsigned short *start; - unsigned short *le; - unsigned short c; - int x = 0; - unsigned short attr = 1; - - start = s; - le = advance_row(s, 1); - do { - c = scr_readw(s); - if (attr != (c & 0xff00)) { - attr = c & 0xff00; - if (s > start) { - fbcon_putcs(vc, start, s - start, - line, x); - x += s - start; - start = s; - } - } - if (c == scr_readw(d)) { - if (s > start) { - fbcon_putcs(vc, start, s - start, - line, x); - x += s - start + 1; - start = s + 1; - } else { - x++; - start++; - } - } - s++; - d++; - } while (s < le); - if (s > start) - fbcon_putcs(vc, start, s - start, line, x); - line++; - if (d == (u16 *) softback_end) - d = (u16 *) softback_buf; - if (d == (u16 *) softback_in) - d = (u16 *) vc->vc_origin; - if (s == (u16 *) softback_end) - s = (u16 *) softback_buf; - if (s == (u16 *) softback_in) - s = (u16 *) vc->vc_origin; - } -} - static void fbcon_redraw_move(struct vc_data *vc, struct fbcon_display *p, int line, int count, int dy) { @@ -1850,31 +1693,6 @@ } } -static inline void fbcon_softback_note(struct vc_data *vc, int t, - int count) -{ - unsigned short *p; - - if (vc->vc_num != fg_console) - return; - p = (unsigned short *) (vc->vc_origin + t * vc->vc_size_row); - - while (count) { - scr_memcpyw((u16 *) softback_in, p, vc->vc_size_row); - count--; - p = advance_row(p, 1); - softback_in += vc->vc_size_row; - if (softback_in == softback_end) - softback_in = softback_buf; - if (softback_in == softback_top) { - softback_top += vc->vc_size_row; - if (softback_top == softback_end) - softback_top = softback_buf; - } - } - softback_curr = softback_in; -} - static bool fbcon_scroll(struct vc_data *vc, unsigned int t, unsigned int b, enum con_scroll dir, unsigned int count) { @@ -1897,8 +1715,6 @@ case SM_UP: if (count > vc->vc_rows) /* Maximum realistic size */ count = vc->vc_rows; - if (softback_top) - fbcon_softback_note(vc, t, count); if (logo_shown >= 0) goto redraw_up; switch (p->scrollmode) { @@ -2150,47 +1966,20 @@ { struct fbcon_ops *ops = info->fbcon_par; int fh = vc->vc_font.height; - int cap = info->flags; - u16 t = 0; - int ypan = FBCON_SWAP(ops->rotate, info->fix.ypanstep, - info->fix.xpanstep); - int ywrap = FBCON_SWAP(ops->rotate, info->fix.ywrapstep, t); int yres = FBCON_SWAP(ops->rotate, info->var.yres, info->var.xres); int vyres = FBCON_SWAP(ops->rotate, info->var.yres_virtual, info->var.xres_virtual); - int good_pan = (cap & FBINFO_HWACCEL_YPAN) && - divides(ypan, vc->vc_font.height) && vyres > yres; - int good_wrap = (cap & FBINFO_HWACCEL_YWRAP) && - divides(ywrap, vc->vc_font.height) && - divides(vc->vc_font.height, vyres) && - divides(vc->vc_font.height, yres); - int reading_fast = cap & FBINFO_READS_FAST; - int fast_copyarea = (cap & FBINFO_HWACCEL_COPYAREA) && - !(cap & FBINFO_HWACCEL_DISABLED); - int fast_imageblit = (cap & FBINFO_HWACCEL_IMAGEBLIT) && - !(cap & FBINFO_HWACCEL_DISABLED); p->vrows = vyres/fh; if (yres > (fh * (vc->vc_rows + 1))) p->vrows -= (yres - (fh * vc->vc_rows)) / fh; if ((yres % fh) && (vyres % fh < yres % fh)) p->vrows--; - - if (good_wrap || good_pan) { - if (reading_fast || fast_copyarea) - p->scrollmode = good_wrap ? - SCROLL_WRAP_MOVE : SCROLL_PAN_MOVE; - else - p->scrollmode = good_wrap ? SCROLL_REDRAW : - SCROLL_PAN_REDRAW; - } else { - if (reading_fast || (fast_copyarea && !fast_imageblit)) - p->scrollmode = SCROLL_MOVE; - else - p->scrollmode = SCROLL_REDRAW; - } } +#define PITCH(w) (((w) + 7) >> 3) +#define CALC_FONTSZ(h, p, c) ((h) * (p) * (c)) /* size = height * pitch * charcount */ + static int fbcon_resize(struct vc_data *vc, unsigned int width, unsigned int height, unsigned int user) { @@ -2200,6 +1989,24 @@ struct fb_var_screeninfo var = info->var; int x_diff, y_diff, virt_w, virt_h, virt_fw, virt_fh; + if (p->userfont && FNTSIZE(vc->vc_font.data)) { + int size; + int pitch = PITCH(vc->vc_font.width); + + /* + * If user font, ensure that a possible change to user font + * height or width will not allow a font data out-of-bounds access. + * NOTE: must use original charcount in calculation as font + * charcount can change and cannot be used to determine the + * font data allocated size. + */ + if (pitch <= 0) + return -EINVAL; + size = CALC_FONTSZ(vc->vc_font.height, pitch, FNTCHARCNT(vc->vc_font.data)); + if (size > FNTSIZE(vc->vc_font.data)) + return -EINVAL; + } + virt_w = FBCON_SWAP(ops->rotate, width, height); virt_h = FBCON_SWAP(ops->rotate, height, width); virt_fw = FBCON_SWAP(ops->rotate, vc->vc_font.width, @@ -2248,14 +2055,6 @@ info = registered_fb[con2fb_map[vc->vc_num]]; ops = info->fbcon_par; - if (softback_top) { - if (softback_lines) - fbcon_set_origin(vc); - softback_top = softback_curr = softback_in = softback_buf; - softback_lines = 0; - fbcon_update_softback(vc); - } - if (logo_shown >= 0) { struct vc_data *conp2 = vc_cons[logo_shown].d; @@ -2471,6 +2270,9 @@ if (font->width <= 8) { j = vc->vc_font.height; + if (font->charcount * j > FNTSIZE(fontdata)) + return -EINVAL; + for (i = 0; i < font->charcount; i++) { memcpy(data, fontdata, j); memset(data + j, 0, 32 - j); @@ -2479,6 +2281,9 @@ } } else if (font->width <= 16) { j = vc->vc_font.height * 2; + if (font->charcount * j > FNTSIZE(fontdata)) + return -EINVAL; + for (i = 0; i < font->charcount; i++) { memcpy(data, fontdata, j); memset(data + j, 0, 64 - j); @@ -2486,6 +2291,9 @@ fontdata += j; } } else if (font->width <= 24) { + if (font->charcount * (vc->vc_font.height * sizeof(u32)) > FNTSIZE(fontdata)) + return -EINVAL; + for (i = 0; i < font->charcount; i++) { for (j = 0; j < vc->vc_font.height; j++) { *data++ = fontdata[0]; @@ -2498,6 +2306,9 @@ } } else { j = vc->vc_font.height * 4; + if (font->charcount * j > FNTSIZE(fontdata)) + return -EINVAL; + for (i = 0; i < font->charcount; i++) { memcpy(data, fontdata, j); memset(data + j, 0, 128 - j); @@ -2579,9 +2390,6 @@ int cnt; char *old_data = NULL; - if (con_is_visible(vc) && softback_lines) - fbcon_set_origin(vc); - resize = (w != vc->vc_font.width) || (h != vc->vc_font.height); if (p->userfont) old_data = vc->vc_font.data; @@ -2607,8 +2415,6 @@ cols /= w; rows /= h; vc_resize(vc, cols, rows); - if (con_is_visible(vc) && softback_buf) - fbcon_update_softback(vc); } else if (con_is_visible(vc) && vc->vc_mode == KD_TEXT) { fbcon_clear_margins(vc, 0); @@ -2652,7 +2458,7 @@ int size; int i, csum; u8 *new_data, *data = font->data; - int pitch = (font->width+7) >> 3; + int pitch = PITCH(font->width); /* Is there a reason why fbconsole couldn't handle any charcount >256? * If not this check should be changed to charcount < 256 */ @@ -2668,7 +2474,7 @@ if (fbcon_invalid_charcount(info, charcount)) return -EINVAL; - size = h * pitch * charcount; + size = CALC_FONTSZ(h, pitch, charcount); new_data = kmalloc(FONT_EXTRA_WORDS * sizeof(int) + size, GFP_USER); @@ -2767,19 +2573,7 @@ static u16 *fbcon_screen_pos(struct vc_data *vc, int offset) { - unsigned long p; - int line; - - if (vc->vc_num != fg_console || !softback_lines) - return (u16 *) (vc->vc_origin + offset); - line = offset / vc->vc_size_row; - if (line >= softback_lines) - return (u16 *) (vc->vc_origin + offset - - softback_lines * vc->vc_size_row); - p = softback_curr + offset; - if (p >= softback_end) - p += softback_buf - softback_end; - return (u16 *) p; + return (u16 *) (vc->vc_origin + offset); } static unsigned long fbcon_getxy(struct vc_data *vc, unsigned long pos, @@ -2793,22 +2587,7 @@ x = offset % vc->vc_cols; y = offset / vc->vc_cols; - if (vc->vc_num == fg_console) - y += softback_lines; ret = pos + (vc->vc_cols - x) * 2; - } else if (vc->vc_num == fg_console && softback_lines) { - unsigned long offset = pos - softback_curr; - - if (pos < softback_curr) - offset += softback_end - softback_buf; - offset /= 2; - x = offset % vc->vc_cols; - y = offset / vc->vc_cols; - ret = pos + (vc->vc_cols - x) * 2; - if (ret == softback_end) - ret = softback_buf; - if (ret == softback_in) - ret = vc->vc_origin; } else { /* Should not happen */ x = y = 0; @@ -2836,106 +2615,11 @@ a = ((a) & 0x88ff) | (((a) & 0x7000) >> 4) | (((a) & 0x0700) << 4); scr_writew(a, p++); - if (p == (u16 *) softback_end) - p = (u16 *) softback_buf; - if (p == (u16 *) softback_in) - p = (u16 *) vc->vc_origin; } } -static void fbcon_scrolldelta(struct vc_data *vc, int lines) -{ - struct fb_info *info = registered_fb[con2fb_map[fg_console]]; - struct fbcon_ops *ops = info->fbcon_par; - struct fbcon_display *disp = &fb_display[fg_console]; - int offset, limit, scrollback_old; - - if (softback_top) { - if (vc->vc_num != fg_console) - return; - if (vc->vc_mode != KD_TEXT || !lines) - return; - if (logo_shown >= 0) { - struct vc_data *conp2 = vc_cons[logo_shown].d; - - if (conp2->vc_top == logo_lines - && conp2->vc_bottom == conp2->vc_rows) - conp2->vc_top = 0; - if (logo_shown == vc->vc_num) { - unsigned long p, q; - int i; - - p = softback_in; - q = vc->vc_origin + - logo_lines * vc->vc_size_row; - for (i = 0; i < logo_lines; i++) { - if (p == softback_top) - break; - if (p == softback_buf) - p = softback_end; - p -= vc->vc_size_row; - q -= vc->vc_size_row; - scr_memcpyw((u16 *) q, (u16 *) p, - vc->vc_size_row); - } - softback_in = softback_curr = p; - update_region(vc, vc->vc_origin, - logo_lines * vc->vc_cols); - } - logo_shown = FBCON_LOGO_CANSHOW; - } - fbcon_cursor(vc, CM_ERASE | CM_SOFTBACK); - fbcon_redraw_softback(vc, disp, lines); - fbcon_cursor(vc, CM_DRAW | CM_SOFTBACK); - return; - } - - if (!scrollback_phys_max) - return; - - scrollback_old = scrollback_current; - scrollback_current -= lines; - if (scrollback_current < 0) - scrollback_current = 0; - else if (scrollback_current > scrollback_max) - scrollback_current = scrollback_max; - if (scrollback_current == scrollback_old) - return; - - if (fbcon_is_inactive(vc, info)) - return; - - fbcon_cursor(vc, CM_ERASE); - - offset = disp->yscroll - scrollback_current; - limit = disp->vrows; - switch (disp->scrollmode) { - case SCROLL_WRAP_MOVE: - info->var.vmode |= FB_VMODE_YWRAP; - break; - case SCROLL_PAN_MOVE: - case SCROLL_PAN_REDRAW: - limit -= vc->vc_rows; - info->var.vmode &= ~FB_VMODE_YWRAP; - break; - } - if (offset < 0) - offset += limit; - else if (offset >= limit) - offset -= limit; - - ops->var.xoffset = 0; - ops->var.yoffset = offset * vc->vc_font.height; - ops->update_start(info); - - if (!scrollback_current) - fbcon_cursor(vc, CM_DRAW); -} - static int fbcon_set_origin(struct vc_data *vc) { - if (softback_lines) - fbcon_scrolldelta(vc, softback_lines); return 0; } @@ -2999,8 +2683,6 @@ fbcon_set_palette(vc, color_table); update_screen(vc); - if (softback_buf) - fbcon_update_softback(vc); } } @@ -3411,7 +3093,6 @@ .con_font_default = fbcon_set_def_font, .con_font_copy = fbcon_copy_font, .con_set_palette = fbcon_set_palette, - .con_scrolldelta = fbcon_scrolldelta, .con_set_origin = fbcon_set_origin, .con_invert_region = fbcon_invert_region, .con_screen_pos = fbcon_screen_pos, @@ -3646,9 +3327,6 @@ } #endif - kvfree((void *)softback_buf); - softback_buf = 0UL; - for_each_registered_fb(i) { int pending = 0; --- linux-azure-5.8-5.8.0.orig/drivers/video/fbdev/core/fbcon.h +++ linux-azure-5.8-5.8.0/drivers/video/fbdev/core/fbcon.h @@ -62,7 +62,7 @@ void (*clear_margins)(struct vc_data *vc, struct fb_info *info, int color, int bottom_only); void (*cursor)(struct vc_data *vc, struct fb_info *info, int mode, - int softback_lines, int fg, int bg); + int fg, int bg); int (*update_start)(struct fb_info *info); int (*rotate_font)(struct fb_info *info, struct vc_data *vc); struct fb_var_screeninfo var; /* copy of the current fb_var_screeninfo */ @@ -152,13 +152,6 @@ #define attr_bgcol_ec(bgshift, vc, info) attr_col_ec(bgshift, vc, info, 0) #define attr_fgcol_ec(fgshift, vc, info) attr_col_ec(fgshift, vc, info, 1) -/* Font */ -#define REFCOUNT(fd) (((int *)(fd))[-1]) -#define FNTSIZE(fd) (((int *)(fd))[-2]) -#define FNTCHARCNT(fd) (((int *)(fd))[-3]) -#define FNTSUM(fd) (((int *)(fd))[-4]) -#define FONT_EXTRA_WORDS 4 - /* * Scroll Method */ --- linux-azure-5.8-5.8.0.orig/drivers/video/fbdev/core/fbcon_ccw.c +++ linux-azure-5.8-5.8.0/drivers/video/fbdev/core/fbcon_ccw.c @@ -219,7 +219,7 @@ } static void ccw_cursor(struct vc_data *vc, struct fb_info *info, int mode, - int softback_lines, int fg, int bg) + int fg, int bg) { struct fb_cursor cursor; struct fbcon_ops *ops = info->fbcon_par; @@ -236,15 +236,6 @@ cursor.set = 0; - if (softback_lines) { - if (y + softback_lines >= vc->vc_rows) { - mode = CM_ERASE; - ops->cursor_flash = 0; - return; - } else - y += softback_lines; - } - c = scr_readw((u16 *) vc->vc_pos); attribute = get_attribute(info, c); src = ops->fontbuffer + ((c & charmask) * (w * vc->vc_font.width)); --- linux-azure-5.8-5.8.0.orig/drivers/video/fbdev/core/fbcon_cw.c +++ linux-azure-5.8-5.8.0/drivers/video/fbdev/core/fbcon_cw.c @@ -202,7 +202,7 @@ } static void cw_cursor(struct vc_data *vc, struct fb_info *info, int mode, - int softback_lines, int fg, int bg) + int fg, int bg) { struct fb_cursor cursor; struct fbcon_ops *ops = info->fbcon_par; @@ -219,15 +219,6 @@ cursor.set = 0; - if (softback_lines) { - if (y + softback_lines >= vc->vc_rows) { - mode = CM_ERASE; - ops->cursor_flash = 0; - return; - } else - y += softback_lines; - } - c = scr_readw((u16 *) vc->vc_pos); attribute = get_attribute(info, c); src = ops->fontbuffer + ((c & charmask) * (w * vc->vc_font.width)); --- linux-azure-5.8-5.8.0.orig/drivers/video/fbdev/core/fbcon_rotate.c +++ linux-azure-5.8-5.8.0/drivers/video/fbdev/core/fbcon_rotate.c @@ -14,6 +14,7 @@ #include #include #include +#include #include #include "fbcon.h" #include "fbcon_rotate.h" --- linux-azure-5.8-5.8.0.orig/drivers/video/fbdev/core/fbcon_ud.c +++ linux-azure-5.8-5.8.0/drivers/video/fbdev/core/fbcon_ud.c @@ -249,7 +249,7 @@ } static void ud_cursor(struct vc_data *vc, struct fb_info *info, int mode, - int softback_lines, int fg, int bg) + int fg, int bg) { struct fb_cursor cursor; struct fbcon_ops *ops = info->fbcon_par; @@ -267,15 +267,6 @@ cursor.set = 0; - if (softback_lines) { - if (y + softback_lines >= vc->vc_rows) { - mode = CM_ERASE; - ops->cursor_flash = 0; - return; - } else - y += softback_lines; - } - c = scr_readw((u16 *) vc->vc_pos); attribute = get_attribute(info, c); src = ops->fontbuffer + ((c & charmask) * (w * vc->vc_font.height)); --- linux-azure-5.8-5.8.0.orig/drivers/video/fbdev/core/fbmem.c +++ linux-azure-5.8-5.8.0/drivers/video/fbdev/core/fbmem.c @@ -957,7 +957,6 @@ int fb_set_var(struct fb_info *info, struct fb_var_screeninfo *var) { - int flags = info->flags; int ret = 0; u32 activate; struct fb_var_screeninfo old_var; @@ -1007,6 +1006,10 @@ return 0; } + /* bitfill_aligned() assumes that it's at least 8x8 */ + if (var->xres < 8 || var->yres < 8) + return -EINVAL; + ret = info->fbops->fb_check_var(var, info); if (ret) @@ -1052,9 +1055,6 @@ event.data = &mode; fb_notifier_call_chain(FB_EVENT_MODE_CHANGE, &event); - if (flags & FBINFO_MISC_USEREVENT) - fbcon_update_vcs(info, activate & FB_ACTIVATE_ALL); - return 0; } EXPORT_SYMBOL(fb_set_var); @@ -1105,9 +1105,9 @@ return -EFAULT; console_lock(); lock_fb_info(info); - info->flags |= FBINFO_MISC_USEREVENT; ret = fb_set_var(info, &var); - info->flags &= ~FBINFO_MISC_USEREVENT; + if (!ret) + fbcon_update_vcs(info, var.activate & FB_ACTIVATE_ALL); unlock_fb_info(info); console_unlock(); if (!ret && copy_to_user(argp, &var, sizeof(var))) --- linux-azure-5.8-5.8.0.orig/drivers/video/fbdev/core/fbsysfs.c +++ linux-azure-5.8-5.8.0/drivers/video/fbdev/core/fbsysfs.c @@ -91,9 +91,9 @@ var->activate |= FB_ACTIVATE_FORCE; console_lock(); - fb_info->flags |= FBINFO_MISC_USEREVENT; err = fb_set_var(fb_info, var); - fb_info->flags &= ~FBINFO_MISC_USEREVENT; + if (!err) + fbcon_update_vcs(fb_info, var->activate & FB_ACTIVATE_ALL); console_unlock(); if (err) return err; --- linux-azure-5.8-5.8.0.orig/drivers/video/fbdev/core/tileblit.c +++ linux-azure-5.8-5.8.0/drivers/video/fbdev/core/tileblit.c @@ -13,6 +13,7 @@ #include #include #include +#include #include #include "fbcon.h" @@ -80,7 +81,7 @@ } static void tile_cursor(struct vc_data *vc, struct fb_info *info, int mode, - int softback_lines, int fg, int bg) + int fg, int bg) { struct fb_tilecursor cursor; int use_sw = (vc->vc_cursor_type & 0x10); --- linux-azure-5.8-5.8.0.orig/drivers/video/fbdev/efifb.c +++ linux-azure-5.8-5.8.0/drivers/video/fbdev/efifb.c @@ -453,7 +453,7 @@ info->apertures->ranges[0].base = efifb_fix.smem_start; info->apertures->ranges[0].size = size_remap; - if (efi_enabled(EFI_BOOT) && + if (efi_enabled(EFI_MEMMAP) && !efi_mem_desc_lookup(efifb_fix.smem_start, &md)) { if ((efifb_fix.smem_start + efifb_fix.smem_len) > (md.phys_addr + (md.num_pages << EFI_PAGE_SHIFT))) { --- linux-azure-5.8-5.8.0.orig/drivers/video/fbdev/hyperv_fb.c +++ linux-azure-5.8-5.8.0/drivers/video/fbdev/hyperv_fb.c @@ -1092,7 +1092,12 @@ goto err1; } - fb_virt = ioremap(par->mem->start, screen_fb_size); + /* + * Map the VRAM cacheable for performance. This is also required for + * VM Connect to display properly for ARM64 Linux VM, as the host also + * maps the VRAM cacheable. + */ + fb_virt = ioremap_cache(par->mem->start, screen_fb_size); if (!fb_virt) goto err2; @@ -1114,8 +1119,15 @@ getmem_done: remove_conflicting_framebuffers(info->apertures, KBUILD_MODNAME, false); - if (!gen2vm) + + if (gen2vm) { + /* framebuffer is reallocated, clear screen_info to avoid misuse from kexec */ + screen_info.lfb_size = 0; + screen_info.lfb_base = 0; + screen_info.orig_video_isVGA = 0; + } else { pci_dev_put(pdev); + } kfree(info->apertures); return 0; --- linux-azure-5.8-5.8.0.orig/drivers/video/fbdev/neofb.c +++ linux-azure-5.8-5.8.0/drivers/video/fbdev/neofb.c @@ -1819,6 +1819,7 @@ #else printk(KERN_ERR "neofb: Only 640x480, 800x600/480 and 1024x768 panels are currently supported\n"); + kfree(info->monspecs.modedb); return -1; #endif default: --- linux-azure-5.8-5.8.0.orig/drivers/video/fbdev/omap2/omapfb/dss/dispc.c +++ linux-azure-5.8-5.8.0/drivers/video/fbdev/omap2/omapfb/dss/dispc.c @@ -520,8 +520,11 @@ DSSDBG("dispc_runtime_get\n"); r = pm_runtime_get_sync(&dispc.pdev->dev); - WARN_ON(r < 0); - return r < 0 ? r : 0; + if (WARN_ON(r < 0)) { + pm_runtime_put_sync(&dispc.pdev->dev); + return r; + } + return 0; } EXPORT_SYMBOL(dispc_runtime_get); --- linux-azure-5.8-5.8.0.orig/drivers/video/fbdev/omap2/omapfb/dss/dsi.c +++ linux-azure-5.8-5.8.0/drivers/video/fbdev/omap2/omapfb/dss/dsi.c @@ -1137,8 +1137,11 @@ DSSDBG("dsi_runtime_get\n"); r = pm_runtime_get_sync(&dsi->pdev->dev); - WARN_ON(r < 0); - return r < 0 ? r : 0; + if (WARN_ON(r < 0)) { + pm_runtime_put_sync(&dsi->pdev->dev); + return r; + } + return 0; } static void dsi_runtime_put(struct platform_device *dsidev) --- linux-azure-5.8-5.8.0.orig/drivers/video/fbdev/omap2/omapfb/dss/dss.c +++ linux-azure-5.8-5.8.0/drivers/video/fbdev/omap2/omapfb/dss/dss.c @@ -768,8 +768,11 @@ DSSDBG("dss_runtime_get\n"); r = pm_runtime_get_sync(&dss.pdev->dev); - WARN_ON(r < 0); - return r < 0 ? r : 0; + if (WARN_ON(r < 0)) { + pm_runtime_put_sync(&dss.pdev->dev); + return r; + } + return 0; } void dss_runtime_put(void) @@ -833,7 +836,7 @@ }; static const struct dss_features omap3630_dss_feats = { - .fck_div_max = 32, + .fck_div_max = 31, .dss_fck_multiplier = 1, .parent_clk_name = "dpll4_ck", .dpi_select_source = &dss_dpi_select_source_omap2_omap3, --- linux-azure-5.8-5.8.0.orig/drivers/video/fbdev/omap2/omapfb/dss/hdmi4.c +++ linux-azure-5.8-5.8.0/drivers/video/fbdev/omap2/omapfb/dss/hdmi4.c @@ -39,9 +39,10 @@ DSSDBG("hdmi_runtime_get\n"); r = pm_runtime_get_sync(&hdmi.pdev->dev); - WARN_ON(r < 0); - if (r < 0) + if (WARN_ON(r < 0)) { + pm_runtime_put_sync(&hdmi.pdev->dev); return r; + } return 0; } --- linux-azure-5.8-5.8.0.orig/drivers/video/fbdev/omap2/omapfb/dss/hdmi5.c +++ linux-azure-5.8-5.8.0/drivers/video/fbdev/omap2/omapfb/dss/hdmi5.c @@ -43,9 +43,10 @@ DSSDBG("hdmi_runtime_get\n"); r = pm_runtime_get_sync(&hdmi.pdev->dev); - WARN_ON(r < 0); - if (r < 0) + if (WARN_ON(r < 0)) { + pm_runtime_put_sync(&hdmi.pdev->dev); return r; + } return 0; } --- linux-azure-5.8-5.8.0.orig/drivers/video/fbdev/omap2/omapfb/dss/venc.c +++ linux-azure-5.8-5.8.0/drivers/video/fbdev/omap2/omapfb/dss/venc.c @@ -348,8 +348,11 @@ DSSDBG("venc_runtime_get\n"); r = pm_runtime_get_sync(&venc.pdev->dev); - WARN_ON(r < 0); - return r < 0 ? r : 0; + if (WARN_ON(r < 0)) { + pm_runtime_put_sync(&venc.pdev->dev); + return r; + } + return 0; } static void venc_runtime_put(void) --- linux-azure-5.8-5.8.0.orig/drivers/video/fbdev/ps3fb.c +++ linux-azure-5.8-5.8.0/drivers/video/fbdev/ps3fb.c @@ -29,6 +29,7 @@ #include #include #include +#include #include #include @@ -824,12 +825,12 @@ var = info->var; fb_videomode_to_var(&var, vmode); console_lock(); - info->flags |= FBINFO_MISC_USEREVENT; /* Force, in case only special bits changed */ var.activate |= FB_ACTIVATE_FORCE; par->new_mode_id = val; retval = fb_set_var(info, &var); - info->flags &= ~FBINFO_MISC_USEREVENT; + if (!retval) + fbcon_update_vcs(info, var.activate & FB_ACTIVATE_ALL); console_unlock(); } break; --- linux-azure-5.8-5.8.0.orig/drivers/video/fbdev/pvr2fb.c +++ linux-azure-5.8-5.8.0/drivers/video/fbdev/pvr2fb.c @@ -1016,6 +1016,8 @@ if (!options || !*options) return 0; + cable_arg[0] = output_arg[0] = 0; + while ((this_opt = strsep(&options, ","))) { if (!*this_opt) continue; --- linux-azure-5.8-5.8.0.orig/drivers/video/fbdev/pxafb.c +++ linux-azure-5.8-5.8.0/drivers/video/fbdev/pxafb.c @@ -2417,8 +2417,8 @@ free_pages_exact(fbi->video_mem, fbi->video_mem_size); - dma_free_wc(&dev->dev, fbi->dma_buff_size, fbi->dma_buff, - fbi->dma_buff_phys); + dma_free_coherent(&dev->dev, fbi->dma_buff_size, fbi->dma_buff, + fbi->dma_buff_phys); return 0; } --- linux-azure-5.8-5.8.0.orig/drivers/video/fbdev/savage/savagefb_driver.c +++ linux-azure-5.8-5.8.0/drivers/video/fbdev/savage/savagefb_driver.c @@ -2157,6 +2157,8 @@ info->flags |= FBINFO_HWACCEL_COPYAREA | FBINFO_HWACCEL_FILLRECT | FBINFO_HWACCEL_IMAGEBLIT; + else + kfree(info->pixmap.addr); } #endif return err; --- linux-azure-5.8-5.8.0.orig/drivers/video/fbdev/sis/init.c +++ linux-azure-5.8-5.8.0/drivers/video/fbdev/sis/init.c @@ -2428,6 +2428,11 @@ i = 0; + if (SiS_Pr->ChipType == SIS_730) + queuedata = &FQBQData730[0]; + else + queuedata = &FQBQData[0]; + if(ModeNo > 0x13) { /* Get VCLK */ @@ -2445,12 +2450,6 @@ /* Get half colordepth */ colorth = colortharray[(SiS_Pr->SiS_ModeType - ModeEGA)]; - if(SiS_Pr->ChipType == SIS_730) { - queuedata = &FQBQData730[0]; - } else { - queuedata = &FQBQData[0]; - } - do { templ = SiS_CalcDelay2(SiS_Pr, queuedata[i]) * VCLK * colorth; --- linux-azure-5.8-5.8.0.orig/drivers/video/fbdev/sm712fb.c +++ linux-azure-5.8-5.8.0/drivers/video/fbdev/sm712fb.c @@ -1429,6 +1429,8 @@ static void smtc_unmap_smem(struct smtcfb_info *sfb) { if (sfb && sfb->fb->screen_base) { + if (sfb->chip_id == 0x720) + sfb->fb->screen_base -= 0x00200000; iounmap(sfb->fb->screen_base); sfb->fb->screen_base = NULL; } --- linux-azure-5.8-5.8.0.orig/drivers/video/fbdev/vga16fb.c +++ linux-azure-5.8-5.8.0/drivers/video/fbdev/vga16fb.c @@ -243,7 +243,7 @@ } static void vga16fb_clock_chip(struct vga16fb_par *par, - unsigned int pixclock, + unsigned int *pixclock, const struct fb_info *info, int mul, int div) { @@ -259,14 +259,14 @@ { 0 /* bad */, 0x00, 0x00}}; int err; - pixclock = (pixclock * mul) / div; + *pixclock = (*pixclock * mul) / div; best = vgaclocks; - err = pixclock - best->pixclock; + err = *pixclock - best->pixclock; if (err < 0) err = -err; for (ptr = vgaclocks + 1; ptr->pixclock; ptr++) { int tmp; - tmp = pixclock - ptr->pixclock; + tmp = *pixclock - ptr->pixclock; if (tmp < 0) tmp = -tmp; if (tmp < err) { err = tmp; @@ -275,7 +275,7 @@ } par->misc |= best->misc; par->clkdiv = best->seq_clock_mode; - pixclock = (best->pixclock * div) / mul; + *pixclock = (best->pixclock * div) / mul; } #define FAIL(X) return -EINVAL @@ -497,10 +497,10 @@ if (mode & MODE_8BPP) /* pixel clock == vga clock / 2 */ - vga16fb_clock_chip(par, var->pixclock, info, 1, 2); + vga16fb_clock_chip(par, &var->pixclock, info, 1, 2); else /* pixel clock == vga clock */ - vga16fb_clock_chip(par, var->pixclock, info, 1, 1); + vga16fb_clock_chip(par, &var->pixclock, info, 1, 1); var->red.offset = var->green.offset = var->blue.offset = var->transp.offset = 0; @@ -1121,7 +1121,7 @@ char oldop = setop(0); char oldsr = setsr(0); char oldmask = selectmask(); - const char *cdat = image->data; + const unsigned char *cdat = image->data; u32 dx = image->dx; char __iomem *where; int y; --- linux-azure-5.8-5.8.0.orig/drivers/virt/fsl_hypervisor.c +++ linux-azure-5.8-5.8.0/drivers/virt/fsl_hypervisor.c @@ -157,7 +157,7 @@ unsigned int i; long ret = 0; - int num_pinned; /* return value from get_user_pages() */ + int num_pinned = 0; /* return value from get_user_pages_fast() */ phys_addr_t remote_paddr; /* The next address in the remote buffer */ uint32_t count; /* The number of bytes left to copy */ @@ -174,7 +174,7 @@ return -EINVAL; /* - * The array of pages returned by get_user_pages() covers only + * The array of pages returned by get_user_pages_fast() covers only * page-aligned memory. Since the user buffer is probably not * page-aligned, we need to handle the discrepancy. * @@ -224,7 +224,7 @@ /* * 'pages' is an array of struct page pointers that's initialized by - * get_user_pages(). + * get_user_pages_fast(). */ pages = kcalloc(num_pages, sizeof(struct page *), GFP_KERNEL); if (!pages) { @@ -241,7 +241,7 @@ if (!sg_list_unaligned) { pr_debug("fsl-hv: could not allocate S/G list\n"); ret = -ENOMEM; - goto exit; + goto free_pages; } sg_list = PTR_ALIGN(sg_list_unaligned, sizeof(struct fh_sg_list)); @@ -250,7 +250,6 @@ num_pages, param.source != -1 ? FOLL_WRITE : 0, pages); if (num_pinned != num_pages) { - /* get_user_pages() failed */ pr_debug("fsl-hv: could not lock source buffer\n"); ret = (num_pinned < 0) ? num_pinned : -EFAULT; goto exit; @@ -292,13 +291,13 @@ virt_to_phys(sg_list), num_pages); exit: - if (pages) { - for (i = 0; i < num_pages; i++) - if (pages[i]) - put_page(pages[i]); + if (pages && (num_pinned > 0)) { + for (i = 0; i < num_pinned; i++) + put_page(pages[i]); } kfree(sg_list_unaligned); +free_pages: kfree(pages); if (!ret) --- linux-azure-5.8-5.8.0.orig/drivers/virt/vboxguest/vboxguest_utils.c +++ linux-azure-5.8-5.8.0/drivers/virt/vboxguest/vboxguest_utils.c @@ -467,7 +467,7 @@ * Cancellation fun. */ static int vbg_hgcm_do_call(struct vbg_dev *gdev, struct vmmdev_hgcm_call *call, - u32 timeout_ms, bool *leak_it) + u32 timeout_ms, bool interruptible, bool *leak_it) { int rc, cancel_rc, ret; long timeout; @@ -494,10 +494,15 @@ else timeout = msecs_to_jiffies(timeout_ms); - timeout = wait_event_interruptible_timeout( - gdev->hgcm_wq, - hgcm_req_done(gdev, &call->header), - timeout); + if (interruptible) { + timeout = wait_event_interruptible_timeout(gdev->hgcm_wq, + hgcm_req_done(gdev, &call->header), + timeout); + } else { + timeout = wait_event_timeout(gdev->hgcm_wq, + hgcm_req_done(gdev, &call->header), + timeout); + } /* timeout > 0 means hgcm_req_done has returned true, so success */ if (timeout > 0) @@ -630,7 +635,8 @@ hgcm_call_init_call(call, client_id, function, parms, parm_count, bounce_bufs); - ret = vbg_hgcm_do_call(gdev, call, timeout_ms, &leak_it); + ret = vbg_hgcm_do_call(gdev, call, timeout_ms, + requestor & VMMDEV_REQUESTOR_USERMODE, &leak_it); if (ret == 0) { *vbox_status = call->header.result; ret = hgcm_call_copy_back_result(call, parms, parm_count, --- linux-azure-5.8-5.8.0.orig/drivers/virtio/virtio_ring.c +++ linux-azure-5.8-5.8.0/drivers/virtio/virtio_ring.c @@ -1608,7 +1608,6 @@ vq->num_added = 0; vq->packed_ring = true; vq->use_dma_api = vring_use_dma_api(vdev); - list_add_tail(&vq->vq.list, &vdev->vqs); #ifdef DEBUG vq->in_use = false; vq->last_add_time_valid = false; @@ -1669,6 +1668,7 @@ cpu_to_le16(vq->packed.event_flags_shadow); } + list_add_tail(&vq->vq.list, &vdev->vqs); return &vq->vq; err_desc_extra: @@ -1676,9 +1676,9 @@ err_desc_state: kfree(vq); err_vq: - vring_free_queue(vdev, event_size_in_bytes, device, ring_dma_addr); + vring_free_queue(vdev, event_size_in_bytes, device, device_event_dma_addr); err_device: - vring_free_queue(vdev, event_size_in_bytes, driver, ring_dma_addr); + vring_free_queue(vdev, event_size_in_bytes, driver, driver_event_dma_addr); err_driver: vring_free_queue(vdev, ring_size_in_bytes, ring, ring_dma_addr); err_ring: @@ -1960,6 +1960,9 @@ { struct vring_virtqueue *vq = to_vvq(_vq); + if (unlikely(vq->broken)) + return false; + virtio_mb(vq->weak_barriers); return vq->packed_ring ? virtqueue_poll_packed(_vq, last_used_idx) : virtqueue_poll_split(_vq, last_used_idx); @@ -2082,7 +2085,6 @@ vq->last_used_idx = 0; vq->num_added = 0; vq->use_dma_api = vring_use_dma_api(vdev); - list_add_tail(&vq->vq.list, &vdev->vqs); #ifdef DEBUG vq->in_use = false; vq->last_add_time_valid = false; @@ -2124,6 +2126,7 @@ memset(vq->split.desc_state, 0, vring.num * sizeof(struct vring_desc_state_split)); + list_add_tail(&vq->vq.list, &vdev->vqs); return &vq->vq; } EXPORT_SYMBOL_GPL(__vring_new_virtqueue); --- linux-azure-5.8-5.8.0.orig/drivers/w1/masters/mxc_w1.c +++ linux-azure-5.8-5.8.0/drivers/w1/masters/mxc_w1.c @@ -7,7 +7,7 @@ #include #include #include -#include +#include #include #include #include @@ -40,12 +40,12 @@ static u8 mxc_w1_ds2_reset_bus(void *data) { struct mxc_w1_device *dev = data; - unsigned long timeout; + ktime_t timeout; writeb(MXC_W1_CONTROL_RPP, dev->regs + MXC_W1_CONTROL); /* Wait for reset sequence 511+512us, use 1500us for sure */ - timeout = jiffies + usecs_to_jiffies(1500); + timeout = ktime_add_us(ktime_get(), 1500); udelay(511 + 512); @@ -55,7 +55,7 @@ /* PST bit is valid after the RPP bit is self-cleared */ if (!(ctrl & MXC_W1_CONTROL_RPP)) return !(ctrl & MXC_W1_CONTROL_PST); - } while (time_is_after_jiffies(timeout)); + } while (ktime_before(ktime_get(), timeout)); return 1; } @@ -68,12 +68,12 @@ static u8 mxc_w1_ds2_touch_bit(void *data, u8 bit) { struct mxc_w1_device *dev = data; - unsigned long timeout; + ktime_t timeout; writeb(MXC_W1_CONTROL_WR(bit), dev->regs + MXC_W1_CONTROL); /* Wait for read/write bit (60us, Max 120us), use 200us for sure */ - timeout = jiffies + usecs_to_jiffies(200); + timeout = ktime_add_us(ktime_get(), 200); udelay(60); @@ -83,7 +83,7 @@ /* RDST bit is valid after the WR1/RD bit is self-cleared */ if (!(ctrl & MXC_W1_CONTROL_WR(bit))) return !!(ctrl & MXC_W1_CONTROL_RDST); - } while (time_is_after_jiffies(timeout)); + } while (ktime_before(ktime_get(), timeout)); return 0; } --- linux-azure-5.8-5.8.0.orig/drivers/watchdog/Kconfig +++ linux-azure-5.8-5.8.0/drivers/watchdog/Kconfig @@ -375,6 +375,7 @@ config ARMADA_37XX_WATCHDOG tristate "Armada 37xx watchdog" depends on ARCH_MVEBU || COMPILE_TEST + depends on HAS_IOMEM select MFD_SYSCON select WATCHDOG_CORE help @@ -626,7 +627,7 @@ config COH901327_WATCHDOG bool "ST-Ericsson COH 901 327 watchdog" - depends on ARCH_U300 || (ARM && COMPILE_TEST) + depends on ARCH_U300 || (ARM && COMMON_CLK && COMPILE_TEST) default y if MACH_U300 select WATCHDOG_CORE help @@ -784,6 +785,7 @@ config SIRFSOC_WATCHDOG tristate "SiRFSOC watchdog" + depends on HAS_IOMEM depends on ARCH_SIRF || COMPILE_TEST select WATCHDOG_CORE default y --- linux-azure-5.8-5.8.0.orig/drivers/watchdog/f71808e_wdt.c +++ linux-azure-5.8-5.8.0/drivers/watchdog/f71808e_wdt.c @@ -690,9 +690,9 @@ * into the module have been registered yet. */ watchdog.sioaddr = sioaddr; - watchdog.ident.options = WDIOC_SETTIMEOUT - | WDIOF_MAGICCLOSE - | WDIOF_KEEPALIVEPING; + watchdog.ident.options = WDIOF_MAGICCLOSE + | WDIOF_KEEPALIVEPING + | WDIOF_CARDRESET; snprintf(watchdog.ident.identity, sizeof(watchdog.ident.identity), "%s watchdog", @@ -706,6 +706,13 @@ wdt_conf = superio_inb(sioaddr, F71808FG_REG_WDT_CONF); watchdog.caused_reboot = wdt_conf & BIT(F71808FG_FLAG_WDTMOUT_STS); + /* + * We don't want WDTMOUT_STS to stick around till regular reboot. + * Write 1 to the bit to clear it to zero. + */ + superio_outb(sioaddr, F71808FG_REG_WDT_CONF, + wdt_conf | BIT(F71808FG_FLAG_WDTMOUT_STS)); + superio_exit(sioaddr); err = watchdog_set_timeout(timeout); --- linux-azure-5.8-5.8.0.orig/drivers/watchdog/intel-mid_wdt.c +++ linux-azure-5.8-5.8.0/drivers/watchdog/intel-mid_wdt.c @@ -154,6 +154,10 @@ watchdog_set_nowayout(wdt_dev, WATCHDOG_NOWAYOUT); watchdog_set_drvdata(wdt_dev, mid); + mid->scu = devm_intel_scu_ipc_dev_get(dev); + if (!mid->scu) + return -EPROBE_DEFER; + ret = devm_request_irq(dev, pdata->irq, mid_wdt_irq, IRQF_SHARED | IRQF_NO_SUSPEND, "watchdog", wdt_dev); @@ -162,10 +166,6 @@ return ret; } - mid->scu = devm_intel_scu_ipc_dev_get(dev); - if (!mid->scu) - return -EPROBE_DEFER; - /* * The firmware followed by U-Boot leaves the watchdog running * with the default threshold which may vary. When we get here --- linux-azure-5.8-5.8.0.orig/drivers/watchdog/mei_wdt.c +++ linux-azure-5.8-5.8.0/drivers/watchdog/mei_wdt.c @@ -382,6 +382,7 @@ watchdog_set_drvdata(&wdt->wdd, wdt); watchdog_stop_on_reboot(&wdt->wdd); + watchdog_stop_on_unregister(&wdt->wdd); ret = watchdog_register_device(&wdt->wdd); if (ret) --- linux-azure-5.8-5.8.0.orig/drivers/watchdog/qcom-wdt.c +++ linux-azure-5.8-5.8.0/drivers/watchdog/qcom-wdt.c @@ -22,7 +22,6 @@ }; #define QCOM_WDT_ENABLE BIT(0) -#define QCOM_WDT_ENABLE_IRQ BIT(1) static const u32 reg_offset_data_apcs_tmr[] = { [WDT_RST] = 0x38, @@ -63,16 +62,6 @@ return container_of(wdd, struct qcom_wdt, wdd); } -static inline int qcom_get_enable(struct watchdog_device *wdd) -{ - int enable = QCOM_WDT_ENABLE; - - if (wdd->pretimeout) - enable |= QCOM_WDT_ENABLE_IRQ; - - return enable; -} - static irqreturn_t qcom_wdt_isr(int irq, void *arg) { struct watchdog_device *wdd = arg; @@ -91,7 +80,7 @@ writel(1, wdt_addr(wdt, WDT_RST)); writel(bark * wdt->rate, wdt_addr(wdt, WDT_BARK_TIME)); writel(wdd->timeout * wdt->rate, wdt_addr(wdt, WDT_BITE_TIME)); - writel(qcom_get_enable(wdd), wdt_addr(wdt, WDT_EN)); + writel(QCOM_WDT_ENABLE, wdt_addr(wdt, WDT_EN)); return 0; } @@ -148,7 +137,7 @@ */ wmb(); - msleep(150); + mdelay(150); return 0; } --- linux-azure-5.8-5.8.0.orig/drivers/watchdog/rdc321x_wdt.c +++ linux-azure-5.8-5.8.0/drivers/watchdog/rdc321x_wdt.c @@ -231,6 +231,8 @@ rdc321x_wdt_device.sb_pdev = pdata->sb_pdev; rdc321x_wdt_device.base_reg = r->start; + rdc321x_wdt_device.queue = 0; + rdc321x_wdt_device.default_ticks = ticks; err = misc_register(&rdc321x_wdt_misc); if (err < 0) { @@ -245,14 +247,11 @@ rdc321x_wdt_device.base_reg, RDC_WDT_RST); init_completion(&rdc321x_wdt_device.stop); - rdc321x_wdt_device.queue = 0; clear_bit(0, &rdc321x_wdt_device.inuse); timer_setup(&rdc321x_wdt_device.timer, rdc321x_wdt_trigger, 0); - rdc321x_wdt_device.default_ticks = ticks; - dev_info(&pdev->dev, "watchdog init success\n"); return 0; --- linux-azure-5.8-5.8.0.orig/drivers/watchdog/rti_wdt.c +++ linux-azure-5.8-5.8.0/drivers/watchdog/rti_wdt.c @@ -172,8 +172,10 @@ pm_runtime_enable(dev); ret = pm_runtime_get_sync(dev); if (ret) { - if (ret != -EPROBE_DEFER) + if (ret != -EPROBE_DEFER) { + pm_runtime_put_noidle(dev); dev_err(&pdev->dev, "runtime pm failed\n"); + } return ret; } @@ -211,6 +213,7 @@ err_iomap: pm_runtime_put_sync(&pdev->dev); + pm_runtime_disable(&pdev->dev); return ret; } @@ -221,6 +224,7 @@ watchdog_unregister_device(&wdt->wdd); pm_runtime_put(&pdev->dev); + pm_runtime_disable(&pdev->dev); return 0; } --- linux-azure-5.8-5.8.0.orig/drivers/watchdog/sp5100_tco.h +++ linux-azure-5.8-5.8.0/drivers/watchdog/sp5100_tco.h @@ -70,7 +70,7 @@ #define EFCH_PM_DECODEEN_WDT_TMREN BIT(7) -#define EFCH_PM_DECODEEN3 0x00 +#define EFCH_PM_DECODEEN3 0x03 #define EFCH_PM_DECODEEN_SECOND_RES GENMASK(1, 0) #define EFCH_PM_WATCHDOG_DISABLE ((u8)GENMASK(3, 2)) --- linux-azure-5.8-5.8.0.orig/drivers/watchdog/sprd_wdt.c +++ linux-azure-5.8-5.8.0/drivers/watchdog/sprd_wdt.c @@ -108,18 +108,6 @@ u32 tmr_step = timeout * SPRD_WDT_CNT_STEP; u32 prtmr_step = pretimeout * SPRD_WDT_CNT_STEP; - sprd_wdt_unlock(wdt->base); - writel_relaxed((tmr_step >> SPRD_WDT_CNT_HIGH_SHIFT) & - SPRD_WDT_LOW_VALUE_MASK, wdt->base + SPRD_WDT_LOAD_HIGH); - writel_relaxed((tmr_step & SPRD_WDT_LOW_VALUE_MASK), - wdt->base + SPRD_WDT_LOAD_LOW); - writel_relaxed((prtmr_step >> SPRD_WDT_CNT_HIGH_SHIFT) & - SPRD_WDT_LOW_VALUE_MASK, - wdt->base + SPRD_WDT_IRQ_LOAD_HIGH); - writel_relaxed(prtmr_step & SPRD_WDT_LOW_VALUE_MASK, - wdt->base + SPRD_WDT_IRQ_LOAD_LOW); - sprd_wdt_lock(wdt->base); - /* * Waiting the load value operation done, * it needs two or three RTC clock cycles. @@ -134,6 +122,19 @@ if (delay_cnt >= SPRD_WDT_LOAD_TIMEOUT) return -EBUSY; + + sprd_wdt_unlock(wdt->base); + writel_relaxed((tmr_step >> SPRD_WDT_CNT_HIGH_SHIFT) & + SPRD_WDT_LOW_VALUE_MASK, wdt->base + SPRD_WDT_LOAD_HIGH); + writel_relaxed((tmr_step & SPRD_WDT_LOW_VALUE_MASK), + wdt->base + SPRD_WDT_LOAD_LOW); + writel_relaxed((prtmr_step >> SPRD_WDT_CNT_HIGH_SHIFT) & + SPRD_WDT_LOW_VALUE_MASK, + wdt->base + SPRD_WDT_IRQ_LOAD_HIGH); + writel_relaxed(prtmr_step & SPRD_WDT_LOW_VALUE_MASK, + wdt->base + SPRD_WDT_IRQ_LOAD_LOW); + sprd_wdt_lock(wdt->base); + return 0; } @@ -345,15 +346,10 @@ if (ret) return ret; - if (watchdog_active(&wdt->wdd)) { + if (watchdog_active(&wdt->wdd)) ret = sprd_wdt_start(&wdt->wdd); - if (ret) { - sprd_wdt_disable(wdt); - return ret; - } - } - return 0; + return ret; } static const struct dev_pm_ops sprd_wdt_pm_ops = { --- linux-azure-5.8-5.8.0.orig/drivers/watchdog/watchdog_core.c +++ linux-azure-5.8-5.8.0/drivers/watchdog/watchdog_core.c @@ -267,15 +267,19 @@ } if (test_bit(WDOG_STOP_ON_REBOOT, &wdd->status)) { - wdd->reboot_nb.notifier_call = watchdog_reboot_notifier; + if (!wdd->ops->stop) + pr_warn("watchdog%d: stop_on_reboot not supported\n", wdd->id); + else { + wdd->reboot_nb.notifier_call = watchdog_reboot_notifier; - ret = register_reboot_notifier(&wdd->reboot_nb); - if (ret) { - pr_err("watchdog%d: Cannot register reboot notifier (%d)\n", - wdd->id, ret); - watchdog_dev_unregister(wdd); - ida_simple_remove(&watchdog_ida, id); - return ret; + ret = register_reboot_notifier(&wdd->reboot_nb); + if (ret) { + pr_err("watchdog%d: Cannot register reboot notifier (%d)\n", + wdd->id, ret); + watchdog_dev_unregister(wdd); + ida_simple_remove(&watchdog_ida, id); + return ret; + } } } --- linux-azure-5.8-5.8.0.orig/drivers/watchdog/watchdog_dev.c +++ linux-azure-5.8-5.8.0/drivers/watchdog/watchdog_dev.c @@ -991,8 +991,19 @@ wd_data->wdd = wdd; wdd->wd_data = wd_data; - if (IS_ERR_OR_NULL(watchdog_kworker)) + if (IS_ERR_OR_NULL(watchdog_kworker)) { + kfree(wd_data); return -ENODEV; + } + + device_initialize(&wd_data->dev); + wd_data->dev.devt = MKDEV(MAJOR(watchdog_devt), wdd->id); + wd_data->dev.class = &watchdog_class; + wd_data->dev.parent = wdd->parent; + wd_data->dev.groups = wdd->groups; + wd_data->dev.release = watchdog_core_data_release; + dev_set_drvdata(&wd_data->dev, wdd); + dev_set_name(&wd_data->dev, "watchdog%d", wdd->id); kthread_init_work(&wd_data->work, watchdog_ping_work); hrtimer_init(&wd_data->timer, CLOCK_MONOTONIC, HRTIMER_MODE_REL_HARD); @@ -1009,20 +1020,11 @@ pr_err("%s: a legacy watchdog module is probably present.\n", wdd->info->identity); old_wd_data = NULL; - kfree(wd_data); + put_device(&wd_data->dev); return err; } } - device_initialize(&wd_data->dev); - wd_data->dev.devt = MKDEV(MAJOR(watchdog_devt), wdd->id); - wd_data->dev.class = &watchdog_class; - wd_data->dev.parent = wdd->parent; - wd_data->dev.groups = wdd->groups; - wd_data->dev.release = watchdog_core_data_release; - dev_set_drvdata(&wd_data->dev, wdd); - dev_set_name(&wd_data->dev, "watchdog%d", wdd->id); - /* Fill in the data structures */ cdev_init(&wd_data->cdev, &watchdog_fops); --- linux-azure-5.8-5.8.0.orig/drivers/xen/balloon.c +++ linux-azure-5.8-5.8.0/drivers/xen/balloon.c @@ -568,11 +568,13 @@ if (xen_hotplug_unpopulated) { st = reserve_additional_memory(); if (st != BP_ECANCELED) { + int rc; + mutex_unlock(&balloon_mutex); - wait_event(balloon_wq, + rc = wait_event_interruptible(balloon_wq, !list_empty(&ballooned_pages)); mutex_lock(&balloon_mutex); - return 0; + return rc ? -ENOMEM : 0; } } @@ -630,6 +632,12 @@ out_undo: mutex_unlock(&balloon_mutex); free_xenballooned_pages(pgno, pages); + /* + * NB: free_xenballooned_pages will only subtract pgno pages, but since + * target_unpopulated is incremented with nr_pages at the start we need + * to remove the remaining ones also, or accounting will be screwed. + */ + balloon_stats.target_unpopulated -= nr_pages - pgno; return ret; } EXPORT_SYMBOL(alloc_xenballooned_pages); --- linux-azure-5.8-5.8.0.orig/drivers/xen/events/events_2l.c +++ linux-azure-5.8-5.8.0/drivers/xen/events/events_2l.c @@ -91,6 +91,8 @@ BUG_ON(!irqs_disabled()); + smp_wmb(); /* All writes before unmask must be visible. */ + if (unlikely((cpu != cpu_from_evtchn(port)))) do_hypercall = 1; else { @@ -159,7 +161,7 @@ * a bitset of words which contain pending event bits. The second * level is a bitset of pending events themselves. */ -static void evtchn_2l_handle_events(unsigned cpu) +static void evtchn_2l_handle_events(unsigned cpu, struct evtchn_loop_ctrl *ctrl) { int irq; xen_ulong_t pending_words; @@ -240,10 +242,7 @@ /* Process port. */ port = (word_idx * BITS_PER_EVTCHN_WORD) + bit_idx; - irq = get_evtchn_to_irq(port); - - if (irq != -1) - generic_handle_irq(irq); + handle_irq_for_port(port, ctrl); bit_idx = (bit_idx + 1) % BITS_PER_EVTCHN_WORD; --- linux-azure-5.8-5.8.0.orig/drivers/xen/events/events_base.c +++ linux-azure-5.8-5.8.0/drivers/xen/events/events_base.c @@ -33,6 +33,10 @@ #include #include #include +#include +#include +#include +#include #ifdef CONFIG_X86 #include @@ -63,6 +67,15 @@ #include "events_internal.h" +#undef MODULE_PARAM_PREFIX +#define MODULE_PARAM_PREFIX "xen." + +static uint __read_mostly event_loop_timeout = 2; +module_param(event_loop_timeout, uint, 0644); + +static uint __read_mostly event_eoi_delay = 10; +module_param(event_eoi_delay, uint, 0644); + const struct evtchn_ops *evtchn_ops; /* @@ -71,6 +84,24 @@ */ static DEFINE_MUTEX(irq_mapping_update_lock); +/* + * Lock protecting event handling loop against removing event channels. + * Adding of event channels is no issue as the associated IRQ becomes active + * only after everything is setup (before request_[threaded_]irq() the handler + * can't be entered for an event, as the event channel will be unmasked only + * then). + */ +static DEFINE_RWLOCK(evtchn_rwlock); + +/* + * Lock hierarchy: + * + * irq_mapping_update_lock + * evtchn_rwlock + * IRQ-desc lock + * percpu eoi_list_lock + */ + static LIST_HEAD(xen_irq_list_head); /* IRQ <-> VIRQ mapping. */ @@ -92,18 +123,23 @@ /* Xen will never allocate port zero for any purpose. */ #define VALID_EVTCHN(chn) ((chn) != 0) +static struct irq_info *legacy_info_ptrs[NR_IRQS_LEGACY]; + static struct irq_chip xen_dynamic_chip; +static struct irq_chip xen_lateeoi_chip; static struct irq_chip xen_percpu_chip; static struct irq_chip xen_pirq_chip; static void enable_dynirq(struct irq_data *data); static void disable_dynirq(struct irq_data *data); +static DEFINE_PER_CPU(unsigned int, irq_epoch); + static void clear_evtchn_to_irq_row(unsigned row) { unsigned col; for (col = 0; col < EVTCHN_PER_ROW; col++) - evtchn_to_irq[row][col] = -1; + WRITE_ONCE(evtchn_to_irq[row][col], -1); } static void clear_evtchn_to_irq_all(void) @@ -140,7 +176,7 @@ clear_evtchn_to_irq_row(row); } - evtchn_to_irq[row][col] = irq; + WRITE_ONCE(evtchn_to_irq[row][col], irq); return 0; } @@ -150,13 +186,24 @@ return -1; if (evtchn_to_irq[EVTCHN_ROW(evtchn)] == NULL) return -1; - return evtchn_to_irq[EVTCHN_ROW(evtchn)][EVTCHN_COL(evtchn)]; + return READ_ONCE(evtchn_to_irq[EVTCHN_ROW(evtchn)][EVTCHN_COL(evtchn)]); } /* Get info for IRQ */ struct irq_info *info_for_irq(unsigned irq) { - return irq_get_handler_data(irq); + if (irq < nr_legacy_irqs()) + return legacy_info_ptrs[irq]; + else + return irq_get_chip_data(irq); +} + +static void set_info_for_irq(unsigned int irq, struct irq_info *info) +{ + if (irq < nr_legacy_irqs()) + legacy_info_ptrs[irq] = info; + else + irq_set_chip_data(irq, info); } /* Constructors for packed IRQ information. */ @@ -248,10 +295,14 @@ */ evtchn_port_t evtchn_from_irq(unsigned irq) { - if (WARN(irq >= nr_irqs, "Invalid irq %d!\n", irq)) + const struct irq_info *info = NULL; + + if (likely(irq < nr_irqs)) + info = info_for_irq(irq); + if (!info) return 0; - return info_for_irq(irq)->evtchn; + return info->evtchn; } unsigned int irq_from_evtchn(evtchn_port_t evtchn) @@ -362,9 +413,157 @@ } EXPORT_SYMBOL_GPL(notify_remote_via_irq); +struct lateeoi_work { + struct delayed_work delayed; + spinlock_t eoi_list_lock; + struct list_head eoi_list; +}; + +static DEFINE_PER_CPU(struct lateeoi_work, lateeoi); + +static void lateeoi_list_del(struct irq_info *info) +{ + struct lateeoi_work *eoi = &per_cpu(lateeoi, info->eoi_cpu); + unsigned long flags; + + spin_lock_irqsave(&eoi->eoi_list_lock, flags); + list_del_init(&info->eoi_list); + spin_unlock_irqrestore(&eoi->eoi_list_lock, flags); +} + +static void lateeoi_list_add(struct irq_info *info) +{ + struct lateeoi_work *eoi = &per_cpu(lateeoi, info->eoi_cpu); + struct irq_info *elem; + u64 now = get_jiffies_64(); + unsigned long delay; + unsigned long flags; + + if (now < info->eoi_time) + delay = info->eoi_time - now; + else + delay = 1; + + spin_lock_irqsave(&eoi->eoi_list_lock, flags); + + if (list_empty(&eoi->eoi_list)) { + list_add(&info->eoi_list, &eoi->eoi_list); + mod_delayed_work_on(info->eoi_cpu, system_wq, + &eoi->delayed, delay); + } else { + list_for_each_entry_reverse(elem, &eoi->eoi_list, eoi_list) { + if (elem->eoi_time <= info->eoi_time) + break; + } + list_add(&info->eoi_list, &elem->eoi_list); + } + + spin_unlock_irqrestore(&eoi->eoi_list_lock, flags); +} + +static void xen_irq_lateeoi_locked(struct irq_info *info, bool spurious) +{ + evtchn_port_t evtchn; + unsigned int cpu; + unsigned int delay = 0; + + evtchn = info->evtchn; + if (!VALID_EVTCHN(evtchn) || !list_empty(&info->eoi_list)) + return; + + if (spurious) { + if ((1 << info->spurious_cnt) < (HZ << 2)) + info->spurious_cnt++; + if (info->spurious_cnt > 1) { + delay = 1 << (info->spurious_cnt - 2); + if (delay > HZ) + delay = HZ; + if (!info->eoi_time) + info->eoi_cpu = smp_processor_id(); + info->eoi_time = get_jiffies_64() + delay; + } + } else { + info->spurious_cnt = 0; + } + + cpu = info->eoi_cpu; + if (info->eoi_time && + (info->irq_epoch == per_cpu(irq_epoch, cpu) || delay)) { + lateeoi_list_add(info); + return; + } + + info->eoi_time = 0; + unmask_evtchn(evtchn); +} + +static void xen_irq_lateeoi_worker(struct work_struct *work) +{ + struct lateeoi_work *eoi; + struct irq_info *info; + u64 now = get_jiffies_64(); + unsigned long flags; + + eoi = container_of(to_delayed_work(work), struct lateeoi_work, delayed); + + read_lock_irqsave(&evtchn_rwlock, flags); + + while (true) { + spin_lock(&eoi->eoi_list_lock); + + info = list_first_entry_or_null(&eoi->eoi_list, struct irq_info, + eoi_list); + + if (info == NULL || now < info->eoi_time) { + spin_unlock(&eoi->eoi_list_lock); + break; + } + + list_del_init(&info->eoi_list); + + spin_unlock(&eoi->eoi_list_lock); + + info->eoi_time = 0; + + xen_irq_lateeoi_locked(info, false); + } + + if (info) + mod_delayed_work_on(info->eoi_cpu, system_wq, + &eoi->delayed, info->eoi_time - now); + + read_unlock_irqrestore(&evtchn_rwlock, flags); +} + +static void xen_cpu_init_eoi(unsigned int cpu) +{ + struct lateeoi_work *eoi = &per_cpu(lateeoi, cpu); + + INIT_DELAYED_WORK(&eoi->delayed, xen_irq_lateeoi_worker); + spin_lock_init(&eoi->eoi_list_lock); + INIT_LIST_HEAD(&eoi->eoi_list); +} + +void xen_irq_lateeoi(unsigned int irq, unsigned int eoi_flags) +{ + struct irq_info *info; + unsigned long flags; + + read_lock_irqsave(&evtchn_rwlock, flags); + + info = info_for_irq(irq); + + if (info) + xen_irq_lateeoi_locked(info, eoi_flags & XEN_EOI_FLAG_SPURIOUS); + + read_unlock_irqrestore(&evtchn_rwlock, flags); +} +EXPORT_SYMBOL_GPL(xen_irq_lateeoi); + static void xen_irq_init(unsigned irq) { struct irq_info *info; + #ifdef CONFIG_SMP /* By default all event channels notify CPU#0. */ cpumask_copy(irq_get_affinity_mask(irq), cpumask_of(0)); @@ -377,8 +576,9 @@ info->type = IRQT_UNBOUND; info->refcnt = -1; - irq_set_handler_data(irq, info); + set_info_for_irq(irq, info); + INIT_LIST_HEAD(&info->eoi_list); list_add_tail(&info->list, &xen_irq_list_head); } @@ -426,17 +626,25 @@ static void xen_free_irq(unsigned irq) { - struct irq_info *info = irq_get_handler_data(irq); + struct irq_info *info = info_for_irq(irq); + unsigned long flags; if (WARN_ON(!info)) return; + write_lock_irqsave(&evtchn_rwlock, flags); + + if (!list_empty(&info->eoi_list)) + lateeoi_list_del(info); + list_del(&info->list); - irq_set_handler_data(irq, NULL); + set_info_for_irq(irq, NULL); WARN_ON(info->refcnt > 0); + write_unlock_irqrestore(&evtchn_rwlock, flags); + kfree(info); /* Legacy IRQ descriptors are managed by the arch. */ @@ -603,7 +811,7 @@ static void __unbind_from_irq(unsigned int irq) { evtchn_port_t evtchn = evtchn_from_irq(irq); - struct irq_info *info = irq_get_handler_data(irq); + struct irq_info *info = info_for_irq(irq); if (info->refcnt > 0) { info->refcnt--; @@ -828,7 +1036,7 @@ } EXPORT_SYMBOL_GPL(xen_pirq_from_irq); -int bind_evtchn_to_irq(evtchn_port_t evtchn) +static int bind_evtchn_to_irq_chip(evtchn_port_t evtchn, struct irq_chip *chip) { int irq; int ret; @@ -845,7 +1053,7 @@ if (irq < 0) goto out; - irq_set_chip_and_handler_name(irq, &xen_dynamic_chip, + irq_set_chip_and_handler_name(irq, chip, handle_edge_irq, "event"); ret = xen_irq_info_evtchn_setup(irq, evtchn); @@ -866,8 +1074,19 @@ return irq; } + +int bind_evtchn_to_irq(evtchn_port_t evtchn) +{ + return bind_evtchn_to_irq_chip(evtchn, &xen_dynamic_chip); +} EXPORT_SYMBOL_GPL(bind_evtchn_to_irq); +int bind_evtchn_to_irq_lateeoi(evtchn_port_t evtchn) +{ + return bind_evtchn_to_irq_chip(evtchn, &xen_lateeoi_chip); +} +EXPORT_SYMBOL_GPL(bind_evtchn_to_irq_lateeoi); + static int bind_ipi_to_irq(unsigned int ipi, unsigned int cpu) { struct evtchn_bind_ipi bind_ipi; @@ -909,8 +1128,9 @@ return irq; } -int bind_interdomain_evtchn_to_irq(unsigned int remote_domain, - evtchn_port_t remote_port) +static int bind_interdomain_evtchn_to_irq_chip(unsigned int remote_domain, + evtchn_port_t remote_port, + struct irq_chip *chip) { struct evtchn_bind_interdomain bind_interdomain; int err; @@ -921,10 +1141,26 @@ err = HYPERVISOR_event_channel_op(EVTCHNOP_bind_interdomain, &bind_interdomain); - return err ? : bind_evtchn_to_irq(bind_interdomain.local_port); + return err ? : bind_evtchn_to_irq_chip(bind_interdomain.local_port, + chip); +} + +int bind_interdomain_evtchn_to_irq(unsigned int remote_domain, + evtchn_port_t remote_port) +{ + return bind_interdomain_evtchn_to_irq_chip(remote_domain, remote_port, + &xen_dynamic_chip); } EXPORT_SYMBOL_GPL(bind_interdomain_evtchn_to_irq); +int bind_interdomain_evtchn_to_irq_lateeoi(unsigned int remote_domain, + evtchn_port_t remote_port) +{ + return bind_interdomain_evtchn_to_irq_chip(remote_domain, remote_port, + &xen_lateeoi_chip); +} +EXPORT_SYMBOL_GPL(bind_interdomain_evtchn_to_irq_lateeoi); + static int find_virq(unsigned int virq, unsigned int cpu, evtchn_port_t *evtchn) { struct evtchn_status status; @@ -1021,14 +1257,15 @@ mutex_unlock(&irq_mapping_update_lock); } -int bind_evtchn_to_irqhandler(evtchn_port_t evtchn, - irq_handler_t handler, - unsigned long irqflags, - const char *devname, void *dev_id) +static int bind_evtchn_to_irqhandler_chip(evtchn_port_t evtchn, + irq_handler_t handler, + unsigned long irqflags, + const char *devname, void *dev_id, + struct irq_chip *chip) { int irq, retval; - irq = bind_evtchn_to_irq(evtchn); + irq = bind_evtchn_to_irq_chip(evtchn, chip); if (irq < 0) return irq; retval = request_irq(irq, handler, irqflags, devname, dev_id); @@ -1039,18 +1276,38 @@ return irq; } + +int bind_evtchn_to_irqhandler(evtchn_port_t evtchn, + irq_handler_t handler, + unsigned long irqflags, + const char *devname, void *dev_id) +{ + return bind_evtchn_to_irqhandler_chip(evtchn, handler, irqflags, + devname, dev_id, + &xen_dynamic_chip); +} EXPORT_SYMBOL_GPL(bind_evtchn_to_irqhandler); -int bind_interdomain_evtchn_to_irqhandler(unsigned int remote_domain, - evtchn_port_t remote_port, - irq_handler_t handler, - unsigned long irqflags, - const char *devname, - void *dev_id) +int bind_evtchn_to_irqhandler_lateeoi(evtchn_port_t evtchn, + irq_handler_t handler, + unsigned long irqflags, + const char *devname, void *dev_id) +{ + return bind_evtchn_to_irqhandler_chip(evtchn, handler, irqflags, + devname, dev_id, + &xen_lateeoi_chip); +} +EXPORT_SYMBOL_GPL(bind_evtchn_to_irqhandler_lateeoi); + +static int bind_interdomain_evtchn_to_irqhandler_chip( + unsigned int remote_domain, evtchn_port_t remote_port, + irq_handler_t handler, unsigned long irqflags, + const char *devname, void *dev_id, struct irq_chip *chip) { int irq, retval; - irq = bind_interdomain_evtchn_to_irq(remote_domain, remote_port); + irq = bind_interdomain_evtchn_to_irq_chip(remote_domain, remote_port, + chip); if (irq < 0) return irq; @@ -1062,8 +1319,33 @@ return irq; } + +int bind_interdomain_evtchn_to_irqhandler(unsigned int remote_domain, + evtchn_port_t remote_port, + irq_handler_t handler, + unsigned long irqflags, + const char *devname, + void *dev_id) +{ + return bind_interdomain_evtchn_to_irqhandler_chip(remote_domain, + remote_port, handler, irqflags, devname, + dev_id, &xen_dynamic_chip); +} EXPORT_SYMBOL_GPL(bind_interdomain_evtchn_to_irqhandler); +int bind_interdomain_evtchn_to_irqhandler_lateeoi(unsigned int remote_domain, + evtchn_port_t remote_port, + irq_handler_t handler, + unsigned long irqflags, + const char *devname, + void *dev_id) +{ + return bind_interdomain_evtchn_to_irqhandler_chip(remote_domain, + remote_port, handler, irqflags, devname, + dev_id, &xen_lateeoi_chip); +} +EXPORT_SYMBOL_GPL(bind_interdomain_evtchn_to_irqhandler_lateeoi); + int bind_virq_to_irqhandler(unsigned int virq, unsigned int cpu, irq_handler_t handler, unsigned long irqflags, const char *devname, void *dev_id) @@ -1108,7 +1390,7 @@ void unbind_from_irqhandler(unsigned int irq, void *dev_id) { - struct irq_info *info = irq_get_handler_data(irq); + struct irq_info *info = info_for_irq(irq); if (WARN_ON(!info)) return; @@ -1142,7 +1424,7 @@ if (irq == -1) return -ENOENT; - info = irq_get_handler_data(irq); + info = info_for_irq(irq); if (!info) return -ENOENT; @@ -1170,13 +1452,13 @@ if (irq == -1) goto done; - info = irq_get_handler_data(irq); + info = info_for_irq(irq); if (!info) goto done; err = -EINVAL; - if (info->refcnt <= 0) + if (info->refcnt <= 0 || info->refcnt == SHRT_MAX) goto done; info->refcnt++; @@ -1215,21 +1497,81 @@ notify_remote_via_irq(irq); } +struct evtchn_loop_ctrl { + ktime_t timeout; + unsigned count; + bool defer_eoi; +}; + +void handle_irq_for_port(evtchn_port_t port, struct evtchn_loop_ctrl *ctrl) +{ + int irq; + struct irq_info *info; + + irq = get_evtchn_to_irq(port); + if (irq == -1) + return; + + /* + * Check for timeout every 256 events. + * We are setting the timeout value only after the first 256 + * events in order to not hurt the common case of few loop + * iterations. The 256 is basically an arbitrary value. + * + * In case we are hitting the timeout we need to defer all further + * EOIs in order to ensure to leave the event handling loop rather + * sooner than later. + */ + if (!ctrl->defer_eoi && !(++ctrl->count & 0xff)) { + ktime_t kt = ktime_get(); + + if (!ctrl->timeout) { + kt = ktime_add_ms(kt, + jiffies_to_msecs(event_loop_timeout)); + ctrl->timeout = kt; + } else if (kt > ctrl->timeout) { + ctrl->defer_eoi = true; + } + } + + info = info_for_irq(irq); + + if (ctrl->defer_eoi) { + info->eoi_cpu = smp_processor_id(); + info->irq_epoch = __this_cpu_read(irq_epoch); + info->eoi_time = get_jiffies_64() + event_eoi_delay; + } + + generic_handle_irq(irq); +} + static void __xen_evtchn_do_upcall(void) { struct vcpu_info *vcpu_info = __this_cpu_read(xen_vcpu); int cpu = smp_processor_id(); + struct evtchn_loop_ctrl ctrl = { 0 }; + + read_lock(&evtchn_rwlock); do { vcpu_info->evtchn_upcall_pending = 0; - xen_evtchn_handle_events(cpu); + xen_evtchn_handle_events(cpu, &ctrl); BUG_ON(!irqs_disabled()); virt_rmb(); /* Hypervisor can set upcall pending. */ } while (vcpu_info->evtchn_upcall_pending); + + read_unlock(&evtchn_rwlock); + + /* + * Increment irq_epoch only now to defer EOIs only for + * xen_irq_lateeoi() invocations occurring from inside the loop + * above. + */ + __this_cpu_inc(irq_epoch); } void xen_evtchn_do_upcall(struct pt_regs *regs) @@ -1593,6 +1935,21 @@ .irq_retrigger = retrigger_dynirq, }; +static struct irq_chip xen_lateeoi_chip __read_mostly = { + /* The chip name needs to contain "xen-dyn" for irqbalance to work. */ + .name = "xen-dyn-lateeoi", + + .irq_disable = disable_dynirq, + .irq_mask = disable_dynirq, + .irq_unmask = enable_dynirq, + + .irq_ack = mask_ack_dynirq, + .irq_mask_ack = mask_ack_dynirq, + + .irq_set_affinity = set_affinity_irq, + .irq_retrigger = retrigger_dynirq, +}; + static struct irq_chip xen_pirq_chip __read_mostly = { .name = "xen-pirq", @@ -1623,16 +1980,6 @@ .irq_ack = ack_dynirq, }; -int xen_set_callback_via(uint64_t via) -{ - struct xen_hvm_param a; - a.domid = DOMID_SELF; - a.index = HVM_PARAM_CALLBACK_IRQ; - a.value = via; - return HYPERVISOR_hvm_op(HVMOP_set_param, &a); -} -EXPORT_SYMBOL_GPL(xen_set_callback_via); - #ifdef CONFIG_XEN_PVHVM /* Vector callbacks are better than PCI interrupts to receive event * channel notifications because we can receive vector callbacks on any @@ -1663,12 +2010,31 @@ static inline void xen_alloc_callback_vector(void) {} #endif -#undef MODULE_PARAM_PREFIX -#define MODULE_PARAM_PREFIX "xen." - static bool fifo_events = true; module_param(fifo_events, bool, 0); +static int xen_evtchn_cpu_prepare(unsigned int cpu) +{ + int ret = 0; + + xen_cpu_init_eoi(cpu); + + if (evtchn_ops->percpu_init) + ret = evtchn_ops->percpu_init(cpu); + + return ret; +} + +static int xen_evtchn_cpu_dead(unsigned int cpu) +{ + int ret = 0; + + if (evtchn_ops->percpu_deinit) + ret = evtchn_ops->percpu_deinit(cpu); + + return ret; +} + void __init xen_init_IRQ(void) { int ret = -EINVAL; @@ -1679,6 +2045,12 @@ if (ret < 0) xen_evtchn_2l_init(); + xen_cpu_init_eoi(smp_processor_id()); + + cpuhp_setup_state_nocalls(CPUHP_XEN_EVTCHN_PREPARE, + "xen/evtchn:prepare", + xen_evtchn_cpu_prepare, xen_evtchn_cpu_dead); + evtchn_to_irq = kcalloc(EVTCHN_ROW(xen_evtchn_max_channels()), sizeof(*evtchn_to_irq), GFP_KERNEL); BUG_ON(!evtchn_to_irq); --- linux-azure-5.8-5.8.0.orig/drivers/xen/events/events_fifo.c +++ linux-azure-5.8-5.8.0/drivers/xen/events/events_fifo.c @@ -227,19 +227,25 @@ return sync_test_bit(EVTCHN_FIFO_BIT(MASKED, word), BM(word)); } /* - * Clear MASKED, spinning if BUSY is set. + * Clear MASKED if not PENDING, spinning if BUSY is set. + * Return true if mask was cleared. */ -static void clear_masked(volatile event_word_t *word) +static bool clear_masked_cond(volatile event_word_t *word) { event_word_t new, old, w; w = *word; do { + if (w & (1 << EVTCHN_FIFO_PENDING)) + return false; + old = w & ~(1 << EVTCHN_FIFO_BUSY); new = old & ~(1 << EVTCHN_FIFO_MASKED); w = sync_cmpxchg(word, old, new); } while (w != old); + + return true; } static void evtchn_fifo_unmask(evtchn_port_t port) @@ -248,8 +254,7 @@ BUG_ON(!irqs_disabled()); - clear_masked(word); - if (evtchn_fifo_is_pending(port)) { + if (!clear_masked_cond(word)) { struct evtchn_unmask unmask = { .port = port }; (void)HYPERVISOR_event_channel_op(EVTCHNOP_unmask, &unmask); } @@ -270,19 +275,9 @@ return w & EVTCHN_FIFO_LINK_MASK; } -static void handle_irq_for_port(evtchn_port_t port) -{ - int irq; - - irq = get_evtchn_to_irq(port); - if (irq != -1) - generic_handle_irq(irq); -} - -static void consume_one_event(unsigned cpu, +static void consume_one_event(unsigned cpu, struct evtchn_loop_ctrl *ctrl, struct evtchn_fifo_control_block *control_block, - unsigned priority, unsigned long *ready, - bool drop) + unsigned priority, unsigned long *ready) { struct evtchn_fifo_queue *q = &per_cpu(cpu_queue, cpu); uint32_t head; @@ -315,16 +310,17 @@ clear_bit(priority, ready); if (evtchn_fifo_is_pending(port) && !evtchn_fifo_is_masked(port)) { - if (unlikely(drop)) + if (unlikely(!ctrl)) pr_warn("Dropping pending event for port %u\n", port); else - handle_irq_for_port(port); + handle_irq_for_port(port, ctrl); } q->head[priority] = head; } -static void __evtchn_fifo_handle_events(unsigned cpu, bool drop) +static void __evtchn_fifo_handle_events(unsigned cpu, + struct evtchn_loop_ctrl *ctrl) { struct evtchn_fifo_control_block *control_block; unsigned long ready; @@ -336,14 +332,15 @@ while (ready) { q = find_first_bit(&ready, EVTCHN_FIFO_MAX_QUEUES); - consume_one_event(cpu, control_block, q, &ready, drop); + consume_one_event(cpu, ctrl, control_block, q, &ready); ready |= xchg(&control_block->ready, 0); } } -static void evtchn_fifo_handle_events(unsigned cpu) +static void evtchn_fifo_handle_events(unsigned cpu, + struct evtchn_loop_ctrl *ctrl) { - __evtchn_fifo_handle_events(cpu, false); + __evtchn_fifo_handle_events(cpu, ctrl); } static void evtchn_fifo_resume(void) @@ -380,21 +377,6 @@ event_array_pages = 0; } -static const struct evtchn_ops evtchn_ops_fifo = { - .max_channels = evtchn_fifo_max_channels, - .nr_channels = evtchn_fifo_nr_channels, - .setup = evtchn_fifo_setup, - .bind_to_cpu = evtchn_fifo_bind_to_cpu, - .clear_pending = evtchn_fifo_clear_pending, - .set_pending = evtchn_fifo_set_pending, - .is_pending = evtchn_fifo_is_pending, - .test_and_set_mask = evtchn_fifo_test_and_set_mask, - .mask = evtchn_fifo_mask, - .unmask = evtchn_fifo_unmask, - .handle_events = evtchn_fifo_handle_events, - .resume = evtchn_fifo_resume, -}; - static int evtchn_fifo_alloc_control_block(unsigned cpu) { void *control_block = NULL; @@ -417,19 +399,36 @@ return ret; } -static int xen_evtchn_cpu_prepare(unsigned int cpu) +static int evtchn_fifo_percpu_init(unsigned int cpu) { if (!per_cpu(cpu_control_block, cpu)) return evtchn_fifo_alloc_control_block(cpu); return 0; } -static int xen_evtchn_cpu_dead(unsigned int cpu) +static int evtchn_fifo_percpu_deinit(unsigned int cpu) { - __evtchn_fifo_handle_events(cpu, true); + __evtchn_fifo_handle_events(cpu, NULL); return 0; } +static const struct evtchn_ops evtchn_ops_fifo = { + .max_channels = evtchn_fifo_max_channels, + .nr_channels = evtchn_fifo_nr_channels, + .setup = evtchn_fifo_setup, + .bind_to_cpu = evtchn_fifo_bind_to_cpu, + .clear_pending = evtchn_fifo_clear_pending, + .set_pending = evtchn_fifo_set_pending, + .is_pending = evtchn_fifo_is_pending, + .test_and_set_mask = evtchn_fifo_test_and_set_mask, + .mask = evtchn_fifo_mask, + .unmask = evtchn_fifo_unmask, + .handle_events = evtchn_fifo_handle_events, + .resume = evtchn_fifo_resume, + .percpu_init = evtchn_fifo_percpu_init, + .percpu_deinit = evtchn_fifo_percpu_deinit, +}; + int __init xen_evtchn_fifo_init(void) { int cpu = smp_processor_id(); @@ -443,9 +442,5 @@ evtchn_ops = &evtchn_ops_fifo; - cpuhp_setup_state_nocalls(CPUHP_XEN_EVTCHN_PREPARE, - "xen/evtchn:prepare", - xen_evtchn_cpu_prepare, xen_evtchn_cpu_dead); - return ret; } --- linux-azure-5.8-5.8.0.orig/drivers/xen/events/events_internal.h +++ linux-azure-5.8-5.8.0/drivers/xen/events/events_internal.h @@ -30,11 +30,16 @@ */ struct irq_info { struct list_head list; - int refcnt; + struct list_head eoi_list; + short refcnt; + short spurious_cnt; enum xen_irq_type type; /* type */ unsigned irq; evtchn_port_t evtchn; /* event channel */ unsigned short cpu; /* cpu bound */ + unsigned short eoi_cpu; /* EOI must happen on this cpu */ + unsigned int irq_epoch; /* If eoi_cpu valid: irq_epoch of event */ + u64 eoi_time; /* Time in jiffies when to EOI. */ union { unsigned short virq; @@ -53,6 +58,8 @@ #define PIRQ_SHAREABLE (1 << 1) #define PIRQ_MSI_GROUP (1 << 2) +struct evtchn_loop_ctrl; + struct evtchn_ops { unsigned (*max_channels)(void); unsigned (*nr_channels)(void); @@ -67,14 +74,18 @@ void (*mask)(evtchn_port_t port); void (*unmask)(evtchn_port_t port); - void (*handle_events)(unsigned cpu); + void (*handle_events)(unsigned cpu, struct evtchn_loop_ctrl *ctrl); void (*resume)(void); + + int (*percpu_init)(unsigned int cpu); + int (*percpu_deinit)(unsigned int cpu); }; extern const struct evtchn_ops *evtchn_ops; extern int **evtchn_to_irq; int get_evtchn_to_irq(evtchn_port_t evtchn); +void handle_irq_for_port(evtchn_port_t port, struct evtchn_loop_ctrl *ctrl); struct irq_info *info_for_irq(unsigned irq); unsigned cpu_from_irq(unsigned irq); @@ -132,9 +143,10 @@ return evtchn_ops->unmask(port); } -static inline void xen_evtchn_handle_events(unsigned cpu) +static inline void xen_evtchn_handle_events(unsigned cpu, + struct evtchn_loop_ctrl *ctrl) { - return evtchn_ops->handle_events(cpu); + return evtchn_ops->handle_events(cpu, ctrl); } static inline void xen_evtchn_resume(void) --- linux-azure-5.8-5.8.0.orig/drivers/xen/evtchn.c +++ linux-azure-5.8-5.8.0/drivers/xen/evtchn.c @@ -167,7 +167,6 @@ "Interrupt for port %u, but apparently not enabled; per-user %p\n", evtchn->port, u); - disable_irq_nosync(irq); evtchn->enabled = false; spin_lock(&u->ring_prod_lock); @@ -293,7 +292,7 @@ evtchn = find_evtchn(u, port); if (evtchn && !evtchn->enabled) { evtchn->enabled = true; - enable_irq(irq_from_evtchn(port)); + xen_irq_lateeoi(irq_from_evtchn(port), 0); } } @@ -393,8 +392,8 @@ if (rc < 0) goto err; - rc = bind_evtchn_to_irqhandler(port, evtchn_interrupt, 0, - u->name, evtchn); + rc = bind_evtchn_to_irqhandler_lateeoi(port, evtchn_interrupt, 0, + u->name, evtchn); if (rc < 0) goto err; --- linux-azure-5.8-5.8.0.orig/drivers/xen/gntdev-dmabuf.c +++ linux-azure-5.8-5.8.0/drivers/xen/gntdev-dmabuf.c @@ -247,10 +247,9 @@ if (sgt) { if (gntdev_dmabuf_attach->dir != DMA_NONE) - dma_unmap_sg_attrs(attach->dev, sgt->sgl, - sgt->nents, - gntdev_dmabuf_attach->dir, - DMA_ATTR_SKIP_CPU_SYNC); + dma_unmap_sgtable(attach->dev, sgt, + gntdev_dmabuf_attach->dir, + DMA_ATTR_SKIP_CPU_SYNC); sg_free_table(sgt); } @@ -288,8 +287,8 @@ sgt = dmabuf_pages_to_sgt(gntdev_dmabuf->pages, gntdev_dmabuf->nr_pages); if (!IS_ERR(sgt)) { - if (!dma_map_sg_attrs(attach->dev, sgt->sgl, sgt->nents, dir, - DMA_ATTR_SKIP_CPU_SYNC)) { + if (dma_map_sgtable(attach->dev, sgt, dir, + DMA_ATTR_SKIP_CPU_SYNC)) { sg_free_table(sgt); kfree(sgt); sgt = ERR_PTR(-ENOMEM); @@ -613,6 +612,14 @@ goto fail_detach; } + /* Check that we have zero offset. */ + if (sgt->sgl->offset) { + ret = ERR_PTR(-EINVAL); + pr_debug("DMA buffer has %d bytes offset, user-space expects 0\n", + sgt->sgl->offset); + goto fail_unmap; + } + /* Check number of pages that imported buffer has. */ if (attach->dmabuf->size != gntdev_dmabuf->nr_pages << PAGE_SHIFT) { ret = ERR_PTR(-EINVAL); @@ -625,7 +632,7 @@ /* Now convert sgt to array of pages and check for page validity. */ i = 0; - for_each_sg_page(sgt->sgl, &sg_iter, sgt->nents, 0) { + for_each_sgtable_page(sgt, &sg_iter, 0) { struct page *page = sg_page_iter_page(&sg_iter); /* * Check if page is valid: this can happen if we are given --- linux-azure-5.8-5.8.0.orig/drivers/xen/gntdev.c +++ linux-azure-5.8-5.8.0/drivers/xen/gntdev.c @@ -309,44 +309,47 @@ * to the kernel linear addresses of the struct pages. * These ptes are completely different from the user ptes dealt * with find_grant_ptes. + * Note that GNTMAP_device_map isn't needed here: The + * dev_bus_addr output field gets consumed only from ->map_ops, + * and by not requesting it when mapping we also avoid needing + * to mirror dev_bus_addr into ->unmap_ops (and holding an extra + * reference to the page in the hypervisor). */ + unsigned int flags = (map->flags & ~GNTMAP_device_map) | + GNTMAP_host_map; + for (i = 0; i < map->count; i++) { unsigned long address = (unsigned long) pfn_to_kaddr(page_to_pfn(map->pages[i])); BUG_ON(PageHighMem(map->pages[i])); - gnttab_set_map_op(&map->kmap_ops[i], address, - map->flags | GNTMAP_host_map, + gnttab_set_map_op(&map->kmap_ops[i], address, flags, map->grants[i].ref, map->grants[i].domid); gnttab_set_unmap_op(&map->kunmap_ops[i], address, - map->flags | GNTMAP_host_map, -1); + flags, -1); } } pr_debug("map %d+%d\n", map->index, map->count); err = gnttab_map_refs(map->map_ops, use_ptemod ? map->kmap_ops : NULL, map->pages, map->count); - if (err) - return err; for (i = 0; i < map->count; i++) { - if (map->map_ops[i].status) { + if (map->map_ops[i].status == GNTST_okay) + map->unmap_ops[i].handle = map->map_ops[i].handle; + else if (!err) err = -EINVAL; - continue; - } - map->unmap_ops[i].handle = map->map_ops[i].handle; - if (use_ptemod) - map->kunmap_ops[i].handle = map->kmap_ops[i].handle; -#ifdef CONFIG_XEN_GRANT_DMA_ALLOC - else if (map->dma_vaddr) { - unsigned long bfn; + if (map->flags & GNTMAP_device_map) + map->unmap_ops[i].dev_bus_addr = map->map_ops[i].dev_bus_addr; - bfn = pfn_to_bfn(page_to_pfn(map->pages[i])); - map->unmap_ops[i].dev_bus_addr = __pfn_to_phys(bfn); + if (use_ptemod) { + if (map->kmap_ops[i].status == GNTST_okay) + map->kunmap_ops[i].handle = map->kmap_ops[i].handle; + else if (!err) + err = -EINVAL; } -#endif } return err; } @@ -720,17 +723,18 @@ s16 __user *status[GNTDEV_COPY_BATCH]; unsigned int nr_ops; unsigned int nr_pages; + bool writeable; }; static int gntdev_get_page(struct gntdev_copy_batch *batch, void __user *virt, - bool writeable, unsigned long *gfn) + unsigned long *gfn) { unsigned long addr = (unsigned long)virt; struct page *page; unsigned long xen_pfn; int ret; - ret = get_user_pages_fast(addr, 1, writeable ? FOLL_WRITE : 0, &page); + ret = get_user_pages_fast(addr, 1, batch->writeable ? FOLL_WRITE : 0, &page); if (ret < 0) return ret; @@ -746,9 +750,13 @@ { unsigned int i; - for (i = 0; i < batch->nr_pages; i++) + for (i = 0; i < batch->nr_pages; i++) { + if (batch->writeable && !PageDirty(batch->pages[i])) + set_page_dirty_lock(batch->pages[i]); put_page(batch->pages[i]); + } batch->nr_pages = 0; + batch->writeable = false; } static int gntdev_copy(struct gntdev_copy_batch *batch) @@ -837,8 +845,9 @@ virt = seg->source.virt + copied; off = (unsigned long)virt & ~XEN_PAGE_MASK; len = min(len, (size_t)XEN_PAGE_SIZE - off); + batch->writeable = false; - ret = gntdev_get_page(batch, virt, false, &gfn); + ret = gntdev_get_page(batch, virt, &gfn); if (ret < 0) return ret; @@ -856,8 +865,9 @@ virt = seg->dest.virt + copied; off = (unsigned long)virt & ~XEN_PAGE_MASK; len = min(len, (size_t)XEN_PAGE_SIZE - off); + batch->writeable = true; - ret = gntdev_get_page(batch, virt, true, &gfn); + ret = gntdev_get_page(batch, virt, &gfn); if (ret < 0) return ret; --- linux-azure-5.8-5.8.0.orig/drivers/xen/grant-table.c +++ linux-azure-5.8-5.8.0/drivers/xen/grant-table.c @@ -813,6 +813,78 @@ } EXPORT_SYMBOL_GPL(gnttab_alloc_pages); +void gnttab_page_cache_init(struct gnttab_page_cache *cache) +{ + spin_lock_init(&cache->lock); + INIT_LIST_HEAD(&cache->pages); + cache->num_pages = 0; +} +EXPORT_SYMBOL_GPL(gnttab_page_cache_init); + +int gnttab_page_cache_get(struct gnttab_page_cache *cache, struct page **page) +{ + unsigned long flags; + + spin_lock_irqsave(&cache->lock, flags); + + if (list_empty(&cache->pages)) { + spin_unlock_irqrestore(&cache->lock, flags); + return gnttab_alloc_pages(1, page); + } + + page[0] = list_first_entry(&cache->pages, struct page, lru); + list_del(&page[0]->lru); + cache->num_pages--; + + spin_unlock_irqrestore(&cache->lock, flags); + + return 0; +} +EXPORT_SYMBOL_GPL(gnttab_page_cache_get); + +void gnttab_page_cache_put(struct gnttab_page_cache *cache, struct page **page, + unsigned int num) +{ + unsigned long flags; + unsigned int i; + + spin_lock_irqsave(&cache->lock, flags); + + for (i = 0; i < num; i++) + list_add(&page[i]->lru, &cache->pages); + cache->num_pages += num; + + spin_unlock_irqrestore(&cache->lock, flags); +} +EXPORT_SYMBOL_GPL(gnttab_page_cache_put); + +void gnttab_page_cache_shrink(struct gnttab_page_cache *cache, unsigned int num) +{ + struct page *page[10]; + unsigned int i = 0; + unsigned long flags; + + spin_lock_irqsave(&cache->lock, flags); + + while (cache->num_pages > num) { + page[i] = list_first_entry(&cache->pages, struct page, lru); + list_del(&page[i]->lru); + cache->num_pages--; + if (++i == ARRAY_SIZE(page)) { + spin_unlock_irqrestore(&cache->lock, flags); + gnttab_free_pages(i, page); + i = 0; + spin_lock_irqsave(&cache->lock, flags); + } + } + + spin_unlock_irqrestore(&cache->lock, flags); + + if (i != 0) + gnttab_free_pages(i, page); +} +EXPORT_SYMBOL_GPL(gnttab_page_cache_shrink); + void gnttab_pages_clear_private(int nr_pages, struct page **pages) { int i; --- linux-azure-5.8-5.8.0.orig/drivers/xen/platform-pci.c +++ linux-azure-5.8-5.8.0/drivers/xen/platform-pci.c @@ -149,7 +149,6 @@ ret = gnttab_init(); if (ret) goto grant_out; - xenbus_probe(NULL); return 0; grant_out: gnttab_free_auto_xlat_frames(); --- linux-azure-5.8-5.8.0.orig/drivers/xen/privcmd.c +++ linux-azure-5.8-5.8.0/drivers/xen/privcmd.c @@ -722,14 +722,15 @@ return 0; } -static long privcmd_ioctl_mmap_resource(struct file *file, void __user *udata) +static long privcmd_ioctl_mmap_resource(struct file *file, + struct privcmd_mmap_resource __user *udata) { struct privcmd_data *data = file->private_data; struct mm_struct *mm = current->mm; struct vm_area_struct *vma; struct privcmd_mmap_resource kdata; xen_pfn_t *pfns = NULL; - struct xen_mem_acquire_resource xdata; + struct xen_mem_acquire_resource xdata = { }; int rc; if (copy_from_user(&kdata, udata, sizeof(kdata))) @@ -739,6 +740,22 @@ if (data->domid != DOMID_INVALID && data->domid != kdata.dom) return -EPERM; + /* Both fields must be set or unset */ + if (!!kdata.addr != !!kdata.num) + return -EINVAL; + + xdata.domid = kdata.dom; + xdata.type = kdata.type; + xdata.id = kdata.id; + + if (!kdata.addr && !kdata.num) { + /* Query the size of the resource. */ + rc = HYPERVISOR_memory_op(XENMEM_acquire_resource, &xdata); + if (rc) + return rc; + return __put_user(xdata.nr_frames, &udata->num); + } + mmap_write_lock(mm); vma = find_vma(mm, kdata.addr); @@ -773,10 +790,6 @@ } else vma->vm_private_data = PRIV_VMA_LOCKED; - memset(&xdata, 0, sizeof(xdata)); - xdata.domid = kdata.dom; - xdata.type = kdata.type; - xdata.id = kdata.id; xdata.frame = kdata.idx; xdata.nr_frames = kdata.num; set_xen_guest_handle(xdata.frame_list, pfns); --- linux-azure-5.8-5.8.0.orig/drivers/xen/pvcalls-back.c +++ linux-azure-5.8-5.8.0/drivers/xen/pvcalls-back.c @@ -66,6 +66,7 @@ atomic_t write; atomic_t io; atomic_t release; + atomic_t eoi; void (*saved_data_ready)(struct sock *sk); struct pvcalls_ioworker ioworker; }; @@ -87,7 +88,7 @@ struct pvcalls_fedata *fedata, struct sock_mapping *map); -static void pvcalls_conn_back_read(void *opaque) +static bool pvcalls_conn_back_read(void *opaque) { struct sock_mapping *map = (struct sock_mapping *)opaque; struct msghdr msg; @@ -107,17 +108,17 @@ virt_mb(); if (error) - return; + return false; size = pvcalls_queued(prod, cons, array_size); if (size >= array_size) - return; + return false; spin_lock_irqsave(&map->sock->sk->sk_receive_queue.lock, flags); if (skb_queue_empty(&map->sock->sk->sk_receive_queue)) { atomic_set(&map->read, 0); spin_unlock_irqrestore(&map->sock->sk->sk_receive_queue.lock, flags); - return; + return true; } spin_unlock_irqrestore(&map->sock->sk->sk_receive_queue.lock, flags); wanted = array_size - size; @@ -141,7 +142,7 @@ ret = inet_recvmsg(map->sock, &msg, wanted, MSG_DONTWAIT); WARN_ON(ret > wanted); if (ret == -EAGAIN) /* shouldn't happen */ - return; + return true; if (!ret) ret = -ENOTCONN; spin_lock_irqsave(&map->sock->sk->sk_receive_queue.lock, flags); @@ -160,10 +161,10 @@ virt_wmb(); notify_remote_via_irq(map->irq); - return; + return true; } -static void pvcalls_conn_back_write(struct sock_mapping *map) +static bool pvcalls_conn_back_write(struct sock_mapping *map) { struct pvcalls_data_intf *intf = map->ring; struct pvcalls_data *data = &map->data; @@ -180,7 +181,7 @@ array_size = XEN_FLEX_RING_SIZE(map->ring_order); size = pvcalls_queued(prod, cons, array_size); if (size == 0) - return; + return false; memset(&msg, 0, sizeof(msg)); msg.msg_flags |= MSG_DONTWAIT; @@ -198,12 +199,11 @@ atomic_set(&map->write, 0); ret = inet_sendmsg(map->sock, &msg, size); - if (ret == -EAGAIN || (ret >= 0 && ret < size)) { + if (ret == -EAGAIN) { atomic_inc(&map->write); atomic_inc(&map->io); + return true; } - if (ret == -EAGAIN) - return; /* write the data, then update the indexes */ virt_wmb(); @@ -216,9 +216,13 @@ } /* update the indexes, then notify the other end */ virt_wmb(); - if (prod != cons + ret) + if (prod != cons + ret) { atomic_inc(&map->write); + atomic_inc(&map->io); + } notify_remote_via_irq(map->irq); + + return true; } static void pvcalls_back_ioworker(struct work_struct *work) @@ -227,6 +231,7 @@ struct pvcalls_ioworker, register_work); struct sock_mapping *map = container_of(ioworker, struct sock_mapping, ioworker); + unsigned int eoi_flags = XEN_EOI_FLAG_SPURIOUS; while (atomic_read(&map->io) > 0) { if (atomic_read(&map->release) > 0) { @@ -234,10 +239,18 @@ return; } - if (atomic_read(&map->read) > 0) - pvcalls_conn_back_read(map); - if (atomic_read(&map->write) > 0) - pvcalls_conn_back_write(map); + if (atomic_read(&map->read) > 0 && + pvcalls_conn_back_read(map)) + eoi_flags = 0; + if (atomic_read(&map->write) > 0 && + pvcalls_conn_back_write(map)) + eoi_flags = 0; + + if (atomic_read(&map->eoi) > 0 && !atomic_read(&map->write)) { + atomic_set(&map->eoi, 0); + xen_irq_lateeoi(map->irq, eoi_flags); + eoi_flags = XEN_EOI_FLAG_SPURIOUS; + } atomic_dec(&map->io); } @@ -334,12 +347,9 @@ goto out; map->bytes = page; - ret = bind_interdomain_evtchn_to_irqhandler(fedata->dev->otherend_id, - evtchn, - pvcalls_back_conn_event, - 0, - "pvcalls-backend", - map); + ret = bind_interdomain_evtchn_to_irqhandler_lateeoi( + fedata->dev->otherend_id, evtchn, + pvcalls_back_conn_event, 0, "pvcalls-backend", map); if (ret < 0) goto out; map->irq = ret; @@ -873,15 +883,18 @@ { struct xenbus_device *dev = dev_id; struct pvcalls_fedata *fedata = NULL; + unsigned int eoi_flags = XEN_EOI_FLAG_SPURIOUS; - if (dev == NULL) - return IRQ_HANDLED; + if (dev) { + fedata = dev_get_drvdata(&dev->dev); + if (fedata) { + pvcalls_back_work(fedata); + eoi_flags = 0; + } + } - fedata = dev_get_drvdata(&dev->dev); - if (fedata == NULL) - return IRQ_HANDLED; + xen_irq_lateeoi(irq, eoi_flags); - pvcalls_back_work(fedata); return IRQ_HANDLED; } @@ -891,12 +904,15 @@ struct pvcalls_ioworker *iow; if (map == NULL || map->sock == NULL || map->sock->sk == NULL || - map->sock->sk->sk_user_data != map) + map->sock->sk->sk_user_data != map) { + xen_irq_lateeoi(irq, 0); return IRQ_HANDLED; + } iow = &map->ioworker; atomic_inc(&map->write); + atomic_inc(&map->eoi); atomic_inc(&map->io); queue_work(iow->wq, &iow->register_work); @@ -932,7 +948,7 @@ goto error; } - err = bind_interdomain_evtchn_to_irq(dev->otherend_id, evtchn); + err = bind_interdomain_evtchn_to_irq_lateeoi(dev->otherend_id, evtchn); if (err < 0) goto error; fedata->irq = err; --- linux-azure-5.8-5.8.0.orig/drivers/xen/swiotlb-xen.c +++ linux-azure-5.8-5.8.0/drivers/xen/swiotlb-xen.c @@ -335,6 +335,7 @@ int order = get_order(size); phys_addr_t phys; u64 dma_mask = DMA_BIT_MASK(32); + struct page *page; if (hwdev && hwdev->coherent_dma_mask) dma_mask = hwdev->coherent_dma_mask; @@ -346,9 +347,14 @@ /* Convert the size to actually allocated. */ size = 1UL << (order + XEN_PAGE_SHIFT); + if (is_vmalloc_addr(vaddr)) + page = vmalloc_to_page(vaddr); + else + page = virt_to_page(vaddr); + if (!WARN_ON((dev_addr + size - 1 > dma_mask) || range_straddles_page_boundary(phys, size)) && - TestClearPageXenRemapped(virt_to_page(vaddr))) + TestClearPageXenRemapped(page)) xen_destroy_contiguous_region(phys, order); xen_free_coherent_pages(hwdev, size, vaddr, (dma_addr_t)phys, attrs); --- linux-azure-5.8-5.8.0.orig/drivers/xen/xen-pciback/pci_stub.c +++ linux-azure-5.8-5.8.0/drivers/xen/xen-pciback/pci_stub.c @@ -734,10 +734,17 @@ wmb(); notify_remote_via_irq(pdev->evtchn_irq); + /* Enable IRQ to signal "request done". */ + xen_pcibk_lateeoi(pdev, 0); + ret = wait_event_timeout(xen_pcibk_aer_wait_queue, !(test_bit(_XEN_PCIB_active, (unsigned long *) &sh_info->flags)), 300*HZ); + /* Enable IRQ for pcifront request if not already active. */ + if (!test_bit(_PDEVF_op_active, &pdev->flags)) + xen_pcibk_lateeoi(pdev, 0); + if (!ret) { if (test_bit(_XEN_PCIB_active, (unsigned long *)&sh_info->flags)) { @@ -751,12 +758,6 @@ } clear_bit(_PCIB_op_pending, (unsigned long *)&pdev->flags); - if (test_bit(_XEN_PCIF_active, - (unsigned long *)&sh_info->flags)) { - dev_dbg(&psdev->dev->dev, "schedule pci_conf service\n"); - xen_pcibk_test_and_schedule_op(psdev->pdev); - } - res = (pci_ers_result_t)aer_op->err; return res; } --- linux-azure-5.8-5.8.0.orig/drivers/xen/xen-pciback/pciback.h +++ linux-azure-5.8-5.8.0/drivers/xen/xen-pciback/pciback.h @@ -14,6 +14,7 @@ #include #include #include +#include #include #define DRV_NAME "xen-pciback" @@ -27,6 +28,8 @@ #define PDEVF_op_active (1<<(_PDEVF_op_active)) #define _PCIB_op_pending (1) #define PCIB_op_pending (1<<(_PCIB_op_pending)) +#define _EOI_pending (2) +#define EOI_pending (1<<(_EOI_pending)) struct xen_pcibk_device { void *pci_dev_data; @@ -183,10 +186,15 @@ irqreturn_t xen_pcibk_handle_event(int irq, void *dev_id); void xen_pcibk_do_op(struct work_struct *data); +static inline void xen_pcibk_lateeoi(struct xen_pcibk_device *pdev, + unsigned int eoi_flag) +{ + if (test_and_clear_bit(_EOI_pending, &pdev->flags)) + xen_irq_lateeoi(pdev->evtchn_irq, eoi_flag); +} + int xen_pcibk_xenbus_register(void); void xen_pcibk_xenbus_unregister(void); - -void xen_pcibk_test_and_schedule_op(struct xen_pcibk_device *pdev); #endif /* Handles shared IRQs that can to device domain and control domain. */ --- linux-azure-5.8-5.8.0.orig/drivers/xen/xen-pciback/pciback_ops.c +++ linux-azure-5.8-5.8.0/drivers/xen/xen-pciback/pciback_ops.c @@ -276,26 +276,41 @@ return 0; } #endif + +static inline bool xen_pcibk_test_op_pending(struct xen_pcibk_device *pdev) +{ + return test_bit(_XEN_PCIF_active, + (unsigned long *)&pdev->sh_info->flags) && + !test_and_set_bit(_PDEVF_op_active, &pdev->flags); +} + /* * Now the same evtchn is used for both pcifront conf_read_write request * as well as pcie aer front end ack. We use a new work_queue to schedule * xen_pcibk conf_read_write service for avoiding confict with aer_core * do_recovery job which also use the system default work_queue */ -void xen_pcibk_test_and_schedule_op(struct xen_pcibk_device *pdev) +static void xen_pcibk_test_and_schedule_op(struct xen_pcibk_device *pdev) { + bool eoi = true; + /* Check that frontend is requesting an operation and that we are not * already processing a request */ - if (test_bit(_XEN_PCIF_active, (unsigned long *)&pdev->sh_info->flags) - && !test_and_set_bit(_PDEVF_op_active, &pdev->flags)) { + if (xen_pcibk_test_op_pending(pdev)) { schedule_work(&pdev->op_work); + eoi = false; } /*_XEN_PCIB_active should have been cleared by pcifront. And also make sure xen_pcibk is waiting for ack by checking _PCIB_op_pending*/ if (!test_bit(_XEN_PCIB_active, (unsigned long *)&pdev->sh_info->flags) && test_bit(_PCIB_op_pending, &pdev->flags)) { wake_up(&xen_pcibk_aer_wait_queue); + eoi = false; } + + /* EOI if there was nothing to do. */ + if (eoi) + xen_pcibk_lateeoi(pdev, XEN_EOI_FLAG_SPURIOUS); } /* Performing the configuration space reads/writes must not be done in atomic @@ -303,10 +318,8 @@ * use of semaphores). This function is intended to be called from a work * queue in process context taking a struct xen_pcibk_device as a parameter */ -void xen_pcibk_do_op(struct work_struct *data) +static void xen_pcibk_do_one_op(struct xen_pcibk_device *pdev) { - struct xen_pcibk_device *pdev = - container_of(data, struct xen_pcibk_device, op_work); struct pci_dev *dev; struct xen_pcibk_dev_data *dev_data = NULL; struct xen_pci_op *op = &pdev->op; @@ -379,16 +392,31 @@ smp_mb__before_atomic(); /* /after/ clearing PCIF_active */ clear_bit(_PDEVF_op_active, &pdev->flags); smp_mb__after_atomic(); /* /before/ final check for work */ +} - /* Check to see if the driver domain tried to start another request in - * between clearing _XEN_PCIF_active and clearing _PDEVF_op_active. - */ - xen_pcibk_test_and_schedule_op(pdev); +void xen_pcibk_do_op(struct work_struct *data) +{ + struct xen_pcibk_device *pdev = + container_of(data, struct xen_pcibk_device, op_work); + + do { + xen_pcibk_do_one_op(pdev); + } while (xen_pcibk_test_op_pending(pdev)); + + xen_pcibk_lateeoi(pdev, 0); } irqreturn_t xen_pcibk_handle_event(int irq, void *dev_id) { struct xen_pcibk_device *pdev = dev_id; + bool eoi; + + /* IRQs might come in before pdev->evtchn_irq is written. */ + if (unlikely(pdev->evtchn_irq != irq)) + pdev->evtchn_irq = irq; + + eoi = test_and_set_bit(_EOI_pending, &pdev->flags); + WARN(eoi, "IRQ while EOI pending\n"); xen_pcibk_test_and_schedule_op(pdev); --- linux-azure-5.8-5.8.0.orig/drivers/xen/xen-pciback/xenbus.c +++ linux-azure-5.8-5.8.0/drivers/xen/xen-pciback/xenbus.c @@ -123,7 +123,7 @@ pdev->sh_info = vaddr; - err = bind_interdomain_evtchn_to_irqhandler( + err = bind_interdomain_evtchn_to_irqhandler_lateeoi( pdev->xdev->otherend_id, remote_evtchn, xen_pcibk_handle_event, 0, DRV_NAME, pdev); if (err < 0) { @@ -689,7 +689,7 @@ /* watch the backend node for backend configuration information */ err = xenbus_watch_path(dev, dev->nodename, &pdev->be_watch, - xen_pcibk_be_watch); + NULL, xen_pcibk_be_watch); if (err) goto out; --- linux-azure-5.8-5.8.0.orig/drivers/xen/xen-scsiback.c +++ linux-azure-5.8-5.8.0/drivers/xen/xen-scsiback.c @@ -91,7 +91,6 @@ unsigned int irq; struct vscsiif_back_ring ring; - int ring_error; spinlock_t ring_lock; atomic_t nr_unreplied_reqs; @@ -100,6 +99,8 @@ struct list_head v2p_entry_lists; wait_queue_head_t waiting_to_free; + + struct gnttab_page_cache free_pages; }; /* theoretical maximum of grants for one request */ @@ -189,10 +190,6 @@ MODULE_PARM_DESC(max_buffer_pages, "Maximum number of free pages to keep in backend buffer"); -static DEFINE_SPINLOCK(free_pages_lock); -static int free_pages_num; -static LIST_HEAD(scsiback_free_pages); - /* Global spinlock to protect scsiback TPG list */ static DEFINE_MUTEX(scsiback_mutex); static LIST_HEAD(scsiback_list); @@ -208,41 +205,6 @@ wake_up(&info->waiting_to_free); } -static void put_free_pages(struct page **page, int num) -{ - unsigned long flags; - int i = free_pages_num + num, n = num; - - if (num == 0) - return; - if (i > scsiback_max_buffer_pages) { - n = min(num, i - scsiback_max_buffer_pages); - gnttab_free_pages(n, page + num - n); - n = num - n; - } - spin_lock_irqsave(&free_pages_lock, flags); - for (i = 0; i < n; i++) - list_add(&page[i]->lru, &scsiback_free_pages); - free_pages_num += n; - spin_unlock_irqrestore(&free_pages_lock, flags); -} - -static int get_free_page(struct page **page) -{ - unsigned long flags; - - spin_lock_irqsave(&free_pages_lock, flags); - if (list_empty(&scsiback_free_pages)) { - spin_unlock_irqrestore(&free_pages_lock, flags); - return gnttab_alloc_pages(1, page); - } - page[0] = list_first_entry(&scsiback_free_pages, struct page, lru); - list_del(&page[0]->lru); - free_pages_num--; - spin_unlock_irqrestore(&free_pages_lock, flags); - return 0; -} - static unsigned long vaddr_page(struct page *page) { unsigned long pfn = page_to_pfn(page); @@ -303,7 +265,8 @@ BUG_ON(err); } - put_free_pages(req->pages, req->n_grants); + gnttab_page_cache_put(&req->info->free_pages, req->pages, + req->n_grants); req->n_grants = 0; } @@ -423,12 +386,12 @@ return 0; err = gnttab_map_refs(map, NULL, pg, cnt); - BUG_ON(err); for (i = 0; i < cnt; i++) { if (unlikely(map[i].status != GNTST_okay)) { pr_err("invalid buffer -- could not remap it\n"); map[i].handle = SCSIBACK_INVALID_HANDLE; - err = -ENOMEM; + if (!err) + err = -ENOMEM; } else { get_page(pg[i]); } @@ -446,8 +409,8 @@ struct vscsibk_info *info = pending_req->info; for (i = 0; i < cnt; i++) { - if (get_free_page(pg + mapcount)) { - put_free_pages(pg, mapcount); + if (gnttab_page_cache_get(&info->free_pages, pg + mapcount)) { + gnttab_page_cache_put(&info->free_pages, pg, mapcount); pr_err("no grant page\n"); return -ENOMEM; } @@ -722,7 +685,8 @@ return pending_req; } -static int scsiback_do_cmd_fn(struct vscsibk_info *info) +static int scsiback_do_cmd_fn(struct vscsibk_info *info, + unsigned int *eoi_flags) { struct vscsiif_back_ring *ring = &info->ring; struct vscsiif_request ring_req; @@ -739,11 +703,12 @@ rc = ring->rsp_prod_pvt; pr_warn("Dom%d provided bogus ring requests (%#x - %#x = %u). Halting ring processing\n", info->domid, rp, rc, rp - rc); - info->ring_error = 1; - return 0; + return -EINVAL; } while ((rc != rp)) { + *eoi_flags &= ~XEN_EOI_FLAG_SPURIOUS; + if (RING_REQUEST_CONS_OVERFLOW(ring, rc)) break; @@ -795,6 +760,8 @@ cond_resched(); } + gnttab_page_cache_shrink(&info->free_pages, scsiback_max_buffer_pages); + RING_FINAL_CHECK_FOR_REQUESTS(&info->ring, more_to_do); return more_to_do; } @@ -802,13 +769,16 @@ static irqreturn_t scsiback_irq_fn(int irq, void *dev_id) { struct vscsibk_info *info = dev_id; + int rc; + unsigned int eoi_flags = XEN_EOI_FLAG_SPURIOUS; - if (info->ring_error) - return IRQ_HANDLED; - - while (scsiback_do_cmd_fn(info)) + while ((rc = scsiback_do_cmd_fn(info, &eoi_flags)) > 0) cond_resched(); + /* In case of a ring error we keep the event channel masked. */ + if (!rc) + xen_irq_lateeoi(irq, eoi_flags); + return IRQ_HANDLED; } @@ -829,7 +799,7 @@ sring = (struct vscsiif_sring *)area; BACK_RING_INIT(&info->ring, sring, PAGE_SIZE); - err = bind_interdomain_evtchn_to_irq(info->domid, evtchn); + err = bind_interdomain_evtchn_to_irq_lateeoi(info->domid, evtchn); if (err < 0) goto unmap_page; @@ -1229,6 +1199,8 @@ scsiback_release_translation_entry(info); + gnttab_page_cache_shrink(&info->free_pages, 0); + dev_set_drvdata(&dev->dev, NULL); return 0; @@ -1253,13 +1225,13 @@ info->domid = dev->otherend_id; spin_lock_init(&info->ring_lock); - info->ring_error = 0; atomic_set(&info->nr_unreplied_reqs, 0); init_waitqueue_head(&info->waiting_to_free); info->dev = dev; info->irq = 0; INIT_LIST_HEAD(&info->v2p_entry_lists); spin_lock_init(&info->v2p_lock); + gnttab_page_cache_init(&info->free_pages); err = xenbus_printf(XBT_NIL, dev->nodename, "feature-sg-grant", "%u", SG_ALL); @@ -1876,13 +1848,6 @@ static void __exit scsiback_exit(void) { - struct page *page; - - while (free_pages_num) { - if (get_free_page(&page)) - BUG(); - gnttab_free_pages(1, &page); - } target_unregister_template(&scsiback_ops); xenbus_unregister_driver(&scsiback_driver); } --- linux-azure-5.8-5.8.0.orig/drivers/xen/xenbus/xenbus.h +++ linux-azure-5.8-5.8.0/drivers/xen/xenbus/xenbus.h @@ -44,6 +44,8 @@ int (*get_bus_id)(char bus_id[XEN_BUS_ID_SIZE], const char *nodename); int (*probe)(struct xen_bus_type *bus, const char *type, const char *dir); + bool (*otherend_will_handle)(struct xenbus_watch *watch, + const char *path, const char *token); void (*otherend_changed)(struct xenbus_watch *watch, const char *path, const char *token); struct bus_type bus; --- linux-azure-5.8-5.8.0.orig/drivers/xen/xenbus/xenbus_client.c +++ linux-azure-5.8-5.8.0/drivers/xen/xenbus/xenbus_client.c @@ -130,18 +130,22 @@ */ int xenbus_watch_path(struct xenbus_device *dev, const char *path, struct xenbus_watch *watch, + bool (*will_handle)(struct xenbus_watch *, + const char *, const char *), void (*callback)(struct xenbus_watch *, const char *, const char *)) { int err; watch->node = path; + watch->will_handle = will_handle; watch->callback = callback; err = register_xenbus_watch(watch); if (err) { watch->node = NULL; + watch->will_handle = NULL; watch->callback = NULL; xenbus_dev_fatal(dev, err, "adding watch on %s", path); } @@ -168,6 +172,8 @@ */ int xenbus_watch_pathfmt(struct xenbus_device *dev, struct xenbus_watch *watch, + bool (*will_handle)(struct xenbus_watch *, + const char *, const char *), void (*callback)(struct xenbus_watch *, const char *, const char *), const char *pathfmt, ...) @@ -184,7 +190,7 @@ xenbus_dev_fatal(dev, -ENOMEM, "allocating path for watch"); return -ENOMEM; } - err = xenbus_watch_path(dev, path, watch, callback); + err = xenbus_watch_path(dev, path, watch, will_handle, callback); if (err) kfree(path); @@ -379,8 +385,14 @@ int i, j; for (i = 0; i < nr_pages; i++) { - err = gnttab_grant_foreign_access(dev->otherend_id, - virt_to_gfn(vaddr), 0); + unsigned long gfn; + + if (is_vmalloc_addr(vaddr)) + gfn = pfn_to_gfn(vmalloc_to_pfn(vaddr)); + else + gfn = virt_to_gfn(vaddr); + + err = gnttab_grant_foreign_access(dev->otherend_id, gfn, 0); if (err < 0) { xenbus_dev_fatal(dev, err, "granting access to ring page"); --- linux-azure-5.8-5.8.0.orig/drivers/xen/xenbus/xenbus_comms.c +++ linux-azure-5.8-5.8.0/drivers/xen/xenbus/xenbus_comms.c @@ -57,16 +57,8 @@ static int xenbus_irq; static struct task_struct *xenbus_task; -static DECLARE_WORK(probe_work, xenbus_probe); - - static irqreturn_t wake_waiting(int irq, void *unused) { - if (unlikely(xenstored_ready == 0)) { - xenstored_ready = 1; - schedule_work(&probe_work); - } - wake_up(&xb_waitq); return IRQ_HANDLED; } --- linux-azure-5.8-5.8.0.orig/drivers/xen/xenbus/xenbus_probe.c +++ linux-azure-5.8-5.8.0/drivers/xen/xenbus/xenbus_probe.c @@ -136,6 +136,7 @@ container_of(dev->dev.bus, struct xen_bus_type, bus); return xenbus_watch_pathfmt(dev, &dev->otherend_watch, + bus->otherend_will_handle, bus->otherend_changed, "%s/%s", dev->otherend, "state"); } @@ -682,29 +683,107 @@ } EXPORT_SYMBOL_GPL(unregister_xenstore_notifier); -void xenbus_probe(struct work_struct *unused) +static void xenbus_probe(void) { xenstored_ready = 1; + /* + * In the HVM case, xenbus_init() deferred its call to + * xs_init() in case callbacks were not operational yet. + * So do it now. + */ + if (xen_store_domain_type == XS_HVM) + xs_init(); + /* Notify others that xenstore is up */ blocking_notifier_call_chain(&xenstore_chain, 0, NULL); } -EXPORT_SYMBOL_GPL(xenbus_probe); -static int __init xenbus_probe_initcall(void) +/* + * Returns true when XenStore init must be deferred in order to + * allow the PCI platform device to be initialised, before we + * can actually have event channel interrupts working. + */ +static bool xs_hvm_defer_init_for_callback(void) { - if (!xen_domain()) - return -ENODEV; +#ifdef CONFIG_XEN_PVHVM + return xen_store_domain_type == XS_HVM && + !xen_have_vector_callback; +#else + return false; +#endif +} - if (xen_initial_domain() || xen_hvm_domain()) - return 0; +static int xenbus_probe_thread(void *unused) +{ + DEFINE_WAIT(w); - xenbus_probe(NULL); + /* + * We actually just want to wait for *any* trigger of xb_waitq, + * and run xenbus_probe() the moment it occurs. + */ + prepare_to_wait(&xb_waitq, &w, TASK_INTERRUPTIBLE); + schedule(); + finish_wait(&xb_waitq, &w); + + DPRINTK("probing"); + xenbus_probe(); return 0; } +static int __init xenbus_probe_initcall(void) +{ + /* + * Probe XenBus here in the XS_PV case, and also XS_HVM unless we + * need to wait for the platform PCI device to come up. + */ + if (xen_store_domain_type == XS_PV || + (xen_store_domain_type == XS_HVM && + !xs_hvm_defer_init_for_callback())) + xenbus_probe(); + + /* + * For XS_LOCAL, spawn a thread which will wait for xenstored + * or a xenstore-stubdom to be started, then probe. It will be + * triggered when communication starts happening, by waiting + * on xb_waitq. + */ + if (xen_store_domain_type == XS_LOCAL) { + struct task_struct *probe_task; + + probe_task = kthread_run(xenbus_probe_thread, NULL, + "xenbus_probe"); + if (IS_ERR(probe_task)) + return PTR_ERR(probe_task); + } + return 0; +} device_initcall(xenbus_probe_initcall); +int xen_set_callback_via(uint64_t via) +{ + struct xen_hvm_param a; + int ret; + + a.domid = DOMID_SELF; + a.index = HVM_PARAM_CALLBACK_IRQ; + a.value = via; + + ret = HYPERVISOR_hvm_op(HVMOP_set_param, &a); + if (ret) + return ret; + + /* + * If xenbus_probe_initcall() deferred the xenbus_probe() + * due to the callback not functioning yet, we can do it now. + */ + if (!xenstored_ready && xs_hvm_defer_init_for_callback()) + xenbus_probe(); + + return ret; +} +EXPORT_SYMBOL_GPL(xen_set_callback_via); + /* Set up event channel for xenstored which is run as a local process * (this is normally used only in dom0) */ @@ -817,11 +896,17 @@ break; } - /* Initialize the interface to xenstore. */ - err = xs_init(); - if (err) { - pr_warn("Error initializing xenstore comms: %i\n", err); - goto out_error; + /* + * HVM domains may not have a functional callback yet. In that + * case let xs_init() be called from xenbus_probe(), which will + * get invoked at an appropriate time. + */ + if (xen_store_domain_type != XS_HVM) { + err = xs_init(); + if (err) { + pr_warn("Error initializing xenstore comms: %i\n", err); + goto out_error; + } } if ((xen_store_domain_type != XS_LOCAL) && --- linux-azure-5.8-5.8.0.orig/drivers/xen/xenbus/xenbus_probe_backend.c +++ linux-azure-5.8-5.8.0/drivers/xen/xenbus/xenbus_probe_backend.c @@ -180,6 +180,12 @@ return err; } +static bool frontend_will_handle(struct xenbus_watch *watch, + const char *path, const char *token) +{ + return watch->nr_pending == 0; +} + static void frontend_changed(struct xenbus_watch *watch, const char *path, const char *token) { @@ -191,6 +197,7 @@ .levels = 3, /* backend/type// */ .get_bus_id = backend_bus_id, .probe = xenbus_probe_backend, + .otherend_will_handle = frontend_will_handle, .otherend_changed = frontend_changed, .bus = { .name = "xen-backend", --- linux-azure-5.8-5.8.0.orig/drivers/xen/xenbus/xenbus_xs.c +++ linux-azure-5.8-5.8.0/drivers/xen/xenbus/xenbus_xs.c @@ -705,9 +705,13 @@ spin_lock(&watches_lock); event->handle = find_watch(event->token); - if (event->handle != NULL) { + if (event->handle != NULL && + (!event->handle->will_handle || + event->handle->will_handle(event->handle, + event->path, event->token))) { spin_lock(&watch_events_lock); list_add_tail(&event->list, &watch_events); + event->handle->nr_pending++; wake_up(&watch_events_waitq); spin_unlock(&watch_events_lock); } else @@ -765,6 +769,8 @@ sprintf(token, "%lX", (long)watch); + watch->nr_pending = 0; + down_read(&xs_watch_rwsem); spin_lock(&watches_lock); @@ -814,11 +820,14 @@ /* Cancel pending watch events. */ spin_lock(&watch_events_lock); - list_for_each_entry_safe(event, tmp, &watch_events, list) { - if (event->handle != watch) - continue; - list_del(&event->list); - kfree(event); + if (watch->nr_pending) { + list_for_each_entry_safe(event, tmp, &watch_events, list) { + if (event->handle != watch) + continue; + list_del(&event->list); + kfree(event); + } + watch->nr_pending = 0; } spin_unlock(&watch_events_lock); @@ -865,7 +874,6 @@ static int xenwatch_thread(void *unused) { - struct list_head *ent; struct xs_watch_event *event; xenwatch_pid = current->pid; @@ -880,13 +888,15 @@ mutex_lock(&xenwatch_mutex); spin_lock(&watch_events_lock); - ent = watch_events.next; - if (ent != &watch_events) - list_del(ent); + event = list_first_entry_or_null(&watch_events, + struct xs_watch_event, list); + if (event) { + list_del(&event->list); + event->handle->nr_pending--; + } spin_unlock(&watch_events_lock); - if (ent != &watch_events) { - event = list_entry(ent, struct xs_watch_event, list); + if (event) { event->handle->callback(event->handle, event->path, event->token); kfree(event); --- linux-azure-5.8-5.8.0.orig/fs/9p/v9fs.c +++ linux-azure-5.8-5.8.0/fs/9p/v9fs.c @@ -500,10 +500,9 @@ } #ifdef CONFIG_9P_FSCACHE - if (v9ses->fscache) { + if (v9ses->fscache) v9fs_cache_session_put_cookie(v9ses); - kfree(v9ses->cachetag); - } + kfree(v9ses->cachetag); #endif kfree(v9ses->uname); kfree(v9ses->aname); --- linux-azure-5.8-5.8.0.orig/fs/9p/vfs_file.c +++ linux-azure-5.8-5.8.0/fs/9p/vfs_file.c @@ -612,9 +612,9 @@ struct writeback_control wbc = { .nr_to_write = LONG_MAX, .sync_mode = WB_SYNC_ALL, - .range_start = vma->vm_pgoff * PAGE_SIZE, + .range_start = (loff_t)vma->vm_pgoff * PAGE_SIZE, /* absolute end, byte at end included */ - .range_end = vma->vm_pgoff * PAGE_SIZE + + .range_end = (loff_t)vma->vm_pgoff * PAGE_SIZE + (vma->vm_end - vma->vm_start - 1), }; --- linux-azure-5.8-5.8.0.orig/fs/Kconfig +++ linux-azure-5.8-5.8.0/fs/Kconfig @@ -123,6 +123,24 @@ source "fs/fuse/Kconfig" source "fs/overlayfs/Kconfig" +config SHIFT_FS + tristate "UID/GID shifting overlay filesystem for containers" + help + This filesystem can overlay any mounted filesystem and shift + the uid/gid the files appear at. The idea is that + unprivileged containers can use this to mount root volumes + using this technique. + +config SHIFT_FS_POSIX_ACL + bool "shiftfs POSIX Access Control Lists" + depends on SHIFT_FS + select FS_POSIX_ACL + help + POSIX Access Control Lists (ACLs) support permissions for users and + groups beyond the owner/group/world scheme. + + If you don't know what Access Control Lists are, say N. + menu "Caches" source "fs/fscache/Kconfig" @@ -267,6 +285,7 @@ source "fs/ufs/Kconfig" source "fs/erofs/Kconfig" source "fs/vboxsf/Kconfig" +source "fs/aufs/Kconfig" endif # MISC_FILESYSTEMS --- linux-azure-5.8-5.8.0.orig/fs/Makefile +++ linux-azure-5.8-5.8.0/fs/Makefile @@ -136,3 +136,5 @@ obj-$(CONFIG_EROFS_FS) += erofs/ obj-$(CONFIG_VBOXSF_FS) += vboxsf/ obj-$(CONFIG_ZONEFS_FS) += zonefs/ +obj-$(CONFIG_SHIFT_FS) += shiftfs.o +obj-$(CONFIG_AUFS_FS) += aufs/ --- linux-azure-5.8-5.8.0.orig/fs/affs/amigaffs.c +++ linux-azure-5.8-5.8.0/fs/affs/amigaffs.c @@ -420,24 +420,51 @@ u32 prot = AFFS_I(inode)->i_protect; umode_t mode = inode->i_mode; + /* + * First, clear all RWED bits for owner, group, other. + * Then, recalculate them afresh. + * + * We'll always clear the delete-inhibit bit for the owner, as that is + * the classic single-user mode AmigaOS protection bit and we need to + * stay compatible with all scenarios. + * + * Since multi-user AmigaOS is an extension, we'll only set the + * delete-allow bit if any of the other bits in the same user class + * (group/other) are used. + */ + prot &= ~(FIBF_NOEXECUTE | FIBF_NOREAD + | FIBF_NOWRITE | FIBF_NODELETE + | FIBF_GRP_EXECUTE | FIBF_GRP_READ + | FIBF_GRP_WRITE | FIBF_GRP_DELETE + | FIBF_OTR_EXECUTE | FIBF_OTR_READ + | FIBF_OTR_WRITE | FIBF_OTR_DELETE); + + /* Classic single-user AmigaOS flags. These are inverted. */ if (!(mode & 0100)) prot |= FIBF_NOEXECUTE; if (!(mode & 0400)) prot |= FIBF_NOREAD; if (!(mode & 0200)) prot |= FIBF_NOWRITE; + + /* Multi-user extended flags. Not inverted. */ if (mode & 0010) prot |= FIBF_GRP_EXECUTE; if (mode & 0040) prot |= FIBF_GRP_READ; if (mode & 0020) prot |= FIBF_GRP_WRITE; + if (mode & 0070) + prot |= FIBF_GRP_DELETE; + if (mode & 0001) prot |= FIBF_OTR_EXECUTE; if (mode & 0004) prot |= FIBF_OTR_READ; if (mode & 0002) prot |= FIBF_OTR_WRITE; + if (mode & 0007) + prot |= FIBF_OTR_DELETE; AFFS_I(inode)->i_protect = prot; } --- linux-azure-5.8-5.8.0.orig/fs/affs/file.c +++ linux-azure-5.8-5.8.0/fs/affs/file.c @@ -428,6 +428,24 @@ return ret; } +static int affs_write_end(struct file *file, struct address_space *mapping, + loff_t pos, unsigned int len, unsigned int copied, + struct page *page, void *fsdata) +{ + struct inode *inode = mapping->host; + int ret; + + ret = generic_write_end(file, mapping, pos, len, copied, page, fsdata); + + /* Clear Archived bit on file writes, as AmigaOS would do */ + if (AFFS_I(inode)->i_protect & FIBF_ARCHIVED) { + AFFS_I(inode)->i_protect &= ~FIBF_ARCHIVED; + mark_inode_dirty(inode); + } + + return ret; +} + static sector_t _affs_bmap(struct address_space *mapping, sector_t block) { return generic_block_bmap(mapping,block,affs_get_block); @@ -437,7 +455,7 @@ .readpage = affs_readpage, .writepage = affs_writepage, .write_begin = affs_write_begin, - .write_end = generic_write_end, + .write_end = affs_write_end, .direct_IO = affs_direct_IO, .bmap = _affs_bmap }; @@ -794,6 +812,12 @@ if (tmp > inode->i_size) inode->i_size = AFFS_I(inode)->mmu_private = tmp; + /* Clear Archived bit on file writes, as AmigaOS would do */ + if (AFFS_I(inode)->i_protect & FIBF_ARCHIVED) { + AFFS_I(inode)->i_protect &= ~FIBF_ARCHIVED; + mark_inode_dirty(inode); + } + err_first_bh: unlock_page(page); put_page(page); --- linux-azure-5.8-5.8.0.orig/fs/affs/namei.c +++ linux-azure-5.8-5.8.0/fs/affs/namei.c @@ -460,8 +460,10 @@ return -EIO; bh_new = affs_bread(sb, d_inode(new_dentry)->i_ino); - if (!bh_new) + if (!bh_new) { + affs_brelse(bh_old); return -EIO; + } /* Remove old header from its parent directory. */ affs_lock_dir(old_dir); --- linux-azure-5.8-5.8.0.orig/fs/afs/cell.c +++ linux-azure-5.8-5.8.0/fs/afs/cell.c @@ -19,7 +19,8 @@ static unsigned __read_mostly afs_cell_min_ttl = 10 * 60; static unsigned __read_mostly afs_cell_max_ttl = 24 * 60 * 60; -static void afs_manage_cell(struct work_struct *); +static void afs_queue_cell_manager(struct afs_net *); +static void afs_manage_cell_work(struct work_struct *); static void afs_dec_cells_outstanding(struct afs_net *net) { @@ -37,19 +38,21 @@ atomic_inc(&net->cells_outstanding); if (timer_reduce(&net->cells_timer, jiffies + delay * HZ)) afs_dec_cells_outstanding(net); + } else { + afs_queue_cell_manager(net); } } /* - * Look up and get an activation reference on a cell record under RCU - * conditions. The caller must hold the RCU read lock. + * Look up and get an activation reference on a cell record. The caller must + * hold net->cells_lock at least read-locked. */ -struct afs_cell *afs_lookup_cell_rcu(struct afs_net *net, - const char *name, unsigned int namesz) +static struct afs_cell *afs_find_cell_locked(struct afs_net *net, + const char *name, unsigned int namesz) { struct afs_cell *cell = NULL; struct rb_node *p; - int n, seq = 0, ret = 0; + int n; _enter("%*.*s", namesz, namesz, name); @@ -58,61 +61,47 @@ if (namesz > AFS_MAXCELLNAME) return ERR_PTR(-ENAMETOOLONG); - do { - /* Unfortunately, rbtree walking doesn't give reliable results - * under just the RCU read lock, so we have to check for - * changes. - */ - if (cell) - afs_put_cell(net, cell); - cell = NULL; - ret = -ENOENT; - - read_seqbegin_or_lock(&net->cells_lock, &seq); - - if (!name) { - cell = rcu_dereference_raw(net->ws_cell); - if (cell) { - afs_get_cell(cell); - ret = 0; - break; - } - ret = -EDESTADDRREQ; - continue; - } + if (!name) { + cell = net->ws_cell; + if (!cell) + return ERR_PTR(-EDESTADDRREQ); + goto found; + } - p = rcu_dereference_raw(net->cells.rb_node); - while (p) { - cell = rb_entry(p, struct afs_cell, net_node); - - n = strncasecmp(cell->name, name, - min_t(size_t, cell->name_len, namesz)); - if (n == 0) - n = cell->name_len - namesz; - if (n < 0) { - p = rcu_dereference_raw(p->rb_left); - } else if (n > 0) { - p = rcu_dereference_raw(p->rb_right); - } else { - if (atomic_inc_not_zero(&cell->usage)) { - ret = 0; - break; - } - /* We want to repeat the search, this time with - * the lock properly locked. - */ - } - cell = NULL; - } + p = net->cells.rb_node; + while (p) { + cell = rb_entry(p, struct afs_cell, net_node); - } while (need_seqretry(&net->cells_lock, seq)); + n = strncasecmp(cell->name, name, + min_t(size_t, cell->name_len, namesz)); + if (n == 0) + n = cell->name_len - namesz; + if (n < 0) + p = p->rb_left; + else if (n > 0) + p = p->rb_right; + else + goto found; + } - done_seqretry(&net->cells_lock, seq); + return ERR_PTR(-ENOENT); - if (ret != 0 && cell) - afs_put_cell(net, cell); +found: + return afs_use_cell(cell); +} - return ret == 0 ? cell : ERR_PTR(ret); +/* + * Look up and get an activation reference on a cell record. + */ +struct afs_cell *afs_find_cell(struct afs_net *net, + const char *name, unsigned int namesz) +{ + struct afs_cell *cell; + + down_read(&net->cells_lock); + cell = afs_find_cell_locked(net, name, namesz); + up_read(&net->cells_lock); + return cell; } /* @@ -166,8 +155,9 @@ cell->name[i] = tolower(name[i]); cell->name[i] = 0; - atomic_set(&cell->usage, 2); - INIT_WORK(&cell->manager, afs_manage_cell); + atomic_set(&cell->ref, 1); + atomic_set(&cell->active, 0); + INIT_WORK(&cell->manager, afs_manage_cell_work); cell->volumes = RB_ROOT; INIT_HLIST_HEAD(&cell->proc_volumes); seqlock_init(&cell->volume_lock); @@ -206,6 +196,7 @@ cell->dns_source = vllist->source; cell->dns_status = vllist->status; smp_store_release(&cell->dns_lookup_count, 1); /* vs source/status */ + atomic_inc(&net->cells_outstanding); _leave(" = %p", cell); return cell; @@ -245,9 +236,7 @@ _enter("%s,%s", name, vllist); if (!excl) { - rcu_read_lock(); - cell = afs_lookup_cell_rcu(net, name, namesz); - rcu_read_unlock(); + cell = afs_find_cell(net, name, namesz); if (!IS_ERR(cell)) goto wait_for_cell; } @@ -268,7 +257,7 @@ /* Find the insertion point and check to see if someone else added a * cell whilst we were allocating. */ - write_seqlock(&net->cells_lock); + down_write(&net->cells_lock); pp = &net->cells.rb_node; parent = NULL; @@ -290,23 +279,23 @@ cell = candidate; candidate = NULL; + atomic_set(&cell->active, 2); rb_link_node_rcu(&cell->net_node, parent, pp); rb_insert_color(&cell->net_node, &net->cells); - atomic_inc(&net->cells_outstanding); - write_sequnlock(&net->cells_lock); + up_write(&net->cells_lock); - queue_work(afs_wq, &cell->manager); + afs_queue_cell(cell); wait_for_cell: _debug("wait_for_cell"); wait_var_event(&cell->state, ({ state = smp_load_acquire(&cell->state); /* vs error */ - state == AFS_CELL_ACTIVE || state == AFS_CELL_FAILED; + state == AFS_CELL_ACTIVE || state == AFS_CELL_REMOVED; })); /* Check the state obtained from the wait check. */ - if (state == AFS_CELL_FAILED) { + if (state == AFS_CELL_REMOVED) { ret = cell->error; goto error; } @@ -320,16 +309,17 @@ if (excl) { ret = -EEXIST; } else { - afs_get_cell(cursor); + afs_use_cell(cursor); ret = 0; } - write_sequnlock(&net->cells_lock); - kfree(candidate); + up_write(&net->cells_lock); + if (candidate) + afs_put_cell(candidate); if (ret == 0) goto wait_for_cell; goto error_noput; error: - afs_put_cell(net, cell); + afs_unuse_cell(net, cell); error_noput: _leave(" = %d [error]", ret); return ERR_PTR(ret); @@ -374,15 +364,15 @@ } if (!test_and_set_bit(AFS_CELL_FL_NO_GC, &new_root->flags)) - afs_get_cell(new_root); + afs_use_cell(new_root); /* install the new cell */ - write_seqlock(&net->cells_lock); - old_root = rcu_access_pointer(net->ws_cell); - rcu_assign_pointer(net->ws_cell, new_root); - write_sequnlock(&net->cells_lock); + down_write(&net->cells_lock); + old_root = net->ws_cell; + net->ws_cell = new_root; + up_write(&net->cells_lock); - afs_put_cell(net, old_root); + afs_unuse_cell(net, old_root); _leave(" = 0"); return 0; } @@ -488,18 +478,21 @@ static void afs_cell_destroy(struct rcu_head *rcu) { struct afs_cell *cell = container_of(rcu, struct afs_cell, rcu); + struct afs_net *net = cell->net; + int u; _enter("%p{%s}", cell, cell->name); - ASSERTCMP(atomic_read(&cell->usage), ==, 0); + u = atomic_read(&cell->ref); + ASSERTCMP(u, ==, 0); - afs_put_volume(cell->net, cell->root_volume, afs_volume_trace_put_cell_root); - afs_put_vlserverlist(cell->net, rcu_access_pointer(cell->vl_servers)); - afs_put_cell(cell->net, cell->alias_of); + afs_put_vlserverlist(net, rcu_access_pointer(cell->vl_servers)); + afs_unuse_cell(net, cell->alias_of); key_put(cell->anonymous_key); kfree(cell->name); kfree(cell); + afs_dec_cells_outstanding(net); _leave(" [destroyed]"); } @@ -534,16 +527,50 @@ */ struct afs_cell *afs_get_cell(struct afs_cell *cell) { - atomic_inc(&cell->usage); + if (atomic_read(&cell->ref) <= 0) + BUG(); + + atomic_inc(&cell->ref); return cell; } /* * Drop a reference on a cell record. */ -void afs_put_cell(struct afs_net *net, struct afs_cell *cell) +void afs_put_cell(struct afs_cell *cell) +{ + if (cell) { + unsigned int u, a; + + u = atomic_dec_return(&cell->ref); + if (u == 0) { + a = atomic_read(&cell->active); + WARN(a != 0, "Cell active count %u > 0\n", a); + call_rcu(&cell->rcu, afs_cell_destroy); + } + } +} + +/* + * Note a cell becoming more active. + */ +struct afs_cell *afs_use_cell(struct afs_cell *cell) +{ + if (atomic_read(&cell->ref) <= 0) + BUG(); + + atomic_inc(&cell->active); + return cell; +} + +/* + * Record a cell becoming less active. When the active counter reaches 1, it + * is scheduled for destruction, but may get reactivated. + */ +void afs_unuse_cell(struct afs_net *net, struct afs_cell *cell) { time64_t now, expire_delay; + int a; if (!cell) return; @@ -556,11 +583,21 @@ if (cell->vl_servers->nr_servers) expire_delay = afs_cell_gc_delay; - if (atomic_dec_return(&cell->usage) > 1) - return; + a = atomic_dec_return(&cell->active); + WARN_ON(a == 0); + if (a == 1) + /* 'cell' may now be garbage collected. */ + afs_set_cell_timer(net, expire_delay); +} - /* 'cell' may now be garbage collected. */ - afs_set_cell_timer(net, expire_delay); +/* + * Queue a cell for management, giving the workqueue a ref to hold. + */ +void afs_queue_cell(struct afs_cell *cell) +{ + afs_get_cell(cell); + if (!queue_work(afs_wq, &cell->manager)) + afs_put_cell(cell); } /* @@ -660,12 +697,10 @@ * Manage a cell record, initialising and destroying it, maintaining its DNS * records. */ -static void afs_manage_cell(struct work_struct *work) +static void afs_manage_cell(struct afs_cell *cell) { - struct afs_cell *cell = container_of(work, struct afs_cell, manager); struct afs_net *net = cell->net; - bool deleted; - int ret, usage; + int ret, active; _enter("%s", cell->name); @@ -674,14 +709,17 @@ switch (cell->state) { case AFS_CELL_INACTIVE: case AFS_CELL_FAILED: - write_seqlock(&net->cells_lock); - usage = 1; - deleted = atomic_try_cmpxchg_relaxed(&cell->usage, &usage, 0); - if (deleted) + down_write(&net->cells_lock); + active = 1; + if (atomic_try_cmpxchg_relaxed(&cell->active, &active, 0)) { rb_erase(&cell->net_node, &net->cells); - write_sequnlock(&net->cells_lock); - if (deleted) + smp_store_release(&cell->state, AFS_CELL_REMOVED); + } + up_write(&net->cells_lock); + if (cell->state == AFS_CELL_REMOVED) { + wake_up_var(&cell->state); goto final_destruction; + } if (cell->state == AFS_CELL_FAILED) goto done; smp_store_release(&cell->state, AFS_CELL_UNSET); @@ -703,7 +741,7 @@ goto again; case AFS_CELL_ACTIVE: - if (atomic_read(&cell->usage) > 1) { + if (atomic_read(&cell->active) > 1) { if (test_and_clear_bit(AFS_CELL_FL_DO_LOOKUP, &cell->flags)) { ret = afs_update_cell(cell); if (ret < 0) @@ -716,13 +754,16 @@ goto again; case AFS_CELL_DEACTIVATING: - if (atomic_read(&cell->usage) > 1) + if (atomic_read(&cell->active) > 1) goto reverse_deactivation; afs_deactivate_cell(net, cell); smp_store_release(&cell->state, AFS_CELL_INACTIVE); wake_up_var(&cell->state); goto again; + case AFS_CELL_REMOVED: + goto done; + default: break; } @@ -748,9 +789,18 @@ return; final_destruction: - call_rcu(&cell->rcu, afs_cell_destroy); - afs_dec_cells_outstanding(net); - _leave(" [destruct %d]", atomic_read(&net->cells_outstanding)); + /* The root volume is pinning the cell */ + afs_put_volume(cell->net, cell->root_volume, afs_volume_trace_put_cell_root); + cell->root_volume = NULL; + afs_put_cell(cell); +} + +static void afs_manage_cell_work(struct work_struct *work) +{ + struct afs_cell *cell = container_of(work, struct afs_cell, manager); + + afs_manage_cell(cell); + afs_put_cell(cell); } /* @@ -779,26 +829,25 @@ * lack of use and cells whose DNS results have expired and dispatch * their managers. */ - read_seqlock_excl(&net->cells_lock); + down_read(&net->cells_lock); for (cursor = rb_first(&net->cells); cursor; cursor = rb_next(cursor)) { struct afs_cell *cell = rb_entry(cursor, struct afs_cell, net_node); - unsigned usage; + unsigned active; bool sched_cell = false; - usage = atomic_read(&cell->usage); - _debug("manage %s %u", cell->name, usage); + active = atomic_read(&cell->active); + _debug("manage %s %u %u", cell->name, atomic_read(&cell->ref), active); - ASSERTCMP(usage, >=, 1); + ASSERTCMP(active, >=, 1); if (purging) { if (test_and_clear_bit(AFS_CELL_FL_NO_GC, &cell->flags)) - usage = atomic_dec_return(&cell->usage); - ASSERTCMP(usage, ==, 1); + atomic_dec(&cell->active); } - if (usage == 1) { + if (active == 1) { struct afs_vlserver_list *vllist; time64_t expire_at = cell->last_inactive; @@ -821,10 +870,10 @@ } if (sched_cell) - queue_work(afs_wq, &cell->manager); + afs_queue_cell(cell); } - read_sequnlock_excl(&net->cells_lock); + up_read(&net->cells_lock); /* Update the timer on the way out. We have to pass an increment on * cells_outstanding in the namespace that we are in to the timer or @@ -854,11 +903,11 @@ _enter(""); - write_seqlock(&net->cells_lock); - ws = rcu_access_pointer(net->ws_cell); - RCU_INIT_POINTER(net->ws_cell, NULL); - write_sequnlock(&net->cells_lock); - afs_put_cell(net, ws); + down_write(&net->cells_lock); + ws = net->ws_cell; + net->ws_cell = NULL; + up_write(&net->cells_lock); + afs_unuse_cell(net, ws); _debug("del timer"); if (del_timer_sync(&net->cells_timer)) --- linux-azure-5.8-5.8.0.orig/fs/afs/dir.c +++ linux-azure-5.8-5.8.0/fs/afs/dir.c @@ -281,8 +281,7 @@ if (ret < 0) goto error; - set_page_private(req->pages[i], 1); - SetPagePrivate(req->pages[i]); + attach_page_private(req->pages[i], (void *)1); unlock_page(req->pages[i]); i++; } else { @@ -824,6 +823,7 @@ vp->cb_break_before = afs_calc_vnode_cb_break(vnode); vp->vnode = vnode; vp->put_vnode = true; + vp->speculative = true; /* vnode not locked */ } } } @@ -1975,8 +1975,7 @@ _enter("{{%llx:%llu}[%lu]}", dvnode->fid.vid, dvnode->fid.vnode, page->index); - set_page_private(page, 0); - ClearPagePrivate(page); + detach_page_private(page); /* The directory will need reloading. */ if (test_and_clear_bit(AFS_VNODE_DIR_VALID, &dvnode->flags)) @@ -2003,8 +2002,6 @@ afs_stat_v(dvnode, n_inval); /* we clean up only if the entire page is being invalidated */ - if (offset == 0 && length == PAGE_SIZE) { - set_page_private(page, 0); - ClearPagePrivate(page); - } + if (offset == 0 && length == PAGE_SIZE) + detach_page_private(page); } --- linux-azure-5.8-5.8.0.orig/fs/afs/dir_edit.c +++ linux-azure-5.8-5.8.0/fs/afs/dir_edit.c @@ -243,10 +243,8 @@ index, gfp); if (!page) goto error; - if (!PagePrivate(page)) { - set_page_private(page, 1); - SetPagePrivate(page); - } + if (!PagePrivate(page)) + attach_page_private(page, (void *)1); dir_page = kmap(page); } --- linux-azure-5.8-5.8.0.orig/fs/afs/dynroot.c +++ linux-azure-5.8-5.8.0/fs/afs/dynroot.c @@ -123,9 +123,9 @@ len--; } - cell = afs_lookup_cell_rcu(net, name, len); + cell = afs_find_cell(net, name, len); if (!IS_ERR(cell)) { - afs_put_cell(net, cell); + afs_unuse_cell(net, cell); return 0; } @@ -179,7 +179,6 @@ struct afs_cell *cell; struct afs_net *net = afs_d2net(dentry); struct dentry *ret; - unsigned int seq = 0; char *name; int len; @@ -191,17 +190,13 @@ if (!name) goto out_p; - rcu_read_lock(); - do { - read_seqbegin_or_lock(&net->cells_lock, &seq); - cell = rcu_dereference_raw(net->ws_cell); - if (cell) { - len = cell->name_len; - memcpy(name, cell->name, len + 1); - } - } while (need_seqretry(&net->cells_lock, seq)); - done_seqretry(&net->cells_lock, seq); - rcu_read_unlock(); + down_read(&net->cells_lock); + cell = net->ws_cell; + if (cell) { + len = cell->name_len; + memcpy(name, cell->name, len + 1); + } + up_read(&net->cells_lock); ret = ERR_PTR(-ENOENT); if (!cell) @@ -382,15 +377,17 @@ net->dynroot_sb = NULL; mutex_unlock(&net->proc_cells_lock); - inode_lock(root->d_inode); + if (root) { + inode_lock(root->d_inode); - /* Remove all the pins for dirs created for manually added cells */ - list_for_each_entry_safe(subdir, tmp, &root->d_subdirs, d_child) { - if (subdir->d_fsdata) { - subdir->d_fsdata = NULL; - dput(subdir); + /* Remove all the pins for dirs created for manually added cells */ + list_for_each_entry_safe(subdir, tmp, &root->d_subdirs, d_child) { + if (subdir->d_fsdata) { + subdir->d_fsdata = NULL; + dput(subdir); + } } - } - inode_unlock(root->d_inode); + inode_unlock(root->d_inode); + } } --- linux-azure-5.8-5.8.0.orig/fs/afs/file.c +++ linux-azure-5.8-5.8.0/fs/afs/file.c @@ -601,6 +601,63 @@ } /* + * Adjust the dirty region of the page on truncation or full invalidation, + * getting rid of the markers altogether if the region is entirely invalidated. + */ +static void afs_invalidate_dirty(struct page *page, unsigned int offset, + unsigned int length) +{ + struct afs_vnode *vnode = AFS_FS_I(page->mapping->host); + unsigned long priv; + unsigned int f, t, end = offset + length; + + priv = page_private(page); + + /* we clean up only if the entire page is being invalidated */ + if (offset == 0 && length == thp_size(page)) + goto full_invalidate; + + /* If the page was dirtied by page_mkwrite(), the PTE stays writable + * and we don't get another notification to tell us to expand it + * again. + */ + if (afs_is_page_dirty_mmapped(priv)) + return; + + /* We may need to shorten the dirty region */ + f = afs_page_dirty_from(priv); + t = afs_page_dirty_to(priv); + + if (t <= offset || f >= end) + return; /* Doesn't overlap */ + + if (f < offset && t > end) + return; /* Splits the dirty region - just absorb it */ + + if (f >= offset && t <= end) + goto undirty; + + if (f < offset) + t = offset; + else + f = end; + if (f == t) + goto undirty; + + priv = afs_page_dirty(f, t); + set_page_private(page, priv); + trace_afs_page_dirty(vnode, tracepoint_string("trunc"), page->index, priv); + return; + +undirty: + trace_afs_page_dirty(vnode, tracepoint_string("undirty"), page->index, priv); + clear_page_dirty_for_io(page); +full_invalidate: + priv = (unsigned long)detach_page_private(page); + trace_afs_page_dirty(vnode, tracepoint_string("inval"), page->index, priv); +} + +/* * invalidate part or all of a page * - release a page and clean up its private data if offset is 0 (indicating * the entire page) @@ -608,31 +665,23 @@ static void afs_invalidatepage(struct page *page, unsigned int offset, unsigned int length) { - struct afs_vnode *vnode = AFS_FS_I(page->mapping->host); - unsigned long priv; - _enter("{%lu},%u,%u", page->index, offset, length); BUG_ON(!PageLocked(page)); +#ifdef CONFIG_AFS_FSCACHE /* we clean up only if the entire page is being invalidated */ if (offset == 0 && length == PAGE_SIZE) { -#ifdef CONFIG_AFS_FSCACHE if (PageFsCache(page)) { struct afs_vnode *vnode = AFS_FS_I(page->mapping->host); fscache_wait_on_page_write(vnode->cache, page); fscache_uncache_page(vnode->cache, page); } + } #endif - if (PagePrivate(page)) { - priv = page_private(page); - trace_afs_page_dirty(vnode, tracepoint_string("inval"), - page->index, priv); - set_page_private(page, 0); - ClearPagePrivate(page); - } - } + if (PagePrivate(page)) + afs_invalidate_dirty(page, offset, length); _leave(""); } @@ -660,11 +709,9 @@ #endif if (PagePrivate(page)) { - priv = page_private(page); + priv = (unsigned long)detach_page_private(page); trace_afs_page_dirty(vnode, tracepoint_string("rel"), page->index, priv); - set_page_private(page, 0); - ClearPagePrivate(page); } /* indicate that the page can be released */ --- linux-azure-5.8-5.8.0.orig/fs/afs/fs_operation.c +++ linux-azure-5.8-5.8.0/fs/afs/fs_operation.c @@ -235,6 +235,7 @@ afs_end_cursor(&op->ac); afs_put_serverlist(op->net, op->server_list); afs_put_volume(op->net, op->volume, afs_volume_trace_put_put_op); + key_put(op->key); kfree(op); return ret; } --- linux-azure-5.8-5.8.0.orig/fs/afs/fs_probe.c +++ linux-azure-5.8-5.8.0/fs/afs/fs_probe.c @@ -161,8 +161,8 @@ } } - rtt_us = rxrpc_kernel_get_srtt(call->net->socket, call->rxcall); - if (rtt_us < server->probe.rtt) { + if (rxrpc_kernel_get_srtt(call->net->socket, call->rxcall, &rtt_us) && + rtt_us < server->probe.rtt) { server->probe.rtt = rtt_us; server->rtt = rtt_us; alist->preferred = index; --- linux-azure-5.8-5.8.0.orig/fs/afs/inode.c +++ linux-azure-5.8-5.8.0/fs/afs/inode.c @@ -294,6 +294,13 @@ op->flags &= ~AFS_OPERATION_DIR_CONFLICT; } } else if (vp->scb.have_status) { + if (vp->dv_before + vp->dv_delta != vp->scb.status.data_version && + vp->speculative) + /* Ignore the result of a speculative bulk status fetch + * if it splits around a modification op, thereby + * appearing to regress the data version. + */ + goto out; afs_apply_status(op, vp); if (vp->scb.have_cb) afs_apply_callback(op, vp); @@ -305,6 +312,7 @@ } } +out: write_sequnlock(&vnode->cb_lock); if (vp->scb.have_status) @@ -810,14 +818,32 @@ static void afs_setattr_success(struct afs_operation *op) { - struct inode *inode = &op->file[0].vnode->vfs_inode; + struct afs_vnode_param *vp = &op->file[0]; + struct inode *inode = &vp->vnode->vfs_inode; + loff_t old_i_size = i_size_read(inode); + + op->setattr.old_i_size = old_i_size; + afs_vnode_commit_status(op, vp); + /* inode->i_size has now been changed. */ - afs_vnode_commit_status(op, &op->file[0]); if (op->setattr.attr->ia_valid & ATTR_SIZE) { - loff_t i_size = inode->i_size, size = op->setattr.attr->ia_size; - if (size > i_size) - pagecache_isize_extended(inode, i_size, size); - truncate_pagecache(inode, size); + loff_t size = op->setattr.attr->ia_size; + if (size > old_i_size) + pagecache_isize_extended(inode, old_i_size, size); + } +} + +static void afs_setattr_edit_file(struct afs_operation *op) +{ + struct afs_vnode_param *vp = &op->file[0]; + struct inode *inode = &vp->vnode->vfs_inode; + + if (op->setattr.attr->ia_valid & ATTR_SIZE) { + loff_t size = op->setattr.attr->ia_size; + loff_t i_size = op->setattr.old_i_size; + + if (size < i_size) + truncate_pagecache(inode, size); } } @@ -825,6 +851,7 @@ .issue_afs_rpc = afs_fs_setattr, .issue_yfs_rpc = yfs_fs_setattr, .success = afs_setattr_success, + .edit_dir = afs_setattr_edit_file, }; /* @@ -863,11 +890,16 @@ if (S_ISREG(vnode->vfs_inode.i_mode)) filemap_write_and_wait(vnode->vfs_inode.i_mapping); + /* Prevent any new writebacks from starting whilst we do this. */ + down_write(&vnode->validate_lock); + op = afs_alloc_operation(((attr->ia_valid & ATTR_FILE) ? afs_file_key(attr->ia_file) : NULL), vnode->volume); - if (IS_ERR(op)) - return PTR_ERR(op); + if (IS_ERR(op)) { + ret = PTR_ERR(op); + goto out_unlock; + } afs_op_set_vnode(op, 0, vnode); op->setattr.attr = attr; @@ -880,5 +912,10 @@ op->file[0].update_ctime = 1; op->ops = &afs_setattr_operation; - return afs_do_sync_operation(op); + ret = afs_do_sync_operation(op); + +out_unlock: + up_write(&vnode->validate_lock); + _leave(" = %d", ret); + return ret; } --- linux-azure-5.8-5.8.0.orig/fs/afs/internal.h +++ linux-azure-5.8-5.8.0/fs/afs/internal.h @@ -263,11 +263,11 @@ /* Cell database */ struct rb_root cells; - struct afs_cell __rcu *ws_cell; + struct afs_cell *ws_cell; struct work_struct cells_manager; struct timer_list cells_timer; atomic_t cells_outstanding; - seqlock_t cells_lock; + struct rw_semaphore cells_lock; struct mutex cells_alias_lock; struct mutex proc_cells_lock; @@ -326,6 +326,7 @@ AFS_CELL_DEACTIVATING, AFS_CELL_INACTIVE, AFS_CELL_FAILED, + AFS_CELL_REMOVED, }; /* @@ -363,7 +364,8 @@ #endif time64_t dns_expiry; /* Time AFSDB/SRV record expires */ time64_t last_inactive; /* Time of last drop of usage count */ - atomic_t usage; + atomic_t ref; /* Struct refcount */ + atomic_t active; /* Active usage counter */ unsigned long flags; #define AFS_CELL_FL_NO_GC 0 /* The cell was added manually, don't auto-gc */ #define AFS_CELL_FL_DO_LOOKUP 1 /* DNS lookup requested */ @@ -750,6 +752,7 @@ bool update_ctime:1; /* Need to update the ctime */ bool set_size:1; /* Must update i_size */ bool op_unlinked:1; /* True if file was unlinked by op */ + bool speculative:1; /* T if speculative status fetch (no vnode lock) */ }; /* @@ -807,9 +810,11 @@ pgoff_t last; /* last page in mapping to deal with */ unsigned first_offset; /* offset into mapping[first] */ unsigned last_to; /* amount of mapping[last] */ + bool laundering; /* Laundering page, PG_writeback not set */ } store; struct { struct iattr *attr; + loff_t old_i_size; } setattr; struct afs_acl *acl; struct yfs_acl *yacl; @@ -851,6 +856,62 @@ u64 data_version; } __packed; +/* + * We use page->private to hold the amount of the page that we've written to, + * splitting the field into two parts. However, we need to represent a range + * 0...PAGE_SIZE, so we reduce the resolution if the size of the page + * exceeds what we can encode. + */ +#ifdef CONFIG_64BIT +#define __AFS_PAGE_PRIV_MASK 0x7fffffffUL +#define __AFS_PAGE_PRIV_SHIFT 32 +#define __AFS_PAGE_PRIV_MMAPPED 0x80000000UL +#else +#define __AFS_PAGE_PRIV_MASK 0x7fffUL +#define __AFS_PAGE_PRIV_SHIFT 16 +#define __AFS_PAGE_PRIV_MMAPPED 0x8000UL +#endif + +static inline unsigned int afs_page_dirty_resolution(void) +{ + int shift = PAGE_SHIFT - (__AFS_PAGE_PRIV_SHIFT - 1); + return (shift > 0) ? shift : 0; +} + +static inline size_t afs_page_dirty_from(unsigned long priv) +{ + unsigned long x = priv & __AFS_PAGE_PRIV_MASK; + + /* The lower bound is inclusive */ + return x << afs_page_dirty_resolution(); +} + +static inline size_t afs_page_dirty_to(unsigned long priv) +{ + unsigned long x = (priv >> __AFS_PAGE_PRIV_SHIFT) & __AFS_PAGE_PRIV_MASK; + + /* The upper bound is immediately beyond the region */ + return (x + 1) << afs_page_dirty_resolution(); +} + +static inline unsigned long afs_page_dirty(size_t from, size_t to) +{ + unsigned int res = afs_page_dirty_resolution(); + from >>= res; + to = (to - 1) >> res; + return (to << __AFS_PAGE_PRIV_SHIFT) | from; +} + +static inline unsigned long afs_page_dirty_mmapped(unsigned long priv) +{ + return priv | __AFS_PAGE_PRIV_MMAPPED; +} + +static inline bool afs_is_page_dirty_mmapped(unsigned long priv) +{ + return priv & __AFS_PAGE_PRIV_MMAPPED; +} + #include /*****************************************************************************/ @@ -914,11 +975,14 @@ * cell.c */ extern int afs_cell_init(struct afs_net *, const char *); -extern struct afs_cell *afs_lookup_cell_rcu(struct afs_net *, const char *, unsigned); +extern struct afs_cell *afs_find_cell(struct afs_net *, const char *, unsigned); extern struct afs_cell *afs_lookup_cell(struct afs_net *, const char *, unsigned, const char *, bool); +extern struct afs_cell *afs_use_cell(struct afs_cell *); +extern void afs_unuse_cell(struct afs_net *, struct afs_cell *); extern struct afs_cell *afs_get_cell(struct afs_cell *); -extern void afs_put_cell(struct afs_net *, struct afs_cell *); +extern void afs_put_cell(struct afs_cell *); +extern void afs_queue_cell(struct afs_cell *); extern void afs_manage_cells(struct work_struct *); extern void afs_cells_timer(struct timer_list *); extern void __net_exit afs_cell_purge(struct afs_net *); --- linux-azure-5.8-5.8.0.orig/fs/afs/main.c +++ linux-azure-5.8-5.8.0/fs/afs/main.c @@ -78,7 +78,7 @@ mutex_init(&net->socket_mutex); net->cells = RB_ROOT; - seqlock_init(&net->cells_lock); + init_rwsem(&net->cells_lock); INIT_WORK(&net->cells_manager, afs_manage_cells); timer_setup(&net->cells_timer, afs_cells_timer, 0); @@ -193,7 +193,7 @@ goto error_cache; #endif - ret = register_pernet_subsys(&afs_net_ops); + ret = register_pernet_device(&afs_net_ops); if (ret < 0) goto error_net; @@ -213,7 +213,7 @@ error_proc: afs_fs_exit(); error_fs: - unregister_pernet_subsys(&afs_net_ops); + unregister_pernet_device(&afs_net_ops); error_net: #ifdef CONFIG_AFS_FSCACHE fscache_unregister_netfs(&afs_cache_netfs); @@ -244,7 +244,7 @@ proc_remove(afs_proc_symlink); afs_fs_exit(); - unregister_pernet_subsys(&afs_net_ops); + unregister_pernet_device(&afs_net_ops); #ifdef CONFIG_AFS_FSCACHE fscache_unregister_netfs(&afs_cache_netfs); #endif --- linux-azure-5.8-5.8.0.orig/fs/afs/mntpt.c +++ linux-azure-5.8-5.8.0/fs/afs/mntpt.c @@ -88,7 +88,7 @@ ctx->force = true; } if (ctx->cell) { - afs_put_cell(ctx->net, ctx->cell); + afs_unuse_cell(ctx->net, ctx->cell); ctx->cell = NULL; } if (test_bit(AFS_VNODE_PSEUDODIR, &vnode->flags)) { @@ -124,7 +124,7 @@ char *buf; if (src_as->cell) - ctx->cell = afs_get_cell(src_as->cell); + ctx->cell = afs_use_cell(src_as->cell); if (size < 2 || size > PAGE_SIZE - 1) return -EINVAL; --- linux-azure-5.8-5.8.0.orig/fs/afs/proc.c +++ linux-azure-5.8-5.8.0/fs/afs/proc.c @@ -38,7 +38,7 @@ if (v == SEQ_START_TOKEN) { /* display header on line 1 */ - seq_puts(m, "USE TTL SV ST NAME\n"); + seq_puts(m, "USE ACT TTL SV ST NAME\n"); return 0; } @@ -46,10 +46,11 @@ vllist = rcu_dereference(cell->vl_servers); /* display one cell per line on subsequent lines */ - seq_printf(m, "%3u %6lld %2u %2u %s\n", - atomic_read(&cell->usage), + seq_printf(m, "%3u %3u %6lld %2u %2u %s\n", + atomic_read(&cell->ref), + atomic_read(&cell->active), cell->dns_expiry - ktime_get_real_seconds(), - vllist->nr_servers, + vllist ? vllist->nr_servers : 0, cell->state, cell->name); return 0; @@ -128,7 +129,7 @@ } if (test_and_set_bit(AFS_CELL_FL_NO_GC, &cell->flags)) - afs_put_cell(net, cell); + afs_unuse_cell(net, cell); } else { goto inval; } @@ -154,13 +155,11 @@ struct afs_net *net; net = afs_seq2net_single(m); - if (rcu_access_pointer(net->ws_cell)) { - rcu_read_lock(); - cell = rcu_dereference(net->ws_cell); - if (cell) - seq_printf(m, "%s\n", cell->name); - rcu_read_unlock(); - } + down_read(&net->cells_lock); + cell = net->ws_cell; + if (cell) + seq_printf(m, "%s\n", cell->name); + up_read(&net->cells_lock); return 0; } --- linux-azure-5.8-5.8.0.orig/fs/afs/server.c +++ linux-azure-5.8-5.8.0/fs/afs/server.c @@ -550,7 +550,12 @@ _debug("manage %pU %u", &server->uuid, active); - ASSERTIFCMP(purging, active, ==, 0); + if (purging) { + trace_afs_server(server, atomic_read(&server->ref), + active, afs_server_trace_purging); + if (active != 0) + pr_notice("Can't purge s=%08x\n", server->debug_id); + } if (active == 0) { time64_t expire_at = server->unuse_time; --- linux-azure-5.8-5.8.0.orig/fs/afs/super.c +++ linux-azure-5.8-5.8.0/fs/afs/super.c @@ -230,6 +230,9 @@ _enter(",%s", name); + if (fc->source) + return invalf(fc, "kAFS: Multiple sources not supported"); + if (!name) { printk(KERN_ERR "kAFS: no volume name specified\n"); return -EINVAL; @@ -294,7 +297,7 @@ cellnamesz, cellnamesz, cellname ?: ""); return PTR_ERR(cell); } - afs_put_cell(ctx->net, ctx->cell); + afs_unuse_cell(ctx->net, ctx->cell); ctx->cell = cell; } @@ -389,8 +392,8 @@ _debug("switch to alias"); key_put(ctx->key); ctx->key = NULL; - cell = afs_get_cell(ctx->cell->alias_of); - afs_put_cell(ctx->net, ctx->cell); + cell = afs_use_cell(ctx->cell->alias_of); + afs_unuse_cell(ctx->net, ctx->cell); ctx->cell = cell; goto reget_key; } @@ -508,7 +511,7 @@ if (ctx->dyn_root) { as->dyn_root = true; } else { - as->cell = afs_get_cell(ctx->cell); + as->cell = afs_use_cell(ctx->cell); as->volume = afs_get_volume(ctx->volume, afs_volume_trace_get_alloc_sbi); } @@ -521,7 +524,7 @@ if (as) { struct afs_net *net = afs_net(as->net_ns); afs_put_volume(net, as->volume, afs_volume_trace_put_destroy_sbi); - afs_put_cell(net, as->cell); + afs_unuse_cell(net, as->cell); put_net(as->net_ns); kfree(as); } @@ -607,7 +610,7 @@ afs_destroy_sbi(fc->s_fs_info); afs_put_volume(ctx->net, ctx->volume, afs_volume_trace_put_free_fc); - afs_put_cell(ctx->net, ctx->cell); + afs_unuse_cell(ctx->net, ctx->cell); key_put(ctx->key); kfree(ctx); } @@ -634,9 +637,7 @@ ctx->net = afs_net(fc->net_ns); /* Default to the workstation cell. */ - rcu_read_lock(); - cell = afs_lookup_cell_rcu(ctx->net, NULL, 0); - rcu_read_unlock(); + cell = afs_find_cell(ctx->net, NULL, 0); if (IS_ERR(cell)) cell = NULL; ctx->cell = cell; --- linux-azure-5.8-5.8.0.orig/fs/afs/vl_alias.c +++ linux-azure-5.8-5.8.0/fs/afs/vl_alias.c @@ -177,7 +177,7 @@ is_alias: rcu_read_unlock(); - cell->alias_of = afs_get_cell(p); + cell->alias_of = afs_use_cell(p); return 1; } @@ -247,18 +247,18 @@ continue; if (p->root_volume) continue; /* Ignore cells that have a root.cell volume. */ - afs_get_cell(p); + afs_use_cell(p); mutex_unlock(&cell->net->proc_cells_lock); if (afs_query_for_alias_one(cell, key, p) != 0) goto is_alias; if (mutex_lock_interruptible(&cell->net->proc_cells_lock) < 0) { - afs_put_cell(cell->net, p); + afs_unuse_cell(cell->net, p); return -ERESTARTSYS; } - afs_put_cell(cell->net, p); + afs_unuse_cell(cell->net, p); } mutex_unlock(&cell->net->proc_cells_lock); --- linux-azure-5.8-5.8.0.orig/fs/afs/vl_probe.c +++ linux-azure-5.8-5.8.0/fs/afs/vl_probe.c @@ -92,8 +92,8 @@ } } - rtt_us = rxrpc_kernel_get_srtt(call->net->socket, call->rxcall); - if (rtt_us < server->probe.rtt) { + if (rxrpc_kernel_get_srtt(call->net->socket, call->rxcall, &rtt_us) && + rtt_us < server->probe.rtt) { server->probe.rtt = rtt_us; alist->preferred = index; have_result = true; --- linux-azure-5.8-5.8.0.orig/fs/afs/vl_rotate.c +++ linux-azure-5.8-5.8.0/fs/afs/vl_rotate.c @@ -45,7 +45,7 @@ cell->dns_expiry <= ktime_get_real_seconds()) { dns_lookup_count = smp_load_acquire(&cell->dns_lookup_count); set_bit(AFS_CELL_FL_DO_LOOKUP, &cell->flags); - queue_work(afs_wq, &cell->manager); + afs_queue_cell(cell); if (cell->dns_source == DNS_RECORD_UNAVAILABLE) { if (wait_var_event_interruptible( --- linux-azure-5.8-5.8.0.orig/fs/afs/volume.c +++ linux-azure-5.8-5.8.0/fs/afs/volume.c @@ -106,7 +106,7 @@ return volume; error_1: - afs_put_cell(params->net, volume->cell); + afs_put_cell(volume->cell); kfree(volume); error_0: return ERR_PTR(ret); @@ -228,7 +228,7 @@ afs_remove_volume_from_cell(volume); afs_put_serverlist(net, rcu_access_pointer(volume->servers)); - afs_put_cell(net, volume->cell); + afs_put_cell(volume->cell); trace_afs_volume(volume->vid, atomic_read(&volume->usage), afs_volume_trace_free); kfree_rcu(volume, rcu); --- linux-azure-5.8-5.8.0.orig/fs/afs/write.c +++ linux-azure-5.8-5.8.0/fs/afs/write.c @@ -76,7 +76,7 @@ */ int afs_write_begin(struct file *file, struct address_space *mapping, loff_t pos, unsigned len, unsigned flags, - struct page **pagep, void **fsdata) + struct page **_page, void **fsdata) { struct afs_vnode *vnode = AFS_FS_I(file_inode(file)); struct page *page; @@ -90,11 +90,6 @@ _enter("{%llx:%llu},{%lx},%u,%u", vnode->fid.vid, vnode->fid.vnode, index, from, to); - /* We want to store information about how much of a page is altered in - * page->private. - */ - BUILD_BUG_ON(PAGE_SIZE > 32768 && sizeof(page->private) < 8); - page = grab_cache_page_write_begin(mapping, index, flags); if (!page) return -ENOMEM; @@ -110,9 +105,6 @@ SetPageUptodate(page); } - /* page won't leak in error case: it eventually gets cleaned off LRU */ - *pagep = page; - try_again: /* See if this page is already partially written in a way that we can * merge the new write with. @@ -120,8 +112,8 @@ t = f = 0; if (PagePrivate(page)) { priv = page_private(page); - f = priv & AFS_PRIV_MAX; - t = priv >> AFS_PRIV_SHIFT; + f = afs_page_dirty_from(priv); + t = afs_page_dirty_to(priv); ASSERTCMP(f, <=, t); } @@ -138,21 +130,9 @@ if (!test_bit(AFS_VNODE_NEW_CONTENT, &vnode->flags) && (to < f || from > t)) goto flush_conflicting_write; - if (from < f) - f = from; - if (to > t) - t = to; - } else { - f = from; - t = to; } - priv = (unsigned long)t << AFS_PRIV_SHIFT; - priv |= f; - trace_afs_page_dirty(vnode, tracepoint_string("begin"), - page->index, priv); - SetPagePrivate(page); - set_page_private(page, priv); + *_page = page; _leave(" = 0"); return 0; @@ -162,17 +142,18 @@ flush_conflicting_write: _debug("flush conflict"); ret = write_one_page(page); - if (ret < 0) { - _leave(" = %d", ret); - return ret; - } + if (ret < 0) + goto error; ret = lock_page_killable(page); - if (ret < 0) { - _leave(" = %d", ret); - return ret; - } + if (ret < 0) + goto error; goto try_again; + +error: + put_page(page); + _leave(" = %d", ret); + return ret; } /* @@ -184,12 +165,18 @@ { struct afs_vnode *vnode = AFS_FS_I(file_inode(file)); struct key *key = afs_file_key(file); + unsigned long priv; + unsigned int f, from = pos & (PAGE_SIZE - 1); + unsigned int t, to = from + copied; loff_t i_size, maybe_i_size; - int ret; + int ret = 0; _enter("{%llx:%llu},{%lx}", vnode->fid.vid, vnode->fid.vnode, page->index); + if (copied == 0) + goto out; + maybe_i_size = pos + copied; i_size = i_size_read(&vnode->vfs_inode); @@ -215,6 +202,25 @@ SetPageUptodate(page); } + if (PagePrivate(page)) { + priv = page_private(page); + f = afs_page_dirty_from(priv); + t = afs_page_dirty_to(priv); + if (from < f) + f = from; + if (to > t) + t = to; + priv = afs_page_dirty(f, t); + set_page_private(page, priv); + trace_afs_page_dirty(vnode, tracepoint_string("dirty+"), + page->index, priv); + } else { + priv = afs_page_dirty(from, to); + attach_page_private(page, (void *)priv); + trace_afs_page_dirty(vnode, tracepoint_string("dirty"), + page->index, priv); + } + set_page_dirty(page); if (PageDirty(page)) _debug("dirtied"); @@ -334,10 +340,9 @@ ASSERTCMP(pv.nr, ==, count); for (loop = 0; loop < count; loop++) { - priv = page_private(pv.pages[loop]); + priv = (unsigned long)detach_page_private(pv.pages[loop]); trace_afs_page_dirty(vnode, tracepoint_string("clear"), pv.pages[loop]->index, priv); - set_page_private(pv.pages[loop], 0); end_page_writeback(pv.pages[loop]); } first += count; @@ -396,7 +401,8 @@ op->ctime = op->file[0].scb.status.mtime_client; afs_vnode_commit_status(op, &op->file[0]); if (op->error == 0) { - afs_pages_written_back(vnode, op->store.first, op->store.last); + if (!op->store.laundering) + afs_pages_written_back(vnode, op->store.first, op->store.last); afs_stat_v(vnode, n_stores); atomic_long_add((op->store.last * PAGE_SIZE + op->store.last_to) - (op->store.first * PAGE_SIZE + op->store.first_offset), @@ -415,7 +421,7 @@ */ static int afs_store_data(struct address_space *mapping, pgoff_t first, pgoff_t last, - unsigned offset, unsigned to) + unsigned offset, unsigned to, bool laundering) { struct afs_vnode *vnode = AFS_FS_I(mapping->host); struct afs_operation *op; @@ -448,6 +454,7 @@ op->store.last = last; op->store.first_offset = offset; op->store.last_to = to; + op->store.laundering = laundering; op->mtime = vnode->vfs_inode.i_mtime; op->flags |= AFS_OPERATION_UNINTR; op->ops = &afs_store_data_operation; @@ -509,8 +516,8 @@ */ start = primary_page->index; priv = page_private(primary_page); - offset = priv & AFS_PRIV_MAX; - to = priv >> AFS_PRIV_SHIFT; + offset = afs_page_dirty_from(priv); + to = afs_page_dirty_to(priv); trace_afs_page_dirty(vnode, tracepoint_string("store"), primary_page->index, priv); @@ -555,8 +562,8 @@ } priv = page_private(page); - f = priv & AFS_PRIV_MAX; - t = priv >> AFS_PRIV_SHIFT; + f = afs_page_dirty_from(priv); + t = afs_page_dirty_to(priv); if (f != 0 && !test_bit(AFS_VNODE_NEW_CONTENT, &vnode->flags)) { unlock_page(page); @@ -601,7 +608,7 @@ if (end > i_size) to = i_size & ~PAGE_MASK; - ret = afs_store_data(mapping, first, last, offset, to); + ret = afs_store_data(mapping, first, last, offset, to, false); switch (ret) { case 0: ret = count; @@ -738,11 +745,21 @@ int afs_writepages(struct address_space *mapping, struct writeback_control *wbc) { + struct afs_vnode *vnode = AFS_FS_I(mapping->host); pgoff_t start, end, next; int ret; _enter(""); + /* We have to be careful as we can end up racing with setattr() + * truncating the pagecache since the caller doesn't take a lock here + * to prevent it. + */ + if (wbc->sync_mode == WB_SYNC_ALL) + down_read(&vnode->validate_lock); + else if (!down_read_trylock(&vnode->validate_lock)) + return 0; + if (wbc->range_cyclic) { start = mapping->writeback_index; end = -1; @@ -762,6 +779,7 @@ ret = afs_writepages_region(mapping, wbc, start, end, &next); } + up_read(&vnode->validate_lock); _leave(" = %d", ret); return ret; } @@ -846,12 +864,14 @@ */ wait_on_page_writeback(vmf->page); - priv = (unsigned long)PAGE_SIZE << AFS_PRIV_SHIFT; /* To */ - priv |= 0; /* From */ + priv = afs_page_dirty(0, PAGE_SIZE); + priv = afs_page_dirty_mmapped(priv); trace_afs_page_dirty(vnode, tracepoint_string("mkwrite"), vmf->page->index, priv); - SetPagePrivate(vmf->page); - set_page_private(vmf->page, priv); + if (PagePrivate(vmf->page)) + set_page_private(vmf->page, priv); + else + attach_page_private(vmf->page, (void *)priv); file_update_time(file); sb_end_pagefault(inode->i_sb); @@ -904,19 +924,18 @@ f = 0; t = PAGE_SIZE; if (PagePrivate(page)) { - f = priv & AFS_PRIV_MAX; - t = priv >> AFS_PRIV_SHIFT; + f = afs_page_dirty_from(priv); + t = afs_page_dirty_to(priv); } trace_afs_page_dirty(vnode, tracepoint_string("launder"), page->index, priv); - ret = afs_store_data(mapping, page->index, page->index, t, f); + ret = afs_store_data(mapping, page->index, page->index, t, f, true); } + priv = (unsigned long)detach_page_private(page); trace_afs_page_dirty(vnode, tracepoint_string("laundered"), page->index, priv); - set_page_private(page, 0); - ClearPagePrivate(page); #ifdef CONFIG_AFS_FSCACHE if (PageFsCache(page)) { --- linux-azure-5.8-5.8.0.orig/fs/afs/xattr.c +++ linux-azure-5.8-5.8.0/fs/afs/xattr.c @@ -85,7 +85,7 @@ if (acl->size <= size) memcpy(buffer, acl->data, acl->size); else - op->error = -ERANGE; + ret = -ERANGE; } } @@ -148,11 +148,6 @@ .set = afs_xattr_set_acl, }; -static void yfs_acl_put(struct afs_operation *op) -{ - yfs_free_opaque_acl(op->yacl); -} - static const struct afs_operation_ops yfs_fetch_opaque_acl_operation = { .issue_yfs_rpc = yfs_fs_fetch_opaque_acl, .success = afs_acl_success, @@ -246,7 +241,7 @@ static const struct afs_operation_ops yfs_store_opaque_acl2_operation = { .issue_yfs_rpc = yfs_fs_store_opaque_acl2, .success = afs_acl_success, - .put = yfs_acl_put, + .put = afs_acl_put, }; /* --- linux-azure-5.8-5.8.0.orig/fs/afs/yfsclient.c +++ linux-azure-5.8-5.8.0/fs/afs/yfsclient.c @@ -1990,6 +1990,7 @@ memcpy(bp, acl->data, acl->size); if (acl->size != size) memset((void *)bp + acl->size, 0, size - acl->size); + bp += size / sizeof(__be32); yfs_check_req(call, bp); trace_afs_make_fs_call(call, &vp->fid); --- linux-azure-5.8-5.8.0.orig/fs/aufs/Kconfig +++ linux-azure-5.8-5.8.0/fs/aufs/Kconfig @@ -0,0 +1,199 @@ +# SPDX-License-Identifier: GPL-2.0 +config AUFS_FS + tristate "Aufs (Advanced multi layered unification filesystem) support" + help + Aufs is a stackable unification filesystem such as Unionfs, + which unifies several directories and provides a merged single + directory. + In the early days, aufs was entirely re-designed and + re-implemented Unionfs Version 1.x series. Introducing many + original ideas, approaches and improvements, it becomes totally + different from Unionfs while keeping the basic features. + +if AUFS_FS +choice + prompt "Maximum number of branches" + default AUFS_BRANCH_MAX_127 + help + Specifies the maximum number of branches (or member directories) + in a single aufs. The larger value consumes more system + resources and has a minor impact to performance. +config AUFS_BRANCH_MAX_127 + bool "127" + help + Specifies the maximum number of branches (or member directories) + in a single aufs. The larger value consumes more system + resources and has a minor impact to performance. +config AUFS_BRANCH_MAX_511 + bool "511" + help + Specifies the maximum number of branches (or member directories) + in a single aufs. The larger value consumes more system + resources and has a minor impact to performance. +config AUFS_BRANCH_MAX_1023 + bool "1023" + help + Specifies the maximum number of branches (or member directories) + in a single aufs. The larger value consumes more system + resources and has a minor impact to performance. +config AUFS_BRANCH_MAX_32767 + bool "32767" + help + Specifies the maximum number of branches (or member directories) + in a single aufs. The larger value consumes more system + resources and has a minor impact to performance. +endchoice + +config AUFS_SBILIST + bool + depends on AUFS_MAGIC_SYSRQ || PROC_FS + default y + help + Automatic configuration for internal use. + When aufs supports Magic SysRq or /proc, enabled automatically. + +config AUFS_HNOTIFY + bool "Detect direct branch access (bypassing aufs)" + help + If you want to modify files on branches directly, eg. bypassing aufs, + and want aufs to detect the changes of them fully, then enable this + option and use 'udba=notify' mount option. + Currently there is only one available configuration, "fsnotify". + It will have a negative impact to the performance. + See detail in aufs.5. + +choice + prompt "method" if AUFS_HNOTIFY + default AUFS_HFSNOTIFY +config AUFS_HFSNOTIFY + bool "fsnotify" + select FSNOTIFY +endchoice + +config AUFS_EXPORT + bool "NFS-exportable aufs" + depends on EXPORTFS + help + If you want to export your mounted aufs via NFS, then enable this + option. There are several requirements for this configuration. + See detail in aufs.5. + +config AUFS_INO_T_64 + bool + depends on AUFS_EXPORT + depends on 64BIT && !(ALPHA || S390) + default y + help + Automatic configuration for internal use. + /* typedef unsigned long/int __kernel_ino_t */ + /* alpha and s390x are int */ + +config AUFS_XATTR + bool "support for XATTR/EA (including Security Labels)" + help + If your branch fs supports XATTR/EA and you want to make them + available in aufs too, then enable this opsion and specify the + branch attributes for EA. + See detail in aufs.5. + +config AUFS_FHSM + bool "File-based Hierarchical Storage Management" + help + Hierarchical Storage Management (or HSM) is a well-known feature + in the storage world. Aufs provides this feature as file-based. + with multiple branches. + These multiple branches are prioritized, ie. the topmost one + should be the fastest drive and be used heavily. + +config AUFS_RDU + bool "Readdir in userspace" + help + Aufs has two methods to provide a merged view for a directory, + by a user-space library and by kernel-space natively. The latter + is always enabled but sometimes large and slow. + If you enable this option, install the library in aufs2-util + package, and set some environment variables for your readdir(3), + then the work will be handled in user-space which generally + shows better performance in most cases. + See detail in aufs.5. + +config AUFS_DIRREN + bool "Workaround for rename(2)-ing a directory" + help + By default, aufs returns EXDEV error in renameing a dir who has + his child on the lower branch, since it is a bad idea to issue + rename(2) internally for every lower branch. But user may not + accept this behaviour. So here is a workaround to allow such + rename(2) and store some extra infromation on the writable + branch. Obviously this costs high (and I don't like it). + To use this feature, you need to enable this configuration AND + to specify the mount option `dirren.' + See details in aufs.5 and the design documents. + +config AUFS_SHWH + bool "Show whiteouts" + help + If you want to make the whiteouts in aufs visible, then enable + this option and specify 'shwh' mount option. Although it may + sounds like philosophy or something, but in technically it + simply shows the name of whiteout with keeping its behaviour. + +config AUFS_BR_RAMFS + bool "Ramfs (initramfs/rootfs) as an aufs branch" + help + If you want to use ramfs as an aufs branch fs, then enable this + option. Generally tmpfs is recommended. + Aufs prohibited them to be a branch fs by default, because + initramfs becomes unusable after switch_root or something + generally. If you sets initramfs as an aufs branch and boot your + system by switch_root, you will meet a problem easily since the + files in initramfs may be inaccessible. + Unless you are going to use ramfs as an aufs branch fs without + switch_root or something, leave it N. + +config AUFS_BR_FUSE + bool "Fuse fs as an aufs branch" + depends on FUSE_FS + select AUFS_POLL + help + If you want to use fuse-based userspace filesystem as an aufs + branch fs, then enable this option. + It implements the internal poll(2) operation which is + implemented by fuse only (curretnly). + +config AUFS_POLL + bool + help + Automatic configuration for internal use. + +config AUFS_BR_HFSPLUS + bool "Hfsplus as an aufs branch" + depends on HFSPLUS_FS + default y + help + If you want to use hfsplus fs as an aufs branch fs, then enable + this option. This option introduces a small overhead at + copying-up a file on hfsplus. + +config AUFS_BDEV_LOOP + bool + depends on BLK_DEV_LOOP + default y + help + Automatic configuration for internal use. + Convert =[ym] into =y. + +config AUFS_DEBUG + bool "Debug aufs" + help + Enable this to compile aufs internal debug code. + It will have a negative impact to the performance. + +config AUFS_MAGIC_SYSRQ + bool + depends on AUFS_DEBUG && MAGIC_SYSRQ + default y + help + Automatic configuration for internal use. + When aufs supports Magic SysRq, enabled automatically. +endif --- linux-azure-5.8-5.8.0.orig/fs/aufs/Makefile +++ linux-azure-5.8-5.8.0/fs/aufs/Makefile @@ -0,0 +1,46 @@ +# SPDX-License-Identifier: GPL-2.0 + +include ${src}/magic.mk +ifeq (${CONFIG_AUFS_FS},m) +include ${src}/conf.mk +endif +-include ${src}/priv_def.mk + +# cf. include/linux/kernel.h +# enable pr_debug +ccflags-y += -DDEBUG +# sparse requires the full pathname +ifdef M +ccflags-y += -include ${M}/../../include/uapi/linux/aufs_type.h +else +ccflags-y += -include ${srctree}/include/uapi/linux/aufs_type.h +endif + +obj-$(CONFIG_AUFS_FS) += aufs.o +aufs-y := module.o sbinfo.o super.o branch.o xino.o sysaufs.o opts.o \ + wkq.o vfsub.o dcsub.o \ + cpup.o whout.o wbr_policy.o \ + dinfo.o dentry.o \ + dynop.o \ + finfo.o file.o f_op.o \ + dir.o vdir.o \ + iinfo.o inode.o i_op.o i_op_add.o i_op_del.o i_op_ren.o \ + mvdown.o ioctl.o + +# all are boolean +aufs-$(CONFIG_PROC_FS) += procfs.o plink.o +aufs-$(CONFIG_SYSFS) += sysfs.o +aufs-$(CONFIG_DEBUG_FS) += dbgaufs.o +aufs-$(CONFIG_AUFS_BDEV_LOOP) += loop.o +aufs-$(CONFIG_AUFS_HNOTIFY) += hnotify.o +aufs-$(CONFIG_AUFS_HFSNOTIFY) += hfsnotify.o +aufs-$(CONFIG_AUFS_EXPORT) += export.o +aufs-$(CONFIG_AUFS_XATTR) += xattr.o +aufs-$(CONFIG_FS_POSIX_ACL) += posix_acl.o +aufs-$(CONFIG_AUFS_DIRREN) += dirren.o +aufs-$(CONFIG_AUFS_FHSM) += fhsm.o +aufs-$(CONFIG_AUFS_POLL) += poll.o +aufs-$(CONFIG_AUFS_RDU) += rdu.o +aufs-$(CONFIG_AUFS_BR_HFSPLUS) += hfsplus.o +aufs-$(CONFIG_AUFS_DEBUG) += debug.o +aufs-$(CONFIG_AUFS_MAGIC_SYSRQ) += sysrq.o --- linux-azure-5.8-5.8.0.orig/fs/aufs/aufs.h +++ linux-azure-5.8-5.8.0/fs/aufs/aufs.h @@ -0,0 +1,62 @@ +/* SPDX-License-Identifier: GPL-2.0 */ +/* + * Copyright (C) 2005-2020 Junjiro R. Okajima + * + * This program, aufs is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; either version 2 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + */ + +/* + * all header files + */ + +#ifndef __AUFS_H__ +#define __AUFS_H__ + +#ifdef __KERNEL__ + +#define AuStub(type, name, body, ...) \ + static inline type name(__VA_ARGS__) { body; } + +#define AuStubVoid(name, ...) \ + AuStub(void, name, , __VA_ARGS__) +#define AuStubInt0(name, ...) \ + AuStub(int, name, return 0, __VA_ARGS__) + +#include "debug.h" + +#include "branch.h" +#include "cpup.h" +#include "dcsub.h" +#include "dbgaufs.h" +#include "dentry.h" +#include "dir.h" +#include "dirren.h" +#include "dynop.h" +#include "file.h" +#include "fstype.h" +#include "hbl.h" +#include "inode.h" +#include "lcnt.h" +#include "loop.h" +#include "module.h" +#include "opts.h" +#include "rwsem.h" +#include "super.h" +#include "sysaufs.h" +#include "vfsub.h" +#include "whout.h" +#include "wkq.h" + +#endif /* __KERNEL__ */ +#endif /* __AUFS_H__ */ --- linux-azure-5.8-5.8.0.orig/fs/aufs/branch.c +++ linux-azure-5.8-5.8.0/fs/aufs/branch.c @@ -0,0 +1,1427 @@ +// SPDX-License-Identifier: GPL-2.0 +/* + * Copyright (C) 2005-2020 Junjiro R. Okajima + * + * This program, aufs is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; either version 2 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + */ + +/* + * branch management + */ + +#include +#include +#include "aufs.h" + +/* + * free a single branch + */ +static void au_br_do_free(struct au_branch *br) +{ + int i; + struct au_wbr *wbr; + struct au_dykey **key; + + au_hnotify_fin_br(br); + /* always, regardless the mount option */ + au_dr_hino_free(&br->br_dirren); + au_xino_put(br); + + AuLCntZero(au_lcnt_read(&br->br_nfiles, /*do_rev*/0)); + au_lcnt_fin(&br->br_nfiles, /*do_sync*/0); + AuLCntZero(au_lcnt_read(&br->br_count, /*do_rev*/0)); + au_lcnt_fin(&br->br_count, /*do_sync*/0); + + wbr = br->br_wbr; + if (wbr) { + for (i = 0; i < AuBrWh_Last; i++) + dput(wbr->wbr_wh[i]); + AuDebugOn(atomic_read(&wbr->wbr_wh_running)); + AuRwDestroy(&wbr->wbr_wh_rwsem); + } + + if (br->br_fhsm) { + au_br_fhsm_fin(br->br_fhsm); + au_kfree_try_rcu(br->br_fhsm); + } + + key = br->br_dykey; + for (i = 0; i < AuBrDynOp; i++, key++) + if (*key) + au_dy_put(*key); + else + break; + + /* recursive lock, s_umount of branch's */ + /* synchronize_rcu(); */ /* why? */ + lockdep_off(); + path_put(&br->br_path); + lockdep_on(); + au_kfree_rcu(wbr); + au_lcnt_wait_for_fin(&br->br_nfiles); + au_lcnt_wait_for_fin(&br->br_count); + /* I don't know why, but percpu_refcount requires this */ + /* synchronize_rcu(); */ + au_kfree_rcu(br); +} + +/* + * frees all branches + */ +void au_br_free(struct au_sbinfo *sbinfo) +{ + aufs_bindex_t bmax; + struct au_branch **br; + + AuRwMustWriteLock(&sbinfo->si_rwsem); + + bmax = sbinfo->si_bbot + 1; + br = sbinfo->si_branch; + while (bmax--) + au_br_do_free(*br++); +} + +/* + * find the index of a branch which is specified by @br_id. + */ +int au_br_index(struct super_block *sb, aufs_bindex_t br_id) +{ + aufs_bindex_t bindex, bbot; + + bbot = au_sbbot(sb); + for (bindex = 0; bindex <= bbot; bindex++) + if (au_sbr_id(sb, bindex) == br_id) + return bindex; + return -1; +} + +/* ---------------------------------------------------------------------- */ + +/* + * add a branch + */ + +static int test_overlap(struct super_block *sb, struct dentry *h_adding, + struct dentry *h_root) +{ + if (unlikely(h_adding == h_root + || au_test_loopback_overlap(sb, h_adding))) + return 1; + if (h_adding->d_sb != h_root->d_sb) + return 0; + return au_test_subdir(h_adding, h_root) + || au_test_subdir(h_root, h_adding); +} + +/* + * returns a newly allocated branch. @new_nbranch is a number of branches + * after adding a branch. + */ +static struct au_branch *au_br_alloc(struct super_block *sb, int new_nbranch, + int perm) +{ + struct au_branch *add_branch; + struct dentry *root; + struct inode *inode; + int err; + + err = -ENOMEM; + add_branch = kzalloc(sizeof(*add_branch), GFP_NOFS); + if (unlikely(!add_branch)) + goto out; + add_branch->br_xino = au_xino_alloc(/*nfile*/1); + if (unlikely(!add_branch->br_xino)) + goto out_br; + err = au_hnotify_init_br(add_branch, perm); + if (unlikely(err)) + goto out_xino; + + if (au_br_writable(perm)) { + /* may be freed separately at changing the branch permission */ + add_branch->br_wbr = kzalloc(sizeof(*add_branch->br_wbr), + GFP_NOFS); + if (unlikely(!add_branch->br_wbr)) + goto out_hnotify; + } + + if (au_br_fhsm(perm)) { + err = au_fhsm_br_alloc(add_branch); + if (unlikely(err)) + goto out_wbr; + } + + root = sb->s_root; + err = au_sbr_realloc(au_sbi(sb), new_nbranch, /*may_shrink*/0); + if (!err) + err = au_di_realloc(au_di(root), new_nbranch, /*may_shrink*/0); + if (!err) { + inode = d_inode(root); + err = au_hinode_realloc(au_ii(inode), new_nbranch, + /*may_shrink*/0); + } + if (!err) + return add_branch; /* success */ + +out_wbr: + au_kfree_rcu(add_branch->br_wbr); +out_hnotify: + au_hnotify_fin_br(add_branch); +out_xino: + au_xino_put(add_branch); +out_br: + au_kfree_rcu(add_branch); +out: + return ERR_PTR(err); +} + +/* + * test if the branch permission is legal or not. + */ +static int test_br(struct inode *inode, int brperm, char *path) +{ + int err; + + err = (au_br_writable(brperm) && IS_RDONLY(inode)); + if (!err) + goto out; + + err = -EINVAL; + pr_err("write permission for readonly mount or inode, %s\n", path); + +out: + return err; +} + +/* + * returns: + * 0: success, the caller will add it + * plus: success, it is already unified, the caller should ignore it + * minus: error + */ +static int test_add(struct super_block *sb, struct au_opt_add *add, int remount) +{ + int err; + aufs_bindex_t bbot, bindex; + struct dentry *root, *h_dentry; + struct inode *inode, *h_inode; + + root = sb->s_root; + bbot = au_sbbot(sb); + if (unlikely(bbot >= 0 + && au_find_dbindex(root, add->path.dentry) >= 0)) { + err = 1; + if (!remount) { + err = -EINVAL; + pr_err("%s duplicated\n", add->pathname); + } + goto out; + } + + err = -ENOSPC; /* -E2BIG; */ + if (unlikely(AUFS_BRANCH_MAX <= add->bindex + || AUFS_BRANCH_MAX - 1 <= bbot)) { + pr_err("number of branches exceeded %s\n", add->pathname); + goto out; + } + + err = -EDOM; + if (unlikely(add->bindex < 0 || bbot + 1 < add->bindex)) { + pr_err("bad index %d\n", add->bindex); + goto out; + } + + inode = d_inode(add->path.dentry); + err = -ENOENT; + if (unlikely(!inode->i_nlink)) { + pr_err("no existence %s\n", add->pathname); + goto out; + } + + err = -EINVAL; + if (unlikely(inode->i_sb == sb)) { + pr_err("%s must be outside\n", add->pathname); + goto out; + } + + if (unlikely(au_test_fs_unsuppoted(inode->i_sb))) { + pr_err("unsupported filesystem, %s (%s)\n", + add->pathname, au_sbtype(inode->i_sb)); + goto out; + } + + if (unlikely(inode->i_sb->s_stack_depth)) { + pr_err("already stacked, %s (%s)\n", + add->pathname, au_sbtype(inode->i_sb)); + goto out; + } + + err = test_br(d_inode(add->path.dentry), add->perm, add->pathname); + if (unlikely(err)) + goto out; + + if (bbot < 0) + return 0; /* success */ + + err = -EINVAL; + for (bindex = 0; bindex <= bbot; bindex++) + if (unlikely(test_overlap(sb, add->path.dentry, + au_h_dptr(root, bindex)))) { + pr_err("%s is overlapped\n", add->pathname); + goto out; + } + + err = 0; + if (au_opt_test(au_mntflags(sb), WARN_PERM)) { + h_dentry = au_h_dptr(root, 0); + h_inode = d_inode(h_dentry); + if ((h_inode->i_mode & S_IALLUGO) != (inode->i_mode & S_IALLUGO) + || !uid_eq(h_inode->i_uid, inode->i_uid) + || !gid_eq(h_inode->i_gid, inode->i_gid)) + pr_warn("uid/gid/perm %s %u/%u/0%o, %u/%u/0%o\n", + add->pathname, + i_uid_read(inode), i_gid_read(inode), + (inode->i_mode & S_IALLUGO), + i_uid_read(h_inode), i_gid_read(h_inode), + (h_inode->i_mode & S_IALLUGO)); + } + +out: + return err; +} + +/* + * initialize or clean the whiteouts for an adding branch + */ +static int au_br_init_wh(struct super_block *sb, struct au_branch *br, + int new_perm) +{ + int err, old_perm; + aufs_bindex_t bindex; + struct inode *h_inode; + struct au_wbr *wbr; + struct au_hinode *hdir; + struct dentry *h_dentry; + + err = vfsub_mnt_want_write(au_br_mnt(br)); + if (unlikely(err)) + goto out; + + wbr = br->br_wbr; + old_perm = br->br_perm; + br->br_perm = new_perm; + hdir = NULL; + h_inode = NULL; + bindex = au_br_index(sb, br->br_id); + if (0 <= bindex) { + hdir = au_hi(d_inode(sb->s_root), bindex); + au_hn_inode_lock_nested(hdir, AuLsc_I_PARENT); + } else { + h_dentry = au_br_dentry(br); + h_inode = d_inode(h_dentry); + inode_lock_nested(h_inode, AuLsc_I_PARENT); + } + if (!wbr) + err = au_wh_init(br, sb); + else { + wbr_wh_write_lock(wbr); + err = au_wh_init(br, sb); + wbr_wh_write_unlock(wbr); + } + if (hdir) + au_hn_inode_unlock(hdir); + else + inode_unlock(h_inode); + vfsub_mnt_drop_write(au_br_mnt(br)); + br->br_perm = old_perm; + + if (!err && wbr && !au_br_writable(new_perm)) { + au_kfree_rcu(wbr); + br->br_wbr = NULL; + } + +out: + return err; +} + +static int au_wbr_init(struct au_branch *br, struct super_block *sb, + int perm) +{ + int err; + struct kstatfs kst; + struct au_wbr *wbr; + + wbr = br->br_wbr; + au_rw_init(&wbr->wbr_wh_rwsem); + atomic_set(&wbr->wbr_wh_running, 0); + + /* + * a limit for rmdir/rename a dir + * cf. AUFS_MAX_NAMELEN in include/uapi/linux/aufs_type.h + */ + err = vfs_statfs(&br->br_path, &kst); + if (unlikely(err)) + goto out; + err = -EINVAL; + if (kst.f_namelen >= NAME_MAX) + err = au_br_init_wh(sb, br, perm); + else + pr_err("%pd(%s), unsupported namelen %ld\n", + au_br_dentry(br), + au_sbtype(au_br_dentry(br)->d_sb), kst.f_namelen); + +out: + return err; +} + +/* initialize a new branch */ +static int au_br_init(struct au_branch *br, struct super_block *sb, + struct au_opt_add *add) +{ + int err; + struct au_branch *brbase; + struct file *xf; + struct inode *h_inode; + + err = 0; + br->br_perm = add->perm; + br->br_path = add->path; /* set first, path_get() later */ + spin_lock_init(&br->br_dykey_lock); + au_lcnt_init(&br->br_nfiles, /*release*/NULL); + au_lcnt_init(&br->br_count, /*release*/NULL); + br->br_id = au_new_br_id(sb); + AuDebugOn(br->br_id < 0); + + /* always, regardless the given option */ + err = au_dr_br_init(sb, br, &add->path); + if (unlikely(err)) + goto out_err; + + if (au_br_writable(add->perm)) { + err = au_wbr_init(br, sb, add->perm); + if (unlikely(err)) + goto out_err; + } + + if (au_opt_test(au_mntflags(sb), XINO)) { + brbase = au_sbr(sb, 0); + xf = au_xino_file(brbase->br_xino, /*idx*/-1); + AuDebugOn(!xf); + h_inode = d_inode(add->path.dentry); + err = au_xino_init_br(sb, br, h_inode->i_ino, &xf->f_path); + if (unlikely(err)) { + AuDebugOn(au_xino_file(br->br_xino, /*idx*/-1)); + goto out_err; + } + } + + sysaufs_br_init(br); + path_get(&br->br_path); + goto out; /* success */ + +out_err: + memset(&br->br_path, 0, sizeof(br->br_path)); +out: + return err; +} + +static void au_br_do_add_brp(struct au_sbinfo *sbinfo, aufs_bindex_t bindex, + struct au_branch *br, aufs_bindex_t bbot, + aufs_bindex_t amount) +{ + struct au_branch **brp; + + AuRwMustWriteLock(&sbinfo->si_rwsem); + + brp = sbinfo->si_branch + bindex; + memmove(brp + 1, brp, sizeof(*brp) * amount); + *brp = br; + sbinfo->si_bbot++; + if (unlikely(bbot < 0)) + sbinfo->si_bbot = 0; +} + +static void au_br_do_add_hdp(struct au_dinfo *dinfo, aufs_bindex_t bindex, + aufs_bindex_t bbot, aufs_bindex_t amount) +{ + struct au_hdentry *hdp; + + AuRwMustWriteLock(&dinfo->di_rwsem); + + hdp = au_hdentry(dinfo, bindex); + memmove(hdp + 1, hdp, sizeof(*hdp) * amount); + au_h_dentry_init(hdp); + dinfo->di_bbot++; + if (unlikely(bbot < 0)) + dinfo->di_btop = 0; +} + +static void au_br_do_add_hip(struct au_iinfo *iinfo, aufs_bindex_t bindex, + aufs_bindex_t bbot, aufs_bindex_t amount) +{ + struct au_hinode *hip; + + AuRwMustWriteLock(&iinfo->ii_rwsem); + + hip = au_hinode(iinfo, bindex); + memmove(hip + 1, hip, sizeof(*hip) * amount); + au_hinode_init(hip); + iinfo->ii_bbot++; + if (unlikely(bbot < 0)) + iinfo->ii_btop = 0; +} + +static void au_br_do_add(struct super_block *sb, struct au_branch *br, + aufs_bindex_t bindex) +{ + struct dentry *root, *h_dentry; + struct inode *root_inode, *h_inode; + aufs_bindex_t bbot, amount; + + root = sb->s_root; + root_inode = d_inode(root); + bbot = au_sbbot(sb); + amount = bbot + 1 - bindex; + h_dentry = au_br_dentry(br); + au_sbilist_lock(); + au_br_do_add_brp(au_sbi(sb), bindex, br, bbot, amount); + au_br_do_add_hdp(au_di(root), bindex, bbot, amount); + au_br_do_add_hip(au_ii(root_inode), bindex, bbot, amount); + au_set_h_dptr(root, bindex, dget(h_dentry)); + h_inode = d_inode(h_dentry); + au_set_h_iptr(root_inode, bindex, au_igrab(h_inode), /*flags*/0); + au_sbilist_unlock(); +} + +int au_br_add(struct super_block *sb, struct au_opt_add *add, int remount) +{ + int err; + aufs_bindex_t bbot, add_bindex; + struct dentry *root, *h_dentry; + struct inode *root_inode; + struct au_branch *add_branch; + + root = sb->s_root; + root_inode = d_inode(root); + IMustLock(root_inode); + IiMustWriteLock(root_inode); + err = test_add(sb, add, remount); + if (unlikely(err < 0)) + goto out; + if (err) { + err = 0; + goto out; /* success */ + } + + bbot = au_sbbot(sb); + add_branch = au_br_alloc(sb, bbot + 2, add->perm); + err = PTR_ERR(add_branch); + if (IS_ERR(add_branch)) + goto out; + + err = au_br_init(add_branch, sb, add); + if (unlikely(err)) { + au_br_do_free(add_branch); + goto out; + } + + add_bindex = add->bindex; + sysaufs_brs_del(sb, add_bindex); /* remove successors */ + au_br_do_add(sb, add_branch, add_bindex); + sysaufs_brs_add(sb, add_bindex); /* append successors */ + dbgaufs_brs_add(sb, add_bindex, /*topdown*/0); /* rename successors */ + + h_dentry = add->path.dentry; + if (!add_bindex) { + au_cpup_attr_all(root_inode, /*force*/1); + sb->s_maxbytes = h_dentry->d_sb->s_maxbytes; + } else + au_add_nlink(root_inode, d_inode(h_dentry)); + +out: + return err; +} + +/* ---------------------------------------------------------------------- */ + +static unsigned long long au_farray_cb(struct super_block *sb, void *a, + unsigned long long max __maybe_unused, + void *arg) +{ + unsigned long long n; + struct file **p, *f; + struct hlist_bl_head *files; + struct hlist_bl_node *pos; + struct au_finfo *finfo; + + n = 0; + p = a; + files = &au_sbi(sb)->si_files; + hlist_bl_lock(files); + hlist_bl_for_each_entry(finfo, pos, files, fi_hlist) { + f = finfo->fi_file; + if (file_count(f) + && !special_file(file_inode(f)->i_mode)) { + get_file(f); + *p++ = f; + n++; + AuDebugOn(n > max); + } + } + hlist_bl_unlock(files); + + return n; +} + +static struct file **au_farray_alloc(struct super_block *sb, + unsigned long long *max) +{ + struct au_sbinfo *sbi; + + sbi = au_sbi(sb); + *max = au_lcnt_read(&sbi->si_nfiles, /*do_rev*/1); + return au_array_alloc(max, au_farray_cb, sb, /*arg*/NULL); +} + +static void au_farray_free(struct file **a, unsigned long long max) +{ + unsigned long long ull; + + for (ull = 0; ull < max; ull++) + if (a[ull]) + fput(a[ull]); + kvfree(a); +} + +/* ---------------------------------------------------------------------- */ + +/* + * delete a branch + */ + +/* to show the line number, do not make it inlined function */ +#define AuVerbose(do_info, fmt, ...) do { \ + if (do_info) \ + pr_info(fmt, ##__VA_ARGS__); \ +} while (0) + +static int au_test_ibusy(struct inode *inode, aufs_bindex_t btop, + aufs_bindex_t bbot) +{ + return (inode && !S_ISDIR(inode->i_mode)) || btop == bbot; +} + +static int au_test_dbusy(struct dentry *dentry, aufs_bindex_t btop, + aufs_bindex_t bbot) +{ + return au_test_ibusy(d_inode(dentry), btop, bbot); +} + +/* + * test if the branch is deletable or not. + */ +static int test_dentry_busy(struct dentry *root, aufs_bindex_t bindex, + unsigned int sigen, const unsigned int verbose) +{ + int err, i, j, ndentry; + aufs_bindex_t btop, bbot; + struct au_dcsub_pages dpages; + struct au_dpage *dpage; + struct dentry *d; + + err = au_dpages_init(&dpages, GFP_NOFS); + if (unlikely(err)) + goto out; + err = au_dcsub_pages(&dpages, root, NULL, NULL); + if (unlikely(err)) + goto out_dpages; + + for (i = 0; !err && i < dpages.ndpage; i++) { + dpage = dpages.dpages + i; + ndentry = dpage->ndentry; + for (j = 0; !err && j < ndentry; j++) { + d = dpage->dentries[j]; + AuDebugOn(au_dcount(d) <= 0); + if (!au_digen_test(d, sigen)) { + di_read_lock_child(d, AuLock_IR); + if (unlikely(au_dbrange_test(d))) { + di_read_unlock(d, AuLock_IR); + continue; + } + } else { + di_write_lock_child(d); + if (unlikely(au_dbrange_test(d))) { + di_write_unlock(d); + continue; + } + err = au_reval_dpath(d, sigen); + if (!err) + di_downgrade_lock(d, AuLock_IR); + else { + di_write_unlock(d); + break; + } + } + + /* AuDbgDentry(d); */ + btop = au_dbtop(d); + bbot = au_dbbot(d); + if (btop <= bindex + && bindex <= bbot + && au_h_dptr(d, bindex) + && au_test_dbusy(d, btop, bbot)) { + err = -EBUSY; + AuVerbose(verbose, "busy %pd\n", d); + AuDbgDentry(d); + } + di_read_unlock(d, AuLock_IR); + } + } + +out_dpages: + au_dpages_free(&dpages); +out: + return err; +} + +static int test_inode_busy(struct super_block *sb, aufs_bindex_t bindex, + unsigned int sigen, const unsigned int verbose) +{ + int err; + unsigned long long max, ull; + struct inode *i, **array; + aufs_bindex_t btop, bbot; + + array = au_iarray_alloc(sb, &max); + err = PTR_ERR(array); + if (IS_ERR(array)) + goto out; + + err = 0; + AuDbg("b%d\n", bindex); + for (ull = 0; !err && ull < max; ull++) { + i = array[ull]; + if (unlikely(!i)) + break; + if (i->i_ino == AUFS_ROOT_INO) + continue; + + /* AuDbgInode(i); */ + if (au_iigen(i, NULL) == sigen) + ii_read_lock_child(i); + else { + ii_write_lock_child(i); + err = au_refresh_hinode_self(i); + au_iigen_dec(i); + if (!err) + ii_downgrade_lock(i); + else { + ii_write_unlock(i); + break; + } + } + + btop = au_ibtop(i); + bbot = au_ibbot(i); + if (btop <= bindex + && bindex <= bbot + && au_h_iptr(i, bindex) + && au_test_ibusy(i, btop, bbot)) { + err = -EBUSY; + AuVerbose(verbose, "busy i%lu\n", i->i_ino); + AuDbgInode(i); + } + ii_read_unlock(i); + } + au_iarray_free(array, max); + +out: + return err; +} + +static int test_children_busy(struct dentry *root, aufs_bindex_t bindex, + const unsigned int verbose) +{ + int err; + unsigned int sigen; + + sigen = au_sigen(root->d_sb); + DiMustNoWaiters(root); + IiMustNoWaiters(d_inode(root)); + di_write_unlock(root); + err = test_dentry_busy(root, bindex, sigen, verbose); + if (!err) + err = test_inode_busy(root->d_sb, bindex, sigen, verbose); + di_write_lock_child(root); /* aufs_write_lock() calls ..._child() */ + + return err; +} + +static int test_dir_busy(struct file *file, aufs_bindex_t br_id, + struct file **to_free, int *idx) +{ + int err; + unsigned char matched, root; + aufs_bindex_t bindex, bbot; + struct au_fidir *fidir; + struct au_hfile *hfile; + + err = 0; + root = IS_ROOT(file->f_path.dentry); + if (root) { + get_file(file); + to_free[*idx] = file; + (*idx)++; + goto out; + } + + matched = 0; + fidir = au_fi(file)->fi_hdir; + AuDebugOn(!fidir); + bbot = au_fbbot_dir(file); + for (bindex = au_fbtop(file); bindex <= bbot; bindex++) { + hfile = fidir->fd_hfile + bindex; + if (!hfile->hf_file) + continue; + + if (hfile->hf_br->br_id == br_id) { + matched = 1; + break; + } + } + if (matched) + err = -EBUSY; + +out: + return err; +} + +static int test_file_busy(struct super_block *sb, aufs_bindex_t br_id, + struct file **to_free, int opened) +{ + int err, idx; + unsigned long long ull, max; + aufs_bindex_t btop; + struct file *file, **array; + struct dentry *root; + struct au_hfile *hfile; + + array = au_farray_alloc(sb, &max); + err = PTR_ERR(array); + if (IS_ERR(array)) + goto out; + + err = 0; + idx = 0; + root = sb->s_root; + di_write_unlock(root); + for (ull = 0; ull < max; ull++) { + file = array[ull]; + if (unlikely(!file)) + break; + + /* AuDbg("%pD\n", file); */ + fi_read_lock(file); + btop = au_fbtop(file); + if (!d_is_dir(file->f_path.dentry)) { + hfile = &au_fi(file)->fi_htop; + if (hfile->hf_br->br_id == br_id) + err = -EBUSY; + } else + err = test_dir_busy(file, br_id, to_free, &idx); + fi_read_unlock(file); + if (unlikely(err)) + break; + } + di_write_lock_child(root); + au_farray_free(array, max); + AuDebugOn(idx > opened); + +out: + return err; +} + +static void br_del_file(struct file **to_free, unsigned long long opened, + aufs_bindex_t br_id) +{ + unsigned long long ull; + aufs_bindex_t bindex, btop, bbot, bfound; + struct file *file; + struct au_fidir *fidir; + struct au_hfile *hfile; + + for (ull = 0; ull < opened; ull++) { + file = to_free[ull]; + if (unlikely(!file)) + break; + + /* AuDbg("%pD\n", file); */ + AuDebugOn(!d_is_dir(file->f_path.dentry)); + bfound = -1; + fidir = au_fi(file)->fi_hdir; + AuDebugOn(!fidir); + fi_write_lock(file); + btop = au_fbtop(file); + bbot = au_fbbot_dir(file); + for (bindex = btop; bindex <= bbot; bindex++) { + hfile = fidir->fd_hfile + bindex; + if (!hfile->hf_file) + continue; + + if (hfile->hf_br->br_id == br_id) { + bfound = bindex; + break; + } + } + AuDebugOn(bfound < 0); + au_set_h_fptr(file, bfound, NULL); + if (bfound == btop) { + for (btop++; btop <= bbot; btop++) + if (au_hf_dir(file, btop)) { + au_set_fbtop(file, btop); + break; + } + } + fi_write_unlock(file); + } +} + +static void au_br_do_del_brp(struct au_sbinfo *sbinfo, + const aufs_bindex_t bindex, + const aufs_bindex_t bbot) +{ + struct au_branch **brp, **p; + + AuRwMustWriteLock(&sbinfo->si_rwsem); + + brp = sbinfo->si_branch + bindex; + if (bindex < bbot) + memmove(brp, brp + 1, sizeof(*brp) * (bbot - bindex)); + sbinfo->si_branch[0 + bbot] = NULL; + sbinfo->si_bbot--; + + p = au_krealloc(sbinfo->si_branch, sizeof(*p) * bbot, AuGFP_SBILIST, + /*may_shrink*/1); + if (p) + sbinfo->si_branch = p; + /* harmless error */ +} + +static void au_br_do_del_hdp(struct au_dinfo *dinfo, const aufs_bindex_t bindex, + const aufs_bindex_t bbot) +{ + struct au_hdentry *hdp, *p; + + AuRwMustWriteLock(&dinfo->di_rwsem); + + hdp = au_hdentry(dinfo, bindex); + if (bindex < bbot) + memmove(hdp, hdp + 1, sizeof(*hdp) * (bbot - bindex)); + /* au_h_dentry_init(au_hdentry(dinfo, bbot); */ + dinfo->di_bbot--; + + p = au_krealloc(dinfo->di_hdentry, sizeof(*p) * bbot, AuGFP_SBILIST, + /*may_shrink*/1); + if (p) + dinfo->di_hdentry = p; + /* harmless error */ +} + +static void au_br_do_del_hip(struct au_iinfo *iinfo, const aufs_bindex_t bindex, + const aufs_bindex_t bbot) +{ + struct au_hinode *hip, *p; + + AuRwMustWriteLock(&iinfo->ii_rwsem); + + hip = au_hinode(iinfo, bindex); + if (bindex < bbot) + memmove(hip, hip + 1, sizeof(*hip) * (bbot - bindex)); + /* au_hinode_init(au_hinode(iinfo, bbot)); */ + iinfo->ii_bbot--; + + p = au_krealloc(iinfo->ii_hinode, sizeof(*p) * bbot, AuGFP_SBILIST, + /*may_shrink*/1); + if (p) + iinfo->ii_hinode = p; + /* harmless error */ +} + +static void au_br_do_del(struct super_block *sb, aufs_bindex_t bindex, + struct au_branch *br) +{ + aufs_bindex_t bbot; + struct au_sbinfo *sbinfo; + struct dentry *root, *h_root; + struct inode *inode, *h_inode; + struct au_hinode *hinode; + + SiMustWriteLock(sb); + + root = sb->s_root; + inode = d_inode(root); + sbinfo = au_sbi(sb); + bbot = sbinfo->si_bbot; + + h_root = au_h_dptr(root, bindex); + hinode = au_hi(inode, bindex); + h_inode = au_igrab(hinode->hi_inode); + au_hiput(hinode); + + au_sbilist_lock(); + au_br_do_del_brp(sbinfo, bindex, bbot); + au_br_do_del_hdp(au_di(root), bindex, bbot); + au_br_do_del_hip(au_ii(inode), bindex, bbot); + au_sbilist_unlock(); + + /* ignore an error */ + au_dr_br_fin(sb, br); /* always, regardless the mount option */ + + dput(h_root); + iput(h_inode); + au_br_do_free(br); +} + +static unsigned long long empty_cb(struct super_block *sb, void *array, + unsigned long long max, void *arg) +{ + return max; +} + +int au_br_del(struct super_block *sb, struct au_opt_del *del, int remount) +{ + int err, rerr, i; + unsigned long long opened; + unsigned int mnt_flags; + aufs_bindex_t bindex, bbot, br_id; + unsigned char do_wh, verbose; + struct au_branch *br; + struct au_wbr *wbr; + struct dentry *root; + struct file **to_free; + + err = 0; + opened = 0; + to_free = NULL; + root = sb->s_root; + bindex = au_find_dbindex(root, del->h_path.dentry); + if (bindex < 0) { + if (remount) + goto out; /* success */ + err = -ENOENT; + pr_err("%s no such branch\n", del->pathname); + goto out; + } + AuDbg("bindex b%d\n", bindex); + + err = -EBUSY; + mnt_flags = au_mntflags(sb); + verbose = !!au_opt_test(mnt_flags, VERBOSE); + bbot = au_sbbot(sb); + if (unlikely(!bbot)) { + AuVerbose(verbose, "no more branches left\n"); + goto out; + } + + br = au_sbr(sb, bindex); + AuDebugOn(!path_equal(&br->br_path, &del->h_path)); + if (unlikely(au_lcnt_read(&br->br_count, /*do_rev*/1))) { + AuVerbose(verbose, "br %pd2 is busy now\n", del->h_path.dentry); + goto out; + } + + br_id = br->br_id; + opened = au_lcnt_read(&br->br_nfiles, /*do_rev*/1); + if (unlikely(opened)) { + to_free = au_array_alloc(&opened, empty_cb, sb, NULL); + err = PTR_ERR(to_free); + if (IS_ERR(to_free)) + goto out; + + err = test_file_busy(sb, br_id, to_free, opened); + if (unlikely(err)) { + AuVerbose(verbose, "%llu file(s) opened\n", opened); + goto out; + } + } + + wbr = br->br_wbr; + do_wh = wbr && (wbr->wbr_whbase || wbr->wbr_plink || wbr->wbr_orph); + if (do_wh) { + /* instead of WbrWhMustWriteLock(wbr) */ + SiMustWriteLock(sb); + for (i = 0; i < AuBrWh_Last; i++) { + dput(wbr->wbr_wh[i]); + wbr->wbr_wh[i] = NULL; + } + } + + err = test_children_busy(root, bindex, verbose); + if (unlikely(err)) { + if (do_wh) + goto out_wh; + goto out; + } + + err = 0; + if (to_free) { + /* + * now we confirmed the branch is deletable. + * let's free the remaining opened dirs on the branch. + */ + di_write_unlock(root); + br_del_file(to_free, opened, br_id); + di_write_lock_child(root); + } + + sysaufs_brs_del(sb, bindex); /* remove successors */ + dbgaufs_xino_del(br); /* remove one */ + au_br_do_del(sb, bindex, br); + sysaufs_brs_add(sb, bindex); /* append successors */ + dbgaufs_brs_add(sb, bindex, /*topdown*/1); /* rename successors */ + + if (!bindex) { + au_cpup_attr_all(d_inode(root), /*force*/1); + sb->s_maxbytes = au_sbr_sb(sb, 0)->s_maxbytes; + } else + au_sub_nlink(d_inode(root), d_inode(del->h_path.dentry)); + if (au_opt_test(mnt_flags, PLINK)) + au_plink_half_refresh(sb, br_id); + + goto out; /* success */ + +out_wh: + /* revert */ + rerr = au_br_init_wh(sb, br, br->br_perm); + if (rerr) + pr_warn("failed re-creating base whiteout, %s. (%d)\n", + del->pathname, rerr); +out: + if (to_free) + au_farray_free(to_free, opened); + return err; +} + +/* ---------------------------------------------------------------------- */ + +static int au_ibusy(struct super_block *sb, struct aufs_ibusy __user *arg) +{ + int err; + aufs_bindex_t btop, bbot; + struct aufs_ibusy ibusy; + struct inode *inode, *h_inode; + + err = -EPERM; + if (unlikely(!capable(CAP_SYS_ADMIN))) + goto out; + + err = copy_from_user(&ibusy, arg, sizeof(ibusy)); + if (!err) + /* VERIFY_WRITE */ + err = !access_ok(&arg->h_ino, sizeof(arg->h_ino)); + if (unlikely(err)) { + err = -EFAULT; + AuTraceErr(err); + goto out; + } + + err = -EINVAL; + si_read_lock(sb, AuLock_FLUSH); + if (unlikely(ibusy.bindex < 0 || ibusy.bindex > au_sbbot(sb))) + goto out_unlock; + + err = 0; + ibusy.h_ino = 0; /* invalid */ + inode = ilookup(sb, ibusy.ino); + if (!inode + || inode->i_ino == AUFS_ROOT_INO + || au_is_bad_inode(inode)) + goto out_unlock; + + ii_read_lock_child(inode); + btop = au_ibtop(inode); + bbot = au_ibbot(inode); + if (btop <= ibusy.bindex && ibusy.bindex <= bbot) { + h_inode = au_h_iptr(inode, ibusy.bindex); + if (h_inode && au_test_ibusy(inode, btop, bbot)) + ibusy.h_ino = h_inode->i_ino; + } + ii_read_unlock(inode); + iput(inode); + +out_unlock: + si_read_unlock(sb); + if (!err) { + err = __put_user(ibusy.h_ino, &arg->h_ino); + if (unlikely(err)) { + err = -EFAULT; + AuTraceErr(err); + } + } +out: + return err; +} + +long au_ibusy_ioctl(struct file *file, unsigned long arg) +{ + return au_ibusy(file->f_path.dentry->d_sb, (void __user *)arg); +} + +#ifdef CONFIG_COMPAT +long au_ibusy_compat_ioctl(struct file *file, unsigned long arg) +{ + return au_ibusy(file->f_path.dentry->d_sb, compat_ptr(arg)); +} +#endif + +/* ---------------------------------------------------------------------- */ + +/* + * change a branch permission + */ + +static void au_warn_ima(void) +{ +#ifdef CONFIG_IMA + /* since it doesn't support mark_files_ro() */ + AuWarn1("RW -> RO makes IMA to produce wrong message\n"); +#endif +} + +static int do_need_sigen_inc(int a, int b) +{ + return au_br_whable(a) && !au_br_whable(b); +} + +static int need_sigen_inc(int old, int new) +{ + return do_need_sigen_inc(old, new) + || do_need_sigen_inc(new, old); +} + +static int au_br_mod_files_ro(struct super_block *sb, aufs_bindex_t bindex) +{ + int err, do_warn; + unsigned int mnt_flags; + unsigned long long ull, max; + aufs_bindex_t br_id; + unsigned char verbose, writer; + struct file *file, *hf, **array; + struct au_hfile *hfile; + struct inode *h_inode; + + mnt_flags = au_mntflags(sb); + verbose = !!au_opt_test(mnt_flags, VERBOSE); + + array = au_farray_alloc(sb, &max); + err = PTR_ERR(array); + if (IS_ERR(array)) + goto out; + + do_warn = 0; + br_id = au_sbr_id(sb, bindex); + for (ull = 0; ull < max; ull++) { + file = array[ull]; + if (unlikely(!file)) + break; + + /* AuDbg("%pD\n", file); */ + fi_read_lock(file); + if (unlikely(au_test_mmapped(file))) { + err = -EBUSY; + AuVerbose(verbose, "mmapped %pD\n", file); + AuDbgFile(file); + FiMustNoWaiters(file); + fi_read_unlock(file); + goto out_array; + } + + hfile = &au_fi(file)->fi_htop; + hf = hfile->hf_file; + if (!d_is_reg(file->f_path.dentry) + || !(file->f_mode & FMODE_WRITE) + || hfile->hf_br->br_id != br_id + || !(hf->f_mode & FMODE_WRITE)) + array[ull] = NULL; + else { + do_warn = 1; + get_file(file); + } + + FiMustNoWaiters(file); + fi_read_unlock(file); + fput(file); + } + + err = 0; + if (do_warn) + au_warn_ima(); + + for (ull = 0; ull < max; ull++) { + file = array[ull]; + if (!file) + continue; + + /* todo: already flushed? */ + /* + * fs/super.c:mark_files_ro() is gone, but aufs keeps its + * approach which resets f_mode and calls mnt_drop_write() and + * file_release_write() for each file, because the branch + * attribute in aufs world is totally different from the native + * fs rw/ro mode. + */ + /* fi_read_lock(file); */ + hfile = &au_fi(file)->fi_htop; + hf = hfile->hf_file; + /* fi_read_unlock(file); */ + spin_lock(&hf->f_lock); + writer = !!(hf->f_mode & FMODE_WRITER); + hf->f_mode &= ~(FMODE_WRITE | FMODE_WRITER); + spin_unlock(&hf->f_lock); + if (writer) { + h_inode = file_inode(hf); + if (hf->f_mode & FMODE_READ) + i_readcount_inc(h_inode); + put_write_access(h_inode); + __mnt_drop_write(hf->f_path.mnt); + } + } + +out_array: + au_farray_free(array, max); +out: + AuTraceErr(err); + return err; +} + +int au_br_mod(struct super_block *sb, struct au_opt_mod *mod, int remount, + int *do_refresh) +{ + int err, rerr; + aufs_bindex_t bindex; + struct dentry *root; + struct au_branch *br; + struct au_br_fhsm *bf; + + root = sb->s_root; + bindex = au_find_dbindex(root, mod->h_root); + if (bindex < 0) { + if (remount) + return 0; /* success */ + err = -ENOENT; + pr_err("%s no such branch\n", mod->path); + goto out; + } + AuDbg("bindex b%d\n", bindex); + + err = test_br(d_inode(mod->h_root), mod->perm, mod->path); + if (unlikely(err)) + goto out; + + br = au_sbr(sb, bindex); + AuDebugOn(mod->h_root != au_br_dentry(br)); + if (br->br_perm == mod->perm) + return 0; /* success */ + + /* pre-allocate for non-fhsm --> fhsm */ + bf = NULL; + if (!au_br_fhsm(br->br_perm) && au_br_fhsm(mod->perm)) { + err = au_fhsm_br_alloc(br); + if (unlikely(err)) + goto out; + bf = br->br_fhsm; + br->br_fhsm = NULL; + } + + if (au_br_writable(br->br_perm)) { + /* remove whiteout base */ + err = au_br_init_wh(sb, br, mod->perm); + if (unlikely(err)) + goto out_bf; + + if (!au_br_writable(mod->perm)) { + /* rw --> ro, file might be mmapped */ + DiMustNoWaiters(root); + IiMustNoWaiters(d_inode(root)); + di_write_unlock(root); + err = au_br_mod_files_ro(sb, bindex); + /* aufs_write_lock() calls ..._child() */ + di_write_lock_child(root); + + if (unlikely(err)) { + rerr = -ENOMEM; + br->br_wbr = kzalloc(sizeof(*br->br_wbr), + GFP_NOFS); + if (br->br_wbr) + rerr = au_wbr_init(br, sb, br->br_perm); + if (unlikely(rerr)) { + AuIOErr("nested error %d (%d)\n", + rerr, err); + br->br_perm = mod->perm; + } + } + } + } else if (au_br_writable(mod->perm)) { + /* ro --> rw */ + err = -ENOMEM; + br->br_wbr = kzalloc(sizeof(*br->br_wbr), GFP_NOFS); + if (br->br_wbr) { + err = au_wbr_init(br, sb, mod->perm); + if (unlikely(err)) { + au_kfree_rcu(br->br_wbr); + br->br_wbr = NULL; + } + } + } + if (unlikely(err)) + goto out_bf; + + if (au_br_fhsm(br->br_perm)) { + if (!au_br_fhsm(mod->perm)) { + /* fhsm --> non-fhsm */ + au_br_fhsm_fin(br->br_fhsm); + au_kfree_rcu(br->br_fhsm); + br->br_fhsm = NULL; + } + } else if (au_br_fhsm(mod->perm)) + /* non-fhsm --> fhsm */ + br->br_fhsm = bf; + + *do_refresh |= need_sigen_inc(br->br_perm, mod->perm); + br->br_perm = mod->perm; + goto out; /* success */ + +out_bf: + au_kfree_try_rcu(bf); +out: + AuTraceErr(err); + return err; +} + +/* ---------------------------------------------------------------------- */ + +int au_br_stfs(struct au_branch *br, struct aufs_stfs *stfs) +{ + int err; + struct kstatfs kstfs; + + err = vfs_statfs(&br->br_path, &kstfs); + if (!err) { + stfs->f_blocks = kstfs.f_blocks; + stfs->f_bavail = kstfs.f_bavail; + stfs->f_files = kstfs.f_files; + stfs->f_ffree = kstfs.f_ffree; + } + + return err; +} --- linux-azure-5.8-5.8.0.orig/fs/aufs/branch.h +++ linux-azure-5.8-5.8.0/fs/aufs/branch.h @@ -0,0 +1,366 @@ +/* SPDX-License-Identifier: GPL-2.0 */ +/* + * Copyright (C) 2005-2020 Junjiro R. Okajima + * + * This program, aufs is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; either version 2 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + */ + +/* + * branch filesystems and xino for them + */ + +#ifndef __AUFS_BRANCH_H__ +#define __AUFS_BRANCH_H__ + +#ifdef __KERNEL__ + +#include +#include "dirren.h" +#include "dynop.h" +#include "lcnt.h" +#include "rwsem.h" +#include "super.h" + +/* ---------------------------------------------------------------------- */ + +/* a xino file */ +struct au_xino { + struct file **xi_file; + unsigned int xi_nfile; + + struct { + spinlock_t spin; + ino_t *array; + int total; + /* reserved for future use */ + /* unsigned long *bitmap; */ + wait_queue_head_t wqh; + } xi_nondir; + + struct mutex xi_mtx; /* protects xi_file array */ + struct hlist_bl_head xi_writing; + + atomic_t xi_truncating; + + struct kref xi_kref; +}; + +/* File-based Hierarchical Storage Management */ +struct au_br_fhsm { +#ifdef CONFIG_AUFS_FHSM + struct mutex bf_lock; + unsigned long bf_jiffy; + struct aufs_stfs bf_stfs; + int bf_readable; +#endif +}; + +/* members for writable branch only */ +enum {AuBrWh_BASE, AuBrWh_PLINK, AuBrWh_ORPH, AuBrWh_Last}; +struct au_wbr { + struct au_rwsem wbr_wh_rwsem; + struct dentry *wbr_wh[AuBrWh_Last]; + atomic_t wbr_wh_running; +#define wbr_whbase wbr_wh[AuBrWh_BASE] /* whiteout base */ +#define wbr_plink wbr_wh[AuBrWh_PLINK] /* pseudo-link dir */ +#define wbr_orph wbr_wh[AuBrWh_ORPH] /* dir for orphans */ + + /* mfs mode */ + unsigned long long wbr_bytes; +}; + +/* ext2 has 3 types of operations at least, ext3 has 4 */ +#define AuBrDynOp (AuDyLast * 4) + +#ifdef CONFIG_AUFS_HFSNOTIFY +/* support for asynchronous destruction */ +struct au_br_hfsnotify { + struct fsnotify_group *hfsn_group; +}; +#endif + +/* sysfs entries */ +struct au_brsysfs { + char name[16]; + struct attribute attr; +}; + +enum { + AuBrSysfs_BR, + AuBrSysfs_BRID, + AuBrSysfs_Last +}; + +/* protected by superblock rwsem */ +struct au_branch { + struct au_xino *br_xino; + + aufs_bindex_t br_id; + + int br_perm; + struct path br_path; + spinlock_t br_dykey_lock; + struct au_dykey *br_dykey[AuBrDynOp]; + au_lcnt_t br_nfiles; /* opened files */ + au_lcnt_t br_count; /* in-use for other */ + + struct au_wbr *br_wbr; + struct au_br_fhsm *br_fhsm; + +#ifdef CONFIG_AUFS_HFSNOTIFY + struct au_br_hfsnotify *br_hfsn; +#endif + +#ifdef CONFIG_SYSFS + /* entries under sysfs per mount-point */ + struct au_brsysfs br_sysfs[AuBrSysfs_Last]; +#endif + +#ifdef CONFIG_DEBUG_FS + struct dentry *br_dbgaufs; /* xino */ +#endif + + struct au_dr_br br_dirren; +}; + +/* ---------------------------------------------------------------------- */ + +static inline struct vfsmount *au_br_mnt(struct au_branch *br) +{ + return br->br_path.mnt; +} + +static inline struct dentry *au_br_dentry(struct au_branch *br) +{ + return br->br_path.dentry; +} + +static inline struct super_block *au_br_sb(struct au_branch *br) +{ + return au_br_mnt(br)->mnt_sb; +} + +static inline int au_br_rdonly(struct au_branch *br) +{ + return (sb_rdonly(au_br_sb(br)) + || !au_br_writable(br->br_perm)) + ? -EROFS : 0; +} + +static inline int au_br_hnotifyable(int brperm __maybe_unused) +{ +#ifdef CONFIG_AUFS_HNOTIFY + return !(brperm & AuBrPerm_RR); +#else + return 0; +#endif +} + +static inline int au_br_test_oflag(int oflag, struct au_branch *br) +{ + int err, exec_flag; + + err = 0; + exec_flag = oflag & __FMODE_EXEC; + if (unlikely(exec_flag && path_noexec(&br->br_path))) + err = -EACCES; + + return err; +} + +static inline void au_xino_get(struct au_branch *br) +{ + struct au_xino *xi; + + xi = br->br_xino; + if (xi) + kref_get(&xi->xi_kref); +} + +static inline int au_xino_count(struct au_branch *br) +{ + int v; + struct au_xino *xi; + + v = 0; + xi = br->br_xino; + if (xi) + v = kref_read(&xi->xi_kref); + + return v; +} + +/* ---------------------------------------------------------------------- */ + +/* branch.c */ +struct au_sbinfo; +void au_br_free(struct au_sbinfo *sinfo); +int au_br_index(struct super_block *sb, aufs_bindex_t br_id); +struct au_opt_add; +int au_br_add(struct super_block *sb, struct au_opt_add *add, int remount); +struct au_opt_del; +int au_br_del(struct super_block *sb, struct au_opt_del *del, int remount); +long au_ibusy_ioctl(struct file *file, unsigned long arg); +#ifdef CONFIG_COMPAT +long au_ibusy_compat_ioctl(struct file *file, unsigned long arg); +#endif +struct au_opt_mod; +int au_br_mod(struct super_block *sb, struct au_opt_mod *mod, int remount, + int *do_refresh); +struct aufs_stfs; +int au_br_stfs(struct au_branch *br, struct aufs_stfs *stfs); + +/* xino.c */ +static const loff_t au_loff_max = LLONG_MAX; + +aufs_bindex_t au_xi_root(struct super_block *sb, struct dentry *dentry); +struct file *au_xino_create(struct super_block *sb, char *fpath, int silent, + int wbrtop); +struct file *au_xino_create2(struct super_block *sb, struct path *base, + struct file *copy_src); +struct au_xi_new { + struct au_xino *xi; /* switch between xino and xigen */ + int idx; + struct path *base; + struct file *copy_src; +}; +struct file *au_xi_new(struct super_block *sb, struct au_xi_new *xinew); + +int au_xino_read(struct super_block *sb, aufs_bindex_t bindex, ino_t h_ino, + ino_t *ino); +int au_xino_write(struct super_block *sb, aufs_bindex_t bindex, ino_t h_ino, + ino_t ino); +ssize_t xino_fread(vfs_readf_t func, struct file *file, void *buf, size_t size, + loff_t *pos); +ssize_t xino_fwrite(vfs_writef_t func, struct file *file, void *buf, + size_t size, loff_t *pos); + +int au_xib_trunc(struct super_block *sb); +int au_xino_trunc(struct super_block *sb, aufs_bindex_t bindex, int idx_begin); + +struct au_xino *au_xino_alloc(unsigned int nfile); +int au_xino_put(struct au_branch *br); +struct file *au_xino_file1(struct au_xino *xi); + +struct au_opt_xino; +void au_xino_clr(struct super_block *sb); +int au_xino_set(struct super_block *sb, struct au_opt_xino *xiopt, int remount); +struct file *au_xino_def(struct super_block *sb); +int au_xino_init_br(struct super_block *sb, struct au_branch *br, ino_t hino, + struct path *base); + +ino_t au_xino_new_ino(struct super_block *sb); +void au_xino_delete_inode(struct inode *inode, const int unlinked); + +void au_xinondir_leave(struct super_block *sb, aufs_bindex_t bindex, + ino_t h_ino, int idx); +int au_xinondir_enter(struct super_block *sb, aufs_bindex_t bindex, ino_t h_ino, + int *idx); + +int au_xino_path(struct seq_file *seq, struct file *file); + +/* ---------------------------------------------------------------------- */ + +/* @idx is signed to accept -1 meaning the first file */ +static inline struct file *au_xino_file(struct au_xino *xi, int idx) +{ + struct file *file; + + file = NULL; + if (!xi) + goto out; + + if (idx >= 0) { + if (idx < xi->xi_nfile) + file = xi->xi_file[idx]; + } else + file = au_xino_file1(xi); + +out: + return file; +} + +/* ---------------------------------------------------------------------- */ + +/* Superblock to branch */ +static inline +aufs_bindex_t au_sbr_id(struct super_block *sb, aufs_bindex_t bindex) +{ + return au_sbr(sb, bindex)->br_id; +} + +static inline +struct vfsmount *au_sbr_mnt(struct super_block *sb, aufs_bindex_t bindex) +{ + return au_br_mnt(au_sbr(sb, bindex)); +} + +static inline +struct super_block *au_sbr_sb(struct super_block *sb, aufs_bindex_t bindex) +{ + return au_br_sb(au_sbr(sb, bindex)); +} + +static inline int au_sbr_perm(struct super_block *sb, aufs_bindex_t bindex) +{ + return au_sbr(sb, bindex)->br_perm; +} + +static inline int au_sbr_whable(struct super_block *sb, aufs_bindex_t bindex) +{ + return au_br_whable(au_sbr_perm(sb, bindex)); +} + +/* ---------------------------------------------------------------------- */ + +#define wbr_wh_read_lock(wbr) au_rw_read_lock(&(wbr)->wbr_wh_rwsem) +#define wbr_wh_write_lock(wbr) au_rw_write_lock(&(wbr)->wbr_wh_rwsem) +#define wbr_wh_read_trylock(wbr) au_rw_read_trylock(&(wbr)->wbr_wh_rwsem) +#define wbr_wh_write_trylock(wbr) au_rw_write_trylock(&(wbr)->wbr_wh_rwsem) +/* +#define wbr_wh_read_trylock_nested(wbr) \ + au_rw_read_trylock_nested(&(wbr)->wbr_wh_rwsem) +#define wbr_wh_write_trylock_nested(wbr) \ + au_rw_write_trylock_nested(&(wbr)->wbr_wh_rwsem) +*/ + +#define wbr_wh_read_unlock(wbr) au_rw_read_unlock(&(wbr)->wbr_wh_rwsem) +#define wbr_wh_write_unlock(wbr) au_rw_write_unlock(&(wbr)->wbr_wh_rwsem) +#define wbr_wh_downgrade_lock(wbr) au_rw_dgrade_lock(&(wbr)->wbr_wh_rwsem) + +#define WbrWhMustNoWaiters(wbr) AuRwMustNoWaiters(&(wbr)->wbr_wh_rwsem) +#define WbrWhMustAnyLock(wbr) AuRwMustAnyLock(&(wbr)->wbr_wh_rwsem) +#define WbrWhMustWriteLock(wbr) AuRwMustWriteLock(&(wbr)->wbr_wh_rwsem) + +/* ---------------------------------------------------------------------- */ + +#ifdef CONFIG_AUFS_FHSM +static inline void au_br_fhsm_init(struct au_br_fhsm *brfhsm) +{ + mutex_init(&brfhsm->bf_lock); + brfhsm->bf_jiffy = 0; + brfhsm->bf_readable = 0; +} + +static inline void au_br_fhsm_fin(struct au_br_fhsm *brfhsm) +{ + mutex_destroy(&brfhsm->bf_lock); +} +#else +AuStubVoid(au_br_fhsm_init, struct au_br_fhsm *brfhsm) +AuStubVoid(au_br_fhsm_fin, struct au_br_fhsm *brfhsm) +#endif + +#endif /* __KERNEL__ */ +#endif /* __AUFS_BRANCH_H__ */ --- linux-azure-5.8-5.8.0.orig/fs/aufs/conf.mk +++ linux-azure-5.8-5.8.0/fs/aufs/conf.mk @@ -0,0 +1,40 @@ +# SPDX-License-Identifier: GPL-2.0 + +AuConfStr = CONFIG_AUFS_FS=${CONFIG_AUFS_FS} + +define AuConf +ifdef ${1} +AuConfStr += ${1}=${${1}} +endif +endef + +AuConfAll = BRANCH_MAX_127 BRANCH_MAX_511 BRANCH_MAX_1023 BRANCH_MAX_32767 \ + SBILIST \ + HNOTIFY HFSNOTIFY \ + EXPORT INO_T_64 \ + XATTR \ + FHSM \ + RDU \ + DIRREN \ + SHWH \ + BR_RAMFS \ + BR_FUSE POLL \ + BR_HFSPLUS \ + BDEV_LOOP \ + DEBUG MAGIC_SYSRQ +$(foreach i, ${AuConfAll}, \ + $(eval $(call AuConf,CONFIG_AUFS_${i}))) + +AuConfName = ${obj}/conf.str +${AuConfName}.tmp: FORCE + @echo ${AuConfStr} | tr ' ' '\n' | sed -e 's/^/"/' -e 's/$$/\\n"/' > $@ +${AuConfName}: ${AuConfName}.tmp + @diff -q $< $@ > /dev/null 2>&1 || { \ + echo ' GEN ' $@; \ + cp -p $< $@; \ + } +FORCE: +clean-files += ${AuConfName} ${AuConfName}.tmp +${obj}/sysfs.o: ${AuConfName} + +-include ${srctree}/${src}/conf_priv.mk --- linux-azure-5.8-5.8.0.orig/fs/aufs/cpup.c +++ linux-azure-5.8-5.8.0/fs/aufs/cpup.c @@ -0,0 +1,1458 @@ +// SPDX-License-Identifier: GPL-2.0 +/* + * Copyright (C) 2005-2020 Junjiro R. Okajima + * + * This program, aufs is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; either version 2 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + */ + +/* + * copy-up functions, see wbr_policy.c for copy-down + */ + +#include +#include +#include +#include "aufs.h" + +void au_cpup_attr_flags(struct inode *dst, unsigned int iflags) +{ + const unsigned int mask = S_DEAD | S_SWAPFILE | S_PRIVATE + | S_NOATIME | S_NOCMTIME | S_AUTOMOUNT; + + BUILD_BUG_ON(sizeof(iflags) != sizeof(dst->i_flags)); + + dst->i_flags |= iflags & ~mask; + if (au_test_fs_notime(dst->i_sb)) + dst->i_flags |= S_NOATIME | S_NOCMTIME; +} + +void au_cpup_attr_timesizes(struct inode *inode) +{ + struct inode *h_inode; + + h_inode = au_h_iptr(inode, au_ibtop(inode)); + fsstack_copy_attr_times(inode, h_inode); + fsstack_copy_inode_size(inode, h_inode); +} + +void au_cpup_attr_nlink(struct inode *inode, int force) +{ + struct inode *h_inode; + struct super_block *sb; + aufs_bindex_t bindex, bbot; + + sb = inode->i_sb; + bindex = au_ibtop(inode); + h_inode = au_h_iptr(inode, bindex); + if (!force + && !S_ISDIR(h_inode->i_mode) + && au_opt_test(au_mntflags(sb), PLINK) + && au_plink_test(inode)) + return; + + /* + * 0 can happen in revalidating. + * h_inode->i_mutex may not be held here, but it is harmless since once + * i_nlink reaches 0, it will never become positive except O_TMPFILE + * case. + * todo: O_TMPFILE+linkat(AT_SYMLINK_FOLLOW) bypassing aufs may cause + * the incorrect link count. + */ + set_nlink(inode, h_inode->i_nlink); + + /* + * fewer nlink makes find(1) noisy, but larger nlink doesn't. + * it may includes whplink directory. + */ + if (S_ISDIR(h_inode->i_mode)) { + bbot = au_ibbot(inode); + for (bindex++; bindex <= bbot; bindex++) { + h_inode = au_h_iptr(inode, bindex); + if (h_inode) + au_add_nlink(inode, h_inode); + } + } +} + +void au_cpup_attr_changeable(struct inode *inode) +{ + struct inode *h_inode; + + h_inode = au_h_iptr(inode, au_ibtop(inode)); + inode->i_mode = h_inode->i_mode; + inode->i_uid = h_inode->i_uid; + inode->i_gid = h_inode->i_gid; + au_cpup_attr_timesizes(inode); + au_cpup_attr_flags(inode, h_inode->i_flags); +} + +void au_cpup_igen(struct inode *inode, struct inode *h_inode) +{ + struct au_iinfo *iinfo = au_ii(inode); + + IiMustWriteLock(inode); + + iinfo->ii_higen = h_inode->i_generation; + iinfo->ii_hsb1 = h_inode->i_sb; +} + +void au_cpup_attr_all(struct inode *inode, int force) +{ + struct inode *h_inode; + + h_inode = au_h_iptr(inode, au_ibtop(inode)); + au_cpup_attr_changeable(inode); + if (inode->i_nlink > 0) + au_cpup_attr_nlink(inode, force); + inode->i_rdev = h_inode->i_rdev; + inode->i_blkbits = h_inode->i_blkbits; + au_cpup_igen(inode, h_inode); +} + +/* ---------------------------------------------------------------------- */ + +/* Note: dt_dentry and dt_h_dentry are not dget/dput-ed */ + +/* keep the timestamps of the parent dir when cpup */ +void au_dtime_store(struct au_dtime *dt, struct dentry *dentry, + struct path *h_path) +{ + struct inode *h_inode; + + dt->dt_dentry = dentry; + dt->dt_h_path = *h_path; + h_inode = d_inode(h_path->dentry); + dt->dt_atime = h_inode->i_atime; + dt->dt_mtime = h_inode->i_mtime; + /* smp_mb(); */ +} + +void au_dtime_revert(struct au_dtime *dt) +{ + struct iattr attr; + int err; + + attr.ia_atime = dt->dt_atime; + attr.ia_mtime = dt->dt_mtime; + attr.ia_valid = ATTR_FORCE | ATTR_MTIME | ATTR_MTIME_SET + | ATTR_ATIME | ATTR_ATIME_SET; + + /* no delegation since this is a directory */ + err = vfsub_notify_change(&dt->dt_h_path, &attr, /*delegated*/NULL); + if (unlikely(err)) + pr_warn("restoring timestamps failed(%d). ignored\n", err); +} + +/* ---------------------------------------------------------------------- */ + +/* internal use only */ +struct au_cpup_reg_attr { + int valid; + struct kstat st; + unsigned int iflags; /* inode->i_flags */ +}; + +static noinline_for_stack +int cpup_iattr(struct dentry *dst, aufs_bindex_t bindex, struct dentry *h_src, + struct au_cpup_reg_attr *h_src_attr) +{ + int err, sbits, icex; + unsigned int mnt_flags; + unsigned char verbose; + struct iattr ia; + struct path h_path; + struct inode *h_isrc, *h_idst; + struct kstat *h_st; + struct au_branch *br; + + h_path.dentry = au_h_dptr(dst, bindex); + h_idst = d_inode(h_path.dentry); + br = au_sbr(dst->d_sb, bindex); + h_path.mnt = au_br_mnt(br); + h_isrc = d_inode(h_src); + ia.ia_valid = ATTR_FORCE | ATTR_UID | ATTR_GID + | ATTR_ATIME | ATTR_MTIME + | ATTR_ATIME_SET | ATTR_MTIME_SET; + if (h_src_attr && h_src_attr->valid) { + h_st = &h_src_attr->st; + ia.ia_uid = h_st->uid; + ia.ia_gid = h_st->gid; + ia.ia_atime = h_st->atime; + ia.ia_mtime = h_st->mtime; + if (h_idst->i_mode != h_st->mode + && !S_ISLNK(h_idst->i_mode)) { + ia.ia_valid |= ATTR_MODE; + ia.ia_mode = h_st->mode; + } + sbits = !!(h_st->mode & (S_ISUID | S_ISGID)); + au_cpup_attr_flags(h_idst, h_src_attr->iflags); + } else { + ia.ia_uid = h_isrc->i_uid; + ia.ia_gid = h_isrc->i_gid; + ia.ia_atime = h_isrc->i_atime; + ia.ia_mtime = h_isrc->i_mtime; + if (h_idst->i_mode != h_isrc->i_mode + && !S_ISLNK(h_idst->i_mode)) { + ia.ia_valid |= ATTR_MODE; + ia.ia_mode = h_isrc->i_mode; + } + sbits = !!(h_isrc->i_mode & (S_ISUID | S_ISGID)); + au_cpup_attr_flags(h_idst, h_isrc->i_flags); + } + /* no delegation since it is just created */ + err = vfsub_notify_change(&h_path, &ia, /*delegated*/NULL); + + /* is this nfs only? */ + if (!err && sbits && au_test_nfs(h_path.dentry->d_sb)) { + ia.ia_valid = ATTR_FORCE | ATTR_MODE; + ia.ia_mode = h_isrc->i_mode; + err = vfsub_notify_change(&h_path, &ia, /*delegated*/NULL); + } + + icex = br->br_perm & AuBrAttr_ICEX; + if (!err) { + mnt_flags = au_mntflags(dst->d_sb); + verbose = !!au_opt_test(mnt_flags, VERBOSE); + err = au_cpup_xattr(h_path.dentry, h_src, icex, verbose); + } + + return err; +} + +/* ---------------------------------------------------------------------- */ + +static int au_do_copy_file(struct file *dst, struct file *src, loff_t len, + char *buf, unsigned long blksize) +{ + int err; + size_t sz, rbytes, wbytes; + unsigned char all_zero; + char *p, *zp; + struct inode *h_inode; + /* reduce stack usage */ + struct iattr *ia; + + zp = page_address(ZERO_PAGE(0)); + if (unlikely(!zp)) + return -ENOMEM; /* possible? */ + + err = 0; + all_zero = 0; + while (len) { + AuDbg("len %lld\n", len); + sz = blksize; + if (len < blksize) + sz = len; + + rbytes = 0; + /* todo: signal_pending? */ + while (!rbytes || err == -EAGAIN || err == -EINTR) { + rbytes = vfsub_read_k(src, buf, sz, &src->f_pos); + err = rbytes; + } + if (unlikely(err < 0)) + break; + + all_zero = 0; + if (len >= rbytes && rbytes == blksize) + all_zero = !memcmp(buf, zp, rbytes); + if (!all_zero) { + wbytes = rbytes; + p = buf; + while (wbytes) { + size_t b; + + b = vfsub_write_k(dst, p, wbytes, &dst->f_pos); + err = b; + /* todo: signal_pending? */ + if (unlikely(err == -EAGAIN || err == -EINTR)) + continue; + if (unlikely(err < 0)) + break; + wbytes -= b; + p += b; + } + if (unlikely(err < 0)) + break; + } else { + loff_t res; + + AuLabel(hole); + res = vfsub_llseek(dst, rbytes, SEEK_CUR); + err = res; + if (unlikely(res < 0)) + break; + } + len -= rbytes; + err = 0; + } + + /* the last block may be a hole */ + if (!err && all_zero) { + AuLabel(last hole); + + err = 1; + if (au_test_nfs(dst->f_path.dentry->d_sb)) { + /* nfs requires this step to make last hole */ + /* is this only nfs? */ + do { + /* todo: signal_pending? */ + err = vfsub_write_k(dst, "\0", 1, &dst->f_pos); + } while (err == -EAGAIN || err == -EINTR); + if (err == 1) + dst->f_pos--; + } + + if (err == 1) { + ia = (void *)buf; + ia->ia_size = dst->f_pos; + ia->ia_valid = ATTR_SIZE | ATTR_FILE; + ia->ia_file = dst; + h_inode = file_inode(dst); + inode_lock_nested(h_inode, AuLsc_I_CHILD2); + /* no delegation since it is just created */ + err = vfsub_notify_change(&dst->f_path, ia, + /*delegated*/NULL); + inode_unlock(h_inode); + } + } + + return err; +} + +int au_copy_file(struct file *dst, struct file *src, loff_t len) +{ + int err; + unsigned long blksize; + unsigned char do_kfree; + char *buf; + struct super_block *h_sb; + + err = -ENOMEM; + h_sb = file_inode(dst)->i_sb; + blksize = h_sb->s_blocksize; + if (!blksize || PAGE_SIZE < blksize) + blksize = PAGE_SIZE; + AuDbg("blksize %lu\n", blksize); + do_kfree = (blksize != PAGE_SIZE && blksize >= sizeof(struct iattr *)); + if (do_kfree) + buf = kmalloc(blksize, GFP_NOFS); + else + buf = (void *)__get_free_page(GFP_NOFS); + if (unlikely(!buf)) + goto out; + + if (len > (1 << 22)) + AuDbg("copying a large file %lld\n", (long long)len); + + src->f_pos = 0; + dst->f_pos = 0; + err = au_do_copy_file(dst, src, len, buf, blksize); + if (do_kfree) { + AuDebugOn(!au_kfree_do_sz_test(blksize)); + au_kfree_do_rcu(buf); + } else + free_page((unsigned long)buf); + +out: + return err; +} + +static int au_do_copy(struct file *dst, struct file *src, loff_t len) +{ + int err; + struct super_block *h_src_sb; + struct inode *h_src_inode; + + h_src_inode = file_inode(src); + h_src_sb = h_src_inode->i_sb; + + /* XFS acquires inode_lock */ + if (!au_test_xfs(h_src_sb)) + err = au_copy_file(dst, src, len); + else { + inode_unlock_shared(h_src_inode); + err = au_copy_file(dst, src, len); + inode_lock_shared_nested(h_src_inode, AuLsc_I_CHILD); + } + + return err; +} + +static int au_clone_or_copy(struct file *dst, struct file *src, loff_t len) +{ + int err; + loff_t lo; + struct super_block *h_src_sb; + struct inode *h_src_inode; + + h_src_inode = file_inode(src); + h_src_sb = h_src_inode->i_sb; + if (h_src_sb != file_inode(dst)->i_sb + || !dst->f_op->remap_file_range) { + err = au_do_copy(dst, src, len); + goto out; + } + + if (!au_test_nfs(h_src_sb)) { + inode_unlock_shared(h_src_inode); + lo = vfsub_clone_file_range(src, dst, len); + inode_lock_shared_nested(h_src_inode, AuLsc_I_CHILD); + } else + lo = vfsub_clone_file_range(src, dst, len); + if (lo == len) { + err = 0; + goto out; /* success */ + } else if (lo >= 0) + /* todo: possible? */ + /* paritially succeeded */ + AuDbg("lo %lld, len %lld. Retrying.\n", lo, len); + else if (lo != -EOPNOTSUPP) { + /* older XFS has a condition in cloning */ + err = lo; + goto out; + } + + /* the backend fs on NFS may not support cloning */ + err = au_do_copy(dst, src, len); + +out: + AuTraceErr(err); + return err; +} + +/* + * to support a sparse file which is opened with O_APPEND, + * we need to close the file. + */ +static int au_cp_regular(struct au_cp_generic *cpg) +{ + int err, i; + enum { SRC, DST }; + struct { + aufs_bindex_t bindex; + unsigned int flags; + struct dentry *dentry; + int force_wr; + struct file *file; + } *f, file[] = { + { + .bindex = cpg->bsrc, + .flags = O_RDONLY | O_NOATIME | O_LARGEFILE, + }, + { + .bindex = cpg->bdst, + .flags = O_WRONLY | O_NOATIME | O_LARGEFILE, + .force_wr = !!au_ftest_cpup(cpg->flags, RWDST), + } + }; + struct au_branch *br; + struct super_block *sb, *h_src_sb; + struct inode *h_src_inode; + struct task_struct *tsk = current; + + /* bsrc branch can be ro/rw. */ + sb = cpg->dentry->d_sb; + f = file; + for (i = 0; i < 2; i++, f++) { + f->dentry = au_h_dptr(cpg->dentry, f->bindex); + f->file = au_h_open(cpg->dentry, f->bindex, f->flags, + /*file*/NULL, f->force_wr); + if (IS_ERR(f->file)) { + err = PTR_ERR(f->file); + if (i == SRC) + goto out; + else + goto out_src; + } + } + + /* try stopping to update while we copyup */ + h_src_inode = d_inode(file[SRC].dentry); + h_src_sb = h_src_inode->i_sb; + if (!au_test_nfs(h_src_sb)) + IMustLock(h_src_inode); + err = au_clone_or_copy(file[DST].file, file[SRC].file, cpg->len); + + /* i wonder if we had O_NO_DELAY_FPUT flag */ + if (tsk->flags & PF_KTHREAD) + __fput_sync(file[DST].file); + else { + /* it happened actually */ + fput(file[DST].file); + /* + * too bad. + * we have to call both since we don't know which place the file + * was added to. + */ + task_work_run(); + flush_delayed_fput(); + } + br = au_sbr(sb, file[DST].bindex); + au_lcnt_dec(&br->br_nfiles); + +out_src: + fput(file[SRC].file); + br = au_sbr(sb, file[SRC].bindex); + au_lcnt_dec(&br->br_nfiles); +out: + return err; +} + +static int au_do_cpup_regular(struct au_cp_generic *cpg, + struct au_cpup_reg_attr *h_src_attr) +{ + int err, rerr; + loff_t l; + struct path h_path; + struct inode *h_src_inode, *h_dst_inode; + + err = 0; + h_src_inode = au_h_iptr(d_inode(cpg->dentry), cpg->bsrc); + l = i_size_read(h_src_inode); + if (cpg->len == -1 || l < cpg->len) + cpg->len = l; + if (cpg->len) { + /* try stopping to update while we are referencing */ + inode_lock_shared_nested(h_src_inode, AuLsc_I_CHILD); + au_pin_hdir_unlock(cpg->pin); + + h_path.dentry = au_h_dptr(cpg->dentry, cpg->bsrc); + h_path.mnt = au_sbr_mnt(cpg->dentry->d_sb, cpg->bsrc); + h_src_attr->iflags = h_src_inode->i_flags; + if (!au_test_nfs(h_src_inode->i_sb)) + err = vfsub_getattr(&h_path, &h_src_attr->st); + else { + inode_unlock_shared(h_src_inode); + err = vfsub_getattr(&h_path, &h_src_attr->st); + inode_lock_shared_nested(h_src_inode, AuLsc_I_CHILD); + } + if (unlikely(err)) { + inode_unlock_shared(h_src_inode); + goto out; + } + h_src_attr->valid = 1; + if (!au_test_nfs(h_src_inode->i_sb)) { + err = au_cp_regular(cpg); + inode_unlock_shared(h_src_inode); + } else { + inode_unlock_shared(h_src_inode); + err = au_cp_regular(cpg); + } + rerr = au_pin_hdir_relock(cpg->pin); + if (!err && rerr) + err = rerr; + } + if (!err && (h_src_inode->i_state & I_LINKABLE)) { + h_path.dentry = au_h_dptr(cpg->dentry, cpg->bdst); + h_dst_inode = d_inode(h_path.dentry); + spin_lock(&h_dst_inode->i_lock); + h_dst_inode->i_state |= I_LINKABLE; + spin_unlock(&h_dst_inode->i_lock); + } + +out: + return err; +} + +static int au_do_cpup_symlink(struct path *h_path, struct dentry *h_src, + struct inode *h_dir) +{ + int err, symlen; + mm_segment_t old_fs; + union { + char *k; + char __user *u; + } sym; + + err = -ENOMEM; + sym.k = (void *)__get_free_page(GFP_NOFS); + if (unlikely(!sym.k)) + goto out; + + /* unnecessary to support mmap_sem since symlink is not mmap-able */ + old_fs = get_fs(); + set_fs(KERNEL_DS); + symlen = vfs_readlink(h_src, sym.u, PATH_MAX); + err = symlen; + set_fs(old_fs); + + if (symlen > 0) { + sym.k[symlen] = 0; + err = vfsub_symlink(h_dir, h_path, sym.k); + } + free_page((unsigned long)sym.k); + +out: + return err; +} + +/* + * regardless 'acl' option, reset all ACL. + * All ACL will be copied up later from the original entry on the lower branch. + */ +static int au_reset_acl(struct inode *h_dir, struct path *h_path, umode_t mode) +{ + int err; + struct dentry *h_dentry; + struct inode *h_inode; + + h_dentry = h_path->dentry; + h_inode = d_inode(h_dentry); + /* forget_all_cached_acls(h_inode)); */ + err = vfsub_removexattr(h_dentry, XATTR_NAME_POSIX_ACL_ACCESS); + AuTraceErr(err); + if (err == -EOPNOTSUPP) + err = 0; + if (!err) + err = vfsub_acl_chmod(h_inode, mode); + + AuTraceErr(err); + return err; +} + +static int au_do_cpup_dir(struct au_cp_generic *cpg, struct dentry *dst_parent, + struct inode *h_dir, struct path *h_path) +{ + int err; + struct inode *dir, *inode; + + err = vfsub_removexattr(h_path->dentry, XATTR_NAME_POSIX_ACL_DEFAULT); + AuTraceErr(err); + if (err == -EOPNOTSUPP) + err = 0; + if (unlikely(err)) + goto out; + + /* + * strange behaviour from the users view, + * particularly setattr case + */ + dir = d_inode(dst_parent); + if (au_ibtop(dir) == cpg->bdst) + au_cpup_attr_nlink(dir, /*force*/1); + inode = d_inode(cpg->dentry); + au_cpup_attr_nlink(inode, /*force*/1); + +out: + return err; +} + +static noinline_for_stack +int cpup_entry(struct au_cp_generic *cpg, struct dentry *dst_parent, + struct au_cpup_reg_attr *h_src_attr) +{ + int err; + umode_t mode; + unsigned int mnt_flags; + unsigned char isdir, isreg, force; + const unsigned char do_dt = !!au_ftest_cpup(cpg->flags, DTIME); + struct au_dtime dt; + struct path h_path; + struct dentry *h_src, *h_dst, *h_parent; + struct inode *h_inode, *h_dir; + struct super_block *sb; + + /* bsrc branch can be ro/rw. */ + h_src = au_h_dptr(cpg->dentry, cpg->bsrc); + h_inode = d_inode(h_src); + AuDebugOn(h_inode != au_h_iptr(d_inode(cpg->dentry), cpg->bsrc)); + + /* try stopping to be referenced while we are creating */ + h_dst = au_h_dptr(cpg->dentry, cpg->bdst); + if (au_ftest_cpup(cpg->flags, RENAME)) + AuDebugOn(strncmp(h_dst->d_name.name, AUFS_WH_PFX, + AUFS_WH_PFX_LEN)); + h_parent = h_dst->d_parent; /* dir inode is locked */ + h_dir = d_inode(h_parent); + IMustLock(h_dir); + AuDebugOn(h_parent != h_dst->d_parent); + + sb = cpg->dentry->d_sb; + h_path.mnt = au_sbr_mnt(sb, cpg->bdst); + if (do_dt) { + h_path.dentry = h_parent; + au_dtime_store(&dt, dst_parent, &h_path); + } + h_path.dentry = h_dst; + + isreg = 0; + isdir = 0; + mode = h_inode->i_mode; + switch (mode & S_IFMT) { + case S_IFREG: + isreg = 1; + err = vfsub_create(h_dir, &h_path, 0600, /*want_excl*/true); + if (!err) + err = au_do_cpup_regular(cpg, h_src_attr); + break; + case S_IFDIR: + isdir = 1; + err = vfsub_mkdir(h_dir, &h_path, mode); + if (!err) + err = au_do_cpup_dir(cpg, dst_parent, h_dir, &h_path); + break; + case S_IFLNK: + err = au_do_cpup_symlink(&h_path, h_src, h_dir); + break; + case S_IFCHR: + case S_IFBLK: + AuDebugOn(!capable(CAP_MKNOD)); + /*FALLTHROUGH*/ + case S_IFIFO: + case S_IFSOCK: + err = vfsub_mknod(h_dir, &h_path, mode, h_inode->i_rdev); + break; + default: + AuIOErr("Unknown inode type 0%o\n", mode); + err = -EIO; + } + if (!err) + err = au_reset_acl(h_dir, &h_path, mode); + + mnt_flags = au_mntflags(sb); + if (!au_opt_test(mnt_flags, UDBA_NONE) + && !isdir + && au_opt_test(mnt_flags, XINO) + && (h_inode->i_nlink == 1 + || (h_inode->i_state & I_LINKABLE)) + /* todo: unnecessary? */ + /* && d_inode(cpg->dentry)->i_nlink == 1 */ + && cpg->bdst < cpg->bsrc + && !au_ftest_cpup(cpg->flags, KEEPLINO)) + au_xino_write(sb, cpg->bsrc, h_inode->i_ino, /*ino*/0); + /* ignore this error */ + + if (!err) { + force = 0; + if (isreg) { + force = !!cpg->len; + if (cpg->len == -1) + force = !!i_size_read(h_inode); + } + au_fhsm_wrote(sb, cpg->bdst, force); + } + + if (do_dt) + au_dtime_revert(&dt); + return err; +} + +static int au_do_ren_after_cpup(struct au_cp_generic *cpg, struct path *h_path) +{ + int err; + struct dentry *dentry, *h_dentry, *h_parent, *parent; + struct inode *h_dir; + aufs_bindex_t bdst; + + dentry = cpg->dentry; + bdst = cpg->bdst; + h_dentry = au_h_dptr(dentry, bdst); + if (!au_ftest_cpup(cpg->flags, OVERWRITE)) { + dget(h_dentry); + au_set_h_dptr(dentry, bdst, NULL); + err = au_lkup_neg(dentry, bdst, /*wh*/0); + if (!err) + h_path->dentry = dget(au_h_dptr(dentry, bdst)); + au_set_h_dptr(dentry, bdst, h_dentry); + } else { + err = 0; + parent = dget_parent(dentry); + h_parent = au_h_dptr(parent, bdst); + dput(parent); + h_path->dentry = vfsub_lkup_one(&dentry->d_name, h_parent); + if (IS_ERR(h_path->dentry)) + err = PTR_ERR(h_path->dentry); + } + if (unlikely(err)) + goto out; + + h_parent = h_dentry->d_parent; /* dir inode is locked */ + h_dir = d_inode(h_parent); + IMustLock(h_dir); + AuDbg("%pd %pd\n", h_dentry, h_path->dentry); + /* no delegation since it is just created */ + err = vfsub_rename(h_dir, h_dentry, h_dir, h_path, /*delegated*/NULL, + /*flags*/0); + dput(h_path->dentry); + +out: + return err; +} + +/* + * copyup the @dentry from @bsrc to @bdst. + * the caller must set the both of lower dentries. + * @len is for truncating when it is -1 copyup the entire file. + * in link/rename cases, @dst_parent may be different from the real one. + * basic->bsrc can be larger than basic->bdst. + * aufs doesn't touch the credential so + * security_inode_copy_up{,_xattr}() are unnecessary. + */ +static int au_cpup_single(struct au_cp_generic *cpg, struct dentry *dst_parent) +{ + int err, rerr; + aufs_bindex_t old_ibtop; + unsigned char isdir, plink; + struct dentry *h_src, *h_dst, *h_parent; + struct inode *dst_inode, *h_dir, *inode, *delegated, *src_inode; + struct super_block *sb; + struct au_branch *br; + /* to reduce stack size */ + struct { + struct au_dtime dt; + struct path h_path; + struct au_cpup_reg_attr h_src_attr; + } *a; + + err = -ENOMEM; + a = kmalloc(sizeof(*a), GFP_NOFS); + if (unlikely(!a)) + goto out; + a->h_src_attr.valid = 0; + + sb = cpg->dentry->d_sb; + br = au_sbr(sb, cpg->bdst); + a->h_path.mnt = au_br_mnt(br); + h_dst = au_h_dptr(cpg->dentry, cpg->bdst); + h_parent = h_dst->d_parent; /* dir inode is locked */ + h_dir = d_inode(h_parent); + IMustLock(h_dir); + + h_src = au_h_dptr(cpg->dentry, cpg->bsrc); + inode = d_inode(cpg->dentry); + + if (!dst_parent) + dst_parent = dget_parent(cpg->dentry); + else + dget(dst_parent); + + plink = !!au_opt_test(au_mntflags(sb), PLINK); + dst_inode = au_h_iptr(inode, cpg->bdst); + if (dst_inode) { + if (unlikely(!plink)) { + err = -EIO; + AuIOErr("hi%lu(i%lu) exists on b%d " + "but plink is disabled\n", + dst_inode->i_ino, inode->i_ino, cpg->bdst); + goto out_parent; + } + + if (dst_inode->i_nlink) { + const int do_dt = au_ftest_cpup(cpg->flags, DTIME); + + h_src = au_plink_lkup(inode, cpg->bdst); + err = PTR_ERR(h_src); + if (IS_ERR(h_src)) + goto out_parent; + if (unlikely(d_is_negative(h_src))) { + err = -EIO; + AuIOErr("i%lu exists on b%d " + "but not pseudo-linked\n", + inode->i_ino, cpg->bdst); + dput(h_src); + goto out_parent; + } + + if (do_dt) { + a->h_path.dentry = h_parent; + au_dtime_store(&a->dt, dst_parent, &a->h_path); + } + + a->h_path.dentry = h_dst; + delegated = NULL; + err = vfsub_link(h_src, h_dir, &a->h_path, &delegated); + if (!err && au_ftest_cpup(cpg->flags, RENAME)) + err = au_do_ren_after_cpup(cpg, &a->h_path); + if (do_dt) + au_dtime_revert(&a->dt); + if (unlikely(err == -EWOULDBLOCK)) { + pr_warn("cannot retry for NFSv4 delegation" + " for an internal link\n"); + iput(delegated); + } + dput(h_src); + goto out_parent; + } else + /* todo: cpup_wh_file? */ + /* udba work */ + au_update_ibrange(inode, /*do_put_zero*/1); + } + + isdir = S_ISDIR(inode->i_mode); + old_ibtop = au_ibtop(inode); + err = cpup_entry(cpg, dst_parent, &a->h_src_attr); + if (unlikely(err)) + goto out_rev; + dst_inode = d_inode(h_dst); + inode_lock_nested(dst_inode, AuLsc_I_CHILD2); + /* todo: necessary? */ + /* au_pin_hdir_unlock(cpg->pin); */ + + err = cpup_iattr(cpg->dentry, cpg->bdst, h_src, &a->h_src_attr); + if (unlikely(err)) { + /* todo: necessary? */ + /* au_pin_hdir_relock(cpg->pin); */ /* ignore an error */ + inode_unlock(dst_inode); + goto out_rev; + } + + if (cpg->bdst < old_ibtop) { + if (S_ISREG(inode->i_mode)) { + err = au_dy_iaop(inode, cpg->bdst, dst_inode); + if (unlikely(err)) { + /* ignore an error */ + /* au_pin_hdir_relock(cpg->pin); */ + inode_unlock(dst_inode); + goto out_rev; + } + } + au_set_ibtop(inode, cpg->bdst); + } else + au_set_ibbot(inode, cpg->bdst); + au_set_h_iptr(inode, cpg->bdst, au_igrab(dst_inode), + au_hi_flags(inode, isdir)); + + /* todo: necessary? */ + /* err = au_pin_hdir_relock(cpg->pin); */ + inode_unlock(dst_inode); + if (unlikely(err)) + goto out_rev; + + src_inode = d_inode(h_src); + if (!isdir + && (src_inode->i_nlink > 1 + || src_inode->i_state & I_LINKABLE) + && plink) + au_plink_append(inode, cpg->bdst, h_dst); + + if (au_ftest_cpup(cpg->flags, RENAME)) { + a->h_path.dentry = h_dst; + err = au_do_ren_after_cpup(cpg, &a->h_path); + } + if (!err) + goto out_parent; /* success */ + + /* revert */ +out_rev: + a->h_path.dentry = h_parent; + au_dtime_store(&a->dt, dst_parent, &a->h_path); + a->h_path.dentry = h_dst; + rerr = 0; + if (d_is_positive(h_dst)) { + if (!isdir) { + /* no delegation since it is just created */ + rerr = vfsub_unlink(h_dir, &a->h_path, + /*delegated*/NULL, /*force*/0); + } else + rerr = vfsub_rmdir(h_dir, &a->h_path); + } + au_dtime_revert(&a->dt); + if (rerr) { + AuIOErr("failed removing broken entry(%d, %d)\n", err, rerr); + err = -EIO; + } +out_parent: + dput(dst_parent); + au_kfree_rcu(a); +out: + return err; +} + +#if 0 /* reserved */ +struct au_cpup_single_args { + int *errp; + struct au_cp_generic *cpg; + struct dentry *dst_parent; +}; + +static void au_call_cpup_single(void *args) +{ + struct au_cpup_single_args *a = args; + + au_pin_hdir_acquire_nest(a->cpg->pin); + *a->errp = au_cpup_single(a->cpg, a->dst_parent); + au_pin_hdir_release(a->cpg->pin); +} +#endif + +/* + * prevent SIGXFSZ in copy-up. + * testing CAP_MKNOD is for generic fs, + * but CAP_FSETID is for xfs only, currently. + */ +static int au_cpup_sio_test(struct au_pin *pin, umode_t mode) +{ + int do_sio; + struct super_block *sb; + struct inode *h_dir; + + do_sio = 0; + sb = au_pinned_parent(pin)->d_sb; + if (!au_wkq_test() + && (!au_sbi(sb)->si_plink_maint_pid + || au_plink_maint(sb, AuLock_NOPLM))) { + switch (mode & S_IFMT) { + case S_IFREG: + /* no condition about RLIMIT_FSIZE and the file size */ + do_sio = 1; + break; + case S_IFCHR: + case S_IFBLK: + do_sio = !capable(CAP_MKNOD); + break; + } + if (!do_sio) + do_sio = ((mode & (S_ISUID | S_ISGID)) + && !capable(CAP_FSETID)); + /* this workaround may be removed in the future */ + if (!do_sio) { + h_dir = au_pinned_h_dir(pin); + do_sio = h_dir->i_mode & S_ISVTX; + } + } + + return do_sio; +} + +#if 0 /* reserved */ +int au_sio_cpup_single(struct au_cp_generic *cpg, struct dentry *dst_parent) +{ + int err, wkq_err; + struct dentry *h_dentry; + + h_dentry = au_h_dptr(cpg->dentry, cpg->bsrc); + if (!au_cpup_sio_test(pin, d_inode(h_dentry)->i_mode)) + err = au_cpup_single(cpg, dst_parent); + else { + struct au_cpup_single_args args = { + .errp = &err, + .cpg = cpg, + .dst_parent = dst_parent + }; + wkq_err = au_wkq_wait(au_call_cpup_single, &args); + if (unlikely(wkq_err)) + err = wkq_err; + } + + return err; +} +#endif + +/* + * copyup the @dentry from the first active lower branch to @bdst, + * using au_cpup_single(). + */ +static int au_cpup_simple(struct au_cp_generic *cpg) +{ + int err; + unsigned int flags_orig; + struct dentry *dentry; + + AuDebugOn(cpg->bsrc < 0); + + dentry = cpg->dentry; + DiMustWriteLock(dentry); + + err = au_lkup_neg(dentry, cpg->bdst, /*wh*/1); + if (!err) { + flags_orig = cpg->flags; + au_fset_cpup(cpg->flags, RENAME); + err = au_cpup_single(cpg, NULL); + cpg->flags = flags_orig; + if (!err) + return 0; /* success */ + + /* revert */ + au_set_h_dptr(dentry, cpg->bdst, NULL); + au_set_dbtop(dentry, cpg->bsrc); + } + + return err; +} + +struct au_cpup_simple_args { + int *errp; + struct au_cp_generic *cpg; +}; + +static void au_call_cpup_simple(void *args) +{ + struct au_cpup_simple_args *a = args; + + au_pin_hdir_acquire_nest(a->cpg->pin); + *a->errp = au_cpup_simple(a->cpg); + au_pin_hdir_release(a->cpg->pin); +} + +static int au_do_sio_cpup_simple(struct au_cp_generic *cpg) +{ + int err, wkq_err; + struct dentry *dentry, *parent; + struct file *h_file; + struct inode *h_dir; + + dentry = cpg->dentry; + h_file = NULL; + if (au_ftest_cpup(cpg->flags, HOPEN)) { + AuDebugOn(cpg->bsrc < 0); + h_file = au_h_open_pre(dentry, cpg->bsrc, /*force_wr*/0); + err = PTR_ERR(h_file); + if (IS_ERR(h_file)) + goto out; + } + + parent = dget_parent(dentry); + h_dir = au_h_iptr(d_inode(parent), cpg->bdst); + if (!au_test_h_perm_sio(h_dir, MAY_EXEC | MAY_WRITE) + && !au_cpup_sio_test(cpg->pin, d_inode(dentry)->i_mode)) + err = au_cpup_simple(cpg); + else { + struct au_cpup_simple_args args = { + .errp = &err, + .cpg = cpg + }; + wkq_err = au_wkq_wait(au_call_cpup_simple, &args); + if (unlikely(wkq_err)) + err = wkq_err; + } + + dput(parent); + if (h_file) + au_h_open_post(dentry, cpg->bsrc, h_file); + +out: + return err; +} + +int au_sio_cpup_simple(struct au_cp_generic *cpg) +{ + aufs_bindex_t bsrc, bbot; + struct dentry *dentry, *h_dentry; + + if (cpg->bsrc < 0) { + dentry = cpg->dentry; + bbot = au_dbbot(dentry); + for (bsrc = cpg->bdst + 1; bsrc <= bbot; bsrc++) { + h_dentry = au_h_dptr(dentry, bsrc); + if (h_dentry) { + AuDebugOn(d_is_negative(h_dentry)); + break; + } + } + AuDebugOn(bsrc > bbot); + cpg->bsrc = bsrc; + } + AuDebugOn(cpg->bsrc <= cpg->bdst); + return au_do_sio_cpup_simple(cpg); +} + +int au_sio_cpdown_simple(struct au_cp_generic *cpg) +{ + AuDebugOn(cpg->bdst <= cpg->bsrc); + return au_do_sio_cpup_simple(cpg); +} + +/* ---------------------------------------------------------------------- */ + +/* + * copyup the deleted file for writing. + */ +static int au_do_cpup_wh(struct au_cp_generic *cpg, struct dentry *wh_dentry, + struct file *file) +{ + int err; + unsigned int flags_orig; + aufs_bindex_t bsrc_orig; + struct au_dinfo *dinfo; + struct { + struct au_hdentry *hd; + struct dentry *h_dentry; + } hdst, hsrc; + + dinfo = au_di(cpg->dentry); + AuRwMustWriteLock(&dinfo->di_rwsem); + + bsrc_orig = cpg->bsrc; + cpg->bsrc = dinfo->di_btop; + hdst.hd = au_hdentry(dinfo, cpg->bdst); + hdst.h_dentry = hdst.hd->hd_dentry; + hdst.hd->hd_dentry = wh_dentry; + dinfo->di_btop = cpg->bdst; + + hsrc.h_dentry = NULL; + if (file) { + hsrc.hd = au_hdentry(dinfo, cpg->bsrc); + hsrc.h_dentry = hsrc.hd->hd_dentry; + hsrc.hd->hd_dentry = au_hf_top(file)->f_path.dentry; + } + flags_orig = cpg->flags; + cpg->flags = !AuCpup_DTIME; + err = au_cpup_single(cpg, /*h_parent*/NULL); + cpg->flags = flags_orig; + if (file) { + if (!err) + err = au_reopen_nondir(file); + hsrc.hd->hd_dentry = hsrc.h_dentry; + } + hdst.hd->hd_dentry = hdst.h_dentry; + dinfo->di_btop = cpg->bsrc; + cpg->bsrc = bsrc_orig; + + return err; +} + +static int au_cpup_wh(struct au_cp_generic *cpg, struct file *file) +{ + int err; + aufs_bindex_t bdst; + struct au_dtime dt; + struct dentry *dentry, *parent, *h_parent, *wh_dentry; + struct au_branch *br; + struct path h_path; + + dentry = cpg->dentry; + bdst = cpg->bdst; + br = au_sbr(dentry->d_sb, bdst); + parent = dget_parent(dentry); + h_parent = au_h_dptr(parent, bdst); + wh_dentry = au_whtmp_lkup(h_parent, br, &dentry->d_name); + err = PTR_ERR(wh_dentry); + if (IS_ERR(wh_dentry)) + goto out; + + h_path.dentry = h_parent; + h_path.mnt = au_br_mnt(br); + au_dtime_store(&dt, parent, &h_path); + err = au_do_cpup_wh(cpg, wh_dentry, file); + if (unlikely(err)) + goto out_wh; + + dget(wh_dentry); + h_path.dentry = wh_dentry; + if (!d_is_dir(wh_dentry)) { + /* no delegation since it is just created */ + err = vfsub_unlink(d_inode(h_parent), &h_path, + /*delegated*/NULL, /*force*/0); + } else + err = vfsub_rmdir(d_inode(h_parent), &h_path); + if (unlikely(err)) { + AuIOErr("failed remove copied-up tmp file %pd(%d)\n", + wh_dentry, err); + err = -EIO; + } + au_dtime_revert(&dt); + au_set_hi_wh(d_inode(dentry), bdst, wh_dentry); + +out_wh: + dput(wh_dentry); +out: + dput(parent); + return err; +} + +struct au_cpup_wh_args { + int *errp; + struct au_cp_generic *cpg; + struct file *file; +}; + +static void au_call_cpup_wh(void *args) +{ + struct au_cpup_wh_args *a = args; + + au_pin_hdir_acquire_nest(a->cpg->pin); + *a->errp = au_cpup_wh(a->cpg, a->file); + au_pin_hdir_release(a->cpg->pin); +} + +int au_sio_cpup_wh(struct au_cp_generic *cpg, struct file *file) +{ + int err, wkq_err; + aufs_bindex_t bdst; + struct dentry *dentry, *parent, *h_orph, *h_parent; + struct inode *dir, *h_dir, *h_tmpdir; + struct au_wbr *wbr; + struct au_pin wh_pin, *pin_orig; + + dentry = cpg->dentry; + bdst = cpg->bdst; + parent = dget_parent(dentry); + dir = d_inode(parent); + h_orph = NULL; + h_parent = NULL; + h_dir = au_igrab(au_h_iptr(dir, bdst)); + h_tmpdir = h_dir; + pin_orig = NULL; + if (!h_dir->i_nlink) { + wbr = au_sbr(dentry->d_sb, bdst)->br_wbr; + h_orph = wbr->wbr_orph; + + h_parent = dget(au_h_dptr(parent, bdst)); + au_set_h_dptr(parent, bdst, dget(h_orph)); + h_tmpdir = d_inode(h_orph); + au_set_h_iptr(dir, bdst, au_igrab(h_tmpdir), /*flags*/0); + + inode_lock_nested(h_tmpdir, AuLsc_I_PARENT3); + /* todo: au_h_open_pre()? */ + + pin_orig = cpg->pin; + au_pin_init(&wh_pin, dentry, bdst, AuLsc_DI_PARENT, + AuLsc_I_PARENT3, cpg->pin->udba, AuPin_DI_LOCKED); + cpg->pin = &wh_pin; + } + + if (!au_test_h_perm_sio(h_tmpdir, MAY_EXEC | MAY_WRITE) + && !au_cpup_sio_test(cpg->pin, d_inode(dentry)->i_mode)) + err = au_cpup_wh(cpg, file); + else { + struct au_cpup_wh_args args = { + .errp = &err, + .cpg = cpg, + .file = file + }; + wkq_err = au_wkq_wait(au_call_cpup_wh, &args); + if (unlikely(wkq_err)) + err = wkq_err; + } + + if (h_orph) { + inode_unlock(h_tmpdir); + /* todo: au_h_open_post()? */ + au_set_h_iptr(dir, bdst, au_igrab(h_dir), /*flags*/0); + au_set_h_dptr(parent, bdst, h_parent); + AuDebugOn(!pin_orig); + cpg->pin = pin_orig; + } + iput(h_dir); + dput(parent); + + return err; +} + +/* ---------------------------------------------------------------------- */ + +/* + * generic routine for both of copy-up and copy-down. + */ +/* cf. revalidate function in file.c */ +int au_cp_dirs(struct dentry *dentry, aufs_bindex_t bdst, + int (*cp)(struct dentry *dentry, aufs_bindex_t bdst, + struct au_pin *pin, + struct dentry *h_parent, void *arg), + void *arg) +{ + int err; + struct au_pin pin; + struct dentry *d, *parent, *h_parent, *real_parent, *h_dentry; + + err = 0; + parent = dget_parent(dentry); + if (IS_ROOT(parent)) + goto out; + + au_pin_init(&pin, dentry, bdst, AuLsc_DI_PARENT2, AuLsc_I_PARENT2, + au_opt_udba(dentry->d_sb), AuPin_MNT_WRITE); + + /* do not use au_dpage */ + real_parent = parent; + while (1) { + dput(parent); + parent = dget_parent(dentry); + h_parent = au_h_dptr(parent, bdst); + if (h_parent) + goto out; /* success */ + + /* find top dir which is necessary to cpup */ + do { + d = parent; + dput(parent); + parent = dget_parent(d); + di_read_lock_parent3(parent, !AuLock_IR); + h_parent = au_h_dptr(parent, bdst); + di_read_unlock(parent, !AuLock_IR); + } while (!h_parent); + + if (d != real_parent) + di_write_lock_child3(d); + + /* somebody else might create while we were sleeping */ + h_dentry = au_h_dptr(d, bdst); + if (!h_dentry || d_is_negative(h_dentry)) { + if (h_dentry) + au_update_dbtop(d); + + au_pin_set_dentry(&pin, d); + err = au_do_pin(&pin); + if (!err) { + err = cp(d, bdst, &pin, h_parent, arg); + au_unpin(&pin); + } + } + + if (d != real_parent) + di_write_unlock(d); + if (unlikely(err)) + break; + } + +out: + dput(parent); + return err; +} + +static int au_cpup_dir(struct dentry *dentry, aufs_bindex_t bdst, + struct au_pin *pin, + struct dentry *h_parent __maybe_unused, + void *arg __maybe_unused) +{ + struct au_cp_generic cpg = { + .dentry = dentry, + .bdst = bdst, + .bsrc = -1, + .len = 0, + .pin = pin, + .flags = AuCpup_DTIME + }; + return au_sio_cpup_simple(&cpg); +} + +int au_cpup_dirs(struct dentry *dentry, aufs_bindex_t bdst) +{ + return au_cp_dirs(dentry, bdst, au_cpup_dir, NULL); +} + +int au_test_and_cpup_dirs(struct dentry *dentry, aufs_bindex_t bdst) +{ + int err; + struct dentry *parent; + struct inode *dir; + + parent = dget_parent(dentry); + dir = d_inode(parent); + err = 0; + if (au_h_iptr(dir, bdst)) + goto out; + + di_read_unlock(parent, AuLock_IR); + di_write_lock_parent(parent); + /* someone else might change our inode while we were sleeping */ + if (!au_h_iptr(dir, bdst)) + err = au_cpup_dirs(dentry, bdst); + di_downgrade_lock(parent, AuLock_IR); + +out: + dput(parent); + return err; +} --- linux-azure-5.8-5.8.0.orig/fs/aufs/cpup.h +++ linux-azure-5.8-5.8.0/fs/aufs/cpup.h @@ -0,0 +1,100 @@ +/* SPDX-License-Identifier: GPL-2.0 */ +/* + * Copyright (C) 2005-2020 Junjiro R. Okajima + * + * This program, aufs is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; either version 2 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + */ + +/* + * copy-up/down functions + */ + +#ifndef __AUFS_CPUP_H__ +#define __AUFS_CPUP_H__ + +#ifdef __KERNEL__ + +#include + +struct inode; +struct file; +struct au_pin; + +void au_cpup_attr_flags(struct inode *dst, unsigned int iflags); +void au_cpup_attr_timesizes(struct inode *inode); +void au_cpup_attr_nlink(struct inode *inode, int force); +void au_cpup_attr_changeable(struct inode *inode); +void au_cpup_igen(struct inode *inode, struct inode *h_inode); +void au_cpup_attr_all(struct inode *inode, int force); + +/* ---------------------------------------------------------------------- */ + +struct au_cp_generic { + struct dentry *dentry; + aufs_bindex_t bdst, bsrc; + loff_t len; + struct au_pin *pin; + unsigned int flags; +}; + +/* cpup flags */ +#define AuCpup_DTIME 1 /* do dtime_store/revert */ +#define AuCpup_KEEPLINO (1 << 1) /* do not clear the lower xino, + for link(2) */ +#define AuCpup_RENAME (1 << 2) /* rename after cpup */ +#define AuCpup_HOPEN (1 << 3) /* call h_open_pre/post() in + cpup */ +#define AuCpup_OVERWRITE (1 << 4) /* allow overwriting the + existing entry */ +#define AuCpup_RWDST (1 << 5) /* force write target even if + the branch is marked as RO */ + +#ifndef CONFIG_AUFS_BR_HFSPLUS +#undef AuCpup_HOPEN +#define AuCpup_HOPEN 0 +#endif + +#define au_ftest_cpup(flags, name) ((flags) & AuCpup_##name) +#define au_fset_cpup(flags, name) \ + do { (flags) |= AuCpup_##name; } while (0) +#define au_fclr_cpup(flags, name) \ + do { (flags) &= ~AuCpup_##name; } while (0) + +int au_copy_file(struct file *dst, struct file *src, loff_t len); +int au_sio_cpup_simple(struct au_cp_generic *cpg); +int au_sio_cpdown_simple(struct au_cp_generic *cpg); +int au_sio_cpup_wh(struct au_cp_generic *cpg, struct file *file); + +int au_cp_dirs(struct dentry *dentry, aufs_bindex_t bdst, + int (*cp)(struct dentry *dentry, aufs_bindex_t bdst, + struct au_pin *pin, + struct dentry *h_parent, void *arg), + void *arg); +int au_cpup_dirs(struct dentry *dentry, aufs_bindex_t bdst); +int au_test_and_cpup_dirs(struct dentry *dentry, aufs_bindex_t bdst); + +/* ---------------------------------------------------------------------- */ + +/* keep timestamps when copyup */ +struct au_dtime { + struct dentry *dt_dentry; + struct path dt_h_path; + struct timespec64 dt_atime, dt_mtime; +}; +void au_dtime_store(struct au_dtime *dt, struct dentry *dentry, + struct path *h_path); +void au_dtime_revert(struct au_dtime *dt); + +#endif /* __KERNEL__ */ +#endif /* __AUFS_CPUP_H__ */ --- linux-azure-5.8-5.8.0.orig/fs/aufs/dbgaufs.c +++ linux-azure-5.8-5.8.0/fs/aufs/dbgaufs.c @@ -0,0 +1,526 @@ +// SPDX-License-Identifier: GPL-2.0 +/* + * Copyright (C) 2005-2020 Junjiro R. Okajima + * + * This program, aufs is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; either version 2 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + */ + +/* + * debugfs interface + */ + +#include +#include "aufs.h" + +#ifndef CONFIG_SYSFS +#error DEBUG_FS depends upon SYSFS +#endif + +static struct dentry *dbgaufs; +static const mode_t dbgaufs_mode = 0444; + +/* 20 is max digits length of ulong 64 */ +struct dbgaufs_arg { + int n; + char a[20 * 4]; +}; + +/* + * common function for all XINO files + */ +static int dbgaufs_xi_release(struct inode *inode __maybe_unused, + struct file *file) +{ + void *p; + + p = file->private_data; + if (p) { + /* this is struct dbgaufs_arg */ + AuDebugOn(!au_kfree_sz_test(p)); + au_kfree_do_rcu(p); + } + return 0; +} + +static int dbgaufs_xi_open(struct file *xf, struct file *file, int do_fcnt, + int cnt) +{ + int err; + struct kstat st; + struct dbgaufs_arg *p; + + err = -ENOMEM; + p = kmalloc(sizeof(*p), GFP_NOFS); + if (unlikely(!p)) + goto out; + + err = 0; + p->n = 0; + file->private_data = p; + if (!xf) + goto out; + + err = vfsub_getattr(&xf->f_path, &st); + if (!err) { + if (do_fcnt) + p->n = snprintf + (p->a, sizeof(p->a), "%d, %llux%u %lld\n", + cnt, st.blocks, st.blksize, + (long long)st.size); + else + p->n = snprintf(p->a, sizeof(p->a), "%llux%u %lld\n", + st.blocks, st.blksize, + (long long)st.size); + AuDebugOn(p->n >= sizeof(p->a)); + } else { + p->n = snprintf(p->a, sizeof(p->a), "err %d\n", err); + err = 0; + } + +out: + return err; +} + +static ssize_t dbgaufs_xi_read(struct file *file, char __user *buf, + size_t count, loff_t *ppos) +{ + struct dbgaufs_arg *p; + + p = file->private_data; + return simple_read_from_buffer(buf, count, ppos, p->a, p->n); +} + +/* ---------------------------------------------------------------------- */ + +struct dbgaufs_plink_arg { + int n; + char a[]; +}; + +static int dbgaufs_plink_release(struct inode *inode __maybe_unused, + struct file *file) +{ + free_page((unsigned long)file->private_data); + return 0; +} + +static int dbgaufs_plink_open(struct inode *inode, struct file *file) +{ + int err, i, limit; + unsigned long n, sum; + struct dbgaufs_plink_arg *p; + struct au_sbinfo *sbinfo; + struct super_block *sb; + struct hlist_bl_head *hbl; + + err = -ENOMEM; + p = (void *)get_zeroed_page(GFP_NOFS); + if (unlikely(!p)) + goto out; + + err = -EFBIG; + sbinfo = inode->i_private; + sb = sbinfo->si_sb; + si_noflush_read_lock(sb); + if (au_opt_test(au_mntflags(sb), PLINK)) { + limit = PAGE_SIZE - sizeof(p->n); + + /* the number of buckets */ + n = snprintf(p->a + p->n, limit, "%d\n", AuPlink_NHASH); + p->n += n; + limit -= n; + + sum = 0; + for (i = 0, hbl = sbinfo->si_plink; i < AuPlink_NHASH; + i++, hbl++) { + n = au_hbl_count(hbl); + sum += n; + + n = snprintf(p->a + p->n, limit, "%lu ", n); + p->n += n; + limit -= n; + if (unlikely(limit <= 0)) + goto out_free; + } + p->a[p->n - 1] = '\n'; + + /* the sum of plinks */ + n = snprintf(p->a + p->n, limit, "%lu\n", sum); + p->n += n; + limit -= n; + if (unlikely(limit <= 0)) + goto out_free; + } else { +#define str "1\n0\n0\n" + p->n = sizeof(str) - 1; + strcpy(p->a, str); +#undef str + } + si_read_unlock(sb); + + err = 0; + file->private_data = p; + goto out; /* success */ + +out_free: + free_page((unsigned long)p); +out: + return err; +} + +static ssize_t dbgaufs_plink_read(struct file *file, char __user *buf, + size_t count, loff_t *ppos) +{ + struct dbgaufs_plink_arg *p; + + p = file->private_data; + return simple_read_from_buffer(buf, count, ppos, p->a, p->n); +} + +static const struct file_operations dbgaufs_plink_fop = { + .owner = THIS_MODULE, + .open = dbgaufs_plink_open, + .release = dbgaufs_plink_release, + .read = dbgaufs_plink_read +}; + +/* ---------------------------------------------------------------------- */ + +static int dbgaufs_xib_open(struct inode *inode, struct file *file) +{ + int err; + struct au_sbinfo *sbinfo; + struct super_block *sb; + + sbinfo = inode->i_private; + sb = sbinfo->si_sb; + si_noflush_read_lock(sb); + err = dbgaufs_xi_open(sbinfo->si_xib, file, /*do_fcnt*/0, /*cnt*/0); + si_read_unlock(sb); + return err; +} + +static const struct file_operations dbgaufs_xib_fop = { + .owner = THIS_MODULE, + .open = dbgaufs_xib_open, + .release = dbgaufs_xi_release, + .read = dbgaufs_xi_read +}; + +/* ---------------------------------------------------------------------- */ + +#define DbgaufsXi_PREFIX "xi" + +static int dbgaufs_xino_open(struct inode *inode, struct file *file) +{ + int err, idx; + long l; + aufs_bindex_t bindex; + char *p, a[sizeof(DbgaufsXi_PREFIX) + 8]; + struct au_sbinfo *sbinfo; + struct super_block *sb; + struct au_xino *xi; + struct file *xf; + struct qstr *name; + struct au_branch *br; + + err = -ENOENT; + name = &file->f_path.dentry->d_name; + if (unlikely(name->len < sizeof(DbgaufsXi_PREFIX) + || memcmp(name->name, DbgaufsXi_PREFIX, + sizeof(DbgaufsXi_PREFIX) - 1))) + goto out; + + AuDebugOn(name->len >= sizeof(a)); + memcpy(a, name->name, name->len); + a[name->len] = '\0'; + p = strchr(a, '-'); + if (p) + *p = '\0'; + err = kstrtol(a + sizeof(DbgaufsXi_PREFIX) - 1, 10, &l); + if (unlikely(err)) + goto out; + bindex = l; + idx = 0; + if (p) { + err = kstrtol(p + 1, 10, &l); + if (unlikely(err)) + goto out; + idx = l; + } + + err = -ENOENT; + sbinfo = inode->i_private; + sb = sbinfo->si_sb; + si_noflush_read_lock(sb); + if (unlikely(bindex < 0 || bindex > au_sbbot(sb))) + goto out_si; + br = au_sbr(sb, bindex); + xi = br->br_xino; + if (unlikely(idx >= xi->xi_nfile)) + goto out_si; + xf = au_xino_file(xi, idx); + if (xf) + err = dbgaufs_xi_open(xf, file, /*do_fcnt*/1, + au_xino_count(br)); + +out_si: + si_read_unlock(sb); +out: + AuTraceErr(err); + return err; +} + +static const struct file_operations dbgaufs_xino_fop = { + .owner = THIS_MODULE, + .open = dbgaufs_xino_open, + .release = dbgaufs_xi_release, + .read = dbgaufs_xi_read +}; + +void dbgaufs_xino_del(struct au_branch *br) +{ + struct dentry *dbgaufs; + + dbgaufs = br->br_dbgaufs; + if (!dbgaufs) + return; + + br->br_dbgaufs = NULL; + /* debugfs acquires the parent i_mutex */ + lockdep_off(); + debugfs_remove(dbgaufs); + lockdep_on(); +} + +void dbgaufs_brs_del(struct super_block *sb, aufs_bindex_t bindex) +{ + aufs_bindex_t bbot; + struct au_branch *br; + + if (!au_sbi(sb)->si_dbgaufs) + return; + + bbot = au_sbbot(sb); + for (; bindex <= bbot; bindex++) { + br = au_sbr(sb, bindex); + dbgaufs_xino_del(br); + } +} + +static void dbgaufs_br_do_add(struct super_block *sb, aufs_bindex_t bindex, + unsigned int idx, struct dentry *parent, + struct au_sbinfo *sbinfo) +{ + struct au_branch *br; + struct dentry *d; + /* "xi" bindex(5) "-" idx(2) NULL */ + char name[sizeof(DbgaufsXi_PREFIX) + 8]; + + if (!idx) + snprintf(name, sizeof(name), DbgaufsXi_PREFIX "%d", bindex); + else + snprintf(name, sizeof(name), DbgaufsXi_PREFIX "%d-%u", + bindex, idx); + br = au_sbr(sb, bindex); + if (br->br_dbgaufs) { + struct qstr qstr = QSTR_INIT(name, strlen(name)); + + if (!au_qstreq(&br->br_dbgaufs->d_name, &qstr)) { + /* debugfs acquires the parent i_mutex */ + lockdep_off(); + d = debugfs_rename(parent, br->br_dbgaufs, parent, + name); + lockdep_on(); + if (unlikely(!d)) + pr_warn("failed renaming %pd/%s, ignored.\n", + parent, name); + } + } else { + lockdep_off(); + br->br_dbgaufs = debugfs_create_file(name, dbgaufs_mode, parent, + sbinfo, &dbgaufs_xino_fop); + lockdep_on(); + if (unlikely(!br->br_dbgaufs)) + pr_warn("failed creating %pd/%s, ignored.\n", + parent, name); + } +} + +static void dbgaufs_br_add(struct super_block *sb, aufs_bindex_t bindex, + struct dentry *parent, struct au_sbinfo *sbinfo) +{ + struct au_branch *br; + struct au_xino *xi; + unsigned int u; + + br = au_sbr(sb, bindex); + xi = br->br_xino; + for (u = 0; u < xi->xi_nfile; u++) + dbgaufs_br_do_add(sb, bindex, u, parent, sbinfo); +} + +void dbgaufs_brs_add(struct super_block *sb, aufs_bindex_t bindex, int topdown) +{ + struct au_sbinfo *sbinfo; + struct dentry *parent; + aufs_bindex_t bbot; + + if (!au_opt_test(au_mntflags(sb), XINO)) + return; + + sbinfo = au_sbi(sb); + parent = sbinfo->si_dbgaufs; + if (!parent) + return; + + bbot = au_sbbot(sb); + if (topdown) + for (; bindex <= bbot; bindex++) + dbgaufs_br_add(sb, bindex, parent, sbinfo); + else + for (; bbot >= bindex; bbot--) + dbgaufs_br_add(sb, bbot, parent, sbinfo); +} + +/* ---------------------------------------------------------------------- */ + +#ifdef CONFIG_AUFS_EXPORT +static int dbgaufs_xigen_open(struct inode *inode, struct file *file) +{ + int err; + struct au_sbinfo *sbinfo; + struct super_block *sb; + + sbinfo = inode->i_private; + sb = sbinfo->si_sb; + si_noflush_read_lock(sb); + err = dbgaufs_xi_open(sbinfo->si_xigen, file, /*do_fcnt*/0, /*cnt*/0); + si_read_unlock(sb); + return err; +} + +static const struct file_operations dbgaufs_xigen_fop = { + .owner = THIS_MODULE, + .open = dbgaufs_xigen_open, + .release = dbgaufs_xi_release, + .read = dbgaufs_xi_read +}; + +static int dbgaufs_xigen_init(struct au_sbinfo *sbinfo) +{ + int err; + + /* + * This function is a dynamic '__init' function actually, + * so the tiny check for si_rwsem is unnecessary. + */ + /* AuRwMustWriteLock(&sbinfo->si_rwsem); */ + + err = -EIO; + sbinfo->si_dbgaufs_xigen = debugfs_create_file + ("xigen", dbgaufs_mode, sbinfo->si_dbgaufs, sbinfo, + &dbgaufs_xigen_fop); + if (sbinfo->si_dbgaufs_xigen) + err = 0; + + return err; +} +#else +static int dbgaufs_xigen_init(struct au_sbinfo *sbinfo) +{ + return 0; +} +#endif /* CONFIG_AUFS_EXPORT */ + +/* ---------------------------------------------------------------------- */ + +void dbgaufs_si_fin(struct au_sbinfo *sbinfo) +{ + /* + * This function is a dynamic '__fin' function actually, + * so the tiny check for si_rwsem is unnecessary. + */ + /* AuRwMustWriteLock(&sbinfo->si_rwsem); */ + + debugfs_remove_recursive(sbinfo->si_dbgaufs); + sbinfo->si_dbgaufs = NULL; +} + +int dbgaufs_si_init(struct au_sbinfo *sbinfo) +{ + int err; + char name[SysaufsSiNameLen]; + + /* + * This function is a dynamic '__init' function actually, + * so the tiny check for si_rwsem is unnecessary. + */ + /* AuRwMustWriteLock(&sbinfo->si_rwsem); */ + + err = -ENOENT; + if (!dbgaufs) { + AuErr1("/debug/aufs is uninitialized\n"); + goto out; + } + + err = -EIO; + sysaufs_name(sbinfo, name); + sbinfo->si_dbgaufs = debugfs_create_dir(name, dbgaufs); + if (unlikely(!sbinfo->si_dbgaufs)) + goto out; + + /* regardless plink/noplink option */ + sbinfo->si_dbgaufs_plink = debugfs_create_file + ("plink", dbgaufs_mode, sbinfo->si_dbgaufs, sbinfo, + &dbgaufs_plink_fop); + if (unlikely(!sbinfo->si_dbgaufs_plink)) + goto out_dir; + + /* regardless xino/noxino option */ + sbinfo->si_dbgaufs_xib = debugfs_create_file + ("xib", dbgaufs_mode, sbinfo->si_dbgaufs, sbinfo, + &dbgaufs_xib_fop); + if (unlikely(!sbinfo->si_dbgaufs_xib)) + goto out_dir; + + err = dbgaufs_xigen_init(sbinfo); + if (!err) + goto out; /* success */ + +out_dir: + dbgaufs_si_fin(sbinfo); +out: + if (unlikely(err)) + pr_err("debugfs/aufs failed\n"); + return err; +} + +/* ---------------------------------------------------------------------- */ + +void dbgaufs_fin(void) +{ + debugfs_remove(dbgaufs); +} + +int __init dbgaufs_init(void) +{ + int err; + + err = -EIO; + dbgaufs = debugfs_create_dir(AUFS_NAME, NULL); + if (dbgaufs) + err = 0; + return err; +} --- linux-azure-5.8-5.8.0.orig/fs/aufs/dbgaufs.h +++ linux-azure-5.8-5.8.0/fs/aufs/dbgaufs.h @@ -0,0 +1,53 @@ +/* SPDX-License-Identifier: GPL-2.0 */ +/* + * Copyright (C) 2005-2020 Junjiro R. Okajima + * + * This program, aufs is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; either version 2 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + */ + +/* + * debugfs interface + */ + +#ifndef __DBGAUFS_H__ +#define __DBGAUFS_H__ + +#ifdef __KERNEL__ + +struct super_block; +struct au_sbinfo; +struct au_branch; + +#ifdef CONFIG_DEBUG_FS +/* dbgaufs.c */ +void dbgaufs_xino_del(struct au_branch *br); +void dbgaufs_brs_del(struct super_block *sb, aufs_bindex_t bindex); +void dbgaufs_brs_add(struct super_block *sb, aufs_bindex_t bindex, int topdown); +void dbgaufs_si_fin(struct au_sbinfo *sbinfo); +int dbgaufs_si_init(struct au_sbinfo *sbinfo); +void dbgaufs_fin(void); +int __init dbgaufs_init(void); +#else +AuStubVoid(dbgaufs_xino_del, struct au_branch *br) +AuStubVoid(dbgaufs_brs_del, struct super_block *sb, aufs_bindex_t bindex) +AuStubVoid(dbgaufs_brs_add, struct super_block *sb, aufs_bindex_t bindex, + int topdown) +AuStubVoid(dbgaufs_si_fin, struct au_sbinfo *sbinfo) +AuStubInt0(dbgaufs_si_init, struct au_sbinfo *sbinfo) +AuStubVoid(dbgaufs_fin, void) +AuStubInt0(__init dbgaufs_init, void) +#endif /* CONFIG_DEBUG_FS */ + +#endif /* __KERNEL__ */ +#endif /* __DBGAUFS_H__ */ --- linux-azure-5.8-5.8.0.orig/fs/aufs/dcsub.c +++ linux-azure-5.8-5.8.0/fs/aufs/dcsub.c @@ -0,0 +1,225 @@ +// SPDX-License-Identifier: GPL-2.0 +/* + * Copyright (C) 2005-2020 Junjiro R. Okajima + * + * This program, aufs is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; either version 2 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + */ + +/* + * sub-routines for dentry cache + */ + +#include "aufs.h" + +static void au_dpage_free(struct au_dpage *dpage) +{ + int i; + struct dentry **p; + + p = dpage->dentries; + for (i = 0; i < dpage->ndentry; i++) + dput(*p++); + free_page((unsigned long)dpage->dentries); +} + +int au_dpages_init(struct au_dcsub_pages *dpages, gfp_t gfp) +{ + int err; + void *p; + + err = -ENOMEM; + dpages->dpages = kmalloc(sizeof(*dpages->dpages), gfp); + if (unlikely(!dpages->dpages)) + goto out; + + p = (void *)__get_free_page(gfp); + if (unlikely(!p)) + goto out_dpages; + + dpages->dpages[0].ndentry = 0; + dpages->dpages[0].dentries = p; + dpages->ndpage = 1; + return 0; /* success */ + +out_dpages: + au_kfree_try_rcu(dpages->dpages); +out: + return err; +} + +void au_dpages_free(struct au_dcsub_pages *dpages) +{ + int i; + struct au_dpage *p; + + p = dpages->dpages; + for (i = 0; i < dpages->ndpage; i++) + au_dpage_free(p++); + au_kfree_try_rcu(dpages->dpages); +} + +static int au_dpages_append(struct au_dcsub_pages *dpages, + struct dentry *dentry, gfp_t gfp) +{ + int err, sz; + struct au_dpage *dpage; + void *p; + + dpage = dpages->dpages + dpages->ndpage - 1; + sz = PAGE_SIZE / sizeof(dentry); + if (unlikely(dpage->ndentry >= sz)) { + AuLabel(new dpage); + err = -ENOMEM; + sz = dpages->ndpage * sizeof(*dpages->dpages); + p = au_kzrealloc(dpages->dpages, sz, + sz + sizeof(*dpages->dpages), gfp, + /*may_shrink*/0); + if (unlikely(!p)) + goto out; + + dpages->dpages = p; + dpage = dpages->dpages + dpages->ndpage; + p = (void *)__get_free_page(gfp); + if (unlikely(!p)) + goto out; + + dpage->ndentry = 0; + dpage->dentries = p; + dpages->ndpage++; + } + + AuDebugOn(au_dcount(dentry) <= 0); + dpage->dentries[dpage->ndentry++] = dget_dlock(dentry); + return 0; /* success */ + +out: + return err; +} + +/* todo: BAD approach */ +/* copied from linux/fs/dcache.c */ +enum d_walk_ret { + D_WALK_CONTINUE, + D_WALK_QUIT, + D_WALK_NORETRY, + D_WALK_SKIP, +}; + +extern void d_walk(struct dentry *parent, void *data, + enum d_walk_ret (*enter)(void *, struct dentry *)); + +struct ac_dpages_arg { + int err; + struct au_dcsub_pages *dpages; + struct super_block *sb; + au_dpages_test test; + void *arg; +}; + +static enum d_walk_ret au_call_dpages_append(void *_arg, struct dentry *dentry) +{ + enum d_walk_ret ret; + struct ac_dpages_arg *arg = _arg; + + ret = D_WALK_CONTINUE; + if (dentry->d_sb == arg->sb + && !IS_ROOT(dentry) + && au_dcount(dentry) > 0 + && au_di(dentry) + && (!arg->test || arg->test(dentry, arg->arg))) { + arg->err = au_dpages_append(arg->dpages, dentry, GFP_ATOMIC); + if (unlikely(arg->err)) + ret = D_WALK_QUIT; + } + + return ret; +} + +int au_dcsub_pages(struct au_dcsub_pages *dpages, struct dentry *root, + au_dpages_test test, void *arg) +{ + struct ac_dpages_arg args = { + .err = 0, + .dpages = dpages, + .sb = root->d_sb, + .test = test, + .arg = arg + }; + + d_walk(root, &args, au_call_dpages_append); + + return args.err; +} + +int au_dcsub_pages_rev(struct au_dcsub_pages *dpages, struct dentry *dentry, + int do_include, au_dpages_test test, void *arg) +{ + int err; + + err = 0; + write_seqlock(&rename_lock); + spin_lock(&dentry->d_lock); + if (do_include + && au_dcount(dentry) > 0 + && (!test || test(dentry, arg))) + err = au_dpages_append(dpages, dentry, GFP_ATOMIC); + spin_unlock(&dentry->d_lock); + if (unlikely(err)) + goto out; + + /* + * RCU for vfsmount is unnecessary since this is a traverse in a single + * mount + */ + while (!IS_ROOT(dentry)) { + dentry = dentry->d_parent; /* rename_lock is locked */ + spin_lock(&dentry->d_lock); + if (au_dcount(dentry) > 0 + && (!test || test(dentry, arg))) + err = au_dpages_append(dpages, dentry, GFP_ATOMIC); + spin_unlock(&dentry->d_lock); + if (unlikely(err)) + break; + } + +out: + write_sequnlock(&rename_lock); + return err; +} + +static inline int au_dcsub_dpages_aufs(struct dentry *dentry, void *arg) +{ + return au_di(dentry) && dentry->d_sb == arg; +} + +int au_dcsub_pages_rev_aufs(struct au_dcsub_pages *dpages, + struct dentry *dentry, int do_include) +{ + return au_dcsub_pages_rev(dpages, dentry, do_include, + au_dcsub_dpages_aufs, dentry->d_sb); +} + +int au_test_subdir(struct dentry *d1, struct dentry *d2) +{ + struct path path[2] = { + { + .dentry = d1 + }, + { + .dentry = d2 + } + }; + + return path_is_under(path + 0, path + 1); +} --- linux-azure-5.8-5.8.0.orig/fs/aufs/dcsub.h +++ linux-azure-5.8-5.8.0/fs/aufs/dcsub.h @@ -0,0 +1,137 @@ +/* SPDX-License-Identifier: GPL-2.0 */ +/* + * Copyright (C) 2005-2020 Junjiro R. Okajima + * + * This program, aufs is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; either version 2 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + */ + +/* + * sub-routines for dentry cache + */ + +#ifndef __AUFS_DCSUB_H__ +#define __AUFS_DCSUB_H__ + +#ifdef __KERNEL__ + +#include +#include + +struct au_dpage { + int ndentry; + struct dentry **dentries; +}; + +struct au_dcsub_pages { + int ndpage; + struct au_dpage *dpages; +}; + +/* ---------------------------------------------------------------------- */ + +/* dcsub.c */ +int au_dpages_init(struct au_dcsub_pages *dpages, gfp_t gfp); +void au_dpages_free(struct au_dcsub_pages *dpages); +typedef int (*au_dpages_test)(struct dentry *dentry, void *arg); +int au_dcsub_pages(struct au_dcsub_pages *dpages, struct dentry *root, + au_dpages_test test, void *arg); +int au_dcsub_pages_rev(struct au_dcsub_pages *dpages, struct dentry *dentry, + int do_include, au_dpages_test test, void *arg); +int au_dcsub_pages_rev_aufs(struct au_dcsub_pages *dpages, + struct dentry *dentry, int do_include); +int au_test_subdir(struct dentry *d1, struct dentry *d2); + +/* ---------------------------------------------------------------------- */ + +/* + * todo: in linux-3.13, several similar (but faster) helpers are added to + * include/linux/dcache.h. Try them (in the future). + */ + +static inline int au_d_hashed_positive(struct dentry *d) +{ + int err; + struct inode *inode = d_inode(d); + + err = 0; + if (unlikely(d_unhashed(d) + || d_is_negative(d) + || !inode->i_nlink)) + err = -ENOENT; + return err; +} + +static inline int au_d_linkable(struct dentry *d) +{ + int err; + struct inode *inode = d_inode(d); + + err = au_d_hashed_positive(d); + if (err + && d_is_positive(d) + && (inode->i_state & I_LINKABLE)) + err = 0; + return err; +} + +static inline int au_d_alive(struct dentry *d) +{ + int err; + struct inode *inode; + + err = 0; + if (!IS_ROOT(d)) + err = au_d_hashed_positive(d); + else { + inode = d_inode(d); + if (unlikely(d_unlinked(d) + || d_is_negative(d) + || !inode->i_nlink)) + err = -ENOENT; + } + return err; +} + +static inline int au_alive_dir(struct dentry *d) +{ + int err; + + err = au_d_alive(d); + if (unlikely(err || IS_DEADDIR(d_inode(d)))) + err = -ENOENT; + return err; +} + +static inline int au_qstreq(struct qstr *a, struct qstr *b) +{ + return a->len == b->len + && !memcmp(a->name, b->name, a->len); +} + +/* + * by the commit + * 360f547 2015-01-25 dcache: let the dentry count go down to zero without + * taking d_lock + * the type of d_lockref.count became int, but the inlined function d_count() + * still returns unsigned int. + * I don't know why. Maybe it is for every d_count() users? + * Anyway au_dcount() lives on. + */ +static inline int au_dcount(struct dentry *d) +{ + return (int)d_count(d); +} + +#endif /* __KERNEL__ */ +#endif /* __AUFS_DCSUB_H__ */ --- linux-azure-5.8-5.8.0.orig/fs/aufs/debug.c +++ linux-azure-5.8-5.8.0/fs/aufs/debug.c @@ -0,0 +1,441 @@ +// SPDX-License-Identifier: GPL-2.0 +/* + * Copyright (C) 2005-2020 Junjiro R. Okajima + * + * This program, aufs is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; either version 2 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + */ + +/* + * debug print functions + */ + +#include +#include "aufs.h" + +/* Returns 0, or -errno. arg is in kp->arg. */ +static int param_atomic_t_set(const char *val, const struct kernel_param *kp) +{ + int err, n; + + err = kstrtoint(val, 0, &n); + if (!err) { + if (n > 0) + au_debug_on(); + else + au_debug_off(); + } + return err; +} + +/* Returns length written or -errno. Buffer is 4k (ie. be short!) */ +static int param_atomic_t_get(char *buffer, const struct kernel_param *kp) +{ + atomic_t *a; + + a = kp->arg; + return sprintf(buffer, "%d", atomic_read(a)); +} + +static struct kernel_param_ops param_ops_atomic_t = { + .set = param_atomic_t_set, + .get = param_atomic_t_get + /* void (*free)(void *arg) */ +}; + +atomic_t aufs_debug = ATOMIC_INIT(0); +MODULE_PARM_DESC(debug, "debug print"); +module_param_named(debug, aufs_debug, atomic_t, 0664); + +DEFINE_MUTEX(au_dbg_mtx); /* just to serialize the dbg msgs */ +char *au_plevel = KERN_DEBUG; +#define dpri(fmt, ...) do { \ + if ((au_plevel \ + && strcmp(au_plevel, KERN_DEBUG)) \ + || au_debug_test()) \ + printk("%s" fmt, au_plevel, ##__VA_ARGS__); \ +} while (0) + +/* ---------------------------------------------------------------------- */ + +void au_dpri_whlist(struct au_nhash *whlist) +{ + unsigned long ul, n; + struct hlist_head *head; + struct au_vdir_wh *pos; + + n = whlist->nh_num; + head = whlist->nh_head; + for (ul = 0; ul < n; ul++) { + hlist_for_each_entry(pos, head, wh_hash) + dpri("b%d, %.*s, %d\n", + pos->wh_bindex, + pos->wh_str.len, pos->wh_str.name, + pos->wh_str.len); + head++; + } +} + +void au_dpri_vdir(struct au_vdir *vdir) +{ + unsigned long ul; + union au_vdir_deblk_p p; + unsigned char *o; + + if (!vdir || IS_ERR(vdir)) { + dpri("err %ld\n", PTR_ERR(vdir)); + return; + } + + dpri("deblk %u, nblk %lu, deblk %p, last{%lu, %p}, ver %llu\n", + vdir->vd_deblk_sz, vdir->vd_nblk, vdir->vd_deblk, + vdir->vd_last.ul, vdir->vd_last.p.deblk, vdir->vd_version); + for (ul = 0; ul < vdir->vd_nblk; ul++) { + p.deblk = vdir->vd_deblk[ul]; + o = p.deblk; + dpri("[%lu]: %p\n", ul, o); + } +} + +static int do_pri_inode(aufs_bindex_t bindex, struct inode *inode, int hn, + struct dentry *wh) +{ + char *n = NULL; + int l = 0; + + if (!inode || IS_ERR(inode)) { + dpri("i%d: err %ld\n", bindex, PTR_ERR(inode)); + return -1; + } + + /* the type of i_blocks depends upon CONFIG_LBDAF */ + BUILD_BUG_ON(sizeof(inode->i_blocks) != sizeof(unsigned long) + && sizeof(inode->i_blocks) != sizeof(u64)); + if (wh) { + n = (void *)wh->d_name.name; + l = wh->d_name.len; + } + + dpri("i%d: %p, i%lu, %s, cnt %d, nl %u, 0%o, sz %llu, blk %llu," + " hn %d, ct %lld, np %lu, st 0x%lx, f 0x%x, v %llu, g %x%s%.*s\n", + bindex, inode, + inode->i_ino, inode->i_sb ? au_sbtype(inode->i_sb) : "??", + atomic_read(&inode->i_count), inode->i_nlink, inode->i_mode, + i_size_read(inode), (unsigned long long)inode->i_blocks, + hn, (long long)timespec64_to_ns(&inode->i_ctime) & 0x0ffff, + inode->i_mapping ? inode->i_mapping->nrpages : 0, + inode->i_state, inode->i_flags, inode_peek_iversion(inode), + inode->i_generation, + l ? ", wh " : "", l, n); + return 0; +} + +void au_dpri_inode(struct inode *inode) +{ + struct au_iinfo *iinfo; + struct au_hinode *hi; + aufs_bindex_t bindex; + int err, hn; + + err = do_pri_inode(-1, inode, -1, NULL); + if (err || !au_test_aufs(inode->i_sb) || au_is_bad_inode(inode)) + return; + + iinfo = au_ii(inode); + dpri("i-1: btop %d, bbot %d, gen %d\n", + iinfo->ii_btop, iinfo->ii_bbot, au_iigen(inode, NULL)); + if (iinfo->ii_btop < 0) + return; + hn = 0; + for (bindex = iinfo->ii_btop; bindex <= iinfo->ii_bbot; bindex++) { + hi = au_hinode(iinfo, bindex); + hn = !!au_hn(hi); + do_pri_inode(bindex, hi->hi_inode, hn, hi->hi_whdentry); + } +} + +void au_dpri_dalias(struct inode *inode) +{ + struct dentry *d; + + spin_lock(&inode->i_lock); + hlist_for_each_entry(d, &inode->i_dentry, d_u.d_alias) + au_dpri_dentry(d); + spin_unlock(&inode->i_lock); +} + +static int do_pri_dentry(aufs_bindex_t bindex, struct dentry *dentry) +{ + struct dentry *wh = NULL; + int hn; + struct inode *inode; + struct au_iinfo *iinfo; + struct au_hinode *hi; + + if (!dentry || IS_ERR(dentry)) { + dpri("d%d: err %ld\n", bindex, PTR_ERR(dentry)); + return -1; + } + /* do not call dget_parent() here */ + /* note: access d_xxx without d_lock */ + dpri("d%d: %p, %pd2?, %s, cnt %d, flags 0x%x, %shashed\n", + bindex, dentry, dentry, + dentry->d_sb ? au_sbtype(dentry->d_sb) : "??", + au_dcount(dentry), dentry->d_flags, + d_unhashed(dentry) ? "un" : ""); + hn = -1; + inode = NULL; + if (d_is_positive(dentry)) + inode = d_inode(dentry); + if (inode + && au_test_aufs(dentry->d_sb) + && bindex >= 0 + && !au_is_bad_inode(inode)) { + iinfo = au_ii(inode); + hi = au_hinode(iinfo, bindex); + hn = !!au_hn(hi); + wh = hi->hi_whdentry; + } + do_pri_inode(bindex, inode, hn, wh); + return 0; +} + +void au_dpri_dentry(struct dentry *dentry) +{ + struct au_dinfo *dinfo; + aufs_bindex_t bindex; + int err; + + err = do_pri_dentry(-1, dentry); + if (err || !au_test_aufs(dentry->d_sb)) + return; + + dinfo = au_di(dentry); + if (!dinfo) + return; + dpri("d-1: btop %d, bbot %d, bwh %d, bdiropq %d, gen %d, tmp %d\n", + dinfo->di_btop, dinfo->di_bbot, + dinfo->di_bwh, dinfo->di_bdiropq, au_digen(dentry), + dinfo->di_tmpfile); + if (dinfo->di_btop < 0) + return; + for (bindex = dinfo->di_btop; bindex <= dinfo->di_bbot; bindex++) + do_pri_dentry(bindex, au_hdentry(dinfo, bindex)->hd_dentry); +} + +static int do_pri_file(aufs_bindex_t bindex, struct file *file) +{ + char a[32]; + + if (!file || IS_ERR(file)) { + dpri("f%d: err %ld\n", bindex, PTR_ERR(file)); + return -1; + } + a[0] = 0; + if (bindex < 0 + && !IS_ERR_OR_NULL(file->f_path.dentry) + && au_test_aufs(file->f_path.dentry->d_sb) + && au_fi(file)) + snprintf(a, sizeof(a), ", gen %d, mmapped %d", + au_figen(file), atomic_read(&au_fi(file)->fi_mmapped)); + dpri("f%d: mode 0x%x, flags 0%o, cnt %ld, v %llu, pos %llu%s\n", + bindex, file->f_mode, file->f_flags, (long)file_count(file), + file->f_version, file->f_pos, a); + if (!IS_ERR_OR_NULL(file->f_path.dentry)) + do_pri_dentry(bindex, file->f_path.dentry); + return 0; +} + +void au_dpri_file(struct file *file) +{ + struct au_finfo *finfo; + struct au_fidir *fidir; + struct au_hfile *hfile; + aufs_bindex_t bindex; + int err; + + err = do_pri_file(-1, file); + if (err + || IS_ERR_OR_NULL(file->f_path.dentry) + || !au_test_aufs(file->f_path.dentry->d_sb)) + return; + + finfo = au_fi(file); + if (!finfo) + return; + if (finfo->fi_btop < 0) + return; + fidir = finfo->fi_hdir; + if (!fidir) + do_pri_file(finfo->fi_btop, finfo->fi_htop.hf_file); + else + for (bindex = finfo->fi_btop; + bindex >= 0 && bindex <= fidir->fd_bbot; + bindex++) { + hfile = fidir->fd_hfile + bindex; + do_pri_file(bindex, hfile ? hfile->hf_file : NULL); + } +} + +static int do_pri_br(aufs_bindex_t bindex, struct au_branch *br) +{ + struct vfsmount *mnt; + struct super_block *sb; + + if (!br || IS_ERR(br)) + goto out; + mnt = au_br_mnt(br); + if (!mnt || IS_ERR(mnt)) + goto out; + sb = mnt->mnt_sb; + if (!sb || IS_ERR(sb)) + goto out; + + dpri("s%d: {perm 0x%x, id %d, wbr %p}, " + "%s, dev 0x%02x%02x, flags 0x%lx, cnt %d, active %d, " + "xino %d\n", + bindex, br->br_perm, br->br_id, br->br_wbr, + au_sbtype(sb), MAJOR(sb->s_dev), MINOR(sb->s_dev), + sb->s_flags, sb->s_count, + atomic_read(&sb->s_active), + !!au_xino_file(br->br_xino, /*idx*/-1)); + return 0; + +out: + dpri("s%d: err %ld\n", bindex, PTR_ERR(br)); + return -1; +} + +void au_dpri_sb(struct super_block *sb) +{ + struct au_sbinfo *sbinfo; + aufs_bindex_t bindex; + int err; + /* to reduce stack size */ + struct { + struct vfsmount mnt; + struct au_branch fake; + } *a; + + /* this function can be called from magic sysrq */ + a = kzalloc(sizeof(*a), GFP_ATOMIC); + if (unlikely(!a)) { + dpri("no memory\n"); + return; + } + + a->mnt.mnt_sb = sb; + a->fake.br_path.mnt = &a->mnt; + err = do_pri_br(-1, &a->fake); + au_kfree_rcu(a); + dpri("dev 0x%x\n", sb->s_dev); + if (err || !au_test_aufs(sb)) + return; + + sbinfo = au_sbi(sb); + if (!sbinfo) + return; + dpri("nw %d, gen %u, kobj %d\n", + atomic_read(&sbinfo->si_nowait.nw_len), sbinfo->si_generation, + kref_read(&sbinfo->si_kobj.kref)); + for (bindex = 0; bindex <= sbinfo->si_bbot; bindex++) + do_pri_br(bindex, sbinfo->si_branch[0 + bindex]); +} + +/* ---------------------------------------------------------------------- */ + +void __au_dbg_verify_dinode(struct dentry *dentry, const char *func, int line) +{ + struct inode *h_inode, *inode = d_inode(dentry); + struct dentry *h_dentry; + aufs_bindex_t bindex, bbot, bi; + + if (!inode /* || au_di(dentry)->di_lsc == AuLsc_DI_TMP */) + return; + + bbot = au_dbbot(dentry); + bi = au_ibbot(inode); + if (bi < bbot) + bbot = bi; + bindex = au_dbtop(dentry); + bi = au_ibtop(inode); + if (bi > bindex) + bindex = bi; + + for (; bindex <= bbot; bindex++) { + h_dentry = au_h_dptr(dentry, bindex); + if (!h_dentry) + continue; + h_inode = au_h_iptr(inode, bindex); + if (unlikely(h_inode != d_inode(h_dentry))) { + au_debug_on(); + AuDbg("b%d, %s:%d\n", bindex, func, line); + AuDbgDentry(dentry); + AuDbgInode(inode); + au_debug_off(); + BUG(); + } + } +} + +void au_dbg_verify_gen(struct dentry *parent, unsigned int sigen) +{ + int err, i, j; + struct au_dcsub_pages dpages; + struct au_dpage *dpage; + struct dentry **dentries; + + err = au_dpages_init(&dpages, GFP_NOFS); + AuDebugOn(err); + err = au_dcsub_pages_rev_aufs(&dpages, parent, /*do_include*/1); + AuDebugOn(err); + for (i = dpages.ndpage - 1; !err && i >= 0; i--) { + dpage = dpages.dpages + i; + dentries = dpage->dentries; + for (j = dpage->ndentry - 1; !err && j >= 0; j--) + AuDebugOn(au_digen_test(dentries[j], sigen)); + } + au_dpages_free(&dpages); +} + +void au_dbg_verify_kthread(void) +{ + if (au_wkq_test()) { + au_dbg_blocked(); + /* + * It may be recursive, but udba=notify between two aufs mounts, + * where a single ro branch is shared, is not a problem. + */ + /* WARN_ON(1); */ + } +} + +/* ---------------------------------------------------------------------- */ + +int __init au_debug_init(void) +{ + aufs_bindex_t bindex; + struct au_vdir_destr destr; + + bindex = -1; + AuDebugOn(bindex >= 0); + + destr.len = -1; + AuDebugOn(destr.len < NAME_MAX); + +#ifdef CONFIG_4KSTACKS + pr_warn("CONFIG_4KSTACKS is defined.\n"); +#endif + + return 0; +} --- linux-azure-5.8-5.8.0.orig/fs/aufs/debug.h +++ linux-azure-5.8-5.8.0/fs/aufs/debug.h @@ -0,0 +1,226 @@ +/* SPDX-License-Identifier: GPL-2.0 */ +/* + * Copyright (C) 2005-2020 Junjiro R. Okajima + * + * This program, aufs is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; either version 2 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + */ + +/* + * debug print functions + */ + +#ifndef __AUFS_DEBUG_H__ +#define __AUFS_DEBUG_H__ + +#ifdef __KERNEL__ + +#include +#include +#include +#include + +#ifdef CONFIG_AUFS_DEBUG +#define AuDebugOn(a) BUG_ON(a) + +/* module parameter */ +extern atomic_t aufs_debug; +static inline void au_debug_on(void) +{ + atomic_inc(&aufs_debug); +} +static inline void au_debug_off(void) +{ + atomic_dec_if_positive(&aufs_debug); +} + +static inline int au_debug_test(void) +{ + return atomic_read(&aufs_debug) > 0; +} +#else +#define AuDebugOn(a) do {} while (0) +AuStubVoid(au_debug_on, void) +AuStubVoid(au_debug_off, void) +AuStubInt0(au_debug_test, void) +#endif /* CONFIG_AUFS_DEBUG */ + +#define param_check_atomic_t(name, p) __param_check(name, p, atomic_t) + +/* ---------------------------------------------------------------------- */ + +/* debug print */ + +#define AuDbg(fmt, ...) do { \ + if (au_debug_test()) \ + pr_debug("DEBUG: " fmt, ##__VA_ARGS__); \ +} while (0) +#define AuLabel(l) AuDbg(#l "\n") +#define AuIOErr(fmt, ...) pr_err("I/O Error, " fmt, ##__VA_ARGS__) +#define AuWarn1(fmt, ...) do { \ + static unsigned char _c; \ + if (!_c++) \ + pr_warn(fmt, ##__VA_ARGS__); \ +} while (0) + +#define AuErr1(fmt, ...) do { \ + static unsigned char _c; \ + if (!_c++) \ + pr_err(fmt, ##__VA_ARGS__); \ +} while (0) + +#define AuIOErr1(fmt, ...) do { \ + static unsigned char _c; \ + if (!_c++) \ + AuIOErr(fmt, ##__VA_ARGS__); \ +} while (0) + +#define AuUnsupportMsg "This operation is not supported." \ + " Please report this application to aufs-users ML." +#define AuUnsupport(fmt, ...) do { \ + pr_err(AuUnsupportMsg "\n" fmt, ##__VA_ARGS__); \ + dump_stack(); \ +} while (0) + +#define AuTraceErr(e) do { \ + if (unlikely((e) < 0)) \ + AuDbg("err %d\n", (int)(e)); \ +} while (0) + +#define AuTraceErrPtr(p) do { \ + if (IS_ERR(p)) \ + AuDbg("err %ld\n", PTR_ERR(p)); \ +} while (0) + +/* dirty macros for debug print, use with "%.*s" and caution */ +#define AuLNPair(qstr) (qstr)->len, (qstr)->name + +/* ---------------------------------------------------------------------- */ + +struct dentry; +#ifdef CONFIG_AUFS_DEBUG +extern struct mutex au_dbg_mtx; +extern char *au_plevel; +struct au_nhash; +void au_dpri_whlist(struct au_nhash *whlist); +struct au_vdir; +void au_dpri_vdir(struct au_vdir *vdir); +struct inode; +void au_dpri_inode(struct inode *inode); +void au_dpri_dalias(struct inode *inode); +void au_dpri_dentry(struct dentry *dentry); +struct file; +void au_dpri_file(struct file *filp); +struct super_block; +void au_dpri_sb(struct super_block *sb); + +#define au_dbg_verify_dinode(d) __au_dbg_verify_dinode(d, __func__, __LINE__) +void __au_dbg_verify_dinode(struct dentry *dentry, const char *func, int line); +void au_dbg_verify_gen(struct dentry *parent, unsigned int sigen); +void au_dbg_verify_kthread(void); + +int __init au_debug_init(void); + +#define AuDbgWhlist(w) do { \ + mutex_lock(&au_dbg_mtx); \ + AuDbg(#w "\n"); \ + au_dpri_whlist(w); \ + mutex_unlock(&au_dbg_mtx); \ +} while (0) + +#define AuDbgVdir(v) do { \ + mutex_lock(&au_dbg_mtx); \ + AuDbg(#v "\n"); \ + au_dpri_vdir(v); \ + mutex_unlock(&au_dbg_mtx); \ +} while (0) + +#define AuDbgInode(i) do { \ + mutex_lock(&au_dbg_mtx); \ + AuDbg(#i "\n"); \ + au_dpri_inode(i); \ + mutex_unlock(&au_dbg_mtx); \ +} while (0) + +#define AuDbgDAlias(i) do { \ + mutex_lock(&au_dbg_mtx); \ + AuDbg(#i "\n"); \ + au_dpri_dalias(i); \ + mutex_unlock(&au_dbg_mtx); \ +} while (0) + +#define AuDbgDentry(d) do { \ + mutex_lock(&au_dbg_mtx); \ + AuDbg(#d "\n"); \ + au_dpri_dentry(d); \ + mutex_unlock(&au_dbg_mtx); \ +} while (0) + +#define AuDbgFile(f) do { \ + mutex_lock(&au_dbg_mtx); \ + AuDbg(#f "\n"); \ + au_dpri_file(f); \ + mutex_unlock(&au_dbg_mtx); \ +} while (0) + +#define AuDbgSb(sb) do { \ + mutex_lock(&au_dbg_mtx); \ + AuDbg(#sb "\n"); \ + au_dpri_sb(sb); \ + mutex_unlock(&au_dbg_mtx); \ +} while (0) + +#define AuDbgSym(addr) do { \ + char sym[KSYM_SYMBOL_LEN]; \ + sprint_symbol(sym, (unsigned long)addr); \ + AuDbg("%s\n", sym); \ +} while (0) +#else +AuStubVoid(au_dbg_verify_dinode, struct dentry *dentry) +AuStubVoid(au_dbg_verify_gen, struct dentry *parent, unsigned int sigen) +AuStubVoid(au_dbg_verify_kthread, void) +AuStubInt0(__init au_debug_init, void) + +#define AuDbgWhlist(w) do {} while (0) +#define AuDbgVdir(v) do {} while (0) +#define AuDbgInode(i) do {} while (0) +#define AuDbgDAlias(i) do {} while (0) +#define AuDbgDentry(d) do {} while (0) +#define AuDbgFile(f) do {} while (0) +#define AuDbgSb(sb) do {} while (0) +#define AuDbgSym(addr) do {} while (0) +#endif /* CONFIG_AUFS_DEBUG */ + +/* ---------------------------------------------------------------------- */ + +#ifdef CONFIG_AUFS_MAGIC_SYSRQ +int __init au_sysrq_init(void); +void au_sysrq_fin(void); + +#ifdef CONFIG_HW_CONSOLE +#define au_dbg_blocked() do { \ + WARN_ON(1); \ + handle_sysrq('w'); \ +} while (0) +#else +AuStubVoid(au_dbg_blocked, void) +#endif + +#else +AuStubInt0(__init au_sysrq_init, void) +AuStubVoid(au_sysrq_fin, void) +AuStubVoid(au_dbg_blocked, void) +#endif /* CONFIG_AUFS_MAGIC_SYSRQ */ + +#endif /* __KERNEL__ */ +#endif /* __AUFS_DEBUG_H__ */ --- linux-azure-5.8-5.8.0.orig/fs/aufs/dentry.c +++ linux-azure-5.8-5.8.0/fs/aufs/dentry.c @@ -0,0 +1,1154 @@ +// SPDX-License-Identifier: GPL-2.0 +/* + * Copyright (C) 2005-2020 Junjiro R. Okajima + * + * This program, aufs is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; either version 2 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + */ + +/* + * lookup and dentry operations + */ + +#include +#include +#include "aufs.h" + +/* + * returns positive/negative dentry, NULL or an error. + * NULL means whiteout-ed or not-found. + */ +static struct dentry* +au_do_lookup(struct dentry *h_parent, struct dentry *dentry, + aufs_bindex_t bindex, struct au_do_lookup_args *args) +{ + struct dentry *h_dentry; + struct inode *h_inode; + struct au_branch *br; + int wh_found, opq; + unsigned char wh_able; + const unsigned char allow_neg = !!au_ftest_lkup(args->flags, ALLOW_NEG); + const unsigned char ignore_perm = !!au_ftest_lkup(args->flags, + IGNORE_PERM); + + wh_found = 0; + br = au_sbr(dentry->d_sb, bindex); + wh_able = !!au_br_whable(br->br_perm); + if (wh_able) + wh_found = au_wh_test(h_parent, &args->whname, ignore_perm); + h_dentry = ERR_PTR(wh_found); + if (!wh_found) + goto real_lookup; + if (unlikely(wh_found < 0)) + goto out; + + /* We found a whiteout */ + /* au_set_dbbot(dentry, bindex); */ + au_set_dbwh(dentry, bindex); + if (!allow_neg) + return NULL; /* success */ + +real_lookup: + if (!ignore_perm) + h_dentry = vfsub_lkup_one(args->name, h_parent); + else + h_dentry = au_sio_lkup_one(args->name, h_parent); + if (IS_ERR(h_dentry)) { + if (PTR_ERR(h_dentry) == -ENAMETOOLONG + && !allow_neg) + h_dentry = NULL; + goto out; + } + + h_inode = d_inode(h_dentry); + if (d_is_negative(h_dentry)) { + if (!allow_neg) + goto out_neg; + } else if (wh_found + || (args->type && args->type != (h_inode->i_mode & S_IFMT))) + goto out_neg; + else if (au_ftest_lkup(args->flags, DIRREN) + /* && h_inode */ + && !au_dr_lkup_h_ino(args, bindex, h_inode->i_ino)) { + AuDbg("b%d %pd ignored hi%llu\n", bindex, h_dentry, + (unsigned long long)h_inode->i_ino); + goto out_neg; + } + + if (au_dbbot(dentry) <= bindex) + au_set_dbbot(dentry, bindex); + if (au_dbtop(dentry) < 0 || bindex < au_dbtop(dentry)) + au_set_dbtop(dentry, bindex); + au_set_h_dptr(dentry, bindex, h_dentry); + + if (!d_is_dir(h_dentry) + || !wh_able + || (d_really_is_positive(dentry) && !d_is_dir(dentry))) + goto out; /* success */ + + inode_lock_shared_nested(h_inode, AuLsc_I_CHILD); + opq = au_diropq_test(h_dentry); + inode_unlock_shared(h_inode); + if (opq > 0) + au_set_dbdiropq(dentry, bindex); + else if (unlikely(opq < 0)) { + au_set_h_dptr(dentry, bindex, NULL); + h_dentry = ERR_PTR(opq); + } + goto out; + +out_neg: + dput(h_dentry); + h_dentry = NULL; +out: + return h_dentry; +} + +static int au_test_shwh(struct super_block *sb, const struct qstr *name) +{ + if (unlikely(!au_opt_test(au_mntflags(sb), SHWH) + && !strncmp(name->name, AUFS_WH_PFX, AUFS_WH_PFX_LEN))) + return -EPERM; + return 0; +} + +/* + * returns the number of lower positive dentries, + * otherwise an error. + * can be called at unlinking with @type is zero. + */ +int au_lkup_dentry(struct dentry *dentry, aufs_bindex_t btop, + unsigned int flags) +{ + int npositive, err; + aufs_bindex_t bindex, btail, bdiropq; + unsigned char isdir, dirperm1, dirren; + struct au_do_lookup_args args = { + .flags = flags, + .name = &dentry->d_name + }; + struct dentry *parent; + struct super_block *sb; + + sb = dentry->d_sb; + err = au_test_shwh(sb, args.name); + if (unlikely(err)) + goto out; + + err = au_wh_name_alloc(&args.whname, args.name); + if (unlikely(err)) + goto out; + + isdir = !!d_is_dir(dentry); + dirperm1 = !!au_opt_test(au_mntflags(sb), DIRPERM1); + dirren = !!au_opt_test(au_mntflags(sb), DIRREN); + if (dirren) + au_fset_lkup(args.flags, DIRREN); + + npositive = 0; + parent = dget_parent(dentry); + btail = au_dbtaildir(parent); + for (bindex = btop; bindex <= btail; bindex++) { + struct dentry *h_parent, *h_dentry; + struct inode *h_inode, *h_dir; + struct au_branch *br; + + h_dentry = au_h_dptr(dentry, bindex); + if (h_dentry) { + if (d_is_positive(h_dentry)) + npositive++; + break; + } + h_parent = au_h_dptr(parent, bindex); + if (!h_parent || !d_is_dir(h_parent)) + continue; + + if (dirren) { + /* if the inum matches, then use the prepared name */ + err = au_dr_lkup_name(&args, bindex); + if (unlikely(err)) + goto out_parent; + } + + h_dir = d_inode(h_parent); + inode_lock_shared_nested(h_dir, AuLsc_I_PARENT); + h_dentry = au_do_lookup(h_parent, dentry, bindex, &args); + inode_unlock_shared(h_dir); + err = PTR_ERR(h_dentry); + if (IS_ERR(h_dentry)) + goto out_parent; + if (h_dentry) + au_fclr_lkup(args.flags, ALLOW_NEG); + if (dirperm1) + au_fset_lkup(args.flags, IGNORE_PERM); + + if (au_dbwh(dentry) == bindex) + break; + if (!h_dentry) + continue; + if (d_is_negative(h_dentry)) + continue; + h_inode = d_inode(h_dentry); + npositive++; + if (!args.type) + args.type = h_inode->i_mode & S_IFMT; + if (args.type != S_IFDIR) + break; + else if (isdir) { + /* the type of lower may be different */ + bdiropq = au_dbdiropq(dentry); + if (bdiropq >= 0 && bdiropq <= bindex) + break; + } + br = au_sbr(sb, bindex); + if (dirren + && au_dr_hino_test_add(&br->br_dirren, h_inode->i_ino, + /*add_ent*/NULL)) { + /* prepare next name to lookup */ + err = au_dr_lkup(&args, dentry, bindex); + if (unlikely(err)) + goto out_parent; + } + } + + if (npositive) { + AuLabel(positive); + au_update_dbtop(dentry); + } + err = npositive; + if (unlikely(!au_opt_test(au_mntflags(sb), UDBA_NONE) + && au_dbtop(dentry) < 0)) { + err = -EIO; + AuIOErr("both of real entry and whiteout found, %pd, err %d\n", + dentry, err); + } + +out_parent: + dput(parent); + au_kfree_try_rcu(args.whname.name); + if (dirren) + au_dr_lkup_fin(&args); +out: + return err; +} + +struct dentry *au_sio_lkup_one(struct qstr *name, struct dentry *parent) +{ + struct dentry *dentry; + int wkq_err; + + if (!au_test_h_perm_sio(d_inode(parent), MAY_EXEC)) + dentry = vfsub_lkup_one(name, parent); + else { + struct vfsub_lkup_one_args args = { + .errp = &dentry, + .name = name, + .parent = parent + }; + + wkq_err = au_wkq_wait(vfsub_call_lkup_one, &args); + if (unlikely(wkq_err)) + dentry = ERR_PTR(wkq_err); + } + + return dentry; +} + +/* + * lookup @dentry on @bindex which should be negative. + */ +int au_lkup_neg(struct dentry *dentry, aufs_bindex_t bindex, int wh) +{ + int err; + struct dentry *parent, *h_parent, *h_dentry; + struct au_branch *br; + + parent = dget_parent(dentry); + h_parent = au_h_dptr(parent, bindex); + br = au_sbr(dentry->d_sb, bindex); + if (wh) + h_dentry = au_whtmp_lkup(h_parent, br, &dentry->d_name); + else + h_dentry = au_sio_lkup_one(&dentry->d_name, h_parent); + err = PTR_ERR(h_dentry); + if (IS_ERR(h_dentry)) + goto out; + if (unlikely(d_is_positive(h_dentry))) { + err = -EIO; + AuIOErr("%pd should be negative on b%d.\n", h_dentry, bindex); + dput(h_dentry); + goto out; + } + + err = 0; + if (bindex < au_dbtop(dentry)) + au_set_dbtop(dentry, bindex); + if (au_dbbot(dentry) < bindex) + au_set_dbbot(dentry, bindex); + au_set_h_dptr(dentry, bindex, h_dentry); + +out: + dput(parent); + return err; +} + +/* ---------------------------------------------------------------------- */ + +/* subset of struct inode */ +struct au_iattr { + unsigned long i_ino; + /* unsigned int i_nlink; */ + kuid_t i_uid; + kgid_t i_gid; + u64 i_version; +/* + loff_t i_size; + blkcnt_t i_blocks; +*/ + umode_t i_mode; +}; + +static void au_iattr_save(struct au_iattr *ia, struct inode *h_inode) +{ + ia->i_ino = h_inode->i_ino; + /* ia->i_nlink = h_inode->i_nlink; */ + ia->i_uid = h_inode->i_uid; + ia->i_gid = h_inode->i_gid; + ia->i_version = inode_query_iversion(h_inode); +/* + ia->i_size = h_inode->i_size; + ia->i_blocks = h_inode->i_blocks; +*/ + ia->i_mode = (h_inode->i_mode & S_IFMT); +} + +static int au_iattr_test(struct au_iattr *ia, struct inode *h_inode) +{ + return ia->i_ino != h_inode->i_ino + /* || ia->i_nlink != h_inode->i_nlink */ + || !uid_eq(ia->i_uid, h_inode->i_uid) + || !gid_eq(ia->i_gid, h_inode->i_gid) + || !inode_eq_iversion(h_inode, ia->i_version) +/* + || ia->i_size != h_inode->i_size + || ia->i_blocks != h_inode->i_blocks +*/ + || ia->i_mode != (h_inode->i_mode & S_IFMT); +} + +static int au_h_verify_dentry(struct dentry *h_dentry, struct dentry *h_parent, + struct au_branch *br) +{ + int err; + struct au_iattr ia; + struct inode *h_inode; + struct dentry *h_d; + struct super_block *h_sb; + + err = 0; + memset(&ia, -1, sizeof(ia)); + h_sb = h_dentry->d_sb; + h_inode = NULL; + if (d_is_positive(h_dentry)) { + h_inode = d_inode(h_dentry); + au_iattr_save(&ia, h_inode); + } else if (au_test_nfs(h_sb) || au_test_fuse(h_sb)) + /* nfs d_revalidate may return 0 for negative dentry */ + /* fuse d_revalidate always return 0 for negative dentry */ + goto out; + + /* main purpose is namei.c:cached_lookup() and d_revalidate */ + h_d = vfsub_lkup_one(&h_dentry->d_name, h_parent); + err = PTR_ERR(h_d); + if (IS_ERR(h_d)) + goto out; + + err = 0; + if (unlikely(h_d != h_dentry + || d_inode(h_d) != h_inode + || (h_inode && au_iattr_test(&ia, h_inode)))) + err = au_busy_or_stale(); + dput(h_d); + +out: + AuTraceErr(err); + return err; +} + +int au_h_verify(struct dentry *h_dentry, unsigned int udba, struct inode *h_dir, + struct dentry *h_parent, struct au_branch *br) +{ + int err; + + err = 0; + if (udba == AuOpt_UDBA_REVAL + && !au_test_fs_remote(h_dentry->d_sb)) { + IMustLock(h_dir); + err = (d_inode(h_dentry->d_parent) != h_dir); + } else if (udba != AuOpt_UDBA_NONE) + err = au_h_verify_dentry(h_dentry, h_parent, br); + + return err; +} + +/* ---------------------------------------------------------------------- */ + +static int au_do_refresh_hdentry(struct dentry *dentry, struct dentry *parent) +{ + int err; + aufs_bindex_t new_bindex, bindex, bbot, bwh, bdiropq; + struct au_hdentry tmp, *p, *q; + struct au_dinfo *dinfo; + struct super_block *sb; + + DiMustWriteLock(dentry); + + sb = dentry->d_sb; + dinfo = au_di(dentry); + bbot = dinfo->di_bbot; + bwh = dinfo->di_bwh; + bdiropq = dinfo->di_bdiropq; + bindex = dinfo->di_btop; + p = au_hdentry(dinfo, bindex); + for (; bindex <= bbot; bindex++, p++) { + if (!p->hd_dentry) + continue; + + new_bindex = au_br_index(sb, p->hd_id); + if (new_bindex == bindex) + continue; + + if (dinfo->di_bwh == bindex) + bwh = new_bindex; + if (dinfo->di_bdiropq == bindex) + bdiropq = new_bindex; + if (new_bindex < 0) { + au_hdput(p); + p->hd_dentry = NULL; + continue; + } + + /* swap two lower dentries, and loop again */ + q = au_hdentry(dinfo, new_bindex); + tmp = *q; + *q = *p; + *p = tmp; + if (tmp.hd_dentry) { + bindex--; + p--; + } + } + + dinfo->di_bwh = -1; + if (bwh >= 0 && bwh <= au_sbbot(sb) && au_sbr_whable(sb, bwh)) + dinfo->di_bwh = bwh; + + dinfo->di_bdiropq = -1; + if (bdiropq >= 0 + && bdiropq <= au_sbbot(sb) + && au_sbr_whable(sb, bdiropq)) + dinfo->di_bdiropq = bdiropq; + + err = -EIO; + dinfo->di_btop = -1; + dinfo->di_bbot = -1; + bbot = au_dbbot(parent); + bindex = 0; + p = au_hdentry(dinfo, bindex); + for (; bindex <= bbot; bindex++, p++) + if (p->hd_dentry) { + dinfo->di_btop = bindex; + break; + } + + if (dinfo->di_btop >= 0) { + bindex = bbot; + p = au_hdentry(dinfo, bindex); + for (; bindex >= 0; bindex--, p--) + if (p->hd_dentry) { + dinfo->di_bbot = bindex; + err = 0; + break; + } + } + + return err; +} + +static void au_do_hide(struct dentry *dentry) +{ + struct inode *inode; + + if (d_really_is_positive(dentry)) { + inode = d_inode(dentry); + if (!d_is_dir(dentry)) { + if (inode->i_nlink && !d_unhashed(dentry)) + drop_nlink(inode); + } else { + clear_nlink(inode); + /* stop next lookup */ + inode->i_flags |= S_DEAD; + } + smp_mb(); /* necessary? */ + } + d_drop(dentry); +} + +static int au_hide_children(struct dentry *parent) +{ + int err, i, j, ndentry; + struct au_dcsub_pages dpages; + struct au_dpage *dpage; + struct dentry *dentry; + + err = au_dpages_init(&dpages, GFP_NOFS); + if (unlikely(err)) + goto out; + err = au_dcsub_pages(&dpages, parent, NULL, NULL); + if (unlikely(err)) + goto out_dpages; + + /* in reverse order */ + for (i = dpages.ndpage - 1; i >= 0; i--) { + dpage = dpages.dpages + i; + ndentry = dpage->ndentry; + for (j = ndentry - 1; j >= 0; j--) { + dentry = dpage->dentries[j]; + if (dentry != parent) + au_do_hide(dentry); + } + } + +out_dpages: + au_dpages_free(&dpages); +out: + return err; +} + +static void au_hide(struct dentry *dentry) +{ + int err; + + AuDbgDentry(dentry); + if (d_is_dir(dentry)) { + /* shrink_dcache_parent(dentry); */ + err = au_hide_children(dentry); + if (unlikely(err)) + AuIOErr("%pd, failed hiding children, ignored %d\n", + dentry, err); + } + au_do_hide(dentry); +} + +/* + * By adding a dirty branch, a cached dentry may be affected in various ways. + * + * a dirty branch is added + * - on the top of layers + * - in the middle of layers + * - to the bottom of layers + * + * on the added branch there exists + * - a whiteout + * - a diropq + * - a same named entry + * + exist + * * negative --> positive + * * positive --> positive + * - type is unchanged + * - type is changed + * + doesn't exist + * * negative --> negative + * * positive --> negative (rejected by au_br_del() for non-dir case) + * - none + */ +static int au_refresh_by_dinfo(struct dentry *dentry, struct au_dinfo *dinfo, + struct au_dinfo *tmp) +{ + int err; + aufs_bindex_t bindex, bbot; + struct { + struct dentry *dentry; + struct inode *inode; + mode_t mode; + } orig_h, tmp_h = { + .dentry = NULL + }; + struct au_hdentry *hd; + struct inode *inode, *h_inode; + struct dentry *h_dentry; + + err = 0; + AuDebugOn(dinfo->di_btop < 0); + orig_h.mode = 0; + orig_h.dentry = au_hdentry(dinfo, dinfo->di_btop)->hd_dentry; + orig_h.inode = NULL; + if (d_is_positive(orig_h.dentry)) { + orig_h.inode = d_inode(orig_h.dentry); + orig_h.mode = orig_h.inode->i_mode & S_IFMT; + } + if (tmp->di_btop >= 0) { + tmp_h.dentry = au_hdentry(tmp, tmp->di_btop)->hd_dentry; + if (d_is_positive(tmp_h.dentry)) { + tmp_h.inode = d_inode(tmp_h.dentry); + tmp_h.mode = tmp_h.inode->i_mode & S_IFMT; + } + } + + inode = NULL; + if (d_really_is_positive(dentry)) + inode = d_inode(dentry); + if (!orig_h.inode) { + AuDbg("negative originally\n"); + if (inode) { + au_hide(dentry); + goto out; + } + AuDebugOn(inode); + AuDebugOn(dinfo->di_btop != dinfo->di_bbot); + AuDebugOn(dinfo->di_bdiropq != -1); + + if (!tmp_h.inode) { + AuDbg("negative --> negative\n"); + /* should have only one negative lower */ + if (tmp->di_btop >= 0 + && tmp->di_btop < dinfo->di_btop) { + AuDebugOn(tmp->di_btop != tmp->di_bbot); + AuDebugOn(dinfo->di_btop != dinfo->di_bbot); + au_set_h_dptr(dentry, dinfo->di_btop, NULL); + au_di_cp(dinfo, tmp); + hd = au_hdentry(tmp, tmp->di_btop); + au_set_h_dptr(dentry, tmp->di_btop, + dget(hd->hd_dentry)); + } + au_dbg_verify_dinode(dentry); + } else { + AuDbg("negative --> positive\n"); + /* + * similar to the behaviour of creating with bypassing + * aufs. + * unhash it in order to force an error in the + * succeeding create operation. + * we should not set S_DEAD here. + */ + d_drop(dentry); + /* au_di_swap(tmp, dinfo); */ + au_dbg_verify_dinode(dentry); + } + } else { + AuDbg("positive originally\n"); + /* inode may be NULL */ + AuDebugOn(inode && (inode->i_mode & S_IFMT) != orig_h.mode); + if (!tmp_h.inode) { + AuDbg("positive --> negative\n"); + /* or bypassing aufs */ + au_hide(dentry); + if (tmp->di_bwh >= 0 && tmp->di_bwh <= dinfo->di_btop) + dinfo->di_bwh = tmp->di_bwh; + if (inode) + err = au_refresh_hinode_self(inode); + au_dbg_verify_dinode(dentry); + } else if (orig_h.mode == tmp_h.mode) { + AuDbg("positive --> positive, same type\n"); + if (!S_ISDIR(orig_h.mode) + && dinfo->di_btop > tmp->di_btop) { + /* + * similar to the behaviour of removing and + * creating. + */ + au_hide(dentry); + if (inode) + err = au_refresh_hinode_self(inode); + au_dbg_verify_dinode(dentry); + } else { + /* fill empty slots */ + if (dinfo->di_btop > tmp->di_btop) + dinfo->di_btop = tmp->di_btop; + if (dinfo->di_bbot < tmp->di_bbot) + dinfo->di_bbot = tmp->di_bbot; + dinfo->di_bwh = tmp->di_bwh; + dinfo->di_bdiropq = tmp->di_bdiropq; + bbot = dinfo->di_bbot; + bindex = tmp->di_btop; + hd = au_hdentry(tmp, bindex); + for (; bindex <= bbot; bindex++, hd++) { + if (au_h_dptr(dentry, bindex)) + continue; + h_dentry = hd->hd_dentry; + if (!h_dentry) + continue; + AuDebugOn(d_is_negative(h_dentry)); + h_inode = d_inode(h_dentry); + AuDebugOn(orig_h.mode + != (h_inode->i_mode + & S_IFMT)); + au_set_h_dptr(dentry, bindex, + dget(h_dentry)); + } + if (inode) + err = au_refresh_hinode(inode, dentry); + au_dbg_verify_dinode(dentry); + } + } else { + AuDbg("positive --> positive, different type\n"); + /* similar to the behaviour of removing and creating */ + au_hide(dentry); + if (inode) + err = au_refresh_hinode_self(inode); + au_dbg_verify_dinode(dentry); + } + } + +out: + return err; +} + +void au_refresh_dop(struct dentry *dentry, int force_reval) +{ + const struct dentry_operations *dop + = force_reval ? &aufs_dop : dentry->d_sb->s_d_op; + static const unsigned int mask + = DCACHE_OP_REVALIDATE | DCACHE_OP_WEAK_REVALIDATE; + + BUILD_BUG_ON(sizeof(mask) != sizeof(dentry->d_flags)); + + if (dentry->d_op == dop) + return; + + AuDbg("%pd\n", dentry); + spin_lock(&dentry->d_lock); + if (dop == &aufs_dop) + dentry->d_flags |= mask; + else + dentry->d_flags &= ~mask; + dentry->d_op = dop; + spin_unlock(&dentry->d_lock); +} + +int au_refresh_dentry(struct dentry *dentry, struct dentry *parent) +{ + int err, ebrange, nbr; + unsigned int sigen; + struct au_dinfo *dinfo, *tmp; + struct super_block *sb; + struct inode *inode; + + DiMustWriteLock(dentry); + AuDebugOn(IS_ROOT(dentry)); + AuDebugOn(d_really_is_negative(parent)); + + sb = dentry->d_sb; + sigen = au_sigen(sb); + err = au_digen_test(parent, sigen); + if (unlikely(err)) + goto out; + + nbr = au_sbbot(sb) + 1; + dinfo = au_di(dentry); + err = au_di_realloc(dinfo, nbr, /*may_shrink*/0); + if (unlikely(err)) + goto out; + ebrange = au_dbrange_test(dentry); + if (!ebrange) + ebrange = au_do_refresh_hdentry(dentry, parent); + + if (d_unhashed(dentry) || ebrange /* || dinfo->di_tmpfile */) { + AuDebugOn(au_dbtop(dentry) < 0 && au_dbbot(dentry) >= 0); + if (d_really_is_positive(dentry)) { + inode = d_inode(dentry); + err = au_refresh_hinode_self(inode); + } + au_dbg_verify_dinode(dentry); + if (!err) + goto out_dgen; /* success */ + goto out; + } + + /* temporary dinfo */ + AuDbgDentry(dentry); + err = -ENOMEM; + tmp = au_di_alloc(sb, AuLsc_DI_TMP); + if (unlikely(!tmp)) + goto out; + au_di_swap(tmp, dinfo); + /* returns the number of positive dentries */ + /* + * if current working dir is removed, it returns an error. + * but the dentry is legal. + */ + err = au_lkup_dentry(dentry, /*btop*/0, AuLkup_ALLOW_NEG); + AuDbgDentry(dentry); + au_di_swap(tmp, dinfo); + if (err == -ENOENT) + err = 0; + if (err >= 0) { + /* compare/refresh by dinfo */ + AuDbgDentry(dentry); + err = au_refresh_by_dinfo(dentry, dinfo, tmp); + au_dbg_verify_dinode(dentry); + AuTraceErr(err); + } + au_di_realloc(dinfo, nbr, /*may_shrink*/1); /* harmless if err */ + au_rw_write_unlock(&tmp->di_rwsem); + au_di_free(tmp); + if (unlikely(err)) + goto out; + +out_dgen: + au_update_digen(dentry); +out: + if (unlikely(err && !(dentry->d_flags & DCACHE_NFSFS_RENAMED))) { + AuIOErr("failed refreshing %pd, %d\n", dentry, err); + AuDbgDentry(dentry); + } + AuTraceErr(err); + return err; +} + +static int au_do_h_d_reval(struct dentry *h_dentry, unsigned int flags, + struct dentry *dentry, aufs_bindex_t bindex) +{ + int err, valid; + + err = 0; + if (!(h_dentry->d_flags & DCACHE_OP_REVALIDATE)) + goto out; + + AuDbg("b%d\n", bindex); + /* + * gave up supporting LOOKUP_CREATE/OPEN for lower fs, + * due to whiteout and branch permission. + */ + flags &= ~(/*LOOKUP_PARENT |*/ LOOKUP_OPEN | LOOKUP_CREATE + | LOOKUP_FOLLOW | LOOKUP_EXCL); + /* it may return tri-state */ + valid = h_dentry->d_op->d_revalidate(h_dentry, flags); + + if (unlikely(valid < 0)) + err = valid; + else if (!valid) + err = -EINVAL; + +out: + AuTraceErr(err); + return err; +} + +/* todo: remove this */ +static int h_d_revalidate(struct dentry *dentry, struct inode *inode, + unsigned int flags, int do_udba, int dirren) +{ + int err; + umode_t mode, h_mode; + aufs_bindex_t bindex, btail, btop, ibs, ibe; + unsigned char plus, unhashed, is_root, h_plus, h_nfs, tmpfile; + struct inode *h_inode, *h_cached_inode; + struct dentry *h_dentry; + struct qstr *name, *h_name; + + err = 0; + plus = 0; + mode = 0; + ibs = -1; + ibe = -1; + unhashed = !!d_unhashed(dentry); + is_root = !!IS_ROOT(dentry); + name = &dentry->d_name; + tmpfile = au_di(dentry)->di_tmpfile; + + /* + * Theoretically, REVAL test should be unnecessary in case of + * {FS,I}NOTIFY. + * But {fs,i}notify doesn't fire some necessary events, + * IN_ATTRIB for atime/nlink/pageio + * Let's do REVAL test too. + */ + if (do_udba && inode) { + mode = (inode->i_mode & S_IFMT); + plus = (inode->i_nlink > 0); + ibs = au_ibtop(inode); + ibe = au_ibbot(inode); + } + + btop = au_dbtop(dentry); + btail = btop; + if (inode && S_ISDIR(inode->i_mode)) + btail = au_dbtaildir(dentry); + for (bindex = btop; bindex <= btail; bindex++) { + h_dentry = au_h_dptr(dentry, bindex); + if (!h_dentry) + continue; + + AuDbg("b%d, %pd\n", bindex, h_dentry); + h_nfs = !!au_test_nfs(h_dentry->d_sb); + spin_lock(&h_dentry->d_lock); + h_name = &h_dentry->d_name; + if (unlikely(do_udba + && !is_root + && ((!h_nfs + && (unhashed != !!d_unhashed(h_dentry) + || (!tmpfile && !dirren + && !au_qstreq(name, h_name)) + )) + || (h_nfs + && !(flags & LOOKUP_OPEN) + && (h_dentry->d_flags + & DCACHE_NFSFS_RENAMED))) + )) { + int h_unhashed; + + h_unhashed = d_unhashed(h_dentry); + spin_unlock(&h_dentry->d_lock); + AuDbg("unhash 0x%x 0x%x, %pd %pd\n", + unhashed, h_unhashed, dentry, h_dentry); + goto err; + } + spin_unlock(&h_dentry->d_lock); + + err = au_do_h_d_reval(h_dentry, flags, dentry, bindex); + if (unlikely(err)) + /* do not goto err, to keep the errno */ + break; + + /* todo: plink too? */ + if (!do_udba) + continue; + + /* UDBA tests */ + if (unlikely(!!inode != d_is_positive(h_dentry))) + goto err; + + h_inode = NULL; + if (d_is_positive(h_dentry)) + h_inode = d_inode(h_dentry); + h_plus = plus; + h_mode = mode; + h_cached_inode = h_inode; + if (h_inode) { + h_mode = (h_inode->i_mode & S_IFMT); + h_plus = (h_inode->i_nlink > 0); + } + if (inode && ibs <= bindex && bindex <= ibe) + h_cached_inode = au_h_iptr(inode, bindex); + + if (!h_nfs) { + if (unlikely(plus != h_plus && !tmpfile)) + goto err; + } else { + if (unlikely(!(h_dentry->d_flags & DCACHE_NFSFS_RENAMED) + && !is_root + && !IS_ROOT(h_dentry) + && unhashed != d_unhashed(h_dentry))) + goto err; + } + if (unlikely(mode != h_mode + || h_cached_inode != h_inode)) + goto err; + continue; + +err: + err = -EINVAL; + break; + } + + AuTraceErr(err); + return err; +} + +/* todo: consolidate with do_refresh() and au_reval_for_attr() */ +static int simple_reval_dpath(struct dentry *dentry, unsigned int sigen) +{ + int err; + struct dentry *parent; + + if (!au_digen_test(dentry, sigen)) + return 0; + + parent = dget_parent(dentry); + di_read_lock_parent(parent, AuLock_IR); + AuDebugOn(au_digen_test(parent, sigen)); + au_dbg_verify_gen(parent, sigen); + err = au_refresh_dentry(dentry, parent); + di_read_unlock(parent, AuLock_IR); + dput(parent); + AuTraceErr(err); + return err; +} + +int au_reval_dpath(struct dentry *dentry, unsigned int sigen) +{ + int err; + struct dentry *d, *parent; + + if (!au_ftest_si(au_sbi(dentry->d_sb), FAILED_REFRESH_DIR)) + return simple_reval_dpath(dentry, sigen); + + /* slow loop, keep it simple and stupid */ + /* cf: au_cpup_dirs() */ + err = 0; + parent = NULL; + while (au_digen_test(dentry, sigen)) { + d = dentry; + while (1) { + dput(parent); + parent = dget_parent(d); + if (!au_digen_test(parent, sigen)) + break; + d = parent; + } + + if (d != dentry) + di_write_lock_child2(d); + + /* someone might update our dentry while we were sleeping */ + if (au_digen_test(d, sigen)) { + /* + * todo: consolidate with simple_reval_dpath(), + * do_refresh() and au_reval_for_attr(). + */ + di_read_lock_parent(parent, AuLock_IR); + err = au_refresh_dentry(d, parent); + di_read_unlock(parent, AuLock_IR); + } + + if (d != dentry) + di_write_unlock(d); + dput(parent); + if (unlikely(err)) + break; + } + + return err; +} + +/* + * if valid returns 1, otherwise 0. + */ +static int aufs_d_revalidate(struct dentry *dentry, unsigned int flags) +{ + int valid, err; + unsigned int sigen; + unsigned char do_udba, dirren; + struct super_block *sb; + struct inode *inode; + + /* todo: support rcu-walk? */ + if (flags & LOOKUP_RCU) + return -ECHILD; + + valid = 0; + if (unlikely(!au_di(dentry))) + goto out; + + valid = 1; + sb = dentry->d_sb; + /* + * todo: very ugly + * i_mutex of parent dir may be held, + * but we should not return 'invalid' due to busy. + */ + err = aufs_read_lock(dentry, AuLock_FLUSH | AuLock_DW | AuLock_NOPLM); + if (unlikely(err)) { + valid = err; + AuTraceErr(err); + goto out; + } + inode = NULL; + if (d_really_is_positive(dentry)) + inode = d_inode(dentry); + if (unlikely(inode && au_is_bad_inode(inode))) { + err = -EINVAL; + AuTraceErr(err); + goto out_dgrade; + } + if (unlikely(au_dbrange_test(dentry))) { + err = -EINVAL; + AuTraceErr(err); + goto out_dgrade; + } + + sigen = au_sigen(sb); + if (au_digen_test(dentry, sigen)) { + AuDebugOn(IS_ROOT(dentry)); + err = au_reval_dpath(dentry, sigen); + if (unlikely(err)) { + AuTraceErr(err); + goto out_dgrade; + } + } + di_downgrade_lock(dentry, AuLock_IR); + + err = -EINVAL; + if (!(flags & (LOOKUP_OPEN | LOOKUP_EMPTY)) + && inode + && !(inode->i_state && I_LINKABLE) + && (IS_DEADDIR(inode) || !inode->i_nlink)) { + AuTraceErr(err); + goto out_inval; + } + + do_udba = !au_opt_test(au_mntflags(sb), UDBA_NONE); + if (do_udba && inode) { + aufs_bindex_t btop = au_ibtop(inode); + struct inode *h_inode; + + if (btop >= 0) { + h_inode = au_h_iptr(inode, btop); + if (h_inode && au_test_higen(inode, h_inode)) { + AuTraceErr(err); + goto out_inval; + } + } + } + + dirren = !!au_opt_test(au_mntflags(sb), DIRREN); + err = h_d_revalidate(dentry, inode, flags, do_udba, dirren); + if (unlikely(!err && do_udba && au_dbtop(dentry) < 0)) { + err = -EIO; + AuDbg("both of real entry and whiteout found, %p, err %d\n", + dentry, err); + } + goto out_inval; + +out_dgrade: + di_downgrade_lock(dentry, AuLock_IR); +out_inval: + aufs_read_unlock(dentry, AuLock_IR); + AuTraceErr(err); + valid = !err; +out: + if (!valid) { + AuDbg("%pd invalid, %d\n", dentry, valid); + d_drop(dentry); + } + return valid; +} + +static void aufs_d_release(struct dentry *dentry) +{ + if (au_di(dentry)) { + au_di_fin(dentry); + au_hn_di_reinit(dentry); + } +} + +const struct dentry_operations aufs_dop = { + .d_revalidate = aufs_d_revalidate, + .d_weak_revalidate = aufs_d_revalidate, + .d_release = aufs_d_release +}; + +/* aufs_dop without d_revalidate */ +const struct dentry_operations aufs_dop_noreval = { + .d_release = aufs_d_release +}; --- linux-azure-5.8-5.8.0.orig/fs/aufs/dentry.h +++ linux-azure-5.8-5.8.0/fs/aufs/dentry.h @@ -0,0 +1,268 @@ +/* SPDX-License-Identifier: GPL-2.0 */ +/* + * Copyright (C) 2005-2020 Junjiro R. Okajima + * + * This program, aufs is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; either version 2 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + */ + +/* + * lookup and dentry operations + */ + +#ifndef __AUFS_DENTRY_H__ +#define __AUFS_DENTRY_H__ + +#ifdef __KERNEL__ + +#include +#include "dirren.h" +#include "rwsem.h" + +struct au_hdentry { + struct dentry *hd_dentry; + aufs_bindex_t hd_id; +}; + +struct au_dinfo { + atomic_t di_generation; + + struct au_rwsem di_rwsem; + aufs_bindex_t di_btop, di_bbot, di_bwh, di_bdiropq; + unsigned char di_tmpfile; /* to allow the different name */ + struct au_hdentry *di_hdentry; + struct rcu_head rcu; +} ____cacheline_aligned_in_smp; + +/* ---------------------------------------------------------------------- */ + +/* flags for au_lkup_dentry() */ +#define AuLkup_ALLOW_NEG 1 +#define AuLkup_IGNORE_PERM (1 << 1) +#define AuLkup_DIRREN (1 << 2) +#define au_ftest_lkup(flags, name) ((flags) & AuLkup_##name) +#define au_fset_lkup(flags, name) \ + do { (flags) |= AuLkup_##name; } while (0) +#define au_fclr_lkup(flags, name) \ + do { (flags) &= ~AuLkup_##name; } while (0) + +#ifndef CONFIG_AUFS_DIRREN +#undef AuLkup_DIRREN +#define AuLkup_DIRREN 0 +#endif + +struct au_do_lookup_args { + unsigned int flags; + mode_t type; + struct qstr whname, *name; + struct au_dr_lookup dirren; +}; + +/* ---------------------------------------------------------------------- */ + +/* dentry.c */ +extern const struct dentry_operations aufs_dop, aufs_dop_noreval; +struct au_branch; +struct dentry *au_sio_lkup_one(struct qstr *name, struct dentry *parent); +int au_h_verify(struct dentry *h_dentry, unsigned int udba, struct inode *h_dir, + struct dentry *h_parent, struct au_branch *br); + +int au_lkup_dentry(struct dentry *dentry, aufs_bindex_t btop, + unsigned int flags); +int au_lkup_neg(struct dentry *dentry, aufs_bindex_t bindex, int wh); +int au_refresh_dentry(struct dentry *dentry, struct dentry *parent); +int au_reval_dpath(struct dentry *dentry, unsigned int sigen); +void au_refresh_dop(struct dentry *dentry, int force_reval); + +/* dinfo.c */ +void au_di_init_once(void *_di); +struct au_dinfo *au_di_alloc(struct super_block *sb, unsigned int lsc); +void au_di_free(struct au_dinfo *dinfo); +void au_di_swap(struct au_dinfo *a, struct au_dinfo *b); +void au_di_cp(struct au_dinfo *dst, struct au_dinfo *src); +int au_di_init(struct dentry *dentry); +void au_di_fin(struct dentry *dentry); +int au_di_realloc(struct au_dinfo *dinfo, int nbr, int may_shrink); + +void di_read_lock(struct dentry *d, int flags, unsigned int lsc); +void di_read_unlock(struct dentry *d, int flags); +void di_downgrade_lock(struct dentry *d, int flags); +void di_write_lock(struct dentry *d, unsigned int lsc); +void di_write_unlock(struct dentry *d); +void di_write_lock2_child(struct dentry *d1, struct dentry *d2, int isdir); +void di_write_lock2_parent(struct dentry *d1, struct dentry *d2, int isdir); +void di_write_unlock2(struct dentry *d1, struct dentry *d2); + +struct dentry *au_h_dptr(struct dentry *dentry, aufs_bindex_t bindex); +struct dentry *au_h_d_alias(struct dentry *dentry, aufs_bindex_t bindex); +aufs_bindex_t au_dbtail(struct dentry *dentry); +aufs_bindex_t au_dbtaildir(struct dentry *dentry); + +void au_set_h_dptr(struct dentry *dentry, aufs_bindex_t bindex, + struct dentry *h_dentry); +int au_digen_test(struct dentry *dentry, unsigned int sigen); +int au_dbrange_test(struct dentry *dentry); +void au_update_digen(struct dentry *dentry); +void au_update_dbrange(struct dentry *dentry, int do_put_zero); +void au_update_dbtop(struct dentry *dentry); +void au_update_dbbot(struct dentry *dentry); +int au_find_dbindex(struct dentry *dentry, struct dentry *h_dentry); + +/* ---------------------------------------------------------------------- */ + +static inline struct au_dinfo *au_di(struct dentry *dentry) +{ + return dentry->d_fsdata; +} + +/* ---------------------------------------------------------------------- */ + +/* lock subclass for dinfo */ +enum { + AuLsc_DI_CHILD, /* child first */ + AuLsc_DI_CHILD2, /* rename(2), link(2), and cpup at hnotify */ + AuLsc_DI_CHILD3, /* copyup dirs */ + AuLsc_DI_PARENT, + AuLsc_DI_PARENT2, + AuLsc_DI_PARENT3, + AuLsc_DI_TMP /* temp for replacing dinfo */ +}; + +/* + * di_read_lock_child, di_write_lock_child, + * di_read_lock_child2, di_write_lock_child2, + * di_read_lock_child3, di_write_lock_child3, + * di_read_lock_parent, di_write_lock_parent, + * di_read_lock_parent2, di_write_lock_parent2, + * di_read_lock_parent3, di_write_lock_parent3, + */ +#define AuReadLockFunc(name, lsc) \ +static inline void di_read_lock_##name(struct dentry *d, int flags) \ +{ di_read_lock(d, flags, AuLsc_DI_##lsc); } + +#define AuWriteLockFunc(name, lsc) \ +static inline void di_write_lock_##name(struct dentry *d) \ +{ di_write_lock(d, AuLsc_DI_##lsc); } + +#define AuRWLockFuncs(name, lsc) \ + AuReadLockFunc(name, lsc) \ + AuWriteLockFunc(name, lsc) + +AuRWLockFuncs(child, CHILD); +AuRWLockFuncs(child2, CHILD2); +AuRWLockFuncs(child3, CHILD3); +AuRWLockFuncs(parent, PARENT); +AuRWLockFuncs(parent2, PARENT2); +AuRWLockFuncs(parent3, PARENT3); + +#undef AuReadLockFunc +#undef AuWriteLockFunc +#undef AuRWLockFuncs + +#define DiMustNoWaiters(d) AuRwMustNoWaiters(&au_di(d)->di_rwsem) +#define DiMustAnyLock(d) AuRwMustAnyLock(&au_di(d)->di_rwsem) +#define DiMustWriteLock(d) AuRwMustWriteLock(&au_di(d)->di_rwsem) + +/* ---------------------------------------------------------------------- */ + +/* todo: memory barrier? */ +static inline unsigned int au_digen(struct dentry *d) +{ + return atomic_read(&au_di(d)->di_generation); +} + +static inline void au_h_dentry_init(struct au_hdentry *hdentry) +{ + hdentry->hd_dentry = NULL; +} + +static inline struct au_hdentry *au_hdentry(struct au_dinfo *di, + aufs_bindex_t bindex) +{ + return di->di_hdentry + bindex; +} + +static inline void au_hdput(struct au_hdentry *hd) +{ + if (hd) + dput(hd->hd_dentry); +} + +static inline aufs_bindex_t au_dbtop(struct dentry *dentry) +{ + DiMustAnyLock(dentry); + return au_di(dentry)->di_btop; +} + +static inline aufs_bindex_t au_dbbot(struct dentry *dentry) +{ + DiMustAnyLock(dentry); + return au_di(dentry)->di_bbot; +} + +static inline aufs_bindex_t au_dbwh(struct dentry *dentry) +{ + DiMustAnyLock(dentry); + return au_di(dentry)->di_bwh; +} + +static inline aufs_bindex_t au_dbdiropq(struct dentry *dentry) +{ + DiMustAnyLock(dentry); + return au_di(dentry)->di_bdiropq; +} + +/* todo: hard/soft set? */ +static inline void au_set_dbtop(struct dentry *dentry, aufs_bindex_t bindex) +{ + DiMustWriteLock(dentry); + au_di(dentry)->di_btop = bindex; +} + +static inline void au_set_dbbot(struct dentry *dentry, aufs_bindex_t bindex) +{ + DiMustWriteLock(dentry); + au_di(dentry)->di_bbot = bindex; +} + +static inline void au_set_dbwh(struct dentry *dentry, aufs_bindex_t bindex) +{ + DiMustWriteLock(dentry); + /* dbwh can be outside of btop - bbot range */ + au_di(dentry)->di_bwh = bindex; +} + +static inline void au_set_dbdiropq(struct dentry *dentry, aufs_bindex_t bindex) +{ + DiMustWriteLock(dentry); + au_di(dentry)->di_bdiropq = bindex; +} + +/* ---------------------------------------------------------------------- */ + +#ifdef CONFIG_AUFS_HNOTIFY +static inline void au_digen_dec(struct dentry *d) +{ + atomic_dec(&au_di(d)->di_generation); +} + +static inline void au_hn_di_reinit(struct dentry *dentry) +{ + dentry->d_fsdata = NULL; +} +#else +AuStubVoid(au_hn_di_reinit, struct dentry *dentry __maybe_unused) +#endif /* CONFIG_AUFS_HNOTIFY */ + +#endif /* __KERNEL__ */ +#endif /* __AUFS_DENTRY_H__ */ --- linux-azure-5.8-5.8.0.orig/fs/aufs/dinfo.c +++ linux-azure-5.8-5.8.0/fs/aufs/dinfo.c @@ -0,0 +1,554 @@ +// SPDX-License-Identifier: GPL-2.0 +/* + * Copyright (C) 2005-2020 Junjiro R. Okajima + * + * This program, aufs is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; either version 2 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + */ + +/* + * dentry private data + */ + +#include "aufs.h" + +void au_di_init_once(void *_dinfo) +{ + struct au_dinfo *dinfo = _dinfo; + + au_rw_init(&dinfo->di_rwsem); +} + +struct au_dinfo *au_di_alloc(struct super_block *sb, unsigned int lsc) +{ + struct au_dinfo *dinfo; + int nbr, i; + + dinfo = au_cache_alloc_dinfo(); + if (unlikely(!dinfo)) + goto out; + + nbr = au_sbbot(sb) + 1; + if (nbr <= 0) + nbr = 1; + dinfo->di_hdentry = kcalloc(nbr, sizeof(*dinfo->di_hdentry), GFP_NOFS); + if (dinfo->di_hdentry) { + au_rw_write_lock_nested(&dinfo->di_rwsem, lsc); + dinfo->di_btop = -1; + dinfo->di_bbot = -1; + dinfo->di_bwh = -1; + dinfo->di_bdiropq = -1; + dinfo->di_tmpfile = 0; + for (i = 0; i < nbr; i++) + dinfo->di_hdentry[i].hd_id = -1; + goto out; + } + + au_cache_free_dinfo(dinfo); + dinfo = NULL; + +out: + return dinfo; +} + +void au_di_free(struct au_dinfo *dinfo) +{ + struct au_hdentry *p; + aufs_bindex_t bbot, bindex; + + /* dentry may not be revalidated */ + bindex = dinfo->di_btop; + if (bindex >= 0) { + bbot = dinfo->di_bbot; + p = au_hdentry(dinfo, bindex); + while (bindex++ <= bbot) + au_hdput(p++); + } + au_kfree_try_rcu(dinfo->di_hdentry); + au_cache_free_dinfo(dinfo); +} + +void au_di_swap(struct au_dinfo *a, struct au_dinfo *b) +{ + struct au_hdentry *p; + aufs_bindex_t bi; + + AuRwMustWriteLock(&a->di_rwsem); + AuRwMustWriteLock(&b->di_rwsem); + +#define DiSwap(v, name) \ + do { \ + v = a->di_##name; \ + a->di_##name = b->di_##name; \ + b->di_##name = v; \ + } while (0) + + DiSwap(p, hdentry); + DiSwap(bi, btop); + DiSwap(bi, bbot); + DiSwap(bi, bwh); + DiSwap(bi, bdiropq); + /* smp_mb(); */ + +#undef DiSwap +} + +void au_di_cp(struct au_dinfo *dst, struct au_dinfo *src) +{ + AuRwMustWriteLock(&dst->di_rwsem); + AuRwMustWriteLock(&src->di_rwsem); + + dst->di_btop = src->di_btop; + dst->di_bbot = src->di_bbot; + dst->di_bwh = src->di_bwh; + dst->di_bdiropq = src->di_bdiropq; + /* smp_mb(); */ +} + +int au_di_init(struct dentry *dentry) +{ + int err; + struct super_block *sb; + struct au_dinfo *dinfo; + + err = 0; + sb = dentry->d_sb; + dinfo = au_di_alloc(sb, AuLsc_DI_CHILD); + if (dinfo) { + atomic_set(&dinfo->di_generation, au_sigen(sb)); + /* smp_mb(); */ /* atomic_set */ + dentry->d_fsdata = dinfo; + } else + err = -ENOMEM; + + return err; +} + +void au_di_fin(struct dentry *dentry) +{ + struct au_dinfo *dinfo; + + dinfo = au_di(dentry); + AuRwDestroy(&dinfo->di_rwsem); + au_di_free(dinfo); +} + +int au_di_realloc(struct au_dinfo *dinfo, int nbr, int may_shrink) +{ + int err, sz; + struct au_hdentry *hdp; + + AuRwMustWriteLock(&dinfo->di_rwsem); + + err = -ENOMEM; + sz = sizeof(*hdp) * (dinfo->di_bbot + 1); + if (!sz) + sz = sizeof(*hdp); + hdp = au_kzrealloc(dinfo->di_hdentry, sz, sizeof(*hdp) * nbr, GFP_NOFS, + may_shrink); + if (hdp) { + dinfo->di_hdentry = hdp; + err = 0; + } + + return err; +} + +/* ---------------------------------------------------------------------- */ + +static void do_ii_write_lock(struct inode *inode, unsigned int lsc) +{ + switch (lsc) { + case AuLsc_DI_CHILD: + ii_write_lock_child(inode); + break; + case AuLsc_DI_CHILD2: + ii_write_lock_child2(inode); + break; + case AuLsc_DI_CHILD3: + ii_write_lock_child3(inode); + break; + case AuLsc_DI_PARENT: + ii_write_lock_parent(inode); + break; + case AuLsc_DI_PARENT2: + ii_write_lock_parent2(inode); + break; + case AuLsc_DI_PARENT3: + ii_write_lock_parent3(inode); + break; + default: + BUG(); + } +} + +static void do_ii_read_lock(struct inode *inode, unsigned int lsc) +{ + switch (lsc) { + case AuLsc_DI_CHILD: + ii_read_lock_child(inode); + break; + case AuLsc_DI_CHILD2: + ii_read_lock_child2(inode); + break; + case AuLsc_DI_CHILD3: + ii_read_lock_child3(inode); + break; + case AuLsc_DI_PARENT: + ii_read_lock_parent(inode); + break; + case AuLsc_DI_PARENT2: + ii_read_lock_parent2(inode); + break; + case AuLsc_DI_PARENT3: + ii_read_lock_parent3(inode); + break; + default: + BUG(); + } +} + +void di_read_lock(struct dentry *d, int flags, unsigned int lsc) +{ + struct inode *inode; + + au_rw_read_lock_nested(&au_di(d)->di_rwsem, lsc); + if (d_really_is_positive(d)) { + inode = d_inode(d); + if (au_ftest_lock(flags, IW)) + do_ii_write_lock(inode, lsc); + else if (au_ftest_lock(flags, IR)) + do_ii_read_lock(inode, lsc); + } +} + +void di_read_unlock(struct dentry *d, int flags) +{ + struct inode *inode; + + if (d_really_is_positive(d)) { + inode = d_inode(d); + if (au_ftest_lock(flags, IW)) { + au_dbg_verify_dinode(d); + ii_write_unlock(inode); + } else if (au_ftest_lock(flags, IR)) { + au_dbg_verify_dinode(d); + ii_read_unlock(inode); + } + } + au_rw_read_unlock(&au_di(d)->di_rwsem); +} + +void di_downgrade_lock(struct dentry *d, int flags) +{ + if (d_really_is_positive(d) && au_ftest_lock(flags, IR)) + ii_downgrade_lock(d_inode(d)); + au_rw_dgrade_lock(&au_di(d)->di_rwsem); +} + +void di_write_lock(struct dentry *d, unsigned int lsc) +{ + au_rw_write_lock_nested(&au_di(d)->di_rwsem, lsc); + if (d_really_is_positive(d)) + do_ii_write_lock(d_inode(d), lsc); +} + +void di_write_unlock(struct dentry *d) +{ + au_dbg_verify_dinode(d); + if (d_really_is_positive(d)) + ii_write_unlock(d_inode(d)); + au_rw_write_unlock(&au_di(d)->di_rwsem); +} + +void di_write_lock2_child(struct dentry *d1, struct dentry *d2, int isdir) +{ + AuDebugOn(d1 == d2 + || d_inode(d1) == d_inode(d2) + || d1->d_sb != d2->d_sb); + + if ((isdir && au_test_subdir(d1, d2)) + || d1 < d2) { + di_write_lock_child(d1); + di_write_lock_child2(d2); + } else { + di_write_lock_child(d2); + di_write_lock_child2(d1); + } +} + +void di_write_lock2_parent(struct dentry *d1, struct dentry *d2, int isdir) +{ + AuDebugOn(d1 == d2 + || d_inode(d1) == d_inode(d2) + || d1->d_sb != d2->d_sb); + + if ((isdir && au_test_subdir(d1, d2)) + || d1 < d2) { + di_write_lock_parent(d1); + di_write_lock_parent2(d2); + } else { + di_write_lock_parent(d2); + di_write_lock_parent2(d1); + } +} + +void di_write_unlock2(struct dentry *d1, struct dentry *d2) +{ + di_write_unlock(d1); + if (d_inode(d1) == d_inode(d2)) + au_rw_write_unlock(&au_di(d2)->di_rwsem); + else + di_write_unlock(d2); +} + +/* ---------------------------------------------------------------------- */ + +struct dentry *au_h_dptr(struct dentry *dentry, aufs_bindex_t bindex) +{ + struct dentry *d; + + DiMustAnyLock(dentry); + + if (au_dbtop(dentry) < 0 || bindex < au_dbtop(dentry)) + return NULL; + AuDebugOn(bindex < 0); + d = au_hdentry(au_di(dentry), bindex)->hd_dentry; + AuDebugOn(d && au_dcount(d) <= 0); + return d; +} + +/* + * extended version of au_h_dptr(). + * returns a hashed and positive (or linkable) h_dentry in bindex, NULL, or + * error. + */ +struct dentry *au_h_d_alias(struct dentry *dentry, aufs_bindex_t bindex) +{ + struct dentry *h_dentry; + struct inode *inode, *h_inode; + + AuDebugOn(d_really_is_negative(dentry)); + + h_dentry = NULL; + if (au_dbtop(dentry) <= bindex + && bindex <= au_dbbot(dentry)) + h_dentry = au_h_dptr(dentry, bindex); + if (h_dentry && !au_d_linkable(h_dentry)) { + dget(h_dentry); + goto out; /* success */ + } + + inode = d_inode(dentry); + AuDebugOn(bindex < au_ibtop(inode)); + AuDebugOn(au_ibbot(inode) < bindex); + h_inode = au_h_iptr(inode, bindex); + h_dentry = d_find_alias(h_inode); + if (h_dentry) { + if (!IS_ERR(h_dentry)) { + if (!au_d_linkable(h_dentry)) + goto out; /* success */ + dput(h_dentry); + } else + goto out; + } + + if (au_opt_test(au_mntflags(dentry->d_sb), PLINK)) { + h_dentry = au_plink_lkup(inode, bindex); + AuDebugOn(!h_dentry); + if (!IS_ERR(h_dentry)) { + if (!au_d_hashed_positive(h_dentry)) + goto out; /* success */ + dput(h_dentry); + h_dentry = NULL; + } + } + +out: + AuDbgDentry(h_dentry); + return h_dentry; +} + +aufs_bindex_t au_dbtail(struct dentry *dentry) +{ + aufs_bindex_t bbot, bwh; + + bbot = au_dbbot(dentry); + if (0 <= bbot) { + bwh = au_dbwh(dentry); + if (!bwh) + return bwh; + if (0 < bwh && bwh < bbot) + return bwh - 1; + } + return bbot; +} + +aufs_bindex_t au_dbtaildir(struct dentry *dentry) +{ + aufs_bindex_t bbot, bopq; + + bbot = au_dbtail(dentry); + if (0 <= bbot) { + bopq = au_dbdiropq(dentry); + if (0 <= bopq && bopq < bbot) + bbot = bopq; + } + return bbot; +} + +/* ---------------------------------------------------------------------- */ + +void au_set_h_dptr(struct dentry *dentry, aufs_bindex_t bindex, + struct dentry *h_dentry) +{ + struct au_dinfo *dinfo; + struct au_hdentry *hd; + struct au_branch *br; + + DiMustWriteLock(dentry); + + dinfo = au_di(dentry); + hd = au_hdentry(dinfo, bindex); + au_hdput(hd); + hd->hd_dentry = h_dentry; + if (h_dentry) { + br = au_sbr(dentry->d_sb, bindex); + hd->hd_id = br->br_id; + } +} + +int au_dbrange_test(struct dentry *dentry) +{ + int err; + aufs_bindex_t btop, bbot; + + err = 0; + btop = au_dbtop(dentry); + bbot = au_dbbot(dentry); + if (btop >= 0) + AuDebugOn(bbot < 0 && btop > bbot); + else { + err = -EIO; + AuDebugOn(bbot >= 0); + } + + return err; +} + +int au_digen_test(struct dentry *dentry, unsigned int sigen) +{ + int err; + + err = 0; + if (unlikely(au_digen(dentry) != sigen + || au_iigen_test(d_inode(dentry), sigen))) + err = -EIO; + + return err; +} + +void au_update_digen(struct dentry *dentry) +{ + atomic_set(&au_di(dentry)->di_generation, au_sigen(dentry->d_sb)); + /* smp_mb(); */ /* atomic_set */ +} + +void au_update_dbrange(struct dentry *dentry, int do_put_zero) +{ + struct au_dinfo *dinfo; + struct dentry *h_d; + struct au_hdentry *hdp; + aufs_bindex_t bindex, bbot; + + DiMustWriteLock(dentry); + + dinfo = au_di(dentry); + if (!dinfo || dinfo->di_btop < 0) + return; + + if (do_put_zero) { + bbot = dinfo->di_bbot; + bindex = dinfo->di_btop; + hdp = au_hdentry(dinfo, bindex); + for (; bindex <= bbot; bindex++, hdp++) { + h_d = hdp->hd_dentry; + if (h_d && d_is_negative(h_d)) + au_set_h_dptr(dentry, bindex, NULL); + } + } + + dinfo->di_btop = 0; + hdp = au_hdentry(dinfo, dinfo->di_btop); + for (; dinfo->di_btop <= dinfo->di_bbot; dinfo->di_btop++, hdp++) + if (hdp->hd_dentry) + break; + if (dinfo->di_btop > dinfo->di_bbot) { + dinfo->di_btop = -1; + dinfo->di_bbot = -1; + return; + } + + hdp = au_hdentry(dinfo, dinfo->di_bbot); + for (; dinfo->di_bbot >= 0; dinfo->di_bbot--, hdp--) + if (hdp->hd_dentry) + break; + AuDebugOn(dinfo->di_btop > dinfo->di_bbot || dinfo->di_bbot < 0); +} + +void au_update_dbtop(struct dentry *dentry) +{ + aufs_bindex_t bindex, bbot; + struct dentry *h_dentry; + + bbot = au_dbbot(dentry); + for (bindex = au_dbtop(dentry); bindex <= bbot; bindex++) { + h_dentry = au_h_dptr(dentry, bindex); + if (!h_dentry) + continue; + if (d_is_positive(h_dentry)) { + au_set_dbtop(dentry, bindex); + return; + } + au_set_h_dptr(dentry, bindex, NULL); + } +} + +void au_update_dbbot(struct dentry *dentry) +{ + aufs_bindex_t bindex, btop; + struct dentry *h_dentry; + + btop = au_dbtop(dentry); + for (bindex = au_dbbot(dentry); bindex >= btop; bindex--) { + h_dentry = au_h_dptr(dentry, bindex); + if (!h_dentry) + continue; + if (d_is_positive(h_dentry)) { + au_set_dbbot(dentry, bindex); + return; + } + au_set_h_dptr(dentry, bindex, NULL); + } +} + +int au_find_dbindex(struct dentry *dentry, struct dentry *h_dentry) +{ + aufs_bindex_t bindex, bbot; + + bbot = au_dbbot(dentry); + for (bindex = au_dbtop(dentry); bindex <= bbot; bindex++) + if (au_h_dptr(dentry, bindex) == h_dentry) + return bindex; + return -1; +} --- linux-azure-5.8-5.8.0.orig/fs/aufs/dir.c +++ linux-azure-5.8-5.8.0/fs/aufs/dir.c @@ -0,0 +1,763 @@ +// SPDX-License-Identifier: GPL-2.0 +/* + * Copyright (C) 2005-2020 Junjiro R. Okajima + * + * This program, aufs is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; either version 2 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + */ + +/* + * directory operations + */ + +#include +#include +#include "aufs.h" + +void au_add_nlink(struct inode *dir, struct inode *h_dir) +{ + unsigned int nlink; + + AuDebugOn(!S_ISDIR(dir->i_mode) || !S_ISDIR(h_dir->i_mode)); + + nlink = dir->i_nlink; + nlink += h_dir->i_nlink - 2; + if (h_dir->i_nlink < 2) + nlink += 2; + smp_mb(); /* for i_nlink */ + /* 0 can happen in revaliding */ + set_nlink(dir, nlink); +} + +void au_sub_nlink(struct inode *dir, struct inode *h_dir) +{ + unsigned int nlink; + + AuDebugOn(!S_ISDIR(dir->i_mode) || !S_ISDIR(h_dir->i_mode)); + + nlink = dir->i_nlink; + nlink -= h_dir->i_nlink - 2; + if (h_dir->i_nlink < 2) + nlink -= 2; + smp_mb(); /* for i_nlink */ + /* nlink == 0 means the branch-fs is broken */ + set_nlink(dir, nlink); +} + +loff_t au_dir_size(struct file *file, struct dentry *dentry) +{ + loff_t sz; + aufs_bindex_t bindex, bbot; + struct file *h_file; + struct dentry *h_dentry; + + sz = 0; + if (file) { + AuDebugOn(!d_is_dir(file->f_path.dentry)); + + bbot = au_fbbot_dir(file); + for (bindex = au_fbtop(file); + bindex <= bbot && sz < KMALLOC_MAX_SIZE; + bindex++) { + h_file = au_hf_dir(file, bindex); + if (h_file && file_inode(h_file)) + sz += vfsub_f_size_read(h_file); + } + } else { + AuDebugOn(!dentry); + AuDebugOn(!d_is_dir(dentry)); + + bbot = au_dbtaildir(dentry); + for (bindex = au_dbtop(dentry); + bindex <= bbot && sz < KMALLOC_MAX_SIZE; + bindex++) { + h_dentry = au_h_dptr(dentry, bindex); + if (h_dentry && d_is_positive(h_dentry)) + sz += i_size_read(d_inode(h_dentry)); + } + } + if (sz < KMALLOC_MAX_SIZE) + sz = roundup_pow_of_two(sz); + if (sz > KMALLOC_MAX_SIZE) + sz = KMALLOC_MAX_SIZE; + else if (sz < NAME_MAX) { + BUILD_BUG_ON(AUFS_RDBLK_DEF < NAME_MAX); + sz = AUFS_RDBLK_DEF; + } + return sz; +} + +struct au_dir_ts_arg { + struct dentry *dentry; + aufs_bindex_t brid; +}; + +static void au_do_dir_ts(void *arg) +{ + struct au_dir_ts_arg *a = arg; + struct au_dtime dt; + struct path h_path; + struct inode *dir, *h_dir; + struct super_block *sb; + struct au_branch *br; + struct au_hinode *hdir; + int err; + aufs_bindex_t btop, bindex; + + sb = a->dentry->d_sb; + if (d_really_is_negative(a->dentry)) + goto out; + /* no dir->i_mutex lock */ + aufs_read_lock(a->dentry, AuLock_DW); /* noflush */ + + dir = d_inode(a->dentry); + btop = au_ibtop(dir); + bindex = au_br_index(sb, a->brid); + if (bindex < btop) + goto out_unlock; + + br = au_sbr(sb, bindex); + h_path.dentry = au_h_dptr(a->dentry, bindex); + if (!h_path.dentry) + goto out_unlock; + h_path.mnt = au_br_mnt(br); + au_dtime_store(&dt, a->dentry, &h_path); + + br = au_sbr(sb, btop); + if (!au_br_writable(br->br_perm)) + goto out_unlock; + h_path.dentry = au_h_dptr(a->dentry, btop); + h_path.mnt = au_br_mnt(br); + err = vfsub_mnt_want_write(h_path.mnt); + if (err) + goto out_unlock; + hdir = au_hi(dir, btop); + au_hn_inode_lock_nested(hdir, AuLsc_I_PARENT); + h_dir = au_h_iptr(dir, btop); + if (h_dir->i_nlink + && timespec64_compare(&h_dir->i_mtime, &dt.dt_mtime) < 0) { + dt.dt_h_path = h_path; + au_dtime_revert(&dt); + } + au_hn_inode_unlock(hdir); + vfsub_mnt_drop_write(h_path.mnt); + au_cpup_attr_timesizes(dir); + +out_unlock: + aufs_read_unlock(a->dentry, AuLock_DW); +out: + dput(a->dentry); + au_nwt_done(&au_sbi(sb)->si_nowait); + au_kfree_try_rcu(arg); +} + +void au_dir_ts(struct inode *dir, aufs_bindex_t bindex) +{ + int perm, wkq_err; + aufs_bindex_t btop; + struct au_dir_ts_arg *arg; + struct dentry *dentry; + struct super_block *sb; + + IMustLock(dir); + + dentry = d_find_any_alias(dir); + AuDebugOn(!dentry); + sb = dentry->d_sb; + btop = au_ibtop(dir); + if (btop == bindex) { + au_cpup_attr_timesizes(dir); + goto out; + } + + perm = au_sbr_perm(sb, btop); + if (!au_br_writable(perm)) + goto out; + + arg = kmalloc(sizeof(*arg), GFP_NOFS); + if (!arg) + goto out; + + arg->dentry = dget(dentry); /* will be dput-ted by au_do_dir_ts() */ + arg->brid = au_sbr_id(sb, bindex); + wkq_err = au_wkq_nowait(au_do_dir_ts, arg, sb, /*flags*/0); + if (unlikely(wkq_err)) { + pr_err("wkq %d\n", wkq_err); + dput(dentry); + au_kfree_try_rcu(arg); + } + +out: + dput(dentry); +} + +/* ---------------------------------------------------------------------- */ + +static int reopen_dir(struct file *file) +{ + int err; + unsigned int flags; + aufs_bindex_t bindex, btail, btop; + struct dentry *dentry, *h_dentry; + struct file *h_file; + + /* open all lower dirs */ + dentry = file->f_path.dentry; + btop = au_dbtop(dentry); + for (bindex = au_fbtop(file); bindex < btop; bindex++) + au_set_h_fptr(file, bindex, NULL); + au_set_fbtop(file, btop); + + btail = au_dbtaildir(dentry); + for (bindex = au_fbbot_dir(file); btail < bindex; bindex--) + au_set_h_fptr(file, bindex, NULL); + au_set_fbbot_dir(file, btail); + + flags = vfsub_file_flags(file); + for (bindex = btop; bindex <= btail; bindex++) { + h_dentry = au_h_dptr(dentry, bindex); + if (!h_dentry) + continue; + h_file = au_hf_dir(file, bindex); + if (h_file) + continue; + + h_file = au_h_open(dentry, bindex, flags, file, /*force_wr*/0); + err = PTR_ERR(h_file); + if (IS_ERR(h_file)) + goto out; /* close all? */ + au_set_h_fptr(file, bindex, h_file); + } + au_update_figen(file); + /* todo: necessary? */ + /* file->f_ra = h_file->f_ra; */ + err = 0; + +out: + return err; +} + +static int do_open_dir(struct file *file, int flags, struct file *h_file) +{ + int err; + aufs_bindex_t bindex, btail; + struct dentry *dentry, *h_dentry; + struct vfsmount *mnt; + + FiMustWriteLock(file); + AuDebugOn(h_file); + + err = 0; + mnt = file->f_path.mnt; + dentry = file->f_path.dentry; + file->f_version = inode_query_iversion(d_inode(dentry)); + bindex = au_dbtop(dentry); + au_set_fbtop(file, bindex); + btail = au_dbtaildir(dentry); + au_set_fbbot_dir(file, btail); + for (; !err && bindex <= btail; bindex++) { + h_dentry = au_h_dptr(dentry, bindex); + if (!h_dentry) + continue; + + err = vfsub_test_mntns(mnt, h_dentry->d_sb); + if (unlikely(err)) + break; + h_file = au_h_open(dentry, bindex, flags, file, /*force_wr*/0); + if (IS_ERR(h_file)) { + err = PTR_ERR(h_file); + break; + } + au_set_h_fptr(file, bindex, h_file); + } + au_update_figen(file); + /* todo: necessary? */ + /* file->f_ra = h_file->f_ra; */ + if (!err) + return 0; /* success */ + + /* close all */ + for (bindex = au_fbtop(file); bindex <= btail; bindex++) + au_set_h_fptr(file, bindex, NULL); + au_set_fbtop(file, -1); + au_set_fbbot_dir(file, -1); + + return err; +} + +static int aufs_open_dir(struct inode *inode __maybe_unused, + struct file *file) +{ + int err; + struct super_block *sb; + struct au_fidir *fidir; + + err = -ENOMEM; + sb = file->f_path.dentry->d_sb; + si_read_lock(sb, AuLock_FLUSH); + fidir = au_fidir_alloc(sb); + if (fidir) { + struct au_do_open_args args = { + .open = do_open_dir, + .fidir = fidir + }; + err = au_do_open(file, &args); + if (unlikely(err)) + au_kfree_rcu(fidir); + } + si_read_unlock(sb); + return err; +} + +static int aufs_release_dir(struct inode *inode __maybe_unused, + struct file *file) +{ + struct au_vdir *vdir_cache; + struct au_finfo *finfo; + struct au_fidir *fidir; + struct au_hfile *hf; + aufs_bindex_t bindex, bbot; + + finfo = au_fi(file); + fidir = finfo->fi_hdir; + if (fidir) { + au_hbl_del(&finfo->fi_hlist, + &au_sbi(file->f_path.dentry->d_sb)->si_files); + vdir_cache = fidir->fd_vdir_cache; /* lock-free */ + if (vdir_cache) + au_vdir_free(vdir_cache); + + bindex = finfo->fi_btop; + if (bindex >= 0) { + hf = fidir->fd_hfile + bindex; + /* + * calls fput() instead of filp_close(), + * since no dnotify or lock for the lower file. + */ + bbot = fidir->fd_bbot; + for (; bindex <= bbot; bindex++, hf++) + if (hf->hf_file) + au_hfput(hf, /*execed*/0); + } + au_kfree_rcu(fidir); + finfo->fi_hdir = NULL; + } + au_finfo_fin(file); + return 0; +} + +/* ---------------------------------------------------------------------- */ + +static int au_do_flush_dir(struct file *file, fl_owner_t id) +{ + int err; + aufs_bindex_t bindex, bbot; + struct file *h_file; + + err = 0; + bbot = au_fbbot_dir(file); + for (bindex = au_fbtop(file); !err && bindex <= bbot; bindex++) { + h_file = au_hf_dir(file, bindex); + if (h_file) + err = vfsub_flush(h_file, id); + } + return err; +} + +static int aufs_flush_dir(struct file *file, fl_owner_t id) +{ + return au_do_flush(file, id, au_do_flush_dir); +} + +/* ---------------------------------------------------------------------- */ + +static int au_do_fsync_dir_no_file(struct dentry *dentry, int datasync) +{ + int err; + aufs_bindex_t bbot, bindex; + struct inode *inode; + struct super_block *sb; + + err = 0; + sb = dentry->d_sb; + inode = d_inode(dentry); + IMustLock(inode); + bbot = au_dbbot(dentry); + for (bindex = au_dbtop(dentry); !err && bindex <= bbot; bindex++) { + struct path h_path; + + if (au_test_ro(sb, bindex, inode)) + continue; + h_path.dentry = au_h_dptr(dentry, bindex); + if (!h_path.dentry) + continue; + + h_path.mnt = au_sbr_mnt(sb, bindex); + err = vfsub_fsync(NULL, &h_path, datasync); + } + + return err; +} + +static int au_do_fsync_dir(struct file *file, int datasync) +{ + int err; + aufs_bindex_t bbot, bindex; + struct file *h_file; + struct super_block *sb; + struct inode *inode; + + err = au_reval_and_lock_fdi(file, reopen_dir, /*wlock*/1, /*fi_lsc*/0); + if (unlikely(err)) + goto out; + + inode = file_inode(file); + sb = inode->i_sb; + bbot = au_fbbot_dir(file); + for (bindex = au_fbtop(file); !err && bindex <= bbot; bindex++) { + h_file = au_hf_dir(file, bindex); + if (!h_file || au_test_ro(sb, bindex, inode)) + continue; + + err = vfsub_fsync(h_file, &h_file->f_path, datasync); + } + +out: + return err; +} + +/* + * @file may be NULL + */ +static int aufs_fsync_dir(struct file *file, loff_t start, loff_t end, + int datasync) +{ + int err; + struct dentry *dentry; + struct inode *inode; + struct super_block *sb; + + err = 0; + dentry = file->f_path.dentry; + inode = d_inode(dentry); + inode_lock(inode); + sb = dentry->d_sb; + si_noflush_read_lock(sb); + if (file) + err = au_do_fsync_dir(file, datasync); + else { + di_write_lock_child(dentry); + err = au_do_fsync_dir_no_file(dentry, datasync); + } + au_cpup_attr_timesizes(inode); + di_write_unlock(dentry); + if (file) + fi_write_unlock(file); + + si_read_unlock(sb); + inode_unlock(inode); + return err; +} + +/* ---------------------------------------------------------------------- */ + +static int aufs_iterate_shared(struct file *file, struct dir_context *ctx) +{ + int err; + struct dentry *dentry; + struct inode *inode, *h_inode; + struct super_block *sb; + + AuDbg("%pD, ctx{%ps, %llu}\n", file, ctx->actor, ctx->pos); + + dentry = file->f_path.dentry; + inode = d_inode(dentry); + IMustLock(inode); + + sb = dentry->d_sb; + si_read_lock(sb, AuLock_FLUSH); + err = au_reval_and_lock_fdi(file, reopen_dir, /*wlock*/1, /*fi_lsc*/0); + if (unlikely(err)) + goto out; + err = au_alive_dir(dentry); + if (!err) + err = au_vdir_init(file); + di_downgrade_lock(dentry, AuLock_IR); + if (unlikely(err)) + goto out_unlock; + + h_inode = au_h_iptr(inode, au_ibtop(inode)); + if (!au_test_nfsd()) { + err = au_vdir_fill_de(file, ctx); + fsstack_copy_attr_atime(inode, h_inode); + } else { + /* + * nfsd filldir may call lookup_one_len(), vfs_getattr(), + * encode_fh() and others. + */ + atomic_inc(&h_inode->i_count); + di_read_unlock(dentry, AuLock_IR); + si_read_unlock(sb); + err = au_vdir_fill_de(file, ctx); + fsstack_copy_attr_atime(inode, h_inode); + fi_write_unlock(file); + iput(h_inode); + + AuTraceErr(err); + return err; + } + +out_unlock: + di_read_unlock(dentry, AuLock_IR); + fi_write_unlock(file); +out: + si_read_unlock(sb); + return err; +} + +/* ---------------------------------------------------------------------- */ + +#define AuTestEmpty_WHONLY 1 +#define AuTestEmpty_CALLED (1 << 1) +#define AuTestEmpty_SHWH (1 << 2) +#define au_ftest_testempty(flags, name) ((flags) & AuTestEmpty_##name) +#define au_fset_testempty(flags, name) \ + do { (flags) |= AuTestEmpty_##name; } while (0) +#define au_fclr_testempty(flags, name) \ + do { (flags) &= ~AuTestEmpty_##name; } while (0) + +#ifndef CONFIG_AUFS_SHWH +#undef AuTestEmpty_SHWH +#define AuTestEmpty_SHWH 0 +#endif + +struct test_empty_arg { + struct dir_context ctx; + struct au_nhash *whlist; + unsigned int flags; + int err; + aufs_bindex_t bindex; +}; + +static int test_empty_cb(struct dir_context *ctx, const char *__name, + int namelen, loff_t offset __maybe_unused, u64 ino, + unsigned int d_type) +{ + struct test_empty_arg *arg = container_of(ctx, struct test_empty_arg, + ctx); + char *name = (void *)__name; + + arg->err = 0; + au_fset_testempty(arg->flags, CALLED); + /* smp_mb(); */ + if (name[0] == '.' + && (namelen == 1 || (name[1] == '.' && namelen == 2))) + goto out; /* success */ + + if (namelen <= AUFS_WH_PFX_LEN + || memcmp(name, AUFS_WH_PFX, AUFS_WH_PFX_LEN)) { + if (au_ftest_testempty(arg->flags, WHONLY) + && !au_nhash_test_known_wh(arg->whlist, name, namelen)) + arg->err = -ENOTEMPTY; + goto out; + } + + name += AUFS_WH_PFX_LEN; + namelen -= AUFS_WH_PFX_LEN; + if (!au_nhash_test_known_wh(arg->whlist, name, namelen)) + arg->err = au_nhash_append_wh + (arg->whlist, name, namelen, ino, d_type, arg->bindex, + au_ftest_testempty(arg->flags, SHWH)); + +out: + /* smp_mb(); */ + AuTraceErr(arg->err); + return arg->err; +} + +static int do_test_empty(struct dentry *dentry, struct test_empty_arg *arg) +{ + int err; + struct file *h_file; + struct au_branch *br; + + h_file = au_h_open(dentry, arg->bindex, + O_RDONLY | O_NONBLOCK | O_DIRECTORY | O_LARGEFILE, + /*file*/NULL, /*force_wr*/0); + err = PTR_ERR(h_file); + if (IS_ERR(h_file)) + goto out; + + err = 0; + if (!au_opt_test(au_mntflags(dentry->d_sb), UDBA_NONE) + && !file_inode(h_file)->i_nlink) + goto out_put; + + do { + arg->err = 0; + au_fclr_testempty(arg->flags, CALLED); + /* smp_mb(); */ + err = vfsub_iterate_dir(h_file, &arg->ctx); + if (err >= 0) + err = arg->err; + } while (!err && au_ftest_testempty(arg->flags, CALLED)); + +out_put: + fput(h_file); + br = au_sbr(dentry->d_sb, arg->bindex); + au_lcnt_dec(&br->br_nfiles); +out: + return err; +} + +struct do_test_empty_args { + int *errp; + struct dentry *dentry; + struct test_empty_arg *arg; +}; + +static void call_do_test_empty(void *args) +{ + struct do_test_empty_args *a = args; + *a->errp = do_test_empty(a->dentry, a->arg); +} + +static int sio_test_empty(struct dentry *dentry, struct test_empty_arg *arg) +{ + int err, wkq_err; + struct dentry *h_dentry; + struct inode *h_inode; + + h_dentry = au_h_dptr(dentry, arg->bindex); + h_inode = d_inode(h_dentry); + /* todo: i_mode changes anytime? */ + inode_lock_shared_nested(h_inode, AuLsc_I_CHILD); + err = au_test_h_perm_sio(h_inode, MAY_EXEC | MAY_READ); + inode_unlock_shared(h_inode); + if (!err) + err = do_test_empty(dentry, arg); + else { + struct do_test_empty_args args = { + .errp = &err, + .dentry = dentry, + .arg = arg + }; + unsigned int flags = arg->flags; + + wkq_err = au_wkq_wait(call_do_test_empty, &args); + if (unlikely(wkq_err)) + err = wkq_err; + arg->flags = flags; + } + + return err; +} + +int au_test_empty_lower(struct dentry *dentry) +{ + int err; + unsigned int rdhash; + aufs_bindex_t bindex, btop, btail; + struct au_nhash whlist; + struct test_empty_arg arg = { + .ctx = { + .actor = test_empty_cb + } + }; + int (*test_empty)(struct dentry *dentry, struct test_empty_arg *arg); + + SiMustAnyLock(dentry->d_sb); + + rdhash = au_sbi(dentry->d_sb)->si_rdhash; + if (!rdhash) + rdhash = au_rdhash_est(au_dir_size(/*file*/NULL, dentry)); + err = au_nhash_alloc(&whlist, rdhash, GFP_NOFS); + if (unlikely(err)) + goto out; + + arg.flags = 0; + arg.whlist = &whlist; + btop = au_dbtop(dentry); + if (au_opt_test(au_mntflags(dentry->d_sb), SHWH)) + au_fset_testempty(arg.flags, SHWH); + test_empty = do_test_empty; + if (au_opt_test(au_mntflags(dentry->d_sb), DIRPERM1)) + test_empty = sio_test_empty; + arg.bindex = btop; + err = test_empty(dentry, &arg); + if (unlikely(err)) + goto out_whlist; + + au_fset_testempty(arg.flags, WHONLY); + btail = au_dbtaildir(dentry); + for (bindex = btop + 1; !err && bindex <= btail; bindex++) { + struct dentry *h_dentry; + + h_dentry = au_h_dptr(dentry, bindex); + if (h_dentry && d_is_positive(h_dentry)) { + arg.bindex = bindex; + err = test_empty(dentry, &arg); + } + } + +out_whlist: + au_nhash_wh_free(&whlist); +out: + return err; +} + +int au_test_empty(struct dentry *dentry, struct au_nhash *whlist) +{ + int err; + struct test_empty_arg arg = { + .ctx = { + .actor = test_empty_cb + } + }; + aufs_bindex_t bindex, btail; + + err = 0; + arg.whlist = whlist; + arg.flags = AuTestEmpty_WHONLY; + if (au_opt_test(au_mntflags(dentry->d_sb), SHWH)) + au_fset_testempty(arg.flags, SHWH); + btail = au_dbtaildir(dentry); + for (bindex = au_dbtop(dentry); !err && bindex <= btail; bindex++) { + struct dentry *h_dentry; + + h_dentry = au_h_dptr(dentry, bindex); + if (h_dentry && d_is_positive(h_dentry)) { + arg.bindex = bindex; + err = sio_test_empty(dentry, &arg); + } + } + + return err; +} + +/* ---------------------------------------------------------------------- */ + +const struct file_operations aufs_dir_fop = { + .owner = THIS_MODULE, + .llseek = default_llseek, + .read = generic_read_dir, + .iterate_shared = aufs_iterate_shared, + .unlocked_ioctl = aufs_ioctl_dir, +#ifdef CONFIG_COMPAT + .compat_ioctl = aufs_compat_ioctl_dir, +#endif + .open = aufs_open_dir, + .release = aufs_release_dir, + .flush = aufs_flush_dir, + .fsync = aufs_fsync_dir +}; --- linux-azure-5.8-5.8.0.orig/fs/aufs/dir.h +++ linux-azure-5.8-5.8.0/fs/aufs/dir.h @@ -0,0 +1,134 @@ +/* SPDX-License-Identifier: GPL-2.0 */ +/* + * Copyright (C) 2005-2020 Junjiro R. Okajima + * + * This program, aufs is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; either version 2 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + */ + +/* + * directory operations + */ + +#ifndef __AUFS_DIR_H__ +#define __AUFS_DIR_H__ + +#ifdef __KERNEL__ + +#include + +/* ---------------------------------------------------------------------- */ + +/* need to be faster and smaller */ + +struct au_nhash { + unsigned int nh_num; + struct hlist_head *nh_head; +}; + +struct au_vdir_destr { + unsigned char len; + unsigned char name[]; +} __packed; + +struct au_vdir_dehstr { + struct hlist_node hash; + struct au_vdir_destr *str; + struct rcu_head rcu; +} ____cacheline_aligned_in_smp; + +struct au_vdir_de { + ino_t de_ino; + unsigned char de_type; + /* caution: packed */ + struct au_vdir_destr de_str; +} __packed; + +struct au_vdir_wh { + struct hlist_node wh_hash; +#ifdef CONFIG_AUFS_SHWH + ino_t wh_ino; + aufs_bindex_t wh_bindex; + unsigned char wh_type; +#else + aufs_bindex_t wh_bindex; +#endif + /* caution: packed */ + struct au_vdir_destr wh_str; +} __packed; + +union au_vdir_deblk_p { + unsigned char *deblk; + struct au_vdir_de *de; +}; + +struct au_vdir { + unsigned char **vd_deblk; + unsigned long vd_nblk; + struct { + unsigned long ul; + union au_vdir_deblk_p p; + } vd_last; + + u64 vd_version; + unsigned int vd_deblk_sz; + unsigned long vd_jiffy; + struct rcu_head rcu; +} ____cacheline_aligned_in_smp; + +/* ---------------------------------------------------------------------- */ + +/* dir.c */ +extern const struct file_operations aufs_dir_fop; +void au_add_nlink(struct inode *dir, struct inode *h_dir); +void au_sub_nlink(struct inode *dir, struct inode *h_dir); +loff_t au_dir_size(struct file *file, struct dentry *dentry); +void au_dir_ts(struct inode *dir, aufs_bindex_t bsrc); +int au_test_empty_lower(struct dentry *dentry); +int au_test_empty(struct dentry *dentry, struct au_nhash *whlist); + +/* vdir.c */ +unsigned int au_rdhash_est(loff_t sz); +int au_nhash_alloc(struct au_nhash *nhash, unsigned int num_hash, gfp_t gfp); +void au_nhash_wh_free(struct au_nhash *whlist); +int au_nhash_test_longer_wh(struct au_nhash *whlist, aufs_bindex_t btgt, + int limit); +int au_nhash_test_known_wh(struct au_nhash *whlist, char *name, int nlen); +int au_nhash_append_wh(struct au_nhash *whlist, char *name, int nlen, ino_t ino, + unsigned int d_type, aufs_bindex_t bindex, + unsigned char shwh); +void au_vdir_free(struct au_vdir *vdir); +int au_vdir_init(struct file *file); +int au_vdir_fill_de(struct file *file, struct dir_context *ctx); + +/* ioctl.c */ +long aufs_ioctl_dir(struct file *file, unsigned int cmd, unsigned long arg); + +#ifdef CONFIG_AUFS_RDU +/* rdu.c */ +long au_rdu_ioctl(struct file *file, unsigned int cmd, unsigned long arg); +#ifdef CONFIG_COMPAT +long au_rdu_compat_ioctl(struct file *file, unsigned int cmd, + unsigned long arg); +#endif +#else +AuStub(long, au_rdu_ioctl, return -EINVAL, struct file *file, + unsigned int cmd, unsigned long arg) +#ifdef CONFIG_COMPAT +AuStub(long, au_rdu_compat_ioctl, return -EINVAL, struct file *file, + unsigned int cmd, unsigned long arg) +#endif +#endif + +#endif /* __KERNEL__ */ +#endif /* __AUFS_DIR_H__ */ --- linux-azure-5.8-5.8.0.orig/fs/aufs/dirren.c +++ linux-azure-5.8-5.8.0/fs/aufs/dirren.c @@ -0,0 +1,1316 @@ +// SPDX-License-Identifier: GPL-2.0 +/* + * Copyright (C) 2017-2020 Junjiro R. Okajima + * + * This program, aufs is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; either version 2 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + */ + +/* + * special handling in renaming a directory + * in order to support looking-up the before-renamed name on the lower readonly + * branches + */ + +#include +#include "aufs.h" + +static void au_dr_hino_del(struct au_dr_br *dr, struct au_dr_hino *ent) +{ + int idx; + + idx = au_dr_ihash(ent->dr_h_ino); + au_hbl_del(&ent->dr_hnode, dr->dr_h_ino + idx); +} + +static int au_dr_hino_test_empty(struct au_dr_br *dr) +{ + int ret, i; + struct hlist_bl_head *hbl; + + ret = 1; + for (i = 0; ret && i < AuDirren_NHASH; i++) { + hbl = dr->dr_h_ino + i; + hlist_bl_lock(hbl); + ret &= hlist_bl_empty(hbl); + hlist_bl_unlock(hbl); + } + + return ret; +} + +static struct au_dr_hino *au_dr_hino_find(struct au_dr_br *dr, ino_t ino) +{ + struct au_dr_hino *found, *ent; + struct hlist_bl_head *hbl; + struct hlist_bl_node *pos; + int idx; + + found = NULL; + idx = au_dr_ihash(ino); + hbl = dr->dr_h_ino + idx; + hlist_bl_lock(hbl); + hlist_bl_for_each_entry(ent, pos, hbl, dr_hnode) + if (ent->dr_h_ino == ino) { + found = ent; + break; + } + hlist_bl_unlock(hbl); + + return found; +} + +int au_dr_hino_test_add(struct au_dr_br *dr, ino_t ino, + struct au_dr_hino *add_ent) +{ + int found, idx; + struct hlist_bl_head *hbl; + struct hlist_bl_node *pos; + struct au_dr_hino *ent; + + found = 0; + idx = au_dr_ihash(ino); + hbl = dr->dr_h_ino + idx; +#if 0 /* debug print */ + { + struct hlist_bl_node *tmp; + + hlist_bl_for_each_entry_safe(ent, pos, tmp, hbl, dr_hnode) + AuDbg("hi%llu\n", (unsigned long long)ent->dr_h_ino); + } +#endif + hlist_bl_lock(hbl); + hlist_bl_for_each_entry(ent, pos, hbl, dr_hnode) + if (ent->dr_h_ino == ino) { + found = 1; + break; + } + if (!found && add_ent) + hlist_bl_add_head(&add_ent->dr_hnode, hbl); + hlist_bl_unlock(hbl); + + if (!found && add_ent) + AuDbg("i%llu added\n", (unsigned long long)add_ent->dr_h_ino); + + return found; +} + +void au_dr_hino_free(struct au_dr_br *dr) +{ + int i; + struct hlist_bl_head *hbl; + struct hlist_bl_node *pos, *tmp; + struct au_dr_hino *ent; + + /* SiMustWriteLock(sb); */ + + for (i = 0; i < AuDirren_NHASH; i++) { + hbl = dr->dr_h_ino + i; + /* no spinlock since sbinfo must be write-locked */ + hlist_bl_for_each_entry_safe(ent, pos, tmp, hbl, dr_hnode) + au_kfree_rcu(ent); + INIT_HLIST_BL_HEAD(hbl); + } +} + +/* returns the number of inodes or an error */ +static int au_dr_hino_store(struct super_block *sb, struct au_branch *br, + struct file *hinofile) +{ + int err, i; + ssize_t ssz; + loff_t pos, oldsize; + __be64 u64; + struct inode *hinoinode; + struct hlist_bl_head *hbl; + struct hlist_bl_node *n1, *n2; + struct au_dr_hino *ent; + + SiMustWriteLock(sb); + AuDebugOn(!au_br_writable(br->br_perm)); + + hinoinode = file_inode(hinofile); + oldsize = i_size_read(hinoinode); + + err = 0; + pos = 0; + hbl = br->br_dirren.dr_h_ino; + for (i = 0; !err && i < AuDirren_NHASH; i++, hbl++) { + /* no bit-lock since sbinfo must be write-locked */ + hlist_bl_for_each_entry_safe(ent, n1, n2, hbl, dr_hnode) { + AuDbg("hi%llu, %pD2\n", + (unsigned long long)ent->dr_h_ino, hinofile); + u64 = cpu_to_be64(ent->dr_h_ino); + ssz = vfsub_write_k(hinofile, &u64, sizeof(u64), &pos); + if (ssz == sizeof(u64)) + continue; + + /* write error */ + pr_err("ssz %zd, %pD2\n", ssz, hinofile); + err = -ENOSPC; + if (ssz < 0) + err = ssz; + break; + } + } + /* regardless the error */ + if (pos < oldsize) { + err = vfsub_trunc(&hinofile->f_path, pos, /*attr*/0, hinofile); + AuTraceErr(err); + } + + AuTraceErr(err); + return err; +} + +static int au_dr_hino_load(struct au_dr_br *dr, struct file *hinofile) +{ + int err, hidx; + ssize_t ssz; + size_t sz, n; + loff_t pos; + uint64_t u64; + struct au_dr_hino *ent; + struct inode *hinoinode; + struct hlist_bl_head *hbl; + + err = 0; + pos = 0; + hbl = dr->dr_h_ino; + hinoinode = file_inode(hinofile); + sz = i_size_read(hinoinode); + AuDebugOn(sz % sizeof(u64)); + n = sz / sizeof(u64); + while (n--) { + ssz = vfsub_read_k(hinofile, &u64, sizeof(u64), &pos); + if (unlikely(ssz != sizeof(u64))) { + pr_err("ssz %zd, %pD2\n", ssz, hinofile); + err = -EINVAL; + if (ssz < 0) + err = ssz; + goto out_free; + } + + ent = kmalloc(sizeof(*ent), GFP_NOFS); + if (!ent) { + err = -ENOMEM; + AuTraceErr(err); + goto out_free; + } + ent->dr_h_ino = be64_to_cpu((__force __be64)u64); + AuDbg("hi%llu, %pD2\n", + (unsigned long long)ent->dr_h_ino, hinofile); + hidx = au_dr_ihash(ent->dr_h_ino); + au_hbl_add(&ent->dr_hnode, hbl + hidx); + } + goto out; /* success */ + +out_free: + au_dr_hino_free(dr); +out: + AuTraceErr(err); + return err; +} + +/* + * @bindex/@br is a switch to distinguish whether suspending hnotify or not. + * @path is a switch to distinguish load and store. + */ +static int au_dr_hino(struct super_block *sb, aufs_bindex_t bindex, + struct au_branch *br, const struct path *path) +{ + int err, flags; + unsigned char load, suspend; + struct file *hinofile; + struct au_hinode *hdir; + struct inode *dir, *delegated; + struct path hinopath; + struct qstr hinoname = QSTR_INIT(AUFS_WH_DR_BRHINO, + sizeof(AUFS_WH_DR_BRHINO) - 1); + + AuDebugOn(bindex < 0 && !br); + AuDebugOn(bindex >= 0 && br); + + err = -EINVAL; + suspend = !br; + if (suspend) + br = au_sbr(sb, bindex); + load = !!path; + if (!load) { + path = &br->br_path; + AuDebugOn(!au_br_writable(br->br_perm)); + if (unlikely(!au_br_writable(br->br_perm))) + goto out; + } + + hdir = NULL; + if (suspend) { + dir = d_inode(sb->s_root); + hdir = au_hinode(au_ii(dir), bindex); + dir = hdir->hi_inode; + au_hn_inode_lock_nested(hdir, AuLsc_I_CHILD); + } else { + dir = d_inode(path->dentry); + inode_lock_nested(dir, AuLsc_I_CHILD); + } + hinopath.dentry = vfsub_lkup_one(&hinoname, path->dentry); + err = PTR_ERR(hinopath.dentry); + if (IS_ERR(hinopath.dentry)) + goto out_unlock; + + err = 0; + flags = O_RDONLY; + if (load) { + if (d_is_negative(hinopath.dentry)) + goto out_dput; /* success */ + } else { + if (au_dr_hino_test_empty(&br->br_dirren)) { + if (d_is_positive(hinopath.dentry)) { + delegated = NULL; + err = vfsub_unlink(dir, &hinopath, &delegated, + /*force*/0); + AuTraceErr(err); + if (unlikely(err)) + pr_err("ignored err %d, %pd2\n", + err, hinopath.dentry); + if (unlikely(err == -EWOULDBLOCK)) + iput(delegated); + err = 0; + } + goto out_dput; + } else if (!d_is_positive(hinopath.dentry)) { + err = vfsub_create(dir, &hinopath, 0600, + /*want_excl*/false); + AuTraceErr(err); + if (unlikely(err)) + goto out_dput; + } + flags = O_WRONLY; + } + hinopath.mnt = path->mnt; + hinofile = vfsub_dentry_open(&hinopath, flags); + if (suspend) + au_hn_inode_unlock(hdir); + else + inode_unlock(dir); + dput(hinopath.dentry); + AuTraceErrPtr(hinofile); + if (IS_ERR(hinofile)) { + err = PTR_ERR(hinofile); + goto out; + } + + if (load) + err = au_dr_hino_load(&br->br_dirren, hinofile); + else + err = au_dr_hino_store(sb, br, hinofile); + fput(hinofile); + goto out; + +out_dput: + dput(hinopath.dentry); +out_unlock: + if (suspend) + au_hn_inode_unlock(hdir); + else + inode_unlock(dir); +out: + AuTraceErr(err); + return err; +} + +/* ---------------------------------------------------------------------- */ + +static int au_dr_brid_init(struct au_dr_brid *brid, const struct path *path) +{ + int err; + struct kstatfs kstfs; + dev_t dev; + struct dentry *dentry; + struct super_block *sb; + + err = vfs_statfs((void *)path, &kstfs); + AuTraceErr(err); + if (unlikely(err)) + goto out; + + /* todo: support for UUID */ + + if (kstfs.f_fsid.val[0] || kstfs.f_fsid.val[1]) { + brid->type = AuBrid_FSID; + brid->fsid = kstfs.f_fsid; + } else { + dentry = path->dentry; + sb = dentry->d_sb; + dev = sb->s_dev; + if (dev) { + brid->type = AuBrid_DEV; + brid->dev = dev; + } + } + +out: + return err; +} + +int au_dr_br_init(struct super_block *sb, struct au_branch *br, + const struct path *path) +{ + int err, i; + struct au_dr_br *dr; + struct hlist_bl_head *hbl; + + dr = &br->br_dirren; + hbl = dr->dr_h_ino; + for (i = 0; i < AuDirren_NHASH; i++, hbl++) + INIT_HLIST_BL_HEAD(hbl); + + err = au_dr_brid_init(&dr->dr_brid, path); + if (unlikely(err)) + goto out; + + if (au_opt_test(au_mntflags(sb), DIRREN)) + err = au_dr_hino(sb, /*bindex*/-1, br, path); + +out: + AuTraceErr(err); + return err; +} + +int au_dr_br_fin(struct super_block *sb, struct au_branch *br) +{ + int err; + + err = 0; + if (au_br_writable(br->br_perm)) + err = au_dr_hino(sb, /*bindex*/-1, br, /*path*/NULL); + if (!err) + au_dr_hino_free(&br->br_dirren); + + return err; +} + +/* ---------------------------------------------------------------------- */ + +static int au_brid_str(struct au_dr_brid *brid, struct inode *h_inode, + char *buf, size_t sz) +{ + int err; + unsigned int major, minor; + char *p; + + p = buf; + err = snprintf(p, sz, "%d_", brid->type); + AuDebugOn(err > sz); + p += err; + sz -= err; + switch (brid->type) { + case AuBrid_Unset: + return -EINVAL; + case AuBrid_UUID: + err = snprintf(p, sz, "%pU", brid->uuid.b); + break; + case AuBrid_FSID: + err = snprintf(p, sz, "%08x-%08x", + brid->fsid.val[0], brid->fsid.val[1]); + break; + case AuBrid_DEV: + major = MAJOR(brid->dev); + minor = MINOR(brid->dev); + if (major <= 0xff && minor <= 0xff) + err = snprintf(p, sz, "%02x%02x", major, minor); + else + err = snprintf(p, sz, "%03x:%05x", major, minor); + break; + } + AuDebugOn(err > sz); + p += err; + sz -= err; + err = snprintf(p, sz, "_%llu", (unsigned long long)h_inode->i_ino); + AuDebugOn(err > sz); + p += err; + sz -= err; + + return p - buf; +} + +static int au_drinfo_name(struct au_branch *br, char *name, int len) +{ + int rlen; + struct dentry *br_dentry; + struct inode *br_inode; + + br_dentry = au_br_dentry(br); + br_inode = d_inode(br_dentry); + rlen = au_brid_str(&br->br_dirren.dr_brid, br_inode, name, len); + AuDebugOn(rlen >= AUFS_DIRREN_ENV_VAL_SZ); + AuDebugOn(rlen > len); + + return rlen; +} + +/* ---------------------------------------------------------------------- */ + +/* + * from the given @h_dentry, construct drinfo at @*fdata. + * when the size of @*fdata is not enough, reallocate and return new @fdata and + * @allocated. + */ +static int au_drinfo_construct(struct au_drinfo_fdata **fdata, + struct dentry *h_dentry, + unsigned char *allocated) +{ + int err, v; + struct au_drinfo_fdata *f, *p; + struct au_drinfo *drinfo; + struct inode *h_inode; + struct qstr *qname; + + err = 0; + f = *fdata; + h_inode = d_inode(h_dentry); + qname = &h_dentry->d_name; + drinfo = &f->drinfo; + drinfo->ino = (__force uint64_t)cpu_to_be64(h_inode->i_ino); + drinfo->oldnamelen = qname->len; + if (*allocated < sizeof(*f) + qname->len) { + v = roundup_pow_of_two(*allocated + qname->len); + p = au_krealloc(f, v, GFP_NOFS, /*may_shrink*/0); + if (unlikely(!p)) { + err = -ENOMEM; + AuTraceErr(err); + goto out; + } + f = p; + *fdata = f; + *allocated = v; + drinfo = &f->drinfo; + } + memcpy(drinfo->oldname, qname->name, qname->len); + AuDbg("i%llu, %.*s\n", + be64_to_cpu((__force __be64)drinfo->ino), drinfo->oldnamelen, + drinfo->oldname); + +out: + AuTraceErr(err); + return err; +} + +/* callers have to free the return value */ +static struct au_drinfo *au_drinfo_read_k(struct file *file, ino_t h_ino) +{ + struct au_drinfo *ret, *drinfo; + struct au_drinfo_fdata fdata; + int len; + loff_t pos; + ssize_t ssz; + + ret = ERR_PTR(-EIO); + pos = 0; + ssz = vfsub_read_k(file, &fdata, sizeof(fdata), &pos); + if (unlikely(ssz != sizeof(fdata))) { + AuIOErr("ssz %zd, %u, %pD2\n", + ssz, (unsigned int)sizeof(fdata), file); + goto out; + } + + fdata.magic = ntohl((__force __be32)fdata.magic); + switch (fdata.magic) { + case AUFS_DRINFO_MAGIC_V1: + break; + default: + AuIOErr("magic-num 0x%x, 0x%x, %pD2\n", + fdata.magic, AUFS_DRINFO_MAGIC_V1, file); + goto out; + } + + drinfo = &fdata.drinfo; + len = drinfo->oldnamelen; + if (!len) { + AuIOErr("broken drinfo %pD2\n", file); + goto out; + } + + ret = NULL; + drinfo->ino = be64_to_cpu((__force __be64)drinfo->ino); + if (unlikely(h_ino && drinfo->ino != h_ino)) { + AuDbg("ignored i%llu, i%llu, %pD2\n", + (unsigned long long)drinfo->ino, + (unsigned long long)h_ino, file); + goto out; /* success */ + } + + ret = kmalloc(sizeof(*ret) + len, GFP_NOFS); + if (unlikely(!ret)) { + ret = ERR_PTR(-ENOMEM); + AuTraceErrPtr(ret); + goto out; + } + + *ret = *drinfo; + ssz = vfsub_read_k(file, (void *)ret->oldname, len, &pos); + if (unlikely(ssz != len)) { + au_kfree_rcu(ret); + ret = ERR_PTR(-EIO); + AuIOErr("ssz %zd, %u, %pD2\n", ssz, len, file); + goto out; + } + + AuDbg("oldname %.*s\n", ret->oldnamelen, ret->oldname); + +out: + return ret; +} + +/* ---------------------------------------------------------------------- */ + +/* in order to be revertible */ +struct au_drinfo_rev_elm { + int created; + struct dentry *info_dentry; + struct au_drinfo *info_last; +}; + +struct au_drinfo_rev { + unsigned char already; + aufs_bindex_t nelm; + struct au_drinfo_rev_elm elm[]; +}; + +/* todo: isn't it too large? */ +struct au_drinfo_store { + struct path h_ppath; + struct dentry *h_dentry; + struct au_drinfo_fdata *fdata; + char *infoname; /* inside of whname, just after PFX */ + char whname[sizeof(AUFS_WH_DR_INFO_PFX) + AUFS_DIRREN_ENV_VAL_SZ]; + aufs_bindex_t btgt, btail; + unsigned char no_sio, + allocated, /* current size of *fdata */ + infonamelen, /* room size for p */ + whnamelen, /* length of the generated name */ + renameback; /* renamed back */ +}; + +/* on rename(2) error, the caller should revert it using @elm */ +static int au_drinfo_do_store(struct au_drinfo_store *w, + struct au_drinfo_rev_elm *elm) +{ + int err, len; + ssize_t ssz; + loff_t pos; + struct path infopath = { + .mnt = w->h_ppath.mnt + }; + struct inode *h_dir, *h_inode, *delegated; + struct file *infofile; + struct qstr *qname; + + AuDebugOn(elm + && memcmp(elm, page_address(ZERO_PAGE(0)), sizeof(*elm))); + + infopath.dentry = vfsub_lookup_one_len(w->whname, w->h_ppath.dentry, + w->whnamelen); + AuTraceErrPtr(infopath.dentry); + if (IS_ERR(infopath.dentry)) { + err = PTR_ERR(infopath.dentry); + goto out; + } + + err = 0; + h_dir = d_inode(w->h_ppath.dentry); + if (elm && d_is_negative(infopath.dentry)) { + err = vfsub_create(h_dir, &infopath, 0600, /*want_excl*/true); + AuTraceErr(err); + if (unlikely(err)) + goto out_dput; + elm->created = 1; + elm->info_dentry = dget(infopath.dentry); + } + + infofile = vfsub_dentry_open(&infopath, O_RDWR); + AuTraceErrPtr(infofile); + if (IS_ERR(infofile)) { + err = PTR_ERR(infofile); + goto out_dput; + } + + h_inode = d_inode(infopath.dentry); + if (elm && i_size_read(h_inode)) { + h_inode = d_inode(w->h_dentry); + elm->info_last = au_drinfo_read_k(infofile, h_inode->i_ino); + AuTraceErrPtr(elm->info_last); + if (IS_ERR(elm->info_last)) { + err = PTR_ERR(elm->info_last); + elm->info_last = NULL; + AuDebugOn(elm->info_dentry); + goto out_fput; + } + } + + if (elm && w->renameback) { + delegated = NULL; + err = vfsub_unlink(h_dir, &infopath, &delegated, /*force*/0); + AuTraceErr(err); + if (unlikely(err == -EWOULDBLOCK)) + iput(delegated); + goto out_fput; + } + + pos = 0; + qname = &w->h_dentry->d_name; + len = sizeof(*w->fdata) + qname->len; + if (!elm) + len = sizeof(*w->fdata) + w->fdata->drinfo.oldnamelen; + ssz = vfsub_write_k(infofile, w->fdata, len, &pos); + if (ssz == len) { + AuDbg("hi%llu, %.*s\n", w->fdata->drinfo.ino, + w->fdata->drinfo.oldnamelen, w->fdata->drinfo.oldname); + goto out_fput; /* success */ + } else { + err = -EIO; + if (ssz < 0) + err = ssz; + /* the caller should revert it using @elm */ + } + +out_fput: + fput(infofile); +out_dput: + dput(infopath.dentry); +out: + AuTraceErr(err); + return err; +} + +struct au_call_drinfo_do_store_args { + int *errp; + struct au_drinfo_store *w; + struct au_drinfo_rev_elm *elm; +}; + +static void au_call_drinfo_do_store(void *args) +{ + struct au_call_drinfo_do_store_args *a = args; + + *a->errp = au_drinfo_do_store(a->w, a->elm); +} + +static int au_drinfo_store_sio(struct au_drinfo_store *w, + struct au_drinfo_rev_elm *elm) +{ + int err, wkq_err; + + if (w->no_sio) + err = au_drinfo_do_store(w, elm); + else { + struct au_call_drinfo_do_store_args a = { + .errp = &err, + .w = w, + .elm = elm + }; + wkq_err = au_wkq_wait(au_call_drinfo_do_store, &a); + if (unlikely(wkq_err)) + err = wkq_err; + } + AuTraceErr(err); + + return err; +} + +static int au_drinfo_store_work_init(struct au_drinfo_store *w, + aufs_bindex_t btgt) +{ + int err; + + memset(w, 0, sizeof(*w)); + w->allocated = roundup_pow_of_two(sizeof(*w->fdata) + 40); + strcpy(w->whname, AUFS_WH_DR_INFO_PFX); + w->infoname = w->whname + sizeof(AUFS_WH_DR_INFO_PFX) - 1; + w->infonamelen = sizeof(w->whname) - sizeof(AUFS_WH_DR_INFO_PFX); + w->btgt = btgt; + w->no_sio = !!uid_eq(current_fsuid(), GLOBAL_ROOT_UID); + + err = -ENOMEM; + w->fdata = kcalloc(1, w->allocated, GFP_NOFS); + if (unlikely(!w->fdata)) { + AuTraceErr(err); + goto out; + } + w->fdata->magic = (__force uint32_t)htonl(AUFS_DRINFO_MAGIC_V1); + err = 0; + +out: + return err; +} + +static void au_drinfo_store_work_fin(struct au_drinfo_store *w) +{ + au_kfree_rcu(w->fdata); +} + +static void au_drinfo_store_rev(struct au_drinfo_rev *rev, + struct au_drinfo_store *w) +{ + struct au_drinfo_rev_elm *elm; + struct inode *h_dir, *delegated; + int err, nelm; + struct path infopath = { + .mnt = w->h_ppath.mnt + }; + + h_dir = d_inode(w->h_ppath.dentry); + IMustLock(h_dir); + + err = 0; + elm = rev->elm; + for (nelm = rev->nelm; nelm > 0; nelm--, elm++) { + AuDebugOn(elm->created && elm->info_last); + if (elm->created) { + AuDbg("here\n"); + delegated = NULL; + infopath.dentry = elm->info_dentry; + err = vfsub_unlink(h_dir, &infopath, &delegated, + !w->no_sio); + AuTraceErr(err); + if (unlikely(err == -EWOULDBLOCK)) + iput(delegated); + dput(elm->info_dentry); + } else if (elm->info_last) { + AuDbg("here\n"); + w->fdata->drinfo = *elm->info_last; + memcpy(w->fdata->drinfo.oldname, + elm->info_last->oldname, + elm->info_last->oldnamelen); + err = au_drinfo_store_sio(w, /*elm*/NULL); + au_kfree_rcu(elm->info_last); + } + if (unlikely(err)) + AuIOErr("%d, %s\n", err, w->whname); + /* go on even if err */ + } +} + +/* caller has to call au_dr_rename_fin() later */ +static int au_drinfo_store(struct dentry *dentry, aufs_bindex_t btgt, + struct qstr *dst_name, void *_rev) +{ + int err, sz, nelm; + aufs_bindex_t bindex, btail; + struct au_drinfo_store work; + struct au_drinfo_rev *rev, **p; + struct au_drinfo_rev_elm *elm; + struct super_block *sb; + struct au_branch *br; + struct au_hinode *hdir; + + err = au_drinfo_store_work_init(&work, btgt); + AuTraceErr(err); + if (unlikely(err)) + goto out; + + err = -ENOMEM; + btail = au_dbtaildir(dentry); + nelm = btail - btgt; + sz = sizeof(*rev) + sizeof(*elm) * nelm; + rev = kcalloc(1, sz, GFP_NOFS); + if (unlikely(!rev)) { + AuTraceErr(err); + goto out_args; + } + rev->nelm = nelm; + elm = rev->elm; + p = _rev; + *p = rev; + + err = 0; + sb = dentry->d_sb; + work.h_ppath.dentry = au_h_dptr(dentry, btgt); + work.h_ppath.mnt = au_sbr_mnt(sb, btgt); + hdir = au_hi(d_inode(dentry), btgt); + au_hn_inode_lock_nested(hdir, AuLsc_I_CHILD); + for (bindex = btgt + 1; bindex <= btail; bindex++, elm++) { + work.h_dentry = au_h_dptr(dentry, bindex); + if (!work.h_dentry) + continue; + + err = au_drinfo_construct(&work.fdata, work.h_dentry, + &work.allocated); + AuTraceErr(err); + if (unlikely(err)) + break; + + work.renameback = au_qstreq(&work.h_dentry->d_name, dst_name); + br = au_sbr(sb, bindex); + work.whnamelen = sizeof(AUFS_WH_DR_INFO_PFX) - 1; + work.whnamelen += au_drinfo_name(br, work.infoname, + work.infonamelen); + AuDbg("whname %.*s, i%llu, %.*s\n", + work.whnamelen, work.whname, + be64_to_cpu((__force __be64)work.fdata->drinfo.ino), + work.fdata->drinfo.oldnamelen, + work.fdata->drinfo.oldname); + + err = au_drinfo_store_sio(&work, elm); + AuTraceErr(err); + if (unlikely(err)) + break; + } + if (unlikely(err)) { + /* revert all drinfo */ + au_drinfo_store_rev(rev, &work); + au_kfree_try_rcu(rev); + *p = NULL; + } + au_hn_inode_unlock(hdir); + +out_args: + au_drinfo_store_work_fin(&work); +out: + return err; +} + +/* ---------------------------------------------------------------------- */ + +int au_dr_rename(struct dentry *src, aufs_bindex_t bindex, + struct qstr *dst_name, void *_rev) +{ + int err, already; + ino_t ino; + struct super_block *sb; + struct au_branch *br; + struct au_dr_br *dr; + struct dentry *h_dentry; + struct inode *h_inode; + struct au_dr_hino *ent; + struct au_drinfo_rev *rev, **p; + + AuDbg("bindex %d\n", bindex); + + err = -ENOMEM; + ent = kmalloc(sizeof(*ent), GFP_NOFS); + if (unlikely(!ent)) + goto out; + + sb = src->d_sb; + br = au_sbr(sb, bindex); + dr = &br->br_dirren; + h_dentry = au_h_dptr(src, bindex); + h_inode = d_inode(h_dentry); + ino = h_inode->i_ino; + ent->dr_h_ino = ino; + already = au_dr_hino_test_add(dr, ino, ent); + AuDbg("b%d, hi%llu, already %d\n", + bindex, (unsigned long long)ino, already); + + err = au_drinfo_store(src, bindex, dst_name, _rev); + AuTraceErr(err); + if (!err) { + p = _rev; + rev = *p; + rev->already = already; + goto out; /* success */ + } + + /* revert */ + if (!already) + au_dr_hino_del(dr, ent); + au_kfree_rcu(ent); + +out: + AuTraceErr(err); + return err; +} + +void au_dr_rename_fin(struct dentry *src, aufs_bindex_t btgt, void *_rev) +{ + struct au_drinfo_rev *rev; + struct au_drinfo_rev_elm *elm; + int nelm; + + rev = _rev; + elm = rev->elm; + for (nelm = rev->nelm; nelm > 0; nelm--, elm++) { + dput(elm->info_dentry); + au_kfree_rcu(elm->info_last); + } + au_kfree_try_rcu(rev); +} + +void au_dr_rename_rev(struct dentry *src, aufs_bindex_t btgt, void *_rev) +{ + int err; + struct au_drinfo_store work; + struct au_drinfo_rev *rev = _rev; + struct super_block *sb; + struct au_branch *br; + struct inode *h_inode; + struct au_dr_br *dr; + struct au_dr_hino *ent; + + err = au_drinfo_store_work_init(&work, btgt); + if (unlikely(err)) + goto out; + + sb = src->d_sb; + br = au_sbr(sb, btgt); + work.h_ppath.dentry = au_h_dptr(src, btgt); + work.h_ppath.mnt = au_br_mnt(br); + au_drinfo_store_rev(rev, &work); + au_drinfo_store_work_fin(&work); + if (rev->already) + goto out; + + dr = &br->br_dirren; + h_inode = d_inode(work.h_ppath.dentry); + ent = au_dr_hino_find(dr, h_inode->i_ino); + BUG_ON(!ent); + au_dr_hino_del(dr, ent); + au_kfree_rcu(ent); + +out: + au_kfree_try_rcu(rev); + if (unlikely(err)) + pr_err("failed to remove dirren info\n"); +} + +/* ---------------------------------------------------------------------- */ + +static struct au_drinfo *au_drinfo_do_load(struct path *h_ppath, + char *whname, int whnamelen, + struct dentry **info_dentry) +{ + struct au_drinfo *drinfo; + struct file *f; + struct inode *h_dir; + struct path infopath; + int unlocked; + + AuDbg("%pd/%.*s\n", h_ppath->dentry, whnamelen, whname); + + *info_dentry = NULL; + drinfo = NULL; + unlocked = 0; + h_dir = d_inode(h_ppath->dentry); + inode_lock_shared_nested(h_dir, AuLsc_I_PARENT); + infopath.dentry = vfsub_lookup_one_len(whname, h_ppath->dentry, + whnamelen); + if (IS_ERR(infopath.dentry)) { + drinfo = (void *)infopath.dentry; + goto out; + } + + if (d_is_negative(infopath.dentry)) + goto out_dput; /* success */ + + infopath.mnt = h_ppath->mnt; + f = vfsub_dentry_open(&infopath, O_RDONLY); + inode_unlock_shared(h_dir); + unlocked = 1; + if (IS_ERR(f)) { + drinfo = (void *)f; + goto out_dput; + } + + drinfo = au_drinfo_read_k(f, /*h_ino*/0); + if (IS_ERR_OR_NULL(drinfo)) + goto out_fput; + + AuDbg("oldname %.*s\n", drinfo->oldnamelen, drinfo->oldname); + *info_dentry = dget(infopath.dentry); /* keep it alive */ + +out_fput: + fput(f); +out_dput: + dput(infopath.dentry); +out: + if (!unlocked) + inode_unlock_shared(h_dir); + AuTraceErrPtr(drinfo); + return drinfo; +} + +struct au_drinfo_do_load_args { + struct au_drinfo **drinfop; + struct path *h_ppath; + char *whname; + int whnamelen; + struct dentry **info_dentry; +}; + +static void au_call_drinfo_do_load(void *args) +{ + struct au_drinfo_do_load_args *a = args; + + *a->drinfop = au_drinfo_do_load(a->h_ppath, a->whname, a->whnamelen, + a->info_dentry); +} + +struct au_drinfo_load { + struct path h_ppath; + struct qstr *qname; + unsigned char no_sio; + + aufs_bindex_t ninfo; + struct au_drinfo **drinfo; +}; + +static int au_drinfo_load(struct au_drinfo_load *w, aufs_bindex_t bindex, + struct au_branch *br) +{ + int err, wkq_err, whnamelen, e; + char whname[sizeof(AUFS_WH_DR_INFO_PFX) + AUFS_DIRREN_ENV_VAL_SZ] + = AUFS_WH_DR_INFO_PFX; + struct au_drinfo *drinfo; + struct qstr oldname; + struct inode *h_dir, *delegated; + struct dentry *info_dentry; + struct path infopath; + + whnamelen = sizeof(AUFS_WH_DR_INFO_PFX) - 1; + whnamelen += au_drinfo_name(br, whname + whnamelen, + sizeof(whname) - whnamelen); + if (w->no_sio) + drinfo = au_drinfo_do_load(&w->h_ppath, whname, whnamelen, + &info_dentry); + else { + struct au_drinfo_do_load_args args = { + .drinfop = &drinfo, + .h_ppath = &w->h_ppath, + .whname = whname, + .whnamelen = whnamelen, + .info_dentry = &info_dentry + }; + wkq_err = au_wkq_wait(au_call_drinfo_do_load, &args); + if (unlikely(wkq_err)) + drinfo = ERR_PTR(wkq_err); + } + err = PTR_ERR(drinfo); + if (IS_ERR_OR_NULL(drinfo)) + goto out; + + err = 0; + oldname.len = drinfo->oldnamelen; + oldname.name = drinfo->oldname; + if (au_qstreq(w->qname, &oldname)) { + /* the name is renamed back */ + au_kfree_rcu(drinfo); + drinfo = NULL; + + infopath.dentry = info_dentry; + infopath.mnt = w->h_ppath.mnt; + h_dir = d_inode(w->h_ppath.dentry); + delegated = NULL; + inode_lock_nested(h_dir, AuLsc_I_PARENT); + e = vfsub_unlink(h_dir, &infopath, &delegated, !w->no_sio); + inode_unlock(h_dir); + if (unlikely(e)) + AuIOErr("ignored %d, %pd2\n", e, &infopath.dentry); + if (unlikely(e == -EWOULDBLOCK)) + iput(delegated); + } + au_kfree_rcu(w->drinfo[bindex]); + w->drinfo[bindex] = drinfo; + dput(info_dentry); + +out: + AuTraceErr(err); + return err; +} + +/* ---------------------------------------------------------------------- */ + +static void au_dr_lkup_free(struct au_drinfo **drinfo, int n) +{ + struct au_drinfo **p = drinfo; + + while (n-- > 0) + au_kfree_rcu(*drinfo++); + au_kfree_try_rcu(p); +} + +int au_dr_lkup(struct au_do_lookup_args *lkup, struct dentry *dentry, + aufs_bindex_t btgt) +{ + int err, ninfo; + struct au_drinfo_load w; + aufs_bindex_t bindex, bbot; + struct au_branch *br; + struct inode *h_dir; + struct au_dr_hino *ent; + struct super_block *sb; + + AuDbg("%.*s, name %.*s, whname %.*s, b%d\n", + AuLNPair(&dentry->d_name), AuLNPair(&lkup->dirren.dr_name), + AuLNPair(&lkup->whname), btgt); + + sb = dentry->d_sb; + bbot = au_sbbot(sb); + w.ninfo = bbot + 1; + if (!lkup->dirren.drinfo) { + lkup->dirren.drinfo = kcalloc(w.ninfo, + sizeof(*lkup->dirren.drinfo), + GFP_NOFS); + if (unlikely(!lkup->dirren.drinfo)) { + err = -ENOMEM; + goto out; + } + lkup->dirren.ninfo = w.ninfo; + } + w.drinfo = lkup->dirren.drinfo; + w.no_sio = !!uid_eq(current_fsuid(), GLOBAL_ROOT_UID); + w.h_ppath.dentry = au_h_dptr(dentry, btgt); + AuDebugOn(!w.h_ppath.dentry); + w.h_ppath.mnt = au_sbr_mnt(sb, btgt); + w.qname = &dentry->d_name; + + ninfo = 0; + for (bindex = btgt + 1; bindex <= bbot; bindex++) { + br = au_sbr(sb, bindex); + err = au_drinfo_load(&w, bindex, br); + if (unlikely(err)) + goto out_free; + if (w.drinfo[bindex]) + ninfo++; + } + if (!ninfo) { + br = au_sbr(sb, btgt); + h_dir = d_inode(w.h_ppath.dentry); + ent = au_dr_hino_find(&br->br_dirren, h_dir->i_ino); + AuDebugOn(!ent); + au_dr_hino_del(&br->br_dirren, ent); + au_kfree_rcu(ent); + } + goto out; /* success */ + +out_free: + au_dr_lkup_free(lkup->dirren.drinfo, lkup->dirren.ninfo); + lkup->dirren.ninfo = 0; + lkup->dirren.drinfo = NULL; +out: + AuTraceErr(err); + return err; +} + +void au_dr_lkup_fin(struct au_do_lookup_args *lkup) +{ + au_dr_lkup_free(lkup->dirren.drinfo, lkup->dirren.ninfo); +} + +int au_dr_lkup_name(struct au_do_lookup_args *lkup, aufs_bindex_t btgt) +{ + int err; + struct au_drinfo *drinfo; + + err = 0; + if (!lkup->dirren.drinfo) + goto out; + AuDebugOn(lkup->dirren.ninfo <= btgt); + drinfo = lkup->dirren.drinfo[btgt]; + if (!drinfo) + goto out; + + au_kfree_try_rcu(lkup->whname.name); + lkup->whname.name = NULL; + lkup->dirren.dr_name.len = drinfo->oldnamelen; + lkup->dirren.dr_name.name = drinfo->oldname; + lkup->name = &lkup->dirren.dr_name; + err = au_wh_name_alloc(&lkup->whname, lkup->name); + if (!err) + AuDbg("name %.*s, whname %.*s, b%d\n", + AuLNPair(lkup->name), AuLNPair(&lkup->whname), + btgt); + +out: + AuTraceErr(err); + return err; +} + +int au_dr_lkup_h_ino(struct au_do_lookup_args *lkup, aufs_bindex_t bindex, + ino_t h_ino) +{ + int match; + struct au_drinfo *drinfo; + + match = 1; + if (!lkup->dirren.drinfo) + goto out; + AuDebugOn(lkup->dirren.ninfo <= bindex); + drinfo = lkup->dirren.drinfo[bindex]; + if (!drinfo) + goto out; + + match = (drinfo->ino == h_ino); + AuDbg("match %d\n", match); + +out: + return match; +} + +/* ---------------------------------------------------------------------- */ + +int au_dr_opt_set(struct super_block *sb) +{ + int err; + aufs_bindex_t bindex, bbot; + struct au_branch *br; + + err = 0; + bbot = au_sbbot(sb); + for (bindex = 0; !err && bindex <= bbot; bindex++) { + br = au_sbr(sb, bindex); + err = au_dr_hino(sb, bindex, /*br*/NULL, &br->br_path); + } + + return err; +} + +int au_dr_opt_flush(struct super_block *sb) +{ + int err; + aufs_bindex_t bindex, bbot; + struct au_branch *br; + + err = 0; + bbot = au_sbbot(sb); + for (bindex = 0; !err && bindex <= bbot; bindex++) { + br = au_sbr(sb, bindex); + if (au_br_writable(br->br_perm)) + err = au_dr_hino(sb, bindex, /*br*/NULL, /*path*/NULL); + } + + return err; +} + +int au_dr_opt_clr(struct super_block *sb, int no_flush) +{ + int err; + aufs_bindex_t bindex, bbot; + struct au_branch *br; + + err = 0; + if (!no_flush) { + err = au_dr_opt_flush(sb); + if (unlikely(err)) + goto out; + } + + bbot = au_sbbot(sb); + for (bindex = 0; bindex <= bbot; bindex++) { + br = au_sbr(sb, bindex); + au_dr_hino_free(&br->br_dirren); + } + +out: + return err; +} --- linux-azure-5.8-5.8.0.orig/fs/aufs/dirren.h +++ linux-azure-5.8-5.8.0/fs/aufs/dirren.h @@ -0,0 +1,140 @@ +/* SPDX-License-Identifier: GPL-2.0 */ +/* + * Copyright (C) 2017-2020 Junjiro R. Okajima + * + * This program, aufs is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; either version 2 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + */ + +/* + * renamed dir info + */ + +#ifndef __AUFS_DIRREN_H__ +#define __AUFS_DIRREN_H__ + +#ifdef __KERNEL__ + +#include +#include +#include +#include "hbl.h" + +#define AuDirren_NHASH 100 + +#ifdef CONFIG_AUFS_DIRREN +enum au_brid_type { + AuBrid_Unset, + AuBrid_UUID, + AuBrid_FSID, + AuBrid_DEV +}; + +struct au_dr_brid { + enum au_brid_type type; + union { + uuid_t uuid; /* unimplemented yet */ + fsid_t fsid; + dev_t dev; + }; +}; + +/* 20 is the max digits length of ulong 64 */ +/* brid-type "_" uuid "_" inum */ +#define AUFS_DIRREN_FNAME_SZ (1 + 1 + UUID_STRING_LEN + 20) +#define AUFS_DIRREN_ENV_VAL_SZ (AUFS_DIRREN_FNAME_SZ + 1 + 20) + +struct au_dr_hino { + struct hlist_bl_node dr_hnode; + ino_t dr_h_ino; +}; + +struct au_dr_br { + struct hlist_bl_head dr_h_ino[AuDirren_NHASH]; + struct au_dr_brid dr_brid; +}; + +struct au_dr_lookup { + /* dr_name is pointed by struct au_do_lookup_args.name */ + struct qstr dr_name; /* subset of dr_info */ + aufs_bindex_t ninfo; + struct au_drinfo **drinfo; +}; +#else +struct au_dr_hino; +/* empty */ +struct au_dr_br { }; +struct au_dr_lookup { }; +#endif + +/* ---------------------------------------------------------------------- */ + +struct au_branch; +struct au_do_lookup_args; +struct au_hinode; +#ifdef CONFIG_AUFS_DIRREN +int au_dr_hino_test_add(struct au_dr_br *dr, ino_t h_ino, + struct au_dr_hino *add_ent); +void au_dr_hino_free(struct au_dr_br *dr); +int au_dr_br_init(struct super_block *sb, struct au_branch *br, + const struct path *path); +int au_dr_br_fin(struct super_block *sb, struct au_branch *br); +int au_dr_rename(struct dentry *src, aufs_bindex_t bindex, + struct qstr *dst_name, void *_rev); +void au_dr_rename_fin(struct dentry *src, aufs_bindex_t btgt, void *rev); +void au_dr_rename_rev(struct dentry *src, aufs_bindex_t bindex, void *rev); +int au_dr_lkup(struct au_do_lookup_args *lkup, struct dentry *dentry, + aufs_bindex_t bindex); +int au_dr_lkup_name(struct au_do_lookup_args *lkup, aufs_bindex_t btgt); +int au_dr_lkup_h_ino(struct au_do_lookup_args *lkup, aufs_bindex_t bindex, + ino_t h_ino); +void au_dr_lkup_fin(struct au_do_lookup_args *lkup); +int au_dr_opt_set(struct super_block *sb); +int au_dr_opt_flush(struct super_block *sb); +int au_dr_opt_clr(struct super_block *sb, int no_flush); +#else +AuStubInt0(au_dr_hino_test_add, struct au_dr_br *dr, ino_t h_ino, + struct au_dr_hino *add_ent); +AuStubVoid(au_dr_hino_free, struct au_dr_br *dr); +AuStubInt0(au_dr_br_init, struct super_block *sb, struct au_branch *br, + const struct path *path); +AuStubInt0(au_dr_br_fin, struct super_block *sb, struct au_branch *br); +AuStubInt0(au_dr_rename, struct dentry *src, aufs_bindex_t bindex, + struct qstr *dst_name, void *_rev); +AuStubVoid(au_dr_rename_fin, struct dentry *src, aufs_bindex_t btgt, void *rev); +AuStubVoid(au_dr_rename_rev, struct dentry *src, aufs_bindex_t bindex, + void *rev); +AuStubInt0(au_dr_lkup, struct au_do_lookup_args *lkup, struct dentry *dentry, + aufs_bindex_t bindex); +AuStubInt0(au_dr_lkup_name, struct au_do_lookup_args *lkup, aufs_bindex_t btgt); +AuStubInt0(au_dr_lkup_h_ino, struct au_do_lookup_args *lkup, + aufs_bindex_t bindex, ino_t h_ino); +AuStubVoid(au_dr_lkup_fin, struct au_do_lookup_args *lkup); +AuStubInt0(au_dr_opt_set, struct super_block *sb); +AuStubInt0(au_dr_opt_flush, struct super_block *sb); +AuStubInt0(au_dr_opt_clr, struct super_block *sb, int no_flush); +#endif + +/* ---------------------------------------------------------------------- */ + +#ifdef CONFIG_AUFS_DIRREN +static inline int au_dr_ihash(ino_t h_ino) +{ + return h_ino % AuDirren_NHASH; +} +#else +AuStubInt0(au_dr_ihash, ino_t h_ino); +#endif + +#endif /* __KERNEL__ */ +#endif /* __AUFS_DIRREN_H__ */ --- linux-azure-5.8-5.8.0.orig/fs/aufs/dynop.c +++ linux-azure-5.8-5.8.0/fs/aufs/dynop.c @@ -0,0 +1,367 @@ +// SPDX-License-Identifier: GPL-2.0 +/* + * Copyright (C) 2010-2020 Junjiro R. Okajima + * + * This program, aufs is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; either version 2 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + */ + +/* + * dynamically customizable operations for regular files + */ + +#include "aufs.h" + +#define DyPrSym(key) AuDbgSym(key->dk_op.dy_hop) + +/* + * How large will these lists be? + * Usually just a few elements, 20-30 at most for each, I guess. + */ +static struct hlist_bl_head dynop[AuDyLast]; + +static struct au_dykey *dy_gfind_get(struct hlist_bl_head *hbl, + const void *h_op) +{ + struct au_dykey *key, *tmp; + struct hlist_bl_node *pos; + + key = NULL; + hlist_bl_lock(hbl); + hlist_bl_for_each_entry(tmp, pos, hbl, dk_hnode) + if (tmp->dk_op.dy_hop == h_op) { + if (kref_get_unless_zero(&tmp->dk_kref)) + key = tmp; + break; + } + hlist_bl_unlock(hbl); + + return key; +} + +static struct au_dykey *dy_bradd(struct au_branch *br, struct au_dykey *key) +{ + struct au_dykey **k, *found; + const void *h_op = key->dk_op.dy_hop; + int i; + + found = NULL; + k = br->br_dykey; + for (i = 0; i < AuBrDynOp; i++) + if (k[i]) { + if (k[i]->dk_op.dy_hop == h_op) { + found = k[i]; + break; + } + } else + break; + if (!found) { + spin_lock(&br->br_dykey_lock); + for (; i < AuBrDynOp; i++) + if (k[i]) { + if (k[i]->dk_op.dy_hop == h_op) { + found = k[i]; + break; + } + } else { + k[i] = key; + break; + } + spin_unlock(&br->br_dykey_lock); + BUG_ON(i == AuBrDynOp); /* expand the array */ + } + + return found; +} + +/* kref_get() if @key is already added */ +static struct au_dykey *dy_gadd(struct hlist_bl_head *hbl, struct au_dykey *key) +{ + struct au_dykey *tmp, *found; + struct hlist_bl_node *pos; + const void *h_op = key->dk_op.dy_hop; + + found = NULL; + hlist_bl_lock(hbl); + hlist_bl_for_each_entry(tmp, pos, hbl, dk_hnode) + if (tmp->dk_op.dy_hop == h_op) { + if (kref_get_unless_zero(&tmp->dk_kref)) + found = tmp; + break; + } + if (!found) + hlist_bl_add_head(&key->dk_hnode, hbl); + hlist_bl_unlock(hbl); + + if (!found) + DyPrSym(key); + return found; +} + +static void dy_free_rcu(struct rcu_head *rcu) +{ + struct au_dykey *key; + + key = container_of(rcu, struct au_dykey, dk_rcu); + DyPrSym(key); + kfree(key); +} + +static void dy_free(struct kref *kref) +{ + struct au_dykey *key; + struct hlist_bl_head *hbl; + + key = container_of(kref, struct au_dykey, dk_kref); + hbl = dynop + key->dk_op.dy_type; + au_hbl_del(&key->dk_hnode, hbl); + call_rcu(&key->dk_rcu, dy_free_rcu); +} + +void au_dy_put(struct au_dykey *key) +{ + kref_put(&key->dk_kref, dy_free); +} + +/* ---------------------------------------------------------------------- */ + +#define DyDbgSize(cnt, op) AuDebugOn(cnt != sizeof(op)/sizeof(void *)) + +#ifdef CONFIG_AUFS_DEBUG +#define DyDbgDeclare(cnt) unsigned int cnt = 0 +#define DyDbgInc(cnt) do { cnt++; } while (0) +#else +#define DyDbgDeclare(cnt) do {} while (0) +#define DyDbgInc(cnt) do {} while (0) +#endif + +#define DySet(func, dst, src, h_op, h_sb) do { \ + DyDbgInc(cnt); \ + if (h_op->func) { \ + if (src.func) \ + dst.func = src.func; \ + else \ + AuDbg("%s %s\n", au_sbtype(h_sb), #func); \ + } \ +} while (0) + +#define DySetForce(func, dst, src) do { \ + AuDebugOn(!src.func); \ + DyDbgInc(cnt); \ + dst.func = src.func; \ +} while (0) + +#define DySetAop(func) \ + DySet(func, dyaop->da_op, aufs_aop, h_aop, h_sb) +#define DySetAopForce(func) \ + DySetForce(func, dyaop->da_op, aufs_aop) + +static void dy_aop(struct au_dykey *key, const void *h_op, + struct super_block *h_sb __maybe_unused) +{ + struct au_dyaop *dyaop = (void *)key; + const struct address_space_operations *h_aop = h_op; + DyDbgDeclare(cnt); + + AuDbg("%s\n", au_sbtype(h_sb)); + + DySetAop(writepage); + DySetAopForce(readpage); /* force */ + DySetAop(writepages); + DySetAop(set_page_dirty); + DySetAop(readpages); + DySetAop(write_begin); + DySetAop(write_end); + DySetAop(bmap); + DySetAop(invalidatepage); + DySetAop(releasepage); + DySetAop(freepage); + /* this one will be changed according to an aufs mount option */ + DySetAop(direct_IO); + DySetAop(migratepage); + DySetAop(isolate_page); + DySetAop(putback_page); + DySetAop(launder_page); + DySetAop(is_partially_uptodate); + DySetAop(is_dirty_writeback); + DySetAop(error_remove_page); + DySetAop(swap_activate); + DySetAop(swap_deactivate); + + DyDbgSize(cnt, *h_aop); +} + +/* ---------------------------------------------------------------------- */ + +static void dy_bug(struct kref *kref) +{ + BUG(); +} + +static struct au_dykey *dy_get(struct au_dynop *op, struct au_branch *br) +{ + struct au_dykey *key, *old; + struct hlist_bl_head *hbl; + struct op { + unsigned int sz; + void (*set)(struct au_dykey *key, const void *h_op, + struct super_block *h_sb __maybe_unused); + }; + static const struct op a[] = { + [AuDy_AOP] = { + .sz = sizeof(struct au_dyaop), + .set = dy_aop + } + }; + const struct op *p; + + hbl = dynop + op->dy_type; + key = dy_gfind_get(hbl, op->dy_hop); + if (key) + goto out_add; /* success */ + + p = a + op->dy_type; + key = kzalloc(p->sz, GFP_NOFS); + if (unlikely(!key)) { + key = ERR_PTR(-ENOMEM); + goto out; + } + + key->dk_op.dy_hop = op->dy_hop; + kref_init(&key->dk_kref); + p->set(key, op->dy_hop, au_br_sb(br)); + old = dy_gadd(hbl, key); + if (old) { + au_kfree_rcu(key); + key = old; + } + +out_add: + old = dy_bradd(br, key); + if (old) + /* its ref-count should never be zero here */ + kref_put(&key->dk_kref, dy_bug); +out: + return key; +} + +/* ---------------------------------------------------------------------- */ +/* + * Aufs prohibits O_DIRECT by default even if the branch supports it. + * This behaviour is necessary to return an error from open(O_DIRECT) instead + * of the succeeding I/O. The dio mount option enables O_DIRECT and makes + * open(O_DIRECT) always succeed, but the succeeding I/O may return an error. + * See the aufs manual in detail. + */ +static void dy_adx(struct au_dyaop *dyaop, int do_dx) +{ + if (!do_dx) + dyaop->da_op.direct_IO = NULL; + else + dyaop->da_op.direct_IO = aufs_aop.direct_IO; +} + +static struct au_dyaop *dy_aget(struct au_branch *br, + const struct address_space_operations *h_aop, + int do_dx) +{ + struct au_dyaop *dyaop; + struct au_dynop op; + + op.dy_type = AuDy_AOP; + op.dy_haop = h_aop; + dyaop = (void *)dy_get(&op, br); + if (IS_ERR(dyaop)) + goto out; + dy_adx(dyaop, do_dx); + +out: + return dyaop; +} + +int au_dy_iaop(struct inode *inode, aufs_bindex_t bindex, + struct inode *h_inode) +{ + int err, do_dx; + struct super_block *sb; + struct au_branch *br; + struct au_dyaop *dyaop; + + AuDebugOn(!S_ISREG(h_inode->i_mode)); + IiMustWriteLock(inode); + + sb = inode->i_sb; + br = au_sbr(sb, bindex); + do_dx = !!au_opt_test(au_mntflags(sb), DIO); + dyaop = dy_aget(br, h_inode->i_mapping->a_ops, do_dx); + err = PTR_ERR(dyaop); + if (IS_ERR(dyaop)) + /* unnecessary to call dy_fput() */ + goto out; + + err = 0; + inode->i_mapping->a_ops = &dyaop->da_op; + +out: + return err; +} + +/* + * Is it safe to replace a_ops during the inode/file is in operation? + * Yes, I hope so. + */ +int au_dy_irefresh(struct inode *inode) +{ + int err; + aufs_bindex_t btop; + struct inode *h_inode; + + err = 0; + if (S_ISREG(inode->i_mode)) { + btop = au_ibtop(inode); + h_inode = au_h_iptr(inode, btop); + err = au_dy_iaop(inode, btop, h_inode); + } + return err; +} + +void au_dy_arefresh(int do_dx) +{ + struct hlist_bl_head *hbl; + struct hlist_bl_node *pos; + struct au_dykey *key; + + hbl = dynop + AuDy_AOP; + hlist_bl_lock(hbl); + hlist_bl_for_each_entry(key, pos, hbl, dk_hnode) + dy_adx((void *)key, do_dx); + hlist_bl_unlock(hbl); +} + +/* ---------------------------------------------------------------------- */ + +void __init au_dy_init(void) +{ + int i; + + for (i = 0; i < AuDyLast; i++) + INIT_HLIST_BL_HEAD(dynop + i); +} + +void au_dy_fin(void) +{ + int i; + + for (i = 0; i < AuDyLast; i++) + WARN_ON(!hlist_bl_empty(dynop + i)); +} --- linux-azure-5.8-5.8.0.orig/fs/aufs/dynop.h +++ linux-azure-5.8-5.8.0/fs/aufs/dynop.h @@ -0,0 +1,77 @@ +/* SPDX-License-Identifier: GPL-2.0 */ +/* + * Copyright (C) 2010-2020 Junjiro R. Okajima + * + * This program, aufs is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; either version 2 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + */ + +/* + * dynamically customizable operations (for regular files only) + */ + +#ifndef __AUFS_DYNOP_H__ +#define __AUFS_DYNOP_H__ + +#ifdef __KERNEL__ + +#include +#include + +enum {AuDy_AOP, AuDyLast}; + +struct au_dynop { + int dy_type; + union { + const void *dy_hop; + const struct address_space_operations *dy_haop; + }; +}; + +struct au_dykey { + union { + struct hlist_bl_node dk_hnode; + struct rcu_head dk_rcu; + }; + struct au_dynop dk_op; + + /* + * during I am in the branch local array, kref is gotten. when the + * branch is removed, kref is put. + */ + struct kref dk_kref; +}; + +/* stop unioning since their sizes are very different from each other */ +struct au_dyaop { + struct au_dykey da_key; + struct address_space_operations da_op; /* not const */ +}; +/* make sure that 'struct au_dykey *' can be any type */ +static_assert(!offsetof(struct au_dyaop, da_key)); + +/* ---------------------------------------------------------------------- */ + +/* dynop.c */ +struct au_branch; +void au_dy_put(struct au_dykey *key); +int au_dy_iaop(struct inode *inode, aufs_bindex_t bindex, + struct inode *h_inode); +int au_dy_irefresh(struct inode *inode); +void au_dy_arefresh(int do_dio); + +void __init au_dy_init(void); +void au_dy_fin(void); + +#endif /* __KERNEL__ */ +#endif /* __AUFS_DYNOP_H__ */ --- linux-azure-5.8-5.8.0.orig/fs/aufs/export.c +++ linux-azure-5.8-5.8.0/fs/aufs/export.c @@ -0,0 +1,838 @@ +// SPDX-License-Identifier: GPL-2.0 +/* + * Copyright (C) 2005-2020 Junjiro R. Okajima + * + * This program, aufs is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; either version 2 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + */ + +/* + * export via nfs + */ + +#include +#include +#include +#include +#include +#include +#include "aufs.h" + +union conv { +#ifdef CONFIG_AUFS_INO_T_64 + __u32 a[2]; +#else + __u32 a[1]; +#endif + ino_t ino; +}; + +static ino_t decode_ino(__u32 *a) +{ + union conv u; + + BUILD_BUG_ON(sizeof(u.ino) != sizeof(u.a)); + u.a[0] = a[0]; +#ifdef CONFIG_AUFS_INO_T_64 + u.a[1] = a[1]; +#endif + return u.ino; +} + +static void encode_ino(__u32 *a, ino_t ino) +{ + union conv u; + + u.ino = ino; + a[0] = u.a[0]; +#ifdef CONFIG_AUFS_INO_T_64 + a[1] = u.a[1]; +#endif +} + +/* NFS file handle */ +enum { + Fh_br_id, + Fh_sigen, +#ifdef CONFIG_AUFS_INO_T_64 + /* support 64bit inode number */ + Fh_ino1, + Fh_ino2, + Fh_dir_ino1, + Fh_dir_ino2, +#else + Fh_ino1, + Fh_dir_ino1, +#endif + Fh_igen, + Fh_h_type, + Fh_tail, + + Fh_ino = Fh_ino1, + Fh_dir_ino = Fh_dir_ino1 +}; + +static int au_test_anon(struct dentry *dentry) +{ + /* note: read d_flags without d_lock */ + return !!(dentry->d_flags & DCACHE_DISCONNECTED); +} + +int au_test_nfsd(void) +{ + int ret; + struct task_struct *tsk = current; + char comm[sizeof(tsk->comm)]; + + ret = 0; + if (tsk->flags & PF_KTHREAD) { + get_task_comm(comm, tsk); + ret = !strcmp(comm, "nfsd"); + } + + return ret; +} + +/* ---------------------------------------------------------------------- */ +/* inode generation external table */ + +void au_xigen_inc(struct inode *inode) +{ + loff_t pos; + ssize_t sz; + __u32 igen; + struct super_block *sb; + struct au_sbinfo *sbinfo; + + sb = inode->i_sb; + AuDebugOn(!au_opt_test(au_mntflags(sb), XINO)); + + sbinfo = au_sbi(sb); + pos = inode->i_ino; + pos *= sizeof(igen); + igen = inode->i_generation + 1; + sz = xino_fwrite(sbinfo->si_xwrite, sbinfo->si_xigen, &igen, + sizeof(igen), &pos); + if (sz == sizeof(igen)) + return; /* success */ + + if (unlikely(sz >= 0)) + AuIOErr("xigen error (%zd)\n", sz); +} + +int au_xigen_new(struct inode *inode) +{ + int err; + loff_t pos; + ssize_t sz; + struct super_block *sb; + struct au_sbinfo *sbinfo; + struct file *file; + + err = 0; + /* todo: dirty, at mount time */ + if (inode->i_ino == AUFS_ROOT_INO) + goto out; + sb = inode->i_sb; + SiMustAnyLock(sb); + if (unlikely(!au_opt_test(au_mntflags(sb), XINO))) + goto out; + + err = -EFBIG; + pos = inode->i_ino; + if (unlikely(au_loff_max / sizeof(inode->i_generation) - 1 < pos)) { + AuIOErr1("too large i%lld\n", pos); + goto out; + } + pos *= sizeof(inode->i_generation); + + err = 0; + sbinfo = au_sbi(sb); + file = sbinfo->si_xigen; + BUG_ON(!file); + + if (vfsub_f_size_read(file) + < pos + sizeof(inode->i_generation)) { + inode->i_generation = atomic_inc_return(&sbinfo->si_xigen_next); + sz = xino_fwrite(sbinfo->si_xwrite, file, &inode->i_generation, + sizeof(inode->i_generation), &pos); + } else + sz = xino_fread(sbinfo->si_xread, file, &inode->i_generation, + sizeof(inode->i_generation), &pos); + if (sz == sizeof(inode->i_generation)) + goto out; /* success */ + + err = sz; + if (unlikely(sz >= 0)) { + err = -EIO; + AuIOErr("xigen error (%zd)\n", sz); + } + +out: + return err; +} + +int au_xigen_set(struct super_block *sb, struct path *path) +{ + int err; + struct au_sbinfo *sbinfo; + struct file *file; + + SiMustWriteLock(sb); + + sbinfo = au_sbi(sb); + file = au_xino_create2(sb, path, sbinfo->si_xigen); + err = PTR_ERR(file); + if (IS_ERR(file)) + goto out; + err = 0; + if (sbinfo->si_xigen) + fput(sbinfo->si_xigen); + sbinfo->si_xigen = file; + +out: + AuTraceErr(err); + return err; +} + +void au_xigen_clr(struct super_block *sb) +{ + struct au_sbinfo *sbinfo; + + SiMustWriteLock(sb); + + sbinfo = au_sbi(sb); + if (sbinfo->si_xigen) { + fput(sbinfo->si_xigen); + sbinfo->si_xigen = NULL; + } +} + +/* ---------------------------------------------------------------------- */ + +static struct dentry *decode_by_ino(struct super_block *sb, ino_t ino, + ino_t dir_ino) +{ + struct dentry *dentry, *d; + struct inode *inode; + unsigned int sigen; + + dentry = NULL; + inode = ilookup(sb, ino); + if (!inode) + goto out; + + dentry = ERR_PTR(-ESTALE); + sigen = au_sigen(sb); + if (unlikely(au_is_bad_inode(inode) + || IS_DEADDIR(inode) + || sigen != au_iigen(inode, NULL))) + goto out_iput; + + dentry = NULL; + if (!dir_ino || S_ISDIR(inode->i_mode)) + dentry = d_find_alias(inode); + else { + spin_lock(&inode->i_lock); + hlist_for_each_entry(d, &inode->i_dentry, d_u.d_alias) { + spin_lock(&d->d_lock); + if (!au_test_anon(d) + && d_inode(d->d_parent)->i_ino == dir_ino) { + dentry = dget_dlock(d); + spin_unlock(&d->d_lock); + break; + } + spin_unlock(&d->d_lock); + } + spin_unlock(&inode->i_lock); + } + if (unlikely(dentry && au_digen_test(dentry, sigen))) { + /* need to refresh */ + dput(dentry); + dentry = NULL; + } + +out_iput: + iput(inode); +out: + AuTraceErrPtr(dentry); + return dentry; +} + +/* ---------------------------------------------------------------------- */ + +/* todo: dirty? */ +/* if exportfs_decode_fh() passed vfsmount*, we could be happy */ + +struct au_compare_mnt_args { + /* input */ + struct super_block *sb; + + /* output */ + struct vfsmount *mnt; +}; + +static int au_compare_mnt(struct vfsmount *mnt, void *arg) +{ + struct au_compare_mnt_args *a = arg; + + if (mnt->mnt_sb != a->sb) + return 0; + a->mnt = mntget(mnt); + return 1; +} + +static struct vfsmount *au_mnt_get(struct super_block *sb) +{ + int err; + struct path root; + struct au_compare_mnt_args args = { + .sb = sb + }; + + get_fs_root(current->fs, &root); + rcu_read_lock(); + err = iterate_mounts(au_compare_mnt, &args, root.mnt); + rcu_read_unlock(); + path_put(&root); + AuDebugOn(!err); + AuDebugOn(!args.mnt); + return args.mnt; +} + +struct au_nfsd_si_lock { + unsigned int sigen; + aufs_bindex_t bindex, br_id; + unsigned char force_lock; +}; + +static int si_nfsd_read_lock(struct super_block *sb, + struct au_nfsd_si_lock *nsi_lock) +{ + int err; + aufs_bindex_t bindex; + + si_read_lock(sb, AuLock_FLUSH); + + /* branch id may be wrapped around */ + err = 0; + bindex = au_br_index(sb, nsi_lock->br_id); + if (bindex >= 0 && nsi_lock->sigen + AUFS_BRANCH_MAX > au_sigen(sb)) + goto out; /* success */ + + err = -ESTALE; + bindex = -1; + if (!nsi_lock->force_lock) + si_read_unlock(sb); + +out: + nsi_lock->bindex = bindex; + return err; +} + +struct find_name_by_ino { + struct dir_context ctx; + int called, found; + ino_t ino; + char *name; + int namelen; +}; + +static int +find_name_by_ino(struct dir_context *ctx, const char *name, int namelen, + loff_t offset, u64 ino, unsigned int d_type) +{ + struct find_name_by_ino *a = container_of(ctx, struct find_name_by_ino, + ctx); + + a->called++; + if (a->ino != ino) + return 0; + + memcpy(a->name, name, namelen); + a->namelen = namelen; + a->found = 1; + return 1; +} + +static struct dentry *au_lkup_by_ino(struct path *path, ino_t ino, + struct au_nfsd_si_lock *nsi_lock) +{ + struct dentry *dentry, *parent; + struct file *file; + struct inode *dir; + struct find_name_by_ino arg = { + .ctx = { + .actor = find_name_by_ino + } + }; + int err; + + parent = path->dentry; + if (nsi_lock) + si_read_unlock(parent->d_sb); + file = vfsub_dentry_open(path, au_dir_roflags); + dentry = (void *)file; + if (IS_ERR(file)) + goto out; + + dentry = ERR_PTR(-ENOMEM); + arg.name = (void *)__get_free_page(GFP_NOFS); + if (unlikely(!arg.name)) + goto out_file; + arg.ino = ino; + arg.found = 0; + do { + arg.called = 0; + /* smp_mb(); */ + err = vfsub_iterate_dir(file, &arg.ctx); + } while (!err && !arg.found && arg.called); + dentry = ERR_PTR(err); + if (unlikely(err)) + goto out_name; + /* instead of ENOENT */ + dentry = ERR_PTR(-ESTALE); + if (!arg.found) + goto out_name; + + /* do not call vfsub_lkup_one() */ + dir = d_inode(parent); + dentry = vfsub_lookup_one_len_unlocked(arg.name, parent, arg.namelen); + AuTraceErrPtr(dentry); + if (IS_ERR(dentry)) + goto out_name; + AuDebugOn(au_test_anon(dentry)); + if (unlikely(d_really_is_negative(dentry))) { + dput(dentry); + dentry = ERR_PTR(-ENOENT); + } + +out_name: + free_page((unsigned long)arg.name); +out_file: + fput(file); +out: + if (unlikely(nsi_lock + && si_nfsd_read_lock(parent->d_sb, nsi_lock) < 0)) + if (!IS_ERR(dentry)) { + dput(dentry); + dentry = ERR_PTR(-ESTALE); + } + AuTraceErrPtr(dentry); + return dentry; +} + +static struct dentry *decode_by_dir_ino(struct super_block *sb, ino_t ino, + ino_t dir_ino, + struct au_nfsd_si_lock *nsi_lock) +{ + struct dentry *dentry; + struct path path; + + if (dir_ino != AUFS_ROOT_INO) { + path.dentry = decode_by_ino(sb, dir_ino, 0); + dentry = path.dentry; + if (!path.dentry || IS_ERR(path.dentry)) + goto out; + AuDebugOn(au_test_anon(path.dentry)); + } else + path.dentry = dget(sb->s_root); + + path.mnt = au_mnt_get(sb); + dentry = au_lkup_by_ino(&path, ino, nsi_lock); + path_put(&path); + +out: + AuTraceErrPtr(dentry); + return dentry; +} + +/* ---------------------------------------------------------------------- */ + +static int h_acceptable(void *expv, struct dentry *dentry) +{ + return 1; +} + +static char *au_build_path(struct dentry *h_parent, struct path *h_rootpath, + char *buf, int len, struct super_block *sb) +{ + char *p; + int n; + struct path path; + + p = d_path(h_rootpath, buf, len); + if (IS_ERR(p)) + goto out; + n = strlen(p); + + path.mnt = h_rootpath->mnt; + path.dentry = h_parent; + p = d_path(&path, buf, len); + if (IS_ERR(p)) + goto out; + if (n != 1) + p += n; + + path.mnt = au_mnt_get(sb); + path.dentry = sb->s_root; + p = d_path(&path, buf, len - strlen(p)); + mntput(path.mnt); + if (IS_ERR(p)) + goto out; + if (n != 1) + p[strlen(p)] = '/'; + +out: + AuTraceErrPtr(p); + return p; +} + +static +struct dentry *decode_by_path(struct super_block *sb, ino_t ino, __u32 *fh, + int fh_len, struct au_nfsd_si_lock *nsi_lock) +{ + struct dentry *dentry, *h_parent, *root; + struct super_block *h_sb; + char *pathname, *p; + struct vfsmount *h_mnt; + struct au_branch *br; + int err; + struct path path; + + br = au_sbr(sb, nsi_lock->bindex); + h_mnt = au_br_mnt(br); + h_sb = h_mnt->mnt_sb; + /* todo: call lower fh_to_dentry()? fh_to_parent()? */ + lockdep_off(); + h_parent = exportfs_decode_fh(h_mnt, (void *)(fh + Fh_tail), + fh_len - Fh_tail, fh[Fh_h_type], + h_acceptable, /*context*/NULL); + lockdep_on(); + dentry = h_parent; + if (unlikely(!h_parent || IS_ERR(h_parent))) { + AuWarn1("%s decode_fh failed, %ld\n", + au_sbtype(h_sb), PTR_ERR(h_parent)); + goto out; + } + dentry = NULL; + if (unlikely(au_test_anon(h_parent))) { + AuWarn1("%s decode_fh returned a disconnected dentry\n", + au_sbtype(h_sb)); + goto out_h_parent; + } + + dentry = ERR_PTR(-ENOMEM); + pathname = (void *)__get_free_page(GFP_NOFS); + if (unlikely(!pathname)) + goto out_h_parent; + + root = sb->s_root; + path.mnt = h_mnt; + di_read_lock_parent(root, !AuLock_IR); + path.dentry = au_h_dptr(root, nsi_lock->bindex); + di_read_unlock(root, !AuLock_IR); + p = au_build_path(h_parent, &path, pathname, PAGE_SIZE, sb); + dentry = (void *)p; + if (IS_ERR(p)) + goto out_pathname; + + si_read_unlock(sb); + err = vfsub_kern_path(p, LOOKUP_FOLLOW | LOOKUP_DIRECTORY, &path); + dentry = ERR_PTR(err); + if (unlikely(err)) + goto out_relock; + + dentry = ERR_PTR(-ENOENT); + AuDebugOn(au_test_anon(path.dentry)); + if (unlikely(d_really_is_negative(path.dentry))) + goto out_path; + + if (ino != d_inode(path.dentry)->i_ino) + dentry = au_lkup_by_ino(&path, ino, /*nsi_lock*/NULL); + else + dentry = dget(path.dentry); + +out_path: + path_put(&path); +out_relock: + if (unlikely(si_nfsd_read_lock(sb, nsi_lock) < 0)) + if (!IS_ERR(dentry)) { + dput(dentry); + dentry = ERR_PTR(-ESTALE); + } +out_pathname: + free_page((unsigned long)pathname); +out_h_parent: + dput(h_parent); +out: + AuTraceErrPtr(dentry); + return dentry; +} + +/* ---------------------------------------------------------------------- */ + +static struct dentry * +aufs_fh_to_dentry(struct super_block *sb, struct fid *fid, int fh_len, + int fh_type) +{ + struct dentry *dentry; + __u32 *fh = fid->raw; + struct au_branch *br; + ino_t ino, dir_ino; + struct au_nfsd_si_lock nsi_lock = { + .force_lock = 0 + }; + + dentry = ERR_PTR(-ESTALE); + /* it should never happen, but the file handle is unreliable */ + if (unlikely(fh_len < Fh_tail)) + goto out; + nsi_lock.sigen = fh[Fh_sigen]; + nsi_lock.br_id = fh[Fh_br_id]; + + /* branch id may be wrapped around */ + br = NULL; + if (unlikely(si_nfsd_read_lock(sb, &nsi_lock))) + goto out; + nsi_lock.force_lock = 1; + + /* is this inode still cached? */ + ino = decode_ino(fh + Fh_ino); + /* it should never happen */ + if (unlikely(ino == AUFS_ROOT_INO)) + goto out_unlock; + + dir_ino = decode_ino(fh + Fh_dir_ino); + dentry = decode_by_ino(sb, ino, dir_ino); + if (IS_ERR(dentry)) + goto out_unlock; + if (dentry) + goto accept; + + /* is the parent dir cached? */ + br = au_sbr(sb, nsi_lock.bindex); + au_lcnt_inc(&br->br_nfiles); + dentry = decode_by_dir_ino(sb, ino, dir_ino, &nsi_lock); + if (IS_ERR(dentry)) + goto out_unlock; + if (dentry) + goto accept; + + /* lookup path */ + dentry = decode_by_path(sb, ino, fh, fh_len, &nsi_lock); + if (IS_ERR(dentry)) + goto out_unlock; + if (unlikely(!dentry)) + /* todo?: make it ESTALE */ + goto out_unlock; + +accept: + if (!au_digen_test(dentry, au_sigen(sb)) + && d_inode(dentry)->i_generation == fh[Fh_igen]) + goto out_unlock; /* success */ + + dput(dentry); + dentry = ERR_PTR(-ESTALE); +out_unlock: + if (br) + au_lcnt_dec(&br->br_nfiles); + si_read_unlock(sb); +out: + AuTraceErrPtr(dentry); + return dentry; +} + +#if 0 /* reserved for future use */ +/* support subtreecheck option */ +static struct dentry *aufs_fh_to_parent(struct super_block *sb, struct fid *fid, + int fh_len, int fh_type) +{ + struct dentry *parent; + __u32 *fh = fid->raw; + ino_t dir_ino; + + dir_ino = decode_ino(fh + Fh_dir_ino); + parent = decode_by_ino(sb, dir_ino, 0); + if (IS_ERR(parent)) + goto out; + if (!parent) + parent = decode_by_path(sb, au_br_index(sb, fh[Fh_br_id]), + dir_ino, fh, fh_len); + +out: + AuTraceErrPtr(parent); + return parent; +} +#endif + +/* ---------------------------------------------------------------------- */ + +static int aufs_encode_fh(struct inode *inode, __u32 *fh, int *max_len, + struct inode *dir) +{ + int err; + aufs_bindex_t bindex; + struct super_block *sb, *h_sb; + struct dentry *dentry, *parent, *h_parent; + struct inode *h_dir; + struct au_branch *br; + + err = -ENOSPC; + if (unlikely(*max_len <= Fh_tail)) { + AuWarn1("NFSv2 client (max_len %d)?\n", *max_len); + goto out; + } + + err = FILEID_ROOT; + if (inode->i_ino == AUFS_ROOT_INO) { + AuDebugOn(inode->i_ino != AUFS_ROOT_INO); + goto out; + } + + h_parent = NULL; + sb = inode->i_sb; + err = si_read_lock(sb, AuLock_FLUSH); + if (unlikely(err)) + goto out; + +#ifdef CONFIG_AUFS_DEBUG + if (unlikely(!au_opt_test(au_mntflags(sb), XINO))) + AuWarn1("NFS-exporting requires xino\n"); +#endif + err = -EIO; + parent = NULL; + ii_read_lock_child(inode); + bindex = au_ibtop(inode); + if (!dir) { + dentry = d_find_any_alias(inode); + if (unlikely(!dentry)) + goto out_unlock; + AuDebugOn(au_test_anon(dentry)); + parent = dget_parent(dentry); + dput(dentry); + if (unlikely(!parent)) + goto out_unlock; + if (d_really_is_positive(parent)) + dir = d_inode(parent); + } + + ii_read_lock_parent(dir); + h_dir = au_h_iptr(dir, bindex); + ii_read_unlock(dir); + if (unlikely(!h_dir)) + goto out_parent; + h_parent = d_find_any_alias(h_dir); + if (unlikely(!h_parent)) + goto out_hparent; + + err = -EPERM; + br = au_sbr(sb, bindex); + h_sb = au_br_sb(br); + if (unlikely(!h_sb->s_export_op)) { + AuErr1("%s branch is not exportable\n", au_sbtype(h_sb)); + goto out_hparent; + } + + fh[Fh_br_id] = br->br_id; + fh[Fh_sigen] = au_sigen(sb); + encode_ino(fh + Fh_ino, inode->i_ino); + encode_ino(fh + Fh_dir_ino, dir->i_ino); + fh[Fh_igen] = inode->i_generation; + + *max_len -= Fh_tail; + fh[Fh_h_type] = exportfs_encode_fh(h_parent, (void *)(fh + Fh_tail), + max_len, + /*connectable or subtreecheck*/0); + err = fh[Fh_h_type]; + *max_len += Fh_tail; + /* todo: macros? */ + if (err != FILEID_INVALID) + err = 99; + else + AuWarn1("%s encode_fh failed\n", au_sbtype(h_sb)); + +out_hparent: + dput(h_parent); +out_parent: + dput(parent); +out_unlock: + ii_read_unlock(inode); + si_read_unlock(sb); +out: + if (unlikely(err < 0)) + err = FILEID_INVALID; + return err; +} + +/* ---------------------------------------------------------------------- */ + +static int aufs_commit_metadata(struct inode *inode) +{ + int err; + aufs_bindex_t bindex; + struct super_block *sb; + struct inode *h_inode; + int (*f)(struct inode *inode); + + sb = inode->i_sb; + si_read_lock(sb, AuLock_FLUSH | AuLock_NOPLMW); + ii_write_lock_child(inode); + bindex = au_ibtop(inode); + AuDebugOn(bindex < 0); + h_inode = au_h_iptr(inode, bindex); + + f = h_inode->i_sb->s_export_op->commit_metadata; + if (f) + err = f(h_inode); + else { + struct writeback_control wbc = { + .sync_mode = WB_SYNC_ALL, + .nr_to_write = 0 /* metadata only */ + }; + + err = sync_inode(h_inode, &wbc); + } + + au_cpup_attr_timesizes(inode); + ii_write_unlock(inode); + si_read_unlock(sb); + return err; +} + +/* ---------------------------------------------------------------------- */ + +static struct export_operations aufs_export_op = { + .fh_to_dentry = aufs_fh_to_dentry, + /* .fh_to_parent = aufs_fh_to_parent, */ + .encode_fh = aufs_encode_fh, + .commit_metadata = aufs_commit_metadata +}; + +void au_export_init(struct super_block *sb) +{ + struct au_sbinfo *sbinfo; + __u32 u; + + BUILD_BUG_ON_MSG(IS_BUILTIN(CONFIG_AUFS_FS) + && IS_MODULE(CONFIG_EXPORTFS), + AUFS_NAME ": unsupported configuration " + "CONFIG_EXPORTFS=m and CONFIG_AUFS_FS=y"); + + sb->s_export_op = &aufs_export_op; + sbinfo = au_sbi(sb); + sbinfo->si_xigen = NULL; + get_random_bytes(&u, sizeof(u)); + BUILD_BUG_ON(sizeof(u) != sizeof(int)); + atomic_set(&sbinfo->si_xigen_next, u); +} --- linux-azure-5.8-5.8.0.orig/fs/aufs/f_op.c +++ linux-azure-5.8-5.8.0/fs/aufs/f_op.c @@ -0,0 +1,819 @@ +// SPDX-License-Identifier: GPL-2.0 +/* + * Copyright (C) 2005-2020 Junjiro R. Okajima + * + * This program, aufs is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; either version 2 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + */ + +/* + * file and vm operations + */ + +#include +#include +#include +#include +#include "aufs.h" + +int au_do_open_nondir(struct file *file, int flags, struct file *h_file) +{ + int err; + aufs_bindex_t bindex; + struct dentry *dentry, *h_dentry; + struct au_finfo *finfo; + struct inode *h_inode; + + FiMustWriteLock(file); + + err = 0; + dentry = file->f_path.dentry; + AuDebugOn(IS_ERR_OR_NULL(dentry)); + finfo = au_fi(file); + memset(&finfo->fi_htop, 0, sizeof(finfo->fi_htop)); + atomic_set(&finfo->fi_mmapped, 0); + bindex = au_dbtop(dentry); + if (!h_file) { + h_dentry = au_h_dptr(dentry, bindex); + err = vfsub_test_mntns(file->f_path.mnt, h_dentry->d_sb); + if (unlikely(err)) + goto out; + h_file = au_h_open(dentry, bindex, flags, file, /*force_wr*/0); + if (IS_ERR(h_file)) { + err = PTR_ERR(h_file); + goto out; + } + } else { + h_dentry = h_file->f_path.dentry; + err = vfsub_test_mntns(file->f_path.mnt, h_dentry->d_sb); + if (unlikely(err)) + goto out; + /* br ref is already inc-ed */ + } + + if ((flags & __O_TMPFILE) + && !(flags & O_EXCL)) { + h_inode = file_inode(h_file); + spin_lock(&h_inode->i_lock); + h_inode->i_state |= I_LINKABLE; + spin_unlock(&h_inode->i_lock); + } + au_set_fbtop(file, bindex); + au_set_h_fptr(file, bindex, h_file); + au_update_figen(file); + /* todo: necessary? */ + /* file->f_ra = h_file->f_ra; */ + +out: + return err; +} + +static int aufs_open_nondir(struct inode *inode __maybe_unused, + struct file *file) +{ + int err; + struct super_block *sb; + struct au_do_open_args args = { + .open = au_do_open_nondir + }; + + AuDbg("%pD, f_flags 0x%x, f_mode 0x%x\n", + file, vfsub_file_flags(file), file->f_mode); + + sb = file->f_path.dentry->d_sb; + si_read_lock(sb, AuLock_FLUSH); + err = au_do_open(file, &args); + si_read_unlock(sb); + return err; +} + +int aufs_release_nondir(struct inode *inode __maybe_unused, struct file *file) +{ + struct au_finfo *finfo; + aufs_bindex_t bindex; + + finfo = au_fi(file); + au_hbl_del(&finfo->fi_hlist, + &au_sbi(file->f_path.dentry->d_sb)->si_files); + bindex = finfo->fi_btop; + if (bindex >= 0) + au_set_h_fptr(file, bindex, NULL); + + au_finfo_fin(file); + return 0; +} + +/* ---------------------------------------------------------------------- */ + +static int au_do_flush_nondir(struct file *file, fl_owner_t id) +{ + int err; + struct file *h_file; + + err = 0; + h_file = au_hf_top(file); + if (h_file) + err = vfsub_flush(h_file, id); + return err; +} + +static int aufs_flush_nondir(struct file *file, fl_owner_t id) +{ + return au_do_flush(file, id, au_do_flush_nondir); +} + +/* ---------------------------------------------------------------------- */ +/* + * read and write functions acquire [fdi]_rwsem once, but release before + * mmap_sem. This is because to stop a race condition between mmap(2). + * Releasing these aufs-rwsem should be safe, no branch-management (by keeping + * si_rwsem), no harmful copy-up should happen. Actually copy-up may happen in + * read functions after [fdi]_rwsem are released, but it should be harmless. + */ + +/* Callers should call au_read_post() or fput() in the end */ +struct file *au_read_pre(struct file *file, int keep_fi, unsigned int lsc) +{ + struct file *h_file; + int err; + + err = au_reval_and_lock_fdi(file, au_reopen_nondir, /*wlock*/0, lsc); + if (!err) { + di_read_unlock(file->f_path.dentry, AuLock_IR); + h_file = au_hf_top(file); + get_file(h_file); + if (!keep_fi) + fi_read_unlock(file); + } else + h_file = ERR_PTR(err); + + return h_file; +} + +static void au_read_post(struct inode *inode, struct file *h_file) +{ + /* update without lock, I don't think it a problem */ + fsstack_copy_attr_atime(inode, file_inode(h_file)); + fput(h_file); +} + +struct au_write_pre { + /* input */ + unsigned int lsc; + + /* output */ + blkcnt_t blks; + aufs_bindex_t btop; +}; + +/* + * return with iinfo is write-locked + * callers should call au_write_post() or iinfo_write_unlock() + fput() in the + * end + */ +static struct file *au_write_pre(struct file *file, int do_ready, + struct au_write_pre *wpre) +{ + struct file *h_file; + struct dentry *dentry; + int err; + unsigned int lsc; + struct au_pin pin; + + lsc = 0; + if (wpre) + lsc = wpre->lsc; + err = au_reval_and_lock_fdi(file, au_reopen_nondir, /*wlock*/1, lsc); + h_file = ERR_PTR(err); + if (unlikely(err)) + goto out; + + dentry = file->f_path.dentry; + if (do_ready) { + err = au_ready_to_write(file, -1, &pin); + if (unlikely(err)) { + h_file = ERR_PTR(err); + di_write_unlock(dentry); + goto out_fi; + } + } + + di_downgrade_lock(dentry, /*flags*/0); + if (wpre) + wpre->btop = au_fbtop(file); + h_file = au_hf_top(file); + get_file(h_file); + if (wpre) + wpre->blks = file_inode(h_file)->i_blocks; + if (do_ready) + au_unpin(&pin); + di_read_unlock(dentry, /*flags*/0); + +out_fi: + fi_write_unlock(file); +out: + return h_file; +} + +static void au_write_post(struct inode *inode, struct file *h_file, + struct au_write_pre *wpre, ssize_t written) +{ + struct inode *h_inode; + + au_cpup_attr_timesizes(inode); + AuDebugOn(au_ibtop(inode) != wpre->btop); + h_inode = file_inode(h_file); + inode->i_mode = h_inode->i_mode; + ii_write_unlock(inode); + /* AuDbg("blks %llu, %llu\n", (u64)blks, (u64)h_inode->i_blocks); */ + if (written > 0) + au_fhsm_wrote(inode->i_sb, wpre->btop, + /*force*/h_inode->i_blocks > wpre->blks); + fput(h_file); +} + +static ssize_t aufs_read(struct file *file, char __user *buf, size_t count, + loff_t *ppos) +{ + ssize_t err; + struct inode *inode; + struct file *h_file; + struct super_block *sb; + + inode = file_inode(file); + sb = inode->i_sb; + si_read_lock(sb, AuLock_FLUSH | AuLock_NOPLMW); + + h_file = au_read_pre(file, /*keep_fi*/0, /*lsc*/0); + err = PTR_ERR(h_file); + if (IS_ERR(h_file)) + goto out; + + /* filedata may be obsoleted by concurrent copyup, but no problem */ + err = vfsub_read_u(h_file, buf, count, ppos); + /* todo: necessary? */ + /* file->f_ra = h_file->f_ra; */ + au_read_post(inode, h_file); + +out: + si_read_unlock(sb); + return err; +} + +/* + * todo: very ugly + * it locks both of i_mutex and si_rwsem for read in safe. + * if the plink maintenance mode continues forever (that is the problem), + * may loop forever. + */ +static void au_mtx_and_read_lock(struct inode *inode) +{ + int err; + struct super_block *sb = inode->i_sb; + + while (1) { + inode_lock(inode); + err = si_read_lock(sb, AuLock_FLUSH | AuLock_NOPLM); + if (!err) + break; + inode_unlock(inode); + si_read_lock(sb, AuLock_NOPLMW); + si_read_unlock(sb); + } +} + +static ssize_t aufs_write(struct file *file, const char __user *ubuf, + size_t count, loff_t *ppos) +{ + ssize_t err; + struct au_write_pre wpre; + struct inode *inode; + struct file *h_file; + char __user *buf = (char __user *)ubuf; + + inode = file_inode(file); + au_mtx_and_read_lock(inode); + + wpre.lsc = 0; + h_file = au_write_pre(file, /*do_ready*/1, &wpre); + err = PTR_ERR(h_file); + if (IS_ERR(h_file)) + goto out; + + err = vfsub_write_u(h_file, buf, count, ppos); + au_write_post(inode, h_file, &wpre, err); + +out: + si_read_unlock(inode->i_sb); + inode_unlock(inode); + return err; +} + +static ssize_t au_do_iter(struct file *h_file, int rw, struct kiocb *kio, + struct iov_iter *iov_iter) +{ + ssize_t err; + struct file *file; + ssize_t (*iter)(struct kiocb *, struct iov_iter *); + + err = security_file_permission(h_file, rw); + if (unlikely(err)) + goto out; + + err = -ENOSYS; /* the branch doesn't have its ->(read|write)_iter() */ + iter = NULL; + if (rw == MAY_READ) + iter = h_file->f_op->read_iter; + else if (rw == MAY_WRITE) + iter = h_file->f_op->write_iter; + + file = kio->ki_filp; + kio->ki_filp = h_file; + if (iter) { + lockdep_off(); + err = iter(kio, iov_iter); + lockdep_on(); + } else + /* currently there is no such fs */ + WARN_ON_ONCE(1); + kio->ki_filp = file; + +out: + return err; +} + +static ssize_t aufs_read_iter(struct kiocb *kio, struct iov_iter *iov_iter) +{ + ssize_t err; + struct file *file, *h_file; + struct inode *inode; + struct super_block *sb; + + file = kio->ki_filp; + inode = file_inode(file); + sb = inode->i_sb; + si_read_lock(sb, AuLock_FLUSH | AuLock_NOPLMW); + + h_file = au_read_pre(file, /*keep_fi*/1, /*lsc*/0); + err = PTR_ERR(h_file); + if (IS_ERR(h_file)) + goto out; + + if (0 && au_test_loopback_kthread()) { + au_warn_loopback(h_file->f_path.dentry->d_sb); + if (file->f_mapping != h_file->f_mapping) { + file->f_mapping = h_file->f_mapping; + smp_mb(); /* unnecessary? */ + } + } + fi_read_unlock(file); + + err = au_do_iter(h_file, MAY_READ, kio, iov_iter); + /* todo: necessary? */ + /* file->f_ra = h_file->f_ra; */ + au_read_post(inode, h_file); + +out: + si_read_unlock(sb); + return err; +} + +static ssize_t aufs_write_iter(struct kiocb *kio, struct iov_iter *iov_iter) +{ + ssize_t err; + struct au_write_pre wpre; + struct inode *inode; + struct file *file, *h_file; + + file = kio->ki_filp; + inode = file_inode(file); + au_mtx_and_read_lock(inode); + + wpre.lsc = 0; + h_file = au_write_pre(file, /*do_ready*/1, &wpre); + err = PTR_ERR(h_file); + if (IS_ERR(h_file)) + goto out; + + err = au_do_iter(h_file, MAY_WRITE, kio, iov_iter); + au_write_post(inode, h_file, &wpre, err); + +out: + si_read_unlock(inode->i_sb); + inode_unlock(inode); + return err; +} + +static ssize_t aufs_splice_read(struct file *file, loff_t *ppos, + struct pipe_inode_info *pipe, size_t len, + unsigned int flags) +{ + ssize_t err; + struct file *h_file; + struct inode *inode; + struct super_block *sb; + + inode = file_inode(file); + sb = inode->i_sb; + si_read_lock(sb, AuLock_FLUSH | AuLock_NOPLMW); + + h_file = au_read_pre(file, /*keep_fi*/0, /*lsc*/0); + err = PTR_ERR(h_file); + if (IS_ERR(h_file)) + goto out; + + err = vfsub_splice_to(h_file, ppos, pipe, len, flags); + /* todo: necessary? */ + /* file->f_ra = h_file->f_ra; */ + au_read_post(inode, h_file); + +out: + si_read_unlock(sb); + return err; +} + +static ssize_t +aufs_splice_write(struct pipe_inode_info *pipe, struct file *file, loff_t *ppos, + size_t len, unsigned int flags) +{ + ssize_t err; + struct au_write_pre wpre; + struct inode *inode; + struct file *h_file; + + inode = file_inode(file); + au_mtx_and_read_lock(inode); + + wpre.lsc = 0; + h_file = au_write_pre(file, /*do_ready*/1, &wpre); + err = PTR_ERR(h_file); + if (IS_ERR(h_file)) + goto out; + + err = vfsub_splice_from(pipe, h_file, ppos, len, flags); + au_write_post(inode, h_file, &wpre, err); + +out: + si_read_unlock(inode->i_sb); + inode_unlock(inode); + return err; +} + +static long aufs_fallocate(struct file *file, int mode, loff_t offset, + loff_t len) +{ + long err; + struct au_write_pre wpre; + struct inode *inode; + struct file *h_file; + + inode = file_inode(file); + au_mtx_and_read_lock(inode); + + wpre.lsc = 0; + h_file = au_write_pre(file, /*do_ready*/1, &wpre); + err = PTR_ERR(h_file); + if (IS_ERR(h_file)) + goto out; + + lockdep_off(); + err = vfs_fallocate(h_file, mode, offset, len); + lockdep_on(); + au_write_post(inode, h_file, &wpre, /*written*/1); + +out: + si_read_unlock(inode->i_sb); + inode_unlock(inode); + return err; +} + +static ssize_t aufs_copy_file_range(struct file *src, loff_t src_pos, + struct file *dst, loff_t dst_pos, + size_t len, unsigned int flags) +{ + ssize_t err; + struct au_write_pre wpre; + enum { SRC, DST }; + struct { + struct inode *inode; + struct file *h_file; + struct super_block *h_sb; + } a[2]; +#define a_src a[SRC] +#define a_dst a[DST] + + err = -EINVAL; + a_src.inode = file_inode(src); + if (unlikely(!S_ISREG(a_src.inode->i_mode))) + goto out; + a_dst.inode = file_inode(dst); + if (unlikely(!S_ISREG(a_dst.inode->i_mode))) + goto out; + + au_mtx_and_read_lock(a_dst.inode); + /* + * in order to match the order in di_write_lock2_{child,parent}(), + * use f_path.dentry for this comparison. + */ + if (src->f_path.dentry < dst->f_path.dentry) { + a_src.h_file = au_read_pre(src, /*keep_fi*/1, AuLsc_FI_1); + err = PTR_ERR(a_src.h_file); + if (IS_ERR(a_src.h_file)) + goto out_si; + + wpre.lsc = AuLsc_FI_2; + a_dst.h_file = au_write_pre(dst, /*do_ready*/1, &wpre); + err = PTR_ERR(a_dst.h_file); + if (IS_ERR(a_dst.h_file)) { + au_read_post(a_src.inode, a_src.h_file); + goto out_si; + } + } else { + wpre.lsc = AuLsc_FI_1; + a_dst.h_file = au_write_pre(dst, /*do_ready*/1, &wpre); + err = PTR_ERR(a_dst.h_file); + if (IS_ERR(a_dst.h_file)) + goto out_si; + + a_src.h_file = au_read_pre(src, /*keep_fi*/1, AuLsc_FI_2); + err = PTR_ERR(a_src.h_file); + if (IS_ERR(a_src.h_file)) { + au_write_post(a_dst.inode, a_dst.h_file, &wpre, + /*written*/0); + goto out_si; + } + } + + err = -EXDEV; + a_src.h_sb = file_inode(a_src.h_file)->i_sb; + a_dst.h_sb = file_inode(a_dst.h_file)->i_sb; + if (unlikely(a_src.h_sb != a_dst.h_sb)) { + AuDbgFile(src); + AuDbgFile(dst); + goto out_file; + } + + err = vfsub_copy_file_range(a_src.h_file, src_pos, a_dst.h_file, + dst_pos, len, flags); + +out_file: + au_write_post(a_dst.inode, a_dst.h_file, &wpre, err); + fi_read_unlock(src); + au_read_post(a_src.inode, a_src.h_file); +out_si: + si_read_unlock(a_dst.inode->i_sb); + inode_unlock(a_dst.inode); +out: + return err; +#undef a_src +#undef a_dst +} + +/* ---------------------------------------------------------------------- */ + +/* + * The locking order around current->mmap_sem. + * - in most and regular cases + * file I/O syscall -- aufs_read() or something + * -- si_rwsem for read -- mmap_sem + * (Note that [fdi]i_rwsem are released before mmap_sem). + * - in mmap case + * mmap(2) -- mmap_sem -- aufs_mmap() -- si_rwsem for read -- [fdi]i_rwsem + * This AB-BA order is definitely bad, but is not a problem since "si_rwsem for + * read" allows multiple processes to acquire it and [fdi]i_rwsem are not held + * in file I/O. Aufs needs to stop lockdep in aufs_mmap() though. + * It means that when aufs acquires si_rwsem for write, the process should never + * acquire mmap_sem. + * + * Actually aufs_iterate() holds [fdi]i_rwsem before mmap_sem, but this is not a + * problem either since any directory is not able to be mmap-ed. + * The similar scenario is applied to aufs_readlink() too. + */ + +#if 0 /* stop calling security_file_mmap() */ +/* cf. linux/include/linux/mman.h: calc_vm_prot_bits() */ +#define AuConv_VM_PROT(f, b) _calc_vm_trans(f, VM_##b, PROT_##b) + +static unsigned long au_arch_prot_conv(unsigned long flags) +{ + /* currently ppc64 only */ +#ifdef CONFIG_PPC64 + /* cf. linux/arch/powerpc/include/asm/mman.h */ + AuDebugOn(arch_calc_vm_prot_bits(-1) != VM_SAO); + return AuConv_VM_PROT(flags, SAO); +#else + AuDebugOn(arch_calc_vm_prot_bits(-1)); + return 0; +#endif +} + +static unsigned long au_prot_conv(unsigned long flags) +{ + return AuConv_VM_PROT(flags, READ) + | AuConv_VM_PROT(flags, WRITE) + | AuConv_VM_PROT(flags, EXEC) + | au_arch_prot_conv(flags); +} + +/* cf. linux/include/linux/mman.h: calc_vm_flag_bits() */ +#define AuConv_VM_MAP(f, b) _calc_vm_trans(f, VM_##b, MAP_##b) + +static unsigned long au_flag_conv(unsigned long flags) +{ + return AuConv_VM_MAP(flags, GROWSDOWN) + | AuConv_VM_MAP(flags, DENYWRITE) + | AuConv_VM_MAP(flags, LOCKED); +} +#endif + +static int aufs_mmap(struct file *file, struct vm_area_struct *vma) +{ + int err; + const unsigned char wlock + = (file->f_mode & FMODE_WRITE) && (vma->vm_flags & VM_SHARED); + struct super_block *sb; + struct file *h_file; + struct inode *inode; + + AuDbgVmRegion(file, vma); + + inode = file_inode(file); + sb = inode->i_sb; + lockdep_off(); + si_read_lock(sb, AuLock_NOPLMW); + + h_file = au_write_pre(file, wlock, /*wpre*/NULL); + lockdep_on(); + err = PTR_ERR(h_file); + if (IS_ERR(h_file)) + goto out; + + err = 0; + au_set_mmapped(file); + au_vm_file_reset(vma, h_file); + /* + * we cannot call security_mmap_file() here since it may acquire + * mmap_sem or i_mutex. + * + * err = security_mmap_file(h_file, au_prot_conv(vma->vm_flags), + * au_flag_conv(vma->vm_flags)); + */ + if (!err) + err = call_mmap(h_file, vma); + if (!err) { + au_vm_prfile_set(vma, file); + fsstack_copy_attr_atime(inode, file_inode(h_file)); + goto out_fput; /* success */ + } + au_unset_mmapped(file); + au_vm_file_reset(vma, file); + +out_fput: + lockdep_off(); + ii_write_unlock(inode); + lockdep_on(); + fput(h_file); +out: + lockdep_off(); + si_read_unlock(sb); + lockdep_on(); + AuTraceErr(err); + return err; +} + +/* ---------------------------------------------------------------------- */ + +static int aufs_fsync_nondir(struct file *file, loff_t start, loff_t end, + int datasync) +{ + int err; + struct au_write_pre wpre; + struct inode *inode; + struct file *h_file; + + err = 0; /* -EBADF; */ /* posix? */ + if (unlikely(!(file->f_mode & FMODE_WRITE))) + goto out; + + inode = file_inode(file); + au_mtx_and_read_lock(inode); + + wpre.lsc = 0; + h_file = au_write_pre(file, /*do_ready*/1, &wpre); + err = PTR_ERR(h_file); + if (IS_ERR(h_file)) + goto out_unlock; + + err = vfsub_fsync(h_file, &h_file->f_path, datasync); + au_write_post(inode, h_file, &wpre, /*written*/0); + +out_unlock: + si_read_unlock(inode->i_sb); + inode_unlock(inode); +out: + return err; +} + +static int aufs_fasync(int fd, struct file *file, int flag) +{ + int err; + struct file *h_file; + struct super_block *sb; + + sb = file->f_path.dentry->d_sb; + si_read_lock(sb, AuLock_FLUSH | AuLock_NOPLMW); + + h_file = au_read_pre(file, /*keep_fi*/0, /*lsc*/0); + err = PTR_ERR(h_file); + if (IS_ERR(h_file)) + goto out; + + if (h_file->f_op->fasync) + err = h_file->f_op->fasync(fd, h_file, flag); + fput(h_file); /* instead of au_read_post() */ + +out: + si_read_unlock(sb); + return err; +} + +static int aufs_setfl(struct file *file, unsigned long arg) +{ + int err; + struct file *h_file; + struct super_block *sb; + + sb = file->f_path.dentry->d_sb; + si_read_lock(sb, AuLock_FLUSH | AuLock_NOPLMW); + + h_file = au_read_pre(file, /*keep_fi*/0, /*lsc*/0); + err = PTR_ERR(h_file); + if (IS_ERR(h_file)) + goto out; + + /* stop calling h_file->fasync */ + arg |= vfsub_file_flags(file) & FASYNC; + err = setfl(/*unused fd*/-1, h_file, arg); + fput(h_file); /* instead of au_read_post() */ + +out: + si_read_unlock(sb); + return err; +} + +/* ---------------------------------------------------------------------- */ + +/* no one supports this operation, currently */ +#if 0 /* reserved for future use */ +static ssize_t aufs_sendpage(struct file *file, struct page *page, int offset, + size_t len, loff_t *pos, int more) +{ +} +#endif + +/* ---------------------------------------------------------------------- */ + +const struct file_operations aufs_file_fop = { + .owner = THIS_MODULE, + + .llseek = default_llseek, + + .read = aufs_read, + .write = aufs_write, + .read_iter = aufs_read_iter, + .write_iter = aufs_write_iter, + +#ifdef CONFIG_AUFS_POLL + .poll = aufs_poll, +#endif + .unlocked_ioctl = aufs_ioctl_nondir, +#ifdef CONFIG_COMPAT + .compat_ioctl = aufs_compat_ioctl_nondir, +#endif + .mmap = aufs_mmap, + .open = aufs_open_nondir, + .flush = aufs_flush_nondir, + .release = aufs_release_nondir, + .fsync = aufs_fsync_nondir, + .fasync = aufs_fasync, + /* .sendpage = aufs_sendpage, */ + .setfl = aufs_setfl, + .splice_write = aufs_splice_write, + .splice_read = aufs_splice_read, +#if 0 /* reserved for future use */ + .aio_splice_write = aufs_aio_splice_write, + .aio_splice_read = aufs_aio_splice_read, +#endif + .fallocate = aufs_fallocate, + .copy_file_range = aufs_copy_file_range +}; --- linux-azure-5.8-5.8.0.orig/fs/aufs/fhsm.c +++ linux-azure-5.8-5.8.0/fs/aufs/fhsm.c @@ -0,0 +1,427 @@ +// SPDX-License-Identifier: GPL-2.0 +/* + * Copyright (C) 2011-2020 Junjiro R. Okajima + * + * This program, aufs is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; either version 2 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program; if not, write to the Free Software + * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA + */ + +/* + * File-based Hierarchy Storage Management + */ + +#include +#include +#include +#include +#include "aufs.h" + +static aufs_bindex_t au_fhsm_bottom(struct super_block *sb) +{ + struct au_sbinfo *sbinfo; + struct au_fhsm *fhsm; + + SiMustAnyLock(sb); + + sbinfo = au_sbi(sb); + fhsm = &sbinfo->si_fhsm; + AuDebugOn(!fhsm); + return fhsm->fhsm_bottom; +} + +void au_fhsm_set_bottom(struct super_block *sb, aufs_bindex_t bindex) +{ + struct au_sbinfo *sbinfo; + struct au_fhsm *fhsm; + + SiMustWriteLock(sb); + + sbinfo = au_sbi(sb); + fhsm = &sbinfo->si_fhsm; + AuDebugOn(!fhsm); + fhsm->fhsm_bottom = bindex; +} + +/* ---------------------------------------------------------------------- */ + +static int au_fhsm_test_jiffy(struct au_sbinfo *sbinfo, struct au_branch *br) +{ + struct au_br_fhsm *bf; + + bf = br->br_fhsm; + MtxMustLock(&bf->bf_lock); + + return !bf->bf_readable + || time_after(jiffies, + bf->bf_jiffy + sbinfo->si_fhsm.fhsm_expire); +} + +/* ---------------------------------------------------------------------- */ + +static void au_fhsm_notify(struct super_block *sb, int val) +{ + struct au_sbinfo *sbinfo; + struct au_fhsm *fhsm; + + SiMustAnyLock(sb); + + sbinfo = au_sbi(sb); + fhsm = &sbinfo->si_fhsm; + if (au_fhsm_pid(fhsm) + && atomic_read(&fhsm->fhsm_readable) != -1) { + atomic_set(&fhsm->fhsm_readable, val); + if (val) + wake_up(&fhsm->fhsm_wqh); + } +} + +static int au_fhsm_stfs(struct super_block *sb, aufs_bindex_t bindex, + struct aufs_stfs *rstfs, int do_lock, int do_notify) +{ + int err; + struct au_branch *br; + struct au_br_fhsm *bf; + + br = au_sbr(sb, bindex); + AuDebugOn(au_br_rdonly(br)); + bf = br->br_fhsm; + AuDebugOn(!bf); + + if (do_lock) + mutex_lock(&bf->bf_lock); + else + MtxMustLock(&bf->bf_lock); + + /* sb->s_root for NFS is unreliable */ + err = au_br_stfs(br, &bf->bf_stfs); + if (unlikely(err)) { + AuErr1("FHSM failed (%d), b%d, ignored.\n", bindex, err); + goto out; + } + + bf->bf_jiffy = jiffies; + bf->bf_readable = 1; + if (do_notify) + au_fhsm_notify(sb, /*val*/1); + if (rstfs) + *rstfs = bf->bf_stfs; + +out: + if (do_lock) + mutex_unlock(&bf->bf_lock); + au_fhsm_notify(sb, /*val*/1); + + return err; +} + +void au_fhsm_wrote(struct super_block *sb, aufs_bindex_t bindex, int force) +{ + int err; + struct au_sbinfo *sbinfo; + struct au_fhsm *fhsm; + struct au_branch *br; + struct au_br_fhsm *bf; + + AuDbg("b%d, force %d\n", bindex, force); + SiMustAnyLock(sb); + + sbinfo = au_sbi(sb); + fhsm = &sbinfo->si_fhsm; + if (!au_ftest_si(sbinfo, FHSM) + || fhsm->fhsm_bottom == bindex) + return; + + br = au_sbr(sb, bindex); + bf = br->br_fhsm; + AuDebugOn(!bf); + mutex_lock(&bf->bf_lock); + if (force + || au_fhsm_pid(fhsm) + || au_fhsm_test_jiffy(sbinfo, br)) + err = au_fhsm_stfs(sb, bindex, /*rstfs*/NULL, /*do_lock*/0, + /*do_notify*/1); + mutex_unlock(&bf->bf_lock); +} + +void au_fhsm_wrote_all(struct super_block *sb, int force) +{ + aufs_bindex_t bindex, bbot; + struct au_branch *br; + + /* exclude the bottom */ + bbot = au_fhsm_bottom(sb); + for (bindex = 0; bindex < bbot; bindex++) { + br = au_sbr(sb, bindex); + if (au_br_fhsm(br->br_perm)) + au_fhsm_wrote(sb, bindex, force); + } +} + +/* ---------------------------------------------------------------------- */ + +static __poll_t au_fhsm_poll(struct file *file, struct poll_table_struct *wait) +{ + __poll_t mask; + struct au_sbinfo *sbinfo; + struct au_fhsm *fhsm; + + mask = 0; + sbinfo = file->private_data; + fhsm = &sbinfo->si_fhsm; + poll_wait(file, &fhsm->fhsm_wqh, wait); + if (atomic_read(&fhsm->fhsm_readable)) + mask = EPOLLIN /* | EPOLLRDNORM */; + + if (!mask) + AuDbg("mask 0x%x\n", mask); + return mask; +} + +static int au_fhsm_do_read_one(struct aufs_stbr __user *stbr, + struct aufs_stfs *stfs, __s16 brid) +{ + int err; + + err = copy_to_user(&stbr->stfs, stfs, sizeof(*stfs)); + if (!err) + err = __put_user(brid, &stbr->brid); + if (unlikely(err)) + err = -EFAULT; + + return err; +} + +static ssize_t au_fhsm_do_read(struct super_block *sb, + struct aufs_stbr __user *stbr, size_t count) +{ + ssize_t err; + int nstbr; + aufs_bindex_t bindex, bbot; + struct au_branch *br; + struct au_br_fhsm *bf; + + /* except the bottom branch */ + err = 0; + nstbr = 0; + bbot = au_fhsm_bottom(sb); + for (bindex = 0; !err && bindex < bbot; bindex++) { + br = au_sbr(sb, bindex); + if (!au_br_fhsm(br->br_perm)) + continue; + + bf = br->br_fhsm; + mutex_lock(&bf->bf_lock); + if (bf->bf_readable) { + err = -EFAULT; + if (count >= sizeof(*stbr)) + err = au_fhsm_do_read_one(stbr++, &bf->bf_stfs, + br->br_id); + if (!err) { + bf->bf_readable = 0; + count -= sizeof(*stbr); + nstbr++; + } + } + mutex_unlock(&bf->bf_lock); + } + if (!err) + err = sizeof(*stbr) * nstbr; + + return err; +} + +static ssize_t au_fhsm_read(struct file *file, char __user *buf, size_t count, + loff_t *pos) +{ + ssize_t err; + int readable; + aufs_bindex_t nfhsm, bindex, bbot; + struct au_sbinfo *sbinfo; + struct au_fhsm *fhsm; + struct au_branch *br; + struct super_block *sb; + + err = 0; + sbinfo = file->private_data; + fhsm = &sbinfo->si_fhsm; +need_data: + spin_lock_irq(&fhsm->fhsm_wqh.lock); + if (!atomic_read(&fhsm->fhsm_readable)) { + if (vfsub_file_flags(file) & O_NONBLOCK) + err = -EAGAIN; + else + err = wait_event_interruptible_locked_irq + (fhsm->fhsm_wqh, + atomic_read(&fhsm->fhsm_readable)); + } + spin_unlock_irq(&fhsm->fhsm_wqh.lock); + if (unlikely(err)) + goto out; + + /* sb may already be dead */ + au_rw_read_lock(&sbinfo->si_rwsem); + readable = atomic_read(&fhsm->fhsm_readable); + if (readable > 0) { + sb = sbinfo->si_sb; + AuDebugOn(!sb); + /* exclude the bottom branch */ + nfhsm = 0; + bbot = au_fhsm_bottom(sb); + for (bindex = 0; bindex < bbot; bindex++) { + br = au_sbr(sb, bindex); + if (au_br_fhsm(br->br_perm)) + nfhsm++; + } + err = -EMSGSIZE; + if (nfhsm * sizeof(struct aufs_stbr) <= count) { + atomic_set(&fhsm->fhsm_readable, 0); + err = au_fhsm_do_read(sbinfo->si_sb, (void __user *)buf, + count); + } + } + au_rw_read_unlock(&sbinfo->si_rwsem); + if (!readable) + goto need_data; + +out: + return err; +} + +static int au_fhsm_release(struct inode *inode, struct file *file) +{ + struct au_sbinfo *sbinfo; + struct au_fhsm *fhsm; + + /* sb may already be dead */ + sbinfo = file->private_data; + fhsm = &sbinfo->si_fhsm; + spin_lock(&fhsm->fhsm_spin); + fhsm->fhsm_pid = 0; + spin_unlock(&fhsm->fhsm_spin); + kobject_put(&sbinfo->si_kobj); + + return 0; +} + +static const struct file_operations au_fhsm_fops = { + .owner = THIS_MODULE, + .llseek = noop_llseek, + .read = au_fhsm_read, + .poll = au_fhsm_poll, + .release = au_fhsm_release +}; + +int au_fhsm_fd(struct super_block *sb, int oflags) +{ + int err, fd; + struct au_sbinfo *sbinfo; + struct au_fhsm *fhsm; + + err = -EPERM; + if (unlikely(!capable(CAP_SYS_ADMIN))) + goto out; + + err = -EINVAL; + if (unlikely(oflags & ~(O_CLOEXEC | O_NONBLOCK))) + goto out; + + err = 0; + sbinfo = au_sbi(sb); + fhsm = &sbinfo->si_fhsm; + spin_lock(&fhsm->fhsm_spin); + if (!fhsm->fhsm_pid) + fhsm->fhsm_pid = current->pid; + else + err = -EBUSY; + spin_unlock(&fhsm->fhsm_spin); + if (unlikely(err)) + goto out; + + oflags |= O_RDONLY; + /* oflags |= FMODE_NONOTIFY; */ + fd = anon_inode_getfd("[aufs_fhsm]", &au_fhsm_fops, sbinfo, oflags); + err = fd; + if (unlikely(fd < 0)) + goto out_pid; + + /* succeed regardless 'fhsm' status */ + kobject_get(&sbinfo->si_kobj); + si_noflush_read_lock(sb); + if (au_ftest_si(sbinfo, FHSM)) + au_fhsm_wrote_all(sb, /*force*/0); + si_read_unlock(sb); + goto out; /* success */ + +out_pid: + spin_lock(&fhsm->fhsm_spin); + fhsm->fhsm_pid = 0; + spin_unlock(&fhsm->fhsm_spin); +out: + AuTraceErr(err); + return err; +} + +/* ---------------------------------------------------------------------- */ + +int au_fhsm_br_alloc(struct au_branch *br) +{ + int err; + + err = 0; + br->br_fhsm = kmalloc(sizeof(*br->br_fhsm), GFP_NOFS); + if (br->br_fhsm) + au_br_fhsm_init(br->br_fhsm); + else + err = -ENOMEM; + + return err; +} + +/* ---------------------------------------------------------------------- */ + +void au_fhsm_fin(struct super_block *sb) +{ + au_fhsm_notify(sb, /*val*/-1); +} + +void au_fhsm_init(struct au_sbinfo *sbinfo) +{ + struct au_fhsm *fhsm; + + fhsm = &sbinfo->si_fhsm; + spin_lock_init(&fhsm->fhsm_spin); + init_waitqueue_head(&fhsm->fhsm_wqh); + atomic_set(&fhsm->fhsm_readable, 0); + fhsm->fhsm_expire + = msecs_to_jiffies(AUFS_FHSM_CACHE_DEF_SEC * MSEC_PER_SEC); + fhsm->fhsm_bottom = -1; +} + +void au_fhsm_set(struct au_sbinfo *sbinfo, unsigned int sec) +{ + sbinfo->si_fhsm.fhsm_expire + = msecs_to_jiffies(sec * MSEC_PER_SEC); +} + +void au_fhsm_show(struct seq_file *seq, struct au_sbinfo *sbinfo) +{ + unsigned int u; + + if (!au_ftest_si(sbinfo, FHSM)) + return; + + u = jiffies_to_msecs(sbinfo->si_fhsm.fhsm_expire) / MSEC_PER_SEC; + if (u != AUFS_FHSM_CACHE_DEF_SEC) + seq_printf(seq, ",fhsm_sec=%u", u); +} --- linux-azure-5.8-5.8.0.orig/fs/aufs/file.c +++ linux-azure-5.8-5.8.0/fs/aufs/file.c @@ -0,0 +1,863 @@ +// SPDX-License-Identifier: GPL-2.0 +/* + * Copyright (C) 2005-2020 Junjiro R. Okajima + * + * This program, aufs is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; either version 2 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + */ + +/* + * handling file/dir, and address_space operation + */ + +#ifdef CONFIG_AUFS_DEBUG +#include +#endif +#include +#include "aufs.h" + +/* drop flags for writing */ +unsigned int au_file_roflags(unsigned int flags) +{ + flags &= ~(O_WRONLY | O_RDWR | O_APPEND | O_CREAT | O_TRUNC); + flags |= O_RDONLY | O_NOATIME; + return flags; +} + +/* common functions to regular file and dir */ +struct file *au_h_open(struct dentry *dentry, aufs_bindex_t bindex, int flags, + struct file *file, int force_wr) +{ + struct file *h_file; + struct dentry *h_dentry; + struct inode *h_inode; + struct super_block *sb; + struct au_branch *br; + struct path h_path; + int err; + + /* a race condition can happen between open and unlink/rmdir */ + h_file = ERR_PTR(-ENOENT); + h_dentry = au_h_dptr(dentry, bindex); + if (au_test_nfsd() && (!h_dentry || d_is_negative(h_dentry))) + goto out; + h_inode = d_inode(h_dentry); + spin_lock(&h_dentry->d_lock); + err = (!d_unhashed(dentry) && d_unlinked(h_dentry)) + /* || !d_inode(dentry)->i_nlink */ + ; + spin_unlock(&h_dentry->d_lock); + if (unlikely(err)) + goto out; + + sb = dentry->d_sb; + br = au_sbr(sb, bindex); + err = au_br_test_oflag(flags, br); + h_file = ERR_PTR(err); + if (unlikely(err)) + goto out; + + /* drop flags for writing */ + if (au_test_ro(sb, bindex, d_inode(dentry))) { + if (force_wr && !(flags & O_WRONLY)) + force_wr = 0; + flags = au_file_roflags(flags); + if (force_wr) { + h_file = ERR_PTR(-EROFS); + flags = au_file_roflags(flags); + if (unlikely(vfsub_native_ro(h_inode) + || IS_APPEND(h_inode))) + goto out; + flags &= ~O_ACCMODE; + flags |= O_WRONLY; + } + } + flags &= ~O_CREAT; + au_lcnt_inc(&br->br_nfiles); + h_path.dentry = h_dentry; + h_path.mnt = au_br_mnt(br); + h_file = vfsub_dentry_open(&h_path, flags); + if (IS_ERR(h_file)) + goto out_br; + + if (flags & __FMODE_EXEC) { + err = deny_write_access(h_file); + if (unlikely(err)) { + fput(h_file); + h_file = ERR_PTR(err); + goto out_br; + } + } + fsnotify_open(h_file); + goto out; /* success */ + +out_br: + au_lcnt_dec(&br->br_nfiles); +out: + return h_file; +} + +static int au_cmoo(struct dentry *dentry) +{ + int err, cmoo, matched; + unsigned int udba; + struct path h_path; + struct au_pin pin; + struct au_cp_generic cpg = { + .dentry = dentry, + .bdst = -1, + .bsrc = -1, + .len = -1, + .pin = &pin, + .flags = AuCpup_DTIME | AuCpup_HOPEN + }; + struct inode *delegated; + struct super_block *sb; + struct au_sbinfo *sbinfo; + struct au_fhsm *fhsm; + pid_t pid; + struct au_branch *br; + struct dentry *parent; + struct au_hinode *hdir; + + DiMustWriteLock(dentry); + IiMustWriteLock(d_inode(dentry)); + + err = 0; + if (IS_ROOT(dentry)) + goto out; + cpg.bsrc = au_dbtop(dentry); + if (!cpg.bsrc) + goto out; + + sb = dentry->d_sb; + sbinfo = au_sbi(sb); + fhsm = &sbinfo->si_fhsm; + pid = au_fhsm_pid(fhsm); + rcu_read_lock(); + matched = (pid + && (current->pid == pid + || rcu_dereference(current->real_parent)->pid == pid)); + rcu_read_unlock(); + if (matched) + goto out; + + br = au_sbr(sb, cpg.bsrc); + cmoo = au_br_cmoo(br->br_perm); + if (!cmoo) + goto out; + if (!d_is_reg(dentry)) + cmoo &= AuBrAttr_COO_ALL; + if (!cmoo) + goto out; + + parent = dget_parent(dentry); + di_write_lock_parent(parent); + err = au_wbr_do_copyup_bu(dentry, cpg.bsrc - 1); + cpg.bdst = err; + if (unlikely(err < 0)) { + err = 0; /* there is no upper writable branch */ + goto out_dgrade; + } + AuDbg("bsrc %d, bdst %d\n", cpg.bsrc, cpg.bdst); + + /* do not respect the coo attrib for the target branch */ + err = au_cpup_dirs(dentry, cpg.bdst); + if (unlikely(err)) + goto out_dgrade; + + di_downgrade_lock(parent, AuLock_IR); + udba = au_opt_udba(sb); + err = au_pin(&pin, dentry, cpg.bdst, udba, + AuPin_DI_LOCKED | AuPin_MNT_WRITE); + if (unlikely(err)) + goto out_parent; + + err = au_sio_cpup_simple(&cpg); + au_unpin(&pin); + if (unlikely(err)) + goto out_parent; + if (!(cmoo & AuBrWAttr_MOO)) + goto out_parent; /* success */ + + err = au_pin(&pin, dentry, cpg.bsrc, udba, + AuPin_DI_LOCKED | AuPin_MNT_WRITE); + if (unlikely(err)) + goto out_parent; + + h_path.mnt = au_br_mnt(br); + h_path.dentry = au_h_dptr(dentry, cpg.bsrc); + hdir = au_hi(d_inode(parent), cpg.bsrc); + delegated = NULL; + err = vfsub_unlink(hdir->hi_inode, &h_path, &delegated, /*force*/1); + au_unpin(&pin); + /* todo: keep h_dentry or not? */ + if (unlikely(err == -EWOULDBLOCK)) { + pr_warn("cannot retry for NFSv4 delegation" + " for an internal unlink\n"); + iput(delegated); + } + if (unlikely(err)) { + pr_err("unlink %pd after coo failed (%d), ignored\n", + dentry, err); + err = 0; + } + goto out_parent; /* success */ + +out_dgrade: + di_downgrade_lock(parent, AuLock_IR); +out_parent: + di_read_unlock(parent, AuLock_IR); + dput(parent); +out: + AuTraceErr(err); + return err; +} + +int au_do_open(struct file *file, struct au_do_open_args *args) +{ + int err, aopen = args->aopen; + struct dentry *dentry; + struct au_finfo *finfo; + + if (!aopen) + err = au_finfo_init(file, args->fidir); + else { + lockdep_off(); + err = au_finfo_init(file, args->fidir); + lockdep_on(); + } + if (unlikely(err)) + goto out; + + dentry = file->f_path.dentry; + AuDebugOn(IS_ERR_OR_NULL(dentry)); + di_write_lock_child(dentry); + err = au_cmoo(dentry); + di_downgrade_lock(dentry, AuLock_IR); + if (!err) { + if (!aopen) + err = args->open(file, vfsub_file_flags(file), NULL); + else { + lockdep_off(); + err = args->open(file, vfsub_file_flags(file), + args->h_file); + lockdep_on(); + } + } + di_read_unlock(dentry, AuLock_IR); + + finfo = au_fi(file); + if (!err) { + finfo->fi_file = file; + au_hbl_add(&finfo->fi_hlist, + &au_sbi(file->f_path.dentry->d_sb)->si_files); + } + if (!aopen) + fi_write_unlock(file); + else { + lockdep_off(); + fi_write_unlock(file); + lockdep_on(); + } + if (unlikely(err)) { + finfo->fi_hdir = NULL; + au_finfo_fin(file); + } + +out: + AuTraceErr(err); + return err; +} + +int au_reopen_nondir(struct file *file) +{ + int err; + aufs_bindex_t btop; + struct dentry *dentry; + struct au_branch *br; + struct file *h_file, *h_file_tmp; + + dentry = file->f_path.dentry; + btop = au_dbtop(dentry); + br = au_sbr(dentry->d_sb, btop); + h_file_tmp = NULL; + if (au_fbtop(file) == btop) { + h_file = au_hf_top(file); + if (file->f_mode == h_file->f_mode) + return 0; /* success */ + h_file_tmp = h_file; + get_file(h_file_tmp); + au_lcnt_inc(&br->br_nfiles); + au_set_h_fptr(file, btop, NULL); + } + AuDebugOn(au_fi(file)->fi_hdir); + /* + * it can happen + * file exists on both of rw and ro + * open --> dbtop and fbtop are both 0 + * prepend a branch as rw, "rw" become ro + * remove rw/file + * delete the top branch, "rw" becomes rw again + * --> dbtop is 1, fbtop is still 0 + * write --> fbtop is 0 but dbtop is 1 + */ + /* AuDebugOn(au_fbtop(file) < btop); */ + + h_file = au_h_open(dentry, btop, vfsub_file_flags(file) & ~O_TRUNC, + file, /*force_wr*/0); + err = PTR_ERR(h_file); + if (IS_ERR(h_file)) { + if (h_file_tmp) { + /* revert */ + au_set_h_fptr(file, btop, h_file_tmp); + h_file_tmp = NULL; + } + goto out; /* todo: close all? */ + } + + err = 0; + au_set_fbtop(file, btop); + au_set_h_fptr(file, btop, h_file); + au_update_figen(file); + /* todo: necessary? */ + /* file->f_ra = h_file->f_ra; */ + +out: + if (h_file_tmp) { + fput(h_file_tmp); + au_lcnt_dec(&br->br_nfiles); + } + return err; +} + +/* ---------------------------------------------------------------------- */ + +static int au_reopen_wh(struct file *file, aufs_bindex_t btgt, + struct dentry *hi_wh) +{ + int err; + aufs_bindex_t btop; + struct au_dinfo *dinfo; + struct dentry *h_dentry; + struct au_hdentry *hdp; + + dinfo = au_di(file->f_path.dentry); + AuRwMustWriteLock(&dinfo->di_rwsem); + + btop = dinfo->di_btop; + dinfo->di_btop = btgt; + hdp = au_hdentry(dinfo, btgt); + h_dentry = hdp->hd_dentry; + hdp->hd_dentry = hi_wh; + err = au_reopen_nondir(file); + hdp->hd_dentry = h_dentry; + dinfo->di_btop = btop; + + return err; +} + +static int au_ready_to_write_wh(struct file *file, loff_t len, + aufs_bindex_t bcpup, struct au_pin *pin) +{ + int err; + struct inode *inode, *h_inode; + struct dentry *h_dentry, *hi_wh; + struct au_cp_generic cpg = { + .dentry = file->f_path.dentry, + .bdst = bcpup, + .bsrc = -1, + .len = len, + .pin = pin + }; + + au_update_dbtop(cpg.dentry); + inode = d_inode(cpg.dentry); + h_inode = NULL; + if (au_dbtop(cpg.dentry) <= bcpup + && au_dbbot(cpg.dentry) >= bcpup) { + h_dentry = au_h_dptr(cpg.dentry, bcpup); + if (h_dentry && d_is_positive(h_dentry)) + h_inode = d_inode(h_dentry); + } + hi_wh = au_hi_wh(inode, bcpup); + if (!hi_wh && !h_inode) + err = au_sio_cpup_wh(&cpg, file); + else + /* already copied-up after unlink */ + err = au_reopen_wh(file, bcpup, hi_wh); + + if (!err + && (inode->i_nlink > 1 + || (inode->i_state & I_LINKABLE)) + && au_opt_test(au_mntflags(cpg.dentry->d_sb), PLINK)) + au_plink_append(inode, bcpup, au_h_dptr(cpg.dentry, bcpup)); + + return err; +} + +/* + * prepare the @file for writing. + */ +int au_ready_to_write(struct file *file, loff_t len, struct au_pin *pin) +{ + int err; + aufs_bindex_t dbtop; + struct dentry *parent; + struct inode *inode; + struct super_block *sb; + struct file *h_file; + struct au_cp_generic cpg = { + .dentry = file->f_path.dentry, + .bdst = -1, + .bsrc = -1, + .len = len, + .pin = pin, + .flags = AuCpup_DTIME + }; + + sb = cpg.dentry->d_sb; + inode = d_inode(cpg.dentry); + cpg.bsrc = au_fbtop(file); + err = au_test_ro(sb, cpg.bsrc, inode); + if (!err && (au_hf_top(file)->f_mode & FMODE_WRITE)) { + err = au_pin(pin, cpg.dentry, cpg.bsrc, AuOpt_UDBA_NONE, + /*flags*/0); + goto out; + } + + /* need to cpup or reopen */ + parent = dget_parent(cpg.dentry); + di_write_lock_parent(parent); + err = AuWbrCopyup(au_sbi(sb), cpg.dentry); + cpg.bdst = err; + if (unlikely(err < 0)) + goto out_dgrade; + err = 0; + + if (!d_unhashed(cpg.dentry) && !au_h_dptr(parent, cpg.bdst)) { + err = au_cpup_dirs(cpg.dentry, cpg.bdst); + if (unlikely(err)) + goto out_dgrade; + } + + err = au_pin(pin, cpg.dentry, cpg.bdst, AuOpt_UDBA_NONE, + AuPin_DI_LOCKED | AuPin_MNT_WRITE); + if (unlikely(err)) + goto out_dgrade; + + dbtop = au_dbtop(cpg.dentry); + if (dbtop <= cpg.bdst) + cpg.bsrc = cpg.bdst; + + if (dbtop <= cpg.bdst /* just reopen */ + || !d_unhashed(cpg.dentry) /* copyup and reopen */ + ) { + h_file = au_h_open_pre(cpg.dentry, cpg.bsrc, /*force_wr*/0); + if (IS_ERR(h_file)) + err = PTR_ERR(h_file); + else { + di_downgrade_lock(parent, AuLock_IR); + if (dbtop > cpg.bdst) + err = au_sio_cpup_simple(&cpg); + if (!err) + err = au_reopen_nondir(file); + au_h_open_post(cpg.dentry, cpg.bsrc, h_file); + } + } else { /* copyup as wh and reopen */ + /* + * since writable hfsplus branch is not supported, + * h_open_pre/post() are unnecessary. + */ + err = au_ready_to_write_wh(file, len, cpg.bdst, pin); + di_downgrade_lock(parent, AuLock_IR); + } + + if (!err) { + au_pin_set_parent_lflag(pin, /*lflag*/0); + goto out_dput; /* success */ + } + au_unpin(pin); + goto out_unlock; + +out_dgrade: + di_downgrade_lock(parent, AuLock_IR); +out_unlock: + di_read_unlock(parent, AuLock_IR); +out_dput: + dput(parent); +out: + return err; +} + +/* ---------------------------------------------------------------------- */ + +int au_do_flush(struct file *file, fl_owner_t id, + int (*flush)(struct file *file, fl_owner_t id)) +{ + int err; + struct super_block *sb; + struct inode *inode; + + inode = file_inode(file); + sb = inode->i_sb; + si_noflush_read_lock(sb); + fi_read_lock(file); + ii_read_lock_child(inode); + + err = flush(file, id); + au_cpup_attr_timesizes(inode); + + ii_read_unlock(inode); + fi_read_unlock(file); + si_read_unlock(sb); + return err; +} + +/* ---------------------------------------------------------------------- */ + +static int au_file_refresh_by_inode(struct file *file, int *need_reopen) +{ + int err; + struct au_pin pin; + struct au_finfo *finfo; + struct dentry *parent, *hi_wh; + struct inode *inode; + struct super_block *sb; + struct au_cp_generic cpg = { + .dentry = file->f_path.dentry, + .bdst = -1, + .bsrc = -1, + .len = -1, + .pin = &pin, + .flags = AuCpup_DTIME + }; + + FiMustWriteLock(file); + + err = 0; + finfo = au_fi(file); + sb = cpg.dentry->d_sb; + inode = d_inode(cpg.dentry); + cpg.bdst = au_ibtop(inode); + if (cpg.bdst == finfo->fi_btop || IS_ROOT(cpg.dentry)) + goto out; + + parent = dget_parent(cpg.dentry); + if (au_test_ro(sb, cpg.bdst, inode)) { + di_read_lock_parent(parent, !AuLock_IR); + err = AuWbrCopyup(au_sbi(sb), cpg.dentry); + cpg.bdst = err; + di_read_unlock(parent, !AuLock_IR); + if (unlikely(err < 0)) + goto out_parent; + err = 0; + } + + di_read_lock_parent(parent, AuLock_IR); + hi_wh = au_hi_wh(inode, cpg.bdst); + if (!S_ISDIR(inode->i_mode) + && au_opt_test(au_mntflags(sb), PLINK) + && au_plink_test(inode) + && !d_unhashed(cpg.dentry) + && cpg.bdst < au_dbtop(cpg.dentry)) { + err = au_test_and_cpup_dirs(cpg.dentry, cpg.bdst); + if (unlikely(err)) + goto out_unlock; + + /* always superio. */ + err = au_pin(&pin, cpg.dentry, cpg.bdst, AuOpt_UDBA_NONE, + AuPin_DI_LOCKED | AuPin_MNT_WRITE); + if (!err) { + err = au_sio_cpup_simple(&cpg); + au_unpin(&pin); + } + } else if (hi_wh) { + /* already copied-up after unlink */ + err = au_reopen_wh(file, cpg.bdst, hi_wh); + *need_reopen = 0; + } + +out_unlock: + di_read_unlock(parent, AuLock_IR); +out_parent: + dput(parent); +out: + return err; +} + +static void au_do_refresh_dir(struct file *file) +{ + aufs_bindex_t bindex, bbot, new_bindex, brid; + struct au_hfile *p, tmp, *q; + struct au_finfo *finfo; + struct super_block *sb; + struct au_fidir *fidir; + + FiMustWriteLock(file); + + sb = file->f_path.dentry->d_sb; + finfo = au_fi(file); + fidir = finfo->fi_hdir; + AuDebugOn(!fidir); + p = fidir->fd_hfile + finfo->fi_btop; + brid = p->hf_br->br_id; + bbot = fidir->fd_bbot; + for (bindex = finfo->fi_btop; bindex <= bbot; bindex++, p++) { + if (!p->hf_file) + continue; + + new_bindex = au_br_index(sb, p->hf_br->br_id); + if (new_bindex == bindex) + continue; + if (new_bindex < 0) { + au_set_h_fptr(file, bindex, NULL); + continue; + } + + /* swap two lower inode, and loop again */ + q = fidir->fd_hfile + new_bindex; + tmp = *q; + *q = *p; + *p = tmp; + if (tmp.hf_file) { + bindex--; + p--; + } + } + + p = fidir->fd_hfile; + if (!au_test_mmapped(file) && !d_unlinked(file->f_path.dentry)) { + bbot = au_sbbot(sb); + for (finfo->fi_btop = 0; finfo->fi_btop <= bbot; + finfo->fi_btop++, p++) + if (p->hf_file) { + if (file_inode(p->hf_file)) + break; + au_hfput(p, /*execed*/0); + } + } else { + bbot = au_br_index(sb, brid); + for (finfo->fi_btop = 0; finfo->fi_btop < bbot; + finfo->fi_btop++, p++) + if (p->hf_file) + au_hfput(p, /*execed*/0); + bbot = au_sbbot(sb); + } + + p = fidir->fd_hfile + bbot; + for (fidir->fd_bbot = bbot; fidir->fd_bbot >= finfo->fi_btop; + fidir->fd_bbot--, p--) + if (p->hf_file) { + if (file_inode(p->hf_file)) + break; + au_hfput(p, /*execed*/0); + } + AuDebugOn(fidir->fd_bbot < finfo->fi_btop); +} + +/* + * after branch manipulating, refresh the file. + */ +static int refresh_file(struct file *file, int (*reopen)(struct file *file)) +{ + int err, need_reopen, nbr; + aufs_bindex_t bbot, bindex; + struct dentry *dentry; + struct super_block *sb; + struct au_finfo *finfo; + struct au_hfile *hfile; + + dentry = file->f_path.dentry; + sb = dentry->d_sb; + nbr = au_sbbot(sb) + 1; + finfo = au_fi(file); + if (!finfo->fi_hdir) { + hfile = &finfo->fi_htop; + AuDebugOn(!hfile->hf_file); + bindex = au_br_index(sb, hfile->hf_br->br_id); + AuDebugOn(bindex < 0); + if (bindex != finfo->fi_btop) + au_set_fbtop(file, bindex); + } else { + err = au_fidir_realloc(finfo, nbr, /*may_shrink*/0); + if (unlikely(err)) + goto out; + au_do_refresh_dir(file); + } + + err = 0; + need_reopen = 1; + if (!au_test_mmapped(file)) + err = au_file_refresh_by_inode(file, &need_reopen); + if (finfo->fi_hdir) + /* harmless if err */ + au_fidir_realloc(finfo, nbr, /*may_shrink*/1); + if (!err && need_reopen && !d_unlinked(dentry)) + err = reopen(file); + if (!err) { + au_update_figen(file); + goto out; /* success */ + } + + /* error, close all lower files */ + if (finfo->fi_hdir) { + bbot = au_fbbot_dir(file); + for (bindex = au_fbtop(file); bindex <= bbot; bindex++) + au_set_h_fptr(file, bindex, NULL); + } + +out: + return err; +} + +/* common function to regular file and dir */ +int au_reval_and_lock_fdi(struct file *file, int (*reopen)(struct file *file), + int wlock, unsigned int fi_lsc) +{ + int err; + unsigned int sigen, figen; + aufs_bindex_t btop; + unsigned char pseudo_link; + struct dentry *dentry; + struct inode *inode; + + err = 0; + dentry = file->f_path.dentry; + inode = d_inode(dentry); + sigen = au_sigen(dentry->d_sb); + fi_write_lock_nested(file, fi_lsc); + figen = au_figen(file); + if (!fi_lsc) + di_write_lock_child(dentry); + else + di_write_lock_child2(dentry); + btop = au_dbtop(dentry); + pseudo_link = (btop != au_ibtop(inode)); + if (sigen == figen && !pseudo_link && au_fbtop(file) == btop) { + if (!wlock) { + di_downgrade_lock(dentry, AuLock_IR); + fi_downgrade_lock(file); + } + goto out; /* success */ + } + + AuDbg("sigen %d, figen %d\n", sigen, figen); + if (au_digen_test(dentry, sigen)) { + err = au_reval_dpath(dentry, sigen); + AuDebugOn(!err && au_digen_test(dentry, sigen)); + } + + if (!err) + err = refresh_file(file, reopen); + if (!err) { + if (!wlock) { + di_downgrade_lock(dentry, AuLock_IR); + fi_downgrade_lock(file); + } + } else { + di_write_unlock(dentry); + fi_write_unlock(file); + } + +out: + return err; +} + +/* ---------------------------------------------------------------------- */ + +/* cf. aufs_nopage() */ +/* for madvise(2) */ +static int aufs_readpage(struct file *file __maybe_unused, struct page *page) +{ + unlock_page(page); + return 0; +} + +/* it will never be called, but necessary to support O_DIRECT */ +static ssize_t aufs_direct_IO(struct kiocb *iocb, struct iov_iter *iter) +{ BUG(); return 0; } + +/* they will never be called. */ +#ifdef CONFIG_AUFS_DEBUG +static int aufs_write_begin(struct file *file, struct address_space *mapping, + loff_t pos, unsigned len, unsigned flags, + struct page **pagep, void **fsdata) +{ AuUnsupport(); return 0; } +static int aufs_write_end(struct file *file, struct address_space *mapping, + loff_t pos, unsigned len, unsigned copied, + struct page *page, void *fsdata) +{ AuUnsupport(); return 0; } +static int aufs_writepage(struct page *page, struct writeback_control *wbc) +{ AuUnsupport(); return 0; } + +static int aufs_set_page_dirty(struct page *page) +{ AuUnsupport(); return 0; } +static void aufs_invalidatepage(struct page *page, unsigned int offset, + unsigned int length) +{ AuUnsupport(); } +static int aufs_releasepage(struct page *page, gfp_t gfp) +{ AuUnsupport(); return 0; } +#if 0 /* called by memory compaction regardless file */ +static int aufs_migratepage(struct address_space *mapping, struct page *newpage, + struct page *page, enum migrate_mode mode) +{ AuUnsupport(); return 0; } +#endif +static bool aufs_isolate_page(struct page *page, isolate_mode_t mode) +{ AuUnsupport(); return true; } +static void aufs_putback_page(struct page *page) +{ AuUnsupport(); } +static int aufs_launder_page(struct page *page) +{ AuUnsupport(); return 0; } +static int aufs_is_partially_uptodate(struct page *page, + unsigned long from, + unsigned long count) +{ AuUnsupport(); return 0; } +static void aufs_is_dirty_writeback(struct page *page, bool *dirty, + bool *writeback) +{ AuUnsupport(); } +static int aufs_error_remove_page(struct address_space *mapping, + struct page *page) +{ AuUnsupport(); return 0; } +static int aufs_swap_activate(struct swap_info_struct *sis, struct file *file, + sector_t *span) +{ AuUnsupport(); return 0; } +static void aufs_swap_deactivate(struct file *file) +{ AuUnsupport(); } +#endif /* CONFIG_AUFS_DEBUG */ + +const struct address_space_operations aufs_aop = { + .readpage = aufs_readpage, + .direct_IO = aufs_direct_IO, +#ifdef CONFIG_AUFS_DEBUG + .writepage = aufs_writepage, + /* no writepages, because of writepage */ + .set_page_dirty = aufs_set_page_dirty, + /* no readpages, because of readpage */ + .write_begin = aufs_write_begin, + .write_end = aufs_write_end, + /* no bmap, no block device */ + .invalidatepage = aufs_invalidatepage, + .releasepage = aufs_releasepage, + /* is fallback_migrate_page ok? */ + /* .migratepage = aufs_migratepage, */ + .isolate_page = aufs_isolate_page, + .putback_page = aufs_putback_page, + .launder_page = aufs_launder_page, + .is_partially_uptodate = aufs_is_partially_uptodate, + .is_dirty_writeback = aufs_is_dirty_writeback, + .error_remove_page = aufs_error_remove_page, + .swap_activate = aufs_swap_activate, + .swap_deactivate = aufs_swap_deactivate +#endif /* CONFIG_AUFS_DEBUG */ +}; --- linux-azure-5.8-5.8.0.orig/fs/aufs/file.h +++ linux-azure-5.8-5.8.0/fs/aufs/file.h @@ -0,0 +1,342 @@ +/* SPDX-License-Identifier: GPL-2.0 */ +/* + * Copyright (C) 2005-2020 Junjiro R. Okajima + * + * This program, aufs is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; either version 2 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + */ + +/* + * file operations + */ + +#ifndef __AUFS_FILE_H__ +#define __AUFS_FILE_H__ + +#ifdef __KERNEL__ + +#include +#include +#include +#include +#include "rwsem.h" + +struct au_branch; +struct au_hfile { + struct file *hf_file; + struct au_branch *hf_br; +}; + +struct au_vdir; +struct au_fidir { + aufs_bindex_t fd_bbot; + aufs_bindex_t fd_nent; + struct au_vdir *fd_vdir_cache; + struct au_hfile fd_hfile[]; +}; + +static inline int au_fidir_sz(int nent) +{ + AuDebugOn(nent < 0); + return sizeof(struct au_fidir) + sizeof(struct au_hfile) * nent; +} + +struct au_finfo { + atomic_t fi_generation; + + struct au_rwsem fi_rwsem; + aufs_bindex_t fi_btop; + + /* do not union them */ + struct { /* for non-dir */ + struct au_hfile fi_htop; + atomic_t fi_mmapped; + }; + struct au_fidir *fi_hdir; /* for dir only */ + + struct hlist_bl_node fi_hlist; + struct file *fi_file; /* very ugly */ + struct rcu_head rcu; +} ____cacheline_aligned_in_smp; + +/* ---------------------------------------------------------------------- */ + +/* file.c */ +extern const struct address_space_operations aufs_aop; +unsigned int au_file_roflags(unsigned int flags); +struct file *au_h_open(struct dentry *dentry, aufs_bindex_t bindex, int flags, + struct file *file, int force_wr); +struct au_do_open_args { + int aopen; + int (*open)(struct file *file, int flags, + struct file *h_file); + struct au_fidir *fidir; + struct file *h_file; +}; +int au_do_open(struct file *file, struct au_do_open_args *args); +int au_reopen_nondir(struct file *file); +struct au_pin; +int au_ready_to_write(struct file *file, loff_t len, struct au_pin *pin); +int au_reval_and_lock_fdi(struct file *file, int (*reopen)(struct file *file), + int wlock, unsigned int fi_lsc); +int au_do_flush(struct file *file, fl_owner_t id, + int (*flush)(struct file *file, fl_owner_t id)); + +/* poll.c */ +#ifdef CONFIG_AUFS_POLL +__poll_t aufs_poll(struct file *file, struct poll_table_struct *pt); +#endif + +#ifdef CONFIG_AUFS_BR_HFSPLUS +/* hfsplus.c */ +struct file *au_h_open_pre(struct dentry *dentry, aufs_bindex_t bindex, + int force_wr); +void au_h_open_post(struct dentry *dentry, aufs_bindex_t bindex, + struct file *h_file); +#else +AuStub(struct file *, au_h_open_pre, return NULL, struct dentry *dentry, + aufs_bindex_t bindex, int force_wr) +AuStubVoid(au_h_open_post, struct dentry *dentry, aufs_bindex_t bindex, + struct file *h_file); +#endif + +/* f_op.c */ +extern const struct file_operations aufs_file_fop; +int au_do_open_nondir(struct file *file, int flags, struct file *h_file); +int aufs_release_nondir(struct inode *inode __maybe_unused, struct file *file); +struct file *au_read_pre(struct file *file, int keep_fi, unsigned int lsc); + +/* finfo.c */ +void au_hfput(struct au_hfile *hf, int execed); +void au_set_h_fptr(struct file *file, aufs_bindex_t bindex, + struct file *h_file); + +void au_update_figen(struct file *file); +struct au_fidir *au_fidir_alloc(struct super_block *sb); +int au_fidir_realloc(struct au_finfo *finfo, int nbr, int may_shrink); + +void au_fi_init_once(void *_fi); +void au_finfo_fin(struct file *file); +int au_finfo_init(struct file *file, struct au_fidir *fidir); + +/* ioctl.c */ +long aufs_ioctl_nondir(struct file *file, unsigned int cmd, unsigned long arg); +#ifdef CONFIG_COMPAT +long aufs_compat_ioctl_dir(struct file *file, unsigned int cmd, + unsigned long arg); +long aufs_compat_ioctl_nondir(struct file *file, unsigned int cmd, + unsigned long arg); +#endif + +/* ---------------------------------------------------------------------- */ + +static inline struct au_finfo *au_fi(struct file *file) +{ + return file->private_data; +} + +/* ---------------------------------------------------------------------- */ + +#define fi_read_lock(f) au_rw_read_lock(&au_fi(f)->fi_rwsem) +#define fi_write_lock(f) au_rw_write_lock(&au_fi(f)->fi_rwsem) +#define fi_read_trylock(f) au_rw_read_trylock(&au_fi(f)->fi_rwsem) +#define fi_write_trylock(f) au_rw_write_trylock(&au_fi(f)->fi_rwsem) +/* +#define fi_read_trylock_nested(f) \ + au_rw_read_trylock_nested(&au_fi(f)->fi_rwsem) +#define fi_write_trylock_nested(f) \ + au_rw_write_trylock_nested(&au_fi(f)->fi_rwsem) +*/ + +#define fi_read_unlock(f) au_rw_read_unlock(&au_fi(f)->fi_rwsem) +#define fi_write_unlock(f) au_rw_write_unlock(&au_fi(f)->fi_rwsem) +#define fi_downgrade_lock(f) au_rw_dgrade_lock(&au_fi(f)->fi_rwsem) + +/* lock subclass for finfo */ +enum { + AuLsc_FI_1, + AuLsc_FI_2 +}; + +static inline void fi_read_lock_nested(struct file *f, unsigned int lsc) +{ + au_rw_read_lock_nested(&au_fi(f)->fi_rwsem, lsc); +} + +static inline void fi_write_lock_nested(struct file *f, unsigned int lsc) +{ + au_rw_write_lock_nested(&au_fi(f)->fi_rwsem, lsc); +} + +/* + * fi_read_lock_1, fi_write_lock_1, + * fi_read_lock_2, fi_write_lock_2 + */ +#define AuReadLockFunc(name) \ +static inline void fi_read_lock_##name(struct file *f) \ +{ fi_read_lock_nested(f, AuLsc_FI_##name); } + +#define AuWriteLockFunc(name) \ +static inline void fi_write_lock_##name(struct file *f) \ +{ fi_write_lock_nested(f, AuLsc_FI_##name); } + +#define AuRWLockFuncs(name) \ + AuReadLockFunc(name) \ + AuWriteLockFunc(name) + +AuRWLockFuncs(1); +AuRWLockFuncs(2); + +#undef AuReadLockFunc +#undef AuWriteLockFunc +#undef AuRWLockFuncs + +#define FiMustNoWaiters(f) AuRwMustNoWaiters(&au_fi(f)->fi_rwsem) +#define FiMustAnyLock(f) AuRwMustAnyLock(&au_fi(f)->fi_rwsem) +#define FiMustWriteLock(f) AuRwMustWriteLock(&au_fi(f)->fi_rwsem) + +/* ---------------------------------------------------------------------- */ + +/* todo: hard/soft set? */ +static inline aufs_bindex_t au_fbtop(struct file *file) +{ + FiMustAnyLock(file); + return au_fi(file)->fi_btop; +} + +static inline aufs_bindex_t au_fbbot_dir(struct file *file) +{ + FiMustAnyLock(file); + AuDebugOn(!au_fi(file)->fi_hdir); + return au_fi(file)->fi_hdir->fd_bbot; +} + +static inline struct au_vdir *au_fvdir_cache(struct file *file) +{ + FiMustAnyLock(file); + AuDebugOn(!au_fi(file)->fi_hdir); + return au_fi(file)->fi_hdir->fd_vdir_cache; +} + +static inline void au_set_fbtop(struct file *file, aufs_bindex_t bindex) +{ + FiMustWriteLock(file); + au_fi(file)->fi_btop = bindex; +} + +static inline void au_set_fbbot_dir(struct file *file, aufs_bindex_t bindex) +{ + FiMustWriteLock(file); + AuDebugOn(!au_fi(file)->fi_hdir); + au_fi(file)->fi_hdir->fd_bbot = bindex; +} + +static inline void au_set_fvdir_cache(struct file *file, + struct au_vdir *vdir_cache) +{ + FiMustWriteLock(file); + AuDebugOn(!au_fi(file)->fi_hdir); + au_fi(file)->fi_hdir->fd_vdir_cache = vdir_cache; +} + +static inline struct file *au_hf_top(struct file *file) +{ + FiMustAnyLock(file); + AuDebugOn(au_fi(file)->fi_hdir); + return au_fi(file)->fi_htop.hf_file; +} + +static inline struct file *au_hf_dir(struct file *file, aufs_bindex_t bindex) +{ + FiMustAnyLock(file); + AuDebugOn(!au_fi(file)->fi_hdir); + return au_fi(file)->fi_hdir->fd_hfile[0 + bindex].hf_file; +} + +/* todo: memory barrier? */ +static inline unsigned int au_figen(struct file *f) +{ + return atomic_read(&au_fi(f)->fi_generation); +} + +static inline void au_set_mmapped(struct file *f) +{ + if (atomic_inc_return(&au_fi(f)->fi_mmapped)) + return; + pr_warn("fi_mmapped wrapped around\n"); + while (!atomic_inc_return(&au_fi(f)->fi_mmapped)) + ; +} + +static inline void au_unset_mmapped(struct file *f) +{ + atomic_dec(&au_fi(f)->fi_mmapped); +} + +static inline int au_test_mmapped(struct file *f) +{ + return atomic_read(&au_fi(f)->fi_mmapped); +} + +/* customize vma->vm_file */ + +static inline void au_do_vm_file_reset(struct vm_area_struct *vma, + struct file *file) +{ + struct file *f; + + f = vma->vm_file; + get_file(file); + vma->vm_file = file; + fput(f); +} + +#ifdef CONFIG_MMU +#define AuDbgVmRegion(file, vma) do {} while (0) + +static inline void au_vm_file_reset(struct vm_area_struct *vma, + struct file *file) +{ + au_do_vm_file_reset(vma, file); +} +#else +#define AuDbgVmRegion(file, vma) \ + AuDebugOn((vma)->vm_region && (vma)->vm_region->vm_file != (file)) + +static inline void au_vm_file_reset(struct vm_area_struct *vma, + struct file *file) +{ + struct file *f; + + au_do_vm_file_reset(vma, file); + f = vma->vm_region->vm_file; + get_file(file); + vma->vm_region->vm_file = file; + fput(f); +} +#endif /* CONFIG_MMU */ + +/* handle vma->vm_prfile */ +static inline void au_vm_prfile_set(struct vm_area_struct *vma, + struct file *file) +{ + get_file(file); + vma->vm_prfile = file; +#ifndef CONFIG_MMU + get_file(file); + vma->vm_region->vm_prfile = file; +#endif +} + +#endif /* __KERNEL__ */ +#endif /* __AUFS_FILE_H__ */ --- linux-azure-5.8-5.8.0.orig/fs/aufs/finfo.c +++ linux-azure-5.8-5.8.0/fs/aufs/finfo.c @@ -0,0 +1,149 @@ +// SPDX-License-Identifier: GPL-2.0 +/* + * Copyright (C) 2005-2020 Junjiro R. Okajima + * + * This program, aufs is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; either version 2 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + */ + +/* + * file private data + */ + +#include "aufs.h" + +void au_hfput(struct au_hfile *hf, int execed) +{ + if (execed) + allow_write_access(hf->hf_file); + fput(hf->hf_file); + hf->hf_file = NULL; + au_lcnt_dec(&hf->hf_br->br_nfiles); + hf->hf_br = NULL; +} + +void au_set_h_fptr(struct file *file, aufs_bindex_t bindex, struct file *val) +{ + struct au_finfo *finfo = au_fi(file); + struct au_hfile *hf; + struct au_fidir *fidir; + + fidir = finfo->fi_hdir; + if (!fidir) { + AuDebugOn(finfo->fi_btop != bindex); + hf = &finfo->fi_htop; + } else + hf = fidir->fd_hfile + bindex; + + if (hf && hf->hf_file) + au_hfput(hf, vfsub_file_execed(file)); + if (val) { + FiMustWriteLock(file); + AuDebugOn(IS_ERR_OR_NULL(file->f_path.dentry)); + hf->hf_file = val; + hf->hf_br = au_sbr(file->f_path.dentry->d_sb, bindex); + } +} + +void au_update_figen(struct file *file) +{ + atomic_set(&au_fi(file)->fi_generation, au_digen(file->f_path.dentry)); + /* smp_mb(); */ /* atomic_set */ +} + +/* ---------------------------------------------------------------------- */ + +struct au_fidir *au_fidir_alloc(struct super_block *sb) +{ + struct au_fidir *fidir; + int nbr; + + nbr = au_sbbot(sb) + 1; + if (nbr < 2) + nbr = 2; /* initial allocate for 2 branches */ + fidir = kzalloc(au_fidir_sz(nbr), GFP_NOFS); + if (fidir) { + fidir->fd_bbot = -1; + fidir->fd_nent = nbr; + } + + return fidir; +} + +int au_fidir_realloc(struct au_finfo *finfo, int nbr, int may_shrink) +{ + int err; + struct au_fidir *fidir, *p; + + AuRwMustWriteLock(&finfo->fi_rwsem); + fidir = finfo->fi_hdir; + AuDebugOn(!fidir); + + err = -ENOMEM; + p = au_kzrealloc(fidir, au_fidir_sz(fidir->fd_nent), au_fidir_sz(nbr), + GFP_NOFS, may_shrink); + if (p) { + p->fd_nent = nbr; + finfo->fi_hdir = p; + err = 0; + } + + return err; +} + +/* ---------------------------------------------------------------------- */ + +void au_finfo_fin(struct file *file) +{ + struct au_finfo *finfo; + + au_lcnt_dec(&au_sbi(file->f_path.dentry->d_sb)->si_nfiles); + + finfo = au_fi(file); + AuDebugOn(finfo->fi_hdir); + AuRwDestroy(&finfo->fi_rwsem); + au_cache_free_finfo(finfo); +} + +void au_fi_init_once(void *_finfo) +{ + struct au_finfo *finfo = _finfo; + + au_rw_init(&finfo->fi_rwsem); +} + +int au_finfo_init(struct file *file, struct au_fidir *fidir) +{ + int err; + struct au_finfo *finfo; + struct dentry *dentry; + + err = -ENOMEM; + dentry = file->f_path.dentry; + finfo = au_cache_alloc_finfo(); + if (unlikely(!finfo)) + goto out; + + err = 0; + au_lcnt_inc(&au_sbi(dentry->d_sb)->si_nfiles); + au_rw_write_lock(&finfo->fi_rwsem); + finfo->fi_btop = -1; + finfo->fi_hdir = fidir; + atomic_set(&finfo->fi_generation, au_digen(dentry)); + /* smp_mb(); */ /* atomic_set */ + + file->private_data = finfo; + +out: + return err; +} --- linux-azure-5.8-5.8.0.orig/fs/aufs/fstype.h +++ linux-azure-5.8-5.8.0/fs/aufs/fstype.h @@ -0,0 +1,401 @@ +/* SPDX-License-Identifier: GPL-2.0 */ +/* + * Copyright (C) 2005-2020 Junjiro R. Okajima + * + * This program, aufs is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; either version 2 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + */ + +/* + * judging filesystem type + */ + +#ifndef __AUFS_FSTYPE_H__ +#define __AUFS_FSTYPE_H__ + +#ifdef __KERNEL__ + +#include +#include +#include +#include + +static inline int au_test_aufs(struct super_block *sb) +{ + return sb->s_magic == AUFS_SUPER_MAGIC; +} + +static inline const char *au_sbtype(struct super_block *sb) +{ + return sb->s_type->name; +} + +static inline int au_test_iso9660(struct super_block *sb __maybe_unused) +{ +#if IS_ENABLED(CONFIG_ISO9660_FS) + return sb->s_magic == ISOFS_SUPER_MAGIC; +#else + return 0; +#endif +} + +static inline int au_test_romfs(struct super_block *sb __maybe_unused) +{ +#if IS_ENABLED(CONFIG_ROMFS_FS) + return sb->s_magic == ROMFS_MAGIC; +#else + return 0; +#endif +} + +static inline int au_test_cramfs(struct super_block *sb __maybe_unused) +{ +#if IS_ENABLED(CONFIG_CRAMFS) + return sb->s_magic == CRAMFS_MAGIC; +#endif + return 0; +} + +static inline int au_test_nfs(struct super_block *sb __maybe_unused) +{ +#if IS_ENABLED(CONFIG_NFS_FS) + return sb->s_magic == NFS_SUPER_MAGIC; +#else + return 0; +#endif +} + +static inline int au_test_fuse(struct super_block *sb __maybe_unused) +{ +#if IS_ENABLED(CONFIG_FUSE_FS) + return sb->s_magic == FUSE_SUPER_MAGIC; +#else + return 0; +#endif +} + +static inline int au_test_xfs(struct super_block *sb __maybe_unused) +{ +#if IS_ENABLED(CONFIG_XFS_FS) + return sb->s_magic == XFS_SB_MAGIC; +#else + return 0; +#endif +} + +static inline int au_test_tmpfs(struct super_block *sb __maybe_unused) +{ +#ifdef CONFIG_TMPFS + return sb->s_magic == TMPFS_MAGIC; +#else + return 0; +#endif +} + +static inline int au_test_ecryptfs(struct super_block *sb __maybe_unused) +{ +#if IS_ENABLED(CONFIG_ECRYPT_FS) + return !strcmp(au_sbtype(sb), "ecryptfs"); +#else + return 0; +#endif +} + +static inline int au_test_ramfs(struct super_block *sb) +{ + return sb->s_magic == RAMFS_MAGIC; +} + +static inline int au_test_ubifs(struct super_block *sb __maybe_unused) +{ +#if IS_ENABLED(CONFIG_UBIFS_FS) + return sb->s_magic == UBIFS_SUPER_MAGIC; +#else + return 0; +#endif +} + +static inline int au_test_procfs(struct super_block *sb __maybe_unused) +{ +#ifdef CONFIG_PROC_FS + return sb->s_magic == PROC_SUPER_MAGIC; +#else + return 0; +#endif +} + +static inline int au_test_sysfs(struct super_block *sb __maybe_unused) +{ +#ifdef CONFIG_SYSFS + return sb->s_magic == SYSFS_MAGIC; +#else + return 0; +#endif +} + +static inline int au_test_configfs(struct super_block *sb __maybe_unused) +{ +#if IS_ENABLED(CONFIG_CONFIGFS_FS) + return sb->s_magic == CONFIGFS_MAGIC; +#else + return 0; +#endif +} + +static inline int au_test_minix(struct super_block *sb __maybe_unused) +{ +#if IS_ENABLED(CONFIG_MINIX_FS) + return sb->s_magic == MINIX3_SUPER_MAGIC + || sb->s_magic == MINIX2_SUPER_MAGIC + || sb->s_magic == MINIX2_SUPER_MAGIC2 + || sb->s_magic == MINIX_SUPER_MAGIC + || sb->s_magic == MINIX_SUPER_MAGIC2; +#else + return 0; +#endif +} + +static inline int au_test_fat(struct super_block *sb __maybe_unused) +{ +#if IS_ENABLED(CONFIG_FAT_FS) + return sb->s_magic == MSDOS_SUPER_MAGIC; +#else + return 0; +#endif +} + +static inline int au_test_msdos(struct super_block *sb) +{ + return au_test_fat(sb); +} + +static inline int au_test_vfat(struct super_block *sb) +{ + return au_test_fat(sb); +} + +static inline int au_test_securityfs(struct super_block *sb __maybe_unused) +{ +#ifdef CONFIG_SECURITYFS + return sb->s_magic == SECURITYFS_MAGIC; +#else + return 0; +#endif +} + +static inline int au_test_squashfs(struct super_block *sb __maybe_unused) +{ +#if IS_ENABLED(CONFIG_SQUASHFS) + return sb->s_magic == SQUASHFS_MAGIC; +#else + return 0; +#endif +} + +static inline int au_test_btrfs(struct super_block *sb __maybe_unused) +{ +#if IS_ENABLED(CONFIG_BTRFS_FS) + return sb->s_magic == BTRFS_SUPER_MAGIC; +#else + return 0; +#endif +} + +static inline int au_test_xenfs(struct super_block *sb __maybe_unused) +{ +#if IS_ENABLED(CONFIG_XENFS) + return sb->s_magic == XENFS_SUPER_MAGIC; +#else + return 0; +#endif +} + +static inline int au_test_debugfs(struct super_block *sb __maybe_unused) +{ +#ifdef CONFIG_DEBUG_FS + return sb->s_magic == DEBUGFS_MAGIC; +#else + return 0; +#endif +} + +static inline int au_test_nilfs(struct super_block *sb __maybe_unused) +{ +#if IS_ENABLED(CONFIG_NILFS) + return sb->s_magic == NILFS_SUPER_MAGIC; +#else + return 0; +#endif +} + +static inline int au_test_hfsplus(struct super_block *sb __maybe_unused) +{ +#if IS_ENABLED(CONFIG_HFSPLUS_FS) + return sb->s_magic == HFSPLUS_SUPER_MAGIC; +#else + return 0; +#endif +} + +/* ---------------------------------------------------------------------- */ +/* + * they can't be an aufs branch. + */ +static inline int au_test_fs_unsuppoted(struct super_block *sb) +{ + return +#ifndef CONFIG_AUFS_BR_RAMFS + au_test_ramfs(sb) || +#endif + au_test_procfs(sb) + || au_test_sysfs(sb) + || au_test_configfs(sb) + || au_test_debugfs(sb) + || au_test_securityfs(sb) + || au_test_xenfs(sb) + || au_test_ecryptfs(sb) + /* || !strcmp(au_sbtype(sb), "unionfs") */ + || au_test_aufs(sb); /* will be supported in next version */ +} + +static inline int au_test_fs_remote(struct super_block *sb) +{ + return !au_test_tmpfs(sb) +#ifdef CONFIG_AUFS_BR_RAMFS + && !au_test_ramfs(sb) +#endif + && !(sb->s_type->fs_flags & FS_REQUIRES_DEV); +} + +/* ---------------------------------------------------------------------- */ + +/* + * Note: these functions (below) are created after reading ->getattr() in all + * filesystems under linux/fs. it means we have to do so in every update... + */ + +/* + * some filesystems require getattr to refresh the inode attributes before + * referencing. + * in most cases, we can rely on the inode attribute in NFS (or every remote fs) + * and leave the work for d_revalidate() + */ +static inline int au_test_fs_refresh_iattr(struct super_block *sb) +{ + return au_test_nfs(sb) + || au_test_fuse(sb) + /* || au_test_btrfs(sb) */ /* untested */ + ; +} + +/* + * filesystems which don't maintain i_size or i_blocks. + */ +static inline int au_test_fs_bad_iattr_size(struct super_block *sb) +{ + return au_test_xfs(sb) + || au_test_btrfs(sb) + || au_test_ubifs(sb) + || au_test_hfsplus(sb) /* maintained, but incorrect */ + /* || au_test_minix(sb) */ /* untested */ + ; +} + +/* + * filesystems which don't store the correct value in some of their inode + * attributes. + */ +static inline int au_test_fs_bad_iattr(struct super_block *sb) +{ + return au_test_fs_bad_iattr_size(sb) + || au_test_fat(sb) + || au_test_msdos(sb) + || au_test_vfat(sb); +} + +/* they don't check i_nlink in link(2) */ +static inline int au_test_fs_no_limit_nlink(struct super_block *sb) +{ + return au_test_tmpfs(sb) +#ifdef CONFIG_AUFS_BR_RAMFS + || au_test_ramfs(sb) +#endif + || au_test_ubifs(sb) + || au_test_hfsplus(sb); +} + +/* + * filesystems which sets S_NOATIME and S_NOCMTIME. + */ +static inline int au_test_fs_notime(struct super_block *sb) +{ + return au_test_nfs(sb) + || au_test_fuse(sb) + || au_test_ubifs(sb) + ; +} + +/* temporary support for i#1 in cramfs */ +static inline int au_test_fs_unique_ino(struct inode *inode) +{ + if (au_test_cramfs(inode->i_sb)) + return inode->i_ino != 1; + return 1; +} + +/* ---------------------------------------------------------------------- */ + +/* + * the filesystem where the xino files placed must support i/o after unlink and + * maintain i_size and i_blocks. + */ +static inline int au_test_fs_bad_xino(struct super_block *sb) +{ + return au_test_fs_remote(sb) + || au_test_fs_bad_iattr_size(sb) + /* don't want unnecessary work for xino */ + || au_test_aufs(sb) + || au_test_ecryptfs(sb) + || au_test_nilfs(sb); +} + +static inline int au_test_fs_trunc_xino(struct super_block *sb) +{ + return au_test_tmpfs(sb) + || au_test_ramfs(sb); +} + +/* + * test if the @sb is real-readonly. + */ +static inline int au_test_fs_rr(struct super_block *sb) +{ + return au_test_squashfs(sb) + || au_test_iso9660(sb) + || au_test_cramfs(sb) + || au_test_romfs(sb); +} + +/* + * test if the @inode is nfs with 'noacl' option + * NFS always sets SB_POSIXACL regardless its mount option 'noacl.' + */ +static inline int au_test_nfs_noacl(struct inode *inode) +{ + return au_test_nfs(inode->i_sb) + /* && IS_POSIXACL(inode) */ + && !nfs_server_capable(inode, NFS_CAP_ACLS); +} + +#endif /* __KERNEL__ */ +#endif /* __AUFS_FSTYPE_H__ */ --- linux-azure-5.8-5.8.0.orig/fs/aufs/hbl.h +++ linux-azure-5.8-5.8.0/fs/aufs/hbl.h @@ -0,0 +1,65 @@ +/* SPDX-License-Identifier: GPL-2.0 */ +/* + * Copyright (C) 2017-2020 Junjiro R. Okajima + * + * This program, aufs is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; either version 2 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + */ + +/* + * helpers for hlist_bl.h + */ + +#ifndef __AUFS_HBL_H__ +#define __AUFS_HBL_H__ + +#ifdef __KERNEL__ + +#include + +static inline void au_hbl_add(struct hlist_bl_node *node, + struct hlist_bl_head *hbl) +{ + hlist_bl_lock(hbl); + hlist_bl_add_head(node, hbl); + hlist_bl_unlock(hbl); +} + +static inline void au_hbl_del(struct hlist_bl_node *node, + struct hlist_bl_head *hbl) +{ + hlist_bl_lock(hbl); + hlist_bl_del(node); + hlist_bl_unlock(hbl); +} + +#define au_hbl_for_each(pos, head) \ + for (pos = hlist_bl_first(head); \ + pos; \ + pos = pos->next) + +static inline unsigned long au_hbl_count(struct hlist_bl_head *hbl) +{ + unsigned long cnt; + struct hlist_bl_node *pos; + + cnt = 0; + hlist_bl_lock(hbl); + au_hbl_for_each(pos, hbl) + cnt++; + hlist_bl_unlock(hbl); + return cnt; +} + +#endif /* __KERNEL__ */ +#endif /* __AUFS_HBL_H__ */ --- linux-azure-5.8-5.8.0.orig/fs/aufs/hfsnotify.c +++ linux-azure-5.8-5.8.0/fs/aufs/hfsnotify.c @@ -0,0 +1,288 @@ +// SPDX-License-Identifier: GPL-2.0 +/* + * Copyright (C) 2005-2020 Junjiro R. Okajima + * + * This program, aufs is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; either version 2 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + */ + +/* + * fsnotify for the lower directories + */ + +#include "aufs.h" + +/* FS_IN_IGNORED is unnecessary */ +static const __u32 AuHfsnMask = (FS_MOVED_TO | FS_MOVED_FROM | FS_DELETE + | FS_CREATE | FS_EVENT_ON_CHILD); +static DECLARE_WAIT_QUEUE_HEAD(au_hfsn_wq); +static __cacheline_aligned_in_smp atomic64_t au_hfsn_ifree = ATOMIC64_INIT(0); + +static void au_hfsn_free_mark(struct fsnotify_mark *mark) +{ + struct au_hnotify *hn = container_of(mark, struct au_hnotify, + hn_mark); + /* AuDbg("here\n"); */ + au_cache_free_hnotify(hn); + smp_mb__before_atomic(); /* for atomic64_dec */ + if (atomic64_dec_and_test(&au_hfsn_ifree)) + wake_up(&au_hfsn_wq); +} + +static int au_hfsn_alloc(struct au_hinode *hinode) +{ + int err; + struct au_hnotify *hn; + struct super_block *sb; + struct au_branch *br; + struct fsnotify_mark *mark; + aufs_bindex_t bindex; + + hn = hinode->hi_notify; + sb = hn->hn_aufs_inode->i_sb; + bindex = au_br_index(sb, hinode->hi_id); + br = au_sbr(sb, bindex); + AuDebugOn(!br->br_hfsn); + + mark = &hn->hn_mark; + fsnotify_init_mark(mark, br->br_hfsn->hfsn_group); + mark->mask = AuHfsnMask; + /* + * by udba rename or rmdir, aufs assign a new inode to the known + * h_inode, so specify 1 to allow dups. + */ + lockdep_off(); + err = fsnotify_add_inode_mark(mark, hinode->hi_inode, /*allow_dups*/1); + lockdep_on(); + + return err; +} + +static int au_hfsn_free(struct au_hinode *hinode, struct au_hnotify *hn) +{ + struct fsnotify_mark *mark; + unsigned long long ull; + struct fsnotify_group *group; + + ull = atomic64_inc_return(&au_hfsn_ifree); + BUG_ON(!ull); + + mark = &hn->hn_mark; + spin_lock(&mark->lock); + group = mark->group; + fsnotify_get_group(group); + spin_unlock(&mark->lock); + lockdep_off(); + fsnotify_destroy_mark(mark, group); + fsnotify_put_mark(mark); + fsnotify_put_group(group); + lockdep_on(); + + /* free hn by myself */ + return 0; +} + +/* ---------------------------------------------------------------------- */ + +static void au_hfsn_ctl(struct au_hinode *hinode, int do_set) +{ + struct fsnotify_mark *mark; + + mark = &hinode->hi_notify->hn_mark; + spin_lock(&mark->lock); + if (do_set) { + AuDebugOn(mark->mask & AuHfsnMask); + mark->mask |= AuHfsnMask; + } else { + AuDebugOn(!(mark->mask & AuHfsnMask)); + mark->mask &= ~AuHfsnMask; + } + spin_unlock(&mark->lock); + /* fsnotify_recalc_inode_mask(hinode->hi_inode); */ +} + +/* ---------------------------------------------------------------------- */ + +/* #define AuDbgHnotify */ +#ifdef AuDbgHnotify +static char *au_hfsn_name(u32 mask) +{ +#ifdef CONFIG_AUFS_DEBUG +#define test_ret(flag) \ + do { \ + if (mask & flag) \ + return #flag; \ + } while (0) + test_ret(FS_ACCESS); + test_ret(FS_MODIFY); + test_ret(FS_ATTRIB); + test_ret(FS_CLOSE_WRITE); + test_ret(FS_CLOSE_NOWRITE); + test_ret(FS_OPEN); + test_ret(FS_MOVED_FROM); + test_ret(FS_MOVED_TO); + test_ret(FS_CREATE); + test_ret(FS_DELETE); + test_ret(FS_DELETE_SELF); + test_ret(FS_MOVE_SELF); + test_ret(FS_UNMOUNT); + test_ret(FS_Q_OVERFLOW); + test_ret(FS_IN_IGNORED); + test_ret(FS_ISDIR); + test_ret(FS_IN_ONESHOT); + test_ret(FS_EVENT_ON_CHILD); + return ""; +#undef test_ret +#else + return "??"; +#endif +} +#endif + +/* ---------------------------------------------------------------------- */ + +static void au_hfsn_free_group(struct fsnotify_group *group) +{ + struct au_br_hfsnotify *hfsn = group->private; + + /* AuDbg("here\n"); */ + au_kfree_try_rcu(hfsn); +} + +static int au_hfsn_handle_event(struct fsnotify_group *group, + struct inode *inode, + u32 mask, const void *data, int data_type, + const struct qstr *file_name, u32 cookie, + struct fsnotify_iter_info *iter_info) +{ + int err; + struct au_hnotify *hnotify; + struct inode *h_dir, *h_inode; + struct fsnotify_mark *inode_mark; + + AuDebugOn(data_type != FSNOTIFY_EVENT_INODE); + + err = 0; + /* if FS_UNMOUNT happens, there must be another bug */ + AuDebugOn(mask & FS_UNMOUNT); + if (mask & (FS_IN_IGNORED | FS_UNMOUNT)) + goto out; + + h_dir = inode; + h_inode = NULL; +#ifdef AuDbgHnotify + au_debug_on(); + if (1 || h_child_qstr.len != sizeof(AUFS_XINO_FNAME) - 1 + || strncmp(h_child_qstr.name, AUFS_XINO_FNAME, h_child_qstr.len)) { + AuDbg("i%lu, mask 0x%x %s, hcname %.*s, hi%lu\n", + h_dir->i_ino, mask, au_hfsn_name(mask), + AuLNPair(&h_child_qstr), h_inode ? h_inode->i_ino : 0); + /* WARN_ON(1); */ + } + au_debug_off(); +#endif + + inode_mark = fsnotify_iter_inode_mark(iter_info); + AuDebugOn(!inode_mark); + hnotify = container_of(inode_mark, struct au_hnotify, hn_mark); + err = au_hnotify(h_dir, hnotify, mask, file_name, h_inode); + +out: + return err; +} + +static struct fsnotify_ops au_hfsn_ops = { + .handle_event = au_hfsn_handle_event, + .free_group_priv = au_hfsn_free_group, + .free_mark = au_hfsn_free_mark +}; + +/* ---------------------------------------------------------------------- */ + +static void au_hfsn_fin_br(struct au_branch *br) +{ + struct au_br_hfsnotify *hfsn; + + hfsn = br->br_hfsn; + if (hfsn) { + lockdep_off(); + fsnotify_put_group(hfsn->hfsn_group); + lockdep_on(); + } +} + +static int au_hfsn_init_br(struct au_branch *br, int perm) +{ + int err; + struct fsnotify_group *group; + struct au_br_hfsnotify *hfsn; + + err = 0; + br->br_hfsn = NULL; + if (!au_br_hnotifyable(perm)) + goto out; + + err = -ENOMEM; + hfsn = kmalloc(sizeof(*hfsn), GFP_NOFS); + if (unlikely(!hfsn)) + goto out; + + err = 0; + group = fsnotify_alloc_group(&au_hfsn_ops); + if (IS_ERR(group)) { + err = PTR_ERR(group); + pr_err("fsnotify_alloc_group() failed, %d\n", err); + goto out_hfsn; + } + + group->private = hfsn; + hfsn->hfsn_group = group; + br->br_hfsn = hfsn; + goto out; /* success */ + +out_hfsn: + au_kfree_try_rcu(hfsn); +out: + return err; +} + +static int au_hfsn_reset_br(unsigned int udba, struct au_branch *br, int perm) +{ + int err; + + err = 0; + if (!br->br_hfsn) + err = au_hfsn_init_br(br, perm); + + return err; +} + +/* ---------------------------------------------------------------------- */ + +static void au_hfsn_fin(void) +{ + AuDbg("au_hfsn_ifree %lld\n", (long long)atomic64_read(&au_hfsn_ifree)); + wait_event(au_hfsn_wq, !atomic64_read(&au_hfsn_ifree)); +} + +const struct au_hnotify_op au_hnotify_op = { + .ctl = au_hfsn_ctl, + .alloc = au_hfsn_alloc, + .free = au_hfsn_free, + + .fin = au_hfsn_fin, + + .reset_br = au_hfsn_reset_br, + .fin_br = au_hfsn_fin_br, + .init_br = au_hfsn_init_br +}; --- linux-azure-5.8-5.8.0.orig/fs/aufs/hfsplus.c +++ linux-azure-5.8-5.8.0/fs/aufs/hfsplus.c @@ -0,0 +1,60 @@ +// SPDX-License-Identifier: GPL-2.0 +/* + * Copyright (C) 2010-2020 Junjiro R. Okajima + * + * This program, aufs is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; either version 2 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + */ + +/* + * special support for filesystems which acquires an inode mutex + * at final closing a file, eg, hfsplus. + * + * This trick is very simple and stupid, just to open the file before really + * necessary open to tell hfsplus that this is not the final closing. + * The caller should call au_h_open_pre() after acquiring the inode mutex, + * and au_h_open_post() after releasing it. + */ + +#include "aufs.h" + +struct file *au_h_open_pre(struct dentry *dentry, aufs_bindex_t bindex, + int force_wr) +{ + struct file *h_file; + struct dentry *h_dentry; + + h_dentry = au_h_dptr(dentry, bindex); + AuDebugOn(!h_dentry); + AuDebugOn(d_is_negative(h_dentry)); + + h_file = NULL; + if (au_test_hfsplus(h_dentry->d_sb) + && d_is_reg(h_dentry)) + h_file = au_h_open(dentry, bindex, + O_RDONLY | O_NOATIME | O_LARGEFILE, + /*file*/NULL, force_wr); + return h_file; +} + +void au_h_open_post(struct dentry *dentry, aufs_bindex_t bindex, + struct file *h_file) +{ + struct au_branch *br; + + if (h_file) { + fput(h_file); + br = au_sbr(dentry->d_sb, bindex); + au_lcnt_dec(&br->br_nfiles); + } +} --- linux-azure-5.8-5.8.0.orig/fs/aufs/hnotify.c +++ linux-azure-5.8-5.8.0/fs/aufs/hnotify.c @@ -0,0 +1,715 @@ +// SPDX-License-Identifier: GPL-2.0 +/* + * Copyright (C) 2005-2020 Junjiro R. Okajima + * + * This program, aufs is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; either version 2 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + */ + +/* + * abstraction to notify the direct changes on lower directories + */ + +/* #include */ +#include "aufs.h" + +int au_hn_alloc(struct au_hinode *hinode, struct inode *inode) +{ + int err; + struct au_hnotify *hn; + + err = -ENOMEM; + hn = au_cache_alloc_hnotify(); + if (hn) { + hn->hn_aufs_inode = inode; + hinode->hi_notify = hn; + err = au_hnotify_op.alloc(hinode); + AuTraceErr(err); + if (unlikely(err)) { + hinode->hi_notify = NULL; + au_cache_free_hnotify(hn); + /* + * The upper dir was removed by udba, but the same named + * dir left. In this case, aufs assigns a new inode + * number and set the monitor again. + * For the lower dir, the old monitor is still left. + */ + if (err == -EEXIST) + err = 0; + } + } + + AuTraceErr(err); + return err; +} + +void au_hn_free(struct au_hinode *hinode) +{ + struct au_hnotify *hn; + + hn = hinode->hi_notify; + if (hn) { + hinode->hi_notify = NULL; + if (au_hnotify_op.free(hinode, hn)) + au_cache_free_hnotify(hn); + } +} + +/* ---------------------------------------------------------------------- */ + +void au_hn_ctl(struct au_hinode *hinode, int do_set) +{ + if (hinode->hi_notify) + au_hnotify_op.ctl(hinode, do_set); +} + +void au_hn_reset(struct inode *inode, unsigned int flags) +{ + aufs_bindex_t bindex, bbot; + struct inode *hi; + struct dentry *iwhdentry; + + bbot = au_ibbot(inode); + for (bindex = au_ibtop(inode); bindex <= bbot; bindex++) { + hi = au_h_iptr(inode, bindex); + if (!hi) + continue; + + /* inode_lock_nested(hi, AuLsc_I_CHILD); */ + iwhdentry = au_hi_wh(inode, bindex); + if (iwhdentry) + dget(iwhdentry); + au_igrab(hi); + au_set_h_iptr(inode, bindex, NULL, 0); + au_set_h_iptr(inode, bindex, au_igrab(hi), + flags & ~AuHi_XINO); + iput(hi); + dput(iwhdentry); + /* inode_unlock(hi); */ + } +} + +/* ---------------------------------------------------------------------- */ + +static int hn_xino(struct inode *inode, struct inode *h_inode) +{ + int err; + aufs_bindex_t bindex, bbot, bfound, btop; + struct inode *h_i; + + err = 0; + if (unlikely(inode->i_ino == AUFS_ROOT_INO)) { + pr_warn("branch root dir was changed\n"); + goto out; + } + + bfound = -1; + bbot = au_ibbot(inode); + btop = au_ibtop(inode); +#if 0 /* reserved for future use */ + if (bindex == bbot) { + /* keep this ino in rename case */ + goto out; + } +#endif + for (bindex = btop; bindex <= bbot; bindex++) + if (au_h_iptr(inode, bindex) == h_inode) { + bfound = bindex; + break; + } + if (bfound < 0) + goto out; + + for (bindex = btop; bindex <= bbot; bindex++) { + h_i = au_h_iptr(inode, bindex); + if (!h_i) + continue; + + err = au_xino_write(inode->i_sb, bindex, h_i->i_ino, /*ino*/0); + /* ignore this error */ + /* bad action? */ + } + + /* children inode number will be broken */ + +out: + AuTraceErr(err); + return err; +} + +static int hn_gen_tree(struct dentry *dentry) +{ + int err, i, j, ndentry; + struct au_dcsub_pages dpages; + struct au_dpage *dpage; + struct dentry **dentries; + + err = au_dpages_init(&dpages, GFP_NOFS); + if (unlikely(err)) + goto out; + err = au_dcsub_pages(&dpages, dentry, NULL, NULL); + if (unlikely(err)) + goto out_dpages; + + for (i = 0; i < dpages.ndpage; i++) { + dpage = dpages.dpages + i; + dentries = dpage->dentries; + ndentry = dpage->ndentry; + for (j = 0; j < ndentry; j++) { + struct dentry *d; + + d = dentries[j]; + if (IS_ROOT(d)) + continue; + + au_digen_dec(d); + if (d_really_is_positive(d)) + /* todo: reset children xino? + cached children only? */ + au_iigen_dec(d_inode(d)); + } + } + +out_dpages: + au_dpages_free(&dpages); +out: + return err; +} + +/* + * return 0 if processed. + */ +static int hn_gen_by_inode(char *name, unsigned int nlen, struct inode *inode, + const unsigned int isdir) +{ + int err; + struct dentry *d; + struct qstr *dname; + + err = 1; + if (unlikely(inode->i_ino == AUFS_ROOT_INO)) { + pr_warn("branch root dir was changed\n"); + err = 0; + goto out; + } + + if (!isdir) { + AuDebugOn(!name); + au_iigen_dec(inode); + spin_lock(&inode->i_lock); + hlist_for_each_entry(d, &inode->i_dentry, d_u.d_alias) { + spin_lock(&d->d_lock); + dname = &d->d_name; + if (dname->len != nlen + && memcmp(dname->name, name, nlen)) { + spin_unlock(&d->d_lock); + continue; + } + err = 0; + au_digen_dec(d); + spin_unlock(&d->d_lock); + break; + } + spin_unlock(&inode->i_lock); + } else { + au_fset_si(au_sbi(inode->i_sb), FAILED_REFRESH_DIR); + d = d_find_any_alias(inode); + if (!d) { + au_iigen_dec(inode); + goto out; + } + + spin_lock(&d->d_lock); + dname = &d->d_name; + if (dname->len == nlen && !memcmp(dname->name, name, nlen)) { + spin_unlock(&d->d_lock); + err = hn_gen_tree(d); + spin_lock(&d->d_lock); + } + spin_unlock(&d->d_lock); + dput(d); + } + +out: + AuTraceErr(err); + return err; +} + +static int hn_gen_by_name(struct dentry *dentry, const unsigned int isdir) +{ + int err; + + if (IS_ROOT(dentry)) { + pr_warn("branch root dir was changed\n"); + return 0; + } + + err = 0; + if (!isdir) { + au_digen_dec(dentry); + if (d_really_is_positive(dentry)) + au_iigen_dec(d_inode(dentry)); + } else { + au_fset_si(au_sbi(dentry->d_sb), FAILED_REFRESH_DIR); + if (d_really_is_positive(dentry)) + err = hn_gen_tree(dentry); + } + + AuTraceErr(err); + return err; +} + +/* ---------------------------------------------------------------------- */ + +/* hnotify job flags */ +#define AuHnJob_XINO0 1 +#define AuHnJob_GEN (1 << 1) +#define AuHnJob_DIRENT (1 << 2) +#define AuHnJob_ISDIR (1 << 3) +#define AuHnJob_TRYXINO0 (1 << 4) +#define AuHnJob_MNTPNT (1 << 5) +#define au_ftest_hnjob(flags, name) ((flags) & AuHnJob_##name) +#define au_fset_hnjob(flags, name) \ + do { (flags) |= AuHnJob_##name; } while (0) +#define au_fclr_hnjob(flags, name) \ + do { (flags) &= ~AuHnJob_##name; } while (0) + +enum { + AuHn_CHILD, + AuHn_PARENT, + AuHnLast +}; + +struct au_hnotify_args { + struct inode *h_dir, *dir, *h_child_inode; + u32 mask; + unsigned int flags[AuHnLast]; + unsigned int h_child_nlen; + char h_child_name[]; +}; + +struct hn_job_args { + unsigned int flags; + struct inode *inode, *h_inode, *dir, *h_dir; + struct dentry *dentry; + char *h_name; + int h_nlen; +}; + +static int hn_job(struct hn_job_args *a) +{ + const unsigned int isdir = au_ftest_hnjob(a->flags, ISDIR); + int e; + + /* reset xino */ + if (au_ftest_hnjob(a->flags, XINO0) && a->inode) + hn_xino(a->inode, a->h_inode); /* ignore this error */ + + if (au_ftest_hnjob(a->flags, TRYXINO0) + && a->inode + && a->h_inode) { + inode_lock_shared_nested(a->h_inode, AuLsc_I_CHILD); + if (!a->h_inode->i_nlink + && !(a->h_inode->i_state & I_LINKABLE)) + hn_xino(a->inode, a->h_inode); /* ignore this error */ + inode_unlock_shared(a->h_inode); + } + + /* make the generation obsolete */ + if (au_ftest_hnjob(a->flags, GEN)) { + e = -1; + if (a->inode) + e = hn_gen_by_inode(a->h_name, a->h_nlen, a->inode, + isdir); + if (e && a->dentry) + hn_gen_by_name(a->dentry, isdir); + /* ignore this error */ + } + + /* make dir entries obsolete */ + if (au_ftest_hnjob(a->flags, DIRENT) && a->inode) { + struct au_vdir *vdir; + + vdir = au_ivdir(a->inode); + if (vdir) + vdir->vd_jiffy = 0; + /* IMustLock(a->inode); */ + /* inode_inc_iversion(a->inode); */ + } + + /* can do nothing but warn */ + if (au_ftest_hnjob(a->flags, MNTPNT) + && a->dentry + && d_mountpoint(a->dentry)) + pr_warn("mount-point %pd is removed or renamed\n", a->dentry); + + return 0; +} + +/* ---------------------------------------------------------------------- */ + +static struct dentry *lookup_wlock_by_name(char *name, unsigned int nlen, + struct inode *dir) +{ + struct dentry *dentry, *d, *parent; + struct qstr *dname; + + parent = d_find_any_alias(dir); + if (!parent) + return NULL; + + dentry = NULL; + spin_lock(&parent->d_lock); + list_for_each_entry(d, &parent->d_subdirs, d_child) { + /* AuDbg("%pd\n", d); */ + spin_lock_nested(&d->d_lock, DENTRY_D_LOCK_NESTED); + dname = &d->d_name; + if (dname->len != nlen || memcmp(dname->name, name, nlen)) + goto cont_unlock; + if (au_di(d)) + au_digen_dec(d); + else + goto cont_unlock; + if (au_dcount(d) > 0) { + dentry = dget_dlock(d); + spin_unlock(&d->d_lock); + break; + } + +cont_unlock: + spin_unlock(&d->d_lock); + } + spin_unlock(&parent->d_lock); + dput(parent); + + if (dentry) + di_write_lock_child(dentry); + + return dentry; +} + +static struct inode *lookup_wlock_by_ino(struct super_block *sb, + aufs_bindex_t bindex, ino_t h_ino) +{ + struct inode *inode; + ino_t ino; + int err; + + inode = NULL; + err = au_xino_read(sb, bindex, h_ino, &ino); + if (!err && ino) + inode = ilookup(sb, ino); + if (!inode) + goto out; + + if (unlikely(inode->i_ino == AUFS_ROOT_INO)) { + pr_warn("wrong root branch\n"); + iput(inode); + inode = NULL; + goto out; + } + + ii_write_lock_child(inode); + +out: + return inode; +} + +static void au_hn_bh(void *_args) +{ + struct au_hnotify_args *a = _args; + struct super_block *sb; + aufs_bindex_t bindex, bbot, bfound; + unsigned char xino, try_iput; + int err; + struct inode *inode; + ino_t h_ino; + struct hn_job_args args; + struct dentry *dentry; + struct au_sbinfo *sbinfo; + + AuDebugOn(!_args); + AuDebugOn(!a->h_dir); + AuDebugOn(!a->dir); + AuDebugOn(!a->mask); + AuDbg("mask 0x%x, i%lu, hi%lu, hci%lu\n", + a->mask, a->dir->i_ino, a->h_dir->i_ino, + a->h_child_inode ? a->h_child_inode->i_ino : 0); + + inode = NULL; + dentry = NULL; + /* + * do not lock a->dir->i_mutex here + * because of d_revalidate() may cause a deadlock. + */ + sb = a->dir->i_sb; + AuDebugOn(!sb); + sbinfo = au_sbi(sb); + AuDebugOn(!sbinfo); + si_write_lock(sb, AuLock_NOPLMW); + + if (au_opt_test(sbinfo->si_mntflags, DIRREN)) + switch (a->mask & FS_EVENTS_POSS_ON_CHILD) { + case FS_MOVED_FROM: + case FS_MOVED_TO: + AuWarn1("DIRREN with UDBA may not work correctly " + "for the direct rename(2)\n"); + } + + ii_read_lock_parent(a->dir); + bfound = -1; + bbot = au_ibbot(a->dir); + for (bindex = au_ibtop(a->dir); bindex <= bbot; bindex++) + if (au_h_iptr(a->dir, bindex) == a->h_dir) { + bfound = bindex; + break; + } + ii_read_unlock(a->dir); + if (unlikely(bfound < 0)) + goto out; + + xino = !!au_opt_test(au_mntflags(sb), XINO); + h_ino = 0; + if (a->h_child_inode) + h_ino = a->h_child_inode->i_ino; + + if (a->h_child_nlen + && (au_ftest_hnjob(a->flags[AuHn_CHILD], GEN) + || au_ftest_hnjob(a->flags[AuHn_CHILD], MNTPNT))) + dentry = lookup_wlock_by_name(a->h_child_name, a->h_child_nlen, + a->dir); + try_iput = 0; + if (dentry && d_really_is_positive(dentry)) + inode = d_inode(dentry); + if (xino && !inode && h_ino + && (au_ftest_hnjob(a->flags[AuHn_CHILD], XINO0) + || au_ftest_hnjob(a->flags[AuHn_CHILD], TRYXINO0) + || au_ftest_hnjob(a->flags[AuHn_CHILD], GEN))) { + inode = lookup_wlock_by_ino(sb, bfound, h_ino); + try_iput = 1; + } + + args.flags = a->flags[AuHn_CHILD]; + args.dentry = dentry; + args.inode = inode; + args.h_inode = a->h_child_inode; + args.dir = a->dir; + args.h_dir = a->h_dir; + args.h_name = a->h_child_name; + args.h_nlen = a->h_child_nlen; + err = hn_job(&args); + if (dentry) { + if (au_di(dentry)) + di_write_unlock(dentry); + dput(dentry); + } + if (inode && try_iput) { + ii_write_unlock(inode); + iput(inode); + } + + ii_write_lock_parent(a->dir); + args.flags = a->flags[AuHn_PARENT]; + args.dentry = NULL; + args.inode = a->dir; + args.h_inode = a->h_dir; + args.dir = NULL; + args.h_dir = NULL; + args.h_name = NULL; + args.h_nlen = 0; + err = hn_job(&args); + ii_write_unlock(a->dir); + +out: + iput(a->h_child_inode); + iput(a->h_dir); + iput(a->dir); + si_write_unlock(sb); + au_nwt_done(&sbinfo->si_nowait); + au_kfree_rcu(a); +} + +/* ---------------------------------------------------------------------- */ + +int au_hnotify(struct inode *h_dir, struct au_hnotify *hnotify, u32 mask, + const struct qstr *h_child_qstr, struct inode *h_child_inode) +{ + int err, len; + unsigned int flags[AuHnLast], f; + unsigned char isdir, isroot, wh; + struct inode *dir; + struct au_hnotify_args *args; + char *p, *h_child_name; + + err = 0; + AuDebugOn(!hnotify || !hnotify->hn_aufs_inode); + dir = igrab(hnotify->hn_aufs_inode); + if (!dir) + goto out; + + isroot = (dir->i_ino == AUFS_ROOT_INO); + wh = 0; + h_child_name = (void *)h_child_qstr->name; + len = h_child_qstr->len; + if (h_child_name) { + if (len > AUFS_WH_PFX_LEN + && !memcmp(h_child_name, AUFS_WH_PFX, AUFS_WH_PFX_LEN)) { + h_child_name += AUFS_WH_PFX_LEN; + len -= AUFS_WH_PFX_LEN; + wh = 1; + } + } + + isdir = 0; + if (h_child_inode) + isdir = !!S_ISDIR(h_child_inode->i_mode); + flags[AuHn_PARENT] = AuHnJob_ISDIR; + flags[AuHn_CHILD] = 0; + if (isdir) + flags[AuHn_CHILD] = AuHnJob_ISDIR; + au_fset_hnjob(flags[AuHn_PARENT], DIRENT); + au_fset_hnjob(flags[AuHn_CHILD], GEN); + switch (mask & ALL_FSNOTIFY_DIRENT_EVENTS) { + case FS_MOVED_FROM: + case FS_MOVED_TO: + au_fset_hnjob(flags[AuHn_CHILD], XINO0); + au_fset_hnjob(flags[AuHn_CHILD], MNTPNT); + /*FALLTHROUGH*/ + case FS_CREATE: + AuDebugOn(!h_child_name); + break; + + case FS_DELETE: + /* + * aufs never be able to get this child inode. + * revalidation should be in d_revalidate() + * by checking i_nlink, i_generation or d_unhashed(). + */ + AuDebugOn(!h_child_name); + au_fset_hnjob(flags[AuHn_CHILD], TRYXINO0); + au_fset_hnjob(flags[AuHn_CHILD], MNTPNT); + break; + + default: + AuDebugOn(1); + } + + if (wh) + h_child_inode = NULL; + + err = -ENOMEM; + /* iput() and kfree() will be called in au_hnotify() */ + args = kmalloc(sizeof(*args) + len + 1, GFP_NOFS); + if (unlikely(!args)) { + AuErr1("no memory\n"); + iput(dir); + goto out; + } + args->flags[AuHn_PARENT] = flags[AuHn_PARENT]; + args->flags[AuHn_CHILD] = flags[AuHn_CHILD]; + args->mask = mask; + args->dir = dir; + args->h_dir = igrab(h_dir); + if (h_child_inode) + h_child_inode = igrab(h_child_inode); /* can be NULL */ + args->h_child_inode = h_child_inode; + args->h_child_nlen = len; + if (len) { + p = (void *)args; + p += sizeof(*args); + memcpy(p, h_child_name, len); + p[len] = 0; + } + + /* NFS fires the event for silly-renamed one from kworker */ + f = 0; + if (!dir->i_nlink + || (au_test_nfs(h_dir->i_sb) && (mask & FS_DELETE))) + f = AuWkq_NEST; + err = au_wkq_nowait(au_hn_bh, args, dir->i_sb, f); + if (unlikely(err)) { + pr_err("wkq %d\n", err); + iput(args->h_child_inode); + iput(args->h_dir); + iput(args->dir); + au_kfree_rcu(args); + } + +out: + return err; +} + +/* ---------------------------------------------------------------------- */ + +int au_hnotify_reset_br(unsigned int udba, struct au_branch *br, int perm) +{ + int err; + + AuDebugOn(!(udba & AuOptMask_UDBA)); + + err = 0; + if (au_hnotify_op.reset_br) + err = au_hnotify_op.reset_br(udba, br, perm); + + return err; +} + +int au_hnotify_init_br(struct au_branch *br, int perm) +{ + int err; + + err = 0; + if (au_hnotify_op.init_br) + err = au_hnotify_op.init_br(br, perm); + + return err; +} + +void au_hnotify_fin_br(struct au_branch *br) +{ + if (au_hnotify_op.fin_br) + au_hnotify_op.fin_br(br); +} + +static void au_hn_destroy_cache(void) +{ + kmem_cache_destroy(au_cache[AuCache_HNOTIFY]); + au_cache[AuCache_HNOTIFY] = NULL; +} + +int __init au_hnotify_init(void) +{ + int err; + + err = -ENOMEM; + au_cache[AuCache_HNOTIFY] = AuCache(au_hnotify); + if (au_cache[AuCache_HNOTIFY]) { + err = 0; + if (au_hnotify_op.init) + err = au_hnotify_op.init(); + if (unlikely(err)) + au_hn_destroy_cache(); + } + AuTraceErr(err); + return err; +} + +void au_hnotify_fin(void) +{ + if (au_hnotify_op.fin) + au_hnotify_op.fin(); + + /* cf. au_cache_fin() */ + if (au_cache[AuCache_HNOTIFY]) + au_hn_destroy_cache(); +} --- linux-azure-5.8-5.8.0.orig/fs/aufs/i_op.c +++ linux-azure-5.8-5.8.0/fs/aufs/i_op.c @@ -0,0 +1,1502 @@ +// SPDX-License-Identifier: GPL-2.0 +/* + * Copyright (C) 2005-2020 Junjiro R. Okajima + * + * This program, aufs is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; either version 2 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + */ + +/* + * inode operations (except add/del/rename) + */ + +#include +#include +#include +#include +#include +#include "aufs.h" + +static int h_permission(struct inode *h_inode, int mask, + struct path *h_path, int brperm) +{ + int err; + const unsigned char write_mask = !!(mask & (MAY_WRITE | MAY_APPEND)); + + err = -EPERM; + if (write_mask && IS_IMMUTABLE(h_inode)) + goto out; + + err = -EACCES; + if (((mask & MAY_EXEC) + && S_ISREG(h_inode->i_mode) + && (path_noexec(h_path) + || !(h_inode->i_mode & 0111)))) + goto out; + + /* + * - skip the lower fs test in the case of write to ro branch. + * - nfs dir permission write check is optimized, but a policy for + * link/rename requires a real check. + * - nfs always sets SB_POSIXACL regardless its mount option 'noacl.' + * in this case, generic_permission() returns -EOPNOTSUPP. + */ + if ((write_mask && !au_br_writable(brperm)) + || (au_test_nfs(h_inode->i_sb) && S_ISDIR(h_inode->i_mode) + && write_mask && !(mask & MAY_READ)) + || !h_inode->i_op->permission) { + /* AuLabel(generic_permission); */ + /* AuDbg("get_acl %ps\n", h_inode->i_op->get_acl); */ + err = generic_permission(h_inode, mask); + if (err == -EOPNOTSUPP && au_test_nfs_noacl(h_inode)) + err = h_inode->i_op->permission(h_inode, mask); + AuTraceErr(err); + } else { + /* AuLabel(h_inode->permission); */ + err = h_inode->i_op->permission(h_inode, mask); + AuTraceErr(err); + } + + if (!err) + err = devcgroup_inode_permission(h_inode, mask); + if (!err) + err = security_inode_permission(h_inode, mask); + +out: + return err; +} + +static int aufs_permission(struct inode *inode, int mask) +{ + int err; + aufs_bindex_t bindex, bbot; + const unsigned char isdir = !!S_ISDIR(inode->i_mode), + write_mask = !!(mask & (MAY_WRITE | MAY_APPEND)); + struct inode *h_inode; + struct super_block *sb; + struct au_branch *br; + + /* todo: support rcu-walk? */ + if (mask & MAY_NOT_BLOCK) + return -ECHILD; + + sb = inode->i_sb; + si_read_lock(sb, AuLock_FLUSH); + ii_read_lock_child(inode); +#if 0 /* reserved for future use */ + /* + * This test may be rather 'too much' since the test is essentially done + * in the aufs_lookup(). Theoretically it is possible that the inode + * generation doesn't match to the superblock's here. But it isn't a + * big deal I suppose. + */ + err = au_iigen_test(inode, au_sigen(sb)); + if (unlikely(err)) + goto out; +#endif + + if (!isdir + || write_mask + || au_opt_test(au_mntflags(sb), DIRPERM1)) { + err = au_busy_or_stale(); + h_inode = au_h_iptr(inode, au_ibtop(inode)); + if (unlikely(!h_inode + || (h_inode->i_mode & S_IFMT) + != (inode->i_mode & S_IFMT))) + goto out; + + err = 0; + bindex = au_ibtop(inode); + br = au_sbr(sb, bindex); + err = h_permission(h_inode, mask, &br->br_path, br->br_perm); + if (write_mask + && !err + && !special_file(h_inode->i_mode)) { + /* test whether the upper writable branch exists */ + err = -EROFS; + for (; bindex >= 0; bindex--) + if (!au_br_rdonly(au_sbr(sb, bindex))) { + err = 0; + break; + } + } + goto out; + } + + /* non-write to dir */ + err = 0; + bbot = au_ibbot(inode); + for (bindex = au_ibtop(inode); !err && bindex <= bbot; bindex++) { + h_inode = au_h_iptr(inode, bindex); + if (h_inode) { + err = au_busy_or_stale(); + if (unlikely(!S_ISDIR(h_inode->i_mode))) + break; + + br = au_sbr(sb, bindex); + err = h_permission(h_inode, mask, &br->br_path, + br->br_perm); + } + } + +out: + ii_read_unlock(inode); + si_read_unlock(sb); + return err; +} + +/* ---------------------------------------------------------------------- */ + +static struct dentry *aufs_lookup(struct inode *dir, struct dentry *dentry, + unsigned int flags) +{ + struct dentry *ret, *parent; + struct inode *inode; + struct super_block *sb; + int err, npositive; + + IMustLock(dir); + + /* todo: support rcu-walk? */ + ret = ERR_PTR(-ECHILD); + if (flags & LOOKUP_RCU) + goto out; + + ret = ERR_PTR(-ENAMETOOLONG); + if (unlikely(dentry->d_name.len > AUFS_MAX_NAMELEN)) + goto out; + + sb = dir->i_sb; + err = si_read_lock(sb, AuLock_FLUSH | AuLock_NOPLM); + ret = ERR_PTR(err); + if (unlikely(err)) + goto out; + + err = au_di_init(dentry); + ret = ERR_PTR(err); + if (unlikely(err)) + goto out_si; + + inode = NULL; + npositive = 0; /* suppress a warning */ + parent = dentry->d_parent; /* dir inode is locked */ + di_read_lock_parent(parent, AuLock_IR); + err = au_alive_dir(parent); + if (!err) + err = au_digen_test(parent, au_sigen(sb)); + if (!err) { + /* regardless LOOKUP_CREATE, always ALLOW_NEG */ + npositive = au_lkup_dentry(dentry, au_dbtop(parent), + AuLkup_ALLOW_NEG); + err = npositive; + } + di_read_unlock(parent, AuLock_IR); + ret = ERR_PTR(err); + if (unlikely(err < 0)) + goto out_unlock; + + if (npositive) { + inode = au_new_inode(dentry, /*must_new*/0); + if (IS_ERR(inode)) { + ret = (void *)inode; + inode = NULL; + goto out_unlock; + } + } + + if (inode) + atomic_inc(&inode->i_count); + ret = d_splice_alias(inode, dentry); +#if 0 /* reserved for future use */ + if (unlikely(d_need_lookup(dentry))) { + spin_lock(&dentry->d_lock); + dentry->d_flags &= ~DCACHE_NEED_LOOKUP; + spin_unlock(&dentry->d_lock); + } else +#endif + if (inode) { + if (!IS_ERR(ret)) { + iput(inode); + if (ret && ret != dentry) + ii_write_unlock(inode); + } else { + ii_write_unlock(inode); + iput(inode); + inode = NULL; + } + } + +out_unlock: + di_write_unlock(dentry); +out_si: + si_read_unlock(sb); +out: + return ret; +} + +/* ---------------------------------------------------------------------- */ + +/* + * very dirty and complicated aufs ->atomic_open(). + * aufs_atomic_open() + * + au_aopen_or_create() + * + add_simple() + * + vfsub_atomic_open() + * + branch fs ->atomic_open() + * may call the actual 'open' for h_file + * + inc br_nfiles only if opened + * + au_aopen_no_open() or au_aopen_do_open() + * + * au_aopen_do_open() + * + finish_open() + * + au_do_aopen() + * + au_do_open() the body of all 'open' + * + au_do_open_nondir() + * set the passed h_file + * + * au_aopen_no_open() + * + finish_no_open() + */ + +struct aopen_node { + struct hlist_bl_node hblist; + struct file *file, *h_file; +}; + +static int au_do_aopen(struct inode *inode, struct file *file) +{ + struct hlist_bl_head *aopen; + struct hlist_bl_node *pos; + struct aopen_node *node; + struct au_do_open_args args = { + .aopen = 1, + .open = au_do_open_nondir + }; + + aopen = &au_sbi(inode->i_sb)->si_aopen; + hlist_bl_lock(aopen); + hlist_bl_for_each_entry(node, pos, aopen, hblist) + if (node->file == file) { + args.h_file = node->h_file; + break; + } + hlist_bl_unlock(aopen); + /* AuDebugOn(!args.h_file); */ + + return au_do_open(file, &args); +} + +static int au_aopen_do_open(struct file *file, struct dentry *dentry, + struct aopen_node *aopen_node) +{ + int err; + struct hlist_bl_head *aopen; + + AuLabel(here); + aopen = &au_sbi(dentry->d_sb)->si_aopen; + au_hbl_add(&aopen_node->hblist, aopen); + err = finish_open(file, dentry, au_do_aopen); + au_hbl_del(&aopen_node->hblist, aopen); + /* AuDbgFile(file); */ + AuDbg("%pd%s%s\n", dentry, + (file->f_mode & FMODE_CREATED) ? " created" : "", + (file->f_mode & FMODE_OPENED) ? " opened" : ""); + + AuTraceErr(err); + return err; +} + +static int au_aopen_no_open(struct file *file, struct dentry *dentry) +{ + int err; + + AuLabel(here); + dget(dentry); + err = finish_no_open(file, dentry); + + AuTraceErr(err); + return err; +} + +static int aufs_atomic_open(struct inode *dir, struct dentry *dentry, + struct file *file, unsigned int open_flag, + umode_t create_mode) +{ + int err, did_open; + unsigned int lkup_flags; + aufs_bindex_t bindex; + struct super_block *sb; + struct dentry *parent, *d; + struct vfsub_aopen_args args = { + .open_flag = open_flag, + .create_mode = create_mode + }; + struct aopen_node aopen_node = { + .file = file + }; + + IMustLock(dir); + AuDbg("open_flag 0%o\n", open_flag); + AuDbgDentry(dentry); + + err = 0; + if (!au_di(dentry)) { + lkup_flags = LOOKUP_OPEN; + if (open_flag & O_CREAT) + lkup_flags |= LOOKUP_CREATE; + d = aufs_lookup(dir, dentry, lkup_flags); + if (IS_ERR(d)) { + err = PTR_ERR(d); + AuTraceErr(err); + goto out; + } else if (d) { + /* + * obsoleted dentry found. + * another error will be returned later. + */ + d_drop(d); + AuDbgDentry(d); + dput(d); + } + AuDbgDentry(dentry); + } + + if (d_is_positive(dentry) + || d_unhashed(dentry) + || d_unlinked(dentry) + || !(open_flag & O_CREAT)) { + err = au_aopen_no_open(file, dentry); + goto out; /* success */ + } + + err = aufs_read_lock(dentry, AuLock_DW | AuLock_FLUSH | AuLock_GEN); + if (unlikely(err)) + goto out; + + sb = dentry->d_sb; + parent = dentry->d_parent; /* dir is locked */ + di_write_lock_parent(parent); + err = au_lkup_dentry(dentry, /*btop*/0, AuLkup_ALLOW_NEG); + if (unlikely(err < 0)) + goto out_parent; + + AuDbgDentry(dentry); + if (d_is_positive(dentry)) { + err = au_aopen_no_open(file, dentry); + goto out_parent; /* success */ + } + + args.file = alloc_empty_file(file->f_flags, current_cred()); + err = PTR_ERR(args.file); + if (IS_ERR(args.file)) + goto out_parent; + + bindex = au_dbtop(dentry); + err = au_aopen_or_create(dir, dentry, &args); + AuTraceErr(err); + AuDbgFile(args.file); + file->f_mode = args.file->f_mode & ~FMODE_OPENED; + did_open = !!(args.file->f_mode & FMODE_OPENED); + if (!did_open) { + fput(args.file); + args.file = NULL; + } + di_write_unlock(parent); + di_write_unlock(dentry); + if (unlikely(err < 0)) { + if (args.file) + fput(args.file); + goto out_sb; + } + + if (!did_open) + err = au_aopen_no_open(file, dentry); + else { + aopen_node.h_file = args.file; + err = au_aopen_do_open(file, dentry, &aopen_node); + } + if (unlikely(err < 0)) { + if (args.file) + fput(args.file); + if (did_open) + au_lcnt_dec(&args.br->br_nfiles); + } + goto out_sb; /* success */ + +out_parent: + di_write_unlock(parent); + di_write_unlock(dentry); +out_sb: + si_read_unlock(sb); +out: + AuTraceErr(err); + AuDbgFile(file); + return err; +} + + +/* ---------------------------------------------------------------------- */ + +static int au_wr_dir_cpup(struct dentry *dentry, struct dentry *parent, + const unsigned char add_entry, aufs_bindex_t bcpup, + aufs_bindex_t btop) +{ + int err; + struct dentry *h_parent; + struct inode *h_dir; + + if (add_entry) + IMustLock(d_inode(parent)); + else + di_write_lock_parent(parent); + + err = 0; + if (!au_h_dptr(parent, bcpup)) { + if (btop > bcpup) + err = au_cpup_dirs(dentry, bcpup); + else if (btop < bcpup) + err = au_cpdown_dirs(dentry, bcpup); + else + BUG(); + } + if (!err && add_entry && !au_ftest_wrdir(add_entry, TMPFILE)) { + h_parent = au_h_dptr(parent, bcpup); + h_dir = d_inode(h_parent); + inode_lock_shared_nested(h_dir, AuLsc_I_PARENT); + err = au_lkup_neg(dentry, bcpup, /*wh*/0); + /* todo: no unlock here */ + inode_unlock_shared(h_dir); + + AuDbg("bcpup %d\n", bcpup); + if (!err) { + if (d_really_is_negative(dentry)) + au_set_h_dptr(dentry, btop, NULL); + au_update_dbrange(dentry, /*do_put_zero*/0); + } + } + + if (!add_entry) + di_write_unlock(parent); + if (!err) + err = bcpup; /* success */ + + AuTraceErr(err); + return err; +} + +/* + * decide the branch and the parent dir where we will create a new entry. + * returns new bindex or an error. + * copyup the parent dir if needed. + */ +int au_wr_dir(struct dentry *dentry, struct dentry *src_dentry, + struct au_wr_dir_args *args) +{ + int err; + unsigned int flags; + aufs_bindex_t bcpup, btop, src_btop; + const unsigned char add_entry + = au_ftest_wrdir(args->flags, ADD_ENTRY) + | au_ftest_wrdir(args->flags, TMPFILE); + struct super_block *sb; + struct dentry *parent; + struct au_sbinfo *sbinfo; + + sb = dentry->d_sb; + sbinfo = au_sbi(sb); + parent = dget_parent(dentry); + btop = au_dbtop(dentry); + bcpup = btop; + if (args->force_btgt < 0) { + if (src_dentry) { + src_btop = au_dbtop(src_dentry); + if (src_btop < btop) + bcpup = src_btop; + } else if (add_entry) { + flags = 0; + if (au_ftest_wrdir(args->flags, ISDIR)) + au_fset_wbr(flags, DIR); + err = AuWbrCreate(sbinfo, dentry, flags); + bcpup = err; + } + + if (bcpup < 0 || au_test_ro(sb, bcpup, d_inode(dentry))) { + if (add_entry) + err = AuWbrCopyup(sbinfo, dentry); + else { + if (!IS_ROOT(dentry)) { + di_read_lock_parent(parent, !AuLock_IR); + err = AuWbrCopyup(sbinfo, dentry); + di_read_unlock(parent, !AuLock_IR); + } else + err = AuWbrCopyup(sbinfo, dentry); + } + bcpup = err; + if (unlikely(err < 0)) + goto out; + } + } else { + bcpup = args->force_btgt; + AuDebugOn(au_test_ro(sb, bcpup, d_inode(dentry))); + } + + AuDbg("btop %d, bcpup %d\n", btop, bcpup); + err = bcpup; + if (bcpup == btop) + goto out; /* success */ + + /* copyup the new parent into the branch we process */ + err = au_wr_dir_cpup(dentry, parent, add_entry, bcpup, btop); + if (err >= 0) { + if (d_really_is_negative(dentry)) { + au_set_h_dptr(dentry, btop, NULL); + au_set_dbtop(dentry, bcpup); + au_set_dbbot(dentry, bcpup); + } + AuDebugOn(add_entry + && !au_ftest_wrdir(args->flags, TMPFILE) + && !au_h_dptr(dentry, bcpup)); + } + +out: + dput(parent); + return err; +} + +/* ---------------------------------------------------------------------- */ + +void au_pin_hdir_unlock(struct au_pin *p) +{ + if (p->hdir) + au_hn_inode_unlock(p->hdir); +} + +int au_pin_hdir_lock(struct au_pin *p) +{ + int err; + + err = 0; + if (!p->hdir) + goto out; + + /* even if an error happens later, keep this lock */ + au_hn_inode_lock_nested(p->hdir, p->lsc_hi); + + err = -EBUSY; + if (unlikely(p->hdir->hi_inode != d_inode(p->h_parent))) + goto out; + + err = 0; + if (p->h_dentry) + err = au_h_verify(p->h_dentry, p->udba, p->hdir->hi_inode, + p->h_parent, p->br); + +out: + return err; +} + +int au_pin_hdir_relock(struct au_pin *p) +{ + int err, i; + struct inode *h_i; + struct dentry *h_d[] = { + p->h_dentry, + p->h_parent + }; + + err = au_pin_hdir_lock(p); + if (unlikely(err)) + goto out; + + for (i = 0; !err && i < sizeof(h_d)/sizeof(*h_d); i++) { + if (!h_d[i]) + continue; + if (d_is_positive(h_d[i])) { + h_i = d_inode(h_d[i]); + err = !h_i->i_nlink; + } + } + +out: + return err; +} + +static void au_pin_hdir_set_owner(struct au_pin *p, struct task_struct *task) +{ + atomic_long_set(&p->hdir->hi_inode->i_rwsem.owner, (long)task); +} + +void au_pin_hdir_acquire_nest(struct au_pin *p) +{ + if (p->hdir) { + rwsem_acquire_nest(&p->hdir->hi_inode->i_rwsem.dep_map, + p->lsc_hi, 0, NULL, _RET_IP_); + au_pin_hdir_set_owner(p, current); + } +} + +void au_pin_hdir_release(struct au_pin *p) +{ + if (p->hdir) { + au_pin_hdir_set_owner(p, p->task); + rwsem_release(&p->hdir->hi_inode->i_rwsem.dep_map, _RET_IP_); + } +} + +struct dentry *au_pinned_h_parent(struct au_pin *pin) +{ + if (pin && pin->parent) + return au_h_dptr(pin->parent, pin->bindex); + return NULL; +} + +void au_unpin(struct au_pin *p) +{ + if (p->hdir) + au_pin_hdir_unlock(p); + if (p->h_mnt && au_ftest_pin(p->flags, MNT_WRITE)) + vfsub_mnt_drop_write(p->h_mnt); + if (!p->hdir) + return; + + if (!au_ftest_pin(p->flags, DI_LOCKED)) + di_read_unlock(p->parent, AuLock_IR); + iput(p->hdir->hi_inode); + dput(p->parent); + p->parent = NULL; + p->hdir = NULL; + p->h_mnt = NULL; + /* do not clear p->task */ +} + +int au_do_pin(struct au_pin *p) +{ + int err; + struct super_block *sb; + struct inode *h_dir; + + err = 0; + sb = p->dentry->d_sb; + p->br = au_sbr(sb, p->bindex); + if (IS_ROOT(p->dentry)) { + if (au_ftest_pin(p->flags, MNT_WRITE)) { + p->h_mnt = au_br_mnt(p->br); + err = vfsub_mnt_want_write(p->h_mnt); + if (unlikely(err)) { + au_fclr_pin(p->flags, MNT_WRITE); + goto out_err; + } + } + goto out; + } + + p->h_dentry = NULL; + if (p->bindex <= au_dbbot(p->dentry)) + p->h_dentry = au_h_dptr(p->dentry, p->bindex); + + p->parent = dget_parent(p->dentry); + if (!au_ftest_pin(p->flags, DI_LOCKED)) + di_read_lock(p->parent, AuLock_IR, p->lsc_di); + + h_dir = NULL; + p->h_parent = au_h_dptr(p->parent, p->bindex); + p->hdir = au_hi(d_inode(p->parent), p->bindex); + if (p->hdir) + h_dir = p->hdir->hi_inode; + + /* + * udba case, or + * if DI_LOCKED is not set, then p->parent may be different + * and h_parent can be NULL. + */ + if (unlikely(!p->hdir || !h_dir || !p->h_parent)) { + err = -EBUSY; + if (!au_ftest_pin(p->flags, DI_LOCKED)) + di_read_unlock(p->parent, AuLock_IR); + dput(p->parent); + p->parent = NULL; + goto out_err; + } + + if (au_ftest_pin(p->flags, MNT_WRITE)) { + p->h_mnt = au_br_mnt(p->br); + err = vfsub_mnt_want_write(p->h_mnt); + if (unlikely(err)) { + au_fclr_pin(p->flags, MNT_WRITE); + if (!au_ftest_pin(p->flags, DI_LOCKED)) + di_read_unlock(p->parent, AuLock_IR); + dput(p->parent); + p->parent = NULL; + goto out_err; + } + } + + au_igrab(h_dir); + err = au_pin_hdir_lock(p); + if (!err) + goto out; /* success */ + + au_unpin(p); + +out_err: + pr_err("err %d\n", err); + err = au_busy_or_stale(); +out: + return err; +} + +void au_pin_init(struct au_pin *p, struct dentry *dentry, + aufs_bindex_t bindex, int lsc_di, int lsc_hi, + unsigned int udba, unsigned char flags) +{ + p->dentry = dentry; + p->udba = udba; + p->lsc_di = lsc_di; + p->lsc_hi = lsc_hi; + p->flags = flags; + p->bindex = bindex; + + p->parent = NULL; + p->hdir = NULL; + p->h_mnt = NULL; + + p->h_dentry = NULL; + p->h_parent = NULL; + p->br = NULL; + p->task = current; +} + +int au_pin(struct au_pin *pin, struct dentry *dentry, aufs_bindex_t bindex, + unsigned int udba, unsigned char flags) +{ + au_pin_init(pin, dentry, bindex, AuLsc_DI_PARENT, AuLsc_I_PARENT2, + udba, flags); + return au_do_pin(pin); +} + +/* ---------------------------------------------------------------------- */ + +/* + * ->setattr() and ->getattr() are called in various cases. + * chmod, stat: dentry is revalidated. + * fchmod, fstat: file and dentry are not revalidated, additionally they may be + * unhashed. + * for ->setattr(), ia->ia_file is passed from ftruncate only. + */ +/* todo: consolidate with do_refresh() and simple_reval_dpath() */ +int au_reval_for_attr(struct dentry *dentry, unsigned int sigen) +{ + int err; + struct dentry *parent; + + err = 0; + if (au_digen_test(dentry, sigen)) { + parent = dget_parent(dentry); + di_read_lock_parent(parent, AuLock_IR); + err = au_refresh_dentry(dentry, parent); + di_read_unlock(parent, AuLock_IR); + dput(parent); + } + + AuTraceErr(err); + return err; +} + +int au_pin_and_icpup(struct dentry *dentry, struct iattr *ia, + struct au_icpup_args *a) +{ + int err; + loff_t sz; + aufs_bindex_t btop, ibtop; + struct dentry *hi_wh, *parent; + struct inode *inode; + struct au_wr_dir_args wr_dir_args = { + .force_btgt = -1, + .flags = 0 + }; + + if (d_is_dir(dentry)) + au_fset_wrdir(wr_dir_args.flags, ISDIR); + /* plink or hi_wh() case */ + btop = au_dbtop(dentry); + inode = d_inode(dentry); + ibtop = au_ibtop(inode); + if (btop != ibtop && !au_test_ro(inode->i_sb, ibtop, inode)) + wr_dir_args.force_btgt = ibtop; + err = au_wr_dir(dentry, /*src_dentry*/NULL, &wr_dir_args); + if (unlikely(err < 0)) + goto out; + a->btgt = err; + if (err != btop) + au_fset_icpup(a->flags, DID_CPUP); + + err = 0; + a->pin_flags = AuPin_MNT_WRITE; + parent = NULL; + if (!IS_ROOT(dentry)) { + au_fset_pin(a->pin_flags, DI_LOCKED); + parent = dget_parent(dentry); + di_write_lock_parent(parent); + } + + err = au_pin(&a->pin, dentry, a->btgt, a->udba, a->pin_flags); + if (unlikely(err)) + goto out_parent; + + sz = -1; + a->h_path.dentry = au_h_dptr(dentry, btop); + a->h_inode = d_inode(a->h_path.dentry); + if (ia && (ia->ia_valid & ATTR_SIZE)) { + inode_lock_shared_nested(a->h_inode, AuLsc_I_CHILD); + if (ia->ia_size < i_size_read(a->h_inode)) + sz = ia->ia_size; + inode_unlock_shared(a->h_inode); + } + + hi_wh = NULL; + if (au_ftest_icpup(a->flags, DID_CPUP) && d_unlinked(dentry)) { + hi_wh = au_hi_wh(inode, a->btgt); + if (!hi_wh) { + struct au_cp_generic cpg = { + .dentry = dentry, + .bdst = a->btgt, + .bsrc = -1, + .len = sz, + .pin = &a->pin + }; + err = au_sio_cpup_wh(&cpg, /*file*/NULL); + if (unlikely(err)) + goto out_unlock; + hi_wh = au_hi_wh(inode, a->btgt); + /* todo: revalidate hi_wh? */ + } + } + + if (parent) { + au_pin_set_parent_lflag(&a->pin, /*lflag*/0); + di_downgrade_lock(parent, AuLock_IR); + dput(parent); + parent = NULL; + } + if (!au_ftest_icpup(a->flags, DID_CPUP)) + goto out; /* success */ + + if (!d_unhashed(dentry)) { + struct au_cp_generic cpg = { + .dentry = dentry, + .bdst = a->btgt, + .bsrc = btop, + .len = sz, + .pin = &a->pin, + .flags = AuCpup_DTIME | AuCpup_HOPEN + }; + err = au_sio_cpup_simple(&cpg); + if (!err) + a->h_path.dentry = au_h_dptr(dentry, a->btgt); + } else if (!hi_wh) + a->h_path.dentry = au_h_dptr(dentry, a->btgt); + else + a->h_path.dentry = hi_wh; /* do not dget here */ + +out_unlock: + a->h_inode = d_inode(a->h_path.dentry); + if (!err) + goto out; /* success */ + au_unpin(&a->pin); +out_parent: + if (parent) { + di_write_unlock(parent); + dput(parent); + } +out: + if (!err) + inode_lock_nested(a->h_inode, AuLsc_I_CHILD); + return err; +} + +static int aufs_setattr(struct dentry *dentry, struct iattr *ia) +{ + int err; + struct inode *inode, *delegated; + struct super_block *sb; + struct file *file; + struct au_icpup_args *a; + + inode = d_inode(dentry); + IMustLock(inode); + + err = setattr_prepare(dentry, ia); + if (unlikely(err)) + goto out; + + err = -ENOMEM; + a = kzalloc(sizeof(*a), GFP_NOFS); + if (unlikely(!a)) + goto out; + + if (ia->ia_valid & (ATTR_KILL_SUID | ATTR_KILL_SGID)) + ia->ia_valid &= ~ATTR_MODE; + + file = NULL; + sb = dentry->d_sb; + err = si_read_lock(sb, AuLock_FLUSH | AuLock_NOPLM); + if (unlikely(err)) + goto out_kfree; + + if (ia->ia_valid & ATTR_FILE) { + /* currently ftruncate(2) only */ + AuDebugOn(!d_is_reg(dentry)); + file = ia->ia_file; + err = au_reval_and_lock_fdi(file, au_reopen_nondir, /*wlock*/1, + /*fi_lsc*/0); + if (unlikely(err)) + goto out_si; + ia->ia_file = au_hf_top(file); + a->udba = AuOpt_UDBA_NONE; + } else { + /* fchmod() doesn't pass ia_file */ + a->udba = au_opt_udba(sb); + di_write_lock_child(dentry); + /* no d_unlinked(), to set UDBA_NONE for root */ + if (d_unhashed(dentry)) + a->udba = AuOpt_UDBA_NONE; + if (a->udba != AuOpt_UDBA_NONE) { + AuDebugOn(IS_ROOT(dentry)); + err = au_reval_for_attr(dentry, au_sigen(sb)); + if (unlikely(err)) + goto out_dentry; + } + } + + err = au_pin_and_icpup(dentry, ia, a); + if (unlikely(err < 0)) + goto out_dentry; + if (au_ftest_icpup(a->flags, DID_CPUP)) { + ia->ia_file = NULL; + ia->ia_valid &= ~ATTR_FILE; + } + + a->h_path.mnt = au_sbr_mnt(sb, a->btgt); + if ((ia->ia_valid & (ATTR_MODE | ATTR_CTIME)) + == (ATTR_MODE | ATTR_CTIME)) { + err = security_path_chmod(&a->h_path, ia->ia_mode); + if (unlikely(err)) + goto out_unlock; + } else if ((ia->ia_valid & (ATTR_UID | ATTR_GID)) + && (ia->ia_valid & ATTR_CTIME)) { + err = security_path_chown(&a->h_path, ia->ia_uid, ia->ia_gid); + if (unlikely(err)) + goto out_unlock; + } + + if (ia->ia_valid & ATTR_SIZE) { + struct file *f; + + if (ia->ia_size < i_size_read(inode)) + /* unmap only */ + truncate_setsize(inode, ia->ia_size); + + f = NULL; + if (ia->ia_valid & ATTR_FILE) + f = ia->ia_file; + inode_unlock(a->h_inode); + err = vfsub_trunc(&a->h_path, ia->ia_size, ia->ia_valid, f); + inode_lock_nested(a->h_inode, AuLsc_I_CHILD); + } else { + delegated = NULL; + while (1) { + err = vfsub_notify_change(&a->h_path, ia, &delegated); + if (delegated) { + err = break_deleg_wait(&delegated); + if (!err) + continue; + } + break; + } + } + /* + * regardless aufs 'acl' option setting. + * why don't all acl-aware fs call this func from their ->setattr()? + */ + if (!err && (ia->ia_valid & ATTR_MODE)) + err = vfsub_acl_chmod(a->h_inode, ia->ia_mode); + if (!err) + au_cpup_attr_changeable(inode); + +out_unlock: + inode_unlock(a->h_inode); + au_unpin(&a->pin); + if (unlikely(err)) + au_update_dbtop(dentry); +out_dentry: + di_write_unlock(dentry); + if (file) { + fi_write_unlock(file); + ia->ia_file = file; + ia->ia_valid |= ATTR_FILE; + } +out_si: + si_read_unlock(sb); +out_kfree: + au_kfree_rcu(a); +out: + AuTraceErr(err); + return err; +} + +#if IS_ENABLED(CONFIG_AUFS_XATTR) || IS_ENABLED(CONFIG_FS_POSIX_ACL) +static int au_h_path_to_set_attr(struct dentry *dentry, + struct au_icpup_args *a, struct path *h_path) +{ + int err; + struct super_block *sb; + + sb = dentry->d_sb; + a->udba = au_opt_udba(sb); + /* no d_unlinked(), to set UDBA_NONE for root */ + if (d_unhashed(dentry)) + a->udba = AuOpt_UDBA_NONE; + if (a->udba != AuOpt_UDBA_NONE) { + AuDebugOn(IS_ROOT(dentry)); + err = au_reval_for_attr(dentry, au_sigen(sb)); + if (unlikely(err)) + goto out; + } + err = au_pin_and_icpup(dentry, /*ia*/NULL, a); + if (unlikely(err < 0)) + goto out; + + h_path->dentry = a->h_path.dentry; + h_path->mnt = au_sbr_mnt(sb, a->btgt); + +out: + return err; +} + +ssize_t au_sxattr(struct dentry *dentry, struct inode *inode, + struct au_sxattr *arg) +{ + int err; + struct path h_path; + struct super_block *sb; + struct au_icpup_args *a; + struct inode *h_inode; + + IMustLock(inode); + + err = -ENOMEM; + a = kzalloc(sizeof(*a), GFP_NOFS); + if (unlikely(!a)) + goto out; + + sb = dentry->d_sb; + err = si_read_lock(sb, AuLock_FLUSH | AuLock_NOPLM); + if (unlikely(err)) + goto out_kfree; + + h_path.dentry = NULL; /* silence gcc */ + di_write_lock_child(dentry); + err = au_h_path_to_set_attr(dentry, a, &h_path); + if (unlikely(err)) + goto out_di; + + inode_unlock(a->h_inode); + switch (arg->type) { + case AU_XATTR_SET: + AuDebugOn(d_is_negative(h_path.dentry)); + err = vfsub_setxattr(h_path.dentry, + arg->u.set.name, arg->u.set.value, + arg->u.set.size, arg->u.set.flags); + break; + case AU_ACL_SET: + err = -EOPNOTSUPP; + h_inode = d_inode(h_path.dentry); + if (h_inode->i_op->set_acl) + /* this will call posix_acl_update_mode */ + err = h_inode->i_op->set_acl(h_inode, + arg->u.acl_set.acl, + arg->u.acl_set.type); + break; + } + if (!err) + au_cpup_attr_timesizes(inode); + + au_unpin(&a->pin); + if (unlikely(err)) + au_update_dbtop(dentry); + +out_di: + di_write_unlock(dentry); + si_read_unlock(sb); +out_kfree: + au_kfree_rcu(a); +out: + AuTraceErr(err); + return err; +} +#endif + +static void au_refresh_iattr(struct inode *inode, struct kstat *st, + unsigned int nlink) +{ + unsigned int n; + + inode->i_mode = st->mode; + /* don't i_[ug]id_write() here */ + inode->i_uid = st->uid; + inode->i_gid = st->gid; + inode->i_atime = st->atime; + inode->i_mtime = st->mtime; + inode->i_ctime = st->ctime; + + au_cpup_attr_nlink(inode, /*force*/0); + if (S_ISDIR(inode->i_mode)) { + n = inode->i_nlink; + n -= nlink; + n += st->nlink; + smp_mb(); /* for i_nlink */ + /* 0 can happen */ + set_nlink(inode, n); + } + + spin_lock(&inode->i_lock); + inode->i_blocks = st->blocks; + i_size_write(inode, st->size); + spin_unlock(&inode->i_lock); +} + +/* + * common routine for aufs_getattr() and au_getxattr(). + * returns zero or negative (an error). + * @dentry will be read-locked in success. + */ +int au_h_path_getattr(struct dentry *dentry, struct inode *inode, int force, + struct path *h_path, int locked) +{ + int err; + unsigned int mnt_flags, sigen; + unsigned char udba_none; + aufs_bindex_t bindex; + struct super_block *sb, *h_sb; + + h_path->mnt = NULL; + h_path->dentry = NULL; + + err = 0; + sb = dentry->d_sb; + mnt_flags = au_mntflags(sb); + udba_none = !!au_opt_test(mnt_flags, UDBA_NONE); + + if (unlikely(locked)) + goto body; /* skip locking dinfo */ + + /* support fstat(2) */ + if (!d_unlinked(dentry) && !udba_none) { + sigen = au_sigen(sb); + err = au_digen_test(dentry, sigen); + if (!err) { + di_read_lock_child(dentry, AuLock_IR); + err = au_dbrange_test(dentry); + if (unlikely(err)) { + di_read_unlock(dentry, AuLock_IR); + goto out; + } + } else { + AuDebugOn(IS_ROOT(dentry)); + di_write_lock_child(dentry); + err = au_dbrange_test(dentry); + if (!err) + err = au_reval_for_attr(dentry, sigen); + if (!err) + di_downgrade_lock(dentry, AuLock_IR); + else { + di_write_unlock(dentry); + goto out; + } + } + } else + di_read_lock_child(dentry, AuLock_IR); + +body: + if (!inode) { + inode = d_inode(dentry); + if (unlikely(!inode)) + goto out; + } + bindex = au_ibtop(inode); + h_path->mnt = au_sbr_mnt(sb, bindex); + h_sb = h_path->mnt->mnt_sb; + if (!force + && !au_test_fs_bad_iattr(h_sb) + && udba_none) + goto out; /* success */ + + if (au_dbtop(dentry) == bindex) + h_path->dentry = au_h_dptr(dentry, bindex); + else if (au_opt_test(mnt_flags, PLINK) && au_plink_test(inode)) { + h_path->dentry = au_plink_lkup(inode, bindex); + if (IS_ERR(h_path->dentry)) + /* pretending success */ + h_path->dentry = NULL; + else + dput(h_path->dentry); + } + +out: + return err; +} + +static int aufs_getattr(const struct path *path, struct kstat *st, + u32 request, unsigned int query) +{ + int err; + unsigned char positive; + struct path h_path; + struct dentry *dentry; + struct inode *inode; + struct super_block *sb; + + dentry = path->dentry; + inode = d_inode(dentry); + sb = dentry->d_sb; + err = si_read_lock(sb, AuLock_FLUSH | AuLock_NOPLM); + if (unlikely(err)) + goto out; + err = au_h_path_getattr(dentry, /*inode*/NULL, /*force*/0, &h_path, + /*locked*/0); + if (unlikely(err)) + goto out_si; + if (unlikely(!h_path.dentry)) + /* illegally overlapped or something */ + goto out_fill; /* pretending success */ + + positive = d_is_positive(h_path.dentry); + if (positive) + /* no vfsub version */ + err = vfs_getattr(&h_path, st, request, query); + if (!err) { + if (positive) + au_refresh_iattr(inode, st, + d_inode(h_path.dentry)->i_nlink); + goto out_fill; /* success */ + } + AuTraceErr(err); + goto out_di; + +out_fill: + generic_fillattr(inode, st); +out_di: + di_read_unlock(dentry, AuLock_IR); +out_si: + si_read_unlock(sb); +out: + AuTraceErr(err); + return err; +} + +/* ---------------------------------------------------------------------- */ + +static const char *aufs_get_link(struct dentry *dentry, struct inode *inode, + struct delayed_call *done) +{ + const char *ret; + struct dentry *h_dentry; + struct inode *h_inode; + int err; + aufs_bindex_t bindex; + + ret = NULL; /* suppress a warning */ + err = -ECHILD; + if (!dentry) + goto out; + + err = aufs_read_lock(dentry, AuLock_IR | AuLock_GEN); + if (unlikely(err)) + goto out; + + err = au_d_hashed_positive(dentry); + if (unlikely(err)) + goto out_unlock; + + err = -EINVAL; + inode = d_inode(dentry); + bindex = au_ibtop(inode); + h_inode = au_h_iptr(inode, bindex); + if (unlikely(!h_inode->i_op->get_link)) + goto out_unlock; + + err = -EBUSY; + h_dentry = NULL; + if (au_dbtop(dentry) <= bindex) { + h_dentry = au_h_dptr(dentry, bindex); + if (h_dentry) + dget(h_dentry); + } + if (!h_dentry) { + h_dentry = d_find_any_alias(h_inode); + if (IS_ERR(h_dentry)) { + err = PTR_ERR(h_dentry); + goto out_unlock; + } + } + if (unlikely(!h_dentry)) + goto out_unlock; + + err = 0; + AuDbg("%ps\n", h_inode->i_op->get_link); + AuDbgDentry(h_dentry); + ret = vfs_get_link(h_dentry, done); + dput(h_dentry); + if (IS_ERR(ret)) + err = PTR_ERR(ret); + +out_unlock: + aufs_read_unlock(dentry, AuLock_IR); +out: + if (unlikely(err)) + ret = ERR_PTR(err); + AuTraceErrPtr(ret); + return ret; +} + +/* ---------------------------------------------------------------------- */ + +static int au_is_special(struct inode *inode) +{ + return (inode->i_mode & (S_IFBLK | S_IFCHR | S_IFIFO | S_IFSOCK)); +} + +static int aufs_update_time(struct inode *inode, struct timespec64 *ts, + int flags) +{ + int err; + aufs_bindex_t bindex; + struct super_block *sb; + struct inode *h_inode; + struct vfsmount *h_mnt; + + sb = inode->i_sb; + WARN_ONCE((flags & S_ATIME) && !IS_NOATIME(inode), + "unexpected s_flags 0x%lx", sb->s_flags); + + /* mmap_sem might be acquired already, cf. aufs_mmap() */ + lockdep_off(); + si_read_lock(sb, AuLock_FLUSH); + ii_write_lock_child(inode); + + err = 0; + bindex = au_ibtop(inode); + h_inode = au_h_iptr(inode, bindex); + if (!au_test_ro(sb, bindex, inode)) { + h_mnt = au_sbr_mnt(sb, bindex); + err = vfsub_mnt_want_write(h_mnt); + if (!err) { + err = vfsub_update_time(h_inode, ts, flags); + vfsub_mnt_drop_write(h_mnt); + } + } else if (au_is_special(h_inode)) { + /* + * Never copy-up here. + * These special files may already be opened and used for + * communicating. If we copied it up, then the communication + * would be corrupted. + */ + AuWarn1("timestamps for i%lu are ignored " + "since it is on readonly branch (hi%lu).\n", + inode->i_ino, h_inode->i_ino); + } else if (flags & ~S_ATIME) { + err = -EIO; + AuIOErr1("unexpected flags 0x%x\n", flags); + AuDebugOn(1); + } + + if (!err) + au_cpup_attr_timesizes(inode); + ii_write_unlock(inode); + si_read_unlock(sb); + lockdep_on(); + + if (!err && (flags & S_VERSION)) + inode_inc_iversion(inode); + + return err; +} + +/* ---------------------------------------------------------------------- */ + +/* no getattr version will be set by module.c:aufs_init() */ +struct inode_operations aufs_iop_nogetattr[AuIop_Last], + aufs_iop[] = { + [AuIop_SYMLINK] = { + .permission = aufs_permission, +#ifdef CONFIG_FS_POSIX_ACL + .get_acl = aufs_get_acl, + .set_acl = aufs_set_acl, /* unsupport for symlink? */ +#endif + + .setattr = aufs_setattr, + .getattr = aufs_getattr, + +#ifdef CONFIG_AUFS_XATTR + .listxattr = aufs_listxattr, +#endif + + .get_link = aufs_get_link, + + /* .update_time = aufs_update_time */ + }, + [AuIop_DIR] = { + .create = aufs_create, + .lookup = aufs_lookup, + .link = aufs_link, + .unlink = aufs_unlink, + .symlink = aufs_symlink, + .mkdir = aufs_mkdir, + .rmdir = aufs_rmdir, + .mknod = aufs_mknod, + .rename = aufs_rename, + + .permission = aufs_permission, +#ifdef CONFIG_FS_POSIX_ACL + .get_acl = aufs_get_acl, + .set_acl = aufs_set_acl, +#endif + + .setattr = aufs_setattr, + .getattr = aufs_getattr, + +#ifdef CONFIG_AUFS_XATTR + .listxattr = aufs_listxattr, +#endif + + .update_time = aufs_update_time, + .atomic_open = aufs_atomic_open, + .tmpfile = aufs_tmpfile + }, + [AuIop_OTHER] = { + .permission = aufs_permission, +#ifdef CONFIG_FS_POSIX_ACL + .get_acl = aufs_get_acl, + .set_acl = aufs_set_acl, +#endif + + .setattr = aufs_setattr, + .getattr = aufs_getattr, + +#ifdef CONFIG_AUFS_XATTR + .listxattr = aufs_listxattr, +#endif + + .update_time = aufs_update_time + } +}; --- linux-azure-5.8-5.8.0.orig/fs/aufs/i_op_add.c +++ linux-azure-5.8-5.8.0/fs/aufs/i_op_add.c @@ -0,0 +1,936 @@ +// SPDX-License-Identifier: GPL-2.0 +/* + * Copyright (C) 2005-2020 Junjiro R. Okajima + * + * This program, aufs is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; either version 2 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + */ + +/* + * inode operations (add entry) + */ + +#include +#include "aufs.h" + +/* + * final procedure of adding a new entry, except link(2). + * remove whiteout, instantiate, copyup the parent dir's times and size + * and update version. + * if it failed, re-create the removed whiteout. + */ +static int epilog(struct inode *dir, aufs_bindex_t bindex, + struct dentry *wh_dentry, struct dentry *dentry) +{ + int err, rerr; + aufs_bindex_t bwh; + struct path h_path; + struct super_block *sb; + struct inode *inode, *h_dir; + struct dentry *wh; + + bwh = -1; + sb = dir->i_sb; + if (wh_dentry) { + h_dir = d_inode(wh_dentry->d_parent); /* dir inode is locked */ + IMustLock(h_dir); + AuDebugOn(au_h_iptr(dir, bindex) != h_dir); + bwh = au_dbwh(dentry); + h_path.dentry = wh_dentry; + h_path.mnt = au_sbr_mnt(sb, bindex); + err = au_wh_unlink_dentry(au_h_iptr(dir, bindex), &h_path, + dentry); + if (unlikely(err)) + goto out; + } + + inode = au_new_inode(dentry, /*must_new*/1); + if (!IS_ERR(inode)) { + d_instantiate(dentry, inode); + dir = d_inode(dentry->d_parent); /* dir inode is locked */ + IMustLock(dir); + au_dir_ts(dir, bindex); + inode_inc_iversion(dir); + au_fhsm_wrote(sb, bindex, /*force*/0); + return 0; /* success */ + } + + err = PTR_ERR(inode); + if (!wh_dentry) + goto out; + + /* revert */ + /* dir inode is locked */ + wh = au_wh_create(dentry, bwh, wh_dentry->d_parent); + rerr = PTR_ERR(wh); + if (IS_ERR(wh)) { + AuIOErr("%pd reverting whiteout failed(%d, %d)\n", + dentry, err, rerr); + err = -EIO; + } else + dput(wh); + +out: + return err; +} + +static int au_d_may_add(struct dentry *dentry) +{ + int err; + + err = 0; + if (unlikely(d_unhashed(dentry))) + err = -ENOENT; + if (unlikely(d_really_is_positive(dentry))) + err = -EEXIST; + return err; +} + +/* + * simple tests for the adding inode operations. + * following the checks in vfs, plus the parent-child relationship. + */ +int au_may_add(struct dentry *dentry, aufs_bindex_t bindex, + struct dentry *h_parent, int isdir) +{ + int err; + umode_t h_mode; + struct dentry *h_dentry; + struct inode *h_inode; + + err = -ENAMETOOLONG; + if (unlikely(dentry->d_name.len > AUFS_MAX_NAMELEN)) + goto out; + + h_dentry = au_h_dptr(dentry, bindex); + if (d_really_is_negative(dentry)) { + err = -EEXIST; + if (unlikely(d_is_positive(h_dentry))) + goto out; + } else { + /* rename(2) case */ + err = -EIO; + if (unlikely(d_is_negative(h_dentry))) + goto out; + h_inode = d_inode(h_dentry); + if (unlikely(!h_inode->i_nlink)) + goto out; + + h_mode = h_inode->i_mode; + if (!isdir) { + err = -EISDIR; + if (unlikely(S_ISDIR(h_mode))) + goto out; + } else if (unlikely(!S_ISDIR(h_mode))) { + err = -ENOTDIR; + goto out; + } + } + + err = 0; + /* expected parent dir is locked */ + if (unlikely(h_parent != h_dentry->d_parent)) + err = -EIO; + +out: + AuTraceErr(err); + return err; +} + +/* + * initial procedure of adding a new entry. + * prepare writable branch and the parent dir, lock it, + * and lookup whiteout for the new entry. + */ +static struct dentry* +lock_hdir_lkup_wh(struct dentry *dentry, struct au_dtime *dt, + struct dentry *src_dentry, struct au_pin *pin, + struct au_wr_dir_args *wr_dir_args) +{ + struct dentry *wh_dentry, *h_parent; + struct super_block *sb; + struct au_branch *br; + int err; + unsigned int udba; + aufs_bindex_t bcpup; + + AuDbg("%pd\n", dentry); + + err = au_wr_dir(dentry, src_dentry, wr_dir_args); + bcpup = err; + wh_dentry = ERR_PTR(err); + if (unlikely(err < 0)) + goto out; + + sb = dentry->d_sb; + udba = au_opt_udba(sb); + err = au_pin(pin, dentry, bcpup, udba, + AuPin_DI_LOCKED | AuPin_MNT_WRITE); + wh_dentry = ERR_PTR(err); + if (unlikely(err)) + goto out; + + h_parent = au_pinned_h_parent(pin); + if (udba != AuOpt_UDBA_NONE + && au_dbtop(dentry) == bcpup) + err = au_may_add(dentry, bcpup, h_parent, + au_ftest_wrdir(wr_dir_args->flags, ISDIR)); + else if (unlikely(dentry->d_name.len > AUFS_MAX_NAMELEN)) + err = -ENAMETOOLONG; + wh_dentry = ERR_PTR(err); + if (unlikely(err)) + goto out_unpin; + + br = au_sbr(sb, bcpup); + if (dt) { + struct path tmp = { + .dentry = h_parent, + .mnt = au_br_mnt(br) + }; + au_dtime_store(dt, au_pinned_parent(pin), &tmp); + } + + wh_dentry = NULL; + if (bcpup != au_dbwh(dentry)) + goto out; /* success */ + + /* + * ENAMETOOLONG here means that if we allowed create such name, then it + * would not be able to removed in the future. So we don't allow such + * name here and we don't handle ENAMETOOLONG differently here. + */ + wh_dentry = au_wh_lkup(h_parent, &dentry->d_name, br); + +out_unpin: + if (IS_ERR(wh_dentry)) + au_unpin(pin); +out: + return wh_dentry; +} + +/* ---------------------------------------------------------------------- */ + +enum { Mknod, Symlink, Creat }; +struct simple_arg { + int type; + union { + struct { + umode_t mode; + bool want_excl; + bool try_aopen; + struct vfsub_aopen_args *aopen; + } c; + struct { + const char *symname; + } s; + struct { + umode_t mode; + dev_t dev; + } m; + } u; +}; + +static int add_simple(struct inode *dir, struct dentry *dentry, + struct simple_arg *arg) +{ + int err, rerr; + aufs_bindex_t btop; + unsigned char created; + const unsigned char try_aopen + = (arg->type == Creat && arg->u.c.try_aopen); + struct vfsub_aopen_args *aopen = arg->u.c.aopen; + struct dentry *wh_dentry, *parent; + struct inode *h_dir; + struct super_block *sb; + struct au_branch *br; + /* to reduce stack size */ + struct { + struct au_dtime dt; + struct au_pin pin; + struct path h_path; + struct au_wr_dir_args wr_dir_args; + } *a; + + AuDbg("%pd\n", dentry); + IMustLock(dir); + + err = -ENOMEM; + a = kmalloc(sizeof(*a), GFP_NOFS); + if (unlikely(!a)) + goto out; + a->wr_dir_args.force_btgt = -1; + a->wr_dir_args.flags = AuWrDir_ADD_ENTRY; + + parent = dentry->d_parent; /* dir inode is locked */ + if (!try_aopen) { + err = aufs_read_lock(dentry, AuLock_DW | AuLock_GEN); + if (unlikely(err)) + goto out_free; + } + err = au_d_may_add(dentry); + if (unlikely(err)) + goto out_unlock; + if (!try_aopen) + di_write_lock_parent(parent); + wh_dentry = lock_hdir_lkup_wh(dentry, &a->dt, /*src_dentry*/NULL, + &a->pin, &a->wr_dir_args); + err = PTR_ERR(wh_dentry); + if (IS_ERR(wh_dentry)) + goto out_parent; + + btop = au_dbtop(dentry); + sb = dentry->d_sb; + br = au_sbr(sb, btop); + a->h_path.dentry = au_h_dptr(dentry, btop); + a->h_path.mnt = au_br_mnt(br); + h_dir = au_pinned_h_dir(&a->pin); + switch (arg->type) { + case Creat: + if (!try_aopen || !h_dir->i_op->atomic_open) { + err = vfsub_create(h_dir, &a->h_path, arg->u.c.mode, + arg->u.c.want_excl); + created = !err; + if (!err && try_aopen) + aopen->file->f_mode |= FMODE_CREATED; + } else { + aopen->br = br; + err = vfsub_atomic_open(h_dir, a->h_path.dentry, aopen); + AuDbg("err %d\n", err); + AuDbgFile(aopen->file); + created = err >= 0 + && !!(aopen->file->f_mode & FMODE_CREATED); + } + break; + case Symlink: + err = vfsub_symlink(h_dir, &a->h_path, arg->u.s.symname); + created = !err; + break; + case Mknod: + err = vfsub_mknod(h_dir, &a->h_path, arg->u.m.mode, + arg->u.m.dev); + created = !err; + break; + default: + BUG(); + } + if (unlikely(err < 0)) + goto out_unpin; + + err = epilog(dir, btop, wh_dentry, dentry); + if (!err) + goto out_unpin; /* success */ + + /* revert */ + if (created /* && d_is_positive(a->h_path.dentry) */) { + /* no delegation since it is just created */ + rerr = vfsub_unlink(h_dir, &a->h_path, /*delegated*/NULL, + /*force*/0); + if (rerr) { + AuIOErr("%pd revert failure(%d, %d)\n", + dentry, err, rerr); + err = -EIO; + } + au_dtime_revert(&a->dt); + } + if (try_aopen && h_dir->i_op->atomic_open + && (aopen->file->f_mode & FMODE_OPENED)) + /* aopen->file is still opened */ + au_lcnt_dec(&aopen->br->br_nfiles); + +out_unpin: + au_unpin(&a->pin); + dput(wh_dentry); +out_parent: + if (!try_aopen) + di_write_unlock(parent); +out_unlock: + if (unlikely(err)) { + au_update_dbtop(dentry); + d_drop(dentry); + } + if (!try_aopen) + aufs_read_unlock(dentry, AuLock_DW); +out_free: + au_kfree_rcu(a); +out: + return err; +} + +int aufs_mknod(struct inode *dir, struct dentry *dentry, umode_t mode, + dev_t dev) +{ + struct simple_arg arg = { + .type = Mknod, + .u.m = { + .mode = mode, + .dev = dev + } + }; + return add_simple(dir, dentry, &arg); +} + +int aufs_symlink(struct inode *dir, struct dentry *dentry, const char *symname) +{ + struct simple_arg arg = { + .type = Symlink, + .u.s.symname = symname + }; + return add_simple(dir, dentry, &arg); +} + +int aufs_create(struct inode *dir, struct dentry *dentry, umode_t mode, + bool want_excl) +{ + struct simple_arg arg = { + .type = Creat, + .u.c = { + .mode = mode, + .want_excl = want_excl + } + }; + return add_simple(dir, dentry, &arg); +} + +int au_aopen_or_create(struct inode *dir, struct dentry *dentry, + struct vfsub_aopen_args *aopen_args) +{ + struct simple_arg arg = { + .type = Creat, + .u.c = { + .mode = aopen_args->create_mode, + .want_excl = aopen_args->open_flag & O_EXCL, + .try_aopen = true, + .aopen = aopen_args + } + }; + return add_simple(dir, dentry, &arg); +} + +int aufs_tmpfile(struct inode *dir, struct dentry *dentry, umode_t mode) +{ + int err; + aufs_bindex_t bindex; + struct super_block *sb; + struct dentry *parent, *h_parent, *h_dentry; + struct inode *h_dir, *inode; + struct vfsmount *h_mnt; + struct au_wr_dir_args wr_dir_args = { + .force_btgt = -1, + .flags = AuWrDir_TMPFILE + }; + + /* copy-up may happen */ + inode_lock(dir); + + sb = dir->i_sb; + err = si_read_lock(sb, AuLock_FLUSH | AuLock_NOPLM); + if (unlikely(err)) + goto out; + + err = au_di_init(dentry); + if (unlikely(err)) + goto out_si; + + err = -EBUSY; + parent = d_find_any_alias(dir); + AuDebugOn(!parent); + di_write_lock_parent(parent); + if (unlikely(d_inode(parent) != dir)) + goto out_parent; + + err = au_digen_test(parent, au_sigen(sb)); + if (unlikely(err)) + goto out_parent; + + bindex = au_dbtop(parent); + au_set_dbtop(dentry, bindex); + au_set_dbbot(dentry, bindex); + err = au_wr_dir(dentry, /*src_dentry*/NULL, &wr_dir_args); + bindex = err; + if (unlikely(err < 0)) + goto out_parent; + + err = -EOPNOTSUPP; + h_dir = au_h_iptr(dir, bindex); + if (unlikely(!h_dir->i_op->tmpfile)) + goto out_parent; + + h_mnt = au_sbr_mnt(sb, bindex); + err = vfsub_mnt_want_write(h_mnt); + if (unlikely(err)) + goto out_parent; + + h_parent = au_h_dptr(parent, bindex); + h_dentry = vfs_tmpfile(h_parent, mode, /*open_flag*/0); + if (IS_ERR(h_dentry)) { + err = PTR_ERR(h_dentry); + goto out_mnt; + } + + au_set_dbtop(dentry, bindex); + au_set_dbbot(dentry, bindex); + au_set_h_dptr(dentry, bindex, dget(h_dentry)); + inode = au_new_inode(dentry, /*must_new*/1); + if (IS_ERR(inode)) { + err = PTR_ERR(inode); + au_set_h_dptr(dentry, bindex, NULL); + au_set_dbtop(dentry, -1); + au_set_dbbot(dentry, -1); + } else { + if (!inode->i_nlink) + set_nlink(inode, 1); + d_tmpfile(dentry, inode); + au_di(dentry)->di_tmpfile = 1; + + /* update without i_mutex */ + if (au_ibtop(dir) == au_dbtop(dentry)) + au_cpup_attr_timesizes(dir); + } + dput(h_dentry); + +out_mnt: + vfsub_mnt_drop_write(h_mnt); +out_parent: + di_write_unlock(parent); + dput(parent); + di_write_unlock(dentry); + if (unlikely(err)) { + au_di_fin(dentry); + dentry->d_fsdata = NULL; + } +out_si: + si_read_unlock(sb); +out: + inode_unlock(dir); + return err; +} + +/* ---------------------------------------------------------------------- */ + +struct au_link_args { + aufs_bindex_t bdst, bsrc; + struct au_pin pin; + struct path h_path; + struct dentry *src_parent, *parent; +}; + +static int au_cpup_before_link(struct dentry *src_dentry, + struct au_link_args *a) +{ + int err; + struct dentry *h_src_dentry; + struct au_cp_generic cpg = { + .dentry = src_dentry, + .bdst = a->bdst, + .bsrc = a->bsrc, + .len = -1, + .pin = &a->pin, + .flags = AuCpup_DTIME | AuCpup_HOPEN /* | AuCpup_KEEPLINO */ + }; + + di_read_lock_parent(a->src_parent, AuLock_IR); + err = au_test_and_cpup_dirs(src_dentry, a->bdst); + if (unlikely(err)) + goto out; + + h_src_dentry = au_h_dptr(src_dentry, a->bsrc); + err = au_pin(&a->pin, src_dentry, a->bdst, + au_opt_udba(src_dentry->d_sb), + AuPin_DI_LOCKED | AuPin_MNT_WRITE); + if (unlikely(err)) + goto out; + + err = au_sio_cpup_simple(&cpg); + au_unpin(&a->pin); + +out: + di_read_unlock(a->src_parent, AuLock_IR); + return err; +} + +static int au_cpup_or_link(struct dentry *src_dentry, struct dentry *dentry, + struct au_link_args *a) +{ + int err; + unsigned char plink; + aufs_bindex_t bbot; + struct dentry *h_src_dentry; + struct inode *h_inode, *inode, *delegated; + struct super_block *sb; + struct file *h_file; + + plink = 0; + h_inode = NULL; + sb = src_dentry->d_sb; + inode = d_inode(src_dentry); + if (au_ibtop(inode) <= a->bdst) + h_inode = au_h_iptr(inode, a->bdst); + if (!h_inode || !h_inode->i_nlink) { + /* copyup src_dentry as the name of dentry. */ + bbot = au_dbbot(dentry); + if (bbot < a->bsrc) + au_set_dbbot(dentry, a->bsrc); + au_set_h_dptr(dentry, a->bsrc, + dget(au_h_dptr(src_dentry, a->bsrc))); + dget(a->h_path.dentry); + au_set_h_dptr(dentry, a->bdst, NULL); + AuDbg("temporary d_inode...\n"); + spin_lock(&dentry->d_lock); + dentry->d_inode = d_inode(src_dentry); /* tmp */ + spin_unlock(&dentry->d_lock); + h_file = au_h_open_pre(dentry, a->bsrc, /*force_wr*/0); + if (IS_ERR(h_file)) + err = PTR_ERR(h_file); + else { + struct au_cp_generic cpg = { + .dentry = dentry, + .bdst = a->bdst, + .bsrc = -1, + .len = -1, + .pin = &a->pin, + .flags = AuCpup_KEEPLINO + }; + err = au_sio_cpup_simple(&cpg); + au_h_open_post(dentry, a->bsrc, h_file); + if (!err) { + dput(a->h_path.dentry); + a->h_path.dentry = au_h_dptr(dentry, a->bdst); + } else + au_set_h_dptr(dentry, a->bdst, + a->h_path.dentry); + } + spin_lock(&dentry->d_lock); + dentry->d_inode = NULL; /* restore */ + spin_unlock(&dentry->d_lock); + AuDbg("temporary d_inode...done\n"); + au_set_h_dptr(dentry, a->bsrc, NULL); + au_set_dbbot(dentry, bbot); + } else { + /* the inode of src_dentry already exists on a.bdst branch */ + h_src_dentry = d_find_alias(h_inode); + if (!h_src_dentry && au_plink_test(inode)) { + plink = 1; + h_src_dentry = au_plink_lkup(inode, a->bdst); + err = PTR_ERR(h_src_dentry); + if (IS_ERR(h_src_dentry)) + goto out; + + if (unlikely(d_is_negative(h_src_dentry))) { + dput(h_src_dentry); + h_src_dentry = NULL; + } + + } + if (h_src_dentry) { + delegated = NULL; + err = vfsub_link(h_src_dentry, au_pinned_h_dir(&a->pin), + &a->h_path, &delegated); + if (unlikely(err == -EWOULDBLOCK)) { + pr_warn("cannot retry for NFSv4 delegation" + " for an internal link\n"); + iput(delegated); + } + dput(h_src_dentry); + } else { + AuIOErr("no dentry found for hi%lu on b%d\n", + h_inode->i_ino, a->bdst); + err = -EIO; + } + } + + if (!err && !plink) + au_plink_append(inode, a->bdst, a->h_path.dentry); + +out: + AuTraceErr(err); + return err; +} + +int aufs_link(struct dentry *src_dentry, struct inode *dir, + struct dentry *dentry) +{ + int err, rerr; + struct au_dtime dt; + struct au_link_args *a; + struct dentry *wh_dentry, *h_src_dentry; + struct inode *inode, *delegated; + struct super_block *sb; + struct au_wr_dir_args wr_dir_args = { + /* .force_btgt = -1, */ + .flags = AuWrDir_ADD_ENTRY + }; + + IMustLock(dir); + inode = d_inode(src_dentry); + IMustLock(inode); + + err = -ENOMEM; + a = kzalloc(sizeof(*a), GFP_NOFS); + if (unlikely(!a)) + goto out; + + a->parent = dentry->d_parent; /* dir inode is locked */ + err = aufs_read_and_write_lock2(dentry, src_dentry, + AuLock_NOPLM | AuLock_GEN); + if (unlikely(err)) + goto out_kfree; + err = au_d_linkable(src_dentry); + if (unlikely(err)) + goto out_unlock; + err = au_d_may_add(dentry); + if (unlikely(err)) + goto out_unlock; + + a->src_parent = dget_parent(src_dentry); + wr_dir_args.force_btgt = au_ibtop(inode); + + di_write_lock_parent(a->parent); + wr_dir_args.force_btgt = au_wbr(dentry, wr_dir_args.force_btgt); + wh_dentry = lock_hdir_lkup_wh(dentry, &dt, src_dentry, &a->pin, + &wr_dir_args); + err = PTR_ERR(wh_dentry); + if (IS_ERR(wh_dentry)) + goto out_parent; + + err = 0; + sb = dentry->d_sb; + a->bdst = au_dbtop(dentry); + a->h_path.dentry = au_h_dptr(dentry, a->bdst); + a->h_path.mnt = au_sbr_mnt(sb, a->bdst); + a->bsrc = au_ibtop(inode); + h_src_dentry = au_h_d_alias(src_dentry, a->bsrc); + if (!h_src_dentry && au_di(src_dentry)->di_tmpfile) + h_src_dentry = dget(au_hi_wh(inode, a->bsrc)); + if (!h_src_dentry) { + a->bsrc = au_dbtop(src_dentry); + h_src_dentry = au_h_d_alias(src_dentry, a->bsrc); + AuDebugOn(!h_src_dentry); + } else if (IS_ERR(h_src_dentry)) { + err = PTR_ERR(h_src_dentry); + goto out_parent; + } + + /* + * aufs doesn't touch the credential so + * security_dentry_create_files_as() is unnecessary. + */ + if (au_opt_test(au_mntflags(sb), PLINK)) { + if (a->bdst < a->bsrc + /* && h_src_dentry->d_sb != a->h_path.dentry->d_sb */) + err = au_cpup_or_link(src_dentry, dentry, a); + else { + delegated = NULL; + err = vfsub_link(h_src_dentry, au_pinned_h_dir(&a->pin), + &a->h_path, &delegated); + if (unlikely(err == -EWOULDBLOCK)) { + pr_warn("cannot retry for NFSv4 delegation" + " for an internal link\n"); + iput(delegated); + } + } + dput(h_src_dentry); + } else { + /* + * copyup src_dentry to the branch we process, + * and then link(2) to it. + */ + dput(h_src_dentry); + if (a->bdst < a->bsrc + /* && h_src_dentry->d_sb != a->h_path.dentry->d_sb */) { + au_unpin(&a->pin); + di_write_unlock(a->parent); + err = au_cpup_before_link(src_dentry, a); + di_write_lock_parent(a->parent); + if (!err) + err = au_pin(&a->pin, dentry, a->bdst, + au_opt_udba(sb), + AuPin_DI_LOCKED | AuPin_MNT_WRITE); + if (unlikely(err)) + goto out_wh; + } + if (!err) { + h_src_dentry = au_h_dptr(src_dentry, a->bdst); + err = -ENOENT; + if (h_src_dentry && d_is_positive(h_src_dentry)) { + delegated = NULL; + err = vfsub_link(h_src_dentry, + au_pinned_h_dir(&a->pin), + &a->h_path, &delegated); + if (unlikely(err == -EWOULDBLOCK)) { + pr_warn("cannot retry" + " for NFSv4 delegation" + " for an internal link\n"); + iput(delegated); + } + } + } + } + if (unlikely(err)) + goto out_unpin; + + if (wh_dentry) { + a->h_path.dentry = wh_dentry; + err = au_wh_unlink_dentry(au_pinned_h_dir(&a->pin), &a->h_path, + dentry); + if (unlikely(err)) + goto out_revert; + } + + au_dir_ts(dir, a->bdst); + inode_inc_iversion(dir); + inc_nlink(inode); + inode->i_ctime = dir->i_ctime; + d_instantiate(dentry, au_igrab(inode)); + if (d_unhashed(a->h_path.dentry)) + /* some filesystem calls d_drop() */ + d_drop(dentry); + /* some filesystems consume an inode even hardlink */ + au_fhsm_wrote(sb, a->bdst, /*force*/0); + goto out_unpin; /* success */ + +out_revert: + /* no delegation since it is just created */ + rerr = vfsub_unlink(au_pinned_h_dir(&a->pin), &a->h_path, + /*delegated*/NULL, /*force*/0); + if (unlikely(rerr)) { + AuIOErr("%pd reverting failed(%d, %d)\n", dentry, err, rerr); + err = -EIO; + } + au_dtime_revert(&dt); +out_unpin: + au_unpin(&a->pin); +out_wh: + dput(wh_dentry); +out_parent: + di_write_unlock(a->parent); + dput(a->src_parent); +out_unlock: + if (unlikely(err)) { + au_update_dbtop(dentry); + d_drop(dentry); + } + aufs_read_and_write_unlock2(dentry, src_dentry); +out_kfree: + au_kfree_rcu(a); +out: + AuTraceErr(err); + return err; +} + +int aufs_mkdir(struct inode *dir, struct dentry *dentry, umode_t mode) +{ + int err, rerr; + aufs_bindex_t bindex; + unsigned char diropq; + struct path h_path; + struct dentry *wh_dentry, *parent, *opq_dentry; + struct inode *h_inode; + struct super_block *sb; + struct { + struct au_pin pin; + struct au_dtime dt; + } *a; /* reduce the stack usage */ + struct au_wr_dir_args wr_dir_args = { + .force_btgt = -1, + .flags = AuWrDir_ADD_ENTRY | AuWrDir_ISDIR + }; + + IMustLock(dir); + + err = -ENOMEM; + a = kmalloc(sizeof(*a), GFP_NOFS); + if (unlikely(!a)) + goto out; + + err = aufs_read_lock(dentry, AuLock_DW | AuLock_GEN); + if (unlikely(err)) + goto out_free; + err = au_d_may_add(dentry); + if (unlikely(err)) + goto out_unlock; + + parent = dentry->d_parent; /* dir inode is locked */ + di_write_lock_parent(parent); + wh_dentry = lock_hdir_lkup_wh(dentry, &a->dt, /*src_dentry*/NULL, + &a->pin, &wr_dir_args); + err = PTR_ERR(wh_dentry); + if (IS_ERR(wh_dentry)) + goto out_parent; + + sb = dentry->d_sb; + bindex = au_dbtop(dentry); + h_path.dentry = au_h_dptr(dentry, bindex); + h_path.mnt = au_sbr_mnt(sb, bindex); + err = vfsub_mkdir(au_pinned_h_dir(&a->pin), &h_path, mode); + if (unlikely(err)) + goto out_unpin; + + /* make the dir opaque */ + diropq = 0; + h_inode = d_inode(h_path.dentry); + if (wh_dentry + || au_opt_test(au_mntflags(sb), ALWAYS_DIROPQ)) { + inode_lock_nested(h_inode, AuLsc_I_CHILD); + opq_dentry = au_diropq_create(dentry, bindex); + inode_unlock(h_inode); + err = PTR_ERR(opq_dentry); + if (IS_ERR(opq_dentry)) + goto out_dir; + dput(opq_dentry); + diropq = 1; + } + + err = epilog(dir, bindex, wh_dentry, dentry); + if (!err) { + inc_nlink(dir); + goto out_unpin; /* success */ + } + + /* revert */ + if (diropq) { + AuLabel(revert opq); + inode_lock_nested(h_inode, AuLsc_I_CHILD); + rerr = au_diropq_remove(dentry, bindex); + inode_unlock(h_inode); + if (rerr) { + AuIOErr("%pd reverting diropq failed(%d, %d)\n", + dentry, err, rerr); + err = -EIO; + } + } + +out_dir: + AuLabel(revert dir); + rerr = vfsub_rmdir(au_pinned_h_dir(&a->pin), &h_path); + if (rerr) { + AuIOErr("%pd reverting dir failed(%d, %d)\n", + dentry, err, rerr); + err = -EIO; + } + au_dtime_revert(&a->dt); +out_unpin: + au_unpin(&a->pin); + dput(wh_dentry); +out_parent: + di_write_unlock(parent); +out_unlock: + if (unlikely(err)) { + au_update_dbtop(dentry); + d_drop(dentry); + } + aufs_read_unlock(dentry, AuLock_DW); +out_free: + au_kfree_rcu(a); +out: + return err; +} --- linux-azure-5.8-5.8.0.orig/fs/aufs/i_op_del.c +++ linux-azure-5.8-5.8.0/fs/aufs/i_op_del.c @@ -0,0 +1,513 @@ +// SPDX-License-Identifier: GPL-2.0 +/* + * Copyright (C) 2005-2020 Junjiro R. Okajima + * + * This program, aufs is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; either version 2 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + */ + +/* + * inode operations (del entry) + */ + +#include +#include "aufs.h" + +/* + * decide if a new whiteout for @dentry is necessary or not. + * when it is necessary, prepare the parent dir for the upper branch whose + * branch index is @bcpup for creation. the actual creation of the whiteout will + * be done by caller. + * return value: + * 0: wh is unnecessary + * plus: wh is necessary + * minus: error + */ +int au_wr_dir_need_wh(struct dentry *dentry, int isdir, aufs_bindex_t *bcpup) +{ + int need_wh, err; + aufs_bindex_t btop; + struct super_block *sb; + + sb = dentry->d_sb; + btop = au_dbtop(dentry); + if (*bcpup < 0) { + *bcpup = btop; + if (au_test_ro(sb, btop, d_inode(dentry))) { + err = AuWbrCopyup(au_sbi(sb), dentry); + *bcpup = err; + if (unlikely(err < 0)) + goto out; + } + } else + AuDebugOn(btop < *bcpup + || au_test_ro(sb, *bcpup, d_inode(dentry))); + AuDbg("bcpup %d, btop %d\n", *bcpup, btop); + + if (*bcpup != btop) { + err = au_cpup_dirs(dentry, *bcpup); + if (unlikely(err)) + goto out; + need_wh = 1; + } else { + struct au_dinfo *dinfo, *tmp; + + need_wh = -ENOMEM; + dinfo = au_di(dentry); + tmp = au_di_alloc(sb, AuLsc_DI_TMP); + if (tmp) { + au_di_cp(tmp, dinfo); + au_di_swap(tmp, dinfo); + /* returns the number of positive dentries */ + need_wh = au_lkup_dentry(dentry, btop + 1, + /* AuLkup_IGNORE_PERM */ 0); + au_di_swap(tmp, dinfo); + au_rw_write_unlock(&tmp->di_rwsem); + au_di_free(tmp); + } + } + AuDbg("need_wh %d\n", need_wh); + err = need_wh; + +out: + return err; +} + +/* + * simple tests for the del-entry operations. + * following the checks in vfs, plus the parent-child relationship. + */ +int au_may_del(struct dentry *dentry, aufs_bindex_t bindex, + struct dentry *h_parent, int isdir) +{ + int err; + umode_t h_mode; + struct dentry *h_dentry, *h_latest; + struct inode *h_inode; + + h_dentry = au_h_dptr(dentry, bindex); + if (d_really_is_positive(dentry)) { + err = -ENOENT; + if (unlikely(d_is_negative(h_dentry))) + goto out; + h_inode = d_inode(h_dentry); + if (unlikely(!h_inode->i_nlink)) + goto out; + + h_mode = h_inode->i_mode; + if (!isdir) { + err = -EISDIR; + if (unlikely(S_ISDIR(h_mode))) + goto out; + } else if (unlikely(!S_ISDIR(h_mode))) { + err = -ENOTDIR; + goto out; + } + } else { + /* rename(2) case */ + err = -EIO; + if (unlikely(d_is_positive(h_dentry))) + goto out; + } + + err = -ENOENT; + /* expected parent dir is locked */ + if (unlikely(h_parent != h_dentry->d_parent)) + goto out; + err = 0; + + /* + * rmdir a dir may break the consistency on some filesystem. + * let's try heavy test. + */ + err = -EACCES; + if (unlikely(!au_opt_test(au_mntflags(dentry->d_sb), DIRPERM1) + && au_test_h_perm(d_inode(h_parent), + MAY_EXEC | MAY_WRITE))) + goto out; + + h_latest = au_sio_lkup_one(&dentry->d_name, h_parent); + err = -EIO; + if (IS_ERR(h_latest)) + goto out; + if (h_latest == h_dentry) + err = 0; + dput(h_latest); + +out: + return err; +} + +/* + * decide the branch where we operate for @dentry. the branch index will be set + * @rbcpup. after deciding it, 'pin' it and store the timestamps of the parent + * dir for reverting. + * when a new whiteout is necessary, create it. + */ +static struct dentry* +lock_hdir_create_wh(struct dentry *dentry, int isdir, aufs_bindex_t *rbcpup, + struct au_dtime *dt, struct au_pin *pin) +{ + struct dentry *wh_dentry; + struct super_block *sb; + struct path h_path; + int err, need_wh; + unsigned int udba; + aufs_bindex_t bcpup; + + need_wh = au_wr_dir_need_wh(dentry, isdir, rbcpup); + wh_dentry = ERR_PTR(need_wh); + if (unlikely(need_wh < 0)) + goto out; + + sb = dentry->d_sb; + udba = au_opt_udba(sb); + bcpup = *rbcpup; + err = au_pin(pin, dentry, bcpup, udba, + AuPin_DI_LOCKED | AuPin_MNT_WRITE); + wh_dentry = ERR_PTR(err); + if (unlikely(err)) + goto out; + + h_path.dentry = au_pinned_h_parent(pin); + if (udba != AuOpt_UDBA_NONE + && au_dbtop(dentry) == bcpup) { + err = au_may_del(dentry, bcpup, h_path.dentry, isdir); + wh_dentry = ERR_PTR(err); + if (unlikely(err)) + goto out_unpin; + } + + h_path.mnt = au_sbr_mnt(sb, bcpup); + au_dtime_store(dt, au_pinned_parent(pin), &h_path); + wh_dentry = NULL; + if (!need_wh) + goto out; /* success, no need to create whiteout */ + + wh_dentry = au_wh_create(dentry, bcpup, h_path.dentry); + if (IS_ERR(wh_dentry)) + goto out_unpin; + + /* returns with the parent is locked and wh_dentry is dget-ed */ + goto out; /* success */ + +out_unpin: + au_unpin(pin); +out: + return wh_dentry; +} + +/* + * when removing a dir, rename it to a unique temporary whiteout-ed name first + * in order to be revertible and save time for removing many child whiteouts + * under the dir. + * returns 1 when there are too many child whiteout and caller should remove + * them asynchronously. returns 0 when the number of children is enough small to + * remove now or the branch fs is a remote fs. + * otherwise return an error. + */ +static int renwh_and_rmdir(struct dentry *dentry, aufs_bindex_t bindex, + struct au_nhash *whlist, struct inode *dir) +{ + int rmdir_later, err, dirwh; + struct dentry *h_dentry; + struct super_block *sb; + struct inode *inode; + + sb = dentry->d_sb; + SiMustAnyLock(sb); + h_dentry = au_h_dptr(dentry, bindex); + err = au_whtmp_ren(h_dentry, au_sbr(sb, bindex)); + if (unlikely(err)) + goto out; + + /* stop monitoring */ + inode = d_inode(dentry); + au_hn_free(au_hi(inode, bindex)); + + if (!au_test_fs_remote(h_dentry->d_sb)) { + dirwh = au_sbi(sb)->si_dirwh; + rmdir_later = (dirwh <= 1); + if (!rmdir_later) + rmdir_later = au_nhash_test_longer_wh(whlist, bindex, + dirwh); + if (rmdir_later) + return rmdir_later; + } + + err = au_whtmp_rmdir(dir, bindex, h_dentry, whlist); + if (unlikely(err)) { + AuIOErr("rmdir %pd, b%d failed, %d. ignored\n", + h_dentry, bindex, err); + err = 0; + } + +out: + AuTraceErr(err); + return err; +} + +/* + * final procedure for deleting a entry. + * maintain dentry and iattr. + */ +static void epilog(struct inode *dir, struct dentry *dentry, + aufs_bindex_t bindex) +{ + struct inode *inode; + + inode = d_inode(dentry); + d_drop(dentry); + inode->i_ctime = dir->i_ctime; + + au_dir_ts(dir, bindex); + inode_inc_iversion(dir); +} + +/* + * when an error happened, remove the created whiteout and revert everything. + */ +static int do_revert(int err, struct inode *dir, aufs_bindex_t bindex, + aufs_bindex_t bwh, struct dentry *wh_dentry, + struct dentry *dentry, struct au_dtime *dt) +{ + int rerr; + struct path h_path = { + .dentry = wh_dentry, + .mnt = au_sbr_mnt(dir->i_sb, bindex) + }; + + rerr = au_wh_unlink_dentry(au_h_iptr(dir, bindex), &h_path, dentry); + if (!rerr) { + au_set_dbwh(dentry, bwh); + au_dtime_revert(dt); + return 0; + } + + AuIOErr("%pd reverting whiteout failed(%d, %d)\n", dentry, err, rerr); + return -EIO; +} + +/* ---------------------------------------------------------------------- */ + +int aufs_unlink(struct inode *dir, struct dentry *dentry) +{ + int err; + aufs_bindex_t bwh, bindex, btop; + struct inode *inode, *h_dir, *delegated; + struct dentry *parent, *wh_dentry; + /* to reduce stack size */ + struct { + struct au_dtime dt; + struct au_pin pin; + struct path h_path; + } *a; + + IMustLock(dir); + + err = -ENOMEM; + a = kmalloc(sizeof(*a), GFP_NOFS); + if (unlikely(!a)) + goto out; + + err = aufs_read_lock(dentry, AuLock_DW | AuLock_GEN); + if (unlikely(err)) + goto out_free; + err = au_d_hashed_positive(dentry); + if (unlikely(err)) + goto out_unlock; + inode = d_inode(dentry); + IMustLock(inode); + err = -EISDIR; + if (unlikely(d_is_dir(dentry))) + goto out_unlock; /* possible? */ + + btop = au_dbtop(dentry); + bwh = au_dbwh(dentry); + bindex = -1; + parent = dentry->d_parent; /* dir inode is locked */ + di_write_lock_parent(parent); + wh_dentry = lock_hdir_create_wh(dentry, /*isdir*/0, &bindex, &a->dt, + &a->pin); + err = PTR_ERR(wh_dentry); + if (IS_ERR(wh_dentry)) + goto out_parent; + + a->h_path.mnt = au_sbr_mnt(dentry->d_sb, btop); + a->h_path.dentry = au_h_dptr(dentry, btop); + dget(a->h_path.dentry); + if (bindex == btop) { + h_dir = au_pinned_h_dir(&a->pin); + delegated = NULL; + err = vfsub_unlink(h_dir, &a->h_path, &delegated, /*force*/0); + if (unlikely(err == -EWOULDBLOCK)) { + pr_warn("cannot retry for NFSv4 delegation" + " for an internal unlink\n"); + iput(delegated); + } + } else { + /* dir inode is locked */ + h_dir = d_inode(wh_dentry->d_parent); + IMustLock(h_dir); + err = 0; + } + + if (!err) { + vfsub_drop_nlink(inode); + epilog(dir, dentry, bindex); + + /* update target timestamps */ + if (bindex == btop) { + vfsub_update_h_iattr(&a->h_path, /*did*/NULL); + /*ignore*/ + inode->i_ctime = d_inode(a->h_path.dentry)->i_ctime; + } else + /* todo: this timestamp may be reverted later */ + inode->i_ctime = h_dir->i_ctime; + goto out_unpin; /* success */ + } + + /* revert */ + if (wh_dentry) { + int rerr; + + rerr = do_revert(err, dir, bindex, bwh, wh_dentry, dentry, + &a->dt); + if (rerr) + err = rerr; + } + +out_unpin: + au_unpin(&a->pin); + dput(wh_dentry); + dput(a->h_path.dentry); +out_parent: + di_write_unlock(parent); +out_unlock: + aufs_read_unlock(dentry, AuLock_DW); +out_free: + au_kfree_rcu(a); +out: + return err; +} + +int aufs_rmdir(struct inode *dir, struct dentry *dentry) +{ + int err, rmdir_later; + aufs_bindex_t bwh, bindex, btop; + struct inode *inode; + struct dentry *parent, *wh_dentry, *h_dentry; + struct au_whtmp_rmdir *args; + /* to reduce stack size */ + struct { + struct au_dtime dt; + struct au_pin pin; + } *a; + + IMustLock(dir); + + err = -ENOMEM; + a = kmalloc(sizeof(*a), GFP_NOFS); + if (unlikely(!a)) + goto out; + + err = aufs_read_lock(dentry, AuLock_DW | AuLock_FLUSH | AuLock_GEN); + if (unlikely(err)) + goto out_free; + err = au_alive_dir(dentry); + if (unlikely(err)) + goto out_unlock; + inode = d_inode(dentry); + IMustLock(inode); + err = -ENOTDIR; + if (unlikely(!d_is_dir(dentry))) + goto out_unlock; /* possible? */ + + err = -ENOMEM; + args = au_whtmp_rmdir_alloc(dir->i_sb, GFP_NOFS); + if (unlikely(!args)) + goto out_unlock; + + parent = dentry->d_parent; /* dir inode is locked */ + di_write_lock_parent(parent); + err = au_test_empty(dentry, &args->whlist); + if (unlikely(err)) + goto out_parent; + + btop = au_dbtop(dentry); + bwh = au_dbwh(dentry); + bindex = -1; + wh_dentry = lock_hdir_create_wh(dentry, /*isdir*/1, &bindex, &a->dt, + &a->pin); + err = PTR_ERR(wh_dentry); + if (IS_ERR(wh_dentry)) + goto out_parent; + + h_dentry = au_h_dptr(dentry, btop); + dget(h_dentry); + rmdir_later = 0; + if (bindex == btop) { + err = renwh_and_rmdir(dentry, btop, &args->whlist, dir); + if (err > 0) { + rmdir_later = err; + err = 0; + } + } else { + /* stop monitoring */ + au_hn_free(au_hi(inode, btop)); + + /* dir inode is locked */ + IMustLock(d_inode(wh_dentry->d_parent)); + err = 0; + } + + if (!err) { + vfsub_dead_dir(inode); + au_set_dbdiropq(dentry, -1); + epilog(dir, dentry, bindex); + + if (rmdir_later) { + au_whtmp_kick_rmdir(dir, btop, h_dentry, args); + args = NULL; + } + + goto out_unpin; /* success */ + } + + /* revert */ + AuLabel(revert); + if (wh_dentry) { + int rerr; + + rerr = do_revert(err, dir, bindex, bwh, wh_dentry, dentry, + &a->dt); + if (rerr) + err = rerr; + } + +out_unpin: + au_unpin(&a->pin); + dput(wh_dentry); + dput(h_dentry); +out_parent: + di_write_unlock(parent); + if (args) + au_whtmp_rmdir_free(args); +out_unlock: + aufs_read_unlock(dentry, AuLock_DW); +out_free: + au_kfree_rcu(a); +out: + AuTraceErr(err); + return err; +} --- linux-azure-5.8-5.8.0.orig/fs/aufs/i_op_ren.c +++ linux-azure-5.8-5.8.0/fs/aufs/i_op_ren.c @@ -0,0 +1,1250 @@ +// SPDX-License-Identifier: GPL-2.0 +/* + * Copyright (C) 2005-2020 Junjiro R. Okajima + * + * This program, aufs is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; either version 2 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + */ + +/* + * inode operation (rename entry) + * todo: this is crazy monster + */ + +#include +#include "aufs.h" + +enum { AuSRC, AuDST, AuSrcDst }; +enum { AuPARENT, AuCHILD, AuParentChild }; + +#define AuRen_ISDIR_SRC 1 +#define AuRen_ISDIR_DST (1 << 1) +#define AuRen_ISSAMEDIR (1 << 2) +#define AuRen_WHSRC (1 << 3) +#define AuRen_WHDST (1 << 4) +#define AuRen_MNT_WRITE (1 << 5) +#define AuRen_DT_DSTDIR (1 << 6) +#define AuRen_DIROPQ_SRC (1 << 7) +#define AuRen_DIROPQ_DST (1 << 8) +#define AuRen_DIRREN (1 << 9) +#define AuRen_DROPPED_SRC (1 << 10) +#define AuRen_DROPPED_DST (1 << 11) +#define au_ftest_ren(flags, name) ((flags) & AuRen_##name) +#define au_fset_ren(flags, name) \ + do { (flags) |= AuRen_##name; } while (0) +#define au_fclr_ren(flags, name) \ + do { (flags) &= ~AuRen_##name; } while (0) + +#ifndef CONFIG_AUFS_DIRREN +#undef AuRen_DIRREN +#define AuRen_DIRREN 0 +#endif + +struct au_ren_args { + struct { + struct dentry *dentry, *h_dentry, *parent, *h_parent, + *wh_dentry; + struct inode *dir, *inode; + struct au_hinode *hdir, *hinode; + struct au_dtime dt[AuParentChild]; + aufs_bindex_t btop, bdiropq; + } sd[AuSrcDst]; + +#define src_dentry sd[AuSRC].dentry +#define src_dir sd[AuSRC].dir +#define src_inode sd[AuSRC].inode +#define src_h_dentry sd[AuSRC].h_dentry +#define src_parent sd[AuSRC].parent +#define src_h_parent sd[AuSRC].h_parent +#define src_wh_dentry sd[AuSRC].wh_dentry +#define src_hdir sd[AuSRC].hdir +#define src_hinode sd[AuSRC].hinode +#define src_h_dir sd[AuSRC].hdir->hi_inode +#define src_dt sd[AuSRC].dt +#define src_btop sd[AuSRC].btop +#define src_bdiropq sd[AuSRC].bdiropq + +#define dst_dentry sd[AuDST].dentry +#define dst_dir sd[AuDST].dir +#define dst_inode sd[AuDST].inode +#define dst_h_dentry sd[AuDST].h_dentry +#define dst_parent sd[AuDST].parent +#define dst_h_parent sd[AuDST].h_parent +#define dst_wh_dentry sd[AuDST].wh_dentry +#define dst_hdir sd[AuDST].hdir +#define dst_hinode sd[AuDST].hinode +#define dst_h_dir sd[AuDST].hdir->hi_inode +#define dst_dt sd[AuDST].dt +#define dst_btop sd[AuDST].btop +#define dst_bdiropq sd[AuDST].bdiropq + + struct dentry *h_trap; + struct au_branch *br; + struct path h_path; + struct au_nhash whlist; + aufs_bindex_t btgt, src_bwh; + + struct { + unsigned short auren_flags; + unsigned char flags; /* syscall parameter */ + unsigned char exchange; + } __packed; + + struct au_whtmp_rmdir *thargs; + struct dentry *h_dst; + struct au_hinode *h_root; +}; + +/* ---------------------------------------------------------------------- */ + +/* + * functions for reverting. + * when an error happened in a single rename systemcall, we should revert + * everything as if nothing happened. + * we don't need to revert the copied-up/down the parent dir since they are + * harmless. + */ + +#define RevertFailure(fmt, ...) do { \ + AuIOErr("revert failure: " fmt " (%d, %d)\n", \ + ##__VA_ARGS__, err, rerr); \ + err = -EIO; \ +} while (0) + +static void au_ren_do_rev_diropq(int err, struct au_ren_args *a, int idx) +{ + int rerr; + struct dentry *d; +#define src_or_dst(member) a->sd[idx].member + + d = src_or_dst(dentry); /* {src,dst}_dentry */ + au_hn_inode_lock_nested(src_or_dst(hinode), AuLsc_I_CHILD); + rerr = au_diropq_remove(d, a->btgt); + au_hn_inode_unlock(src_or_dst(hinode)); + au_set_dbdiropq(d, src_or_dst(bdiropq)); + if (rerr) + RevertFailure("remove diropq %pd", d); + +#undef src_or_dst_ +} + +static void au_ren_rev_diropq(int err, struct au_ren_args *a) +{ + if (au_ftest_ren(a->auren_flags, DIROPQ_SRC)) + au_ren_do_rev_diropq(err, a, AuSRC); + if (au_ftest_ren(a->auren_flags, DIROPQ_DST)) + au_ren_do_rev_diropq(err, a, AuDST); +} + +static void au_ren_rev_rename(int err, struct au_ren_args *a) +{ + int rerr; + struct inode *delegated; + + a->h_path.dentry = vfsub_lkup_one(&a->src_dentry->d_name, + a->src_h_parent); + rerr = PTR_ERR(a->h_path.dentry); + if (IS_ERR(a->h_path.dentry)) { + RevertFailure("lkup one %pd", a->src_dentry); + return; + } + + delegated = NULL; + rerr = vfsub_rename(a->dst_h_dir, + au_h_dptr(a->src_dentry, a->btgt), + a->src_h_dir, &a->h_path, &delegated, a->flags); + if (unlikely(rerr == -EWOULDBLOCK)) { + pr_warn("cannot retry for NFSv4 delegation" + " for an internal rename\n"); + iput(delegated); + } + d_drop(a->h_path.dentry); + dput(a->h_path.dentry); + /* au_set_h_dptr(a->src_dentry, a->btgt, NULL); */ + if (rerr) + RevertFailure("rename %pd", a->src_dentry); +} + +static void au_ren_rev_whtmp(int err, struct au_ren_args *a) +{ + int rerr; + struct inode *delegated; + + a->h_path.dentry = vfsub_lkup_one(&a->dst_dentry->d_name, + a->dst_h_parent); + rerr = PTR_ERR(a->h_path.dentry); + if (IS_ERR(a->h_path.dentry)) { + RevertFailure("lkup one %pd", a->dst_dentry); + return; + } + if (d_is_positive(a->h_path.dentry)) { + d_drop(a->h_path.dentry); + dput(a->h_path.dentry); + return; + } + + delegated = NULL; + rerr = vfsub_rename(a->dst_h_dir, a->h_dst, a->dst_h_dir, &a->h_path, + &delegated, a->flags); + if (unlikely(rerr == -EWOULDBLOCK)) { + pr_warn("cannot retry for NFSv4 delegation" + " for an internal rename\n"); + iput(delegated); + } + d_drop(a->h_path.dentry); + dput(a->h_path.dentry); + if (!rerr) + au_set_h_dptr(a->dst_dentry, a->btgt, dget(a->h_dst)); + else + RevertFailure("rename %pd", a->h_dst); +} + +static void au_ren_rev_whsrc(int err, struct au_ren_args *a) +{ + int rerr; + + a->h_path.dentry = a->src_wh_dentry; + rerr = au_wh_unlink_dentry(a->src_h_dir, &a->h_path, a->src_dentry); + au_set_dbwh(a->src_dentry, a->src_bwh); + if (rerr) + RevertFailure("unlink %pd", a->src_wh_dentry); +} +#undef RevertFailure + +/* ---------------------------------------------------------------------- */ + +/* + * when we have to copyup the renaming entry, do it with the rename-target name + * in order to minimize the cost (the later actual rename is unnecessary). + * otherwise rename it on the target branch. + */ +static int au_ren_or_cpup(struct au_ren_args *a) +{ + int err; + struct dentry *d; + struct inode *delegated; + + d = a->src_dentry; + if (au_dbtop(d) == a->btgt) { + a->h_path.dentry = a->dst_h_dentry; + AuDebugOn(au_dbtop(d) != a->btgt); + delegated = NULL; + err = vfsub_rename(a->src_h_dir, au_h_dptr(d, a->btgt), + a->dst_h_dir, &a->h_path, &delegated, + a->flags); + if (unlikely(err == -EWOULDBLOCK)) { + pr_warn("cannot retry for NFSv4 delegation" + " for an internal rename\n"); + iput(delegated); + } + } else + BUG(); + + if (!err && a->h_dst) + /* it will be set to dinfo later */ + dget(a->h_dst); + + return err; +} + +/* cf. aufs_rmdir() */ +static int au_ren_del_whtmp(struct au_ren_args *a) +{ + int err; + struct inode *dir; + + dir = a->dst_dir; + SiMustAnyLock(dir->i_sb); + if (!au_nhash_test_longer_wh(&a->whlist, a->btgt, + au_sbi(dir->i_sb)->si_dirwh) + || au_test_fs_remote(a->h_dst->d_sb)) { + err = au_whtmp_rmdir(dir, a->btgt, a->h_dst, &a->whlist); + if (unlikely(err)) + pr_warn("failed removing whtmp dir %pd (%d), " + "ignored.\n", a->h_dst, err); + } else { + au_nhash_wh_free(&a->thargs->whlist); + a->thargs->whlist = a->whlist; + a->whlist.nh_num = 0; + au_whtmp_kick_rmdir(dir, a->btgt, a->h_dst, a->thargs); + dput(a->h_dst); + a->thargs = NULL; + } + + return 0; +} + +/* make it 'opaque' dir. */ +static int au_ren_do_diropq(struct au_ren_args *a, int idx) +{ + int err; + struct dentry *d, *diropq; +#define src_or_dst(member) a->sd[idx].member + + err = 0; + d = src_or_dst(dentry); /* {src,dst}_dentry */ + src_or_dst(bdiropq) = au_dbdiropq(d); + src_or_dst(hinode) = au_hi(src_or_dst(inode), a->btgt); + au_hn_inode_lock_nested(src_or_dst(hinode), AuLsc_I_CHILD); + diropq = au_diropq_create(d, a->btgt); + au_hn_inode_unlock(src_or_dst(hinode)); + if (IS_ERR(diropq)) + err = PTR_ERR(diropq); + else + dput(diropq); + +#undef src_or_dst_ + return err; +} + +static int au_ren_diropq(struct au_ren_args *a) +{ + int err; + unsigned char always; + struct dentry *d; + + err = 0; + d = a->dst_dentry; /* already renamed on the branch */ + always = !!au_opt_test(au_mntflags(d->d_sb), ALWAYS_DIROPQ); + if (au_ftest_ren(a->auren_flags, ISDIR_SRC) + && !au_ftest_ren(a->auren_flags, DIRREN) + && a->btgt != au_dbdiropq(a->src_dentry) + && (a->dst_wh_dentry + || a->btgt <= au_dbdiropq(d) + /* hide the lower to keep xino */ + /* the lowers may not be a dir, but we hide them anyway */ + || a->btgt < au_dbbot(d) + || always)) { + AuDbg("here\n"); + err = au_ren_do_diropq(a, AuSRC); + if (unlikely(err)) + goto out; + au_fset_ren(a->auren_flags, DIROPQ_SRC); + } + if (!a->exchange) + goto out; /* success */ + + d = a->src_dentry; /* already renamed on the branch */ + if (au_ftest_ren(a->auren_flags, ISDIR_DST) + && a->btgt != au_dbdiropq(a->dst_dentry) + && (a->btgt < au_dbdiropq(d) + || a->btgt < au_dbbot(d) + || always)) { + AuDbgDentry(a->src_dentry); + AuDbgDentry(a->dst_dentry); + err = au_ren_do_diropq(a, AuDST); + if (unlikely(err)) + goto out_rev_src; + au_fset_ren(a->auren_flags, DIROPQ_DST); + } + goto out; /* success */ + +out_rev_src: + AuDbg("err %d, reverting src\n", err); + au_ren_rev_diropq(err, a); +out: + return err; +} + +static int do_rename(struct au_ren_args *a) +{ + int err; + struct dentry *d, *h_d; + + if (!a->exchange) { + /* prepare workqueue args for asynchronous rmdir */ + h_d = a->dst_h_dentry; + if (au_ftest_ren(a->auren_flags, ISDIR_DST) + /* && !au_ftest_ren(a->auren_flags, DIRREN) */ + && d_is_positive(h_d)) { + err = -ENOMEM; + a->thargs = au_whtmp_rmdir_alloc(a->src_dentry->d_sb, + GFP_NOFS); + if (unlikely(!a->thargs)) + goto out; + a->h_dst = dget(h_d); + } + + /* create whiteout for src_dentry */ + if (au_ftest_ren(a->auren_flags, WHSRC)) { + a->src_bwh = au_dbwh(a->src_dentry); + AuDebugOn(a->src_bwh >= 0); + a->src_wh_dentry = au_wh_create(a->src_dentry, a->btgt, + a->src_h_parent); + err = PTR_ERR(a->src_wh_dentry); + if (IS_ERR(a->src_wh_dentry)) + goto out_thargs; + } + + /* lookup whiteout for dentry */ + if (au_ftest_ren(a->auren_flags, WHDST)) { + h_d = au_wh_lkup(a->dst_h_parent, + &a->dst_dentry->d_name, a->br); + err = PTR_ERR(h_d); + if (IS_ERR(h_d)) + goto out_whsrc; + if (d_is_negative(h_d)) + dput(h_d); + else + a->dst_wh_dentry = h_d; + } + + /* rename dentry to tmpwh */ + if (a->thargs) { + err = au_whtmp_ren(a->dst_h_dentry, a->br); + if (unlikely(err)) + goto out_whdst; + + d = a->dst_dentry; + au_set_h_dptr(d, a->btgt, NULL); + err = au_lkup_neg(d, a->btgt, /*wh*/0); + if (unlikely(err)) + goto out_whtmp; + a->dst_h_dentry = au_h_dptr(d, a->btgt); + } + } + + BUG_ON(d_is_positive(a->dst_h_dentry) && a->src_btop != a->btgt); +#if 0 /* debugging */ + BUG_ON(!au_ftest_ren(a->auren_flags, DIRREN) + && d_is_positive(a->dst_h_dentry) + && a->src_btop != a->btgt); +#endif + + /* rename by vfs_rename or cpup */ + err = au_ren_or_cpup(a); + if (unlikely(err)) + /* leave the copied-up one */ + goto out_whtmp; + + /* make dir opaque */ + err = au_ren_diropq(a); + if (unlikely(err)) + goto out_rename; + + /* update target timestamps */ + if (a->exchange) { + AuDebugOn(au_dbtop(a->dst_dentry) != a->btgt); + a->h_path.dentry = au_h_dptr(a->dst_dentry, a->btgt); + vfsub_update_h_iattr(&a->h_path, /*did*/NULL); /*ignore*/ + a->dst_inode->i_ctime = d_inode(a->h_path.dentry)->i_ctime; + } + AuDebugOn(au_dbtop(a->src_dentry) != a->btgt); + a->h_path.dentry = au_h_dptr(a->src_dentry, a->btgt); + vfsub_update_h_iattr(&a->h_path, /*did*/NULL); /*ignore*/ + a->src_inode->i_ctime = d_inode(a->h_path.dentry)->i_ctime; + + if (!a->exchange) { + /* remove whiteout for dentry */ + if (a->dst_wh_dentry) { + a->h_path.dentry = a->dst_wh_dentry; + err = au_wh_unlink_dentry(a->dst_h_dir, &a->h_path, + a->dst_dentry); + if (unlikely(err)) + goto out_diropq; + } + + /* remove whtmp */ + if (a->thargs) + au_ren_del_whtmp(a); /* ignore this error */ + + au_fhsm_wrote(a->src_dentry->d_sb, a->btgt, /*force*/0); + } + err = 0; + goto out_success; + +out_diropq: + au_ren_rev_diropq(err, a); +out_rename: + au_ren_rev_rename(err, a); + dput(a->h_dst); +out_whtmp: + if (a->thargs) + au_ren_rev_whtmp(err, a); +out_whdst: + dput(a->dst_wh_dentry); + a->dst_wh_dentry = NULL; +out_whsrc: + if (a->src_wh_dentry) + au_ren_rev_whsrc(err, a); +out_success: + dput(a->src_wh_dentry); + dput(a->dst_wh_dentry); +out_thargs: + if (a->thargs) { + dput(a->h_dst); + au_whtmp_rmdir_free(a->thargs); + a->thargs = NULL; + } +out: + return err; +} + +/* ---------------------------------------------------------------------- */ + +/* + * test if @dentry dir can be rename destination or not. + * success means, it is a logically empty dir. + */ +static int may_rename_dstdir(struct dentry *dentry, struct au_nhash *whlist) +{ + return au_test_empty(dentry, whlist); +} + +/* + * test if @a->src_dentry dir can be rename source or not. + * if it can, return 0. + * success means, + * - it is a logically empty dir. + * - or, it exists on writable branch and has no children including whiteouts + * on the lower branch unless DIRREN is on. + */ +static int may_rename_srcdir(struct au_ren_args *a) +{ + int err; + unsigned int rdhash; + aufs_bindex_t btop, btgt; + struct dentry *dentry; + struct super_block *sb; + struct au_sbinfo *sbinfo; + + dentry = a->src_dentry; + sb = dentry->d_sb; + sbinfo = au_sbi(sb); + if (au_opt_test(sbinfo->si_mntflags, DIRREN)) + au_fset_ren(a->auren_flags, DIRREN); + + btgt = a->btgt; + btop = au_dbtop(dentry); + if (btop != btgt) { + struct au_nhash whlist; + + SiMustAnyLock(sb); + rdhash = sbinfo->si_rdhash; + if (!rdhash) + rdhash = au_rdhash_est(au_dir_size(/*file*/NULL, + dentry)); + err = au_nhash_alloc(&whlist, rdhash, GFP_NOFS); + if (unlikely(err)) + goto out; + err = au_test_empty(dentry, &whlist); + au_nhash_wh_free(&whlist); + goto out; + } + + if (btop == au_dbtaildir(dentry)) + return 0; /* success */ + + err = au_test_empty_lower(dentry); + +out: + if (err == -ENOTEMPTY) { + if (au_ftest_ren(a->auren_flags, DIRREN)) { + err = 0; + } else { + AuWarn1("renaming dir who has child(ren) on multiple " + "branches, is not supported\n"); + err = -EXDEV; + } + } + return err; +} + +/* side effect: sets whlist and h_dentry */ +static int au_ren_may_dir(struct au_ren_args *a) +{ + int err; + unsigned int rdhash; + struct dentry *d; + + d = a->dst_dentry; + SiMustAnyLock(d->d_sb); + + err = 0; + if (au_ftest_ren(a->auren_flags, ISDIR_DST) && a->dst_inode) { + rdhash = au_sbi(d->d_sb)->si_rdhash; + if (!rdhash) + rdhash = au_rdhash_est(au_dir_size(/*file*/NULL, d)); + err = au_nhash_alloc(&a->whlist, rdhash, GFP_NOFS); + if (unlikely(err)) + goto out; + + if (!a->exchange) { + au_set_dbtop(d, a->dst_btop); + err = may_rename_dstdir(d, &a->whlist); + au_set_dbtop(d, a->btgt); + } else + err = may_rename_srcdir(a); + } + a->dst_h_dentry = au_h_dptr(d, au_dbtop(d)); + if (unlikely(err)) + goto out; + + d = a->src_dentry; + a->src_h_dentry = au_h_dptr(d, au_dbtop(d)); + if (au_ftest_ren(a->auren_flags, ISDIR_SRC)) { + err = may_rename_srcdir(a); + if (unlikely(err)) { + au_nhash_wh_free(&a->whlist); + a->whlist.nh_num = 0; + } + } +out: + return err; +} + +/* ---------------------------------------------------------------------- */ + +/* + * simple tests for rename. + * following the checks in vfs, plus the parent-child relationship. + */ +static int au_may_ren(struct au_ren_args *a) +{ + int err, isdir; + struct inode *h_inode; + + if (a->src_btop == a->btgt) { + err = au_may_del(a->src_dentry, a->btgt, a->src_h_parent, + au_ftest_ren(a->auren_flags, ISDIR_SRC)); + if (unlikely(err)) + goto out; + err = -EINVAL; + if (unlikely(a->src_h_dentry == a->h_trap)) + goto out; + } + + err = 0; + if (a->dst_btop != a->btgt) + goto out; + + err = -ENOTEMPTY; + if (unlikely(a->dst_h_dentry == a->h_trap)) + goto out; + + err = -EIO; + isdir = !!au_ftest_ren(a->auren_flags, ISDIR_DST); + if (d_really_is_negative(a->dst_dentry)) { + if (d_is_negative(a->dst_h_dentry)) + err = au_may_add(a->dst_dentry, a->btgt, + a->dst_h_parent, isdir); + } else { + if (unlikely(d_is_negative(a->dst_h_dentry))) + goto out; + h_inode = d_inode(a->dst_h_dentry); + if (h_inode->i_nlink) + err = au_may_del(a->dst_dentry, a->btgt, + a->dst_h_parent, isdir); + } + +out: + if (unlikely(err == -ENOENT || err == -EEXIST)) + err = -EIO; + AuTraceErr(err); + return err; +} + +/* ---------------------------------------------------------------------- */ + +/* + * locking order + * (VFS) + * - src_dir and dir by lock_rename() + * - inode if exists + * (aufs) + * - lock all + * + src_dentry and dentry by aufs_read_and_write_lock2() which calls, + * + si_read_lock + * + di_write_lock2_child() + * + di_write_lock_child() + * + ii_write_lock_child() + * + di_write_lock_child2() + * + ii_write_lock_child2() + * + src_parent and parent + * + di_write_lock_parent() + * + ii_write_lock_parent() + * + di_write_lock_parent2() + * + ii_write_lock_parent2() + * + lower src_dir and dir by vfsub_lock_rename() + * + verify the every relationships between child and parent. if any + * of them failed, unlock all and return -EBUSY. + */ +static void au_ren_unlock(struct au_ren_args *a) +{ + vfsub_unlock_rename(a->src_h_parent, a->src_hdir, + a->dst_h_parent, a->dst_hdir); + if (au_ftest_ren(a->auren_flags, DIRREN) + && a->h_root) + au_hn_inode_unlock(a->h_root); + if (au_ftest_ren(a->auren_flags, MNT_WRITE)) + vfsub_mnt_drop_write(au_br_mnt(a->br)); +} + +static int au_ren_lock(struct au_ren_args *a) +{ + int err; + unsigned int udba; + + err = 0; + a->src_h_parent = au_h_dptr(a->src_parent, a->btgt); + a->src_hdir = au_hi(a->src_dir, a->btgt); + a->dst_h_parent = au_h_dptr(a->dst_parent, a->btgt); + a->dst_hdir = au_hi(a->dst_dir, a->btgt); + + err = vfsub_mnt_want_write(au_br_mnt(a->br)); + if (unlikely(err)) + goto out; + au_fset_ren(a->auren_flags, MNT_WRITE); + if (au_ftest_ren(a->auren_flags, DIRREN)) { + struct dentry *root; + struct inode *dir; + + /* + * sbinfo is already locked, so this ii_read_lock is + * unnecessary. but our debugging feature checks it. + */ + root = a->src_inode->i_sb->s_root; + if (root != a->src_parent && root != a->dst_parent) { + dir = d_inode(root); + ii_read_lock_parent3(dir); + a->h_root = au_hi(dir, a->btgt); + ii_read_unlock(dir); + au_hn_inode_lock_nested(a->h_root, AuLsc_I_PARENT3); + } + } + a->h_trap = vfsub_lock_rename(a->src_h_parent, a->src_hdir, + a->dst_h_parent, a->dst_hdir); + udba = au_opt_udba(a->src_dentry->d_sb); + if (unlikely(a->src_hdir->hi_inode != d_inode(a->src_h_parent) + || a->dst_hdir->hi_inode != d_inode(a->dst_h_parent))) + err = au_busy_or_stale(); + if (!err && au_dbtop(a->src_dentry) == a->btgt) + err = au_h_verify(a->src_h_dentry, udba, + d_inode(a->src_h_parent), a->src_h_parent, + a->br); + if (!err && au_dbtop(a->dst_dentry) == a->btgt) + err = au_h_verify(a->dst_h_dentry, udba, + d_inode(a->dst_h_parent), a->dst_h_parent, + a->br); + if (!err) + goto out; /* success */ + + err = au_busy_or_stale(); + au_ren_unlock(a); + +out: + return err; +} + +/* ---------------------------------------------------------------------- */ + +static void au_ren_refresh_dir(struct au_ren_args *a) +{ + struct inode *dir; + + dir = a->dst_dir; + inode_inc_iversion(dir); + if (au_ftest_ren(a->auren_flags, ISDIR_SRC)) { + /* is this updating defined in POSIX? */ + au_cpup_attr_timesizes(a->src_inode); + au_cpup_attr_nlink(dir, /*force*/1); + } + au_dir_ts(dir, a->btgt); + + if (a->exchange) { + dir = a->src_dir; + inode_inc_iversion(dir); + if (au_ftest_ren(a->auren_flags, ISDIR_DST)) { + /* is this updating defined in POSIX? */ + au_cpup_attr_timesizes(a->dst_inode); + au_cpup_attr_nlink(dir, /*force*/1); + } + au_dir_ts(dir, a->btgt); + } + + if (au_ftest_ren(a->auren_flags, ISSAMEDIR)) + return; + + dir = a->src_dir; + inode_inc_iversion(dir); + if (au_ftest_ren(a->auren_flags, ISDIR_SRC)) + au_cpup_attr_nlink(dir, /*force*/1); + au_dir_ts(dir, a->btgt); +} + +static void au_ren_refresh(struct au_ren_args *a) +{ + aufs_bindex_t bbot, bindex; + struct dentry *d, *h_d; + struct inode *i, *h_i; + struct super_block *sb; + + d = a->dst_dentry; + d_drop(d); + if (a->h_dst) + /* already dget-ed by au_ren_or_cpup() */ + au_set_h_dptr(d, a->btgt, a->h_dst); + + i = a->dst_inode; + if (i) { + if (!a->exchange) { + if (!au_ftest_ren(a->auren_flags, ISDIR_DST)) + vfsub_drop_nlink(i); + else { + vfsub_dead_dir(i); + au_cpup_attr_timesizes(i); + } + au_update_dbrange(d, /*do_put_zero*/1); + } else + au_cpup_attr_nlink(i, /*force*/1); + } else { + bbot = a->btgt; + for (bindex = au_dbtop(d); bindex < bbot; bindex++) + au_set_h_dptr(d, bindex, NULL); + bbot = au_dbbot(d); + for (bindex = a->btgt + 1; bindex <= bbot; bindex++) + au_set_h_dptr(d, bindex, NULL); + au_update_dbrange(d, /*do_put_zero*/0); + } + + if (a->exchange + || au_ftest_ren(a->auren_flags, DIRREN)) { + d_drop(a->src_dentry); + if (au_ftest_ren(a->auren_flags, DIRREN)) + au_set_dbwh(a->src_dentry, -1); + return; + } + + d = a->src_dentry; + au_set_dbwh(d, -1); + bbot = au_dbbot(d); + for (bindex = a->btgt + 1; bindex <= bbot; bindex++) { + h_d = au_h_dptr(d, bindex); + if (h_d) + au_set_h_dptr(d, bindex, NULL); + } + au_set_dbbot(d, a->btgt); + + sb = d->d_sb; + i = a->src_inode; + if (au_opt_test(au_mntflags(sb), PLINK) && au_plink_test(i)) + return; /* success */ + + bbot = au_ibbot(i); + for (bindex = a->btgt + 1; bindex <= bbot; bindex++) { + h_i = au_h_iptr(i, bindex); + if (h_i) { + au_xino_write(sb, bindex, h_i->i_ino, /*ino*/0); + /* ignore this error */ + au_set_h_iptr(i, bindex, NULL, 0); + } + } + au_set_ibbot(i, a->btgt); +} + +/* ---------------------------------------------------------------------- */ + +/* mainly for link(2) and rename(2) */ +int au_wbr(struct dentry *dentry, aufs_bindex_t btgt) +{ + aufs_bindex_t bdiropq, bwh; + struct dentry *parent; + struct au_branch *br; + + parent = dentry->d_parent; + IMustLock(d_inode(parent)); /* dir is locked */ + + bdiropq = au_dbdiropq(parent); + bwh = au_dbwh(dentry); + br = au_sbr(dentry->d_sb, btgt); + if (au_br_rdonly(br) + || (0 <= bdiropq && bdiropq < btgt) + || (0 <= bwh && bwh < btgt)) + btgt = -1; + + AuDbg("btgt %d\n", btgt); + return btgt; +} + +/* sets src_btop, dst_btop and btgt */ +static int au_ren_wbr(struct au_ren_args *a) +{ + int err; + struct au_wr_dir_args wr_dir_args = { + /* .force_btgt = -1, */ + .flags = AuWrDir_ADD_ENTRY + }; + + a->src_btop = au_dbtop(a->src_dentry); + a->dst_btop = au_dbtop(a->dst_dentry); + if (au_ftest_ren(a->auren_flags, ISDIR_SRC) + || au_ftest_ren(a->auren_flags, ISDIR_DST)) + au_fset_wrdir(wr_dir_args.flags, ISDIR); + wr_dir_args.force_btgt = a->src_btop; + if (a->dst_inode && a->dst_btop < a->src_btop) + wr_dir_args.force_btgt = a->dst_btop; + wr_dir_args.force_btgt = au_wbr(a->dst_dentry, wr_dir_args.force_btgt); + err = au_wr_dir(a->dst_dentry, a->src_dentry, &wr_dir_args); + a->btgt = err; + if (a->exchange) + au_update_dbtop(a->dst_dentry); + + return err; +} + +static void au_ren_dt(struct au_ren_args *a) +{ + a->h_path.dentry = a->src_h_parent; + au_dtime_store(a->src_dt + AuPARENT, a->src_parent, &a->h_path); + if (!au_ftest_ren(a->auren_flags, ISSAMEDIR)) { + a->h_path.dentry = a->dst_h_parent; + au_dtime_store(a->dst_dt + AuPARENT, a->dst_parent, &a->h_path); + } + + au_fclr_ren(a->auren_flags, DT_DSTDIR); + if (!au_ftest_ren(a->auren_flags, ISDIR_SRC) + && !a->exchange) + return; + + a->h_path.dentry = a->src_h_dentry; + au_dtime_store(a->src_dt + AuCHILD, a->src_dentry, &a->h_path); + if (d_is_positive(a->dst_h_dentry)) { + au_fset_ren(a->auren_flags, DT_DSTDIR); + a->h_path.dentry = a->dst_h_dentry; + au_dtime_store(a->dst_dt + AuCHILD, a->dst_dentry, &a->h_path); + } +} + +static void au_ren_rev_dt(int err, struct au_ren_args *a) +{ + struct dentry *h_d; + struct inode *h_inode; + + au_dtime_revert(a->src_dt + AuPARENT); + if (!au_ftest_ren(a->auren_flags, ISSAMEDIR)) + au_dtime_revert(a->dst_dt + AuPARENT); + + if (au_ftest_ren(a->auren_flags, ISDIR_SRC) && err != -EIO) { + h_d = a->src_dt[AuCHILD].dt_h_path.dentry; + h_inode = d_inode(h_d); + inode_lock_nested(h_inode, AuLsc_I_CHILD); + au_dtime_revert(a->src_dt + AuCHILD); + inode_unlock(h_inode); + + if (au_ftest_ren(a->auren_flags, DT_DSTDIR)) { + h_d = a->dst_dt[AuCHILD].dt_h_path.dentry; + h_inode = d_inode(h_d); + inode_lock_nested(h_inode, AuLsc_I_CHILD); + au_dtime_revert(a->dst_dt + AuCHILD); + inode_unlock(h_inode); + } + } +} + +/* ---------------------------------------------------------------------- */ + +int aufs_rename(struct inode *_src_dir, struct dentry *_src_dentry, + struct inode *_dst_dir, struct dentry *_dst_dentry, + unsigned int _flags) +{ + int err, lock_flags; + void *rev; + /* reduce stack space */ + struct au_ren_args *a; + struct au_pin pin; + + AuDbg("%pd, %pd, 0x%x\n", _src_dentry, _dst_dentry, _flags); + IMustLock(_src_dir); + IMustLock(_dst_dir); + + err = -EINVAL; + if (unlikely(_flags & RENAME_WHITEOUT)) + goto out; + + err = -ENOMEM; + BUILD_BUG_ON(sizeof(*a) > PAGE_SIZE); + a = kzalloc(sizeof(*a), GFP_NOFS); + if (unlikely(!a)) + goto out; + + a->flags = _flags; + BUILD_BUG_ON(sizeof(a->exchange) == sizeof(u8) + && RENAME_EXCHANGE > U8_MAX); + a->exchange = _flags & RENAME_EXCHANGE; + a->src_dir = _src_dir; + a->src_dentry = _src_dentry; + a->src_inode = NULL; + if (d_really_is_positive(a->src_dentry)) + a->src_inode = d_inode(a->src_dentry); + a->src_parent = a->src_dentry->d_parent; /* dir inode is locked */ + a->dst_dir = _dst_dir; + a->dst_dentry = _dst_dentry; + a->dst_inode = NULL; + if (d_really_is_positive(a->dst_dentry)) + a->dst_inode = d_inode(a->dst_dentry); + a->dst_parent = a->dst_dentry->d_parent; /* dir inode is locked */ + if (a->dst_inode) { + /* + * if EXCHANGE && src is non-dir && dst is dir, + * dst is not locked. + */ + /* IMustLock(a->dst_inode); */ + au_igrab(a->dst_inode); + } + + err = -ENOTDIR; + lock_flags = AuLock_FLUSH | AuLock_NOPLM | AuLock_GEN; + if (d_is_dir(a->src_dentry)) { + au_fset_ren(a->auren_flags, ISDIR_SRC); + if (unlikely(!a->exchange + && d_really_is_positive(a->dst_dentry) + && !d_is_dir(a->dst_dentry))) + goto out_free; + lock_flags |= AuLock_DIRS; + } + if (a->dst_inode && d_is_dir(a->dst_dentry)) { + au_fset_ren(a->auren_flags, ISDIR_DST); + if (unlikely(!a->exchange + && d_really_is_positive(a->src_dentry) + && !d_is_dir(a->src_dentry))) + goto out_free; + lock_flags |= AuLock_DIRS; + } + err = aufs_read_and_write_lock2(a->dst_dentry, a->src_dentry, + lock_flags); + if (unlikely(err)) + goto out_free; + + err = au_d_hashed_positive(a->src_dentry); + if (unlikely(err)) + goto out_unlock; + err = -ENOENT; + if (a->dst_inode) { + /* + * If it is a dir, VFS unhash it before this + * function. It means we cannot rely upon d_unhashed(). + */ + if (unlikely(!a->dst_inode->i_nlink)) + goto out_unlock; + if (!au_ftest_ren(a->auren_flags, ISDIR_DST)) { + err = au_d_hashed_positive(a->dst_dentry); + if (unlikely(err && !a->exchange)) + goto out_unlock; + } else if (unlikely(IS_DEADDIR(a->dst_inode))) + goto out_unlock; + } else if (unlikely(d_unhashed(a->dst_dentry))) + goto out_unlock; + + /* + * is it possible? + * yes, it happened (in linux-3.3-rcN) but I don't know why. + * there may exist a problem somewhere else. + */ + err = -EINVAL; + if (unlikely(d_inode(a->dst_parent) == d_inode(a->src_dentry))) + goto out_unlock; + + au_fset_ren(a->auren_flags, ISSAMEDIR); /* temporary */ + di_write_lock_parent(a->dst_parent); + + /* which branch we process */ + err = au_ren_wbr(a); + if (unlikely(err < 0)) + goto out_parent; + a->br = au_sbr(a->dst_dentry->d_sb, a->btgt); + a->h_path.mnt = au_br_mnt(a->br); + + /* are they available to be renamed */ + err = au_ren_may_dir(a); + if (unlikely(err)) + goto out_children; + + /* prepare the writable parent dir on the same branch */ + if (a->dst_btop == a->btgt) { + au_fset_ren(a->auren_flags, WHDST); + } else { + err = au_cpup_dirs(a->dst_dentry, a->btgt); + if (unlikely(err)) + goto out_children; + } + + err = 0; + if (!a->exchange) { + if (a->src_dir != a->dst_dir) { + /* + * this temporary unlock is safe, + * because both dir->i_mutex are locked. + */ + di_write_unlock(a->dst_parent); + di_write_lock_parent(a->src_parent); + err = au_wr_dir_need_wh(a->src_dentry, + au_ftest_ren(a->auren_flags, + ISDIR_SRC), + &a->btgt); + di_write_unlock(a->src_parent); + di_write_lock2_parent(a->src_parent, a->dst_parent, + /*isdir*/1); + au_fclr_ren(a->auren_flags, ISSAMEDIR); + } else + err = au_wr_dir_need_wh(a->src_dentry, + au_ftest_ren(a->auren_flags, + ISDIR_SRC), + &a->btgt); + } + if (unlikely(err < 0)) + goto out_children; + if (err) + au_fset_ren(a->auren_flags, WHSRC); + + /* cpup src */ + if (a->src_btop != a->btgt) { + err = au_pin(&pin, a->src_dentry, a->btgt, + au_opt_udba(a->src_dentry->d_sb), + AuPin_DI_LOCKED | AuPin_MNT_WRITE); + if (!err) { + struct au_cp_generic cpg = { + .dentry = a->src_dentry, + .bdst = a->btgt, + .bsrc = a->src_btop, + .len = -1, + .pin = &pin, + .flags = AuCpup_DTIME | AuCpup_HOPEN + }; + AuDebugOn(au_dbtop(a->src_dentry) != a->src_btop); + err = au_sio_cpup_simple(&cpg); + au_unpin(&pin); + } + if (unlikely(err)) + goto out_children; + a->src_btop = a->btgt; + a->src_h_dentry = au_h_dptr(a->src_dentry, a->btgt); + if (!a->exchange) + au_fset_ren(a->auren_flags, WHSRC); + } + + /* cpup dst */ + if (a->exchange && a->dst_inode + && a->dst_btop != a->btgt) { + err = au_pin(&pin, a->dst_dentry, a->btgt, + au_opt_udba(a->dst_dentry->d_sb), + AuPin_DI_LOCKED | AuPin_MNT_WRITE); + if (!err) { + struct au_cp_generic cpg = { + .dentry = a->dst_dentry, + .bdst = a->btgt, + .bsrc = a->dst_btop, + .len = -1, + .pin = &pin, + .flags = AuCpup_DTIME | AuCpup_HOPEN + }; + err = au_sio_cpup_simple(&cpg); + au_unpin(&pin); + } + if (unlikely(err)) + goto out_children; + a->dst_btop = a->btgt; + a->dst_h_dentry = au_h_dptr(a->dst_dentry, a->btgt); + } + + /* lock them all */ + err = au_ren_lock(a); + if (unlikely(err)) + /* leave the copied-up one */ + goto out_children; + + if (!a->exchange) { + if (!au_opt_test(au_mntflags(a->dst_dir->i_sb), UDBA_NONE)) + err = au_may_ren(a); + else if (unlikely(a->dst_dentry->d_name.len > AUFS_MAX_NAMELEN)) + err = -ENAMETOOLONG; + if (unlikely(err)) + goto out_hdir; + } + + /* store timestamps to be revertible */ + au_ren_dt(a); + + /* store dirren info */ + if (au_ftest_ren(a->auren_flags, DIRREN)) { + err = au_dr_rename(a->src_dentry, a->btgt, + &a->dst_dentry->d_name, &rev); + AuTraceErr(err); + if (unlikely(err)) + goto out_dt; + } + + /* here we go */ + err = do_rename(a); + if (unlikely(err)) + goto out_dirren; + + if (au_ftest_ren(a->auren_flags, DIRREN)) + au_dr_rename_fin(a->src_dentry, a->btgt, rev); + + /* update dir attributes */ + au_ren_refresh_dir(a); + + /* dput/iput all lower dentries */ + au_ren_refresh(a); + + goto out_hdir; /* success */ + +out_dirren: + if (au_ftest_ren(a->auren_flags, DIRREN)) + au_dr_rename_rev(a->src_dentry, a->btgt, rev); +out_dt: + au_ren_rev_dt(err, a); +out_hdir: + au_ren_unlock(a); +out_children: + au_nhash_wh_free(&a->whlist); + if (err && a->dst_inode && a->dst_btop != a->btgt) { + AuDbg("btop %d, btgt %d\n", a->dst_btop, a->btgt); + au_set_h_dptr(a->dst_dentry, a->btgt, NULL); + au_set_dbtop(a->dst_dentry, a->dst_btop); + } +out_parent: + if (!err) { + if (d_unhashed(a->src_dentry)) + au_fset_ren(a->auren_flags, DROPPED_SRC); + if (d_unhashed(a->dst_dentry)) + au_fset_ren(a->auren_flags, DROPPED_DST); + if (!a->exchange) + d_move(a->src_dentry, a->dst_dentry); + else { + d_exchange(a->src_dentry, a->dst_dentry); + if (au_ftest_ren(a->auren_flags, DROPPED_DST)) + d_drop(a->dst_dentry); + } + if (au_ftest_ren(a->auren_flags, DROPPED_SRC)) + d_drop(a->src_dentry); + } else { + au_update_dbtop(a->dst_dentry); + if (!a->dst_inode) + d_drop(a->dst_dentry); + } + if (au_ftest_ren(a->auren_flags, ISSAMEDIR)) + di_write_unlock(a->dst_parent); + else + di_write_unlock2(a->src_parent, a->dst_parent); +out_unlock: + aufs_read_and_write_unlock2(a->dst_dentry, a->src_dentry); +out_free: + iput(a->dst_inode); + if (a->thargs) + au_whtmp_rmdir_free(a->thargs); + au_kfree_rcu(a); +out: + AuTraceErr(err); + return err; +} --- linux-azure-5.8-5.8.0.orig/fs/aufs/iinfo.c +++ linux-azure-5.8-5.8.0/fs/aufs/iinfo.c @@ -0,0 +1,286 @@ +// SPDX-License-Identifier: GPL-2.0 +/* + * Copyright (C) 2005-2020 Junjiro R. Okajima + * + * This program, aufs is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; either version 2 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + */ + +/* + * inode private data + */ + +#include "aufs.h" + +struct inode *au_h_iptr(struct inode *inode, aufs_bindex_t bindex) +{ + struct inode *h_inode; + struct au_hinode *hinode; + + IiMustAnyLock(inode); + + hinode = au_hinode(au_ii(inode), bindex); + h_inode = hinode->hi_inode; + AuDebugOn(h_inode && atomic_read(&h_inode->i_count) <= 0); + return h_inode; +} + +/* todo: hard/soft set? */ +void au_hiput(struct au_hinode *hinode) +{ + au_hn_free(hinode); + dput(hinode->hi_whdentry); + iput(hinode->hi_inode); +} + +unsigned int au_hi_flags(struct inode *inode, int isdir) +{ + unsigned int flags; + const unsigned int mnt_flags = au_mntflags(inode->i_sb); + + flags = 0; + if (au_opt_test(mnt_flags, XINO)) + au_fset_hi(flags, XINO); + if (isdir && au_opt_test(mnt_flags, UDBA_HNOTIFY)) + au_fset_hi(flags, HNOTIFY); + return flags; +} + +void au_set_h_iptr(struct inode *inode, aufs_bindex_t bindex, + struct inode *h_inode, unsigned int flags) +{ + struct au_hinode *hinode; + struct inode *hi; + struct au_iinfo *iinfo = au_ii(inode); + + IiMustWriteLock(inode); + + hinode = au_hinode(iinfo, bindex); + hi = hinode->hi_inode; + AuDebugOn(h_inode && atomic_read(&h_inode->i_count) <= 0); + + if (hi) + au_hiput(hinode); + hinode->hi_inode = h_inode; + if (h_inode) { + int err; + struct super_block *sb = inode->i_sb; + struct au_branch *br; + + AuDebugOn(inode->i_mode + && (h_inode->i_mode & S_IFMT) + != (inode->i_mode & S_IFMT)); + if (bindex == iinfo->ii_btop) + au_cpup_igen(inode, h_inode); + br = au_sbr(sb, bindex); + hinode->hi_id = br->br_id; + if (au_ftest_hi(flags, XINO)) { + err = au_xino_write(sb, bindex, h_inode->i_ino, + inode->i_ino); + if (unlikely(err)) + AuIOErr1("failed au_xino_write() %d\n", err); + } + + if (au_ftest_hi(flags, HNOTIFY) + && au_br_hnotifyable(br->br_perm)) { + err = au_hn_alloc(hinode, inode); + if (unlikely(err)) + AuIOErr1("au_hn_alloc() %d\n", err); + } + } +} + +void au_set_hi_wh(struct inode *inode, aufs_bindex_t bindex, + struct dentry *h_wh) +{ + struct au_hinode *hinode; + + IiMustWriteLock(inode); + + hinode = au_hinode(au_ii(inode), bindex); + AuDebugOn(hinode->hi_whdentry); + hinode->hi_whdentry = h_wh; +} + +void au_update_iigen(struct inode *inode, int half) +{ + struct au_iinfo *iinfo; + struct au_iigen *iigen; + unsigned int sigen; + + sigen = au_sigen(inode->i_sb); + iinfo = au_ii(inode); + iigen = &iinfo->ii_generation; + spin_lock(&iigen->ig_spin); + iigen->ig_generation = sigen; + if (half) + au_ig_fset(iigen->ig_flags, HALF_REFRESHED); + else + au_ig_fclr(iigen->ig_flags, HALF_REFRESHED); + spin_unlock(&iigen->ig_spin); +} + +/* it may be called at remount time, too */ +void au_update_ibrange(struct inode *inode, int do_put_zero) +{ + struct au_iinfo *iinfo; + aufs_bindex_t bindex, bbot; + + AuDebugOn(au_is_bad_inode(inode)); + IiMustWriteLock(inode); + + iinfo = au_ii(inode); + if (do_put_zero && iinfo->ii_btop >= 0) { + for (bindex = iinfo->ii_btop; bindex <= iinfo->ii_bbot; + bindex++) { + struct inode *h_i; + + h_i = au_hinode(iinfo, bindex)->hi_inode; + if (h_i + && !h_i->i_nlink + && !(h_i->i_state & I_LINKABLE)) + au_set_h_iptr(inode, bindex, NULL, 0); + } + } + + iinfo->ii_btop = -1; + iinfo->ii_bbot = -1; + bbot = au_sbbot(inode->i_sb); + for (bindex = 0; bindex <= bbot; bindex++) + if (au_hinode(iinfo, bindex)->hi_inode) { + iinfo->ii_btop = bindex; + break; + } + if (iinfo->ii_btop >= 0) + for (bindex = bbot; bindex >= iinfo->ii_btop; bindex--) + if (au_hinode(iinfo, bindex)->hi_inode) { + iinfo->ii_bbot = bindex; + break; + } + AuDebugOn(iinfo->ii_btop > iinfo->ii_bbot); +} + +/* ---------------------------------------------------------------------- */ + +void au_icntnr_init_once(void *_c) +{ + struct au_icntnr *c = _c; + struct au_iinfo *iinfo = &c->iinfo; + + spin_lock_init(&iinfo->ii_generation.ig_spin); + au_rw_init(&iinfo->ii_rwsem); + inode_init_once(&c->vfs_inode); +} + +void au_hinode_init(struct au_hinode *hinode) +{ + hinode->hi_inode = NULL; + hinode->hi_id = -1; + au_hn_init(hinode); + hinode->hi_whdentry = NULL; +} + +int au_iinfo_init(struct inode *inode) +{ + struct au_iinfo *iinfo; + struct super_block *sb; + struct au_hinode *hi; + int nbr, i; + + sb = inode->i_sb; + iinfo = &(container_of(inode, struct au_icntnr, vfs_inode)->iinfo); + nbr = au_sbbot(sb) + 1; + if (unlikely(nbr <= 0)) + nbr = 1; + hi = kmalloc_array(nbr, sizeof(*iinfo->ii_hinode), GFP_NOFS); + if (hi) { + au_lcnt_inc(&au_sbi(sb)->si_ninodes); + + iinfo->ii_hinode = hi; + for (i = 0; i < nbr; i++, hi++) + au_hinode_init(hi); + + iinfo->ii_generation.ig_generation = au_sigen(sb); + iinfo->ii_btop = -1; + iinfo->ii_bbot = -1; + iinfo->ii_vdir = NULL; + return 0; + } + return -ENOMEM; +} + +int au_hinode_realloc(struct au_iinfo *iinfo, int nbr, int may_shrink) +{ + int err, i; + struct au_hinode *hip; + + AuRwMustWriteLock(&iinfo->ii_rwsem); + + err = -ENOMEM; + hip = au_krealloc(iinfo->ii_hinode, sizeof(*hip) * nbr, GFP_NOFS, + may_shrink); + if (hip) { + iinfo->ii_hinode = hip; + i = iinfo->ii_bbot + 1; + hip += i; + for (; i < nbr; i++, hip++) + au_hinode_init(hip); + err = 0; + } + + return err; +} + +void au_iinfo_fin(struct inode *inode) +{ + struct au_iinfo *iinfo; + struct au_hinode *hi; + struct super_block *sb; + aufs_bindex_t bindex, bbot; + const unsigned char unlinked = !inode->i_nlink; + + AuDebugOn(au_is_bad_inode(inode)); + + sb = inode->i_sb; + au_lcnt_dec(&au_sbi(sb)->si_ninodes); + if (si_pid_test(sb)) + au_xino_delete_inode(inode, unlinked); + else { + /* + * it is safe to hide the dependency between sbinfo and + * sb->s_umount. + */ + lockdep_off(); + si_noflush_read_lock(sb); + au_xino_delete_inode(inode, unlinked); + si_read_unlock(sb); + lockdep_on(); + } + + iinfo = au_ii(inode); + if (iinfo->ii_vdir) + au_vdir_free(iinfo->ii_vdir); + + bindex = iinfo->ii_btop; + if (bindex >= 0) { + hi = au_hinode(iinfo, bindex); + bbot = iinfo->ii_bbot; + while (bindex++ <= bbot) { + if (hi->hi_inode) + au_hiput(hi); + hi++; + } + } + au_kfree_rcu(iinfo->ii_hinode); + AuRwDestroy(&iinfo->ii_rwsem); +} --- linux-azure-5.8-5.8.0.orig/fs/aufs/inode.c +++ linux-azure-5.8-5.8.0/fs/aufs/inode.c @@ -0,0 +1,529 @@ +// SPDX-License-Identifier: GPL-2.0 +/* + * Copyright (C) 2005-2020 Junjiro R. Okajima + * + * This program, aufs is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; either version 2 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + */ + +/* + * inode functions + */ + +#include +#include "aufs.h" + +struct inode *au_igrab(struct inode *inode) +{ + if (inode) { + AuDebugOn(!atomic_read(&inode->i_count)); + ihold(inode); + } + return inode; +} + +static void au_refresh_hinode_attr(struct inode *inode, int do_version) +{ + au_cpup_attr_all(inode, /*force*/0); + au_update_iigen(inode, /*half*/1); + if (do_version) + inode_inc_iversion(inode); +} + +static int au_ii_refresh(struct inode *inode, int *update) +{ + int err, e, nbr; + umode_t type; + aufs_bindex_t bindex, new_bindex; + struct super_block *sb; + struct au_iinfo *iinfo; + struct au_hinode *p, *q, tmp; + + AuDebugOn(au_is_bad_inode(inode)); + IiMustWriteLock(inode); + + *update = 0; + sb = inode->i_sb; + nbr = au_sbbot(sb) + 1; + type = inode->i_mode & S_IFMT; + iinfo = au_ii(inode); + err = au_hinode_realloc(iinfo, nbr, /*may_shrink*/0); + if (unlikely(err)) + goto out; + + AuDebugOn(iinfo->ii_btop < 0); + p = au_hinode(iinfo, iinfo->ii_btop); + for (bindex = iinfo->ii_btop; bindex <= iinfo->ii_bbot; + bindex++, p++) { + if (!p->hi_inode) + continue; + + AuDebugOn(type != (p->hi_inode->i_mode & S_IFMT)); + new_bindex = au_br_index(sb, p->hi_id); + if (new_bindex == bindex) + continue; + + if (new_bindex < 0) { + *update = 1; + au_hiput(p); + p->hi_inode = NULL; + continue; + } + + if (new_bindex < iinfo->ii_btop) + iinfo->ii_btop = new_bindex; + if (iinfo->ii_bbot < new_bindex) + iinfo->ii_bbot = new_bindex; + /* swap two lower inode, and loop again */ + q = au_hinode(iinfo, new_bindex); + tmp = *q; + *q = *p; + *p = tmp; + if (tmp.hi_inode) { + bindex--; + p--; + } + } + au_update_ibrange(inode, /*do_put_zero*/0); + au_hinode_realloc(iinfo, nbr, /*may_shrink*/1); /* harmless if err */ + e = au_dy_irefresh(inode); + if (unlikely(e && !err)) + err = e; + +out: + AuTraceErr(err); + return err; +} + +void au_refresh_iop(struct inode *inode, int force_getattr) +{ + int type; + struct au_sbinfo *sbi = au_sbi(inode->i_sb); + const struct inode_operations *iop + = force_getattr ? aufs_iop : sbi->si_iop_array; + + if (inode->i_op == iop) + return; + + switch (inode->i_mode & S_IFMT) { + case S_IFDIR: + type = AuIop_DIR; + break; + case S_IFLNK: + type = AuIop_SYMLINK; + break; + default: + type = AuIop_OTHER; + break; + } + + inode->i_op = iop + type; + /* unnecessary smp_wmb() */ +} + +int au_refresh_hinode_self(struct inode *inode) +{ + int err, update; + + err = au_ii_refresh(inode, &update); + if (!err) + au_refresh_hinode_attr(inode, update && S_ISDIR(inode->i_mode)); + + AuTraceErr(err); + return err; +} + +int au_refresh_hinode(struct inode *inode, struct dentry *dentry) +{ + int err, e, update; + unsigned int flags; + umode_t mode; + aufs_bindex_t bindex, bbot; + unsigned char isdir; + struct au_hinode *p; + struct au_iinfo *iinfo; + + err = au_ii_refresh(inode, &update); + if (unlikely(err)) + goto out; + + update = 0; + iinfo = au_ii(inode); + p = au_hinode(iinfo, iinfo->ii_btop); + mode = (inode->i_mode & S_IFMT); + isdir = S_ISDIR(mode); + flags = au_hi_flags(inode, isdir); + bbot = au_dbbot(dentry); + for (bindex = au_dbtop(dentry); bindex <= bbot; bindex++) { + struct inode *h_i, *h_inode; + struct dentry *h_d; + + h_d = au_h_dptr(dentry, bindex); + if (!h_d || d_is_negative(h_d)) + continue; + + h_inode = d_inode(h_d); + AuDebugOn(mode != (h_inode->i_mode & S_IFMT)); + if (iinfo->ii_btop <= bindex && bindex <= iinfo->ii_bbot) { + h_i = au_h_iptr(inode, bindex); + if (h_i) { + if (h_i == h_inode) + continue; + err = -EIO; + break; + } + } + if (bindex < iinfo->ii_btop) + iinfo->ii_btop = bindex; + if (iinfo->ii_bbot < bindex) + iinfo->ii_bbot = bindex; + au_set_h_iptr(inode, bindex, au_igrab(h_inode), flags); + update = 1; + } + au_update_ibrange(inode, /*do_put_zero*/0); + e = au_dy_irefresh(inode); + if (unlikely(e && !err)) + err = e; + if (!err) + au_refresh_hinode_attr(inode, update && isdir); + +out: + AuTraceErr(err); + return err; +} + +static int set_inode(struct inode *inode, struct dentry *dentry) +{ + int err; + unsigned int flags; + umode_t mode; + aufs_bindex_t bindex, btop, btail; + unsigned char isdir; + struct dentry *h_dentry; + struct inode *h_inode; + struct au_iinfo *iinfo; + const struct inode_operations *iop; + + IiMustWriteLock(inode); + + err = 0; + isdir = 0; + iop = au_sbi(inode->i_sb)->si_iop_array; + btop = au_dbtop(dentry); + h_dentry = au_h_dptr(dentry, btop); + h_inode = d_inode(h_dentry); + mode = h_inode->i_mode; + switch (mode & S_IFMT) { + case S_IFREG: + btail = au_dbtail(dentry); + inode->i_op = iop + AuIop_OTHER; + inode->i_fop = &aufs_file_fop; + err = au_dy_iaop(inode, btop, h_inode); + if (unlikely(err)) + goto out; + break; + case S_IFDIR: + isdir = 1; + btail = au_dbtaildir(dentry); + inode->i_op = iop + AuIop_DIR; + inode->i_fop = &aufs_dir_fop; + break; + case S_IFLNK: + btail = au_dbtail(dentry); + inode->i_op = iop + AuIop_SYMLINK; + break; + case S_IFBLK: + case S_IFCHR: + case S_IFIFO: + case S_IFSOCK: + btail = au_dbtail(dentry); + inode->i_op = iop + AuIop_OTHER; + init_special_inode(inode, mode, h_inode->i_rdev); + break; + default: + AuIOErr("Unknown file type 0%o\n", mode); + err = -EIO; + goto out; + } + + /* do not set hnotify for whiteouted dirs (SHWH mode) */ + flags = au_hi_flags(inode, isdir); + if (au_opt_test(au_mntflags(dentry->d_sb), SHWH) + && au_ftest_hi(flags, HNOTIFY) + && dentry->d_name.len > AUFS_WH_PFX_LEN + && !memcmp(dentry->d_name.name, AUFS_WH_PFX, AUFS_WH_PFX_LEN)) + au_fclr_hi(flags, HNOTIFY); + iinfo = au_ii(inode); + iinfo->ii_btop = btop; + iinfo->ii_bbot = btail; + for (bindex = btop; bindex <= btail; bindex++) { + h_dentry = au_h_dptr(dentry, bindex); + if (h_dentry) + au_set_h_iptr(inode, bindex, + au_igrab(d_inode(h_dentry)), flags); + } + au_cpup_attr_all(inode, /*force*/1); + /* + * to force calling aufs_get_acl() every time, + * do not call cache_no_acl() for aufs inode. + */ + +out: + return err; +} + +/* + * successful returns with iinfo write_locked + * minus: errno + * zero: success, matched + * plus: no error, but unmatched + */ +static int reval_inode(struct inode *inode, struct dentry *dentry) +{ + int err; + unsigned int gen, igflags; + aufs_bindex_t bindex, bbot; + struct inode *h_inode, *h_dinode; + struct dentry *h_dentry; + + /* + * before this function, if aufs got any iinfo lock, it must be only + * one, the parent dir. + * it can happen by UDBA and the obsoleted inode number. + */ + err = -EIO; + if (unlikely(inode->i_ino == parent_ino(dentry))) + goto out; + + err = 1; + ii_write_lock_new_child(inode); + h_dentry = au_h_dptr(dentry, au_dbtop(dentry)); + h_dinode = d_inode(h_dentry); + bbot = au_ibbot(inode); + for (bindex = au_ibtop(inode); bindex <= bbot; bindex++) { + h_inode = au_h_iptr(inode, bindex); + if (!h_inode || h_inode != h_dinode) + continue; + + err = 0; + gen = au_iigen(inode, &igflags); + if (gen == au_digen(dentry) + && !au_ig_ftest(igflags, HALF_REFRESHED)) + break; + + /* fully refresh inode using dentry */ + err = au_refresh_hinode(inode, dentry); + if (!err) + au_update_iigen(inode, /*half*/0); + break; + } + + if (unlikely(err)) + ii_write_unlock(inode); +out: + return err; +} + +int au_ino(struct super_block *sb, aufs_bindex_t bindex, ino_t h_ino, + unsigned int d_type, ino_t *ino) +{ + int err, idx; + const int isnondir = d_type != DT_DIR; + + /* prevent hardlinked inode number from race condition */ + if (isnondir) { + err = au_xinondir_enter(sb, bindex, h_ino, &idx); + if (unlikely(err)) + goto out; + } + + err = au_xino_read(sb, bindex, h_ino, ino); + if (unlikely(err)) + goto out_xinondir; + + if (!*ino) { + err = -EIO; + *ino = au_xino_new_ino(sb); + if (unlikely(!*ino)) + goto out_xinondir; + err = au_xino_write(sb, bindex, h_ino, *ino); + if (unlikely(err)) + goto out_xinondir; + } + +out_xinondir: + if (isnondir && idx >= 0) + au_xinondir_leave(sb, bindex, h_ino, idx); +out: + return err; +} + +/* successful returns with iinfo write_locked */ +/* todo: return with unlocked? */ +struct inode *au_new_inode(struct dentry *dentry, int must_new) +{ + struct inode *inode, *h_inode; + struct dentry *h_dentry; + struct super_block *sb; + ino_t h_ino, ino; + int err, idx, hlinked; + aufs_bindex_t btop; + + sb = dentry->d_sb; + btop = au_dbtop(dentry); + h_dentry = au_h_dptr(dentry, btop); + h_inode = d_inode(h_dentry); + h_ino = h_inode->i_ino; + hlinked = !d_is_dir(h_dentry) && h_inode->i_nlink > 1; + +new_ino: + /* + * stop 'race'-ing between hardlinks under different + * parents. + */ + if (hlinked) { + err = au_xinondir_enter(sb, btop, h_ino, &idx); + inode = ERR_PTR(err); + if (unlikely(err)) + goto out; + } + + err = au_xino_read(sb, btop, h_ino, &ino); + inode = ERR_PTR(err); + if (unlikely(err)) + goto out_xinondir; + + if (!ino) { + ino = au_xino_new_ino(sb); + if (unlikely(!ino)) { + inode = ERR_PTR(-EIO); + goto out_xinondir; + } + } + + AuDbg("i%lu\n", (unsigned long)ino); + inode = au_iget_locked(sb, ino); + err = PTR_ERR(inode); + if (IS_ERR(inode)) + goto out_xinondir; + + AuDbg("%lx, new %d\n", inode->i_state, !!(inode->i_state & I_NEW)); + if (inode->i_state & I_NEW) { + ii_write_lock_new_child(inode); + err = set_inode(inode, dentry); + if (!err) { + unlock_new_inode(inode); + goto out_xinondir; /* success */ + } + + /* + * iget_failed() calls iput(), but we need to call + * ii_write_unlock() after iget_failed(). so dirty hack for + * i_count. + */ + atomic_inc(&inode->i_count); + iget_failed(inode); + ii_write_unlock(inode); + au_xino_write(sb, btop, h_ino, /*ino*/0); + /* ignore this error */ + goto out_iput; + } else if (!must_new && !IS_DEADDIR(inode) && inode->i_nlink) { + /* + * horrible race condition between lookup, readdir and copyup + * (or something). + */ + if (hlinked && idx >= 0) + au_xinondir_leave(sb, btop, h_ino, idx); + err = reval_inode(inode, dentry); + if (unlikely(err < 0)) { + hlinked = 0; + goto out_iput; + } + if (!err) + goto out; /* success */ + else if (hlinked && idx >= 0) { + err = au_xinondir_enter(sb, btop, h_ino, &idx); + if (unlikely(err)) { + iput(inode); + inode = ERR_PTR(err); + goto out; + } + } + } + + if (unlikely(au_test_fs_unique_ino(h_inode))) + AuWarn1("Warning: Un-notified UDBA or repeatedly renamed dir," + " b%d, %s, %pd, hi%lu, i%lu.\n", + btop, au_sbtype(h_dentry->d_sb), dentry, + (unsigned long)h_ino, (unsigned long)ino); + ino = 0; + err = au_xino_write(sb, btop, h_ino, /*ino*/0); + if (!err) { + iput(inode); + if (hlinked && idx >= 0) + au_xinondir_leave(sb, btop, h_ino, idx); + goto new_ino; + } + +out_iput: + iput(inode); + inode = ERR_PTR(err); +out_xinondir: + if (hlinked && idx >= 0) + au_xinondir_leave(sb, btop, h_ino, idx); +out: + return inode; +} + +/* ---------------------------------------------------------------------- */ + +int au_test_ro(struct super_block *sb, aufs_bindex_t bindex, + struct inode *inode) +{ + int err; + struct inode *hi; + + err = au_br_rdonly(au_sbr(sb, bindex)); + + /* pseudo-link after flushed may happen out of bounds */ + if (!err + && inode + && au_ibtop(inode) <= bindex + && bindex <= au_ibbot(inode)) { + /* + * permission check is unnecessary since vfsub routine + * will be called later + */ + hi = au_h_iptr(inode, bindex); + if (hi) + err = IS_IMMUTABLE(hi) ? -EROFS : 0; + } + + return err; +} + +int au_test_h_perm(struct inode *h_inode, int mask) +{ + if (uid_eq(current_fsuid(), GLOBAL_ROOT_UID)) + return 0; + return inode_permission(h_inode, mask); +} + +int au_test_h_perm_sio(struct inode *h_inode, int mask) +{ + if (au_test_nfs(h_inode->i_sb) + && (mask & MAY_WRITE) + && S_ISDIR(h_inode->i_mode)) + mask |= MAY_READ; /* force permission check */ + return au_test_h_perm(h_inode, mask); +} --- linux-azure-5.8-5.8.0.orig/fs/aufs/inode.h +++ linux-azure-5.8-5.8.0/fs/aufs/inode.h @@ -0,0 +1,698 @@ +/* SPDX-License-Identifier: GPL-2.0 */ +/* + * Copyright (C) 2005-2020 Junjiro R. Okajima + * + * This program, aufs is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; either version 2 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + */ + +/* + * inode operations + */ + +#ifndef __AUFS_INODE_H__ +#define __AUFS_INODE_H__ + +#ifdef __KERNEL__ + +#include +#include "rwsem.h" + +struct vfsmount; + +struct au_hnotify { +#ifdef CONFIG_AUFS_HNOTIFY +#ifdef CONFIG_AUFS_HFSNOTIFY + /* never use fsnotify_add_vfsmount_mark() */ + struct fsnotify_mark hn_mark; +#endif + struct inode *hn_aufs_inode; /* no get/put */ + struct rcu_head rcu; +#endif +} ____cacheline_aligned_in_smp; + +struct au_hinode { + struct inode *hi_inode; + aufs_bindex_t hi_id; +#ifdef CONFIG_AUFS_HNOTIFY + struct au_hnotify *hi_notify; +#endif + + /* reference to the copied-up whiteout with get/put */ + struct dentry *hi_whdentry; +}; + +/* ig_flags */ +#define AuIG_HALF_REFRESHED 1 +#define au_ig_ftest(flags, name) ((flags) & AuIG_##name) +#define au_ig_fset(flags, name) \ + do { (flags) |= AuIG_##name; } while (0) +#define au_ig_fclr(flags, name) \ + do { (flags) &= ~AuIG_##name; } while (0) + +struct au_iigen { + spinlock_t ig_spin; + __u32 ig_generation, ig_flags; +}; + +struct au_vdir; +struct au_iinfo { + struct au_iigen ii_generation; + struct super_block *ii_hsb1; /* no get/put */ + + struct au_rwsem ii_rwsem; + aufs_bindex_t ii_btop, ii_bbot; + __u32 ii_higen; + struct au_hinode *ii_hinode; + struct au_vdir *ii_vdir; +}; + +struct au_icntnr { + struct au_iinfo iinfo; + struct inode vfs_inode; + struct hlist_bl_node plink; + struct rcu_head rcu; +} ____cacheline_aligned_in_smp; + +/* au_pin flags */ +#define AuPin_DI_LOCKED 1 +#define AuPin_MNT_WRITE (1 << 1) +#define au_ftest_pin(flags, name) ((flags) & AuPin_##name) +#define au_fset_pin(flags, name) \ + do { (flags) |= AuPin_##name; } while (0) +#define au_fclr_pin(flags, name) \ + do { (flags) &= ~AuPin_##name; } while (0) + +struct au_pin { + /* input */ + struct dentry *dentry; + unsigned int udba; + unsigned char lsc_di, lsc_hi, flags; + aufs_bindex_t bindex; + + /* output */ + struct dentry *parent; + struct au_hinode *hdir; + struct vfsmount *h_mnt; + + /* temporary unlock/relock for copyup */ + struct dentry *h_dentry, *h_parent; + struct au_branch *br; + struct task_struct *task; +}; + +void au_pin_hdir_unlock(struct au_pin *p); +int au_pin_hdir_lock(struct au_pin *p); +int au_pin_hdir_relock(struct au_pin *p); +void au_pin_hdir_acquire_nest(struct au_pin *p); +void au_pin_hdir_release(struct au_pin *p); + +/* ---------------------------------------------------------------------- */ + +static inline struct au_iinfo *au_ii(struct inode *inode) +{ + BUG_ON(is_bad_inode(inode)); + return &(container_of(inode, struct au_icntnr, vfs_inode)->iinfo); +} + +/* ---------------------------------------------------------------------- */ + +/* inode.c */ +struct inode *au_igrab(struct inode *inode); +void au_refresh_iop(struct inode *inode, int force_getattr); +int au_refresh_hinode_self(struct inode *inode); +int au_refresh_hinode(struct inode *inode, struct dentry *dentry); +int au_ino(struct super_block *sb, aufs_bindex_t bindex, ino_t h_ino, + unsigned int d_type, ino_t *ino); +struct inode *au_new_inode(struct dentry *dentry, int must_new); +int au_test_ro(struct super_block *sb, aufs_bindex_t bindex, + struct inode *inode); +int au_test_h_perm(struct inode *h_inode, int mask); +int au_test_h_perm_sio(struct inode *h_inode, int mask); + +static inline int au_wh_ino(struct super_block *sb, aufs_bindex_t bindex, + ino_t h_ino, unsigned int d_type, ino_t *ino) +{ +#ifdef CONFIG_AUFS_SHWH + return au_ino(sb, bindex, h_ino, d_type, ino); +#else + return 0; +#endif +} + +/* i_op.c */ +enum { + AuIop_SYMLINK, + AuIop_DIR, + AuIop_OTHER, + AuIop_Last +}; +extern struct inode_operations aufs_iop[AuIop_Last], /* not const */ + aufs_iop_nogetattr[AuIop_Last]; + +/* au_wr_dir flags */ +#define AuWrDir_ADD_ENTRY 1 +#define AuWrDir_ISDIR (1 << 1) +#define AuWrDir_TMPFILE (1 << 2) +#define au_ftest_wrdir(flags, name) ((flags) & AuWrDir_##name) +#define au_fset_wrdir(flags, name) \ + do { (flags) |= AuWrDir_##name; } while (0) +#define au_fclr_wrdir(flags, name) \ + do { (flags) &= ~AuWrDir_##name; } while (0) + +struct au_wr_dir_args { + aufs_bindex_t force_btgt; + unsigned char flags; +}; +int au_wr_dir(struct dentry *dentry, struct dentry *src_dentry, + struct au_wr_dir_args *args); + +struct dentry *au_pinned_h_parent(struct au_pin *pin); +void au_pin_init(struct au_pin *pin, struct dentry *dentry, + aufs_bindex_t bindex, int lsc_di, int lsc_hi, + unsigned int udba, unsigned char flags); +int au_pin(struct au_pin *pin, struct dentry *dentry, aufs_bindex_t bindex, + unsigned int udba, unsigned char flags) __must_check; +int au_do_pin(struct au_pin *pin) __must_check; +void au_unpin(struct au_pin *pin); +int au_reval_for_attr(struct dentry *dentry, unsigned int sigen); + +#define AuIcpup_DID_CPUP 1 +#define au_ftest_icpup(flags, name) ((flags) & AuIcpup_##name) +#define au_fset_icpup(flags, name) \ + do { (flags) |= AuIcpup_##name; } while (0) +#define au_fclr_icpup(flags, name) \ + do { (flags) &= ~AuIcpup_##name; } while (0) + +struct au_icpup_args { + unsigned char flags; + unsigned char pin_flags; + aufs_bindex_t btgt; + unsigned int udba; + struct au_pin pin; + struct path h_path; + struct inode *h_inode; +}; + +int au_pin_and_icpup(struct dentry *dentry, struct iattr *ia, + struct au_icpup_args *a); + +int au_h_path_getattr(struct dentry *dentry, struct inode *inode, int force, + struct path *h_path, int locked); + +/* i_op_add.c */ +int au_may_add(struct dentry *dentry, aufs_bindex_t bindex, + struct dentry *h_parent, int isdir); +int aufs_mknod(struct inode *dir, struct dentry *dentry, umode_t mode, + dev_t dev); +int aufs_symlink(struct inode *dir, struct dentry *dentry, const char *symname); +int aufs_create(struct inode *dir, struct dentry *dentry, umode_t mode, + bool want_excl); +struct vfsub_aopen_args; +int au_aopen_or_create(struct inode *dir, struct dentry *dentry, + struct vfsub_aopen_args *args); +int aufs_tmpfile(struct inode *dir, struct dentry *dentry, umode_t mode); +int aufs_link(struct dentry *src_dentry, struct inode *dir, + struct dentry *dentry); +int aufs_mkdir(struct inode *dir, struct dentry *dentry, umode_t mode); + +/* i_op_del.c */ +int au_wr_dir_need_wh(struct dentry *dentry, int isdir, aufs_bindex_t *bcpup); +int au_may_del(struct dentry *dentry, aufs_bindex_t bindex, + struct dentry *h_parent, int isdir); +int aufs_unlink(struct inode *dir, struct dentry *dentry); +int aufs_rmdir(struct inode *dir, struct dentry *dentry); + +/* i_op_ren.c */ +int au_wbr(struct dentry *dentry, aufs_bindex_t btgt); +int aufs_rename(struct inode *src_dir, struct dentry *src_dentry, + struct inode *dir, struct dentry *dentry, + unsigned int flags); + +/* iinfo.c */ +struct inode *au_h_iptr(struct inode *inode, aufs_bindex_t bindex); +void au_hiput(struct au_hinode *hinode); +void au_set_hi_wh(struct inode *inode, aufs_bindex_t bindex, + struct dentry *h_wh); +unsigned int au_hi_flags(struct inode *inode, int isdir); + +/* hinode flags */ +#define AuHi_XINO 1 +#define AuHi_HNOTIFY (1 << 1) +#define au_ftest_hi(flags, name) ((flags) & AuHi_##name) +#define au_fset_hi(flags, name) \ + do { (flags) |= AuHi_##name; } while (0) +#define au_fclr_hi(flags, name) \ + do { (flags) &= ~AuHi_##name; } while (0) + +#ifndef CONFIG_AUFS_HNOTIFY +#undef AuHi_HNOTIFY +#define AuHi_HNOTIFY 0 +#endif + +void au_set_h_iptr(struct inode *inode, aufs_bindex_t bindex, + struct inode *h_inode, unsigned int flags); + +void au_update_iigen(struct inode *inode, int half); +void au_update_ibrange(struct inode *inode, int do_put_zero); + +void au_icntnr_init_once(void *_c); +void au_hinode_init(struct au_hinode *hinode); +int au_iinfo_init(struct inode *inode); +void au_iinfo_fin(struct inode *inode); +int au_hinode_realloc(struct au_iinfo *iinfo, int nbr, int may_shrink); + +#ifdef CONFIG_PROC_FS +/* plink.c */ +int au_plink_maint(struct super_block *sb, int flags); +struct au_sbinfo; +void au_plink_maint_leave(struct au_sbinfo *sbinfo); +int au_plink_maint_enter(struct super_block *sb); +#ifdef CONFIG_AUFS_DEBUG +void au_plink_list(struct super_block *sb); +#else +AuStubVoid(au_plink_list, struct super_block *sb) +#endif +int au_plink_test(struct inode *inode); +struct dentry *au_plink_lkup(struct inode *inode, aufs_bindex_t bindex); +void au_plink_append(struct inode *inode, aufs_bindex_t bindex, + struct dentry *h_dentry); +void au_plink_put(struct super_block *sb, int verbose); +void au_plink_clean(struct super_block *sb, int verbose); +void au_plink_half_refresh(struct super_block *sb, aufs_bindex_t br_id); +#else +AuStubInt0(au_plink_maint, struct super_block *sb, int flags); +AuStubVoid(au_plink_maint_leave, struct au_sbinfo *sbinfo); +AuStubInt0(au_plink_maint_enter, struct super_block *sb); +AuStubVoid(au_plink_list, struct super_block *sb); +AuStubInt0(au_plink_test, struct inode *inode); +AuStub(struct dentry *, au_plink_lkup, return NULL, + struct inode *inode, aufs_bindex_t bindex); +AuStubVoid(au_plink_append, struct inode *inode, aufs_bindex_t bindex, + struct dentry *h_dentry); +AuStubVoid(au_plink_put, struct super_block *sb, int verbose); +AuStubVoid(au_plink_clean, struct super_block *sb, int verbose); +AuStubVoid(au_plink_half_refresh, struct super_block *sb, aufs_bindex_t br_id); +#endif /* CONFIG_PROC_FS */ + +#ifdef CONFIG_AUFS_XATTR +/* xattr.c */ +int au_cpup_xattr(struct dentry *h_dst, struct dentry *h_src, int ignore_flags, + unsigned int verbose); +ssize_t aufs_listxattr(struct dentry *dentry, char *list, size_t size); +void au_xattr_init(struct super_block *sb); +#else +AuStubInt0(au_cpup_xattr, struct dentry *h_dst, struct dentry *h_src, + int ignore_flags, unsigned int verbose); +AuStubVoid(au_xattr_init, struct super_block *sb); +#endif + +#ifdef CONFIG_FS_POSIX_ACL +struct posix_acl *aufs_get_acl(struct inode *inode, int type); +int aufs_set_acl(struct inode *inode, struct posix_acl *acl, int type); +#endif + +#if IS_ENABLED(CONFIG_AUFS_XATTR) || IS_ENABLED(CONFIG_FS_POSIX_ACL) +enum { + AU_XATTR_SET, + AU_ACL_SET +}; + +struct au_sxattr { + int type; + union { + struct { + const char *name; + const void *value; + size_t size; + int flags; + } set; + struct { + struct posix_acl *acl; + int type; + } acl_set; + } u; +}; +ssize_t au_sxattr(struct dentry *dentry, struct inode *inode, + struct au_sxattr *arg); +#endif + +/* ---------------------------------------------------------------------- */ + +/* lock subclass for iinfo */ +enum { + AuLsc_II_CHILD, /* child first */ + AuLsc_II_CHILD2, /* rename(2), link(2), and cpup at hnotify */ + AuLsc_II_CHILD3, /* copyup dirs */ + AuLsc_II_PARENT, /* see AuLsc_I_PARENT in vfsub.h */ + AuLsc_II_PARENT2, + AuLsc_II_PARENT3, /* copyup dirs */ + AuLsc_II_NEW_CHILD +}; + +/* + * ii_read_lock_child, ii_write_lock_child, + * ii_read_lock_child2, ii_write_lock_child2, + * ii_read_lock_child3, ii_write_lock_child3, + * ii_read_lock_parent, ii_write_lock_parent, + * ii_read_lock_parent2, ii_write_lock_parent2, + * ii_read_lock_parent3, ii_write_lock_parent3, + * ii_read_lock_new_child, ii_write_lock_new_child, + */ +#define AuReadLockFunc(name, lsc) \ +static inline void ii_read_lock_##name(struct inode *i) \ +{ \ + au_rw_read_lock_nested(&au_ii(i)->ii_rwsem, AuLsc_II_##lsc); \ +} + +#define AuWriteLockFunc(name, lsc) \ +static inline void ii_write_lock_##name(struct inode *i) \ +{ \ + au_rw_write_lock_nested(&au_ii(i)->ii_rwsem, AuLsc_II_##lsc); \ +} + +#define AuRWLockFuncs(name, lsc) \ + AuReadLockFunc(name, lsc) \ + AuWriteLockFunc(name, lsc) + +AuRWLockFuncs(child, CHILD); +AuRWLockFuncs(child2, CHILD2); +AuRWLockFuncs(child3, CHILD3); +AuRWLockFuncs(parent, PARENT); +AuRWLockFuncs(parent2, PARENT2); +AuRWLockFuncs(parent3, PARENT3); +AuRWLockFuncs(new_child, NEW_CHILD); + +#undef AuReadLockFunc +#undef AuWriteLockFunc +#undef AuRWLockFuncs + +#define ii_read_unlock(i) au_rw_read_unlock(&au_ii(i)->ii_rwsem) +#define ii_write_unlock(i) au_rw_write_unlock(&au_ii(i)->ii_rwsem) +#define ii_downgrade_lock(i) au_rw_dgrade_lock(&au_ii(i)->ii_rwsem) + +#define IiMustNoWaiters(i) AuRwMustNoWaiters(&au_ii(i)->ii_rwsem) +#define IiMustAnyLock(i) AuRwMustAnyLock(&au_ii(i)->ii_rwsem) +#define IiMustWriteLock(i) AuRwMustWriteLock(&au_ii(i)->ii_rwsem) + +/* ---------------------------------------------------------------------- */ + +static inline void au_icntnr_init(struct au_icntnr *c) +{ +#ifdef CONFIG_AUFS_DEBUG + c->vfs_inode.i_mode = 0; +#endif +} + +static inline unsigned int au_iigen(struct inode *inode, unsigned int *igflags) +{ + unsigned int gen; + struct au_iinfo *iinfo; + struct au_iigen *iigen; + + iinfo = au_ii(inode); + iigen = &iinfo->ii_generation; + spin_lock(&iigen->ig_spin); + if (igflags) + *igflags = iigen->ig_flags; + gen = iigen->ig_generation; + spin_unlock(&iigen->ig_spin); + + return gen; +} + +/* tiny test for inode number */ +/* tmpfs generation is too rough */ +static inline int au_test_higen(struct inode *inode, struct inode *h_inode) +{ + struct au_iinfo *iinfo; + + iinfo = au_ii(inode); + AuRwMustAnyLock(&iinfo->ii_rwsem); + return !(iinfo->ii_hsb1 == h_inode->i_sb + && iinfo->ii_higen == h_inode->i_generation); +} + +static inline void au_iigen_dec(struct inode *inode) +{ + struct au_iinfo *iinfo; + struct au_iigen *iigen; + + iinfo = au_ii(inode); + iigen = &iinfo->ii_generation; + spin_lock(&iigen->ig_spin); + iigen->ig_generation--; + spin_unlock(&iigen->ig_spin); +} + +static inline int au_iigen_test(struct inode *inode, unsigned int sigen) +{ + int err; + + err = 0; + if (unlikely(inode && au_iigen(inode, NULL) != sigen)) + err = -EIO; + + return err; +} + +/* ---------------------------------------------------------------------- */ + +static inline struct au_hinode *au_hinode(struct au_iinfo *iinfo, + aufs_bindex_t bindex) +{ + return iinfo->ii_hinode + bindex; +} + +static inline int au_is_bad_inode(struct inode *inode) +{ + return !!(is_bad_inode(inode) || !au_hinode(au_ii(inode), 0)); +} + +static inline aufs_bindex_t au_ii_br_id(struct inode *inode, + aufs_bindex_t bindex) +{ + IiMustAnyLock(inode); + return au_hinode(au_ii(inode), bindex)->hi_id; +} + +static inline aufs_bindex_t au_ibtop(struct inode *inode) +{ + IiMustAnyLock(inode); + return au_ii(inode)->ii_btop; +} + +static inline aufs_bindex_t au_ibbot(struct inode *inode) +{ + IiMustAnyLock(inode); + return au_ii(inode)->ii_bbot; +} + +static inline struct au_vdir *au_ivdir(struct inode *inode) +{ + IiMustAnyLock(inode); + return au_ii(inode)->ii_vdir; +} + +static inline struct dentry *au_hi_wh(struct inode *inode, aufs_bindex_t bindex) +{ + IiMustAnyLock(inode); + return au_hinode(au_ii(inode), bindex)->hi_whdentry; +} + +static inline void au_set_ibtop(struct inode *inode, aufs_bindex_t bindex) +{ + IiMustWriteLock(inode); + au_ii(inode)->ii_btop = bindex; +} + +static inline void au_set_ibbot(struct inode *inode, aufs_bindex_t bindex) +{ + IiMustWriteLock(inode); + au_ii(inode)->ii_bbot = bindex; +} + +static inline void au_set_ivdir(struct inode *inode, struct au_vdir *vdir) +{ + IiMustWriteLock(inode); + au_ii(inode)->ii_vdir = vdir; +} + +static inline struct au_hinode *au_hi(struct inode *inode, aufs_bindex_t bindex) +{ + IiMustAnyLock(inode); + return au_hinode(au_ii(inode), bindex); +} + +/* ---------------------------------------------------------------------- */ + +static inline struct dentry *au_pinned_parent(struct au_pin *pin) +{ + if (pin) + return pin->parent; + return NULL; +} + +static inline struct inode *au_pinned_h_dir(struct au_pin *pin) +{ + if (pin && pin->hdir) + return pin->hdir->hi_inode; + return NULL; +} + +static inline struct au_hinode *au_pinned_hdir(struct au_pin *pin) +{ + if (pin) + return pin->hdir; + return NULL; +} + +static inline void au_pin_set_dentry(struct au_pin *pin, struct dentry *dentry) +{ + if (pin) + pin->dentry = dentry; +} + +static inline void au_pin_set_parent_lflag(struct au_pin *pin, + unsigned char lflag) +{ + if (pin) { + if (lflag) + au_fset_pin(pin->flags, DI_LOCKED); + else + au_fclr_pin(pin->flags, DI_LOCKED); + } +} + +#if 0 /* reserved */ +static inline void au_pin_set_parent(struct au_pin *pin, struct dentry *parent) +{ + if (pin) { + dput(pin->parent); + pin->parent = dget(parent); + } +} +#endif + +/* ---------------------------------------------------------------------- */ + +struct au_branch; +#ifdef CONFIG_AUFS_HNOTIFY +struct au_hnotify_op { + void (*ctl)(struct au_hinode *hinode, int do_set); + int (*alloc)(struct au_hinode *hinode); + + /* + * if it returns true, the the caller should free hinode->hi_notify, + * otherwise ->free() frees it. + */ + int (*free)(struct au_hinode *hinode, + struct au_hnotify *hn) __must_check; + + void (*fin)(void); + int (*init)(void); + + int (*reset_br)(unsigned int udba, struct au_branch *br, int perm); + void (*fin_br)(struct au_branch *br); + int (*init_br)(struct au_branch *br, int perm); +}; + +/* hnotify.c */ +int au_hn_alloc(struct au_hinode *hinode, struct inode *inode); +void au_hn_free(struct au_hinode *hinode); +void au_hn_ctl(struct au_hinode *hinode, int do_set); +void au_hn_reset(struct inode *inode, unsigned int flags); +int au_hnotify(struct inode *h_dir, struct au_hnotify *hnotify, u32 mask, + const struct qstr *h_child_qstr, struct inode *h_child_inode); +int au_hnotify_reset_br(unsigned int udba, struct au_branch *br, int perm); +int au_hnotify_init_br(struct au_branch *br, int perm); +void au_hnotify_fin_br(struct au_branch *br); +int __init au_hnotify_init(void); +void au_hnotify_fin(void); + +/* hfsnotify.c */ +extern const struct au_hnotify_op au_hnotify_op; + +static inline +void au_hn_init(struct au_hinode *hinode) +{ + hinode->hi_notify = NULL; +} + +static inline struct au_hnotify *au_hn(struct au_hinode *hinode) +{ + return hinode->hi_notify; +} + +#else +AuStub(int, au_hn_alloc, return -EOPNOTSUPP, + struct au_hinode *hinode __maybe_unused, + struct inode *inode __maybe_unused) +AuStub(struct au_hnotify *, au_hn, return NULL, struct au_hinode *hinode) +AuStubVoid(au_hn_free, struct au_hinode *hinode __maybe_unused) +AuStubVoid(au_hn_ctl, struct au_hinode *hinode __maybe_unused, + int do_set __maybe_unused) +AuStubVoid(au_hn_reset, struct inode *inode __maybe_unused, + unsigned int flags __maybe_unused) +AuStubInt0(au_hnotify_reset_br, unsigned int udba __maybe_unused, + struct au_branch *br __maybe_unused, + int perm __maybe_unused) +AuStubInt0(au_hnotify_init_br, struct au_branch *br __maybe_unused, + int perm __maybe_unused) +AuStubVoid(au_hnotify_fin_br, struct au_branch *br __maybe_unused) +AuStubInt0(__init au_hnotify_init, void) +AuStubVoid(au_hnotify_fin, void) +AuStubVoid(au_hn_init, struct au_hinode *hinode __maybe_unused) +#endif /* CONFIG_AUFS_HNOTIFY */ + +static inline void au_hn_suspend(struct au_hinode *hdir) +{ + au_hn_ctl(hdir, /*do_set*/0); +} + +static inline void au_hn_resume(struct au_hinode *hdir) +{ + au_hn_ctl(hdir, /*do_set*/1); +} + +static inline void au_hn_inode_lock(struct au_hinode *hdir) +{ + inode_lock(hdir->hi_inode); + au_hn_suspend(hdir); +} + +static inline void au_hn_inode_lock_nested(struct au_hinode *hdir, + unsigned int sc __maybe_unused) +{ + inode_lock_nested(hdir->hi_inode, sc); + au_hn_suspend(hdir); +} + +#if 0 /* unused */ +#include "vfsub.h" +static inline void au_hn_inode_lock_shared_nested(struct au_hinode *hdir, + unsigned int sc) +{ + inode_lock_shared_nested(hdir->hi_inode, sc); + au_hn_suspend(hdir); +} +#endif + +static inline void au_hn_inode_unlock(struct au_hinode *hdir) +{ + au_hn_resume(hdir); + inode_unlock(hdir->hi_inode); +} + +#endif /* __KERNEL__ */ +#endif /* __AUFS_INODE_H__ */ --- linux-azure-5.8-5.8.0.orig/fs/aufs/ioctl.c +++ linux-azure-5.8-5.8.0/fs/aufs/ioctl.c @@ -0,0 +1,220 @@ +// SPDX-License-Identifier: GPL-2.0 +/* + * Copyright (C) 2005-2020 Junjiro R. Okajima + * + * This program, aufs is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; either version 2 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + */ + +/* + * ioctl + * plink-management and readdir in userspace. + * assist the pathconf(3) wrapper library. + * move-down + * File-based Hierarchical Storage Management. + */ + +#include +#include +#include "aufs.h" + +static int au_wbr_fd(struct path *path, struct aufs_wbr_fd __user *arg) +{ + int err, fd; + aufs_bindex_t wbi, bindex, bbot; + struct file *h_file; + struct super_block *sb; + struct dentry *root; + struct au_branch *br; + struct aufs_wbr_fd wbrfd = { + .oflags = au_dir_roflags, + .brid = -1 + }; + const int valid = O_RDONLY | O_NONBLOCK | O_LARGEFILE | O_DIRECTORY + | O_NOATIME | O_CLOEXEC; + + AuDebugOn(wbrfd.oflags & ~valid); + + if (arg) { + err = copy_from_user(&wbrfd, arg, sizeof(wbrfd)); + if (unlikely(err)) { + err = -EFAULT; + goto out; + } + + err = -EINVAL; + AuDbg("wbrfd{0%o, %d}\n", wbrfd.oflags, wbrfd.brid); + wbrfd.oflags |= au_dir_roflags; + AuDbg("0%o\n", wbrfd.oflags); + if (unlikely(wbrfd.oflags & ~valid)) + goto out; + } + + fd = get_unused_fd_flags(0); + err = fd; + if (unlikely(fd < 0)) + goto out; + + h_file = ERR_PTR(-EINVAL); + wbi = 0; + br = NULL; + sb = path->dentry->d_sb; + root = sb->s_root; + aufs_read_lock(root, AuLock_IR); + bbot = au_sbbot(sb); + if (wbrfd.brid >= 0) { + wbi = au_br_index(sb, wbrfd.brid); + if (unlikely(wbi < 0 || wbi > bbot)) + goto out_unlock; + } + + h_file = ERR_PTR(-ENOENT); + br = au_sbr(sb, wbi); + if (!au_br_writable(br->br_perm)) { + if (arg) + goto out_unlock; + + bindex = wbi + 1; + wbi = -1; + for (; bindex <= bbot; bindex++) { + br = au_sbr(sb, bindex); + if (au_br_writable(br->br_perm)) { + wbi = bindex; + br = au_sbr(sb, wbi); + break; + } + } + } + AuDbg("wbi %d\n", wbi); + if (wbi >= 0) + h_file = au_h_open(root, wbi, wbrfd.oflags, NULL, + /*force_wr*/0); + +out_unlock: + aufs_read_unlock(root, AuLock_IR); + err = PTR_ERR(h_file); + if (IS_ERR(h_file)) + goto out_fd; + + au_lcnt_dec(&br->br_nfiles); /* cf. au_h_open() */ + fd_install(fd, h_file); + err = fd; + goto out; /* success */ + +out_fd: + put_unused_fd(fd); +out: + AuTraceErr(err); + return err; +} + +/* ---------------------------------------------------------------------- */ + +long aufs_ioctl_dir(struct file *file, unsigned int cmd, unsigned long arg) +{ + long err; + struct dentry *dentry; + + switch (cmd) { + case AUFS_CTL_RDU: + case AUFS_CTL_RDU_INO: + err = au_rdu_ioctl(file, cmd, arg); + break; + + case AUFS_CTL_WBR_FD: + err = au_wbr_fd(&file->f_path, (void __user *)arg); + break; + + case AUFS_CTL_IBUSY: + err = au_ibusy_ioctl(file, arg); + break; + + case AUFS_CTL_BRINFO: + err = au_brinfo_ioctl(file, arg); + break; + + case AUFS_CTL_FHSM_FD: + dentry = file->f_path.dentry; + if (IS_ROOT(dentry)) + err = au_fhsm_fd(dentry->d_sb, arg); + else + err = -ENOTTY; + break; + + default: + /* do not call the lower */ + AuDbg("0x%x\n", cmd); + err = -ENOTTY; + } + + AuTraceErr(err); + return err; +} + +long aufs_ioctl_nondir(struct file *file, unsigned int cmd, unsigned long arg) +{ + long err; + + switch (cmd) { + case AUFS_CTL_MVDOWN: + err = au_mvdown(file->f_path.dentry, (void __user *)arg); + break; + + case AUFS_CTL_WBR_FD: + err = au_wbr_fd(&file->f_path, (void __user *)arg); + break; + + default: + /* do not call the lower */ + AuDbg("0x%x\n", cmd); + err = -ENOTTY; + } + + AuTraceErr(err); + return err; +} + +#ifdef CONFIG_COMPAT +long aufs_compat_ioctl_dir(struct file *file, unsigned int cmd, + unsigned long arg) +{ + long err; + + switch (cmd) { + case AUFS_CTL_RDU: + case AUFS_CTL_RDU_INO: + err = au_rdu_compat_ioctl(file, cmd, arg); + break; + + case AUFS_CTL_IBUSY: + err = au_ibusy_compat_ioctl(file, arg); + break; + + case AUFS_CTL_BRINFO: + err = au_brinfo_compat_ioctl(file, arg); + break; + + default: + err = aufs_ioctl_dir(file, cmd, arg); + } + + AuTraceErr(err); + return err; +} + +long aufs_compat_ioctl_nondir(struct file *file, unsigned int cmd, + unsigned long arg) +{ + return aufs_ioctl_nondir(file, cmd, (unsigned long)compat_ptr(arg)); +} +#endif --- linux-azure-5.8-5.8.0.orig/fs/aufs/lcnt.h +++ linux-azure-5.8-5.8.0/fs/aufs/lcnt.h @@ -0,0 +1,186 @@ +/* SPDX-License-Identifier: GPL-2.0 */ +/* + * Copyright (C) 2018-2020 Junjiro R. Okajima + * + * This program, aufs is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; either version 2 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + */ + +/* + * simple long counter wrapper + */ + +#ifndef __AUFS_LCNT_H__ +#define __AUFS_LCNT_H__ + +#ifdef __KERNEL__ + +#include "debug.h" + +#define AuLCntATOMIC 1 +#define AuLCntPCPUCNT 2 +/* + * why does percpu_refcount require extra synchronize_rcu()s in + * au_br_do_free() + */ +#define AuLCntPCPUREF 3 + +/* #define AuLCntChosen AuLCntATOMIC */ +#define AuLCntChosen AuLCntPCPUCNT +/* #define AuLCntChosen AuLCntPCPUREF */ + +#if AuLCntChosen == AuLCntATOMIC +#include + +typedef atomic_long_t au_lcnt_t; + +static inline int au_lcnt_init(au_lcnt_t *cnt, void *release __maybe_unused) +{ + atomic_long_set(cnt, 0); + return 0; +} + +static inline void au_lcnt_wait_for_fin(au_lcnt_t *cnt __maybe_unused) +{ + /* empty */ +} + +static inline void au_lcnt_fin(au_lcnt_t *cnt __maybe_unused, + int do_sync __maybe_unused) +{ + /* empty */ +} + +static inline void au_lcnt_inc(au_lcnt_t *cnt) +{ + atomic_long_inc(cnt); +} + +static inline void au_lcnt_dec(au_lcnt_t *cnt) +{ + atomic_long_dec(cnt); +} + +static inline long au_lcnt_read(au_lcnt_t *cnt, int do_rev __maybe_unused) +{ + return atomic_long_read(cnt); +} +#endif + +#if AuLCntChosen == AuLCntPCPUCNT +#include + +typedef struct percpu_counter au_lcnt_t; + +static inline int au_lcnt_init(au_lcnt_t *cnt, void *release __maybe_unused) +{ + return percpu_counter_init(cnt, 0, GFP_NOFS); +} + +static inline void au_lcnt_wait_for_fin(au_lcnt_t *cnt __maybe_unused) +{ + /* empty */ +} + +static inline void au_lcnt_fin(au_lcnt_t *cnt, int do_sync __maybe_unused) +{ + percpu_counter_destroy(cnt); +} + +static inline void au_lcnt_inc(au_lcnt_t *cnt) +{ + percpu_counter_inc(cnt); +} + +static inline void au_lcnt_dec(au_lcnt_t *cnt) +{ + percpu_counter_dec(cnt); +} + +static inline long au_lcnt_read(au_lcnt_t *cnt, int do_rev __maybe_unused) +{ + s64 n; + + n = percpu_counter_sum(cnt); + BUG_ON(n < 0); + if (LONG_MAX != LLONG_MAX + && n > LONG_MAX) + AuWarn1("%s\n", "wrap-around"); + + return n; +} +#endif + +#if AuLCntChosen == AuLCntPCPUREF +#include + +typedef struct percpu_ref au_lcnt_t; + +static inline int au_lcnt_init(au_lcnt_t *cnt, percpu_ref_func_t *release) +{ + if (!release) + release = percpu_ref_exit; + return percpu_ref_init(cnt, release, /*percpu mode*/0, GFP_NOFS); +} + +static inline void au_lcnt_wait_for_fin(au_lcnt_t *cnt __maybe_unused) +{ + synchronize_rcu(); +} + +static inline void au_lcnt_fin(au_lcnt_t *cnt, int do_sync) +{ + percpu_ref_kill(cnt); + if (do_sync) + au_lcnt_wait_for_fin(cnt); +} + +static inline void au_lcnt_inc(au_lcnt_t *cnt) +{ + percpu_ref_get(cnt); +} + +static inline void au_lcnt_dec(au_lcnt_t *cnt) +{ + percpu_ref_put(cnt); +} + +/* + * avoid calling this func as possible. + */ +static inline long au_lcnt_read(au_lcnt_t *cnt, int do_rev) +{ + long l; + + percpu_ref_switch_to_atomic_sync(cnt); + l = atomic_long_read(&cnt->count); + if (do_rev) + percpu_ref_switch_to_percpu(cnt); + + /* percpu_ref is initialized by 1 instead of 0 */ + return l - 1; +} +#endif + +#ifdef CONFIG_AUFS_DEBUG +#define AuLCntZero(val) do { \ + long l = val; \ + if (l) \ + AuDbg("%s = %ld\n", #val, l); \ +} while (0) +#else +#define AuLCntZero(val) do {} while (0) +#endif + +#endif /* __KERNEL__ */ +#endif /* __AUFS_LCNT_H__ */ --- linux-azure-5.8-5.8.0.orig/fs/aufs/loop.c +++ linux-azure-5.8-5.8.0/fs/aufs/loop.c @@ -0,0 +1,164 @@ +// SPDX-License-Identifier: GPL-2.0 +/* + * Copyright (C) 2005-2020 Junjiro R. Okajima + * + * This program, aufs is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; either version 2 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + */ + +/* + * support for loopback block device as a branch + */ + +#include "aufs.h" + +/* added into drivers/block/loop.c */ +static struct file *(*backing_file_func)(struct super_block *sb); + +/* + * test if two lower dentries have overlapping branches. + */ +int au_test_loopback_overlap(struct super_block *sb, struct dentry *h_adding) +{ + struct super_block *h_sb; + struct file *backing_file; + + if (unlikely(!backing_file_func)) { + /* don't load "loop" module here */ + backing_file_func = symbol_get(loop_backing_file); + if (unlikely(!backing_file_func)) + /* "loop" module is not loaded */ + return 0; + } + + h_sb = h_adding->d_sb; + backing_file = backing_file_func(h_sb); + if (!backing_file) + return 0; + + h_adding = backing_file->f_path.dentry; + /* + * h_adding can be local NFS. + * in this case aufs cannot detect the loop. + */ + if (unlikely(h_adding->d_sb == sb)) + return 1; + return !!au_test_subdir(h_adding, sb->s_root); +} + +/* true if a kernel thread named 'loop[0-9].*' accesses a file */ +int au_test_loopback_kthread(void) +{ + int ret; + struct task_struct *tsk = current; + char c, comm[sizeof(tsk->comm)]; + + ret = 0; + if (tsk->flags & PF_KTHREAD) { + get_task_comm(comm, tsk); + c = comm[4]; + ret = ('0' <= c && c <= '9' + && !strncmp(comm, "loop", 4)); + } + + return ret; +} + +/* ---------------------------------------------------------------------- */ + +#define au_warn_loopback_step 16 +static int au_warn_loopback_nelem = au_warn_loopback_step; +static unsigned long *au_warn_loopback_array; + +void au_warn_loopback(struct super_block *h_sb) +{ + int i, new_nelem; + unsigned long *a, magic; + static DEFINE_SPINLOCK(spin); + + magic = h_sb->s_magic; + spin_lock(&spin); + a = au_warn_loopback_array; + for (i = 0; i < au_warn_loopback_nelem && *a; i++) + if (a[i] == magic) { + spin_unlock(&spin); + return; + } + + /* h_sb is new to us, print it */ + if (i < au_warn_loopback_nelem) { + a[i] = magic; + goto pr; + } + + /* expand the array */ + new_nelem = au_warn_loopback_nelem + au_warn_loopback_step; + a = au_kzrealloc(au_warn_loopback_array, + au_warn_loopback_nelem * sizeof(unsigned long), + new_nelem * sizeof(unsigned long), GFP_ATOMIC, + /*may_shrink*/0); + if (a) { + au_warn_loopback_nelem = new_nelem; + au_warn_loopback_array = a; + a[i] = magic; + goto pr; + } + + spin_unlock(&spin); + AuWarn1("realloc failed, ignored\n"); + return; + +pr: + spin_unlock(&spin); + pr_warn("you may want to try another patch for loopback file " + "on %s(0x%lx) branch\n", au_sbtype(h_sb), magic); +} + +int au_loopback_init(void) +{ + int err; + struct super_block *sb __maybe_unused; + + BUILD_BUG_ON(sizeof(sb->s_magic) != sizeof(*au_warn_loopback_array)); + + err = 0; + au_warn_loopback_array = kcalloc(au_warn_loopback_step, + sizeof(unsigned long), GFP_NOFS); + if (unlikely(!au_warn_loopback_array)) + err = -ENOMEM; + + return err; +} + +void au_loopback_fin(void) +{ + if (backing_file_func) + symbol_put(loop_backing_file); + au_kfree_try_rcu(au_warn_loopback_array); +} + +/* ---------------------------------------------------------------------- */ + +/* support the loopback block device insude aufs */ + +struct file *aufs_real_loop(struct file *file) +{ + struct file *f; + + BUG_ON(!au_test_aufs(file->f_path.dentry->d_sb)); + fi_read_lock(file); + f = au_hf_top(file); + fi_read_unlock(file); + AuDebugOn(!f); + return f; +} --- linux-azure-5.8-5.8.0.orig/fs/aufs/loop.h +++ linux-azure-5.8-5.8.0/fs/aufs/loop.h @@ -0,0 +1,59 @@ +/* SPDX-License-Identifier: GPL-2.0 */ +/* + * Copyright (C) 2005-2020 Junjiro R. Okajima + * + * This program, aufs is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; either version 2 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + */ + +/* + * support for loopback mount as a branch + */ + +#ifndef __AUFS_LOOP_H__ +#define __AUFS_LOOP_H__ + +#ifdef __KERNEL__ + +struct dentry; +struct super_block; + +#ifdef CONFIG_AUFS_BDEV_LOOP +/* drivers/block/loop.c */ +struct file *loop_backing_file(struct super_block *sb); + +/* loop.c */ +int au_test_loopback_overlap(struct super_block *sb, struct dentry *h_adding); +int au_test_loopback_kthread(void); +void au_warn_loopback(struct super_block *h_sb); + +int au_loopback_init(void); +void au_loopback_fin(void); + +struct file *aufs_real_loop(struct file *file); +#else +AuStub(struct file *, loop_backing_file, return NULL, struct super_block *sb) + +AuStubInt0(au_test_loopback_overlap, struct super_block *sb, + struct dentry *h_adding) +AuStubInt0(au_test_loopback_kthread, void) +AuStubVoid(au_warn_loopback, struct super_block *h_sb) + +AuStubInt0(au_loopback_init, void) +AuStubVoid(au_loopback_fin, void) + +AuStub(struct file *, aufs_real_loop, return NULL, struct file *file) +#endif /* BLK_DEV_LOOP */ + +#endif /* __KERNEL__ */ +#endif /* __AUFS_LOOP_H__ */ --- linux-azure-5.8-5.8.0.orig/fs/aufs/magic.mk +++ linux-azure-5.8-5.8.0/fs/aufs/magic.mk @@ -0,0 +1,31 @@ +# SPDX-License-Identifier: GPL-2.0 + +# defined in ${srctree}/fs/fuse/inode.c +# tristate +ifdef CONFIG_FUSE_FS +ccflags-y += -DFUSE_SUPER_MAGIC=0x65735546 +endif + +# defined in ${srctree}/fs/xfs/xfs_sb.h +# tristate +ifdef CONFIG_XFS_FS +ccflags-y += -DXFS_SB_MAGIC=0x58465342 +endif + +# defined in ${srctree}/fs/configfs/mount.c +# tristate +ifdef CONFIG_CONFIGFS_FS +ccflags-y += -DCONFIGFS_MAGIC=0x62656570 +endif + +# defined in ${srctree}/fs/ubifs/ubifs.h +# tristate +ifdef CONFIG_UBIFS_FS +ccflags-y += -DUBIFS_SUPER_MAGIC=0x24051905 +endif + +# defined in ${srctree}/fs/hfsplus/hfsplus_raw.h +# tristate +ifdef CONFIG_HFSPLUS_FS +ccflags-y += -DHFSPLUS_SUPER_MAGIC=0x482b +endif --- linux-azure-5.8-5.8.0.orig/fs/aufs/module.c +++ linux-azure-5.8-5.8.0/fs/aufs/module.c @@ -0,0 +1,273 @@ +// SPDX-License-Identifier: GPL-2.0 +/* + * Copyright (C) 2005-2020 Junjiro R. Okajima + * + * This program, aufs is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; either version 2 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + */ + +/* + * module global variables and operations + */ + +#include +#include +#include "aufs.h" + +/* shrinkable realloc */ +void *au_krealloc(void *p, unsigned int new_sz, gfp_t gfp, int may_shrink) +{ + size_t sz; + int diff; + + sz = 0; + diff = -1; + if (p) { +#if 0 /* unused */ + if (!new_sz) { + au_kfree_rcu(p); + p = NULL; + goto out; + } +#else + AuDebugOn(!new_sz); +#endif + sz = ksize(p); + diff = au_kmidx_sub(sz, new_sz); + } + if (sz && !diff) + goto out; + + if (sz < new_sz) + /* expand or SLOB */ + p = krealloc(p, new_sz, gfp); + else if (new_sz < sz && may_shrink) { + /* shrink */ + void *q; + + q = kmalloc(new_sz, gfp); + if (q) { + if (p) { + memcpy(q, p, new_sz); + au_kfree_try_rcu(p); + } + p = q; + } else + p = NULL; + } + +out: + return p; +} + +void *au_kzrealloc(void *p, unsigned int nused, unsigned int new_sz, gfp_t gfp, + int may_shrink) +{ + p = au_krealloc(p, new_sz, gfp, may_shrink); + if (p && new_sz > nused) + memset(p + nused, 0, new_sz - nused); + return p; +} + +/* ---------------------------------------------------------------------- */ +/* + * aufs caches + */ +struct kmem_cache *au_cache[AuCache_Last]; + +static void au_cache_fin(void) +{ + int i; + + /* + * Make sure all delayed rcu free inodes are flushed before we + * destroy cache. + */ + rcu_barrier(); + + /* excluding AuCache_HNOTIFY */ + BUILD_BUG_ON(AuCache_HNOTIFY + 1 != AuCache_Last); + for (i = 0; i < AuCache_HNOTIFY; i++) { + kmem_cache_destroy(au_cache[i]); + au_cache[i] = NULL; + } +} + +static int __init au_cache_init(void) +{ + au_cache[AuCache_DINFO] = AuCacheCtor(au_dinfo, au_di_init_once); + if (au_cache[AuCache_DINFO]) + /* SLAB_DESTROY_BY_RCU */ + au_cache[AuCache_ICNTNR] = AuCacheCtor(au_icntnr, + au_icntnr_init_once); + if (au_cache[AuCache_ICNTNR]) + au_cache[AuCache_FINFO] = AuCacheCtor(au_finfo, + au_fi_init_once); + if (au_cache[AuCache_FINFO]) + au_cache[AuCache_VDIR] = AuCache(au_vdir); + if (au_cache[AuCache_VDIR]) + au_cache[AuCache_DEHSTR] = AuCache(au_vdir_dehstr); + if (au_cache[AuCache_DEHSTR]) + return 0; + + au_cache_fin(); + return -ENOMEM; +} + +/* ---------------------------------------------------------------------- */ + +int au_dir_roflags; + +#ifdef CONFIG_AUFS_SBILIST +/* + * iterate_supers_type() doesn't protect us from + * remounting (branch management) + */ +struct hlist_bl_head au_sbilist; +#endif + +/* + * functions for module interface. + */ +MODULE_LICENSE("GPL"); +/* MODULE_LICENSE("GPL v2"); */ +MODULE_AUTHOR("Junjiro R. Okajima "); +MODULE_DESCRIPTION(AUFS_NAME + " -- Advanced multi layered unification filesystem"); +MODULE_VERSION(AUFS_VERSION); +MODULE_ALIAS_FS(AUFS_NAME); + +/* this module parameter has no meaning when SYSFS is disabled */ +int sysaufs_brs = 1; +MODULE_PARM_DESC(brs, "use /fs/aufs/si_*/brN"); +module_param_named(brs, sysaufs_brs, int, 0444); + +/* this module parameter has no meaning when USER_NS is disabled */ +bool au_userns; +MODULE_PARM_DESC(allow_userns, "allow unprivileged to mount under userns"); +module_param_named(allow_userns, au_userns, bool, 0444); + +/* ---------------------------------------------------------------------- */ + +static char au_esc_chars[0x20 + 3]; /* 0x01-0x20, backslash, del, and NULL */ + +int au_seq_path(struct seq_file *seq, struct path *path) +{ + int err; + + err = seq_path(seq, path, au_esc_chars); + if (err >= 0) + err = 0; + else + err = -ENOMEM; + + return err; +} + +/* ---------------------------------------------------------------------- */ + +static int __init aufs_init(void) +{ + int err, i; + char *p; + + p = au_esc_chars; + for (i = 1; i <= ' '; i++) + *p++ = i; + *p++ = '\\'; + *p++ = '\x7f'; + *p = 0; + + au_dir_roflags = au_file_roflags(O_DIRECTORY | O_LARGEFILE); + + memcpy(aufs_iop_nogetattr, aufs_iop, sizeof(aufs_iop)); + for (i = 0; i < AuIop_Last; i++) + aufs_iop_nogetattr[i].getattr = NULL; + + memset(au_cache, 0, sizeof(au_cache)); /* including hnotify */ + + au_sbilist_init(); + sysaufs_brs_init(); + au_debug_init(); + au_dy_init(); + err = sysaufs_init(); + if (unlikely(err)) + goto out; + err = dbgaufs_init(); + if (unlikely(err)) + goto out_sysaufs; + err = au_procfs_init(); + if (unlikely(err)) + goto out_dbgaufs; + err = au_wkq_init(); + if (unlikely(err)) + goto out_procfs; + err = au_loopback_init(); + if (unlikely(err)) + goto out_wkq; + err = au_hnotify_init(); + if (unlikely(err)) + goto out_loopback; + err = au_sysrq_init(); + if (unlikely(err)) + goto out_hin; + err = au_cache_init(); + if (unlikely(err)) + goto out_sysrq; + + aufs_fs_type.fs_flags |= au_userns ? FS_USERNS_MOUNT : 0; + err = register_filesystem(&aufs_fs_type); + if (unlikely(err)) + goto out_cache; + + /* since we define pr_fmt, call printk directly */ + printk(KERN_INFO AUFS_NAME " " AUFS_VERSION "\n"); + goto out; /* success */ + +out_cache: + au_cache_fin(); +out_sysrq: + au_sysrq_fin(); +out_hin: + au_hnotify_fin(); +out_loopback: + au_loopback_fin(); +out_wkq: + au_wkq_fin(); +out_procfs: + au_procfs_fin(); +out_dbgaufs: + dbgaufs_fin(); +out_sysaufs: + sysaufs_fin(); + au_dy_fin(); +out: + return err; +} + +static void __exit aufs_exit(void) +{ + unregister_filesystem(&aufs_fs_type); + au_cache_fin(); + au_sysrq_fin(); + au_hnotify_fin(); + au_loopback_fin(); + au_wkq_fin(); + au_procfs_fin(); + dbgaufs_fin(); + sysaufs_fin(); + au_dy_fin(); +} + +module_init(aufs_init); +module_exit(aufs_exit); --- linux-azure-5.8-5.8.0.orig/fs/aufs/module.h +++ linux-azure-5.8-5.8.0/fs/aufs/module.h @@ -0,0 +1,166 @@ +/* SPDX-License-Identifier: GPL-2.0 */ +/* + * Copyright (C) 2005-2020 Junjiro R. Okajima + * + * This program, aufs is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; either version 2 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + */ + +/* + * module initialization and module-global + */ + +#ifndef __AUFS_MODULE_H__ +#define __AUFS_MODULE_H__ + +#ifdef __KERNEL__ + +#include +#include "debug.h" +#include "dentry.h" +#include "dir.h" +#include "file.h" +#include "inode.h" + +struct path; +struct seq_file; + +/* module parameters */ +extern int sysaufs_brs; +extern bool au_userns; + +/* ---------------------------------------------------------------------- */ + +extern int au_dir_roflags; + +void *au_krealloc(void *p, unsigned int new_sz, gfp_t gfp, int may_shrink); +void *au_kzrealloc(void *p, unsigned int nused, unsigned int new_sz, gfp_t gfp, + int may_shrink); + +/* + * Comparing the size of the object with sizeof(struct rcu_head) + * case 1: object is always larger + * --> au_kfree_rcu() or au_kfree_do_rcu() + * case 2: object is always smaller + * --> au_kfree_small() + * case 3: object can be any size + * --> au_kfree_try_rcu() + */ + +static inline void au_kfree_do_rcu(const void *p) +{ + struct { + struct rcu_head rcu; + } *a = (void *)p; + + kfree_rcu(a, rcu); +} + +#define au_kfree_rcu(_p) do { \ + typeof(_p) p = (_p); \ + BUILD_BUG_ON(sizeof(*p) < sizeof(struct rcu_head)); \ + if (p) \ + au_kfree_do_rcu(p); \ + } while (0) + +#define au_kfree_do_sz_test(sz) (sz >= sizeof(struct rcu_head)) +#define au_kfree_sz_test(p) (p && au_kfree_do_sz_test(ksize(p))) + +static inline void au_kfree_try_rcu(const void *p) +{ + if (!p) + return; + if (au_kfree_sz_test(p)) + au_kfree_do_rcu(p); + else + kfree(p); +} + +static inline void au_kfree_small(const void *p) +{ + if (!p) + return; + AuDebugOn(au_kfree_sz_test(p)); + kfree(p); +} + +static inline int au_kmidx_sub(size_t sz, size_t new_sz) +{ +#ifndef CONFIG_SLOB + return kmalloc_index(sz) - kmalloc_index(new_sz); +#else + return -1; /* SLOB is untested */ +#endif +} + +int au_seq_path(struct seq_file *seq, struct path *path); + +#ifdef CONFIG_PROC_FS +/* procfs.c */ +int __init au_procfs_init(void); +void au_procfs_fin(void); +#else +AuStubInt0(au_procfs_init, void); +AuStubVoid(au_procfs_fin, void); +#endif + +/* ---------------------------------------------------------------------- */ + +/* kmem cache */ +enum { + AuCache_DINFO, + AuCache_ICNTNR, + AuCache_FINFO, + AuCache_VDIR, + AuCache_DEHSTR, + AuCache_HNOTIFY, /* must be last */ + AuCache_Last +}; + +extern struct kmem_cache *au_cache[AuCache_Last]; + +#define AuCacheFlags (SLAB_RECLAIM_ACCOUNT | SLAB_MEM_SPREAD) +#define AuCache(type) KMEM_CACHE(type, AuCacheFlags) +#define AuCacheCtor(type, ctor) \ + kmem_cache_create(#type, sizeof(struct type), \ + __alignof__(struct type), AuCacheFlags, ctor) + +#define AuCacheFuncs(name, index) \ + static inline struct au_##name *au_cache_alloc_##name(void) \ + { return kmem_cache_alloc(au_cache[AuCache_##index], GFP_NOFS); } \ + static inline void au_cache_free_##name##_norcu(struct au_##name *p) \ + { kmem_cache_free(au_cache[AuCache_##index], p); } \ + \ + static inline void au_cache_free_##name##_rcu_cb(struct rcu_head *rcu) \ + { void *p = rcu; \ + p -= offsetof(struct au_##name, rcu); \ + kmem_cache_free(au_cache[AuCache_##index], p); } \ + static inline void au_cache_free_##name##_rcu(struct au_##name *p) \ + { BUILD_BUG_ON(sizeof(struct au_##name) < sizeof(struct rcu_head)); \ + call_rcu(&p->rcu, au_cache_free_##name##_rcu_cb); } \ + \ + static inline void au_cache_free_##name(struct au_##name *p) \ + { /* au_cache_free_##name##_norcu(p); */ \ + au_cache_free_##name##_rcu(p); } + +AuCacheFuncs(dinfo, DINFO); +AuCacheFuncs(icntnr, ICNTNR); +AuCacheFuncs(finfo, FINFO); +AuCacheFuncs(vdir, VDIR); +AuCacheFuncs(vdir_dehstr, DEHSTR); +#ifdef CONFIG_AUFS_HNOTIFY +AuCacheFuncs(hnotify, HNOTIFY); +#endif + +#endif /* __KERNEL__ */ +#endif /* __AUFS_MODULE_H__ */ --- linux-azure-5.8-5.8.0.orig/fs/aufs/mvdown.c +++ linux-azure-5.8-5.8.0/fs/aufs/mvdown.c @@ -0,0 +1,706 @@ +// SPDX-License-Identifier: GPL-2.0 +/* + * Copyright (C) 2011-2020 Junjiro R. Okajima + * + * This program, aufs is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; either version 2 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + */ + +/* + * move-down, opposite of copy-up + */ + +#include "aufs.h" + +struct au_mvd_args { + struct { + struct super_block *h_sb; + struct dentry *h_parent; + struct au_hinode *hdir; + struct inode *h_dir, *h_inode; + struct au_pin pin; + } info[AUFS_MVDOWN_NARRAY]; + + struct aufs_mvdown mvdown; + struct dentry *dentry, *parent; + struct inode *inode, *dir; + struct super_block *sb; + aufs_bindex_t bopq, bwh, bfound; + unsigned char rename_lock; +}; + +#define mvd_errno mvdown.au_errno +#define mvd_bsrc mvdown.stbr[AUFS_MVDOWN_UPPER].bindex +#define mvd_src_brid mvdown.stbr[AUFS_MVDOWN_UPPER].brid +#define mvd_bdst mvdown.stbr[AUFS_MVDOWN_LOWER].bindex +#define mvd_dst_brid mvdown.stbr[AUFS_MVDOWN_LOWER].brid + +#define mvd_h_src_sb info[AUFS_MVDOWN_UPPER].h_sb +#define mvd_h_src_parent info[AUFS_MVDOWN_UPPER].h_parent +#define mvd_hdir_src info[AUFS_MVDOWN_UPPER].hdir +#define mvd_h_src_dir info[AUFS_MVDOWN_UPPER].h_dir +#define mvd_h_src_inode info[AUFS_MVDOWN_UPPER].h_inode +#define mvd_pin_src info[AUFS_MVDOWN_UPPER].pin + +#define mvd_h_dst_sb info[AUFS_MVDOWN_LOWER].h_sb +#define mvd_h_dst_parent info[AUFS_MVDOWN_LOWER].h_parent +#define mvd_hdir_dst info[AUFS_MVDOWN_LOWER].hdir +#define mvd_h_dst_dir info[AUFS_MVDOWN_LOWER].h_dir +#define mvd_h_dst_inode info[AUFS_MVDOWN_LOWER].h_inode +#define mvd_pin_dst info[AUFS_MVDOWN_LOWER].pin + +#define AU_MVD_PR(flag, ...) do { \ + if (flag) \ + pr_err(__VA_ARGS__); \ + } while (0) + +static int find_lower_writable(struct au_mvd_args *a) +{ + struct super_block *sb; + aufs_bindex_t bindex, bbot; + struct au_branch *br; + + sb = a->sb; + bindex = a->mvd_bsrc; + bbot = au_sbbot(sb); + if (a->mvdown.flags & AUFS_MVDOWN_FHSM_LOWER) + for (bindex++; bindex <= bbot; bindex++) { + br = au_sbr(sb, bindex); + if (au_br_fhsm(br->br_perm) + && !sb_rdonly(au_br_sb(br))) + return bindex; + } + else if (!(a->mvdown.flags & AUFS_MVDOWN_ROLOWER)) + for (bindex++; bindex <= bbot; bindex++) { + br = au_sbr(sb, bindex); + if (!au_br_rdonly(br)) + return bindex; + } + else + for (bindex++; bindex <= bbot; bindex++) { + br = au_sbr(sb, bindex); + if (!sb_rdonly(au_br_sb(br))) { + if (au_br_rdonly(br)) + a->mvdown.flags + |= AUFS_MVDOWN_ROLOWER_R; + return bindex; + } + } + + return -1; +} + +/* make the parent dir on bdst */ +static int au_do_mkdir(const unsigned char dmsg, struct au_mvd_args *a) +{ + int err; + + err = 0; + a->mvd_hdir_src = au_hi(a->dir, a->mvd_bsrc); + a->mvd_hdir_dst = au_hi(a->dir, a->mvd_bdst); + a->mvd_h_src_parent = au_h_dptr(a->parent, a->mvd_bsrc); + a->mvd_h_dst_parent = NULL; + if (au_dbbot(a->parent) >= a->mvd_bdst) + a->mvd_h_dst_parent = au_h_dptr(a->parent, a->mvd_bdst); + if (!a->mvd_h_dst_parent) { + err = au_cpdown_dirs(a->dentry, a->mvd_bdst); + if (unlikely(err)) { + AU_MVD_PR(dmsg, "cpdown_dirs failed\n"); + goto out; + } + a->mvd_h_dst_parent = au_h_dptr(a->parent, a->mvd_bdst); + } + +out: + AuTraceErr(err); + return err; +} + +/* lock them all */ +static int au_do_lock(const unsigned char dmsg, struct au_mvd_args *a) +{ + int err; + struct dentry *h_trap; + + a->mvd_h_src_sb = au_sbr_sb(a->sb, a->mvd_bsrc); + a->mvd_h_dst_sb = au_sbr_sb(a->sb, a->mvd_bdst); + err = au_pin(&a->mvd_pin_dst, a->dentry, a->mvd_bdst, + au_opt_udba(a->sb), + AuPin_MNT_WRITE | AuPin_DI_LOCKED); + AuTraceErr(err); + if (unlikely(err)) { + AU_MVD_PR(dmsg, "pin_dst failed\n"); + goto out; + } + + if (a->mvd_h_src_sb != a->mvd_h_dst_sb) { + a->rename_lock = 0; + au_pin_init(&a->mvd_pin_src, a->dentry, a->mvd_bsrc, + AuLsc_DI_PARENT, AuLsc_I_PARENT3, + au_opt_udba(a->sb), + AuPin_MNT_WRITE | AuPin_DI_LOCKED); + err = au_do_pin(&a->mvd_pin_src); + AuTraceErr(err); + a->mvd_h_src_dir = d_inode(a->mvd_h_src_parent); + if (unlikely(err)) { + AU_MVD_PR(dmsg, "pin_src failed\n"); + goto out_dst; + } + goto out; /* success */ + } + + a->rename_lock = 1; + au_pin_hdir_unlock(&a->mvd_pin_dst); + err = au_pin(&a->mvd_pin_src, a->dentry, a->mvd_bsrc, + au_opt_udba(a->sb), + AuPin_MNT_WRITE | AuPin_DI_LOCKED); + AuTraceErr(err); + a->mvd_h_src_dir = d_inode(a->mvd_h_src_parent); + if (unlikely(err)) { + AU_MVD_PR(dmsg, "pin_src failed\n"); + au_pin_hdir_lock(&a->mvd_pin_dst); + goto out_dst; + } + au_pin_hdir_unlock(&a->mvd_pin_src); + h_trap = vfsub_lock_rename(a->mvd_h_src_parent, a->mvd_hdir_src, + a->mvd_h_dst_parent, a->mvd_hdir_dst); + if (h_trap) { + err = (h_trap != a->mvd_h_src_parent); + if (err) + err = (h_trap != a->mvd_h_dst_parent); + } + BUG_ON(err); /* it should never happen */ + if (unlikely(a->mvd_h_src_dir != au_pinned_h_dir(&a->mvd_pin_src))) { + err = -EBUSY; + AuTraceErr(err); + vfsub_unlock_rename(a->mvd_h_src_parent, a->mvd_hdir_src, + a->mvd_h_dst_parent, a->mvd_hdir_dst); + au_pin_hdir_lock(&a->mvd_pin_src); + au_unpin(&a->mvd_pin_src); + au_pin_hdir_lock(&a->mvd_pin_dst); + goto out_dst; + } + goto out; /* success */ + +out_dst: + au_unpin(&a->mvd_pin_dst); +out: + AuTraceErr(err); + return err; +} + +static void au_do_unlock(const unsigned char dmsg, struct au_mvd_args *a) +{ + if (!a->rename_lock) + au_unpin(&a->mvd_pin_src); + else { + vfsub_unlock_rename(a->mvd_h_src_parent, a->mvd_hdir_src, + a->mvd_h_dst_parent, a->mvd_hdir_dst); + au_pin_hdir_lock(&a->mvd_pin_src); + au_unpin(&a->mvd_pin_src); + au_pin_hdir_lock(&a->mvd_pin_dst); + } + au_unpin(&a->mvd_pin_dst); +} + +/* copy-down the file */ +static int au_do_cpdown(const unsigned char dmsg, struct au_mvd_args *a) +{ + int err; + struct au_cp_generic cpg = { + .dentry = a->dentry, + .bdst = a->mvd_bdst, + .bsrc = a->mvd_bsrc, + .len = -1, + .pin = &a->mvd_pin_dst, + .flags = AuCpup_DTIME | AuCpup_HOPEN + }; + + AuDbg("b%d, b%d\n", cpg.bsrc, cpg.bdst); + if (a->mvdown.flags & AUFS_MVDOWN_OWLOWER) + au_fset_cpup(cpg.flags, OVERWRITE); + if (a->mvdown.flags & AUFS_MVDOWN_ROLOWER) + au_fset_cpup(cpg.flags, RWDST); + err = au_sio_cpdown_simple(&cpg); + if (unlikely(err)) + AU_MVD_PR(dmsg, "cpdown failed\n"); + + AuTraceErr(err); + return err; +} + +/* + * unlink the whiteout on bdst if exist which may be created by UDBA while we + * were sleeping + */ +static int au_do_unlink_wh(const unsigned char dmsg, struct au_mvd_args *a) +{ + int err; + struct path h_path; + struct au_branch *br; + struct inode *delegated; + + br = au_sbr(a->sb, a->mvd_bdst); + h_path.dentry = au_wh_lkup(a->mvd_h_dst_parent, &a->dentry->d_name, br); + err = PTR_ERR(h_path.dentry); + if (IS_ERR(h_path.dentry)) { + AU_MVD_PR(dmsg, "wh_lkup failed\n"); + goto out; + } + + err = 0; + if (d_is_positive(h_path.dentry)) { + h_path.mnt = au_br_mnt(br); + delegated = NULL; + err = vfsub_unlink(d_inode(a->mvd_h_dst_parent), &h_path, + &delegated, /*force*/0); + if (unlikely(err == -EWOULDBLOCK)) { + pr_warn("cannot retry for NFSv4 delegation" + " for an internal unlink\n"); + iput(delegated); + } + if (unlikely(err)) + AU_MVD_PR(dmsg, "wh_unlink failed\n"); + } + dput(h_path.dentry); + +out: + AuTraceErr(err); + return err; +} + +/* + * unlink the topmost h_dentry + */ +static int au_do_unlink(const unsigned char dmsg, struct au_mvd_args *a) +{ + int err; + struct path h_path; + struct inode *delegated; + + h_path.mnt = au_sbr_mnt(a->sb, a->mvd_bsrc); + h_path.dentry = au_h_dptr(a->dentry, a->mvd_bsrc); + delegated = NULL; + err = vfsub_unlink(a->mvd_h_src_dir, &h_path, &delegated, /*force*/0); + if (unlikely(err == -EWOULDBLOCK)) { + pr_warn("cannot retry for NFSv4 delegation" + " for an internal unlink\n"); + iput(delegated); + } + if (unlikely(err)) + AU_MVD_PR(dmsg, "unlink failed\n"); + + AuTraceErr(err); + return err; +} + +/* Since mvdown succeeded, we ignore an error of this function */ +static void au_do_stfs(const unsigned char dmsg, struct au_mvd_args *a) +{ + int err; + struct au_branch *br; + + a->mvdown.flags |= AUFS_MVDOWN_STFS_FAILED; + br = au_sbr(a->sb, a->mvd_bsrc); + err = au_br_stfs(br, &a->mvdown.stbr[AUFS_MVDOWN_UPPER].stfs); + if (!err) { + br = au_sbr(a->sb, a->mvd_bdst); + a->mvdown.stbr[AUFS_MVDOWN_LOWER].brid = br->br_id; + err = au_br_stfs(br, &a->mvdown.stbr[AUFS_MVDOWN_LOWER].stfs); + } + if (!err) + a->mvdown.flags &= ~AUFS_MVDOWN_STFS_FAILED; + else + AU_MVD_PR(dmsg, "statfs failed (%d), ignored\n", err); +} + +/* + * copy-down the file and unlink the bsrc file. + * - unlink the bdst whout if exist + * - copy-down the file (with whtmp name and rename) + * - unlink the bsrc file + */ +static int au_do_mvdown(const unsigned char dmsg, struct au_mvd_args *a) +{ + int err; + + err = au_do_mkdir(dmsg, a); + if (!err) + err = au_do_lock(dmsg, a); + if (unlikely(err)) + goto out; + + /* + * do not revert the activities we made on bdst since they should be + * harmless in aufs. + */ + + err = au_do_cpdown(dmsg, a); + if (!err) + err = au_do_unlink_wh(dmsg, a); + if (!err && !(a->mvdown.flags & AUFS_MVDOWN_KUPPER)) + err = au_do_unlink(dmsg, a); + if (unlikely(err)) + goto out_unlock; + + AuDbg("%pd2, 0x%x, %d --> %d\n", + a->dentry, a->mvdown.flags, a->mvd_bsrc, a->mvd_bdst); + if (find_lower_writable(a) < 0) + a->mvdown.flags |= AUFS_MVDOWN_BOTTOM; + + if (a->mvdown.flags & AUFS_MVDOWN_STFS) + au_do_stfs(dmsg, a); + + /* maintain internal array */ + if (!(a->mvdown.flags & AUFS_MVDOWN_KUPPER)) { + au_set_h_dptr(a->dentry, a->mvd_bsrc, NULL); + au_set_dbtop(a->dentry, a->mvd_bdst); + au_set_h_iptr(a->inode, a->mvd_bsrc, NULL, /*flags*/0); + au_set_ibtop(a->inode, a->mvd_bdst); + } else { + /* hide the lower */ + au_set_h_dptr(a->dentry, a->mvd_bdst, NULL); + au_set_dbbot(a->dentry, a->mvd_bsrc); + au_set_h_iptr(a->inode, a->mvd_bdst, NULL, /*flags*/0); + au_set_ibbot(a->inode, a->mvd_bsrc); + } + if (au_dbbot(a->dentry) < a->mvd_bdst) + au_set_dbbot(a->dentry, a->mvd_bdst); + if (au_ibbot(a->inode) < a->mvd_bdst) + au_set_ibbot(a->inode, a->mvd_bdst); + +out_unlock: + au_do_unlock(dmsg, a); +out: + AuTraceErr(err); + return err; +} + +/* ---------------------------------------------------------------------- */ + +/* make sure the file is idle */ +static int au_mvd_args_busy(const unsigned char dmsg, struct au_mvd_args *a) +{ + int err, plinked; + + err = 0; + plinked = !!au_opt_test(au_mntflags(a->sb), PLINK); + if (au_dbtop(a->dentry) == a->mvd_bsrc + && au_dcount(a->dentry) == 1 + && atomic_read(&a->inode->i_count) == 1 + /* && a->mvd_h_src_inode->i_nlink == 1 */ + && (!plinked || !au_plink_test(a->inode)) + && a->inode->i_nlink == 1) + goto out; + + err = -EBUSY; + AU_MVD_PR(dmsg, + "b%d, d{b%d, c%d?}, i{c%d?, l%u}, hi{l%u}, p{%d, %d}\n", + a->mvd_bsrc, au_dbtop(a->dentry), au_dcount(a->dentry), + atomic_read(&a->inode->i_count), a->inode->i_nlink, + a->mvd_h_src_inode->i_nlink, + plinked, plinked ? au_plink_test(a->inode) : 0); + +out: + AuTraceErr(err); + return err; +} + +/* make sure the parent dir is fine */ +static int au_mvd_args_parent(const unsigned char dmsg, + struct au_mvd_args *a) +{ + int err; + aufs_bindex_t bindex; + + err = 0; + if (unlikely(au_alive_dir(a->parent))) { + err = -ENOENT; + AU_MVD_PR(dmsg, "parent dir is dead\n"); + goto out; + } + + a->bopq = au_dbdiropq(a->parent); + bindex = au_wbr_nonopq(a->dentry, a->mvd_bdst); + AuDbg("b%d\n", bindex); + if (unlikely((bindex >= 0 && bindex < a->mvd_bdst) + || (a->bopq != -1 && a->bopq < a->mvd_bdst))) { + err = -EINVAL; + a->mvd_errno = EAU_MVDOWN_OPAQUE; + AU_MVD_PR(dmsg, "ancestor is opaque b%d, b%d\n", + a->bopq, a->mvd_bdst); + } + +out: + AuTraceErr(err); + return err; +} + +static int au_mvd_args_intermediate(const unsigned char dmsg, + struct au_mvd_args *a) +{ + int err; + struct au_dinfo *dinfo, *tmp; + + /* lookup the next lower positive entry */ + err = -ENOMEM; + tmp = au_di_alloc(a->sb, AuLsc_DI_TMP); + if (unlikely(!tmp)) + goto out; + + a->bfound = -1; + a->bwh = -1; + dinfo = au_di(a->dentry); + au_di_cp(tmp, dinfo); + au_di_swap(tmp, dinfo); + + /* returns the number of positive dentries */ + err = au_lkup_dentry(a->dentry, a->mvd_bsrc + 1, + /* AuLkup_IGNORE_PERM */ 0); + if (!err) + a->bwh = au_dbwh(a->dentry); + else if (err > 0) + a->bfound = au_dbtop(a->dentry); + + au_di_swap(tmp, dinfo); + au_rw_write_unlock(&tmp->di_rwsem); + au_di_free(tmp); + if (unlikely(err < 0)) + AU_MVD_PR(dmsg, "failed look-up lower\n"); + + /* + * here, we have these cases. + * bfound == -1 + * no positive dentry under bsrc. there are more sub-cases. + * bwh < 0 + * there no whiteout, we can safely move-down. + * bwh <= bsrc + * impossible + * bsrc < bwh && bwh < bdst + * there is a whiteout on RO branch. cannot proceed. + * bwh == bdst + * there is a whiteout on the RW target branch. it should + * be removed. + * bdst < bwh + * there is a whiteout somewhere unrelated branch. + * -1 < bfound && bfound <= bsrc + * impossible. + * bfound < bdst + * found, but it is on RO branch between bsrc and bdst. cannot + * proceed. + * bfound == bdst + * found, replace it if AUFS_MVDOWN_FORCE is set. otherwise return + * error. + * bdst < bfound + * found, after we create the file on bdst, it will be hidden. + */ + + AuDebugOn(a->bfound == -1 + && a->bwh != -1 + && a->bwh <= a->mvd_bsrc); + AuDebugOn(-1 < a->bfound + && a->bfound <= a->mvd_bsrc); + + err = -EINVAL; + if (a->bfound == -1 + && a->mvd_bsrc < a->bwh + && a->bwh != -1 + && a->bwh < a->mvd_bdst) { + a->mvd_errno = EAU_MVDOWN_WHITEOUT; + AU_MVD_PR(dmsg, "bsrc %d, bdst %d, bfound %d, bwh %d\n", + a->mvd_bsrc, a->mvd_bdst, a->bfound, a->bwh); + goto out; + } else if (a->bfound != -1 && a->bfound < a->mvd_bdst) { + a->mvd_errno = EAU_MVDOWN_UPPER; + AU_MVD_PR(dmsg, "bdst %d, bfound %d\n", + a->mvd_bdst, a->bfound); + goto out; + } + + err = 0; /* success */ + +out: + AuTraceErr(err); + return err; +} + +static int au_mvd_args_exist(const unsigned char dmsg, struct au_mvd_args *a) +{ + int err; + + err = 0; + if (!(a->mvdown.flags & AUFS_MVDOWN_OWLOWER) + && a->bfound == a->mvd_bdst) + err = -EEXIST; + AuTraceErr(err); + return err; +} + +static int au_mvd_args(const unsigned char dmsg, struct au_mvd_args *a) +{ + int err; + struct au_branch *br; + + err = -EISDIR; + if (unlikely(S_ISDIR(a->inode->i_mode))) + goto out; + + err = -EINVAL; + if (!(a->mvdown.flags & AUFS_MVDOWN_BRID_UPPER)) + a->mvd_bsrc = au_ibtop(a->inode); + else { + a->mvd_bsrc = au_br_index(a->sb, a->mvd_src_brid); + if (unlikely(a->mvd_bsrc < 0 + || (a->mvd_bsrc < au_dbtop(a->dentry) + || au_dbbot(a->dentry) < a->mvd_bsrc + || !au_h_dptr(a->dentry, a->mvd_bsrc)) + || (a->mvd_bsrc < au_ibtop(a->inode) + || au_ibbot(a->inode) < a->mvd_bsrc + || !au_h_iptr(a->inode, a->mvd_bsrc)))) { + a->mvd_errno = EAU_MVDOWN_NOUPPER; + AU_MVD_PR(dmsg, "no upper\n"); + goto out; + } + } + if (unlikely(a->mvd_bsrc == au_sbbot(a->sb))) { + a->mvd_errno = EAU_MVDOWN_BOTTOM; + AU_MVD_PR(dmsg, "on the bottom\n"); + goto out; + } + a->mvd_h_src_inode = au_h_iptr(a->inode, a->mvd_bsrc); + br = au_sbr(a->sb, a->mvd_bsrc); + err = au_br_rdonly(br); + if (!(a->mvdown.flags & AUFS_MVDOWN_ROUPPER)) { + if (unlikely(err)) + goto out; + } else if (!(vfsub_native_ro(a->mvd_h_src_inode) + || IS_APPEND(a->mvd_h_src_inode))) { + if (err) + a->mvdown.flags |= AUFS_MVDOWN_ROUPPER_R; + /* go on */ + } else + goto out; + + err = -EINVAL; + if (!(a->mvdown.flags & AUFS_MVDOWN_BRID_LOWER)) { + a->mvd_bdst = find_lower_writable(a); + if (unlikely(a->mvd_bdst < 0)) { + a->mvd_errno = EAU_MVDOWN_BOTTOM; + AU_MVD_PR(dmsg, "no writable lower branch\n"); + goto out; + } + } else { + a->mvd_bdst = au_br_index(a->sb, a->mvd_dst_brid); + if (unlikely(a->mvd_bdst < 0 + || au_sbbot(a->sb) < a->mvd_bdst)) { + a->mvd_errno = EAU_MVDOWN_NOLOWERBR; + AU_MVD_PR(dmsg, "no lower brid\n"); + goto out; + } + } + + err = au_mvd_args_busy(dmsg, a); + if (!err) + err = au_mvd_args_parent(dmsg, a); + if (!err) + err = au_mvd_args_intermediate(dmsg, a); + if (!err) + err = au_mvd_args_exist(dmsg, a); + if (!err) + AuDbg("b%d, b%d\n", a->mvd_bsrc, a->mvd_bdst); + +out: + AuTraceErr(err); + return err; +} + +int au_mvdown(struct dentry *dentry, struct aufs_mvdown __user *uarg) +{ + int err, e; + unsigned char dmsg; + struct au_mvd_args *args; + struct inode *inode; + + inode = d_inode(dentry); + err = -EPERM; + if (unlikely(!capable(CAP_SYS_ADMIN))) + goto out; + + err = -ENOMEM; + args = kmalloc(sizeof(*args), GFP_NOFS); + if (unlikely(!args)) + goto out; + + err = copy_from_user(&args->mvdown, uarg, sizeof(args->mvdown)); + if (!err) + /* VERIFY_WRITE */ + err = !access_ok(uarg, sizeof(*uarg)); + if (unlikely(err)) { + err = -EFAULT; + AuTraceErr(err); + goto out_free; + } + AuDbg("flags 0x%x\n", args->mvdown.flags); + args->mvdown.flags &= ~(AUFS_MVDOWN_ROLOWER_R | AUFS_MVDOWN_ROUPPER_R); + args->mvdown.au_errno = 0; + args->dentry = dentry; + args->inode = inode; + args->sb = dentry->d_sb; + + err = -ENOENT; + dmsg = !!(args->mvdown.flags & AUFS_MVDOWN_DMSG); + args->parent = dget_parent(dentry); + args->dir = d_inode(args->parent); + inode_lock_nested(args->dir, I_MUTEX_PARENT); + dput(args->parent); + if (unlikely(args->parent != dentry->d_parent)) { + AU_MVD_PR(dmsg, "parent dir is moved\n"); + goto out_dir; + } + + inode_lock_nested(inode, I_MUTEX_CHILD); + err = aufs_read_lock(dentry, AuLock_DW | AuLock_FLUSH | AuLock_NOPLMW); + if (unlikely(err)) + goto out_inode; + + di_write_lock_parent(args->parent); + err = au_mvd_args(dmsg, args); + if (unlikely(err)) + goto out_parent; + + err = au_do_mvdown(dmsg, args); + if (unlikely(err)) + goto out_parent; + + au_cpup_attr_timesizes(args->dir); + au_cpup_attr_timesizes(inode); + if (!(args->mvdown.flags & AUFS_MVDOWN_KUPPER)) + au_cpup_igen(inode, au_h_iptr(inode, args->mvd_bdst)); + /* au_digen_dec(dentry); */ + +out_parent: + di_write_unlock(args->parent); + aufs_read_unlock(dentry, AuLock_DW); +out_inode: + inode_unlock(inode); +out_dir: + inode_unlock(args->dir); +out_free: + e = copy_to_user(uarg, &args->mvdown, sizeof(args->mvdown)); + if (unlikely(e)) + err = -EFAULT; + au_kfree_rcu(args); +out: + AuTraceErr(err); + return err; +} --- linux-azure-5.8-5.8.0.orig/fs/aufs/opts.c +++ linux-azure-5.8-5.8.0/fs/aufs/opts.c @@ -0,0 +1,1880 @@ +// SPDX-License-Identifier: GPL-2.0 +/* + * Copyright (C) 2005-2020 Junjiro R. Okajima + * + * This program, aufs is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; either version 2 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + */ + +/* + * mount options/flags + */ + +#include +#include /* a distribution requires */ +#include +#include "aufs.h" + +/* ---------------------------------------------------------------------- */ + +enum { + Opt_br, + Opt_add, Opt_del, Opt_mod, Opt_append, Opt_prepend, + Opt_idel, Opt_imod, + Opt_dirwh, Opt_rdcache, Opt_rdblk, Opt_rdhash, + Opt_rdblk_def, Opt_rdhash_def, + Opt_xino, Opt_noxino, + Opt_trunc_xino, Opt_trunc_xino_v, Opt_notrunc_xino, + Opt_trunc_xino_path, Opt_itrunc_xino, + Opt_trunc_xib, Opt_notrunc_xib, + Opt_shwh, Opt_noshwh, + Opt_plink, Opt_noplink, Opt_list_plink, + Opt_udba, + Opt_dio, Opt_nodio, + Opt_diropq_a, Opt_diropq_w, + Opt_warn_perm, Opt_nowarn_perm, + Opt_wbr_copyup, Opt_wbr_create, + Opt_fhsm_sec, + Opt_verbose, Opt_noverbose, + Opt_sum, Opt_nosum, Opt_wsum, + Opt_dirperm1, Opt_nodirperm1, + Opt_dirren, Opt_nodirren, + Opt_acl, Opt_noacl, + Opt_tail, Opt_ignore, Opt_ignore_silent, Opt_err +}; + +static match_table_t options = { + {Opt_br, "br=%s"}, + {Opt_br, "br:%s"}, + + {Opt_add, "add=%d:%s"}, + {Opt_add, "add:%d:%s"}, + {Opt_add, "ins=%d:%s"}, + {Opt_add, "ins:%d:%s"}, + {Opt_append, "append=%s"}, + {Opt_append, "append:%s"}, + {Opt_prepend, "prepend=%s"}, + {Opt_prepend, "prepend:%s"}, + + {Opt_del, "del=%s"}, + {Opt_del, "del:%s"}, + /* {Opt_idel, "idel:%d"}, */ + {Opt_mod, "mod=%s"}, + {Opt_mod, "mod:%s"}, + /* {Opt_imod, "imod:%d:%s"}, */ + + {Opt_dirwh, "dirwh=%d"}, + + {Opt_xino, "xino=%s"}, + {Opt_noxino, "noxino"}, + {Opt_trunc_xino, "trunc_xino"}, + {Opt_trunc_xino_v, "trunc_xino_v=%d:%d"}, + {Opt_notrunc_xino, "notrunc_xino"}, + {Opt_trunc_xino_path, "trunc_xino=%s"}, + {Opt_itrunc_xino, "itrunc_xino=%d"}, + /* {Opt_zxino, "zxino=%s"}, */ + {Opt_trunc_xib, "trunc_xib"}, + {Opt_notrunc_xib, "notrunc_xib"}, + +#ifdef CONFIG_PROC_FS + {Opt_plink, "plink"}, +#else + {Opt_ignore_silent, "plink"}, +#endif + + {Opt_noplink, "noplink"}, + +#ifdef CONFIG_AUFS_DEBUG + {Opt_list_plink, "list_plink"}, +#endif + + {Opt_udba, "udba=%s"}, + + {Opt_dio, "dio"}, + {Opt_nodio, "nodio"}, + +#ifdef CONFIG_AUFS_DIRREN + {Opt_dirren, "dirren"}, + {Opt_nodirren, "nodirren"}, +#else + {Opt_ignore, "dirren"}, + {Opt_ignore_silent, "nodirren"}, +#endif + +#ifdef CONFIG_AUFS_FHSM + {Opt_fhsm_sec, "fhsm_sec=%d"}, +#else + {Opt_ignore, "fhsm_sec=%d"}, +#endif + + {Opt_diropq_a, "diropq=always"}, + {Opt_diropq_a, "diropq=a"}, + {Opt_diropq_w, "diropq=whiteouted"}, + {Opt_diropq_w, "diropq=w"}, + + {Opt_warn_perm, "warn_perm"}, + {Opt_nowarn_perm, "nowarn_perm"}, + + /* keep them temporary */ + {Opt_ignore_silent, "nodlgt"}, + {Opt_ignore, "clean_plink"}, + +#ifdef CONFIG_AUFS_SHWH + {Opt_shwh, "shwh"}, +#endif + {Opt_noshwh, "noshwh"}, + + {Opt_dirperm1, "dirperm1"}, + {Opt_nodirperm1, "nodirperm1"}, + + {Opt_verbose, "verbose"}, + {Opt_verbose, "v"}, + {Opt_noverbose, "noverbose"}, + {Opt_noverbose, "quiet"}, + {Opt_noverbose, "q"}, + {Opt_noverbose, "silent"}, + + {Opt_sum, "sum"}, + {Opt_nosum, "nosum"}, + {Opt_wsum, "wsum"}, + + {Opt_rdcache, "rdcache=%d"}, + {Opt_rdblk, "rdblk=%d"}, + {Opt_rdblk_def, "rdblk=def"}, + {Opt_rdhash, "rdhash=%d"}, + {Opt_rdhash_def, "rdhash=def"}, + + {Opt_wbr_create, "create=%s"}, + {Opt_wbr_create, "create_policy=%s"}, + {Opt_wbr_copyup, "cpup=%s"}, + {Opt_wbr_copyup, "copyup=%s"}, + {Opt_wbr_copyup, "copyup_policy=%s"}, + + /* generic VFS flag */ +#ifdef CONFIG_FS_POSIX_ACL + {Opt_acl, "acl"}, + {Opt_noacl, "noacl"}, +#else + {Opt_ignore, "acl"}, + {Opt_ignore_silent, "noacl"}, +#endif + + /* internal use for the scripts */ + {Opt_ignore_silent, "si=%s"}, + + {Opt_br, "dirs=%s"}, + {Opt_ignore, "debug=%d"}, + {Opt_ignore, "delete=whiteout"}, + {Opt_ignore, "delete=all"}, + {Opt_ignore, "imap=%s"}, + + /* temporary workaround, due to old mount(8)? */ + {Opt_ignore_silent, "relatime"}, + + {Opt_err, NULL} +}; + +/* ---------------------------------------------------------------------- */ + +static const char *au_parser_pattern(int val, match_table_t tbl) +{ + struct match_token *p; + + p = tbl; + while (p->pattern) { + if (p->token == val) + return p->pattern; + p++; + } + BUG(); + return "??"; +} + +static const char *au_optstr(int *val, match_table_t tbl) +{ + struct match_token *p; + int v; + + v = *val; + if (!v) + goto out; + p = tbl; + while (p->pattern) { + if (p->token + && (v & p->token) == p->token) { + *val &= ~p->token; + return p->pattern; + } + p++; + } + +out: + return NULL; +} + +/* ---------------------------------------------------------------------- */ + +static match_table_t brperm = { + {AuBrPerm_RO, AUFS_BRPERM_RO}, + {AuBrPerm_RR, AUFS_BRPERM_RR}, + {AuBrPerm_RW, AUFS_BRPERM_RW}, + {0, NULL} +}; + +static match_table_t brattr = { + /* general */ + {AuBrAttr_COO_REG, AUFS_BRATTR_COO_REG}, + {AuBrAttr_COO_ALL, AUFS_BRATTR_COO_ALL}, + /* 'unpin' attrib is meaningless since linux-3.18-rc1 */ + {AuBrAttr_UNPIN, AUFS_BRATTR_UNPIN}, +#ifdef CONFIG_AUFS_FHSM + {AuBrAttr_FHSM, AUFS_BRATTR_FHSM}, +#endif +#ifdef CONFIG_AUFS_XATTR + {AuBrAttr_ICEX, AUFS_BRATTR_ICEX}, + {AuBrAttr_ICEX_SEC, AUFS_BRATTR_ICEX_SEC}, + {AuBrAttr_ICEX_SYS, AUFS_BRATTR_ICEX_SYS}, + {AuBrAttr_ICEX_TR, AUFS_BRATTR_ICEX_TR}, + {AuBrAttr_ICEX_USR, AUFS_BRATTR_ICEX_USR}, + {AuBrAttr_ICEX_OTH, AUFS_BRATTR_ICEX_OTH}, +#endif + + /* ro/rr branch */ + {AuBrRAttr_WH, AUFS_BRRATTR_WH}, + + /* rw branch */ + {AuBrWAttr_MOO, AUFS_BRWATTR_MOO}, + {AuBrWAttr_NoLinkWH, AUFS_BRWATTR_NLWH}, + + {0, NULL} +}; + +static int br_attr_val(char *str, match_table_t table, substring_t args[]) +{ + int attr, v; + char *p; + + attr = 0; + do { + p = strchr(str, '+'); + if (p) + *p = 0; + v = match_token(str, table, args); + if (v) { + if (v & AuBrAttr_CMOO_Mask) + attr &= ~AuBrAttr_CMOO_Mask; + attr |= v; + } else { + if (p) + *p = '+'; + pr_warn("ignored branch attribute %s\n", str); + break; + } + if (p) + str = p + 1; + } while (p); + + return attr; +} + +static int au_do_optstr_br_attr(au_br_perm_str_t *str, int perm) +{ + int sz; + const char *p; + char *q; + + q = str->a; + *q = 0; + p = au_optstr(&perm, brattr); + if (p) { + sz = strlen(p); + memcpy(q, p, sz + 1); + q += sz; + } else + goto out; + + do { + p = au_optstr(&perm, brattr); + if (p) { + *q++ = '+'; + sz = strlen(p); + memcpy(q, p, sz + 1); + q += sz; + } + } while (p); + +out: + return q - str->a; +} + +static int noinline_for_stack br_perm_val(char *perm) +{ + int val, bad, sz; + char *p; + substring_t args[MAX_OPT_ARGS]; + au_br_perm_str_t attr; + + p = strchr(perm, '+'); + if (p) + *p = 0; + val = match_token(perm, brperm, args); + if (!val) { + if (p) + *p = '+'; + pr_warn("ignored branch permission %s\n", perm); + val = AuBrPerm_RO; + goto out; + } + if (!p) + goto out; + + val |= br_attr_val(p + 1, brattr, args); + + bad = 0; + switch (val & AuBrPerm_Mask) { + case AuBrPerm_RO: + case AuBrPerm_RR: + bad = val & AuBrWAttr_Mask; + val &= ~AuBrWAttr_Mask; + break; + case AuBrPerm_RW: + bad = val & AuBrRAttr_Mask; + val &= ~AuBrRAttr_Mask; + break; + } + + /* + * 'unpin' attrib becomes meaningless since linux-3.18-rc1, but aufs + * does not treat it as an error, just warning. + * this is a tiny guard for the user operation. + */ + if (val & AuBrAttr_UNPIN) { + bad |= AuBrAttr_UNPIN; + val &= ~AuBrAttr_UNPIN; + } + + if (unlikely(bad)) { + sz = au_do_optstr_br_attr(&attr, bad); + AuDebugOn(!sz); + pr_warn("ignored branch attribute %s\n", attr.a); + } + +out: + return val; +} + +void au_optstr_br_perm(au_br_perm_str_t *str, int perm) +{ + au_br_perm_str_t attr; + const char *p; + char *q; + int sz; + + q = str->a; + p = au_optstr(&perm, brperm); + AuDebugOn(!p || !*p); + sz = strlen(p); + memcpy(q, p, sz + 1); + q += sz; + + sz = au_do_optstr_br_attr(&attr, perm); + if (sz) { + *q++ = '+'; + memcpy(q, attr.a, sz + 1); + } + + AuDebugOn(strlen(str->a) >= sizeof(str->a)); +} + +/* ---------------------------------------------------------------------- */ + +static match_table_t udbalevel = { + {AuOpt_UDBA_REVAL, "reval"}, + {AuOpt_UDBA_NONE, "none"}, +#ifdef CONFIG_AUFS_HNOTIFY + {AuOpt_UDBA_HNOTIFY, "notify"}, /* abstraction */ +#ifdef CONFIG_AUFS_HFSNOTIFY + {AuOpt_UDBA_HNOTIFY, "fsnotify"}, +#endif +#endif + {-1, NULL} +}; + +static int noinline_for_stack udba_val(char *str) +{ + substring_t args[MAX_OPT_ARGS]; + + return match_token(str, udbalevel, args); +} + +const char *au_optstr_udba(int udba) +{ + return au_parser_pattern(udba, udbalevel); +} + +/* ---------------------------------------------------------------------- */ + +static match_table_t au_wbr_create_policy = { + {AuWbrCreate_TDP, "tdp"}, + {AuWbrCreate_TDP, "top-down-parent"}, + {AuWbrCreate_RR, "rr"}, + {AuWbrCreate_RR, "round-robin"}, + {AuWbrCreate_MFS, "mfs"}, + {AuWbrCreate_MFS, "most-free-space"}, + {AuWbrCreate_MFSV, "mfs:%d"}, + {AuWbrCreate_MFSV, "most-free-space:%d"}, + + /* top-down regardless the parent, and then mfs */ + {AuWbrCreate_TDMFS, "tdmfs:%d"}, + {AuWbrCreate_TDMFSV, "tdmfs:%d:%d"}, + + {AuWbrCreate_MFSRR, "mfsrr:%d"}, + {AuWbrCreate_MFSRRV, "mfsrr:%d:%d"}, + {AuWbrCreate_PMFS, "pmfs"}, + {AuWbrCreate_PMFSV, "pmfs:%d"}, + {AuWbrCreate_PMFSRR, "pmfsrr:%d"}, + {AuWbrCreate_PMFSRRV, "pmfsrr:%d:%d"}, + + {-1, NULL} +}; + +static int au_wbr_mfs_wmark(substring_t *arg, char *str, + struct au_opt_wbr_create *create) +{ + int err; + unsigned long long ull; + + err = 0; + if (!match_u64(arg, &ull)) + create->mfsrr_watermark = ull; + else { + pr_err("bad integer in %s\n", str); + err = -EINVAL; + } + + return err; +} + +static int au_wbr_mfs_sec(substring_t *arg, char *str, + struct au_opt_wbr_create *create) +{ + int n, err; + + err = 0; + if (!match_int(arg, &n) && 0 <= n && n <= AUFS_MFS_MAX_SEC) + create->mfs_second = n; + else { + pr_err("bad integer in %s\n", str); + err = -EINVAL; + } + + return err; +} + +static int noinline_for_stack +au_wbr_create_val(char *str, struct au_opt_wbr_create *create) +{ + int err, e; + substring_t args[MAX_OPT_ARGS]; + + err = match_token(str, au_wbr_create_policy, args); + create->wbr_create = err; + switch (err) { + case AuWbrCreate_MFSRRV: + case AuWbrCreate_TDMFSV: + case AuWbrCreate_PMFSRRV: + e = au_wbr_mfs_wmark(&args[0], str, create); + if (!e) + e = au_wbr_mfs_sec(&args[1], str, create); + if (unlikely(e)) + err = e; + break; + case AuWbrCreate_MFSRR: + case AuWbrCreate_TDMFS: + case AuWbrCreate_PMFSRR: + e = au_wbr_mfs_wmark(&args[0], str, create); + if (unlikely(e)) { + err = e; + break; + } + /*FALLTHROUGH*/ + case AuWbrCreate_MFS: + case AuWbrCreate_PMFS: + create->mfs_second = AUFS_MFS_DEF_SEC; + break; + case AuWbrCreate_MFSV: + case AuWbrCreate_PMFSV: + e = au_wbr_mfs_sec(&args[0], str, create); + if (unlikely(e)) + err = e; + break; + } + + return err; +} + +const char *au_optstr_wbr_create(int wbr_create) +{ + return au_parser_pattern(wbr_create, au_wbr_create_policy); +} + +static match_table_t au_wbr_copyup_policy = { + {AuWbrCopyup_TDP, "tdp"}, + {AuWbrCopyup_TDP, "top-down-parent"}, + {AuWbrCopyup_BUP, "bup"}, + {AuWbrCopyup_BUP, "bottom-up-parent"}, + {AuWbrCopyup_BU, "bu"}, + {AuWbrCopyup_BU, "bottom-up"}, + {-1, NULL} +}; + +static int noinline_for_stack au_wbr_copyup_val(char *str) +{ + substring_t args[MAX_OPT_ARGS]; + + return match_token(str, au_wbr_copyup_policy, args); +} + +const char *au_optstr_wbr_copyup(int wbr_copyup) +{ + return au_parser_pattern(wbr_copyup, au_wbr_copyup_policy); +} + +/* ---------------------------------------------------------------------- */ + +static const int lkup_dirflags = LOOKUP_FOLLOW | LOOKUP_DIRECTORY; + +static void dump_opts(struct au_opts *opts) +{ +#ifdef CONFIG_AUFS_DEBUG + /* reduce stack space */ + union { + struct au_opt_add *add; + struct au_opt_del *del; + struct au_opt_mod *mod; + struct au_opt_xino *xino; + struct au_opt_xino_itrunc *xino_itrunc; + struct au_opt_wbr_create *create; + } u; + struct au_opt *opt; + + opt = opts->opt; + while (opt->type != Opt_tail) { + switch (opt->type) { + case Opt_add: + u.add = &opt->add; + AuDbg("add {b%d, %s, 0x%x, %p}\n", + u.add->bindex, u.add->pathname, u.add->perm, + u.add->path.dentry); + break; + case Opt_del: + case Opt_idel: + u.del = &opt->del; + AuDbg("del {%s, %p}\n", + u.del->pathname, u.del->h_path.dentry); + break; + case Opt_mod: + case Opt_imod: + u.mod = &opt->mod; + AuDbg("mod {%s, 0x%x, %p}\n", + u.mod->path, u.mod->perm, u.mod->h_root); + break; + case Opt_append: + u.add = &opt->add; + AuDbg("append {b%d, %s, 0x%x, %p}\n", + u.add->bindex, u.add->pathname, u.add->perm, + u.add->path.dentry); + break; + case Opt_prepend: + u.add = &opt->add; + AuDbg("prepend {b%d, %s, 0x%x, %p}\n", + u.add->bindex, u.add->pathname, u.add->perm, + u.add->path.dentry); + break; + case Opt_dirwh: + AuDbg("dirwh %d\n", opt->dirwh); + break; + case Opt_rdcache: + AuDbg("rdcache %d\n", opt->rdcache); + break; + case Opt_rdblk: + AuDbg("rdblk %u\n", opt->rdblk); + break; + case Opt_rdblk_def: + AuDbg("rdblk_def\n"); + break; + case Opt_rdhash: + AuDbg("rdhash %u\n", opt->rdhash); + break; + case Opt_rdhash_def: + AuDbg("rdhash_def\n"); + break; + case Opt_xino: + u.xino = &opt->xino; + AuDbg("xino {%s %pD}\n", u.xino->path, u.xino->file); + break; + case Opt_trunc_xino: + AuLabel(trunc_xino); + break; + case Opt_notrunc_xino: + AuLabel(notrunc_xino); + break; + case Opt_trunc_xino_path: + case Opt_itrunc_xino: + u.xino_itrunc = &opt->xino_itrunc; + AuDbg("trunc_xino %d\n", u.xino_itrunc->bindex); + break; + case Opt_noxino: + AuLabel(noxino); + break; + case Opt_trunc_xib: + AuLabel(trunc_xib); + break; + case Opt_notrunc_xib: + AuLabel(notrunc_xib); + break; + case Opt_shwh: + AuLabel(shwh); + break; + case Opt_noshwh: + AuLabel(noshwh); + break; + case Opt_dirperm1: + AuLabel(dirperm1); + break; + case Opt_nodirperm1: + AuLabel(nodirperm1); + break; + case Opt_plink: + AuLabel(plink); + break; + case Opt_noplink: + AuLabel(noplink); + break; + case Opt_list_plink: + AuLabel(list_plink); + break; + case Opt_udba: + AuDbg("udba %d, %s\n", + opt->udba, au_optstr_udba(opt->udba)); + break; + case Opt_dio: + AuLabel(dio); + break; + case Opt_nodio: + AuLabel(nodio); + break; + case Opt_diropq_a: + AuLabel(diropq_a); + break; + case Opt_diropq_w: + AuLabel(diropq_w); + break; + case Opt_warn_perm: + AuLabel(warn_perm); + break; + case Opt_nowarn_perm: + AuLabel(nowarn_perm); + break; + case Opt_verbose: + AuLabel(verbose); + break; + case Opt_noverbose: + AuLabel(noverbose); + break; + case Opt_sum: + AuLabel(sum); + break; + case Opt_nosum: + AuLabel(nosum); + break; + case Opt_wsum: + AuLabel(wsum); + break; + case Opt_wbr_create: + u.create = &opt->wbr_create; + AuDbg("create %d, %s\n", u.create->wbr_create, + au_optstr_wbr_create(u.create->wbr_create)); + switch (u.create->wbr_create) { + case AuWbrCreate_MFSV: + case AuWbrCreate_PMFSV: + AuDbg("%d sec\n", u.create->mfs_second); + break; + case AuWbrCreate_MFSRR: + case AuWbrCreate_TDMFS: + AuDbg("%llu watermark\n", + u.create->mfsrr_watermark); + break; + case AuWbrCreate_MFSRRV: + case AuWbrCreate_TDMFSV: + case AuWbrCreate_PMFSRRV: + AuDbg("%llu watermark, %d sec\n", + u.create->mfsrr_watermark, + u.create->mfs_second); + break; + } + break; + case Opt_wbr_copyup: + AuDbg("copyup %d, %s\n", opt->wbr_copyup, + au_optstr_wbr_copyup(opt->wbr_copyup)); + break; + case Opt_fhsm_sec: + AuDbg("fhsm_sec %u\n", opt->fhsm_second); + break; + case Opt_dirren: + AuLabel(dirren); + break; + case Opt_nodirren: + AuLabel(nodirren); + break; + case Opt_acl: + AuLabel(acl); + break; + case Opt_noacl: + AuLabel(noacl); + break; + default: + BUG(); + } + opt++; + } +#endif +} + +void au_opts_free(struct au_opts *opts) +{ + struct au_opt *opt; + + opt = opts->opt; + while (opt->type != Opt_tail) { + switch (opt->type) { + case Opt_add: + case Opt_append: + case Opt_prepend: + path_put(&opt->add.path); + break; + case Opt_del: + case Opt_idel: + path_put(&opt->del.h_path); + break; + case Opt_mod: + case Opt_imod: + dput(opt->mod.h_root); + break; + case Opt_xino: + fput(opt->xino.file); + break; + } + opt++; + } +} + +static int opt_add(struct au_opt *opt, char *opt_str, unsigned long sb_flags, + aufs_bindex_t bindex) +{ + int err; + struct au_opt_add *add = &opt->add; + char *p; + + add->bindex = bindex; + add->perm = AuBrPerm_RO; + add->pathname = opt_str; + p = strchr(opt_str, '='); + if (p) { + *p++ = 0; + if (*p) + add->perm = br_perm_val(p); + } + + err = vfsub_kern_path(add->pathname, lkup_dirflags, &add->path); + if (!err) { + if (!p) { + add->perm = AuBrPerm_RO; + if (au_test_fs_rr(add->path.dentry->d_sb)) + add->perm = AuBrPerm_RR; + else if (!bindex && !(sb_flags & SB_RDONLY)) + add->perm = AuBrPerm_RW; + } + opt->type = Opt_add; + goto out; + } + pr_err("lookup failed %s (%d)\n", add->pathname, err); + err = -EINVAL; + +out: + return err; +} + +static int au_opts_parse_del(struct au_opt_del *del, substring_t args[]) +{ + int err; + + del->pathname = args[0].from; + AuDbg("del path %s\n", del->pathname); + + err = vfsub_kern_path(del->pathname, lkup_dirflags, &del->h_path); + if (unlikely(err)) + pr_err("lookup failed %s (%d)\n", del->pathname, err); + + return err; +} + +#if 0 /* reserved for future use */ +static int au_opts_parse_idel(struct super_block *sb, aufs_bindex_t bindex, + struct au_opt_del *del, substring_t args[]) +{ + int err; + struct dentry *root; + + err = -EINVAL; + root = sb->s_root; + aufs_read_lock(root, AuLock_FLUSH); + if (bindex < 0 || au_sbbot(sb) < bindex) { + pr_err("out of bounds, %d\n", bindex); + goto out; + } + + err = 0; + del->h_path.dentry = dget(au_h_dptr(root, bindex)); + del->h_path.mnt = mntget(au_sbr_mnt(sb, bindex)); + +out: + aufs_read_unlock(root, !AuLock_IR); + return err; +} +#endif + +static int noinline_for_stack +au_opts_parse_mod(struct au_opt_mod *mod, substring_t args[]) +{ + int err; + struct path path; + char *p; + + err = -EINVAL; + mod->path = args[0].from; + p = strchr(mod->path, '='); + if (unlikely(!p)) { + pr_err("no permission %s\n", args[0].from); + goto out; + } + + *p++ = 0; + err = vfsub_kern_path(mod->path, lkup_dirflags, &path); + if (unlikely(err)) { + pr_err("lookup failed %s (%d)\n", mod->path, err); + goto out; + } + + mod->perm = br_perm_val(p); + AuDbg("mod path %s, perm 0x%x, %s\n", mod->path, mod->perm, p); + mod->h_root = dget(path.dentry); + path_put(&path); + +out: + return err; +} + +#if 0 /* reserved for future use */ +static int au_opts_parse_imod(struct super_block *sb, aufs_bindex_t bindex, + struct au_opt_mod *mod, substring_t args[]) +{ + int err; + struct dentry *root; + + err = -EINVAL; + root = sb->s_root; + aufs_read_lock(root, AuLock_FLUSH); + if (bindex < 0 || au_sbbot(sb) < bindex) { + pr_err("out of bounds, %d\n", bindex); + goto out; + } + + err = 0; + mod->perm = br_perm_val(args[1].from); + AuDbg("mod path %s, perm 0x%x, %s\n", + mod->path, mod->perm, args[1].from); + mod->h_root = dget(au_h_dptr(root, bindex)); + +out: + aufs_read_unlock(root, !AuLock_IR); + return err; +} +#endif + +static int au_opts_parse_xino(struct super_block *sb, struct au_opt_xino *xino, + substring_t args[]) +{ + int err; + struct file *file; + + file = au_xino_create(sb, args[0].from, /*silent*/0, /*wbrtop*/0); + err = PTR_ERR(file); + if (IS_ERR(file)) + goto out; + + err = -EINVAL; + if (unlikely(file->f_path.dentry->d_sb == sb)) { + fput(file); + pr_err("%s must be outside\n", args[0].from); + goto out; + } + + err = 0; + xino->file = file; + xino->path = args[0].from; + +out: + return err; +} + +static int noinline_for_stack +au_opts_parse_xino_itrunc_path(struct super_block *sb, + struct au_opt_xino_itrunc *xino_itrunc, + substring_t args[]) +{ + int err; + aufs_bindex_t bbot, bindex; + struct path path; + struct dentry *root; + + err = vfsub_kern_path(args[0].from, lkup_dirflags, &path); + if (unlikely(err)) { + pr_err("lookup failed %s (%d)\n", args[0].from, err); + goto out; + } + + xino_itrunc->bindex = -1; + root = sb->s_root; + aufs_read_lock(root, AuLock_FLUSH); + bbot = au_sbbot(sb); + for (bindex = 0; bindex <= bbot; bindex++) { + if (au_h_dptr(root, bindex) == path.dentry) { + xino_itrunc->bindex = bindex; + break; + } + } + aufs_read_unlock(root, !AuLock_IR); + path_put(&path); + + if (unlikely(xino_itrunc->bindex < 0)) { + pr_err("no such branch %s\n", args[0].from); + err = -EINVAL; + } + +out: + return err; +} + +/* called without aufs lock */ +int au_opts_parse(struct super_block *sb, char *str, struct au_opts *opts) +{ + int err, n, token; + aufs_bindex_t bindex; + unsigned char skipped; + struct dentry *root; + struct au_opt *opt, *opt_tail; + char *opt_str; + /* reduce the stack space */ + union { + struct au_opt_xino_itrunc *xino_itrunc; + struct au_opt_wbr_create *create; + } u; + struct { + substring_t args[MAX_OPT_ARGS]; + } *a; + + err = -ENOMEM; + a = kmalloc(sizeof(*a), GFP_NOFS); + if (unlikely(!a)) + goto out; + + root = sb->s_root; + err = 0; + bindex = 0; + opt = opts->opt; + opt_tail = opt + opts->max_opt - 1; + opt->type = Opt_tail; + while (!err && (opt_str = strsep(&str, ",")) && *opt_str) { + err = -EINVAL; + skipped = 0; + token = match_token(opt_str, options, a->args); + switch (token) { + case Opt_br: + err = 0; + while (!err && (opt_str = strsep(&a->args[0].from, ":")) + && *opt_str) { + err = opt_add(opt, opt_str, opts->sb_flags, + bindex++); + if (unlikely(!err && ++opt > opt_tail)) { + err = -E2BIG; + break; + } + opt->type = Opt_tail; + skipped = 1; + } + break; + case Opt_add: + if (unlikely(match_int(&a->args[0], &n))) { + pr_err("bad integer in %s\n", opt_str); + break; + } + bindex = n; + err = opt_add(opt, a->args[1].from, opts->sb_flags, + bindex); + if (!err) + opt->type = token; + break; + case Opt_append: + err = opt_add(opt, a->args[0].from, opts->sb_flags, + /*dummy bindex*/1); + if (!err) + opt->type = token; + break; + case Opt_prepend: + err = opt_add(opt, a->args[0].from, opts->sb_flags, + /*bindex*/0); + if (!err) + opt->type = token; + break; + case Opt_del: + err = au_opts_parse_del(&opt->del, a->args); + if (!err) + opt->type = token; + break; +#if 0 /* reserved for future use */ + case Opt_idel: + del->pathname = "(indexed)"; + if (unlikely(match_int(&args[0], &n))) { + pr_err("bad integer in %s\n", opt_str); + break; + } + err = au_opts_parse_idel(sb, n, &opt->del, a->args); + if (!err) + opt->type = token; + break; +#endif + case Opt_mod: + err = au_opts_parse_mod(&opt->mod, a->args); + if (!err) + opt->type = token; + break; +#ifdef IMOD /* reserved for future use */ + case Opt_imod: + u.mod->path = "(indexed)"; + if (unlikely(match_int(&a->args[0], &n))) { + pr_err("bad integer in %s\n", opt_str); + break; + } + err = au_opts_parse_imod(sb, n, &opt->mod, a->args); + if (!err) + opt->type = token; + break; +#endif + case Opt_xino: + err = au_opts_parse_xino(sb, &opt->xino, a->args); + if (!err) + opt->type = token; + break; + + case Opt_trunc_xino_path: + err = au_opts_parse_xino_itrunc_path + (sb, &opt->xino_itrunc, a->args); + if (!err) + opt->type = token; + break; + + case Opt_itrunc_xino: + u.xino_itrunc = &opt->xino_itrunc; + if (unlikely(match_int(&a->args[0], &n))) { + pr_err("bad integer in %s\n", opt_str); + break; + } + u.xino_itrunc->bindex = n; + aufs_read_lock(root, AuLock_FLUSH); + if (n < 0 || au_sbbot(sb) < n) { + pr_err("out of bounds, %d\n", n); + aufs_read_unlock(root, !AuLock_IR); + break; + } + aufs_read_unlock(root, !AuLock_IR); + err = 0; + opt->type = token; + break; + + case Opt_dirwh: + if (unlikely(match_int(&a->args[0], &opt->dirwh))) + break; + err = 0; + opt->type = token; + break; + + case Opt_rdcache: + if (unlikely(match_int(&a->args[0], &n))) { + pr_err("bad integer in %s\n", opt_str); + break; + } + if (unlikely(n > AUFS_RDCACHE_MAX)) { + pr_err("rdcache must be smaller than %d\n", + AUFS_RDCACHE_MAX); + break; + } + opt->rdcache = n; + err = 0; + opt->type = token; + break; + case Opt_rdblk: + if (unlikely(match_int(&a->args[0], &n) + || n < 0 + || n > KMALLOC_MAX_SIZE)) { + pr_err("bad integer in %s\n", opt_str); + break; + } + if (unlikely(n && n < NAME_MAX)) { + pr_err("rdblk must be larger than %d\n", + NAME_MAX); + break; + } + opt->rdblk = n; + err = 0; + opt->type = token; + break; + case Opt_rdhash: + if (unlikely(match_int(&a->args[0], &n) + || n < 0 + || n * sizeof(struct hlist_head) + > KMALLOC_MAX_SIZE)) { + pr_err("bad integer in %s\n", opt_str); + break; + } + opt->rdhash = n; + err = 0; + opt->type = token; + break; + + case Opt_trunc_xino: + case Opt_notrunc_xino: + case Opt_noxino: + case Opt_trunc_xib: + case Opt_notrunc_xib: + case Opt_shwh: + case Opt_noshwh: + case Opt_dirperm1: + case Opt_nodirperm1: + case Opt_plink: + case Opt_noplink: + case Opt_list_plink: + case Opt_dio: + case Opt_nodio: + case Opt_diropq_a: + case Opt_diropq_w: + case Opt_warn_perm: + case Opt_nowarn_perm: + case Opt_verbose: + case Opt_noverbose: + case Opt_sum: + case Opt_nosum: + case Opt_wsum: + case Opt_rdblk_def: + case Opt_rdhash_def: + case Opt_dirren: + case Opt_nodirren: + case Opt_acl: + case Opt_noacl: + err = 0; + opt->type = token; + break; + + case Opt_udba: + opt->udba = udba_val(a->args[0].from); + if (opt->udba >= 0) { + err = 0; + opt->type = token; + } else + pr_err("wrong value, %s\n", opt_str); + break; + + case Opt_wbr_create: + u.create = &opt->wbr_create; + u.create->wbr_create + = au_wbr_create_val(a->args[0].from, u.create); + if (u.create->wbr_create >= 0) { + err = 0; + opt->type = token; + } else + pr_err("wrong value, %s\n", opt_str); + break; + case Opt_wbr_copyup: + opt->wbr_copyup = au_wbr_copyup_val(a->args[0].from); + if (opt->wbr_copyup >= 0) { + err = 0; + opt->type = token; + } else + pr_err("wrong value, %s\n", opt_str); + break; + + case Opt_fhsm_sec: + if (unlikely(match_int(&a->args[0], &n) + || n < 0)) { + pr_err("bad integer in %s\n", opt_str); + break; + } + if (sysaufs_brs) { + opt->fhsm_second = n; + opt->type = token; + } else + pr_warn("ignored %s\n", opt_str); + err = 0; + break; + + case Opt_ignore: + pr_warn("ignored %s\n", opt_str); + /*FALLTHROUGH*/ + case Opt_ignore_silent: + skipped = 1; + err = 0; + break; + case Opt_err: + pr_err("unknown option %s\n", opt_str); + break; + } + + if (!err && !skipped) { + if (unlikely(++opt > opt_tail)) { + err = -E2BIG; + opt--; + opt->type = Opt_tail; + break; + } + opt->type = Opt_tail; + } + } + + au_kfree_rcu(a); + dump_opts(opts); + if (unlikely(err)) + au_opts_free(opts); + +out: + return err; +} + +static int au_opt_wbr_create(struct super_block *sb, + struct au_opt_wbr_create *create) +{ + int err; + struct au_sbinfo *sbinfo; + + SiMustWriteLock(sb); + + err = 1; /* handled */ + sbinfo = au_sbi(sb); + if (sbinfo->si_wbr_create_ops->fin) { + err = sbinfo->si_wbr_create_ops->fin(sb); + if (!err) + err = 1; + } + + sbinfo->si_wbr_create = create->wbr_create; + sbinfo->si_wbr_create_ops = au_wbr_create_ops + create->wbr_create; + switch (create->wbr_create) { + case AuWbrCreate_MFSRRV: + case AuWbrCreate_MFSRR: + case AuWbrCreate_TDMFS: + case AuWbrCreate_TDMFSV: + case AuWbrCreate_PMFSRR: + case AuWbrCreate_PMFSRRV: + sbinfo->si_wbr_mfs.mfsrr_watermark = create->mfsrr_watermark; + /*FALLTHROUGH*/ + case AuWbrCreate_MFS: + case AuWbrCreate_MFSV: + case AuWbrCreate_PMFS: + case AuWbrCreate_PMFSV: + sbinfo->si_wbr_mfs.mfs_expire + = msecs_to_jiffies(create->mfs_second * MSEC_PER_SEC); + break; + } + + if (sbinfo->si_wbr_create_ops->init) + sbinfo->si_wbr_create_ops->init(sb); /* ignore */ + + return err; +} + +/* + * returns, + * plus: processed without an error + * zero: unprocessed + */ +static int au_opt_simple(struct super_block *sb, struct au_opt *opt, + struct au_opts *opts) +{ + int err; + struct au_sbinfo *sbinfo; + + SiMustWriteLock(sb); + + err = 1; /* handled */ + sbinfo = au_sbi(sb); + switch (opt->type) { + case Opt_udba: + sbinfo->si_mntflags &= ~AuOptMask_UDBA; + sbinfo->si_mntflags |= opt->udba; + opts->given_udba |= opt->udba; + break; + + case Opt_plink: + au_opt_set(sbinfo->si_mntflags, PLINK); + break; + case Opt_noplink: + if (au_opt_test(sbinfo->si_mntflags, PLINK)) + au_plink_put(sb, /*verbose*/1); + au_opt_clr(sbinfo->si_mntflags, PLINK); + break; + case Opt_list_plink: + if (au_opt_test(sbinfo->si_mntflags, PLINK)) + au_plink_list(sb); + break; + + case Opt_dio: + au_opt_set(sbinfo->si_mntflags, DIO); + au_fset_opts(opts->flags, REFRESH_DYAOP); + break; + case Opt_nodio: + au_opt_clr(sbinfo->si_mntflags, DIO); + au_fset_opts(opts->flags, REFRESH_DYAOP); + break; + + case Opt_fhsm_sec: + au_fhsm_set(sbinfo, opt->fhsm_second); + break; + + case Opt_diropq_a: + au_opt_set(sbinfo->si_mntflags, ALWAYS_DIROPQ); + break; + case Opt_diropq_w: + au_opt_clr(sbinfo->si_mntflags, ALWAYS_DIROPQ); + break; + + case Opt_warn_perm: + au_opt_set(sbinfo->si_mntflags, WARN_PERM); + break; + case Opt_nowarn_perm: + au_opt_clr(sbinfo->si_mntflags, WARN_PERM); + break; + + case Opt_verbose: + au_opt_set(sbinfo->si_mntflags, VERBOSE); + break; + case Opt_noverbose: + au_opt_clr(sbinfo->si_mntflags, VERBOSE); + break; + + case Opt_sum: + au_opt_set(sbinfo->si_mntflags, SUM); + break; + case Opt_wsum: + au_opt_clr(sbinfo->si_mntflags, SUM); + au_opt_set(sbinfo->si_mntflags, SUM_W); + break; + case Opt_nosum: + au_opt_clr(sbinfo->si_mntflags, SUM); + au_opt_clr(sbinfo->si_mntflags, SUM_W); + break; + + case Opt_wbr_create: + err = au_opt_wbr_create(sb, &opt->wbr_create); + break; + case Opt_wbr_copyup: + sbinfo->si_wbr_copyup = opt->wbr_copyup; + sbinfo->si_wbr_copyup_ops = au_wbr_copyup_ops + opt->wbr_copyup; + break; + + case Opt_dirwh: + sbinfo->si_dirwh = opt->dirwh; + break; + + case Opt_rdcache: + sbinfo->si_rdcache + = msecs_to_jiffies(opt->rdcache * MSEC_PER_SEC); + break; + case Opt_rdblk: + sbinfo->si_rdblk = opt->rdblk; + break; + case Opt_rdblk_def: + sbinfo->si_rdblk = AUFS_RDBLK_DEF; + break; + case Opt_rdhash: + sbinfo->si_rdhash = opt->rdhash; + break; + case Opt_rdhash_def: + sbinfo->si_rdhash = AUFS_RDHASH_DEF; + break; + + case Opt_shwh: + au_opt_set(sbinfo->si_mntflags, SHWH); + break; + case Opt_noshwh: + au_opt_clr(sbinfo->si_mntflags, SHWH); + break; + + case Opt_dirperm1: + au_opt_set(sbinfo->si_mntflags, DIRPERM1); + break; + case Opt_nodirperm1: + au_opt_clr(sbinfo->si_mntflags, DIRPERM1); + break; + + case Opt_trunc_xino: + au_opt_set(sbinfo->si_mntflags, TRUNC_XINO); + break; + case Opt_notrunc_xino: + au_opt_clr(sbinfo->si_mntflags, TRUNC_XINO); + break; + + case Opt_trunc_xino_path: + case Opt_itrunc_xino: + err = au_xino_trunc(sb, opt->xino_itrunc.bindex, + /*idx_begin*/0); + if (!err) + err = 1; + break; + + case Opt_trunc_xib: + au_fset_opts(opts->flags, TRUNC_XIB); + break; + case Opt_notrunc_xib: + au_fclr_opts(opts->flags, TRUNC_XIB); + break; + + case Opt_dirren: + err = 1; + if (!au_opt_test(sbinfo->si_mntflags, DIRREN)) { + err = au_dr_opt_set(sb); + if (!err) + err = 1; + } + if (err == 1) + au_opt_set(sbinfo->si_mntflags, DIRREN); + break; + case Opt_nodirren: + err = 1; + if (au_opt_test(sbinfo->si_mntflags, DIRREN)) { + err = au_dr_opt_clr(sb, au_ftest_opts(opts->flags, + DR_FLUSHED)); + if (!err) + err = 1; + } + if (err == 1) + au_opt_clr(sbinfo->si_mntflags, DIRREN); + break; + + case Opt_acl: + sb->s_flags |= SB_POSIXACL; + break; + case Opt_noacl: + sb->s_flags &= ~SB_POSIXACL; + break; + + default: + err = 0; + break; + } + + return err; +} + +/* + * returns tri-state. + * plus: processed without an error + * zero: unprocessed + * minus: error + */ +static int au_opt_br(struct super_block *sb, struct au_opt *opt, + struct au_opts *opts) +{ + int err, do_refresh; + + err = 0; + switch (opt->type) { + case Opt_append: + opt->add.bindex = au_sbbot(sb) + 1; + if (opt->add.bindex < 0) + opt->add.bindex = 0; + goto add; + /* Always goto add, not fallthrough */ + case Opt_prepend: + opt->add.bindex = 0; + /* fallthrough */ + add: /* indented label */ + case Opt_add: + err = au_br_add(sb, &opt->add, + au_ftest_opts(opts->flags, REMOUNT)); + if (!err) { + err = 1; + au_fset_opts(opts->flags, REFRESH); + } + break; + + case Opt_del: + case Opt_idel: + err = au_br_del(sb, &opt->del, + au_ftest_opts(opts->flags, REMOUNT)); + if (!err) { + err = 1; + au_fset_opts(opts->flags, TRUNC_XIB); + au_fset_opts(opts->flags, REFRESH); + } + break; + + case Opt_mod: + case Opt_imod: + err = au_br_mod(sb, &opt->mod, + au_ftest_opts(opts->flags, REMOUNT), + &do_refresh); + if (!err) { + err = 1; + if (do_refresh) + au_fset_opts(opts->flags, REFRESH); + } + break; + } + return err; +} + +static int au_opt_xino(struct super_block *sb, struct au_opt *opt, + struct au_opt_xino **opt_xino, + struct au_opts *opts) +{ + int err; + + err = 0; + switch (opt->type) { + case Opt_xino: + err = au_xino_set(sb, &opt->xino, + !!au_ftest_opts(opts->flags, REMOUNT)); + if (unlikely(err)) + break; + + *opt_xino = &opt->xino; + break; + + case Opt_noxino: + au_xino_clr(sb); + *opt_xino = (void *)-1; + break; + } + + return err; +} + +int au_opts_verify(struct super_block *sb, unsigned long sb_flags, + unsigned int pending) +{ + int err, fhsm; + aufs_bindex_t bindex, bbot; + unsigned char do_plink, skip, do_free, can_no_dreval; + struct au_branch *br; + struct au_wbr *wbr; + struct dentry *root, *dentry; + struct inode *dir, *h_dir; + struct au_sbinfo *sbinfo; + struct au_hinode *hdir; + + SiMustAnyLock(sb); + + sbinfo = au_sbi(sb); + AuDebugOn(!(sbinfo->si_mntflags & AuOptMask_UDBA)); + + if (!(sb_flags & SB_RDONLY)) { + if (unlikely(!au_br_writable(au_sbr_perm(sb, 0)))) + pr_warn("first branch should be rw\n"); + if (unlikely(au_opt_test(sbinfo->si_mntflags, SHWH))) + pr_warn_once("shwh should be used with ro\n"); + } + + if (au_opt_test((sbinfo->si_mntflags | pending), UDBA_HNOTIFY) + && !au_opt_test(sbinfo->si_mntflags, XINO)) + pr_warn_once("udba=*notify requires xino\n"); + + if (au_opt_test(sbinfo->si_mntflags, DIRPERM1)) + pr_warn_once("dirperm1 breaks the protection" + " by the permission bits on the lower branch\n"); + + err = 0; + fhsm = 0; + root = sb->s_root; + dir = d_inode(root); + do_plink = !!au_opt_test(sbinfo->si_mntflags, PLINK); + can_no_dreval = !!au_opt_test((sbinfo->si_mntflags | pending), + UDBA_NONE); + bbot = au_sbbot(sb); + for (bindex = 0; !err && bindex <= bbot; bindex++) { + skip = 0; + h_dir = au_h_iptr(dir, bindex); + br = au_sbr(sb, bindex); + + if ((br->br_perm & AuBrAttr_ICEX) + && !h_dir->i_op->listxattr) + br->br_perm &= ~AuBrAttr_ICEX; +#if 0 /* untested */ + if ((br->br_perm & AuBrAttr_ICEX_SEC) + && (au_br_sb(br)->s_flags & SB_NOSEC)) + br->br_perm &= ~AuBrAttr_ICEX_SEC; +#endif + + do_free = 0; + wbr = br->br_wbr; + if (wbr) + wbr_wh_read_lock(wbr); + + if (!au_br_writable(br->br_perm)) { + do_free = !!wbr; + skip = (!wbr + || (!wbr->wbr_whbase + && !wbr->wbr_plink + && !wbr->wbr_orph)); + } else if (!au_br_wh_linkable(br->br_perm)) { + /* skip = (!br->br_whbase && !br->br_orph); */ + skip = (!wbr || !wbr->wbr_whbase); + if (skip && wbr) { + if (do_plink) + skip = !!wbr->wbr_plink; + else + skip = !wbr->wbr_plink; + } + } else { + /* skip = (br->br_whbase && br->br_ohph); */ + skip = (wbr && wbr->wbr_whbase); + if (skip) { + if (do_plink) + skip = !!wbr->wbr_plink; + else + skip = !wbr->wbr_plink; + } + } + if (wbr) + wbr_wh_read_unlock(wbr); + + if (can_no_dreval) { + dentry = br->br_path.dentry; + spin_lock(&dentry->d_lock); + if (dentry->d_flags & + (DCACHE_OP_REVALIDATE | DCACHE_OP_WEAK_REVALIDATE)) + can_no_dreval = 0; + spin_unlock(&dentry->d_lock); + } + + if (au_br_fhsm(br->br_perm)) { + fhsm++; + AuDebugOn(!br->br_fhsm); + } + + if (skip) + continue; + + hdir = au_hi(dir, bindex); + au_hn_inode_lock_nested(hdir, AuLsc_I_PARENT); + if (wbr) + wbr_wh_write_lock(wbr); + err = au_wh_init(br, sb); + if (wbr) + wbr_wh_write_unlock(wbr); + au_hn_inode_unlock(hdir); + + if (!err && do_free) { + au_kfree_rcu(wbr); + br->br_wbr = NULL; + } + } + + if (can_no_dreval) + au_fset_si(sbinfo, NO_DREVAL); + else + au_fclr_si(sbinfo, NO_DREVAL); + + if (fhsm >= 2) { + au_fset_si(sbinfo, FHSM); + for (bindex = bbot; bindex >= 0; bindex--) { + br = au_sbr(sb, bindex); + if (au_br_fhsm(br->br_perm)) { + au_fhsm_set_bottom(sb, bindex); + break; + } + } + } else { + au_fclr_si(sbinfo, FHSM); + au_fhsm_set_bottom(sb, -1); + } + + return err; +} + +int au_opts_mount(struct super_block *sb, struct au_opts *opts) +{ + int err; + unsigned int tmp; + aufs_bindex_t bindex, bbot; + struct au_opt *opt; + struct au_opt_xino *opt_xino, xino; + struct au_sbinfo *sbinfo; + struct au_branch *br; + struct inode *dir; + + SiMustWriteLock(sb); + + err = 0; + opt_xino = NULL; + opt = opts->opt; + while (err >= 0 && opt->type != Opt_tail) + err = au_opt_simple(sb, opt++, opts); + if (err > 0) + err = 0; + else if (unlikely(err < 0)) + goto out; + + /* disable xino and udba temporary */ + sbinfo = au_sbi(sb); + tmp = sbinfo->si_mntflags; + au_opt_clr(sbinfo->si_mntflags, XINO); + au_opt_set_udba(sbinfo->si_mntflags, UDBA_REVAL); + + opt = opts->opt; + while (err >= 0 && opt->type != Opt_tail) + err = au_opt_br(sb, opt++, opts); + if (err > 0) + err = 0; + else if (unlikely(err < 0)) + goto out; + + bbot = au_sbbot(sb); + if (unlikely(bbot < 0)) { + err = -EINVAL; + pr_err("no branches\n"); + goto out; + } + + if (au_opt_test(tmp, XINO)) + au_opt_set(sbinfo->si_mntflags, XINO); + opt = opts->opt; + while (!err && opt->type != Opt_tail) + err = au_opt_xino(sb, opt++, &opt_xino, opts); + if (unlikely(err)) + goto out; + + err = au_opts_verify(sb, sb->s_flags, tmp); + if (unlikely(err)) + goto out; + + /* restore xino */ + if (au_opt_test(tmp, XINO) && !opt_xino) { + xino.file = au_xino_def(sb); + err = PTR_ERR(xino.file); + if (IS_ERR(xino.file)) + goto out; + + err = au_xino_set(sb, &xino, /*remount*/0); + fput(xino.file); + if (unlikely(err)) + goto out; + } + + /* restore udba */ + tmp &= AuOptMask_UDBA; + sbinfo->si_mntflags &= ~AuOptMask_UDBA; + sbinfo->si_mntflags |= tmp; + bbot = au_sbbot(sb); + for (bindex = 0; bindex <= bbot; bindex++) { + br = au_sbr(sb, bindex); + err = au_hnotify_reset_br(tmp, br, br->br_perm); + if (unlikely(err)) + AuIOErr("hnotify failed on br %d, %d, ignored\n", + bindex, err); + /* go on even if err */ + } + if (au_opt_test(tmp, UDBA_HNOTIFY)) { + dir = d_inode(sb->s_root); + au_hn_reset(dir, au_hi_flags(dir, /*isdir*/1) & ~AuHi_XINO); + } + +out: + return err; +} + +int au_opts_remount(struct super_block *sb, struct au_opts *opts) +{ + int err, rerr; + unsigned char no_dreval; + struct inode *dir; + struct au_opt_xino *opt_xino; + struct au_opt *opt; + struct au_sbinfo *sbinfo; + + SiMustWriteLock(sb); + + err = au_dr_opt_flush(sb); + if (unlikely(err)) + goto out; + au_fset_opts(opts->flags, DR_FLUSHED); + + dir = d_inode(sb->s_root); + sbinfo = au_sbi(sb); + opt_xino = NULL; + opt = opts->opt; + while (err >= 0 && opt->type != Opt_tail) { + err = au_opt_simple(sb, opt, opts); + if (!err) + err = au_opt_br(sb, opt, opts); + if (!err) + err = au_opt_xino(sb, opt, &opt_xino, opts); + opt++; + } + if (err > 0) + err = 0; + AuTraceErr(err); + /* go on even err */ + + no_dreval = !!au_ftest_si(sbinfo, NO_DREVAL); + rerr = au_opts_verify(sb, opts->sb_flags, /*pending*/0); + if (unlikely(rerr && !err)) + err = rerr; + + if (no_dreval != !!au_ftest_si(sbinfo, NO_DREVAL)) + au_fset_opts(opts->flags, REFRESH_IDOP); + + if (au_ftest_opts(opts->flags, TRUNC_XIB)) { + rerr = au_xib_trunc(sb); + if (unlikely(rerr && !err)) + err = rerr; + } + + /* will be handled by the caller */ + if (!au_ftest_opts(opts->flags, REFRESH) + && (opts->given_udba + || au_opt_test(sbinfo->si_mntflags, XINO) + || au_ftest_opts(opts->flags, REFRESH_IDOP) + )) + au_fset_opts(opts->flags, REFRESH); + + AuDbg("status 0x%x\n", opts->flags); + +out: + return err; +} + +/* ---------------------------------------------------------------------- */ + +unsigned int au_opt_udba(struct super_block *sb) +{ + return au_mntflags(sb) & AuOptMask_UDBA; +} --- linux-azure-5.8-5.8.0.orig/fs/aufs/opts.h +++ linux-azure-5.8-5.8.0/fs/aufs/opts.h @@ -0,0 +1,225 @@ +/* SPDX-License-Identifier: GPL-2.0 */ +/* + * Copyright (C) 2005-2020 Junjiro R. Okajima + * + * This program, aufs is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; either version 2 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + */ + +/* + * mount options/flags + */ + +#ifndef __AUFS_OPTS_H__ +#define __AUFS_OPTS_H__ + +#ifdef __KERNEL__ + +#include + +struct file; + +/* ---------------------------------------------------------------------- */ + +/* mount flags */ +#define AuOpt_XINO 1 /* external inode number bitmap + and translation table */ +#define AuOpt_TRUNC_XINO (1 << 1) /* truncate xino files */ +#define AuOpt_UDBA_NONE (1 << 2) /* users direct branch access */ +#define AuOpt_UDBA_REVAL (1 << 3) +#define AuOpt_UDBA_HNOTIFY (1 << 4) +#define AuOpt_SHWH (1 << 5) /* show whiteout */ +#define AuOpt_PLINK (1 << 6) /* pseudo-link */ +#define AuOpt_DIRPERM1 (1 << 7) /* ignore the lower dir's perm + bits */ +#define AuOpt_ALWAYS_DIROPQ (1 << 9) /* policy to creating diropq */ +#define AuOpt_SUM (1 << 10) /* summation for statfs(2) */ +#define AuOpt_SUM_W (1 << 11) /* unimplemented */ +#define AuOpt_WARN_PERM (1 << 12) /* warn when add-branch */ +#define AuOpt_VERBOSE (1 << 13) /* print the cause of error */ +#define AuOpt_DIO (1 << 14) /* direct io */ +#define AuOpt_DIRREN (1 << 15) /* directory rename */ + +#ifndef CONFIG_AUFS_HNOTIFY +#undef AuOpt_UDBA_HNOTIFY +#define AuOpt_UDBA_HNOTIFY 0 +#endif +#ifndef CONFIG_AUFS_DIRREN +#undef AuOpt_DIRREN +#define AuOpt_DIRREN 0 +#endif +#ifndef CONFIG_AUFS_SHWH +#undef AuOpt_SHWH +#define AuOpt_SHWH 0 +#endif + +#define AuOpt_Def (AuOpt_XINO \ + | AuOpt_UDBA_REVAL \ + | AuOpt_PLINK \ + /* | AuOpt_DIRPERM1 */ \ + | AuOpt_WARN_PERM) +#define AuOptMask_UDBA (AuOpt_UDBA_NONE \ + | AuOpt_UDBA_REVAL \ + | AuOpt_UDBA_HNOTIFY) + +#define au_opt_test(flags, name) (flags & AuOpt_##name) +#define au_opt_set(flags, name) do { \ + BUILD_BUG_ON(AuOpt_##name & AuOptMask_UDBA); \ + ((flags) |= AuOpt_##name); \ +} while (0) +#define au_opt_set_udba(flags, name) do { \ + (flags) &= ~AuOptMask_UDBA; \ + ((flags) |= AuOpt_##name); \ +} while (0) +#define au_opt_clr(flags, name) do { \ + ((flags) &= ~AuOpt_##name); \ +} while (0) + +static inline unsigned int au_opts_plink(unsigned int mntflags) +{ +#ifdef CONFIG_PROC_FS + return mntflags; +#else + return mntflags & ~AuOpt_PLINK; +#endif +} + +/* ---------------------------------------------------------------------- */ + +/* policies to select one among multiple writable branches */ +enum { + AuWbrCreate_TDP, /* top down parent */ + AuWbrCreate_RR, /* round robin */ + AuWbrCreate_MFS, /* most free space */ + AuWbrCreate_MFSV, /* mfs with seconds */ + AuWbrCreate_MFSRR, /* mfs then rr */ + AuWbrCreate_MFSRRV, /* mfs then rr with seconds */ + AuWbrCreate_TDMFS, /* top down regardless parent and mfs */ + AuWbrCreate_TDMFSV, /* top down regardless parent and mfs */ + AuWbrCreate_PMFS, /* parent and mfs */ + AuWbrCreate_PMFSV, /* parent and mfs with seconds */ + AuWbrCreate_PMFSRR, /* parent, mfs and round-robin */ + AuWbrCreate_PMFSRRV, /* plus seconds */ + + AuWbrCreate_Def = AuWbrCreate_TDP +}; + +enum { + AuWbrCopyup_TDP, /* top down parent */ + AuWbrCopyup_BUP, /* bottom up parent */ + AuWbrCopyup_BU, /* bottom up */ + + AuWbrCopyup_Def = AuWbrCopyup_TDP +}; + +/* ---------------------------------------------------------------------- */ + +struct au_opt_add { + aufs_bindex_t bindex; + char *pathname; + int perm; + struct path path; +}; + +struct au_opt_del { + char *pathname; + struct path h_path; +}; + +struct au_opt_mod { + char *path; + int perm; + struct dentry *h_root; +}; + +struct au_opt_xino { + char *path; + struct file *file; +}; + +struct au_opt_xino_itrunc { + aufs_bindex_t bindex; +}; + +struct au_opt_wbr_create { + int wbr_create; + int mfs_second; + unsigned long long mfsrr_watermark; +}; + +struct au_opt { + int type; + union { + struct au_opt_xino xino; + struct au_opt_xino_itrunc xino_itrunc; + struct au_opt_add add; + struct au_opt_del del; + struct au_opt_mod mod; + int dirwh; + int rdcache; + unsigned int rdblk; + unsigned int rdhash; + int udba; + struct au_opt_wbr_create wbr_create; + int wbr_copyup; + unsigned int fhsm_second; + }; +}; + +/* opts flags */ +#define AuOpts_REMOUNT 1 +#define AuOpts_REFRESH (1 << 1) +#define AuOpts_TRUNC_XIB (1 << 2) +#define AuOpts_REFRESH_DYAOP (1 << 3) +#define AuOpts_REFRESH_IDOP (1 << 4) +#define AuOpts_DR_FLUSHED (1 << 5) +#define au_ftest_opts(flags, name) ((flags) & AuOpts_##name) +#define au_fset_opts(flags, name) \ + do { (flags) |= AuOpts_##name; } while (0) +#define au_fclr_opts(flags, name) \ + do { (flags) &= ~AuOpts_##name; } while (0) + +#ifndef CONFIG_AUFS_DIRREN +#undef AuOpts_DR_FLUSHED +#define AuOpts_DR_FLUSHED 0 +#endif + +struct au_opts { + struct au_opt *opt; + int max_opt; + + unsigned int given_udba; + unsigned int flags; + unsigned long sb_flags; +}; + +/* ---------------------------------------------------------------------- */ + +/* opts.c */ +void au_optstr_br_perm(au_br_perm_str_t *str, int perm); +const char *au_optstr_udba(int udba); +const char *au_optstr_wbr_copyup(int wbr_copyup); +const char *au_optstr_wbr_create(int wbr_create); + +void au_opts_free(struct au_opts *opts); +struct super_block; +int au_opts_parse(struct super_block *sb, char *str, struct au_opts *opts); +int au_opts_verify(struct super_block *sb, unsigned long sb_flags, + unsigned int pending); +int au_opts_mount(struct super_block *sb, struct au_opts *opts); +int au_opts_remount(struct super_block *sb, struct au_opts *opts); + +unsigned int au_opt_udba(struct super_block *sb); + +#endif /* __KERNEL__ */ +#endif /* __AUFS_OPTS_H__ */ --- linux-azure-5.8-5.8.0.orig/fs/aufs/plink.c +++ linux-azure-5.8-5.8.0/fs/aufs/plink.c @@ -0,0 +1,516 @@ +// SPDX-License-Identifier: GPL-2.0 +/* + * Copyright (C) 2005-2020 Junjiro R. Okajima + * + * This program, aufs is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; either version 2 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + */ + +/* + * pseudo-link + */ + +#include "aufs.h" + +/* + * the pseudo-link maintenance mode. + * during a user process maintains the pseudo-links, + * prohibit adding a new plink and branch manipulation. + * + * Flags + * NOPLM: + * For entry functions which will handle plink, and i_mutex is already held + * in VFS. + * They cannot wait and should return an error at once. + * Callers has to check the error. + * NOPLMW: + * For entry functions which will handle plink, but i_mutex is not held + * in VFS. + * They can wait the plink maintenance mode to finish. + * + * They behave like F_SETLK and F_SETLKW. + * If the caller never handle plink, then both flags are unnecessary. + */ + +int au_plink_maint(struct super_block *sb, int flags) +{ + int err; + pid_t pid, ppid; + struct task_struct *parent, *prev; + struct au_sbinfo *sbi; + + SiMustAnyLock(sb); + + err = 0; + if (!au_opt_test(au_mntflags(sb), PLINK)) + goto out; + + sbi = au_sbi(sb); + pid = sbi->si_plink_maint_pid; + if (!pid || pid == current->pid) + goto out; + + /* todo: it highly depends upon /sbin/mount.aufs */ + prev = NULL; + parent = current; + ppid = 0; + rcu_read_lock(); + while (1) { + parent = rcu_dereference(parent->real_parent); + if (parent == prev) + break; + ppid = task_pid_vnr(parent); + if (pid == ppid) { + rcu_read_unlock(); + goto out; + } + prev = parent; + } + rcu_read_unlock(); + + if (au_ftest_lock(flags, NOPLMW)) { + /* if there is no i_mutex lock in VFS, we don't need to wait */ + /* AuDebugOn(!lockdep_depth(current)); */ + while (sbi->si_plink_maint_pid) { + si_read_unlock(sb); + /* gave up wake_up_bit() */ + wait_event(sbi->si_plink_wq, !sbi->si_plink_maint_pid); + + if (au_ftest_lock(flags, FLUSH)) + au_nwt_flush(&sbi->si_nowait); + si_noflush_read_lock(sb); + } + } else if (au_ftest_lock(flags, NOPLM)) { + AuDbg("ppid %d, pid %d\n", ppid, pid); + err = -EAGAIN; + } + +out: + return err; +} + +void au_plink_maint_leave(struct au_sbinfo *sbinfo) +{ + spin_lock(&sbinfo->si_plink_maint_lock); + sbinfo->si_plink_maint_pid = 0; + spin_unlock(&sbinfo->si_plink_maint_lock); + wake_up_all(&sbinfo->si_plink_wq); +} + +int au_plink_maint_enter(struct super_block *sb) +{ + int err; + struct au_sbinfo *sbinfo; + + err = 0; + sbinfo = au_sbi(sb); + /* make sure i am the only one in this fs */ + si_write_lock(sb, AuLock_FLUSH); + if (au_opt_test(au_mntflags(sb), PLINK)) { + spin_lock(&sbinfo->si_plink_maint_lock); + if (!sbinfo->si_plink_maint_pid) + sbinfo->si_plink_maint_pid = current->pid; + else + err = -EBUSY; + spin_unlock(&sbinfo->si_plink_maint_lock); + } + si_write_unlock(sb); + + return err; +} + +/* ---------------------------------------------------------------------- */ + +#ifdef CONFIG_AUFS_DEBUG +void au_plink_list(struct super_block *sb) +{ + int i; + struct au_sbinfo *sbinfo; + struct hlist_bl_head *hbl; + struct hlist_bl_node *pos; + struct au_icntnr *icntnr; + + SiMustAnyLock(sb); + + sbinfo = au_sbi(sb); + AuDebugOn(!au_opt_test(au_mntflags(sb), PLINK)); + AuDebugOn(au_plink_maint(sb, AuLock_NOPLM)); + + for (i = 0; i < AuPlink_NHASH; i++) { + hbl = sbinfo->si_plink + i; + hlist_bl_lock(hbl); + hlist_bl_for_each_entry(icntnr, pos, hbl, plink) + AuDbg("%lu\n", icntnr->vfs_inode.i_ino); + hlist_bl_unlock(hbl); + } +} +#endif + +/* is the inode pseudo-linked? */ +int au_plink_test(struct inode *inode) +{ + int found, i; + struct au_sbinfo *sbinfo; + struct hlist_bl_head *hbl; + struct hlist_bl_node *pos; + struct au_icntnr *icntnr; + + sbinfo = au_sbi(inode->i_sb); + AuRwMustAnyLock(&sbinfo->si_rwsem); + AuDebugOn(!au_opt_test(au_mntflags(inode->i_sb), PLINK)); + AuDebugOn(au_plink_maint(inode->i_sb, AuLock_NOPLM)); + + found = 0; + i = au_plink_hash(inode->i_ino); + hbl = sbinfo->si_plink + i; + hlist_bl_lock(hbl); + hlist_bl_for_each_entry(icntnr, pos, hbl, plink) + if (&icntnr->vfs_inode == inode) { + found = 1; + break; + } + hlist_bl_unlock(hbl); + return found; +} + +/* ---------------------------------------------------------------------- */ + +/* + * generate a name for plink. + * the file will be stored under AUFS_WH_PLINKDIR. + */ +/* 20 is max digits length of ulong 64 */ +#define PLINK_NAME_LEN ((20 + 1) * 2) + +static int plink_name(char *name, int len, struct inode *inode, + aufs_bindex_t bindex) +{ + int rlen; + struct inode *h_inode; + + h_inode = au_h_iptr(inode, bindex); + rlen = snprintf(name, len, "%lu.%lu", inode->i_ino, h_inode->i_ino); + return rlen; +} + +struct au_do_plink_lkup_args { + struct dentry **errp; + struct qstr *tgtname; + struct dentry *h_parent; + struct au_branch *br; +}; + +static struct dentry *au_do_plink_lkup(struct qstr *tgtname, + struct dentry *h_parent, + struct au_branch *br) +{ + struct dentry *h_dentry; + struct inode *h_inode; + + h_inode = d_inode(h_parent); + inode_lock_shared_nested(h_inode, AuLsc_I_CHILD2); + h_dentry = vfsub_lkup_one(tgtname, h_parent); + inode_unlock_shared(h_inode); + return h_dentry; +} + +static void au_call_do_plink_lkup(void *args) +{ + struct au_do_plink_lkup_args *a = args; + *a->errp = au_do_plink_lkup(a->tgtname, a->h_parent, a->br); +} + +/* lookup the plink-ed @inode under the branch at @bindex */ +struct dentry *au_plink_lkup(struct inode *inode, aufs_bindex_t bindex) +{ + struct dentry *h_dentry, *h_parent; + struct au_branch *br; + int wkq_err; + char a[PLINK_NAME_LEN]; + struct qstr tgtname = QSTR_INIT(a, 0); + + AuDebugOn(au_plink_maint(inode->i_sb, AuLock_NOPLM)); + + br = au_sbr(inode->i_sb, bindex); + h_parent = br->br_wbr->wbr_plink; + tgtname.len = plink_name(a, sizeof(a), inode, bindex); + + if (!uid_eq(current_fsuid(), GLOBAL_ROOT_UID)) { + struct au_do_plink_lkup_args args = { + .errp = &h_dentry, + .tgtname = &tgtname, + .h_parent = h_parent, + .br = br + }; + + wkq_err = au_wkq_wait(au_call_do_plink_lkup, &args); + if (unlikely(wkq_err)) + h_dentry = ERR_PTR(wkq_err); + } else + h_dentry = au_do_plink_lkup(&tgtname, h_parent, br); + + return h_dentry; +} + +/* create a pseudo-link */ +static int do_whplink(struct qstr *tgt, struct dentry *h_parent, + struct dentry *h_dentry, struct au_branch *br) +{ + int err; + struct path h_path = { + .mnt = au_br_mnt(br) + }; + struct inode *h_dir, *delegated; + + h_dir = d_inode(h_parent); + inode_lock_nested(h_dir, AuLsc_I_CHILD2); +again: + h_path.dentry = vfsub_lkup_one(tgt, h_parent); + err = PTR_ERR(h_path.dentry); + if (IS_ERR(h_path.dentry)) + goto out; + + err = 0; + /* wh.plink dir is not monitored */ + /* todo: is it really safe? */ + if (d_is_positive(h_path.dentry) + && d_inode(h_path.dentry) != d_inode(h_dentry)) { + delegated = NULL; + err = vfsub_unlink(h_dir, &h_path, &delegated, /*force*/0); + if (unlikely(err == -EWOULDBLOCK)) { + pr_warn("cannot retry for NFSv4 delegation" + " for an internal unlink\n"); + iput(delegated); + } + dput(h_path.dentry); + h_path.dentry = NULL; + if (!err) + goto again; + } + if (!err && d_is_negative(h_path.dentry)) { + delegated = NULL; + err = vfsub_link(h_dentry, h_dir, &h_path, &delegated); + if (unlikely(err == -EWOULDBLOCK)) { + pr_warn("cannot retry for NFSv4 delegation" + " for an internal link\n"); + iput(delegated); + } + } + dput(h_path.dentry); + +out: + inode_unlock(h_dir); + return err; +} + +struct do_whplink_args { + int *errp; + struct qstr *tgt; + struct dentry *h_parent; + struct dentry *h_dentry; + struct au_branch *br; +}; + +static void call_do_whplink(void *args) +{ + struct do_whplink_args *a = args; + *a->errp = do_whplink(a->tgt, a->h_parent, a->h_dentry, a->br); +} + +static int whplink(struct dentry *h_dentry, struct inode *inode, + aufs_bindex_t bindex, struct au_branch *br) +{ + int err, wkq_err; + struct au_wbr *wbr; + struct dentry *h_parent; + char a[PLINK_NAME_LEN]; + struct qstr tgtname = QSTR_INIT(a, 0); + + wbr = au_sbr(inode->i_sb, bindex)->br_wbr; + h_parent = wbr->wbr_plink; + tgtname.len = plink_name(a, sizeof(a), inode, bindex); + + /* always superio. */ + if (!uid_eq(current_fsuid(), GLOBAL_ROOT_UID)) { + struct do_whplink_args args = { + .errp = &err, + .tgt = &tgtname, + .h_parent = h_parent, + .h_dentry = h_dentry, + .br = br + }; + wkq_err = au_wkq_wait(call_do_whplink, &args); + if (unlikely(wkq_err)) + err = wkq_err; + } else + err = do_whplink(&tgtname, h_parent, h_dentry, br); + + return err; +} + +/* + * create a new pseudo-link for @h_dentry on @bindex. + * the linked inode is held in aufs @inode. + */ +void au_plink_append(struct inode *inode, aufs_bindex_t bindex, + struct dentry *h_dentry) +{ + struct super_block *sb; + struct au_sbinfo *sbinfo; + struct hlist_bl_head *hbl; + struct hlist_bl_node *pos; + struct au_icntnr *icntnr; + int found, err, cnt, i; + + sb = inode->i_sb; + sbinfo = au_sbi(sb); + AuDebugOn(!au_opt_test(au_mntflags(sb), PLINK)); + AuDebugOn(au_plink_maint(sb, AuLock_NOPLM)); + + found = au_plink_test(inode); + if (found) + return; + + i = au_plink_hash(inode->i_ino); + hbl = sbinfo->si_plink + i; + au_igrab(inode); + + hlist_bl_lock(hbl); + hlist_bl_for_each_entry(icntnr, pos, hbl, plink) { + if (&icntnr->vfs_inode == inode) { + found = 1; + break; + } + } + if (!found) { + icntnr = container_of(inode, struct au_icntnr, vfs_inode); + hlist_bl_add_head(&icntnr->plink, hbl); + } + hlist_bl_unlock(hbl); + if (!found) { + cnt = au_hbl_count(hbl); +#define msg "unexpectedly unbalanced or too many pseudo-links" + if (cnt > AUFS_PLINK_WARN) + AuWarn1(msg ", %d\n", cnt); +#undef msg + err = whplink(h_dentry, inode, bindex, au_sbr(sb, bindex)); + if (unlikely(err)) { + pr_warn("err %d, damaged pseudo link.\n", err); + au_hbl_del(&icntnr->plink, hbl); + iput(&icntnr->vfs_inode); + } + } else + iput(&icntnr->vfs_inode); +} + +/* free all plinks */ +void au_plink_put(struct super_block *sb, int verbose) +{ + int i, warned; + struct au_sbinfo *sbinfo; + struct hlist_bl_head *hbl; + struct hlist_bl_node *pos, *tmp; + struct au_icntnr *icntnr; + + SiMustWriteLock(sb); + + sbinfo = au_sbi(sb); + AuDebugOn(!au_opt_test(au_mntflags(sb), PLINK)); + AuDebugOn(au_plink_maint(sb, AuLock_NOPLM)); + + /* no spin_lock since sbinfo is write-locked */ + warned = 0; + for (i = 0; i < AuPlink_NHASH; i++) { + hbl = sbinfo->si_plink + i; + if (!warned && verbose && !hlist_bl_empty(hbl)) { + pr_warn("pseudo-link is not flushed"); + warned = 1; + } + hlist_bl_for_each_entry_safe(icntnr, pos, tmp, hbl, plink) + iput(&icntnr->vfs_inode); + INIT_HLIST_BL_HEAD(hbl); + } +} + +void au_plink_clean(struct super_block *sb, int verbose) +{ + struct dentry *root; + + root = sb->s_root; + aufs_write_lock(root); + if (au_opt_test(au_mntflags(sb), PLINK)) + au_plink_put(sb, verbose); + aufs_write_unlock(root); +} + +static int au_plink_do_half_refresh(struct inode *inode, aufs_bindex_t br_id) +{ + int do_put; + aufs_bindex_t btop, bbot, bindex; + + do_put = 0; + btop = au_ibtop(inode); + bbot = au_ibbot(inode); + if (btop >= 0) { + for (bindex = btop; bindex <= bbot; bindex++) { + if (!au_h_iptr(inode, bindex) + || au_ii_br_id(inode, bindex) != br_id) + continue; + au_set_h_iptr(inode, bindex, NULL, 0); + do_put = 1; + break; + } + if (do_put) + for (bindex = btop; bindex <= bbot; bindex++) + if (au_h_iptr(inode, bindex)) { + do_put = 0; + break; + } + } else + do_put = 1; + + return do_put; +} + +/* free the plinks on a branch specified by @br_id */ +void au_plink_half_refresh(struct super_block *sb, aufs_bindex_t br_id) +{ + struct au_sbinfo *sbinfo; + struct hlist_bl_head *hbl; + struct hlist_bl_node *pos, *tmp; + struct au_icntnr *icntnr; + struct inode *inode; + int i, do_put; + + SiMustWriteLock(sb); + + sbinfo = au_sbi(sb); + AuDebugOn(!au_opt_test(au_mntflags(sb), PLINK)); + AuDebugOn(au_plink_maint(sb, AuLock_NOPLM)); + + /* no bit_lock since sbinfo is write-locked */ + for (i = 0; i < AuPlink_NHASH; i++) { + hbl = sbinfo->si_plink + i; + hlist_bl_for_each_entry_safe(icntnr, pos, tmp, hbl, plink) { + inode = au_igrab(&icntnr->vfs_inode); + ii_write_lock_child(inode); + do_put = au_plink_do_half_refresh(inode, br_id); + if (do_put) { + hlist_bl_del(&icntnr->plink); + iput(inode); + } + ii_write_unlock(inode); + iput(inode); + } + } +} --- linux-azure-5.8-5.8.0.orig/fs/aufs/poll.c +++ linux-azure-5.8-5.8.0/fs/aufs/poll.c @@ -0,0 +1,51 @@ +// SPDX-License-Identifier: GPL-2.0 +/* + * Copyright (C) 2005-2020 Junjiro R. Okajima + * + * This program, aufs is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; either version 2 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + */ + +/* + * poll operation + * There is only one filesystem which implements ->poll operation, currently. + */ + +#include "aufs.h" + +__poll_t aufs_poll(struct file *file, struct poll_table_struct *pt) +{ + __poll_t mask; + struct file *h_file; + struct super_block *sb; + + /* We should pretend an error happened. */ + mask = EPOLLERR /* | EPOLLIN | EPOLLOUT */; + sb = file->f_path.dentry->d_sb; + si_read_lock(sb, AuLock_FLUSH | AuLock_NOPLMW); + + h_file = au_read_pre(file, /*keep_fi*/0, /*lsc*/0); + if (IS_ERR(h_file)) { + AuDbg("h_file %ld\n", PTR_ERR(h_file)); + goto out; + } + + mask = vfs_poll(h_file, pt); + fput(h_file); /* instead of au_read_post() */ + +out: + si_read_unlock(sb); + if (mask & EPOLLERR) + AuDbg("mask 0x%x\n", mask); + return mask; +} --- linux-azure-5.8-5.8.0.orig/fs/aufs/posix_acl.c +++ linux-azure-5.8-5.8.0/fs/aufs/posix_acl.c @@ -0,0 +1,105 @@ +// SPDX-License-Identifier: GPL-2.0 +/* + * Copyright (C) 2014-2020 Junjiro R. Okajima + * + * This program, aufs is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; either version 2 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + */ + +/* + * posix acl operations + */ + +#include +#include "aufs.h" + +struct posix_acl *aufs_get_acl(struct inode *inode, int type) +{ + struct posix_acl *acl; + int err; + aufs_bindex_t bindex; + struct inode *h_inode; + struct super_block *sb; + + acl = NULL; + sb = inode->i_sb; + si_read_lock(sb, AuLock_FLUSH); + ii_read_lock_child(inode); + if (!(sb->s_flags & SB_POSIXACL)) + goto out; + + bindex = au_ibtop(inode); + h_inode = au_h_iptr(inode, bindex); + if (unlikely(!h_inode + || ((h_inode->i_mode & S_IFMT) + != (inode->i_mode & S_IFMT)))) { + err = au_busy_or_stale(); + acl = ERR_PTR(err); + goto out; + } + + /* always topmost only */ + acl = get_acl(h_inode, type); + if (IS_ERR(acl)) + forget_cached_acl(inode, type); + else + set_cached_acl(inode, type, acl); + +out: + ii_read_unlock(inode); + si_read_unlock(sb); + + AuTraceErrPtr(acl); + return acl; +} + +int aufs_set_acl(struct inode *inode, struct posix_acl *acl, int type) +{ + int err; + ssize_t ssz; + struct dentry *dentry; + struct au_sxattr arg = { + .type = AU_ACL_SET, + .u.acl_set = { + .acl = acl, + .type = type + }, + }; + + IMustLock(inode); + + if (inode->i_ino == AUFS_ROOT_INO) + dentry = dget(inode->i_sb->s_root); + else { + dentry = d_find_alias(inode); + if (!dentry) + dentry = d_find_any_alias(inode); + if (!dentry) { + pr_warn("cannot handle this inode, " + "please report to aufs-users ML\n"); + err = -ENOENT; + goto out; + } + } + + ssz = au_sxattr(dentry, inode, &arg); + /* forget even it if succeeds since the branch might set differently */ + forget_cached_acl(inode, type); + dput(dentry); + err = ssz; + if (ssz >= 0) + err = 0; + +out: + return err; +} --- linux-azure-5.8-5.8.0.orig/fs/aufs/procfs.c +++ linux-azure-5.8-5.8.0/fs/aufs/procfs.c @@ -0,0 +1,170 @@ +// SPDX-License-Identifier: GPL-2.0 +/* + * Copyright (C) 2010-2020 Junjiro R. Okajima + * + * This program, aufs is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; either version 2 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + */ + +/* + * procfs interfaces + */ + +#include +#include "aufs.h" + +static int au_procfs_plm_release(struct inode *inode, struct file *file) +{ + struct au_sbinfo *sbinfo; + + sbinfo = file->private_data; + if (sbinfo) { + au_plink_maint_leave(sbinfo); + kobject_put(&sbinfo->si_kobj); + } + + return 0; +} + +static void au_procfs_plm_write_clean(struct file *file) +{ + struct au_sbinfo *sbinfo; + + sbinfo = file->private_data; + if (sbinfo) + au_plink_clean(sbinfo->si_sb, /*verbose*/0); +} + +static int au_procfs_plm_write_si(struct file *file, unsigned long id) +{ + int err; + struct super_block *sb; + struct au_sbinfo *sbinfo; + struct hlist_bl_node *pos; + + err = -EBUSY; + if (unlikely(file->private_data)) + goto out; + + sb = NULL; + /* don't use au_sbilist_lock() here */ + hlist_bl_lock(&au_sbilist); + hlist_bl_for_each_entry(sbinfo, pos, &au_sbilist, si_list) + if (id == sysaufs_si_id(sbinfo)) { + if (kobject_get_unless_zero(&sbinfo->si_kobj)) + sb = sbinfo->si_sb; + break; + } + hlist_bl_unlock(&au_sbilist); + + err = -EINVAL; + if (unlikely(!sb)) + goto out; + + err = au_plink_maint_enter(sb); + if (!err) + /* keep kobject_get() */ + file->private_data = sbinfo; + else + kobject_put(&sbinfo->si_kobj); +out: + return err; +} + +/* + * Accept a valid "si=xxxx" only. + * Once it is accepted successfully, accept "clean" too. + */ +static ssize_t au_procfs_plm_write(struct file *file, const char __user *ubuf, + size_t count, loff_t *ppos) +{ + ssize_t err; + unsigned long id; + /* last newline is allowed */ + char buf[3 + sizeof(unsigned long) * 2 + 1]; + + err = -EACCES; + if (unlikely(!capable(CAP_SYS_ADMIN))) + goto out; + + err = -EINVAL; + if (unlikely(count > sizeof(buf))) + goto out; + + err = copy_from_user(buf, ubuf, count); + if (unlikely(err)) { + err = -EFAULT; + goto out; + } + buf[count] = 0; + + err = -EINVAL; + if (!strcmp("clean", buf)) { + au_procfs_plm_write_clean(file); + goto out_success; + } else if (unlikely(strncmp("si=", buf, 3))) + goto out; + + err = kstrtoul(buf + 3, 16, &id); + if (unlikely(err)) + goto out; + + err = au_procfs_plm_write_si(file, id); + if (unlikely(err)) + goto out; + +out_success: + err = count; /* success */ +out: + return err; +} + +static const struct proc_ops au_procfs_plm_op = { + .proc_write = au_procfs_plm_write, + .proc_release = au_procfs_plm_release +}; + +/* ---------------------------------------------------------------------- */ + +static struct proc_dir_entry *au_procfs_dir; + +void au_procfs_fin(void) +{ + remove_proc_entry(AUFS_PLINK_MAINT_NAME, au_procfs_dir); + remove_proc_entry(AUFS_PLINK_MAINT_DIR, NULL); +} + +int __init au_procfs_init(void) +{ + int err; + struct proc_dir_entry *entry; + + err = -ENOMEM; + au_procfs_dir = proc_mkdir(AUFS_PLINK_MAINT_DIR, NULL); + if (unlikely(!au_procfs_dir)) + goto out; + + entry = proc_create(AUFS_PLINK_MAINT_NAME, S_IFREG | 0200, + au_procfs_dir, &au_procfs_plm_op); + if (unlikely(!entry)) + goto out_dir; + + err = 0; + goto out; /* success */ + + +out_dir: + remove_proc_entry(AUFS_PLINK_MAINT_DIR, NULL); +out: + return err; +} --- linux-azure-5.8-5.8.0.orig/fs/aufs/rdu.c +++ linux-azure-5.8-5.8.0/fs/aufs/rdu.c @@ -0,0 +1,384 @@ +// SPDX-License-Identifier: GPL-2.0 +/* + * Copyright (C) 2005-2020 Junjiro R. Okajima + * + * This program, aufs is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; either version 2 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + */ + +/* + * readdir in userspace. + */ + +#include +#include +#include +#include "aufs.h" + +/* bits for struct aufs_rdu.flags */ +#define AuRdu_CALLED 1 +#define AuRdu_CONT (1 << 1) +#define AuRdu_FULL (1 << 2) +#define au_ftest_rdu(flags, name) ((flags) & AuRdu_##name) +#define au_fset_rdu(flags, name) \ + do { (flags) |= AuRdu_##name; } while (0) +#define au_fclr_rdu(flags, name) \ + do { (flags) &= ~AuRdu_##name; } while (0) + +struct au_rdu_arg { + struct dir_context ctx; + struct aufs_rdu *rdu; + union au_rdu_ent_ul ent; + unsigned long end; + + struct super_block *sb; + int err; +}; + +static int au_rdu_fill(struct dir_context *ctx, const char *name, int nlen, + loff_t offset, u64 h_ino, unsigned int d_type) +{ + int err, len; + struct au_rdu_arg *arg = container_of(ctx, struct au_rdu_arg, ctx); + struct aufs_rdu *rdu = arg->rdu; + struct au_rdu_ent ent; + + err = 0; + arg->err = 0; + au_fset_rdu(rdu->cookie.flags, CALLED); + len = au_rdu_len(nlen); + if (arg->ent.ul + len < arg->end) { + ent.ino = h_ino; + ent.bindex = rdu->cookie.bindex; + ent.type = d_type; + ent.nlen = nlen; + if (unlikely(nlen > AUFS_MAX_NAMELEN)) + ent.type = DT_UNKNOWN; + + /* unnecessary to support mmap_sem since this is a dir */ + err = -EFAULT; + if (copy_to_user(arg->ent.e, &ent, sizeof(ent))) + goto out; + if (copy_to_user(arg->ent.e->name, name, nlen)) + goto out; + /* the terminating NULL */ + if (__put_user(0, arg->ent.e->name + nlen)) + goto out; + err = 0; + /* AuDbg("%p, %.*s\n", arg->ent.p, nlen, name); */ + arg->ent.ul += len; + rdu->rent++; + } else { + err = -EFAULT; + au_fset_rdu(rdu->cookie.flags, FULL); + rdu->full = 1; + rdu->tail = arg->ent; + } + +out: + /* AuTraceErr(err); */ + return err; +} + +static int au_rdu_do(struct file *h_file, struct au_rdu_arg *arg) +{ + int err; + loff_t offset; + struct au_rdu_cookie *cookie = &arg->rdu->cookie; + + /* we don't have to care (FMODE_32BITHASH | FMODE_64BITHASH) for ext4 */ + offset = vfsub_llseek(h_file, cookie->h_pos, SEEK_SET); + err = offset; + if (unlikely(offset != cookie->h_pos)) + goto out; + + err = 0; + do { + arg->err = 0; + au_fclr_rdu(cookie->flags, CALLED); + /* smp_mb(); */ + err = vfsub_iterate_dir(h_file, &arg->ctx); + if (err >= 0) + err = arg->err; + } while (!err + && au_ftest_rdu(cookie->flags, CALLED) + && !au_ftest_rdu(cookie->flags, FULL)); + cookie->h_pos = h_file->f_pos; + +out: + AuTraceErr(err); + return err; +} + +static int au_rdu(struct file *file, struct aufs_rdu *rdu) +{ + int err; + aufs_bindex_t bbot; + struct au_rdu_arg arg = { + .ctx = { + .actor = au_rdu_fill + } + }; + struct dentry *dentry; + struct inode *inode; + struct file *h_file; + struct au_rdu_cookie *cookie = &rdu->cookie; + + /* VERIFY_WRITE */ + err = !access_ok(rdu->ent.e, rdu->sz); + if (unlikely(err)) { + err = -EFAULT; + AuTraceErr(err); + goto out; + } + rdu->rent = 0; + rdu->tail = rdu->ent; + rdu->full = 0; + arg.rdu = rdu; + arg.ent = rdu->ent; + arg.end = arg.ent.ul; + arg.end += rdu->sz; + + err = -ENOTDIR; + if (unlikely(!file->f_op->iterate && !file->f_op->iterate_shared)) + goto out; + + err = security_file_permission(file, MAY_READ); + AuTraceErr(err); + if (unlikely(err)) + goto out; + + dentry = file->f_path.dentry; + inode = d_inode(dentry); + inode_lock_shared(inode); + + arg.sb = inode->i_sb; + err = si_read_lock(arg.sb, AuLock_FLUSH | AuLock_NOPLM); + if (unlikely(err)) + goto out_mtx; + err = au_alive_dir(dentry); + if (unlikely(err)) + goto out_si; + /* todo: reval? */ + fi_read_lock(file); + + err = -EAGAIN; + if (unlikely(au_ftest_rdu(cookie->flags, CONT) + && cookie->generation != au_figen(file))) + goto out_unlock; + + err = 0; + if (!rdu->blk) { + rdu->blk = au_sbi(arg.sb)->si_rdblk; + if (!rdu->blk) + rdu->blk = au_dir_size(file, /*dentry*/NULL); + } + bbot = au_fbtop(file); + if (cookie->bindex < bbot) + cookie->bindex = bbot; + bbot = au_fbbot_dir(file); + /* AuDbg("b%d, b%d\n", cookie->bindex, bbot); */ + for (; !err && cookie->bindex <= bbot; + cookie->bindex++, cookie->h_pos = 0) { + h_file = au_hf_dir(file, cookie->bindex); + if (!h_file) + continue; + + au_fclr_rdu(cookie->flags, FULL); + err = au_rdu_do(h_file, &arg); + AuTraceErr(err); + if (unlikely(au_ftest_rdu(cookie->flags, FULL) || err)) + break; + } + AuDbg("rent %llu\n", rdu->rent); + + if (!err && !au_ftest_rdu(cookie->flags, CONT)) { + rdu->shwh = !!au_opt_test(au_sbi(arg.sb)->si_mntflags, SHWH); + au_fset_rdu(cookie->flags, CONT); + cookie->generation = au_figen(file); + } + + ii_read_lock_child(inode); + fsstack_copy_attr_atime(inode, au_h_iptr(inode, au_ibtop(inode))); + ii_read_unlock(inode); + +out_unlock: + fi_read_unlock(file); +out_si: + si_read_unlock(arg.sb); +out_mtx: + inode_unlock_shared(inode); +out: + AuTraceErr(err); + return err; +} + +static int au_rdu_ino(struct file *file, struct aufs_rdu *rdu) +{ + int err; + ino_t ino; + unsigned long long nent; + union au_rdu_ent_ul *u; + struct au_rdu_ent ent; + struct super_block *sb; + + err = 0; + nent = rdu->nent; + u = &rdu->ent; + sb = file->f_path.dentry->d_sb; + si_read_lock(sb, AuLock_FLUSH); + while (nent-- > 0) { + /* unnecessary to support mmap_sem since this is a dir */ + err = copy_from_user(&ent, u->e, sizeof(ent)); + if (!err) + /* VERIFY_WRITE */ + err = !access_ok(&u->e->ino, sizeof(ino)); + if (unlikely(err)) { + err = -EFAULT; + AuTraceErr(err); + break; + } + + /* AuDbg("b%d, i%llu\n", ent.bindex, ent.ino); */ + if (!ent.wh) + err = au_ino(sb, ent.bindex, ent.ino, ent.type, &ino); + else + err = au_wh_ino(sb, ent.bindex, ent.ino, ent.type, + &ino); + if (unlikely(err)) { + AuTraceErr(err); + break; + } + + err = __put_user(ino, &u->e->ino); + if (unlikely(err)) { + err = -EFAULT; + AuTraceErr(err); + break; + } + u->ul += au_rdu_len(ent.nlen); + } + si_read_unlock(sb); + + return err; +} + +/* ---------------------------------------------------------------------- */ + +static int au_rdu_verify(struct aufs_rdu *rdu) +{ + AuDbg("rdu{%llu, %p, %u | %u | %llu, %u, %u | " + "%llu, b%d, 0x%x, g%u}\n", + rdu->sz, rdu->ent.e, rdu->verify[AufsCtlRduV_SZ], + rdu->blk, + rdu->rent, rdu->shwh, rdu->full, + rdu->cookie.h_pos, rdu->cookie.bindex, rdu->cookie.flags, + rdu->cookie.generation); + + if (rdu->verify[AufsCtlRduV_SZ] == sizeof(*rdu)) + return 0; + + AuDbg("%u:%u\n", + rdu->verify[AufsCtlRduV_SZ], (unsigned int)sizeof(*rdu)); + return -EINVAL; +} + +long au_rdu_ioctl(struct file *file, unsigned int cmd, unsigned long arg) +{ + long err, e; + struct aufs_rdu rdu; + void __user *p = (void __user *)arg; + + err = copy_from_user(&rdu, p, sizeof(rdu)); + if (unlikely(err)) { + err = -EFAULT; + AuTraceErr(err); + goto out; + } + err = au_rdu_verify(&rdu); + if (unlikely(err)) + goto out; + + switch (cmd) { + case AUFS_CTL_RDU: + err = au_rdu(file, &rdu); + if (unlikely(err)) + break; + + e = copy_to_user(p, &rdu, sizeof(rdu)); + if (unlikely(e)) { + err = -EFAULT; + AuTraceErr(err); + } + break; + case AUFS_CTL_RDU_INO: + err = au_rdu_ino(file, &rdu); + break; + + default: + /* err = -ENOTTY; */ + err = -EINVAL; + } + +out: + AuTraceErr(err); + return err; +} + +#ifdef CONFIG_COMPAT +long au_rdu_compat_ioctl(struct file *file, unsigned int cmd, unsigned long arg) +{ + long err, e; + struct aufs_rdu rdu; + void __user *p = compat_ptr(arg); + + /* todo: get_user()? */ + err = copy_from_user(&rdu, p, sizeof(rdu)); + if (unlikely(err)) { + err = -EFAULT; + AuTraceErr(err); + goto out; + } + rdu.ent.e = compat_ptr(rdu.ent.ul); + err = au_rdu_verify(&rdu); + if (unlikely(err)) + goto out; + + switch (cmd) { + case AUFS_CTL_RDU: + err = au_rdu(file, &rdu); + if (unlikely(err)) + break; + + rdu.ent.ul = ptr_to_compat(rdu.ent.e); + rdu.tail.ul = ptr_to_compat(rdu.tail.e); + e = copy_to_user(p, &rdu, sizeof(rdu)); + if (unlikely(e)) { + err = -EFAULT; + AuTraceErr(err); + } + break; + case AUFS_CTL_RDU_INO: + err = au_rdu_ino(file, &rdu); + break; + + default: + /* err = -ENOTTY; */ + err = -EINVAL; + } + +out: + AuTraceErr(err); + return err; +} +#endif --- linux-azure-5.8-5.8.0.orig/fs/aufs/rwsem.h +++ linux-azure-5.8-5.8.0/fs/aufs/rwsem.h @@ -0,0 +1,73 @@ +/* SPDX-License-Identifier: GPL-2.0 */ +/* + * Copyright (C) 2005-2020 Junjiro R. Okajima + * + * This program, aufs is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; either version 2 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + */ + +/* + * simple read-write semaphore wrappers + */ + +#ifndef __AUFS_RWSEM_H__ +#define __AUFS_RWSEM_H__ + +#ifdef __KERNEL__ + +#include "debug.h" + +/* in the future, the name 'au_rwsem' will be totally gone */ +#define au_rwsem rw_semaphore + +/* to debug easier, do not make them inlined functions */ +#define AuRwMustNoWaiters(rw) AuDebugOn(rwsem_is_contended(rw)) +/* rwsem_is_locked() is unusable */ +#define AuRwMustReadLock(rw) AuDebugOn(!lockdep_recursing(current) \ + && debug_locks \ + && !lockdep_is_held_type(rw, 1)) +#define AuRwMustWriteLock(rw) AuDebugOn(!lockdep_recursing(current) \ + && debug_locks \ + && !lockdep_is_held_type(rw, 0)) +#define AuRwMustAnyLock(rw) AuDebugOn(!lockdep_recursing(current) \ + && debug_locks \ + && !lockdep_is_held(rw)) +#define AuRwDestroy(rw) AuDebugOn(!lockdep_recursing(current) \ + && debug_locks \ + && lockdep_is_held(rw)) + +#define au_rw_init(rw) init_rwsem(rw) + +#define au_rw_init_wlock(rw) do { \ + au_rw_init(rw); \ + down_write(rw); \ + } while (0) + +#define au_rw_init_wlock_nested(rw, lsc) do { \ + au_rw_init(rw); \ + down_write_nested(rw, lsc); \ + } while (0) + +#define au_rw_read_lock(rw) down_read(rw) +#define au_rw_read_lock_nested(rw, lsc) down_read_nested(rw, lsc) +#define au_rw_read_unlock(rw) up_read(rw) +#define au_rw_dgrade_lock(rw) downgrade_write(rw) +#define au_rw_write_lock(rw) down_write(rw) +#define au_rw_write_lock_nested(rw, lsc) down_write_nested(rw, lsc) +#define au_rw_write_unlock(rw) up_write(rw) +/* why is not _nested version defined? */ +#define au_rw_read_trylock(rw) down_read_trylock(rw) +#define au_rw_write_trylock(rw) down_write_trylock(rw) + +#endif /* __KERNEL__ */ +#endif /* __AUFS_RWSEM_H__ */ --- linux-azure-5.8-5.8.0.orig/fs/aufs/sbinfo.c +++ linux-azure-5.8-5.8.0/fs/aufs/sbinfo.c @@ -0,0 +1,314 @@ +// SPDX-License-Identifier: GPL-2.0 +/* + * Copyright (C) 2005-2020 Junjiro R. Okajima + * + * This program, aufs is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; either version 2 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + */ + +/* + * superblock private data + */ + +#include +#include "aufs.h" + +/* + * they are necessary regardless sysfs is disabled. + */ +void au_si_free(struct kobject *kobj) +{ + int i; + struct au_sbinfo *sbinfo; + char *locked __maybe_unused; /* debug only */ + + sbinfo = container_of(kobj, struct au_sbinfo, si_kobj); + for (i = 0; i < AuPlink_NHASH; i++) + AuDebugOn(!hlist_bl_empty(sbinfo->si_plink + i)); + AuDebugOn(atomic_read(&sbinfo->si_nowait.nw_len)); + + AuLCntZero(au_lcnt_read(&sbinfo->si_ninodes, /*do_rev*/0)); + au_lcnt_fin(&sbinfo->si_ninodes, /*do_sync*/0); + AuLCntZero(au_lcnt_read(&sbinfo->si_nfiles, /*do_rev*/0)); + au_lcnt_fin(&sbinfo->si_nfiles, /*do_sync*/0); + + dbgaufs_si_fin(sbinfo); + au_rw_write_lock(&sbinfo->si_rwsem); + au_br_free(sbinfo); + au_rw_write_unlock(&sbinfo->si_rwsem); + + au_kfree_try_rcu(sbinfo->si_branch); + mutex_destroy(&sbinfo->si_xib_mtx); + AuRwDestroy(&sbinfo->si_rwsem); + + au_lcnt_wait_for_fin(&sbinfo->si_ninodes); + /* si_nfiles is waited too */ + au_kfree_rcu(sbinfo); +} + +int au_si_alloc(struct super_block *sb) +{ + int err, i; + struct au_sbinfo *sbinfo; + + err = -ENOMEM; + sbinfo = kzalloc(sizeof(*sbinfo), GFP_NOFS); + if (unlikely(!sbinfo)) + goto out; + + /* will be reallocated separately */ + sbinfo->si_branch = kzalloc(sizeof(*sbinfo->si_branch), GFP_NOFS); + if (unlikely(!sbinfo->si_branch)) + goto out_sbinfo; + + err = sysaufs_si_init(sbinfo); + if (!err) { + dbgaufs_si_null(sbinfo); + err = dbgaufs_si_init(sbinfo); + if (unlikely(err)) + kobject_put(&sbinfo->si_kobj); + } + if (unlikely(err)) + goto out_br; + + au_nwt_init(&sbinfo->si_nowait); + au_rw_init_wlock(&sbinfo->si_rwsem); + + au_lcnt_init(&sbinfo->si_ninodes, /*release*/NULL); + au_lcnt_init(&sbinfo->si_nfiles, /*release*/NULL); + + sbinfo->si_bbot = -1; + sbinfo->si_last_br_id = AUFS_BRANCH_MAX / 2; + + sbinfo->si_wbr_copyup = AuWbrCopyup_Def; + sbinfo->si_wbr_create = AuWbrCreate_Def; + sbinfo->si_wbr_copyup_ops = au_wbr_copyup_ops + sbinfo->si_wbr_copyup; + sbinfo->si_wbr_create_ops = au_wbr_create_ops + sbinfo->si_wbr_create; + + au_fhsm_init(sbinfo); + + sbinfo->si_mntflags = au_opts_plink(AuOpt_Def); + + sbinfo->si_xino_jiffy = jiffies; + sbinfo->si_xino_expire + = msecs_to_jiffies(AUFS_XINO_DEF_SEC * MSEC_PER_SEC); + mutex_init(&sbinfo->si_xib_mtx); + /* leave si_xib_last_pindex and si_xib_next_bit */ + + INIT_HLIST_BL_HEAD(&sbinfo->si_aopen); + + sbinfo->si_rdcache = msecs_to_jiffies(AUFS_RDCACHE_DEF * MSEC_PER_SEC); + sbinfo->si_rdblk = AUFS_RDBLK_DEF; + sbinfo->si_rdhash = AUFS_RDHASH_DEF; + sbinfo->si_dirwh = AUFS_DIRWH_DEF; + + for (i = 0; i < AuPlink_NHASH; i++) + INIT_HLIST_BL_HEAD(sbinfo->si_plink + i); + init_waitqueue_head(&sbinfo->si_plink_wq); + spin_lock_init(&sbinfo->si_plink_maint_lock); + + INIT_HLIST_BL_HEAD(&sbinfo->si_files); + + /* with getattr by default */ + sbinfo->si_iop_array = aufs_iop; + + /* leave other members for sysaufs and si_mnt. */ + sbinfo->si_sb = sb; + sb->s_fs_info = sbinfo; + si_pid_set(sb); + return 0; /* success */ + +out_br: + au_kfree_try_rcu(sbinfo->si_branch); +out_sbinfo: + au_kfree_rcu(sbinfo); +out: + return err; +} + +int au_sbr_realloc(struct au_sbinfo *sbinfo, int nbr, int may_shrink) +{ + int err, sz; + struct au_branch **brp; + + AuRwMustWriteLock(&sbinfo->si_rwsem); + + err = -ENOMEM; + sz = sizeof(*brp) * (sbinfo->si_bbot + 1); + if (unlikely(!sz)) + sz = sizeof(*brp); + brp = au_kzrealloc(sbinfo->si_branch, sz, sizeof(*brp) * nbr, GFP_NOFS, + may_shrink); + if (brp) { + sbinfo->si_branch = brp; + err = 0; + } + + return err; +} + +/* ---------------------------------------------------------------------- */ + +unsigned int au_sigen_inc(struct super_block *sb) +{ + unsigned int gen; + struct inode *inode; + + SiMustWriteLock(sb); + + gen = ++au_sbi(sb)->si_generation; + au_update_digen(sb->s_root); + inode = d_inode(sb->s_root); + au_update_iigen(inode, /*half*/0); + inode_inc_iversion(inode); + return gen; +} + +aufs_bindex_t au_new_br_id(struct super_block *sb) +{ + aufs_bindex_t br_id; + int i; + struct au_sbinfo *sbinfo; + + SiMustWriteLock(sb); + + sbinfo = au_sbi(sb); + for (i = 0; i <= AUFS_BRANCH_MAX; i++) { + br_id = ++sbinfo->si_last_br_id; + AuDebugOn(br_id < 0); + if (br_id && au_br_index(sb, br_id) < 0) + return br_id; + } + + return -1; +} + +/* ---------------------------------------------------------------------- */ + +/* it is ok that new 'nwt' tasks are appended while we are sleeping */ +int si_read_lock(struct super_block *sb, int flags) +{ + int err; + + err = 0; + if (au_ftest_lock(flags, FLUSH)) + au_nwt_flush(&au_sbi(sb)->si_nowait); + + si_noflush_read_lock(sb); + err = au_plink_maint(sb, flags); + if (unlikely(err)) + si_read_unlock(sb); + + return err; +} + +int si_write_lock(struct super_block *sb, int flags) +{ + int err; + + if (au_ftest_lock(flags, FLUSH)) + au_nwt_flush(&au_sbi(sb)->si_nowait); + + si_noflush_write_lock(sb); + err = au_plink_maint(sb, flags); + if (unlikely(err)) + si_write_unlock(sb); + + return err; +} + +/* dentry and super_block lock. call at entry point */ +int aufs_read_lock(struct dentry *dentry, int flags) +{ + int err; + struct super_block *sb; + + sb = dentry->d_sb; + err = si_read_lock(sb, flags); + if (unlikely(err)) + goto out; + + if (au_ftest_lock(flags, DW)) + di_write_lock_child(dentry); + else + di_read_lock_child(dentry, flags); + + if (au_ftest_lock(flags, GEN)) { + err = au_digen_test(dentry, au_sigen(sb)); + if (!au_opt_test(au_mntflags(sb), UDBA_NONE)) + AuDebugOn(!err && au_dbrange_test(dentry)); + else if (!err) + err = au_dbrange_test(dentry); + if (unlikely(err)) + aufs_read_unlock(dentry, flags); + } + +out: + return err; +} + +void aufs_read_unlock(struct dentry *dentry, int flags) +{ + if (au_ftest_lock(flags, DW)) + di_write_unlock(dentry); + else + di_read_unlock(dentry, flags); + si_read_unlock(dentry->d_sb); +} + +void aufs_write_lock(struct dentry *dentry) +{ + si_write_lock(dentry->d_sb, AuLock_FLUSH | AuLock_NOPLMW); + di_write_lock_child(dentry); +} + +void aufs_write_unlock(struct dentry *dentry) +{ + di_write_unlock(dentry); + si_write_unlock(dentry->d_sb); +} + +int aufs_read_and_write_lock2(struct dentry *d1, struct dentry *d2, int flags) +{ + int err; + unsigned int sigen; + struct super_block *sb; + + sb = d1->d_sb; + err = si_read_lock(sb, flags); + if (unlikely(err)) + goto out; + + di_write_lock2_child(d1, d2, au_ftest_lock(flags, DIRS)); + + if (au_ftest_lock(flags, GEN)) { + sigen = au_sigen(sb); + err = au_digen_test(d1, sigen); + AuDebugOn(!err && au_dbrange_test(d1)); + if (!err) { + err = au_digen_test(d2, sigen); + AuDebugOn(!err && au_dbrange_test(d2)); + } + if (unlikely(err)) + aufs_read_and_write_unlock2(d1, d2); + } + +out: + return err; +} + +void aufs_read_and_write_unlock2(struct dentry *d1, struct dentry *d2) +{ + di_write_unlock2(d1, d2); + si_read_unlock(d1->d_sb); +} --- linux-azure-5.8-5.8.0.orig/fs/aufs/super.c +++ linux-azure-5.8-5.8.0/fs/aufs/super.c @@ -0,0 +1,1050 @@ +// SPDX-License-Identifier: GPL-2.0 +/* + * Copyright (C) 2005-2020 Junjiro R. Okajima + * + * This program, aufs is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; either version 2 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + */ + +/* + * mount and super_block operations + */ + +#include +#include +#include +#include +#include +#include "aufs.h" + +/* + * super_operations + */ +static struct inode *aufs_alloc_inode(struct super_block *sb __maybe_unused) +{ + struct au_icntnr *c; + + c = au_cache_alloc_icntnr(); + if (c) { + au_icntnr_init(c); + inode_set_iversion(&c->vfs_inode, 1); /* sigen(sb); */ + c->iinfo.ii_hinode = NULL; + return &c->vfs_inode; + } + return NULL; +} + +static void aufs_destroy_inode(struct inode *inode) +{ + if (!au_is_bad_inode(inode)) + au_iinfo_fin(inode); +} + +static void aufs_free_inode(struct inode *inode) +{ + au_cache_free_icntnr(container_of(inode, struct au_icntnr, vfs_inode)); +} + +struct inode *au_iget_locked(struct super_block *sb, ino_t ino) +{ + struct inode *inode; + int err; + + inode = iget_locked(sb, ino); + if (unlikely(!inode)) { + inode = ERR_PTR(-ENOMEM); + goto out; + } + if (!(inode->i_state & I_NEW)) + goto out; + + err = au_xigen_new(inode); + if (!err) + err = au_iinfo_init(inode); + if (!err) + inode_inc_iversion(inode); + else { + iget_failed(inode); + inode = ERR_PTR(err); + } + +out: + /* never return NULL */ + AuDebugOn(!inode); + AuTraceErrPtr(inode); + return inode; +} + +/* lock free root dinfo */ +static int au_show_brs(struct seq_file *seq, struct super_block *sb) +{ + int err; + aufs_bindex_t bindex, bbot; + struct path path; + struct au_hdentry *hdp; + struct au_branch *br; + au_br_perm_str_t perm; + + err = 0; + bbot = au_sbbot(sb); + bindex = 0; + hdp = au_hdentry(au_di(sb->s_root), bindex); + for (; !err && bindex <= bbot; bindex++, hdp++) { + br = au_sbr(sb, bindex); + path.mnt = au_br_mnt(br); + path.dentry = hdp->hd_dentry; + err = au_seq_path(seq, &path); + if (!err) { + au_optstr_br_perm(&perm, br->br_perm); + seq_printf(seq, "=%s", perm.a); + if (bindex != bbot) + seq_putc(seq, ':'); + } + } + if (unlikely(err || seq_has_overflowed(seq))) + err = -E2BIG; + + return err; +} + +static void au_gen_fmt(char *fmt, int len __maybe_unused, const char *pat, + const char *append) +{ + char *p; + + p = fmt; + while (*pat != ':') + *p++ = *pat++; + *p++ = *pat++; + strcpy(p, append); + AuDebugOn(strlen(fmt) >= len); +} + +static void au_show_wbr_create(struct seq_file *m, int v, + struct au_sbinfo *sbinfo) +{ + const char *pat; + char fmt[32]; + struct au_wbr_mfs *mfs; + + AuRwMustAnyLock(&sbinfo->si_rwsem); + + seq_puts(m, ",create="); + pat = au_optstr_wbr_create(v); + mfs = &sbinfo->si_wbr_mfs; + switch (v) { + case AuWbrCreate_TDP: + case AuWbrCreate_RR: + case AuWbrCreate_MFS: + case AuWbrCreate_PMFS: + seq_puts(m, pat); + break; + case AuWbrCreate_MFSRR: + case AuWbrCreate_TDMFS: + case AuWbrCreate_PMFSRR: + au_gen_fmt(fmt, sizeof(fmt), pat, "%llu"); + seq_printf(m, fmt, mfs->mfsrr_watermark); + break; + case AuWbrCreate_MFSV: + case AuWbrCreate_PMFSV: + au_gen_fmt(fmt, sizeof(fmt), pat, "%lu"); + seq_printf(m, fmt, + jiffies_to_msecs(mfs->mfs_expire) + / MSEC_PER_SEC); + break; + case AuWbrCreate_MFSRRV: + case AuWbrCreate_TDMFSV: + case AuWbrCreate_PMFSRRV: + au_gen_fmt(fmt, sizeof(fmt), pat, "%llu:%lu"); + seq_printf(m, fmt, mfs->mfsrr_watermark, + jiffies_to_msecs(mfs->mfs_expire) / MSEC_PER_SEC); + break; + default: + BUG(); + } +} + +static int au_show_xino(struct seq_file *seq, struct super_block *sb) +{ +#ifdef CONFIG_SYSFS + return 0; +#else + int err; + const int len = sizeof(AUFS_XINO_FNAME) - 1; + aufs_bindex_t bindex, brid; + struct qstr *name; + struct file *f; + struct dentry *d, *h_root; + struct au_branch *br; + + AuRwMustAnyLock(&sbinfo->si_rwsem); + + err = 0; + f = au_sbi(sb)->si_xib; + if (!f) + goto out; + + /* stop printing the default xino path on the first writable branch */ + h_root = NULL; + bindex = au_xi_root(sb, f->f_path.dentry); + if (bindex >= 0) { + br = au_sbr_sb(sb, bindex); + h_root = au_br_dentry(br); + } + + d = f->f_path.dentry; + name = &d->d_name; + /* safe ->d_parent because the file is unlinked */ + if (d->d_parent == h_root + && name->len == len + && !memcmp(name->name, AUFS_XINO_FNAME, len)) + goto out; + + seq_puts(seq, ",xino="); + err = au_xino_path(seq, f); + +out: + return err; +#endif +} + +/* seq_file will re-call me in case of too long string */ +static int aufs_show_options(struct seq_file *m, struct dentry *dentry) +{ + int err; + unsigned int mnt_flags, v; + struct super_block *sb; + struct au_sbinfo *sbinfo; + +#define AuBool(name, str) do { \ + v = au_opt_test(mnt_flags, name); \ + if (v != au_opt_test(AuOpt_Def, name)) \ + seq_printf(m, ",%s" #str, v ? "" : "no"); \ +} while (0) + +#define AuStr(name, str) do { \ + v = mnt_flags & AuOptMask_##name; \ + if (v != (AuOpt_Def & AuOptMask_##name)) \ + seq_printf(m, "," #str "=%s", au_optstr_##str(v)); \ +} while (0) + +#define AuUInt(name, str, val) do { \ + if (val != AUFS_##name##_DEF) \ + seq_printf(m, "," #str "=%u", val); \ +} while (0) + + sb = dentry->d_sb; + if (sb->s_flags & SB_POSIXACL) + seq_puts(m, ",acl"); +#if 0 /* reserved for future use */ + if (sb->s_flags & SB_I_VERSION) + seq_puts(m, ",i_version"); +#endif + + /* lock free root dinfo */ + si_noflush_read_lock(sb); + sbinfo = au_sbi(sb); + seq_printf(m, ",si=%lx", sysaufs_si_id(sbinfo)); + + mnt_flags = au_mntflags(sb); + if (au_opt_test(mnt_flags, XINO)) { + err = au_show_xino(m, sb); + if (unlikely(err)) + goto out; + } else + seq_puts(m, ",noxino"); + + AuBool(TRUNC_XINO, trunc_xino); + AuStr(UDBA, udba); + AuBool(SHWH, shwh); + AuBool(PLINK, plink); + AuBool(DIO, dio); + AuBool(DIRPERM1, dirperm1); + + v = sbinfo->si_wbr_create; + if (v != AuWbrCreate_Def) + au_show_wbr_create(m, v, sbinfo); + + v = sbinfo->si_wbr_copyup; + if (v != AuWbrCopyup_Def) + seq_printf(m, ",cpup=%s", au_optstr_wbr_copyup(v)); + + v = au_opt_test(mnt_flags, ALWAYS_DIROPQ); + if (v != au_opt_test(AuOpt_Def, ALWAYS_DIROPQ)) + seq_printf(m, ",diropq=%c", v ? 'a' : 'w'); + + AuUInt(DIRWH, dirwh, sbinfo->si_dirwh); + + v = jiffies_to_msecs(sbinfo->si_rdcache) / MSEC_PER_SEC; + AuUInt(RDCACHE, rdcache, v); + + AuUInt(RDBLK, rdblk, sbinfo->si_rdblk); + AuUInt(RDHASH, rdhash, sbinfo->si_rdhash); + + au_fhsm_show(m, sbinfo); + + AuBool(DIRREN, dirren); + AuBool(SUM, sum); + /* AuBool(SUM_W, wsum); */ + AuBool(WARN_PERM, warn_perm); + AuBool(VERBOSE, verbose); + +out: + /* be sure to print "br:" last */ + if (!sysaufs_brs) { + seq_puts(m, ",br:"); + au_show_brs(m, sb); + } + si_read_unlock(sb); + return 0; + +#undef AuBool +#undef AuStr +#undef AuUInt +} + +/* ---------------------------------------------------------------------- */ + +/* sum mode which returns the summation for statfs(2) */ + +static u64 au_add_till_max(u64 a, u64 b) +{ + u64 old; + + old = a; + a += b; + if (old <= a) + return a; + return ULLONG_MAX; +} + +static u64 au_mul_till_max(u64 a, long mul) +{ + u64 old; + + old = a; + a *= mul; + if (old <= a) + return a; + return ULLONG_MAX; +} + +static int au_statfs_sum(struct super_block *sb, struct kstatfs *buf) +{ + int err; + long bsize, factor; + u64 blocks, bfree, bavail, files, ffree; + aufs_bindex_t bbot, bindex, i; + unsigned char shared; + struct path h_path; + struct super_block *h_sb; + + err = 0; + bsize = LONG_MAX; + files = 0; + ffree = 0; + blocks = 0; + bfree = 0; + bavail = 0; + bbot = au_sbbot(sb); + for (bindex = 0; bindex <= bbot; bindex++) { + h_path.mnt = au_sbr_mnt(sb, bindex); + h_sb = h_path.mnt->mnt_sb; + shared = 0; + for (i = 0; !shared && i < bindex; i++) + shared = (au_sbr_sb(sb, i) == h_sb); + if (shared) + continue; + + /* sb->s_root for NFS is unreliable */ + h_path.dentry = h_path.mnt->mnt_root; + err = vfs_statfs(&h_path, buf); + if (unlikely(err)) + goto out; + + if (bsize > buf->f_bsize) { + /* + * we will reduce bsize, so we have to expand blocks + * etc. to match them again + */ + factor = (bsize / buf->f_bsize); + blocks = au_mul_till_max(blocks, factor); + bfree = au_mul_till_max(bfree, factor); + bavail = au_mul_till_max(bavail, factor); + bsize = buf->f_bsize; + } + + factor = (buf->f_bsize / bsize); + blocks = au_add_till_max(blocks, + au_mul_till_max(buf->f_blocks, factor)); + bfree = au_add_till_max(bfree, + au_mul_till_max(buf->f_bfree, factor)); + bavail = au_add_till_max(bavail, + au_mul_till_max(buf->f_bavail, factor)); + files = au_add_till_max(files, buf->f_files); + ffree = au_add_till_max(ffree, buf->f_ffree); + } + + buf->f_bsize = bsize; + buf->f_blocks = blocks; + buf->f_bfree = bfree; + buf->f_bavail = bavail; + buf->f_files = files; + buf->f_ffree = ffree; + buf->f_frsize = 0; + +out: + return err; +} + +static int aufs_statfs(struct dentry *dentry, struct kstatfs *buf) +{ + int err; + struct path h_path; + struct super_block *sb; + + /* lock free root dinfo */ + sb = dentry->d_sb; + si_noflush_read_lock(sb); + if (!au_opt_test(au_mntflags(sb), SUM)) { + /* sb->s_root for NFS is unreliable */ + h_path.mnt = au_sbr_mnt(sb, 0); + h_path.dentry = h_path.mnt->mnt_root; + err = vfs_statfs(&h_path, buf); + } else + err = au_statfs_sum(sb, buf); + si_read_unlock(sb); + + if (!err) { + buf->f_type = AUFS_SUPER_MAGIC; + buf->f_namelen = AUFS_MAX_NAMELEN; + memset(&buf->f_fsid, 0, sizeof(buf->f_fsid)); + } + /* buf->f_bsize = buf->f_blocks = buf->f_bfree = buf->f_bavail = -1; */ + + return err; +} + +/* ---------------------------------------------------------------------- */ + +static int aufs_sync_fs(struct super_block *sb, int wait) +{ + int err, e; + aufs_bindex_t bbot, bindex; + struct au_branch *br; + struct super_block *h_sb; + + err = 0; + si_noflush_read_lock(sb); + bbot = au_sbbot(sb); + for (bindex = 0; bindex <= bbot; bindex++) { + br = au_sbr(sb, bindex); + if (!au_br_writable(br->br_perm)) + continue; + + h_sb = au_sbr_sb(sb, bindex); + e = vfsub_sync_filesystem(h_sb, wait); + if (unlikely(e && !err)) + err = e; + /* go on even if an error happens */ + } + si_read_unlock(sb); + + return err; +} + +/* ---------------------------------------------------------------------- */ + +/* final actions when unmounting a file system */ +static void aufs_put_super(struct super_block *sb) +{ + struct au_sbinfo *sbinfo; + + sbinfo = au_sbi(sb); + if (sbinfo) + kobject_put(&sbinfo->si_kobj); +} + +/* ---------------------------------------------------------------------- */ + +void *au_array_alloc(unsigned long long *hint, au_arraycb_t cb, + struct super_block *sb, void *arg) +{ + void *array; + unsigned long long n, sz; + + array = NULL; + n = 0; + if (!*hint) + goto out; + + if (*hint > ULLONG_MAX / sizeof(array)) { + array = ERR_PTR(-EMFILE); + pr_err("hint %llu\n", *hint); + goto out; + } + + sz = sizeof(array) * *hint; + array = kzalloc(sz, GFP_NOFS); + if (unlikely(!array)) + array = vzalloc(sz); + if (unlikely(!array)) { + array = ERR_PTR(-ENOMEM); + goto out; + } + + n = cb(sb, array, *hint, arg); + AuDebugOn(n > *hint); + +out: + *hint = n; + return array; +} + +static unsigned long long au_iarray_cb(struct super_block *sb, void *a, + unsigned long long max __maybe_unused, + void *arg) +{ + unsigned long long n; + struct inode **p, *inode; + struct list_head *head; + + n = 0; + p = a; + head = arg; + spin_lock(&sb->s_inode_list_lock); + list_for_each_entry(inode, head, i_sb_list) { + if (!au_is_bad_inode(inode) + && au_ii(inode)->ii_btop >= 0) { + spin_lock(&inode->i_lock); + if (atomic_read(&inode->i_count)) { + au_igrab(inode); + *p++ = inode; + n++; + AuDebugOn(n > max); + } + spin_unlock(&inode->i_lock); + } + } + spin_unlock(&sb->s_inode_list_lock); + + return n; +} + +struct inode **au_iarray_alloc(struct super_block *sb, unsigned long long *max) +{ + struct au_sbinfo *sbi; + + sbi = au_sbi(sb); + *max = au_lcnt_read(&sbi->si_ninodes, /*do_rev*/1); + return au_array_alloc(max, au_iarray_cb, sb, &sb->s_inodes); +} + +void au_iarray_free(struct inode **a, unsigned long long max) +{ + unsigned long long ull; + + for (ull = 0; ull < max; ull++) + iput(a[ull]); + kvfree(a); +} + +/* ---------------------------------------------------------------------- */ + +/* + * refresh dentry and inode at remount time. + */ +/* todo: consolidate with simple_reval_dpath() and au_reval_for_attr() */ +static int au_do_refresh(struct dentry *dentry, unsigned int dir_flags, + struct dentry *parent) +{ + int err; + + di_write_lock_child(dentry); + di_read_lock_parent(parent, AuLock_IR); + err = au_refresh_dentry(dentry, parent); + if (!err && dir_flags) + au_hn_reset(d_inode(dentry), dir_flags); + di_read_unlock(parent, AuLock_IR); + di_write_unlock(dentry); + + return err; +} + +static int au_do_refresh_d(struct dentry *dentry, unsigned int sigen, + struct au_sbinfo *sbinfo, + const unsigned int dir_flags, unsigned int do_idop) +{ + int err; + struct dentry *parent; + + err = 0; + parent = dget_parent(dentry); + if (!au_digen_test(parent, sigen) && au_digen_test(dentry, sigen)) { + if (d_really_is_positive(dentry)) { + if (!d_is_dir(dentry)) + err = au_do_refresh(dentry, /*dir_flags*/0, + parent); + else { + err = au_do_refresh(dentry, dir_flags, parent); + if (unlikely(err)) + au_fset_si(sbinfo, FAILED_REFRESH_DIR); + } + } else + err = au_do_refresh(dentry, /*dir_flags*/0, parent); + AuDbgDentry(dentry); + } + dput(parent); + + if (!err) { + if (do_idop) + au_refresh_dop(dentry, /*force_reval*/0); + } else + au_refresh_dop(dentry, /*force_reval*/1); + + AuTraceErr(err); + return err; +} + +static int au_refresh_d(struct super_block *sb, unsigned int do_idop) +{ + int err, i, j, ndentry, e; + unsigned int sigen; + struct au_dcsub_pages dpages; + struct au_dpage *dpage; + struct dentry **dentries, *d; + struct au_sbinfo *sbinfo; + struct dentry *root = sb->s_root; + const unsigned int dir_flags = au_hi_flags(d_inode(root), /*isdir*/1); + + if (do_idop) + au_refresh_dop(root, /*force_reval*/0); + + err = au_dpages_init(&dpages, GFP_NOFS); + if (unlikely(err)) + goto out; + err = au_dcsub_pages(&dpages, root, NULL, NULL); + if (unlikely(err)) + goto out_dpages; + + sigen = au_sigen(sb); + sbinfo = au_sbi(sb); + for (i = 0; i < dpages.ndpage; i++) { + dpage = dpages.dpages + i; + dentries = dpage->dentries; + ndentry = dpage->ndentry; + for (j = 0; j < ndentry; j++) { + d = dentries[j]; + e = au_do_refresh_d(d, sigen, sbinfo, dir_flags, + do_idop); + if (unlikely(e && !err)) + err = e; + /* go on even err */ + } + } + +out_dpages: + au_dpages_free(&dpages); +out: + return err; +} + +static int au_refresh_i(struct super_block *sb, unsigned int do_idop) +{ + int err, e; + unsigned int sigen; + unsigned long long max, ull; + struct inode *inode, **array; + + array = au_iarray_alloc(sb, &max); + err = PTR_ERR(array); + if (IS_ERR(array)) + goto out; + + err = 0; + sigen = au_sigen(sb); + for (ull = 0; ull < max; ull++) { + inode = array[ull]; + if (unlikely(!inode)) + break; + + e = 0; + ii_write_lock_child(inode); + if (au_iigen(inode, NULL) != sigen) { + e = au_refresh_hinode_self(inode); + if (unlikely(e)) { + au_refresh_iop(inode, /*force_getattr*/1); + pr_err("error %d, i%lu\n", e, inode->i_ino); + if (!err) + err = e; + /* go on even if err */ + } + } + if (!e && do_idop) + au_refresh_iop(inode, /*force_getattr*/0); + ii_write_unlock(inode); + } + + au_iarray_free(array, max); + +out: + return err; +} + +static void au_remount_refresh(struct super_block *sb, unsigned int do_idop) +{ + int err, e; + unsigned int udba; + aufs_bindex_t bindex, bbot; + struct dentry *root; + struct inode *inode; + struct au_branch *br; + struct au_sbinfo *sbi; + + au_sigen_inc(sb); + sbi = au_sbi(sb); + au_fclr_si(sbi, FAILED_REFRESH_DIR); + + root = sb->s_root; + DiMustNoWaiters(root); + inode = d_inode(root); + IiMustNoWaiters(inode); + + udba = au_opt_udba(sb); + bbot = au_sbbot(sb); + for (bindex = 0; bindex <= bbot; bindex++) { + br = au_sbr(sb, bindex); + err = au_hnotify_reset_br(udba, br, br->br_perm); + if (unlikely(err)) + AuIOErr("hnotify failed on br %d, %d, ignored\n", + bindex, err); + /* go on even if err */ + } + au_hn_reset(inode, au_hi_flags(inode, /*isdir*/1)); + + if (do_idop) { + if (au_ftest_si(sbi, NO_DREVAL)) { + AuDebugOn(sb->s_d_op == &aufs_dop_noreval); + sb->s_d_op = &aufs_dop_noreval; + AuDebugOn(sbi->si_iop_array == aufs_iop_nogetattr); + sbi->si_iop_array = aufs_iop_nogetattr; + } else { + AuDebugOn(sb->s_d_op == &aufs_dop); + sb->s_d_op = &aufs_dop; + AuDebugOn(sbi->si_iop_array == aufs_iop); + sbi->si_iop_array = aufs_iop; + } + pr_info("reset to %ps and %ps\n", + sb->s_d_op, sbi->si_iop_array); + } + + di_write_unlock(root); + err = au_refresh_d(sb, do_idop); + e = au_refresh_i(sb, do_idop); + if (unlikely(e && !err)) + err = e; + /* aufs_write_lock() calls ..._child() */ + di_write_lock_child(root); + + au_cpup_attr_all(inode, /*force*/1); + + if (unlikely(err)) + AuIOErr("refresh failed, ignored, %d\n", err); +} + +/* stop extra interpretation of errno in mount(8), and strange error messages */ +static int cvt_err(int err) +{ + AuTraceErr(err); + + switch (err) { + case -ENOENT: + case -ENOTDIR: + case -EEXIST: + case -EIO: + err = -EINVAL; + } + return err; +} + +static int aufs_remount_fs(struct super_block *sb, int *flags, char *data) +{ + int err, do_dx; + unsigned int mntflags; + struct au_opts opts = { + .opt = NULL + }; + struct dentry *root; + struct inode *inode; + struct au_sbinfo *sbinfo; + + err = 0; + root = sb->s_root; + if (!data || !*data) { + err = si_write_lock(sb, AuLock_FLUSH | AuLock_NOPLM); + if (!err) { + di_write_lock_child(root); + err = au_opts_verify(sb, *flags, /*pending*/0); + aufs_write_unlock(root); + } + goto out; + } + + err = -ENOMEM; + opts.opt = (void *)__get_free_page(GFP_NOFS); + if (unlikely(!opts.opt)) + goto out; + opts.max_opt = PAGE_SIZE / sizeof(*opts.opt); + opts.flags = AuOpts_REMOUNT; + opts.sb_flags = *flags; + + /* parse it before aufs lock */ + err = au_opts_parse(sb, data, &opts); + if (unlikely(err)) + goto out_opts; + + sbinfo = au_sbi(sb); + inode = d_inode(root); + inode_lock(inode); + err = si_write_lock(sb, AuLock_FLUSH | AuLock_NOPLM); + if (unlikely(err)) + goto out_mtx; + di_write_lock_child(root); + + /* au_opts_remount() may return an error */ + err = au_opts_remount(sb, &opts); + au_opts_free(&opts); + + if (au_ftest_opts(opts.flags, REFRESH)) + au_remount_refresh(sb, au_ftest_opts(opts.flags, REFRESH_IDOP)); + + if (au_ftest_opts(opts.flags, REFRESH_DYAOP)) { + mntflags = au_mntflags(sb); + do_dx = !!au_opt_test(mntflags, DIO); + au_dy_arefresh(do_dx); + } + + au_fhsm_wrote_all(sb, /*force*/1); /* ?? */ + aufs_write_unlock(root); + +out_mtx: + inode_unlock(inode); +out_opts: + free_page((unsigned long)opts.opt); +out: + err = cvt_err(err); + AuTraceErr(err); + return err; +} + +static const struct super_operations aufs_sop = { + .alloc_inode = aufs_alloc_inode, + .destroy_inode = aufs_destroy_inode, + .free_inode = aufs_free_inode, + /* always deleting, no clearing */ + .drop_inode = generic_delete_inode, + .show_options = aufs_show_options, + .statfs = aufs_statfs, + .put_super = aufs_put_super, + .sync_fs = aufs_sync_fs, + .remount_fs = aufs_remount_fs, +#ifdef CONFIG_AUFS_BDEV_LOOP + .real_loop = aufs_real_loop +#endif +}; + +/* ---------------------------------------------------------------------- */ + +static int alloc_root(struct super_block *sb) +{ + int err; + struct inode *inode; + struct dentry *root; + + err = -ENOMEM; + inode = au_iget_locked(sb, AUFS_ROOT_INO); + err = PTR_ERR(inode); + if (IS_ERR(inode)) + goto out; + + inode->i_op = aufs_iop + AuIop_DIR; /* with getattr by default */ + inode->i_fop = &aufs_dir_fop; + inode->i_mode = S_IFDIR; + set_nlink(inode, 2); + unlock_new_inode(inode); + + root = d_make_root(inode); + if (unlikely(!root)) + goto out; + err = PTR_ERR(root); + if (IS_ERR(root)) + goto out; + + err = au_di_init(root); + if (!err) { + sb->s_root = root; + return 0; /* success */ + } + dput(root); + +out: + return err; +} + +static int aufs_fill_super(struct super_block *sb, void *raw_data, + int silent __maybe_unused) +{ + int err; + struct au_opts opts = { + .opt = NULL + }; + struct au_sbinfo *sbinfo; + struct dentry *root; + struct inode *inode; + char *arg = raw_data; + + if (unlikely(!arg || !*arg)) { + err = -EINVAL; + pr_err("no arg\n"); + goto out; + } + + err = -ENOMEM; + opts.opt = (void *)__get_free_page(GFP_NOFS); + if (unlikely(!opts.opt)) + goto out; + opts.max_opt = PAGE_SIZE / sizeof(*opts.opt); + opts.sb_flags = sb->s_flags; + + err = au_si_alloc(sb); + if (unlikely(err)) + goto out_opts; + sbinfo = au_sbi(sb); + + /* all timestamps always follow the ones on the branch */ + sb->s_flags |= SB_NOATIME | SB_NODIRATIME; + sb->s_flags |= SB_I_VERSION; /* do we really need this? */ + sb->s_op = &aufs_sop; + sb->s_d_op = &aufs_dop; + sb->s_magic = AUFS_SUPER_MAGIC; + sb->s_maxbytes = 0; + sb->s_stack_depth = 1; + au_export_init(sb); + au_xattr_init(sb); + + err = alloc_root(sb); + if (unlikely(err)) { + si_write_unlock(sb); + goto out_info; + } + root = sb->s_root; + inode = d_inode(root); + + /* + * actually we can parse options regardless aufs lock here. + * but at remount time, parsing must be done before aufs lock. + * so we follow the same rule. + */ + ii_write_lock_parent(inode); + aufs_write_unlock(root); + err = au_opts_parse(sb, arg, &opts); + if (unlikely(err)) + goto out_root; + + /* lock vfs_inode first, then aufs. */ + inode_lock(inode); + aufs_write_lock(root); + err = au_opts_mount(sb, &opts); + au_opts_free(&opts); + if (!err && au_ftest_si(sbinfo, NO_DREVAL)) { + sb->s_d_op = &aufs_dop_noreval; + pr_info("%ps\n", sb->s_d_op); + au_refresh_dop(root, /*force_reval*/0); + sbinfo->si_iop_array = aufs_iop_nogetattr; + au_refresh_iop(inode, /*force_getattr*/0); + } + aufs_write_unlock(root); + inode_unlock(inode); + if (!err) + goto out_opts; /* success */ + +out_root: + dput(root); + sb->s_root = NULL; +out_info: + kobject_put(&sbinfo->si_kobj); + sb->s_fs_info = NULL; +out_opts: + free_page((unsigned long)opts.opt); +out: + AuTraceErr(err); + err = cvt_err(err); + AuTraceErr(err); + return err; +} + +/* ---------------------------------------------------------------------- */ + +static struct dentry *aufs_mount(struct file_system_type *fs_type, int flags, + const char *dev_name __maybe_unused, + void *raw_data) +{ + struct dentry *root; + + /* all timestamps always follow the ones on the branch */ + /* mnt->mnt_flags |= MNT_NOATIME | MNT_NODIRATIME; */ + root = mount_nodev(fs_type, flags, raw_data, aufs_fill_super); + if (IS_ERR(root)) + goto out; + + au_sbilist_add(root->d_sb); + +out: + return root; +} + +static void aufs_kill_sb(struct super_block *sb) +{ + struct au_sbinfo *sbinfo; + + sbinfo = au_sbi(sb); + if (sbinfo) { + au_sbilist_del(sb); + aufs_write_lock(sb->s_root); + au_fhsm_fin(sb); + if (sbinfo->si_wbr_create_ops->fin) + sbinfo->si_wbr_create_ops->fin(sb); + if (au_opt_test(sbinfo->si_mntflags, UDBA_HNOTIFY)) { + au_opt_set_udba(sbinfo->si_mntflags, UDBA_NONE); + au_remount_refresh(sb, /*do_idop*/0); + } + if (au_opt_test(sbinfo->si_mntflags, PLINK)) + au_plink_put(sb, /*verbose*/1); + au_xino_clr(sb); + au_dr_opt_flush(sb); + sbinfo->si_sb = NULL; + aufs_write_unlock(sb->s_root); + au_nwt_flush(&sbinfo->si_nowait); + } + kill_anon_super(sb); +} + +struct file_system_type aufs_fs_type = { + .name = AUFS_FSTYPE, + /* a race between rename and others */ + .fs_flags = FS_RENAME_DOES_D_MOVE, + .mount = aufs_mount, + .kill_sb = aufs_kill_sb, + /* no need to __module_get() and module_put(). */ + .owner = THIS_MODULE, +}; --- linux-azure-5.8-5.8.0.orig/fs/aufs/super.h +++ linux-azure-5.8-5.8.0/fs/aufs/super.h @@ -0,0 +1,589 @@ +/* SPDX-License-Identifier: GPL-2.0 */ +/* + * Copyright (C) 2005-2020 Junjiro R. Okajima + * + * This program, aufs is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; either version 2 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + */ + +/* + * super_block operations + */ + +#ifndef __AUFS_SUPER_H__ +#define __AUFS_SUPER_H__ + +#ifdef __KERNEL__ + +#include +#include +#include "hbl.h" +#include "lcnt.h" +#include "rwsem.h" +#include "wkq.h" + +/* policies to select one among multiple writable branches */ +struct au_wbr_copyup_operations { + int (*copyup)(struct dentry *dentry); +}; + +#define AuWbr_DIR 1 /* target is a dir */ +#define AuWbr_PARENT (1 << 1) /* always require a parent */ + +#define au_ftest_wbr(flags, name) ((flags) & AuWbr_##name) +#define au_fset_wbr(flags, name) { (flags) |= AuWbr_##name; } +#define au_fclr_wbr(flags, name) { (flags) &= ~AuWbr_##name; } + +struct au_wbr_create_operations { + int (*create)(struct dentry *dentry, unsigned int flags); + int (*init)(struct super_block *sb); + int (*fin)(struct super_block *sb); +}; + +struct au_wbr_mfs { + struct mutex mfs_lock; /* protect this structure */ + unsigned long mfs_jiffy; + unsigned long mfs_expire; + aufs_bindex_t mfs_bindex; + + unsigned long long mfsrr_bytes; + unsigned long long mfsrr_watermark; +}; + +#define AuPlink_NHASH 100 +static inline int au_plink_hash(ino_t ino) +{ + return ino % AuPlink_NHASH; +} + +/* File-based Hierarchical Storage Management */ +struct au_fhsm { +#ifdef CONFIG_AUFS_FHSM + /* allow only one process who can receive the notification */ + spinlock_t fhsm_spin; + pid_t fhsm_pid; + wait_queue_head_t fhsm_wqh; + atomic_t fhsm_readable; + + /* these are protected by si_rwsem */ + unsigned long fhsm_expire; + aufs_bindex_t fhsm_bottom; +#endif +}; + +struct au_branch; +struct au_sbinfo { + /* nowait tasks in the system-wide workqueue */ + struct au_nowait_tasks si_nowait; + + /* + * tried sb->s_umount, but failed due to the dependency between i_mutex. + * rwsem for au_sbinfo is necessary. + */ + struct au_rwsem si_rwsem; + + /* + * dirty approach to protect sb->sb_inodes and ->s_files (gone) from + * remount. + */ + au_lcnt_t si_ninodes, si_nfiles; + + /* branch management */ + unsigned int si_generation; + + /* see AuSi_ flags */ + unsigned char au_si_status; + + aufs_bindex_t si_bbot; + + /* dirty trick to keep br_id plus */ + unsigned int si_last_br_id : + sizeof(aufs_bindex_t) * BITS_PER_BYTE - 1; + struct au_branch **si_branch; + + /* policy to select a writable branch */ + unsigned char si_wbr_copyup; + unsigned char si_wbr_create; + struct au_wbr_copyup_operations *si_wbr_copyup_ops; + struct au_wbr_create_operations *si_wbr_create_ops; + + /* round robin */ + atomic_t si_wbr_rr_next; + + /* most free space */ + struct au_wbr_mfs si_wbr_mfs; + + /* File-based Hierarchical Storage Management */ + struct au_fhsm si_fhsm; + + /* mount flags */ + /* include/asm-ia64/siginfo.h defines a macro named si_flags */ + unsigned int si_mntflags; + + /* external inode number (bitmap and translation table) */ + vfs_readf_t si_xread; + vfs_writef_t si_xwrite; + loff_t si_ximaxent; /* max entries in a xino */ + + struct file *si_xib; + struct mutex si_xib_mtx; /* protect xib members */ + unsigned long *si_xib_buf; + unsigned long si_xib_last_pindex; + int si_xib_next_bit; + + unsigned long si_xino_jiffy; + unsigned long si_xino_expire; + /* reserved for future use */ + /* unsigned long long si_xib_limit; */ /* Max xib file size */ + +#ifdef CONFIG_AUFS_EXPORT + /* i_generation */ + /* todo: make xigen file an array to support many inode numbers */ + struct file *si_xigen; + atomic_t si_xigen_next; +#endif + + /* dirty trick to support atomic_open */ + struct hlist_bl_head si_aopen; + + /* vdir parameters */ + unsigned long si_rdcache; /* max cache time in jiffies */ + unsigned int si_rdblk; /* deblk size */ + unsigned int si_rdhash; /* hash size */ + + /* + * If the number of whiteouts are larger than si_dirwh, leave all of + * them after au_whtmp_ren to reduce the cost of rmdir(2). + * future fsck.aufs or kernel thread will remove them later. + * Otherwise, remove all whiteouts and the dir in rmdir(2). + */ + unsigned int si_dirwh; + + /* pseudo_link list */ + struct hlist_bl_head si_plink[AuPlink_NHASH]; + wait_queue_head_t si_plink_wq; + spinlock_t si_plink_maint_lock; + pid_t si_plink_maint_pid; + + /* file list */ + struct hlist_bl_head si_files; + + /* with/without getattr, brother of sb->s_d_op */ + const struct inode_operations *si_iop_array; + + /* + * sysfs and lifetime management. + * this is not a small structure and it may be a waste of memory in case + * of sysfs is disabled, particularly when many aufs-es are mounted. + * but using sysfs is majority. + */ + struct kobject si_kobj; +#ifdef CONFIG_DEBUG_FS + struct dentry *si_dbgaufs; + struct dentry *si_dbgaufs_plink; + struct dentry *si_dbgaufs_xib; +#ifdef CONFIG_AUFS_EXPORT + struct dentry *si_dbgaufs_xigen; +#endif +#endif + +#ifdef CONFIG_AUFS_SBILIST + struct hlist_bl_node si_list; +#endif + + /* dirty, necessary for unmounting, sysfs and sysrq */ + struct super_block *si_sb; +}; + +/* sbinfo status flags */ +/* + * set true when refresh_dirs() failed at remount time. + * then try refreshing dirs at access time again. + * if it is false, refreshing dirs at access time is unnecessary + */ +#define AuSi_FAILED_REFRESH_DIR 1 +#define AuSi_FHSM (1 << 1) /* fhsm is active now */ +#define AuSi_NO_DREVAL (1 << 2) /* disable all d_revalidate */ + +#ifndef CONFIG_AUFS_FHSM +#undef AuSi_FHSM +#define AuSi_FHSM 0 +#endif + +static inline unsigned char au_do_ftest_si(struct au_sbinfo *sbi, + unsigned int flag) +{ + AuRwMustAnyLock(&sbi->si_rwsem); + return sbi->au_si_status & flag; +} +#define au_ftest_si(sbinfo, name) au_do_ftest_si(sbinfo, AuSi_##name) +#define au_fset_si(sbinfo, name) do { \ + AuRwMustWriteLock(&(sbinfo)->si_rwsem); \ + (sbinfo)->au_si_status |= AuSi_##name; \ +} while (0) +#define au_fclr_si(sbinfo, name) do { \ + AuRwMustWriteLock(&(sbinfo)->si_rwsem); \ + (sbinfo)->au_si_status &= ~AuSi_##name; \ +} while (0) + +/* ---------------------------------------------------------------------- */ + +/* policy to select one among writable branches */ +#define AuWbrCopyup(sbinfo, ...) \ + ((sbinfo)->si_wbr_copyup_ops->copyup(__VA_ARGS__)) +#define AuWbrCreate(sbinfo, ...) \ + ((sbinfo)->si_wbr_create_ops->create(__VA_ARGS__)) + +/* flags for si_read_lock()/aufs_read_lock()/di_read_lock() */ +#define AuLock_DW 1 /* write-lock dentry */ +#define AuLock_IR (1 << 1) /* read-lock inode */ +#define AuLock_IW (1 << 2) /* write-lock inode */ +#define AuLock_FLUSH (1 << 3) /* wait for 'nowait' tasks */ +#define AuLock_DIRS (1 << 4) /* target is a pair of dirs */ + /* except RENAME_EXCHANGE */ +#define AuLock_NOPLM (1 << 5) /* return err in plm mode */ +#define AuLock_NOPLMW (1 << 6) /* wait for plm mode ends */ +#define AuLock_GEN (1 << 7) /* test digen/iigen */ +#define au_ftest_lock(flags, name) ((flags) & AuLock_##name) +#define au_fset_lock(flags, name) \ + do { (flags) |= AuLock_##name; } while (0) +#define au_fclr_lock(flags, name) \ + do { (flags) &= ~AuLock_##name; } while (0) + +/* ---------------------------------------------------------------------- */ + +/* super.c */ +extern struct file_system_type aufs_fs_type; +struct inode *au_iget_locked(struct super_block *sb, ino_t ino); +typedef unsigned long long (*au_arraycb_t)(struct super_block *sb, void *array, + unsigned long long max, void *arg); +void *au_array_alloc(unsigned long long *hint, au_arraycb_t cb, + struct super_block *sb, void *arg); +struct inode **au_iarray_alloc(struct super_block *sb, unsigned long long *max); +void au_iarray_free(struct inode **a, unsigned long long max); + +/* sbinfo.c */ +void au_si_free(struct kobject *kobj); +int au_si_alloc(struct super_block *sb); +int au_sbr_realloc(struct au_sbinfo *sbinfo, int nbr, int may_shrink); + +unsigned int au_sigen_inc(struct super_block *sb); +aufs_bindex_t au_new_br_id(struct super_block *sb); + +int si_read_lock(struct super_block *sb, int flags); +int si_write_lock(struct super_block *sb, int flags); +int aufs_read_lock(struct dentry *dentry, int flags); +void aufs_read_unlock(struct dentry *dentry, int flags); +void aufs_write_lock(struct dentry *dentry); +void aufs_write_unlock(struct dentry *dentry); +int aufs_read_and_write_lock2(struct dentry *d1, struct dentry *d2, int flags); +void aufs_read_and_write_unlock2(struct dentry *d1, struct dentry *d2); + +/* wbr_policy.c */ +extern struct au_wbr_copyup_operations au_wbr_copyup_ops[]; +extern struct au_wbr_create_operations au_wbr_create_ops[]; +int au_cpdown_dirs(struct dentry *dentry, aufs_bindex_t bdst); +int au_wbr_nonopq(struct dentry *dentry, aufs_bindex_t bindex); +int au_wbr_do_copyup_bu(struct dentry *dentry, aufs_bindex_t btop); + +/* mvdown.c */ +int au_mvdown(struct dentry *dentry, struct aufs_mvdown __user *arg); + +#ifdef CONFIG_AUFS_FHSM +/* fhsm.c */ + +static inline pid_t au_fhsm_pid(struct au_fhsm *fhsm) +{ + pid_t pid; + + spin_lock(&fhsm->fhsm_spin); + pid = fhsm->fhsm_pid; + spin_unlock(&fhsm->fhsm_spin); + + return pid; +} + +void au_fhsm_wrote(struct super_block *sb, aufs_bindex_t bindex, int force); +void au_fhsm_wrote_all(struct super_block *sb, int force); +int au_fhsm_fd(struct super_block *sb, int oflags); +int au_fhsm_br_alloc(struct au_branch *br); +void au_fhsm_set_bottom(struct super_block *sb, aufs_bindex_t bindex); +void au_fhsm_fin(struct super_block *sb); +void au_fhsm_init(struct au_sbinfo *sbinfo); +void au_fhsm_set(struct au_sbinfo *sbinfo, unsigned int sec); +void au_fhsm_show(struct seq_file *seq, struct au_sbinfo *sbinfo); +#else +AuStubVoid(au_fhsm_wrote, struct super_block *sb, aufs_bindex_t bindex, + int force) +AuStubVoid(au_fhsm_wrote_all, struct super_block *sb, int force) +AuStub(int, au_fhsm_fd, return -EOPNOTSUPP, struct super_block *sb, int oflags) +AuStub(pid_t, au_fhsm_pid, return 0, struct au_fhsm *fhsm) +AuStubInt0(au_fhsm_br_alloc, struct au_branch *br) +AuStubVoid(au_fhsm_set_bottom, struct super_block *sb, aufs_bindex_t bindex) +AuStubVoid(au_fhsm_fin, struct super_block *sb) +AuStubVoid(au_fhsm_init, struct au_sbinfo *sbinfo) +AuStubVoid(au_fhsm_set, struct au_sbinfo *sbinfo, unsigned int sec) +AuStubVoid(au_fhsm_show, struct seq_file *seq, struct au_sbinfo *sbinfo) +#endif + +/* ---------------------------------------------------------------------- */ + +static inline struct au_sbinfo *au_sbi(struct super_block *sb) +{ + return sb->s_fs_info; +} + +/* ---------------------------------------------------------------------- */ + +#ifdef CONFIG_AUFS_EXPORT +int au_test_nfsd(void); +void au_export_init(struct super_block *sb); +void au_xigen_inc(struct inode *inode); +int au_xigen_new(struct inode *inode); +int au_xigen_set(struct super_block *sb, struct path *path); +void au_xigen_clr(struct super_block *sb); + +static inline int au_busy_or_stale(void) +{ + if (!au_test_nfsd()) + return -EBUSY; + return -ESTALE; +} +#else +AuStubInt0(au_test_nfsd, void) +AuStubVoid(au_export_init, struct super_block *sb) +AuStubVoid(au_xigen_inc, struct inode *inode) +AuStubInt0(au_xigen_new, struct inode *inode) +AuStubInt0(au_xigen_set, struct super_block *sb, struct path *path) +AuStubVoid(au_xigen_clr, struct super_block *sb) +AuStub(int, au_busy_or_stale, return -EBUSY, void) +#endif /* CONFIG_AUFS_EXPORT */ + +/* ---------------------------------------------------------------------- */ + +#ifdef CONFIG_AUFS_SBILIST +/* module.c */ +extern struct hlist_bl_head au_sbilist; + +static inline void au_sbilist_init(void) +{ + INIT_HLIST_BL_HEAD(&au_sbilist); +} + +static inline void au_sbilist_add(struct super_block *sb) +{ + au_hbl_add(&au_sbi(sb)->si_list, &au_sbilist); +} + +static inline void au_sbilist_del(struct super_block *sb) +{ + au_hbl_del(&au_sbi(sb)->si_list, &au_sbilist); +} + +#ifdef CONFIG_AUFS_MAGIC_SYSRQ +static inline void au_sbilist_lock(void) +{ + hlist_bl_lock(&au_sbilist); +} + +static inline void au_sbilist_unlock(void) +{ + hlist_bl_unlock(&au_sbilist); +} +#define AuGFP_SBILIST GFP_ATOMIC +#else +AuStubVoid(au_sbilist_lock, void) +AuStubVoid(au_sbilist_unlock, void) +#define AuGFP_SBILIST GFP_NOFS +#endif /* CONFIG_AUFS_MAGIC_SYSRQ */ +#else +AuStubVoid(au_sbilist_init, void) +AuStubVoid(au_sbilist_add, struct super_block *sb) +AuStubVoid(au_sbilist_del, struct super_block *sb) +AuStubVoid(au_sbilist_lock, void) +AuStubVoid(au_sbilist_unlock, void) +#define AuGFP_SBILIST GFP_NOFS +#endif + +/* ---------------------------------------------------------------------- */ + +static inline void dbgaufs_si_null(struct au_sbinfo *sbinfo) +{ + /* + * This function is a dynamic '__init' function actually, + * so the tiny check for si_rwsem is unnecessary. + */ + /* AuRwMustWriteLock(&sbinfo->si_rwsem); */ +#ifdef CONFIG_DEBUG_FS + sbinfo->si_dbgaufs = NULL; + sbinfo->si_dbgaufs_plink = NULL; + sbinfo->si_dbgaufs_xib = NULL; +#ifdef CONFIG_AUFS_EXPORT + sbinfo->si_dbgaufs_xigen = NULL; +#endif +#endif +} + +/* ---------------------------------------------------------------------- */ + +/* current->atomic_flags */ +/* this value should never corrupt the ones defined in linux/sched.h */ +#define PFA_AUFS 0x10 + +TASK_PFA_TEST(AUFS, test_aufs) /* task_test_aufs */ +TASK_PFA_SET(AUFS, aufs) /* task_set_aufs */ +TASK_PFA_CLEAR(AUFS, aufs) /* task_clear_aufs */ + +static inline int si_pid_test(struct super_block *sb) +{ + return !!task_test_aufs(current); +} + +static inline void si_pid_clr(struct super_block *sb) +{ + AuDebugOn(!task_test_aufs(current)); + task_clear_aufs(current); +} + +static inline void si_pid_set(struct super_block *sb) +{ + AuDebugOn(task_test_aufs(current)); + task_set_aufs(current); +} + +/* ---------------------------------------------------------------------- */ + +/* lock superblock. mainly for entry point functions */ +#define __si_read_lock(sb) au_rw_read_lock(&au_sbi(sb)->si_rwsem) +#define __si_write_lock(sb) au_rw_write_lock(&au_sbi(sb)->si_rwsem) +#define __si_read_trylock(sb) au_rw_read_trylock(&au_sbi(sb)->si_rwsem) +#define __si_write_trylock(sb) au_rw_write_trylock(&au_sbi(sb)->si_rwsem) +/* +#define __si_read_trylock_nested(sb) \ + au_rw_read_trylock_nested(&au_sbi(sb)->si_rwsem) +#define __si_write_trylock_nested(sb) \ + au_rw_write_trylock_nested(&au_sbi(sb)->si_rwsem) +*/ + +#define __si_read_unlock(sb) au_rw_read_unlock(&au_sbi(sb)->si_rwsem) +#define __si_write_unlock(sb) au_rw_write_unlock(&au_sbi(sb)->si_rwsem) +#define __si_downgrade_lock(sb) au_rw_dgrade_lock(&au_sbi(sb)->si_rwsem) + +#define SiMustNoWaiters(sb) AuRwMustNoWaiters(&au_sbi(sb)->si_rwsem) +#define SiMustAnyLock(sb) AuRwMustAnyLock(&au_sbi(sb)->si_rwsem) +#define SiMustWriteLock(sb) AuRwMustWriteLock(&au_sbi(sb)->si_rwsem) + +static inline void si_noflush_read_lock(struct super_block *sb) +{ + __si_read_lock(sb); + si_pid_set(sb); +} + +static inline int si_noflush_read_trylock(struct super_block *sb) +{ + int locked; + + locked = __si_read_trylock(sb); + if (locked) + si_pid_set(sb); + return locked; +} + +static inline void si_noflush_write_lock(struct super_block *sb) +{ + __si_write_lock(sb); + si_pid_set(sb); +} + +static inline int si_noflush_write_trylock(struct super_block *sb) +{ + int locked; + + locked = __si_write_trylock(sb); + if (locked) + si_pid_set(sb); + return locked; +} + +#if 0 /* reserved */ +static inline int si_read_trylock(struct super_block *sb, int flags) +{ + if (au_ftest_lock(flags, FLUSH)) + au_nwt_flush(&au_sbi(sb)->si_nowait); + return si_noflush_read_trylock(sb); +} +#endif + +static inline void si_read_unlock(struct super_block *sb) +{ + si_pid_clr(sb); + __si_read_unlock(sb); +} + +#if 0 /* reserved */ +static inline int si_write_trylock(struct super_block *sb, int flags) +{ + if (au_ftest_lock(flags, FLUSH)) + au_nwt_flush(&au_sbi(sb)->si_nowait); + return si_noflush_write_trylock(sb); +} +#endif + +static inline void si_write_unlock(struct super_block *sb) +{ + si_pid_clr(sb); + __si_write_unlock(sb); +} + +#if 0 /* reserved */ +static inline void si_downgrade_lock(struct super_block *sb) +{ + __si_downgrade_lock(sb); +} +#endif + +/* ---------------------------------------------------------------------- */ + +static inline aufs_bindex_t au_sbbot(struct super_block *sb) +{ + SiMustAnyLock(sb); + return au_sbi(sb)->si_bbot; +} + +static inline unsigned int au_mntflags(struct super_block *sb) +{ + SiMustAnyLock(sb); + return au_sbi(sb)->si_mntflags; +} + +static inline unsigned int au_sigen(struct super_block *sb) +{ + SiMustAnyLock(sb); + return au_sbi(sb)->si_generation; +} + +static inline struct au_branch *au_sbr(struct super_block *sb, + aufs_bindex_t bindex) +{ + SiMustAnyLock(sb); + return au_sbi(sb)->si_branch[0 + bindex]; +} + +static inline loff_t au_xi_maxent(struct super_block *sb) +{ + SiMustAnyLock(sb); + return au_sbi(sb)->si_ximaxent; +} + +#endif /* __KERNEL__ */ +#endif /* __AUFS_SUPER_H__ */ --- linux-azure-5.8-5.8.0.orig/fs/aufs/sysaufs.c +++ linux-azure-5.8-5.8.0/fs/aufs/sysaufs.c @@ -0,0 +1,93 @@ +// SPDX-License-Identifier: GPL-2.0 +/* + * Copyright (C) 2005-2020 Junjiro R. Okajima + * + * This program, aufs is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; either version 2 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + */ + +/* + * sysfs interface and lifetime management + * they are necessary regardless sysfs is disabled. + */ + +#include +#include "aufs.h" + +unsigned long sysaufs_si_mask; +struct kset *sysaufs_kset; + +#define AuSiAttr(_name) { \ + .attr = { .name = __stringify(_name), .mode = 0444 }, \ + .show = sysaufs_si_##_name, \ +} + +static struct sysaufs_si_attr sysaufs_si_attr_xi_path = AuSiAttr(xi_path); +struct attribute *sysaufs_si_attrs[] = { + &sysaufs_si_attr_xi_path.attr, + NULL, +}; + +static const struct sysfs_ops au_sbi_ops = { + .show = sysaufs_si_show +}; + +static struct kobj_type au_sbi_ktype = { + .release = au_si_free, + .sysfs_ops = &au_sbi_ops, + .default_attrs = sysaufs_si_attrs +}; + +/* ---------------------------------------------------------------------- */ + +int sysaufs_si_init(struct au_sbinfo *sbinfo) +{ + int err; + + sbinfo->si_kobj.kset = sysaufs_kset; + /* cf. sysaufs_name() */ + err = kobject_init_and_add + (&sbinfo->si_kobj, &au_sbi_ktype, /*&sysaufs_kset->kobj*/NULL, + SysaufsSiNamePrefix "%lx", sysaufs_si_id(sbinfo)); + + return err; +} + +void sysaufs_fin(void) +{ + sysfs_remove_group(&sysaufs_kset->kobj, sysaufs_attr_group); + kset_unregister(sysaufs_kset); +} + +int __init sysaufs_init(void) +{ + int err; + + do { + get_random_bytes(&sysaufs_si_mask, sizeof(sysaufs_si_mask)); + } while (!sysaufs_si_mask); + + err = -EINVAL; + sysaufs_kset = kset_create_and_add(AUFS_NAME, NULL, fs_kobj); + if (unlikely(!sysaufs_kset)) + goto out; + err = PTR_ERR(sysaufs_kset); + if (IS_ERR(sysaufs_kset)) + goto out; + err = sysfs_create_group(&sysaufs_kset->kobj, sysaufs_attr_group); + if (unlikely(err)) + kset_unregister(sysaufs_kset); + +out: + return err; +} --- linux-azure-5.8-5.8.0.orig/fs/aufs/sysaufs.h +++ linux-azure-5.8-5.8.0/fs/aufs/sysaufs.h @@ -0,0 +1,102 @@ +/* SPDX-License-Identifier: GPL-2.0 */ +/* + * Copyright (C) 2005-2020 Junjiro R. Okajima + * + * This program, aufs is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; either version 2 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + */ + +/* + * sysfs interface and mount lifetime management + */ + +#ifndef __SYSAUFS_H__ +#define __SYSAUFS_H__ + +#ifdef __KERNEL__ + +#include +#include "module.h" + +struct super_block; +struct au_sbinfo; + +struct sysaufs_si_attr { + struct attribute attr; + int (*show)(struct seq_file *seq, struct super_block *sb); +}; + +/* ---------------------------------------------------------------------- */ + +/* sysaufs.c */ +extern unsigned long sysaufs_si_mask; +extern struct kset *sysaufs_kset; +extern struct attribute *sysaufs_si_attrs[]; +int sysaufs_si_init(struct au_sbinfo *sbinfo); +int __init sysaufs_init(void); +void sysaufs_fin(void); + +/* ---------------------------------------------------------------------- */ + +/* some people doesn't like to show a pointer in kernel */ +static inline unsigned long sysaufs_si_id(struct au_sbinfo *sbinfo) +{ + return sysaufs_si_mask ^ (unsigned long)sbinfo; +} + +#define SysaufsSiNamePrefix "si_" +#define SysaufsSiNameLen (sizeof(SysaufsSiNamePrefix) + 16) +static inline void sysaufs_name(struct au_sbinfo *sbinfo, char *name) +{ + snprintf(name, SysaufsSiNameLen, SysaufsSiNamePrefix "%lx", + sysaufs_si_id(sbinfo)); +} + +struct au_branch; +#ifdef CONFIG_SYSFS +/* sysfs.c */ +extern struct attribute_group *sysaufs_attr_group; + +int sysaufs_si_xi_path(struct seq_file *seq, struct super_block *sb); +ssize_t sysaufs_si_show(struct kobject *kobj, struct attribute *attr, + char *buf); +long au_brinfo_ioctl(struct file *file, unsigned long arg); +#ifdef CONFIG_COMPAT +long au_brinfo_compat_ioctl(struct file *file, unsigned long arg); +#endif + +void sysaufs_br_init(struct au_branch *br); +void sysaufs_brs_add(struct super_block *sb, aufs_bindex_t bindex); +void sysaufs_brs_del(struct super_block *sb, aufs_bindex_t bindex); + +#define sysaufs_brs_init() do {} while (0) + +#else +#define sysaufs_attr_group NULL + +AuStubInt0(sysaufs_si_xi_path, struct seq_file *seq, struct super_block *sb) +AuStub(ssize_t, sysaufs_si_show, return 0, struct kobject *kobj, + struct attribute *attr, char *buf) +AuStubVoid(sysaufs_br_init, struct au_branch *br) +AuStubVoid(sysaufs_brs_add, struct super_block *sb, aufs_bindex_t bindex) +AuStubVoid(sysaufs_brs_del, struct super_block *sb, aufs_bindex_t bindex) + +static inline void sysaufs_brs_init(void) +{ + sysaufs_brs = 0; +} + +#endif /* CONFIG_SYSFS */ + +#endif /* __KERNEL__ */ +#endif /* __SYSAUFS_H__ */ --- linux-azure-5.8-5.8.0.orig/fs/aufs/sysfs.c +++ linux-azure-5.8-5.8.0/fs/aufs/sysfs.c @@ -0,0 +1,374 @@ +// SPDX-License-Identifier: GPL-2.0 +/* + * Copyright (C) 2005-2020 Junjiro R. Okajima + * + * This program, aufs is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; either version 2 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + */ + +/* + * sysfs interface + */ + +#include +#include +#include "aufs.h" + +#ifdef CONFIG_AUFS_FS_MODULE +/* this entry violates the "one line per file" policy of sysfs */ +static ssize_t config_show(struct kobject *kobj, struct kobj_attribute *attr, + char *buf) +{ + ssize_t err; + static char *conf = +/* this file is generated at compiling */ +#include "conf.str" + ; + + err = snprintf(buf, PAGE_SIZE, conf); + if (unlikely(err >= PAGE_SIZE)) + err = -EFBIG; + return err; +} + +static struct kobj_attribute au_config_attr = __ATTR_RO(config); +#endif + +static struct attribute *au_attr[] = { +#ifdef CONFIG_AUFS_FS_MODULE + &au_config_attr.attr, +#endif + NULL, /* need to NULL terminate the list of attributes */ +}; + +static struct attribute_group sysaufs_attr_group_body = { + .attrs = au_attr +}; + +struct attribute_group *sysaufs_attr_group = &sysaufs_attr_group_body; + +/* ---------------------------------------------------------------------- */ + +int sysaufs_si_xi_path(struct seq_file *seq, struct super_block *sb) +{ + int err; + + SiMustAnyLock(sb); + + err = 0; + if (au_opt_test(au_mntflags(sb), XINO)) { + err = au_xino_path(seq, au_sbi(sb)->si_xib); + seq_putc(seq, '\n'); + } + return err; +} + +/* + * the lifetime of branch is independent from the entry under sysfs. + * sysfs handles the lifetime of the entry, and never call ->show() after it is + * unlinked. + */ +static int sysaufs_si_br(struct seq_file *seq, struct super_block *sb, + aufs_bindex_t bindex, int idx) +{ + int err; + struct path path; + struct dentry *root; + struct au_branch *br; + au_br_perm_str_t perm; + + AuDbg("b%d\n", bindex); + + err = 0; + root = sb->s_root; + di_read_lock_parent(root, !AuLock_IR); + br = au_sbr(sb, bindex); + + switch (idx) { + case AuBrSysfs_BR: + path.mnt = au_br_mnt(br); + path.dentry = au_h_dptr(root, bindex); + err = au_seq_path(seq, &path); + if (!err) { + au_optstr_br_perm(&perm, br->br_perm); + seq_printf(seq, "=%s\n", perm.a); + } + break; + case AuBrSysfs_BRID: + seq_printf(seq, "%d\n", br->br_id); + break; + } + di_read_unlock(root, !AuLock_IR); + if (unlikely(err || seq_has_overflowed(seq))) + err = -E2BIG; + + return err; +} + +/* ---------------------------------------------------------------------- */ + +static struct seq_file *au_seq(char *p, ssize_t len) +{ + struct seq_file *seq; + + seq = kzalloc(sizeof(*seq), GFP_NOFS); + if (seq) { + /* mutex_init(&seq.lock); */ + seq->buf = p; + seq->size = len; + return seq; /* success */ + } + + seq = ERR_PTR(-ENOMEM); + return seq; +} + +#define SysaufsBr_PREFIX "br" +#define SysaufsBrid_PREFIX "brid" + +/* todo: file size may exceed PAGE_SIZE */ +ssize_t sysaufs_si_show(struct kobject *kobj, struct attribute *attr, + char *buf) +{ + ssize_t err; + int idx; + long l; + aufs_bindex_t bbot; + struct au_sbinfo *sbinfo; + struct super_block *sb; + struct seq_file *seq; + char *name; + struct attribute **cattr; + + sbinfo = container_of(kobj, struct au_sbinfo, si_kobj); + sb = sbinfo->si_sb; + + /* + * prevent a race condition between sysfs and aufs. + * for instance, sysfs_file_read() calls sysfs_get_active_two() which + * prohibits maintaining the sysfs entries. + * hew we acquire read lock after sysfs_get_active_two(). + * on the other hand, the remount process may maintain the sysfs/aufs + * entries after acquiring write lock. + * it can cause a deadlock. + * simply we gave up processing read here. + */ + err = -EBUSY; + if (unlikely(!si_noflush_read_trylock(sb))) + goto out; + + seq = au_seq(buf, PAGE_SIZE); + err = PTR_ERR(seq); + if (IS_ERR(seq)) + goto out_unlock; + + name = (void *)attr->name; + cattr = sysaufs_si_attrs; + while (*cattr) { + if (!strcmp(name, (*cattr)->name)) { + err = container_of(*cattr, struct sysaufs_si_attr, attr) + ->show(seq, sb); + goto out_seq; + } + cattr++; + } + + if (!strncmp(name, SysaufsBrid_PREFIX, + sizeof(SysaufsBrid_PREFIX) - 1)) { + idx = AuBrSysfs_BRID; + name += sizeof(SysaufsBrid_PREFIX) - 1; + } else if (!strncmp(name, SysaufsBr_PREFIX, + sizeof(SysaufsBr_PREFIX) - 1)) { + idx = AuBrSysfs_BR; + name += sizeof(SysaufsBr_PREFIX) - 1; + } else + BUG(); + + err = kstrtol(name, 10, &l); + if (!err) { + bbot = au_sbbot(sb); + if (l <= bbot) + err = sysaufs_si_br(seq, sb, (aufs_bindex_t)l, idx); + else + err = -ENOENT; + } + +out_seq: + if (!err) { + err = seq->count; + /* sysfs limit */ + if (unlikely(err == PAGE_SIZE)) + err = -EFBIG; + } + au_kfree_rcu(seq); +out_unlock: + si_read_unlock(sb); +out: + return err; +} + +/* ---------------------------------------------------------------------- */ + +static int au_brinfo(struct super_block *sb, union aufs_brinfo __user *arg) +{ + int err; + int16_t brid; + aufs_bindex_t bindex, bbot; + size_t sz; + char *buf; + struct seq_file *seq; + struct au_branch *br; + + si_read_lock(sb, AuLock_FLUSH); + bbot = au_sbbot(sb); + err = bbot + 1; + if (!arg) + goto out; + + err = -ENOMEM; + buf = (void *)__get_free_page(GFP_NOFS); + if (unlikely(!buf)) + goto out; + + seq = au_seq(buf, PAGE_SIZE); + err = PTR_ERR(seq); + if (IS_ERR(seq)) + goto out_buf; + + sz = sizeof(*arg) - offsetof(union aufs_brinfo, path); + for (bindex = 0; bindex <= bbot; bindex++, arg++) { + /* VERIFY_WRITE */ + err = !access_ok(arg, sizeof(*arg)); + if (unlikely(err)) + break; + + br = au_sbr(sb, bindex); + brid = br->br_id; + BUILD_BUG_ON(sizeof(brid) != sizeof(arg->id)); + err = __put_user(brid, &arg->id); + if (unlikely(err)) + break; + + BUILD_BUG_ON(sizeof(br->br_perm) != sizeof(arg->perm)); + err = __put_user(br->br_perm, &arg->perm); + if (unlikely(err)) + break; + + err = au_seq_path(seq, &br->br_path); + if (unlikely(err)) + break; + seq_putc(seq, '\0'); + if (!seq_has_overflowed(seq)) { + err = copy_to_user(arg->path, seq->buf, seq->count); + seq->count = 0; + if (unlikely(err)) + break; + } else { + err = -E2BIG; + goto out_seq; + } + } + if (unlikely(err)) + err = -EFAULT; + +out_seq: + au_kfree_rcu(seq); +out_buf: + free_page((unsigned long)buf); +out: + si_read_unlock(sb); + return err; +} + +long au_brinfo_ioctl(struct file *file, unsigned long arg) +{ + return au_brinfo(file->f_path.dentry->d_sb, (void __user *)arg); +} + +#ifdef CONFIG_COMPAT +long au_brinfo_compat_ioctl(struct file *file, unsigned long arg) +{ + return au_brinfo(file->f_path.dentry->d_sb, compat_ptr(arg)); +} +#endif + +/* ---------------------------------------------------------------------- */ + +void sysaufs_br_init(struct au_branch *br) +{ + int i; + struct au_brsysfs *br_sysfs; + struct attribute *attr; + + br_sysfs = br->br_sysfs; + for (i = 0; i < ARRAY_SIZE(br->br_sysfs); i++) { + attr = &br_sysfs->attr; + sysfs_attr_init(attr); + attr->name = br_sysfs->name; + attr->mode = 0444; + br_sysfs++; + } +} + +void sysaufs_brs_del(struct super_block *sb, aufs_bindex_t bindex) +{ + struct au_branch *br; + struct kobject *kobj; + struct au_brsysfs *br_sysfs; + int i; + aufs_bindex_t bbot; + + if (!sysaufs_brs) + return; + + kobj = &au_sbi(sb)->si_kobj; + bbot = au_sbbot(sb); + for (; bindex <= bbot; bindex++) { + br = au_sbr(sb, bindex); + br_sysfs = br->br_sysfs; + for (i = 0; i < ARRAY_SIZE(br->br_sysfs); i++) { + sysfs_remove_file(kobj, &br_sysfs->attr); + br_sysfs++; + } + } +} + +void sysaufs_brs_add(struct super_block *sb, aufs_bindex_t bindex) +{ + int err, i; + aufs_bindex_t bbot; + struct kobject *kobj; + struct au_branch *br; + struct au_brsysfs *br_sysfs; + + if (!sysaufs_brs) + return; + + kobj = &au_sbi(sb)->si_kobj; + bbot = au_sbbot(sb); + for (; bindex <= bbot; bindex++) { + br = au_sbr(sb, bindex); + br_sysfs = br->br_sysfs; + snprintf(br_sysfs[AuBrSysfs_BR].name, sizeof(br_sysfs->name), + SysaufsBr_PREFIX "%d", bindex); + snprintf(br_sysfs[AuBrSysfs_BRID].name, sizeof(br_sysfs->name), + SysaufsBrid_PREFIX "%d", bindex); + for (i = 0; i < ARRAY_SIZE(br->br_sysfs); i++) { + err = sysfs_create_file(kobj, &br_sysfs->attr); + if (unlikely(err)) + pr_warn("failed %s under sysfs(%d)\n", + br_sysfs->name, err); + br_sysfs++; + } + } +} --- linux-azure-5.8-5.8.0.orig/fs/aufs/sysrq.c +++ linux-azure-5.8-5.8.0/fs/aufs/sysrq.c @@ -0,0 +1,149 @@ +// SPDX-License-Identifier: GPL-2.0 +/* + * Copyright (C) 2005-2020 Junjiro R. Okajima + * + * This program, aufs is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; either version 2 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + */ + +/* + * magic sysrq handler + */ + +/* #include */ +#include +#include "aufs.h" + +/* ---------------------------------------------------------------------- */ + +static void sysrq_sb(struct super_block *sb) +{ + char *plevel; + struct au_sbinfo *sbinfo; + struct file *file; + struct hlist_bl_head *files; + struct hlist_bl_node *pos; + struct au_finfo *finfo; + struct inode *i; + + plevel = au_plevel; + au_plevel = KERN_WARNING; + + /* since we define pr_fmt, call printk directly */ +#define pr(str) printk(KERN_WARNING AUFS_NAME ": " str) + + sbinfo = au_sbi(sb); + printk(KERN_WARNING "si=%lx\n", sysaufs_si_id(sbinfo)); + pr("superblock\n"); + au_dpri_sb(sb); + +#if 0 /* reserved */ + do { + int err, i, j, ndentry; + struct au_dcsub_pages dpages; + struct au_dpage *dpage; + + err = au_dpages_init(&dpages, GFP_ATOMIC); + if (unlikely(err)) + break; + err = au_dcsub_pages(&dpages, sb->s_root, NULL, NULL); + if (!err) + for (i = 0; i < dpages.ndpage; i++) { + dpage = dpages.dpages + i; + ndentry = dpage->ndentry; + for (j = 0; j < ndentry; j++) + au_dpri_dentry(dpage->dentries[j]); + } + au_dpages_free(&dpages); + } while (0); +#endif + + pr("isolated inode\n"); + spin_lock(&sb->s_inode_list_lock); + list_for_each_entry(i, &sb->s_inodes, i_sb_list) { + spin_lock(&i->i_lock); + if (hlist_empty(&i->i_dentry)) + au_dpri_inode(i); + spin_unlock(&i->i_lock); + } + spin_unlock(&sb->s_inode_list_lock); + + pr("files\n"); + files = &au_sbi(sb)->si_files; + hlist_bl_lock(files); + hlist_bl_for_each_entry(finfo, pos, files, fi_hlist) { + umode_t mode; + + file = finfo->fi_file; + mode = file_inode(file)->i_mode; + if (!special_file(mode)) + au_dpri_file(file); + } + hlist_bl_unlock(files); + pr("done\n"); + +#undef pr + au_plevel = plevel; +} + +/* ---------------------------------------------------------------------- */ + +/* module parameter */ +static char *aufs_sysrq_key = "a"; +module_param_named(sysrq, aufs_sysrq_key, charp, 0444); +MODULE_PARM_DESC(sysrq, "MagicSysRq key for " AUFS_NAME); + +static void au_sysrq(int key __maybe_unused) +{ + struct au_sbinfo *sbinfo; + struct hlist_bl_node *pos; + + lockdep_off(); + au_sbilist_lock(); + hlist_bl_for_each_entry(sbinfo, pos, &au_sbilist, si_list) + sysrq_sb(sbinfo->si_sb); + au_sbilist_unlock(); + lockdep_on(); +} + +static struct sysrq_key_op au_sysrq_op = { + .handler = au_sysrq, + .help_msg = "Aufs", + .action_msg = "Aufs", + .enable_mask = SYSRQ_ENABLE_DUMP +}; + +/* ---------------------------------------------------------------------- */ + +int __init au_sysrq_init(void) +{ + int err; + char key; + + err = -1; + key = *aufs_sysrq_key; + if ('a' <= key && key <= 'z') + err = register_sysrq_key(key, &au_sysrq_op); + if (unlikely(err)) + pr_err("err %d, sysrq=%c\n", err, key); + return err; +} + +void au_sysrq_fin(void) +{ + int err; + + err = unregister_sysrq_key(*aufs_sysrq_key, &au_sysrq_op); + if (unlikely(err)) + pr_err("err %d (ignored)\n", err); +} --- linux-azure-5.8-5.8.0.orig/fs/aufs/vdir.c +++ linux-azure-5.8-5.8.0/fs/aufs/vdir.c @@ -0,0 +1,896 @@ +// SPDX-License-Identifier: GPL-2.0 +/* + * Copyright (C) 2005-2020 Junjiro R. Okajima + * + * This program, aufs is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; either version 2 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + */ + +/* + * virtual or vertical directory + */ + +#include +#include "aufs.h" + +static unsigned int calc_size(int nlen) +{ + return ALIGN(sizeof(struct au_vdir_de) + nlen, sizeof(ino_t)); +} + +static int set_deblk_end(union au_vdir_deblk_p *p, + union au_vdir_deblk_p *deblk_end) +{ + if (calc_size(0) <= deblk_end->deblk - p->deblk) { + p->de->de_str.len = 0; + /* smp_mb(); */ + return 0; + } + return -1; /* error */ +} + +/* returns true or false */ +static int is_deblk_end(union au_vdir_deblk_p *p, + union au_vdir_deblk_p *deblk_end) +{ + if (calc_size(0) <= deblk_end->deblk - p->deblk) + return !p->de->de_str.len; + return 1; +} + +static unsigned char *last_deblk(struct au_vdir *vdir) +{ + return vdir->vd_deblk[vdir->vd_nblk - 1]; +} + +/* ---------------------------------------------------------------------- */ + +/* estimate the appropriate size for name hash table */ +unsigned int au_rdhash_est(loff_t sz) +{ + unsigned int n; + + n = UINT_MAX; + sz >>= 10; + if (sz < n) + n = sz; + if (sz < AUFS_RDHASH_DEF) + n = AUFS_RDHASH_DEF; + /* pr_info("n %u\n", n); */ + return n; +} + +/* + * the allocated memory has to be freed by + * au_nhash_wh_free() or au_nhash_de_free(). + */ +int au_nhash_alloc(struct au_nhash *nhash, unsigned int num_hash, gfp_t gfp) +{ + struct hlist_head *head; + unsigned int u; + size_t sz; + + sz = sizeof(*nhash->nh_head) * num_hash; + head = kmalloc(sz, gfp); + if (head) { + nhash->nh_num = num_hash; + nhash->nh_head = head; + for (u = 0; u < num_hash; u++) + INIT_HLIST_HEAD(head++); + return 0; /* success */ + } + + return -ENOMEM; +} + +static void nhash_count(struct hlist_head *head) +{ +#if 0 /* debugging */ + unsigned long n; + struct hlist_node *pos; + + n = 0; + hlist_for_each(pos, head) + n++; + pr_info("%lu\n", n); +#endif +} + +static void au_nhash_wh_do_free(struct hlist_head *head) +{ + struct au_vdir_wh *pos; + struct hlist_node *node; + + hlist_for_each_entry_safe(pos, node, head, wh_hash) + au_kfree_rcu(pos); +} + +static void au_nhash_de_do_free(struct hlist_head *head) +{ + struct au_vdir_dehstr *pos; + struct hlist_node *node; + + hlist_for_each_entry_safe(pos, node, head, hash) + au_cache_free_vdir_dehstr(pos); +} + +static void au_nhash_do_free(struct au_nhash *nhash, + void (*free)(struct hlist_head *head)) +{ + unsigned int n; + struct hlist_head *head; + + n = nhash->nh_num; + if (!n) + return; + + head = nhash->nh_head; + while (n-- > 0) { + nhash_count(head); + free(head++); + } + au_kfree_try_rcu(nhash->nh_head); +} + +void au_nhash_wh_free(struct au_nhash *whlist) +{ + au_nhash_do_free(whlist, au_nhash_wh_do_free); +} + +static void au_nhash_de_free(struct au_nhash *delist) +{ + au_nhash_do_free(delist, au_nhash_de_do_free); +} + +/* ---------------------------------------------------------------------- */ + +int au_nhash_test_longer_wh(struct au_nhash *whlist, aufs_bindex_t btgt, + int limit) +{ + int num; + unsigned int u, n; + struct hlist_head *head; + struct au_vdir_wh *pos; + + num = 0; + n = whlist->nh_num; + head = whlist->nh_head; + for (u = 0; u < n; u++, head++) + hlist_for_each_entry(pos, head, wh_hash) + if (pos->wh_bindex == btgt && ++num > limit) + return 1; + return 0; +} + +static struct hlist_head *au_name_hash(struct au_nhash *nhash, + unsigned char *name, + unsigned int len) +{ + unsigned int v; + /* const unsigned int magic_bit = 12; */ + + AuDebugOn(!nhash->nh_num || !nhash->nh_head); + + v = 0; + if (len > 8) + len = 8; + while (len--) + v += *name++; + /* v = hash_long(v, magic_bit); */ + v %= nhash->nh_num; + return nhash->nh_head + v; +} + +static int au_nhash_test_name(struct au_vdir_destr *str, const char *name, + int nlen) +{ + return str->len == nlen && !memcmp(str->name, name, nlen); +} + +/* returns found or not */ +int au_nhash_test_known_wh(struct au_nhash *whlist, char *name, int nlen) +{ + struct hlist_head *head; + struct au_vdir_wh *pos; + struct au_vdir_destr *str; + + head = au_name_hash(whlist, name, nlen); + hlist_for_each_entry(pos, head, wh_hash) { + str = &pos->wh_str; + AuDbg("%.*s\n", str->len, str->name); + if (au_nhash_test_name(str, name, nlen)) + return 1; + } + return 0; +} + +/* returns found(true) or not */ +static int test_known(struct au_nhash *delist, char *name, int nlen) +{ + struct hlist_head *head; + struct au_vdir_dehstr *pos; + struct au_vdir_destr *str; + + head = au_name_hash(delist, name, nlen); + hlist_for_each_entry(pos, head, hash) { + str = pos->str; + AuDbg("%.*s\n", str->len, str->name); + if (au_nhash_test_name(str, name, nlen)) + return 1; + } + return 0; +} + +static void au_shwh_init_wh(struct au_vdir_wh *wh, ino_t ino, + unsigned char d_type) +{ +#ifdef CONFIG_AUFS_SHWH + wh->wh_ino = ino; + wh->wh_type = d_type; +#endif +} + +/* ---------------------------------------------------------------------- */ + +int au_nhash_append_wh(struct au_nhash *whlist, char *name, int nlen, ino_t ino, + unsigned int d_type, aufs_bindex_t bindex, + unsigned char shwh) +{ + int err; + struct au_vdir_destr *str; + struct au_vdir_wh *wh; + + AuDbg("%.*s\n", nlen, name); + AuDebugOn(!whlist->nh_num || !whlist->nh_head); + + err = -ENOMEM; + wh = kmalloc(sizeof(*wh) + nlen, GFP_NOFS); + if (unlikely(!wh)) + goto out; + + err = 0; + wh->wh_bindex = bindex; + if (shwh) + au_shwh_init_wh(wh, ino, d_type); + str = &wh->wh_str; + str->len = nlen; + memcpy(str->name, name, nlen); + hlist_add_head(&wh->wh_hash, au_name_hash(whlist, name, nlen)); + /* smp_mb(); */ + +out: + return err; +} + +static int append_deblk(struct au_vdir *vdir) +{ + int err; + unsigned long ul; + const unsigned int deblk_sz = vdir->vd_deblk_sz; + union au_vdir_deblk_p p, deblk_end; + unsigned char **o; + + err = -ENOMEM; + o = au_krealloc(vdir->vd_deblk, sizeof(*o) * (vdir->vd_nblk + 1), + GFP_NOFS, /*may_shrink*/0); + if (unlikely(!o)) + goto out; + + vdir->vd_deblk = o; + p.deblk = kmalloc(deblk_sz, GFP_NOFS); + if (p.deblk) { + ul = vdir->vd_nblk++; + vdir->vd_deblk[ul] = p.deblk; + vdir->vd_last.ul = ul; + vdir->vd_last.p.deblk = p.deblk; + deblk_end.deblk = p.deblk + deblk_sz; + err = set_deblk_end(&p, &deblk_end); + } + +out: + return err; +} + +static int append_de(struct au_vdir *vdir, char *name, int nlen, ino_t ino, + unsigned int d_type, struct au_nhash *delist) +{ + int err; + unsigned int sz; + const unsigned int deblk_sz = vdir->vd_deblk_sz; + union au_vdir_deblk_p p, *room, deblk_end; + struct au_vdir_dehstr *dehstr; + + p.deblk = last_deblk(vdir); + deblk_end.deblk = p.deblk + deblk_sz; + room = &vdir->vd_last.p; + AuDebugOn(room->deblk < p.deblk || deblk_end.deblk <= room->deblk + || !is_deblk_end(room, &deblk_end)); + + sz = calc_size(nlen); + if (unlikely(sz > deblk_end.deblk - room->deblk)) { + err = append_deblk(vdir); + if (unlikely(err)) + goto out; + + p.deblk = last_deblk(vdir); + deblk_end.deblk = p.deblk + deblk_sz; + /* smp_mb(); */ + AuDebugOn(room->deblk != p.deblk); + } + + err = -ENOMEM; + dehstr = au_cache_alloc_vdir_dehstr(); + if (unlikely(!dehstr)) + goto out; + + dehstr->str = &room->de->de_str; + hlist_add_head(&dehstr->hash, au_name_hash(delist, name, nlen)); + room->de->de_ino = ino; + room->de->de_type = d_type; + room->de->de_str.len = nlen; + memcpy(room->de->de_str.name, name, nlen); + + err = 0; + room->deblk += sz; + if (unlikely(set_deblk_end(room, &deblk_end))) + err = append_deblk(vdir); + /* smp_mb(); */ + +out: + return err; +} + +/* ---------------------------------------------------------------------- */ + +void au_vdir_free(struct au_vdir *vdir) +{ + unsigned char **deblk; + + deblk = vdir->vd_deblk; + while (vdir->vd_nblk--) + au_kfree_try_rcu(*deblk++); + au_kfree_try_rcu(vdir->vd_deblk); + au_cache_free_vdir(vdir); +} + +static struct au_vdir *alloc_vdir(struct file *file) +{ + struct au_vdir *vdir; + struct super_block *sb; + int err; + + sb = file->f_path.dentry->d_sb; + SiMustAnyLock(sb); + + err = -ENOMEM; + vdir = au_cache_alloc_vdir(); + if (unlikely(!vdir)) + goto out; + + vdir->vd_deblk = kzalloc(sizeof(*vdir->vd_deblk), GFP_NOFS); + if (unlikely(!vdir->vd_deblk)) + goto out_free; + + vdir->vd_deblk_sz = au_sbi(sb)->si_rdblk; + if (!vdir->vd_deblk_sz) { + /* estimate the appropriate size for deblk */ + vdir->vd_deblk_sz = au_dir_size(file, /*dentry*/NULL); + /* pr_info("vd_deblk_sz %u\n", vdir->vd_deblk_sz); */ + } + vdir->vd_nblk = 0; + vdir->vd_version = 0; + vdir->vd_jiffy = 0; + err = append_deblk(vdir); + if (!err) + return vdir; /* success */ + + au_kfree_try_rcu(vdir->vd_deblk); + +out_free: + au_cache_free_vdir(vdir); +out: + vdir = ERR_PTR(err); + return vdir; +} + +static int reinit_vdir(struct au_vdir *vdir) +{ + int err; + union au_vdir_deblk_p p, deblk_end; + + while (vdir->vd_nblk > 1) { + au_kfree_try_rcu(vdir->vd_deblk[vdir->vd_nblk - 1]); + /* vdir->vd_deblk[vdir->vd_nblk - 1] = NULL; */ + vdir->vd_nblk--; + } + p.deblk = vdir->vd_deblk[0]; + deblk_end.deblk = p.deblk + vdir->vd_deblk_sz; + err = set_deblk_end(&p, &deblk_end); + /* keep vd_dblk_sz */ + vdir->vd_last.ul = 0; + vdir->vd_last.p.deblk = vdir->vd_deblk[0]; + vdir->vd_version = 0; + vdir->vd_jiffy = 0; + /* smp_mb(); */ + return err; +} + +/* ---------------------------------------------------------------------- */ + +#define AuFillVdir_CALLED 1 +#define AuFillVdir_WHABLE (1 << 1) +#define AuFillVdir_SHWH (1 << 2) +#define au_ftest_fillvdir(flags, name) ((flags) & AuFillVdir_##name) +#define au_fset_fillvdir(flags, name) \ + do { (flags) |= AuFillVdir_##name; } while (0) +#define au_fclr_fillvdir(flags, name) \ + do { (flags) &= ~AuFillVdir_##name; } while (0) + +#ifndef CONFIG_AUFS_SHWH +#undef AuFillVdir_SHWH +#define AuFillVdir_SHWH 0 +#endif + +struct fillvdir_arg { + struct dir_context ctx; + struct file *file; + struct au_vdir *vdir; + struct au_nhash delist; + struct au_nhash whlist; + aufs_bindex_t bindex; + unsigned int flags; + int err; +}; + +static int fillvdir(struct dir_context *ctx, const char *__name, int nlen, + loff_t offset __maybe_unused, u64 h_ino, + unsigned int d_type) +{ + struct fillvdir_arg *arg = container_of(ctx, struct fillvdir_arg, ctx); + char *name = (void *)__name; + struct super_block *sb; + ino_t ino; + const unsigned char shwh = !!au_ftest_fillvdir(arg->flags, SHWH); + + arg->err = 0; + sb = arg->file->f_path.dentry->d_sb; + au_fset_fillvdir(arg->flags, CALLED); + /* smp_mb(); */ + if (nlen <= AUFS_WH_PFX_LEN + || memcmp(name, AUFS_WH_PFX, AUFS_WH_PFX_LEN)) { + if (test_known(&arg->delist, name, nlen) + || au_nhash_test_known_wh(&arg->whlist, name, nlen)) + goto out; /* already exists or whiteouted */ + + arg->err = au_ino(sb, arg->bindex, h_ino, d_type, &ino); + if (!arg->err) { + if (unlikely(nlen > AUFS_MAX_NAMELEN)) + d_type = DT_UNKNOWN; + arg->err = append_de(arg->vdir, name, nlen, ino, + d_type, &arg->delist); + } + } else if (au_ftest_fillvdir(arg->flags, WHABLE)) { + name += AUFS_WH_PFX_LEN; + nlen -= AUFS_WH_PFX_LEN; + if (au_nhash_test_known_wh(&arg->whlist, name, nlen)) + goto out; /* already whiteouted */ + + ino = 0; /* just to suppress a warning */ + if (shwh) + arg->err = au_wh_ino(sb, arg->bindex, h_ino, d_type, + &ino); + if (!arg->err) { + if (nlen <= AUFS_MAX_NAMELEN + AUFS_WH_PFX_LEN) + d_type = DT_UNKNOWN; + arg->err = au_nhash_append_wh + (&arg->whlist, name, nlen, ino, d_type, + arg->bindex, shwh); + } + } + +out: + if (!arg->err) + arg->vdir->vd_jiffy = jiffies; + /* smp_mb(); */ + AuTraceErr(arg->err); + return arg->err; +} + +static int au_handle_shwh(struct super_block *sb, struct au_vdir *vdir, + struct au_nhash *whlist, struct au_nhash *delist) +{ +#ifdef CONFIG_AUFS_SHWH + int err; + unsigned int nh, u; + struct hlist_head *head; + struct au_vdir_wh *pos; + struct hlist_node *n; + char *p, *o; + struct au_vdir_destr *destr; + + AuDebugOn(!au_opt_test(au_mntflags(sb), SHWH)); + + err = -ENOMEM; + o = p = (void *)__get_free_page(GFP_NOFS); + if (unlikely(!p)) + goto out; + + err = 0; + nh = whlist->nh_num; + memcpy(p, AUFS_WH_PFX, AUFS_WH_PFX_LEN); + p += AUFS_WH_PFX_LEN; + for (u = 0; u < nh; u++) { + head = whlist->nh_head + u; + hlist_for_each_entry_safe(pos, n, head, wh_hash) { + destr = &pos->wh_str; + memcpy(p, destr->name, destr->len); + err = append_de(vdir, o, destr->len + AUFS_WH_PFX_LEN, + pos->wh_ino, pos->wh_type, delist); + if (unlikely(err)) + break; + } + } + + free_page((unsigned long)o); + +out: + AuTraceErr(err); + return err; +#else + return 0; +#endif +} + +static int au_do_read_vdir(struct fillvdir_arg *arg) +{ + int err; + unsigned int rdhash; + loff_t offset; + aufs_bindex_t bbot, bindex, btop; + unsigned char shwh; + struct file *hf, *file; + struct super_block *sb; + + file = arg->file; + sb = file->f_path.dentry->d_sb; + SiMustAnyLock(sb); + + rdhash = au_sbi(sb)->si_rdhash; + if (!rdhash) + rdhash = au_rdhash_est(au_dir_size(file, /*dentry*/NULL)); + err = au_nhash_alloc(&arg->delist, rdhash, GFP_NOFS); + if (unlikely(err)) + goto out; + err = au_nhash_alloc(&arg->whlist, rdhash, GFP_NOFS); + if (unlikely(err)) + goto out_delist; + + err = 0; + arg->flags = 0; + shwh = 0; + if (au_opt_test(au_mntflags(sb), SHWH)) { + shwh = 1; + au_fset_fillvdir(arg->flags, SHWH); + } + btop = au_fbtop(file); + bbot = au_fbbot_dir(file); + for (bindex = btop; !err && bindex <= bbot; bindex++) { + hf = au_hf_dir(file, bindex); + if (!hf) + continue; + + offset = vfsub_llseek(hf, 0, SEEK_SET); + err = offset; + if (unlikely(offset)) + break; + + arg->bindex = bindex; + au_fclr_fillvdir(arg->flags, WHABLE); + if (shwh + || (bindex != bbot + && au_br_whable(au_sbr_perm(sb, bindex)))) + au_fset_fillvdir(arg->flags, WHABLE); + do { + arg->err = 0; + au_fclr_fillvdir(arg->flags, CALLED); + /* smp_mb(); */ + err = vfsub_iterate_dir(hf, &arg->ctx); + if (err >= 0) + err = arg->err; + } while (!err && au_ftest_fillvdir(arg->flags, CALLED)); + + /* + * dir_relax() may be good for concurrency, but aufs should not + * use it since it will cause a lockdep problem. + */ + } + + if (!err && shwh) + err = au_handle_shwh(sb, arg->vdir, &arg->whlist, &arg->delist); + + au_nhash_wh_free(&arg->whlist); + +out_delist: + au_nhash_de_free(&arg->delist); +out: + return err; +} + +static int read_vdir(struct file *file, int may_read) +{ + int err; + unsigned long expire; + unsigned char do_read; + struct fillvdir_arg arg = { + .ctx = { + .actor = fillvdir + } + }; + struct inode *inode; + struct au_vdir *vdir, *allocated; + + err = 0; + inode = file_inode(file); + IMustLock(inode); + IiMustWriteLock(inode); + SiMustAnyLock(inode->i_sb); + + allocated = NULL; + do_read = 0; + expire = au_sbi(inode->i_sb)->si_rdcache; + vdir = au_ivdir(inode); + if (!vdir) { + do_read = 1; + vdir = alloc_vdir(file); + err = PTR_ERR(vdir); + if (IS_ERR(vdir)) + goto out; + err = 0; + allocated = vdir; + } else if (may_read + && (!inode_eq_iversion(inode, vdir->vd_version) + || time_after(jiffies, vdir->vd_jiffy + expire))) { + do_read = 1; + err = reinit_vdir(vdir); + if (unlikely(err)) + goto out; + } + + if (!do_read) + return 0; /* success */ + + arg.file = file; + arg.vdir = vdir; + err = au_do_read_vdir(&arg); + if (!err) { + /* file->f_pos = 0; */ /* todo: ctx->pos? */ + vdir->vd_version = inode_query_iversion(inode); + vdir->vd_last.ul = 0; + vdir->vd_last.p.deblk = vdir->vd_deblk[0]; + if (allocated) + au_set_ivdir(inode, allocated); + } else if (allocated) + au_vdir_free(allocated); + +out: + return err; +} + +static int copy_vdir(struct au_vdir *tgt, struct au_vdir *src) +{ + int err, rerr; + unsigned long ul, n; + const unsigned int deblk_sz = src->vd_deblk_sz; + + AuDebugOn(tgt->vd_nblk != 1); + + err = -ENOMEM; + if (tgt->vd_nblk < src->vd_nblk) { + unsigned char **p; + + p = au_krealloc(tgt->vd_deblk, sizeof(*p) * src->vd_nblk, + GFP_NOFS, /*may_shrink*/0); + if (unlikely(!p)) + goto out; + tgt->vd_deblk = p; + } + + if (tgt->vd_deblk_sz != deblk_sz) { + unsigned char *p; + + tgt->vd_deblk_sz = deblk_sz; + p = au_krealloc(tgt->vd_deblk[0], deblk_sz, GFP_NOFS, + /*may_shrink*/1); + if (unlikely(!p)) + goto out; + tgt->vd_deblk[0] = p; + } + memcpy(tgt->vd_deblk[0], src->vd_deblk[0], deblk_sz); + tgt->vd_version = src->vd_version; + tgt->vd_jiffy = src->vd_jiffy; + + n = src->vd_nblk; + for (ul = 1; ul < n; ul++) { + tgt->vd_deblk[ul] = kmemdup(src->vd_deblk[ul], deblk_sz, + GFP_NOFS); + if (unlikely(!tgt->vd_deblk[ul])) + goto out; + tgt->vd_nblk++; + } + tgt->vd_nblk = n; + tgt->vd_last.ul = tgt->vd_last.ul; + tgt->vd_last.p.deblk = tgt->vd_deblk[tgt->vd_last.ul]; + tgt->vd_last.p.deblk += src->vd_last.p.deblk + - src->vd_deblk[src->vd_last.ul]; + /* smp_mb(); */ + return 0; /* success */ + +out: + rerr = reinit_vdir(tgt); + BUG_ON(rerr); + return err; +} + +int au_vdir_init(struct file *file) +{ + int err; + struct inode *inode; + struct au_vdir *vdir_cache, *allocated; + + /* test file->f_pos here instead of ctx->pos */ + err = read_vdir(file, !file->f_pos); + if (unlikely(err)) + goto out; + + allocated = NULL; + vdir_cache = au_fvdir_cache(file); + if (!vdir_cache) { + vdir_cache = alloc_vdir(file); + err = PTR_ERR(vdir_cache); + if (IS_ERR(vdir_cache)) + goto out; + allocated = vdir_cache; + } else if (!file->f_pos && vdir_cache->vd_version != file->f_version) { + /* test file->f_pos here instead of ctx->pos */ + err = reinit_vdir(vdir_cache); + if (unlikely(err)) + goto out; + } else + return 0; /* success */ + + inode = file_inode(file); + err = copy_vdir(vdir_cache, au_ivdir(inode)); + if (!err) { + file->f_version = inode_query_iversion(inode); + if (allocated) + au_set_fvdir_cache(file, allocated); + } else if (allocated) + au_vdir_free(allocated); + +out: + return err; +} + +static loff_t calc_offset(struct au_vdir *vdir) +{ + loff_t offset; + union au_vdir_deblk_p p; + + p.deblk = vdir->vd_deblk[vdir->vd_last.ul]; + offset = vdir->vd_last.p.deblk - p.deblk; + offset += vdir->vd_deblk_sz * vdir->vd_last.ul; + return offset; +} + +/* returns true or false */ +static int seek_vdir(struct file *file, struct dir_context *ctx) +{ + int valid; + unsigned int deblk_sz; + unsigned long ul, n; + loff_t offset; + union au_vdir_deblk_p p, deblk_end; + struct au_vdir *vdir_cache; + + valid = 1; + vdir_cache = au_fvdir_cache(file); + offset = calc_offset(vdir_cache); + AuDbg("offset %lld\n", offset); + if (ctx->pos == offset) + goto out; + + vdir_cache->vd_last.ul = 0; + vdir_cache->vd_last.p.deblk = vdir_cache->vd_deblk[0]; + if (!ctx->pos) + goto out; + + valid = 0; + deblk_sz = vdir_cache->vd_deblk_sz; + ul = div64_u64(ctx->pos, deblk_sz); + AuDbg("ul %lu\n", ul); + if (ul >= vdir_cache->vd_nblk) + goto out; + + n = vdir_cache->vd_nblk; + for (; ul < n; ul++) { + p.deblk = vdir_cache->vd_deblk[ul]; + deblk_end.deblk = p.deblk + deblk_sz; + offset = ul; + offset *= deblk_sz; + while (!is_deblk_end(&p, &deblk_end) && offset < ctx->pos) { + unsigned int l; + + l = calc_size(p.de->de_str.len); + offset += l; + p.deblk += l; + } + if (!is_deblk_end(&p, &deblk_end)) { + valid = 1; + vdir_cache->vd_last.ul = ul; + vdir_cache->vd_last.p = p; + break; + } + } + +out: + /* smp_mb(); */ + if (!valid) + AuDbg("valid %d\n", !valid); + return valid; +} + +int au_vdir_fill_de(struct file *file, struct dir_context *ctx) +{ + unsigned int l, deblk_sz; + union au_vdir_deblk_p deblk_end; + struct au_vdir *vdir_cache; + struct au_vdir_de *de; + + if (!seek_vdir(file, ctx)) + return 0; + + vdir_cache = au_fvdir_cache(file); + deblk_sz = vdir_cache->vd_deblk_sz; + while (1) { + deblk_end.deblk = vdir_cache->vd_deblk[vdir_cache->vd_last.ul]; + deblk_end.deblk += deblk_sz; + while (!is_deblk_end(&vdir_cache->vd_last.p, &deblk_end)) { + de = vdir_cache->vd_last.p.de; + AuDbg("%.*s, off%lld, i%lu, dt%d\n", + de->de_str.len, de->de_str.name, ctx->pos, + (unsigned long)de->de_ino, de->de_type); + if (unlikely(!dir_emit(ctx, de->de_str.name, + de->de_str.len, de->de_ino, + de->de_type))) { + /* todo: ignore the error caused by udba? */ + /* return err; */ + return 0; + } + + l = calc_size(de->de_str.len); + vdir_cache->vd_last.p.deblk += l; + ctx->pos += l; + } + if (vdir_cache->vd_last.ul < vdir_cache->vd_nblk - 1) { + vdir_cache->vd_last.ul++; + vdir_cache->vd_last.p.deblk + = vdir_cache->vd_deblk[vdir_cache->vd_last.ul]; + ctx->pos = deblk_sz * vdir_cache->vd_last.ul; + continue; + } + break; + } + + /* smp_mb(); */ + return 0; +} --- linux-azure-5.8-5.8.0.orig/fs/aufs/vfsub.c +++ linux-azure-5.8-5.8.0/fs/aufs/vfsub.c @@ -0,0 +1,895 @@ +// SPDX-License-Identifier: GPL-2.0 +/* + * Copyright (C) 2005-2020 Junjiro R. Okajima + * + * This program, aufs is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; either version 2 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + */ + +/* + * sub-routines for VFS + */ + +#include +#include +#include +#include +#include +#include "aufs.h" + +#ifdef CONFIG_AUFS_BR_FUSE +int vfsub_test_mntns(struct vfsmount *mnt, struct super_block *h_sb) +{ + if (!au_test_fuse(h_sb) || !au_userns) + return 0; + + return is_current_mnt_ns(mnt) ? 0 : -EACCES; +} +#endif + +int vfsub_sync_filesystem(struct super_block *h_sb, int wait) +{ + int err; + + lockdep_off(); + down_read(&h_sb->s_umount); + err = __sync_filesystem(h_sb, wait); + up_read(&h_sb->s_umount); + lockdep_on(); + + return err; +} + +/* ---------------------------------------------------------------------- */ + +int vfsub_update_h_iattr(struct path *h_path, int *did) +{ + int err; + struct kstat st; + struct super_block *h_sb; + + /* for remote fs, leave work for its getattr or d_revalidate */ + /* for bad i_attr fs, handle them in aufs_getattr() */ + /* still some fs may acquire i_mutex. we need to skip them */ + err = 0; + if (!did) + did = &err; + h_sb = h_path->dentry->d_sb; + *did = (!au_test_fs_remote(h_sb) && au_test_fs_refresh_iattr(h_sb)); + if (*did) + err = vfsub_getattr(h_path, &st); + + return err; +} + +/* ---------------------------------------------------------------------- */ + +struct file *vfsub_dentry_open(struct path *path, int flags) +{ + return dentry_open(path, flags /* | __FMODE_NONOTIFY */, + current_cred()); +} + +struct file *vfsub_filp_open(const char *path, int oflags, int mode) +{ + struct file *file; + + lockdep_off(); + file = filp_open(path, + oflags /* | __FMODE_NONOTIFY */, + mode); + lockdep_on(); + if (IS_ERR(file)) + goto out; + vfsub_update_h_iattr(&file->f_path, /*did*/NULL); /*ignore*/ + +out: + return file; +} + +/* + * Ideally this function should call VFS:do_last() in order to keep all its + * checkings. But it is very hard for aufs to regenerate several VFS internal + * structure such as nameidata. This is a second (or third) best approach. + * cf. linux/fs/namei.c:do_last(), lookup_open() and atomic_open(). + */ +int vfsub_atomic_open(struct inode *dir, struct dentry *dentry, + struct vfsub_aopen_args *args) +{ + int err; + struct au_branch *br = args->br; + struct file *file = args->file; + /* copied from linux/fs/namei.c:atomic_open() */ + struct dentry *const DENTRY_NOT_SET = (void *)-1UL; + + IMustLock(dir); + AuDebugOn(!dir->i_op->atomic_open); + + err = au_br_test_oflag(args->open_flag, br); + if (unlikely(err)) + goto out; + + au_lcnt_inc(&br->br_nfiles); + file->f_path.dentry = DENTRY_NOT_SET; + file->f_path.mnt = au_br_mnt(br); + AuDbg("%ps\n", dir->i_op->atomic_open); + err = dir->i_op->atomic_open(dir, dentry, file, args->open_flag, + args->create_mode); + if (unlikely(err < 0)) { + au_lcnt_dec(&br->br_nfiles); + goto out; + } + + /* temporary workaround for nfsv4 branch */ + if (au_test_nfs(dir->i_sb)) + nfs_mark_for_revalidate(dir); + + if (file->f_mode & FMODE_CREATED) + fsnotify_create(dir, dentry); + if (!(file->f_mode & FMODE_OPENED)) { + au_lcnt_dec(&br->br_nfiles); + goto out; + } + + /* todo: call VFS:may_open() here */ + /* todo: ima_file_check() too? */ + if (!err && (args->open_flag & __FMODE_EXEC)) + err = deny_write_access(file); + if (!err) + fsnotify_open(file); + else + au_lcnt_dec(&br->br_nfiles); + /* note that the file is created and still opened */ + +out: + return err; +} + +int vfsub_kern_path(const char *name, unsigned int flags, struct path *path) +{ + int err; + + err = kern_path(name, flags, path); + if (!err && d_is_positive(path->dentry)) + vfsub_update_h_iattr(path, /*did*/NULL); /*ignore*/ + return err; +} + +struct dentry *vfsub_lookup_one_len_unlocked(const char *name, + struct dentry *parent, int len) +{ + struct path path = { + .mnt = NULL + }; + + path.dentry = lookup_one_len_unlocked(name, parent, len); + if (IS_ERR(path.dentry)) + goto out; + if (d_is_positive(path.dentry)) + vfsub_update_h_iattr(&path, /*did*/NULL); /*ignore*/ + +out: + AuTraceErrPtr(path.dentry); + return path.dentry; +} + +struct dentry *vfsub_lookup_one_len(const char *name, struct dentry *parent, + int len) +{ + struct path path = { + .mnt = NULL + }; + + /* VFS checks it too, but by WARN_ON_ONCE() */ + IMustLock(d_inode(parent)); + + path.dentry = lookup_one_len(name, parent, len); + if (IS_ERR(path.dentry)) + goto out; + if (d_is_positive(path.dentry)) + vfsub_update_h_iattr(&path, /*did*/NULL); /*ignore*/ + +out: + AuTraceErrPtr(path.dentry); + return path.dentry; +} + +void vfsub_call_lkup_one(void *args) +{ + struct vfsub_lkup_one_args *a = args; + *a->errp = vfsub_lkup_one(a->name, a->parent); +} + +/* ---------------------------------------------------------------------- */ + +struct dentry *vfsub_lock_rename(struct dentry *d1, struct au_hinode *hdir1, + struct dentry *d2, struct au_hinode *hdir2) +{ + struct dentry *d; + + lockdep_off(); + d = lock_rename(d1, d2); + lockdep_on(); + au_hn_suspend(hdir1); + if (hdir1 != hdir2) + au_hn_suspend(hdir2); + + return d; +} + +void vfsub_unlock_rename(struct dentry *d1, struct au_hinode *hdir1, + struct dentry *d2, struct au_hinode *hdir2) +{ + au_hn_resume(hdir1); + if (hdir1 != hdir2) + au_hn_resume(hdir2); + lockdep_off(); + unlock_rename(d1, d2); + lockdep_on(); +} + +/* ---------------------------------------------------------------------- */ + +int vfsub_create(struct inode *dir, struct path *path, int mode, bool want_excl) +{ + int err; + struct dentry *d; + + IMustLock(dir); + + d = path->dentry; + path->dentry = d->d_parent; + err = security_path_mknod(path, d, mode, 0); + path->dentry = d; + if (unlikely(err)) + goto out; + + lockdep_off(); + err = vfs_create(dir, path->dentry, mode, want_excl); + lockdep_on(); + if (!err) { + struct path tmp = *path; + int did; + + vfsub_update_h_iattr(&tmp, &did); + if (did) { + tmp.dentry = path->dentry->d_parent; + vfsub_update_h_iattr(&tmp, /*did*/NULL); + } + /*ignore*/ + } + +out: + return err; +} + +int vfsub_symlink(struct inode *dir, struct path *path, const char *symname) +{ + int err; + struct dentry *d; + + IMustLock(dir); + + d = path->dentry; + path->dentry = d->d_parent; + err = security_path_symlink(path, d, symname); + path->dentry = d; + if (unlikely(err)) + goto out; + + lockdep_off(); + err = vfs_symlink(dir, path->dentry, symname); + lockdep_on(); + if (!err) { + struct path tmp = *path; + int did; + + vfsub_update_h_iattr(&tmp, &did); + if (did) { + tmp.dentry = path->dentry->d_parent; + vfsub_update_h_iattr(&tmp, /*did*/NULL); + } + /*ignore*/ + } + +out: + return err; +} + +int vfsub_mknod(struct inode *dir, struct path *path, int mode, dev_t dev) +{ + int err; + struct dentry *d; + + IMustLock(dir); + + d = path->dentry; + path->dentry = d->d_parent; + err = security_path_mknod(path, d, mode, new_encode_dev(dev)); + path->dentry = d; + if (unlikely(err)) + goto out; + + lockdep_off(); + err = vfs_mknod(dir, path->dentry, mode, dev); + lockdep_on(); + if (!err) { + struct path tmp = *path; + int did; + + vfsub_update_h_iattr(&tmp, &did); + if (did) { + tmp.dentry = path->dentry->d_parent; + vfsub_update_h_iattr(&tmp, /*did*/NULL); + } + /*ignore*/ + } + +out: + return err; +} + +static int au_test_nlink(struct inode *inode) +{ + const unsigned int link_max = UINT_MAX >> 1; /* rough margin */ + + if (!au_test_fs_no_limit_nlink(inode->i_sb) + || inode->i_nlink < link_max) + return 0; + return -EMLINK; +} + +int vfsub_link(struct dentry *src_dentry, struct inode *dir, struct path *path, + struct inode **delegated_inode) +{ + int err; + struct dentry *d; + + IMustLock(dir); + + err = au_test_nlink(d_inode(src_dentry)); + if (unlikely(err)) + return err; + + /* we don't call may_linkat() */ + d = path->dentry; + path->dentry = d->d_parent; + err = security_path_link(src_dentry, path, d); + path->dentry = d; + if (unlikely(err)) + goto out; + + lockdep_off(); + err = vfs_link(src_dentry, dir, path->dentry, delegated_inode); + lockdep_on(); + if (!err) { + struct path tmp = *path; + int did; + + /* fuse has different memory inode for the same inumber */ + vfsub_update_h_iattr(&tmp, &did); + if (did) { + tmp.dentry = path->dentry->d_parent; + vfsub_update_h_iattr(&tmp, /*did*/NULL); + tmp.dentry = src_dentry; + vfsub_update_h_iattr(&tmp, /*did*/NULL); + } + /*ignore*/ + } + +out: + return err; +} + +int vfsub_rename(struct inode *src_dir, struct dentry *src_dentry, + struct inode *dir, struct path *path, + struct inode **delegated_inode, unsigned int flags) +{ + int err; + struct path tmp = { + .mnt = path->mnt + }; + struct dentry *d; + + IMustLock(dir); + IMustLock(src_dir); + + d = path->dentry; + path->dentry = d->d_parent; + tmp.dentry = src_dentry->d_parent; + err = security_path_rename(&tmp, src_dentry, path, d, /*flags*/0); + path->dentry = d; + if (unlikely(err)) + goto out; + + lockdep_off(); + err = vfs_rename(src_dir, src_dentry, dir, path->dentry, + delegated_inode, flags); + lockdep_on(); + if (!err) { + int did; + + tmp.dentry = d->d_parent; + vfsub_update_h_iattr(&tmp, &did); + if (did) { + tmp.dentry = src_dentry; + vfsub_update_h_iattr(&tmp, /*did*/NULL); + tmp.dentry = src_dentry->d_parent; + vfsub_update_h_iattr(&tmp, /*did*/NULL); + } + /*ignore*/ + } + +out: + return err; +} + +int vfsub_mkdir(struct inode *dir, struct path *path, int mode) +{ + int err; + struct dentry *d; + + IMustLock(dir); + + d = path->dentry; + path->dentry = d->d_parent; + err = security_path_mkdir(path, d, mode); + path->dentry = d; + if (unlikely(err)) + goto out; + + lockdep_off(); + err = vfs_mkdir(dir, path->dentry, mode); + lockdep_on(); + if (!err) { + struct path tmp = *path; + int did; + + vfsub_update_h_iattr(&tmp, &did); + if (did) { + tmp.dentry = path->dentry->d_parent; + vfsub_update_h_iattr(&tmp, /*did*/NULL); + } + /*ignore*/ + } + +out: + return err; +} + +int vfsub_rmdir(struct inode *dir, struct path *path) +{ + int err; + struct dentry *d; + + IMustLock(dir); + + d = path->dentry; + path->dentry = d->d_parent; + err = security_path_rmdir(path, d); + path->dentry = d; + if (unlikely(err)) + goto out; + + lockdep_off(); + err = vfs_rmdir(dir, path->dentry); + lockdep_on(); + if (!err) { + struct path tmp = { + .dentry = path->dentry->d_parent, + .mnt = path->mnt + }; + + vfsub_update_h_iattr(&tmp, /*did*/NULL); /*ignore*/ + } + +out: + return err; +} + +/* ---------------------------------------------------------------------- */ + +/* todo: support mmap_sem? */ +ssize_t vfsub_read_u(struct file *file, char __user *ubuf, size_t count, + loff_t *ppos) +{ + ssize_t err; + + lockdep_off(); + err = vfs_read(file, ubuf, count, ppos); + lockdep_on(); + if (err >= 0) + vfsub_update_h_iattr(&file->f_path, /*did*/NULL); /*ignore*/ + return err; +} + +/* todo: kernel_read()? */ +ssize_t vfsub_read_k(struct file *file, void *kbuf, size_t count, + loff_t *ppos) +{ + ssize_t err; + mm_segment_t oldfs; + union { + void *k; + char __user *u; + } buf; + + buf.k = kbuf; + oldfs = get_fs(); + set_fs(KERNEL_DS); + err = vfsub_read_u(file, buf.u, count, ppos); + set_fs(oldfs); + return err; +} + +ssize_t vfsub_write_u(struct file *file, const char __user *ubuf, size_t count, + loff_t *ppos) +{ + ssize_t err; + + lockdep_off(); + err = vfs_write(file, ubuf, count, ppos); + lockdep_on(); + if (err >= 0) + vfsub_update_h_iattr(&file->f_path, /*did*/NULL); /*ignore*/ + return err; +} + +ssize_t vfsub_write_k(struct file *file, void *kbuf, size_t count, loff_t *ppos) +{ + ssize_t err; + mm_segment_t oldfs; + union { + void *k; + const char __user *u; + } buf; + + buf.k = kbuf; + oldfs = get_fs(); + set_fs(KERNEL_DS); + err = vfsub_write_u(file, buf.u, count, ppos); + set_fs(oldfs); + return err; +} + +int vfsub_flush(struct file *file, fl_owner_t id) +{ + int err; + + err = 0; + if (file->f_op->flush) { + if (!au_test_nfs(file->f_path.dentry->d_sb)) + err = file->f_op->flush(file, id); + else { + lockdep_off(); + err = file->f_op->flush(file, id); + lockdep_on(); + } + if (!err) + vfsub_update_h_iattr(&file->f_path, /*did*/NULL); + /*ignore*/ + } + return err; +} + +int vfsub_iterate_dir(struct file *file, struct dir_context *ctx) +{ + int err; + + AuDbg("%pD, ctx{%ps, %llu}\n", file, ctx->actor, ctx->pos); + + lockdep_off(); + err = iterate_dir(file, ctx); + lockdep_on(); + if (err >= 0) + vfsub_update_h_iattr(&file->f_path, /*did*/NULL); /*ignore*/ + + return err; +} + +long vfsub_splice_to(struct file *in, loff_t *ppos, + struct pipe_inode_info *pipe, size_t len, + unsigned int flags) +{ + long err; + + lockdep_off(); + err = do_splice_to(in, ppos, pipe, len, flags); + lockdep_on(); + file_accessed(in); + if (err >= 0) + vfsub_update_h_iattr(&in->f_path, /*did*/NULL); /*ignore*/ + return err; +} + +long vfsub_splice_from(struct pipe_inode_info *pipe, struct file *out, + loff_t *ppos, size_t len, unsigned int flags) +{ + long err; + + lockdep_off(); + err = do_splice_from(pipe, out, ppos, len, flags); + lockdep_on(); + if (err >= 0) + vfsub_update_h_iattr(&out->f_path, /*did*/NULL); /*ignore*/ + return err; +} + +int vfsub_fsync(struct file *file, struct path *path, int datasync) +{ + int err; + + /* file can be NULL */ + lockdep_off(); + err = vfs_fsync(file, datasync); + lockdep_on(); + if (!err) { + if (!path) { + AuDebugOn(!file); + path = &file->f_path; + } + vfsub_update_h_iattr(path, /*did*/NULL); /*ignore*/ + } + return err; +} + +/* cf. open.c:do_sys_truncate() and do_sys_ftruncate() */ +int vfsub_trunc(struct path *h_path, loff_t length, unsigned int attr, + struct file *h_file) +{ + int err; + struct inode *h_inode; + struct super_block *h_sb; + + if (!h_file) { + err = vfsub_truncate(h_path, length); + goto out; + } + + h_inode = d_inode(h_path->dentry); + h_sb = h_inode->i_sb; + lockdep_off(); + sb_start_write(h_sb); + lockdep_on(); + err = locks_verify_truncate(h_inode, h_file, length); + if (!err) + err = security_path_truncate(h_path); + if (!err) { + lockdep_off(); + err = do_truncate(h_path->dentry, length, attr, h_file); + lockdep_on(); + } + lockdep_off(); + sb_end_write(h_sb); + lockdep_on(); + +out: + return err; +} + +/* ---------------------------------------------------------------------- */ + +struct au_vfsub_mkdir_args { + int *errp; + struct inode *dir; + struct path *path; + int mode; +}; + +static void au_call_vfsub_mkdir(void *args) +{ + struct au_vfsub_mkdir_args *a = args; + *a->errp = vfsub_mkdir(a->dir, a->path, a->mode); +} + +int vfsub_sio_mkdir(struct inode *dir, struct path *path, int mode) +{ + int err, do_sio, wkq_err; + + do_sio = au_test_h_perm_sio(dir, MAY_EXEC | MAY_WRITE); + if (!do_sio) { + lockdep_off(); + err = vfsub_mkdir(dir, path, mode); + lockdep_on(); + } else { + struct au_vfsub_mkdir_args args = { + .errp = &err, + .dir = dir, + .path = path, + .mode = mode + }; + wkq_err = au_wkq_wait(au_call_vfsub_mkdir, &args); + if (unlikely(wkq_err)) + err = wkq_err; + } + + return err; +} + +struct au_vfsub_rmdir_args { + int *errp; + struct inode *dir; + struct path *path; +}; + +static void au_call_vfsub_rmdir(void *args) +{ + struct au_vfsub_rmdir_args *a = args; + *a->errp = vfsub_rmdir(a->dir, a->path); +} + +int vfsub_sio_rmdir(struct inode *dir, struct path *path) +{ + int err, do_sio, wkq_err; + + do_sio = au_test_h_perm_sio(dir, MAY_EXEC | MAY_WRITE); + if (!do_sio) { + lockdep_off(); + err = vfsub_rmdir(dir, path); + lockdep_on(); + } else { + struct au_vfsub_rmdir_args args = { + .errp = &err, + .dir = dir, + .path = path + }; + wkq_err = au_wkq_wait(au_call_vfsub_rmdir, &args); + if (unlikely(wkq_err)) + err = wkq_err; + } + + return err; +} + +/* ---------------------------------------------------------------------- */ + +struct notify_change_args { + int *errp; + struct path *path; + struct iattr *ia; + struct inode **delegated_inode; +}; + +static void call_notify_change(void *args) +{ + struct notify_change_args *a = args; + struct inode *h_inode; + + h_inode = d_inode(a->path->dentry); + IMustLock(h_inode); + + *a->errp = -EPERM; + if (!IS_IMMUTABLE(h_inode) && !IS_APPEND(h_inode)) { + lockdep_off(); + *a->errp = notify_change(a->path->dentry, a->ia, + a->delegated_inode); + lockdep_on(); + if (!*a->errp) + vfsub_update_h_iattr(a->path, /*did*/NULL); /*ignore*/ + } + AuTraceErr(*a->errp); +} + +int vfsub_notify_change(struct path *path, struct iattr *ia, + struct inode **delegated_inode) +{ + int err; + struct notify_change_args args = { + .errp = &err, + .path = path, + .ia = ia, + .delegated_inode = delegated_inode + }; + + call_notify_change(&args); + + return err; +} + +int vfsub_sio_notify_change(struct path *path, struct iattr *ia, + struct inode **delegated_inode) +{ + int err, wkq_err; + struct notify_change_args args = { + .errp = &err, + .path = path, + .ia = ia, + .delegated_inode = delegated_inode + }; + + wkq_err = au_wkq_wait(call_notify_change, &args); + if (unlikely(wkq_err)) + err = wkq_err; + + return err; +} + +/* ---------------------------------------------------------------------- */ + +struct unlink_args { + int *errp; + struct inode *dir; + struct path *path; + struct inode **delegated_inode; +}; + +static void call_unlink(void *args) +{ + struct unlink_args *a = args; + struct dentry *d = a->path->dentry; + struct inode *h_inode; + const int stop_sillyrename = (au_test_nfs(d->d_sb) + && au_dcount(d) == 1); + + IMustLock(a->dir); + + a->path->dentry = d->d_parent; + *a->errp = security_path_unlink(a->path, d); + a->path->dentry = d; + if (unlikely(*a->errp)) + return; + + if (!stop_sillyrename) + dget(d); + h_inode = NULL; + if (d_is_positive(d)) { + h_inode = d_inode(d); + ihold(h_inode); + } + + lockdep_off(); + *a->errp = vfs_unlink(a->dir, d, a->delegated_inode); + lockdep_on(); + if (!*a->errp) { + struct path tmp = { + .dentry = d->d_parent, + .mnt = a->path->mnt + }; + vfsub_update_h_iattr(&tmp, /*did*/NULL); /*ignore*/ + } + + if (!stop_sillyrename) + dput(d); + if (h_inode) + iput(h_inode); + + AuTraceErr(*a->errp); +} + +/* + * @dir: must be locked. + * @dentry: target dentry. + */ +int vfsub_unlink(struct inode *dir, struct path *path, + struct inode **delegated_inode, int force) +{ + int err; + struct unlink_args args = { + .errp = &err, + .dir = dir, + .path = path, + .delegated_inode = delegated_inode + }; + + if (!force) + call_unlink(&args); + else { + int wkq_err; + + wkq_err = au_wkq_wait(call_unlink, &args); + if (unlikely(wkq_err)) + err = wkq_err; + } + + return err; +} --- linux-azure-5.8-5.8.0.orig/fs/aufs/vfsub.h +++ linux-azure-5.8-5.8.0/fs/aufs/vfsub.h @@ -0,0 +1,354 @@ +/* SPDX-License-Identifier: GPL-2.0 */ +/* + * Copyright (C) 2005-2020 Junjiro R. Okajima + * + * This program, aufs is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; either version 2 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + */ + +/* + * sub-routines for VFS + */ + +#ifndef __AUFS_VFSUB_H__ +#define __AUFS_VFSUB_H__ + +#ifdef __KERNEL__ + +#include +#include +#include +#include +#include "debug.h" + +/* copied from linux/fs/internal.h */ +/* todo: BAD approach!! */ +extern void __mnt_drop_write(struct vfsmount *); +extern struct file *alloc_empty_file(int, const struct cred *); + +/* ---------------------------------------------------------------------- */ + +/* lock subclass for lower inode */ +/* default MAX_LOCKDEP_SUBCLASSES(8) is not enough */ +/* reduce? gave up. */ +enum { + AuLsc_I_Begin = I_MUTEX_PARENT2, /* 5 */ + AuLsc_I_PARENT, /* lower inode, parent first */ + AuLsc_I_PARENT2, /* copyup dirs */ + AuLsc_I_PARENT3, /* copyup wh */ + AuLsc_I_CHILD, + AuLsc_I_CHILD2, + AuLsc_I_End +}; + +/* to debug easier, do not make them inlined functions */ +#define MtxMustLock(mtx) AuDebugOn(!mutex_is_locked(mtx)) +#define IMustLock(i) AuDebugOn(!inode_is_locked(i)) + +/* ---------------------------------------------------------------------- */ + +static inline void vfsub_drop_nlink(struct inode *inode) +{ + AuDebugOn(!inode->i_nlink); + drop_nlink(inode); +} + +static inline void vfsub_dead_dir(struct inode *inode) +{ + AuDebugOn(!S_ISDIR(inode->i_mode)); + inode->i_flags |= S_DEAD; + clear_nlink(inode); +} + +static inline int vfsub_native_ro(struct inode *inode) +{ + return sb_rdonly(inode->i_sb) + || IS_RDONLY(inode) + /* || IS_APPEND(inode) */ + || IS_IMMUTABLE(inode); +} + +#ifdef CONFIG_AUFS_BR_FUSE +int vfsub_test_mntns(struct vfsmount *mnt, struct super_block *h_sb); +#else +AuStubInt0(vfsub_test_mntns, struct vfsmount *mnt, struct super_block *h_sb); +#endif + +int vfsub_sync_filesystem(struct super_block *h_sb, int wait); + +/* ---------------------------------------------------------------------- */ + +int vfsub_update_h_iattr(struct path *h_path, int *did); +struct file *vfsub_dentry_open(struct path *path, int flags); +struct file *vfsub_filp_open(const char *path, int oflags, int mode); +struct au_branch; +struct vfsub_aopen_args { + struct file *file; + unsigned int open_flag; + umode_t create_mode; + struct au_branch *br; +}; +int vfsub_atomic_open(struct inode *dir, struct dentry *dentry, + struct vfsub_aopen_args *args); +int vfsub_kern_path(const char *name, unsigned int flags, struct path *path); + +struct dentry *vfsub_lookup_one_len_unlocked(const char *name, + struct dentry *parent, int len); +struct dentry *vfsub_lookup_one_len(const char *name, struct dentry *parent, + int len); + +struct vfsub_lkup_one_args { + struct dentry **errp; + struct qstr *name; + struct dentry *parent; +}; + +static inline struct dentry *vfsub_lkup_one(struct qstr *name, + struct dentry *parent) +{ + return vfsub_lookup_one_len(name->name, parent, name->len); +} + +void vfsub_call_lkup_one(void *args); + +/* ---------------------------------------------------------------------- */ + +static inline int vfsub_mnt_want_write(struct vfsmount *mnt) +{ + int err; + + lockdep_off(); + err = mnt_want_write(mnt); + lockdep_on(); + return err; +} + +static inline void vfsub_mnt_drop_write(struct vfsmount *mnt) +{ + lockdep_off(); + mnt_drop_write(mnt); + lockdep_on(); +} + +#if 0 /* reserved */ +static inline void vfsub_mnt_drop_write_file(struct file *file) +{ + lockdep_off(); + mnt_drop_write_file(file); + lockdep_on(); +} +#endif + +/* ---------------------------------------------------------------------- */ + +struct au_hinode; +struct dentry *vfsub_lock_rename(struct dentry *d1, struct au_hinode *hdir1, + struct dentry *d2, struct au_hinode *hdir2); +void vfsub_unlock_rename(struct dentry *d1, struct au_hinode *hdir1, + struct dentry *d2, struct au_hinode *hdir2); + +int vfsub_create(struct inode *dir, struct path *path, int mode, + bool want_excl); +int vfsub_symlink(struct inode *dir, struct path *path, + const char *symname); +int vfsub_mknod(struct inode *dir, struct path *path, int mode, dev_t dev); +int vfsub_link(struct dentry *src_dentry, struct inode *dir, + struct path *path, struct inode **delegated_inode); +int vfsub_rename(struct inode *src_hdir, struct dentry *src_dentry, + struct inode *hdir, struct path *path, + struct inode **delegated_inode, unsigned int flags); +int vfsub_mkdir(struct inode *dir, struct path *path, int mode); +int vfsub_rmdir(struct inode *dir, struct path *path); + +/* ---------------------------------------------------------------------- */ + +ssize_t vfsub_read_u(struct file *file, char __user *ubuf, size_t count, + loff_t *ppos); +ssize_t vfsub_read_k(struct file *file, void *kbuf, size_t count, + loff_t *ppos); +ssize_t vfsub_write_u(struct file *file, const char __user *ubuf, size_t count, + loff_t *ppos); +ssize_t vfsub_write_k(struct file *file, void *kbuf, size_t count, + loff_t *ppos); +int vfsub_flush(struct file *file, fl_owner_t id); +int vfsub_iterate_dir(struct file *file, struct dir_context *ctx); + +static inline loff_t vfsub_f_size_read(struct file *file) +{ + return i_size_read(file_inode(file)); +} + +static inline unsigned int vfsub_file_flags(struct file *file) +{ + unsigned int flags; + + spin_lock(&file->f_lock); + flags = file->f_flags; + spin_unlock(&file->f_lock); + + return flags; +} + +static inline int vfsub_file_execed(struct file *file) +{ + /* todo: direct access f_flags */ + return !!(vfsub_file_flags(file) & __FMODE_EXEC); +} + +#if 0 /* reserved */ +static inline void vfsub_file_accessed(struct file *h_file) +{ + file_accessed(h_file); + vfsub_update_h_iattr(&h_file->f_path, /*did*/NULL); /*ignore*/ +} +#endif + +#if 0 /* reserved */ +static inline void vfsub_touch_atime(struct vfsmount *h_mnt, + struct dentry *h_dentry) +{ + struct path h_path = { + .dentry = h_dentry, + .mnt = h_mnt + }; + touch_atime(&h_path); + vfsub_update_h_iattr(&h_path, /*did*/NULL); /*ignore*/ +} +#endif + +static inline int vfsub_update_time(struct inode *h_inode, + struct timespec64 *ts, int flags) +{ + return update_time(h_inode, ts, flags); + /* no vfsub_update_h_iattr() since we don't have struct path */ +} + +#ifdef CONFIG_FS_POSIX_ACL +static inline int vfsub_acl_chmod(struct inode *h_inode, umode_t h_mode) +{ + int err; + + err = posix_acl_chmod(h_inode, h_mode); + if (err == -EOPNOTSUPP) + err = 0; + return err; +} +#else +AuStubInt0(vfsub_acl_chmod, struct inode *h_inode, umode_t h_mode); +#endif + +long vfsub_splice_to(struct file *in, loff_t *ppos, + struct pipe_inode_info *pipe, size_t len, + unsigned int flags); +long vfsub_splice_from(struct pipe_inode_info *pipe, struct file *out, + loff_t *ppos, size_t len, unsigned int flags); + +static inline long vfsub_truncate(struct path *path, loff_t length) +{ + long err; + + lockdep_off(); + err = vfs_truncate(path, length); + lockdep_on(); + return err; +} + +int vfsub_trunc(struct path *h_path, loff_t length, unsigned int attr, + struct file *h_file); +int vfsub_fsync(struct file *file, struct path *path, int datasync); + +/* + * re-use branch fs's ioctl(FICLONE) while aufs itself doesn't support such + * ioctl. + */ +static inline loff_t vfsub_clone_file_range(struct file *src, struct file *dst, + loff_t len) +{ + loff_t err; + + lockdep_off(); + err = vfs_clone_file_range(src, 0, dst, 0, len, /*remap_flags*/0); + lockdep_on(); + + return err; +} + +/* copy_file_range(2) is a systemcall */ +static inline ssize_t vfsub_copy_file_range(struct file *src, loff_t src_pos, + struct file *dst, loff_t dst_pos, + size_t len, unsigned int flags) +{ + ssize_t ssz; + + lockdep_off(); + ssz = vfs_copy_file_range(src, src_pos, dst, dst_pos, len, flags); + lockdep_on(); + + return ssz; +} + +/* ---------------------------------------------------------------------- */ + +static inline loff_t vfsub_llseek(struct file *file, loff_t offset, int origin) +{ + loff_t err; + + lockdep_off(); + err = vfs_llseek(file, offset, origin); + lockdep_on(); + return err; +} + +/* ---------------------------------------------------------------------- */ + +int vfsub_sio_mkdir(struct inode *dir, struct path *path, int mode); +int vfsub_sio_rmdir(struct inode *dir, struct path *path); +int vfsub_sio_notify_change(struct path *path, struct iattr *ia, + struct inode **delegated_inode); +int vfsub_notify_change(struct path *path, struct iattr *ia, + struct inode **delegated_inode); +int vfsub_unlink(struct inode *dir, struct path *path, + struct inode **delegated_inode, int force); + +static inline int vfsub_getattr(const struct path *path, struct kstat *st) +{ + return vfs_getattr(path, st, STATX_BASIC_STATS, AT_STATX_SYNC_AS_STAT); +} + +/* ---------------------------------------------------------------------- */ + +static inline int vfsub_setxattr(struct dentry *dentry, const char *name, + const void *value, size_t size, int flags) +{ + int err; + + lockdep_off(); + err = vfs_setxattr(dentry, name, value, size, flags); + lockdep_on(); + + return err; +} + +static inline int vfsub_removexattr(struct dentry *dentry, const char *name) +{ + int err; + + lockdep_off(); + err = vfs_removexattr(dentry, name); + lockdep_on(); + + return err; +} + +#endif /* __KERNEL__ */ +#endif /* __AUFS_VFSUB_H__ */ --- linux-azure-5.8-5.8.0.orig/fs/aufs/wbr_policy.c +++ linux-azure-5.8-5.8.0/fs/aufs/wbr_policy.c @@ -0,0 +1,830 @@ +// SPDX-License-Identifier: GPL-2.0 +/* + * Copyright (C) 2005-2020 Junjiro R. Okajima + * + * This program, aufs is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; either version 2 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + */ + +/* + * policies for selecting one among multiple writable branches + */ + +#include +#include "aufs.h" + +/* subset of cpup_attr() */ +static noinline_for_stack +int au_cpdown_attr(struct path *h_path, struct dentry *h_src) +{ + int err, sbits; + struct iattr ia; + struct inode *h_isrc; + + h_isrc = d_inode(h_src); + ia.ia_valid = ATTR_FORCE | ATTR_MODE | ATTR_UID | ATTR_GID; + ia.ia_mode = h_isrc->i_mode; + ia.ia_uid = h_isrc->i_uid; + ia.ia_gid = h_isrc->i_gid; + sbits = !!(ia.ia_mode & (S_ISUID | S_ISGID)); + au_cpup_attr_flags(d_inode(h_path->dentry), h_isrc->i_flags); + /* no delegation since it is just created */ + err = vfsub_sio_notify_change(h_path, &ia, /*delegated*/NULL); + + /* is this nfs only? */ + if (!err && sbits && au_test_nfs(h_path->dentry->d_sb)) { + ia.ia_valid = ATTR_FORCE | ATTR_MODE; + ia.ia_mode = h_isrc->i_mode; + err = vfsub_sio_notify_change(h_path, &ia, /*delegated*/NULL); + } + + return err; +} + +#define AuCpdown_PARENT_OPQ 1 +#define AuCpdown_WHED (1 << 1) +#define AuCpdown_MADE_DIR (1 << 2) +#define AuCpdown_DIROPQ (1 << 3) +#define au_ftest_cpdown(flags, name) ((flags) & AuCpdown_##name) +#define au_fset_cpdown(flags, name) \ + do { (flags) |= AuCpdown_##name; } while (0) +#define au_fclr_cpdown(flags, name) \ + do { (flags) &= ~AuCpdown_##name; } while (0) + +static int au_cpdown_dir_opq(struct dentry *dentry, aufs_bindex_t bdst, + unsigned int *flags) +{ + int err; + struct dentry *opq_dentry; + + opq_dentry = au_diropq_create(dentry, bdst); + err = PTR_ERR(opq_dentry); + if (IS_ERR(opq_dentry)) + goto out; + dput(opq_dentry); + au_fset_cpdown(*flags, DIROPQ); + +out: + return err; +} + +static int au_cpdown_dir_wh(struct dentry *dentry, struct dentry *h_parent, + struct inode *dir, aufs_bindex_t bdst) +{ + int err; + struct path h_path; + struct au_branch *br; + + br = au_sbr(dentry->d_sb, bdst); + h_path.dentry = au_wh_lkup(h_parent, &dentry->d_name, br); + err = PTR_ERR(h_path.dentry); + if (IS_ERR(h_path.dentry)) + goto out; + + err = 0; + if (d_is_positive(h_path.dentry)) { + h_path.mnt = au_br_mnt(br); + err = au_wh_unlink_dentry(au_h_iptr(dir, bdst), &h_path, + dentry); + } + dput(h_path.dentry); + +out: + return err; +} + +static int au_cpdown_dir(struct dentry *dentry, aufs_bindex_t bdst, + struct au_pin *pin, + struct dentry *h_parent, void *arg) +{ + int err, rerr; + aufs_bindex_t bopq, btop; + struct path h_path; + struct dentry *parent; + struct inode *h_dir, *h_inode, *inode, *dir; + unsigned int *flags = arg; + + btop = au_dbtop(dentry); + /* dentry is di-locked */ + parent = dget_parent(dentry); + dir = d_inode(parent); + h_dir = d_inode(h_parent); + AuDebugOn(h_dir != au_h_iptr(dir, bdst)); + IMustLock(h_dir); + + err = au_lkup_neg(dentry, bdst, /*wh*/0); + if (unlikely(err < 0)) + goto out; + h_path.dentry = au_h_dptr(dentry, bdst); + h_path.mnt = au_sbr_mnt(dentry->d_sb, bdst); + err = vfsub_sio_mkdir(au_h_iptr(dir, bdst), &h_path, 0755); + if (unlikely(err)) + goto out_put; + au_fset_cpdown(*flags, MADE_DIR); + + bopq = au_dbdiropq(dentry); + au_fclr_cpdown(*flags, WHED); + au_fclr_cpdown(*flags, DIROPQ); + if (au_dbwh(dentry) == bdst) + au_fset_cpdown(*flags, WHED); + if (!au_ftest_cpdown(*flags, PARENT_OPQ) && bopq <= bdst) + au_fset_cpdown(*flags, PARENT_OPQ); + h_inode = d_inode(h_path.dentry); + inode_lock_nested(h_inode, AuLsc_I_CHILD); + if (au_ftest_cpdown(*flags, WHED)) { + err = au_cpdown_dir_opq(dentry, bdst, flags); + if (unlikely(err)) { + inode_unlock(h_inode); + goto out_dir; + } + } + + err = au_cpdown_attr(&h_path, au_h_dptr(dentry, btop)); + inode_unlock(h_inode); + if (unlikely(err)) + goto out_opq; + + if (au_ftest_cpdown(*flags, WHED)) { + err = au_cpdown_dir_wh(dentry, h_parent, dir, bdst); + if (unlikely(err)) + goto out_opq; + } + + inode = d_inode(dentry); + if (au_ibbot(inode) < bdst) + au_set_ibbot(inode, bdst); + au_set_h_iptr(inode, bdst, au_igrab(h_inode), + au_hi_flags(inode, /*isdir*/1)); + au_fhsm_wrote(dentry->d_sb, bdst, /*force*/0); + goto out; /* success */ + + /* revert */ +out_opq: + if (au_ftest_cpdown(*flags, DIROPQ)) { + inode_lock_nested(h_inode, AuLsc_I_CHILD); + rerr = au_diropq_remove(dentry, bdst); + inode_unlock(h_inode); + if (unlikely(rerr)) { + AuIOErr("failed removing diropq for %pd b%d (%d)\n", + dentry, bdst, rerr); + err = -EIO; + goto out; + } + } +out_dir: + if (au_ftest_cpdown(*flags, MADE_DIR)) { + rerr = vfsub_sio_rmdir(au_h_iptr(dir, bdst), &h_path); + if (unlikely(rerr)) { + AuIOErr("failed removing %pd b%d (%d)\n", + dentry, bdst, rerr); + err = -EIO; + } + } +out_put: + au_set_h_dptr(dentry, bdst, NULL); + if (au_dbbot(dentry) == bdst) + au_update_dbbot(dentry); +out: + dput(parent); + return err; +} + +int au_cpdown_dirs(struct dentry *dentry, aufs_bindex_t bdst) +{ + int err; + unsigned int flags; + + flags = 0; + err = au_cp_dirs(dentry, bdst, au_cpdown_dir, &flags); + + return err; +} + +/* ---------------------------------------------------------------------- */ + +/* policies for create */ + +int au_wbr_nonopq(struct dentry *dentry, aufs_bindex_t bindex) +{ + int err, i, j, ndentry; + aufs_bindex_t bopq; + struct au_dcsub_pages dpages; + struct au_dpage *dpage; + struct dentry **dentries, *parent, *d; + + err = au_dpages_init(&dpages, GFP_NOFS); + if (unlikely(err)) + goto out; + parent = dget_parent(dentry); + err = au_dcsub_pages_rev_aufs(&dpages, parent, /*do_include*/0); + if (unlikely(err)) + goto out_free; + + err = bindex; + for (i = 0; i < dpages.ndpage; i++) { + dpage = dpages.dpages + i; + dentries = dpage->dentries; + ndentry = dpage->ndentry; + for (j = 0; j < ndentry; j++) { + d = dentries[j]; + di_read_lock_parent2(d, !AuLock_IR); + bopq = au_dbdiropq(d); + di_read_unlock(d, !AuLock_IR); + if (bopq >= 0 && bopq < err) + err = bopq; + } + } + +out_free: + dput(parent); + au_dpages_free(&dpages); +out: + return err; +} + +static int au_wbr_bu(struct super_block *sb, aufs_bindex_t bindex) +{ + for (; bindex >= 0; bindex--) + if (!au_br_rdonly(au_sbr(sb, bindex))) + return bindex; + return -EROFS; +} + +/* top down parent */ +static int au_wbr_create_tdp(struct dentry *dentry, + unsigned int flags __maybe_unused) +{ + int err; + aufs_bindex_t btop, bindex; + struct super_block *sb; + struct dentry *parent, *h_parent; + + sb = dentry->d_sb; + btop = au_dbtop(dentry); + err = btop; + if (!au_br_rdonly(au_sbr(sb, btop))) + goto out; + + err = -EROFS; + parent = dget_parent(dentry); + for (bindex = au_dbtop(parent); bindex < btop; bindex++) { + h_parent = au_h_dptr(parent, bindex); + if (!h_parent || d_is_negative(h_parent)) + continue; + + if (!au_br_rdonly(au_sbr(sb, bindex))) { + err = bindex; + break; + } + } + dput(parent); + + /* bottom up here */ + if (unlikely(err < 0)) { + err = au_wbr_bu(sb, btop - 1); + if (err >= 0) + err = au_wbr_nonopq(dentry, err); + } + +out: + AuDbg("b%d\n", err); + return err; +} + +/* ---------------------------------------------------------------------- */ + +/* an exception for the policy other than tdp */ +static int au_wbr_create_exp(struct dentry *dentry) +{ + int err; + aufs_bindex_t bwh, bdiropq; + struct dentry *parent; + + err = -1; + bwh = au_dbwh(dentry); + parent = dget_parent(dentry); + bdiropq = au_dbdiropq(parent); + if (bwh >= 0) { + if (bdiropq >= 0) + err = min(bdiropq, bwh); + else + err = bwh; + AuDbg("%d\n", err); + } else if (bdiropq >= 0) { + err = bdiropq; + AuDbg("%d\n", err); + } + dput(parent); + + if (err >= 0) + err = au_wbr_nonopq(dentry, err); + + if (err >= 0 && au_br_rdonly(au_sbr(dentry->d_sb, err))) + err = -1; + + AuDbg("%d\n", err); + return err; +} + +/* ---------------------------------------------------------------------- */ + +/* round robin */ +static int au_wbr_create_init_rr(struct super_block *sb) +{ + int err; + + err = au_wbr_bu(sb, au_sbbot(sb)); + atomic_set(&au_sbi(sb)->si_wbr_rr_next, -err); /* less important */ + /* smp_mb(); */ + + AuDbg("b%d\n", err); + return err; +} + +static int au_wbr_create_rr(struct dentry *dentry, unsigned int flags) +{ + int err, nbr; + unsigned int u; + aufs_bindex_t bindex, bbot; + struct super_block *sb; + atomic_t *next; + + err = au_wbr_create_exp(dentry); + if (err >= 0) + goto out; + + sb = dentry->d_sb; + next = &au_sbi(sb)->si_wbr_rr_next; + bbot = au_sbbot(sb); + nbr = bbot + 1; + for (bindex = 0; bindex <= bbot; bindex++) { + if (!au_ftest_wbr(flags, DIR)) { + err = atomic_dec_return(next) + 1; + /* modulo for 0 is meaningless */ + if (unlikely(!err)) + err = atomic_dec_return(next) + 1; + } else + err = atomic_read(next); + AuDbg("%d\n", err); + u = err; + err = u % nbr; + AuDbg("%d\n", err); + if (!au_br_rdonly(au_sbr(sb, err))) + break; + err = -EROFS; + } + + if (err >= 0) + err = au_wbr_nonopq(dentry, err); + +out: + AuDbg("%d\n", err); + return err; +} + +/* ---------------------------------------------------------------------- */ + +/* most free space */ +static void au_mfs(struct dentry *dentry, struct dentry *parent) +{ + struct super_block *sb; + struct au_branch *br; + struct au_wbr_mfs *mfs; + struct dentry *h_parent; + aufs_bindex_t bindex, bbot; + int err; + unsigned long long b, bavail; + struct path h_path; + /* reduce the stack usage */ + struct kstatfs *st; + + st = kmalloc(sizeof(*st), GFP_NOFS); + if (unlikely(!st)) { + AuWarn1("failed updating mfs(%d), ignored\n", -ENOMEM); + return; + } + + bavail = 0; + sb = dentry->d_sb; + mfs = &au_sbi(sb)->si_wbr_mfs; + MtxMustLock(&mfs->mfs_lock); + mfs->mfs_bindex = -EROFS; + mfs->mfsrr_bytes = 0; + if (!parent) { + bindex = 0; + bbot = au_sbbot(sb); + } else { + bindex = au_dbtop(parent); + bbot = au_dbtaildir(parent); + } + + for (; bindex <= bbot; bindex++) { + if (parent) { + h_parent = au_h_dptr(parent, bindex); + if (!h_parent || d_is_negative(h_parent)) + continue; + } + br = au_sbr(sb, bindex); + if (au_br_rdonly(br)) + continue; + + /* sb->s_root for NFS is unreliable */ + h_path.mnt = au_br_mnt(br); + h_path.dentry = h_path.mnt->mnt_root; + err = vfs_statfs(&h_path, st); + if (unlikely(err)) { + AuWarn1("failed statfs, b%d, %d\n", bindex, err); + continue; + } + + /* when the available size is equal, select the lower one */ + BUILD_BUG_ON(sizeof(b) < sizeof(st->f_bavail) + || sizeof(b) < sizeof(st->f_bsize)); + b = st->f_bavail * st->f_bsize; + br->br_wbr->wbr_bytes = b; + if (b >= bavail) { + bavail = b; + mfs->mfs_bindex = bindex; + mfs->mfs_jiffy = jiffies; + } + } + + mfs->mfsrr_bytes = bavail; + AuDbg("b%d\n", mfs->mfs_bindex); + au_kfree_rcu(st); +} + +static int au_wbr_create_mfs(struct dentry *dentry, unsigned int flags) +{ + int err; + struct dentry *parent; + struct super_block *sb; + struct au_wbr_mfs *mfs; + + err = au_wbr_create_exp(dentry); + if (err >= 0) + goto out; + + sb = dentry->d_sb; + parent = NULL; + if (au_ftest_wbr(flags, PARENT)) + parent = dget_parent(dentry); + mfs = &au_sbi(sb)->si_wbr_mfs; + mutex_lock(&mfs->mfs_lock); + if (time_after(jiffies, mfs->mfs_jiffy + mfs->mfs_expire) + || mfs->mfs_bindex < 0 + || au_br_rdonly(au_sbr(sb, mfs->mfs_bindex))) + au_mfs(dentry, parent); + mutex_unlock(&mfs->mfs_lock); + err = mfs->mfs_bindex; + dput(parent); + + if (err >= 0) + err = au_wbr_nonopq(dentry, err); + +out: + AuDbg("b%d\n", err); + return err; +} + +static int au_wbr_create_init_mfs(struct super_block *sb) +{ + struct au_wbr_mfs *mfs; + + mfs = &au_sbi(sb)->si_wbr_mfs; + mutex_init(&mfs->mfs_lock); + mfs->mfs_jiffy = 0; + mfs->mfs_bindex = -EROFS; + + return 0; +} + +static int au_wbr_create_fin_mfs(struct super_block *sb __maybe_unused) +{ + mutex_destroy(&au_sbi(sb)->si_wbr_mfs.mfs_lock); + return 0; +} + +/* ---------------------------------------------------------------------- */ + +/* top down regardless parent, and then mfs */ +static int au_wbr_create_tdmfs(struct dentry *dentry, + unsigned int flags __maybe_unused) +{ + int err; + aufs_bindex_t bwh, btail, bindex, bfound, bmfs; + unsigned long long watermark; + struct super_block *sb; + struct au_wbr_mfs *mfs; + struct au_branch *br; + struct dentry *parent; + + sb = dentry->d_sb; + mfs = &au_sbi(sb)->si_wbr_mfs; + mutex_lock(&mfs->mfs_lock); + if (time_after(jiffies, mfs->mfs_jiffy + mfs->mfs_expire) + || mfs->mfs_bindex < 0) + au_mfs(dentry, /*parent*/NULL); + watermark = mfs->mfsrr_watermark; + bmfs = mfs->mfs_bindex; + mutex_unlock(&mfs->mfs_lock); + + /* another style of au_wbr_create_exp() */ + bwh = au_dbwh(dentry); + parent = dget_parent(dentry); + btail = au_dbtaildir(parent); + if (bwh >= 0 && bwh < btail) + btail = bwh; + + err = au_wbr_nonopq(dentry, btail); + if (unlikely(err < 0)) + goto out; + btail = err; + bfound = -1; + for (bindex = 0; bindex <= btail; bindex++) { + br = au_sbr(sb, bindex); + if (au_br_rdonly(br)) + continue; + if (br->br_wbr->wbr_bytes > watermark) { + bfound = bindex; + break; + } + } + err = bfound; + if (err < 0) + err = bmfs; + +out: + dput(parent); + AuDbg("b%d\n", err); + return err; +} + +/* ---------------------------------------------------------------------- */ + +/* most free space and then round robin */ +static int au_wbr_create_mfsrr(struct dentry *dentry, unsigned int flags) +{ + int err; + struct au_wbr_mfs *mfs; + + err = au_wbr_create_mfs(dentry, flags); + if (err >= 0) { + mfs = &au_sbi(dentry->d_sb)->si_wbr_mfs; + mutex_lock(&mfs->mfs_lock); + if (mfs->mfsrr_bytes < mfs->mfsrr_watermark) + err = au_wbr_create_rr(dentry, flags); + mutex_unlock(&mfs->mfs_lock); + } + + AuDbg("b%d\n", err); + return err; +} + +static int au_wbr_create_init_mfsrr(struct super_block *sb) +{ + int err; + + au_wbr_create_init_mfs(sb); /* ignore */ + err = au_wbr_create_init_rr(sb); + + return err; +} + +/* ---------------------------------------------------------------------- */ + +/* top down parent and most free space */ +static int au_wbr_create_pmfs(struct dentry *dentry, unsigned int flags) +{ + int err, e2; + unsigned long long b; + aufs_bindex_t bindex, btop, bbot; + struct super_block *sb; + struct dentry *parent, *h_parent; + struct au_branch *br; + + err = au_wbr_create_tdp(dentry, flags); + if (unlikely(err < 0)) + goto out; + parent = dget_parent(dentry); + btop = au_dbtop(parent); + bbot = au_dbtaildir(parent); + if (btop == bbot) + goto out_parent; /* success */ + + e2 = au_wbr_create_mfs(dentry, flags); + if (e2 < 0) + goto out_parent; /* success */ + + /* when the available size is equal, select upper one */ + sb = dentry->d_sb; + br = au_sbr(sb, err); + b = br->br_wbr->wbr_bytes; + AuDbg("b%d, %llu\n", err, b); + + for (bindex = btop; bindex <= bbot; bindex++) { + h_parent = au_h_dptr(parent, bindex); + if (!h_parent || d_is_negative(h_parent)) + continue; + + br = au_sbr(sb, bindex); + if (!au_br_rdonly(br) && br->br_wbr->wbr_bytes > b) { + b = br->br_wbr->wbr_bytes; + err = bindex; + AuDbg("b%d, %llu\n", err, b); + } + } + + if (err >= 0) + err = au_wbr_nonopq(dentry, err); + +out_parent: + dput(parent); +out: + AuDbg("b%d\n", err); + return err; +} + +/* ---------------------------------------------------------------------- */ + +/* + * - top down parent + * - most free space with parent + * - most free space round-robin regardless parent + */ +static int au_wbr_create_pmfsrr(struct dentry *dentry, unsigned int flags) +{ + int err; + unsigned long long watermark; + struct super_block *sb; + struct au_branch *br; + struct au_wbr_mfs *mfs; + + err = au_wbr_create_pmfs(dentry, flags | AuWbr_PARENT); + if (unlikely(err < 0)) + goto out; + + sb = dentry->d_sb; + br = au_sbr(sb, err); + mfs = &au_sbi(sb)->si_wbr_mfs; + mutex_lock(&mfs->mfs_lock); + watermark = mfs->mfsrr_watermark; + mutex_unlock(&mfs->mfs_lock); + if (br->br_wbr->wbr_bytes < watermark) + /* regardless the parent dir */ + err = au_wbr_create_mfsrr(dentry, flags); + +out: + AuDbg("b%d\n", err); + return err; +} + +/* ---------------------------------------------------------------------- */ + +/* policies for copyup */ + +/* top down parent */ +static int au_wbr_copyup_tdp(struct dentry *dentry) +{ + return au_wbr_create_tdp(dentry, /*flags, anything is ok*/0); +} + +/* bottom up parent */ +static int au_wbr_copyup_bup(struct dentry *dentry) +{ + int err; + aufs_bindex_t bindex, btop; + struct dentry *parent, *h_parent; + struct super_block *sb; + + err = -EROFS; + sb = dentry->d_sb; + parent = dget_parent(dentry); + btop = au_dbtop(parent); + for (bindex = au_dbtop(dentry); bindex >= btop; bindex--) { + h_parent = au_h_dptr(parent, bindex); + if (!h_parent || d_is_negative(h_parent)) + continue; + + if (!au_br_rdonly(au_sbr(sb, bindex))) { + err = bindex; + break; + } + } + dput(parent); + + /* bottom up here */ + if (unlikely(err < 0)) + err = au_wbr_bu(sb, btop - 1); + + AuDbg("b%d\n", err); + return err; +} + +/* bottom up */ +int au_wbr_do_copyup_bu(struct dentry *dentry, aufs_bindex_t btop) +{ + int err; + + err = au_wbr_bu(dentry->d_sb, btop); + AuDbg("b%d\n", err); + if (err > btop) + err = au_wbr_nonopq(dentry, err); + + AuDbg("b%d\n", err); + return err; +} + +static int au_wbr_copyup_bu(struct dentry *dentry) +{ + int err; + aufs_bindex_t btop; + + btop = au_dbtop(dentry); + err = au_wbr_do_copyup_bu(dentry, btop); + return err; +} + +/* ---------------------------------------------------------------------- */ + +struct au_wbr_copyup_operations au_wbr_copyup_ops[] = { + [AuWbrCopyup_TDP] = { + .copyup = au_wbr_copyup_tdp + }, + [AuWbrCopyup_BUP] = { + .copyup = au_wbr_copyup_bup + }, + [AuWbrCopyup_BU] = { + .copyup = au_wbr_copyup_bu + } +}; + +struct au_wbr_create_operations au_wbr_create_ops[] = { + [AuWbrCreate_TDP] = { + .create = au_wbr_create_tdp + }, + [AuWbrCreate_RR] = { + .create = au_wbr_create_rr, + .init = au_wbr_create_init_rr + }, + [AuWbrCreate_MFS] = { + .create = au_wbr_create_mfs, + .init = au_wbr_create_init_mfs, + .fin = au_wbr_create_fin_mfs + }, + [AuWbrCreate_MFSV] = { + .create = au_wbr_create_mfs, + .init = au_wbr_create_init_mfs, + .fin = au_wbr_create_fin_mfs + }, + [AuWbrCreate_MFSRR] = { + .create = au_wbr_create_mfsrr, + .init = au_wbr_create_init_mfsrr, + .fin = au_wbr_create_fin_mfs + }, + [AuWbrCreate_MFSRRV] = { + .create = au_wbr_create_mfsrr, + .init = au_wbr_create_init_mfsrr, + .fin = au_wbr_create_fin_mfs + }, + [AuWbrCreate_TDMFS] = { + .create = au_wbr_create_tdmfs, + .init = au_wbr_create_init_mfs, + .fin = au_wbr_create_fin_mfs + }, + [AuWbrCreate_TDMFSV] = { + .create = au_wbr_create_tdmfs, + .init = au_wbr_create_init_mfs, + .fin = au_wbr_create_fin_mfs + }, + [AuWbrCreate_PMFS] = { + .create = au_wbr_create_pmfs, + .init = au_wbr_create_init_mfs, + .fin = au_wbr_create_fin_mfs + }, + [AuWbrCreate_PMFSV] = { + .create = au_wbr_create_pmfs, + .init = au_wbr_create_init_mfs, + .fin = au_wbr_create_fin_mfs + }, + [AuWbrCreate_PMFSRR] = { + .create = au_wbr_create_pmfsrr, + .init = au_wbr_create_init_mfsrr, + .fin = au_wbr_create_fin_mfs + }, + [AuWbrCreate_PMFSRRV] = { + .create = au_wbr_create_pmfsrr, + .init = au_wbr_create_init_mfsrr, + .fin = au_wbr_create_fin_mfs + } +}; --- linux-azure-5.8-5.8.0.orig/fs/aufs/whout.c +++ linux-azure-5.8-5.8.0/fs/aufs/whout.c @@ -0,0 +1,1062 @@ +// SPDX-License-Identifier: GPL-2.0 +/* + * Copyright (C) 2005-2020 Junjiro R. Okajima + * + * This program, aufs is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; either version 2 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + */ + +/* + * whiteout for logical deletion and opaque directory + */ + +#include "aufs.h" + +#define WH_MASK 0444 + +/* + * If a directory contains this file, then it is opaque. We start with the + * .wh. flag so that it is blocked by lookup. + */ +static struct qstr diropq_name = QSTR_INIT(AUFS_WH_DIROPQ, + sizeof(AUFS_WH_DIROPQ) - 1); + +/* + * generate whiteout name, which is NOT terminated by NULL. + * @name: original d_name.name + * @len: original d_name.len + * @wh: whiteout qstr + * returns zero when succeeds, otherwise error. + * succeeded value as wh->name should be freed by kfree(). + */ +int au_wh_name_alloc(struct qstr *wh, const struct qstr *name) +{ + char *p; + + if (unlikely(name->len > PATH_MAX - AUFS_WH_PFX_LEN)) + return -ENAMETOOLONG; + + wh->len = name->len + AUFS_WH_PFX_LEN; + p = kmalloc(wh->len, GFP_NOFS); + wh->name = p; + if (p) { + memcpy(p, AUFS_WH_PFX, AUFS_WH_PFX_LEN); + memcpy(p + AUFS_WH_PFX_LEN, name->name, name->len); + /* smp_mb(); */ + return 0; + } + return -ENOMEM; +} + +/* ---------------------------------------------------------------------- */ + +/* + * test if the @wh_name exists under @h_parent. + * @try_sio specifies the necessary of super-io. + */ +int au_wh_test(struct dentry *h_parent, struct qstr *wh_name, int try_sio) +{ + int err; + struct dentry *wh_dentry; + + if (!try_sio) + wh_dentry = vfsub_lkup_one(wh_name, h_parent); + else + wh_dentry = au_sio_lkup_one(wh_name, h_parent); + err = PTR_ERR(wh_dentry); + if (IS_ERR(wh_dentry)) { + if (err == -ENAMETOOLONG) + err = 0; + goto out; + } + + err = 0; + if (d_is_negative(wh_dentry)) + goto out_wh; /* success */ + + err = 1; + if (d_is_reg(wh_dentry)) + goto out_wh; /* success */ + + err = -EIO; + AuIOErr("%pd Invalid whiteout entry type 0%o.\n", + wh_dentry, d_inode(wh_dentry)->i_mode); + +out_wh: + dput(wh_dentry); +out: + return err; +} + +/* + * test if the @h_dentry sets opaque or not. + */ +int au_diropq_test(struct dentry *h_dentry) +{ + int err; + struct inode *h_dir; + + h_dir = d_inode(h_dentry); + err = au_wh_test(h_dentry, &diropq_name, + au_test_h_perm_sio(h_dir, MAY_EXEC)); + return err; +} + +/* + * returns a negative dentry whose name is unique and temporary. + */ +struct dentry *au_whtmp_lkup(struct dentry *h_parent, struct au_branch *br, + struct qstr *prefix) +{ + struct dentry *dentry; + int i; + char defname[NAME_MAX - AUFS_MAX_NAMELEN + DNAME_INLINE_LEN + 1], + *name, *p; + /* strict atomic_t is unnecessary here */ + static unsigned short cnt; + struct qstr qs; + + BUILD_BUG_ON(sizeof(cnt) * 2 > AUFS_WH_TMP_LEN); + + name = defname; + qs.len = sizeof(defname) - DNAME_INLINE_LEN + prefix->len - 1; + if (unlikely(prefix->len > DNAME_INLINE_LEN)) { + dentry = ERR_PTR(-ENAMETOOLONG); + if (unlikely(qs.len > NAME_MAX)) + goto out; + dentry = ERR_PTR(-ENOMEM); + name = kmalloc(qs.len + 1, GFP_NOFS); + if (unlikely(!name)) + goto out; + } + + /* doubly whiteout-ed */ + memcpy(name, AUFS_WH_PFX AUFS_WH_PFX, AUFS_WH_PFX_LEN * 2); + p = name + AUFS_WH_PFX_LEN * 2; + memcpy(p, prefix->name, prefix->len); + p += prefix->len; + *p++ = '.'; + AuDebugOn(name + qs.len + 1 - p <= AUFS_WH_TMP_LEN); + + qs.name = name; + for (i = 0; i < 3; i++) { + sprintf(p, "%.*x", AUFS_WH_TMP_LEN, cnt++); + dentry = au_sio_lkup_one(&qs, h_parent); + if (IS_ERR(dentry) || d_is_negative(dentry)) + goto out_name; + dput(dentry); + } + /* pr_warn("could not get random name\n"); */ + dentry = ERR_PTR(-EEXIST); + AuDbg("%.*s\n", AuLNPair(&qs)); + BUG(); + +out_name: + if (name != defname) + au_kfree_try_rcu(name); +out: + AuTraceErrPtr(dentry); + return dentry; +} + +/* + * rename the @h_dentry on @br to the whiteouted temporary name. + */ +int au_whtmp_ren(struct dentry *h_dentry, struct au_branch *br) +{ + int err; + struct path h_path = { + .mnt = au_br_mnt(br) + }; + struct inode *h_dir, *delegated; + struct dentry *h_parent; + + h_parent = h_dentry->d_parent; /* dir inode is locked */ + h_dir = d_inode(h_parent); + IMustLock(h_dir); + + h_path.dentry = au_whtmp_lkup(h_parent, br, &h_dentry->d_name); + err = PTR_ERR(h_path.dentry); + if (IS_ERR(h_path.dentry)) + goto out; + + /* under the same dir, no need to lock_rename() */ + delegated = NULL; + err = vfsub_rename(h_dir, h_dentry, h_dir, &h_path, &delegated, + /*flags*/0); + AuTraceErr(err); + if (unlikely(err == -EWOULDBLOCK)) { + pr_warn("cannot retry for NFSv4 delegation" + " for an internal rename\n"); + iput(delegated); + } + dput(h_path.dentry); + +out: + AuTraceErr(err); + return err; +} + +/* ---------------------------------------------------------------------- */ +/* + * functions for removing a whiteout + */ + +static int do_unlink_wh(struct inode *h_dir, struct path *h_path) +{ + int err, force; + struct inode *delegated; + + /* + * forces superio when the dir has a sticky bit. + * this may be a violation of unix fs semantics. + */ + force = (h_dir->i_mode & S_ISVTX) + && !uid_eq(current_fsuid(), d_inode(h_path->dentry)->i_uid); + delegated = NULL; + err = vfsub_unlink(h_dir, h_path, &delegated, force); + if (unlikely(err == -EWOULDBLOCK)) { + pr_warn("cannot retry for NFSv4 delegation" + " for an internal unlink\n"); + iput(delegated); + } + return err; +} + +int au_wh_unlink_dentry(struct inode *h_dir, struct path *h_path, + struct dentry *dentry) +{ + int err; + + err = do_unlink_wh(h_dir, h_path); + if (!err && dentry) + au_set_dbwh(dentry, -1); + + return err; +} + +static int unlink_wh_name(struct dentry *h_parent, struct qstr *wh, + struct au_branch *br) +{ + int err; + struct path h_path = { + .mnt = au_br_mnt(br) + }; + + err = 0; + h_path.dentry = vfsub_lkup_one(wh, h_parent); + if (IS_ERR(h_path.dentry)) + err = PTR_ERR(h_path.dentry); + else { + if (d_is_reg(h_path.dentry)) + err = do_unlink_wh(d_inode(h_parent), &h_path); + dput(h_path.dentry); + } + + return err; +} + +/* ---------------------------------------------------------------------- */ +/* + * initialize/clean whiteout for a branch + */ + +static void au_wh_clean(struct inode *h_dir, struct path *whpath, + const int isdir) +{ + int err; + struct inode *delegated; + + if (d_is_negative(whpath->dentry)) + return; + + if (isdir) + err = vfsub_rmdir(h_dir, whpath); + else { + delegated = NULL; + err = vfsub_unlink(h_dir, whpath, &delegated, /*force*/0); + if (unlikely(err == -EWOULDBLOCK)) { + pr_warn("cannot retry for NFSv4 delegation" + " for an internal unlink\n"); + iput(delegated); + } + } + if (unlikely(err)) + pr_warn("failed removing %pd (%d), ignored.\n", + whpath->dentry, err); +} + +static int test_linkable(struct dentry *h_root) +{ + struct inode *h_dir = d_inode(h_root); + + if (h_dir->i_op->link) + return 0; + + pr_err("%pd (%s) doesn't support link(2), use noplink and rw+nolwh\n", + h_root, au_sbtype(h_root->d_sb)); + return -ENOSYS; /* the branch doesn't have its ->link() */ +} + +/* todo: should this mkdir be done in /sbin/mount.aufs helper? */ +static int au_whdir(struct inode *h_dir, struct path *path) +{ + int err; + + err = -EEXIST; + if (d_is_negative(path->dentry)) { + int mode = 0700; + + if (au_test_nfs(path->dentry->d_sb)) + mode |= 0111; + err = vfsub_mkdir(h_dir, path, mode); + } else if (d_is_dir(path->dentry)) + err = 0; + else + pr_err("unknown %pd exists\n", path->dentry); + + return err; +} + +struct au_wh_base { + const struct qstr *name; + struct dentry *dentry; +}; + +static void au_wh_init_ro(struct inode *h_dir, struct au_wh_base base[], + struct path *h_path) +{ + h_path->dentry = base[AuBrWh_BASE].dentry; + au_wh_clean(h_dir, h_path, /*isdir*/0); + h_path->dentry = base[AuBrWh_PLINK].dentry; + au_wh_clean(h_dir, h_path, /*isdir*/1); + h_path->dentry = base[AuBrWh_ORPH].dentry; + au_wh_clean(h_dir, h_path, /*isdir*/1); +} + +/* + * returns tri-state, + * minus: error, caller should print the message + * zero: success + * plus: error, caller should NOT print the message + */ +static int au_wh_init_rw_nolink(struct dentry *h_root, struct au_wbr *wbr, + int do_plink, struct au_wh_base base[], + struct path *h_path) +{ + int err; + struct inode *h_dir; + + h_dir = d_inode(h_root); + h_path->dentry = base[AuBrWh_BASE].dentry; + au_wh_clean(h_dir, h_path, /*isdir*/0); + h_path->dentry = base[AuBrWh_PLINK].dentry; + if (do_plink) { + err = test_linkable(h_root); + if (unlikely(err)) { + err = 1; + goto out; + } + + err = au_whdir(h_dir, h_path); + if (unlikely(err)) + goto out; + wbr->wbr_plink = dget(base[AuBrWh_PLINK].dentry); + } else + au_wh_clean(h_dir, h_path, /*isdir*/1); + h_path->dentry = base[AuBrWh_ORPH].dentry; + err = au_whdir(h_dir, h_path); + if (unlikely(err)) + goto out; + wbr->wbr_orph = dget(base[AuBrWh_ORPH].dentry); + +out: + return err; +} + +/* + * for the moment, aufs supports the branch filesystem which does not support + * link(2). testing on FAT which does not support i_op->setattr() fully either, + * copyup failed. finally, such filesystem will not be used as the writable + * branch. + * + * returns tri-state, see above. + */ +static int au_wh_init_rw(struct dentry *h_root, struct au_wbr *wbr, + int do_plink, struct au_wh_base base[], + struct path *h_path) +{ + int err; + struct inode *h_dir; + + WbrWhMustWriteLock(wbr); + + err = test_linkable(h_root); + if (unlikely(err)) { + err = 1; + goto out; + } + + /* + * todo: should this create be done in /sbin/mount.aufs helper? + */ + err = -EEXIST; + h_dir = d_inode(h_root); + if (d_is_negative(base[AuBrWh_BASE].dentry)) { + h_path->dentry = base[AuBrWh_BASE].dentry; + err = vfsub_create(h_dir, h_path, WH_MASK, /*want_excl*/true); + } else if (d_is_reg(base[AuBrWh_BASE].dentry)) + err = 0; + else + pr_err("unknown %pd2 exists\n", base[AuBrWh_BASE].dentry); + if (unlikely(err)) + goto out; + + h_path->dentry = base[AuBrWh_PLINK].dentry; + if (do_plink) { + err = au_whdir(h_dir, h_path); + if (unlikely(err)) + goto out; + wbr->wbr_plink = dget(base[AuBrWh_PLINK].dentry); + } else + au_wh_clean(h_dir, h_path, /*isdir*/1); + wbr->wbr_whbase = dget(base[AuBrWh_BASE].dentry); + + h_path->dentry = base[AuBrWh_ORPH].dentry; + err = au_whdir(h_dir, h_path); + if (unlikely(err)) + goto out; + wbr->wbr_orph = dget(base[AuBrWh_ORPH].dentry); + +out: + return err; +} + +/* + * initialize the whiteout base file/dir for @br. + */ +int au_wh_init(struct au_branch *br, struct super_block *sb) +{ + int err, i; + const unsigned char do_plink + = !!au_opt_test(au_mntflags(sb), PLINK); + struct inode *h_dir; + struct path path = br->br_path; + struct dentry *h_root = path.dentry; + struct au_wbr *wbr = br->br_wbr; + static const struct qstr base_name[] = { + [AuBrWh_BASE] = QSTR_INIT(AUFS_BASE_NAME, + sizeof(AUFS_BASE_NAME) - 1), + [AuBrWh_PLINK] = QSTR_INIT(AUFS_PLINKDIR_NAME, + sizeof(AUFS_PLINKDIR_NAME) - 1), + [AuBrWh_ORPH] = QSTR_INIT(AUFS_ORPHDIR_NAME, + sizeof(AUFS_ORPHDIR_NAME) - 1) + }; + struct au_wh_base base[] = { + [AuBrWh_BASE] = { + .name = base_name + AuBrWh_BASE, + .dentry = NULL + }, + [AuBrWh_PLINK] = { + .name = base_name + AuBrWh_PLINK, + .dentry = NULL + }, + [AuBrWh_ORPH] = { + .name = base_name + AuBrWh_ORPH, + .dentry = NULL + } + }; + + if (wbr) + WbrWhMustWriteLock(wbr); + + for (i = 0; i < AuBrWh_Last; i++) { + /* doubly whiteouted */ + struct dentry *d; + + d = au_wh_lkup(h_root, (void *)base[i].name, br); + err = PTR_ERR(d); + if (IS_ERR(d)) + goto out; + + base[i].dentry = d; + AuDebugOn(wbr + && wbr->wbr_wh[i] + && wbr->wbr_wh[i] != base[i].dentry); + } + + if (wbr) + for (i = 0; i < AuBrWh_Last; i++) { + dput(wbr->wbr_wh[i]); + wbr->wbr_wh[i] = NULL; + } + + err = 0; + if (!au_br_writable(br->br_perm)) { + h_dir = d_inode(h_root); + au_wh_init_ro(h_dir, base, &path); + } else if (!au_br_wh_linkable(br->br_perm)) { + err = au_wh_init_rw_nolink(h_root, wbr, do_plink, base, &path); + if (err > 0) + goto out; + else if (err) + goto out_err; + } else { + err = au_wh_init_rw(h_root, wbr, do_plink, base, &path); + if (err > 0) + goto out; + else if (err) + goto out_err; + } + goto out; /* success */ + +out_err: + pr_err("an error(%d) on the writable branch %pd(%s)\n", + err, h_root, au_sbtype(h_root->d_sb)); +out: + for (i = 0; i < AuBrWh_Last; i++) + dput(base[i].dentry); + return err; +} + +/* ---------------------------------------------------------------------- */ +/* + * whiteouts are all hard-linked usually. + * when its link count reaches a ceiling, we create a new whiteout base + * asynchronously. + */ + +struct reinit_br_wh { + struct super_block *sb; + struct au_branch *br; +}; + +static void reinit_br_wh(void *arg) +{ + int err; + aufs_bindex_t bindex; + struct path h_path; + struct reinit_br_wh *a = arg; + struct au_wbr *wbr; + struct inode *dir, *delegated; + struct dentry *h_root; + struct au_hinode *hdir; + + err = 0; + wbr = a->br->br_wbr; + /* big aufs lock */ + si_noflush_write_lock(a->sb); + if (!au_br_writable(a->br->br_perm)) + goto out; + bindex = au_br_index(a->sb, a->br->br_id); + if (unlikely(bindex < 0)) + goto out; + + di_read_lock_parent(a->sb->s_root, AuLock_IR); + dir = d_inode(a->sb->s_root); + hdir = au_hi(dir, bindex); + h_root = au_h_dptr(a->sb->s_root, bindex); + AuDebugOn(h_root != au_br_dentry(a->br)); + + au_hn_inode_lock_nested(hdir, AuLsc_I_PARENT); + wbr_wh_write_lock(wbr); + err = au_h_verify(wbr->wbr_whbase, au_opt_udba(a->sb), hdir->hi_inode, + h_root, a->br); + if (!err) { + h_path.dentry = wbr->wbr_whbase; + h_path.mnt = au_br_mnt(a->br); + delegated = NULL; + err = vfsub_unlink(hdir->hi_inode, &h_path, &delegated, + /*force*/0); + if (unlikely(err == -EWOULDBLOCK)) { + pr_warn("cannot retry for NFSv4 delegation" + " for an internal unlink\n"); + iput(delegated); + } + } else { + pr_warn("%pd is moved, ignored\n", wbr->wbr_whbase); + err = 0; + } + dput(wbr->wbr_whbase); + wbr->wbr_whbase = NULL; + if (!err) + err = au_wh_init(a->br, a->sb); + wbr_wh_write_unlock(wbr); + au_hn_inode_unlock(hdir); + di_read_unlock(a->sb->s_root, AuLock_IR); + if (!err) + au_fhsm_wrote(a->sb, bindex, /*force*/0); + +out: + if (wbr) + atomic_dec(&wbr->wbr_wh_running); + au_lcnt_dec(&a->br->br_count); + si_write_unlock(a->sb); + au_nwt_done(&au_sbi(a->sb)->si_nowait); + au_kfree_rcu(a); + if (unlikely(err)) + AuIOErr("err %d\n", err); +} + +static void kick_reinit_br_wh(struct super_block *sb, struct au_branch *br) +{ + int do_dec, wkq_err; + struct reinit_br_wh *arg; + + do_dec = 1; + if (atomic_inc_return(&br->br_wbr->wbr_wh_running) != 1) + goto out; + + /* ignore ENOMEM */ + arg = kmalloc(sizeof(*arg), GFP_NOFS); + if (arg) { + /* + * dec(wh_running), kfree(arg) and dec(br_count) + * in reinit function + */ + arg->sb = sb; + arg->br = br; + au_lcnt_inc(&br->br_count); + wkq_err = au_wkq_nowait(reinit_br_wh, arg, sb, /*flags*/0); + if (unlikely(wkq_err)) { + atomic_dec(&br->br_wbr->wbr_wh_running); + au_lcnt_dec(&br->br_count); + au_kfree_rcu(arg); + } + do_dec = 0; + } + +out: + if (do_dec) + atomic_dec(&br->br_wbr->wbr_wh_running); +} + +/* ---------------------------------------------------------------------- */ + +/* + * create the whiteout @wh. + */ +static int link_or_create_wh(struct super_block *sb, aufs_bindex_t bindex, + struct dentry *wh) +{ + int err; + struct path h_path = { + .dentry = wh + }; + struct au_branch *br; + struct au_wbr *wbr; + struct dentry *h_parent; + struct inode *h_dir, *delegated; + + h_parent = wh->d_parent; /* dir inode is locked */ + h_dir = d_inode(h_parent); + IMustLock(h_dir); + + br = au_sbr(sb, bindex); + h_path.mnt = au_br_mnt(br); + wbr = br->br_wbr; + wbr_wh_read_lock(wbr); + if (wbr->wbr_whbase) { + delegated = NULL; + err = vfsub_link(wbr->wbr_whbase, h_dir, &h_path, &delegated); + if (unlikely(err == -EWOULDBLOCK)) { + pr_warn("cannot retry for NFSv4 delegation" + " for an internal link\n"); + iput(delegated); + } + if (!err || err != -EMLINK) + goto out; + + /* link count full. re-initialize br_whbase. */ + kick_reinit_br_wh(sb, br); + } + + /* return this error in this context */ + err = vfsub_create(h_dir, &h_path, WH_MASK, /*want_excl*/true); + if (!err) + au_fhsm_wrote(sb, bindex, /*force*/0); + +out: + wbr_wh_read_unlock(wbr); + return err; +} + +/* ---------------------------------------------------------------------- */ + +/* + * create or remove the diropq. + */ +static struct dentry *do_diropq(struct dentry *dentry, aufs_bindex_t bindex, + unsigned int flags) +{ + struct dentry *opq_dentry, *h_dentry; + struct super_block *sb; + struct au_branch *br; + int err; + + sb = dentry->d_sb; + br = au_sbr(sb, bindex); + h_dentry = au_h_dptr(dentry, bindex); + opq_dentry = vfsub_lkup_one(&diropq_name, h_dentry); + if (IS_ERR(opq_dentry)) + goto out; + + if (au_ftest_diropq(flags, CREATE)) { + err = link_or_create_wh(sb, bindex, opq_dentry); + if (!err) { + au_set_dbdiropq(dentry, bindex); + goto out; /* success */ + } + } else { + struct path tmp = { + .dentry = opq_dentry, + .mnt = au_br_mnt(br) + }; + err = do_unlink_wh(au_h_iptr(d_inode(dentry), bindex), &tmp); + if (!err) + au_set_dbdiropq(dentry, -1); + } + dput(opq_dentry); + opq_dentry = ERR_PTR(err); + +out: + return opq_dentry; +} + +struct do_diropq_args { + struct dentry **errp; + struct dentry *dentry; + aufs_bindex_t bindex; + unsigned int flags; +}; + +static void call_do_diropq(void *args) +{ + struct do_diropq_args *a = args; + *a->errp = do_diropq(a->dentry, a->bindex, a->flags); +} + +struct dentry *au_diropq_sio(struct dentry *dentry, aufs_bindex_t bindex, + unsigned int flags) +{ + struct dentry *diropq, *h_dentry; + + h_dentry = au_h_dptr(dentry, bindex); + if (!au_test_h_perm_sio(d_inode(h_dentry), MAY_EXEC | MAY_WRITE)) + diropq = do_diropq(dentry, bindex, flags); + else { + int wkq_err; + struct do_diropq_args args = { + .errp = &diropq, + .dentry = dentry, + .bindex = bindex, + .flags = flags + }; + + wkq_err = au_wkq_wait(call_do_diropq, &args); + if (unlikely(wkq_err)) + diropq = ERR_PTR(wkq_err); + } + + return diropq; +} + +/* ---------------------------------------------------------------------- */ + +/* + * lookup whiteout dentry. + * @h_parent: lower parent dentry which must exist and be locked + * @base_name: name of dentry which will be whiteouted + * returns dentry for whiteout. + */ +struct dentry *au_wh_lkup(struct dentry *h_parent, struct qstr *base_name, + struct au_branch *br) +{ + int err; + struct qstr wh_name; + struct dentry *wh_dentry; + + err = au_wh_name_alloc(&wh_name, base_name); + wh_dentry = ERR_PTR(err); + if (!err) { + wh_dentry = vfsub_lkup_one(&wh_name, h_parent); + au_kfree_try_rcu(wh_name.name); + } + return wh_dentry; +} + +/* + * link/create a whiteout for @dentry on @bindex. + */ +struct dentry *au_wh_create(struct dentry *dentry, aufs_bindex_t bindex, + struct dentry *h_parent) +{ + struct dentry *wh_dentry; + struct super_block *sb; + int err; + + sb = dentry->d_sb; + wh_dentry = au_wh_lkup(h_parent, &dentry->d_name, au_sbr(sb, bindex)); + if (!IS_ERR(wh_dentry) && d_is_negative(wh_dentry)) { + err = link_or_create_wh(sb, bindex, wh_dentry); + if (!err) { + au_set_dbwh(dentry, bindex); + au_fhsm_wrote(sb, bindex, /*force*/0); + } else { + dput(wh_dentry); + wh_dentry = ERR_PTR(err); + } + } + + return wh_dentry; +} + +/* ---------------------------------------------------------------------- */ + +/* Delete all whiteouts in this directory on branch bindex. */ +static int del_wh_children(struct dentry *h_dentry, struct au_nhash *whlist, + aufs_bindex_t bindex, struct au_branch *br) +{ + int err; + unsigned long ul, n; + struct qstr wh_name; + char *p; + struct hlist_head *head; + struct au_vdir_wh *pos; + struct au_vdir_destr *str; + + err = -ENOMEM; + p = (void *)__get_free_page(GFP_NOFS); + wh_name.name = p; + if (unlikely(!wh_name.name)) + goto out; + + err = 0; + memcpy(p, AUFS_WH_PFX, AUFS_WH_PFX_LEN); + p += AUFS_WH_PFX_LEN; + n = whlist->nh_num; + head = whlist->nh_head; + for (ul = 0; !err && ul < n; ul++, head++) { + hlist_for_each_entry(pos, head, wh_hash) { + if (pos->wh_bindex != bindex) + continue; + + str = &pos->wh_str; + if (str->len + AUFS_WH_PFX_LEN <= PATH_MAX) { + memcpy(p, str->name, str->len); + wh_name.len = AUFS_WH_PFX_LEN + str->len; + err = unlink_wh_name(h_dentry, &wh_name, br); + if (!err) + continue; + break; + } + AuIOErr("whiteout name too long %.*s\n", + str->len, str->name); + err = -EIO; + break; + } + } + free_page((unsigned long)wh_name.name); + +out: + return err; +} + +struct del_wh_children_args { + int *errp; + struct dentry *h_dentry; + struct au_nhash *whlist; + aufs_bindex_t bindex; + struct au_branch *br; +}; + +static void call_del_wh_children(void *args) +{ + struct del_wh_children_args *a = args; + *a->errp = del_wh_children(a->h_dentry, a->whlist, a->bindex, a->br); +} + +/* ---------------------------------------------------------------------- */ + +struct au_whtmp_rmdir *au_whtmp_rmdir_alloc(struct super_block *sb, gfp_t gfp) +{ + struct au_whtmp_rmdir *whtmp; + int err; + unsigned int rdhash; + + SiMustAnyLock(sb); + + whtmp = kzalloc(sizeof(*whtmp), gfp); + if (unlikely(!whtmp)) { + whtmp = ERR_PTR(-ENOMEM); + goto out; + } + + /* no estimation for dir size */ + rdhash = au_sbi(sb)->si_rdhash; + if (!rdhash) + rdhash = AUFS_RDHASH_DEF; + err = au_nhash_alloc(&whtmp->whlist, rdhash, gfp); + if (unlikely(err)) { + au_kfree_rcu(whtmp); + whtmp = ERR_PTR(err); + } + +out: + return whtmp; +} + +void au_whtmp_rmdir_free(struct au_whtmp_rmdir *whtmp) +{ + if (whtmp->br) + au_lcnt_dec(&whtmp->br->br_count); + dput(whtmp->wh_dentry); + iput(whtmp->dir); + au_nhash_wh_free(&whtmp->whlist); + au_kfree_rcu(whtmp); +} + +/* + * rmdir the whiteouted temporary named dir @h_dentry. + * @whlist: whiteouted children. + */ +int au_whtmp_rmdir(struct inode *dir, aufs_bindex_t bindex, + struct dentry *wh_dentry, struct au_nhash *whlist) +{ + int err; + unsigned int h_nlink; + struct path h_tmp; + struct inode *wh_inode, *h_dir; + struct au_branch *br; + + h_dir = d_inode(wh_dentry->d_parent); /* dir inode is locked */ + IMustLock(h_dir); + + br = au_sbr(dir->i_sb, bindex); + wh_inode = d_inode(wh_dentry); + inode_lock_nested(wh_inode, AuLsc_I_CHILD); + + /* + * someone else might change some whiteouts while we were sleeping. + * it means this whlist may have an obsoleted entry. + */ + if (!au_test_h_perm_sio(wh_inode, MAY_EXEC | MAY_WRITE)) + err = del_wh_children(wh_dentry, whlist, bindex, br); + else { + int wkq_err; + struct del_wh_children_args args = { + .errp = &err, + .h_dentry = wh_dentry, + .whlist = whlist, + .bindex = bindex, + .br = br + }; + + wkq_err = au_wkq_wait(call_del_wh_children, &args); + if (unlikely(wkq_err)) + err = wkq_err; + } + inode_unlock(wh_inode); + + if (!err) { + h_tmp.dentry = wh_dentry; + h_tmp.mnt = au_br_mnt(br); + h_nlink = h_dir->i_nlink; + err = vfsub_rmdir(h_dir, &h_tmp); + /* some fs doesn't change the parent nlink in some cases */ + h_nlink -= h_dir->i_nlink; + } + + if (!err) { + if (au_ibtop(dir) == bindex) { + /* todo: dir->i_mutex is necessary */ + au_cpup_attr_timesizes(dir); + if (h_nlink) + vfsub_drop_nlink(dir); + } + return 0; /* success */ + } + + pr_warn("failed removing %pd(%d), ignored\n", wh_dentry, err); + return err; +} + +static void call_rmdir_whtmp(void *args) +{ + int err; + aufs_bindex_t bindex; + struct au_whtmp_rmdir *a = args; + struct super_block *sb; + struct dentry *h_parent; + struct inode *h_dir; + struct au_hinode *hdir; + + /* rmdir by nfsd may cause deadlock with this i_mutex */ + /* inode_lock(a->dir); */ + err = -EROFS; + sb = a->dir->i_sb; + si_read_lock(sb, !AuLock_FLUSH); + if (!au_br_writable(a->br->br_perm)) + goto out; + bindex = au_br_index(sb, a->br->br_id); + if (unlikely(bindex < 0)) + goto out; + + err = -EIO; + ii_write_lock_parent(a->dir); + h_parent = dget_parent(a->wh_dentry); + h_dir = d_inode(h_parent); + hdir = au_hi(a->dir, bindex); + err = vfsub_mnt_want_write(au_br_mnt(a->br)); + if (unlikely(err)) + goto out_mnt; + au_hn_inode_lock_nested(hdir, AuLsc_I_PARENT); + err = au_h_verify(a->wh_dentry, au_opt_udba(sb), h_dir, h_parent, + a->br); + if (!err) + err = au_whtmp_rmdir(a->dir, bindex, a->wh_dentry, &a->whlist); + au_hn_inode_unlock(hdir); + vfsub_mnt_drop_write(au_br_mnt(a->br)); + +out_mnt: + dput(h_parent); + ii_write_unlock(a->dir); +out: + /* inode_unlock(a->dir); */ + au_whtmp_rmdir_free(a); + si_read_unlock(sb); + au_nwt_done(&au_sbi(sb)->si_nowait); + if (unlikely(err)) + AuIOErr("err %d\n", err); +} + +void au_whtmp_kick_rmdir(struct inode *dir, aufs_bindex_t bindex, + struct dentry *wh_dentry, struct au_whtmp_rmdir *args) +{ + int wkq_err; + struct super_block *sb; + + IMustLock(dir); + + /* all post-process will be done in do_rmdir_whtmp(). */ + sb = dir->i_sb; + args->dir = au_igrab(dir); + args->br = au_sbr(sb, bindex); + au_lcnt_inc(&args->br->br_count); + args->wh_dentry = dget(wh_dentry); + wkq_err = au_wkq_nowait(call_rmdir_whtmp, args, sb, /*flags*/0); + if (unlikely(wkq_err)) { + pr_warn("rmdir error %pd (%d), ignored\n", wh_dentry, wkq_err); + au_whtmp_rmdir_free(args); + } +} --- linux-azure-5.8-5.8.0.orig/fs/aufs/whout.h +++ linux-azure-5.8-5.8.0/fs/aufs/whout.h @@ -0,0 +1,86 @@ +/* SPDX-License-Identifier: GPL-2.0 */ +/* + * Copyright (C) 2005-2020 Junjiro R. Okajima + * + * This program, aufs is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; either version 2 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + */ + +/* + * whiteout for logical deletion and opaque directory + */ + +#ifndef __AUFS_WHOUT_H__ +#define __AUFS_WHOUT_H__ + +#ifdef __KERNEL__ + +#include "dir.h" + +/* whout.c */ +int au_wh_name_alloc(struct qstr *wh, const struct qstr *name); +int au_wh_test(struct dentry *h_parent, struct qstr *wh_name, int try_sio); +int au_diropq_test(struct dentry *h_dentry); +struct au_branch; +struct dentry *au_whtmp_lkup(struct dentry *h_parent, struct au_branch *br, + struct qstr *prefix); +int au_whtmp_ren(struct dentry *h_dentry, struct au_branch *br); +int au_wh_unlink_dentry(struct inode *h_dir, struct path *h_path, + struct dentry *dentry); +int au_wh_init(struct au_branch *br, struct super_block *sb); + +/* diropq flags */ +#define AuDiropq_CREATE 1 +#define au_ftest_diropq(flags, name) ((flags) & AuDiropq_##name) +#define au_fset_diropq(flags, name) \ + do { (flags) |= AuDiropq_##name; } while (0) +#define au_fclr_diropq(flags, name) \ + do { (flags) &= ~AuDiropq_##name; } while (0) + +struct dentry *au_diropq_sio(struct dentry *dentry, aufs_bindex_t bindex, + unsigned int flags); +struct dentry *au_wh_lkup(struct dentry *h_parent, struct qstr *base_name, + struct au_branch *br); +struct dentry *au_wh_create(struct dentry *dentry, aufs_bindex_t bindex, + struct dentry *h_parent); + +/* real rmdir for the whiteout-ed dir */ +struct au_whtmp_rmdir { + struct inode *dir; + struct au_branch *br; + struct dentry *wh_dentry; + struct au_nhash whlist; +}; + +struct au_whtmp_rmdir *au_whtmp_rmdir_alloc(struct super_block *sb, gfp_t gfp); +void au_whtmp_rmdir_free(struct au_whtmp_rmdir *whtmp); +int au_whtmp_rmdir(struct inode *dir, aufs_bindex_t bindex, + struct dentry *wh_dentry, struct au_nhash *whlist); +void au_whtmp_kick_rmdir(struct inode *dir, aufs_bindex_t bindex, + struct dentry *wh_dentry, struct au_whtmp_rmdir *args); + +/* ---------------------------------------------------------------------- */ + +static inline struct dentry *au_diropq_create(struct dentry *dentry, + aufs_bindex_t bindex) +{ + return au_diropq_sio(dentry, bindex, AuDiropq_CREATE); +} + +static inline int au_diropq_remove(struct dentry *dentry, aufs_bindex_t bindex) +{ + return PTR_ERR(au_diropq_sio(dentry, bindex, !AuDiropq_CREATE)); +} + +#endif /* __KERNEL__ */ +#endif /* __AUFS_WHOUT_H__ */ --- linux-azure-5.8-5.8.0.orig/fs/aufs/wkq.c +++ linux-azure-5.8-5.8.0/fs/aufs/wkq.c @@ -0,0 +1,372 @@ +// SPDX-License-Identifier: GPL-2.0 +/* + * Copyright (C) 2005-2020 Junjiro R. Okajima + * + * This program, aufs is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; either version 2 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + */ + +/* + * workqueue for asynchronous/super-io operations + * todo: try new credential scheme + */ + +#include +#include "aufs.h" + +/* internal workqueue named AUFS_WKQ_NAME */ + +static struct workqueue_struct *au_wkq; + +struct au_wkinfo { + struct work_struct wk; + struct kobject *kobj; + + unsigned int flags; /* see wkq.h */ + + au_wkq_func_t func; + void *args; + +#ifdef CONFIG_LOCKDEP + int dont_check; + struct held_lock **hlock; +#endif + + struct completion *comp; +}; + +/* ---------------------------------------------------------------------- */ +/* + * Aufs passes some operations to the workqueue such as the internal copyup. + * This scheme looks rather unnatural for LOCKDEP debugging feature, since the + * job run by workqueue depends upon the locks acquired in the other task. + * Delegating a small operation to the workqueue, aufs passes its lockdep + * information too. And the job in the workqueue restores the info in order to + * pretend as if it acquired those locks. This is just to make LOCKDEP work + * correctly and expectedly. + */ + +#ifndef CONFIG_LOCKDEP +AuStubInt0(au_wkq_lockdep_alloc, struct au_wkinfo *wkinfo); +AuStubVoid(au_wkq_lockdep_free, struct au_wkinfo *wkinfo); +AuStubVoid(au_wkq_lockdep_pre, struct au_wkinfo *wkinfo); +AuStubVoid(au_wkq_lockdep_post, struct au_wkinfo *wkinfo); +AuStubVoid(au_wkq_lockdep_init, struct au_wkinfo *wkinfo); +#else +static void au_wkq_lockdep_init(struct au_wkinfo *wkinfo) +{ + wkinfo->hlock = NULL; + wkinfo->dont_check = 0; +} + +/* + * 1: matched + * 0: unmatched + */ +static int au_wkq_lockdep_test(struct lock_class_key *key, const char *name) +{ + static DEFINE_SPINLOCK(spin); + static struct { + char *name; + struct lock_class_key *key; + } a[] = { + { .name = "&sbinfo->si_rwsem" }, + { .name = "&finfo->fi_rwsem" }, + { .name = "&dinfo->di_rwsem" }, + { .name = "&iinfo->ii_rwsem" } + }; + static int set; + int i; + + /* lockless read from 'set.' see below */ + if (set == ARRAY_SIZE(a)) { + for (i = 0; i < ARRAY_SIZE(a); i++) + if (a[i].key == key) + goto match; + goto unmatch; + } + + spin_lock(&spin); + if (set) + for (i = 0; i < ARRAY_SIZE(a); i++) + if (a[i].key == key) { + spin_unlock(&spin); + goto match; + } + for (i = 0; i < ARRAY_SIZE(a); i++) { + if (a[i].key) { + if (unlikely(a[i].key == key)) { /* rare but possible */ + spin_unlock(&spin); + goto match; + } else + continue; + } + if (strstr(a[i].name, name)) { + /* + * the order of these three lines is important for the + * lockless read above. + */ + a[i].key = key; + spin_unlock(&spin); + set++; + /* AuDbg("%d, %s\n", set, name); */ + goto match; + } + } + spin_unlock(&spin); + goto unmatch; + +match: + return 1; +unmatch: + return 0; +} + +static int au_wkq_lockdep_alloc(struct au_wkinfo *wkinfo) +{ + int err, n; + struct task_struct *curr; + struct held_lock **hl, *held_locks, *p; + + err = 0; + curr = current; + wkinfo->dont_check = lockdep_recursing(curr); + if (wkinfo->dont_check) + goto out; + n = curr->lockdep_depth; + if (!n) + goto out; + + err = -ENOMEM; + wkinfo->hlock = kmalloc_array(n + 1, sizeof(*wkinfo->hlock), GFP_NOFS); + if (unlikely(!wkinfo->hlock)) + goto out; + + err = 0; +#if 0 /* left for debugging */ + if (0 && au_debug_test()) + lockdep_print_held_locks(curr); +#endif + held_locks = curr->held_locks; + hl = wkinfo->hlock; + while (n--) { + p = held_locks++; + if (au_wkq_lockdep_test(p->instance->key, p->instance->name)) + *hl++ = p; + } + *hl = NULL; + +out: + return err; +} + +static void au_wkq_lockdep_free(struct au_wkinfo *wkinfo) +{ + au_kfree_try_rcu(wkinfo->hlock); +} + +static void au_wkq_lockdep_pre(struct au_wkinfo *wkinfo) +{ + struct held_lock *p, **hl = wkinfo->hlock; + int subclass; + + if (wkinfo->dont_check) + lockdep_off(); + if (!hl) + return; + while ((p = *hl++)) { /* assignment */ + subclass = lockdep_hlock_class(p)->subclass; + /* AuDbg("%s, %d\n", p->instance->name, subclass); */ + if (p->read) + rwsem_acquire_read(p->instance, subclass, 0, + /*p->acquire_ip*/_RET_IP_); + else + rwsem_acquire(p->instance, subclass, 0, + /*p->acquire_ip*/_RET_IP_); + } +} + +static void au_wkq_lockdep_post(struct au_wkinfo *wkinfo) +{ + struct held_lock *p, **hl = wkinfo->hlock; + + if (wkinfo->dont_check) + lockdep_on(); + if (!hl) + return; + while ((p = *hl++)) /* assignment */ + rwsem_release(p->instance, /*p->acquire_ip*/_RET_IP_); +} +#endif + +static void wkq_func(struct work_struct *wk) +{ + struct au_wkinfo *wkinfo = container_of(wk, struct au_wkinfo, wk); + + AuDebugOn(!uid_eq(current_fsuid(), GLOBAL_ROOT_UID)); + AuDebugOn(rlimit(RLIMIT_FSIZE) != RLIM_INFINITY); + + au_wkq_lockdep_pre(wkinfo); + wkinfo->func(wkinfo->args); + au_wkq_lockdep_post(wkinfo); + if (au_ftest_wkq(wkinfo->flags, WAIT)) + complete(wkinfo->comp); + else { + kobject_put(wkinfo->kobj); + module_put(THIS_MODULE); /* todo: ?? */ + au_kfree_rcu(wkinfo); + } +} + +/* + * Since struct completion is large, try allocating it dynamically. + */ +#define AuWkqCompDeclare(name) struct completion *comp = NULL + +static int au_wkq_comp_alloc(struct au_wkinfo *wkinfo, struct completion **comp) +{ + *comp = kmalloc(sizeof(**comp), GFP_NOFS); + if (*comp) { + init_completion(*comp); + wkinfo->comp = *comp; + return 0; + } + return -ENOMEM; +} + +static void au_wkq_comp_free(struct completion *comp) +{ + au_kfree_rcu(comp); +} + +static void au_wkq_run(struct au_wkinfo *wkinfo) +{ + if (au_ftest_wkq(wkinfo->flags, NEST)) { + if (au_wkq_test()) { + AuWarn1("wkq from wkq, unless silly-rename on NFS," + " due to a dead dir by UDBA," + " or async xino write?\n"); + AuDebugOn(au_ftest_wkq(wkinfo->flags, WAIT)); + } + } else + au_dbg_verify_kthread(); + + if (au_ftest_wkq(wkinfo->flags, WAIT)) { + INIT_WORK_ONSTACK(&wkinfo->wk, wkq_func); + queue_work(au_wkq, &wkinfo->wk); + } else { + INIT_WORK(&wkinfo->wk, wkq_func); + schedule_work(&wkinfo->wk); + } +} + +/* + * Be careful. It is easy to make deadlock happen. + * processA: lock, wkq and wait + * processB: wkq and wait, lock in wkq + * --> deadlock + */ +int au_wkq_do_wait(unsigned int flags, au_wkq_func_t func, void *args) +{ + int err; + AuWkqCompDeclare(comp); + struct au_wkinfo wkinfo = { + .flags = flags, + .func = func, + .args = args + }; + + err = au_wkq_comp_alloc(&wkinfo, &comp); + if (unlikely(err)) + goto out; + err = au_wkq_lockdep_alloc(&wkinfo); + if (unlikely(err)) + goto out_comp; + if (!err) { + au_wkq_run(&wkinfo); + /* no timeout, no interrupt */ + wait_for_completion(wkinfo.comp); + } + au_wkq_lockdep_free(&wkinfo); + +out_comp: + au_wkq_comp_free(comp); +out: + destroy_work_on_stack(&wkinfo.wk); + return err; +} + +/* + * Note: dget/dput() in func for aufs dentries are not supported. It will be a + * problem in a concurrent umounting. + */ +int au_wkq_nowait(au_wkq_func_t func, void *args, struct super_block *sb, + unsigned int flags) +{ + int err; + struct au_wkinfo *wkinfo; + + atomic_inc(&au_sbi(sb)->si_nowait.nw_len); + + /* + * wkq_func() must free this wkinfo. + * it highly depends upon the implementation of workqueue. + */ + err = 0; + wkinfo = kmalloc(sizeof(*wkinfo), GFP_NOFS); + if (wkinfo) { + wkinfo->kobj = &au_sbi(sb)->si_kobj; + wkinfo->flags = flags & ~AuWkq_WAIT; + wkinfo->func = func; + wkinfo->args = args; + wkinfo->comp = NULL; + au_wkq_lockdep_init(wkinfo); + kobject_get(wkinfo->kobj); + __module_get(THIS_MODULE); /* todo: ?? */ + + au_wkq_run(wkinfo); + } else { + err = -ENOMEM; + au_nwt_done(&au_sbi(sb)->si_nowait); + } + + return err; +} + +/* ---------------------------------------------------------------------- */ + +void au_nwt_init(struct au_nowait_tasks *nwt) +{ + atomic_set(&nwt->nw_len, 0); + /* smp_mb(); */ /* atomic_set */ + init_waitqueue_head(&nwt->nw_wq); +} + +void au_wkq_fin(void) +{ + destroy_workqueue(au_wkq); +} + +int __init au_wkq_init(void) +{ + int err; + + err = 0; + au_wkq = alloc_workqueue(AUFS_WKQ_NAME, 0, WQ_DFL_ACTIVE); + if (IS_ERR(au_wkq)) + err = PTR_ERR(au_wkq); + else if (!au_wkq) + err = -ENOMEM; + + return err; +} --- linux-azure-5.8-5.8.0.orig/fs/aufs/wkq.h +++ linux-azure-5.8-5.8.0/fs/aufs/wkq.h @@ -0,0 +1,89 @@ +/* SPDX-License-Identifier: GPL-2.0 */ +/* + * Copyright (C) 2005-2020 Junjiro R. Okajima + * + * This program, aufs is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; either version 2 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + */ + +/* + * workqueue for asynchronous/super-io operations + * todo: try new credentials management scheme + */ + +#ifndef __AUFS_WKQ_H__ +#define __AUFS_WKQ_H__ + +#ifdef __KERNEL__ + +#include + +struct super_block; + +/* ---------------------------------------------------------------------- */ + +/* + * in the next operation, wait for the 'nowait' tasks in system-wide workqueue + */ +struct au_nowait_tasks { + atomic_t nw_len; + wait_queue_head_t nw_wq; +}; + +/* ---------------------------------------------------------------------- */ + +typedef void (*au_wkq_func_t)(void *args); + +/* wkq flags */ +#define AuWkq_WAIT 1 +#define AuWkq_NEST (1 << 1) +#define au_ftest_wkq(flags, name) ((flags) & AuWkq_##name) +#define au_fset_wkq(flags, name) \ + do { (flags) |= AuWkq_##name; } while (0) +#define au_fclr_wkq(flags, name) \ + do { (flags) &= ~AuWkq_##name; } while (0) + +/* wkq.c */ +int au_wkq_do_wait(unsigned int flags, au_wkq_func_t func, void *args); +int au_wkq_nowait(au_wkq_func_t func, void *args, struct super_block *sb, + unsigned int flags); +void au_nwt_init(struct au_nowait_tasks *nwt); +int __init au_wkq_init(void); +void au_wkq_fin(void); + +/* ---------------------------------------------------------------------- */ + +static inline int au_wkq_test(void) +{ + return current->flags & PF_WQ_WORKER; +} + +static inline int au_wkq_wait(au_wkq_func_t func, void *args) +{ + return au_wkq_do_wait(AuWkq_WAIT, func, args); +} + +static inline void au_nwt_done(struct au_nowait_tasks *nwt) +{ + if (atomic_dec_and_test(&nwt->nw_len)) + wake_up_all(&nwt->nw_wq); +} + +static inline int au_nwt_flush(struct au_nowait_tasks *nwt) +{ + wait_event(nwt->nw_wq, !atomic_read(&nwt->nw_len)); + return 0; +} + +#endif /* __KERNEL__ */ +#endif /* __AUFS_WKQ_H__ */ --- linux-azure-5.8-5.8.0.orig/fs/aufs/xattr.c +++ linux-azure-5.8-5.8.0/fs/aufs/xattr.c @@ -0,0 +1,356 @@ +// SPDX-License-Identifier: GPL-2.0 +/* + * Copyright (C) 2014-2020 Junjiro R. Okajima + * + * This program, aufs is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; either version 2 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + */ + +/* + * handling xattr functions + */ + +#include +#include +#include +#include "aufs.h" + +static int au_xattr_ignore(int err, char *name, unsigned int ignore_flags) +{ + if (!ignore_flags) + goto out; + switch (err) { + case -ENOMEM: + case -EDQUOT: + goto out; + } + + if ((ignore_flags & AuBrAttr_ICEX) == AuBrAttr_ICEX) { + err = 0; + goto out; + } + +#define cmp(brattr, prefix) do { \ + if (!strncmp(name, XATTR_##prefix##_PREFIX, \ + XATTR_##prefix##_PREFIX_LEN)) { \ + if (ignore_flags & AuBrAttr_ICEX_##brattr) \ + err = 0; \ + goto out; \ + } \ + } while (0) + + cmp(SEC, SECURITY); + cmp(SYS, SYSTEM); + cmp(TR, TRUSTED); + cmp(USR, USER); +#undef cmp + + if (ignore_flags & AuBrAttr_ICEX_OTH) + err = 0; + +out: + return err; +} + +static const int au_xattr_out_of_list = AuBrAttr_ICEX_OTH << 1; + +static int au_do_cpup_xattr(struct dentry *h_dst, struct dentry *h_src, + char *name, char **buf, unsigned int ignore_flags, + unsigned int verbose) +{ + int err; + ssize_t ssz; + struct inode *h_idst; + + ssz = vfs_getxattr_alloc(h_src, name, buf, 0, GFP_NOFS); + err = ssz; + if (unlikely(err <= 0)) { + if (err == -ENODATA + || (err == -EOPNOTSUPP + && ((ignore_flags & au_xattr_out_of_list) + || (au_test_nfs_noacl(d_inode(h_src)) + && (!strcmp(name, XATTR_NAME_POSIX_ACL_ACCESS) + || !strcmp(name, + XATTR_NAME_POSIX_ACL_DEFAULT)))) + )) + err = 0; + if (err && (verbose || au_debug_test())) + pr_err("%s, err %d\n", name, err); + goto out; + } + + /* unlock it temporary */ + h_idst = d_inode(h_dst); + inode_unlock(h_idst); + err = vfsub_setxattr(h_dst, name, *buf, ssz, /*flags*/0); + inode_lock_nested(h_idst, AuLsc_I_CHILD2); + if (unlikely(err)) { + if (verbose || au_debug_test()) + pr_err("%s, err %d\n", name, err); + err = au_xattr_ignore(err, name, ignore_flags); + } + +out: + return err; +} + +int au_cpup_xattr(struct dentry *h_dst, struct dentry *h_src, int ignore_flags, + unsigned int verbose) +{ + int err, unlocked, acl_access, acl_default; + ssize_t ssz; + struct inode *h_isrc, *h_idst; + char *value, *p, *o, *e; + + /* try stopping to update the source inode while we are referencing */ + /* there should not be the parent-child relationship between them */ + h_isrc = d_inode(h_src); + h_idst = d_inode(h_dst); + inode_unlock(h_idst); + inode_lock_shared_nested(h_isrc, AuLsc_I_CHILD); + inode_lock_nested(h_idst, AuLsc_I_CHILD2); + unlocked = 0; + + /* some filesystems don't list POSIX ACL, for example tmpfs */ + ssz = vfs_listxattr(h_src, NULL, 0); + err = ssz; + if (unlikely(err < 0)) { + AuTraceErr(err); + if (err == -ENODATA + || err == -EOPNOTSUPP) + err = 0; /* ignore */ + goto out; + } + + err = 0; + p = NULL; + o = NULL; + if (ssz) { + err = -ENOMEM; + p = kmalloc(ssz, GFP_NOFS); + o = p; + if (unlikely(!p)) + goto out; + err = vfs_listxattr(h_src, p, ssz); + } + inode_unlock_shared(h_isrc); + unlocked = 1; + AuDbg("err %d, ssz %zd\n", err, ssz); + if (unlikely(err < 0)) + goto out_free; + + err = 0; + e = p + ssz; + value = NULL; + acl_access = 0; + acl_default = 0; + while (!err && p < e) { + acl_access |= !strncmp(p, XATTR_NAME_POSIX_ACL_ACCESS, + sizeof(XATTR_NAME_POSIX_ACL_ACCESS) - 1); + acl_default |= !strncmp(p, XATTR_NAME_POSIX_ACL_DEFAULT, + sizeof(XATTR_NAME_POSIX_ACL_DEFAULT) + - 1); + err = au_do_cpup_xattr(h_dst, h_src, p, &value, ignore_flags, + verbose); + p += strlen(p) + 1; + } + AuTraceErr(err); + ignore_flags |= au_xattr_out_of_list; + if (!err && !acl_access) { + err = au_do_cpup_xattr(h_dst, h_src, + XATTR_NAME_POSIX_ACL_ACCESS, &value, + ignore_flags, verbose); + AuTraceErr(err); + } + if (!err && !acl_default) { + err = au_do_cpup_xattr(h_dst, h_src, + XATTR_NAME_POSIX_ACL_DEFAULT, &value, + ignore_flags, verbose); + AuTraceErr(err); + } + + au_kfree_try_rcu(value); + +out_free: + au_kfree_try_rcu(o); +out: + if (!unlocked) + inode_unlock_shared(h_isrc); + AuTraceErr(err); + return err; +} + +/* ---------------------------------------------------------------------- */ + +static int au_smack_reentering(struct super_block *sb) +{ +#if IS_ENABLED(CONFIG_SECURITY_SMACK) || IS_ENABLED(CONFIG_SECURITY_SELINUX) + /* + * as a part of lookup, smack_d_instantiate() is called, and it calls + * i_op->getxattr(). ouch. + */ + return si_pid_test(sb); +#else + return 0; +#endif +} + +enum { + AU_XATTR_LIST, + AU_XATTR_GET +}; + +struct au_lgxattr { + int type; + union { + struct { + char *list; + size_t size; + } list; + struct { + const char *name; + void *value; + size_t size; + } get; + } u; +}; + +static ssize_t au_lgxattr(struct dentry *dentry, struct inode *inode, + struct au_lgxattr *arg) +{ + ssize_t err; + int reenter; + struct path h_path; + struct super_block *sb; + + sb = dentry->d_sb; + reenter = au_smack_reentering(sb); + if (!reenter) { + err = si_read_lock(sb, AuLock_FLUSH | AuLock_NOPLM); + if (unlikely(err)) + goto out; + } + err = au_h_path_getattr(dentry, inode, /*force*/1, &h_path, reenter); + if (unlikely(err)) + goto out_si; + if (unlikely(!h_path.dentry)) + /* illegally overlapped or something */ + goto out_di; /* pretending success */ + + /* always topmost entry only */ + switch (arg->type) { + case AU_XATTR_LIST: + err = vfs_listxattr(h_path.dentry, + arg->u.list.list, arg->u.list.size); + break; + case AU_XATTR_GET: + AuDebugOn(d_is_negative(h_path.dentry)); + err = vfs_getxattr(h_path.dentry, + arg->u.get.name, arg->u.get.value, + arg->u.get.size); + break; + } + +out_di: + if (!reenter) + di_read_unlock(dentry, AuLock_IR); +out_si: + if (!reenter) + si_read_unlock(sb); +out: + AuTraceErr(err); + return err; +} + +ssize_t aufs_listxattr(struct dentry *dentry, char *list, size_t size) +{ + struct au_lgxattr arg = { + .type = AU_XATTR_LIST, + .u.list = { + .list = list, + .size = size + }, + }; + + return au_lgxattr(dentry, /*inode*/NULL, &arg); +} + +static ssize_t au_getxattr(struct dentry *dentry, struct inode *inode, + const char *name, void *value, size_t size) +{ + struct au_lgxattr arg = { + .type = AU_XATTR_GET, + .u.get = { + .name = name, + .value = value, + .size = size + }, + }; + + return au_lgxattr(dentry, inode, &arg); +} + +static int au_setxattr(struct dentry *dentry, struct inode *inode, + const char *name, const void *value, size_t size, + int flags) +{ + struct au_sxattr arg = { + .type = AU_XATTR_SET, + .u.set = { + .name = name, + .value = value, + .size = size, + .flags = flags + }, + }; + + return au_sxattr(dentry, inode, &arg); +} + +/* ---------------------------------------------------------------------- */ + +static int au_xattr_get(const struct xattr_handler *handler, + struct dentry *dentry, struct inode *inode, + const char *name, void *buffer, size_t size) +{ + return au_getxattr(dentry, inode, name, buffer, size); +} + +static int au_xattr_set(const struct xattr_handler *handler, + struct dentry *dentry, struct inode *inode, + const char *name, const void *value, size_t size, + int flags) +{ + return au_setxattr(dentry, inode, name, value, size, flags); +} + +static const struct xattr_handler au_xattr_handler = { + .name = "", + .prefix = "", + .get = au_xattr_get, + .set = au_xattr_set +}; + +static const struct xattr_handler *au_xattr_handlers[] = { +#ifdef CONFIG_FS_POSIX_ACL + &posix_acl_access_xattr_handler, + &posix_acl_default_xattr_handler, +#endif + &au_xattr_handler, /* must be last */ + NULL +}; + +void au_xattr_init(struct super_block *sb) +{ + sb->s_xattr = au_xattr_handlers; +} --- linux-azure-5.8-5.8.0.orig/fs/aufs/xino.c +++ linux-azure-5.8-5.8.0/fs/aufs/xino.c @@ -0,0 +1,1966 @@ +// SPDX-License-Identifier: GPL-2.0 +/* + * Copyright (C) 2005-2020 Junjiro R. Okajima + * + * This program, aufs is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; either version 2 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + */ + +/* + * external inode number translation table and bitmap + * + * things to consider + * - the lifetime + * + au_xino object + * + XINO files (xino, xib, xigen) + * + dynamic debugfs entries (xiN) + * + static debugfs entries (xib, xigen) + * + static sysfs entry (xi_path) + * - several entry points to handle them. + * + mount(2) without xino option (default) + * + mount(2) with xino option + * + mount(2) with noxino option + * + umount(2) + * + remount with add/del branches + * + remount with xino/noxino options + */ + +#include +#include +#include "aufs.h" + +static aufs_bindex_t sbr_find_shared(struct super_block *sb, aufs_bindex_t btop, + aufs_bindex_t bbot, + struct super_block *h_sb) +{ + /* todo: try binary-search if the branches are many */ + for (; btop <= bbot; btop++) + if (h_sb == au_sbr_sb(sb, btop)) + return btop; + return -1; +} + +/* + * find another branch who is on the same filesystem of the specified + * branch{@btgt}. search until @bbot. + */ +static aufs_bindex_t is_sb_shared(struct super_block *sb, aufs_bindex_t btgt, + aufs_bindex_t bbot) +{ + aufs_bindex_t bindex; + struct super_block *tgt_sb; + + tgt_sb = au_sbr_sb(sb, btgt); + bindex = sbr_find_shared(sb, /*btop*/0, btgt - 1, tgt_sb); + if (bindex < 0) + bindex = sbr_find_shared(sb, btgt + 1, bbot, tgt_sb); + + return bindex; +} + +/* ---------------------------------------------------------------------- */ + +/* + * stop unnecessary notify events at creating xino files + */ + +aufs_bindex_t au_xi_root(struct super_block *sb, struct dentry *dentry) +{ + aufs_bindex_t bfound, bindex, bbot; + struct dentry *parent; + struct au_branch *br; + + bfound = -1; + parent = dentry->d_parent; /* safe d_parent access */ + bbot = au_sbbot(sb); + for (bindex = 0; bindex <= bbot; bindex++) { + br = au_sbr(sb, bindex); + if (au_br_dentry(br) == parent) { + bfound = bindex; + break; + } + } + + AuDbg("bfound b%d\n", bfound); + return bfound; +} + +struct au_xino_lock_dir { + struct au_hinode *hdir; + struct dentry *parent; + struct inode *dir; +}; + +static struct dentry *au_dget_parent_lock(struct dentry *dentry, + unsigned int lsc) +{ + struct dentry *parent; + struct inode *dir; + + parent = dget_parent(dentry); + dir = d_inode(parent); + inode_lock_nested(dir, lsc); +#if 0 /* it should not happen */ + spin_lock(&dentry->d_lock); + if (unlikely(dentry->d_parent != parent)) { + spin_unlock(&dentry->d_lock); + inode_unlock(dir); + dput(parent); + parent = NULL; + goto out; + } + spin_unlock(&dentry->d_lock); + +out: +#endif + return parent; +} + +static void au_xino_lock_dir(struct super_block *sb, struct path *xipath, + struct au_xino_lock_dir *ldir) +{ + aufs_bindex_t bindex; + + ldir->hdir = NULL; + bindex = au_xi_root(sb, xipath->dentry); + if (bindex >= 0) { + /* rw branch root */ + ldir->hdir = au_hi(d_inode(sb->s_root), bindex); + au_hn_inode_lock_nested(ldir->hdir, AuLsc_I_PARENT); + } else { + /* other */ + ldir->parent = au_dget_parent_lock(xipath->dentry, + AuLsc_I_PARENT); + ldir->dir = d_inode(ldir->parent); + } +} + +static void au_xino_unlock_dir(struct au_xino_lock_dir *ldir) +{ + if (ldir->hdir) + au_hn_inode_unlock(ldir->hdir); + else { + inode_unlock(ldir->dir); + dput(ldir->parent); + } +} + +/* ---------------------------------------------------------------------- */ + +/* + * create and set a new xino file + */ +struct file *au_xino_create(struct super_block *sb, char *fpath, int silent, + int wbrtop) +{ + struct file *file; + struct dentry *h_parent, *d; + struct inode *h_dir, *inode; + int err; + static DEFINE_MUTEX(mtx); + + /* + * at mount-time, and the xino file is the default path, + * hnotify is disabled so we have no notify events to ignore. + * when a user specified the xino, we cannot get au_hdir to be ignored. + */ + if (!wbrtop) + mutex_lock(&mtx); + file = vfsub_filp_open(fpath, O_RDWR | O_CREAT | O_EXCL | O_LARGEFILE + /* | __FMODE_NONOTIFY */, + 0666); + if (IS_ERR(file)) { + if (!wbrtop) + mutex_unlock(&mtx); + if (!silent) + pr_err("open %s(%ld)\n", fpath, PTR_ERR(file)); + return file; + } + + /* keep file count */ + err = 0; + d = file->f_path.dentry; + h_parent = au_dget_parent_lock(d, AuLsc_I_PARENT); + if (!wbrtop) + mutex_unlock(&mtx); + /* mnt_want_write() is unnecessary here */ + h_dir = d_inode(h_parent); + inode = file_inode(file); + /* no delegation since it is just created */ + if (inode->i_nlink) + err = vfsub_unlink(h_dir, &file->f_path, /*delegated*/NULL, + /*force*/0); + inode_unlock(h_dir); + dput(h_parent); + if (unlikely(err)) { + if (!silent) + pr_err("unlink %s(%d)\n", fpath, err); + goto out; + } + + err = -EINVAL; + if (unlikely(sb == d->d_sb)) { + if (!silent) + pr_err("%s must be outside\n", fpath); + goto out; + } + if (unlikely(au_test_fs_bad_xino(d->d_sb))) { + if (!silent) + pr_err("xino doesn't support %s(%s)\n", + fpath, au_sbtype(d->d_sb)); + goto out; + } + return file; /* success */ + +out: + fput(file); + file = ERR_PTR(err); + return file; +} + +/* + * create a new xinofile at the same place/path as @base. + */ +struct file *au_xino_create2(struct super_block *sb, struct path *base, + struct file *copy_src) +{ + struct file *file; + struct dentry *dentry, *parent; + struct inode *dir, *delegated; + struct qstr *name; + struct path path; + int err, do_unlock; + struct au_xino_lock_dir ldir; + + do_unlock = 1; + au_xino_lock_dir(sb, base, &ldir); + dentry = base->dentry; + parent = dentry->d_parent; /* dir inode is locked */ + dir = d_inode(parent); + IMustLock(dir); + + name = &dentry->d_name; + path.dentry = vfsub_lookup_one_len(name->name, parent, name->len); + if (IS_ERR(path.dentry)) { + file = (void *)path.dentry; + pr_err("%pd lookup err %ld\n", dentry, PTR_ERR(path.dentry)); + goto out; + } + + /* no need to mnt_want_write() since we call dentry_open() later */ + err = vfs_create(dir, path.dentry, 0666, NULL); + if (unlikely(err)) { + file = ERR_PTR(err); + pr_err("%pd create err %d\n", dentry, err); + goto out_dput; + } + + path.mnt = base->mnt; + file = vfsub_dentry_open(&path, + O_RDWR | O_CREAT | O_EXCL | O_LARGEFILE + /* | __FMODE_NONOTIFY */); + if (IS_ERR(file)) { + pr_err("%pd open err %ld\n", dentry, PTR_ERR(file)); + goto out_dput; + } + + delegated = NULL; + err = vfsub_unlink(dir, &file->f_path, &delegated, /*force*/0); + au_xino_unlock_dir(&ldir); + do_unlock = 0; + if (unlikely(err == -EWOULDBLOCK)) { + pr_warn("cannot retry for NFSv4 delegation" + " for an internal unlink\n"); + iput(delegated); + } + if (unlikely(err)) { + pr_err("%pd unlink err %d\n", dentry, err); + goto out_fput; + } + + if (copy_src) { + /* no one can touch copy_src xino */ + err = au_copy_file(file, copy_src, vfsub_f_size_read(copy_src)); + if (unlikely(err)) { + pr_err("%pd copy err %d\n", dentry, err); + goto out_fput; + } + } + goto out_dput; /* success */ + +out_fput: + fput(file); + file = ERR_PTR(err); +out_dput: + dput(path.dentry); +out: + if (do_unlock) + au_xino_unlock_dir(&ldir); + return file; +} + +struct file *au_xino_file1(struct au_xino *xi) +{ + struct file *file; + unsigned int u, nfile; + + file = NULL; + nfile = xi->xi_nfile; + for (u = 0; u < nfile; u++) { + file = xi->xi_file[u]; + if (file) + break; + } + + return file; +} + +static int au_xino_file_set(struct au_xino *xi, int idx, struct file *file) +{ + int err; + struct file *f; + void *p; + + if (file) + get_file(file); + + err = 0; + f = NULL; + if (idx < xi->xi_nfile) { + f = xi->xi_file[idx]; + if (f) + fput(f); + } else { + p = au_kzrealloc(xi->xi_file, + sizeof(*xi->xi_file) * xi->xi_nfile, + sizeof(*xi->xi_file) * (idx + 1), + GFP_NOFS, /*may_shrink*/0); + if (p) { + MtxMustLock(&xi->xi_mtx); + xi->xi_file = p; + xi->xi_nfile = idx + 1; + } else { + err = -ENOMEM; + if (file) + fput(file); + goto out; + } + } + xi->xi_file[idx] = file; + +out: + return err; +} + +/* + * if @xinew->xi is not set, then create new xigen file. + */ +struct file *au_xi_new(struct super_block *sb, struct au_xi_new *xinew) +{ + struct file *file; + int err; + + SiMustAnyLock(sb); + + file = au_xino_create2(sb, xinew->base, xinew->copy_src); + if (IS_ERR(file)) { + err = PTR_ERR(file); + pr_err("%s[%d], err %d\n", + xinew->xi ? "xino" : "xigen", + xinew->idx, err); + goto out; + } + + if (xinew->xi) + err = au_xino_file_set(xinew->xi, xinew->idx, file); + else { + BUG(); + /* todo: make xigen file an array */ + /* err = au_xigen_file_set(sb, xinew->idx, file); */ + } + fput(file); + if (unlikely(err)) + file = ERR_PTR(err); + +out: + return file; +} + +/* ---------------------------------------------------------------------- */ + +/* + * truncate xino files + */ +static int au_xino_do_trunc(struct super_block *sb, aufs_bindex_t bindex, + int idx, struct kstatfs *st) +{ + int err; + blkcnt_t blocks; + struct file *file, *new_xino; + struct au_xi_new xinew = { + .idx = idx + }; + + err = 0; + xinew.xi = au_sbr(sb, bindex)->br_xino; + file = au_xino_file(xinew.xi, idx); + if (!file) + goto out; + + xinew.base = &file->f_path; + err = vfs_statfs(xinew.base, st); + if (unlikely(err)) { + AuErr1("statfs err %d, ignored\n", err); + err = 0; + goto out; + } + + blocks = file_inode(file)->i_blocks; + pr_info("begin truncating xino(b%d-%d), ib%llu, %llu/%llu free blks\n", + bindex, idx, (u64)blocks, st->f_bfree, st->f_blocks); + + xinew.copy_src = file; + new_xino = au_xi_new(sb, &xinew); + if (IS_ERR(new_xino)) { + err = PTR_ERR(new_xino); + pr_err("xino(b%d-%d), err %d, ignored\n", bindex, idx, err); + goto out; + } + + err = vfs_statfs(&new_xino->f_path, st); + if (!err) + pr_info("end truncating xino(b%d-%d), ib%llu, %llu/%llu free blks\n", + bindex, idx, (u64)file_inode(new_xino)->i_blocks, + st->f_bfree, st->f_blocks); + else { + AuErr1("statfs err %d, ignored\n", err); + err = 0; + } + +out: + return err; +} + +int au_xino_trunc(struct super_block *sb, aufs_bindex_t bindex, int idx_begin) +{ + int err, i; + unsigned long jiffy; + aufs_bindex_t bbot; + struct kstatfs *st; + struct au_branch *br; + struct au_xino *xi; + + err = -ENOMEM; + st = kmalloc(sizeof(*st), GFP_NOFS); + if (unlikely(!st)) + goto out; + + err = -EINVAL; + bbot = au_sbbot(sb); + if (unlikely(bindex < 0 || bbot < bindex)) + goto out_st; + + err = 0; + jiffy = jiffies; + br = au_sbr(sb, bindex); + xi = br->br_xino; + for (i = idx_begin; !err && i < xi->xi_nfile; i++) + err = au_xino_do_trunc(sb, bindex, i, st); + if (!err) + au_sbi(sb)->si_xino_jiffy = jiffy; + +out_st: + au_kfree_rcu(st); +out: + return err; +} + +struct xino_do_trunc_args { + struct super_block *sb; + struct au_branch *br; + int idx; +}; + +static void xino_do_trunc(void *_args) +{ + struct xino_do_trunc_args *args = _args; + struct super_block *sb; + struct au_branch *br; + struct inode *dir; + int err, idx; + aufs_bindex_t bindex; + + err = 0; + sb = args->sb; + dir = d_inode(sb->s_root); + br = args->br; + idx = args->idx; + + si_noflush_write_lock(sb); + ii_read_lock_parent(dir); + bindex = au_br_index(sb, br->br_id); + err = au_xino_trunc(sb, bindex, idx); + ii_read_unlock(dir); + if (unlikely(err)) + pr_warn("err b%d, (%d)\n", bindex, err); + atomic_dec(&br->br_xino->xi_truncating); + au_lcnt_dec(&br->br_count); + si_write_unlock(sb); + au_nwt_done(&au_sbi(sb)->si_nowait); + au_kfree_rcu(args); +} + +/* + * returns the index in the xi_file array whose corresponding file is necessary + * to truncate, or -1 which means no need to truncate. + */ +static int xino_trunc_test(struct super_block *sb, struct au_branch *br) +{ + int err; + unsigned int u; + struct kstatfs st; + struct au_sbinfo *sbinfo; + struct au_xino *xi; + struct file *file; + + /* todo: si_xino_expire and the ratio should be customizable */ + sbinfo = au_sbi(sb); + if (time_before(jiffies, + sbinfo->si_xino_jiffy + sbinfo->si_xino_expire)) + return -1; + + /* truncation border */ + xi = br->br_xino; + for (u = 0; u < xi->xi_nfile; u++) { + file = au_xino_file(xi, u); + if (!file) + continue; + + err = vfs_statfs(&file->f_path, &st); + if (unlikely(err)) { + AuErr1("statfs err %d, ignored\n", err); + return -1; + } + if (div64_u64(st.f_bfree * 100, st.f_blocks) + >= AUFS_XINO_DEF_TRUNC) + return u; + } + + return -1; +} + +static void xino_try_trunc(struct super_block *sb, struct au_branch *br) +{ + int idx; + struct xino_do_trunc_args *args; + int wkq_err; + + idx = xino_trunc_test(sb, br); + if (idx < 0) + return; + + if (atomic_inc_return(&br->br_xino->xi_truncating) > 1) + goto out; + + /* lock and kfree() will be called in trunc_xino() */ + args = kmalloc(sizeof(*args), GFP_NOFS); + if (unlikely(!args)) { + AuErr1("no memory\n"); + goto out; + } + + au_lcnt_inc(&br->br_count); + args->sb = sb; + args->br = br; + args->idx = idx; + wkq_err = au_wkq_nowait(xino_do_trunc, args, sb, /*flags*/0); + if (!wkq_err) + return; /* success */ + + pr_err("wkq %d\n", wkq_err); + au_lcnt_dec(&br->br_count); + au_kfree_rcu(args); + +out: + atomic_dec(&br->br_xino->xi_truncating); +} + +/* ---------------------------------------------------------------------- */ + +struct au_xi_calc { + int idx; + loff_t pos; +}; + +static void au_xi_calc(struct super_block *sb, ino_t h_ino, + struct au_xi_calc *calc) +{ + loff_t maxent; + + maxent = au_xi_maxent(sb); + calc->idx = div64_u64_rem(h_ino, maxent, &calc->pos); + calc->pos *= sizeof(ino_t); +} + +static int au_xino_do_new_async(struct super_block *sb, struct au_branch *br, + struct au_xi_calc *calc) +{ + int err; + struct file *file; + struct au_xino *xi = br->br_xino; + struct au_xi_new xinew = { + .xi = xi + }; + + SiMustAnyLock(sb); + + err = 0; + if (!xi) + goto out; + + mutex_lock(&xi->xi_mtx); + file = au_xino_file(xi, calc->idx); + if (file) + goto out_mtx; + + file = au_xino_file(xi, /*idx*/-1); + AuDebugOn(!file); + xinew.idx = calc->idx; + xinew.base = &file->f_path; + /* xinew.copy_src = NULL; */ + file = au_xi_new(sb, &xinew); + if (IS_ERR(file)) + err = PTR_ERR(file); + +out_mtx: + mutex_unlock(&xi->xi_mtx); +out: + return err; +} + +struct au_xino_do_new_async_args { + struct super_block *sb; + struct au_branch *br; + struct au_xi_calc calc; + ino_t ino; +}; + +struct au_xi_writing { + struct hlist_bl_node node; + ino_t h_ino, ino; +}; + +static int au_xino_do_write(vfs_writef_t write, struct file *file, + struct au_xi_calc *calc, ino_t ino); + +static void au_xino_call_do_new_async(void *args) +{ + struct au_xino_do_new_async_args *a = args; + struct au_branch *br; + struct super_block *sb; + struct au_sbinfo *sbi; + struct inode *root; + struct file *file; + struct au_xi_writing *del, *p; + struct hlist_bl_head *hbl; + struct hlist_bl_node *pos; + int err; + + br = a->br; + sb = a->sb; + sbi = au_sbi(sb); + si_noflush_read_lock(sb); + root = d_inode(sb->s_root); + ii_read_lock_child(root); + err = au_xino_do_new_async(sb, br, &a->calc); + if (unlikely(err)) { + AuIOErr("err %d\n", err); + goto out; + } + + file = au_xino_file(br->br_xino, a->calc.idx); + AuDebugOn(!file); + err = au_xino_do_write(sbi->si_xwrite, file, &a->calc, a->ino); + if (unlikely(err)) { + AuIOErr("err %d\n", err); + goto out; + } + + del = NULL; + hbl = &br->br_xino->xi_writing; + hlist_bl_lock(hbl); + au_hbl_for_each(pos, hbl) { + p = container_of(pos, struct au_xi_writing, node); + if (p->ino == a->ino) { + del = p; + hlist_bl_del(&p->node); + break; + } + } + hlist_bl_unlock(hbl); + au_kfree_rcu(del); + +out: + au_lcnt_dec(&br->br_count); + ii_read_unlock(root); + si_read_unlock(sb); + au_nwt_done(&sbi->si_nowait); + au_kfree_rcu(a); +} + +/* + * create a new xino file asynchronously + */ +static int au_xino_new_async(struct super_block *sb, struct au_branch *br, + struct au_xi_calc *calc, ino_t ino) +{ + int err; + struct au_xino_do_new_async_args *arg; + + err = -ENOMEM; + arg = kmalloc(sizeof(*arg), GFP_NOFS); + if (unlikely(!arg)) + goto out; + + arg->sb = sb; + arg->br = br; + arg->calc = *calc; + arg->ino = ino; + au_lcnt_inc(&br->br_count); + err = au_wkq_nowait(au_xino_call_do_new_async, arg, sb, AuWkq_NEST); + if (unlikely(err)) { + pr_err("wkq %d\n", err); + au_lcnt_dec(&br->br_count); + au_kfree_rcu(arg); + } + +out: + return err; +} + +/* + * read @ino from xinofile for the specified branch{@sb, @bindex} + * at the position of @h_ino. + */ +int au_xino_read(struct super_block *sb, aufs_bindex_t bindex, ino_t h_ino, + ino_t *ino) +{ + int err; + ssize_t sz; + struct au_xi_calc calc; + struct au_sbinfo *sbinfo; + struct file *file; + struct au_xino *xi; + struct hlist_bl_head *hbl; + struct hlist_bl_node *pos; + struct au_xi_writing *p; + + *ino = 0; + if (!au_opt_test(au_mntflags(sb), XINO)) + return 0; /* no xino */ + + err = 0; + au_xi_calc(sb, h_ino, &calc); + xi = au_sbr(sb, bindex)->br_xino; + file = au_xino_file(xi, calc.idx); + if (!file) { + hbl = &xi->xi_writing; + hlist_bl_lock(hbl); + au_hbl_for_each(pos, hbl) { + p = container_of(pos, struct au_xi_writing, node); + if (p->h_ino == h_ino) { + AuDbg("hi%llu, i%llu, found\n", + (u64)p->h_ino, (u64)p->ino); + *ino = p->ino; + break; + } + } + hlist_bl_unlock(hbl); + return 0; + } else if (vfsub_f_size_read(file) < calc.pos + sizeof(*ino)) + return 0; /* no xino */ + + sbinfo = au_sbi(sb); + sz = xino_fread(sbinfo->si_xread, file, ino, sizeof(*ino), &calc.pos); + if (sz == sizeof(*ino)) + return 0; /* success */ + + err = sz; + if (unlikely(sz >= 0)) { + err = -EIO; + AuIOErr("xino read error (%zd)\n", sz); + } + return err; +} + +static int au_xino_do_write(vfs_writef_t write, struct file *file, + struct au_xi_calc *calc, ino_t ino) +{ + ssize_t sz; + + sz = xino_fwrite(write, file, &ino, sizeof(ino), &calc->pos); + if (sz == sizeof(ino)) + return 0; /* success */ + + AuIOErr("write failed (%zd)\n", sz); + return -EIO; +} + +/* + * write @ino to the xinofile for the specified branch{@sb, @bindex} + * at the position of @h_ino. + * even if @ino is zero, it is written to the xinofile and means no entry. + * if the size of the xino file on a specific filesystem exceeds the watermark, + * try truncating it. + */ +int au_xino_write(struct super_block *sb, aufs_bindex_t bindex, ino_t h_ino, + ino_t ino) +{ + int err; + unsigned int mnt_flags; + struct au_xi_calc calc; + struct file *file; + struct au_branch *br; + struct au_xino *xi; + struct au_xi_writing *p; + + SiMustAnyLock(sb); + + mnt_flags = au_mntflags(sb); + if (!au_opt_test(mnt_flags, XINO)) + return 0; + + au_xi_calc(sb, h_ino, &calc); + br = au_sbr(sb, bindex); + xi = br->br_xino; + file = au_xino_file(xi, calc.idx); + if (!file) { + /* store the inum pair into the list */ + p = kmalloc(sizeof(*p), GFP_NOFS | __GFP_NOFAIL); + p->h_ino = h_ino; + p->ino = ino; + au_hbl_add(&p->node, &xi->xi_writing); + + /* create and write a new xino file asynchronously */ + err = au_xino_new_async(sb, br, &calc, ino); + if (!err) + return 0; /* success */ + goto out; + } + + err = au_xino_do_write(au_sbi(sb)->si_xwrite, file, &calc, ino); + if (!err) { + br = au_sbr(sb, bindex); + if (au_opt_test(mnt_flags, TRUNC_XINO) + && au_test_fs_trunc_xino(au_br_sb(br))) + xino_try_trunc(sb, br); + return 0; /* success */ + } + +out: + AuIOErr("write failed (%d)\n", err); + return -EIO; +} + +static ssize_t xino_fread_wkq(vfs_readf_t func, struct file *file, void *buf, + size_t size, loff_t *pos); + +/* todo: unnecessary to support mmap_sem since kernel-space? */ +ssize_t xino_fread(vfs_readf_t func, struct file *file, void *kbuf, size_t size, + loff_t *pos) +{ + ssize_t err; + mm_segment_t oldfs; + union { + void *k; + char __user *u; + } buf; + int i; + const int prevent_endless = 10; + + i = 0; + buf.k = kbuf; + oldfs = get_fs(); + set_fs(KERNEL_DS); + do { + err = func(file, buf.u, size, pos); + if (err == -EINTR + && !au_wkq_test() + && fatal_signal_pending(current)) { + set_fs(oldfs); + err = xino_fread_wkq(func, file, kbuf, size, pos); + BUG_ON(err == -EINTR); + oldfs = get_fs(); + set_fs(KERNEL_DS); + } + } while (i++ < prevent_endless + && (err == -EAGAIN || err == -EINTR)); + set_fs(oldfs); + +#if 0 /* reserved for future use */ + if (err > 0) + fsnotify_access(file->f_path.dentry); +#endif + + return err; +} + +struct xino_fread_args { + ssize_t *errp; + vfs_readf_t func; + struct file *file; + void *buf; + size_t size; + loff_t *pos; +}; + +static void call_xino_fread(void *args) +{ + struct xino_fread_args *a = args; + *a->errp = xino_fread(a->func, a->file, a->buf, a->size, a->pos); +} + +static ssize_t xino_fread_wkq(vfs_readf_t func, struct file *file, void *buf, + size_t size, loff_t *pos) +{ + ssize_t err; + int wkq_err; + struct xino_fread_args args = { + .errp = &err, + .func = func, + .file = file, + .buf = buf, + .size = size, + .pos = pos + }; + + wkq_err = au_wkq_wait(call_xino_fread, &args); + if (unlikely(wkq_err)) + err = wkq_err; + + return err; +} + +static ssize_t xino_fwrite_wkq(vfs_writef_t func, struct file *file, void *buf, + size_t size, loff_t *pos); + +static ssize_t do_xino_fwrite(vfs_writef_t func, struct file *file, void *kbuf, + size_t size, loff_t *pos) +{ + ssize_t err; + mm_segment_t oldfs; + union { + void *k; + const char __user *u; + } buf; + int i; + const int prevent_endless = 10; + + i = 0; + buf.k = kbuf; + oldfs = get_fs(); + set_fs(KERNEL_DS); + do { + err = func(file, buf.u, size, pos); + if (err == -EINTR + && !au_wkq_test() + && fatal_signal_pending(current)) { + set_fs(oldfs); + err = xino_fwrite_wkq(func, file, kbuf, size, pos); + BUG_ON(err == -EINTR); + oldfs = get_fs(); + set_fs(KERNEL_DS); + } + } while (i++ < prevent_endless + && (err == -EAGAIN || err == -EINTR)); + set_fs(oldfs); + +#if 0 /* reserved for future use */ + if (err > 0) + fsnotify_modify(file->f_path.dentry); +#endif + + return err; +} + +struct do_xino_fwrite_args { + ssize_t *errp; + vfs_writef_t func; + struct file *file; + void *buf; + size_t size; + loff_t *pos; +}; + +static void call_do_xino_fwrite(void *args) +{ + struct do_xino_fwrite_args *a = args; + *a->errp = do_xino_fwrite(a->func, a->file, a->buf, a->size, a->pos); +} + +static ssize_t xino_fwrite_wkq(vfs_writef_t func, struct file *file, void *buf, + size_t size, loff_t *pos) +{ + ssize_t err; + int wkq_err; + struct do_xino_fwrite_args args = { + .errp = &err, + .func = func, + .file = file, + .buf = buf, + .size = size, + .pos = pos + }; + + /* + * it breaks RLIMIT_FSIZE and normal user's limit, + * users should care about quota and real 'filesystem full.' + */ + wkq_err = au_wkq_wait(call_do_xino_fwrite, &args); + if (unlikely(wkq_err)) + err = wkq_err; + + return err; +} + +ssize_t xino_fwrite(vfs_writef_t func, struct file *file, void *buf, + size_t size, loff_t *pos) +{ + ssize_t err; + + if (rlimit(RLIMIT_FSIZE) == RLIM_INFINITY) { + lockdep_off(); + err = do_xino_fwrite(func, file, buf, size, pos); + lockdep_on(); + } else { + lockdep_off(); + err = xino_fwrite_wkq(func, file, buf, size, pos); + lockdep_on(); + } + + return err; +} + +/* ---------------------------------------------------------------------- */ + +/* + * inode number bitmap + */ +static const int page_bits = (int)PAGE_SIZE * BITS_PER_BYTE; +static ino_t xib_calc_ino(unsigned long pindex, int bit) +{ + ino_t ino; + + AuDebugOn(bit < 0 || page_bits <= bit); + ino = AUFS_FIRST_INO + pindex * page_bits + bit; + return ino; +} + +static void xib_calc_bit(ino_t ino, unsigned long *pindex, int *bit) +{ + AuDebugOn(ino < AUFS_FIRST_INO); + ino -= AUFS_FIRST_INO; + *pindex = ino / page_bits; + *bit = ino % page_bits; +} + +static int xib_pindex(struct super_block *sb, unsigned long pindex) +{ + int err; + loff_t pos; + ssize_t sz; + struct au_sbinfo *sbinfo; + struct file *xib; + unsigned long *p; + + sbinfo = au_sbi(sb); + MtxMustLock(&sbinfo->si_xib_mtx); + AuDebugOn(pindex > ULONG_MAX / PAGE_SIZE + || !au_opt_test(sbinfo->si_mntflags, XINO)); + + if (pindex == sbinfo->si_xib_last_pindex) + return 0; + + xib = sbinfo->si_xib; + p = sbinfo->si_xib_buf; + pos = sbinfo->si_xib_last_pindex; + pos *= PAGE_SIZE; + sz = xino_fwrite(sbinfo->si_xwrite, xib, p, PAGE_SIZE, &pos); + if (unlikely(sz != PAGE_SIZE)) + goto out; + + pos = pindex; + pos *= PAGE_SIZE; + if (vfsub_f_size_read(xib) >= pos + PAGE_SIZE) + sz = xino_fread(sbinfo->si_xread, xib, p, PAGE_SIZE, &pos); + else { + memset(p, 0, PAGE_SIZE); + sz = xino_fwrite(sbinfo->si_xwrite, xib, p, PAGE_SIZE, &pos); + } + if (sz == PAGE_SIZE) { + sbinfo->si_xib_last_pindex = pindex; + return 0; /* success */ + } + +out: + AuIOErr1("write failed (%zd)\n", sz); + err = sz; + if (sz >= 0) + err = -EIO; + return err; +} + +static void au_xib_clear_bit(struct inode *inode) +{ + int err, bit; + unsigned long pindex; + struct super_block *sb; + struct au_sbinfo *sbinfo; + + AuDebugOn(inode->i_nlink); + + sb = inode->i_sb; + xib_calc_bit(inode->i_ino, &pindex, &bit); + AuDebugOn(page_bits <= bit); + sbinfo = au_sbi(sb); + mutex_lock(&sbinfo->si_xib_mtx); + err = xib_pindex(sb, pindex); + if (!err) { + clear_bit(bit, sbinfo->si_xib_buf); + sbinfo->si_xib_next_bit = bit; + } + mutex_unlock(&sbinfo->si_xib_mtx); +} + +/* ---------------------------------------------------------------------- */ + +/* + * truncate a xino bitmap file + */ + +/* todo: slow */ +static int do_xib_restore(struct super_block *sb, struct file *file, void *page) +{ + int err, bit; + ssize_t sz; + unsigned long pindex; + loff_t pos, pend; + struct au_sbinfo *sbinfo; + vfs_readf_t func; + ino_t *ino; + unsigned long *p; + + err = 0; + sbinfo = au_sbi(sb); + MtxMustLock(&sbinfo->si_xib_mtx); + p = sbinfo->si_xib_buf; + func = sbinfo->si_xread; + pend = vfsub_f_size_read(file); + pos = 0; + while (pos < pend) { + sz = xino_fread(func, file, page, PAGE_SIZE, &pos); + err = sz; + if (unlikely(sz <= 0)) + goto out; + + err = 0; + for (ino = page; sz > 0; ino++, sz -= sizeof(ino)) { + if (unlikely(*ino < AUFS_FIRST_INO)) + continue; + + xib_calc_bit(*ino, &pindex, &bit); + AuDebugOn(page_bits <= bit); + err = xib_pindex(sb, pindex); + if (!err) + set_bit(bit, p); + else + goto out; + } + } + +out: + return err; +} + +static int xib_restore(struct super_block *sb) +{ + int err, i; + unsigned int nfile; + aufs_bindex_t bindex, bbot; + void *page; + struct au_branch *br; + struct au_xino *xi; + struct file *file; + + err = -ENOMEM; + page = (void *)__get_free_page(GFP_NOFS); + if (unlikely(!page)) + goto out; + + err = 0; + bbot = au_sbbot(sb); + for (bindex = 0; !err && bindex <= bbot; bindex++) + if (!bindex || is_sb_shared(sb, bindex, bindex - 1) < 0) { + br = au_sbr(sb, bindex); + xi = br->br_xino; + nfile = xi->xi_nfile; + for (i = 0; i < nfile; i++) { + file = au_xino_file(xi, i); + if (file) + err = do_xib_restore(sb, file, page); + } + } else + AuDbg("skip shared b%d\n", bindex); + free_page((unsigned long)page); + +out: + return err; +} + +int au_xib_trunc(struct super_block *sb) +{ + int err; + ssize_t sz; + loff_t pos; + struct au_sbinfo *sbinfo; + unsigned long *p; + struct file *file; + + SiMustWriteLock(sb); + + err = 0; + sbinfo = au_sbi(sb); + if (!au_opt_test(sbinfo->si_mntflags, XINO)) + goto out; + + file = sbinfo->si_xib; + if (vfsub_f_size_read(file) <= PAGE_SIZE) + goto out; + + file = au_xino_create2(sb, &sbinfo->si_xib->f_path, NULL); + err = PTR_ERR(file); + if (IS_ERR(file)) + goto out; + fput(sbinfo->si_xib); + sbinfo->si_xib = file; + + p = sbinfo->si_xib_buf; + memset(p, 0, PAGE_SIZE); + pos = 0; + sz = xino_fwrite(sbinfo->si_xwrite, sbinfo->si_xib, p, PAGE_SIZE, &pos); + if (unlikely(sz != PAGE_SIZE)) { + err = sz; + AuIOErr("err %d\n", err); + if (sz >= 0) + err = -EIO; + goto out; + } + + mutex_lock(&sbinfo->si_xib_mtx); + /* mnt_want_write() is unnecessary here */ + err = xib_restore(sb); + mutex_unlock(&sbinfo->si_xib_mtx); + +out: + return err; +} + +/* ---------------------------------------------------------------------- */ + +struct au_xino *au_xino_alloc(unsigned int nfile) +{ + struct au_xino *xi; + + xi = kzalloc(sizeof(*xi), GFP_NOFS); + if (unlikely(!xi)) + goto out; + xi->xi_nfile = nfile; + xi->xi_file = kcalloc(nfile, sizeof(*xi->xi_file), GFP_NOFS); + if (unlikely(!xi->xi_file)) + goto out_free; + + xi->xi_nondir.total = 8; /* initial size */ + xi->xi_nondir.array = kcalloc(xi->xi_nondir.total, sizeof(ino_t), + GFP_NOFS); + if (unlikely(!xi->xi_nondir.array)) + goto out_file; + + spin_lock_init(&xi->xi_nondir.spin); + init_waitqueue_head(&xi->xi_nondir.wqh); + mutex_init(&xi->xi_mtx); + INIT_HLIST_BL_HEAD(&xi->xi_writing); + atomic_set(&xi->xi_truncating, 0); + kref_init(&xi->xi_kref); + goto out; /* success */ + +out_file: + au_kfree_try_rcu(xi->xi_file); +out_free: + au_kfree_rcu(xi); + xi = NULL; +out: + return xi; +} + +static int au_xino_init(struct au_branch *br, int idx, struct file *file) +{ + int err; + struct au_xino *xi; + + err = 0; + xi = au_xino_alloc(idx + 1); + if (unlikely(!xi)) { + err = -ENOMEM; + goto out; + } + + if (file) + get_file(file); + xi->xi_file[idx] = file; + AuDebugOn(br->br_xino); + br->br_xino = xi; + +out: + return err; +} + +static void au_xino_release(struct kref *kref) +{ + struct au_xino *xi; + int i; + unsigned long ul; + struct hlist_bl_head *hbl; + struct hlist_bl_node *pos, *n; + struct au_xi_writing *p; + + xi = container_of(kref, struct au_xino, xi_kref); + for (i = 0; i < xi->xi_nfile; i++) + if (xi->xi_file[i]) + fput(xi->xi_file[i]); + for (i = xi->xi_nondir.total - 1; i >= 0; i--) + AuDebugOn(xi->xi_nondir.array[i]); + mutex_destroy(&xi->xi_mtx); + hbl = &xi->xi_writing; + ul = au_hbl_count(hbl); + if (unlikely(ul)) { + pr_warn("xi_writing %lu\n", ul); + hlist_bl_lock(hbl); + hlist_bl_for_each_entry_safe(p, pos, n, hbl, node) { + hlist_bl_del(&p->node); + /* kmemleak reported au_kfree_rcu() doesn't free it */ + kfree(p); + } + hlist_bl_unlock(hbl); + } + au_kfree_try_rcu(xi->xi_file); + au_kfree_try_rcu(xi->xi_nondir.array); + au_kfree_rcu(xi); +} + +int au_xino_put(struct au_branch *br) +{ + int ret; + struct au_xino *xi; + + ret = 0; + xi = br->br_xino; + if (xi) { + br->br_xino = NULL; + ret = kref_put(&xi->xi_kref, au_xino_release); + } + + return ret; +} + +/* ---------------------------------------------------------------------- */ + +/* + * xino mount option handlers + */ + +/* xino bitmap */ +static void xino_clear_xib(struct super_block *sb) +{ + struct au_sbinfo *sbinfo; + + SiMustWriteLock(sb); + + sbinfo = au_sbi(sb); + /* unnecessary to clear sbinfo->si_xread and ->si_xwrite */ + if (sbinfo->si_xib) + fput(sbinfo->si_xib); + sbinfo->si_xib = NULL; + if (sbinfo->si_xib_buf) + free_page((unsigned long)sbinfo->si_xib_buf); + sbinfo->si_xib_buf = NULL; +} + +static int au_xino_set_xib(struct super_block *sb, struct path *path) +{ + int err; + loff_t pos; + struct au_sbinfo *sbinfo; + struct file *file; + struct super_block *xi_sb; + + SiMustWriteLock(sb); + + sbinfo = au_sbi(sb); + file = au_xino_create2(sb, path, sbinfo->si_xib); + err = PTR_ERR(file); + if (IS_ERR(file)) + goto out; + if (sbinfo->si_xib) + fput(sbinfo->si_xib); + sbinfo->si_xib = file; + sbinfo->si_xread = vfs_readf(file); + sbinfo->si_xwrite = vfs_writef(file); + xi_sb = file_inode(file)->i_sb; + sbinfo->si_ximaxent = xi_sb->s_maxbytes; + if (unlikely(sbinfo->si_ximaxent < PAGE_SIZE)) { + err = -EIO; + pr_err("s_maxbytes(%llu) on %s is too small\n", + (u64)sbinfo->si_ximaxent, au_sbtype(xi_sb)); + goto out_unset; + } + sbinfo->si_ximaxent /= sizeof(ino_t); + + err = -ENOMEM; + if (!sbinfo->si_xib_buf) + sbinfo->si_xib_buf = (void *)get_zeroed_page(GFP_NOFS); + if (unlikely(!sbinfo->si_xib_buf)) + goto out_unset; + + sbinfo->si_xib_last_pindex = 0; + sbinfo->si_xib_next_bit = 0; + if (vfsub_f_size_read(file) < PAGE_SIZE) { + pos = 0; + err = xino_fwrite(sbinfo->si_xwrite, file, sbinfo->si_xib_buf, + PAGE_SIZE, &pos); + if (unlikely(err != PAGE_SIZE)) + goto out_free; + } + err = 0; + goto out; /* success */ + +out_free: + if (sbinfo->si_xib_buf) + free_page((unsigned long)sbinfo->si_xib_buf); + sbinfo->si_xib_buf = NULL; + if (err >= 0) + err = -EIO; +out_unset: + fput(sbinfo->si_xib); + sbinfo->si_xib = NULL; +out: + AuTraceErr(err); + return err; +} + +/* xino for each branch */ +static void xino_clear_br(struct super_block *sb) +{ + aufs_bindex_t bindex, bbot; + struct au_branch *br; + + bbot = au_sbbot(sb); + for (bindex = 0; bindex <= bbot; bindex++) { + br = au_sbr(sb, bindex); + AuDebugOn(!br); + au_xino_put(br); + } +} + +static void au_xino_set_br_shared(struct super_block *sb, struct au_branch *br, + aufs_bindex_t bshared) +{ + struct au_branch *brshared; + + brshared = au_sbr(sb, bshared); + AuDebugOn(!brshared->br_xino); + AuDebugOn(!brshared->br_xino->xi_file); + if (br->br_xino != brshared->br_xino) { + au_xino_get(brshared); + au_xino_put(br); + br->br_xino = brshared->br_xino; + } +} + +struct au_xino_do_set_br { + vfs_writef_t writef; + struct au_branch *br; + ino_t h_ino; + aufs_bindex_t bshared; +}; + +static int au_xino_do_set_br(struct super_block *sb, struct path *path, + struct au_xino_do_set_br *args) +{ + int err; + struct au_xi_calc calc; + struct file *file; + struct au_branch *br; + struct au_xi_new xinew = { + .base = path + }; + + br = args->br; + xinew.xi = br->br_xino; + au_xi_calc(sb, args->h_ino, &calc); + xinew.copy_src = au_xino_file(xinew.xi, calc.idx); + if (args->bshared >= 0) + /* shared xino */ + au_xino_set_br_shared(sb, br, args->bshared); + else if (!xinew.xi) { + /* new xino */ + err = au_xino_init(br, calc.idx, xinew.copy_src); + if (unlikely(err)) + goto out; + } + + /* force re-creating */ + xinew.xi = br->br_xino; + xinew.idx = calc.idx; + mutex_lock(&xinew.xi->xi_mtx); + file = au_xi_new(sb, &xinew); + mutex_unlock(&xinew.xi->xi_mtx); + err = PTR_ERR(file); + if (IS_ERR(file)) + goto out; + AuDebugOn(!file); + + err = au_xino_do_write(args->writef, file, &calc, AUFS_ROOT_INO); + if (unlikely(err)) + au_xino_put(br); + +out: + AuTraceErr(err); + return err; +} + +static int au_xino_set_br(struct super_block *sb, struct path *path) +{ + int err; + aufs_bindex_t bindex, bbot; + struct au_xino_do_set_br args; + struct inode *inode; + + SiMustWriteLock(sb); + + bbot = au_sbbot(sb); + inode = d_inode(sb->s_root); + args.writef = au_sbi(sb)->si_xwrite; + for (bindex = 0; bindex <= bbot; bindex++) { + args.h_ino = au_h_iptr(inode, bindex)->i_ino; + args.br = au_sbr(sb, bindex); + args.bshared = is_sb_shared(sb, bindex, bindex - 1); + err = au_xino_do_set_br(sb, path, &args); + if (unlikely(err)) + break; + } + + AuTraceErr(err); + return err; +} + +void au_xino_clr(struct super_block *sb) +{ + struct au_sbinfo *sbinfo; + + au_xigen_clr(sb); + xino_clear_xib(sb); + xino_clear_br(sb); + dbgaufs_brs_del(sb, 0); + sbinfo = au_sbi(sb); + /* lvalue, do not call au_mntflags() */ + au_opt_clr(sbinfo->si_mntflags, XINO); +} + +int au_xino_set(struct super_block *sb, struct au_opt_xino *xiopt, int remount) +{ + int err, skip; + struct dentry *dentry, *parent, *cur_dentry, *cur_parent; + struct qstr *dname, *cur_name; + struct file *cur_xino; + struct au_sbinfo *sbinfo; + struct path *path, *cur_path; + + SiMustWriteLock(sb); + + err = 0; + sbinfo = au_sbi(sb); + path = &xiopt->file->f_path; + dentry = path->dentry; + parent = dget_parent(dentry); + if (remount) { + skip = 0; + cur_xino = sbinfo->si_xib; + if (cur_xino) { + cur_path = &cur_xino->f_path; + cur_dentry = cur_path->dentry; + cur_parent = dget_parent(cur_dentry); + cur_name = &cur_dentry->d_name; + dname = &dentry->d_name; + skip = (cur_parent == parent + && au_qstreq(dname, cur_name)); + dput(cur_parent); + } + if (skip) + goto out; + } + + au_opt_set(sbinfo->si_mntflags, XINO); + err = au_xino_set_xib(sb, path); + /* si_x{read,write} are set */ + if (!err) + err = au_xigen_set(sb, path); + if (!err) + err = au_xino_set_br(sb, path); + if (!err) { + dbgaufs_brs_add(sb, 0, /*topdown*/1); + goto out; /* success */ + } + + /* reset all */ + AuIOErr("failed setting xino(%d).\n", err); + au_xino_clr(sb); + +out: + dput(parent); + return err; +} + +/* + * create a xinofile at the default place/path. + */ +struct file *au_xino_def(struct super_block *sb) +{ + struct file *file; + char *page, *p; + struct au_branch *br; + struct super_block *h_sb; + struct path path; + aufs_bindex_t bbot, bindex, bwr; + + br = NULL; + bbot = au_sbbot(sb); + bwr = -1; + for (bindex = 0; bindex <= bbot; bindex++) { + br = au_sbr(sb, bindex); + if (au_br_writable(br->br_perm) + && !au_test_fs_bad_xino(au_br_sb(br))) { + bwr = bindex; + break; + } + } + + if (bwr >= 0) { + file = ERR_PTR(-ENOMEM); + page = (void *)__get_free_page(GFP_NOFS); + if (unlikely(!page)) + goto out; + path.mnt = au_br_mnt(br); + path.dentry = au_h_dptr(sb->s_root, bwr); + p = d_path(&path, page, PATH_MAX - sizeof(AUFS_XINO_FNAME)); + file = (void *)p; + if (!IS_ERR(p)) { + strcat(p, "/" AUFS_XINO_FNAME); + AuDbg("%s\n", p); + file = au_xino_create(sb, p, /*silent*/0, /*wbrtop*/1); + } + free_page((unsigned long)page); + } else { + file = au_xino_create(sb, AUFS_XINO_DEFPATH, /*silent*/0, + /*wbrtop*/0); + if (IS_ERR(file)) + goto out; + h_sb = file->f_path.dentry->d_sb; + if (unlikely(au_test_fs_bad_xino(h_sb))) { + pr_err("xino doesn't support %s(%s)\n", + AUFS_XINO_DEFPATH, au_sbtype(h_sb)); + fput(file); + file = ERR_PTR(-EINVAL); + } + } + +out: + return file; +} + +/* ---------------------------------------------------------------------- */ + +/* + * initialize the xinofile for the specified branch @br + * at the place/path where @base_file indicates. + * test whether another branch is on the same filesystem or not, + * if found then share the xinofile with another branch. + */ +int au_xino_init_br(struct super_block *sb, struct au_branch *br, ino_t h_ino, + struct path *base) +{ + int err; + struct au_xino_do_set_br args = { + .h_ino = h_ino, + .br = br + }; + + args.writef = au_sbi(sb)->si_xwrite; + args.bshared = sbr_find_shared(sb, /*btop*/0, au_sbbot(sb), + au_br_sb(br)); + err = au_xino_do_set_br(sb, base, &args); + if (unlikely(err)) + au_xino_put(br); + + return err; +} + +/* ---------------------------------------------------------------------- */ + +/* + * get an unused inode number from bitmap + */ +ino_t au_xino_new_ino(struct super_block *sb) +{ + ino_t ino; + unsigned long *p, pindex, ul, pend; + struct au_sbinfo *sbinfo; + struct file *file; + int free_bit, err; + + if (!au_opt_test(au_mntflags(sb), XINO)) + return iunique(sb, AUFS_FIRST_INO); + + sbinfo = au_sbi(sb); + mutex_lock(&sbinfo->si_xib_mtx); + p = sbinfo->si_xib_buf; + free_bit = sbinfo->si_xib_next_bit; + if (free_bit < page_bits && !test_bit(free_bit, p)) + goto out; /* success */ + free_bit = find_first_zero_bit(p, page_bits); + if (free_bit < page_bits) + goto out; /* success */ + + pindex = sbinfo->si_xib_last_pindex; + for (ul = pindex - 1; ul < ULONG_MAX; ul--) { + err = xib_pindex(sb, ul); + if (unlikely(err)) + goto out_err; + free_bit = find_first_zero_bit(p, page_bits); + if (free_bit < page_bits) + goto out; /* success */ + } + + file = sbinfo->si_xib; + pend = vfsub_f_size_read(file) / PAGE_SIZE; + for (ul = pindex + 1; ul <= pend; ul++) { + err = xib_pindex(sb, ul); + if (unlikely(err)) + goto out_err; + free_bit = find_first_zero_bit(p, page_bits); + if (free_bit < page_bits) + goto out; /* success */ + } + BUG(); + +out: + set_bit(free_bit, p); + sbinfo->si_xib_next_bit = free_bit + 1; + pindex = sbinfo->si_xib_last_pindex; + mutex_unlock(&sbinfo->si_xib_mtx); + ino = xib_calc_ino(pindex, free_bit); + AuDbg("i%lu\n", (unsigned long)ino); + return ino; +out_err: + mutex_unlock(&sbinfo->si_xib_mtx); + AuDbg("i0\n"); + return 0; +} + +/* for s_op->delete_inode() */ +void au_xino_delete_inode(struct inode *inode, const int unlinked) +{ + int err; + unsigned int mnt_flags; + aufs_bindex_t bindex, bbot, bi; + unsigned char try_trunc; + struct au_iinfo *iinfo; + struct super_block *sb; + struct au_hinode *hi; + struct inode *h_inode; + struct au_branch *br; + vfs_writef_t xwrite; + struct au_xi_calc calc; + struct file *file; + + AuDebugOn(au_is_bad_inode(inode)); + + sb = inode->i_sb; + mnt_flags = au_mntflags(sb); + if (!au_opt_test(mnt_flags, XINO) + || inode->i_ino == AUFS_ROOT_INO) + return; + + if (unlinked) { + au_xigen_inc(inode); + au_xib_clear_bit(inode); + } + + iinfo = au_ii(inode); + bindex = iinfo->ii_btop; + if (bindex < 0) + return; + + xwrite = au_sbi(sb)->si_xwrite; + try_trunc = !!au_opt_test(mnt_flags, TRUNC_XINO); + hi = au_hinode(iinfo, bindex); + bbot = iinfo->ii_bbot; + for (; bindex <= bbot; bindex++, hi++) { + h_inode = hi->hi_inode; + if (!h_inode + || (!unlinked && h_inode->i_nlink)) + continue; + + /* inode may not be revalidated */ + bi = au_br_index(sb, hi->hi_id); + if (bi < 0) + continue; + + br = au_sbr(sb, bi); + au_xi_calc(sb, h_inode->i_ino, &calc); + file = au_xino_file(br->br_xino, calc.idx); + if (IS_ERR_OR_NULL(file)) + continue; + + err = au_xino_do_write(xwrite, file, &calc, /*ino*/0); + if (!err && try_trunc + && au_test_fs_trunc_xino(au_br_sb(br))) + xino_try_trunc(sb, br); + } +} + +/* ---------------------------------------------------------------------- */ + +static int au_xinondir_find(struct au_xino *xi, ino_t h_ino) +{ + int found, total, i; + + found = -1; + total = xi->xi_nondir.total; + for (i = 0; i < total; i++) { + if (xi->xi_nondir.array[i] != h_ino) + continue; + found = i; + break; + } + + return found; +} + +static int au_xinondir_expand(struct au_xino *xi) +{ + int err, sz; + ino_t *p; + + BUILD_BUG_ON(KMALLOC_MAX_SIZE > INT_MAX); + + err = -ENOMEM; + sz = xi->xi_nondir.total * sizeof(ino_t); + if (unlikely(sz > KMALLOC_MAX_SIZE / 2)) + goto out; + p = au_kzrealloc(xi->xi_nondir.array, sz, sz << 1, GFP_ATOMIC, + /*may_shrink*/0); + if (p) { + xi->xi_nondir.array = p; + xi->xi_nondir.total <<= 1; + AuDbg("xi_nondir.total %d\n", xi->xi_nondir.total); + err = 0; + } + +out: + return err; +} + +void au_xinondir_leave(struct super_block *sb, aufs_bindex_t bindex, + ino_t h_ino, int idx) +{ + struct au_xino *xi; + + AuDebugOn(!au_opt_test(au_mntflags(sb), XINO)); + xi = au_sbr(sb, bindex)->br_xino; + AuDebugOn(idx < 0 || xi->xi_nondir.total <= idx); + + spin_lock(&xi->xi_nondir.spin); + AuDebugOn(xi->xi_nondir.array[idx] != h_ino); + xi->xi_nondir.array[idx] = 0; + spin_unlock(&xi->xi_nondir.spin); + wake_up_all(&xi->xi_nondir.wqh); +} + +int au_xinondir_enter(struct super_block *sb, aufs_bindex_t bindex, ino_t h_ino, + int *idx) +{ + int err, found, empty; + struct au_xino *xi; + + err = 0; + *idx = -1; + if (!au_opt_test(au_mntflags(sb), XINO)) + goto out; /* no xino */ + + xi = au_sbr(sb, bindex)->br_xino; + +again: + spin_lock(&xi->xi_nondir.spin); + found = au_xinondir_find(xi, h_ino); + if (found == -1) { + empty = au_xinondir_find(xi, /*h_ino*/0); + if (empty == -1) { + empty = xi->xi_nondir.total; + err = au_xinondir_expand(xi); + if (unlikely(err)) + goto out_unlock; + } + xi->xi_nondir.array[empty] = h_ino; + *idx = empty; + } else { + spin_unlock(&xi->xi_nondir.spin); + wait_event(xi->xi_nondir.wqh, + xi->xi_nondir.array[found] != h_ino); + goto again; + } + +out_unlock: + spin_unlock(&xi->xi_nondir.spin); +out: + return err; +} + +/* ---------------------------------------------------------------------- */ + +int au_xino_path(struct seq_file *seq, struct file *file) +{ + int err; + + err = au_seq_path(seq, &file->f_path); + if (unlikely(err)) + goto out; + +#define Deleted "\\040(deleted)" + seq->count -= sizeof(Deleted) - 1; + AuDebugOn(memcmp(seq->buf + seq->count, Deleted, + sizeof(Deleted) - 1)); +#undef Deleted + +out: + return err; +} --- linux-azure-5.8-5.8.0.orig/fs/autofs/waitq.c +++ linux-azure-5.8-5.8.0/fs/autofs/waitq.c @@ -53,7 +53,7 @@ mutex_lock(&sbi->pipe_mutex); while (bytes) { - wr = kernel_write(file, data, bytes, &file->f_pos); + wr = __kernel_write(file, data, bytes, NULL); if (wr <= 0) break; data += wr; --- linux-azure-5.8-5.8.0.orig/fs/bfs/inode.c +++ linux-azure-5.8-5.8.0/fs/bfs/inode.c @@ -351,7 +351,7 @@ info->si_lasti = (le32_to_cpu(bfs_sb->s_start) - BFS_BSIZE) / sizeof(struct bfs_inode) + BFS_ROOT_INO - 1; if (info->si_lasti == BFS_MAX_LASTI) - printf("WARNING: filesystem %s was created with 512 inodes, the real maximum is 511, mounting anyway\n", s->s_id); + printf("NOTE: filesystem %s was created with 512 inodes, the real maximum is 511, mounting anyway\n", s->s_id); else if (info->si_lasti > BFS_MAX_LASTI) { printf("Impossible last inode number %lu > %d on %s\n", info->si_lasti, BFS_MAX_LASTI, s->s_id); goto out1; --- linux-azure-5.8-5.8.0.orig/fs/binfmt_flat.c +++ linux-azure-5.8-5.8.0/fs/binfmt_flat.c @@ -576,7 +576,7 @@ goto err; } - len = data_len + extra; + len = data_len + extra + MAX_SHARED_LIBS * sizeof(unsigned long); len = PAGE_ALIGN(len); realdatastart = vm_mmap(NULL, 0, len, PROT_READ|PROT_WRITE|PROT_EXEC, MAP_PRIVATE, 0); @@ -590,7 +590,9 @@ vm_munmap(textpos, text_len); goto err; } - datapos = ALIGN(realdatastart, FLAT_DATA_ALIGN); + datapos = ALIGN(realdatastart + + MAX_SHARED_LIBS * sizeof(unsigned long), + FLAT_DATA_ALIGN); pr_debug("Allocated data+bss+stack (%u bytes): %lx\n", data_len + bss_len + stack_len, datapos); @@ -620,7 +622,7 @@ memp_size = len; } else { - len = text_len + data_len + extra; + len = text_len + data_len + extra + MAX_SHARED_LIBS * sizeof(u32); len = PAGE_ALIGN(len); textpos = vm_mmap(NULL, 0, len, PROT_READ | PROT_EXEC | PROT_WRITE, MAP_PRIVATE, 0); @@ -635,7 +637,9 @@ } realdatastart = textpos + ntohl(hdr->data_start); - datapos = ALIGN(realdatastart, FLAT_DATA_ALIGN); + datapos = ALIGN(realdatastart + + MAX_SHARED_LIBS * sizeof(u32), + FLAT_DATA_ALIGN); reloc = (__be32 __user *) (datapos + (ntohl(hdr->reloc_start) - text_len)); @@ -652,9 +656,8 @@ (text_len + full_data - sizeof(struct flat_hdr)), 0); - if (datapos != realdatastart) - memmove((void *)datapos, (void *)realdatastart, - full_data); + memmove((void *) datapos, (void *) realdatastart, + full_data); #else /* * This is used on MMU systems mainly for testing. @@ -710,7 +713,8 @@ if (IS_ERR_VALUE(result)) { ret = result; pr_err("Unable to read code+data+bss, errno %d\n", ret); - vm_munmap(textpos, text_len + data_len + extra); + vm_munmap(textpos, text_len + data_len + extra + + MAX_SHARED_LIBS * sizeof(u32)); goto err; } } --- linux-azure-5.8-5.8.0.orig/fs/btrfs/backref.c +++ linux-azure-5.8-5.8.0/fs/btrfs/backref.c @@ -544,7 +544,18 @@ int level = ref->level; struct btrfs_key search_key = ref->key_for_search; - root = btrfs_get_fs_root(fs_info, ref->root_id, false); + /* + * If we're search_commit_root we could possibly be holding locks on + * other tree nodes. This happens when qgroups does backref walks when + * adding new delayed refs. To deal with this we need to look in cache + * for the root, and if we don't find it then we need to search the + * tree_root's commit root, thus the btrfs_get_fs_root_commit_root usage + * here. + */ + if (path->search_commit_root) + root = btrfs_get_fs_root_commit_root(fs_info, path, ref->root_id); + else + root = btrfs_get_fs_root(fs_info, ref->root_id, false); if (IS_ERR(root)) { ret = PTR_ERR(root); goto out_free; @@ -2303,7 +2314,7 @@ return NULL; ret->path = btrfs_alloc_path(); - if (!ret) { + if (!ret->path) { kfree(ret); return NULL; } @@ -2537,13 +2548,6 @@ list_del(&edge->list[UPPER]); btrfs_backref_free_edge(cache, edge); - if (RB_EMPTY_NODE(&upper->rb_node)) { - BUG_ON(!list_empty(&node->upper)); - btrfs_backref_drop_node(cache, node); - node = upper; - node->lowest = 1; - continue; - } /* * Add the node to leaf node list if no other child block * cached. @@ -2620,7 +2624,7 @@ /* Only reloc backref cache cares about a specific root */ if (cache->is_reloc) { root = find_reloc_root(cache->fs_info, cur->bytenr); - if (WARN_ON(!root)) + if (!root) return -ENOENT; cur->root = root; } else { @@ -3114,7 +3118,7 @@ list_del_init(&lower->list); if (lower == node) node = NULL; - btrfs_backref_free_node(cache, lower); + btrfs_backref_drop_node(cache, lower); } btrfs_backref_cleanup_node(cache, node); --- linux-azure-5.8-5.8.0.orig/fs/btrfs/backref.h +++ linux-azure-5.8-5.8.0/fs/btrfs/backref.h @@ -296,6 +296,9 @@ struct btrfs_backref_node *node) { if (node) { + ASSERT(list_empty(&node->list)); + ASSERT(list_empty(&node->lower)); + ASSERT(node->eb == NULL); cache->nr_nodes--; btrfs_put_root(node->root); kfree(node); @@ -340,11 +343,11 @@ static inline void btrfs_backref_drop_node(struct btrfs_backref_cache *tree, struct btrfs_backref_node *node) { - BUG_ON(!list_empty(&node->upper)); + ASSERT(list_empty(&node->upper)); btrfs_backref_drop_node_buffer(node); - list_del(&node->list); - list_del(&node->lower); + list_del_init(&node->list); + list_del_init(&node->lower); if (!RB_EMPTY_NODE(&node->rb_node)) rb_erase(&node->rb_node, &tree->rb_root); btrfs_backref_free_node(tree, node); --- linux-azure-5.8-5.8.0.orig/fs/btrfs/block-group.c +++ linux-azure-5.8-5.8.0/fs/btrfs/block-group.c @@ -642,7 +642,15 @@ mutex_lock(&caching_ctl->mutex); down_read(&fs_info->commit_root_sem); - if (btrfs_fs_compat_ro(fs_info, FREE_SPACE_TREE)) + /* + * If we are in the transaction that populated the free space tree we + * can't actually cache from the free space tree as our commit root and + * real root are the same, so we could change the contents of the blocks + * while caching. Instead do the slow caching in this case, and after + * the transaction has committed we will be safe. + */ + if (btrfs_fs_compat_ro(fs_info, FREE_SPACE_TREE) && + !(test_bit(BTRFS_FS_FREE_SPACE_TREE_UNTRUSTED, &fs_info->flags))) ret = load_free_space_tree(caching_ctl); else ret = load_extent_tree_free(caching_ctl); @@ -1448,9 +1456,7 @@ btrfs_space_info_update_bytes_pinned(fs_info, space_info, -block_group->pinned); space_info->bytes_readonly += block_group->pinned; - percpu_counter_add_batch(&space_info->total_bytes_pinned, - -block_group->pinned, - BTRFS_TOTAL_BYTES_PINNED_BATCH); + __btrfs_mod_total_bytes_pinned(space_info, -block_group->pinned); block_group->pinned = 0; spin_unlock(&block_group->lock); @@ -1814,7 +1820,6 @@ cache->fs_info = fs_info; cache->full_stripe_len = btrfs_full_stripe_len(fs_info, start); - set_free_space_tree_thresholds(cache); cache->discard_index = BTRFS_DISCARD_INDEX_UNUSED; @@ -1928,6 +1933,8 @@ if (ret < 0) goto error; + set_free_space_tree_thresholds(cache); + if (need_clear) { /* * When we mount with old space cache, we need to @@ -2049,6 +2056,7 @@ key.offset = 0; btrfs_release_path(path); } + btrfs_release_path(path); rcu_read_lock(); list_for_each_entry_rcu(space_info, &info->space_info, list) { @@ -2148,6 +2156,7 @@ return -ENOMEM; cache->length = size; + set_free_space_tree_thresholds(cache); cache->used = bytes_used; cache->flags = type; cache->last_byte_to_unpin = (u64)-1; @@ -2621,8 +2630,10 @@ if (!path) { path = btrfs_alloc_path(); - if (!path) - return -ENOMEM; + if (!path) { + ret = -ENOMEM; + goto out; + } } /* @@ -2716,16 +2727,14 @@ btrfs_put_block_group(cache); if (drop_reserve) btrfs_delayed_refs_rsv_release(fs_info, 1); - - if (ret) - break; - /* * Avoid blocking other tasks for too long. It might even save * us from writing caches for block groups that are going to be * removed. */ mutex_unlock(&trans->transaction->cache_write_mutex); + if (ret) + goto out; mutex_lock(&trans->transaction->cache_write_mutex); } mutex_unlock(&trans->transaction->cache_write_mutex); @@ -2734,7 +2743,8 @@ * Go through delayed refs for all the stuff we've just kicked off * and then loop back (just once) */ - ret = btrfs_run_delayed_refs(trans, 0); + if (!ret) + ret = btrfs_run_delayed_refs(trans, 0); if (!ret && loops == 0) { loops++; spin_lock(&cur_trans->dirty_bgs_lock); @@ -2748,7 +2758,12 @@ goto again; } spin_unlock(&cur_trans->dirty_bgs_lock); - } else if (ret < 0) { + } +out: + if (ret < 0) { + spin_lock(&cur_trans->dirty_bgs_lock); + list_splice_init(&dirty, &cur_trans->dirty_bgs); + spin_unlock(&cur_trans->dirty_bgs_lock); btrfs_cleanup_dirty_bgs(cur_trans, fs_info); } @@ -2952,10 +2967,8 @@ spin_unlock(&cache->lock); spin_unlock(&cache->space_info->lock); - percpu_counter_add_batch( - &cache->space_info->total_bytes_pinned, - num_bytes, - BTRFS_TOTAL_BYTES_PINNED_BATCH); + __btrfs_mod_total_bytes_pinned(cache->space_info, + num_bytes); set_extent_dirty(&trans->transaction->pinned_extents, bytenr, bytenr + num_bytes - 1, GFP_NOFS | __GFP_NOFAIL); --- linux-azure-5.8-5.8.0.orig/fs/btrfs/btrfs_inode.h +++ linux-azure-5.8-5.8.0/fs/btrfs/btrfs_inode.h @@ -31,6 +31,13 @@ BTRFS_INODE_READDIO_NEED_LOCK, BTRFS_INODE_HAS_PROPS, BTRFS_INODE_SNAPSHOT_FLUSH, + /* + * Set and used when logging an inode and it serves to signal that an + * inode does not have xattrs, so subsequent fsyncs can avoid searching + * for xattrs to log. This bit must be cleared whenever a xattr is added + * to an inode. + */ + BTRFS_INODE_NO_XATTRS, }; /* in memory btrfs inode */ --- linux-azure-5.8-5.8.0.orig/fs/btrfs/ctree.c +++ linux-azure-5.8-5.8.0/fs/btrfs/ctree.c @@ -220,9 +220,12 @@ ret = btrfs_inc_ref(trans, root, cow, 1); else ret = btrfs_inc_ref(trans, root, cow, 0); - - if (ret) + if (ret) { + btrfs_tree_unlock(cow); + free_extent_buffer(cow); + btrfs_abort_transaction(trans, ret); return ret; + } btrfs_mark_buffer_dirty(cow); *cow_ret = cow; @@ -1061,6 +1064,8 @@ ret = update_ref_for_cow(trans, root, buf, cow, &last_ref); if (ret) { + btrfs_tree_unlock(cow); + free_extent_buffer(cow); btrfs_abort_transaction(trans, ret); return ret; } @@ -1068,6 +1073,8 @@ if (test_bit(BTRFS_ROOT_SHAREABLE, &root->state)) { ret = btrfs_reloc_cow_block(trans, root, buf, cow); if (ret) { + btrfs_tree_unlock(cow); + free_extent_buffer(cow); btrfs_abort_transaction(trans, ret); return ret; } @@ -1100,6 +1107,8 @@ if (last_ref) { ret = tree_mod_log_free_eb(buf); if (ret) { + btrfs_tree_unlock(cow); + free_extent_buffer(cow); btrfs_abort_transaction(trans, ret); return ret; } @@ -1297,6 +1306,8 @@ btrfs_tree_read_unlock_blocking(eb); free_extent_buffer(eb); + btrfs_set_buffer_lockdep_class(btrfs_header_owner(eb_rewin), + eb_rewin, btrfs_header_level(eb_rewin)); btrfs_tree_read_lock(eb_rewin); __tree_mod_log_rewind(fs_info, eb_rewin, time_seq, tm); WARN_ON(btrfs_header_nritems(eb_rewin) > @@ -1370,7 +1381,6 @@ if (!eb) return NULL; - btrfs_tree_read_lock(eb); if (old_root) { btrfs_set_header_bytenr(eb, eb->start); btrfs_set_header_backref_rev(eb, BTRFS_MIXED_BACKREF_REV); @@ -1378,6 +1388,9 @@ btrfs_set_header_level(eb, old_root->level); btrfs_set_header_generation(eb, old_generation); } + btrfs_set_buffer_lockdep_class(btrfs_header_owner(eb), eb, + btrfs_header_level(eb)); + btrfs_tree_read_lock(eb); if (tm) __tree_mod_log_rewind(fs_info, eb, time_seq, tm); else @@ -3143,6 +3156,58 @@ } /* + * Check key order of two sibling extent buffers. + * + * Return true if something is wrong. + * Return false if everything is fine. + * + * Tree-checker only works inside one tree block, thus the following + * corruption can not be detected by tree-checker: + * + * Leaf @left | Leaf @right + * -------------------------------------------------------------- + * | 1 | 2 | 3 | 4 | 5 | f6 | | 7 | 8 | + * + * Key f6 in leaf @left itself is valid, but not valid when the next + * key in leaf @right is 7. + * This can only be checked at tree block merge time. + * And since tree checker has ensured all key order in each tree block + * is correct, we only need to bother the last key of @left and the first + * key of @right. + */ +static bool check_sibling_keys(struct extent_buffer *left, + struct extent_buffer *right) +{ + struct btrfs_key left_last; + struct btrfs_key right_first; + int level = btrfs_header_level(left); + int nr_left = btrfs_header_nritems(left); + int nr_right = btrfs_header_nritems(right); + + /* No key to check in one of the tree blocks */ + if (!nr_left || !nr_right) + return false; + + if (level) { + btrfs_node_key_to_cpu(left, &left_last, nr_left - 1); + btrfs_node_key_to_cpu(right, &right_first, 0); + } else { + btrfs_item_key_to_cpu(left, &left_last, nr_left - 1); + btrfs_item_key_to_cpu(right, &right_first, 0); + } + + if (btrfs_comp_cpu_keys(&left_last, &right_first) >= 0) { + btrfs_crit(left->fs_info, +"bad key order, sibling blocks, left last (%llu %u %llu) right first (%llu %u %llu)", + left_last.objectid, left_last.type, + left_last.offset, right_first.objectid, + right_first.type, right_first.offset); + return true; + } + return false; +} + +/* * try to push data from one node into the next node left in the * tree. * @@ -3186,6 +3251,12 @@ } else push_items = min(src_nritems - 8, push_items); + /* dst is the left eb, src is the middle eb */ + if (check_sibling_keys(dst, src)) { + ret = -EUCLEAN; + btrfs_abort_transaction(trans, ret); + return ret; + } ret = tree_mod_log_eb_copy(dst, src, dst_nritems, 0, push_items); if (ret) { btrfs_abort_transaction(trans, ret); @@ -3254,6 +3325,12 @@ if (max_push < push_items) push_items = max_push; + /* dst is the right eb, src is the middle eb */ + if (check_sibling_keys(src, dst)) { + ret = -EUCLEAN; + btrfs_abort_transaction(trans, ret); + return ret; + } ret = tree_mod_log_insert_move(dst, push_items, 0, dst_nritems); BUG_ON(ret < 0); memmove_extent_buffer(dst, btrfs_node_key_ptr_offset(push_items), @@ -3730,6 +3807,12 @@ if (left_nritems == 0) goto out_unlock; + if (check_sibling_keys(left, right)) { + ret = -EUCLEAN; + btrfs_tree_unlock(right); + free_extent_buffer(right); + return ret; + } if (path->slots[0] == left_nritems && !empty) { /* Key greater than all keys in the leaf, right neighbor has * enough room for it and we're not emptying our leaf to delete @@ -3967,6 +4050,10 @@ goto out; } + if (check_sibling_keys(left, right)) { + ret = -EUCLEAN; + goto out; + } return __push_leaf_left(path, min_data_size, empty, left, free_space, right_nritems, max_slot); --- linux-azure-5.8-5.8.0.orig/fs/btrfs/ctree.h +++ linux-azure-5.8-5.8.0/fs/btrfs/ctree.h @@ -568,6 +568,9 @@ /* Indicate that the discard workqueue can service discards. */ BTRFS_FS_DISCARD_RUNNING, + + /* Indicate that we can't trust the free space tree for caching yet */ + BTRFS_FS_FREE_SPACE_TREE_UNTRUSTED, }; struct btrfs_fs_info { @@ -873,7 +876,10 @@ */ struct ulist *qgroup_ulist; - /* protect user change for quota operations */ + /* + * Protect user change for quota operations. If a transaction is needed, + * it must be started before locking this lock. + */ struct mutex qgroup_ioctl_lock; /* list of dirty qgroups to be written at next commit */ @@ -1059,8 +1065,10 @@ wait_queue_head_t log_writer_wait; wait_queue_head_t log_commit_wait[2]; struct list_head log_ctxs[2]; + /* Used only for log trees of subvolumes, not for the log root tree */ atomic_t log_writers; atomic_t log_commit[2]; + /* Used only for log trees of subvolumes, not for the log root tree */ atomic_t log_batch; int log_transid; /* No matter the commit succeeds or not*/ @@ -2466,7 +2474,7 @@ u64 bytenr, u64 num_bytes); int btrfs_exclude_logged_extents(struct extent_buffer *eb); int btrfs_cross_ref_exist(struct btrfs_root *root, - u64 objectid, u64 offset, u64 bytenr); + u64 objectid, u64 offset, u64 bytenr, bool strict); struct extent_buffer *btrfs_alloc_tree_block(struct btrfs_trans_handle *trans, struct btrfs_root *root, u64 parent, u64 root_objectid, @@ -2500,7 +2508,6 @@ u64 start, u64 len, int delalloc); int btrfs_pin_reserved_extent(struct btrfs_trans_handle *trans, u64 start, u64 len); -void btrfs_prepare_extent_commit(struct btrfs_fs_info *fs_info); int btrfs_finish_extent_commit(struct btrfs_trans_handle *trans); int btrfs_inc_extent_ref(struct btrfs_trans_handle *trans, struct btrfs_ref *generic_ref); @@ -2537,7 +2544,7 @@ int btrfs_subvolume_reserve_metadata(struct btrfs_root *root, struct btrfs_block_rsv *rsv, int nitems, bool use_global_rsv); -void btrfs_subvolume_release_metadata(struct btrfs_fs_info *fs_info, +void btrfs_subvolume_release_metadata(struct btrfs_root *root, struct btrfs_block_rsv *rsv); void btrfs_delalloc_release_extents(struct btrfs_inode *inode, u64 num_bytes); @@ -2852,7 +2859,7 @@ u64 start, u64 len); noinline int can_nocow_extent(struct inode *inode, u64 offset, u64 *len, u64 *orig_start, u64 *orig_block_len, - u64 *ram_bytes); + u64 *ram_bytes, bool strict); void __btrfs_del_delalloc_inode(struct btrfs_root *root, struct btrfs_inode *inode); @@ -2982,6 +2989,8 @@ size_t num_pages, loff_t pos, size_t write_bytes, struct extent_state **cached); int btrfs_fdatawrite_range(struct inode *inode, loff_t start, loff_t end); +int btrfs_check_can_nocow(struct btrfs_inode *inode, loff_t pos, + size_t *write_bytes, bool nowait); /* tree-defrag.c */ int btrfs_defrag_leaves(struct btrfs_trans_handle *trans, @@ -3194,7 +3203,7 @@ /* Report first abort since mount */ \ if (!test_and_set_bit(BTRFS_FS_STATE_TRANS_ABORTED, \ &((trans)->fs_info->fs_state))) { \ - if ((errno) != -EIO) { \ + if ((errno) != -EIO && (errno) != -EROFS) { \ WARN(1, KERN_DEBUG \ "BTRFS: Transaction aborted (error %d)\n", \ (errno)); \ @@ -3432,6 +3441,8 @@ int btrfs_reada_wait(void *handle); void btrfs_reada_detach(void *handle); int btree_readahead_hook(struct extent_buffer *eb, int err); +void btrfs_reada_remove_dev(struct btrfs_device *dev); +void btrfs_reada_undo_remove_dev(struct btrfs_device *dev); static inline int is_fstree(u64 rootid) { --- linux-azure-5.8-5.8.0.orig/fs/btrfs/delayed-inode.c +++ linux-azure-5.8-5.8.0/fs/btrfs/delayed-inode.c @@ -627,8 +627,7 @@ */ if (!src_rsv || (!trans->bytes_reserved && src_rsv->type != BTRFS_BLOCK_RSV_DELALLOC)) { - ret = btrfs_qgroup_reserve_meta_prealloc(root, - fs_info->nodesize, true); + ret = btrfs_qgroup_reserve_meta_prealloc(root, num_bytes, true); if (ret < 0) return ret; ret = btrfs_block_rsv_add(root, dst_rsv, num_bytes, --- linux-azure-5.8-5.8.0.orig/fs/btrfs/delayed-ref.c +++ linux-azure-5.8-5.8.0/fs/btrfs/delayed-ref.c @@ -648,12 +648,12 @@ */ static noinline void update_existing_head_ref(struct btrfs_trans_handle *trans, struct btrfs_delayed_ref_head *existing, - struct btrfs_delayed_ref_head *update, - int *old_ref_mod_ret) + struct btrfs_delayed_ref_head *update) { struct btrfs_delayed_ref_root *delayed_refs = &trans->transaction->delayed_refs; struct btrfs_fs_info *fs_info = trans->fs_info; + u64 flags = btrfs_ref_head_to_space_flags(existing); int old_ref_mod; BUG_ON(existing->is_data != update->is_data); @@ -701,8 +701,6 @@ * currently, for refs we just added we know we're a-ok. */ old_ref_mod = existing->total_ref_mod; - if (old_ref_mod_ret) - *old_ref_mod_ret = old_ref_mod; existing->ref_mod += update->ref_mod; existing->total_ref_mod += update->ref_mod; @@ -724,6 +722,27 @@ trans->delayed_ref_updates += csum_leaves; } } + + /* + * This handles the following conditions: + * + * 1. We had a ref mod of 0 or more and went negative, indicating that + * we may be freeing space, so add our space to the + * total_bytes_pinned counter. + * 2. We were negative and went to 0 or positive, so no longer can say + * that the space would be pinned, decrement our counter from the + * total_bytes_pinned counter. + * 3. We are now at 0 and have ->must_insert_reserved set, which means + * this was a new allocation and then we dropped it, and thus must + * add our space to the total_bytes_pinned counter. + */ + if (existing->total_ref_mod < 0 && old_ref_mod >= 0) + btrfs_mod_total_bytes_pinned(fs_info, flags, existing->num_bytes); + else if (existing->total_ref_mod >= 0 && old_ref_mod < 0) + btrfs_mod_total_bytes_pinned(fs_info, flags, -existing->num_bytes); + else if (existing->total_ref_mod == 0 && existing->must_insert_reserved) + btrfs_mod_total_bytes_pinned(fs_info, flags, existing->num_bytes); + spin_unlock(&existing->lock); } @@ -798,8 +817,7 @@ add_delayed_ref_head(struct btrfs_trans_handle *trans, struct btrfs_delayed_ref_head *head_ref, struct btrfs_qgroup_extent_record *qrecord, - int action, int *qrecord_inserted_ret, - int *old_ref_mod, int *new_ref_mod) + int action, int *qrecord_inserted_ret) { struct btrfs_delayed_ref_head *existing; struct btrfs_delayed_ref_root *delayed_refs; @@ -821,8 +839,7 @@ existing = htree_insert(&delayed_refs->href_root, &head_ref->href_node); if (existing) { - update_existing_head_ref(trans, existing, head_ref, - old_ref_mod); + update_existing_head_ref(trans, existing, head_ref); /* * we've updated the existing ref, free the newly * allocated ref @@ -830,14 +847,17 @@ kmem_cache_free(btrfs_delayed_ref_head_cachep, head_ref); head_ref = existing; } else { - if (old_ref_mod) - *old_ref_mod = 0; + u64 flags = btrfs_ref_head_to_space_flags(head_ref); + if (head_ref->is_data && head_ref->ref_mod < 0) { delayed_refs->pending_csums += head_ref->num_bytes; trans->delayed_ref_updates += btrfs_csum_bytes_to_leaves(trans->fs_info, head_ref->num_bytes); } + if (head_ref->ref_mod < 0) + btrfs_mod_total_bytes_pinned(trans->fs_info, flags, + head_ref->num_bytes); delayed_refs->num_heads++; delayed_refs->num_heads_ready++; atomic_inc(&delayed_refs->num_entries); @@ -845,8 +865,6 @@ } if (qrecord_inserted_ret) *qrecord_inserted_ret = qrecord_inserted; - if (new_ref_mod) - *new_ref_mod = head_ref->total_ref_mod; return head_ref; } @@ -909,8 +927,7 @@ */ int btrfs_add_delayed_tree_ref(struct btrfs_trans_handle *trans, struct btrfs_ref *generic_ref, - struct btrfs_delayed_extent_op *extent_op, - int *old_ref_mod, int *new_ref_mod) + struct btrfs_delayed_extent_op *extent_op) { struct btrfs_fs_info *fs_info = trans->fs_info; struct btrfs_delayed_tree_ref *ref; @@ -977,8 +994,7 @@ * the spin lock */ head_ref = add_delayed_ref_head(trans, head_ref, record, - action, &qrecord_inserted, - old_ref_mod, new_ref_mod); + action, &qrecord_inserted); ret = insert_delayed_ref(trans, delayed_refs, head_ref, &ref->node); spin_unlock(&delayed_refs->lock); @@ -1006,8 +1022,7 @@ */ int btrfs_add_delayed_data_ref(struct btrfs_trans_handle *trans, struct btrfs_ref *generic_ref, - u64 reserved, int *old_ref_mod, - int *new_ref_mod) + u64 reserved) { struct btrfs_fs_info *fs_info = trans->fs_info; struct btrfs_delayed_data_ref *ref; @@ -1073,8 +1088,7 @@ * the spin lock */ head_ref = add_delayed_ref_head(trans, head_ref, record, - action, &qrecord_inserted, - old_ref_mod, new_ref_mod); + action, &qrecord_inserted); ret = insert_delayed_ref(trans, delayed_refs, head_ref, &ref->node); spin_unlock(&delayed_refs->lock); @@ -1117,7 +1131,7 @@ spin_lock(&delayed_refs->lock); add_delayed_ref_head(trans, head_ref, NULL, BTRFS_UPDATE_DELAYED_HEAD, - NULL, NULL, NULL); + NULL); spin_unlock(&delayed_refs->lock); --- linux-azure-5.8-5.8.0.orig/fs/btrfs/delayed-ref.h +++ linux-azure-5.8-5.8.0/fs/btrfs/delayed-ref.h @@ -326,6 +326,16 @@ } } +static inline u64 btrfs_ref_head_to_space_flags( + struct btrfs_delayed_ref_head *head_ref) +{ + if (head_ref->is_data) + return BTRFS_BLOCK_GROUP_DATA; + else if (head_ref->is_system) + return BTRFS_BLOCK_GROUP_SYSTEM; + return BTRFS_BLOCK_GROUP_METADATA; +} + static inline void btrfs_put_delayed_ref_head(struct btrfs_delayed_ref_head *head) { if (refcount_dec_and_test(&head->refs)) @@ -334,12 +344,10 @@ int btrfs_add_delayed_tree_ref(struct btrfs_trans_handle *trans, struct btrfs_ref *generic_ref, - struct btrfs_delayed_extent_op *extent_op, - int *old_ref_mod, int *new_ref_mod); + struct btrfs_delayed_extent_op *extent_op); int btrfs_add_delayed_data_ref(struct btrfs_trans_handle *trans, struct btrfs_ref *generic_ref, - u64 reserved, int *old_ref_mod, - int *new_ref_mod); + u64 reserved); int btrfs_add_delayed_extent_op(struct btrfs_trans_handle *trans, u64 bytenr, u64 num_bytes, struct btrfs_delayed_extent_op *extent_op); --- linux-azure-5.8-5.8.0.orig/fs/btrfs/dev-replace.c +++ linux-azure-5.8-5.8.0/fs/btrfs/dev-replace.c @@ -95,6 +95,17 @@ ret = btrfs_search_slot(NULL, dev_root, &key, path, 0, 0); if (ret) { no_valid_dev_replace_entry_found: + /* + * We don't have a replace item or it's corrupted. If there is + * a replace target, fail the mount. + */ + if (btrfs_find_device(fs_info->fs_devices, + BTRFS_DEV_REPLACE_DEVID, NULL, NULL, false)) { + btrfs_err(fs_info, + "found replace target device without a valid replace item"); + ret = -EUCLEAN; + goto out; + } ret = 0; dev_replace->replace_state = BTRFS_IOCTL_DEV_REPLACE_STATE_NEVER_STARTED; @@ -147,8 +158,19 @@ case BTRFS_IOCTL_DEV_REPLACE_STATE_NEVER_STARTED: case BTRFS_IOCTL_DEV_REPLACE_STATE_FINISHED: case BTRFS_IOCTL_DEV_REPLACE_STATE_CANCELED: - dev_replace->srcdev = NULL; - dev_replace->tgtdev = NULL; + /* + * We don't have an active replace item but if there is a + * replace target, fail the mount. + */ + if (btrfs_find_device(fs_info->fs_devices, + BTRFS_DEV_REPLACE_DEVID, NULL, NULL, false)) { + btrfs_err(fs_info, + "replace devid present without an active replace item"); + ret = -EUCLEAN; + } else { + dev_replace->srcdev = NULL; + dev_replace->tgtdev = NULL; + } break; case BTRFS_IOCTL_DEV_REPLACE_STATE_STARTED: case BTRFS_IOCTL_DEV_REPLACE_STATE_SUSPENDED: @@ -230,7 +252,7 @@ int ret = 0; *device_out = NULL; - if (fs_info->fs_devices->seeding) { + if (srcdev->fs_devices->seeding) { btrfs_err(fs_info, "the filesystem is a seed filesystem!"); return -EINVAL; } @@ -599,6 +621,37 @@ wake_up(&fs_info->dev_replace.replace_wait); } +/* + * When finishing the device replace, before swapping the source device with the + * target device we must update the chunk allocation state in the target device, + * as it is empty because replace works by directly copying the chunks and not + * through the normal chunk allocation path. + */ +static int btrfs_set_target_alloc_state(struct btrfs_device *srcdev, + struct btrfs_device *tgtdev) +{ + struct extent_state *cached_state = NULL; + u64 start = 0; + u64 found_start; + u64 found_end; + int ret = 0; + + lockdep_assert_held(&srcdev->fs_info->chunk_mutex); + + while (!find_first_extent_bit(&srcdev->alloc_state, start, + &found_start, &found_end, + CHUNK_ALLOCATED, &cached_state)) { + ret = set_extent_bits(&tgtdev->alloc_state, found_start, + found_end, CHUNK_ALLOCATED); + if (ret) + break; + start = found_end + 1; + } + + free_extent_state(cached_state); + return ret; +} + static int btrfs_dev_replace_finishing(struct btrfs_fs_info *fs_info, int scrub_ret) { @@ -637,6 +690,9 @@ } btrfs_wait_ordered_roots(fs_info, U64_MAX, 0, (u64)-1); + if (!scrub_ret) + btrfs_reada_remove_dev(src_device); + /* * We have to use this loop approach because at this point src_device * has to be available for transaction commit to complete, yet new @@ -645,6 +701,7 @@ while (1) { trans = btrfs_start_transaction(root, 0); if (IS_ERR(trans)) { + btrfs_reada_undo_remove_dev(src_device); mutex_unlock(&dev_replace->lock_finishing_cancel_unmount); return PTR_ERR(trans); } @@ -673,8 +730,14 @@ dev_replace->time_stopped = ktime_get_real_seconds(); dev_replace->item_needs_writeback = 1; - /* replace old device with new one in mapping tree */ + /* + * Update allocation state in the new device and replace the old device + * with the new one in the mapping tree. + */ if (!scrub_ret) { + scrub_ret = btrfs_set_target_alloc_state(src_device, tgt_device); + if (scrub_ret) + goto error; btrfs_dev_replace_update_device_in_mapping_tree(fs_info, src_device, tgt_device); @@ -685,9 +748,11 @@ btrfs_dev_name(src_device), src_device->devid, rcu_str_deref(tgt_device->name), scrub_ret); +error: up_write(&dev_replace->rwsem); mutex_unlock(&fs_info->chunk_mutex); mutex_unlock(&fs_info->fs_devices->device_list_mutex); + btrfs_reada_undo_remove_dev(src_device); btrfs_rm_dev_replace_blocked(fs_info); if (tgt_device) btrfs_destroy_dev_replace_tgtdev(tgt_device); @@ -745,7 +810,9 @@ /* replace the sysfs entry */ btrfs_sysfs_remove_devices_dir(fs_info->fs_devices, src_device); btrfs_sysfs_update_devid(tgt_device); - btrfs_rm_dev_replace_free_srcdev(src_device); + if (test_bit(BTRFS_DEV_STATE_WRITEABLE, &src_device->dev_state)) + btrfs_scratch_superblocks(fs_info, src_device->bdev, + src_device->name->str); /* write back the superblocks */ trans = btrfs_start_transaction(root, 0); @@ -754,6 +821,8 @@ mutex_unlock(&dev_replace->lock_finishing_cancel_unmount); + btrfs_rm_dev_replace_free_srcdev(src_device); + return 0; } --- linux-azure-5.8-5.8.0.orig/fs/btrfs/discard.c +++ linux-azure-5.8-5.8.0/fs/btrfs/discard.c @@ -199,16 +199,15 @@ static struct btrfs_block_group *peek_discard_list( struct btrfs_discard_ctl *discard_ctl, enum btrfs_discard_state *discard_state, - int *discard_index) + int *discard_index, u64 now) { struct btrfs_block_group *block_group; - const u64 now = ktime_get_ns(); spin_lock(&discard_ctl->lock); again: block_group = find_next_block_group(discard_ctl, now); - if (block_group && now > block_group->discard_eligible_time) { + if (block_group && now >= block_group->discard_eligible_time) { if (block_group->discard_index == BTRFS_DISCARD_INDEX_UNUSED && block_group->used != 0) { if (btrfs_is_block_group_data_only(block_group)) @@ -222,12 +221,11 @@ block_group->discard_state = BTRFS_DISCARD_EXTENTS; } discard_ctl->block_group = block_group; + } + if (block_group) { *discard_state = block_group->discard_state; *discard_index = block_group->discard_index; - } else { - block_group = NULL; } - spin_unlock(&discard_ctl->lock); return block_group; @@ -330,28 +328,15 @@ btrfs_discard_schedule_work(discard_ctl, false); } -/** - * btrfs_discard_schedule_work - responsible for scheduling the discard work - * @discard_ctl: discard control - * @override: override the current timer - * - * Discards are issued by a delayed workqueue item. @override is used to - * update the current delay as the baseline delay interval is reevaluated on - * transaction commit. This is also maxed with any other rate limit. - */ -void btrfs_discard_schedule_work(struct btrfs_discard_ctl *discard_ctl, - bool override) +static void __btrfs_discard_schedule_work(struct btrfs_discard_ctl *discard_ctl, + u64 now, bool override) { struct btrfs_block_group *block_group; - const u64 now = ktime_get_ns(); - - spin_lock(&discard_ctl->lock); if (!btrfs_run_discard_work(discard_ctl)) - goto out; - + return; if (!override && delayed_work_pending(&discard_ctl->work)) - goto out; + return; block_group = find_next_block_group(discard_ctl, now); if (block_group) { @@ -384,7 +369,24 @@ mod_delayed_work(discard_ctl->discard_workers, &discard_ctl->work, delay); } -out: +} + +/* + * btrfs_discard_schedule_work - responsible for scheduling the discard work + * @discard_ctl: discard control + * @override: override the current timer + * + * Discards are issued by a delayed workqueue item. @override is used to + * update the current delay as the baseline delay interval is reevaluated on + * transaction commit. This is also maxed with any other rate limit. + */ +void btrfs_discard_schedule_work(struct btrfs_discard_ctl *discard_ctl, + bool override) +{ + const u64 now = ktime_get_ns(); + + spin_lock(&discard_ctl->lock); + __btrfs_discard_schedule_work(discard_ctl, now, override); spin_unlock(&discard_ctl->lock); } @@ -429,13 +431,18 @@ int discard_index = 0; u64 trimmed = 0; u64 minlen = 0; + u64 now = ktime_get_ns(); discard_ctl = container_of(work, struct btrfs_discard_ctl, work.work); block_group = peek_discard_list(discard_ctl, &discard_state, - &discard_index); + &discard_index, now); if (!block_group || !btrfs_run_discard_work(discard_ctl)) return; + if (now < block_group->discard_eligible_time) { + btrfs_discard_schedule_work(discard_ctl, false); + return; + } /* Perform discarding */ minlen = discard_minlen[discard_index]; @@ -484,9 +491,8 @@ spin_lock(&discard_ctl->lock); discard_ctl->block_group = NULL; + __btrfs_discard_schedule_work(discard_ctl, now, false); spin_unlock(&discard_ctl->lock); - - btrfs_discard_schedule_work(discard_ctl, false); } /** --- linux-azure-5.8-5.8.0.orig/fs/btrfs/disk-io.c +++ linux-azure-5.8-5.8.0/fs/btrfs/disk-io.c @@ -636,16 +636,15 @@ csum_tree_block(eb, result); if (memcmp_extent_buffer(eb, result, 0, csum_size)) { - u32 val; - u32 found = 0; - - memcpy(&found, result, csum_size); + u8 val[BTRFS_CSUM_SIZE] = { 0 }; read_extent_buffer(eb, &val, 0, csum_size); btrfs_warn_rl(fs_info, - "%s checksum verify failed on %llu wanted %x found %x level %d", + "%s checksum verify failed on %llu wanted " CSUM_FMT " found " CSUM_FMT " level %d", fs_info->sb->s_id, eb->start, - val, found, btrfs_header_level(eb)); + CSUM_FMT_VALUE(csum_size, val), + CSUM_FMT_VALUE(csum_size, result), + btrfs_header_level(eb)); ret = -EUCLEAN; goto err; } @@ -1342,32 +1341,26 @@ return 0; } -struct btrfs_root *btrfs_read_tree_root(struct btrfs_root *tree_root, - struct btrfs_key *key) +static struct btrfs_root *read_tree_root_path(struct btrfs_root *tree_root, + struct btrfs_path *path, + struct btrfs_key *key) { struct btrfs_root *root; struct btrfs_fs_info *fs_info = tree_root->fs_info; - struct btrfs_path *path; u64 generation; int ret; int level; - path = btrfs_alloc_path(); - if (!path) - return ERR_PTR(-ENOMEM); - root = btrfs_alloc_root(fs_info, key->objectid, GFP_NOFS); - if (!root) { - ret = -ENOMEM; - goto alloc_fail; - } + if (!root) + return ERR_PTR(-ENOMEM); ret = btrfs_find_root(tree_root, key, path, &root->root_item, &root->root_key); if (ret) { if (ret > 0) ret = -ENOENT; - goto find_fail; + goto fail; } generation = btrfs_root_generation(&root->root_item); @@ -1378,24 +1371,39 @@ if (IS_ERR(root->node)) { ret = PTR_ERR(root->node); root->node = NULL; - goto find_fail; + goto fail; } else if (!btrfs_buffer_uptodate(root->node, generation, 0)) { ret = -EIO; - goto find_fail; + goto fail; } root->commit_root = btrfs_root_node(root); -out: - btrfs_free_path(path); return root; - -find_fail: +fail: btrfs_put_root(root); -alloc_fail: - root = ERR_PTR(ret); - goto out; + return ERR_PTR(ret); +} + +struct btrfs_root *btrfs_read_tree_root(struct btrfs_root *tree_root, + struct btrfs_key *key) +{ + struct btrfs_root *root; + struct btrfs_path *path; + + path = btrfs_alloc_path(); + if (!path) + return ERR_PTR(-ENOMEM); + root = read_tree_root_path(tree_root, path, key); + btrfs_free_path(path); + + return root; } -static int btrfs_init_fs_root(struct btrfs_root *root) +/* + * Initialize subvolume root in-memory structure + * + * @anon_dev: anonymous device to attach to the root, if zero, allocate new + */ +static int btrfs_init_fs_root(struct btrfs_root *root, dev_t anon_dev) { int ret; unsigned int nofs_flag; @@ -1428,9 +1436,20 @@ spin_lock_init(&root->ino_cache_lock); init_waitqueue_head(&root->ino_cache_wait); - ret = get_anon_bdev(&root->anon_dev); - if (ret) - goto fail; + /* + * Don't assign anonymous block device to roots that are not exposed to + * userspace, the id pool is limited to 1M + */ + if (is_fstree(root->root_key.objectid) && + btrfs_root_refs(&root->root_item) > 0) { + if (!anon_dev) { + ret = get_anon_bdev(&root->anon_dev); + if (ret) + goto fail; + } else { + root->anon_dev = anon_dev; + } + } mutex_lock(&root->objectid_mutex); ret = btrfs_find_highest_objectid(root, @@ -1464,6 +1483,31 @@ return root; } +static struct btrfs_root *btrfs_get_global_root(struct btrfs_fs_info *fs_info, + u64 objectid) +{ + if (objectid == BTRFS_ROOT_TREE_OBJECTID) + return btrfs_grab_root(fs_info->tree_root); + if (objectid == BTRFS_EXTENT_TREE_OBJECTID) + return btrfs_grab_root(fs_info->extent_root); + if (objectid == BTRFS_CHUNK_TREE_OBJECTID) + return btrfs_grab_root(fs_info->chunk_root); + if (objectid == BTRFS_DEV_TREE_OBJECTID) + return btrfs_grab_root(fs_info->dev_root); + if (objectid == BTRFS_CSUM_TREE_OBJECTID) + return btrfs_grab_root(fs_info->csum_root); + if (objectid == BTRFS_QUOTA_TREE_OBJECTID) + return btrfs_grab_root(fs_info->quota_root) ? + fs_info->quota_root : ERR_PTR(-ENOENT); + if (objectid == BTRFS_UUID_TREE_OBJECTID) + return btrfs_grab_root(fs_info->uuid_root) ? + fs_info->uuid_root : ERR_PTR(-ENOENT); + if (objectid == BTRFS_FREE_SPACE_TREE_OBJECTID) + return btrfs_grab_root(fs_info->free_space_root) ? + fs_info->free_space_root : ERR_PTR(-ENOENT); + return NULL; +} + int btrfs_insert_fs_root(struct btrfs_fs_info *fs_info, struct btrfs_root *root) { @@ -1534,36 +1578,41 @@ } -struct btrfs_root *btrfs_get_fs_root(struct btrfs_fs_info *fs_info, - u64 objectid, bool check_ref) +/* + * Get an in-memory reference of a root structure. + * + * For essential trees like root/extent tree, we grab it from fs_info directly. + * For subvolume trees, we check the cached filesystem roots first. If not + * found, then read it from disk and add it to cached fs roots. + * + * Caller should release the root by calling btrfs_put_root() after the usage. + * + * NOTE: Reloc and log trees can't be read by this function as they share the + * same root objectid. + * + * @objectid: root id + * @anon_dev: preallocated anonymous block device number for new roots, + * pass 0 for new allocation. + * @check_ref: whether to check root item references, If true, return -ENOENT + * for orphan roots + */ +static struct btrfs_root *btrfs_get_root_ref(struct btrfs_fs_info *fs_info, + u64 objectid, dev_t anon_dev, + bool check_ref) { struct btrfs_root *root; struct btrfs_path *path; struct btrfs_key key; int ret; - if (objectid == BTRFS_ROOT_TREE_OBJECTID) - return btrfs_grab_root(fs_info->tree_root); - if (objectid == BTRFS_EXTENT_TREE_OBJECTID) - return btrfs_grab_root(fs_info->extent_root); - if (objectid == BTRFS_CHUNK_TREE_OBJECTID) - return btrfs_grab_root(fs_info->chunk_root); - if (objectid == BTRFS_DEV_TREE_OBJECTID) - return btrfs_grab_root(fs_info->dev_root); - if (objectid == BTRFS_CSUM_TREE_OBJECTID) - return btrfs_grab_root(fs_info->csum_root); - if (objectid == BTRFS_QUOTA_TREE_OBJECTID) - return btrfs_grab_root(fs_info->quota_root) ? - fs_info->quota_root : ERR_PTR(-ENOENT); - if (objectid == BTRFS_UUID_TREE_OBJECTID) - return btrfs_grab_root(fs_info->uuid_root) ? - fs_info->uuid_root : ERR_PTR(-ENOENT); - if (objectid == BTRFS_FREE_SPACE_TREE_OBJECTID) - return btrfs_grab_root(fs_info->free_space_root) ? - fs_info->free_space_root : ERR_PTR(-ENOENT); + root = btrfs_get_global_root(fs_info, objectid); + if (root) + return root; again: root = btrfs_lookup_fs_root(fs_info, objectid); if (root) { + /* Shouldn't get preallocated anon_dev for cached roots */ + ASSERT(!anon_dev); if (check_ref && btrfs_root_refs(&root->root_item) == 0) { btrfs_put_root(root); return ERR_PTR(-ENOENT); @@ -1583,7 +1632,7 @@ goto fail; } - ret = btrfs_init_fs_root(root); + ret = btrfs_init_fs_root(root, anon_dev); if (ret) goto fail; @@ -1616,6 +1665,33 @@ return ERR_PTR(ret); } +/* + * Get in-memory reference of a root structure + * + * @objectid: tree objectid + * @check_ref: if set, verify that the tree exists and the item has at least + * one reference + */ +struct btrfs_root *btrfs_get_fs_root(struct btrfs_fs_info *fs_info, + u64 objectid, bool check_ref) +{ + return btrfs_get_root_ref(fs_info, objectid, 0, check_ref); +} + +/* + * Get in-memory reference of a root structure, created as new, optionally pass + * the anonymous block device id + * + * @objectid: tree objectid + * @anon_dev: if zero, allocate a new anonymous block device or use the + * parameter value + */ +struct btrfs_root *btrfs_get_new_fs_root(struct btrfs_fs_info *fs_info, + u64 objectid, dev_t anon_dev) +{ + return btrfs_get_root_ref(fs_info, objectid, anon_dev, true); +} + static int btrfs_congested_fn(void *congested_data, int bdi_bits) { struct btrfs_fs_info *info = (struct btrfs_fs_info *)congested_data; @@ -1638,6 +1714,52 @@ } /* + * btrfs_get_fs_root_commit_root - return a root for the given objectid + * @fs_info: the fs_info + * @objectid: the objectid we need to lookup + * + * This is exclusively used for backref walking, and exists specifically because + * of how qgroups does lookups. Qgroups will do a backref lookup at delayed ref + * creation time, which means we may have to read the tree_root in order to look + * up a fs root that is not in memory. If the root is not in memory we will + * read the tree root commit root and look up the fs root from there. This is a + * temporary root, it will not be inserted into the radix tree as it doesn't + * have the most uptodate information, it'll simply be discarded once the + * backref code is finished using the root. + */ +struct btrfs_root *btrfs_get_fs_root_commit_root(struct btrfs_fs_info *fs_info, + struct btrfs_path *path, + u64 objectid) +{ + struct btrfs_root *root; + struct btrfs_key key; + + ASSERT(path->search_commit_root && path->skip_locking); + + /* + * This can return -ENOENT if we ask for a root that doesn't exist, but + * since this is called via the backref walking code we won't be looking + * up a root that doesn't exist, unless there's corruption. So if root + * != NULL just return it. + */ + root = btrfs_get_global_root(fs_info, objectid); + if (root) + return root; + + root = btrfs_lookup_fs_root(fs_info, objectid); + if (root) + return root; + + key.objectid = objectid; + key.type = BTRFS_ROOT_ITEM_KEY; + key.offset = (u64)-1; + root = read_tree_root_path(fs_info->tree_root, path, &key); + btrfs_release_path(path); + + return root; +} + +/* * called by the kthread helper functions to finally call the bio end_io * functions. This is where read checksum verification actually happens */ @@ -3382,6 +3504,8 @@ btrfs_put_block_group_cache(fs_info); fail_tree_roots: + if (fs_info->data_reloc_root) + btrfs_drop_and_free_fs_root(fs_info, fs_info->data_reloc_root); free_root_pointers(fs_info, true); invalidate_inode_pages2(fs_info->btree_inode->i_mapping); @@ -3445,8 +3569,12 @@ return ERR_CAST(page); super = page_address(page); - if (btrfs_super_bytenr(super) != bytenr || - btrfs_super_magic(super) != BTRFS_MAGIC) { + if (btrfs_super_magic(super) != BTRFS_MAGIC) { + btrfs_release_disk_super(super); + return ERR_PTR(-ENODATA); + } + + if (btrfs_super_bytenr(super) != bytenr) { btrfs_release_disk_super(super); return ERR_PTR(-EINVAL); } @@ -4510,6 +4638,7 @@ cache->io_ctl.inode = NULL; iput(inode); } + ASSERT(cache->io_ctl.pages == NULL); btrfs_put_block_group(cache); } --- linux-azure-5.8-5.8.0.orig/fs/btrfs/disk-io.h +++ linux-azure-5.8-5.8.0/fs/btrfs/disk-io.h @@ -67,6 +67,11 @@ struct btrfs_root *btrfs_get_fs_root(struct btrfs_fs_info *fs_info, u64 objectid, bool check_ref); +struct btrfs_root *btrfs_get_new_fs_root(struct btrfs_fs_info *fs_info, + u64 objectid, dev_t anon_dev); +struct btrfs_root *btrfs_get_fs_root_commit_root(struct btrfs_fs_info *fs_info, + struct btrfs_path *path, + u64 objectid); void btrfs_free_fs_info(struct btrfs_fs_info *fs_info); int btrfs_cleanup_fs_roots(struct btrfs_fs_info *fs_info); --- linux-azure-5.8-5.8.0.orig/fs/btrfs/extent-io-tree.h +++ linux-azure-5.8-5.8.0/fs/btrfs/extent-io-tree.h @@ -34,6 +34,8 @@ */ #define CHUNK_ALLOCATED EXTENT_DIRTY #define CHUNK_TRIMMED EXTENT_DEFRAG +#define CHUNK_STATE_MASK (CHUNK_ALLOCATED | \ + CHUNK_TRIMMED) enum { IO_TREE_FS_PINNED_EXTENTS, @@ -46,6 +48,7 @@ IO_TREE_INODE_FILE_EXTENT, IO_TREE_LOG_CSUM_RANGE, IO_TREE_SELFTEST, + IO_TREE_DEVICE_ALLOC_STATE, }; struct extent_io_tree { --- linux-azure-5.8-5.8.0.orig/fs/btrfs/extent-tree.c +++ linux-azure-5.8-5.8.0/fs/btrfs/extent-tree.c @@ -33,6 +33,7 @@ #include "delalloc-space.h" #include "block-group.h" #include "discard.h" +#include "rcu-string.h" #undef SCRAMBLE_DELAYED_REFS @@ -81,41 +82,6 @@ EXTENT_UPTODATE); } -static u64 generic_ref_to_space_flags(struct btrfs_ref *ref) -{ - if (ref->type == BTRFS_REF_METADATA) { - if (ref->tree_ref.root == BTRFS_CHUNK_TREE_OBJECTID) - return BTRFS_BLOCK_GROUP_SYSTEM; - else - return BTRFS_BLOCK_GROUP_METADATA; - } - return BTRFS_BLOCK_GROUP_DATA; -} - -static void add_pinned_bytes(struct btrfs_fs_info *fs_info, - struct btrfs_ref *ref) -{ - struct btrfs_space_info *space_info; - u64 flags = generic_ref_to_space_flags(ref); - - space_info = btrfs_find_space_info(fs_info, flags); - ASSERT(space_info); - percpu_counter_add_batch(&space_info->total_bytes_pinned, ref->len, - BTRFS_TOTAL_BYTES_PINNED_BATCH); -} - -static void sub_pinned_bytes(struct btrfs_fs_info *fs_info, - struct btrfs_ref *ref) -{ - struct btrfs_space_info *space_info; - u64 flags = generic_ref_to_space_flags(ref); - - space_info = btrfs_find_space_info(fs_info, flags); - ASSERT(space_info); - percpu_counter_add_batch(&space_info->total_bytes_pinned, -ref->len, - BTRFS_TOTAL_BYTES_PINNED_BATCH); -} - /* simple helper to search for an existing data extent at a given offset */ int btrfs_lookup_data_extent(struct btrfs_fs_info *fs_info, u64 start, u64 len) { @@ -399,12 +365,11 @@ if (type == BTRFS_SHARED_BLOCK_REF_KEY) { ASSERT(eb->fs_info); /* - * Every shared one has parent tree - * block, which must be aligned to - * nodesize. + * Every shared one has parent tree block, + * which must be aligned to sector size. */ if (offset && - IS_ALIGNED(offset, eb->fs_info->nodesize)) + IS_ALIGNED(offset, eb->fs_info->sectorsize)) return type; } } else if (is_data == BTRFS_REF_TYPE_DATA) { @@ -413,12 +378,11 @@ if (type == BTRFS_SHARED_DATA_REF_KEY) { ASSERT(eb->fs_info); /* - * Every shared one has parent tree - * block, which must be aligned to - * nodesize. + * Every shared one has parent tree block, + * which must be aligned to sector size. */ if (offset && - IS_ALIGNED(offset, eb->fs_info->nodesize)) + IS_ALIGNED(offset, eb->fs_info->sectorsize)) return type; } } else { @@ -428,8 +392,9 @@ } btrfs_print_leaf((struct extent_buffer *)eb); - btrfs_err(eb->fs_info, "eb %llu invalid extent inline ref type %d", - eb->start, type); + btrfs_err(eb->fs_info, + "eb %llu iref 0x%lx invalid extent inline ref type %d", + eb->start, (unsigned long)iref, type); WARN_ON(1); return BTRFS_REF_TYPE_INVALID; @@ -1177,7 +1142,22 @@ num_bytes, parent, root_objectid, owner, offset, 1); if (ret == 0) { - BUG_ON(owner < BTRFS_FIRST_FREE_OBJECTID); + /* + * We're adding refs to a tree block we already own, this + * should not happen at all. + */ + if (owner < BTRFS_FIRST_FREE_OBJECTID) { + btrfs_crit(trans->fs_info, +"adding refs to an existing tree ref, bytenr %llu num_bytes %llu root_objectid %llu", + bytenr, num_bytes, root_objectid); + if (IS_ENABLED(CONFIG_BTRFS_DEBUG)) { + WARN_ON(1); + btrfs_crit(trans->fs_info, + "path->slots[0]=%d path->nodes[0]:", path->slots[0]); + btrfs_print_leaf(path->nodes[0]); + } + return -EUCLEAN; + } update_inline_extent_backref(path, iref, refs_to_add, extent_op, NULL); } else if (ret == -ENOENT) { @@ -1371,7 +1351,6 @@ struct btrfs_ref *generic_ref) { struct btrfs_fs_info *fs_info = trans->fs_info; - int old_ref_mod, new_ref_mod; int ret; ASSERT(generic_ref->type != BTRFS_REF_NOT_SET && @@ -1380,23 +1359,21 @@ generic_ref->tree_ref.root == BTRFS_TREE_LOG_OBJECTID); if (generic_ref->type == BTRFS_REF_METADATA) - ret = btrfs_add_delayed_tree_ref(trans, generic_ref, - NULL, &old_ref_mod, &new_ref_mod); + ret = btrfs_add_delayed_tree_ref(trans, generic_ref, NULL); else - ret = btrfs_add_delayed_data_ref(trans, generic_ref, 0, - &old_ref_mod, &new_ref_mod); + ret = btrfs_add_delayed_data_ref(trans, generic_ref, 0); btrfs_ref_tree_mod(fs_info, generic_ref); - if (ret == 0 && old_ref_mod < 0 && new_ref_mod >= 0) - sub_pinned_bytes(fs_info, generic_ref); - return ret; } /* * __btrfs_inc_extent_ref - insert backreference for a given extent * + * The counterpart is in __btrfs_free_extent(), with examples and more details + * how it works. + * * @trans: Handle of transaction * * @node: The delayed ref node used to get the bytenr/length for @@ -1778,34 +1755,28 @@ { int nr_items = 1; /* Dropping this ref head update. */ - if (head->total_ref_mod < 0) { - struct btrfs_space_info *space_info; - u64 flags; - - if (head->is_data) - flags = BTRFS_BLOCK_GROUP_DATA; - else if (head->is_system) - flags = BTRFS_BLOCK_GROUP_SYSTEM; - else - flags = BTRFS_BLOCK_GROUP_METADATA; - space_info = btrfs_find_space_info(fs_info, flags); - ASSERT(space_info); - percpu_counter_add_batch(&space_info->total_bytes_pinned, - -head->num_bytes, - BTRFS_TOTAL_BYTES_PINNED_BATCH); + /* + * We had csum deletions accounted for in our delayed refs rsv, we need + * to drop the csum leaves for this update from our delayed_refs_rsv. + */ + if (head->total_ref_mod < 0 && head->is_data) { + spin_lock(&delayed_refs->lock); + delayed_refs->pending_csums -= head->num_bytes; + spin_unlock(&delayed_refs->lock); + nr_items += btrfs_csum_bytes_to_leaves(fs_info, head->num_bytes); + } - /* - * We had csum deletions accounted for in our delayed refs rsv, - * we need to drop the csum leaves for this update from our - * delayed_refs_rsv. - */ - if (head->is_data) { - spin_lock(&delayed_refs->lock); - delayed_refs->pending_csums -= head->num_bytes; - spin_unlock(&delayed_refs->lock); - nr_items += btrfs_csum_bytes_to_leaves(fs_info, - head->num_bytes); - } + /* + * We were dropping refs, or had a new ref and dropped it, and thus must + * adjust down our total_bytes_pinned, the space may or may not have + * been pinned and so is accounted for properly in the pinned space by + * now. + */ + if (head->total_ref_mod < 0 || + (head->total_ref_mod == 0 && head->must_insert_reserved)) { + u64 flags = btrfs_ref_head_to_space_flags(head); + + btrfs_mod_total_bytes_pinned(fs_info, flags, -head->num_bytes); } btrfs_delayed_refs_rsv_release(fs_info, nr_items); @@ -2305,7 +2276,8 @@ static noinline int check_committed_ref(struct btrfs_root *root, struct btrfs_path *path, - u64 objectid, u64 offset, u64 bytenr) + u64 objectid, u64 offset, u64 bytenr, + bool strict) { struct btrfs_fs_info *fs_info = root->fs_info; struct btrfs_root *extent_root = fs_info->extent_root; @@ -2347,9 +2319,13 @@ btrfs_extent_inline_ref_size(BTRFS_EXTENT_DATA_REF_KEY)) goto out; - /* If extent created before last snapshot => it's definitely shared */ - if (btrfs_extent_generation(leaf, ei) <= - btrfs_root_last_snapshot(&root->root_item)) + /* + * If extent created before last snapshot => it's shared unless the + * snapshot has been deleted. Use the heuristic if strict is false. + */ + if (!strict && + (btrfs_extent_generation(leaf, ei) <= + btrfs_root_last_snapshot(&root->root_item))) goto out; iref = (struct btrfs_extent_inline_ref *)(ei + 1); @@ -2374,7 +2350,7 @@ } int btrfs_cross_ref_exist(struct btrfs_root *root, u64 objectid, u64 offset, - u64 bytenr) + u64 bytenr, bool strict) { struct btrfs_path *path; int ret; @@ -2385,7 +2361,7 @@ do { ret = check_committed_ref(root, path, objectid, - offset, bytenr); + offset, bytenr, strict); if (ret && ret != -ENOENT) goto out; @@ -2569,8 +2545,7 @@ spin_unlock(&cache->lock); spin_unlock(&cache->space_info->lock); - percpu_counter_add_batch(&cache->space_info->total_bytes_pinned, - num_bytes, BTRFS_TOTAL_BYTES_PINNED_BATCH); + __btrfs_mod_total_bytes_pinned(cache->space_info, num_bytes); set_extent_dirty(&trans->transaction->pinned_extents, bytenr, bytenr + num_bytes - 1, GFP_NOFS | __GFP_NOFAIL); return 0; @@ -2707,31 +2682,6 @@ atomic_inc(&bg->reservations); } -void btrfs_prepare_extent_commit(struct btrfs_fs_info *fs_info) -{ - struct btrfs_caching_control *next; - struct btrfs_caching_control *caching_ctl; - struct btrfs_block_group *cache; - - down_write(&fs_info->commit_root_sem); - - list_for_each_entry_safe(caching_ctl, next, - &fs_info->caching_block_groups, list) { - cache = caching_ctl->block_group; - if (btrfs_block_group_done(cache)) { - cache->last_byte_to_unpin = (u64)-1; - list_del_init(&caching_ctl->list); - btrfs_put_caching_control(caching_ctl); - } else { - cache->last_byte_to_unpin = caching_ctl->progress; - } - } - - up_write(&fs_info->commit_root_sem); - - btrfs_update_global_block_rsv(fs_info); -} - /* * Returns the free cluster for the given space info and sets empty_cluster to * what it should be based on the mount options. @@ -2793,10 +2743,10 @@ len = cache->start + cache->length - start; len = min(len, end + 1 - start); - if (start < cache->last_byte_to_unpin) { - len = min(len, cache->last_byte_to_unpin - start); - if (return_free_space) - btrfs_add_free_space(cache, start, len); + if (start < cache->last_byte_to_unpin && return_free_space) { + u64 add_len = min(len, cache->last_byte_to_unpin - start); + + btrfs_add_free_space(cache, start, add_len); } start += len; @@ -2821,8 +2771,7 @@ cache->pinned -= len; btrfs_space_info_update_bytes_pinned(fs_info, space_info, -len); space_info->max_extent_size = 0; - percpu_counter_add_batch(&space_info->total_bytes_pinned, - -len, BTRFS_TOTAL_BYTES_PINNED_BATCH); + __btrfs_mod_total_bytes_pinned(space_info, -len); if (cache->ro) { space_info->bytes_readonly += len; readonly = true; @@ -2930,6 +2879,65 @@ return 0; } +/* + * Drop one or more refs of @node. + * + * 1. Locate the extent refs. + * It's either inline in EXTENT/METADATA_ITEM or in keyed SHARED_* item. + * Locate it, then reduce the refs number or remove the ref line completely. + * + * 2. Update the refs count in EXTENT/METADATA_ITEM + * + * Inline backref case: + * + * in extent tree we have: + * + * item 0 key (13631488 EXTENT_ITEM 1048576) itemoff 16201 itemsize 82 + * refs 2 gen 6 flags DATA + * extent data backref root FS_TREE objectid 258 offset 0 count 1 + * extent data backref root FS_TREE objectid 257 offset 0 count 1 + * + * This function gets called with: + * + * node->bytenr = 13631488 + * node->num_bytes = 1048576 + * root_objectid = FS_TREE + * owner_objectid = 257 + * owner_offset = 0 + * refs_to_drop = 1 + * + * Then we should get some like: + * + * item 0 key (13631488 EXTENT_ITEM 1048576) itemoff 16201 itemsize 82 + * refs 1 gen 6 flags DATA + * extent data backref root FS_TREE objectid 258 offset 0 count 1 + * + * Keyed backref case: + * + * in extent tree we have: + * + * item 0 key (13631488 EXTENT_ITEM 1048576) itemoff 3971 itemsize 24 + * refs 754 gen 6 flags DATA + * [...] + * item 2 key (13631488 EXTENT_DATA_REF ) itemoff 3915 itemsize 28 + * extent data backref root FS_TREE objectid 866 offset 0 count 1 + * + * This function get called with: + * + * node->bytenr = 13631488 + * node->num_bytes = 1048576 + * root_objectid = FS_TREE + * owner_objectid = 866 + * owner_offset = 0 + * refs_to_drop = 1 + * + * Then we should get some like: + * + * item 0 key (13631488 EXTENT_ITEM 1048576) itemoff 3971 itemsize 24 + * refs 753 gen 6 flags DATA + * + * And that (13631488 EXTENT_DATA_REF ) gets removed. + */ static int __btrfs_free_extent(struct btrfs_trans_handle *trans, struct btrfs_delayed_ref_node *node, u64 parent, u64 root_objectid, u64 owner_objectid, @@ -2962,7 +2970,15 @@ path->leave_spinning = 1; is_data = owner_objectid >= BTRFS_FIRST_FREE_OBJECTID; - BUG_ON(!is_data && refs_to_drop != 1); + + if (!is_data && refs_to_drop != 1) { + btrfs_crit(info, +"invalid refs_to_drop, dropping more than 1 refs for tree block %llu refs_to_drop %u", + node->bytenr, refs_to_drop); + ret = -EINVAL; + btrfs_abort_transaction(trans, ret); + goto out; + } if (is_data) skinny_metadata = false; @@ -2971,6 +2987,13 @@ parent, root_objectid, owner_objectid, owner_offset); if (ret == 0) { + /* + * Either the inline backref or the SHARED_DATA_REF/ + * SHARED_BLOCK_REF is found + * + * Here is a quick path to locate EXTENT/METADATA_ITEM. + * It's possible the EXTENT/METADATA_ITEM is near current slot. + */ extent_slot = path->slots[0]; while (extent_slot >= 0) { btrfs_item_key_to_cpu(path->nodes[0], &key, @@ -2987,13 +3010,21 @@ found_extent = 1; break; } + + /* Quick path didn't find the EXTEMT/METADATA_ITEM */ if (path->slots[0] - extent_slot > 5) break; extent_slot--; } if (!found_extent) { - BUG_ON(iref); + if (iref) { + btrfs_crit(info, +"invalid iref, no EXTENT/METADATA_ITEM found but has inline extent ref"); + btrfs_abort_transaction(trans, -EUCLEAN); + goto err_dump; + } + /* Must be SHARED_* item, remove the backref first */ ret = remove_extent_backref(trans, path, NULL, refs_to_drop, is_data, &last_ref); @@ -3004,6 +3035,7 @@ btrfs_release_path(path); path->leave_spinning = 1; + /* Slow path to locate EXTENT/METADATA_ITEM */ key.objectid = bytenr; key.type = BTRFS_EXTENT_ITEM_KEY; key.offset = num_bytes; @@ -3078,19 +3110,26 @@ if (owner_objectid < BTRFS_FIRST_FREE_OBJECTID && key.type == BTRFS_EXTENT_ITEM_KEY) { struct btrfs_tree_block_info *bi; - BUG_ON(item_size < sizeof(*ei) + sizeof(*bi)); + if (item_size < sizeof(*ei) + sizeof(*bi)) { + btrfs_crit(info, +"invalid extent item size for key (%llu, %u, %llu) owner %llu, has %u expect >= %zu", + key.objectid, key.type, key.offset, + owner_objectid, item_size, + sizeof(*ei) + sizeof(*bi)); + btrfs_abort_transaction(trans, -EUCLEAN); + goto err_dump; + } bi = (struct btrfs_tree_block_info *)(ei + 1); WARN_ON(owner_objectid != btrfs_tree_block_level(leaf, bi)); } refs = btrfs_extent_refs(leaf, ei); if (refs < refs_to_drop) { - btrfs_err(info, - "trying to drop %d refs but we only have %Lu for bytenr %Lu", + btrfs_crit(info, + "trying to drop %d refs but we only have %llu for bytenr %llu", refs_to_drop, refs, bytenr); - ret = -EINVAL; - btrfs_abort_transaction(trans, ret); - goto out; + btrfs_abort_transaction(trans, -EUCLEAN); + goto err_dump; } refs -= refs_to_drop; @@ -3102,7 +3141,12 @@ * be updated by remove_extent_backref */ if (iref) { - BUG_ON(!found_extent); + if (!found_extent) { + btrfs_crit(info, +"invalid iref, got inlined extent ref but no EXTENT/METADATA_ITEM found"); + btrfs_abort_transaction(trans, -EUCLEAN); + goto err_dump; + } } else { btrfs_set_extent_refs(leaf, ei, refs); btrfs_mark_buffer_dirty(leaf); @@ -3117,13 +3161,39 @@ } } } else { + /* In this branch refs == 1 */ if (found_extent) { - BUG_ON(is_data && refs_to_drop != - extent_data_ref_count(path, iref)); + if (is_data && refs_to_drop != + extent_data_ref_count(path, iref)) { + btrfs_crit(info, + "invalid refs_to_drop, current refs %u refs_to_drop %u", + extent_data_ref_count(path, iref), + refs_to_drop); + btrfs_abort_transaction(trans, -EUCLEAN); + goto err_dump; + } if (iref) { - BUG_ON(path->slots[0] != extent_slot); + if (path->slots[0] != extent_slot) { + btrfs_crit(info, +"invalid iref, extent item key (%llu %u %llu) doesn't have wanted iref", + key.objectid, key.type, + key.offset); + btrfs_abort_transaction(trans, -EUCLEAN); + goto err_dump; + } } else { - BUG_ON(path->slots[0] != extent_slot + 1); + /* + * No inline ref, we must be at SHARED_* item, + * And it's single ref, it must be: + * | extent_slot ||extent_slot + 1| + * [ EXTENT/METADATA_ITEM ][ SHARED_* ITEM ] + */ + if (path->slots[0] != extent_slot + 1) { + btrfs_crit(info, + "invalid SHARED_* item, previous item is not EXTENT/METADATA_ITEM"); + btrfs_abort_transaction(trans, -EUCLEAN); + goto err_dump; + } path->slots[0] = extent_slot; num_to_del = 2; } @@ -3164,6 +3234,19 @@ out: btrfs_free_path(path); return ret; +err_dump: + /* + * Leaf dump can take up a lot of log buffer, so we only do full leaf + * dump for debug build. + */ + if (IS_ENABLED(CONFIG_BTRFS_DEBUG)) { + btrfs_crit(info, "path->slots[0]=%d extent_slot=%d", + path->slots[0], extent_slot); + btrfs_print_leaf(path->nodes[0]); + } + + btrfs_free_path(path); + return -EUCLEAN; } /* @@ -3228,7 +3311,6 @@ { struct btrfs_fs_info *fs_info = root->fs_info; struct btrfs_ref generic_ref = { 0 }; - int pin = 1; int ret; btrfs_init_generic_ref(&generic_ref, BTRFS_DROP_DELAYED_REF, @@ -3237,13 +3319,9 @@ root->root_key.objectid); if (root->root_key.objectid != BTRFS_TREE_LOG_OBJECTID) { - int old_ref_mod, new_ref_mod; - btrfs_ref_tree_mod(fs_info, &generic_ref); - ret = btrfs_add_delayed_tree_ref(trans, &generic_ref, NULL, - &old_ref_mod, &new_ref_mod); + ret = btrfs_add_delayed_tree_ref(trans, &generic_ref, NULL); BUG_ON(ret); /* -ENOMEM */ - pin = old_ref_mod >= 0 && new_ref_mod < 0; } if (last_ref && btrfs_header_generation(buf) == trans->transid) { @@ -3255,7 +3333,6 @@ goto out; } - pin = 0; cache = btrfs_lookup_block_group(fs_info, buf->start); if (btrfs_header_flag(buf, BTRFS_HEADER_FLAG_WRITTEN)) { @@ -3272,9 +3349,6 @@ trace_btrfs_reserved_extent_free(fs_info, buf->start, buf->len); } out: - if (pin) - add_pinned_bytes(fs_info, &generic_ref); - if (last_ref) { /* * Deleting the buffer, clear the corrupt flag since it doesn't @@ -3288,7 +3362,6 @@ int btrfs_free_extent(struct btrfs_trans_handle *trans, struct btrfs_ref *ref) { struct btrfs_fs_info *fs_info = trans->fs_info; - int old_ref_mod, new_ref_mod; int ret; if (btrfs_is_testing(fs_info)) @@ -3304,14 +3377,11 @@ ref->data_ref.ref_root == BTRFS_TREE_LOG_OBJECTID)) { /* unlocks the pinned mutex */ btrfs_pin_extent(trans, ref->bytenr, ref->len, 1); - old_ref_mod = new_ref_mod = 0; ret = 0; } else if (ref->type == BTRFS_REF_METADATA) { - ret = btrfs_add_delayed_tree_ref(trans, ref, NULL, - &old_ref_mod, &new_ref_mod); + ret = btrfs_add_delayed_tree_ref(trans, ref, NULL); } else { - ret = btrfs_add_delayed_data_ref(trans, ref, 0, - &old_ref_mod, &new_ref_mod); + ret = btrfs_add_delayed_data_ref(trans, ref, 0); } if (!((ref->type == BTRFS_REF_METADATA && @@ -3320,9 +3390,6 @@ ref->data_ref.ref_root == BTRFS_TREE_LOG_OBJECTID))) btrfs_ref_tree_mod(fs_info, ref); - if (ret == 0 && old_ref_mod >= 0 && new_ref_mod < 0) - add_pinned_bytes(fs_info, ref); - return ret; } @@ -3913,11 +3980,12 @@ * |- Push harder to find free extents * |- If not found, re-iterate all block groups */ -static noinline int find_free_extent(struct btrfs_fs_info *fs_info, +static noinline int find_free_extent(struct btrfs_root *root, u64 ram_bytes, u64 num_bytes, u64 empty_size, u64 hint_byte_orig, struct btrfs_key *ins, u64 flags, int delalloc) { + struct btrfs_fs_info *fs_info = root->fs_info; int ret = 0; int cache_block_group_error = 0; struct btrfs_block_group *block_group = NULL; @@ -3949,7 +4017,7 @@ ins->objectid = 0; ins->offset = 0; - trace_find_free_extent(fs_info, num_bytes, empty_size, flags); + trace_find_free_extent(root, num_bytes, empty_size, flags); space_info = btrfs_find_space_info(fs_info, flags); if (!space_info) { @@ -4198,7 +4266,7 @@ flags = get_alloc_profile_by_root(root, is_data); again: WARN_ON(num_bytes < fs_info->sectorsize); - ret = find_free_extent(fs_info, ram_bytes, num_bytes, empty_size, + ret = find_free_extent(root, ram_bytes, num_bytes, empty_size, hint_byte, ins, flags, delalloc); if (!ret && !is_data) { btrfs_dec_block_group_reservations(fs_info, ins->objectid); @@ -4439,7 +4507,6 @@ struct btrfs_key *ins) { struct btrfs_ref generic_ref = { 0 }; - int ret; BUG_ON(root->root_key.objectid == BTRFS_TREE_LOG_OBJECTID); @@ -4447,9 +4514,8 @@ ins->objectid, ins->offset, 0); btrfs_init_data_ref(&generic_ref, root->root_key.objectid, owner, offset); btrfs_ref_tree_mod(root->fs_info, &generic_ref); - ret = btrfs_add_delayed_data_ref(trans, &generic_ref, - ram_bytes, NULL, NULL); - return ret; + + return btrfs_add_delayed_data_ref(trans, &generic_ref, ram_bytes); } /* @@ -4521,7 +4587,7 @@ return ERR_PTR(-EUCLEAN); } - btrfs_set_buffer_lockdep_class(root->root_key.objectid, buf, level); + btrfs_set_buffer_lockdep_class(owner, buf, level); btrfs_tree_lock(buf); btrfs_clean_tree_block(buf); clear_bit(EXTENT_BUFFER_STALE, &buf->bflags); @@ -4635,8 +4701,7 @@ generic_ref.real_root = root->root_key.objectid; btrfs_init_tree_ref(&generic_ref, level, root_objectid); btrfs_ref_tree_mod(fs_info, &generic_ref); - ret = btrfs_add_delayed_tree_ref(trans, &generic_ref, - extent_op, NULL, NULL); + ret = btrfs_add_delayed_tree_ref(trans, &generic_ref, extent_op); if (ret) goto out_free_delayed; } @@ -5298,7 +5363,14 @@ goto out; } - trans = btrfs_start_transaction(tree_root, 0); + /* + * Use join to avoid potential EINTR from transaction start. See + * wait_reserve_ticket and the whole reservation callchain. + */ + if (for_reloc) + trans = btrfs_join_transaction(tree_root); + else + trans = btrfs_start_transaction(tree_root, 0); if (IS_ERR(trans)) { err = PTR_ERR(trans); goto out_free; @@ -5430,7 +5502,15 @@ goto out_free; } - trans = btrfs_start_transaction(tree_root, 0); + /* + * Use join to avoid potential EINTR from transaction + * start. See wait_reserve_ticket and the whole + * reservation callchain. + */ + if (for_reloc) + trans = btrfs_join_transaction(tree_root); + else + trans = btrfs_start_transaction(tree_root, 0); if (IS_ERR(trans)) { err = PTR_ERR(trans); goto out_free; @@ -5466,6 +5546,14 @@ } } + /* + * This subvolume is going to be completely dropped, and won't be + * recorded as dirty roots, thus pertrans meta rsv will not be freed at + * commit transaction time. So free it here manually. + */ + btrfs_qgroup_convert_reserved_meta(root, INT_MAX); + btrfs_qgroup_free_meta_all_pertrans(root); + if (test_bit(BTRFS_ROOT_IN_RADIX, &root->state)) btrfs_add_dropped_root(trans, root); else @@ -5653,6 +5741,19 @@ &start, &end, CHUNK_TRIMMED | CHUNK_ALLOCATED); + /* Check if there are any CHUNK_* bits left */ + if (start > device->total_bytes) { + WARN_ON(IS_ENABLED(CONFIG_BTRFS_DEBUG)); + btrfs_warn_in_rcu(fs_info, +"ignoring attempt to trim beyond device size: offset %llu length %llu device %s device size %llu", + start, end - start + 1, + rcu_str_deref(device->name), + device->total_bytes); + mutex_unlock(&fs_info->chunk_mutex); + ret = 0; + break; + } + /* Ensure we skip the reserved area in the first 1M */ start = max_t(u64, start, SZ_1M); --- linux-azure-5.8-5.8.0.orig/fs/btrfs/extent_io.c +++ linux-azure-5.8-5.8.0/fs/btrfs/extent_io.c @@ -676,9 +676,7 @@ static void extent_io_tree_panic(struct extent_io_tree *tree, int err) { - struct inode *inode = tree->private_data; - - btrfs_panic(btrfs_sb(inode->i_sb), err, + btrfs_panic(tree->fs_info, err, "locking error: extent tree was modified by another thread while locked"); } @@ -4127,7 +4125,7 @@ if (!test_bit(BTRFS_FS_STATE_ERROR, &fs_info->fs_state)) { ret = flush_write_bio(&epd); } else { - ret = -EUCLEAN; + ret = -EROFS; end_write_bio(&epd, ret); } return ret; @@ -4502,20 +4500,32 @@ free_extent_map(em); break; } - if (!test_range_bit(tree, em->start, - extent_map_end(em) - 1, - EXTENT_LOCKED, 0, NULL)) { + if (test_range_bit(tree, em->start, + extent_map_end(em) - 1, + EXTENT_LOCKED, 0, NULL)) + goto next; + /* + * If it's not in the list of modified extents, used + * by a fast fsync, we can remove it. If it's being + * logged we can safely remove it since fsync took an + * extra reference on the em. + */ + if (list_empty(&em->list) || + test_bit(EXTENT_FLAG_LOGGING, &em->flags)) { set_bit(BTRFS_INODE_NEEDS_FULL_SYNC, &btrfs_inode->runtime_flags); remove_extent_mapping(map, em); /* once for the rb tree */ free_extent_map(em); } +next: start = extent_map_end(em); write_unlock(&map->lock); /* once for us */ free_extent_map(em); + + cond_resched(); /* Allow large-extent preemption. */ } } return try_release_extent_state(tree, page, mask); @@ -5595,6 +5605,36 @@ return ret; } +static bool report_eb_range(const struct extent_buffer *eb, unsigned long start, + unsigned long len) +{ + btrfs_warn(eb->fs_info, + "access to eb bytenr %llu len %lu out of range start %lu len %lu", + eb->start, eb->len, start, len); + WARN_ON(IS_ENABLED(CONFIG_BTRFS_DEBUG)); + + return true; +} + +/* + * Check if the [start, start + len) range is valid before reading/writing + * the eb. + * NOTE: @start and @len are offset inside the eb, not logical address. + * + * Caller should not touch the dst/src memory if this function returns error. + */ +static inline int check_eb_range(const struct extent_buffer *eb, + unsigned long start, unsigned long len) +{ + unsigned long offset; + + /* start, start + len should not go beyond eb->len nor overflow */ + if (unlikely(check_add_overflow(start, len, &offset) || offset > eb->len)) + return report_eb_range(eb, start, len); + + return false; +} + void read_extent_buffer(const struct extent_buffer *eb, void *dstv, unsigned long start, unsigned long len) { @@ -5605,12 +5645,8 @@ char *dst = (char *)dstv; unsigned long i = start >> PAGE_SHIFT; - if (start + len > eb->len) { - WARN(1, KERN_ERR "btrfs bad mapping eb start %llu len %lu, wanted %lu %lu\n", - eb->start, eb->len, start, len); - memset(dst, 0, len); + if (check_eb_range(eb, start, len)) return; - } offset = offset_in_page(start); @@ -5628,9 +5664,9 @@ } } -int read_extent_buffer_to_user(const struct extent_buffer *eb, - void __user *dstv, - unsigned long start, unsigned long len) +int read_extent_buffer_to_user_nofault(const struct extent_buffer *eb, + void __user *dstv, + unsigned long start, unsigned long len) { size_t cur; size_t offset; @@ -5650,7 +5686,7 @@ cur = min(len, (PAGE_SIZE - offset)); kaddr = page_address(page); - if (copy_to_user(dst, kaddr + offset, cur)) { + if (copy_to_user_nofault(dst, kaddr + offset, cur)) { ret = -EFAULT; break; } @@ -5675,8 +5711,8 @@ unsigned long i = start >> PAGE_SHIFT; int ret = 0; - WARN_ON(start > eb->len); - WARN_ON(start + len > eb->start + eb->len); + if (check_eb_range(eb, start, len)) + return -EINVAL; offset = offset_in_page(start); @@ -5729,8 +5765,8 @@ char *src = (char *)srcv; unsigned long i = start >> PAGE_SHIFT; - WARN_ON(start > eb->len); - WARN_ON(start + len > eb->start + eb->len); + if (check_eb_range(eb, start, len)) + return; offset = offset_in_page(start); @@ -5758,8 +5794,8 @@ char *kaddr; unsigned long i = start >> PAGE_SHIFT; - WARN_ON(start > eb->len); - WARN_ON(start + len > eb->start + eb->len); + if (check_eb_range(eb, start, len)) + return; offset = offset_in_page(start); @@ -5803,6 +5839,10 @@ char *kaddr; unsigned long i = dst_offset >> PAGE_SHIFT; + if (check_eb_range(dst, dst_offset, len) || + check_eb_range(src, src_offset, len)) + return; + WARN_ON(src->len != dst_len); offset = offset_in_page(dst_offset); @@ -5992,25 +6032,15 @@ unsigned long dst_offset, unsigned long src_offset, unsigned long len) { - struct btrfs_fs_info *fs_info = dst->fs_info; size_t cur; size_t dst_off_in_page; size_t src_off_in_page; unsigned long dst_i; unsigned long src_i; - if (src_offset + len > dst->len) { - btrfs_err(fs_info, - "memmove bogus src_offset %lu move len %lu dst len %lu", - src_offset, len, dst->len); - BUG(); - } - if (dst_offset + len > dst->len) { - btrfs_err(fs_info, - "memmove bogus dst_offset %lu move len %lu dst len %lu", - dst_offset, len, dst->len); - BUG(); - } + if (check_eb_range(dst, dst_offset, len) || + check_eb_range(dst, src_offset, len)) + return; while (len > 0) { dst_off_in_page = offset_in_page(dst_offset); @@ -6037,7 +6067,6 @@ unsigned long dst_offset, unsigned long src_offset, unsigned long len) { - struct btrfs_fs_info *fs_info = dst->fs_info; size_t cur; size_t dst_off_in_page; size_t src_off_in_page; @@ -6046,18 +6075,9 @@ unsigned long dst_i; unsigned long src_i; - if (src_offset + len > dst->len) { - btrfs_err(fs_info, - "memmove bogus src_offset %lu move len %lu len %lu", - src_offset, len, dst->len); - BUG(); - } - if (dst_offset + len > dst->len) { - btrfs_err(fs_info, - "memmove bogus dst_offset %lu move len %lu len %lu", - dst_offset, len, dst->len); - BUG(); - } + if (check_eb_range(dst, dst_offset, len) || + check_eb_range(dst, src_offset, len)) + return; if (dst_offset < src_offset) { memcpy_extent_buffer(dst, dst_offset, src_offset, len); return; --- linux-azure-5.8-5.8.0.orig/fs/btrfs/extent_io.h +++ linux-azure-5.8-5.8.0/fs/btrfs/extent_io.h @@ -241,9 +241,9 @@ void read_extent_buffer(const struct extent_buffer *eb, void *dst, unsigned long start, unsigned long len); -int read_extent_buffer_to_user(const struct extent_buffer *eb, - void __user *dst, unsigned long start, - unsigned long len); +int read_extent_buffer_to_user_nofault(const struct extent_buffer *eb, + void __user *dst, unsigned long start, + unsigned long len); void write_extent_buffer_fsid(const struct extent_buffer *eb, const void *src); void write_extent_buffer_chunk_tree_uuid(const struct extent_buffer *eb, const void *src); --- linux-azure-5.8-5.8.0.orig/fs/btrfs/file.c +++ linux-azure-5.8-5.8.0/fs/btrfs/file.c @@ -1532,8 +1532,8 @@ return ret; } -static noinline int check_can_nocow(struct btrfs_inode *inode, loff_t pos, - size_t *write_bytes, bool nowait) +int btrfs_check_can_nocow(struct btrfs_inode *inode, loff_t pos, + size_t *write_bytes, bool nowait) { struct btrfs_fs_info *fs_info = inode->root->fs_info; struct btrfs_root *root = inode->root; @@ -1568,7 +1568,7 @@ } ret = can_nocow_extent(&inode->vfs_inode, lockstart, &num_bytes, - NULL, NULL, NULL); + NULL, NULL, NULL, false); if (ret <= 0) { ret = 0; if (!nowait) @@ -1648,8 +1648,8 @@ if (ret < 0) { if ((BTRFS_I(inode)->flags & (BTRFS_INODE_NODATACOW | BTRFS_INODE_PREALLOC)) && - check_can_nocow(BTRFS_I(inode), pos, - &write_bytes, false) > 0) { + btrfs_check_can_nocow(BTRFS_I(inode), pos, + &write_bytes, false) > 0) { /* * For nodata cow case, no need to reserve * data space. @@ -1928,8 +1928,8 @@ */ if (!(BTRFS_I(inode)->flags & (BTRFS_INODE_NODATACOW | BTRFS_INODE_PREALLOC)) || - check_can_nocow(BTRFS_I(inode), pos, &nocow_bytes, - true) <= 0) { + btrfs_check_can_nocow(BTRFS_I(inode), pos, &nocow_bytes, + true) <= 0) { inode_unlock(inode); return -EAGAIN; } @@ -3176,14 +3176,14 @@ if (ret < 0) goto out; space_reserved = true; - ret = btrfs_qgroup_reserve_data(inode, &data_reserved, - alloc_start, bytes_to_reserve); - if (ret) - goto out; ret = btrfs_punch_hole_lock_range(inode, lockstart, lockend, &cached_state); if (ret) goto out; + ret = btrfs_qgroup_reserve_data(inode, &data_reserved, + alloc_start, bytes_to_reserve); + if (ret) + goto out; ret = btrfs_prealloc_file_range(inode, mode, alloc_start, alloc_end - alloc_start, i_blocksize(inode), --- linux-azure-5.8-5.8.0.orig/fs/btrfs/free-space-cache.c +++ linux-azure-5.8-5.8.0/fs/btrfs/free-space-cache.c @@ -747,8 +747,10 @@ while (num_entries) { e = kmem_cache_zalloc(btrfs_free_space_cachep, GFP_NOFS); - if (!e) + if (!e) { + ret = -ENOMEM; goto free_cache; + } ret = io_ctl_read_entry(&io_ctl, e, &type); if (ret) { @@ -767,6 +769,7 @@ e->trim_state = BTRFS_TRIM_STATE_TRIMMED; if (!e->bytes) { + ret = -1; kmem_cache_free(btrfs_free_space_cachep, e); goto free_cache; } @@ -787,6 +790,7 @@ e->bitmap = kmem_cache_zalloc( btrfs_free_space_bitmap_cachep, GFP_NOFS); if (!e->bitmap) { + ret = -ENOMEM; kmem_cache_free( btrfs_free_space_cachep, e); goto free_cache; @@ -1186,7 +1190,6 @@ ret = update_cache_item(trans, root, inode, path, offset, io_ctl->entries, io_ctl->bitmaps); out: - io_ctl_free(io_ctl); if (ret) { invalidate_inode_pages2(inode->i_mapping); BTRFS_I(inode)->generation = 0; @@ -1346,6 +1349,7 @@ * them out later */ io_ctl_drop_pages(io_ctl); + io_ctl_free(io_ctl); unlock_extent_cached(&BTRFS_I(inode)->io_tree, 0, i_size_read(inode) - 1, &cached_state); @@ -2281,7 +2285,7 @@ static bool try_merge_free_space(struct btrfs_free_space_ctl *ctl, struct btrfs_free_space *info, bool update_stat) { - struct btrfs_free_space *left_info; + struct btrfs_free_space *left_info = NULL; struct btrfs_free_space *right_info; bool merged = false; u64 offset = info->offset; @@ -2297,7 +2301,7 @@ if (right_info && rb_prev(&right_info->offset_index)) left_info = rb_entry(rb_prev(&right_info->offset_index), struct btrfs_free_space, offset_index); - else + else if (!right_info) left_info = tree_search_offset(ctl, offset - 1, 0, 0); /* See try_merge_free_space() comment. */ --- linux-azure-5.8-5.8.0.orig/fs/btrfs/free-space-tree.c +++ linux-azure-5.8-5.8.0/fs/btrfs/free-space-tree.c @@ -22,6 +22,10 @@ size_t bitmap_size; u64 num_bitmaps, total_bitmap_size; + if (WARN_ON(cache->length == 0)) + btrfs_warn(cache->fs_info, "block group %llu length is zero", + cache->start); + /* * We convert to bitmaps when the disk space required for using extents * exceeds that required for using bitmaps. @@ -1148,6 +1152,7 @@ return PTR_ERR(trans); set_bit(BTRFS_FS_CREATING_FREE_SPACE_TREE, &fs_info->flags); + set_bit(BTRFS_FS_FREE_SPACE_TREE_UNTRUSTED, &fs_info->flags); free_space_root = btrfs_create_tree(trans, BTRFS_FREE_SPACE_TREE_OBJECTID); if (IS_ERR(free_space_root)) { @@ -1169,11 +1174,18 @@ btrfs_set_fs_compat_ro(fs_info, FREE_SPACE_TREE); btrfs_set_fs_compat_ro(fs_info, FREE_SPACE_TREE_VALID); clear_bit(BTRFS_FS_CREATING_FREE_SPACE_TREE, &fs_info->flags); + ret = btrfs_commit_transaction(trans); - return btrfs_commit_transaction(trans); + /* + * Now that we've committed the transaction any reading of our commit + * root will be safe, so we can cache from the free space tree now. + */ + clear_bit(BTRFS_FS_FREE_SPACE_TREE_UNTRUSTED, &fs_info->flags); + return ret; abort: clear_bit(BTRFS_FS_CREATING_FREE_SPACE_TREE, &fs_info->flags); + clear_bit(BTRFS_FS_FREE_SPACE_TREE_UNTRUSTED, &fs_info->flags); btrfs_abort_transaction(trans, ret); btrfs_end_transaction(trans); return ret; --- linux-azure-5.8-5.8.0.orig/fs/btrfs/inode.c +++ linux-azure-5.8-5.8.0/fs/btrfs/inode.c @@ -650,12 +650,18 @@ page_error_op | PAGE_END_WRITEBACK); - for (i = 0; i < nr_pages; i++) { - WARN_ON(pages[i]->mapping); - put_page(pages[i]); + /* + * Ensure we only free the compressed pages if we have + * them allocated, as we can still reach here with + * inode_need_compress() == false. + */ + if (pages) { + for (i = 0; i < nr_pages; i++) { + WARN_ON(pages[i]->mapping); + put_page(pages[i]); + } + kfree(pages); } - kfree(pages); - return 0; } } @@ -1605,7 +1611,7 @@ goto out_check; ret = btrfs_cross_ref_exist(root, ino, found_key.offset - - extent_offset, disk_bytenr); + extent_offset, disk_bytenr, false); if (ret) { /* * ret could be -EIO if the above fails to read @@ -4041,6 +4047,8 @@ } } + free_anon_bdev(dest->anon_dev); + dest->anon_dev = 0; out_end_trans: trans->block_rsv = NULL; trans->bytes_reserved = 0; @@ -4049,7 +4057,7 @@ err = ret; inode->i_flags |= S_DEAD; out_release: - btrfs_subvolume_release_metadata(fs_info, &block_rsv); + btrfs_subvolume_release_metadata(root, &block_rsv); out_up_write: up_write(&fs_info->subvol_sem); if (err) { @@ -4511,11 +4519,13 @@ struct extent_state *cached_state = NULL; struct extent_changeset *data_reserved = NULL; char *kaddr; + bool only_release_metadata = false; u32 blocksize = fs_info->sectorsize; pgoff_t index = from >> PAGE_SHIFT; unsigned offset = from & (blocksize - 1); struct page *page; gfp_t mask = btrfs_alloc_write_mask(mapping); + size_t write_bytes = blocksize; int ret = 0; u64 block_start; u64 block_end; @@ -4527,11 +4537,27 @@ block_start = round_down(from, blocksize); block_end = block_start + blocksize - 1; - ret = btrfs_delalloc_reserve_space(inode, &data_reserved, - block_start, blocksize); - if (ret) - goto out; + ret = btrfs_check_data_free_space(inode, &data_reserved, block_start, + blocksize); + if (ret < 0) { + if ((BTRFS_I(inode)->flags & (BTRFS_INODE_NODATACOW | + BTRFS_INODE_PREALLOC)) && + btrfs_check_can_nocow(BTRFS_I(inode), block_start, + &write_bytes, false) > 0) { + /* For nocow case, no need to reserve data space */ + only_release_metadata = true; + } else { + goto out; + } + } + ret = btrfs_delalloc_reserve_metadata(BTRFS_I(inode), blocksize); + if (ret < 0) { + if (!only_release_metadata) + btrfs_free_reserved_data_space(inode, data_reserved, + block_start, blocksize); + goto out; + } again: page = find_or_create_page(mapping, index, mask); if (!page) { @@ -4600,14 +4626,26 @@ set_page_dirty(page); unlock_extent_cached(io_tree, block_start, block_end, &cached_state); + if (only_release_metadata) + set_extent_bit(&BTRFS_I(inode)->io_tree, block_start, + block_end, EXTENT_NORESERVE, NULL, NULL, + GFP_NOFS); + out_unlock: - if (ret) - btrfs_delalloc_release_space(inode, data_reserved, block_start, - blocksize, true); + if (ret) { + if (only_release_metadata) + btrfs_delalloc_release_metadata(BTRFS_I(inode), + blocksize, true); + else + btrfs_delalloc_release_space(inode, data_reserved, + block_start, blocksize, true); + } btrfs_delalloc_release_extents(BTRFS_I(inode), blocksize); unlock_page(page); put_page(page); out: + if (only_release_metadata) + btrfs_drew_write_unlock(&BTRFS_I(inode)->root->snapshot_lock); extent_changeset_free(data_reserved); return ret; } @@ -6595,7 +6633,7 @@ extent_type == BTRFS_FILE_EXTENT_PREALLOC) { /* Only regular file could have regular/prealloc extent */ if (!S_ISREG(inode->vfs_inode.i_mode)) { - ret = -EUCLEAN; + err = -EUCLEAN; btrfs_crit(fs_info, "regular/prealloc extent found for non-regular inode %llu", btrfs_ino(inode)); @@ -6919,7 +6957,7 @@ */ noinline int can_nocow_extent(struct inode *inode, u64 offset, u64 *len, u64 *orig_start, u64 *orig_block_len, - u64 *ram_bytes) + u64 *ram_bytes, bool strict) { struct btrfs_fs_info *fs_info = btrfs_sb(inode->i_sb); struct btrfs_path *path; @@ -6997,8 +7035,9 @@ * Do the same check as in btrfs_cross_ref_exist but without the * unnecessary search. */ - if (btrfs_file_extent_generation(leaf, fi) <= - btrfs_root_last_snapshot(&root->root_item)) + if (!strict && + (btrfs_file_extent_generation(leaf, fi) <= + btrfs_root_last_snapshot(&root->root_item))) goto out; backref_offset = btrfs_file_extent_offset(leaf, fi); @@ -7034,7 +7073,8 @@ */ ret = btrfs_cross_ref_exist(root, btrfs_ino(BTRFS_I(inode)), - key.offset - backref_offset, disk_bytenr); + key.offset - backref_offset, disk_bytenr, + strict); if (ret) { ret = 0; goto out; @@ -7255,7 +7295,7 @@ block_start = em->block_start + (start - em->start); if (can_nocow_extent(inode, start, &len, &orig_start, - &orig_block_len, &ram_bytes) == 1 && + &orig_block_len, &ram_bytes, false) == 1 && btrfs_inc_nocow_writers(fs_info, block_start)) { struct extent_map *em2; @@ -8070,8 +8110,9 @@ if (!inode_evicting) lock_extent_bits(tree, page_start, page_end, &cached_state); -again: + start = page_start; +again: ordered = btrfs_lookup_ordered_range(BTRFS_I(inode), start, page_end - start + 1); if (ordered) { @@ -8602,7 +8643,7 @@ btrfs_put_ordered_extent(ordered); } } - btrfs_qgroup_check_reserved_leak(inode); + btrfs_qgroup_check_reserved_leak(BTRFS_I(inode)); inode_tree_del(inode); btrfs_drop_extent_cache(BTRFS_I(inode), 0, (u64)-1, 0); btrfs_inode_clear_file_extent_range(BTRFS_I(inode), 0, (u64)-1); @@ -10065,7 +10106,7 @@ free_extent_map(em); em = NULL; - ret = can_nocow_extent(inode, start, &len, NULL, NULL, NULL); + ret = can_nocow_extent(inode, start, &len, NULL, NULL, NULL, true); if (ret < 0) { goto out; } else if (ret) { --- linux-azure-5.8-5.8.0.orig/fs/btrfs/ioctl.c +++ linux-azure-5.8-5.8.0/fs/btrfs/ioctl.c @@ -164,8 +164,11 @@ return 0; } -/* Check if @flags are a supported and valid set of FS_*_FL flags */ -static int check_fsflags(unsigned int flags) +/* + * Check if @flags are a supported and valid set of FS_*_FL flags and that + * the old and new flags are not conflicting + */ +static int check_fsflags(unsigned int old_flags, unsigned int flags) { if (flags & ~(FS_IMMUTABLE_FL | FS_APPEND_FL | \ FS_NOATIME_FL | FS_NODUMP_FL | \ @@ -174,9 +177,19 @@ FS_NOCOW_FL)) return -EOPNOTSUPP; + /* COMPR and NOCOMP on new/old are valid */ if ((flags & FS_NOCOMP_FL) && (flags & FS_COMPR_FL)) return -EINVAL; + if ((flags & FS_COMPR_FL) && (flags & FS_NOCOW_FL)) + return -EINVAL; + + /* NOCOW and compression options are mutually exclusive */ + if ((old_flags & FS_NOCOW_FL) && (flags & (FS_COMPR_FL | FS_NOCOMP_FL))) + return -EINVAL; + if ((flags & FS_NOCOW_FL) && (old_flags & (FS_COMPR_FL | FS_NOCOMP_FL))) + return -EINVAL; + return 0; } @@ -190,7 +203,7 @@ unsigned int fsflags, old_fsflags; int ret; const char *comp = NULL; - u32 binode_flags = binode->flags; + u32 binode_flags; if (!inode_owner_or_capable(inode)) return -EPERM; @@ -201,22 +214,23 @@ if (copy_from_user(&fsflags, arg, sizeof(fsflags))) return -EFAULT; - ret = check_fsflags(fsflags); - if (ret) - return ret; - ret = mnt_want_write_file(file); if (ret) return ret; inode_lock(inode); - fsflags = btrfs_mask_fsflags_for_type(inode, fsflags); old_fsflags = btrfs_inode_flags_to_fsflags(binode->flags); + ret = vfs_ioc_setflags_prepare(inode, old_fsflags, fsflags); if (ret) goto out_unlock; + ret = check_fsflags(old_fsflags, fsflags); + if (ret) + goto out_unlock; + + binode_flags = binode->flags; if (fsflags & FS_SYNC_FL) binode_flags |= BTRFS_INODE_SYNC; else @@ -566,6 +580,7 @@ struct inode *inode; int ret; int err; + dev_t anon_dev = 0; u64 objectid; u64 new_dirid = BTRFS_FIRST_FREE_OBJECTID; u64 index = 0; @@ -578,6 +593,10 @@ if (ret) goto fail_free; + ret = get_anon_bdev(&anon_dev); + if (ret < 0) + goto fail_free; + /* * Don't create subvolume whose level is not zero. Or qgroup will be * screwed up since it assumes subvolume qgroup's level to be 0. @@ -599,7 +618,7 @@ trans = btrfs_start_transaction(root, 0); if (IS_ERR(trans)) { ret = PTR_ERR(trans); - btrfs_subvolume_release_metadata(fs_info, &block_rsv); + btrfs_subvolume_release_metadata(root, &block_rsv); goto fail_free; } trans->block_rsv = &block_rsv; @@ -660,12 +679,15 @@ goto fail; key.offset = (u64)-1; - new_root = btrfs_get_fs_root(fs_info, objectid, true); + new_root = btrfs_get_new_fs_root(fs_info, objectid, anon_dev); if (IS_ERR(new_root)) { + free_anon_bdev(anon_dev); ret = PTR_ERR(new_root); btrfs_abort_transaction(trans, ret); goto fail; } + /* Freeing will be done in btrfs_put_root() of new_root */ + anon_dev = 0; btrfs_record_root_in_trans(trans, new_root); @@ -720,7 +742,7 @@ kfree(root_item); trans->block_rsv = NULL; trans->bytes_reserved = 0; - btrfs_subvolume_release_metadata(fs_info, &block_rsv); + btrfs_subvolume_release_metadata(root, &block_rsv); err = btrfs_commit_transaction(trans); if (err && !ret) @@ -735,6 +757,8 @@ return ret; fail_free: + if (anon_dev) + free_anon_bdev(anon_dev); kfree(root_item); return ret; } @@ -762,6 +786,9 @@ if (!pending_snapshot) return -ENOMEM; + ret = get_anon_bdev(&pending_snapshot->anon_dev); + if (ret < 0) + goto free_pending; pending_snapshot->root_item = kzalloc(sizeof(struct btrfs_root_item), GFP_KERNEL); pending_snapshot->path = btrfs_alloc_path(); @@ -823,10 +850,16 @@ d_instantiate(dentry, inode); ret = 0; + pending_snapshot->anon_dev = 0; fail: + /* Prevent double freeing of anon_dev */ + if (ret && pending_snapshot->snap) + pending_snapshot->snap->anon_dev = 0; btrfs_put_root(pending_snapshot->snap); - btrfs_subvolume_release_metadata(fs_info, &pending_snapshot->block_rsv); + btrfs_subvolume_release_metadata(root, &pending_snapshot->block_rsv); free_pending: + if (pending_snapshot->anon_dev) + free_anon_bdev(pending_snapshot->anon_dev); kfree(pending_snapshot->root_item); btrfs_free_path(pending_snapshot->path); kfree(pending_snapshot); @@ -1228,6 +1261,8 @@ u64 page_start; u64 page_end; u64 page_cnt; + u64 start = (u64)start_index << PAGE_SHIFT; + u64 search_start; int ret; int i; int i_done; @@ -1244,8 +1279,7 @@ page_cnt = min_t(u64, (u64)num_pages, (u64)file_end - start_index + 1); ret = btrfs_delalloc_reserve_space(inode, &data_reserved, - start_index << PAGE_SHIFT, - page_cnt << PAGE_SHIFT); + start, page_cnt << PAGE_SHIFT); if (ret) return ret; i_done = 0; @@ -1325,6 +1359,40 @@ lock_extent_bits(&BTRFS_I(inode)->io_tree, page_start, page_end - 1, &cached_state); + + /* + * When defragmenting we skip ranges that have holes or inline extents, + * (check should_defrag_range()), to avoid unnecessary IO and wasting + * space. At btrfs_defrag_file(), we check if a range should be defragged + * before locking the inode and then, if it should, we trigger a sync + * page cache readahead - we lock the inode only after that to avoid + * blocking for too long other tasks that possibly want to operate on + * other file ranges. But before we were able to get the inode lock, + * some other task may have punched a hole in the range, or we may have + * now an inline extent, in which case we should not defrag. So check + * for that here, where we have the inode and the range locked, and bail + * out if that happened. + */ + search_start = page_start; + while (search_start < page_end) { + struct extent_map *em; + + em = btrfs_get_extent(BTRFS_I(inode), NULL, 0, search_start, + page_end - search_start); + if (IS_ERR(em)) { + ret = PTR_ERR(em); + goto out_unlock_range; + } + if (em->block_start >= EXTENT_MAP_LAST_BYTE) { + free_extent_map(em); + /* Ok, 0 means we did not defrag anything */ + ret = 0; + goto out_unlock_range; + } + search_start = extent_map_end(em); + free_extent_map(em); + } + clear_extent_bit(&BTRFS_I(inode)->io_tree, page_start, page_end - 1, EXTENT_DELALLOC | EXTENT_DO_ACCOUNTING | EXTENT_DEFRAG, 0, 0, &cached_state); @@ -1334,8 +1402,7 @@ btrfs_mod_outstanding_extents(BTRFS_I(inode), 1); spin_unlock(&BTRFS_I(inode)->lock); btrfs_delalloc_release_space(inode, data_reserved, - start_index << PAGE_SHIFT, - (page_cnt - i_done) << PAGE_SHIFT, true); + start, (page_cnt - i_done) << PAGE_SHIFT, true); } @@ -1356,14 +1423,17 @@ btrfs_delalloc_release_extents(BTRFS_I(inode), page_cnt << PAGE_SHIFT); extent_changeset_free(data_reserved); return i_done; + +out_unlock_range: + unlock_extent_cached(&BTRFS_I(inode)->io_tree, + page_start, page_end - 1, &cached_state); out: for (i = 0; i < i_done; i++) { unlock_page(pages[i]); put_page(pages[i]); } btrfs_delalloc_release_space(inode, data_reserved, - start_index << PAGE_SHIFT, - page_cnt << PAGE_SHIFT, true); + start, page_cnt << PAGE_SHIFT, true); btrfs_delalloc_release_extents(BTRFS_I(inode), page_cnt << PAGE_SHIFT); extent_changeset_free(data_reserved); return ret; @@ -2053,9 +2123,14 @@ sh.len = item_len; sh.transid = found_transid; - /* copy search result header */ - if (copy_to_user(ubuf + *sk_offset, &sh, sizeof(sh))) { - ret = -EFAULT; + /* + * Copy search result header. If we fault then loop again so we + * can fault in the pages and -EFAULT there if there's a + * problem. Otherwise we'll fault and then copy the buffer in + * properly this next time through + */ + if (copy_to_user_nofault(ubuf + *sk_offset, &sh, sizeof(sh))) { + ret = 0; goto out; } @@ -2063,10 +2138,14 @@ if (item_len) { char __user *up = ubuf + *sk_offset; - /* copy the item */ - if (read_extent_buffer_to_user(leaf, up, - item_off, item_len)) { - ret = -EFAULT; + /* + * Copy the item, same behavior as above, but reset the + * * sk_offset so we copy the full thing again. + */ + if (read_extent_buffer_to_user_nofault(leaf, up, + item_off, item_len)) { + ret = 0; + *sk_offset -= sizeof(sh); goto out; } @@ -2151,6 +2230,11 @@ key.offset = sk->min_offset; while (1) { + ret = fault_in_pages_writeable(ubuf + sk_offset, + *buf_size - sk_offset); + if (ret) + break; + ret = btrfs_search_forward(root, &key, path, sk->min_transid); if (ret != 0) { if (ret > 0) @@ -3198,11 +3282,15 @@ struct btrfs_ioctl_fs_info_args *fi_args; struct btrfs_device *device; struct btrfs_fs_devices *fs_devices = fs_info->fs_devices; + u64 flags_in; int ret = 0; - fi_args = kzalloc(sizeof(*fi_args), GFP_KERNEL); - if (!fi_args) - return -ENOMEM; + fi_args = memdup_user(arg, sizeof(*fi_args)); + if (IS_ERR(fi_args)) + return PTR_ERR(fi_args); + + flags_in = fi_args->flags; + memset(fi_args, 0, sizeof(*fi_args)); rcu_read_lock(); fi_args->num_devices = fs_devices->num_devices; @@ -3218,6 +3306,12 @@ fi_args->sectorsize = fs_info->sectorsize; fi_args->clone_alignment = fs_info->sectorsize; + if (flags_in & BTRFS_FS_INFO_FLAG_CSUM_INFO) { + fi_args->csum_type = btrfs_super_csum_type(fs_info->super_copy); + fi_args->csum_size = btrfs_super_csum_size(fs_info->super_copy); + fi_args->flags |= BTRFS_FS_INFO_FLAG_CSUM_INFO; + } + if (copy_to_user(arg, fi_args, sizeof(*fi_args))) ret = -EFAULT; --- linux-azure-5.8-5.8.0.orig/fs/btrfs/print-tree.c +++ linux-azure-5.8-5.8.0/fs/btrfs/print-tree.c @@ -95,9 +95,10 @@ * offset is supposed to be a tree block which * must be aligned to nodesize. */ - if (!IS_ALIGNED(offset, eb->fs_info->nodesize)) - pr_info("\t\t\t(parent %llu is NOT ALIGNED to nodesize %llu)\n", - offset, (unsigned long long)eb->fs_info->nodesize); + if (!IS_ALIGNED(offset, eb->fs_info->sectorsize)) + pr_info( + "\t\t\t(parent %llu not aligned to sectorsize %u)\n", + offset, eb->fs_info->sectorsize); break; case BTRFS_EXTENT_DATA_REF_KEY: dref = (struct btrfs_extent_data_ref *)(&iref->offset); @@ -112,8 +113,9 @@ * must be aligned to nodesize. */ if (!IS_ALIGNED(offset, eb->fs_info->nodesize)) - pr_info("\t\t\t(parent %llu is NOT ALIGNED to nodesize %llu)\n", - offset, (unsigned long long)eb->fs_info->nodesize); + pr_info( + "\t\t\t(parent %llu not aligned to sectorsize %u)\n", + offset, eb->fs_info->sectorsize); break; default: pr_cont("(extent %llu has INVALID ref type %d)\n", --- linux-azure-5.8-5.8.0.orig/fs/btrfs/qgroup.c +++ linux-azure-5.8-5.8.0/fs/btrfs/qgroup.c @@ -12,6 +12,7 @@ #include #include #include +#include #include "ctree.h" #include "transaction.h" @@ -488,13 +489,13 @@ break; } out: + btrfs_free_path(path); fs_info->qgroup_flags |= flags; if (!(fs_info->qgroup_flags & BTRFS_QGROUP_STATUS_FLAG_ON)) clear_bit(BTRFS_FS_QUOTA_ENABLED, &fs_info->flags); else if (fs_info->qgroup_flags & BTRFS_QGROUP_STATUS_FLAG_RESCAN && ret >= 0) ret = qgroup_rescan_init(fs_info, rescan_progress, 0); - btrfs_free_path(path); if (ret < 0) { ulist_free(fs_info->qgroup_ulist); @@ -887,6 +888,7 @@ struct btrfs_key found_key; struct btrfs_qgroup *qgroup = NULL; struct btrfs_trans_handle *trans = NULL; + struct ulist *ulist = NULL; int ret = 0; int slot; @@ -894,13 +896,28 @@ if (fs_info->quota_root) goto out; - fs_info->qgroup_ulist = ulist_alloc(GFP_KERNEL); - if (!fs_info->qgroup_ulist) { + ulist = ulist_alloc(GFP_KERNEL); + if (!ulist) { ret = -ENOMEM; goto out; } /* + * Unlock qgroup_ioctl_lock before starting the transaction. This is to + * avoid lock acquisition inversion problems (reported by lockdep) between + * qgroup_ioctl_lock and the vfs freeze semaphores, acquired when we + * start a transaction. + * After we started the transaction lock qgroup_ioctl_lock again and + * check if someone else created the quota root in the meanwhile. If so, + * just return success and release the transaction handle. + * + * Also we don't need to worry about someone else calling + * btrfs_sysfs_add_qgroups() after we unlock and getting an error because + * that function returns 0 (success) when the sysfs entries already exist. + */ + mutex_unlock(&fs_info->qgroup_ioctl_lock); + + /* * 1 for quota root item * 1 for BTRFS_QGROUP_STATUS item * @@ -909,12 +926,20 @@ * would be a lot of overkill. */ trans = btrfs_start_transaction(tree_root, 2); + + mutex_lock(&fs_info->qgroup_ioctl_lock); if (IS_ERR(trans)) { ret = PTR_ERR(trans); trans = NULL; goto out; } + if (fs_info->quota_root) + goto out; + + fs_info->qgroup_ulist = ulist; + ulist = NULL; + /* * initially create the quota tree */ @@ -974,6 +999,10 @@ btrfs_item_key_to_cpu(leaf, &found_key, slot); if (found_key.type == BTRFS_ROOT_REF_KEY) { + + /* Release locks on tree_root before we access quota_root */ + btrfs_release_path(path); + ret = add_qgroup_item(trans, quota_root, found_key.offset); if (ret) { @@ -987,6 +1016,20 @@ btrfs_abort_transaction(trans, ret); goto out_free_path; } + ret = btrfs_search_slot_for_read(tree_root, &found_key, + path, 1, 0); + if (ret < 0) { + btrfs_abort_transaction(trans, ret); + goto out_free_path; + } + if (ret > 0) { + /* + * Shouldn't happen, but in case it does we + * don't need to do the btrfs_next_item, just + * continue. + */ + continue; + } } ret = btrfs_next_item(tree_root, path); if (ret < 0) { @@ -1044,10 +1087,13 @@ if (ret) { ulist_free(fs_info->qgroup_ulist); fs_info->qgroup_ulist = NULL; - if (trans) - btrfs_end_transaction(trans); } mutex_unlock(&fs_info->qgroup_ioctl_lock); + if (ret && trans) + btrfs_end_transaction(trans); + else if (trans) + ret = btrfs_end_transaction(trans); + ulist_free(ulist); return ret; } @@ -1060,19 +1106,29 @@ mutex_lock(&fs_info->qgroup_ioctl_lock); if (!fs_info->quota_root) goto out; + mutex_unlock(&fs_info->qgroup_ioctl_lock); /* * 1 For the root item * * We should also reserve enough items for the quota tree deletion in * btrfs_clean_quota_tree but this is not done. + * + * Also, we must always start a transaction without holding the mutex + * qgroup_ioctl_lock, see btrfs_quota_enable(). */ trans = btrfs_start_transaction(fs_info->tree_root, 1); + + mutex_lock(&fs_info->qgroup_ioctl_lock); if (IS_ERR(trans)) { ret = PTR_ERR(trans); + trans = NULL; goto out; } + if (!fs_info->quota_root) + goto out; + clear_bit(BTRFS_FS_QUOTA_ENABLED, &fs_info->flags); btrfs_qgroup_wait_for_completion(fs_info, false); spin_lock(&fs_info->qgroup_lock); @@ -1086,13 +1142,13 @@ ret = btrfs_clean_quota_tree(trans, quota_root); if (ret) { btrfs_abort_transaction(trans, ret); - goto end_trans; + goto out; } ret = btrfs_del_root(trans, "a_root->root_key); if (ret) { btrfs_abort_transaction(trans, ret); - goto end_trans; + goto out; } list_del("a_root->dirty_list); @@ -1104,10 +1160,13 @@ btrfs_put_root(quota_root); -end_trans: - ret = btrfs_end_transaction(trans); out: mutex_unlock(&fs_info->qgroup_ioctl_lock); + if (ret && trans) + btrfs_end_transaction(trans); + else if (trans) + ret = btrfs_end_transaction(trans); + return ret; } @@ -1243,13 +1302,17 @@ struct btrfs_qgroup *member; struct btrfs_qgroup_list *list; struct ulist *tmp; + unsigned int nofs_flag; int ret = 0; /* Check the level of src and dst first */ if (btrfs_qgroup_level(src) >= btrfs_qgroup_level(dst)) return -EINVAL; + /* We hold a transaction handle open, must do a NOFS allocation. */ + nofs_flag = memalloc_nofs_save(); tmp = ulist_alloc(GFP_KERNEL); + memalloc_nofs_restore(nofs_flag); if (!tmp) return -ENOMEM; @@ -1306,10 +1369,14 @@ struct btrfs_qgroup_list *list; struct ulist *tmp; bool found = false; + unsigned int nofs_flag; int ret = 0; int ret2; + /* We hold a transaction handle open, must do a NOFS allocation. */ + nofs_flag = memalloc_nofs_save(); tmp = ulist_alloc(GFP_KERNEL); + memalloc_nofs_restore(nofs_flag); if (!tmp) return -ENOMEM; @@ -3126,6 +3193,12 @@ return ret; } +static bool rescan_should_stop(struct btrfs_fs_info *fs_info) +{ + return btrfs_fs_closing(fs_info) || + test_bit(BTRFS_FS_STATE_REMOUNTING, &fs_info->fs_state); +} + static void btrfs_qgroup_rescan_worker(struct btrfs_work *work) { struct btrfs_fs_info *fs_info = container_of(work, struct btrfs_fs_info, @@ -3134,6 +3207,7 @@ struct btrfs_trans_handle *trans = NULL; int err = -ENOMEM; int ret = 0; + bool stopped = false; path = btrfs_alloc_path(); if (!path) @@ -3146,7 +3220,7 @@ path->skip_locking = 1; err = 0; - while (!err && !btrfs_fs_closing(fs_info)) { + while (!err && !(stopped = rescan_should_stop(fs_info))) { trans = btrfs_start_transaction(fs_info->fs_root, 0); if (IS_ERR(trans)) { err = PTR_ERR(trans); @@ -3189,7 +3263,7 @@ } mutex_lock(&fs_info->qgroup_rescan_lock); - if (!btrfs_fs_closing(fs_info)) + if (!stopped) fs_info->qgroup_flags &= ~BTRFS_QGROUP_STATUS_FLAG_RESCAN; if (trans) { ret = update_qgroup_status_item(trans); @@ -3208,7 +3282,7 @@ btrfs_end_transaction(trans); - if (btrfs_fs_closing(fs_info)) { + if (stopped) { btrfs_info(fs_info, "qgroup scan paused"); } else if (err >= 0) { btrfs_info(fs_info, "qgroup scan completed%s", @@ -3742,7 +3816,7 @@ * Check qgroup reserved space leaking, normally at destroy inode * time */ -void btrfs_qgroup_check_reserved_leak(struct inode *inode) +void btrfs_qgroup_check_reserved_leak(struct btrfs_inode *inode) { struct extent_changeset changeset; struct ulist_node *unode; @@ -3750,19 +3824,19 @@ int ret; extent_changeset_init(&changeset); - ret = clear_record_extent_bits(&BTRFS_I(inode)->io_tree, 0, (u64)-1, + ret = clear_record_extent_bits(&inode->io_tree, 0, (u64)-1, EXTENT_QGROUP_RESERVED, &changeset); WARN_ON(ret < 0); if (WARN_ON(changeset.bytes_changed)) { ULIST_ITER_INIT(&iter); while ((unode = ulist_next(&changeset.range_changed, &iter))) { - btrfs_warn(BTRFS_I(inode)->root->fs_info, - "leaking qgroup reserved space, ino: %lu, start: %llu, end: %llu", - inode->i_ino, unode->val, unode->aux); + btrfs_warn(inode->root->fs_info, + "leaking qgroup reserved space, ino: %llu, start: %llu, end: %llu", + btrfs_ino(inode), unode->val, unode->aux); } - btrfs_qgroup_free_refroot(BTRFS_I(inode)->root->fs_info, - BTRFS_I(inode)->root->root_key.objectid, + btrfs_qgroup_free_refroot(inode->root->fs_info, + inode->root->root_key.objectid, changeset.bytes_changed, BTRFS_QGROUP_RSV_DATA); } --- linux-azure-5.8-5.8.0.orig/fs/btrfs/qgroup.h +++ linux-azure-5.8-5.8.0/fs/btrfs/qgroup.h @@ -399,7 +399,7 @@ */ void btrfs_qgroup_convert_reserved_meta(struct btrfs_root *root, int num_bytes); -void btrfs_qgroup_check_reserved_leak(struct inode *inode); +void btrfs_qgroup_check_reserved_leak(struct btrfs_inode *inode); /* btrfs_qgroup_swapped_blocks related functions */ void btrfs_qgroup_init_swapped_blocks( --- linux-azure-5.8-5.8.0.orig/fs/btrfs/reada.c +++ linux-azure-5.8-5.8.0/fs/btrfs/reada.c @@ -421,6 +421,9 @@ if (!dev->bdev) continue; + if (test_bit(BTRFS_DEV_STATE_NO_READA, &dev->dev_state)) + continue; + if (dev_replace_is_ongoing && dev == fs_info->dev_replace.tgtdev) { /* @@ -445,6 +448,8 @@ } have_zone = 1; } + if (!have_zone) + radix_tree_delete(&fs_info->reada_tree, index); spin_unlock(&fs_info->reada_lock); up_read(&fs_info->dev_replace.rwsem); @@ -1012,3 +1017,45 @@ kref_put(&rc->refcnt, reada_control_release); } + +/* + * Before removing a device (device replace or device remove ioctls), call this + * function to wait for all existing readahead requests on the device and to + * make sure no one queues more readahead requests for the device. + * + * Must be called without holding neither the device list mutex nor the device + * replace semaphore, otherwise it will deadlock. + */ +void btrfs_reada_remove_dev(struct btrfs_device *dev) +{ + struct btrfs_fs_info *fs_info = dev->fs_info; + + /* Serialize with readahead extent creation at reada_find_extent(). */ + spin_lock(&fs_info->reada_lock); + set_bit(BTRFS_DEV_STATE_NO_READA, &dev->dev_state); + spin_unlock(&fs_info->reada_lock); + + /* + * There might be readahead requests added to the radix trees which + * were not yet added to the readahead work queue. We need to start + * them and wait for their completion, otherwise we can end up with + * use-after-free problems when dropping the last reference on the + * readahead extents and their zones, as they need to access the + * device structure. + */ + reada_start_machine(fs_info); + btrfs_flush_workqueue(fs_info->readahead_workers); +} + +/* + * If when removing a device (device replace or device remove ioctls) an error + * happens after calling btrfs_reada_remove_dev(), call this to undo what that + * function did. This is safe to call even if btrfs_reada_remove_dev() was not + * called before. + */ +void btrfs_reada_undo_remove_dev(struct btrfs_device *dev) +{ + spin_lock(&dev->fs_info->reada_lock); + clear_bit(BTRFS_DEV_STATE_NO_READA, &dev->dev_state); + spin_unlock(&dev->fs_info->reada_lock); +} --- linux-azure-5.8-5.8.0.orig/fs/btrfs/ref-verify.c +++ linux-azure-5.8-5.8.0/fs/btrfs/ref-verify.c @@ -286,6 +286,8 @@ exist_re = insert_root_entry(&exist->roots, re); if (exist_re) kfree(re); + } else { + kfree(re); } kfree(be); return exist; @@ -858,6 +860,7 @@ "dropping a ref for a root that doesn't have a ref on the block"); dump_block_entry(fs_info, be); dump_ref_action(fs_info, ra); + kfree(ref); kfree(ra); goto out_unlock; } --- linux-azure-5.8-5.8.0.orig/fs/btrfs/reflink.c +++ linux-azure-5.8-5.8.0/fs/btrfs/reflink.c @@ -504,6 +504,8 @@ ret = -EINTR; goto out; } + + cond_resched(); } ret = 0; --- linux-azure-5.8-5.8.0.orig/fs/btrfs/relocation.c +++ linux-azure-5.8-5.8.0/fs/btrfs/relocation.c @@ -669,9 +669,7 @@ RB_CLEAR_NODE(&node->rb_node); } spin_unlock(&rc->reloc_root_tree.lock); - if (!node) - return; - BUG_ON((struct btrfs_root *)node->data != root); + ASSERT(!node || (struct btrfs_root *)node->data == root); } /* @@ -1646,6 +1644,7 @@ struct btrfs_root_item *root_item; struct btrfs_path *path; struct extent_buffer *leaf; + int reserve_level; int level; int max_level; int replaced = 0; @@ -1686,12 +1685,21 @@ btrfs_unlock_up_safe(path, 0); } - min_reserved = fs_info->nodesize * (BTRFS_MAX_LEVEL - 1) * 2; + /* + * In merge_reloc_root(), we modify the upper level pointer to swap the + * tree blocks between reloc tree and subvolume tree. Thus for tree + * block COW, we COW at most from level 1 to root level for each tree. + * + * Thus the needed metadata size is at most root_level * nodesize, + * and * 2 since we have two trees to COW. + */ + reserve_level = max_t(int, 1, btrfs_root_level(root_item)); + min_reserved = fs_info->nodesize * reserve_level * 2; memset(&next_key, 0, sizeof(next_key)); while (1) { ret = btrfs_block_rsv_refill(root, rc->block_rsv, min_reserved, - BTRFS_RESERVE_FLUSH_ALL); + BTRFS_RESERVE_FLUSH_LIMIT); if (ret) { err = ret; goto out; @@ -3021,11 +3029,16 @@ return 0; for (i = 0; i < btrfs_header_nritems(leaf); i++) { + u8 type; + btrfs_item_key_to_cpu(leaf, &key, i); if (key.type != BTRFS_EXTENT_DATA_KEY) continue; ei = btrfs_item_ptr(leaf, i, struct btrfs_file_extent_item); - if (btrfs_file_extent_type(leaf, ei) == BTRFS_FILE_EXTENT_REG && + type = btrfs_file_extent_type(leaf, ei); + + if ((type == BTRFS_FILE_EXTENT_REG || + type == BTRFS_FILE_EXTENT_PREALLOC) && btrfs_file_extent_disk_bytenr(leaf, ei) == data_bytenr) { found = true; space_cache_ino = key.objectid; --- linux-azure-5.8-5.8.0.orig/fs/btrfs/root-tree.c +++ linux-azure-5.8-5.8.0/fs/btrfs/root-tree.c @@ -512,11 +512,20 @@ if (ret && qgroup_num_bytes) btrfs_qgroup_free_meta_prealloc(root, qgroup_num_bytes); + if (!ret) { + spin_lock(&rsv->lock); + rsv->qgroup_rsv_reserved += qgroup_num_bytes; + spin_unlock(&rsv->lock); + } return ret; } -void btrfs_subvolume_release_metadata(struct btrfs_fs_info *fs_info, +void btrfs_subvolume_release_metadata(struct btrfs_root *root, struct btrfs_block_rsv *rsv) { - btrfs_block_rsv_release(fs_info, rsv, (u64)-1, NULL); + struct btrfs_fs_info *fs_info = root->fs_info; + u64 qgroup_to_release; + + btrfs_block_rsv_release(fs_info, rsv, (u64)-1, &qgroup_to_release); + btrfs_qgroup_convert_reserved_meta(root, qgroup_to_release); } --- linux-azure-5.8-5.8.0.orig/fs/btrfs/scrub.c +++ linux-azure-5.8-5.8.0/fs/btrfs/scrub.c @@ -3758,7 +3758,7 @@ struct btrfs_fs_info *fs_info = sctx->fs_info; if (test_bit(BTRFS_FS_STATE_ERROR, &fs_info->fs_state)) - return -EIO; + return -EROFS; /* Seed devices of a new filesystem has their own generation. */ if (scrub_dev->fs_devices != fs_info->fs_devices) @@ -3783,50 +3783,84 @@ return 0; } +static void scrub_workers_put(struct btrfs_fs_info *fs_info) +{ + if (refcount_dec_and_mutex_lock(&fs_info->scrub_workers_refcnt, + &fs_info->scrub_lock)) { + struct btrfs_workqueue *scrub_workers = NULL; + struct btrfs_workqueue *scrub_wr_comp = NULL; + struct btrfs_workqueue *scrub_parity = NULL; + + scrub_workers = fs_info->scrub_workers; + scrub_wr_comp = fs_info->scrub_wr_completion_workers; + scrub_parity = fs_info->scrub_parity_workers; + + fs_info->scrub_workers = NULL; + fs_info->scrub_wr_completion_workers = NULL; + fs_info->scrub_parity_workers = NULL; + mutex_unlock(&fs_info->scrub_lock); + + btrfs_destroy_workqueue(scrub_workers); + btrfs_destroy_workqueue(scrub_wr_comp); + btrfs_destroy_workqueue(scrub_parity); + } +} + /* * get a reference count on fs_info->scrub_workers. start worker if necessary */ static noinline_for_stack int scrub_workers_get(struct btrfs_fs_info *fs_info, int is_dev_replace) { + struct btrfs_workqueue *scrub_workers = NULL; + struct btrfs_workqueue *scrub_wr_comp = NULL; + struct btrfs_workqueue *scrub_parity = NULL; unsigned int flags = WQ_FREEZABLE | WQ_UNBOUND; int max_active = fs_info->thread_pool_size; + int ret = -ENOMEM; - lockdep_assert_held(&fs_info->scrub_lock); + if (refcount_inc_not_zero(&fs_info->scrub_workers_refcnt)) + return 0; - if (refcount_read(&fs_info->scrub_workers_refcnt) == 0) { - ASSERT(fs_info->scrub_workers == NULL); - fs_info->scrub_workers = btrfs_alloc_workqueue(fs_info, "scrub", - flags, is_dev_replace ? 1 : max_active, 4); - if (!fs_info->scrub_workers) - goto fail_scrub_workers; - - ASSERT(fs_info->scrub_wr_completion_workers == NULL); - fs_info->scrub_wr_completion_workers = - btrfs_alloc_workqueue(fs_info, "scrubwrc", flags, - max_active, 2); - if (!fs_info->scrub_wr_completion_workers) - goto fail_scrub_wr_completion_workers; + scrub_workers = btrfs_alloc_workqueue(fs_info, "scrub", flags, + is_dev_replace ? 1 : max_active, 4); + if (!scrub_workers) + goto fail_scrub_workers; - ASSERT(fs_info->scrub_parity_workers == NULL); - fs_info->scrub_parity_workers = - btrfs_alloc_workqueue(fs_info, "scrubparity", flags, + scrub_wr_comp = btrfs_alloc_workqueue(fs_info, "scrubwrc", flags, max_active, 2); - if (!fs_info->scrub_parity_workers) - goto fail_scrub_parity_workers; + if (!scrub_wr_comp) + goto fail_scrub_wr_completion_workers; + scrub_parity = btrfs_alloc_workqueue(fs_info, "scrubparity", flags, + max_active, 2); + if (!scrub_parity) + goto fail_scrub_parity_workers; + + mutex_lock(&fs_info->scrub_lock); + if (refcount_read(&fs_info->scrub_workers_refcnt) == 0) { + ASSERT(fs_info->scrub_workers == NULL && + fs_info->scrub_wr_completion_workers == NULL && + fs_info->scrub_parity_workers == NULL); + fs_info->scrub_workers = scrub_workers; + fs_info->scrub_wr_completion_workers = scrub_wr_comp; + fs_info->scrub_parity_workers = scrub_parity; refcount_set(&fs_info->scrub_workers_refcnt, 1); - } else { - refcount_inc(&fs_info->scrub_workers_refcnt); + mutex_unlock(&fs_info->scrub_lock); + return 0; } - return 0; + /* Other thread raced in and created the workers for us */ + refcount_inc(&fs_info->scrub_workers_refcnt); + mutex_unlock(&fs_info->scrub_lock); + ret = 0; + btrfs_destroy_workqueue(scrub_parity); fail_scrub_parity_workers: - btrfs_destroy_workqueue(fs_info->scrub_wr_completion_workers); + btrfs_destroy_workqueue(scrub_wr_comp); fail_scrub_wr_completion_workers: - btrfs_destroy_workqueue(fs_info->scrub_workers); + btrfs_destroy_workqueue(scrub_workers); fail_scrub_workers: - return -ENOMEM; + return ret; } int btrfs_scrub_dev(struct btrfs_fs_info *fs_info, u64 devid, u64 start, @@ -3837,9 +3871,6 @@ int ret; struct btrfs_device *dev; unsigned int nofs_flag; - struct btrfs_workqueue *scrub_workers = NULL; - struct btrfs_workqueue *scrub_wr_comp = NULL; - struct btrfs_workqueue *scrub_parity = NULL; if (btrfs_fs_closing(fs_info)) return -EAGAIN; @@ -3886,13 +3917,17 @@ if (IS_ERR(sctx)) return PTR_ERR(sctx); + ret = scrub_workers_get(fs_info, is_dev_replace); + if (ret) + goto out_free_ctx; + mutex_lock(&fs_info->fs_devices->device_list_mutex); dev = btrfs_find_device(fs_info->fs_devices, devid, NULL, NULL, true); if (!dev || (test_bit(BTRFS_DEV_STATE_MISSING, &dev->dev_state) && !is_dev_replace)) { mutex_unlock(&fs_info->fs_devices->device_list_mutex); ret = -ENODEV; - goto out_free_ctx; + goto out; } if (!is_dev_replace && !readonly && @@ -3901,7 +3936,7 @@ btrfs_err_in_rcu(fs_info, "scrub: device %s is not writable", rcu_str_deref(dev->name)); ret = -EROFS; - goto out_free_ctx; + goto out; } mutex_lock(&fs_info->scrub_lock); @@ -3910,7 +3945,7 @@ mutex_unlock(&fs_info->scrub_lock); mutex_unlock(&fs_info->fs_devices->device_list_mutex); ret = -EIO; - goto out_free_ctx; + goto out; } down_read(&fs_info->dev_replace.rwsem); @@ -3921,17 +3956,10 @@ mutex_unlock(&fs_info->scrub_lock); mutex_unlock(&fs_info->fs_devices->device_list_mutex); ret = -EINPROGRESS; - goto out_free_ctx; + goto out; } up_read(&fs_info->dev_replace.rwsem); - ret = scrub_workers_get(fs_info, is_dev_replace); - if (ret) { - mutex_unlock(&fs_info->scrub_lock); - mutex_unlock(&fs_info->fs_devices->device_list_mutex); - goto out_free_ctx; - } - sctx->readonly = readonly; dev->scrub_ctx = sctx; mutex_unlock(&fs_info->fs_devices->device_list_mutex); @@ -3984,24 +4012,14 @@ mutex_lock(&fs_info->scrub_lock); dev->scrub_ctx = NULL; - if (refcount_dec_and_test(&fs_info->scrub_workers_refcnt)) { - scrub_workers = fs_info->scrub_workers; - scrub_wr_comp = fs_info->scrub_wr_completion_workers; - scrub_parity = fs_info->scrub_parity_workers; - - fs_info->scrub_workers = NULL; - fs_info->scrub_wr_completion_workers = NULL; - fs_info->scrub_parity_workers = NULL; - } mutex_unlock(&fs_info->scrub_lock); - btrfs_destroy_workqueue(scrub_workers); - btrfs_destroy_workqueue(scrub_wr_comp); - btrfs_destroy_workqueue(scrub_parity); + scrub_workers_put(fs_info); scrub_put_ctx(sctx); return ret; - +out: + scrub_workers_put(fs_info); out_free_ctx: scrub_free_ctx(sctx); --- linux-azure-5.8-5.8.0.orig/fs/btrfs/send.c +++ linux-azure-5.8-5.8.0/fs/btrfs/send.c @@ -238,6 +238,7 @@ * after this directory is moved, we can try to rmdir the ino rmdir_ino. */ u64 rmdir_ino; + u64 rmdir_gen; bool orphanized; }; @@ -323,7 +324,7 @@ static struct waiting_dir_move * get_waiting_dir_move(struct send_ctx *sctx, u64 ino); -static int is_waiting_for_rm(struct send_ctx *sctx, u64 dir_ino); +static int is_waiting_for_rm(struct send_ctx *sctx, u64 dir_ino, u64 gen); static int need_send_hole(struct send_ctx *sctx) { @@ -2306,7 +2307,7 @@ fs_path_reset(name); - if (is_waiting_for_rm(sctx, ino)) { + if (is_waiting_for_rm(sctx, ino, gen)) { ret = gen_unique_name(sctx, ino, gen, name); if (ret < 0) goto out; @@ -2865,8 +2866,8 @@ return ret; } -static struct orphan_dir_info * -add_orphan_dir_info(struct send_ctx *sctx, u64 dir_ino) +static struct orphan_dir_info *add_orphan_dir_info(struct send_ctx *sctx, + u64 dir_ino, u64 dir_gen) { struct rb_node **p = &sctx->orphan_dirs.rb_node; struct rb_node *parent = NULL; @@ -2875,20 +2876,23 @@ while (*p) { parent = *p; entry = rb_entry(parent, struct orphan_dir_info, node); - if (dir_ino < entry->ino) { + if (dir_ino < entry->ino) p = &(*p)->rb_left; - } else if (dir_ino > entry->ino) { + else if (dir_ino > entry->ino) p = &(*p)->rb_right; - } else { + else if (dir_gen < entry->gen) + p = &(*p)->rb_left; + else if (dir_gen > entry->gen) + p = &(*p)->rb_right; + else return entry; - } } odi = kmalloc(sizeof(*odi), GFP_KERNEL); if (!odi) return ERR_PTR(-ENOMEM); odi->ino = dir_ino; - odi->gen = 0; + odi->gen = dir_gen; odi->last_dir_index_offset = 0; rb_link_node(&odi->node, parent, p); @@ -2896,8 +2900,8 @@ return odi; } -static struct orphan_dir_info * -get_orphan_dir_info(struct send_ctx *sctx, u64 dir_ino) +static struct orphan_dir_info *get_orphan_dir_info(struct send_ctx *sctx, + u64 dir_ino, u64 gen) { struct rb_node *n = sctx->orphan_dirs.rb_node; struct orphan_dir_info *entry; @@ -2908,15 +2912,19 @@ n = n->rb_left; else if (dir_ino > entry->ino) n = n->rb_right; + else if (gen < entry->gen) + n = n->rb_left; + else if (gen > entry->gen) + n = n->rb_right; else return entry; } return NULL; } -static int is_waiting_for_rm(struct send_ctx *sctx, u64 dir_ino) +static int is_waiting_for_rm(struct send_ctx *sctx, u64 dir_ino, u64 gen) { - struct orphan_dir_info *odi = get_orphan_dir_info(sctx, dir_ino); + struct orphan_dir_info *odi = get_orphan_dir_info(sctx, dir_ino, gen); return odi != NULL; } @@ -2961,7 +2969,7 @@ key.type = BTRFS_DIR_INDEX_KEY; key.offset = 0; - odi = get_orphan_dir_info(sctx, dir); + odi = get_orphan_dir_info(sctx, dir, dir_gen); if (odi) key.offset = odi->last_dir_index_offset; @@ -2992,7 +3000,7 @@ dm = get_waiting_dir_move(sctx, loc.objectid); if (dm) { - odi = add_orphan_dir_info(sctx, dir); + odi = add_orphan_dir_info(sctx, dir, dir_gen); if (IS_ERR(odi)) { ret = PTR_ERR(odi); goto out; @@ -3000,12 +3008,13 @@ odi->gen = dir_gen; odi->last_dir_index_offset = found_key.offset; dm->rmdir_ino = dir; + dm->rmdir_gen = dir_gen; ret = 0; goto out; } if (loc.objectid > send_progress) { - odi = add_orphan_dir_info(sctx, dir); + odi = add_orphan_dir_info(sctx, dir, dir_gen); if (IS_ERR(odi)) { ret = PTR_ERR(odi); goto out; @@ -3045,6 +3054,7 @@ return -ENOMEM; dm->ino = ino; dm->rmdir_ino = 0; + dm->rmdir_gen = 0; dm->orphanized = orphanized; while (*p) { @@ -3190,7 +3200,7 @@ while (ino != BTRFS_FIRST_FREE_OBJECTID) { fs_path_reset(name); - if (is_waiting_for_rm(sctx, ino)) + if (is_waiting_for_rm(sctx, ino, gen)) break; if (is_waiting_for_move(sctx, ino)) { if (*ancestor_ino == 0) @@ -3230,6 +3240,7 @@ u64 parent_ino, parent_gen; struct waiting_dir_move *dm = NULL; u64 rmdir_ino = 0; + u64 rmdir_gen; u64 ancestor; bool is_orphan; int ret; @@ -3244,6 +3255,7 @@ dm = get_waiting_dir_move(sctx, pm->ino); ASSERT(dm); rmdir_ino = dm->rmdir_ino; + rmdir_gen = dm->rmdir_gen; is_orphan = dm->orphanized; free_waiting_dir_move(sctx, dm); @@ -3280,6 +3292,7 @@ dm = get_waiting_dir_move(sctx, pm->ino); ASSERT(dm); dm->rmdir_ino = rmdir_ino; + dm->rmdir_gen = rmdir_gen; } goto out; } @@ -3298,7 +3311,7 @@ struct orphan_dir_info *odi; u64 gen; - odi = get_orphan_dir_info(sctx, rmdir_ino); + odi = get_orphan_dir_info(sctx, rmdir_ino, rmdir_gen); if (!odi) { /* already deleted */ goto finish; @@ -3813,6 +3826,72 @@ } /* + * When processing the new references for an inode we may orphanize an existing + * directory inode because its old name conflicts with one of the new references + * of the current inode. Later, when processing another new reference of our + * inode, we might need to orphanize another inode, but the path we have in the + * reference reflects the pre-orphanization name of the directory we previously + * orphanized. For example: + * + * parent snapshot looks like: + * + * . (ino 256) + * |----- f1 (ino 257) + * |----- f2 (ino 258) + * |----- d1/ (ino 259) + * |----- d2/ (ino 260) + * + * send snapshot looks like: + * + * . (ino 256) + * |----- d1 (ino 258) + * |----- f2/ (ino 259) + * |----- f2_link/ (ino 260) + * | |----- f1 (ino 257) + * | + * |----- d2 (ino 258) + * + * When processing inode 257 we compute the name for inode 259 as "d1", and we + * cache it in the name cache. Later when we start processing inode 258, when + * collecting all its new references we set a full path of "d1/d2" for its new + * reference with name "d2". When we start processing the new references we + * start by processing the new reference with name "d1", and this results in + * orphanizing inode 259, since its old reference causes a conflict. Then we + * move on the next new reference, with name "d2", and we find out we must + * orphanize inode 260, as its old reference conflicts with ours - but for the + * orphanization we use a source path corresponding to the path we stored in the + * new reference, which is "d1/d2" and not "o259-6-0/d2" - this makes the + * receiver fail since the path component "d1/" no longer exists, it was renamed + * to "o259-6-0/" when processing the previous new reference. So in this case we + * must recompute the path in the new reference and use it for the new + * orphanization operation. + */ +static int refresh_ref_path(struct send_ctx *sctx, struct recorded_ref *ref) +{ + char *name; + int ret; + + name = kmemdup(ref->name, ref->name_len, GFP_KERNEL); + if (!name) + return -ENOMEM; + + fs_path_reset(ref->full_path); + ret = get_cur_path(sctx, ref->dir, ref->dir_gen, ref->full_path); + if (ret < 0) + goto out; + + ret = fs_path_add(ref->full_path, name, ref->name_len); + if (ret < 0) + goto out; + + /* Update the reference's base name pointer. */ + set_ref_path(ref, ref->full_path); +out: + kfree(name); + return ret; +} + +/* * This does all the move/link/unlink/rmdir magic. */ static int process_recorded_refs(struct send_ctx *sctx, int *pending_move) @@ -3880,52 +3959,56 @@ goto out; } + /* + * Before doing any rename and link operations, do a first pass on the + * new references to orphanize any unprocessed inodes that may have a + * reference that conflicts with one of the new references of the current + * inode. This needs to happen first because a new reference may conflict + * with the old reference of a parent directory, so we must make sure + * that the path used for link and rename commands don't use an + * orphanized name when an ancestor was not yet orphanized. + * + * Example: + * + * Parent snapshot: + * + * . (ino 256) + * |----- testdir/ (ino 259) + * | |----- a (ino 257) + * | + * |----- b (ino 258) + * + * Send snapshot: + * + * . (ino 256) + * |----- testdir_2/ (ino 259) + * | |----- a (ino 260) + * | + * |----- testdir (ino 257) + * |----- b (ino 257) + * |----- b2 (ino 258) + * + * Processing the new reference for inode 257 with name "b" may happen + * before processing the new reference with name "testdir". If so, we + * must make sure that by the time we send a link command to create the + * hard link "b", inode 259 was already orphanized, since the generated + * path in "valid_path" already contains the orphanized name for 259. + * We are processing inode 257, so only later when processing 259 we do + * the rename operation to change its temporary (orphanized) name to + * "testdir_2". + */ list_for_each_entry(cur, &sctx->new_refs, list) { - /* - * We may have refs where the parent directory does not exist - * yet. This happens if the parent directories inum is higher - * than the current inum. To handle this case, we create the - * parent directory out of order. But we need to check if this - * did already happen before due to other refs in the same dir. - */ ret = get_cur_inode_state(sctx, cur->dir, cur->dir_gen); if (ret < 0) goto out; - if (ret == inode_state_will_create) { - ret = 0; - /* - * First check if any of the current inodes refs did - * already create the dir. - */ - list_for_each_entry(cur2, &sctx->new_refs, list) { - if (cur == cur2) - break; - if (cur2->dir == cur->dir) { - ret = 1; - break; - } - } - - /* - * If that did not happen, check if a previous inode - * did already create the dir. - */ - if (!ret) - ret = did_create_dir(sctx, cur->dir); - if (ret < 0) - goto out; - if (!ret) { - ret = send_create_inode(sctx, cur->dir); - if (ret < 0) - goto out; - } - } + if (ret == inode_state_will_create) + continue; /* - * Check if this new ref would overwrite the first ref of - * another unprocessed inode. If yes, orphanize the - * overwritten inode. If we find an overwritten ref that is - * not the first ref, simply unlink it. + * Check if this new ref would overwrite the first ref of another + * unprocessed inode. If yes, orphanize the overwritten inode. + * If we find an overwritten ref that is not the first ref, + * simply unlink it. */ ret = will_overwrite_ref(sctx, cur->dir, cur->dir_gen, cur->name, cur->name_len, @@ -3942,6 +4025,12 @@ struct name_cache_entry *nce; struct waiting_dir_move *wdm; + if (orphanized_dir) { + ret = refresh_ref_path(sctx, cur); + if (ret < 0) + goto out; + } + ret = orphanize_inode(sctx, ow_inode, ow_gen, cur->full_path); if (ret < 0) @@ -4004,6 +4093,49 @@ } } + } + + list_for_each_entry(cur, &sctx->new_refs, list) { + /* + * We may have refs where the parent directory does not exist + * yet. This happens if the parent directories inum is higher + * than the current inum. To handle this case, we create the + * parent directory out of order. But we need to check if this + * did already happen before due to other refs in the same dir. + */ + ret = get_cur_inode_state(sctx, cur->dir, cur->dir_gen); + if (ret < 0) + goto out; + if (ret == inode_state_will_create) { + ret = 0; + /* + * First check if any of the current inodes refs did + * already create the dir. + */ + list_for_each_entry(cur2, &sctx->new_refs, list) { + if (cur == cur2) + break; + if (cur2->dir == cur->dir) { + ret = 1; + break; + } + } + + /* + * If that did not happen, check if a previous inode + * did already create the dir. + */ + if (!ret) + ret = did_create_dir(sctx, cur->dir); + if (ret < 0) + goto out; + if (!ret) { + ret = send_create_inode(sctx, cur->dir); + if (ret < 0) + goto out; + } + } + if (S_ISDIR(sctx->cur_inode_mode) && sctx->parent_root) { ret = wait_for_dest_dir_move(sctx, cur, is_orphan); if (ret < 0) @@ -5382,6 +5514,21 @@ break; offset += clone_len; clone_root->offset += clone_len; + + /* + * If we are cloning from the file we are currently processing, + * and using the send root as the clone root, we must stop once + * the current clone offset reaches the current eof of the file + * at the receiver, otherwise we would issue an invalid clone + * operation (source range going beyond eof) and cause the + * receiver to fail. So if we reach the current eof, bail out + * and fallback to a regular write. + */ + if (clone_root->root == sctx->send_root && + clone_root->ino == sctx->cur_ino && + clone_root->offset >= sctx->cur_inode_next_write_offset) + break; + data_offset += clone_len; next: path->slots[0]++; @@ -7181,7 +7328,7 @@ alloc_size = sizeof(struct clone_root) * (arg->clone_sources_count + 1); - sctx->clone_roots = kzalloc(alloc_size, GFP_KERNEL); + sctx->clone_roots = kvzalloc(alloc_size, GFP_KERNEL); if (!sctx->clone_roots) { ret = -ENOMEM; goto out; --- linux-azure-5.8-5.8.0.orig/fs/btrfs/space-info.c +++ linux-azure-5.8-5.8.0/fs/btrfs/space-info.c @@ -468,8 +468,8 @@ "block group %llu has %llu bytes, %llu used %llu pinned %llu reserved %s", cache->start, cache->length, cache->used, cache->pinned, cache->reserved, cache->ro ? "[readonly]" : ""); - btrfs_dump_free_space(cache, bytes); spin_unlock(&cache->lock); + btrfs_dump_free_space(cache, bytes); } if (++index < BTRFS_NR_RAID_TYPES) goto again; --- linux-azure-5.8-5.8.0.orig/fs/btrfs/space-info.h +++ linux-azure-5.8-5.8.0/fs/btrfs/space-info.h @@ -150,4 +150,21 @@ spin_unlock(&space_info->lock); } +static inline void __btrfs_mod_total_bytes_pinned( + struct btrfs_space_info *space_info, + s64 mod) +{ + percpu_counter_add_batch(&space_info->total_bytes_pinned, mod, + BTRFS_TOTAL_BYTES_PINNED_BATCH); +} + +static inline void btrfs_mod_total_bytes_pinned(struct btrfs_fs_info *fs_info, + u64 flags, s64 mod) +{ + struct btrfs_space_info *space_info = btrfs_find_space_info(fs_info, flags); + + ASSERT(space_info); + __btrfs_mod_total_bytes_pinned(space_info, mod); +} + #endif /* BTRFS_SPACE_INFO_H */ --- linux-azure-5.8-5.8.0.orig/fs/btrfs/super.c +++ linux-azure-5.8-5.8.0/fs/btrfs/super.c @@ -449,6 +449,7 @@ char *compress_type; bool compress_force = false; enum btrfs_compression_type saved_compress_type; + int saved_compress_level; bool saved_compress_force; int no_compress = 0; @@ -531,6 +532,7 @@ info->compress_type : BTRFS_COMPRESS_NONE; saved_compress_force = btrfs_test_opt(info, FORCE_COMPRESS); + saved_compress_level = info->compress_level; if (token == Opt_compress || token == Opt_compress_force || strncmp(args[0].from, "zlib", 4) == 0) { @@ -556,6 +558,7 @@ } else if (strncmp(args[0].from, "lzo", 3) == 0) { compress_type = "lzo"; info->compress_type = BTRFS_COMPRESS_LZO; + info->compress_level = 0; btrfs_set_opt(info->mount_opt, COMPRESS); btrfs_clear_opt(info->mount_opt, NODATACOW); btrfs_clear_opt(info->mount_opt, NODATASUM); @@ -575,6 +578,8 @@ no_compress = 0; } else if (strncmp(args[0].from, "no", 2) == 0) { compress_type = "no"; + info->compress_level = 0; + info->compress_type = 0; btrfs_clear_opt(info->mount_opt, COMPRESS); btrfs_clear_opt(info->mount_opt, FORCE_COMPRESS); compress_force = false; @@ -595,11 +600,11 @@ */ btrfs_clear_opt(info->mount_opt, FORCE_COMPRESS); } - if ((btrfs_test_opt(info, COMPRESS) && - (info->compress_type != saved_compress_type || - compress_force != saved_compress_force)) || - (!btrfs_test_opt(info, COMPRESS) && - no_compress == 1)) { + if (no_compress == 1) { + btrfs_info(info, "use no compression"); + } else if ((info->compress_type != saved_compress_type) || + (compress_force != saved_compress_force) || + (info->compress_level != saved_compress_level)) { btrfs_info(info, "%s %s compression, level %d", (compress_force) ? "force" : "use", compress_type, info->compress_level); @@ -1312,6 +1317,7 @@ { struct btrfs_fs_info *info = btrfs_sb(dentry->d_sb); const char *compress_type; + const char *subvol_name; if (btrfs_test_opt(info, DEGRADED)) seq_puts(seq, ",degraded"); @@ -1398,8 +1404,13 @@ seq_puts(seq, ",ref_verify"); seq_printf(seq, ",subvolid=%llu", BTRFS_I(d_inode(dentry))->root->root_key.objectid); - seq_puts(seq, ",subvol="); - seq_dentry(seq, dentry, " \t\n\\"); + subvol_name = btrfs_get_subvol_name_from_objectid(info, + BTRFS_I(d_inode(dentry))->root->root_key.objectid); + if (!IS_ERR(subvol_name)) { + seq_puts(seq, ",subvol="); + seq_escape(seq, subvol_name, " \t\n\\"); + kfree(subvol_name); + } return 0; } @@ -1820,6 +1831,14 @@ btrfs_scrub_cancel(fs_info); btrfs_pause_balance(fs_info); + /* + * Pause the qgroup rescan worker if it is running. We don't want + * it to be still running after we are in RO mode, as after that, + * by the time we unmount, it might have left a transaction open, + * so we would leak the transaction and/or crash. + */ + btrfs_qgroup_wait_for_completion(fs_info, false); + ret = btrfs_commit_super(fs_info); if (ret) goto restore; @@ -1887,6 +1906,12 @@ set_bit(BTRFS_FS_OPEN, &fs_info->flags); } out: + /* + * We need to set SB_I_VERSION here otherwise it'll get cleared by VFS, + * since the absence of the flag means it can be toggled off by remount. + */ + *flags |= SB_I_VERSION; + wake_up_process(fs_info->transaction_kthread); btrfs_remount_cleanup(fs_info, old_opts); return 0; @@ -2296,9 +2321,7 @@ static int btrfs_show_devname(struct seq_file *m, struct dentry *root) { struct btrfs_fs_info *fs_info = btrfs_sb(root->d_sb); - struct btrfs_fs_devices *cur_devices; struct btrfs_device *dev, *first_dev = NULL; - struct list_head *head; /* * Lightweight locking of the devices. We should not need @@ -2308,18 +2331,13 @@ * least until the rcu_read_unlock. */ rcu_read_lock(); - cur_devices = fs_info->fs_devices; - while (cur_devices) { - head = &cur_devices->devices; - list_for_each_entry_rcu(dev, head, dev_list) { - if (test_bit(BTRFS_DEV_STATE_MISSING, &dev->dev_state)) - continue; - if (!dev->name) - continue; - if (!first_dev || dev->devid < first_dev->devid) - first_dev = dev; - } - cur_devices = cur_devices->seed; + list_for_each_entry_rcu(dev, &fs_info->fs_devices->devices, dev_list) { + if (test_bit(BTRFS_DEV_STATE_MISSING, &dev->dev_state)) + continue; + if (!dev->name) + continue; + if (!first_dev || dev->devid < first_dev->devid) + first_dev = dev; } if (first_dev) --- linux-azure-5.8-5.8.0.orig/fs/btrfs/sysfs.c +++ linux-azure-5.8-5.8.0/fs/btrfs/sysfs.c @@ -1165,10 +1165,12 @@ disk_kobj->name); } - kobject_del(&one_device->devid_kobj); - kobject_put(&one_device->devid_kobj); + if (one_device->devid_kobj.state_initialized) { + kobject_del(&one_device->devid_kobj); + kobject_put(&one_device->devid_kobj); - wait_for_completion(&one_device->kobj_unregister); + wait_for_completion(&one_device->kobj_unregister); + } return 0; } @@ -1181,10 +1183,12 @@ sysfs_remove_link(fs_devices->devices_kobj, disk_kobj->name); } - kobject_del(&one_device->devid_kobj); - kobject_put(&one_device->devid_kobj); + if (one_device->devid_kobj.state_initialized) { + kobject_del(&one_device->devid_kobj); + kobject_put(&one_device->devid_kobj); - wait_for_completion(&one_device->kobj_unregister); + wait_for_completion(&one_device->kobj_unregister); + } } return 0; @@ -1273,7 +1277,9 @@ { int error = 0; struct btrfs_device *dev; + unsigned int nofs_flag; + nofs_flag = memalloc_nofs_save(); list_for_each_entry(dev, &fs_devices->devices, dev_list) { if (one_device && one_device != dev) @@ -1301,6 +1307,7 @@ break; } } + memalloc_nofs_restore(nofs_flag); return error; } --- linux-azure-5.8-5.8.0.orig/fs/btrfs/transaction.c +++ linux-azure-5.8-5.8.0/fs/btrfs/transaction.c @@ -155,6 +155,7 @@ struct btrfs_transaction *cur_trans = trans->transaction; struct btrfs_fs_info *fs_info = trans->fs_info; struct btrfs_root *root, *tmp; + struct btrfs_caching_control *caching_ctl, *next; down_write(&fs_info->commit_root_sem); list_for_each_entry_safe(root, tmp, &cur_trans->switch_commits, @@ -180,6 +181,45 @@ spin_lock(&cur_trans->dropped_roots_lock); } spin_unlock(&cur_trans->dropped_roots_lock); + + /* + * We have to update the last_byte_to_unpin under the commit_root_sem, + * at the same time we swap out the commit roots. + * + * This is because we must have a real view of the last spot the caching + * kthreads were while caching. Consider the following views of the + * extent tree for a block group + * + * commit root + * +----+----+----+----+----+----+----+ + * |\\\\| |\\\\|\\\\| |\\\\|\\\\| + * +----+----+----+----+----+----+----+ + * 0 1 2 3 4 5 6 7 + * + * new commit root + * +----+----+----+----+----+----+----+ + * | | | |\\\\| | |\\\\| + * +----+----+----+----+----+----+----+ + * 0 1 2 3 4 5 6 7 + * + * If the cache_ctl->progress was at 3, then we are only allowed to + * unpin [0,1) and [2,3], because the caching thread has already + * processed those extents. We are not allowed to unpin [5,6), because + * the caching thread will re-start it's search from 3, and thus find + * the hole from [4,6) to add to the free space cache. + */ + list_for_each_entry_safe(caching_ctl, next, + &fs_info->caching_block_groups, list) { + struct btrfs_block_group *cache = caching_ctl->block_group; + + if (btrfs_block_group_done(cache)) { + cache->last_byte_to_unpin = (u64)-1; + list_del_init(&caching_ctl->list); + btrfs_put_caching_control(caching_ctl); + } else { + cache->last_byte_to_unpin = caching_ctl->progress; + } + } up_write(&fs_info->commit_root_sem); } @@ -937,7 +977,10 @@ if (TRANS_ABORTED(trans) || test_bit(BTRFS_FS_STATE_ERROR, &info->fs_state)) { wake_up_process(info->transaction_kthread); - err = -EIO; + if (TRANS_ABORTED(trans)) + err = trans->aborted; + else + err = -EROFS; } kmem_cache_free(btrfs_trans_handle_cachep, trans); @@ -1630,9 +1673,10 @@ } key.offset = (u64)-1; - pending->snap = btrfs_get_fs_root(fs_info, objectid, true); + pending->snap = btrfs_get_new_fs_root(fs_info, objectid, pending->anon_dev); if (IS_ERR(pending->snap)) { ret = PTR_ERR(pending->snap); + pending->snap = NULL; btrfs_abort_transaction(trans, ret); goto fail; } @@ -2278,8 +2322,6 @@ goto unlock_tree_log; } - btrfs_prepare_extent_commit(fs_info); - cur_trans = fs_info->running_transaction; btrfs_set_root_node(&fs_info->tree_root->root_item, --- linux-azure-5.8-5.8.0.orig/fs/btrfs/transaction.h +++ linux-azure-5.8-5.8.0/fs/btrfs/transaction.h @@ -151,6 +151,8 @@ struct btrfs_block_rsv block_rsv; /* extra metadata reservation for relocation */ int error; + /* Preallocated anonymous block device number */ + dev_t anon_dev; bool readonly; struct list_head list; }; --- linux-azure-5.8-5.8.0.orig/fs/btrfs/tree-checker.c +++ linux-azure-5.8-5.8.0/fs/btrfs/tree-checker.c @@ -754,24 +754,43 @@ { struct btrfs_fs_info *fs_info = leaf->fs_info; u64 length; + u64 chunk_end; u64 stripe_len; u16 num_stripes; u16 sub_stripes; u64 type; u64 features; bool mixed = false; + int raid_index; + int nparity; + int ncopies; length = btrfs_chunk_length(leaf, chunk); stripe_len = btrfs_chunk_stripe_len(leaf, chunk); num_stripes = btrfs_chunk_num_stripes(leaf, chunk); sub_stripes = btrfs_chunk_sub_stripes(leaf, chunk); type = btrfs_chunk_type(leaf, chunk); + raid_index = btrfs_bg_flags_to_raid_index(type); + ncopies = btrfs_raid_array[raid_index].ncopies; + nparity = btrfs_raid_array[raid_index].nparity; if (!num_stripes) { chunk_err(leaf, chunk, logical, "invalid chunk num_stripes, have %u", num_stripes); return -EUCLEAN; } + if (num_stripes < ncopies) { + chunk_err(leaf, chunk, logical, + "invalid chunk num_stripes < ncopies, have %u < %d", + num_stripes, ncopies); + return -EUCLEAN; + } + if (nparity && num_stripes == nparity) { + chunk_err(leaf, chunk, logical, + "invalid chunk num_stripes == nparity, have %u == %d", + num_stripes, nparity); + return -EUCLEAN; + } if (!IS_ALIGNED(logical, fs_info->sectorsize)) { chunk_err(leaf, chunk, logical, "invalid chunk logical, have %llu should aligned to %u", @@ -790,6 +809,12 @@ "invalid chunk length, have %llu", length); return -EUCLEAN; } + if (unlikely(check_add_overflow(logical, length, &chunk_end))) { + chunk_err(leaf, chunk, logical, +"invalid chunk logical start and length, have logical start %llu length %llu", + logical, length); + return -EUCLEAN; + } if (!is_power_of_2(stripe_len) || stripe_len != BTRFS_STRIPE_LEN) { chunk_err(leaf, chunk, logical, "invalid chunk stripe length: %llu", @@ -984,7 +1009,7 @@ /* Note for ROOT_TREE_DIR_ITEM, mkfs could set its transid 0 */ if (btrfs_inode_transid(leaf, iitem) > super_gen + 1) { inode_item_err(leaf, slot, - "invalid inode generation: has %llu expect [0, %llu]", + "invalid inode transid: has %llu expect [0, %llu]", btrfs_inode_transid(leaf, iitem), super_gen + 1); return -EUCLEAN; } @@ -1035,7 +1060,7 @@ int slot) { struct btrfs_fs_info *fs_info = leaf->fs_info; - struct btrfs_root_item ri; + struct btrfs_root_item ri = { 0 }; const u64 valid_root_flags = BTRFS_ROOT_SUBVOL_RDONLY | BTRFS_ROOT_SUBVOL_DEAD; int ret; @@ -1044,14 +1069,22 @@ if (ret < 0) return ret; - if (btrfs_item_size_nr(leaf, slot) != sizeof(ri)) { + if (btrfs_item_size_nr(leaf, slot) != sizeof(ri) && + btrfs_item_size_nr(leaf, slot) != btrfs_legacy_root_item_size()) { generic_err(leaf, slot, - "invalid root item size, have %u expect %zu", - btrfs_item_size_nr(leaf, slot), sizeof(ri)); + "invalid root item size, have %u expect %zu or %u", + btrfs_item_size_nr(leaf, slot), sizeof(ri), + btrfs_legacy_root_item_size()); + return -EUCLEAN; } + /* + * For legacy root item, the members starting at generation_v2 will be + * all filled with 0. + * And since we allow geneartion_v2 as 0, it will still pass the check. + */ read_extent_buffer(leaf, &ri, btrfs_item_ptr_offset(leaf, slot), - sizeof(ri)); + btrfs_item_size_nr(leaf, slot)); /* Generation related */ if (btrfs_root_generation(&ri) > @@ -1398,6 +1431,7 @@ "invalid item size, have %u expect aligned to %zu for key type %u", btrfs_item_size_nr(leaf, slot), sizeof(*dref), key->type); + return -EUCLEAN; } if (!IS_ALIGNED(key->objectid, leaf->fs_info->sectorsize)) { generic_err(leaf, slot, @@ -1426,6 +1460,7 @@ extent_err(leaf, slot, "invalid extent data backref offset, have %llu expect aligned to %u", offset, leaf->fs_info->sectorsize); + return -EUCLEAN; } } return 0; --- linux-azure-5.8-5.8.0.orig/fs/btrfs/tree-log.c +++ linux-azure-5.8-5.8.0/fs/btrfs/tree-log.c @@ -3116,29 +3116,17 @@ btrfs_init_log_ctx(&root_log_ctx, NULL); mutex_lock(&log_root_tree->log_mutex); - atomic_inc(&log_root_tree->log_batch); - atomic_inc(&log_root_tree->log_writers); index2 = log_root_tree->log_transid % 2; list_add_tail(&root_log_ctx.list, &log_root_tree->log_ctxs[index2]); root_log_ctx.log_transid = log_root_tree->log_transid; - mutex_unlock(&log_root_tree->log_mutex); - - mutex_lock(&log_root_tree->log_mutex); - /* * Now we are safe to update the log_root_tree because we're under the * log_mutex, and we're a current writer so we're holding the commit * open until we drop the log_mutex. */ ret = update_log_root(trans, log, &new_root_item); - - if (atomic_dec_and_test(&log_root_tree->log_writers)) { - /* atomic_dec_and_test implies a barrier */ - cond_wake_up_nomb(&log_root_tree->log_writer_wait); - } - if (ret) { if (!list_empty(&root_log_ctx.list)) list_del_init(&root_log_ctx.list); @@ -3184,8 +3172,6 @@ root_log_ctx.log_transid - 1); } - wait_for_writer(log_root_tree); - /* * now that we've moved on to the tree of log tree roots, * check the full commit flag again @@ -3463,11 +3449,13 @@ btrfs_free_path(path); out_unlock: mutex_unlock(&dir->log_mutex); - if (ret == -ENOSPC) { + if (err == -ENOSPC) { btrfs_set_log_full_commit(trans); - ret = 0; - } else if (ret < 0) - btrfs_abort_transaction(trans, ret); + err = 0; + } else if (err < 0 && err != -ENOENT) { + /* ENOENT can be returned if the entry hasn't been fsynced yet */ + btrfs_abort_transaction(trans, err); + } btrfs_end_log_trans(root); @@ -3627,6 +3615,7 @@ * search and this search we'll not find the key again and can just * bail. */ +search: ret = btrfs_search_slot(NULL, root, &min_key, path, 0, 0); if (ret != 0) goto done; @@ -3646,6 +3635,13 @@ if (min_key.objectid != ino || min_key.type != key_type) goto done; + + if (need_resched()) { + btrfs_release_path(path); + cond_resched(); + goto search; + } + ret = overwrite_item(trans, log, dst_path, src, i, &min_key); if (ret) { @@ -4041,11 +4037,8 @@ fs_info->csum_root, ds + cs, ds + cs + cl - 1, &ordered_sums, 0); - if (ret) { - btrfs_release_path(dst_path); - kfree(ins_data); - return ret; - } + if (ret) + break; } } } @@ -4058,7 +4051,6 @@ * we have to do this after the loop above to avoid changing the * log tree while trying to change the log tree. */ - ret = 0; while (!list_empty(&ordered_sums)) { struct btrfs_ordered_sum *sums = list_entry(ordered_sums.next, struct btrfs_ordered_sum, @@ -4505,6 +4497,10 @@ const u64 ino = btrfs_ino(inode); int ins_nr = 0; int start_slot = 0; + bool found_xattrs = false; + + if (test_bit(BTRFS_INODE_NO_XATTRS, &inode->runtime_flags)) + return 0; key.objectid = ino; key.type = BTRFS_XATTR_ITEM_KEY; @@ -4543,6 +4539,7 @@ start_slot = slot; ins_nr++; path->slots[0]++; + found_xattrs = true; cond_resched(); } if (ins_nr > 0) { @@ -4552,6 +4549,9 @@ return ret; } + if (!found_xattrs) + set_bit(BTRFS_INODE_NO_XATTRS, &inode->runtime_flags); + return 0; } @@ -5123,14 +5123,13 @@ const loff_t end, struct btrfs_log_ctx *ctx) { - struct btrfs_fs_info *fs_info = root->fs_info; struct btrfs_path *path; struct btrfs_path *dst_path; struct btrfs_key min_key; struct btrfs_key max_key; struct btrfs_root *log = root->log_root; int err = 0; - int ret; + int ret = 0; bool fast_search = false; u64 ino = btrfs_ino(inode); struct extent_map_tree *em_tree = &inode->extent_tree; @@ -5166,15 +5165,19 @@ max_key.offset = (u64)-1; /* - * Only run delayed items if we are a dir or a new file. - * Otherwise commit the delayed inode only, which is needed in - * order for the log replay code to mark inodes for link count - * fixup (create temporary BTRFS_TREE_LOG_FIXUP_OBJECTID items). + * Only run delayed items if we are a directory. We want to make sure + * all directory indexes hit the fs/subvolume tree so we can find them + * and figure out which index ranges have to be logged. + * + * Otherwise commit the delayed inode only if the full sync flag is set, + * as we want to make sure an up to date version is in the subvolume + * tree so copy_inode_items_to_log() / copy_items() can find it and copy + * it to the log tree. For a non full sync, we always log the inode item + * based on the in-memory struct btrfs_inode which is always up to date. */ - if (S_ISDIR(inode->vfs_inode.i_mode) || - inode->generation > fs_info->last_trans_committed) + if (S_ISDIR(inode->vfs_inode.i_mode)) ret = btrfs_commit_inode_delayed_items(trans, inode); - else + else if (test_bit(BTRFS_INODE_NEEDS_FULL_SYNC, &inode->runtime_flags)) ret = btrfs_commit_inode_delayed_inode(inode); if (ret) { --- linux-azure-5.8-5.8.0.orig/fs/btrfs/volumes.c +++ linux-azure-5.8-5.8.0/fs/btrfs/volumes.c @@ -4,6 +4,7 @@ */ #include +#include #include #include #include @@ -245,7 +246,9 @@ * * global::fs_devs - add, remove, updates to the global list * - * does not protect: manipulation of the fs_devices::devices list! + * does not protect: manipulation of the fs_devices::devices list in general + * but in mount context it could be used to exclude list modifications by eg. + * scan ioctl * * btrfs_device::name - renames (write side), read is RCU * @@ -258,6 +261,9 @@ * may be used to exclude some operations from running concurrently without any * modifications to the list (see write_all_supers) * + * Is not required at mount and close times, because our device list is + * protected by the uuid_mutex at that point. + * * balance_mutex * ------------- * protects balance structures (status, state) and context accessed from @@ -400,7 +406,7 @@ * Returned struct is not linked onto any lists and must be destroyed using * btrfs_free_device. */ -static struct btrfs_device *__alloc_device(void) +static struct btrfs_device *__alloc_device(struct btrfs_fs_info *fs_info) { struct btrfs_device *dev; @@ -427,7 +433,8 @@ btrfs_device_data_ordered_init(dev); INIT_RADIX_TREE(&dev->reada_zones, GFP_NOFS & ~__GFP_DIRECT_RECLAIM); INIT_RADIX_TREE(&dev->reada_extents, GFP_NOFS & ~__GFP_DIRECT_RECLAIM); - extent_io_tree_init(NULL, &dev->alloc_state, 0, NULL); + extent_io_tree_init(fs_info, &dev->alloc_state, + IO_TREE_DEVICE_ALLOC_STATE, NULL); return dev; } @@ -602,6 +609,11 @@ return ret; } +/* + * This is only used on mount, and we are protected from competing things + * messing with our fs_devices by the uuid_mutex, thus we do not need the + * fs_devices->device_list_mutex here. + */ static int btrfs_open_one_device(struct btrfs_fs_devices *fs_devices, struct btrfs_device *device, fmode_t flags, void *holder) @@ -929,17 +941,25 @@ if (device->bdev != path_bdev) { bdput(path_bdev); mutex_unlock(&fs_devices->device_list_mutex); - btrfs_warn_in_rcu(device->fs_info, - "duplicate device fsid:devid for %pU:%llu old:%s new:%s", - disk_super->fsid, devid, - rcu_str_deref(device->name), path); + /* + * device->fs_info may not be reliable here, so + * pass in a NULL instead. This avoids a + * possible use-after-free when the fs_info and + * fs_info->sb are already torn down. + */ + btrfs_warn_in_rcu(NULL, + "duplicate device %s devid %llu generation %llu scanned by %s (%d)", + path, devid, found_transid, + current->comm, + task_pid_nr(current)); return ERR_PTR(-EEXIST); } bdput(path_bdev); btrfs_info_in_rcu(device->fs_info, - "device fsid %pU devid %llu moved old:%s new:%s", - disk_super->fsid, devid, - rcu_str_deref(device->name), path); + "devid %llu device path %s changed to %s scanned by %s (%d)", + devid, rcu_str_deref(device->name), + path, current->comm, + task_pid_nr(current)); } name = rcu_string_strdup(path, GFP_NOFS); @@ -1050,22 +1070,13 @@ continue; } - if (device->devid == BTRFS_DEV_REPLACE_DEVID) { - /* - * In the first step, keep the device which has - * the correct fsid and the devid that is used - * for the dev_replace procedure. - * In the second step, the dev_replace state is - * read from the device tree and it is known - * whether the procedure is really active or - * not, which means whether this device is - * used or whether it should be removed. - */ - if (step == 0 || test_bit(BTRFS_DEV_STATE_REPLACE_TGT, - &device->dev_state)) { - continue; - } - } + /* + * We have already validated the presence of BTRFS_DEV_REPLACE_DEVID, + * in btrfs_init_dev_replace() so just continue. + */ + if (device->devid == BTRFS_DEV_REPLACE_DEVID) + continue; + if (device->bdev) { blkdev_put(device->bdev, device->mode); device->bdev = NULL; @@ -1074,9 +1085,6 @@ if (test_bit(BTRFS_DEV_STATE_WRITEABLE, &device->dev_state)) { list_del_init(&device->dev_alloc_list); clear_bit(BTRFS_DEV_STATE_WRITEABLE, &device->dev_state); - if (!test_bit(BTRFS_DEV_STATE_REPLACE_TGT, - &device->dev_state)) - fs_devices->rw_devices--; } list_del_init(&device->dev_list); fs_devices->num_devices--; @@ -1186,17 +1194,23 @@ { struct btrfs_device *device; struct btrfs_device *latest_dev = NULL; + struct btrfs_device *tmp_device; flags |= FMODE_EXCL; - list_for_each_entry(device, &fs_devices->devices, dev_list) { - /* Just open everything we can; ignore failures here */ - if (btrfs_open_one_device(fs_devices, device, flags, holder)) - continue; + list_for_each_entry_safe(device, tmp_device, &fs_devices->devices, + dev_list) { + int ret; - if (!latest_dev || - device->generation > latest_dev->generation) + ret = btrfs_open_one_device(fs_devices, device, flags, holder); + if (ret == 0 && + (!latest_dev || device->generation > latest_dev->generation)) { latest_dev = device; + } else if (ret == -ENODATA) { + fs_devices->num_devices--; + list_del(&device->dev_list); + btrfs_free_device(device); + } } if (fs_devices->open_devices == 0) return -EINVAL; @@ -1229,8 +1243,14 @@ int ret; lockdep_assert_held(&uuid_mutex); + /* + * The device_list_mutex cannot be taken here in case opening the + * underlying device takes further locks like bd_mutex. + * + * We also don't need the lock here as this is called during mount and + * exclusion is provided by uuid_mutex + */ - mutex_lock(&fs_devices->device_list_mutex); if (fs_devices->opened) { fs_devices->opened++; ret = 0; @@ -1238,7 +1258,6 @@ list_sort(NULL, &fs_devices->devices, devid_cmp); ret = open_fs_devices(fs_devices, flags, holder); } - mutex_unlock(&fs_devices->device_list_mutex); return ret; } @@ -1983,9 +2002,9 @@ return num_devices; } -static void btrfs_scratch_superblocks(struct btrfs_fs_info *fs_info, - struct block_device *bdev, - const char *device_path) +void btrfs_scratch_superblocks(struct btrfs_fs_info *fs_info, + struct block_device *bdev, + const char *device_path) { struct btrfs_super_block *disk_super; int copy_num; @@ -2079,6 +2098,8 @@ mutex_unlock(&uuid_mutex); ret = btrfs_shrink_device(device, 0); + if (!ret) + btrfs_reada_remove_dev(device); mutex_lock(&uuid_mutex); if (ret) goto error_undo; @@ -2166,6 +2187,7 @@ return ret; error_undo: + btrfs_reada_undo_remove_dev(device); if (test_bit(BTRFS_DEV_STATE_WRITEABLE, &device->dev_state)) { mutex_lock(&fs_info->chunk_mutex); list_add(&device->dev_alloc_list, @@ -2208,11 +2230,7 @@ struct btrfs_fs_info *fs_info = srcdev->fs_info; struct btrfs_fs_devices *fs_devices = srcdev->fs_devices; - if (test_bit(BTRFS_DEV_STATE_WRITEABLE, &srcdev->dev_state)) { - /* zero out the old super if it is writable */ - btrfs_scratch_superblocks(fs_info, srcdev->bdev, - srcdev->name->str); - } + mutex_lock(&uuid_mutex); btrfs_close_bdev(srcdev); synchronize_rcu(); @@ -2242,6 +2260,7 @@ close_fs_devices(fs_devices); free_fs_devices(fs_devices); } + mutex_unlock(&uuid_mutex); } void btrfs_destroy_dev_replace_tgtdev(struct btrfs_device *tgtdev) @@ -2597,9 +2616,6 @@ btrfs_set_super_num_devices(fs_info->super_copy, orig_super_num_devices + 1); - /* add sysfs device entry */ - btrfs_sysfs_add_devices_dir(fs_devices, device); - /* * we've got more storage, clear any full flags on the space * infos @@ -2607,6 +2623,10 @@ btrfs_clear_space_info_full(fs_info); mutex_unlock(&fs_info->chunk_mutex); + + /* Add sysfs device entry */ + btrfs_sysfs_add_devices_dir(fs_devices, device); + mutex_unlock(&fs_devices->device_list_mutex); if (seeding_dev) { @@ -3231,7 +3251,7 @@ if (!path) return -ENOMEM; - trans = btrfs_start_transaction(root, 0); + trans = btrfs_start_transaction_fallback_global_rsv(root, 0); if (IS_ERR(trans)) { btrfs_free_path(path); return PTR_ERR(trans); @@ -4135,7 +4155,22 @@ mutex_lock(&fs_info->balance_mutex); if (ret == -ECANCELED && atomic_read(&fs_info->balance_pause_req)) btrfs_info(fs_info, "balance: paused"); - else if (ret == -ECANCELED && atomic_read(&fs_info->balance_cancel_req)) + /* + * Balance can be canceled by: + * + * - Regular cancel request + * Then ret == -ECANCELED and balance_cancel_req > 0 + * + * - Fatal signal to "btrfs" process + * Either the signal caught by wait_reserve_ticket() and callers + * got -EINTR, or caught by btrfs_should_cancel_balance() and + * got -ECANCELED. + * Either way, in this case balance_cancel_req = 0, and + * ret == -EINTR or ret == -ECANCELED. + * + * So here we only check the return value to catch canceled balance. + */ + else if (ret == -ECANCELED || ret == -EINTR) btrfs_info(fs_info, "balance: canceled"); else btrfs_info(fs_info, "balance: ended with status: %d", ret); @@ -4267,6 +4302,8 @@ btrfs_warn(fs_info, "balance: cannot set exclusive op status, resume manually"); + btrfs_release_path(path); + mutex_lock(&fs_info->balance_mutex); BUG_ON(fs_info->balance_ctl); spin_lock(&fs_info->balance_lock); @@ -4432,6 +4469,7 @@ goto skip; } update_tree: + btrfs_release_path(path); if (!btrfs_is_empty_uuid(root_item.uuid)) { ret = btrfs_uuid_tree_add(trans, root_item.uuid, BTRFS_UUID_KEY_SUBVOL, @@ -4456,6 +4494,7 @@ } skip: + btrfs_release_path(path); if (trans) { ret = btrfs_end_transaction(trans); trans = NULL; @@ -4463,7 +4502,6 @@ break; } - btrfs_release_path(path); if (key.offset < (u64)-1) { key.offset++; } else if (key.type < BTRFS_ROOT_ITEM_KEY) { @@ -4690,6 +4728,10 @@ } mutex_lock(&fs_info->chunk_mutex); + /* Clear all state bits beyond the shrunk device size */ + clear_extent_bits(&device->alloc_state, new_size, (u64)-1, + CHUNK_STATE_MASK); + btrfs_device_set_disk_total_bytes(device, new_size); if (list_empty(&device->post_commit_list)) list_add_tail(&device->post_commit_list, @@ -6465,8 +6507,17 @@ u64 devid, u8 *dev_uuid) { struct btrfs_device *device; + unsigned int nofs_flag; + /* + * We call this under the chunk_mutex, so we want to use NOFS for this + * allocation, however we don't want to change btrfs_alloc_device() to + * always do NOFS because we use it in a lot of other GFP_KERNEL safe + * places. + */ + nofs_flag = memalloc_nofs_save(); device = btrfs_alloc_device(NULL, &devid, dev_uuid); + memalloc_nofs_restore(nofs_flag); if (IS_ERR(device)) return device; @@ -6503,7 +6554,7 @@ if (WARN_ON(!devid && !fs_info)) return ERR_PTR(-EINVAL); - dev = __alloc_device(); + dev = __alloc_device(fs_info); if (IS_ERR(dev)) return dev; @@ -7049,7 +7100,6 @@ * otherwise we don't need it. */ mutex_lock(&uuid_mutex); - mutex_lock(&fs_info->chunk_mutex); /* * It is possible for mount and umount to race in such a way that @@ -7094,7 +7144,9 @@ } else if (found_key.type == BTRFS_CHUNK_ITEM_KEY) { struct btrfs_chunk *chunk; chunk = btrfs_item_ptr(leaf, slot, struct btrfs_chunk); + mutex_lock(&fs_info->chunk_mutex); ret = read_one_chunk(&found_key, leaf, chunk); + mutex_unlock(&fs_info->chunk_mutex); if (ret) goto error; } @@ -7124,7 +7176,6 @@ } ret = 0; error: - mutex_unlock(&fs_info->chunk_mutex); mutex_unlock(&uuid_mutex); btrfs_free_path(path); --- linux-azure-5.8-5.8.0.orig/fs/btrfs/volumes.h +++ linux-azure-5.8-5.8.0/fs/btrfs/volumes.h @@ -50,6 +50,7 @@ #define BTRFS_DEV_STATE_MISSING (2) #define BTRFS_DEV_STATE_REPLACE_TGT (3) #define BTRFS_DEV_STATE_FLUSH_SENT (4) +#define BTRFS_DEV_STATE_NO_READA (5) struct btrfs_device { struct list_head dev_list; /* device_list_mutex */ @@ -573,6 +574,9 @@ void btrfs_reset_fs_info_ptr(struct btrfs_fs_info *fs_info); bool btrfs_check_rw_degradable(struct btrfs_fs_info *fs_info, struct btrfs_device *failing_dev); +void btrfs_scratch_superblocks(struct btrfs_fs_info *fs_info, + struct block_device *bdev, + const char *device_path); int btrfs_bg_type_to_factor(u64 flags); const char *btrfs_bg_type_to_raid_name(u64 flags); --- linux-azure-5.8-5.8.0.orig/fs/btrfs/xattr.c +++ linux-azure-5.8-5.8.0/fs/btrfs/xattr.c @@ -213,9 +213,11 @@ } out: btrfs_free_path(path); - if (!ret) + if (!ret) { set_bit(BTRFS_INODE_COPY_EVERYTHING, &BTRFS_I(inode)->runtime_flags); + clear_bit(BTRFS_INODE_NO_XATTRS, &BTRFS_I(inode)->runtime_flags); + } return ret; } --- linux-azure-5.8-5.8.0.orig/fs/buffer.c +++ linux-azure-5.8-5.8.0/fs/buffer.c @@ -2772,16 +2772,6 @@ /* Is the page fully outside i_size? (truncate in progress) */ offset = i_size & (PAGE_SIZE-1); if (page->index >= end_index+1 || !offset) { - /* - * The page may have dirty, unmapped buffers. For example, - * they may have been added in ext3_writepage(). Make them - * freeable here, so the page does not leak. - */ -#if 0 - /* Not really sure about this - do we need this ? */ - if (page->mapping->a_ops->invalidatepage) - page->mapping->a_ops->invalidatepage(page, offset); -#endif unlock_page(page); return 0; /* don't care */ } @@ -2976,12 +2966,6 @@ /* Is the page fully outside i_size? (truncate in progress) */ offset = i_size & (PAGE_SIZE-1); if (page->index >= end_index+1 || !offset) { - /* - * The page may have dirty, unmapped buffers. For example, - * they may have been added in ext3_writepage(). Make them - * freeable here, so the page does not leak. - */ - do_invalidatepage(page, 0, PAGE_SIZE); unlock_page(page); return 0; /* don't care */ } @@ -3160,6 +3144,15 @@ WARN_ON(atomic_read(&bh->b_count) < 1); lock_buffer(bh); if (test_clear_buffer_dirty(bh)) { + /* + * The bh should be mapped, but it might not be if the + * device was hot-removed. Not much we can do but fail the I/O. + */ + if (!buffer_mapped(bh)) { + unlock_buffer(bh); + return -EIO; + } + get_bh(bh); bh->b_end_io = end_buffer_write_sync; ret = submit_bh(REQ_OP_WRITE, op_flags, bh); --- linux-azure-5.8-5.8.0.orig/fs/cachefiles/rdwr.c +++ linux-azure-5.8-5.8.0/fs/cachefiles/rdwr.c @@ -121,7 +121,7 @@ _debug("reissue read"); ret = bmapping->a_ops->readpage(NULL, backpage); if (ret < 0) - goto unlock_discard; + goto discard; } /* but the page may have been read before the monitor was installed, so @@ -138,6 +138,7 @@ unlock_discard: unlock_page(backpage); +discard: spin_lock_irq(&object->work_lock); list_del(&monitor->op_link); spin_unlock_irq(&object->work_lock); @@ -412,7 +413,6 @@ inode = d_backing_inode(object->backer); ASSERT(S_ISREG(inode->i_mode)); - ASSERT(inode->i_mapping->a_ops->readpages); /* calculate the shift required to use bmap */ shift = PAGE_SHIFT - inode->i_sb->s_blocksize_bits; @@ -508,6 +508,8 @@ goto installed_new_backing_page; if (ret != -EEXIST) goto nomem; + put_page(newpage); + newpage = NULL; } /* we've installed a new backing page, so now we need @@ -712,7 +714,6 @@ inode = d_backing_inode(object->backer); ASSERT(S_ISREG(inode->i_mode)); - ASSERT(inode->i_mapping->a_ops->readpages); /* calculate the shift required to use bmap */ shift = PAGE_SHIFT - inode->i_sb->s_blocksize_bits; --- linux-azure-5.8-5.8.0.orig/fs/ceph/addr.c +++ linux-azure-5.8-5.8.0/fs/ceph/addr.c @@ -1523,7 +1523,7 @@ struct ceph_inode_info *ci = ceph_inode(inode); struct ceph_file_info *fi = vma->vm_file->private_data; struct page *pinned_page = NULL; - loff_t off = vmf->pgoff << PAGE_SHIFT; + loff_t off = (loff_t)vmf->pgoff << PAGE_SHIFT; int want, got, err; sigset_t oldset; vm_fault_t ret = VM_FAULT_SIGBUS; --- linux-azure-5.8-5.8.0.orig/fs/ceph/caps.c +++ linux-azure-5.8-5.8.0/fs/ceph/caps.c @@ -886,8 +886,8 @@ int have = ci->i_snap_caps; if ((have & mask) == mask) { - dout("__ceph_caps_issued_mask ino 0x%lx snap issued %s" - " (mask %s)\n", ci->vfs_inode.i_ino, + dout("__ceph_caps_issued_mask ino 0x%llx snap issued %s" + " (mask %s)\n", ceph_ino(&ci->vfs_inode), ceph_cap_string(have), ceph_cap_string(mask)); return 1; @@ -898,8 +898,8 @@ if (!__cap_is_valid(cap)) continue; if ((cap->issued & mask) == mask) { - dout("__ceph_caps_issued_mask ino 0x%lx cap %p issued %s" - " (mask %s)\n", ci->vfs_inode.i_ino, cap, + dout("__ceph_caps_issued_mask ino 0x%llx cap %p issued %s" + " (mask %s)\n", ceph_ino(&ci->vfs_inode), cap, ceph_cap_string(cap->issued), ceph_cap_string(mask)); if (touch) @@ -910,8 +910,8 @@ /* does a combination of caps satisfy mask? */ have |= cap->issued; if ((have & mask) == mask) { - dout("__ceph_caps_issued_mask ino 0x%lx combo issued %s" - " (mask %s)\n", ci->vfs_inode.i_ino, + dout("__ceph_caps_issued_mask ino 0x%llx combo issued %s" + " (mask %s)\n", ceph_ino(&ci->vfs_inode), ceph_cap_string(cap->issued), ceph_cap_string(mask)); if (touch) { @@ -1139,12 +1139,19 @@ { struct ceph_mds_session *session = cap->session; struct ceph_inode_info *ci = cap->ci; - struct ceph_mds_client *mdsc = - ceph_sb_to_client(ci->vfs_inode.i_sb)->mdsc; + struct ceph_mds_client *mdsc; int removed = 0; + /* 'ci' being NULL means the remove have already occurred */ + if (!ci) { + dout("%s: cap inode is NULL\n", __func__); + return; + } + dout("__ceph_remove_cap %p from %p\n", cap, &ci->vfs_inode); + mdsc = ceph_inode_to_client(&ci->vfs_inode)->mdsc; + /* remove from inode's cap rbtree, and clear auth cap */ rb_erase(&cap->ci_node, &ci->i_caps); if (ci->i_auth_cap == cap) { @@ -2870,7 +2877,7 @@ struct cap_wait cw; DEFINE_WAIT_FUNC(wait, woken_wake_function); - cw.ino = inode->i_ino; + cw.ino = ceph_ino(inode); cw.tgid = current->tgid; cw.need = need; cw.want = want; @@ -3073,10 +3080,12 @@ dout("put_cap_refs %p had %s%s%s\n", inode, ceph_cap_string(had), last ? " last" : "", put ? " put" : ""); - if (last && !skip_checking_caps) - ceph_check_caps(ci, 0, NULL); - else if (flushsnaps) - ceph_flush_snaps(ci, NULL); + if (!skip_checking_caps) { + if (last) + ceph_check_caps(ci, 0, NULL); + else if (flushsnaps) + ceph_flush_snaps(ci, NULL); + } if (wake) wake_up_all(&ci->i_cap_wq); while (put-- > 0) @@ -4062,7 +4071,7 @@ vino.snap, inode); mutex_lock(&session->s_mutex); - session->s_seq++; + inc_session_sequence(session); dout(" mds%d seq %lld cap seq %u\n", session->s_mds, session->s_seq, (unsigned)seq); --- linux-azure-5.8-5.8.0.orig/fs/ceph/debugfs.c +++ linux-azure-5.8-5.8.0/fs/ceph/debugfs.c @@ -212,7 +212,7 @@ { struct seq_file *s = p; - seq_printf(s, "0x%-17lx%-17s%-17s\n", inode->i_ino, + seq_printf(s, "0x%-17llx%-17s%-17s\n", ceph_ino(inode), ceph_cap_string(cap->issued), ceph_cap_string(cap->implemented)); return 0; @@ -257,7 +257,7 @@ spin_lock(&mdsc->caps_list_lock); list_for_each_entry(cw, &mdsc->cap_wait_list, list) { - seq_printf(s, "%-13d0x%-17lx%-17s%-17s\n", cw->tgid, cw->ino, + seq_printf(s, "%-13d0x%-17llx%-17s%-17s\n", cw->tgid, cw->ino, ceph_cap_string(cw->need), ceph_cap_string(cw->want)); } --- linux-azure-5.8-5.8.0.orig/fs/ceph/dir.c +++ linux-azure-5.8-5.8.0/fs/ceph/dir.c @@ -259,9 +259,7 @@ dentry, dentry, d_inode(dentry)); ctx->pos = di->offset; if (!dir_emit(ctx, dentry->d_name.name, - dentry->d_name.len, - ceph_translate_ino(dentry->d_sb, - d_inode(dentry)->i_ino), + dentry->d_name.len, ceph_present_inode(d_inode(dentry)), d_inode(dentry)->i_mode >> 12)) { dput(dentry); err = 0; @@ -324,18 +322,21 @@ /* always start with . and .. */ if (ctx->pos == 0) { dout("readdir off 0 -> '.'\n"); - if (!dir_emit(ctx, ".", 1, - ceph_translate_ino(inode->i_sb, inode->i_ino), + if (!dir_emit(ctx, ".", 1, ceph_present_inode(inode), inode->i_mode >> 12)) return 0; ctx->pos = 1; } if (ctx->pos == 1) { - ino_t ino = parent_ino(file->f_path.dentry); + u64 ino; + struct dentry *dentry = file->f_path.dentry; + + spin_lock(&dentry->d_lock); + ino = ceph_present_inode(dentry->d_parent->d_inode); + spin_unlock(&dentry->d_lock); + dout("readdir off 1 -> '..'\n"); - if (!dir_emit(ctx, "..", 2, - ceph_translate_ino(inode->i_sb, ino), - inode->i_mode >> 12)) + if (!dir_emit(ctx, "..", 2, ino, inode->i_mode >> 12)) return 0; ctx->pos = 2; } @@ -507,9 +508,6 @@ } for (; i < rinfo->dir_nr; i++) { struct ceph_mds_reply_dir_entry *rde = rinfo->dir_entries + i; - struct ceph_vino vino; - ino_t ino; - u32 ftype; BUG_ON(rde->offset < ctx->pos); @@ -519,13 +517,10 @@ rde->name_len, rde->name, &rde->inode.in); BUG_ON(!rde->inode.in); - ftype = le32_to_cpu(rde->inode.in->mode) >> 12; - vino.ino = le64_to_cpu(rde->inode.in->ino); - vino.snap = le64_to_cpu(rde->inode.in->snapid); - ino = ceph_vino_to_ino(vino); if (!dir_emit(ctx, rde->name, rde->name_len, - ceph_translate_ino(inode->i_sb, ino), ftype)) { + ceph_present_ino(inode->i_sb, le64_to_cpu(rde->inode.in->ino)), + le32_to_cpu(rde->inode.in->mode) >> 12)) { dout("filldir stopping us...\n"); return 0; } @@ -930,6 +925,10 @@ req->r_num_caps = 2; req->r_dentry_drop = CEPH_CAP_FILE_SHARED | CEPH_CAP_AUTH_EXCL; req->r_dentry_unless = CEPH_CAP_FILE_EXCL; + if (as_ctx.pagelist) { + req->r_pagelist = as_ctx.pagelist; + as_ctx.pagelist = NULL; + } err = ceph_mdsc_do_request(mdsc, dir, req); if (!err && !req->r_reply_info.head->is_dentry) err = ceph_handle_notrace_create(dir, dentry); @@ -1157,7 +1156,7 @@ if (try_async && op == CEPH_MDS_OP_UNLINK && (req->r_dir_caps = get_caps_for_async_unlink(dir, dentry))) { - dout("async unlink on %lu/%.*s caps=%s", dir->i_ino, + dout("async unlink on %llu/%.*s caps=%s", ceph_ino(dir), dentry->d_name.len, dentry->d_name.name, ceph_cap_string(req->r_dir_caps)); set_bit(CEPH_MDS_R_ASYNC, &req->r_req_flags); --- linux-azure-5.8-5.8.0.orig/fs/ceph/file.c +++ linux-azure-5.8-5.8.0/fs/ceph/file.c @@ -630,8 +630,8 @@ } else { struct dentry *dn; - dout("%s d_adding new inode 0x%llx to 0x%lx/%s\n", __func__, - vino.ino, dir->i_ino, dentry->d_name.name); + dout("%s d_adding new inode 0x%llx to 0x%llx/%s\n", __func__, + vino.ino, ceph_ino(dir), dentry->d_name.name); ceph_dir_clear_ordered(dir); ceph_init_inode_acls(inode, as_ctx); if (inode->i_state & I_NEW) { @@ -1538,6 +1538,7 @@ struct inode *inode = file_inode(filp); struct ceph_inode_info *ci = ceph_inode(inode); struct page *pinned_page = NULL; + bool direct_lock = iocb->ki_flags & IOCB_DIRECT; ssize_t ret; int want, got = 0; int retry_op = 0, read = 0; @@ -1546,7 +1547,7 @@ dout("aio_read %p %llx.%llx %llu~%u trying to get caps on %p\n", inode, ceph_vinop(inode), iocb->ki_pos, (unsigned)len, inode); - if (iocb->ki_flags & IOCB_DIRECT) + if (direct_lock) ceph_start_io_direct(inode); else ceph_start_io_read(inode); @@ -1603,7 +1604,7 @@ } ceph_put_cap_refs(ci, got); - if (iocb->ki_flags & IOCB_DIRECT) + if (direct_lock) ceph_end_io_direct(inode); else ceph_end_io_read(inode); @@ -2506,6 +2507,7 @@ .mmap = ceph_mmap, .fsync = ceph_fsync, .lock = ceph_lock, + .setlease = simple_nosetlease, .flock = ceph_flock, .splice_read = generic_file_splice_read, .splice_write = iter_file_splice_write, --- linux-azure-5.8-5.8.0.orig/fs/ceph/inode.c +++ linux-azure-5.8-5.8.0/fs/ceph/inode.c @@ -41,8 +41,10 @@ */ static int ceph_set_ino_cb(struct inode *inode, void *data) { - ceph_inode(inode)->i_vino = *(struct ceph_vino *)data; - inode->i_ino = ceph_vino_to_ino(*(struct ceph_vino *)data); + struct ceph_inode_info *ci = ceph_inode(inode); + + ci->i_vino = *(struct ceph_vino *)data; + inode->i_ino = ceph_vino_to_ino_t(ci->i_vino); inode_set_iversion_raw(inode, 0); return 0; } @@ -50,17 +52,14 @@ struct inode *ceph_get_inode(struct super_block *sb, struct ceph_vino vino) { struct inode *inode; - ino_t t = ceph_vino_to_ino(vino); - inode = iget5_locked(sb, t, ceph_ino_compare, ceph_set_ino_cb, &vino); + inode = iget5_locked(sb, (unsigned long)vino.ino, ceph_ino_compare, + ceph_set_ino_cb, &vino); if (!inode) return ERR_PTR(-ENOMEM); - if (inode->i_state & I_NEW) - dout("get_inode created new inode %p %llx.%llx ino %llx\n", - inode, ceph_vinop(inode), (u64)inode->i_ino); - dout("get_inode on %lu=%llx.%llx got %p\n", inode->i_ino, vino.ino, - vino.snap, inode); + dout("get_inode on %llu=%llx.%llx got %p new %d\n", ceph_present_inode(inode), + ceph_vinop(inode), inode, !!(inode->i_state & I_NEW)); return inode; } @@ -1332,6 +1331,8 @@ in, ceph_vinop(in)); if (in->i_state & I_NEW) discard_new_inode(in); + else + iput(in); goto done; } req->r_target_inode = in; @@ -2378,7 +2379,7 @@ } generic_fillattr(inode, stat); - stat->ino = ceph_translate_ino(inode->i_sb, inode->i_ino); + stat->ino = ceph_present_inode(inode); /* * btime on newly-allocated inodes is 0, so if this is still set to --- linux-azure-5.8-5.8.0.orig/fs/ceph/mds_client.c +++ linux-azure-5.8-5.8.0/fs/ceph/mds_client.c @@ -1785,8 +1785,7 @@ /* * send a session close request */ -static int request_close_session(struct ceph_mds_client *mdsc, - struct ceph_mds_session *session) +static int request_close_session(struct ceph_mds_session *session) { struct ceph_msg *msg; @@ -1809,7 +1808,7 @@ if (session->s_state >= CEPH_MDS_SESSION_CLOSING) return 0; session->s_state = CEPH_MDS_SESSION_CLOSING; - return request_close_session(mdsc, session); + return request_close_session(session); } static bool drop_negative_children(struct dentry *dentry) @@ -3279,8 +3278,10 @@ goto bad; /* version >= 3, feature bits */ ceph_decode_32_safe(&p, end, len, bad); - ceph_decode_64_safe(&p, end, features, bad); - p += len - sizeof(features); + if (len) { + ceph_decode_64_safe(&p, end, features, bad); + p += len - sizeof(features); + } } mutex_lock(&mdsc->mutex); @@ -3529,6 +3530,39 @@ return err; } +static struct dentry* d_find_primary(struct inode *inode) +{ + struct dentry *alias, *dn = NULL; + + if (hlist_empty(&inode->i_dentry)) + return NULL; + + spin_lock(&inode->i_lock); + if (hlist_empty(&inode->i_dentry)) + goto out_unlock; + + if (S_ISDIR(inode->i_mode)) { + alias = hlist_entry(inode->i_dentry.first, struct dentry, d_u.d_alias); + if (!IS_ROOT(alias)) + dn = dget(alias); + goto out_unlock; + } + + hlist_for_each_entry(alias, &inode->i_dentry, d_u.d_alias) { + spin_lock(&alias->d_lock); + if (!d_unhashed(alias) && + (ceph_dentry(alias)->flags & CEPH_DENTRY_PRIMARY_LINK)) { + dn = dget_dlock(alias); + } + spin_unlock(&alias->d_lock); + if (dn) + break; + } +out_unlock: + spin_unlock(&inode->i_lock); + return dn; +} + /* * Encode information about a cap for a reconnect with the MDS. */ @@ -3542,13 +3576,32 @@ struct ceph_inode_info *ci = cap->ci; struct ceph_reconnect_state *recon_state = arg; struct ceph_pagelist *pagelist = recon_state->pagelist; - int err; + struct dentry *dentry; + char *path; + int pathlen, err; + u64 pathbase; u64 snap_follows; dout(" adding %p ino %llx.%llx cap %p %lld %s\n", inode, ceph_vinop(inode), cap, cap->cap_id, ceph_cap_string(cap->issued)); + dentry = d_find_primary(inode); + if (dentry) { + /* set pathbase to parent dir when msg_version >= 2 */ + path = ceph_mdsc_build_path(dentry, &pathlen, &pathbase, + recon_state->msg_version >= 2); + dput(dentry); + if (IS_ERR(path)) { + err = PTR_ERR(path); + goto out_err; + } + } else { + path = NULL; + pathlen = 0; + pathbase = 0; + } + spin_lock(&ci->i_ceph_lock); cap->seq = 0; /* reset cap seq */ cap->issue_seq = 0; /* and issue_seq */ @@ -3569,7 +3622,7 @@ rec.v2.wanted = cpu_to_le32(__ceph_caps_wanted(ci)); rec.v2.issued = cpu_to_le32(cap->issued); rec.v2.snaprealm = cpu_to_le64(ci->i_snap_realm->ino); - rec.v2.pathbase = 0; + rec.v2.pathbase = cpu_to_le64(pathbase); rec.v2.flock_len = (__force __le32) ((ci->i_ceph_flags & CEPH_I_ERROR_FILELOCK) ? 0 : 1); } else { @@ -3580,7 +3633,7 @@ ceph_encode_timespec64(&rec.v1.mtime, &inode->i_mtime); ceph_encode_timespec64(&rec.v1.atime, &inode->i_atime); rec.v1.snaprealm = cpu_to_le64(ci->i_snap_realm->ino); - rec.v1.pathbase = 0; + rec.v1.pathbase = cpu_to_le64(pathbase); } if (list_empty(&ci->i_cap_snaps)) { @@ -3642,7 +3695,7 @@ sizeof(struct ceph_filelock); rec.v2.flock_len = cpu_to_le32(struct_len); - struct_len += sizeof(u32) + sizeof(rec.v2); + struct_len += sizeof(u32) + pathlen + sizeof(rec.v2); if (struct_v >= 2) struct_len += sizeof(u64); /* snap_follows */ @@ -3666,7 +3719,7 @@ ceph_pagelist_encode_8(pagelist, 1); ceph_pagelist_encode_32(pagelist, struct_len); } - ceph_pagelist_encode_string(pagelist, NULL, 0); + ceph_pagelist_encode_string(pagelist, path, pathlen); ceph_pagelist_append(pagelist, &rec, sizeof(rec.v2)); ceph_locks_to_pagelist(flocks, pagelist, num_fcntl_locks, num_flock_locks); @@ -3675,39 +3728,20 @@ out_freeflocks: kfree(flocks); } else { - u64 pathbase = 0; - int pathlen = 0; - char *path = NULL; - struct dentry *dentry; - - dentry = d_find_alias(inode); - if (dentry) { - path = ceph_mdsc_build_path(dentry, - &pathlen, &pathbase, 0); - dput(dentry); - if (IS_ERR(path)) { - err = PTR_ERR(path); - goto out_err; - } - rec.v1.pathbase = cpu_to_le64(pathbase); - } - err = ceph_pagelist_reserve(pagelist, sizeof(u64) + sizeof(u32) + pathlen + sizeof(rec.v1)); - if (err) { - goto out_freepath; - } + if (err) + goto out_err; ceph_pagelist_encode_64(pagelist, ceph_ino(inode)); ceph_pagelist_encode_string(pagelist, path, pathlen); ceph_pagelist_append(pagelist, &rec, sizeof(rec.v1)); -out_freepath: - ceph_mdsc_free_path(path, pathlen); } out_err: - if (err >= 0) + ceph_mdsc_free_path(path, pathlen); + if (!err) recon_state->nr_caps++; return err; } @@ -4111,7 +4145,7 @@ dname.len, dname.name); mutex_lock(&session->s_mutex); - session->s_seq++; + inc_session_sequence(session); if (!inode) { dout("handle_lease no inode %llx\n", vino.ino); @@ -4263,6 +4297,50 @@ ceph_force_reconnect(fsc->sb); } +bool check_session_state(struct ceph_mds_session *s) +{ + switch (s->s_state) { + case CEPH_MDS_SESSION_OPEN: + if (s->s_ttl && time_after(jiffies, s->s_ttl)) { + s->s_state = CEPH_MDS_SESSION_HUNG; + pr_info("mds%d hung\n", s->s_mds); + } + break; + case CEPH_MDS_SESSION_CLOSING: + /* Should never reach this when we're unmounting */ + WARN_ON_ONCE(true); + fallthrough; + case CEPH_MDS_SESSION_NEW: + case CEPH_MDS_SESSION_RESTARTING: + case CEPH_MDS_SESSION_CLOSED: + case CEPH_MDS_SESSION_REJECTED: + return false; + } + + return true; +} + +/* + * If the sequence is incremented while we're waiting on a REQUEST_CLOSE reply, + * then we need to retransmit that request. + */ +void inc_session_sequence(struct ceph_mds_session *s) +{ + lockdep_assert_held(&s->s_mutex); + + s->s_seq++; + + if (s->s_state == CEPH_MDS_SESSION_CLOSING) { + int ret; + + dout("resending session close request for mds%d\n", s->s_mds); + ret = request_close_session(s); + if (ret < 0) + pr_err("unable to close session to mds%d: %d\n", + s->s_mds, ret); + } +} + /* * delayed work -- periodically trim expired leases, renew caps with mds */ @@ -4283,6 +4361,9 @@ dout("mdsc delayed_work\n"); + if (mdsc->stopping) + return; + mutex_lock(&mdsc->mutex); renew_interval = mdsc->mdsmap->m_session_timeout >> 2; renew_caps = time_after_eq(jiffies, HZ*renew_interval + @@ -4294,23 +4375,8 @@ struct ceph_mds_session *s = __ceph_lookup_mds_session(mdsc, i); if (!s) continue; - if (s->s_state == CEPH_MDS_SESSION_CLOSING) { - dout("resending session close request for mds%d\n", - s->s_mds); - request_close_session(mdsc, s); - ceph_put_mds_session(s); - continue; - } - if (s->s_ttl && time_after(jiffies, s->s_ttl)) { - if (s->s_state == CEPH_MDS_SESSION_OPEN) { - s->s_state = CEPH_MDS_SESSION_HUNG; - pr_info("mds%d hung\n", s->s_mds); - } - } - if (s->s_state == CEPH_MDS_SESSION_NEW || - s->s_state == CEPH_MDS_SESSION_RESTARTING || - s->s_state == CEPH_MDS_SESSION_REJECTED) { - /* this mds is failed or recovering, just wait */ + + if (!check_session_state(s)) { ceph_put_mds_session(s); continue; } @@ -4359,7 +4425,6 @@ goto err_mdsc; } - fsc->mdsc = mdsc; init_completion(&mdsc->safe_umount_waiters); init_waitqueue_head(&mdsc->session_close_wq); INIT_LIST_HEAD(&mdsc->waiting_for_map); @@ -4414,6 +4479,8 @@ strscpy(mdsc->nodename, utsname()->nodename, sizeof(mdsc->nodename)); + + fsc->mdsc = mdsc; return 0; err_mdsmap: @@ -4657,7 +4724,16 @@ static void ceph_mdsc_stop(struct ceph_mds_client *mdsc) { dout("stop\n"); - cancel_delayed_work_sync(&mdsc->delayed_work); /* cancel timer */ + /* + * Make sure the delayed work stopped before releasing + * the resources. + * + * Because the cancel_delayed_work_sync() will only + * guarantee that the work finishes executing. But the + * delayed work will re-arm itself again after that. + */ + flush_delayed_work(&mdsc->delayed_work); + if (mdsc->mdsmap) ceph_mdsmap_destroy(mdsc->mdsmap); kfree(mdsc->sessions); --- linux-azure-5.8-5.8.0.orig/fs/ceph/mds_client.h +++ linux-azure-5.8-5.8.0/fs/ceph/mds_client.h @@ -18,6 +18,7 @@ #include #include "metric.h" +#include "super.h" /* The first 8 bits are reserved for old ceph releases */ enum ceph_feature_type { @@ -369,7 +370,7 @@ struct cap_wait { struct list_head list; - unsigned long ino; + u64 ino; pid_t tgid; int need; int want; @@ -476,6 +477,9 @@ extern const char *ceph_mds_op_name(int op); +extern bool check_session_state(struct ceph_mds_session *s); +void inc_session_sequence(struct ceph_mds_session *s); + extern struct ceph_mds_session * __ceph_lookup_mds_session(struct ceph_mds_client *, int mds); --- linux-azure-5.8-5.8.0.orig/fs/ceph/mdsmap.c +++ linux-azure-5.8-5.8.0/fs/ceph/mdsmap.c @@ -245,8 +245,8 @@ } if (state <= 0) { - pr_warn("mdsmap_decode got incorrect state(%s)\n", - ceph_mds_state_name(state)); + dout("mdsmap_decode got incorrect state(%s)\n", + ceph_mds_state_name(state)); continue; } --- linux-azure-5.8-5.8.0.orig/fs/ceph/quota.c +++ linux-azure-5.8-5.8.0/fs/ceph/quota.c @@ -23,12 +23,12 @@ { struct ceph_mds_client *mdsc = ceph_inode_to_client(inode)->mdsc; struct super_block *sb = mdsc->fsc->sb; + struct inode *root = d_inode(sb->s_root); if (atomic64_read(&mdsc->quotarealms_count) > 0) return true; /* if root is the real CephFS root, we don't have quota realms */ - if (sb->s_root->d_inode && - (sb->s_root->d_inode->i_ino == CEPH_INO_ROOT)) + if (root && ceph_ino(root) == CEPH_INO_ROOT) return false; /* otherwise, we can't know for sure */ return true; @@ -53,7 +53,7 @@ /* increment msg sequence number */ mutex_lock(&session->s_mutex); - session->s_seq++; + inc_session_sequence(session); mutex_unlock(&session->s_mutex); /* lookup inode */ --- linux-azure-5.8-5.8.0.orig/fs/ceph/snap.c +++ linux-azure-5.8-5.8.0/fs/ceph/snap.c @@ -873,7 +873,7 @@ ceph_snap_op_name(op), split, trace_len); mutex_lock(&session->s_mutex); - session->s_seq++; + inc_session_sequence(session); mutex_unlock(&session->s_mutex); down_write(&mdsc->snap_rwsem); --- linux-azure-5.8-5.8.0.orig/fs/ceph/super.h +++ linux-azure-5.8-5.8.0/fs/ceph/super.h @@ -457,15 +457,7 @@ return ceph_inode(inode)->i_vino; } -/* - * ino_t is <64 bits on many architectures, blech. - * - * i_ino (kernel inode) st_ino (userspace) - * i386 32 32 - * x86_64+ino32 64 32 - * x86_64 64 64 - */ -static inline u32 ceph_ino_to_ino32(__u64 vino) +static inline u32 ceph_ino_to_ino32(u64 vino) { u32 ino = vino & 0xffffffff; ino ^= vino >> 32; @@ -475,34 +467,17 @@ } /* - * kernel i_ino value + * Inode numbers in cephfs are 64 bits, but inode->i_ino is 32-bits on + * some arches. We generally do not use this value inside the ceph driver, but + * we do want to set it to something, so that generic vfs code has an + * appropriate value for tracepoints and the like. */ -static inline ino_t ceph_vino_to_ino(struct ceph_vino vino) +static inline ino_t ceph_vino_to_ino_t(struct ceph_vino vino) { -#if BITS_PER_LONG == 32 - return ceph_ino_to_ino32(vino.ino); -#else + if (sizeof(ino_t) == sizeof(u32)) + return ceph_ino_to_ino32(vino.ino); return (ino_t)vino.ino; -#endif -} - -/* - * user-visible ino (stat, filldir) - */ -#if BITS_PER_LONG == 32 -static inline ino_t ceph_translate_ino(struct super_block *sb, ino_t ino) -{ - return ino; -} -#else -static inline ino_t ceph_translate_ino(struct super_block *sb, ino_t ino) -{ - if (ceph_test_mount_opt(ceph_sb_to_client(sb), INO32)) - ino = ceph_ino_to_ino32(ino); - return ino; } -#endif - /* for printf-style formatting */ #define ceph_vinop(i) ceph_inode(i)->i_vino.ino, ceph_inode(i)->i_vino.snap @@ -511,11 +486,34 @@ { return ceph_inode(inode)->i_vino.ino; } + static inline u64 ceph_snap(struct inode *inode) { return ceph_inode(inode)->i_vino.snap; } +/** + * ceph_present_ino - format an inode number for presentation to userland + * @sb: superblock where the inode lives + * @ino: inode number to (possibly) convert + * + * If the user mounted with the ino32 option, then the 64-bit value needs + * to be converted to something that can fit inside 32 bits. Note that + * internal kernel code never uses this value, so this is entirely for + * userland consumption. + */ +static inline u64 ceph_present_ino(struct super_block *sb, u64 ino) +{ + if (unlikely(ceph_test_mount_opt(ceph_sb_to_client(sb), INO32))) + return ceph_ino_to_ino32(ino); + return ino; +} + +static inline u64 ceph_present_inode(struct inode *inode) +{ + return ceph_present_ino(inode->i_sb, ceph_ino(inode)); +} + static inline int ceph_ino_compare(struct inode *inode, void *data) { struct ceph_vino *pvino = (struct ceph_vino *)data; @@ -524,11 +522,16 @@ ci->i_vino.snap == pvino->snap; } + static inline struct inode *ceph_find_inode(struct super_block *sb, struct ceph_vino vino) { - ino_t t = ceph_vino_to_ino(vino); - return ilookup5(sb, t, ceph_ino_compare, &vino); + /* + * NB: The hashval will be run through the fs/inode.c hash function + * anyway, so there is no need to squash the inode number down to + * 32-bits first. Just use low-order bits on arches with 32-bit long. + */ + return ilookup5(sb, (unsigned long)vino.ino, ceph_ino_compare, &vino); } --- linux-azure-5.8-5.8.0.orig/fs/ceph/xattr.c +++ linux-azure-5.8-5.8.0/fs/ceph/xattr.c @@ -1272,12 +1272,16 @@ void ceph_release_acl_sec_ctx(struct ceph_acl_sec_ctx *as_ctx) { +#ifdef CONFIG_CEPH_FS_SECURITY_LABEL + struct lsmcontext scaff; /* scaffolding */ +#endif #ifdef CONFIG_CEPH_FS_POSIX_ACL posix_acl_release(as_ctx->acl); posix_acl_release(as_ctx->default_acl); #endif #ifdef CONFIG_CEPH_FS_SECURITY_LABEL - security_release_secctx(as_ctx->sec_ctx, as_ctx->sec_ctxlen); + lsmcontext_init(&scaff, as_ctx->sec_ctx, as_ctx->sec_ctxlen, 0); + security_release_secctx(&scaff); #endif if (as_ctx->pagelist) ceph_pagelist_release(as_ctx->pagelist); --- linux-azure-5.8-5.8.0.orig/fs/cifs/asn1.c +++ linux-azure-5.8-5.8.0/fs/cifs/asn1.c @@ -530,8 +530,8 @@ return 0; } else if ((cls != ASN1_CTX) || (con != ASN1_CON) || (tag != ASN1_EOC)) { - cifs_dbg(FYI, "cls = %d con = %d tag = %d end = %p (%d) exit 0\n", - cls, con, tag, end, *end); + cifs_dbg(FYI, "cls = %d con = %d tag = %d end = %p exit 0\n", + cls, con, tag, end); return 0; } @@ -541,8 +541,8 @@ return 0; } else if ((cls != ASN1_UNI) || (con != ASN1_CON) || (tag != ASN1_SEQ)) { - cifs_dbg(FYI, "cls = %d con = %d tag = %d end = %p (%d) exit 1\n", - cls, con, tag, end, *end); + cifs_dbg(FYI, "cls = %d con = %d tag = %d end = %p exit 1\n", + cls, con, tag, end); return 0; } @@ -552,8 +552,8 @@ return 0; } else if ((cls != ASN1_CTX) || (con != ASN1_CON) || (tag != ASN1_EOC)) { - cifs_dbg(FYI, "cls = %d con = %d tag = %d end = %p (%d) exit 0\n", - cls, con, tag, end, *end); + cifs_dbg(FYI, "cls = %d con = %d tag = %d end = %p exit 0\n", + cls, con, tag, end); return 0; } @@ -564,8 +564,8 @@ return 0; } else if ((cls != ASN1_UNI) || (con != ASN1_CON) || (tag != ASN1_SEQ)) { - cifs_dbg(FYI, "cls = %d con = %d tag = %d end = %p (%d) exit 1\n", - cls, con, tag, end, *end); + cifs_dbg(FYI, "cls = %d con = %d tag = %d sequence_end = %p exit 1\n", + cls, con, tag, sequence_end); return 0; } --- linux-azure-5.8-5.8.0.orig/fs/cifs/cifs_unicode.c +++ linux-azure-5.8-5.8.0/fs/cifs/cifs_unicode.c @@ -488,7 +488,13 @@ else if (map_chars == SFM_MAP_UNI_RSVD) { bool end_of_string; - if (i == srclen - 1) + /** + * Remap spaces and periods found at the end of every + * component of the path. The special cases of '.' and + * '..' do not need to be dealt with explicitly because + * they are addressed in namei.c:link_path_walk(). + **/ + if ((i == srclen - 1) || (source[i+1] == '\\')) end_of_string = true; else end_of_string = false; --- linux-azure-5.8-5.8.0.orig/fs/cifs/cifsacl.c +++ linux-azure-5.8-5.8.0/fs/cifs/cifsacl.c @@ -338,7 +338,7 @@ goto out_key_put; } -static int +int sid_to_id(struct cifs_sb_info *cifs_sb, struct cifs_sid *psid, struct cifs_fattr *fattr, uint sidtype) { @@ -359,7 +359,8 @@ return -EIO; } - if (cifs_sb->mnt_cifs_flags & CIFS_MOUNT_UID_FROM_ACL) { + if ((cifs_sb->mnt_cifs_flags & CIFS_MOUNT_UID_FROM_ACL) || + (cifs_sb_master_tcon(cifs_sb)->posix_extensions)) { uint32_t unix_id; bool is_group; @@ -1265,6 +1266,7 @@ cifs_dbg(VFS, "%s: error %d getting sec desc\n", __func__, rc); } else if (mode_from_special_sid) { rc = parse_sec_desc(cifs_sb, pntsd, acllen, fattr, true); + kfree(pntsd); } else { /* get approximated mode from ACL */ rc = parse_sec_desc(cifs_sb, pntsd, acllen, fattr, false); --- linux-azure-5.8-5.8.0.orig/fs/cifs/cifsglob.h +++ linux-azure-5.8-5.8.0/fs/cifs/cifsglob.h @@ -510,6 +510,8 @@ struct fiemap_extent_info *, u64, u64); /* version specific llseek implementation */ loff_t (*llseek)(struct file *, struct cifs_tcon *, loff_t, int); + /* Check for STATUS_IO_TIMEOUT */ + bool (*is_status_io_timeout)(char *buf); }; struct smb_version_values { --- linux-azure-5.8-5.8.0.orig/fs/cifs/cifsproto.h +++ linux-azure-5.8-5.8.0/fs/cifs/cifsproto.h @@ -208,6 +208,8 @@ extern int cifs_rename_pending_delete(const char *full_path, struct dentry *dentry, const unsigned int xid); +extern int sid_to_id(struct cifs_sb_info *cifs_sb, struct cifs_sid *psid, + struct cifs_fattr *fattr, uint sidtype); extern int cifs_acl_to_fattr(struct cifs_sb_info *cifs_sb, struct cifs_fattr *fattr, struct inode *inode, bool get_mode_from_special_sid, --- linux-azure-5.8-5.8.0.orig/fs/cifs/connect.c +++ linux-azure-5.8-5.8.0/fs/cifs/connect.c @@ -69,6 +69,9 @@ #define TLINK_ERROR_EXPIRE (1 * HZ) #define TLINK_IDLE_EXPIRE (600 * HZ) +/* Drop the connection to not overload the server */ +#define NUM_STATUS_IO_TIMEOUT 5 + enum { /* Mount options that take no arguments */ Opt_user_xattr, Opt_nouser_xattr, @@ -931,6 +934,8 @@ list_del_init(&server->tcp_ses_list); spin_unlock(&cifs_tcp_ses_lock); + cancel_delayed_work_sync(&server->echo); + spin_lock(&GlobalMid_Lock); server->tcpStatus = CifsExiting; spin_unlock(&GlobalMid_Lock); @@ -1116,7 +1121,7 @@ struct task_struct *task_to_wake = NULL; struct mid_q_entry *mids[MAX_COMPOUND]; char *bufs[MAX_COMPOUND]; - unsigned int noreclaim_flag; + unsigned int noreclaim_flag, num_io_timeout = 0; noreclaim_flag = memalloc_noreclaim_save(); cifs_dbg(FYI, "Demultiplex PID: %d\n", task_pid_nr(current)); @@ -1212,6 +1217,16 @@ continue; } + if (server->ops->is_status_io_timeout && + server->ops->is_status_io_timeout(buf)) { + num_io_timeout++; + if (num_io_timeout > NUM_STATUS_IO_TIMEOUT) { + cifs_reconnect(server); + num_io_timeout = 0; + continue; + } + } + server->lstrp = jiffies; for (i = 0; i < num_mids; i++) { @@ -3594,7 +3609,10 @@ */ tcon->retry = volume_info->retry; tcon->nocase = volume_info->nocase; - tcon->nohandlecache = volume_info->nohandlecache; + if (ses->server->capabilities & SMB2_GLOBAL_CAP_DIRECTORY_LEASING) + tcon->nohandlecache = volume_info->nohandlecache; + else + tcon->nohandlecache = 1; tcon->nodelete = volume_info->nodelete; tcon->local_lease = volume_info->local_lease; INIT_LIST_HEAD(&tcon->pending_opens); --- linux-azure-5.8-5.8.0.orig/fs/cifs/dfs_cache.c +++ linux-azure-5.8-5.8.0/fs/cifs/dfs_cache.c @@ -1257,7 +1257,8 @@ vi = find_vol(fullpath); spin_unlock(&vol_list_lock); - kref_put(&vi->refcnt, vol_release); + if (!IS_ERR(vi)) + kref_put(&vi->refcnt, vol_release); } /** --- linux-azure-5.8-5.8.0.orig/fs/cifs/dir.c +++ linux-azure-5.8-5.8.0/fs/cifs/dir.c @@ -736,6 +736,7 @@ cifs_d_revalidate(struct dentry *direntry, unsigned int flags) { struct inode *inode; + int rc; if (flags & LOOKUP_RCU) return -ECHILD; @@ -745,8 +746,25 @@ if ((flags & LOOKUP_REVAL) && !CIFS_CACHE_READ(CIFS_I(inode))) CIFS_I(inode)->time = 0; /* force reval */ - if (cifs_revalidate_dentry(direntry)) - return 0; + rc = cifs_revalidate_dentry(direntry); + if (rc) { + cifs_dbg(FYI, "cifs_revalidate_dentry failed with rc=%d", rc); + switch (rc) { + case -ENOENT: + case -ESTALE: + /* + * Those errors mean the dentry is invalid + * (file was deleted or recreated) + */ + return 0; + default: + /* + * Otherwise some unexpected error happened + * report it as-is to VFS layer + */ + return rc; + } + } else { /* * If the inode wasn't known to be a dfs entry when --- linux-azure-5.8-5.8.0.orig/fs/cifs/inode.c +++ linux-azure-5.8-5.8.0/fs/cifs/inode.c @@ -1017,6 +1017,8 @@ if (cifs_sb->mnt_cifs_flags & CIFS_MOUNT_MODE_FROM_SID) { rc = cifs_acl_to_fattr(cifs_sb, &fattr, *inode, true, full_path, fid); + if (rc == -EREMOTE) + rc = 0; if (rc) { cifs_dbg(FYI, "%s: Get mode from SID failed. rc=%d\n", __func__, rc); @@ -1025,6 +1027,8 @@ } else if (cifs_sb->mnt_cifs_flags & CIFS_MOUNT_CIFS_ACL) { rc = cifs_acl_to_fattr(cifs_sb, &fattr, *inode, false, full_path, fid); + if (rc == -EREMOTE) + rc = 0; if (rc) { cifs_dbg(FYI, "%s: Getting ACL failed with error: %d\n", __func__, rc); @@ -2881,13 +2885,18 @@ { struct cifs_sb_info *cifs_sb = CIFS_SB(direntry->d_sb); struct cifs_tcon *pTcon = cifs_sb_master_tcon(cifs_sb); + int rc, retries = 0; - if (pTcon->unix_ext) - return cifs_setattr_unix(direntry, attrs); - - return cifs_setattr_nounix(direntry, attrs); + do { + if (pTcon->unix_ext) + rc = cifs_setattr_unix(direntry, attrs); + else + rc = cifs_setattr_nounix(direntry, attrs); + retries++; + } while (is_retryable_error(rc) && retries < 2); /* BB: add cifs_setattr_legacy for really old servers */ + return rc; } #if 0 --- linux-azure-5.8-5.8.0.orig/fs/cifs/readdir.c +++ linux-azure-5.8-5.8.0/fs/cifs/readdir.c @@ -267,9 +267,8 @@ if (reparse_file_needs_reval(fattr)) fattr->cf_flags |= CIFS_FATTR_NEED_REVAL; - /* TODO map SIDs */ - fattr->cf_uid = cifs_sb->mnt_uid; - fattr->cf_gid = cifs_sb->mnt_gid; + sid_to_id(cifs_sb, &parsed.owner, fattr, SIDOWNER); + sid_to_id(cifs_sb, &parsed.group, fattr, SIDGROUP); } static void __dir_info_to_fattr(struct cifs_fattr *fattr, const void *info) --- linux-azure-5.8-5.8.0.orig/fs/cifs/smb2inode.c +++ linux-azure-5.8-5.8.0/fs/cifs/smb2inode.c @@ -115,6 +115,7 @@ vars->oparms.fid = &fid; vars->oparms.reconnect = false; vars->oparms.mode = mode; + vars->oparms.cifs_sb = cifs_sb; rqst[num_rqst].rq_iov = &vars->open_iov[0]; rqst[num_rqst].rq_nvec = SMB2_CREATE_IOV_SIZE; --- linux-azure-5.8-5.8.0.orig/fs/cifs/smb2maperror.c +++ linux-azure-5.8-5.8.0/fs/cifs/smb2maperror.c @@ -488,7 +488,7 @@ {STATUS_PIPE_CONNECTED, -EIO, "STATUS_PIPE_CONNECTED"}, {STATUS_PIPE_LISTENING, -EIO, "STATUS_PIPE_LISTENING"}, {STATUS_INVALID_READ_MODE, -EIO, "STATUS_INVALID_READ_MODE"}, - {STATUS_IO_TIMEOUT, -ETIMEDOUT, "STATUS_IO_TIMEOUT"}, + {STATUS_IO_TIMEOUT, -EAGAIN, "STATUS_IO_TIMEOUT"}, {STATUS_FILE_FORCED_CLOSED, -EIO, "STATUS_FILE_FORCED_CLOSED"}, {STATUS_PROFILING_NOT_STARTED, -EIO, "STATUS_PROFILING_NOT_STARTED"}, {STATUS_PROFILING_NOT_STOPPED, -EIO, "STATUS_PROFILING_NOT_STOPPED"}, --- linux-azure-5.8-5.8.0.orig/fs/cifs/smb2misc.c +++ linux-azure-5.8-5.8.0/fs/cifs/smb2misc.c @@ -94,6 +94,8 @@ /* SMB2_OPLOCK_BREAK */ cpu_to_le16(24) }; +#define SMB311_NEGPROT_BASE_SIZE (sizeof(struct smb2_sync_hdr) + sizeof(struct smb2_negotiate_rsp)) + static __u32 get_neg_ctxt_len(struct smb2_sync_hdr *hdr, __u32 len, __u32 non_ctxlen) { @@ -109,11 +111,17 @@ /* Make sure that negotiate contexts start after gss security blob */ nc_offset = le32_to_cpu(pneg_rsp->NegotiateContextOffset); - if (nc_offset < non_ctxlen) { - pr_warn_once("Invalid negotiate context offset\n"); + if (nc_offset + 1 < non_ctxlen) { + pr_warn_once("Invalid negotiate context offset %d\n", nc_offset); return 0; - } - size_of_pad_before_neg_ctxts = nc_offset - non_ctxlen; + } else if (nc_offset + 1 == non_ctxlen) { + cifs_dbg(FYI, "no SPNEGO security blob in negprot rsp\n"); + size_of_pad_before_neg_ctxts = 0; + } else if (non_ctxlen == SMB311_NEGPROT_BASE_SIZE) + /* has padding, but no SPNEGO blob */ + size_of_pad_before_neg_ctxts = nc_offset - non_ctxlen + 1; + else + size_of_pad_before_neg_ctxts = nc_offset - non_ctxlen; /* Verify that at least minimal negotiate contexts fit within frame */ if (len < nc_offset + (neg_count * sizeof(struct smb2_neg_context))) { @@ -508,15 +516,31 @@ kfree(lw); } +static void +smb2_queue_pending_open_break(struct tcon_link *tlink, __u8 *lease_key, + __le32 new_lease_state) +{ + struct smb2_lease_break_work *lw; + + lw = kmalloc(sizeof(struct smb2_lease_break_work), GFP_KERNEL); + if (!lw) { + cifs_put_tlink(tlink); + return; + } + + INIT_WORK(&lw->lease_break, cifs_ses_oplock_break); + lw->tlink = tlink; + lw->lease_state = new_lease_state; + memcpy(lw->lease_key, lease_key, SMB2_LEASE_KEY_SIZE); + queue_work(cifsiod_wq, &lw->lease_break); +} + static bool -smb2_tcon_has_lease(struct cifs_tcon *tcon, struct smb2_lease_break *rsp, - struct smb2_lease_break_work *lw) +smb2_tcon_has_lease(struct cifs_tcon *tcon, struct smb2_lease_break *rsp) { - bool found; __u8 lease_state; struct list_head *tmp; struct cifsFileInfo *cfile; - struct cifs_pending_open *open; struct cifsInodeInfo *cinode; int ack_req = le32_to_cpu(rsp->Flags & SMB2_NOTIFY_BREAK_LEASE_FLAG_ACK_REQUIRED); @@ -546,22 +570,29 @@ cfile->oplock_level = lease_state; cifs_queue_oplock_break(cfile); - kfree(lw); return true; } - found = false; + return false; +} + +static struct cifs_pending_open * +smb2_tcon_find_pending_open_lease(struct cifs_tcon *tcon, + struct smb2_lease_break *rsp) +{ + __u8 lease_state = le32_to_cpu(rsp->NewLeaseState); + int ack_req = le32_to_cpu(rsp->Flags & + SMB2_NOTIFY_BREAK_LEASE_FLAG_ACK_REQUIRED); + struct cifs_pending_open *open; + struct cifs_pending_open *found = NULL; + list_for_each_entry(open, &tcon->pending_opens, olist) { if (memcmp(open->lease_key, rsp->LeaseKey, SMB2_LEASE_KEY_SIZE)) continue; if (!found && ack_req) { - found = true; - memcpy(lw->lease_key, open->lease_key, - SMB2_LEASE_KEY_SIZE); - lw->tlink = cifs_get_tlink(open->tlink); - queue_work(cifsiod_wq, &lw->lease_break); + found = open; } cifs_dbg(FYI, "found in the pending open list\n"); @@ -582,14 +613,7 @@ struct TCP_Server_Info *server; struct cifs_ses *ses; struct cifs_tcon *tcon; - struct smb2_lease_break_work *lw; - - lw = kmalloc(sizeof(struct smb2_lease_break_work), GFP_KERNEL); - if (!lw) - return false; - - INIT_WORK(&lw->lease_break, cifs_ses_oplock_break); - lw->lease_state = rsp->NewLeaseState; + struct cifs_pending_open *open; cifs_dbg(FYI, "Checking for lease break\n"); @@ -607,9 +631,25 @@ spin_lock(&tcon->open_file_lock); cifs_stats_inc( &tcon->stats.cifs_stats.num_oplock_brks); - if (smb2_tcon_has_lease(tcon, rsp, lw)) { + if (smb2_tcon_has_lease(tcon, rsp)) { + spin_unlock(&tcon->open_file_lock); + spin_unlock(&cifs_tcp_ses_lock); + return true; + } + open = smb2_tcon_find_pending_open_lease(tcon, + rsp); + if (open) { + __u8 lease_key[SMB2_LEASE_KEY_SIZE]; + struct tcon_link *tlink; + + tlink = cifs_get_tlink(open->tlink); + memcpy(lease_key, open->lease_key, + SMB2_LEASE_KEY_SIZE); spin_unlock(&tcon->open_file_lock); spin_unlock(&cifs_tcp_ses_lock); + smb2_queue_pending_open_break(tlink, + lease_key, + rsp->NewLeaseState); return true; } spin_unlock(&tcon->open_file_lock); @@ -629,7 +669,6 @@ } } spin_unlock(&cifs_tcp_ses_lock); - kfree(lw); cifs_dbg(FYI, "Can not process lease break - no lease matched\n"); return false; } --- linux-azure-5.8-5.8.0.orig/fs/cifs/smb2ops.c +++ linux-azure-5.8-5.8.0/fs/cifs/smb2ops.c @@ -262,7 +262,7 @@ } static struct mid_q_entry * -smb2_find_mid(struct TCP_Server_Info *server, char *buf) +__smb2_find_mid(struct TCP_Server_Info *server, char *buf, bool dequeue) { struct mid_q_entry *mid; struct smb2_sync_hdr *shdr = (struct smb2_sync_hdr *)buf; @@ -279,6 +279,10 @@ (mid->mid_state == MID_REQUEST_SUBMITTED) && (mid->command == shdr->Command)) { kref_get(&mid->refcount); + if (dequeue) { + list_del_init(&mid->qhead); + mid->mid_flags |= MID_DELETED; + } spin_unlock(&GlobalMid_Lock); return mid; } @@ -287,6 +291,18 @@ return NULL; } +static struct mid_q_entry * +smb2_find_mid(struct TCP_Server_Info *server, char *buf) +{ + return __smb2_find_mid(server, buf, false); +} + +static struct mid_q_entry * +smb2_find_dequeue_mid(struct TCP_Server_Info *server, char *buf) +{ + return __smb2_find_mid(server, buf, true); +} + static void smb2_dump_detail(void *buf, struct TCP_Server_Info *server) { @@ -459,7 +475,8 @@ goto out; } - if (bytes_left || p->Next) + /* Azure rounds the buffer size up 8, to a 16 byte boundary */ + if ((bytes_left > 8) || p->Next) cifs_dbg(VFS, "%s: incomplete interface info\n", __func__); @@ -1208,7 +1225,7 @@ rqst[1].rq_iov = si_iov; rqst[1].rq_nvec = 1; - len = sizeof(ea) + ea_name_len + ea_value_len + 1; + len = sizeof(*ea) + ea_name_len + ea_value_len + 1; ea = kzalloc(len, GFP_KERNEL); if (ea == NULL) { rc = -ENOMEM; @@ -2346,6 +2363,17 @@ return true; } +static bool +smb2_is_status_io_timeout(char *buf) +{ + struct smb2_sync_hdr *shdr = (struct smb2_sync_hdr *)buf; + + if (shdr->Status == STATUS_IO_TIMEOUT) + return true; + else + return false; +} + static int smb2_oplock_response(struct cifs_tcon *tcon, struct cifs_fid *fid, struct cifsInodeInfo *cinode) @@ -3072,7 +3100,12 @@ oparms.tcon = tcon; oparms.desired_access = READ_CONTROL; oparms.disposition = FILE_OPEN; - oparms.create_options = cifs_create_options(cifs_sb, 0); + /* + * When querying an ACL, even if the file is a symlink we want to open + * the source not the target, and so the protocol requires that the + * client specify this flag when opening a reparse point + */ + oparms.create_options = cifs_create_options(cifs_sb, 0) | OPEN_REPARSE_POINT; oparms.fid = &fid; oparms.reconnect = false; @@ -3924,7 +3957,7 @@ if (rc) { cifs_server_dbg(VFS, "%s: Could not get %scryption key\n", __func__, enc ? "en" : "de"); - return 0; + return rc; } rc = smb3_crypto_aead_allocate(server); @@ -4103,7 +4136,8 @@ static int decrypt_raw_data(struct TCP_Server_Info *server, char *buf, unsigned int buf_data_size, struct page **pages, - unsigned int npages, unsigned int page_data_size) + unsigned int npages, unsigned int page_data_size, + bool is_offloaded) { struct kvec iov[2]; struct smb_rqst rqst = {NULL}; @@ -4129,7 +4163,8 @@ memmove(buf, iov[1].iov_base, buf_data_size); - server->total_read = buf_data_size + page_data_size; + if (!is_offloaded) + server->total_read = buf_data_size + page_data_size; return rc; } @@ -4194,7 +4229,8 @@ static int handle_read_data(struct TCP_Server_Info *server, struct mid_q_entry *mid, char *buf, unsigned int buf_len, struct page **pages, - unsigned int npages, unsigned int page_data_size) + unsigned int npages, unsigned int page_data_size, + bool is_offloaded) { unsigned int data_offset; unsigned int data_len; @@ -4216,7 +4252,8 @@ if (server->ops->is_session_expired && server->ops->is_session_expired(buf)) { - cifs_reconnect(server); + if (!is_offloaded) + cifs_reconnect(server); return -1; } @@ -4240,7 +4277,10 @@ cifs_dbg(FYI, "%s: server returned error %d\n", __func__, rdata->result); /* normal error on read response */ - dequeue_mid(mid, false); + if (is_offloaded) + mid->mid_state = MID_RESPONSE_RECEIVED; + else + dequeue_mid(mid, false); return 0; } @@ -4264,7 +4304,10 @@ cifs_dbg(FYI, "%s: data offset (%u) beyond end of smallbuf\n", __func__, data_offset); rdata->result = -EIO; - dequeue_mid(mid, rdata->result); + if (is_offloaded) + mid->mid_state = MID_RESPONSE_MALFORMED; + else + dequeue_mid(mid, rdata->result); return 0; } @@ -4280,21 +4323,30 @@ cifs_dbg(FYI, "%s: data offset (%u) beyond 1st page of response\n", __func__, data_offset); rdata->result = -EIO; - dequeue_mid(mid, rdata->result); + if (is_offloaded) + mid->mid_state = MID_RESPONSE_MALFORMED; + else + dequeue_mid(mid, rdata->result); return 0; } if (data_len > page_data_size - pad_len) { /* data_len is corrupt -- discard frame */ rdata->result = -EIO; - dequeue_mid(mid, rdata->result); + if (is_offloaded) + mid->mid_state = MID_RESPONSE_MALFORMED; + else + dequeue_mid(mid, rdata->result); return 0; } rdata->result = init_read_bvec(pages, npages, page_data_size, cur_off, &bvec); if (rdata->result != 0) { - dequeue_mid(mid, rdata->result); + if (is_offloaded) + mid->mid_state = MID_RESPONSE_MALFORMED; + else + dequeue_mid(mid, rdata->result); return 0; } @@ -4309,7 +4361,10 @@ /* read response payload cannot be in both buf and pages */ WARN_ONCE(1, "buf can not contain only a part of read data"); rdata->result = -EIO; - dequeue_mid(mid, rdata->result); + if (is_offloaded) + mid->mid_state = MID_RESPONSE_MALFORMED; + else + dequeue_mid(mid, rdata->result); return 0; } @@ -4320,7 +4375,10 @@ if (length < 0) return length; - dequeue_mid(mid, false); + if (is_offloaded) + mid->mid_state = MID_RESPONSE_RECEIVED; + else + dequeue_mid(mid, false); return length; } @@ -4342,22 +4400,41 @@ struct mid_q_entry *mid; rc = decrypt_raw_data(dw->server, dw->buf, dw->server->vals->read_rsp_size, - dw->ppages, dw->npages, dw->len); + dw->ppages, dw->npages, dw->len, true); if (rc) { cifs_dbg(VFS, "error decrypting rc=%d\n", rc); goto free_pages; } dw->server->lstrp = jiffies; - mid = smb2_find_mid(dw->server, dw->buf); + mid = smb2_find_dequeue_mid(dw->server, dw->buf); if (mid == NULL) cifs_dbg(FYI, "mid not found\n"); else { mid->decrypted = true; rc = handle_read_data(dw->server, mid, dw->buf, dw->server->vals->read_rsp_size, - dw->ppages, dw->npages, dw->len); - mid->callback(mid); + dw->ppages, dw->npages, dw->len, + true); + if (rc >= 0) { +#ifdef CONFIG_CIFS_STATS2 + mid->when_received = jiffies; +#endif + mid->callback(mid); + } else { + spin_lock(&GlobalMid_Lock); + if (dw->server->tcpStatus == CifsNeedReconnect) { + mid->mid_state = MID_RETRY_NEEDED; + spin_unlock(&GlobalMid_Lock); + mid->callback(mid); + } else { + mid->mid_state = MID_REQUEST_SUBMITTED; + mid->mid_flags &= ~(MID_DELETED); + list_add_tail(&mid->qhead, + &dw->server->pending_mid_q); + spin_unlock(&GlobalMid_Lock); + } + } cifs_mid_q_entry_release(mid); } @@ -4448,7 +4525,7 @@ non_offloaded_decrypt: rc = decrypt_raw_data(server, buf, server->vals->read_rsp_size, - pages, npages, len); + pages, npages, len, false); if (rc) goto free_pages; @@ -4460,7 +4537,7 @@ (*mid)->decrypted = true; rc = handle_read_data(server, *mid, buf, server->vals->read_rsp_size, - pages, npages, len); + pages, npages, len, false); } free_pages: @@ -4504,7 +4581,7 @@ server->total_read += length; buf_size = pdu_length - sizeof(struct smb2_transform_hdr); - length = decrypt_raw_data(server, buf, buf_size, NULL, 0, 0); + length = decrypt_raw_data(server, buf, buf_size, NULL, 0, 0, false); if (length) return length; @@ -4603,7 +4680,7 @@ char *buf = server->large_buf ? server->bigbuf : server->smallbuf; return handle_read_data(server, mid, buf, server->pdu_size, - NULL, 0, 0); + NULL, 0, 0, false); } static int @@ -4809,6 +4886,7 @@ .make_node = smb2_make_node, .fiemap = smb3_fiemap, .llseek = smb3_llseek, + .is_status_io_timeout = smb2_is_status_io_timeout, }; struct smb_version_operations smb21_operations = { @@ -4909,6 +4987,7 @@ .make_node = smb2_make_node, .fiemap = smb3_fiemap, .llseek = smb3_llseek, + .is_status_io_timeout = smb2_is_status_io_timeout, }; struct smb_version_operations smb30_operations = { @@ -5019,6 +5098,7 @@ .make_node = smb2_make_node, .fiemap = smb3_fiemap, .llseek = smb3_llseek, + .is_status_io_timeout = smb2_is_status_io_timeout, }; struct smb_version_operations smb311_operations = { @@ -5130,6 +5210,7 @@ .make_node = smb2_make_node, .fiemap = smb3_fiemap, .llseek = smb3_llseek, + .is_status_io_timeout = smb2_is_status_io_timeout, }; struct smb_version_values smb20_values = { --- linux-azure-5.8-5.8.0.orig/fs/cifs/smb2pdu.c +++ linux-azure-5.8-5.8.0/fs/cifs/smb2pdu.c @@ -538,8 +538,8 @@ pneg_ctxt->ContextType = SMB2_PREAUTH_INTEGRITY_CAPABILITIES; pneg_ctxt->DataLength = cpu_to_le16(38); pneg_ctxt->HashAlgorithmCount = cpu_to_le16(1); - pneg_ctxt->SaltLength = cpu_to_le16(SMB311_SALT_SIZE); - get_random_bytes(pneg_ctxt->Salt, SMB311_SALT_SIZE); + pneg_ctxt->SaltLength = cpu_to_le16(SMB311_LINUX_CLIENT_SALT_SIZE); + get_random_bytes(pneg_ctxt->Salt, SMB311_LINUX_CLIENT_SALT_SIZE); pneg_ctxt->HashAlgorithms = SMB2_PREAUTH_INTEGRITY_SHA512; } @@ -665,6 +665,9 @@ if (len < MIN_PREAUTH_CTXT_DATA_LEN) { pr_warn_once("server sent bad preauth context\n"); return; + } else if (len < MIN_PREAUTH_CTXT_DATA_LEN + le16_to_cpu(ctxt->SaltLength)) { + pr_warn_once("server sent invalid SaltLength\n"); + return; } if (le16_to_cpu(ctxt->HashAlgorithmCount) != 1) pr_warn_once("Invalid SMB3 hash algorithm count\n"); @@ -1387,6 +1390,8 @@ spnego_key = cifs_get_spnego_key(ses); if (IS_ERR(spnego_key)) { rc = PTR_ERR(spnego_key); + if (rc == -ENOKEY) + cifs_dbg(VFS, "Verify user has a krb5 ticket and keyutils is installed\n"); spnego_key = NULL; goto out; } @@ -2346,17 +2351,15 @@ create_sd_buf(umode_t mode, bool set_owner, unsigned int *len) { struct crt_sd_ctxt *buf; - struct cifs_ace *pace; - unsigned int sdlen, acelen; + __u8 *ptr, *aclptr; + unsigned int acelen, acl_size, ace_count; unsigned int owner_offset = 0; unsigned int group_offset = 0; + struct smb3_acl acl; - *len = roundup(sizeof(struct crt_sd_ctxt) + (sizeof(struct cifs_ace) * 2), 8); + *len = roundup(sizeof(struct crt_sd_ctxt) + (sizeof(struct cifs_ace) * 4), 8); if (set_owner) { - /* offset fields are from beginning of security descriptor not of create context */ - owner_offset = sizeof(struct smb3_acl) + (sizeof(struct cifs_ace) * 2); - /* sizeof(struct owner_group_sids) is already multiple of 8 so no need to round */ *len += sizeof(struct owner_group_sids); } @@ -2365,26 +2368,22 @@ if (buf == NULL) return buf; + ptr = (__u8 *)&buf[1]; if (set_owner) { + /* offset fields are from beginning of security descriptor not of create context */ + owner_offset = ptr - (__u8 *)&buf->sd; buf->sd.OffsetOwner = cpu_to_le32(owner_offset); - group_offset = owner_offset + sizeof(struct owner_sid); + group_offset = owner_offset + offsetof(struct owner_group_sids, group); buf->sd.OffsetGroup = cpu_to_le32(group_offset); + + setup_owner_group_sids(ptr); + ptr += sizeof(struct owner_group_sids); } else { buf->sd.OffsetOwner = 0; buf->sd.OffsetGroup = 0; } - sdlen = sizeof(struct smb3_sd) + sizeof(struct smb3_acl) + - 2 * sizeof(struct cifs_ace); - if (set_owner) { - sdlen += sizeof(struct owner_group_sids); - setup_owner_group_sids(owner_offset + sizeof(struct create_context) + 8 /* name */ - + (char *)buf); - } - - buf->ccontext.DataOffset = cpu_to_le16(offsetof - (struct crt_sd_ctxt, sd)); - buf->ccontext.DataLength = cpu_to_le32(sdlen); + buf->ccontext.DataOffset = cpu_to_le16(offsetof(struct crt_sd_ctxt, sd)); buf->ccontext.NameOffset = cpu_to_le16(offsetof(struct crt_sd_ctxt, Name)); buf->ccontext.NameLength = cpu_to_le16(4); /* SMB2_CREATE_SD_BUFFER_TOKEN is "SecD" */ @@ -2393,6 +2392,7 @@ buf->Name[2] = 'c'; buf->Name[3] = 'D'; buf->sd.Revision = 1; /* Must be one see MS-DTYP 2.4.6 */ + /* * ACL is "self relative" ie ACL is stored in contiguous block of memory * and "DP" ie the DACL is present @@ -2400,28 +2400,38 @@ buf->sd.Control = cpu_to_le16(ACL_CONTROL_SR | ACL_CONTROL_DP); /* offset owner, group and Sbz1 and SACL are all zero */ - buf->sd.OffsetDacl = cpu_to_le32(sizeof(struct smb3_sd)); - buf->acl.AclRevision = ACL_REVISION; /* See 2.4.4.1 of MS-DTYP */ + buf->sd.OffsetDacl = cpu_to_le32(ptr - (__u8 *)&buf->sd); + /* Ship the ACL for now. we will copy it into buf later. */ + aclptr = ptr; + ptr += sizeof(struct cifs_acl); /* create one ACE to hold the mode embedded in reserved special SID */ - pace = (struct cifs_ace *)(sizeof(struct crt_sd_ctxt) + (char *)buf); - acelen = setup_special_mode_ACE(pace, (__u64)mode); + acelen = setup_special_mode_ACE((struct cifs_ace *)ptr, (__u64)mode); + ptr += acelen; + acl_size = acelen + sizeof(struct smb3_acl); + ace_count = 1; if (set_owner) { /* we do not need to reallocate buffer to add the two more ACEs. plenty of space */ - pace = (struct cifs_ace *)(acelen + (sizeof(struct crt_sd_ctxt) + (char *)buf)); - acelen += setup_special_user_owner_ACE(pace); - /* it does not appear necessary to add an ACE for the NFS group SID */ - buf->acl.AceCount = cpu_to_le16(3); - } else - buf->acl.AceCount = cpu_to_le16(2); + acelen = setup_special_user_owner_ACE((struct cifs_ace *)ptr); + ptr += acelen; + acl_size += acelen; + ace_count += 1; + } /* and one more ACE to allow access for authenticated users */ - pace = (struct cifs_ace *)(acelen + (sizeof(struct crt_sd_ctxt) + - (char *)buf)); - acelen += setup_authusers_ACE(pace); + acelen = setup_authusers_ACE((struct cifs_ace *)ptr); + ptr += acelen; + acl_size += acelen; + ace_count += 1; + + acl.AclRevision = ACL_REVISION; /* See 2.4.4.1 of MS-DTYP */ + acl.AclSize = cpu_to_le16(acl_size); + acl.AceCount = cpu_to_le16(ace_count); + memcpy(aclptr, &acl, sizeof(struct cifs_acl)); - buf->acl.AclSize = cpu_to_le16(sizeof(struct cifs_acl) + acelen); + buf->ccontext.DataLength = cpu_to_le32(ptr - (__u8 *)&buf->sd); + *len = ptr - (__u8 *)buf; return buf; } @@ -3314,7 +3324,7 @@ free_rsp_buf(resp_buftype, rsp); /* retry close in a worker thread if this one is interrupted */ - if (rc == -EINTR) { + if (is_interrupt_error(rc)) { int tmp_rc; tmp_rc = smb2_handle_cancelled_close(tcon, persistent_fid, --- linux-azure-5.8-5.8.0.orig/fs/cifs/smb2pdu.h +++ linux-azure-5.8-5.8.0/fs/cifs/smb2pdu.h @@ -262,7 +262,7 @@ __le32 NegotiateContextOffset; /* SMB3.1.1 only. MBZ earlier */ __le16 NegotiateContextCount; /* SMB3.1.1 only. MBZ earlier */ __le16 Reserved2; - __le16 Dialects[1]; /* One dialect (vers=) at a time for now */ + __le16 Dialects[4]; /* BB expand this if autonegotiate > 4 dialects */ } __packed; /* Dialects */ @@ -306,12 +306,20 @@ /* Followed by array of data */ } __packed; -#define SMB311_SALT_SIZE 32 +#define SMB311_LINUX_CLIENT_SALT_SIZE 32 /* Hash Algorithm Types */ #define SMB2_PREAUTH_INTEGRITY_SHA512 cpu_to_le16(0x0001) #define SMB2_PREAUTH_HASH_SIZE 64 -#define MIN_PREAUTH_CTXT_DATA_LEN (SMB311_SALT_SIZE + 6) +/* + * SaltLength that the server send can be zero, so the only three required + * fields (all __le16) end up six bytes total, so the minimum context data len + * in the response is six bytes which accounts for + * + * HashAlgorithmCount, SaltLength, and 1 HashAlgorithm. + */ +#define MIN_PREAUTH_CTXT_DATA_LEN 6 + struct smb2_preauth_neg_context { __le16 ContextType; /* 1 */ __le16 DataLength; @@ -319,7 +327,7 @@ __le16 HashAlgorithmCount; /* 1 */ __le16 SaltLength; __le16 HashAlgorithms; /* HashAlgorithms[0] since only one defined */ - __u8 Salt[SMB311_SALT_SIZE]; + __u8 Salt[SMB311_LINUX_CLIENT_SALT_SIZE]; } __packed; /* Encryption Algorithms Ciphers */ @@ -900,8 +908,6 @@ struct create_context ccontext; __u8 Name[8]; struct smb3_sd sd; - struct smb3_acl acl; - /* Followed by at least 4 ACEs */ } __packed; --- linux-azure-5.8-5.8.0.orig/fs/cifs/transport.c +++ linux-azure-5.8-5.8.0/fs/cifs/transport.c @@ -338,9 +338,9 @@ if (ssocket == NULL) return -EAGAIN; - if (signal_pending(current)) { - cifs_dbg(FYI, "signal is pending before sending any data\n"); - return -EINTR; + if (fatal_signal_pending(current)) { + cifs_dbg(FYI, "signal pending before send request\n"); + return -ERESTARTSYS; } /* cork the socket */ @@ -429,7 +429,7 @@ if (signal_pending(current) && (total_len != send_length)) { cifs_dbg(FYI, "signal is pending after attempt to send\n"); - rc = -EINTR; + rc = -ERESTARTSYS; } /* uncork it */ @@ -654,10 +654,22 @@ spin_lock(&server->req_lock); if (*credits < num) { /* - * Return immediately if not too many requests in flight since - * we will likely be stuck on waiting for credits. + * If the server is tight on resources or just gives us less + * credits for other reasons (e.g. requests are coming out of + * order and the server delays granting more credits until it + * processes a missing mid) and we exhausted most available + * credits there may be situations when we try to send + * a compound request but we don't have enough credits. At this + * point the client needs to decide if it should wait for + * additional credits or fail the request. If at least one + * request is in flight there is a high probability that the + * server will return enough credits to satisfy this compound + * request. + * + * Return immediately if no requests in flight since we will be + * stuck on waiting for credits. */ - if (server->in_flight < num - *credits) { + if (server->in_flight == 0) { spin_unlock(&server->req_lock); return -ENOTSUPP; } --- linux-azure-5.8-5.8.0.orig/fs/coredump.c +++ linux-azure-5.8-5.8.0/fs/coredump.c @@ -224,7 +224,8 @@ */ if (ispipe) { if (isspace(*pat_ptr)) { - was_space = true; + if (cn->used != 0) + was_space = true; pat_ptr++; continue; } else if (was_space) { --- linux-azure-5.8-5.8.0.orig/fs/crypto/fname.c +++ linux-azure-5.8-5.8.0/fs/crypto/fname.c @@ -573,7 +573,7 @@ * reverting to ciphertext names without evicting the directory's inode * -- which implies eviction of the dentries in the directory. */ - if (!(dentry->d_flags & DCACHE_ENCRYPTED_NAME)) + if (!(dentry->d_flags & DCACHE_NOKEY_NAME)) return 1; /* --- linux-azure-5.8-5.8.0.orig/fs/crypto/fscrypt_private.h +++ linux-azure-5.8-5.8.0/fs/crypto/fscrypt_private.h @@ -24,6 +24,9 @@ #define FSCRYPT_CONTEXT_V1 1 #define FSCRYPT_CONTEXT_V2 2 +/* Keep this in sync with include/uapi/linux/fscrypt.h */ +#define FSCRYPT_MODE_MAX FSCRYPT_MODE_ADIANTUM + struct fscrypt_context_v1 { u8 version; /* FSCRYPT_CONTEXT_V1 */ u8 contents_encryption_mode; @@ -395,9 +398,9 @@ * Per-mode encryption keys for the various types of encryption policies * that use them. Allocated and derived on-demand. */ - struct crypto_skcipher *mk_direct_keys[__FSCRYPT_MODE_MAX + 1]; - struct crypto_skcipher *mk_iv_ino_lblk_64_keys[__FSCRYPT_MODE_MAX + 1]; - struct crypto_skcipher *mk_iv_ino_lblk_32_keys[__FSCRYPT_MODE_MAX + 1]; + struct crypto_skcipher *mk_direct_keys[FSCRYPT_MODE_MAX + 1]; + struct crypto_skcipher *mk_iv_ino_lblk_64_keys[FSCRYPT_MODE_MAX + 1]; + struct crypto_skcipher *mk_iv_ino_lblk_32_keys[FSCRYPT_MODE_MAX + 1]; /* Hash key for inode numbers. Initialized only when needed. */ siphash_key_t mk_ino_hash_key; --- linux-azure-5.8-5.8.0.orig/fs/crypto/hooks.c +++ linux-azure-5.8-5.8.0/fs/crypto/hooks.c @@ -60,8 +60,8 @@ if (err) return err; - /* ... in case we looked up ciphertext name before key was added */ - if (dentry->d_flags & DCACHE_ENCRYPTED_NAME) + /* ... in case we looked up no-key name before key was added */ + if (fscrypt_is_nokey_name(dentry)) return -ENOKEY; if (!fscrypt_has_permitted_context(dir, inode)) @@ -85,9 +85,9 @@ if (err) return err; - /* ... in case we looked up ciphertext name(s) before key was added */ - if ((old_dentry->d_flags | new_dentry->d_flags) & - DCACHE_ENCRYPTED_NAME) + /* ... in case we looked up no-key name(s) before key was added */ + if (fscrypt_is_nokey_name(old_dentry) || + fscrypt_is_nokey_name(new_dentry)) return -ENOKEY; if (old_dir != new_dir) { @@ -116,7 +116,7 @@ if (fname->is_ciphertext_name) { spin_lock(&dentry->d_lock); - dentry->d_flags |= DCACHE_ENCRYPTED_NAME; + dentry->d_flags |= DCACHE_NOKEY_NAME; spin_unlock(&dentry->d_lock); d_set_d_op(dentry, &fscrypt_d_ops); } --- linux-azure-5.8-5.8.0.orig/fs/crypto/keyring.c +++ linux-azure-5.8-5.8.0/fs/crypto/keyring.c @@ -44,7 +44,7 @@ wipe_master_key_secret(&mk->mk_secret); - for (i = 0; i <= __FSCRYPT_MODE_MAX; i++) { + for (i = 0; i <= FSCRYPT_MODE_MAX; i++) { crypto_free_skcipher(mk->mk_direct_keys[i]); crypto_free_skcipher(mk->mk_iv_ino_lblk_64_keys[i]); crypto_free_skcipher(mk->mk_iv_ino_lblk_32_keys[i]); --- linux-azure-5.8-5.8.0.orig/fs/crypto/keysetup.c +++ linux-azure-5.8-5.8.0/fs/crypto/keysetup.c @@ -52,6 +52,8 @@ select_encryption_mode(const union fscrypt_policy *policy, const struct inode *inode) { + BUILD_BUG_ON(ARRAY_SIZE(fscrypt_modes) != FSCRYPT_MODE_MAX + 1); + if (S_ISREG(inode->i_mode)) return &fscrypt_modes[fscrypt_policy_contents_mode(policy)]; @@ -138,7 +140,7 @@ unsigned int hkdf_infolen = 0; int err; - if (WARN_ON(mode_num > __FSCRYPT_MODE_MAX)) + if (WARN_ON(mode_num > FSCRYPT_MODE_MAX)) return -EINVAL; /* pairs with smp_store_release() below */ --- linux-azure-5.8-5.8.0.orig/fs/crypto/policy.c +++ linux-azure-5.8-5.8.0/fs/crypto/policy.c @@ -153,7 +153,10 @@ return false; } - if (policy->flags & ~FSCRYPT_POLICY_FLAGS_VALID) { + if (policy->flags & ~(FSCRYPT_POLICY_FLAGS_PAD_MASK | + FSCRYPT_POLICY_FLAG_DIRECT_KEY | + FSCRYPT_POLICY_FLAG_IV_INO_LBLK_64 | + FSCRYPT_POLICY_FLAG_IV_INO_LBLK_32)) { fscrypt_warn(inode, "Unsupported encryption flags (0x%02x)", policy->flags); return false; @@ -178,10 +181,15 @@ 32, 32)) return false; + /* + * IV_INO_LBLK_32 hashes the inode number, so in principle it can + * support any ino_bits. However, currently the inode number is gotten + * from inode::i_ino which is 'unsigned long'. So for now the + * implementation limit is 32 bits. + */ if ((policy->flags & FSCRYPT_POLICY_FLAG_IV_INO_LBLK_32) && - /* This uses hashed inode numbers, so ino_bits doesn't matter. */ !supported_iv_ino_lblk_policy(policy, inode, "IV_INO_LBLK_32", - INT_MAX, 32)) + 32, 32)) return false; if (memchr_inv(policy->__reserved, 0, sizeof(policy->__reserved))) { --- linux-azure-5.8-5.8.0.orig/fs/d_path.c +++ linux-azure-5.8-5.8.0/fs/d_path.c @@ -102,6 +102,8 @@ if (dentry == vfsmnt->mnt_root || IS_ROOT(dentry)) { struct mount *parent = READ_ONCE(mnt->mnt_parent); + struct mnt_namespace *mnt_ns; + /* Escaped? */ if (dentry != vfsmnt->mnt_root) { bptr = *buffer; @@ -116,7 +118,9 @@ vfsmnt = &mnt->mnt; continue; } - if (is_mounted(vfsmnt) && !is_anon_ns(mnt->mnt_ns)) + mnt_ns = READ_ONCE(mnt->mnt_ns); + /* open-coded is_mounted() to use local mnt_ns */ + if (!IS_ERR_OR_NULL(mnt_ns) && !is_anon_ns(mnt_ns)) error = 1; // absolute root else error = 2; // detached or not attached yet --- linux-azure-5.8-5.8.0.orig/fs/dax.c +++ linux-azure-5.8-5.8.0/fs/dax.c @@ -794,12 +794,12 @@ address = pgoff_address(index, vma); /* - * Note because we provide range to follow_pte_pmd it will - * call mmu_notifier_invalidate_range_start() on our behalf - * before taking any lock. + * follow_invalidate_pte() will use the range to call + * mmu_notifier_invalidate_range_start() on our behalf before + * taking any lock. */ - if (follow_pte_pmd(vma->vm_mm, address, &range, - &ptep, &pmdp, &ptl)) + if (follow_invalidate_pte(vma->vm_mm, address, &range, &ptep, + &pmdp, &ptl)) continue; /* --- linux-azure-5.8-5.8.0.orig/fs/dcache.c +++ linux-azure-5.8-5.8.0/fs/dcache.c @@ -1285,7 +1285,7 @@ * * The @enter() callbacks are called with d_lock held. */ -static void d_walk(struct dentry *parent, void *data, +void d_walk(struct dentry *parent, void *data, enum d_walk_ret (*enter)(void *, struct dentry *)) { struct dentry *this_parent; @@ -1390,6 +1390,7 @@ seq = 1; goto again; } +EXPORT_SYMBOL_GPL(d_walk); struct check_mount { struct vfsmount *mnt; @@ -2935,6 +2936,7 @@ write_sequnlock(&rename_lock); } +EXPORT_SYMBOL_GPL(d_exchange); /** * d_ancestor - search for an ancestor --- linux-azure-5.8-5.8.0.orig/fs/debugfs/file.c +++ linux-azure-5.8-5.8.0/fs/debugfs/file.c @@ -177,7 +177,7 @@ goto out; if (!fops_get(real_fops)) { -#ifdef MODULE +#ifdef CONFIG_MODULES if (real_fops->owner && real_fops->owner->state == MODULE_STATE_GOING) goto out; @@ -312,7 +312,7 @@ goto out; if (!fops_get(real_fops)) { -#ifdef MODULE +#ifdef CONFIG_MODULES if (real_fops->owner && real_fops->owner->state == MODULE_STATE_GOING) goto out; --- linux-azure-5.8-5.8.0.orig/fs/debugfs/inode.c +++ linux-azure-5.8-5.8.0/fs/debugfs/inode.c @@ -293,7 +293,7 @@ { struct dentry *dentry; - if (IS_ERR(parent)) + if (!debugfs_initialized() || IS_ERR_OR_NULL(name) || IS_ERR(parent)) return NULL; if (!parent) @@ -311,6 +311,9 @@ struct dentry *dentry; int error; + if (!debugfs_initialized()) + return ERR_PTR(-ENOENT); + pr_debug("creating file '%s'\n", name); if (IS_ERR(parent)) --- linux-azure-5.8-5.8.0.orig/fs/dlm/config.c +++ linux-azure-5.8-5.8.0/fs/dlm/config.c @@ -216,6 +216,7 @@ struct list_head members; struct mutex members_lock; int members_count; + struct dlm_nodes *nds; }; struct dlm_comms { @@ -424,6 +425,7 @@ INIT_LIST_HEAD(&sp->members); mutex_init(&sp->members_lock); sp->members_count = 0; + sp->nds = nds; return &sp->group; fail: @@ -445,6 +447,7 @@ static void release_space(struct config_item *i) { struct dlm_space *sp = config_item_to_space(i); + kfree(sp->nds); kfree(sp); } --- linux-azure-5.8-5.8.0.orig/fs/dlm/lockspace.c +++ linux-azure-5.8-5.8.0/fs/dlm/lockspace.c @@ -622,6 +622,9 @@ wait_event(ls->ls_recover_lock_wait, test_bit(LSFL_RECOVER_LOCK, &ls->ls_flags)); + /* let kobject handle freeing of ls if there's an error */ + do_unreg = 1; + ls->ls_kobj.kset = dlm_kset; error = kobject_init_and_add(&ls->ls_kobj, &dlm_ktype, NULL, "%s", ls->ls_name); @@ -629,9 +632,6 @@ goto out_recoverd; kobject_uevent(&ls->ls_kobj, KOBJ_ADD); - /* let kobject handle freeing of ls if there's an error */ - do_unreg = 1; - /* This uevent triggers dlm_controld in userspace to add us to the group of nodes that are members of this lockspace (managed by the cluster infrastructure.) Once it's done that, it tells us who the --- linux-azure-5.8-5.8.0.orig/fs/efivarfs/inode.c +++ linux-azure-5.8-5.8.0/fs/efivarfs/inode.c @@ -7,6 +7,7 @@ #include #include #include +#include #include #include @@ -103,6 +104,7 @@ var->var.VariableName[i] = '\0'; inode->i_private = var; + kmemleak_ignore(var); err = efivar_entry_add(var, &efivarfs_list); if (err) --- linux-azure-5.8-5.8.0.orig/fs/efivarfs/super.c +++ linux-azure-5.8-5.8.0/fs/efivarfs/super.c @@ -141,6 +141,9 @@ name[len + EFI_VARIABLE_GUID_LEN+1] = '\0'; + /* replace invalid slashes like kobject_set_name_vargs does for /sys/firmware/efi/vars. */ + strreplace(name, '/', '!'); + inode = efivarfs_get_inode(sb, d_inode(root), S_IFREG | 0644, 0, is_removable); if (!inode) --- linux-azure-5.8-5.8.0.orig/fs/erofs/data.c +++ linux-azure-5.8-5.8.0/fs/erofs/data.c @@ -312,27 +312,12 @@ submit_bio(bio); } -static int erofs_get_block(struct inode *inode, sector_t iblock, - struct buffer_head *bh, int create) -{ - struct erofs_map_blocks map = { - .m_la = iblock << 9, - }; - int err; - - err = erofs_map_blocks(inode, &map, EROFS_GET_BLOCKS_RAW); - if (err) - return err; - - if (map.m_flags & EROFS_MAP_MAPPED) - bh->b_blocknr = erofs_blknr(map.m_pa); - - return err; -} - static sector_t erofs_bmap(struct address_space *mapping, sector_t block) { struct inode *inode = mapping->host; + struct erofs_map_blocks map = { + .m_la = blknr_to_addr(block), + }; if (EROFS_I(inode)->datalayout == EROFS_INODE_FLAT_INLINE) { erofs_blk_t blks = i_size_read(inode) >> LOG_BLOCK_SIZE; @@ -341,7 +326,10 @@ return 0; } - return generic_block_bmap(mapping, block, erofs_get_block); + if (!erofs_map_blocks(inode, &map, EROFS_GET_BLOCKS_RAW)) + return erofs_blknr(map.m_pa); + + return 0; } /* for uncompressed (aligned) files and raw access for other files */ --- linux-azure-5.8-5.8.0.orig/fs/erofs/inode.c +++ linux-azure-5.8-5.8.0/fs/erofs/inode.c @@ -8,31 +8,80 @@ #include -/* no locking */ -static int erofs_read_inode(struct inode *inode, void *data) +/* + * if inode is successfully read, return its inode page (or sometimes + * the inode payload page if it's an extended inode) in order to fill + * inline data if possible. + */ +static struct page *erofs_read_inode(struct inode *inode, + unsigned int *ofs) { + struct super_block *sb = inode->i_sb; + struct erofs_sb_info *sbi = EROFS_SB(sb); struct erofs_inode *vi = EROFS_I(inode); - struct erofs_inode_compact *dic = data; - struct erofs_inode_extended *die; + const erofs_off_t inode_loc = iloc(sbi, vi->nid); - const unsigned int ifmt = le16_to_cpu(dic->i_format); - struct erofs_sb_info *sbi = EROFS_SB(inode->i_sb); - erofs_blk_t nblks = 0; + erofs_blk_t blkaddr, nblks = 0; + struct page *page; + struct erofs_inode_compact *dic; + struct erofs_inode_extended *die, *copied = NULL; + unsigned int ifmt; + int err; - vi->datalayout = erofs_inode_datalayout(ifmt); + blkaddr = erofs_blknr(inode_loc); + *ofs = erofs_blkoff(inode_loc); + + erofs_dbg("%s, reading inode nid %llu at %u of blkaddr %u", + __func__, vi->nid, *ofs, blkaddr); + + page = erofs_get_meta_page(sb, blkaddr); + if (IS_ERR(page)) { + erofs_err(sb, "failed to get inode (nid: %llu) page, err %ld", + vi->nid, PTR_ERR(page)); + return page; + } + + dic = page_address(page) + *ofs; + ifmt = le16_to_cpu(dic->i_format); + vi->datalayout = erofs_inode_datalayout(ifmt); if (vi->datalayout >= EROFS_INODE_DATALAYOUT_MAX) { erofs_err(inode->i_sb, "unsupported datalayout %u of nid %llu", vi->datalayout, vi->nid); - DBG_BUGON(1); - return -EOPNOTSUPP; + err = -EOPNOTSUPP; + goto err_out; } switch (erofs_inode_version(ifmt)) { case EROFS_INODE_LAYOUT_EXTENDED: - die = data; - vi->inode_isize = sizeof(struct erofs_inode_extended); + /* check if the inode acrosses page boundary */ + if (*ofs + vi->inode_isize <= PAGE_SIZE) { + *ofs += vi->inode_isize; + die = (struct erofs_inode_extended *)dic; + } else { + const unsigned int gotten = PAGE_SIZE - *ofs; + + copied = kmalloc(vi->inode_isize, GFP_NOFS); + if (!copied) { + err = -ENOMEM; + goto err_out; + } + memcpy(copied, dic, gotten); + unlock_page(page); + put_page(page); + + page = erofs_get_meta_page(sb, blkaddr + 1); + if (IS_ERR(page)) { + erofs_err(sb, "failed to get inode payload page (nid: %llu), err %ld", + vi->nid, PTR_ERR(page)); + kfree(copied); + return page; + } + *ofs = vi->inode_isize - gotten; + memcpy((u8 *)copied + gotten, page_address(page), *ofs); + die = copied; + } vi->xattr_isize = erofs_xattr_ibody_size(die->i_xattr_icount); inode->i_mode = le16_to_cpu(die->i_mode); @@ -58,20 +107,21 @@ i_gid_write(inode, le32_to_cpu(die->i_gid)); set_nlink(inode, le32_to_cpu(die->i_nlink)); - /* ns timestamp */ - inode->i_mtime.tv_sec = inode->i_ctime.tv_sec = - le64_to_cpu(die->i_ctime); - inode->i_mtime.tv_nsec = inode->i_ctime.tv_nsec = - le32_to_cpu(die->i_ctime_nsec); + /* extended inode has its own timestamp */ + inode->i_ctime.tv_sec = le64_to_cpu(die->i_ctime); + inode->i_ctime.tv_nsec = le32_to_cpu(die->i_ctime_nsec); inode->i_size = le64_to_cpu(die->i_size); /* total blocks for compressed files */ if (erofs_inode_is_data_compressed(vi->datalayout)) nblks = le32_to_cpu(die->i_u.compressed_blocks); + + kfree(copied); break; case EROFS_INODE_LAYOUT_COMPACT: vi->inode_isize = sizeof(struct erofs_inode_compact); + *ofs += vi->inode_isize; vi->xattr_isize = erofs_xattr_ibody_size(dic->i_xattr_icount); inode->i_mode = le16_to_cpu(dic->i_mode); @@ -97,11 +147,9 @@ i_gid_write(inode, le16_to_cpu(dic->i_gid)); set_nlink(inode, le16_to_cpu(dic->i_nlink)); - /* use build time to derive all file time */ - inode->i_mtime.tv_sec = inode->i_ctime.tv_sec = - sbi->build_time; - inode->i_mtime.tv_nsec = inode->i_ctime.tv_nsec = - sbi->build_time_nsec; + /* use build time for compact inodes */ + inode->i_ctime.tv_sec = sbi->build_time; + inode->i_ctime.tv_nsec = sbi->build_time_nsec; inode->i_size = le32_to_cpu(dic->i_size); if (erofs_inode_is_data_compressed(vi->datalayout)) @@ -111,22 +159,32 @@ erofs_err(inode->i_sb, "unsupported on-disk inode version %u of nid %llu", erofs_inode_version(ifmt), vi->nid); - DBG_BUGON(1); - return -EOPNOTSUPP; + err = -EOPNOTSUPP; + goto err_out; } + inode->i_mtime.tv_sec = inode->i_ctime.tv_sec; + inode->i_atime.tv_sec = inode->i_ctime.tv_sec; + inode->i_mtime.tv_nsec = inode->i_ctime.tv_nsec; + inode->i_atime.tv_nsec = inode->i_ctime.tv_nsec; + if (!nblks) /* measure inode.i_blocks as generic filesystems */ inode->i_blocks = roundup(inode->i_size, EROFS_BLKSIZ) >> 9; else inode->i_blocks = nblks << LOG_SECTORS_PER_BLOCK; - return 0; + return page; bogusimode: erofs_err(inode->i_sb, "bogus i_mode (%o) @ nid %llu", inode->i_mode, vi->nid); + err = -EFSCORRUPTED; +err_out: DBG_BUGON(1); - return -EFSCORRUPTED; + kfree(copied); + unlock_page(page); + put_page(page); + return ERR_PTR(err); } static int erofs_fill_symlink(struct inode *inode, void *data, @@ -146,7 +204,7 @@ if (!lnk) return -ENOMEM; - m_pofs += vi->inode_isize + vi->xattr_isize; + m_pofs += vi->xattr_isize; /* inline symlink data shouldn't cross page boundary as well */ if (m_pofs + inode->i_size > PAGE_SIZE) { kfree(lnk); @@ -167,37 +225,17 @@ static int erofs_fill_inode(struct inode *inode, int isdir) { - struct super_block *sb = inode->i_sb; struct erofs_inode *vi = EROFS_I(inode); struct page *page; - void *data; - int err; - erofs_blk_t blkaddr; unsigned int ofs; - erofs_off_t inode_loc; + int err = 0; trace_erofs_fill_inode(inode, isdir); - inode_loc = iloc(EROFS_SB(sb), vi->nid); - blkaddr = erofs_blknr(inode_loc); - ofs = erofs_blkoff(inode_loc); - - erofs_dbg("%s, reading inode nid %llu at %u of blkaddr %u", - __func__, vi->nid, ofs, blkaddr); - page = erofs_get_meta_page(sb, blkaddr); - - if (IS_ERR(page)) { - erofs_err(sb, "failed to get inode (nid: %llu) page, err %ld", - vi->nid, PTR_ERR(page)); + /* read inode base data from disk */ + page = erofs_read_inode(inode, &ofs); + if (IS_ERR(page)) return PTR_ERR(page); - } - - DBG_BUGON(!PageUptodate(page)); - data = page_address(page); - - err = erofs_read_inode(inode, data + ofs); - if (err) - goto out_unlock; /* setup the new inode */ switch (inode->i_mode & S_IFMT) { @@ -210,7 +248,7 @@ inode->i_fop = &erofs_dir_fops; break; case S_IFLNK: - err = erofs_fill_symlink(inode, data, ofs); + err = erofs_fill_symlink(inode, page_address(page), ofs); if (err) goto out_unlock; inode_nohighmem(inode); --- linux-azure-5.8-5.8.0.orig/fs/erofs/xattr.c +++ linux-azure-5.8-5.8.0/fs/erofs/xattr.c @@ -48,8 +48,14 @@ int ret = 0; /* the most case is that xattrs of this inode are initialized. */ - if (test_bit(EROFS_I_EA_INITED_BIT, &vi->flags)) + if (test_bit(EROFS_I_EA_INITED_BIT, &vi->flags)) { + /* + * paired with smp_mb() at the end of the function to ensure + * fields will only be observed after the bit is set. + */ + smp_mb(); return 0; + } if (wait_on_bit_lock(&vi->flags, EROFS_I_BL_XATTR_BIT, TASK_KILLABLE)) return -ERESTARTSYS; @@ -137,6 +143,8 @@ } xattr_iter_end(&it, atomic_map); + /* paired with smp_mb() at the beginning of the function. */ + smp_mb(); set_bit(EROFS_I_EA_INITED_BIT, &vi->flags); out_unlock: @@ -473,8 +481,6 @@ return -EOPNOTSUPP; break; case EROFS_XATTR_INDEX_TRUSTED: - if (!capable(CAP_SYS_ADMIN)) - return -EPERM; break; case EROFS_XATTR_INDEX_SECURITY: break; --- linux-azure-5.8-5.8.0.orig/fs/erofs/zdata.c +++ linux-azure-5.8-5.8.0/fs/erofs/zdata.c @@ -1080,8 +1080,11 @@ cond_resched(); goto repeat; } - set_page_private(page, (unsigned long)pcl); - SetPagePrivate(page); + + if (tocache) { + set_page_private(page, (unsigned long)pcl); + SetPagePrivate(page); + } out: /* the only exit (for tracing and debugging) */ return page; } --- linux-azure-5.8-5.8.0.orig/fs/erofs/zmap.c +++ linux-azure-5.8-5.8.0/fs/erofs/zmap.c @@ -36,8 +36,14 @@ void *kaddr; struct z_erofs_map_header *h; - if (test_bit(EROFS_I_Z_INITED_BIT, &vi->flags)) + if (test_bit(EROFS_I_Z_INITED_BIT, &vi->flags)) { + /* + * paired with smp_mb() at the end of the function to ensure + * fields will only be observed after the bit is set. + */ + smp_mb(); return 0; + } if (wait_on_bit_lock(&vi->flags, EROFS_I_BL_Z_BIT, TASK_KILLABLE)) return -ERESTARTSYS; @@ -83,6 +89,8 @@ vi->z_physical_clusterbits[1] = vi->z_logical_clusterbits + ((h->h_clusterbits >> 5) & 7); + /* paired with smp_mb() at the beginning of the function */ + smp_mb(); set_bit(EROFS_I_Z_INITED_BIT, &vi->flags); unmap_done: kunmap_atomic(kaddr); --- linux-azure-5.8-5.8.0.orig/fs/eventpoll.c +++ linux-azure-5.8-5.8.0/fs/eventpoll.c @@ -218,8 +218,7 @@ struct file *file; /* used to optimize loop detection check */ - struct list_head visited_list_link; - int visited; + u64 gen; #ifdef CONFIG_NET_RX_BUSY_POLL /* used to track busy poll napi_id */ @@ -274,6 +273,8 @@ */ static DEFINE_MUTEX(epmutex); +static u64 loop_check_gen = 0; + /* Used to check for epoll file descriptor inclusion loops */ static struct nested_calls poll_loop_ncalls; @@ -283,9 +284,6 @@ /* Slab cache used to allocate "struct eppoll_entry" */ static struct kmem_cache *pwq_cache __read_mostly; -/* Visited nodes during ep_loop_check(), so we can unset them when we finish */ -static LIST_HEAD(visited_list); - /* * List of files with newly added links, where we may need to limit the number * of emanating paths. Protected by the epmutex. @@ -1064,7 +1062,7 @@ return epir; } -#ifdef CONFIG_CHECKPOINT_RESTORE +#ifdef CONFIG_KCMP static struct epitem *ep_find_tfd(struct eventpoll *ep, int tfd, unsigned long toff) { struct rb_node *rbp; @@ -1106,7 +1104,7 @@ return file_raw; } -#endif /* CONFIG_CHECKPOINT_RESTORE */ +#endif /* CONFIG_KCMP */ /** * Adds a new entry to the tail of the list in a lockless way, i.e. @@ -1450,7 +1448,7 @@ static int ep_create_wakeup_source(struct epitem *epi) { - const char *name; + struct name_snapshot n; struct wakeup_source *ws; if (!epi->ep->ws) { @@ -1459,8 +1457,9 @@ return -ENOMEM; } - name = epi->ffd.file->f_path.dentry->d_name.name; - ws = wakeup_source_register(NULL, name); + take_dentry_name_snapshot(&n, epi->ffd.file->f_path.dentry); + ws = wakeup_source_register(NULL, n.name.name); + release_dentry_name_snapshot(&n); if (!ws) return -ENOMEM; @@ -1522,6 +1521,22 @@ RCU_INIT_POINTER(epi->ws, NULL); } + /* Add the current item to the list of active epoll hook for this file */ + spin_lock(&tfile->f_lock); + list_add_tail_rcu(&epi->fllink, &tfile->f_ep_links); + spin_unlock(&tfile->f_lock); + + /* + * Add the current item to the RB tree. All RB tree operations are + * protected by "mtx", and ep_insert() is called with "mtx" held. + */ + ep_rbtree_insert(ep, epi); + + /* now check if we've created too many backpaths */ + error = -EINVAL; + if (full_check && reverse_path_check()) + goto error_remove_epi; + /* Initialize the poll table using the queue callback */ epq.epi = epi; init_poll_funcptr(&epq.pt, ep_ptable_queue_proc); @@ -1544,22 +1559,6 @@ if (epi->nwait < 0) goto error_unregister; - /* Add the current item to the list of active epoll hook for this file */ - spin_lock(&tfile->f_lock); - list_add_tail_rcu(&epi->fllink, &tfile->f_ep_links); - spin_unlock(&tfile->f_lock); - - /* - * Add the current item to the RB tree. All RB tree operations are - * protected by "mtx", and ep_insert() is called with "mtx" held. - */ - ep_rbtree_insert(ep, epi); - - /* now check if we've created too many backpaths */ - error = -EINVAL; - if (full_check && reverse_path_check()) - goto error_remove_epi; - /* We have to drop the new item inside our item list to keep track of it */ write_lock_irq(&ep->lock); @@ -1588,6 +1587,8 @@ return 0; +error_unregister: + ep_unregister_pollwait(ep, epi); error_remove_epi: spin_lock(&tfile->f_lock); list_del_rcu(&epi->fllink); @@ -1595,9 +1596,6 @@ rb_erase_cached(&epi->rbn, &ep->rbr); -error_unregister: - ep_unregister_pollwait(ep, epi); - /* * We need to do this because an event could have been arrived on some * allocated wait queue. Note that we don't care about the ep->ovflist @@ -1904,23 +1902,30 @@ } write_unlock_irq(&ep->lock); - if (eavail || res) - break; + if (!eavail && !res) + timed_out = !schedule_hrtimeout_range(to, slack, + HRTIMER_MODE_ABS); - if (!schedule_hrtimeout_range(to, slack, HRTIMER_MODE_ABS)) { - timed_out = 1; - break; - } - - /* We were woken up, thus go and try to harvest some events */ + /* + * We were woken up, thus go and try to harvest some events. + * If timed out and still on the wait queue, recheck eavail + * carefully under lock, below. + */ eavail = 1; - } while (0); __set_current_state(TASK_RUNNING); if (!list_empty_careful(&wait.entry)) { write_lock_irq(&ep->lock); + /* + * If the thread timed out and is not on the wait queue, it + * means that the thread was woken up after its timeout expired + * before it could reacquire the lock. Thus, when wait.entry is + * empty, it needs to harvest events. + */ + if (timed_out) + eavail = list_empty(&wait.entry); __remove_wait_queue(&ep->wq, &wait); write_unlock_irq(&ep->lock); } @@ -1972,13 +1977,12 @@ struct epitem *epi; mutex_lock_nested(&ep->mtx, call_nests + 1); - ep->visited = 1; - list_add(&ep->visited_list_link, &visited_list); + ep->gen = loop_check_gen; for (rbp = rb_first_cached(&ep->rbr); rbp; rbp = rb_next(rbp)) { epi = rb_entry(rbp, struct epitem, rbn); if (unlikely(is_file_epoll(epi->ffd.file))) { ep_tovisit = epi->ffd.file->private_data; - if (ep_tovisit->visited) + if (ep_tovisit->gen == loop_check_gen) continue; error = ep_call_nested(&poll_loop_ncalls, ep_loop_check_proc, epi->ffd.file, @@ -1994,9 +1998,11 @@ * not already there, and calling reverse_path_check() * during ep_insert(). */ - if (list_empty(&epi->ffd.file->f_tfile_llink)) - list_add(&epi->ffd.file->f_tfile_llink, - &tfile_check_list); + if (list_empty(&epi->ffd.file->f_tfile_llink)) { + if (get_file_rcu(epi->ffd.file)) + list_add(&epi->ffd.file->f_tfile_llink, + &tfile_check_list); + } } } mutex_unlock(&ep->mtx); @@ -2017,18 +2023,8 @@ */ static int ep_loop_check(struct eventpoll *ep, struct file *file) { - int ret; - struct eventpoll *ep_cur, *ep_next; - - ret = ep_call_nested(&poll_loop_ncalls, + return ep_call_nested(&poll_loop_ncalls, ep_loop_check_proc, file, ep, current); - /* clear visited list */ - list_for_each_entry_safe(ep_cur, ep_next, &visited_list, - visited_list_link) { - ep_cur->visited = 0; - list_del(&ep_cur->visited_list_link); - } - return ret; } static void clear_tfile_check_list(void) @@ -2040,6 +2036,7 @@ file = list_first_entry(&tfile_check_list, struct file, f_tfile_llink); list_del_init(&file->f_tfile_llink); + fput(file); } INIT_LIST_HEAD(&tfile_check_list); } @@ -2192,33 +2189,32 @@ goto error_tgt_fput; if (op == EPOLL_CTL_ADD) { if (!list_empty(&f.file->f_ep_links) || + ep->gen == loop_check_gen || is_file_epoll(tf.file)) { mutex_unlock(&ep->mtx); error = epoll_mutex_lock(&epmutex, 0, nonblock); if (error) goto error_tgt_fput; + loop_check_gen++; full_check = 1; if (is_file_epoll(tf.file)) { error = -ELOOP; - if (ep_loop_check(ep, tf.file) != 0) { - clear_tfile_check_list(); + if (ep_loop_check(ep, tf.file) != 0) goto error_tgt_fput; - } - } else + } else { + get_file(tf.file); list_add(&tf.file->f_tfile_llink, &tfile_check_list); + } error = epoll_mutex_lock(&ep->mtx, 0, nonblock); - if (error) { -out_del: - list_del(&tf.file->f_tfile_llink); + if (error) goto error_tgt_fput; - } if (is_file_epoll(tf.file)) { tep = tf.file->private_data; error = epoll_mutex_lock(&tep->mtx, 1, nonblock); if (error) { mutex_unlock(&ep->mtx); - goto out_del; + goto error_tgt_fput; } } } @@ -2239,8 +2235,6 @@ error = ep_insert(ep, epds, tf.file, fd, full_check); } else error = -EEXIST; - if (full_check) - clear_tfile_check_list(); break; case EPOLL_CTL_DEL: if (epi) @@ -2263,8 +2257,11 @@ mutex_unlock(&ep->mtx); error_tgt_fput: - if (full_check) + if (full_check) { + clear_tfile_check_list(); + loop_check_gen++; mutex_unlock(&epmutex); + } fdput(tf); error_fput: --- linux-azure-5.8-5.8.0.orig/fs/exec.c +++ linux-azure-5.8-5.8.0/fs/exec.c @@ -62,6 +62,7 @@ #include #include #include +#include #include #include @@ -111,6 +112,14 @@ return (path->mnt->mnt_flags & MNT_NOEXEC) || (path->mnt->mnt_sb->s_iflags & SB_I_NOEXEC); } +EXPORT_SYMBOL_GPL(path_noexec); + +bool path_nosuid(const struct path *path) +{ + return !mnt_may_suid(path->mnt) || + (path->mnt->mnt_sb->s_iflags & SB_I_NOSUID); +} +EXPORT_SYMBOL(path_nosuid); #ifdef CONFIG_USELIB /* @@ -927,6 +936,7 @@ { loff_t i_size, pos; ssize_t bytes = 0; + void *allocated = NULL; int ret; if (!S_ISREG(file_inode(file)->i_mode) || max_size < 0) @@ -950,8 +960,8 @@ goto out; } - if (id != READING_FIRMWARE_PREALLOC_BUFFER) - *buf = vmalloc(i_size); + if (!*buf) + *buf = allocated = vmalloc(i_size); if (!*buf) { ret = -ENOMEM; goto out; @@ -980,7 +990,7 @@ out_free: if (ret < 0) { - if (id != READING_FIRMWARE_PREALLOC_BUFFER) { + if (allocated) { vfree(*buf); *buf = NULL; } @@ -1067,8 +1077,8 @@ /* * Maps the mm_struct mm into the current task struct. - * On success, this function returns with the mutex - * exec_update_mutex locked. + * On success, this function returns with exec_update_lock + * held for writing. */ static int exec_mmap(struct mm_struct *mm) { @@ -1083,7 +1093,7 @@ if (old_mm) sync_mm_rss(old_mm); - ret = mutex_lock_killable(&tsk->signal->exec_update_mutex); + ret = down_write_killable(&tsk->signal->exec_update_lock); if (ret) return ret; @@ -1097,17 +1107,30 @@ mmap_read_lock(old_mm); if (unlikely(old_mm->core_state)) { mmap_read_unlock(old_mm); - mutex_unlock(&tsk->signal->exec_update_mutex); + up_write(&tsk->signal->exec_update_lock); return -EINTR; } } task_lock(tsk); - active_mm = tsk->active_mm; membarrier_exec_mmap(mm); - tsk->mm = mm; + + local_irq_disable(); + active_mm = tsk->active_mm; tsk->active_mm = mm; + tsk->mm = mm; + /* + * This prevents preemption while active_mm is being loaded and + * it and mm are being updated, which could cause problems for + * lazy tlb mm refcounting when these are updated by context + * switches. Not all architectures can handle irqs off over + * activate_mm yet. + */ + if (!IS_ENABLED(CONFIG_ARCH_WANT_IRQS_OFF_ACTIVATE_MM)) + local_irq_enable(); activate_mm(active_mm, mm); + if (IS_ENABLED(CONFIG_ARCH_WANT_IRQS_OFF_ACTIVATE_MM)) + local_irq_enable(); tsk->mm->vmacache_seqnum = 0; vmacache_flush(tsk); task_unlock(tsk); @@ -1466,7 +1489,7 @@ return 0; out_unlock: - mutex_unlock(&me->signal->exec_update_mutex); + up_write(&me->signal->exec_update_lock); out: return retval; } @@ -1507,7 +1530,7 @@ * some architectures like powerpc */ me->mm->task_size = TASK_SIZE; - mutex_unlock(&me->signal->exec_update_mutex); + up_write(&me->signal->exec_update_lock); mutex_unlock(&me->signal->cred_guard_mutex); } EXPORT_SYMBOL(setup_new_exec); @@ -1617,7 +1640,7 @@ kuid_t uid; kgid_t gid; - if (!mnt_may_suid(file->f_path.mnt)) + if (path_nosuid(&file->f_path)) return; if (task_no_new_privs(current)) @@ -1847,6 +1870,11 @@ * further execve() calls fail. */ current->flags &= ~PF_NPROC_EXCEEDED; + /* + * Cancel any io_uring activity across execve + */ + io_uring_task_cancel(); + retval = unshare_files(&displaced); if (retval) goto out_ret; --- linux-azure-5.8-5.8.0.orig/fs/exfat/cache.c +++ linux-azure-5.8-5.8.0/fs/exfat/cache.c @@ -17,7 +17,6 @@ #include "exfat_raw.h" #include "exfat_fs.h" -#define EXFAT_CACHE_VALID 0 #define EXFAT_MAX_CACHE 16 struct exfat_cache { @@ -61,16 +60,6 @@ kmem_cache_destroy(exfat_cachep); } -void exfat_cache_init_inode(struct inode *inode) -{ - struct exfat_inode_info *ei = EXFAT_I(inode); - - spin_lock_init(&ei->cache_lru_lock); - ei->nr_caches = 0; - ei->cache_valid_id = EXFAT_CACHE_VALID + 1; - INIT_LIST_HEAD(&ei->cache_lru); -} - static inline struct exfat_cache *exfat_cache_alloc(void) { return kmem_cache_alloc(exfat_cachep, GFP_NOFS); --- linux-azure-5.8-5.8.0.orig/fs/exfat/exfat_fs.h +++ linux-azure-5.8-5.8.0/fs/exfat/exfat_fs.h @@ -250,6 +250,8 @@ struct rcu_head rcu; }; +#define EXFAT_CACHE_VALID 0 + /* * EXFAT file system inode in-memory data */ @@ -429,7 +431,6 @@ /* cache.c */ int exfat_cache_init(void); void exfat_cache_shutdown(void); -void exfat_cache_init_inode(struct inode *inode); void exfat_cache_inval_inode(struct inode *inode); int exfat_get_cluster(struct inode *inode, unsigned int cluster, unsigned int *fclus, unsigned int *dclus, --- linux-azure-5.8-5.8.0.orig/fs/exfat/exfat_raw.h +++ linux-azure-5.8-5.8.0/fs/exfat/exfat_raw.h @@ -78,6 +78,10 @@ #define EXFAT_FILE_NAME_LEN 15 +#define EXFAT_MIN_SECT_SIZE_BITS 9 +#define EXFAT_MAX_SECT_SIZE_BITS 12 +#define EXFAT_MAX_SECT_PER_CLUS_BITS(x) (25 - (x)->sect_size_bits) + /* EXFAT: Main and Backup Boot Sector (512 bytes) */ struct boot_sector { __u8 jmp_boot[BOOTSEC_JUMP_BOOT_LEN]; --- linux-azure-5.8-5.8.0.orig/fs/exfat/inode.c +++ linux-azure-5.8-5.8.0/fs/exfat/inode.c @@ -610,8 +610,6 @@ ei->i_crtime = info->crtime; inode->i_atime = info->atime; - exfat_cache_init_inode(inode); - return 0; } --- linux-azure-5.8-5.8.0.orig/fs/exfat/nls.c +++ linux-azure-5.8-5.8.0/fs/exfat/nls.c @@ -659,7 +659,7 @@ unsigned char skip = false; unsigned short *upcase_table; - upcase_table = kcalloc(UTBL_COUNT, sizeof(unsigned short), GFP_KERNEL); + upcase_table = kvcalloc(UTBL_COUNT, sizeof(unsigned short), GFP_KERNEL); if (!upcase_table) return -ENOMEM; @@ -715,7 +715,7 @@ unsigned short uni = 0, *upcase_table; unsigned int index = 0; - upcase_table = kcalloc(UTBL_COUNT, sizeof(unsigned short), GFP_KERNEL); + upcase_table = kvcalloc(UTBL_COUNT, sizeof(unsigned short), GFP_KERNEL); if (!upcase_table) return -ENOMEM; @@ -803,5 +803,5 @@ void exfat_free_upcase_table(struct exfat_sb_info *sbi) { - kfree(sbi->vol_utbl); + kvfree(sbi->vol_utbl); } --- linux-azure-5.8-5.8.0.orig/fs/exfat/super.c +++ linux-azure-5.8-5.8.0/fs/exfat/super.c @@ -361,7 +361,6 @@ inode->i_mtime = inode->i_atime = inode->i_ctime = ei->i_crtime = current_time(inode); exfat_truncate_atime(&inode->i_atime); - exfat_cache_init_inode(inode); return 0; } @@ -369,8 +368,7 @@ { struct exfat_sb_info *sbi = EXFAT_SB(sb); - if (!is_power_of_2(logical_sect) || - logical_sect < 512 || logical_sect > 4096) { + if (!is_power_of_2(logical_sect)) { exfat_err(sb, "bogus logical sector size %u", logical_sect); return -EIO; } @@ -439,6 +437,25 @@ return -EINVAL; } + /* + * sect_size_bits could be at least 9 and at most 12. + */ + if (p_boot->sect_size_bits < EXFAT_MIN_SECT_SIZE_BITS || + p_boot->sect_size_bits > EXFAT_MAX_SECT_SIZE_BITS) { + exfat_err(sb, "bogus sector size bits : %u\n", + p_boot->sect_size_bits); + return -EINVAL; + } + + /* + * sect_per_clus_bits could be at least 0 and at most 25 - sect_size_bits. + */ + if (p_boot->sect_per_clus_bits > EXFAT_MAX_SECT_PER_CLUS_BITS(p_boot)) { + exfat_err(sb, "bogus sectors bits per cluster : %u\n", + p_boot->sect_per_clus_bits); + return -EINVAL; + } + sbi->sect_per_clus = 1 << p_boot->sect_per_clus_bits; sbi->sect_per_clus_bits = p_boot->sect_per_clus_bits; sbi->cluster_size_bits = p_boot->sect_per_clus_bits + @@ -464,16 +481,19 @@ sbi->used_clusters = EXFAT_CLUSTERS_UNTRACKED; /* check consistencies */ - if (sbi->num_FAT_sectors << p_boot->sect_size_bits < - sbi->num_clusters * 4) { + if ((u64)sbi->num_FAT_sectors << p_boot->sect_size_bits < + (u64)sbi->num_clusters * 4) { exfat_err(sb, "bogus fat length"); return -EINVAL; } + if (sbi->data_start_sector < - sbi->FAT1_start_sector + sbi->num_FAT_sectors * p_boot->num_fats) { + (u64)sbi->FAT1_start_sector + + (u64)sbi->num_FAT_sectors * p_boot->num_fats) { exfat_err(sb, "bogus data start sector"); return -EINVAL; } + if (sbi->vol_flag & VOL_DIRTY) exfat_warn(sb, "Volume was not properly unmounted. Some data may be corrupt. Please run fsck."); if (sbi->vol_flag & ERR_MEDIUM) @@ -747,6 +767,10 @@ { struct exfat_inode_info *ei = (struct exfat_inode_info *)foo; + spin_lock_init(&ei->cache_lru_lock); + ei->nr_caches = 0; + ei->cache_valid_id = EXFAT_CACHE_VALID + 1; + INIT_LIST_HEAD(&ei->cache_lru); INIT_HLIST_NODE(&ei->i_hash_fat); inode_init_once(&ei->vfs_inode); } --- linux-azure-5.8-5.8.0.orig/fs/ext2/file.c +++ linux-azure-5.8-5.8.0/fs/ext2/file.c @@ -93,8 +93,10 @@ struct inode *inode = file_inode(vmf->vma->vm_file); struct ext2_inode_info *ei = EXT2_I(inode); vm_fault_t ret; + bool write = (vmf->flags & FAULT_FLAG_WRITE) && + (vmf->vma->vm_flags & VM_SHARED); - if (vmf->flags & FAULT_FLAG_WRITE) { + if (write) { sb_start_pagefault(inode->i_sb); file_update_time(vmf->vma->vm_file); } @@ -103,7 +105,7 @@ ret = dax_iomap_fault(vmf, PE_SIZE_PTE, NULL, NULL, &ext2_iomap_ops); up_read(&ei->dax_sem); - if (vmf->flags & FAULT_FLAG_WRITE) + if (write) sb_end_pagefault(inode->i_sb); return ret; } --- linux-azure-5.8-5.8.0.orig/fs/ext2/ialloc.c +++ linux-azure-5.8-5.8.0/fs/ext2/ialloc.c @@ -80,6 +80,7 @@ if (dir) le16_add_cpu(&desc->bg_used_dirs_count, -1); spin_unlock(sb_bgl_lock(EXT2_SB(sb), group)); + percpu_counter_inc(&EXT2_SB(sb)->s_freeinodes_counter); if (dir) percpu_counter_dec(&EXT2_SB(sb)->s_dirs_counter); mark_buffer_dirty(bh); @@ -528,7 +529,7 @@ goto fail; } - percpu_counter_add(&sbi->s_freeinodes_counter, -1); + percpu_counter_dec(&sbi->s_freeinodes_counter); if (S_ISDIR(mode)) percpu_counter_inc(&sbi->s_dirs_counter); --- linux-azure-5.8-5.8.0.orig/fs/ext4/Kconfig +++ linux-azure-5.8-5.8.0/fs/ext4/Kconfig @@ -103,8 +103,7 @@ config EXT4_KUNIT_TESTS tristate "KUnit tests for ext4" if !KUNIT_ALL_TESTS - select EXT4_FS - depends on KUNIT + depends on EXT4_FS && KUNIT default KUNIT_ALL_TESTS help This builds the ext4 KUnit tests. --- linux-azure-5.8-5.8.0.orig/fs/ext4/balloc.c +++ linux-azure-5.8-5.8.0/fs/ext4/balloc.c @@ -487,6 +487,7 @@ * submit the buffer_head for reading */ set_buffer_new(bh); + clear_buffer_verified(bh); trace_ext4_read_block_bitmap_load(sb, block_group); bh->b_end_io = ext4_end_bitmap_read; get_bh(bh); --- linux-azure-5.8-5.8.0.orig/fs/ext4/block_validity.c +++ linux-azure-5.8-5.8.0/fs/ext4/block_validity.c @@ -24,6 +24,7 @@ struct rb_node node; ext4_fsblk_t start_blk; unsigned int count; + u32 ino; }; static struct kmem_cache *ext4_system_zone_cachep; @@ -45,7 +46,8 @@ static inline int can_merge(struct ext4_system_zone *entry1, struct ext4_system_zone *entry2) { - if ((entry1->start_blk + entry1->count) == entry2->start_blk) + if ((entry1->start_blk + entry1->count) == entry2->start_blk && + entry1->ino == entry2->ino) return 1; return 0; } @@ -66,9 +68,9 @@ */ static int add_system_zone(struct ext4_system_blocks *system_blks, ext4_fsblk_t start_blk, - unsigned int count) + unsigned int count, u32 ino) { - struct ext4_system_zone *new_entry = NULL, *entry; + struct ext4_system_zone *new_entry, *entry; struct rb_node **n = &system_blks->root.rb_node, *node; struct rb_node *parent = NULL, *new_node = NULL; @@ -79,30 +81,21 @@ n = &(*n)->rb_left; else if (start_blk >= (entry->start_blk + entry->count)) n = &(*n)->rb_right; - else { - if (start_blk + count > (entry->start_blk + - entry->count)) - entry->count = (start_blk + count - - entry->start_blk); - new_node = *n; - new_entry = rb_entry(new_node, struct ext4_system_zone, - node); - break; - } + else /* Unexpected overlap of system zones. */ + return -EFSCORRUPTED; } - if (!new_entry) { - new_entry = kmem_cache_alloc(ext4_system_zone_cachep, - GFP_KERNEL); - if (!new_entry) - return -ENOMEM; - new_entry->start_blk = start_blk; - new_entry->count = count; - new_node = &new_entry->node; + new_entry = kmem_cache_alloc(ext4_system_zone_cachep, + GFP_KERNEL); + if (!new_entry) + return -ENOMEM; + new_entry->start_blk = start_blk; + new_entry->count = count; + new_entry->ino = ino; + new_node = &new_entry->node; - rb_link_node(new_node, parent, n); - rb_insert_color(new_node, &system_blks->root); - } + rb_link_node(new_node, parent, n); + rb_insert_color(new_node, &system_blks->root); /* Can we merge to the left? */ node = rb_prev(new_node); @@ -159,7 +152,7 @@ static int ext4_data_block_valid_rcu(struct ext4_sb_info *sbi, struct ext4_system_blocks *system_blks, ext4_fsblk_t start_blk, - unsigned int count) + unsigned int count, ino_t ino) { struct ext4_system_zone *entry; struct rb_node *n; @@ -180,7 +173,7 @@ else if (start_blk >= (entry->start_blk + entry->count)) n = n->rb_right; else - return 0; + return entry->ino == ino; } return 1; } @@ -214,19 +207,18 @@ if (n == 0) { i++; } else { - if (!ext4_data_block_valid_rcu(sbi, system_blks, - map.m_pblk, n)) { - err = -EFSCORRUPTED; - __ext4_error(sb, __func__, __LINE__, -err, - map.m_pblk, "blocks %llu-%llu " - "from inode %u overlap system zone", - map.m_pblk, - map.m_pblk + map.m_len - 1, ino); + err = add_system_zone(system_blks, map.m_pblk, n, ino); + if (err < 0) { + if (err == -EFSCORRUPTED) { + __ext4_error(sb, __func__, __LINE__, + -err, map.m_pblk, + "blocks %llu-%llu from inode %u overlap system zone", + map.m_pblk, + map.m_pblk + map.m_len - 1, + ino); + } break; } - err = add_system_zone(system_blks, map.m_pblk, n); - if (err < 0) - break; i += n; } } @@ -262,14 +254,6 @@ int flex_size = ext4_flex_bg_size(sbi); int ret; - if (!test_opt(sb, BLOCK_VALIDITY)) { - if (sbi->system_blks) - ext4_release_system_zone(sb); - return 0; - } - if (sbi->system_blks) - return 0; - system_blks = kzalloc(sizeof(*system_blks), GFP_KERNEL); if (!system_blks) return -ENOMEM; @@ -280,19 +264,19 @@ ((i < 5) || ((i % flex_size) == 0))) add_system_zone(system_blks, ext4_group_first_block_no(sb, i), - ext4_bg_num_gdb(sb, i) + 1); + ext4_bg_num_gdb(sb, i) + 1, 0); gdp = ext4_get_group_desc(sb, i, NULL); ret = add_system_zone(system_blks, - ext4_block_bitmap(sb, gdp), 1); + ext4_block_bitmap(sb, gdp), 1, 0); if (ret) goto err; ret = add_system_zone(system_blks, - ext4_inode_bitmap(sb, gdp), 1); + ext4_inode_bitmap(sb, gdp), 1, 0); if (ret) goto err; ret = add_system_zone(system_blks, ext4_inode_table(sb, gdp), - sbi->s_itb_per_group); + sbi->s_itb_per_group, 0); if (ret) goto err; } @@ -341,7 +325,7 @@ call_rcu(&system_blks->rcu, ext4_destroy_system_zone); } -int ext4_data_block_valid(struct ext4_sb_info *sbi, ext4_fsblk_t start_blk, +int ext4_inode_block_valid(struct inode *inode, ext4_fsblk_t start_blk, unsigned int count) { struct ext4_system_blocks *system_blks; @@ -353,9 +337,9 @@ * mount option. */ rcu_read_lock(); - system_blks = rcu_dereference(sbi->system_blks); - ret = ext4_data_block_valid_rcu(sbi, system_blks, start_blk, - count); + system_blks = rcu_dereference(EXT4_SB(inode->i_sb)->system_blks); + ret = ext4_data_block_valid_rcu(EXT4_SB(inode->i_sb), system_blks, + start_blk, count, inode->i_ino); rcu_read_unlock(); return ret; } @@ -374,8 +358,7 @@ while (bref < p+max) { blk = le32_to_cpu(*bref++); if (blk && - unlikely(!ext4_data_block_valid(EXT4_SB(inode->i_sb), - blk, 1))) { + unlikely(!ext4_inode_block_valid(inode, blk, 1))) { ext4_error_inode(inode, function, line, blk, "invalid block"); return -EFSCORRUPTED; --- linux-azure-5.8-5.8.0.orig/fs/ext4/ext4.h +++ linux-azure-5.8-5.8.0/fs/ext4/ext4.h @@ -466,7 +466,7 @@ /* Flags which are mutually exclusive to DAX */ #define EXT4_DAX_MUT_EXCL (EXT4_VERITY_FL | EXT4_ENCRYPT_FL |\ - EXT4_JOURNAL_DATA_FL) + EXT4_JOURNAL_DATA_FL | EXT4_INLINE_DATA_FL) /* Mask out flags that are inappropriate for the given type of inode. */ static inline __u32 ext4_mask_flags(umode_t mode, __u32 flags) @@ -1054,6 +1054,7 @@ struct timespec64 i_crtime; /* mballoc */ + atomic_t i_prealloc_active; struct list_head i_prealloc_list; spinlock_t i_prealloc_lock; @@ -1501,6 +1502,7 @@ unsigned int s_mb_stats; unsigned int s_mb_order2_reqs; unsigned int s_mb_group_prealloc; + unsigned int s_mb_max_inode_prealloc; unsigned int s_max_dir_size_kb; /* where last allocation was done - for stream allocation */ unsigned long s_mb_last_group; @@ -1585,6 +1587,9 @@ #ifdef CONFIG_EXT4_DEBUG unsigned long s_simulate_fail; #endif + /* Record the errseq of the backing block device */ + errseq_t s_bdev_wb_err; + spinlock_t s_bdev_wb_lock; }; static inline struct ext4_sb_info *EXT4_SB(struct super_block *sb) @@ -2589,7 +2594,8 @@ struct ext4_filename *fname); static inline void ext4_update_dx_flag(struct inode *inode) { - if (!ext4_has_feature_dir_index(inode->i_sb)) { + if (!ext4_has_feature_dir_index(inode->i_sb) && + ext4_test_inode_flag(inode, EXT4_INODE_INDEX)) { /* ext4_iget() should have caught this... */ WARN_ON_ONCE(ext4_has_feature_metadata_csum(inode->i_sb)); ext4_clear_inode_flag(inode, EXT4_INODE_INDEX); @@ -2651,7 +2657,7 @@ extern ext4_fsblk_t ext4_mb_new_blocks(handle_t *, struct ext4_allocation_request *, int *); extern int ext4_mb_reserve_blocks(struct super_block *, int); -extern void ext4_discard_preallocations(struct inode *); +extern void ext4_discard_preallocations(struct inode *, unsigned int); extern int __init ext4_init_mballoc(void); extern void ext4_exit_mballoc(void); extern void ext4_free_blocks(handle_t *handle, struct inode *inode, @@ -3363,9 +3369,9 @@ extern int ext4_setup_system_zone(struct super_block *sb); extern int __init ext4_init_system_zone(void); extern void ext4_exit_system_zone(void); -extern int ext4_data_block_valid(struct ext4_sb_info *sbi, - ext4_fsblk_t start_blk, - unsigned int count); +extern int ext4_inode_block_valid(struct inode *inode, + ext4_fsblk_t start_blk, + unsigned int count); extern int ext4_check_blockref(const char *, unsigned int, struct inode *, __le32 *, unsigned int); --- linux-azure-5.8-5.8.0.orig/fs/ext4/ext4_jbd2.c +++ linux-azure-5.8-5.8.0/fs/ext4/ext4_jbd2.c @@ -195,6 +195,28 @@ jbd2_journal_abort_handle(handle); } +static void ext4_check_bdev_write_error(struct super_block *sb) +{ + struct address_space *mapping = sb->s_bdev->bd_inode->i_mapping; + struct ext4_sb_info *sbi = EXT4_SB(sb); + int err; + + /* + * If the block device has write error flag, it may have failed to + * async write out metadata buffers in the background. In this case, + * we could read old data from disk and write it out again, which + * may lead to on-disk filesystem inconsistency. + */ + if (errseq_check(&mapping->wb_err, READ_ONCE(sbi->s_bdev_wb_err))) { + spin_lock(&sbi->s_bdev_wb_lock); + err = errseq_check_and_advance(&mapping->wb_err, &sbi->s_bdev_wb_err); + spin_unlock(&sbi->s_bdev_wb_lock); + if (err) + ext4_error_err(sb, -err, + "Error while async write back metadata"); + } +} + int __ext4_journal_get_write_access(const char *where, unsigned int line, handle_t *handle, struct buffer_head *bh) { @@ -202,6 +224,9 @@ might_sleep(); + if (bh->b_bdev->bd_super) + ext4_check_bdev_write_error(bh->b_bdev->bd_super); + if (ext4_handle_valid(handle)) { err = jbd2_journal_get_write_access(handle, bh); if (err) --- linux-azure-5.8-5.8.0.orig/fs/ext4/extents.c +++ linux-azure-5.8-5.8.0/fs/ext4/extents.c @@ -100,7 +100,7 @@ * i_mutex. So we can safely drop the i_data_sem here. */ BUG_ON(EXT4_JOURNAL(inode) == NULL); - ext4_discard_preallocations(inode); + ext4_discard_preallocations(inode, 0); up_write(&EXT4_I(inode)->i_data_sem); *dropped = 1; return 0; @@ -340,7 +340,7 @@ */ if (lblock + len <= lblock) return 0; - return ext4_data_block_valid(EXT4_SB(inode->i_sb), block, len); + return ext4_inode_block_valid(inode, block, len); } static int ext4_valid_extent_idx(struct inode *inode, @@ -348,7 +348,7 @@ { ext4_fsblk_t block = ext4_idx_pblock(ext_idx); - return ext4_data_block_valid(EXT4_SB(inode->i_sb), block, 1); + return ext4_inode_block_valid(inode, block, 1); } static int ext4_valid_extent_entries(struct inode *inode, @@ -501,20 +501,17 @@ if (!bh_uptodate_or_lock(bh)) { trace_ext4_ext_load_extent(inode, pblk, _RET_IP_); + clear_buffer_verified(bh); err = bh_submit_read(bh); if (err < 0) goto errout; } if (buffer_verified(bh) && !(flags & EXT4_EX_FORCE_CACHE)) return bh; - if (!ext4_has_feature_journal(inode->i_sb) || - (inode->i_ino != - le32_to_cpu(EXT4_SB(inode->i_sb)->s_es->s_journal_inum))) { - err = __ext4_ext_check(function, line, inode, - ext_block_hdr(bh), depth, pblk); - if (err) - goto errout; - } + err = __ext4_ext_check(function, line, inode, + ext_block_hdr(bh), depth, pblk); + if (err) + goto errout; set_buffer_verified(bh); /* * If this is a leaf block, cache all of its entries @@ -1477,16 +1474,16 @@ } /* - * search the closest allocated block to the right for *logical - * and returns it at @logical + it's physical address at @phys - * if *logical is the largest allocated block, the function - * returns 0 at @phys - * return value contains 0 (success) or error code + * Search the closest allocated block to the right for *logical + * and returns it at @logical + it's physical address at @phys. + * If not exists, return 0 and @phys is set to 0. We will return + * 1 which means we found an allocated block and ret_ex is valid. + * Or return a (< 0) error code. */ static int ext4_ext_search_right(struct inode *inode, struct ext4_ext_path *path, ext4_lblk_t *logical, ext4_fsblk_t *phys, - struct ext4_extent **ret_ex) + struct ext4_extent *ret_ex) { struct buffer_head *bh = NULL; struct ext4_extent_header *eh; @@ -1580,10 +1577,11 @@ found_extent: *logical = le32_to_cpu(ex->ee_block); *phys = ext4_ext_pblock(ex); - *ret_ex = ex; + if (ret_ex) + *ret_ex = *ex; if (bh) put_bh(bh); - return 0; + return 1; } /* @@ -2874,8 +2872,8 @@ */ lblk = ex_end + 1; err = ext4_ext_search_right(inode, path, &lblk, &pblk, - &ex); - if (err) + NULL); + if (err < 0) goto out; if (pblk) { partial.pclu = EXT4_B2C(sbi, pblk); @@ -4043,7 +4041,7 @@ struct ext4_map_blocks *map, int flags) { struct ext4_ext_path *path = NULL; - struct ext4_extent newex, *ex, *ex2; + struct ext4_extent newex, *ex, ex2; struct ext4_sb_info *sbi = EXT4_SB(inode->i_sb); ext4_fsblk_t newblock = 0, pblk; int err = 0, depth, ret; @@ -4179,15 +4177,14 @@ if (err) goto out; ar.lright = map->m_lblk; - ex2 = NULL; err = ext4_ext_search_right(inode, path, &ar.lright, &ar.pright, &ex2); - if (err) + if (err < 0) goto out; /* Check if the extent after searching to the right implies a * cluster we can use. */ - if ((sbi->s_cluster_ratio > 1) && ex2 && - get_implied_cluster_alloc(inode->i_sb, map, ex2, path)) { + if ((sbi->s_cluster_ratio > 1) && err && + get_implied_cluster_alloc(inode->i_sb, map, &ex2, path)) { ar.len = allocated = map->m_len; newblock = map->m_pblk; goto got_allocated_blocks; @@ -4272,7 +4269,7 @@ * not a good idea to call discard here directly, * but otherwise we'd need to call it every free(). */ - ext4_discard_preallocations(inode); + ext4_discard_preallocations(inode, 0); if (flags & EXT4_GET_BLOCKS_DELALLOC_RESERVE) fb_flags = EXT4_FREE_BLOCKS_NO_QUOT_UPDATE; ext4_free_blocks(handle, inode, NULL, newblock, @@ -4775,7 +4772,7 @@ int ext4_convert_unwritten_io_end_vec(handle_t *handle, ext4_io_end_t *io_end) { - int ret, err = 0; + int ret = 0, err = 0; struct ext4_io_end_vec *io_end_vec; /* @@ -5299,7 +5296,7 @@ } down_write(&EXT4_I(inode)->i_data_sem); - ext4_discard_preallocations(inode); + ext4_discard_preallocations(inode, 0); ret = ext4_es_remove_extent(inode, punch_start, EXT_MAX_BLOCKS - punch_start); @@ -5313,7 +5310,7 @@ up_write(&EXT4_I(inode)->i_data_sem); goto out_stop; } - ext4_discard_preallocations(inode); + ext4_discard_preallocations(inode, 0); ret = ext4_ext_shift_extents(inode, handle, punch_stop, punch_stop - punch_start, SHIFT_LEFT); @@ -5445,7 +5442,7 @@ goto out_stop; down_write(&EXT4_I(inode)->i_data_sem); - ext4_discard_preallocations(inode); + ext4_discard_preallocations(inode, 0); path = ext4_find_extent(inode, offset_lblk, NULL, 0); if (IS_ERR(path)) { --- linux-azure-5.8-5.8.0.orig/fs/ext4/file.c +++ linux-azure-5.8-5.8.0/fs/ext4/file.c @@ -148,7 +148,7 @@ !EXT4_I(inode)->i_reserved_data_blocks) { down_write(&EXT4_I(inode)->i_data_sem); - ext4_discard_preallocations(inode); + ext4_discard_preallocations(inode, 0); up_write(&EXT4_I(inode)->i_data_sem); } if (is_dx(inode) && filp->private_data) @@ -428,6 +428,10 @@ */ if (*ilock_shared && (!IS_NOSEC(inode) || *extend || !ext4_overwrite_io(inode, offset, count))) { + if (iocb->ki_flags & IOCB_NOWAIT) { + ret = -EAGAIN; + goto out; + } inode_unlock_shared(inode); *ilock_shared = false; inode_lock(inode); @@ -800,7 +804,7 @@ err = ext4_journal_get_write_access(handle, sbi->s_sbh); if (err) goto out_journal; - strlcpy(sbi->s_es->s_last_mounted, cp, + strncpy(sbi->s_es->s_last_mounted, cp, sizeof(sbi->s_es->s_last_mounted)); ext4_handle_dirty_super(handle, sb); out_journal: --- linux-azure-5.8-5.8.0.orig/fs/ext4/fsmap.c +++ linux-azure-5.8-5.8.0/fs/ext4/fsmap.c @@ -108,6 +108,9 @@ /* Are we just counting mappings? */ if (info->gfi_head->fmh_count == 0) { + if (info->gfi_head->fmh_entries == UINT_MAX) + return EXT4_QUERY_RANGE_ABORT; + if (rec_fsblk > info->gfi_next_fsblk) info->gfi_head->fmh_entries++; --- linux-azure-5.8-5.8.0.orig/fs/ext4/ialloc.c +++ linux-azure-5.8-5.8.0/fs/ext4/ialloc.c @@ -188,6 +188,7 @@ /* * submit the buffer_head for reading */ + clear_buffer_verified(bh); trace_ext4_load_inode_bitmap(sb, block_group); bh->b_end_io = ext4_end_bitmap_read; get_bh(bh); --- linux-azure-5.8-5.8.0.orig/fs/ext4/indirect.c +++ linux-azure-5.8-5.8.0/fs/ext4/indirect.c @@ -696,7 +696,7 @@ * i_mutex. So we can safely drop the i_data_sem here. */ BUG_ON(EXT4_JOURNAL(inode) == NULL); - ext4_discard_preallocations(inode); + ext4_discard_preallocations(inode, 0); up_write(&EXT4_I(inode)->i_data_sem); *dropped = 1; return 0; @@ -858,8 +858,7 @@ else if (ext4_should_journal_data(inode)) flags |= EXT4_FREE_BLOCKS_FORGET; - if (!ext4_data_block_valid(EXT4_SB(inode->i_sb), block_to_free, - count)) { + if (!ext4_inode_block_valid(inode, block_to_free, count)) { EXT4_ERROR_INODE(inode, "attempt to clear invalid " "blocks %llu len %lu", (unsigned long long) block_to_free, count); @@ -1004,8 +1003,7 @@ if (!nr) continue; /* A hole */ - if (!ext4_data_block_valid(EXT4_SB(inode->i_sb), - nr, 1)) { + if (!ext4_inode_block_valid(inode, nr, 1)) { EXT4_ERROR_INODE(inode, "invalid indirect mapped " "block %lu (level %d)", --- linux-azure-5.8-5.8.0.orig/fs/ext4/inline.c +++ linux-azure-5.8-5.8.0/fs/ext4/inline.c @@ -1880,6 +1880,7 @@ ext4_write_lock_xattr(inode, &no_expand); if (!ext4_has_inline_data(inode)) { + ext4_write_unlock_xattr(inode, &no_expand); *has_inline = 0; ext4_journal_stop(handle); return 0; --- linux-azure-5.8-5.8.0.orig/fs/ext4/inode.c +++ linux-azure-5.8-5.8.0/fs/ext4/inode.c @@ -175,6 +175,7 @@ */ int extra_credits = 6; struct ext4_xattr_inode_array *ea_inode_array = NULL; + bool freeze_protected = false; trace_ext4_evict_inode(inode); @@ -232,9 +233,14 @@ /* * Protect us against freezing - iput() caller didn't have to have any - * protection against it - */ - sb_start_intwrite(inode->i_sb); + * protection against it. When we are in a running transaction though, + * we are already protected against freezing and we cannot grab further + * protection due to lock ordering constraints. + */ + if (!ext4_journal_current_handle()) { + sb_start_intwrite(inode->i_sb); + freeze_protected = true; + } if (!IS_NOQUOTA(inode)) extra_credits += EXT4_MAXQUOTAS_DEL_BLOCKS(inode->i_sb); @@ -253,7 +259,8 @@ * cleaned up. */ ext4_orphan_del(NULL, inode); - sb_end_intwrite(inode->i_sb); + if (freeze_protected) + sb_end_intwrite(inode->i_sb); goto no_delete; } @@ -294,7 +301,8 @@ stop_handle: ext4_journal_stop(handle); ext4_orphan_del(NULL, inode); - sb_end_intwrite(inode->i_sb); + if (freeze_protected) + sb_end_intwrite(inode->i_sb); ext4_xattr_inode_array_free(ea_inode_array); goto no_delete; } @@ -323,7 +331,8 @@ else ext4_free_inode(handle, inode); ext4_journal_stop(handle); - sb_end_intwrite(inode->i_sb); + if (freeze_protected) + sb_end_intwrite(inode->i_sb); ext4_xattr_inode_array_free(ea_inode_array); return; no_delete: @@ -383,7 +392,7 @@ */ if ((ei->i_reserved_data_blocks == 0) && !inode_is_open_for_write(inode)) - ext4_discard_preallocations(inode); + ext4_discard_preallocations(inode, 0); } static int __check_block_validity(struct inode *inode, const char *func, @@ -394,8 +403,7 @@ (inode->i_ino == le32_to_cpu(EXT4_SB(inode->i_sb)->s_es->s_journal_inum))) return 0; - if (!ext4_data_block_valid(EXT4_SB(inode->i_sb), map->m_pblk, - map->m_len)) { + if (!ext4_inode_block_valid(inode, map->m_pblk, map->m_len)) { ext4_error_inode(inode, func, line, map->m_pblk, "lblock %lu mapped to illegal pblock %llu " "(length %d)", (unsigned long) map->m_lblk, @@ -885,6 +893,7 @@ return bh; if (!bh || ext4_buffer_uptodate(bh)) return bh; + clear_buffer_verified(bh); ll_rw_block(REQ_OP_READ, REQ_META | REQ_PRIO, 1, &bh); wait_on_buffer(bh); if (buffer_uptodate(bh)) @@ -910,9 +919,11 @@ for (i = 0; i < bh_count; i++) /* Note that NULL bhs[i] is valid because of holes. */ - if (bhs[i] && !ext4_buffer_uptodate(bhs[i])) + if (bhs[i] && !ext4_buffer_uptodate(bhs[i])) { + clear_buffer_verified(bhs[i]); ll_rw_block(REQ_OP_READ, REQ_META | REQ_PRIO, 1, &bhs[i]); + } if (!wait) return 0; @@ -2255,7 +2266,7 @@ err = PTR_ERR(io_end_vec); goto out; } - io_end_vec->offset = mpd->map.m_lblk << blkbits; + io_end_vec->offset = (loff_t)mpd->map.m_lblk << blkbits; } *map_bh = true; goto out; @@ -3602,6 +3613,13 @@ return __set_page_dirty_buffers(page); } +static int ext4_iomap_swap_activate(struct swap_info_struct *sis, + struct file *file, sector_t *span) +{ + return iomap_swapfile_activate(sis, file, span, + &ext4_iomap_report_ops); +} + static const struct address_space_operations ext4_aops = { .readpage = ext4_readpage, .readahead = ext4_readahead, @@ -3617,6 +3635,7 @@ .migratepage = buffer_migrate_page, .is_partially_uptodate = block_is_partially_uptodate, .error_remove_page = generic_error_remove_page, + .swap_activate = ext4_iomap_swap_activate, }; static const struct address_space_operations ext4_journalled_aops = { @@ -3633,6 +3652,7 @@ .direct_IO = noop_direct_IO, .is_partially_uptodate = block_is_partially_uptodate, .error_remove_page = generic_error_remove_page, + .swap_activate = ext4_iomap_swap_activate, }; static const struct address_space_operations ext4_da_aops = { @@ -3650,6 +3670,7 @@ .migratepage = buffer_migrate_page, .is_partially_uptodate = block_is_partially_uptodate, .error_remove_page = generic_error_remove_page, + .swap_activate = ext4_iomap_swap_activate, }; static const struct address_space_operations ext4_dax_aops = { @@ -3658,6 +3679,7 @@ .set_page_dirty = noop_set_page_dirty, .bmap = ext4_bmap, .invalidatepage = noop_invalidatepage, + .swap_activate = ext4_iomap_swap_activate, }; void ext4_set_aops(struct inode *inode) @@ -4056,7 +4078,7 @@ if (stop_block > first_block) { down_write(&EXT4_I(inode)->i_data_sem); - ext4_discard_preallocations(inode); + ext4_discard_preallocations(inode, 0); ret = ext4_es_remove_extent(inode, first_block, stop_block - first_block); @@ -4211,7 +4233,7 @@ down_write(&EXT4_I(inode)->i_data_sem); - ext4_discard_preallocations(inode); + ext4_discard_preallocations(inode, 0); if (ext4_test_inode_flag(inode, EXT4_INODE_EXTENTS)) err = ext4_ext_truncate(handle, inode); @@ -4760,7 +4782,7 @@ ret = 0; if (ei->i_file_acl && - !ext4_data_block_valid(EXT4_SB(sb), ei->i_file_acl, 1)) { + !ext4_inode_block_valid(inode, ei->i_file_acl, 1)) { ext4_error_inode(inode, function, line, 0, "iget: bad extended attribute block %llu", ei->i_file_acl); @@ -4901,7 +4923,7 @@ (inode->i_state & I_DIRTY_TIME)) { struct ext4_inode_info *ei = EXT4_I(inode); - inode->i_state &= ~(I_DIRTY_TIME | I_DIRTY_TIME_EXPIRED); + inode->i_state &= ~I_DIRTY_TIME; spin_unlock(&inode->i_lock); spin_lock(&ei->i_raw_lock); @@ -4971,6 +4993,12 @@ if (ext4_test_inode_state(inode, EXT4_STATE_NEW)) memset(raw_inode, 0, EXT4_SB(inode->i_sb)->s_inode_size); + err = ext4_inode_blocks_set(handle, raw_inode, ei); + if (err) { + spin_unlock(&ei->i_raw_lock); + goto out_brelse; + } + raw_inode->i_mode = cpu_to_le16(inode->i_mode); i_uid = i_uid_read(inode); i_gid = i_gid_read(inode); @@ -5004,11 +5032,6 @@ EXT4_INODE_SET_XTIME(i_atime, inode, raw_inode); EXT4_EINODE_SET_XTIME(i_crtime, ei, raw_inode); - err = ext4_inode_blocks_set(handle, raw_inode, ei); - if (err) { - spin_unlock(&ei->i_raw_lock); - goto out_brelse; - } raw_inode->i_dtime = cpu_to_le32(ei->i_dtime); raw_inode->i_flags = cpu_to_le32(ei->i_flags & 0xFFFFFFFF); if (likely(!test_opt2(inode->i_sb, HURD_COMPAT))) --- linux-azure-5.8-5.8.0.orig/fs/ext4/ioctl.c +++ linux-azure-5.8-5.8.0/fs/ext4/ioctl.c @@ -202,7 +202,7 @@ reset_inode_seed(inode); reset_inode_seed(inode_bl); - ext4_discard_preallocations(inode); + ext4_discard_preallocations(inode, 0); err = ext4_mark_inode_dirty(handle, inode); if (err < 0) { @@ -1154,7 +1154,10 @@ err = ext4_journal_get_write_access(handle, sbi->s_sbh); if (err) goto pwsalt_err_journal; + lock_buffer(sbi->s_sbh); generate_random_uuid(sbi->s_es->s_encrypt_pw_salt); + ext4_superblock_csum_set(sb); + unlock_buffer(sbi->s_sbh); err = ext4_handle_dirty_metadata(handle, NULL, sbi->s_sbh); pwsalt_err_journal: --- linux-azure-5.8-5.8.0.orig/fs/ext4/mballoc.c +++ linux-azure-5.8-5.8.0/fs/ext4/mballoc.c @@ -2177,6 +2177,7 @@ { struct ext4_group_info *grp = ext4_get_group_info(ac->ac_sb, group); struct super_block *sb = ac->ac_sb; + struct ext4_sb_info *sbi = EXT4_SB(sb); bool should_lock = ac->ac_flags & EXT4_MB_STRICT_CHECK; ext4_grpblk_t free; int ret = 0; @@ -2195,7 +2196,25 @@ /* We only do this if the grp has never been initialized */ if (unlikely(EXT4_MB_GRP_NEED_INIT(grp))) { - ret = ext4_mb_init_group(ac->ac_sb, group, GFP_NOFS); + struct ext4_group_desc *gdp = + ext4_get_group_desc(sb, group, NULL); + int ret; + + /* cr=0/1 is a very optimistic search to find large + * good chunks almost for free. If buddy data is not + * ready, then this optimization makes no sense. But + * we never skip the first block group in a flex_bg, + * since this gets used for metadata block allocation, + * and we want to make sure we locate metadata blocks + * in the first block group in the flex_bg if possible. + */ + if (cr < 2 && + (!sbi->s_log_groups_per_flex || + ((group & ((1 << sbi->s_log_groups_per_flex) - 1)) != 0)) && + !(ext4_has_group_desc_csum(sb) && + (gdp->bg_flags & cpu_to_le16(EXT4_BG_BLOCK_UNINIT)))) + return 0; + ret = ext4_mb_init_group(sb, group, GFP_NOFS); if (ret) return ret; } @@ -2736,6 +2755,7 @@ sbi->s_mb_stats = MB_DEFAULT_STATS; sbi->s_mb_stream_request = MB_DEFAULT_STREAM_THRESHOLD; sbi->s_mb_order2_reqs = MB_DEFAULT_ORDER2_REQS; + sbi->s_mb_max_inode_prealloc = MB_DEFAULT_MAX_INODE_PREALLOC; /* * The default group preallocation is 512, which for 4k block * sizes translates to 2 megabytes. However for bigalloc file @@ -3090,7 +3110,7 @@ block = ext4_grp_offs_to_block(sb, &ac->ac_b_ex); len = EXT4_C2B(sbi, ac->ac_b_ex.fe_len); - if (!ext4_data_block_valid(sbi, block, len)) { + if (!ext4_inode_block_valid(ac->ac_inode, block, len)) { ext4_error(sb, "Allocating blocks %llu-%llu which overlap " "fs metadata", block, block+len); /* File system mounted not to panic on error @@ -3674,6 +3694,26 @@ mb_debug(sb, "preallocated %d for group %u\n", preallocated, group); } +static void ext4_mb_mark_pa_deleted(struct super_block *sb, + struct ext4_prealloc_space *pa) +{ + struct ext4_inode_info *ei; + + if (pa->pa_deleted) { + ext4_warning(sb, "deleted pa, type:%d, pblk:%llu, lblk:%u, len:%d\n", + pa->pa_type, pa->pa_pstart, pa->pa_lstart, + pa->pa_len); + return; + } + + pa->pa_deleted = 1; + + if (pa->pa_type == MB_INODE_PA) { + ei = EXT4_I(pa->pa_inode); + atomic_dec(&ei->i_prealloc_active); + } +} + static void ext4_mb_pa_callback(struct rcu_head *head) { struct ext4_prealloc_space *pa; @@ -3706,7 +3746,7 @@ return; } - pa->pa_deleted = 1; + ext4_mb_mark_pa_deleted(sb, pa); spin_unlock(&pa->pa_lock); grp_blk = pa->pa_pstart; @@ -3830,6 +3870,7 @@ spin_lock(pa->pa_obj_lock); list_add_rcu(&pa->pa_inode_list, &ei->i_prealloc_list); spin_unlock(pa->pa_obj_lock); + atomic_inc(&ei->i_prealloc_active); } /* @@ -3996,7 +4037,7 @@ struct ext4_buddy e4b; int err; int busy = 0; - int free = 0; + int free, free_total = 0; mb_debug(sb, "discard preallocation for group %u\n", group); if (list_empty(&grp->bb_prealloc_list)) @@ -4024,8 +4065,8 @@ INIT_LIST_HEAD(&list); repeat: + free = 0; ext4_lock_group(sb, group); - this_cpu_inc(discard_pa_seq); list_for_each_entry_safe(pa, tmp, &grp->bb_prealloc_list, pa_group_list) { spin_lock(&pa->pa_lock); @@ -4040,7 +4081,10 @@ } /* seems this one can be freed ... */ - pa->pa_deleted = 1; + ext4_mb_mark_pa_deleted(sb, pa); + + if (!free) + this_cpu_inc(discard_pa_seq); /* we can trust pa_free ... */ free += pa->pa_free; @@ -4051,22 +4095,6 @@ list_add(&pa->u.pa_tmp_list, &list); } - /* if we still need more blocks and some PAs were used, try again */ - if (free < needed && busy) { - busy = 0; - ext4_unlock_group(sb, group); - cond_resched(); - goto repeat; - } - - /* found anything to free? */ - if (list_empty(&list)) { - BUG_ON(free != 0); - mb_debug(sb, "Someone else may have freed PA for this group %u\n", - group); - goto out; - } - /* now free all selected PAs */ list_for_each_entry_safe(pa, tmp, &list, u.pa_tmp_list) { @@ -4084,14 +4112,22 @@ call_rcu(&(pa)->u.pa_rcu, ext4_mb_pa_callback); } -out: + free_total += free; + + /* if we still need more blocks and some PAs were used, try again */ + if (free_total < needed && busy) { + ext4_unlock_group(sb, group); + cond_resched(); + busy = 0; + goto repeat; + } ext4_unlock_group(sb, group); ext4_mb_unload_buddy(&e4b); put_bh(bitmap_bh); out_dbg: mb_debug(sb, "discarded (%d) blocks preallocated for group %u bb_free (%d)\n", - free, group, grp->bb_free); - return free; + free_total, group, grp->bb_free); + return free_total; } /* @@ -4103,7 +4139,7 @@ * * FIXME!! Make sure it is valid at all the call sites */ -void ext4_discard_preallocations(struct inode *inode) +void ext4_discard_preallocations(struct inode *inode, unsigned int needed) { struct ext4_inode_info *ei = EXT4_I(inode); struct super_block *sb = inode->i_sb; @@ -4121,15 +4157,19 @@ mb_debug(sb, "discard preallocation for inode %lu\n", inode->i_ino); - trace_ext4_discard_preallocations(inode); + trace_ext4_discard_preallocations(inode, + atomic_read(&ei->i_prealloc_active), needed); INIT_LIST_HEAD(&list); + if (needed == 0) + needed = UINT_MAX; + repeat: /* first, collect all pa's in the inode */ spin_lock(&ei->i_prealloc_lock); - while (!list_empty(&ei->i_prealloc_list)) { - pa = list_entry(ei->i_prealloc_list.next, + while (!list_empty(&ei->i_prealloc_list) && needed) { + pa = list_entry(ei->i_prealloc_list.prev, struct ext4_prealloc_space, pa_inode_list); BUG_ON(pa->pa_obj_lock != &ei->i_prealloc_lock); spin_lock(&pa->pa_lock); @@ -4146,10 +4186,11 @@ } if (pa->pa_deleted == 0) { - pa->pa_deleted = 1; + ext4_mb_mark_pa_deleted(sb, pa); spin_unlock(&pa->pa_lock); list_del_rcu(&pa->pa_inode_list); list_add(&pa->u.pa_tmp_list, &list); + needed--; continue; } @@ -4450,7 +4491,7 @@ BUG_ON(pa->pa_type != MB_GROUP_PA); /* seems this one can be freed ... */ - pa->pa_deleted = 1; + ext4_mb_mark_pa_deleted(sb, pa); spin_unlock(&pa->pa_lock); list_del_rcu(&pa->pa_inode_list); @@ -4549,10 +4590,29 @@ } /* + * if per-inode prealloc list is too long, trim some PA + */ +static void ext4_mb_trim_inode_pa(struct inode *inode) +{ + struct ext4_inode_info *ei = EXT4_I(inode); + struct ext4_sb_info *sbi = EXT4_SB(inode->i_sb); + int count, delta; + + count = atomic_read(&ei->i_prealloc_active); + delta = (sbi->s_mb_max_inode_prealloc >> 2) + 1; + if (count > sbi->s_mb_max_inode_prealloc + delta) { + count -= sbi->s_mb_max_inode_prealloc; + ext4_discard_preallocations(inode, count); + } +} + +/* * release all resource we used in allocation */ static int ext4_mb_release_context(struct ext4_allocation_context *ac) { + struct inode *inode = ac->ac_inode; + struct ext4_inode_info *ei = EXT4_I(inode); struct ext4_sb_info *sbi = EXT4_SB(ac->ac_sb); struct ext4_prealloc_space *pa = ac->ac_pa; if (pa) { @@ -4579,6 +4639,17 @@ spin_unlock(pa->pa_obj_lock); ext4_mb_add_n_trim(ac); } + + if (pa->pa_type == MB_INODE_PA) { + /* + * treat per-inode prealloc list as a lru list, then try + * to trim the least recently used PA. + */ + spin_lock(pa->pa_obj_lock); + list_move(&pa->pa_inode_list, &ei->i_prealloc_list); + spin_unlock(pa->pa_obj_lock); + } + ext4_mb_put_pa(ac, ac->ac_sb, pa); } if (ac->ac_bitmap_page) @@ -4588,6 +4659,7 @@ if (ac->ac_flags & EXT4_MB_HINT_GROUP_ALLOC) mutex_unlock(&ac->ac_lg->lg_mutex); ext4_mb_collect_stats(ac); + ext4_mb_trim_inode_pa(inode); return 0; } @@ -4850,6 +4922,7 @@ ext4_group_first_block_no(sb, group) + EXT4_C2B(sbi, cluster), "Block already on to-be-freed list"); + kmem_cache_free(ext4_free_data_cachep, new_entry); return 0; } } @@ -4915,7 +4988,7 @@ sbi = EXT4_SB(sb); if (!(flags & EXT4_FREE_BLOCKS_VALIDATED) && - !ext4_data_block_valid(sbi, block, count)) { + !ext4_inode_block_valid(inode, block, count)) { ext4_error(sb, "Freeing blocks not in datazone - " "block = %llu, count = %lu", block, count); goto error_return; --- linux-azure-5.8-5.8.0.orig/fs/ext4/mballoc.h +++ linux-azure-5.8-5.8.0/fs/ext4/mballoc.h @@ -73,6 +73,10 @@ */ #define MB_DEFAULT_GROUP_PREALLOC 512 +/* + * maximum length of inode prealloc list + */ +#define MB_DEFAULT_MAX_INODE_PREALLOC 512 struct ext4_free_data { /* this links the free block information from sb_info */ --- linux-azure-5.8-5.8.0.orig/fs/ext4/move_extent.c +++ linux-azure-5.8-5.8.0/fs/ext4/move_extent.c @@ -686,8 +686,8 @@ out: if (*moved_len) { - ext4_discard_preallocations(orig_inode); - ext4_discard_preallocations(donor_inode); + ext4_discard_preallocations(orig_inode, 0); + ext4_discard_preallocations(donor_inode, 0); } ext4_ext_drop_refs(path); --- linux-azure-5.8-5.8.0.orig/fs/ext4/namei.c +++ linux-azure-5.8-5.8.0/fs/ext4/namei.c @@ -1396,8 +1396,8 @@ ext4_match(dir, fname, de)) { /* found a match - just to be sure, do * a full check */ - if (ext4_check_dir_entry(dir, NULL, de, bh, bh->b_data, - bh->b_size, offset)) + if (ext4_check_dir_entry(dir, NULL, de, bh, search_buf, + buf_size, offset)) return -1; *res_dir = de; return 1; @@ -1858,7 +1858,7 @@ blocksize, hinfo, map); map -= count; dx_sort_map(map, count); - /* Split the existing block in the middle, size-wise */ + /* Ensure that neither split block is over half full */ size = 0; move = 0; for (i = count-1; i >= 0; i--) { @@ -1868,8 +1868,18 @@ size += map[i].size; move++; } - /* map index at which we will split */ - split = count - move; + /* + * map index at which we will split + * + * If the sum of active entries didn't exceed half the block size, just + * split it in half by count; each resulting block will have at least + * half the space free. + */ + if (i > 0) + split = count - move; + else + split = count/2; + hash2 = map[split].hash; continued = hash2 == map[split - 1].hash; dxtrace(printk(KERN_INFO "Split block %lu at %x, %i/%i\n", @@ -2189,6 +2199,9 @@ if (!dentry->d_name.len) return -EINVAL; + if (fscrypt_is_nokey_name(dentry)) + return -ENOKEY; + #ifdef CONFIG_UNICODE sbi = EXT4_SB(sb); if (ext4_has_strict_mode(sbi) && IS_CASEFOLDED(dir) && @@ -2402,11 +2415,10 @@ (frame - 1)->bh); if (err) goto journal_error; - if (restart) { - err = ext4_handle_dirty_dx_node(handle, dir, - frame->bh); + err = ext4_handle_dirty_dx_node(handle, dir, + frame->bh); + if (err) goto journal_error; - } } else { struct dx_root *dxroot; memcpy((char *) entries2, (char *) entries, @@ -2472,7 +2484,7 @@ de = (struct ext4_dir_entry_2 *)entry_buf; while (i < buf_size - csum_size) { if (ext4_check_dir_entry(dir, NULL, de, bh, - bh->b_data, bh->b_size, i)) + entry_buf, buf_size, i)) return -EFSCORRUPTED; if (de == de_del) { if (pde) @@ -3560,9 +3572,6 @@ return retval2; } } - brelse(ent->bh); - ent->bh = NULL; - return retval; } @@ -3761,6 +3770,7 @@ } } + old_file_type = old.de->file_type; if (IS_DIRSYNC(old.dir) || IS_DIRSYNC(new.dir)) ext4_handle_sync(handle); @@ -3788,7 +3798,6 @@ force_reread = (new.dir->i_ino == old.dir->i_ino && ext4_test_inode_flag(new.dir, EXT4_INODE_INLINE_DATA)); - old_file_type = old.de->file_type; if (whiteout) { /* * Do this before adding a new entry, so the old entry is sure @@ -3870,15 +3879,19 @@ retval = 0; end_rename: - brelse(old.dir_bh); - brelse(old.bh); - brelse(new.bh); if (whiteout) { - if (retval) + if (retval) { + ext4_setent(handle, &old, + old.inode->i_ino, old_file_type); drop_nlink(whiteout); + } unlock_new_inode(whiteout); iput(whiteout); + } + brelse(old.dir_bh); + brelse(old.bh); + brelse(new.bh); if (handle) ext4_journal_stop(handle); return retval; --- linux-azure-5.8-5.8.0.orig/fs/ext4/resize.c +++ linux-azure-5.8-5.8.0/fs/ext4/resize.c @@ -843,8 +843,10 @@ BUFFER_TRACE(dind, "get_write_access"); err = ext4_journal_get_write_access(handle, dind); - if (unlikely(err)) + if (unlikely(err)) { ext4_std_error(sb, err); + goto errout; + } /* ext4_reserve_inode_write() gets a reference on the iloc */ err = ext4_reserve_inode_write(handle, inode, &iloc); --- linux-azure-5.8-5.8.0.orig/fs/ext4/super.c +++ linux-azure-5.8-5.8.0/fs/ext4/super.c @@ -66,10 +66,10 @@ unsigned long journal_devnum); static int ext4_show_options(struct seq_file *seq, struct dentry *root); static int ext4_commit_super(struct super_block *sb, int sync); -static void ext4_mark_recovery_complete(struct super_block *sb, +static int ext4_mark_recovery_complete(struct super_block *sb, struct ext4_super_block *es); -static void ext4_clear_journal_err(struct super_block *sb, - struct ext4_super_block *es); +static int ext4_clear_journal_err(struct super_block *sb, + struct ext4_super_block *es); static int ext4_sync_fs(struct super_block *sb, int wait); static int ext4_remount(struct super_block *sb, int *flags, char *data); static int ext4_statfs(struct dentry *dentry, struct kstatfs *buf); @@ -156,6 +156,7 @@ return ERR_PTR(-ENOMEM); if (ext4_buffer_uptodate(bh)) return bh; + clear_buffer_verified(bh); ll_rw_block(REQ_OP_READ, REQ_META | op_flags, 1, &bh); wait_on_buffer(bh); if (buffer_uptodate(bh)) @@ -495,19 +496,17 @@ static void ext4_handle_error(struct super_block *sb) { + journal_t *journal = EXT4_SB(sb)->s_journal; + if (test_opt(sb, WARN_ON_ERROR)) WARN_ON_ONCE(1); - if (sb_rdonly(sb)) + if (sb_rdonly(sb) || test_opt(sb, ERRORS_CONT)) return; - if (!test_opt(sb, ERRORS_CONT)) { - journal_t *journal = EXT4_SB(sb)->s_journal; - - EXT4_SB(sb)->s_mount_flags |= EXT4_MF_FS_ABORTED; - if (journal) - jbd2_journal_abort(journal, -EIO); - } + EXT4_SB(sb)->s_mount_flags |= EXT4_MF_FS_ABORTED; + if (journal) + jbd2_journal_abort(journal, -EIO); /* * We force ERRORS_RO behavior when system is rebooting. Otherwise we * could panic during 'reboot -f' as the underlying device got already @@ -1123,6 +1122,7 @@ inode_set_iversion(&ei->vfs_inode, 1); spin_lock_init(&ei->i_raw_lock); INIT_LIST_HEAD(&ei->i_prealloc_list); + atomic_set(&ei->i_prealloc_active, 0); spin_lock_init(&ei->i_prealloc_lock); ext4_es_init_tree(&ei->i_es_tree); rwlock_init(&ei->i_es_lock); @@ -1216,7 +1216,7 @@ { invalidate_inode_buffers(inode); clear_inode(inode); - ext4_discard_preallocations(inode); + ext4_discard_preallocations(inode, 0); ext4_es_remove_extent(inode, 0, EXT_MAX_BLOCKS); dquot_drop(inode); if (EXT4_I(inode)->jinode) { @@ -1819,8 +1819,8 @@ {Opt_noquota, (EXT4_MOUNT_QUOTA | EXT4_MOUNT_USRQUOTA | EXT4_MOUNT_GRPQUOTA | EXT4_MOUNT_PRJQUOTA), MOPT_CLEAR | MOPT_Q}, - {Opt_usrjquota, 0, MOPT_Q}, - {Opt_grpjquota, 0, MOPT_Q}, + {Opt_usrjquota, 0, MOPT_Q | MOPT_STRING}, + {Opt_grpjquota, 0, MOPT_Q | MOPT_STRING}, {Opt_offusrjquota, 0, MOPT_Q}, {Opt_offgrpjquota, 0, MOPT_Q}, {Opt_jqfmt_vfsold, QFMT_VFS_OLD, MOPT_QFMT}, @@ -3939,19 +3939,26 @@ */ sbi->s_li_wait_mult = EXT4_DEF_LI_WAIT_MULT; - blocksize = BLOCK_SIZE << le32_to_cpu(es->s_log_block_size); - - if (blocksize == PAGE_SIZE) - set_opt(sb, DIOREAD_NOLOCK); - - if (blocksize < EXT4_MIN_BLOCK_SIZE || - blocksize > EXT4_MAX_BLOCK_SIZE) { + if (le32_to_cpu(es->s_log_block_size) > + (EXT4_MAX_BLOCK_LOG_SIZE - EXT4_MIN_BLOCK_LOG_SIZE)) { ext4_msg(sb, KERN_ERR, - "Unsupported filesystem blocksize %d (%d log_block_size)", - blocksize, le32_to_cpu(es->s_log_block_size)); + "Invalid log block size: %u", + le32_to_cpu(es->s_log_block_size)); + goto failed_mount; + } + if (le32_to_cpu(es->s_log_cluster_size) > + (EXT4_MAX_CLUSTER_LOG_SIZE - EXT4_MIN_BLOCK_LOG_SIZE)) { + ext4_msg(sb, KERN_ERR, + "Invalid log cluster size: %u", + le32_to_cpu(es->s_log_cluster_size)); goto failed_mount; } + blocksize = EXT4_MIN_BLOCK_SIZE << le32_to_cpu(es->s_log_block_size); + + if (blocksize == PAGE_SIZE) + set_opt(sb, DIOREAD_NOLOCK); + if (le32_to_cpu(es->s_rev_level) == EXT4_GOOD_OLD_REV) { sbi->s_inode_size = EXT4_GOOD_OLD_INODE_SIZE; sbi->s_first_ino = EXT4_GOOD_OLD_FIRST_INO; @@ -4168,21 +4175,6 @@ if (!ext4_feature_set_ok(sb, (sb_rdonly(sb)))) goto failed_mount; - if (le32_to_cpu(es->s_log_block_size) > - (EXT4_MAX_BLOCK_LOG_SIZE - EXT4_MIN_BLOCK_LOG_SIZE)) { - ext4_msg(sb, KERN_ERR, - "Invalid log block size: %u", - le32_to_cpu(es->s_log_block_size)); - goto failed_mount; - } - if (le32_to_cpu(es->s_log_cluster_size) > - (EXT4_MAX_CLUSTER_LOG_SIZE - EXT4_MIN_BLOCK_LOG_SIZE)) { - ext4_msg(sb, KERN_ERR, - "Invalid log cluster size: %u", - le32_to_cpu(es->s_log_cluster_size)); - goto failed_mount; - } - if (le16_to_cpu(sbi->s_es->s_reserved_gdt_blocks) > (blocksize / 4)) { ext4_msg(sb, KERN_ERR, "Number of reserved GDT blocks insanely large: %d", @@ -4698,11 +4690,13 @@ ext4_set_resv_clusters(sb); - err = ext4_setup_system_zone(sb); - if (err) { - ext4_msg(sb, KERN_ERR, "failed to initialize system " - "zone (%d)", err); - goto failed_mount4a; + if (test_opt(sb, BLOCK_VALIDITY)) { + err = ext4_setup_system_zone(sb); + if (err) { + ext4_msg(sb, KERN_ERR, "failed to initialize system " + "zone (%d)", err); + goto failed_mount4a; + } } ext4_ext_init(sb); @@ -4765,12 +4759,22 @@ } #endif /* CONFIG_QUOTA */ + /* + * Save the original bdev mapping's wb_err value which could be + * used to detect the metadata async write error. + */ + spin_lock_init(&sbi->s_bdev_wb_lock); + errseq_check_and_advance(&sb->s_bdev->bd_inode->i_mapping->wb_err, + &sbi->s_bdev_wb_err); + sb->s_bdev->bd_super = sb; EXT4_SB(sb)->s_mount_state |= EXT4_ORPHAN_FS; ext4_orphan_cleanup(sb, es); EXT4_SB(sb)->s_mount_state &= ~EXT4_ORPHAN_FS; if (needs_recovery) { ext4_msg(sb, KERN_INFO, "recovery complete"); - ext4_mark_recovery_complete(sb, es); + err = ext4_mark_recovery_complete(sb, es); + if (err) + goto failed_mount8; } if (EXT4_SB(sb)->s_journal) { if (test_opt(sb, DATA_FLAGS) == EXT4_MOUNT_JOURNAL_DATA) @@ -4813,10 +4817,9 @@ ext4_msg(sb, KERN_ERR, "VFS: Can't find ext4 filesystem"); goto failed_mount; -#ifdef CONFIG_QUOTA failed_mount8: ext4_unregister_sysfs(sb); -#endif + kobject_put(&sbi->s_kobj); failed_mount7: ext4_unregister_li_request(sb); failed_mount6: @@ -4956,7 +4959,8 @@ struct inode *journal_inode; journal_t *journal; - BUG_ON(!ext4_has_feature_journal(sb)); + if (WARN_ON_ONCE(!ext4_has_feature_journal(sb))) + return NULL; journal_inode = ext4_get_journal_inode(sb, journal_inum); if (!journal_inode) @@ -4986,7 +4990,8 @@ struct ext4_super_block *es; struct block_device *bdev; - BUG_ON(!ext4_has_feature_journal(sb)); + if (WARN_ON_ONCE(!ext4_has_feature_journal(sb))) + return NULL; bdev = ext4_blkdev_get(j_dev, sb); if (bdev == NULL) @@ -5077,8 +5082,10 @@ dev_t journal_dev; int err = 0; int really_read_only; + int journal_dev_ro; - BUG_ON(!ext4_has_feature_journal(sb)); + if (WARN_ON_ONCE(!ext4_has_feature_journal(sb))) + return -EFSCORRUPTED; if (journal_devnum && journal_devnum != le32_to_cpu(es->s_journal_dev)) { @@ -5088,7 +5095,31 @@ } else journal_dev = new_decode_dev(le32_to_cpu(es->s_journal_dev)); - really_read_only = bdev_read_only(sb->s_bdev); + if (journal_inum && journal_dev) { + ext4_msg(sb, KERN_ERR, + "filesystem has both journal inode and journal device!"); + return -EINVAL; + } + + if (journal_inum) { + journal = ext4_get_journal(sb, journal_inum); + if (!journal) + return -EINVAL; + } else { + journal = ext4_get_dev_journal(sb, journal_dev); + if (!journal) + return -EINVAL; + } + + journal_dev_ro = bdev_read_only(journal->j_dev); + really_read_only = bdev_read_only(sb->s_bdev) | journal_dev_ro; + + if (journal_dev_ro && !sb_rdonly(sb)) { + ext4_msg(sb, KERN_ERR, + "journal device read-only, try mounting with '-o ro'"); + err = -EROFS; + goto err_out; + } /* * Are we loading a blank journal or performing recovery after a @@ -5103,27 +5134,14 @@ ext4_msg(sb, KERN_ERR, "write access " "unavailable, cannot proceed " "(try mounting with noload)"); - return -EROFS; + err = -EROFS; + goto err_out; } ext4_msg(sb, KERN_INFO, "write access will " "be enabled during recovery"); } } - if (journal_inum && journal_dev) { - ext4_msg(sb, KERN_ERR, "filesystem has both journal " - "and inode journals!"); - return -EINVAL; - } - - if (journal_inum) { - if (!(journal = ext4_get_journal(sb, journal_inum))) - return -EINVAL; - } else { - if (!(journal = ext4_get_dev_journal(sb, journal_dev))) - return -EINVAL; - } - if (!(journal->j_flags & JBD2_BARRIER)) ext4_msg(sb, KERN_INFO, "barriers disabled"); @@ -5143,12 +5161,16 @@ if (err) { ext4_msg(sb, KERN_ERR, "error loading journal"); - jbd2_journal_destroy(journal); - return err; + goto err_out; } EXT4_SB(sb)->s_journal = journal; - ext4_clear_journal_err(sb, es); + err = ext4_clear_journal_err(sb, es); + if (err) { + EXT4_SB(sb)->s_journal = NULL; + jbd2_journal_destroy(journal); + return err; + } if (!really_read_only && journal_devnum && journal_devnum != le32_to_cpu(es->s_journal_dev)) { @@ -5159,6 +5181,10 @@ } return 0; + +err_out: + jbd2_journal_destroy(journal); + return err; } static int ext4_commit_super(struct super_block *sb, int sync) @@ -5171,13 +5197,6 @@ return error; /* - * The superblock bh should be mapped, but it might not be if the - * device was hot-removed. Not much we can do but fail the I/O. - */ - if (!buffer_mapped(sbh)) - return error; - - /* * If the file system is mounted read-only, don't update the * superblock write time. This avoids updating the superblock * write time when we are mounting the root file system @@ -5244,26 +5263,32 @@ * remounting) the filesystem readonly, then we will end up with a * consistent fs on disk. Record that fact. */ -static void ext4_mark_recovery_complete(struct super_block *sb, - struct ext4_super_block *es) +static int ext4_mark_recovery_complete(struct super_block *sb, + struct ext4_super_block *es) { + int err; journal_t *journal = EXT4_SB(sb)->s_journal; if (!ext4_has_feature_journal(sb)) { - BUG_ON(journal != NULL); - return; + if (journal != NULL) { + ext4_error(sb, "Journal got removed while the fs was " + "mounted!"); + return -EFSCORRUPTED; + } + return 0; } jbd2_journal_lock_updates(journal); - if (jbd2_journal_flush(journal) < 0) + err = jbd2_journal_flush(journal); + if (err < 0) goto out; if (ext4_has_feature_journal_needs_recovery(sb) && sb_rdonly(sb)) { ext4_clear_feature_journal_needs_recovery(sb); ext4_commit_super(sb, 1); } - out: jbd2_journal_unlock_updates(journal); + return err; } /* @@ -5271,14 +5296,17 @@ * has recorded an error from a previous lifetime, move that error to the * main filesystem now. */ -static void ext4_clear_journal_err(struct super_block *sb, +static int ext4_clear_journal_err(struct super_block *sb, struct ext4_super_block *es) { journal_t *journal; int j_errno; const char *errstr; - BUG_ON(!ext4_has_feature_journal(sb)); + if (!ext4_has_feature_journal(sb)) { + ext4_error(sb, "Journal got removed while the fs was mounted!"); + return -EFSCORRUPTED; + } journal = EXT4_SB(sb)->s_journal; @@ -5303,6 +5331,7 @@ jbd2_journal_clear_err(journal); jbd2_journal_update_sb_errno(journal); } + return 0; } /* @@ -5445,7 +5474,7 @@ { struct ext4_super_block *es; struct ext4_sb_info *sbi = EXT4_SB(sb); - unsigned long old_sb_flags; + unsigned long old_sb_flags, vfs_flags; struct ext4_mount_options old_opts; int enable_quota = 0; ext4_group_t g; @@ -5488,6 +5517,14 @@ if (sbi->s_journal && sbi->s_journal->j_task->io_context) journal_ioprio = sbi->s_journal->j_task->io_context->ioprio; + /* + * Some options can be enabled by ext4 and/or by VFS mount flag + * either way we need to make sure it matches in both *flags and + * s_flags. Copy those selected flags from *flags to s_flags + */ + vfs_flags = SB_LAZYTIME | SB_I_VERSION; + sb->s_flags = (sb->s_flags & ~vfs_flags) | (*flags & vfs_flags); + if (!parse_options(data, sb, NULL, &journal_ioprio, 1)) { err = -EINVAL; goto restore_opts; @@ -5541,9 +5578,6 @@ set_task_ioprio(sbi->s_journal->j_task, journal_ioprio); } - if (*flags & SB_LAZYTIME) - sb->s_flags |= SB_LAZYTIME; - if ((bool)(*flags & SB_RDONLY) != sb_rdonly(sb)) { if (sbi->s_mount_flags & EXT4_MF_FS_ABORTED) { err = -EROFS; @@ -5573,8 +5607,13 @@ (sbi->s_mount_state & EXT4_VALID_FS)) es->s_state = cpu_to_le16(sbi->s_mount_state); - if (sbi->s_journal) + if (sbi->s_journal) { + /* + * We let remount-ro finish even if marking fs + * as clean failed... + */ ext4_mark_recovery_complete(sb, es); + } if (sbi->s_mmp_tsk) kthread_stop(sbi->s_mmp_tsk); } else { @@ -5622,8 +5661,11 @@ * been changed by e2fsck since we originally mounted * the partition.) */ - if (sbi->s_journal) - ext4_clear_journal_err(sb, es); + if (sbi->s_journal) { + err = ext4_clear_journal_err(sb, es); + if (err) + goto restore_opts; + } sbi->s_mount_state = le16_to_cpu(es->s_state); err = ext4_setup_super(sb, es, 0); @@ -5653,7 +5695,17 @@ ext4_register_li_request(sb, first_not_zeroed); } - ext4_setup_system_zone(sb); + /* + * Handle creation of system zone data early because it can fail. + * Releasing of existing data is done when we are sure remount will + * succeed. + */ + if (test_opt(sb, BLOCK_VALIDITY) && !sbi->system_blks) { + err = ext4_setup_system_zone(sb); + if (err) + goto restore_opts; + } + if (sbi->s_journal == NULL && !(old_sb_flags & SB_RDONLY)) { err = ext4_commit_super(sb, 1); if (err) @@ -5674,8 +5726,16 @@ } } #endif + if (!test_opt(sb, BLOCK_VALIDITY) && sbi->system_blks) + ext4_release_system_zone(sb); + + /* + * Some options can be enabled by ext4 and/or by VFS mount flag + * either way we need to make sure it matches in both *flags and + * s_flags. Copy those selected flags from s_flags to *flags + */ + *flags = (*flags & ~vfs_flags) | (sb->s_flags & vfs_flags); - *flags = (*flags & ~SB_LAZYTIME) | (sb->s_flags & SB_LAZYTIME); ext4_msg(sb, KERN_INFO, "re-mounted. Opts: %s", orig_data); kfree(orig_data); return 0; @@ -5689,6 +5749,8 @@ sbi->s_commit_interval = old_opts.s_commit_interval; sbi->s_min_batch_time = old_opts.s_min_batch_time; sbi->s_max_batch_time = old_opts.s_max_batch_time; + if (!test_opt(sb, BLOCK_VALIDITY) && sbi->system_blks) + ext4_release_system_zone(sb); #ifdef CONFIG_QUOTA sbi->s_jquota_fmt = old_opts.s_jquota_fmt; for (i = 0; i < EXT4_MAXQUOTAS; i++) { @@ -5920,6 +5982,11 @@ /* Quotafile not on the same filesystem? */ if (path->dentry->d_sb != sb) return -EXDEV; + + /* Quota already enabled for this file? */ + if (IS_NOQUOTA(d_inode(path->dentry))) + return -EBUSY; + /* Journaling quota? */ if (EXT4_SB(sb)->s_qf_names[type]) { /* Quotafile not in fs root? */ --- linux-azure-5.8-5.8.0.orig/fs/ext4/sysfs.c +++ linux-azure-5.8-5.8.0/fs/ext4/sysfs.c @@ -215,6 +215,7 @@ EXT4_RW_ATTR_SBI_UI(mb_order2_req, s_mb_order2_reqs); EXT4_RW_ATTR_SBI_UI(mb_stream_req, s_mb_stream_request); EXT4_RW_ATTR_SBI_UI(mb_group_prealloc, s_mb_group_prealloc); +EXT4_RW_ATTR_SBI_UI(mb_max_inode_prealloc, s_mb_max_inode_prealloc); EXT4_RW_ATTR_SBI_UI(extent_max_zeroout_kb, s_extent_max_zeroout_kb); EXT4_ATTR(trigger_fs_error, 0200, trigger_test_error); EXT4_RW_ATTR_SBI_UI(err_ratelimit_interval_ms, s_err_ratelimit_state.interval); @@ -257,6 +258,7 @@ ATTR_LIST(mb_order2_req), ATTR_LIST(mb_stream_req), ATTR_LIST(mb_group_prealloc), + ATTR_LIST(mb_max_inode_prealloc), ATTR_LIST(max_writeback_mb_bump), ATTR_LIST(extent_max_zeroout_kb), ATTR_LIST(trigger_fs_error), --- linux-azure-5.8-5.8.0.orig/fs/f2fs/checkpoint.c +++ linux-azure-5.8-5.8.0/fs/f2fs/checkpoint.c @@ -107,7 +107,7 @@ return __get_meta_page(sbi, index, true); } -struct page *f2fs_get_meta_page_nofail(struct f2fs_sb_info *sbi, pgoff_t index) +struct page *f2fs_get_meta_page_retry(struct f2fs_sb_info *sbi, pgoff_t index) { struct page *page; int count = 0; @@ -243,6 +243,8 @@ blkno * NAT_ENTRY_PER_BLOCK); break; case META_SIT: + if (unlikely(blkno >= TOTAL_SEGS(sbi))) + goto out; /* get sit block addr */ fio.new_blkaddr = current_sit_addr(sbi, blkno * SIT_ENTRY_PER_BLOCK); @@ -1047,8 +1049,12 @@ get_pages(sbi, is_dir ? F2FS_DIRTY_DENTS : F2FS_DIRTY_DATA)); retry: - if (unlikely(f2fs_cp_error(sbi))) + if (unlikely(f2fs_cp_error(sbi))) { + trace_f2fs_sync_dirty_inodes_exit(sbi->sb, is_dir, + get_pages(sbi, is_dir ? + F2FS_DIRTY_DENTS : F2FS_DIRTY_DATA)); return -EIO; + } spin_lock(&sbi->inode_lock[type]); @@ -1591,7 +1597,7 @@ goto out; } - if (NM_I(sbi)->dirty_nat_cnt == 0 && + if (NM_I(sbi)->nat_cnt[DIRTY_NAT] == 0 && SIT_I(sbi)->dirty_sentries == 0 && prefree_segments(sbi) == 0) { f2fs_flush_sit_entries(sbi, cpc); --- linux-azure-5.8-5.8.0.orig/fs/f2fs/compress.c +++ linux-azure-5.8-5.8.0/fs/f2fs/compress.c @@ -375,16 +375,17 @@ ZSTD_DStream *stream; void *workspace; unsigned int workspace_size; + unsigned int max_window_size = + MAX_COMPRESS_WINDOW_SIZE(dic->log_cluster_size); - workspace_size = ZSTD_DStreamWorkspaceBound(MAX_COMPRESS_WINDOW_SIZE); + workspace_size = ZSTD_DStreamWorkspaceBound(max_window_size); workspace = f2fs_kvmalloc(F2FS_I_SB(dic->inode), workspace_size, GFP_NOFS); if (!workspace) return -ENOMEM; - stream = ZSTD_initDStream(MAX_COMPRESS_WINDOW_SIZE, - workspace, workspace_size); + stream = ZSTD_initDStream(max_window_size, workspace, workspace_size); if (!stream) { printk_ratelimited("%sF2FS-fs (%s): %s ZSTD_initDStream failed\n", KERN_ERR, F2FS_I_SB(dic->inode)->sb->s_id, @@ -1290,7 +1291,7 @@ ret = f2fs_write_single_data_page(cc->rpages[i], &_submitted, NULL, NULL, wbc, io_type, - compr_blocks); + compr_blocks, false); if (ret) { if (ret == AOP_WRITEPAGE_ACTIVATE) { unlock_page(cc->rpages[i]); @@ -1310,6 +1311,12 @@ congestion_wait(BLK_RW_ASYNC, DEFAULT_IO_TIMEOUT); lock_page(cc->rpages[i]); + + if (!PageDirty(cc->rpages[i])) { + unlock_page(cc->rpages[i]); + continue; + } + clear_page_dirty_for_io(cc->rpages[i]); goto retry_write; } @@ -1319,6 +1326,9 @@ *submitted += _submitted; } + + f2fs_balance_fs(F2FS_M_SB(mapping), true); + return 0; out_err: for (++i; i < cc->cluster_size; i++) { @@ -1353,6 +1363,8 @@ err = f2fs_write_compressed_pages(cc, submitted, wbc, io_type); cops->destroy_compress_ctx(cc); + kfree(cc->cpages); + cc->cpages = NULL; if (!err) return 0; f2fs_bug_on(F2FS_I_SB(cc->inode), err != -EAGAIN); --- linux-azure-5.8-5.8.0.orig/fs/f2fs/data.c +++ linux-azure-5.8-5.8.0/fs/f2fs/data.c @@ -471,7 +471,7 @@ if (f2fs_lfs_mode(sbi) && current->plug) blk_finish_plug(current->plug); - if (F2FS_IO_ALIGNED(sbi)) + if (!F2FS_IO_ALIGNED(sbi)) goto submit_io; start = bio->bi_iter.bi_size >> F2FS_BLKSIZE_BITS; @@ -2648,7 +2648,8 @@ sector_t *last_block, struct writeback_control *wbc, enum iostat_type io_type, - int compr_blocks) + int compr_blocks, + bool allow_balance) { struct inode *inode = page->mapping->host; struct f2fs_sb_info *sbi = F2FS_I_SB(inode); @@ -2774,7 +2775,7 @@ } unlock_page(page); if (!S_ISDIR(inode->i_mode) && !IS_NOQUOTA(inode) && - !F2FS_I(inode)->cp_task) + !F2FS_I(inode)->cp_task && allow_balance) f2fs_balance_fs(sbi, need_balance_fs); if (unlikely(f2fs_cp_error(sbi))) { @@ -2821,7 +2822,7 @@ #endif return f2fs_write_single_data_page(page, NULL, NULL, NULL, - wbc, FS_DATA_IO, 0); + wbc, FS_DATA_IO, 0, true); } /* @@ -2991,7 +2992,8 @@ } #endif ret = f2fs_write_single_data_page(page, &submitted, - &bio, &last_block, wbc, io_type, 0); + &bio, &last_block, wbc, io_type, + 0, true); if (ret == AOP_WRITEPAGE_ACTIVATE) unlock_page(page); #ifdef CONFIG_F2FS_FS_COMPRESSION @@ -3432,6 +3434,10 @@ if (f2fs_compressed_file(inode) && fsdata) { f2fs_compress_write_end(inode, fsdata, page->index, copied); f2fs_update_time(F2FS_I_SB(inode), REQ_TIME); + + if (pos + copied > i_size_read(inode) && + !f2fs_verity_in_progress(inode)) + f2fs_i_size_write(inode, pos + copied); return copied; } #endif @@ -3459,6 +3465,9 @@ unsigned long align = offset | iov_iter_alignment(iter); struct block_device *bdev = inode->i_sb->s_bdev; + if (iov_iter_rw(iter) == READ && offset >= i_size_read(inode)) + return 1; + if (align & blocksize_mask) { if (bdev) blkbits = blksize_bits(bdev_logical_block_size(bdev)); --- linux-azure-5.8-5.8.0.orig/fs/f2fs/debug.c +++ linux-azure-5.8-5.8.0/fs/f2fs/debug.c @@ -145,8 +145,8 @@ si->node_pages = NODE_MAPPING(sbi)->nrpages; if (sbi->meta_inode) si->meta_pages = META_MAPPING(sbi)->nrpages; - si->nats = NM_I(sbi)->nat_cnt; - si->dirty_nats = NM_I(sbi)->dirty_nat_cnt; + si->nats = NM_I(sbi)->nat_cnt[TOTAL_NAT]; + si->dirty_nats = NM_I(sbi)->nat_cnt[DIRTY_NAT]; si->sits = MAIN_SEGS(sbi); si->dirty_sits = SIT_I(sbi)->dirty_sentries; si->free_nids = NM_I(sbi)->nid_cnt[FREE_NID]; @@ -258,9 +258,10 @@ si->cache_mem += (NM_I(sbi)->nid_cnt[FREE_NID] + NM_I(sbi)->nid_cnt[PREALLOC_NID]) * sizeof(struct free_nid); - si->cache_mem += NM_I(sbi)->nat_cnt * sizeof(struct nat_entry); - si->cache_mem += NM_I(sbi)->dirty_nat_cnt * - sizeof(struct nat_entry_set); + si->cache_mem += NM_I(sbi)->nat_cnt[TOTAL_NAT] * + sizeof(struct nat_entry); + si->cache_mem += NM_I(sbi)->nat_cnt[DIRTY_NAT] * + sizeof(struct nat_entry_set); si->cache_mem += si->inmem_pages * sizeof(struct inmem_pages); for (i = 0; i < MAX_INO_ENTRY; i++) si->cache_mem += sbi->im[i].ino_num * sizeof(struct ino_entry); --- linux-azure-5.8-5.8.0.orig/fs/f2fs/dir.c +++ linux-azure-5.8-5.8.0/fs/f2fs/dir.c @@ -357,16 +357,15 @@ unsigned int max_depth; unsigned int level; + *res_page = NULL; + if (f2fs_has_inline_dentry(dir)) { - *res_page = NULL; de = f2fs_find_in_inline_dir(dir, fname, res_page); goto out; } - if (npages == 0) { - *res_page = NULL; + if (npages == 0) goto out; - } max_depth = F2FS_I(dir)->i_current_depth; if (unlikely(max_depth > MAX_DIR_HASH_DEPTH)) { @@ -377,7 +376,6 @@ } for (level = 0; level < max_depth; level++) { - *res_page = NULL; de = find_in_level(dir, level, fname, res_page); if (de || IS_ERR(*res_page)) break; --- linux-azure-5.8-5.8.0.orig/fs/f2fs/f2fs.h +++ linux-azure-5.8-5.8.0/fs/f2fs/f2fs.h @@ -895,6 +895,13 @@ MAX_NID_STATE, }; +enum nat_state { + TOTAL_NAT, + DIRTY_NAT, + RECLAIMABLE_NAT, + MAX_NAT_STATE, +}; + struct f2fs_nm_info { block_t nat_blkaddr; /* base disk address of NAT */ nid_t max_nid; /* maximum possible node ids */ @@ -910,8 +917,7 @@ struct rw_semaphore nat_tree_lock; /* protect nat_tree_lock */ struct list_head nat_entries; /* cached nat entry list (clean) */ spinlock_t nat_list_lock; /* protect clean nat entry list */ - unsigned int nat_cnt; /* the # of cached nat entries */ - unsigned int dirty_nat_cnt; /* total num of nat entries in set */ + unsigned int nat_cnt[MAX_NAT_STATE]; /* the # of cached nat entries */ unsigned int nat_blocks; /* # of nat blocks */ /* free node ids management */ @@ -1392,7 +1398,7 @@ #define NULL_CLUSTER ((unsigned int)(~0)) #define MIN_COMPRESS_LOG_SIZE 2 #define MAX_COMPRESS_LOG_SIZE 8 -#define MAX_COMPRESS_WINDOW_SIZE ((PAGE_SIZE) << MAX_COMPRESS_LOG_SIZE) +#define MAX_COMPRESS_WINDOW_SIZE(log_size) ((PAGE_SIZE) << (log_size)) struct f2fs_sb_info { struct super_block *sb; /* pointer to VFS super block */ @@ -3224,6 +3230,8 @@ static inline int f2fs_add_link(struct dentry *dentry, struct inode *inode) { + if (fscrypt_is_nokey_name(dentry)) + return -ENOKEY; return f2fs_do_add_link(d_inode(dentry->d_parent), &dentry->d_name, inode, inode->i_ino, inode->i_mode); } @@ -3287,7 +3295,7 @@ void f2fs_alloc_nid_done(struct f2fs_sb_info *sbi, nid_t nid); void f2fs_alloc_nid_failed(struct f2fs_sb_info *sbi, nid_t nid); int f2fs_try_to_free_nids(struct f2fs_sb_info *sbi, int nr_shrink); -void f2fs_recover_inline_xattr(struct inode *inode, struct page *page); +int f2fs_recover_inline_xattr(struct inode *inode, struct page *page); int f2fs_recover_xattr_data(struct inode *inode, struct page *page); int f2fs_recover_inode_page(struct f2fs_sb_info *sbi, struct page *page); int f2fs_restore_node_summary(struct f2fs_sb_info *sbi, @@ -3377,7 +3385,7 @@ void f2fs_stop_checkpoint(struct f2fs_sb_info *sbi, bool end_io); struct page *f2fs_grab_meta_page(struct f2fs_sb_info *sbi, pgoff_t index); struct page *f2fs_get_meta_page(struct f2fs_sb_info *sbi, pgoff_t index); -struct page *f2fs_get_meta_page_nofail(struct f2fs_sb_info *sbi, pgoff_t index); +struct page *f2fs_get_meta_page_retry(struct f2fs_sb_info *sbi, pgoff_t index); struct page *f2fs_get_tmp_page(struct f2fs_sb_info *sbi, pgoff_t index); bool f2fs_is_valid_blkaddr(struct f2fs_sb_info *sbi, block_t blkaddr, int type); @@ -3460,7 +3468,7 @@ struct bio **bio, sector_t *last_block, struct writeback_control *wbc, enum iostat_type io_type, - int compr_blocks); + int compr_blocks, bool allow_balance); void f2fs_invalidate_page(struct page *page, unsigned int offset, unsigned int length); int f2fs_release_page(struct page *page, gfp_t wait); @@ -3750,7 +3758,7 @@ int f2fs_convert_inline_inode(struct inode *inode); int f2fs_try_convert_inline_dir(struct inode *dir, struct dentry *dentry); int f2fs_write_inline_data(struct inode *inode, struct page *page); -bool f2fs_recover_inline_data(struct inode *inode, struct page *npage); +int f2fs_recover_inline_data(struct inode *inode, struct page *npage); struct f2fs_dir_entry *f2fs_find_in_inline_dir(struct inode *dir, const struct f2fs_filename *fname, struct page **res_page); --- linux-azure-5.8-5.8.0.orig/fs/f2fs/file.c +++ linux-azure-5.8-5.8.0/fs/f2fs/file.c @@ -58,6 +58,9 @@ bool need_alloc = true; int err = 0; + if (unlikely(IS_IMMUTABLE(inode))) + return VM_FAULT_SIGBUS; + if (unlikely(f2fs_cp_error(sbi))) { err = -EIO; goto err; @@ -429,9 +432,13 @@ /* handle inline data case */ if (f2fs_has_inline_data(inode) || f2fs_has_inline_dentry(inode)) { - if (whence == SEEK_HOLE) + if (whence == SEEK_HOLE) { data_ofs = isize; - goto found; + goto found; + } else if (whence == SEEK_DATA) { + data_ofs = offset; + goto found; + } } pgofs = (pgoff_t)(offset >> PAGE_SHIFT); @@ -777,6 +784,10 @@ return -EIO; } + err = dquot_initialize(inode); + if (err) + return err; + /* we should check inline_data size */ if (!f2fs_may_inline_data(inode)) { err = f2fs_convert_inline_inode(inode); @@ -858,7 +869,8 @@ if (ia_valid & ATTR_MODE) { umode_t mode = attr->ia_mode; - if (!in_group_p(inode->i_gid) && !capable(CAP_FSETID)) + if (!in_group_p(inode->i_gid) && + !capable_wrt_inode_uidgid(inode, CAP_FSETID)) mode &= ~S_ISGID; set_acl_inode(inode, mode); } @@ -875,6 +887,14 @@ if (unlikely(f2fs_cp_error(F2FS_I_SB(inode)))) return -EIO; + if (unlikely(IS_IMMUTABLE(inode))) + return -EPERM; + + if (unlikely(IS_APPEND(inode) && + (attr->ia_valid & (ATTR_MODE | ATTR_UID | + ATTR_GID | ATTR_TIMES_SET)))) + return -EPERM; + if ((attr->ia_valid & ATTR_SIZE) && !f2fs_is_compress_backend_ready(inode)) return -EOPNOTSUPP; @@ -1837,6 +1857,8 @@ if (iflags & F2FS_COMPR_FL) { if (!f2fs_may_compress(inode)) return -EINVAL; + if (S_ISREG(inode->i_mode) && inode->i_size) + return -EINVAL; set_compress_context(inode); } @@ -3889,6 +3911,11 @@ inode_lock(inode); } + if (unlikely(IS_IMMUTABLE(inode))) { + ret = -EPERM; + goto unlock; + } + ret = generic_write_checks(iocb, from); if (ret > 0) { bool preallocated = false; @@ -3953,6 +3980,7 @@ if (ret > 0) f2fs_update_iostat(F2FS_I_SB(inode), APP_WRITE_IO, ret); } +unlock: inode_unlock(inode); out: trace_f2fs_file_write_iter(inode, iocb->ki_pos, --- linux-azure-5.8-5.8.0.orig/fs/f2fs/inline.c +++ linux-azure-5.8-5.8.0/fs/f2fs/inline.c @@ -190,6 +190,10 @@ if (!f2fs_has_inline_data(inode)) return 0; + err = dquot_initialize(inode); + if (err) + return err; + page = f2fs_grab_cache_page(inode->i_mapping, 0, false); if (!page) return -ENOMEM; @@ -253,7 +257,7 @@ return 0; } -bool f2fs_recover_inline_data(struct inode *inode, struct page *npage) +int f2fs_recover_inline_data(struct inode *inode, struct page *npage) { struct f2fs_sb_info *sbi = F2FS_I_SB(inode); struct f2fs_inode *ri = NULL; @@ -275,7 +279,8 @@ ri && (ri->i_inline & F2FS_INLINE_DATA)) { process_inline: ipage = f2fs_get_node_page(sbi, inode->i_ino); - f2fs_bug_on(sbi, IS_ERR(ipage)); + if (IS_ERR(ipage)) + return PTR_ERR(ipage); f2fs_wait_on_page_writeback(ipage, NODE, true, true); @@ -288,21 +293,25 @@ set_page_dirty(ipage); f2fs_put_page(ipage, 1); - return true; + return 1; } if (f2fs_has_inline_data(inode)) { ipage = f2fs_get_node_page(sbi, inode->i_ino); - f2fs_bug_on(sbi, IS_ERR(ipage)); + if (IS_ERR(ipage)) + return PTR_ERR(ipage); f2fs_truncate_inline_inode(inode, ipage, 0); clear_inode_flag(inode, FI_INLINE_DATA); f2fs_put_page(ipage, 1); } else if (ri && (ri->i_inline & F2FS_INLINE_DATA)) { - if (f2fs_truncate_blocks(inode, 0, false)) - return false; + int ret; + + ret = f2fs_truncate_blocks(inode, 0, false); + if (ret) + return ret; goto process_inline; } - return false; + return 0; } struct f2fs_dir_entry *f2fs_find_in_inline_dir(struct inode *dir, --- linux-azure-5.8-5.8.0.orig/fs/f2fs/inode.c +++ linux-azure-5.8-5.8.0/fs/f2fs/inode.c @@ -287,11 +287,19 @@ return false; } + if ((fi->i_flags & F2FS_CASEFOLD_FL) && !f2fs_sb_has_casefold(sbi)) { + set_sbi_flag(sbi, SBI_NEED_FSCK); + f2fs_warn(sbi, "%s: inode (ino=%lx) has casefold flag, but casefold feature is off", + __func__, inode->i_ino); + return false; + } + if (f2fs_has_extra_attr(inode) && f2fs_sb_has_compression(sbi) && fi->i_flags & F2FS_COMPR_FL && F2FS_FITS_IN_INODE(ri, fi->i_extra_isize, i_log_cluster_size)) { if (ri->i_compress_algorithm >= COMPRESS_MAX) { + set_sbi_flag(sbi, SBI_NEED_FSCK); f2fs_warn(sbi, "%s: inode (ino=%lx) has unsupported " "compress algorithm: %u, run fsck to fix", __func__, inode->i_ino, @@ -300,6 +308,7 @@ } if (le64_to_cpu(ri->i_compr_blocks) > SECTOR_TO_BLOCK(inode->i_blocks)) { + set_sbi_flag(sbi, SBI_NEED_FSCK); f2fs_warn(sbi, "%s: inode (ino=%lx) has inconsistent " "i_compr_blocks:%llu, i_blocks:%llu, run fsck to fix", __func__, inode->i_ino, @@ -309,6 +318,7 @@ } if (ri->i_log_cluster_size < MIN_COMPRESS_LOG_SIZE || ri->i_log_cluster_size > MAX_COMPRESS_LOG_SIZE) { + set_sbi_flag(sbi, SBI_NEED_FSCK); f2fs_warn(sbi, "%s: inode (ino=%lx) has unsupported " "log cluster size: %u, run fsck to fix", __func__, inode->i_ino, --- linux-azure-5.8-5.8.0.orig/fs/f2fs/node.c +++ linux-azure-5.8-5.8.0/fs/f2fs/node.c @@ -62,8 +62,8 @@ sizeof(struct free_nid)) >> PAGE_SHIFT; res = mem_size < ((avail_ram * nm_i->ram_thresh / 100) >> 2); } else if (type == NAT_ENTRIES) { - mem_size = (nm_i->nat_cnt * sizeof(struct nat_entry)) >> - PAGE_SHIFT; + mem_size = (nm_i->nat_cnt[TOTAL_NAT] * + sizeof(struct nat_entry)) >> PAGE_SHIFT; res = mem_size < ((avail_ram * nm_i->ram_thresh / 100) >> 2); if (excess_cached_nats(sbi)) res = false; @@ -109,7 +109,7 @@ static struct page *get_current_nat_page(struct f2fs_sb_info *sbi, nid_t nid) { - return f2fs_get_meta_page_nofail(sbi, current_nat_addr(sbi, nid)); + return f2fs_get_meta_page_retry(sbi, current_nat_addr(sbi, nid)); } static struct page *get_next_nat_page(struct f2fs_sb_info *sbi, nid_t nid) @@ -177,7 +177,8 @@ list_add_tail(&ne->list, &nm_i->nat_entries); spin_unlock(&nm_i->nat_list_lock); - nm_i->nat_cnt++; + nm_i->nat_cnt[TOTAL_NAT]++; + nm_i->nat_cnt[RECLAIMABLE_NAT]++; return ne; } @@ -207,7 +208,8 @@ static void __del_from_nat_cache(struct f2fs_nm_info *nm_i, struct nat_entry *e) { radix_tree_delete(&nm_i->nat_root, nat_get_nid(e)); - nm_i->nat_cnt--; + nm_i->nat_cnt[TOTAL_NAT]--; + nm_i->nat_cnt[RECLAIMABLE_NAT]--; __free_nat_entry(e); } @@ -253,7 +255,8 @@ if (get_nat_flag(ne, IS_DIRTY)) goto refresh_list; - nm_i->dirty_nat_cnt++; + nm_i->nat_cnt[DIRTY_NAT]++; + nm_i->nat_cnt[RECLAIMABLE_NAT]--; set_nat_flag(ne, IS_DIRTY, true); refresh_list: spin_lock(&nm_i->nat_list_lock); @@ -273,7 +276,8 @@ set_nat_flag(ne, IS_DIRTY, false); set->entry_cnt--; - nm_i->dirty_nat_cnt--; + nm_i->nat_cnt[DIRTY_NAT]--; + nm_i->nat_cnt[RECLAIMABLE_NAT]++; } static unsigned int __gang_lookup_nat_set(struct f2fs_nm_info *nm_i, @@ -1924,8 +1928,12 @@ goto continue_unlock; } - /* flush inline_data, if it's async context. */ - if (do_balance && is_inline_node(page)) { + /* flush inline_data/inode, if it's async context. */ + if (!do_balance) + goto write_node; + + /* flush inline_data */ + if (is_inline_node(page)) { clear_inline_node(page); unlock_page(page); flush_inline_data(sbi, ino_of_node(page)); @@ -1938,7 +1946,7 @@ if (flush_dirty_inode(page)) goto lock_node; } - +write_node: f2fs_wait_on_page_writeback(page, NODE, true, true); if (!clear_page_dirty_for_io(page)) @@ -2371,6 +2379,9 @@ if (unlikely(nid >= nm_i->max_nid)) nid = 0; + if (unlikely(nid % NAT_ENTRY_PER_BLOCK)) + nid = NAT_BLOCK_OFFSET(nid) * NAT_ENTRY_PER_BLOCK; + /* Enough entries */ if (nm_i->nid_cnt[FREE_NID] >= NAT_ENTRY_PER_BLOCK) return 0; @@ -2572,7 +2583,7 @@ return nr - nr_shrink; } -void f2fs_recover_inline_xattr(struct inode *inode, struct page *page) +int f2fs_recover_inline_xattr(struct inode *inode, struct page *page) { void *src_addr, *dst_addr; size_t inline_size; @@ -2580,7 +2591,8 @@ struct f2fs_inode *ri; ipage = f2fs_get_node_page(F2FS_I_SB(inode), inode->i_ino); - f2fs_bug_on(F2FS_I_SB(inode), IS_ERR(ipage)); + if (IS_ERR(ipage)) + return PTR_ERR(ipage); ri = F2FS_INODE(page); if (ri->i_inline & F2FS_INLINE_XATTR) { @@ -2599,6 +2611,7 @@ update_inode: f2fs_update_inode(inode, ipage); f2fs_put_page(ipage, 1); + return 0; } int f2fs_recover_xattr_data(struct inode *inode, struct page *page) @@ -2937,14 +2950,17 @@ LIST_HEAD(sets); int err = 0; - /* during unmount, let's flush nat_bits before checking dirty_nat_cnt */ + /* + * during unmount, let's flush nat_bits before checking + * nat_cnt[DIRTY_NAT]. + */ if (enabled_nat_bits(sbi, cpc)) { down_write(&nm_i->nat_tree_lock); remove_nats_in_journal(sbi); up_write(&nm_i->nat_tree_lock); } - if (!nm_i->dirty_nat_cnt) + if (!nm_i->nat_cnt[DIRTY_NAT]) return 0; down_write(&nm_i->nat_tree_lock); @@ -2955,7 +2971,8 @@ * into nat entry set. */ if (enabled_nat_bits(sbi, cpc) || - !__has_cursum_space(journal, nm_i->dirty_nat_cnt, NAT_JOURNAL)) + !__has_cursum_space(journal, + nm_i->nat_cnt[DIRTY_NAT], NAT_JOURNAL)) remove_nats_in_journal(sbi); while ((found = __gang_lookup_nat_set(nm_i, @@ -3079,7 +3096,6 @@ F2FS_RESERVED_NODE_NUM; nm_i->nid_cnt[FREE_NID] = 0; nm_i->nid_cnt[PREALLOC_NID] = 0; - nm_i->nat_cnt = 0; nm_i->ram_thresh = DEF_RAM_THRESHOLD; nm_i->ra_nid_pages = DEF_RA_NID_PAGES; nm_i->dirty_nats_ratio = DEF_DIRTY_NAT_RATIO_THRESHOLD; @@ -3216,7 +3232,7 @@ __del_from_nat_cache(nm_i, natvec[idx]); } } - f2fs_bug_on(sbi, nm_i->nat_cnt); + f2fs_bug_on(sbi, nm_i->nat_cnt[TOTAL_NAT]); /* destroy nat set cache */ nid = 0; --- linux-azure-5.8-5.8.0.orig/fs/f2fs/node.h +++ linux-azure-5.8-5.8.0/fs/f2fs/node.h @@ -126,13 +126,13 @@ static inline bool excess_dirty_nats(struct f2fs_sb_info *sbi) { - return NM_I(sbi)->dirty_nat_cnt >= NM_I(sbi)->max_nid * + return NM_I(sbi)->nat_cnt[DIRTY_NAT] >= NM_I(sbi)->max_nid * NM_I(sbi)->dirty_nats_ratio / 100; } static inline bool excess_cached_nats(struct f2fs_sb_info *sbi) { - return NM_I(sbi)->nat_cnt >= DEF_NAT_CACHE_THRESHOLD; + return NM_I(sbi)->nat_cnt[TOTAL_NAT] >= DEF_NAT_CACHE_THRESHOLD; } static inline bool excess_dirty_nodes(struct f2fs_sb_info *sbi) --- linux-azure-5.8-5.8.0.orig/fs/f2fs/recovery.c +++ linux-azure-5.8-5.8.0/fs/f2fs/recovery.c @@ -544,7 +544,9 @@ /* step 1: recover xattr */ if (IS_INODE(page)) { - f2fs_recover_inline_xattr(inode, page); + err = f2fs_recover_inline_xattr(inode, page); + if (err) + goto out; } else if (f2fs_has_xattr_block(ofs_of_node(page))) { err = f2fs_recover_xattr_data(inode, page); if (!err) @@ -553,8 +555,12 @@ } /* step 2: recover inline data */ - if (f2fs_recover_inline_data(inode, page)) + err = f2fs_recover_inline_data(inode, page); + if (err) { + if (err == 1) + err = 0; goto out; + } /* step 3: recover data indices */ start = f2fs_start_bidx_of_node(ofs_of_node(page), inode); --- linux-azure-5.8-5.8.0.orig/fs/f2fs/segment.c +++ linux-azure-5.8-5.8.0/fs/f2fs/segment.c @@ -2318,7 +2318,9 @@ */ struct page *f2fs_get_sum_page(struct f2fs_sb_info *sbi, unsigned int segno) { - return f2fs_get_meta_page_nofail(sbi, GET_SUM_BLOCK(sbi, segno)); + if (unlikely(f2fs_cp_error(sbi))) + return ERR_PTR(-EIO); + return f2fs_get_meta_page_retry(sbi, GET_SUM_BLOCK(sbi, segno)); } void f2fs_update_meta_page(struct f2fs_sb_info *sbi, @@ -2590,7 +2592,11 @@ __next_free_blkoff(sbi, curseg, 0); sum_page = f2fs_get_sum_page(sbi, new_segno); - f2fs_bug_on(sbi, IS_ERR(sum_page)); + if (IS_ERR(sum_page)) { + /* GC won't be able to use stale summary pages by cp_error */ + memset(curseg->sum_blk, 0, SUM_ENTRY_SIZE); + return; + } sum_node = (struct f2fs_summary_block *)page_address(sum_page); memcpy(curseg->sum_blk, sum_node, SUM_ENTRY_SIZE); f2fs_put_page(sum_page, 1); @@ -3759,7 +3765,7 @@ static struct page *get_current_sit_page(struct f2fs_sb_info *sbi, unsigned int segno) { - return f2fs_get_meta_page_nofail(sbi, current_sit_addr(sbi, segno)); + return f2fs_get_meta_page(sbi, current_sit_addr(sbi, segno)); } static struct page *get_next_sit_page(struct f2fs_sb_info *sbi, --- linux-azure-5.8-5.8.0.orig/fs/f2fs/shrinker.c +++ linux-azure-5.8-5.8.0/fs/f2fs/shrinker.c @@ -18,9 +18,7 @@ static unsigned long __count_nat_entries(struct f2fs_sb_info *sbi) { - long count = NM_I(sbi)->nat_cnt - NM_I(sbi)->dirty_nat_cnt; - - return count > 0 ? count : 0; + return NM_I(sbi)->nat_cnt[RECLAIMABLE_NAT]; } static unsigned long __count_free_nids(struct f2fs_sb_info *sbi) --- linux-azure-5.8-5.8.0.orig/fs/f2fs/super.c +++ linux-azure-5.8-5.8.0/fs/f2fs/super.c @@ -1173,6 +1173,9 @@ int i; bool dropped; + /* unregister procfs/sysfs entries in advance to avoid race case */ + f2fs_unregister_sysfs(sbi); + f2fs_quota_off_umount(sb); /* prevent remaining shrinker jobs */ @@ -1238,8 +1241,6 @@ kvfree(sbi->ckpt); - f2fs_unregister_sysfs(sbi); - sb->s_fs_info = NULL; if (sbi->s_chksum_driver) crypto_free_shash(sbi->s_chksum_driver); @@ -1712,6 +1713,9 @@ static void f2fs_enable_checkpoint(struct f2fs_sb_info *sbi) { + /* we should flush all the data to keep data consistency */ + sync_inodes_sb(sbi->sb); + down_write(&sbi->gc_lock); f2fs_dirty_to_prefree(sbi); @@ -2668,7 +2672,6 @@ block_t total_sections, blocks_per_seg; struct f2fs_super_block *raw_super = (struct f2fs_super_block *) (bh->b_data + F2FS_SUPER_OFFSET); - unsigned int blocksize; size_t crc_offset = 0; __u32 crc = 0; @@ -2702,10 +2705,10 @@ } /* Currently, support only 4KB block size */ - blocksize = 1 << le32_to_cpu(raw_super->log_blocksize); - if (blocksize != F2FS_BLKSIZE) { - f2fs_info(sbi, "Invalid blocksize (%u), supports only 4KB", - blocksize); + if (le32_to_cpu(raw_super->log_blocksize) != F2FS_BLKSIZE_BITS) { + f2fs_info(sbi, "Invalid log_blocksize (%u), supports only %u", + le32_to_cpu(raw_super->log_blocksize), + F2FS_BLKSIZE_BITS); return -EFSCORRUPTED; } @@ -2781,6 +2784,12 @@ segment_count, dev_seg_count); return -EFSCORRUPTED; } + } else { + if (__F2FS_HAS_FEATURE(raw_super, F2FS_FEATURE_BLKZONED) && + !bdev_is_zoned(sbi->sb->s_bdev)) { + f2fs_info(sbi, "Zoned block device path is missing"); + return -EFSCORRUPTED; + } } if (secs_per_zone > total_sections || !secs_per_zone) { --- linux-azure-5.8-5.8.0.orig/fs/f2fs/sysfs.c +++ linux-azure-5.8-5.8.0/fs/f2fs/sysfs.c @@ -223,6 +223,13 @@ } #endif +static ssize_t main_blkaddr_show(struct f2fs_attr *a, + struct f2fs_sb_info *sbi, char *buf) +{ + return snprintf(buf, PAGE_SIZE, "%llu\n", + (unsigned long long)MAIN_BLKADDR(sbi)); +} + static ssize_t f2fs_sbi_show(struct f2fs_attr *a, struct f2fs_sb_info *sbi, char *buf) { @@ -522,7 +529,6 @@ F2FS_RW_ATTR(F2FS_SBI, f2fs_sb_info, gc_idle, gc_mode); F2FS_RW_ATTR(F2FS_SBI, f2fs_sb_info, gc_urgent, gc_mode); F2FS_RW_ATTR(SM_INFO, f2fs_sm_info, reclaim_segments, rec_prefree_segments); -F2FS_RW_ATTR(SM_INFO, f2fs_sm_info, main_blkaddr, main_blkaddr); F2FS_RW_ATTR(DCC_INFO, discard_cmd_control, max_small_discards, max_discards); F2FS_RW_ATTR(DCC_INFO, discard_cmd_control, discard_granularity, discard_granularity); F2FS_RW_ATTR(RESERVED_BLOCKS, f2fs_sb_info, reserved_blocks, reserved_blocks); @@ -565,6 +571,7 @@ F2FS_GENERAL_RO_ATTR(unusable); F2FS_GENERAL_RO_ATTR(encoding); F2FS_GENERAL_RO_ATTR(mounted_time_sec); +F2FS_GENERAL_RO_ATTR(main_blkaddr); #ifdef CONFIG_F2FS_STAT_FS F2FS_STAT_ATTR(STAT_INFO, f2fs_stat_info, cp_foreground_calls, cp_count); F2FS_STAT_ATTR(STAT_INFO, f2fs_stat_info, cp_background_calls, bg_cp_count); @@ -957,4 +964,5 @@ } kobject_del(&sbi->s_kobj); kobject_put(&sbi->s_kobj); + wait_for_completion(&sbi->s_kobj_unregister); } --- linux-azure-5.8-5.8.0.orig/fs/fat/fatent.c +++ linux-azure-5.8-5.8.0/fs/fat/fatent.c @@ -657,6 +657,9 @@ unsigned long ra_pages = sb->s_bdi->ra_pages; unsigned int reada_blocks; + if (fatent->entry >= ent_limit) + return; + if (ra_pages > sb->s_bdi->io_pages) ra_pages = rounddown(ra_pages, sb->s_bdi->io_pages); reada_blocks = ra_pages << (PAGE_SHIFT - sb->s_blocksize_bits + 1); --- linux-azure-5.8-5.8.0.orig/fs/fcntl.c +++ linux-azure-5.8-5.8.0/fs/fcntl.c @@ -32,7 +32,7 @@ #define SETFL_MASK (O_APPEND | O_NONBLOCK | O_NDELAY | O_DIRECT | O_NOATIME) -static int setfl(int fd, struct file * filp, unsigned long arg) +int setfl(int fd, struct file *filp, unsigned long arg) { struct inode * inode = file_inode(filp); int error = 0; @@ -63,6 +63,8 @@ if (filp->f_op->check_flags) error = filp->f_op->check_flags(arg); + if (!error && filp->f_op->setfl) + error = filp->f_op->setfl(filp, arg); if (error) return error; @@ -83,6 +85,7 @@ out: return error; } +EXPORT_SYMBOL_GPL(setfl); static void f_modown(struct file *filp, struct pid *pid, enum pid_type type, int force) @@ -781,9 +784,10 @@ { struct task_struct *p; enum pid_type type; + unsigned long flags; struct pid *pid; - read_lock(&fown->lock); + read_lock_irqsave(&fown->lock, flags); type = fown->pid_type; pid = fown->pid; @@ -804,7 +808,7 @@ read_unlock(&tasklist_lock); } out_unlock_fown: - read_unlock(&fown->lock); + read_unlock_irqrestore(&fown->lock, flags); } static void send_sigurg_to_task(struct task_struct *p, @@ -819,9 +823,10 @@ struct task_struct *p; enum pid_type type; struct pid *pid; + unsigned long flags; int ret = 0; - read_lock(&fown->lock); + read_lock_irqsave(&fown->lock, flags); type = fown->pid_type; pid = fown->pid; @@ -844,7 +849,7 @@ read_unlock(&tasklist_lock); } out_unlock_fown: - read_unlock(&fown->lock); + read_unlock_irqrestore(&fown->lock, flags); return ret; } --- linux-azure-5.8-5.8.0.orig/fs/file.c +++ linux-azure-5.8-5.8.0/fs/file.c @@ -676,6 +676,7 @@ *res = NULL; return -ENOENT; } +EXPORT_SYMBOL(__close_fd_get_file); void do_close_on_exec(struct files_struct *files) { --- linux-azure-5.8-5.8.0.orig/fs/file_table.c +++ linux-azure-5.8-5.8.0/fs/file_table.c @@ -162,6 +162,7 @@ } return ERR_PTR(-ENFILE); } +EXPORT_SYMBOL_GPL(alloc_empty_file); /* * Variant of alloc_empty_file() that doesn't check and modify nr_files. @@ -339,7 +340,7 @@ if (likely(!in_interrupt() && !(task->flags & PF_KTHREAD))) { init_task_work(&file->f_u.fu_rcuhead, ____fput); - if (!task_work_add(task, &file->f_u.fu_rcuhead, true)) + if (!task_work_add(task, &file->f_u.fu_rcuhead, TWA_RESUME)) return; /* * After this task has run exit_task_work(), @@ -376,6 +377,7 @@ } EXPORT_SYMBOL(fput); +EXPORT_SYMBOL_GPL(__fput_sync); void __init files_init(void) { --- linux-azure-5.8-5.8.0.orig/fs/fs-writeback.c +++ linux-azure-5.8-5.8.0/fs/fs-writeback.c @@ -42,7 +42,6 @@ struct wb_writeback_work { long nr_pages; struct super_block *sb; - unsigned long *older_than_this; enum writeback_sync_modes sync_mode; unsigned int tagged_writepages:1; unsigned int for_kupdate:1; @@ -144,7 +143,9 @@ struct bdi_writeback *wb) { assert_spin_locked(&wb->list_lock); + assert_spin_locked(&inode->i_lock); + inode->i_state &= ~I_SYNC_QUEUED; list_del_init(&inode->i_io_list); wb_io_lists_depopulated(wb); } @@ -1122,7 +1123,9 @@ struct bdi_writeback *wb; wb = inode_to_wb_and_lock_list(inode); + spin_lock(&inode->i_lock); inode_io_list_del_locked(inode, wb); + spin_unlock(&inode->i_lock); spin_unlock(&wb->list_lock); } EXPORT_SYMBOL(inode_io_list_del); @@ -1172,8 +1175,10 @@ * the case then the inode must have been redirtied while it was being written * out and we don't reset its dirtied_when. */ -static void redirty_tail(struct inode *inode, struct bdi_writeback *wb) +static void redirty_tail_locked(struct inode *inode, struct bdi_writeback *wb) { + assert_spin_locked(&inode->i_lock); + if (!list_empty(&wb->b_dirty)) { struct inode *tail; @@ -1182,6 +1187,14 @@ inode->dirtied_when = jiffies; } inode_io_list_move_locked(inode, wb, &wb->b_dirty); + inode->i_state &= ~I_SYNC_QUEUED; +} + +static void redirty_tail(struct inode *inode, struct bdi_writeback *wb) +{ + spin_lock(&inode->i_lock); + redirty_tail_locked(inode, wb); + spin_unlock(&inode->i_lock); } /* @@ -1220,16 +1233,13 @@ #define EXPIRE_DIRTY_ATIME 0x0001 /* - * Move expired (dirtied before work->older_than_this) dirty inodes from + * Move expired (dirtied before dirtied_before) dirty inodes from * @delaying_queue to @dispatch_queue. */ static int move_expired_inodes(struct list_head *delaying_queue, struct list_head *dispatch_queue, - int flags, - struct wb_writeback_work *work) + unsigned long dirtied_before) { - unsigned long *older_than_this = NULL; - unsigned long expire_time; LIST_HEAD(tmp); struct list_head *pos, *node; struct super_block *sb = NULL; @@ -1237,21 +1247,15 @@ int do_sb_sort = 0; int moved = 0; - if ((flags & EXPIRE_DIRTY_ATIME) == 0) - older_than_this = work->older_than_this; - else if (!work->for_sync) { - expire_time = jiffies - (dirtytime_expire_interval * HZ); - older_than_this = &expire_time; - } while (!list_empty(delaying_queue)) { inode = wb_inode(delaying_queue->prev); - if (older_than_this && - inode_dirtied_after(inode, *older_than_this)) + if (inode_dirtied_after(inode, dirtied_before)) break; list_move(&inode->i_io_list, &tmp); moved++; - if (flags & EXPIRE_DIRTY_ATIME) - set_bit(__I_DIRTY_TIME_EXPIRED, &inode->i_state); + spin_lock(&inode->i_lock); + inode->i_state |= I_SYNC_QUEUED; + spin_unlock(&inode->i_lock); if (sb_is_blkdev_sb(inode->i_sb)) continue; if (sb && sb != inode->i_sb) @@ -1289,18 +1293,22 @@ * | * +--> dequeue for IO */ -static void queue_io(struct bdi_writeback *wb, struct wb_writeback_work *work) +static void queue_io(struct bdi_writeback *wb, struct wb_writeback_work *work, + unsigned long dirtied_before) { int moved; + unsigned long time_expire_jif = dirtied_before; assert_spin_locked(&wb->list_lock); list_splice_init(&wb->b_more_io, &wb->b_io); - moved = move_expired_inodes(&wb->b_dirty, &wb->b_io, 0, work); + moved = move_expired_inodes(&wb->b_dirty, &wb->b_io, dirtied_before); + if (!work->for_sync) + time_expire_jif = jiffies - dirtytime_expire_interval * HZ; moved += move_expired_inodes(&wb->b_dirty_time, &wb->b_io, - EXPIRE_DIRTY_ATIME, work); + time_expire_jif); if (moved) wb_io_lists_populated(wb); - trace_writeback_queue_io(wb, work, moved); + trace_writeback_queue_io(wb, work, dirtied_before, moved); } static int write_inode(struct inode *inode, struct writeback_control *wbc) @@ -1394,7 +1402,7 @@ * writeback is not making progress due to locked * buffers. Skip this inode for now. */ - redirty_tail(inode, wb); + redirty_tail_locked(inode, wb); return; } @@ -1414,7 +1422,7 @@ * retrying writeback of the dirty page/inode * that cannot be performed immediately. */ - redirty_tail(inode, wb); + redirty_tail_locked(inode, wb); } } else if (inode->i_state & I_DIRTY) { /* @@ -1422,10 +1430,11 @@ * such as delayed allocation during submission or metadata * updates after data IO completion. */ - redirty_tail(inode, wb); + redirty_tail_locked(inode, wb); } else if (inode->i_state & I_DIRTY_TIME) { inode->dirtied_when = jiffies; inode_io_list_move_locked(inode, wb, &wb->b_dirty_time); + inode->i_state &= ~I_SYNC_QUEUED; } else { /* The inode is clean. Remove from writeback lists. */ inode_io_list_del_locked(inode, wb); @@ -1465,25 +1474,25 @@ } /* + * If the inode has dirty timestamps and we need to write them, call + * mark_inode_dirty_sync() to notify the filesystem about it and to + * change I_DIRTY_TIME into I_DIRTY_SYNC. + */ + if ((inode->i_state & I_DIRTY_TIME) && + (wbc->sync_mode == WB_SYNC_ALL || wbc->for_sync || + time_after(jiffies, inode->dirtied_time_when + + dirtytime_expire_interval * HZ))) { + trace_writeback_lazytime(inode); + mark_inode_dirty_sync(inode); + } + + /* * Some filesystems may redirty the inode during the writeback * due to delalloc, clear dirty metadata flags right before * write_inode() */ spin_lock(&inode->i_lock); - dirty = inode->i_state & I_DIRTY; - if (inode->i_state & I_DIRTY_TIME) { - if ((dirty & I_DIRTY_INODE) || - wbc->sync_mode == WB_SYNC_ALL || - unlikely(inode->i_state & I_DIRTY_TIME_EXPIRED) || - unlikely(time_after(jiffies, - (inode->dirtied_time_when + - dirtytime_expire_interval * HZ)))) { - dirty |= I_DIRTY_TIME | I_DIRTY_TIME_EXPIRED; - trace_writeback_lazytime(inode); - } - } else - inode->i_state &= ~I_DIRTY_TIME_EXPIRED; inode->i_state &= ~dirty; /* @@ -1504,8 +1513,6 @@ spin_unlock(&inode->i_lock); - if (dirty & I_DIRTY_TIME) - mark_inode_dirty_sync(inode); /* Don't write the inode if only I_DIRTY_PAGES was set */ if (dirty & ~I_DIRTY_PAGES) { int err = write_inode(inode, wbc); @@ -1669,8 +1676,8 @@ */ spin_lock(&inode->i_lock); if (inode->i_state & (I_NEW | I_FREEING | I_WILL_FREE)) { + redirty_tail_locked(inode, wb); spin_unlock(&inode->i_lock); - redirty_tail(inode, wb); continue; } if ((inode->i_state & I_SYNC) && wbc.sync_mode != WB_SYNC_ALL) { @@ -1811,7 +1818,7 @@ blk_start_plug(&plug); spin_lock(&wb->list_lock); if (list_empty(&wb->b_io)) - queue_io(wb, &work); + queue_io(wb, &work, jiffies); __writeback_inodes_wb(wb, &work); spin_unlock(&wb->list_lock); blk_finish_plug(&plug); @@ -1831,7 +1838,7 @@ * takes longer than a dirty_writeback_interval interval, then leave a * one-second gap. * - * older_than_this takes precedence over nr_to_write. So we'll only write back + * dirtied_before takes precedence over nr_to_write. So we'll only write back * all dirty pages if they are all attached to "old" mappings. */ static long wb_writeback(struct bdi_writeback *wb, @@ -1839,14 +1846,11 @@ { unsigned long wb_start = jiffies; long nr_pages = work->nr_pages; - unsigned long oldest_jif; + unsigned long dirtied_before = jiffies; struct inode *inode; long progress; struct blk_plug plug; - oldest_jif = jiffies; - work->older_than_this = &oldest_jif; - blk_start_plug(&plug); spin_lock(&wb->list_lock); for (;;) { @@ -1880,14 +1884,14 @@ * safe. */ if (work->for_kupdate) { - oldest_jif = jiffies - + dirtied_before = jiffies - msecs_to_jiffies(dirty_expire_interval * 10); } else if (work->for_background) - oldest_jif = jiffies; + dirtied_before = jiffies; trace_writeback_start(wb, work); if (list_empty(&wb->b_io)) - queue_io(wb, work); + queue_io(wb, work, dirtied_before); if (work->sb) progress = writeback_sb_inodes(work->sb, wb, work); else @@ -2289,11 +2293,12 @@ inode->i_state |= flags; /* - * If the inode is being synced, just update its dirty state. - * The unlocker will place the inode on the appropriate - * superblock list, based upon its state. + * If the inode is queued for writeback by flush worker, just + * update its dirty state. Once the flush worker is done with + * the inode it will place it on the appropriate superblock + * list, based upon its state. */ - if (inode->i_state & I_SYNC) + if (inode->i_state & I_SYNC_QUEUED) goto out_unlock_inode; /* --- linux-azure-5.8-5.8.0.orig/fs/fuse/acl.c +++ linux-azure-5.8-5.8.0/fs/fuse/acl.c @@ -19,6 +19,9 @@ void *value = NULL; struct posix_acl *acl; + if (fuse_is_bad(inode)) + return ERR_PTR(-EIO); + if (!fc->posix_acl || fc->no_getxattr) return NULL; @@ -53,6 +56,9 @@ const char *name; int ret; + if (fuse_is_bad(inode)) + return -EIO; + if (!fc->posix_acl || fc->no_setxattr) return -EOPNOTSUPP; --- linux-azure-5.8-5.8.0.orig/fs/fuse/dev.c +++ linux-azure-5.8-5.8.0/fs/fuse/dev.c @@ -785,15 +785,16 @@ struct page *newpage; struct pipe_buffer *buf = cs->pipebufs; + get_page(oldpage); err = unlock_request(cs->req); if (err) - return err; + goto out_put_old; fuse_copy_finish(cs); err = pipe_buf_confirm(cs->pipe, buf); if (err) - return err; + goto out_put_old; BUG_ON(!cs->nr_segs); cs->currbuf = buf; @@ -833,7 +834,7 @@ err = replace_page_cache_page(oldpage, newpage, GFP_KERNEL); if (err) { unlock_page(newpage); - return err; + goto out_put_old; } get_page(newpage); @@ -852,14 +853,19 @@ if (err) { unlock_page(newpage); put_page(newpage); - return err; + goto out_put_old; } unlock_page(oldpage); + /* Drop ref for ap->pages[] array */ put_page(oldpage); cs->len = 0; - return 0; + err = 0; +out_put_old: + /* Drop ref obtained in this function */ + put_page(oldpage); + return err; out_fallback_unlock: unlock_page(newpage); @@ -868,10 +874,10 @@ cs->offset = buf->offset; err = lock_request(cs->req); - if (err) - return err; + if (!err) + err = 1; - return 1; + goto out_put_old; } static int fuse_ref_page(struct fuse_copy_state *cs, struct page *page, @@ -883,14 +889,16 @@ if (cs->nr_segs >= cs->pipe->max_usage) return -EIO; + get_page(page); err = unlock_request(cs->req); - if (err) + if (err) { + put_page(page); return err; + } fuse_copy_finish(cs); buf = cs->pipebufs; - get_page(page); buf->page = page; buf->offset = offset; buf->len = count; --- linux-azure-5.8-5.8.0.orig/fs/fuse/dir.c +++ linux-azure-5.8-5.8.0/fs/fuse/dir.c @@ -201,7 +201,7 @@ int ret; inode = d_inode_rcu(entry); - if (inode && is_bad_inode(inode)) + if (inode && fuse_is_bad(inode)) goto invalid; else if (time_before64(fuse_dentry_time(entry), get_jiffies_64()) || (flags & LOOKUP_REVAL)) { @@ -386,6 +386,9 @@ bool outarg_valid = true; bool locked; + if (fuse_is_bad(dir)) + return ERR_PTR(-EIO); + locked = fuse_lock_inode(dir); err = fuse_lookup_name(dir->i_sb, get_node_id(dir), &entry->d_name, &outarg, &inode); @@ -529,6 +532,9 @@ struct fuse_conn *fc = get_fuse_conn(dir); struct dentry *res = NULL; + if (fuse_is_bad(dir)) + return -EIO; + if (d_in_lookup(entry)) { res = fuse_lookup(dir, entry, 0); if (IS_ERR(res)) @@ -577,6 +583,9 @@ int err; struct fuse_forget_link *forget; + if (fuse_is_bad(dir)) + return -EIO; + forget = fuse_alloc_forget(); if (!forget) return -ENOMEM; @@ -704,6 +713,9 @@ struct fuse_conn *fc = get_fuse_conn(dir); FUSE_ARGS(args); + if (fuse_is_bad(dir)) + return -EIO; + args.opcode = FUSE_UNLINK; args.nodeid = get_node_id(dir); args.in_numargs = 1; @@ -740,6 +752,9 @@ struct fuse_conn *fc = get_fuse_conn(dir); FUSE_ARGS(args); + if (fuse_is_bad(dir)) + return -EIO; + args.opcode = FUSE_RMDIR; args.nodeid = get_node_id(dir); args.in_numargs = 1; @@ -818,6 +833,9 @@ struct fuse_conn *fc = get_fuse_conn(olddir); int err; + if (fuse_is_bad(olddir)) + return -EIO; + if (flags & ~(RENAME_NOREPLACE | RENAME_EXCHANGE | RENAME_WHITEOUT)) return -EINVAL; @@ -953,7 +971,7 @@ if (!err) { if (fuse_invalid_attr(&outarg.attr) || (inode->i_mode ^ outarg.attr.mode) & S_IFMT) { - make_bad_inode(inode); + fuse_make_bad(inode); err = -EIO; } else { fuse_change_attributes(inode, &outarg.attr, @@ -1155,6 +1173,9 @@ bool refreshed = false; int err = 0; + if (fuse_is_bad(inode)) + return -EIO; + if (!fuse_allow_current_process(fc)) return -EACCES; @@ -1250,7 +1271,7 @@ int err; err = -EIO; - if (is_bad_inode(inode)) + if (fuse_is_bad(inode)) goto out_err; if (fc->cache_symlinks) @@ -1298,7 +1319,7 @@ struct fuse_conn *fc = get_fuse_conn(inode); int err; - if (is_bad_inode(inode)) + if (fuse_is_bad(inode)) return -EIO; if (fc->no_fsyncdir) @@ -1575,7 +1596,7 @@ if (fuse_invalid_attr(&outarg.attr) || (inode->i_mode ^ outarg.attr.mode) & S_IFMT) { - make_bad_inode(inode); + fuse_make_bad(inode); err = -EIO; goto error; } @@ -1631,6 +1652,9 @@ struct file *file = (attr->ia_valid & ATTR_FILE) ? attr->ia_file : NULL; int ret; + if (fuse_is_bad(inode)) + return -EIO; + if (!fuse_allow_current_process(get_fuse_conn(inode))) return -EACCES; @@ -1689,6 +1713,9 @@ struct inode *inode = d_inode(path->dentry); struct fuse_conn *fc = get_fuse_conn(inode); + if (fuse_is_bad(inode)) + return -EIO; + if (!fuse_allow_current_process(fc)) { if (!request_mask) { /* --- linux-azure-5.8-5.8.0.orig/fs/fuse/file.c +++ linux-azure-5.8-5.8.0/fs/fuse/file.c @@ -222,6 +222,9 @@ fc->atomic_o_trunc && fc->writeback_cache; + if (fuse_is_bad(inode)) + return -EIO; + err = generic_file_open(inode, file); if (err) return err; @@ -449,7 +452,7 @@ FUSE_ARGS(args); int err; - if (is_bad_inode(inode)) + if (fuse_is_bad(inode)) return -EIO; err = write_inode_now(inode, 1); @@ -521,7 +524,7 @@ struct fuse_conn *fc = get_fuse_conn(inode); int err; - if (is_bad_inode(inode)) + if (fuse_is_bad(inode)) return -EIO; inode_lock(inode); @@ -845,7 +848,7 @@ int err; err = -EIO; - if (is_bad_inode(inode)) + if (fuse_is_bad(inode)) goto out; err = fuse_do_readpage(file, page); @@ -938,7 +941,7 @@ struct fuse_conn *fc = get_fuse_conn(inode); unsigned int i, max_pages, nr_pages = 0; - if (is_bad_inode(inode)) + if (fuse_is_bad(inode)) return; max_pages = min_t(unsigned int, fc->max_pages, @@ -1540,7 +1543,7 @@ struct file *file = iocb->ki_filp; struct fuse_file *ff = file->private_data; - if (is_bad_inode(file_inode(file))) + if (fuse_is_bad(file_inode(file))) return -EIO; if (!(ff->open_flags & FOPEN_DIRECT_IO)) @@ -1554,7 +1557,7 @@ struct file *file = iocb->ki_filp; struct fuse_file *ff = file->private_data; - if (is_bad_inode(file_inode(file))) + if (fuse_is_bad(file_inode(file))) return -EIO; if (!(ff->open_flags & FOPEN_DIRECT_IO)) @@ -2150,7 +2153,7 @@ int err; err = -EIO; - if (is_bad_inode(inode)) + if (fuse_is_bad(inode)) goto out; data.inode = inode; @@ -2928,7 +2931,7 @@ if (!fuse_allow_current_process(fc)) return -EACCES; - if (is_bad_inode(inode)) + if (fuse_is_bad(inode)) return -EIO; return fuse_do_ioctl(file, cmd, arg, flags); @@ -3091,11 +3094,10 @@ ssize_t ret = 0; struct file *file = iocb->ki_filp; struct fuse_file *ff = file->private_data; - bool async_dio = ff->fc->async_dio; loff_t pos = 0; struct inode *inode; loff_t i_size; - size_t count = iov_iter_count(iter); + size_t count = iov_iter_count(iter), shortened = 0; loff_t offset = iocb->ki_pos; struct fuse_io_priv *io; @@ -3103,17 +3105,9 @@ inode = file->f_mapping->host; i_size = i_size_read(inode); - if ((iov_iter_rw(iter) == READ) && (offset > i_size)) + if ((iov_iter_rw(iter) == READ) && (offset >= i_size)) return 0; - /* optimization for short read */ - if (async_dio && iov_iter_rw(iter) != WRITE && offset + count > i_size) { - if (offset >= i_size) - return 0; - iov_iter_truncate(iter, fuse_round_up(ff->fc, i_size - offset)); - count = iov_iter_count(iter); - } - io = kmalloc(sizeof(struct fuse_io_priv), GFP_KERNEL); if (!io) return -ENOMEM; @@ -3129,15 +3123,22 @@ * By default, we want to optimize all I/Os with async request * submission to the client filesystem if supported. */ - io->async = async_dio; + io->async = ff->fc->async_dio; io->iocb = iocb; io->blocking = is_sync_kiocb(iocb); + /* optimization for short read */ + if (io->async && !io->write && offset + count > i_size) { + iov_iter_truncate(iter, fuse_round_up(ff->fc, i_size - offset)); + shortened = count - iov_iter_count(iter); + count -= shortened; + } + /* * We cannot asynchronously extend the size of a file. * In such case the aio will behave exactly like sync io. */ - if ((offset + count > i_size) && iov_iter_rw(iter) == WRITE) + if ((offset + count > i_size) && io->write) io->blocking = true; if (io->async && io->blocking) { @@ -3155,6 +3156,7 @@ } else { ret = __fuse_direct_read(io, iter, &pos); } + iov_iter_reexpand(iter, iov_iter_count(iter) + shortened); if (io->async) { bool blocking = io->blocking; --- linux-azure-5.8-5.8.0.orig/fs/fuse/fuse_i.h +++ linux-azure-5.8-5.8.0/fs/fuse/fuse_i.h @@ -158,6 +158,8 @@ FUSE_I_INIT_RDPLUS, /** An operation changing file size is in progress */ FUSE_I_SIZE_UNSTABLE, + /* Bad inode */ + FUSE_I_BAD, }; struct fuse_conn; @@ -787,6 +789,16 @@ return atomic64_read(&fc->attr_version); } +static inline void fuse_make_bad(struct inode *inode) +{ + set_bit(FUSE_I_BAD, &get_fuse_inode(inode)->state); +} + +static inline bool fuse_is_bad(struct inode *inode) +{ + return unlikely(test_bit(FUSE_I_BAD, &get_fuse_inode(inode)->state)); +} + /** Device operations */ extern const struct file_operations fuse_dev_operations; --- linux-azure-5.8-5.8.0.orig/fs/fuse/inode.c +++ linux-azure-5.8-5.8.0/fs/fuse/inode.c @@ -115,7 +115,7 @@ fuse_queue_forget(fc, fi->forget, fi->nodeid, fi->nlookup); fi->forget = NULL; } - if (S_ISREG(inode->i_mode) && !is_bad_inode(inode)) { + if (S_ISREG(inode->i_mode) && !fuse_is_bad(inode)) { WARN_ON(!list_empty(&fi->write_files)); WARN_ON(!list_empty(&fi->queued_writes)); } @@ -306,7 +306,7 @@ unlock_new_inode(inode); } else if ((inode->i_mode ^ attr->mode) & S_IFMT) { /* Inode has changed type, any I/O on the old should fail */ - make_bad_inode(inode); + fuse_make_bad(inode); iput(inode); goto retry; } --- linux-azure-5.8-5.8.0.orig/fs/fuse/readdir.c +++ linux-azure-5.8-5.8.0/fs/fuse/readdir.c @@ -207,7 +207,7 @@ dput(dentry); goto retry; } - if (is_bad_inode(inode)) { + if (fuse_is_bad(inode)) { dput(dentry); return -EIO; } @@ -568,7 +568,7 @@ struct inode *inode = file_inode(file); int err; - if (is_bad_inode(inode)) + if (fuse_is_bad(inode)) return -EIO; mutex_lock(&ff->readdir.lock); --- linux-azure-5.8-5.8.0.orig/fs/fuse/xattr.c +++ linux-azure-5.8-5.8.0/fs/fuse/xattr.c @@ -113,6 +113,9 @@ struct fuse_getxattr_out outarg; ssize_t ret; + if (fuse_is_bad(inode)) + return -EIO; + if (!fuse_allow_current_process(fc)) return -EACCES; @@ -178,6 +181,9 @@ struct dentry *dentry, struct inode *inode, const char *name, void *value, size_t size) { + if (fuse_is_bad(inode)) + return -EIO; + return fuse_getxattr(inode, name, value, size); } @@ -186,6 +192,9 @@ const char *name, const void *value, size_t size, int flags) { + if (fuse_is_bad(inode)) + return -EIO; + if (!value) return fuse_removexattr(inode, name); --- linux-azure-5.8-5.8.0.orig/fs/gfs2/aops.c +++ linux-azure-5.8-5.8.0/fs/gfs2/aops.c @@ -77,7 +77,7 @@ if (error) return error; if (!buffer_mapped(bh_result)) - return -EIO; + return -ENODATA; return 0; } --- linux-azure-5.8-5.8.0.orig/fs/gfs2/bmap.c +++ linux-azure-5.8-5.8.0/fs/gfs2/bmap.c @@ -1229,6 +1229,9 @@ gfs2_inplace_release(ip); + if (ip->i_qadata && ip->i_qadata->qa_qd_num) + gfs2_quota_unlock(ip); + if (length != written && (iomap->flags & IOMAP_F_NEW)) { /* Deallocate blocks that were just allocated. */ loff_t blockmask = i_blocksize(inode) - 1; @@ -1241,9 +1244,6 @@ } } - if (ip->i_qadata && ip->i_qadata->qa_qd_num) - gfs2_quota_unlock(ip); - if (unlikely(!written)) goto out_unlock; @@ -1351,9 +1351,15 @@ return ret; } +/* + * NOTE: Never call gfs2_block_zero_range with an open transaction because it + * uses iomap write to perform its actions, which begin their own transactions + * (iomap_begin, page_prepare, etc.) + */ static int gfs2_block_zero_range(struct inode *inode, loff_t from, unsigned int length) { + BUG_ON(current->journal_info); return iomap_zero_range(inode, from, length, NULL, &gfs2_iomap_ops); } @@ -1414,6 +1420,16 @@ u64 oldsize = inode->i_size; int error; + if (!gfs2_is_stuffed(ip)) { + unsigned int blocksize = i_blocksize(inode); + unsigned int offs = newsize & (blocksize - 1); + if (offs) { + error = gfs2_block_zero_range(inode, newsize, + blocksize - offs); + if (error) + return error; + } + } if (journaled) error = gfs2_trans_begin(sdp, RES_DINODE + RES_JDATA, GFS2_JTRUNC_REVOKES); else @@ -1427,19 +1443,10 @@ gfs2_trans_add_meta(ip->i_gl, dibh); - if (gfs2_is_stuffed(ip)) { + if (gfs2_is_stuffed(ip)) gfs2_buffer_clear_tail(dibh, sizeof(struct gfs2_dinode) + newsize); - } else { - unsigned int blocksize = i_blocksize(inode); - unsigned int offs = newsize & (blocksize - 1); - if (offs) { - error = gfs2_block_zero_range(inode, newsize, - blocksize - offs); - if (error) - goto out; - } + else ip->i_diskflags |= GFS2_DIF_TRUNC_IN_PROG; - } i_size_write(inode, newsize); ip->i_inode.i_mtime = ip->i_inode.i_ctime = current_time(&ip->i_inode); @@ -2448,25 +2455,7 @@ loff_t start, end; int error; - start = round_down(offset, blocksize); - end = round_up(offset + length, blocksize) - 1; - error = filemap_write_and_wait_range(inode->i_mapping, start, end); - if (error) - return error; - - if (gfs2_is_jdata(ip)) - error = gfs2_trans_begin(sdp, RES_DINODE + 2 * RES_JDATA, - GFS2_JTRUNC_REVOKES); - else - error = gfs2_trans_begin(sdp, RES_DINODE, 0); - if (error) - return error; - - if (gfs2_is_stuffed(ip)) { - error = stuffed_zero_range(inode, offset, length); - if (error) - goto out; - } else { + if (!gfs2_is_stuffed(ip)) { unsigned int start_off, end_len; start_off = offset & (blocksize - 1); @@ -2489,6 +2478,26 @@ } } + start = round_down(offset, blocksize); + end = round_up(offset + length, blocksize) - 1; + error = filemap_write_and_wait_range(inode->i_mapping, start, end); + if (error) + return error; + + if (gfs2_is_jdata(ip)) + error = gfs2_trans_begin(sdp, RES_DINODE + 2 * RES_JDATA, + GFS2_JTRUNC_REVOKES); + else + error = gfs2_trans_begin(sdp, RES_DINODE, 0); + if (error) + return error; + + if (gfs2_is_stuffed(ip)) { + error = stuffed_zero_range(inode, offset, length); + if (error) + goto out; + } + if (gfs2_is_jdata(ip)) { BUG_ON(!current->journal_info); gfs2_journaled_truncate_range(inode, offset, length); --- linux-azure-5.8-5.8.0.orig/fs/gfs2/glock.c +++ linux-azure-5.8-5.8.0/fs/gfs2/glock.c @@ -270,7 +270,12 @@ gfs2_glock_remove_from_lru(gl); spin_unlock(&gl->gl_lockref.lock); GLOCK_BUG_ON(gl, !list_empty(&gl->gl_holders)); - GLOCK_BUG_ON(gl, mapping && mapping->nrpages && !gfs2_withdrawn(sdp)); + if (mapping) { + truncate_inode_pages_final(mapping); + if (!gfs2_withdrawn(sdp)) + GLOCK_BUG_ON(gl, mapping->nrpages || + mapping->nrexceptional); + } trace_gfs2_glock_put(gl); sdp->sd_lockstruct.ls_ops->lm_put_lock(gl); } @@ -790,9 +795,11 @@ struct gfs2_holder gh; int error; - error = gfs2_glock_nq_init(gl, LM_ST_SHARED, flags, &gh); + gfs2_holder_init(gl, LM_ST_SHARED, flags, &gh); + error = gfs2_glock_nq(&gh); if (!error) gfs2_glock_dq(&gh); + gfs2_holder_uninit(&gh); } static bool gfs2_try_evict(struct gfs2_glock *gl) @@ -1047,7 +1054,8 @@ gl->gl_object = NULL; gl->gl_hold_time = GL_GLOCK_DFT_HOLD; INIT_DELAYED_WORK(&gl->gl_work, glock_work_func); - INIT_DELAYED_WORK(&gl->gl_delete, delete_work_func); + if (gl->gl_name.ln_type == LM_TYPE_IOPEN) + INIT_DELAYED_WORK(&gl->gl_delete, delete_work_func); mapping = gfs2_glock2aspace(gl); if (mapping) { @@ -1073,7 +1081,8 @@ out_free: kfree(gl->gl_lksb.sb_lvbptr); kmem_cache_free(cachep, gl); - atomic_dec(&sdp->sd_glock_disposal); + if (atomic_dec_and_test(&sdp->sd_glock_disposal)) + wake_up(&sdp->sd_glock_wait); out: return ret; @@ -1899,9 +1908,11 @@ static void flush_delete_work(struct gfs2_glock *gl) { - if (cancel_delayed_work(&gl->gl_delete)) { - queue_delayed_work(gfs2_delete_workqueue, - &gl->gl_delete, 0); + if (gl->gl_name.ln_type == LM_TYPE_IOPEN) { + if (cancel_delayed_work(&gl->gl_delete)) { + queue_delayed_work(gfs2_delete_workqueue, + &gl->gl_delete, 0); + } } gfs2_glock_queue_work(gl, 0); } --- linux-azure-5.8-5.8.0.orig/fs/gfs2/glops.c +++ linux-azure-5.8-5.8.0/fs/gfs2/glops.c @@ -227,6 +227,15 @@ rgd->rd_flags &= ~GFS2_RDF_UPTODATE; } +static void gfs2_rgrp_go_dump(struct seq_file *seq, struct gfs2_glock *gl, + const char *fs_id_buf) +{ + struct gfs2_rgrpd *rgd = gl->gl_object; + + if (rgd) + gfs2_rgrp_dump(seq, rgd, fs_id_buf); +} + static struct gfs2_inode *gfs2_glock2inode(struct gfs2_glock *gl) { struct gfs2_inode *ip; @@ -531,7 +540,19 @@ int error = 0; struct gfs2_sbd *sdp = gl->gl_name.ln_sbd; - if (gl->gl_req == LM_ST_EXCLUSIVE && !gfs2_withdrawn(sdp)) { + /* + * We need to check gl_state == LM_ST_SHARED here and not gl_req == + * LM_ST_EXCLUSIVE. That's because when any node does a freeze, + * all the nodes should have the freeze glock in SH mode and they all + * call do_xmote: One for EX and the others for UN. They ALL must + * freeze locally, and they ALL must queue freeze work. The freeze_work + * calls freeze_func, which tries to reacquire the freeze glock in SH, + * effectively waiting for the thaw on the node who holds it in EX. + * Once thawed, the work func acquires the freeze glock in + * SH and everybody goes back to thawed. + */ + if (gl->gl_state == LM_ST_SHARED && !gfs2_withdrawn(sdp) && + !test_bit(SDF_NORECOVERY, &sdp->sd_flags)) { atomic_set(&sdp->sd_freeze_state, SFS_STARTING_FREEZE); error = freeze_super(sdp->sd_vfs); if (error) { @@ -712,7 +733,7 @@ .go_sync = rgrp_go_sync, .go_inval = rgrp_go_inval, .go_lock = gfs2_rgrp_go_lock, - .go_dump = gfs2_rgrp_dump, + .go_dump = gfs2_rgrp_go_dump, .go_type = LM_TYPE_RGRP, .go_flags = GLOF_LVB, }; --- linux-azure-5.8-5.8.0.orig/fs/gfs2/incore.h +++ linux-azure-5.8-5.8.0/fs/gfs2/incore.h @@ -705,6 +705,7 @@ struct super_block *sd_vfs; struct gfs2_pcpu_lkstats __percpu *sd_lkstats; struct kobject sd_kobj; + struct completion sd_kobj_unregister; unsigned long sd_flags; /* SDF_... */ struct gfs2_sb_host sd_sb; --- linux-azure-5.8-5.8.0.orig/fs/gfs2/inode.c +++ linux-azure-5.8-5.8.0/fs/gfs2/inode.c @@ -150,6 +150,8 @@ error = gfs2_glock_get(sdp, no_addr, &gfs2_iopen_glops, CREATE, &io_gl); if (unlikely(error)) goto fail; + if (blktype != GFS2_BLKST_UNLINKED) + gfs2_cancel_delete_work(io_gl); if (type == DT_UNKNOWN || blktype != GFS2_BLKST_FREE) { /* @@ -180,7 +182,6 @@ error = gfs2_glock_nq_init(io_gl, LM_ST_SHARED, GL_EXACT, &ip->i_iopen_gh); if (unlikely(error)) goto fail; - gfs2_cancel_delete_work(ip->i_iopen_gh.gh_gl); glock_set_object(ip->i_iopen_gh.gh_gl, ip); gfs2_glock_put(io_gl); io_gl = NULL; @@ -724,13 +725,19 @@ flush_delayed_work(&ip->i_gl->gl_work); glock_set_object(ip->i_gl, ip); - error = gfs2_glock_nq_init(ip->i_gl, LM_ST_EXCLUSIVE, GL_SKIP, ghs + 1); + error = gfs2_glock_get(sdp, ip->i_no_addr, &gfs2_iopen_glops, CREATE, &io_gl); if (error) goto fail_free_inode; + gfs2_cancel_delete_work(io_gl); + glock_set_object(io_gl, ip); + + error = gfs2_glock_nq_init(ip->i_gl, LM_ST_EXCLUSIVE, GL_SKIP, ghs + 1); + if (error) + goto fail_gunlock2; error = gfs2_trans_begin(sdp, blocks, 0); if (error) - goto fail_free_inode; + goto fail_gunlock2; if (blocks > 1) { ip->i_eattr = ip->i_no_addr + 1; @@ -739,18 +746,12 @@ init_dinode(dip, ip, symname); gfs2_trans_end(sdp); - error = gfs2_glock_get(sdp, ip->i_no_addr, &gfs2_iopen_glops, CREATE, &io_gl); - if (error) - goto fail_free_inode; - BUG_ON(test_and_set_bit(GLF_INODE_CREATING, &io_gl->gl_flags)); error = gfs2_glock_nq_init(io_gl, LM_ST_SHARED, GL_EXACT, &ip->i_iopen_gh); if (error) goto fail_gunlock2; - gfs2_cancel_delete_work(ip->i_iopen_gh.gh_gl); - glock_set_object(ip->i_iopen_gh.gh_gl, ip); gfs2_set_iop(inode); insert_inode_hash(inode); @@ -802,6 +803,7 @@ gfs2_glock_dq_uninit(&ip->i_iopen_gh); fail_gunlock2: clear_bit(GLF_INODE_CREATING, &io_gl->gl_flags); + glock_clear_object(io_gl, ip); gfs2_glock_put(io_gl); fail_free_inode: if (ip->i_gl) { @@ -2115,6 +2117,25 @@ return vfs_setpos(file, ret, inode->i_sb->s_maxbytes); } +static int gfs2_update_time(struct inode *inode, struct timespec64 *time, + int flags) +{ + struct gfs2_inode *ip = GFS2_I(inode); + struct gfs2_glock *gl = ip->i_gl; + struct gfs2_holder *gh; + int error; + + gh = gfs2_glock_is_locked_by_me(gl); + if (gh && !gfs2_glock_is_held_excl(gl)) { + gfs2_glock_dq(gh); + gfs2_holder_reinit(LM_ST_EXCLUSIVE, 0, gh); + error = gfs2_glock_nq(gh); + if (error) + return error; + } + return generic_update_time(inode, time, flags); +} + const struct inode_operations gfs2_file_iops = { .permission = gfs2_permission, .setattr = gfs2_setattr, @@ -2123,6 +2144,7 @@ .fiemap = gfs2_fiemap, .get_acl = gfs2_get_acl, .set_acl = gfs2_set_acl, + .update_time = gfs2_update_time, }; const struct inode_operations gfs2_dir_iops = { @@ -2142,6 +2164,7 @@ .fiemap = gfs2_fiemap, .get_acl = gfs2_get_acl, .set_acl = gfs2_set_acl, + .update_time = gfs2_update_time, .atomic_open = gfs2_atomic_open, }; --- linux-azure-5.8-5.8.0.orig/fs/gfs2/lock_dlm.c +++ linux-azure-5.8-5.8.0/fs/gfs2/lock_dlm.c @@ -284,7 +284,6 @@ { struct gfs2_sbd *sdp = gl->gl_name.ln_sbd; struct lm_lockstruct *ls = &sdp->sd_lockstruct; - int lvb_needs_unlock = 0; int error; if (gl->gl_lksb.sb_lkid == 0) { @@ -297,13 +296,10 @@ gfs2_sbstats_inc(gl, GFS2_LKS_DCOUNT); gfs2_update_request_times(gl); - /* don't want to skip dlm_unlock writing the lvb when lock is ex */ - - if (gl->gl_lksb.sb_lvbptr && (gl->gl_state == LM_ST_EXCLUSIVE)) - lvb_needs_unlock = 1; + /* don't want to skip dlm_unlock writing the lvb when lock has one */ if (test_bit(SDF_SKIP_DLM_UNLOCK, &sdp->sd_flags) && - !lvb_needs_unlock) { + !gl->gl_lksb.sb_lvbptr) { gfs2_glock_free(gl); return; } --- linux-azure-5.8-5.8.0.orig/fs/gfs2/log.c +++ linux-azure-5.8-5.8.0/fs/gfs2/log.c @@ -132,6 +132,8 @@ spin_unlock(&sdp->sd_ail_lock); ret = generic_writepages(mapping, wbc); spin_lock(&sdp->sd_ail_lock); + if (ret == -ENODATA) /* if a jdata write into a new hole */ + ret = 0; /* ignore it */ if (ret || wbc->nr_to_write <= 0) break; return -EBUSY; @@ -902,6 +904,36 @@ } /** + * drain_bd - drain the buf and databuf queue for a failed transaction + * @tr: the transaction to drain + * + * When this is called, we're taking an error exit for a log write that failed + * but since we bypassed the after_commit functions, we need to remove the + * items from the buf and databuf queue. + */ +static void trans_drain(struct gfs2_trans *tr) +{ + struct gfs2_bufdata *bd; + struct list_head *head; + + if (!tr) + return; + + head = &tr->tr_buf; + while (!list_empty(head)) { + bd = list_first_entry(head, struct gfs2_bufdata, bd_list); + list_del_init(&bd->bd_list); + kmem_cache_free(gfs2_bufdata_cachep, bd); + } + head = &tr->tr_databuf; + while (!list_empty(head)) { + bd = list_first_entry(head, struct gfs2_bufdata, bd_list); + list_del_init(&bd->bd_list); + kmem_cache_free(gfs2_bufdata_cachep, bd); + } +} + +/** * gfs2_log_flush - flush incore transaction(s) * @sdp: the filesystem * @gl: The glock structure to flush. If NULL, flush the whole incore log @@ -924,10 +956,8 @@ goto out; /* Log might have been flushed while we waited for the flush lock */ - if (gl && !test_bit(GLF_LFLUSH, &gl->gl_flags)) { - up_write(&sdp->sd_log_flush_lock); - return; - } + if (gl && !test_bit(GLF_LFLUSH, &gl->gl_flags)) + goto out; trace_gfs2_log_flush(sdp, 1, flags); if (flags & GFS2_LOG_HEAD_FLUSH_SHUTDOWN) @@ -941,25 +971,25 @@ if (unlikely (state == SFS_FROZEN)) if (gfs2_assert_withdraw_delayed(sdp, !tr->tr_num_buf_new && !tr->tr_num_databuf_new)) - goto out; + goto out_withdraw; } if (unlikely(state == SFS_FROZEN)) if (gfs2_assert_withdraw_delayed(sdp, !sdp->sd_log_num_revoke)) - goto out; + goto out_withdraw; if (gfs2_assert_withdraw_delayed(sdp, sdp->sd_log_num_revoke == sdp->sd_log_committed_revoke)) - goto out; + goto out_withdraw; gfs2_ordered_write(sdp); if (gfs2_withdrawn(sdp)) - goto out; + goto out_withdraw; lops_before_commit(sdp, tr); if (gfs2_withdrawn(sdp)) - goto out; + goto out_withdraw; gfs2_log_submit_bio(&sdp->sd_log_bio, REQ_OP_WRITE); if (gfs2_withdrawn(sdp)) - goto out; + goto out_withdraw; if (sdp->sd_log_head != sdp->sd_log_flush_head) { log_flush_wait(sdp); @@ -970,7 +1000,7 @@ log_write_header(sdp, flags); } if (gfs2_withdrawn(sdp)) - goto out; + goto out_withdraw; lops_after_commit(sdp, tr); gfs2_log_lock(sdp); @@ -990,7 +1020,7 @@ if (!sdp->sd_log_idle) { empty_ail1_list(sdp); if (gfs2_withdrawn(sdp)) - goto out; + goto out_withdraw; atomic_dec(&sdp->sd_log_blks_free); /* Adjust for unreserved buffer */ trace_gfs2_log_blocks(sdp, -1); log_write_header(sdp, flags); @@ -1003,26 +1033,30 @@ atomic_set(&sdp->sd_freeze_state, SFS_FROZEN); } -out: - if (gfs2_withdrawn(sdp)) { - /** - * If the tr_list is empty, we're withdrawing during a log - * flush that targets a transaction, but the transaction was - * never queued onto any of the ail lists. Here we add it to - * ail1 just so that ail_drain() will find and free it. - */ - spin_lock(&sdp->sd_ail_lock); - if (tr && list_empty(&tr->tr_list)) - list_add(&tr->tr_list, &sdp->sd_ail1_list); - spin_unlock(&sdp->sd_ail_lock); - ail_drain(sdp); /* frees all transactions */ - tr = NULL; - } - +out_end: trace_gfs2_log_flush(sdp, 0, flags); +out: up_write(&sdp->sd_log_flush_lock); - gfs2_trans_free(sdp, tr); + if (gfs2_withdrawing(sdp)) + gfs2_withdraw(sdp); + return; + +out_withdraw: + trans_drain(tr); + /** + * If the tr_list is empty, we're withdrawing during a log + * flush that targets a transaction, but the transaction was + * never queued onto any of the ail lists. Here we add it to + * ail1 just so that ail_drain() will find and free it. + */ + spin_lock(&sdp->sd_ail_lock); + if (tr && list_empty(&tr->tr_list)) + list_add(&tr->tr_list, &sdp->sd_ail1_list); + spin_unlock(&sdp->sd_ail_lock); + ail_drain(sdp); /* frees all transactions */ + tr = NULL; + goto out_end; } /** --- linux-azure-5.8-5.8.0.orig/fs/gfs2/ops_fstype.c +++ linux-azure-5.8-5.8.0/fs/gfs2/ops_fstype.c @@ -169,15 +169,19 @@ return -EINVAL; } - /* If format numbers match exactly, we're done. */ - - if (sb->sb_fs_format == GFS2_FORMAT_FS && - sb->sb_multihost_format == GFS2_FORMAT_MULTI) - return 0; + if (sb->sb_fs_format != GFS2_FORMAT_FS || + sb->sb_multihost_format != GFS2_FORMAT_MULTI) { + fs_warn(sdp, "Unknown on-disk format, unable to mount\n"); + return -EINVAL; + } - fs_warn(sdp, "Unknown on-disk format, unable to mount\n"); + if (sb->sb_bsize < 512 || sb->sb_bsize > PAGE_SIZE || + (sb->sb_bsize & (sb->sb_bsize - 1))) { + pr_warn("Invalid superblock size\n"); + return -EINVAL; + } - return -EINVAL; + return 0; } static void end_bio_io_page(struct bio *bio) @@ -1062,26 +1066,14 @@ } error = init_names(sdp, silent); - if (error) { - /* In this case, we haven't initialized sysfs, so we have to - manually free the sdp. */ - free_sbd(sdp); - sb->s_fs_info = NULL; - return error; - } + if (error) + goto fail_free; snprintf(sdp->sd_fsname, sizeof(sdp->sd_fsname), "%s", sdp->sd_table_name); error = gfs2_sys_fs_add(sdp); - /* - * If we hit an error here, gfs2_sys_fs_add will have called function - * kobject_put which causes the sysfs usage count to go to zero, which - * causes sysfs to call function gfs2_sbd_release, which frees sdp. - * Subsequent error paths here will call gfs2_sys_fs_del, which also - * kobject_put to free sdp. - */ if (error) - return error; + goto fail_free; gfs2_create_debugfs_file(sdp); @@ -1179,9 +1171,9 @@ gfs2_lm_unmount(sdp); fail_debug: gfs2_delete_debugfs_file(sdp); - /* gfs2_sys_fs_del must be the last thing we do, since it causes - * sysfs to call function gfs2_sbd_release, which frees sdp. */ gfs2_sys_fs_del(sdp); +fail_free: + free_sbd(sdp); sb->s_fs_info = NULL; return error; } --- linux-azure-5.8-5.8.0.orig/fs/gfs2/recovery.c +++ linux-azure-5.8-5.8.0/fs/gfs2/recovery.c @@ -407,8 +407,10 @@ error = foreach_descriptor(jd, head.lh_tail, head.lh_blkno, pass); lops_after_scan(jd, error, pass); - if (error) + if (error) { + up_read(&sdp->sd_log_flush_lock); goto fail_gunlock_thaw; + } } clean_journal(jd, &head); --- linux-azure-5.8-5.8.0.orig/fs/gfs2/rgrp.c +++ linux-azure-5.8-5.8.0/fs/gfs2/rgrp.c @@ -719,9 +719,9 @@ } gfs2_free_clones(rgd); + return_all_reservations(rgd); kfree(rgd->rd_bits); rgd->rd_bits = NULL; - return_all_reservations(rgd); kmem_cache_free(gfs2_rgrpd_cachep, rgd); } } @@ -989,6 +989,10 @@ if (error < 0) return error; + if (RB_EMPTY_ROOT(&sdp->sd_rindex_tree)) { + fs_err(sdp, "no resource groups found in the file system.\n"); + return -ENOENT; + } set_rgrp_preferences(sdp); sdp->sd_rindex_uptodate = 1; @@ -1374,6 +1378,9 @@ if (!capable(CAP_SYS_ADMIN)) return -EPERM; + if (!test_bit(SDF_JOURNAL_LIVE, &sdp->sd_flags)) + return -EROFS; + if (!blk_queue_discard(q)) return -EOPNOTSUPP; @@ -2209,20 +2216,17 @@ /** * gfs2_rgrp_dump - print out an rgrp * @seq: The iterator - * @gl: The glock in question + * @rgd: The rgrp in question * @fs_id_buf: pointer to file system id (if requested) * */ -void gfs2_rgrp_dump(struct seq_file *seq, struct gfs2_glock *gl, +void gfs2_rgrp_dump(struct seq_file *seq, struct gfs2_rgrpd *rgd, const char *fs_id_buf) { - struct gfs2_rgrpd *rgd = gl->gl_object; struct gfs2_blkreserv *trs; const struct rb_node *n; - if (rgd == NULL) - return; gfs2_print_dbg(seq, "%s R: n:%llu f:%02x b:%u/%u i:%u r:%u e:%u\n", fs_id_buf, (unsigned long long)rgd->rd_addr, rgd->rd_flags, @@ -2253,7 +2257,7 @@ (unsigned long long)rgd->rd_addr); fs_warn(sdp, "umount on all nodes and run fsck.gfs2 to fix the error\n"); sprintf(fs_id_buf, "fsid=%s: ", sdp->sd_fsname); - gfs2_rgrp_dump(NULL, rgd->rd_gl, fs_id_buf); + gfs2_rgrp_dump(NULL, rgd, fs_id_buf); rgd->rd_flags |= GFS2_RDF_ERROR; } @@ -2533,13 +2537,13 @@ rbm.rgd = rgd; error = gfs2_rbm_from_block(&rbm, no_addr); - if (WARN_ON_ONCE(error)) - goto fail; - - if (gfs2_testbit(&rbm, false) != type) - error = -ESTALE; + if (!WARN_ON_ONCE(error)) { + if (gfs2_testbit(&rbm, false) != type) + error = -ESTALE; + } gfs2_glock_dq_uninit(&rgd_gh); + fail: return error; } --- linux-azure-5.8-5.8.0.orig/fs/gfs2/rgrp.h +++ linux-azure-5.8-5.8.0/fs/gfs2/rgrp.h @@ -67,7 +67,7 @@ extern void gfs2_rlist_alloc(struct gfs2_rgrp_list *rlist); extern void gfs2_rlist_free(struct gfs2_rgrp_list *rlist); extern u64 gfs2_ri_total(struct gfs2_sbd *sdp); -extern void gfs2_rgrp_dump(struct seq_file *seq, struct gfs2_glock *gl, +extern void gfs2_rgrp_dump(struct seq_file *seq, struct gfs2_rgrpd *rgd, const char *fs_id_buf); extern int gfs2_rgrp_send_discards(struct gfs2_sbd *sdp, u64 offset, struct buffer_head *bh, --- linux-azure-5.8-5.8.0.orig/fs/gfs2/super.c +++ linux-azure-5.8-5.8.0/fs/gfs2/super.c @@ -701,6 +701,8 @@ if (error) gfs2_io_error(sdp); } + WARN_ON(gfs2_withdrawing(sdp)); + /* At this point, we're through modifying the disk */ /* Release stuff */ @@ -729,12 +731,14 @@ gfs2_jindex_free(sdp); /* Take apart glock structures and buffer lists */ gfs2_gl_hash_clear(sdp); + truncate_inode_pages_final(&sdp->sd_aspace); gfs2_delete_debugfs_file(sdp); /* Unmount the locking protocol */ gfs2_lm_unmount(sdp); /* At this point, we're through participating in the lockspace */ gfs2_sys_fs_del(sdp); + free_sbd(sdp); } /** --- linux-azure-5.8-5.8.0.orig/fs/gfs2/sys.c +++ linux-azure-5.8-5.8.0/fs/gfs2/sys.c @@ -303,7 +303,7 @@ { struct gfs2_sbd *sdp = container_of(kobj, struct gfs2_sbd, sd_kobj); - free_sbd(sdp); + complete(&sdp->sd_kobj_unregister); } static struct kobj_type gfs2_ktype = { @@ -655,6 +655,7 @@ sprintf(ro, "RDONLY=%d", sb_rdonly(sb)); sprintf(spectator, "SPECTATOR=%d", sdp->sd_args.ar_spectator ? 1 : 0); + init_completion(&sdp->sd_kobj_unregister); sdp->sd_kobj.kset = gfs2_kset; error = kobject_init_and_add(&sdp->sd_kobj, &gfs2_ktype, NULL, "%s", sdp->sd_table_name); @@ -685,6 +686,7 @@ fail_reg: fs_err(sdp, "error %d adding sysfs files\n", error); kobject_put(&sdp->sd_kobj); + wait_for_completion(&sdp->sd_kobj_unregister); sb->s_fs_info = NULL; return error; } @@ -695,6 +697,7 @@ sysfs_remove_group(&sdp->sd_kobj, &tune_group); sysfs_remove_group(&sdp->sd_kobj, &lock_module_group); kobject_put(&sdp->sd_kobj); + wait_for_completion(&sdp->sd_kobj_unregister); } static int gfs2_uevent(struct kset *kset, struct kobject *kobj, --- linux-azure-5.8-5.8.0.orig/fs/gfs2/trans.c +++ linux-azure-5.8-5.8.0/fs/gfs2/trans.c @@ -52,6 +52,7 @@ tr->tr_reserved += gfs2_struct2blk(sdp, revokes); INIT_LIST_HEAD(&tr->tr_databuf); INIT_LIST_HEAD(&tr->tr_buf); + INIT_LIST_HEAD(&tr->tr_list); INIT_LIST_HEAD(&tr->tr_ail1_list); INIT_LIST_HEAD(&tr->tr_ail2_list); --- linux-azure-5.8-5.8.0.orig/fs/gfs2/util.c +++ linux-azure-5.8-5.8.0/fs/gfs2/util.c @@ -93,9 +93,10 @@ static void signal_our_withdraw(struct gfs2_sbd *sdp) { - struct gfs2_glock *gl = sdp->sd_live_gh.gh_gl; + struct gfs2_glock *live_gl = sdp->sd_live_gh.gh_gl; struct inode *inode = sdp->sd_jdesc->jd_inode; struct gfs2_inode *ip = GFS2_I(inode); + struct gfs2_glock *i_gl = ip->i_gl; u64 no_formal_ino = ip->i_no_formal_ino; int ret = 0; int tries; @@ -141,7 +142,8 @@ atomic_set(&sdp->sd_freeze_state, SFS_FROZEN); thaw_super(sdp->sd_vfs); } else { - wait_on_bit(&gl->gl_flags, GLF_DEMOTE, TASK_UNINTERRUPTIBLE); + wait_on_bit(&i_gl->gl_flags, GLF_DEMOTE, + TASK_UNINTERRUPTIBLE); } /* @@ -161,15 +163,15 @@ * on other nodes to be successful, otherwise we remain the owner of * the glock as far as dlm is concerned. */ - if (gl->gl_ops->go_free) { - set_bit(GLF_FREEING, &gl->gl_flags); - wait_on_bit(&gl->gl_flags, GLF_FREEING, TASK_UNINTERRUPTIBLE); + if (i_gl->gl_ops->go_free) { + set_bit(GLF_FREEING, &i_gl->gl_flags); + wait_on_bit(&i_gl->gl_flags, GLF_FREEING, TASK_UNINTERRUPTIBLE); } /* * Dequeue the "live" glock, but keep a reference so it's never freed. */ - gfs2_glock_hold(gl); + gfs2_glock_hold(live_gl); gfs2_glock_dq_wait(&sdp->sd_live_gh); /* * We enqueue the "live" glock in EX so that all other nodes @@ -208,7 +210,7 @@ gfs2_glock_nq(&sdp->sd_live_gh); } - gfs2_glock_queue_put(gl); /* drop the extra reference we acquired */ + gfs2_glock_queue_put(live_gl); /* drop extra reference we acquired */ clear_bit(SDF_WITHDRAW_RECOVERY, &sdp->sd_flags); /* @@ -419,7 +421,7 @@ char fs_id_buf[sizeof(sdp->sd_fsname) + 7]; sprintf(fs_id_buf, "fsid=%s: ", sdp->sd_fsname); - gfs2_rgrp_dump(NULL, rgd->rd_gl, fs_id_buf); + gfs2_rgrp_dump(NULL, rgd, fs_id_buf); gfs2_lm(sdp, "fatal: filesystem consistency error\n" " RG = %llu\n" --- linux-azure-5.8-5.8.0.orig/fs/gfs2/util.h +++ linux-azure-5.8-5.8.0/fs/gfs2/util.h @@ -205,6 +205,16 @@ test_bit(SDF_WITHDRAWING, &sdp->sd_flags); } +/** + * gfs2_withdrawing - check if a withdraw is pending + * @sdp: the superblock + */ +static inline bool gfs2_withdrawing(struct gfs2_sbd *sdp) +{ + return test_bit(SDF_WITHDRAWING, &sdp->sd_flags) && + !test_bit(SDF_WITHDRAWN, &sdp->sd_flags); +} + #define gfs2_tune_get(sdp, field) \ gfs2_tune_get_i(&(sdp)->sd_tune, &(sdp)->sd_tune.field) --- linux-azure-5.8-5.8.0.orig/fs/hugetlbfs/inode.c +++ linux-azure-5.8-5.8.0/fs/hugetlbfs/inode.c @@ -735,9 +735,10 @@ mutex_unlock(&hugetlb_fault_mutex_table[hash]); + set_page_huge_active(page); /* * unlock_page because locked by add_to_page_cache() - * page_put due to reference from alloc_huge_page() + * put_page() due to reference from alloc_huge_page() */ unlock_page(page); put_page(page); @@ -1364,6 +1365,12 @@ sb->s_magic = HUGETLBFS_MAGIC; sb->s_op = &hugetlbfs_ops; sb->s_time_gran = 1; + + /* + * Due to the special and limited functionality of hugetlbfs, it does + * not work well as a stacking filesystem. + */ + sb->s_stack_depth = FILESYSTEM_MAX_STACK_DEPTH; sb->s_root = d_make_root(hugetlbfs_get_root(sb, ctx)); if (!sb->s_root) goto out_free; --- linux-azure-5.8-5.8.0.orig/fs/inode.c +++ linux-azure-5.8-5.8.0/fs/inode.c @@ -1625,7 +1625,9 @@ else drop = generic_drop_inode(inode); - if (!drop && (sb->s_flags & SB_ACTIVE)) { + if (!drop && + !(inode->i_state & I_DONTCACHE) && + (sb->s_flags & SB_ACTIVE)) { inode_add_lru(inode); spin_unlock(&inode->i_lock); return; @@ -1768,12 +1770,13 @@ * This does the actual work of updating an inodes time or version. Must have * had called mnt_want_write() before calling this. */ -static int update_time(struct inode *inode, struct timespec64 *time, int flags) +int update_time(struct inode *inode, struct timespec64 *time, int flags) { if (inode->i_op->update_time) return inode->i_op->update_time(inode, time, flags); return generic_update_time(inode, time, flags); } +EXPORT_SYMBOL_GPL(update_time); /** * touch_atime - update the access time --- linux-azure-5.8-5.8.0.orig/fs/io-wq.c +++ linux-azure-5.8-5.8.0/fs/io-wq.c @@ -60,6 +60,7 @@ const struct cred *cur_creds; const struct cred *saved_creds; struct files_struct *restore_files; + struct nsproxy *restore_nsproxy; struct fs_struct *restore_fs; }; @@ -87,7 +88,7 @@ */ struct io_wqe { struct { - spinlock_t lock; + raw_spinlock_t lock; struct io_wq_work_list work_list; unsigned long hash_map; unsigned flags; @@ -148,11 +149,12 @@ if (current->files != worker->restore_files) { __acquire(&wqe->lock); - spin_unlock_irq(&wqe->lock); + raw_spin_unlock_irq(&wqe->lock); dropped_lock = true; task_lock(current); current->files = worker->restore_files; + current->nsproxy = worker->restore_nsproxy; task_unlock(current); } @@ -166,7 +168,7 @@ if (worker->mm) { if (!dropped_lock) { __acquire(&wqe->lock); - spin_unlock_irq(&wqe->lock); + raw_spin_unlock_irq(&wqe->lock); dropped_lock = true; } __set_current_state(TASK_RUNNING); @@ -200,7 +202,6 @@ { struct io_wqe *wqe = worker->wqe; struct io_wqe_acct *acct = io_wqe_get_acct(wqe, worker); - unsigned nr_workers; /* * If we're not at zero, someone else is holding a brief reference @@ -220,23 +221,19 @@ worker->flags = 0; preempt_enable(); - spin_lock_irq(&wqe->lock); + raw_spin_lock_irq(&wqe->lock); hlist_nulls_del_rcu(&worker->nulls_node); list_del_rcu(&worker->all_list); if (__io_worker_unuse(wqe, worker)) { __release(&wqe->lock); - spin_lock_irq(&wqe->lock); + raw_spin_lock_irq(&wqe->lock); } acct->nr_workers--; - nr_workers = wqe->acct[IO_WQ_ACCT_BOUND].nr_workers + - wqe->acct[IO_WQ_ACCT_UNBOUND].nr_workers; - spin_unlock_irq(&wqe->lock); - - /* all workers gone, wq exit can proceed */ - if (!nr_workers && refcount_dec_and_test(&wqe->wq->refs)) - complete(&wqe->wq->done); + raw_spin_unlock_irq(&wqe->lock); kfree_rcu(worker, rcu); + if (refcount_dec_and_test(&wqe->wq->refs)) + complete(&wqe->wq->done); } static inline bool io_wqe_run_queue(struct io_wqe *wqe) @@ -318,6 +315,7 @@ worker->flags |= (IO_WORKER_F_UP | IO_WORKER_F_RUNNING); worker->restore_files = current->files; + worker->restore_nsproxy = current->nsproxy; worker->restore_fs = current->fs; io_wqe_inc_running(wqe, worker); } @@ -454,6 +452,7 @@ if (work->files && current->files != work->files) { task_lock(current); current->files = work->files; + current->nsproxy = work->nsproxy; task_unlock(current); } if (work->fs && current->fs != work->fs) @@ -504,7 +503,7 @@ else if (!wq_list_empty(&wqe->work_list)) wqe->flags |= IO_WQE_FLAG_STALLED; - spin_unlock_irq(&wqe->lock); + raw_spin_unlock_irq(&wqe->lock); if (!work) break; io_assign_current_work(worker, work); @@ -539,7 +538,7 @@ io_wqe_enqueue(wqe, linked); if (hash != -1U && !next_hashed) { - spin_lock_irq(&wqe->lock); + raw_spin_lock_irq(&wqe->lock); wqe->hash_map &= ~BIT_ULL(hash); wqe->flags &= ~IO_WQE_FLAG_STALLED; /* dependent work is not hashed */ @@ -547,11 +546,11 @@ /* skip unnecessary unlock-lock wqe->lock */ if (!work) goto get_next; - spin_unlock_irq(&wqe->lock); + raw_spin_unlock_irq(&wqe->lock); } } while (work); - spin_lock_irq(&wqe->lock); + raw_spin_lock_irq(&wqe->lock); } while (1); } @@ -566,7 +565,7 @@ while (!test_bit(IO_WQ_BIT_EXIT, &wq->state)) { set_current_state(TASK_INTERRUPTIBLE); loop: - spin_lock_irq(&wqe->lock); + raw_spin_lock_irq(&wqe->lock); if (io_wqe_run_queue(wqe)) { __set_current_state(TASK_RUNNING); io_worker_handle_work(worker); @@ -577,7 +576,7 @@ __release(&wqe->lock); goto loop; } - spin_unlock_irq(&wqe->lock); + raw_spin_unlock_irq(&wqe->lock); if (signal_pending(current)) flush_signals(current); if (schedule_timeout(WORKER_IDLE_TIMEOUT)) @@ -589,11 +588,11 @@ } if (test_bit(IO_WQ_BIT_EXIT, &wq->state)) { - spin_lock_irq(&wqe->lock); + raw_spin_lock_irq(&wqe->lock); if (!wq_list_empty(&wqe->work_list)) io_worker_handle_work(worker); else - spin_unlock_irq(&wqe->lock); + raw_spin_unlock_irq(&wqe->lock); } io_worker_exit(worker); @@ -633,14 +632,14 @@ worker->flags &= ~IO_WORKER_F_RUNNING; - spin_lock_irq(&wqe->lock); + raw_spin_lock_irq(&wqe->lock); io_wqe_dec_running(wqe, worker); - spin_unlock_irq(&wqe->lock); + raw_spin_unlock_irq(&wqe->lock); } static bool create_io_worker(struct io_wq *wq, struct io_wqe *wqe, int index) { - struct io_wqe_acct *acct =&wqe->acct[index]; + struct io_wqe_acct *acct = &wqe->acct[index]; struct io_worker *worker; worker = kzalloc_node(sizeof(*worker), GFP_KERNEL, wqe->node); @@ -658,8 +657,9 @@ kfree(worker); return false; } + kthread_bind_mask(worker->task, cpumask_of_node(wqe->node)); - spin_lock_irq(&wqe->lock); + raw_spin_lock_irq(&wqe->lock); hlist_nulls_add_head_rcu(&worker->nulls_node, &wqe->free_list); list_add_tail_rcu(&worker->all_list, &wqe->all_list); worker->flags |= IO_WORKER_F_FREE; @@ -668,11 +668,12 @@ if (!acct->nr_workers && (worker->flags & IO_WORKER_F_BOUND)) worker->flags |= IO_WORKER_F_FIXED; acct->nr_workers++; - spin_unlock_irq(&wqe->lock); + raw_spin_unlock_irq(&wqe->lock); if (index == IO_WQ_ACCT_UNBOUND) atomic_inc(&wq->user->processes); + refcount_inc(&wq->refs); wake_up_process(worker->task); return true; } @@ -688,28 +689,63 @@ return acct->nr_workers < acct->max_workers; } +static bool io_wqe_worker_send_sig(struct io_worker *worker, void *data) +{ + send_sig(SIGINT, worker->task, 1); + return false; +} + +/* + * Iterate the passed in list and call the specific function for each + * worker that isn't exiting + */ +static bool io_wq_for_each_worker(struct io_wqe *wqe, + bool (*func)(struct io_worker *, void *), + void *data) +{ + struct io_worker *worker; + bool ret = false; + + list_for_each_entry_rcu(worker, &wqe->all_list, all_list) { + if (io_worker_get(worker)) { + /* no task if node is/was offline */ + if (worker->task) + ret = func(worker, data); + io_worker_release(worker); + if (ret) + break; + } + } + + return ret; +} + +static bool io_wq_worker_wake(struct io_worker *worker, void *data) +{ + wake_up_process(worker->task); + return false; +} + /* * Manager thread. Tasked with creating new workers, if we need them. */ static int io_wq_manager(void *data) { struct io_wq *wq = data; - int workers_to_create = num_possible_nodes(); int node; /* create fixed workers */ - refcount_set(&wq->refs, workers_to_create); + refcount_set(&wq->refs, 1); for_each_node(node) { if (!node_online(node)) continue; - if (!create_io_worker(wq, wq->wqes[node], IO_WQ_ACCT_BOUND)) - goto err; - workers_to_create--; + if (create_io_worker(wq, wq->wqes[node], IO_WQ_ACCT_BOUND)) + continue; + set_bit(IO_WQ_BIT_ERROR, &wq->state); + set_bit(IO_WQ_BIT_EXIT, &wq->state); + goto out; } - while (workers_to_create--) - refcount_dec(&wq->refs); - complete(&wq->done); while (!kthread_should_stop()) { @@ -723,12 +759,12 @@ if (!node_online(node)) continue; - spin_lock_irq(&wqe->lock); + raw_spin_lock_irq(&wqe->lock); if (io_wqe_need_worker(wqe, IO_WQ_ACCT_BOUND)) fork_worker[IO_WQ_ACCT_BOUND] = true; if (io_wqe_need_worker(wqe, IO_WQ_ACCT_UNBOUND)) fork_worker[IO_WQ_ACCT_UNBOUND] = true; - spin_unlock_irq(&wqe->lock); + raw_spin_unlock_irq(&wqe->lock); if (fork_worker[IO_WQ_ACCT_BOUND]) create_io_worker(wq, wqe, IO_WQ_ACCT_BOUND); if (fork_worker[IO_WQ_ACCT_UNBOUND]) @@ -741,12 +777,18 @@ if (current->task_works) task_work_run(); - return 0; -err: - set_bit(IO_WQ_BIT_ERROR, &wq->state); - set_bit(IO_WQ_BIT_EXIT, &wq->state); - if (refcount_sub_and_test(workers_to_create, &wq->refs)) +out: + if (refcount_dec_and_test(&wq->refs)) { complete(&wq->done); + return 0; + } + /* if ERROR is set and we get here, we have workers to wake */ + if (test_bit(IO_WQ_BIT_ERROR, &wq->state)) { + rcu_read_lock(); + for_each_node(node) + io_wq_for_each_worker(wq->wqes[node], io_wq_worker_wake, NULL); + rcu_read_unlock(); + } return 0; } @@ -825,10 +867,10 @@ } work_flags = work->flags; - spin_lock_irqsave(&wqe->lock, flags); + raw_spin_lock_irqsave(&wqe->lock, flags); io_wqe_insert_work(wqe, work); wqe->flags &= ~IO_WQE_FLAG_STALLED; - spin_unlock_irqrestore(&wqe->lock, flags); + raw_spin_unlock_irqrestore(&wqe->lock, flags); if ((work_flags & IO_WQ_WORK_CONCURRENT) || !atomic_read(&acct->nr_running)) @@ -854,37 +896,6 @@ work->flags |= (IO_WQ_WORK_HASHED | (bit << IO_WQ_HASH_SHIFT)); } -static bool io_wqe_worker_send_sig(struct io_worker *worker, void *data) -{ - send_sig(SIGINT, worker->task, 1); - return false; -} - -/* - * Iterate the passed in list and call the specific function for each - * worker that isn't exiting - */ -static bool io_wq_for_each_worker(struct io_wqe *wqe, - bool (*func)(struct io_worker *, void *), - void *data) -{ - struct io_worker *worker; - bool ret = false; - - list_for_each_entry_rcu(worker, &wqe->all_list, all_list) { - if (io_worker_get(worker)) { - /* no task if node is/was offline */ - if (worker->task) - ret = func(worker, data); - io_worker_release(worker); - if (ret) - break; - } - } - - return ret; -} - void io_wq_cancel_all(struct io_wq *wq) { int node; @@ -929,6 +940,24 @@ return match->nr_running && !match->cancel_all; } +static inline void io_wqe_remove_pending(struct io_wqe *wqe, + struct io_wq_work *work, + struct io_wq_work_node *prev) +{ + unsigned int hash = io_get_work_hash(work); + struct io_wq_work *prev_work = NULL; + + if (io_wq_is_hashed(work) && work == wqe->hash_tail[hash]) { + if (prev) + prev_work = container_of(prev, struct io_wq_work, list); + if (prev_work && io_get_work_hash(prev_work) == hash) + wqe->hash_tail[hash] = prev_work; + else + wqe->hash_tail[hash] = NULL; + } + wq_list_del(&wqe->work_list, &work->list, prev); +} + static void io_wqe_cancel_pending_work(struct io_wqe *wqe, struct io_cb_cancel_data *match) { @@ -937,14 +966,13 @@ unsigned long flags; retry: - spin_lock_irqsave(&wqe->lock, flags); + raw_spin_lock_irqsave(&wqe->lock, flags); wq_list_for_each(node, prev, &wqe->work_list) { work = container_of(node, struct io_wq_work, list); if (!match->fn(work, match->data)) continue; - - wq_list_del(&wqe->work_list, node, prev); - spin_unlock_irqrestore(&wqe->lock, flags); + io_wqe_remove_pending(wqe, work, prev); + raw_spin_unlock_irqrestore(&wqe->lock, flags); io_run_cancel(work, wqe); match->nr_pending++; if (!match->cancel_all) @@ -953,7 +981,7 @@ /* not safe to continue after unlock */ goto retry; } - spin_unlock_irqrestore(&wqe->lock, flags); + raw_spin_unlock_irqrestore(&wqe->lock, flags); } static void io_wqe_cancel_running_work(struct io_wqe *wqe, @@ -1061,7 +1089,7 @@ } atomic_set(&wqe->acct[IO_WQ_ACCT_UNBOUND].nr_running, 0); wqe->wq = wq; - spin_lock_init(&wqe->lock); + raw_spin_lock_init(&wqe->lock); INIT_WQ_LIST(&wqe->work_list); INIT_HLIST_NULLS_HEAD(&wqe->free_list, 0); INIT_LIST_HEAD(&wqe->all_list); @@ -1100,12 +1128,6 @@ return refcount_inc_not_zero(&wq->use_refs); } -static bool io_wq_worker_wake(struct io_worker *worker, void *data) -{ - wake_up_process(worker->task); - return false; -} - static void __io_wq_destroy(struct io_wq *wq) { int node; --- linux-azure-5.8-5.8.0.orig/fs/io-wq.h +++ linux-azure-5.8-5.8.0/fs/io-wq.h @@ -50,6 +50,7 @@ list->last->next = node; list->last = node; } + node->next = NULL; } static inline void wq_list_cut(struct io_wq_work_list *list, @@ -88,6 +89,7 @@ struct files_struct *files; struct mm_struct *mm; const struct cred *creds; + struct nsproxy *nsproxy; struct fs_struct *fs; unsigned flags; }; --- linux-azure-5.8-5.8.0.orig/fs/io_uring.c +++ linux-azure-5.8-5.8.0/fs/io_uring.c @@ -78,6 +78,7 @@ #include #include #include +#include #define CREATE_TRACE_POINTS #include @@ -198,6 +199,7 @@ struct list_head file_list; struct fixed_file_data *file_data; struct llist_node llist; + bool done; }; struct fixed_file_data { @@ -264,7 +266,16 @@ /* IO offload */ struct io_wq *io_wq; struct task_struct *sqo_thread; /* if using sq thread polling */ - struct mm_struct *sqo_mm; + + /* + * For SQPOLL usage - we hold a reference to the parent task, so we + * have access to the ->files + */ + struct task_struct *sqo_task; + + /* Only used for accounting purposes */ + struct mm_struct *mm_account; + wait_queue_head_t sqo_wait; /* @@ -274,8 +285,6 @@ */ struct fixed_file_data *file_data; unsigned nr_user_files; - int ring_fd; - struct file *ring_file; /* if used, fixed mapped user buffers */ unsigned nr_user_bufs; @@ -304,6 +313,7 @@ unsigned cq_entries; unsigned cq_mask; atomic_t cq_timeouts; + unsigned cq_last_tm_flush; unsigned long cq_check_overflow; struct wait_queue_head cq_wait; struct fasync_struct *cq_fasync; @@ -541,7 +551,6 @@ REQ_F_NO_FILE_TABLE_BIT, REQ_F_QUEUE_TIMEOUT_BIT, REQ_F_WORK_INITIALIZED_BIT, - REQ_F_TASK_PINNED_BIT, /* not a real bit, just to check we're not overflowing the space */ __REQ_F_LAST_BIT, @@ -599,8 +608,6 @@ REQ_F_QUEUE_TIMEOUT = BIT(REQ_F_QUEUE_TIMEOUT_BIT), /* io_wq_work is initialized */ REQ_F_WORK_INITIALIZED = BIT(REQ_F_WORK_INITIALIZED_BIT), - /* req->task is refcounted */ - REQ_F_TASK_PINNED = BIT(REQ_F_TASK_PINNED_BIT), }; struct async_poll { @@ -669,12 +676,12 @@ * restore the work, if needed. */ struct { - struct callback_head task_work; struct hlist_node hash_node; struct async_poll *apoll; }; struct io_wq_work work; }; + struct callback_head task_work; }; #define IO_PLUG_THRESHOLD 2 @@ -915,21 +922,6 @@ } EXPORT_SYMBOL(io_uring_get_socket); -static void io_get_req_task(struct io_kiocb *req) -{ - if (req->flags & REQ_F_TASK_PINNED) - return; - get_task_struct(req->task); - req->flags |= REQ_F_TASK_PINNED; -} - -/* not idempotent -- it doesn't clear REQ_F_TASK_PINNED */ -static void __io_put_req_task(struct io_kiocb *req) -{ - if (req->flags & REQ_F_TASK_PINNED) - put_task_struct(req->task); -} - static void io_file_put_work(struct work_struct *work); /* @@ -1039,11 +1031,6 @@ /* order cqe stores with ring update */ smp_store_release(&rings->cq.tail, ctx->cached_cq_tail); - - if (wq_has_sleeper(&ctx->cq_wait)) { - wake_up_interruptible(&ctx->cq_wait); - kill_fasync(&ctx->cq_fasync, SIGIO, POLL_IN); - } } static inline void io_req_work_grab_env(struct io_kiocb *req, @@ -1099,6 +1086,9 @@ io_req_init_async(req); + if (req->flags & REQ_F_FORCE_ASYNC) + req->work.flags |= IO_WQ_WORK_CONCURRENT; + if (req->flags & REQ_F_ISREG) { if (def->hash_reg_file) io_wq_hash_work(&req->work, file_inode(req->file)); @@ -1141,14 +1131,34 @@ } } -static void io_kill_timeouts(struct io_ring_ctx *ctx) +static bool io_task_match(struct io_kiocb *req, struct task_struct *tsk) +{ + struct io_ring_ctx *ctx = req->ctx; + + if (!tsk || req->task == tsk) + return true; + if ((ctx->flags & IORING_SETUP_SQPOLL) && req->task == ctx->sqo_thread) + return true; + return false; +} + +/* + * Returns true if we found and killed one or more timeouts + */ +static bool io_kill_timeouts(struct io_ring_ctx *ctx, struct task_struct *tsk) { struct io_kiocb *req, *tmp; + int canceled = 0; spin_lock_irq(&ctx->completion_lock); - list_for_each_entry_safe(req, tmp, &ctx->timeout_list, list) - io_kill_timeout(req); + list_for_each_entry_safe(req, tmp, &ctx->timeout_list, list) { + if (io_task_match(req, tsk)) { + io_kill_timeout(req); + canceled++; + } + } spin_unlock_irq(&ctx->completion_lock); + return canceled != 0; } static void __io_queue_deferred(struct io_ring_ctx *ctx) @@ -1166,19 +1176,38 @@ static void io_flush_timeouts(struct io_ring_ctx *ctx) { - while (!list_empty(&ctx->timeout_list)) { + u32 seq; + + if (list_empty(&ctx->timeout_list)) + return; + + seq = ctx->cached_cq_tail - atomic_read(&ctx->cq_timeouts); + + do { + u32 events_needed, events_got; struct io_kiocb *req = list_first_entry(&ctx->timeout_list, struct io_kiocb, list); if (req->flags & REQ_F_TIMEOUT_NOSEQ) break; - if (req->timeout.target_seq != ctx->cached_cq_tail - - atomic_read(&ctx->cq_timeouts)) + + /* + * Since seq can easily wrap around over time, subtract + * the last seq at which timeouts were flushed before comparing. + * Assuming not more than 2^31-1 events have happened since, + * these subtractions won't have wrapped, so we can check if + * target is in [last_seq, current_seq] by comparing the two. + */ + events_needed = req->timeout.target_seq - ctx->cq_last_tm_flush; + events_got = seq - ctx->cq_last_tm_flush; + if (events_got < events_needed) break; list_del_init(&req->list); io_kill_timeout(req); - } + } while (!list_empty(&ctx->timeout_list)); + + ctx->cq_last_tm_flush = seq; } static void io_commit_cqring(struct io_ring_ctx *ctx) @@ -1221,6 +1250,10 @@ static void io_cqring_ev_posted(struct io_ring_ctx *ctx) { + if (wq_has_sleeper(&ctx->cq_wait)) { + wake_up_interruptible(&ctx->cq_wait); + kill_fasync(&ctx->cq_fasync, SIGIO, POLL_IN); + } if (waitqueue_active(&ctx->wait)) wake_up(&ctx->wait); if (waitqueue_active(&ctx->sqo_wait)) @@ -1229,18 +1262,28 @@ eventfd_signal(ctx->cq_ev_fd, 1); } +static inline bool io_match_files(struct io_kiocb *req, + struct files_struct *files) +{ + if (!files) + return true; + if (req->flags & REQ_F_WORK_INITIALIZED) + return req->work.files == files; + return false; +} + /* Returns true if there are no backlogged entries after the flush */ -static bool io_cqring_overflow_flush(struct io_ring_ctx *ctx, bool force) +static bool io_cqring_overflow_flush(struct io_ring_ctx *ctx, bool force, + struct task_struct *tsk, + struct files_struct *files) { struct io_rings *rings = ctx->rings; + struct io_kiocb *req, *tmp; struct io_uring_cqe *cqe; - struct io_kiocb *req; unsigned long flags; LIST_HEAD(list); if (!force) { - if (list_empty_careful(&ctx->cq_overflow_list)) - return true; if ((ctx->cached_cq_tail - READ_ONCE(rings->cq.head) == rings->cq_ring_entries)) return false; @@ -1248,12 +1291,13 @@ spin_lock_irqsave(&ctx->completion_lock, flags); - /* if force is set, the ring is going away. always drop after that */ - if (force) - ctx->cq_overflow_flushed = 1; - cqe = NULL; - while (!list_empty(&ctx->cq_overflow_list)) { + list_for_each_entry_safe(req, tmp, &ctx->cq_overflow_list, list) { + if (tsk && req->task != tsk) + continue; + if (!io_match_files(req, files)) + continue; + cqe = io_get_cqring(ctx); if (!cqe && !force) break; @@ -1307,7 +1351,12 @@ WRITE_ONCE(cqe->user_data, req->user_data); WRITE_ONCE(cqe->res, res); WRITE_ONCE(cqe->flags, cflags); - } else if (ctx->cq_overflow_flushed) { + } else if (ctx->cq_overflow_flushed || req->task->io_uring->in_idle) { + /* + * If we're in ring overflow flush mode, or in task cancel mode, + * then we cannot store the request for later flushing, we need + * to drop it on the floor. + */ WRITE_ONCE(ctx->rings->cq_overflow, atomic_inc_return(&ctx->cached_cq_overflow)); } else { @@ -1412,15 +1461,35 @@ fput(file); } +static void io_req_drop_files(struct io_kiocb *req) +{ + struct io_ring_ctx *ctx = req->ctx; + unsigned long flags; + + put_files_struct(req->work.files); + put_nsproxy(req->work.nsproxy); + spin_lock_irqsave(&ctx->inflight_lock, flags); + list_del(&req->inflight_entry); + spin_unlock_irqrestore(&ctx->inflight_lock, flags); + req->flags &= ~REQ_F_INFLIGHT; + req->work.files = NULL; + if (waitqueue_active(&ctx->inflight_wait)) + wake_up(&ctx->inflight_wait); +} + static void __io_req_aux_free(struct io_kiocb *req) { + struct io_uring_task *tctx = req->task->io_uring; if (req->flags & REQ_F_NEED_CLEANUP) io_cleanup_req(req); kfree(req->io); if (req->file) io_put_file(req, req->file, (req->flags & REQ_F_FIXED_FILE)); - __io_put_req_task(req); + atomic_long_inc(&tctx->req_complete); + if (tctx->in_idle) + wake_up(&tctx->wait); + put_task_struct(req->task); io_req_work_drop_env(req); } @@ -1428,16 +1497,8 @@ { __io_req_aux_free(req); - if (req->flags & REQ_F_INFLIGHT) { - struct io_ring_ctx *ctx = req->ctx; - unsigned long flags; - - spin_lock_irqsave(&ctx->inflight_lock, flags); - list_del(&req->inflight_entry); - if (waitqueue_active(&ctx->inflight_wait)) - wake_up(&ctx->inflight_wait); - spin_unlock_irqrestore(&ctx->inflight_lock, flags); - } + if (req->flags & REQ_F_INFLIGHT) + io_req_drop_files(req); percpu_ref_put(&req->ctx->refs); if (likely(!io_is_fallback_req(req))) @@ -1549,12 +1610,9 @@ /* * Called if REQ_F_LINK_HEAD is set, and we fail the head request */ -static void io_fail_links(struct io_kiocb *req) +static void __io_fail_links(struct io_kiocb *req) { struct io_ring_ctx *ctx = req->ctx; - unsigned long flags; - - spin_lock_irqsave(&ctx->completion_lock, flags); while (!list_empty(&req->link_list)) { struct io_kiocb *link = list_first_entry(&req->link_list, @@ -1568,13 +1626,29 @@ io_link_cancel_timeout(link); } else { io_cqring_fill_event(link, -ECANCELED); + link->flags |= REQ_F_COMP_LOCKED; __io_double_put_req(link); } req->flags &= ~REQ_F_LINK_TIMEOUT; } io_commit_cqring(ctx); - spin_unlock_irqrestore(&ctx->completion_lock, flags); +} + +static void io_fail_links(struct io_kiocb *req) +{ + struct io_ring_ctx *ctx = req->ctx; + + if (!(req->flags & REQ_F_COMP_LOCKED)) { + unsigned long flags; + + spin_lock_irqsave(&ctx->completion_lock, flags); + __io_fail_links(req); + spin_unlock_irqrestore(&ctx->completion_lock, flags); + } else { + __io_fail_links(req); + } + io_cqring_ev_posted(ctx); } @@ -1701,10 +1775,10 @@ * we wake up the task, and the next invocation will flush the * entries. We cannot safely to it from here. */ - if (noflush && !list_empty(&ctx->cq_overflow_list)) + if (noflush) return -1U; - io_cqring_overflow_flush(ctx, false); + io_cqring_overflow_flush(ctx, false, NULL, NULL); } /* See comment at the top of this file */ @@ -1725,7 +1799,7 @@ if ((req->flags & REQ_F_LINK_HEAD) || io_is_fallback_req(req)) return false; - if (req->file || req->io) + if (req->file || req->io || req->task) rb->need_iter++; rb->reqs[rb->to_free++] = req; @@ -1747,6 +1821,23 @@ return cflags; } +static inline bool io_run_task_work(void) +{ + /* + * Not safe to run on exiting task, and the task_work handling will + * not add work to such a task. + */ + if (unlikely(current->flags & PF_EXITING)) + return false; + if (current->task_works) { + __set_current_state(TASK_RUNNING); + task_work_run(); + return true; + } + + return false; +} + static void io_iopoll_queue(struct list_head *again) { struct io_kiocb *req; @@ -1786,6 +1877,7 @@ req = list_first_entry(done, struct io_kiocb, list); if (READ_ONCE(req->result) == -EAGAIN) { + req->result = 0; req->iopoll_completed = 0; list_move_tail(&req->list, &again); continue; @@ -1936,6 +2028,7 @@ */ if (!(++iters & 7)) { mutex_unlock(&ctx->uring_lock); + io_run_task_work(); mutex_lock(&ctx->uring_lock); } @@ -2416,9 +2509,7 @@ iov[0].iov_len = kbuf->len; return 0; } - if (!req->rw.len) - return 0; - else if (req->rw.len > 1) + if (req->rw.len != 1) return -EINVAL; #ifdef CONFIG_COMPAT @@ -2492,6 +2583,11 @@ return import_iovec(rw, buf, sqe_len, UIO_FASTIOV, iovec, iter); } +static inline loff_t *io_kiocb_ppos(struct kiocb *kiocb) +{ + return kiocb->ki_filp->f_mode & FMODE_STREAM ? NULL : &kiocb->ki_pos; +} + /* * For files that don't have ->read_iter() and ->write_iter(), handle them * by looping over ->read() or ->write() manually. @@ -2527,10 +2623,10 @@ if (rw == READ) { nr = file->f_op->read(file, iovec.iov_base, - iovec.iov_len, &kiocb->ki_pos); + iovec.iov_len, io_kiocb_ppos(kiocb)); } else { nr = file->f_op->write(file, iovec.iov_base, - iovec.iov_len, &kiocb->ki_pos); + iovec.iov_len, io_kiocb_ppos(kiocb)); } if (iov_iter_is_bvec(iter)) @@ -2655,17 +2751,26 @@ goto copy_iov; iov_count = iov_iter_count(&iter); - ret = rw_verify_area(READ, req->file, &kiocb->ki_pos, iov_count); + ret = rw_verify_area(READ, req->file, io_kiocb_ppos(kiocb), iov_count); if (!ret) { ssize_t ret2; if (req->file->f_op->read_iter) ret2 = call_read_iter(req->file, kiocb, &iter); - else + else if (req->file->f_op->read) ret2 = loop_rw_iter(READ, req->file, kiocb, &iter); + else + ret2 = -EINVAL; + + /* no retry on NONBLOCK marked file */ + if (ret2 == -EAGAIN && (req->file->f_flags & O_NONBLOCK)) { + ret = 0; + goto done; + } /* Catch -EAGAIN return for forced non-blocking submission */ if (!force_nonblock || ret2 != -EAGAIN) { + done: kiocb_done(kiocb, ret2); } else { copy_iov: @@ -2752,7 +2857,7 @@ goto copy_iov; iov_count = iov_iter_count(&iter); - ret = rw_verify_area(WRITE, req->file, &kiocb->ki_pos, iov_count); + ret = rw_verify_area(WRITE, req->file, io_kiocb_ppos(kiocb), iov_count); if (!ret) { ssize_t ret2; @@ -2776,8 +2881,10 @@ if (req->file->f_op->write_iter) ret2 = call_write_iter(req->file, kiocb, &iter); - else + else if (req->file->f_op->write) ret2 = loop_rw_iter(WRITE, req->file, kiocb, &iter); + else + ret2 = -EINVAL; if (!force_nonblock) current->signal->rlim[RLIMIT_FSIZE].rlim_cur = RLIM_INFINITY; @@ -2788,7 +2895,13 @@ */ if (ret2 == -EOPNOTSUPP && (kiocb->ki_flags & IOCB_NOWAIT)) ret2 = -EAGAIN; + /* no retry on NONBLOCK marked file */ + if (ret2 == -EAGAIN && (req->file->f_flags & O_NONBLOCK)) { + ret = 0; + goto done; + } if (!force_nonblock || ret2 != -EAGAIN) { +done: kiocb_done(kiocb, ret2); } else { copy_iov: @@ -3008,8 +3121,6 @@ const char __user *fname; int ret; - if (unlikely(req->ctx->flags & (IORING_SETUP_IOPOLL|IORING_SETUP_SQPOLL))) - return -EINVAL; if (unlikely(sqe->ioprio || sqe->buf_index)) return -EINVAL; if (unlikely(req->flags & REQ_F_FIXED_FILE)) @@ -3036,6 +3147,8 @@ { u64 flags, mode; + if (unlikely(req->ctx->flags & (IORING_SETUP_IOPOLL|IORING_SETUP_SQPOLL))) + return -EINVAL; if (req->flags & REQ_F_NEED_CLEANUP) return 0; mode = READ_ONCE(sqe->len); @@ -3050,6 +3163,8 @@ size_t len; int ret; + if (unlikely(req->ctx->flags & (IORING_SETUP_IOPOLL|IORING_SETUP_SQPOLL))) + return -EINVAL; if (req->flags & REQ_F_NEED_CLEANUP) return 0; how = u64_to_user_ptr(READ_ONCE(sqe->addr2)); @@ -3268,7 +3383,7 @@ #if defined(CONFIG_EPOLL) if (sqe->ioprio || sqe->buf_index) return -EINVAL; - if (unlikely(req->ctx->flags & IORING_SETUP_IOPOLL)) + if (unlikely(req->ctx->flags & (IORING_SETUP_IOPOLL | IORING_SETUP_SQPOLL))) return -EINVAL; req->epoll.epfd = READ_ONCE(sqe->fd); @@ -3385,7 +3500,7 @@ static int io_statx_prep(struct io_kiocb *req, const struct io_uring_sqe *sqe) { - if (unlikely(req->ctx->flags & IORING_SETUP_IOPOLL)) + if (unlikely(req->ctx->flags & (IORING_SETUP_IOPOLL | IORING_SETUP_SQPOLL))) return -EINVAL; if (sqe->ioprio || sqe->buf_index) return -EINVAL; @@ -3431,7 +3546,6 @@ * io_wq_work.flags, so initialize io_wq_work firstly. */ io_req_init_async(req); - req->work.flags |= IO_WQ_WORK_NO_CANCEL; if (unlikely(req->ctx->flags & (IORING_SETUP_IOPOLL|IORING_SETUP_SQPOLL))) return -EINVAL; @@ -3442,8 +3556,7 @@ return -EBADF; req->close.fd = READ_ONCE(sqe->fd); - if ((req->file && req->file->f_op == &io_uring_fops) || - req->close.fd == req->ctx->ring_fd) + if ((req->file && req->file->f_op == &io_uring_fops)) return -EBADF; req->close.put_file = NULL; @@ -3464,6 +3577,8 @@ /* if the file has a flush method, be safe and punt to async */ if (close->put_file->f_op->flush && force_nonblock) { + /* not safe to cancel at this point */ + req->work.flags |= IO_WQ_WORK_NO_CANCEL; /* avoid grabbing files - we don't need the files */ req->flags |= REQ_F_NO_FILE_TABLE | REQ_F_MUST_PUNT; return -EAGAIN; @@ -3721,7 +3836,8 @@ return -EFAULT; if (clen < 0) return -EINVAL; - sr->len = io->msg.iov[0].iov_len; + sr->len = clen; + io->msg.iov[0].iov_len = clen; io->msg.iov = NULL; } else { ret = compat_import_iovec(READ, uiov, len, UIO_FASTIOV, @@ -4084,26 +4200,28 @@ int error; }; -static int io_req_task_work_add(struct io_kiocb *req, struct callback_head *cb) +static int io_req_task_work_add(struct io_kiocb *req, struct callback_head *cb, + bool twa_signal_ok) { struct task_struct *tsk = req->task; struct io_ring_ctx *ctx = req->ctx; - int ret, notify = TWA_RESUME; + enum task_work_notify_mode notify; + int ret; /* - * SQPOLL kernel thread doesn't need notification, just a wakeup. - * If we're not using an eventfd, then TWA_RESUME is always fine, - * as we won't have dependencies between request completions for - * other kernel wait conditions. + * SQPOLL kernel thread doesn't need notification, just a wakeup. For + * all other cases, use TWA_SIGNAL unconditionally to ensure we're + * processing task_work. There's no reliable way to tell if TWA_RESUME + * will do the job. */ - if (ctx->flags & IORING_SETUP_SQPOLL) - notify = 0; - else if (ctx->cq_ev_fd) + notify = TWA_NONE; + if (!(ctx->flags & IORING_SETUP_SQPOLL) && twa_signal_ok) notify = TWA_SIGNAL; ret = task_work_add(tsk, cb, notify); if (!ret) wake_up_process(tsk); + return ret; } @@ -4111,6 +4229,7 @@ __poll_t mask, task_work_func_t func) { struct task_struct *tsk; + bool twa_signal_ok; int ret; /* for instances that support it check for an event match first: */ @@ -4124,17 +4243,27 @@ tsk = req->task; req->result = mask; init_task_work(&req->task_work, func); + percpu_ref_get(&req->ctx->refs); + + /* + * If we using the signalfd wait_queue_head for this wakeup, then + * it's not safe to use TWA_SIGNAL as we could be recursing on the + * tsk->sighand->siglock on doing the wakeup. Should not be needed + * either, as the normal wakeup will suffice. + */ + twa_signal_ok = (poll->head != &req->task->sighand->signalfd_wqh); + /* * If this fails, then the task is exiting. When a task exits, the * work gets canceled, so just cancel this request as well instead * of executing it. We can't safely execute it anyway, as we may not * have the needed state needed for it anyway. */ - ret = io_req_task_work_add(req, &req->task_work); + ret = io_req_task_work_add(req, &req->task_work, twa_signal_ok); if (unlikely(ret)) { WRITE_ONCE(poll->canceled, true); tsk = io_wq_get_task(req->ctx->io_wq); - task_work_add(tsk, &req->task_work, 0); + task_work_add(tsk, &req->task_work, TWA_NONE); wake_up_process(tsk); } return 1; @@ -4160,9 +4289,24 @@ return false; } -static void io_poll_remove_double(struct io_kiocb *req, void *data) +static struct io_poll_iocb *io_poll_get_double(struct io_kiocb *req) +{ + /* pure poll stashes this in ->io, poll driven retry elsewhere */ + if (req->opcode == IORING_OP_POLL_ADD) + return (struct io_poll_iocb *) req->io; + return req->apoll->double_poll; +} + +static struct io_poll_iocb *io_poll_get_single(struct io_kiocb *req) +{ + if (req->opcode == IORING_OP_POLL_ADD) + return &req->poll; + return &req->apoll->poll; +} + +static void io_poll_remove_double(struct io_kiocb *req) { - struct io_poll_iocb *poll = data; + struct io_poll_iocb *poll = io_poll_get_double(req); lockdep_assert_held(&req->ctx->completion_lock); @@ -4182,7 +4326,7 @@ { struct io_ring_ctx *ctx = req->ctx; - io_poll_remove_double(req, req->io); + io_poll_remove_double(req); req->poll.done = true; io_cqring_fill_event(req, error ? error : mangle_poll(mask)); io_commit_cqring(ctx); @@ -4208,6 +4352,7 @@ static void io_poll_task_func(struct callback_head *cb) { struct io_kiocb *req = container_of(cb, struct io_kiocb, task_work); + struct io_ring_ctx *ctx = req->ctx; struct io_kiocb *nxt = NULL; io_poll_task_handler(req, &nxt); @@ -4218,19 +4363,22 @@ __io_queue_sqe(nxt, NULL); mutex_unlock(&ctx->uring_lock); } + percpu_ref_put(&ctx->refs); } static int io_poll_double_wake(struct wait_queue_entry *wait, unsigned mode, int sync, void *key) { struct io_kiocb *req = wait->private; - struct io_poll_iocb *poll = req->apoll->double_poll; + struct io_poll_iocb *poll = io_poll_get_single(req); __poll_t mask = key_to_poll(key); /* for instances that support it check for an event match first: */ if (mask && !(mask & poll->events)) return 0; + list_del_init(&wait->entry); + if (poll && poll->head) { bool done; @@ -4238,9 +4386,13 @@ done = list_empty(&poll->wait.entry); if (!done) list_del_init(&poll->wait.entry); + /* make sure double remove sees this as being gone */ + wait->private = NULL; spin_unlock(&poll->head->lock); - if (!done) - __io_async_wake(req, poll, mask, io_poll_task_func); + if (!done) { + /* use wait func handler, so it matches the rq type */ + poll->wait.func(&poll->wait, mode, sync, key); + } } refcount_dec(&req->refs); return 1; @@ -4313,9 +4465,11 @@ struct io_kiocb *req) { if (io_op_defs[req->opcode].needs_mm && !current->mm) { - if (unlikely(!mmget_not_zero(ctx->sqo_mm))) + if (unlikely(!(ctx->flags & IORING_SETUP_SQPOLL) || + !ctx->sqo_task->mm || + !mmget_not_zero(ctx->sqo_task->mm))) return -EFAULT; - kthread_use_mm(ctx->sqo_mm); + kthread_use_mm(ctx->sqo_task->mm); } return 0; @@ -4332,6 +4486,7 @@ if (io_poll_rewait(req, &apoll->poll)) { spin_unlock_irq(&ctx->completion_lock); + percpu_ref_put(&ctx->refs); return; } @@ -4346,7 +4501,7 @@ } } - io_poll_remove_double(req, apoll->double_poll); + io_poll_remove_double(req); spin_unlock_irq(&ctx->completion_lock); /* restore ->work in case we need to retry again */ @@ -4356,7 +4511,6 @@ kfree(apoll); if (!canceled) { - __set_current_state(TASK_RUNNING); if (io_sq_thread_acquire_mm(ctx, req)) { io_cqring_add_event(req, -EFAULT); goto end_req; @@ -4370,6 +4524,7 @@ req_set_fail_links(req); io_double_put_req(req); } + percpu_ref_put(&ctx->refs); } static int io_async_wake(struct wait_queue_entry *wait, unsigned mode, int sync, @@ -4440,12 +4595,20 @@ struct async_poll *apoll; struct io_poll_table ipt; __poll_t mask, ret; + int rw; if (!req->file || !file_can_poll(req->file)) return false; if (req->flags & (REQ_F_MUST_PUNT | REQ_F_POLLED)) return false; - if (!def->pollin && !def->pollout) + if (def->pollin) + rw = READ; + else if (def->pollout) + rw = WRITE; + else + return false; + /* if we can't nonblock try, then no point in arming a poll handler */ + if (!io_file_supports_async(req->file, rw)) return false; apoll = kmalloc(sizeof(*apoll), GFP_ATOMIC); @@ -4457,7 +4620,6 @@ if (req->flags & REQ_F_WORK_INITIALIZED) memcpy(&apoll->work, &req->work, sizeof(req->work)); - io_get_req_task(req); req->apoll = apoll; INIT_HLIST_NODE(&req->hash_node); @@ -4472,8 +4634,8 @@ ret = __io_arm_poll_handler(req, &apoll->poll, &ipt, mask, io_async_wake); - if (ret) { - io_poll_remove_double(req, apoll->double_poll); + if (ret || ipt.error) { + io_poll_remove_double(req); spin_unlock_irq(&ctx->completion_lock); if (req->flags & REQ_F_WORK_INITIALIZED) memcpy(&req->work, &apoll->work, sizeof(req->work)); @@ -4507,14 +4669,13 @@ { bool do_complete; + io_poll_remove_double(req); + if (req->opcode == IORING_OP_POLL_ADD) { - io_poll_remove_double(req, req->io); do_complete = __io_poll_remove_one(req, &req->poll); } else { struct async_poll *apoll = req->apoll; - io_poll_remove_double(req, apoll->double_poll); - /* non-poll requests have submit ref still */ do_complete = __io_poll_remove_one(req, &apoll->poll); if (do_complete) { @@ -4536,13 +4697,17 @@ io_cqring_fill_event(req, -ECANCELED); io_commit_cqring(req->ctx); req->flags |= REQ_F_COMP_LOCKED; + req_set_fail_links(req); io_put_req(req); } return do_complete; } -static void io_poll_remove_all(struct io_ring_ctx *ctx) +/* + * Returns true if we found and killed one or more poll requests + */ +static bool io_poll_remove_all(struct io_ring_ctx *ctx, struct task_struct *tsk) { struct hlist_node *tmp; struct io_kiocb *req; @@ -4553,13 +4718,17 @@ struct hlist_head *list; list = &ctx->cancel_hash[i]; - hlist_for_each_entry_safe(req, tmp, list, hash_node) - posted += io_poll_remove_one(req); + hlist_for_each_entry_safe(req, tmp, list, hash_node) { + if (io_task_match(req, tsk)) + posted += io_poll_remove_one(req); + } } spin_unlock_irq(&ctx->completion_lock); if (posted) io_cqring_ev_posted(ctx); + + return posted != 0; } static int io_poll_cancel(struct io_ring_ctx *ctx, __u64 sqe_addr) @@ -4645,8 +4814,6 @@ events = READ_ONCE(sqe->poll_events); poll->events = demangle_poll(events) | EPOLLERR | EPOLLHUP; - - io_get_req_task(req); return 0; } @@ -4709,6 +4876,23 @@ return HRTIMER_NORESTART; } +static int __io_timeout_cancel(struct io_kiocb *req) +{ + int ret; + + list_del_init(&req->list); + + ret = hrtimer_try_to_cancel(&req->io->timeout.timer); + if (ret == -1) + return -EALREADY; + + req_set_fail_links(req); + req->flags |= REQ_F_COMP_LOCKED; + io_cqring_fill_event(req, -ECANCELED); + io_put_req(req); + return 0; +} + static int io_timeout_cancel(struct io_ring_ctx *ctx, __u64 user_data) { struct io_kiocb *req; @@ -4716,7 +4900,6 @@ list_for_each_entry(req, &ctx->timeout_list, list) { if (user_data == req->user_data) { - list_del_init(&req->list); ret = 0; break; } @@ -4725,14 +4908,7 @@ if (ret == -ENOENT) return ret; - ret = hrtimer_try_to_cancel(&req->io->timeout.timer); - if (ret == -1) - return -EALREADY; - - req_set_fail_links(req); - io_cqring_fill_event(req, -ECANCELED); - io_put_req(req); - return 0; + return __io_timeout_cancel(req); } static int io_timeout_remove_prep(struct io_kiocb *req, @@ -4835,6 +5011,12 @@ tail = ctx->cached_cq_tail - atomic_read(&ctx->cq_timeouts); req->timeout.target_seq = tail + off; + /* Update the last seq here in case io_flush_timeouts() hasn't. + * This is safe because ->completion_lock is held, and submissions + * and completions are never mixed in the same ->completion_lock section. + */ + ctx->cq_last_tm_flush = tail; + /* * Insertion sort, ensuring the first entry in the list is always * the one we need first. @@ -4940,6 +5122,8 @@ static int io_files_update_prep(struct io_kiocb *req, const struct io_uring_sqe *sqe) { + if (unlikely(req->ctx->flags & IORING_SETUP_SQPOLL)) + return -EINVAL; if (unlikely(req->flags & (REQ_F_FIXED_FILE | REQ_F_BUFFER_SELECT))) return -EINVAL; if (sqe->ioprio || sqe->rw_flags) @@ -5154,6 +5338,8 @@ break; case IORING_OP_OPENAT: case IORING_OP_OPENAT2: + if (req->open.filename) + putname(req->open.filename); break; case IORING_OP_SPLICE: case IORING_OP_TEE: @@ -5520,32 +5706,20 @@ static int io_grab_files(struct io_kiocb *req) { - int ret = -EBADF; struct io_ring_ctx *ctx = req->ctx; if (req->work.files || (req->flags & REQ_F_NO_FILE_TABLE)) return 0; - if (!ctx->ring_file) - return -EBADF; - rcu_read_lock(); + req->work.files = get_files_struct(current); + get_nsproxy(current->nsproxy); + req->work.nsproxy = current->nsproxy; + req->flags |= REQ_F_INFLIGHT; + spin_lock_irq(&ctx->inflight_lock); - /* - * We use the f_ops->flush() handler to ensure that we can flush - * out work accessing these files if the fd is closed. Check if - * the fd has changed since we started down this path, and disallow - * this operation if it has. - */ - if (fcheck(ctx->ring_fd) == ctx->ring_file) { - list_add(&req->inflight_entry, &ctx->inflight_list); - req->flags |= REQ_F_INFLIGHT; - req->work.files = current->files; - ret = 0; - } + list_add(&req->inflight_entry, &ctx->inflight_list); spin_unlock_irq(&ctx->inflight_lock); - rcu_read_unlock(); - - return ret; + return 0; } static enum hrtimer_restart io_link_timeout_fn(struct hrtimer *timer) @@ -5728,13 +5902,6 @@ if (unlikely(ret < 0)) goto fail_req; } - - /* - * Never try inline submit of IOSQE_ASYNC is set, go straight - * to async execution. - */ - io_req_init_async(req); - req->work.flags |= IO_WQ_WORK_CONCURRENT; io_queue_async_work(req); } else { __io_queue_sqe(req, sqe); @@ -5915,6 +6082,8 @@ /* one is dropped after submission, the other at completion */ refcount_set(&req->refs, 2); req->task = current; + get_task_struct(req->task); + atomic_long_inc(&req->task->io_uring->req_issue); req->result = 0; if (unlikely(req->opcode >= IORING_OP_LAST)) @@ -5950,8 +6119,7 @@ return io_req_set_file(state, req, READ_ONCE(sqe->fd)); } -static int io_submit_sqes(struct io_ring_ctx *ctx, unsigned int nr, - struct file *ring_file, int ring_fd) +static int io_submit_sqes(struct io_ring_ctx *ctx, unsigned int nr) { struct io_submit_state state, *statep = NULL; struct io_kiocb *link = NULL; @@ -5959,8 +6127,7 @@ /* if we have a backlog and couldn't flush it all, return BUSY */ if (test_bit(0, &ctx->sq_check_overflow)) { - if (!list_empty(&ctx->cq_overflow_list) && - !io_cqring_overflow_flush(ctx, false)) + if (!io_cqring_overflow_flush(ctx, false, NULL, NULL)) return -EBUSY; } @@ -5975,9 +6142,6 @@ statep = &state; } - ctx->ring_fd = ring_fd; - ctx->ring_file = ring_file; - for (i = 0; i < nr; i++) { const struct io_uring_sqe *sqe; struct io_kiocb *req; @@ -6082,8 +6246,7 @@ if (!list_empty(&ctx->poll_list) || need_resched() || (!time_after(jiffies, timeout) && ret != -EBUSY && !percpu_ref_is_dying(&ctx->refs))) { - if (current->task_works) - task_work_run(); + io_run_task_work(); cond_resched(); continue; } @@ -6115,8 +6278,7 @@ finish_wait(&ctx->sqo_wait, &wait); break; } - if (current->task_works) { - task_work_run(); + if (io_run_task_work()) { finish_wait(&ctx->sqo_wait, &wait); continue; } @@ -6140,13 +6302,12 @@ mutex_lock(&ctx->uring_lock); if (likely(!percpu_ref_is_dying(&ctx->refs))) - ret = io_submit_sqes(ctx, to_submit, NULL, -1); + ret = io_submit_sqes(ctx, to_submit); mutex_unlock(&ctx->uring_lock); timeout = jiffies + ctx->sq_thread_idle; } - if (current->task_works) - task_work_run(); + io_run_task_work(); io_sq_thread_drop_mm(ctx); revert_creds(old_cred); @@ -6211,9 +6372,8 @@ do { if (io_cqring_events(ctx, false) >= min_events) return 0; - if (!current->task_works) + if (!io_run_task_work()) break; - task_work_run(); } while (1); if (sig) { @@ -6235,8 +6395,8 @@ prepare_to_wait_exclusive(&ctx->wait, &iowq.wq, TASK_INTERRUPTIBLE); /* make sure we run task_work before checking for signals */ - if (current->task_works) - task_work_run(); + if (io_run_task_work()) + continue; if (signal_pending(current)) { if (current->jobctl & JOBCTL_TASK_WORK) { spin_lock_irq(¤t->sighand->siglock); @@ -6300,9 +6460,8 @@ return -ENXIO; spin_lock(&data->lock); - if (!list_empty(&data->ref_list)) - ref_node = list_first_entry(&data->ref_list, - struct fixed_file_ref_node, node); + ref_node = container_of(data->cur_refs, struct fixed_file_ref_node, + refs); spin_unlock(&data->lock); if (ref_node) percpu_ref_kill(&ref_node->refs); @@ -6553,10 +6712,6 @@ kfree(pfile); } - spin_lock(&file_data->lock); - list_del(&ref_node->node); - spin_unlock(&file_data->lock); - percpu_ref_exit(&ref_node->refs); kfree(ref_node); percpu_ref_put(&file_data->refs); @@ -6583,17 +6738,33 @@ static void io_file_data_ref_zero(struct percpu_ref *ref) { struct fixed_file_ref_node *ref_node; + struct fixed_file_data *data; struct io_ring_ctx *ctx; - bool first_add; + bool first_add = false; int delay = HZ; ref_node = container_of(ref, struct fixed_file_ref_node, refs); - ctx = ref_node->file_data->ctx; + data = ref_node->file_data; + ctx = data->ctx; + + spin_lock(&data->lock); + ref_node->done = true; + + while (!list_empty(&data->ref_list)) { + ref_node = list_first_entry(&data->ref_list, + struct fixed_file_ref_node, node); + /* recycle ref nodes in order */ + if (!ref_node->done) + break; + list_del(&ref_node->node); + first_add |= llist_add(&ref_node->llist, &ctx->file_put_llist); + } + spin_unlock(&data->lock); + - if (percpu_ref_is_dying(&ctx->file_data->refs)) + if (percpu_ref_is_dying(&data->refs)) delay = 0; - first_add = llist_add(&ref_node->llist, &ctx->file_put_llist); if (!delay) mod_delayed_work(system_wq, &ctx->file_put_work, 0); else if (first_add) @@ -6617,6 +6788,7 @@ INIT_LIST_HEAD(&ref_node->node); INIT_LIST_HEAD(&ref_node->file_list); ref_node->file_data = ctx->file_data; + ref_node->done = false; return ref_node; } @@ -6744,7 +6916,7 @@ ctx->file_data->cur_refs = &ref_node->refs; spin_lock(&ctx->file_data->lock); - list_add(&ref_node->node, &ctx->file_data->ref_list); + list_add_tail(&ref_node->node, &ctx->file_data->ref_list); spin_unlock(&ctx->file_data->lock); percpu_ref_get(&ctx->file_data->refs); return ret; @@ -6847,7 +7019,7 @@ table = &ctx->file_data->table[i >> IORING_FILE_TABLE_SHIFT]; index = i & IORING_FILE_TABLE_MASK; if (table->files[index]) { - file = io_file_from_index(ctx, index); + file = table->files[index]; err = io_queue_file_removal(data, file); if (err) break; @@ -6876,6 +7048,7 @@ table->files[index] = file; err = io_sqe_file_register(ctx, file, i); if (err) { + table->files[index] = NULL; fput(file); break; } @@ -6888,7 +7061,7 @@ if (needs_switch) { percpu_ref_kill(data->cur_refs); spin_lock(&data->lock); - list_add(&ref_node->node, &data->ref_list); + list_add_tail(&ref_node->node, &data->ref_list); data->cur_refs = &ref_node->refs; spin_unlock(&data->lock); percpu_ref_get(&ctx->file_data->refs); @@ -6970,14 +7143,38 @@ return ret; } +static int io_uring_alloc_task_context(struct task_struct *task) +{ + struct io_uring_task *tctx; + + tctx = kmalloc(sizeof(*tctx), GFP_KERNEL); + if (unlikely(!tctx)) + return -ENOMEM; + + xa_init(&tctx->xa); + init_waitqueue_head(&tctx->wait); + tctx->last = NULL; + tctx->in_idle = 0; + atomic_long_set(&tctx->req_issue, 0); + atomic_long_set(&tctx->req_complete, 0); + task->io_uring = tctx; + return 0; +} + +void __io_uring_free(struct task_struct *tsk) +{ + struct io_uring_task *tctx = tsk->io_uring; + + WARN_ON_ONCE(!xa_empty(&tctx->xa)); + kfree(tctx); + tsk->io_uring = NULL; +} + static int io_sq_offload_start(struct io_ring_ctx *ctx, struct io_uring_params *p) { int ret; - mmgrab(current->mm); - ctx->sqo_mm = current->mm; - if (ctx->flags & IORING_SETUP_SQPOLL) { ret = -EPERM; if (!capable(CAP_SYS_ADMIN)) @@ -7008,6 +7205,9 @@ ctx->sqo_thread = NULL; goto err; } + ret = io_uring_alloc_task_context(ctx->sqo_thread); + if (ret) + goto err; wake_up_process(ctx->sqo_thread); } else if (p->flags & IORING_SETUP_SQ_AFF) { /* Can't have SQ_AFF without SQPOLL */ @@ -7022,8 +7222,6 @@ return 0; err: io_finish_async(ctx); - mmdrop(ctx->sqo_mm); - ctx->sqo_mm = NULL; return ret; } @@ -7086,6 +7284,9 @@ return SIZE_MAX; #endif + if (sq_offset) + *sq_offset = off; + sq_array_size = array_size(sizeof(u32), sq_entries); if (sq_array_size == SIZE_MAX) return SIZE_MAX; @@ -7093,9 +7294,6 @@ if (check_add_overflow(off, sq_array_size, &off)) return SIZE_MAX; - if (sq_offset) - *sq_offset = off; - return off; } @@ -7353,8 +7551,12 @@ static void io_ring_ctx_free(struct io_ring_ctx *ctx) { io_finish_async(ctx); - if (ctx->sqo_mm) - mmdrop(ctx->sqo_mm); + if (ctx->sqo_task) { + put_task_struct(ctx->sqo_task); + ctx->sqo_task = NULL; + mmdrop(ctx->mm_account); + ctx->mm_account = NULL; + } io_iopoll_reap_events(ctx); io_sqe_buffer_unregister(ctx); @@ -7425,7 +7627,7 @@ ctx = container_of(work, struct io_ring_ctx, exit_work); if (ctx->rings) - io_cqring_overflow_flush(ctx, true); + io_cqring_overflow_flush(ctx, true, NULL, NULL); /* * If we're doing polled IO and end up having requests being @@ -7436,27 +7638,36 @@ while (!wait_for_completion_timeout(&ctx->ref_comp, HZ/20)) { io_iopoll_reap_events(ctx); if (ctx->rings) - io_cqring_overflow_flush(ctx, true); + io_cqring_overflow_flush(ctx, true, NULL, NULL); } io_ring_ctx_free(ctx); } +static bool io_cancel_ctx_cb(struct io_wq_work *work, void *data) +{ + struct io_kiocb *req = container_of(work, struct io_kiocb, work); + + return req->ctx == data; +} + static void io_ring_ctx_wait_and_kill(struct io_ring_ctx *ctx) { mutex_lock(&ctx->uring_lock); percpu_ref_kill(&ctx->refs); + /* if force is set, the ring is going away. always drop after that */ + ctx->cq_overflow_flushed = 1; mutex_unlock(&ctx->uring_lock); - io_kill_timeouts(ctx); - io_poll_remove_all(ctx); + io_kill_timeouts(ctx, NULL); + io_poll_remove_all(ctx, NULL); if (ctx->io_wq) - io_wq_cancel_all(ctx->io_wq); + io_wq_cancel_cb(ctx->io_wq, io_cancel_ctx_cb, ctx, true); io_iopoll_reap_events(ctx); /* if we failed setting up the ctx, we might not have any rings */ if (ctx->rings) - io_cqring_overflow_flush(ctx, true); + io_cqring_overflow_flush(ctx, true, NULL, NULL); idr_for_each(&ctx->personality_idr, io_remove_personalities, ctx); /* @@ -7485,15 +7696,165 @@ { struct files_struct *files = data; - return work->files == files; + return !files || work->files == files; +} + +/* + * Returns true if 'preq' is the link parent of 'req' + */ +static bool io_match_link(struct io_kiocb *preq, struct io_kiocb *req) +{ + struct io_kiocb *link; + + if (!(preq->flags & REQ_F_LINK_HEAD)) + return false; + + list_for_each_entry(link, &preq->link_list, link_list) { + if (link == req) + return true; + } + + return false; +} + +static bool io_match_link_files(struct io_kiocb *req, + struct files_struct *files) +{ + struct io_kiocb *link; + + if (io_match_files(req, files)) + return true; + if (req->flags & REQ_F_LINK_HEAD) { + list_for_each_entry(link, &req->link_list, link_list) { + if (io_match_files(link, files)) + return true; + } + } + return false; } -static void io_uring_cancel_files(struct io_ring_ctx *ctx, +/* + * We're looking to cancel 'req' because it's holding on to our files, but + * 'req' could be a link to another request. See if it is, and cancel that + * parent request if so. + */ +static bool io_poll_remove_link(struct io_ring_ctx *ctx, struct io_kiocb *req) +{ + struct hlist_node *tmp; + struct io_kiocb *preq; + bool found = false; + int i; + + spin_lock_irq(&ctx->completion_lock); + for (i = 0; i < (1U << ctx->cancel_hash_bits); i++) { + struct hlist_head *list; + + list = &ctx->cancel_hash[i]; + hlist_for_each_entry_safe(preq, tmp, list, hash_node) { + found = io_match_link(preq, req); + if (found) { + io_poll_remove_one(preq); + break; + } + } + } + spin_unlock_irq(&ctx->completion_lock); + return found; +} + +static bool io_timeout_remove_link(struct io_ring_ctx *ctx, + struct io_kiocb *req) +{ + struct io_kiocb *preq; + bool found = false; + + spin_lock_irq(&ctx->completion_lock); + list_for_each_entry(preq, &ctx->timeout_list, list) { + found = io_match_link(preq, req); + if (found) { + __io_timeout_cancel(preq); + break; + } + } + spin_unlock_irq(&ctx->completion_lock); + return found; +} + +static bool io_cancel_link_cb(struct io_wq_work *work, void *data) +{ + struct io_kiocb *req = container_of(work, struct io_kiocb, work); + bool ret; + + if (req->flags & REQ_F_LINK_TIMEOUT) { + unsigned long flags; + struct io_ring_ctx *ctx = req->ctx; + + /* protect against races with linked timeouts */ + spin_lock_irqsave(&ctx->completion_lock, flags); + ret = io_match_link(req, data); + spin_unlock_irqrestore(&ctx->completion_lock, flags); + } else { + ret = io_match_link(req, data); + } + return ret; +} + +static void io_attempt_cancel(struct io_ring_ctx *ctx, struct io_kiocb *req) +{ + enum io_wq_cancel cret; + + /* cancel this particular work, if it's running */ + cret = io_wq_cancel_work(ctx->io_wq, &req->work); + if (cret != IO_WQ_CANCEL_NOTFOUND) + return; + + /* find links that hold this pending, cancel those */ + cret = io_wq_cancel_cb(ctx->io_wq, io_cancel_link_cb, req, true); + if (cret != IO_WQ_CANCEL_NOTFOUND) + return; + + /* if we have a poll link holding this pending, cancel that */ + if (io_poll_remove_link(ctx, req)) + return; + + /* final option, timeout link is holding this req pending */ + io_timeout_remove_link(ctx, req); +} + +static void io_cancel_defer_files(struct io_ring_ctx *ctx, + struct files_struct *files) +{ + struct io_kiocb *req = NULL; + LIST_HEAD(list); + + spin_lock_irq(&ctx->completion_lock); + list_for_each_entry_reverse(req, &ctx->defer_list, list) { + if (io_match_link_files(req, files)) { + list_cut_position(&list, &ctx->defer_list, &req->list); + break; + } + } + spin_unlock_irq(&ctx->completion_lock); + + while (!list_empty(&list)) { + req = list_first_entry(&list, struct io_kiocb, list); + list_del_init(&req->list); + req_set_fail_links(req); + io_cqring_add_event(req, -ECANCELED); + io_double_put_req(req); + } +} + +/* + * Returns true if we found and killed one or more files pinning requests + */ +static bool io_uring_cancel_files(struct io_ring_ctx *ctx, struct files_struct *files) { if (list_empty_careful(&ctx->inflight_list)) - return; + return false; + io_cancel_defer_files(ctx, files); /* cancel all at once, should be faster than doing it one by one*/ io_wq_cancel_cb(ctx->io_wq, io_wq_files_match, files, true); @@ -7503,7 +7864,7 @@ spin_lock_irq(&ctx->inflight_lock); list_for_each_entry(req, &ctx->inflight_list, inflight_entry) { - if (req->work.files != files) + if (files && req->work.files != files) continue; /* req is being completed, ignore */ if (!refcount_inc_not_zero(&req->refs)) @@ -7529,10 +7890,10 @@ clear_bit(0, &ctx->cq_check_overflow); ctx->rings->sq_flags &= ~IORING_SQ_CQ_OVERFLOW; } - spin_unlock_irq(&ctx->completion_lock); - WRITE_ONCE(ctx->rings->cq_overflow, atomic_inc_return(&ctx->cached_cq_overflow)); + io_commit_cqring(ctx); + spin_unlock_irq(&ctx->completion_lock); /* * Put inflight ref and overflow ref. If that's @@ -7544,13 +7905,18 @@ continue; } } else { - io_wq_cancel_work(ctx->io_wq, &cancel_req->work); + /* cancel this request, or head link requests */ + io_attempt_cancel(ctx, cancel_req); io_put_req(cancel_req); } + /* cancellations _may_ trigger task work */ + io_run_task_work(); schedule(); finish_wait(&ctx->inflight_wait, &wait); } + + return true; } static bool io_cancel_task_cb(struct io_wq_work *work, void *data) @@ -7558,21 +7924,202 @@ struct io_kiocb *req = container_of(work, struct io_kiocb, work); struct task_struct *task = data; - return req->task == task; + return io_task_match(req, task); +} + +static bool __io_uring_cancel_task_requests(struct io_ring_ctx *ctx, + struct task_struct *task, + struct files_struct *files) +{ + bool ret; + + ret = io_uring_cancel_files(ctx, files); + if (!files) { + enum io_wq_cancel cret; + + cret = io_wq_cancel_cb(ctx->io_wq, io_cancel_task_cb, task, true); + if (cret != IO_WQ_CANCEL_NOTFOUND) + ret = true; + + /* SQPOLL thread does its own polling */ + if (!(ctx->flags & IORING_SETUP_SQPOLL)) { + if (!list_empty_careful(&ctx->poll_list)) { + io_iopoll_reap_events(ctx); + ret = true; + } + } + + ret |= io_poll_remove_all(ctx, task); + ret |= io_kill_timeouts(ctx, task); + } + + return ret; +} + +/* + * We need to iteratively cancel requests, in case a request has dependent + * hard links. These persist even for failure of cancelations, hence keep + * looping until none are found. + */ +static void io_uring_cancel_task_requests(struct io_ring_ctx *ctx, + struct files_struct *files) +{ + struct task_struct *task = current; + + if (ctx->flags & IORING_SETUP_SQPOLL) + task = ctx->sqo_thread; + + io_cqring_overflow_flush(ctx, true, task, files); + + while (__io_uring_cancel_task_requests(ctx, task, files)) { + io_run_task_work(); + cond_resched(); + } +} + +/* + * Note that this task has used io_uring. We use it for cancelation purposes. + */ +static int io_uring_add_task_file(struct file *file) +{ + struct io_uring_task *tctx = current->io_uring; + int ret; + + if (unlikely(!tctx)) { + ret = io_uring_alloc_task_context(current); + if (unlikely(ret)) + return ret; + tctx = current->io_uring; + } + if (tctx->last != file) { + void *old = xa_load(&tctx->xa, (unsigned long)file); + + if (!old) { + get_file(file); + ret = xa_err(xa_store(&tctx->xa, (unsigned long)file, + file, GFP_KERNEL)); + if (ret) { + fput(file); + return ret; + } + } + tctx->last = file; + } + + return 0; +} + +/* + * Remove this io_uring_file -> task mapping. + */ +static void io_uring_del_task_file(struct file *file) +{ + struct io_uring_task *tctx = current->io_uring; + + if (tctx->last == file) + tctx->last = NULL; + file = xa_erase(&tctx->xa, (unsigned long)file); + if (file) + fput(file); +} + +static void __io_uring_attempt_task_drop(struct file *file) +{ + struct file *old = xa_load(¤t->io_uring->xa, (unsigned long)file); + + if (old == file) + io_uring_del_task_file(file); +} + +/* + * Drop task note for this file if we're the only ones that hold it after + * pending fput() + */ +static void io_uring_attempt_task_drop(struct file *file, bool exiting) +{ + if (!current->io_uring) + return; + /* + * fput() is pending, will be 2 if the only other ref is our potential + * task file note. If the task is exiting, drop regardless of count. + */ + if (!exiting && atomic_long_read(&file->f_count) != 2) + return; + + __io_uring_attempt_task_drop(file); +} + +void __io_uring_files_cancel(struct files_struct *files) +{ + struct io_uring_task *tctx = current->io_uring; + struct file *file; + unsigned long index; + + /* make sure overflow events are dropped */ + tctx->in_idle = true; + + xa_for_each(&tctx->xa, index, file) { + struct io_ring_ctx *ctx = file->private_data; + + io_uring_cancel_task_requests(ctx, files); + if (files) + io_uring_del_task_file(file); + } +} + +static inline bool io_uring_task_idle(struct io_uring_task *tctx) +{ + return atomic_long_read(&tctx->req_issue) == + atomic_long_read(&tctx->req_complete); +} + +/* + * Find any io_uring fd that this task has registered or done IO on, and cancel + * requests. + */ +void __io_uring_task_cancel(void) +{ + struct io_uring_task *tctx = current->io_uring; + DEFINE_WAIT(wait); + long completions; + + /* make sure overflow events are dropped */ + tctx->in_idle = true; + + while (!io_uring_task_idle(tctx)) { + /* read completions before cancelations */ + completions = atomic_long_read(&tctx->req_complete); + __io_uring_files_cancel(NULL); + + prepare_to_wait(&tctx->wait, &wait, TASK_UNINTERRUPTIBLE); + + /* + * If we've seen completions, retry. This avoids a race where + * a completion comes in before we did prepare_to_wait(). + */ + if (completions != atomic_long_read(&tctx->req_complete)) + continue; + if (io_uring_task_idle(tctx)) + break; + schedule(); + } + + finish_wait(&tctx->wait, &wait); + tctx->in_idle = false; } static int io_uring_flush(struct file *file, void *data) { struct io_ring_ctx *ctx = file->private_data; - io_uring_cancel_files(ctx, data); - /* * If the task is going away, cancel work it may have pending */ if (fatal_signal_pending(current) || (current->flags & PF_EXITING)) - io_wq_cancel_cb(ctx->io_wq, io_cancel_task_cb, current, true); + data = NULL; + io_uring_cancel_task_requests(ctx, data); + io_uring_attempt_task_drop(file, !data); return 0; } @@ -7655,8 +8202,7 @@ int submitted = 0; struct fd f; - if (current->task_works) - task_work_run(); + io_run_task_work(); if (flags & ~(IORING_ENTER_GETEVENTS | IORING_ENTER_SQ_WAKEUP)) return -EINVAL; @@ -7682,13 +8228,16 @@ ret = 0; if (ctx->flags & IORING_SETUP_SQPOLL) { if (!list_empty_careful(&ctx->cq_overflow_list)) - io_cqring_overflow_flush(ctx, false); + io_cqring_overflow_flush(ctx, false, NULL, NULL); if (flags & IORING_ENTER_SQ_WAKEUP) wake_up(&ctx->sqo_wait); submitted = to_submit; } else if (to_submit) { + ret = io_uring_add_task_file(f.file); + if (unlikely(ret)) + goto out; mutex_lock(&ctx->uring_lock); - submitted = io_submit_sqes(ctx, to_submit, f.file, fd); + submitted = io_submit_sqes(ctx, to_submit); mutex_unlock(&ctx->uring_lock); if (submitted != to_submit) @@ -7756,11 +8305,19 @@ static void __io_uring_show_fdinfo(struct io_ring_ctx *ctx, struct seq_file *m) { + bool has_lock; int i; - mutex_lock(&ctx->uring_lock); + /* + * Avoid ABBA deadlock between the seq lock and the io_uring mutex, + * since fdinfo case grabs it in the opposite direction of normal use + * cases. If we fail to get the lock, we just don't iterate any + * structures that could be going away outside the io_uring mutex. + */ + has_lock = mutex_trylock(&ctx->uring_lock); + seq_printf(m, "UserFiles:\t%u\n", ctx->nr_user_files); - for (i = 0; i < ctx->nr_user_files; i++) { + for (i = 0; has_lock && i < ctx->nr_user_files; i++) { struct fixed_file_table *table; struct file *f; @@ -7772,13 +8329,13 @@ seq_printf(m, "%5u: \n", i); } seq_printf(m, "UserBufs:\t%u\n", ctx->nr_user_bufs); - for (i = 0; i < ctx->nr_user_bufs; i++) { + for (i = 0; has_lock && i < ctx->nr_user_bufs; i++) { struct io_mapped_ubuf *buf = &ctx->user_bufs[i]; seq_printf(m, "%5u: 0x%llx/%u\n", i, buf->ubuf, (unsigned int) buf->len); } - if (!idr_is_empty(&ctx->personality_idr)) { + if (has_lock && !idr_is_empty(&ctx->personality_idr)) { seq_printf(m, "Personalities:\n"); idr_for_each(&ctx->personality_idr, io_uring_show_cred, m); } @@ -7793,7 +8350,8 @@ req->task->task_works != NULL); } spin_unlock_irq(&ctx->completion_lock); - mutex_unlock(&ctx->uring_lock); + if (has_lock) + mutex_unlock(&ctx->uring_lock); } static void io_uring_show_fdinfo(struct seq_file *m, struct file *f) @@ -7828,6 +8386,10 @@ struct io_rings *rings; size_t size, sq_array_offset; + /* make sure these are sane, as we already accounted them */ + ctx->sq_entries = p->sq_entries; + ctx->cq_entries = p->cq_entries; + size = rings_size(p->sq_entries, p->cq_entries, &sq_array_offset); if (size == SIZE_MAX) return -EOVERFLOW; @@ -7844,8 +8406,6 @@ rings->cq_ring_entries = p->cq_entries; ctx->sq_mask = rings->sq_ring_mask; ctx->cq_mask = rings->cq_ring_mask; - ctx->sq_entries = rings->sq_ring_entries; - ctx->cq_entries = rings->cq_ring_entries; size = array_size(sizeof(struct io_uring_sqe), p->sq_entries); if (size == SIZE_MAX) { @@ -7889,6 +8449,7 @@ file = anon_inode_getfile("[io_uring]", &io_uring_fops, ctx, O_RDWR | O_CLOEXEC); if (IS_ERR(file)) { +err_fd: put_unused_fd(ret); ret = PTR_ERR(file); goto err; @@ -7897,6 +8458,10 @@ #if defined(CONFIG_UNIX) ctx->ring_sock->file = file; #endif + if (unlikely(io_uring_add_task_file(file))) { + file = ERR_PTR(-ENOMEM); + goto err_fd; + } fd_install(ret, file); return ret; err: @@ -7938,7 +8503,7 @@ * to a power-of-two, if it isn't already. We do NOT impose * any cq vs sq ring sizing. */ - if (p->cq_entries < p->sq_entries) + if (!p->cq_entries) return -EINVAL; if (p->cq_entries > IORING_MAX_CQ_ENTRIES) { if (!(p->flags & IORING_SETUP_CLAMP)) @@ -7946,6 +8511,8 @@ p->cq_entries = IORING_MAX_CQ_ENTRIES; } p->cq_entries = roundup_pow_of_two(p->cq_entries); + if (p->cq_entries < p->sq_entries) + return -EINVAL; } else { p->cq_entries = 2 * p->sq_entries; } @@ -7975,6 +8542,16 @@ ctx->user = user; ctx->creds = get_current_cred(); + ctx->sqo_task = get_task_struct(current); + /* + * This is just grabbed for accounting purposes. When a process exits, + * the mm is exited and dropped before the files, hence we need to hang + * on to this mm purely for the purposes of being able to unaccount + * memory (locked/pinned vm). It's not used for anything else. + */ + mmgrab(current->mm); + ctx->mm_account = current->mm; + ret = io_allocate_scq_urings(ctx, p); if (ret) goto err; --- linux-azure-5.8-5.8.0.orig/fs/iomap/buffered-io.c +++ linux-azure-5.8-5.8.0/fs/iomap/buffered-io.c @@ -49,16 +49,8 @@ if (iop || i_blocksize(inode) == PAGE_SIZE) return iop; - iop = kmalloc(sizeof(*iop), GFP_NOFS | __GFP_NOFAIL); - atomic_set(&iop->read_count, 0); - atomic_set(&iop->write_count, 0); + iop = kzalloc(sizeof(*iop), GFP_NOFS | __GFP_NOFAIL); spin_lock_init(&iop->uptodate_lock); - bitmap_zero(iop->uptodate, PAGE_SIZE / SECTOR_SIZE); - - /* - * migrate_page_move_mapping() assumes that pages with private data have - * their count elevated by 1. - */ attach_page_private(page, iop); return iop; } @@ -574,10 +566,10 @@ loff_t block_start = pos & ~(block_size - 1); loff_t block_end = (pos + len + block_size - 1) & ~(block_size - 1); unsigned from = offset_in_page(pos), to = from + len, poff, plen; - int status; if (PageUptodate(page)) return 0; + ClearPageError(page); do { iomap_adjust_read_range(inode, iop, &block_start, @@ -594,14 +586,13 @@ if (WARN_ON_ONCE(flags & IOMAP_WRITE_F_UNSHARE)) return -EIO; zero_user_segments(page, poff, from, to, poff + plen); - iomap_set_range_uptodate(page, poff, plen); - continue; + } else { + int status = iomap_read_page_sync(block_start, page, + poff, plen, srcmap); + if (status) + return status; } - - status = iomap_read_page_sync(block_start, page, poff, plen, - srcmap); - if (status) - return status; + iomap_set_range_uptodate(page, poff, plen); } while ((block_start += plen) < block_end); return 0; @@ -1404,6 +1395,7 @@ WARN_ON_ONCE(!wpc->ioend && !list_empty(&submit_list)); WARN_ON_ONCE(!PageLocked(page)); WARN_ON_ONCE(PageWriteback(page)); + WARN_ON_ONCE(PageDirty(page)); /* * We cannot cancel the ioend directly here on error. We may have @@ -1424,21 +1416,9 @@ unlock_page(page); goto done; } - - /* - * If the page was not fully cleaned, we need to ensure that the - * higher layers come back to it correctly. That means we need - * to keep the page dirty, and for WB_SYNC_ALL writeback we need - * to ensure the PAGECACHE_TAG_TOWRITE index mark is not removed - * so another attempt to write this page in this writeback sweep - * will be made. - */ - set_page_writeback_keepwrite(page); - } else { - clear_page_dirty_for_io(page); - set_page_writeback(page); } + set_page_writeback(page); unlock_page(page); /* --- linux-azure-5.8-5.8.0.orig/fs/iomap/direct-io.c +++ linux-azure-5.8-5.8.0/fs/iomap/direct-io.c @@ -387,6 +387,16 @@ return iomap_dio_bio_actor(inode, pos, length, dio, iomap); case IOMAP_INLINE: return iomap_dio_inline_actor(inode, pos, length, dio, iomap); + case IOMAP_DELALLOC: + /* + * DIO is not serialised against mmap() access at all, and so + * if the page_mkwrite occurs between the writeback and the + * iomap_apply() call in the DIO path, then it will see the + * DELALLOC block that the page-mkwrite allocated. + */ + pr_warn_ratelimited("Direct I/O collision with buffered writes! File: %pD4 Comm: %.20s\n", + dio->iocb->ki_filp, current->comm); + return -EIO; default: WARN_ON_ONCE(1); return -EIO; --- linux-azure-5.8-5.8.0.orig/fs/isofs/dir.c +++ linux-azure-5.8-5.8.0/fs/isofs/dir.c @@ -152,6 +152,7 @@ printk(KERN_NOTICE "iso9660: Corrupted directory entry" " in block %lu of inode %lu\n", block, inode->i_ino); + brelse(bh); return -EIO; } --- linux-azure-5.8-5.8.0.orig/fs/isofs/namei.c +++ linux-azure-5.8-5.8.0/fs/isofs/namei.c @@ -102,6 +102,7 @@ printk(KERN_NOTICE "iso9660: Corrupted directory entry" " in block %lu of inode %lu\n", block, dir->i_ino); + brelse(bh); return 0; } --- linux-azure-5.8-5.8.0.orig/fs/jbd2/checkpoint.c +++ linux-azure-5.8-5.8.0/fs/jbd2/checkpoint.c @@ -106,6 +106,8 @@ * for a checkpoint to free up some space in the log. */ void __jbd2_log_wait_for_space(journal_t *journal) +__acquires(&journal->j_state_lock) +__releases(&journal->j_state_lock) { int nblocks, space_left; /* assert_spin_locked(&journal->j_state_lock); */ --- linux-azure-5.8-5.8.0.orig/fs/jbd2/journal.c +++ linux-azure-5.8-5.8.0/fs/jbd2/journal.c @@ -1367,8 +1367,10 @@ int ret; /* Buffer got discarded which means block device got invalidated */ - if (!buffer_mapped(bh)) + if (!buffer_mapped(bh)) { + unlock_buffer(bh); return -EIO; + } trace_jbd2_write_superblock(journal, write_flags); if (!(journal->j_flags & JBD2_BARRIER)) --- linux-azure-5.8-5.8.0.orig/fs/jbd2/recovery.c +++ linux-azure-5.8-5.8.0/fs/jbd2/recovery.c @@ -428,6 +428,8 @@ __u32 crc32_sum = ~0; /* Transactional Checksums */ int descr_csum_size = 0; int block_error = 0; + bool need_check_commit_time = false; + __u64 last_trans_commit_time = 0, commit_time; /* * First thing is to establish what we expect to find in the log @@ -520,12 +522,21 @@ if (descr_csum_size > 0 && !jbd2_descriptor_block_csum_verify(journal, bh->b_data)) { - printk(KERN_ERR "JBD2: Invalid checksum " - "recovering block %lu in log\n", - next_log_block); - err = -EFSBADCRC; - brelse(bh); - goto failed; + /* + * PASS_SCAN can see stale blocks due to lazy + * journal init. Don't error out on those yet. + */ + if (pass != PASS_SCAN) { + pr_err("JBD2: Invalid checksum recovering block %lu in log\n", + next_log_block); + err = -EFSBADCRC; + brelse(bh); + goto failed; + } + need_check_commit_time = true; + jbd_debug(1, + "invalid descriptor block found in %lu\n", + next_log_block); } /* If it is a valid descriptor block, replay it @@ -535,6 +546,7 @@ if (pass != PASS_REPLAY) { if (pass == PASS_SCAN && jbd2_has_feature_checksum(journal) && + !need_check_commit_time && !info->end_transaction) { if (calc_chksums(journal, bh, &next_log_block, @@ -683,11 +695,41 @@ * mentioned conditions. Hence assume * "Interrupted Commit".) */ + commit_time = be64_to_cpu( + ((struct commit_header *)bh->b_data)->h_commit_sec); + /* + * If need_check_commit_time is set, it means we are in + * PASS_SCAN and csum verify failed before. If + * commit_time is increasing, it's the same journal, + * otherwise it is stale journal block, just end this + * recovery. + */ + if (need_check_commit_time) { + if (commit_time >= last_trans_commit_time) { + pr_err("JBD2: Invalid checksum found in transaction %u\n", + next_commit_ID); + err = -EFSBADCRC; + brelse(bh); + goto failed; + } + ignore_crc_mismatch: + /* + * It likely does not belong to same journal, + * just end this recovery with success. + */ + jbd_debug(1, "JBD2: Invalid checksum ignored in transaction %u, likely stale data\n", + next_commit_ID); + err = 0; + brelse(bh); + goto done; + } - /* Found an expected commit block: if checksums - * are present verify them in PASS_SCAN; else not + /* + * Found an expected commit block: if checksums + * are present, verify them in PASS_SCAN; else not * much to do other than move on to the next sequence - * number. */ + * number. + */ if (pass == PASS_SCAN && jbd2_has_feature_checksum(journal)) { int chksum_err, chksum_seen; @@ -727,6 +769,8 @@ chksum_err = 1; if (chksum_err) { + if (commit_time < last_trans_commit_time) + goto ignore_crc_mismatch; info->end_transaction = next_commit_ID; if (!jbd2_has_feature_async_commit(journal)) { @@ -750,11 +794,24 @@ break; } } + if (pass == PASS_SCAN) + last_trans_commit_time = commit_time; brelse(bh); next_commit_ID++; continue; case JBD2_REVOKE_BLOCK: + /* + * Check revoke block crc in pass_scan, if csum verify + * failed, check commit block time later. + */ + if (pass == PASS_SCAN && + !jbd2_descriptor_block_csum_verify(journal, + bh->b_data)) { + jbd_debug(1, "JBD2: invalid revoke block found in %lu\n", + next_log_block); + need_check_commit_time = true; + } /* If we aren't in the REVOKE pass, then we can * just skip over this block. */ if (pass != PASS_REVOKE) { @@ -822,9 +879,6 @@ offset = sizeof(jbd2_journal_revoke_header_t); rcount = be32_to_cpu(header->r_count); - if (!jbd2_descriptor_block_csum_verify(journal, header)) - return -EFSBADCRC; - if (jbd2_journal_has_csum_v2or3(journal)) csum_size = sizeof(struct jbd2_journal_block_tail); if (rcount > journal->j_blocksize - csum_size) --- linux-azure-5.8-5.8.0.orig/fs/jbd2/transaction.c +++ linux-azure-5.8-5.8.0/fs/jbd2/transaction.c @@ -195,8 +195,10 @@ DEFINE_WAIT(wait); if (WARN_ON(!journal->j_running_transaction || - journal->j_running_transaction->t_state != T_SWITCH)) + journal->j_running_transaction->t_state != T_SWITCH)) { + read_unlock(&journal->j_state_lock); return; + } prepare_to_wait(&journal->j_wait_transaction_locked, &wait, TASK_UNINTERRUPTIBLE); read_unlock(&journal->j_state_lock); @@ -2026,6 +2028,9 @@ */ static void __jbd2_journal_unfile_buffer(struct journal_head *jh) { + J_ASSERT_JH(jh, jh->b_transaction != NULL); + J_ASSERT_JH(jh, jh->b_next_transaction == NULL); + __jbd2_journal_temp_unlink_buffer(jh); jh->b_transaction = NULL; } @@ -2117,6 +2122,7 @@ { struct buffer_head *head; struct buffer_head *bh; + bool has_write_io_error = false; int ret = 0; J_ASSERT(PageLocked(page)); @@ -2141,11 +2147,26 @@ jbd2_journal_put_journal_head(jh); if (buffer_jbd(bh)) goto busy; + + /* + * If we free a metadata buffer which has been failed to + * write out, the jbd2 checkpoint procedure will not detect + * this failure and may lead to filesystem inconsistency + * after cleanup journal tail. + */ + if (buffer_write_io_error(bh)) { + pr_err("JBD2: Error while async write back metadata bh %llu.", + (unsigned long long)bh->b_blocknr); + has_write_io_error = true; + } } while ((bh = bh->b_this_page) != head); ret = try_to_free_buffers(page); busy: + if (has_write_io_error) + jbd2_journal_abort(journal, -EIO); + return ret; } @@ -2572,6 +2593,13 @@ was_dirty = test_clear_buffer_jbddirty(bh); __jbd2_journal_temp_unlink_buffer(jh); + + /* + * b_transaction must be set, otherwise the new b_transaction won't + * be holding jh reference + */ + J_ASSERT_JH(jh, jh->b_transaction != NULL); + /* * We set b_transaction here because b_next_transaction will inherit * our jh reference and thus __jbd2_journal_file_buffer() must not --- linux-azure-5.8-5.8.0.orig/fs/jffs2/dir.c +++ linux-azure-5.8-5.8.0/fs/jffs2/dir.c @@ -590,10 +590,14 @@ int ret; uint32_t now = JFFS2_NOW(); + mutex_lock(&f->sem); for (fd = f->dents ; fd; fd = fd->next) { - if (fd->ino) + if (fd->ino) { + mutex_unlock(&f->sem); return -ENOTEMPTY; + } } + mutex_unlock(&f->sem); ret = jffs2_do_unlink(c, dir_f, dentry->d_name.name, dentry->d_name.len, f, now); --- linux-azure-5.8-5.8.0.orig/fs/jffs2/jffs2_fs_sb.h +++ linux-azure-5.8-5.8.0/fs/jffs2/jffs2_fs_sb.h @@ -38,6 +38,7 @@ * users. This is implemented simply by means of not allowing the * latter users to write to the file system if the amount if the * available space is less then 'rp_size'. */ + bool set_rp_size; unsigned int rp_size; }; --- linux-azure-5.8-5.8.0.orig/fs/jffs2/readinode.c +++ linux-azure-5.8-5.8.0/fs/jffs2/readinode.c @@ -672,6 +672,22 @@ jffs2_free_full_dirent(fd); return -EIO; } + +#ifdef CONFIG_JFFS2_SUMMARY + /* + * we use CONFIG_JFFS2_SUMMARY because without it, we + * have checked it while mounting + */ + crc = crc32(0, fd->name, rd->nsize); + if (unlikely(crc != je32_to_cpu(rd->name_crc))) { + JFFS2_NOTICE("name CRC failed on dirent node at" + "%#08x: read %#08x,calculated %#08x\n", + ref_offset(ref), je32_to_cpu(rd->node_crc), crc); + jffs2_mark_node_obsolete(c, ref); + jffs2_free_full_dirent(fd); + return 0; + } +#endif } fd->nhash = full_name_hash(NULL, fd->name, rd->nsize); --- linux-azure-5.8-5.8.0.orig/fs/jffs2/summary.c +++ linux-azure-5.8-5.8.0/fs/jffs2/summary.c @@ -783,6 +783,8 @@ dbg_summary("Writing unknown RWCOMPAT_COPY node type %x\n", je16_to_cpu(temp->u.nodetype)); jffs2_sum_disable_collecting(c->summary); + /* The above call removes the list, nothing more to do */ + goto bail_rwcompat; } else { BUG(); /* unknown node in summary information */ } @@ -794,6 +796,7 @@ c->summary->sum_num--; } + bail_rwcompat: jffs2_sum_reset_collected(c->summary); --- linux-azure-5.8-5.8.0.orig/fs/jffs2/super.c +++ linux-azure-5.8-5.8.0/fs/jffs2/super.c @@ -88,7 +88,7 @@ if (opts->override_compr) seq_printf(s, ",compr=%s", jffs2_compr_name(opts->compr)); - if (opts->rp_size) + if (opts->set_rp_size) seq_printf(s, ",rp_size=%u", opts->rp_size / 1024); return 0; @@ -202,11 +202,8 @@ case Opt_rp_size: if (result.uint_32 > UINT_MAX / 1024) return invalf(fc, "jffs2: rp_size unrepresentable"); - opt = result.uint_32 * 1024; - if (opt > c->mtd->size) - return invalf(fc, "jffs2: Too large reserve pool specified, max is %llu KB", - c->mtd->size / 1024); - c->mount_opts.rp_size = opt; + c->mount_opts.rp_size = result.uint_32 * 1024; + c->mount_opts.set_rp_size = true; break; default: return -EINVAL; @@ -215,11 +212,30 @@ return 0; } +static inline void jffs2_update_mount_opts(struct fs_context *fc) +{ + struct jffs2_sb_info *new_c = fc->s_fs_info; + struct jffs2_sb_info *c = JFFS2_SB_INFO(fc->root->d_sb); + + mutex_lock(&c->alloc_sem); + if (new_c->mount_opts.override_compr) { + c->mount_opts.override_compr = new_c->mount_opts.override_compr; + c->mount_opts.compr = new_c->mount_opts.compr; + } + if (new_c->mount_opts.set_rp_size) { + c->mount_opts.set_rp_size = new_c->mount_opts.set_rp_size; + c->mount_opts.rp_size = new_c->mount_opts.rp_size; + } + mutex_unlock(&c->alloc_sem); +} + static int jffs2_reconfigure(struct fs_context *fc) { struct super_block *sb = fc->root->d_sb; sync_filesystem(sb); + jffs2_update_mount_opts(fc); + return jffs2_do_remount_fs(sb, fc); } @@ -249,6 +265,10 @@ c->mtd = sb->s_mtd; c->os_priv = sb; + if (c->mount_opts.rp_size > c->mtd->size) + return invalf(fc, "jffs2: Too large reserve pool specified, max is %llu KB", + c->mtd->size / 1024); + /* Initialize JFFS2 superblock locks, the further initialization will * be done later */ mutex_init(&c->alloc_sem); --- linux-azure-5.8-5.8.0.orig/fs/jfs/jfs_dmap.c +++ linux-azure-5.8-5.8.0/fs/jfs/jfs_dmap.c @@ -1656,7 +1656,7 @@ } else if (rc == -ENOSPC) { /* search for next smaller log2 block */ l2nb = BLKSTOL2(nblocks) - 1; - nblocks = 1 << l2nb; + nblocks = 1LL << l2nb; } else { /* Trim any already allocated blocks */ jfs_error(bmp->db_ipbmap->i_sb, "-EIO\n"); --- linux-azure-5.8-5.8.0.orig/fs/jfs/jfs_dmap.h +++ linux-azure-5.8-5.8.0/fs/jfs/jfs_dmap.h @@ -183,7 +183,7 @@ #define dmt_leafidx t1.leafidx #define dmt_height t1.height #define dmt_budmin t1.budmin -#define dmt_stree t1.stree +#define dmt_stree t2.stree /* * on-disk aggregate disk allocation map descriptor. --- linux-azure-5.8-5.8.0.orig/fs/kernfs/file.c +++ linux-azure-5.8-5.8.0/fs/kernfs/file.c @@ -14,6 +14,7 @@ #include #include #include +#include #include "kernfs-internal.h" @@ -180,11 +181,10 @@ * it difficult to use seq_file. Implement simplistic custom buffering for * bin files. */ -static ssize_t kernfs_file_direct_read(struct kernfs_open_file *of, - char __user *user_buf, size_t count, - loff_t *ppos) +static ssize_t kernfs_file_read_iter(struct kiocb *iocb, struct iov_iter *iter) { - ssize_t len = min_t(size_t, count, PAGE_SIZE); + struct kernfs_open_file *of = kernfs_of(iocb->ki_filp); + ssize_t len = min_t(size_t, iov_iter_count(iter), PAGE_SIZE); const struct kernfs_ops *ops; char *buf; @@ -210,7 +210,7 @@ of->event = atomic_read(&of->kn->attr.open->event); ops = kernfs_ops(of->kn); if (ops->read) - len = ops->read(of, buf, len, *ppos); + len = ops->read(of, buf, len, iocb->ki_pos); else len = -EINVAL; @@ -220,12 +220,12 @@ if (len < 0) goto out_free; - if (copy_to_user(user_buf, buf, len)) { + if (copy_to_iter(buf, len, iter) != len) { len = -EFAULT; goto out_free; } - *ppos += len; + iocb->ki_pos += len; out_free: if (buf == of->prealloc_buf) @@ -235,31 +235,14 @@ return len; } -/** - * kernfs_fop_read - kernfs vfs read callback - * @file: file pointer - * @user_buf: data to write - * @count: number of bytes - * @ppos: starting offset - */ -static ssize_t kernfs_fop_read(struct file *file, char __user *user_buf, - size_t count, loff_t *ppos) +static ssize_t kernfs_fop_read_iter(struct kiocb *iocb, struct iov_iter *iter) { - struct kernfs_open_file *of = kernfs_of(file); - - if (of->kn->flags & KERNFS_HAS_SEQ_SHOW) - return seq_read(file, user_buf, count, ppos); - else - return kernfs_file_direct_read(of, user_buf, count, ppos); + if (kernfs_of(iocb->ki_filp)->kn->flags & KERNFS_HAS_SEQ_SHOW) + return seq_read_iter(iocb, iter); + return kernfs_file_read_iter(iocb, iter); } -/** - * kernfs_fop_write - kernfs vfs write callback - * @file: file pointer - * @user_buf: data to write - * @count: number of bytes - * @ppos: starting offset - * +/* * Copy data in from userland and pass it to the matching kernfs write * operation. * @@ -269,20 +252,18 @@ * modify only the the value you're changing, then write entire buffer * back. */ -static ssize_t kernfs_fop_write(struct file *file, const char __user *user_buf, - size_t count, loff_t *ppos) +static ssize_t kernfs_fop_write_iter(struct kiocb *iocb, struct iov_iter *iter) { - struct kernfs_open_file *of = kernfs_of(file); + struct kernfs_open_file *of = kernfs_of(iocb->ki_filp); + ssize_t len = iov_iter_count(iter); const struct kernfs_ops *ops; - ssize_t len; char *buf; if (of->atomic_write_len) { - len = count; if (len > of->atomic_write_len) return -E2BIG; } else { - len = min_t(size_t, count, PAGE_SIZE); + len = min_t(size_t, len, PAGE_SIZE); } buf = of->prealloc_buf; @@ -293,7 +274,7 @@ if (!buf) return -ENOMEM; - if (copy_from_user(buf, user_buf, len)) { + if (copy_from_iter(buf, len, iter) != len) { len = -EFAULT; goto out_free; } @@ -312,7 +293,7 @@ ops = kernfs_ops(of->kn); if (ops->write) - len = ops->write(of, buf, len, *ppos); + len = ops->write(of, buf, len, iocb->ki_pos); else len = -EINVAL; @@ -320,7 +301,7 @@ mutex_unlock(&of->mutex); if (len > 0) - *ppos += len; + iocb->ki_pos += len; out_free: if (buf == of->prealloc_buf) @@ -673,7 +654,7 @@ /* * Write path needs to atomic_write_len outside active reference. - * Cache it in open_file. See kernfs_fop_write() for details. + * Cache it in open_file. See kernfs_fop_write_iter() for details. */ of->atomic_write_len = ops->atomic_write_len; @@ -912,7 +893,7 @@ } fsnotify(inode, FS_MODIFY, inode, FSNOTIFY_EVENT_INODE, - &name, 0); + NULL, 0); iput(inode); } @@ -959,14 +940,16 @@ EXPORT_SYMBOL_GPL(kernfs_notify); const struct file_operations kernfs_file_fops = { - .read = kernfs_fop_read, - .write = kernfs_fop_write, + .read_iter = kernfs_fop_read_iter, + .write_iter = kernfs_fop_write_iter, .llseek = generic_file_llseek, .mmap = kernfs_fop_mmap, .open = kernfs_fop_open, .release = kernfs_fop_release, .poll = kernfs_fop_poll, .fsync = noop_fsync, + .splice_read = generic_file_splice_read, + .splice_write = iter_file_splice_write, }; /** --- linux-azure-5.8-5.8.0.orig/fs/libfs.c +++ linux-azure-5.8-5.8.0/fs/libfs.c @@ -957,7 +957,7 @@ size_t len, loff_t *ppos) { struct simple_attr *attr; - u64 val; + unsigned long long val; size_t size; ssize_t ret; @@ -975,7 +975,9 @@ goto out; attr->set_buf[size] = '\0'; - val = simple_strtoll(attr->set_buf, NULL, 0); + ret = kstrtoull(attr->set_buf, 0, &val); + if (ret) + goto out; ret = attr->set(attr->data, val); if (ret == 0) ret = len; /* on success, claim we got the whole input */ --- linux-azure-5.8-5.8.0.orig/fs/lockd/host.c +++ linux-azure-5.8-5.8.0/fs/lockd/host.c @@ -439,12 +439,7 @@ * RPC rebind is required */ if ((clnt = host->h_rpcclnt) != NULL) { - if (time_after_eq(jiffies, host->h_nextrebind)) { - rpc_force_rebind(clnt); - host->h_nextrebind = jiffies + NLM_HOST_REBIND; - dprintk("lockd: next rebind in %lu jiffies\n", - host->h_nextrebind - jiffies); - } + nlm_rebind_host(host); } else { unsigned long increment = nlmsvc_timeout; struct rpc_timeout timeparms = { @@ -494,13 +489,20 @@ return clnt; } -/* - * Force a portmap lookup of the remote lockd port +/** + * nlm_rebind_host - If needed, force a portmap lookup of the peer's lockd port + * @host: NLM host handle for peer + * + * This is not needed when using a connection-oriented protocol, such as TCP. + * The existing autobind mechanism is sufficient to force a rebind when + * required, e.g. on connection state transitions. */ void nlm_rebind_host(struct nlm_host *host) { - dprintk("lockd: rebind host %s\n", host->h_name); + if (host->h_proto != IPPROTO_UDP) + return; + if (host->h_rpcclnt && time_after_eq(jiffies, host->h_nextrebind)) { rpc_force_rebind(host->h_rpcclnt); host->h_nextrebind = jiffies + NLM_HOST_REBIND; --- linux-azure-5.8-5.8.0.orig/fs/minix/inode.c +++ linux-azure-5.8-5.8.0/fs/minix/inode.c @@ -150,6 +150,25 @@ return 0; } +static bool minix_check_superblock(struct super_block *sb) +{ + struct minix_sb_info *sbi = minix_sb(sb); + + if (sbi->s_imap_blocks == 0 || sbi->s_zmap_blocks == 0) + return false; + + /* + * s_max_size must not exceed the block mapping limitation. This check + * is only needed for V1 filesystems, since V2/V3 support an extra level + * of indirect blocks which places the limit well above U32_MAX. + */ + if (sbi->s_version == MINIX_V1 && + sb->s_maxbytes > (7 + 512 + 512*512) * BLOCK_SIZE) + return false; + + return true; +} + static int minix_fill_super(struct super_block *s, void *data, int silent) { struct buffer_head *bh; @@ -185,7 +204,7 @@ sbi->s_zmap_blocks = ms->s_zmap_blocks; sbi->s_firstdatazone = ms->s_firstdatazone; sbi->s_log_zone_size = ms->s_log_zone_size; - sbi->s_max_size = ms->s_max_size; + s->s_maxbytes = ms->s_max_size; s->s_magic = ms->s_magic; if (s->s_magic == MINIX_SUPER_MAGIC) { sbi->s_version = MINIX_V1; @@ -216,7 +235,7 @@ sbi->s_zmap_blocks = m3s->s_zmap_blocks; sbi->s_firstdatazone = m3s->s_firstdatazone; sbi->s_log_zone_size = m3s->s_log_zone_size; - sbi->s_max_size = m3s->s_max_size; + s->s_maxbytes = m3s->s_max_size; sbi->s_ninodes = m3s->s_ninodes; sbi->s_nzones = m3s->s_zones; sbi->s_dirsize = 64; @@ -228,11 +247,12 @@ } else goto out_no_fs; + if (!minix_check_superblock(s)) + goto out_illegal_sb; + /* * Allocate the buffer map to keep the superblock small. */ - if (sbi->s_imap_blocks == 0 || sbi->s_zmap_blocks == 0) - goto out_illegal_sb; i = (sbi->s_imap_blocks + sbi->s_zmap_blocks) * sizeof(bh); map = kzalloc(i, GFP_KERNEL); if (!map) @@ -468,6 +488,13 @@ iget_failed(inode); return ERR_PTR(-EIO); } + if (raw_inode->i_nlinks == 0) { + printk("MINIX-fs: deleted inode referenced: %lu\n", + inode->i_ino); + brelse(bh); + iget_failed(inode); + return ERR_PTR(-ESTALE); + } inode->i_mode = raw_inode->i_mode; i_uid_write(inode, raw_inode->i_uid); i_gid_write(inode, raw_inode->i_gid); @@ -501,6 +528,13 @@ iget_failed(inode); return ERR_PTR(-EIO); } + if (raw_inode->i_nlinks == 0) { + printk("MINIX-fs: deleted inode referenced: %lu\n", + inode->i_ino); + brelse(bh); + iget_failed(inode); + return ERR_PTR(-ESTALE); + } inode->i_mode = raw_inode->i_mode; i_uid_write(inode, raw_inode->i_uid); i_gid_write(inode, raw_inode->i_gid); --- linux-azure-5.8-5.8.0.orig/fs/minix/itree_common.c +++ linux-azure-5.8-5.8.0/fs/minix/itree_common.c @@ -75,6 +75,7 @@ int n = 0; int i; int parent = minix_new_block(inode); + int err = -ENOSPC; branch[0].key = cpu_to_block(parent); if (parent) for (n = 1; n < num; n++) { @@ -85,6 +86,11 @@ break; branch[n].key = cpu_to_block(nr); bh = sb_getblk(inode->i_sb, parent); + if (!bh) { + minix_free_block(inode, nr); + err = -ENOMEM; + break; + } lock_buffer(bh); memset(bh->b_data, 0, bh->b_size); branch[n].bh = bh; @@ -103,7 +109,7 @@ bforget(branch[i].bh); for (i = 0; i < n; i++) minix_free_block(inode, block_to_cpu(branch[i].key)); - return -ENOSPC; + return err; } static inline int splice_branch(struct inode *inode, --- linux-azure-5.8-5.8.0.orig/fs/minix/itree_v1.c +++ linux-azure-5.8-5.8.0/fs/minix/itree_v1.c @@ -29,12 +29,12 @@ if (block < 0) { printk("MINIX-fs: block_to_path: block %ld < 0 on dev %pg\n", block, inode->i_sb->s_bdev); - } else if (block >= (minix_sb(inode->i_sb)->s_max_size/BLOCK_SIZE)) { - if (printk_ratelimit()) - printk("MINIX-fs: block_to_path: " - "block %ld too big on dev %pg\n", - block, inode->i_sb->s_bdev); - } else if (block < 7) { + return 0; + } + if ((u64)block * BLOCK_SIZE >= inode->i_sb->s_maxbytes) + return 0; + + if (block < 7) { offsets[n++] = block; } else if ((block -= 7) < 512) { offsets[n++] = 7; --- linux-azure-5.8-5.8.0.orig/fs/minix/itree_v2.c +++ linux-azure-5.8-5.8.0/fs/minix/itree_v2.c @@ -32,13 +32,12 @@ if (block < 0) { printk("MINIX-fs: block_to_path: block %ld < 0 on dev %pg\n", block, sb->s_bdev); - } else if ((u64)block * (u64)sb->s_blocksize >= - minix_sb(sb)->s_max_size) { - if (printk_ratelimit()) - printk("MINIX-fs: block_to_path: " - "block %ld too big on dev %pg\n", - block, sb->s_bdev); - } else if (block < DIRCOUNT) { + return 0; + } + if ((u64)block * (u64)sb->s_blocksize >= sb->s_maxbytes) + return 0; + + if (block < DIRCOUNT) { offsets[n++] = block; } else if ((block -= DIRCOUNT) < INDIRCOUNT(sb)) { offsets[n++] = DIRCOUNT; --- linux-azure-5.8-5.8.0.orig/fs/minix/minix.h +++ linux-azure-5.8-5.8.0/fs/minix/minix.h @@ -32,7 +32,6 @@ unsigned long s_zmap_blocks; unsigned long s_firstdatazone; unsigned long s_log_zone_size; - unsigned long s_max_size; int s_dirsize; int s_namelen; struct buffer_head ** s_imap; --- linux-azure-5.8-5.8.0.orig/fs/namei.c +++ linux-azure-5.8-5.8.0/fs/namei.c @@ -932,8 +932,8 @@ path_put(&last->link); } -int sysctl_protected_symlinks __read_mostly = 0; -int sysctl_protected_hardlinks __read_mostly = 0; +int sysctl_protected_symlinks __read_mostly = 1; +int sysctl_protected_hardlinks __read_mostly = 1; int sysctl_protected_fifos __read_mostly; int sysctl_protected_regular __read_mostly; --- linux-azure-5.8-5.8.0.orig/fs/namespace.c +++ linux-azure-5.8-5.8.0/fs/namespace.c @@ -156,10 +156,10 @@ /* * vfsmount lock must be held for write */ -unsigned int mnt_get_count(struct mount *mnt) +int mnt_get_count(struct mount *mnt) { #ifdef CONFIG_SMP - unsigned int count = 0; + int count = 0; int cpu; for_each_possible_cpu(cpu) { @@ -431,6 +431,7 @@ mnt_dec_writers(real_mount(mnt)); preempt_enable(); } +EXPORT_SYMBOL_GPL(__mnt_drop_write); /** * mnt_drop_write - give up write access to a mount @@ -792,6 +793,13 @@ return mnt->mnt_ns == current->nsproxy->mnt_ns; } +/* for aufs, CONFIG_AUFS_BR_FUSE */ +int is_current_mnt_ns(struct vfsmount *mnt) +{ + return check_mnt(real_mount(mnt)); +} +EXPORT_SYMBOL_GPL(is_current_mnt_ns); + /* * vfsmount lock must be held for write */ @@ -1139,6 +1147,7 @@ static void mntput_no_expire(struct mount *mnt) { LIST_HEAD(list); + int count; rcu_read_lock(); if (likely(READ_ONCE(mnt->mnt_ns))) { @@ -1162,7 +1171,9 @@ */ smp_mb(); mnt_add_count(mnt, -1); - if (mnt_get_count(mnt)) { + count = mnt_get_count(mnt); + if (count != 0) { + WARN_ON(count < 0); rcu_read_unlock(); unlock_mount_hash(); return; @@ -1191,7 +1202,7 @@ struct task_struct *task = current; if (likely(!(task->flags & PF_KTHREAD))) { init_task_work(&mnt->mnt_rcu, __cleanup_mnt); - if (!task_work_add(task, &mnt->mnt_rcu, true)) + if (!task_work_add(task, &mnt->mnt_rcu, TWA_RESUME)) return; } if (llist_add(&mnt->mnt_llist, &delayed_mntput_list)) @@ -1955,6 +1966,7 @@ } return 0; } +EXPORT_SYMBOL_GPL(iterate_mounts); static void lock_mnt_tree(struct mount *mnt) { --- linux-azure-5.8-5.8.0.orig/fs/nfs/delegation.c +++ linux-azure-5.8-5.8.0/fs/nfs/delegation.c @@ -1011,22 +1011,24 @@ const struct nfs_fh *fhandle) { struct nfs_delegation *delegation; - struct inode *freeme, *res = NULL; + struct super_block *freeme = NULL; + struct inode *res = NULL; list_for_each_entry_rcu(delegation, &server->delegations, super_list) { spin_lock(&delegation->lock); if (delegation->inode != NULL && !test_bit(NFS_DELEGATION_REVOKED, &delegation->flags) && nfs_compare_fh(fhandle, &NFS_I(delegation->inode)->fh) == 0) { - freeme = igrab(delegation->inode); - if (freeme && nfs_sb_active(freeme->i_sb)) - res = freeme; + if (nfs_sb_active(server->super)) { + freeme = server->super; + res = igrab(delegation->inode); + } spin_unlock(&delegation->lock); if (res != NULL) return res; if (freeme) { rcu_read_unlock(); - iput(freeme); + nfs_sb_deactive(freeme); rcu_read_lock(); } return ERR_PTR(-EAGAIN); --- linux-azure-5.8-5.8.0.orig/fs/nfs/dir.c +++ linux-azure-5.8-5.8.0/fs/nfs/dir.c @@ -579,6 +579,9 @@ xdr_set_scratch_buffer(&stream, page_address(scratch), PAGE_SIZE); do { + if (entry->label) + entry->label->len = NFS4_MAXLABELLEN; + status = xdr_decode(desc, entry, &stream); if (status != 0) { if (status == -EAGAIN) --- linux-azure-5.8-5.8.0.orig/fs/nfs/file.c +++ linux-azure-5.8-5.8.0/fs/nfs/file.c @@ -140,6 +140,7 @@ nfs_file_flush(struct file *file, fl_owner_t id) { struct inode *inode = file_inode(file); + errseq_t since; dprintk("NFS: flush(%pD2)\n", file); @@ -148,7 +149,9 @@ return 0; /* Flush writes to the server and return any errors */ - return nfs_wb_all(inode); + since = filemap_sample_wb_err(file->f_mapping); + nfs_wb_all(inode); + return filemap_check_wb_err(file->f_mapping, since); } ssize_t @@ -587,12 +590,14 @@ .page_mkwrite = nfs_vm_page_mkwrite, }; -static int nfs_need_check_write(struct file *filp, struct inode *inode) +static int nfs_need_check_write(struct file *filp, struct inode *inode, + int error) { struct nfs_open_context *ctx; ctx = nfs_file_open_context(filp); - if (nfs_ctx_key_to_expire(ctx, inode)) + if (nfs_error_is_fatal_on_server(error) || + nfs_ctx_key_to_expire(ctx, inode)) return 1; return 0; } @@ -603,6 +608,8 @@ struct inode *inode = file_inode(file); unsigned long written = 0; ssize_t result; + errseq_t since; + int error; result = nfs_key_timeout_notify(file, inode); if (result) @@ -627,6 +634,7 @@ if (iocb->ki_pos > i_size_read(inode)) nfs_revalidate_mapping(inode, file->f_mapping); + since = filemap_sample_wb_err(file->f_mapping); nfs_start_io_write(inode); result = generic_write_checks(iocb, from); if (result > 0) { @@ -645,7 +653,8 @@ goto out; /* Return error values */ - if (nfs_need_check_write(file, inode)) { + error = filemap_check_wb_err(file->f_mapping, since); + if (nfs_need_check_write(file, inode, error)) { int err = nfs_wb_all(inode); if (err < 0) result = err; --- linux-azure-5.8-5.8.0.orig/fs/nfs/flexfilelayout/flexfilelayout.c +++ linux-azure-5.8-5.8.0/fs/nfs/flexfilelayout/flexfilelayout.c @@ -790,6 +790,19 @@ return ff_layout_choose_any_ds_for_read(lseg, start_idx, best_idx); } +static struct nfs4_pnfs_ds * +ff_layout_get_ds_for_read(struct nfs_pageio_descriptor *pgio, int *best_idx) +{ + struct pnfs_layout_segment *lseg = pgio->pg_lseg; + struct nfs4_pnfs_ds *ds; + + ds = ff_layout_choose_best_ds_for_read(lseg, pgio->pg_mirror_idx, + best_idx); + if (ds || !pgio->pg_mirror_idx) + return ds; + return ff_layout_choose_best_ds_for_read(lseg, 0, best_idx); +} + static void ff_layout_pg_get_read(struct nfs_pageio_descriptor *pgio, struct nfs_page *req, @@ -825,6 +838,7 @@ struct nfs4_ff_layout_mirror *mirror; struct nfs4_pnfs_ds *ds; int ds_idx; + u32 i; retry: ff_layout_pg_check_layout(pgio, req); @@ -840,7 +854,7 @@ goto out_nolseg; } - ds = ff_layout_choose_best_ds_for_read(pgio->pg_lseg, 0, &ds_idx); + ds = ff_layout_get_ds_for_read(pgio, &ds_idx); if (!ds) { if (!ff_layout_no_fallback_to_mds(pgio->pg_lseg)) goto out_mds; @@ -851,14 +865,14 @@ goto retry; } - mirror = FF_LAYOUT_COMP(pgio->pg_lseg, ds_idx); + for (i = 0; i < pgio->pg_mirror_count; i++) { + mirror = FF_LAYOUT_COMP(pgio->pg_lseg, i); + pgm = &pgio->pg_mirrors[i]; + pgm->pg_bsize = mirror->mirror_ds->ds_versions[0].rsize; + } pgio->pg_mirror_idx = ds_idx; - /* read always uses only one mirror - idx 0 for pgio layer */ - pgm = &pgio->pg_mirrors[0]; - pgm->pg_bsize = mirror->mirror_ds->ds_versions[0].rsize; - if (NFS_SERVER(pgio->pg_inode)->flags & (NFS_MOUNT_SOFT|NFS_MOUNT_SOFTERR)) pgio->pg_maxretrans = io_maxretrans; @@ -1028,11 +1042,24 @@ } } +static void ff_layout_resend_pnfs_read(struct nfs_pgio_header *hdr) +{ + u32 idx = hdr->pgio_mirror_idx + 1; + int new_idx = 0; + + if (ff_layout_choose_any_ds_for_read(hdr->lseg, idx, &new_idx)) + ff_layout_send_layouterror(hdr->lseg); + else + pnfs_error_mark_layout_for_return(hdr->inode, hdr->lseg); + pnfs_read_resend_pnfs(hdr, new_idx); +} + static void ff_layout_reset_read(struct nfs_pgio_header *hdr) { struct rpc_task *task = &hdr->task; pnfs_layoutcommit_inode(hdr->inode, false); + pnfs_error_mark_layout_for_return(hdr->inode, hdr->lseg); if (!test_and_set_bit(NFS_IOHDR_REDO, &hdr->flags)) { dprintk("%s Reset task %5u for i/o through MDS " @@ -1234,6 +1261,12 @@ break; case NFS4ERR_NXIO: ff_layout_mark_ds_unreachable(lseg, idx); + /* + * Don't return the layout if this is a read and we still + * have layouts to try + */ + if (opnum == OP_READ) + break; /* Fallthrough */ default: pnfs_error_mark_layout_for_return(lseg->pls_layout->plh_inode, @@ -1247,7 +1280,6 @@ static int ff_layout_read_done_cb(struct rpc_task *task, struct nfs_pgio_header *hdr) { - int new_idx = hdr->pgio_mirror_idx; int err; if (task->tk_status < 0) { @@ -1267,10 +1299,6 @@ clear_bit(NFS_IOHDR_RESEND_MDS, &hdr->flags); switch (err) { case -NFS4ERR_RESET_TO_PNFS: - if (ff_layout_choose_best_ds_for_read(hdr->lseg, - hdr->pgio_mirror_idx + 1, - &new_idx)) - goto out_layouterror; set_bit(NFS_IOHDR_RESEND_PNFS, &hdr->flags); return task->tk_status; case -NFS4ERR_RESET_TO_MDS: @@ -1281,10 +1309,6 @@ } return 0; -out_layouterror: - ff_layout_read_record_layoutstats_done(task, hdr); - ff_layout_send_layouterror(hdr->lseg); - hdr->pgio_mirror_idx = new_idx; out_eagain: rpc_restart_call_prepare(task); return -EAGAIN; @@ -1411,10 +1435,9 @@ struct nfs_pgio_header *hdr = data; ff_layout_read_record_layoutstats_done(&hdr->task, hdr); - if (test_bit(NFS_IOHDR_RESEND_PNFS, &hdr->flags)) { - ff_layout_send_layouterror(hdr->lseg); - pnfs_read_resend_pnfs(hdr); - } else if (test_bit(NFS_IOHDR_RESEND_MDS, &hdr->flags)) + if (test_bit(NFS_IOHDR_RESEND_PNFS, &hdr->flags)) + ff_layout_resend_pnfs_read(hdr); + else if (test_bit(NFS_IOHDR_RESEND_MDS, &hdr->flags)) ff_layout_reset_read(hdr); pnfs_generic_rw_release(data); } --- linux-azure-5.8-5.8.0.orig/fs/nfs/fs_context.c +++ linux-azure-5.8-5.8.0/fs/nfs/fs_context.c @@ -94,6 +94,7 @@ static const struct constant_table nfs_param_enums_local_lock[] = { { "all", Opt_local_lock_all }, { "flock", Opt_local_lock_flock }, + { "posix", Opt_local_lock_posix }, { "none", Opt_local_lock_none }, {} }; --- linux-azure-5.8-5.8.0.orig/fs/nfs/inode.c +++ linux-azure-5.8-5.8.0/fs/nfs/inode.c @@ -2166,7 +2166,7 @@ { struct workqueue_struct *wq; dprintk("RPC: creating workqueue nfsiod\n"); - wq = alloc_workqueue("nfsiod", WQ_MEM_RECLAIM, 0); + wq = alloc_workqueue("nfsiod", WQ_MEM_RECLAIM | WQ_UNBOUND, 0); if (wq == NULL) return -ENOMEM; nfsiod_workqueue = wq; --- linux-azure-5.8-5.8.0.orig/fs/nfs/internal.h +++ linux-azure-5.8-5.8.0/fs/nfs/internal.h @@ -142,9 +142,29 @@ } clone_data; }; -#define nfs_errorf(fc, fmt, ...) errorf(fc, fmt, ## __VA_ARGS__) -#define nfs_invalf(fc, fmt, ...) invalf(fc, fmt, ## __VA_ARGS__) -#define nfs_warnf(fc, fmt, ...) warnf(fc, fmt, ## __VA_ARGS__) +#define nfs_errorf(fc, fmt, ...) ((fc)->log.log ? \ + errorf(fc, fmt, ## __VA_ARGS__) : \ + ({ dprintk(fmt "\n", ## __VA_ARGS__); })) + +#define nfs_ferrorf(fc, fac, fmt, ...) ((fc)->log.log ? \ + errorf(fc, fmt, ## __VA_ARGS__) : \ + ({ dfprintk(fac, fmt "\n", ## __VA_ARGS__); })) + +#define nfs_invalf(fc, fmt, ...) ((fc)->log.log ? \ + invalf(fc, fmt, ## __VA_ARGS__) : \ + ({ dprintk(fmt "\n", ## __VA_ARGS__); -EINVAL; })) + +#define nfs_finvalf(fc, fac, fmt, ...) ((fc)->log.log ? \ + invalf(fc, fmt, ## __VA_ARGS__) : \ + ({ dfprintk(fac, fmt "\n", ## __VA_ARGS__); -EINVAL; })) + +#define nfs_warnf(fc, fmt, ...) ((fc)->log.log ? \ + warnf(fc, fmt, ## __VA_ARGS__) : \ + ({ dprintk(fmt "\n", ## __VA_ARGS__); })) + +#define nfs_fwarnf(fc, fac, fmt, ...) ((fc)->log.log ? \ + warnf(fc, fmt, ## __VA_ARGS__) : \ + ({ dfprintk(fac, fmt "\n", ## __VA_ARGS__); })) static inline struct nfs_fs_context *nfs_fc2context(const struct fs_context *fc) { @@ -585,12 +605,14 @@ static inline struct inode *nfs_igrab_and_active(struct inode *inode) { - inode = igrab(inode); - if (inode != NULL && !nfs_sb_active(inode->i_sb)) { - iput(inode); - inode = NULL; + struct super_block *sb = inode->i_sb; + + if (sb && nfs_sb_active(sb)) { + if (igrab(inode)) + return inode; + nfs_sb_deactive(sb); } - return inode; + return NULL; } static inline void nfs_iput_and_deactive(struct inode *inode) --- linux-azure-5.8-5.8.0.orig/fs/nfs/namespace.c +++ linux-azure-5.8-5.8.0/fs/nfs/namespace.c @@ -32,9 +32,9 @@ /* * nfs_path - reconstruct the path given an arbitrary dentry * @base - used to return pointer to the end of devname part of path - * @dentry - pointer to dentry + * @dentry_in - pointer to dentry * @buffer - result buffer - * @buflen - length of buffer + * @buflen_in - length of buffer * @flags - options (see below) * * Helper function for constructing the server pathname @@ -49,15 +49,19 @@ * the original device (export) name * (if unset, the original name is returned verbatim) */ -char *nfs_path(char **p, struct dentry *dentry, char *buffer, ssize_t buflen, - unsigned flags) +char *nfs_path(char **p, struct dentry *dentry_in, char *buffer, + ssize_t buflen_in, unsigned flags) { char *end; int namelen; unsigned seq; const char *base; + struct dentry *dentry; + ssize_t buflen; rename_retry: + buflen = buflen_in; + dentry = dentry_in; end = buffer+buflen; *--end = '\0'; buflen--; --- linux-azure-5.8-5.8.0.orig/fs/nfs/nfs42proc.c +++ linux-azure-5.8-5.8.0/fs/nfs/nfs42proc.c @@ -355,7 +355,15 @@ truncate_pagecache_range(dst_inode, pos_dst, pos_dst + res->write_res.count); - + spin_lock(&dst_inode->i_lock); + NFS_I(dst_inode)->cache_validity |= (NFS_INO_REVAL_PAGECACHE | + NFS_INO_REVAL_FORCED | NFS_INO_INVALID_SIZE | + NFS_INO_INVALID_ATTR | NFS_INO_INVALID_DATA); + spin_unlock(&dst_inode->i_lock); + spin_lock(&src_inode->i_lock); + NFS_I(src_inode)->cache_validity |= (NFS_INO_REVAL_PAGECACHE | + NFS_INO_REVAL_FORCED | NFS_INO_INVALID_ATIME); + spin_unlock(&src_inode->i_lock); status = res->write_res.count; out: if (args->sync) --- linux-azure-5.8-5.8.0.orig/fs/nfs/nfs4_fs.h +++ linux-azure-5.8-5.8.0/fs/nfs/nfs4_fs.h @@ -586,6 +586,14 @@ return (s32)(be32_to_cpu(s1->seqid) - be32_to_cpu(s2->seqid)) > 0; } +static inline bool nfs4_stateid_is_next(const nfs4_stateid *s1, const nfs4_stateid *s2) +{ + u32 seq1 = be32_to_cpu(s1->seqid); + u32 seq2 = be32_to_cpu(s2->seqid); + + return seq2 == seq1 + 1U || (seq2 == 1U && seq1 == 0xffffffffU); +} + static inline bool nfs4_stateid_match_or_older(const nfs4_stateid *dst, const nfs4_stateid *src) { return nfs4_stateid_match_other(dst, src) && --- linux-azure-5.8-5.8.0.orig/fs/nfs/nfs4file.c +++ linux-azure-5.8-5.8.0/fs/nfs/nfs4file.c @@ -110,6 +110,7 @@ nfs4_file_flush(struct file *file, fl_owner_t id) { struct inode *inode = file_inode(file); + errseq_t since; dprintk("NFS: flush(%pD2)\n", file); @@ -125,7 +126,9 @@ return filemap_fdatawrite(file->f_mapping); /* Flush writes to the server and return any errors */ - return nfs_wb_all(inode); + since = filemap_sample_wb_err(file->f_mapping); + nfs_wb_all(inode); + return filemap_check_wb_err(file->f_mapping, since); } #ifdef CONFIG_NFS_V4_2 @@ -142,7 +145,8 @@ /* Only offload copy if superblock is the same */ if (file_in->f_op != &nfs4_file_operations) return -EXDEV; - if (!nfs_server_capable(file_inode(file_out), NFS_CAP_COPY)) + if (!nfs_server_capable(file_inode(file_out), NFS_CAP_COPY) || + !nfs_server_capable(file_inode(file_in), NFS_CAP_COPY)) return -EOPNOTSUPP; if (file_inode(file_in) == file_inode(file_out)) return -EOPNOTSUPP; --- linux-azure-5.8-5.8.0.orig/fs/nfs/nfs4proc.c +++ linux-azure-5.8-5.8.0/fs/nfs/nfs4proc.c @@ -130,8 +130,12 @@ static inline void nfs4_label_release_security(struct nfs4_label *label) { - if (label) - security_release_secctx(label->label, label->len); + struct lsmcontext scaff; /* scaffolding */ + + if (label) { + lsmcontext_init(&scaff, label->label, label->len, 0); + security_release_secctx(&scaff); + } } static inline u32 *nfs4_bitmask(struct nfs_server *server, struct nfs4_label *label) { @@ -1527,19 +1531,6 @@ wake_up_all(&state->waitq); } -static void nfs_state_log_out_of_order_open_stateid(struct nfs4_state *state, - const nfs4_stateid *stateid) -{ - u32 state_seqid = be32_to_cpu(state->open_stateid.seqid); - u32 stateid_seqid = be32_to_cpu(stateid->seqid); - - if (stateid_seqid == state_seqid + 1U || - (stateid_seqid == 1U && state_seqid == 0xffffffffU)) - nfs_state_log_update_open_stateid(state); - else - set_bit(NFS_STATE_CHANGE_WAIT, &state->flags); -} - static void nfs_test_and_clear_all_open_stateid(struct nfs4_state *state) { struct nfs_client *clp = state->owner->so_server->nfs_client; @@ -1565,21 +1556,19 @@ * i.e. The stateid seqids have to be initialised to 1, and * are then incremented on every state transition. */ -static bool nfs_need_update_open_stateid(struct nfs4_state *state, +static bool nfs_stateid_is_sequential(struct nfs4_state *state, const nfs4_stateid *stateid) { - if (test_bit(NFS_OPEN_STATE, &state->flags) == 0 || - !nfs4_stateid_match_other(stateid, &state->open_stateid)) { + if (test_bit(NFS_OPEN_STATE, &state->flags)) { + /* The common case - we're updating to a new sequence number */ + if (nfs4_stateid_match_other(stateid, &state->open_stateid) && + nfs4_stateid_is_next(&state->open_stateid, stateid)) { + return true; + } + } else { + /* This is the first OPEN in this generation */ if (stateid->seqid == cpu_to_be32(1)) - nfs_state_log_update_open_stateid(state); - else - set_bit(NFS_STATE_CHANGE_WAIT, &state->flags); - return true; - } - - if (nfs4_stateid_is_newer(stateid, &state->open_stateid)) { - nfs_state_log_out_of_order_open_stateid(state, stateid); - return true; + return true; } return false; } @@ -1653,16 +1642,16 @@ int status = 0; for (;;) { - if (!nfs_need_update_open_stateid(state, stateid)) - return; - if (!test_bit(NFS_STATE_CHANGE_WAIT, &state->flags)) + if (nfs_stateid_is_sequential(state, stateid)) break; + if (status) break; /* Rely on seqids for serialisation with NFSv4.0 */ if (!nfs4_has_session(NFS_SERVER(state->inode)->nfs_client)) break; + set_bit(NFS_STATE_CHANGE_WAIT, &state->flags); prepare_to_wait(&state->waitq, &wait, TASK_KILLABLE); /* * Ensure we process the state changes in the same order @@ -1673,6 +1662,7 @@ spin_unlock(&state->owner->so_lock); rcu_read_unlock(); trace_nfs4_open_stateid_update_wait(state->inode, stateid, 0); + if (!signal_pending(current)) { if (schedule_timeout(5*HZ) == 0) status = -EAGAIN; @@ -3272,8 +3262,10 @@ /* Servers should only apply open mode checks for file size changes */ truncate = (arg->iap->ia_valid & ATTR_SIZE) ? true : false; - if (!truncate) + if (!truncate) { + nfs4_inode_make_writeable(inode); goto zero_stateid; + } if (nfs4_copy_delegation_stateid(inode, FMODE_WRITE, &arg->stateid, &delegation_cred)) { /* Use that stateid */ @@ -3412,7 +3404,8 @@ __be32 seqid_open; u32 dst_seqid; bool ret; - int seq; + int seq, status = -EAGAIN; + DEFINE_WAIT(wait); for (;;) { ret = false; @@ -3424,15 +3417,41 @@ continue; break; } + + write_seqlock(&state->seqlock); seqid_open = state->open_stateid.seqid; - if (read_seqretry(&state->seqlock, seq)) - continue; dst_seqid = be32_to_cpu(dst->seqid); - if ((s32)(dst_seqid - be32_to_cpu(seqid_open)) >= 0) - dst->seqid = cpu_to_be32(dst_seqid + 1); - else + + /* Did another OPEN bump the state's seqid? try again: */ + if ((s32)(be32_to_cpu(seqid_open) - dst_seqid) > 0) { dst->seqid = seqid_open; + write_sequnlock(&state->seqlock); + ret = true; + break; + } + + /* server says we're behind but we haven't seen the update yet */ + set_bit(NFS_STATE_CHANGE_WAIT, &state->flags); + prepare_to_wait(&state->waitq, &wait, TASK_KILLABLE); + write_sequnlock(&state->seqlock); + trace_nfs4_close_stateid_update_wait(state->inode, dst, 0); + + if (signal_pending(current)) + status = -EINTR; + else + if (schedule_timeout(5*HZ) != 0) + status = 0; + + finish_wait(&state->waitq, &wait); + + if (!status) + continue; + if (status == -EINTR) + break; + + /* we slept the whole 5 seconds, we must have lost a seqid */ + dst->seqid = cpu_to_be32(dst_seqid + 1); ret = true; break; } @@ -3490,10 +3509,8 @@ trace_nfs4_close(state, &calldata->arg, &calldata->res, task->tk_status); /* Handle Layoutreturn errors */ - if (pnfs_roc_done(task, calldata->inode, - &calldata->arg.lr_args, - &calldata->res.lr_res, - &calldata->res.lr_ret) == -EAGAIN) + if (pnfs_roc_done(task, &calldata->arg.lr_args, &calldata->res.lr_res, + &calldata->res.lr_ret) == -EAGAIN) goto out_restart; /* hmm. we are done with the inode, and in the process of freeing @@ -4910,12 +4927,12 @@ u64 cookie, struct page **pages, unsigned int count, bool plus) { struct inode *dir = d_inode(dentry); + struct nfs_server *server = NFS_SERVER(dir); struct nfs4_readdir_arg args = { .fh = NFS_FH(dir), .pages = pages, .pgbase = 0, .count = count, - .bitmask = NFS_SERVER(d_inode(dentry))->attr_bitmask, .plus = plus, }; struct nfs4_readdir_res res; @@ -4930,9 +4947,15 @@ dprintk("%s: dentry = %pd2, cookie = %Lu\n", __func__, dentry, (unsigned long long)cookie); + if (!(server->caps & NFS_CAP_SECURITY_LABEL)) + args.bitmask = server->attr_bitmask_nl; + else + args.bitmask = server->attr_bitmask; + nfs4_setup_readdir(cookie, NFS_I(dir)->cookieverf, dentry, &args); res.pgbase = args.pgbase; - status = nfs4_call_sync(NFS_SERVER(dir)->client, NFS_SERVER(dir), &msg, &args.seq_args, &res.seq_res, 0); + status = nfs4_call_sync(server->client, server, &msg, &args.seq_args, + &res.seq_res, 0); if (status >= 0) { memcpy(NFS_I(dir)->cookieverf, res.verifier.data, NFS4_VERIFIER_SIZE); status += args.pgbase; @@ -5845,8 +5868,6 @@ return ret; if (!(fattr.valid & NFS_ATTR_FATTR_V4_SECURITY_LABEL)) return -ENOENT; - if (buflen < label.len) - return -ERANGE; return 0; } @@ -6253,10 +6274,8 @@ trace_nfs4_delegreturn_exit(&data->args, &data->res, task->tk_status); /* Handle Layoutreturn errors */ - if (pnfs_roc_done(task, data->inode, - &data->args.lr_args, - &data->res.lr_res, - &data->res.lr_ret) == -EAGAIN) + if (pnfs_roc_done(task, &data->args.lr_args, &data->res.lr_res, + &data->res.lr_ret) == -EAGAIN) goto out_restart; switch (task->tk_status) { @@ -6310,10 +6329,10 @@ struct nfs4_delegreturndata *data = calldata; struct inode *inode = data->inode; + if (data->lr.roc) + pnfs_roc_release(&data->lr.arg, &data->lr.res, + data->res.lr_ret); if (inode) { - if (data->lr.roc) - pnfs_roc_release(&data->lr.arg, &data->lr.res, - data->res.lr_ret); nfs_post_op_update_inode_force_wcc(inode, &data->fattr); nfs_iput_and_deactive(inode); } @@ -6388,16 +6407,14 @@ nfs_fattr_init(data->res.fattr); data->timestamp = jiffies; data->rpc_status = 0; - data->lr.roc = pnfs_roc(inode, &data->lr.arg, &data->lr.res, cred); data->inode = nfs_igrab_and_active(inode); - if (data->inode) { + if (data->inode || issync) { + data->lr.roc = pnfs_roc(inode, &data->lr.arg, &data->lr.res, + cred); if (data->lr.roc) { data->args.lr_args = &data->lr.arg; data->res.lr_res = &data->lr.res; } - } else if (data->lr.roc) { - pnfs_roc_release(&data->lr.arg, &data->lr.res, 0); - data->lr.roc = false; } task_setup_data.callback_data = data; @@ -6979,9 +6996,9 @@ data->arg.new_lock_owner, ret); } else data->cancelled = true; + trace_nfs4_set_lock(fl, state, &data->res.stateid, cmd, ret); rpc_put_task(task); dprintk("%s: done, ret = %d!\n", __func__, ret); - trace_nfs4_set_lock(fl, state, &data->res.stateid, cmd, ret); return ret; } @@ -7273,7 +7290,12 @@ err = nfs4_set_lock_state(state, fl); if (err != 0) return err; - err = _nfs4_do_setlk(state, F_SETLK, fl, NFS_LOCK_NEW); + do { + err = _nfs4_do_setlk(state, F_SETLK, fl, NFS_LOCK_NEW); + if (err != -NFS4ERR_DELAY) + break; + ssleep(1); + } while (err == -NFS4ERR_DELAY); return nfs4_handle_delegation_recall_error(server, state, stateid, fl, err); } @@ -7880,9 +7902,11 @@ * both PNFS and NON_PNFS flags set, and not having one of NON_PNFS, PNFS, or * DS flags set. */ -static int nfs4_check_cl_exchange_flags(u32 flags) +static int nfs4_check_cl_exchange_flags(u32 flags, u32 version) { - if (flags & ~EXCHGID4_FLAG_MASK_R) + if (version >= 2 && (flags & ~EXCHGID4_2_FLAG_MASK_R)) + goto out_inval; + else if (version < 2 && (flags & ~EXCHGID4_FLAG_MASK_R)) goto out_inval; if ((flags & EXCHGID4_FLAG_USE_PNFS_MDS) && (flags & EXCHGID4_FLAG_USE_NON_PNFS)) @@ -8295,7 +8319,8 @@ if (status != 0) goto out; - status = nfs4_check_cl_exchange_flags(resp->flags); + status = nfs4_check_cl_exchange_flags(resp->flags, + clp->cl_mvops->minor_version); if (status != 0) goto out; --- linux-azure-5.8-5.8.0.orig/fs/nfs/nfs4super.c +++ linux-azure-5.8-5.8.0/fs/nfs/nfs4super.c @@ -66,7 +66,7 @@ nfs_inode_evict_delegation(inode); /* Note that above delegreturn would trigger pnfs return-on-close */ pnfs_return_layout(inode); - pnfs_destroy_layout(NFS_I(inode)); + pnfs_destroy_layout_final(NFS_I(inode)); /* First call standard NFS clear_inode() code */ nfs_clear_inode(inode); } @@ -225,7 +225,7 @@ fc, ctx->nfs_server.hostname, ctx->nfs_server.export_path); if (err) { - nfs_errorf(fc, "NFS4: Couldn't follow remote path"); + nfs_ferrorf(fc, MOUNT, "NFS4: Couldn't follow remote path"); dfprintk(MOUNT, "<-- nfs4_try_get_tree() = %d [error]\n", err); } else { dfprintk(MOUNT, "<-- nfs4_try_get_tree() = 0\n"); @@ -248,7 +248,7 @@ fc, ctx->nfs_server.hostname, ctx->nfs_server.export_path); if (err) { - nfs_errorf(fc, "NFS4: Couldn't follow remote path"); + nfs_ferrorf(fc, MOUNT, "NFS4: Couldn't follow remote path"); dfprintk(MOUNT, "<-- nfs4_get_referral_tree() = %d [error]\n", err); } else { dfprintk(MOUNT, "<-- nfs4_get_referral_tree() = 0\n"); --- linux-azure-5.8-5.8.0.orig/fs/nfs/nfs4trace.h +++ linux-azure-5.8-5.8.0/fs/nfs/nfs4trace.h @@ -1511,6 +1511,7 @@ DEFINE_NFS4_INODE_STATEID_EVENT(nfs4_delegreturn); DEFINE_NFS4_INODE_STATEID_EVENT(nfs4_open_stateid_update); DEFINE_NFS4_INODE_STATEID_EVENT(nfs4_open_stateid_update_wait); +DEFINE_NFS4_INODE_STATEID_EVENT(nfs4_close_stateid_update_wait); DECLARE_EVENT_CLASS(nfs4_getattr_event, TP_PROTO( --- linux-azure-5.8-5.8.0.orig/fs/nfs/nfs4xdr.c +++ linux-azure-5.8-5.8.0/fs/nfs/nfs4xdr.c @@ -3009,15 +3009,19 @@ struct compound_hdr hdr = { .minorversion = nfs4_xdr_minorversion(&args->seq_args), }; + uint32_t replen; encode_compound_hdr(xdr, req, &hdr); encode_sequence(xdr, &args->seq_args, &hdr); + + replen = hdr.replen + op_decode_hdr_maxsz; + encode_getdeviceinfo(xdr, args, &hdr); - /* set up reply kvec. Subtract notification bitmap max size (2) - * so that notification bitmap is put in xdr_buf tail */ + /* set up reply kvec. device_addr4 opaque data is read into the + * pages */ rpc_prepare_reply_pages(req, args->pdev->pages, args->pdev->pgbase, - args->pdev->pglen, hdr.replen - 2); + args->pdev->pglen, replen + 2 + 1); encode_nops(&hdr); } @@ -4166,7 +4170,11 @@ return -EIO; if (len < NFS4_MAXLABELLEN) { if (label) { - memcpy(label->label, p, len); + if (label->len) { + if (label->len < len) + return -ERANGE; + memcpy(label->label, p, len); + } label->len = len; label->pi = pi; label->lfs = lfs; --- linux-azure-5.8-5.8.0.orig/fs/nfs/pnfs.c +++ linux-azure-5.8-5.8.0/fs/nfs/pnfs.c @@ -294,6 +294,7 @@ pnfs_put_layout_hdr(struct pnfs_layout_hdr *lo) { struct inode *inode; + unsigned long i_state; if (!lo) return; @@ -304,8 +305,12 @@ if (!list_empty(&lo->plh_segs)) WARN_ONCE(1, "NFS: BUG unfreed layout segments.\n"); pnfs_detach_layout_hdr(lo); + i_state = inode->i_state; spin_unlock(&inode->i_lock); pnfs_free_layout_hdr(lo); + /* Notify pnfs_destroy_layout_final() that we're done */ + if (i_state & (I_FREEING | I_CLEAR)) + wake_up_var(lo); } } @@ -319,6 +324,21 @@ return NULL; } +/* + * Compare 2 layout stateid sequence ids, to see which is newer, + * taking into account wraparound issues. + */ +static bool pnfs_seqid_is_newer(u32 s1, u32 s2) +{ + return (s32)(s1 - s2) > 0; +} + +static void pnfs_barrier_update(struct pnfs_layout_hdr *lo, u32 newseq) +{ + if (pnfs_seqid_is_newer(newseq, lo->plh_barrier)) + lo->plh_barrier = newseq; +} + static void pnfs_set_plh_return_info(struct pnfs_layout_hdr *lo, enum pnfs_iomode iomode, u32 seq) @@ -330,6 +350,7 @@ if (seq != 0) { WARN_ON_ONCE(lo->plh_return_seq != 0 && lo->plh_return_seq != seq); lo->plh_return_seq = seq; + pnfs_barrier_update(lo, seq); } } @@ -634,15 +655,6 @@ return rv; } -/* - * Compare 2 layout stateid sequence ids, to see which is newer, - * taking into account wraparound issues. - */ -static bool pnfs_seqid_is_newer(u32 s1, u32 s2) -{ - return (s32)(s1 - s2) > 0; -} - static bool pnfs_should_free_range(const struct pnfs_layout_range *lseg_range, const struct pnfs_layout_range *recall_range) @@ -734,8 +746,7 @@ } } -void -pnfs_destroy_layout(struct nfs_inode *nfsi) +static struct pnfs_layout_hdr *__pnfs_destroy_layout(struct nfs_inode *nfsi) { struct pnfs_layout_hdr *lo; LIST_HEAD(tmp_list); @@ -753,9 +764,34 @@ pnfs_put_layout_hdr(lo); } else spin_unlock(&nfsi->vfs_inode.i_lock); + return lo; +} + +void pnfs_destroy_layout(struct nfs_inode *nfsi) +{ + __pnfs_destroy_layout(nfsi); } EXPORT_SYMBOL_GPL(pnfs_destroy_layout); +static bool pnfs_layout_removed(struct nfs_inode *nfsi, + struct pnfs_layout_hdr *lo) +{ + bool ret; + + spin_lock(&nfsi->vfs_inode.i_lock); + ret = nfsi->layout != lo; + spin_unlock(&nfsi->vfs_inode.i_lock); + return ret; +} + +void pnfs_destroy_layout_final(struct nfs_inode *nfsi) +{ + struct pnfs_layout_hdr *lo = __pnfs_destroy_layout(nfsi); + + if (lo) + wait_var_event(lo, pnfs_layout_removed(nfsi, lo)); +} + static bool pnfs_layout_add_bulk_destroy_list(struct inode *inode, struct list_head *layout_list) @@ -955,8 +991,7 @@ new_barrier = be32_to_cpu(new->seqid); else if (new_barrier == 0) return; - if (pnfs_seqid_is_newer(new_barrier, lo->plh_barrier)) - lo->plh_barrier = new_barrier; + pnfs_barrier_update(lo, new_barrier); } static bool @@ -965,7 +1000,7 @@ { u32 seqid = be32_to_cpu(stateid->seqid); - return !pnfs_seqid_is_newer(seqid, lo->plh_barrier); + return !pnfs_seqid_is_newer(seqid, lo->plh_barrier) && lo->plh_barrier; } /* lget is set to 1 if called from inside send_layoutget call chain */ @@ -1154,20 +1189,17 @@ return false; set_bit(NFS_LAYOUT_RETURN, &lo->plh_flags); pnfs_get_layout_hdr(lo); + nfs4_stateid_copy(stateid, &lo->plh_stateid); + *cred = get_cred(lo->plh_lc_cred); if (test_bit(NFS_LAYOUT_RETURN_REQUESTED, &lo->plh_flags)) { - nfs4_stateid_copy(stateid, &lo->plh_stateid); - *cred = get_cred(lo->plh_lc_cred); if (lo->plh_return_seq != 0) stateid->seqid = cpu_to_be32(lo->plh_return_seq); if (iomode != NULL) *iomode = lo->plh_return_iomode; pnfs_clear_layoutreturn_info(lo); - return true; - } - nfs4_stateid_copy(stateid, &lo->plh_stateid); - *cred = get_cred(lo->plh_lc_cred); - if (iomode != NULL) + } else if (iomode != NULL) *iomode = IOMODE_ANY; + pnfs_barrier_update(lo, be32_to_cpu(stateid->seqid)); return true; } @@ -1226,31 +1258,27 @@ return status; } +static bool +pnfs_layout_segments_returnable(struct pnfs_layout_hdr *lo, + enum pnfs_iomode iomode, + u32 seq) +{ + struct pnfs_layout_range recall_range = { + .length = NFS4_MAX_UINT64, + .iomode = iomode, + }; + return pnfs_mark_matching_lsegs_return(lo, &lo->plh_return_segs, + &recall_range, seq) != -EBUSY; +} + /* Return true if layoutreturn is needed */ static bool pnfs_layout_need_return(struct pnfs_layout_hdr *lo) { - struct pnfs_layout_segment *s; - enum pnfs_iomode iomode; - u32 seq; - if (!test_bit(NFS_LAYOUT_RETURN_REQUESTED, &lo->plh_flags)) return false; - - seq = lo->plh_return_seq; - iomode = lo->plh_return_iomode; - - /* Defer layoutreturn until all recalled lsegs are done */ - list_for_each_entry(s, &lo->plh_segs, pls_list) { - if (seq && pnfs_seqid_is_newer(s->pls_seq, seq)) - continue; - if (iomode != IOMODE_ANY && s->pls_range.iomode != iomode) - continue; - if (test_bit(NFS_LSEG_LAYOUTRETURN, &s->pls_flags)) - return false; - } - - return true; + return pnfs_layout_segments_returnable(lo, lo->plh_return_iomode, + lo->plh_return_seq); } static void pnfs_layoutreturn_before_put_layout_hdr(struct pnfs_layout_hdr *lo) @@ -1484,10 +1512,8 @@ return false; } -int pnfs_roc_done(struct rpc_task *task, struct inode *inode, - struct nfs4_layoutreturn_args **argpp, - struct nfs4_layoutreturn_res **respp, - int *ret) +int pnfs_roc_done(struct rpc_task *task, struct nfs4_layoutreturn_args **argpp, + struct nfs4_layoutreturn_res **respp, int *ret) { struct nfs4_layoutreturn_args *arg = *argpp; int retval = -EAGAIN; @@ -1520,7 +1546,7 @@ return 0; case -NFS4ERR_OLD_STATEID: if (!nfs4_layout_refresh_old_stateid(&arg->stateid, - &arg->range, inode)) + &arg->range, arg->inode)) break; *ret = -NFS4ERR_NOMATCHING_LAYOUT; return -EAGAIN; @@ -1535,12 +1561,18 @@ int ret) { struct pnfs_layout_hdr *lo = args->layout; + struct inode *inode = args->inode; const nfs4_stateid *arg_stateid = NULL; const nfs4_stateid *res_stateid = NULL; struct nfs4_xdr_opaque_data *ld_private = args->ld_private; switch (ret) { case -NFS4ERR_NOMATCHING_LAYOUT: + spin_lock(&inode->i_lock); + if (pnfs_layout_is_valid(lo) && + nfs4_stateid_match_other(&args->stateid, &lo->plh_stateid)) + pnfs_set_plh_return_info(lo, args->range.iomode, 0); + spin_unlock(&inode->i_lock); break; case 0: if (res->lrs_present) @@ -1881,6 +1913,11 @@ wake_up_var(&lo->plh_outstanding); } +static bool pnfs_is_first_layoutget(struct pnfs_layout_hdr *lo) +{ + return test_bit(NFS_LAYOUT_FIRST_LAYOUTGET, &lo->plh_flags); +} + static void pnfs_clear_first_layoutget(struct pnfs_layout_hdr *lo) { unsigned long *bitlock = &lo->plh_flags; @@ -1990,6 +2027,27 @@ goto lookup_again; } + /* + * Because we free lsegs when sending LAYOUTRETURN, we need to wait + * for LAYOUTRETURN. + */ + if (test_bit(NFS_LAYOUT_RETURN, &lo->plh_flags)) { + spin_unlock(&ino->i_lock); + dprintk("%s wait for layoutreturn\n", __func__); + lseg = ERR_PTR(pnfs_prepare_to_retry_layoutget(lo)); + if (!IS_ERR(lseg)) { + pnfs_put_layout_hdr(lo); + dprintk("%s retrying\n", __func__); + trace_pnfs_update_layout(ino, pos, count, iomode, lo, + lseg, + PNFS_UPDATE_LAYOUT_RETRY); + goto lookup_again; + } + trace_pnfs_update_layout(ino, pos, count, iomode, lo, lseg, + PNFS_UPDATE_LAYOUT_RETURN); + goto out_put_layout_hdr; + } + lseg = pnfs_find_lseg(lo, &arg, strict_iomode); if (lseg) { trace_pnfs_update_layout(ino, pos, count, iomode, lo, lseg, @@ -2042,28 +2100,6 @@ nfs4_stateid_copy(&stateid, &lo->plh_stateid); } - /* - * Because we free lsegs before sending LAYOUTRETURN, we need to wait - * for LAYOUTRETURN even if first is true. - */ - if (test_bit(NFS_LAYOUT_RETURN, &lo->plh_flags)) { - spin_unlock(&ino->i_lock); - dprintk("%s wait for layoutreturn\n", __func__); - lseg = ERR_PTR(pnfs_prepare_to_retry_layoutget(lo)); - if (!IS_ERR(lseg)) { - if (first) - pnfs_clear_first_layoutget(lo); - pnfs_put_layout_hdr(lo); - dprintk("%s retrying\n", __func__); - trace_pnfs_update_layout(ino, pos, count, iomode, lo, - lseg, PNFS_UPDATE_LAYOUT_RETRY); - goto lookup_again; - } - trace_pnfs_update_layout(ino, pos, count, iomode, lo, lseg, - PNFS_UPDATE_LAYOUT_RETURN); - goto out_put_layout_hdr; - } - if (pnfs_layoutgets_blocked(lo)) { trace_pnfs_update_layout(ino, pos, count, iomode, lo, lseg, PNFS_UPDATE_LAYOUT_BLOCKED); @@ -2217,6 +2253,7 @@ &rng, GFP_KERNEL); if (!lgp) { pnfs_clear_first_layoutget(lo); + nfs_layoutget_end(lo); pnfs_put_layout_hdr(lo); return; } @@ -2355,23 +2392,34 @@ goto out_forget; } - if (!pnfs_layout_is_valid(lo)) { - /* We have a completely new layout */ - pnfs_set_layout_stateid(lo, &res->stateid, lgp->cred, true); - } else if (nfs4_stateid_match_other(&lo->plh_stateid, &res->stateid)) { + if (nfs4_stateid_match_other(&lo->plh_stateid, &res->stateid)) { /* existing state ID, make sure the sequence number matches. */ if (pnfs_layout_stateid_blocked(lo, &res->stateid)) { + if (!pnfs_layout_is_valid(lo) && + pnfs_is_first_layoutget(lo)) + lo->plh_barrier = 0; dprintk("%s forget reply due to sequence\n", __func__); goto out_forget; } pnfs_set_layout_stateid(lo, &res->stateid, lgp->cred, false); - } else { + } else if (pnfs_layout_is_valid(lo)) { /* * We got an entirely new state ID. Mark all segments for the * inode invalid, and retry the layoutget */ - pnfs_mark_layout_stateid_invalid(lo, &free_me); + struct pnfs_layout_range range = { + .iomode = IOMODE_ANY, + .length = NFS4_MAX_UINT64, + }; + pnfs_set_plh_return_info(lo, IOMODE_ANY, 0); + pnfs_mark_matching_lsegs_return(lo, &lo->plh_return_segs, + &range, 0); goto out_forget; + } else { + /* We have a completely new layout */ + if (!pnfs_is_first_layoutget(lo)) + goto out_forget; + pnfs_set_layout_stateid(lo, &res->stateid, lgp->cred, true); } pnfs_get_lseg(lseg); @@ -2389,19 +2437,10 @@ spin_unlock(&ino->i_lock); lseg->pls_layout = lo; NFS_SERVER(ino)->pnfs_curr_ld->free_lseg(lseg); + pnfs_free_lseg_list(&free_me); return ERR_PTR(-EAGAIN); } -static int -mark_lseg_invalid_or_return(struct pnfs_layout_segment *lseg, - struct list_head *tmp_list) -{ - if (!mark_lseg_invalid(lseg, tmp_list)) - return 0; - pnfs_cache_lseg_for_layoutreturn(lseg->pls_layout, lseg); - return 1; -} - /** * pnfs_mark_matching_lsegs_return - Free or return matching layout segments * @lo: pointer to layout header @@ -2438,7 +2477,7 @@ lseg, lseg->pls_range.iomode, lseg->pls_range.offset, lseg->pls_range.length); - if (mark_lseg_invalid_or_return(lseg, tmp_list)) + if (mark_lseg_invalid(lseg, tmp_list)) continue; remaining++; set_bit(NFS_LSEG_LAYOUTRETURN, &lseg->pls_flags); @@ -2953,7 +2992,8 @@ } /* Resend all requests through pnfs. */ -void pnfs_read_resend_pnfs(struct nfs_pgio_header *hdr) +void pnfs_read_resend_pnfs(struct nfs_pgio_header *hdr, + unsigned int mirror_idx) { struct nfs_pageio_descriptor pgio; @@ -2964,6 +3004,7 @@ nfs_pageio_init_read(&pgio, hdr->inode, false, hdr->completion_ops); + pgio.pg_mirror_idx = mirror_idx; hdr->task.tk_status = nfs_pageio_resend(&pgio, hdr); } } --- linux-azure-5.8-5.8.0.orig/fs/nfs/pnfs.h +++ linux-azure-5.8-5.8.0/fs/nfs/pnfs.h @@ -266,6 +266,7 @@ void pnfs_layoutget_free(struct nfs4_layoutget *lgp); void pnfs_free_lseg_list(struct list_head *tmp_list); void pnfs_destroy_layout(struct nfs_inode *); +void pnfs_destroy_layout_final(struct nfs_inode *); void pnfs_destroy_all_layouts(struct nfs_client *); int pnfs_destroy_layouts_byfsid(struct nfs_client *clp, struct nfs_fsid *fsid, @@ -294,10 +295,8 @@ struct nfs4_layoutreturn_args *args, struct nfs4_layoutreturn_res *res, const struct cred *cred); -int pnfs_roc_done(struct rpc_task *task, struct inode *inode, - struct nfs4_layoutreturn_args **argpp, - struct nfs4_layoutreturn_res **respp, - int *ret); +int pnfs_roc_done(struct rpc_task *task, struct nfs4_layoutreturn_args **argpp, + struct nfs4_layoutreturn_res **respp, int *ret); void pnfs_roc_release(struct nfs4_layoutreturn_args *args, struct nfs4_layoutreturn_res *res, int ret); @@ -311,7 +310,7 @@ int pnfs_commit_and_return_layout(struct inode *); void pnfs_ld_write_done(struct nfs_pgio_header *); void pnfs_ld_read_done(struct nfs_pgio_header *); -void pnfs_read_resend_pnfs(struct nfs_pgio_header *); +void pnfs_read_resend_pnfs(struct nfs_pgio_header *, unsigned int mirror_idx); struct pnfs_layout_segment *pnfs_update_layout(struct inode *ino, struct nfs_open_context *ctx, loff_t pos, @@ -710,6 +709,10 @@ { } +static inline void pnfs_destroy_layout_final(struct nfs_inode *nfsi) +{ +} + static inline struct pnfs_layout_segment * pnfs_get_lseg(struct pnfs_layout_segment *lseg) { @@ -765,7 +768,7 @@ } static inline int -pnfs_roc_done(struct rpc_task *task, struct inode *inode, +pnfs_roc_done(struct rpc_task *task, struct nfs4_layoutreturn_args **argpp, struct nfs4_layoutreturn_res **respp, int *ret) --- linux-azure-5.8-5.8.0.orig/fs/nfs/pnfs_nfs.c +++ linux-azure-5.8-5.8.0/fs/nfs/pnfs_nfs.c @@ -78,22 +78,18 @@ pnfs_generic_clear_request_commit(struct nfs_page *req, struct nfs_commit_info *cinfo) { - struct pnfs_layout_segment *freeme = NULL; + struct pnfs_commit_bucket *bucket = NULL; if (!test_and_clear_bit(PG_COMMIT_TO_DS, &req->wb_flags)) goto out; cinfo->ds->nwritten--; - if (list_is_singular(&req->wb_list)) { - struct pnfs_commit_bucket *bucket; - + if (list_is_singular(&req->wb_list)) bucket = list_first_entry(&req->wb_list, - struct pnfs_commit_bucket, - written); - freeme = pnfs_free_bucket_lseg(bucket); - } + struct pnfs_commit_bucket, written); out: nfs_request_remove_commit_list(req, cinfo); - pnfs_put_lseg(freeme); + if (bucket) + pnfs_put_lseg(pnfs_free_bucket_lseg(bucket)); } EXPORT_SYMBOL_GPL(pnfs_generic_clear_request_commit); @@ -407,12 +403,16 @@ struct pnfs_commit_bucket *bucket, struct nfs_commit_info *cinfo) { + struct pnfs_layout_segment *lseg; struct list_head *pos; list_for_each(pos, &bucket->committing) cinfo->ds->ncommitting--; list_splice_init(&bucket->committing, head); - return pnfs_free_bucket_lseg(bucket); + lseg = pnfs_free_bucket_lseg(bucket); + if (!lseg) + lseg = pnfs_get_lseg(bucket->lseg); + return lseg; } static struct nfs_commit_data * @@ -424,8 +424,6 @@ if (!data) return NULL; data->lseg = pnfs_bucket_get_committing(&data->pages, bucket, cinfo); - if (!data->lseg) - data->lseg = pnfs_get_lseg(bucket->lseg); return data; } --- linux-azure-5.8-5.8.0.orig/fs/nfs_common/grace.c +++ linux-azure-5.8-5.8.0/fs/nfs_common/grace.c @@ -69,10 +69,14 @@ if (!open) return !list_empty(grace_list); + spin_lock(&grace_lock); list_for_each_entry(lm, grace_list, list) { - if (lm->block_opens) + if (lm->block_opens) { + spin_unlock(&grace_lock); return true; + } } + spin_unlock(&grace_lock); return false; } --- linux-azure-5.8-5.8.0.orig/fs/nfsd/nfs3xdr.c +++ linux-azure-5.8-5.8.0/fs/nfsd/nfs3xdr.c @@ -849,9 +849,14 @@ if (isdotent(name, namlen)) { if (namlen == 2) { dchild = dget_parent(dparent); - /* filesystem root - cannot return filehandle for ".." */ + /* + * Don't return filehandle for ".." if we're at + * the filesystem or export root: + */ if (dchild == dparent) goto out; + if (dparent == exp->ex_path.dentry) + goto out; } else dchild = dget(dparent); } else --- linux-azure-5.8-5.8.0.orig/fs/nfsd/nfs4proc.c +++ linux-azure-5.8-5.8.0/fs/nfsd/nfs4proc.c @@ -1292,7 +1292,7 @@ struct nfsd_file *dst) { nfs42_ssc_close(src->nf_file); - nfsd_file_put(src); + /* 'src' is freed by nfsd4_do_async_copy */ nfsd_file_put(dst); mntput(ss_mnt); } @@ -1479,6 +1479,7 @@ cb_copy = kzalloc(sizeof(struct nfsd4_copy), GFP_KERNEL); if (!cb_copy) goto out; + refcount_set(&cb_copy->refcount, 1); memcpy(&cb_copy->cp_res, ©->cp_res, sizeof(copy->cp_res)); cb_copy->cp_clp = copy->cp_clp; cb_copy->nfserr = copy->nfserr; --- linux-azure-5.8-5.8.0.orig/fs/nfsd/nfs4recover.c +++ linux-azure-5.8-5.8.0/fs/nfsd/nfs4recover.c @@ -747,13 +747,11 @@ }; static int -__cld_pipe_upcall(struct rpc_pipe *pipe, void *cmsg) +__cld_pipe_upcall(struct rpc_pipe *pipe, void *cmsg, struct nfsd_net *nn) { int ret; struct rpc_pipe_msg msg; struct cld_upcall *cup = container_of(cmsg, struct cld_upcall, cu_u); - struct nfsd_net *nn = net_generic(pipe->dentry->d_sb->s_fs_info, - nfsd_net_id); memset(&msg, 0, sizeof(msg)); msg.data = cmsg; @@ -773,7 +771,7 @@ } static int -cld_pipe_upcall(struct rpc_pipe *pipe, void *cmsg) +cld_pipe_upcall(struct rpc_pipe *pipe, void *cmsg, struct nfsd_net *nn) { int ret; @@ -782,7 +780,7 @@ * upcalls queued. */ do { - ret = __cld_pipe_upcall(pipe, cmsg); + ret = __cld_pipe_upcall(pipe, cmsg, nn); } while (ret == -EAGAIN); return ret; @@ -1115,7 +1113,7 @@ memcpy(cup->cu_u.cu_msg.cm_u.cm_name.cn_id, clp->cl_name.data, clp->cl_name.len); - ret = cld_pipe_upcall(cn->cn_pipe, &cup->cu_u.cu_msg); + ret = cld_pipe_upcall(cn->cn_pipe, &cup->cu_u.cu_msg, nn); if (!ret) { ret = cup->cu_u.cu_msg.cm_status; set_bit(NFSD4_CLIENT_STABLE, &clp->cl_flags); @@ -1180,7 +1178,7 @@ } else cmsg->cm_u.cm_clntinfo.cc_princhash.cp_len = 0; - ret = cld_pipe_upcall(cn->cn_pipe, cmsg); + ret = cld_pipe_upcall(cn->cn_pipe, cmsg, nn); if (!ret) { ret = cmsg->cm_status; set_bit(NFSD4_CLIENT_STABLE, &clp->cl_flags); @@ -1218,7 +1216,7 @@ memcpy(cup->cu_u.cu_msg.cm_u.cm_name.cn_id, clp->cl_name.data, clp->cl_name.len); - ret = cld_pipe_upcall(cn->cn_pipe, &cup->cu_u.cu_msg); + ret = cld_pipe_upcall(cn->cn_pipe, &cup->cu_u.cu_msg, nn); if (!ret) { ret = cup->cu_u.cu_msg.cm_status; clear_bit(NFSD4_CLIENT_STABLE, &clp->cl_flags); @@ -1261,7 +1259,7 @@ memcpy(cup->cu_u.cu_msg.cm_u.cm_name.cn_id, clp->cl_name.data, clp->cl_name.len); - ret = cld_pipe_upcall(cn->cn_pipe, &cup->cu_u.cu_msg); + ret = cld_pipe_upcall(cn->cn_pipe, &cup->cu_u.cu_msg, nn); if (!ret) { ret = cup->cu_u.cu_msg.cm_status; set_bit(NFSD4_CLIENT_STABLE, &clp->cl_flags); @@ -1404,7 +1402,7 @@ } cup->cu_u.cu_msg.cm_cmd = Cld_GraceStart; - ret = cld_pipe_upcall(cn->cn_pipe, &cup->cu_u.cu_msg); + ret = cld_pipe_upcall(cn->cn_pipe, &cup->cu_u.cu_msg, nn); if (!ret) ret = cup->cu_u.cu_msg.cm_status; @@ -1432,7 +1430,7 @@ cup->cu_u.cu_msg.cm_cmd = Cld_GraceDone; cup->cu_u.cu_msg.cm_u.cm_gracetime = nn->boot_time; - ret = cld_pipe_upcall(cn->cn_pipe, &cup->cu_u.cu_msg); + ret = cld_pipe_upcall(cn->cn_pipe, &cup->cu_u.cu_msg, nn); if (!ret) ret = cup->cu_u.cu_msg.cm_status; @@ -1460,7 +1458,7 @@ } cup->cu_u.cu_msg.cm_cmd = Cld_GraceDone; - ret = cld_pipe_upcall(cn->cn_pipe, &cup->cu_u.cu_msg); + ret = cld_pipe_upcall(cn->cn_pipe, &cup->cu_u.cu_msg, nn); if (!ret) ret = cup->cu_u.cu_msg.cm_status; @@ -1524,7 +1522,7 @@ goto out_err; } cup->cu_u.cu_msg.cm_cmd = Cld_GetVersion; - ret = cld_pipe_upcall(cn->cn_pipe, &cup->cu_u.cu_msg); + ret = cld_pipe_upcall(cn->cn_pipe, &cup->cu_u.cu_msg, nn); if (!ret) { ret = cup->cu_u.cu_msg.cm_status; if (ret) --- linux-azure-5.8-5.8.0.orig/fs/nfsd/nfs4state.c +++ linux-azure-5.8-5.8.0/fs/nfsd/nfs4state.c @@ -769,6 +769,7 @@ spin_lock(&nn->s2s_cp_lock); new_id = idr_alloc_cyclic(&nn->s2s_cp_stateids, stid, 0, 0, GFP_NOWAIT); stid->stid.si_opaque.so_id = new_id; + stid->stid.si_generation = 1; spin_unlock(&nn->s2s_cp_lock); idr_preload_end(); if (new_id < 0) @@ -4597,6 +4598,8 @@ if (!i_am_nfsd()) return NULL; rqst = kthread_data(current); + if (!rqst->rq_lease_breaker) + return NULL; clp = *(rqst->rq_lease_breaker); return dl->dl_stid.sc_client == clp; } @@ -5098,7 +5101,7 @@ memcpy(&open->op_delegate_stateid, &dp->dl_stid.sc_stateid, sizeof(dp->dl_stid.sc_stateid)); - trace_nfsd_deleg_open(&dp->dl_stid.sc_stateid); + trace_nfsd_deleg_read(&dp->dl_stid.sc_stateid); open->op_delegate_type = NFS4_OPEN_DELEGATE_READ; nfs4_put_stid(&dp->dl_stid); return; @@ -5215,7 +5218,7 @@ nfs4_open_delegation(current_fh, open, stp); nodeleg: status = nfs_ok; - trace_nfsd_deleg_none(&stp->st_stid.sc_stateid); + trace_nfsd_open(&stp->st_stid.sc_stateid); out: /* 4.1 client trying to upgrade/downgrade delegation? */ if (open->op_delegate_type == NFS4_OPEN_DELEGATE_NONE && dp && --- linux-azure-5.8-5.8.0.orig/fs/nfsd/nfs4xdr.c +++ linux-azure-5.8-5.8.0/fs/nfsd/nfs4xdr.c @@ -2379,11 +2379,11 @@ #ifdef CONFIG_NFSD_V4_SECURITY_LABEL static inline __be32 nfsd4_encode_security_label(struct xdr_stream *xdr, struct svc_rqst *rqstp, - void *context, int len) + struct lsmcontext *context) { __be32 *p; - p = xdr_reserve_space(xdr, len + 4 + 4 + 4); + p = xdr_reserve_space(xdr, context->len + 4 + 4 + 4); if (!p) return nfserr_resource; @@ -2393,13 +2393,13 @@ */ *p++ = cpu_to_be32(0); /* lfs */ *p++ = cpu_to_be32(0); /* pi */ - p = xdr_encode_opaque(p, context, len); + p = xdr_encode_opaque(p, context->context, context->len); return 0; } #else static inline __be32 nfsd4_encode_security_label(struct xdr_stream *xdr, struct svc_rqst *rqstp, - void *context, int len) + struct lsmcontext *context) { return 0; } #endif @@ -2496,8 +2496,7 @@ int err; struct nfs4_acl *acl = NULL; #ifdef CONFIG_NFSD_V4_SECURITY_LABEL - void *context = NULL; - int contextlen; + struct lsmcontext context = { }; #endif bool contextsupport = false; struct nfsd4_compoundres *resp = rqstp->rq_resp; @@ -2555,7 +2554,7 @@ bmval0 & FATTR4_WORD0_SUPPORTED_ATTRS) { if (exp->ex_flags & NFSEXP_SECURITY_LABEL) err = security_inode_getsecctx(d_inode(dentry), - &context, &contextlen); + &context); else err = -EOPNOTSUPP; contextsupport = (err == 0); @@ -2985,8 +2984,7 @@ #ifdef CONFIG_NFSD_V4_SECURITY_LABEL if (bmval2 & FATTR4_WORD2_SECURITY_LABEL) { - status = nfsd4_encode_security_label(xdr, rqstp, context, - contextlen); + status = nfsd4_encode_security_label(xdr, rqstp, &context); if (status) goto out; } @@ -2998,8 +2996,8 @@ out: #ifdef CONFIG_NFSD_V4_SECURITY_LABEL - if (context) - security_release_secctx(context, contextlen); + if (context.context) + security_release_secctx(&context); #endif /* CONFIG_NFSD_V4_SECURITY_LABEL */ kfree(acl); if (tempfh) { --- linux-azure-5.8-5.8.0.orig/fs/nfsd/nfsctl.c +++ linux-azure-5.8-5.8.0/fs/nfsd/nfsctl.c @@ -1522,12 +1522,9 @@ int retval; printk(KERN_INFO "Installing knfsd (copyright (C) 1996 okir@monad.swb.de).\n"); - retval = register_pernet_subsys(&nfsd_net_ops); - if (retval < 0) - return retval; retval = register_cld_notifier(); if (retval) - goto out_unregister_pernet; + return retval; retval = nfsd4_init_slabs(); if (retval) goto out_unregister_notifier; @@ -1545,9 +1542,14 @@ goto out_free_lockd; retval = register_filesystem(&nfsd_fs_type); if (retval) + goto out_free_exports; + retval = register_pernet_subsys(&nfsd_net_ops); + if (retval < 0) goto out_free_all; return 0; out_free_all: + unregister_pernet_subsys(&nfsd_net_ops); +out_free_exports: remove_proc_entry("fs/nfs/exports", NULL); remove_proc_entry("fs/nfs", NULL); out_free_lockd: @@ -1561,13 +1563,12 @@ nfsd4_free_slabs(); out_unregister_notifier: unregister_cld_notifier(); -out_unregister_pernet: - unregister_pernet_subsys(&nfsd_net_ops); return retval; } static void __exit exit_nfsd(void) { + unregister_pernet_subsys(&nfsd_net_ops); nfsd_drc_slab_free(); remove_proc_entry("fs/nfs/exports", NULL); remove_proc_entry("fs/nfs", NULL); @@ -1578,7 +1579,6 @@ nfsd_fault_inject_cleanup(); unregister_filesystem(&nfsd_fs_type); unregister_cld_notifier(); - unregister_pernet_subsys(&nfsd_net_ops); } MODULE_AUTHOR("Olaf Kirch "); --- linux-azure-5.8-5.8.0.orig/fs/nfsd/nfsproc.c +++ linux-azure-5.8-5.8.0/fs/nfsd/nfsproc.c @@ -118,6 +118,13 @@ return nfsd_return_attrs(nfserr, resp); } +/* Obsolete, replaced by MNTPROC_MNT. */ +static __be32 +nfsd_proc_root(struct svc_rqst *rqstp) +{ + return nfs_ok; +} + /* * Look up a path name component * Note: the dentry in the resp->fh may be negative if the file @@ -203,6 +210,13 @@ return fh_getattr(&resp->fh, &resp->stat); } +/* Reserved */ +static __be32 +nfsd_proc_writecache(struct svc_rqst *rqstp) +{ + return nfs_ok; +} + /* * Write data to a file * N.B. After this call resp->fh needs an fh_put @@ -617,6 +631,7 @@ .pc_xdrressize = ST+AT, }, [NFSPROC_ROOT] = { + .pc_func = nfsd_proc_root, .pc_decode = nfssvc_decode_void, .pc_encode = nfssvc_encode_void, .pc_argsize = sizeof(struct nfsd_void), @@ -654,6 +669,7 @@ .pc_xdrressize = ST+AT+1+NFSSVC_MAXBLKSIZE_V2/4, }, [NFSPROC_WRITECACHE] = { + .pc_func = nfsd_proc_writecache, .pc_decode = nfssvc_decode_void, .pc_encode = nfssvc_encode_void, .pc_argsize = sizeof(struct nfsd_void), --- linux-azure-5.8-5.8.0.orig/fs/nfsd/nfssvc.c +++ linux-azure-5.8-5.8.0/fs/nfsd/nfssvc.c @@ -527,8 +527,7 @@ return; nfsd_shutdown_net(net); - printk(KERN_WARNING "nfsd: last server has exited, flushing export " - "cache\n"); + pr_info("nfsd: last server has exited, flushing export cache\n"); nfsd_export_flush(net); } --- linux-azure-5.8-5.8.0.orig/fs/nfsd/trace.h +++ linux-azure-5.8-5.8.0/fs/nfsd/trace.h @@ -289,8 +289,8 @@ DEFINE_STATEID_EVENT(layout_recall_fail); DEFINE_STATEID_EVENT(layout_recall_release); -DEFINE_STATEID_EVENT(deleg_open); -DEFINE_STATEID_EVENT(deleg_none); +DEFINE_STATEID_EVENT(open); +DEFINE_STATEID_EVENT(deleg_read); DEFINE_STATEID_EVENT(deleg_break); DEFINE_STATEID_EVENT(deleg_recall); --- linux-azure-5.8-5.8.0.orig/fs/nilfs2/file.c +++ linux-azure-5.8-5.8.0/fs/nilfs2/file.c @@ -141,6 +141,7 @@ /* .release = nilfs_release_file, */ .fsync = nilfs_sync_file, .splice_read = generic_file_splice_read, + .splice_write = iter_file_splice_write, }; const struct inode_operations nilfs_file_inode_operations = { --- linux-azure-5.8-5.8.0.orig/fs/notify/fanotify/fanotify_user.c +++ linux-azure-5.8-5.8.0/fs/notify/fanotify/fanotify_user.c @@ -1173,26 +1173,23 @@ return ret; } +#ifndef CONFIG_ARCH_SPLIT_ARG64 SYSCALL_DEFINE5(fanotify_mark, int, fanotify_fd, unsigned int, flags, __u64, mask, int, dfd, const char __user *, pathname) { return do_fanotify_mark(fanotify_fd, flags, mask, dfd, pathname); } +#endif -#ifdef CONFIG_COMPAT -COMPAT_SYSCALL_DEFINE6(fanotify_mark, +#if defined(CONFIG_ARCH_SPLIT_ARG64) || defined(CONFIG_COMPAT) +SYSCALL32_DEFINE6(fanotify_mark, int, fanotify_fd, unsigned int, flags, - __u32, mask0, __u32, mask1, int, dfd, + SC_ARG64(mask), int, dfd, const char __user *, pathname) { - return do_fanotify_mark(fanotify_fd, flags, -#ifdef __BIG_ENDIAN - ((__u64)mask0 << 32) | mask1, -#else - ((__u64)mask1 << 32) | mask0, -#endif - dfd, pathname); + return do_fanotify_mark(fanotify_fd, flags, SC_VAL64(__u64, mask), + dfd, pathname); } #endif --- linux-azure-5.8-5.8.0.orig/fs/notify/group.c +++ linux-azure-5.8-5.8.0/fs/notify/group.c @@ -100,6 +100,7 @@ { refcount_inc(&group->refcnt); } +EXPORT_SYMBOL_GPL(fsnotify_get_group); /* * Drop a reference to a group. Free it if it's through. --- linux-azure-5.8-5.8.0.orig/fs/ntfs/inode.c +++ linux-azure-5.8-5.8.0/fs/ntfs/inode.c @@ -628,6 +628,12 @@ } a = ctx->attr; /* Get the standard information attribute value. */ + if ((u8 *)a + le16_to_cpu(a->data.resident.value_offset) + + le32_to_cpu(a->data.resident.value_length) > + (u8 *)ctx->mrec + vol->mft_record_size) { + ntfs_error(vi->i_sb, "Corrupt standard information attribute in inode."); + goto unm_err_out; + } si = (STANDARD_INFORMATION*)((u8*)a + le16_to_cpu(a->data.resident.value_offset)); @@ -1809,6 +1815,12 @@ brelse(bh); } + if (le32_to_cpu(m->bytes_allocated) != vol->mft_record_size) { + ntfs_error(sb, "Incorrect mft record size %u in superblock, should be %u.", + le32_to_cpu(m->bytes_allocated), vol->mft_record_size); + goto err_out; + } + /* Apply the mst fixups. */ if (post_read_mst_fixup((NTFS_RECORD*)m, vol->mft_record_size)) { /* FIXME: Try to use the $MFTMirr now. */ --- linux-azure-5.8-5.8.0.orig/fs/ocfs2/cluster/heartbeat.c +++ linux-azure-5.8-5.8.0/fs/ocfs2/cluster/heartbeat.c @@ -2050,7 +2050,7 @@ o2hb_nego_timeout_handler, reg, NULL, ®->hr_handler_list); if (ret) - goto free; + goto remove_item; ret = o2net_register_handler(O2HB_NEGO_APPROVE_MSG, reg->hr_key, sizeof(struct o2hb_nego_msg), @@ -2065,6 +2065,12 @@ unregister_handler: o2net_unregister_handler_list(®->hr_handler_list); +remove_item: + spin_lock(&o2hb_live_lock); + list_del(®->hr_all_item); + if (o2hb_global_heartbeat_active()) + clear_bit(reg->hr_region_num, o2hb_region_bitmap); + spin_unlock(&o2hb_live_lock); free: kfree(reg); return ERR_PTR(ret); --- linux-azure-5.8-5.8.0.orig/fs/ocfs2/dlmglue.c +++ linux-azure-5.8-5.8.0/fs/ocfs2/dlmglue.c @@ -2871,9 +2871,15 @@ status = ocfs2_cluster_lock(osb, lockres, ex ? LKM_EXMODE : LKM_PRMODE, 0, 0); - if (status < 0) + if (status < 0) { mlog(ML_ERROR, "lock on nfs sync lock failed %d\n", status); + if (ex) + up_write(&osb->nfs_sync_rwlock); + else + up_read(&osb->nfs_sync_rwlock); + } + return status; } --- linux-azure-5.8-5.8.0.orig/fs/ocfs2/ocfs2.h +++ linux-azure-5.8-5.8.0/fs/ocfs2/ocfs2.h @@ -327,8 +327,8 @@ spinlock_t osb_lock; u32 s_next_generation; unsigned long osb_flags; - s16 s_inode_steal_slot; - s16 s_meta_steal_slot; + u16 s_inode_steal_slot; + u16 s_meta_steal_slot; atomic_t s_num_inodes_stolen; atomic_t s_num_meta_stolen; --- linux-azure-5.8-5.8.0.orig/fs/ocfs2/suballoc.c +++ linux-azure-5.8-5.8.0/fs/ocfs2/suballoc.c @@ -879,9 +879,9 @@ { spin_lock(&osb->osb_lock); if (type == INODE_ALLOC_SYSTEM_INODE) - osb->s_inode_steal_slot = slot; + osb->s_inode_steal_slot = (u16)slot; else if (type == EXTENT_ALLOC_SYSTEM_INODE) - osb->s_meta_steal_slot = slot; + osb->s_meta_steal_slot = (u16)slot; spin_unlock(&osb->osb_lock); } --- linux-azure-5.8-5.8.0.orig/fs/ocfs2/super.c +++ linux-azure-5.8-5.8.0/fs/ocfs2/super.c @@ -78,7 +78,7 @@ unsigned long commit_interval; unsigned long mount_opt; unsigned int atime_quantum; - signed short slot; + unsigned short slot; int localalloc_opt; unsigned int resv_level; int dir_resv_level; @@ -1349,7 +1349,7 @@ goto bail; } if (option) - mopt->slot = (s16)option; + mopt->slot = (u16)option; break; case Opt_commit: if (match_int(&args[0], &option)) { @@ -1713,6 +1713,7 @@ oi->ip_blkno = 0ULL; oi->ip_clusters = 0; + oi->ip_next_orphan = NULL; ocfs2_resv_init_once(&oi->ip_la_data_resv); --- linux-azure-5.8-5.8.0.orig/fs/open.c +++ linux-azure-5.8-5.8.0/fs/open.c @@ -65,6 +65,7 @@ inode_unlock(dentry->d_inode); return ret; } +EXPORT_SYMBOL_GPL(do_truncate); long vfs_truncate(const struct path *path, loff_t length) { @@ -1021,6 +1022,10 @@ if (how->resolve & ~VALID_RESOLVE_FLAGS) return -EINVAL; + /* Scoping flags are mutually exclusive. */ + if ((how->resolve & RESOLVE_BENEATH) && (how->resolve & RESOLVE_IN_ROOT)) + return -EINVAL; + /* Deal with the mode. */ if (WILL_CREATE(flags)) { if (how->mode & ~S_IALLUGO) --- linux-azure-5.8-5.8.0.orig/fs/overlayfs/copy_up.c +++ linux-azure-5.8-5.8.0/fs/overlayfs/copy_up.c @@ -83,6 +83,14 @@ if (ovl_is_private_xattr(name)) continue; + + error = security_inode_copy_up_xattr(name); + if (error < 0 && error != -EOPNOTSUPP) + break; + if (error == 1) { + error = 0; + continue; /* Discard */ + } retry: size = vfs_getxattr(old, name, value, value_size); if (size == -ERANGE) @@ -106,13 +114,6 @@ goto retry; } - error = security_inode_copy_up_xattr(name); - if (error < 0 && error != -EOPNOTSUPP) - break; - if (error == 1) { - error = 0; - continue; /* Discard */ - } error = vfs_setxattr(new, name, value, size, 0); if (error) { if (error != -EOPNOTSUPP || ovl_must_copy_xattr(name)) @@ -252,10 +253,19 @@ { int err = 0; + /* + * For the most part we want to set the mode bits before setting + * the user, otherwise the current context might lack permission + * for setting the mode. However for sxid/sticky bits we want + * the operation to fail if the current user isn't privileged + * towards the resulting inode. So we first set the mode but + * exclude the sxid/sticky bits, then set the user, then set the + * mode again if any of the sxid/sticky bits are set. + */ if (!S_ISLNK(stat->mode)) { struct iattr attr = { .ia_valid = ATTR_MODE, - .ia_mode = stat->mode, + .ia_mode = stat->mode & ~(S_ISUID|S_ISGID|S_ISVTX), }; err = notify_change(upperdentry, &attr, NULL); } @@ -267,6 +277,14 @@ }; err = notify_change(upperdentry, &attr, NULL); } + if (!err && !S_ISLNK(stat->mode) && + (stat->mode & (S_ISUID|S_ISGID|S_ISVTX))) { + struct iattr attr = { + .ia_valid = ATTR_MODE, + .ia_mode = stat->mode, + }; + err = notify_change(upperdentry, &attr, NULL); + } if (!err) ovl_set_timestamps(upperdentry, stat); --- linux-azure-5.8-5.8.0.orig/fs/overlayfs/dir.c +++ linux-azure-5.8-5.8.0/fs/overlayfs/dir.c @@ -992,8 +992,8 @@ buflen -= thislen; memcpy(&buf[buflen], name, thislen); - tmp = dget_dlock(d->d_parent); spin_unlock(&d->d_lock); + tmp = dget_parent(d); dput(d); d = tmp; --- linux-azure-5.8-5.8.0.orig/fs/overlayfs/file.c +++ linux-azure-5.8-5.8.0/fs/overlayfs/file.c @@ -39,6 +39,7 @@ static struct file *ovl_open_realfile(const struct file *file, struct inode *realinode) { + struct path realpath; struct inode *inode = file_inode(file); struct file *realfile; const struct cred *old_cred; @@ -53,10 +54,12 @@ err = inode_permission(realinode, MAY_OPEN | acc_mode); if (err) { realfile = ERR_PTR(err); - } else if (!inode_owner_or_capable(realinode)) { - realfile = ERR_PTR(-EPERM); } else { - realfile = open_with_fake_path(&file->f_path, flags, realinode, + if (!inode_owner_or_capable(realinode)) + flags &= ~O_NOATIME; + + ovl_path_real(file->f_path.dentry, &realpath); + realfile = open_with_fake_path(&realpath, flags, realinode, current_cred()); } revert_creds(old_cred); @@ -75,12 +78,6 @@ struct inode *inode = file_inode(file); int err; - flags |= OVL_OPEN_FLAGS; - - /* If some flag changed that cannot be changed then something's amiss */ - if (WARN_ON((file->f_flags ^ flags) & ~OVL_SETFL_MASK)) - return -EIO; - flags &= OVL_SETFL_MASK; if (((flags ^ file->f_flags) & O_APPEND) && IS_APPEND(inode)) @@ -468,7 +465,11 @@ revert_creds(old_cred); if (ret) { - /* Drop reference count from new vm_file value */ + /* + * Drop reference count from new vm_file value and restore + * original vm_file value + */ + vma->vm_file = file; fput(realfile); } else { /* Drop reference count from previous vm_file value */ --- linux-azure-5.8-5.8.0.orig/fs/overlayfs/inode.c +++ linux-azure-5.8-5.8.0/fs/overlayfs/inode.c @@ -281,7 +281,6 @@ { struct inode *upperinode = ovl_inode_upper(inode); struct inode *realinode = upperinode ?: ovl_inode_lower(inode); - const struct cred *old_cred; int err; /* Careful in RCU walk mode */ @@ -298,15 +297,13 @@ if (err) return err; - old_cred = ovl_override_creds(inode->i_sb); if (!upperinode && !special_file(realinode->i_mode) && mask & MAY_WRITE) { mask &= ~(MAY_WRITE | MAY_APPEND); /* Make sure mounter can read file for copy up later */ mask |= MAY_READ; } - err = inode_permission(realinode, mask); - revert_creds(old_cred); + err = ovl_creator_permission(inode->i_sb, realinode, mask); return err; } @@ -346,7 +343,9 @@ goto out; if (!value && !upperdentry) { + old_cred = ovl_override_creds(dentry->d_sb); err = vfs_getxattr(realdentry, name, NULL, 0); + revert_creds(old_cred); if (err < 0) goto out_drop_write; } --- linux-azure-5.8-5.8.0.orig/fs/overlayfs/namei.c +++ linux-azure-5.8-5.8.0/fs/overlayfs/namei.c @@ -106,10 +106,11 @@ static struct ovl_fh *ovl_get_fh(struct dentry *dentry, const char *name) { - int res, err; + ssize_t res; + int err; struct ovl_fh *fh = NULL; - res = vfs_getxattr(dentry, name, NULL, 0); + res = ovl_do_vfs_getxattr(dentry, name, NULL, 0); if (res < 0) { if (res == -ENODATA || res == -EOPNOTSUPP) return NULL; @@ -123,7 +124,7 @@ if (!fh) return ERR_PTR(-ENOMEM); - res = vfs_getxattr(dentry, name, fh->buf, res); + res = ovl_do_vfs_getxattr(dentry, name, fh->buf, res); if (res < 0) goto fail; @@ -141,10 +142,11 @@ return NULL; fail: - pr_warn_ratelimited("failed to get origin (%i)\n", res); + pr_warn_ratelimited("failed to get origin (%zi)\n", res); goto out; invalid: - pr_warn_ratelimited("invalid origin (%*phN)\n", res, fh); + pr_warn_ratelimited("invalid origin (%*phN)\n", + (int)res, fh); goto out; } --- linux-azure-5.8-5.8.0.orig/fs/overlayfs/overlayfs.h +++ linux-azure-5.8-5.8.0/fs/overlayfs/overlayfs.h @@ -173,7 +173,13 @@ static inline int ovl_do_setxattr(struct dentry *dentry, const char *name, const void *value, size_t size, int flags) { - int err = vfs_setxattr(dentry, name, value, size, flags); + struct inode *inode = dentry->d_inode; + int err; + + inode_lock(inode); + err = __vfs_setxattr_noperm(dentry, name, value, size, flags); + inode_unlock(inode); + pr_debug("setxattr(%pd2, \"%s\", \"%*pE\", %zu, 0x%x) = %i\n", dentry, name, min((int)size, 48), value, size, flags, err); return err; @@ -181,7 +187,13 @@ static inline int ovl_do_removexattr(struct dentry *dentry, const char *name) { - int err = vfs_removexattr(dentry, name); + struct inode *inode = dentry->d_inode; + int err; + + inode_lock(inode); + err = __vfs_removexattr_noperm(dentry, name); + inode_unlock(inode); + pr_debug("removexattr(%pd2, \"%s\") = %i\n", dentry, name, err); return err; } @@ -225,11 +237,20 @@ return ((OPEN_FMODE(flags) & FMODE_WRITE) || (flags & O_TRUNC)); } +static inline ssize_t ovl_do_vfs_getxattr(struct dentry *dentry, + const char *name, void *buf, + size_t size) +{ + return __vfs_getxattr(dentry, d_inode(dentry), name, buf, size); +} + /* util.c */ int ovl_want_write(struct dentry *dentry); void ovl_drop_write(struct dentry *dentry); struct dentry *ovl_workdir(struct dentry *dentry); const struct cred *ovl_override_creds(struct super_block *sb); +int ovl_creator_permission(struct super_block *sb, struct inode *inode, + int mode); int ovl_can_decode_fh(struct super_block *sb); struct dentry *ovl_indexdir(struct super_block *sb); bool ovl_index_all(struct super_block *sb); --- linux-azure-5.8-5.8.0.orig/fs/overlayfs/readdir.c +++ linux-azure-5.8-5.8.0/fs/overlayfs/readdir.c @@ -370,6 +370,12 @@ next = ovl_path_next(idx, dentry, &realpath); rdd.is_upper = ovl_dentry_upper(dentry) == realpath.dentry; + err = ovl_creator_permission(dentry->d_sb, + d_inode(realpath.dentry), + MAY_READ); + if (err) + break; + if (next != -1) { err = ovl_dir_read(&realpath, &rdd); if (err) @@ -751,6 +757,12 @@ ovl_dir_reset(file); if (od->is_real) { + err = ovl_creator_permission(dentry->d_sb, + file_inode(od->realfile), + MAY_READ); + if (err) + return err; + /* * If parent is merge, then need to adjust d_ino for '..', if * dir is impure then need to adjust d_ino for copied up --- linux-azure-5.8-5.8.0.orig/fs/overlayfs/super.c +++ linux-azure-5.8-5.8.0/fs/overlayfs/super.c @@ -79,7 +79,7 @@ static struct dentry *ovl_d_real(struct dentry *dentry, const struct inode *inode) { - struct dentry *real; + struct dentry *real = NULL, *lower; /* It's an overlay file */ if (inode && d_inode(dentry) == inode) @@ -98,9 +98,10 @@ if (real && !inode && ovl_has_upperdata(d_inode(dentry))) return real; - real = ovl_dentry_lowerdata(dentry); - if (!real) + lower = ovl_dentry_lowerdata(dentry); + if (!lower) goto bug; + real = lower; /* Handle recursion */ real = d_real(real, inode); @@ -108,8 +109,10 @@ if (!inode || inode == d_inode(real)) return real; bug: - WARN(1, "ovl_d_real(%pd4, %s:%lu): real dentry not found\n", dentry, - inode ? inode->i_sb->s_id : "NULL", inode ? inode->i_ino : 0); + WARN(1, "%s(%pd4, %s:%lu): real dentry (%p/%lu) not found\n", + __func__, dentry, inode ? inode->i_sb->s_id : "NULL", + inode ? inode->i_ino : 0, real, + real && d_inode(real) ? d_inode(real)->i_ino : 0); return dentry; } @@ -811,7 +814,8 @@ ovl_unescape(tmp); err = ovl_mount_dir_noesc(tmp, path); - if (!err && path->dentry->d_flags & DCACHE_OP_REAL) { + if (!err && (path->dentry->d_flags & DCACHE_OP_REAL && + path->dentry->d_sb->s_magic != SHIFTFS_MAGIC)) { pr_err("filesystem on '%s' not supported as upperdir\n", tmp); path_put_init(path); @@ -1554,6 +1558,13 @@ */ mnt->mnt_flags |= MNT_READONLY | MNT_NOATIME; + /* + * If any lower mount is nosuid, force the ovl sb to also + * be nosuid. + */ + if (mnt->mnt_flags & MNT_NOSUID) + sb->s_iflags |= SB_I_NOSUID; + layers[ofs->numlayer].trap = trap; layers[ofs->numlayer].mnt = mnt; layers[ofs->numlayer].idx = ofs->numlayer; @@ -1862,6 +1873,13 @@ if (!ofs->workdir) sb->s_flags |= SB_RDONLY; + /* + * If the upper mount is nosuid, force the ovl sb to also + * be nosuid. + */ + if (ovl_upper_mnt(ofs)->mnt_flags & MNT_NOSUID) + sb->s_iflags |= SB_I_NOSUID; + sb->s_stack_depth = ovl_upper_mnt(ofs)->mnt_sb->s_stack_depth; sb->s_time_gran = ovl_upper_mnt(ofs)->mnt_sb->s_time_gran; @@ -1949,6 +1967,7 @@ .name = "overlay", .mount = ovl_mount, .kill_sb = kill_anon_super, + .fs_flags = FS_USERNS_MOUNT, }; MODULE_ALIAS_FS("overlay"); --- linux-azure-5.8-5.8.0.orig/fs/overlayfs/util.c +++ linux-azure-5.8-5.8.0/fs/overlayfs/util.c @@ -40,6 +40,19 @@ return override_creds(ofs->creator_cred); } +int ovl_creator_permission(struct super_block *sb, struct inode *inode, + int mode) +{ + const struct cred *old_cred; + int err = 0; + + old_cred = ovl_override_creds(sb); + err = inode_permission(inode, mode); + revert_creds(old_cred); + + return err; +} + /* * Check if underlying fs supports file handles and try to determine encoding * type, in order to deduce maximum inode number used by fs. @@ -546,9 +559,9 @@ bool ovl_check_origin_xattr(struct dentry *dentry) { - int res; + ssize_t res; - res = vfs_getxattr(dentry, OVL_XATTR_ORIGIN, NULL, 0); + res = ovl_do_vfs_getxattr(dentry, OVL_XATTR_ORIGIN, NULL, 0); /* Zero size value means "copied up but origin unknown" */ if (res >= 0) @@ -559,13 +572,13 @@ bool ovl_check_dir_xattr(struct dentry *dentry, const char *name) { - int res; + ssize_t res; char val; if (!d_is_dir(dentry)) return false; - res = vfs_getxattr(dentry, name, &val, 1); + res = ovl_do_vfs_getxattr(dentry, name, &val, 1); if (res == 1 && val == 'y') return true; @@ -847,13 +860,13 @@ /* err < 0, 0 if no metacopy xattr, 1 if metacopy xattr found */ int ovl_check_metacopy_xattr(struct dentry *dentry) { - int res; + ssize_t res; /* Only regular files can have metacopy xattr */ if (!S_ISREG(d_inode(dentry)->i_mode)) return 0; - res = vfs_getxattr(dentry, OVL_XATTR_METACOPY, NULL, 0); + res = ovl_do_vfs_getxattr(dentry, OVL_XATTR_METACOPY, NULL, 0); if (res < 0) { if (res == -ENODATA || res == -EOPNOTSUPP) return 0; @@ -862,7 +875,7 @@ return 1; out: - pr_warn_ratelimited("failed to get metacopy (%i)\n", res); + pr_warn_ratelimited("failed to get metacopy (%zi)\n", res); return res; } @@ -888,7 +901,7 @@ ssize_t res; char *buf = NULL; - res = vfs_getxattr(dentry, name, NULL, 0); + res = ovl_do_vfs_getxattr(dentry, name, NULL, 0); if (res < 0) { if (res == -ENODATA || res == -EOPNOTSUPP) return -ENODATA; @@ -900,7 +913,7 @@ if (!buf) return -ENOMEM; - res = vfs_getxattr(dentry, name, buf, res); + res = ovl_do_vfs_getxattr(dentry, name, buf, res); if (res < 0) goto fail; } --- linux-azure-5.8-5.8.0.orig/fs/pipe.c +++ linux-azure-5.8-5.8.0/fs/pipe.c @@ -106,25 +106,6 @@ } } -/* Drop the inode semaphore and wait for a pipe event, atomically */ -void pipe_wait(struct pipe_inode_info *pipe) -{ - DEFINE_WAIT(rdwait); - DEFINE_WAIT(wrwait); - - /* - * Pipes are system-local resources, so sleeping on them - * is considered a noninteractive wait: - */ - prepare_to_wait(&pipe->rd_wait, &rdwait, TASK_INTERRUPTIBLE); - prepare_to_wait(&pipe->wr_wait, &wrwait, TASK_INTERRUPTIBLE); - pipe_unlock(pipe); - schedule(); - finish_wait(&pipe->rd_wait, &rdwait); - finish_wait(&pipe->wr_wait, &wrwait); - pipe_lock(pipe); -} - static void anon_pipe_buf_release(struct pipe_inode_info *pipe, struct pipe_buffer *buf) { @@ -913,19 +894,18 @@ { struct inode *inode = get_pipe_inode(); struct file *f; + int error; if (!inode) return -ENFILE; if (flags & O_NOTIFICATION_PIPE) { -#ifdef CONFIG_WATCH_QUEUE - if (watch_queue_init(inode->i_pipe) < 0) { + error = watch_queue_init(inode->i_pipe); + if (error) { + free_pipe_info(inode->i_pipe); iput(inode); - return -ENOMEM; + return error; } -#else - return -ENOPKG; -#endif } f = alloc_file_pseudo(inode, pipe_mnt, "", @@ -1035,12 +1015,52 @@ return do_pipe2(fildes, 0); } +/* + * This is the stupid "wait for pipe to be readable or writable" + * model. + * + * See pipe_read/write() for the proper kind of exclusive wait, + * but that requires that we wake up any other readers/writers + * if we then do not end up reading everything (ie the whole + * "wake_next_reader/writer" logic in pipe_read/write()). + */ +void pipe_wait_readable(struct pipe_inode_info *pipe) +{ + pipe_unlock(pipe); + wait_event_interruptible(pipe->rd_wait, pipe_readable(pipe)); + pipe_lock(pipe); +} + +void pipe_wait_writable(struct pipe_inode_info *pipe) +{ + pipe_unlock(pipe); + wait_event_interruptible(pipe->wr_wait, pipe_writable(pipe)); + pipe_lock(pipe); +} + +/* + * This depends on both the wait (here) and the wakeup (wake_up_partner) + * holding the pipe lock, so "*cnt" is stable and we know a wakeup cannot + * race with the count check and waitqueue prep. + * + * Normally in order to avoid races, you'd do the prepare_to_wait() first, + * then check the condition you're waiting for, and only then sleep. But + * because of the pipe lock, we can check the condition before being on + * the wait queue. + * + * We use the 'rd_wait' waitqueue for pipe partner waiting. + */ static int wait_for_partner(struct pipe_inode_info *pipe, unsigned int *cnt) { + DEFINE_WAIT(rdwait); int cur = *cnt; while (cur == *cnt) { - pipe_wait(pipe); + prepare_to_wait(&pipe->rd_wait, &rdwait, TASK_INTERRUPTIBLE); + pipe_unlock(pipe); + schedule(); + finish_wait(&pipe->rd_wait, &rdwait); + pipe_lock(pipe); if (signal_pending(current)) break; } @@ -1050,7 +1070,6 @@ static void wake_up_partner(struct pipe_inode_info *pipe) { wake_up_interruptible_all(&pipe->rd_wait); - wake_up_interruptible_all(&pipe->wr_wait); } static int fifo_open(struct inode *inode, struct file *filp) @@ -1187,6 +1206,7 @@ .unlocked_ioctl = pipe_ioctl, .release = pipe_release, .fasync = pipe_fasync, + .splice_write = iter_file_splice_write, }; /* --- linux-azure-5.8-5.8.0.orig/fs/pnode.h +++ linux-azure-5.8-5.8.0/fs/pnode.h @@ -44,7 +44,7 @@ void propagate_mount_unlock(struct mount *); void mnt_release_group_id(struct mount *); int get_dominating_id(struct mount *mnt, const struct path *root); -unsigned int mnt_get_count(struct mount *mnt); +int mnt_get_count(struct mount *mnt); void mnt_set_mountpoint(struct mount *, struct mountpoint *, struct mount *); void mnt_change_mountpoint(struct mount *parent, struct mountpoint *mp, --- linux-azure-5.8-5.8.0.orig/fs/proc/Makefile +++ linux-azure-5.8-5.8.0/fs/proc/Makefile @@ -33,4 +33,4 @@ proc-$(CONFIG_PROC_VMCORE) += vmcore.o proc-$(CONFIG_PRINTK) += kmsg.o proc-$(CONFIG_PROC_PAGE_MONITOR) += page.o -proc-$(CONFIG_BOOT_CONFIG) += bootconfig.o +proc-$(CONFIG_BOOT_CONFIG) += bootconfig.o version_signature.o --- linux-azure-5.8-5.8.0.orig/fs/proc/base.c +++ linux-azure-5.8-5.8.0/fs/proc/base.c @@ -405,11 +405,11 @@ static int lock_trace(struct task_struct *task) { - int err = mutex_lock_killable(&task->signal->exec_update_mutex); + int err = down_read_killable(&task->signal->exec_update_lock); if (err) return err; if (!ptrace_may_access(task, PTRACE_MODE_ATTACH_FSCREDS)) { - mutex_unlock(&task->signal->exec_update_mutex); + up_read(&task->signal->exec_update_lock); return -EPERM; } return 0; @@ -417,7 +417,7 @@ static void unlock_trace(struct task_struct *task) { - mutex_unlock(&task->signal->exec_update_mutex); + up_read(&task->signal->exec_update_lock); } #ifdef CONFIG_STACKTRACE @@ -1046,7 +1046,6 @@ static int __set_oom_adj(struct file *file, int oom_adj, bool legacy) { - static DEFINE_MUTEX(oom_adj_mutex); struct mm_struct *mm = NULL; struct task_struct *task; int err = 0; @@ -1086,7 +1085,7 @@ struct task_struct *p = find_lock_task_mm(task); if (p) { - if (atomic_read(&p->mm->mm_users) > 1) { + if (test_bit(MMF_MULTIPROCESS, &p->mm->flags)) { mm = p->mm; mmgrab(mm); } @@ -2170,7 +2169,7 @@ rc = -ENOENT; vma = find_exact_vma(mm, vm_start, vm_end); if (vma && vma->vm_file) { - *path = vma->vm_file->f_path; + *path = vma_pr_or_file(vma)->f_path; path_get(path); rc = 0; } @@ -2794,6 +2793,8 @@ ATTR(NULL, "fscreate", 0666), ATTR(NULL, "keycreate", 0666), ATTR(NULL, "sockcreate", 0666), + ATTR(NULL, "display", 0666), + ATTR(NULL, "context", 0444), #ifdef CONFIG_SECURITY_SMACK DIR("smack", 0555, proc_smack_attr_dir_inode_ops, proc_smack_attr_dir_ops), @@ -2916,7 +2917,7 @@ unsigned long flags; int result; - result = mutex_lock_killable(&task->signal->exec_update_mutex); + result = down_read_killable(&task->signal->exec_update_lock); if (result) return result; @@ -2952,7 +2953,7 @@ result = 0; out_unlock: - mutex_unlock(&task->signal->exec_update_mutex); + up_read(&task->signal->exec_update_lock); return result; } --- linux-azure-5.8-5.8.0.orig/fs/proc/generic.c +++ linux-azure-5.8-5.8.0/fs/proc/generic.c @@ -349,6 +349,16 @@ .iterate_shared = proc_readdir, }; +static int proc_net_d_revalidate(struct dentry *dentry, unsigned int flags) +{ + return 0; +} + +const struct dentry_operations proc_net_dentry_ops = { + .d_revalidate = proc_net_d_revalidate, + .d_delete = always_delete_dentry, +}; + /* * proc directories can do almost nothing.. */ @@ -471,8 +481,8 @@ } EXPORT_SYMBOL(proc_symlink); -struct proc_dir_entry *proc_mkdir_data(const char *name, umode_t mode, - struct proc_dir_entry *parent, void *data) +struct proc_dir_entry *_proc_mkdir(const char *name, umode_t mode, + struct proc_dir_entry *parent, void *data, bool force_lookup) { struct proc_dir_entry *ent; @@ -484,10 +494,20 @@ ent->data = data; ent->proc_dir_ops = &proc_dir_operations; ent->proc_iops = &proc_dir_inode_operations; + if (force_lookup) { + pde_force_lookup(ent); + } ent = proc_register(parent, ent); } return ent; } +EXPORT_SYMBOL_GPL(_proc_mkdir); + +struct proc_dir_entry *proc_mkdir_data(const char *name, umode_t mode, + struct proc_dir_entry *parent, void *data) +{ + return _proc_mkdir(name, mode, parent, data, false); +} EXPORT_SYMBOL_GPL(proc_mkdir_data); struct proc_dir_entry *proc_mkdir_mode(const char *name, umode_t mode, --- linux-azure-5.8-5.8.0.orig/fs/proc/internal.h +++ linux-azure-5.8-5.8.0/fs/proc/internal.h @@ -310,3 +310,10 @@ unsigned long *, unsigned long *, unsigned long *, unsigned long *); extern void task_mem(struct seq_file *, struct mm_struct *); + +extern const struct dentry_operations proc_net_dentry_ops; +static inline void pde_force_lookup(struct proc_dir_entry *pde) +{ + /* /proc/net/ entries can be changed under us by setns(CLONE_NEWNET) */ + pde->proc_dops = &proc_net_dentry_ops; +} --- linux-azure-5.8-5.8.0.orig/fs/proc/nommu.c +++ linux-azure-5.8-5.8.0/fs/proc/nommu.c @@ -40,7 +40,10 @@ file = region->vm_file; if (file) { - struct inode *inode = file_inode(region->vm_file); + struct inode *inode; + + file = vmr_pr_or_file(region); + inode = file_inode(file); dev = inode->i_sb->s_dev; ino = inode->i_ino; } --- linux-azure-5.8-5.8.0.orig/fs/proc/proc_net.c +++ linux-azure-5.8-5.8.0/fs/proc/proc_net.c @@ -39,22 +39,6 @@ return maybe_get_net(PDE_NET(PDE(inode))); } -static int proc_net_d_revalidate(struct dentry *dentry, unsigned int flags) -{ - return 0; -} - -static const struct dentry_operations proc_net_dentry_ops = { - .d_revalidate = proc_net_d_revalidate, - .d_delete = always_delete_dentry, -}; - -static void pde_force_lookup(struct proc_dir_entry *pde) -{ - /* /proc/net/ entries can be changed under us by setns(CLONE_NEWNET) */ - pde->proc_dops = &proc_net_dentry_ops; -} - static int seq_open_net(struct inode *inode, struct file *file) { unsigned int state_size = PDE(inode)->state_size; --- linux-azure-5.8-5.8.0.orig/fs/proc/proc_sysctl.c +++ linux-azure-5.8-5.8.0/fs/proc/proc_sysctl.c @@ -577,7 +577,7 @@ goto out; } } else { - kbuf = kzalloc(count, GFP_KERNEL); + kbuf = kvzalloc(count, GFP_KERNEL); if (!kbuf) goto out; } @@ -600,7 +600,7 @@ error = count; out_free_buf: - kfree(kbuf); + kvfree(kbuf); out: sysctl_head_finish(head); @@ -1770,6 +1770,12 @@ return 0; } + if (!val) + return -EINVAL; + len = strlen(val); + if (len == 0) + return -EINVAL; + /* * To set sysctl options, we use a temporary mount of proc, look up the * respective sys/ file and write to it. To avoid mounting it when no @@ -1811,7 +1817,6 @@ file, param, val); goto out; } - len = strlen(val); wret = kernel_write(file, val, len, &pos); if (wret < 0) { err = wret; --- linux-azure-5.8-5.8.0.orig/fs/proc/self.c +++ linux-azure-5.8-5.8.0/fs/proc/self.c @@ -16,6 +16,13 @@ pid_t tgid = task_tgid_nr_ns(current, ns); char *name; + /* + * Not currently supported. Once we can inherit all of struct pid, + * we can allow this. + */ + if (current->flags & PF_IO_WORKER) + return ERR_PTR(-EOPNOTSUPP); + if (!tgid) return ERR_PTR(-ENOENT); /* max length of unsigned int in decimal + NULL term */ --- linux-azure-5.8-5.8.0.orig/fs/proc/task_mmu.c +++ linux-azure-5.8-5.8.0/fs/proc/task_mmu.c @@ -280,7 +280,10 @@ const char *name = NULL; if (file) { - struct inode *inode = file_inode(vma->vm_file); + struct inode *inode; + + file = vma_pr_or_file(vma); + inode = file_inode(file); dev = inode->i_sb->s_dev; ino = inode->i_ino; pgoff = ((loff_t)vma->vm_pgoff) << PAGE_SHIFT; @@ -1113,7 +1116,6 @@ struct mm_struct *mm; struct vm_area_struct *vma; enum clear_refs_types type; - struct mmu_gather tlb; int itype; int rv; @@ -1158,7 +1160,6 @@ count = -EINTR; goto out_mm; } - tlb_gather_mmu(&tlb, mm, 0, -1); if (type == CLEAR_REFS_SOFT_DIRTY) { for (vma = mm->mmap; vma; vma = vma->vm_next) { if (!(vma->vm_flags & VM_SOFTDIRTY)) @@ -1194,15 +1195,18 @@ break; } + inc_tlb_flush_pending(mm); mmu_notifier_range_init(&range, MMU_NOTIFY_SOFT_DIRTY, 0, NULL, mm, 0, -1UL); mmu_notifier_invalidate_range_start(&range); } walk_page_range(mm, 0, mm->highest_vm_end, &clear_refs_walk_ops, &cp); - if (type == CLEAR_REFS_SOFT_DIRTY) + if (type == CLEAR_REFS_SOFT_DIRTY) { mmu_notifier_invalidate_range_end(&range); - tlb_finish_mmu(&tlb, 0, -1); + flush_tlb_mm(mm); + dec_tlb_flush_pending(mm); + } mmap_read_unlock(mm); out_mm: mmput(mm); @@ -1541,11 +1545,15 @@ src = *ppos; svpfn = src / PM_ENTRY_BYTES; - start_vaddr = svpfn << PAGE_SHIFT; end_vaddr = mm->task_size; /* watch out for wraparound */ - if (svpfn > mm->task_size >> PAGE_SHIFT) + start_vaddr = end_vaddr; + if (svpfn <= (ULONG_MAX >> PAGE_SHIFT)) + start_vaddr = untagged_addr(svpfn << PAGE_SHIFT); + + /* Ensure the address is inside the task */ + if (start_vaddr > mm->task_size) start_vaddr = end_vaddr; /* @@ -1793,7 +1801,7 @@ struct proc_maps_private *proc_priv = &numa_priv->proc_maps; struct vm_area_struct *vma = v; struct numa_maps *md = &numa_priv->md; - struct file *file = vma->vm_file; + struct file *file = vma_pr_or_file(vma); struct mm_struct *mm = vma->vm_mm; struct mempolicy *pol; char buffer[64]; --- linux-azure-5.8-5.8.0.orig/fs/proc/task_nommu.c +++ linux-azure-5.8-5.8.0/fs/proc/task_nommu.c @@ -155,7 +155,10 @@ file = vma->vm_file; if (file) { - struct inode *inode = file_inode(vma->vm_file); + struct inode *inode; + + file = vma_pr_or_file(vma); + inode = file_inode(file); dev = inode->i_sb->s_dev; ino = inode->i_ino; pgoff = (loff_t)vma->vm_pgoff << PAGE_SHIFT; --- linux-azure-5.8-5.8.0.orig/fs/proc/thread_self.c +++ linux-azure-5.8-5.8.0/fs/proc/thread_self.c @@ -17,6 +17,13 @@ pid_t pid = task_pid_nr_ns(current, ns); char *name; + /* + * Not currently supported. Once we can inherit all of struct pid, + * we can allow this. + */ + if (current->flags & PF_IO_WORKER) + return ERR_PTR(-EOPNOTSUPP); + if (!pid) return ERR_PTR(-ENOENT); name = kmalloc(10 + 6 + 10 + 1, dentry ? GFP_KERNEL : GFP_ATOMIC); --- linux-azure-5.8-5.8.0.orig/fs/proc/version_signature.c +++ linux-azure-5.8-5.8.0/fs/proc/version_signature.c @@ -0,0 +1,32 @@ +#include +#include +#include +#include +#include +#include +#include + +static int version_signature_proc_show(struct seq_file *m, void *v) +{ + seq_printf(m, "%s\n", CONFIG_VERSION_SIGNATURE); + return 0; +} + +static int version_signature_proc_open(struct inode *inode, struct file *file) +{ + return single_open(file, version_signature_proc_show, NULL); +} + +static const struct proc_ops version_signature_proc_fops = { + .proc_open = version_signature_proc_open, + .proc_read = seq_read, + .proc_lseek = seq_lseek, + .proc_release = single_release, +}; + +static int __init proc_version_signature_init(void) +{ + proc_create("version_signature", 0, NULL, &version_signature_proc_fops); + return 0; +} +module_init(proc_version_signature_init); --- linux-azure-5.8-5.8.0.orig/fs/pstore/platform.c +++ linux-azure-5.8-5.8.0/fs/pstore/platform.c @@ -269,6 +269,9 @@ { int ret; + if (!IS_ENABLED(CONFIG_PSTORE_COMPRESS)) + return -EINVAL; + ret = crypto_comp_compress(tfm, in, inlen, out, &outlen); if (ret) { pr_err("crypto_comp_compress failed, ret = %d!\n", ret); @@ -668,7 +671,7 @@ int unzipped_len; char *unzipped, *workspace; - if (!record->compressed) + if (!IS_ENABLED(CONFIG_PSTORE_COMPRESS) || !record->compressed) return; /* Only PSTORE_TYPE_DMESG support compression. */ --- linux-azure-5.8-5.8.0.orig/fs/quota/dquot.c +++ linux-azure-5.8-5.8.0/fs/quota/dquot.c @@ -2454,7 +2454,7 @@ ret = dquot_load_quota_sb(sb, cnt, dqopt->info[cnt].dqi_fmt_id, flags); if (ret < 0) - vfs_cleanup_quota_inode(sb, type); + vfs_cleanup_quota_inode(sb, cnt); } return ret; --- linux-azure-5.8-5.8.0.orig/fs/quota/quota_tree.c +++ linux-azure-5.8-5.8.0/fs/quota/quota_tree.c @@ -62,7 +62,7 @@ memset(buf, 0, info->dqi_usable_bs); return sb->s_op->quota_read(sb, info->dqi_type, buf, - info->dqi_usable_bs, blk << info->dqi_blocksize_bits); + info->dqi_usable_bs, (loff_t)blk << info->dqi_blocksize_bits); } static ssize_t write_blk(struct qtree_mem_dqinfo *info, uint blk, char *buf) @@ -71,7 +71,7 @@ ssize_t ret; ret = sb->s_op->quota_write(sb, info->dqi_type, buf, - info->dqi_usable_bs, blk << info->dqi_blocksize_bits); + info->dqi_usable_bs, (loff_t)blk << info->dqi_blocksize_bits); if (ret != info->dqi_usable_bs) { quota_error(sb, "dquota write failed"); if (ret >= 0) @@ -284,7 +284,7 @@ blk); goto out_buf; } - dquot->dq_off = (blk << info->dqi_blocksize_bits) + + dquot->dq_off = ((loff_t)blk << info->dqi_blocksize_bits) + sizeof(struct qt_disk_dqdbheader) + i * info->dqi_entry_size; kfree(buf); @@ -559,7 +559,7 @@ ret = -EIO; goto out_buf; } else { - ret = (blk << info->dqi_blocksize_bits) + sizeof(struct + ret = ((loff_t)blk << info->dqi_blocksize_bits) + sizeof(struct qt_disk_dqdbheader) + i * info->dqi_entry_size; } out_buf: --- linux-azure-5.8-5.8.0.orig/fs/quota/quota_v2.c +++ linux-azure-5.8-5.8.0/fs/quota/quota_v2.c @@ -157,7 +157,31 @@ qinfo->dqi_entry_size = sizeof(struct v2r1_disk_dqblk); qinfo->dqi_ops = &v2r1_qtree_ops; } + ret = -EUCLEAN; + /* Some sanity checks of the read headers... */ + if ((loff_t)qinfo->dqi_blocks << qinfo->dqi_blocksize_bits > + i_size_read(sb_dqopt(sb)->files[type])) { + quota_error(sb, "Number of blocks too big for quota file size (%llu > %llu).", + (loff_t)qinfo->dqi_blocks << qinfo->dqi_blocksize_bits, + i_size_read(sb_dqopt(sb)->files[type])); + goto out_free; + } + if (qinfo->dqi_free_blk >= qinfo->dqi_blocks) { + quota_error(sb, "Free block number too big (%u >= %u).", + qinfo->dqi_free_blk, qinfo->dqi_blocks); + goto out_free; + } + if (qinfo->dqi_free_entry >= qinfo->dqi_blocks) { + quota_error(sb, "Block with free entry too big (%u >= %u).", + qinfo->dqi_free_entry, qinfo->dqi_blocks); + goto out_free; + } ret = 0; +out_free: + if (ret) { + kfree(info->dqi_priv); + info->dqi_priv = NULL; + } out: up_read(&dqopt->dqio_sem); return ret; @@ -282,6 +306,7 @@ d->dqb_curspace = cpu_to_le64(m->dqb_curspace); d->dqb_btime = cpu_to_le64(m->dqb_btime); d->dqb_id = cpu_to_le32(from_kqid(&init_user_ns, dquot->dq_id)); + d->dqb_pad = 0; if (qtree_entry_unused(info, dp)) d->dqb_itime = cpu_to_le64(1); } --- linux-azure-5.8-5.8.0.orig/fs/ramfs/file-nommu.c +++ linux-azure-5.8-5.8.0/fs/ramfs/file-nommu.c @@ -224,7 +224,7 @@ if (!pages) goto out_free; - nr = find_get_pages(inode->i_mapping, &pgoff, lpages, pages); + nr = find_get_pages_contig(inode->i_mapping, pgoff, lpages, pages); if (nr != lpages) goto out_free_pages; /* leave if some pages were missing */ --- linux-azure-5.8-5.8.0.orig/fs/read_write.c +++ linux-azure-5.8-5.8.0/fs/read_write.c @@ -488,6 +488,7 @@ inc_syscr(current); return ret; } +EXPORT_SYMBOL_GPL(vfs_read); static ssize_t new_sync_write(struct file *filp, const char __user *buf, size_t len, loff_t *ppos) { @@ -507,6 +508,30 @@ return ret; } +vfs_readf_t vfs_readf(struct file *file) +{ + const struct file_operations *fop = file->f_op; + + if (fop->read) + return fop->read; + if (fop->read_iter) + return new_sync_read; + return ERR_PTR(-ENOSYS); /* doesn't have ->read(|_iter)() op */ +} +EXPORT_SYMBOL_GPL(vfs_readf); + +vfs_writef_t vfs_writef(struct file *file) +{ + const struct file_operations *fop = file->f_op; + + if (fop->write) + return fop->write; + if (fop->write_iter) + return new_sync_write; + return ERR_PTR(-ENOSYS); /* doesn't have ->write(|_iter)() op */ +} +EXPORT_SYMBOL_GPL(vfs_writef); + /* caller is responsible for file_start_write/file_end_write */ ssize_t __kernel_write(struct file *file, const void *buf, size_t count, loff_t *pos) { @@ -538,6 +563,14 @@ inc_syscw(current); return ret; } +/* + * This "EXPORT_SYMBOL_GPL()" is more of a "EXPORT_SYMBOL_DONTUSE()", + * but autofs is one of the few internal kernel users that actually + * wants this _and_ can be built as a module. So we need to export + * this symbol for autofs, even though it really isn't appropriate + * for any other kernel modules. + */ +EXPORT_SYMBOL_GPL(__kernel_write); ssize_t kernel_write(struct file *file, const void *buf, size_t count, loff_t *pos) @@ -586,6 +619,7 @@ file_end_write(file); return ret; } +EXPORT_SYMBOL_GPL(vfs_write); /* file_ppos returns &file->f_pos or NULL if file is stream */ static inline loff_t *file_ppos(struct file *file) --- linux-azure-5.8-5.8.0.orig/fs/reiserfs/inode.c +++ linux-azure-5.8-5.8.0/fs/reiserfs/inode.c @@ -1551,11 +1551,7 @@ * set version 1, version 2 could be used too, because stat data * key is the same in both versions */ - key.version = KEY_FORMAT_3_5; - key.on_disk_key.k_dir_id = dirino; - key.on_disk_key.k_objectid = inode->i_ino; - key.on_disk_key.k_offset = 0; - key.on_disk_key.k_type = 0; + _make_cpu_key(&key, KEY_FORMAT_3_5, dirino, inode->i_ino, 0, 0, 3); /* look for the object's stat data */ retval = search_item(inode->i_sb, &key, &path_to_sd); @@ -2163,7 +2159,8 @@ out_inserted_sd: clear_nlink(inode); th->t_trans_id = 0; /* so the caller can't use this handle later */ - unlock_new_inode(inode); /* OK to do even if we hadn't locked it */ + if (inode->i_state & I_NEW) + unlock_new_inode(inode); iput(inode); return err; } --- linux-azure-5.8-5.8.0.orig/fs/reiserfs/stree.c +++ linux-azure-5.8-5.8.0/fs/reiserfs/stree.c @@ -454,6 +454,12 @@ "(second one): %h", ih); return 0; } + if (is_direntry_le_ih(ih) && (ih_item_len(ih) < (ih_entry_count(ih) * IH_SIZE))) { + reiserfs_warning(NULL, "reiserfs-5093", + "item entry count seems wrong %h", + ih); + return 0; + } prev_location = ih_location(ih); } --- linux-azure-5.8-5.8.0.orig/fs/reiserfs/super.c +++ linux-azure-5.8-5.8.0/fs/reiserfs/super.c @@ -1258,6 +1258,10 @@ "turned on."); return 0; } + if (qf_names[qtype] != + REISERFS_SB(s)->s_qf_names[qtype]) + kfree(qf_names[qtype]); + qf_names[qtype] = NULL; if (*arg) { /* Some filename specified? */ if (REISERFS_SB(s)->s_qf_names[qtype] && strcmp(REISERFS_SB(s)->s_qf_names[qtype], @@ -1287,10 +1291,6 @@ else *mount_options |= 1 << REISERFS_GRPQUOTA; } else { - if (qf_names[qtype] != - REISERFS_SB(s)->s_qf_names[qtype]) - kfree(qf_names[qtype]); - qf_names[qtype] = NULL; if (qtype == USRQUOTA) *mount_options &= ~(1 << REISERFS_USRQUOTA); else --- linux-azure-5.8-5.8.0.orig/fs/reiserfs/xattr.c +++ linux-azure-5.8-5.8.0/fs/reiserfs/xattr.c @@ -674,6 +674,13 @@ if (get_inode_sd_version(inode) == STAT_DATA_V1) return -EOPNOTSUPP; + /* + * priv_root needn't be initialized during mount so allow initial + * lookups to succeed. + */ + if (!REISERFS_SB(inode->i_sb)->priv_root) + return 0; + dentry = xattr_lookup(inode, name, XATTR_REPLACE); if (IS_ERR(dentry)) { err = PTR_ERR(dentry); --- linux-azure-5.8-5.8.0.orig/fs/romfs/storage.c +++ linux-azure-5.8-5.8.0/fs/romfs/storage.c @@ -217,10 +217,8 @@ size_t limit; limit = romfs_maxsize(sb); - if (pos >= limit) + if (pos >= limit || buflen > limit - pos) return -EIO; - if (buflen > limit - pos) - buflen = limit - pos; #ifdef CONFIG_ROMFS_ON_MTD if (sb->s_mtd) --- linux-azure-5.8-5.8.0.orig/fs/select.c +++ linux-azure-5.8-5.8.0/fs/select.c @@ -1011,14 +1011,17 @@ fdcount = do_poll(head, &table, end_time); poll_freewait(&table); + if (!user_write_access_begin(ufds, nfds * sizeof(*ufds))) + goto out_fds; + for (walk = head; walk; walk = walk->next) { struct pollfd *fds = walk->entries; int j; - for (j = 0; j < walk->len; j++, ufds++) - if (__put_user(fds[j].revents, &ufds->revents)) - goto out_fds; + for (j = walk->len; j; fds++, ufds++, j--) + unsafe_put_user(fds->revents, &ufds->revents, Efault); } + user_write_access_end(); err = fdcount; out_fds: @@ -1030,6 +1033,11 @@ } return err; + +Efault: + user_write_access_end(); + err = -EFAULT; + goto out_fds; } static long do_restart_poll(struct restart_block *restart_block) --- linux-azure-5.8-5.8.0.orig/fs/seq_file.c +++ linux-azure-5.8-5.8.0/fs/seq_file.c @@ -18,6 +18,7 @@ #include #include #include +#include #include #include @@ -146,7 +147,28 @@ */ ssize_t seq_read(struct file *file, char __user *buf, size_t size, loff_t *ppos) { - struct seq_file *m = file->private_data; + struct iovec iov = { .iov_base = buf, .iov_len = size}; + struct kiocb kiocb; + struct iov_iter iter; + ssize_t ret; + + init_sync_kiocb(&kiocb, file); + iov_iter_init(&iter, READ, &iov, 1, size); + + kiocb.ki_pos = *ppos; + ret = seq_read_iter(&kiocb, &iter); + *ppos = kiocb.ki_pos; + return ret; +} +EXPORT_SYMBOL(seq_read); + +/* + * Ready-made ->f_op->read_iter() + */ +ssize_t seq_read_iter(struct kiocb *iocb, struct iov_iter *iter) +{ + struct seq_file *m = iocb->ki_filp->private_data; + size_t size = iov_iter_count(iter); size_t copied = 0; size_t n; void *p; @@ -158,14 +180,14 @@ * if request is to read from zero offset, reset iterator to first * record as it might have been already advanced by previous requests */ - if (*ppos == 0) { + if (iocb->ki_pos == 0) { m->index = 0; m->count = 0; } - /* Don't assume *ppos is where we left it */ - if (unlikely(*ppos != m->read_pos)) { - while ((err = traverse(m, *ppos)) == -EAGAIN) + /* Don't assume ki_pos is where we left it */ + if (unlikely(iocb->ki_pos != m->read_pos)) { + while ((err = traverse(m, iocb->ki_pos)) == -EAGAIN) ; if (err) { /* With prejudice... */ @@ -174,7 +196,7 @@ m->count = 0; goto Done; } else { - m->read_pos = *ppos; + m->read_pos = iocb->ki_pos; } } @@ -187,13 +209,11 @@ /* if not empty - flush it first */ if (m->count) { n = min(m->count, size); - err = copy_to_user(buf, m->buf + m->from, n); - if (err) + if (copy_to_iter(m->buf + m->from, n, iter) != n) goto Efault; m->count -= n; m->from += n; size -= n; - buf += n; copied += n; if (!size) goto Done; @@ -254,8 +274,7 @@ } m->op->stop(m, p); n = min(m->count, size); - err = copy_to_user(buf, m->buf, n); - if (err) + if (copy_to_iter(m->buf, n, iter) != n) goto Efault; copied += n; m->count -= n; @@ -264,7 +283,7 @@ if (!copied) copied = err; else { - *ppos += copied; + iocb->ki_pos += copied; m->read_pos += copied; } mutex_unlock(&m->lock); @@ -276,7 +295,7 @@ err = -EFAULT; goto Done; } -EXPORT_SYMBOL(seq_read); +EXPORT_SYMBOL(seq_read_iter); /** * seq_lseek - ->llseek() method for sequential files. --- linux-azure-5.8-5.8.0.orig/fs/shiftfs.c +++ linux-azure-5.8-5.8.0/fs/shiftfs.c @@ -0,0 +1,2172 @@ +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include + +struct shiftfs_super_info { + struct vfsmount *mnt; + struct user_namespace *userns; + /* creds of process who created the super block */ + const struct cred *creator_cred; + bool mark; + unsigned int passthrough; + unsigned int passthrough_mark; +}; + +static void shiftfs_fill_inode(struct inode *inode, unsigned long ino, + umode_t mode, dev_t dev, struct dentry *dentry); + +#define SHIFTFS_PASSTHROUGH_NONE 0 +#define SHIFTFS_PASSTHROUGH_STAT 1 +#define SHIFTFS_PASSTHROUGH_IOCTL 2 +#define SHIFTFS_PASSTHROUGH_ALL \ + (SHIFTFS_PASSTHROUGH_STAT | SHIFTFS_PASSTHROUGH_IOCTL) + +static inline bool shiftfs_passthrough_ioctls(struct shiftfs_super_info *info) +{ + if (!(info->passthrough & SHIFTFS_PASSTHROUGH_IOCTL)) + return false; + + return true; +} + +static inline bool shiftfs_passthrough_statfs(struct shiftfs_super_info *info) +{ + if (!(info->passthrough & SHIFTFS_PASSTHROUGH_STAT)) + return false; + + return true; +} + +enum { + OPT_MARK, + OPT_PASSTHROUGH, + OPT_LAST, +}; + +/* global filesystem options */ +static const match_table_t tokens = { + { OPT_MARK, "mark" }, + { OPT_PASSTHROUGH, "passthrough=%u" }, + { OPT_LAST, NULL } +}; + +static const struct cred *shiftfs_override_creds(const struct super_block *sb) +{ + struct shiftfs_super_info *sbinfo = sb->s_fs_info; + + return override_creds(sbinfo->creator_cred); +} + +static inline void shiftfs_revert_object_creds(const struct cred *oldcred, + struct cred *newcred) +{ + revert_creds(oldcred); + put_cred(newcred); +} + +static kuid_t shift_kuid(struct user_namespace *from, struct user_namespace *to, + kuid_t kuid) +{ + uid_t uid = from_kuid(from, kuid); + return make_kuid(to, uid); +} + +static kgid_t shift_kgid(struct user_namespace *from, struct user_namespace *to, + kgid_t kgid) +{ + gid_t gid = from_kgid(from, kgid); + return make_kgid(to, gid); +} + +static int shiftfs_override_object_creds(const struct super_block *sb, + const struct cred **oldcred, + struct cred **newcred, + struct dentry *dentry, umode_t mode, + bool hardlink) +{ + struct shiftfs_super_info *sbinfo = sb->s_fs_info; + kuid_t fsuid = current_fsuid(); + kgid_t fsgid = current_fsgid(); + + *oldcred = shiftfs_override_creds(sb); + + *newcred = prepare_creds(); + if (!*newcred) { + revert_creds(*oldcred); + return -ENOMEM; + } + + (*newcred)->fsuid = shift_kuid(sb->s_user_ns, sbinfo->userns, fsuid); + (*newcred)->fsgid = shift_kgid(sb->s_user_ns, sbinfo->userns, fsgid); + + if (!hardlink) { + int err = security_dentry_create_files_as(dentry, mode, + &dentry->d_name, + *oldcred, *newcred); + if (err) { + shiftfs_revert_object_creds(*oldcred, *newcred); + return err; + } + } + + put_cred(override_creds(*newcred)); + return 0; +} + +static void shiftfs_copyattr(struct inode *from, struct inode *to) +{ + struct user_namespace *from_ns = from->i_sb->s_user_ns; + struct user_namespace *to_ns = to->i_sb->s_user_ns; + + to->i_uid = shift_kuid(from_ns, to_ns, from->i_uid); + to->i_gid = shift_kgid(from_ns, to_ns, from->i_gid); + to->i_mode = from->i_mode; + to->i_atime = from->i_atime; + to->i_mtime = from->i_mtime; + to->i_ctime = from->i_ctime; + i_size_write(to, i_size_read(from)); +} + +static void shiftfs_copyflags(struct inode *from, struct inode *to) +{ + unsigned int mask = S_SYNC | S_IMMUTABLE | S_APPEND | S_NOATIME; + + inode_set_flags(to, from->i_flags & mask, mask); +} + +static void shiftfs_file_accessed(struct file *file) +{ + struct inode *upperi, *loweri; + + if (file->f_flags & O_NOATIME) + return; + + upperi = file_inode(file); + loweri = upperi->i_private; + + if (!loweri) + return; + + upperi->i_mtime = loweri->i_mtime; + upperi->i_ctime = loweri->i_ctime; + + touch_atime(&file->f_path); +} + +static int shiftfs_parse_mount_options(struct shiftfs_super_info *sbinfo, + char *options) +{ + char *p; + substring_t args[MAX_OPT_ARGS]; + + sbinfo->mark = false; + sbinfo->passthrough = 0; + + while ((p = strsep(&options, ",")) != NULL) { + int err, intarg, token; + + if (!*p) + continue; + + token = match_token(p, tokens, args); + switch (token) { + case OPT_MARK: + sbinfo->mark = true; + break; + case OPT_PASSTHROUGH: + err = match_int(&args[0], &intarg); + if (err) + return err; + + if (intarg & ~SHIFTFS_PASSTHROUGH_ALL) + return -EINVAL; + + sbinfo->passthrough = intarg; + break; + default: + return -EINVAL; + } + } + + return 0; +} + +static void shiftfs_d_release(struct dentry *dentry) +{ + struct dentry *lowerd = dentry->d_fsdata; + + if (lowerd) + dput(lowerd); +} + +static struct dentry *shiftfs_d_real(struct dentry *dentry, + const struct inode *inode) +{ + struct dentry *lowerd = dentry->d_fsdata; + + if (inode && d_inode(dentry) == inode) + return dentry; + + lowerd = d_real(lowerd, inode); + if (lowerd && (!inode || inode == d_inode(lowerd))) + return lowerd; + + WARN(1, "shiftfs_d_real(%pd4, %s:%lu): real dentry not found\n", dentry, + inode ? inode->i_sb->s_id : "NULL", inode ? inode->i_ino : 0); + return dentry; +} + +static int shiftfs_d_weak_revalidate(struct dentry *dentry, unsigned int flags) +{ + int err = 1; + struct dentry *lowerd = dentry->d_fsdata; + + if (d_is_negative(lowerd) != d_is_negative(dentry)) + return 0; + + if ((lowerd->d_flags & DCACHE_OP_WEAK_REVALIDATE)) + err = lowerd->d_op->d_weak_revalidate(lowerd, flags); + + if (d_really_is_positive(dentry)) { + struct inode *inode = d_inode(dentry); + struct inode *loweri = d_inode(lowerd); + + shiftfs_copyattr(loweri, inode); + } + + return err; +} + +static int shiftfs_d_revalidate(struct dentry *dentry, unsigned int flags) +{ + int err = 1; + struct dentry *lowerd = dentry->d_fsdata; + + if (d_unhashed(lowerd) || + ((d_is_negative(lowerd) != d_is_negative(dentry)))) + return 0; + + if (flags & LOOKUP_RCU) + return -ECHILD; + + if ((lowerd->d_flags & DCACHE_OP_REVALIDATE)) + err = lowerd->d_op->d_revalidate(lowerd, flags); + + if (d_really_is_positive(dentry)) { + struct inode *inode = d_inode(dentry); + struct inode *loweri = d_inode(lowerd); + + shiftfs_copyattr(loweri, inode); + } + + return err; +} + +static const struct dentry_operations shiftfs_dentry_ops = { + .d_release = shiftfs_d_release, + .d_real = shiftfs_d_real, + .d_revalidate = shiftfs_d_revalidate, + .d_weak_revalidate = shiftfs_d_weak_revalidate, +}; + +static const char *shiftfs_get_link(struct dentry *dentry, struct inode *inode, + struct delayed_call *done) +{ + const char *p; + const struct cred *oldcred; + struct dentry *lowerd; + + /* RCU lookup not supported */ + if (!dentry) + return ERR_PTR(-ECHILD); + + lowerd = dentry->d_fsdata; + oldcred = shiftfs_override_creds(dentry->d_sb); + p = vfs_get_link(lowerd, done); + revert_creds(oldcred); + + return p; +} + +static int shiftfs_setxattr(struct dentry *dentry, struct inode *inode, + const char *name, const void *value, + size_t size, int flags) +{ + struct dentry *lowerd = dentry->d_fsdata; + int err; + const struct cred *oldcred; + + oldcred = shiftfs_override_creds(dentry->d_sb); + err = vfs_setxattr(lowerd, name, value, size, flags); + revert_creds(oldcred); + + shiftfs_copyattr(lowerd->d_inode, inode); + + return err; +} + +static int shiftfs_xattr_get(const struct xattr_handler *handler, + struct dentry *dentry, struct inode *inode, + const char *name, void *value, size_t size) +{ + struct dentry *lowerd = dentry->d_fsdata; + int err; + const struct cred *oldcred; + + oldcred = shiftfs_override_creds(dentry->d_sb); + err = vfs_getxattr(lowerd, name, value, size); + revert_creds(oldcred); + + return err; +} + +static ssize_t shiftfs_listxattr(struct dentry *dentry, char *list, + size_t size) +{ + struct dentry *lowerd = dentry->d_fsdata; + int err; + const struct cred *oldcred; + + oldcred = shiftfs_override_creds(dentry->d_sb); + err = vfs_listxattr(lowerd, list, size); + revert_creds(oldcred); + + return err; +} + +static int shiftfs_removexattr(struct dentry *dentry, const char *name) +{ + struct dentry *lowerd = dentry->d_fsdata; + int err; + const struct cred *oldcred; + + oldcred = shiftfs_override_creds(dentry->d_sb); + err = vfs_removexattr(lowerd, name); + revert_creds(oldcred); + + /* update c/mtime */ + shiftfs_copyattr(lowerd->d_inode, d_inode(dentry)); + + return err; +} + +static int shiftfs_xattr_set(const struct xattr_handler *handler, + struct dentry *dentry, struct inode *inode, + const char *name, const void *value, size_t size, + int flags) +{ + if (!value) + return shiftfs_removexattr(dentry, name); + return shiftfs_setxattr(dentry, inode, name, value, size, flags); +} + +static int shiftfs_inode_test(struct inode *inode, void *data) +{ + return inode->i_private == data; +} + +static int shiftfs_inode_set(struct inode *inode, void *data) +{ + inode->i_private = data; + return 0; +} + +static int shiftfs_create_object(struct inode *diri, struct dentry *dentry, + umode_t mode, const char *symlink, + struct dentry *hardlink, bool excl) +{ + int err; + const struct cred *oldcred; + struct cred *newcred; + void *loweri_iop_ptr = NULL; + umode_t modei = mode; + struct super_block *dir_sb = diri->i_sb; + struct dentry *lowerd_new = dentry->d_fsdata; + struct inode *inode = NULL, *loweri_dir = diri->i_private; + const struct inode_operations *loweri_dir_iop = loweri_dir->i_op; + struct dentry *lowerd_link = NULL; + + if (hardlink) { + loweri_iop_ptr = loweri_dir_iop->link; + } else { + switch (mode & S_IFMT) { + case S_IFDIR: + loweri_iop_ptr = loweri_dir_iop->mkdir; + break; + case S_IFREG: + loweri_iop_ptr = loweri_dir_iop->create; + break; + case S_IFLNK: + loweri_iop_ptr = loweri_dir_iop->symlink; + break; + case S_IFSOCK: + /* fall through */ + case S_IFIFO: + loweri_iop_ptr = loweri_dir_iop->mknod; + break; + } + } + if (!loweri_iop_ptr) { + err = -EINVAL; + goto out_iput; + } + + inode_lock_nested(loweri_dir, I_MUTEX_PARENT); + + if (!hardlink) { + inode = new_inode(dir_sb); + if (!inode) { + err = -ENOMEM; + goto out_iput; + } + + /* + * new_inode() will have added the new inode to the super + * block's list of inodes. Further below we will call + * inode_insert5() Which would perform the same operation again + * thereby corrupting the list. To avoid this raise I_CREATING + * in i_state which will cause inode_insert5() to skip this + * step. I_CREATING will be cleared by d_instantiate_new() + * below. + */ + spin_lock(&inode->i_lock); + inode->i_state |= I_CREATING; + spin_unlock(&inode->i_lock); + + inode_init_owner(inode, diri, mode); + modei = inode->i_mode; + } + + err = shiftfs_override_object_creds(dentry->d_sb, &oldcred, &newcred, + dentry, modei, hardlink != NULL); + if (err) + goto out_iput; + + if (hardlink) { + lowerd_link = hardlink->d_fsdata; + err = vfs_link(lowerd_link, loweri_dir, lowerd_new, NULL); + } else { + switch (modei & S_IFMT) { + case S_IFDIR: + err = vfs_mkdir(loweri_dir, lowerd_new, modei); + break; + case S_IFREG: + err = vfs_create(loweri_dir, lowerd_new, modei, excl); + break; + case S_IFLNK: + err = vfs_symlink(loweri_dir, lowerd_new, symlink); + break; + case S_IFSOCK: + /* fall through */ + case S_IFIFO: + err = vfs_mknod(loweri_dir, lowerd_new, modei, 0); + break; + default: + err = -EINVAL; + break; + } + } + + shiftfs_revert_object_creds(oldcred, newcred); + + if (!err && WARN_ON(!lowerd_new->d_inode)) + err = -EIO; + if (err) + goto out_iput; + + if (hardlink) { + inode = d_inode(hardlink); + ihold(inode); + + /* copy up times from lower inode */ + shiftfs_copyattr(d_inode(lowerd_link), inode); + set_nlink(d_inode(hardlink), d_inode(lowerd_link)->i_nlink); + d_instantiate(dentry, inode); + } else { + struct inode *inode_tmp; + struct inode *loweri_new = d_inode(lowerd_new); + + inode_tmp = inode_insert5(inode, (unsigned long)loweri_new, + shiftfs_inode_test, shiftfs_inode_set, + loweri_new); + if (unlikely(inode_tmp != inode)) { + pr_err_ratelimited("shiftfs: newly created inode found in cache\n"); + iput(inode_tmp); + err = -EINVAL; + goto out_iput; + } + + ihold(loweri_new); + shiftfs_fill_inode(inode, loweri_new->i_ino, loweri_new->i_mode, + 0, lowerd_new); + d_instantiate_new(dentry, inode); + } + + shiftfs_copyattr(loweri_dir, diri); + if (loweri_iop_ptr == loweri_dir_iop->mkdir) + set_nlink(diri, loweri_dir->i_nlink); + + inode = NULL; + +out_iput: + iput(inode); + inode_unlock(loweri_dir); + + return err; +} + +static int shiftfs_create(struct inode *dir, struct dentry *dentry, + umode_t mode, bool excl) +{ + mode |= S_IFREG; + + return shiftfs_create_object(dir, dentry, mode, NULL, NULL, excl); +} + +static int shiftfs_mkdir(struct inode *dir, struct dentry *dentry, + umode_t mode) +{ + mode |= S_IFDIR; + + return shiftfs_create_object(dir, dentry, mode, NULL, NULL, false); +} + +static int shiftfs_link(struct dentry *hardlink, struct inode *dir, + struct dentry *dentry) +{ + return shiftfs_create_object(dir, dentry, 0, NULL, hardlink, false); +} + +static int shiftfs_mknod(struct inode *dir, struct dentry *dentry, umode_t mode, + dev_t rdev) +{ + if (!S_ISFIFO(mode) && !S_ISSOCK(mode)) + return -EPERM; + + return shiftfs_create_object(dir, dentry, mode, NULL, NULL, false); +} + +static int shiftfs_symlink(struct inode *dir, struct dentry *dentry, + const char *symlink) +{ + return shiftfs_create_object(dir, dentry, S_IFLNK, symlink, NULL, false); +} + +static int shiftfs_rm(struct inode *dir, struct dentry *dentry, bool rmdir) +{ + struct dentry *lowerd = dentry->d_fsdata; + struct inode *loweri = dir->i_private; + struct inode *inode = d_inode(dentry); + int err; + const struct cred *oldcred; + + dget(lowerd); + oldcred = shiftfs_override_creds(dentry->d_sb); + inode_lock_nested(loweri, I_MUTEX_PARENT); + if (rmdir) + err = vfs_rmdir(loweri, lowerd); + else + err = vfs_unlink(loweri, lowerd, NULL); + revert_creds(oldcred); + + if (!err) { + d_drop(dentry); + + if (rmdir) + clear_nlink(inode); + else + drop_nlink(inode); + } + inode_unlock(loweri); + + shiftfs_copyattr(loweri, dir); + dput(lowerd); + + return err; +} + +static int shiftfs_unlink(struct inode *dir, struct dentry *dentry) +{ + return shiftfs_rm(dir, dentry, false); +} + +static int shiftfs_rmdir(struct inode *dir, struct dentry *dentry) +{ + return shiftfs_rm(dir, dentry, true); +} + +static int shiftfs_rename(struct inode *olddir, struct dentry *old, + struct inode *newdir, struct dentry *new, + unsigned int flags) +{ + struct dentry *lowerd_dir_old = old->d_parent->d_fsdata, + *lowerd_dir_new = new->d_parent->d_fsdata, + *lowerd_old = old->d_fsdata, *lowerd_new = new->d_fsdata, + *trapd; + struct inode *loweri_dir_old = lowerd_dir_old->d_inode, + *loweri_dir_new = lowerd_dir_new->d_inode; + int err = -EINVAL; + const struct cred *oldcred; + + trapd = lock_rename(lowerd_dir_new, lowerd_dir_old); + + if (trapd == lowerd_old || trapd == lowerd_new) + goto out_unlock; + + oldcred = shiftfs_override_creds(old->d_sb); + err = vfs_rename(loweri_dir_old, lowerd_old, loweri_dir_new, lowerd_new, + NULL, flags); + revert_creds(oldcred); + + shiftfs_copyattr(loweri_dir_old, olddir); + shiftfs_copyattr(loweri_dir_new, newdir); + +out_unlock: + unlock_rename(lowerd_dir_new, lowerd_dir_old); + + return err; +} + +static struct dentry *shiftfs_lookup(struct inode *dir, struct dentry *dentry, + unsigned int flags) +{ + struct dentry *new; + struct inode *newi; + const struct cred *oldcred; + struct dentry *lowerd = dentry->d_parent->d_fsdata; + struct inode *inode = NULL, *loweri = lowerd->d_inode; + + inode_lock(loweri); + oldcred = shiftfs_override_creds(dentry->d_sb); + new = lookup_one_len(dentry->d_name.name, lowerd, dentry->d_name.len); + revert_creds(oldcred); + inode_unlock(loweri); + + if (IS_ERR(new)) + return new; + + dentry->d_fsdata = new; + + newi = new->d_inode; + if (!newi) + goto out; + + inode = iget5_locked(dentry->d_sb, (unsigned long)newi, + shiftfs_inode_test, shiftfs_inode_set, newi); + if (!inode) { + dput(new); + return ERR_PTR(-ENOMEM); + } + if (inode->i_state & I_NEW) { + /* + * inode->i_private set by shiftfs_inode_set(), but we still + * need to take a reference + */ + ihold(newi); + shiftfs_fill_inode(inode, newi->i_ino, newi->i_mode, 0, new); + unlock_new_inode(inode); + } + +out: + return d_splice_alias(inode, dentry); +} + +static int shiftfs_permission(struct inode *inode, int mask) +{ + int err; + const struct cred *oldcred; + struct inode *loweri = inode->i_private; + + if (!loweri) { + WARN_ON(!(mask & MAY_NOT_BLOCK)); + return -ECHILD; + } + + err = generic_permission(inode, mask); + if (err) + return err; + + oldcred = shiftfs_override_creds(inode->i_sb); + err = inode_permission(loweri, mask); + revert_creds(oldcred); + + return err; +} + +static int shiftfs_fiemap(struct inode *inode, + struct fiemap_extent_info *fieinfo, u64 start, + u64 len) +{ + int err; + const struct cred *oldcred; + struct inode *loweri = inode->i_private; + + if (!loweri->i_op->fiemap) + return -EOPNOTSUPP; + + oldcred = shiftfs_override_creds(inode->i_sb); + if (fieinfo->fi_flags & FIEMAP_FLAG_SYNC) + filemap_write_and_wait(loweri->i_mapping); + err = loweri->i_op->fiemap(loweri, fieinfo, start, len); + revert_creds(oldcred); + + return err; +} + +static int shiftfs_tmpfile(struct inode *dir, struct dentry *dentry, + umode_t mode) +{ + int err; + const struct cred *oldcred; + struct dentry *lowerd = dentry->d_fsdata; + struct inode *loweri = dir->i_private; + + if (!loweri->i_op->tmpfile) + return -EOPNOTSUPP; + + oldcred = shiftfs_override_creds(dir->i_sb); + err = loweri->i_op->tmpfile(loweri, lowerd, mode); + revert_creds(oldcred); + + return err; +} + +static int shiftfs_setattr(struct dentry *dentry, struct iattr *attr) +{ + struct dentry *lowerd = dentry->d_fsdata; + struct inode *loweri = lowerd->d_inode; + struct iattr newattr; + const struct cred *oldcred; + struct super_block *sb = dentry->d_sb; + struct shiftfs_super_info *sbinfo = sb->s_fs_info; + int err; + + err = setattr_prepare(dentry, attr); + if (err) + return err; + + newattr = *attr; + newattr.ia_uid = shift_kuid(sb->s_user_ns, sbinfo->userns, attr->ia_uid); + newattr.ia_gid = shift_kgid(sb->s_user_ns, sbinfo->userns, attr->ia_gid); + + /* + * mode change is for clearing setuid/setgid bits. Allow lower fs + * to interpret this in its own way. + */ + if (newattr.ia_valid & (ATTR_KILL_SUID|ATTR_KILL_SGID)) + newattr.ia_valid &= ~ATTR_MODE; + + inode_lock(loweri); + oldcred = shiftfs_override_creds(dentry->d_sb); + err = notify_change(lowerd, &newattr, NULL); + revert_creds(oldcred); + inode_unlock(loweri); + + shiftfs_copyattr(loweri, d_inode(dentry)); + + return err; +} + +static int shiftfs_getattr(const struct path *path, struct kstat *stat, + u32 request_mask, unsigned int query_flags) +{ + struct inode *inode = path->dentry->d_inode; + struct dentry *lowerd = path->dentry->d_fsdata; + struct inode *loweri = lowerd->d_inode; + struct shiftfs_super_info *info = path->dentry->d_sb->s_fs_info; + struct path newpath = { .mnt = info->mnt, .dentry = lowerd }; + struct user_namespace *from_ns = loweri->i_sb->s_user_ns; + struct user_namespace *to_ns = inode->i_sb->s_user_ns; + const struct cred *oldcred; + int err; + + oldcred = shiftfs_override_creds(inode->i_sb); + err = vfs_getattr(&newpath, stat, request_mask, query_flags); + revert_creds(oldcred); + + if (err) + return err; + + /* transform the underlying id */ + stat->uid = shift_kuid(from_ns, to_ns, stat->uid); + stat->gid = shift_kgid(from_ns, to_ns, stat->gid); + return 0; +} + +#ifdef CONFIG_SHIFT_FS_POSIX_ACL + +static int +shift_acl_ids(struct user_namespace *from, struct user_namespace *to, + struct posix_acl *acl) +{ + int i; + + for (i = 0; i < acl->a_count; i++) { + struct posix_acl_entry *e = &acl->a_entries[i]; + switch(e->e_tag) { + case ACL_USER: + e->e_uid = shift_kuid(from, to, e->e_uid); + if (!uid_valid(e->e_uid)) + return -EOVERFLOW; + break; + case ACL_GROUP: + e->e_gid = shift_kgid(from, to, e->e_gid); + if (!gid_valid(e->e_gid)) + return -EOVERFLOW; + break; + } + } + return 0; +} + +static void +shift_acl_xattr_ids(struct user_namespace *from, struct user_namespace *to, + void *value, size_t size) +{ + struct posix_acl_xattr_header *header = value; + struct posix_acl_xattr_entry *entry = (void *)(header + 1), *end; + int count; + kuid_t kuid; + kgid_t kgid; + + if (!value) + return; + if (size < sizeof(struct posix_acl_xattr_header)) + return; + if (header->a_version != cpu_to_le32(POSIX_ACL_XATTR_VERSION)) + return; + + count = posix_acl_xattr_count(size); + if (count < 0) + return; + if (count == 0) + return; + + for (end = entry + count; entry != end; entry++) { + switch(le16_to_cpu(entry->e_tag)) { + case ACL_USER: + kuid = make_kuid(&init_user_ns, le32_to_cpu(entry->e_id)); + kuid = shift_kuid(from, to, kuid); + entry->e_id = cpu_to_le32(from_kuid(&init_user_ns, kuid)); + break; + case ACL_GROUP: + kgid = make_kgid(&init_user_ns, le32_to_cpu(entry->e_id)); + kgid = shift_kgid(from, to, kgid); + entry->e_id = cpu_to_le32(from_kgid(&init_user_ns, kgid)); + break; + default: + break; + } + } +} + +static struct posix_acl *shiftfs_get_acl(struct inode *inode, int type) +{ + struct inode *loweri = inode->i_private; + const struct cred *oldcred; + struct posix_acl *lower_acl, *acl = NULL; + struct user_namespace *from_ns = loweri->i_sb->s_user_ns; + struct user_namespace *to_ns = inode->i_sb->s_user_ns; + int size; + int err; + + if (!IS_POSIXACL(loweri)) + return NULL; + + oldcred = shiftfs_override_creds(inode->i_sb); + lower_acl = get_acl(loweri, type); + revert_creds(oldcred); + + if (lower_acl && !IS_ERR(lower_acl)) { + /* XXX: export posix_acl_clone? */ + size = sizeof(struct posix_acl) + + lower_acl->a_count * sizeof(struct posix_acl_entry); + acl = kmemdup(lower_acl, size, GFP_KERNEL); + posix_acl_release(lower_acl); + + if (!acl) + return ERR_PTR(-ENOMEM); + + refcount_set(&acl->a_refcount, 1); + + err = shift_acl_ids(from_ns, to_ns, acl); + if (err) { + kfree(acl); + return ERR_PTR(err); + } + } + + return acl; +} + +static int +shiftfs_posix_acl_xattr_get(const struct xattr_handler *handler, + struct dentry *dentry, struct inode *inode, + const char *name, void *buffer, size_t size) +{ + struct inode *loweri = inode->i_private; + int ret; + + ret = shiftfs_xattr_get(NULL, dentry, inode, handler->name, + buffer, size); + if (ret < 0) + return ret; + + inode_lock(loweri); + shift_acl_xattr_ids(loweri->i_sb->s_user_ns, inode->i_sb->s_user_ns, + buffer, size); + inode_unlock(loweri); + return ret; +} + +static int +shiftfs_posix_acl_xattr_set(const struct xattr_handler *handler, + struct dentry *dentry, struct inode *inode, + const char *name, const void *value, + size_t size, int flags) +{ + struct inode *loweri = inode->i_private; + int err; + + if (!IS_POSIXACL(loweri) || !loweri->i_op->set_acl) + return -EOPNOTSUPP; + if (handler->flags == ACL_TYPE_DEFAULT && !S_ISDIR(inode->i_mode)) + return value ? -EACCES : 0; + if (!inode_owner_or_capable(inode)) + return -EPERM; + + if (value) { + shift_acl_xattr_ids(inode->i_sb->s_user_ns, + loweri->i_sb->s_user_ns, + (void *)value, size); + err = shiftfs_setxattr(dentry, inode, handler->name, value, + size, flags); + } else { + err = shiftfs_removexattr(dentry, handler->name); + } + + if (!err) + shiftfs_copyattr(loweri, inode); + + return err; +} + +static const struct xattr_handler +shiftfs_posix_acl_access_xattr_handler = { + .name = XATTR_NAME_POSIX_ACL_ACCESS, + .flags = ACL_TYPE_ACCESS, + .get = shiftfs_posix_acl_xattr_get, + .set = shiftfs_posix_acl_xattr_set, +}; + +static const struct xattr_handler +shiftfs_posix_acl_default_xattr_handler = { + .name = XATTR_NAME_POSIX_ACL_DEFAULT, + .flags = ACL_TYPE_DEFAULT, + .get = shiftfs_posix_acl_xattr_get, + .set = shiftfs_posix_acl_xattr_set, +}; + +#else /* !CONFIG_SHIFT_FS_POSIX_ACL */ + +#define shiftfs_get_acl NULL + +#endif /* CONFIG_SHIFT_FS_POSIX_ACL */ + +static const struct inode_operations shiftfs_dir_inode_operations = { + .lookup = shiftfs_lookup, + .mkdir = shiftfs_mkdir, + .symlink = shiftfs_symlink, + .unlink = shiftfs_unlink, + .rmdir = shiftfs_rmdir, + .rename = shiftfs_rename, + .link = shiftfs_link, + .setattr = shiftfs_setattr, + .create = shiftfs_create, + .mknod = shiftfs_mknod, + .permission = shiftfs_permission, + .getattr = shiftfs_getattr, + .listxattr = shiftfs_listxattr, + .get_acl = shiftfs_get_acl, +}; + +static const struct inode_operations shiftfs_file_inode_operations = { + .fiemap = shiftfs_fiemap, + .getattr = shiftfs_getattr, + .get_acl = shiftfs_get_acl, + .listxattr = shiftfs_listxattr, + .permission = shiftfs_permission, + .setattr = shiftfs_setattr, + .tmpfile = shiftfs_tmpfile, +}; + +static const struct inode_operations shiftfs_special_inode_operations = { + .getattr = shiftfs_getattr, + .get_acl = shiftfs_get_acl, + .listxattr = shiftfs_listxattr, + .permission = shiftfs_permission, + .setattr = shiftfs_setattr, +}; + +static const struct inode_operations shiftfs_symlink_inode_operations = { + .getattr = shiftfs_getattr, + .get_link = shiftfs_get_link, + .listxattr = shiftfs_listxattr, + .setattr = shiftfs_setattr, +}; + +static struct file *shiftfs_open_realfile(const struct file *file, + struct inode *realinode) +{ + struct file *realfile; + const struct cred *old_cred; + struct inode *inode = file_inode(file); + struct dentry *lowerd = file->f_path.dentry->d_fsdata; + struct shiftfs_super_info *info = inode->i_sb->s_fs_info; + struct path realpath = { .mnt = info->mnt, .dentry = lowerd }; + + old_cred = shiftfs_override_creds(inode->i_sb); + realfile = open_with_fake_path(&realpath, file->f_flags, realinode, + info->creator_cred); + revert_creds(old_cred); + + return realfile; +} + +#define SHIFTFS_SETFL_MASK (O_APPEND | O_NONBLOCK | O_NDELAY | O_DIRECT) + +static int shiftfs_change_flags(struct file *file, unsigned int flags) +{ + struct inode *inode = file_inode(file); + int err; + + /* if some flag changed that cannot be changed then something's amiss */ + if (WARN_ON((file->f_flags ^ flags) & ~SHIFTFS_SETFL_MASK)) + return -EIO; + + flags &= SHIFTFS_SETFL_MASK; + + if (((flags ^ file->f_flags) & O_APPEND) && IS_APPEND(inode)) + return -EPERM; + + if (flags & O_DIRECT) { + if (!file->f_mapping->a_ops || + !file->f_mapping->a_ops->direct_IO) + return -EINVAL; + } + + if (file->f_op->check_flags) { + err = file->f_op->check_flags(flags); + if (err) + return err; + } + + spin_lock(&file->f_lock); + file->f_flags = (file->f_flags & ~SHIFTFS_SETFL_MASK) | flags; + spin_unlock(&file->f_lock); + + return 0; +} + +static int shiftfs_open(struct inode *inode, struct file *file) +{ + struct file *realfile; + + realfile = shiftfs_open_realfile(file, inode->i_private); + if (IS_ERR(realfile)) + return PTR_ERR(realfile); + + file->private_data = realfile; + /* For O_DIRECT dentry_open() checks f_mapping->a_ops->direct_IO. */ + file->f_mapping = realfile->f_mapping; + + return 0; +} + +static int shiftfs_dir_open(struct inode *inode, struct file *file) +{ + struct file *realfile; + const struct cred *oldcred; + struct dentry *lowerd = file->f_path.dentry->d_fsdata; + struct shiftfs_super_info *info = inode->i_sb->s_fs_info; + struct path realpath = { .mnt = info->mnt, .dentry = lowerd }; + + oldcred = shiftfs_override_creds(file->f_path.dentry->d_sb); + realfile = dentry_open(&realpath, file->f_flags | O_NOATIME, + info->creator_cred); + revert_creds(oldcred); + if (IS_ERR(realfile)) + return PTR_ERR(realfile); + + file->private_data = realfile; + + return 0; +} + +static int shiftfs_release(struct inode *inode, struct file *file) +{ + struct file *realfile = file->private_data; + + if (realfile) + fput(realfile); + + return 0; +} + +static int shiftfs_dir_release(struct inode *inode, struct file *file) +{ + return shiftfs_release(inode, file); +} + +static loff_t shiftfs_dir_llseek(struct file *file, loff_t offset, int whence) +{ + struct file *realfile = file->private_data; + + return vfs_llseek(realfile, offset, whence); +} + +static loff_t shiftfs_file_llseek(struct file *file, loff_t offset, int whence) +{ + struct inode *realinode = file_inode(file)->i_private; + + return generic_file_llseek_size(file, offset, whence, + realinode->i_sb->s_maxbytes, + i_size_read(realinode)); +} + +/* XXX: Need to figure out what to to about atime updates, maybe other + * timestamps too ... ref. ovl_file_accessed() */ + +static rwf_t shiftfs_iocb_to_rwf(struct kiocb *iocb) +{ + int ifl = iocb->ki_flags; + rwf_t flags = 0; + + if (ifl & IOCB_NOWAIT) + flags |= RWF_NOWAIT; + if (ifl & IOCB_HIPRI) + flags |= RWF_HIPRI; + if (ifl & IOCB_DSYNC) + flags |= RWF_DSYNC; + if (ifl & IOCB_SYNC) + flags |= RWF_SYNC; + + return flags; +} + +static int shiftfs_real_fdget(const struct file *file, struct fd *lowerfd) +{ + struct file *realfile; + + if (file->f_op->open != shiftfs_open && + file->f_op->open != shiftfs_dir_open) + return -EINVAL; + + realfile = file->private_data; + lowerfd->flags = 0; + lowerfd->file = realfile; + + /* Did the flags change since open? */ + if (unlikely(file->f_flags & ~lowerfd->file->f_flags)) + return shiftfs_change_flags(lowerfd->file, file->f_flags); + + return 0; +} + +static ssize_t shiftfs_read_iter(struct kiocb *iocb, struct iov_iter *iter) +{ + struct file *file = iocb->ki_filp; + struct fd lowerfd; + const struct cred *oldcred; + ssize_t ret; + + if (!iov_iter_count(iter)) + return 0; + + ret = shiftfs_real_fdget(file, &lowerfd); + if (ret) + return ret; + + oldcred = shiftfs_override_creds(file->f_path.dentry->d_sb); + ret = vfs_iter_read(lowerfd.file, iter, &iocb->ki_pos, + shiftfs_iocb_to_rwf(iocb)); + revert_creds(oldcred); + + shiftfs_file_accessed(file); + + fdput(lowerfd); + return ret; +} + +static ssize_t shiftfs_write_iter(struct kiocb *iocb, struct iov_iter *iter) +{ + struct file *file = iocb->ki_filp; + struct inode *inode = file_inode(file); + struct fd lowerfd; + const struct cred *oldcred; + ssize_t ret; + + if (!iov_iter_count(iter)) + return 0; + + inode_lock(inode); + /* Update mode */ + shiftfs_copyattr(inode->i_private, inode); + ret = file_remove_privs(file); + if (ret) + goto out_unlock; + + ret = shiftfs_real_fdget(file, &lowerfd); + if (ret) + goto out_unlock; + + oldcred = shiftfs_override_creds(file->f_path.dentry->d_sb); + file_start_write(lowerfd.file); + ret = vfs_iter_write(lowerfd.file, iter, &iocb->ki_pos, + shiftfs_iocb_to_rwf(iocb)); + file_end_write(lowerfd.file); + revert_creds(oldcred); + + /* Update size */ + shiftfs_copyattr(inode->i_private, inode); + + fdput(lowerfd); + +out_unlock: + inode_unlock(inode); + return ret; +} + +static int shiftfs_fsync(struct file *file, loff_t start, loff_t end, + int datasync) +{ + struct fd lowerfd; + const struct cred *oldcred; + int ret; + + ret = shiftfs_real_fdget(file, &lowerfd); + if (ret) + return ret; + + oldcred = shiftfs_override_creds(file->f_path.dentry->d_sb); + ret = vfs_fsync_range(lowerfd.file, start, end, datasync); + revert_creds(oldcred); + + fdput(lowerfd); + return ret; +} + +static int shiftfs_mmap(struct file *file, struct vm_area_struct *vma) +{ + struct file *realfile = file->private_data; + const struct cred *oldcred; + int ret; + + if (!realfile->f_op->mmap) + return -ENODEV; + + if (WARN_ON(file != vma->vm_file)) + return -EIO; + + oldcred = shiftfs_override_creds(file->f_path.dentry->d_sb); + vma->vm_file = get_file(realfile); + ret = call_mmap(vma->vm_file, vma); + revert_creds(oldcred); + + shiftfs_file_accessed(file); + + if (ret) { + /* + * Drop refcount from new vm_file value and restore original + * vm_file value + */ + vma->vm_file = file; + fput(realfile); + } else { + /* Drop refcount from previous vm_file value */ + fput(file); + } + + return ret; +} + +static long shiftfs_fallocate(struct file *file, int mode, loff_t offset, + loff_t len) +{ + struct inode *inode = file_inode(file); + struct inode *loweri = inode->i_private; + struct fd lowerfd; + const struct cred *oldcred; + int ret; + + ret = shiftfs_real_fdget(file, &lowerfd); + if (ret) + return ret; + + oldcred = shiftfs_override_creds(file->f_path.dentry->d_sb); + ret = vfs_fallocate(lowerfd.file, mode, offset, len); + revert_creds(oldcred); + + /* Update size */ + shiftfs_copyattr(loweri, inode); + + fdput(lowerfd); + return ret; +} + +static int shiftfs_fadvise(struct file *file, loff_t offset, loff_t len, + int advice) +{ + struct fd lowerfd; + const struct cred *oldcred; + int ret; + + ret = shiftfs_real_fdget(file, &lowerfd); + if (ret) + return ret; + + oldcred = shiftfs_override_creds(file->f_path.dentry->d_sb); + ret = vfs_fadvise(lowerfd.file, offset, len, advice); + revert_creds(oldcred); + + fdput(lowerfd); + return ret; +} + +static int shiftfs_override_ioctl_creds(int cmd, const struct super_block *sb, + const struct cred **oldcred, + struct cred **newcred) +{ + struct shiftfs_super_info *sbinfo = sb->s_fs_info; + kuid_t fsuid = current_fsuid(); + kgid_t fsgid = current_fsgid(); + + *oldcred = shiftfs_override_creds(sb); + + *newcred = prepare_creds(); + if (!*newcred) { + revert_creds(*oldcred); + return -ENOMEM; + } + + (*newcred)->fsuid = shift_kuid(sb->s_user_ns, sbinfo->userns, fsuid); + (*newcred)->fsgid = shift_kgid(sb->s_user_ns, sbinfo->userns, fsgid); + + /* clear all caps to prevent bypassing capable() checks */ + cap_clear((*newcred)->cap_bset); + cap_clear((*newcred)->cap_effective); + cap_clear((*newcred)->cap_inheritable); + cap_clear((*newcred)->cap_permitted); + + if (cmd == BTRFS_IOC_SNAP_DESTROY) { + kuid_t kuid_root = make_kuid(sb->s_user_ns, 0); + /* + * Allow the root user in the container to remove subvolumes + * from other users. + */ + if (uid_valid(kuid_root) && uid_eq(fsuid, kuid_root)) + cap_raise((*newcred)->cap_effective, CAP_DAC_OVERRIDE); + } + + put_cred(override_creds(*newcred)); + return 0; +} + +static inline void shiftfs_revert_ioctl_creds(const struct cred *oldcred, + struct cred *newcred) +{ + return shiftfs_revert_object_creds(oldcred, newcred); +} + +static inline bool is_btrfs_snap_ioctl(int cmd) +{ + if ((cmd == BTRFS_IOC_SNAP_CREATE) || (cmd == BTRFS_IOC_SNAP_CREATE_V2)) + return true; + + return false; +} + +static int shiftfs_btrfs_ioctl_fd_restore(int cmd, int fd, void __user *arg, + struct btrfs_ioctl_vol_args *v1, + struct btrfs_ioctl_vol_args_v2 *v2) +{ + int ret; + + if (!is_btrfs_snap_ioctl(cmd)) + return 0; + + if (cmd == BTRFS_IOC_SNAP_CREATE) + ret = copy_to_user(arg, v1, sizeof(*v1)); + else + ret = copy_to_user(arg, v2, sizeof(*v2)); + + __close_fd(current->files, fd); + kfree(v1); + kfree(v2); + + return ret ? -EFAULT: 0; +} + +static int shiftfs_btrfs_ioctl_fd_replace(int cmd, void __user *arg, + struct btrfs_ioctl_vol_args **b1, + struct btrfs_ioctl_vol_args_v2 **b2, + int *newfd) +{ + int oldfd, ret; + struct fd src; + struct fd lfd = {}; + struct btrfs_ioctl_vol_args *v1 = NULL; + struct btrfs_ioctl_vol_args_v2 *v2 = NULL; + + *b1 = NULL; + *b2 = NULL; + + if (!is_btrfs_snap_ioctl(cmd)) + return 0; + + if (cmd == BTRFS_IOC_SNAP_CREATE) { + v1 = memdup_user(arg, sizeof(*v1)); + if (IS_ERR(v1)) + return PTR_ERR(v1); + oldfd = v1->fd; + } else { + v2 = memdup_user(arg, sizeof(*v2)); + if (IS_ERR(v2)) + return PTR_ERR(v2); + oldfd = v2->fd; + } + + src = fdget(oldfd); + if (!src.file) { + ret = -EINVAL; + goto err_free; + } + + ret = shiftfs_real_fdget(src.file, &lfd); + if (ret) { + fdput(src); + goto err_free; + } + + /* + * shiftfs_real_fdget() does not take a reference to lfd.file, so + * take a reference here to offset the one which will be put by + * __close_fd(), and make sure that reference is put on fdput(lfd). + */ + get_file(lfd.file); + lfd.flags |= FDPUT_FPUT; + fdput(src); + + *newfd = get_unused_fd_flags(lfd.file->f_flags); + if (*newfd < 0) { + fdput(lfd); + ret = *newfd; + goto err_free; + } + + fd_install(*newfd, lfd.file); + + if (cmd == BTRFS_IOC_SNAP_CREATE) { + v1->fd = *newfd; + ret = copy_to_user(arg, v1, sizeof(*v1)); + v1->fd = oldfd; + } else { + v2->fd = *newfd; + ret = copy_to_user(arg, v2, sizeof(*v2)); + v2->fd = oldfd; + } + + if (!ret) { + *b1 = v1; + *b2 = v2; + } else { + shiftfs_btrfs_ioctl_fd_restore(cmd, *newfd, arg, v1, v2); + ret = -EFAULT; + } + + return ret; + +err_free: + kfree(v1); + kfree(v2); + + return ret; +} + +static long shiftfs_real_ioctl(struct file *file, unsigned int cmd, + unsigned long arg) +{ + struct fd lowerfd; + struct cred *newcred; + const struct cred *oldcred; + int newfd = -EBADF; + long err = 0, ret = 0; + void __user *argp = (void __user *)arg; + struct super_block *sb = file->f_path.dentry->d_sb; + struct btrfs_ioctl_vol_args *btrfs_v1 = NULL; + struct btrfs_ioctl_vol_args_v2 *btrfs_v2 = NULL; + + ret = shiftfs_btrfs_ioctl_fd_replace(cmd, argp, &btrfs_v1, &btrfs_v2, + &newfd); + if (ret < 0) + return ret; + + ret = shiftfs_real_fdget(file, &lowerfd); + if (ret) + goto out_restore; + + ret = shiftfs_override_ioctl_creds(cmd, sb, &oldcred, &newcred); + if (ret) + goto out_fdput; + + ret = vfs_ioctl(lowerfd.file, cmd, arg); + + shiftfs_revert_ioctl_creds(oldcred, newcred); + + shiftfs_copyattr(file_inode(lowerfd.file), file_inode(file)); + shiftfs_copyflags(file_inode(lowerfd.file), file_inode(file)); + +out_fdput: + fdput(lowerfd); + +out_restore: + err = shiftfs_btrfs_ioctl_fd_restore(cmd, newfd, argp, + btrfs_v1, btrfs_v2); + if (!ret) + ret = err; + + return ret; +} + +static bool in_ioctl_whitelist(int flag, unsigned long arg) +{ + void __user *argp = (void __user *)arg; + u64 flags = 0; + + switch (flag) { + case BTRFS_IOC_FS_INFO: + return true; + case BTRFS_IOC_SNAP_CREATE: + return true; + case BTRFS_IOC_SNAP_CREATE_V2: + return true; + case BTRFS_IOC_SUBVOL_CREATE: + return true; + case BTRFS_IOC_SUBVOL_CREATE_V2: + return true; + case BTRFS_IOC_SUBVOL_GETFLAGS: + return true; + case BTRFS_IOC_SUBVOL_SETFLAGS: + if (copy_from_user(&flags, argp, sizeof(flags))) + return false; + + if (flags & ~BTRFS_SUBVOL_RDONLY) + return false; + + return true; + case BTRFS_IOC_SNAP_DESTROY: + return true; + } + + return false; +} + +static long shiftfs_ioctl(struct file *file, unsigned int cmd, + unsigned long arg) +{ + switch (cmd) { + case FS_IOC_GETVERSION: + /* fall through */ + case FS_IOC_GETFLAGS: + /* fall through */ + case FS_IOC_SETFLAGS: + break; + default: + if (!in_ioctl_whitelist(cmd, arg) || + !shiftfs_passthrough_ioctls(file->f_path.dentry->d_sb->s_fs_info)) + return -ENOTTY; + } + + return shiftfs_real_ioctl(file, cmd, arg); +} + +static long shiftfs_compat_ioctl(struct file *file, unsigned int cmd, + unsigned long arg) +{ + switch (cmd) { + case FS_IOC32_GETVERSION: + /* fall through */ + case FS_IOC32_GETFLAGS: + /* fall through */ + case FS_IOC32_SETFLAGS: + break; + default: + if (!in_ioctl_whitelist(cmd, arg) || + !shiftfs_passthrough_ioctls(file->f_path.dentry->d_sb->s_fs_info)) + return -ENOIOCTLCMD; + } + + return shiftfs_real_ioctl(file, cmd, arg); +} + +enum shiftfs_copyop { + SHIFTFS_COPY, + SHIFTFS_CLONE, + SHIFTFS_DEDUPE, +}; + +static ssize_t shiftfs_copyfile(struct file *file_in, loff_t pos_in, + struct file *file_out, loff_t pos_out, u64 len, + unsigned int flags, enum shiftfs_copyop op) +{ + ssize_t ret; + struct fd real_in, real_out; + const struct cred *oldcred; + struct inode *inode_out = file_inode(file_out); + struct inode *loweri = inode_out->i_private; + + ret = shiftfs_real_fdget(file_out, &real_out); + if (ret) + return ret; + + ret = shiftfs_real_fdget(file_in, &real_in); + if (ret) { + fdput(real_out); + return ret; + } + + oldcred = shiftfs_override_creds(inode_out->i_sb); + switch (op) { + case SHIFTFS_COPY: + ret = vfs_copy_file_range(real_in.file, pos_in, real_out.file, + pos_out, len, flags); + break; + + case SHIFTFS_CLONE: + ret = vfs_clone_file_range(real_in.file, pos_in, real_out.file, + pos_out, len, flags); + break; + + case SHIFTFS_DEDUPE: + ret = vfs_dedupe_file_range_one(real_in.file, pos_in, + real_out.file, pos_out, len, + flags); + break; + } + revert_creds(oldcred); + + /* Update size */ + shiftfs_copyattr(loweri, inode_out); + + fdput(real_in); + fdput(real_out); + + return ret; +} + +static ssize_t shiftfs_copy_file_range(struct file *file_in, loff_t pos_in, + struct file *file_out, loff_t pos_out, + size_t len, unsigned int flags) +{ + return shiftfs_copyfile(file_in, pos_in, file_out, pos_out, len, flags, + SHIFTFS_COPY); +} + +static loff_t shiftfs_remap_file_range(struct file *file_in, loff_t pos_in, + struct file *file_out, loff_t pos_out, + loff_t len, unsigned int remap_flags) +{ + enum shiftfs_copyop op; + + if (remap_flags & ~(REMAP_FILE_DEDUP | REMAP_FILE_ADVISORY)) + return -EINVAL; + + if (remap_flags & REMAP_FILE_DEDUP) + op = SHIFTFS_DEDUPE; + else + op = SHIFTFS_CLONE; + + return shiftfs_copyfile(file_in, pos_in, file_out, pos_out, len, + remap_flags, op); +} + +static int shiftfs_iterate_shared(struct file *file, struct dir_context *ctx) +{ + const struct cred *oldcred; + int err = -ENOTDIR; + struct file *realfile = file->private_data; + + oldcred = shiftfs_override_creds(file->f_path.dentry->d_sb); + err = iterate_dir(realfile, ctx); + revert_creds(oldcred); + + return err; +} + +const struct file_operations shiftfs_file_operations = { + .open = shiftfs_open, + .release = shiftfs_release, + .llseek = shiftfs_file_llseek, + .read_iter = shiftfs_read_iter, + .write_iter = shiftfs_write_iter, + .fsync = shiftfs_fsync, + .mmap = shiftfs_mmap, + .fallocate = shiftfs_fallocate, + .fadvise = shiftfs_fadvise, + .unlocked_ioctl = shiftfs_ioctl, + .compat_ioctl = shiftfs_compat_ioctl, + .copy_file_range = shiftfs_copy_file_range, + .remap_file_range = shiftfs_remap_file_range, +}; + +const struct file_operations shiftfs_dir_operations = { + .open = shiftfs_dir_open, + .release = shiftfs_dir_release, + .compat_ioctl = shiftfs_compat_ioctl, + .fsync = shiftfs_fsync, + .iterate_shared = shiftfs_iterate_shared, + .llseek = shiftfs_dir_llseek, + .read = generic_read_dir, + .unlocked_ioctl = shiftfs_ioctl, +}; + +static const struct address_space_operations shiftfs_aops = { + /* For O_DIRECT dentry_open() checks f_mapping->a_ops->direct_IO */ + .direct_IO = noop_direct_IO, +}; + +static void shiftfs_fill_inode(struct inode *inode, unsigned long ino, + umode_t mode, dev_t dev, struct dentry *dentry) +{ + struct inode *loweri; + + inode->i_ino = ino; + inode->i_flags |= S_NOCMTIME; + + mode &= S_IFMT; + inode->i_mode = mode; + switch (mode & S_IFMT) { + case S_IFDIR: + inode->i_op = &shiftfs_dir_inode_operations; + inode->i_fop = &shiftfs_dir_operations; + break; + case S_IFLNK: + inode->i_op = &shiftfs_symlink_inode_operations; + break; + case S_IFREG: + inode->i_op = &shiftfs_file_inode_operations; + inode->i_fop = &shiftfs_file_operations; + inode->i_mapping->a_ops = &shiftfs_aops; + break; + default: + inode->i_op = &shiftfs_special_inode_operations; + init_special_inode(inode, mode, dev); + break; + } + + if (!dentry) + return; + + loweri = dentry->d_inode; + if (!loweri->i_op->get_link) + inode->i_opflags |= IOP_NOFOLLOW; + + shiftfs_copyattr(loweri, inode); + shiftfs_copyflags(loweri, inode); + set_nlink(inode, loweri->i_nlink); +} + +static int shiftfs_show_options(struct seq_file *m, struct dentry *dentry) +{ + struct super_block *sb = dentry->d_sb; + struct shiftfs_super_info *sbinfo = sb->s_fs_info; + + if (sbinfo->mark) + seq_show_option(m, "mark", NULL); + + if (sbinfo->passthrough) + seq_printf(m, ",passthrough=%u", sbinfo->passthrough); + + return 0; +} + +static int shiftfs_statfs(struct dentry *dentry, struct kstatfs *buf) +{ + struct super_block *sb = dentry->d_sb; + struct shiftfs_super_info *sbinfo = sb->s_fs_info; + struct dentry *root = sb->s_root; + struct dentry *realroot = root->d_fsdata; + struct path realpath = { .mnt = sbinfo->mnt, .dentry = realroot }; + int err; + + err = vfs_statfs(&realpath, buf); + if (err) + return err; + + if (!shiftfs_passthrough_statfs(sbinfo)) + buf->f_type = sb->s_magic; + + return 0; +} + +static void shiftfs_evict_inode(struct inode *inode) +{ + struct inode *loweri = inode->i_private; + + clear_inode(inode); + + if (loweri) + iput(loweri); +} + +static void shiftfs_put_super(struct super_block *sb) +{ + struct shiftfs_super_info *sbinfo = sb->s_fs_info; + + if (sbinfo) { + mntput(sbinfo->mnt); + put_cred(sbinfo->creator_cred); + kfree(sbinfo); + } +} + +static const struct xattr_handler shiftfs_xattr_handler = { + .prefix = "", + .get = shiftfs_xattr_get, + .set = shiftfs_xattr_set, +}; + +const struct xattr_handler *shiftfs_xattr_handlers[] = { +#ifdef CONFIG_SHIFT_FS_POSIX_ACL + &shiftfs_posix_acl_access_xattr_handler, + &shiftfs_posix_acl_default_xattr_handler, +#endif + &shiftfs_xattr_handler, + NULL +}; + +static inline bool passthrough_is_subset(int old_flags, int new_flags) +{ + if ((new_flags & old_flags) != new_flags) + return false; + + return true; +} + +static int shiftfs_super_check_flags(unsigned long old_flags, + unsigned long new_flags) +{ + if ((old_flags & SB_RDONLY) && !(new_flags & SB_RDONLY)) + return -EPERM; + + if ((old_flags & SB_NOSUID) && !(new_flags & SB_NOSUID)) + return -EPERM; + + if ((old_flags & SB_NODEV) && !(new_flags & SB_NODEV)) + return -EPERM; + + if ((old_flags & SB_NOEXEC) && !(new_flags & SB_NOEXEC)) + return -EPERM; + + if ((old_flags & SB_NOATIME) && !(new_flags & SB_NOATIME)) + return -EPERM; + + if ((old_flags & SB_NODIRATIME) && !(new_flags & SB_NODIRATIME)) + return -EPERM; + + if (!(old_flags & SB_POSIXACL) && (new_flags & SB_POSIXACL)) + return -EPERM; + + return 0; +} + +static int shiftfs_remount(struct super_block *sb, int *flags, char *data) +{ + int err; + struct shiftfs_super_info new = {}; + struct shiftfs_super_info *info = sb->s_fs_info; + + err = shiftfs_parse_mount_options(&new, data); + if (err) + return err; + + err = shiftfs_super_check_flags(sb->s_flags, *flags); + if (err) + return err; + + /* Mark mount option cannot be changed. */ + if (info->mark || (info->mark != new.mark)) + return -EPERM; + + if (info->passthrough != new.passthrough) { + /* Don't allow exceeding passthrough options of mark mount. */ + if (!passthrough_is_subset(info->passthrough_mark, + info->passthrough)) + return -EPERM; + + info->passthrough = new.passthrough; + } + + return 0; +} + +static const struct super_operations shiftfs_super_ops = { + .put_super = shiftfs_put_super, + .show_options = shiftfs_show_options, + .statfs = shiftfs_statfs, + .remount_fs = shiftfs_remount, + .evict_inode = shiftfs_evict_inode, +}; + +struct shiftfs_data { + void *data; + const char *path; +}; + +static void shiftfs_super_force_flags(struct super_block *sb, + unsigned long lower_flags) +{ + sb->s_flags |= lower_flags & (SB_RDONLY | SB_NOSUID | SB_NODEV | + SB_NOEXEC | SB_NOATIME | SB_NODIRATIME); + + if (!(lower_flags & SB_POSIXACL)) + sb->s_flags &= ~SB_POSIXACL; +} + +static int shiftfs_fill_super(struct super_block *sb, void *raw_data, + int silent) +{ + int err; + struct path path = {}; + struct shiftfs_super_info *sbinfo_mp; + char *name = NULL; + struct inode *inode = NULL; + struct dentry *dentry = NULL; + struct shiftfs_data *data = raw_data; + struct shiftfs_super_info *sbinfo = NULL; + + if (!data->path) + return -EINVAL; + + sb->s_fs_info = kzalloc(sizeof(*sbinfo), GFP_KERNEL); + if (!sb->s_fs_info) + return -ENOMEM; + sbinfo = sb->s_fs_info; + + err = shiftfs_parse_mount_options(sbinfo, data->data); + if (err) + return err; + + /* to mount a mark, must be userns admin */ + if (!sbinfo->mark && !ns_capable(current_user_ns(), CAP_SYS_ADMIN)) + return -EPERM; + + name = kstrdup(data->path, GFP_KERNEL); + if (!name) + return -ENOMEM; + + err = kern_path(name, LOOKUP_FOLLOW, &path); + if (err) + goto out_free_name; + + if (!S_ISDIR(path.dentry->d_inode->i_mode)) { + err = -ENOTDIR; + goto out_put_path; + } + + sb->s_flags |= SB_POSIXACL; + + if (sbinfo->mark) { + struct cred *cred_tmp; + struct super_block *lower_sb = path.mnt->mnt_sb; + + /* to mark a mount point, must root wrt lower s_user_ns */ + if (!ns_capable(lower_sb->s_user_ns, CAP_SYS_ADMIN)) { + err = -EPERM; + goto out_put_path; + } + + /* + * this part is visible unshifted, so make sure no + * executables that could be used to give suid + * privileges + */ + sb->s_iflags = SB_I_NOEXEC; + + shiftfs_super_force_flags(sb, lower_sb->s_flags); + + /* + * Handle nesting of shiftfs mounts by referring this mark + * mount back to the original mark mount. This is more + * efficient and alleviates concerns about stack depth. + */ + if (lower_sb->s_magic == SHIFTFS_MAGIC) { + sbinfo_mp = lower_sb->s_fs_info; + + /* Doesn't make sense to mark a mark mount */ + if (sbinfo_mp->mark) { + err = -EINVAL; + goto out_put_path; + } + + if (!passthrough_is_subset(sbinfo_mp->passthrough, + sbinfo->passthrough)) { + err = -EPERM; + goto out_put_path; + } + + sbinfo->mnt = mntget(sbinfo_mp->mnt); + dentry = dget(path.dentry->d_fsdata); + /* + * Copy up the passthrough mount options from the + * parent mark mountpoint. + */ + sbinfo->passthrough_mark = sbinfo_mp->passthrough_mark; + sbinfo->creator_cred = get_cred(sbinfo_mp->creator_cred); + } else { + sbinfo->mnt = mntget(path.mnt); + dentry = dget(path.dentry); + /* + * For a new mark passthrough_mark and passthrough + * are identical. + */ + sbinfo->passthrough_mark = sbinfo->passthrough; + + cred_tmp = prepare_creds(); + if (!cred_tmp) { + err = -ENOMEM; + goto out_put_path; + } + /* Don't override disk quota limits or use reserved space. */ + cap_lower(cred_tmp->cap_effective, CAP_SYS_RESOURCE); + sbinfo->creator_cred = cred_tmp; + } + } else { + /* + * This leg executes if we're admin capable in the namespace, + * so be very careful. + */ + err = -EPERM; + if (path.dentry->d_sb->s_magic != SHIFTFS_MAGIC) + goto out_put_path; + + sbinfo_mp = path.dentry->d_sb->s_fs_info; + if (!sbinfo_mp->mark) + goto out_put_path; + + if (!passthrough_is_subset(sbinfo_mp->passthrough, + sbinfo->passthrough)) + goto out_put_path; + + sbinfo->mnt = mntget(sbinfo_mp->mnt); + sbinfo->creator_cred = get_cred(sbinfo_mp->creator_cred); + dentry = dget(path.dentry->d_fsdata); + /* + * Copy up passthrough settings from mark mountpoint so we can + * verify when the overlay wants to remount with different + * passthrough settings. + */ + sbinfo->passthrough_mark = sbinfo_mp->passthrough; + shiftfs_super_force_flags(sb, path.mnt->mnt_sb->s_flags); + } + + sb->s_stack_depth = dentry->d_sb->s_stack_depth + 1; + if (sb->s_stack_depth > FILESYSTEM_MAX_STACK_DEPTH) { + printk(KERN_ERR "shiftfs: maximum stacking depth exceeded\n"); + err = -EINVAL; + goto out_put_path; + } + + inode = new_inode(sb); + if (!inode) { + err = -ENOMEM; + goto out_put_path; + } + shiftfs_fill_inode(inode, dentry->d_inode->i_ino, S_IFDIR, 0, dentry); + + ihold(dentry->d_inode); + inode->i_private = dentry->d_inode; + + sb->s_magic = SHIFTFS_MAGIC; + sb->s_maxbytes = MAX_LFS_FILESIZE; + sb->s_op = &shiftfs_super_ops; + sb->s_xattr = shiftfs_xattr_handlers; + sb->s_d_op = &shiftfs_dentry_ops; + sb->s_root = d_make_root(inode); + if (!sb->s_root) { + err = -ENOMEM; + goto out_put_path; + } + + sb->s_root->d_fsdata = dentry; + sbinfo->userns = get_user_ns(dentry->d_sb->s_user_ns); + shiftfs_copyattr(dentry->d_inode, sb->s_root->d_inode); + + dentry = NULL; + err = 0; + +out_put_path: + path_put(&path); + +out_free_name: + kfree(name); + + dput(dentry); + + return err; +} + +static struct dentry *shiftfs_mount(struct file_system_type *fs_type, + int flags, const char *dev_name, void *data) +{ + struct shiftfs_data d = { data, dev_name }; + + return mount_nodev(fs_type, flags, &d, shiftfs_fill_super); +} + +static struct file_system_type shiftfs_type = { + .owner = THIS_MODULE, + .name = "shiftfs", + .mount = shiftfs_mount, + .kill_sb = kill_anon_super, + .fs_flags = FS_USERNS_MOUNT, +}; + +static int __init shiftfs_init(void) +{ + return register_filesystem(&shiftfs_type); +} + +static void __exit shiftfs_exit(void) +{ + unregister_filesystem(&shiftfs_type); +} + +MODULE_ALIAS_FS("shiftfs"); +MODULE_AUTHOR("James Bottomley"); +MODULE_AUTHOR("Seth Forshee "); +MODULE_AUTHOR("Christian Brauner "); +MODULE_DESCRIPTION("id shifting filesystem"); +MODULE_LICENSE("GPL v2"); +module_init(shiftfs_init) +module_exit(shiftfs_exit) --- linux-azure-5.8-5.8.0.orig/fs/signalfd.c +++ linux-azure-5.8-5.8.0/fs/signalfd.c @@ -314,9 +314,10 @@ { sigset_t mask; - if (sizemask != sizeof(sigset_t) || - copy_from_user(&mask, user_mask, sizeof(mask))) + if (sizemask != sizeof(sigset_t)) return -EINVAL; + if (copy_from_user(&mask, user_mask, sizeof(mask))) + return -EFAULT; return do_signalfd4(ufd, &mask, flags); } @@ -325,9 +326,10 @@ { sigset_t mask; - if (sizemask != sizeof(sigset_t) || - copy_from_user(&mask, user_mask, sizeof(mask))) + if (sizemask != sizeof(sigset_t)) return -EINVAL; + if (copy_from_user(&mask, user_mask, sizeof(mask))) + return -EFAULT; return do_signalfd4(ufd, &mask, 0); } --- linux-azure-5.8-5.8.0.orig/fs/splice.c +++ linux-azure-5.8-5.8.0/fs/splice.c @@ -526,6 +526,22 @@ return 1; } +/* We know we have a pipe buffer, but maybe it's empty? */ +static inline bool eat_empty_buffer(struct pipe_inode_info *pipe) +{ + unsigned int tail = pipe->tail; + unsigned int mask = pipe->ring_size - 1; + struct pipe_buffer *buf = &pipe->bufs[tail & mask]; + + if (unlikely(!buf->len)) { + pipe_buf_release(pipe, buf); + pipe->tail = tail+1; + return true; + } + + return false; +} + /** * splice_from_pipe_next - wait for some data to splice from * @pipe: pipe to splice from @@ -545,6 +561,7 @@ if (signal_pending(current)) return -ERESTARTSYS; +repeat: while (pipe_empty(pipe->head, pipe->tail)) { if (!pipe->writers) return 0; @@ -563,9 +580,12 @@ sd->need_wakeup = false; } - pipe_wait(pipe); + pipe_wait_readable(pipe); } + if (eat_empty_buffer(pipe)) + goto repeat; + return 1; } @@ -839,8 +859,8 @@ /* * Attempt to initiate a splice from pipe to file. */ -static long do_splice_from(struct pipe_inode_info *pipe, struct file *out, - loff_t *ppos, size_t len, unsigned int flags) +long do_splice_from(struct pipe_inode_info *pipe, struct file *out, + loff_t *ppos, size_t len, unsigned int flags) { if (out->f_op->splice_write) return out->f_op->splice_write(pipe, out, ppos, len, flags); @@ -850,9 +870,9 @@ /* * Attempt to initiate a splice from a file to a pipe. */ -static long do_splice_to(struct file *in, loff_t *ppos, - struct pipe_inode_info *pipe, size_t len, - unsigned int flags) +long do_splice_to(struct file *in, loff_t *ppos, + struct pipe_inode_info *pipe, size_t len, + unsigned int flags) { int ret; @@ -870,6 +890,7 @@ return in->f_op->splice_read(in, ppos, pipe, len, flags); return default_file_splice_read(in, ppos, pipe, len, flags); } +EXPORT_SYMBOL_GPL(do_splice_from); /** * splice_direct_to_actor - splices data directly between two non-pipes @@ -1016,6 +1037,7 @@ return do_splice_from(pipe, file, sd->opos, sd->total_len, sd->flags); } +EXPORT_SYMBOL_GPL(do_splice_to); /** * do_splice_direct - splices data directly between two files @@ -1077,7 +1099,7 @@ return -EAGAIN; if (signal_pending(current)) return -ERESTARTSYS; - pipe_wait(pipe); + pipe_wait_writable(pipe); } } @@ -1454,7 +1476,7 @@ ret = -EAGAIN; break; } - pipe_wait(pipe); + pipe_wait_readable(pipe); } pipe_unlock(pipe); @@ -1493,7 +1515,7 @@ ret = -ERESTARTSYS; break; } - pipe_wait(pipe); + pipe_wait_writable(pipe); } pipe_unlock(pipe); --- linux-azure-5.8-5.8.0.orig/fs/squashfs/block.c +++ linux-azure-5.8-5.8.0/fs/squashfs/block.c @@ -87,7 +87,11 @@ int error, i; struct bio *bio; - bio = bio_alloc(GFP_NOIO, page_count); + if (page_count <= BIO_MAX_PAGES) + bio = bio_alloc(GFP_NOIO, page_count); + else + bio = bio_kmalloc(GFP_NOIO, page_count); + if (!bio) return -ENOMEM; @@ -192,9 +196,15 @@ length = SQUASHFS_COMPRESSED_SIZE(length); index += 2; - TRACE("Block @ 0x%llx, %scompressed size %d\n", index, + TRACE("Block @ 0x%llx, %scompressed size %d\n", index - 2, compressed ? "" : "un", length); } + if (length < 0 || length > output->length || + (index + length) > msblk->bytes_used) { + res = -EIO; + goto out; + } + if (next_index) *next_index = index + length; --- linux-azure-5.8-5.8.0.orig/fs/squashfs/export.c +++ linux-azure-5.8-5.8.0/fs/squashfs/export.c @@ -41,12 +41,17 @@ struct squashfs_sb_info *msblk = sb->s_fs_info; int blk = SQUASHFS_LOOKUP_BLOCK(ino_num - 1); int offset = SQUASHFS_LOOKUP_BLOCK_OFFSET(ino_num - 1); - u64 start = le64_to_cpu(msblk->inode_lookup_table[blk]); + u64 start; __le64 ino; int err; TRACE("Entered squashfs_inode_lookup, inode_number = %d\n", ino_num); + if (ino_num == 0 || (ino_num - 1) >= msblk->inodes) + return -EINVAL; + + start = le64_to_cpu(msblk->inode_lookup_table[blk]); + err = squashfs_read_metadata(sb, &ino, &start, &offset, sizeof(ino)); if (err < 0) return err; @@ -111,7 +116,10 @@ u64 lookup_table_start, u64 next_table, unsigned int inodes) { unsigned int length = SQUASHFS_LOOKUP_BLOCK_BYTES(inodes); + unsigned int indexes = SQUASHFS_LOOKUP_BLOCKS(inodes); + int n; __le64 *table; + u64 start, end; TRACE("In read_inode_lookup_table, length %d\n", length); @@ -121,20 +129,37 @@ if (inodes == 0) return ERR_PTR(-EINVAL); - /* length bytes should not extend into the next table - this check - * also traps instances where lookup_table_start is incorrectly larger - * than the next table start + /* + * The computed size of the lookup table (length bytes) should exactly + * match the table start and end points */ - if (lookup_table_start + length > next_table) + if (length != (next_table - lookup_table_start)) return ERR_PTR(-EINVAL); table = squashfs_read_table(sb, lookup_table_start, length); + if (IS_ERR(table)) + return table; /* - * table[0] points to the first inode lookup table metadata block, - * this should be less than lookup_table_start + * table0], table[1], ... table[indexes - 1] store the locations + * of the compressed inode lookup blocks. Each entry should be + * less than the next (i.e. table[0] < table[1]), and the difference + * between them should be SQUASHFS_METADATA_SIZE or less. + * table[indexes - 1] should be less than lookup_table_start, and + * again the difference should be SQUASHFS_METADATA_SIZE or less */ - if (!IS_ERR(table) && le64_to_cpu(table[0]) >= lookup_table_start) { + for (n = 0; n < (indexes - 1); n++) { + start = le64_to_cpu(table[n]); + end = le64_to_cpu(table[n + 1]); + + if (start >= end || (end - start) > SQUASHFS_METADATA_SIZE) { + kfree(table); + return ERR_PTR(-EINVAL); + } + } + + start = le64_to_cpu(table[indexes - 1]); + if (start >= lookup_table_start || (lookup_table_start - start) > SQUASHFS_METADATA_SIZE) { kfree(table); return ERR_PTR(-EINVAL); } --- linux-azure-5.8-5.8.0.orig/fs/squashfs/id.c +++ linux-azure-5.8-5.8.0/fs/squashfs/id.c @@ -35,10 +35,15 @@ struct squashfs_sb_info *msblk = sb->s_fs_info; int block = SQUASHFS_ID_BLOCK(index); int offset = SQUASHFS_ID_BLOCK_OFFSET(index); - u64 start_block = le64_to_cpu(msblk->id_table[block]); + u64 start_block; __le32 disk_id; int err; + if (index >= msblk->ids) + return -EINVAL; + + start_block = le64_to_cpu(msblk->id_table[block]); + err = squashfs_read_metadata(sb, &disk_id, &start_block, &offset, sizeof(disk_id)); if (err < 0) @@ -56,7 +61,10 @@ u64 id_table_start, u64 next_table, unsigned short no_ids) { unsigned int length = SQUASHFS_ID_BLOCK_BYTES(no_ids); + unsigned int indexes = SQUASHFS_ID_BLOCKS(no_ids); + int n; __le64 *table; + u64 start, end; TRACE("In read_id_index_table, length %d\n", length); @@ -67,20 +75,36 @@ return ERR_PTR(-EINVAL); /* - * length bytes should not extend into the next table - this check - * also traps instances where id_table_start is incorrectly larger - * than the next table start + * The computed size of the index table (length bytes) should exactly + * match the table start and end points */ - if (id_table_start + length > next_table) + if (length != (next_table - id_table_start)) return ERR_PTR(-EINVAL); table = squashfs_read_table(sb, id_table_start, length); + if (IS_ERR(table)) + return table; /* - * table[0] points to the first id lookup table metadata block, this - * should be less than id_table_start + * table[0], table[1], ... table[indexes - 1] store the locations + * of the compressed id blocks. Each entry should be less than + * the next (i.e. table[0] < table[1]), and the difference between them + * should be SQUASHFS_METADATA_SIZE or less. table[indexes - 1] + * should be less than id_table_start, and again the difference + * should be SQUASHFS_METADATA_SIZE or less */ - if (!IS_ERR(table) && le64_to_cpu(table[0]) >= id_table_start) { + for (n = 0; n < (indexes - 1); n++) { + start = le64_to_cpu(table[n]); + end = le64_to_cpu(table[n + 1]); + + if (start >= end || (end - start) > SQUASHFS_METADATA_SIZE) { + kfree(table); + return ERR_PTR(-EINVAL); + } + } + + start = le64_to_cpu(table[indexes - 1]); + if (start >= id_table_start || (id_table_start - start) > SQUASHFS_METADATA_SIZE) { kfree(table); return ERR_PTR(-EINVAL); } --- linux-azure-5.8-5.8.0.orig/fs/squashfs/squashfs_fs_sb.h +++ linux-azure-5.8-5.8.0/fs/squashfs/squashfs_fs_sb.h @@ -64,5 +64,6 @@ unsigned int inodes; unsigned int fragments; int xattr_ids; + unsigned int ids; }; #endif --- linux-azure-5.8-5.8.0.orig/fs/squashfs/super.c +++ linux-azure-5.8-5.8.0/fs/squashfs/super.c @@ -166,6 +166,7 @@ msblk->directory_table = le64_to_cpu(sblk->directory_table_start); msblk->inodes = le32_to_cpu(sblk->inodes); msblk->fragments = le32_to_cpu(sblk->fragments); + msblk->ids = le16_to_cpu(sblk->no_ids); flags = le16_to_cpu(sblk->flags); TRACE("Found valid superblock on %pg\n", sb->s_bdev); @@ -177,7 +178,7 @@ TRACE("Block size %d\n", msblk->block_size); TRACE("Number of inodes %d\n", msblk->inodes); TRACE("Number of fragments %d\n", msblk->fragments); - TRACE("Number of ids %d\n", le16_to_cpu(sblk->no_ids)); + TRACE("Number of ids %d\n", msblk->ids); TRACE("sblk->inode_table_start %llx\n", msblk->inode_table); TRACE("sblk->directory_table_start %llx\n", msblk->directory_table); TRACE("sblk->fragment_table_start %llx\n", @@ -236,8 +237,7 @@ allocate_id_index_table: /* Allocate and read id index table */ msblk->id_table = squashfs_read_id_index_table(sb, - le64_to_cpu(sblk->id_table_start), next_table, - le16_to_cpu(sblk->no_ids)); + le64_to_cpu(sblk->id_table_start), next_table, msblk->ids); if (IS_ERR(msblk->id_table)) { errorf(fc, "unable to read id index table"); err = PTR_ERR(msblk->id_table); --- linux-azure-5.8-5.8.0.orig/fs/squashfs/xattr.h +++ linux-azure-5.8-5.8.0/fs/squashfs/xattr.h @@ -17,8 +17,16 @@ static inline __le64 *squashfs_read_xattr_id_table(struct super_block *sb, u64 start, u64 *xattr_table_start, int *xattr_ids) { + struct squashfs_xattr_id_table *id_table; + + id_table = squashfs_read_table(sb, start, sizeof(*id_table)); + if (IS_ERR(id_table)) + return (__le64 *) id_table; + + *xattr_table_start = le64_to_cpu(id_table->xattr_table_start); + kfree(id_table); + ERROR("Xattrs in filesystem, these will be ignored\n"); - *xattr_table_start = start; return ERR_PTR(-ENOTSUPP); } --- linux-azure-5.8-5.8.0.orig/fs/squashfs/xattr_id.c +++ linux-azure-5.8-5.8.0/fs/squashfs/xattr_id.c @@ -31,10 +31,15 @@ struct squashfs_sb_info *msblk = sb->s_fs_info; int block = SQUASHFS_XATTR_BLOCK(index); int offset = SQUASHFS_XATTR_BLOCK_OFFSET(index); - u64 start_block = le64_to_cpu(msblk->xattr_id_table[block]); + u64 start_block; struct squashfs_xattr_id id; int err; + if (index >= msblk->xattr_ids) + return -EINVAL; + + start_block = le64_to_cpu(msblk->xattr_id_table[block]); + err = squashfs_read_metadata(sb, &id, &start_block, &offset, sizeof(id)); if (err < 0) @@ -50,13 +55,17 @@ /* * Read uncompressed xattr id lookup table indexes from disk into memory */ -__le64 *squashfs_read_xattr_id_table(struct super_block *sb, u64 start, +__le64 *squashfs_read_xattr_id_table(struct super_block *sb, u64 table_start, u64 *xattr_table_start, int *xattr_ids) { - unsigned int len; + struct squashfs_sb_info *msblk = sb->s_fs_info; + unsigned int len, indexes; struct squashfs_xattr_id_table *id_table; + __le64 *table; + u64 start, end; + int n; - id_table = squashfs_read_table(sb, start, sizeof(*id_table)); + id_table = squashfs_read_table(sb, table_start, sizeof(*id_table)); if (IS_ERR(id_table)) return (__le64 *) id_table; @@ -70,13 +79,52 @@ if (*xattr_ids == 0) return ERR_PTR(-EINVAL); - /* xattr_table should be less than start */ - if (*xattr_table_start >= start) + len = SQUASHFS_XATTR_BLOCK_BYTES(*xattr_ids); + indexes = SQUASHFS_XATTR_BLOCKS(*xattr_ids); + + /* + * The computed size of the index table (len bytes) should exactly + * match the table start and end points + */ + start = table_start + sizeof(*id_table); + end = msblk->bytes_used; + + if (len != (end - start)) return ERR_PTR(-EINVAL); - len = SQUASHFS_XATTR_BLOCK_BYTES(*xattr_ids); + table = squashfs_read_table(sb, start, len); + if (IS_ERR(table)) + return table; + + /* table[0], table[1], ... table[indexes - 1] store the locations + * of the compressed xattr id blocks. Each entry should be less than + * the next (i.e. table[0] < table[1]), and the difference between them + * should be SQUASHFS_METADATA_SIZE or less. table[indexes - 1] + * should be less than table_start, and again the difference + * shouls be SQUASHFS_METADATA_SIZE or less. + * + * Finally xattr_table_start should be less than table[0]. + */ + for (n = 0; n < (indexes - 1); n++) { + start = le64_to_cpu(table[n]); + end = le64_to_cpu(table[n + 1]); + + if (start >= end || (end - start) > SQUASHFS_METADATA_SIZE) { + kfree(table); + return ERR_PTR(-EINVAL); + } + } + + start = le64_to_cpu(table[indexes - 1]); + if (start >= table_start || (table_start - start) > SQUASHFS_METADATA_SIZE) { + kfree(table); + return ERR_PTR(-EINVAL); + } - TRACE("In read_xattr_index_table, length %d\n", len); + if (*xattr_table_start >= le64_to_cpu(table[0])) { + kfree(table); + return ERR_PTR(-EINVAL); + } - return squashfs_read_table(sb, start + sizeof(*id_table), len); + return table; } --- linux-azure-5.8-5.8.0.orig/fs/super.c +++ linux-azure-5.8-5.8.0/fs/super.c @@ -1645,36 +1645,11 @@ */ int __sb_start_write(struct super_block *sb, int level, bool wait) { - bool force_trylock = false; - int ret = 1; + if (!wait) + return percpu_down_read_trylock(sb->s_writers.rw_sem + level-1); -#ifdef CONFIG_LOCKDEP - /* - * We want lockdep to tell us about possible deadlocks with freezing - * but it's it bit tricky to properly instrument it. Getting a freeze - * protection works as getting a read lock but there are subtle - * problems. XFS for example gets freeze protection on internal level - * twice in some cases, which is OK only because we already hold a - * freeze protection also on higher level. Due to these cases we have - * to use wait == F (trylock mode) which must not fail. - */ - if (wait) { - int i; - - for (i = 0; i < level - 1; i++) - if (percpu_rwsem_is_held(sb->s_writers.rw_sem + i)) { - force_trylock = true; - break; - } - } -#endif - if (wait && !force_trylock) - percpu_down_read(sb->s_writers.rw_sem + level-1); - else - ret = percpu_down_read_trylock(sb->s_writers.rw_sem + level-1); - - WARN_ON(force_trylock && !ret); - return ret; + percpu_down_read(sb->s_writers.rw_sem + level-1); + return 1; } EXPORT_SYMBOL(__sb_start_write); --- linux-azure-5.8-5.8.0.orig/fs/sync.c +++ linux-azure-5.8-5.8.0/fs/sync.c @@ -28,7 +28,7 @@ * wait == 1 case since in that case write_inode() functions do * sync_dirty_buffer() and thus effectively write one block at a time. */ -static int __sync_filesystem(struct super_block *sb, int wait) +int __sync_filesystem(struct super_block *sb, int wait) { if (wait) sync_inodes_sb(sb); @@ -39,6 +39,7 @@ sb->s_op->sync_fs(sb, wait); return __sync_blockdev(sb->s_bdev, wait); } +EXPORT_SYMBOL_GPL(__sync_filesystem); /* * Write out and wait upon all dirty data associated with this --- linux-azure-5.8-5.8.0.orig/fs/sysfs/file.c +++ linux-azure-5.8-5.8.0/fs/sysfs/file.c @@ -15,6 +15,7 @@ #include #include #include +#include #include "sysfs.h" @@ -707,3 +708,57 @@ return 0; } EXPORT_SYMBOL_GPL(sysfs_change_owner); + +/** + * sysfs_emit - scnprintf equivalent, aware of PAGE_SIZE buffer. + * @buf: start of PAGE_SIZE buffer. + * @fmt: format + * @...: optional arguments to @format + * + * + * Returns number of characters written to @buf. + */ +int sysfs_emit(char *buf, const char *fmt, ...) +{ + va_list args; + int len; + + if (WARN(!buf || offset_in_page(buf), + "invalid sysfs_emit: buf:%p\n", buf)) + return 0; + + va_start(args, fmt); + len = vscnprintf(buf, PAGE_SIZE, fmt, args); + va_end(args); + + return len; +} +EXPORT_SYMBOL_GPL(sysfs_emit); + +/** + * sysfs_emit_at - scnprintf equivalent, aware of PAGE_SIZE buffer. + * @buf: start of PAGE_SIZE buffer. + * @at: offset in @buf to start write in bytes + * @at must be >= 0 && < PAGE_SIZE + * @fmt: format + * @...: optional arguments to @fmt + * + * + * Returns number of characters written starting at &@buf[@at]. + */ +int sysfs_emit_at(char *buf, int at, const char *fmt, ...) +{ + va_list args; + int len; + + if (WARN(!buf || offset_in_page(buf) || at < 0 || at >= PAGE_SIZE, + "invalid sysfs_emit_at: buf:%p at:%d\n", buf, at)) + return 0; + + va_start(args, fmt); + len = vscnprintf(buf + at, PAGE_SIZE - at, fmt, args); + va_end(args); + + return len; +} +EXPORT_SYMBOL_GPL(sysfs_emit_at); --- linux-azure-5.8-5.8.0.orig/fs/ubifs/auth.c +++ linux-azure-5.8-5.8.0/fs/ubifs/auth.c @@ -328,7 +328,7 @@ ubifs_err(c, "hmac %s is bigger than maximum allowed hmac size (%d > %d)", hmac_name, c->hmac_desc_len, UBIFS_HMAC_ARR_SZ); err = -EINVAL; - goto out_free_hash; + goto out_free_hmac; } err = crypto_shash_setkey(c->hmac_tfm, ukp->data, ukp->datalen); @@ -338,8 +338,10 @@ c->authenticated = true; c->log_hash = ubifs_hash_get_desc(c); - if (IS_ERR(c->log_hash)) + if (IS_ERR(c->log_hash)) { + err = PTR_ERR(c->log_hash); goto out_free_hmac; + } err = 0; --- linux-azure-5.8-5.8.0.orig/fs/ubifs/debug.c +++ linux-azure-5.8-5.8.0/fs/ubifs/debug.c @@ -1123,6 +1123,7 @@ err = PTR_ERR(dent); if (err == -ENOENT) break; + kfree(pdent); return err; } --- linux-azure-5.8-5.8.0.orig/fs/ubifs/dir.c +++ linux-azure-5.8-5.8.0/fs/ubifs/dir.c @@ -276,6 +276,15 @@ return d_splice_alias(inode, dentry); } +static int ubifs_prepare_create(struct inode *dir, struct dentry *dentry, + struct fscrypt_name *nm) +{ + if (fscrypt_is_nokey_name(dentry)) + return -ENOKEY; + + return fscrypt_setup_filename(dir, &dentry->d_name, 0, nm); +} + static int ubifs_create(struct inode *dir, struct dentry *dentry, umode_t mode, bool excl) { @@ -299,7 +308,7 @@ if (err) return err; - err = fscrypt_setup_filename(dir, &dentry->d_name, 0, &nm); + err = ubifs_prepare_create(dir, dentry, &nm); if (err) goto out_budg; @@ -959,7 +968,7 @@ if (err) return err; - err = fscrypt_setup_filename(dir, &dentry->d_name, 0, &nm); + err = ubifs_prepare_create(dir, dentry, &nm); if (err) goto out_budg; @@ -1044,7 +1053,7 @@ return err; } - err = fscrypt_setup_filename(dir, &dentry->d_name, 0, &nm); + err = ubifs_prepare_create(dir, dentry, &nm); if (err) { kfree(dev); goto out_budg; @@ -1128,7 +1137,7 @@ if (err) return err; - err = fscrypt_setup_filename(dir, &dentry->d_name, 0, &nm); + err = ubifs_prepare_create(dir, dentry, &nm); if (err) goto out_budg; --- linux-azure-5.8-5.8.0.orig/fs/ubifs/io.c +++ linux-azure-5.8-5.8.0/fs/ubifs/io.c @@ -319,7 +319,7 @@ { uint32_t crc; - ubifs_assert(c, pad >= 0 && !(pad & 7)); + ubifs_assert(c, pad >= 0); if (pad >= UBIFS_PAD_NODE_SZ) { struct ubifs_ch *ch = buf; @@ -764,6 +764,10 @@ * write-buffer. */ memcpy(wbuf->buf + wbuf->used, buf, len); + if (aligned_len > len) { + ubifs_assert(c, aligned_len - len < 8); + ubifs_pad(c, wbuf->buf + wbuf->used + len, aligned_len - len); + } if (aligned_len == wbuf->avail) { dbg_io("flush jhead %s wbuf to LEB %d:%d", @@ -856,13 +860,18 @@ } spin_lock(&wbuf->lock); - if (aligned_len) + if (aligned_len) { /* * And now we have what's left and what does not take whole * max. write unit, so write it to the write-buffer and we are * done. */ memcpy(wbuf->buf, buf + written, len); + if (aligned_len > len) { + ubifs_assert(c, aligned_len - len < 8); + ubifs_pad(c, wbuf->buf + len, aligned_len - len); + } + } if (c->leb_size - wbuf->offs >= c->max_write_size) wbuf->size = c->max_write_size; --- linux-azure-5.8-5.8.0.orig/fs/ubifs/journal.c +++ linux-azure-5.8-5.8.0/fs/ubifs/journal.c @@ -539,7 +539,7 @@ const struct fscrypt_name *nm, const struct inode *inode, int deletion, int xent) { - int err, dlen, ilen, len, lnum, ino_offs, dent_offs; + int err, dlen, ilen, len, lnum, ino_offs, dent_offs, orphan_added = 0; int aligned_dlen, aligned_ilen, sync = IS_DIRSYNC(dir); int last_reference = !!(deletion && inode->i_nlink == 0); struct ubifs_inode *ui = ubifs_inode(inode); @@ -630,6 +630,7 @@ goto out_finish; } ui->del_cmtno = c->cmt_no; + orphan_added = 1; } err = write_head(c, BASEHD, dent, len, &lnum, &dent_offs, sync); @@ -702,7 +703,7 @@ kfree(dent); out_ro: ubifs_ro_mode(c, err); - if (last_reference) + if (orphan_added) ubifs_delete_orphan(c, inode->i_ino); finish_reservation(c); return err; @@ -893,6 +894,7 @@ if (err == -ENOENT) break; + kfree(pxent); goto out_release; } @@ -905,6 +907,7 @@ ubifs_err(c, "dead directory entry '%s', error %d", xent->name, err); ubifs_ro_mode(c, err); + kfree(pxent); kfree(xent); goto out_release; } @@ -935,8 +938,6 @@ inode->i_ino); release_head(c, BASEHD); - ubifs_add_auth_dirt(c, lnum); - if (last_reference) { err = ubifs_tnc_remove_ino(c, inode->i_ino); if (err) @@ -946,6 +947,8 @@ } else { union ubifs_key key; + ubifs_add_auth_dirt(c, lnum); + ino_key_init(c, &key, inode->i_ino); err = ubifs_tnc_add(c, &key, lnum, offs, ilen, hash); } @@ -1218,7 +1221,7 @@ void *p; union ubifs_key key; struct ubifs_dent_node *dent, *dent2; - int err, dlen1, dlen2, ilen, lnum, offs, len; + int err, dlen1, dlen2, ilen, lnum, offs, len, orphan_added = 0; int aligned_dlen1, aligned_dlen2, plen = UBIFS_INO_NODE_SZ; int last_reference = !!(new_inode && new_inode->i_nlink == 0); int move = (old_dir != new_dir); @@ -1334,6 +1337,7 @@ goto out_finish; } new_ui->del_cmtno = c->cmt_no; + orphan_added = 1; } err = write_head(c, BASEHD, dent, len, &lnum, &offs, sync); @@ -1415,7 +1419,7 @@ release_head(c, BASEHD); out_ro: ubifs_ro_mode(c, err); - if (last_reference) + if (orphan_added) ubifs_delete_orphan(c, new_inode->i_ino); out_finish: finish_reservation(c); --- linux-azure-5.8-5.8.0.orig/fs/ubifs/orphan.c +++ linux-azure-5.8-5.8.0/fs/ubifs/orphan.c @@ -173,6 +173,7 @@ err = PTR_ERR(xent); if (err == -ENOENT) break; + kfree(pxent); return err; } @@ -182,6 +183,7 @@ xattr_orphan = orphan_add(c, xattr_inum, orphan); if (IS_ERR(xattr_orphan)) { + kfree(pxent); kfree(xent); return PTR_ERR(xattr_orphan); } --- linux-azure-5.8-5.8.0.orig/fs/ubifs/replay.c +++ linux-azure-5.8-5.8.0/fs/ubifs/replay.c @@ -559,7 +559,9 @@ } /* authenticate_sleb_hash is split out for stack usage */ -static int authenticate_sleb_hash(struct ubifs_info *c, struct shash_desc *log_hash, u8 *hash) +static int noinline_for_stack +authenticate_sleb_hash(struct ubifs_info *c, + struct shash_desc *log_hash, u8 *hash) { SHASH_DESC_ON_STACK(hash_desc, c->hash_tfm); --- linux-azure-5.8-5.8.0.orig/fs/ubifs/super.c +++ linux-azure-5.8-5.8.0/fs/ubifs/super.c @@ -820,8 +820,10 @@ c->jheads[i].wbuf.jhead = i; c->jheads[i].grouped = 1; c->jheads[i].log_hash = ubifs_hash_get_desc(c); - if (IS_ERR(c->jheads[i].log_hash)) + if (IS_ERR(c->jheads[i].log_hash)) { + err = PTR_ERR(c->jheads[i].log_hash); goto out; + } } /* @@ -1092,14 +1094,20 @@ break; } case Opt_auth_key: - c->auth_key_name = kstrdup(args[0].from, GFP_KERNEL); - if (!c->auth_key_name) - return -ENOMEM; + if (!is_remount) { + c->auth_key_name = kstrdup(args[0].from, + GFP_KERNEL); + if (!c->auth_key_name) + return -ENOMEM; + } break; case Opt_auth_hash_name: - c->auth_hash_name = kstrdup(args[0].from, GFP_KERNEL); - if (!c->auth_hash_name) - return -ENOMEM; + if (!is_remount) { + c->auth_hash_name = kstrdup(args[0].from, + GFP_KERNEL); + if (!c->auth_hash_name) + return -ENOMEM; + } break; case Opt_ignore: break; @@ -1123,6 +1131,18 @@ return 0; } +/* + * ubifs_release_options - release mount parameters which have been dumped. + * @c: UBIFS file-system description object + */ +static void ubifs_release_options(struct ubifs_info *c) +{ + kfree(c->auth_key_name); + c->auth_key_name = NULL; + kfree(c->auth_hash_name); + c->auth_hash_name = NULL; +} + /** * destroy_journal - destroy journal data structures. * @c: UBIFS file-system description object @@ -1295,7 +1315,7 @@ err = ubifs_read_superblock(c); if (err) - goto out_free; + goto out_auth; c->probing = 0; @@ -1307,18 +1327,18 @@ ubifs_err(c, "'compressor \"%s\" is not compiled in", ubifs_compr_name(c, c->default_compr)); err = -ENOTSUPP; - goto out_free; + goto out_auth; } err = init_constants_sb(c); if (err) - goto out_free; + goto out_auth; sz = ALIGN(c->max_idx_node_sz, c->min_io_size) * 2; c->cbuf = kmalloc(sz, GFP_NOFS); if (!c->cbuf) { err = -ENOMEM; - goto out_free; + goto out_auth; } err = alloc_wbufs(c); @@ -1593,6 +1613,8 @@ free_wbufs(c); out_cbuf: kfree(c->cbuf); +out_auth: + ubifs_exit_authentication(c); out_free: kfree(c->write_reserve_buf); kfree(c->bu.buf); @@ -1632,8 +1654,7 @@ ubifs_lpt_free(c, 0); ubifs_exit_authentication(c); - kfree(c->auth_key_name); - kfree(c->auth_hash_name); + ubifs_release_options(c); kfree(c->cbuf); kfree(c->rcvrd_mst_node); kfree(c->mst_node); @@ -2201,6 +2222,7 @@ out_unlock: mutex_unlock(&c->umount_mutex); out_close: + ubifs_release_options(c); ubi_close_volume(c->ubi); out: return err; --- linux-azure-5.8-5.8.0.orig/fs/ubifs/tnc.c +++ linux-azure-5.8-5.8.0/fs/ubifs/tnc.c @@ -2885,6 +2885,7 @@ err = PTR_ERR(xent); if (err == -ENOENT) break; + kfree(pxent); return err; } @@ -2898,6 +2899,7 @@ fname_len(&nm) = le16_to_cpu(xent->nlen); err = ubifs_tnc_remove_nm(c, &key1, &nm); if (err) { + kfree(pxent); kfree(xent); return err; } @@ -2906,6 +2908,7 @@ highest_ino_key(c, &key2, xattr_inum); err = ubifs_tnc_remove_range(c, &key1, &key2); if (err) { + kfree(pxent); kfree(xent); return err; } --- linux-azure-5.8-5.8.0.orig/fs/ubifs/xattr.c +++ linux-azure-5.8-5.8.0/fs/ubifs/xattr.c @@ -522,6 +522,7 @@ xent->name, err); ubifs_ro_mode(c, err); kfree(pxent); + kfree(xent); return err; } @@ -531,6 +532,7 @@ err = remove_xattr(c, host, xino, &nm); if (err) { kfree(pxent); + kfree(xent); iput(xino); ubifs_err(c, "cannot remove xattr, error %d", err); return err; --- linux-azure-5.8-5.8.0.orig/fs/udf/inode.c +++ linux-azure-5.8-5.8.0/fs/udf/inode.c @@ -139,21 +139,24 @@ struct udf_inode_info *iinfo = UDF_I(inode); int want_delete = 0; - if (!inode->i_nlink && !is_bad_inode(inode)) { - want_delete = 1; - udf_setsize(inode, 0); - udf_update_inode(inode, IS_SYNC(inode)); + if (!is_bad_inode(inode)) { + if (!inode->i_nlink) { + want_delete = 1; + udf_setsize(inode, 0); + udf_update_inode(inode, IS_SYNC(inode)); + } + if (iinfo->i_alloc_type != ICBTAG_FLAG_AD_IN_ICB && + inode->i_size != iinfo->i_lenExtents) { + udf_warn(inode->i_sb, + "Inode %lu (mode %o) has inode size %llu different from extent length %llu. Filesystem need not be standards compliant.\n", + inode->i_ino, inode->i_mode, + (unsigned long long)inode->i_size, + (unsigned long long)iinfo->i_lenExtents); + } } truncate_inode_pages_final(&inode->i_data); invalidate_inode_buffers(inode); clear_inode(inode); - if (iinfo->i_alloc_type != ICBTAG_FLAG_AD_IN_ICB && - inode->i_size != iinfo->i_lenExtents) { - udf_warn(inode->i_sb, "Inode %lu (mode %o) has inode size %llu different from extent length %llu. Filesystem need not be standards compliant.\n", - inode->i_ino, inode->i_mode, - (unsigned long long)inode->i_size, - (unsigned long long)iinfo->i_lenExtents); - } kfree(iinfo->i_ext.i_data); iinfo->i_ext.i_data = NULL; udf_clear_extent_cache(inode); --- linux-azure-5.8-5.8.0.orig/fs/udf/super.c +++ linux-azure-5.8-5.8.0/fs/udf/super.c @@ -705,6 +705,7 @@ struct buffer_head *bh = NULL; int nsr = 0; struct udf_sb_info *sbi; + loff_t session_offset; sbi = UDF_SB(sb); if (sb->s_blocksize < sizeof(struct volStructDesc)) @@ -712,7 +713,8 @@ else sectorsize = sb->s_blocksize; - sector += (((loff_t)sbi->s_session) << sb->s_blocksize_bits); + session_offset = (loff_t)sbi->s_session << sb->s_blocksize_bits; + sector += session_offset; udf_debug("Starting at sector %u (%lu byte sectors)\n", (unsigned int)(sector >> sb->s_blocksize_bits), @@ -757,8 +759,7 @@ if (nsr > 0) return 1; - else if (!bh && sector - (sbi->s_session << sb->s_blocksize_bits) == - VSD_FIRST_SECTOR_OFFSET) + else if (!bh && sector - session_offset == VSD_FIRST_SECTOR_OFFSET) return -1; else return 0; @@ -1353,6 +1354,12 @@ (int)spm->numSparingTables); return -EIO; } + if (le32_to_cpu(spm->sizeSparingTable) > sb->s_blocksize) { + udf_err(sb, "error loading logical volume descriptor: " + "Too big sparing table size (%u)\n", + le32_to_cpu(spm->sizeSparingTable)); + return -EIO; + } for (i = 0; i < spm->numSparingTables; i++) { loc = le32_to_cpu(spm->locSparingTable[i]); @@ -1698,7 +1705,8 @@ "Pointers (max %u supported)\n", UDF_MAX_TD_NESTING); brelse(bh); - return -EIO; + ret = -EIO; + goto out; } vdp = (struct volDescPtr *)bh->b_data; @@ -1718,7 +1726,8 @@ curr = get_volume_descriptor_record(ident, bh, &data); if (IS_ERR(curr)) { brelse(bh); - return PTR_ERR(curr); + ret = PTR_ERR(curr); + goto out; } /* Descriptor we don't care about? */ if (!curr) @@ -1740,28 +1749,31 @@ */ if (!data.vds[VDS_POS_PRIMARY_VOL_DESC].block) { udf_err(sb, "Primary Volume Descriptor not found!\n"); - return -EAGAIN; + ret = -EAGAIN; + goto out; } ret = udf_load_pvoldesc(sb, data.vds[VDS_POS_PRIMARY_VOL_DESC].block); if (ret < 0) - return ret; + goto out; if (data.vds[VDS_POS_LOGICAL_VOL_DESC].block) { ret = udf_load_logicalvol(sb, data.vds[VDS_POS_LOGICAL_VOL_DESC].block, fileset); if (ret < 0) - return ret; + goto out; } /* Now handle prevailing Partition Descriptors */ for (i = 0; i < data.num_part_descs; i++) { ret = udf_load_partdesc(sb, data.part_descs_loc[i].rec.block); if (ret < 0) - return ret; + goto out; } - - return 0; + ret = 0; +out: + kfree(data.part_descs_loc); + return ret; } /* --- linux-azure-5.8-5.8.0.orig/fs/ufs/super.c +++ linux-azure-5.8-5.8.0/fs/ufs/super.c @@ -101,7 +101,7 @@ struct ufs_sb_private_info *uspi = UFS_SB(sb)->s_uspi; struct inode *inode; - if (ino < UFS_ROOTINO || ino > uspi->s_ncg * uspi->s_ipg) + if (ino < UFS_ROOTINO || ino > (u64)uspi->s_ncg * uspi->s_ipg) return ERR_PTR(-ESTALE); inode = ufs_iget(sb, ino); --- linux-azure-5.8-5.8.0.orig/fs/vboxsf/super.c +++ linux-azure-5.8-5.8.0/fs/vboxsf/super.c @@ -384,7 +384,7 @@ static int vboxsf_parse_monolithic(struct fs_context *fc, void *data) { - char *options = data; + unsigned char *options = data; if (options && options[0] == VBSF_MOUNT_SIGNATURE_BYTE_0 && options[1] == VBSF_MOUNT_SIGNATURE_BYTE_1 && --- linux-azure-5.8-5.8.0.orig/fs/xattr.c +++ linux-azure-5.8-5.8.0/fs/xattr.c @@ -203,11 +203,24 @@ return error; } +EXPORT_SYMBOL_GPL(__vfs_setxattr_noperm); - +/** + * __vfs_setxattr_locked: set an extended attribute while holding the inode + * lock + * + * @dentry - object to perform setxattr on + * @name - xattr name to set + * @value - value to set @name to + * @size - size of @value + * @flags - flags to pass into filesystem operations + * @delegated_inode - on return, will contain an inode pointer that + * a delegation was broken on, NULL if none. + */ int -vfs_setxattr(struct dentry *dentry, const char *name, const void *value, - size_t size, int flags) +__vfs_setxattr_locked(struct dentry *dentry, const char *name, + const void *value, size_t size, int flags, + struct inode **delegated_inode) { struct inode *inode = dentry->d_inode; int error; @@ -216,15 +229,51 @@ if (error) return error; - inode_lock(inode); error = security_inode_setxattr(dentry, name, value, size, flags); if (error) goto out; + error = try_break_deleg(inode, delegated_inode); + if (error) + goto out; + error = __vfs_setxattr_noperm(dentry, name, value, size, flags); out: + return error; +} +EXPORT_SYMBOL_GPL(__vfs_setxattr_locked); + +int +vfs_setxattr(struct dentry *dentry, const char *name, const void *value, + size_t size, int flags) +{ + struct inode *inode = dentry->d_inode; + struct inode *delegated_inode = NULL; + const void *orig_value = value; + int error; + + if (size && strcmp(name, XATTR_NAME_CAPS) == 0) { + error = cap_convert_nscap(dentry, &value, size); + if (error < 0) + return error; + size = error; + } + +retry_deleg: + inode_lock(inode); + error = __vfs_setxattr_locked(dentry, name, value, size, flags, + &delegated_inode); inode_unlock(inode); + + if (delegated_inode) { + error = break_deleg_wait(&delegated_inode); + if (!error) + goto retry_deleg; + } + if (value != orig_value) + kfree(value); + return error; } EXPORT_SYMBOL_GPL(vfs_setxattr); @@ -296,6 +345,7 @@ *xattr_value = value; return error; } +EXPORT_SYMBOL_GPL(vfs_getxattr_alloc); ssize_t __vfs_getxattr(struct dentry *dentry, struct inode *inode, const char *name, @@ -378,8 +428,45 @@ } EXPORT_SYMBOL(__vfs_removexattr); +/** + * __vfs_removexattr_noperm - perform removexattr operation without + * performing permission checks. + * + * @dentry - object to perform setxattr on + * @name - xattr name to set + * + * returns the result of the internal setxattr or setsecurity operations. + * + * This function requires the caller to lock the inode's i_mutex before it + * is executed. It also assumes that the caller will make the appropriate + * permission checks. + */ int -vfs_removexattr(struct dentry *dentry, const char *name) +__vfs_removexattr_noperm(struct dentry *dentry, const char *name) +{ + int error; + + error =__vfs_removexattr(dentry, name); + if (!error) { + fsnotify_xattr(dentry); + evm_inode_post_removexattr(dentry, name); + } + return error; +} +EXPORT_SYMBOL_GPL(__vfs_removexattr_noperm); + +/** + * __vfs_removexattr_locked: set an extended attribute while holding the inode + * lock + * + * @dentry - object to perform setxattr on + * @name - name of xattr to remove + * @delegated_inode - on return, will contain an inode pointer that + * a delegation was broken on, NULL if none. + */ +int +__vfs_removexattr_locked(struct dentry *dentry, const char *name, + struct inode **delegated_inode) { struct inode *inode = dentry->d_inode; int error; @@ -388,25 +475,43 @@ if (error) return error; - inode_lock(inode); error = security_inode_removexattr(dentry, name); if (error) goto out; - error = __vfs_removexattr(dentry, name); + error = try_break_deleg(inode, delegated_inode); + if (error) + return error; - if (!error) { - fsnotify_xattr(dentry); - evm_inode_post_removexattr(dentry, name); - } + error = __vfs_removexattr_noperm(dentry, name); out: + return error; +} +EXPORT_SYMBOL_GPL(__vfs_removexattr_locked); + +int +vfs_removexattr(struct dentry *dentry, const char *name) +{ + struct inode *inode = dentry->d_inode; + struct inode *delegated_inode = NULL; + int error; + +retry_deleg: + inode_lock(inode); + error = __vfs_removexattr_locked(dentry, name, &delegated_inode); inode_unlock(inode); + + if (delegated_inode) { + error = break_deleg_wait(&delegated_inode); + if (!error) + goto retry_deleg; + } + return error; } EXPORT_SYMBOL_GPL(vfs_removexattr); - /* * Extended attribute SET operations */ @@ -440,12 +545,6 @@ if ((strcmp(kname, XATTR_NAME_POSIX_ACL_ACCESS) == 0) || (strcmp(kname, XATTR_NAME_POSIX_ACL_DEFAULT) == 0)) posix_acl_fix_xattr_from_user(kvalue, size); - else if (strcmp(kname, XATTR_NAME_CAPS) == 0) { - error = cap_convert_nscap(d, &kvalue, size); - if (error < 0) - goto out; - size = error; - } } error = vfs_setxattr(d, kname, kvalue, size, flags); --- linux-azure-5.8-5.8.0.orig/fs/xfs/libxfs/xfs_alloc.c +++ linux-azure-5.8-5.8.0/fs/xfs/libxfs/xfs_alloc.c @@ -2471,6 +2471,7 @@ new->xefi_startblock = XFS_AGB_TO_FSB(mp, agno, agbno); new->xefi_blockcount = 1; new->xefi_oinfo = *oinfo; + new->xefi_skip_discard = false; trace_xfs_agfl_free_defer(mp, agno, 0, agbno, 1); --- linux-azure-5.8-5.8.0.orig/fs/xfs/libxfs/xfs_attr_leaf.c +++ linux-azure-5.8-5.8.0/fs/xfs/libxfs/xfs_attr_leaf.c @@ -515,7 +515,7 @@ *========================================================================*/ /* - * Query whether the requested number of additional bytes of extended + * Query whether the total requested number of attr fork bytes of extended * attribute space will be able to fit inline. * * Returns zero if not, else the di_forkoff fork offset to be used in the @@ -535,6 +535,12 @@ int maxforkoff; int offset; + /* + * Check if the new size could fit at all first: + */ + if (bytes > XFS_LITINO(mp)) + return 0; + /* rounded down */ offset = (XFS_LITINO(mp) - bytes) >> 3; @@ -653,8 +659,8 @@ ASSERT(ifp->if_flags & XFS_IFINLINE); } xfs_idata_realloc(dp, sizeof(*hdr), XFS_ATTR_FORK); - hdr = (xfs_attr_sf_hdr_t *)ifp->if_u1.if_data; - hdr->count = 0; + hdr = (struct xfs_attr_sf_hdr *)ifp->if_u1.if_data; + memset(hdr, 0, sizeof(*hdr)); hdr->totsize = cpu_to_be16(sizeof(*hdr)); xfs_trans_log_inode(args->trans, dp, XFS_ILOG_CORE | XFS_ILOG_ADATA); } @@ -996,8 +1002,10 @@ * struct xfs_attr_sf_entry has a variable length. * Check the fixed-offset parts of the structure are * within the data buffer. + * xfs_attr_sf_entry is defined with a 1-byte variable + * array at the end, so we must subtract that off. */ - if (((char *)sfep + sizeof(*sfep)) >= endp) + if (((char *)sfep + sizeof(*sfep) - 1) >= endp) return __this_address; /* Don't allow names with known bad length. */ --- linux-azure-5.8-5.8.0.orig/fs/xfs/libxfs/xfs_bmap.c +++ linux-azure-5.8-5.8.0/fs/xfs/libxfs/xfs_bmap.c @@ -5042,20 +5042,25 @@ flags = XFS_ILOG_CORE; if (whichfork == XFS_DATA_FORK && XFS_IS_REALTIME_INODE(ip)) { - xfs_fsblock_t bno; xfs_filblks_t len; xfs_extlen_t mod; - bno = div_u64_rem(del->br_startblock, mp->m_sb.sb_rextsize, - &mod); - ASSERT(mod == 0); len = div_u64_rem(del->br_blockcount, mp->m_sb.sb_rextsize, &mod); ASSERT(mod == 0); - error = xfs_rtfree_extent(tp, bno, (xfs_extlen_t)len); - if (error) - goto done; + if (!(bflags & XFS_BMAPI_REMAP)) { + xfs_fsblock_t bno; + + bno = div_u64_rem(del->br_startblock, + mp->m_sb.sb_rextsize, &mod); + ASSERT(mod == 0); + + error = xfs_rtfree_extent(tp, bno, (xfs_extlen_t)len); + if (error) + goto done; + } + do_fx = 0; nblks = len * mp->m_sb.sb_rextsize; qfield = XFS_TRANS_DQ_RTBCOUNT; @@ -6222,7 +6227,7 @@ isrt = XFS_IS_REALTIME_INODE(ip); endfsb = irec->br_startblock + irec->br_blockcount - 1; - if (isrt) { + if (isrt && whichfork == XFS_DATA_FORK) { if (!xfs_verify_rtbno(mp, irec->br_startblock)) return __this_address; if (!xfs_verify_rtbno(mp, endfsb)) --- linux-azure-5.8-5.8.0.orig/fs/xfs/libxfs/xfs_bmap.h +++ linux-azure-5.8-5.8.0/fs/xfs/libxfs/xfs_bmap.h @@ -52,9 +52,9 @@ { xfs_fsblock_t xefi_startblock;/* starting fs block number */ xfs_extlen_t xefi_blockcount;/* number of blocks in extent */ + bool xefi_skip_discard; struct list_head xefi_list; struct xfs_owner_info xefi_oinfo; /* extent owner */ - bool xefi_skip_discard; }; #define XFS_BMAP_MAX_NMAP 4 --- linux-azure-5.8-5.8.0.orig/fs/xfs/libxfs/xfs_defer.c +++ linux-azure-5.8-5.8.0/fs/xfs/libxfs/xfs_defer.c @@ -186,8 +186,9 @@ { const struct xfs_defer_op_type *ops = defer_op_types[dfp->dfp_type]; - dfp->dfp_intent = ops->create_intent(tp, &dfp->dfp_work, - dfp->dfp_count, sort); + if (!dfp->dfp_intent) + dfp->dfp_intent = ops->create_intent(tp, &dfp->dfp_work, + dfp->dfp_count, sort); } /* @@ -390,6 +391,7 @@ list_add(li, &dfp->dfp_work); dfp->dfp_count++; dfp->dfp_done = NULL; + dfp->dfp_intent = NULL; xfs_defer_create_intent(tp, dfp, false); } @@ -428,8 +430,17 @@ /* Until we run out of pending work to finish... */ while (!list_empty(&dop_pending) || !list_empty(&(*tp)->t_dfops)) { + /* + * Deferred items that are created in the process of finishing + * other deferred work items should be queued at the head of + * the pending list, which puts them ahead of the deferred work + * that was created by the caller. This keeps the number of + * pending work items to a minimum, which decreases the amount + * of time that any one intent item can stick around in memory, + * pinning the log tail. + */ xfs_defer_create_intents(*tp); - list_splice_tail_init(&(*tp)->t_dfops, &dop_pending); + list_splice_init(&(*tp)->t_dfops, &dop_pending); error = xfs_defer_trans_roll(tp); if (error) @@ -552,3 +563,23 @@ xfs_defer_reset(stp); } + +/* + * Prepare a chain of fresh deferred ops work items to be completed later. Log + * recovery requires the ability to put off until later the actual finishing + * work so that it can process unfinished items recovered from the log in + * correct order. + * + * Create and log intent items for all the work that we're capturing so that we + * can be assured that the items will get replayed if the system goes down + * before log recovery gets a chance to finish the work it put off. Then we + * move the chain from stp to dtp. + */ +void +xfs_defer_capture( + struct xfs_trans *dtp, + struct xfs_trans *stp) +{ + xfs_defer_create_intents(stp); + xfs_defer_move(dtp, stp); +} --- linux-azure-5.8-5.8.0.orig/fs/xfs/libxfs/xfs_defer.h +++ linux-azure-5.8-5.8.0/fs/xfs/libxfs/xfs_defer.h @@ -63,4 +63,10 @@ extern const struct xfs_defer_op_type xfs_extent_free_defer_type; extern const struct xfs_defer_op_type xfs_agfl_free_defer_type; +/* + * Functions to capture a chain of deferred operations and continue them later. + * This doesn't normally happen except log recovery. + */ +void xfs_defer_capture(struct xfs_trans *dtp, struct xfs_trans *stp); + #endif /* __XFS_DEFER_H__ */ --- linux-azure-5.8-5.8.0.orig/fs/xfs/libxfs/xfs_ialloc.c +++ linux-azure-5.8-5.8.0/fs/xfs/libxfs/xfs_ialloc.c @@ -688,7 +688,7 @@ args.minalignslop = igeo->cluster_align - 1; /* Allow space for the inode btree to split. */ - args.minleft = igeo->inobt_maxlevels - 1; + args.minleft = igeo->inobt_maxlevels; if ((error = xfs_alloc_vextent(&args))) return error; @@ -736,7 +736,7 @@ /* * Allow space for the inode btree to split. */ - args.minleft = igeo->inobt_maxlevels - 1; + args.minleft = igeo->inobt_maxlevels; if ((error = xfs_alloc_vextent(&args))) return error; } --- linux-azure-5.8-5.8.0.orig/fs/xfs/libxfs/xfs_rmap.c +++ linux-azure-5.8-5.8.0/fs/xfs/libxfs/xfs_rmap.c @@ -1514,7 +1514,7 @@ * record for our insertion point. This will also give us the record for * start block contiguity tests. */ - error = xfs_rmap_lookup_le_range(cur, bno, owner, offset, flags, + error = xfs_rmap_lookup_le_range(cur, bno, owner, offset, oldext, &PREV, &i); if (error) goto done; --- linux-azure-5.8-5.8.0.orig/fs/xfs/libxfs/xfs_rtbitmap.c +++ linux-azure-5.8-5.8.0/fs/xfs/libxfs/xfs_rtbitmap.c @@ -1018,7 +1018,6 @@ struct xfs_mount *mp = tp->t_mountp; xfs_rtblock_t rtstart; xfs_rtblock_t rtend; - xfs_rtblock_t rem; int is_free; int error = 0; @@ -1027,13 +1026,12 @@ if (low_rec->ar_startext >= mp->m_sb.sb_rextents || low_rec->ar_startext == high_rec->ar_startext) return 0; - if (high_rec->ar_startext > mp->m_sb.sb_rextents) - high_rec->ar_startext = mp->m_sb.sb_rextents; + high_rec->ar_startext = min(high_rec->ar_startext, + mp->m_sb.sb_rextents - 1); /* Iterate the bitmap, looking for discrepancies. */ rtstart = low_rec->ar_startext; - rem = high_rec->ar_startext - rtstart; - while (rem) { + while (rtstart <= high_rec->ar_startext) { /* Is the first block free? */ error = xfs_rtcheck_range(mp, tp, rtstart, 1, 1, &rtend, &is_free); @@ -1042,7 +1040,7 @@ /* How long does the extent go for? */ error = xfs_rtfind_forw(mp, tp, rtstart, - high_rec->ar_startext - 1, &rtend); + high_rec->ar_startext, &rtend); if (error) break; @@ -1055,7 +1053,6 @@ break; } - rem -= rtend - rtstart + 1; rtstart = rtend + 1; } --- linux-azure-5.8-5.8.0.orig/fs/xfs/libxfs/xfs_shared.h +++ linux-azure-5.8-5.8.0/fs/xfs/libxfs/xfs_shared.h @@ -65,6 +65,7 @@ #define XFS_TRANS_DQ_DIRTY 0x10 /* at least one dquot in trx dirty */ #define XFS_TRANS_RESERVE 0x20 /* OK to use reserved data blocks */ #define XFS_TRANS_NO_WRITECOUNT 0x40 /* do not elevate SB writecount */ +#define XFS_TRANS_RES_FDBLKS 0x80 /* reserve newly freed blocks */ /* * LOWMODE is used by the allocator to activate the lowspace algorithm - when * free space is running low the extent allocator may choose to allocate an --- linux-azure-5.8-5.8.0.orig/fs/xfs/libxfs/xfs_trans_inode.c +++ linux-azure-5.8-5.8.0/fs/xfs/libxfs/xfs_trans_inode.c @@ -36,6 +36,7 @@ ASSERT(iip->ili_lock_flags == 0); iip->ili_lock_flags = lock_flags; + ASSERT(!xfs_iflags_test(ip, XFS_ISTALE)); /* * Get a log_item_desc to point at the new item. @@ -89,6 +90,7 @@ ASSERT(ip->i_itemp != NULL); ASSERT(xfs_isilocked(ip, XFS_ILOCK_EXCL)); + ASSERT(!xfs_iflags_test(ip, XFS_ISTALE)); /* * Don't bother with i_lock for the I_DIRTY_TIME check here, as races @@ -96,9 +98,9 @@ * to log the timestamps, or will clear already cleared fields in the * worst case. */ - if (inode->i_state & (I_DIRTY_TIME | I_DIRTY_TIME_EXPIRED)) { + if (inode->i_state & I_DIRTY_TIME) { spin_lock(&inode->i_lock); - inode->i_state &= ~(I_DIRTY_TIME | I_DIRTY_TIME_EXPIRED); + inode->i_state &= ~I_DIRTY_TIME; spin_unlock(&inode->i_lock); } --- linux-azure-5.8-5.8.0.orig/fs/xfs/libxfs/xfs_trans_space.h +++ linux-azure-5.8-5.8.0/fs/xfs/libxfs/xfs_trans_space.h @@ -57,8 +57,8 @@ XFS_DAREMOVE_SPACE_RES(mp, XFS_DATA_FORK) #define XFS_IALLOC_SPACE_RES(mp) \ (M_IGEO(mp)->ialloc_blks + \ - (xfs_sb_version_hasfinobt(&mp->m_sb) ? 2 : 1 * \ - (M_IGEO(mp)->inobt_maxlevels - 1))) + ((xfs_sb_version_hasfinobt(&mp->m_sb) ? 2 : 1) * \ + M_IGEO(mp)->inobt_maxlevels)) /* * Space reservation values for various transactions. --- linux-azure-5.8-5.8.0.orig/fs/xfs/scrub/bmap.c +++ linux-azure-5.8-5.8.0/fs/xfs/scrub/bmap.c @@ -45,9 +45,27 @@ */ if (S_ISREG(VFS_I(sc->ip)->i_mode) && sc->sm->sm_type == XFS_SCRUB_TYPE_BMBTD) { + struct address_space *mapping = VFS_I(sc->ip)->i_mapping; + inode_dio_wait(VFS_I(sc->ip)); - error = filemap_write_and_wait(VFS_I(sc->ip)->i_mapping); - if (error) + + /* + * Try to flush all incore state to disk before we examine the + * space mappings for the data fork. Leave accumulated errors + * in the mapping for the writer threads to consume. + * + * On ENOSPC or EIO writeback errors, we continue into the + * extent mapping checks because write failures do not + * necessarily imply anything about the correctness of the file + * metadata. The metadata and the file data could be on + * completely separate devices; a media failure might only + * affect a subset of the disk, etc. We can handle delalloc + * extents in the scrubber, so leaving them in memory is fine. + */ + error = filemap_fdatawrite(mapping); + if (!error) + error = filemap_fdatawait_keep_errors(mapping); + if (error && (error != -ENOSPC && error != -EIO)) goto out; } @@ -95,6 +113,8 @@ if (info->whichfork == XFS_ATTR_FORK) rflags |= XFS_RMAP_ATTR_FORK; + if (irec->br_state == XFS_EXT_UNWRITTEN) + rflags |= XFS_RMAP_UNWRITTEN; /* * CoW staging extents are owned (on disk) by the refcountbt, so @@ -198,13 +218,13 @@ * which doesn't track unwritten state. */ if (owner != XFS_RMAP_OWN_COW && - irec->br_state == XFS_EXT_UNWRITTEN && - !(rmap.rm_flags & XFS_RMAP_UNWRITTEN)) + !!(irec->br_state == XFS_EXT_UNWRITTEN) != + !!(rmap.rm_flags & XFS_RMAP_UNWRITTEN)) xchk_fblock_xref_set_corrupt(info->sc, info->whichfork, irec->br_startoff); - if (info->whichfork == XFS_ATTR_FORK && - !(rmap.rm_flags & XFS_RMAP_ATTR_FORK)) + if (!!(info->whichfork == XFS_ATTR_FORK) != + !!(rmap.rm_flags & XFS_RMAP_ATTR_FORK)) xchk_fblock_xref_set_corrupt(info->sc, info->whichfork, irec->br_startoff); if (rmap.rm_flags & XFS_RMAP_BMBT_BLOCK) --- linux-azure-5.8-5.8.0.orig/fs/xfs/scrub/btree.c +++ linux-azure-5.8-5.8.0/fs/xfs/scrub/btree.c @@ -452,32 +452,41 @@ int level, struct xfs_btree_block *block) { - unsigned int numrecs; - int ok_level; - - numrecs = be16_to_cpu(block->bb_numrecs); + struct xfs_btree_cur *cur = bs->cur; + unsigned int root_level = cur->bc_nlevels - 1; + unsigned int numrecs = be16_to_cpu(block->bb_numrecs); /* More records than minrecs means the block is ok. */ - if (numrecs >= bs->cur->bc_ops->get_minrecs(bs->cur, level)) + if (numrecs >= cur->bc_ops->get_minrecs(cur, level)) return; /* - * Certain btree blocks /can/ have fewer than minrecs records. Any - * level greater than or equal to the level of the highest dedicated - * btree block are allowed to violate this constraint. - * - * For a btree rooted in a block, the btree root can have fewer than - * minrecs records. If the btree is rooted in an inode and does not - * store records in the root, the direct children of the root and the - * root itself can have fewer than minrecs records. + * For btrees rooted in the inode, it's possible that the root block + * contents spilled into a regular ondisk block because there wasn't + * enough space in the inode root. The number of records in that + * child block might be less than the standard minrecs, but that's ok + * provided that there's only one direct child of the root. */ - ok_level = bs->cur->bc_nlevels - 1; - if (bs->cur->bc_flags & XFS_BTREE_ROOT_IN_INODE) - ok_level--; - if (level >= ok_level) + if ((cur->bc_flags & XFS_BTREE_ROOT_IN_INODE) && + level == cur->bc_nlevels - 2) { + struct xfs_btree_block *root_block; + struct xfs_buf *root_bp; + int root_maxrecs; + + root_block = xfs_btree_get_block(cur, root_level, &root_bp); + root_maxrecs = cur->bc_ops->get_dmaxrecs(cur, root_level); + if (be16_to_cpu(root_block->bb_numrecs) != 1 || + numrecs <= root_maxrecs) + xchk_btree_set_corrupt(bs->sc, cur, level); return; + } - xchk_btree_set_corrupt(bs->sc, bs->cur, level); + /* + * Otherwise, only the root level is allowed to have fewer than minrecs + * records or keyptrs. + */ + if (level < root_level) + xchk_btree_set_corrupt(bs->sc, cur, level); } /* --- linux-azure-5.8-5.8.0.orig/fs/xfs/scrub/dir.c +++ linux-azure-5.8-5.8.0/fs/xfs/scrub/dir.c @@ -558,14 +558,27 @@ /* Check all the bestfree entries. */ for (i = 0; i < bestcount; i++, bestp++) { best = be16_to_cpu(*bestp); - if (best == NULLDATAOFF) - continue; error = xfs_dir3_data_read(sc->tp, sc->ip, - i * args->geo->fsbcount, 0, &dbp); + xfs_dir2_db_to_da(args->geo, i), + XFS_DABUF_MAP_HOLE_OK, + &dbp); if (!xchk_fblock_process_error(sc, XFS_DATA_FORK, lblk, &error)) break; - xchk_directory_check_freesp(sc, lblk, dbp, best); + + if (!dbp) { + if (best != NULLDATAOFF) { + xchk_fblock_set_corrupt(sc, XFS_DATA_FORK, + lblk); + break; + } + continue; + } + + if (best == NULLDATAOFF) + xchk_fblock_set_corrupt(sc, XFS_DATA_FORK, lblk); + else + xchk_directory_check_freesp(sc, lblk, dbp, best); xfs_trans_brelse(sc->tp, dbp); if (sc->sm->sm_flags & XFS_SCRUB_OFLAG_CORRUPT) break; --- linux-azure-5.8-5.8.0.orig/fs/xfs/scrub/inode.c +++ linux-azure-5.8-5.8.0/fs/xfs/scrub/inode.c @@ -121,8 +121,7 @@ goto bad; /* rt flags require rt device */ - if ((flags & (XFS_DIFLAG_REALTIME | XFS_DIFLAG_RTINHERIT)) && - !mp->m_rtdev_targp) + if ((flags & XFS_DIFLAG_REALTIME) && !mp->m_rtdev_targp) goto bad; /* new rt bitmap flag only valid for rbmino */ --- linux-azure-5.8-5.8.0.orig/fs/xfs/scrub/refcount.c +++ linux-azure-5.8-5.8.0/fs/xfs/scrub/refcount.c @@ -170,7 +170,6 @@ */ INIT_LIST_HEAD(&worklist); rbno = NULLAGBLOCK; - nr = 1; /* Make sure the fragments actually /are/ in agbno order. */ bno = 0; @@ -184,15 +183,14 @@ * Find all the rmaps that start at or before the refc extent, * and put them on the worklist. */ + nr = 0; list_for_each_entry_safe(frag, n, &refchk->fragments, list) { - if (frag->rm.rm_startblock > refchk->bno) - goto done; + if (frag->rm.rm_startblock > refchk->bno || nr > target_nr) + break; bno = frag->rm.rm_startblock + frag->rm.rm_blockcount; if (bno < rbno) rbno = bno; list_move_tail(&frag->list, &worklist); - if (nr == target_nr) - break; nr++; } --- linux-azure-5.8-5.8.0.orig/fs/xfs/xfs_aops.c +++ linux-azure-5.8-5.8.0/fs/xfs/xfs_aops.c @@ -346,8 +346,8 @@ ssize_t count = i_blocksize(inode); xfs_fileoff_t offset_fsb = XFS_B_TO_FSBT(mp, offset); xfs_fileoff_t end_fsb = XFS_B_TO_FSB(mp, offset + count); - xfs_fileoff_t cow_fsb = NULLFILEOFF; - int whichfork = XFS_DATA_FORK; + xfs_fileoff_t cow_fsb; + int whichfork; struct xfs_bmbt_irec imap; struct xfs_iext_cursor icur; int retries = 0; @@ -381,6 +381,8 @@ * landed in a hole and we skip the block. */ retry: + cow_fsb = NULLFILEOFF; + whichfork = XFS_DATA_FORK; xfs_ilock(ip, XFS_ILOCK_SHARED); ASSERT(ip->i_df.if_format != XFS_DINODE_FMT_BTREE || (ip->i_df.if_flags & XFS_IFEXTENTS)); --- linux-azure-5.8-5.8.0.orig/fs/xfs/xfs_bmap_item.c +++ linux-azure-5.8-5.8.0/fs/xfs/xfs_bmap_item.c @@ -534,7 +534,7 @@ xfs_bmap_unmap_extent(tp, ip, &irec); } - xfs_defer_move(parent_tp, tp); + xfs_defer_capture(parent_tp, tp); error = xfs_trans_commit(tp); xfs_iunlock(ip, XFS_ILOCK_EXCL); xfs_irele(ip); --- linux-azure-5.8-5.8.0.orig/fs/xfs/xfs_bmap_util.c +++ linux-azure-5.8-5.8.0/fs/xfs/xfs_bmap_util.c @@ -1165,7 +1165,7 @@ goto out_trans_cancel; do { - error = xfs_trans_roll_inode(&tp, ip); + error = xfs_defer_finish(&tp); if (error) goto out_trans_cancel; @@ -1567,6 +1567,7 @@ int lock_flags; uint64_t f; int resblks = 0; + unsigned int flags = 0; /* * Lock the inodes against other IO, page faults and truncate to @@ -1630,17 +1631,16 @@ resblks += XFS_SWAP_RMAP_SPACE_RES(mp, tipnext, w); /* - * Handle the corner case where either inode might straddle the - * btree format boundary. If so, the inode could bounce between - * btree <-> extent format on unmap -> remap cycles, freeing and - * allocating a bmapbt block each time. + * If either inode straddles a bmapbt block allocation boundary, + * the rmapbt algorithm triggers repeated allocs and frees as + * extents are remapped. This can exhaust the block reservation + * prematurely and cause shutdown. Return freed blocks to the + * transaction reservation to counter this behavior. */ - if (ipnext == (XFS_IFORK_MAXEXT(ip, w) + 1)) - resblks += XFS_IFORK_MAXEXT(ip, w); - if (tipnext == (XFS_IFORK_MAXEXT(tip, w) + 1)) - resblks += XFS_IFORK_MAXEXT(tip, w); + flags |= XFS_TRANS_RES_FDBLKS; } - error = xfs_trans_alloc(mp, &M_RES(mp)->tr_write, resblks, 0, 0, &tp); + error = xfs_trans_alloc(mp, &M_RES(mp)->tr_write, resblks, 0, flags, + &tp); if (error) goto out_unlock; --- linux-azure-5.8-5.8.0.orig/fs/xfs/xfs_buf_item_recover.c +++ linux-azure-5.8-5.8.0/fs/xfs/xfs_buf_item_recover.c @@ -721,6 +721,8 @@ case XFS_ABTC_MAGIC: case XFS_RMAP_CRC_MAGIC: case XFS_REFC_CRC_MAGIC: + case XFS_FIBT_CRC_MAGIC: + case XFS_FIBT_MAGIC: case XFS_IBT_CRC_MAGIC: case XFS_IBT_MAGIC: { struct xfs_btree_block *btb = blk; --- linux-azure-5.8-5.8.0.orig/fs/xfs/xfs_file.c +++ linux-azure-5.8-5.8.0/fs/xfs/xfs_file.c @@ -1005,6 +1005,21 @@ return ret; } +/* Does this file, inode, or mount want synchronous writes? */ +static inline bool xfs_file_sync_writes(struct file *filp) +{ + struct xfs_inode *ip = XFS_I(file_inode(filp)); + + if (ip->i_mount->m_flags & XFS_MOUNT_WSYNC) + return true; + if (filp->f_flags & (__O_SYNC | O_DSYNC)) + return true; + if (IS_SYNC(file_inode(filp))) + return true; + + return false; +} + STATIC loff_t xfs_file_remap_range( struct file *file_in, @@ -1062,7 +1077,7 @@ if (ret) goto out_unlock; - if (mp->m_flags & XFS_MOUNT_WSYNC) + if (xfs_file_sync_writes(file_in) || xfs_file_sync_writes(file_out)) xfs_log_force_inode(dest); out_unlock: xfs_reflink_remap_unlock(file_in, file_out); @@ -1220,6 +1235,14 @@ return ret; } +static inline bool +xfs_is_write_fault( + struct vm_fault *vmf) +{ + return (vmf->flags & FAULT_FLAG_WRITE) && + (vmf->vma->vm_flags & VM_SHARED); +} + static vm_fault_t xfs_filemap_fault( struct vm_fault *vmf) @@ -1227,7 +1250,7 @@ /* DAX can shortcut the normal fault path on write faults! */ return __xfs_filemap_fault(vmf, PE_SIZE_PTE, IS_DAX(file_inode(vmf->vma->vm_file)) && - (vmf->flags & FAULT_FLAG_WRITE)); + xfs_is_write_fault(vmf)); } static vm_fault_t @@ -1240,7 +1263,7 @@ /* DAX can shortcut the normal fault path on write faults! */ return __xfs_filemap_fault(vmf, pe_size, - (vmf->flags & FAULT_FLAG_WRITE)); + xfs_is_write_fault(vmf)); } static vm_fault_t --- linux-azure-5.8-5.8.0.orig/fs/xfs/xfs_fsmap.c +++ linux-azure-5.8-5.8.0/fs/xfs/xfs_fsmap.c @@ -26,7 +26,7 @@ #include "xfs_rtalloc.h" /* Convert an xfs_fsmap to an fsmap. */ -void +static void xfs_fsmap_from_internal( struct fsmap *dest, struct xfs_fsmap *src) @@ -155,8 +155,7 @@ /* getfsmap query state */ struct xfs_getfsmap_info { struct xfs_fsmap_head *head; - xfs_fsmap_format_t formatter; /* formatting fn */ - void *format_arg; /* format buffer */ + struct fsmap *fsmap_recs; /* mapping records */ struct xfs_buf *agf_bp; /* AGF, for refcount queries */ xfs_daddr_t next_daddr; /* next daddr we expect */ u64 missing_owner; /* owner of holes */ @@ -224,6 +223,20 @@ return 0; } +static inline void +xfs_getfsmap_format( + struct xfs_mount *mp, + struct xfs_fsmap *xfm, + struct xfs_getfsmap_info *info) +{ + struct fsmap *rec; + + trace_xfs_getfsmap_mapping(mp, xfm); + + rec = &info->fsmap_recs[info->head->fmh_entries++]; + xfs_fsmap_from_internal(rec, xfm); +} + /* * Format a reverse mapping for getfsmap, having translated rm_startblock * into the appropriate daddr units. @@ -256,6 +269,9 @@ /* Are we just counting mappings? */ if (info->head->fmh_count == 0) { + if (info->head->fmh_entries == UINT_MAX) + return -ECANCELED; + if (rec_daddr > info->next_daddr) info->head->fmh_entries++; @@ -285,10 +301,7 @@ fmr.fmr_offset = 0; fmr.fmr_length = rec_daddr - info->next_daddr; fmr.fmr_flags = FMR_OF_SPECIAL_OWNER; - error = info->formatter(&fmr, info->format_arg); - if (error) - return error; - info->head->fmh_entries++; + xfs_getfsmap_format(mp, &fmr, info); } if (info->last) @@ -320,11 +333,8 @@ if (shared) fmr.fmr_flags |= FMR_OF_SHARED; } - error = info->formatter(&fmr, info->format_arg); - if (error) - return error; - info->head->fmh_entries++; + xfs_getfsmap_format(mp, &fmr, info); out: rec_daddr += XFS_FSB_TO_BB(mp, rec->rm_blockcount); if (info->next_daddr < rec_daddr) @@ -792,11 +802,11 @@ #endif /* CONFIG_XFS_RT */ /* - * Get filesystem's extents as described in head, and format for - * output. Calls formatter to fill the user's buffer until all - * extents are mapped, until the passed-in head->fmh_count slots have - * been filled, or until the formatter short-circuits the loop, if it - * is tracking filled-in extents on its own. + * Get filesystem's extents as described in head, and format for output. Fills + * in the supplied records array until there are no more reverse mappings to + * return or head.fmh_entries == head.fmh_count. In the second case, this + * function returns -ECANCELED to indicate that more records would have been + * returned. * * Key to Confusion * ---------------- @@ -816,8 +826,7 @@ xfs_getfsmap( struct xfs_mount *mp, struct xfs_fsmap_head *head, - xfs_fsmap_format_t formatter, - void *arg) + struct fsmap *fsmap_recs) { struct xfs_trans *tp = NULL; struct xfs_fsmap dkeys[2]; /* per-dev keys */ @@ -892,8 +901,7 @@ info.next_daddr = head->fmh_keys[0].fmr_physical + head->fmh_keys[0].fmr_length; - info.formatter = formatter; - info.format_arg = arg; + info.fsmap_recs = fsmap_recs; info.head = head; /* --- linux-azure-5.8-5.8.0.orig/fs/xfs/xfs_fsmap.h +++ linux-azure-5.8-5.8.0/fs/xfs/xfs_fsmap.h @@ -27,13 +27,9 @@ struct xfs_fsmap fmh_keys[2]; /* low and high keys */ }; -void xfs_fsmap_from_internal(struct fsmap *dest, struct xfs_fsmap *src); void xfs_fsmap_to_internal(struct xfs_fsmap *dest, struct fsmap *src); -/* fsmap to userspace formatter - copy to user & advance pointer */ -typedef int (*xfs_fsmap_format_t)(struct xfs_fsmap *, void *); - int xfs_getfsmap(struct xfs_mount *mp, struct xfs_fsmap_head *head, - xfs_fsmap_format_t formatter, void *arg); + struct fsmap *out_recs); #endif /* __XFS_FSMAP_H__ */ --- linux-azure-5.8-5.8.0.orig/fs/xfs/xfs_icache.c +++ linux-azure-5.8-5.8.0/fs/xfs/xfs_icache.c @@ -1141,7 +1141,7 @@ goto out_ifunlock; xfs_iunpin_wait(ip); } - if (xfs_iflags_test(ip, XFS_ISTALE) || xfs_inode_clean(ip)) { + if (xfs_inode_clean(ip)) { xfs_ifunlock(ip); goto reclaim; } @@ -1228,6 +1228,7 @@ xfs_ilock(ip, XFS_ILOCK_EXCL); xfs_qm_dqdetach(ip); xfs_iunlock(ip, XFS_ILOCK_EXCL); + ASSERT(xfs_inode_clean(ip)); __xfs_inode_free(ip); return error; --- linux-azure-5.8-5.8.0.orig/fs/xfs/xfs_inode.c +++ linux-azure-5.8-5.8.0/fs/xfs/xfs_inode.c @@ -1740,10 +1740,31 @@ return error; } + /* + * We do not hold the inode locked across the entire rolling transaction + * here. We only need to hold it for the first transaction that + * xfs_ifree() builds, which may mark the inode XFS_ISTALE if the + * underlying cluster buffer is freed. Relogging an XFS_ISTALE inode + * here breaks the relationship between cluster buffer invalidation and + * stale inode invalidation on cluster buffer item journal commit + * completion, and can result in leaving dirty stale inodes hanging + * around in memory. + * + * We have no need for serialising this inode operation against other + * operations - we freed the inode and hence reallocation is required + * and that will serialise on reallocating the space the deferops need + * to free. Hence we can unlock the inode on the first commit of + * the transaction rather than roll it right through the deferops. This + * avoids relogging the XFS_ISTALE inode. + * + * We check that xfs_ifree() hasn't grown an internal transaction roll + * by asserting that the inode is still locked when it returns. + */ xfs_ilock(ip, XFS_ILOCK_EXCL); - xfs_trans_ijoin(tp, ip, 0); + xfs_trans_ijoin(tp, ip, XFS_ILOCK_EXCL); error = xfs_ifree(tp, ip); + ASSERT(xfs_isilocked(ip, XFS_ILOCK_EXCL)); if (error) { /* * If we fail to free the inode, shut down. The cancel @@ -1756,7 +1777,6 @@ xfs_force_shutdown(mp, SHUTDOWN_META_IO_ERROR); } xfs_trans_cancel(tp); - xfs_iunlock(ip, XFS_ILOCK_EXCL); return error; } @@ -1774,7 +1794,6 @@ xfs_notice(mp, "%s: xfs_trans_commit returned error %d", __func__, error); - xfs_iunlock(ip, XFS_ILOCK_EXCL); return 0; } --- linux-azure-5.8-5.8.0.orig/fs/xfs/xfs_ioctl.c +++ linux-azure-5.8-5.8.0/fs/xfs/xfs_ioctl.c @@ -1707,39 +1707,17 @@ return error; } -struct getfsmap_info { - struct xfs_mount *mp; - struct fsmap_head __user *data; - unsigned int idx; - __u32 last_flags; -}; - -STATIC int -xfs_getfsmap_format(struct xfs_fsmap *xfm, void *priv) -{ - struct getfsmap_info *info = priv; - struct fsmap fm; - - trace_xfs_getfsmap_mapping(info->mp, xfm); - - info->last_flags = xfm->fmr_flags; - xfs_fsmap_from_internal(&fm, xfm); - if (copy_to_user(&info->data->fmh_recs[info->idx++], &fm, - sizeof(struct fsmap))) - return -EFAULT; - - return 0; -} - STATIC int xfs_ioc_getfsmap( struct xfs_inode *ip, struct fsmap_head __user *arg) { - struct getfsmap_info info = { NULL }; struct xfs_fsmap_head xhead = {0}; struct fsmap_head head; - bool aborted = false; + struct fsmap *recs; + unsigned int count; + __u32 last_flags = 0; + bool done = false; int error; if (copy_from_user(&head, arg, sizeof(struct fsmap_head))) @@ -1751,38 +1729,112 @@ sizeof(head.fmh_keys[1].fmr_reserved))) return -EINVAL; + /* + * Use an internal memory buffer so that we don't have to copy fsmap + * data to userspace while holding locks. Start by trying to allocate + * up to 128k for the buffer, but fall back to a single page if needed. + */ + count = min_t(unsigned int, head.fmh_count, + 131072 / sizeof(struct fsmap)); + recs = kvzalloc(count * sizeof(struct fsmap), GFP_KERNEL); + if (!recs) { + count = min_t(unsigned int, head.fmh_count, + PAGE_SIZE / sizeof(struct fsmap)); + recs = kvzalloc(count * sizeof(struct fsmap), GFP_KERNEL); + if (!recs) + return -ENOMEM; + } + xhead.fmh_iflags = head.fmh_iflags; - xhead.fmh_count = head.fmh_count; xfs_fsmap_to_internal(&xhead.fmh_keys[0], &head.fmh_keys[0]); xfs_fsmap_to_internal(&xhead.fmh_keys[1], &head.fmh_keys[1]); trace_xfs_getfsmap_low_key(ip->i_mount, &xhead.fmh_keys[0]); trace_xfs_getfsmap_high_key(ip->i_mount, &xhead.fmh_keys[1]); - info.mp = ip->i_mount; - info.data = arg; - error = xfs_getfsmap(ip->i_mount, &xhead, xfs_getfsmap_format, &info); - if (error == -ECANCELED) { - error = 0; - aborted = true; - } else if (error) - return error; - - /* If we didn't abort, set the "last" flag in the last fmx */ - if (!aborted && info.idx) { - info.last_flags |= FMR_OF_LAST; - if (copy_to_user(&info.data->fmh_recs[info.idx - 1].fmr_flags, - &info.last_flags, sizeof(info.last_flags))) - return -EFAULT; + head.fmh_entries = 0; + do { + struct fsmap __user *user_recs; + struct fsmap *last_rec; + + user_recs = &arg->fmh_recs[head.fmh_entries]; + xhead.fmh_entries = 0; + xhead.fmh_count = min_t(unsigned int, count, + head.fmh_count - head.fmh_entries); + + /* Run query, record how many entries we got. */ + error = xfs_getfsmap(ip->i_mount, &xhead, recs); + switch (error) { + case 0: + /* + * There are no more records in the result set. Copy + * whatever we got to userspace and break out. + */ + done = true; + break; + case -ECANCELED: + /* + * The internal memory buffer is full. Copy whatever + * records we got to userspace and go again if we have + * not yet filled the userspace buffer. + */ + error = 0; + break; + default: + goto out_free; + } + head.fmh_entries += xhead.fmh_entries; + head.fmh_oflags = xhead.fmh_oflags; + + /* + * If the caller wanted a record count or there aren't any + * new records to return, we're done. + */ + if (head.fmh_count == 0 || xhead.fmh_entries == 0) + break; + + /* Copy all the records we got out to userspace. */ + if (copy_to_user(user_recs, recs, + xhead.fmh_entries * sizeof(struct fsmap))) { + error = -EFAULT; + goto out_free; + } + + /* Remember the last record flags we copied to userspace. */ + last_rec = &recs[xhead.fmh_entries - 1]; + last_flags = last_rec->fmr_flags; + + /* Set up the low key for the next iteration. */ + xfs_fsmap_to_internal(&xhead.fmh_keys[0], last_rec); + trace_xfs_getfsmap_low_key(ip->i_mount, &xhead.fmh_keys[0]); + } while (!done && head.fmh_entries < head.fmh_count); + + /* + * If there are no more records in the query result set and we're not + * in counting mode, mark the last record returned with the LAST flag. + */ + if (done && head.fmh_count > 0 && head.fmh_entries > 0) { + struct fsmap __user *user_rec; + + last_flags |= FMR_OF_LAST; + user_rec = &arg->fmh_recs[head.fmh_entries - 1]; + + if (copy_to_user(&user_rec->fmr_flags, &last_flags, + sizeof(last_flags))) { + error = -EFAULT; + goto out_free; + } } /* copy back header */ - head.fmh_entries = xhead.fmh_entries; - head.fmh_oflags = xhead.fmh_oflags; - if (copy_to_user(arg, &head, sizeof(struct fsmap_head))) - return -EFAULT; + if (copy_to_user(arg, &head, sizeof(struct fsmap_head))) { + error = -EFAULT; + goto out_free; + } - return 0; +out_free: + kmem_free(recs); + return error; } STATIC int --- linux-azure-5.8-5.8.0.orig/fs/xfs/xfs_iops.c +++ linux-azure-5.8-5.8.0/fs/xfs/xfs_iops.c @@ -911,6 +911,16 @@ error = iomap_zero_range(inode, oldsize, newsize - oldsize, &did_zeroing, &xfs_buffered_write_iomap_ops); } else { + /* + * iomap won't detect a dirty page over an unwritten block (or a + * cow block over a hole) and subsequently skips zeroing the + * newly post-EOF portion of the page. Flush the new EOF to + * convert the block before the pagecache truncate. + */ + error = filemap_write_and_wait_range(inode->i_mapping, newsize, + newsize); + if (error) + return error; error = iomap_truncate_page(inode, newsize, &did_zeroing, &xfs_buffered_write_iomap_ops); } --- linux-azure-5.8-5.8.0.orig/fs/xfs/xfs_iwalk.c +++ linux-azure-5.8-5.8.0/fs/xfs/xfs_iwalk.c @@ -55,6 +55,9 @@ /* Where do we start the traversal? */ xfs_ino_t startino; + /* What was the last inode number we saw when iterating the inobt? */ + xfs_ino_t lastino; + /* Array of inobt records we cache. */ struct xfs_inobt_rec_incore *recs; @@ -301,6 +304,9 @@ if (XFS_IS_CORRUPT(mp, *has_more != 1)) return -EFSCORRUPTED; + iwag->lastino = XFS_AGINO_TO_INO(mp, agno, + irec->ir_startino + XFS_INODES_PER_CHUNK - 1); + /* * If the LE lookup yielded an inobt record before the cursor position, * skip it and see if there's another one after it. @@ -347,15 +353,17 @@ struct xfs_mount *mp = iwag->mp; struct xfs_trans *tp = iwag->tp; struct xfs_inobt_rec_incore *irec; - xfs_agino_t restart; + xfs_agino_t next_agino; int error; + next_agino = XFS_INO_TO_AGINO(mp, iwag->lastino) + 1; + ASSERT(iwag->nr_recs > 0); /* Delete cursor but remember the last record we cached... */ xfs_iwalk_del_inobt(tp, curpp, agi_bpp, 0); irec = &iwag->recs[iwag->nr_recs - 1]; - restart = irec->ir_startino + XFS_INODES_PER_CHUNK - 1; + ASSERT(next_agino == irec->ir_startino + XFS_INODES_PER_CHUNK); error = xfs_iwalk_ag_recs(iwag); if (error) @@ -372,7 +380,7 @@ if (error) return error; - return xfs_inobt_lookup(*curpp, restart, XFS_LOOKUP_GE, has_more); + return xfs_inobt_lookup(*curpp, next_agino, XFS_LOOKUP_GE, has_more); } /* Walk all inodes in a single AG, from @iwag->startino to the end of the AG. */ @@ -396,6 +404,7 @@ while (!error && has_more) { struct xfs_inobt_rec_incore *irec; + xfs_ino_t rec_fsino; cond_resched(); if (xfs_pwork_want_abort(&iwag->pwork)) @@ -407,6 +416,15 @@ if (error || !has_more) break; + /* Make sure that we always move forward. */ + rec_fsino = XFS_AGINO_TO_INO(mp, agno, irec->ir_startino); + if (iwag->lastino != NULLFSINO && + XFS_IS_CORRUPT(mp, iwag->lastino >= rec_fsino)) { + error = -EFSCORRUPTED; + goto out; + } + iwag->lastino = rec_fsino + XFS_INODES_PER_CHUNK - 1; + /* No allocated inodes in this chunk; skip it. */ if (iwag->skip_empty && irec->ir_freecount == irec->ir_count) { error = xfs_btree_increment(cur, 0, &has_more); @@ -535,6 +553,7 @@ .trim_start = 1, .skip_empty = 1, .pwork = XFS_PWORK_SINGLE_THREADED, + .lastino = NULLFSINO, }; xfs_agnumber_t agno = XFS_INO_TO_AGNO(mp, startino); int error; @@ -623,6 +642,7 @@ iwag->data = data; iwag->startino = startino; iwag->sz_recs = xfs_iwalk_prefetch(inode_records); + iwag->lastino = NULLFSINO; xfs_pwork_queue(&pctl, &iwag->pwork); startino = XFS_AGINO_TO_INO(mp, agno + 1, 0); if (flags & XFS_INOBT_WALK_SAME_AG) @@ -696,6 +716,7 @@ .startino = startino, .sz_recs = xfs_inobt_walk_prefetch(inobt_records), .pwork = XFS_PWORK_SINGLE_THREADED, + .lastino = NULLFSINO, }; xfs_agnumber_t agno = XFS_INO_TO_AGNO(mp, startino); int error; --- linux-azure-5.8-5.8.0.orig/fs/xfs/xfs_log_recover.c +++ linux-azure-5.8-5.8.0/fs/xfs/xfs_log_recover.c @@ -2905,7 +2905,8 @@ xlog_valid_rec_header( struct xlog *log, struct xlog_rec_header *rhead, - xfs_daddr_t blkno) + xfs_daddr_t blkno, + int bufsize) { int hlen; @@ -2921,10 +2922,14 @@ return -EFSCORRUPTED; } - /* LR body must have data or it wouldn't have been written */ + /* + * LR body must have data (or it wouldn't have been written) + * and h_len must not be greater than LR buffer size. + */ hlen = be32_to_cpu(rhead->h_len); - if (XFS_IS_CORRUPT(log->l_mp, hlen <= 0 || hlen > INT_MAX)) + if (XFS_IS_CORRUPT(log->l_mp, hlen <= 0 || hlen > bufsize)) return -EFSCORRUPTED; + if (XFS_IS_CORRUPT(log->l_mp, blkno > log->l_logBBsize || blkno > INT_MAX)) return -EFSCORRUPTED; @@ -2985,9 +2990,6 @@ goto bread_err1; rhead = (xlog_rec_header_t *)offset; - error = xlog_valid_rec_header(log, rhead, tail_blk); - if (error) - goto bread_err1; /* * xfsprogs has a bug where record length is based on lsunit but @@ -3002,21 +3004,18 @@ */ h_size = be32_to_cpu(rhead->h_size); h_len = be32_to_cpu(rhead->h_len); - if (h_len > h_size) { - if (h_len <= log->l_mp->m_logbsize && - be32_to_cpu(rhead->h_num_logops) == 1) { - xfs_warn(log->l_mp, + if (h_len > h_size && h_len <= log->l_mp->m_logbsize && + rhead->h_num_logops == cpu_to_be32(1)) { + xfs_warn(log->l_mp, "invalid iclog size (%d bytes), using lsunit (%d bytes)", - h_size, log->l_mp->m_logbsize); - h_size = log->l_mp->m_logbsize; - } else { - XFS_ERROR_REPORT(__func__, XFS_ERRLEVEL_LOW, - log->l_mp); - error = -EFSCORRUPTED; - goto bread_err1; - } + h_size, log->l_mp->m_logbsize); + h_size = log->l_mp->m_logbsize; } + error = xlog_valid_rec_header(log, rhead, tail_blk, h_size); + if (error) + goto bread_err1; + if ((be32_to_cpu(rhead->h_version) & XLOG_VERSION_2) && (h_size > XLOG_HEADER_CYCLE_SIZE)) { hblks = h_size / XLOG_HEADER_CYCLE_SIZE; @@ -3097,7 +3096,7 @@ } rhead = (xlog_rec_header_t *)offset; error = xlog_valid_rec_header(log, rhead, - split_hblks ? blk_no : 0); + split_hblks ? blk_no : 0, h_size); if (error) goto bread_err2; @@ -3178,7 +3177,7 @@ goto bread_err2; rhead = (xlog_rec_header_t *)offset; - error = xlog_valid_rec_header(log, rhead, blk_no); + error = xlog_valid_rec_header(log, rhead, blk_no, h_size); if (error) goto bread_err2; --- linux-azure-5.8-5.8.0.orig/fs/xfs/xfs_mount.c +++ linux-azure-5.8-5.8.0/fs/xfs/xfs_mount.c @@ -195,21 +195,26 @@ } pag = kmem_zalloc(sizeof(*pag), KM_MAYFAIL); - if (!pag) + if (!pag) { + error = -ENOMEM; goto out_unwind_new_pags; + } pag->pag_agno = index; pag->pag_mount = mp; spin_lock_init(&pag->pag_ici_lock); mutex_init(&pag->pag_ici_reclaim_lock); INIT_RADIX_TREE(&pag->pag_ici_root, GFP_ATOMIC); - if (xfs_buf_hash_init(pag)) + + error = xfs_buf_hash_init(pag); + if (error) goto out_free_pag; init_waitqueue_head(&pag->pagb_wait); spin_lock_init(&pag->pagb_lock); pag->pagb_count = 0; pag->pagb_tree = RB_ROOT; - if (radix_tree_preload(GFP_NOFS)) + error = radix_tree_preload(GFP_NOFS); + if (error) goto out_hash_destroy; spin_lock(&mp->m_perag_lock); --- linux-azure-5.8-5.8.0.orig/fs/xfs/xfs_pnfs.c +++ linux-azure-5.8-5.8.0/fs/xfs/xfs_pnfs.c @@ -134,7 +134,7 @@ goto out_unlock; error = invalidate_inode_pages2(inode->i_mapping); if (WARN_ON_ONCE(error)) - return error; + goto out_unlock; end_fsb = XFS_B_TO_FSB(mp, (xfs_ufsize_t)offset + length); offset_fsb = XFS_B_TO_FSBT(mp, offset); --- linux-azure-5.8-5.8.0.orig/fs/xfs/xfs_qm.c +++ linux-azure-5.8-5.8.0/fs/xfs/xfs_qm.c @@ -148,6 +148,7 @@ error = xfs_bwrite(bp); xfs_buf_relse(bp); } else if (error == -EAGAIN) { + dqp->dq_flags &= ~XFS_DQ_FREEING; goto out_unlock; } xfs_dqflock(dqp); --- linux-azure-5.8-5.8.0.orig/fs/xfs/xfs_refcount_item.c +++ linux-azure-5.8-5.8.0/fs/xfs/xfs_refcount_item.c @@ -554,7 +554,7 @@ } xfs_refcount_finish_one_cleanup(tp, rcur, error); - xfs_defer_move(parent_tp, tp); + xfs_defer_capture(parent_tp, tp); error = xfs_trans_commit(tp); return error; --- linux-azure-5.8-5.8.0.orig/fs/xfs/xfs_reflink.c +++ linux-azure-5.8-5.8.0/fs/xfs/xfs_reflink.c @@ -1003,6 +1003,7 @@ xfs_filblks_t rlen; xfs_filblks_t unmap_len; xfs_off_t newlen; + int64_t qres; int error; unmap_len = irec->br_startoff + irec->br_blockcount - destoff; @@ -1025,13 +1026,19 @@ xfs_ilock(ip, XFS_ILOCK_EXCL); xfs_trans_ijoin(tp, ip, 0); - /* If we're not just clearing space, then do we have enough quota? */ - if (real_extent) { - error = xfs_trans_reserve_quota_nblks(tp, ip, - irec->br_blockcount, 0, XFS_QMOPT_RES_REGBLKS); - if (error) - goto out_cancel; - } + /* + * Reserve quota for this operation. We don't know if the first unmap + * in the dest file will cause a bmap btree split, so we always reserve + * at least enough blocks for that split. If the extent being mapped + * in is written, we need to reserve quota for that too. + */ + qres = XFS_EXTENTADD_SPACE_RES(mp, XFS_DATA_FORK); + if (real_extent) + qres += irec->br_blockcount; + error = xfs_trans_reserve_quota_nblks(tp, ip, qres, 0, + XFS_QMOPT_RES_REGBLKS); + if (error) + goto out_cancel; trace_xfs_reflink_remap(ip, irec->br_startoff, irec->br_blockcount, irec->br_startblock); --- linux-azure-5.8-5.8.0.orig/fs/xfs/xfs_rtalloc.c +++ linux-azure-5.8-5.8.0/fs/xfs/xfs_rtalloc.c @@ -247,6 +247,9 @@ end = XFS_BLOCKTOBIT(mp, bbno + 1) - 1; i <= end; i++) { + /* Make sure we don't scan off the end of the rt volume. */ + maxlen = min(mp->m_sb.sb_rextents, i + maxlen) - i; + /* * See if there's a free extent of maxlen starting at i. * If it's not so then next will contain the first non-free. @@ -442,6 +445,14 @@ */ if (bno >= mp->m_sb.sb_rextents) bno = mp->m_sb.sb_rextents - 1; + + /* Make sure we don't run off the end of the rt volume. */ + maxlen = min(mp->m_sb.sb_rextents, bno + maxlen) - bno; + if (maxlen < minlen) { + *rtblock = NULLRTBLOCK; + return 0; + } + /* * Try the exact allocation first. */ @@ -767,8 +778,14 @@ struct xfs_bmbt_irec map; /* block map output */ int nmap; /* number of block maps */ int resblks; /* space reservation */ + enum xfs_blft buf_type; struct xfs_trans *tp; + if (ip == mp->m_rsumip) + buf_type = XFS_BLFT_RTSUMMARY_BUF; + else + buf_type = XFS_BLFT_RTBITMAP_BUF; + /* * Allocate space to the file, as necessary. */ @@ -830,6 +847,9 @@ mp->m_bsize, 0, &bp); if (error) goto out_trans_cancel; + + xfs_trans_buf_set_type(tp, bp, buf_type); + bp->b_ops = &xfs_rtbuf_ops; memset(bp->b_addr, 0, mp->m_sb.sb_blocksize); xfs_trans_log_buf(tp, bp, 0, mp->m_sb.sb_blocksize - 1); /* @@ -1007,10 +1027,13 @@ xfs_ilock(mp->m_rbmip, XFS_ILOCK_EXCL); xfs_trans_ijoin(tp, mp->m_rbmip, XFS_ILOCK_EXCL); /* - * Update the bitmap inode's size. + * Update the bitmap inode's size ondisk and incore. We need + * to update the incore size so that inode inactivation won't + * punch what it thinks are "posteof" blocks. */ mp->m_rbmip->i_d.di_size = nsbp->sb_rbmblocks * nsbp->sb_blocksize; + i_size_write(VFS_I(mp->m_rbmip), mp->m_rbmip->i_d.di_size); xfs_trans_log_inode(tp, mp->m_rbmip, XFS_ILOG_CORE); /* * Get the summary inode into the transaction. @@ -1018,9 +1041,12 @@ xfs_ilock(mp->m_rsumip, XFS_ILOCK_EXCL); xfs_trans_ijoin(tp, mp->m_rsumip, XFS_ILOCK_EXCL); /* - * Update the summary inode's size. + * Update the summary inode's size. We need to update the + * incore size so that inode inactivation won't punch what it + * thinks are "posteof" blocks. */ mp->m_rsumip->i_d.di_size = nmp->m_rsumsize; + i_size_write(VFS_I(mp->m_rsumip), mp->m_rsumip->i_d.di_size); xfs_trans_log_inode(tp, mp->m_rsumip, XFS_ILOG_CORE); /* * Copy summary data from old to new sizes. --- linux-azure-5.8-5.8.0.orig/fs/xfs/xfs_sysfs.h +++ linux-azure-5.8-5.8.0/fs/xfs/xfs_sysfs.h @@ -32,9 +32,11 @@ struct xfs_kobj *parent_kobj, const char *name) { + struct kobject *parent; + + parent = parent_kobj ? &parent_kobj->kobject : NULL; init_completion(&kobj->complete); - return kobject_init_and_add(&kobj->kobject, ktype, - &parent_kobj->kobject, "%s", name); + return kobject_init_and_add(&kobj->kobject, ktype, parent, "%s", name); } static inline void --- linux-azure-5.8-5.8.0.orig/fs/xfs/xfs_trans.c +++ linux-azure-5.8-5.8.0/fs/xfs/xfs_trans.c @@ -107,7 +107,8 @@ ntp->t_flags = XFS_TRANS_PERM_LOG_RES | (tp->t_flags & XFS_TRANS_RESERVE) | - (tp->t_flags & XFS_TRANS_NO_WRITECOUNT); + (tp->t_flags & XFS_TRANS_NO_WRITECOUNT) | + (tp->t_flags & XFS_TRANS_RES_FDBLKS); /* We gave our writer reference to the new transaction */ tp->t_flags |= XFS_TRANS_NO_WRITECOUNT; ntp->t_ticket = xfs_log_ticket_get(tp->t_ticket); @@ -272,6 +273,8 @@ */ WARN_ON(resp->tr_logres > 0 && mp->m_super->s_writers.frozen == SB_FREEZE_COMPLETE); + ASSERT(!(flags & XFS_TRANS_RES_FDBLKS) || + xfs_sb_version_haslazysbcount(&mp->m_sb)); tp->t_magic = XFS_TRANS_HEADER_MAGIC; tp->t_flags = flags; @@ -365,6 +368,20 @@ tp->t_blk_res_used += (uint)-delta; if (tp->t_blk_res_used > tp->t_blk_res) xfs_force_shutdown(mp, SHUTDOWN_CORRUPT_INCORE); + } else if (delta > 0 && (tp->t_flags & XFS_TRANS_RES_FDBLKS)) { + int64_t blkres_delta; + + /* + * Return freed blocks directly to the reservation + * instead of the global pool, being careful not to + * overflow the trans counter. This is used to preserve + * reservation across chains of transaction rolls that + * repeatedly free and allocate blocks. + */ + blkres_delta = min_t(int64_t, delta, + UINT_MAX - tp->t_blk_res); + tp->t_blk_res += blkres_delta; + delta -= blkres_delta; } tp->t_fdblocks_delta += delta; if (xfs_sb_version_haslazysbcount(&mp->m_sb)) --- linux-azure-5.8-5.8.0.orig/fs/xfs/xfs_trans_dquot.c +++ linux-azure-5.8-5.8.0/fs/xfs/xfs_trans_dquot.c @@ -647,7 +647,7 @@ } } if (ninos > 0) { - total_count = be64_to_cpu(dqp->q_core.d_icount) + ninos; + total_count = dqp->q_res_icount + ninos; timer = be32_to_cpu(dqp->q_core.d_itimer); warns = be16_to_cpu(dqp->q_core.d_iwarns); warnlimit = defq->iwarnlimit; --- linux-azure-5.8-5.8.0.orig/fs/zonefs/Kconfig +++ linux-azure-5.8-5.8.0/fs/zonefs/Kconfig @@ -3,6 +3,7 @@ depends on BLOCK depends on BLK_DEV_ZONED select FS_IOMAP + select CRC32 help zonefs is a simple file system which exposes zones of a zoned block device (e.g. host-managed or host-aware SMR disk drives) as files. --- linux-azure-5.8-5.8.0.orig/fs/zonefs/super.c +++ linux-azure-5.8-5.8.0/fs/zonefs/super.c @@ -217,6 +217,9 @@ } inode->i_mode &= ~0222; return i_size_read(inode); + case BLK_ZONE_COND_FULL: + /* The write pointer of full zones is invalid. */ + return zi->i_max_size; default: if (zi->i_ztype == ZONEFS_ZTYPE_CNV) return zi->i_max_size; @@ -628,21 +631,23 @@ bio->bi_opf |= REQ_FUA; ret = bio_iov_iter_get_pages(bio, from); - if (unlikely(ret)) { - bio_io_error(bio); - return ret; - } + if (unlikely(ret)) + goto out_release; + size = bio->bi_iter.bi_size; - task_io_account_write(ret); + task_io_account_write(size); if (iocb->ki_flags & IOCB_HIPRI) bio_set_polled(bio, iocb); ret = submit_bio_wait(bio); + zonefs_file_write_dio_end_io(iocb, size, ret, 0); + +out_release: + bio_release_pages(bio, false); bio_put(bio); - zonefs_file_write_dio_end_io(iocb, size, ret, 0); if (ret >= 0) { iocb->ki_pos += size; return size; --- linux-azure-5.8-5.8.0.orig/include/acpi/acexcep.h +++ linux-azure-5.8-5.8.0/include/acpi/acexcep.h @@ -59,11 +59,11 @@ #define AE_OK (acpi_status) 0x0000 -#define ACPI_ENV_EXCEPTION(status) (status & AE_CODE_ENVIRONMENTAL) -#define ACPI_AML_EXCEPTION(status) (status & AE_CODE_AML) -#define ACPI_PROG_EXCEPTION(status) (status & AE_CODE_PROGRAMMER) -#define ACPI_TABLE_EXCEPTION(status) (status & AE_CODE_ACPI_TABLES) -#define ACPI_CNTL_EXCEPTION(status) (status & AE_CODE_CONTROL) +#define ACPI_ENV_EXCEPTION(status) (((status) & AE_CODE_MASK) == AE_CODE_ENVIRONMENTAL) +#define ACPI_AML_EXCEPTION(status) (((status) & AE_CODE_MASK) == AE_CODE_AML) +#define ACPI_PROG_EXCEPTION(status) (((status) & AE_CODE_MASK) == AE_CODE_PROGRAMMER) +#define ACPI_TABLE_EXCEPTION(status) (((status) & AE_CODE_MASK) == AE_CODE_ACPI_TABLES) +#define ACPI_CNTL_EXCEPTION(status) (((status) & AE_CODE_MASK) == AE_CODE_CONTROL) /* * Environmental exceptions --- linux-azure-5.8-5.8.0.orig/include/acpi/acpi_bus.h +++ linux-azure-5.8-5.8.0/include/acpi/acpi_bus.h @@ -615,7 +615,6 @@ bool acpi_pm_device_can_wakeup(struct device *dev); int acpi_pm_device_sleep_state(struct device *, int *, int); int acpi_pm_set_device_wakeup(struct device *dev, bool enable); -int acpi_pm_set_bridge_wakeup(struct device *dev, bool enable); #else static inline void acpi_pm_wakeup_event(struct device *dev) { @@ -646,10 +645,6 @@ { return -ENODEV; } -static inline int acpi_pm_set_bridge_wakeup(struct device *dev, bool enable) -{ - return -ENODEV; -} #endif #ifdef CONFIG_ACPI_SYSTEM_POWER_STATES_SUPPORT --- linux-azure-5.8-5.8.0.orig/include/asm-generic/Kbuild +++ linux-azure-5.8-5.8.0/include/asm-generic/Kbuild @@ -35,6 +35,7 @@ mandatory-y += kprobes.h mandatory-y += linkage.h mandatory-y += local.h +mandatory-y += local64.h mandatory-y += mm-arch-hooks.h mandatory-y += mmiowb.h mandatory-y += mmu.h --- linux-azure-5.8-5.8.0.orig/include/asm-generic/bitops/atomic.h +++ linux-azure-5.8-5.8.0/include/asm-generic/bitops/atomic.h @@ -11,19 +11,19 @@ * See Documentation/atomic_bitops.txt for details. */ -static inline void set_bit(unsigned int nr, volatile unsigned long *p) +static __always_inline void set_bit(unsigned int nr, volatile unsigned long *p) { p += BIT_WORD(nr); atomic_long_or(BIT_MASK(nr), (atomic_long_t *)p); } -static inline void clear_bit(unsigned int nr, volatile unsigned long *p) +static __always_inline void clear_bit(unsigned int nr, volatile unsigned long *p) { p += BIT_WORD(nr); atomic_long_andnot(BIT_MASK(nr), (atomic_long_t *)p); } -static inline void change_bit(unsigned int nr, volatile unsigned long *p) +static __always_inline void change_bit(unsigned int nr, volatile unsigned long *p) { p += BIT_WORD(nr); atomic_long_xor(BIT_MASK(nr), (atomic_long_t *)p); --- linux-azure-5.8-5.8.0.orig/include/asm-generic/vmlinux.lds.h +++ linux-azure-5.8-5.8.0/include/asm-generic/vmlinux.lds.h @@ -375,6 +375,7 @@ */ #ifndef RO_AFTER_INIT_DATA #define RO_AFTER_INIT_DATA \ + . = ALIGN(8); \ __start_ro_after_init = .; \ *(.data..ro_after_init) \ JUMP_TABLE_DATA \ @@ -430,7 +431,7 @@ } \ \ /* Built-in firmware blobs */ \ - .builtin_fw : AT(ADDR(.builtin_fw) - LOAD_OFFSET) { \ + .builtin_fw : AT(ADDR(.builtin_fw) - LOAD_OFFSET) ALIGN(8) { \ __start_builtin_fw = .; \ KEEP(*(.builtin_fw)) \ __end_builtin_fw = .; \ @@ -560,7 +561,10 @@ */ #define TEXT_TEXT \ ALIGN_FUNCTION(); \ - *(.text.hot TEXT_MAIN .text.fixup .text.unlikely) \ + *(.text.hot .text.hot.*) \ + *(TEXT_MAIN .text.fixup) \ + *(.text.unlikely .text.unlikely.*) \ + *(.text.unknown .text.unknown.*) \ NOINSTR_TEXT \ *(.text..refcount) \ *(.ref.text) \ @@ -640,7 +644,7 @@ #define BTF \ .BTF : AT(ADDR(.BTF) - LOAD_OFFSET) { \ __start_BTF = .; \ - *(.BTF) \ + KEEP(*(.BTF)) \ __stop_BTF = .; \ } #else @@ -784,8 +788,13 @@ /* DWARF 4 */ \ .debug_types 0 : { *(.debug_types) } \ /* DWARF 5 */ \ + .debug_addr 0 : { *(.debug_addr) } \ + .debug_line_str 0 : { *(.debug_line_str) } \ + .debug_loclists 0 : { *(.debug_loclists) } \ .debug_macro 0 : { *(.debug_macro) } \ - .debug_addr 0 : { *(.debug_addr) } + .debug_names 0 : { *(.debug_names) } \ + .debug_rnglists 0 : { *(.debug_rnglists) } \ + .debug_str_offsets 0 : { *(.debug_str_offsets) } /* Stabs debugging sections. */ #define STABS_DEBUG \ --- linux-azure-5.8-5.8.0.orig/include/crypto/if_alg.h +++ linux-azure-5.8-5.8.0/include/crypto/if_alg.h @@ -135,6 +135,7 @@ * SG? * @enc: Cryptographic operation to be performed when * recvmsg is invoked. + * @init: True if metadata has been sent. * @len: Length of memory allocated for this data structure. */ struct af_alg_ctx { @@ -151,6 +152,7 @@ bool more; bool merge; bool enc; + bool init; unsigned int len; }; @@ -226,7 +228,7 @@ void af_alg_pull_tsgl(struct sock *sk, size_t used, struct scatterlist *dst, size_t dst_offset); void af_alg_wmem_wakeup(struct sock *sk); -int af_alg_wait_for_data(struct sock *sk, unsigned flags); +int af_alg_wait_for_data(struct sock *sk, unsigned flags, unsigned min); int af_alg_sendmsg(struct socket *sock, struct msghdr *msg, size_t size, unsigned int ivsize); ssize_t af_alg_sendpage(struct socket *sock, struct page *page, --- linux-azure-5.8-5.8.0.orig/include/drm/drm_dp_helper.h +++ linux-azure-5.8-5.8.0/include/drm/drm_dp_helper.h @@ -1697,6 +1697,14 @@ * the DP_MAX_LINK_RATE register reporting a lower max multiplier. */ DP_DPCD_QUIRK_CAN_DO_MAX_LINK_RATE_3_24_GBPS, + /** + * @DP_QUIRK_FORCE_PSR_CHIP_DEFAULT + * + * PSR was disabled by default in Ubuntu 5.0 kernels and on, but some + * platforms might be depending on them. If so, use per-chip default to + * probe that automatically. + */ + DP_QUIRK_FORCE_PSR_CHIP_DEFAULT, }; /** --- linux-azure-5.8-5.8.0.orig/include/drm/drm_dp_mst_helper.h +++ linux-azure-5.8-5.8.0/include/drm/drm_dp_mst_helper.h @@ -726,6 +726,7 @@ struct edid *drm_dp_mst_get_edid(struct drm_connector *connector, struct drm_dp_mst_topology_mgr *mgr, struct drm_dp_mst_port *port); +int drm_dp_get_vc_payload_bw(int link_rate, int link_lane_count); int drm_dp_calc_pbn_mode(int clock, int bpp, bool dsc); --- linux-azure-5.8-5.8.0.orig/include/drm/drm_hdcp.h +++ linux-azure-5.8-5.8.0/include/drm/drm_hdcp.h @@ -29,6 +29,9 @@ /* Slave address for the HDCP registers in the receiver */ #define DRM_HDCP_DDC_ADDR 0x3A +/* Value to use at the end of the SHA-1 bytestream used for repeaters */ +#define DRM_HDCP_SHA1_TERMINATOR 0x80 + /* HDCP register offsets for HDMI/DVI devices */ #define DRM_HDCP_DDC_BKSV 0x00 #define DRM_HDCP_DDC_RI_PRIME 0x08 --- linux-azure-5.8-5.8.0.orig/include/drm/drm_modeset_lock.h +++ linux-azure-5.8-5.8.0/include/drm/drm_modeset_lock.h @@ -164,6 +164,8 @@ * is 0, so no error checking is necessary */ #define DRM_MODESET_LOCK_ALL_BEGIN(dev, ctx, flags, ret) \ + if (!drm_drv_uses_atomic_modeset(dev)) \ + mutex_lock(&dev->mode_config.mutex); \ drm_modeset_acquire_init(&ctx, flags); \ modeset_lock_retry: \ ret = drm_modeset_lock_all_ctx(dev, &ctx); \ @@ -172,6 +174,7 @@ /** * DRM_MODESET_LOCK_ALL_END - Helper to release and cleanup modeset locks + * @dev: drm device * @ctx: local modeset acquire context, will be dereferenced * @ret: local ret/err/etc variable to track error status * @@ -188,7 +191,7 @@ * to that failure. In both of these cases the code between BEGIN/END will not * be run, so the failure will reflect the inability to grab the locks. */ -#define DRM_MODESET_LOCK_ALL_END(ctx, ret) \ +#define DRM_MODESET_LOCK_ALL_END(dev, ctx, ret) \ modeset_lock_fail: \ if (ret == -EDEADLK) { \ ret = drm_modeset_backoff(&ctx); \ @@ -196,6 +199,8 @@ goto modeset_lock_retry; \ } \ drm_modeset_drop_locks(&ctx); \ - drm_modeset_acquire_fini(&ctx); + drm_modeset_acquire_fini(&ctx); \ + if (!drm_drv_uses_atomic_modeset(dev)) \ + mutex_unlock(&dev->mode_config.mutex); #endif /* DRM_MODESET_LOCK_H_ */ --- linux-azure-5.8-5.8.0.orig/include/drm/gpu_scheduler.h +++ linux-azure-5.8-5.8.0/include/drm/gpu_scheduler.h @@ -33,14 +33,16 @@ struct drm_gpu_scheduler; struct drm_sched_rq; +/* These are often used as an (initial) index + * to an array, and as such should start at 0. + */ enum drm_sched_priority { DRM_SCHED_PRIORITY_MIN, - DRM_SCHED_PRIORITY_LOW = DRM_SCHED_PRIORITY_MIN, DRM_SCHED_PRIORITY_NORMAL, - DRM_SCHED_PRIORITY_HIGH_SW, - DRM_SCHED_PRIORITY_HIGH_HW, + DRM_SCHED_PRIORITY_HIGH, DRM_SCHED_PRIORITY_KERNEL, - DRM_SCHED_PRIORITY_MAX, + + DRM_SCHED_PRIORITY_COUNT, DRM_SCHED_PRIORITY_INVALID = -1, DRM_SCHED_PRIORITY_UNSET = -2 }; @@ -274,7 +276,7 @@ uint32_t hw_submission_limit; long timeout; const char *name; - struct drm_sched_rq sched_rq[DRM_SCHED_PRIORITY_MAX]; + struct drm_sched_rq sched_rq[DRM_SCHED_PRIORITY_COUNT]; wait_queue_head_t wake_up_worker; wait_queue_head_t job_scheduled; atomic_t hw_rq_count; --- linux-azure-5.8-5.8.0.orig/include/drm/intel-gtt.h +++ linux-azure-5.8-5.8.0/include/drm/intel-gtt.h @@ -5,6 +5,7 @@ #define _DRM_INTEL_GTT_H #include +#include #include void intel_gtt_get(u64 *gtt_total, @@ -33,8 +34,4 @@ /* flag for GFDT type */ #define AGP_USER_CACHED_MEMORY_GFDT (1 << 3) -#ifdef CONFIG_INTEL_IOMMU -extern int intel_iommu_gfx_mapped; -#endif - #endif --- linux-azure-5.8-5.8.0.orig/include/kunit/test.h +++ linux-azure-5.8-5.8.0/include/kunit/test.h @@ -914,7 +914,7 @@ KUNIT_ASSERTION(test, \ strcmp(__left, __right) op 0, \ kunit_binary_str_assert, \ - KUNIT_INIT_BINARY_ASSERT_STRUCT(test, \ + KUNIT_INIT_BINARY_STR_ASSERT_STRUCT(test, \ assert_type, \ #op, \ #left, \ --- linux-azure-5.8-5.8.0.orig/include/linux/acpi.h +++ linux-azure-5.8-5.8.0/include/linux/acpi.h @@ -883,6 +883,13 @@ return -ENODEV; } +static inline struct platform_device * +acpi_create_platform_device(struct acpi_device *adev, + struct property_entry *properties) +{ + return NULL; +} + static inline bool acpi_dma_supported(struct acpi_device *adev) { return false; --- linux-azure-5.8-5.8.0.orig/include/linux/arm-smccc.h +++ linux-azure-5.8-5.8.0/include/linux/arm-smccc.h @@ -385,6 +385,8 @@ method; \ }) +#define SMCCC_ARCH_WORKAROUND_RET_UNAFFECTED 1 + /* Paravirtualised time calls (defined by ARM DEN0057A) */ #define ARM_SMCCC_HV_PV_TIME_FEATURES \ ARM_SMCCC_CALL_VAL(ARM_SMCCC_FAST_CALL, \ --- linux-azure-5.8-5.8.0.orig/include/linux/audit.h +++ linux-azure-5.8-5.8.0/include/linux/audit.h @@ -11,6 +11,7 @@ #include #include +#include #include #define AUDIT_INO_UNSET ((unsigned long)-1) @@ -64,8 +65,9 @@ kuid_t uid; kgid_t gid; struct { + bool lsm_isset; char *lsm_str; - void *lsm_rule; + void *lsm_rules[LSMBLOB_ENTRIES]; }; }; u32 op; @@ -166,7 +168,11 @@ const char *operation); extern void audit_log_lost(const char *message); -extern int audit_log_task_context(struct audit_buffer *ab); +extern void audit_log_lsm(struct lsmblob *blob, bool exiting); +extern int audit_log_task_context(struct audit_buffer *ab, + struct lsmblob *blob); +extern int audit_log_object_context(struct audit_buffer *ab, + struct lsmblob *blob); extern void audit_log_task_info(struct audit_buffer *ab); extern int audit_update_lsm_rules(void); @@ -226,7 +232,10 @@ { } static inline void audit_log_path_denied(int type, const char *operation) { } -static inline int audit_log_task_context(struct audit_buffer *ab) +static inline void audit_log_lsm(struct lsmblob *blob, bool exiting) +{ } +static inline int audit_log_task_context(struct audit_buffer *ab, + struct lsmblob *blob); { return 0; } @@ -285,6 +294,7 @@ extern void audit_seccomp_actions_logged(const char *names, const char *old_names, int res); extern void __audit_ptrace(struct task_struct *t); +extern void audit_stamp_context(struct audit_context *ctx); static inline void audit_set_context(struct task_struct *task, struct audit_context *ctx) { @@ -663,6 +673,9 @@ static inline void audit_ptrace(struct task_struct *t) { } +static inline void audit_stamp_context(struct audit_context *ctx) +{ } + static inline void audit_log_nfcfg(const char *name, u8 af, unsigned int nentries, enum audit_nfcfgop op) --- linux-azure-5.8-5.8.0.orig/include/linux/bitfield.h +++ linux-azure-5.8-5.8.0/include/linux/bitfield.h @@ -77,7 +77,7 @@ */ #define FIELD_FIT(_mask, _val) \ ({ \ - __BF_FIELD_CHECK(_mask, 0ULL, _val, "FIELD_FIT: "); \ + __BF_FIELD_CHECK(_mask, 0ULL, 0ULL, "FIELD_FIT: "); \ !((((typeof(_mask))_val) << __bf_shf(_mask)) & ~(_mask)); \ }) --- linux-azure-5.8-5.8.0.orig/include/linux/blk-mq.h +++ linux-azure-5.8-5.8.0/include/linux/blk-mq.h @@ -447,10 +447,8 @@ BLK_MQ_REQ_NOWAIT = (__force blk_mq_req_flags_t)(1 << 0), /* allocate from reserved pool */ BLK_MQ_REQ_RESERVED = (__force blk_mq_req_flags_t)(1 << 1), - /* allocate internal/sched tag */ - BLK_MQ_REQ_INTERNAL = (__force blk_mq_req_flags_t)(1 << 2), - /* set RQF_PREEMPT */ - BLK_MQ_REQ_PREEMPT = (__force blk_mq_req_flags_t)(1 << 3), + /* set RQF_PM */ + BLK_MQ_REQ_PM = (__force blk_mq_req_flags_t)(1 << 2), }; struct request *blk_mq_alloc_request(struct request_queue *q, unsigned int op, --- linux-azure-5.8-5.8.0.orig/include/linux/blkdev.h +++ linux-azure-5.8-5.8.0/include/linux/blkdev.h @@ -80,9 +80,6 @@ #define RQF_MQ_INFLIGHT ((__force req_flags_t)(1 << 6)) /* don't call prep for this one */ #define RQF_DONTPREP ((__force req_flags_t)(1 << 7)) -/* set for "ide_preempt" requests and also for requests for which the SCSI - "quiesce" state must be ignored. */ -#define RQF_PREEMPT ((__force req_flags_t)(1 << 8)) /* vaguely specified driver internal error. Ignored by the block layer */ #define RQF_FAILED ((__force req_flags_t)(1 << 10)) /* don't warn about errors */ @@ -354,6 +351,8 @@ typedef int (*report_zones_cb)(struct blk_zone *zone, unsigned int idx, void *data); +void blk_queue_set_zoned(struct gendisk *disk, enum blk_zoned_model model); + #ifdef CONFIG_BLK_DEV_ZONED #define BLK_ALL_ZONES ((unsigned int)-1) @@ -428,8 +427,7 @@ unsigned long queue_flags; /* * Number of contexts that have called blk_set_pm_only(). If this - * counter is above zero then only RQF_PM and RQF_PREEMPT requests are - * processed. + * counter is above zero then only RQF_PM requests are processed. */ atomic_t pm_only; @@ -685,6 +683,18 @@ return q->mq_ops; } +#ifdef CONFIG_PM +static inline enum rpm_status queue_rpm_status(struct request_queue *q) +{ + return q->rpm_status; +} +#else +static inline enum rpm_status queue_rpm_status(struct request_queue *q) +{ + return RPM_ACTIVE; +} +#endif + static inline enum blk_zoned_model blk_queue_zoned_model(struct request_queue *q) { --- linux-azure-5.8-5.8.0.orig/include/linux/bpf.h +++ linux-azure-5.8-5.8.0/include/linux/bpf.h @@ -1235,7 +1235,10 @@ /* verify correctness of eBPF program */ int bpf_check(struct bpf_prog **fp, union bpf_attr *attr, union bpf_attr __user *uattr); + +#ifndef CONFIG_BPF_JIT_ALWAYS_ON void bpf_patch_call_args(struct bpf_insn *insn, u32 stack_depth); +#endif /* Map specifics */ struct xdp_buff; --- linux-azure-5.8-5.8.0.orig/include/linux/bpf_verifier.h +++ linux-azure-5.8-5.8.0/include/linux/bpf_verifier.h @@ -358,6 +358,7 @@ u32 start; /* insn idx of function entry point */ u32 linfo_idx; /* The idx to the main_prog->aux->linfo */ u16 stack_depth; /* max. stack depth used by this function */ + bool has_tail_call; }; /* single container for all structs --- linux-azure-5.8-5.8.0.orig/include/linux/build_bug.h +++ linux-azure-5.8-5.8.0/include/linux/build_bug.h @@ -77,4 +77,9 @@ #define static_assert(expr, ...) __static_assert(expr, ##__VA_ARGS__, #expr) #define __static_assert(expr, msg, ...) _Static_assert(expr, msg) +#ifdef __GENKSYMS__ +/* genksyms gets confused by _Static_assert */ +#define _Static_assert(expr, ...) +#endif + #endif /* _LINUX_BUILD_BUG_H */ --- linux-azure-5.8-5.8.0.orig/include/linux/bvec.h +++ linux-azure-5.8-5.8.0/include/linux/bvec.h @@ -117,11 +117,18 @@ return true; } +static inline void bvec_iter_skip_zero_bvec(struct bvec_iter *iter) +{ + iter->bi_bvec_done = 0; + iter->bi_idx++; +} + #define for_each_bvec(bvl, bio_vec, iter, start) \ for (iter = (start); \ (iter).bi_size && \ ((bvl = bvec_iter_bvec((bio_vec), (iter))), 1); \ - bvec_iter_advance((bio_vec), &(iter), (bvl).bv_len)) + (bvl).bv_len ? (void)bvec_iter_advance((bio_vec), &(iter), \ + (bvl).bv_len) : bvec_iter_skip_zero_bvec(&(iter))) /* for iterating one bio from start to end */ #define BVEC_ITER_ALL_INIT (struct bvec_iter) \ --- linux-azure-5.8-5.8.0.orig/include/linux/can/skb.h +++ linux-azure-5.8-5.8.0/include/linux/can/skb.h @@ -61,21 +61,17 @@ */ static inline struct sk_buff *can_create_echo_skb(struct sk_buff *skb) { - if (skb_shared(skb)) { - struct sk_buff *nskb = skb_clone(skb, GFP_ATOMIC); + struct sk_buff *nskb; - if (likely(nskb)) { - can_skb_set_owner(nskb, skb->sk); - consume_skb(skb); - return nskb; - } else { - kfree_skb(skb); - return NULL; - } + nskb = skb_clone(skb, GFP_ATOMIC); + if (unlikely(!nskb)) { + kfree_skb(skb); + return NULL; } - /* we can assume to have an unshared skb with proper owner */ - return skb; + can_skb_set_owner(nskb, skb->sk); + consume_skb(skb); + return nskb; } #endif /* !_CAN_SKB_H */ --- linux-azure-5.8-5.8.0.orig/include/linux/capability.h +++ linux-azure-5.8-5.8.0/include/linux/capability.h @@ -264,6 +264,6 @@ /* audit system wants to get cap info from files as well */ extern int get_vfs_caps_from_disk(const struct dentry *dentry, struct cpu_vfs_cap_data *cpu_caps); -extern int cap_convert_nscap(struct dentry *dentry, void **ivalue, size_t size); +extern int cap_convert_nscap(struct dentry *dentry, const void **ivalue, size_t size); #endif /* !_LINUX_CAPABILITY_H */ --- linux-azure-5.8-5.8.0.orig/include/linux/compiler-clang.h +++ linux-azure-5.8-5.8.0/include/linux/compiler-clang.h @@ -54,12 +54,6 @@ #define COMPILER_HAS_GENERIC_BUILTIN_OVERFLOW 1 #endif -/* The following are for compatibility with GCC, from compiler-gcc.h, - * and may be redefined here because they should not be shared with other - * compilers, like ICC. - */ -#define barrier() __asm__ __volatile__("" : : : "memory") - #if __has_feature(shadow_call_stack) # define __noscs __attribute__((__no_sanitize__("shadow-call-stack"))) #endif --- linux-azure-5.8-5.8.0.orig/include/linux/compiler-gcc.h +++ linux-azure-5.8-5.8.0/include/linux/compiler-gcc.h @@ -13,26 +13,13 @@ /* https://gcc.gnu.org/bugzilla/show_bug.cgi?id=58145 */ #if GCC_VERSION < 40900 # error Sorry, your compiler is too old - please upgrade it. -#endif - -/* Optimization barrier */ - -/* The "volatile" is due to gcc bugs */ -#define barrier() __asm__ __volatile__("": : :"memory") +#elif defined(CONFIG_ARM64) && GCC_VERSION < 50100 /* - * This version is i.e. to prevent dead stores elimination on @ptr - * where gcc and llvm may behave differently when otherwise using - * normal barrier(): while gcc behavior gets along with a normal - * barrier(), llvm needs an explicit input variable to be assumed - * clobbered. The issue is as follows: while the inline asm might - * access any memory it wants, the compiler could have fit all of - * @ptr into memory registers instead, and since @ptr never escaped - * from that, it proved that the inline asm wasn't touching any of - * it. This version works well with both compilers, i.e. we're telling - * the compiler that the inline asm absolutely may see the contents - * of @ptr. See also: https://llvm.org/bugs/show_bug.cgi?id=15495 + * https://gcc.gnu.org/bugzilla/show_bug.cgi?id=63293 + * https://lore.kernel.org/r/20210107111841.GN1551@shell.armlinux.org.uk */ -#define barrier_data(ptr) __asm__ __volatile__("": :"r"(ptr) :"memory") +# error Sorry, your version of GCC is too old - please use 5.1 or newer. +#endif /* * This macro obfuscates arithmetic on a variable address so that gcc @@ -181,5 +168,3 @@ #else #define __diag_GCC_8(s) #endif - -#define __no_fgcse __attribute__((optimize("-fno-gcse"))) --- linux-azure-5.8-5.8.0.orig/include/linux/compiler.h +++ linux-azure-5.8-5.8.0/include/linux/compiler.h @@ -80,11 +80,25 @@ /* Optimization barrier */ #ifndef barrier -# define barrier() __memory_barrier() +/* The "volatile" is due to gcc bugs */ +# define barrier() __asm__ __volatile__("": : :"memory") #endif #ifndef barrier_data -# define barrier_data(ptr) barrier() +/* + * This version is i.e. to prevent dead stores elimination on @ptr + * where gcc and llvm may behave differently when otherwise using + * normal barrier(): while gcc behavior gets along with a normal + * barrier(), llvm needs an explicit input variable to be assumed + * clobbered. The issue is as follows: while the inline asm might + * access any memory it wants, the compiler could have fit all of + * @ptr into memory registers instead, and since @ptr never escaped + * from that, it proved that the inline asm wasn't touching any of + * it. This version works well with both compilers, i.e. we're telling + * the compiler that the inline asm absolutely may see the contents + * of @ptr. See also: https://llvm.org/bugs/show_bug.cgi?id=15495 + */ +# define barrier_data(ptr) __asm__ __volatile__("": :"r"(ptr) :"memory") #endif /* workaround for GCC PR82365 if needed */ --- linux-azure-5.8-5.8.0.orig/include/linux/compiler_types.h +++ linux-azure-5.8-5.8.0/include/linux/compiler_types.h @@ -241,10 +241,6 @@ #define asm_inline asm #endif -#ifndef __no_fgcse -# define __no_fgcse -#endif - /* Are two types/vars the same type (ignoring qualifiers)? */ #define __same_type(a, b) __builtin_types_compatible_p(typeof(a), typeof(b)) --- linux-azure-5.8-5.8.0.orig/include/linux/cpufreq.h +++ linux-azure-5.8-5.8.0/include/linux/cpufreq.h @@ -110,6 +110,12 @@ bool fast_switch_enabled; /* + * Set if the CPUFREQ_GOV_STRICT_TARGET flag is set for the current + * governor. + */ + bool strict_target; + + /* * Preferred average time interval between consecutive invocations of * the driver to set the frequency for this policy. To be set by the * scaling driver (0, which is the default, means no preference). @@ -293,7 +299,7 @@ struct cpufreq_driver { char name[CPUFREQ_NAME_LEN]; - u8 flags; + u16 flags; void *driver_data; /* needed by all drivers */ @@ -417,9 +423,18 @@ */ #define CPUFREQ_IS_COOLING_DEV BIT(7) +/* + * Set by drivers that need to update internale upper and lower boundaries along + * with the target frequency and so the core and governors should also invoke + * the diver if the target frequency does not change, but the policy min or max + * may have changed. + */ +#define CPUFREQ_NEED_UPDATE_LIMITS BIT(8) + int cpufreq_register_driver(struct cpufreq_driver *driver_data); int cpufreq_unregister_driver(struct cpufreq_driver *driver_data); +bool cpufreq_driver_test_flags(u16 flags); const char *cpufreq_get_current_driver(void); void *cpufreq_get_driver_data(void); @@ -556,12 +571,20 @@ char *buf); int (*store_setspeed) (struct cpufreq_policy *policy, unsigned int freq); - /* For governors which change frequency dynamically by themselves */ - bool dynamic_switching; struct list_head governor_list; struct module *owner; + u8 flags; }; +/* Governor flags */ + +/* For governors which change frequency dynamically by themselves */ +#define CPUFREQ_GOV_DYNAMIC_SWITCHING BIT(0) + +/* For governors wanting the target frequency to be set exactly */ +#define CPUFREQ_GOV_STRICT_TARGET BIT(1) + + /* Pass a target to the cpufreq driver */ unsigned int cpufreq_driver_fast_switch(struct cpufreq_policy *policy, unsigned int target_freq); --- linux-azure-5.8-5.8.0.orig/include/linux/cpuhotplug.h +++ linux-azure-5.8-5.8.0/include/linux/cpuhotplug.h @@ -141,7 +141,6 @@ /* Must be the last timer callback */ CPUHP_AP_DUMMY_TIMER_STARTING, CPUHP_AP_ARM_XEN_STARTING, - CPUHP_AP_ARM_KVMPV_STARTING, CPUHP_AP_ARM_CORESIGHT_STARTING, CPUHP_AP_ARM_CORESIGHT_CTI_STARTING, CPUHP_AP_ARM64_ISNDEP_STARTING, --- linux-azure-5.8-5.8.0.orig/include/linux/cred.h +++ linux-azure-5.8-5.8.0/include/linux/cred.h @@ -18,6 +18,7 @@ struct cred; struct inode; +struct lsmblob; /* * COW Supplementary groups list @@ -165,7 +166,7 @@ extern void revert_creds(const struct cred *); extern struct cred *prepare_kernel_cred(struct task_struct *); extern int change_create_files_as(struct cred *, struct inode *); -extern int set_security_override(struct cred *, u32); +extern int set_security_override(struct cred *, struct lsmblob *); extern int set_security_override_from_ctx(struct cred *, const char *); extern int set_create_files_as(struct cred *, struct inode *); extern int cred_fscmp(const struct cred *, const struct cred *); --- linux-azure-5.8-5.8.0.orig/include/linux/dax.h +++ linux-azure-5.8-5.8.0/include/linux/dax.h @@ -58,6 +58,8 @@ { __set_dax_synchronous(dax_dev); } +bool dax_supported(struct dax_device *dax_dev, struct block_device *bdev, + int blocksize, sector_t start, sector_t len); /* * Check if given mapping is supported by the file / underlying device. */ @@ -104,6 +106,12 @@ static inline void set_dax_synchronous(struct dax_device *dax_dev) { } +static inline bool dax_supported(struct dax_device *dax_dev, + struct block_device *bdev, int blocksize, sector_t start, + sector_t len) +{ + return false; +} static inline bool daxdev_mapping_supported(struct vm_area_struct *vma, struct dax_device *dax_dev) { @@ -189,14 +197,23 @@ } #endif +#if IS_ENABLED(CONFIG_DAX) int dax_read_lock(void); void dax_read_unlock(int id); +#else +static inline int dax_read_lock(void) +{ + return 0; +} + +static inline void dax_read_unlock(int id) +{ +} +#endif /* CONFIG_DAX */ bool dax_alive(struct dax_device *dax_dev); void *dax_get_private(struct dax_device *dax_dev); long dax_direct_access(struct dax_device *dax_dev, pgoff_t pgoff, long nr_pages, void **kaddr, pfn_t *pfn); -bool dax_supported(struct dax_device *dax_dev, struct block_device *bdev, - int blocksize, sector_t start, sector_t len); size_t dax_copy_from_iter(struct dax_device *dax_dev, pgoff_t pgoff, void *addr, size_t bytes, struct iov_iter *i); size_t dax_copy_to_iter(struct dax_device *dax_dev, pgoff_t pgoff, void *addr, --- linux-azure-5.8-5.8.0.orig/include/linux/dcache.h +++ linux-azure-5.8-5.8.0/include/linux/dcache.h @@ -213,7 +213,7 @@ #define DCACHE_MAY_FREE 0x00800000 #define DCACHE_FALLTHRU 0x01000000 /* Fall through to lower layer */ -#define DCACHE_ENCRYPTED_NAME 0x02000000 /* Encrypted name (dir key was unavailable) */ +#define DCACHE_NOKEY_NAME 0x02000000 /* Encrypted name encoded without key */ #define DCACHE_OP_REAL 0x04000000 #define DCACHE_PAR_LOOKUP 0x10000000 /* being looked up (with parent locked shared) */ --- linux-azure-5.8-5.8.0.orig/include/linux/dev_printk.h +++ linux-azure-5.8-5.8.0/include/linux/dev_printk.h @@ -23,6 +23,62 @@ #ifdef CONFIG_PRINTK +#if defined(__KMSG_CHECKER) && defined(KMSG_COMPONENT) + +/* generate magic string for scripts/kmsg-doc to parse */ +#define _dev_emerg(dev, format, arg...) \ + __KMSG_DEV(KERN_EMERG _FMT_ format _ARGS_ dev, ## arg _END_) +#define _dev_alert(dev, format, arg...) \ + __KMSG_DEV(KERN_ALERT _FMT_ format _ARGS_ dev, ## arg _END_) +#define _dev_crit(dev, format, arg...) \ + __KMSG_DEV(KERN_CRIT _FMT_ format _ARGS_ dev, ## arg _END_) +#define _dev_err(dev, format, arg...) \ + __KMSG_DEV(KERN_ERR _FMT_ format _ARGS_ dev, ## arg _END_) +#define _dev_warn(dev, format, arg...) \ + __KMSG_DEV(KERN_WARNING _FMT_ format _ARGS_ dev, ## arg _END_) +#define _dev_notice(dev, format, arg...) \ + __KMSG_DEV(KERN_NOTICE _FMT_ format _ARGS_ dev, ## arg _END_) +#define _dev_info(dev, format, arg...) \ + __KMSG_DEV(KERN_INFO _FMT_ format _ARGS_ dev, ## arg _END_) + +#elif defined(CONFIG_KMSG_IDS) && defined(KMSG_COMPONENT) + +extern int dev_printk_hash(const char *level, const struct device *dev, + const char *fmt, ...); +extern __printf(2,3) +int dev_emerg_hash(const struct device *dev, const char *fmt, ...); +extern __printf(2,3) +int dev_alert_hash(const struct device *dev, const char *fmt, ...); +extern __printf(2,3) +int dev_crit_hash(const struct device *dev, const char *fmt, ...); +extern __printf(2,3) +int dev_err_hash(const struct device *dev, const char *fmt, ...); +extern __printf(2,3) +int dev_warn_hash(const struct device *dev, const char *fmt, ...); +extern __printf(2,3) +int dev_notice_hash(const struct device *dev, const char *fmt, ...); +extern __printf(2,3) +int _dev_info_hash(const struct device *dev, const char *fmt, ...); + +#define dev_printk(level, dev, format, arg...) \ + dev_printk_hash(level, dev, "%s: " format, dev_name(dev), ## arg) +#define _dev_emerg(dev, format, arg...) \ + dev_emerg_hash(dev, "%s: " format, dev_name(dev), ## arg) +#define _dev_alert(dev, format, arg...) \ + dev_alert_hash(dev, "%s: " format, dev_name(dev), ## arg) +#define _dev_crit(dev, format, arg...) \ + dev_crit_hash(dev, "%s: " format, dev_name(dev), ## arg) +#define _dev_err(dev, format, arg...) \ + dev_err_hash(dev, "%s: " format, dev_name(dev), ## arg) +#define _dev_warn(dev, format, arg...) \ + dev_warn_hash(dev, "%s: " format, dev_name(dev), ## arg) +#define _dev_notice(dev, format, arg...) \ + dev_notice_hash(dev, "%s: " format, dev_name(dev), ## arg) +#define _dev_info(dev, format, arg...) \ + _dev_info_hash(dev, "%s: " format, dev_name(dev), ## arg) + +#else /* !defined(CONFIG_KMSG_IDS) */ + __printf(3, 0) __cold int dev_vprintk_emit(int level, const struct device *dev, const char *fmt, va_list args); @@ -47,7 +103,9 @@ __printf(2, 3) __cold void _dev_info(const struct device *dev, const char *fmt, ...); -#else +#endif /* !defined(CONFIG_KMSG_IDS) */ + +#else /* !defined(CONFIG_PRINTK) */ static inline __printf(3, 0) int dev_vprintk_emit(int level, const struct device *dev, @@ -87,7 +145,7 @@ void _dev_info(const struct device *dev, const char *fmt, ...) {} -#endif +#endif /* !defined(CONFIG_PRINTK) */ /* * #defines for all the dev_ macros to prefix with whatever --- linux-azure-5.8-5.8.0.orig/include/linux/device-mapper.h +++ linux-azure-5.8-5.8.0/include/linux/device-mapper.h @@ -320,6 +320,11 @@ * whether or not its underlying devices have support. */ bool discards_supported:1; + + /* + * Set if we need to limit the number of in-flight bios when swapping. + */ + bool limit_swap_bios:1; }; /* Each target can link one of these into the table */ --- linux-azure-5.8-5.8.0.orig/include/linux/dm-bufio.h +++ linux-azure-5.8-5.8.0/include/linux/dm-bufio.h @@ -150,6 +150,7 @@ unsigned dm_bufio_get_block_size(struct dm_bufio_client *c); sector_t dm_bufio_get_device_size(struct dm_bufio_client *c); +struct dm_io_client *dm_bufio_get_dm_io_client(struct dm_bufio_client *c); sector_t dm_bufio_get_block_number(struct dm_buffer *b); void *dm_bufio_get_block_data(struct dm_buffer *b); void *dm_bufio_get_aux_data(struct dm_buffer *b); --- linux-azure-5.8-5.8.0.orig/include/linux/dma-direct.h +++ linux-azure-5.8-5.8.0/include/linux/dma-direct.h @@ -67,9 +67,6 @@ } u64 dma_direct_get_required_mask(struct device *dev); -gfp_t dma_direct_optimal_gfp_mask(struct device *dev, u64 dma_mask, - u64 *phys_mask); -bool dma_coherent_ok(struct device *dev, phys_addr_t phys, size_t size); void *dma_direct_alloc(struct device *dev, size_t size, dma_addr_t *dma_handle, gfp_t gfp, unsigned long attrs); void dma_direct_free(struct device *dev, size_t size, void *cpu_addr, --- linux-azure-5.8-5.8.0.orig/include/linux/dma-mapping.h +++ linux-azure-5.8-5.8.0/include/linux/dma-mapping.h @@ -715,8 +715,9 @@ pgprot_t prot, const void *caller); void dma_common_free_remap(void *cpu_addr, size_t size); -void *dma_alloc_from_pool(struct device *dev, size_t size, - struct page **ret_page, gfp_t flags); +struct page *dma_alloc_from_pool(struct device *dev, size_t size, + void **cpu_addr, gfp_t flags, + bool (*phys_addr_ok)(struct device *, phys_addr_t, size_t)); bool dma_free_from_pool(struct device *dev, void *start, size_t size); int --- linux-azure-5.8-5.8.0.orig/include/linux/dmar.h +++ linux-azure-5.8-5.8.0/include/linux/dmar.h @@ -48,6 +48,7 @@ u16 segment; /* PCI domain */ u8 ignored:1; /* ignore drhd */ u8 include_all:1; + u8 gfx_dedicated:1; /* graphic dedicated */ struct intel_iommu *iommu; }; --- linux-azure-5.8-5.8.0.orig/include/linux/efi.h +++ linux-azure-5.8-5.8.0/include/linux/efi.h @@ -43,6 +43,8 @@ #define EFI_ABORTED (21 | (1UL << (BITS_PER_LONG-1))) #define EFI_SECURITY_VIOLATION (26 | (1UL << (BITS_PER_LONG-1))) +#define EFI_IS_ERROR(x) ((x) & (1UL << (BITS_PER_LONG-1))) + typedef unsigned long efi_status_t; typedef u8 efi_bool_t; typedef u16 efi_char16_t; /* UNICODE character */ @@ -606,7 +608,11 @@ extern void efi_map_pal_code (void); extern void efi_memmap_walk (efi_freemem_callback_t callback, void *arg); extern void efi_gettimeofday (struct timespec64 *ts); +#ifdef CONFIG_EFI extern void efi_enter_virtual_mode (void); /* switch EFI to virtual mode, if possible */ +#else +static inline void efi_enter_virtual_mode (void) {} +#endif #ifdef CONFIG_X86 extern efi_status_t efi_query_variable_store(u32 attributes, unsigned long size, @@ -779,6 +785,22 @@ #define EFI_MEM_ATTR 10 /* Did firmware publish an EFI_MEMORY_ATTRIBUTES table? */ #define EFI_MEM_NO_SOFT_RESERVE 11 /* Is the kernel configured to ignore soft reservations? */ #define EFI_PRESERVE_BS_REGIONS 12 /* Are EFI boot-services memory segments available? */ +#define EFI_SECURE_BOOT 13 /* Are we in Secure Boot mode? */ + +enum efi_secureboot_mode { + efi_secureboot_mode_unset, + efi_secureboot_mode_unknown, + efi_secureboot_mode_disabled, + efi_secureboot_mode_enabled, +}; + +#ifdef CONFIG_EFI_PARAMS_FROM_FDT +u32 __init efi_get__secure_boot(void); +#else +static inline u32 efi_get__secure_boot(void) { + return efi_secureboot_mode_unset; +}; +#endif #ifdef CONFIG_EFI /* @@ -790,6 +812,8 @@ } extern void efi_reboot(enum reboot_mode reboot_mode, const char *__unused); +extern void __init efi_set_secure_boot(enum efi_secureboot_mode mode); + bool __pure __efi_soft_reserve_enabled(void); static inline bool __pure efi_soft_reserve_enabled(void) @@ -816,6 +840,8 @@ return false; } +static inline void efi_set_secure_boot(enum efi_secureboot_mode mode) {} + static inline bool efi_soft_reserve_enabled(void) { return false; @@ -828,6 +854,7 @@ #endif extern int efi_status_to_err(efi_status_t status); +extern const char *efi_status_to_str(efi_status_t status); /* * Variable Attributes @@ -1087,12 +1114,6 @@ extern void efi_call_virt_check_flags(unsigned long flags, const char *call); extern unsigned long efi_call_virt_save_flags(void); -enum efi_secureboot_mode { - efi_secureboot_mode_unset, - efi_secureboot_mode_unknown, - efi_secureboot_mode_disabled, - efi_secureboot_mode_enabled, -}; enum efi_secureboot_mode efi_get_secureboot(void); #ifdef CONFIG_RESET_ATTACK_MITIGATION --- linux-azure-5.8-5.8.0.orig/include/linux/efi_embedded_fw.h +++ linux-azure-5.8-5.8.0/include/linux/efi_embedded_fw.h @@ -8,8 +8,8 @@ #define EFI_EMBEDDED_FW_PREFIX_LEN 8 /* - * This struct and efi_embedded_fw_list are private to the efi-embedded fw - * implementation they are in this header for use by lib/test_firmware.c only! + * This struct is private to the efi-embedded fw implementation. + * They are in this header for use by lib/test_firmware.c only! */ struct efi_embedded_fw { struct list_head list; @@ -18,8 +18,6 @@ size_t length; }; -extern struct list_head efi_embedded_fw_list; - /** * struct efi_embedded_fw_desc - This struct is used by the EFI embedded-fw * code to search for embedded firmwares. --- linux-azure-5.8-5.8.0.orig/include/linux/elfcore.h +++ linux-azure-5.8-5.8.0/include/linux/elfcore.h @@ -58,6 +58,7 @@ } #endif +#if defined(CONFIG_UM) || defined(CONFIG_IA64) /* * These functions parameterize elf_core_dump in fs/binfmt_elf.c to write out * extra segments containing the gate DSO contents. Dumping its @@ -72,5 +73,26 @@ extern int elf_core_write_extra_data(struct coredump_params *cprm); extern size_t elf_core_extra_data_size(void); +#else +static inline Elf_Half elf_core_extra_phdrs(void) +{ + return 0; +} + +static inline int elf_core_write_extra_phdrs(struct coredump_params *cprm, loff_t offset) +{ + return 1; +} + +static inline int elf_core_write_extra_data(struct coredump_params *cprm) +{ + return 1; +} + +static inline size_t elf_core_extra_data_size(void) +{ + return 0; +} +#endif #endif /* _LINUX_ELFCORE_H */ --- linux-azure-5.8-5.8.0.orig/include/linux/eventpoll.h +++ linux-azure-5.8-5.8.0/include/linux/eventpoll.h @@ -18,7 +18,7 @@ #ifdef CONFIG_EPOLL -#ifdef CONFIG_CHECKPOINT_RESTORE +#ifdef CONFIG_KCMP struct file *get_epoll_tfile_raw_ptr(struct file *file, int tfd, unsigned long toff); #endif --- linux-azure-5.8-5.8.0.orig/include/linux/fb.h +++ linux-azure-5.8-5.8.0/include/linux/fb.h @@ -400,8 +400,6 @@ #define FBINFO_HWACCEL_YPAN 0x2000 /* optional */ #define FBINFO_HWACCEL_YWRAP 0x4000 /* optional */ -#define FBINFO_MISC_USEREVENT 0x10000 /* event request - from userspace */ #define FBINFO_MISC_TILEBLITTING 0x20000 /* use tile blitting */ /* A driver may set this flag to indicate that it does want a set_par to be --- linux-azure-5.8-5.8.0.orig/include/linux/filter.h +++ linux-azure-5.8-5.8.0/include/linux/filter.h @@ -877,7 +877,7 @@ u64 __bpf_call_base(u64 r1, u64 r2, u64 r3, u64 r4, u64 r5); #define __bpf_call_base_args \ ((u64 (*)(u64, u64, u64, u64, u64, const struct bpf_insn *)) \ - __bpf_call_base) + (void *)__bpf_call_base) struct bpf_prog *bpf_int_jit_compile(struct bpf_prog *prog); void bpf_jit_compile(struct bpf_prog *prog); --- linux-azure-5.8-5.8.0.orig/include/linux/firmware/xlnx-zynqmp.h +++ linux-azure-5.8-5.8.0/include/linux/firmware/xlnx-zynqmp.h @@ -50,10 +50,6 @@ #define ZYNQMP_PM_CAPABILITY_WAKEUP 0x4U #define ZYNQMP_PM_CAPABILITY_UNUSABLE 0x8U -/* Feature check status */ -#define PM_FEATURE_INVALID -1 -#define PM_FEATURE_UNCHECKED 0 - /* * Firmware FPGA Manager flags * XILINX_ZYNQMP_PM_FPGA_FULL: FPGA full reconfiguration --- linux-azure-5.8-5.8.0.orig/include/linux/font.h +++ linux-azure-5.8-5.8.0/include/linux/font.h @@ -59,4 +59,17 @@ /* Max. length for the name of a predefined font */ #define MAX_FONT_NAME 32 +/* Extra word getters */ +#define REFCOUNT(fd) (((int *)(fd))[-1]) +#define FNTSIZE(fd) (((int *)(fd))[-2]) +#define FNTCHARCNT(fd) (((int *)(fd))[-3]) +#define FNTSUM(fd) (((int *)(fd))[-4]) + +#define FONT_EXTRA_WORDS 4 + +struct font_data { + unsigned int extra[FONT_EXTRA_WORDS]; + const unsigned char data[]; +} __packed; + #endif /* _VIDEO_FONT_H */ --- linux-azure-5.8-5.8.0.orig/include/linux/fs.h +++ linux-azure-5.8-5.8.0/include/linux/fs.h @@ -549,6 +549,16 @@ up_read(&mapping->i_mmap_rwsem); } +static inline void i_mmap_assert_locked(struct address_space *mapping) +{ + lockdep_assert_held(&mapping->i_mmap_rwsem); +} + +static inline void i_mmap_assert_write_locked(struct address_space *mapping) +{ + lockdep_assert_held_write(&mapping->i_mmap_rwsem); +} + /* * Might pages of this file be mapped into userspace? */ @@ -1360,6 +1370,7 @@ /* can be called from interrupts */ extern void kill_fasync(struct fasync_struct **, int, int); +extern int setfl(int fd, struct file *filp, unsigned long arg); extern void __f_setown(struct file *filp, struct pid *, enum pid_type, int force); extern int f_setown(struct file *filp, unsigned long arg, int force); extern void f_delown(struct file *filp); @@ -1413,6 +1424,7 @@ #define SB_I_USERNS_VISIBLE 0x00000010 /* fstype already mounted */ #define SB_I_IMA_UNVERIFIABLE_SIGNATURE 0x00000020 #define SB_I_UNTRUSTED_MOUNTER 0x00000040 +#define SB_I_NOSUID 0x80000000 /* Ignore suid on this fs */ #define SB_I_SKIP_SYNC 0x00000100 /* Skip superblock at global sync */ @@ -1848,6 +1860,7 @@ ssize_t (*sendpage) (struct file *, struct page *, int, size_t, loff_t *, int); unsigned long (*get_unmapped_area)(struct file *, unsigned long, unsigned long, unsigned long, unsigned long); int (*check_flags)(int); + int (*setfl)(struct file *, unsigned long); int (*flock) (struct file *, int, struct file_lock *); ssize_t (*splice_write)(struct pipe_inode_info *, struct file *, loff_t *, size_t, unsigned int); ssize_t (*splice_read)(struct file *, loff_t *, struct pipe_inode_info *, size_t, unsigned int); @@ -1918,6 +1931,12 @@ struct iovec *fast_pointer, struct iovec **ret_pointer); +typedef ssize_t (*vfs_readf_t)(struct file *, char __user *, size_t, loff_t *); +typedef ssize_t (*vfs_writef_t)(struct file *, const char __user *, size_t, + loff_t *); +vfs_readf_t vfs_readf(struct file *file); +vfs_writef_t vfs_writef(struct file *file); + extern ssize_t vfs_read(struct file *, char __user *, size_t, loff_t *); extern ssize_t vfs_write(struct file *, const char __user *, size_t, loff_t *); extern ssize_t vfs_readv(struct file *, const struct iovec __user *, @@ -1977,6 +1996,10 @@ struct shrink_control *); long (*free_cached_objects)(struct super_block *, struct shrink_control *); +#if IS_ENABLED(CONFIG_BLK_DEV_LOOP) || IS_ENABLED(CONFIG_BLK_DEV_LOOP_MODULE) + /* and aufs */ + struct file *(*real_loop)(struct file *); +#endif }; /* @@ -2158,6 +2181,10 @@ * * I_DONTCACHE Evict inode as soon as it is not used anymore. * + * I_SYNC_QUEUED Inode is queued in b_io or b_more_io writeback lists. + * Used to detect that mark_inode_dirty() should not move + * inode between dirty lists. + * * Q: What is the difference between I_WILL_FREE and I_FREEING? */ #define I_DIRTY_SYNC (1 << 0) @@ -2175,12 +2202,11 @@ #define I_DIO_WAKEUP (1 << __I_DIO_WAKEUP) #define I_LINKABLE (1 << 10) #define I_DIRTY_TIME (1 << 11) -#define __I_DIRTY_TIME_EXPIRED 12 -#define I_DIRTY_TIME_EXPIRED (1 << __I_DIRTY_TIME_EXPIRED) #define I_WB_SWITCH (1 << 13) #define I_OVL_INUSE (1 << 14) #define I_CREATING (1 << 15) #define I_DONTCACHE (1 << 16) +#define I_SYNC_QUEUED (1 << 17) #define I_DIRTY_INODE (I_DIRTY_SYNC | I_DIRTY_DATASYNC) #define I_DIRTY (I_DIRTY_INODE | I_DIRTY_PAGES) @@ -2352,6 +2378,7 @@ extern void ihold(struct inode * inode); extern void iput(struct inode *); extern int generic_update_time(struct inode *, struct timespec64 *, int); +extern int update_time(struct inode *, struct timespec64 *, int); /* /sys/fs */ extern struct kobject *fs_kobj; @@ -2633,6 +2660,7 @@ return false; } #endif +extern int __sync_filesystem(struct super_block *, int); extern int sync_filesystem(struct super_block *); extern const struct file_operations def_blk_fops; extern const struct file_operations def_chr_fops; @@ -2996,8 +3024,6 @@ #define __kernel_read_file_id(id) \ id(UNKNOWN, unknown) \ id(FIRMWARE, firmware) \ - id(FIRMWARE_PREALLOC_BUFFER, firmware) \ - id(FIRMWARE_EFI_EMBEDDED, firmware) \ id(MODULE, kernel-module) \ id(KEXEC_IMAGE, kexec-image) \ id(KEXEC_INITRAMFS, kexec-initramfs) \ @@ -3060,8 +3086,7 @@ extern int generic_delete_inode(struct inode *inode); static inline int generic_drop_inode(struct inode *inode) { - return !inode->i_nlink || inode_unhashed(inode) || - (inode->i_state & I_DONTCACHE); + return !inode->i_nlink || inode_unhashed(inode); } extern void d_mark_dontcache(struct inode *inode); @@ -3624,6 +3649,7 @@ } extern bool path_noexec(const struct path *path); +extern bool path_nosuid(const struct path *path); extern void inode_nohighmem(struct inode *inode); /* mm/fadvise.c */ --- linux-azure-5.8-5.8.0.orig/include/linux/fscrypt.h +++ linux-azure-5.8-5.8.0/include/linux/fscrypt.h @@ -102,15 +102,44 @@ } /* - * When d_splice_alias() moves a directory's encrypted alias to its decrypted - * alias as a result of the encryption key being added, DCACHE_ENCRYPTED_NAME - * must be cleared. Note that we don't have to support arbitrary moves of this - * flag because fscrypt doesn't allow encrypted aliases to be the source or - * target of a rename(). + * When d_splice_alias() moves a directory's no-key alias to its plaintext alias + * as a result of the encryption key being added, DCACHE_NOKEY_NAME must be + * cleared. Note that we don't have to support arbitrary moves of this flag + * because fscrypt doesn't allow no-key names to be the source or target of a + * rename(). */ static inline void fscrypt_handle_d_move(struct dentry *dentry) { - dentry->d_flags &= ~DCACHE_ENCRYPTED_NAME; + dentry->d_flags &= ~DCACHE_NOKEY_NAME; +} + +/** + * fscrypt_is_nokey_name() - test whether a dentry is a no-key name + * @dentry: the dentry to check + * + * This returns true if the dentry is a no-key dentry. A no-key dentry is a + * dentry that was created in an encrypted directory that hasn't had its + * encryption key added yet. Such dentries may be either positive or negative. + * + * When a filesystem is asked to create a new filename in an encrypted directory + * and the new filename's dentry is a no-key dentry, it must fail the operation + * with ENOKEY. This includes ->create(), ->mkdir(), ->mknod(), ->symlink(), + * ->rename(), and ->link(). (However, ->rename() and ->link() are already + * handled by fscrypt_prepare_rename() and fscrypt_prepare_link().) + * + * This is necessary because creating a filename requires the directory's + * encryption key, but just checking for the key on the directory inode during + * the final filesystem operation doesn't guarantee that the key was available + * during the preceding dentry lookup. And the key must have already been + * available during the dentry lookup in order for it to have been checked + * whether the filename already exists in the directory and for the new file's + * dentry not to be invalidated due to it incorrectly having the no-key flag. + * + * Return: %true if the dentry is a no-key name + */ +static inline bool fscrypt_is_nokey_name(const struct dentry *dentry) +{ + return dentry->d_flags & DCACHE_NOKEY_NAME; } /* crypto.c */ @@ -251,6 +280,11 @@ { } +static inline bool fscrypt_is_nokey_name(const struct dentry *dentry) +{ + return false; +} + /* crypto.c */ static inline void fscrypt_enqueue_decrypt_work(struct work_struct *work) { --- linux-azure-5.8-5.8.0.orig/include/linux/genhd.h +++ linux-azure-5.8-5.8.0/include/linux/genhd.h @@ -316,7 +316,7 @@ extern void disk_block_events(struct gendisk *disk); extern void disk_unblock_events(struct gendisk *disk); extern void disk_flush_events(struct gendisk *disk, unsigned int mask); -extern void set_capacity_revalidate_and_notify(struct gendisk *disk, +extern bool set_capacity_revalidate_and_notify(struct gendisk *disk, sector_t size, bool revalidate); extern unsigned int disk_clear_events(struct gendisk *disk, unsigned int mask); --- linux-azure-5.8-5.8.0.orig/include/linux/gpio/driver.h +++ linux-azure-5.8-5.8.0/include/linux/gpio/driver.h @@ -509,8 +509,16 @@ gpiochip_add_data_with_key(gc, data, &lock_key, \ &request_key); \ }) +#define devm_gpiochip_add_data(dev, gc, data) ({ \ + static struct lock_class_key lock_key; \ + static struct lock_class_key request_key; \ + devm_gpiochip_add_data_with_key(dev, gc, data, &lock_key, \ + &request_key); \ + }) #else #define gpiochip_add_data(gc, data) gpiochip_add_data_with_key(gc, data, NULL, NULL) +#define devm_gpiochip_add_data(dev, gc, data) \ + devm_gpiochip_add_data_with_key(dev, gc, data, NULL, NULL) #endif /* CONFIG_LOCKDEP */ static inline int gpiochip_add(struct gpio_chip *gc) @@ -518,8 +526,9 @@ return gpiochip_add_data(gc, NULL); } extern void gpiochip_remove(struct gpio_chip *gc); -extern int devm_gpiochip_add_data(struct device *dev, struct gpio_chip *gc, - void *data); +extern int devm_gpiochip_add_data_with_key(struct device *dev, struct gpio_chip *gc, void *data, + struct lock_class_key *lock_key, + struct lock_class_key *request_key); extern struct gpio_chip *gpiochip_find(void *data, int (*match)(struct gpio_chip *gc, void *data)); --- linux-azure-5.8-5.8.0.orig/include/linux/gpio/regmap.h +++ linux-azure-5.8-5.8.0/include/linux/gpio/regmap.h @@ -8,7 +8,7 @@ struct irq_domain; struct regmap; -#define GPIO_REGMAP_ADDR_ZERO ((unsigned long)(-1)) +#define GPIO_REGMAP_ADDR_ZERO ((unsigned int)(-1)) #define GPIO_REGMAP_ADDR(addr) ((addr) ? : GPIO_REGMAP_ADDR_ZERO) /** --- linux-azure-5.8-5.8.0.orig/include/linux/hid.h +++ linux-azure-5.8-5.8.0/include/linux/hid.h @@ -959,34 +959,49 @@ * @max: maximal valid usage->code to consider later (out parameter) * @type: input event type (EV_KEY, EV_REL, ...) * @c: code which corresponds to this usage and type + * + * The value pointed to by @bit will be set to NULL if either @type is + * an unhandled event type, or if @c is out of range for @type. This + * can be used as an error condition. */ static inline void hid_map_usage(struct hid_input *hidinput, struct hid_usage *usage, unsigned long **bit, int *max, - __u8 type, __u16 c) + __u8 type, unsigned int c) { struct input_dev *input = hidinput->input; - - usage->type = type; - usage->code = c; + unsigned long *bmap = NULL; + unsigned int limit = 0; switch (type) { case EV_ABS: - *bit = input->absbit; - *max = ABS_MAX; + bmap = input->absbit; + limit = ABS_MAX; break; case EV_REL: - *bit = input->relbit; - *max = REL_MAX; + bmap = input->relbit; + limit = REL_MAX; break; case EV_KEY: - *bit = input->keybit; - *max = KEY_MAX; + bmap = input->keybit; + limit = KEY_MAX; break; case EV_LED: - *bit = input->ledbit; - *max = LED_MAX; + bmap = input->ledbit; + limit = LED_MAX; break; } + + if (unlikely(c > limit || !bmap)) { + pr_warn_ratelimited("%s: Invalid code %d type %d\n", + input->name, c, type); + *bit = NULL; + return; + } + + usage->type = type; + usage->code = c; + *max = limit; + *bit = bmap; } /** @@ -1000,7 +1015,8 @@ __u8 type, __u16 c) { hid_map_usage(hidinput, usage, bit, max, type, c); - clear_bit(c, *bit); + if (*bit) + clear_bit(usage->code, *bit); } /** --- linux-azure-5.8-5.8.0.orig/include/linux/hil_mlc.h +++ linux-azure-5.8-5.8.0/include/linux/hil_mlc.h @@ -103,7 +103,7 @@ /* Methods for back-end drivers, e.g. hp_sdc_mlc */ typedef int (hil_mlc_cts) (hil_mlc *mlc); -typedef void (hil_mlc_out) (hil_mlc *mlc); +typedef int (hil_mlc_out) (hil_mlc *mlc); typedef int (hil_mlc_in) (hil_mlc *mlc, suseconds_t timeout); struct hil_mlc_devinfo { --- linux-azure-5.8-5.8.0.orig/include/linux/huge_mm.h +++ linux-azure-5.8-5.8.0/include/linux/huge_mm.h @@ -265,6 +265,19 @@ else return NULL; } + +/** + * thp_order - Order of a transparent huge page. + * @page: Head page of a transparent huge page. + */ +static inline unsigned int thp_order(struct page *page) +{ + VM_BUG_ON_PGFLAGS(PageTail(page), page); + if (PageHead(page)) + return HPAGE_PMD_ORDER; + return 0; +} + static inline int hpage_nr_pages(struct page *page) { if (unlikely(PageTransHuge(page))) @@ -324,6 +337,12 @@ #define HPAGE_PUD_MASK ({ BUILD_BUG(); 0; }) #define HPAGE_PUD_SIZE ({ BUILD_BUG(); 0; }) +static inline unsigned int thp_order(struct page *page) +{ + VM_BUG_ON_PGFLAGS(PageTail(page), page); + return 0; +} + static inline int hpage_nr_pages(struct page *page) { VM_BUG_ON_PAGE(PageTail(page), page); @@ -450,4 +469,15 @@ } #endif /* CONFIG_TRANSPARENT_HUGEPAGE */ +/** + * thp_size - Size of a transparent huge page. + * @page: Head page of a transparent huge page. + * + * Return: Number of bytes in this page. + */ +static inline unsigned long thp_size(struct page *page) +{ + return PAGE_SIZE << thp_order(page); +} + #endif /* _LINUX_HUGE_MM_H */ --- linux-azure-5.8-5.8.0.orig/include/linux/hugetlb.h +++ linux-azure-5.8-5.8.0/include/linux/hugetlb.h @@ -164,7 +164,8 @@ unsigned long addr, unsigned long sz); pte_t *huge_pte_offset(struct mm_struct *mm, unsigned long addr, unsigned long sz); -int huge_pmd_unshare(struct mm_struct *mm, unsigned long *addr, pte_t *ptep); +int huge_pmd_unshare(struct mm_struct *mm, struct vm_area_struct *vma, + unsigned long *addr, pte_t *ptep); void adjust_range_if_pmd_sharing_possible(struct vm_area_struct *vma, unsigned long *start, unsigned long *end); struct page *follow_huge_addr(struct mm_struct *mm, unsigned long address, @@ -203,8 +204,9 @@ return NULL; } -static inline int huge_pmd_unshare(struct mm_struct *mm, unsigned long *addr, - pte_t *ptep) +static inline int huge_pmd_unshare(struct mm_struct *mm, + struct vm_area_struct *vma, + unsigned long *addr, pte_t *ptep) { return 0; } @@ -749,6 +751,8 @@ } #endif +void set_page_huge_active(struct page *page); + #else /* CONFIG_HUGETLB_PAGE */ struct hstate {}; --- linux-azure-5.8-5.8.0.orig/include/linux/hyperv.h +++ linux-azure-5.8-5.8.0/include/linux/hyperv.h @@ -1523,7 +1523,6 @@ int vmbus_send_tl_connect_request(const guid_t *shv_guest_servie_id, const guid_t *shv_host_servie_id); int vmbus_send_modifychannel(u32 child_relid, u32 target_vp); -void vmbus_set_event(struct vmbus_channel *channel); /* Get the start of the ring buffer. */ static inline void * --- linux-azure-5.8-5.8.0.orig/include/linux/i2c-algo-pca.h +++ linux-azure-5.8-5.8.0/include/linux/i2c-algo-pca.h @@ -53,6 +53,20 @@ #define I2C_PCA_CON_SI 0x08 /* Serial Interrupt */ #define I2C_PCA_CON_CR 0x07 /* Clock Rate (MASK) */ +/** + * struct pca_i2c_bus_settings - The configured PCA i2c bus settings + * @mode: Configured i2c bus mode + * @tlow: Configured SCL LOW period + * @thi: Configured SCL HIGH period + * @clock_freq: The configured clock frequency + */ +struct pca_i2c_bus_settings { + int mode; + int tlow; + int thi; + int clock_freq; +}; + struct i2c_algo_pca_data { void *data; /* private low level data */ void (*write_byte) (void *data, int reg, int val); @@ -64,6 +78,7 @@ * For PCA9665, use the frequency you want here. */ unsigned int i2c_clock; unsigned int chip; + struct pca_i2c_bus_settings bus_settings; }; int i2c_pca_add_bus(struct i2c_adapter *); --- linux-azure-5.8-5.8.0.orig/include/linux/icmpv6.h +++ linux-azure-5.8-5.8.0/include/linux/icmpv6.h @@ -13,12 +13,32 @@ #include #if IS_ENABLED(CONFIG_IPV6) -extern void icmpv6_send(struct sk_buff *skb, u8 type, u8 code, __u32 info); typedef void ip6_icmp_send_t(struct sk_buff *skb, u8 type, u8 code, __u32 info, const struct in6_addr *force_saddr); +#if IS_BUILTIN(CONFIG_IPV6) +void icmp6_send(struct sk_buff *skb, u8 type, u8 code, __u32 info, + const struct in6_addr *force_saddr); +static inline void icmpv6_send(struct sk_buff *skb, u8 type, u8 code, __u32 info) +{ + icmp6_send(skb, type, code, info, NULL); +} +static inline int inet6_register_icmp_sender(ip6_icmp_send_t *fn) +{ + BUILD_BUG_ON(fn != icmp6_send); + return 0; +} +static inline int inet6_unregister_icmp_sender(ip6_icmp_send_t *fn) +{ + BUILD_BUG_ON(fn != icmp6_send); + return 0; +} +#else +extern void icmpv6_send(struct sk_buff *skb, u8 type, u8 code, __u32 info); extern int inet6_register_icmp_sender(ip6_icmp_send_t *fn); extern int inet6_unregister_icmp_sender(ip6_icmp_send_t *fn); +#endif + int ip6_err_gen_icmpv6_unreach(struct sk_buff *skb, int nhs, int type, unsigned int data_len); --- linux-azure-5.8-5.8.0.orig/include/linux/idr.h +++ linux-azure-5.8-5.8.0/include/linux/idr.h @@ -171,7 +171,7 @@ */ static inline void idr_preload_end(void) { - local_unlock(&radix_tree_preloads.lock); + preempt_enable(); } /** --- linux-azure-5.8-5.8.0.orig/include/linux/iio/adc/ad_sigma_delta.h +++ linux-azure-5.8-5.8.0/include/linux/iio/adc/ad_sigma_delta.h @@ -79,8 +79,12 @@ /* * DMA (thus cache coherency maintenance) requires the * transfer buffers to live in their own cache lines. + * 'tx_buf' is up to 32 bits. + * 'rx_buf' is up to 32 bits per sample + 64 bit timestamp, + * rounded to 16 bytes to take into account padding. */ - uint8_t data[4] ____cacheline_aligned; + uint8_t tx_buf[4] ____cacheline_aligned; + uint8_t rx_buf[16] __aligned(8); }; static inline int ad_sigma_delta_set_channel(struct ad_sigma_delta *sd, --- linux-azure-5.8-5.8.0.orig/include/linux/intel-iommu.h +++ linux-azure-5.8-5.8.0/include/linux/intel-iommu.h @@ -381,8 +381,8 @@ #define QI_DEV_EIOTLB_ADDR(a) ((u64)(a) & VTD_PAGE_MASK) #define QI_DEV_EIOTLB_SIZE (((u64)1) << 11) -#define QI_DEV_EIOTLB_GLOB(g) ((u64)g) -#define QI_DEV_EIOTLB_PASID(p) (((u64)p) << 32) +#define QI_DEV_EIOTLB_GLOB(g) ((u64)(g) & 0x1) +#define QI_DEV_EIOTLB_PASID(p) ((u64)((p) & 0xfffff) << 32) #define QI_DEV_EIOTLB_SID(sid) ((u64)((sid) & 0xffff) << 16) #define QI_DEV_EIOTLB_QDEP(qd) ((u64)((qd) & 0x1f) << 4) #define QI_DEV_EIOTLB_PFSID(pfsid) (((u64)(pfsid & 0xf) << 12) | \ @@ -600,6 +600,8 @@ struct iommu_device iommu; /* IOMMU core code handle */ int node; u32 flags; /* Software defined flags */ + + struct dmar_drhd_unit *drhd; }; /* PCI domain-device relationship */ @@ -746,6 +748,7 @@ struct list_head list; struct rcu_head rcu; struct device *dev; + struct intel_iommu *iommu; struct svm_dev_ops *ops; struct iommu_sva sva; int pasid; @@ -759,7 +762,6 @@ struct mmu_notifier notifier; struct mm_struct *mm; - struct intel_iommu *iommu; int flags; int pasid; int gpasid; /* In case that guest PASID is different from host PASID */ @@ -788,7 +790,7 @@ extern int iommu_calculate_max_sagaw(struct intel_iommu *iommu); extern int dmar_disabled; extern int intel_iommu_enabled; -extern int intel_iommu_tboot_noforce; +extern int intel_iommu_gfx_mapped; #else static inline int iommu_calculate_agaw(struct intel_iommu *iommu) { --- linux-azure-5.8-5.8.0.orig/include/linux/io_uring.h +++ linux-azure-5.8-5.8.0/include/linux/io_uring.h @@ -0,0 +1,53 @@ +/* SPDX-License-Identifier: GPL-2.0-or-later */ +#ifndef _LINUX_IO_URING_H +#define _LINUX_IO_URING_H + +#include +#include +#include + +struct io_uring_task { + /* submission side */ + struct xarray xa; + struct wait_queue_head wait; + struct file *last; + atomic_long_t req_issue; + + /* completion side */ + bool in_idle ____cacheline_aligned_in_smp; + atomic_long_t req_complete; +}; + +#if defined(CONFIG_IO_URING) +void __io_uring_task_cancel(void); +void __io_uring_files_cancel(struct files_struct *files); +void __io_uring_free(struct task_struct *tsk); + +static inline void io_uring_task_cancel(void) +{ + if (current->io_uring && !xa_empty(¤t->io_uring->xa)) + __io_uring_task_cancel(); +} +static inline void io_uring_files_cancel(struct files_struct *files) +{ + if (current->io_uring && !xa_empty(¤t->io_uring->xa)) + __io_uring_files_cancel(files); +} +static inline void io_uring_free(struct task_struct *tsk) +{ + if (tsk->io_uring) + __io_uring_free(tsk); +} +#else +static inline void io_uring_task_cancel(void) +{ +} +static inline void io_uring_files_cancel(struct files_struct *files) +{ +} +static inline void io_uring_free(struct task_struct *tsk) +{ +} +#endif + +#endif --- linux-azure-5.8-5.8.0.orig/include/linux/iommu.h +++ linux-azure-5.8-5.8.0/include/linux/iommu.h @@ -175,7 +175,7 @@ * struct iommu_iotlb_gather - Range information for a pending IOTLB flush * * @start: IOVA representing the start of the range to be flushed - * @end: IOVA representing the end of the range to be flushed (exclusive) + * @end: IOVA representing the end of the range to be flushed (inclusive) * @pgsize: The interval at which to perform the flush * * This structure is intended to be updated by multiple calls to the @@ -555,7 +555,7 @@ struct iommu_iotlb_gather *gather, unsigned long iova, size_t size) { - unsigned long start = iova, end = start + size; + unsigned long start = iova, end = start + size - 1; /* * If the new page is disjoint from the current range or is mapped at @@ -633,7 +633,10 @@ static inline void *dev_iommu_priv_get(struct device *dev) { - return dev->iommu->priv; + if (dev->iommu) + return dev->iommu->priv; + else + return NULL; } static inline void dev_iommu_priv_set(struct device *dev, void *priv) --- linux-azure-5.8-5.8.0.orig/include/linux/ipc_namespace.h +++ linux-azure-5.8-5.8.0/include/linux/ipc_namespace.h @@ -121,6 +121,9 @@ static inline int mq_init_ns(struct ipc_namespace *ns) { return 0; } #endif +extern struct ipc_namespace *get_ipc_ns_exported(struct ipc_namespace *ns); +extern struct ipc_namespace *show_init_ipc_ns(void); + #if defined(CONFIG_IPC_NS) extern struct ipc_namespace *copy_ipcs(unsigned long flags, struct user_namespace *user_ns, struct ipc_namespace *ns); --- linux-azure-5.8-5.8.0.orig/include/linux/irq.h +++ linux-azure-5.8-5.8.0/include/linux/irq.h @@ -213,6 +213,8 @@ * required * IRQD_HANDLE_ENFORCE_IRQCTX - Enforce that handle_irq_*() is only invoked * from actual interrupt context. + * IRQD_AFFINITY_ON_ACTIVATE - Affinity is set on activation. Don't call + * irq_chip::irq_set_affinity() when deactivated. */ enum { IRQD_TRIGGER_MASK = 0xf, @@ -237,6 +239,7 @@ IRQD_CAN_RESERVE = (1 << 26), IRQD_MSI_NOMASK_QUIRK = (1 << 27), IRQD_HANDLE_ENFORCE_IRQCTX = (1 << 28), + IRQD_AFFINITY_ON_ACTIVATE = (1 << 29), }; #define __irqd_to_state(d) ACCESS_PRIVATE((d)->common, state_use_accessors) @@ -421,6 +424,16 @@ return __irqd_to_state(d) & IRQD_MSI_NOMASK_QUIRK; } +static inline void irqd_set_affinity_on_activate(struct irq_data *d) +{ + __irqd_to_state(d) |= IRQD_AFFINITY_ON_ACTIVATE; +} + +static inline bool irqd_affinity_on_activate(struct irq_data *d) +{ + return __irqd_to_state(d) & IRQD_AFFINITY_ON_ACTIVATE; +} + #undef __irqd_to_state static inline irq_hw_number_t irqd_to_hwirq(struct irq_data *d) @@ -895,7 +908,7 @@ __irq_alloc_descs(irq, from, cnt, node, THIS_MODULE, NULL) #define irq_alloc_desc(node) \ - irq_alloc_descs(-1, 0, 1, node) + irq_alloc_descs(-1, 1, 1, node) #define irq_alloc_desc_at(at, node) \ irq_alloc_descs(at, at, 1, node) @@ -910,7 +923,7 @@ __devm_irq_alloc_descs(dev, irq, from, cnt, node, THIS_MODULE, NULL) #define devm_irq_alloc_desc(dev, node) \ - devm_irq_alloc_descs(dev, -1, 0, 1, node) + devm_irq_alloc_descs(dev, -1, 1, 1, node) #define devm_irq_alloc_desc_at(dev, at, node) \ devm_irq_alloc_descs(dev, at, at, 1, node) --- linux-azure-5.8-5.8.0.orig/include/linux/irqdomain.h +++ linux-azure-5.8-5.8.0/include/linux/irqdomain.h @@ -383,11 +383,19 @@ extern void irq_domain_disassociate(struct irq_domain *domain, unsigned int irq); -extern unsigned int irq_create_mapping(struct irq_domain *host, - irq_hw_number_t hwirq); +extern unsigned int irq_create_mapping_affinity(struct irq_domain *host, + irq_hw_number_t hwirq, + const struct irq_affinity_desc *affinity); extern unsigned int irq_create_fwspec_mapping(struct irq_fwspec *fwspec); extern void irq_dispose_mapping(unsigned int virq); +static inline unsigned int irq_create_mapping(struct irq_domain *host, + irq_hw_number_t hwirq) +{ + return irq_create_mapping_affinity(host, hwirq, NULL); +} + + /** * irq_linear_revmap() - Find a linux irq from a hw irq number. * @domain: domain owning this hardware interrupt --- linux-azure-5.8-5.8.0.orig/include/linux/jbd2.h +++ linux-azure-5.8-5.8.0/include/linux/jbd2.h @@ -44,7 +44,7 @@ /* * The default maximum commit age, in seconds. */ -#define JBD2_DEFAULT_MAX_COMMIT_AGE 5 +#define JBD2_DEFAULT_MAX_COMMIT_AGE 30 #ifdef CONFIG_JBD2_DEBUG /* --- linux-azure-5.8-5.8.0.orig/include/linux/kdev_t.h +++ linux-azure-5.8-5.8.0/include/linux/kdev_t.h @@ -21,61 +21,61 @@ }) /* acceptable for old filesystems */ -static inline bool old_valid_dev(dev_t dev) +static __always_inline bool old_valid_dev(dev_t dev) { return MAJOR(dev) < 256 && MINOR(dev) < 256; } -static inline u16 old_encode_dev(dev_t dev) +static __always_inline u16 old_encode_dev(dev_t dev) { return (MAJOR(dev) << 8) | MINOR(dev); } -static inline dev_t old_decode_dev(u16 val) +static __always_inline dev_t old_decode_dev(u16 val) { return MKDEV((val >> 8) & 255, val & 255); } -static inline u32 new_encode_dev(dev_t dev) +static __always_inline u32 new_encode_dev(dev_t dev) { unsigned major = MAJOR(dev); unsigned minor = MINOR(dev); return (minor & 0xff) | (major << 8) | ((minor & ~0xff) << 12); } -static inline dev_t new_decode_dev(u32 dev) +static __always_inline dev_t new_decode_dev(u32 dev) { unsigned major = (dev & 0xfff00) >> 8; unsigned minor = (dev & 0xff) | ((dev >> 12) & 0xfff00); return MKDEV(major, minor); } -static inline u64 huge_encode_dev(dev_t dev) +static __always_inline u64 huge_encode_dev(dev_t dev) { return new_encode_dev(dev); } -static inline dev_t huge_decode_dev(u64 dev) +static __always_inline dev_t huge_decode_dev(u64 dev) { return new_decode_dev(dev); } -static inline int sysv_valid_dev(dev_t dev) +static __always_inline int sysv_valid_dev(dev_t dev) { return MAJOR(dev) < (1<<14) && MINOR(dev) < (1<<18); } -static inline u32 sysv_encode_dev(dev_t dev) +static __always_inline u32 sysv_encode_dev(dev_t dev) { return MINOR(dev) | (MAJOR(dev) << 18); } -static inline unsigned sysv_major(u32 dev) +static __always_inline unsigned sysv_major(u32 dev) { return (dev >> 18) & 0x3fff; } -static inline unsigned sysv_minor(u32 dev) +static __always_inline unsigned sysv_minor(u32 dev) { return dev & 0x3ffff; } --- linux-azure-5.8-5.8.0.orig/include/linux/kexec.h +++ linux-azure-5.8-5.8.0/include/linux/kexec.h @@ -293,6 +293,11 @@ /* Information for loading purgatory */ struct purgatory_info purgatory_info; #endif + +#ifdef CONFIG_IMA_KEXEC + /* Virtual address of IMA measurement buffer for kexec syscall */ + void *ima_buffer; +#endif }; /* kexec interface functions */ --- linux-azure-5.8-5.8.0.orig/include/linux/key.h +++ linux-azure-5.8-5.8.0/include/linux/key.h @@ -289,6 +289,7 @@ #define KEY_ALLOC_BUILT_IN 0x0004 /* Key is built into kernel */ #define KEY_ALLOC_BYPASS_RESTRICTION 0x0008 /* Override the check on restricted keyrings */ #define KEY_ALLOC_UID_KEYRING 0x0010 /* allocating a user or user session keyring */ +#define KEY_ALLOC_SET_KEEP 0x0020 /* Set the KEEP flag on the key/keyring */ extern void key_revoke(struct key *key); extern void key_invalidate(struct key *key); --- linux-azure-5.8-5.8.0.orig/include/linux/kgdb.h +++ linux-azure-5.8-5.8.0/include/linux/kgdb.h @@ -342,9 +342,11 @@ extern bool dbg_is_early; extern void __init dbg_late_init(void); extern void kgdb_panic(const char *msg); +extern void kgdb_free_init_mem(void); #else /* ! CONFIG_KGDB */ #define in_dbg_master() (0) #define dbg_late_init() static inline void kgdb_panic(const char *msg) {} +static inline void kgdb_free_init_mem(void) { } #endif /* ! CONFIG_KGDB */ #endif /* _KGDB_H_ */ --- linux-azure-5.8-5.8.0.orig/include/linux/khugepaged.h +++ linux-azure-5.8-5.8.0/include/linux/khugepaged.h @@ -3,6 +3,7 @@ #define _LINUX_KHUGEPAGED_H #include /* MMF_VM_HUGEPAGE */ +#include #ifdef CONFIG_TRANSPARENT_HUGEPAGE @@ -15,6 +16,7 @@ extern void __khugepaged_exit(struct mm_struct *mm); extern int khugepaged_enter_vma_merge(struct vm_area_struct *vma, unsigned long vm_flags); +extern void khugepaged_min_free_kbytes_update(void); #ifdef CONFIG_SHMEM extern void collapse_pte_mapped_thp(struct mm_struct *mm, unsigned long addr); #else @@ -56,6 +58,7 @@ { if (!test_bit(MMF_VM_HUGEPAGE, &vma->vm_mm->flags)) if ((khugepaged_always() || + (shmem_file(vma->vm_file) && shmem_huge_enabled(vma)) || (khugepaged_req_madv() && (vm_flags & VM_HUGEPAGE))) && !(vm_flags & VM_NOHUGEPAGE) && !test_bit(MMF_DISABLE_THP, &vma->vm_mm->flags)) @@ -85,6 +88,10 @@ unsigned long addr) { } + +static inline void khugepaged_min_free_kbytes_update(void) +{ +} #endif /* CONFIG_TRANSPARENT_HUGEPAGE */ #endif /* _LINUX_KHUGEPAGED_H */ --- linux-azure-5.8-5.8.0.orig/include/linux/kprobes.h +++ linux-azure-5.8-5.8.0/include/linux/kprobes.h @@ -232,7 +232,7 @@ extern bool arch_within_kprobe_blacklist(unsigned long addr); extern int arch_populate_kprobe_blacklist(void); extern bool arch_kprobe_on_func_entry(unsigned long offset); -extern bool kprobe_on_func_entry(kprobe_opcode_t *addr, const char *sym, unsigned long offset); +extern int kprobe_on_func_entry(kprobe_opcode_t *addr, const char *sym, unsigned long offset); extern bool within_kprobe_blacklist(unsigned long addr); extern int kprobe_add_ksym_blacklist(unsigned long entry); @@ -369,6 +369,8 @@ void kprobe_flush_task(struct task_struct *tk); void recycle_rp_inst(struct kretprobe_instance *ri, struct hlist_head *head); +void kprobe_free_init_mem(void); + int disable_kprobe(struct kprobe *kp); int enable_kprobe(struct kprobe *kp); @@ -426,6 +428,9 @@ static inline void kprobe_flush_task(struct task_struct *tk) { } +static inline void kprobe_free_init_mem(void) +{ +} static inline int disable_kprobe(struct kprobe *kp) { return -ENOSYS; --- linux-azure-5.8-5.8.0.orig/include/linux/kthread.h +++ linux-azure-5.8-5.8.0/include/linux/kthread.h @@ -33,6 +33,9 @@ unsigned int cpu, const char *namefmt); +void kthread_set_per_cpu(struct task_struct *k, int cpu); +bool kthread_is_per_cpu(struct task_struct *k); + /** * kthread_run - create and wake a thread. * @threadfn: the function to run until signal_pending(current). --- linux-azure-5.8-5.8.0.orig/include/linux/libata.h +++ linux-azure-5.8-5.8.0/include/linux/libata.h @@ -421,6 +421,7 @@ ATA_HORKAGE_NO_DMA_LOG = (1 << 23), /* don't use DMA for log read */ ATA_HORKAGE_NOTRIM = (1 << 24), /* don't use TRIM */ ATA_HORKAGE_MAX_SEC_1024 = (1 << 25), /* Limit max sects to 1024 */ + ATA_HORKAGE_MAX_TRIM_128M = (1 << 26), /* Limit max trim size to 128M */ /* DMA mask for user DMA control: User visible values; DO NOT renumber */ --- linux-azure-5.8-5.8.0.orig/include/linux/libnvdimm.h +++ linux-azure-5.8-5.8.0/include/linux/libnvdimm.h @@ -78,6 +78,8 @@ const struct attribute_group **attr_groups; unsigned long bus_dsm_mask; unsigned long cmd_mask; + unsigned long dimm_family_mask; + unsigned long bus_family_mask; struct module *module; char *provider_name; struct device_node *of_node; --- linux-azure-5.8-5.8.0.orig/include/linux/linkage.h +++ linux-azure-5.8-5.8.0/include/linux/linkage.h @@ -178,6 +178,11 @@ * Objtool generates debug info for both FUNC & CODE, but needs special * annotations for each CODE's start (to describe the actual stack frame). * + * Objtool requires that all code must be contained in an ELF symbol. Symbol + * names that have a .L prefix do not emit symbol table entries. .L + * prefixed symbols can be used within a code region, but should be avoided for + * denoting a range of code via ``SYM_*_START/END`` annotations. + * * ALIAS -- does not generate debug info -- the aliased function will */ --- linux-azure-5.8-5.8.0.orig/include/linux/lockdep.h +++ linux-azure-5.8-5.8.0/include/linux/lockdep.h @@ -395,6 +395,8 @@ return lock->key == key; } +struct lock_class *lockdep_hlock_class(struct held_lock *hlock); + /* * Acquire a lock. * @@ -540,6 +542,7 @@ #define lockdep_depth(tsk) (0) +#define lockdep_is_held(lock) (1) #define lockdep_is_held_type(l, r) (1) #define lockdep_assert_held(l) do { (void)(l); } while (0) --- linux-azure-5.8-5.8.0.orig/include/linux/log2.h +++ linux-azure-5.8-5.8.0/include/linux/log2.h @@ -173,7 +173,7 @@ #define roundup_pow_of_two(n) \ ( \ __builtin_constant_p(n) ? ( \ - (n == 1) ? 1 : \ + ((n) == 1) ? 1 : \ (1UL << (ilog2((n) - 1) + 1)) \ ) : \ __roundup_pow_of_two(n) \ --- linux-azure-5.8-5.8.0.orig/include/linux/lsm_hook_defs.h +++ linux-azure-5.8-5.8.0/include/linux/lsm_hook_defs.h @@ -383,6 +383,8 @@ #endif /* CONFIG_BPF_SYSCALL */ LSM_HOOK(int, 0, locked_down, enum lockdown_reason what) +LSM_HOOK(int, 0, lock_kernel_down, const char *where, enum lockdown_reason level) + #ifdef CONFIG_PERF_EVENTS LSM_HOOK(int, 0, perf_event_open, struct perf_event_attr *attr, int type) --- linux-azure-5.8-5.8.0.orig/include/linux/lsm_hooks.h +++ linux-azure-5.8-5.8.0/include/linux/lsm_hooks.h @@ -1359,6 +1359,12 @@ * @pages contains the number of pages. * Return 0 if permission is granted. * + * @getprocattr: + * Provide the named process attribute for display in special files in + * the /proc/.../attr directory. Attribute naming and the data displayed + * is at the discretion of the security modules. The exception is the + * "context" attribute, which will contain the security context of the + * task as a nul terminated text string without trailing whitespace. * @ismaclabel: * Check if the extended attribute specified by @name * represents a MAC label. Returns 1 if name is a MAC @@ -1507,6 +1513,12 @@ * * @what: kernel feature being accessed * + * @lock_kernel_down + * Put the kernel into lock-down mode. + * + * @where: Where the lock-down is originating from (e.g. command line option) + * @level: The lock-down level (can only increase) + * * Security hooks for perf events * * @perf_event_open: @@ -1533,6 +1545,14 @@ } __randomize_layout; /* + * Information that identifies a security module. + */ +struct lsm_id { + const char *lsm; /* Name of the LSM */ + int slot; /* Slot in lsmblob if one is allocated */ +}; + +/* * Security module hook list structure. * For use with generic list macros for common operations. */ @@ -1540,7 +1560,7 @@ struct hlist_node list; struct hlist_head *head; union security_list_options hook; - char *lsm; + struct lsm_id *lsmid; } __randomize_layout; /* @@ -1550,6 +1570,7 @@ int lbs_cred; int lbs_file; int lbs_inode; + int lbs_sock; int lbs_ipc; int lbs_msg_msg; int lbs_task; @@ -1574,7 +1595,7 @@ extern char *lsm_names; extern void security_add_hooks(struct security_hook_list *hooks, int count, - char *lsm); + struct lsm_id *lsmid); #define LSM_FLAG_LEGACY_MAJOR BIT(0) #define LSM_FLAG_EXCLUSIVE BIT(1) @@ -1638,4 +1659,21 @@ extern int lsm_inode_alloc(struct inode *inode); +/** + * lsm_task_display - the "display" LSM for this task + * @task: The task to report on + * + * Returns the task's display LSM slot. + */ +static inline int lsm_task_display(struct task_struct *task) +{ +#ifdef CONFIG_SECURITY + int *display = task->security; + + if (display) + return *display; +#endif + return LSMBLOB_INVALID; +} + #endif /* ! __LINUX_LSM_HOOKS_H */ --- linux-azure-5.8-5.8.0.orig/include/linux/mailbox/mtk-cmdq-mailbox.h +++ linux-azure-5.8-5.8.0/include/linux/mailbox/mtk-cmdq-mailbox.h @@ -27,8 +27,7 @@ * bit 16-27: update value * bit 31: 1 - update, 0 - no update */ -#define CMDQ_WFE_OPTION (CMDQ_WFE_UPDATE | CMDQ_WFE_WAIT | \ - CMDQ_WFE_WAIT_VALUE) +#define CMDQ_WFE_OPTION (CMDQ_WFE_WAIT | CMDQ_WFE_WAIT_VALUE) /** cmdq event maximum */ #define CMDQ_MAX_EVENT 0x3ff --- linux-azure-5.8-5.8.0.orig/include/linux/memcontrol.h +++ linux-azure-5.8-5.8.0/include/linux/memcontrol.h @@ -764,12 +764,19 @@ static inline void memcg_memory_event(struct mem_cgroup *memcg, enum memcg_memory_event event) { + bool swap_event = event == MEMCG_SWAP_HIGH || event == MEMCG_SWAP_MAX || + event == MEMCG_SWAP_FAIL; + atomic_long_inc(&memcg->memory_events_local[event]); - cgroup_file_notify(&memcg->events_local_file); + if (!swap_event) + cgroup_file_notify(&memcg->events_local_file); do { atomic_long_inc(&memcg->memory_events[event]); - cgroup_file_notify(&memcg->events_file); + if (swap_event) + cgroup_file_notify(&memcg->swap_events_file); + else + cgroup_file_notify(&memcg->events_file); if (!cgroup_subsys_on_dfl(memory_cgrp_subsys)) break; --- linux-azure-5.8-5.8.0.orig/include/linux/memory_hotplug.h +++ linux-azure-5.8-5.8.0/include/linux/memory_hotplug.h @@ -235,6 +235,11 @@ void mem_hotplug_begin(void); void mem_hotplug_done(void); +extern void set_zone_contiguous(struct zone *zone); +extern void clear_zone_contiguous(struct zone *zone); + +void set_default_mem_hotplug_zone(enum zone_type zone); + #else /* ! CONFIG_MEMORY_HOTPLUG */ #define pfn_to_online_page(pfn) \ ({ \ @@ -278,6 +283,8 @@ static inline void mem_hotplug_begin(void) {} static inline void mem_hotplug_done(void) {} +static inline void set_default_mem_hotplug_zone(enum zone_type zone) {} + static inline bool movable_node_is_enabled(void) { return false; --- linux-azure-5.8-5.8.0.orig/include/linux/memstick.h +++ linux-azure-5.8-5.8.0/include/linux/memstick.h @@ -281,6 +281,7 @@ struct memstick_dev *card; unsigned int retries; + bool removing; /* Notify the host that some requests are pending. */ void (*request)(struct memstick_host *host); --- linux-azure-5.8-5.8.0.orig/include/linux/mfd/rohm-generic.h +++ linux-azure-5.8-5.8.0/include/linux/mfd/rohm-generic.h @@ -20,14 +20,12 @@ struct regmap *regmap; }; -enum { - ROHM_DVS_LEVEL_UNKNOWN, - ROHM_DVS_LEVEL_RUN, - ROHM_DVS_LEVEL_IDLE, - ROHM_DVS_LEVEL_SUSPEND, - ROHM_DVS_LEVEL_LPSR, - ROHM_DVS_LEVEL_MAX = ROHM_DVS_LEVEL_LPSR, -}; +#define ROHM_DVS_LEVEL_RUN BIT(0) +#define ROHM_DVS_LEVEL_IDLE BIT(1) +#define ROHM_DVS_LEVEL_SUSPEND BIT(2) +#define ROHM_DVS_LEVEL_LPSR BIT(3) +#define ROHM_DVS_LEVEL_VALID_AMOUNT 4 +#define ROHM_DVS_LEVEL_UNKNOWN 0 /** * struct rohm_dvs_config - dynamic voltage scaling register descriptions --- linux-azure-5.8-5.8.0.orig/include/linux/mlx5/device.h +++ linux-azure-5.8-5.8.0/include/linux/mlx5/device.h @@ -458,6 +458,15 @@ MLX5_OPC_MOD_TLS_TIR_PROGRESS_PARAMS = 0x2, }; +struct mlx5_wqe_tls_static_params_seg { + u8 ctx[MLX5_ST_SZ_BYTES(tls_static_params)]; +}; + +struct mlx5_wqe_tls_progress_params_seg { + __be32 tis_tir_num; + u8 ctx[MLX5_ST_SZ_BYTES(tls_progress_params)]; +}; + enum { MLX5_SET_PORT_RESET_QKEY = 0, MLX5_SET_PORT_GUID0 = 16, --- linux-azure-5.8-5.8.0.orig/include/linux/mlx5/driver.h +++ linux-azure-5.8-5.8.0/include/linux/mlx5/driver.h @@ -764,6 +764,8 @@ u64 ts2; u16 op; bool polling; + /* Track the max comp handlers */ + refcount_t refcnt; }; struct mlx5_pas { --- linux-azure-5.8-5.8.0.orig/include/linux/mlx5/mlx5_ifc.h +++ linux-azure-5.8-5.8.0/include/linux/mlx5/mlx5_ifc.h @@ -1194,6 +1194,11 @@ #define MLX5_FC_BULK_NUM_FCS(fc_enum) (MLX5_FC_BULK_SIZE_FACTOR * (fc_enum)) +enum { + MLX5_STEERING_FORMAT_CONNECTX_5 = 0, + MLX5_STEERING_FORMAT_CONNECTX_6DX = 1, +}; + struct mlx5_ifc_cmd_hca_cap_bits { u8 reserved_at_0[0x30]; u8 vhca_id[0x10]; @@ -1212,7 +1217,9 @@ u8 ece_support[0x1]; u8 reserved_at_a4[0x7]; u8 log_max_srq[0x5]; - u8 reserved_at_b0[0x10]; + u8 reserved_at_b0[0x1]; + u8 uplink_follow[0x1]; + u8 reserved_at_b2[0xe]; u8 max_sgl_for_optimized_performance[0x8]; u8 log_max_cq_sz[0x8]; @@ -1484,7 +1491,9 @@ u8 general_obj_types[0x40]; - u8 reserved_at_440[0x20]; + u8 reserved_at_440[0x4]; + u8 steering_format_version[0x4]; + u8 create_qp_start_hint[0x18]; u8 reserved_at_460[0x3]; u8 log_max_uctx[0x5]; @@ -10669,16 +10678,13 @@ }; struct mlx5_ifc_tls_progress_params_bits { - u8 reserved_at_0[0x8]; - u8 tisn[0x18]; - u8 next_record_tcp_sn[0x20]; u8 hw_resync_tcp_sn[0x20]; u8 record_tracker_state[0x2]; u8 auth_state[0x2]; - u8 reserved_at_64[0x4]; + u8 reserved_at_44[0x4]; u8 hw_offset_record_number[0x18]; }; --- linux-azure-5.8-5.8.0.orig/include/linux/mlx5/qp.h +++ linux-azure-5.8-5.8.0/include/linux/mlx5/qp.h @@ -209,7 +209,7 @@ __be32 general_id; __be32 imm; __be32 umr_mkey; - __be32 tisn; + __be32 tis_tir_num; }; }; --- linux-azure-5.8-5.8.0.orig/include/linux/mm.h +++ linux-azure-5.8-5.8.0/include/linux/mm.h @@ -1628,9 +1628,11 @@ unsigned long end, unsigned long floor, unsigned long ceiling); int copy_page_range(struct mm_struct *dst, struct mm_struct *src, struct vm_area_struct *vma); -int follow_pte_pmd(struct mm_struct *mm, unsigned long address, - struct mmu_notifier_range *range, - pte_t **ptepp, pmd_t **pmdpp, spinlock_t **ptlp); +int follow_invalidate_pte(struct mm_struct *mm, unsigned long address, + struct mmu_notifier_range *range, pte_t **ptepp, + pmd_t **pmdpp, spinlock_t **ptlp); +int follow_pte(struct mm_struct *mm, unsigned long address, + pte_t **ptepp, spinlock_t **ptlp); int follow_pfn(struct vm_area_struct *vma, unsigned long address, unsigned long *pfn); int follow_phys(struct vm_area_struct *vma, unsigned long address, @@ -1684,6 +1686,28 @@ unmap_mapping_range(mapping, holebegin, holelen, 0); } +extern void vma_do_file_update_time(struct vm_area_struct *, const char[], int); +extern struct file *vma_do_pr_or_file(struct vm_area_struct *, const char[], + int); +extern void vma_do_get_file(struct vm_area_struct *, const char[], int); +extern void vma_do_fput(struct vm_area_struct *, const char[], int); + +#define vma_file_update_time(vma) vma_do_file_update_time(vma, __func__, \ + __LINE__) +#define vma_pr_or_file(vma) vma_do_pr_or_file(vma, __func__, \ + __LINE__) +#define vma_get_file(vma) vma_do_get_file(vma, __func__, __LINE__) +#define vma_fput(vma) vma_do_fput(vma, __func__, __LINE__) + +#ifndef CONFIG_MMU +extern struct file *vmr_do_pr_or_file(struct vm_region *, const char[], int); +extern void vmr_do_fput(struct vm_region *, const char[], int); + +#define vmr_pr_or_file(region) vmr_do_pr_or_file(region, __func__, \ + __LINE__) +#define vmr_fput(region) vmr_do_fput(region, __func__, __LINE__) +#endif /* !CONFIG_MMU */ + extern int access_process_vm(struct task_struct *tsk, unsigned long addr, void *buf, int len, unsigned int gup_flags); extern int access_remote_vm(struct mm_struct *mm, unsigned long addr, @@ -2444,8 +2468,9 @@ #endif extern void set_dma_reserve(unsigned long new_dma_reserve); -extern void memmap_init_zone(unsigned long, int, unsigned long, unsigned long, - enum memmap_context, struct vmem_altmap *); +extern void memmap_init_zone(unsigned long, int, unsigned long, + unsigned long, unsigned long, enum meminit_context, + struct vmem_altmap *); extern void setup_per_zone_wmarks(void); extern int __meminit init_per_zone_wmark_min(void); extern void mem_init(void); @@ -2774,6 +2799,15 @@ return VM_FAULT_NOPAGE; } +#ifndef io_remap_pfn_range +static inline int io_remap_pfn_range(struct vm_area_struct *vma, + unsigned long addr, unsigned long pfn, + unsigned long size, pgprot_t prot) +{ + return remap_pfn_range(vma, addr, pfn, size, pgprot_decrypted(prot)); +} +#endif + static inline vm_fault_t vmf_error(int err) { if (err == -ENOMEM) --- linux-azure-5.8-5.8.0.orig/include/linux/mm_types.h +++ linux-azure-5.8-5.8.0/include/linux/mm_types.h @@ -276,6 +276,7 @@ unsigned long vm_top; /* region allocated to here */ unsigned long vm_pgoff; /* the offset in vm_file corresponding to vm_start */ struct file *vm_file; /* the backing file or NULL */ + struct file *vm_prfile; /* the virtual backing file or NULL */ int vm_usage; /* region usage count (access under nommu_region_sem) */ bool vm_icache_flushed : 1; /* true if the icache has been flushed for @@ -355,6 +356,7 @@ unsigned long vm_pgoff; /* Offset (within vm_file) in PAGE_SIZE units */ struct file * vm_file; /* File we map to (can be NULL). */ + struct file *vm_prfile; /* shadow of vm_file */ void * vm_private_data; /* was vm_pte (shared mem) */ #ifdef CONFIG_SWAP --- linux-azure-5.8-5.8.0.orig/include/linux/mmzone.h +++ linux-azure-5.8-5.8.0/include/linux/mmzone.h @@ -799,10 +799,15 @@ unsigned int alloc_flags); bool zone_watermark_ok_safe(struct zone *z, unsigned int order, unsigned long mark, int highest_zoneidx); -enum memmap_context { - MEMMAP_EARLY, - MEMMAP_HOTPLUG, +/* + * Memory initialization context, use to differentiate memory added by + * the platform statically or via memory hotplug interface. + */ +enum meminit_context { + MEMINIT_EARLY, + MEMINIT_HOTPLUG, }; + extern void init_currently_empty_zone(struct zone *zone, unsigned long start_pfn, unsigned long size); --- linux-azure-5.8-5.8.0.orig/include/linux/mnt_namespace.h +++ linux-azure-5.8-5.8.0/include/linux/mnt_namespace.h @@ -7,12 +7,15 @@ struct fs_struct; struct user_namespace; struct ns_common; +struct vfsmount; extern struct mnt_namespace *copy_mnt_ns(unsigned long, struct mnt_namespace *, struct user_namespace *, struct fs_struct *); extern void put_mnt_ns(struct mnt_namespace *ns); extern struct ns_common *from_mnt_ns(struct mnt_namespace *); +extern int is_current_mnt_ns(struct vfsmount *mnt); + extern const struct file_operations proc_mounts_operations; extern const struct file_operations proc_mountinfo_operations; extern const struct file_operations proc_mountstats_operations; --- linux-azure-5.8-5.8.0.orig/include/linux/msi.h +++ linux-azure-5.8-5.8.0/include/linux/msi.h @@ -139,6 +139,12 @@ list_for_each_entry((desc), dev_to_msi_list((dev)), list) #define for_each_msi_entry_safe(desc, tmp, dev) \ list_for_each_entry_safe((desc), (tmp), dev_to_msi_list((dev)), list) +#define for_each_msi_vector(desc, __irq, dev) \ + for_each_msi_entry((desc), (dev)) \ + if ((desc)->irq) \ + for (__irq = (desc)->irq; \ + __irq < ((desc)->irq + (desc)->nvec_used); \ + __irq++) #ifdef CONFIG_IRQ_MSI_IOMMU static inline const void *msi_desc_get_iommu_cookie(struct msi_desc *desc) --- linux-azure-5.8-5.8.0.orig/include/linux/mtd/pfow.h +++ linux-azure-5.8-5.8.0/include/linux/mtd/pfow.h @@ -128,7 +128,7 @@ if (!(dsr & DSR_AVAILABLE)) printk(KERN_NOTICE"DSR.15: (0) Device not Available\n"); - if (prog_status & 0x03) + if ((prog_status & 0x03) == 0x03) printk(KERN_NOTICE"DSR.9,8: (11) Attempt to program invalid " "half with 41h command\n"); else if (prog_status & 0x02) --- linux-azure-5.8-5.8.0.orig/include/linux/net.h +++ linux-azure-5.8-5.8.0/include/linux/net.h @@ -21,6 +21,7 @@ #include #include #include +#include #include @@ -290,6 +291,21 @@ #define net_get_random_once_wait(buf, nbytes) \ get_random_once_wait((buf), (nbytes)) +/* + * E.g. XFS meta- & log-data is in slab pages, or bcache meta + * data pages, or other high order pages allocated by + * __get_free_pages() without __GFP_COMP, which have a page_count + * of 0 and/or have PageSlab() set. We cannot use send_page for + * those, as that does get_page(); put_page(); and would cause + * either a VM_BUG directly, or __page_cache_release a page that + * would actually still be referenced by someone, leading to some + * obscure delayed Oops somewhere else. + */ +static inline bool sendpage_ok(struct page *page) +{ + return !PageSlab(page) && page_count(page) >= 1; +} + int kernel_sendmsg(struct socket *sock, struct msghdr *msg, struct kvec *vec, size_t num, size_t len); int kernel_sendmsg_locked(struct sock *sk, struct msghdr *msg, --- linux-azure-5.8-5.8.0.orig/include/linux/netdevice.h +++ linux-azure-5.8-5.8.0/include/linux/netdevice.h @@ -2743,9 +2743,21 @@ struct net_device *sb_dev); u16 dev_pick_tx_cpu_id(struct net_device *dev, struct sk_buff *skb, struct net_device *sb_dev); + int dev_queue_xmit(struct sk_buff *skb); int dev_queue_xmit_accel(struct sk_buff *skb, struct net_device *sb_dev); -int dev_direct_xmit(struct sk_buff *skb, u16 queue_id); +int __dev_direct_xmit(struct sk_buff *skb, u16 queue_id); + +static inline int dev_direct_xmit(struct sk_buff *skb, u16 queue_id) +{ + int ret; + + ret = __dev_direct_xmit(skb, queue_id); + if (!dev_xmit_complete(ret)) + kfree_skb(skb); + return ret; +} + int register_netdevice(struct net_device *dev); void unregister_netdevice_queue(struct net_device *dev, struct list_head *head); void unregister_netdevice_many(struct list_head *head); @@ -3068,6 +3080,11 @@ return false; } +static inline bool dev_has_header(const struct net_device *dev) +{ + return dev->header_ops && dev->header_ops->create; +} + typedef int gifconf_func_t(struct net_device * dev, char __user * bufptr, int len, int size); int register_gifconf(unsigned int family, gifconf_func_t *gifconf); @@ -4223,6 +4240,7 @@ local_bh_disable(); cpu = smp_processor_id(); + spin_lock(&dev->tx_global_lock); for (i = 0; i < dev->num_tx_queues; i++) { struct netdev_queue *txq = netdev_get_tx_queue(dev, i); @@ -4230,6 +4248,7 @@ netif_tx_stop_queue(txq); __netif_tx_unlock(txq); } + spin_unlock(&dev->tx_global_lock); local_bh_enable(); } --- linux-azure-5.8-5.8.0.orig/include/linux/netfilter/nf_conntrack_sctp.h +++ linux-azure-5.8-5.8.0/include/linux/netfilter/nf_conntrack_sctp.h @@ -9,6 +9,8 @@ enum sctp_conntrack state; __be32 vtag[IP_CT_DIR_MAX]; + u8 last_dir; + u8 flags; }; #endif /* _NF_CONNTRACK_SCTP_H */ --- linux-azure-5.8-5.8.0.orig/include/linux/netfilter/nfnetlink.h +++ linux-azure-5.8-5.8.0/include/linux/netfilter/nfnetlink.h @@ -24,6 +24,12 @@ const u_int16_t attr_count; /* number of nlattr's */ }; +enum nfnl_abort_action { + NFNL_ABORT_NONE = 0, + NFNL_ABORT_AUTOLOAD, + NFNL_ABORT_VALIDATE, +}; + struct nfnetlink_subsystem { const char *name; __u8 subsys_id; /* nfnetlink subsystem ID */ @@ -31,7 +37,8 @@ const struct nfnl_callback *cb; /* callback for individual types */ struct module *owner; int (*commit)(struct net *net, struct sk_buff *skb); - int (*abort)(struct net *net, struct sk_buff *skb, bool autoload); + int (*abort)(struct net *net, struct sk_buff *skb, + enum nfnl_abort_action action); void (*cleanup)(struct net *net); bool (*valid_genid)(struct net *net, u32 genid); }; @@ -43,8 +50,7 @@ int nfnetlink_send(struct sk_buff *skb, struct net *net, u32 portid, unsigned int group, int echo, gfp_t flags); int nfnetlink_set_err(struct net *net, u32 portid, u32 group, int error); -int nfnetlink_unicast(struct sk_buff *skb, struct net *net, u32 portid, - int flags); +int nfnetlink_unicast(struct sk_buff *skb, struct net *net, u32 portid); static inline u16 nfnl_msg_type(u8 subsys, u8 msg_type) { --- linux-azure-5.8-5.8.0.orig/include/linux/netfilter/x_tables.h +++ linux-azure-5.8-5.8.0/include/linux/netfilter/x_tables.h @@ -376,7 +376,7 @@ * since addend is most likely 1 */ __this_cpu_add(xt_recseq.sequence, addend); - smp_wmb(); + smp_mb(); return addend; } --- linux-azure-5.8-5.8.0.orig/include/linux/netfilter_ipv4.h +++ linux-azure-5.8-5.8.0/include/linux/netfilter_ipv4.h @@ -16,7 +16,7 @@ u_int32_t mark; }; -int ip_route_me_harder(struct net *net, struct sk_buff *skb, unsigned addr_type); +int ip_route_me_harder(struct net *net, struct sock *sk, struct sk_buff *skb, unsigned addr_type); struct nf_queue_entry; --- linux-azure-5.8-5.8.0.orig/include/linux/netfilter_ipv6.h +++ linux-azure-5.8-5.8.0/include/linux/netfilter_ipv6.h @@ -42,7 +42,7 @@ #if IS_MODULE(CONFIG_IPV6) int (*chk_addr)(struct net *net, const struct in6_addr *addr, const struct net_device *dev, int strict); - int (*route_me_harder)(struct net *net, struct sk_buff *skb); + int (*route_me_harder)(struct net *net, struct sock *sk, struct sk_buff *skb); int (*dev_get_saddr)(struct net *net, const struct net_device *dev, const struct in6_addr *daddr, unsigned int srcprefs, struct in6_addr *saddr); @@ -58,7 +58,6 @@ int (*output)(struct net *, struct sock *, struct sk_buff *)); int (*reroute)(struct sk_buff *skb, const struct nf_queue_entry *entry); #if IS_MODULE(CONFIG_IPV6) - int (*br_defrag)(struct net *net, struct sk_buff *skb, u32 user); int (*br_fragment)(struct net *net, struct sock *sk, struct sk_buff *skb, struct nf_bridge_frag_data *data, @@ -117,23 +116,6 @@ #include -static inline int nf_ipv6_br_defrag(struct net *net, struct sk_buff *skb, - u32 user) -{ -#if IS_MODULE(CONFIG_IPV6) - const struct nf_ipv6_ops *v6_ops = nf_get_ipv6_ops(); - - if (!v6_ops) - return 1; - - return v6_ops->br_defrag(net, skb, user); -#elif IS_BUILTIN(CONFIG_IPV6) - return nf_ct_frag6_gather(net, skb, user); -#else - return 1; -#endif -} - int br_ip6_fragment(struct net *net, struct sock *sk, struct sk_buff *skb, struct nf_bridge_frag_data *data, int (*output)(struct net *, struct sock *sk, @@ -161,9 +143,9 @@ #endif } -int ip6_route_me_harder(struct net *net, struct sk_buff *skb); +int ip6_route_me_harder(struct net *net, struct sock *sk, struct sk_buff *skb); -static inline int nf_ip6_route_me_harder(struct net *net, struct sk_buff *skb) +static inline int nf_ip6_route_me_harder(struct net *net, struct sock *sk, struct sk_buff *skb) { #if IS_MODULE(CONFIG_IPV6) const struct nf_ipv6_ops *v6_ops = nf_get_ipv6_ops(); @@ -171,9 +153,9 @@ if (!v6_ops) return -EHOSTUNREACH; - return v6_ops->route_me_harder(net, skb); + return v6_ops->route_me_harder(net, sk, skb); #elif IS_BUILTIN(CONFIG_IPV6) - return ip6_route_me_harder(net, skb); + return ip6_route_me_harder(net, sk, skb); #else return -EHOSTUNREACH; #endif --- linux-azure-5.8-5.8.0.orig/include/linux/node.h +++ linux-azure-5.8-5.8.0/include/linux/node.h @@ -99,11 +99,13 @@ typedef void (*node_registration_func_t)(struct node *); #if defined(CONFIG_MEMORY_HOTPLUG_SPARSE) && defined(CONFIG_NUMA) -extern int link_mem_sections(int nid, unsigned long start_pfn, - unsigned long end_pfn); +int link_mem_sections(int nid, unsigned long start_pfn, + unsigned long end_pfn, + enum meminit_context context); #else static inline int link_mem_sections(int nid, unsigned long start_pfn, - unsigned long end_pfn) + unsigned long end_pfn, + enum meminit_context context) { return 0; } @@ -128,7 +130,8 @@ if (error) return error; /* link memory sections under this node */ - error = link_mem_sections(nid, start_pfn, end_pfn); + error = link_mem_sections(nid, start_pfn, end_pfn, + MEMINIT_EARLY); } return error; --- linux-azure-5.8-5.8.0.orig/include/linux/nvme.h +++ linux-azure-5.8-5.8.0/include/linux/nvme.h @@ -116,6 +116,9 @@ NVME_REG_BPMBL = 0x0048, /* Boot Partition Memory Buffer * Location */ + NVME_REG_CMBMSC = 0x0050, /* Controller Memory Buffer Memory + * Space Control + */ NVME_REG_PMRCAP = 0x0e00, /* Persistent Memory Capabilities */ NVME_REG_PMRCTL = 0x0e04, /* Persistent Memory Region Control */ NVME_REG_PMRSTS = 0x0e08, /* Persistent Memory Region Status */ @@ -134,6 +137,7 @@ #define NVME_CAP_NSSRC(cap) (((cap) >> 36) & 0x1) #define NVME_CAP_MPSMIN(cap) (((cap) >> 48) & 0xf) #define NVME_CAP_MPSMAX(cap) (((cap) >> 52) & 0xf) +#define NVME_CAP_CMBS(cap) (((cap) >> 57) & 0x1) #define NVME_CMB_BIR(cmbloc) ((cmbloc) & 0x7) #define NVME_CMB_OFST(cmbloc) (((cmbloc) >> 12) & 0xfffff) @@ -187,6 +191,8 @@ NVME_CSTS_SHST_OCCUR = 1 << 2, NVME_CSTS_SHST_CMPLT = 2 << 2, NVME_CSTS_SHST_MASK = 3 << 2, + NVME_CMBMSC_CRE = 1 << 0, + NVME_CMBMSC_CMSE = 1 << 1, }; struct nvme_id_power_state { --- linux-azure-5.8-5.8.0.orig/include/linux/of.h +++ linux-azure-5.8-5.8.0/include/linux/of.h @@ -1290,6 +1290,7 @@ #define _OF_DECLARE(table, name, compat, fn, fn_type) \ static const struct of_device_id __of_table_##name \ __used __section(__##table##_of_table) \ + __aligned(__alignof__(struct of_device_id)) \ = { .compatible = compat, \ .data = (fn == (fn_type)NULL) ? fn : fn } #else --- linux-azure-5.8-5.8.0.orig/include/linux/oom.h +++ linux-azure-5.8-5.8.0/include/linux/oom.h @@ -55,6 +55,7 @@ }; extern struct mutex oom_lock; +extern struct mutex oom_adj_mutex; static inline void set_current_oom_origin(void) { --- linux-azure-5.8-5.8.0.orig/include/linux/overflow.h +++ linux-azure-5.8-5.8.0/include/linux/overflow.h @@ -3,6 +3,7 @@ #define __LINUX_OVERFLOW_H #include +#include /* * In the fallback code below, we need to compute the minimum and --- linux-azure-5.8-5.8.0.orig/include/linux/page_owner.h +++ linux-azure-5.8-5.8.0/include/linux/page_owner.h @@ -11,7 +11,7 @@ extern void __reset_page_owner(struct page *page, unsigned int order); extern void __set_page_owner(struct page *page, unsigned int order, gfp_t gfp_mask); -extern void __split_page_owner(struct page *page, unsigned int order); +extern void __split_page_owner(struct page *page, unsigned int nr); extern void __copy_page_owner(struct page *oldpage, struct page *newpage); extern void __set_page_owner_migrate_reason(struct page *page, int reason); extern void __dump_page_owner(struct page *page); @@ -31,10 +31,10 @@ __set_page_owner(page, order, gfp_mask); } -static inline void split_page_owner(struct page *page, unsigned int order) +static inline void split_page_owner(struct page *page, unsigned int nr) { if (static_branch_unlikely(&page_owner_inited)) - __split_page_owner(page, order); + __split_page_owner(page, nr); } static inline void copy_page_owner(struct page *oldpage, struct page *newpage) { --- linux-azure-5.8-5.8.0.orig/include/linux/pagemap.h +++ linux-azure-5.8-5.8.0/include/linux/pagemap.h @@ -54,7 +54,8 @@ __filemap_set_wb_err(mapping, error); /* Record it in superblock */ - errseq_set(&mapping->host->i_sb->s_wb_err, error); + if (mapping->host) + errseq_set(&mapping->host->i_sb->s_wb_err, error); /* Record it in flags for now, for legacy callers */ if (error == -ENOSPC) @@ -750,6 +751,8 @@ xas_set(&xas, rac->_index); rcu_read_lock(); xas_for_each(&xas, page, rac->_index + rac->_nr_pages - 1) { + if (xas_retry(&xas, page)) + continue; VM_BUG_ON_PAGE(!PageLocked(page), page); VM_BUG_ON_PAGE(PageTail(page), page); array[i++] = page; --- linux-azure-5.8-5.8.0.orig/include/linux/pci-ats.h +++ linux-azure-5.8-5.8.0/include/linux/pci-ats.h @@ -28,6 +28,10 @@ void pci_disable_pri(struct pci_dev *pdev); int pci_reset_pri(struct pci_dev *pdev); int pci_prg_resp_pasid_required(struct pci_dev *pdev); +bool pci_pri_supported(struct pci_dev *pdev); +#else +static inline bool pci_pri_supported(struct pci_dev *pdev) +{ return false; } #endif /* CONFIG_PCI_PRI */ #ifdef CONFIG_PCI_PASID --- linux-azure-5.8-5.8.0.orig/include/linux/pci-ecam.h +++ linux-azure-5.8-5.8.0/include/linux/pci-ecam.h @@ -51,6 +51,7 @@ #if defined(CONFIG_ACPI) && defined(CONFIG_PCI_QUIRKS) extern const struct pci_ecam_ops pci_32b_ops; /* 32-bit accesses only */ +extern const struct pci_ecam_ops pci_32b_read_ops; /* 32-bit read only */ extern const struct pci_ecam_ops hisi_pcie_ops; /* HiSilicon */ extern const struct pci_ecam_ops thunder_pem_ecam_ops; /* Cavium ThunderX 1.x & 2.x */ extern const struct pci_ecam_ops pci_thunder_ecam_ops; /* Cavium ThunderX 1.x */ --- linux-azure-5.8-5.8.0.orig/include/linux/pci.h +++ linux-azure-5.8-5.8.0/include/linux/pci.h @@ -227,6 +227,8 @@ PCI_DEV_FLAGS_NO_FLR_RESET = (__force pci_dev_flags_t) (1 << 10), /* Don't use Relaxed Ordering for TLPs directed at this device */ PCI_DEV_FLAGS_NO_RELAXED_ORDERING = (__force pci_dev_flags_t) (1 << 11), + /* Enable ASPM regardless of how LnkCtl is programmed */ + PCI_DEV_FLAGS_ENABLE_ASPM = (__force pci_dev_flags_t) (1 << 12), }; enum pci_irq_reroute_variant { @@ -439,6 +441,7 @@ unsigned int is_probed:1; /* Device probing in progress */ unsigned int link_active_reporting:1;/* Device capable of reporting link active */ unsigned int no_vf_scan:1; /* Don't scan for VFs after IOV enablement */ + unsigned int no_command_memory:1; /* No PCI_COMMAND_MEMORY */ pci_dev_flags_t dev_flags; atomic_t enable_cnt; /* pci_enable_device has been called */ --- linux-azure-5.8-5.8.0.orig/include/linux/percpu-rwsem.h +++ linux-azure-5.8-5.8.0/include/linux/percpu-rwsem.h @@ -60,7 +60,7 @@ * anything we did within this RCU-sched read-size critical section. */ if (likely(rcu_sync_is_idle(&sem->rss))) - __this_cpu_inc(*sem->read_count); + this_cpu_inc(*sem->read_count); else __percpu_down_read(sem, false); /* Unconditional memory barrier */ /* @@ -79,7 +79,7 @@ * Same as in percpu_down_read(). */ if (likely(rcu_sync_is_idle(&sem->rss))) - __this_cpu_inc(*sem->read_count); + this_cpu_inc(*sem->read_count); else ret = __percpu_down_read(sem, true); /* Unconditional memory barrier */ preempt_enable(); @@ -103,7 +103,7 @@ * Same as in percpu_down_read(). */ if (likely(rcu_sync_is_idle(&sem->rss))) { - __this_cpu_dec(*sem->read_count); + this_cpu_dec(*sem->read_count); } else { /* * slowpath; reader will only ever wake a single blocked @@ -115,7 +115,7 @@ * aggregate zero, as that is the only time it matters) they * will also see our critical section. */ - __this_cpu_dec(*sem->read_count); + this_cpu_dec(*sem->read_count); rcuwait_wake_up(&sem->writer); } preempt_enable(); --- linux-azure-5.8-5.8.0.orig/include/linux/perf_event.h +++ linux-azure-5.8-5.8.0/include/linux/perf_event.h @@ -1294,6 +1294,12 @@ #define PERF_SECURITY_CPU 1 #define PERF_SECURITY_KERNEL 2 #define PERF_SECURITY_TRACEPOINT 3 +#define PERF_SECURITY_MAX 4 + +static inline bool perf_paranoid_any(void) +{ + return sysctl_perf_event_paranoid >= PERF_SECURITY_MAX; +} static inline int perf_is_paranoid(void) { --- linux-azure-5.8-5.8.0.orig/include/linux/pgtable.h +++ linux-azure-5.8-5.8.0/include/linux/pgtable.h @@ -117,7 +117,9 @@ * a shortcut which implies the use of the kernel's pgd, instead * of a process's */ +#ifndef pgd_offset_k #define pgd_offset_k(address) pgd_offset(&init_mm, (address)) +#endif /* * In many cases it is known that a virtual address is mapped at PMD or PTE @@ -1394,8 +1396,17 @@ #endif /* !__ASSEMBLY__ */ -#ifndef io_remap_pfn_range -#define io_remap_pfn_range remap_pfn_range +#if !defined(MAX_POSSIBLE_PHYSMEM_BITS) && !defined(CONFIG_64BIT) +#ifdef CONFIG_PHYS_ADDR_T_64BIT +/* + * ZSMALLOC needs to know the highest PFN on 32-bit architectures + * with physical address space extension, but falls back to + * BITS_PER_LONG otherwise. + */ +#error Missing MAX_POSSIBLE_PHYSMEM_BITS definition +#else +#define MAX_POSSIBLE_PHYSMEM_BITS 32 +#endif #endif #ifndef has_transparent_hugepage @@ -1422,6 +1433,16 @@ #define mm_pmd_folded(mm) __is_defined(__PAGETABLE_PMD_FOLDED) #endif +#ifndef p4d_offset_lockless +#define p4d_offset_lockless(pgdp, pgd, address) p4d_offset(&(pgd), address) +#endif +#ifndef pud_offset_lockless +#define pud_offset_lockless(p4dp, p4d, address) pud_offset(&(p4d), address) +#endif +#ifndef pmd_offset_lockless +#define pmd_offset_lockless(pudp, pud, address) pmd_offset(&(pud), address) +#endif + /* * p?d_leaf() - true if this entry is a final mapping to a physical address. * This differs from p?d_huge() by the fact that they are always available (if --- linux-azure-5.8-5.8.0.orig/include/linux/pipe_fs_i.h +++ linux-azure-5.8-5.8.0/include/linux/pipe_fs_i.h @@ -240,8 +240,9 @@ extern unsigned long pipe_user_pages_hard; extern unsigned long pipe_user_pages_soft; -/* Drop the inode semaphore and wait for a pipe event, atomically */ -void pipe_wait(struct pipe_inode_info *pipe); +/* Wait for a pipe to be readable/writable while dropping the pipe lock */ +void pipe_wait_readable(struct pipe_inode_info *); +void pipe_wait_writable(struct pipe_inode_info *); struct pipe_inode_info *alloc_pipe_info(void); void free_pipe_info(struct pipe_inode_info *); --- linux-azure-5.8-5.8.0.orig/include/linux/platform_data/dma-dw.h +++ linux-azure-5.8-5.8.0/include/linux/platform_data/dma-dw.h @@ -21,6 +21,7 @@ * @dst_id: dst request line * @m_master: memory master for transfers on allocated channel * @p_master: peripheral master for transfers on allocated channel + * @channels: mask of the channels permitted for allocation (zero value means any) * @hs_polarity:set active low polarity of handshake interface */ struct dw_dma_slave { @@ -29,6 +30,7 @@ u8 dst_id; u8 m_master; u8 p_master; + u8 channels; bool hs_polarity; }; --- linux-azure-5.8-5.8.0.orig/include/linux/platform_data/ti-sysc.h +++ linux-azure-5.8-5.8.0/include/linux/platform_data/ti-sysc.h @@ -50,6 +50,7 @@ s8 emufree_shift; }; +#define SYSC_MODULE_QUIRK_ENA_RESETDONE BIT(25) #define SYSC_MODULE_QUIRK_PRUSS BIT(24) #define SYSC_MODULE_QUIRK_DSS_RESET BIT(23) #define SYSC_MODULE_QUIRK_RTC_UNLOCK BIT(22) --- linux-azure-5.8-5.8.0.orig/include/linux/pm.h +++ linux-azure-5.8-5.8.0/include/linux/pm.h @@ -584,7 +584,7 @@ #endif #ifdef CONFIG_PM struct hrtimer suspend_timer; - unsigned long timer_expires; + u64 timer_expires; struct work_struct work; wait_queue_head_t wait_queue; struct wake_irq *wakeirq; --- linux-azure-5.8-5.8.0.orig/include/linux/pm_runtime.h +++ linux-azure-5.8-5.8.0/include/linux/pm_runtime.h @@ -54,11 +54,10 @@ extern void pm_runtime_update_max_time_suspended(struct device *dev, s64 delta_ns); extern void pm_runtime_set_memalloc_noio(struct device *dev, bool enable); -extern void pm_runtime_clean_up_links(struct device *dev); extern void pm_runtime_get_suppliers(struct device *dev); extern void pm_runtime_put_suppliers(struct device *dev); extern void pm_runtime_new_link(struct device *dev); -extern void pm_runtime_drop_link(struct device *dev); +extern void pm_runtime_drop_link(struct device_link *link); static inline int pm_runtime_get_if_in_use(struct device *dev) { @@ -183,11 +182,10 @@ struct device *dev) { return 0; } static inline void pm_runtime_set_memalloc_noio(struct device *dev, bool enable){} -static inline void pm_runtime_clean_up_links(struct device *dev) {} static inline void pm_runtime_get_suppliers(struct device *dev) {} static inline void pm_runtime_put_suppliers(struct device *dev) {} static inline void pm_runtime_new_link(struct device *dev) {} -static inline void pm_runtime_drop_link(struct device *dev) {} +static inline void pm_runtime_drop_link(struct device_link *link) {} #endif /* !CONFIG_PM */ @@ -236,6 +234,27 @@ return __pm_runtime_resume(dev, RPM_GET_PUT); } +/** + * pm_runtime_resume_and_get - Bump up usage counter of a device and resume it. + * @dev: Target device. + * + * Resume @dev synchronously and if that is successful, increment its runtime + * PM usage counter. Return 0 if the runtime PM usage counter of @dev has been + * incremented or a negative error code otherwise. + */ +static inline int pm_runtime_resume_and_get(struct device *dev) +{ + int ret; + + ret = __pm_runtime_resume(dev, RPM_GET_PUT); + if (ret < 0) { + pm_runtime_put_noidle(dev); + return ret; + } + + return 0; +} + static inline int pm_runtime_put(struct device *dev) { return __pm_runtime_idle(dev, RPM_GET_PUT | RPM_ASYNC); --- linux-azure-5.8-5.8.0.orig/include/linux/prandom.h +++ linux-azure-5.8-5.8.0/include/linux/prandom.h @@ -0,0 +1,110 @@ +/* SPDX-License-Identifier: GPL-2.0 */ +/* + * include/linux/prandom.h + * + * Include file for the fast pseudo-random 32-bit + * generation. + */ +#ifndef _LINUX_PRANDOM_H +#define _LINUX_PRANDOM_H + +#include +#include + +u32 prandom_u32(void); +void prandom_bytes(void *buf, size_t nbytes); +void prandom_seed(u32 seed); +void prandom_reseed_late(void); + +#if BITS_PER_LONG == 64 +/* + * The core SipHash round function. Each line can be executed in + * parallel given enough CPU resources. + */ +#define PRND_SIPROUND(v0, v1, v2, v3) ( \ + v0 += v1, v1 = rol64(v1, 13), v2 += v3, v3 = rol64(v3, 16), \ + v1 ^= v0, v0 = rol64(v0, 32), v3 ^= v2, \ + v0 += v3, v3 = rol64(v3, 21), v2 += v1, v1 = rol64(v1, 17), \ + v3 ^= v0, v1 ^= v2, v2 = rol64(v2, 32) \ +) + +#define PRND_K0 (0x736f6d6570736575 ^ 0x6c7967656e657261) +#define PRND_K1 (0x646f72616e646f6d ^ 0x7465646279746573) + +#elif BITS_PER_LONG == 32 +/* + * On 32-bit machines, we use HSipHash, a reduced-width version of SipHash. + * This is weaker, but 32-bit machines are not used for high-traffic + * applications, so there is less output for an attacker to analyze. + */ +#define PRND_SIPROUND(v0, v1, v2, v3) ( \ + v0 += v1, v1 = rol32(v1, 5), v2 += v3, v3 = rol32(v3, 8), \ + v1 ^= v0, v0 = rol32(v0, 16), v3 ^= v2, \ + v0 += v3, v3 = rol32(v3, 7), v2 += v1, v1 = rol32(v1, 13), \ + v3 ^= v0, v1 ^= v2, v2 = rol32(v2, 16) \ +) +#define PRND_K0 0x6c796765 +#define PRND_K1 0x74656462 + +#else +#error Unsupported BITS_PER_LONG +#endif + +struct rnd_state { + __u32 s1, s2, s3, s4; +}; + +u32 prandom_u32_state(struct rnd_state *state); +void prandom_bytes_state(struct rnd_state *state, void *buf, size_t nbytes); +void prandom_seed_full_state(struct rnd_state __percpu *pcpu_state); + +#define prandom_init_once(pcpu_state) \ + DO_ONCE(prandom_seed_full_state, (pcpu_state)) + +/** + * prandom_u32_max - returns a pseudo-random number in interval [0, ep_ro) + * @ep_ro: right open interval endpoint + * + * Returns a pseudo-random number that is in interval [0, ep_ro). Note + * that the result depends on PRNG being well distributed in [0, ~0U] + * u32 space. Here we use maximally equidistributed combined Tausworthe + * generator, that is, prandom_u32(). This is useful when requesting a + * random index of an array containing ep_ro elements, for example. + * + * Returns: pseudo-random number in interval [0, ep_ro) + */ +static inline u32 prandom_u32_max(u32 ep_ro) +{ + return (u32)(((u64) prandom_u32() * ep_ro) >> 32); +} + +/* + * Handle minimum values for seeds + */ +static inline u32 __seed(u32 x, u32 m) +{ + return (x < m) ? x + m : x; +} + +/** + * prandom_seed_state - set seed for prandom_u32_state(). + * @state: pointer to state structure to receive the seed. + * @seed: arbitrary 64-bit value to use as a seed. + */ +static inline void prandom_seed_state(struct rnd_state *state, u64 seed) +{ + u32 i = (seed >> 32) ^ (seed << 10) ^ seed; + + state->s1 = __seed(i, 2U); + state->s2 = __seed(i, 8U); + state->s3 = __seed(i, 16U); + state->s4 = __seed(i, 128U); +} + +/* Pseudo random number generator from numerical recipes. */ +static inline u32 next_pseudo_random32(u32 seed) +{ + return seed * 1664525 + 1013904223; +} + +#endif --- linux-azure-5.8-5.8.0.orig/include/linux/prefetch.h +++ linux-azure-5.8-5.8.0/include/linux/prefetch.h @@ -15,6 +15,7 @@ #include #include +struct page; /* prefetch(x) attempts to pre-emptively get the memory pointed to by address "x" into the CPU L1 cache. @@ -62,4 +63,11 @@ #endif } +static inline void prefetch_page_address(struct page *page) +{ +#if defined(WANT_PAGE_VIRTUAL) || defined(HASHED_PAGE_VIRTUAL) + prefetch(page); +#endif +} + #endif --- linux-azure-5.8-5.8.0.orig/include/linux/printk.h +++ linux-azure-5.8-5.8.0/include/linux/printk.h @@ -296,6 +296,27 @@ #define pr_fmt(fmt) fmt #endif +#if defined(__KMSG_CHECKER) && defined(KMSG_COMPONENT) + +/* generate magic string for scripts/kmsg-doc to parse */ +#define pr_printk_hash(level, format, ...) \ + __KMSG_PRINT(level _FMT_ format _ARGS_ __VA_ARGS__ _END_) + +#elif defined(CONFIG_KMSG_IDS) && defined(KMSG_COMPONENT) + +/* format element '%pj' prints the six digit jhash of a string */ +#define _pr_printk_hash(pfx, fmt, ...) \ + printk(pfx fmt, pfx fmt + __builtin_strlen(pfx), ##__VA_ARGS__) +#define pr_printk_hash(level, format, ...) \ + _pr_printk_hash(level KMSG_COMPONENT ".%pj: ", format, ##__VA_ARGS__) + +#else /* !defined(CONFIG_KMSG_IDS) */ + +#define pr_printk_hash(level, format, ...) \ + printk(level pr_fmt(format), ##__VA_ARGS__) + +#endif + /** * pr_emerg - Print an emergency-level message * @fmt: format string @@ -305,7 +326,7 @@ * generate the format string. */ #define pr_emerg(fmt, ...) \ - printk(KERN_EMERG pr_fmt(fmt), ##__VA_ARGS__) + pr_printk_hash(KERN_EMERG, fmt, ##__VA_ARGS__) /** * pr_alert - Print an alert-level message * @fmt: format string @@ -315,7 +336,7 @@ * generate the format string. */ #define pr_alert(fmt, ...) \ - printk(KERN_ALERT pr_fmt(fmt), ##__VA_ARGS__) + pr_printk_hash(KERN_ALERT, fmt, ##__VA_ARGS__) /** * pr_crit - Print a critical-level message * @fmt: format string @@ -325,7 +346,7 @@ * generate the format string. */ #define pr_crit(fmt, ...) \ - printk(KERN_CRIT pr_fmt(fmt), ##__VA_ARGS__) + pr_printk_hash(KERN_CRIT, fmt, ##__VA_ARGS__) /** * pr_err - Print an error-level message * @fmt: format string @@ -335,7 +356,7 @@ * generate the format string. */ #define pr_err(fmt, ...) \ - printk(KERN_ERR pr_fmt(fmt), ##__VA_ARGS__) + pr_printk_hash(KERN_ERR, fmt, ##__VA_ARGS__) /** * pr_warn - Print a warning-level message * @fmt: format string @@ -345,7 +366,7 @@ * to generate the format string. */ #define pr_warn(fmt, ...) \ - printk(KERN_WARNING pr_fmt(fmt), ##__VA_ARGS__) + pr_printk_hash(KERN_WARNING, fmt, ##__VA_ARGS__) /** * pr_notice - Print a notice-level message * @fmt: format string @@ -355,7 +376,7 @@ * generate the format string. */ #define pr_notice(fmt, ...) \ - printk(KERN_NOTICE pr_fmt(fmt), ##__VA_ARGS__) + pr_printk_hash(KERN_NOTICE, fmt, ##__VA_ARGS__) /** * pr_info - Print an info-level message * @fmt: format string @@ -365,7 +386,7 @@ * generate the format string. */ #define pr_info(fmt, ...) \ - printk(KERN_INFO pr_fmt(fmt), ##__VA_ARGS__) + pr_printk_hash(KERN_INFO, fmt, ##__VA_ARGS__) /** * pr_cont - Continues a previous log message in the same line. --- linux-azure-5.8-5.8.0.orig/include/linux/proc_fs.h +++ linux-azure-5.8-5.8.0/include/linux/proc_fs.h @@ -79,6 +79,7 @@ extern struct proc_dir_entry *proc_symlink(const char *, struct proc_dir_entry *, const char *); +struct proc_dir_entry *_proc_mkdir(const char *, umode_t, struct proc_dir_entry *, void *, bool); extern struct proc_dir_entry *proc_mkdir(const char *, struct proc_dir_entry *); extern struct proc_dir_entry *proc_mkdir_data(const char *, umode_t, struct proc_dir_entry *, void *); @@ -160,6 +161,11 @@ static inline struct proc_dir_entry *proc_mkdir(const char *name, struct proc_dir_entry *parent) {return NULL;} static inline struct proc_dir_entry *proc_create_mount_point(const char *name) { return NULL; } +static inline struct proc_dir_entry *_proc_mkdir(const char *name, umode_t mode, + struct proc_dir_entry *parent, void *data, bool force_lookup) +{ + return NULL; +} static inline struct proc_dir_entry *proc_mkdir_data(const char *name, umode_t mode, struct proc_dir_entry *parent, void *data) { return NULL; } static inline struct proc_dir_entry *proc_mkdir_mode(const char *name, @@ -197,7 +203,7 @@ static inline struct proc_dir_entry *proc_net_mkdir( struct net *net, const char *name, struct proc_dir_entry *parent) { - return proc_mkdir_data(name, 0, parent, net); + return _proc_mkdir(name, 0, parent, net, true); } struct ns_common; --- linux-azure-5.8-5.8.0.orig/include/linux/qcom-geni-se.h +++ linux-azure-5.8-5.8.0/include/linux/qcom-geni-se.h @@ -229,6 +229,9 @@ #define GENI_SE_VERSION_MINOR(ver) ((ver & HW_VER_MINOR_MASK) >> HW_VER_MINOR_SHFT) #define GENI_SE_VERSION_STEP(ver) (ver & HW_VER_STEP_MASK) +/* QUP SE VERSION value for major number 2 and minor number 5 */ +#define QUP_SE_VERSION_2_5 0x20050000 + #if IS_ENABLED(CONFIG_QCOM_GENI_SE) u32 geni_se_get_qup_hw_version(struct geni_se *se); --- linux-azure-5.8-5.8.0.orig/include/linux/qed/qed_if.h +++ linux-azure-5.8-5.8.0/include/linux/qed/qed_if.h @@ -648,6 +648,7 @@ #define QED_MFW_VERSION_3_OFFSET 24 u32 flash_size; + bool b_arfs_capable; bool b_inter_pf_switch; bool tx_switching; bool rdma_supported; --- linux-azure-5.8-5.8.0.orig/include/linux/radix-tree.h +++ linux-azure-5.8-5.8.0/include/linux/radix-tree.h @@ -16,20 +16,11 @@ #include #include #include -#include /* Keep unconverted code working */ #define radix_tree_root xarray #define radix_tree_node xa_node -struct radix_tree_preload { - local_lock_t lock; - unsigned nr; - /* nodes->parent points to next preallocated node */ - struct radix_tree_node *nodes; -}; -DECLARE_PER_CPU(struct radix_tree_preload, radix_tree_preloads); - /* * The bottom two bits of the slot determine how the remaining bits in the * slot are interpreted: @@ -254,7 +245,7 @@ static inline void radix_tree_preload_end(void) { - local_unlock(&radix_tree_preloads.lock); + preempt_enable(); } void __rcu **idr_get_free(struct radix_tree_root *root, --- linux-azure-5.8-5.8.0.orig/include/linux/random.h +++ linux-azure-5.8-5.8.0/include/linux/random.h @@ -11,7 +11,6 @@ #include #include #include -#include #include @@ -111,63 +110,12 @@ unsigned long randomize_page(unsigned long start, unsigned long range); -u32 prandom_u32(void); -void prandom_bytes(void *buf, size_t nbytes); -void prandom_seed(u32 seed); -void prandom_reseed_late(void); - -struct rnd_state { - __u32 s1, s2, s3, s4; -}; - -DECLARE_PER_CPU(struct rnd_state, net_rand_state); - -u32 prandom_u32_state(struct rnd_state *state); -void prandom_bytes_state(struct rnd_state *state, void *buf, size_t nbytes); -void prandom_seed_full_state(struct rnd_state __percpu *pcpu_state); - -#define prandom_init_once(pcpu_state) \ - DO_ONCE(prandom_seed_full_state, (pcpu_state)) - -/** - * prandom_u32_max - returns a pseudo-random number in interval [0, ep_ro) - * @ep_ro: right open interval endpoint - * - * Returns a pseudo-random number that is in interval [0, ep_ro). Note - * that the result depends on PRNG being well distributed in [0, ~0U] - * u32 space. Here we use maximally equidistributed combined Tausworthe - * generator, that is, prandom_u32(). This is useful when requesting a - * random index of an array containing ep_ro elements, for example. - * - * Returns: pseudo-random number in interval [0, ep_ro) - */ -static inline u32 prandom_u32_max(u32 ep_ro) -{ - return (u32)(((u64) prandom_u32() * ep_ro) >> 32); -} - /* - * Handle minimum values for seeds - */ -static inline u32 __seed(u32 x, u32 m) -{ - return (x < m) ? x + m : x; -} - -/** - * prandom_seed_state - set seed for prandom_u32_state(). - * @state: pointer to state structure to receive the seed. - * @seed: arbitrary 64-bit value to use as a seed. + * This is designed to be standalone for just prandom + * users, but for now we include it from + * for legacy reasons. */ -static inline void prandom_seed_state(struct rnd_state *state, u64 seed) -{ - u32 i = (seed >> 32) ^ (seed << 10) ^ seed; - - state->s1 = __seed(i, 2U); - state->s2 = __seed(i, 8U); - state->s3 = __seed(i, 16U); - state->s4 = __seed(i, 128U); -} +#include #ifdef CONFIG_ARCH_RANDOM # include @@ -210,10 +158,4 @@ } #endif -/* Pseudo random number generator from numerical recipes. */ -static inline u32 next_pseudo_random32(u32 seed) -{ - return seed * 1664525 + 1013904223; -} - #endif /* _LINUX_RANDOM_H */ --- linux-azure-5.8-5.8.0.orig/include/linux/rcupdate.h +++ linux-azure-5.8-5.8.0/include/linux/rcupdate.h @@ -97,8 +97,10 @@ #ifdef CONFIG_RCU_NOCB_CPU void rcu_init_nohz(void); +void rcu_nocb_flush_deferred_wakeup(void); #else /* #ifdef CONFIG_RCU_NOCB_CPU */ static inline void rcu_init_nohz(void) { } +static inline void rcu_nocb_flush_deferred_wakeup(void) { } #endif /* #else #ifdef CONFIG_RCU_NOCB_CPU */ /** --- linux-azure-5.8-5.8.0.orig/include/linux/rcupdate_trace.h +++ linux-azure-5.8-5.8.0/include/linux/rcupdate_trace.h @@ -50,6 +50,7 @@ struct task_struct *t = current; WRITE_ONCE(t->trc_reader_nesting, READ_ONCE(t->trc_reader_nesting) + 1); + barrier(); if (IS_ENABLED(CONFIG_TASKS_TRACE_RCU_READ_MB) && t->trc_reader_special.b.need_mb) smp_mb(); // Pairs with update-side barriers @@ -72,6 +73,9 @@ rcu_lock_release(&rcu_trace_lock_map); nesting = READ_ONCE(t->trc_reader_nesting) - 1; + barrier(); // Critical section before disabling. + // Disable IPI-based setting of .need_qs. + WRITE_ONCE(t->trc_reader_nesting, INT_MIN); if (likely(!READ_ONCE(t->trc_reader_special.s)) || nesting) { WRITE_ONCE(t->trc_reader_nesting, nesting); return; // We assume shallow reader nesting. --- linux-azure-5.8-5.8.0.orig/include/linux/rmap.h +++ linux-azure-5.8-5.8.0/include/linux/rmap.h @@ -91,7 +91,6 @@ TTU_SPLIT_HUGE_PMD = 0x4, /* split huge PMD if any */ TTU_IGNORE_MLOCK = 0x8, /* ignore mlock */ - TTU_IGNORE_ACCESS = 0x10, /* don't age */ TTU_IGNORE_HWPOISON = 0x20, /* corrupted page is recoverable */ TTU_BATCH_FLUSH = 0x40, /* Batch TLB flushes where possible * and caller guarantees they will @@ -214,7 +213,8 @@ static inline void page_vma_mapped_walk_done(struct page_vma_mapped_walk *pvmw) { - if (pvmw->pte) + /* HugeTLB pte is set to the relevant page table entry without pte_mapped. */ + if (pvmw->pte && !PageHuge(pvmw->page)) pte_unmap(pvmw->pte); if (pvmw->ptl) spin_unlock(pvmw->ptl); --- linux-azure-5.8-5.8.0.orig/include/linux/rwsem.h +++ linux-azure-5.8-5.8.0/include/linux/rwsem.h @@ -123,6 +123,7 @@ * lock for reading */ extern void down_read(struct rw_semaphore *sem); +extern int __must_check down_read_interruptible(struct rw_semaphore *sem); extern int __must_check down_read_killable(struct rw_semaphore *sem); /* @@ -171,6 +172,7 @@ * See Documentation/locking/lockdep-design.rst for more details.) */ extern void down_read_nested(struct rw_semaphore *sem, int subclass); +extern int __must_check down_read_killable_nested(struct rw_semaphore *sem, int subclass); extern void down_write_nested(struct rw_semaphore *sem, int subclass); extern int down_write_killable_nested(struct rw_semaphore *sem, int subclass); extern void _down_write_nest_lock(struct rw_semaphore *sem, struct lockdep_map *nest_lock); @@ -191,6 +193,7 @@ extern void up_read_non_owner(struct rw_semaphore *sem); #else # define down_read_nested(sem, subclass) down_read(sem) +# define down_read_killable_nested(sem, subclass) down_read_killable(sem) # define down_write_nest_lock(sem, nest_lock) down_write(sem) # define down_write_nested(sem, subclass) down_write(sem) # define down_write_killable_nested(sem, subclass) down_write_killable(sem) --- linux-azure-5.8-5.8.0.orig/include/linux/sched.h +++ linux-azure-5.8-5.8.0/include/linux/sched.h @@ -61,6 +61,7 @@ struct signal_struct; struct task_delay_info; struct task_group; +struct io_uring_task; /* * Task state bitmask. NOTE! These bits are also @@ -761,7 +762,6 @@ unsigned sched_reset_on_fork:1; unsigned sched_contributes_to_load:1; unsigned sched_migrated:1; - unsigned sched_remote_wakeup:1; #ifdef CONFIG_PSI unsigned sched_psi_wake_requeue:1; #endif @@ -771,6 +771,21 @@ /* Unserialized, strictly 'current' */ + /* + * This field must not be in the scheduler word above due to wakelist + * queueing no longer being serialized by p->on_cpu. However: + * + * p->XXX = X; ttwu() + * schedule() if (p->on_rq && ..) // false + * smp_mb__after_spinlock(); if (smp_load_acquire(&p->on_cpu) && //true + * deactivate_task() ttwu_queue_wakelist()) + * p->on_rq = 0; p->sched_remote_wakeup = Y; + * + * guarantees all stores of 'current' are visible before + * ->sched_remote_wakeup gets used, so it can be in this word. + */ + unsigned sched_remote_wakeup:1; + /* Bit to tell LSMs we're in execve(): */ unsigned in_execve:1; unsigned in_iowait:1; @@ -923,6 +938,10 @@ /* Open file information: */ struct files_struct *files; +#ifdef CONFIG_IO_URING + struct io_uring_task *io_uring; +#endif + /* Namespaces: */ struct nsproxy *nsproxy; --- linux-azure-5.8-5.8.0.orig/include/linux/sched/coredump.h +++ linux-azure-5.8-5.8.0/include/linux/sched/coredump.h @@ -72,6 +72,7 @@ #define MMF_DISABLE_THP 24 /* disable THP for all VMAs */ #define MMF_OOM_VICTIM 25 /* mm is the oom victim */ #define MMF_OOM_REAP_QUEUED 26 /* mm was queued for oom_reaper */ +#define MMF_MULTIPROCESS 27 /* mm is shared between processes */ #define MMF_DISABLE_THP_MASK (1 << MMF_DISABLE_THP) #define MMF_INIT_MASK (MMF_DUMPABLE_MASK | MMF_DUMP_FILTER_MASK |\ --- linux-azure-5.8-5.8.0.orig/include/linux/sched/signal.h +++ linux-azure-5.8-5.8.0/include/linux/sched/signal.h @@ -228,12 +228,13 @@ * credential calculations * (notably. ptrace) * Deprecated do not use in new code. - * Use exec_update_mutex instead. - */ - struct mutex exec_update_mutex; /* Held while task_struct is being - * updated during exec, and may have - * inconsistent permissions. + * Use exec_update_lock instead. */ + struct rw_semaphore exec_update_lock; /* Held while task_struct is + * being updated during exec, + * and may have inconsistent + * permissions. + */ } __randomize_layout; /* --- linux-azure-5.8-5.8.0.orig/include/linux/sched/user.h +++ linux-azure-5.8-5.8.0/include/linux/sched/user.h @@ -36,6 +36,9 @@ defined(CONFIG_NET) || defined(CONFIG_IO_URING) atomic_long_t locked_vm; #endif +#ifdef CONFIG_WATCH_QUEUE + atomic_t nr_watches; /* The number of watches this user currently has */ +#endif /* Miscellaneous per-user rate limit */ struct ratelimit_state ratelimit; --- linux-azure-5.8-5.8.0.orig/include/linux/security.h +++ linux-azure-5.8-5.8.0/include/linux/security.h @@ -131,6 +131,130 @@ extern const char *const lockdown_reasons[LOCKDOWN_CONFIDENTIALITY_MAX+1]; +/* + * A "security context" is the text representation of + * the information used by LSMs. + * This structure contains the string, its length, and which LSM + * it is useful for. + */ +struct lsmcontext { + char *context; /* Provided by the module */ + u32 len; + int slot; /* Identifies the module */ +}; + +/** + * lsmcontext_init - initialize an lsmcontext structure. + * @cp: Pointer to the context to initialize + * @context: Initial context, or NULL + * @size: Size of context, or 0 + * @slot: Which LSM provided the context + * + * Fill in the lsmcontext from the provided information. + * This is a scaffolding function that will be removed when + * lsmcontext integration is complete. + */ +static inline void lsmcontext_init(struct lsmcontext *cp, char *context, + u32 size, int slot) +{ + cp->slot = slot; + cp->context = context; + cp->len = size; +} + +/* + * Data exported by the security modules + * + * Any LSM that provides secid or secctx based hooks must be included. + */ +#define LSMBLOB_ENTRIES ( \ + (IS_ENABLED(CONFIG_SECURITY_SELINUX) ? 1 : 0) + \ + (IS_ENABLED(CONFIG_SECURITY_SMACK) ? 1 : 0) + \ + (IS_ENABLED(CONFIG_SECURITY_APPARMOR) ? 1 : 0) + \ + (IS_ENABLED(CONFIG_BPF_LSM) ? 1 : 0)) + +struct lsmblob { + u32 secid[LSMBLOB_ENTRIES]; +}; + +#define LSMBLOB_INVALID -1 /* Not a valid LSM slot number */ +#define LSMBLOB_NEEDED -2 /* Slot requested on initialization */ +#define LSMBLOB_NOT_NEEDED -3 /* Slot not requested */ +#define LSMBLOB_DISPLAY -4 /* Use the "display" slot */ +#define LSMBLOB_FIRST -5 /* Use the default "display" slot */ + +/** + * lsmblob_init - initialize an lsmblob structure. + * @blob: Pointer to the data to initialize + * @secid: The initial secid value + * + * Set all secid for all modules to the specified value. + */ +static inline void lsmblob_init(struct lsmblob *blob, u32 secid) +{ + int i; + + for (i = 0; i < LSMBLOB_ENTRIES; i++) + blob->secid[i] = secid; +} + +/** + * lsmblob_is_set - report if there is an value in the lsmblob + * @blob: Pointer to the exported LSM data + * + * Returns true if there is a secid set, false otherwise + */ +static inline bool lsmblob_is_set(struct lsmblob *blob) +{ + struct lsmblob empty = {}; + + return !!memcmp(blob, &empty, sizeof(*blob)); +} + +/** + * lsmblob_equal - report if the two lsmblob's are equal + * @bloba: Pointer to one LSM data + * @blobb: Pointer to the other LSM data + * + * Returns true if all entries in the two are equal, false otherwise + */ +static inline bool lsmblob_equal(struct lsmblob *bloba, struct lsmblob *blobb) +{ + return !memcmp(bloba, blobb, sizeof(*bloba)); +} + +/** + * lsmblob_value - find the first non-zero value in an lsmblob structure. + * @blob: Pointer to the data + * + * This needs to be used with extreme caution, as the cases where + * it is appropriate are rare. + * + * Return the first secid value set in the lsmblob. + * There should only be one. + */ +static inline u32 lsmblob_value(const struct lsmblob *blob) +{ + int i; + + for (i = 0; i < LSMBLOB_ENTRIES; i++) + if (blob->secid[i]) + return blob->secid[i]; + + return 0; +} + +const char *security_lsm_slot_name(int slot); + +static inline bool lsm_multiple_contexts(void) +{ +#ifdef CONFIG_SECURITY + return security_lsm_slot_name(1) != NULL; +#else + return false; +#endif +} + /* These functions are in security/commoncap.c */ extern int cap_capable(const struct cred *cred, struct user_namespace *ns, int cap, unsigned int opts); @@ -355,7 +479,7 @@ int security_inode_getsecurity(struct inode *inode, const char *name, void **buffer, bool alloc); int security_inode_setsecurity(struct inode *inode, const char *name, const void *value, size_t size, int flags); int security_inode_listsecurity(struct inode *inode, char *buffer, size_t buffer_size); -void security_inode_getsecid(struct inode *inode, u32 *secid); +void security_inode_getsecid(struct inode *inode, struct lsmblob *blob); int security_inode_copy_up(struct dentry *src, struct cred **new); int security_inode_copy_up_xattr(const char *name); int security_kernfs_init_security(struct kernfs_node *kn_dir, @@ -382,8 +506,8 @@ void security_cred_free(struct cred *cred); int security_prepare_creds(struct cred *new, const struct cred *old, gfp_t gfp); void security_transfer_creds(struct cred *new, const struct cred *old); -void security_cred_getsecid(const struct cred *c, u32 *secid); -int security_kernel_act_as(struct cred *new, u32 secid); +void security_cred_getsecid(const struct cred *c, struct lsmblob *blob); +int security_kernel_act_as(struct cred *new, struct lsmblob *blob); int security_kernel_create_files_as(struct cred *new, struct inode *inode); int security_kernel_module_request(char *kmod_name); int security_kernel_load_data(enum kernel_load_data_id id); @@ -397,7 +521,7 @@ int security_task_setpgid(struct task_struct *p, pid_t pgid); int security_task_getpgid(struct task_struct *p); int security_task_getsid(struct task_struct *p); -void security_task_getsecid(struct task_struct *p, u32 *secid); +void security_task_getsecid(struct task_struct *p, struct lsmblob *blob); int security_task_setnice(struct task_struct *p, int nice); int security_task_setioprio(struct task_struct *p, int ioprio); int security_task_getioprio(struct task_struct *p); @@ -414,7 +538,7 @@ unsigned long arg4, unsigned long arg5); void security_task_to_inode(struct task_struct *p, struct inode *inode); int security_ipc_permission(struct kern_ipc_perm *ipcp, short flag); -void security_ipc_getsecid(struct kern_ipc_perm *ipcp, u32 *secid); +void security_ipc_getsecid(struct kern_ipc_perm *ipcp, struct lsmblob *blob); int security_msg_msg_alloc(struct msg_msg *msg); void security_msg_msg_free(struct msg_msg *msg); int security_msg_queue_alloc(struct kern_ipc_perm *msq); @@ -443,14 +567,17 @@ size_t size); int security_netlink_send(struct sock *sk, struct sk_buff *skb); int security_ismaclabel(const char *name); -int security_secid_to_secctx(u32 secid, char **secdata, u32 *seclen); -int security_secctx_to_secid(const char *secdata, u32 seclen, u32 *secid); -void security_release_secctx(char *secdata, u32 seclen); +int security_secid_to_secctx(struct lsmblob *blob, struct lsmcontext *cp, + int display); +int security_secctx_to_secid(const char *secdata, u32 seclen, + struct lsmblob *blob); +void security_release_secctx(struct lsmcontext *cp); void security_inode_invalidate_secctx(struct inode *inode); int security_inode_notifysecctx(struct inode *inode, void *ctx, u32 ctxlen); int security_inode_setsecctx(struct dentry *dentry, void *ctx, u32 ctxlen); -int security_inode_getsecctx(struct inode *inode, void **ctx, u32 *ctxlen); +int security_inode_getsecctx(struct inode *inode, struct lsmcontext *cp); int security_locked_down(enum lockdown_reason what); +int security_lock_kernel_down(const char *where, enum lockdown_reason level); #else /* CONFIG_SECURITY */ static inline int call_blocking_lsm_notifier(enum lsm_event event, void *data) @@ -864,7 +991,7 @@ static inline int security_inode_getsecurity(struct inode *inode, const char *name, void **buffer, bool alloc) { - return -EOPNOTSUPP; + return cap_inode_getsecurity(inode, name, buffer, alloc); } static inline int security_inode_setsecurity(struct inode *inode, const char *name, const void *value, size_t size, int flags) @@ -877,9 +1004,10 @@ return 0; } -static inline void security_inode_getsecid(struct inode *inode, u32 *secid) +static inline void security_inode_getsecid(struct inode *inode, + struct lsmblob *blob) { - *secid = 0; + lsmblob_init(blob, 0); } static inline int security_inode_copy_up(struct dentry *src, struct cred **new) @@ -997,7 +1125,8 @@ { } -static inline int security_kernel_act_as(struct cred *cred, u32 secid) +static inline int security_kernel_act_as(struct cred *cred, + struct lsmblob *blob) { return 0; } @@ -1060,9 +1189,10 @@ return 0; } -static inline void security_task_getsecid(struct task_struct *p, u32 *secid) +static inline void security_task_getsecid(struct task_struct *p, + struct lsmblob *blob) { - *secid = 0; + lsmblob_init(blob, 0); } static inline int security_task_setnice(struct task_struct *p, int nice) @@ -1133,9 +1263,10 @@ return 0; } -static inline void security_ipc_getsecid(struct kern_ipc_perm *ipcp, u32 *secid) +static inline void security_ipc_getsecid(struct kern_ipc_perm *ipcp, + struct lsmblob *blob) { - *secid = 0; + lsmblob_init(blob, 0); } static inline int security_msg_msg_alloc(struct msg_msg *msg) @@ -1255,19 +1386,20 @@ return 0; } -static inline int security_secid_to_secctx(u32 secid, char **secdata, u32 *seclen) +static inline int security_secid_to_secctx(struct lsmblob *blob, + struct lsmcontext *cp, int display) { return -EOPNOTSUPP; } static inline int security_secctx_to_secid(const char *secdata, u32 seclen, - u32 *secid) + struct lsmblob *blob) { return -EOPNOTSUPP; } -static inline void security_release_secctx(char *secdata, u32 seclen) +static inline void security_release_secctx(struct lsmcontext *cp) { } @@ -1283,7 +1415,8 @@ { return -EOPNOTSUPP; } -static inline int security_inode_getsecctx(struct inode *inode, void **ctx, u32 *ctxlen) +static inline int security_inode_getsecctx(struct inode *inode, + struct lsmcontext *cp) { return -EOPNOTSUPP; } @@ -1291,6 +1424,10 @@ { return 0; } +static inline int security_lock_kernel_down(const char *where, enum lockdown_reason level) +{ + return 0; +} #endif /* CONFIG_SECURITY */ #if defined(CONFIG_SECURITY) && defined(CONFIG_WATCH_QUEUE) @@ -1338,7 +1475,8 @@ int security_sock_rcv_skb(struct sock *sk, struct sk_buff *skb); int security_socket_getpeersec_stream(struct socket *sock, char __user *optval, int __user *optlen, unsigned len); -int security_socket_getpeersec_dgram(struct socket *sock, struct sk_buff *skb, u32 *secid); +int security_socket_getpeersec_dgram(struct socket *sock, struct sk_buff *skb, + struct lsmblob *blob); int security_sk_alloc(struct sock *sk, int family, gfp_t priority); void security_sk_free(struct sock *sk); void security_sk_clone(const struct sock *sk, struct sock *newsk); @@ -1351,7 +1489,7 @@ const struct request_sock *req); void security_inet_conn_established(struct sock *sk, struct sk_buff *skb); -int security_secmark_relabel_packet(u32 secid); +int security_secmark_relabel_packet(struct lsmblob *blob); void security_secmark_refcount_inc(void); void security_secmark_refcount_dec(void); int security_tun_dev_alloc_security(void **security); @@ -1476,7 +1614,9 @@ return -ENOPROTOOPT; } -static inline int security_socket_getpeersec_dgram(struct socket *sock, struct sk_buff *skb, u32 *secid) +static inline int security_socket_getpeersec_dgram(struct socket *sock, + struct sk_buff *skb, + struct lsmblob *blob) { return -ENOPROTOOPT; } @@ -1522,7 +1662,7 @@ { } -static inline int security_secmark_relabel_packet(u32 secid) +static inline int security_secmark_relabel_packet(struct lsmblob *blob) { return 0; } @@ -1820,8 +1960,9 @@ #ifdef CONFIG_SECURITY int security_audit_rule_init(u32 field, u32 op, char *rulestr, void **lsmrule); int security_audit_rule_known(struct audit_krule *krule); -int security_audit_rule_match(u32 secid, u32 field, u32 op, void *lsmrule); -void security_audit_rule_free(void *lsmrule); +int security_audit_rule_match(struct lsmblob *blob, u32 field, u32 op, + void **lsmrule); +void security_audit_rule_free(void **lsmrule); #else @@ -1836,13 +1977,13 @@ return 0; } -static inline int security_audit_rule_match(u32 secid, u32 field, u32 op, - void *lsmrule) +static inline int security_audit_rule_match(struct lsmblob *blob, u32 field, + u32 op, void **lsmrule) { return 0; } -static inline void security_audit_rule_free(void *lsmrule) +static inline void security_audit_rule_free(void **lsmrule) { } #endif /* CONFIG_SECURITY */ --- linux-azure-5.8-5.8.0.orig/include/linux/seq_buf.h +++ linux-azure-5.8-5.8.0/include/linux/seq_buf.h @@ -30,7 +30,7 @@ } static inline void -seq_buf_init(struct seq_buf *s, unsigned char *buf, unsigned int size) +seq_buf_init(struct seq_buf *s, char *buf, unsigned int size) { s->buffer = buf; s->size = size; --- linux-azure-5.8-5.8.0.orig/include/linux/seq_file.h +++ linux-azure-5.8-5.8.0/include/linux/seq_file.h @@ -107,6 +107,7 @@ char *mangle_path(char *s, const char *p, const char *esc); int seq_open(struct file *, const struct seq_operations *); ssize_t seq_read(struct file *, char __user *, size_t, loff_t *); +ssize_t seq_read_iter(struct kiocb *iocb, struct iov_iter *iter); loff_t seq_lseek(struct file *, loff_t, int); int seq_release(struct inode *, struct file *); int seq_write(struct seq_file *seq, const void *data, size_t len); --- linux-azure-5.8-5.8.0.orig/include/linux/serial_core.h +++ linux-azure-5.8-5.8.0/include/linux/serial_core.h @@ -248,6 +248,7 @@ unsigned char hub6; /* this should be in the 8250 driver */ unsigned char suspended; + unsigned char console_reinit; const char *name; /* port name */ struct attribute_group *attr_group; /* port specific attributes */ const struct attribute_group **tty_groups; /* all attributes (serial core use only) */ --- linux-azure-5.8-5.8.0.orig/include/linux/shmem_fs.h +++ linux-azure-5.8-5.8.0/include/linux/shmem_fs.h @@ -27,10 +27,13 @@ }; struct shmem_sb_info { + struct mutex idr_lock; + bool idr_nouse; + struct idr idr; /* manages inode-number */ unsigned long max_blocks; /* How many blocks are allowed */ struct percpu_counter used_blocks; /* How many are allocated */ - unsigned long max_inodes; /* How many inodes are allowed */ - unsigned long free_inodes; /* How many are left for allocation */ + int max_inodes; /* How many inodes are allowed */ + int free_inodes; /* How many are left for allocation */ spinlock_t stat_lock; /* Serialize shmem_sb_info changes */ umode_t mode; /* Mount mode for root directory */ unsigned char huge; /* Whether to try for hugepages */ --- linux-azure-5.8-5.8.0.orig/include/linux/skbuff.h +++ linux-azure-5.8-5.8.0/include/linux/skbuff.h @@ -3208,8 +3208,9 @@ * is untouched. Otherwise it is extended. Returns zero on * success. The skb is freed on error if @free_on_error is true. */ -static inline int __skb_put_padto(struct sk_buff *skb, unsigned int len, - bool free_on_error) +static inline int __must_check __skb_put_padto(struct sk_buff *skb, + unsigned int len, + bool free_on_error) { unsigned int size = skb->len; @@ -3232,7 +3233,7 @@ * is untouched. Otherwise it is extended. Returns zero on * success. The skb is freed on error. */ -static inline int skb_put_padto(struct sk_buff *skb, unsigned int len) +static inline int __must_check skb_put_padto(struct sk_buff *skb, unsigned int len) { return __skb_put_padto(skb, len, true); } --- linux-azure-5.8-5.8.0.orig/include/linux/soc/mediatek/mtk-cmdq.h +++ linux-azure-5.8-5.8.0/include/linux/soc/mediatek/mtk-cmdq.h @@ -105,11 +105,12 @@ /** * cmdq_pkt_wfe() - append wait for event command to the CMDQ packet * @pkt: the CMDQ packet - * @event: the desired event type to "wait and CLEAR" + * @event: the desired event type to wait + * @clear: clear event or not after event arrive * * Return: 0 for success; else the error code is returned */ -int cmdq_pkt_wfe(struct cmdq_pkt *pkt, u16 event); +int cmdq_pkt_wfe(struct cmdq_pkt *pkt, u16 event, bool clear); /** * cmdq_pkt_clear_event() - append clear event command to the CMDQ packet --- linux-azure-5.8-5.8.0.orig/include/linux/soundwire/sdw.h +++ linux-azure-5.8-5.8.0/include/linux/soundwire/sdw.h @@ -964,6 +964,8 @@ int sdw_read(struct sdw_slave *slave, u32 addr); int sdw_write(struct sdw_slave *slave, u32 addr, u8 value); +int sdw_write_no_pm(struct sdw_slave *slave, u32 addr, u8 value); +int sdw_read_no_pm(struct sdw_slave *slave, u32 addr); int sdw_nread(struct sdw_slave *slave, u32 addr, size_t count, u8 *val); int sdw_nwrite(struct sdw_slave *slave, u32 addr, size_t count, u8 *val); --- linux-azure-5.8-5.8.0.orig/include/linux/spi/spi.h +++ linux-azure-5.8-5.8.0/include/linux/spi/spi.h @@ -728,6 +728,25 @@ return __spi_alloc_controller(host, size, true); } +struct spi_controller *__devm_spi_alloc_controller(struct device *dev, + unsigned int size, + bool slave); + +static inline struct spi_controller *devm_spi_alloc_master(struct device *dev, + unsigned int size) +{ + return __devm_spi_alloc_controller(dev, size, false); +} + +static inline struct spi_controller *devm_spi_alloc_slave(struct device *dev, + unsigned int size) +{ + if (!IS_ENABLED(CONFIG_SPI_SLAVE)) + return NULL; + + return __devm_spi_alloc_controller(dev, size, true); +} + extern int spi_register_controller(struct spi_controller *ctlr); extern int devm_spi_register_controller(struct device *dev, struct spi_controller *ctlr); --- linux-azure-5.8-5.8.0.orig/include/linux/splice.h +++ linux-azure-5.8-5.8.0/include/linux/splice.h @@ -93,4 +93,10 @@ extern const struct pipe_buf_operations page_cache_pipe_buf_ops; extern const struct pipe_buf_operations default_pipe_buf_ops; + +extern long do_splice_from(struct pipe_inode_info *pipe, struct file *out, + loff_t *ppos, size_t len, unsigned int flags); +extern long do_splice_to(struct file *in, loff_t *ppos, + struct pipe_inode_info *pipe, size_t len, + unsigned int flags); #endif --- linux-azure-5.8-5.8.0.orig/include/linux/stmmac.h +++ linux-azure-5.8-5.8.0/include/linux/stmmac.h @@ -170,6 +170,7 @@ int unicast_filter_entries; int tx_fifo_size; int rx_fifo_size; + u32 addr64; u32 rx_queues_to_use; u32 tx_queues_to_use; u8 rx_sched_algorithm; --- linux-azure-5.8-5.8.0.orig/include/linux/string.h +++ linux-azure-5.8-5.8.0/include/linux/string.h @@ -161,20 +161,13 @@ #ifndef __HAVE_ARCH_MEMCHR extern void * memchr(const void *,int,__kernel_size_t); #endif -#ifndef __HAVE_ARCH_MEMCPY_MCSAFE -static inline __must_check unsigned long memcpy_mcsafe(void *dst, - const void *src, size_t cnt) -{ - memcpy(dst, src, cnt); - return 0; -} -#endif #ifndef __HAVE_ARCH_MEMCPY_FLUSHCACHE static inline void memcpy_flushcache(void *dst, const void *src, size_t cnt) { memcpy(dst, src, cnt); } #endif + void *memchr_inv(const void *s, int c, size_t n); char *strreplace(char *s, char old, char new); --- linux-azure-5.8-5.8.0.orig/include/linux/sunrpc/xdr.h +++ linux-azure-5.8-5.8.0/include/linux/sunrpc/xdr.h @@ -25,8 +25,7 @@ #define XDR_QUADLEN(l) (((l) + 3) >> 2) /* - * Generic opaque `network object.' At the kernel level, this type - * is used only by lockd. + * Generic opaque `network object.' */ #define XDR_MAX_NETOBJ 1024 struct xdr_netobj { --- linux-azure-5.8-5.8.0.orig/include/linux/sunrpc/xprt.h +++ linux-azure-5.8-5.8.0/include/linux/sunrpc/xprt.h @@ -329,6 +329,7 @@ struct rpc_xprt * (*setup)(struct xprt_create *); struct module *owner; char name[32]; + const char * netid[]; }; /* --- linux-azure-5.8-5.8.0.orig/include/linux/swiotlb.h +++ linux-azure-5.8-5.8.0/include/linux/swiotlb.h @@ -5,6 +5,7 @@ #include #include #include +#include struct device; struct page; --- linux-azure-5.8-5.8.0.orig/include/linux/syscalls.h +++ linux-azure-5.8-5.8.0/include/linux/syscalls.h @@ -252,6 +252,30 @@ static inline long __do_sys##name(__MAP(x,__SC_DECL,__VA_ARGS__)) #endif /* __SYSCALL_DEFINEx */ +/* For split 64-bit arguments on 32-bit architectures */ +#ifdef __LITTLE_ENDIAN +#define SC_ARG64(name) u32, name##_lo, u32, name##_hi +#else +#define SC_ARG64(name) u32, name##_hi, u32, name##_lo +#endif +#define SC_VAL64(type, name) ((type) name##_hi << 32 | name##_lo) + +#ifdef CONFIG_COMPAT +#define SYSCALL32_DEFINE1 COMPAT_SYSCALL_DEFINE1 +#define SYSCALL32_DEFINE2 COMPAT_SYSCALL_DEFINE2 +#define SYSCALL32_DEFINE3 COMPAT_SYSCALL_DEFINE3 +#define SYSCALL32_DEFINE4 COMPAT_SYSCALL_DEFINE4 +#define SYSCALL32_DEFINE5 COMPAT_SYSCALL_DEFINE5 +#define SYSCALL32_DEFINE6 COMPAT_SYSCALL_DEFINE6 +#else +#define SYSCALL32_DEFINE1 SYSCALL_DEFINE1 +#define SYSCALL32_DEFINE2 SYSCALL_DEFINE2 +#define SYSCALL32_DEFINE3 SYSCALL_DEFINE3 +#define SYSCALL32_DEFINE4 SYSCALL_DEFINE4 +#define SYSCALL32_DEFINE5 SYSCALL_DEFINE5 +#define SYSCALL32_DEFINE6 SYSCALL_DEFINE6 +#endif + /* * Called before coming back to user-mode. Returning to user-mode with an * address limit different than USER_DS can allow to overwrite kernel memory. --- linux-azure-5.8-5.8.0.orig/include/linux/sysfs.h +++ linux-azure-5.8-5.8.0/include/linux/sysfs.h @@ -322,6 +322,10 @@ int sysfs_group_change_owner(struct kobject *kobj, const struct attribute_group *groups, kuid_t kuid, kgid_t kgid); +__printf(2, 3) +int sysfs_emit(char *buf, const char *fmt, ...); +__printf(3, 4) +int sysfs_emit_at(char *buf, int at, const char *fmt, ...); #else /* CONFIG_SYSFS */ @@ -569,6 +573,17 @@ return 0; } +__printf(2, 3) +static inline int sysfs_emit(char *buf, const char *fmt, ...) +{ + return 0; +} + +__printf(3, 4) +static inline int sysfs_emit_at(char *buf, int at, const char *fmt, ...) +{ + return 0; +} #endif /* CONFIG_SYSFS */ static inline int __must_check sysfs_create_file(struct kobject *kobj, --- linux-azure-5.8-5.8.0.orig/include/linux/task_work.h +++ linux-azure-5.8-5.8.0/include/linux/task_work.h @@ -13,9 +13,14 @@ twork->func = func; } -#define TWA_RESUME 1 -#define TWA_SIGNAL 2 -int task_work_add(struct task_struct *task, struct callback_head *twork, int); +enum task_work_notify_mode { + TWA_NONE, + TWA_RESUME, + TWA_SIGNAL, +}; + +int task_work_add(struct task_struct *task, struct callback_head *twork, + enum task_work_notify_mode mode); struct callback_head *task_work_cancel(struct task_struct *, task_work_func_t); void task_work_run(void); --- linux-azure-5.8-5.8.0.orig/include/linux/thermal.h +++ linux-azure-5.8-5.8.0/include/linux/thermal.h @@ -92,6 +92,8 @@ enum thermal_trend *); int (*notify) (struct thermal_zone_device *, int, enum thermal_trip_type); + void (*hot)(struct thermal_zone_device *); + void (*critical)(struct thermal_zone_device *); }; struct thermal_cooling_device_ops { @@ -416,6 +418,7 @@ void thermal_cdev_update(struct thermal_cooling_device *); void thermal_notify_framework(struct thermal_zone_device *, int); +void thermal_zone_device_critical(struct thermal_zone_device *tz); #else static inline struct thermal_zone_device *thermal_zone_device_register( const char *type, int trips, int mask, void *devdata, --- linux-azure-5.8-5.8.0.orig/include/linux/time64.h +++ linux-azure-5.8-5.8.0/include/linux/time64.h @@ -124,6 +124,10 @@ */ static inline s64 timespec64_to_ns(const struct timespec64 *ts) { + /* Prevent multiplication overflow */ + if ((unsigned long long)ts->tv_sec >= KTIME_SEC_MAX) + return KTIME_MAX; + return ((s64) ts->tv_sec * NSEC_PER_SEC) + ts->tv_nsec; } --- linux-azure-5.8-5.8.0.orig/include/linux/tpm.h +++ linux-azure-5.8-5.8.0/include/linux/tpm.h @@ -96,6 +96,7 @@ u8 *context_buf; u32 session_tbl[3]; u8 *session_buf; + u32 buf_size; }; struct tpm_bios_log { @@ -396,6 +397,10 @@ #if defined(CONFIG_TCG_TPM) || defined(CONFIG_TCG_TPM_MODULE) extern int tpm_is_tpm2(struct tpm_chip *chip); +extern __must_check int tpm_try_get_ops(struct tpm_chip *chip); +extern void tpm_put_ops(struct tpm_chip *chip); +extern ssize_t tpm_transmit_cmd(struct tpm_chip *chip, struct tpm_buf *buf, + size_t min_rsp_body_length, const char *desc); extern int tpm_pcr_read(struct tpm_chip *chip, u32 pcr_idx, struct tpm_digest *digest); extern int tpm_pcr_extend(struct tpm_chip *chip, u32 pcr_idx, @@ -409,7 +414,6 @@ { return -ENODEV; } - static inline int tpm_pcr_read(struct tpm_chip *chip, int pcr_idx, struct tpm_digest *digest) { --- linux-azure-5.8-5.8.0.orig/include/linux/tpm_eventlog.h +++ linux-azure-5.8-5.8.0/include/linux/tpm_eventlog.h @@ -211,9 +211,16 @@ efispecid = (struct tcg_efi_specid_event_head *)event_header->event; - /* Check if event is malformed. */ + /* + * Perform validation of the event in order to identify malformed + * events. This function may be asked to parse arbitrary byte sequences + * immediately following a valid event log. The caller expects this + * function to recognize that the byte sequence is not a valid event + * and to return an event size of 0. + */ if (memcmp(efispecid->signature, TCG_SPECID_SIG, - sizeof(TCG_SPECID_SIG)) || count > efispecid->num_algs) { + sizeof(TCG_SPECID_SIG)) || + !efispecid->num_algs || count != efispecid->num_algs) { size = 0; goto out; } --- linux-azure-5.8-5.8.0.orig/include/linux/trace_seq.h +++ linux-azure-5.8-5.8.0/include/linux/trace_seq.h @@ -12,7 +12,7 @@ */ struct trace_seq { - unsigned char buffer[PAGE_SIZE]; + char buffer[PAGE_SIZE]; struct seq_buf seq; int full; }; @@ -51,7 +51,7 @@ * that is about to be written to and then return the result * of that write. */ -static inline unsigned char * +static inline char * trace_seq_buffer_ptr(struct trace_seq *s) { return s->buffer + seq_buf_used(&s->seq); --- linux-azure-5.8-5.8.0.orig/include/linux/tracepoint.h +++ linux-azure-5.8-5.8.0/include/linux/tracepoint.h @@ -361,7 +361,7 @@ static const char *___tp_str __tracepoint_string = str; \ ___tp_str; \ }) -#define __tracepoint_string __attribute__((section("__tracepoint_str"))) +#define __tracepoint_string __attribute__((section("__tracepoint_str"), used)) #else /* * tracepoint_string() is used to save the string address for userspace --- linux-azure-5.8-5.8.0.orig/include/linux/tty.h +++ linux-azure-5.8-5.8.0/include/linux/tty.h @@ -306,6 +306,10 @@ struct termiox *termiox; /* May be NULL for unsupported */ char name[64]; struct pid *pgrp; /* Protected by ctrl lock */ + /* + * Writes protected by both ctrl lock and legacy mutex, readers must use + * at least one of them. + */ struct pid *session; unsigned long flags; int count; @@ -418,6 +422,7 @@ extern int tty_dev_name_to_number(const char *name, dev_t *number); extern int tty_ldisc_lock(struct tty_struct *tty, unsigned long timeout); extern void tty_ldisc_unlock(struct tty_struct *tty); +extern ssize_t redirected_tty_write(struct kiocb *, struct iov_iter *); #else static inline void tty_kref_put(struct tty_struct *tty) { } --- linux-azure-5.8-5.8.0.orig/include/linux/tty_ldisc.h +++ linux-azure-5.8-5.8.0/include/linux/tty_ldisc.h @@ -185,7 +185,8 @@ void (*close)(struct tty_struct *); void (*flush_buffer)(struct tty_struct *tty); ssize_t (*read)(struct tty_struct *tty, struct file *file, - unsigned char __user *buf, size_t nr); + unsigned char *buf, size_t nr, + void **cookie, unsigned long offset); ssize_t (*write)(struct tty_struct *tty, struct file *file, const unsigned char *buf, size_t nr); int (*ioctl)(struct tty_struct *tty, struct file *file, --- linux-azure-5.8-5.8.0.orig/include/linux/uaccess.h +++ linux-azure-5.8-5.8.0/include/linux/uaccess.h @@ -163,6 +163,19 @@ } #endif +#ifndef copy_mc_to_kernel +/* + * Without arch opt-in this generic copy_mc_to_kernel() will not handle + * #MC (or arch equivalent) during source read. + */ +static inline unsigned long __must_check +copy_mc_to_kernel(void *dst, const void *src, size_t cnt) +{ + memcpy(dst, src, cnt); + return 0; +} +#endif + static __always_inline void pagefault_disabled_inc(void) { current->pagefault_disabled++; --- linux-azure-5.8-5.8.0.orig/include/linux/uio.h +++ linux-azure-5.8-5.8.0/include/linux/uio.h @@ -186,10 +186,10 @@ #define _copy_from_iter_flushcache _copy_from_iter_nocache #endif -#ifdef CONFIG_ARCH_HAS_UACCESS_MCSAFE -size_t _copy_to_iter_mcsafe(const void *addr, size_t bytes, struct iov_iter *i); +#ifdef CONFIG_ARCH_HAS_COPY_MC +size_t _copy_mc_to_iter(const void *addr, size_t bytes, struct iov_iter *i); #else -#define _copy_to_iter_mcsafe _copy_to_iter +#define _copy_mc_to_iter _copy_to_iter #endif static __always_inline __must_check @@ -202,12 +202,12 @@ } static __always_inline __must_check -size_t copy_to_iter_mcsafe(void *addr, size_t bytes, struct iov_iter *i) +size_t copy_mc_to_iter(void *addr, size_t bytes, struct iov_iter *i) { if (unlikely(!check_copy_size(addr, bytes, true))) return 0; else - return _copy_to_iter_mcsafe(addr, bytes, i); + return _copy_mc_to_iter(addr, bytes, i); } size_t iov_iter_zero(size_t bytes, struct iov_iter *); @@ -261,7 +261,13 @@ { i->count = count; } -size_t csum_and_copy_to_iter(const void *addr, size_t bytes, void *csump, struct iov_iter *i); + +struct csum_state { + __wsum csum; + size_t off; +}; + +size_t csum_and_copy_to_iter(const void *addr, size_t bytes, void *csstate, struct iov_iter *i); size_t csum_and_copy_from_iter(void *addr, size_t bytes, __wsum *csum, struct iov_iter *i); bool csum_and_copy_from_iter_full(void *addr, size_t bytes, __wsum *csum, struct iov_iter *i); size_t hash_and_copy_to_iter(const void *addr, size_t bytes, void *hashp, --- linux-azure-5.8-5.8.0.orig/include/linux/usb/pd.h +++ linux-azure-5.8-5.8.0/include/linux/usb/pd.h @@ -473,6 +473,7 @@ #define PD_T_ERROR_RECOVERY 100 /* minimum 25 is insufficient */ #define PD_T_SRCSWAPSTDBY 625 /* Maximum of 650ms */ #define PD_T_NEWSRC 250 /* Maximum of 275ms */ +#define PD_T_SWAP_SRC_START 20 /* Minimum of 20ms */ #define PD_T_DRP_TRY 100 /* 75 - 150 ms */ #define PD_T_DRP_TRYWAIT 600 /* 400 - 800 ms */ --- linux-azure-5.8-5.8.0.orig/include/linux/usb_usual.h +++ linux-azure-5.8-5.8.0/include/linux/usb_usual.h @@ -84,6 +84,8 @@ /* Cannot handle REPORT_LUNS */ \ US_FLAG(ALWAYS_SYNC, 0x20000000) \ /* lies about caching, so always sync */ \ + US_FLAG(NO_SAME, 0x40000000) \ + /* Cannot handle WRITE_SAME */ \ #define US_FLAG(name, value) US_FL_##name = value , enum { US_DO_ALL_FLAGS }; --- linux-azure-5.8-5.8.0.orig/include/linux/user_namespace.h +++ linux-azure-5.8-5.8.0/include/linux/user_namespace.h @@ -137,6 +137,8 @@ const struct user_namespace *child); extern bool current_in_userns(const struct user_namespace *target_ns); struct ns_common *ns_get_owner(struct ns_common *ns); + +extern int unprivileged_userns_clone; #else static inline struct user_namespace *get_user_ns(struct user_namespace *ns) --- linux-azure-5.8-5.8.0.orig/include/linux/vt_kern.h +++ linux-azure-5.8-5.8.0/include/linux/vt_kern.h @@ -131,7 +131,7 @@ void vt_event_post(unsigned int event, unsigned int old, unsigned int new); int vt_waitactive(int n); void change_console(struct vc_data *new_vc); -void reset_vc(struct vc_data *vc); +void reset_vc(struct vc_data *vc, int mode); int do_unbind_con_driver(const struct consw *csw, int first, int last, int deflt); int vty_init(const struct file_operations *console_fops); --- linux-azure-5.8-5.8.0.orig/include/linux/watch_queue.h +++ linux-azure-5.8-5.8.0/include/linux/watch_queue.h @@ -122,6 +122,12 @@ */ #define watch_sizeof(STRUCT) (sizeof(STRUCT) << WATCH_INFO_LENGTH__SHIFT) +#else +static inline int watch_queue_init(struct pipe_inode_info *pipe) +{ + return -ENOPKG; +} + #endif #endif /* _LINUX_WATCH_QUEUE_H */ --- linux-azure-5.8-5.8.0.orig/include/linux/xattr.h +++ linux-azure-5.8-5.8.0/include/linux/xattr.h @@ -52,8 +52,11 @@ ssize_t vfs_listxattr(struct dentry *d, char *list, size_t size); int __vfs_setxattr(struct dentry *, struct inode *, const char *, const void *, size_t, int); int __vfs_setxattr_noperm(struct dentry *, const char *, const void *, size_t, int); +int __vfs_setxattr_locked(struct dentry *, const char *, const void *, size_t, int, struct inode **); int vfs_setxattr(struct dentry *, const char *, const void *, size_t, int); int __vfs_removexattr(struct dentry *, const char *); +int __vfs_removexattr_noperm(struct dentry *dentry, const char *name); +int __vfs_removexattr_locked(struct dentry *, const char *, struct inode **); int vfs_removexattr(struct dentry *, const char *); ssize_t generic_listxattr(struct dentry *dentry, char *buffer, size_t buffer_size); --- linux-azure-5.8-5.8.0.orig/include/linux/zsmalloc.h +++ linux-azure-5.8-5.8.0/include/linux/zsmalloc.h @@ -20,7 +20,6 @@ * zsmalloc mapping modes * * NOTE: These only make a difference when a mapped object spans pages. - * They also have no effect when ZSMALLOC_PGTABLE_MAPPING is selected. */ enum zs_mapmode { ZS_MM_RW, /* normal read-write mapping */ --- linux-azure-5.8-5.8.0.orig/include/media/v4l2-mediabus.h +++ linux-azure-5.8-5.8.0/include/media/v4l2-mediabus.h @@ -78,6 +78,7 @@ * @V4L2_MBUS_CCP2: CCP2 (Compact Camera Port 2) * @V4L2_MBUS_CSI2_DPHY: MIPI CSI-2 serial interface, with D-PHY * @V4L2_MBUS_CSI2_CPHY: MIPI CSI-2 serial interface, with C-PHY + * @V4L2_MBUS_INVALID: invalid bus type (keep as last) */ enum v4l2_mbus_type { V4L2_MBUS_UNKNOWN, @@ -87,6 +88,7 @@ V4L2_MBUS_CCP2, V4L2_MBUS_CSI2_DPHY, V4L2_MBUS_CSI2_CPHY, + V4L2_MBUS_INVALID, }; /** --- linux-azure-5.8-5.8.0.orig/include/net/act_api.h +++ linux-azure-5.8-5.8.0/include/net/act_api.h @@ -166,8 +166,7 @@ struct nlattr *est, struct tc_action **a, const struct tc_action_ops *ops, int bind, u32 flags); -void tcf_idr_insert(struct tc_action_net *tn, struct tc_action *a); - +void tcf_idr_insert_many(struct tc_action *actions[]); void tcf_idr_cleanup(struct tc_action_net *tn, u32 index); int tcf_idr_check_alloc(struct tc_action_net *tn, u32 *index, struct tc_action **a, int bind); --- linux-azure-5.8-5.8.0.orig/include/net/af_rxrpc.h +++ linux-azure-5.8-5.8.0/include/net/af_rxrpc.h @@ -59,7 +59,7 @@ void rxrpc_kernel_end_call(struct socket *, struct rxrpc_call *); void rxrpc_kernel_get_peer(struct socket *, struct rxrpc_call *, struct sockaddr_rxrpc *); -u32 rxrpc_kernel_get_srtt(struct socket *, struct rxrpc_call *); +bool rxrpc_kernel_get_srtt(struct socket *, struct rxrpc_call *, u32 *); int rxrpc_kernel_charge_accept(struct socket *, rxrpc_notify_rx_t, rxrpc_user_attach_call_t, unsigned long, gfp_t, unsigned int); --- linux-azure-5.8-5.8.0.orig/include/net/af_unix.h +++ linux-azure-5.8-5.8.0/include/net/af_unix.h @@ -36,7 +36,7 @@ kgid_t gid; struct scm_fp_list *fp; /* Passed files */ #ifdef CONFIG_SECURITY_NETWORK - u32 secid; /* Security ID */ + struct lsmblob lsmblob; /* Security LSM data */ #endif u32 consumed; } __randomize_layout; --- linux-azure-5.8-5.8.0.orig/include/net/bluetooth/bluetooth.h +++ linux-azure-5.8-5.8.0/include/net/bluetooth/bluetooth.h @@ -41,6 +41,8 @@ #define BLUETOOTH_VER_1_1 1 #define BLUETOOTH_VER_1_2 2 #define BLUETOOTH_VER_2_0 3 +#define BLUETOOTH_VER_2_1 4 +#define BLUETOOTH_VER_4_0 6 /* Reserv for core and drivers use */ #define BT_SKB_RESERVE 8 --- linux-azure-5.8-5.8.0.orig/include/net/bluetooth/hci.h +++ linux-azure-5.8-5.8.0/include/net/bluetooth/hci.h @@ -227,6 +227,17 @@ * supported. */ HCI_QUIRK_VALID_LE_STATES, + + /* When this quirk is set, then erroneous data reporting + * is ignored. This is mainly due to the fact that the HCI + * Read Default Erroneous Data Reporting command is advertised, + * but not supported; these controllers often reply with unknown + * command and tend to lock up randomly. Needing a hard reset. + * + * This quirk can be set before hci_register_dev is called or + * during the hdev->setup vendor callback. + */ + HCI_QUIRK_BROKEN_ERR_DATA_REPORTING, }; /* HCI device flags */ --- linux-azure-5.8-5.8.0.orig/include/net/bluetooth/hci_core.h +++ linux-azure-5.8-5.8.0/include/net/bluetooth/hci_core.h @@ -1387,7 +1387,7 @@ __u8 encrypt; if (conn->state == BT_CONFIG) { - if (status) + if (!status) conn->state = BT_CONNECTED; hci_connect_cfm(conn, status); @@ -1402,11 +1402,13 @@ else encrypt = 0x01; - if (conn->sec_level == BT_SECURITY_SDP) - conn->sec_level = BT_SECURITY_LOW; + if (!status) { + if (conn->sec_level == BT_SECURITY_SDP) + conn->sec_level = BT_SECURITY_LOW; - if (conn->pending_sec_level > conn->sec_level) - conn->sec_level = conn->pending_sec_level; + if (conn->pending_sec_level > conn->sec_level) + conn->sec_level = conn->pending_sec_level; + } mutex_lock(&hci_cb_list_lock); list_for_each_entry(cb, &hci_cb_list, list) { --- linux-azure-5.8-5.8.0.orig/include/net/bluetooth/l2cap.h +++ linux-azure-5.8-5.8.0/include/net/bluetooth/l2cap.h @@ -665,6 +665,8 @@ struct sk_buff *(*alloc_skb) (struct l2cap_chan *chan, unsigned long hdr_len, unsigned long len, int nb); + int (*filter) (struct l2cap_chan * chan, + struct sk_buff *skb); }; struct l2cap_conn { --- linux-azure-5.8-5.8.0.orig/include/net/bonding.h +++ linux-azure-5.8-5.8.0/include/net/bonding.h @@ -180,6 +180,11 @@ struct rtnl_link_stats64 slave_stats; }; +static inline struct slave *to_slave(struct kobject *kobj) +{ + return container_of(kobj, struct slave, kobj); +} + struct bond_up_slave { unsigned int count; struct rcu_head rcu; @@ -742,6 +747,9 @@ /* exported from bond_netlink.c */ extern struct rtnl_link_ops bond_link_ops; +/* exported from bond_sysfs_slave.c */ +extern const struct sysfs_ops slave_sysfs_ops; + static inline netdev_tx_t bond_tx_drop(struct net_device *dev, struct sk_buff *skb) { atomic_long_inc(&dev->tx_dropped); --- linux-azure-5.8-5.8.0.orig/include/net/flow.h +++ linux-azure-5.8-5.8.0/include/net/flow.h @@ -116,6 +116,7 @@ fl4->saddr = saddr; fl4->fl4_dport = dport; fl4->fl4_sport = sport; + fl4->flowi4_multipath_hash = 0; } /* Reset some input parameters after previous lookup */ --- linux-azure-5.8-5.8.0.orig/include/net/inet_connection_sock.h +++ linux-azure-5.8-5.8.0/include/net/inet_connection_sock.h @@ -83,6 +83,8 @@ * @icsk_ext_hdr_len: Network protocol overhead (IP/IPv6 options) * @icsk_ack: Delayed ACK control data * @icsk_mtup; MTU probing control data + * @icsk_probes_tstamp: Probe timestamp (cleared by non-zero window ack) + * @icsk_user_timeout: TCP_USER_TIMEOUT value */ struct inet_connection_sock { /* inet_sock has to be the first member! */ @@ -133,6 +135,7 @@ u32 probe_timestamp; } icsk_mtup; + u32 icsk_probes_tstamp; u32 icsk_user_timeout; u64 icsk_ca_priv[104 / sizeof(u64)]; @@ -316,6 +319,10 @@ int inet_csk_compat_setsockopt(struct sock *sk, int level, int optname, char __user *optval, unsigned int optlen); +/* update the fast reuse flag when adding a socket */ +void inet_csk_update_fastreuse(struct inet_bind_bucket *tb, + struct sock *sk); + struct dst_entry *inet_csk_update_pmtu(struct sock *sk, u32 mtu); #define TCP_PINGPONG_THRESH 3 --- linux-azure-5.8-5.8.0.orig/include/net/inet_ecn.h +++ linux-azure-5.8-5.8.0/include/net/inet_ecn.h @@ -107,7 +107,7 @@ if ((iph->tos & INET_ECN_MASK) != INET_ECN_ECT_0) return 0; - check += (__force u16)htons(0x100); + check += (__force u16)htons(0x1); iph->check = (__force __sum16)(check + (check>=0xFFFF)); iph->tos ^= INET_ECN_MASK; --- linux-azure-5.8-5.8.0.orig/include/net/ip.h +++ linux-azure-5.8-5.8.0/include/net/ip.h @@ -439,12 +439,18 @@ bool forwarding) { struct net *net = dev_net(dst->dev); + unsigned int mtu; if (net->ipv4.sysctl_ip_fwd_use_pmtu || ip_mtu_locked(dst) || !forwarding) return dst_mtu(dst); + /* 'forwarding = true' case should always honour route mtu */ + mtu = dst_metric_raw(dst, RTAX_MTU); + if (mtu) + return mtu; + return min(READ_ONCE(dst->dev->mtu), IP_MAX_MTU); } --- linux-azure-5.8-5.8.0.orig/include/net/ip_tunnels.h +++ linux-azure-5.8-5.8.0/include/net/ip_tunnels.h @@ -100,6 +100,28 @@ }; struct metadata_dst; +/* A fan overlay /8 (250.0.0.0/8, for example) maps to exactly one /16 + * underlay (10.88.0.0/16, for example). Multiple local addresses within + * the /16 may be used, but a particular overlay may not span + * multiple underlay subnets. + * + * We store one underlay, indexed by the overlay's high order octet. + */ +#define FAN_OVERLAY_CNT 256 + +struct ip_fan_map { + __be32 underlay; + __be32 overlay; + u16 underlay_prefix; + u16 overlay_prefix; + u32 overlay_mask; + struct list_head list; + struct rcu_head rcu; +}; + +struct ip_tunnel_fan { + struct list_head fan_maps; +}; struct ip_tunnel { struct ip_tunnel __rcu *next; @@ -137,6 +159,7 @@ #endif struct ip_tunnel_prl_entry __rcu *prl; /* potential router list */ unsigned int prl_count; /* # of entries in PRL */ + struct ip_tunnel_fan fan; unsigned int ip_tnl_net_id; struct gro_cells gro_cells; __u32 fwmark; @@ -144,6 +167,11 @@ bool ignore_df; }; +static inline int fan_has_map(const struct ip_tunnel_fan *fan) +{ + return !list_empty(&fan->fan_maps); +} + struct tnl_ptk_info { __be16 flags; __be16 proto; @@ -476,9 +504,11 @@ const void *from, int len, __be16 flags) { - memcpy(ip_tunnel_info_opts(info), from, len); info->options_len = len; - info->key.tun_flags |= flags; + if (len > 0) { + memcpy(ip_tunnel_info_opts(info), from, len); + info->key.tun_flags |= flags; + } } static inline struct ip_tunnel_info *lwt_tun_info(struct lwtunnel_state *lwtstate) @@ -524,7 +554,6 @@ __be16 flags) { info->options_len = 0; - info->key.tun_flags |= flags; } #endif /* CONFIG_INET */ --- linux-azure-5.8-5.8.0.orig/include/net/ip_vs.h +++ linux-azure-5.8-5.8.0/include/net/ip_vs.h @@ -1624,18 +1624,16 @@ } #endif /* CONFIG_IP_VS_NFCT */ -/* Really using conntrack? */ -static inline bool ip_vs_conn_uses_conntrack(struct ip_vs_conn *cp, - struct sk_buff *skb) +/* Using old conntrack that can not be redirected to another real server? */ +static inline bool ip_vs_conn_uses_old_conntrack(struct ip_vs_conn *cp, + struct sk_buff *skb) { #ifdef CONFIG_IP_VS_NFCT enum ip_conntrack_info ctinfo; struct nf_conn *ct; - if (!(cp->flags & IP_VS_CONN_F_NFCT)) - return false; ct = nf_ct_get(skb, &ctinfo); - if (ct) + if (ct && nf_ct_is_confirmed(ct)) return true; #endif return false; --- linux-azure-5.8-5.8.0.orig/include/net/neighbour.h +++ linux-azure-5.8-5.8.0/include/net/neighbour.h @@ -204,6 +204,7 @@ int (*pconstructor)(struct pneigh_entry *); void (*pdestructor)(struct pneigh_entry *); void (*proxy_redo)(struct sk_buff *skb); + int (*is_multicast)(const void *pkey); bool (*allow_add)(const struct net_device *dev, struct netlink_ext_ack *extack); char *id; --- linux-azure-5.8-5.8.0.orig/include/net/netfilter/nf_log.h +++ linux-azure-5.8-5.8.0/include/net/netfilter/nf_log.h @@ -108,6 +108,7 @@ unsigned int logflags); void nf_log_dump_sk_uid_gid(struct net *net, struct nf_log_buf *m, struct sock *sk); +void nf_log_dump_vlan(struct nf_log_buf *m, const struct sk_buff *skb); void nf_log_dump_packet_common(struct nf_log_buf *m, u_int8_t pf, unsigned int hooknum, const struct sk_buff *skb, const struct net_device *in, --- linux-azure-5.8-5.8.0.orig/include/net/netfilter/nf_tables.h +++ linux-azure-5.8-5.8.0/include/net/netfilter/nf_tables.h @@ -143,6 +143,8 @@ static inline void nft_data_copy(u32 *dst, const struct nft_data *src, unsigned int len) { + if (len % NFT_REG32_SIZE) + dst[len / NFT_REG32_SIZE] = 0; memcpy(dst, src, len); } @@ -894,6 +896,12 @@ return (struct nft_expr *)&rule->data[rule->dlen]; } +static inline bool nft_expr_more(const struct nft_rule *rule, + const struct nft_expr *expr) +{ + return expr != nft_expr_last(rule) && expr->ops; +} + static inline struct nft_userdata *nft_userdata(const struct nft_rule *rule) { return (void *)&rule->data[rule->dlen]; @@ -1498,4 +1506,10 @@ void __init nft_chain_route_init(void); void nft_chain_route_fini(void); + +void nf_tables_trans_destroy_flush_work(void); + +int nf_msecs_to_jiffies64(const struct nlattr *nla, u64 *result); +__be64 nf_jiffies64_to_msecs(u64 input); + #endif /* _NET_NF_TABLES_H */ --- linux-azure-5.8-5.8.0.orig/include/net/netfilter/nf_tables_offload.h +++ linux-azure-5.8-5.8.0/include/net/netfilter/nf_tables_offload.h @@ -37,6 +37,7 @@ struct nft_flow_key { struct flow_dissector_key_basic basic; + struct flow_dissector_key_control control; union { struct flow_dissector_key_ipv4_addrs ipv4; struct flow_dissector_key_ipv6_addrs ipv6; @@ -62,6 +63,9 @@ #define NFT_OFFLOAD_F_ACTION (1 << 0) +void nft_flow_rule_set_addr_type(struct nft_flow_rule *flow, + enum flow_dissector_key_id addr_type); + struct nft_rule; struct nft_flow_rule *nft_flow_rule_create(struct net *net, const struct nft_rule *rule); void nft_flow_rule_destroy(struct nft_flow_rule *flow); @@ -74,6 +78,9 @@ offsetof(struct nft_flow_key, __base.__field); \ (__reg)->len = __len; \ (__reg)->key = __key; \ + +#define NFT_OFFLOAD_MATCH_EXACT(__key, __base, __field, __len, __reg) \ + NFT_OFFLOAD_MATCH(__key, __base, __field, __len, __reg) \ memset(&(__reg)->mask, 0xff, (__reg)->len); int nft_chain_offload_priority(struct nft_base_chain *basechain); --- linux-azure-5.8-5.8.0.orig/include/net/netlabel.h +++ linux-azure-5.8-5.8.0/include/net/netlabel.h @@ -97,7 +97,7 @@ /* NetLabel audit information */ struct netlbl_audit { - u32 secid; + struct lsmblob lsmdata; kuid_t loginuid; unsigned int sessionid; }; @@ -166,7 +166,7 @@ * @attr.mls: MLS sensitivity label * @attr.mls.cat: MLS category bitmap * @attr.mls.lvl: MLS sensitivity level - * @attr.secid: LSM specific secid token + * @attr.lsmblob: LSM specific data * * Description: * This structure is used to pass security attributes between NetLabel and the @@ -201,7 +201,7 @@ struct netlbl_lsm_catmap *cat; u32 lvl; } mls; - u32 secid; + struct lsmblob lsmblob; } attr; }; @@ -415,7 +415,7 @@ const void *addr, const void *mask, u16 family, - u32 secid, + struct lsmblob *lsmblob, struct netlbl_audit *audit_info); int netlbl_cfg_unlbl_static_del(struct net *net, const char *dev_name, @@ -523,7 +523,7 @@ const void *addr, const void *mask, u16 family, - u32 secid, + struct lsmblob *lsmblob, struct netlbl_audit *audit_info) { return -ENOSYS; --- linux-azure-5.8-5.8.0.orig/include/net/netlink.h +++ linux-azure-5.8-5.8.0/include/net/netlink.h @@ -1936,7 +1936,8 @@ int netlink_policy_dump_start(const struct nla_policy *policy, unsigned int maxtype, unsigned long *state); -bool netlink_policy_dump_loop(unsigned long *state); +bool netlink_policy_dump_loop(unsigned long state); int netlink_policy_dump_write(struct sk_buff *skb, unsigned long state); +void netlink_policy_dump_free(unsigned long state); #endif --- linux-azure-5.8-5.8.0.orig/include/net/red.h +++ linux-azure-5.8-5.8.0/include/net/red.h @@ -168,12 +168,14 @@ v->qcount = -1; } -static inline bool red_check_params(u32 qth_min, u32 qth_max, u8 Wlog) +static inline bool red_check_params(u32 qth_min, u32 qth_max, u8 Wlog, u8 Scell_log) { if (fls(qth_min) + Wlog > 32) return false; if (fls(qth_max) + Wlog > 32) return false; + if (Scell_log >= 32) + return false; if (qth_max < qth_min) return false; return true; --- linux-azure-5.8-5.8.0.orig/include/net/sch_generic.h +++ linux-azure-5.8-5.8.0/include/net/sch_generic.h @@ -1157,7 +1157,7 @@ old = *pold; *pold = new; if (old != NULL) - qdisc_tree_flush_backlog(old); + qdisc_purge_queue(old); sch_tree_unlock(sch); return old; --- linux-azure-5.8-5.8.0.orig/include/net/scm.h +++ linux-azure-5.8-5.8.0/include/net/scm.h @@ -33,7 +33,7 @@ struct scm_fp_list *fp; /* Passed files */ struct scm_creds creds; /* Skb credentials */ #ifdef CONFIG_SECURITY_NETWORK - u32 secid; /* Passed security ID */ + struct lsmblob lsmblob; /* Passed LSM data */ #endif }; @@ -46,7 +46,7 @@ #ifdef CONFIG_SECURITY_NETWORK static __inline__ void unix_get_peersec_dgram(struct socket *sock, struct scm_cookie *scm) { - security_socket_getpeersec_dgram(sock, NULL, &scm->secid); + security_socket_getpeersec_dgram(sock, NULL, &scm->lsmblob); } #else static __inline__ void unix_get_peersec_dgram(struct socket *sock, struct scm_cookie *scm) @@ -92,16 +92,17 @@ #ifdef CONFIG_SECURITY_NETWORK static inline void scm_passec(struct socket *sock, struct msghdr *msg, struct scm_cookie *scm) { - char *secdata; - u32 seclen; + struct lsmcontext context; int err; if (test_bit(SOCK_PASSSEC, &sock->flags)) { - err = security_secid_to_secctx(scm->secid, &secdata, &seclen); + err = security_secid_to_secctx(&scm->lsmblob, &context, + LSMBLOB_DISPLAY); if (!err) { - put_cmsg(msg, SOL_SOCKET, SCM_SECURITY, seclen, secdata); - security_release_secctx(secdata, seclen); + put_cmsg(msg, SOL_SOCKET, SCM_SECURITY, + context.len, context.context); + security_release_secctx(&context); } } } --- linux-azure-5.8-5.8.0.orig/include/net/sctp/structs.h +++ linux-azure-5.8-5.8.0/include/net/sctp/structs.h @@ -226,12 +226,14 @@ data_ready_signalled:1; atomic_t pd_mode; + + /* Fields after this point will be skipped on copies, like on accept + * and peeloff operations + */ + /* Receive to here while partial delivery is in effect. */ struct sk_buff_head pd_lobby; - /* These must be the last fields, as they will skipped on copies, - * like on accept and peeloff operations - */ struct list_head auto_asconf_list; int do_auto_asconf; }; --- linux-azure-5.8-5.8.0.orig/include/net/sock.h +++ linux-azure-5.8-5.8.0/include/net/sock.h @@ -891,6 +891,8 @@ { return static_branch_unlikely(&memalloc_socks_key); } + +void __receive_sock(struct file *file); #else static inline int sk_memalloc_socks(void) @@ -898,6 +900,8 @@ return 0; } +static inline void __receive_sock(struct file *file) +{ } #endif static inline gfp_t sk_gfp_mask(const struct sock *sk, gfp_t gfp_mask) @@ -1905,10 +1909,13 @@ sk->sk_txhash = net_tx_rndhash(); } -static inline void sk_rethink_txhash(struct sock *sk) +static inline bool sk_rethink_txhash(struct sock *sk) { - if (sk->sk_txhash) + if (sk->sk_txhash) { sk_set_txhash(sk); + return true; + } + return false; } static inline struct dst_entry * @@ -1931,12 +1938,10 @@ return dst; } -static inline void dst_negative_advice(struct sock *sk) +static inline void __dst_negative_advice(struct sock *sk) { struct dst_entry *ndst, *dst = __sk_dst_get(sk); - sk_rethink_txhash(sk); - if (dst && dst->ops->negative_advice) { ndst = dst->ops->negative_advice(dst); @@ -1948,6 +1953,12 @@ } } +static inline void dst_negative_advice(struct sock *sk) +{ + sk_rethink_txhash(sk); + __dst_negative_advice(sk); +} + static inline void __sk_dst_set(struct sock *sk, struct dst_entry *dst) { --- linux-azure-5.8-5.8.0.orig/include/net/switchdev.h +++ linux-azure-5.8-5.8.0/include/net/switchdev.h @@ -41,7 +41,6 @@ SWITCHDEV_ATTR_ID_BRIDGE_MC_DISABLED, SWITCHDEV_ATTR_ID_BRIDGE_MROUTER, #if IS_ENABLED(CONFIG_BRIDGE_MRP) - SWITCHDEV_ATTR_ID_MRP_PORT_STATE, SWITCHDEV_ATTR_ID_MRP_PORT_ROLE, #endif }; @@ -60,7 +59,6 @@ bool vlan_filtering; /* BRIDGE_VLAN_FILTERING */ bool mc_disabled; /* MC_DISABLED */ #if IS_ENABLED(CONFIG_BRIDGE_MRP) - u8 mrp_port_state; /* MRP_PORT_STATE */ u8 mrp_port_role; /* MRP_PORT_ROLE */ #endif } u; --- linux-azure-5.8-5.8.0.orig/include/net/tc_act/tc_tunnel_key.h +++ linux-azure-5.8-5.8.0/include/net/tc_act/tc_tunnel_key.h @@ -56,7 +56,10 @@ { #ifdef CONFIG_NET_CLS_ACT struct tcf_tunnel_key *t = to_tunnel_key(a); - struct tcf_tunnel_key_params *params = rtnl_dereference(t->params); + struct tcf_tunnel_key_params *params; + + params = rcu_dereference_protected(t->params, + lockdep_is_held(&a->tcfa_lock)); return ¶ms->tcft_enc_metadata->u.tun_info; #else --- linux-azure-5.8-5.8.0.orig/include/net/tcp.h +++ linux-azure-5.8-5.8.0/include/net/tcp.h @@ -625,6 +625,7 @@ unsigned int tcp_sync_mss(struct sock *sk, u32 pmtu); unsigned int tcp_current_mss(struct sock *sk); +u32 tcp_clamp_probe0_to_user_timeout(const struct sock *sk, u32 when); /* Bound MSS / TSO packet size with the half of the window */ static inline int tcp_bound_to_half_wnd(struct tcp_sock *tp, int pktsize) @@ -1422,8 +1423,13 @@ */ static inline bool tcp_rmem_pressure(const struct sock *sk) { - int rcvbuf = READ_ONCE(sk->sk_rcvbuf); - int threshold = rcvbuf - (rcvbuf >> 3); + int rcvbuf, threshold; + + if (tcp_under_memory_pressure(sk)) + return true; + + rcvbuf = READ_ONCE(sk->sk_rcvbuf); + threshold = rcvbuf - (rcvbuf >> 3); return atomic_read(&sk->sk_rmem_alloc) > threshold; } @@ -1664,6 +1670,8 @@ void tcp_fastopen_ctx_destroy(struct net *net); int tcp_fastopen_reset_cipher(struct net *net, struct sock *sk, void *primary_key, void *backup_key); +int tcp_fastopen_get_cipher(struct net *net, struct inet_connection_sock *icsk, + u64 *key); void tcp_fastopen_add_skb(struct sock *sk, struct sk_buff *skb); struct sock *tcp_try_fastopen(struct sock *sk, struct sk_buff *skb, struct request_sock *req, @@ -2056,7 +2064,7 @@ void tcp_newreno_mark_lost(struct sock *sk, bool snd_una_advanced); extern s32 tcp_rack_skb_timeout(struct tcp_sock *tp, struct sk_buff *skb, u32 reo_wnd); -extern void tcp_rack_mark_lost(struct sock *sk); +extern bool tcp_rack_mark_lost(struct sock *sk); extern void tcp_rack_advance(struct tcp_sock *tp, u8 sacked, u32 end_seq, u64 xmit_time); extern void tcp_rack_reo_timeout(struct sock *sk); --- linux-azure-5.8-5.8.0.orig/include/net/tls.h +++ linux-azure-5.8-5.8.0/include/net/tls.h @@ -199,6 +199,12 @@ * to be atomic. */ TLS_TX_SYNC_SCHED = 1, + /* tls_dev_del was called for the RX side, device state was released, + * but tls_ctx->netdev might still be kept, because TX-side driver + * resources might not be released yet. Used to prevent the second + * tls_dev_del call in tls_device_down if it happens simultaneously. + */ + TLS_RX_DEV_CLOSED = 2, }; struct cipher_context { @@ -291,11 +297,20 @@ enum tls_offload_sync_type { TLS_OFFLOAD_SYNC_TYPE_DRIVER_REQ = 0, TLS_OFFLOAD_SYNC_TYPE_CORE_NEXT_HINT = 1, + TLS_OFFLOAD_SYNC_TYPE_DRIVER_REQ_ASYNC = 2, }; #define TLS_DEVICE_RESYNC_NH_START_IVAL 2 #define TLS_DEVICE_RESYNC_NH_MAX_IVAL 128 +#define TLS_DEVICE_RESYNC_ASYNC_LOGMAX 13 +struct tls_offload_resync_async { + atomic64_t req; + u16 loglen; + u16 rcd_delta; + u32 log[TLS_DEVICE_RESYNC_ASYNC_LOGMAX]; +}; + struct tls_offload_context_rx { /* sw must be the first member of tls_offload_context_rx */ struct tls_sw_context_rx sw; @@ -314,6 +329,10 @@ u32 decrypted_failed; u32 decrypted_tgt; } resync_nh; + /* TLS_OFFLOAD_SYNC_TYPE_DRIVER_REQ_ASYNC */ + struct { + struct tls_offload_resync_async *resync_async; + }; }; u8 driver_state[] __aligned(8); /* The TLS layer reserves room for driver specific state @@ -459,6 +478,18 @@ return (i == -1); } +static inline void tls_bigint_subtract(unsigned char *seq, int n) +{ + u64 rcd_sn; + __be64 *p; + + BUILD_BUG_ON(TLS_MAX_REC_SEQ_SIZE != 8); + + p = (__be64 *)seq; + rcd_sn = be64_to_cpu(*p); + *p = cpu_to_be64(rcd_sn - n); +} + static inline struct tls_context *tls_get_ctx(const struct sock *sk) { struct inet_connection_sock *icsk = inet_csk(sk); @@ -606,9 +637,9 @@ } #endif +#define RESYNC_REQ BIT(0) +#define RESYNC_REQ_ASYNC BIT(1) /* The TLS context is valid until sk_destruct is called */ -#define RESYNC_REQ (1 << 0) -#define RESYNC_REQ_FORCE (1 << 1) static inline void tls_offload_rx_resync_request(struct sock *sk, __be32 seq) { struct tls_context *tls_ctx = tls_get_ctx(sk); @@ -617,12 +648,27 @@ atomic64_set(&rx_ctx->resync_req, ((u64)ntohl(seq) << 32) | RESYNC_REQ); } -static inline void tls_offload_rx_force_resync_request(struct sock *sk) +/* Log all TLS record header TCP sequences in [seq, seq+len] */ +static inline void +tls_offload_rx_resync_async_request_start(struct sock *sk, __be32 seq, u16 len) +{ + struct tls_context *tls_ctx = tls_get_ctx(sk); + struct tls_offload_context_rx *rx_ctx = tls_offload_ctx_rx(tls_ctx); + + atomic64_set(&rx_ctx->resync_async->req, ((u64)ntohl(seq) << 32) | + (len << 16) | RESYNC_REQ | RESYNC_REQ_ASYNC); + rx_ctx->resync_async->loglen = 0; + rx_ctx->resync_async->rcd_delta = 0; +} + +static inline void +tls_offload_rx_resync_async_request_end(struct sock *sk, __be32 seq) { struct tls_context *tls_ctx = tls_get_ctx(sk); struct tls_offload_context_rx *rx_ctx = tls_offload_ctx_rx(tls_ctx); - atomic64_set(&rx_ctx->resync_req, RESYNC_REQ | RESYNC_REQ_FORCE); + atomic64_set(&rx_ctx->resync_async->req, + ((u64)ntohl(seq) << 32) | RESYNC_REQ); } static inline void --- linux-azure-5.8-5.8.0.orig/include/net/udp.h +++ linux-azure-5.8-5.8.0/include/net/udp.h @@ -171,7 +171,7 @@ int udp_gro_complete(struct sk_buff *skb, int nhoff, udp_lookup_t lookup); struct sk_buff *__udp_gso_segment(struct sk_buff *gso_skb, - netdev_features_t features); + netdev_features_t features, bool is_ipv6); static inline struct udphdr *udp_gro_udphdr(struct sk_buff *skb) { --- linux-azure-5.8-5.8.0.orig/include/net/vxlan.h +++ linux-azure-5.8-5.8.0/include/net/vxlan.h @@ -243,6 +243,8 @@ struct net *net; /* netns for packet i/o */ struct vxlan_rdst default_dst; /* default destination */ + struct ip_tunnel_fan fan; + struct timer_list age_timer; spinlock_t hash_lock[FDB_HASH_SIZE]; unsigned int addrcnt; --- linux-azure-5.8-5.8.0.orig/include/net/xfrm.h +++ linux-azure-5.8-5.8.0/include/net/xfrm.h @@ -672,11 +672,13 @@ if (audit_enabled == AUDIT_OFF) return NULL; + audit_stamp_context(audit_context()); audit_buf = audit_log_start(audit_context(), GFP_ATOMIC, AUDIT_MAC_IPSEC_EVENT); if (audit_buf == NULL) return NULL; audit_log_format(audit_buf, "op=%s", op); + audit_log_lsm(NULL, false); return audit_buf; } @@ -690,7 +692,7 @@ AUDIT_SID_UNSET; audit_log_format(audit_buf, " auid=%u ses=%u", auid, ses); - audit_log_task_context(audit_buf); + audit_log_task_context(audit_buf, NULL); } void xfrm_audit_policy_add(struct xfrm_policy *xp, int result, bool task_valid); @@ -1767,21 +1769,17 @@ static inline int xfrm_replay_clone(struct xfrm_state *x, struct xfrm_state *orig) { - x->replay_esn = kzalloc(xfrm_replay_state_esn_len(orig->replay_esn), + + x->replay_esn = kmemdup(orig->replay_esn, + xfrm_replay_state_esn_len(orig->replay_esn), GFP_KERNEL); if (!x->replay_esn) return -ENOMEM; - - x->replay_esn->bmp_len = orig->replay_esn->bmp_len; - x->replay_esn->replay_window = orig->replay_esn->replay_window; - - x->preplay_esn = kmemdup(x->replay_esn, - xfrm_replay_state_esn_len(x->replay_esn), + x->preplay_esn = kmemdup(orig->preplay_esn, + xfrm_replay_state_esn_len(orig->preplay_esn), GFP_KERNEL); - if (!x->preplay_esn) { - kfree(x->replay_esn); + if (!x->preplay_esn) return -ENOMEM; - } return 0; } --- linux-azure-5.8-5.8.0.orig/include/rdma/ib_umem.h +++ linux-azure-5.8-5.8.0/include/rdma/ib_umem.h @@ -95,10 +95,11 @@ size_t length) { return -EINVAL; } -static inline int ib_umem_find_best_pgsz(struct ib_umem *umem, - unsigned long pgsz_bitmap, - unsigned long virt) { - return -EINVAL; +static inline unsigned long ib_umem_find_best_pgsz(struct ib_umem *umem, + unsigned long pgsz_bitmap, + unsigned long virt) +{ + return 0; } #endif /* CONFIG_INFINIBAND_USER_MEM */ --- linux-azure-5.8-5.8.0.orig/include/rdma/ib_verbs.h +++ linux-azure-5.8-5.8.0/include/rdma/ib_verbs.h @@ -1489,11 +1489,6 @@ RDMA_REMOVE_DRIVER_REMOVE, /* uobj is being cleaned-up before being committed */ RDMA_REMOVE_ABORT, - /* - * uobj has been fully created, with the uobj->object set, but is being - * cleaned up before being comitted - */ - RDMA_REMOVE_ABORT_HWOBJ, }; struct ib_rdmacg_object { @@ -2465,7 +2460,7 @@ int (*create_cq)(struct ib_cq *cq, const struct ib_cq_init_attr *attr, struct ib_udata *udata); int (*modify_cq)(struct ib_cq *cq, u16 cq_count, u16 cq_period); - void (*destroy_cq)(struct ib_cq *cq, struct ib_udata *udata); + int (*destroy_cq)(struct ib_cq *cq, struct ib_udata *udata); int (*resize_cq)(struct ib_cq *cq, int cqe, struct ib_udata *udata); struct ib_mr *(*get_dma_mr)(struct ib_pd *pd, int mr_access_flags); struct ib_mr *(*reg_user_mr)(struct ib_pd *pd, u64 start, u64 length, @@ -3834,46 +3829,15 @@ return qp->device->ops.post_recv(qp, recv_wr, bad_recv_wr ? : &dummy); } -struct ib_cq *__ib_alloc_cq_user(struct ib_device *dev, void *private, - int nr_cqe, int comp_vector, - enum ib_poll_context poll_ctx, - const char *caller, struct ib_udata *udata); - -/** - * ib_alloc_cq_user: Allocate kernel/user CQ - * @dev: The IB device - * @private: Private data attached to the CQE - * @nr_cqe: Number of CQEs in the CQ - * @comp_vector: Completion vector used for the IRQs - * @poll_ctx: Context used for polling the CQ - * @udata: Valid user data or NULL for kernel objects - */ -static inline struct ib_cq *ib_alloc_cq_user(struct ib_device *dev, - void *private, int nr_cqe, - int comp_vector, - enum ib_poll_context poll_ctx, - struct ib_udata *udata) -{ - return __ib_alloc_cq_user(dev, private, nr_cqe, comp_vector, poll_ctx, - KBUILD_MODNAME, udata); -} - -/** - * ib_alloc_cq: Allocate kernel CQ - * @dev: The IB device - * @private: Private data attached to the CQE - * @nr_cqe: Number of CQEs in the CQ - * @comp_vector: Completion vector used for the IRQs - * @poll_ctx: Context used for polling the CQ - * - * NOTE: for user cq use ib_alloc_cq_user with valid udata! - */ +struct ib_cq *__ib_alloc_cq(struct ib_device *dev, void *private, int nr_cqe, + int comp_vector, enum ib_poll_context poll_ctx, + const char *caller); static inline struct ib_cq *ib_alloc_cq(struct ib_device *dev, void *private, int nr_cqe, int comp_vector, enum ib_poll_context poll_ctx) { - return ib_alloc_cq_user(dev, private, nr_cqe, comp_vector, poll_ctx, - NULL); + return __ib_alloc_cq(dev, private, nr_cqe, comp_vector, poll_ctx, + KBUILD_MODNAME); } struct ib_cq *__ib_alloc_cq_any(struct ib_device *dev, void *private, @@ -3895,26 +3859,7 @@ KBUILD_MODNAME); } -/** - * ib_free_cq_user - Free kernel/user CQ - * @cq: The CQ to free - * @udata: Valid user data or NULL for kernel objects - * - * NOTE: This function shouldn't be called on shared CQs. - */ -void ib_free_cq_user(struct ib_cq *cq, struct ib_udata *udata); - -/** - * ib_free_cq - Free kernel CQ - * @cq: The CQ to free - * - * NOTE: for user cq use ib_free_cq_user with valid udata! - */ -static inline void ib_free_cq(struct ib_cq *cq) -{ - ib_free_cq_user(cq, NULL); -} - +void ib_free_cq(struct ib_cq *cq); int ib_process_cq_direct(struct ib_cq *cq, int budget); /** @@ -3972,7 +3917,9 @@ */ static inline void ib_destroy_cq(struct ib_cq *cq) { - ib_destroy_cq_user(cq, NULL); + int ret = ib_destroy_cq_user(cq, NULL); + + WARN_ONCE(ret, "Destroy of kernel CQ shouldn't fail"); } /** @@ -4741,6 +4688,19 @@ } /** + * ibdev_to_node - return the NUMA node for a given ib_device + * @dev: device to get the NUMA node for. + */ +static inline int ibdev_to_node(struct ib_device *ibdev) +{ + struct device *parent = ibdev->dev.parent; + + if (!parent) + return NUMA_NO_NODE; + return dev_to_node(parent); +} + +/** * rdma_device_to_drv_device - Helper macro to reach back to driver's * ib_device holder structure from device pointer. * --- linux-azure-5.8-5.8.0.orig/include/scsi/libiscsi.h +++ linux-azure-5.8-5.8.0/include/scsi/libiscsi.h @@ -132,6 +132,9 @@ void *dd_data; /* driver/transport data */ }; +/* invalid scsi_task pointer */ +#define INVALID_SCSI_TASK (struct iscsi_task *)-1l + static inline int iscsi_task_has_unsol_data(struct iscsi_task *task) { return task->unsol_r2t.data_length > task->unsol_r2t.sent; --- linux-azure-5.8-5.8.0.orig/include/scsi/scsi_cmnd.h +++ linux-azure-5.8-5.8.0/include/scsi/scsi_cmnd.h @@ -165,7 +165,8 @@ size_t *offset, size_t *len); extern void scsi_kunmap_atomic_sg(void *virt); -extern blk_status_t scsi_init_io(struct scsi_cmnd *cmd); +blk_status_t scsi_alloc_sgtables(struct scsi_cmnd *cmd); +void scsi_free_sgtables(struct scsi_cmnd *cmd); #ifdef CONFIG_SCSI_DMA extern int scsi_dma_map(struct scsi_cmnd *cmd); --- linux-azure-5.8-5.8.0.orig/include/scsi/scsi_common.h +++ linux-azure-5.8-5.8.0/include/scsi/scsi_common.h @@ -25,6 +25,13 @@ scsi_varlen_cdb_length(cmnd) : COMMAND_SIZE(cmnd[0]); } +static inline unsigned char +scsi_command_control(const unsigned char *cmnd) +{ + return (cmnd[0] == VARIABLE_LENGTH_CMD) ? + cmnd[1] : cmnd[COMMAND_SIZE(cmnd[0]) - 1]; +} + /* Returns a human-readable name for the device */ extern const char *scsi_device_type(unsigned type); --- linux-azure-5.8-5.8.0.orig/include/soc/mscc/ocelot.h +++ linux-azure-5.8-5.8.0/include/soc/mscc/ocelot.h @@ -468,6 +468,7 @@ struct ocelot_ops { int (*reset)(struct ocelot *ocelot); + u16 (*wm_enc)(u16 value); }; struct ocelot_acl_block { --- linux-azure-5.8-5.8.0.orig/include/soc/nps/common.h +++ linux-azure-5.8-5.8.0/include/soc/nps/common.h @@ -45,6 +45,12 @@ #define CTOP_INST_MOV2B_FLIP_R3_B1_B2_INST 0x5B60 #define CTOP_INST_MOV2B_FLIP_R3_B1_B2_LIMM 0x00010422 +#ifndef AUX_IENABLE +#define AUX_IENABLE 0x40c +#endif + +#define CTOP_AUX_IACK (0xFFFFF800 + 0x088) + #ifndef __ASSEMBLY__ /* In order to increase compilation test coverage */ --- linux-azure-5.8-5.8.0.orig/include/sound/hda_codec.h +++ linux-azure-5.8-5.8.0/include/sound/hda_codec.h @@ -253,6 +253,7 @@ unsigned int force_pin_prefix:1; /* Add location prefix */ unsigned int link_down_at_suspend:1; /* link down at runtime suspend */ unsigned int relaxed_resume:1; /* don't resume forcibly for jack */ + unsigned int forced_resume:1; /* forced resume for jack */ unsigned int mst_no_extra_pcms:1; /* no backup PCMs for DP-MST */ #ifdef CONFIG_PM --- linux-azure-5.8-5.8.0.orig/include/sound/soc.h +++ linux-azure-5.8-5.8.0/include/sound/soc.h @@ -1205,6 +1205,8 @@ ((i) < (rtd)->num_cpus + (rtd)->num_codecs) && \ ((dai) = (rtd)->dais[i]); \ (i)++) +#define for_each_rtd_dais_rollback(rtd, i, dai) \ + for (; (--(i) >= 0) && ((dai) = (rtd)->dais[i]);) void snd_soc_close_delayed_work(struct snd_soc_pcm_runtime *rtd); @@ -1373,6 +1375,8 @@ struct snd_soc_dai *snd_soc_find_dai( const struct snd_soc_dai_link_component *dlc); +struct snd_soc_dai *snd_soc_find_dai_with_mutex( + const struct snd_soc_dai_link_component *dlc); #include --- linux-azure-5.8-5.8.0.orig/include/trace/events/afs.h +++ linux-azure-5.8-5.8.0/include/trace/events/afs.h @@ -40,6 +40,7 @@ afs_server_trace_get_new_cbi, afs_server_trace_get_probe, afs_server_trace_give_up_cb, + afs_server_trace_purging, afs_server_trace_put_call, afs_server_trace_put_cbi, afs_server_trace_put_find_rsq, @@ -270,6 +271,7 @@ EM(afs_server_trace_get_new_cbi, "GET cbi ") \ EM(afs_server_trace_get_probe, "GET probe") \ EM(afs_server_trace_give_up_cb, "giveup-cb") \ + EM(afs_server_trace_purging, "PURGE ") \ EM(afs_server_trace_put_call, "PUT call ") \ EM(afs_server_trace_put_cbi, "PUT cbi ") \ EM(afs_server_trace_put_find_rsq, "PUT f-rsq") \ @@ -884,19 +886,6 @@ __entry->vnode, __entry->off, __entry->i_size) ); -/* - * We use page->private to hold the amount of the page that we've written to, - * splitting the field into two parts. However, we need to represent a range - * 0...PAGE_SIZE inclusive, so we can't support 64K pages on a 32-bit system. - */ -#if PAGE_SIZE > 32768 -#define AFS_PRIV_MAX 0xffffffff -#define AFS_PRIV_SHIFT 32 -#else -#define AFS_PRIV_MAX 0xffff -#define AFS_PRIV_SHIFT 16 -#endif - TRACE_EVENT(afs_page_dirty, TP_PROTO(struct afs_vnode *vnode, const char *where, pgoff_t page, unsigned long priv), @@ -917,10 +906,11 @@ __entry->priv = priv; ), - TP_printk("vn=%p %lx %s %lu-%lu", + TP_printk("vn=%p %lx %s %zx-%zx%s", __entry->vnode, __entry->page, __entry->where, - __entry->priv & AFS_PRIV_MAX, - __entry->priv >> AFS_PRIV_SHIFT) + afs_page_dirty_from(__entry->priv), + afs_page_dirty_to(__entry->priv), + afs_is_page_dirty_mmapped(__entry->priv) ? " M" : "") ); TRACE_EVENT(afs_call_state, --- linux-azure-5.8-5.8.0.orig/include/trace/events/btrfs.h +++ linux-azure-5.8-5.8.0/include/trace/events/btrfs.h @@ -1159,25 +1159,27 @@ TRACE_EVENT(find_free_extent, - TP_PROTO(const struct btrfs_fs_info *fs_info, u64 num_bytes, + TP_PROTO(const struct btrfs_root *root, u64 num_bytes, u64 empty_size, u64 data), - TP_ARGS(fs_info, num_bytes, empty_size, data), + TP_ARGS(root, num_bytes, empty_size, data), TP_STRUCT__entry_btrfs( + __field( u64, root_objectid ) __field( u64, num_bytes ) __field( u64, empty_size ) __field( u64, data ) ), - TP_fast_assign_btrfs(fs_info, + TP_fast_assign_btrfs(root->fs_info, + __entry->root_objectid = root->root_key.objectid; __entry->num_bytes = num_bytes; __entry->empty_size = empty_size; __entry->data = data; ), TP_printk_btrfs("root=%llu(%s) len=%llu empty_size=%llu flags=%llu(%s)", - show_root_type(BTRFS_EXTENT_TREE_OBJECTID), + show_root_type(__entry->root_objectid), __entry->num_bytes, __entry->empty_size, __entry->data, __print_flags((unsigned long)__entry->data, "|", BTRFS_GROUP_FLAGS)) --- linux-azure-5.8-5.8.0.orig/include/trace/events/ext4.h +++ linux-azure-5.8-5.8.0/include/trace/events/ext4.h @@ -746,24 +746,29 @@ ); TRACE_EVENT(ext4_discard_preallocations, - TP_PROTO(struct inode *inode), + TP_PROTO(struct inode *inode, unsigned int len, unsigned int needed), - TP_ARGS(inode), + TP_ARGS(inode, len, needed), TP_STRUCT__entry( - __field( dev_t, dev ) - __field( ino_t, ino ) + __field( dev_t, dev ) + __field( ino_t, ino ) + __field( unsigned int, len ) + __field( unsigned int, needed ) ), TP_fast_assign( __entry->dev = inode->i_sb->s_dev; __entry->ino = inode->i_ino; + __entry->len = len; + __entry->needed = needed; ), - TP_printk("dev %d,%d ino %lu", + TP_printk("dev %d,%d ino %lu len: %u needed %u", MAJOR(__entry->dev), MINOR(__entry->dev), - (unsigned long) __entry->ino) + (unsigned long) __entry->ino, __entry->len, + __entry->needed) ); TRACE_EVENT(ext4_mb_discard_preallocations, --- linux-azure-5.8-5.8.0.orig/include/trace/events/rxrpc.h +++ linux-azure-5.8-5.8.0/include/trace/events/rxrpc.h @@ -138,11 +138,16 @@ }; enum rxrpc_rtt_tx_trace { + rxrpc_rtt_tx_cancel, rxrpc_rtt_tx_data, + rxrpc_rtt_tx_no_slot, rxrpc_rtt_tx_ping, }; enum rxrpc_rtt_rx_trace { + rxrpc_rtt_rx_cancel, + rxrpc_rtt_rx_lost, + rxrpc_rtt_rx_obsolete, rxrpc_rtt_rx_ping_response, rxrpc_rtt_rx_requested_ack, }; @@ -339,10 +344,15 @@ E_(rxrpc_recvmsg_wait, "WAIT") #define rxrpc_rtt_tx_traces \ + EM(rxrpc_rtt_tx_cancel, "CNCE") \ EM(rxrpc_rtt_tx_data, "DATA") \ + EM(rxrpc_rtt_tx_no_slot, "FULL") \ E_(rxrpc_rtt_tx_ping, "PING") #define rxrpc_rtt_rx_traces \ + EM(rxrpc_rtt_rx_cancel, "CNCL") \ + EM(rxrpc_rtt_rx_obsolete, "OBSL") \ + EM(rxrpc_rtt_rx_lost, "LOST") \ EM(rxrpc_rtt_rx_ping_response, "PONG") \ E_(rxrpc_rtt_rx_requested_ack, "RACK") @@ -1087,38 +1097,43 @@ TRACE_EVENT(rxrpc_rtt_tx, TP_PROTO(struct rxrpc_call *call, enum rxrpc_rtt_tx_trace why, - rxrpc_serial_t send_serial), + int slot, rxrpc_serial_t send_serial), - TP_ARGS(call, why, send_serial), + TP_ARGS(call, why, slot, send_serial), TP_STRUCT__entry( __field(unsigned int, call ) __field(enum rxrpc_rtt_tx_trace, why ) + __field(int, slot ) __field(rxrpc_serial_t, send_serial ) ), TP_fast_assign( __entry->call = call->debug_id; __entry->why = why; + __entry->slot = slot; __entry->send_serial = send_serial; ), - TP_printk("c=%08x %s sr=%08x", + TP_printk("c=%08x [%d] %s sr=%08x", __entry->call, + __entry->slot, __print_symbolic(__entry->why, rxrpc_rtt_tx_traces), __entry->send_serial) ); TRACE_EVENT(rxrpc_rtt_rx, TP_PROTO(struct rxrpc_call *call, enum rxrpc_rtt_rx_trace why, + int slot, rxrpc_serial_t send_serial, rxrpc_serial_t resp_serial, u32 rtt, u32 rto), - TP_ARGS(call, why, send_serial, resp_serial, rtt, rto), + TP_ARGS(call, why, slot, send_serial, resp_serial, rtt, rto), TP_STRUCT__entry( __field(unsigned int, call ) __field(enum rxrpc_rtt_rx_trace, why ) + __field(int, slot ) __field(rxrpc_serial_t, send_serial ) __field(rxrpc_serial_t, resp_serial ) __field(u32, rtt ) @@ -1128,14 +1143,16 @@ TP_fast_assign( __entry->call = call->debug_id; __entry->why = why; + __entry->slot = slot; __entry->send_serial = send_serial; __entry->resp_serial = resp_serial; __entry->rtt = rtt; __entry->rto = rto; ), - TP_printk("c=%08x %s sr=%08x rr=%08x rtt=%u rto=%u", + TP_printk("c=%08x [%d] %s sr=%08x rr=%08x rtt=%u rto=%u", __entry->call, + __entry->slot, __print_symbolic(__entry->why, rxrpc_rtt_rx_traces), __entry->send_serial, __entry->resp_serial, --- linux-azure-5.8-5.8.0.orig/include/trace/events/sunrpc.h +++ linux-azure-5.8-5.8.0/include/trace/events/sunrpc.h @@ -68,7 +68,8 @@ TP_fast_assign( __entry->task_id = task->tk_pid; - __entry->client_id = task->tk_client->cl_clid; + __entry->client_id = task->tk_client ? + task->tk_client->cl_clid : -1; __entry->head_base = xdr->head[0].iov_base; __entry->head_len = xdr->head[0].iov_len; __entry->tail_base = xdr->tail[0].iov_base; @@ -607,10 +608,10 @@ __field(size_t, tail_len) __field(unsigned int, page_len) __field(unsigned int, len) - __string(progname, - xdr->rqst->rq_task->tk_client->cl_program->name) - __string(procedure, - xdr->rqst->rq_task->tk_msg.rpc_proc->p_name) + __string(progname, xdr->rqst ? + xdr->rqst->rq_task->tk_client->cl_program->name : "unknown") + __string(procedure, xdr->rqst ? + xdr->rqst->rq_task->tk_msg.rpc_proc->p_name : "unknown") ), TP_fast_assign( --- linux-azure-5.8-5.8.0.orig/include/trace/events/target.h +++ linux-azure-5.8-5.8.0/include/trace/events/target.h @@ -141,6 +141,7 @@ __field( unsigned int, opcode ) __field( unsigned int, data_length ) __field( unsigned int, task_attribute ) + __field( unsigned char, control ) __array( unsigned char, cdb, TCM_MAX_COMMAND_SIZE ) __string( initiator, cmd->se_sess->se_node_acl->initiatorname ) ), @@ -151,6 +152,7 @@ __entry->opcode = cmd->t_task_cdb[0]; __entry->data_length = cmd->data_length; __entry->task_attribute = cmd->sam_task_attr; + __entry->control = scsi_command_control(cmd->t_task_cdb); memcpy(__entry->cdb, cmd->t_task_cdb, TCM_MAX_COMMAND_SIZE); __assign_str(initiator, cmd->se_sess->se_node_acl->initiatorname); ), @@ -160,9 +162,7 @@ __entry->tag, show_opcode_name(__entry->opcode), __entry->data_length, __print_hex(__entry->cdb, 16), show_task_attribute_name(__entry->task_attribute), - scsi_command_size(__entry->cdb) <= 16 ? - __entry->cdb[scsi_command_size(__entry->cdb) - 1] : - __entry->cdb[1] + __entry->control ) ); @@ -178,6 +178,7 @@ __field( unsigned int, opcode ) __field( unsigned int, data_length ) __field( unsigned int, task_attribute ) + __field( unsigned char, control ) __field( unsigned char, scsi_status ) __field( unsigned char, sense_length ) __array( unsigned char, cdb, TCM_MAX_COMMAND_SIZE ) @@ -191,6 +192,7 @@ __entry->opcode = cmd->t_task_cdb[0]; __entry->data_length = cmd->data_length; __entry->task_attribute = cmd->sam_task_attr; + __entry->control = scsi_command_control(cmd->t_task_cdb); __entry->scsi_status = cmd->scsi_status; __entry->sense_length = cmd->scsi_status == SAM_STAT_CHECK_CONDITION ? min(18, ((u8 *) cmd->sense_buffer)[SPC_ADD_SENSE_LEN_OFFSET] + 8) : 0; @@ -208,9 +210,7 @@ show_opcode_name(__entry->opcode), __entry->data_length, __print_hex(__entry->cdb, 16), show_task_attribute_name(__entry->task_attribute), - scsi_command_size(__entry->cdb) <= 16 ? - __entry->cdb[scsi_command_size(__entry->cdb) - 1] : - __entry->cdb[1] + __entry->control ) ); --- linux-azure-5.8-5.8.0.orig/include/trace/events/writeback.h +++ linux-azure-5.8-5.8.0/include/trace/events/writeback.h @@ -20,7 +20,6 @@ {I_CLEAR, "I_CLEAR"}, \ {I_SYNC, "I_SYNC"}, \ {I_DIRTY_TIME, "I_DIRTY_TIME"}, \ - {I_DIRTY_TIME_EXPIRED, "I_DIRTY_TIME_EXPIRED"}, \ {I_REFERENCED, "I_REFERENCED"} \ ) @@ -191,7 +190,7 @@ ), TP_fast_assign( - strncpy(__entry->name, bdi_dev_name(inode_to_bdi(inode)), 32); + strscpy_pad(__entry->name, bdi_dev_name(inode_to_bdi(inode)), 32); __entry->ino = inode->i_ino; __entry->cgroup_ino = __trace_wbc_assign_cgroup(wbc); __entry->history = history; @@ -220,7 +219,7 @@ ), TP_fast_assign( - strncpy(__entry->name, bdi_dev_name(old_wb->bdi), 32); + strscpy_pad(__entry->name, bdi_dev_name(old_wb->bdi), 32); __entry->ino = inode->i_ino; __entry->old_cgroup_ino = __trace_wb_assign_cgroup(old_wb); __entry->new_cgroup_ino = __trace_wb_assign_cgroup(new_wb); @@ -253,7 +252,7 @@ struct address_space *mapping = page_mapping(page); struct inode *inode = mapping ? mapping->host : NULL; - strncpy(__entry->name, bdi_dev_name(wb->bdi), 32); + strscpy_pad(__entry->name, bdi_dev_name(wb->bdi), 32); __entry->bdi_id = wb->bdi->id; __entry->ino = inode ? inode->i_ino : 0; __entry->memcg_id = wb->memcg_css->id; @@ -286,7 +285,7 @@ ), TP_fast_assign( - strncpy(__entry->name, bdi_dev_name(wb->bdi), 32); + strscpy_pad(__entry->name, bdi_dev_name(wb->bdi), 32); __entry->cgroup_ino = __trace_wb_assign_cgroup(wb); __entry->frn_bdi_id = frn_bdi_id; __entry->frn_memcg_id = frn_memcg_id; @@ -498,8 +497,9 @@ TRACE_EVENT(writeback_queue_io, TP_PROTO(struct bdi_writeback *wb, struct wb_writeback_work *work, + unsigned long dirtied_before, int moved), - TP_ARGS(wb, work, moved), + TP_ARGS(wb, work, dirtied_before, moved), TP_STRUCT__entry( __array(char, name, 32) __field(unsigned long, older) @@ -509,19 +509,17 @@ __field(ino_t, cgroup_ino) ), TP_fast_assign( - unsigned long *older_than_this = work->older_than_this; strscpy_pad(__entry->name, bdi_dev_name(wb->bdi), 32); - __entry->older = older_than_this ? *older_than_this : 0; - __entry->age = older_than_this ? - (jiffies - *older_than_this) * 1000 / HZ : -1; + __entry->older = dirtied_before; + __entry->age = (jiffies - dirtied_before) * 1000 / HZ; __entry->moved = moved; __entry->reason = work->reason; __entry->cgroup_ino = __trace_wb_assign_cgroup(wb); ), TP_printk("bdi %s: older=%lu age=%ld enqueue=%d reason=%s cgroup_ino=%lu", __entry->name, - __entry->older, /* older_than_this in jiffies */ - __entry->age, /* older_than_this in relative milliseconds */ + __entry->older, /* dirtied_before in jiffies */ + __entry->age, /* dirtied_before in relative milliseconds */ __entry->moved, __print_symbolic(__entry->reason, WB_WORK_REASON), (unsigned long)__entry->cgroup_ino --- linux-azure-5.8-5.8.0.orig/include/uapi/linux/android/binder.h +++ linux-azure-5.8-5.8.0/include/uapi/linux/android/binder.h @@ -248,6 +248,7 @@ TF_ROOT_OBJECT = 0x04, /* contents are the component's root object */ TF_STATUS_CODE = 0x08, /* contents are a 32-bit status code */ TF_ACCEPT_FDS = 0x10, /* allow replies with file descriptors */ + TF_CLEAR_BUF = 0x20, /* clear buffer on txn complete */ }; struct binder_transaction_data { --- linux-azure-5.8-5.8.0.orig/include/uapi/linux/audit.h +++ linux-azure-5.8-5.8.0/include/uapi/linux/audit.h @@ -139,6 +139,8 @@ #define AUDIT_MAC_UNLBL_STCDEL 1417 /* NetLabel: del a static label */ #define AUDIT_MAC_CALIPSO_ADD 1418 /* NetLabel: add CALIPSO DOI entry */ #define AUDIT_MAC_CALIPSO_DEL 1419 /* NetLabel: del CALIPSO DOI entry */ +#define AUDIT_MAC_TASK_CONTEXTS 1420 /* Multiple LSM contexts */ +#define AUDIT_MAC_OBJ_CONTEXTS 1421 /* Multiple LSM object contexts */ #define AUDIT_FIRST_KERN_ANOM_MSG 1700 #define AUDIT_LAST_KERN_ANOM_MSG 1799 --- linux-azure-5.8-5.8.0.orig/include/uapi/linux/aufs_type.h +++ linux-azure-5.8-5.8.0/include/uapi/linux/aufs_type.h @@ -0,0 +1,452 @@ +/* SPDX-License-Identifier: GPL-2.0 WITH Linux-syscall-note */ +/* + * Copyright (C) 2005-2020 Junjiro R. Okajima + * + * This program, aufs is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; either version 2 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + */ + +#ifndef __AUFS_TYPE_H__ +#define __AUFS_TYPE_H__ + +#define AUFS_NAME "aufs" + +#ifdef __KERNEL__ +/* + * define it before including all other headers. + * sched.h may use pr_* macros before defining "current", so define the + * no-current version first, and re-define later. + */ +#define pr_fmt(fmt) AUFS_NAME " %s:%d: " fmt, __func__, __LINE__ +#include +#undef pr_fmt +#define pr_fmt(fmt) \ + AUFS_NAME " %s:%d:%.*s[%d]: " fmt, __func__, __LINE__, \ + (int)sizeof(current->comm), current->comm, current->pid +#include +#else +#include +#include +#include +#endif /* __KERNEL__ */ + +#define AUFS_VERSION "5.x-rcN-20200622" + +/* todo? move this to linux-2.6.19/include/magic.h */ +#define AUFS_SUPER_MAGIC ('a' << 24 | 'u' << 16 | 'f' << 8 | 's') + +/* ---------------------------------------------------------------------- */ + +#ifdef __KERNEL__ +#ifdef CONFIG_AUFS_BRANCH_MAX_127 +typedef int8_t aufs_bindex_t; +#define AUFS_BRANCH_MAX 127 +#else +typedef int16_t aufs_bindex_t; +#ifdef CONFIG_AUFS_BRANCH_MAX_511 +#define AUFS_BRANCH_MAX 511 +#elif defined(CONFIG_AUFS_BRANCH_MAX_1023) +#define AUFS_BRANCH_MAX 1023 +#elif defined(CONFIG_AUFS_BRANCH_MAX_32767) +#define AUFS_BRANCH_MAX 32767 +#endif +#endif + +#ifndef AUFS_BRANCH_MAX +#error unknown CONFIG_AUFS_BRANCH_MAX value +#endif +#endif /* __KERNEL__ */ + +/* ---------------------------------------------------------------------- */ + +#define AUFS_FSTYPE AUFS_NAME + +#define AUFS_ROOT_INO 2 +#define AUFS_FIRST_INO 11 + +#define AUFS_WH_PFX ".wh." +#define AUFS_WH_PFX_LEN ((int)sizeof(AUFS_WH_PFX) - 1) +#define AUFS_WH_TMP_LEN 4 +/* a limit for rmdir/rename a dir and copyup */ +#define AUFS_MAX_NAMELEN (NAME_MAX \ + - AUFS_WH_PFX_LEN * 2 /* doubly whiteouted */\ + - 1 /* dot */\ + - AUFS_WH_TMP_LEN) /* hex */ +#define AUFS_XINO_FNAME "." AUFS_NAME ".xino" +#define AUFS_XINO_DEFPATH "/tmp/" AUFS_XINO_FNAME +#define AUFS_XINO_DEF_SEC 30 /* seconds */ +#define AUFS_XINO_DEF_TRUNC 45 /* percentage */ +#define AUFS_DIRWH_DEF 3 +#define AUFS_RDCACHE_DEF 10 /* seconds */ +#define AUFS_RDCACHE_MAX 3600 /* seconds */ +#define AUFS_RDBLK_DEF 512 /* bytes */ +#define AUFS_RDHASH_DEF 32 +#define AUFS_WKQ_NAME AUFS_NAME "d" +#define AUFS_MFS_DEF_SEC 30 /* seconds */ +#define AUFS_MFS_MAX_SEC 3600 /* seconds */ +#define AUFS_FHSM_CACHE_DEF_SEC 30 /* seconds */ +#define AUFS_PLINK_WARN 50 /* number of plinks in a single bucket */ + +/* pseudo-link maintenace under /proc */ +#define AUFS_PLINK_MAINT_NAME "plink_maint" +#define AUFS_PLINK_MAINT_DIR "fs/" AUFS_NAME +#define AUFS_PLINK_MAINT_PATH AUFS_PLINK_MAINT_DIR "/" AUFS_PLINK_MAINT_NAME + +/* dirren, renamed dir */ +#define AUFS_DR_INFO_PFX AUFS_WH_PFX ".dr." +#define AUFS_DR_BRHINO_NAME AUFS_WH_PFX "hino" +/* whiteouted doubly */ +#define AUFS_WH_DR_INFO_PFX AUFS_WH_PFX AUFS_DR_INFO_PFX +#define AUFS_WH_DR_BRHINO AUFS_WH_PFX AUFS_DR_BRHINO_NAME + +#define AUFS_DIROPQ_NAME AUFS_WH_PFX ".opq" /* whiteouted doubly */ +#define AUFS_WH_DIROPQ AUFS_WH_PFX AUFS_DIROPQ_NAME + +#define AUFS_BASE_NAME AUFS_WH_PFX AUFS_NAME +#define AUFS_PLINKDIR_NAME AUFS_WH_PFX "plnk" +#define AUFS_ORPHDIR_NAME AUFS_WH_PFX "orph" + +/* doubly whiteouted */ +#define AUFS_WH_BASE AUFS_WH_PFX AUFS_BASE_NAME +#define AUFS_WH_PLINKDIR AUFS_WH_PFX AUFS_PLINKDIR_NAME +#define AUFS_WH_ORPHDIR AUFS_WH_PFX AUFS_ORPHDIR_NAME + +/* branch permissions and attributes */ +#define AUFS_BRPERM_RW "rw" +#define AUFS_BRPERM_RO "ro" +#define AUFS_BRPERM_RR "rr" +#define AUFS_BRATTR_COO_REG "coo_reg" +#define AUFS_BRATTR_COO_ALL "coo_all" +#define AUFS_BRATTR_FHSM "fhsm" +#define AUFS_BRATTR_UNPIN "unpin" +#define AUFS_BRATTR_ICEX "icex" +#define AUFS_BRATTR_ICEX_SEC "icexsec" +#define AUFS_BRATTR_ICEX_SYS "icexsys" +#define AUFS_BRATTR_ICEX_TR "icextr" +#define AUFS_BRATTR_ICEX_USR "icexusr" +#define AUFS_BRATTR_ICEX_OTH "icexoth" +#define AUFS_BRRATTR_WH "wh" +#define AUFS_BRWATTR_NLWH "nolwh" +#define AUFS_BRWATTR_MOO "moo" + +#define AuBrPerm_RW 1 /* writable, hardlinkable wh */ +#define AuBrPerm_RO (1 << 1) /* readonly */ +#define AuBrPerm_RR (1 << 2) /* natively readonly */ +#define AuBrPerm_Mask (AuBrPerm_RW | AuBrPerm_RO | AuBrPerm_RR) + +#define AuBrAttr_COO_REG (1 << 3) /* copy-up on open */ +#define AuBrAttr_COO_ALL (1 << 4) +#define AuBrAttr_COO_Mask (AuBrAttr_COO_REG | AuBrAttr_COO_ALL) + +#define AuBrAttr_FHSM (1 << 5) /* file-based hsm */ +#define AuBrAttr_UNPIN (1 << 6) /* rename-able top dir of + branch. meaningless since + linux-3.18-rc1 */ + +/* ignore error in copying XATTR */ +#define AuBrAttr_ICEX_SEC (1 << 7) +#define AuBrAttr_ICEX_SYS (1 << 8) +#define AuBrAttr_ICEX_TR (1 << 9) +#define AuBrAttr_ICEX_USR (1 << 10) +#define AuBrAttr_ICEX_OTH (1 << 11) +#define AuBrAttr_ICEX (AuBrAttr_ICEX_SEC \ + | AuBrAttr_ICEX_SYS \ + | AuBrAttr_ICEX_TR \ + | AuBrAttr_ICEX_USR \ + | AuBrAttr_ICEX_OTH) + +#define AuBrRAttr_WH (1 << 12) /* whiteout-able */ +#define AuBrRAttr_Mask AuBrRAttr_WH + +#define AuBrWAttr_NoLinkWH (1 << 13) /* un-hardlinkable whiteouts */ +#define AuBrWAttr_MOO (1 << 14) /* move-up on open */ +#define AuBrWAttr_Mask (AuBrWAttr_NoLinkWH | AuBrWAttr_MOO) + +#define AuBrAttr_CMOO_Mask (AuBrAttr_COO_Mask | AuBrWAttr_MOO) + +/* #warning test userspace */ +#ifdef __KERNEL__ +#ifndef CONFIG_AUFS_FHSM +#undef AuBrAttr_FHSM +#define AuBrAttr_FHSM 0 +#endif +#ifndef CONFIG_AUFS_XATTR +#undef AuBrAttr_ICEX +#define AuBrAttr_ICEX 0 +#undef AuBrAttr_ICEX_SEC +#define AuBrAttr_ICEX_SEC 0 +#undef AuBrAttr_ICEX_SYS +#define AuBrAttr_ICEX_SYS 0 +#undef AuBrAttr_ICEX_TR +#define AuBrAttr_ICEX_TR 0 +#undef AuBrAttr_ICEX_USR +#define AuBrAttr_ICEX_USR 0 +#undef AuBrAttr_ICEX_OTH +#define AuBrAttr_ICEX_OTH 0 +#endif +#endif + +/* the longest combination */ +/* AUFS_BRATTR_ICEX and AUFS_BRATTR_ICEX_TR don't affect here */ +#define AuBrPermStrSz sizeof(AUFS_BRPERM_RW \ + "+" AUFS_BRATTR_COO_REG \ + "+" AUFS_BRATTR_FHSM \ + "+" AUFS_BRATTR_UNPIN \ + "+" AUFS_BRATTR_ICEX_SEC \ + "+" AUFS_BRATTR_ICEX_SYS \ + "+" AUFS_BRATTR_ICEX_USR \ + "+" AUFS_BRATTR_ICEX_OTH \ + "+" AUFS_BRWATTR_NLWH) + +typedef struct { + char a[AuBrPermStrSz]; +} au_br_perm_str_t; + +static inline int au_br_writable(int brperm) +{ + return brperm & AuBrPerm_RW; +} + +static inline int au_br_whable(int brperm) +{ + return brperm & (AuBrPerm_RW | AuBrRAttr_WH); +} + +static inline int au_br_wh_linkable(int brperm) +{ + return !(brperm & AuBrWAttr_NoLinkWH); +} + +static inline int au_br_cmoo(int brperm) +{ + return brperm & AuBrAttr_CMOO_Mask; +} + +static inline int au_br_fhsm(int brperm) +{ + return brperm & AuBrAttr_FHSM; +} + +/* ---------------------------------------------------------------------- */ + +/* ioctl */ +enum { + /* readdir in userspace */ + AuCtl_RDU, + AuCtl_RDU_INO, + + AuCtl_WBR_FD, /* pathconf wrapper */ + AuCtl_IBUSY, /* busy inode */ + AuCtl_MVDOWN, /* move-down */ + AuCtl_BR, /* info about branches */ + AuCtl_FHSM_FD /* connection for fhsm */ +}; + +/* borrowed from linux/include/linux/kernel.h */ +#ifndef ALIGN +#ifdef _GNU_SOURCE +#define ALIGN(x, a) __ALIGN_MASK(x, (typeof(x))(a)-1) +#else +#define ALIGN(x, a) (((x) + (a) - 1) & ~((a) - 1)) +#endif +#define __ALIGN_MASK(x, mask) (((x)+(mask))&~(mask)) +#endif + +/* borrowed from linux/include/linux/compiler-gcc3.h */ +#ifndef __aligned +#define __aligned(x) __attribute__((aligned(x))) +#endif + +#ifdef __KERNEL__ +#ifndef __packed +#define __packed __attribute__((packed)) +#endif +#endif + +struct au_rdu_cookie { + uint64_t h_pos; + int16_t bindex; + uint8_t flags; + uint8_t pad; + uint32_t generation; +} __aligned(8); + +struct au_rdu_ent { + uint64_t ino; + int16_t bindex; + uint8_t type; + uint8_t nlen; + uint8_t wh; + char name[]; +} __aligned(8); + +static inline int au_rdu_len(int nlen) +{ + /* include the terminating NULL */ + return ALIGN(sizeof(struct au_rdu_ent) + nlen + 1, + sizeof(uint64_t)); +} + +union au_rdu_ent_ul { + struct au_rdu_ent __user *e; + uint64_t ul; +}; + +enum { + AufsCtlRduV_SZ, + AufsCtlRduV_End +}; + +struct aufs_rdu { + /* input */ + union { + uint64_t sz; /* AuCtl_RDU */ + uint64_t nent; /* AuCtl_RDU_INO */ + }; + union au_rdu_ent_ul ent; + uint16_t verify[AufsCtlRduV_End]; + + /* input/output */ + uint32_t blk; + + /* output */ + union au_rdu_ent_ul tail; + /* number of entries which were added in a single call */ + uint64_t rent; + uint8_t full; + uint8_t shwh; + + struct au_rdu_cookie cookie; +} __aligned(8); + +/* ---------------------------------------------------------------------- */ + +/* dirren. the branch is identified by the filename who contains this */ +struct au_drinfo { + uint64_t ino; + union { + uint8_t oldnamelen; + uint64_t _padding; + }; + uint8_t oldname[]; +} __aligned(8); + +struct au_drinfo_fdata { + uint32_t magic; + struct au_drinfo drinfo; +} __aligned(8); + +#define AUFS_DRINFO_MAGIC_V1 ('a' << 24 | 'd' << 16 | 'r' << 8 | 0x01) +/* future */ +#define AUFS_DRINFO_MAGIC_V2 ('a' << 24 | 'd' << 16 | 'r' << 8 | 0x02) + +/* ---------------------------------------------------------------------- */ + +struct aufs_wbr_fd { + uint32_t oflags; + int16_t brid; +} __aligned(8); + +/* ---------------------------------------------------------------------- */ + +struct aufs_ibusy { + uint64_t ino, h_ino; + int16_t bindex; +} __aligned(8); + +/* ---------------------------------------------------------------------- */ + +/* error code for move-down */ +/* the actual message strings are implemented in aufs-util.git */ +enum { + EAU_MVDOWN_OPAQUE = 1, + EAU_MVDOWN_WHITEOUT, + EAU_MVDOWN_UPPER, + EAU_MVDOWN_BOTTOM, + EAU_MVDOWN_NOUPPER, + EAU_MVDOWN_NOLOWERBR, + EAU_Last +}; + +/* flags for move-down */ +#define AUFS_MVDOWN_DMSG 1 +#define AUFS_MVDOWN_OWLOWER (1 << 1) /* overwrite lower */ +#define AUFS_MVDOWN_KUPPER (1 << 2) /* keep upper */ +#define AUFS_MVDOWN_ROLOWER (1 << 3) /* do even if lower is RO */ +#define AUFS_MVDOWN_ROLOWER_R (1 << 4) /* did on lower RO */ +#define AUFS_MVDOWN_ROUPPER (1 << 5) /* do even if upper is RO */ +#define AUFS_MVDOWN_ROUPPER_R (1 << 6) /* did on upper RO */ +#define AUFS_MVDOWN_BRID_UPPER (1 << 7) /* upper brid */ +#define AUFS_MVDOWN_BRID_LOWER (1 << 8) /* lower brid */ +#define AUFS_MVDOWN_FHSM_LOWER (1 << 9) /* find fhsm attr for lower */ +#define AUFS_MVDOWN_STFS (1 << 10) /* req. stfs */ +#define AUFS_MVDOWN_STFS_FAILED (1 << 11) /* output: stfs is unusable */ +#define AUFS_MVDOWN_BOTTOM (1 << 12) /* output: no more lowers */ + +/* index for move-down */ +enum { + AUFS_MVDOWN_UPPER, + AUFS_MVDOWN_LOWER, + AUFS_MVDOWN_NARRAY +}; + +/* + * additional info of move-down + * number of free blocks and inodes. + * subset of struct kstatfs, but smaller and always 64bit. + */ +struct aufs_stfs { + uint64_t f_blocks; + uint64_t f_bavail; + uint64_t f_files; + uint64_t f_ffree; +}; + +struct aufs_stbr { + int16_t brid; /* optional input */ + int16_t bindex; /* output */ + struct aufs_stfs stfs; /* output when AUFS_MVDOWN_STFS set */ +} __aligned(8); + +struct aufs_mvdown { + uint32_t flags; /* input/output */ + struct aufs_stbr stbr[AUFS_MVDOWN_NARRAY]; /* input/output */ + int8_t au_errno; /* output */ +} __aligned(8); + +/* ---------------------------------------------------------------------- */ + +union aufs_brinfo { + /* PATH_MAX may differ between kernel-space and user-space */ + char _spacer[4096]; + struct { + int16_t id; + int perm; + char path[]; + }; +} __aligned(8); + +/* ---------------------------------------------------------------------- */ + +#define AuCtlType 'A' +#define AUFS_CTL_RDU _IOWR(AuCtlType, AuCtl_RDU, struct aufs_rdu) +#define AUFS_CTL_RDU_INO _IOWR(AuCtlType, AuCtl_RDU_INO, struct aufs_rdu) +#define AUFS_CTL_WBR_FD _IOW(AuCtlType, AuCtl_WBR_FD, \ + struct aufs_wbr_fd) +#define AUFS_CTL_IBUSY _IOWR(AuCtlType, AuCtl_IBUSY, struct aufs_ibusy) +#define AUFS_CTL_MVDOWN _IOWR(AuCtlType, AuCtl_MVDOWN, \ + struct aufs_mvdown) +#define AUFS_CTL_BRINFO _IOW(AuCtlType, AuCtl_BR, union aufs_brinfo) +#define AUFS_CTL_FHSM_FD _IOW(AuCtlType, AuCtl_FHSM_FD, int) + +#endif /* __AUFS_TYPE_H__ */ --- linux-azure-5.8-5.8.0.orig/include/uapi/linux/blkzoned.h +++ linux-azure-5.8-5.8.0/include/uapi/linux/blkzoned.h @@ -74,6 +74,15 @@ }; /** + * enum blk_zone_report_flags - Feature flags of reported zone descriptors. + * + * @BLK_ZONE_REP_CAPACITY: Zone descriptor has capacity field. + */ +enum blk_zone_report_flags { + BLK_ZONE_REP_CAPACITY = (1 << 0), +}; + +/** * struct blk_zone - Zone descriptor for BLKREPORTZONE ioctl. * * @start: Zone start in 512 B sector units @@ -99,7 +108,9 @@ __u8 cond; /* Zone condition */ __u8 non_seq; /* Non-sequential write resources active */ __u8 reset; /* Reset write pointer recommended */ - __u8 reserved[36]; + __u8 resv[4]; + __u64 capacity; /* Zone capacity in number of sectors */ + __u8 reserved[24]; }; /** @@ -115,7 +126,7 @@ struct blk_zone_report { __u64 sector; __u32 nr_zones; - __u8 reserved[4]; + __u32 flags; struct blk_zone zones[0]; }; --- linux-azure-5.8-5.8.0.orig/include/uapi/linux/bpf.h +++ linux-azure-5.8-5.8.0/include/uapi/linux/bpf.h @@ -1416,8 +1416,8 @@ * Return * The return value depends on the result of the test, and can be: * - * * 0, if the *skb* task belongs to the cgroup2. - * * 1, if the *skb* task does not belong to the cgroup2. + * * 0, if current task belongs to the cgroup2. + * * 1, if current task does not belong to the cgroup2. * * A negative error code, if an error occurred. * * int bpf_skb_change_tail(struct sk_buff *skb, u32 len, u64 flags) @@ -3168,7 +3168,7 @@ * Return * The id is returned or 0 in case the id could not be retrieved. * - * int bpf_ringbuf_output(void *ringbuf, void *data, u64 size, u64 flags) + * long bpf_ringbuf_output(void *ringbuf, void *data, u64 size, u64 flags) * Description * Copy *size* bytes from *data* into a ring buffer *ringbuf*. * If **BPF_RB_NO_WAKEUP** is specified in *flags*, no notification --- linux-azure-5.8-5.8.0.orig/include/uapi/linux/btrfs.h +++ linux-azure-5.8-5.8.0/include/uapi/linux/btrfs.h @@ -243,6 +243,13 @@ __u8 path[BTRFS_DEVICE_PATH_NAME_MAX]; /* out */ }; +/* + * Retrieve information about the filesystem + */ + +/* Request information about checksum type and size */ +#define BTRFS_FS_INFO_FLAG_CSUM_INFO (1 << 0) + struct btrfs_ioctl_fs_info_args { __u64 max_id; /* out */ __u64 num_devices; /* out */ @@ -250,8 +257,11 @@ __u32 nodesize; /* out */ __u32 sectorsize; /* out */ __u32 clone_alignment; /* out */ - __u32 reserved32; - __u64 reserved[122]; /* pad to 1k */ + /* See BTRFS_FS_INFO_FLAG_* */ + __u16 csum_type; /* out */ + __u16 csum_size; /* out */ + __u64 flags; /* in/out */ + __u8 reserved[968]; /* pad to 1k */ }; /* --- linux-azure-5.8-5.8.0.orig/include/uapi/linux/btrfs_tree.h +++ linux-azure-5.8-5.8.0/include/uapi/linux/btrfs_tree.h @@ -4,6 +4,11 @@ #include #include +#ifdef __KERNEL__ +#include +#else +#include +#endif /* * This header contains the structure definitions and constants used @@ -645,6 +650,15 @@ } __attribute__ ((__packed__)); /* + * Btrfs root item used to be smaller than current size. The old format ends + * at where member generation_v2 is. + */ +static inline __u32 btrfs_legacy_root_item_size(void) +{ + return offsetof(struct btrfs_root_item, generation_v2); +} + +/* * this is used for both forward and backward root refs */ struct btrfs_root_ref { --- linux-azure-5.8-5.8.0.orig/include/uapi/linux/const.h +++ linux-azure-5.8-5.8.0/include/uapi/linux/const.h @@ -28,4 +28,9 @@ #define _BITUL(x) (_UL(1) << (x)) #define _BITULL(x) (_ULL(1) << (x)) +#define __ALIGN_KERNEL(x, a) __ALIGN_KERNEL_MASK(x, (typeof(x))(a) - 1) +#define __ALIGN_KERNEL_MASK(x, mask) (((x) + (mask)) & ~(mask)) + +#define __KERNEL_DIV_ROUND_UP(n, d) (((n) + (d) - 1) / (d)) + #endif /* _UAPI_LINUX_CONST_H */ --- linux-azure-5.8-5.8.0.orig/include/uapi/linux/ethtool.h +++ linux-azure-5.8-5.8.0/include/uapi/linux/ethtool.h @@ -14,7 +14,7 @@ #ifndef _UAPI_LINUX_ETHTOOL_H #define _UAPI_LINUX_ETHTOOL_H -#include +#include #include #include --- linux-azure-5.8-5.8.0.orig/include/uapi/linux/fscrypt.h +++ linux-azure-5.8-5.8.0/include/uapi/linux/fscrypt.h @@ -20,7 +20,6 @@ #define FSCRYPT_POLICY_FLAG_DIRECT_KEY 0x04 #define FSCRYPT_POLICY_FLAG_IV_INO_LBLK_64 0x08 #define FSCRYPT_POLICY_FLAG_IV_INO_LBLK_32 0x10 -#define FSCRYPT_POLICY_FLAGS_VALID 0x1F /* Encryption algorithms */ #define FSCRYPT_MODE_AES_256_XTS 1 @@ -28,7 +27,7 @@ #define FSCRYPT_MODE_AES_128_CBC 5 #define FSCRYPT_MODE_AES_128_CTS 6 #define FSCRYPT_MODE_ADIANTUM 9 -#define __FSCRYPT_MODE_MAX 9 +/* If adding a mode number > 9, update FSCRYPT_MODE_MAX in fscrypt_private.h */ /* * Legacy policy version; ad-hoc KDF and no key verification. @@ -177,7 +176,7 @@ #define FS_POLICY_FLAGS_PAD_32 FSCRYPT_POLICY_FLAGS_PAD_32 #define FS_POLICY_FLAGS_PAD_MASK FSCRYPT_POLICY_FLAGS_PAD_MASK #define FS_POLICY_FLAG_DIRECT_KEY FSCRYPT_POLICY_FLAG_DIRECT_KEY -#define FS_POLICY_FLAGS_VALID FSCRYPT_POLICY_FLAGS_VALID +#define FS_POLICY_FLAGS_VALID 0x07 /* contains old flags only */ #define FS_ENCRYPTION_MODE_INVALID 0 /* never used */ #define FS_ENCRYPTION_MODE_AES_256_XTS FSCRYPT_MODE_AES_256_XTS #define FS_ENCRYPTION_MODE_AES_256_GCM 2 /* never used */ --- linux-azure-5.8-5.8.0.orig/include/uapi/linux/icmpv6.h +++ linux-azure-5.8-5.8.0/include/uapi/linux/icmpv6.h @@ -137,6 +137,7 @@ #define ICMPV6_HDR_FIELD 0 #define ICMPV6_UNK_NEXTHDR 1 #define ICMPV6_UNK_OPTION 2 +#define ICMPV6_HDR_INCOMP 3 /* * constants for (set|get)sockopt --- linux-azure-5.8-5.8.0.orig/include/uapi/linux/if_alg.h +++ linux-azure-5.8-5.8.0/include/uapi/linux/if_alg.h @@ -24,6 +24,22 @@ __u8 salg_name[64]; }; +/* + * Linux v4.12 and later removed the 64-byte limit on salg_name[]; it's now an + * arbitrary-length field. We had to keep the original struct above for source + * compatibility with existing userspace programs, though. Use the new struct + * below if support for very long algorithm names is needed. To do this, + * allocate 'sizeof(struct sockaddr_alg_new) + strlen(algname) + 1' bytes, and + * copy algname (including the null terminator) into salg_name. + */ +struct sockaddr_alg_new { + __u16 salg_family; + __u8 salg_type[14]; + __u32 salg_feat; + __u32 salg_mask; + __u8 salg_name[]; +}; + struct af_alg_iv { __u32 ivlen; __u8 iv[0]; --- linux-azure-5.8-5.8.0.orig/include/uapi/linux/if_link.h +++ linux-azure-5.8-5.8.0/include/uapi/linux/if_link.h @@ -548,6 +548,7 @@ IFLA_VXLAN_GPE, IFLA_VXLAN_TTL_INHERIT, IFLA_VXLAN_DF, + IFLA_VXLAN_FAN_MAP = 33, __IFLA_VXLAN_MAX }; #define IFLA_VXLAN_MAX (__IFLA_VXLAN_MAX - 1) --- linux-azure-5.8-5.8.0.orig/include/uapi/linux/if_tunnel.h +++ linux-azure-5.8-5.8.0/include/uapi/linux/if_tunnel.h @@ -77,6 +77,10 @@ IFLA_IPTUN_ENCAP_DPORT, IFLA_IPTUN_COLLECT_METADATA, IFLA_IPTUN_FWMARK, + + __IFLA_IPTUN_VENDOR_BREAK, /* Ensure new entries do not hit the below. */ + IFLA_IPTUN_FAN_MAP = 33, + __IFLA_IPTUN_MAX, }; #define IFLA_IPTUN_MAX (__IFLA_IPTUN_MAX - 1) @@ -180,4 +184,19 @@ #define TUNNEL_OPTIONS_PRESENT \ (TUNNEL_GENEVE_OPT | TUNNEL_VXLAN_OPT | TUNNEL_ERSPAN_OPT) +enum { + IFLA_FAN_UNSPEC, + IFLA_FAN_MAPPING, + __IFLA_FAN_MAX, +}; + +#define IFLA_FAN_MAX (__IFLA_FAN_MAX - 1) + +struct ifla_fan_map { + __be32 underlay; + __be32 overlay; + __u16 underlay_prefix; + __u16 overlay_prefix; +}; + #endif /* _UAPI_IF_TUNNEL_H_ */ --- linux-azure-5.8-5.8.0.orig/include/uapi/linux/kd.h +++ linux-azure-5.8-5.8.0/include/uapi/linux/kd.h @@ -46,6 +46,8 @@ #define KD_GRAPHICS 0x01 #define KD_TEXT0 0x02 /* obsolete */ #define KD_TEXT1 0x03 /* obsolete */ +#define KD_TRANSPARENT 0x04 + #define KDGETMODE 0x4B3B /* get current mode */ #define KDMAPDISP 0x4B3C /* map display into address space */ --- linux-azure-5.8-5.8.0.orig/include/uapi/linux/kernel.h +++ linux-azure-5.8-5.8.0/include/uapi/linux/kernel.h @@ -3,13 +3,6 @@ #define _UAPI_LINUX_KERNEL_H #include - -/* - * 'kernel.h' contains some often-used function prototypes etc - */ -#define __ALIGN_KERNEL(x, a) __ALIGN_KERNEL_MASK(x, (typeof(x))(a) - 1) -#define __ALIGN_KERNEL_MASK(x, mask) (((x) + (mask)) & ~(mask)) - -#define __KERNEL_DIV_ROUND_UP(n, d) (((n) + (d) - 1) / (d)) +#include #endif /* _UAPI_LINUX_KERNEL_H */ --- linux-azure-5.8-5.8.0.orig/include/uapi/linux/kvm.h +++ linux-azure-5.8-5.8.0/include/uapi/linux/kvm.h @@ -789,9 +789,10 @@ #define KVM_VM_PPC_HV 1 #define KVM_VM_PPC_PR 2 -/* on MIPS, 0 forces trap & emulate, 1 forces VZ ASE */ -#define KVM_VM_MIPS_TE 0 +/* on MIPS, 0 indicates auto, 1 forces VZ ASE, 2 forces trap & emulate */ +#define KVM_VM_MIPS_AUTO 0 #define KVM_VM_MIPS_VZ 1 +#define KVM_VM_MIPS_TE 2 #define KVM_S390_SIE_PAGE_OFFSET 1 --- linux-azure-5.8-5.8.0.orig/include/uapi/linux/lightnvm.h +++ linux-azure-5.8-5.8.0/include/uapi/linux/lightnvm.h @@ -21,7 +21,7 @@ #define _UAPI_LINUX_LIGHTNVM_H #ifdef __KERNEL__ -#include +#include #include #else /* __KERNEL__ */ #include --- linux-azure-5.8-5.8.0.orig/include/uapi/linux/magic.h +++ linux-azure-5.8-5.8.0/include/uapi/linux/magic.h @@ -98,4 +98,6 @@ #define Z3FOLD_MAGIC 0x33 #define PPC_CMM_MAGIC 0xc7571590 +#define SHIFTFS_MAGIC 0x6a656a62 + #endif /* __LINUX_MAGIC_H__ */ --- linux-azure-5.8-5.8.0.orig/include/uapi/linux/mroute6.h +++ linux-azure-5.8-5.8.0/include/uapi/linux/mroute6.h @@ -2,7 +2,7 @@ #ifndef _UAPI__LINUX_MROUTE6_H #define _UAPI__LINUX_MROUTE6_H -#include +#include #include #include #include /* For struct sockaddr_in6. */ --- linux-azure-5.8-5.8.0.orig/include/uapi/linux/ndctl.h +++ linux-azure-5.8-5.8.0/include/uapi/linux/ndctl.h @@ -245,6 +245,10 @@ #define NVDIMM_FAMILY_MSFT 3 #define NVDIMM_FAMILY_HYPERV 4 #define NVDIMM_FAMILY_PAPR 5 +#define NVDIMM_FAMILY_MAX NVDIMM_FAMILY_PAPR + +#define NVDIMM_BUS_FAMILY_NFIT 0 +#define NVDIMM_BUS_FAMILY_MAX NVDIMM_BUS_FAMILY_NFIT #define ND_IOCTL_CALL _IOWR(ND_IOCTL, ND_CMD_CALL,\ struct nd_cmd_pkg) --- linux-azure-5.8-5.8.0.orig/include/uapi/linux/netfilter/nf_tables.h +++ linux-azure-5.8-5.8.0/include/uapi/linux/netfilter/nf_tables.h @@ -133,7 +133,7 @@ * @NFTA_LIST_ELEM: list element (NLA_NESTED) */ enum nft_list_attributes { - NFTA_LIST_UNPEC, + NFTA_LIST_UNSPEC, NFTA_LIST_ELEM, __NFTA_LIST_MAX }; --- linux-azure-5.8-5.8.0.orig/include/uapi/linux/netfilter/x_tables.h +++ linux-azure-5.8-5.8.0/include/uapi/linux/netfilter/x_tables.h @@ -1,7 +1,7 @@ /* SPDX-License-Identifier: GPL-2.0 WITH Linux-syscall-note */ #ifndef _UAPI_X_TABLES_H #define _UAPI_X_TABLES_H -#include +#include #include #define XT_FUNCTION_MAXNAMELEN 30 --- linux-azure-5.8-5.8.0.orig/include/uapi/linux/netlink.h +++ linux-azure-5.8-5.8.0/include/uapi/linux/netlink.h @@ -2,7 +2,7 @@ #ifndef _UAPI__LINUX_NETLINK_H #define _UAPI__LINUX_NETLINK_H -#include +#include #include /* for __kernel_sa_family_t */ #include --- linux-azure-5.8-5.8.0.orig/include/uapi/linux/nfs4.h +++ linux-azure-5.8-5.8.0/include/uapi/linux/nfs4.h @@ -136,6 +136,8 @@ #define EXCHGID4_FLAG_UPD_CONFIRMED_REC_A 0x40000000 #define EXCHGID4_FLAG_CONFIRMED_R 0x80000000 + +#define EXCHGID4_FLAG_SUPP_FENCE_OPS 0x00000004 /* * Since the validity of these bits depends on whether * they're set in the argument or response, have separate @@ -143,6 +145,7 @@ */ #define EXCHGID4_FLAG_MASK_A 0x40070103 #define EXCHGID4_FLAG_MASK_R 0x80070103 +#define EXCHGID4_2_FLAG_MASK_R 0x80070107 #define SEQ4_STATUS_CB_PATH_DOWN 0x00000001 #define SEQ4_STATUS_CB_GSS_CONTEXTS_EXPIRING 0x00000002 --- linux-azure-5.8-5.8.0.orig/include/uapi/linux/openvswitch.h +++ linux-azure-5.8-5.8.0/include/uapi/linux/openvswitch.h @@ -1057,4 +1057,6 @@ __OVS_DEC_TTL_ATTR_MAX }; +#define OVS_DEC_TTL_ATTR_MAX (__OVS_DEC_TTL_ATTR_MAX - 1) + #endif /* _LINUX_OPENVSWITCH_H */ --- linux-azure-5.8-5.8.0.orig/include/uapi/linux/pci_regs.h +++ linux-azure-5.8-5.8.0/include/uapi/linux/pci_regs.h @@ -76,6 +76,7 @@ #define PCI_CACHE_LINE_SIZE 0x0c /* 8 bits */ #define PCI_LATENCY_TIMER 0x0d /* 8 bits */ #define PCI_HEADER_TYPE 0x0e /* 8 bits */ +#define PCI_HEADER_TYPE_MASK 0x7f #define PCI_HEADER_TYPE_NORMAL 0 #define PCI_HEADER_TYPE_BRIDGE 1 #define PCI_HEADER_TYPE_CARDBUS 2 --- linux-azure-5.8-5.8.0.orig/include/uapi/linux/perf_event.h +++ linux-azure-5.8-5.8.0/include/uapi/linux/perf_event.h @@ -1155,7 +1155,7 @@ #define PERF_MEM_SNOOPX_FWD 0x01 /* forward */ /* 1 free */ -#define PERF_MEM_SNOOPX_SHIFT 37 +#define PERF_MEM_SNOOPX_SHIFT 38 /* locked instruction */ #define PERF_MEM_LOCK_NA 0x01 /* not available */ --- linux-azure-5.8-5.8.0.orig/include/uapi/linux/ptrace.h +++ linux-azure-5.8-5.8.0/include/uapi/linux/ptrace.h @@ -81,7 +81,8 @@ struct ptrace_syscall_info { __u8 op; /* PTRACE_SYSCALL_INFO_* */ - __u32 arch __attribute__((__aligned__(sizeof(__u32)))); + __u8 pad[3]; + __u32 arch; __u64 instruction_pointer; __u64 stack_pointer; union { --- linux-azure-5.8-5.8.0.orig/include/uapi/linux/rpl.h +++ linux-azure-5.8-5.8.0/include/uapi/linux/rpl.h @@ -28,10 +28,10 @@ pad:4, reserved1:16; #elif defined(__BIG_ENDIAN_BITFIELD) - __u32 reserved:20, + __u32 cmpri:4, + cmpre:4, pad:4, - cmpri:4, - cmpre:4; + reserved:20; #else #error "Please fix " #endif --- linux-azure-5.8-5.8.0.orig/include/uapi/linux/seccomp.h +++ linux-azure-5.8-5.8.0/include/uapi/linux/seccomp.h @@ -123,5 +123,6 @@ #define SECCOMP_IOCTL_NOTIF_RECV SECCOMP_IOWR(0, struct seccomp_notif) #define SECCOMP_IOCTL_NOTIF_SEND SECCOMP_IOWR(1, \ struct seccomp_notif_resp) -#define SECCOMP_IOCTL_NOTIF_ID_VALID SECCOMP_IOR(2, __u64) +#define SECCOMP_IOCTL_NOTIF_ID_VALID SECCOMP_IOW(2, __u64) + #endif /* _UAPI_LINUX_SECCOMP_H */ --- linux-azure-5.8-5.8.0.orig/include/uapi/linux/stat.h +++ linux-azure-5.8-5.8.0/include/uapi/linux/stat.h @@ -171,9 +171,12 @@ * be of use to ordinary userspace programs such as GUIs or ls rather than * specialised tools. * - * Note that the flags marked [I] correspond to generic FS_IOC_FLAGS + * Note that the flags marked [I] correspond to the FS_IOC_SETFLAGS flags * semantically. Where possible, the numerical value is picked to correspond - * also. + * also. Note that the DAX attribute indicates that the file is in the CPU + * direct access state. It does not correspond to the per-inode flag that + * some filesystems support. + * */ #define STATX_ATTR_COMPRESSED 0x00000004 /* [I] File is compressed by the fs */ #define STATX_ATTR_IMMUTABLE 0x00000010 /* [I] File is marked immutable */ @@ -183,7 +186,7 @@ #define STATX_ATTR_AUTOMOUNT 0x00001000 /* Dir: Automount trigger */ #define STATX_ATTR_MOUNT_ROOT 0x00002000 /* Root of a mount */ #define STATX_ATTR_VERITY 0x00100000 /* [I] Verity protected file */ -#define STATX_ATTR_DAX 0x00002000 /* [I] File is DAX */ +#define STATX_ATTR_DAX 0x00200000 /* File is currently in DAX state */ #endif /* _UAPI_LINUX_STAT_H */ --- linux-azure-5.8-5.8.0.orig/include/uapi/linux/sysctl.h +++ linux-azure-5.8-5.8.0/include/uapi/linux/sysctl.h @@ -23,7 +23,7 @@ #ifndef _UAPI_LINUX_SYSCTL_H #define _UAPI_LINUX_SYSCTL_H -#include +#include #include #include @@ -153,7 +153,7 @@ KERN_NMI_WATCHDOG=75, /* int: enable/disable nmi watchdog */ KERN_PANIC_ON_NMI=76, /* int: whether we will panic on an unrecovered */ KERN_PANIC_ON_WARN=77, /* int: call panic() in WARN() functions */ - KERN_PANIC_PRINT=78, /* ulong: bitmask to print system info on panic */ + KERN_PANIC_PRINT=78, /* unsigned long: bitmask to print system info on panic */ }; --- linux-azure-5.8-5.8.0.orig/include/uapi/linux/v4l2-subdev.h +++ linux-azure-5.8-5.8.0/include/uapi/linux/v4l2-subdev.h @@ -168,7 +168,7 @@ }; /* The v4l2 sub-device video device node is registered in read-only mode. */ -#define V4L2_SUBDEV_CAP_RO_SUBDEV BIT(0) +#define V4L2_SUBDEV_CAP_RO_SUBDEV 0x00000001 /* Backwards compatibility define --- to be removed */ #define v4l2_subdev_edid v4l2_edid --- linux-azure-5.8-5.8.0.orig/include/uapi/linux/vfio.h +++ linux-azure-5.8-5.8.0/include/uapi/linux/vfio.h @@ -1039,6 +1039,21 @@ __u64 max_dirty_bitmap_size; /* in bytes */ }; +/* + * The DMA available capability allows to report the current number of + * simultaneously outstanding DMA mappings that are allowed. + * + * The structure below defines version 1 of this capability. + * + * avail: specifies the current number of outstanding DMA mappings allowed. + */ +#define VFIO_IOMMU_TYPE1_INFO_DMA_AVAIL 3 + +struct vfio_iommu_type1_info_dma_avail { + struct vfio_info_cap_header header; + __u32 avail; +}; + #define VFIO_IOMMU_GET_INFO _IO(VFIO_TYPE, VFIO_BASE + 12) /** --- linux-azure-5.8-5.8.0.orig/include/uapi/linux/videodev2.h +++ linux-azure-5.8-5.8.0/include/uapi/linux/videodev2.h @@ -371,9 +371,9 @@ enum v4l2_quantization { /* - * The default for R'G'B' quantization is always full range, except - * for the BT2020 colorspace. For Y'CbCr the quantization is always - * limited range, except for COLORSPACE_JPEG: this is full range. + * The default for R'G'B' quantization is always full range. + * For Y'CbCr the quantization is always limited range, except + * for COLORSPACE_JPEG: this is full range. */ V4L2_QUANTIZATION_DEFAULT = 0, V4L2_QUANTIZATION_FULL_RANGE = 1, @@ -382,14 +382,13 @@ /* * Determine how QUANTIZATION_DEFAULT should map to a proper quantization. - * This depends on whether the image is RGB or not, the colorspace and the - * Y'CbCr encoding. + * This depends on whether the image is RGB or not, the colorspace. + * The Y'CbCr encoding is not used anymore, but is still there for backwards + * compatibility. */ #define V4L2_MAP_QUANTIZATION_DEFAULT(is_rgb_or_hsv, colsp, ycbcr_enc) \ - (((is_rgb_or_hsv) && (colsp) == V4L2_COLORSPACE_BT2020) ? \ - V4L2_QUANTIZATION_LIM_RANGE : \ - (((is_rgb_or_hsv) || (colsp) == V4L2_COLORSPACE_JPEG) ? \ - V4L2_QUANTIZATION_FULL_RANGE : V4L2_QUANTIZATION_LIM_RANGE)) + (((is_rgb_or_hsv) || (colsp) == V4L2_COLORSPACE_JPEG) ? \ + V4L2_QUANTIZATION_FULL_RANGE : V4L2_QUANTIZATION_LIM_RANGE) /* * Deprecated names for opRGB colorspace (IEC 61966-2-5) --- linux-azure-5.8-5.8.0.orig/include/uapi/rdma/efa-abi.h +++ linux-azure-5.8-5.8.0/include/uapi/rdma/efa-abi.h @@ -1,6 +1,6 @@ /* SPDX-License-Identifier: ((GPL-2.0 WITH Linux-syscall-note) OR BSD-2-Clause) */ /* - * Copyright 2018-2019 Amazon.com, Inc. or its affiliates. All rights reserved. + * Copyright 2018-2020 Amazon.com, Inc. or its affiliates. All rights reserved. */ #ifndef EFA_ABI_USER_H @@ -20,6 +20,16 @@ * hex bit offset of the field. */ +enum { + EFA_ALLOC_UCONTEXT_CMD_COMP_TX_BATCH = 1 << 0, + EFA_ALLOC_UCONTEXT_CMD_COMP_MIN_SQ_WR = 1 << 1, +}; + +struct efa_ibv_alloc_ucontext_cmd { + __u32 comp_mask; + __u8 reserved_20[4]; +}; + enum efa_ibv_user_cmds_supp_udata { EFA_USER_CMDS_SUPP_UDATA_QUERY_DEVICE = 1 << 0, EFA_USER_CMDS_SUPP_UDATA_CREATE_AH = 1 << 1, @@ -31,6 +41,9 @@ __u16 sub_cqs_per_cq; __u16 inline_buf_size; __u32 max_llq_size; /* bytes */ + __u16 max_tx_batch; /* units of 64 bytes */ + __u16 min_sq_wr; + __u8 reserved_a0[4]; }; struct efa_ibv_alloc_pd_resp { --- linux-azure-5.8-5.8.0.orig/include/uapi/rdma/qedr-abi.h +++ linux-azure-5.8-5.8.0/include/uapi/rdma/qedr-abi.h @@ -39,8 +39,9 @@ /* user kernel communication data structures. */ enum qedr_alloc_ucontext_flags { - QEDR_ALLOC_UCTX_RESERVED = 1 << 0, - QEDR_ALLOC_UCTX_DB_REC = 1 << 1 + QEDR_ALLOC_UCTX_EDPM_MODE = 1 << 0, + QEDR_ALLOC_UCTX_DB_REC = 1 << 1, + QEDR_SUPPORT_DPM_SIZES = 1 << 2, }; struct qedr_alloc_ucontext_req { @@ -50,13 +51,14 @@ #define QEDR_LDPM_MAX_SIZE (8192) #define QEDR_EDPM_TRANS_SIZE (64) +#define QEDR_EDPM_MAX_SIZE (ROCE_REQ_MAX_INLINE_DATA_SIZE) enum qedr_rdma_dpm_type { QEDR_DPM_TYPE_NONE = 0, QEDR_DPM_TYPE_ROCE_ENHANCED = 1 << 0, QEDR_DPM_TYPE_ROCE_LEGACY = 1 << 1, QEDR_DPM_TYPE_IWARP_LEGACY = 1 << 2, - QEDR_DPM_TYPE_RESERVED = 1 << 3, + QEDR_DPM_TYPE_ROCE_EDPM_MODE = 1 << 3, QEDR_DPM_SIZES_SET = 1 << 4, }; @@ -77,6 +79,8 @@ __u16 ldpm_limit_size; __u8 edpm_trans_size; __u8 reserved; + __u16 edpm_limit_size; + __u8 padding[6]; }; struct qedr_alloc_pd_ureq { --- linux-azure-5.8-5.8.0.orig/include/uapi/rdma/vmw_pvrdma-abi.h +++ linux-azure-5.8-5.8.0/include/uapi/rdma/vmw_pvrdma-abi.h @@ -133,6 +133,13 @@ PVRDMA_WC_FLAGS_MAX = PVRDMA_WC_WITH_NETWORK_HDR_TYPE, }; +enum pvrdma_network_type { + PVRDMA_NETWORK_IB, + PVRDMA_NETWORK_ROCE_V1 = PVRDMA_NETWORK_IB, + PVRDMA_NETWORK_IPV4, + PVRDMA_NETWORK_IPV6 +}; + struct pvrdma_alloc_ucontext_resp { __u32 qp_tab_size; __u32 reserved; --- linux-azure-5.8-5.8.0.orig/include/xen/events.h +++ linux-azure-5.8-5.8.0/include/xen/events.h @@ -15,10 +15,15 @@ unsigned xen_evtchn_nr_channels(void); int bind_evtchn_to_irq(evtchn_port_t evtchn); +int bind_evtchn_to_irq_lateeoi(evtchn_port_t evtchn); int bind_evtchn_to_irqhandler(evtchn_port_t evtchn, irq_handler_t handler, unsigned long irqflags, const char *devname, void *dev_id); +int bind_evtchn_to_irqhandler_lateeoi(evtchn_port_t evtchn, + irq_handler_t handler, + unsigned long irqflags, const char *devname, + void *dev_id); int bind_virq_to_irq(unsigned int virq, unsigned int cpu, bool percpu); int bind_virq_to_irqhandler(unsigned int virq, unsigned int cpu, irq_handler_t handler, @@ -32,12 +37,20 @@ void *dev_id); int bind_interdomain_evtchn_to_irq(unsigned int remote_domain, evtchn_port_t remote_port); +int bind_interdomain_evtchn_to_irq_lateeoi(unsigned int remote_domain, + evtchn_port_t remote_port); int bind_interdomain_evtchn_to_irqhandler(unsigned int remote_domain, evtchn_port_t remote_port, irq_handler_t handler, unsigned long irqflags, const char *devname, void *dev_id); +int bind_interdomain_evtchn_to_irqhandler_lateeoi(unsigned int remote_domain, + evtchn_port_t remote_port, + irq_handler_t handler, + unsigned long irqflags, + const char *devname, + void *dev_id); /* * Common unbind function for all event sources. Takes IRQ to unbind from. @@ -46,6 +59,14 @@ */ void unbind_from_irqhandler(unsigned int irq, void *dev_id); +/* + * Send late EOI for an IRQ bound to an event channel via one of the *_lateeoi + * functions above. + */ +void xen_irq_lateeoi(unsigned int irq, unsigned int eoi_flags); +/* Signal an event was spurious, i.e. there was no action resulting from it. */ +#define XEN_EOI_FLAG_SPURIOUS 0x00000001 + #define XEN_IRQ_PRIORITY_MAX EVTCHN_FIFO_PRIORITY_MAX #define XEN_IRQ_PRIORITY_DEFAULT EVTCHN_FIFO_PRIORITY_DEFAULT #define XEN_IRQ_PRIORITY_MIN EVTCHN_FIFO_PRIORITY_MIN --- linux-azure-5.8-5.8.0.orig/include/xen/grant_table.h +++ linux-azure-5.8-5.8.0/include/xen/grant_table.h @@ -157,6 +157,7 @@ map->flags = flags; map->ref = ref; map->dom = domid; + map->status = 1; /* arbitrary positive value */ } static inline void @@ -198,6 +199,19 @@ int gnttab_alloc_pages(int nr_pages, struct page **pages); void gnttab_free_pages(int nr_pages, struct page **pages); +struct gnttab_page_cache { + spinlock_t lock; + struct list_head pages; + unsigned int num_pages; +}; + +void gnttab_page_cache_init(struct gnttab_page_cache *cache); +int gnttab_page_cache_get(struct gnttab_page_cache *cache, struct page **page); +void gnttab_page_cache_put(struct gnttab_page_cache *cache, struct page **page, + unsigned int num); +void gnttab_page_cache_shrink(struct gnttab_page_cache *cache, + unsigned int num); + #ifdef CONFIG_XEN_GRANT_DMA_ALLOC struct gnttab_dma_alloc_args { /* Device for which DMA memory will be/was allocated. */ --- linux-azure-5.8-5.8.0.orig/include/xen/xenbus.h +++ linux-azure-5.8-5.8.0/include/xen/xenbus.h @@ -61,6 +61,15 @@ /* Path being watched. */ const char *node; + unsigned int nr_pending; + + /* + * Called just before enqueing new event while a spinlock is held. + * The event will be discarded if this callback returns false. + */ + bool (*will_handle)(struct xenbus_watch *, + const char *path, const char *token); + /* Callback (executed in a process context with no locks held). */ void (*callback)(struct xenbus_watch *, const char *path, const char *token); @@ -183,8 +192,6 @@ struct work_struct; -void xenbus_probe(struct work_struct *); - #define XENBUS_IS_ERR_READ(str) ({ \ if (!IS_ERR(str) && strlen(str) == 0) { \ kfree(str); \ @@ -197,10 +204,14 @@ int xenbus_watch_path(struct xenbus_device *dev, const char *path, struct xenbus_watch *watch, + bool (*will_handle)(struct xenbus_watch *, + const char *, const char *), void (*callback)(struct xenbus_watch *, const char *, const char *)); -__printf(4, 5) +__printf(5, 6) int xenbus_watch_pathfmt(struct xenbus_device *dev, struct xenbus_watch *watch, + bool (*will_handle)(struct xenbus_watch *, + const char *, const char *), void (*callback)(struct xenbus_watch *, const char *, const char *), const char *pathfmt, ...); --- linux-azure-5.8-5.8.0.orig/init/Kconfig +++ linux-azure-5.8-5.8.0/init/Kconfig @@ -314,6 +314,15 @@ config ARCH_NO_SWAP bool +config VERSION_SIGNATURE + string "Arbitrary version signature" + help + This string will be created in a file, /proc/version_signature. It + is useful in determining arbitrary data about your kernel. For instance, + if you have several kernels of the same version, but need to keep track + of a revision of the same kernel, but not affect it's ability to load + compatible modules, this is the easiest way to do that. + config SWAP bool "Support for paging of anonymous memory (swap)" depends on MMU && BLOCK && !ARCH_NO_SWAP @@ -654,7 +663,8 @@ config LOG_BUF_SHIFT int "Kernel log buffer size (16 => 64KB, 17 => 128KB)" - range 12 25 + range 12 25 if !H8300 + range 12 19 if H8300 default 17 depends on PRINTK help @@ -1161,6 +1171,7 @@ config CHECKPOINT_RESTORE bool "Checkpoint/restore support" select PROC_CHILDREN + select KCMP default n help Enables additional kernel features in a sake of checkpoint/restore. @@ -1695,6 +1706,16 @@ config ARCH_HAS_MEMBARRIER_SYNC_CORE bool +config KCMP + bool "Enable kcmp() system call" if EXPERT + help + Enable the kernel resource comparison system call. It provides + user-space with the ability to compare two processes to see if they + share a common resource, such as a file descriptor or even virtual + memory space. + + If unsure, say N. + config RSEQ bool "Enable rseq() system call" if EXPERT default y --- linux-azure-5.8-5.8.0.orig/init/do_mounts.c +++ linux-azure-5.8-5.8.0/init/do_mounts.c @@ -631,6 +631,7 @@ void __init prepare_namespace(void) { int is_floppy; + int err; if (root_delay) { printk(KERN_INFO "Waiting %d sec before mounting root device...\n", @@ -684,6 +685,13 @@ devtmpfs_mount(); do_mount(".", "/", NULL, MS_MOVE, NULL); ksys_chroot("."); +#ifdef CONFIG_BLOCK + /* recreate the /dev/root */ + err = create_dev("/dev/root", ROOT_DEV); + + if (err < 0) + pr_emerg("Failed to create /dev/root: %d\n", err); +#endif } static bool is_tmpfs; --- linux-azure-5.8-5.8.0.orig/init/init_task.c +++ linux-azure-5.8-5.8.0/init/init_task.c @@ -26,7 +26,7 @@ .multiprocess = HLIST_HEAD_INIT, .rlim = INIT_RLIMITS, .cred_guard_mutex = __MUTEX_INITIALIZER(init_signals.cred_guard_mutex), - .exec_update_mutex = __MUTEX_INITIALIZER(init_signals.exec_update_mutex), + .exec_update_lock = __RWSEM_INITIALIZER(init_signals.exec_update_lock), #ifdef CONFIG_POSIX_TIMERS .posix_timers = LIST_HEAD_INIT(init_signals.posix_timers), .cputimer = { @@ -113,6 +113,9 @@ .thread = INIT_THREAD, .fs = &init_fs, .files = &init_files, +#ifdef CONFIG_IO_URING + .io_uring = NULL, +#endif .signal = &init_signals, .sighand = &init_sighand, .nsproxy = &init_nsproxy, @@ -193,7 +196,8 @@ .lockdep_recursion = 0, #endif #ifdef CONFIG_FUNCTION_GRAPH_TRACER - .ret_stack = NULL, + .ret_stack = NULL, + .tracing_graph_pause = ATOMIC_INIT(0), #endif #if defined(CONFIG_TRACING) && defined(CONFIG_PREEMPTION) .trace_recursion = 0, --- linux-azure-5.8-5.8.0.orig/init/initramfs.c +++ linux-azure-5.8-5.8.0/init/initramfs.c @@ -528,7 +528,7 @@ #include #include -void __weak free_initrd_mem(unsigned long start, unsigned long end) +void __weak __init free_initrd_mem(unsigned long start, unsigned long end) { #ifdef CONFIG_ARCH_KEEP_MEMBLOCK unsigned long aligned_start = ALIGN_DOWN(start, PAGE_SIZE); --- linux-azure-5.8-5.8.0.orig/init/main.c +++ linux-azure-5.8-5.8.0/init/main.c @@ -33,6 +33,7 @@ #include #include #include +#include #include #include #include @@ -265,14 +266,24 @@ u32 size, csum; char *data; u32 *hdr; + int i; if (!initrd_end) return NULL; data = (char *)initrd_end - BOOTCONFIG_MAGIC_LEN; - if (memcmp(data, BOOTCONFIG_MAGIC, BOOTCONFIG_MAGIC_LEN)) - return NULL; + /* + * Since Grub may align the size of initrd to 4, we must + * check the preceding 3 bytes as well. + */ + for (i = 0; i < 4; i++) { + if (!memcmp(data, BOOTCONFIG_MAGIC, BOOTCONFIG_MAGIC_LEN)) + goto found; + data--; + } + return NULL; +found: hdr = (u32 *)(data - 8); size = hdr[0]; csum = hdr[1]; @@ -387,8 +398,6 @@ { if (strcmp(param, "bootconfig") == 0) { bootconfig_found = true; - } else if (strcmp(param, "--") == 0) { - initargs_found = true; } return 0; } @@ -399,19 +408,23 @@ const char *msg; int pos; u32 size, csum; - char *data, *copy; + char *data, *copy, *err; int ret; /* Cut out the bootconfig data even if we have no bootconfig option */ data = get_boot_config_from_initrd(&size, &csum); strlcpy(tmp_cmdline, boot_command_line, COMMAND_LINE_SIZE); - parse_args("bootconfig", tmp_cmdline, NULL, 0, 0, 0, NULL, - bootconfig_params); + err = parse_args("bootconfig", tmp_cmdline, NULL, 0, 0, 0, NULL, + bootconfig_params); - if (!bootconfig_found) + if (IS_ERR(err) || !bootconfig_found) return; + /* parse_args() stops at '--' and returns an address */ + if (err) + initargs_found = true; + if (!data) { pr_err("'bootconfig' found on command line, but no bootconfig found\n"); return; @@ -1136,22 +1149,22 @@ static __init_or_module void trace_initcall_start_cb(void *data, initcall_t fn) { - ktime_t *calltime = (ktime_t *)data; + unsigned long *calltime = (unsigned long *)data; printk(KERN_DEBUG "calling %pS @ %i\n", fn, task_pid_nr(current)); - *calltime = ktime_get(); + *calltime = local_clock(); } static __init_or_module void trace_initcall_finish_cb(void *data, initcall_t fn, int ret) { - ktime_t *calltime = (ktime_t *)data; - ktime_t delta, rettime; + unsigned long *calltime = (unsigned long *)data; + unsigned long delta, rettime; unsigned long long duration; - rettime = ktime_get(); - delta = ktime_sub(rettime, *calltime); - duration = (unsigned long long) ktime_to_ns(delta) >> 10; + rettime = local_clock(); + delta = rettime - *calltime; + duration = delta >> 10; printk(KERN_DEBUG "initcall %pS returned %d after %lld usecs\n", fn, ret, duration); } @@ -1399,7 +1412,9 @@ kernel_init_freeable(); /* need to finish all async __init code before freeing the memory */ async_synchronize_full(); + kprobe_free_init_mem(); ftrace_free_init_mem(); + kgdb_free_init_mem(); free_initmem(); mark_readonly(); --- linux-azure-5.8-5.8.0.orig/init/version.c +++ linux-azure-5.8-5.8.0/init/version.c @@ -45,7 +45,11 @@ /* FIXED STRINGS! Don't touch! */ const char linux_banner[] = "Linux version " UTS_RELEASE " (" LINUX_COMPILE_BY "@" - LINUX_COMPILE_HOST ") (" LINUX_COMPILER ") " UTS_VERSION "\n"; + LINUX_COMPILE_HOST ") (" LINUX_COMPILER ") " UTS_VERSION +#ifdef CONFIG_VERSION_SIGNATURE + " (" CONFIG_VERSION_SIGNATURE ")" +#endif + "\n"; const char linux_proc_banner[] = "%s version %s" --- linux-azure-5.8-5.8.0.orig/ipc/namespace.c +++ linux-azure-5.8-5.8.0/ipc/namespace.c @@ -172,6 +172,23 @@ schedule_work(&free_ipc_work); } } +EXPORT_SYMBOL(put_ipc_ns); + +struct ipc_namespace *get_ipc_ns_exported(struct ipc_namespace *ns) +{ + return get_ipc_ns(ns); +} +EXPORT_SYMBOL(get_ipc_ns_exported); + +struct ipc_namespace *show_init_ipc_ns(void) +{ +#if defined(CONFIG_IPC_NS) + return &init_ipc_ns; +#else + return NULL; +#endif +} +EXPORT_SYMBOL(show_init_ipc_ns); static inline struct ipc_namespace *to_ipc_ns(struct ns_common *ns) { --- linux-azure-5.8-5.8.0.orig/kernel/Makefile +++ linux-azure-5.8-5.8.0/kernel/Makefile @@ -49,7 +49,7 @@ obj-y += livepatch/ obj-y += dma/ -obj-$(CONFIG_CHECKPOINT_RESTORE) += kcmp.o +obj-$(CONFIG_KCMP) += kcmp.o obj-$(CONFIG_FREEZER) += freezer.o obj-$(CONFIG_PROFILING) += profile.o obj-$(CONFIG_STACKTRACE) += stacktrace.o @@ -98,7 +98,6 @@ obj-$(CONFIG_TASKSTATS) += taskstats.o tsacct.o obj-$(CONFIG_TRACEPOINTS) += tracepoint.o obj-$(CONFIG_LATENCYTOP) += latencytop.o -obj-$(CONFIG_ELFCORE) += elfcore.o obj-$(CONFIG_FUNCTION_TRACER) += trace/ obj-$(CONFIG_TRACING) += trace/ obj-$(CONFIG_TRACE_CLOCK) += trace/ @@ -125,6 +124,7 @@ obj-$(CONFIG_SYSCTL_KUNIT_TEST) += sysctl-test.o +CFLAGS_stackleak.o += $(DISABLE_STACKLEAK_PLUGIN) obj-$(CONFIG_GCC_PLUGIN_STACKLEAK) += stackleak.o KASAN_SANITIZE_stackleak.o := n KCSAN_SANITIZE_stackleak.o := n --- linux-azure-5.8-5.8.0.orig/kernel/audit.c +++ linux-azure-5.8-5.8.0/kernel/audit.c @@ -125,7 +125,7 @@ /* The identity of the user shutting down the audit system. */ kuid_t audit_sig_uid = INVALID_UID; pid_t audit_sig_pid = -1; -u32 audit_sig_sid = 0; +struct lsmblob audit_sig_lsm; /* Records can be lost in several ways: 0) [suppressed in audit_alloc] @@ -389,10 +389,11 @@ return rc; audit_log_format(ab, "op=set %s=%u old=%u ", function_name, new, old); audit_log_session_info(ab); - rc = audit_log_task_context(ab); + rc = audit_log_task_context(ab, NULL); if (rc) allow_changes = 0; /* Something weird, deny request */ audit_log_format(ab, " res=%d", allow_changes); + audit_log_lsm(NULL, false); audit_log_end(ab); return rc; } @@ -1065,13 +1066,31 @@ return; audit_log_format(*ab, "pid=%d uid=%u ", pid, uid); audit_log_session_info(*ab); - audit_log_task_context(*ab); + audit_log_task_context(*ab, NULL); } static inline void audit_log_user_recv_msg(struct audit_buffer **ab, u16 msg_type) { - audit_log_common_recv_msg(NULL, ab, msg_type); + struct audit_context *context; + + if (!lsm_multiple_contexts()) { + audit_log_common_recv_msg(NULL, ab, msg_type); + return; + } + + context = audit_context(); + if (context) { + if (!context->in_syscall) + audit_stamp_context(context); + audit_log_common_recv_msg(context, ab, msg_type); + return; + } + + audit_alloc(current); + context = audit_context(); + + audit_log_common_recv_msg(context, ab, msg_type); } int is_audit_feature_set(int i) @@ -1186,8 +1205,6 @@ struct audit_buffer *ab; u16 msg_type = nlh->nlmsg_type; struct audit_sig_info *sig_data; - char *ctx = NULL; - u32 len; err = audit_netlink_ok(skb, msg_type); if (err) @@ -1362,6 +1379,7 @@ audit_log_n_untrustedstring(ab, str, data_len); } audit_log_end(ab); + audit_log_lsm(NULL, false); } break; case AUDIT_ADD_RULE: @@ -1428,29 +1446,34 @@ kfree(new); break; } - case AUDIT_SIGNAL_INFO: - len = 0; - if (audit_sig_sid) { - err = security_secid_to_secctx(audit_sig_sid, &ctx, &len); + case AUDIT_SIGNAL_INFO: { + struct lsmcontext context = { }; + int len = 0; + + if (lsmblob_is_set(&audit_sig_lsm)) { + err = security_secid_to_secctx(&audit_sig_lsm, + &context, LSMBLOB_FIRST); if (err) return err; } - sig_data = kmalloc(sizeof(*sig_data) + len, GFP_KERNEL); + sig_data = kmalloc(sizeof(*sig_data) + context.len, GFP_KERNEL); if (!sig_data) { - if (audit_sig_sid) - security_release_secctx(ctx, len); + if (lsmblob_is_set(&audit_sig_lsm)) + security_release_secctx(&context); return -ENOMEM; } sig_data->uid = from_kuid(&init_user_ns, audit_sig_uid); sig_data->pid = audit_sig_pid; - if (audit_sig_sid) { - memcpy(sig_data->ctx, ctx, len); - security_release_secctx(ctx, len); + if (lsmblob_is_set(&audit_sig_lsm)) { + len = context.len; + memcpy(sig_data->ctx, context.context, len); + security_release_secctx(&context); } audit_send_reply(skb, seq, AUDIT_SIGNAL_INFO, 0, 0, sig_data, sizeof(*sig_data) + len); kfree(sig_data); break; + } case AUDIT_TTY_GET: { struct audit_tty_status s; unsigned int t; @@ -1557,7 +1580,7 @@ tty ? tty_name(tty) : "(none)", audit_get_sessionid(current)); audit_put_tty(tty); - audit_log_task_context(ab); /* subj= */ + audit_log_task_context(ab, NULL); /* subj= */ audit_log_format(ab, " comm="); audit_log_untrustedstring(ab, get_task_comm(comm, current)); audit_log_d_path_exe(ab, current->mm); /* exe= */ @@ -1851,6 +1874,11 @@ } audit_get_stamp(ab->ctx, &t, &serial); + if (type == AUDIT_MAC_TASK_CONTEXTS && ab->ctx && + ab->ctx->serial == 0) { + audit_stamp_context(ab->ctx); + audit_get_stamp(ab->ctx, &t, &serial); + } audit_log_format(ab, "audit(%llu.%03lu:%u): ", (unsigned long long)t.tv_sec, t.tv_nsec/1000000, serial); @@ -2108,34 +2136,103 @@ audit_log_format(ab, "(null)"); } -int audit_log_task_context(struct audit_buffer *ab) +int audit_log_task_context(struct audit_buffer *ab, struct lsmblob *blob) { - char *ctx = NULL; - unsigned len; + int i; int error; - u32 sid; + struct lsmblob localblob; + struct lsmcontext lsmdata; - security_task_getsecid(current, &sid); - if (!sid) + /* + * If there is more than one security module that has a + * subject "context" it's necessary to put the subject data + * into a separate record to maintain compatibility. + */ + if (lsm_multiple_contexts()) { + audit_log_format(ab, " subj=?"); return 0; + } - error = security_secid_to_secctx(sid, &ctx, &len); - if (error) { - if (error != -EINVAL) - goto error_path; - return 0; + if (blob == NULL) { + security_task_getsecid(current, &localblob); + if (!lsmblob_is_set(&localblob)) { + audit_log_format(ab, " subj=?"); + return 0; + } + blob = &localblob; } - audit_log_format(ab, " subj=%s", ctx); - security_release_secctx(ctx, len); - return 0; + for (i = 0; i < LSMBLOB_ENTRIES; i++) { + if (blob->secid[i] == 0) + continue; + error = security_secid_to_secctx(blob, &lsmdata, i); + if (error && error != -EINVAL) { + audit_panic("error in audit_log_task_context"); + return error; + } -error_path: - audit_panic("error in audit_log_task_context"); - return error; + audit_log_format(ab, " subj=%s", lsmdata.context); + security_release_secctx(&lsmdata); + break; + } + + return 0; } EXPORT_SYMBOL(audit_log_task_context); +int audit_log_object_context(struct audit_buffer *ab, + struct lsmblob *blob) +{ + int i; + int error; + bool sep = false; + struct lsmcontext lsmdata; + struct audit_buffer *lsmab = NULL; + struct audit_context *context = NULL; + + /* + * If there is more than one security module that has a + * object "context" it's necessary to put the object data + * into a separate record to maintain compatibility. + */ + if (lsm_multiple_contexts()) { + audit_log_format(ab, " obj=?"); + context = ab->ctx; + if (context) + lsmab = audit_log_start(context, GFP_KERNEL, + AUDIT_MAC_OBJ_CONTEXTS); + } + + for (i = 0; i < LSMBLOB_ENTRIES; i++) { + if (blob->secid[i] == 0) + continue; + error = security_secid_to_secctx(blob, &lsmdata, i); + if (error && error != -EINVAL) { + audit_panic("error in audit_log_object_context"); + return error; + } + + if (context) { + audit_log_format(lsmab, "%sobj_%s=%s", + sep ? " " : "", + security_lsm_slot_name(i), + lsmdata.context); + sep = true; + } else + audit_log_format(ab, " obj=%s", lsmdata.context); + + security_release_secctx(&lsmdata); + if (!context) + break; + } + + if (context) + audit_log_end(lsmab); + + return 0; +} +EXPORT_SYMBOL(audit_log_object_context); + void audit_log_d_path_exe(struct audit_buffer *ab, struct mm_struct *mm) { @@ -2204,7 +2301,7 @@ audit_log_format(ab, " comm="); audit_log_untrustedstring(ab, get_task_comm(comm, current)); audit_log_d_path_exe(ab, current->mm); - audit_log_task_context(ab); + audit_log_task_context(ab, NULL); } EXPORT_SYMBOL(audit_log_task_info); @@ -2262,6 +2359,7 @@ if (!audit_enabled) return; + audit_stamp_context(audit_context()); ab = audit_log_start(audit_context(), GFP_KERNEL, AUDIT_LOGIN); if (!ab) return; @@ -2272,11 +2370,12 @@ tty = audit_get_tty(); audit_log_format(ab, "pid=%d uid=%u", task_tgid_nr(current), uid); - audit_log_task_context(ab); + audit_log_task_context(ab, NULL); audit_log_format(ab, " old-auid=%u auid=%u tty=%s old-ses=%u ses=%u res=%d", oldloginuid, loginuid, tty ? tty_name(tty) : "(none)", oldsessionid, sessionid, !rc); audit_put_tty(tty); + audit_log_lsm(NULL, true); audit_log_end(ab); } @@ -2336,7 +2435,7 @@ audit_sig_uid = auid; else audit_sig_uid = uid; - security_task_getsecid(current, &audit_sig_sid); + security_task_getsecid(current, &audit_sig_lsm); } return audit_signal_info_syscall(t); --- linux-azure-5.8-5.8.0.orig/kernel/audit.h +++ linux-azure-5.8-5.8.0/kernel/audit.h @@ -9,6 +9,7 @@ #include #include #include +#include #include #include @@ -77,7 +78,7 @@ kuid_t uid; kgid_t gid; dev_t rdev; - u32 osid; + struct lsmblob oblob; struct audit_cap_data fcap; unsigned int fcap_ver; unsigned char type; /* record type */ @@ -134,7 +135,7 @@ kuid_t target_auid; kuid_t target_uid; unsigned int target_sessionid; - u32 target_sid; + struct lsmblob target_lsm; char target_comm[TASK_COMM_LEN]; struct audit_tree_refs *trees, *first_trees; @@ -151,7 +152,7 @@ kuid_t uid; kgid_t gid; umode_t mode; - u32 osid; + struct lsmblob oblob; int has_perm; uid_t perm_uid; gid_t perm_gid; @@ -329,7 +330,7 @@ extern pid_t audit_sig_pid; extern kuid_t audit_sig_uid; -extern u32 audit_sig_sid; +extern struct lsmblob audit_sig_lsm; extern int audit_filter(int msgtype, unsigned int listtype); --- linux-azure-5.8-5.8.0.orig/kernel/auditfilter.c +++ linux-azure-5.8-5.8.0/kernel/auditfilter.c @@ -74,7 +74,7 @@ case AUDIT_OBJ_LEV_LOW: case AUDIT_OBJ_LEV_HIGH: kfree(f->lsm_str); - security_audit_rule_free(f->lsm_rule); + security_audit_rule_free(f->lsm_rules); } } @@ -519,9 +519,10 @@ goto exit_free; } entry->rule.buflen += f_val; + f->lsm_isset = true; f->lsm_str = str; err = security_audit_rule_init(f->type, f->op, str, - (void **)&f->lsm_rule); + f->lsm_rules); /* Keep currently invalid fields around in case they * become valid after a policy reload. */ if (err == -EINVAL) { @@ -774,7 +775,7 @@ return 0; } -/* Duplicate LSM field information. The lsm_rule is opaque, so must be +/* Duplicate LSM field information. The lsm_rules is opaque, so must be * re-initialized. */ static inline int audit_dupe_lsm_field(struct audit_field *df, struct audit_field *sf) @@ -788,9 +789,9 @@ return -ENOMEM; df->lsm_str = lsm_str; - /* our own (refreshed) copy of lsm_rule */ + /* our own (refreshed) copy of lsm_rules */ ret = security_audit_rule_init(df->type, df->op, df->lsm_str, - (void **)&df->lsm_rule); + df->lsm_rules); /* Keep currently invalid fields around in case they * become valid after a policy reload. */ if (ret == -EINVAL) { @@ -842,7 +843,7 @@ new->tree = old->tree; memcpy(new->fields, old->fields, sizeof(struct audit_field) * fcount); - /* deep copy this information, updating the lsm_rule fields, because + /* deep copy this information, updating the lsm_rules fields, because * the originals will all be freed when the old rule is freed. */ for (i = 0; i < fcount; i++) { switch (new->fields[i].type) { @@ -1106,7 +1107,7 @@ if (!ab) return; audit_log_session_info(ab); - audit_log_task_context(ab); + audit_log_task_context(ab, NULL); audit_log_format(ab, " op=%s", action); audit_log_key(ab, rule->filterkey); audit_log_format(ab, " list=%d res=%d", rule->listnr, res); @@ -1329,7 +1330,7 @@ for (i = 0; i < e->rule.field_count; i++) { struct audit_field *f = &e->rule.fields[i]; pid_t pid; - u32 sid; + struct lsmblob blob; switch (f->type) { case AUDIT_PID: @@ -1358,10 +1359,11 @@ case AUDIT_SUBJ_TYPE: case AUDIT_SUBJ_SEN: case AUDIT_SUBJ_CLR: - if (f->lsm_rule) { - security_task_getsecid(current, &sid); - result = security_audit_rule_match(sid, - f->type, f->op, f->lsm_rule); + if (f->lsm_isset) { + security_task_getsecid(current, &blob); + result = security_audit_rule_match( + &blob, f->type, f->op, + f->lsm_rules); } break; case AUDIT_EXE: @@ -1388,7 +1390,7 @@ return ret; } -static int update_lsm_rule(struct audit_krule *r) +static int update_lsm_rules(struct audit_krule *r) { struct audit_entry *entry = container_of(r, struct audit_entry, rule); struct audit_entry *nentry; @@ -1420,7 +1422,7 @@ return err; } -/* This function will re-initialize the lsm_rule field of all applicable rules. +/* This function will re-initialize the lsm_rules field of all applicable rules. * It will traverse the filter lists serarching for rules that contain LSM * specific filter fields. When such a rule is found, it is copied, the * LSM field is re-initialized, and the old rule is replaced with the @@ -1435,7 +1437,7 @@ for (i = 0; i < AUDIT_NR_FILTERS; i++) { list_for_each_entry_safe(r, n, &audit_rules_list[i], list) { - int res = update_lsm_rule(r); + int res = update_lsm_rules(r); if (!err) err = res; } --- linux-azure-5.8-5.8.0.orig/kernel/auditsc.c +++ linux-azure-5.8-5.8.0/kernel/auditsc.c @@ -112,7 +112,7 @@ kuid_t target_auid[AUDIT_AUX_PIDS]; kuid_t target_uid[AUDIT_AUX_PIDS]; unsigned int target_sessionid[AUDIT_AUX_PIDS]; - u32 target_sid[AUDIT_AUX_PIDS]; + struct lsmblob target_lsm[AUDIT_AUX_PIDS]; char target_comm[AUDIT_AUX_PIDS][TASK_COMM_LEN]; int pid_count; }; @@ -455,7 +455,7 @@ { const struct cred *cred; int i, need_sid = 1; - u32 sid; + struct lsmblob blob = { }; unsigned int sessionid; cred = rcu_dereference_check(tsk->cred, tsk == current || task_creation); @@ -649,14 +649,15 @@ match for now to avoid losing information that may be wanted. An error message will also be logged upon error */ - if (f->lsm_rule) { + if (f->lsm_isset) { if (need_sid) { - security_task_getsecid(tsk, &sid); + security_task_getsecid(tsk, &blob); need_sid = 0; } - result = security_audit_rule_match(sid, f->type, + result = security_audit_rule_match(&blob, + f->type, f->op, - f->lsm_rule); + f->lsm_rules); } break; case AUDIT_OBJ_USER: @@ -666,21 +667,21 @@ case AUDIT_OBJ_LEV_HIGH: /* The above note for AUDIT_SUBJ_USER...AUDIT_SUBJ_CLR also applies here */ - if (f->lsm_rule) { + if (f->lsm_isset) { /* Find files that match */ if (name) { result = security_audit_rule_match( - name->osid, + &blob, f->type, f->op, - f->lsm_rule); + f->lsm_rules); } else if (ctx) { list_for_each_entry(n, &ctx->names_list, list) { if (security_audit_rule_match( - n->osid, + &blob, f->type, f->op, - f->lsm_rule)) { + f->lsm_rules)) { ++result; break; } @@ -689,9 +690,9 @@ /* Find ipc objects that match */ if (!ctx || ctx->type != AUDIT_IPC) break; - if (security_audit_rule_match(ctx->ipc.osid, + if (security_audit_rule_match(&ctx->ipc.oblob, f->type, f->op, - f->lsm_rule)) + f->lsm_rules)) ++result; } break; @@ -933,10 +934,12 @@ return 0; /* Return if not auditing. */ state = audit_filter_task(tsk, &key); - if (state == AUDIT_DISABLED) { + if (!lsm_multiple_contexts() && state == AUDIT_DISABLED) { clear_tsk_thread_flag(tsk, TIF_SYSCALL_AUDIT); return 0; } + if (state == AUDIT_DISABLED) + clear_tsk_thread_flag(tsk, TIF_SYSCALL_AUDIT); if (!(context = audit_alloc_context(state))) { kfree(key); @@ -964,12 +967,11 @@ } static int audit_log_pid_context(struct audit_context *context, pid_t pid, - kuid_t auid, kuid_t uid, unsigned int sessionid, - u32 sid, char *comm) + kuid_t auid, kuid_t uid, + unsigned int sessionid, + struct lsmblob *blob, char *comm) { struct audit_buffer *ab; - char *ctx = NULL; - u32 len; int rc = 0; ab = audit_log_start(context, GFP_KERNEL, AUDIT_OBJ_PID); @@ -979,15 +981,7 @@ audit_log_format(ab, "opid=%d oauid=%d ouid=%d oses=%d", pid, from_kuid(&init_user_ns, auid), from_kuid(&init_user_ns, uid), sessionid); - if (sid) { - if (security_secid_to_secctx(sid, &ctx, &len)) { - audit_log_format(ab, " obj=(none)"); - rc = 1; - } else { - audit_log_format(ab, " obj=%s", ctx); - security_release_secctx(ctx, len); - } - } + rc = audit_log_object_context(ab, blob); audit_log_format(ab, " ocomm="); audit_log_untrustedstring(ab, comm); audit_log_end(ab); @@ -1214,23 +1208,14 @@ context->socketcall.args[i]); break; } case AUDIT_IPC: { - u32 osid = context->ipc.osid; + struct lsmblob *oblob = &context->ipc.oblob; audit_log_format(ab, "ouid=%u ogid=%u mode=%#ho", from_kuid(&init_user_ns, context->ipc.uid), from_kgid(&init_user_ns, context->ipc.gid), context->ipc.mode); - if (osid) { - char *ctx = NULL; - u32 len; - if (security_secid_to_secctx(osid, &ctx, &len)) { - audit_log_format(ab, " osid=%u", osid); - *call_panic = 1; - } else { - audit_log_format(ab, " obj=%s", ctx); - security_release_secctx(ctx, len); - } - } + if (audit_log_object_context(ab, oblob)) + *call_panic = 1; if (context->ipc.has_perm) { audit_log_end(ab); ab = audit_log_start(context, GFP_KERNEL, @@ -1370,20 +1355,8 @@ from_kgid(&init_user_ns, n->gid), MAJOR(n->rdev), MINOR(n->rdev)); - if (n->osid != 0) { - char *ctx = NULL; - u32 len; - - if (security_secid_to_secctx( - n->osid, &ctx, &len)) { - audit_log_format(ab, " osid=%u", n->osid); - if (call_panic) - *call_panic = 2; - } else { - audit_log_format(ab, " obj=%s", ctx); - security_release_secctx(ctx, len); - } - } + if (audit_log_object_context(ab, &n->oblob) && call_panic) + *call_panic = 2; /* log the audit_names record type */ switch (n->type) { @@ -1452,6 +1425,52 @@ audit_log_end(ab); } +void audit_log_lsm(struct lsmblob *blob, bool exiting) +{ + struct audit_context *context = audit_context(); + struct lsmcontext lsmdata; + struct audit_buffer *ab; + struct lsmblob localblob; + bool sep = false; + int error; + int i; + + if (!lsm_multiple_contexts()) + return; + + if (context && context->in_syscall && !exiting) + return; + + ab = audit_log_start(context, GFP_ATOMIC, AUDIT_MAC_TASK_CONTEXTS); + if (!ab) + return; /* audit_panic or being filtered */ + + if (blob == NULL) { + security_task_getsecid(current, &localblob); + if (!lsmblob_is_set(&localblob)) + return; + blob = &localblob; + } + + for (i = 0; i < LSMBLOB_ENTRIES; i++) { + if (blob->secid[i] == 0) + continue; + error = security_secid_to_secctx(blob, &lsmdata, i); + if (error && error != -EINVAL) { + audit_panic("error in audit_log_lsm"); + return; + } + + audit_log_format(ab, "%ssubj_%s=%s", sep ? " " : "", + security_lsm_slot_name(i), lsmdata.context); + sep = true; + + security_release_secctx(&lsmdata); + } + + audit_log_end(ab); +} + static void audit_log_exit(void) { int i, call_panic = 0; @@ -1547,7 +1566,7 @@ axs->target_auid[i], axs->target_uid[i], axs->target_sessionid[i], - axs->target_sid[i], + &axs->target_lsm[i], axs->target_comm[i])) call_panic = 1; } @@ -1556,7 +1575,7 @@ audit_log_pid_context(context, context->target_pid, context->target_auid, context->target_uid, context->target_sessionid, - context->target_sid, context->target_comm)) + &context->target_lsm, context->target_comm)) call_panic = 1; if (context->pwd.dentry && context->pwd.mnt) { @@ -1575,6 +1594,7 @@ } audit_log_proctitle(); + audit_log_lsm(NULL, true); /* Send end of event record to help user space know we are finished */ ab = audit_log_start(context, GFP_KERNEL, AUDIT_EOE); @@ -1734,7 +1754,7 @@ context->aux = NULL; context->aux_pids = NULL; context->target_pid = 0; - context->target_sid = 0; + lsmblob_init(&context->target_lsm, 0); context->sockaddr_len = 0; context->type = 0; context->fds[0] = -1; @@ -1938,7 +1958,7 @@ name->uid = inode->i_uid; name->gid = inode->i_gid; name->rdev = inode->i_rdev; - security_inode_getsecid(inode, &name->osid); + security_inode_getsecid(inode, &name->oblob); if (flags & AUDIT_INODE_NOEVAL) { name->fcap_ver = -1; return; @@ -2170,6 +2190,21 @@ EXPORT_SYMBOL_GPL(__audit_inode_child); /** + * audit_stamp_context - set the timestamp+serial in an audit context + * @ctx: audit_context to set + */ +void audit_stamp_context(struct audit_context *ctx) +{ + /* ctx will be NULL unless lsm_multiple_contexts() is true */ + if (!ctx) + return; + + ktime_get_coarse_real_ts64(&ctx->ctime); + ctx->serial = audit_serial(); + ctx->current_state = AUDIT_BUILD_CONTEXT; +} + +/** * auditsc_get_stamp - get local copies of audit_context values * @ctx: audit_context for the task * @t: timespec64 to store time recorded in the audit_context @@ -2180,6 +2215,12 @@ int auditsc_get_stamp(struct audit_context *ctx, struct timespec64 *t, unsigned int *serial) { + if (ctx->serial && !ctx->in_syscall) { + t->tv_sec = ctx->ctime.tv_sec; + t->tv_nsec = ctx->ctime.tv_nsec; + *serial = ctx->serial; + return 1; + } if (!ctx->in_syscall) return 0; if (!ctx->serial) @@ -2288,7 +2329,7 @@ context->ipc.gid = ipcp->gid; context->ipc.mode = ipcp->mode; context->ipc.has_perm = 0; - security_ipc_getsecid(ipcp, &context->ipc.osid); + security_ipc_getsecid(ipcp, &context->ipc.oblob); context->type = AUDIT_IPC; } @@ -2383,7 +2424,7 @@ context->target_auid = audit_get_loginuid(t); context->target_uid = task_uid(t); context->target_sessionid = audit_get_sessionid(t); - security_task_getsecid(t, &context->target_sid); + security_task_getsecid(t, &context->target_lsm); memcpy(context->target_comm, t->comm, TASK_COMM_LEN); } @@ -2410,7 +2451,7 @@ ctx->target_auid = audit_get_loginuid(t); ctx->target_uid = t_uid; ctx->target_sessionid = audit_get_sessionid(t); - security_task_getsecid(t, &ctx->target_sid); + security_task_getsecid(t, &ctx->target_lsm); memcpy(ctx->target_comm, t->comm, TASK_COMM_LEN); return 0; } @@ -2431,7 +2472,7 @@ axp->target_auid[axp->pid_count] = audit_get_loginuid(t); axp->target_uid[axp->pid_count] = t_uid; axp->target_sessionid[axp->pid_count] = audit_get_sessionid(t); - security_task_getsecid(t, &axp->target_sid[axp->pid_count]); + security_task_getsecid(t, &axp->target_lsm[axp->pid_count]); memcpy(axp->target_comm[axp->pid_count], t->comm, TASK_COMM_LEN); axp->pid_count++; @@ -2569,7 +2610,7 @@ name, af, nentries, audit_nfcfgs[op].s); audit_log_format(ab, " pid=%u", task_pid_nr(current)); - audit_log_task_context(ab); /* subj= */ + audit_log_task_context(ab, NULL); /* subj= */ audit_log_format(ab, " comm="); audit_log_untrustedstring(ab, get_task_comm(comm, current)); audit_log_end(ab); @@ -2592,7 +2633,7 @@ from_kuid(&init_user_ns, uid), from_kgid(&init_user_ns, gid), sessionid); - audit_log_task_context(ab); + audit_log_task_context(ab, NULL); audit_log_format(ab, " pid=%d comm=", task_tgid_nr(current)); audit_log_untrustedstring(ab, get_task_comm(comm, current)); audit_log_d_path_exe(ab, current->mm); @@ -2615,11 +2656,13 @@ if (signr == SIGQUIT) /* don't care for those */ return; + audit_stamp_context(audit_context()); ab = audit_log_start(audit_context(), GFP_KERNEL, AUDIT_ANOM_ABEND); if (unlikely(!ab)) return; audit_log_task(ab); audit_log_format(ab, " sig=%ld res=1", signr); + audit_log_lsm(NULL, true); audit_log_end(ab); } --- linux-azure-5.8-5.8.0.orig/kernel/bpf/Makefile +++ linux-azure-5.8-5.8.0/kernel/bpf/Makefile @@ -1,6 +1,10 @@ # SPDX-License-Identifier: GPL-2.0 obj-y := core.o -CFLAGS_core.o += $(call cc-disable-warning, override-init) +ifneq ($(CONFIG_BPF_JIT_ALWAYS_ON),y) +# ___bpf_prog_run() needs GCSE disabled on x86; see 3193c0836f203 for details +cflags-nogcse-$(CONFIG_X86)$(CONFIG_CC_IS_GCC) := -fno-gcse +endif +CFLAGS_core.o += $(call cc-disable-warning, override-init) $(cflags-nogcse-yy) obj-$(CONFIG_BPF_SYSCALL) += syscall.o verifier.o inode.o helpers.o tnum.o bpf_iter.o map_iter.o task_iter.o obj-$(CONFIG_BPF_SYSCALL) += hashtab.o arraymap.o percpu_freelist.o bpf_lru_list.o lpm_trie.o map_in_map.o --- linux-azure-5.8-5.8.0.orig/kernel/bpf/bpf_iter.c +++ linux-azure-5.8-5.8.0/kernel/bpf/bpf_iter.c @@ -64,6 +64,9 @@ iter_priv->done_stop = true; } +/* maximum visited objects before bailing out */ +#define MAX_ITER_OBJECTS 1000000 + /* bpf_seq_read, a customized and simpler version for bpf iterator. * no_llseek is assumed for this file. * The following are differences from seq_read(): @@ -76,7 +79,7 @@ { struct seq_file *seq = file->private_data; size_t n, offs, copied = 0; - int err = 0; + int err = 0, num_objs = 0; void *p; mutex_lock(&seq->lock); @@ -132,6 +135,7 @@ while (1) { loff_t pos = seq->index; + num_objs++; offs = seq->count; p = seq->op->next(seq, p, &seq->index); if (pos == seq->index) { @@ -150,6 +154,15 @@ if (seq->count >= size) break; + if (num_objs >= MAX_ITER_OBJECTS) { + if (offs == 0) { + err = -EAGAIN; + seq->op->stop(seq, p); + goto done; + } + break; + } + err = seq->op->show(seq, p); if (err > 0) { bpf_iter_dec_seq_num(seq); @@ -243,7 +256,7 @@ { struct bpf_iter_target_info *tinfo; - tinfo = kmalloc(sizeof(*tinfo), GFP_KERNEL); + tinfo = kzalloc(sizeof(*tinfo), GFP_KERNEL); if (!tinfo) return -ENOMEM; --- linux-azure-5.8-5.8.0.orig/kernel/bpf/bpf_lru_list.c +++ linux-azure-5.8-5.8.0/kernel/bpf/bpf_lru_list.c @@ -502,13 +502,14 @@ static void bpf_common_lru_push_free(struct bpf_lru *lru, struct bpf_lru_node *node) { + u8 node_type = READ_ONCE(node->type); unsigned long flags; - if (WARN_ON_ONCE(node->type == BPF_LRU_LIST_T_FREE) || - WARN_ON_ONCE(node->type == BPF_LRU_LOCAL_LIST_T_FREE)) + if (WARN_ON_ONCE(node_type == BPF_LRU_LIST_T_FREE) || + WARN_ON_ONCE(node_type == BPF_LRU_LOCAL_LIST_T_FREE)) return; - if (node->type == BPF_LRU_LOCAL_LIST_T_PENDING) { + if (node_type == BPF_LRU_LOCAL_LIST_T_PENDING) { struct bpf_lru_locallist *loc_l; loc_l = per_cpu_ptr(lru->common_lru.local_list, node->cpu); --- linux-azure-5.8-5.8.0.orig/kernel/bpf/cgroup.c +++ linux-azure-5.8-5.8.0/kernel/bpf/cgroup.c @@ -1367,12 +1367,13 @@ if (ctx.optlen != 0) { *optlen = ctx.optlen; *kernel_optval = ctx.optval; + /* export and don't free sockopt buf */ + return 0; } } out: - if (ret) - sockopt_free_buf(&ctx); + sockopt_free_buf(&ctx); return ret; } @@ -1417,6 +1418,11 @@ goto out; } + if (ctx.optlen < 0) { + ret = -EFAULT; + goto out; + } + if (copy_from_user(ctx.optval, optval, min(ctx.optlen, max_optlen)) != 0) { ret = -EFAULT; @@ -1434,7 +1440,7 @@ goto out; } - if (ctx.optlen > max_optlen) { + if (ctx.optlen > max_optlen || ctx.optlen < 0) { ret = -EFAULT; goto out; } --- linux-azure-5.8-5.8.0.orig/kernel/bpf/core.c +++ linux-azure-5.8-5.8.0/kernel/bpf/core.c @@ -1364,7 +1364,7 @@ * * Decode and execute eBPF instructions. */ -static u64 __no_fgcse ___bpf_prog_run(u64 *regs, const struct bpf_insn *insn, u64 *stack) +static u64 ___bpf_prog_run(u64 *regs, const struct bpf_insn *insn, u64 *stack) { #define BPF_INSN_2_LBL(x, y) [BPF_##x | BPF_##y] = &&x##_##y #define BPF_INSN_3_LBL(x, y, z) [BPF_##x | BPF_##y | BPF_##z] = &&x##_##y##_##z --- linux-azure-5.8-5.8.0.orig/kernel/bpf/devmap.c +++ linux-azure-5.8-5.8.0/kernel/bpf/devmap.c @@ -808,9 +808,7 @@ break; /* will be freed in free_netdev() */ - netdev->xdp_bulkq = - __alloc_percpu_gfp(sizeof(struct xdp_dev_bulk_queue), - sizeof(void *), GFP_ATOMIC); + netdev->xdp_bulkq = alloc_percpu(struct xdp_dev_bulk_queue); if (!netdev->xdp_bulkq) return NOTIFY_BAD; --- linux-azure-5.8-5.8.0.orig/kernel/bpf/hashtab.c +++ linux-azure-5.8-5.8.0/kernel/bpf/hashtab.c @@ -821,6 +821,32 @@ } } +static void pcpu_init_value(struct bpf_htab *htab, void __percpu *pptr, + void *value, bool onallcpus) +{ + /* When using prealloc and not setting the initial value on all cpus, + * zero-fill element values for other cpus (just as what happens when + * not using prealloc). Otherwise, bpf program has no way to ensure + * known initial values for cpus other than current one + * (onallcpus=false always when coming from bpf prog). + */ + if (htab_is_prealloc(htab) && !onallcpus) { + u32 size = round_up(htab->map.value_size, 8); + int current_cpu = raw_smp_processor_id(); + int cpu; + + for_each_possible_cpu(cpu) { + if (cpu == current_cpu) + bpf_long_memcpy(per_cpu_ptr(pptr, cpu), value, + size); + else + memset(per_cpu_ptr(pptr, cpu), 0, size); + } + } else { + pcpu_copy_value(htab, pptr, value, onallcpus); + } +} + static bool fd_htab_map_needs_adjust(const struct bpf_htab *htab) { return htab->map.map_type == BPF_MAP_TYPE_HASH_OF_MAPS && @@ -891,7 +917,7 @@ } } - pcpu_copy_value(htab, pptr, value, onallcpus); + pcpu_init_value(htab, pptr, value, onallcpus); if (!prealloc) htab_elem_set_ptr(l_new, key_size, pptr); @@ -1183,7 +1209,7 @@ pcpu_copy_value(htab, htab_elem_get_ptr(l_old, key_size), value, onallcpus); } else { - pcpu_copy_value(htab, htab_elem_get_ptr(l_new, key_size), + pcpu_init_value(htab, htab_elem_get_ptr(l_new, key_size), value, onallcpus); hlist_nulls_add_head_rcu(&l_new->hash_node, head); l_new = NULL; --- linux-azure-5.8-5.8.0.orig/kernel/bpf/helpers.c +++ linux-azure-5.8-5.8.0/kernel/bpf/helpers.c @@ -108,7 +108,7 @@ } const struct bpf_func_proto bpf_map_peek_elem_proto = { - .func = bpf_map_pop_elem, + .func = bpf_map_peek_elem, .gpl_only = false, .ret_type = RET_INTEGER, .arg1_type = ARG_CONST_MAP_PTR, --- linux-azure-5.8-5.8.0.orig/kernel/bpf/inode.c +++ linux-azure-5.8-5.8.0/kernel/bpf/inode.c @@ -226,10 +226,12 @@ else prev_key = key; + rcu_read_lock(); if (map->ops->map_get_next_key(map, prev_key, key)) { map_iter(m)->done = true; - return NULL; + key = NULL; } + rcu_read_unlock(); return key; } --- linux-azure-5.8-5.8.0.orig/kernel/bpf/map_iter.c +++ linux-azure-5.8-5.8.0/kernel/bpf/map_iter.c @@ -6,7 +6,7 @@ #include struct bpf_iter_seq_map_info { - u32 mid; + u32 map_id; }; static void *bpf_map_seq_start(struct seq_file *seq, loff_t *pos) @@ -14,27 +14,23 @@ struct bpf_iter_seq_map_info *info = seq->private; struct bpf_map *map; - map = bpf_map_get_curr_or_next(&info->mid); + map = bpf_map_get_curr_or_next(&info->map_id); if (!map) return NULL; - ++*pos; + if (*pos == 0) + ++*pos; return map; } static void *bpf_map_seq_next(struct seq_file *seq, void *v, loff_t *pos) { struct bpf_iter_seq_map_info *info = seq->private; - struct bpf_map *map; ++*pos; - ++info->mid; + ++info->map_id; bpf_map_put((struct bpf_map *)v); - map = bpf_map_get_curr_or_next(&info->mid); - if (!map) - return NULL; - - return map; + return bpf_map_get_curr_or_next(&info->map_id); } struct bpf_iter__bpf_map { --- linux-azure-5.8-5.8.0.orig/kernel/bpf/percpu_freelist.c +++ linux-azure-5.8-5.8.0/kernel/bpf/percpu_freelist.c @@ -17,6 +17,8 @@ raw_spin_lock_init(&head->lock); head->first = NULL; } + raw_spin_lock_init(&s->extralist.lock); + s->extralist.first = NULL; return 0; } @@ -40,12 +42,50 @@ raw_spin_unlock(&head->lock); } +static inline bool pcpu_freelist_try_push_extra(struct pcpu_freelist *s, + struct pcpu_freelist_node *node) +{ + if (!raw_spin_trylock(&s->extralist.lock)) + return false; + + pcpu_freelist_push_node(&s->extralist, node); + raw_spin_unlock(&s->extralist.lock); + return true; +} + +static inline void ___pcpu_freelist_push_nmi(struct pcpu_freelist *s, + struct pcpu_freelist_node *node) +{ + int cpu, orig_cpu; + + orig_cpu = cpu = raw_smp_processor_id(); + while (1) { + struct pcpu_freelist_head *head; + + head = per_cpu_ptr(s->freelist, cpu); + if (raw_spin_trylock(&head->lock)) { + pcpu_freelist_push_node(head, node); + raw_spin_unlock(&head->lock); + return; + } + cpu = cpumask_next(cpu, cpu_possible_mask); + if (cpu >= nr_cpu_ids) + cpu = 0; + + /* cannot lock any per cpu lock, try extralist */ + if (cpu == orig_cpu && + pcpu_freelist_try_push_extra(s, node)) + return; + } +} + void __pcpu_freelist_push(struct pcpu_freelist *s, struct pcpu_freelist_node *node) { - struct pcpu_freelist_head *head = this_cpu_ptr(s->freelist); - - ___pcpu_freelist_push(head, node); + if (in_nmi()) + ___pcpu_freelist_push_nmi(s, node); + else + ___pcpu_freelist_push(this_cpu_ptr(s->freelist), node); } void pcpu_freelist_push(struct pcpu_freelist *s, @@ -81,7 +121,7 @@ } } -struct pcpu_freelist_node *__pcpu_freelist_pop(struct pcpu_freelist *s) +static struct pcpu_freelist_node *___pcpu_freelist_pop(struct pcpu_freelist *s) { struct pcpu_freelist_head *head; struct pcpu_freelist_node *node; @@ -102,8 +142,59 @@ if (cpu >= nr_cpu_ids) cpu = 0; if (cpu == orig_cpu) - return NULL; + break; + } + + /* per cpu lists are all empty, try extralist */ + raw_spin_lock(&s->extralist.lock); + node = s->extralist.first; + if (node) + s->extralist.first = node->next; + raw_spin_unlock(&s->extralist.lock); + return node; +} + +static struct pcpu_freelist_node * +___pcpu_freelist_pop_nmi(struct pcpu_freelist *s) +{ + struct pcpu_freelist_head *head; + struct pcpu_freelist_node *node; + int orig_cpu, cpu; + + orig_cpu = cpu = raw_smp_processor_id(); + while (1) { + head = per_cpu_ptr(s->freelist, cpu); + if (raw_spin_trylock(&head->lock)) { + node = head->first; + if (node) { + head->first = node->next; + raw_spin_unlock(&head->lock); + return node; + } + raw_spin_unlock(&head->lock); + } + cpu = cpumask_next(cpu, cpu_possible_mask); + if (cpu >= nr_cpu_ids) + cpu = 0; + if (cpu == orig_cpu) + break; } + + /* cannot pop from per cpu lists, try extralist */ + if (!raw_spin_trylock(&s->extralist.lock)) + return NULL; + node = s->extralist.first; + if (node) + s->extralist.first = node->next; + raw_spin_unlock(&s->extralist.lock); + return node; +} + +struct pcpu_freelist_node *__pcpu_freelist_pop(struct pcpu_freelist *s) +{ + if (in_nmi()) + return ___pcpu_freelist_pop_nmi(s); + return ___pcpu_freelist_pop(s); } struct pcpu_freelist_node *pcpu_freelist_pop(struct pcpu_freelist *s) --- linux-azure-5.8-5.8.0.orig/kernel/bpf/percpu_freelist.h +++ linux-azure-5.8-5.8.0/kernel/bpf/percpu_freelist.h @@ -13,6 +13,7 @@ struct pcpu_freelist { struct pcpu_freelist_head __percpu *freelist; + struct pcpu_freelist_head extralist; }; struct pcpu_freelist_node { --- linux-azure-5.8-5.8.0.orig/kernel/bpf/stackmap.c +++ linux-azure-5.8-5.8.0/kernel/bpf/stackmap.c @@ -114,6 +114,8 @@ /* hash table size must be power of 2 */ n_buckets = roundup_pow_of_two(attr->max_entries); + if (!n_buckets) + return ERR_PTR(-E2BIG); cost = n_buckets * sizeof(struct stack_map_bucket *) + sizeof(*smap); cost += n_buckets * (value_size + sizeof(struct stack_map_bucket)); --- linux-azure-5.8-5.8.0.orig/kernel/bpf/syscall.c +++ linux-azure-5.8-5.8.0/kernel/bpf/syscall.c @@ -2629,7 +2629,7 @@ u32 ulen = info->raw_tracepoint.tp_name_len; size_t tp_len = strlen(tp_name); - if (ulen && !ubuf) + if (!ulen ^ !ubuf) return -EINVAL; info->raw_tracepoint.tp_name_len = tp_len + 1; --- linux-azure-5.8-5.8.0.orig/kernel/bpf/sysfs_btf.c +++ linux-azure-5.8-5.8.0/kernel/bpf/sysfs_btf.c @@ -30,15 +30,15 @@ static int __init btf_vmlinux_init(void) { - if (!__start_BTF) + bin_attr_btf_vmlinux.size = __stop_BTF - __start_BTF; + + if (!__start_BTF || bin_attr_btf_vmlinux.size == 0) return 0; btf_kobj = kobject_create_and_add("btf", kernel_kobj); if (!btf_kobj) return -ENOMEM; - bin_attr_btf_vmlinux.size = __stop_BTF - __start_BTF; - return sysfs_create_bin_file(btf_kobj, &bin_attr_btf_vmlinux); } --- linux-azure-5.8-5.8.0.orig/kernel/bpf/task_iter.c +++ linux-azure-5.8-5.8.0/kernel/bpf/task_iter.c @@ -28,8 +28,9 @@ rcu_read_lock(); retry: - pid = idr_get_next(&ns->idr, tid); + pid = find_ge_pid(*tid, ns); if (pid) { + *tid = pid_nr_ns(pid, ns); task = get_pid_task(pid, PIDTYPE_PID); if (!task) { ++*tid; @@ -50,7 +51,8 @@ if (!task) return NULL; - ++*pos; + if (*pos == 0) + ++*pos; return task; } @@ -126,8 +128,7 @@ }; static struct file * -task_file_seq_get_next(struct bpf_iter_seq_task_file_info *info, - struct task_struct **task, struct files_struct **fstruct) +task_file_seq_get_next(struct bpf_iter_seq_task_file_info *info) { struct pid_namespace *ns = info->common.ns; u32 curr_tid = info->tid, max_fds; @@ -140,26 +141,29 @@ * Otherwise, it does not hold any reference. */ again: - if (*task) { - curr_task = *task; - curr_files = *fstruct; + if (info->task) { + curr_task = info->task; + curr_files = info->files; curr_fd = info->fd; } else { curr_task = task_seq_get_next(ns, &curr_tid); - if (!curr_task) + if (!curr_task) { + info->task = NULL; + info->files = NULL; + info->tid = curr_tid; return NULL; + } curr_files = get_files_struct(curr_task); if (!curr_files) { put_task_struct(curr_task); - curr_tid = ++(info->tid); + curr_tid = curr_tid + 1; info->fd = 0; goto again; } - /* set *fstruct, *task and info->tid */ - *fstruct = curr_files; - *task = curr_task; + info->files = curr_files; + info->task = curr_task; if (curr_tid == info->tid) { curr_fd = info->fd; } else { @@ -176,10 +180,11 @@ f = fcheck_files(curr_files, curr_fd); if (!f) continue; + if (!get_file_rcu(f)) + continue; /* set info->fd */ info->fd = curr_fd; - get_file(f); rcu_read_unlock(); return f; } @@ -188,8 +193,8 @@ rcu_read_unlock(); put_files_struct(curr_files); put_task_struct(curr_task); - *task = NULL; - *fstruct = NULL; + info->task = NULL; + info->files = NULL; info->fd = 0; curr_tid = ++(info->tid); goto again; @@ -198,20 +203,13 @@ static void *task_file_seq_start(struct seq_file *seq, loff_t *pos) { struct bpf_iter_seq_task_file_info *info = seq->private; - struct files_struct *files = NULL; - struct task_struct *task = NULL; struct file *file; - file = task_file_seq_get_next(info, &task, &files); - if (!file) { - info->files = NULL; - info->task = NULL; - return NULL; - } - - ++*pos; - info->task = task; - info->files = files; + info->task = NULL; + info->files = NULL; + file = task_file_seq_get_next(info); + if (file && *pos == 0) + ++*pos; return file; } @@ -219,24 +217,11 @@ static void *task_file_seq_next(struct seq_file *seq, void *v, loff_t *pos) { struct bpf_iter_seq_task_file_info *info = seq->private; - struct files_struct *files = info->files; - struct task_struct *task = info->task; - struct file *file; ++*pos; ++info->fd; fput((struct file *)v); - file = task_file_seq_get_next(info, &task, &files); - if (!file) { - info->files = NULL; - info->task = NULL; - return NULL; - } - - info->task = task; - info->files = files; - - return file; + return task_file_seq_get_next(info); } struct bpf_iter__task_file { --- linux-azure-5.8-5.8.0.orig/kernel/bpf/verifier.c +++ linux-azure-5.8-5.8.0/kernel/bpf/verifier.c @@ -1267,9 +1267,7 @@ static bool __reg64_bound_s32(s64 a) { - if (a > S32_MIN && a < S32_MAX) - return true; - return false; + return a > S32_MIN && a < S32_MAX; } static bool __reg64_bound_u32(u64 a) @@ -1283,10 +1281,10 @@ { __mark_reg32_unbounded(reg); - if (__reg64_bound_s32(reg->smin_value)) + if (__reg64_bound_s32(reg->smin_value) && __reg64_bound_s32(reg->smax_value)) { reg->s32_min_value = (s32)reg->smin_value; - if (__reg64_bound_s32(reg->smax_value)) reg->s32_max_value = (s32)reg->smax_value; + } if (__reg64_bound_u32(reg->umin_value)) reg->u32_min_value = (u32)reg->umin_value; if (__reg64_bound_u32(reg->umax_value)) @@ -1470,6 +1468,10 @@ for (i = 0; i < insn_cnt; i++) { u8 code = insn[i].code; + if (code == (BPF_JMP | BPF_CALL) && + insn[i].imm == BPF_FUNC_tail_call && + insn[i].src_reg != BPF_PSEUDO_CALL) + subprog[cur_subprog].has_tail_call = true; if (BPF_CLASS(code) != BPF_JMP && BPF_CLASS(code) != BPF_JMP32) goto next; if (BPF_OP(code) == BPF_EXIT || BPF_OP(code) == BPF_CALL) @@ -2160,6 +2162,8 @@ case PTR_TO_XDP_SOCK: case PTR_TO_BTF_ID: case PTR_TO_BTF_ID_OR_NULL: + case PTR_TO_MEM: + case PTR_TO_MEM_OR_NULL: return true; default: return false; @@ -2951,6 +2955,31 @@ int ret_prog[MAX_CALL_FRAMES]; process_func: + /* protect against potential stack overflow that might happen when + * bpf2bpf calls get combined with tailcalls. Limit the caller's stack + * depth for such case down to 256 so that the worst case scenario + * would result in 8k stack size (32 which is tailcall limit * 256 = + * 8k). + * + * To get the idea what might happen, see an example: + * func1 -> sub rsp, 128 + * subfunc1 -> sub rsp, 256 + * tailcall1 -> add rsp, 256 + * func2 -> sub rsp, 192 (total stack size = 128 + 192 = 320) + * subfunc2 -> sub rsp, 64 + * subfunc22 -> sub rsp, 128 + * tailcall2 -> add rsp, 128 + * func3 -> sub rsp, 32 (total stack size 128 + 192 + 64 + 32 = 416) + * + * tailcall will unwind the current stack frame but it will not get rid + * of caller's stack as shown on the example above. + */ + if (idx && subprog[idx].has_tail_call && depth >= 256) { + verbose(env, + "tail_calls are not allowed when call stack of previous frames is %d bytes. Too large\n", + depth); + return -EACCES; + } /* round up to 32-bytes, since this is granularity * of interpreter stack size */ @@ -4385,8 +4414,9 @@ subprog); clear_caller_saved_regs(env, caller->regs); - /* All global functions return SCALAR_VALUE */ + /* All global functions return a 64-bit SCALAR_VALUE */ mark_reg_unknown(env, caller->regs, BPF_REG_0); + caller->regs[BPF_REG_0].subreg_def = DEF_NOT_SUBREG; /* continue with next insn after call */ return 0; @@ -4494,6 +4524,8 @@ ret_reg->smax_value = meta->msize_max_value; ret_reg->s32_max_value = meta->msize_max_value; + ret_reg->smin_value = -MAX_ERRNO; + ret_reg->s32_min_value = -MAX_ERRNO; __reg_deduce_bounds(ret_reg); __reg_bound_offset(ret_reg); __update_reg_bounds(ret_reg); @@ -4808,7 +4840,7 @@ return res < a; } -static bool signed_add32_overflows(s64 a, s64 b) +static bool signed_add32_overflows(s32 a, s32 b) { /* Do the add in u32, where overflow is well-defined */ s32 res = (s32)((u32)a + (u32)b); @@ -4818,7 +4850,7 @@ return res < a; } -static bool signed_sub_overflows(s32 a, s32 b) +static bool signed_sub_overflows(s64 a, s64 b) { /* Do the sub in u64, where overflow is well-defined */ s64 res = (s64)((u64)a - (u64)b); @@ -4830,7 +4862,7 @@ static bool signed_sub32_overflows(s32 a, s32 b) { - /* Do the sub in u64, where overflow is well-defined */ + /* Do the sub in u32, where overflow is well-defined */ s32 res = (s32)((u32)a - (u32)b); if (b < 0) @@ -4883,10 +4915,14 @@ { bool mask_to_left = (opcode == BPF_ADD && off_is_neg) || (opcode == BPF_SUB && !off_is_neg); - u32 off; + u32 off, max; switch (ptr_reg->type) { case PTR_TO_STACK: + /* Offset 0 is out-of-bounds, but acceptable start for the + * left direction, see BPF_REG_FP. + */ + max = MAX_BPF_STACK + mask_to_left; /* Indirect variable offset stack access is prohibited in * unprivileged mode so it's not handled here. */ @@ -4894,16 +4930,17 @@ if (mask_to_left) *ptr_limit = MAX_BPF_STACK + off; else - *ptr_limit = -off; - return 0; + *ptr_limit = -off - 1; + return *ptr_limit >= max ? -ERANGE : 0; case PTR_TO_MAP_VALUE: + max = ptr_reg->map_ptr->value_size; if (mask_to_left) { *ptr_limit = ptr_reg->umax_value + ptr_reg->off; } else { off = ptr_reg->smin_value + ptr_reg->off; - *ptr_limit = ptr_reg->map_ptr->value_size - off; + *ptr_limit = ptr_reg->map_ptr->value_size - off - 1; } - return 0; + return *ptr_limit >= max ? -ERANGE : 0; default: return -EINVAL; } @@ -4956,6 +4993,7 @@ u32 alu_state, alu_limit; struct bpf_reg_state tmp; bool ret; + int err; if (can_skip_alu_sanitation(env, insn)) return 0; @@ -4971,10 +5009,13 @@ alu_state |= ptr_is_dst_reg ? BPF_ALU_SANITIZE_SRC : BPF_ALU_SANITIZE_DST; - if (retrieve_ptr_limit(ptr_reg, &alu_limit, opcode, off_is_neg)) - return 0; - if (update_alu_sanitation_state(aux, alu_state, alu_limit)) - return -EACCES; + err = retrieve_ptr_limit(ptr_reg, &alu_limit, opcode, off_is_neg); + if (err < 0) + return err; + + err = update_alu_sanitation_state(aux, alu_state, alu_limit); + if (err < 0) + return err; do_sim: /* Simulate and find potential out-of-bounds access under * speculative execution from truncation as a result of @@ -5042,6 +5083,10 @@ dst, reg_type_str[ptr_reg->type]); return -EACCES; case CONST_PTR_TO_MAP: + /* smin_val represents the known value */ + if (known && smin_val == 0 && opcode == BPF_ADD) + break; + /* fall-through */ case PTR_TO_PACKET_END: case PTR_TO_SOCKET: case PTR_TO_SOCKET_OR_NULL: @@ -5081,7 +5126,7 @@ case BPF_ADD: ret = sanitize_ptr_alu(env, insn, ptr_reg, dst_reg, smin_val < 0); if (ret < 0) { - verbose(env, "R%d tried to add from different maps or paths\n", dst); + verbose(env, "R%d tried to add from different maps, paths, or prohibited types\n", dst); return ret; } /* We can take a fixed offset as long as it doesn't overflow @@ -5136,7 +5181,7 @@ case BPF_SUB: ret = sanitize_ptr_alu(env, insn, ptr_reg, dst_reg, smin_val < 0); if (ret < 0) { - verbose(env, "R%d tried to sub from different maps or paths\n", dst); + verbose(env, "R%d tried to sub from different maps, paths, or prohibited types\n", dst); return ret; } if (dst_reg == off_reg) { @@ -5490,8 +5535,8 @@ bool src_known = tnum_subreg_is_const(src_reg->var_off); bool dst_known = tnum_subreg_is_const(dst_reg->var_off); struct tnum var32_off = tnum_subreg(dst_reg->var_off); - s32 smin_val = src_reg->smin_value; - u32 umin_val = src_reg->umin_value; + s32 smin_val = src_reg->s32_min_value; + u32 umin_val = src_reg->u32_min_value; /* Assuming scalar64_min_max_or will be called so it is safe * to skip updating register for known case. @@ -5514,8 +5559,8 @@ /* ORing two positives gives a positive, so safe to * cast result into s64. */ - dst_reg->s32_min_value = dst_reg->umin_value; - dst_reg->s32_max_value = dst_reg->umax_value; + dst_reg->s32_min_value = dst_reg->u32_min_value; + dst_reg->s32_max_value = dst_reg->u32_max_value; } } @@ -6284,7 +6329,7 @@ case BPF_JSGT: if (reg->s32_min_value > sval) return 1; - else if (reg->s32_max_value < sval) + else if (reg->s32_max_value <= sval) return 0; break; case BPF_JLT: @@ -6357,7 +6402,7 @@ case BPF_JSGT: if (reg->smin_value > sval) return 1; - else if (reg->smax_value < sval) + else if (reg->smax_value <= sval) return 0; break; case BPF_JLT: @@ -7820,7 +7865,11 @@ return old->umin_value <= cur->umin_value && old->umax_value >= cur->umax_value && old->smin_value <= cur->smin_value && - old->smax_value >= cur->smax_value; + old->smax_value >= cur->smax_value && + old->u32_min_value <= cur->u32_min_value && + old->u32_max_value >= cur->u32_max_value && + old->s32_min_value <= cur->s32_min_value && + old->s32_max_value >= cur->s32_max_value; } /* Maximum number of register states that can exist at once */ @@ -10033,30 +10082,30 @@ insn->code == (BPF_ALU | BPF_MOD | BPF_X) || insn->code == (BPF_ALU | BPF_DIV | BPF_X)) { bool is64 = BPF_CLASS(insn->code) == BPF_ALU64; - struct bpf_insn mask_and_div[] = { - BPF_MOV32_REG(insn->src_reg, insn->src_reg), - /* Rx div 0 -> 0 */ - BPF_JMP_IMM(BPF_JNE, insn->src_reg, 0, 2), + bool isdiv = BPF_OP(insn->code) == BPF_DIV; + struct bpf_insn *patchlet; + struct bpf_insn chk_and_div[] = { + /* [R,W]x div 0 -> 0 */ + BPF_RAW_INSN((is64 ? BPF_JMP : BPF_JMP32) | + BPF_JNE | BPF_K, insn->src_reg, + 0, 2, 0), BPF_ALU32_REG(BPF_XOR, insn->dst_reg, insn->dst_reg), BPF_JMP_IMM(BPF_JA, 0, 0, 1), *insn, }; - struct bpf_insn mask_and_mod[] = { - BPF_MOV32_REG(insn->src_reg, insn->src_reg), - /* Rx mod 0 -> Rx */ - BPF_JMP_IMM(BPF_JEQ, insn->src_reg, 0, 1), + struct bpf_insn chk_and_mod[] = { + /* [R,W]x mod 0 -> [R,W]x */ + BPF_RAW_INSN((is64 ? BPF_JMP : BPF_JMP32) | + BPF_JEQ | BPF_K, insn->src_reg, + 0, 1 + (is64 ? 0 : 1), 0), *insn, + BPF_JMP_IMM(BPF_JA, 0, 0, 1), + BPF_MOV32_REG(insn->dst_reg, insn->dst_reg), }; - struct bpf_insn *patchlet; - if (insn->code == (BPF_ALU64 | BPF_DIV | BPF_X) || - insn->code == (BPF_ALU | BPF_DIV | BPF_X)) { - patchlet = mask_and_div + (is64 ? 1 : 0); - cnt = ARRAY_SIZE(mask_and_div) - (is64 ? 1 : 0); - } else { - patchlet = mask_and_mod + (is64 ? 1 : 0); - cnt = ARRAY_SIZE(mask_and_mod) - (is64 ? 1 : 0); - } + patchlet = isdiv ? chk_and_div : chk_and_mod; + cnt = isdiv ? ARRAY_SIZE(chk_and_div) : + ARRAY_SIZE(chk_and_mod) - (is64 ? 2 : 0); new_prog = bpf_patch_insn_data(env, i + delta, patchlet, cnt); if (!new_prog) @@ -10108,7 +10157,7 @@ off_reg = issrc ? insn->src_reg : insn->dst_reg; if (isneg) *patch++ = BPF_ALU64_IMM(BPF_MUL, off_reg, -1); - *patch++ = BPF_MOV32_IMM(BPF_REG_AX, aux->alu_limit - 1); + *patch++ = BPF_MOV32_IMM(BPF_REG_AX, aux->alu_limit); *patch++ = BPF_ALU64_REG(BPF_SUB, BPF_REG_AX, off_reg); *patch++ = BPF_ALU64_REG(BPF_OR, BPF_REG_AX, off_reg); *patch++ = BPF_ALU64_IMM(BPF_NEG, BPF_REG_AX, 0); @@ -10862,6 +10911,11 @@ } if (prog->expected_attach_type == BPF_MODIFY_RETURN) { + if (tgt_prog) { + verbose(env, "can't modify return codes of BPF programs\n"); + ret = -EINVAL; + goto out; + } ret = check_attach_modify_return(prog, addr); if (ret) verbose(env, "%s() is not modifiable\n", --- linux-azure-5.8-5.8.0.orig/kernel/cgroup/cgroup-v1.c +++ linux-azure-5.8-5.8.0/kernel/cgroup/cgroup-v1.c @@ -908,6 +908,8 @@ opt = fs_parse(fc, cgroup1_fs_parameters, param, &result); if (opt == -ENOPARAM) { if (strcmp(param->key, "source") == 0) { + if (fc->source) + return invalf(fc, "Multiple sources not supported"); fc->source = param->string; param->string = NULL; return 0; @@ -915,6 +917,9 @@ for_each_subsys(ss, i) { if (strcmp(param->key, ss->legacy_name)) continue; + if (!cgroup_ssid_enabled(i) || cgroup1_ssid_disabled(i)) + return invalfc(fc, "Disabled controller '%s'", + param->key); ctx->subsys_mask |= (1 << i); return 0; } --- linux-azure-5.8-5.8.0.orig/kernel/cgroup/cgroup.c +++ linux-azure-5.8-5.8.0/kernel/cgroup/cgroup.c @@ -3568,6 +3568,7 @@ { struct psi_trigger *new; struct cgroup *cgrp; + struct psi_group *psi; cgrp = cgroup_kn_lock_live(of->kn, false); if (!cgrp) @@ -3576,7 +3577,8 @@ cgroup_get(cgrp); cgroup_kn_unlock(of->kn); - new = psi_trigger_create(&cgrp->psi, buf, nbytes, res); + psi = cgroup_ino(cgrp) == 1 ? &psi_system : &cgrp->psi; + new = psi_trigger_create(psi, buf, nbytes, res); if (IS_ERR(new)) { cgroup_put(cgrp); return PTR_ERR(new); --- linux-azure-5.8-5.8.0.orig/kernel/cgroup/cpuset.c +++ linux-azure-5.8-5.8.0/kernel/cgroup/cpuset.c @@ -983,25 +983,48 @@ */ static void rebuild_sched_domains_locked(void) { + struct cgroup_subsys_state *pos_css; struct sched_domain_attr *attr; cpumask_var_t *doms; + struct cpuset *cs; int ndoms; lockdep_assert_cpus_held(); percpu_rwsem_assert_held(&cpuset_rwsem); /* - * We have raced with CPU hotplug. Don't do anything to avoid + * If we have raced with CPU hotplug, return early to avoid * passing doms with offlined cpu to partition_sched_domains(). - * Anyways, hotplug work item will rebuild sched domains. + * Anyways, cpuset_hotplug_workfn() will rebuild sched domains. + * + * With no CPUs in any subpartitions, top_cpuset's effective CPUs + * should be the same as the active CPUs, so checking only top_cpuset + * is enough to detect racing CPU offlines. */ if (!top_cpuset.nr_subparts_cpus && !cpumask_equal(top_cpuset.effective_cpus, cpu_active_mask)) return; - if (top_cpuset.nr_subparts_cpus && - !cpumask_subset(top_cpuset.effective_cpus, cpu_active_mask)) - return; + /* + * With subpartition CPUs, however, the effective CPUs of a partition + * root should be only a subset of the active CPUs. Since a CPU in any + * partition root could be offlined, all must be checked. + */ + if (top_cpuset.nr_subparts_cpus) { + rcu_read_lock(); + cpuset_for_each_descendant_pre(cs, pos_css, &top_cpuset) { + if (!is_partition_root(cs)) { + pos_css = css_rightmost_descendant(pos_css); + continue; + } + if (!cpumask_subset(cs->effective_cpus, + cpu_active_mask)) { + rcu_read_unlock(); + return; + } + } + rcu_read_unlock(); + } /* Generate domain masks and attrs */ ndoms = generate_sched_domains(&doms, &attr); --- linux-azure-5.8-5.8.0.orig/kernel/cpu.c +++ linux-azure-5.8-5.8.0/kernel/cpu.c @@ -815,6 +815,10 @@ } #ifdef CONFIG_HOTPLUG_CPU +#ifndef arch_clear_mm_cpumask_cpu +#define arch_clear_mm_cpumask_cpu(cpu, mm) cpumask_clear_cpu(cpu, mm_cpumask(mm)) +#endif + /** * clear_tasks_mm_cpumask - Safely clear tasks' mm_cpumask for a CPU * @cpu: a CPU id @@ -850,7 +854,7 @@ t = find_lock_task_mm(p); if (!t) continue; - cpumask_clear_cpu(cpu, mm_cpumask(t->mm)); + arch_clear_mm_cpumask_cpu(cpu, t->mm); task_unlock(t); } rcu_read_unlock(); --- linux-azure-5.8-5.8.0.orig/kernel/cred.c +++ linux-azure-5.8-5.8.0/kernel/cred.c @@ -733,14 +733,14 @@ /** * set_security_override - Set the security ID in a set of credentials * @new: The credentials to alter - * @secid: The LSM security ID to set + * @blob: The LSM security information to set * * Set the LSM security ID in a set of credentials so that the subjective * security is overridden when an alternative set of credentials is used. */ -int set_security_override(struct cred *new, u32 secid) +int set_security_override(struct cred *new, struct lsmblob *blob) { - return security_kernel_act_as(new, secid); + return security_kernel_act_as(new, blob); } EXPORT_SYMBOL(set_security_override); @@ -756,14 +756,14 @@ */ int set_security_override_from_ctx(struct cred *new, const char *secctx) { - u32 secid; + struct lsmblob blob; int ret; - ret = security_secctx_to_secid(secctx, strlen(secctx), &secid); + ret = security_secctx_to_secid(secctx, strlen(secctx), &blob); if (ret < 0) return ret; - return set_security_override(new, secid); + return set_security_override(new, &blob); } EXPORT_SYMBOL(set_security_override_from_ctx); --- linux-azure-5.8-5.8.0.orig/kernel/debug/debug_core.c +++ linux-azure-5.8-5.8.0/kernel/debug/debug_core.c @@ -94,14 +94,6 @@ /* Use kdb or gdbserver mode */ int dbg_kdb_mode = 1; -static int __init opt_kgdb_con(char *str) -{ - kgdb_use_con = 1; - return 0; -} - -early_param("kgdbcon", opt_kgdb_con); - module_param(kgdb_use_con, int, 0644); module_param(kgdbreboot, int, 0644); @@ -451,6 +443,17 @@ return 0; } +void kgdb_free_init_mem(void) +{ + int i; + + /* Clear init memory breakpoints. */ + for (i = 0; i < KGDB_MAX_BREAKPOINTS; i++) { + if (init_section_contains((void *)kgdb_break[i].bpt_addr, 0)) + kgdb_break[i].state = BP_UNDEFINED; + } +} + #ifdef CONFIG_KGDB_KDB void kdb_dump_stack_on_cpu(int cpu) { @@ -920,6 +923,20 @@ .index = -1, }; +static int __init opt_kgdb_con(char *str) +{ + kgdb_use_con = 1; + + if (kgdb_io_module_registered && !kgdb_con_registered) { + register_console(&kgdbcons); + kgdb_con_registered = 1; + } + + return 0; +} + +early_param("kgdbcon", opt_kgdb_con); + #ifdef CONFIG_MAGIC_SYSRQ static void sysrq_handle_dbg(int key) { --- linux-azure-5.8-5.8.0.orig/kernel/debug/kdb/kdb_io.c +++ linux-azure-5.8-5.8.0/kernel/debug/kdb/kdb_io.c @@ -706,12 +706,16 @@ size_avail = sizeof(kdb_buffer) - len; goto kdb_print_out; } - if (kdb_grepping_flag >= KDB_GREPPING_FLAG_SEARCH) + if (kdb_grepping_flag >= KDB_GREPPING_FLAG_SEARCH) { /* * This was a interactive search (using '/' at more - * prompt) and it has completed. Clear the flag. + * prompt) and it has completed. Replace the \0 with + * its original value to ensure multi-line strings + * are handled properly, and return to normal mode. */ + *cphold = replaced_byte; kdb_grepping_flag = 0; + } /* * at this point the string is a full line and * should be printed, up to the null. --- linux-azure-5.8-5.8.0.orig/kernel/debug/kdb/kdb_private.h +++ linux-azure-5.8-5.8.0/kernel/debug/kdb/kdb_private.h @@ -234,7 +234,7 @@ #define kdb_do_each_thread(g, p) do_each_thread(g, p) #define kdb_while_each_thread(g, p) while_each_thread(g, p) -#define GFP_KDB (in_interrupt() ? GFP_ATOMIC : GFP_KERNEL) +#define GFP_KDB (in_dbg_master() ? GFP_ATOMIC : GFP_KERNEL) extern void *debug_kmalloc(size_t size, gfp_t flags); extern void debug_kfree(void *); --- linux-azure-5.8-5.8.0.orig/kernel/dma/direct.c +++ linux-azure-5.8-5.8.0/kernel/dma/direct.c @@ -45,7 +45,7 @@ return (1ULL << (fls64(max_dma) - 1)) * 2 - 1; } -gfp_t dma_direct_optimal_gfp_mask(struct device *dev, u64 dma_mask, +static gfp_t dma_direct_optimal_gfp_mask(struct device *dev, u64 dma_mask, u64 *phys_limit) { u64 dma_limit = min_not_zero(dma_mask, dev->bus_dma_limit); @@ -70,7 +70,7 @@ return 0; } -bool dma_coherent_ok(struct device *dev, phys_addr_t phys, size_t size) +static bool dma_coherent_ok(struct device *dev, phys_addr_t phys, size_t size) { return phys_to_dma_direct(dev, phys) + size - 1 <= min_not_zero(dev->coherent_dma_mask, dev->bus_dma_limit); @@ -163,8 +163,13 @@ size = PAGE_ALIGN(size); if (dma_should_alloc_from_pool(dev, gfp, attrs)) { - ret = dma_alloc_from_pool(dev, size, &page, gfp); - if (!ret) + u64 phys_mask; + + gfp |= dma_direct_optimal_gfp_mask(dev, dev->coherent_dma_mask, + &phys_mask); + page = dma_alloc_from_pool(dev, size, &ret, gfp, + dma_coherent_ok); + if (!page) return NULL; goto done; } --- linux-azure-5.8-5.8.0.orig/kernel/dma/pool.c +++ linux-azure-5.8-5.8.0/kernel/dma/pool.c @@ -3,7 +3,9 @@ * Copyright (C) 2012 ARM Ltd. * Copyright (C) 2020 Google LLC */ +#include #include +#include #include #include #include @@ -55,11 +57,34 @@ pool_size_kernel += size; } +static bool cma_in_zone(gfp_t gfp) +{ + unsigned long size; + phys_addr_t end; + struct cma *cma; + + cma = dev_get_cma_area(NULL); + if (!cma) + return false; + + size = cma_get_size(cma); + if (!size) + return false; + + /* CMA can't cross zone boundaries, see cma_activate_area() */ + end = cma_get_base(cma) + size - 1; + if (IS_ENABLED(CONFIG_ZONE_DMA) && (gfp & GFP_DMA)) + return end <= DMA_BIT_MASK(zone_dma_bits); + if (IS_ENABLED(CONFIG_ZONE_DMA32) && (gfp & GFP_DMA32)) + return end <= DMA_BIT_MASK(32); + return true; +} + static int atomic_pool_expand(struct gen_pool *pool, size_t pool_size, gfp_t gfp) { unsigned int order; - struct page *page; + struct page *page = NULL; void *addr; int ret = -ENOMEM; @@ -68,7 +93,11 @@ do { pool_size = 1 << (PAGE_SHIFT + order); - page = alloc_pages(gfp, order); + if (cma_in_zone(gfp)) + page = dma_alloc_from_contiguous(NULL, 1 << order, + order, false); + if (!page) + page = alloc_pages(gfp, order); } while (!page && order-- > 0); if (!page) goto out; @@ -196,93 +225,75 @@ } postcore_initcall(dma_atomic_pool_init); -static inline struct gen_pool *dma_guess_pool_from_device(struct device *dev) +static inline struct gen_pool *dma_guess_pool(struct gen_pool *prev, gfp_t gfp) { - u64 phys_mask; - gfp_t gfp; - - gfp = dma_direct_optimal_gfp_mask(dev, dev->coherent_dma_mask, - &phys_mask); - if (IS_ENABLED(CONFIG_ZONE_DMA) && gfp == GFP_DMA) + if (prev == NULL) { + if (IS_ENABLED(CONFIG_ZONE_DMA32) && (gfp & GFP_DMA32)) + return atomic_pool_dma32; + if (IS_ENABLED(CONFIG_ZONE_DMA) && (gfp & GFP_DMA)) + return atomic_pool_dma; + return atomic_pool_kernel; + } + if (prev == atomic_pool_kernel) + return atomic_pool_dma32 ? atomic_pool_dma32 : atomic_pool_dma; + if (prev == atomic_pool_dma32) return atomic_pool_dma; - if (IS_ENABLED(CONFIG_ZONE_DMA32) && gfp == GFP_DMA32) - return atomic_pool_dma32; - return atomic_pool_kernel; + return NULL; } -static inline struct gen_pool *dma_get_safer_pool(struct gen_pool *bad_pool) +static struct page *__dma_alloc_from_pool(struct device *dev, size_t size, + struct gen_pool *pool, void **cpu_addr, + bool (*phys_addr_ok)(struct device *, phys_addr_t, size_t)) { - if (bad_pool == atomic_pool_kernel) - return atomic_pool_dma32 ? : atomic_pool_dma; + unsigned long addr; + phys_addr_t phys; - if (bad_pool == atomic_pool_dma32) - return atomic_pool_dma; + addr = gen_pool_alloc(pool, size); + if (!addr) + return NULL; - return NULL; -} + phys = gen_pool_virt_to_phys(pool, addr); + if (phys_addr_ok && !phys_addr_ok(dev, phys, size)) { + gen_pool_free(pool, addr, size); + return NULL; + } -static inline struct gen_pool *dma_guess_pool(struct device *dev, - struct gen_pool *bad_pool) -{ - if (bad_pool) - return dma_get_safer_pool(bad_pool); + if (gen_pool_avail(pool) < atomic_pool_size) + schedule_work(&atomic_pool_work); - return dma_guess_pool_from_device(dev); + *cpu_addr = (void *)addr; + memset(*cpu_addr, 0, size); + return pfn_to_page(__phys_to_pfn(phys)); } -void *dma_alloc_from_pool(struct device *dev, size_t size, - struct page **ret_page, gfp_t flags) +struct page *dma_alloc_from_pool(struct device *dev, size_t size, + void **cpu_addr, gfp_t gfp, + bool (*phys_addr_ok)(struct device *, phys_addr_t, size_t)) { struct gen_pool *pool = NULL; - unsigned long val = 0; - void *ptr = NULL; - phys_addr_t phys; - - while (1) { - pool = dma_guess_pool(dev, pool); - if (!pool) { - WARN(1, "Failed to get suitable pool for %s\n", - dev_name(dev)); - break; - } - - val = gen_pool_alloc(pool, size); - if (!val) - continue; - - phys = gen_pool_virt_to_phys(pool, val); - if (dma_coherent_ok(dev, phys, size)) - break; - - gen_pool_free(pool, val, size); - val = 0; - } - - - if (val) { - *ret_page = pfn_to_page(__phys_to_pfn(phys)); - ptr = (void *)val; - memset(ptr, 0, size); + struct page *page; - if (gen_pool_avail(pool) < atomic_pool_size) - schedule_work(&atomic_pool_work); + while ((pool = dma_guess_pool(pool, gfp))) { + page = __dma_alloc_from_pool(dev, size, pool, cpu_addr, + phys_addr_ok); + if (page) + return page; } - return ptr; + WARN(1, "Failed to get suitable pool for %s\n", dev_name(dev)); + return NULL; } bool dma_free_from_pool(struct device *dev, void *start, size_t size) { struct gen_pool *pool = NULL; - while (1) { - pool = dma_guess_pool(dev, pool); - if (!pool) - return false; - - if (gen_pool_has_addr(pool, (unsigned long)start, size)) { - gen_pool_free(pool, (unsigned long)start, size); - return true; - } + while ((pool = dma_guess_pool(pool, 0))) { + if (!gen_pool_has_addr(pool, (unsigned long)start, size)) + continue; + gen_pool_free(pool, (unsigned long)start, size); + return true; } + + return false; } --- linux-azure-5.8-5.8.0.orig/kernel/dma/swiotlb.c +++ linux-azure-5.8-5.8.0/kernel/dma/swiotlb.c @@ -231,6 +231,7 @@ io_tlb_orig_addr[i] = INVALID_PHYS_ADDR; } io_tlb_index = 0; + no_iotlb_memory = false; if (verbose) swiotlb_print_info(); @@ -262,9 +263,11 @@ if (vstart && !swiotlb_init_with_tbl(vstart, io_tlb_nslabs, verbose)) return; - if (io_tlb_start) + if (io_tlb_start) { memblock_free_early(io_tlb_start, PAGE_ALIGN(io_tlb_nslabs << IO_TLB_SHIFT)); + io_tlb_start = 0; + } pr_warn("Cannot allocate buffer"); no_iotlb_memory = true; } @@ -362,6 +365,7 @@ io_tlb_orig_addr[i] = INVALID_PHYS_ADDR; } io_tlb_index = 0; + no_iotlb_memory = false; swiotlb_print_info(); --- linux-azure-5.8-5.8.0.orig/kernel/events/core.c +++ linux-azure-5.8-5.8.0/kernel/events/core.c @@ -99,7 +99,7 @@ * retry due to any failures in smp_call_function_single(), such as if the * task_cpu() goes offline concurrently. * - * returns @func return value or -ESRCH when the process isn't running + * returns @func return value or -ESRCH or -ENXIO when the process isn't running */ static int task_function_call(struct task_struct *p, remote_function_f func, void *info) @@ -115,7 +115,8 @@ for (;;) { ret = smp_call_function_single(task_cpu(p), remote_function, &data, 1); - ret = !ret ? data.ret : -EAGAIN; + if (!ret) + ret = data.ret; if (ret != -EAGAIN) break; @@ -406,8 +407,13 @@ * 0 - disallow raw tracepoint access for unpriv * 1 - disallow cpu events for unpriv * 2 - disallow kernel profiling for unpriv + * 4 - disallow all unpriv perf event use */ +#ifdef CONFIG_SECURITY_PERF_EVENTS_RESTRICT +int sysctl_perf_event_paranoid __read_mostly = PERF_SECURITY_MAX; +#else int sysctl_perf_event_paranoid __read_mostly = 2; +#endif /* Minimum for 512 kiB + 1 user control page */ int sysctl_perf_event_mlock __read_mostly = 512 + (PAGE_SIZE / 1024); /* 'free' kiB per user */ @@ -1310,7 +1316,7 @@ * function. * * Lock order: - * exec_update_mutex + * exec_update_lock * task_struct::perf_event_mutex * perf_event_context::mutex * perf_event::child_mutex; @@ -2549,11 +2555,8 @@ pmu->start_txn(pmu, PERF_PMU_TXN_ADD); - if (event_sched_in(group_event, cpuctx, ctx)) { - pmu->cancel_txn(pmu); - perf_mux_hrtimer_restart(cpuctx); - return -EAGAIN; - } + if (event_sched_in(group_event, cpuctx, ctx)) + goto error; /* * Schedule in siblings as one group (if any): @@ -2582,10 +2585,8 @@ } event_sched_out(group_event, cpuctx, ctx); +error: pmu->cancel_txn(pmu); - - perf_mux_hrtimer_restart(cpuctx); - return -EAGAIN; } @@ -3641,6 +3642,7 @@ *can_add_hw = 0; ctx->rotate_necessary = 1; + perf_mux_hrtimer_restart(cpuctx); } return 0; @@ -5851,11 +5853,11 @@ static void perf_mmap_close(struct vm_area_struct *vma) { struct perf_event *event = vma->vm_file->private_data; - struct perf_buffer *rb = ring_buffer_get(event); struct user_struct *mmap_user = rb->mmap_user; int mmap_locked = rb->mmap_locked; unsigned long size = perf_data_size(rb); + bool detach_rest = false; if (event->pmu->event_unmapped) event->pmu->event_unmapped(event, vma->vm_mm); @@ -5886,7 +5888,8 @@ mutex_unlock(&event->mmap_mutex); } - atomic_dec(&rb->mmap_count); + if (atomic_dec_and_test(&rb->mmap_count)) + detach_rest = true; if (!atomic_dec_and_mutex_lock(&event->mmap_count, &event->mmap_mutex)) goto out_put; @@ -5895,7 +5898,7 @@ mutex_unlock(&event->mmap_mutex); /* If there's still other mmap()s of this buffer, we're done. */ - if (atomic_read(&rb->mmap_count)) + if (!detach_rest) goto out_put; /* @@ -9939,6 +9942,7 @@ if (token == IF_SRC_FILE || token == IF_SRC_FILEADDR) { int fpos = token == IF_SRC_FILE ? 2 : 1; + kfree(filename); filename = match_strdup(&args[fpos]); if (!filename) { ret = -ENOMEM; @@ -9985,16 +9989,13 @@ */ ret = -EOPNOTSUPP; if (!event->ctx->task) - goto fail_free_name; + goto fail; /* look up the path and grab its inode */ ret = kern_path(filename, LOOKUP_FOLLOW, &filter->path); if (ret) - goto fail_free_name; - - kfree(filename); - filename = NULL; + goto fail; ret = -EINVAL; if (!filter->path.dentry || @@ -10014,13 +10015,13 @@ if (state != IF_STATE_ACTION) goto fail; + kfree(filename); kfree(orig); return 0; -fail_free_name: - kfree(filename); fail: + kfree(filename); free_filters_list(filters); kfree(orig); @@ -11503,6 +11504,9 @@ if (err) return err; + if (perf_paranoid_any() && !capable(CAP_SYS_ADMIN)) + return -EACCES; + err = perf_copy_attr(attr_uptr, &attr); if (err) return err; @@ -11582,14 +11586,14 @@ } if (task) { - err = mutex_lock_interruptible(&task->signal->exec_update_mutex); + err = down_read_interruptible(&task->signal->exec_update_lock); if (err) goto err_task; /* * Reuse ptrace permission checks for now. * - * We must hold exec_update_mutex across this and any potential + * We must hold exec_update_lock across this and any potential * perf_install_in_context() call for this new event to * serialize against exec() altering our credentials (and the * perf_event_exit_task() that could imply). @@ -11878,7 +11882,7 @@ mutex_unlock(&ctx->mutex); if (task) { - mutex_unlock(&task->signal->exec_update_mutex); + up_read(&task->signal->exec_update_lock); put_task_struct(task); } @@ -11914,7 +11918,7 @@ free_event(event); err_cred: if (task) - mutex_unlock(&task->signal->exec_update_mutex); + up_read(&task->signal->exec_update_lock); err_task: if (task) put_task_struct(task); @@ -12219,7 +12223,7 @@ /* * When a child task exits, feed back event values to parent events. * - * Can be called with exec_update_mutex held when called from + * Can be called with exec_update_lock held when called from * setup_new_exec(). */ void perf_event_exit_task(struct task_struct *child) --- linux-azure-5.8-5.8.0.orig/kernel/events/internal.h +++ linux-azure-5.8-5.8.0/kernel/events/internal.h @@ -211,7 +211,7 @@ rctx = 3; else if (in_irq()) rctx = 2; - else if (in_softirq()) + else if (in_serving_softirq()) rctx = 1; else rctx = 0; --- linux-azure-5.8-5.8.0.orig/kernel/events/uprobes.c +++ linux-azure-5.8-5.8.0/kernel/events/uprobes.c @@ -205,7 +205,7 @@ try_to_free_swap(old_page); page_vma_mapped_walk_done(&pvmw); - if (vma->vm_flags & VM_LOCKED) + if ((vma->vm_flags & VM_LOCKED) && !PageCompound(old_page)) munlock_vma_page(old_page); put_page(old_page); @@ -1823,7 +1823,7 @@ t->utask->dup_xol_addr = area->vaddr; init_task_work(&t->utask->dup_xol_work, dup_xol_work); - task_work_add(t, &t->utask->dup_xol_work, true); + task_work_add(t, &t->utask->dup_xol_work, TWA_RESUME); } /* --- linux-azure-5.8-5.8.0.orig/kernel/exit.c +++ linux-azure-5.8-5.8.0/kernel/exit.c @@ -63,6 +63,7 @@ #include #include #include +#include #include #include @@ -453,7 +454,10 @@ mmap_read_unlock(mm); self.task = current; - self.next = xchg(&core_state->dumper.next, &self); + if (self.task->flags & PF_SIGNALED) + self.next = xchg(&core_state->dumper.next, &self); + else + self.task = NULL; /* * Implies mb(), the result of xchg() must be visible * to core_state->dumper. @@ -758,6 +762,7 @@ schedule(); } + io_uring_files_cancel(tsk->files); exit_signals(tsk); /* sets PF_EXITING */ /* sync mm's RSS info before statistics gathering */ --- linux-azure-5.8-5.8.0.orig/kernel/fail_function.c +++ linux-azure-5.8-5.8.0/kernel/fail_function.c @@ -253,7 +253,7 @@ if (copy_from_user(buf, buffer, count)) { ret = -EFAULT; - goto out; + goto out_free; } buf[count] = '\0'; sym = strstrip(buf); @@ -307,8 +307,9 @@ ret = count; } out: - kfree(buf); mutex_unlock(&fei_lock); +out_free: + kfree(buf); return ret; } --- linux-azure-5.8-5.8.0.orig/kernel/fork.c +++ linux-azure-5.8-5.8.0/kernel/fork.c @@ -95,6 +95,7 @@ #include #include #include +#include #include #include @@ -106,6 +107,11 @@ #define CREATE_TRACE_POINTS #include +#ifdef CONFIG_USER_NS +extern int unprivileged_userns_clone; +#else +#define unprivileged_userns_clone 0 +#endif /* * Minimum number of threads to boot the kernel @@ -570,7 +576,7 @@ struct inode *inode = file_inode(file); struct address_space *mapping = file->f_mapping; - get_file(file); + vma_get_file(tmp); if (tmp->vm_flags & VM_DENYWRITE) atomic_dec(&inode->i_writecount); i_mmap_lock_write(mapping); @@ -745,6 +751,7 @@ WARN_ON(refcount_read(&tsk->usage)); WARN_ON(tsk == current); + io_uring_free(tsk); cgroup_free(tsk); task_numa_free(tsk, true); security_task_free(tsk); @@ -1131,6 +1138,7 @@ schedule_work(&mm->async_put_work); } } +EXPORT_SYMBOL(mmput_async); #endif /** @@ -1235,7 +1243,7 @@ struct mm_struct *mm; int err; - err = mutex_lock_killable(&task->signal->exec_update_mutex); + err = down_read_killable(&task->signal->exec_update_lock); if (err) return ERR_PTR(err); @@ -1245,7 +1253,7 @@ mmput(mm); mm = ERR_PTR(-EACCES); } - mutex_unlock(&task->signal->exec_update_mutex); + up_read(&task->signal->exec_update_lock); return mm; } @@ -1605,7 +1613,7 @@ sig->oom_score_adj_min = current->signal->oom_score_adj_min; mutex_init(&sig->cred_guard_mutex); - mutex_init(&sig->exec_update_mutex); + init_rwsem(&sig->exec_update_lock); return 0; } @@ -1830,6 +1838,25 @@ free_task(tsk); } +static void copy_oom_score_adj(u64 clone_flags, struct task_struct *tsk) +{ + /* Skip if kernel thread */ + if (!tsk->mm) + return; + + /* Skip if spawning a thread or using vfork */ + if ((clone_flags & (CLONE_VM | CLONE_THREAD | CLONE_VFORK)) != CLONE_VM) + return; + + /* We need to synchronize with __set_oom_adj */ + mutex_lock(&oom_adj_mutex); + set_bit(MMF_MULTIPROCESS, &tsk->mm->flags); + /* Update the values in case they were changed after copy_signal */ + tsk->signal->oom_score_adj = current->signal->oom_score_adj; + tsk->signal->oom_score_adj_min = current->signal->oom_score_adj_min; + mutex_unlock(&oom_adj_mutex); +} + /* * This creates a new process as a copy of the old one, * but does not actually start it yet. @@ -1861,6 +1888,10 @@ if ((clone_flags & (CLONE_NEWUSER|CLONE_FS)) == (CLONE_NEWUSER|CLONE_FS)) return ERR_PTR(-EINVAL); + if ((clone_flags & CLONE_NEWUSER) && !unprivileged_userns_clone) + if (!capable(CAP_SYS_ADMIN)) + return ERR_PTR(-EPERM); + /* * Thread groups must share signals as well, and detached threads * can only be started up within the thread group. @@ -2003,6 +2034,10 @@ p->vtime.state = VTIME_INACTIVE; #endif +#ifdef CONFIG_IO_URING + p->io_uring = NULL; +#endif + #if defined(SPLIT_RSS_COUNTING) memset(&p->rss_stat, 0, sizeof(p->rss_stat)); #endif @@ -2171,14 +2206,9 @@ /* ok, now we should be set up.. */ p->pid = pid_nr(pid); if (clone_flags & CLONE_THREAD) { - p->exit_signal = -1; p->group_leader = current->group_leader; p->tgid = current->tgid; } else { - if (clone_flags & CLONE_PARENT) - p->exit_signal = current->group_leader->exit_signal; - else - p->exit_signal = args->exit_signal; p->group_leader = p; p->tgid = p->pid; } @@ -2222,9 +2252,14 @@ if (clone_flags & (CLONE_PARENT|CLONE_THREAD)) { p->real_parent = current->real_parent; p->parent_exec_id = current->parent_exec_id; + if (clone_flags & CLONE_THREAD) + p->exit_signal = -1; + else + p->exit_signal = current->group_leader->exit_signal; } else { p->real_parent = current; p->parent_exec_id = current->self_exec_id; + p->exit_signal = args->exit_signal; } klp_copy_process(p); @@ -2310,6 +2345,8 @@ trace_task_newtask(p, clone_flags); uprobe_copy_process(p, clone_flags); + copy_oom_score_adj(clone_flags, p); + return p; bad_fork_cancel_cgroup: @@ -2961,6 +2998,12 @@ if (unshare_flags & CLONE_NEWNS) unshare_flags |= CLONE_FS; + if ((unshare_flags & CLONE_NEWUSER) && !unprivileged_userns_clone) { + err = -EPERM; + if (!capable(CAP_SYS_ADMIN)) + goto bad_unshare_out; + } + err = check_unshare_flags(unshare_flags); if (err) goto bad_unshare_out; --- linux-azure-5.8-5.8.0.orig/kernel/futex.c +++ linux-azure-5.8-5.8.0/kernel/futex.c @@ -56,6 +56,7 @@ #include #include #include +#include #include @@ -677,10 +678,6 @@ return err; } -static inline void put_futex_key(union futex_key *key) -{ -} - /** * fault_in_user_writeable() - Fault in user address and verify RW access * @uaddr: pointer to faulting user space address @@ -785,6 +782,29 @@ return pi_state; } +static void pi_state_update_owner(struct futex_pi_state *pi_state, + struct task_struct *new_owner) +{ + struct task_struct *old_owner = pi_state->owner; + + lockdep_assert_held(&pi_state->pi_mutex.wait_lock); + + if (old_owner) { + raw_spin_lock(&old_owner->pi_lock); + WARN_ON(list_empty(&pi_state->list)); + list_del_init(&pi_state->list); + raw_spin_unlock(&old_owner->pi_lock); + } + + if (new_owner) { + raw_spin_lock(&new_owner->pi_lock); + WARN_ON(!list_empty(&pi_state->list)); + list_add(&pi_state->list, &new_owner->pi_state_list); + pi_state->owner = new_owner; + raw_spin_unlock(&new_owner->pi_lock); + } +} + static void get_pi_state(struct futex_pi_state *pi_state) { WARN_ON_ONCE(!refcount_inc_not_zero(&pi_state->refcount)); @@ -807,17 +827,12 @@ * and has cleaned up the pi_state already */ if (pi_state->owner) { - struct task_struct *owner; + unsigned long flags; - raw_spin_lock_irq(&pi_state->pi_mutex.wait_lock); - owner = pi_state->owner; - if (owner) { - raw_spin_lock(&owner->pi_lock); - list_del_init(&pi_state->list); - raw_spin_unlock(&owner->pi_lock); - } - rt_mutex_proxy_unlock(&pi_state->pi_mutex, owner); - raw_spin_unlock_irq(&pi_state->pi_mutex.wait_lock); + raw_spin_lock_irqsave(&pi_state->pi_mutex.wait_lock, flags); + pi_state_update_owner(pi_state, NULL); + rt_mutex_proxy_unlock(&pi_state->pi_mutex); + raw_spin_unlock_irqrestore(&pi_state->pi_mutex.wait_lock, flags); } if (current->pi_state_cache) { @@ -962,7 +977,8 @@ * FUTEX_OWNER_DIED bit. See [4] * * [10] There is no transient state which leaves owner and user space - * TID out of sync. + * TID out of sync. Except one error case where the kernel is denied + * write access to the user address, see fixup_pi_state_owner(). * * * Serialization and lifetime rules: @@ -1523,8 +1539,10 @@ */ newval = FUTEX_WAITERS | task_pid_vnr(new_owner); - if (unlikely(should_fail_futex(true))) + if (unlikely(should_fail_futex(true))) { ret = -EFAULT; + goto out_unlock; + } ret = cmpxchg_futex_value_locked(&curval, uaddr, uval, newval); if (!ret && (curval != uval)) { @@ -1540,26 +1558,15 @@ ret = -EINVAL; } - if (ret) - goto out_unlock; - - /* - * This is a point of no return; once we modify the uval there is no - * going back and subsequent operations must not fail. - */ - - raw_spin_lock(&pi_state->owner->pi_lock); - WARN_ON(list_empty(&pi_state->list)); - list_del_init(&pi_state->list); - raw_spin_unlock(&pi_state->owner->pi_lock); - - raw_spin_lock(&new_owner->pi_lock); - WARN_ON(!list_empty(&pi_state->list)); - list_add(&pi_state->list, &new_owner->pi_state_list); - pi_state->owner = new_owner; - raw_spin_unlock(&new_owner->pi_lock); - - postunlock = __rt_mutex_futex_unlock(&pi_state->pi_mutex, &wake_q); + if (!ret) { + /* + * This is a point of no return; once we modified the uval + * there is no going back and subsequent operations must + * not fail. + */ + pi_state_update_owner(pi_state, new_owner); + postunlock = __rt_mutex_futex_unlock(&pi_state->pi_mutex, &wake_q); + } out_unlock: raw_spin_unlock_irq(&pi_state->pi_mutex.wait_lock); @@ -1611,13 +1618,13 @@ ret = get_futex_key(uaddr, flags & FLAGS_SHARED, &key, FUTEX_READ); if (unlikely(ret != 0)) - goto out; + return ret; hb = hash_futex(&key); /* Make sure we really have tasks to wakeup */ if (!hb_waiters_pending(hb)) - goto out_put_key; + return ret; spin_lock(&hb->lock); @@ -1640,9 +1647,6 @@ spin_unlock(&hb->lock); wake_up_q(&wake_q); -out_put_key: - put_futex_key(&key); -out: return ret; } @@ -1709,10 +1713,10 @@ retry: ret = get_futex_key(uaddr1, flags & FLAGS_SHARED, &key1, FUTEX_READ); if (unlikely(ret != 0)) - goto out; + return ret; ret = get_futex_key(uaddr2, flags & FLAGS_SHARED, &key2, FUTEX_WRITE); if (unlikely(ret != 0)) - goto out_put_key1; + return ret; hb1 = hash_futex(&key1); hb2 = hash_futex(&key2); @@ -1730,13 +1734,13 @@ * an MMU, but we might get them from range checking */ ret = op_ret; - goto out_put_keys; + return ret; } if (op_ret == -EFAULT) { ret = fault_in_user_writeable(uaddr2); if (ret) - goto out_put_keys; + return ret; } if (!(flags & FLAGS_SHARED)) { @@ -1744,8 +1748,6 @@ goto retry_private; } - put_futex_key(&key2); - put_futex_key(&key1); cond_resched(); goto retry; } @@ -1781,11 +1783,6 @@ out_unlock: double_unlock_hb(hb1, hb2); wake_up_q(&wake_q); -out_put_keys: - put_futex_key(&key2); -out_put_key1: - put_futex_key(&key1); -out: return ret; } @@ -1992,20 +1989,18 @@ retry: ret = get_futex_key(uaddr1, flags & FLAGS_SHARED, &key1, FUTEX_READ); if (unlikely(ret != 0)) - goto out; + return ret; ret = get_futex_key(uaddr2, flags & FLAGS_SHARED, &key2, requeue_pi ? FUTEX_WRITE : FUTEX_READ); if (unlikely(ret != 0)) - goto out_put_key1; + return ret; /* * The check above which compares uaddrs is not sufficient for * shared futexes. We need to compare the keys: */ - if (requeue_pi && match_futex(&key1, &key2)) { - ret = -EINVAL; - goto out_put_keys; - } + if (requeue_pi && match_futex(&key1, &key2)) + return -EINVAL; hb1 = hash_futex(&key1); hb2 = hash_futex(&key2); @@ -2025,13 +2020,11 @@ ret = get_user(curval, uaddr1); if (ret) - goto out_put_keys; + return ret; if (!(flags & FLAGS_SHARED)) goto retry_private; - put_futex_key(&key2); - put_futex_key(&key1); goto retry; } if (curval != *cmpval) { @@ -2090,12 +2083,10 @@ case -EFAULT: double_unlock_hb(hb1, hb2); hb_waiters_dec(hb2); - put_futex_key(&key2); - put_futex_key(&key1); ret = fault_in_user_writeable(uaddr2); if (!ret) goto retry; - goto out; + return ret; case -EBUSY: case -EAGAIN: /* @@ -2106,8 +2097,6 @@ */ double_unlock_hb(hb1, hb2); hb_waiters_dec(hb2); - put_futex_key(&key2); - put_futex_key(&key1); /* * Handle the case where the owner is in the middle of * exiting. Wait for the exit to complete otherwise @@ -2216,12 +2205,6 @@ double_unlock_hb(hb1, hb2); wake_up_q(&wake_q); hb_waiters_dec(hb2); - -out_put_keys: - put_futex_key(&key2); -out_put_key1: - put_futex_key(&key1); -out: return ret ? ret : task_count; } @@ -2366,18 +2349,13 @@ spin_unlock(q->lock_ptr); } -static int fixup_pi_state_owner(u32 __user *uaddr, struct futex_q *q, - struct task_struct *argowner) +static int __fixup_pi_state_owner(u32 __user *uaddr, struct futex_q *q, + struct task_struct *argowner) { struct futex_pi_state *pi_state = q->pi_state; - u32 uval, uninitialized_var(curval), newval; struct task_struct *oldowner, *newowner; - u32 newtid; - int ret, err = 0; - - lockdep_assert_held(q->lock_ptr); - - raw_spin_lock_irq(&pi_state->pi_mutex.wait_lock); + u32 uval, curval, newval, newtid; + int err = 0; oldowner = pi_state->owner; @@ -2411,21 +2389,31 @@ * We raced against a concurrent self; things are * already fixed up. Nothing to do. */ - ret = 0; - goto out_unlock; + return 0; } if (__rt_mutex_futex_trylock(&pi_state->pi_mutex)) { - /* We got the lock after all, nothing to fix. */ - ret = 0; - goto out_unlock; + /* We got the lock. pi_state is correct. Tell caller. */ + return 1; } /* - * Since we just failed the trylock; there must be an owner. + * The trylock just failed, so either there is an owner or + * there is a higher priority waiter than this one. */ newowner = rt_mutex_owner(&pi_state->pi_mutex); - BUG_ON(!newowner); + /* + * If the higher priority waiter has not yet taken over the + * rtmutex then newowner is NULL. We can't return here with + * that state because it's inconsistent vs. the user space + * state. So drop the locks and try again. It's a valid + * situation and not any different from the other retry + * conditions. + */ + if (unlikely(!newowner)) { + err = -EAGAIN; + goto handle_err; + } } else { WARN_ON_ONCE(argowner != current); if (oldowner == current) { @@ -2433,8 +2421,7 @@ * We raced against a concurrent self; things are * already fixed up. Nothing to do. */ - ret = 0; - goto out_unlock; + return 1; } newowner = argowner; } @@ -2464,22 +2451,9 @@ * We fixed up user space. Now we need to fix the pi_state * itself. */ - if (pi_state->owner != NULL) { - raw_spin_lock(&pi_state->owner->pi_lock); - WARN_ON(list_empty(&pi_state->list)); - list_del_init(&pi_state->list); - raw_spin_unlock(&pi_state->owner->pi_lock); - } + pi_state_update_owner(pi_state, newowner); - pi_state->owner = newowner; - - raw_spin_lock(&newowner->pi_lock); - WARN_ON(!list_empty(&pi_state->list)); - list_add(&pi_state->list, &newowner->pi_state_list); - raw_spin_unlock(&newowner->pi_lock); - raw_spin_unlock_irq(&pi_state->pi_mutex.wait_lock); - - return 0; + return argowner == current; /* * In order to reschedule or handle a page fault, we need to drop the @@ -2500,17 +2474,16 @@ switch (err) { case -EFAULT: - ret = fault_in_user_writeable(uaddr); + err = fault_in_user_writeable(uaddr); break; case -EAGAIN: cond_resched(); - ret = 0; + err = 0; break; default: WARN_ON_ONCE(1); - ret = err; break; } @@ -2520,17 +2493,44 @@ /* * Check if someone else fixed it for us: */ - if (pi_state->owner != oldowner) { - ret = 0; - goto out_unlock; - } + if (pi_state->owner != oldowner) + return argowner == current; - if (ret) - goto out_unlock; + /* Retry if err was -EAGAIN or the fault in succeeded */ + if (!err) + goto retry; - goto retry; + /* + * fault_in_user_writeable() failed so user state is immutable. At + * best we can make the kernel state consistent but user state will + * be most likely hosed and any subsequent unlock operation will be + * rejected due to PI futex rule [10]. + * + * Ensure that the rtmutex owner is also the pi_state owner despite + * the user space value claiming something different. There is no + * point in unlocking the rtmutex if current is the owner as it + * would need to wait until the next waiter has taken the rtmutex + * to guarantee consistent state. Keep it simple. Userspace asked + * for this wreckaged state. + * + * The rtmutex has an owner - either current or some other + * task. See the EAGAIN loop above. + */ + pi_state_update_owner(pi_state, rt_mutex_owner(&pi_state->pi_mutex)); -out_unlock: + return err; +} + +static int fixup_pi_state_owner(u32 __user *uaddr, struct futex_q *q, + struct task_struct *argowner) +{ + struct futex_pi_state *pi_state = q->pi_state; + int ret; + + lockdep_assert_held(q->lock_ptr); + + raw_spin_lock_irq(&pi_state->pi_mutex.wait_lock); + ret = __fixup_pi_state_owner(uaddr, q, argowner); raw_spin_unlock_irq(&pi_state->pi_mutex.wait_lock); return ret; } @@ -2554,8 +2554,6 @@ */ static int fixup_owner(u32 __user *uaddr, struct futex_q *q, int locked) { - int ret = 0; - if (locked) { /* * Got the lock. We might not be the anticipated owner if we @@ -2566,8 +2564,8 @@ * stable state, anything else needs more attention. */ if (q->pi_state->owner != current) - ret = fixup_pi_state_owner(uaddr, q, current); - goto out; + return fixup_pi_state_owner(uaddr, q, current); + return 1; } /* @@ -2578,24 +2576,17 @@ * Another speculative read; pi_state->owner == current is unstable * but needs our attention. */ - if (q->pi_state->owner == current) { - ret = fixup_pi_state_owner(uaddr, q, NULL); - goto out; - } + if (q->pi_state->owner == current) + return fixup_pi_state_owner(uaddr, q, NULL); /* * Paranoia check. If we did not take the lock, then we should not be - * the owner of the rt_mutex. + * the owner of the rt_mutex. Warn and establish consistent state. */ - if (rt_mutex_owner(&q->pi_state->pi_mutex) == current) { - printk(KERN_ERR "fixup_owner: ret = %d pi-mutex: %p " - "pi-state %p\n", ret, - q->pi_state->pi_mutex.owner, - q->pi_state->owner); - } + if (WARN_ON_ONCE(rt_mutex_owner(&q->pi_state->pi_mutex) == current)) + return fixup_pi_state_owner(uaddr, q, current); -out: - return ret ? ret : locked; + return 0; } /** @@ -2692,12 +2683,11 @@ ret = get_user(uval, uaddr); if (ret) - goto out; + return ret; if (!(flags & FLAGS_SHARED)) goto retry_private; - put_futex_key(&q->key); goto retry; } @@ -2706,9 +2696,6 @@ ret = -EWOULDBLOCK; } -out: - if (ret) - put_futex_key(&q->key); return ret; } @@ -2807,7 +2794,6 @@ ktime_t *time, int trylock) { struct hrtimer_sleeper timeout, *to; - struct futex_pi_state *pi_state = NULL; struct task_struct *exiting = NULL; struct rt_mutex_waiter rt_waiter; struct futex_hash_bucket *hb; @@ -2853,7 +2839,6 @@ * - EAGAIN: The user space value changed. */ queue_unlock(hb); - put_futex_key(&q.key); /* * Handle the case where the owner is in the middle of * exiting. Wait for the exit to complete otherwise @@ -2944,30 +2929,13 @@ if (res) ret = (res < 0) ? res : 0; - /* - * If fixup_owner() faulted and was unable to handle the fault, unlock - * it and return the fault to userspace. - */ - if (ret && (rt_mutex_owner(&q.pi_state->pi_mutex) == current)) { - pi_state = q.pi_state; - get_pi_state(pi_state); - } - /* Unqueue and drop the lock */ unqueue_me_pi(&q); - - if (pi_state) { - rt_mutex_futex_unlock(&pi_state->pi_mutex); - put_pi_state(pi_state); - } - - goto out_put_key; + goto out; out_unlock_put_key: queue_unlock(hb); -out_put_key: - put_futex_key(&q.key); out: if (to) { hrtimer_cancel(&to->timer); @@ -2980,12 +2948,11 @@ ret = fault_in_user_writeable(uaddr); if (ret) - goto out_put_key; + goto out; if (!(flags & FLAGS_SHARED)) goto retry_private; - put_futex_key(&q.key); goto retry; } @@ -3114,16 +3081,13 @@ out_unlock: spin_unlock(&hb->lock); out_putkey: - put_futex_key(&key); return ret; pi_retry: - put_futex_key(&key); cond_resched(); goto retry; pi_faulted: - put_futex_key(&key); ret = fault_in_user_writeable(uaddr); if (!ret) @@ -3226,7 +3190,6 @@ u32 __user *uaddr2) { struct hrtimer_sleeper timeout, *to; - struct futex_pi_state *pi_state = NULL; struct rt_mutex_waiter rt_waiter; struct futex_hash_bucket *hb; union futex_key key2 = FUTEX_KEY_INIT; @@ -3265,7 +3228,7 @@ */ ret = futex_wait_setup(uaddr, val, flags, &q, &hb); if (ret) - goto out_key2; + goto out; /* * The check above which compares uaddrs is not sufficient for @@ -3274,7 +3237,7 @@ if (match_futex(&q.key, &key2)) { queue_unlock(hb); ret = -EINVAL; - goto out_put_keys; + goto out; } /* Queue the futex_q, drop the hb lock, wait for wakeup. */ @@ -3284,7 +3247,7 @@ ret = handle_early_requeue_pi_wakeup(hb, &q, &key2, to); spin_unlock(&hb->lock); if (ret) - goto out_put_keys; + goto out; /* * In order for us to be here, we know our q.key == key2, and since @@ -3304,16 +3267,17 @@ if (q.pi_state && (q.pi_state->owner != current)) { spin_lock(q.lock_ptr); ret = fixup_pi_state_owner(uaddr2, &q, current); - if (ret && rt_mutex_owner(&q.pi_state->pi_mutex) == current) { - pi_state = q.pi_state; - get_pi_state(pi_state); - } /* * Drop the reference to the pi state which * the requeue_pi() code acquired for us. */ put_pi_state(q.pi_state); spin_unlock(q.lock_ptr); + /* + * Adjust the return value. It's either -EFAULT or + * success (1) but the caller expects 0 for success. + */ + ret = ret < 0 ? ret : 0; } } else { struct rt_mutex *pi_mutex; @@ -3344,25 +3308,10 @@ if (res) ret = (res < 0) ? res : 0; - /* - * If fixup_pi_state_owner() faulted and was unable to handle - * the fault, unlock the rt_mutex and return the fault to - * userspace. - */ - if (ret && rt_mutex_owner(&q.pi_state->pi_mutex) == current) { - pi_state = q.pi_state; - get_pi_state(pi_state); - } - /* Unqueue and drop the lock. */ unqueue_me_pi(&q); } - if (pi_state) { - rt_mutex_futex_unlock(&pi_state->pi_mutex); - put_pi_state(pi_state); - } - if (ret == -EINTR) { /* * We've already been requeued, but cannot restart by calling @@ -3374,11 +3323,6 @@ ret = -EWOULDBLOCK; } -out_put_keys: - put_futex_key(&q.key); -out_key2: - put_futex_key(&key2); - out: if (to) { hrtimer_cancel(&to->timer); @@ -3859,6 +3803,8 @@ t = timespec64_to_ktime(ts); if (cmd == FUTEX_WAIT) t = ktime_add_safe(ktime_get(), t); + else if (!(op & FUTEX_CLOCK_REALTIME)) + t = timens_ktime_to_host(CLOCK_MONOTONIC, t); tp = &t; } /* @@ -4051,6 +3997,8 @@ t = timespec64_to_ktime(ts); if (cmd == FUTEX_WAIT) t = ktime_add_safe(ktime_get(), t); + else if (!(op & FUTEX_CLOCK_REALTIME)) + t = timens_ktime_to_host(CLOCK_MONOTONIC, t); tp = &t; } if (cmd == FUTEX_REQUEUE || cmd == FUTEX_CMP_REQUEUE || --- linux-azure-5.8-5.8.0.orig/kernel/gcov/gcc_4_7.c +++ linux-azure-5.8-5.8.0/kernel/gcov/gcc_4_7.c @@ -19,7 +19,9 @@ #include #include "gcov.h" -#if (__GNUC__ >= 7) +#if (__GNUC__ >= 10) +#define GCOV_COUNTERS 8 +#elif (__GNUC__ >= 7) #define GCOV_COUNTERS 9 #elif (__GNUC__ > 5) || (__GNUC__ == 5 && __GNUC_MINOR__ >= 1) #define GCOV_COUNTERS 10 --- linux-azure-5.8-5.8.0.orig/kernel/irq/Kconfig +++ linux-azure-5.8-5.8.0/kernel/irq/Kconfig @@ -86,6 +86,7 @@ # Generic IRQ IPI support config GENERIC_IRQ_IPI bool + select IRQ_DOMAIN_HIERARCHY # Generic MSI interrupt support config GENERIC_MSI_IRQ @@ -116,6 +117,10 @@ config IRQ_FORCED_THREADING bool +config IRQ_FORCED_THREADING_DEFAULT + bool "Use IRQ threading by default" + depends on IRQ_FORCED_THREADING + config SPARSE_IRQ bool "Support sparse irq numbering" if MAY_HAVE_SPARSE_IRQ help --- linux-azure-5.8-5.8.0.orig/kernel/irq/irqdomain.c +++ linux-azure-5.8-5.8.0/kernel/irq/irqdomain.c @@ -623,17 +623,19 @@ EXPORT_SYMBOL_GPL(irq_create_direct_mapping); /** - * irq_create_mapping() - Map a hardware interrupt into linux irq space + * irq_create_mapping_affinity() - Map a hardware interrupt into linux irq space * @domain: domain owning this hardware interrupt or NULL for default domain * @hwirq: hardware irq number in that domain space + * @affinity: irq affinity * * Only one mapping per hardware interrupt is permitted. Returns a linux * irq number. * If the sense/trigger is to be specified, set_irq_type() should be called * on the number returned from that call. */ -unsigned int irq_create_mapping(struct irq_domain *domain, - irq_hw_number_t hwirq) +unsigned int irq_create_mapping_affinity(struct irq_domain *domain, + irq_hw_number_t hwirq, + const struct irq_affinity_desc *affinity) { struct device_node *of_node; int virq; @@ -659,7 +661,8 @@ } /* Allocate a virtual interrupt number */ - virq = irq_domain_alloc_descs(-1, 1, hwirq, of_node_to_nid(of_node), NULL); + virq = irq_domain_alloc_descs(-1, 1, hwirq, of_node_to_nid(of_node), + affinity); if (virq <= 0) { pr_debug("-> virq allocation failed\n"); return 0; @@ -675,7 +678,7 @@ return virq; } -EXPORT_SYMBOL_GPL(irq_create_mapping); +EXPORT_SYMBOL_GPL(irq_create_mapping_affinity); /** * irq_create_strict_mappings() - Map a range of hw irqs to fixed linux irqs @@ -1287,8 +1290,15 @@ unsigned int irq_base, unsigned int nr_irqs) { - if (domain->ops->free) - domain->ops->free(domain, irq_base, nr_irqs); + unsigned int i; + + if (!domain->ops->free) + return; + + for (i = 0; i < nr_irqs; i++) { + if (irq_domain_get_irq_data(domain, irq_base + i)) + domain->ops->free(domain, irq_base + i, 1); + } } int irq_domain_alloc_irqs_hierarchy(struct irq_domain *domain, --- linux-azure-5.8-5.8.0.orig/kernel/irq/manage.c +++ linux-azure-5.8-5.8.0/kernel/irq/manage.c @@ -25,7 +25,7 @@ #include "internals.h" #if defined(CONFIG_IRQ_FORCED_THREADING) && !defined(CONFIG_PREEMPT_RT) -__read_mostly bool force_irqthreads; +__read_mostly bool force_irqthreads = IS_ENABLED(CONFIG_IRQ_FORCED_THREADING_DEFAULT); EXPORT_SYMBOL_GPL(force_irqthreads); static int __init setup_forced_irqthreads(char *arg) @@ -33,7 +33,13 @@ force_irqthreads = true; return 0; } +static int __init setup_no_irqthreads(char *arg) +{ + force_irqthreads = false; + return 0; +} early_param("threadirqs", setup_forced_irqthreads); +early_param("nothreadirqs", setup_no_irqthreads); #endif static void __synchronize_hardirq(struct irq_desc *desc, bool sync_chip) @@ -320,12 +326,16 @@ struct irq_desc *desc = irq_data_to_desc(data); /* + * Handle irq chips which can handle affinity only in activated + * state correctly + * * If the interrupt is not yet activated, just store the affinity * mask and do not call the chip driver at all. On activation the * driver has to make sure anyway that the interrupt is in a * useable state so startup works. */ - if (!IS_ENABLED(CONFIG_IRQ_DOMAIN_HIERARCHY) || irqd_is_activated(data)) + if (!IS_ENABLED(CONFIG_IRQ_DOMAIN_HIERARCHY) || + irqd_is_activated(data) || !irqd_affinity_on_activate(data)) return false; cpumask_copy(desc->irq_common_data.affinity, mask); @@ -1158,7 +1168,7 @@ handler_fn = irq_thread_fn; init_task_work(&on_exit_work, irq_thread_dtor); - task_work_add(current, &on_exit_work, false); + task_work_add(current, &on_exit_work, TWA_NONE); irq_thread_check_affinity(desc, action); @@ -2731,8 +2741,10 @@ do { chip = irq_data_get_irq_chip(data); - if (WARN_ON_ONCE(!chip)) - return -ENODEV; + if (WARN_ON_ONCE(!chip)) { + err = -ENODEV; + goto out_unlock; + } if (chip->irq_set_irqchip_state) break; #ifdef CONFIG_IRQ_DOMAIN_HIERARCHY @@ -2745,6 +2757,7 @@ if (data) err = chip->irq_set_irqchip_state(data, which, val); +out_unlock: irq_put_desc_busunlock(desc, flags); return err; } --- linux-azure-5.8-5.8.0.orig/kernel/irq/matrix.c +++ linux-azure-5.8-5.8.0/kernel/irq/matrix.c @@ -380,6 +380,13 @@ unsigned int cpu, bit; struct cpumap *cm; + /* + * Not required in theory, but matrix_find_best_cpu() uses + * for_each_cpu() which ignores the cpumask on UP . + */ + if (cpumask_empty(msk)) + return -EINVAL; + cpu = matrix_find_best_cpu(m, msk); if (cpu == UINT_MAX) return -ENOSPC; --- linux-azure-5.8-5.8.0.orig/kernel/irq/msi.c +++ linux-azure-5.8-5.8.0/kernel/irq/msi.c @@ -437,22 +437,22 @@ can_reserve = msi_check_reservation_mode(domain, info, dev); - for_each_msi_entry(desc, dev) { - virq = desc->irq; - if (desc->nvec_used == 1) - dev_dbg(dev, "irq %d for MSI\n", virq); - else + /* + * This flag is set by the PCI layer as we need to activate + * the MSI entries before the PCI layer enables MSI in the + * card. Otherwise the card latches a random msi message. + */ + if (!(info->flags & MSI_FLAG_ACTIVATE_EARLY)) + goto skip_activate; + + for_each_msi_vector(desc, i, dev) { + if (desc->irq == i) { + virq = desc->irq; dev_dbg(dev, "irq [%d-%d] for MSI\n", virq, virq + desc->nvec_used - 1); - /* - * This flag is set by the PCI layer as we need to activate - * the MSI entries before the PCI layer enables MSI in the - * card. Otherwise the card latches a random msi message. - */ - if (!(info->flags & MSI_FLAG_ACTIVATE_EARLY)) - continue; + } - irq_data = irq_domain_get_irq_data(domain, desc->irq); + irq_data = irq_domain_get_irq_data(domain, i); if (!can_reserve) { irqd_clr_can_reserve(irq_data); if (domain->flags & IRQ_DOMAIN_MSI_NOMASK_QUIRK) @@ -463,28 +463,24 @@ goto cleanup; } +skip_activate: /* * If these interrupts use reservation mode, clear the activated bit * so request_irq() will assign the final vector. */ if (can_reserve) { - for_each_msi_entry(desc, dev) { - irq_data = irq_domain_get_irq_data(domain, desc->irq); + for_each_msi_vector(desc, i, dev) { + irq_data = irq_domain_get_irq_data(domain, i); irqd_clr_activated(irq_data); } } return 0; cleanup: - for_each_msi_entry(desc, dev) { - struct irq_data *irqd; - - if (desc->irq == virq) - break; - - irqd = irq_domain_get_irq_data(domain, desc->irq); - if (irqd_is_activated(irqd)) - irq_domain_deactivate_irq(irqd); + for_each_msi_vector(desc, i, dev) { + irq_data = irq_domain_get_irq_data(domain, i); + if (irqd_is_activated(irq_data)) + irq_domain_deactivate_irq(irq_data); } msi_domain_free_irqs(domain, dev); return ret; --- linux-azure-5.8-5.8.0.orig/kernel/irq/pm.c +++ linux-azure-5.8-5.8.0/kernel/irq/pm.c @@ -185,14 +185,18 @@ unsigned long flags; struct irq_desc *desc = irq_get_desc_buslock(irq, &flags, IRQ_GET_DESC_CHECK_GLOBAL); - if (!desc || !(desc->istate & IRQS_SUSPENDED) || - !irqd_is_wakeup_set(&desc->irq_data)) + if (!desc) return; + if (!(desc->istate & IRQS_SUSPENDED) || + !irqd_is_wakeup_set(&desc->irq_data)) + goto unlock; + desc->istate &= ~IRQS_SUSPENDED; irqd_set(&desc->irq_data, IRQD_WAKEUP_ARMED); __enable_irq(desc); +unlock: irq_put_desc_busunlock(desc, flags); } --- linux-azure-5.8-5.8.0.orig/kernel/kcmp.c +++ linux-azure-5.8-5.8.0/kernel/kcmp.c @@ -75,25 +75,25 @@ return file; } -static void kcmp_unlock(struct mutex *m1, struct mutex *m2) +static void kcmp_unlock(struct rw_semaphore *l1, struct rw_semaphore *l2) { - if (likely(m2 != m1)) - mutex_unlock(m2); - mutex_unlock(m1); + if (likely(l2 != l1)) + up_read(l2); + up_read(l1); } -static int kcmp_lock(struct mutex *m1, struct mutex *m2) +static int kcmp_lock(struct rw_semaphore *l1, struct rw_semaphore *l2) { int err; - if (m2 > m1) - swap(m1, m2); + if (l2 > l1) + swap(l1, l2); - err = mutex_lock_killable(m1); - if (!err && likely(m1 != m2)) { - err = mutex_lock_killable_nested(m2, SINGLE_DEPTH_NESTING); + err = down_read_killable(l1); + if (!err && likely(l1 != l2)) { + err = down_read_killable_nested(l2, SINGLE_DEPTH_NESTING); if (err) - mutex_unlock(m1); + up_read(l1); } return err; @@ -173,8 +173,8 @@ /* * One should have enough rights to inspect task details. */ - ret = kcmp_lock(&task1->signal->exec_update_mutex, - &task2->signal->exec_update_mutex); + ret = kcmp_lock(&task1->signal->exec_update_lock, + &task2->signal->exec_update_lock); if (ret) goto err; if (!ptrace_may_access(task1, PTRACE_MODE_READ_REALCREDS) || @@ -229,8 +229,8 @@ } err_unlock: - kcmp_unlock(&task1->signal->exec_update_mutex, - &task2->signal->exec_update_mutex); + kcmp_unlock(&task1->signal->exec_update_lock, + &task2->signal->exec_update_lock); err: put_task_struct(task1); put_task_struct(task2); --- linux-azure-5.8-5.8.0.orig/kernel/kexec_core.c +++ linux-azure-5.8-5.8.0/kernel/kexec_core.c @@ -1135,7 +1135,6 @@ #ifdef CONFIG_KEXEC_JUMP if (kexec_image->preserve_context) { - lock_system_sleep(); pm_prepare_console(); error = freeze_processes(); if (error) { @@ -1198,7 +1197,6 @@ thaw_processes(); Restore_console: pm_restore_console(); - unlock_system_sleep(); } #endif --- linux-azure-5.8-5.8.0.orig/kernel/kexec_file.c +++ linux-azure-5.8-5.8.0/kernel/kexec_file.c @@ -165,6 +165,11 @@ vfree(pi->sechdrs); pi->sechdrs = NULL; +#ifdef CONFIG_IMA_KEXEC + vfree(image->ima_buffer); + image->ima_buffer = NULL; +#endif /* CONFIG_IMA_KEXEC */ + /* See if architecture has anything to cleanup post load */ arch_kimage_file_post_load_cleanup(image); --- linux-azure-5.8-5.8.0.orig/kernel/kprobes.c +++ linux-azure-5.8-5.8.0/kernel/kprobes.c @@ -1079,9 +1079,20 @@ ipmodify ? &kprobe_ipmodify_enabled : &kprobe_ftrace_enabled); } #else /* !CONFIG_KPROBES_ON_FTRACE */ -#define prepare_kprobe(p) arch_prepare_kprobe(p) -#define arm_kprobe_ftrace(p) (-ENODEV) -#define disarm_kprobe_ftrace(p) (-ENODEV) +static inline int prepare_kprobe(struct kprobe *p) +{ + return arch_prepare_kprobe(p); +} + +static inline int arm_kprobe_ftrace(struct kprobe *p) +{ + return -ENODEV; +} + +static inline int disarm_kprobe_ftrace(struct kprobe *p) +{ + return -ENODEV; +} #endif /* Arm a kprobe with text_mutex */ @@ -1207,7 +1218,13 @@ *head = &kretprobe_inst_table[hash]; hlist_lock = kretprobe_table_lock_ptr(hash); - raw_spin_lock_irqsave(hlist_lock, *flags); + /* + * Nested is a workaround that will soon not be needed. + * There's other protections that make sure the same lock + * is not taken on the same CPU that lockdep is unaware of. + * Differentiate when it is taken in NMI context. + */ + raw_spin_lock_irqsave_nested(hlist_lock, *flags, !!in_nmi()); } NOKPROBE_SYMBOL(kretprobe_hash_lock); @@ -1216,7 +1233,13 @@ __acquires(hlist_lock) { raw_spinlock_t *hlist_lock = kretprobe_table_lock_ptr(hash); - raw_spin_lock_irqsave(hlist_lock, *flags); + /* + * Nested is a workaround that will soon not be needed. + * There's other protections that make sure the same lock + * is not taken on the same CPU that lockdep is unaware of. + * Differentiate when it is taken in NMI context. + */ + raw_spin_lock_irqsave_nested(hlist_lock, *flags, !!in_nmi()); } NOKPROBE_SYMBOL(kretprobe_table_lock); @@ -1316,7 +1339,8 @@ struct hlist_node *next; struct hlist_head *head; - /* No race here */ + /* To avoid recursive kretprobe by NMI, set kprobe busy here */ + kprobe_busy_begin(); for (hash = 0; hash < KPROBE_TABLE_SIZE; hash++) { kretprobe_table_lock(hash, &flags); head = &kretprobe_inst_table[hash]; @@ -1326,6 +1350,8 @@ } kretprobe_table_unlock(hash, &flags); } + kprobe_busy_end(); + free_rp_inst(rp); } NOKPROBE_SYMBOL(cleanup_rp_inst); @@ -1894,20 +1920,14 @@ unsigned long hash, flags = 0; struct kretprobe_instance *ri; - /* - * To avoid deadlocks, prohibit return probing in NMI contexts, - * just skip the probe and increase the (inexact) 'nmissed' - * statistical counter, so that the user is informed that - * something happened: - */ - if (unlikely(in_nmi())) { - rp->nmissed++; - return 0; - } - /* TODO: consider to only swap the RA after the last pre_handler fired */ hash = hash_ptr(current, KPROBE_HASH_BITS); - raw_spin_lock_irqsave(&rp->lock, flags); + /* + * Nested is a workaround that will soon not be needed. + * There's other protections that make sure the same lock + * is not taken on the same CPU that lockdep is unaware of. + */ + raw_spin_lock_irqsave_nested(&rp->lock, flags, 1); if (!hlist_empty(&rp->free_instances)) { ri = hlist_entry(rp->free_instances.first, struct kretprobe_instance, hlist); @@ -1918,7 +1938,7 @@ ri->task = current; if (rp->entry_handler && rp->entry_handler(ri, regs)) { - raw_spin_lock_irqsave(&rp->lock, flags); + raw_spin_lock_irqsave_nested(&rp->lock, flags, 1); hlist_add_head(&ri->hlist, &rp->free_instances); raw_spin_unlock_irqrestore(&rp->lock, flags); return 0; @@ -1944,28 +1964,48 @@ return !offset; } -bool kprobe_on_func_entry(kprobe_opcode_t *addr, const char *sym, unsigned long offset) +/** + * kprobe_on_func_entry() -- check whether given address is function entry + * @addr: Target address + * @sym: Target symbol name + * @offset: The offset from the symbol or the address + * + * This checks whether the given @addr+@offset or @sym+@offset is on the + * function entry address or not. + * This returns 0 if it is the function entry, or -EINVAL if it is not. + * And also it returns -ENOENT if it fails the symbol or address lookup. + * Caller must pass @addr or @sym (either one must be NULL), or this + * returns -EINVAL. + */ +int kprobe_on_func_entry(kprobe_opcode_t *addr, const char *sym, unsigned long offset) { kprobe_opcode_t *kp_addr = _kprobe_addr(addr, sym, offset); if (IS_ERR(kp_addr)) - return false; + return PTR_ERR(kp_addr); - if (!kallsyms_lookup_size_offset((unsigned long)kp_addr, NULL, &offset) || - !arch_kprobe_on_func_entry(offset)) - return false; + if (!kallsyms_lookup_size_offset((unsigned long)kp_addr, NULL, &offset)) + return -ENOENT; - return true; + if (!arch_kprobe_on_func_entry(offset)) + return -EINVAL; + + return 0; } int register_kretprobe(struct kretprobe *rp) { - int ret = 0; + int ret; struct kretprobe_instance *inst; int i; void *addr; - if (!kprobe_on_func_entry(rp->kp.addr, rp->kp.symbol_name, rp->kp.offset)) + ret = kprobe_on_func_entry(rp->kp.addr, rp->kp.symbol_name, rp->kp.offset); + if (ret) + return ret; + + /* If only rp->kp.addr is specified, check reregistering kprobes */ + if (rp->kp.addr && check_kprobe_rereg(&rp->kp)) return -EINVAL; if (kretprobe_blacklist_size) { @@ -2097,6 +2137,9 @@ lockdep_assert_held(&kprobe_mutex); + if (WARN_ON_ONCE(kprobe_gone(p))) + return; + p->flags |= KPROBE_FLAG_GONE; if (kprobe_aggrprobe(p)) { /* @@ -2113,6 +2156,14 @@ * the original probed function (which will be freed soon) any more. */ arch_remove_kprobe(p); + + /* + * The module is going away. We should disarm the kprobe which + * is using ftrace, because ftrace framework is still available at + * MODULE_STATE_GOING notification. + */ + if (kprobe_ftrace(p) && !kprobe_disabled(p) && !kprobes_all_disarmed) + disarm_kprobe_ftrace(p); } /* Disable one kprobe */ @@ -2347,7 +2398,10 @@ mutex_lock(&kprobe_mutex); for (i = 0; i < KPROBE_TABLE_SIZE; i++) { head = &kprobe_table[i]; - hlist_for_each_entry(p, head, hlist) + hlist_for_each_entry(p, head, hlist) { + if (kprobe_gone(p)) + continue; + if (within_module_init((unsigned long)p->addr, mod) || (checkcore && within_module_core((unsigned long)p->addr, mod))) { @@ -2364,6 +2418,7 @@ */ kill_kprobe(p); } + } } if (val == MODULE_STATE_GOING) remove_module_kprobe_blacklist(mod); @@ -2380,6 +2435,28 @@ extern unsigned long __start_kprobe_blacklist[]; extern unsigned long __stop_kprobe_blacklist[]; +void kprobe_free_init_mem(void) +{ + void *start = (void *)(&__init_begin); + void *end = (void *)(&__init_end); + struct hlist_head *head; + struct kprobe *p; + int i; + + mutex_lock(&kprobe_mutex); + + /* Kill all kprobes on initmem */ + for (i = 0; i < KPROBE_TABLE_SIZE; i++) { + head = &kprobe_table[i]; + hlist_for_each_entry(p, head, hlist) { + if (start <= (void *)p->addr && (void *)p->addr < end) + kill_kprobe(p); + } + } + + mutex_unlock(&kprobe_mutex); +} + static int __init init_kprobes(void) { int i, err = 0; --- linux-azure-5.8-5.8.0.orig/kernel/kthread.c +++ linux-azure-5.8-5.8.0/kernel/kthread.c @@ -354,6 +354,17 @@ * new kernel thread. */ if (unlikely(wait_for_completion_killable(&done))) { + int i = 0; + + /* + * I got SIGKILL, but wait for 10 more seconds for completion + * unless chosen by the OOM killer. This delay is there as a + * workaround for boot failure caused by SIGKILL upon device + * driver initialization timeout. + */ + while (i++ < 10 && !test_tsk_thread_flag(current, TIF_MEMDIE)) + if (wait_for_completion_timeout(&done, HZ)) + goto ready; /* * If I was SIGKILLed before kthreadd (or new kernel thread) * calls complete(), leave the cleanup of this structure to @@ -367,6 +378,7 @@ */ wait_for_completion(&done); } +ready: task = create->result; if (!IS_ERR(task)) { static const struct sched_param param = { .sched_priority = 0 }; @@ -492,11 +504,36 @@ return p; kthread_bind(p, cpu); /* CPU hotplug need to bind once again when unparking the thread. */ - set_bit(KTHREAD_IS_PER_CPU, &to_kthread(p)->flags); to_kthread(p)->cpu = cpu; return p; } +void kthread_set_per_cpu(struct task_struct *k, int cpu) +{ + struct kthread *kthread = to_kthread(k); + if (!kthread) + return; + + WARN_ON_ONCE(!(k->flags & PF_NO_SETAFFINITY)); + + if (cpu < 0) { + clear_bit(KTHREAD_IS_PER_CPU, &kthread->flags); + return; + } + + kthread->cpu = cpu; + set_bit(KTHREAD_IS_PER_CPU, &kthread->flags); +} + +bool kthread_is_per_cpu(struct task_struct *k) +{ + struct kthread *kthread = to_kthread(k); + if (!kthread) + return false; + + return test_bit(KTHREAD_IS_PER_CPU, &kthread->flags); +} + /** * kthread_unpark - unpark a thread created by kthread_create(). * @k: thread created by kthread_create(). @@ -896,7 +933,8 @@ /* Move the work from worker->delayed_work_list. */ WARN_ON_ONCE(list_empty(&work->node)); list_del_init(&work->node); - kthread_insert_work(worker, work, &worker->work_list); + if (!work->canceling) + kthread_insert_work(worker, work, &worker->work_list); raw_spin_unlock_irqrestore(&worker->lock, flags); } @@ -1239,13 +1277,16 @@ WARN_ON_ONCE(tsk->mm); task_lock(tsk); + /* Hold off tlb flush IPIs while switching mm's */ + local_irq_disable(); active_mm = tsk->active_mm; if (active_mm != mm) { mmgrab(mm); tsk->active_mm = mm; } tsk->mm = mm; - switch_mm(active_mm, mm, tsk); + switch_mm_irqs_off(active_mm, mm, tsk); + local_irq_enable(); task_unlock(tsk); #ifdef finish_arch_post_lock_switch finish_arch_post_lock_switch(); @@ -1274,9 +1315,11 @@ task_lock(tsk); sync_mm_rss(mm); + local_irq_disable(); tsk->mm = NULL; /* active_mm is still 'mm' */ enter_lazy_tlb(mm, tsk); + local_irq_enable(); task_unlock(tsk); } EXPORT_SYMBOL_GPL(kthread_unuse_mm); --- linux-azure-5.8-5.8.0.orig/kernel/locking/lockdep.c +++ linux-azure-5.8-5.8.0/kernel/locking/lockdep.c @@ -169,7 +169,7 @@ struct lock_class lock_classes[MAX_LOCKDEP_KEYS]; static DECLARE_BITMAP(lock_classes_in_use, MAX_LOCKDEP_KEYS); -static inline struct lock_class *hlock_class(struct held_lock *hlock) +inline struct lock_class *lockdep_hlock_class(struct held_lock *hlock) { unsigned int class_idx = hlock->class_idx; @@ -190,6 +190,8 @@ */ return lock_classes + class_idx; } +EXPORT_SYMBOL_GPL(lockdep_hlock_class); +#define hlock_class(hlock) lockdep_hlock_class(hlock) #ifdef CONFIG_LOCK_STAT static DEFINE_PER_CPU(struct lock_class_stats[MAX_LOCKDEP_KEYS], cpu_lock_stats); @@ -3317,7 +3319,7 @@ print_usage_bug(struct task_struct *curr, struct held_lock *this, enum lock_usage_bit prev_bit, enum lock_usage_bit new_bit) { - if (!debug_locks_off_graph_unlock() || debug_locks_silent) + if (!debug_locks_off() || debug_locks_silent) return; pr_warn("\n"); @@ -3358,6 +3360,7 @@ enum lock_usage_bit new_bit, enum lock_usage_bit bad_bit) { if (unlikely(hlock_class(this)->usage_mask & (1 << bad_bit))) { + graph_unlock(); print_usage_bug(curr, this, bad_bit, new_bit); return 0; } @@ -3923,13 +3926,18 @@ static int mark_lock(struct task_struct *curr, struct held_lock *this, enum lock_usage_bit new_bit) { - unsigned int new_mask = 1 << new_bit, ret = 1; + unsigned int old_mask, new_mask, ret = 1; if (new_bit >= LOCK_USAGE_STATES) { DEBUG_LOCKS_WARN_ON(1); return 0; } + if (new_bit == LOCK_USED && this->read) + new_bit = LOCK_USED_READ; + + new_mask = 1 << new_bit; + /* * If already set then do not dirty the cacheline, * nor do any checks: @@ -3942,13 +3950,22 @@ /* * Make sure we didn't race: */ - if (unlikely(hlock_class(this)->usage_mask & new_mask)) { - graph_unlock(); - return 1; - } + if (unlikely(hlock_class(this)->usage_mask & new_mask)) + goto unlock; + old_mask = hlock_class(this)->usage_mask; hlock_class(this)->usage_mask |= new_mask; + /* + * Save one usage_traces[] entry and map both LOCK_USED and + * LOCK_USED_READ onto the same entry. + */ + if (new_bit == LOCK_USED || new_bit == LOCK_USED_READ) { + if (old_mask & (LOCKF_USED | LOCKF_USED_READ)) + goto unlock; + new_bit = LOCK_USED; + } + if (!(hlock_class(this)->usage_traces[new_bit] = save_trace())) return 0; @@ -3962,6 +3979,7 @@ return 0; } +unlock: graph_unlock(); /* @@ -4819,12 +4837,15 @@ /* * Check whether we follow the irq-flags state precisely: */ -static void check_flags(unsigned long flags) +static noinstr void check_flags(unsigned long flags) { #if defined(CONFIG_PROVE_LOCKING) && defined(CONFIG_DEBUG_LOCKDEP) if (!debug_locks) return; + /* Get the warning out.. */ + instrumentation_begin(); + if (irqs_disabled_flags(flags)) { if (DEBUG_LOCKS_WARN_ON(current->hardirqs_enabled)) { printk("possible reason: unannotated irqs-off.\n"); @@ -4852,6 +4873,8 @@ if (!debug_locks) print_irqtrace_events(current); + + instrumentation_end(); #endif } @@ -4896,12 +4919,20 @@ { #ifdef CONFIG_PROVE_LOCKING struct lock_class *class = look_up_lock_class(lock, subclass); + unsigned long mask = LOCKF_USED; /* if it doesn't have a class (yet), it certainly hasn't been used yet */ if (!class) return; - if (!(class->usage_mask & LOCK_USED)) + /* + * READ locks only conflict with USED, such that if we only ever use + * READ locks, there is no deadlock possible -- RCU. + */ + if (!hlock->read) + mask |= LOCKF_USED_READ; + + if (!(class->usage_mask & mask)) return; hlock->class_idx = class - lock_classes; --- linux-azure-5.8-5.8.0.orig/kernel/locking/lockdep_internals.h +++ linux-azure-5.8-5.8.0/kernel/locking/lockdep_internals.h @@ -19,6 +19,7 @@ #include "lockdep_states.h" #undef LOCKDEP_STATE LOCK_USED, + LOCK_USED_READ, LOCK_USAGE_STATES }; @@ -40,6 +41,7 @@ #include "lockdep_states.h" #undef LOCKDEP_STATE __LOCKF(USED) + __LOCKF(USED_READ) }; #define LOCKDEP_STATE(__STATE) LOCKF_ENABLED_##__STATE | --- linux-azure-5.8-5.8.0.orig/kernel/locking/lockdep_proc.c +++ linux-azure-5.8-5.8.0/kernel/locking/lockdep_proc.c @@ -423,7 +423,7 @@ seq_time(m, lt->min); seq_time(m, lt->max); seq_time(m, lt->total); - seq_time(m, lt->nr ? div_s64(lt->total, lt->nr) : 0); + seq_time(m, lt->nr ? div64_u64(lt->total, lt->nr) : 0); } static void seq_stats(struct seq_file *m, struct lock_stat_data *data) --- linux-azure-5.8-5.8.0.orig/kernel/locking/percpu-rwsem.c +++ linux-azure-5.8-5.8.0/kernel/locking/percpu-rwsem.c @@ -45,7 +45,7 @@ static bool __percpu_down_read_trylock(struct percpu_rw_semaphore *sem) { - __this_cpu_inc(*sem->read_count); + this_cpu_inc(*sem->read_count); /* * Due to having preemption disabled the decrement happens on @@ -71,7 +71,7 @@ if (likely(!atomic_read_acquire(&sem->block))) return true; - __this_cpu_dec(*sem->read_count); + this_cpu_dec(*sem->read_count); /* Prod writer to re-evaluate readers_active_check() */ rcuwait_wake_up(&sem->writer); --- linux-azure-5.8-5.8.0.orig/kernel/locking/rtmutex.c +++ linux-azure-5.8-5.8.0/kernel/locking/rtmutex.c @@ -1716,8 +1716,7 @@ * possible because it belongs to the pi_state which is about to be freed * and it is not longer visible to other tasks. */ -void rt_mutex_proxy_unlock(struct rt_mutex *lock, - struct task_struct *proxy_owner) +void rt_mutex_proxy_unlock(struct rt_mutex *lock) { debug_rt_mutex_proxy_unlock(lock); rt_mutex_set_owner(lock, NULL); --- linux-azure-5.8-5.8.0.orig/kernel/locking/rtmutex_common.h +++ linux-azure-5.8-5.8.0/kernel/locking/rtmutex_common.h @@ -133,8 +133,7 @@ extern struct task_struct *rt_mutex_next_owner(struct rt_mutex *lock); extern void rt_mutex_init_proxy_locked(struct rt_mutex *lock, struct task_struct *proxy_owner); -extern void rt_mutex_proxy_unlock(struct rt_mutex *lock, - struct task_struct *proxy_owner); +extern void rt_mutex_proxy_unlock(struct rt_mutex *lock); extern void rt_mutex_init_waiter(struct rt_mutex_waiter *waiter); extern int __rt_mutex_start_proxy_lock(struct rt_mutex *lock, struct rt_mutex_waiter *waiter, --- linux-azure-5.8-5.8.0.orig/kernel/locking/rwsem.c +++ linux-azure-5.8-5.8.0/kernel/locking/rwsem.c @@ -1345,6 +1345,18 @@ } } +static inline int __down_read_interruptible(struct rw_semaphore *sem) +{ + if (!rwsem_read_trylock(sem)) { + if (IS_ERR(rwsem_down_read_slowpath(sem, TASK_INTERRUPTIBLE))) + return -EINTR; + DEBUG_RWSEMS_WARN_ON(!is_rwsem_reader_owned(sem), sem); + } else { + rwsem_set_reader_owned(sem); + } + return 0; +} + static inline int __down_read_killable(struct rw_semaphore *sem) { if (!rwsem_read_trylock(sem)) { @@ -1495,6 +1507,20 @@ } EXPORT_SYMBOL(down_read); +int __sched down_read_interruptible(struct rw_semaphore *sem) +{ + might_sleep(); + rwsem_acquire_read(&sem->dep_map, 0, 0, _RET_IP_); + + if (LOCK_CONTENDED_RETURN(sem, __down_read_trylock, __down_read_interruptible)) { + rwsem_release(&sem->dep_map, _RET_IP_); + return -EINTR; + } + + return 0; +} +EXPORT_SYMBOL(down_read_interruptible); + int __sched down_read_killable(struct rw_semaphore *sem) { might_sleep(); @@ -1605,6 +1631,20 @@ } EXPORT_SYMBOL(down_read_nested); +int down_read_killable_nested(struct rw_semaphore *sem, int subclass) +{ + might_sleep(); + rwsem_acquire_read(&sem->dep_map, subclass, 0, _RET_IP_); + + if (LOCK_CONTENDED_RETURN(sem, __down_read_trylock, __down_read_killable)) { + rwsem_release(&sem->dep_map, _RET_IP_); + return -EINTR; + } + + return 0; +} +EXPORT_SYMBOL(down_read_killable_nested); + void _down_write_nest_lock(struct rw_semaphore *sem, struct lockdep_map *nest) { might_sleep(); --- linux-azure-5.8-5.8.0.orig/kernel/module.c +++ linux-azure-5.8-5.8.0/kernel/module.c @@ -91,8 +91,9 @@ static LIST_HEAD(modules); /* Work queue for freeing init sections in success case */ -static struct work_struct init_free_wq; -static struct llist_head init_free_list; +static void do_free_init(struct work_struct *w); +static DECLARE_WORK(init_free_wq, do_free_init); +static LLIST_HEAD(init_free_list); #ifdef CONFIG_MODULES_TREE_LOOKUP @@ -1520,18 +1521,34 @@ struct module_sect_attr attrs[]; }; +#define MODULE_SECT_READ_SIZE (3 /* "0x", "\n" */ + (BITS_PER_LONG / 4)) static ssize_t module_sect_read(struct file *file, struct kobject *kobj, struct bin_attribute *battr, char *buf, loff_t pos, size_t count) { struct module_sect_attr *sattr = container_of(battr, struct module_sect_attr, battr); + char bounce[MODULE_SECT_READ_SIZE + 1]; + size_t wrote; if (pos != 0) return -EINVAL; - return sprintf(buf, "0x%px\n", - kallsyms_show_value(file->f_cred) ? (void *)sattr->address : NULL); + /* + * Since we're a binary read handler, we must account for the + * trailing NUL byte that sprintf will write: if "buf" is + * too small to hold the NUL, or the NUL is exactly the last + * byte, the read will look like it got truncated by one byte. + * Since there is no way to ask sprintf nicely to not write + * the NUL, we have to use a bounce buffer. + */ + wrote = scnprintf(bounce, sizeof(bounce), "0x%px\n", + kallsyms_show_value(file->f_cred) + ? (void *)sattr->address : NULL); + count = min(count, wrote); + memcpy(buf, bounce, count); + + return count; } static void free_sect_attrs(struct module_sect_attrs *sect_attrs) @@ -1580,7 +1597,7 @@ goto out; sect_attrs->nsections++; sattr->battr.read = module_sect_read; - sattr->battr.size = 3 /* "0x", "\n" */ + (BITS_PER_LONG / 4); + sattr->battr.size = MODULE_SECT_READ_SIZE; sattr->battr.attr.mode = 0400; *(gattr++) = &(sattr++)->battr; } @@ -1849,7 +1866,6 @@ if (err) mod_kobject_put(mod); - /* delay uevent until full sysfs population */ out: return err; } @@ -1886,7 +1902,6 @@ add_sect_attrs(mod, info); add_notes_attrs(mod, info); - kobject_uevent(&mod->mkobj.kobj, KOBJ_ADD); return 0; out_unreg_modinfo_attrs: @@ -2268,6 +2283,21 @@ return 0; } +static bool ignore_undef_symbol(Elf_Half emachine, const char *name) +{ + /* + * On x86, PIC code and Clang non-PIC code may have call foo@PLT. GNU as + * before 2.37 produces an unreferenced _GLOBAL_OFFSET_TABLE_ on x86-64. + * i386 has a similar problem but may not deserve a fix. + * + * If we ever have to ignore many symbols, consider refactoring the code to + * only warn if referenced by a relocation. + */ + if (emachine == EM_386 || emachine == EM_X86_64) + return !strcmp(name, "_GLOBAL_OFFSET_TABLE_"); + return false; +} + /* Change all symbols so that st_value encodes the pointer directly. */ static int simplify_symbols(struct module *mod, const struct load_info *info) { @@ -2313,8 +2343,10 @@ break; } - /* Ok if weak. */ - if (!ksym && ELF_ST_BIND(sym[i].st_info) == STB_WEAK) + /* Ok if weak or ignored. */ + if (!ksym && + (ELF_ST_BIND(sym[i].st_info) == STB_WEAK || + ignore_undef_symbol(info->hdr->e_machine, name))) break; ret = PTR_ERR(ksym) ?: -ENOENT; @@ -3535,14 +3567,6 @@ } } -static int __init modules_wq_init(void) -{ - INIT_WORK(&init_free_wq, do_free_init); - init_llist_head(&init_free_list); - return 0; -} -module_init(modules_wq_init); - /* * This is where the real work happens. * @@ -3587,6 +3611,9 @@ blocking_notifier_call_chain(&module_notify_list, MODULE_STATE_LIVE, mod); + /* Delay uevent until module has finished its init routine */ + kobject_uevent(&mod->mkobj.kobj, KOBJ_ADD); + /* * We need to finish all async code before the module init sequence * is done. This has potential to deadlock. For example, a newly @@ -3932,6 +3959,7 @@ MODULE_STATE_GOING, mod); klp_module_going(mod); bug_cleanup: + mod->state = MODULE_STATE_GOING; /* module_bug_cleanup needs module_mutex protection */ mutex_lock(&module_mutex); module_bug_cleanup(mod); @@ -3991,7 +4019,7 @@ { struct load_info info = { }; loff_t size; - void *hdr; + void *hdr = NULL; int err; err = may_init_module(); --- linux-azure-5.8-5.8.0.orig/kernel/module_signing.c +++ linux-azure-5.8-5.8.0/kernel/module_signing.c @@ -38,8 +38,15 @@ modlen -= sig_len + sizeof(ms); info->len = modlen; - return verify_pkcs7_signature(mod, modlen, mod + modlen, sig_len, + ret = verify_pkcs7_signature(mod, modlen, mod + modlen, sig_len, VERIFY_USE_SECONDARY_KEYRING, VERIFYING_MODULE_SIGNATURE, NULL, NULL); + if (ret == -ENOKEY && IS_ENABLED(CONFIG_INTEGRITY_PLATFORM_KEYRING)) { + ret = verify_pkcs7_signature(mod, modlen, mod + modlen, sig_len, + VERIFY_USE_PLATFORM_KEYRING, + VERIFYING_MODULE_SIGNATURE, + NULL, NULL); + } + return ret; } --- linux-azure-5.8-5.8.0.orig/kernel/padata.c +++ linux-azure-5.8-5.8.0/kernel/padata.c @@ -215,12 +215,13 @@ padata->pd = pd; padata->cb_cpu = *cb_cpu; - rcu_read_unlock_bh(); - spin_lock(&padata_works_lock); padata->seq_nr = ++pd->seq_nr; pw = padata_work_alloc(); spin_unlock(&padata_works_lock); + + rcu_read_unlock_bh(); + if (pw) { padata_work_init(pw, padata_parallel_worker, padata, 0); queue_work(pinst->parallel_wq, &pw->pw_work); --- linux-azure-5.8-5.8.0.orig/kernel/pid.c +++ linux-azure-5.8-5.8.0/kernel/pid.c @@ -42,6 +42,7 @@ #include #include #include +#include struct pid init_struct_pid = { .count = REFCOUNT_INIT(1), @@ -606,7 +607,7 @@ struct file *file; int ret; - ret = mutex_lock_killable(&task->signal->exec_update_mutex); + ret = down_read_killable(&task->signal->exec_update_lock); if (ret) return ERR_PTR(ret); @@ -615,7 +616,7 @@ else file = ERR_PTR(-EPERM); - mutex_unlock(&task->signal->exec_update_mutex); + up_read(&task->signal->exec_update_lock); return file ?: ERR_PTR(-EBADF); } @@ -642,10 +643,12 @@ } ret = get_unused_fd_flags(O_CLOEXEC); - if (ret < 0) + if (ret < 0) { fput(file); - else + } else { + __receive_sock(file); fd_install(ret, file); + } return ret; } --- linux-azure-5.8-5.8.0.orig/kernel/power/hibernate.c +++ linux-azure-5.8-5.8.0/kernel/power/hibernate.c @@ -851,17 +851,6 @@ /* Check if the device is there */ swsusp_resume_device = name_to_dev_t(resume_file); - - /* - * name_to_dev_t is ineffective to verify parition if resume_file is in - * integer format. (e.g. major:minor) - */ - if (isdigit(resume_file[0]) && resume_wait) { - int partno; - while (!get_gendisk(swsusp_resume_device, &partno)) - msleep(10); - } - if (!swsusp_resume_device) { /* * Some device discovery might still be in progress; we need --- linux-azure-5.8-5.8.0.orig/kernel/power/swap.c +++ linux-azure-5.8-5.8.0/kernel/power/swap.c @@ -226,6 +226,7 @@ atomic_t count; wait_queue_head_t wait; blk_status_t error; + struct blk_plug plug; }; static void hib_init_batch(struct hib_bio_batch *hb) @@ -233,6 +234,12 @@ atomic_set(&hb->count, 0); init_waitqueue_head(&hb->wait); hb->error = BLK_STS_OK; + blk_start_plug(&hb->plug); +} + +static void hib_finish_batch(struct hib_bio_batch *hb) +{ + blk_finish_plug(&hb->plug); } static void hib_end_io(struct bio *bio) @@ -294,6 +301,10 @@ static blk_status_t hib_wait_io(struct hib_bio_batch *hb) { + /* + * We are relying on the behavior of blk_plug that a thread with + * a plug will flush the plug list before sleeping. + */ wait_event(hb->wait, atomic_read(&hb->count) == 0); return blk_status_to_errno(hb->error); } @@ -489,10 +500,10 @@ unsigned int flags, int error) { if (!error) { - flush_swap_writer(handle); pr_info("S"); error = mark_swapfiles(handle, flags); pr_cont("|\n"); + flush_swap_writer(handle); } if (error) @@ -561,6 +572,7 @@ nr_pages++; } err2 = hib_wait_io(&hb); + hib_finish_batch(&hb); stop = ktime_get(); if (!ret) ret = err2; @@ -854,6 +866,7 @@ pr_info("Image saving done\n"); swsusp_show_speed(start, stop, nr_to_write, "Wrote"); out_clean: + hib_finish_batch(&hb); if (crc) { if (crc->thr) kthread_stop(crc->thr); @@ -1084,6 +1097,7 @@ nr_pages++; } err2 = hib_wait_io(&hb); + hib_finish_batch(&hb); stop = ktime_get(); if (!ret) ret = err2; @@ -1447,6 +1461,7 @@ } swsusp_show_speed(start, stop, nr_to_read, "Read"); out_clean: + hib_finish_batch(&hb); for (i = 0; i < ring_size; i++) free_page((unsigned long)page[i]); if (crc) { --- linux-azure-5.8-5.8.0.orig/kernel/printk/printk_safe.c +++ linux-azure-5.8-5.8.0/kernel/printk/printk_safe.c @@ -45,6 +45,8 @@ static DEFINE_PER_CPU(struct printk_safe_seq_buf, safe_print_seq); static DEFINE_PER_CPU(int, printk_context); +static DEFINE_RAW_SPINLOCK(safe_read_lock); + #ifdef CONFIG_PRINTK_NMI static DEFINE_PER_CPU(struct printk_safe_seq_buf, nmi_print_seq); #endif @@ -180,8 +182,6 @@ */ static void __printk_safe_flush(struct irq_work *work) { - static raw_spinlock_t read_lock = - __RAW_SPIN_LOCK_INITIALIZER(read_lock); struct printk_safe_seq_buf *s = container_of(work, struct printk_safe_seq_buf, work); unsigned long flags; @@ -195,7 +195,7 @@ * different CPUs. This is especially important when printing * a backtrace. */ - raw_spin_lock_irqsave(&read_lock, flags); + raw_spin_lock_irqsave(&safe_read_lock, flags); i = 0; more: @@ -232,7 +232,7 @@ out: report_message_lost(s); - raw_spin_unlock_irqrestore(&read_lock, flags); + raw_spin_unlock_irqrestore(&safe_read_lock, flags); } /** @@ -278,6 +278,14 @@ raw_spin_lock_init(&logbuf_lock); } + if (raw_spin_is_locked(&safe_read_lock)) { + if (num_online_cpus() > 1) + return; + + debug_locks_off(); + raw_spin_lock_init(&safe_read_lock); + } + printk_safe_flush(); } --- linux-azure-5.8-5.8.0.orig/kernel/ptrace.c +++ linux-azure-5.8-5.8.0/kernel/ptrace.c @@ -264,17 +264,11 @@ return ret; } -static bool ptrace_has_cap(const struct cred *cred, struct user_namespace *ns, - unsigned int mode) +static bool ptrace_has_cap(struct user_namespace *ns, unsigned int mode) { - int ret; - if (mode & PTRACE_MODE_NOAUDIT) - ret = security_capable(cred, ns, CAP_SYS_PTRACE, CAP_OPT_NOAUDIT); - else - ret = security_capable(cred, ns, CAP_SYS_PTRACE, CAP_OPT_NONE); - - return ret == 0; + return ns_capable_noaudit(ns, CAP_SYS_PTRACE); + return ns_capable(ns, CAP_SYS_PTRACE); } /* Returns 0 on success, -errno on denial. */ @@ -326,7 +320,7 @@ gid_eq(caller_gid, tcred->sgid) && gid_eq(caller_gid, tcred->gid)) goto ok; - if (ptrace_has_cap(cred, tcred->user_ns, mode)) + if (ptrace_has_cap(tcred->user_ns, mode)) goto ok; rcu_read_unlock(); return -EPERM; @@ -345,7 +339,7 @@ mm = task->mm; if (mm && ((get_dumpable(mm) != SUID_DUMP_USER) && - !ptrace_has_cap(cred, mm->user_ns, mode))) + !ptrace_has_cap(mm->user_ns, mode))) return -EPERM; return security_ptrace_access_check(task, mode); --- linux-azure-5.8-5.8.0.orig/kernel/rcu/rcutorture.c +++ linux-azure-5.8-5.8.0/kernel/rcu/rcutorture.c @@ -2154,9 +2154,20 @@ return -ENOMEM; spin_lock_init(&rfp->rcu_fwd_lock); rfp->rcu_fwd_cb_tail = &rfp->rcu_fwd_cb_head; + rcu_fwds = rfp; return torture_create_kthread(rcu_torture_fwd_prog, rfp, fwd_prog_task); } +static void rcu_torture_fwd_prog_cleanup(void) +{ + struct rcu_fwd *rfp; + + torture_stop_kthread(rcu_torture_fwd_prog, fwd_prog_task); + rfp = rcu_fwds; + rcu_fwds = NULL; + kfree(rfp); +} + /* Callback function for RCU barrier testing. */ static void rcu_torture_barrier_cbf(struct rcu_head *rcu) { @@ -2360,7 +2371,7 @@ show_rcu_gp_kthreads(); rcu_torture_barrier_cleanup(); - torture_stop_kthread(rcu_torture_fwd_prog, fwd_prog_task); + rcu_torture_fwd_prog_cleanup(); torture_stop_kthread(rcu_torture_stall, stall_task); torture_stop_kthread(rcu_torture_writer, writer_task); --- linux-azure-5.8-5.8.0.orig/kernel/rcu/tasks.h +++ linux-azure-5.8-5.8.0/kernel/rcu/tasks.h @@ -811,6 +811,12 @@ WRITE_ONCE(t->trc_reader_checked, true); goto reset_ipi; } + // If we are racing with an rcu_read_unlock_trace(), try again later. + if (unlikely(t->trc_reader_nesting < 0)) { + if (WARN_ON_ONCE(atomic_dec_and_test(&trc_n_readers_need_end))) + wake_up(&trc_wait); + goto reset_ipi; + } WRITE_ONCE(t->trc_reader_checked, true); // Get here if the task is in a read-side critical section. Set @@ -1062,15 +1068,17 @@ if (ret) break; // Count reached zero. // Stall warning time, so make a list of the offenders. + rcu_read_lock(); for_each_process_thread(g, t) if (READ_ONCE(t->trc_reader_special.b.need_qs)) trc_add_holdout(t, &holdouts); + rcu_read_unlock(); firstreport = true; - list_for_each_entry_safe(t, g, &holdouts, trc_holdout_list) - if (READ_ONCE(t->trc_reader_special.b.need_qs)) { + list_for_each_entry_safe(t, g, &holdouts, trc_holdout_list) { + if (READ_ONCE(t->trc_reader_special.b.need_qs)) show_stalled_task_trace(t, &firstreport); - trc_del_holdout(t); - } + trc_del_holdout(t); // Release task_struct reference. + } if (firstreport) pr_err("INFO: rcu_tasks_trace detected stalls? (Counter/taskslist mismatch?)\n"); show_stalled_ipi_trace(); --- linux-azure-5.8-5.8.0.orig/kernel/rcu/tree.c +++ linux-azure-5.8-5.8.0/kernel/rcu/tree.c @@ -404,7 +404,7 @@ * * The caller must have disabled interrupts and must not be idle. */ -void rcu_momentary_dyntick_idle(void) +notrace void rcu_momentary_dyntick_idle(void) { int special; @@ -630,7 +630,6 @@ trace_rcu_dyntick(TPS("Start"), rdp->dynticks_nesting, 0, atomic_read(&rdp->dynticks)); WARN_ON_ONCE(IS_ENABLED(CONFIG_RCU_EQS_DEBUG) && !user && !is_idle_task(current)); rdp = this_cpu_ptr(&rcu_data); - do_nocb_deferred_wakeup(rdp); rcu_prepare_for_idle(); rcu_preempt_deferred_qs(current); @@ -676,7 +675,14 @@ */ noinstr void rcu_user_enter(void) { + struct rcu_data *rdp = this_cpu_ptr(&rcu_data); + lockdep_assert_irqs_disabled(); + + instrumentation_begin(); + do_nocb_deferred_wakeup(rdp); + instrumentation_end(); + rcu_eqs_enter(true); } #endif /* CONFIG_NO_HZ_FULL */ @@ -920,8 +926,8 @@ { struct rcu_data *rdp = this_cpu_ptr(&rcu_data); - // Enabling the tick is unsafe in NMI handlers. - if (WARN_ON_ONCE(in_nmi())) + // If we're here from NMI there's nothing to do. + if (in_nmi()) return; RCU_LOCKDEP_WARN(rcu_dynticks_curr_cpu_in_eqs(), @@ -1088,8 +1094,11 @@ * CPU can safely enter RCU read-side critical sections. In other words, * if the current CPU is not in its idle loop or is in an interrupt or * NMI handler, return true. + * + * Make notrace because it can be called by the internal functions of + * ftrace, and making this notrace removes unnecessary recursion calls. */ -bool rcu_is_watching(void) +notrace bool rcu_is_watching(void) { bool ret; @@ -1882,7 +1891,7 @@ break; /* If time for quiescent-state forcing, do it. */ if (!time_after(rcu_state.jiffies_force_qs, jiffies) || - (gf & RCU_GP_FLAG_FQS)) { + (gf & (RCU_GP_FLAG_FQS | RCU_GP_FLAG_OVLD))) { trace_rcu_grace_period(rcu_state.name, rcu_state.gp_seq, TPS("fqsstart")); rcu_gp_fqs(first_gp_fqs); @@ -3105,7 +3114,7 @@ static inline bool queue_kfree_rcu_work(struct kfree_rcu_cpu *krcp) { struct kfree_rcu_cpu_work *krwp; - bool queued = false; + bool repeat = false; int i; lockdep_assert_held(&krcp->lock); @@ -3143,11 +3152,14 @@ * been detached following each other, one by one. */ queue_rcu_work(system_wq, &krwp->rcu_work); - queued = true; } + + /* Repeat if any "free" corresponding channel is still busy. */ + if (krcp->bhead || krcp->head) + repeat = true; } - return queued; + return !repeat; } static inline void kfree_rcu_drain_unlock(struct kfree_rcu_cpu *krcp, @@ -3877,7 +3889,6 @@ smp_mb(); /* Ensure RCU read-side usage follows above initialization. */ } -#ifdef CONFIG_HOTPLUG_CPU /* * The outgoing function has no further need of RCU, so remove it from * the rcu_node tree's ->qsmaskinitnext bit masks. @@ -3917,6 +3928,7 @@ per_cpu(rcu_cpu_started, cpu) = 0; } +#ifdef CONFIG_HOTPLUG_CPU /* * The outgoing CPU has just passed through the dying-idle state, and we * are being invoked from the CPU that was IPIed to continue the offline --- linux-azure-5.8-5.8.0.orig/kernel/rcu/tree_plugin.h +++ linux-azure-5.8-5.8.0/kernel/rcu/tree_plugin.h @@ -2158,6 +2158,11 @@ do_nocb_deferred_wakeup_common(rdp); } +void rcu_nocb_flush_deferred_wakeup(void) +{ + do_nocb_deferred_wakeup(this_cpu_ptr(&rcu_data)); +} + void __init rcu_init_nohz(void) { int cpu; --- linux-azure-5.8-5.8.0.orig/kernel/rcu/tree_stall.h +++ linux-azure-5.8-5.8.0/kernel/rcu/tree_stall.h @@ -251,13 +251,16 @@ /* * Scan the current list of tasks blocked within RCU read-side critical - * sections, printing out the tid of each. + * sections, printing out the tid of each of the first few of them. */ -static int rcu_print_task_stall(struct rcu_node *rnp) +static int rcu_print_task_stall(struct rcu_node *rnp, unsigned long flags) + __releases(rnp->lock) { + int i = 0; int ndetected = 0; struct rcu_stall_chk_rdr rscr; struct task_struct *t; + struct task_struct *ts[8]; if (!rcu_preempt_blocked_readers_cgp(rnp)) return 0; @@ -266,6 +269,14 @@ t = list_entry(rnp->gp_tasks->prev, struct task_struct, rcu_node_entry); list_for_each_entry_continue(t, &rnp->blkd_tasks, rcu_node_entry) { + get_task_struct(t); + ts[i++] = t; + if (i >= ARRAY_SIZE(ts)) + break; + } + raw_spin_unlock_irqrestore_rcu_node(rnp, flags); + for (i--; i; i--) { + t = ts[i]; if (!try_invoke_on_locked_down_task(t, check_slow_task, &rscr)) pr_cont(" P%d", t->pid); else @@ -275,6 +286,7 @@ ".q"[rscr.rs.b.need_qs], ".e"[rscr.rs.b.exp_hint], ".l"[rscr.on_blkd_list]); + put_task_struct(t); ndetected++; } pr_cont("\n"); @@ -295,8 +307,9 @@ * Because preemptible RCU does not exist, we never have to check for * tasks blocked within RCU read-side critical sections. */ -static int rcu_print_task_stall(struct rcu_node *rnp) +static int rcu_print_task_stall(struct rcu_node *rnp, unsigned long flags) { + raw_spin_unlock_irqrestore_rcu_node(rnp, flags); return 0; } #endif /* #else #ifdef CONFIG_PREEMPT_RCU */ @@ -474,7 +487,6 @@ pr_err("INFO: %s detected stalls on CPUs/tasks:\n", rcu_state.name); rcu_for_each_leaf_node(rnp) { raw_spin_lock_irqsave_rcu_node(rnp, flags); - ndetected += rcu_print_task_stall(rnp); if (rnp->qsmask != 0) { for_each_leaf_node_possible_cpu(rnp, cpu) if (rnp->qsmask & leaf_node_cpu_bit(rnp, cpu)) { @@ -482,7 +494,7 @@ ndetected++; } } - raw_spin_unlock_irqrestore_rcu_node(rnp, flags); + ndetected += rcu_print_task_stall(rnp, flags); // Releases rnp->lock. } for_each_possible_cpu(cpu) --- linux-azure-5.8-5.8.0.orig/kernel/reboot.c +++ linux-azure-5.8-5.8.0/kernel/reboot.c @@ -244,6 +244,8 @@ void kernel_restart(char *cmd) { kernel_restart_prepare(cmd); + if (pm_power_off_prepare) + pm_power_off_prepare(); migrate_to_reboot_cpu(); syscore_shutdown(); if (!cmd) @@ -551,22 +553,22 @@ break; case 's': - { - int rc; - - if (isdigit(*(str+1))) { - rc = kstrtoint(str+1, 0, &reboot_cpu); - if (rc) - return rc; - } else if (str[1] == 'm' && str[2] == 'p' && - isdigit(*(str+3))) { - rc = kstrtoint(str+3, 0, &reboot_cpu); - if (rc) - return rc; - } else + if (isdigit(*(str+1))) + reboot_cpu = simple_strtoul(str+1, NULL, 0); + else if (str[1] == 'm' && str[2] == 'p' && + isdigit(*(str+3))) + reboot_cpu = simple_strtoul(str+3, NULL, 0); + else *mode = REBOOT_SOFT; + if (reboot_cpu >= num_possible_cpus()) { + pr_err("Ignoring the CPU number in reboot= option. " + "CPU %d exceeds possible cpu number %d\n", + reboot_cpu, num_possible_cpus()); + reboot_cpu = 0; + break; + } break; - } + case 'g': *mode = REBOOT_GPIO; break; --- linux-azure-5.8-5.8.0.orig/kernel/relay.c +++ linux-azure-5.8-5.8.0/kernel/relay.c @@ -197,6 +197,7 @@ static void relay_destroy_channel(struct kref *kref) { struct rchan *chan = container_of(kref, struct rchan, kref); + free_percpu(chan->buf); kfree(chan); } --- linux-azure-5.8-5.8.0.orig/kernel/sched/core.c +++ linux-azure-5.8-5.8.0/kernel/sched/core.c @@ -39,7 +39,7 @@ DEFINE_PER_CPU_SHARED_ALIGNED(struct rq, runqueues); -#if defined(CONFIG_SCHED_DEBUG) && defined(CONFIG_JUMP_LABEL) +#ifdef CONFIG_SCHED_DEBUG /* * Debugging: various feature bits * @@ -794,6 +794,26 @@ /* All clamps are required to be less or equal than these values */ static struct uclamp_se uclamp_default[UCLAMP_CNT]; +/* + * This static key is used to reduce the uclamp overhead in the fast path. It + * primarily disables the call to uclamp_rq_{inc, dec}() in + * enqueue/dequeue_task(). + * + * This allows users to continue to enable uclamp in their kernel config with + * minimum uclamp overhead in the fast path. + * + * As soon as userspace modifies any of the uclamp knobs, the static key is + * enabled, since we have an actual users that make use of uclamp + * functionality. + * + * The knobs that would enable this static key are: + * + * * A task modifying its uclamp value with sched_setattr(). + * * An admin modifying the sysctl_sched_uclamp_{min, max} via procfs. + * * An admin modifying the cgroup cpu.uclamp.{min, max} + */ +DEFINE_STATIC_KEY_FALSE(sched_uclamp_used); + /* Integer rounded range for each bucket */ #define UCLAMP_BUCKET_DELTA DIV_ROUND_CLOSEST(SCHED_CAPACITY_SCALE, UCLAMP_BUCKETS) @@ -990,10 +1010,38 @@ lockdep_assert_held(&rq->lock); + /* + * If sched_uclamp_used was enabled after task @p was enqueued, + * we could end up with unbalanced call to uclamp_rq_dec_id(). + * + * In this case the uc_se->active flag should be false since no uclamp + * accounting was performed at enqueue time and we can just return + * here. + * + * Need to be careful of the following enqeueue/dequeue ordering + * problem too + * + * enqueue(taskA) + * // sched_uclamp_used gets enabled + * enqueue(taskB) + * dequeue(taskA) + * // Must not decrement bukcet->tasks here + * dequeue(taskB) + * + * where we could end up with stale data in uc_se and + * bucket[uc_se->bucket_id]. + * + * The following check here eliminates the possibility of such race. + */ + if (unlikely(!uc_se->active)) + return; + bucket = &uc_rq->bucket[uc_se->bucket_id]; + SCHED_WARN_ON(!bucket->tasks); if (likely(bucket->tasks)) bucket->tasks--; + uc_se->active = false; /* @@ -1021,6 +1069,15 @@ { enum uclamp_id clamp_id; + /* + * Avoid any overhead until uclamp is actually used by the userspace. + * + * The condition is constructed such that a NOP is generated when + * sched_uclamp_used is disabled. + */ + if (!static_branch_unlikely(&sched_uclamp_used)) + return; + if (unlikely(!p->sched_class->uclamp_enabled)) return; @@ -1036,6 +1093,15 @@ { enum uclamp_id clamp_id; + /* + * Avoid any overhead until uclamp is actually used by the userspace. + * + * The condition is constructed such that a NOP is generated when + * sched_uclamp_used is disabled. + */ + if (!static_branch_unlikely(&sched_uclamp_used)) + return; + if (unlikely(!p->sched_class->uclamp_enabled)) return; @@ -1144,8 +1210,10 @@ update_root_tg = true; } - if (update_root_tg) + if (update_root_tg) { + static_branch_enable(&sched_uclamp_used); uclamp_update_root_tg(); + } /* * We update all RUNNABLE tasks only when task groups are in use. @@ -1180,6 +1248,15 @@ if (upper_bound > SCHED_CAPACITY_SCALE) return -EINVAL; + /* + * We have valid uclamp attributes; make sure uclamp is enabled. + * + * We need to do that here, because enabling static branches is a + * blocking operation which obviously cannot be done while holding + * scheduler locks. + */ + static_branch_enable(&sched_uclamp_used); + return 0; } @@ -1237,6 +1314,20 @@ } } +static void __init init_uclamp_rq(struct rq *rq) +{ + enum uclamp_id clamp_id; + struct uclamp_rq *uc_rq = rq->uclamp; + + for_each_clamp_id(clamp_id) { + uc_rq[clamp_id] = (struct uclamp_rq) { + .value = uclamp_none(clamp_id) + }; + } + + rq->uclamp_flags = 0; +} + static void __init init_uclamp(void) { struct uclamp_se uc_max = {}; @@ -1245,11 +1336,8 @@ mutex_init(&uclamp_mutex); - for_each_possible_cpu(cpu) { - memset(&cpu_rq(cpu)->uclamp, 0, - sizeof(struct uclamp_rq)*UCLAMP_CNT); - cpu_rq(cpu)->uclamp_flags = 0; - } + for_each_possible_cpu(cpu) + init_uclamp_rq(cpu_rq(cpu)); for_each_clamp_id(clamp_id) { uclamp_se_set(&init_task.uclamp_req[clamp_id], @@ -2236,7 +2324,12 @@ #ifdef CONFIG_SMP if (wake_flags & WF_MIGRATED) en_flags |= ENQUEUE_MIGRATED; + else #endif + if (p->in_iowait) { + delayacct_blkio_end(p); + atomic_dec(&task_rq(p)->nr_iowait); + } activate_task(rq, p, en_flags); ttwu_do_wakeup(rq, p, wake_flags, rf); @@ -2580,11 +2673,6 @@ if (READ_ONCE(p->on_rq) && ttwu_remote(p, wake_flags)) goto unlock; - if (p->in_iowait) { - delayacct_blkio_end(p); - atomic_dec(&task_rq(p)->nr_iowait); - } - #ifdef CONFIG_SMP /* * Ensure we load p->on_cpu _after_ p->on_rq, otherwise it would be @@ -2655,6 +2743,11 @@ cpu = select_task_rq(p, p->wake_cpu, SD_BALANCE_WAKE, wake_flags); if (task_cpu(p) != cpu) { + if (p->in_iowait) { + delayacct_blkio_end(p); + atomic_dec(&task_rq(p)->nr_iowait); + } + wake_flags |= WF_MIGRATED; psi_ttwu_dequeue(p); set_task_cpu(p, cpu); @@ -4709,6 +4802,7 @@ return (nice_rlim <= task_rlimit(p, RLIMIT_NICE) || capable(CAP_SYS_NICE)); } +EXPORT_SYMBOL(can_nice); #ifdef __ARCH_WANT_SYS_NICE @@ -5738,12 +5832,8 @@ schedstat_inc(rq->yld_count); current->sched_class->yield_task(rq); - /* - * Since we are going to call schedule() anyway, there's - * no need to preempt or enable interrupts: - */ preempt_disable(); - rq_unlock(rq, &rf); + rq_unlock_irq(rq, &rf); sched_preempt_enable_no_resched(); schedule(); @@ -7431,6 +7521,8 @@ if (req.ret) return req.ret; + static_branch_enable(&sched_uclamp_used); + mutex_lock(&uclamp_mutex); rcu_read_lock(); --- linux-azure-5.8-5.8.0.orig/kernel/sched/cpufreq_schedutil.c +++ linux-azure-5.8-5.8.0/kernel/sched/cpufreq_schedutil.c @@ -102,7 +102,8 @@ static bool sugov_update_next_freq(struct sugov_policy *sg_policy, u64 time, unsigned int next_freq) { - if (sg_policy->next_freq == next_freq) + if (sg_policy->next_freq == next_freq && + !cpufreq_driver_test_flags(CPUFREQ_NEED_UPDATE_LIMITS)) return false; sg_policy->next_freq = next_freq; @@ -175,7 +176,8 @@ freq = map_util_freq(util, freq, max); - if (freq == sg_policy->cached_raw_freq && !sg_policy->need_freq_update) + if (freq == sg_policy->cached_raw_freq && !sg_policy->need_freq_update && + !cpufreq_driver_test_flags(CPUFREQ_NEED_UPDATE_LIMITS)) return sg_policy->next_freq; sg_policy->need_freq_update = false; @@ -210,7 +212,7 @@ unsigned long dl_util, util, irq; struct rq *rq = cpu_rq(cpu); - if (!IS_BUILTIN(CONFIG_UCLAMP_TASK) && + if (!uclamp_is_used() && type == FREQUENCY_UTIL && rt_rq_is_runnable(&rq->rt)) { return max; } @@ -894,7 +896,7 @@ struct cpufreq_governor schedutil_gov = { .name = "schedutil", .owner = THIS_MODULE, - .dynamic_switching = true, + .flags = CPUFREQ_GOV_DYNAMIC_SWITCHING, .init = sugov_init, .exit = sugov_exit, .start = sugov_start, --- linux-azure-5.8-5.8.0.orig/kernel/sched/deadline.c +++ linux-azure-5.8-5.8.0/kernel/sched/deadline.c @@ -2468,7 +2468,7 @@ u64 period = global_rt_period(); u64 new_bw = to_ratio(period, runtime); struct dl_bw *dl_b; - int cpu, ret = 0; + int cpu, cpus, ret = 0; unsigned long flags; /* @@ -2483,9 +2483,10 @@ for_each_possible_cpu(cpu) { rcu_read_lock_sched(); dl_b = dl_bw_of(cpu); + cpus = dl_bw_cpus(cpu); raw_spin_lock_irqsave(&dl_b->lock, flags); - if (new_bw < dl_b->total_bw) + if (new_bw * cpus < dl_b->total_bw) ret = -EBUSY; raw_spin_unlock_irqrestore(&dl_b->lock, flags); --- linux-azure-5.8-5.8.0.orig/kernel/sched/fair.c +++ linux-azure-5.8-5.8.0/kernel/sched/fair.c @@ -1550,7 +1550,7 @@ static unsigned long cpu_load(struct rq *rq); static unsigned long cpu_util(int cpu); -static inline long adjust_numa_imbalance(int imbalance, int src_nr_running); +static inline long adjust_numa_imbalance(int imbalance, int nr_running); static inline enum numa_type numa_classify(unsigned int imbalance_pct, @@ -1927,7 +1927,7 @@ src_running = env->src_stats.nr_running - 1; dst_running = env->dst_stats.nr_running + 1; imbalance = max(0, dst_running - src_running); - imbalance = adjust_numa_imbalance(imbalance, src_running); + imbalance = adjust_numa_imbalance(imbalance, dst_running); /* Use idle CPU if there is no imbalance */ if (!imbalance) { @@ -2925,7 +2925,7 @@ curr->node_stamp += period; if (!time_before(jiffies, curr->mm->numa_next_scan)) - task_work_add(curr, work, true); + task_work_add(curr, work, TWA_RESUME); } } @@ -3924,6 +3924,20 @@ WRITE_ONCE(cfs_rq->avg.util_est.enqueued, enqueued); } +static inline void util_est_dequeue(struct cfs_rq *cfs_rq, + struct task_struct *p) +{ + unsigned int enqueued; + + if (!sched_feat(UTIL_EST)) + return; + + /* Update root cfs_rq's estimated utilization */ + enqueued = cfs_rq->avg.util_est.enqueued; + enqueued -= min_t(unsigned int, enqueued, _task_util_est(p)); + WRITE_ONCE(cfs_rq->avg.util_est.enqueued, enqueued); +} + /* * Check if a (signed) value is within a specified (unsigned) margin, * based on the observation that: @@ -3937,21 +3951,16 @@ return ((unsigned int)(value + margin - 1) < (2 * margin - 1)); } -static void -util_est_dequeue(struct cfs_rq *cfs_rq, struct task_struct *p, bool task_sleep) +static inline void util_est_update(struct cfs_rq *cfs_rq, + struct task_struct *p, + bool task_sleep) { long last_ewma_diff; struct util_est ue; - int cpu; if (!sched_feat(UTIL_EST)) return; - /* Update root cfs_rq's estimated utilization */ - ue.enqueued = cfs_rq->avg.util_est.enqueued; - ue.enqueued -= min_t(unsigned int, ue.enqueued, _task_util_est(p)); - WRITE_ONCE(cfs_rq->avg.util_est.enqueued, ue.enqueued); - /* * Skip update of task's estimated utilization when the task has not * yet completed an activation, e.g. being migrated. @@ -3991,8 +4000,7 @@ * To avoid overestimation of actual task utilization, skip updates if * we cannot grant there is idle time in this CPU. */ - cpu = cpu_of(rq_of(cfs_rq)); - if (task_util(p) > capacity_orig_of(cpu)) + if (task_util(p) > capacity_orig_of(cpu_of(rq_of(cfs_rq)))) return; /* @@ -4029,7 +4037,7 @@ if (!static_branch_unlikely(&sched_asym_cpucapacity)) return; - if (!p) { + if (!p || p->nr_cpus_allowed == 1) { rq->misfit_task_load = 0; return; } @@ -4073,8 +4081,11 @@ util_est_enqueue(struct cfs_rq *cfs_rq, struct task_struct *p) {} static inline void -util_est_dequeue(struct cfs_rq *cfs_rq, struct task_struct *p, - bool task_sleep) {} +util_est_dequeue(struct cfs_rq *cfs_rq, struct task_struct *p) {} + +static inline void +util_est_update(struct cfs_rq *cfs_rq, struct task_struct *p, + bool task_sleep) {} static inline void update_misfit_status(struct task_struct *p, struct rq *rq) {} #endif /* CONFIG_SMP */ @@ -5465,6 +5476,7 @@ struct cfs_rq *cfs_rq; struct sched_entity *se = &p->se; int idle_h_nr_running = task_has_idle_policy(p); + int task_new = !(flags & ENQUEUE_WAKEUP); /* * The code below (indirectly) updates schedutil which looks at @@ -5537,7 +5549,7 @@ * into account, but that is not straightforward to implement, * and the following generally works well enough in practice. */ - if (flags & ENQUEUE_WAKEUP) + if (!task_new) update_overutilized_status(rq); enqueue_throttle: @@ -5576,6 +5588,8 @@ int idle_h_nr_running = task_has_idle_policy(p); bool was_sched_idle = sched_idle_rq(rq); + util_est_dequeue(&rq->cfs, p); + for_each_sched_entity(se) { cfs_rq = cfs_rq_of(se); dequeue_entity(cfs_rq, se, flags); @@ -5626,7 +5640,7 @@ if (unlikely(!was_sched_idle && sched_idle_rq(rq))) rq->next_balance = jiffies; - util_est_dequeue(&rq->cfs, p, task_sleep); + util_est_update(&rq->cfs, p, task_sleep); hrtick_update(rq); } @@ -6067,7 +6081,7 @@ /* * Scan the local SMT mask for idle CPUs. */ -static int select_idle_smt(struct task_struct *p, int target) +static int select_idle_smt(struct task_struct *p, struct sched_domain *sd, int target) { int cpu; @@ -6075,7 +6089,8 @@ return -1; for_each_cpu(cpu, cpu_smt_mask(target)) { - if (!cpumask_test_cpu(cpu, p->cpus_ptr)) + if (!cpumask_test_cpu(cpu, p->cpus_ptr) || + !cpumask_test_cpu(cpu, sched_domain_span(sd))) continue; if (available_idle_cpu(cpu) || sched_idle_cpu(cpu)) return cpu; @@ -6091,7 +6106,7 @@ return -1; } -static inline int select_idle_smt(struct task_struct *p, int target) +static inline int select_idle_smt(struct task_struct *p, struct sched_domain *sd, int target) { return -1; } @@ -6266,7 +6281,7 @@ if ((unsigned)i < nr_cpumask_bits) return i; - i = select_idle_smt(p, target); + i = select_idle_smt(p, sd, target); if ((unsigned)i < nr_cpumask_bits) return i; @@ -6586,7 +6601,8 @@ util = cpu_util_next(cpu, p, cpu); cpu_cap = capacity_of(cpu); - spare_cap = cpu_cap - util; + spare_cap = cpu_cap; + lsub_positive(&spare_cap, util); /* * Skip CPUs that cannot satisfy the capacity request. @@ -8943,7 +8959,7 @@ } } -static inline long adjust_numa_imbalance(int imbalance, int src_nr_running) +static inline long adjust_numa_imbalance(int imbalance, int nr_running) { unsigned int imbalance_min; @@ -8952,7 +8968,7 @@ * tasks that remain local when the source domain is almost idle. */ imbalance_min = 2; - if (src_nr_running <= imbalance_min) + if (nr_running <= imbalance_min) return 0; return imbalance; @@ -10027,7 +10043,12 @@ { int ilb_cpu; - nohz.next_balance++; + /* + * Increase nohz.next_balance only when if full ilb is triggered but + * not if we only update stats. + */ + if (flags & NOHZ_BALANCE_KICK) + nohz.next_balance = jiffies+1; ilb_cpu = find_new_ilb(); @@ -10348,6 +10369,14 @@ } } + /* + * next_balance will be updated only when there is a need. + * When the CPU is attached to null domain for ex, it will not be + * updated. + */ + if (likely(update_next_balance)) + nohz.next_balance = next_balance; + /* Newly idle CPU doesn't need an update */ if (idle != CPU_NEWLY_IDLE) { update_blocked_averages(this_cpu); @@ -10368,14 +10397,6 @@ if (has_blocked_load) WRITE_ONCE(nohz.has_blocked, 1); - /* - * next_balance will be updated only when there is a need. - * When the CPU is attached to null domain for ex, it will not be - * updated. - */ - if (likely(update_next_balance)) - nohz.next_balance = next_balance; - return ret; } --- linux-azure-5.8-5.8.0.orig/kernel/sched/idle.c +++ linux-azure-5.8-5.8.0/kernel/sched/idle.c @@ -262,6 +262,7 @@ } arch_cpu_idle_enter(); + rcu_nocb_flush_deferred_wakeup(); /* * In poll mode we reenable interrupts and spin. Also if we --- linux-azure-5.8-5.8.0.orig/kernel/sched/membarrier.c +++ linux-azure-5.8-5.8.0/kernel/sched/membarrier.c @@ -30,6 +30,23 @@ smp_mb(); /* IPIs should be serializing but paranoid. */ } +static void ipi_sync_core(void *info) +{ + /* + * The smp_mb() in membarrier after all the IPIs is supposed to + * ensure that memory on remote CPUs that occur before the IPI + * become visible to membarrier()'s caller -- see scenario B in + * the big comment at the top of this file. + * + * A sync_core() would provide this guarantee, but + * sync_core_before_usermode() might end up being deferred until + * after membarrier()'s smp_mb(). + */ + smp_mb(); /* IPIs should be serializing but paranoid. */ + + sync_core_before_usermode(); +} + static void ipi_sync_rq_state(void *info) { struct mm_struct *mm = (struct mm_struct *) info; @@ -134,6 +151,7 @@ int cpu; cpumask_var_t tmpmask; struct mm_struct *mm = current->mm; + smp_call_func_t ipi_func = ipi_mb; if (flags & MEMBARRIER_FLAG_SYNC_CORE) { if (!IS_ENABLED(CONFIG_ARCH_HAS_MEMBARRIER_SYNC_CORE)) @@ -141,6 +159,7 @@ if (!(atomic_read(&mm->membarrier_state) & MEMBARRIER_STATE_PRIVATE_EXPEDITED_SYNC_CORE_READY)) return -EPERM; + ipi_func = ipi_sync_core; } else { if (!(atomic_read(&mm->membarrier_state) & MEMBARRIER_STATE_PRIVATE_EXPEDITED_READY)) @@ -181,7 +200,7 @@ rcu_read_unlock(); preempt_disable(); - smp_call_function_many(tmpmask, ipi_mb, NULL, 1); + smp_call_function_many(tmpmask, ipi_func, NULL, 1); preempt_enable(); free_cpumask_var(tmpmask); --- linux-azure-5.8-5.8.0.orig/kernel/sched/sched.h +++ linux-azure-5.8-5.8.0/kernel/sched/sched.h @@ -253,30 +253,6 @@ void __dl_clear_params(struct task_struct *p); -/* - * To keep the bandwidth of -deadline tasks and groups under control - * we need some place where: - * - store the maximum -deadline bandwidth of the system (the group); - * - cache the fraction of that bandwidth that is currently allocated. - * - * This is all done in the data structure below. It is similar to the - * one used for RT-throttling (rt_bandwidth), with the main difference - * that, since here we are only interested in admission control, we - * do not decrease any runtime while the group "executes", neither we - * need a timer to replenish it. - * - * With respect to SMP, the bandwidth is given on a per-CPU basis, - * meaning that: - * - dl_bw (< 100%) is the bandwidth of the system (group) on each CPU; - * - dl_total_bw array contains, in the i-eth element, the currently - * allocated bandwidth on the i-eth CPU. - * Moreover, groups consume bandwidth on each CPU, while tasks only - * consume bandwidth on the CPU they're running on. - * Finally, dl_total_bw_cpu is used to cache the index of dl_total_bw - * that will be shown the next time the proc or cgroup controls will - * be red. It on its turn can be changed by writing on its own - * control. - */ struct dl_bandwidth { raw_spinlock_t dl_runtime_lock; u64 dl_runtime; @@ -288,6 +264,24 @@ return sysctl_sched_rt_runtime >= 0; } +/* + * To keep the bandwidth of -deadline tasks under control + * we need some place where: + * - store the maximum -deadline bandwidth of each cpu; + * - cache the fraction of bandwidth that is currently allocated in + * each root domain; + * + * This is all done in the data structure below. It is similar to the + * one used for RT-throttling (rt_bandwidth), with the main difference + * that, since here we are only interested in admission control, we + * do not decrease any runtime while the group "executes", neither we + * need a timer to replenish it. + * + * With respect to SMP, bandwidth is given on a per root domain basis, + * meaning that: + * - bw (< 100%) is the deadline bandwidth of each CPU; + * - total_bw is the currently allocated bandwidth in each root domain; + */ struct dl_bw { raw_spinlock_t lock; u64 bw; @@ -862,6 +856,8 @@ unsigned int value; struct uclamp_bucket bucket[UCLAMP_BUCKETS]; }; + +DECLARE_STATIC_KEY_FALSE(sched_uclamp_used); #endif /* CONFIG_UCLAMP_TASK */ /* @@ -1598,7 +1594,7 @@ #undef SCHED_FEAT -#if defined(CONFIG_SCHED_DEBUG) && defined(CONFIG_JUMP_LABEL) +#ifdef CONFIG_SCHED_DEBUG /* * To support run-time toggling of sched features, all the translation units @@ -1606,6 +1602,7 @@ */ extern const_debug unsigned int sysctl_sched_features; +#ifdef CONFIG_JUMP_LABEL #define SCHED_FEAT(name, enabled) \ static __always_inline bool static_branch_##name(struct static_key *key) \ { \ @@ -1618,7 +1615,13 @@ extern struct static_key sched_feat_keys[__SCHED_FEAT_NR]; #define sched_feat(x) (static_branch_##x(&sched_feat_keys[__SCHED_FEAT_##x])) -#else /* !(SCHED_DEBUG && CONFIG_JUMP_LABEL) */ +#else /* !CONFIG_JUMP_LABEL */ + +#define sched_feat(x) (sysctl_sched_features & (1UL << __SCHED_FEAT_##x)) + +#endif /* CONFIG_JUMP_LABEL */ + +#else /* !SCHED_DEBUG */ /* * Each translation unit has its own copy of sysctl_sched_features to allow @@ -1634,7 +1637,7 @@ #define sched_feat(x) !!(sysctl_sched_features & (1UL << __SCHED_FEAT_##x)) -#endif /* SCHED_DEBUG && CONFIG_JUMP_LABEL */ +#endif /* SCHED_DEBUG */ extern struct static_key_false sched_numa_balancing; extern struct static_key_false sched_schedstats; @@ -2349,12 +2352,35 @@ #ifdef CONFIG_UCLAMP_TASK unsigned long uclamp_eff_value(struct task_struct *p, enum uclamp_id clamp_id); +/** + * uclamp_rq_util_with - clamp @util with @rq and @p effective uclamp values. + * @rq: The rq to clamp against. Must not be NULL. + * @util: The util value to clamp. + * @p: The task to clamp against. Can be NULL if you want to clamp + * against @rq only. + * + * Clamps the passed @util to the max(@rq, @p) effective uclamp values. + * + * If sched_uclamp_used static key is disabled, then just return the util + * without any clamping since uclamp aggregation at the rq level in the fast + * path is disabled, rendering this operation a NOP. + * + * Use uclamp_eff_value() if you don't care about uclamp values at rq level. It + * will return the correct effective uclamp value of the task even if the + * static key is disabled. + */ static __always_inline unsigned long uclamp_rq_util_with(struct rq *rq, unsigned long util, struct task_struct *p) { - unsigned long min_util = READ_ONCE(rq->uclamp[UCLAMP_MIN].value); - unsigned long max_util = READ_ONCE(rq->uclamp[UCLAMP_MAX].value); + unsigned long min_util; + unsigned long max_util; + + if (!static_branch_likely(&sched_uclamp_used)) + return util; + + min_util = READ_ONCE(rq->uclamp[UCLAMP_MIN].value); + max_util = READ_ONCE(rq->uclamp[UCLAMP_MAX].value); if (p) { min_util = max(min_util, uclamp_eff_value(p, UCLAMP_MIN)); @@ -2371,6 +2397,19 @@ return clamp(util, min_util, max_util); } + +/* + * When uclamp is compiled in, the aggregation at rq level is 'turned off' + * by default in the fast path and only gets turned on once userspace performs + * an operation that requires it. + * + * Returns true if userspace opted-in to use uclamp and aggregation at rq level + * hence is active. + */ +static inline bool uclamp_is_used(void) +{ + return static_branch_likely(&sched_uclamp_used); +} #else /* CONFIG_UCLAMP_TASK */ static inline unsigned long uclamp_rq_util_with(struct rq *rq, unsigned long util, @@ -2378,6 +2417,11 @@ { return util; } + +static inline bool uclamp_is_used(void) +{ + return false; +} #endif /* CONFIG_UCLAMP_TASK */ #ifdef arch_scale_freq_capacity --- linux-azure-5.8-5.8.0.orig/kernel/sched/topology.c +++ linux-azure-5.8-5.8.0/kernel/sched/topology.c @@ -1328,7 +1328,7 @@ sd_flags = (*tl->sd_flags)(); if (WARN_ONCE(sd_flags & ~TOPOLOGY_SD_FLAGS, "wrong sd_flags in topology description\n")) - sd_flags &= ~TOPOLOGY_SD_FLAGS; + sd_flags &= TOPOLOGY_SD_FLAGS; /* Apply detected topology flags */ sd_flags |= dflags; --- linux-azure-5.8-5.8.0.orig/kernel/seccomp.c +++ linux-azure-5.8-5.8.0/kernel/seccomp.c @@ -37,11 +37,19 @@ #include #include #include -#include +#include #include #include #include +/* + * When SECCOMP_IOCTL_NOTIF_ID_VALID was first introduced, it had the + * wrong direction flag in the ioctl number. This is the broken one, + * which the kernel needs to keep supporting until all userspaces stop + * using the wrong command number. + */ +#define SECCOMP_IOCTL_NOTIF_ID_VALID_WRONG_DIR SECCOMP_IOR(2, __u64) + enum notify_state { SECCOMP_NOTIFY_INIT, SECCOMP_NOTIFY_SENT, @@ -444,8 +452,7 @@ * behavior of privileged children. */ if (!task_no_new_privs(current) && - security_capable(current_cred(), current_user_ns(), - CAP_SYS_ADMIN, CAP_OPT_NOAUDIT) != 0) + !ns_capable_noaudit(current_user_ns(), CAP_SYS_ADMIN)) return ERR_PTR(-EACCES); /* Allocate a new seccomp_filter */ @@ -927,6 +934,8 @@ const bool recheck_after_trace) { BUG(); + + return -1; } #endif @@ -989,13 +998,12 @@ } #ifdef CONFIG_SECCOMP_FILTER -static int seccomp_notify_release(struct inode *inode, struct file *file) +static void seccomp_notify_detach(struct seccomp_filter *filter) { - struct seccomp_filter *filter = file->private_data; struct seccomp_knotif *knotif; if (!filter) - return 0; + return; mutex_lock(&filter->notify_lock); @@ -1017,6 +1025,13 @@ kfree(filter->notif); filter->notif = NULL; mutex_unlock(&filter->notify_lock); +} + +static int seccomp_notify_release(struct inode *inode, struct file *file) +{ + struct seccomp_filter *filter = file->private_data; + + seccomp_notify_detach(filter); __put_seccomp_filter(filter); return 0; } @@ -1186,6 +1201,7 @@ return seccomp_notify_recv(filter, buf); case SECCOMP_IOCTL_NOTIF_SEND: return seccomp_notify_send(filter, buf); + case SECCOMP_IOCTL_NOTIF_ID_VALID_WRONG_DIR: case SECCOMP_IOCTL_NOTIF_ID_VALID: return seccomp_notify_id_valid(filter, buf); default: @@ -1228,13 +1244,7 @@ static struct file *init_listener(struct seccomp_filter *filter) { - struct file *ret = ERR_PTR(-EBUSY); - struct seccomp_filter *cur; - - for (cur = current->seccomp.filter; cur; cur = cur->prev) { - if (cur->notif) - goto out; - } + struct file *ret; ret = ERR_PTR(-ENOMEM); filter->notif = kzalloc(sizeof(*(filter->notif)), GFP_KERNEL); @@ -1261,6 +1271,31 @@ return ret; } +/* + * Does @new_child have a listener while an ancestor also has a listener? + * If so, we'll want to reject this filter. + * This only has to be tested for the current process, even in the TSYNC case, + * because TSYNC installs @child with the same parent on all threads. + * Note that @new_child is not hooked up to its parent at this point yet, so + * we use current->seccomp.filter. + */ +static bool has_duplicate_listener(struct seccomp_filter *new_child) +{ + struct seccomp_filter *cur; + + /* must be protected against concurrent TSYNC */ + lockdep_assert_held(¤t->sighand->siglock); + + if (!new_child->notif) + return false; + for (cur = current->seccomp.filter; cur; cur = cur->prev) { + if (cur->notif) + return true; + } + + return false; +} + /** * seccomp_set_mode_filter: internal function for setting seccomp filter * @flags: flags to change filter behavior @@ -1332,6 +1367,11 @@ if (!seccomp_may_assign_mode(seccomp_mode)) goto out; + if (has_duplicate_listener(prepared)) { + ret = -EBUSY; + goto out; + } + ret = seccomp_attach_filter(flags, prepared); if (ret) goto out; @@ -1349,6 +1389,7 @@ listener_f->private_data = NULL; fput(listener_f); put_unused_fd(listener); + seccomp_notify_detach(prepared); } else { fd_install(listener, listener_f); ret = listener; --- linux-azure-5.8-5.8.0.orig/kernel/signal.c +++ linux-azure-5.8-5.8.0/kernel/signal.c @@ -391,16 +391,17 @@ void task_join_group_stop(struct task_struct *task) { + unsigned long mask = current->jobctl & JOBCTL_STOP_SIGMASK; + struct signal_struct *sig = current->signal; + + if (sig->group_stop_count) { + sig->group_stop_count++; + mask |= JOBCTL_STOP_CONSUME; + } else if (!(sig->flags & SIGNAL_STOP_STOPPED)) + return; + /* Have the new thread join an on-going signal group stop */ - unsigned long jobctl = current->jobctl; - if (jobctl & JOBCTL_STOP_PENDING) { - struct signal_struct *sig = current->signal; - unsigned long signr = jobctl & JOBCTL_STOP_SIGMASK; - unsigned long gstop = JOBCTL_STOP_PENDING | JOBCTL_STOP_CONSUME; - if (task_set_jobctl_pending(task, signr | gstop)) { - sig->group_stop_count++; - } - } + task_set_jobctl_pending(task, mask | JOBCTL_STOP_PENDING); } /* @@ -2541,7 +2542,21 @@ relock: spin_lock_irq(&sighand->siglock); - current->jobctl &= ~JOBCTL_TASK_WORK; + /* + * Make sure we can safely read ->jobctl() in task_work add. As Oleg + * states: + * + * It pairs with mb (implied by cmpxchg) before READ_ONCE. So we + * roughly have + * + * task_work_add: get_signal: + * STORE(task->task_works, new_work); STORE(task->jobctl); + * mb(); mb(); + * LOAD(task->jobctl); LOAD(task->task_works); + * + * and we can rely on STORE-MB-LOAD [ in task_work_add]. + */ + smp_store_mb(current->jobctl, current->jobctl & ~JOBCTL_TASK_WORK); if (unlikely(current->task_works)) { spin_unlock_irq(&sighand->siglock); task_work_run(); --- linux-azure-5.8-5.8.0.orig/kernel/smp.c +++ linux-azure-5.8-5.8.0/kernel/smp.c @@ -14,6 +14,7 @@ #include #include #include +#include #include #include #include @@ -323,6 +324,9 @@ local_irq_save(flags); flush_smp_call_function_queue(true); + if (local_softirq_pending()) + do_softirq(); + local_irq_restore(flags); } --- linux-azure-5.8-5.8.0.orig/kernel/smpboot.c +++ linux-azure-5.8-5.8.0/kernel/smpboot.c @@ -188,6 +188,7 @@ kfree(td); return PTR_ERR(tsk); } + kthread_set_per_cpu(tsk, cpu); /* * Park the thread so that it could start right on the CPU * when it is available. --- linux-azure-5.8-5.8.0.orig/kernel/stop_machine.c +++ linux-azure-5.8-5.8.0/kernel/stop_machine.c @@ -178,7 +178,7 @@ set_state(msdata, msdata->state + 1); } -void __weak stop_machine_yield(const struct cpumask *cpumask) +notrace void __weak stop_machine_yield(const struct cpumask *cpumask) { cpu_relax(); } --- linux-azure-5.8-5.8.0.orig/kernel/sys.c +++ linux-azure-5.8-5.8.0/kernel/sys.c @@ -1210,6 +1210,21 @@ DECLARE_RWSEM(uts_sem); #ifdef COMPAT_UTS_MACHINE +static char compat_uts_machine[__OLD_UTS_LEN+1] = COMPAT_UTS_MACHINE; + +static int __init parse_compat_uts_machine(char *arg) +{ + strncpy(compat_uts_machine, arg, __OLD_UTS_LEN); + compat_uts_machine[__OLD_UTS_LEN] = 0; + return 0; +} +early_param("compat_uts_machine", parse_compat_uts_machine); + +#undef COMPAT_UTS_MACHINE +#define COMPAT_UTS_MACHINE compat_uts_machine +#endif + +#ifdef COMPAT_UTS_MACHINE #define override_architecture(name) \ (personality(current->personality) == PER_LINUX32 && \ copy_to_user(name->machine, COMPAT_UTS_MACHINE, \ --- linux-azure-5.8-5.8.0.orig/kernel/sysctl.c +++ linux-azure-5.8-5.8.0/kernel/sysctl.c @@ -71,6 +71,7 @@ #include #include #include +#include #include "../lib/kstrtox.h" @@ -1881,6 +1882,15 @@ .mode = 0644, .proc_handler = proc_dointvec, }, +#endif +#ifdef CONFIG_USER_NS + { + .procname = "unprivileged_userns_clone", + .data = &unprivileged_userns_clone, + .maxlen = sizeof(int), + .mode = 0644, + .proc_handler = proc_dointvec, + }, #endif #ifdef CONFIG_PROC_SYSCTL { --- linux-azure-5.8-5.8.0.orig/kernel/task_work.c +++ linux-azure-5.8-5.8.0/kernel/task_work.c @@ -9,23 +9,28 @@ * task_work_add - ask the @task to execute @work->func() * @task: the task which should run the callback * @work: the callback to run - * @notify: send the notification if true + * @notify: how to notify the targeted task * - * Queue @work for task_work_run() below and notify the @task if @notify. - * Fails if the @task is exiting/exited and thus it can't process this @work. - * Otherwise @work->func() will be called when the @task returns from kernel - * mode or exits. + * Queue @work for task_work_run() below and notify the @task if @notify + * is @TWA_RESUME or @TWA_SIGNAL. @TWA_SIGNAL works like signals, in that the + * it will interrupt the targeted task and run the task_work. @TWA_RESUME + * work is run only when the task exits the kernel and returns to user mode, + * or before entering guest mode. Fails if the @task is exiting/exited and thus + * it can't process this @work. Otherwise @work->func() will be called when the + * @task goes through one of the aforementioned transitions, or exits. + * + * If the targeted task is exiting, then an error is returned and the work item + * is not queued. It's up to the caller to arrange for an alternative mechanism + * in that case. * - * This is like the signal handler which runs in kernel mode, but it doesn't - * try to wake up the @task. - * - * Note: there is no ordering guarantee on works queued here. + * Note: there is no ordering guarantee on works queued here. The task_work + * list is LIFO. * * RETURNS: * 0 if succeeds or -ESRCH. */ -int -task_work_add(struct task_struct *task, struct callback_head *work, int notify) +int task_work_add(struct task_struct *task, struct callback_head *work, + enum task_work_notify_mode notify) { struct callback_head *head; unsigned long flags; @@ -38,20 +43,32 @@ } while (cmpxchg(&task->task_works, head, work) != head); switch (notify) { + case TWA_NONE: + break; case TWA_RESUME: set_notify_resume(task); break; case TWA_SIGNAL: - if (lock_task_sighand(task, &flags)) { + /* + * Only grab the sighand lock if we don't already have some + * task_work pending. This pairs with the smp_store_mb() + * in get_signal(), see comment there. + */ + if (!(READ_ONCE(task->jobctl) & JOBCTL_TASK_WORK) && + lock_task_sighand(task, &flags)) { task->jobctl |= JOBCTL_TASK_WORK; signal_wake_up(task, 0); unlock_task_sighand(task, &flags); } break; + default: + WARN_ON_ONCE(1); + break; } return 0; } +EXPORT_SYMBOL(task_work_add); /** * task_work_cancel - cancel a pending work added by task_work_add() @@ -138,3 +155,4 @@ } while (work); } } +EXPORT_SYMBOL_GPL(task_work_run); --- linux-azure-5.8-5.8.0.orig/kernel/time/itimer.c +++ linux-azure-5.8-5.8.0/kernel/time/itimer.c @@ -172,10 +172,6 @@ u64 oval, nval, ointerval, ninterval; struct cpu_itimer *it = &tsk->signal->it[clock_id]; - /* - * Use the to_ktime conversion because that clamps the maximum - * value to KTIME_MAX and avoid multiplication overflows. - */ nval = timespec64_to_ns(&value->it_value); ninterval = timespec64_to_ns(&value->it_interval); --- linux-azure-5.8-5.8.0.orig/kernel/time/tick-sched.c +++ linux-azure-5.8-5.8.0/kernel/time/tick-sched.c @@ -351,16 +351,24 @@ EXPORT_SYMBOL_GPL(tick_nohz_dep_clear_cpu); /* - * Set a per-task tick dependency. Posix CPU timers need this in order to elapse - * per task timers. + * Set a per-task tick dependency. RCU need this. Also posix CPU timers + * in order to elapse per task timers. */ void tick_nohz_dep_set_task(struct task_struct *tsk, enum tick_dep_bits bit) { - /* - * We could optimize this with just kicking the target running the task - * if that noise matters for nohz full users. - */ - tick_nohz_dep_set_all(&tsk->tick_dep_mask, bit); + if (!atomic_fetch_or(BIT(bit), &tsk->tick_dep_mask)) { + if (tsk == current) { + preempt_disable(); + tick_nohz_full_kick(); + preempt_enable(); + } else { + /* + * Some future tick_nohz_full_kick_task() + * should optimize this. + */ + tick_nohz_full_kick_all(); + } + } } EXPORT_SYMBOL_GPL(tick_nohz_dep_set_task); @@ -933,13 +941,6 @@ */ if (tick_do_timer_cpu == cpu) return false; - /* - * Boot safety: make sure the timekeeping duty has been - * assigned before entering dyntick-idle mode, - * tick_do_timer_cpu is TICK_DO_TIMER_BOOT - */ - if (unlikely(tick_do_timer_cpu == TICK_DO_TIMER_BOOT)) - return false; /* Should not happen for nohz-full */ if (WARN_ON_ONCE(tick_do_timer_cpu == TICK_DO_TIMER_NONE)) --- linux-azure-5.8-5.8.0.orig/kernel/time/timer.c +++ linux-azure-5.8-5.8.0/kernel/time/timer.c @@ -1743,13 +1743,6 @@ scheduler_tick(); if (IS_ENABLED(CONFIG_POSIX_TIMERS)) run_posix_cpu_timers(); - - /* The current CPU might make use of net randoms without receiving IRQs - * to renew them often enough. Let's update the net_rand_state from a - * non-constant value that's not affine to the number of calls to make - * sure it's updated when there's some activity (we don't care in idle). - */ - this_cpu_add(net_rand_state.s1, rol32(jiffies, 24) + user_tick); } /** --- linux-azure-5.8-5.8.0.orig/kernel/trace/Kconfig +++ linux-azure-5.8-5.8.0/kernel/trace/Kconfig @@ -202,7 +202,7 @@ config DYNAMIC_FTRACE_WITH_DIRECT_CALLS def_bool y - depends on DYNAMIC_FTRACE + depends on DYNAMIC_FTRACE_WITH_REGS depends on HAVE_DYNAMIC_FTRACE_WITH_DIRECT_CALLS config FUNCTION_PROFILER @@ -531,7 +531,7 @@ config KPROBE_EVENTS_ON_NOTRACE bool "Do NOT protect notrace function from kprobe events" depends on KPROBE_EVENTS - depends on KPROBES_ON_FTRACE + depends on DYNAMIC_FTRACE default n help This is only for the developers who want to debug ftrace itself --- linux-azure-5.8-5.8.0.orig/kernel/trace/blktrace.c +++ linux-azure-5.8-5.8.0/kernel/trace/blktrace.c @@ -522,12 +522,32 @@ if (!bt->msg_data) goto err; - ret = -ENOENT; - - dir = debugfs_lookup(buts->name, blk_debugfs_root); - if (!dir) +#ifdef CONFIG_BLK_DEBUG_FS + /* + * When tracing whole make_request drivers (multiqueue) block devices, + * reuse the existing debugfs directory created by the block layer on + * init. For request-based block devices, all partitions block devices, + * and scsi-generic block devices we create a temporary new debugfs + * directory that will be removed once the trace ends. + */ + if (queue_is_mq(q) && bdev && bdev == bdev->bd_contains) + dir = q->debugfs_dir; + else +#endif bt->dir = dir = debugfs_create_dir(buts->name, blk_debugfs_root); + /* + * As blktrace relies on debugfs for its interface the debugfs directory + * is required, contrary to the usual mantra of not checking for debugfs + * files or directories. + */ + if (IS_ERR_OR_NULL(dir)) { + pr_warn("debugfs_dir not present for %s so skipping\n", + buts->name); + ret = -ENOENT; + goto err; + } + bt->dev = dev; atomic_set(&bt->dropped, 0); INIT_LIST_HEAD(&bt->running_list); @@ -563,8 +583,6 @@ ret = 0; err: - if (dir && !bt->dir) - dput(dir); if (ret) blk_trace_free(bt); return ret; --- linux-azure-5.8-5.8.0.orig/kernel/trace/bpf_trace.c +++ linux-azure-5.8-5.8.0/kernel/trace/bpf_trace.c @@ -80,9 +80,6 @@ { unsigned int ret; - if (in_nmi()) /* not supported yet */ - return 1; - cant_sleep(); if (unlikely(__this_cpu_inc_return(bpf_prog_active) != 1)) { @@ -168,6 +165,16 @@ { int ret; + /* + * NB: We rely on strncpy_from_user() not copying junk past the NUL + * terminator into `dst`. + * + * strncpy_from_user() does long-sized strides in the fast path. If the + * strncpy does not mask out the bytes after the NUL in `unsafe_ptr`, + * then there could be junk after the NUL in `dst`. If user takes `dst` + * and keys a hash map with it, then semantically identical strings can + * occupy multiple entries in the map. + */ ret = strncpy_from_user_nofault(dst, unsafe_ptr, size); if (unlikely(ret < 0)) memset(dst, 0, size); @@ -1815,10 +1822,12 @@ void bpf_put_raw_tracepoint(struct bpf_raw_event_map *btp) { - struct module *mod = __module_address((unsigned long)btp); + struct module *mod; - if (mod) - module_put(mod); + preempt_disable(); + mod = __module_address((unsigned long)btp); + module_put(mod); + preempt_enable(); } static __always_inline --- linux-azure-5.8-5.8.0.orig/kernel/trace/fgraph.c +++ linux-azure-5.8-5.8.0/kernel/trace/fgraph.c @@ -395,7 +395,6 @@ } if (t->ret_stack == NULL) { - atomic_set(&t->tracing_graph_pause, 0); atomic_set(&t->trace_overrun, 0); t->curr_ret_stack = -1; t->curr_ret_depth = -1; @@ -490,7 +489,6 @@ static void graph_init_task(struct task_struct *t, struct ftrace_ret_stack *ret_stack) { - atomic_set(&t->tracing_graph_pause, 0); atomic_set(&t->trace_overrun, 0); t->ftrace_timestamp = 0; /* make curr_ret_stack visible before we add the ret_stack */ --- linux-azure-5.8-5.8.0.orig/kernel/trace/ftrace.c +++ linux-azure-5.8-5.8.0/kernel/trace/ftrace.c @@ -139,9 +139,6 @@ #endif } -#define FTRACE_PID_IGNORE -1 -#define FTRACE_PID_TRACE -2 - static void ftrace_pid_func(unsigned long ip, unsigned long parent_ip, struct ftrace_ops *op, struct pt_regs *regs) { @@ -1632,6 +1629,8 @@ static struct ftrace_ops * ftrace_find_tramp_ops_any(struct dyn_ftrace *rec); static struct ftrace_ops * +ftrace_find_tramp_ops_any_other(struct dyn_ftrace *rec, struct ftrace_ops *op_exclude); +static struct ftrace_ops * ftrace_find_tramp_ops_next(struct dyn_ftrace *rec, struct ftrace_ops *ops); static bool __ftrace_hash_rec_update(struct ftrace_ops *ops, @@ -1781,7 +1780,7 @@ * to it. */ if (ftrace_rec_count(rec) == 1 && - ftrace_find_tramp_ops_any(rec)) + ftrace_find_tramp_ops_any_other(rec, ops)) rec->flags |= FTRACE_FL_TRAMP; else rec->flags &= ~FTRACE_FL_TRAMP; @@ -2248,6 +2247,24 @@ } static struct ftrace_ops * +ftrace_find_tramp_ops_any_other(struct dyn_ftrace *rec, struct ftrace_ops *op_exclude) +{ + struct ftrace_ops *op; + unsigned long ip = rec->ip; + + do_for_each_ftrace_op(op, ftrace_ops_list) { + + if (op == op_exclude || !op->trampoline) + continue; + + if (hash_contains_ip(ip, op->func_hash)) + return op; + } while_for_each_ftrace_op(op); + + return NULL; +} + +static struct ftrace_ops * ftrace_find_tramp_ops_next(struct dyn_ftrace *rec, struct ftrace_ops *op) { @@ -6190,8 +6207,11 @@ int cnt = 0; for (ops = ftrace_ops_list; ops != &ftrace_list_end; ops = ops->next) { - if (ops_references_rec(ops, rec)) - cnt++; + if (ops_references_rec(ops, rec)) { + cnt++; + if (ops->flags & FTRACE_OPS_FL_SAVE_REGS) + rec->flags |= FTRACE_FL_REGS; + } } return cnt; @@ -6370,8 +6390,8 @@ if (ftrace_start_up) cnt += referenced_filters(rec); - /* This clears FTRACE_FL_DISABLED */ - rec->flags = cnt; + rec->flags &= ~FTRACE_FL_DISABLED; + rec->flags += cnt; if (ftrace_start_up && cnt) { int failed = __ftrace_replace_code(rec, 1); @@ -6877,16 +6897,14 @@ { int bit; - if ((op->flags & FTRACE_OPS_FL_RCU) && !rcu_is_watching()) - return; - bit = trace_test_and_set_recursion(TRACE_LIST_START, TRACE_LIST_MAX); if (bit < 0) return; preempt_disable_notrace(); - op->func(ip, parent_ip, op, regs); + if (!(op->flags & FTRACE_OPS_FL_RCU) || rcu_is_watching()) + op->func(ip, parent_ip, op, regs); preempt_enable_notrace(); trace_clear_recursion(bit); @@ -6969,12 +6987,12 @@ if (enable) { register_trace_sched_process_fork(ftrace_pid_follow_sched_process_fork, tr); - register_trace_sched_process_exit(ftrace_pid_follow_sched_process_exit, + register_trace_sched_process_free(ftrace_pid_follow_sched_process_exit, tr); } else { unregister_trace_sched_process_fork(ftrace_pid_follow_sched_process_fork, tr); - unregister_trace_sched_process_exit(ftrace_pid_follow_sched_process_exit, + unregister_trace_sched_process_free(ftrace_pid_follow_sched_process_exit, tr); } } --- linux-azure-5.8-5.8.0.orig/kernel/trace/ring_buffer.c +++ linux-azure-5.8-5.8.0/kernel/trace/ring_buffer.c @@ -129,7 +129,16 @@ #define RB_ALIGNMENT 4U #define RB_MAX_SMALL_DATA (RB_ALIGNMENT * RINGBUF_TYPE_DATA_TYPE_LEN_MAX) #define RB_EVNT_MIN_SIZE 8U /* two 32bit words */ -#define RB_ALIGN_DATA __aligned(RB_ALIGNMENT) + +#ifndef CONFIG_HAVE_64BIT_ALIGNED_ACCESS +# define RB_FORCE_8BYTE_ALIGNMENT 0 +# define RB_ARCH_ALIGNMENT RB_ALIGNMENT +#else +# define RB_FORCE_8BYTE_ALIGNMENT 1 +# define RB_ARCH_ALIGNMENT 8U +#endif + +#define RB_ALIGN_DATA __aligned(RB_ARCH_ALIGNMENT) /* define RINGBUF_TYPE_DATA for 'case RINGBUF_TYPE_DATA:' */ #define RINGBUF_TYPE_DATA 0 ... RINGBUF_TYPE_DATA_TYPE_LEN_MAX @@ -420,14 +429,16 @@ /* * Used for which event context the event is in. - * NMI = 0 - * IRQ = 1 - * SOFTIRQ = 2 - * NORMAL = 3 + * TRANSITION = 0 + * NMI = 1 + * IRQ = 2 + * SOFTIRQ = 3 + * NORMAL = 4 * * See trace_recursive_lock() comment below for more details. */ enum { + RB_CTX_TRANSITION, RB_CTX_NMI, RB_CTX_IRQ, RB_CTX_SOFTIRQ, @@ -1720,18 +1731,18 @@ { struct ring_buffer_per_cpu *cpu_buffer; unsigned long nr_pages; - int cpu, err = 0; + int cpu, err; /* * Always succeed at resizing a non-existent buffer: */ if (!buffer) - return size; + return 0; /* Make sure the requested buffer exists */ if (cpu_id != RING_BUFFER_ALL_CPUS && !cpumask_test_cpu(cpu_id, buffer->cpumask)) - return size; + return 0; nr_pages = DIV_ROUND_UP(size, BUF_PAGE_SIZE); @@ -1887,7 +1898,7 @@ } mutex_unlock(&buffer->mutex); - return size; + return 0; out_err: for_each_buffer_cpu(buffer, cpu) { @@ -2434,7 +2445,7 @@ event->time_delta = delta; length -= RB_EVNT_HDR_SIZE; - if (length > RB_MAX_SMALL_DATA) { + if (length > RB_MAX_SMALL_DATA || RB_FORCE_8BYTE_ALIGNMENT) { event->type_len = 0; event->array[0] = length; } else @@ -2449,11 +2460,11 @@ if (!length) length++; - if (length > RB_MAX_SMALL_DATA) + if (length > RB_MAX_SMALL_DATA || RB_FORCE_8BYTE_ALIGNMENT) length += sizeof(event.array[0]); length += RB_EVNT_HDR_SIZE; - length = ALIGN(length, RB_ALIGNMENT); + length = ALIGN(length, RB_ARCH_ALIGNMENT); /* * In case the time delta is larger than the 27 bits for it @@ -2729,10 +2740,10 @@ * a bit of overhead in something as critical as function tracing, * we use a bitmask trick. * - * bit 0 = NMI context - * bit 1 = IRQ context - * bit 2 = SoftIRQ context - * bit 3 = normal context. + * bit 1 = NMI context + * bit 2 = IRQ context + * bit 3 = SoftIRQ context + * bit 4 = normal context. * * This works because this is the order of contexts that can * preempt other contexts. A SoftIRQ never preempts an IRQ @@ -2755,6 +2766,30 @@ * The least significant bit can be cleared this way, and it * just so happens that it is the same bit corresponding to * the current context. + * + * Now the TRANSITION bit breaks the above slightly. The TRANSITION bit + * is set when a recursion is detected at the current context, and if + * the TRANSITION bit is already set, it will fail the recursion. + * This is needed because there's a lag between the changing of + * interrupt context and updating the preempt count. In this case, + * a false positive will be found. To handle this, one extra recursion + * is allowed, and this is done by the TRANSITION bit. If the TRANSITION + * bit is already set, then it is considered a recursion and the function + * ends. Otherwise, the TRANSITION bit is set, and that bit is returned. + * + * On the trace_recursive_unlock(), the TRANSITION bit will be the first + * to be cleared. Even if it wasn't the context that set it. That is, + * if an interrupt comes in while NORMAL bit is set and the ring buffer + * is called before preempt_count() is updated, since the check will + * be on the NORMAL bit, the TRANSITION bit will then be set. If an + * NMI then comes in, it will set the NMI bit, but when the NMI code + * does the trace_recursive_unlock() it will clear the TRANSTION bit + * and leave the NMI bit set. But this is fine, because the interrupt + * code that set the TRANSITION bit will then clear the NMI bit when it + * calls trace_recursive_unlock(). If another NMI comes in, it will + * set the TRANSITION bit and continue. + * + * Note: The TRANSITION bit only handles a single transition between context. */ static __always_inline int @@ -2770,8 +2805,16 @@ bit = pc & NMI_MASK ? RB_CTX_NMI : pc & HARDIRQ_MASK ? RB_CTX_IRQ : RB_CTX_SOFTIRQ; - if (unlikely(val & (1 << (bit + cpu_buffer->nest)))) - return 1; + if (unlikely(val & (1 << (bit + cpu_buffer->nest)))) { + /* + * It is possible that this was called by transitioning + * between interrupt context, and preempt_count() has not + * been updated yet. In this case, use the TRANSITION bit. + */ + bit = RB_CTX_TRANSITION; + if (val & (1 << (bit + cpu_buffer->nest))) + return 1; + } val |= (1 << (bit + cpu_buffer->nest)); cpu_buffer->current_context = val; @@ -2786,8 +2829,8 @@ cpu_buffer->current_context - (1 << cpu_buffer->nest); } -/* The recursive locking above uses 4 bits */ -#define NESTED_BITS 4 +/* The recursive locking above uses 5 bits */ +#define NESTED_BITS 5 /** * ring_buffer_nest_start - Allow to trace while nested --- linux-azure-5.8-5.8.0.orig/kernel/trace/trace.c +++ linux-azure-5.8-5.8.0/kernel/trace/trace.c @@ -68,10 +68,21 @@ static bool __read_mostly tracing_selftest_running; /* - * If a tracer is running, we do not want to run SELFTEST. + * If boot-time tracing including tracers/events via kernel cmdline + * is running, we do not want to run SELFTEST. */ bool __read_mostly tracing_selftest_disabled; +#ifdef CONFIG_FTRACE_STARTUP_TEST +void __init disable_tracing_selftest(const char *reason) +{ + if (!tracing_selftest_disabled) { + tracing_selftest_disabled = true; + pr_info("Ftrace startup test is disabled due to %s\n", reason); + } +} +#endif + /* Pipe tracepoints to printk */ struct trace_iterator *tracepoint_print_iter; int tracepoint_printk; @@ -163,7 +174,8 @@ #endif /* CONFIG_TRACE_EVAL_MAP_FILE */ int tracing_set_tracer(struct trace_array *tr, const char *buf); -static void ftrace_trace_userstack(struct trace_buffer *buffer, +static void ftrace_trace_userstack(struct trace_array *tr, + struct trace_buffer *buffer, unsigned long flags, int pc); #define MAX_TRACER_SIZE 100 @@ -1974,11 +1986,7 @@ apply_trace_boot_options(); /* disable other selftests, since this will break it. */ - tracing_selftest_disabled = true; -#ifdef CONFIG_FTRACE_STARTUP_TEST - printk(KERN_INFO "Disabling FTRACE selftests due to running tracer '%s'\n", - type->name); -#endif + disable_tracing_selftest("running a tracer"); out_unlock: return ret; @@ -2601,7 +2609,7 @@ (entry = this_cpu_read(trace_buffered_event))) { /* Try to use the per cpu buffer first */ val = this_cpu_inc_return(trace_buffered_event_cnt); - if (val == 1) { + if ((len < (PAGE_SIZE - sizeof(*entry))) && val == 1) { trace_event_setup(entry, type, flags, pc); entry->array[0] = len; return entry; @@ -2614,7 +2622,7 @@ /* * If tracing is off, but we have triggers enabled * we still need to look at the event data. Use the temp_buffer - * to store the trace event for the tigger to use. It's recusive + * to store the trace event for the trigger to use. It's recursive * safe and will not be recorded anywhere. */ if (!entry && trace_file->flags & EVENT_FILE_FL_TRIGGER_COND) { @@ -2732,7 +2740,7 @@ * two. They are not that meaningful. */ ftrace_trace_stack(tr, buffer, flags, regs ? 0 : STACK_SKIP, pc, regs); - ftrace_trace_userstack(buffer, flags, pc); + ftrace_trace_userstack(tr, buffer, flags, pc); } /* @@ -2943,7 +2951,7 @@ stackidx = __this_cpu_inc_return(ftrace_stack_reserve) - 1; /* This should never happen. If it does, yell once and skip */ - if (WARN_ON_ONCE(stackidx > FTRACE_KSTACK_NESTING)) + if (WARN_ON_ONCE(stackidx >= FTRACE_KSTACK_NESTING)) goto out; /* @@ -3047,13 +3055,14 @@ static DEFINE_PER_CPU(int, user_stack_count); static void -ftrace_trace_userstack(struct trace_buffer *buffer, unsigned long flags, int pc) +ftrace_trace_userstack(struct trace_array *tr, + struct trace_buffer *buffer, unsigned long flags, int pc) { struct trace_event_call *call = &event_user_stack; struct ring_buffer_event *event; struct userstack_entry *entry; - if (!(global_trace.trace_flags & TRACE_ITER_USERSTACKTRACE)) + if (!(tr->trace_flags & TRACE_ITER_USERSTACKTRACE)) return; /* @@ -3092,7 +3101,8 @@ preempt_enable(); } #else /* CONFIG_USER_STACKTRACE_SUPPORT */ -static void ftrace_trace_userstack(struct trace_buffer *buffer, +static void ftrace_trace_userstack(struct trace_array *tr, + struct trace_buffer *buffer, unsigned long flags, int pc) { } @@ -3123,7 +3133,7 @@ /* Interrupts must see nesting incremented before we use the buffer */ barrier(); - return &buffer->buffer[buffer->nesting][0]; + return &buffer->buffer[buffer->nesting - 1][0]; } static void put_trace_buf(void) @@ -3477,7 +3487,7 @@ } #define STATIC_TEMP_BUF_SIZE 128 -static char static_temp_buf[STATIC_TEMP_BUF_SIZE]; +static char static_temp_buf[STATIC_TEMP_BUF_SIZE] __aligned(4); /* Find the next real entry, without updating the iterator itself */ struct trace_entry *trace_find_next_entry(struct trace_iterator *iter, @@ -3507,13 +3517,15 @@ if (iter->ent && iter->ent != iter->temp) { if ((!iter->temp || iter->temp_size < iter->ent_size) && !WARN_ON_ONCE(iter->temp == static_temp_buf)) { - kfree(iter->temp); - iter->temp = kmalloc(iter->ent_size, GFP_KERNEL); - if (!iter->temp) + void *temp; + temp = kmalloc(iter->ent_size, GFP_KERNEL); + if (!temp) return NULL; + kfree(iter->temp); + iter->temp = temp; + iter->temp_size = iter->ent_size; } memcpy(iter->temp, iter->ent, iter->ent_size); - iter->temp_size = iter->ent_size; iter->ent = iter->temp; } entry = __find_next_entry(iter, ent_cpu, NULL, ent_ts); @@ -3743,14 +3755,14 @@ static void print_lat_help_header(struct seq_file *m) { - seq_puts(m, "# _------=> CPU# \n" - "# / _-----=> irqs-off \n" - "# | / _----=> need-resched \n" - "# || / _---=> hardirq/softirq \n" - "# ||| / _--=> preempt-depth \n" - "# |||| / delay \n" - "# cmd pid ||||| time | caller \n" - "# \\ / ||||| \\ | / \n"); + seq_puts(m, "# _------=> CPU# \n" + "# / _-----=> irqs-off \n" + "# | / _----=> need-resched \n" + "# || / _---=> hardirq/softirq \n" + "# ||| / _--=> preempt-depth \n" + "# |||| / delay \n" + "# cmd pid ||||| time | caller \n" + "# \\ / ||||| \\ | / \n"); } static void print_event_info(struct array_buffer *buf, struct seq_file *m) @@ -3771,26 +3783,26 @@ print_event_info(buf, m); - seq_printf(m, "# TASK-PID %s CPU# TIMESTAMP FUNCTION\n", tgid ? "TGID " : ""); - seq_printf(m, "# | | %s | | |\n", tgid ? " | " : ""); + seq_printf(m, "# TASK-PID %s CPU# TIMESTAMP FUNCTION\n", tgid ? " TGID " : ""); + seq_printf(m, "# | | %s | | |\n", tgid ? " | " : ""); } static void print_func_help_header_irq(struct array_buffer *buf, struct seq_file *m, unsigned int flags) { bool tgid = flags & TRACE_ITER_RECORD_TGID; - const char *space = " "; - int prec = tgid ? 10 : 2; + const char *space = " "; + int prec = tgid ? 12 : 2; print_event_info(buf, m); - seq_printf(m, "# %.*s _-----=> irqs-off\n", prec, space); - seq_printf(m, "# %.*s / _----=> need-resched\n", prec, space); - seq_printf(m, "# %.*s| / _---=> hardirq/softirq\n", prec, space); - seq_printf(m, "# %.*s|| / _--=> preempt-depth\n", prec, space); - seq_printf(m, "# %.*s||| / delay\n", prec, space); - seq_printf(m, "# TASK-PID %.*sCPU# |||| TIMESTAMP FUNCTION\n", prec, " TGID "); - seq_printf(m, "# | | %.*s | |||| | |\n", prec, " | "); + seq_printf(m, "# %.*s _-----=> irqs-off\n", prec, space); + seq_printf(m, "# %.*s / _----=> need-resched\n", prec, space); + seq_printf(m, "# %.*s| / _---=> hardirq/softirq\n", prec, space); + seq_printf(m, "# %.*s|| / _--=> preempt-depth\n", prec, space); + seq_printf(m, "# %.*s||| / delay\n", prec, space); + seq_printf(m, "# TASK-PID %.*s CPU# |||| TIMESTAMP FUNCTION\n", prec, " TGID "); + seq_printf(m, "# | | %.*s | |||| | |\n", prec, " | "); } void @@ -5887,7 +5899,7 @@ } /* If trace pipe files are being read, we can't change the tracer */ - if (tr->current_trace->ref) { + if (tr->trace_ref) { ret = -EBUSY; goto out; } @@ -6103,7 +6115,7 @@ nonseekable_open(inode, filp); - tr->current_trace->ref++; + tr->trace_ref++; out: mutex_unlock(&trace_types_lock); return ret; @@ -6122,7 +6134,7 @@ mutex_lock(&trace_types_lock); - tr->current_trace->ref--; + tr->trace_ref--; if (iter->trace->pipe_close) iter->trace->pipe_close(iter); @@ -7424,7 +7436,7 @@ filp->private_data = info; - tr->current_trace->ref++; + tr->trace_ref++; mutex_unlock(&trace_types_lock); @@ -7525,7 +7537,7 @@ mutex_lock(&trace_types_lock); - iter->tr->current_trace->ref--; + iter->tr->trace_ref--; __trace_array_put(iter->tr); @@ -8733,7 +8745,7 @@ int i; /* Reference counter for a newly created trace array = 1. */ - if (tr->ref > 1 || (tr->current_trace && tr->current_trace->ref)) + if (tr->ref > 1 || (tr->current_trace && tr->trace_ref)) return -EBUSY; list_del(&tr->list); --- linux-azure-5.8-5.8.0.orig/kernel/trace/trace.h +++ linux-azure-5.8-5.8.0/kernel/trace/trace.h @@ -356,6 +356,7 @@ struct trace_event_file *trace_marker_file; cpumask_var_t tracing_cpumask; /* only trace on set CPUs */ int ref; + int trace_ref; #ifdef CONFIG_FUNCTION_TRACER struct ftrace_ops *ops; struct trace_pid_list __rcu *function_pids; @@ -547,7 +548,6 @@ struct tracer *next; struct tracer_flags *flags; int enabled; - int ref; bool print_max; bool allow_instances; #ifdef CONFIG_TRACER_MAX_TRACE @@ -636,6 +636,12 @@ * function is called to clear it. */ TRACE_GRAPH_NOTRACE_BIT, + + /* + * When transitioning between context, the preempt_count() may + * not be correct. Allow for a single recursion to cover this case. + */ + TRACE_TRANSITION_BIT, }; #define trace_recursion_set(bit) do { (current)->trace_recursion |= (1<<(bit)); } while (0) @@ -690,14 +696,27 @@ return 0; bit = trace_get_context_bit() + start; - if (unlikely(val & (1 << bit))) - return -1; + if (unlikely(val & (1 << bit))) { + /* + * It could be that preempt_count has not been updated during + * a switch between contexts. Allow for a single recursion. + */ + bit = TRACE_TRANSITION_BIT; + if (trace_recursion_test(bit)) + return -1; + trace_recursion_set(bit); + barrier(); + return bit + 1; + } + + /* Normal check passed, clear the transition to allow it again */ + trace_recursion_clear(TRACE_TRANSITION_BIT); val |= 1 << bit; current->trace_recursion = val; barrier(); - return bit; + return bit + 1; } static __always_inline void trace_clear_recursion(int bit) @@ -707,6 +726,7 @@ if (!bit) return; + bit--; bit = 1 << bit; val &= ~bit; @@ -875,6 +895,8 @@ extern bool tracing_selftest_disabled; #ifdef CONFIG_FTRACE_STARTUP_TEST +extern void __init disable_tracing_selftest(const char *reason); + extern int trace_selftest_startup_function(struct tracer *trace, struct trace_array *tr); extern int trace_selftest_startup_function_graph(struct tracer *trace, @@ -898,6 +920,9 @@ */ #define __tracer_data __refdata #else +static inline void __init disable_tracing_selftest(const char *reason) +{ +} /* Tracers are seldom changed. Optimize when selftests are disabled. */ #define __tracer_data __read_mostly #endif /* CONFIG_FTRACE_STARTUP_TEST */ @@ -1103,6 +1128,10 @@ extern struct list_head ftrace_pids; #ifdef CONFIG_FUNCTION_TRACER + +#define FTRACE_PID_IGNORE -1 +#define FTRACE_PID_TRACE -2 + struct ftrace_func_command { struct list_head list; char *name; @@ -1114,7 +1143,8 @@ extern bool ftrace_filter_param __initdata; static inline int ftrace_trace_task(struct trace_array *tr) { - return !this_cpu_read(tr->array_buffer.data->ftrace_ignore_pid); + return this_cpu_read(tr->array_buffer.data->ftrace_ignore_pid) != + FTRACE_PID_IGNORE; } extern int ftrace_is_dead(void); int ftrace_create_function_files(struct trace_array *tr, --- linux-azure-5.8-5.8.0.orig/kernel/trace/trace_boot.c +++ linux-azure-5.8-5.8.0/kernel/trace/trace_boot.c @@ -328,6 +328,8 @@ trace_boot_init_one_instance(tr, trace_node); trace_boot_init_instances(trace_node); + disable_tracing_selftest("running boot-time tracing"); + return 0; } --- linux-azure-5.8-5.8.0.orig/kernel/trace/trace_events.c +++ linux-azure-5.8-5.8.0/kernel/trace/trace_events.c @@ -538,12 +538,12 @@ if (enable) { register_trace_prio_sched_process_fork(event_filter_pid_sched_process_fork, tr, INT_MIN); - register_trace_prio_sched_process_exit(event_filter_pid_sched_process_exit, + register_trace_prio_sched_process_free(event_filter_pid_sched_process_exit, tr, INT_MAX); } else { unregister_trace_sched_process_fork(event_filter_pid_sched_process_fork, tr); - unregister_trace_sched_process_exit(event_filter_pid_sched_process_exit, + unregister_trace_sched_process_free(event_filter_pid_sched_process_exit, tr); } } @@ -1211,7 +1211,8 @@ mutex_lock(&event_mutex); list_for_each_entry(file, &tr->events, list) { call = file->event_call; - if (!trace_event_name(call) || !call->class || !call->class->reg) + if ((call->flags & TRACE_EVENT_FL_IGNORE_ENABLE) || + !trace_event_name(call) || !call->class || !call->class->reg) continue; if (system && strcmp(call->class->system, system->name) != 0) @@ -3188,7 +3189,7 @@ { strlcpy(bootup_event_buf, str, COMMAND_LINE_SIZE); ring_buffer_expanded = true; - tracing_selftest_disabled = true; + disable_tracing_selftest("running event tracing"); return 1; } --- linux-azure-5.8-5.8.0.orig/kernel/trace/trace_events_hist.c +++ linux-azure-5.8-5.8.0/kernel/trace/trace_events_hist.c @@ -3865,7 +3865,6 @@ s = kstrdup(field_str, GFP_KERNEL); if (!s) { - kfree(hist_data->attrs->var_defs.name[n_vars]); ret = -ENOMEM; goto free; } --- linux-azure-5.8-5.8.0.orig/kernel/trace/trace_events_synth.c +++ linux-azure-5.8-5.8.0/kernel/trace/trace_events_synth.c @@ -132,7 +132,7 @@ start += sizeof("char[") - 1; end = strchr(type, ']'); - if (!end || end < start) + if (!end || end < start || type + strlen(type) > end + 1) return -EINVAL; len = end - start; @@ -465,6 +465,8 @@ struct synth_field *field; const char *prefix = NULL, *field_type = argv[0], *field_name, *array; int len, ret = 0; + struct seq_buf s; + ssize_t size; if (field_type[0] == ';') field_type++; @@ -501,8 +503,10 @@ if (field_type[0] == ';') field_type++; len = strlen(field_type) + 1; + if (array) len += strlen(array); + if (prefix) len += strlen(prefix); @@ -511,20 +515,25 @@ ret = -ENOMEM; goto free; } + seq_buf_init(&s, field->type, len); if (prefix) - strcat(field->type, prefix); - strcat(field->type, field_type); + seq_buf_puts(&s, prefix); + seq_buf_puts(&s, field_type); if (array) { - strcat(field->type, array); - if (field->type[len - 1] == ';') - field->type[len - 1] = '\0'; + seq_buf_puts(&s, array); + if (s.buffer[s.len - 1] == ';') + s.len--; } + if (WARN_ON_ONCE(!seq_buf_buffer_left(&s))) + goto free; + s.buffer[s.len] = '\0'; - field->size = synth_field_size(field->type); - if (!field->size) { + size = synth_field_size(field->type); + if (size <= 0) { ret = -EINVAL; goto free; } + field->size = size; if (synth_field_is_string(field->type)) field->is_string = true; --- linux-azure-5.8-5.8.0.orig/kernel/trace/trace_hwlat.c +++ linux-azure-5.8-5.8.0/kernel/trace/trace_hwlat.c @@ -283,6 +283,7 @@ static void move_to_next_cpu(void) { struct cpumask *current_mask = &save_cpumask; + struct trace_array *tr = hwlat_trace; int next_cpu; if (disable_migrate) @@ -296,7 +297,7 @@ goto disable; get_online_cpus(); - cpumask_and(current_mask, cpu_online_mask, tracing_buffer_mask); + cpumask_and(current_mask, cpu_online_mask, tr->tracing_cpumask); next_cpu = cpumask_next(smp_processor_id(), current_mask); put_online_cpus(); @@ -367,13 +368,13 @@ struct task_struct *kthread; int next_cpu; - if (WARN_ON(hwlat_kthread)) + if (hwlat_kthread) return 0; /* Just pick the first CPU on first iteration */ current_mask = &save_cpumask; get_online_cpus(); - cpumask_and(current_mask, cpu_online_mask, tracing_buffer_mask); + cpumask_and(current_mask, cpu_online_mask, tr->tracing_cpumask); put_online_cpus(); next_cpu = cpumask_first(current_mask); --- linux-azure-5.8-5.8.0.orig/kernel/trace/trace_irqsoff.c +++ linux-azure-5.8-5.8.0/kernel/trace/trace_irqsoff.c @@ -562,6 +562,8 @@ /* non overwrite screws up the latency tracers */ set_tracer_flag(tr, TRACE_ITER_OVERWRITE, 1); set_tracer_flag(tr, TRACE_ITER_LATENCY_FMT, 1); + /* without pause, we will produce garbage if another latency occurs */ + set_tracer_flag(tr, TRACE_ITER_PAUSE_ON_TRACE, 1); tr->max_latency = 0; irqsoff_trace = tr; @@ -583,11 +585,13 @@ { int lat_flag = save_flags & TRACE_ITER_LATENCY_FMT; int overwrite_flag = save_flags & TRACE_ITER_OVERWRITE; + int pause_flag = save_flags & TRACE_ITER_PAUSE_ON_TRACE; stop_irqsoff_tracer(tr, is_graph(tr)); set_tracer_flag(tr, TRACE_ITER_LATENCY_FMT, lat_flag); set_tracer_flag(tr, TRACE_ITER_OVERWRITE, overwrite_flag); + set_tracer_flag(tr, TRACE_ITER_PAUSE_ON_TRACE, pause_flag); ftrace_reset_array_ops(tr); irqsoff_busy = false; --- linux-azure-5.8-5.8.0.orig/kernel/trace/trace_kprobe.c +++ linux-azure-5.8-5.8.0/kernel/trace/trace_kprobe.c @@ -25,11 +25,12 @@ /* Kprobe early definition from command line */ static char kprobe_boot_events_buf[COMMAND_LINE_SIZE] __initdata; -static bool kprobe_boot_events_enabled __initdata; static int __init set_kprobe_boot_events(char *str) { strlcpy(kprobe_boot_events_buf, str, COMMAND_LINE_SIZE); + disable_tracing_selftest("running kprobe events"); + return 0; } __setup("kprobe_event=", set_kprobe_boot_events); @@ -219,9 +220,9 @@ { struct trace_kprobe *tk = trace_kprobe_primary_from_call(call); - return tk ? kprobe_on_func_entry(tk->rp.kp.addr, + return tk ? (kprobe_on_func_entry(tk->rp.kp.addr, tk->rp.kp.addr ? NULL : tk->rp.kp.symbol_name, - tk->rp.kp.addr ? 0 : tk->rp.kp.offset) : false; + tk->rp.kp.addr ? 0 : tk->rp.kp.offset) == 0) : false; } bool trace_kprobe_error_injectable(struct trace_event_call *call) @@ -432,7 +433,7 @@ return 0; } -#if defined(CONFIG_KPROBES_ON_FTRACE) && \ +#if defined(CONFIG_DYNAMIC_FTRACE) && \ !defined(CONFIG_KPROBE_EVENTS_ON_NOTRACE) static bool __within_notrace_func(unsigned long addr) { @@ -810,9 +811,11 @@ trace_probe_log_err(0, BAD_PROBE_ADDR); goto parse_error; } - if (kprobe_on_func_entry(NULL, symbol, offset)) + ret = kprobe_on_func_entry(NULL, symbol, offset); + if (ret == 0) flags |= TPARG_FL_FENTRY; - if (offset && is_return && !(flags & TPARG_FL_FENTRY)) { + /* Defer the ENOENT case until register kprobe */ + if (ret == -EINVAL && is_return) { trace_probe_log_err(0, BAD_RETPROBE); goto parse_error; } @@ -1870,8 +1873,6 @@ ret = trace_run_command(cmd, create_or_delete_trace_kprobe); if (ret) pr_warn("Failed to add event(%d): %s\n", ret, cmd); - else - kprobe_boot_events_enabled = true; cmd = p; } @@ -1956,10 +1957,8 @@ if (tracing_is_disabled()) return -ENODEV; - if (kprobe_boot_events_enabled) { - pr_info("Skipping kprobe tests due to kprobe_event on cmdline\n"); + if (tracing_selftest_disabled) return 0; - } target = kprobe_trace_selftest_target; --- linux-azure-5.8-5.8.0.orig/kernel/trace/trace_output.c +++ linux-azure-5.8-5.8.0/kernel/trace/trace_output.c @@ -497,7 +497,7 @@ trace_find_cmdline(entry->pid, comm); - trace_seq_printf(s, "%8.8s-%-5d %3d", + trace_seq_printf(s, "%8.8s-%-7d %3d", comm, entry->pid, cpu); return trace_print_lat_fmt(s, entry); @@ -588,15 +588,15 @@ trace_find_cmdline(entry->pid, comm); - trace_seq_printf(s, "%16s-%-5d ", comm, entry->pid); + trace_seq_printf(s, "%16s-%-7d ", comm, entry->pid); if (tr->trace_flags & TRACE_ITER_RECORD_TGID) { unsigned int tgid = trace_find_tgid(entry->pid); if (!tgid) - trace_seq_printf(s, "(-----) "); + trace_seq_printf(s, "(-------) "); else - trace_seq_printf(s, "(%5d) ", tgid); + trace_seq_printf(s, "(%7d) ", tgid); } trace_seq_printf(s, "[%03d] ", iter->cpu); @@ -636,7 +636,7 @@ trace_find_cmdline(entry->pid, comm); trace_seq_printf( - s, "%16s %5d %3d %d %08x %08lx ", + s, "%16s %7d %3d %d %08x %08lx ", comm, entry->pid, iter->cpu, entry->flags, entry->preempt_count, iter->idx); } else { @@ -917,7 +917,7 @@ S = task_index_to_char(field->prev_state); trace_find_cmdline(field->next_pid, comm); trace_seq_printf(&iter->seq, - " %5d:%3d:%c %s [%03d] %5d:%3d:%c %s\n", + " %7d:%3d:%c %s [%03d] %7d:%3d:%c %s\n", field->prev_pid, field->prev_prio, S, delim, --- linux-azure-5.8-5.8.0.orig/kernel/trace/trace_preemptirq.c +++ linux-azure-5.8-5.8.0/kernel/trace/trace_preemptirq.c @@ -102,14 +102,14 @@ __visible void trace_hardirqs_off_caller(unsigned long caller_addr) { + lockdep_hardirqs_off(CALLER_ADDR0); + if (!this_cpu_read(tracing_irq_cpu)) { this_cpu_write(tracing_irq_cpu, 1); tracer_hardirqs_off(CALLER_ADDR0, caller_addr); if (!in_nmi()) trace_irq_disable_rcuidle(CALLER_ADDR0, caller_addr); } - - lockdep_hardirqs_off(CALLER_ADDR0); } EXPORT_SYMBOL(trace_hardirqs_off_caller); NOKPROBE_SYMBOL(trace_hardirqs_off_caller); --- linux-azure-5.8-5.8.0.orig/kernel/trace/trace_selftest.c +++ linux-azure-5.8-5.8.0/kernel/trace/trace_selftest.c @@ -492,8 +492,13 @@ unregister_ftrace_function(&test_rec_probe); ret = -1; - if (trace_selftest_recursion_cnt != 1) { - pr_cont("*callback not called once (%d)* ", + /* + * Recursion allows for transitions between context, + * and may call the callback twice. + */ + if (trace_selftest_recursion_cnt != 1 && + trace_selftest_recursion_cnt != 2) { + pr_cont("*callback not called once (or twice) (%d)* ", trace_selftest_recursion_cnt); goto out; } @@ -782,7 +787,7 @@ /* Have we just recovered from a hang? */ if (graph_hang_thresh > GRAPH_MAX_FUNC_TEST) { - tracing_selftest_disabled = true; + disable_tracing_selftest("recovering from a hang"); ret = -1; goto out; } --- linux-azure-5.8-5.8.0.orig/kernel/tracepoint.c +++ linux-azure-5.8-5.8.0/kernel/tracepoint.c @@ -53,6 +53,12 @@ struct tracepoint_func probes[0]; }; +/* Called in removal of a func but failed to allocate a new tp_funcs */ +static void tp_stub_func(void) +{ + return; +} + static inline void *allocate_probes(int count) { struct tp_probes *p = kmalloc(struct_size(p, probes, count), @@ -131,6 +137,7 @@ { struct tracepoint_func *old, *new; int nr_probes = 0; + int stub_funcs = 0; int pos = -1; if (WARN_ON(!tp_func->func)) @@ -147,14 +154,34 @@ if (old[nr_probes].func == tp_func->func && old[nr_probes].data == tp_func->data) return ERR_PTR(-EEXIST); + if (old[nr_probes].func == tp_stub_func) + stub_funcs++; } } - /* + 2 : one for new probe, one for NULL func */ - new = allocate_probes(nr_probes + 2); + /* + 2 : one for new probe, one for NULL func - stub functions */ + new = allocate_probes(nr_probes + 2 - stub_funcs); if (new == NULL) return ERR_PTR(-ENOMEM); if (old) { - if (pos < 0) { + if (stub_funcs) { + /* Need to copy one at a time to remove stubs */ + int probes = 0; + + pos = -1; + for (nr_probes = 0; old[nr_probes].func; nr_probes++) { + if (old[nr_probes].func == tp_stub_func) + continue; + if (pos < 0 && old[nr_probes].prio < prio) + pos = probes++; + new[probes++] = old[nr_probes]; + } + nr_probes = probes; + if (pos < 0) + pos = probes; + else + nr_probes--; /* Account for insertion */ + + } else if (pos < 0) { pos = nr_probes; memcpy(new, old, nr_probes * sizeof(struct tracepoint_func)); } else { @@ -188,8 +215,9 @@ /* (N -> M), (N > 1, M >= 0) probes */ if (tp_func->func) { for (nr_probes = 0; old[nr_probes].func; nr_probes++) { - if (old[nr_probes].func == tp_func->func && - old[nr_probes].data == tp_func->data) + if ((old[nr_probes].func == tp_func->func && + old[nr_probes].data == tp_func->data) || + old[nr_probes].func == tp_stub_func) nr_del++; } } @@ -208,14 +236,32 @@ /* N -> M, (N > 1, M > 0) */ /* + 1 for NULL */ new = allocate_probes(nr_probes - nr_del + 1); - if (new == NULL) - return ERR_PTR(-ENOMEM); - for (i = 0; old[i].func; i++) - if (old[i].func != tp_func->func - || old[i].data != tp_func->data) - new[j++] = old[i]; - new[nr_probes - nr_del].func = NULL; - *funcs = new; + if (new) { + for (i = 0; old[i].func; i++) + if ((old[i].func != tp_func->func + || old[i].data != tp_func->data) + && old[i].func != tp_stub_func) + new[j++] = old[i]; + new[nr_probes - nr_del].func = NULL; + *funcs = new; + } else { + /* + * Failed to allocate, replace the old function + * with calls to tp_stub_func. + */ + for (i = 0; old[i].func; i++) + if (old[i].func == tp_func->func && + old[i].data == tp_func->data) { + old[i].func = tp_stub_func; + /* Set the prio to the next event. */ + if (old[i + 1].func) + old[i].prio = + old[i + 1].prio; + else + old[i].prio = -1; + } + *funcs = old; + } } debug_print_probes(*funcs); return old; @@ -271,10 +317,12 @@ tp_funcs = rcu_dereference_protected(tp->funcs, lockdep_is_held(&tracepoints_mutex)); old = func_remove(&tp_funcs, func); - if (IS_ERR(old)) { - WARN_ON_ONCE(PTR_ERR(old) != -ENOMEM); + if (WARN_ON_ONCE(IS_ERR(old))) return PTR_ERR(old); - } + + if (tp_funcs == old) + /* Failed allocating new tp_funcs, replaced func with stub */ + return 0; if (!tp_funcs) { /* Removed last function */ --- linux-azure-5.8-5.8.0.orig/kernel/umh.c +++ linux-azure-5.8-5.8.0/kernel/umh.c @@ -14,6 +14,7 @@ #include #include #include +#include #include #include #include @@ -76,6 +77,14 @@ spin_unlock_irq(¤t->sighand->siglock); /* + * Initial kernel threads share ther FS with init, in order to + * get the init root directory. But we've now created a new + * thread that is going to execve a user process and has its own + * 'struct fs_struct'. Reset umask to the default. + */ + current->fs->umask = 0022; + + /* * Our parent (unbound workqueue) runs with elevated scheduling * priority. Avoid propagating that into the userspace child. */ --- linux-azure-5.8-5.8.0.orig/kernel/user_namespace.c +++ linux-azure-5.8-5.8.0/kernel/user_namespace.c @@ -21,6 +21,12 @@ #include #include +/* + * sysctl determining whether unprivileged users may unshare a new + * userns. Allowed by default + */ +int unprivileged_userns_clone = 1; + static struct kmem_cache *user_ns_cachep __read_mostly; static DEFINE_MUTEX(userns_state_mutex); --- linux-azure-5.8-5.8.0.orig/kernel/watch_queue.c +++ linux-azure-5.8-5.8.0/kernel/watch_queue.c @@ -393,6 +393,7 @@ struct watch *watch = container_of(rcu, struct watch, rcu); put_watch_queue(rcu_access_pointer(watch->queue)); + atomic_dec(&watch->cred->user->nr_watches); put_cred(watch->cred); } @@ -452,6 +453,13 @@ watch->cred = get_current_cred(); rcu_assign_pointer(watch->watch_list, wlist); + if (atomic_inc_return(&watch->cred->user->nr_watches) > + task_rlimit(current, RLIMIT_NOFILE)) { + atomic_dec(&watch->cred->user->nr_watches); + put_cred(watch->cred); + return -EAGAIN; + } + spin_lock_bh(&wqueue->lock); kref_get(&wqueue->usage); kref_get(&watch->usage); --- linux-azure-5.8-5.8.0.orig/kernel/watchdog.c +++ linux-azure-5.8-5.8.0/kernel/watchdog.c @@ -44,8 +44,6 @@ int __read_mostly watchdog_thresh = 10; static int __read_mostly nmi_watchdog_available; -static struct cpumask watchdog_allowed_mask __read_mostly; - struct cpumask watchdog_cpumask __read_mostly; unsigned long *watchdog_cpumask_bits = cpumask_bits(&watchdog_cpumask); @@ -162,6 +160,8 @@ int __read_mostly sysctl_softlockup_all_cpu_backtrace; #endif +static struct cpumask watchdog_allowed_mask __read_mostly; + /* Global variables, exported for sysctl */ unsigned int __read_mostly softlockup_panic = CONFIG_BOOTPARAM_SOFTLOCKUP_PANIC_VALUE; --- linux-azure-5.8-5.8.0.orig/kernel/workqueue.c +++ linux-azure-5.8-5.8.0/kernel/workqueue.c @@ -1843,12 +1843,6 @@ mutex_lock(&wq_pool_attach_mutex); /* - * set_cpus_allowed_ptr() will fail if the cpumask doesn't have any - * online CPUs. It'll be re-applied when any of the CPUs come up. - */ - set_cpus_allowed_ptr(worker->task, pool->attrs->cpumask); - - /* * The wq_pool_attach_mutex ensures %POOL_DISASSOCIATED remains * stable across this function. See the comments above the flag * definition for details. @@ -1856,6 +1850,9 @@ if (pool->flags & POOL_DISASSOCIATED) worker->flags |= WORKER_UNBOUND; + if (worker->rescue_wq) + set_cpus_allowed_ptr(worker->task, pool->attrs->cpumask); + list_add_tail(&worker->node, &pool->workers); worker->pool = pool; @@ -3725,17 +3722,24 @@ * is updated and visible. */ if (!freezable || !workqueue_freezing) { + bool kick = false; + pwq->max_active = wq->saved_max_active; while (!list_empty(&pwq->delayed_works) && - pwq->nr_active < pwq->max_active) + pwq->nr_active < pwq->max_active) { pwq_activate_first_delayed(pwq); + kick = true; + } /* * Need to kick a worker after thawed or an unbound wq's - * max_active is bumped. It's a slow path. Do it always. + * max_active is bumped. In realtime scenarios, always kicking a + * worker will cause interference on the isolated cpu cores, so + * let's kick iff work items were activated. */ - wake_up_worker(pwq->pool); + if (kick) + wake_up_worker(pwq->pool); } else { pwq->max_active = 0; } --- linux-azure-5.8-5.8.0.orig/lib/Kconfig +++ linux-azure-5.8-5.8.0/lib/Kconfig @@ -631,7 +631,12 @@ config ARCH_HAS_UACCESS_FLUSHCACHE bool -config ARCH_HAS_UACCESS_MCSAFE +# arch has a concept of a recoverable synchronous exception due to a +# memory-read error like x86 machine-check or ARM data-abort, and +# implements copy_mc_to_{user,kernel} to abort and report +# 'bytes-transferred' if that exception fires when accessing the source +# buffer. +config ARCH_HAS_COPY_MC bool # Temporary. Goes away when all archs are cleaned up --- linux-azure-5.8-5.8.0.orig/lib/bootconfig.c +++ linux-azure-5.8-5.8.0/lib/bootconfig.c @@ -31,6 +31,8 @@ static struct xbc_node *last_parent __initdata; static const char *xbc_err_msg __initdata; static int xbc_err_pos __initdata; +static int open_brace[XBC_DEPTH_MAX] __initdata; +static int brace_index __initdata; static int __init xbc_parse_error(const char *msg, const char *p) { @@ -423,27 +425,27 @@ return p; } -static int __init __xbc_open_brace(void) +static int __init __xbc_open_brace(char *p) { - /* Mark the last key as open brace */ - last_parent->next = XBC_NODE_MAX; + /* Push the last key as open brace */ + open_brace[brace_index++] = xbc_node_index(last_parent); + if (brace_index >= XBC_DEPTH_MAX) + return xbc_parse_error("Exceed max depth of braces", p); return 0; } static int __init __xbc_close_brace(char *p) { - struct xbc_node *node; - - if (!last_parent || last_parent->next != XBC_NODE_MAX) + brace_index--; + if (!last_parent || brace_index < 0 || + (open_brace[brace_index] != xbc_node_index(last_parent))) return xbc_parse_error("Unexpected closing brace", p); - node = last_parent; - node->next = 0; - do { - node = xbc_node_get_parent(node); - } while (node && node->next != XBC_NODE_MAX); - last_parent = node; + if (brace_index == 0) + last_parent = NULL; + else + last_parent = &xbc_nodes[open_brace[brace_index - 1]]; return 0; } @@ -484,8 +486,8 @@ break; } if (strchr(",;\n#}", c)) { - v = strim(v); *p++ = '\0'; + v = strim(v); break; } } @@ -651,7 +653,7 @@ return ret; *k = n; - return __xbc_open_brace(); + return __xbc_open_brace(n - 1); } static int __init xbc_close_brace(char **k, char *n) @@ -671,6 +673,13 @@ int i, depth, len, wlen; struct xbc_node *n, *m; + /* Brace closing */ + if (brace_index) { + n = &xbc_nodes[open_brace[brace_index]]; + return xbc_parse_error("Brace is not closed", + xbc_node_get_data(n)); + } + /* Empty tree */ if (xbc_node_num == 0) { xbc_parse_error("Empty config", xbc_data); @@ -735,6 +744,7 @@ xbc_node_num = 0; memblock_free(__pa(xbc_nodes), sizeof(struct xbc_node) * XBC_NODE_MAX); xbc_nodes = NULL; + brace_index = 0; } /** --- linux-azure-5.8-5.8.0.orig/lib/crc-t10dif.c +++ linux-azure-5.8-5.8.0/lib/crc-t10dif.c @@ -19,39 +19,46 @@ static struct crypto_shash __rcu *crct10dif_tfm; static struct static_key crct10dif_fallback __read_mostly; static DEFINE_MUTEX(crc_t10dif_mutex); +static struct work_struct crct10dif_rehash_work; -static int crc_t10dif_rehash(struct notifier_block *self, unsigned long val, void *data) +static int crc_t10dif_notify(struct notifier_block *self, unsigned long val, void *data) { struct crypto_alg *alg = data; - struct crypto_shash *new, *old; if (val != CRYPTO_MSG_ALG_LOADED || static_key_false(&crct10dif_fallback) || strncmp(alg->cra_name, CRC_T10DIF_STRING, strlen(CRC_T10DIF_STRING))) return 0; + schedule_work(&crct10dif_rehash_work); + return 0; +} + +static void crc_t10dif_rehash(struct work_struct *work) +{ + struct crypto_shash *new, *old; + mutex_lock(&crc_t10dif_mutex); old = rcu_dereference_protected(crct10dif_tfm, lockdep_is_held(&crc_t10dif_mutex)); if (!old) { mutex_unlock(&crc_t10dif_mutex); - return 0; + return; } new = crypto_alloc_shash("crct10dif", 0, 0); if (IS_ERR(new)) { mutex_unlock(&crc_t10dif_mutex); - return 0; + return; } rcu_assign_pointer(crct10dif_tfm, new); mutex_unlock(&crc_t10dif_mutex); synchronize_rcu(); crypto_free_shash(old); - return 0; } static struct notifier_block crc_t10dif_nb = { - .notifier_call = crc_t10dif_rehash, + .notifier_call = crc_t10dif_notify, }; __u16 crc_t10dif_update(__u16 crc, const unsigned char *buffer, size_t len) @@ -86,19 +93,26 @@ static int __init crc_t10dif_mod_init(void) { + struct crypto_shash *tfm; + + INIT_WORK(&crct10dif_rehash_work, crc_t10dif_rehash); crypto_register_notifier(&crc_t10dif_nb); - crct10dif_tfm = crypto_alloc_shash("crct10dif", 0, 0); - if (IS_ERR(crct10dif_tfm)) { + mutex_lock(&crc_t10dif_mutex); + tfm = crypto_alloc_shash("crct10dif", 0, 0); + if (IS_ERR(tfm)) { static_key_slow_inc(&crct10dif_fallback); - crct10dif_tfm = NULL; + tfm = NULL; } + RCU_INIT_POINTER(crct10dif_tfm, tfm); + mutex_unlock(&crc_t10dif_mutex); return 0; } static void __exit crc_t10dif_mod_fini(void) { crypto_unregister_notifier(&crc_t10dif_nb); - crypto_free_shash(crct10dif_tfm); + cancel_work_sync(&crct10dif_rehash_work); + crypto_free_shash(rcu_dereference_protected(crct10dif_tfm, 1)); } module_init(crc_t10dif_mod_init); @@ -106,11 +120,27 @@ static int crc_t10dif_transform_show(char *buffer, const struct kernel_param *kp) { + struct crypto_shash *tfm; + const char *name; + int len; + if (static_key_false(&crct10dif_fallback)) return sprintf(buffer, "fallback\n"); - return sprintf(buffer, "%s\n", - crypto_tfm_alg_driver_name(crypto_shash_tfm(crct10dif_tfm))); + rcu_read_lock(); + tfm = rcu_dereference(crct10dif_tfm); + if (!tfm) { + len = sprintf(buffer, "init\n"); + goto unlock; + } + + name = crypto_tfm_alg_driver_name(crypto_shash_tfm(tfm)); + len = sprintf(buffer, "%s\n", name); + +unlock: + rcu_read_unlock(); + + return len; } module_param_call(transform, NULL, crc_t10dif_transform_show, NULL, 0644); --- linux-azure-5.8-5.8.0.orig/lib/crc32.c +++ linux-azure-5.8-5.8.0/lib/crc32.c @@ -331,7 +331,7 @@ return crc; } -#if CRC_LE_BITS == 1 +#if CRC_BE_BITS == 1 u32 __pure crc32_be(u32 crc, unsigned char const *p, size_t len) { return crc32_be_generic(crc, p, len, NULL, CRC32_POLY_BE); --- linux-azure-5.8-5.8.0.orig/lib/crc32test.c +++ linux-azure-5.8-5.8.0/lib/crc32test.c @@ -683,7 +683,6 @@ /* reduce OS noise */ local_irq_save(flags); - local_irq_disable(); nsec = ktime_get_ns(); for (i = 0; i < 100; i++) { @@ -694,7 +693,6 @@ nsec = ktime_get_ns() - nsec; local_irq_restore(flags); - local_irq_enable(); pr_info("crc32c: CRC_LE_BITS = %d\n", CRC_LE_BITS); @@ -768,7 +766,6 @@ /* reduce OS noise */ local_irq_save(flags); - local_irq_disable(); nsec = ktime_get_ns(); for (i = 0; i < 100; i++) { @@ -783,7 +780,6 @@ nsec = ktime_get_ns() - nsec; local_irq_restore(flags); - local_irq_enable(); pr_info("crc32: CRC_LE_BITS = %d, CRC_BE BITS = %d\n", CRC_LE_BITS, CRC_BE_BITS); --- linux-azure-5.8-5.8.0.orig/lib/decompress_unlz4.c +++ linux-azure-5.8-5.8.0/lib/decompress_unlz4.c @@ -112,6 +112,9 @@ error("data corrupted"); goto exit_2; } + } else if (size < 4) { + /* empty or end-of-file */ + goto exit_3; } chunksize = get_unaligned_le32(inp); @@ -125,6 +128,10 @@ continue; } + if (!fill && chunksize == 0) { + /* empty or end-of-file */ + goto exit_3; + } if (posp) *posp += 4; @@ -184,6 +191,7 @@ } } +exit_3: ret = 0; exit_2: if (!input) --- linux-azure-5.8-5.8.0.orig/lib/devres.c +++ linux-azure-5.8-5.8.0/lib/devres.c @@ -119,6 +119,7 @@ { resource_size_t size; void __iomem *dest_ptr; + char *pretty_name; BUG_ON(!dev); @@ -129,7 +130,15 @@ size = resource_size(res); - if (!devm_request_mem_region(dev, res->start, size, dev_name(dev))) { + if (res->name) + pretty_name = devm_kasprintf(dev, GFP_KERNEL, "%s %s", + dev_name(dev), res->name); + else + pretty_name = devm_kstrdup(dev, dev_name(dev), GFP_KERNEL); + if (!pretty_name) + return IOMEM_ERR_PTR(-ENOMEM); + + if (!devm_request_mem_region(dev, res->start, size, pretty_name)) { dev_err(dev, "can't request region for resource %pR\n", res); return IOMEM_ERR_PTR(-EBUSY); } --- linux-azure-5.8-5.8.0.orig/lib/dynamic_debug.c +++ linux-azure-5.8-5.8.0/lib/dynamic_debug.c @@ -87,22 +87,22 @@ { _DPRINTK_FLAGS_NONE, '_' }, }; +struct flagsbuf { char buf[ARRAY_SIZE(opt_array)+1]; }; + /* format a string into buf[] which describes the _ddebug's flags */ -static char *ddebug_describe_flags(struct _ddebug *dp, char *buf, - size_t maxlen) +static char *ddebug_describe_flags(unsigned int flags, struct flagsbuf *fb) { - char *p = buf; + char *p = fb->buf; int i; - BUG_ON(maxlen < 6); for (i = 0; i < ARRAY_SIZE(opt_array); ++i) - if (dp->flags & opt_array[i].flag) + if (flags & opt_array[i].flag) *p++ = opt_array[i].opt_char; - if (p == buf) + if (p == fb->buf) *p++ = '_'; *p = '\0'; - return buf; + return fb->buf; } #define vpr_info(fmt, ...) \ @@ -144,7 +144,7 @@ struct ddebug_table *dt; unsigned int newflags; unsigned int nfound = 0; - char flagbuf[10]; + struct flagsbuf fbuf; /* search for matching ddebugs */ mutex_lock(&ddebug_lock); @@ -201,8 +201,7 @@ vpr_info("changed %s:%d [%s]%s =%s\n", trim_prefix(dp->filename), dp->lineno, dt->mod_name, dp->function, - ddebug_describe_flags(dp, flagbuf, - sizeof(flagbuf))); + ddebug_describe_flags(dp->flags, &fbuf)); } } mutex_unlock(&ddebug_lock); @@ -816,7 +815,7 @@ { struct ddebug_iter *iter = m->private; struct _ddebug *dp = p; - char flagsbuf[10]; + struct flagsbuf flags; vpr_info("called m=%p p=%p\n", m, p); @@ -829,7 +828,7 @@ seq_printf(m, "%s:%u [%s]%s =%s \"", trim_prefix(dp->filename), dp->lineno, iter->table->mod_name, dp->function, - ddebug_describe_flags(dp, flagsbuf, sizeof(flagsbuf))); + ddebug_describe_flags(dp->flags, &flags)); seq_escape(m, dp->format, "\t\r\n\""); seq_puts(m, "\"\n"); --- linux-azure-5.8-5.8.0.orig/lib/fonts/font_10x18.c +++ linux-azure-5.8-5.8.0/lib/fonts/font_10x18.c @@ -8,8 +8,8 @@ #define FONTDATAMAX 9216 -static const unsigned char fontdata_10x18[FONTDATAMAX] = { - +static const struct font_data fontdata_10x18 = { + { 0, 0, FONTDATAMAX, 0 }, { /* 0 0x00 '^@' */ 0x00, 0x00, /* 0000000000 */ 0x00, 0x00, /* 0000000000 */ @@ -5129,8 +5129,7 @@ 0x00, 0x00, /* 0000000000 */ 0x00, 0x00, /* 0000000000 */ 0x00, 0x00, /* 0000000000 */ - -}; +} }; const struct font_desc font_10x18 = { @@ -5138,7 +5137,7 @@ .name = "10x18", .width = 10, .height = 18, - .data = fontdata_10x18, + .data = fontdata_10x18.data, #ifdef __sparc__ .pref = 5, #else --- linux-azure-5.8-5.8.0.orig/lib/fonts/font_6x10.c +++ linux-azure-5.8-5.8.0/lib/fonts/font_6x10.c @@ -1,8 +1,10 @@ // SPDX-License-Identifier: GPL-2.0 #include -static const unsigned char fontdata_6x10[] = { +#define FONTDATAMAX 2560 +static const struct font_data fontdata_6x10 = { + { 0, 0, FONTDATAMAX, 0 }, { /* 0 0x00 '^@' */ 0x00, /* 00000000 */ 0x00, /* 00000000 */ @@ -3074,14 +3076,13 @@ 0x00, /* 00000000 */ 0x00, /* 00000000 */ 0x00, /* 00000000 */ - -}; +} }; const struct font_desc font_6x10 = { .idx = FONT6x10_IDX, .name = "6x10", .width = 6, .height = 10, - .data = fontdata_6x10, + .data = fontdata_6x10.data, .pref = 0, }; --- linux-azure-5.8-5.8.0.orig/lib/fonts/font_6x11.c +++ linux-azure-5.8-5.8.0/lib/fonts/font_6x11.c @@ -9,8 +9,8 @@ #define FONTDATAMAX (11*256) -static const unsigned char fontdata_6x11[FONTDATAMAX] = { - +static const struct font_data fontdata_6x11 = { + { 0, 0, FONTDATAMAX, 0 }, { /* 0 0x00 '^@' */ 0x00, /* 00000000 */ 0x00, /* 00000000 */ @@ -3338,8 +3338,7 @@ 0x00, /* 00000000 */ 0x00, /* 00000000 */ 0x00, /* 00000000 */ - -}; +} }; const struct font_desc font_vga_6x11 = { @@ -3347,7 +3346,7 @@ .name = "ProFont6x11", .width = 6, .height = 11, - .data = fontdata_6x11, + .data = fontdata_6x11.data, /* Try avoiding this font if possible unless on MAC */ .pref = -2000, }; --- linux-azure-5.8-5.8.0.orig/lib/fonts/font_7x14.c +++ linux-azure-5.8-5.8.0/lib/fonts/font_7x14.c @@ -8,8 +8,8 @@ #define FONTDATAMAX 3584 -static const unsigned char fontdata_7x14[FONTDATAMAX] = { - +static const struct font_data fontdata_7x14 = { + { 0, 0, FONTDATAMAX, 0 }, { /* 0 0x00 '^@' */ 0x00, /* 0000000 */ 0x00, /* 0000000 */ @@ -4105,8 +4105,7 @@ 0x00, /* 0000000 */ 0x00, /* 0000000 */ 0x00, /* 0000000 */ - -}; +} }; const struct font_desc font_7x14 = { @@ -4114,6 +4113,6 @@ .name = "7x14", .width = 7, .height = 14, - .data = fontdata_7x14, + .data = fontdata_7x14.data, .pref = 0, }; --- linux-azure-5.8-5.8.0.orig/lib/fonts/font_8x16.c +++ linux-azure-5.8-5.8.0/lib/fonts/font_8x16.c @@ -10,8 +10,8 @@ #define FONTDATAMAX 4096 -static const unsigned char fontdata_8x16[FONTDATAMAX] = { - +static const struct font_data fontdata_8x16 = { + { 0, 0, FONTDATAMAX, 0 }, { /* 0 0x00 '^@' */ 0x00, /* 00000000 */ 0x00, /* 00000000 */ @@ -4619,8 +4619,7 @@ 0x00, /* 00000000 */ 0x00, /* 00000000 */ 0x00, /* 00000000 */ - -}; +} }; const struct font_desc font_vga_8x16 = { @@ -4628,7 +4627,7 @@ .name = "VGA8x16", .width = 8, .height = 16, - .data = fontdata_8x16, + .data = fontdata_8x16.data, .pref = 0, }; EXPORT_SYMBOL(font_vga_8x16); --- linux-azure-5.8-5.8.0.orig/lib/fonts/font_8x8.c +++ linux-azure-5.8-5.8.0/lib/fonts/font_8x8.c @@ -9,8 +9,8 @@ #define FONTDATAMAX 2048 -static const unsigned char fontdata_8x8[FONTDATAMAX] = { - +static const struct font_data fontdata_8x8 = { + { 0, 0, FONTDATAMAX, 0 }, { /* 0 0x00 '^@' */ 0x00, /* 00000000 */ 0x00, /* 00000000 */ @@ -2570,8 +2570,7 @@ 0x00, /* 00000000 */ 0x00, /* 00000000 */ 0x00, /* 00000000 */ - -}; +} }; const struct font_desc font_vga_8x8 = { @@ -2579,6 +2578,6 @@ .name = "VGA8x8", .width = 8, .height = 8, - .data = fontdata_8x8, + .data = fontdata_8x8.data, .pref = 0, }; --- linux-azure-5.8-5.8.0.orig/lib/fonts/font_acorn_8x8.c +++ linux-azure-5.8-5.8.0/lib/fonts/font_acorn_8x8.c @@ -3,7 +3,10 @@ #include -static const unsigned char acorndata_8x8[] = { +#define FONTDATAMAX 2048 + +static const struct font_data acorndata_8x8 = { +{ 0, 0, FONTDATAMAX, 0 }, { /* 00 */ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* ^@ */ /* 01 */ 0x7e, 0x81, 0xa5, 0x81, 0xbd, 0x99, 0x81, 0x7e, /* ^A */ /* 02 */ 0x7e, 0xff, 0xbd, 0xff, 0xc3, 0xe7, 0xff, 0x7e, /* ^B */ @@ -260,14 +263,14 @@ /* FD */ 0x38, 0x04, 0x18, 0x20, 0x3c, 0x00, 0x00, 0x00, /* FE */ 0x00, 0x00, 0x3c, 0x3c, 0x3c, 0x3c, 0x00, 0x00, /* FF */ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 -}; +} }; const struct font_desc font_acorn_8x8 = { .idx = ACORN8x8_IDX, .name = "Acorn8x8", .width = 8, .height = 8, - .data = acorndata_8x8, + .data = acorndata_8x8.data, #ifdef CONFIG_ARCH_ACORN .pref = 20, #else --- linux-azure-5.8-5.8.0.orig/lib/fonts/font_mini_4x6.c +++ linux-azure-5.8-5.8.0/lib/fonts/font_mini_4x6.c @@ -43,8 +43,8 @@ #define FONTDATAMAX 1536 -static const unsigned char fontdata_mini_4x6[FONTDATAMAX] = { - +static const struct font_data fontdata_mini_4x6 = { + { 0, 0, FONTDATAMAX, 0 }, { /*{*/ /* Char 0: ' ' */ 0xee, /*= [*** ] */ @@ -2145,14 +2145,14 @@ 0xee, /*= [*** ] */ 0x00, /*= [ ] */ /*}*/ -}; +} }; const struct font_desc font_mini_4x6 = { .idx = MINI4x6_IDX, .name = "MINI4x6", .width = 4, .height = 6, - .data = fontdata_mini_4x6, + .data = fontdata_mini_4x6.data, .pref = 3, }; --- linux-azure-5.8-5.8.0.orig/lib/fonts/font_pearl_8x8.c +++ linux-azure-5.8-5.8.0/lib/fonts/font_pearl_8x8.c @@ -14,8 +14,8 @@ #define FONTDATAMAX 2048 -static const unsigned char fontdata_pearl8x8[FONTDATAMAX] = { - +static const struct font_data fontdata_pearl8x8 = { + { 0, 0, FONTDATAMAX, 0 }, { /* 0 0x00 '^@' */ 0x00, /* 00000000 */ 0x00, /* 00000000 */ @@ -2575,14 +2575,13 @@ 0x00, /* 00000000 */ 0x00, /* 00000000 */ 0x00, /* 00000000 */ - -}; +} }; const struct font_desc font_pearl_8x8 = { .idx = PEARL8x8_IDX, .name = "PEARL8x8", .width = 8, .height = 8, - .data = fontdata_pearl8x8, + .data = fontdata_pearl8x8.data, .pref = 2, }; --- linux-azure-5.8-5.8.0.orig/lib/fonts/font_sun12x22.c +++ linux-azure-5.8-5.8.0/lib/fonts/font_sun12x22.c @@ -3,8 +3,8 @@ #define FONTDATAMAX 11264 -static const unsigned char fontdata_sun12x22[FONTDATAMAX] = { - +static const struct font_data fontdata_sun12x22 = { + { 0, 0, FONTDATAMAX, 0 }, { /* 0 0x00 '^@' */ 0x00, 0x00, /* 000000000000 */ 0x00, 0x00, /* 000000000000 */ @@ -6148,8 +6148,7 @@ 0x00, 0x00, /* 000000000000 */ 0x00, 0x00, /* 000000000000 */ 0x00, 0x00, /* 000000000000 */ - -}; +} }; const struct font_desc font_sun_12x22 = { @@ -6157,7 +6156,7 @@ .name = "SUN12x22", .width = 12, .height = 22, - .data = fontdata_sun12x22, + .data = fontdata_sun12x22.data, #ifdef __sparc__ .pref = 5, #else --- linux-azure-5.8-5.8.0.orig/lib/fonts/font_sun8x16.c +++ linux-azure-5.8-5.8.0/lib/fonts/font_sun8x16.c @@ -3,7 +3,8 @@ #define FONTDATAMAX 4096 -static const unsigned char fontdata_sun8x16[FONTDATAMAX] = { +static const struct font_data fontdata_sun8x16 = { +{ 0, 0, FONTDATAMAX, 0 }, { /* */ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, /* */ 0x00,0x00,0x7e,0x81,0xa5,0x81,0x81,0xbd,0x99,0x81,0x81,0x7e,0x00,0x00,0x00,0x00, /* */ 0x00,0x00,0x7e,0xff,0xdb,0xff,0xff,0xc3,0xe7,0xff,0xff,0x7e,0x00,0x00,0x00,0x00, @@ -260,14 +261,14 @@ /* */ 0x00,0x70,0xd8,0x30,0x60,0xc8,0xf8,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, /* */ 0x00,0x00,0x00,0x00,0x7c,0x7c,0x7c,0x7c,0x7c,0x7c,0x7c,0x00,0x00,0x00,0x00,0x00, /* */ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, -}; +} }; const struct font_desc font_sun_8x16 = { .idx = SUN8x16_IDX, .name = "SUN8x16", .width = 8, .height = 16, - .data = fontdata_sun8x16, + .data = fontdata_sun8x16.data, #ifdef __sparc__ .pref = 10, #else --- linux-azure-5.8-5.8.0.orig/lib/fonts/font_ter16x32.c +++ linux-azure-5.8-5.8.0/lib/fonts/font_ter16x32.c @@ -4,8 +4,8 @@ #define FONTDATAMAX 16384 -static const unsigned char fontdata_ter16x32[FONTDATAMAX] = { - +static const struct font_data fontdata_ter16x32 = { + { 0, 0, FONTDATAMAX, 0 }, { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x7f, 0xfc, 0x7f, 0xfc, 0x70, 0x1c, 0x70, 0x1c, 0x70, 0x1c, 0x70, 0x1c, @@ -2054,8 +2054,7 @@ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 255 */ - -}; +} }; const struct font_desc font_ter_16x32 = { @@ -2063,7 +2062,7 @@ .name = "TER16x32", .width = 16, .height = 32, - .data = fontdata_ter16x32, + .data = fontdata_ter16x32.data, #ifdef __sparc__ .pref = 5, #else --- linux-azure-5.8-5.8.0.orig/lib/genalloc.c +++ linux-azure-5.8-5.8.0/lib/genalloc.c @@ -81,14 +81,14 @@ * users set the same bit, one user will return remain bits, otherwise * return 0. */ -static int bitmap_set_ll(unsigned long *map, int start, int nr) +static int bitmap_set_ll(unsigned long *map, unsigned long start, unsigned long nr) { unsigned long *p = map + BIT_WORD(start); - const int size = start + nr; + const unsigned long size = start + nr; int bits_to_set = BITS_PER_LONG - (start % BITS_PER_LONG); unsigned long mask_to_set = BITMAP_FIRST_WORD_MASK(start); - while (nr - bits_to_set >= 0) { + while (nr >= bits_to_set) { if (set_bits_ll(p, mask_to_set)) return nr; nr -= bits_to_set; @@ -116,14 +116,15 @@ * users clear the same bit, one user will return remain bits, * otherwise return 0. */ -static int bitmap_clear_ll(unsigned long *map, int start, int nr) +static unsigned long +bitmap_clear_ll(unsigned long *map, unsigned long start, unsigned long nr) { unsigned long *p = map + BIT_WORD(start); - const int size = start + nr; + const unsigned long size = start + nr; int bits_to_clear = BITS_PER_LONG - (start % BITS_PER_LONG); unsigned long mask_to_clear = BITMAP_FIRST_WORD_MASK(start); - while (nr - bits_to_clear >= 0) { + while (nr >= bits_to_clear) { if (clear_bits_ll(p, mask_to_clear)) return nr; nr -= bits_to_clear; @@ -183,8 +184,8 @@ size_t size, int nid, void *owner) { struct gen_pool_chunk *chunk; - int nbits = size >> pool->min_alloc_order; - int nbytes = sizeof(struct gen_pool_chunk) + + unsigned long nbits = size >> pool->min_alloc_order; + unsigned long nbytes = sizeof(struct gen_pool_chunk) + BITS_TO_LONGS(nbits) * sizeof(long); chunk = vzalloc_node(nbytes, nid); @@ -242,7 +243,7 @@ struct list_head *_chunk, *_next_chunk; struct gen_pool_chunk *chunk; int order = pool->min_alloc_order; - int bit, end_bit; + unsigned long bit, end_bit; list_for_each_safe(_chunk, _next_chunk, &pool->chunks) { chunk = list_entry(_chunk, struct gen_pool_chunk, next_chunk); @@ -278,7 +279,7 @@ struct gen_pool_chunk *chunk; unsigned long addr = 0; int order = pool->min_alloc_order; - int nbits, start_bit, end_bit, remain; + unsigned long nbits, start_bit, end_bit, remain; #ifndef CONFIG_ARCH_HAVE_NMI_SAFE_CMPXCHG BUG_ON(in_nmi()); @@ -487,7 +488,7 @@ { struct gen_pool_chunk *chunk; int order = pool->min_alloc_order; - int start_bit, nbits, remain; + unsigned long start_bit, nbits, remain; #ifndef CONFIG_ARCH_HAVE_NMI_SAFE_CMPXCHG BUG_ON(in_nmi()); @@ -755,7 +756,7 @@ index = bitmap_find_next_zero_area(map, size, start, nr, 0); while (index < size) { - int next_bit = find_next_bit(map, size, index + nr); + unsigned long next_bit = find_next_bit(map, size, index + nr); if ((next_bit - index) < len) { len = next_bit - index; start_bit = index; --- linux-azure-5.8-5.8.0.orig/lib/idr.c +++ linux-azure-5.8-5.8.0/lib/idr.c @@ -470,6 +470,7 @@ goto retry; nospc: xas_unlock_irqrestore(&xas, flags); + kfree(alloc); return -ENOSPC; } EXPORT_SYMBOL(ida_alloc_range); --- linux-azure-5.8-5.8.0.orig/lib/iov_iter.c +++ linux-azure-5.8-5.8.0/lib/iov_iter.c @@ -585,14 +585,15 @@ } static size_t csum_and_copy_to_pipe_iter(const void *addr, size_t bytes, - __wsum *csum, struct iov_iter *i) + struct csum_state *csstate, + struct iov_iter *i) { struct pipe_inode_info *pipe = i->pipe; unsigned int p_mask = pipe->ring_size - 1; + __wsum sum = csstate->csum; + size_t off = csstate->off; unsigned int i_head; size_t n, r; - size_t off = 0; - __wsum sum = *csum; if (!sanity(i)) return 0; @@ -614,7 +615,8 @@ i_head++; } while (n); i->count -= bytes; - *csum = sum; + csstate->csum = sum; + csstate->off = off; return bytes; } @@ -636,30 +638,30 @@ } EXPORT_SYMBOL(_copy_to_iter); -#ifdef CONFIG_ARCH_HAS_UACCESS_MCSAFE -static int copyout_mcsafe(void __user *to, const void *from, size_t n) +#ifdef CONFIG_ARCH_HAS_COPY_MC +static int copyout_mc(void __user *to, const void *from, size_t n) { if (access_ok(to, n)) { instrument_copy_to_user(to, from, n); - n = copy_to_user_mcsafe((__force void *) to, from, n); + n = copy_mc_to_user((__force void *) to, from, n); } return n; } -static unsigned long memcpy_mcsafe_to_page(struct page *page, size_t offset, +static unsigned long copy_mc_to_page(struct page *page, size_t offset, const char *from, size_t len) { unsigned long ret; char *to; to = kmap_atomic(page); - ret = memcpy_mcsafe(to + offset, from, len); + ret = copy_mc_to_kernel(to + offset, from, len); kunmap_atomic(to); return ret; } -static size_t copy_pipe_to_iter_mcsafe(const void *addr, size_t bytes, +static size_t copy_mc_pipe_to_iter(const void *addr, size_t bytes, struct iov_iter *i) { struct pipe_inode_info *pipe = i->pipe; @@ -677,7 +679,7 @@ size_t chunk = min_t(size_t, n, PAGE_SIZE - off); unsigned long rem; - rem = memcpy_mcsafe_to_page(pipe->bufs[i_head & p_mask].page, + rem = copy_mc_to_page(pipe->bufs[i_head & p_mask].page, off, addr, chunk); i->head = i_head; i->iov_offset = off + chunk - rem; @@ -694,18 +696,17 @@ } /** - * _copy_to_iter_mcsafe - copy to user with source-read error exception handling + * _copy_mc_to_iter - copy to iter with source memory error exception handling * @addr: source kernel address * @bytes: total transfer length * @iter: destination iterator * - * The pmem driver arranges for filesystem-dax to use this facility via - * dax_copy_to_iter() for protecting read/write to persistent memory. - * Unless / until an architecture can guarantee identical performance - * between _copy_to_iter_mcsafe() and _copy_to_iter() it would be a - * performance regression to switch more users to the mcsafe version. + * The pmem driver deploys this for the dax operation + * (dax_copy_to_iter()) for dax reads (bypass page-cache and the + * block-layer). Upon #MC read(2) aborts and returns EIO or the bytes + * successfully copied. * - * Otherwise, the main differences between this and typical _copy_to_iter(). + * The main differences between this and typical _copy_to_iter(). * * * Typical tail/residue handling after a fault retries the copy * byte-by-byte until the fault happens again. Re-triggering machine @@ -716,23 +717,22 @@ * * ITER_KVEC, ITER_PIPE, and ITER_BVEC can return short copies. * Compare to copy_to_iter() where only ITER_IOVEC attempts might return * a short copy. - * - * See MCSAFE_TEST for self-test. */ -size_t _copy_to_iter_mcsafe(const void *addr, size_t bytes, struct iov_iter *i) +size_t _copy_mc_to_iter(const void *addr, size_t bytes, struct iov_iter *i) { const char *from = addr; unsigned long rem, curr_addr, s_addr = (unsigned long) addr; if (unlikely(iov_iter_is_pipe(i))) - return copy_pipe_to_iter_mcsafe(addr, bytes, i); + return copy_mc_pipe_to_iter(addr, bytes, i); if (iter_is_iovec(i)) might_fault(); iterate_and_advance(i, bytes, v, - copyout_mcsafe(v.iov_base, (from += v.iov_len) - v.iov_len, v.iov_len), + copyout_mc(v.iov_base, (from += v.iov_len) - v.iov_len, + v.iov_len), ({ - rem = memcpy_mcsafe_to_page(v.bv_page, v.bv_offset, - (from += v.bv_len) - v.bv_len, v.bv_len); + rem = copy_mc_to_page(v.bv_page, v.bv_offset, + (from += v.bv_len) - v.bv_len, v.bv_len); if (rem) { curr_addr = (unsigned long) from; bytes = curr_addr - s_addr - rem; @@ -740,8 +740,8 @@ } }), ({ - rem = memcpy_mcsafe(v.iov_base, (from += v.iov_len) - v.iov_len, - v.iov_len); + rem = copy_mc_to_kernel(v.iov_base, (from += v.iov_len) + - v.iov_len, v.iov_len); if (rem) { curr_addr = (unsigned long) from; bytes = curr_addr - s_addr - rem; @@ -752,8 +752,8 @@ return bytes; } -EXPORT_SYMBOL_GPL(_copy_to_iter_mcsafe); -#endif /* CONFIG_ARCH_HAS_UACCESS_MCSAFE */ +EXPORT_SYMBOL_GPL(_copy_mc_to_iter); +#endif /* CONFIG_ARCH_HAS_COPY_MC */ size_t _copy_from_iter(void *addr, size_t bytes, struct iov_iter *i) { @@ -1519,18 +1519,19 @@ } EXPORT_SYMBOL(csum_and_copy_from_iter_full); -size_t csum_and_copy_to_iter(const void *addr, size_t bytes, void *csump, +size_t csum_and_copy_to_iter(const void *addr, size_t bytes, void *_csstate, struct iov_iter *i) { + struct csum_state *csstate = _csstate; const char *from = addr; - __wsum *csum = csump; __wsum sum, next; - size_t off = 0; + size_t off; if (unlikely(iov_iter_is_pipe(i))) - return csum_and_copy_to_pipe_iter(addr, bytes, csum, i); + return csum_and_copy_to_pipe_iter(addr, bytes, _csstate, i); - sum = *csum; + sum = csstate->csum; + off = csstate->off; if (unlikely(iov_iter_is_discard(i))) { WARN_ON(1); /* for now */ return 0; @@ -1559,7 +1560,8 @@ off += v.iov_len; }) ) - *csum = sum; + csstate->csum = sum; + csstate->off = off; return bytes; } EXPORT_SYMBOL(csum_and_copy_to_iter); --- linux-azure-5.8-5.8.0.orig/lib/kobject.c +++ linux-azure-5.8-5.8.0/lib/kobject.c @@ -599,14 +599,7 @@ } EXPORT_SYMBOL_GPL(kobject_move); -/** - * kobject_del() - Unlink kobject from hierarchy. - * @kobj: object. - * - * This is the function that should be called to delete an object - * successfully added via kobject_add(). - */ -void kobject_del(struct kobject *kobj) +static void __kobject_del(struct kobject *kobj) { struct kernfs_node *sd; const struct kobj_type *ktype; @@ -632,9 +625,27 @@ kobj->state_in_sysfs = 0; kobj_kset_leave(kobj); - kobject_put(kobj->parent); kobj->parent = NULL; } + +/** + * kobject_del() - Unlink kobject from hierarchy. + * @kobj: object. + * + * This is the function that should be called to delete an object + * successfully added via kobject_add(). + */ +void kobject_del(struct kobject *kobj) +{ + struct kobject *parent; + + if (!kobj) + return; + + parent = kobj->parent; + __kobject_del(kobj); + kobject_put(parent); +} EXPORT_SYMBOL(kobject_del); /** @@ -670,6 +681,7 @@ */ static void kobject_cleanup(struct kobject *kobj) { + struct kobject *parent = kobj->parent; struct kobj_type *t = get_ktype(kobj); const char *name = kobj->name; @@ -684,7 +696,10 @@ if (kobj->state_in_sysfs) { pr_debug("kobject: '%s' (%p): auto cleanup kobject_del\n", kobject_name(kobj), kobj); - kobject_del(kobj); + __kobject_del(kobj); + } else { + /* avoid dropping the parent reference unnecessarily */ + parent = NULL; } if (t && t->release) { @@ -698,6 +713,8 @@ pr_debug("kobject: '%s': free name\n", name); kfree_const(name); } + + kobject_put(parent); } #ifdef CONFIG_DEBUG_KOBJECT_RELEASE --- linux-azure-5.8-5.8.0.orig/lib/radix-tree.c +++ linux-azure-5.8-5.8.0/lib/radix-tree.c @@ -20,7 +20,6 @@ #include #include #include -#include #include /* in_interrupt() */ #include #include @@ -28,6 +27,7 @@ #include #include + /* * Radix tree node cache. */ @@ -58,10 +58,12 @@ /* * Per-cpu pool of preloaded nodes */ -DEFINE_PER_CPU(struct radix_tree_preload, radix_tree_preloads) = { - .lock = INIT_LOCAL_LOCK(lock), +struct radix_tree_preload { + unsigned nr; + /* nodes->parent points to next preallocated node */ + struct radix_tree_node *nodes; }; -EXPORT_PER_CPU_SYMBOL_GPL(radix_tree_preloads); +static DEFINE_PER_CPU(struct radix_tree_preload, radix_tree_preloads) = { 0, }; static inline struct radix_tree_node *entry_to_node(void *ptr) { @@ -330,14 +332,14 @@ */ gfp_mask &= ~__GFP_ACCOUNT; - local_lock(&radix_tree_preloads.lock); + preempt_disable(); rtp = this_cpu_ptr(&radix_tree_preloads); while (rtp->nr < nr) { - local_unlock(&radix_tree_preloads.lock); + preempt_enable(); node = kmem_cache_alloc(radix_tree_node_cachep, gfp_mask); if (node == NULL) goto out; - local_lock(&radix_tree_preloads.lock); + preempt_disable(); rtp = this_cpu_ptr(&radix_tree_preloads); if (rtp->nr < nr) { node->parent = rtp->nodes; @@ -379,7 +381,7 @@ if (gfpflags_allow_blocking(gfp_mask)) return __radix_tree_preload(gfp_mask, RADIX_TREE_PRELOAD_SIZE); /* Preloading doesn't help anything with this gfp mask, skip it */ - local_lock(&radix_tree_preloads.lock); + preempt_disable(); return 0; } EXPORT_SYMBOL(radix_tree_maybe_preload); @@ -1468,7 +1470,7 @@ void idr_preload(gfp_t gfp_mask) { if (__radix_tree_preload(gfp_mask, IDR_PRELOAD_SIZE)) - local_lock(&radix_tree_preloads.lock); + preempt_disable(); } EXPORT_SYMBOL(idr_preload); --- linux-azure-5.8-5.8.0.orig/lib/raid6/Makefile +++ linux-azure-5.8-5.8.0/lib/raid6/Makefile @@ -48,7 +48,7 @@ endif quiet_cmd_unroll = UNROLL $@ - cmd_unroll = $(AWK) -f$(srctree)/$(src)/unroll.awk -vN=$* < $< > $@ + cmd_unroll = $(AWK) -v N=$* -f $(srctree)/$(src)/unroll.awk < $< > $@ targets += int1.c int2.c int4.c int8.c int16.c int32.c $(obj)/int%.c: $(src)/int.uc $(src)/unroll.awk FORCE --- linux-azure-5.8-5.8.0.orig/lib/random32.c +++ linux-azure-5.8-5.8.0/lib/random32.c @@ -40,16 +40,6 @@ #include #include -#ifdef CONFIG_RANDOM32_SELFTEST -static void __init prandom_state_selftest(void); -#else -static inline void prandom_state_selftest(void) -{ -} -#endif - -DEFINE_PER_CPU(struct rnd_state, net_rand_state); - /** * prandom_u32_state - seeded pseudo-random number generator. * @state: pointer to state structure holding seeded state. @@ -70,25 +60,6 @@ EXPORT_SYMBOL(prandom_u32_state); /** - * prandom_u32 - pseudo random number generator - * - * A 32 bit pseudo-random number is generated using a fast - * algorithm suitable for simulation. This algorithm is NOT - * considered safe for cryptographic use. - */ -u32 prandom_u32(void) -{ - struct rnd_state *state = &get_cpu_var(net_rand_state); - u32 res; - - res = prandom_u32_state(state); - put_cpu_var(net_rand_state); - - return res; -} -EXPORT_SYMBOL(prandom_u32); - -/** * prandom_bytes_state - get the requested number of pseudo-random bytes * * @state: pointer to state structure holding seeded state. @@ -119,20 +90,6 @@ } EXPORT_SYMBOL(prandom_bytes_state); -/** - * prandom_bytes - get the requested number of pseudo-random bytes - * @buf: where to copy the pseudo-random bytes to - * @bytes: the requested number of bytes - */ -void prandom_bytes(void *buf, size_t bytes) -{ - struct rnd_state *state = &get_cpu_var(net_rand_state); - - prandom_bytes_state(state, buf, bytes); - put_cpu_var(net_rand_state); -} -EXPORT_SYMBOL(prandom_bytes); - static void prandom_warmup(struct rnd_state *state) { /* Calling RNG ten times to satisfy recurrence condition */ @@ -148,96 +105,6 @@ prandom_u32_state(state); } -static u32 __extract_hwseed(void) -{ - unsigned int val = 0; - - (void)(arch_get_random_seed_int(&val) || - arch_get_random_int(&val)); - - return val; -} - -static void prandom_seed_early(struct rnd_state *state, u32 seed, - bool mix_with_hwseed) -{ -#define LCG(x) ((x) * 69069U) /* super-duper LCG */ -#define HWSEED() (mix_with_hwseed ? __extract_hwseed() : 0) - state->s1 = __seed(HWSEED() ^ LCG(seed), 2U); - state->s2 = __seed(HWSEED() ^ LCG(state->s1), 8U); - state->s3 = __seed(HWSEED() ^ LCG(state->s2), 16U); - state->s4 = __seed(HWSEED() ^ LCG(state->s3), 128U); -} - -/** - * prandom_seed - add entropy to pseudo random number generator - * @entropy: entropy value - * - * Add some additional entropy to the prandom pool. - */ -void prandom_seed(u32 entropy) -{ - int i; - /* - * No locking on the CPUs, but then somewhat random results are, well, - * expected. - */ - for_each_possible_cpu(i) { - struct rnd_state *state = &per_cpu(net_rand_state, i); - - state->s1 = __seed(state->s1 ^ entropy, 2U); - prandom_warmup(state); - } -} -EXPORT_SYMBOL(prandom_seed); - -/* - * Generate some initially weak seeding values to allow - * to start the prandom_u32() engine. - */ -static int __init prandom_init(void) -{ - int i; - - prandom_state_selftest(); - - for_each_possible_cpu(i) { - struct rnd_state *state = &per_cpu(net_rand_state, i); - u32 weak_seed = (i + jiffies) ^ random_get_entropy(); - - prandom_seed_early(state, weak_seed, true); - prandom_warmup(state); - } - - return 0; -} -core_initcall(prandom_init); - -static void __prandom_timer(struct timer_list *unused); - -static DEFINE_TIMER(seed_timer, __prandom_timer); - -static void __prandom_timer(struct timer_list *unused) -{ - u32 entropy; - unsigned long expires; - - get_random_bytes(&entropy, sizeof(entropy)); - prandom_seed(entropy); - - /* reseed every ~60 seconds, in [40 .. 80) interval with slack */ - expires = 40 + prandom_u32_max(40); - seed_timer.expires = jiffies + msecs_to_jiffies(expires * MSEC_PER_SEC); - - add_timer(&seed_timer); -} - -static void __init __prandom_start_seed_timer(void) -{ - seed_timer.expires = jiffies + msecs_to_jiffies(40 * MSEC_PER_SEC); - add_timer(&seed_timer); -} - void prandom_seed_full_state(struct rnd_state __percpu *pcpu_state) { int i; @@ -257,51 +124,6 @@ } EXPORT_SYMBOL(prandom_seed_full_state); -/* - * Generate better values after random number generator - * is fully initialized. - */ -static void __prandom_reseed(bool late) -{ - unsigned long flags; - static bool latch = false; - static DEFINE_SPINLOCK(lock); - - /* Asking for random bytes might result in bytes getting - * moved into the nonblocking pool and thus marking it - * as initialized. In this case we would double back into - * this function and attempt to do a late reseed. - * Ignore the pointless attempt to reseed again if we're - * already waiting for bytes when the nonblocking pool - * got initialized. - */ - - /* only allow initial seeding (late == false) once */ - if (!spin_trylock_irqsave(&lock, flags)) - return; - - if (latch && !late) - goto out; - - latch = true; - prandom_seed_full_state(&net_rand_state); -out: - spin_unlock_irqrestore(&lock, flags); -} - -void prandom_reseed_late(void) -{ - __prandom_reseed(true); -} - -static int __init prandom_reseed(void) -{ - __prandom_reseed(false); - __prandom_start_seed_timer(); - return 0; -} -late_initcall(prandom_reseed); - #ifdef CONFIG_RANDOM32_SELFTEST static struct prandom_test1 { u32 seed; @@ -421,7 +243,28 @@ { 407983964U, 921U, 728767059U }, }; -static void __init prandom_state_selftest(void) +static u32 __extract_hwseed(void) +{ + unsigned int val = 0; + + (void)(arch_get_random_seed_int(&val) || + arch_get_random_int(&val)); + + return val; +} + +static void prandom_seed_early(struct rnd_state *state, u32 seed, + bool mix_with_hwseed) +{ +#define LCG(x) ((x) * 69069U) /* super-duper LCG */ +#define HWSEED() (mix_with_hwseed ? __extract_hwseed() : 0) + state->s1 = __seed(HWSEED() ^ LCG(seed), 2U); + state->s2 = __seed(HWSEED() ^ LCG(state->s1), 8U); + state->s3 = __seed(HWSEED() ^ LCG(state->s2), 16U); + state->s4 = __seed(HWSEED() ^ LCG(state->s3), 128U); +} + +static int __init prandom_state_selftest(void) { int i, j, errors = 0, runs = 0; bool error = false; @@ -461,5 +304,266 @@ pr_warn("prandom: %d/%d self tests failed\n", errors, runs); else pr_info("prandom: %d self tests passed\n", runs); + return 0; } +core_initcall(prandom_state_selftest); #endif + +/* + * The prandom_u32() implementation is now completely separate from the + * prandom_state() functions, which are retained (for now) for compatibility. + * + * Because of (ab)use in the networking code for choosing random TCP/UDP port + * numbers, which open DoS possibilities if guessable, we want something + * stronger than a standard PRNG. But the performance requirements of + * the network code do not allow robust crypto for this application. + * + * So this is a homebrew Junior Spaceman implementation, based on the + * lowest-latency trustworthy crypto primitive available, SipHash. + * (The authors of SipHash have not been consulted about this abuse of + * their work.) + * + * Standard SipHash-2-4 uses 2n+4 rounds to hash n words of input to + * one word of output. This abbreviated version uses 2 rounds per word + * of output. + */ + +struct siprand_state { + unsigned long v0; + unsigned long v1; + unsigned long v2; + unsigned long v3; +}; + +static DEFINE_PER_CPU(struct siprand_state, net_rand_state) __latent_entropy; + +/* + * This is the core CPRNG function. As "pseudorandom", this is not used + * for truly valuable things, just intended to be a PITA to guess. + * For maximum speed, we do just two SipHash rounds per word. This is + * the same rate as 4 rounds per 64 bits that SipHash normally uses, + * so hopefully it's reasonably secure. + * + * There are two changes from the official SipHash finalization: + * - We omit some constants XORed with v2 in the SipHash spec as irrelevant; + * they are there only to make the output rounds distinct from the input + * rounds, and this application has no input rounds. + * - Rather than returning v0^v1^v2^v3, return v1+v3. + * If you look at the SipHash round, the last operation on v3 is + * "v3 ^= v0", so "v0 ^ v3" just undoes that, a waste of time. + * Likewise "v1 ^= v2". (The rotate of v2 makes a difference, but + * it still cancels out half of the bits in v2 for no benefit.) + * Second, since the last combining operation was xor, continue the + * pattern of alternating xor/add for a tiny bit of extra non-linearity. + */ +static inline u32 siprand_u32(struct siprand_state *s) +{ + unsigned long v0 = s->v0, v1 = s->v1, v2 = s->v2, v3 = s->v3; + + PRND_SIPROUND(v0, v1, v2, v3); + PRND_SIPROUND(v0, v1, v2, v3); + s->v0 = v0; s->v1 = v1; s->v2 = v2; s->v3 = v3; + return v1 + v3; +} + + +/** + * prandom_u32 - pseudo random number generator + * + * A 32 bit pseudo-random number is generated using a fast + * algorithm suitable for simulation. This algorithm is NOT + * considered safe for cryptographic use. + */ +u32 prandom_u32(void) +{ + struct siprand_state *state = get_cpu_ptr(&net_rand_state); + u32 res = siprand_u32(state); + + put_cpu_ptr(&net_rand_state); + return res; +} +EXPORT_SYMBOL(prandom_u32); + +/** + * prandom_bytes - get the requested number of pseudo-random bytes + * @buf: where to copy the pseudo-random bytes to + * @bytes: the requested number of bytes + */ +void prandom_bytes(void *buf, size_t bytes) +{ + struct siprand_state *state = get_cpu_ptr(&net_rand_state); + u8 *ptr = buf; + + while (bytes >= sizeof(u32)) { + put_unaligned(siprand_u32(state), (u32 *)ptr); + ptr += sizeof(u32); + bytes -= sizeof(u32); + } + + if (bytes > 0) { + u32 rem = siprand_u32(state); + + do { + *ptr++ = (u8)rem; + rem >>= BITS_PER_BYTE; + } while (--bytes > 0); + } + put_cpu_ptr(&net_rand_state); +} +EXPORT_SYMBOL(prandom_bytes); + +/** + * prandom_seed - add entropy to pseudo random number generator + * @entropy: entropy value + * + * Add some additional seed material to the prandom pool. + * The "entropy" is actually our IP address (the only caller is + * the network code), not for unpredictability, but to ensure that + * different machines are initialized differently. + */ +void prandom_seed(u32 entropy) +{ + int i; + + add_device_randomness(&entropy, sizeof(entropy)); + + for_each_possible_cpu(i) { + struct siprand_state *state = per_cpu_ptr(&net_rand_state, i); + unsigned long v0 = state->v0, v1 = state->v1; + unsigned long v2 = state->v2, v3 = state->v3; + + do { + v3 ^= entropy; + PRND_SIPROUND(v0, v1, v2, v3); + PRND_SIPROUND(v0, v1, v2, v3); + v0 ^= entropy; + } while (unlikely(!v0 || !v1 || !v2 || !v3)); + + WRITE_ONCE(state->v0, v0); + WRITE_ONCE(state->v1, v1); + WRITE_ONCE(state->v2, v2); + WRITE_ONCE(state->v3, v3); + } +} +EXPORT_SYMBOL(prandom_seed); + +/* + * Generate some initially weak seeding values to allow + * the prandom_u32() engine to be started. + */ +static int __init prandom_init_early(void) +{ + int i; + unsigned long v0, v1, v2, v3; + + if (!arch_get_random_long(&v0)) + v0 = jiffies; + if (!arch_get_random_long(&v1)) + v1 = random_get_entropy(); + v2 = v0 ^ PRND_K0; + v3 = v1 ^ PRND_K1; + + for_each_possible_cpu(i) { + struct siprand_state *state; + + v3 ^= i; + PRND_SIPROUND(v0, v1, v2, v3); + PRND_SIPROUND(v0, v1, v2, v3); + v0 ^= i; + + state = per_cpu_ptr(&net_rand_state, i); + state->v0 = v0; state->v1 = v1; + state->v2 = v2; state->v3 = v3; + } + + return 0; +} +core_initcall(prandom_init_early); + + +/* Stronger reseeding when available, and periodically thereafter. */ +static void prandom_reseed(struct timer_list *unused); + +static DEFINE_TIMER(seed_timer, prandom_reseed); + +static void prandom_reseed(struct timer_list *unused) +{ + unsigned long expires; + int i; + + /* + * Reinitialize each CPU's PRNG with 128 bits of key. + * No locking on the CPUs, but then somewhat random results are, + * well, expected. + */ + for_each_possible_cpu(i) { + struct siprand_state *state; + unsigned long v0 = get_random_long(), v2 = v0 ^ PRND_K0; + unsigned long v1 = get_random_long(), v3 = v1 ^ PRND_K1; +#if BITS_PER_LONG == 32 + int j; + + /* + * On 32-bit machines, hash in two extra words to + * approximate 128-bit key length. Not that the hash + * has that much security, but this prevents a trivial + * 64-bit brute force. + */ + for (j = 0; j < 2; j++) { + unsigned long m = get_random_long(); + + v3 ^= m; + PRND_SIPROUND(v0, v1, v2, v3); + PRND_SIPROUND(v0, v1, v2, v3); + v0 ^= m; + } +#endif + /* + * Probably impossible in practice, but there is a + * theoretical risk that a race between this reseeding + * and the target CPU writing its state back could + * create the all-zero SipHash fixed point. + * + * To ensure that never happens, ensure the state + * we write contains no zero words. + */ + state = per_cpu_ptr(&net_rand_state, i); + WRITE_ONCE(state->v0, v0 ? v0 : -1ul); + WRITE_ONCE(state->v1, v1 ? v1 : -1ul); + WRITE_ONCE(state->v2, v2 ? v2 : -1ul); + WRITE_ONCE(state->v3, v3 ? v3 : -1ul); + } + + /* reseed every ~60 seconds, in [40 .. 80) interval with slack */ + expires = round_jiffies(jiffies + 40 * HZ + prandom_u32_max(40 * HZ)); + mod_timer(&seed_timer, expires); +} + +/* + * The random ready callback can be called from almost any interrupt. + * To avoid worrying about whether it's safe to delay that interrupt + * long enough to seed all CPUs, just schedule an immediate timer event. + */ +static void prandom_timer_start(struct random_ready_callback *unused) +{ + mod_timer(&seed_timer, jiffies); +} + +/* + * Start periodic full reseeding as soon as strong + * random numbers are available. + */ +static int __init prandom_init_late(void) +{ + static struct random_ready_callback random_ready = { + .func = prandom_timer_start + }; + int ret = add_random_ready_callback(&random_ready); + + if (ret == -EALREADY) { + prandom_timer_start(&random_ready); + ret = 0; + } + return ret; +} +late_initcall(prandom_init_late); --- linux-azure-5.8-5.8.0.orig/lib/scatterlist.c +++ linux-azure-5.8-5.8.0/lib/scatterlist.c @@ -514,7 +514,7 @@ elem_len = min_t(u64, length, PAGE_SIZE << order); page = alloc_pages(gfp, order); if (!page) { - sgl_free(sgl); + sgl_free_order(sgl, order); return NULL; } --- linux-azure-5.8-5.8.0.orig/lib/string.c +++ linux-azure-5.8-5.8.0/lib/string.c @@ -272,6 +272,30 @@ } EXPORT_SYMBOL(strscpy_pad); +/** + * stpcpy - copy a string from src to dest returning a pointer to the new end + * of dest, including src's %NUL-terminator. May overrun dest. + * @dest: pointer to end of string being copied into. Must be large enough + * to receive copy. + * @src: pointer to the beginning of string being copied from. Must not overlap + * dest. + * + * stpcpy differs from strcpy in a key way: the return value is a pointer + * to the new %NUL-terminating character in @dest. (For strcpy, the return + * value is a pointer to the start of @dest). This interface is considered + * unsafe as it doesn't perform bounds checking of the inputs. As such it's + * not recommended for usage. Instead, its definition is provided in case + * the compiler lowers other libcalls to stpcpy. + */ +char *stpcpy(char *__restrict__ dest, const char *__restrict__ src); +char *stpcpy(char *__restrict__ dest, const char *__restrict__ src) +{ + while ((*dest++ = *src++) != '\0') + /* nothing */; + return --dest; +} +EXPORT_SYMBOL(stpcpy); + #ifndef __HAVE_ARCH_STRCAT /** * strcat - Append one %NUL-terminated string to another --- linux-azure-5.8-5.8.0.orig/lib/strncpy_from_user.c +++ linux-azure-5.8-5.8.0/lib/strncpy_from_user.c @@ -34,17 +34,32 @@ goto byte_at_a_time; while (max >= sizeof(unsigned long)) { - unsigned long c, data; + unsigned long c, data, mask; /* Fall back to byte-at-a-time if we get a page fault */ unsafe_get_user(c, (unsigned long __user *)(src+res), byte_at_a_time); - *(unsigned long *)(dst+res) = c; + /* + * Note that we mask out the bytes following the NUL. This is + * important to do because string oblivious code may read past + * the NUL. For those routines, we don't want to give them + * potentially random bytes after the NUL in `src`. + * + * One example of such code is BPF map keys. BPF treats map keys + * as an opaque set of bytes. Without the post-NUL mask, any BPF + * maps keyed by strings returned from strncpy_from_user() may + * have multiple entries for semantically identical strings. + */ if (has_zero(c, &data, &constants)) { data = prep_zero_mask(c, data, &constants); data = create_zero_mask(data); + mask = zero_bytemask(data); + *(unsigned long *)(dst+res) = c & mask; return res + find_zero(data); } + + *(unsigned long *)(dst+res) = c; + res += sizeof(unsigned long); max -= sizeof(unsigned long); } --- linux-azure-5.8-5.8.0.orig/lib/syscall.c +++ linux-azure-5.8-5.8.0/lib/syscall.c @@ -7,6 +7,7 @@ static int collect_syscall(struct task_struct *target, struct syscall_info *info) { + unsigned long args[6] = { }; struct pt_regs *regs; if (!try_get_task_stack(target)) { @@ -27,8 +28,14 @@ info->data.nr = syscall_get_nr(target, regs); if (info->data.nr != -1L) - syscall_get_arguments(target, regs, - (unsigned long *)&info->data.args[0]); + syscall_get_arguments(target, regs, args); + + info->data.args[0] = args[0]; + info->data.args[1] = args[1]; + info->data.args[2] = args[2]; + info->data.args[3] = args[3]; + info->data.args[4] = args[4]; + info->data.args[5] = args[5]; put_task_stack(target); return 0; --- linux-azure-5.8-5.8.0.orig/lib/test_bpf.c +++ linux-azure-5.8-5.8.0/lib/test_bpf.c @@ -5275,31 +5275,21 @@ { /* Mainly checking JIT here. */ "BPF_MAXINSNS: Ctx heavy transformations", { }, -#if defined(CONFIG_BPF_JIT_ALWAYS_ON) && defined(CONFIG_S390) - CLASSIC | FLAG_EXPECTED_FAIL, -#else CLASSIC, -#endif { }, { { 1, SKB_VLAN_PRESENT }, { 10, SKB_VLAN_PRESENT } }, .fill_helper = bpf_fill_maxinsns6, - .expected_errcode = -ENOTSUPP, }, { /* Mainly checking JIT here. */ "BPF_MAXINSNS: Call heavy transformations", { }, -#if defined(CONFIG_BPF_JIT_ALWAYS_ON) && defined(CONFIG_S390) - CLASSIC | FLAG_NO_DATA | FLAG_EXPECTED_FAIL, -#else CLASSIC | FLAG_NO_DATA, -#endif { }, { { 1, 0 }, { 10, 0 } }, .fill_helper = bpf_fill_maxinsns7, - .expected_errcode = -ENOTSUPP, }, { /* Mainly checking JIT here. */ "BPF_MAXINSNS: Jump heavy test", @@ -5350,28 +5340,18 @@ { "BPF_MAXINSNS: exec all MSH", { }, -#if defined(CONFIG_BPF_JIT_ALWAYS_ON) && defined(CONFIG_S390) - CLASSIC | FLAG_EXPECTED_FAIL, -#else CLASSIC, -#endif { 0xfa, 0xfb, 0xfc, 0xfd, }, { { 4, 0xababab83 } }, .fill_helper = bpf_fill_maxinsns13, - .expected_errcode = -ENOTSUPP, }, { "BPF_MAXINSNS: ld_abs+get_processor_id", { }, -#if defined(CONFIG_BPF_JIT_ALWAYS_ON) && defined(CONFIG_S390) - CLASSIC | FLAG_EXPECTED_FAIL, -#else CLASSIC, -#endif { }, { { 1, 0xbee } }, .fill_helper = bpf_fill_ld_abs_get_processor_id, - .expected_errcode = -ENOTSUPP, }, /* * LD_IND / LD_ABS on fragmented SKBs --- linux-azure-5.8-5.8.0.orig/lib/test_firmware.c +++ linux-azure-5.8-5.8.0/lib/test_firmware.c @@ -26,6 +26,8 @@ #include #include +MODULE_IMPORT_NS(TEST_FIRMWARE); + #define TEST_FIRMWARE_NAME "test-firmware.bin" #define TEST_FIRMWARE_NUM_REQS 4 #define TEST_FIRMWARE_BUF_SIZE SZ_1K @@ -489,6 +491,9 @@ static DEVICE_ATTR_WO(trigger_request); #ifdef CONFIG_EFI_EMBEDDED_FIRMWARE +extern struct list_head efi_embedded_fw_list; +extern bool efi_embedded_fw_checked; + static ssize_t trigger_request_platform_store(struct device *dev, struct device_attribute *attr, const char *buf, size_t count) @@ -501,6 +506,7 @@ }; struct efi_embedded_fw efi_embedded_fw; const struct firmware *firmware = NULL; + bool saved_efi_embedded_fw_checked; char *name; int rc; @@ -513,6 +519,8 @@ efi_embedded_fw.data = (void *)test_data; efi_embedded_fw.length = sizeof(test_data); list_add(&efi_embedded_fw.list, &efi_embedded_fw_list); + saved_efi_embedded_fw_checked = efi_embedded_fw_checked; + efi_embedded_fw_checked = true; pr_info("loading '%s'\n", name); rc = firmware_request_platform(&firmware, name, dev); @@ -530,6 +538,7 @@ rc = count; out: + efi_embedded_fw_checked = saved_efi_embedded_fw_checked; release_firmware(firmware); list_del(&efi_embedded_fw.list); kfree(name); --- linux-azure-5.8-5.8.0.orig/lib/test_kmod.c +++ linux-azure-5.8-5.8.0/lib/test_kmod.c @@ -745,7 +745,7 @@ break; case TEST_KMOD_FS_TYPE: kfree_const(config->test_fs); - config->test_driver = NULL; + config->test_fs = NULL; copied = config_copy_test_fs(config, test_str, strlen(test_str)); break; --- linux-azure-5.8-5.8.0.orig/lib/test_lockup.c +++ linux-azure-5.8-5.8.0/lib/test_lockup.c @@ -512,8 +512,8 @@ if (test_file_path[0]) { test_file = filp_open(test_file_path, O_RDONLY, 0); if (IS_ERR(test_file)) { - pr_err("cannot find file_path\n"); - return -EINVAL; + pr_err("failed to open %s: %ld\n", test_file_path, PTR_ERR(test_file)); + return PTR_ERR(test_file); } test_inode = file_inode(test_file); } else if (test_lock_inode || --- linux-azure-5.8-5.8.0.orig/lib/ubsan.c +++ linux-azure-5.8-5.8.0/lib/ubsan.c @@ -427,3 +427,34 @@ ubsan_epilogue(); } EXPORT_SYMBOL(__ubsan_handle_load_invalid_value); + +void __ubsan_handle_alignment_assumption(void *_data, unsigned long ptr, + unsigned long align, + unsigned long offset); +void __ubsan_handle_alignment_assumption(void *_data, unsigned long ptr, + unsigned long align, + unsigned long offset) +{ + struct alignment_assumption_data *data = _data; + unsigned long real_ptr; + + if (suppress_report(&data->location)) + return; + + ubsan_prologue(&data->location, "alignment-assumption"); + + if (offset) + pr_err("assumption of %lu byte alignment (with offset of %lu byte) for pointer of type %s failed", + align, offset, data->type->type_name); + else + pr_err("assumption of %lu byte alignment for pointer of type %s failed", + align, data->type->type_name); + + real_ptr = ptr - offset; + pr_err("%saddress is %lu aligned, misalignment offset is %lu bytes", + offset ? "offset " : "", BIT(real_ptr ? __ffs(real_ptr) : 0), + real_ptr & (align - 1)); + + ubsan_epilogue(); +} +EXPORT_SYMBOL(__ubsan_handle_alignment_assumption); --- linux-azure-5.8-5.8.0.orig/lib/ubsan.h +++ linux-azure-5.8-5.8.0/lib/ubsan.h @@ -78,6 +78,12 @@ struct type_descriptor *type; }; +struct alignment_assumption_data { + struct source_location location; + struct source_location assumption_location; + struct type_descriptor *type; +}; + #if defined(CONFIG_ARCH_SUPPORTS_INT128) typedef __int128 s_max; typedef unsigned __int128 u_max; --- linux-azure-5.8-5.8.0.orig/lib/vsprintf.c +++ linux-azure-5.8-5.8.0/lib/vsprintf.c @@ -2092,6 +2092,29 @@ return widen_string(buf, buf - buf_start, end, spec); } +#ifdef CONFIG_KMSG_IDS + +unsigned long long __jhash_string(const char *str); + +static noinline_for_stack +char *jhash_string(char *buf, char *end, const char *str, const char *fmt) +{ + struct printf_spec spec; + unsigned long long num; + + num = __jhash_string(str); + + spec.type = FORMAT_TYPE_PTR; + spec.field_width = 6; + spec.flags = SMALL | ZEROPAD; + spec.base = 16; + spec.precision = -1; + + return number(buf, end, num, spec); +} + +#endif + /* * Show a '%p' thing. A kernel extension is that the '%p' is followed * by an extra set of alphanumeric characters that are extended format @@ -2201,6 +2224,7 @@ * Without an option prints the full name of the node * f full name * P node name, including a possible unit address + * - 'j' Kernel message catalog jhash for System z * - 'x' For printing the address. Equivalent to "%lx". * - '[ku]s' For a BPF/tracing related format specifier, e.g. used out of * bpf_trace_printk() where [ku] prefix specifies either kernel (k) @@ -2297,6 +2321,10 @@ default: return error_string(buf, end, "(einval)", spec); } +#ifdef CONFIG_KMSG_IDS + case 'j': + return jhash_string(buf, end, ptr, fmt); +#endif } /* default is to _not_ leak addresses, hash before printing */ --- linux-azure-5.8-5.8.0.orig/lib/zlib_dfltcc/Makefile +++ linux-azure-5.8-5.8.0/lib/zlib_dfltcc/Makefile @@ -8,4 +8,4 @@ obj-$(CONFIG_ZLIB_DFLTCC) += zlib_dfltcc.o -zlib_dfltcc-objs := dfltcc.o dfltcc_deflate.o dfltcc_inflate.o dfltcc_syms.o +zlib_dfltcc-objs := dfltcc.o dfltcc_deflate.o dfltcc_inflate.o --- linux-azure-5.8-5.8.0.orig/lib/zlib_dfltcc/dfltcc.c +++ linux-azure-5.8-5.8.0/lib/zlib_dfltcc/dfltcc.c @@ -1,7 +1,8 @@ // SPDX-License-Identifier: Zlib /* dfltcc.c - SystemZ DEFLATE CONVERSION CALL support. */ -#include +#include +#include #include "dfltcc_util.h" #include "dfltcc.h" @@ -53,3 +54,6 @@ dfltcc_state->dht_threshold = DFLTCC_DHT_MIN_SAMPLE_SIZE; dfltcc_state->param.ribm = DFLTCC_RIBM; } +EXPORT_SYMBOL(dfltcc_reset); + +MODULE_LICENSE("GPL"); --- linux-azure-5.8-5.8.0.orig/lib/zlib_dfltcc/dfltcc_deflate.c +++ linux-azure-5.8-5.8.0/lib/zlib_dfltcc/dfltcc_deflate.c @@ -4,6 +4,7 @@ #include "dfltcc_util.h" #include "dfltcc.h" #include +#include #include /* @@ -34,6 +35,7 @@ return 1; } +EXPORT_SYMBOL(dfltcc_can_deflate); static void dfltcc_gdht( z_streamp strm @@ -277,3 +279,4 @@ goto again; /* deflate() must use all input or all output */ return 1; } +EXPORT_SYMBOL(dfltcc_deflate); --- linux-azure-5.8-5.8.0.orig/lib/zlib_dfltcc/dfltcc_inflate.c +++ linux-azure-5.8-5.8.0/lib/zlib_dfltcc/dfltcc_inflate.c @@ -4,6 +4,7 @@ #include "dfltcc_util.h" #include "dfltcc.h" #include +#include #include /* @@ -29,6 +30,7 @@ return is_bit_set(dfltcc_state->af.fns, DFLTCC_XPND) && is_bit_set(dfltcc_state->af.fmts, DFLTCC_FMT0); } +EXPORT_SYMBOL(dfltcc_can_inflate); static int dfltcc_was_inflate_used( z_streamp strm @@ -123,7 +125,7 @@ param->ho = (state->write - state->whave) & ((1 << HB_BITS) - 1); if (param->hl) param->nt = 0; /* Honor history for the first block */ - param->cv = state->flags ? REVERSE(state->check) : state->check; + param->cv = state->check; /* Inflate */ do { @@ -136,7 +138,7 @@ state->bits = param->sbb; state->whave = param->hl; state->write = (param->ho + param->hl) & ((1 << HB_BITS) - 1); - state->check = state->flags ? REVERSE(param->cv) : param->cv; + state->check = param->cv; if (cc == DFLTCC_CC_OP2_CORRUPT && param->oesc != 0) { /* Report an error if stream is corrupted */ state->mode = BAD; @@ -147,3 +149,4 @@ return (cc == DFLTCC_CC_OP1_TOO_SHORT || cc == DFLTCC_CC_OP2_TOO_SHORT) ? DFLTCC_INFLATE_BREAK : DFLTCC_INFLATE_CONTINUE; } +EXPORT_SYMBOL(dfltcc_inflate); --- linux-azure-5.8-5.8.0.orig/mm/Kconfig +++ linux-azure-5.8-5.8.0/mm/Kconfig @@ -710,19 +710,6 @@ returned by an alloc(). This handle must be mapped in order to access the allocated space. -config ZSMALLOC_PGTABLE_MAPPING - bool "Use page table mapping to access object in zsmalloc" - depends on ZSMALLOC=y - help - By default, zsmalloc uses a copy-based object mapping method to - access allocations that span two pages. However, if a particular - architecture (ex, ARM) performs VM mapping faster than copying, - then you should select this. This causes zsmalloc to use page table - mapping rather than copying for object mapping. - - You can check speed with zsmalloc benchmark: - https://github.com/spartacus06/zsmapbench - config ZSMALLOC_STAT bool "Export zsmalloc statistics" depends on ZSMALLOC --- linux-azure-5.8-5.8.0.orig/mm/Makefile +++ linux-azure-5.8-5.8.0/mm/Makefile @@ -52,7 +52,7 @@ mm_init.o percpu.o slab_common.o \ compaction.o vmacache.o \ interval_tree.o list_lru.o workingset.o \ - debug.o gup.o $(mmu-y) + prfile.o debug.o gup.o $(mmu-y) # Give 'page_alloc' its own module-parameter namespace page-alloc-y := page_alloc.o --- linux-azure-5.8-5.8.0.orig/mm/cma.c +++ linux-azure-5.8-5.8.0/mm/cma.c @@ -93,17 +93,15 @@ mutex_unlock(&cma->lock); } -static int __init cma_activate_area(struct cma *cma) +static void __init cma_activate_area(struct cma *cma) { unsigned long base_pfn = cma->base_pfn, pfn = base_pfn; unsigned i = cma->count >> pageblock_order; struct zone *zone; cma->bitmap = bitmap_zalloc(cma_bitmap_maxno(cma), GFP_KERNEL); - if (!cma->bitmap) { - cma->count = 0; - return -ENOMEM; - } + if (!cma->bitmap) + goto out_error; WARN_ON_ONCE(!pfn_valid(pfn)); zone = page_zone(pfn_to_page(pfn)); @@ -133,25 +131,22 @@ spin_lock_init(&cma->mem_head_lock); #endif - return 0; + return; not_in_zone: - pr_err("CMA area %s could not be activated\n", cma->name); bitmap_free(cma->bitmap); +out_error: cma->count = 0; - return -EINVAL; + pr_err("CMA area %s could not be activated\n", cma->name); + return; } static int __init cma_init_reserved_areas(void) { int i; - for (i = 0; i < cma_area_count; i++) { - int ret = cma_activate_area(&cma_areas[i]); - - if (ret) - return ret; - } + for (i = 0; i < cma_area_count; i++) + cma_activate_area(&cma_areas[i]); return 0; } @@ -491,7 +486,7 @@ page_kasan_tag_reset(page + i); } - if (ret && !no_warn) { + if (ret && !no_warn && printk_ratelimit()) { pr_err("%s: alloc failed, req-size: %zu pages, ret: %d\n", __func__, count, ret); cma_debug_show_areas(cma); --- linux-azure-5.8-5.8.0.orig/mm/compaction.c +++ linux-azure-5.8-5.8.0/mm/compaction.c @@ -800,6 +800,10 @@ * delay for some time until fewer pages are isolated */ while (unlikely(too_many_isolated(pgdat))) { + /* stop isolation if there are still pages not migrated */ + if (cc->nr_migratepages) + return 0; + /* async migration should just abort */ if (cc->mode == MIGRATE_ASYNC) return 0; @@ -995,8 +999,8 @@ isolate_success: list_add(&page->lru, &cc->migratepages); - cc->nr_migratepages++; - nr_isolated++; + cc->nr_migratepages += compound_nr(page); + nr_isolated += compound_nr(page); /* * Avoid isolating too much unless this block is being @@ -1004,7 +1008,7 @@ * or a lock is contended. For contention, isolate quickly to * potentially remove one source of contention. */ - if (cc->nr_migratepages == COMPACT_CLUSTER_MAX && + if (cc->nr_migratepages >= COMPACT_CLUSTER_MAX && !cc->rescan && !cc->contended) { ++low_pfn; break; @@ -1115,7 +1119,7 @@ if (!pfn) break; - if (cc->nr_migratepages == COMPACT_CLUSTER_MAX) + if (cc->nr_migratepages >= COMPACT_CLUSTER_MAX) break; } @@ -1227,7 +1231,7 @@ fast_isolate_around(struct compact_control *cc, unsigned long pfn, unsigned long nr_isolated) { unsigned long start_pfn, end_pfn; - struct page *page = pfn_to_page(pfn); + struct page *page; /* Do not search around if there are enough pages already */ if (cc->nr_freepages >= cc->nr_migratepages) @@ -1238,8 +1242,12 @@ return; /* Pageblock boundaries */ - start_pfn = pageblock_start_pfn(pfn); - end_pfn = min(pageblock_end_pfn(pfn), zone_end_pfn(cc->zone)) - 1; + start_pfn = max(pageblock_start_pfn(pfn), cc->zone->zone_start_pfn); + end_pfn = min(pageblock_end_pfn(pfn), zone_end_pfn(cc->zone)); + + page = pageblock_pfn_to_page(start_pfn, end_pfn, cc->zone); + if (!page) + return; /* Scan before */ if (start_pfn != pfn) { @@ -1281,7 +1289,7 @@ { unsigned int limit = min(1U, freelist_scan_limit(cc) >> 1); unsigned int nr_scanned = 0; - unsigned long low_pfn, min_pfn, high_pfn = 0, highest = 0; + unsigned long low_pfn, min_pfn, highest = 0; unsigned long nr_isolated = 0; unsigned long distance; struct page *page = NULL; @@ -1326,6 +1334,7 @@ struct page *freepage; unsigned long flags; unsigned int order_scanned = 0; + unsigned long high_pfn = 0; if (!area->nr_free) continue; @@ -1340,7 +1349,8 @@ pfn = page_to_pfn(freepage); if (pfn >= highest) - highest = pageblock_start_pfn(pfn); + highest = max(pageblock_start_pfn(pfn), + cc->zone->zone_start_pfn); if (pfn >= low_pfn) { cc->fast_search_fail = 0; @@ -1410,7 +1420,8 @@ } else { if (cc->direct_compaction && pfn_valid(min_pfn)) { page = pageblock_pfn_to_page(min_pfn, - pageblock_end_pfn(min_pfn), + min(pageblock_end_pfn(min_pfn), + zone_end_pfn(cc->zone)), cc->zone); cc->free_pfn = min_pfn; } @@ -1640,6 +1651,7 @@ unsigned long pfn = cc->migrate_pfn; unsigned long high_pfn; int order; + bool found_block = false; /* Skip hints are relied on to avoid repeats on the fast search */ if (cc->ignore_skip_hint) @@ -1682,7 +1694,7 @@ high_pfn = pageblock_start_pfn(cc->migrate_pfn + distance); for (order = cc->order - 1; - order >= PAGE_ALLOC_COSTLY_ORDER && pfn == cc->migrate_pfn && nr_scanned < limit; + order >= PAGE_ALLOC_COSTLY_ORDER && !found_block && nr_scanned < limit; order--) { struct free_area *area = &cc->zone->free_area[order]; struct list_head *freelist; @@ -1697,7 +1709,11 @@ list_for_each_entry(freepage, freelist, lru) { unsigned long free_pfn; - nr_scanned++; + if (nr_scanned++ >= limit) { + move_freelist_tail(freelist, freepage); + break; + } + free_pfn = page_to_pfn(freepage); if (free_pfn < high_pfn) { /* @@ -1706,12 +1722,8 @@ * the list assumes an entry is deleted, not * reordered. */ - if (get_pageblock_skip(freepage)) { - if (list_is_last(freelist, &freepage->lru)) - break; - + if (get_pageblock_skip(freepage)) continue; - } /* Reorder to so a future search skips recent pages */ move_freelist_tail(freelist, freepage); @@ -1719,15 +1731,10 @@ update_fast_start_pfn(cc, free_pfn); pfn = pageblock_start_pfn(free_pfn); cc->fast_search_fail = 0; + found_block = true; set_pageblock_skip(freepage); break; } - - if (nr_scanned >= limit) { - cc->fast_search_fail++; - move_freelist_tail(freelist, freepage); - break; - } } spin_unlock_irqrestore(&cc->zone->lock, flags); } @@ -1738,9 +1745,10 @@ * If fast scanning failed then use a cached entry for a page block * that had free pages as the basis for starting a linear scan. */ - if (pfn == cc->migrate_pfn) + if (!found_block) { + cc->fast_search_fail++; pfn = reinit_migrate_pfn(cc); - + } return pfn; } --- linux-azure-5.8-5.8.0.orig/mm/filemap.c +++ linux-azure-5.8-5.8.0/mm/filemap.c @@ -826,15 +826,16 @@ } EXPORT_SYMBOL_GPL(replace_page_cache_page); -static int __add_to_page_cache_locked(struct page *page, - struct address_space *mapping, - pgoff_t offset, gfp_t gfp_mask, - void **shadowp) +noinline int __add_to_page_cache_locked(struct page *page, + struct address_space *mapping, + pgoff_t offset, gfp_t gfp_mask, + void **shadowp) { XA_STATE(xas, &mapping->i_pages, offset); int huge = PageHuge(page); int error; void *old; + bool charged = false; VM_BUG_ON_PAGE(!PageLocked(page), page); VM_BUG_ON_PAGE(PageSwapBacked(page), page); @@ -848,6 +849,7 @@ error = mem_cgroup_charge(page, current->mm, gfp_mask); if (error) goto error; + charged = true; } do { @@ -875,6 +877,8 @@ if (xas_error(&xas)) { error = xas_error(&xas); + if (charged) + mem_cgroup_uncharge(page); goto error; } @@ -1311,11 +1315,19 @@ rotate_reclaimable_page(page); } + /* + * Writeback does not hold a page reference of its own, relying + * on truncation to wait for the clearing of PG_writeback. + * But here we must make sure that the page is not freed and + * reused before the wake_up_page(). + */ + get_page(page); if (!test_clear_page_writeback(page)) BUG(); smp_mb__after_atomic(); wake_up_page(page, PG_writeback); + put_page(page); } EXPORT_SYMBOL(end_page_writeback); @@ -2676,7 +2688,7 @@ vm_fault_t ret = VM_FAULT_LOCKED; sb_start_pagefault(inode->i_sb); - file_update_time(vmf->vma->vm_file); + vma_file_update_time(vmf->vma); lock_page(page); if (page->mapping != inode->i_mapping) { unlock_page(page); --- linux-azure-5.8-5.8.0.orig/mm/gup.c +++ linux-azure-5.8-5.8.0/mm/gup.c @@ -123,6 +123,28 @@ return NULL; } +static void put_compound_head(struct page *page, int refs, unsigned int flags) +{ + if (flags & FOLL_PIN) { + mod_node_page_state(page_pgdat(page), NR_FOLL_PIN_RELEASED, + refs); + + if (hpage_pincount_available(page)) + hpage_pincount_sub(page, refs); + else + refs *= GUP_PIN_COUNTING_BIAS; + } + + VM_BUG_ON_PAGE(page_ref_count(page) < refs, page); + /* + * Calling put_page() for each ref is unnecessarily slow. Only the last + * ref needs a put_page(). + */ + if (refs > 1) + page_ref_sub(page, refs - 1); + put_page(page); +} + /** * try_grab_page() - elevate a page's refcount by a flag-dependent amount * @@ -177,41 +199,6 @@ return true; } -#ifdef CONFIG_DEV_PAGEMAP_OPS -static bool __unpin_devmap_managed_user_page(struct page *page) -{ - int count, refs = 1; - - if (!page_is_devmap_managed(page)) - return false; - - if (hpage_pincount_available(page)) - hpage_pincount_sub(page, 1); - else - refs = GUP_PIN_COUNTING_BIAS; - - count = page_ref_sub_return(page, refs); - - mod_node_page_state(page_pgdat(page), NR_FOLL_PIN_RELEASED, 1); - /* - * devmap page refcounts are 1-based, rather than 0-based: if - * refcount is 1, then the page is free and the refcount is - * stable because nobody holds a reference on the page. - */ - if (count == 1) - free_devmap_managed_page(page); - else if (!count) - __put_page(page); - - return true; -} -#else -static bool __unpin_devmap_managed_user_page(struct page *page) -{ - return false; -} -#endif /* CONFIG_DEV_PAGEMAP_OPS */ - /** * unpin_user_page() - release a dma-pinned page * @page: pointer to page to be released @@ -223,28 +210,7 @@ */ void unpin_user_page(struct page *page) { - int refs = 1; - - page = compound_head(page); - - /* - * For devmap managed pages we need to catch refcount transition from - * GUP_PIN_COUNTING_BIAS to 1, when refcount reach one it means the - * page is free and we need to inform the device driver through - * callback. See include/linux/memremap.h and HMM for details. - */ - if (__unpin_devmap_managed_user_page(page)) - return; - - if (hpage_pincount_available(page)) - hpage_pincount_sub(page, 1); - else - refs = GUP_PIN_COUNTING_BIAS; - - if (page_ref_sub_and_test(page, refs)) - __put_page(page); - - mod_node_page_state(page_pgdat(page), NR_FOLL_PIN_RELEASED, 1); + put_compound_head(compound_head(page), 1, FOLL_PIN); } EXPORT_SYMBOL(unpin_user_page); @@ -843,7 +809,7 @@ goto unmap; *page = pte_page(*pte); } - if (unlikely(!try_get_page(*page))) { + if (unlikely(!try_grab_page(*page, gup_flags))) { ret = -ENOMEM; goto unmap; } @@ -1715,8 +1681,11 @@ /* * drop the above get_user_pages reference. */ - for (i = 0; i < nr_pages; i++) - put_page(pages[i]); + if (gup_flags & FOLL_PIN) + unpin_user_pages(pages, nr_pages); + else + for (i = 0; i < nr_pages; i++) + put_page(pages[i]); if (migrate_pages(&cma_page_list, new_non_cma_page, NULL, 0, MIGRATE_SYNC, MR_CONTIG_RANGE)) { @@ -1799,8 +1768,11 @@ goto out; if (check_dax_vmas(vmas_tmp, rc)) { - for (i = 0; i < rc; i++) - put_page(pages[i]); + if (gup_flags & FOLL_PIN) + unpin_user_pages(pages, rc); + else + for (i = 0; i < rc; i++) + put_page(pages[i]); rc = -EOPNOTSUPP; goto out; } @@ -2121,29 +2093,6 @@ * This code is based heavily on the PowerPC implementation by Nick Piggin. */ #ifdef CONFIG_HAVE_FAST_GUP - -static void put_compound_head(struct page *page, int refs, unsigned int flags) -{ - if (flags & FOLL_PIN) { - mod_node_page_state(page_pgdat(page), NR_FOLL_PIN_RELEASED, - refs); - - if (hpage_pincount_available(page)) - hpage_pincount_sub(page, refs); - else - refs *= GUP_PIN_COUNTING_BIAS; - } - - VM_BUG_ON_PAGE(page_ref_count(page) < refs, page); - /* - * Calling put_page() for each ref is unnecessarily slow. Only the last - * ref needs a put_page(). - */ - if (refs > 1) - page_ref_sub(page, refs - 1); - put_page(page); -} - #ifdef CONFIG_GUP_GET_PTE_LOW_HIGH /* @@ -2574,13 +2523,13 @@ return 1; } -static int gup_pmd_range(pud_t pud, unsigned long addr, unsigned long end, +static int gup_pmd_range(pud_t *pudp, pud_t pud, unsigned long addr, unsigned long end, unsigned int flags, struct page **pages, int *nr) { unsigned long next; pmd_t *pmdp; - pmdp = pmd_offset(&pud, addr); + pmdp = pmd_offset_lockless(pudp, pud, addr); do { pmd_t pmd = READ_ONCE(*pmdp); @@ -2617,13 +2566,13 @@ return 1; } -static int gup_pud_range(p4d_t p4d, unsigned long addr, unsigned long end, +static int gup_pud_range(p4d_t *p4dp, p4d_t p4d, unsigned long addr, unsigned long end, unsigned int flags, struct page **pages, int *nr) { unsigned long next; pud_t *pudp; - pudp = pud_offset(&p4d, addr); + pudp = pud_offset_lockless(p4dp, p4d, addr); do { pud_t pud = READ_ONCE(*pudp); @@ -2638,20 +2587,20 @@ if (!gup_huge_pd(__hugepd(pud_val(pud)), addr, PUD_SHIFT, next, flags, pages, nr)) return 0; - } else if (!gup_pmd_range(pud, addr, next, flags, pages, nr)) + } else if (!gup_pmd_range(pudp, pud, addr, next, flags, pages, nr)) return 0; } while (pudp++, addr = next, addr != end); return 1; } -static int gup_p4d_range(pgd_t pgd, unsigned long addr, unsigned long end, +static int gup_p4d_range(pgd_t *pgdp, pgd_t pgd, unsigned long addr, unsigned long end, unsigned int flags, struct page **pages, int *nr) { unsigned long next; p4d_t *p4dp; - p4dp = p4d_offset(&pgd, addr); + p4dp = p4d_offset_lockless(pgdp, pgd, addr); do { p4d_t p4d = READ_ONCE(*p4dp); @@ -2663,7 +2612,7 @@ if (!gup_huge_pd(__hugepd(p4d_val(p4d)), addr, P4D_SHIFT, next, flags, pages, nr)) return 0; - } else if (!gup_pud_range(p4d, addr, next, flags, pages, nr)) + } else if (!gup_pud_range(p4dp, p4d, addr, next, flags, pages, nr)) return 0; } while (p4dp++, addr = next, addr != end); @@ -2691,7 +2640,7 @@ if (!gup_huge_pd(__hugepd(pgd_val(pgd)), addr, PGDIR_SHIFT, next, flags, pages, nr)) return; - } else if (!gup_p4d_range(pgd, addr, next, flags, pages, nr)) + } else if (!gup_p4d_range(pgdp, pgd, addr, next, flags, pages, nr)) return; } while (pgdp++, addr = next, addr != end); } --- linux-azure-5.8-5.8.0.orig/mm/huge_memory.c +++ linux-azure-5.8-5.8.0/mm/huge_memory.c @@ -731,7 +731,6 @@ transparent_hugepage_use_zero_page()) { pgtable_t pgtable; struct page *zero_page; - bool set; vm_fault_t ret; pgtable = pte_alloc_one(vma->vm_mm); if (unlikely(!pgtable)) @@ -744,25 +743,25 @@ } vmf->ptl = pmd_lock(vma->vm_mm, vmf->pmd); ret = 0; - set = false; if (pmd_none(*vmf->pmd)) { ret = check_stable_address_space(vma->vm_mm); if (ret) { spin_unlock(vmf->ptl); + pte_free(vma->vm_mm, pgtable); } else if (userfaultfd_missing(vma)) { spin_unlock(vmf->ptl); + pte_free(vma->vm_mm, pgtable); ret = handle_userfault(vmf, VM_UFFD_MISSING); VM_BUG_ON(ret & VM_FAULT_FALLBACK); } else { set_huge_zero_page(pgtable, vma->vm_mm, vma, haddr, vmf->pmd, zero_page); spin_unlock(vmf->ptl); - set = true; } - } else + } else { spin_unlock(vmf->ptl); - if (!set) pte_free(vma->vm_mm, pgtable); + } return ret; } gfp = alloc_hugepage_direct_gfpmask(vma); @@ -2048,7 +2047,7 @@ put_page(page); add_mm_counter(mm, mm_counter_file(page), -HPAGE_PMD_NR); return; - } else if (is_huge_zero_pmd(*pmd)) { + } else if (pmd_trans_huge(*pmd) && is_huge_zero_pmd(*pmd)) { /* * FIXME: Do we want to invalidate secondary mmu by calling * mmu_notifier_invalidate_range() see comments below inside @@ -2142,30 +2141,34 @@ pte = pte_offset_map(&_pmd, addr); BUG_ON(!pte_none(*pte)); set_pte_at(mm, addr, pte, entry); - atomic_inc(&page[i]._mapcount); - pte_unmap(pte); - } - - /* - * Set PG_double_map before dropping compound_mapcount to avoid - * false-negative page_mapped(). - */ - if (compound_mapcount(page) > 1 && !TestSetPageDoubleMap(page)) { - for (i = 0; i < HPAGE_PMD_NR; i++) + if (!pmd_migration) atomic_inc(&page[i]._mapcount); + pte_unmap(pte); } - lock_page_memcg(page); - if (atomic_add_negative(-1, compound_mapcount_ptr(page))) { - /* Last compound_mapcount is gone. */ - __dec_lruvec_page_state(page, NR_ANON_THPS); - if (TestClearPageDoubleMap(page)) { - /* No need in mapcount reference anymore */ + if (!pmd_migration) { + /* + * Set PG_double_map before dropping compound_mapcount to avoid + * false-negative page_mapped(). + */ + if (compound_mapcount(page) > 1 && + !TestSetPageDoubleMap(page)) { for (i = 0; i < HPAGE_PMD_NR; i++) - atomic_dec(&page[i]._mapcount); + atomic_inc(&page[i]._mapcount); + } + + lock_page_memcg(page); + if (atomic_add_negative(-1, compound_mapcount_ptr(page))) { + /* Last compound_mapcount is gone. */ + __dec_lruvec_page_state(page, NR_ANON_THPS); + if (TestClearPageDoubleMap(page)) { + /* No need in mapcount reference anymore */ + for (i = 0; i < HPAGE_PMD_NR; i++) + atomic_dec(&page[i]._mapcount); + } } + unlock_page_memcg(page); } - unlock_page_memcg(page); smp_wmb(); /* make pte visible before pmd */ pmd_populate(mm, pmd, pgtable); @@ -2183,7 +2186,7 @@ { spinlock_t *ptl; struct mmu_notifier_range range; - bool was_locked = false; + bool do_unlock_page = false; pmd_t _pmd; mmu_notifier_range_init(&range, MMU_NOTIFY_CLEAR, 0, vma, vma->vm_mm, @@ -2199,7 +2202,6 @@ VM_BUG_ON(freeze && !page); if (page) { VM_WARN_ON_ONCE(!PageLocked(page)); - was_locked = true; if (page != pmd_page(*pmd)) goto out; } @@ -2208,19 +2210,29 @@ if (pmd_trans_huge(*pmd)) { if (!page) { page = pmd_page(*pmd); - if (unlikely(!trylock_page(page))) { - get_page(page); - _pmd = *pmd; - spin_unlock(ptl); - lock_page(page); - spin_lock(ptl); - if (unlikely(!pmd_same(*pmd, _pmd))) { - unlock_page(page); + /* + * An anonymous page must be locked, to ensure that a + * concurrent reuse_swap_page() sees stable mapcount; + * but reuse_swap_page() is not used on shmem or file, + * and page lock must not be taken when zap_pmd_range() + * calls __split_huge_pmd() while i_mmap_lock is held. + */ + if (PageAnon(page)) { + if (unlikely(!trylock_page(page))) { + get_page(page); + _pmd = *pmd; + spin_unlock(ptl); + lock_page(page); + spin_lock(ptl); + if (unlikely(!pmd_same(*pmd, _pmd))) { + unlock_page(page); + put_page(page); + page = NULL; + goto repeat; + } put_page(page); - page = NULL; - goto repeat; } - put_page(page); + do_unlock_page = true; } } if (PageMlocked(page)) @@ -2230,7 +2242,7 @@ __split_huge_pmd_locked(vma, pmd, range.start, freeze); out: spin_unlock(ptl); - if (!was_locked && page) + if (do_unlock_page) unlock_page(page); /* * No need to double call mmu_notifier->invalidate_range() callback. @@ -2316,7 +2328,7 @@ static void unmap_page(struct page *page) { - enum ttu_flags ttu_flags = TTU_IGNORE_MLOCK | TTU_IGNORE_ACCESS | + enum ttu_flags ttu_flags = TTU_IGNORE_MLOCK | TTU_RMAP_LOCKED | TTU_SPLIT_HUGE_PMD; bool unmap_success; @@ -2445,7 +2457,7 @@ ClearPageCompound(head); - split_page_owner(head, HPAGE_PMD_ORDER); + split_page_owner(head, HPAGE_PMD_NR); /* See comment in __split_huge_page_tail() */ if (PageAnon(head)) { --- linux-azure-5.8-5.8.0.orig/mm/hugetlb.c +++ linux-azure-5.8-5.8.0/mm/hugetlb.c @@ -77,6 +77,21 @@ static int num_fault_mutexes; struct mutex *hugetlb_fault_mutex_table ____cacheline_aligned_in_smp; +static inline bool PageHugeFreed(struct page *head) +{ + return page_private(head + 4) == -1UL; +} + +static inline void SetPageHugeFreed(struct page *head) +{ + set_page_private(head + 4, -1UL); +} + +static inline void ClearPageHugeFreed(struct page *head) +{ + set_page_private(head + 4, 0); +} + /* Forward declaration */ static int hugetlb_acct_memory(struct hstate *h, long delta); @@ -653,6 +668,8 @@ } del += t - f; + hugetlb_cgroup_uncharge_file_region( + resv, rg, t - f); /* New entry for end of split region */ nrg->from = t; @@ -665,9 +682,6 @@ /* Original entry is trimmed */ rg->to = f; - hugetlb_cgroup_uncharge_file_region( - resv, rg, nrg->to - nrg->from); - list_add(&nrg->link, &rg->link); nrg = NULL; break; @@ -683,17 +697,17 @@ } if (f <= rg->from) { /* Trim beginning of region */ - del += t - rg->from; - rg->from = t; - hugetlb_cgroup_uncharge_file_region(resv, rg, t - rg->from); - } else { /* Trim end of region */ - del += rg->to - f; - rg->to = f; + del += t - rg->from; + rg->from = t; + } else { /* Trim end of region */ hugetlb_cgroup_uncharge_file_region(resv, rg, rg->to - f); + + del += rg->to - f; + rg->to = f; } } @@ -1034,6 +1048,7 @@ list_move(&page->lru, &h->hugepage_freelists[nid]); h->free_huge_pages++; h->free_huge_pages_node[nid]++; + SetPageHugeFreed(page); } static struct page *dequeue_huge_page_node_exact(struct hstate *h, int nid) @@ -1051,6 +1066,7 @@ return NULL; list_move(&page->lru, &h->hugepage_activelist); set_page_refcounted(page); + ClearPageHugeFreed(page); h->free_huge_pages--; h->free_huge_pages_node[nid]--; return page; @@ -1251,21 +1267,32 @@ int nid, nodemask_t *nodemask) { unsigned long nr_pages = 1UL << huge_page_order(h); + if (nid == NUMA_NO_NODE) + nid = numa_mem_id(); #ifdef CONFIG_CMA { struct page *page; int node; - for_each_node_mask(node, *nodemask) { - if (!hugetlb_cma[node]) - continue; - - page = cma_alloc(hugetlb_cma[node], nr_pages, - huge_page_order(h), true); + if (hugetlb_cma[nid]) { + page = cma_alloc(hugetlb_cma[nid], nr_pages, + huge_page_order(h), true); if (page) return page; } + + if (!(gfp_mask & __GFP_THISNODE)) { + for_each_node_mask(node, *nodemask) { + if (node == nid || !hugetlb_cma[node]) + continue; + + page = cma_alloc(hugetlb_cma[node], nr_pages, + huge_page_order(h), true); + if (page) + return page; + } + } } #endif @@ -1296,14 +1323,16 @@ static void update_and_free_page(struct hstate *h, struct page *page) { int i; + struct page *subpage = page; if (hstate_is_gigantic(h) && !gigantic_page_runtime_supported()) return; h->nr_huge_pages--; h->nr_huge_pages_node[page_to_nid(page)]--; - for (i = 0; i < pages_per_huge_page(h); i++) { - page[i].flags &= ~(1 << PG_locked | 1 << PG_error | + for (i = 0; i < pages_per_huge_page(h); + i++, subpage = mem_map_next(subpage, page, i)) { + subpage->flags &= ~(1 << PG_locked | 1 << PG_error | 1 << PG_referenced | 1 << PG_dirty | 1 << PG_active | 1 << PG_private | 1 << PG_writeback); @@ -1345,12 +1374,11 @@ */ bool page_huge_active(struct page *page) { - VM_BUG_ON_PAGE(!PageHuge(page), page); - return PageHead(page) && PagePrivate(&page[1]); + return PageHeadHuge(page) && PagePrivate(&page[1]); } /* never called for tail page */ -static void set_page_huge_active(struct page *page) +void set_page_huge_active(struct page *page) { VM_BUG_ON_PAGE(!PageHeadHuge(page), page); SetPagePrivate(&page[1]); @@ -1506,6 +1534,7 @@ set_hugetlb_cgroup_rsvd(page, NULL); h->nr_huge_pages++; h->nr_huge_pages_node[nid]++; + ClearPageHugeFreed(page); spin_unlock(&hugetlb_lock); } @@ -1570,103 +1599,23 @@ } /* - * Find address_space associated with hugetlbfs page. - * Upon entry page is locked and page 'was' mapped although mapped state - * could change. If necessary, use anon_vma to find vma and associated - * address space. The returned mapping may be stale, but it can not be - * invalid as page lock (which is held) is required to destroy mapping. - */ -static struct address_space *_get_hugetlb_page_mapping(struct page *hpage) -{ - struct anon_vma *anon_vma; - pgoff_t pgoff_start, pgoff_end; - struct anon_vma_chain *avc; - struct address_space *mapping = page_mapping(hpage); - - /* Simple file based mapping */ - if (mapping) - return mapping; - - /* - * Even anonymous hugetlbfs mappings are associated with an - * underlying hugetlbfs file (see hugetlb_file_setup in mmap - * code). Find a vma associated with the anonymous vma, and - * use the file pointer to get address_space. - */ - anon_vma = page_lock_anon_vma_read(hpage); - if (!anon_vma) - return mapping; /* NULL */ - - /* Use first found vma */ - pgoff_start = page_to_pgoff(hpage); - pgoff_end = pgoff_start + pages_per_huge_page(page_hstate(hpage)) - 1; - anon_vma_interval_tree_foreach(avc, &anon_vma->rb_root, - pgoff_start, pgoff_end) { - struct vm_area_struct *vma = avc->vma; - - mapping = vma->vm_file->f_mapping; - break; - } - - anon_vma_unlock_read(anon_vma); - return mapping; -} - -/* * Find and lock address space (mapping) in write mode. * - * Upon entry, the page is locked which allows us to find the mapping - * even in the case of an anon page. However, locking order dictates - * the i_mmap_rwsem be acquired BEFORE the page lock. This is hugetlbfs - * specific. So, we first try to lock the sema while still holding the - * page lock. If this works, great! If not, then we need to drop the - * page lock and then acquire i_mmap_rwsem and reacquire page lock. Of - * course, need to revalidate state along the way. + * Upon entry, the page is locked which means that page_mapping() is + * stable. Due to locking order, we can only trylock_write. If we can + * not get the lock, simply return NULL to caller. */ struct address_space *hugetlb_page_mapping_lock_write(struct page *hpage) { - struct address_space *mapping, *mapping2; + struct address_space *mapping = page_mapping(hpage); - mapping = _get_hugetlb_page_mapping(hpage); -retry: if (!mapping) return mapping; - /* - * If no contention, take lock and return - */ if (i_mmap_trylock_write(mapping)) return mapping; - /* - * Must drop page lock and wait on mapping sema. - * Note: Once page lock is dropped, mapping could become invalid. - * As a hack, increase map count until we lock page again. - */ - atomic_inc(&hpage->_mapcount); - unlock_page(hpage); - i_mmap_lock_write(mapping); - lock_page(hpage); - atomic_add_negative(-1, &hpage->_mapcount); - - /* verify page is still mapped */ - if (!page_mapped(hpage)) { - i_mmap_unlock_write(mapping); - return NULL; - } - - /* - * Get address space again and verify it is the same one - * we locked. If not, drop lock and retry. - */ - mapping2 = _get_hugetlb_page_mapping(hpage); - if (mapping2 != mapping) { - i_mmap_unlock_write(mapping); - mapping = mapping2; - goto retry; - } - - return mapping; + return NULL; } pgoff_t __basepage_index(struct page *page) @@ -1836,6 +1785,7 @@ { int rc = -EBUSY; +retry: /* Not to disrupt normal path by vainly holding hugetlb_lock */ if (!PageHuge(page)) return 0; @@ -1852,6 +1802,26 @@ int nid = page_to_nid(head); if (h->free_huge_pages - h->resv_huge_pages == 0) goto out; + + /* + * We should make sure that the page is already on the free list + * when it is dissolved. + */ + if (unlikely(!PageHugeFreed(head))) { + spin_unlock(&hugetlb_lock); + cond_resched(); + + /* + * Theoretically, we should return -EBUSY when we + * encounter this race. In fact, we have a chance + * to successfully dissolve the page if we do a + * retry. Because the race window is quite small. + * If we seize this opportunity, it is an optimization + * for increasing the success rate of dissolving page. + */ + goto retry; + } + /* * Move PageHWPoison flag from head page to the raw error page, * which makes any subpages rather than the error page reusable. @@ -2466,6 +2436,9 @@ rsv_adjust = hugepage_subpool_put_pages(spool, 1); hugetlb_acct_memory(h, -rsv_adjust); + if (deferred_reserve) + hugetlb_cgroup_uncharge_page_rsvd(hstate_index(h), + pages_per_huge_page(h), page); } return page; @@ -2579,7 +2552,7 @@ if (hstate_is_gigantic(h)) { if (hugetlb_cma_size) { pr_warn_once("HugeTLB: hugetlb_cma is enabled, skip boot time allocation\n"); - break; + goto free; } if (!alloc_bootmem_huge_page(h)) break; @@ -2597,7 +2570,7 @@ h->max_huge_pages, buf, i); h->max_huge_pages = i; } - +free: kfree(node_alloc_noretry); } @@ -3046,8 +3019,10 @@ return -ENOMEM; retval = sysfs_create_group(hstate_kobjs[hi], hstate_attr_group); - if (retval) + if (retval) { kobject_put(hstate_kobjs[hi]); + hstate_kobjs[hi] = NULL; + } return retval; } @@ -3469,6 +3444,22 @@ } #ifdef CONFIG_SYSCTL +static int proc_hugetlb_doulongvec_minmax(struct ctl_table *table, int write, + void *buffer, size_t *length, + loff_t *ppos, unsigned long *out) +{ + struct ctl_table dup_table; + + /* + * In order to avoid races with __do_proc_doulongvec_minmax(), we + * can duplicate the @table and alter the duplicate of it. + */ + dup_table = *table; + dup_table.data = out; + + return proc_doulongvec_minmax(&dup_table, write, buffer, length, ppos); +} + static int hugetlb_sysctl_handler_common(bool obey_mempolicy, struct ctl_table *table, int write, void *buffer, size_t *length, loff_t *ppos) @@ -3480,9 +3471,8 @@ if (!hugepages_supported()) return -EOPNOTSUPP; - table->data = &tmp; - table->maxlen = sizeof(unsigned long); - ret = proc_doulongvec_minmax(table, write, buffer, length, ppos); + ret = proc_hugetlb_doulongvec_minmax(table, write, buffer, length, ppos, + &tmp); if (ret) goto out; @@ -3525,9 +3515,8 @@ if (write && hstate_is_gigantic(h)) return -EINVAL; - table->data = &tmp; - table->maxlen = sizeof(unsigned long); - ret = proc_doulongvec_minmax(table, write, buffer, length, ppos); + ret = proc_hugetlb_doulongvec_minmax(table, write, buffer, length, ppos, + &tmp); if (ret) goto out; @@ -3952,7 +3941,7 @@ continue; ptl = huge_pte_lock(h, mm, ptep); - if (huge_pmd_unshare(mm, &address, ptep)) { + if (huge_pmd_unshare(mm, vma, &address, ptep)) { spin_unlock(ptl); /* * We just unmapped a page of PMDs by clearing a PUD. @@ -4176,10 +4165,30 @@ * may get SIGKILLed if it later faults. */ if (outside_reserve) { + struct address_space *mapping = vma->vm_file->f_mapping; + pgoff_t idx; + u32 hash; + put_page(old_page); BUG_ON(huge_pte_none(pte)); + /* + * Drop hugetlb_fault_mutex and i_mmap_rwsem before + * unmapping. unmapping needs to hold i_mmap_rwsem + * in write mode. Dropping i_mmap_rwsem in read mode + * here is OK as COW mappings do not interact with + * PMD sharing. + * + * Reacquire both after unmap operation. + */ + idx = vma_hugecache_offset(h, vma, haddr); + hash = hugetlb_fault_mutex_hash(mapping, idx); + mutex_unlock(&hugetlb_fault_mutex_table[hash]); + i_mmap_unlock_read(mapping); + unmap_ref_private(mm, vma, old_page, haddr); - BUG_ON(huge_pte_none(pte)); + + i_mmap_lock_read(mapping); + mutex_lock(&hugetlb_fault_mutex_table[hash]); spin_lock(ptl); ptep = huge_pte_offset(mm, haddr, huge_page_size(h)); if (likely(ptep && @@ -4422,7 +4431,7 @@ * So we need to block hugepage fault by PG_hwpoison bit check. */ if (unlikely(PageHWPoison(page))) { - ret = VM_FAULT_HWPOISON | + ret = VM_FAULT_HWPOISON_LARGE | VM_FAULT_SET_HINDEX(hstate_index(h)); goto backout_unlocked; } @@ -4539,10 +4548,6 @@ } else if (unlikely(is_hugetlb_entry_hwpoisoned(entry))) return VM_FAULT_HWPOISON_LARGE | VM_FAULT_SET_HINDEX(hstate_index(h)); - } else { - ptep = huge_pte_alloc(mm, haddr, huge_page_size(h)); - if (!ptep) - return VM_FAULT_OOM; } /* @@ -5019,7 +5024,7 @@ if (!ptep) continue; ptl = huge_pte_lock(h, mm, ptep); - if (huge_pmd_unshare(mm, &address, ptep)) { + if (huge_pmd_unshare(mm, vma, &address, ptep)) { pages++; spin_unlock(ptl); shared_pmd = true; @@ -5189,6 +5194,7 @@ if (unlikely(add < 0)) { hugetlb_acct_memory(h, -gbl_reserve); + ret = add; goto out_put_pages; } else if (unlikely(chg > add)) { /* @@ -5313,25 +5319,21 @@ void adjust_range_if_pmd_sharing_possible(struct vm_area_struct *vma, unsigned long *start, unsigned long *end) { - unsigned long check_addr; + unsigned long a_start, a_end; if (!(vma->vm_flags & VM_MAYSHARE)) return; - for (check_addr = *start; check_addr < *end; check_addr += PUD_SIZE) { - unsigned long a_start = check_addr & PUD_MASK; - unsigned long a_end = a_start + PUD_SIZE; + /* Extend the range to be PUD aligned for a worst case scenario */ + a_start = ALIGN_DOWN(*start, PUD_SIZE); + a_end = ALIGN(*end, PUD_SIZE); - /* - * If sharing is possible, adjust start/end if necessary. - */ - if (range_in_vma(vma, a_start, a_end)) { - if (a_start < *start) - *start = a_start; - if (a_end > *end) - *end = a_end; - } - } + /* + * Intersect the range with the vma range, since pmd sharing won't be + * across vma after all + */ + *start = max(vma->vm_start, a_start); + *end = min(vma->vm_end, a_end); } /* @@ -5404,12 +5406,14 @@ * returns: 1 successfully unmapped a shared pte page * 0 the underlying pte page is not shared, or it is the last user */ -int huge_pmd_unshare(struct mm_struct *mm, unsigned long *addr, pte_t *ptep) +int huge_pmd_unshare(struct mm_struct *mm, struct vm_area_struct *vma, + unsigned long *addr, pte_t *ptep) { pgd_t *pgd = pgd_offset(mm, *addr); p4d_t *p4d = p4d_offset(pgd, *addr); pud_t *pud = pud_offset(p4d, *addr); + i_mmap_assert_write_locked(vma->vm_file->f_mapping); BUG_ON(page_count(virt_to_page(ptep)) == 0); if (page_count(virt_to_page(ptep)) == 1) return 0; @@ -5427,7 +5431,8 @@ return NULL; } -int huge_pmd_unshare(struct mm_struct *mm, unsigned long *addr, pte_t *ptep) +int huge_pmd_unshare(struct mm_struct *mm, struct vm_area_struct *vma, + unsigned long *addr, pte_t *ptep) { return 0; } @@ -5603,9 +5608,9 @@ { bool ret = true; - VM_BUG_ON_PAGE(!PageHead(page), page); spin_lock(&hugetlb_lock); - if (!page_huge_active(page) || !get_page_unless_zero(page)) { + if (!PageHeadHuge(page) || !page_huge_active(page) || + !get_page_unless_zero(page)) { ret = false; goto unlock; } --- linux-azure-5.8-5.8.0.orig/mm/hugetlb_cgroup.c +++ linux-azure-5.8-5.8.0/mm/hugetlb_cgroup.c @@ -82,11 +82,8 @@ for (idx = 0; idx < hugetlb_max_hstate; idx++) { if (page_counter_read( - hugetlb_cgroup_counter_from_cgroup(h_cg, idx)) || - page_counter_read(hugetlb_cgroup_counter_from_cgroup_rsvd( - h_cg, idx))) { + hugetlb_cgroup_counter_from_cgroup(h_cg, idx))) return true; - } } return false; } @@ -202,9 +199,10 @@ struct hugetlb_cgroup *h_cg = hugetlb_cgroup_from_css(css); struct hstate *h; struct page *page; - int idx = 0; + int idx; do { + idx = 0; for_each_hstate(h) { spin_lock(&hugetlb_lock); list_for_each_entry(page, &h->hugepage_activelist, lru) --- linux-azure-5.8-5.8.0.orig/mm/internal.h +++ linux-azure-5.8-5.8.0/mm/internal.h @@ -395,7 +395,7 @@ unsigned long start, end; start = __vma_address(page, vma); - end = start + PAGE_SIZE * (hpage_nr_pages(page) - 1); + end = start + thp_size(page) - PAGE_SIZE; /* page should be within @vma mapping range */ VM_BUG_ON_VMA(end < vma->vm_start || start >= vma->vm_end, vma); --- linux-azure-5.8-5.8.0.orig/mm/kasan/init.c +++ linux-azure-5.8-5.8.0/mm/kasan/init.c @@ -377,9 +377,10 @@ if (kasan_pte_table(*pmd)) { if (IS_ALIGNED(addr, PMD_SIZE) && - IS_ALIGNED(next, PMD_SIZE)) + IS_ALIGNED(next, PMD_SIZE)) { pmd_clear(pmd); - continue; + continue; + } } pte = pte_offset_kernel(pmd, addr); kasan_remove_pte_table(pte, addr, next); @@ -402,9 +403,10 @@ if (kasan_pmd_table(*pud)) { if (IS_ALIGNED(addr, PUD_SIZE) && - IS_ALIGNED(next, PUD_SIZE)) + IS_ALIGNED(next, PUD_SIZE)) { pud_clear(pud); - continue; + continue; + } } pmd = pmd_offset(pud, addr); pmd_base = pmd_offset(pud, 0); @@ -428,9 +430,10 @@ if (kasan_pud_table(*p4d)) { if (IS_ALIGNED(addr, P4D_SIZE) && - IS_ALIGNED(next, P4D_SIZE)) + IS_ALIGNED(next, P4D_SIZE)) { p4d_clear(p4d); - continue; + continue; + } } pud = pud_offset(p4d, addr); kasan_remove_pud_table(pud, addr, next); @@ -462,9 +465,10 @@ if (kasan_p4d_table(*pgd)) { if (IS_ALIGNED(addr, PGDIR_SIZE) && - IS_ALIGNED(next, PGDIR_SIZE)) + IS_ALIGNED(next, PGDIR_SIZE)) { pgd_clear(pgd); - continue; + continue; + } } p4d = p4d_offset(pgd, addr); @@ -488,7 +492,6 @@ ret = kasan_populate_early_shadow(shadow_start, shadow_end); if (ret) - kasan_remove_zero_shadow(shadow_start, - size >> KASAN_SHADOW_SCALE_SHIFT); + kasan_remove_zero_shadow(start, size); return ret; } --- linux-azure-5.8-5.8.0.orig/mm/khugepaged.c +++ linux-azure-5.8-5.8.0/mm/khugepaged.c @@ -56,6 +56,9 @@ #define CREATE_TRACE_POINTS #include +static struct task_struct *khugepaged_thread __read_mostly; +static DEFINE_MUTEX(khugepaged_mutex); + /* default scan 8*512 pte (or vmas) every 30 second */ static unsigned int khugepaged_pages_to_scan __read_mostly; static unsigned int khugepaged_pages_collapsed; @@ -431,24 +434,34 @@ static inline int khugepaged_test_exit(struct mm_struct *mm) { - return atomic_read(&mm->mm_users) == 0; + return atomic_read(&mm->mm_users) == 0 || !mmget_still_valid(mm); } static bool hugepage_vma_check(struct vm_area_struct *vma, unsigned long vm_flags) { - if ((!(vm_flags & VM_HUGEPAGE) && !khugepaged_always()) || - (vm_flags & VM_NOHUGEPAGE) || + /* Explicitly disabled through madvise. */ + if ((vm_flags & VM_NOHUGEPAGE) || test_bit(MMF_DISABLE_THP, &vma->vm_mm->flags)) return false; - if (shmem_file(vma->vm_file) || - (IS_ENABLED(CONFIG_READ_ONLY_THP_FOR_FS) && - vma->vm_file && - (vm_flags & VM_DENYWRITE))) { + /* Enabled via shmem mount options or sysfs settings. */ + if (shmem_file(vma->vm_file) && shmem_huge_enabled(vma)) { + return IS_ALIGNED((vma->vm_start >> PAGE_SHIFT) - vma->vm_pgoff, + HPAGE_PMD_NR); + } + + /* THP settings require madvise. */ + if (!(vm_flags & VM_HUGEPAGE) && !khugepaged_always()) + return false; + + /* Read-only file mappings need to be aligned for THP to work. */ + if (IS_ENABLED(CONFIG_READ_ONLY_THP_FOR_FS) && vma->vm_file && + (vm_flags & VM_DENYWRITE)) { return IS_ALIGNED((vma->vm_start >> PAGE_SHIFT) - vma->vm_pgoff, HPAGE_PMD_NR); } + if (!vma->anon_vma || vma->vm_ops) return false; if (vma_is_temporary_stack(vma)) @@ -466,7 +479,7 @@ return -ENOMEM; /* __khugepaged_exit() must not run from under us */ - VM_BUG_ON_MM(khugepaged_test_exit(mm), mm); + VM_BUG_ON_MM(atomic_read(&mm->mm_users) == 0, mm); if (unlikely(test_and_set_bit(MMF_VM_HUGEPAGE, &mm->flags))) { free_mm_slot(mm_slot); return 0; @@ -914,6 +927,18 @@ static bool khugepaged_prealloc_page(struct page **hpage, bool *wait) { + /* + * If the hpage allocated earlier was briefly exposed in page cache + * before collapse_file() failed, it is possible that racing lookups + * have not yet completed, and would then be unpleasantly surprised by + * finding the hpage reused for the same mapping at a different offset. + * Just release the previous allocation if there is any danger of that. + */ + if (*hpage && page_count(*hpage) > 1) { + put_page(*hpage); + *hpage = NULL; + } + if (!*hpage) *hpage = khugepaged_alloc_hugepage(wait); @@ -1100,9 +1125,6 @@ * handled by the anon_vma lock + PG_lock. */ mmap_write_lock(mm); - result = SCAN_ANY_PROCESS; - if (!mmget_still_valid(mm)) - goto out; result = hugepage_vma_revalidate(mm, address, &vma); if (result) goto out; @@ -1412,7 +1434,7 @@ { unsigned long haddr = addr & HPAGE_PMD_MASK; struct vm_area_struct *vma = find_vma(mm, haddr); - struct page *hpage = NULL; + struct page *hpage; pte_t *start_pte, *pte; pmd_t *pmd, _pmd; spinlock_t *ptl; @@ -1432,9 +1454,17 @@ if (!hugepage_vma_check(vma, vma->vm_flags | VM_HUGEPAGE)) return; + hpage = find_lock_page(vma->vm_file->f_mapping, + linear_page_index(vma, haddr)); + if (!hpage) + return; + + if (!PageHead(hpage)) + goto drop_hpage; + pmd = mm_find_pmd(mm, haddr); if (!pmd) - return; + goto drop_hpage; start_pte = pte_offset_map_lock(mm, pmd, haddr, &ptl); @@ -1453,30 +1483,11 @@ page = vm_normal_page(vma, addr, *pte); - if (!page || !PageCompound(page)) - goto abort; - - if (!hpage) { - hpage = compound_head(page); - /* - * The mapping of the THP should not change. - * - * Note that uprobe, debugger, or MAP_PRIVATE may - * change the page table, but the new page will - * not pass PageCompound() check. - */ - if (WARN_ON(hpage->mapping != vma->vm_file->f_mapping)) - goto abort; - } - /* - * Confirm the page maps to the correct subpage. - * - * Note that uprobe, debugger, or MAP_PRIVATE may change - * the page table, but the new page will not pass - * PageCompound() check. + * Note that uprobe, debugger, or MAP_PRIVATE may change the + * page table, but the new page will not be a subpage of hpage. */ - if (WARN_ON(hpage + i != page)) + if (hpage + i != page) goto abort; count++; } @@ -1495,21 +1506,26 @@ pte_unmap_unlock(start_pte, ptl); /* step 3: set proper refcount and mm_counters. */ - if (hpage) { + if (count) { page_ref_sub(hpage, count); add_mm_counter(vma->vm_mm, mm_counter_file(hpage), -count); } /* step 4: collapse pmd */ ptl = pmd_lock(vma->vm_mm, pmd); - _pmd = pmdp_collapse_flush(vma, addr, pmd); + _pmd = pmdp_collapse_flush(vma, haddr, pmd); spin_unlock(ptl); mm_dec_nr_ptes(mm); pte_free(mm, pmd_pgtable(_pmd)); + +drop_hpage: + unlock_page(hpage); + put_page(hpage); return; abort: pte_unmap_unlock(start_pte, ptl); + goto drop_hpage; } static int khugepaged_collapse_pte_mapped_thps(struct mm_slot *mm_slot) @@ -1538,6 +1554,7 @@ static void retract_page_tables(struct address_space *mapping, pgoff_t pgoff) { struct vm_area_struct *vma; + struct mm_struct *mm; unsigned long addr; pmd_t *pmd, _pmd; @@ -1566,7 +1583,8 @@ continue; if (vma->vm_end < addr + HPAGE_PMD_SIZE) continue; - pmd = mm_find_pmd(vma->vm_mm, addr); + mm = vma->vm_mm; + pmd = mm_find_pmd(mm, addr); if (!pmd) continue; /* @@ -1576,17 +1594,19 @@ * mmap_lock while holding page lock. Fault path does it in * reverse order. Trylock is a way to avoid deadlock. */ - if (mmap_write_trylock(vma->vm_mm)) { - spinlock_t *ptl = pmd_lock(vma->vm_mm, pmd); - /* assume page table is clear */ - _pmd = pmdp_collapse_flush(vma, addr, pmd); - spin_unlock(ptl); - mmap_write_unlock(vma->vm_mm); - mm_dec_nr_ptes(vma->vm_mm); - pte_free(vma->vm_mm, pmd_pgtable(_pmd)); + if (mmap_write_trylock(mm)) { + if (!khugepaged_test_exit(mm)) { + spinlock_t *ptl = pmd_lock(mm, pmd); + /* assume page table is clear */ + _pmd = pmdp_collapse_flush(vma, addr, pmd); + spin_unlock(ptl); + mm_dec_nr_ptes(mm); + pte_free(mm, pmd_pgtable(_pmd)); + } + mmap_write_unlock(mm); } else { /* Try again later */ - khugepaged_add_pte_mapped_thp(vma->vm_mm, addr); + khugepaged_add_pte_mapped_thp(mm, addr); } } i_mmap_unlock_write(mapping); @@ -1714,7 +1734,7 @@ xas_unlock_irq(&xas); page_cache_sync_readahead(mapping, &file->f_ra, file, index, - PAGE_SIZE); + end - index); /* drain pagevecs to help isolate_lru_page() */ lru_add_drain(); page = find_lock_page(mapping, index); @@ -2297,8 +2317,6 @@ int start_stop_khugepaged(void) { - static struct task_struct *khugepaged_thread __read_mostly; - static DEFINE_MUTEX(khugepaged_mutex); int err = 0; mutex_lock(&khugepaged_mutex); @@ -2325,3 +2343,11 @@ mutex_unlock(&khugepaged_mutex); return err; } + +void khugepaged_min_free_kbytes_update(void) +{ + mutex_lock(&khugepaged_mutex); + if (khugepaged_enabled() && khugepaged_thread) + set_recommended_min_free_kbytes(); + mutex_unlock(&khugepaged_mutex); +} --- linux-azure-5.8-5.8.0.orig/mm/ksm.c +++ linux-azure-5.8-5.8.0/mm/ksm.c @@ -2422,9 +2422,14 @@ if (ksmd_should_run()) { sleep_ms = READ_ONCE(ksm_thread_sleep_millisecs); - wait_event_interruptible_timeout(ksm_iter_wait, - sleep_ms != READ_ONCE(ksm_thread_sleep_millisecs), - msecs_to_jiffies(sleep_ms)); + if (sleep_ms >= 1000) + wait_event_interruptible_timeout(ksm_iter_wait, + sleep_ms != READ_ONCE(ksm_thread_sleep_millisecs), + msecs_to_jiffies(round_jiffies_relative(sleep_ms))); + else + wait_event_interruptible_timeout(ksm_iter_wait, + sleep_ms != READ_ONCE(ksm_thread_sleep_millisecs), + msecs_to_jiffies(sleep_ms)); } else { wait_event_freezable(ksm_thread_wait, ksmd_should_run() || kthread_should_stop()); @@ -2585,6 +2590,10 @@ return page; /* let do_swap_page report the error */ new_page = alloc_page_vma(GFP_HIGHUSER_MOVABLE, vma, address); + if (new_page && mem_cgroup_charge(new_page, vma->vm_mm, GFP_KERNEL)) { + put_page(new_page); + new_page = NULL; + } if (new_page) { copy_user_highpage(new_page, page, address, vma); --- linux-azure-5.8-5.8.0.orig/mm/list_lru.c +++ linux-azure-5.8-5.8.0/mm/list_lru.c @@ -534,7 +534,6 @@ struct list_lru_node *nlru = &lru->node[nid]; int dst_idx = dst_memcg->kmemcg_id; struct list_lru_one *src, *dst; - bool set; /* * Since list_lru_{add,del} may be called under an IRQ-safe lock, @@ -546,11 +545,12 @@ dst = list_lru_from_memcg_idx(nlru, dst_idx); list_splice_init(&src->list, &dst->list); - set = (!dst->nr_items && src->nr_items); - dst->nr_items += src->nr_items; - if (set) + + if (src->nr_items) { + dst->nr_items += src->nr_items; memcg_set_shrinker_bit(dst_memcg, nid, lru_shrinker_id(lru)); - src->nr_items = 0; + src->nr_items = 0; + } spin_unlock_irq(&nlru->lock); } --- linux-azure-5.8-5.8.0.orig/mm/madvise.c +++ linux-azure-5.8-5.8.0/mm/madvise.c @@ -289,9 +289,9 @@ */ *prev = NULL; /* tell sys_madvise we drop mmap_lock */ get_file(file); - mmap_read_unlock(current->mm); offset = (loff_t)(start - vma->vm_start) + ((loff_t)vma->vm_pgoff << PAGE_SHIFT); + mmap_read_unlock(current->mm); vfs_fadvise(file, offset, end - start, POSIX_FADV_WILLNEED); fput(file); mmap_read_lock(current->mm); @@ -381,9 +381,9 @@ return 0; } +regular_page: if (pmd_trans_unstable(pmd)) return 0; -regular_page: #endif tlb_change_page_size(tlb, PAGE_SIZE); orig_pte = pte = pte_offset_map_lock(vma->vm_mm, pmd, addr, &ptl); @@ -911,14 +911,7 @@ pr_info("Injecting memory failure for pfn %#lx at process virtual address %#lx\n", pfn, start); - /* - * Drop the page reference taken by get_user_pages_fast(). In - * the absence of MF_COUNT_INCREASED the memory_failure() - * routine is responsible for pinning the page to prevent it - * from being released back to the page allocator. - */ - put_page(page); - ret = memory_failure(pfn, 0); + ret = memory_failure(pfn, MF_COUNT_INCREASED); if (ret) return ret; } --- linux-azure-5.8-5.8.0.orig/mm/memblock.c +++ linux-azure-5.8-5.8.0/mm/memblock.c @@ -253,14 +253,6 @@ * * Find @size free area aligned to @align in the specified range and node. * - * When allocation direction is bottom-up, the @start should be greater - * than the end of the kernel image. Otherwise, it will be trimmed. The - * reason is that we want the bottom-up allocation just near the kernel - * image so it is highly likely that the allocated memory and the kernel - * will reside in the same node. - * - * If bottom-up allocation failed, will try to allocate memory top-down. - * * Return: * Found address on success, 0 on failure. */ @@ -269,8 +261,6 @@ phys_addr_t end, int nid, enum memblock_flags flags) { - phys_addr_t kernel_end, ret; - /* pump up @end */ if (end == MEMBLOCK_ALLOC_ACCESSIBLE || end == MEMBLOCK_ALLOC_KASAN) @@ -279,40 +269,13 @@ /* avoid allocating the first page */ start = max_t(phys_addr_t, start, PAGE_SIZE); end = max(start, end); - kernel_end = __pa_symbol(_end); - - /* - * try bottom-up allocation only when bottom-up mode - * is set and @end is above the kernel image. - */ - if (memblock_bottom_up() && end > kernel_end) { - phys_addr_t bottom_up_start; - - /* make sure we will allocate above the kernel */ - bottom_up_start = max(start, kernel_end); - - /* ok, try bottom-up allocation first */ - ret = __memblock_find_range_bottom_up(bottom_up_start, end, - size, align, nid, flags); - if (ret) - return ret; - - /* - * we always limit bottom-up allocation above the kernel, - * but top-down allocation doesn't have the limit, so - * retrying top-down allocation may succeed when bottom-up - * allocation failed. - * - * bottom-up allocation is expected to be fail very rarely, - * so we use WARN_ONCE() here to see the stack trace if - * fail happens. - */ - WARN_ONCE(IS_ENABLED(CONFIG_MEMORY_HOTREMOVE), - "memblock: bottom-up allocation failed, memory hotremove may be affected\n"); - } - return __memblock_find_range_top_down(start, end, size, align, nid, - flags); + if (memblock_bottom_up()) + return __memblock_find_range_bottom_up(start, end, size, align, + nid, flags); + else + return __memblock_find_range_top_down(start, end, size, align, + nid, flags); } /** --- linux-azure-5.8-5.8.0.orig/mm/memcontrol.c +++ linux-azure-5.8-5.8.0/mm/memcontrol.c @@ -766,8 +766,13 @@ rcu_read_lock(); memcg = mem_cgroup_from_obj(p); - /* Untracked pages have no memcg, no lruvec. Update only the node */ - if (!memcg || memcg == root_mem_cgroup) { + /* + * Untracked pages have no memcg, no lruvec. Update only the + * node. If we reparent the slab objects to the root memcg, + * when we free the slab object, we need to update the per-memcg + * vmstats to keep it correct for the root memcg. + */ + if (!memcg) { __mod_node_page_state(pgdat, idx, val); } else { lruvec = mem_cgroup_lruvec(memcg, pgdat); @@ -3834,11 +3839,17 @@ (u64)memsw * PAGE_SIZE); for (i = 0; i < ARRAY_SIZE(memcg1_stats); i++) { + unsigned long nr; + if (memcg1_stats[i] == MEMCG_SWAP && !do_memsw_account()) continue; + nr = memcg_page_state(memcg, memcg1_stats[i]); +#ifdef CONFIG_TRANSPARENT_HUGEPAGE + if (memcg1_stats[i] == NR_ANON_THPS) + nr *= HPAGE_PMD_NR; +#endif seq_printf(m, "total_%s %llu\n", memcg1_stat_names[i], - (u64)memcg_page_state(memcg, memcg1_stats[i]) * - PAGE_SIZE); + (u64)nr * PAGE_SIZE); } for (i = 0; i < ARRAY_SIZE(memcg1_events); i++) @@ -5060,7 +5071,13 @@ memcg->swappiness = mem_cgroup_swappiness(parent); memcg->oom_kill_disable = parent->oom_kill_disable; } - if (parent && parent->use_hierarchy) { + if (!parent) { + page_counter_init(&memcg->memory, NULL); + page_counter_init(&memcg->swap, NULL); + page_counter_init(&memcg->memsw, NULL); + page_counter_init(&memcg->kmem, NULL); + page_counter_init(&memcg->tcpmem, NULL); + } else if (parent->use_hierarchy) { memcg->use_hierarchy = true; page_counter_init(&memcg->memory, &parent->memory); page_counter_init(&memcg->swap, &parent->swap); @@ -5068,11 +5085,11 @@ page_counter_init(&memcg->kmem, &parent->kmem); page_counter_init(&memcg->tcpmem, &parent->tcpmem); } else { - page_counter_init(&memcg->memory, NULL); - page_counter_init(&memcg->swap, NULL); - page_counter_init(&memcg->memsw, NULL); - page_counter_init(&memcg->kmem, NULL); - page_counter_init(&memcg->tcpmem, NULL); + page_counter_init(&memcg->memory, &root_mem_cgroup->memory); + page_counter_init(&memcg->swap, &root_mem_cgroup->swap); + page_counter_init(&memcg->memsw, &root_mem_cgroup->memsw); + page_counter_init(&memcg->kmem, &root_mem_cgroup->kmem); + page_counter_init(&memcg->tcpmem, &root_mem_cgroup->tcpmem); /* * Deeper hierachy with use_hierarchy == false doesn't make * much sense so let cgroup subsystem know about this @@ -5276,7 +5293,7 @@ struct page *page = NULL; swp_entry_t ent = pte_to_swp_entry(ptent); - if (!(mc.flags & MOVE_ANON) || non_swap_entry(ent)) + if (!(mc.flags & MOVE_ANON)) return NULL; /* @@ -5295,6 +5312,9 @@ return page; } + if (non_swap_entry(ent)) + return NULL; + /* * Because lookup_swap_cache() updates some statistics counter, * we call find_get_page() with swapper_space directly. @@ -5395,10 +5415,8 @@ __mod_lruvec_state(from_vec, NR_ANON_MAPPED, -nr_pages); __mod_lruvec_state(to_vec, NR_ANON_MAPPED, nr_pages); if (PageTransHuge(page)) { - __mod_lruvec_state(from_vec, NR_ANON_THPS, - -nr_pages); - __mod_lruvec_state(to_vec, NR_ANON_THPS, - nr_pages); + __dec_lruvec_state(from_vec, NR_ANON_THPS); + __inc_lruvec_state(to_vec, NR_ANON_THPS); } } @@ -6505,7 +6523,19 @@ memcg_check_events(memcg, page); local_irq_enable(); - if (PageSwapCache(page)) { + /* + * Cgroup1's unified memory+swap counter has been charged with the + * new swapcache page, finish the transfer by uncharging the swap + * slot. The swap slot would also get uncharged when it dies, but + * it can stick around indefinitely and we'd count the page twice + * the entire time. + * + * Cgroup2 has separate resource counters for memory and swap, + * so this is a non-issue here. Memory and swap charge lifetimes + * correspond 1:1 to page and swap slot lifetimes: we charge the + * page to memory here, and uncharge swap when the slot is freed. + */ + if (do_memsw_account() && PageSwapCache(page)) { swp_entry_t entry = { .val = page_private(page) }; /* * The swap entry might not get freed for a long time, --- linux-azure-5.8-5.8.0.orig/mm/memory-failure.c +++ linux-azure-5.8-5.8.0/mm/memory-failure.c @@ -963,7 +963,7 @@ static bool hwpoison_user_mappings(struct page *p, unsigned long pfn, int flags, struct page **hpagep) { - enum ttu_flags ttu = TTU_IGNORE_MLOCK | TTU_IGNORE_ACCESS; + enum ttu_flags ttu = TTU_IGNORE_MLOCK; struct address_space *mapping; LIST_HEAD(tokill); bool unmap_success = true; @@ -1031,27 +1031,25 @@ if (!PageHuge(hpage)) { unmap_success = try_to_unmap(hpage, ttu); } else { - /* - * For hugetlb pages, try_to_unmap could potentially call - * huge_pmd_unshare. Because of this, take semaphore in - * write mode here and set TTU_RMAP_LOCKED to indicate we - * have taken the lock at this higer level. - * - * Note that the call to hugetlb_page_mapping_lock_write - * is necessary even if mapping is already set. It handles - * ugliness of potentially having to drop page lock to obtain - * i_mmap_rwsem. - */ - mapping = hugetlb_page_mapping_lock_write(hpage); - - if (mapping) { - unmap_success = try_to_unmap(hpage, + if (!PageAnon(hpage)) { + /* + * For hugetlb pages in shared mappings, try_to_unmap + * could potentially call huge_pmd_unshare. Because of + * this, take semaphore in write mode here and set + * TTU_RMAP_LOCKED to indicate we have taken the lock + * at this higer level. + */ + mapping = hugetlb_page_mapping_lock_write(hpage); + if (mapping) { + unmap_success = try_to_unmap(hpage, ttu|TTU_RMAP_LOCKED); - i_mmap_unlock_write(mapping); + i_mmap_unlock_write(mapping); + } else { + pr_info("Memory failure: %#lx: could not lock mapping for mapped huge page\n", pfn); + unmap_success = false; + } } else { - pr_info("Memory failure: %#lx: could not find mapping for mapped huge page\n", - pfn); - unmap_success = false; + unmap_success = try_to_unmap(hpage, ttu); } } if (!unmap_success) @@ -1188,6 +1186,12 @@ loff_t start; dax_entry_t cookie; + if (flags & MF_COUNT_INCREASED) + /* + * Drop the extra refcount in case we come from madvise(). + */ + put_page(page); + /* * Prevent the inode from being freed while we are interrogating * the address_space, typically this would be handled by --- linux-azure-5.8-5.8.0.orig/mm/memory.c +++ linux-azure-5.8-5.8.0/mm/memory.c @@ -71,6 +71,7 @@ #include #include #include +#include #include @@ -1367,6 +1368,7 @@ mmu_notifier_invalidate_range_end(&range); tlb_finish_mmu(&tlb, start, range.end); } +EXPORT_SYMBOL(zap_page_range); /** * zap_page_range_single - remove user pages in a given range @@ -1990,11 +1992,11 @@ unsigned long addr, unsigned long end, unsigned long pfn, pgprot_t prot) { - pte_t *pte; + pte_t *pte, *mapped_pte; spinlock_t *ptl; int err = 0; - pte = pte_alloc_map_lock(mm, pmd, addr, &ptl); + mapped_pte = pte = pte_alloc_map_lock(mm, pmd, addr, &ptl); if (!pte) return -ENOMEM; arch_enter_lazy_mmu_mode(); @@ -2008,7 +2010,7 @@ pfn++; } while (pte++, addr += PAGE_SIZE, addr != end); arch_leave_lazy_mmu_mode(); - pte_unmap_unlock(pte - 1, ptl); + pte_unmap_unlock(mapped_pte, ptl); return err; } @@ -2201,7 +2203,8 @@ static int apply_to_pte_range(struct mm_struct *mm, pmd_t *pmd, unsigned long addr, unsigned long end, - pte_fn_t fn, void *data, bool create) + pte_fn_t fn, void *data, bool create, + pgtbl_mod_mask *mask) { pte_t *pte; int err = 0; @@ -2209,7 +2212,7 @@ if (create) { pte = (mm == &init_mm) ? - pte_alloc_kernel(pmd, addr) : + pte_alloc_kernel_track(pmd, addr, mask) : pte_alloc_map_lock(mm, pmd, addr, &ptl); if (!pte) return -ENOMEM; @@ -2230,6 +2233,7 @@ break; } } while (addr += PAGE_SIZE, addr != end); + *mask |= PGTBL_PTE_MODIFIED; arch_leave_lazy_mmu_mode(); @@ -2240,7 +2244,8 @@ static int apply_to_pmd_range(struct mm_struct *mm, pud_t *pud, unsigned long addr, unsigned long end, - pte_fn_t fn, void *data, bool create) + pte_fn_t fn, void *data, bool create, + pgtbl_mod_mask *mask) { pmd_t *pmd; unsigned long next; @@ -2249,7 +2254,7 @@ BUG_ON(pud_huge(*pud)); if (create) { - pmd = pmd_alloc(mm, pud, addr); + pmd = pmd_alloc_track(mm, pud, addr, mask); if (!pmd) return -ENOMEM; } else { @@ -2259,7 +2264,7 @@ next = pmd_addr_end(addr, end); if (create || !pmd_none_or_clear_bad(pmd)) { err = apply_to_pte_range(mm, pmd, addr, next, fn, data, - create); + create, mask); if (err) break; } @@ -2269,14 +2274,15 @@ static int apply_to_pud_range(struct mm_struct *mm, p4d_t *p4d, unsigned long addr, unsigned long end, - pte_fn_t fn, void *data, bool create) + pte_fn_t fn, void *data, bool create, + pgtbl_mod_mask *mask) { pud_t *pud; unsigned long next; int err = 0; if (create) { - pud = pud_alloc(mm, p4d, addr); + pud = pud_alloc_track(mm, p4d, addr, mask); if (!pud) return -ENOMEM; } else { @@ -2286,7 +2292,7 @@ next = pud_addr_end(addr, end); if (create || !pud_none_or_clear_bad(pud)) { err = apply_to_pmd_range(mm, pud, addr, next, fn, data, - create); + create, mask); if (err) break; } @@ -2296,14 +2302,15 @@ static int apply_to_p4d_range(struct mm_struct *mm, pgd_t *pgd, unsigned long addr, unsigned long end, - pte_fn_t fn, void *data, bool create) + pte_fn_t fn, void *data, bool create, + pgtbl_mod_mask *mask) { p4d_t *p4d; unsigned long next; int err = 0; if (create) { - p4d = p4d_alloc(mm, pgd, addr); + p4d = p4d_alloc_track(mm, pgd, addr, mask); if (!p4d) return -ENOMEM; } else { @@ -2313,7 +2320,7 @@ next = p4d_addr_end(addr, end); if (create || !p4d_none_or_clear_bad(p4d)) { err = apply_to_pud_range(mm, p4d, addr, next, fn, data, - create); + create, mask); if (err) break; } @@ -2326,8 +2333,9 @@ void *data, bool create) { pgd_t *pgd; - unsigned long next; + unsigned long start = addr, next; unsigned long end = addr + size; + pgtbl_mod_mask mask = 0; int err = 0; if (WARN_ON(addr >= end)) @@ -2338,11 +2346,14 @@ next = pgd_addr_end(addr, end); if (!create && pgd_none_or_clear_bad(pgd)) continue; - err = apply_to_p4d_range(mm, pgd, addr, next, fn, data, create); + err = apply_to_p4d_range(mm, pgd, addr, next, fn, data, create, &mask); if (err) break; } while (pgd++, addr = next, addr != end); + if (mask & ARCH_PAGE_TABLE_SYNC_MASK) + arch_sync_kernel_mappings(start, start + size); + return err; } @@ -4248,6 +4259,9 @@ vmf->flags & FAULT_FLAG_WRITE)) { update_mmu_cache(vmf->vma, vmf->address, vmf->pte); } else { + /* Skip spurious TLB flush for retried page fault */ + if (vmf->flags & FAULT_FLAG_TRIED) + goto unlock; /* * This is needed only for protection faults but the arch code * is not yet telling us if this is a protection fault or not. @@ -4481,9 +4495,9 @@ } #endif /* __PAGETABLE_PMD_FOLDED */ -static int __follow_pte_pmd(struct mm_struct *mm, unsigned long address, - struct mmu_notifier_range *range, - pte_t **ptepp, pmd_t **pmdpp, spinlock_t **ptlp) +int follow_invalidate_pte(struct mm_struct *mm, unsigned long address, + struct mmu_notifier_range *range, pte_t **ptepp, + pmd_t **pmdpp, spinlock_t **ptlp) { pgd_t *pgd; p4d_t *p4d; @@ -4548,31 +4562,33 @@ return -EINVAL; } -static inline int follow_pte(struct mm_struct *mm, unsigned long address, - pte_t **ptepp, spinlock_t **ptlp) -{ - int res; - - /* (void) is needed to make gcc happy */ - (void) __cond_lock(*ptlp, - !(res = __follow_pte_pmd(mm, address, NULL, - ptepp, NULL, ptlp))); - return res; -} - -int follow_pte_pmd(struct mm_struct *mm, unsigned long address, - struct mmu_notifier_range *range, - pte_t **ptepp, pmd_t **pmdpp, spinlock_t **ptlp) +/** + * follow_pte - look up PTE at a user virtual address + * @mm: the mm_struct of the target address space + * @address: user virtual address + * @ptepp: location to store found PTE + * @ptlp: location to store the lock for the PTE + * + * On a successful return, the pointer to the PTE is stored in @ptepp; + * the corresponding lock is taken and its location is stored in @ptlp. + * The contents of the PTE are only stable until @ptlp is released; + * any further use, if any, must be protected against invalidation + * with MMU notifiers. + * + * Only IO mappings and raw PFN mappings are allowed. The mmap semaphore + * should be taken for read. + * + * KVM uses this function. While it is arguably less bad than ``follow_pfn``, + * it is not a good general-purpose API. + * + * Return: zero on success, -ve otherwise. + */ +int follow_pte(struct mm_struct *mm, unsigned long address, + pte_t **ptepp, spinlock_t **ptlp) { - int res; - - /* (void) is needed to make gcc happy */ - (void) __cond_lock(*ptlp, - !(res = __follow_pte_pmd(mm, address, range, - ptepp, pmdpp, ptlp))); - return res; + return follow_invalidate_pte(mm, address, NULL, ptepp, NULL, ptlp); } -EXPORT_SYMBOL(follow_pte_pmd); +EXPORT_SYMBOL_GPL(follow_pte); /** * follow_pfn - look up PFN at a user virtual address @@ -4582,6 +4598,9 @@ * * Only IO mappings and raw PFN mappings are allowed. * + * This function does not allow the caller to read the permissions + * of the PTE. Do not use it. + * * Return: zero and the pfn at @pfn on success, -ve otherwise. */ int follow_pfn(struct vm_area_struct *vma, unsigned long address, @@ -4972,17 +4991,19 @@ void *page_kaddr; unsigned long i, rc = 0; unsigned long ret_val = pages_per_huge_page * PAGE_SIZE; + struct page *subpage = dst_page; - for (i = 0; i < pages_per_huge_page; i++) { + for (i = 0; i < pages_per_huge_page; + i++, subpage = mem_map_next(subpage, dst_page, i)) { if (allow_pagefault) - page_kaddr = kmap(dst_page + i); + page_kaddr = kmap(subpage); else - page_kaddr = kmap_atomic(dst_page + i); + page_kaddr = kmap_atomic(subpage); rc = copy_from_user(page_kaddr, (const void __user *)(src + i * PAGE_SIZE), PAGE_SIZE); if (allow_pagefault) - kunmap(dst_page + i); + kunmap(subpage); else kunmap_atomic(page_kaddr); --- linux-azure-5.8-5.8.0.orig/mm/memory_hotplug.c +++ linux-azure-5.8-5.8.0/mm/memory_hotplug.c @@ -54,6 +54,8 @@ DEFINE_STATIC_PERCPU_RWSEM(mem_hotplug_lock); +static int default_kernel_zone = ZONE_NORMAL; + void get_online_mems(void) { percpu_down_read(&mem_hotplug_lock); @@ -718,16 +720,27 @@ * expects the zone spans the pfn range. All the pages in the range * are reserved so nobody should be touching them so we should be safe */ - memmap_init_zone(nr_pages, nid, zone_idx(zone), start_pfn, - MEMMAP_HOTPLUG, altmap); + memmap_init_zone(nr_pages, nid, zone_idx(zone), start_pfn, 0, + MEMINIT_HOTPLUG, altmap); set_zone_contiguous(zone); } +void set_default_mem_hotplug_zone(enum zone_type zone) +{ + default_kernel_zone = zone; +} + +#ifdef CONFIG_HIGHMEM +#define MAX_KERNEL_ZONE ZONE_HIGHMEM +#else +#define MAX_KERNEL_ZONE ZONE_NORMAL +#endif + /* * Returns a default kernel memory zone for the given pfn range. * If no kernel zone covers this pfn range it will automatically go - * to the ZONE_NORMAL. + * to the MAX_KERNEL_ZONE. */ static struct zone *default_kernel_zone_for_pfn(int nid, unsigned long start_pfn, unsigned long nr_pages) @@ -735,14 +748,14 @@ struct pglist_data *pgdat = NODE_DATA(nid); int zid; - for (zid = 0; zid <= ZONE_NORMAL; zid++) { + for (zid = 0; zid <= MAX_KERNEL_ZONE; zid++) { struct zone *zone = &pgdat->node_zones[zid]; if (zone_intersects(zone, start_pfn, nr_pages)) return zone; } - return &pgdat->node_zones[ZONE_NORMAL]; + return &pgdat->node_zones[default_kernel_zone]; } static inline struct zone *default_zone_for_pfn(int nid, unsigned long start_pfn, @@ -1065,7 +1078,8 @@ } /* link memory sections under this node.*/ - ret = link_mem_sections(nid, PFN_DOWN(start), PFN_UP(start + size - 1)); + ret = link_mem_sections(nid, PFN_DOWN(start), PFN_UP(start + size - 1), + MEMINIT_HOTPLUG); BUG_ON(ret); /* create new memmap entry */ @@ -1309,7 +1323,7 @@ if (WARN_ON(PageLRU(page))) isolate_lru_page(page); if (page_mapped(page)) - try_to_unmap(page, TTU_IGNORE_MLOCK | TTU_IGNORE_ACCESS); + try_to_unmap(page, TTU_IGNORE_MLOCK); continue; } @@ -1557,6 +1571,20 @@ /* check again */ ret = walk_system_ram_range(start_pfn, end_pfn - start_pfn, NULL, check_pages_isolated_cb); + /* + * per-cpu pages are drained in start_isolate_page_range, but if + * there are still pages that are not free, make sure that we + * drain again, because when we isolated range we might + * have raced with another thread that was adding pages to pcp + * list. + * + * Forward progress should be still guaranteed because + * pages on the pcp list can only belong to MOVABLE_ZONE + * because has_unmovable_pages explicitly checks for + * PageBuddy on freed pages on other zones. + */ + if (ret) + drain_all_pages(zone); } while (ret); /* Ok, all of our target is isolated. @@ -1742,7 +1770,7 @@ */ rc = walk_memory_blocks(start, size, NULL, check_memblock_offlined_cb); if (rc) - goto done; + return rc; /* remove memmap entry */ firmware_map_remove(start, start + size, "System RAM"); @@ -1766,9 +1794,8 @@ try_offline_node(nid); -done: mem_hotplug_done(); - return rc; + return 0; } /** --- linux-azure-5.8-5.8.0.orig/mm/mempolicy.c +++ linux-azure-5.8-5.8.0/mm/mempolicy.c @@ -525,7 +525,7 @@ unsigned long flags = qp->flags; int ret; bool has_unmovable = false; - pte_t *pte; + pte_t *pte, *mapped_pte; spinlock_t *ptl; ptl = pmd_trans_huge_lock(pmd, vma); @@ -539,7 +539,7 @@ if (pmd_trans_unstable(pmd)) return 0; - pte = pte_offset_map_lock(walk->mm, pmd, addr, &ptl); + mapped_pte = pte = pte_offset_map_lock(walk->mm, pmd, addr, &ptl); for (; addr != end; pte++, addr += PAGE_SIZE) { if (!pte_present(*pte)) continue; @@ -571,7 +571,7 @@ } else break; } - pte_unmap_unlock(pte - 1, ptl); + pte_unmap_unlock(mapped_pte, ptl); cond_resched(); if (has_unmovable) --- linux-azure-5.8-5.8.0.orig/mm/migrate.c +++ linux-azure-5.8-5.8.0/mm/migrate.c @@ -251,7 +251,7 @@ entry = make_device_private_entry(new, pte_write(pte)); pte = swp_entry_to_pte(entry); if (pte_swp_uffd_wp(*pvmw.pte)) - pte = pte_mkuffd_wp(pte); + pte = pte_swp_mkuffd_wp(pte); } } @@ -1121,8 +1121,7 @@ /* Establish migration ptes */ VM_BUG_ON_PAGE(PageAnon(page) && !PageKsm(page) && !anon_vma, page); - try_to_unmap(page, - TTU_MIGRATION|TTU_IGNORE_MLOCK|TTU_IGNORE_ACCESS); + try_to_unmap(page, TTU_MIGRATION|TTU_IGNORE_MLOCK); page_was_mapped = 1; } @@ -1332,34 +1331,37 @@ goto put_anon; if (page_mapped(hpage)) { - /* - * try_to_unmap could potentially call huge_pmd_unshare. - * Because of this, take semaphore in write mode here and - * set TTU_RMAP_LOCKED to let lower levels know we have - * taken the lock. - */ - mapping = hugetlb_page_mapping_lock_write(hpage); - if (unlikely(!mapping)) - goto unlock_put_anon; - - try_to_unmap(hpage, - TTU_MIGRATION|TTU_IGNORE_MLOCK|TTU_IGNORE_ACCESS| - TTU_RMAP_LOCKED); + bool mapping_locked = false; + enum ttu_flags ttu = TTU_MIGRATION|TTU_IGNORE_MLOCK; + + if (!PageAnon(hpage)) { + /* + * In shared mappings, try_to_unmap could potentially + * call huge_pmd_unshare. Because of this, take + * semaphore in write mode here and set TTU_RMAP_LOCKED + * to let lower levels know we have taken the lock. + */ + mapping = hugetlb_page_mapping_lock_write(hpage); + if (unlikely(!mapping)) + goto unlock_put_anon; + + mapping_locked = true; + ttu |= TTU_RMAP_LOCKED; + } + + try_to_unmap(hpage, ttu); page_was_mapped = 1; - /* - * Leave mapping locked until after subsequent call to - * remove_migration_ptes() - */ + + if (mapping_locked) + i_mmap_unlock_write(mapping); } if (!page_mapped(hpage)) rc = move_to_new_page(new_hpage, hpage, mode); - if (page_was_mapped) { + if (page_was_mapped) remove_migration_ptes(hpage, - rc == MIGRATEPAGE_SUCCESS ? new_hpage : hpage, true); - i_mmap_unlock_write(mapping); - } + rc == MIGRATEPAGE_SUCCESS ? new_hpage : hpage, false); unlock_put_anon: unlock_page(new_hpage); @@ -2330,10 +2332,17 @@ entry = make_migration_entry(page, mpfn & MIGRATE_PFN_WRITE); swp_pte = swp_entry_to_pte(entry); - if (pte_soft_dirty(pte)) - swp_pte = pte_swp_mksoft_dirty(swp_pte); - if (pte_uffd_wp(pte)) - swp_pte = pte_swp_mkuffd_wp(swp_pte); + if (pte_present(pte)) { + if (pte_soft_dirty(pte)) + swp_pte = pte_swp_mksoft_dirty(swp_pte); + if (pte_uffd_wp(pte)) + swp_pte = pte_swp_mkuffd_wp(swp_pte); + } else { + if (pte_swp_soft_dirty(pte)) + swp_pte = pte_swp_mksoft_dirty(swp_pte); + if (pte_swp_uffd_wp(pte)) + swp_pte = pte_swp_mkuffd_wp(swp_pte); + } set_pte_at(mm, addr, ptep, swp_pte); /* @@ -2564,7 +2573,7 @@ */ static void migrate_vma_unmap(struct migrate_vma *migrate) { - int flags = TTU_MIGRATION | TTU_IGNORE_MLOCK | TTU_IGNORE_ACCESS; + int flags = TTU_MIGRATION | TTU_IGNORE_MLOCK; const unsigned long npages = migrate->npages; const unsigned long start = migrate->start; unsigned long addr, i, restore = 0; --- linux-azure-5.8-5.8.0.orig/mm/mmap.c +++ linux-azure-5.8-5.8.0/mm/mmap.c @@ -179,7 +179,7 @@ if (vma->vm_ops && vma->vm_ops->close) vma->vm_ops->close(vma); if (vma->vm_file) - fput(vma->vm_file); + vma_fput(vma); mpol_put(vma_policy(vma)); vm_area_free(vma); return next; @@ -910,7 +910,7 @@ if (remove_next) { if (file) { uprobe_munmap(next, next->vm_start, next->vm_end); - fput(file); + vma_fput(vma); } if (next->anon_vma) anon_vma_merge(vma, next); @@ -1831,8 +1831,8 @@ return addr; unmap_and_free_vma: + vma_fput(vma); vma->vm_file = NULL; - fput(file); /* Undo any partial mapping done by a device driver. */ unmap_region(mm, vma, prev, vma->vm_start, vma->vm_end); @@ -2694,7 +2694,7 @@ goto out_free_mpol; if (new->vm_file) - get_file(new->vm_file); + vma_get_file(new); if (new->vm_ops && new->vm_ops->open) new->vm_ops->open(new); @@ -2713,7 +2713,7 @@ if (new->vm_ops && new->vm_ops->close) new->vm_ops->close(new); if (new->vm_file) - fput(new->vm_file); + vma_fput(new); unlink_anon_vmas(new); out_free_mpol: mpol_put(vma_policy(new)); @@ -2906,7 +2906,7 @@ struct vm_area_struct *vma; unsigned long populate = 0; unsigned long ret = -EINVAL; - struct file *file; + struct file *file, *prfile; pr_warn_once("%s (%d) uses deprecated remap_file_pages() syscall. See Documentation/vm/remap_file_pages.rst.\n", current->comm, current->pid); @@ -2981,10 +2981,27 @@ } } - file = get_file(vma->vm_file); + vma_get_file(vma); + file = vma->vm_file; + prfile = vma->vm_prfile; ret = do_mmap_pgoff(vma->vm_file, start, size, prot, flags, pgoff, &populate, NULL); + if (!IS_ERR_VALUE(ret) && file && prfile) { + struct vm_area_struct *new_vma; + + new_vma = find_vma(mm, ret); + if (!new_vma->vm_prfile) + new_vma->vm_prfile = prfile; + if (new_vma != vma) + get_file(prfile); + } + /* + * two fput()s instead of vma_fput(vma), + * coz vma may not be available anymore. + */ fput(file); + if (prfile) + fput(prfile); out: mmap_write_unlock(mm); if (populate) @@ -3171,6 +3188,7 @@ if (vma->vm_flags & VM_ACCOUNT) nr_accounted += vma_pages(vma); vma = remove_vma(vma); + cond_resched(); } vm_unacct_memory(nr_accounted); } @@ -3275,7 +3293,7 @@ if (anon_vma_clone(new_vma, vma)) goto out_free_mempol; if (new_vma->vm_file) - get_file(new_vma->vm_file); + vma_get_file(new_vma); if (new_vma->vm_ops && new_vma->vm_ops->open) new_vma->vm_ops->open(new_vma); vma_link(mm, new_vma, prev, rb_link, rb_parent); --- linux-azure-5.8-5.8.0.orig/mm/nommu.c +++ linux-azure-5.8-5.8.0/mm/nommu.c @@ -540,7 +540,7 @@ up_write(&nommu_region_sem); if (region->vm_file) - fput(region->vm_file); + vmr_fput(region); /* IO memory and memory shared directly out of the pagecache * from ramfs/tmpfs mustn't be released here */ @@ -672,7 +672,7 @@ if (vma->vm_ops && vma->vm_ops->close) vma->vm_ops->close(vma); if (vma->vm_file) - fput(vma->vm_file); + vma_fput(vma); put_nommu_region(vma->vm_region); vm_area_free(vma); } @@ -1195,7 +1195,7 @@ goto error_just_free; } } - fput(region->vm_file); + vmr_fput(region); kmem_cache_free(vm_region_jar, region); region = pregion; result = start; @@ -1272,10 +1272,10 @@ up_write(&nommu_region_sem); error: if (region->vm_file) - fput(region->vm_file); + vmr_fput(region); kmem_cache_free(vm_region_jar, region); if (vma->vm_file) - fput(vma->vm_file); + vma_fput(vma); vm_area_free(vma); return ret; --- linux-azure-5.8-5.8.0.orig/mm/oom_kill.c +++ linux-azure-5.8-5.8.0/mm/oom_kill.c @@ -64,6 +64,8 @@ * and mark_oom_victim */ DEFINE_MUTEX(oom_lock); +/* Serializes oom_score_adj and oom_score_adj_min updates */ +DEFINE_MUTEX(oom_adj_mutex); static inline bool is_memcg_oom(struct oom_control *oc) { --- linux-azure-5.8-5.8.0.orig/mm/page-writeback.c +++ linux-azure-5.8-5.8.0/mm/page-writeback.c @@ -2756,12 +2756,6 @@ } else { ret = TestClearPageWriteback(page); } - /* - * NOTE: Page might be free now! Writeback doesn't hold a page - * reference on its own, it relies on truncation to wait for - * the clearing of PG_writeback. The below can only access - * page state that is static across allocation cycles. - */ if (ret) { dec_lruvec_state(lruvec, NR_WRITEBACK); dec_zone_page_state(page, NR_ZONE_WRITE_PENDING); @@ -2834,7 +2828,7 @@ */ void wait_on_page_writeback(struct page *page) { - if (PageWriteback(page)) { + while (PageWriteback(page)) { trace_wait_on_page_writeback(page, page_mapping(page)); wait_on_page_bit(page, PG_writeback); } --- linux-azure-5.8-5.8.0.orig/mm/page_alloc.c +++ linux-azure-5.8-5.8.0/mm/page_alloc.c @@ -69,6 +69,7 @@ #include #include #include +#include #include #include @@ -316,20 +317,7 @@ int min_free_kbytes = 1024; int user_min_free_kbytes = -1; -#ifdef CONFIG_DISCONTIGMEM -/* - * DiscontigMem defines memory ranges as separate pg_data_t even if the ranges - * are not on separate NUMA nodes. Functionally this works but with - * watermark_boost_factor, it can reclaim prematurely as the ranges can be - * quite small. By default, do not boost watermarks on discontigmem as in - * many cases very high-order allocations like THP are likely to be - * unsupported and the premature reclaim offsets the advantage of long-term - * fragmentation avoidance. - */ int watermark_boost_factor __read_mostly; -#else -int watermark_boost_factor __read_mostly = 15000; -#endif int watermark_scale_factor = 10; static unsigned long nr_kernel_pages __initdata; @@ -418,6 +406,8 @@ if (end_pfn < pgdat_end_pfn(NODE_DATA(nid))) return false; + if (NODE_DATA(nid)->first_deferred_pfn != ULONG_MAX) + return true; /* * We start only with one section of pages, more pages are added as * needed until the rest of deferred pages are initialized. @@ -1306,6 +1296,11 @@ struct page *page, *tmp; LIST_HEAD(head); + /* + * Ensure proper count is passed which otherwise would stuck in the + * below while (list_empty(list)) loop. + */ + count = min(pcp->count, count); while (count) { struct list_head *list; @@ -2411,12 +2406,12 @@ return false; } -static inline void boost_watermark(struct zone *zone) +static inline bool boost_watermark(struct zone *zone) { unsigned long max_boost; if (!watermark_boost_factor) - return; + return false; /* * Don't bother in zones that are unlikely to produce results. * On small machines, including kdump capture kernels running @@ -2424,7 +2419,7 @@ * memory situation immediately. */ if ((pageblock_nr_pages * 4) > zone_managed_pages(zone)) - return; + return false; max_boost = mult_frac(zone->_watermark[WMARK_HIGH], watermark_boost_factor, 10000); @@ -2438,12 +2433,14 @@ * boosted watermark resulting in a hang. */ if (!max_boost) - return; + return false; max_boost = max(pageblock_nr_pages, max_boost); zone->watermark_boost = min(zone->watermark_boost + pageblock_nr_pages, max_boost); + + return true; } /* @@ -2481,8 +2478,7 @@ * likelihood of future fallbacks. Wake kswapd now as the node * may be balanced overall and kswapd will not wake naturally. */ - boost_watermark(zone); - if (alloc_flags & ALLOC_KSWAPD) + if (boost_watermark(zone) && (alloc_flags & ALLOC_KSWAPD)) set_bit(ZONE_BOOSTED_WATERMARK, &zone->flags); /* We are not allowed to try stealing from the whole block */ @@ -2784,20 +2780,20 @@ { struct page *page; -#ifdef CONFIG_CMA - /* - * Balance movable allocations between regular and CMA areas by - * allocating from CMA when over half of the zone's free memory - * is in the CMA area. - */ - if (migratetype == MIGRATE_MOVABLE && - zone_page_state(zone, NR_FREE_CMA_PAGES) > - zone_page_state(zone, NR_FREE_PAGES) / 2) { - page = __rmqueue_cma_fallback(zone, order); - if (page) - return page; + if (IS_ENABLED(CONFIG_CMA)) { + /* + * Balance movable allocations between regular and CMA areas by + * allocating from CMA when over half of the zone's free memory + * is in the CMA area. + */ + if (migratetype == MIGRATE_MOVABLE && + zone_page_state(zone, NR_FREE_CMA_PAGES) > + zone_page_state(zone, NR_FREE_PAGES) / 2) { + page = __rmqueue_cma_fallback(zone, order); + if (page) + goto out; + } } -#endif retry: page = __rmqueue_smallest(zone, order, migratetype); if (unlikely(!page)) { @@ -2808,8 +2804,9 @@ alloc_flags)) goto retry; } - - trace_mm_page_alloc_zone_locked(page, order, migratetype); +out: + if (page) + trace_mm_page_alloc_zone_locked(page, order, migratetype); return page; } @@ -3207,7 +3204,7 @@ for (i = 1; i < (1 << order); i++) set_page_refcounted(page + i); - split_page_owner(page, order); + split_page_owner(page, 1 << order); } EXPORT_SYMBOL_GPL(split_page); @@ -3481,7 +3478,7 @@ #endif /* CONFIG_FAIL_PAGE_ALLOC */ -static noinline bool should_fail_alloc_page(gfp_t gfp_mask, unsigned int order) +noinline bool should_fail_alloc_page(gfp_t gfp_mask, unsigned int order) { return __should_fail_alloc_page(gfp_mask, order); } @@ -4998,6 +4995,11 @@ if (!page_ref_sub_and_test(page, nc->pagecnt_bias)) goto refill; + if (unlikely(nc->pfmemalloc)) { + free_the_page(page, compound_order(page)); + goto refill; + } + #if (PAGE_SIZE < PAGE_FRAG_CACHE_MAX_SIZE) /* if size can vary use size else just use PAGE_SIZE */ size = nc->size; @@ -5947,7 +5949,8 @@ * done. Non-atomic initialization, single-pass. */ void __meminit memmap_init_zone(unsigned long size, int nid, unsigned long zone, - unsigned long start_pfn, enum memmap_context context, + unsigned long start_pfn, unsigned long zone_end_pfn, + enum meminit_context context, struct vmem_altmap *altmap) { unsigned long pfn, end_pfn = start_pfn + size; @@ -5979,16 +5982,16 @@ * There can be holes in boot-time mem_map[]s handed to this * function. They do not exist on hotplugged memory. */ - if (context == MEMMAP_EARLY) { + if (context == MEMINIT_EARLY) { if (overlap_memmap_init(zone, &pfn)) continue; - if (defer_init(nid, pfn, end_pfn)) + if (defer_init(nid, pfn, zone_end_pfn)) break; } page = pfn_to_page(pfn); __init_single_page(page, pfn, zone, nid); - if (context == MEMMAP_HOTPLUG) + if (context == MEMINIT_HOTPLUG) __SetPageReserved(page); /* @@ -6071,7 +6074,7 @@ * check here not to call set_pageblock_migratetype() against * pfn out of zone. * - * Please note that MEMMAP_HOTPLUG path doesn't clear memmap + * Please note that MEMINIT_HOTPLUG path doesn't clear memmap * because this is done early in section_activate() */ if (!(pfn & (pageblock_nr_pages - 1))) { @@ -6108,8 +6111,8 @@ if (end_pfn > start_pfn) { size = end_pfn - start_pfn; - memmap_init_zone(size, nid, zone, start_pfn, - MEMMAP_EARLY, NULL); + memmap_init_zone(size, nid, zone, start_pfn, range_end_pfn, + MEMINIT_EARLY, NULL); } } } @@ -7879,9 +7882,11 @@ setup_min_slab_ratio(); #endif + khugepaged_min_free_kbytes_update(); + return 0; } -core_initcall(init_per_zone_wmark_min) +postcore_initcall(init_per_zone_wmark_min) /* * min_free_kbytes_sysctl_handler - just a wrapper around proc_dointvec() so --- linux-azure-5.8-5.8.0.orig/mm/page_counter.c +++ linux-azure-5.8-5.8.0/mm/page_counter.c @@ -72,13 +72,13 @@ long new; new = atomic_long_add_return(nr_pages, &c->usage); - propagate_protected_usage(counter, new); + propagate_protected_usage(c, new); /* * This is indeed racy, but we can live with some * inaccuracy in the watermark. */ - if (new > c->watermark) - c->watermark = new; + if (new > READ_ONCE(c->watermark)) + WRITE_ONCE(c->watermark, new); } } @@ -116,22 +116,23 @@ new = atomic_long_add_return(nr_pages, &c->usage); if (new > c->max) { atomic_long_sub(nr_pages, &c->usage); - propagate_protected_usage(counter, new); + propagate_protected_usage(c, new); /* * This is racy, but we can live with some - * inaccuracy in the failcnt. + * inaccuracy in the failcnt which is only used + * to report stats. */ - c->failcnt++; + data_race(c->failcnt++); *fail = c; goto failed; } - propagate_protected_usage(counter, new); + propagate_protected_usage(c, new); /* * Just like with failcnt, we can live with some * inaccuracy in the watermark. */ - if (new > c->watermark) - c->watermark = new; + if (new > READ_ONCE(c->watermark)) + WRITE_ONCE(c->watermark, new); } return true; --- linux-azure-5.8-5.8.0.orig/mm/page_io.c +++ linux-azure-5.8-5.8.0/mm/page_io.c @@ -40,7 +40,7 @@ bio->bi_iter.bi_sector <<= PAGE_SHIFT - 9; bio->bi_end_io = end_io; - bio_add_page(bio, page, PAGE_SIZE * hpage_nr_pages(page), 0); + bio_add_page(bio, page, thp_size(page), 0); } return bio; } --- linux-azure-5.8-5.8.0.orig/mm/page_isolation.c +++ linux-azure-5.8-5.8.0/mm/page_isolation.c @@ -170,6 +170,14 @@ * pageblocks we may have modified and return -EBUSY to caller. This * prevents two threads from simultaneously working on overlapping ranges. * + * Please note that there is no strong synchronization with the page allocator + * either. Pages might be freed while their page blocks are marked ISOLATED. + * In some cases pages might still end up on pcp lists and that would allow + * for their allocation even when they are in fact isolated already. Depending + * on how strong of a guarantee the caller needs drain_all_pages might be needed + * (e.g. __offline_pages will need to call it after check for isolated range for + * a next retry). + * * Return: the number of isolated pageblocks on success and -EBUSY if any part * of range cannot be isolated. */ --- linux-azure-5.8-5.8.0.orig/mm/page_owner.c +++ linux-azure-5.8-5.8.0/mm/page_owner.c @@ -204,7 +204,7 @@ page_owner->last_migrate_reason = reason; } -void __split_page_owner(struct page *page, unsigned int order) +void __split_page_owner(struct page *page, unsigned int nr) { int i; struct page_ext *page_ext = lookup_page_ext(page); @@ -213,7 +213,7 @@ if (unlikely(!page_ext)) return; - for (i = 0; i < (1 << order); i++) { + for (i = 0; i < nr; i++) { page_owner = get_page_owner(page_ext); page_owner->order = 0; page_ext = page_ext_next(page_ext); --- linux-azure-5.8-5.8.0.orig/mm/page_vma_mapped.c +++ linux-azure-5.8-5.8.0/mm/page_vma_mapped.c @@ -227,7 +227,7 @@ if (pvmw->address >= pvmw->vma->vm_end || pvmw->address >= __vma_address(pvmw->page, pvmw->vma) + - hpage_nr_pages(pvmw->page) * PAGE_SIZE) + thp_size(pvmw->page)) return not_found(pvmw); /* Did we cross page table boundary? */ if (pvmw->address % PMD_SIZE == 0) { @@ -268,7 +268,7 @@ unsigned long start, end; start = __vma_address(page, vma); - end = start + PAGE_SIZE * (hpage_nr_pages(page) - 1); + end = start + thp_size(page) - PAGE_SIZE; if (unlikely(end < vma->vm_start || start >= vma->vm_end)) return 0; --- linux-azure-5.8-5.8.0.orig/mm/percpu.c +++ linux-azure-5.8-5.8.0/mm/percpu.c @@ -1300,7 +1300,7 @@ /* allocate chunk */ alloc_size = sizeof(struct pcpu_chunk) + - BITS_TO_LONGS(region_size >> PAGE_SHIFT); + BITS_TO_LONGS(region_size >> PAGE_SHIFT) * sizeof(unsigned long); chunk = memblock_alloc(alloc_size, SMP_CACHE_BYTES); if (!chunk) panic("%s: Failed to allocate %zu bytes\n", __func__, --- linux-azure-5.8-5.8.0.orig/mm/prfile.c +++ linux-azure-5.8-5.8.0/mm/prfile.c @@ -0,0 +1,86 @@ +// SPDX-License-Identifier: GPL-2.0 +/* + * Mainly for aufs which mmap(2) different file and wants to print different + * path in /proc/PID/maps. + * Call these functions via macros defined in linux/mm.h. + * + * See Documentation/filesystems/aufs/design/06mmap.txt + * + * Copyright (c) 2014-2020 Junjro R. Okajima + * Copyright (c) 2014 Ian Campbell + */ + +#include +#include +#include + +/* #define PRFILE_TRACE */ +static inline void prfile_trace(struct file *f, struct file *pr, + const char func[], int line, const char func2[]) +{ +#ifdef PRFILE_TRACE + if (pr) + pr_info("%s:%d: %s, %pD2\n", func, line, func2, f); +#endif +} + +void vma_do_file_update_time(struct vm_area_struct *vma, const char func[], + int line) +{ + struct file *f = vma->vm_file, *pr = vma->vm_prfile; + + prfile_trace(f, pr, func, line, __func__); + file_update_time(f); + if (f && pr) + file_update_time(pr); +} + +struct file *vma_do_pr_or_file(struct vm_area_struct *vma, const char func[], + int line) +{ + struct file *f = vma->vm_file, *pr = vma->vm_prfile; + + prfile_trace(f, pr, func, line, __func__); + return (f && pr) ? pr : f; +} + +void vma_do_get_file(struct vm_area_struct *vma, const char func[], int line) +{ + struct file *f = vma->vm_file, *pr = vma->vm_prfile; + + prfile_trace(f, pr, func, line, __func__); + get_file(f); + if (f && pr) + get_file(pr); +} + +void vma_do_fput(struct vm_area_struct *vma, const char func[], int line) +{ + struct file *f = vma->vm_file, *pr = vma->vm_prfile; + + prfile_trace(f, pr, func, line, __func__); + fput(f); + if (f && pr) + fput(pr); +} + +#ifndef CONFIG_MMU +struct file *vmr_do_pr_or_file(struct vm_region *region, const char func[], + int line) +{ + struct file *f = region->vm_file, *pr = region->vm_prfile; + + prfile_trace(f, pr, func, line, __func__); + return (f && pr) ? pr : f; +} + +void vmr_do_fput(struct vm_region *region, const char func[], int line) +{ + struct file *f = region->vm_file, *pr = region->vm_prfile; + + prfile_trace(f, pr, func, line, __func__); + fput(f); + if (f && pr) + fput(pr); +} +#endif /* !CONFIG_MMU */ --- linux-azure-5.8-5.8.0.orig/mm/process_vm_access.c +++ linux-azure-5.8-5.8.0/mm/process_vm_access.c @@ -8,6 +8,7 @@ #include #include #include +#include #include #include #include --- linux-azure-5.8-5.8.0.orig/mm/rmap.c +++ linux-azure-5.8-5.8.0/mm/rmap.c @@ -1413,9 +1413,6 @@ /* * If sharing is possible, start and end will be adjusted * accordingly. - * - * If called for a huge page, caller must hold i_mmap_rwsem - * in write mode as it is possible to call huge_pmd_unshare. */ adjust_range_if_pmd_sharing_possible(vma, &range.start, &range.end); @@ -1462,14 +1459,14 @@ subpage = page - page_to_pfn(page) + pte_pfn(*pvmw.pte); address = pvmw.address; - if (PageHuge(page)) { + if (PageHuge(page) && !PageAnon(page)) { /* * To call huge_pmd_unshare, i_mmap_rwsem must be * held in write mode. Caller needs to explicitly * do this outside rmap routines. */ VM_BUG_ON(!(flags & TTU_RMAP_LOCKED)); - if (huge_pmd_unshare(mm, &address, pvmw.pte)) { + if (huge_pmd_unshare(mm, vma, &address, pvmw.pte)) { /* * huge_pmd_unshare unmapped an entire PMD * page. There is no way of knowing exactly @@ -1511,9 +1508,14 @@ */ entry = make_migration_entry(page, 0); swp_pte = swp_entry_to_pte(entry); - if (pte_soft_dirty(pteval)) + + /* + * pteval maps a zone device page and is therefore + * a swap pte. + */ + if (pte_swp_soft_dirty(pteval)) swp_pte = pte_swp_mksoft_dirty(swp_pte); - if (pte_uffd_wp(pteval)) + if (pte_swp_uffd_wp(pteval)) swp_pte = pte_swp_mkuffd_wp(swp_pte); set_pte_at(mm, pvmw.address, pvmw.pte, swp_pte); /* @@ -1531,15 +1533,6 @@ goto discard; } - if (!(flags & TTU_IGNORE_ACCESS)) { - if (ptep_clear_flush_young_notify(vma, address, - pvmw.pte)) { - ret = false; - page_vma_mapped_walk_done(&pvmw); - break; - } - } - /* Nuke the page table entry. */ flush_cache_page(vma, address, pte_pfn(*pvmw.pte)); if (should_defer_flush(mm, flags)) { --- linux-azure-5.8-5.8.0.orig/mm/shmem.c +++ linux-azure-5.8-5.8.0/mm/shmem.c @@ -109,7 +109,7 @@ struct shmem_options { unsigned long long blocks; - unsigned long long inodes; + int inodes; struct mempolicy *mpol; kuid_t uid; kgid_t gid; @@ -127,11 +127,14 @@ return totalram_pages() / 2; } -static unsigned long shmem_default_max_inodes(void) +static int shmem_default_max_inodes(void) { unsigned long nr_pages = totalram_pages(); + unsigned long ul; - return min(nr_pages - totalhigh_pages(), nr_pages / 2); + ul = INT_MAX; + ul = min3(ul, nr_pages - totalhigh_pages(), nr_pages / 2); + return ul; } #endif @@ -1116,6 +1119,11 @@ simple_xattrs_free(&info->xattrs); WARN_ON(inode->i_blocks); + if (!sbinfo->idr_nouse && inode->i_ino) { + mutex_lock(&sbinfo->idr_lock); + idr_remove(&sbinfo->idr, inode->i_ino); + mutex_unlock(&sbinfo->idr_lock); + } shmem_free_inode(inode->i_sb); clear_inode(inode); } @@ -2222,13 +2230,13 @@ struct inode *inode; struct shmem_inode_info *info; struct shmem_sb_info *sbinfo = SHMEM_SB(sb); + int ino; if (shmem_reserve_inode(sb)) return NULL; inode = new_inode(sb); if (inode) { - inode->i_ino = get_next_ino(); inode_init_owner(inode, dir, mode); inode->i_blocks = 0; inode->i_atime = inode->i_mtime = inode->i_ctime = current_time(inode); @@ -2272,6 +2280,25 @@ break; } + if (!sbinfo->idr_nouse) { + /* inum 0 and 1 are unused */ + mutex_lock(&sbinfo->idr_lock); + ino = idr_alloc(&sbinfo->idr, inode, 2, INT_MAX, + GFP_NOFS); + if (ino > 0) { + inode->i_ino = ino; + mutex_unlock(&sbinfo->idr_lock); + __insert_inode_hash(inode, inode->i_ino); + } else { + inode->i_ino = 0; + mutex_unlock(&sbinfo->idr_lock); + iput(inode); + /* shmem_free_inode() will be called */ + inode = NULL; + } + } else + inode->i_ino = get_next_ino(); + lockdep_annotate_inode_mutex_key(inode); } else shmem_free_inode(sb); @@ -3265,8 +3292,7 @@ static int shmem_match(struct inode *ino, void *vfh) { __u32 *fh = vfh; - __u64 inum = fh[2]; - inum = (inum << 32) | fh[1]; + __u64 inum = fh[1]; return ino->i_ino == inum && fh[0] == ino->i_generation; } @@ -3286,14 +3312,11 @@ struct dentry *dentry = NULL; u64 inum; - if (fh_len < 3) + if (fh_len < 2) return NULL; - inum = fid->raw[2]; - inum = (inum << 32) | fid->raw[1]; - - inode = ilookup5(sb, (unsigned long)(inum + fid->raw[0]), - shmem_match, fid->raw); + inum = fid->raw[1]; + inode = ilookup5(sb, inum, shmem_match, fid->raw); if (inode) { dentry = shmem_find_alias(inode); iput(inode); @@ -3305,30 +3328,15 @@ static int shmem_encode_fh(struct inode *inode, __u32 *fh, int *len, struct inode *parent) { - if (*len < 3) { - *len = 3; + if (*len < 2) { + *len = 2; return FILEID_INVALID; } - if (inode_unhashed(inode)) { - /* Unfortunately insert_inode_hash is not idempotent, - * so as we hash inodes here rather than at creation - * time, we need a lock to ensure we only try - * to do it once - */ - static DEFINE_SPINLOCK(lock); - spin_lock(&lock); - if (inode_unhashed(inode)) - __insert_inode_hash(inode, - inode->i_ino + inode->i_generation); - spin_unlock(&lock); - } - fh[0] = inode->i_generation; fh[1] = inode->i_ino; - fh[2] = ((__u64)inode->i_ino) >> 32; - *len = 3; + *len = 2; return 1; } @@ -3403,7 +3411,7 @@ break; case Opt_nr_inodes: ctx->inodes = memparse(param->string, &rest); - if (*rest) + if (*rest || ctx->inodes < 2) goto bad_value; ctx->seen |= SHMEM_SEEN_INODES; break; @@ -3501,7 +3509,7 @@ { struct shmem_options *ctx = fc->fs_private; struct shmem_sb_info *sbinfo = SHMEM_SB(fc->root->d_sb); - unsigned long inodes; + int inodes; const char *err; spin_lock(&sbinfo->stat_lock); @@ -3560,7 +3568,7 @@ seq_printf(seq, ",size=%luk", sbinfo->max_blocks << (PAGE_SHIFT - 10)); if (sbinfo->max_inodes != shmem_default_max_inodes()) - seq_printf(seq, ",nr_inodes=%lu", sbinfo->max_inodes); + seq_printf(seq, ",nr_inodes=%d", sbinfo->max_inodes); if (sbinfo->mode != (0777 | S_ISVTX)) seq_printf(seq, ",mode=%03ho", sbinfo->mode); if (!uid_eq(sbinfo->uid, GLOBAL_ROOT_UID)) @@ -3584,6 +3592,8 @@ { struct shmem_sb_info *sbinfo = SHMEM_SB(sb); + if (!sbinfo->idr_nouse) + idr_destroy(&sbinfo->idr); percpu_counter_destroy(&sbinfo->used_blocks); mpol_put(sbinfo->mpol); kfree(sbinfo); @@ -3624,6 +3634,8 @@ #else sb->s_flags |= SB_NOUSER; #endif + mutex_init(&sbinfo->idr_lock); + idr_init(&sbinfo->idr); sbinfo->max_blocks = ctx->blocks; sbinfo->free_inodes = sbinfo->max_inodes = ctx->inodes; sbinfo->uid = ctx->uid; @@ -3735,6 +3747,15 @@ kmem_cache_destroy(shmem_inode_cachep); } +static __init void shmem_no_idr(struct super_block *sb) +{ + struct shmem_sb_info *sbinfo; + + sbinfo = SHMEM_SB(sb); + sbinfo->idr_nouse = true; + idr_destroy(&sbinfo->idr); +} + static const struct address_space_operations shmem_aops = { .writepage = shmem_writepage, .set_page_dirty = __set_page_dirty_no_writeback, @@ -3875,6 +3896,7 @@ pr_err("Could not kern_mount tmpfs\n"); goto out1; } + shmem_no_idr(shm_mnt->mnt_sb); #ifdef CONFIG_TRANSPARENT_HUGEPAGE if (has_transparent_hugepage() && shmem_huge > SHMEM_HUGE_DENY) @@ -4158,6 +4180,7 @@ return 0; } +EXPORT_SYMBOL_GPL(shmem_zero_setup); /** * shmem_read_mapping_page_gfp - read into page cache, using specified page allocation flags. --- linux-azure-5.8-5.8.0.orig/mm/shuffle.c +++ linux-azure-5.8-5.8.0/mm/shuffle.c @@ -58,25 +58,25 @@ * For two pages to be swapped in the shuffle, they must be free (on a * 'free_area' lru), have the same order, and have the same migratetype. */ -static struct page * __meminit shuffle_valid_page(unsigned long pfn, int order) +static struct page * __meminit shuffle_valid_page(struct zone *zone, + unsigned long pfn, int order) { - struct page *page; + struct page *page = pfn_to_online_page(pfn); /* * Given we're dealing with randomly selected pfns in a zone we * need to ask questions like... */ - /* ...is the pfn even in the memmap? */ - if (!pfn_valid_within(pfn)) + /* ... is the page managed by the buddy? */ + if (!page) return NULL; - /* ...is the pfn in a present section or a hole? */ - if (!pfn_in_present_section(pfn)) + /* ... is the page assigned to the same zone? */ + if (page_zone(page) != zone) return NULL; /* ...is the page free and currently on a free_area list? */ - page = pfn_to_page(pfn); if (!PageBuddy(page)) return NULL; @@ -123,7 +123,7 @@ * page_j randomly selected in the span @zone_start_pfn to * @spanned_pages. */ - page_i = shuffle_valid_page(i, order); + page_i = shuffle_valid_page(z, i, order); if (!page_i) continue; @@ -137,7 +137,7 @@ j = z->zone_start_pfn + ALIGN_DOWN(get_random_long() % z->spanned_pages, order_pages); - page_j = shuffle_valid_page(j, order); + page_j = shuffle_valid_page(z, j, order); if (page_j && page_j != page_i) break; } --- linux-azure-5.8-5.8.0.orig/mm/slab_common.c +++ linux-azure-5.8-5.8.0/mm/slab_common.c @@ -326,14 +326,6 @@ if (s->refcount < 0) return 1; -#ifdef CONFIG_MEMCG_KMEM - /* - * Skip the dying kmem_cache. - */ - if (s->memcg_params.dying) - return 1; -#endif - return 0; } @@ -894,15 +886,12 @@ return 0; } -static void memcg_set_kmem_cache_dying(struct kmem_cache *s) +static void flush_memcg_workqueue(struct kmem_cache *s) { spin_lock_irq(&memcg_kmem_wq_lock); s->memcg_params.dying = true; spin_unlock_irq(&memcg_kmem_wq_lock); -} -static void flush_memcg_workqueue(struct kmem_cache *s) -{ /* * SLAB and SLUB deactivate the kmem_caches through call_rcu. Make * sure all registered rcu callbacks have been invoked. @@ -934,6 +923,10 @@ { return 0; } + +static inline void flush_memcg_workqueue(struct kmem_cache *s) +{ +} #endif /* CONFIG_MEMCG_KMEM */ void slab_kmem_cache_release(struct kmem_cache *s) @@ -951,6 +944,8 @@ if (unlikely(!s)) return; + flush_memcg_workqueue(s); + get_online_cpus(); get_online_mems(); @@ -960,22 +955,6 @@ if (s->refcount) goto out_unlock; -#ifdef CONFIG_MEMCG_KMEM - memcg_set_kmem_cache_dying(s); - - mutex_unlock(&slab_mutex); - - put_online_mems(); - put_online_cpus(); - - flush_memcg_workqueue(s); - - get_online_cpus(); - get_online_mems(); - - mutex_lock(&slab_mutex); -#endif - err = shutdown_memcg_caches(s); if (!err) err = shutdown_cache(s); --- linux-azure-5.8-5.8.0.orig/mm/slub.c +++ linux-azure-5.8-5.8.0/mm/slub.c @@ -680,12 +680,12 @@ } static bool freelist_corrupted(struct kmem_cache *s, struct page *page, - void *freelist, void *nextfree) + void **freelist, void *nextfree) { if ((s->flags & SLAB_CONSISTENCY_CHECKS) && - !check_valid_pointer(s, page, nextfree)) { - object_err(s, page, freelist, "Freechain corrupt"); - freelist = NULL; + !check_valid_pointer(s, page, nextfree) && freelist) { + object_err(s, page, *freelist, "Freechain corrupt"); + *freelist = NULL; slab_fix(s, "Isolate corrupted freechain"); return true; } @@ -1425,7 +1425,7 @@ int objects) {} static bool freelist_corrupted(struct kmem_cache *s, struct page *page, - void *freelist, void *nextfree) + void **freelist, void *nextfree) { return false; } @@ -1908,7 +1908,7 @@ t = acquire_slab(s, n, page, object == NULL, &objects); if (!t) - break; + continue; /* cmpxchg raced */ available += objects; if (!object) { @@ -2117,7 +2117,7 @@ * 'freelist' is already corrupted. So isolate all objects * starting at 'freelist'. */ - if (freelist_corrupted(s, page, freelist, nextfree)) + if (freelist_corrupted(s, page, &freelist, nextfree)) break; do { @@ -2784,7 +2784,7 @@ object = c->freelist; page = c->page; - if (unlikely(!object || !node_match(page, node))) { + if (unlikely(!object || !page || !node_match(page, node))) { object = __slab_alloc(s, gfpflags, node, addr, c); stat(s, ALLOC_SLOWPATH); } else { @@ -5824,10 +5824,8 @@ s->kobj.kset = kset; err = kobject_init_and_add(&s->kobj, &slab_ktype, NULL, "%s", name); - if (err) { - kobject_put(&s->kobj); + if (err) goto out; - } err = sysfs_create_group(&s->kobj, &slab_attr_group); if (err) --- linux-azure-5.8-5.8.0.orig/mm/swap_state.c +++ linux-azure-5.8-5.8.0/mm/swap_state.c @@ -37,7 +37,7 @@ struct address_space *swapper_spaces[MAX_SWAPFILES] __read_mostly; static unsigned int nr_swapper_spaces[MAX_SWAPFILES] __read_mostly; -static bool enable_vma_readahead __read_mostly = true; +static bool enable_vma_readahead __read_mostly = false; #define SWAP_RA_WIN_SHIFT (PAGE_SHIFT / 2) #define SWAP_RA_HITS_MASK ((1UL << SWAP_RA_WIN_SHIFT) - 1) --- linux-azure-5.8-5.8.0.orig/mm/swapfile.c +++ linux-azure-5.8-5.8.0/mm/swapfile.c @@ -1040,16 +1040,18 @@ /* Only single cluster request supported */ WARN_ON_ONCE(n_goal > 1 && size == SWAPFILE_CLUSTER); + spin_lock(&swap_avail_lock); + avail_pgs = atomic_long_read(&nr_swap_pages) / size; - if (avail_pgs <= 0) + if (avail_pgs <= 0) { + spin_unlock(&swap_avail_lock); goto noswap; + } n_goal = min3((long)n_goal, (long)SWAP_BATCH, avail_pgs); atomic_long_sub(n_goal * size, &nr_swap_pages); - spin_lock(&swap_avail_lock); - start_over: node = numa_node_id(); plist_for_each_entry_safe(si, next, &swap_avail_heads[node], avail_lists[node]) { @@ -1074,7 +1076,7 @@ goto nextsi; } if (size == SWAPFILE_CLUSTER) { - if (!(si->flags & SWP_FS)) + if (si->flags & SWP_BLKDEV) n_ret = swap_alloc_cluster(si, swp_entries); } else n_ret = scan_swap_map_slots(si, SWAP_HAS_CACHE, @@ -1123,14 +1125,13 @@ spin_lock(&si->lock); if (si->flags & SWP_WRITEOK) { - atomic_long_dec(&nr_swap_pages); /* This is called for allocating swap entry, not cache */ offset = scan_swap_map(si, 1); if (offset) { + atomic_long_dec(&nr_swap_pages); spin_unlock(&si->lock); return swp_entry(type, offset); } - atomic_long_inc(&nr_swap_pages); } spin_unlock(&si->lock); fail: @@ -2861,6 +2862,7 @@ static struct swap_info_struct *alloc_swap_info(void) { struct swap_info_struct *p; + struct swap_info_struct *defer = NULL; unsigned int type; int i; @@ -2889,7 +2891,7 @@ smp_wmb(); WRITE_ONCE(nr_swapfiles, nr_swapfiles + 1); } else { - kvfree(p); + defer = p; p = swap_info[type]; /* * Do not memset this entry: a racing procfs swap_next() @@ -2902,6 +2904,7 @@ plist_node_init(&p->avail_lists[i], 0); p->flags = SWP_USED; spin_unlock(&swap_lock); + kvfree(defer); spin_lock_init(&p->lock); spin_lock_init(&p->cont_lock); @@ -3336,7 +3339,7 @@ error = inode_drain_writes(inode); if (error) { inode->i_flags &= ~S_SWAPFILE; - goto bad_swap_unlock_inode; + goto free_swap_address_space; } mutex_lock(&swapon_mutex); @@ -3361,6 +3364,8 @@ error = 0; goto out; +free_swap_address_space: + exit_swap_address_space(p->type); bad_swap_unlock_inode: inode_unlock(inode); bad_swap: --- linux-azure-5.8-5.8.0.orig/mm/vmalloc.c +++ linux-azure-5.8-5.8.0/mm/vmalloc.c @@ -102,6 +102,8 @@ if (pmd_none_or_clear_bad(pmd)) continue; vunmap_pte_range(pmd, addr, next, mask); + + cond_resched(); } while (pmd++, addr = next, addr != end); } @@ -315,6 +317,7 @@ return 0; } +EXPORT_SYMBOL(map_kernel_range_noflush); int map_kernel_range(unsigned long start, unsigned long size, pgprot_t prot, struct page **pages) @@ -2147,6 +2150,7 @@ NUMA_NO_NODE, GFP_KERNEL, __builtin_return_address(0)); } +EXPORT_SYMBOL(get_vm_area); struct vm_struct *get_vm_area_caller(unsigned long size, unsigned long flags, const void *caller) @@ -2288,7 +2292,7 @@ debug_check_no_locks_freed(area->addr, get_vm_area_size(area)); debug_check_no_obj_freed(area->addr, get_vm_area_size(area)); - kasan_poison_vmalloc(area->addr, area->size); + kasan_poison_vmalloc(area->addr, get_vm_area_size(area)); vm_remove_mappings(area, deallocate_pages); @@ -3477,11 +3481,11 @@ } static void s_stop(struct seq_file *m, void *p) - __releases(&vmap_purge_lock) __releases(&vmap_area_lock) + __releases(&vmap_purge_lock) { - mutex_unlock(&vmap_purge_lock); spin_unlock(&vmap_area_lock); + mutex_unlock(&vmap_purge_lock); } static void show_numa_info(struct seq_file *m, struct vm_struct *v) --- linux-azure-5.8-5.8.0.orig/mm/vmscan.c +++ linux-azure-5.8-5.8.0/mm/vmscan.c @@ -1076,7 +1076,6 @@ static unsigned int shrink_page_list(struct list_head *page_list, struct pglist_data *pgdat, struct scan_control *sc, - enum ttu_flags ttu_flags, struct reclaim_stat *stat, bool ignore_references) { @@ -1245,6 +1244,8 @@ if (!PageSwapCache(page)) { if (!(sc->gfp_mask & __GFP_IO)) goto keep_locked; + if (page_maybe_dma_pinned(page)) + goto keep_locked; if (PageTransHuge(page)) { /* cannot split THP, skip it */ if (!can_split_huge_page(page, NULL)) @@ -1301,7 +1302,7 @@ * processes. Try to unmap it here. */ if (page_mapped(page)) { - enum ttu_flags flags = ttu_flags | TTU_BATCH_FLUSH; + enum ttu_flags flags = TTU_BATCH_FLUSH; bool was_swapbacked = PageSwapBacked(page); if (unlikely(PageTransHuge(page))) @@ -1518,9 +1519,10 @@ } nr_reclaimed = shrink_page_list(&clean_pages, zone->zone_pgdat, &sc, - TTU_IGNORE_ACCESS, &stat, true); + &stat, true); list_splice(&clean_pages, page_list); - mod_node_page_state(zone->zone_pgdat, NR_ISOLATED_FILE, -nr_reclaimed); + mod_node_page_state(zone->zone_pgdat, NR_ISOLATED_FILE, + -(long)nr_reclaimed); /* * Since lazyfree pages are isolated from file LRU from the beginning, * they will rotate back to anonymous LRU in the end if it failed to @@ -1530,7 +1532,7 @@ mod_node_page_state(zone->zone_pgdat, NR_ISOLATED_ANON, stat.nr_lazyfree_fail); mod_node_page_state(zone->zone_pgdat, NR_ISOLATED_FILE, - -stat.nr_lazyfree_fail); + -(long)stat.nr_lazyfree_fail); return nr_reclaimed; } @@ -1961,8 +1963,7 @@ if (nr_taken == 0) return 0; - nr_reclaimed = shrink_page_list(&page_list, pgdat, sc, 0, - &stat, false); + nr_reclaimed = shrink_page_list(&page_list, pgdat, sc, &stat, false); spin_lock_irq(&pgdat->lru_lock); @@ -2133,8 +2134,7 @@ nr_reclaimed += shrink_page_list(&node_page_list, NODE_DATA(nid), - &sc, 0, - &dummy_stat, false); + &sc, &dummy_stat, false); while (!list_empty(&node_page_list)) { page = lru_to_page(&node_page_list); list_del(&page->lru); @@ -2147,8 +2147,7 @@ if (!list_empty(&node_page_list)) { nr_reclaimed += shrink_page_list(&node_page_list, NODE_DATA(nid), - &sc, 0, - &dummy_stat, false); + &sc, &dummy_stat, false); while (!list_empty(&node_page_list)) { page = lru_to_page(&node_page_list); list_del(&page->lru); @@ -2619,6 +2618,14 @@ unsigned long reclaimed; unsigned long scanned; + /* + * This loop can become CPU-bound when target memcgs + * aren't eligible for reclaim - either because they + * don't have any reclaimable pages, or because their + * memory is explicitly protected. Avoid soft lockups. + */ + cond_resched(); + switch (mem_cgroup_protected(target_memcg, memcg)) { case MEMCG_PROT_MIN: /* @@ -4089,8 +4096,13 @@ */ int node_reclaim_mode __read_mostly; -#define RECLAIM_WRITE (1<<0) /* Writeout pages during reclaim */ -#define RECLAIM_UNMAP (1<<1) /* Unmap pages during reclaim */ +/* + * These bit locations are exposed in the vm.zone_reclaim_mode sysctl + * ABI. New bits are OK, but existing bits can never change. + */ +#define RECLAIM_ZONE (1<<0) /* Run shrink_inactive_list on the zone */ +#define RECLAIM_WRITE (1<<1) /* Writeout pages during reclaim */ +#define RECLAIM_UNMAP (1<<2) /* Unmap pages during reclaim */ /* * Priority for NODE_RECLAIM. This determines the fraction of pages --- linux-azure-5.8-5.8.0.orig/mm/vmstat.c +++ linux-azure-5.8-5.8.0/mm/vmstat.c @@ -1596,12 +1596,6 @@ zone->present_pages, zone_managed_pages(zone)); - /* If unpopulated, no other information is useful */ - if (!populated_zone(zone)) { - seq_putc(m, '\n'); - return; - } - seq_printf(m, "\n protection: (%ld", zone->lowmem_reserve[0]); @@ -1609,6 +1603,12 @@ seq_printf(m, ", %ld", zone->lowmem_reserve[i]); seq_putc(m, ')'); + /* If unpopulated, no other information is useful */ + if (!populated_zone(zone)) { + seq_putc(m, '\n'); + return; + } + for (i = 0; i < NR_VM_ZONE_STAT_ITEMS; i++) seq_printf(m, "\n %-12s %lu", zone_stat_name(i), zone_page_state(zone, i)); --- linux-azure-5.8-5.8.0.orig/mm/z3fold.c +++ linux-azure-5.8-5.8.0/mm/z3fold.c @@ -90,7 +90,7 @@ * be enough slots to hold all possible variants */ unsigned long slot[BUDDY_MASK + 1]; - unsigned long pool; /* back link + flags */ + unsigned long pool; /* back link */ rwlock_t lock; }; #define HANDLE_FLAG_MASK (0x03) @@ -185,7 +185,7 @@ * handle flags, go under HANDLE_FLAG_MASK */ enum z3fold_handle_flags { - HANDLES_ORPHANED = 0, + HANDLES_NOFREE = 0, }; /* @@ -304,10 +304,9 @@ z3fold_page_unlock(zhdr); } -static inline void free_handle(unsigned long handle) +static inline void free_handle(unsigned long handle, struct z3fold_header *zhdr) { struct z3fold_buddy_slots *slots; - struct z3fold_header *zhdr; int i; bool is_free; @@ -317,22 +316,19 @@ if (WARN_ON(*(unsigned long *)handle == 0)) return; - zhdr = handle_to_z3fold_header(handle); slots = handle_to_slots(handle); write_lock(&slots->lock); *(unsigned long *)handle = 0; - if (zhdr->slots == slots) { + + if (test_bit(HANDLES_NOFREE, &slots->pool)) { write_unlock(&slots->lock); return; /* simple case, nothing else to do */ } - /* we are freeing a foreign handle if we are here */ - zhdr->foreign_handles--; + if (zhdr->slots != slots) + zhdr->foreign_handles--; + is_free = true; - if (!test_bit(HANDLES_ORPHANED, &slots->pool)) { - write_unlock(&slots->lock); - return; - } for (i = 0; i <= BUDDY_MASK; i++) { if (slots->slot[i]) { is_free = false; @@ -344,6 +340,8 @@ if (is_free) { struct z3fold_pool *pool = slots_to_pool(slots); + if (zhdr->slots == slots) + zhdr->slots = NULL; kmem_cache_free(pool->c_handle, slots); } } @@ -526,8 +524,6 @@ { struct page *page = virt_to_page(zhdr); struct z3fold_pool *pool = zhdr_to_pool(zhdr); - bool is_free = true; - int i; WARN_ON(!list_empty(&zhdr->buddy)); set_bit(PAGE_STALE, &page->private); @@ -537,21 +533,6 @@ list_del_init(&page->lru); spin_unlock(&pool->lock); - /* If there are no foreign handles, free the handles array */ - read_lock(&zhdr->slots->lock); - for (i = 0; i <= BUDDY_MASK; i++) { - if (zhdr->slots->slot[i]) { - is_free = false; - break; - } - } - if (!is_free) - set_bit(HANDLES_ORPHANED, &zhdr->slots->pool); - read_unlock(&zhdr->slots->lock); - - if (is_free) - kmem_cache_free(pool->c_handle, zhdr->slots); - if (locked) z3fold_page_unlock(zhdr); @@ -654,6 +635,28 @@ } } +static inline enum buddy get_free_buddy(struct z3fold_header *zhdr, int chunks) +{ + enum buddy bud = HEADLESS; + + if (zhdr->middle_chunks) { + if (!zhdr->first_chunks && + chunks <= zhdr->start_middle - ZHDR_CHUNKS) + bud = FIRST; + else if (!zhdr->last_chunks) + bud = LAST; + } else { + if (!zhdr->first_chunks) + bud = FIRST; + else if (!zhdr->last_chunks) + bud = LAST; + else + bud = MIDDLE; + } + + return bud; +} + static inline void *mchunk_memmove(struct z3fold_header *zhdr, unsigned short dst_chunk) { @@ -715,18 +718,7 @@ if (WARN_ON(new_zhdr == zhdr)) goto out_fail; - if (new_zhdr->first_chunks == 0) { - if (new_zhdr->middle_chunks != 0 && - chunks >= new_zhdr->start_middle) { - new_bud = LAST; - } else { - new_bud = FIRST; - } - } else if (new_zhdr->last_chunks == 0) { - new_bud = LAST; - } else if (new_zhdr->middle_chunks == 0) { - new_bud = MIDDLE; - } + new_bud = get_free_buddy(new_zhdr, chunks); q = new_zhdr; switch (new_bud) { case FIRST: @@ -848,9 +840,8 @@ return; } - if (unlikely(PageIsolated(page) || - test_bit(PAGE_CLAIMED, &page->private) || - test_bit(PAGE_STALE, &page->private))) { + if (test_bit(PAGE_STALE, &page->private) || + test_and_set_bit(PAGE_CLAIMED, &page->private)) { z3fold_page_unlock(zhdr); return; } @@ -859,13 +850,16 @@ zhdr->mapped_count == 0 && compact_single_buddy(zhdr)) { if (kref_put(&zhdr->refcount, release_z3fold_page_locked)) atomic64_dec(&pool->pages_nr); - else + else { + clear_bit(PAGE_CLAIMED, &page->private); z3fold_page_unlock(zhdr); + } return; } z3fold_compact_page(zhdr); add_to_unbuddied(pool, zhdr); + clear_bit(PAGE_CLAIMED, &page->private); z3fold_page_unlock(zhdr); } @@ -974,6 +968,9 @@ } } + if (zhdr && !zhdr->slots) + zhdr->slots = alloc_slots(pool, + can_sleep ? GFP_NOIO : GFP_ATOMIC); return zhdr; } @@ -1110,17 +1107,8 @@ retry: zhdr = __z3fold_alloc(pool, size, can_sleep); if (zhdr) { - if (zhdr->first_chunks == 0) { - if (zhdr->middle_chunks != 0 && - chunks >= zhdr->start_middle) - bud = LAST; - else - bud = FIRST; - } else if (zhdr->last_chunks == 0) - bud = LAST; - else if (zhdr->middle_chunks == 0) - bud = MIDDLE; - else { + bud = get_free_buddy(zhdr, chunks); + if (bud == HEADLESS) { if (kref_put(&zhdr->refcount, release_z3fold_page_locked)) atomic64_dec(&pool->pages_nr); @@ -1266,12 +1254,11 @@ pr_err("%s: unknown bud %d\n", __func__, bud); WARN_ON(1); put_z3fold_header(zhdr); - clear_bit(PAGE_CLAIMED, &page->private); return; } if (!page_claimed) - free_handle(handle); + free_handle(handle, zhdr); if (kref_put(&zhdr->refcount, release_z3fold_page_locked_list)) { atomic64_dec(&pool->pages_nr); return; @@ -1281,8 +1268,7 @@ z3fold_page_unlock(zhdr); return; } - if (unlikely(PageIsolated(page)) || - test_and_set_bit(NEEDS_COMPACTING, &page->private)) { + if (test_and_set_bit(NEEDS_COMPACTING, &page->private)) { put_z3fold_header(zhdr); clear_bit(PAGE_CLAIMED, &page->private); return; @@ -1346,6 +1332,10 @@ struct page *page = NULL; struct list_head *pos; unsigned long first_handle = 0, middle_handle = 0, last_handle = 0; + struct z3fold_buddy_slots slots __attribute__((aligned(SLOTS_ALIGN))); + + rwlock_init(&slots.lock); + slots.pool = (unsigned long)pool | (1 << HANDLES_NOFREE); spin_lock(&pool->lock); if (!pool->ops || !pool->ops->evict || retries == 0) { @@ -1360,35 +1350,36 @@ list_for_each_prev(pos, &pool->lru) { page = list_entry(pos, struct page, lru); - /* this bit could have been set by free, in which case - * we pass over to the next page in the pool. - */ - if (test_and_set_bit(PAGE_CLAIMED, &page->private)) { - page = NULL; - continue; - } - - if (unlikely(PageIsolated(page))) { - clear_bit(PAGE_CLAIMED, &page->private); - page = NULL; - continue; - } zhdr = page_address(page); if (test_bit(PAGE_HEADLESS, &page->private)) break; + if (kref_get_unless_zero(&zhdr->refcount) == 0) { + zhdr = NULL; + break; + } if (!z3fold_page_trylock(zhdr)) { - clear_bit(PAGE_CLAIMED, &page->private); + if (kref_put(&zhdr->refcount, + release_z3fold_page)) + atomic64_dec(&pool->pages_nr); zhdr = NULL; continue; /* can't evict at this point */ } - if (zhdr->foreign_handles) { - clear_bit(PAGE_CLAIMED, &page->private); - z3fold_page_unlock(zhdr); + + /* test_and_set_bit is of course atomic, but we still + * need to do it under page lock, otherwise checking + * that bit in __z3fold_alloc wouldn't make sense + */ + if (zhdr->foreign_handles || + test_and_set_bit(PAGE_CLAIMED, &page->private)) { + if (kref_put(&zhdr->refcount, + release_z3fold_page)) + atomic64_dec(&pool->pages_nr); + else + z3fold_page_unlock(zhdr); zhdr = NULL; continue; /* can't evict such page */ } - kref_get(&zhdr->refcount); list_del_init(&zhdr->buddy); zhdr->cpu = -1; break; @@ -1410,12 +1401,16 @@ first_handle = 0; last_handle = 0; middle_handle = 0; + memset(slots.slot, 0, sizeof(slots.slot)); if (zhdr->first_chunks) - first_handle = encode_handle(zhdr, FIRST); + first_handle = __encode_handle(zhdr, &slots, + FIRST); if (zhdr->middle_chunks) - middle_handle = encode_handle(zhdr, MIDDLE); + middle_handle = __encode_handle(zhdr, &slots, + MIDDLE); if (zhdr->last_chunks) - last_handle = encode_handle(zhdr, LAST); + last_handle = __encode_handle(zhdr, &slots, + LAST); /* * it's safe to unlock here because we hold a * reference to this page @@ -1430,19 +1425,16 @@ ret = pool->ops->evict(pool, middle_handle); if (ret) goto next; - free_handle(middle_handle); } if (first_handle) { ret = pool->ops->evict(pool, first_handle); if (ret) goto next; - free_handle(first_handle); } if (last_handle) { ret = pool->ops->evict(pool, last_handle); if (ret) goto next; - free_handle(last_handle); } next: if (test_bit(PAGE_HEADLESS, &page->private)) { @@ -1456,9 +1448,11 @@ spin_unlock(&pool->lock); clear_bit(PAGE_CLAIMED, &page->private); } else { + struct z3fold_buddy_slots *slots = zhdr->slots; z3fold_page_lock(zhdr); if (kref_put(&zhdr->refcount, release_z3fold_page_locked)) { + kmem_cache_free(pool->c_handle, slots); atomic64_dec(&pool->pages_nr); return 0; } @@ -1574,8 +1568,7 @@ VM_BUG_ON_PAGE(!PageMovable(page), page); VM_BUG_ON_PAGE(PageIsolated(page), page); - if (test_bit(PAGE_HEADLESS, &page->private) || - test_bit(PAGE_CLAIMED, &page->private)) + if (test_bit(PAGE_HEADLESS, &page->private)) return false; zhdr = page_address(page); @@ -1587,6 +1580,8 @@ if (zhdr->mapped_count != 0 || zhdr->foreign_handles != 0) goto out; + if (test_and_set_bit(PAGE_CLAIMED, &page->private)) + goto out; pool = zhdr_to_pool(zhdr); spin_lock(&pool->lock); if (!list_empty(&zhdr->buddy)) @@ -1613,16 +1608,17 @@ VM_BUG_ON_PAGE(!PageMovable(page), page); VM_BUG_ON_PAGE(!PageIsolated(page), page); + VM_BUG_ON_PAGE(!test_bit(PAGE_CLAIMED, &page->private), page); VM_BUG_ON_PAGE(!PageLocked(newpage), newpage); zhdr = page_address(page); pool = zhdr_to_pool(zhdr); - if (!z3fold_page_trylock(zhdr)) { + if (!z3fold_page_trylock(zhdr)) return -EAGAIN; - } if (zhdr->mapped_count != 0 || zhdr->foreign_handles != 0) { z3fold_page_unlock(zhdr); + clear_bit(PAGE_CLAIMED, &page->private); return -EBUSY; } if (work_pending(&zhdr->work)) { @@ -1664,6 +1660,7 @@ queue_work_on(new_zhdr->cpu, pool->compact_wq, &new_zhdr->work); page_mapcount_reset(page); + clear_bit(PAGE_CLAIMED, &page->private); put_page(page); return 0; } @@ -1687,6 +1684,7 @@ spin_lock(&pool->lock); list_add(&page->lru, &pool->lru); spin_unlock(&pool->lock); + clear_bit(PAGE_CLAIMED, &page->private); z3fold_page_unlock(zhdr); } --- linux-azure-5.8-5.8.0.orig/mm/zsmalloc.c +++ linux-azure-5.8-5.8.0/mm/zsmalloc.c @@ -293,11 +293,7 @@ }; struct mapping_area { -#ifdef CONFIG_ZSMALLOC_PGTABLE_MAPPING - struct vm_struct *vm; /* vm area for mapping object that span pages */ -#else char *vm_buf; /* copy buffer for objects that span pages */ -#endif char *vm_addr; /* address of kmap_atomic()'ed pages */ enum zs_mapmode vm_mm; /* mapping mode */ }; @@ -1113,48 +1109,6 @@ return zspage; } -#ifdef CONFIG_ZSMALLOC_PGTABLE_MAPPING -static inline int __zs_cpu_up(struct mapping_area *area) -{ - /* - * Make sure we don't leak memory if a cpu UP notification - * and zs_init() race and both call zs_cpu_up() on the same cpu - */ - if (area->vm) - return 0; - area->vm = alloc_vm_area(PAGE_SIZE * 2, NULL); - if (!area->vm) - return -ENOMEM; - return 0; -} - -static inline void __zs_cpu_down(struct mapping_area *area) -{ - if (area->vm) - free_vm_area(area->vm); - area->vm = NULL; -} - -static inline void *__zs_map_object(struct mapping_area *area, - struct page *pages[2], int off, int size) -{ - unsigned long addr = (unsigned long)area->vm->addr; - - BUG_ON(map_kernel_range(addr, PAGE_SIZE * 2, PAGE_KERNEL, pages) < 0); - area->vm_addr = area->vm->addr; - return area->vm_addr + off; -} - -static inline void __zs_unmap_object(struct mapping_area *area, - struct page *pages[2], int off, int size) -{ - unsigned long addr = (unsigned long)area->vm_addr; - - unmap_kernel_range(addr, PAGE_SIZE * 2); -} - -#else /* CONFIG_ZSMALLOC_PGTABLE_MAPPING */ - static inline int __zs_cpu_up(struct mapping_area *area) { /* @@ -1235,8 +1189,6 @@ pagefault_enable(); } -#endif /* CONFIG_ZSMALLOC_PGTABLE_MAPPING */ - static int zs_cpu_prepare(unsigned int cpu) { struct mapping_area *area; --- linux-azure-5.8-5.8.0.orig/net/8021q/vlan.c +++ linux-azure-5.8-5.8.0/net/8021q/vlan.c @@ -280,7 +280,8 @@ return 0; out_free_newdev: - if (new_dev->reg_state == NETREG_UNINITIALIZED) + if (new_dev->reg_state == NETREG_UNINITIALIZED || + new_dev->reg_state == NETREG_UNREGISTERED) free_netdev(new_dev); return err; } --- linux-azure-5.8-5.8.0.orig/net/9p/trans_fd.c +++ linux-azure-5.8-5.8.0/net/9p/trans_fd.c @@ -30,8 +30,9 @@ #include #include #include - #include /* killme */ +//#include +#include #define P9_PORT 564 #define MAX_SOCK_BUF (64*1024) @@ -1023,7 +1024,7 @@ csocket = NULL; - if (addr == NULL) + if (!addr || !strlen(addr)) return -EINVAL; if (strlen(addr) >= UNIX_PATH_MAX) { @@ -1078,6 +1079,71 @@ return 0; } +static int +p9_fd_create_vsock(struct p9_client *client, const char *addr, char *args) +{ + int err; + struct socket *csocket; + struct sockaddr_vm server_socket_addr; + struct p9_fd_opts opts; + + err = parse_opts(args, &opts); + if (err < 0) + return err; + + csocket = NULL; + + // for debugging purpose only + pr_err("%s:%s\n", __func__, addr); + // kgdb_breakpoint(); + + // create socket + err = __sock_create(current->nsproxy->net_ns, + AF_VSOCK, + SOCK_STREAM, + 0, + &csocket, 1); + if (err) { + pr_err("%s:__sock_create (%d): problem creating socket (err=%d)\n", + __func__, task_pid_nr(current), err); + return err; + } + + // server socket address information + memset((char *)&server_socket_addr, 0, sizeof(struct sockaddr_vm)); + server_socket_addr.svm_family = AF_VSOCK; + server_socket_addr.svm_reserved1 = 0; + server_socket_addr.svm_cid = VMADDR_CID_HOST; + + /* Connecting to the host's 0000pppp-facb-11e6-bd58-64006a7986d3 */ + server_socket_addr.svm_port = opts.port; + + pr_err("%s:opts.port=(%d)(0x%x)\n", __func__, opts.port, opts.port); + pr_err("%s: service_id:(hex) 0000%x%x-facb-11e6-bd58-64006a7986d3\n", + __func__, + (__u8)((opts.port & 0xff00) >> 8), + (__u8)(opts.port & 0x00ff)); + + pr_err("%s: connecting", __func__); + err = csocket->ops->connect(csocket, + (struct sockaddr *)&server_socket_addr, + sizeof(struct sockaddr_vm), 0); + if (err < 0) { + pr_err("%s:connect (%d): problem connecting socket to %s (err = %d)\n", + __func__, task_pid_nr(current), addr, err); + sock_release(csocket); + return err; + } + + pr_err("%s: open socket", __func__); + err = p9_socket_open(client, csocket); + if (err < 0) + pr_err("%s: p9_socket_open failed\n", __func__); + + pr_err("Leaving %s\n", __func__); + return err; +} + static struct p9_trans_module p9_tcp_trans = { .name = "tcp", .maxsize = MAX_SOCK_BUF, @@ -1117,6 +1183,18 @@ .owner = THIS_MODULE, }; +static struct p9_trans_module p9_vsock_trans = { + .name = "vsock", + .maxsize = MAX_SOCK_BUF, + .def = 0, + .create = p9_fd_create_vsock, + .close = p9_fd_close, + .request = p9_fd_request, + .cancel = p9_fd_cancel, + .cancelled = p9_fd_cancelled, + .owner = THIS_MODULE, +}; + /** * p9_poll_workfn - poll worker thread * @work: work queue @@ -1154,6 +1232,7 @@ v9fs_register_trans(&p9_tcp_trans); v9fs_register_trans(&p9_unix_trans); v9fs_register_trans(&p9_fd_trans); + v9fs_register_trans(&p9_vsock_trans); return 0; } @@ -1164,4 +1243,5 @@ v9fs_unregister_trans(&p9_tcp_trans); v9fs_unregister_trans(&p9_unix_trans); v9fs_unregister_trans(&p9_fd_trans); + v9fs_unregister_trans(&p9_vsock_trans); } --- linux-azure-5.8-5.8.0.orig/net/appletalk/atalk_proc.c +++ linux-azure-5.8-5.8.0/net/appletalk/atalk_proc.c @@ -229,6 +229,8 @@ sizeof(struct aarp_iter_state), NULL)) goto out; + return 0; + out: remove_proc_subtree("atalk", init_net.proc_net); return -ENOMEM; --- linux-azure-5.8-5.8.0.orig/net/batman-adv/bat_v_ogm.c +++ linux-azure-5.8-5.8.0/net/batman-adv/bat_v_ogm.c @@ -874,6 +874,12 @@ ntohl(ogm_packet->seqno), ogm_throughput, ogm_packet->ttl, ogm_packet->version, ntohs(ogm_packet->tvlv_len)); + if (batadv_is_my_mac(bat_priv, ogm_packet->orig)) { + batadv_dbg(BATADV_DBG_BATMAN, bat_priv, + "Drop packet: originator packet from ourself\n"); + return; + } + /* If the throughput metric is 0, immediately drop the packet. No need * to create orig_node / neigh_node for an unusable route. */ @@ -1001,11 +1007,6 @@ if (batadv_is_my_mac(bat_priv, ethhdr->h_source)) goto free_skb; - ogm_packet = (struct batadv_ogm2_packet *)skb->data; - - if (batadv_is_my_mac(bat_priv, ogm_packet->orig)) - goto free_skb; - batadv_inc_counter(bat_priv, BATADV_CNT_MGMT_RX); batadv_add_counter(bat_priv, BATADV_CNT_MGMT_RX_BYTES, skb->len + ETH_HLEN); --- linux-azure-5.8-5.8.0.orig/net/batman-adv/bridge_loop_avoidance.c +++ linux-azure-5.8-5.8.0/net/batman-adv/bridge_loop_avoidance.c @@ -25,6 +25,7 @@ #include #include #include +#include #include #include #include @@ -83,11 +84,12 @@ */ static inline u32 batadv_choose_backbone_gw(const void *data, u32 size) { - const struct batadv_bla_claim *claim = (struct batadv_bla_claim *)data; + const struct batadv_bla_backbone_gw *gw; u32 hash = 0; - hash = jhash(&claim->addr, sizeof(claim->addr), hash); - hash = jhash(&claim->vid, sizeof(claim->vid), hash); + gw = (struct batadv_bla_backbone_gw *)data; + hash = jhash(&gw->orig, sizeof(gw->orig), hash); + hash = jhash(&gw->vid, sizeof(gw->vid), hash); return hash % size; } @@ -437,7 +439,10 @@ batadv_add_counter(bat_priv, BATADV_CNT_RX_BYTES, skb->len + ETH_HLEN); - netif_rx(skb); + if (in_interrupt()) + netif_rx(skb); + else + netif_rx_ni(skb); out: if (primary_if) batadv_hardif_put(primary_if); @@ -1576,13 +1581,16 @@ } /** - * batadv_bla_check_bcast_duplist() - Check if a frame is in the broadcast dup. + * batadv_bla_check_duplist() - Check if a frame is in the broadcast dup. * @bat_priv: the bat priv with all the soft interface information - * @skb: contains the bcast_packet to be checked - * - * check if it is on our broadcast list. Another gateway might - * have sent the same packet because it is connected to the same backbone, - * so we have to remove this duplicate. + * @skb: contains the multicast packet to be checked + * @payload_ptr: pointer to position inside the head buffer of the skb + * marking the start of the data to be CRC'ed + * @orig: originator mac address, NULL if unknown + * + * Check if it is on our broadcast list. Another gateway might have sent the + * same packet because it is connected to the same backbone, so we have to + * remove this duplicate. * * This is performed by checking the CRC, which will tell us * with a good chance that it is the same packet. If it is furthermore @@ -1591,19 +1599,17 @@ * * Return: true if a packet is in the duplicate list, false otherwise. */ -bool batadv_bla_check_bcast_duplist(struct batadv_priv *bat_priv, - struct sk_buff *skb) +static bool batadv_bla_check_duplist(struct batadv_priv *bat_priv, + struct sk_buff *skb, u8 *payload_ptr, + const u8 *orig) { - int i, curr; - __be32 crc; - struct batadv_bcast_packet *bcast_packet; struct batadv_bcast_duplist_entry *entry; bool ret = false; - - bcast_packet = (struct batadv_bcast_packet *)skb->data; + int i, curr; + __be32 crc; /* calculate the crc ... */ - crc = batadv_skb_crc32(skb, (u8 *)(bcast_packet + 1)); + crc = batadv_skb_crc32(skb, payload_ptr); spin_lock_bh(&bat_priv->bla.bcast_duplist_lock); @@ -1622,8 +1628,21 @@ if (entry->crc != crc) continue; - if (batadv_compare_eth(entry->orig, bcast_packet->orig)) - continue; + /* are the originators both known and not anonymous? */ + if (orig && !is_zero_ether_addr(orig) && + !is_zero_ether_addr(entry->orig)) { + /* If known, check if the new frame came from + * the same originator: + * We are safe to take identical frames from the + * same orig, if known, as multiplications in + * the mesh are detected via the (orig, seqno) pair. + * So we can be a bit more liberal here and allow + * identical frames from the same orig which the source + * host might have sent multiple times on purpose. + */ + if (batadv_compare_eth(entry->orig, orig)) + continue; + } /* this entry seems to match: same crc, not too old, * and from another gw. therefore return true to forbid it. @@ -1639,7 +1658,14 @@ entry = &bat_priv->bla.bcast_duplist[curr]; entry->crc = crc; entry->entrytime = jiffies; - ether_addr_copy(entry->orig, bcast_packet->orig); + + /* known originator */ + if (orig) + ether_addr_copy(entry->orig, orig); + /* anonymous originator */ + else + eth_zero_addr(entry->orig); + bat_priv->bla.bcast_duplist_curr = curr; out: @@ -1649,6 +1675,48 @@ } /** + * batadv_bla_check_ucast_duplist() - Check if a frame is in the broadcast dup. + * @bat_priv: the bat priv with all the soft interface information + * @skb: contains the multicast packet to be checked, decapsulated from a + * unicast_packet + * + * Check if it is on our broadcast list. Another gateway might have sent the + * same packet because it is connected to the same backbone, so we have to + * remove this duplicate. + * + * Return: true if a packet is in the duplicate list, false otherwise. + */ +static bool batadv_bla_check_ucast_duplist(struct batadv_priv *bat_priv, + struct sk_buff *skb) +{ + return batadv_bla_check_duplist(bat_priv, skb, (u8 *)skb->data, NULL); +} + +/** + * batadv_bla_check_bcast_duplist() - Check if a frame is in the broadcast dup. + * @bat_priv: the bat priv with all the soft interface information + * @skb: contains the bcast_packet to be checked + * + * Check if it is on our broadcast list. Another gateway might have sent the + * same packet because it is connected to the same backbone, so we have to + * remove this duplicate. + * + * Return: true if a packet is in the duplicate list, false otherwise. + */ +bool batadv_bla_check_bcast_duplist(struct batadv_priv *bat_priv, + struct sk_buff *skb) +{ + struct batadv_bcast_packet *bcast_packet; + u8 *payload_ptr; + + bcast_packet = (struct batadv_bcast_packet *)skb->data; + payload_ptr = (u8 *)(bcast_packet + 1); + + return batadv_bla_check_duplist(bat_priv, skb, payload_ptr, + bcast_packet->orig); +} + +/** * batadv_bla_is_backbone_gw_orig() - Check if the originator is a gateway for * the VLAN identified by vid. * @bat_priv: the bat priv with all the soft interface information @@ -1809,7 +1877,7 @@ * @bat_priv: the bat priv with all the soft interface information * @skb: the frame to be checked * @vid: the VLAN ID of the frame - * @is_bcast: the packet came in a broadcast packet type. + * @packet_type: the batman packet type this frame came in * * batadv_bla_rx avoidance checks if: * * we have to race for a claim @@ -1821,7 +1889,7 @@ * further process the skb. */ bool batadv_bla_rx(struct batadv_priv *bat_priv, struct sk_buff *skb, - unsigned short vid, bool is_bcast) + unsigned short vid, int packet_type) { struct batadv_bla_backbone_gw *backbone_gw; struct ethhdr *ethhdr; @@ -1843,9 +1911,32 @@ goto handled; if (unlikely(atomic_read(&bat_priv->bla.num_requests))) - /* don't allow broadcasts while requests are in flight */ - if (is_multicast_ether_addr(ethhdr->h_dest) && is_bcast) - goto handled; + /* don't allow multicast packets while requests are in flight */ + if (is_multicast_ether_addr(ethhdr->h_dest)) + /* Both broadcast flooding or multicast-via-unicasts + * delivery might send to multiple backbone gateways + * sharing the same LAN and therefore need to coordinate + * which backbone gateway forwards into the LAN, + * by claiming the payload source address. + * + * Broadcast flooding and multicast-via-unicasts + * delivery use the following two batman packet types. + * Note: explicitly exclude BATADV_UNICAST_4ADDR, + * as the DHCP gateway feature will send explicitly + * to only one BLA gateway, so the claiming process + * should be avoided there. + */ + if (packet_type == BATADV_BCAST || + packet_type == BATADV_UNICAST) + goto handled; + + /* potential duplicates from foreign BLA backbone gateways via + * multicast-in-unicast packets + */ + if (is_multicast_ether_addr(ethhdr->h_dest) && + packet_type == BATADV_UNICAST && + batadv_bla_check_ucast_duplist(bat_priv, skb)) + goto handled; ether_addr_copy(search_claim.addr, ethhdr->h_source); search_claim.vid = vid; @@ -1880,13 +1971,14 @@ goto allow; } - /* if it is a broadcast ... */ - if (is_multicast_ether_addr(ethhdr->h_dest) && is_bcast) { + /* if it is a multicast ... */ + if (is_multicast_ether_addr(ethhdr->h_dest) && + (packet_type == BATADV_BCAST || packet_type == BATADV_UNICAST)) { /* ... drop it. the responsible gateway is in charge. * - * We need to check is_bcast because with the gateway + * We need to check packet type because with the gateway * feature, broadcasts (like DHCP requests) may be sent - * using a unicast packet type. + * using a unicast 4 address packet type. See comment above. */ goto handled; } else { --- linux-azure-5.8-5.8.0.orig/net/batman-adv/bridge_loop_avoidance.h +++ linux-azure-5.8-5.8.0/net/batman-adv/bridge_loop_avoidance.h @@ -35,7 +35,7 @@ #ifdef CONFIG_BATMAN_ADV_BLA bool batadv_bla_rx(struct batadv_priv *bat_priv, struct sk_buff *skb, - unsigned short vid, bool is_bcast); + unsigned short vid, int packet_type); bool batadv_bla_tx(struct batadv_priv *bat_priv, struct sk_buff *skb, unsigned short vid); bool batadv_bla_is_backbone_gw(struct sk_buff *skb, @@ -66,7 +66,7 @@ static inline bool batadv_bla_rx(struct batadv_priv *bat_priv, struct sk_buff *skb, unsigned short vid, - bool is_bcast) + int packet_type) { return false; } --- linux-azure-5.8-5.8.0.orig/net/batman-adv/fragmentation.c +++ linux-azure-5.8-5.8.0/net/batman-adv/fragmentation.c @@ -391,6 +391,7 @@ /** * batadv_frag_create() - create a fragment from skb + * @net_dev: outgoing device for fragment * @skb: skb to create fragment from * @frag_head: header to use in new fragment * @fragment_size: size of new fragment @@ -401,22 +402,25 @@ * * Return: the new fragment, NULL on error. */ -static struct sk_buff *batadv_frag_create(struct sk_buff *skb, +static struct sk_buff *batadv_frag_create(struct net_device *net_dev, + struct sk_buff *skb, struct batadv_frag_packet *frag_head, unsigned int fragment_size) { + unsigned int ll_reserved = LL_RESERVED_SPACE(net_dev); + unsigned int tailroom = net_dev->needed_tailroom; struct sk_buff *skb_fragment; unsigned int header_size = sizeof(*frag_head); unsigned int mtu = fragment_size + header_size; - skb_fragment = netdev_alloc_skb(NULL, mtu + ETH_HLEN); + skb_fragment = dev_alloc_skb(ll_reserved + mtu + tailroom); if (!skb_fragment) goto err; skb_fragment->priority = skb->priority; /* Eat the last mtu-bytes of the skb */ - skb_reserve(skb_fragment, header_size + ETH_HLEN); + skb_reserve(skb_fragment, ll_reserved + header_size); skb_split(skb, skb_fragment, skb->len - fragment_size); /* Add the header */ @@ -439,11 +443,12 @@ struct batadv_orig_node *orig_node, struct batadv_neigh_node *neigh_node) { + struct net_device *net_dev = neigh_node->if_incoming->net_dev; struct batadv_priv *bat_priv; struct batadv_hard_iface *primary_if = NULL; struct batadv_frag_packet frag_header; struct sk_buff *skb_fragment; - unsigned int mtu = neigh_node->if_incoming->net_dev->mtu; + unsigned int mtu = net_dev->mtu; unsigned int header_size = sizeof(frag_header); unsigned int max_fragment_size, num_fragments; int ret; @@ -503,7 +508,7 @@ goto put_primary_if; } - skb_fragment = batadv_frag_create(skb, &frag_header, + skb_fragment = batadv_frag_create(net_dev, skb, &frag_header, max_fragment_size); if (!skb_fragment) { ret = -ENOMEM; @@ -522,13 +527,14 @@ frag_header.no++; } - /* Make room for the fragment header. */ - if (batadv_skb_head_push(skb, header_size) < 0 || - pskb_expand_head(skb, header_size + ETH_HLEN, 0, GFP_ATOMIC) < 0) { - ret = -ENOMEM; + /* make sure that there is at least enough head for the fragmentation + * and ethernet headers + */ + ret = skb_cow_head(skb, ETH_HLEN + header_size); + if (ret < 0) goto put_primary_if; - } + skb_push(skb, header_size); memcpy(skb->data, &frag_header, header_size); /* Send the last fragment */ --- linux-azure-5.8-5.8.0.orig/net/batman-adv/gateway_client.c +++ linux-azure-5.8-5.8.0/net/batman-adv/gateway_client.c @@ -703,8 +703,10 @@ chaddr_offset = *header_len + BATADV_DHCP_CHADDR_OFFSET; /* store the client address if the message is going to a client */ - if (ret == BATADV_DHCP_TO_CLIENT && - pskb_may_pull(skb, chaddr_offset + ETH_ALEN)) { + if (ret == BATADV_DHCP_TO_CLIENT) { + if (!pskb_may_pull(skb, chaddr_offset + ETH_ALEN)) + return BATADV_DHCP_NO; + /* check if the DHCP packet carries an Ethernet DHCP */ p = skb->data + *header_len + BATADV_DHCP_HTYPE_OFFSET; if (*p != BATADV_DHCP_HTYPE_ETHERNET) --- linux-azure-5.8-5.8.0.orig/net/batman-adv/hard-interface.c +++ linux-azure-5.8-5.8.0/net/batman-adv/hard-interface.c @@ -554,6 +554,9 @@ needed_headroom = lower_headroom + (lower_header_len - ETH_HLEN); needed_headroom += batadv_max_header_len(); + /* fragmentation headers don't strip the unicast/... header */ + needed_headroom += sizeof(struct batadv_frag_packet); + soft_iface->needed_headroom = needed_headroom; soft_iface->needed_tailroom = lower_tailroom; } --- linux-azure-5.8-5.8.0.orig/net/batman-adv/log.c +++ linux-azure-5.8-5.8.0/net/batman-adv/log.c @@ -180,6 +180,7 @@ .read = batadv_log_read, .poll = batadv_log_poll, .llseek = no_llseek, + .owner = THIS_MODULE, }; /** --- linux-azure-5.8-5.8.0.orig/net/batman-adv/multicast.c +++ linux-azure-5.8-5.8.0/net/batman-adv/multicast.c @@ -51,6 +51,7 @@ #include #include +#include "bridge_loop_avoidance.h" #include "hard-interface.h" #include "hash.h" #include "log.h" @@ -1435,6 +1436,35 @@ } /** + * batadv_mcast_forw_send_orig() - send a multicast packet to an originator + * @bat_priv: the bat priv with all the soft interface information + * @skb: the multicast packet to send + * @vid: the vlan identifier + * @orig_node: the originator to send the packet to + * + * Return: NET_XMIT_DROP in case of error or NET_XMIT_SUCCESS otherwise. + */ +int batadv_mcast_forw_send_orig(struct batadv_priv *bat_priv, + struct sk_buff *skb, + unsigned short vid, + struct batadv_orig_node *orig_node) +{ + /* Avoid sending multicast-in-unicast packets to other BLA + * gateways - they already got the frame from the LAN side + * we share with them. + * TODO: Refactor to take BLA into account earlier, to avoid + * reducing the mcast_fanout count. + */ + if (batadv_bla_is_backbone_gw_orig(bat_priv, orig_node->orig, vid)) { + dev_kfree_skb(skb); + return NET_XMIT_SUCCESS; + } + + return batadv_send_skb_unicast(bat_priv, skb, BATADV_UNICAST, 0, + orig_node, vid); +} + +/** * batadv_mcast_forw_tt() - forwards a packet to multicast listeners * @bat_priv: the bat priv with all the soft interface information * @skb: the multicast packet to transmit @@ -1471,8 +1501,8 @@ break; } - batadv_send_skb_unicast(bat_priv, newskb, BATADV_UNICAST, 0, - orig_entry->orig_node, vid); + batadv_mcast_forw_send_orig(bat_priv, newskb, vid, + orig_entry->orig_node); } rcu_read_unlock(); @@ -1513,8 +1543,7 @@ break; } - batadv_send_skb_unicast(bat_priv, newskb, BATADV_UNICAST, 0, - orig_node, vid); + batadv_mcast_forw_send_orig(bat_priv, newskb, vid, orig_node); } rcu_read_unlock(); return ret; @@ -1551,8 +1580,7 @@ break; } - batadv_send_skb_unicast(bat_priv, newskb, BATADV_UNICAST, 0, - orig_node, vid); + batadv_mcast_forw_send_orig(bat_priv, newskb, vid, orig_node); } rcu_read_unlock(); return ret; @@ -1618,8 +1646,7 @@ break; } - batadv_send_skb_unicast(bat_priv, newskb, BATADV_UNICAST, 0, - orig_node, vid); + batadv_mcast_forw_send_orig(bat_priv, newskb, vid, orig_node); } rcu_read_unlock(); return ret; @@ -1656,8 +1683,7 @@ break; } - batadv_send_skb_unicast(bat_priv, newskb, BATADV_UNICAST, 0, - orig_node, vid); + batadv_mcast_forw_send_orig(bat_priv, newskb, vid, orig_node); } rcu_read_unlock(); return ret; --- linux-azure-5.8-5.8.0.orig/net/batman-adv/multicast.h +++ linux-azure-5.8-5.8.0/net/batman-adv/multicast.h @@ -46,6 +46,11 @@ batadv_mcast_forw_mode(struct batadv_priv *bat_priv, struct sk_buff *skb, struct batadv_orig_node **mcast_single_orig); +int batadv_mcast_forw_send_orig(struct batadv_priv *bat_priv, + struct sk_buff *skb, + unsigned short vid, + struct batadv_orig_node *orig_node); + int batadv_mcast_forw_send(struct batadv_priv *bat_priv, struct sk_buff *skb, unsigned short vid); @@ -72,6 +77,16 @@ } static inline int +batadv_mcast_forw_send_orig(struct batadv_priv *bat_priv, + struct sk_buff *skb, + unsigned short vid, + struct batadv_orig_node *orig_node) +{ + kfree_skb(skb); + return NET_XMIT_DROP; +} + +static inline int batadv_mcast_forw_send(struct batadv_priv *bat_priv, struct sk_buff *skb, unsigned short vid) { --- linux-azure-5.8-5.8.0.orig/net/batman-adv/routing.c +++ linux-azure-5.8-5.8.0/net/batman-adv/routing.c @@ -826,6 +826,10 @@ vid = batadv_get_vid(skb, hdr_len); ethhdr = (struct ethhdr *)(skb->data + hdr_len); + /* do not reroute multicast frames in a unicast header */ + if (is_multicast_ether_addr(ethhdr->h_dest)) + return true; + /* check if the destination client was served by this node and it is now * roaming. In this case, it means that the node has got a ROAM_ADV * message and that it knows the new destination in the mesh to re-route --- linux-azure-5.8-5.8.0.orig/net/batman-adv/soft-interface.c +++ linux-azure-5.8-5.8.0/net/batman-adv/soft-interface.c @@ -364,9 +364,8 @@ goto dropped; ret = batadv_send_skb_via_gw(bat_priv, skb, vid); } else if (mcast_single_orig) { - ret = batadv_send_skb_unicast(bat_priv, skb, - BATADV_UNICAST, 0, - mcast_single_orig, vid); + ret = batadv_mcast_forw_send_orig(bat_priv, skb, vid, + mcast_single_orig); } else if (forw_mode == BATADV_FORW_SOME) { ret = batadv_mcast_forw_send(bat_priv, skb, vid); } else { @@ -425,10 +424,10 @@ struct vlan_ethhdr *vhdr; struct ethhdr *ethhdr; unsigned short vid; - bool is_bcast; + int packet_type; batadv_bcast_packet = (struct batadv_bcast_packet *)skb->data; - is_bcast = (batadv_bcast_packet->packet_type == BATADV_BCAST); + packet_type = batadv_bcast_packet->packet_type; skb_pull_rcsum(skb, hdr_size); skb_reset_mac_header(skb); @@ -471,7 +470,7 @@ /* Let the bridge loop avoidance check the packet. If will * not handle it, we can safely push it up. */ - if (batadv_bla_rx(bat_priv, skb, vid, is_bcast)) + if (batadv_bla_rx(bat_priv, skb, vid, packet_type)) goto out; if (orig_node) --- linux-azure-5.8-5.8.0.orig/net/bluetooth/6lowpan.c +++ linux-azure-5.8-5.8.0/net/bluetooth/6lowpan.c @@ -50,6 +50,7 @@ /* We are listening incoming connections via this channel */ static struct l2cap_chan *listen_chan; +static DEFINE_MUTEX(set_lock); struct lowpan_peer { struct list_head list; @@ -1078,12 +1079,14 @@ enable_6lowpan = set_enable->flag; + mutex_lock(&set_lock); if (listen_chan) { l2cap_chan_close(listen_chan, 0); l2cap_chan_put(listen_chan); } listen_chan = bt_6lowpan_listen(); + mutex_unlock(&set_lock); kfree(set_enable); } @@ -1135,11 +1138,13 @@ if (ret == -EINVAL) return ret; + mutex_lock(&set_lock); if (listen_chan) { l2cap_chan_close(listen_chan, 0); l2cap_chan_put(listen_chan); listen_chan = NULL; } + mutex_unlock(&set_lock); if (conn) { struct lowpan_peer *peer; --- linux-azure-5.8-5.8.0.orig/net/bluetooth/Kconfig +++ linux-azure-5.8-5.8.0/net/bluetooth/Kconfig @@ -64,7 +64,6 @@ config BT_HS bool "Bluetooth High Speed (HS) features" depends on BT_BREDR - default y help Bluetooth High Speed includes support for off-loading Bluetooth connections via 802.11 (wifi) physical layer --- linux-azure-5.8-5.8.0.orig/net/bluetooth/a2mp.c +++ linux-azure-5.8-5.8.0/net/bluetooth/a2mp.c @@ -226,6 +226,9 @@ struct a2mp_info_req req; found = true; + + memset(&req, 0, sizeof(req)); + req.id = cl->id; a2mp_send(mgr, A2MP_GETINFO_REQ, __next_ident(mgr), sizeof(req), &req); @@ -305,6 +308,8 @@ if (!hdev || hdev->dev_type != HCI_AMP) { struct a2mp_info_rsp rsp; + memset(&rsp, 0, sizeof(rsp)); + rsp.id = req->id; rsp.status = A2MP_STATUS_INVALID_CTRL_ID; @@ -348,6 +353,8 @@ if (!ctrl) return -ENOMEM; + memset(&req, 0, sizeof(req)); + req.id = rsp->id; a2mp_send(mgr, A2MP_GETAMPASSOC_REQ, __next_ident(mgr), sizeof(req), &req); @@ -374,6 +381,8 @@ hdev = hci_dev_get(req->id); if (!hdev || hdev->amp_type == AMP_TYPE_BREDR || tmp) { struct a2mp_amp_assoc_rsp rsp; + + memset(&rsp, 0, sizeof(rsp)); rsp.id = req->id; if (tmp) { @@ -464,7 +473,6 @@ struct a2mp_cmd *hdr) { struct a2mp_physlink_req *req = (void *) skb->data; - struct a2mp_physlink_rsp rsp; struct hci_dev *hdev; struct hci_conn *hcon; @@ -475,6 +483,8 @@ BT_DBG("local_id %d, remote_id %d", req->local_id, req->remote_id); + memset(&rsp, 0, sizeof(rsp)); + rsp.local_id = req->remote_id; rsp.remote_id = req->local_id; @@ -502,6 +512,7 @@ assoc = kmemdup(req->amp_assoc, assoc_len, GFP_KERNEL); if (!assoc) { amp_ctrl_put(ctrl); + hci_dev_put(hdev); return -ENOMEM; } @@ -553,6 +564,8 @@ BT_DBG("local_id %d remote_id %d", req->local_id, req->remote_id); + memset(&rsp, 0, sizeof(rsp)); + rsp.local_id = req->remote_id; rsp.remote_id = req->local_id; rsp.status = A2MP_STATUS_SUCCESS; @@ -675,6 +688,8 @@ if (err) { struct a2mp_cmd_rej rej; + memset(&rej, 0, sizeof(rej)); + rej.reason = cpu_to_le16(0); hdr = (void *) skb->data; @@ -898,6 +913,8 @@ BT_DBG("%s mgr %p", hdev->name, mgr); + memset(&rsp, 0, sizeof(rsp)); + rsp.id = hdev->id; rsp.status = A2MP_STATUS_INVALID_CTRL_ID; @@ -995,6 +1012,8 @@ if (!mgr) return; + memset(&rsp, 0, sizeof(rsp)); + hs_hcon = hci_conn_hash_lookup_state(hdev, AMP_LINK, BT_CONNECT); if (!hs_hcon) { rsp.status = A2MP_STATUS_UNABLE_START_LINK_CREATION; @@ -1027,6 +1046,8 @@ mgr->bredr_chan = chan; + memset(&req, 0, sizeof(req)); + req.mtu = cpu_to_le16(L2CAP_A2MP_DEFAULT_MTU); req.ext_feat = 0; a2mp_send(mgr, A2MP_DISCOVER_REQ, 1, sizeof(req), &req); --- linux-azure-5.8-5.8.0.orig/net/bluetooth/hci_conn.c +++ linux-azure-5.8-5.8.0/net/bluetooth/hci_conn.c @@ -1323,6 +1323,23 @@ return 0; } + /* AES encryption is required for Level 4: + * + * BLUETOOTH CORE SPECIFICATION Version 5.2 | Vol 3, Part C + * page 1319: + * + * 128-bit equivalent strength for link and encryption keys + * required using FIPS approved algorithms (E0 not allowed, + * SAFER+ not allowed, and P-192 not allowed; encryption key + * not shortened) + */ + if (conn->sec_level == BT_SECURITY_FIPS && + !test_bit(HCI_CONN_AES_CCM, &conn->flags)) { + bt_dev_err(conn->hdev, + "Invalid security: Missing AES-CCM usage"); + return 0; + } + if (hci_conn_ssp_enabled(conn) && !test_bit(HCI_CONN_ENCRYPT, &conn->flags)) return 0; --- linux-azure-5.8-5.8.0.orig/net/bluetooth/hci_core.c +++ linux-azure-5.8-5.8.0/net/bluetooth/hci_core.c @@ -606,7 +606,8 @@ if (hdev->commands[8] & 0x01) hci_req_add(req, HCI_OP_READ_PAGE_SCAN_ACTIVITY, 0, NULL); - if (hdev->commands[18] & 0x04) + if (hdev->commands[18] & 0x04 && + !test_bit(HCI_QUIRK_BROKEN_ERR_DATA_REPORTING, &hdev->quirks)) hci_req_add(req, HCI_OP_READ_DEF_ERR_DATA_REPORTING, 0, NULL); /* Some older Broadcom based Bluetooth 1.2 controllers do not @@ -851,7 +852,8 @@ /* Set erroneous data reporting if supported to the wideband speech * setting value */ - if (hdev->commands[18] & 0x08) { + if (hdev->commands[18] & 0x08 && + !test_bit(HCI_QUIRK_BROKEN_ERR_DATA_REPORTING, &hdev->quirks)) { bool enabled = hci_dev_test_flag(hdev, HCI_WIDEBAND_SPEECH_ENABLED); @@ -1347,8 +1349,10 @@ * cleared). If it is interrupted by a signal, return -EINTR. */ if (wait_on_bit(&hdev->flags, HCI_INQUIRY, - TASK_INTERRUPTIBLE)) - return -EINTR; + TASK_INTERRUPTIBLE)) { + err = -EINTR; + goto done; + } } /* for unlimited number of responses we will use buffer with @@ -3278,6 +3282,16 @@ } } +static void hci_suspend_clear_tasks(struct hci_dev *hdev) +{ + int i; + + for (i = 0; i < __SUSPEND_NUM_TASKS; i++) + clear_bit(i, hdev->suspend_tasks); + + wake_up(&hdev->suspend_wait_q); +} + static int hci_suspend_wait_event(struct hci_dev *hdev) { #define WAKE_COND \ @@ -3289,10 +3303,10 @@ WAKE_COND, SUSPEND_NOTIFIER_TIMEOUT); if (ret == 0) { - bt_dev_dbg(hdev, "Timed out waiting for suspend"); + bt_dev_err(hdev, "Timed out waiting for suspend events"); for (i = 0; i < __SUSPEND_NUM_TASKS; ++i) { if (test_bit(i, hdev->suspend_tasks)) - bt_dev_dbg(hdev, "Bit %d is set", i); + bt_dev_err(hdev, "Suspend timeout bit: %d", i); clear_bit(i, hdev->suspend_tasks); } @@ -3360,12 +3374,15 @@ ret = hci_change_suspend_state(hdev, BT_RUNNING); } - /* If suspend failed, restore it to running */ - if (ret && action == PM_SUSPEND_PREPARE) - hci_change_suspend_state(hdev, BT_RUNNING); - done: - return ret ? notifier_from_errno(-EBUSY) : NOTIFY_STOP; + /* We always allow suspend even if suspend preparation failed and + * attempt to recover in resume. + */ + if (ret) + bt_dev_err(hdev, "Suspend notifier action (%lu) failed: %d", + action, ret); + + return NOTIFY_DONE; } /* Alloc HCI device */ @@ -3603,9 +3620,11 @@ cancel_work_sync(&hdev->power_on); - hci_dev_do_close(hdev); - + hci_suspend_clear_tasks(hdev); unregister_pm_notifier(&hdev->suspend_notifier); + cancel_work_sync(&hdev->suspend_prepare); + + hci_dev_do_close(hdev); if (!test_bit(HCI_INIT, &hdev->flags) && !hci_dev_test_flag(hdev, HCI_SETUP) && --- linux-azure-5.8-5.8.0.orig/net/bluetooth/hci_event.c +++ linux-azure-5.8-5.8.0/net/bluetooth/hci_event.c @@ -2520,7 +2520,7 @@ BT_DBG("%s num_rsp %d", hdev->name, num_rsp); - if (!num_rsp) + if (!num_rsp || skb->len < num_rsp * sizeof(*info) + 1) return; if (hci_dev_test_flag(hdev, HCI_PERIODIC_INQ)) @@ -3068,27 +3068,23 @@ clear_bit(HCI_CONN_ENCRYPT_PEND, &conn->flags); + /* Check link security requirements are met */ + if (!hci_conn_check_link_mode(conn)) + ev->status = HCI_ERROR_AUTH_FAILURE; + if (ev->status && conn->state == BT_CONNECTED) { if (ev->status == HCI_ERROR_PIN_OR_KEY_MISSING) set_bit(HCI_CONN_AUTH_FAILURE, &conn->flags); + /* Notify upper layers so they can cleanup before + * disconnecting. + */ + hci_encrypt_cfm(conn, ev->status); hci_disconnect(conn, HCI_ERROR_AUTH_FAILURE); hci_conn_drop(conn); goto unlock; } - /* In Secure Connections Only mode, do not allow any connections - * that are not encrypted with AES-CCM using a P-256 authenticated - * combination key. - */ - if (hci_dev_test_flag(hdev, HCI_SC_ONLY) && - (!test_bit(HCI_CONN_AES_CCM, &conn->flags) || - conn->key_type != HCI_LK_AUTH_COMBINATION_P256)) { - hci_connect_cfm(conn, HCI_ERROR_AUTH_FAILURE); - hci_conn_drop(conn); - goto unlock; - } - /* Try reading the encryption key size for encrypted ACL links */ if (!ev->status && ev->encrypt && conn->type == ACL_LINK) { struct hci_cp_read_enc_key_size cp; @@ -4166,6 +4162,9 @@ struct inquiry_info_with_rssi_and_pscan_mode *info; info = (void *) (skb->data + 1); + if (skb->len < num_rsp * sizeof(*info) + 1) + goto unlock; + for (; num_rsp; num_rsp--, info++) { u32 flags; @@ -4187,6 +4186,9 @@ } else { struct inquiry_info_with_rssi *info = (void *) (skb->data + 1); + if (skb->len < num_rsp * sizeof(*info) + 1) + goto unlock; + for (; num_rsp; num_rsp--, info++) { u32 flags; @@ -4207,6 +4209,7 @@ } } +unlock: hci_dev_unlock(hdev); } @@ -4382,7 +4385,7 @@ BT_DBG("%s num_rsp %d", hdev->name, num_rsp); - if (!num_rsp) + if (!num_rsp || skb->len < num_rsp * sizeof(*info) + 1) return; if (hci_dev_test_flag(hdev, HCI_PERIODIC_INQ)) @@ -4917,6 +4920,11 @@ return; } + if (!hcon->amp_mgr) { + hci_dev_unlock(hdev); + return; + } + if (ev->status) { hci_conn_del(hcon); hci_dev_unlock(hdev); @@ -5838,21 +5846,19 @@ struct sk_buff *skb) { u8 num_reports = skb->data[0]; - void *ptr = &skb->data[1]; + struct hci_ev_le_direct_adv_info *ev = (void *)&skb->data[1]; - hci_dev_lock(hdev); + if (!num_reports || skb->len < num_reports * sizeof(*ev) + 1) + return; - while (num_reports--) { - struct hci_ev_le_direct_adv_info *ev = ptr; + hci_dev_lock(hdev); + for (; num_reports; num_reports--, ev++) process_adv_report(hdev, ev->evt_type, &ev->bdaddr, ev->bdaddr_type, &ev->direct_addr, ev->direct_addr_type, ev->rssi, NULL, 0, false); - ptr += sizeof(*ev); - } - hci_dev_unlock(hdev); } --- linux-azure-5.8-5.8.0.orig/net/bluetooth/l2cap_core.c +++ linux-azure-5.8-5.8.0/net/bluetooth/l2cap_core.c @@ -7302,9 +7302,10 @@ goto drop; } - if ((chan->mode == L2CAP_MODE_ERTM || - chan->mode == L2CAP_MODE_STREAMING) && sk_filter(chan->data, skb)) - goto drop; + if (chan->ops->filter) { + if (chan->ops->filter(chan, skb)) + goto drop; + } if (!control->sframe) { int err; --- linux-azure-5.8-5.8.0.orig/net/bluetooth/l2cap_sock.c +++ linux-azure-5.8-5.8.0/net/bluetooth/l2cap_sock.c @@ -1521,8 +1521,6 @@ parent = bt_sk(sk)->parent; - sock_set_flag(sk, SOCK_ZAPPED); - switch (chan->state) { case BT_OPEN: case BT_BOUND: @@ -1549,8 +1547,11 @@ break; } - release_sock(sk); + + /* Only zap after cleanup to avoid use after free race */ + sock_set_flag(sk, SOCK_ZAPPED); + } static void l2cap_sock_state_change_cb(struct l2cap_chan *chan, int state, @@ -1663,6 +1664,19 @@ sk->sk_state_change(sk); } +static int l2cap_sock_filter(struct l2cap_chan *chan, struct sk_buff *skb) +{ + struct sock *sk = chan->data; + + switch (chan->mode) { + case L2CAP_MODE_ERTM: + case L2CAP_MODE_STREAMING: + return sk_filter(sk, skb); + } + + return 0; +} + static const struct l2cap_ops l2cap_chan_ops = { .name = "L2CAP Socket Interface", .new_connection = l2cap_sock_new_connection_cb, @@ -1678,6 +1692,7 @@ .get_sndtimeo = l2cap_sock_get_sndtimeo_cb, .get_peer_pid = l2cap_sock_get_peer_pid_cb, .alloc_skb = l2cap_sock_alloc_skb_cb, + .filter = l2cap_sock_filter, }; static void l2cap_sock_destruct(struct sock *sk) --- linux-azure-5.8-5.8.0.orig/net/bluetooth/mgmt.c +++ linux-azure-5.8-5.8.0/net/bluetooth/mgmt.c @@ -766,7 +766,8 @@ if (lmp_ssp_capable(hdev)) { settings |= MGMT_SETTING_SSP; - settings |= MGMT_SETTING_HS; + if (IS_ENABLED(CONFIG_BT_HS)) + settings |= MGMT_SETTING_HS; } if (lmp_sc_capable(hdev)) @@ -1794,6 +1795,10 @@ bt_dev_dbg(hdev, "sock %p", sk); + if (!IS_ENABLED(CONFIG_BT_HS)) + return mgmt_cmd_status(sk, hdev->id, MGMT_OP_SET_HS, + MGMT_STATUS_NOT_SUPPORTED); + status = mgmt_bredr_support(hdev); if (status) return mgmt_cmd_status(sk, hdev->id, MGMT_OP_SET_HS, status); --- linux-azure-5.8-5.8.0.orig/net/bpfilter/bpfilter_kern.c +++ linux-azure-5.8-5.8.0/net/bpfilter/bpfilter_kern.c @@ -50,6 +50,7 @@ req.len = optlen; if (!bpfilter_ops.info.pid) goto out; + pos = 0; n = kernel_write(bpfilter_ops.info.pipe_to_umh, &req, sizeof(req), &pos); if (n != sizeof(req)) { --- linux-azure-5.8-5.8.0.orig/net/bridge/br.c +++ linux-azure-5.8-5.8.0/net/bridge/br.c @@ -43,7 +43,10 @@ if (event == NETDEV_REGISTER) { /* register of bridge completed, add sysfs entries */ - br_sysfs_addbr(dev); + err = br_sysfs_addbr(dev); + if (err) + return notifier_from_errno(err); + return NOTIFY_DONE; } } --- linux-azure-5.8-5.8.0.orig/net/bridge/br_device.c +++ linux-azure-5.8-5.8.0/net/bridge/br_device.c @@ -175,6 +175,9 @@ br_stp_enable_bridge(br); br_multicast_open(br); + if (br_opt_get(br, BROPT_MULTICAST_ENABLED)) + br_multicast_join_snoopers(br); + return 0; } @@ -195,6 +198,9 @@ br_stp_disable_bridge(br); br_multicast_stop(br); + if (br_opt_get(br, BROPT_MULTICAST_ENABLED)) + br_multicast_leave_snoopers(br); + netif_stop_queue(dev); return 0; @@ -221,6 +227,7 @@ sum.rx_packets += tmp.rx_packets; } + netdev_stats_to_stats64(stats, &dev->stats); stats->tx_bytes = sum.tx_bytes; stats->tx_packets = sum.tx_packets; stats->rx_bytes = sum.rx_bytes; --- linux-azure-5.8-5.8.0.orig/net/bridge/br_fdb.c +++ linux-azure-5.8-5.8.0/net/bridge/br_fdb.c @@ -404,6 +404,8 @@ if (!do_all) if (test_bit(BR_FDB_STATIC, &f->flags) || + (test_bit(BR_FDB_ADDED_BY_EXT_LEARN, &f->flags) && + !test_bit(BR_FDB_OFFLOADED, &f->flags)) || (vid && f->key.vlan_id != vid)) continue; --- linux-azure-5.8-5.8.0.orig/net/bridge/br_mrp.c +++ linux-azure-5.8-5.8.0/net/bridge/br_mrp.c @@ -378,19 +378,22 @@ int br_mrp_set_port_state(struct net_bridge_port *p, enum br_mrp_port_state_type state) { + u32 port_state; + if (!p || !(p->flags & BR_MRP_AWARE)) return -EINVAL; spin_lock_bh(&p->br->lock); if (state == BR_MRP_PORT_STATE_FORWARDING) - p->state = BR_STATE_FORWARDING; + port_state = BR_STATE_FORWARDING; else - p->state = BR_STATE_BLOCKING; + port_state = BR_STATE_BLOCKING; + p->state = port_state; spin_unlock_bh(&p->br->lock); - br_mrp_port_switchdev_set_state(p, state); + br_mrp_port_switchdev_set_state(p, port_state); return 0; } --- linux-azure-5.8-5.8.0.orig/net/bridge/br_mrp_switchdev.c +++ linux-azure-5.8-5.8.0/net/bridge/br_mrp_switchdev.c @@ -107,13 +107,12 @@ return 0; } -int br_mrp_port_switchdev_set_state(struct net_bridge_port *p, - enum br_mrp_port_state_type state) +int br_mrp_port_switchdev_set_state(struct net_bridge_port *p, u32 state) { struct switchdev_attr attr = { .orig_dev = p->dev, - .id = SWITCHDEV_ATTR_ID_MRP_PORT_STATE, - .u.mrp_port_state = state, + .id = SWITCHDEV_ATTR_ID_PORT_STP_STATE, + .u.stp_state = state, }; int err; --- linux-azure-5.8-5.8.0.orig/net/bridge/br_multicast.c +++ linux-azure-5.8-5.8.0/net/bridge/br_multicast.c @@ -1848,7 +1848,7 @@ } #endif -static void br_multicast_join_snoopers(struct net_bridge *br) +void br_multicast_join_snoopers(struct net_bridge *br) { br_ip4_multicast_join_snoopers(br); br_ip6_multicast_join_snoopers(br); @@ -1879,7 +1879,7 @@ } #endif -static void br_multicast_leave_snoopers(struct net_bridge *br) +void br_multicast_leave_snoopers(struct net_bridge *br) { br_ip4_multicast_leave_snoopers(br); br_ip6_multicast_leave_snoopers(br); @@ -1898,9 +1898,6 @@ void br_multicast_open(struct net_bridge *br) { - if (br_opt_get(br, BROPT_MULTICAST_ENABLED)) - br_multicast_join_snoopers(br); - __br_multicast_open(br, &br->ip4_own_query); #if IS_ENABLED(CONFIG_IPV6) __br_multicast_open(br, &br->ip6_own_query); @@ -1916,9 +1913,6 @@ del_timer_sync(&br->ip6_other_query.timer); del_timer_sync(&br->ip6_own_query.timer); #endif - - if (br_opt_get(br, BROPT_MULTICAST_ENABLED)) - br_multicast_leave_snoopers(br); } void br_multicast_dev_del(struct net_bridge *br) @@ -2049,6 +2043,7 @@ int br_multicast_toggle(struct net_bridge *br, unsigned long val) { struct net_bridge_port *port; + bool change_snoopers = false; spin_lock_bh(&br->multicast_lock); if (!!br_opt_get(br, BROPT_MULTICAST_ENABLED) == !!val) @@ -2057,7 +2052,7 @@ br_mc_disabled_update(br->dev, val); br_opt_toggle(br, BROPT_MULTICAST_ENABLED, !!val); if (!br_opt_get(br, BROPT_MULTICAST_ENABLED)) { - br_multicast_leave_snoopers(br); + change_snoopers = true; goto unlock; } @@ -2068,9 +2063,30 @@ list_for_each_entry(port, &br->port_list, list) __br_multicast_enable_port(port); + change_snoopers = true; + unlock: spin_unlock_bh(&br->multicast_lock); + /* br_multicast_join_snoopers has the potential to cause + * an MLD Report/Leave to be delivered to br_multicast_rcv, + * which would in turn call br_multicast_add_group, which would + * attempt to acquire multicast_lock. This function should be + * called after the lock has been released to avoid deadlocks on + * multicast_lock. + * + * br_multicast_leave_snoopers does not have the problem since + * br_multicast_rcv first checks BROPT_MULTICAST_ENABLED, and + * returns without calling br_multicast_ipv4/6_rcv if it's not + * enabled. Moved both functions out just for symmetry. + */ + if (change_snoopers) { + if (br_opt_get(br, BROPT_MULTICAST_ENABLED)) + br_multicast_join_snoopers(br); + else + br_multicast_leave_snoopers(br); + } + return 0; } --- linux-azure-5.8-5.8.0.orig/net/bridge/br_netfilter_hooks.c +++ linux-azure-5.8-5.8.0/net/bridge/br_netfilter_hooks.c @@ -735,6 +735,11 @@ mtu_reserved = nf_bridge_mtu_reduction(skb); mtu = skb->dev->mtu; + if (nf_bridge->pkt_otherhost) { + skb->pkt_type = PACKET_OTHERHOST; + nf_bridge->pkt_otherhost = false; + } + if (nf_bridge->frag_max_size && nf_bridge->frag_max_size < mtu) mtu = nf_bridge->frag_max_size; @@ -835,8 +840,6 @@ else return NF_ACCEPT; - /* We assume any code from br_dev_queue_push_xmit onwards doesn't care - * about the value of skb->pkt_type. */ if (skb->pkt_type == PACKET_OTHERHOST) { skb->pkt_type = PACKET_HOST; nf_bridge->pkt_otherhost = true; --- linux-azure-5.8-5.8.0.orig/net/bridge/br_private.h +++ linux-azure-5.8-5.8.0/net/bridge/br_private.h @@ -741,6 +741,8 @@ void br_multicast_enable_port(struct net_bridge_port *port); void br_multicast_disable_port(struct net_bridge_port *port); void br_multicast_init(struct net_bridge *br); +void br_multicast_join_snoopers(struct net_bridge *br); +void br_multicast_leave_snoopers(struct net_bridge *br); void br_multicast_open(struct net_bridge *br); void br_multicast_stop(struct net_bridge *br); void br_multicast_dev_del(struct net_bridge *br); @@ -868,6 +870,14 @@ { } +static inline void br_multicast_join_snoopers(struct net_bridge *br) +{ +} + +static inline void br_multicast_leave_snoopers(struct net_bridge *br) +{ +} + static inline void br_multicast_open(struct net_bridge *br) { } --- linux-azure-5.8-5.8.0.orig/net/bridge/br_private_mrp.h +++ linux-azure-5.8-5.8.0/net/bridge/br_private_mrp.h @@ -55,8 +55,7 @@ int br_mrp_switchdev_send_ring_test(struct net_bridge *br, struct br_mrp *mrp, u32 interval, u8 max_miss, u32 period, bool monitor); -int br_mrp_port_switchdev_set_state(struct net_bridge_port *p, - enum br_mrp_port_state_type state); +int br_mrp_port_switchdev_set_state(struct net_bridge_port *p, u32 state); int br_mrp_port_switchdev_set_role(struct net_bridge_port *p, enum br_mrp_port_role_type role); --- linux-azure-5.8-5.8.0.orig/net/bridge/br_vlan.c +++ linux-azure-5.8-5.8.0/net/bridge/br_vlan.c @@ -266,8 +266,10 @@ } masterv = br_vlan_get_master(br, v->vid, extack); - if (!masterv) + if (!masterv) { + err = -ENOMEM; goto out_filt; + } v->brvlan = masterv; if (br_opt_get(br, BROPT_VLAN_STATS_PER_PORT)) { v->stats = netdev_alloc_pcpu_stats(struct br_vlan_stats); @@ -1288,11 +1290,13 @@ } } -static int __br_vlan_get_pvid(const struct net_device *dev, - struct net_bridge_port *p, u16 *p_pvid) +int br_vlan_get_pvid(const struct net_device *dev, u16 *p_pvid) { struct net_bridge_vlan_group *vg; + struct net_bridge_port *p; + ASSERT_RTNL(); + p = br_port_get_check_rtnl(dev); if (p) vg = nbp_vlan_group(p); else if (netif_is_bridge_master(dev)) @@ -1303,18 +1307,23 @@ *p_pvid = br_get_pvid(vg); return 0; } - -int br_vlan_get_pvid(const struct net_device *dev, u16 *p_pvid) -{ - ASSERT_RTNL(); - - return __br_vlan_get_pvid(dev, br_port_get_check_rtnl(dev), p_pvid); -} EXPORT_SYMBOL_GPL(br_vlan_get_pvid); int br_vlan_get_pvid_rcu(const struct net_device *dev, u16 *p_pvid) { - return __br_vlan_get_pvid(dev, br_port_get_check_rcu(dev), p_pvid); + struct net_bridge_vlan_group *vg; + struct net_bridge_port *p; + + p = br_port_get_check_rcu(dev); + if (p) + vg = nbp_vlan_group_rcu(p); + else if (netif_is_bridge_master(dev)) + vg = br_vlan_group_rcu(netdev_priv(dev)); + else + return -EINVAL; + + *p_pvid = br_get_pvid(vg); + return 0; } EXPORT_SYMBOL_GPL(br_vlan_get_pvid_rcu); --- linux-azure-5.8-5.8.0.orig/net/bridge/netfilter/ebt_dnat.c +++ linux-azure-5.8-5.8.0/net/bridge/netfilter/ebt_dnat.c @@ -21,7 +21,7 @@ { const struct ebt_nat_info *info = par->targinfo; - if (skb_ensure_writable(skb, ETH_ALEN)) + if (skb_ensure_writable(skb, 0)) return EBT_DROP; ether_addr_copy(eth_hdr(skb)->h_dest, info->mac); --- linux-azure-5.8-5.8.0.orig/net/bridge/netfilter/ebt_redirect.c +++ linux-azure-5.8-5.8.0/net/bridge/netfilter/ebt_redirect.c @@ -21,7 +21,7 @@ { const struct ebt_redirect_info *info = par->targinfo; - if (skb_ensure_writable(skb, ETH_ALEN)) + if (skb_ensure_writable(skb, 0)) return EBT_DROP; if (xt_hooknum(par) != NF_BR_BROUTING) --- linux-azure-5.8-5.8.0.orig/net/bridge/netfilter/ebt_snat.c +++ linux-azure-5.8-5.8.0/net/bridge/netfilter/ebt_snat.c @@ -22,7 +22,7 @@ { const struct ebt_nat_info *info = par->targinfo; - if (skb_ensure_writable(skb, ETH_ALEN * 2)) + if (skb_ensure_writable(skb, 0)) return EBT_DROP; ether_addr_copy(eth_hdr(skb)->h_source, info->mac); --- linux-azure-5.8-5.8.0.orig/net/bridge/netfilter/nf_conntrack_bridge.c +++ linux-azure-5.8-5.8.0/net/bridge/netfilter/nf_conntrack_bridge.c @@ -168,6 +168,7 @@ static unsigned int nf_ct_br_defrag6(struct sk_buff *skb, const struct nf_hook_state *state) { +#if IS_ENABLED(CONFIG_NF_DEFRAG_IPV6) u16 zone_id = NF_CT_DEFAULT_ZONE_ID; enum ip_conntrack_info ctinfo; struct br_input_skb_cb cb; @@ -180,14 +181,17 @@ br_skb_cb_save(skb, &cb, sizeof(struct inet6_skb_parm)); - err = nf_ipv6_br_defrag(state->net, skb, - IP_DEFRAG_CONNTRACK_BRIDGE_IN + zone_id); + err = nf_ct_frag6_gather(state->net, skb, + IP_DEFRAG_CONNTRACK_BRIDGE_IN + zone_id); /* queued */ if (err == -EINPROGRESS) return NF_STOLEN; br_skb_cb_restore(skb, &cb, IP6CB(skb)->frag_max_size); return err == 0 ? NF_ACCEPT : NF_DROP; +#else + return NF_ACCEPT; +#endif } static int nf_ct_br_ip_check(const struct sk_buff *skb) --- linux-azure-5.8-5.8.0.orig/net/can/af_can.c +++ linux-azure-5.8-5.8.0/net/can/af_can.c @@ -539,10 +539,13 @@ /* Check for bugs in CAN protocol implementations using af_can.c: * 'rcv' will be NULL if no matching list item was found for removal. + * As this case may potentially happen when closing a socket while + * the notifier for removing the CAN netdev is running we just print + * a warning here. */ if (!rcv) { - WARN(1, "BUG: receive list entry not found for dev %s, id %03X, mask %03X\n", - DNAME(dev), can_id, mask); + pr_warn("can: receive list entry not found for dev %s, id %03X, mask %03X\n", + DNAME(dev), can_id, mask); goto out; } @@ -675,16 +678,25 @@ { struct canfd_frame *cfd = (struct canfd_frame *)skb->data; - if (unlikely(dev->type != ARPHRD_CAN || skb->len != CAN_MTU || - cfd->len > CAN_MAX_DLEN)) { - pr_warn_once("PF_CAN: dropped non conform CAN skbuf: dev type %d, len %d, datalen %d\n", + if (unlikely(dev->type != ARPHRD_CAN || skb->len != CAN_MTU)) { + pr_warn_once("PF_CAN: dropped non conform CAN skbuff: dev type %d, len %d\n", + dev->type, skb->len); + goto free_skb; + } + + /* This check is made separately since cfd->len would be uninitialized if skb->len = 0. */ + if (unlikely(cfd->len > CAN_MAX_DLEN)) { + pr_warn_once("PF_CAN: dropped non conform CAN skbuff: dev type %d, len %d, datalen %d\n", dev->type, skb->len, cfd->len); - kfree_skb(skb); - return NET_RX_DROP; + goto free_skb; } can_receive(skb, dev); return NET_RX_SUCCESS; + +free_skb: + kfree_skb(skb); + return NET_RX_DROP; } static int canfd_rcv(struct sk_buff *skb, struct net_device *dev, @@ -692,16 +704,25 @@ { struct canfd_frame *cfd = (struct canfd_frame *)skb->data; - if (unlikely(dev->type != ARPHRD_CAN || skb->len != CANFD_MTU || - cfd->len > CANFD_MAX_DLEN)) { - pr_warn_once("PF_CAN: dropped non conform CAN FD skbuf: dev type %d, len %d, datalen %d\n", + if (unlikely(dev->type != ARPHRD_CAN || skb->len != CANFD_MTU)) { + pr_warn_once("PF_CAN: dropped non conform CAN FD skbuff: dev type %d, len %d\n", + dev->type, skb->len); + goto free_skb; + } + + /* This check is made separately since cfd->len would be uninitialized if skb->len = 0. */ + if (unlikely(cfd->len > CANFD_MAX_DLEN)) { + pr_warn_once("PF_CAN: dropped non conform CAN FD skbuff: dev type %d, len %d, datalen %d\n", dev->type, skb->len, cfd->len); - kfree_skb(skb); - return NET_RX_DROP; + goto free_skb; } can_receive(skb, dev); return NET_RX_SUCCESS; + +free_skb: + kfree_skb(skb); + return NET_RX_DROP; } /* af_can protocol functions */ --- linux-azure-5.8-5.8.0.orig/net/can/j1939/socket.c +++ linux-azure-5.8-5.8.0/net/can/j1939/socket.c @@ -398,6 +398,7 @@ spin_lock_init(&jsk->sk_session_queue_lock); INIT_LIST_HEAD(&jsk->sk_session_queue); sk->sk_destruct = j1939_sk_sock_destruct; + sk->sk_protocol = CAN_J1939; return 0; } @@ -466,6 +467,20 @@ goto out_release_sock; } + if (!ndev->ml_priv) { + netdev_warn_once(ndev, + "No CAN mid layer private allocated, please fix your driver and use alloc_candev()!\n"); + dev_put(ndev); + ret = -ENODEV; + goto out_release_sock; + } + + if (!(ndev->flags & IFF_UP)) { + dev_put(ndev); + ret = -ENETDOWN; + goto out_release_sock; + } + priv = j1939_netdev_start(ndev); dev_put(ndev); if (IS_ERR(priv)) { @@ -553,6 +568,11 @@ static void j1939_sk_sock2sockaddr_can(struct sockaddr_can *addr, const struct j1939_sock *jsk, int peer) { + /* There are two holes (2 bytes and 3 bytes) to clear to avoid + * leaking kernel information to user space. + */ + memset(addr, 0, J1939_MIN_NAMELEN); + addr->can_family = AF_CAN; addr->can_ifindex = jsk->ifindex; addr->can_addr.j1939.pgn = jsk->addr.pgn; --- linux-azure-5.8-5.8.0.orig/net/can/j1939/transport.c +++ linux-azure-5.8-5.8.0/net/can/j1939/transport.c @@ -352,17 +352,16 @@ skb_queue_tail(&session->skb_queue, skb); } -static struct sk_buff *j1939_session_skb_find(struct j1939_session *session) +static struct +sk_buff *j1939_session_skb_find_by_offset(struct j1939_session *session, + unsigned int offset_start) { struct j1939_priv *priv = session->priv; + struct j1939_sk_buff_cb *do_skcb; struct sk_buff *skb = NULL; struct sk_buff *do_skb; - struct j1939_sk_buff_cb *do_skcb; - unsigned int offset_start; unsigned long flags; - offset_start = session->pkt.dpo * 7; - spin_lock_irqsave(&session->skb_queue.lock, flags); skb_queue_walk(&session->skb_queue, do_skb) { do_skcb = j1939_skb_to_cb(do_skb); @@ -382,6 +381,14 @@ return skb; } +static struct sk_buff *j1939_session_skb_find(struct j1939_session *session) +{ + unsigned int offset_start; + + offset_start = session->pkt.dpo * 7; + return j1939_session_skb_find_by_offset(session, offset_start); +} + /* see if we are receiver * returns 0 for broadcasts, although we will receive them */ @@ -573,6 +580,7 @@ skb->dev = priv->ndev; can_skb_reserve(skb); can_skb_prv(skb)->ifindex = priv->ndev->ifindex; + can_skb_prv(skb)->skbcnt = 0; /* reserve CAN header */ skb_reserve(skb, offsetof(struct can_frame, data)); @@ -716,10 +724,12 @@ return ret; session->last_txcmd = dat[0]; - if (dat[0] == J1939_TP_CMD_BAM) + if (dat[0] == J1939_TP_CMD_BAM) { j1939_tp_schedule_txtimer(session, 50); - - j1939_tp_set_rxtimeout(session, 1250); + j1939_tp_set_rxtimeout(session, 250); + } else { + j1939_tp_set_rxtimeout(session, 1250); + } netdev_dbg(session->priv->ndev, "%s: 0x%p\n", __func__, session); @@ -766,7 +776,7 @@ int ret = 0; u8 dat[8]; - se_skb = j1939_session_skb_find(session); + se_skb = j1939_session_skb_find_by_offset(session, session->pkt.tx * 7); if (!se_skb) return -ENOBUFS; @@ -787,6 +797,18 @@ if (len > 7) len = 7; + if (offset + len > se_skb->len) { + netdev_err_once(priv->ndev, + "%s: 0x%p: requested data outside of queued buffer: offset %i, len %i, pkt.tx: %i\n", + __func__, session, skcb->offset, se_skb->len , session->pkt.tx); + return -EOVERFLOW; + } + + if (!len) { + ret = -ENOBUFS; + break; + } + memcpy(&dat[1], &tpdat[offset], len); ret = j1939_tp_tx_dat(session, dat, len + 1); if (ret < 0) { @@ -1055,9 +1077,9 @@ lockdep_assert_held(&session->priv->active_session_list_lock); session->err = j1939_xtp_abort_to_errno(priv, err); + session->state = J1939_SESSION_WAITING_ABORT; /* do not send aborts on incoming broadcasts */ if (!j1939_cb_is_broadcast(&session->skcb)) { - session->state = J1939_SESSION_WAITING_ABORT; j1939_xtp_tx_abort(priv, &session->skcb, !session->transmission, err, session->skcb.addr.pgn); @@ -1120,6 +1142,9 @@ * cleanup including propagation of the error to user space. */ break; + case -EOVERFLOW: + j1939_session_cancel(session, J1939_XTP_ABORT_ECTS_TOO_BIG); + break; case 0: session->tx_retry = 0; break; @@ -1463,6 +1488,7 @@ skb->dev = priv->ndev; can_skb_reserve(skb); can_skb_prv(skb)->ifindex = priv->ndev->ifindex; + can_skb_prv(skb)->skbcnt = 0; skcb = j1939_skb_to_cb(skb); memcpy(skcb, rel_skcb, sizeof(*skcb)); @@ -1651,8 +1677,12 @@ return; } session = j1939_xtp_rx_rts_session_new(priv, skb); - if (!session) + if (!session) { + if (cmd == J1939_TP_CMD_BAM && j1939_sk_recv_match(priv, skcb)) + netdev_info(priv->ndev, "%s: failed to create TP BAM session\n", + __func__); return; + } } else { if (j1939_xtp_rx_rts_session_active(session, skb)) { j1939_session_put(session); @@ -1661,11 +1691,15 @@ } session->last_cmd = cmd; - j1939_tp_set_rxtimeout(session, 1250); - - if (cmd != J1939_TP_CMD_BAM && !session->transmission) { - j1939_session_txtimer_cancel(session); - j1939_tp_schedule_txtimer(session, 0); + if (cmd == J1939_TP_CMD_BAM) { + if (!session->transmission) + j1939_tp_set_rxtimeout(session, 750); + } else { + if (!session->transmission) { + j1939_session_txtimer_cancel(session); + j1939_tp_schedule_txtimer(session, 0); + } + j1939_tp_set_rxtimeout(session, 1250); } j1939_session_put(session); @@ -1716,6 +1750,7 @@ int offset; int nbytes; bool final = false; + bool remain = false; bool do_cts_eoma = false; int packet; @@ -1750,7 +1785,8 @@ __func__, session); goto out_session_cancel; } - se_skb = j1939_session_skb_find(session); + + se_skb = j1939_session_skb_find_by_offset(session, packet * 7); if (!se_skb) { netdev_warn(priv->ndev, "%s: 0x%p: no skb found\n", __func__, session); @@ -1769,7 +1805,20 @@ } tpdat = se_skb->data; - memcpy(&tpdat[offset], &dat[1], nbytes); + if (!session->transmission) { + memcpy(&tpdat[offset], &dat[1], nbytes); + } else { + int err; + + err = memcmp(&tpdat[offset], &dat[1], nbytes); + if (err) + netdev_err_once(priv->ndev, + "%s: 0x%p: Data of RX-looped back packet (%*ph) doesn't match TX data (%*ph)!\n", + __func__, session, + nbytes, &dat[1], + nbytes, &tpdat[offset]); + } + if (packet == session->pkt.rx) session->pkt.rx++; @@ -1777,6 +1826,8 @@ j1939_cb_is_broadcast(&session->skcb)) { if (session->pkt.rx >= session->pkt.total) final = true; + else + remain = true; } else { /* never final, an EOMA must follow */ if (session->pkt.rx >= session->pkt.last) @@ -1784,7 +1835,11 @@ } if (final) { + j1939_session_timers_cancel(session); j1939_session_completed(session); + } else if (remain) { + if (!session->transmission) + j1939_tp_set_rxtimeout(session, 750); } else if (do_cts_eoma) { j1939_tp_set_rxtimeout(session, 1250); if (!session->transmission) @@ -1829,6 +1884,13 @@ else j1939_xtp_rx_dat_one(session, skb); } + + if (j1939_cb_is_broadcast(skcb)) { + session = j1939_session_get_by_addr(priv, &skcb->addr, false, + false); + if (session) + j1939_xtp_rx_dat_one(session, skb); + } } /* j1939 main intf */ @@ -1920,7 +1982,7 @@ if (j1939_tp_im_transmitter(skcb)) j1939_xtp_rx_rts(priv, skb, true); - if (j1939_tp_im_receiver(skcb)) + if (j1939_tp_im_receiver(skcb) || j1939_cb_is_broadcast(skcb)) j1939_xtp_rx_rts(priv, skb, false); break; @@ -1984,7 +2046,7 @@ { struct j1939_sk_buff_cb *skcb = j1939_skb_to_cb(skb); - if (!j1939_tp_im_involved_anydir(skcb)) + if (!j1939_tp_im_involved_anydir(skcb) && !j1939_cb_is_broadcast(skcb)) return 0; switch (skcb->addr.pgn) { @@ -2017,6 +2079,10 @@ if (!skb->sk) return; + if (skb->sk->sk_family != AF_CAN || + skb->sk->sk_protocol != CAN_J1939) + return; + j1939_session_list_lock(priv); session = j1939_session_get_simple(priv, skb); j1939_session_list_unlock(priv); --- linux-azure-5.8-5.8.0.orig/net/can/proc.c +++ linux-azure-5.8-5.8.0/net/can/proc.c @@ -471,6 +471,9 @@ */ void can_remove_proc(struct net *net) { + if (!net->can.proc_dir) + return; + if (net->can.pde_version) remove_proc_entry(CAN_PROC_VERSION, net->can.proc_dir); @@ -498,6 +501,5 @@ if (net->can.pde_rcvlist_sff) remove_proc_entry(CAN_PROC_RCVLIST_SFF, net->can.proc_dir); - if (net->can.proc_dir) - remove_proc_entry("can", net->proc_net); + remove_proc_entry("can", net->proc_net); } --- linux-azure-5.8-5.8.0.orig/net/ceph/messenger.c +++ linux-azure-5.8-5.8.0/net/ceph/messenger.c @@ -2998,6 +2998,11 @@ ceph_msg_put(con->in_msg); con->in_msg = NULL; } + if (con->out_msg) { + BUG_ON(con->out_msg->con != con); + ceph_msg_put(con->out_msg); + con->out_msg = NULL; + } /* Requeue anything that hasn't been acked */ list_splice_init(&con->out_sent, &con->out_queue); --- linux-azure-5.8-5.8.0.orig/net/compat.c +++ linux-azure-5.8-5.8.0/net/compat.c @@ -309,6 +309,7 @@ break; } /* Bump the usage count and install the file. */ + __receive_sock(fp[i]); fd_install(new_fd, get_file(fp[i])); } --- linux-azure-5.8-5.8.0.orig/net/core/datagram.c +++ linux-azure-5.8-5.8.0/net/core/datagram.c @@ -696,8 +696,16 @@ struct iov_iter *to, int len, __wsum *csump) { - return __skb_datagram_iter(skb, offset, to, len, true, - csum_and_copy_to_iter, csump); + struct csum_state csdata = { .csum = *csump }; + int ret; + + ret = __skb_datagram_iter(skb, offset, to, len, true, + csum_and_copy_to_iter, &csdata); + if (ret) + return ret; + + *csump = csdata.csum; + return 0; } /** --- linux-azure-5.8-5.8.0.orig/net/core/dev.c +++ linux-azure-5.8-5.8.0/net/core/dev.c @@ -4171,7 +4171,7 @@ } EXPORT_SYMBOL(dev_queue_xmit_accel); -int dev_direct_xmit(struct sk_buff *skb, u16 queue_id) +int __dev_direct_xmit(struct sk_buff *skb, u16 queue_id) { struct net_device *dev = skb->dev; struct sk_buff *orig_skb = skb; @@ -4200,17 +4200,13 @@ dev_xmit_recursion_dec(); local_bh_enable(); - - if (!dev_xmit_complete(ret)) - kfree_skb(skb); - return ret; drop: atomic_long_inc(&dev->tx_dropped); kfree_skb_list(skb); return NET_XMIT_DROP; } -EXPORT_SYMBOL(dev_direct_xmit); +EXPORT_SYMBOL(__dev_direct_xmit); /************************************************************************* * Receiver routines @@ -5647,10 +5643,11 @@ /* Queue one GRO_NORMAL SKB up for list processing. If batch size exceeded, * pass the whole batch up to the stack. */ -static void gro_normal_one(struct napi_struct *napi, struct sk_buff *skb) +static void gro_normal_one(struct napi_struct *napi, struct sk_buff *skb, int segs) { list_add_tail(&skb->list, &napi->rx_list); - if (++napi->rx_count >= gro_normal_batch) + napi->rx_count += segs; + if (napi->rx_count >= gro_normal_batch) gro_normal_list(napi); } @@ -5689,7 +5686,7 @@ } out: - gro_normal_one(napi, skb); + gro_normal_one(napi, skb, NAPI_GRO_CB(skb)->count); return NET_RX_SUCCESS; } @@ -5979,7 +5976,7 @@ { switch (ret) { case GRO_NORMAL: - gro_normal_one(napi, skb); + gro_normal_one(napi, skb, 1); break; case GRO_DROP: @@ -6067,7 +6064,7 @@ __skb_push(skb, ETH_HLEN); skb->protocol = eth_type_trans(skb, skb->dev); if (ret == GRO_NORMAL) - gro_normal_one(napi, skb); + gro_normal_one(napi, skb, 1); break; case GRO_DROP: @@ -6609,12 +6606,13 @@ netdev_err_once(dev, "%s() called with weight %d\n", __func__, weight); napi->weight = weight; - list_add(&napi->dev_list, &dev->napi_list); napi->dev = dev; #ifdef CONFIG_NETPOLL napi->poll_owner = -1; #endif set_bit(NAPI_STATE_SCHED, &napi->state); + set_bit(NAPI_STATE_NPSVC, &napi->state); + list_add_rcu(&napi->dev_list, &dev->napi_list); napi_hash_add(napi); } EXPORT_SYMBOL(netif_napi_add); @@ -6685,7 +6683,9 @@ trace_napi_poll(n, work, weight); } - WARN_ON_ONCE(work > weight); + if (unlikely(work > weight)) + pr_err_once("NAPI poll function %pS returned %d, exceeding its budget of %d.\n", + n->poll, work, weight); if (likely(work < weight)) goto out_unlock; @@ -8640,7 +8640,7 @@ if (!first.id_len) first = *ppid; else if (memcmp(&first, ppid, sizeof(*ppid))) - return -ENODATA; + return -EOPNOTSUPP; } return err; @@ -9134,6 +9134,11 @@ } } + if ((features & NETIF_F_HW_TLS_RX) && !(features & NETIF_F_RXCSUM)) { + netdev_dbg(dev, "Dropping TLS RX HW offload feature since no RXCSUM feature.\n"); + features &= ~NETIF_F_HW_TLS_RX; + } + return features; } --- linux-azure-5.8-5.8.0.orig/net/core/devlink.c +++ linux-azure-5.8-5.8.0/net/core/devlink.c @@ -579,6 +579,8 @@ if (nla_put_u32(msg, DEVLINK_ATTR_PORT_INDEX, devlink_port->index)) goto nla_put_failure; + /* Hold rtnl lock while accessing port's netdev attributes. */ + rtnl_lock(); spin_lock_bh(&devlink_port->type_lock); if (nla_put_u16(msg, DEVLINK_ATTR_PORT_TYPE, devlink_port->type)) goto nla_put_failure_type_locked; @@ -587,9 +589,10 @@ devlink_port->desired_type)) goto nla_put_failure_type_locked; if (devlink_port->type == DEVLINK_PORT_TYPE_ETH) { + struct net *net = devlink_net(devlink_port->devlink); struct net_device *netdev = devlink_port->type_dev; - if (netdev && + if (netdev && net_eq(net, dev_net(netdev)) && (nla_put_u32(msg, DEVLINK_ATTR_PORT_NETDEV_IFINDEX, netdev->ifindex) || nla_put_string(msg, DEVLINK_ATTR_PORT_NETDEV_NAME, @@ -605,6 +608,7 @@ goto nla_put_failure_type_locked; } spin_unlock_bh(&devlink_port->type_lock); + rtnl_unlock(); if (devlink_nl_port_attrs_put(msg, devlink_port)) goto nla_put_failure; @@ -613,6 +617,7 @@ nla_put_failure_type_locked: spin_unlock_bh(&devlink_port->type_lock); + rtnl_unlock(); nla_put_failure: genlmsg_cancel(msg, hdr); return -EMSGSIZE; @@ -1166,7 +1171,7 @@ err = ops->sb_occ_port_pool_get(devlink_port, devlink_sb->index, pool_index, &cur, &max); if (err && err != -EOPNOTSUPP) - return err; + goto sb_occ_get_failure; if (!err) { if (nla_put_u32(msg, DEVLINK_ATTR_SB_OCC_CUR, cur)) goto nla_put_failure; @@ -1179,8 +1184,10 @@ return 0; nla_put_failure: + err = -EMSGSIZE; +sb_occ_get_failure: genlmsg_cancel(msg, hdr); - return -EMSGSIZE; + return err; } static int devlink_nl_cmd_sb_port_pool_get_doit(struct sk_buff *skb, @@ -3601,7 +3608,7 @@ static int devlink_nl_cmd_port_param_get_doit(struct sk_buff *skb, struct genl_info *info) { - struct devlink_port *devlink_port = info->user_ptr[0]; + struct devlink_port *devlink_port = info->user_ptr[1]; struct devlink_param_item *param_item; struct sk_buff *msg; int err; @@ -3630,7 +3637,7 @@ static int devlink_nl_cmd_port_param_set_doit(struct sk_buff *skb, struct genl_info *info) { - struct devlink_port *devlink_port = info->user_ptr[0]; + struct devlink_port *devlink_port = info->user_ptr[1]; return __devlink_nl_cmd_param_set_doit(devlink_port->devlink, devlink_port->index, --- linux-azure-5.8-5.8.0.orig/net/core/filter.c +++ linux-azure-5.8-5.8.0/net/core/filter.c @@ -1464,7 +1464,7 @@ if (copy_from_user(prog->insns, fprog->filter, fsize)) { __bpf_prog_free(prog); - return ERR_PTR(-EFAULT); + return ERR_PTR(-EINVAL); } prog->len = fprog->len; @@ -4323,7 +4323,8 @@ cmpxchg(&sk->sk_pacing_status, SK_PACING_NONE, SK_PACING_NEEDED); - sk->sk_max_pacing_rate = (val == ~0U) ? ~0UL : val; + sk->sk_max_pacing_rate = (val == ~0U) ? + ~0UL : (unsigned int)val; sk->sk_pacing_rate = min(sk->sk_pacing_rate, sk->sk_max_pacing_rate); break; @@ -4774,6 +4775,7 @@ fl4.saddr = params->ipv4_src; fl4.fl4_sport = params->sport; fl4.fl4_dport = params->dport; + fl4.flowi4_multipath_hash = 0; if (flags & BPF_FIB_LOOKUP_DIRECT) { u32 tbid = l3mdev_fib_table_rcu(dev) ? : RT_TABLE_MAIN; @@ -5002,6 +5004,7 @@ { struct net *net = dev_net(skb->dev); int rc = -EAFNOSUPPORT; + bool check_mtu = false; if (plen < sizeof(*params)) return -EINVAL; @@ -5009,22 +5012,28 @@ if (flags & ~(BPF_FIB_LOOKUP_DIRECT | BPF_FIB_LOOKUP_OUTPUT)) return -EINVAL; + if (params->tot_len) + check_mtu = true; + switch (params->family) { #if IS_ENABLED(CONFIG_INET) case AF_INET: - rc = bpf_ipv4_fib_lookup(net, params, flags, false); + rc = bpf_ipv4_fib_lookup(net, params, flags, check_mtu); break; #endif #if IS_ENABLED(CONFIG_IPV6) case AF_INET6: - rc = bpf_ipv6_fib_lookup(net, params, flags, false); + rc = bpf_ipv6_fib_lookup(net, params, flags, check_mtu); break; #endif } - if (!rc) { + if (rc == BPF_FIB_LKUP_RET_SUCCESS && !check_mtu) { struct net_device *dev; + /* When tot_len isn't provided by user, check skb + * against MTU of FIB lookup resulting net_device + */ dev = dev_get_by_index_rcu(net, params->ifindex); if (!is_skb_forwardable(dev, skb)) rc = BPF_FIB_LKUP_RET_FRAG_NEEDED; @@ -6997,8 +7006,6 @@ bool indirect = BPF_MODE(orig->code) == BPF_IND; struct bpf_insn *insn = insn_buf; - /* We're guaranteed here that CTX is in R6. */ - *insn++ = BPF_MOV64_REG(BPF_REG_1, BPF_REG_CTX); if (!indirect) { *insn++ = BPF_MOV64_IMM(BPF_REG_2, orig->imm); } else { @@ -7006,6 +7013,8 @@ if (orig->imm) *insn++ = BPF_ALU64_IMM(BPF_ADD, BPF_REG_2, orig->imm); } + /* We're guaranteed here that CTX is in R6. */ + *insn++ = BPF_MOV64_REG(BPF_REG_1, BPF_REG_CTX); switch (BPF_SIZE(orig->code)) { case BPF_B: @@ -8249,15 +8258,31 @@ /* Helper macro for adding read access to tcp_sock or sock fields. */ #define SOCK_OPS_GET_FIELD(BPF_FIELD, OBJ_FIELD, OBJ) \ do { \ + int fullsock_reg = si->dst_reg, reg = BPF_REG_9, jmp = 2; \ BUILD_BUG_ON(sizeof_field(OBJ, OBJ_FIELD) > \ sizeof_field(struct bpf_sock_ops, BPF_FIELD)); \ + if (si->dst_reg == reg || si->src_reg == reg) \ + reg--; \ + if (si->dst_reg == reg || si->src_reg == reg) \ + reg--; \ + if (si->dst_reg == si->src_reg) { \ + *insn++ = BPF_STX_MEM(BPF_DW, si->src_reg, reg, \ + offsetof(struct bpf_sock_ops_kern, \ + temp)); \ + fullsock_reg = reg; \ + jmp += 2; \ + } \ *insn++ = BPF_LDX_MEM(BPF_FIELD_SIZEOF( \ struct bpf_sock_ops_kern, \ is_fullsock), \ - si->dst_reg, si->src_reg, \ + fullsock_reg, si->src_reg, \ offsetof(struct bpf_sock_ops_kern, \ is_fullsock)); \ - *insn++ = BPF_JMP_IMM(BPF_JEQ, si->dst_reg, 0, 2); \ + *insn++ = BPF_JMP_IMM(BPF_JEQ, fullsock_reg, 0, jmp); \ + if (si->dst_reg == si->src_reg) \ + *insn++ = BPF_LDX_MEM(BPF_DW, reg, si->src_reg, \ + offsetof(struct bpf_sock_ops_kern, \ + temp)); \ *insn++ = BPF_LDX_MEM(BPF_FIELD_SIZEOF( \ struct bpf_sock_ops_kern, sk),\ si->dst_reg, si->src_reg, \ @@ -8266,6 +8291,49 @@ OBJ_FIELD), \ si->dst_reg, si->dst_reg, \ offsetof(OBJ, OBJ_FIELD)); \ + if (si->dst_reg == si->src_reg) { \ + *insn++ = BPF_JMP_A(1); \ + *insn++ = BPF_LDX_MEM(BPF_DW, reg, si->src_reg, \ + offsetof(struct bpf_sock_ops_kern, \ + temp)); \ + } \ + } while (0) + +#define SOCK_OPS_GET_SK() \ + do { \ + int fullsock_reg = si->dst_reg, reg = BPF_REG_9, jmp = 1; \ + if (si->dst_reg == reg || si->src_reg == reg) \ + reg--; \ + if (si->dst_reg == reg || si->src_reg == reg) \ + reg--; \ + if (si->dst_reg == si->src_reg) { \ + *insn++ = BPF_STX_MEM(BPF_DW, si->src_reg, reg, \ + offsetof(struct bpf_sock_ops_kern, \ + temp)); \ + fullsock_reg = reg; \ + jmp += 2; \ + } \ + *insn++ = BPF_LDX_MEM(BPF_FIELD_SIZEOF( \ + struct bpf_sock_ops_kern, \ + is_fullsock), \ + fullsock_reg, si->src_reg, \ + offsetof(struct bpf_sock_ops_kern, \ + is_fullsock)); \ + *insn++ = BPF_JMP_IMM(BPF_JEQ, fullsock_reg, 0, jmp); \ + if (si->dst_reg == si->src_reg) \ + *insn++ = BPF_LDX_MEM(BPF_DW, reg, si->src_reg, \ + offsetof(struct bpf_sock_ops_kern, \ + temp)); \ + *insn++ = BPF_LDX_MEM(BPF_FIELD_SIZEOF( \ + struct bpf_sock_ops_kern, sk),\ + si->dst_reg, si->src_reg, \ + offsetof(struct bpf_sock_ops_kern, sk));\ + if (si->dst_reg == si->src_reg) { \ + *insn++ = BPF_JMP_A(1); \ + *insn++ = BPF_LDX_MEM(BPF_DW, reg, si->src_reg, \ + offsetof(struct bpf_sock_ops_kern, \ + temp)); \ + } \ } while (0) #define SOCK_OPS_GET_TCP_SOCK_FIELD(FIELD) \ @@ -8552,17 +8620,7 @@ SOCK_OPS_GET_TCP_SOCK_FIELD(bytes_acked); break; case offsetof(struct bpf_sock_ops, sk): - *insn++ = BPF_LDX_MEM(BPF_FIELD_SIZEOF( - struct bpf_sock_ops_kern, - is_fullsock), - si->dst_reg, si->src_reg, - offsetof(struct bpf_sock_ops_kern, - is_fullsock)); - *insn++ = BPF_JMP_IMM(BPF_JEQ, si->dst_reg, 0, 1); - *insn++ = BPF_LDX_MEM(BPF_FIELD_SIZEOF( - struct bpf_sock_ops_kern, sk), - si->dst_reg, si->src_reg, - offsetof(struct bpf_sock_ops_kern, sk)); + SOCK_OPS_GET_SK(); break; } return insn - insn_buf; --- linux-azure-5.8-5.8.0.orig/net/core/flow_offload.c +++ linux-azure-5.8-5.8.0/net/core/flow_offload.c @@ -381,10 +381,8 @@ list_for_each_entry_safe(this, next, &flow_block_indr_list, indr.list) { if (this->release == release && - this->indr.cb_priv == cb_priv) { + this->indr.cb_priv == cb_priv) list_move(&this->indr.list, cleanup_list); - return; - } } } --- linux-azure-5.8-5.8.0.orig/net/core/gen_estimator.c +++ linux-azure-5.8-5.8.0/net/core/gen_estimator.c @@ -80,11 +80,11 @@ u64 rate, brate; est_fetch_counters(est, &b); - brate = (b.bytes - est->last_bytes) << (10 - est->ewma_log - est->intvl_log); - brate -= (est->avbps >> est->ewma_log); + brate = (b.bytes - est->last_bytes) << (10 - est->intvl_log); + brate = (brate >> est->ewma_log) - (est->avbps >> est->ewma_log); - rate = (b.packets - est->last_packets) << (10 - est->ewma_log - est->intvl_log); - rate -= (est->avpps >> est->ewma_log); + rate = (b.packets - est->last_packets) << (10 - est->intvl_log); + rate = (rate >> est->ewma_log) - (est->avpps >> est->ewma_log); write_seqcount_begin(&est->seq); est->avbps += brate; @@ -143,6 +143,9 @@ if (parm->interval < -2 || parm->interval > 3) return -EINVAL; + if (parm->ewma_log == 0 || parm->ewma_log >= 31) + return -EINVAL; + est = kzalloc(sizeof(*est), GFP_KERNEL); if (!est) return -ENOBUFS; --- linux-azure-5.8-5.8.0.orig/net/core/lwt_bpf.c +++ linux-azure-5.8-5.8.0/net/core/lwt_bpf.c @@ -39,12 +39,11 @@ { int ret; - /* Preempt disable is needed to protect per-cpu redirect_info between - * BPF prog and skb_do_redirect(). The call_rcu in bpf_prog_put() and - * access to maps strictly require a rcu_read_lock() for protection, - * mixing with BH RCU lock doesn't work. + /* Preempt disable and BH disable are needed to protect per-cpu + * redirect_info between BPF prog and skb_do_redirect(). */ preempt_disable(); + local_bh_disable(); bpf_compute_data_pointers(skb); ret = bpf_prog_run_save_cb(lwt->prog, skb); @@ -78,6 +77,7 @@ break; } + local_bh_enable(); preempt_enable(); return ret; --- linux-azure-5.8-5.8.0.orig/net/core/neighbour.c +++ linux-azure-5.8-5.8.0/net/core/neighbour.c @@ -235,6 +235,8 @@ write_lock(&n->lock); if ((n->nud_state == NUD_FAILED) || + (tbl->is_multicast && + tbl->is_multicast(n->primary_key)) || time_after(tref, n->updated)) remove = true; write_unlock(&n->lock); @@ -1243,13 +1245,14 @@ old = neigh->nud_state; err = -EPERM; - if (!(flags & NEIGH_UPDATE_F_ADMIN) && - (old & (NUD_NOARP | NUD_PERMANENT))) - goto out; if (neigh->dead) { NL_SET_ERR_MSG(extack, "Neighbor entry is now dead"); + new = old; goto out; } + if (!(flags & NEIGH_UPDATE_F_ADMIN) && + (old & (NUD_NOARP | NUD_PERMANENT))) + goto out; ext_learn_change = neigh_update_ext_learned(neigh, flags, ¬ify); --- linux-azure-5.8-5.8.0.orig/net/core/net-sysfs.c +++ linux-azure-5.8-5.8.0/net/core/net-sysfs.c @@ -1307,8 +1307,8 @@ static ssize_t xps_cpus_show(struct netdev_queue *queue, char *buf) { + int cpu, len, ret, num_tc = 1, tc = 0; struct net_device *dev = queue->dev; - int cpu, len, num_tc = 1, tc = 0; struct xps_dev_maps *dev_maps; cpumask_var_t mask; unsigned long index; @@ -1318,22 +1318,31 @@ index = get_netdev_queue_index(queue); + if (!rtnl_trylock()) + return restart_syscall(); + if (dev->num_tc) { /* Do not allow XPS on subordinate device directly */ num_tc = dev->num_tc; - if (num_tc < 0) - return -EINVAL; + if (num_tc < 0) { + ret = -EINVAL; + goto err_rtnl_unlock; + } /* If queue belongs to subordinate dev use its map */ dev = netdev_get_tx_queue(dev, index)->sb_dev ? : dev; tc = netdev_txq_to_tc(dev, index); - if (tc < 0) - return -EINVAL; + if (tc < 0) { + ret = -EINVAL; + goto err_rtnl_unlock; + } } - if (!zalloc_cpumask_var(&mask, GFP_KERNEL)) - return -ENOMEM; + if (!zalloc_cpumask_var(&mask, GFP_KERNEL)) { + ret = -ENOMEM; + goto err_rtnl_unlock; + } rcu_read_lock(); dev_maps = rcu_dereference(dev->xps_cpus_map); @@ -1356,9 +1365,15 @@ } rcu_read_unlock(); + rtnl_unlock(); + len = snprintf(buf, PAGE_SIZE, "%*pb\n", cpumask_pr_args(mask)); free_cpumask_var(mask); return len < PAGE_SIZE ? len : -EINVAL; + +err_rtnl_unlock: + rtnl_unlock(); + return ret; } static ssize_t xps_cpus_store(struct netdev_queue *queue, @@ -1386,7 +1401,13 @@ return err; } + if (!rtnl_trylock()) { + free_cpumask_var(mask); + return restart_syscall(); + } + err = netif_set_xps_queue(dev, mask, index); + rtnl_unlock(); free_cpumask_var(mask); @@ -1398,22 +1419,29 @@ static ssize_t xps_rxqs_show(struct netdev_queue *queue, char *buf) { + int j, len, ret, num_tc = 1, tc = 0; struct net_device *dev = queue->dev; struct xps_dev_maps *dev_maps; unsigned long *mask, index; - int j, len, num_tc = 1, tc = 0; index = get_netdev_queue_index(queue); + if (!rtnl_trylock()) + return restart_syscall(); + if (dev->num_tc) { num_tc = dev->num_tc; tc = netdev_txq_to_tc(dev, index); - if (tc < 0) - return -EINVAL; + if (tc < 0) { + ret = -EINVAL; + goto err_rtnl_unlock; + } } mask = bitmap_zalloc(dev->num_rx_queues, GFP_KERNEL); - if (!mask) - return -ENOMEM; + if (!mask) { + ret = -ENOMEM; + goto err_rtnl_unlock; + } rcu_read_lock(); dev_maps = rcu_dereference(dev->xps_rxqs_map); @@ -1439,10 +1467,16 @@ out_no_maps: rcu_read_unlock(); + rtnl_unlock(); + len = bitmap_print_to_pagebuf(false, buf, mask, dev->num_rx_queues); bitmap_free(mask); return len < PAGE_SIZE ? len : -EINVAL; + +err_rtnl_unlock: + rtnl_unlock(); + return ret; } static ssize_t xps_rxqs_store(struct netdev_queue *queue, const char *buf, @@ -1468,10 +1502,17 @@ return err; } + if (!rtnl_trylock()) { + bitmap_free(mask); + return restart_syscall(); + } + cpus_read_lock(); err = __netif_set_xps_queue(dev, mask, index, true); cpus_read_unlock(); + rtnl_unlock(); + bitmap_free(mask); return err ? : len; } --- linux-azure-5.8-5.8.0.orig/net/core/net_namespace.c +++ linux-azure-5.8-5.8.0/net/core/net_namespace.c @@ -251,10 +251,10 @@ if (refcount_read(&net->count) == 0) return NETNSA_NSID_NOT_ASSIGNED; - spin_lock(&net->nsid_lock); + spin_lock_bh(&net->nsid_lock); id = __peernet2id(net, peer); if (id >= 0) { - spin_unlock(&net->nsid_lock); + spin_unlock_bh(&net->nsid_lock); return id; } @@ -264,12 +264,12 @@ * just been idr_remove()'d from there in cleanup_net(). */ if (!maybe_get_net(peer)) { - spin_unlock(&net->nsid_lock); + spin_unlock_bh(&net->nsid_lock); return NETNSA_NSID_NOT_ASSIGNED; } id = alloc_netid(net, peer, -1); - spin_unlock(&net->nsid_lock); + spin_unlock_bh(&net->nsid_lock); put_net(peer); if (id < 0) @@ -534,20 +534,20 @@ for_each_net(tmp) { int id; - spin_lock(&tmp->nsid_lock); + spin_lock_bh(&tmp->nsid_lock); id = __peernet2id(tmp, net); if (id >= 0) idr_remove(&tmp->netns_ids, id); - spin_unlock(&tmp->nsid_lock); + spin_unlock_bh(&tmp->nsid_lock); if (id >= 0) rtnl_net_notifyid(tmp, RTM_DELNSID, id, 0, NULL, GFP_KERNEL); if (tmp == last) break; } - spin_lock(&net->nsid_lock); + spin_lock_bh(&net->nsid_lock); idr_destroy(&net->netns_ids); - spin_unlock(&net->nsid_lock); + spin_unlock_bh(&net->nsid_lock); } static LLIST_HEAD(cleanup_list); @@ -760,9 +760,9 @@ return PTR_ERR(peer); } - spin_lock(&net->nsid_lock); + spin_lock_bh(&net->nsid_lock); if (__peernet2id(net, peer) >= 0) { - spin_unlock(&net->nsid_lock); + spin_unlock_bh(&net->nsid_lock); err = -EEXIST; NL_SET_BAD_ATTR(extack, nla); NL_SET_ERR_MSG(extack, @@ -771,7 +771,7 @@ } err = alloc_netid(net, peer, nsid); - spin_unlock(&net->nsid_lock); + spin_unlock_bh(&net->nsid_lock); if (err >= 0) { rtnl_net_notifyid(net, RTM_NEWNSID, err, NETLINK_CB(skb).portid, nlh, GFP_KERNEL); --- linux-azure-5.8-5.8.0.orig/net/core/netpoll.c +++ linux-azure-5.8-5.8.0/net/core/netpoll.c @@ -29,6 +29,7 @@ #include #include #include +#include #include #include #include @@ -162,7 +163,7 @@ struct napi_struct *napi; int cpu = smp_processor_id(); - list_for_each_entry(napi, &dev->napi_list, dev_list) { + list_for_each_entry_rcu(napi, &dev->napi_list, dev_list) { if (cmpxchg(&napi->poll_owner, -1, cpu) == -1) { poll_one_napi(napi); smp_store_release(&napi->poll_owner, -1); @@ -657,15 +658,15 @@ int netpoll_setup(struct netpoll *np) { - struct net_device *ndev = NULL; + struct net_device *ndev = NULL, *dev = NULL; + struct net *net = current->nsproxy->net_ns; struct in_device *in_dev; int err; rtnl_lock(); - if (np->dev_name[0]) { - struct net *net = current->nsproxy->net_ns; + if (np->dev_name[0]) ndev = __dev_get_by_name(net, np->dev_name); - } + if (!ndev) { np_err(np, "%s doesn't exist, aborting\n", np->dev_name); err = -ENODEV; @@ -673,6 +674,19 @@ } dev_hold(ndev); + /* bring up DSA management network devices up first */ + for_each_netdev(net, dev) { + if (!netdev_uses_dsa(dev)) + continue; + + err = dev_change_flags(dev, dev->flags | IFF_UP, NULL); + if (err < 0) { + np_err(np, "%s failed to open %s\n", + np->dev_name, dev->name); + goto put; + } + } + if (netdev_master_upper_dev_get(ndev)) { np_err(np, "%s is a slave device, aborting\n", np->dev_name); err = -EBUSY; --- linux-azure-5.8-5.8.0.orig/net/core/netprio_cgroup.c +++ linux-azure-5.8-5.8.0/net/core/netprio_cgroup.c @@ -236,8 +236,6 @@ struct task_struct *p; struct cgroup_subsys_state *css; - cgroup_sk_alloc_disable(); - cgroup_taskset_for_each(p, css, tset) { void *v = (void *)(unsigned long)css->id; --- linux-azure-5.8-5.8.0.orig/net/core/skbuff.c +++ linux-azure-5.8-5.8.0/net/core/skbuff.c @@ -432,7 +432,11 @@ len += NET_SKB_PAD; - if ((len > SKB_WITH_OVERHEAD(PAGE_SIZE)) || + /* If requested length is either too small or too big, + * we use kmalloc() for skb->head allocation. + */ + if (len <= SKB_WITH_OVERHEAD(1024) || + len > SKB_WITH_OVERHEAD(PAGE_SIZE) || (gfp_mask & (__GFP_DIRECT_RECLAIM | GFP_DMA))) { skb = __alloc_skb(len, gfp_mask, SKB_ALLOC_RX, NUMA_NO_NODE); if (!skb) @@ -496,13 +500,17 @@ struct sk_buff *__napi_alloc_skb(struct napi_struct *napi, unsigned int len, gfp_t gfp_mask) { - struct napi_alloc_cache *nc = this_cpu_ptr(&napi_alloc_cache); + struct napi_alloc_cache *nc; struct sk_buff *skb; void *data; len += NET_SKB_PAD + NET_IP_ALIGN; - if ((len > SKB_WITH_OVERHEAD(PAGE_SIZE)) || + /* If requested length is either too small or too big, + * we use kmalloc() for skb->head allocation. + */ + if (len <= SKB_WITH_OVERHEAD(1024) || + len > SKB_WITH_OVERHEAD(PAGE_SIZE) || (gfp_mask & (__GFP_DIRECT_RECLAIM | GFP_DMA))) { skb = __alloc_skb(len, gfp_mask, SKB_ALLOC_RX, NUMA_NO_NODE); if (!skb) @@ -510,6 +518,7 @@ goto skb_success; } + nc = this_cpu_ptr(&napi_alloc_cache); len += SKB_DATA_ALIGN(sizeof(struct skb_shared_info)); len = SKB_DATA_ALIGN(len); @@ -2016,6 +2025,12 @@ skb->csum = csum_block_sub(skb->csum, skb_checksum(skb, len, delta, 0), len); + } else if (skb->ip_summed == CHECKSUM_PARTIAL) { + int hdlen = (len > skb_headlen(skb)) ? skb_headlen(skb) : len; + int offset = skb_checksum_start_offset(skb) + skb->csum_offset; + + if (offset + sizeof(__sum16) > hdlen) + return -EINVAL; } return __pskb_trim(skb, len); } @@ -3646,7 +3661,8 @@ unsigned int delta_truesize = 0; unsigned int delta_len = 0; struct sk_buff *tail = NULL; - struct sk_buff *nskb; + struct sk_buff *nskb, *tmp; + int err; skb_push(skb, -skb_network_offset(skb) + offset); @@ -3656,11 +3672,28 @@ nskb = list_skb; list_skb = list_skb->next; + err = 0; + if (skb_shared(nskb)) { + tmp = skb_clone(nskb, GFP_ATOMIC); + if (tmp) { + consume_skb(nskb); + nskb = tmp; + err = skb_unclone(nskb, GFP_ATOMIC); + } else { + err = -ENOMEM; + } + } + if (!tail) skb->next = nskb; else tail->next = nskb; + if (unlikely(err)) { + nskb->next = list_skb; + goto err_linearize; + } + tail = nskb; delta_len += nskb->len; @@ -4554,7 +4587,7 @@ if (skb && (skb_next = skb_peek(q))) { icmp_next = is_icmp_err_skb(skb_next); if (icmp_next) - sk->sk_err = SKB_EXT_ERR(skb_next)->ee.ee_origin; + sk->sk_err = SKB_EXT_ERR(skb_next)->ee.ee_errno; } spin_unlock_irqrestore(&q->lock, flags); @@ -5419,8 +5452,8 @@ skb = skb_share_check(skb, GFP_ATOMIC); if (unlikely(!skb)) goto err_free; - - if (unlikely(!pskb_may_pull(skb, VLAN_HLEN))) + /* We may access the two bytes after vlan_hdr in vlan_set_encap_proto(). */ + if (unlikely(!pskb_may_pull(skb, VLAN_HLEN + sizeof(unsigned short)))) goto err_free; vhdr = (struct vlan_hdr *)skb->data; @@ -5621,7 +5654,7 @@ lse->label_stack_entry = mpls_lse; skb_postpush_rcsum(skb, lse, MPLS_HLEN); - if (ethernet) + if (ethernet && mac_len >= ETH_HLEN) skb_mod_eth_type(skb, eth_hdr(skb), mpls_proto); skb->protocol = mpls_proto; @@ -5661,7 +5694,7 @@ skb_reset_mac_header(skb); skb_set_network_header(skb, mac_len); - if (ethernet) { + if (ethernet && mac_len >= ETH_HLEN) { struct ethhdr *hdr; /* use mpls_hdr() to get ethertype to account for VLANs. */ @@ -5724,6 +5757,9 @@ if (unlikely(!eth_p_mpls(skb->protocol))) return -EINVAL; + if (!pskb_may_pull(skb, skb_network_offset(skb) + MPLS_HLEN)) + return -ENOMEM; + lse = be32_to_cpu(mpls_hdr(skb)->label_stack_entry); ttl = (lse & MPLS_LS_TTL_MASK) >> MPLS_LS_TTL_SHIFT; if (!--ttl) @@ -5988,9 +6024,13 @@ if (skb_has_frag_list(skb)) skb_clone_fraglist(skb); - if (k == 0) { - /* split line is in frag list */ - pskb_carve_frag_list(skb, shinfo, off - pos, gfp_mask); + /* split line is in frag list */ + if (k == 0 && pskb_carve_frag_list(skb, shinfo, off - pos, gfp_mask)) { + /* skb_frag_unref() is not needed here as shinfo->nr_frags = 0. */ + if (skb_has_frag_list(skb)) + kfree_skb_list(skb_shinfo(skb)->frag_list); + kfree(data); + return -ENOMEM; } skb_release_data(skb); --- linux-azure-5.8-5.8.0.orig/net/core/skmsg.c +++ linux-azure-5.8-5.8.0/net/core/skmsg.c @@ -170,10 +170,12 @@ struct scatterlist *sge = sk_msg_elem(msg, i); u32 len = sge->length; - if (charge) - sk_mem_uncharge(sk, len); - if (!msg->skb) + /* When the skb owns the memory we free it from consume_skb path. */ + if (!msg->skb) { + if (charge) + sk_mem_uncharge(sk, len); put_page(sg_page(sge)); + } memset(sge, 0, sizeof(*sge)); return len; } @@ -397,28 +399,38 @@ } EXPORT_SYMBOL_GPL(sk_msg_memcopy_from_iter); -static int sk_psock_skb_ingress(struct sk_psock *psock, struct sk_buff *skb) +static struct sk_msg *sk_psock_create_ingress_msg(struct sock *sk, + struct sk_buff *skb) { - struct sock *sk = psock->sk; - int copied = 0, num_sge; struct sk_msg *msg; + if (atomic_read(&sk->sk_rmem_alloc) > sk->sk_rcvbuf) + return NULL; + + if (!sk_rmem_schedule(sk, skb, skb->truesize)) + return NULL; + msg = kzalloc(sizeof(*msg), __GFP_NOWARN | GFP_ATOMIC); if (unlikely(!msg)) - return -EAGAIN; - if (!sk_rmem_schedule(sk, skb, skb->len)) { - kfree(msg); - return -EAGAIN; - } + return NULL; sk_msg_init(msg); - num_sge = skb_to_sgvec(skb, msg->sg.data, 0, skb->len); + return msg; +} + +static int sk_psock_skb_ingress_enqueue(struct sk_buff *skb, + struct sk_psock *psock, + struct sock *sk, + struct sk_msg *msg) +{ + int num_sge = skb_to_sgvec(skb, msg->sg.data, 0, skb->len); + int copied; + if (unlikely(num_sge < 0)) { kfree(msg); return num_sge; } - sk_mem_charge(sk, skb->len); copied = skb->len; msg->sg.start = 0; msg->sg.size = copied; @@ -430,6 +442,40 @@ return copied; } +static int sk_psock_skb_ingress(struct sk_psock *psock, struct sk_buff *skb) +{ + struct sock *sk = psock->sk; + struct sk_msg *msg; + + msg = sk_psock_create_ingress_msg(sk, skb); + if (!msg) + return -EAGAIN; + + /* This will transition ownership of the data from the socket where + * the BPF program was run initiating the redirect to the socket + * we will eventually receive this data on. The data will be released + * from skb_consume found in __tcp_bpf_recvmsg() after its been copied + * into user buffers. + */ + skb_set_owner_r(skb, sk); + return sk_psock_skb_ingress_enqueue(skb, psock, sk, msg); +} + +/* Puts an skb on the ingress queue of the socket already assigned to the + * skb. In this case we do not need to check memory limits or skb_set_owner_r + * because the skb is already accounted for here. + */ +static int sk_psock_skb_ingress_self(struct sk_psock *psock, struct sk_buff *skb) +{ + struct sk_msg *msg = kzalloc(sizeof(*msg), __GFP_NOWARN | GFP_ATOMIC); + struct sock *sk = psock->sk; + + if (unlikely(!msg)) + return -EAGAIN; + sk_msg_init(msg); + return sk_psock_skb_ingress_enqueue(skb, psock, sk, msg); +} + static int sk_psock_handle_skb(struct sk_psock *psock, struct sk_buff *skb, u32 off, u32 len, bool ingress) { @@ -662,15 +708,16 @@ { int ret; + /* strparser clones the skb before handing it to a upper layer, + * meaning we have the same data, but sk is NULL. We do want an + * sk pointer though when we run the BPF program. So we set it + * here and then NULL it to ensure we don't trigger a BUG_ON() + * in skb/sk operations later if kfree_skb is called with a + * valid skb->sk pointer and no destructor assigned. + */ skb->sk = psock->sk; bpf_compute_data_end_sk_skb(skb); ret = bpf_prog_run_pin_on_cpu(prog, skb); - /* strparser clones the skb before handing it to a upper layer, - * meaning skb_orphan has been called. We NULL sk on the way out - * to ensure we don't trigger a BUG_ON() in skb/sk operations - * later and because we are not charging the memory of this skb - * to any socket yet. - */ skb->sk = NULL; return ret; } @@ -749,7 +796,9 @@ static void sk_psock_verdict_apply(struct sk_psock *psock, struct sk_buff *skb, int verdict) { + struct tcp_skb_cb *tcp; struct sock *sk_other; + int err = -EIO; switch (verdict) { case __SK_PASS: @@ -758,16 +807,24 @@ !sk_psock_test_state(psock, SK_PSOCK_TX_ENABLED)) { goto out_free; } - if (atomic_read(&sk_other->sk_rmem_alloc) <= - sk_other->sk_rcvbuf) { - struct tcp_skb_cb *tcp = TCP_SKB_CB(skb); - tcp->bpf.flags |= BPF_F_INGRESS; + tcp = TCP_SKB_CB(skb); + tcp->bpf.flags |= BPF_F_INGRESS; + + /* If the queue is empty then we can submit directly + * into the msg queue. If its not empty we have to + * queue work otherwise we may get OOO data. Otherwise, + * if sk_psock_skb_ingress errors will be handled by + * retrying later from workqueue. + */ + if (skb_queue_empty(&psock->ingress_skb)) { + err = sk_psock_skb_ingress_self(psock, skb); + } + if (err < 0) { skb_queue_tail(&psock->ingress_skb, skb); schedule_work(&psock->work); - break; } - goto out_free; + break; case __SK_REDIRECT: sk_psock_skb_redirect(skb); break; @@ -795,7 +852,6 @@ } prog = READ_ONCE(psock->progs.skb_verdict); if (likely(prog)) { - skb_orphan(skb); tcp_skb_bpf_redirect_clear(skb); ret = sk_psock_bpf_run(psock, prog, skb); ret = sk_psock_map_verd(ret, tcp_skb_bpf_redirect_fetch(skb)); --- linux-azure-5.8-5.8.0.orig/net/core/sock.c +++ linux-azure-5.8-5.8.0/net/core/sock.c @@ -777,7 +777,6 @@ } else { sock_reset_flag(sk, SOCK_RCVTSTAMP); sock_reset_flag(sk, SOCK_RCVTSTAMPNS); - sock_reset_flag(sk, SOCK_TSTAMP_NEW); } } @@ -1007,8 +1006,6 @@ __sock_set_timestamps(sk, valbool, true, true); break; case SO_TIMESTAMPING_NEW: - sock_set_flag(sk, SOCK_TSTAMP_NEW); - /* fall through */ case SO_TIMESTAMPING_OLD: if (val & ~SOF_TIMESTAMPING_MASK) { ret = -EINVAL; @@ -1037,16 +1034,14 @@ } sk->sk_tsflags = val; + sock_valbool_flag(sk, SOCK_TSTAMP_NEW, optname == SO_TIMESTAMPING_NEW); + if (val & SOF_TIMESTAMPING_RX_SOFTWARE) sock_enable_timestamp(sk, SOCK_TIMESTAMPING_RX_SOFTWARE); - else { - if (optname == SO_TIMESTAMPING_NEW) - sock_reset_flag(sk, SOCK_TSTAMP_NEW); - + else sock_disable_timestamp(sk, (1UL << SOCK_TIMESTAMPING_RX_SOFTWARE)); - } break; case SO_RCVLOWAT: @@ -1189,7 +1184,7 @@ case SO_MAX_PACING_RATE: { - unsigned long ulval = (val == ~0U) ? ~0UL : val; + unsigned long ulval = (val == ~0U) ? ~0UL : (unsigned int)val; if (sizeof(ulval) != sizeof(val) && optlen >= sizeof(ulval) && @@ -2842,6 +2837,27 @@ } EXPORT_SYMBOL(sock_no_mmap); +/* + * When a file is received (via SCM_RIGHTS, etc), we must bump the + * various sock-based usage counts. + */ +void __receive_sock(struct file *file) +{ + struct socket *sock; + int error; + + /* + * The resulting value of "error" is ignored here since we only + * need to take action when the file is a socket and testing + * "sock" for NULL is sufficient. + */ + sock = sock_from_file(file, &error); + if (sock) { + sock_update_netprioidx(&sock->sk->sk_cgrp_data); + sock_update_classid(&sock->sk->sk_cgrp_data); + } +} + ssize_t sock_no_sendpage(struct socket *sock, struct page *page, int offset, size_t size, int flags) { ssize_t res; @@ -3443,6 +3459,16 @@ } #endif +static void tw_prot_cleanup(struct timewait_sock_ops *twsk_prot) +{ + if (!twsk_prot) + return; + kfree(twsk_prot->twsk_slab_name); + twsk_prot->twsk_slab_name = NULL; + kmem_cache_destroy(twsk_prot->twsk_slab); + twsk_prot->twsk_slab = NULL; +} + static void req_prot_cleanup(struct request_sock_ops *rsk_prot) { if (!rsk_prot) @@ -3513,7 +3539,7 @@ prot->slab_flags, NULL); if (prot->twsk_prot->twsk_slab == NULL) - goto out_free_timewait_sock_slab_name; + goto out_free_timewait_sock_slab; } } @@ -3521,15 +3547,15 @@ ret = assign_proto_idx(prot); if (ret) { mutex_unlock(&proto_list_mutex); - goto out_free_timewait_sock_slab_name; + goto out_free_timewait_sock_slab; } list_add(&prot->node, &proto_list); mutex_unlock(&proto_list_mutex); return ret; -out_free_timewait_sock_slab_name: +out_free_timewait_sock_slab: if (alloc_slab && prot->twsk_prot) - kfree(prot->twsk_prot->twsk_slab_name); + tw_prot_cleanup(prot->twsk_prot); out_free_request_sock_slab: if (alloc_slab) { req_prot_cleanup(prot->rsk_prot); @@ -3553,12 +3579,7 @@ prot->slab = NULL; req_prot_cleanup(prot->rsk_prot); - - if (prot->twsk_prot != NULL && prot->twsk_prot->twsk_slab != NULL) { - kmem_cache_destroy(prot->twsk_prot->twsk_slab); - kfree(prot->twsk_prot->twsk_slab_name); - prot->twsk_prot->twsk_slab = NULL; - } + tw_prot_cleanup(prot->twsk_prot); } EXPORT_SYMBOL(proto_unregister); --- linux-azure-5.8-5.8.0.orig/net/core/sock_reuseport.c +++ linux-azure-5.8-5.8.0/net/core/sock_reuseport.c @@ -293,7 +293,7 @@ i = j = reciprocal_scale(hash, socks); while (reuse->socks[i]->sk_state == TCP_ESTABLISHED) { i++; - if (i >= reuse->num_socks) + if (i >= socks) i = 0; if (i == j) goto out; --- linux-azure-5.8-5.8.0.orig/net/dcb/dcbnl.c +++ linux-azure-5.8-5.8.0/net/dcb/dcbnl.c @@ -1426,6 +1426,7 @@ { const struct dcbnl_rtnl_ops *ops = netdev->dcbnl_ops; struct nlattr *ieee[DCB_ATTR_IEEE_MAX + 1]; + int prio; int err; if (!ops) @@ -1475,6 +1476,13 @@ struct dcbnl_buffer *buffer = nla_data(ieee[DCB_ATTR_DCB_BUFFER]); + for (prio = 0; prio < ARRAY_SIZE(buffer->prio2buffer); prio++) { + if (buffer->prio2buffer[prio] >= DCBX_MAX_BUFFERS) { + err = -EINVAL; + goto err; + } + } + err = ops->dcbnl_setbuffer(netdev, buffer); if (err) goto err; @@ -1757,6 +1765,8 @@ fn = &reply_funcs[dcb->cmd]; if (!fn->cb) return -EOPNOTSUPP; + if (fn->type == RTM_SETDCB && !netlink_capable(skb, CAP_NET_ADMIN)) + return -EPERM; if (!tb[DCB_ATTR_IFNAME]) return -EINVAL; --- linux-azure-5.8-5.8.0.orig/net/dccp/minisocks.c +++ linux-azure-5.8-5.8.0/net/dccp/minisocks.c @@ -93,6 +93,8 @@ newdp->dccps_role = DCCP_ROLE_SERVER; newdp->dccps_hc_rx_ackvec = NULL; + newdp->dccps_hc_rx_ccid = NULL; + newdp->dccps_hc_tx_ccid = NULL; newdp->dccps_service_list = NULL; newdp->dccps_service = dreq->dreq_service; newdp->dccps_timestamp_echo = dreq->dreq_timestamp_echo; --- linux-azure-5.8-5.8.0.orig/net/dsa/dsa2.c +++ linux-azure-5.8-5.8.0/net/dsa/dsa2.c @@ -419,20 +419,23 @@ ds->slave_mii_bus = devm_mdiobus_alloc(ds->dev); if (!ds->slave_mii_bus) { err = -ENOMEM; - goto unregister_notifier; + goto teardown; } dsa_slave_mii_bus_init(ds); err = mdiobus_register(ds->slave_mii_bus); if (err < 0) - goto unregister_notifier; + goto teardown; } ds->setup = true; return 0; +teardown: + if (ds->ops->teardown) + ds->ops->teardown(ds); unregister_notifier: dsa_switch_unregister_notifier(ds); unregister_devlink: --- linux-azure-5.8-5.8.0.orig/net/dsa/master.c +++ linux-azure-5.8-5.8.0/net/dsa/master.c @@ -331,8 +331,18 @@ int dsa_master_setup(struct net_device *dev, struct dsa_port *cpu_dp) { + struct dsa_switch *ds = cpu_dp->ds; + struct device_link *consumer_link; int ret; + /* The DSA master must use SET_NETDEV_DEV for this to work. */ + consumer_link = device_link_add(ds->dev, dev->dev.parent, + DL_FLAG_AUTOREMOVE_CONSUMER); + if (!consumer_link) + netdev_err(dev, + "Failed to create a device link to DSA switch %s\n", + dev_name(ds->dev)); + rtnl_lock(); ret = dev_set_mtu(dev, ETH_DATA_LEN + cpu_dp->tag_ops->overhead); rtnl_unlock(); --- linux-azure-5.8-5.8.0.orig/net/dsa/slave.c +++ linux-azure-5.8-5.8.0/net/dsa/slave.c @@ -1801,15 +1801,27 @@ dsa_slave_notify(slave_dev, DSA_PORT_REGISTER); - ret = register_netdev(slave_dev); + rtnl_lock(); + + ret = register_netdevice(slave_dev); if (ret) { netdev_err(master, "error %d registering interface %s\n", ret, slave_dev->name); + rtnl_unlock(); goto out_phy; } + ret = netdev_upper_dev_link(master, slave_dev, NULL); + + rtnl_unlock(); + + if (ret) + goto out_unregister; + return 0; +out_unregister: + unregister_netdev(slave_dev); out_phy: rtnl_lock(); phylink_disconnect_phy(p->dp->pl); @@ -1826,16 +1838,18 @@ void dsa_slave_destroy(struct net_device *slave_dev) { + struct net_device *master = dsa_slave_to_master(slave_dev); struct dsa_port *dp = dsa_slave_to_port(slave_dev); struct dsa_slave_priv *p = netdev_priv(slave_dev); netif_carrier_off(slave_dev); rtnl_lock(); + netdev_upper_dev_unlink(master, slave_dev); + unregister_netdevice(slave_dev); phylink_disconnect_phy(dp->pl); rtnl_unlock(); dsa_slave_notify(slave_dev, DSA_PORT_UNREGISTER); - unregister_netdev(slave_dev); phylink_destroy(dp->pl); gro_cells_destroy(&p->gcells); free_percpu(p->stats64); --- linux-azure-5.8-5.8.0.orig/net/ethtool/bitset.c +++ linux-azure-5.8-5.8.0/net/ethtool/bitset.c @@ -630,6 +630,8 @@ return ret; change_bits = nla_get_u32(tb[ETHTOOL_A_BITSET_SIZE]); + if (change_bits > nbits) + change_bits = nbits; bitmap_from_arr32(val, nla_data(tb[ETHTOOL_A_BITSET_VALUE]), change_bits); if (change_bits < nbits) --- linux-azure-5.8-5.8.0.orig/net/ethtool/channels.c +++ linux-azure-5.8-5.8.0/net/ethtool/channels.c @@ -215,8 +215,9 @@ if (netif_is_rxfh_configured(dev) && !ethtool_get_max_rxfh_channel(dev, &max_rx_in_use) && (channels.combined_count + channels.rx_count) <= max_rx_in_use) { + ret = -EINVAL; GENL_SET_ERR_MSG(info, "requested channel counts are too low for existing indirection table settings"); - return -EINVAL; + goto out_ops; } /* Disabling channels, query zero-copy AF_XDP sockets */ @@ -224,8 +225,9 @@ min(channels.rx_count, channels.tx_count); for (i = from_channel; i < old_total; i++) if (xdp_get_umem_from_qid(dev, i)) { + ret = -EINVAL; GENL_SET_ERR_MSG(info, "requested channel counts are too low for existing zerocopy AF_XDP sockets"); - return -EINVAL; + goto out_ops; } ret = dev->ethtool_ops->set_channels(dev, &channels); --- linux-azure-5.8-5.8.0.orig/net/ethtool/features.c +++ linux-azure-5.8-5.8.0/net/ethtool/features.c @@ -224,7 +224,9 @@ DECLARE_BITMAP(wanted_diff_mask, NETDEV_FEATURE_COUNT); DECLARE_BITMAP(active_diff_mask, NETDEV_FEATURE_COUNT); DECLARE_BITMAP(old_active, NETDEV_FEATURE_COUNT); + DECLARE_BITMAP(old_wanted, NETDEV_FEATURE_COUNT); DECLARE_BITMAP(new_active, NETDEV_FEATURE_COUNT); + DECLARE_BITMAP(new_wanted, NETDEV_FEATURE_COUNT); DECLARE_BITMAP(req_wanted, NETDEV_FEATURE_COUNT); DECLARE_BITMAP(req_mask, NETDEV_FEATURE_COUNT); struct nlattr *tb[ETHTOOL_A_FEATURES_MAX + 1]; @@ -250,6 +252,7 @@ rtnl_lock(); ethnl_features_to_bitmap(old_active, dev->features); + ethnl_features_to_bitmap(old_wanted, dev->wanted_features); ret = ethnl_parse_bitset(req_wanted, req_mask, NETDEV_FEATURE_COUNT, tb[ETHTOOL_A_FEATURES_WANTED], netdev_features_strings, info->extack); @@ -261,17 +264,15 @@ goto out_rtnl; } - /* set req_wanted bits not in req_mask from old_active */ + /* set req_wanted bits not in req_mask from old_wanted */ bitmap_and(req_wanted, req_wanted, req_mask, NETDEV_FEATURE_COUNT); - bitmap_andnot(new_active, old_active, req_mask, NETDEV_FEATURE_COUNT); - bitmap_or(req_wanted, new_active, req_wanted, NETDEV_FEATURE_COUNT); - if (bitmap_equal(req_wanted, old_active, NETDEV_FEATURE_COUNT)) { - ret = 0; - goto out_rtnl; + bitmap_andnot(new_wanted, old_wanted, req_mask, NETDEV_FEATURE_COUNT); + bitmap_or(req_wanted, new_wanted, req_wanted, NETDEV_FEATURE_COUNT); + if (!bitmap_equal(req_wanted, old_wanted, NETDEV_FEATURE_COUNT)) { + dev->wanted_features &= ~dev->hw_features; + dev->wanted_features |= ethnl_bitmap_to_features(req_wanted) & dev->hw_features; + __netdev_update_features(dev); } - - dev->wanted_features = ethnl_bitmap_to_features(req_wanted); - __netdev_update_features(dev); ethnl_features_to_bitmap(new_active, dev->features); mod = !bitmap_equal(old_active, new_active, NETDEV_FEATURE_COUNT); @@ -295,7 +296,7 @@ active_diff_mask, compact); } if (mod) - ethtool_notify(dev, ETHTOOL_MSG_FEATURES_NTF, NULL); + netdev_features_change(dev); out_rtnl: rtnl_unlock(); --- linux-azure-5.8-5.8.0.orig/net/ethtool/strset.c +++ linux-azure-5.8-5.8.0/net/ethtool/strset.c @@ -181,7 +181,7 @@ ret = strset_get_id(attr, &id, extack); if (ret < 0) return ret; - if (ret >= ETH_SS_COUNT) { + if (id >= ETH_SS_COUNT) { NL_SET_ERR_MSG_ATTR(extack, attr, "unknown string set id"); return -EOPNOTSUPP; --- linux-azure-5.8-5.8.0.orig/net/ipv4/arp.c +++ linux-azure-5.8-5.8.0/net/ipv4/arp.c @@ -125,6 +125,7 @@ static void arp_solicit(struct neighbour *neigh, struct sk_buff *skb); static void arp_error_report(struct neighbour *neigh, struct sk_buff *skb); static void parp_redo(struct sk_buff *skb); +static int arp_is_multicast(const void *pkey); static const struct neigh_ops arp_generic_ops = { .family = AF_INET, @@ -156,6 +157,7 @@ .key_eq = arp_key_eq, .constructor = arp_constructor, .proxy_redo = parp_redo, + .is_multicast = arp_is_multicast, .id = "arp_cache", .parms = { .tbl = &arp_tbl, @@ -928,6 +930,10 @@ arp_process(dev_net(skb->dev), NULL, skb); } +static int arp_is_multicast(const void *pkey) +{ + return ipv4_is_multicast(*((__be32 *)pkey)); +} /* * Receive an arp request from the device layer. --- linux-azure-5.8-5.8.0.orig/net/ipv4/cipso_ipv4.c +++ linux-azure-5.8-5.8.0/net/ipv4/cipso_ipv4.c @@ -106,15 +106,17 @@ /* Base length of the local tag (non-standard tag). * Tag definition (may change between kernel versions) * - * 0 8 16 24 32 - * +----------+----------+----------+----------+ - * | 10000000 | 00000110 | 32-bit secid value | - * +----------+----------+----------+----------+ - * | in (host byte order)| - * +----------+----------+ - * + * 0 8 16 16 + sizeof(struct lsmblob) + * +----------+----------+---------------------+ + * | 10000000 | 00000110 | LSM blob data | + * +----------+----------+---------------------+ + * + * All secid and flag fields are in host byte order. + * The lsmblob structure size varies depending on which + * Linux security modules are built in the kernel. + * The data is opaque. */ -#define CIPSO_V4_TAG_LOC_BLEN 6 +#define CIPSO_V4_TAG_LOC_BLEN (2 + sizeof(struct lsmblob)) /* * Helper Functions @@ -1469,7 +1471,12 @@ buffer[0] = CIPSO_V4_TAG_LOCAL; buffer[1] = CIPSO_V4_TAG_LOC_BLEN; - *(u32 *)&buffer[2] = secattr->attr.secid; + /* Ensure that there is sufficient space in the CIPSO header + * for the LSM data. This should never become an issue. + * The check is made from an abundance of caution. */ + BUILD_BUG_ON(CIPSO_V4_TAG_LOC_BLEN > CIPSO_V4_OPT_LEN_MAX); + memcpy(&buffer[2], &secattr->attr.lsmblob, + sizeof(secattr->attr.lsmblob)); return CIPSO_V4_TAG_LOC_BLEN; } @@ -1489,7 +1496,7 @@ const unsigned char *tag, struct netlbl_lsm_secattr *secattr) { - secattr->attr.secid = *(u32 *)&tag[2]; + memcpy(&secattr->attr.lsmblob, &tag[2], sizeof(secattr->attr.lsmblob)); secattr->flags |= NETLBL_SECATTR_SECID; return 0; --- linux-azure-5.8-5.8.0.orig/net/ipv4/esp4.c +++ linux-azure-5.8-5.8.0/net/ipv4/esp4.c @@ -443,7 +443,6 @@ int esp_output_head(struct xfrm_state *x, struct sk_buff *skb, struct esp_info *esp) { u8 *tail; - u8 *vaddr; int nfrags; int esph_offset; struct page *page; @@ -485,14 +484,10 @@ page = pfrag->page; get_page(page); - vaddr = kmap_atomic(page); - - tail = vaddr + pfrag->offset; + tail = page_address(page) + pfrag->offset; esp_output_fill_trailer(tail, esp->tfclen, esp->plen, esp->proto); - kunmap_atomic(vaddr); - nfrags = skb_shinfo(skb)->nr_frags; __skb_fill_page_desc(skb, nfrags, page, pfrag->offset, --- linux-azure-5.8-5.8.0.orig/net/ipv4/fib_frontend.c +++ linux-azure-5.8-5.8.0/net/ipv4/fib_frontend.c @@ -292,7 +292,7 @@ .flowi4_iif = LOOPBACK_IFINDEX, .flowi4_oif = l3mdev_master_ifindex_rcu(dev), .daddr = ip_hdr(skb)->saddr, - .flowi4_tos = RT_TOS(ip_hdr(skb)->tos), + .flowi4_tos = ip_hdr(skb)->tos & IPTOS_RT_MASK, .flowi4_scope = scope, .flowi4_mark = vmark ? skb->mark : 0, }; @@ -362,6 +362,7 @@ fl4.flowi4_tun_key.tun_id = 0; fl4.flowi4_flags = 0; fl4.flowi4_uid = sock_net_uid(net, NULL); + fl4.flowi4_multipath_hash = 0; no_addr = idev->ifa_list == NULL; @@ -695,7 +696,7 @@ cfg->fc_gw4 = *((__be32 *)via->rtvia_addr); break; case AF_INET6: -#ifdef CONFIG_IPV6 +#if IS_ENABLED(CONFIG_IPV6) if (alen != sizeof(struct in6_addr)) { NL_SET_ERR_MSG(extack, "Invalid IPv6 address in RTA_VIA"); return -EINVAL; @@ -824,7 +825,7 @@ if (has_gw && has_via) { NL_SET_ERR_MSG(extack, "Nexthop configuration can not contain both GATEWAY and VIA"); - goto errout; + return -EINVAL; } return 0; --- linux-azure-5.8-5.8.0.orig/net/ipv4/fib_trie.c +++ linux-azure-5.8-5.8.0/net/ipv4/fib_trie.c @@ -2121,7 +2121,8 @@ struct hlist_head *head = &net->ipv4.fib_table_hash[h]; struct fib_table *tb; - hlist_for_each_entry_rcu(tb, head, tb_hlist) + hlist_for_each_entry_rcu(tb, head, tb_hlist, + lockdep_rtnl_is_held()) __fib_info_notify_update(net, tb, info); } } --- linux-azure-5.8-5.8.0.orig/net/ipv4/gre_demux.c +++ linux-azure-5.8-5.8.0/net/ipv4/gre_demux.c @@ -128,7 +128,7 @@ * to 0 and sets the configured key in the * inner erspan header field */ - if (greh->protocol == htons(ETH_P_ERSPAN) || + if ((greh->protocol == htons(ETH_P_ERSPAN) && hdr_len != 4) || greh->protocol == htons(ETH_P_ERSPAN2)) { struct erspan_base_hdr *ershdr; --- linux-azure-5.8-5.8.0.orig/net/ipv4/icmp.c +++ linux-azure-5.8-5.8.0/net/ipv4/icmp.c @@ -239,7 +239,7 @@ /** * icmp_global_allow - Are we allowed to send one more ICMP message ? * - * Uses a token bucket to limit our ICMP messages to sysctl_icmp_msgs_per_sec. + * Uses a token bucket to limit our ICMP messages to ~sysctl_icmp_msgs_per_sec. * Returns false if we reached the limit and can not send another packet. * Note: called with BH disabled */ @@ -267,7 +267,10 @@ } credit = min_t(u32, icmp_global.credit + incr, sysctl_icmp_msgs_burst); if (credit) { - credit--; + /* We want to use a credit of one in average, but need to randomize + * it for security reasons. + */ + credit = max_t(int, credit - prandom_u32_max(3), 0); rc = true; } WRITE_ONCE(icmp_global.credit, credit); --- linux-azure-5.8-5.8.0.orig/net/ipv4/inet_connection_sock.c +++ linux-azure-5.8-5.8.0/net/ipv4/inet_connection_sock.c @@ -296,6 +296,57 @@ ipv6_only_sock(sk), true, false); } +void inet_csk_update_fastreuse(struct inet_bind_bucket *tb, + struct sock *sk) +{ + kuid_t uid = sock_i_uid(sk); + bool reuse = sk->sk_reuse && sk->sk_state != TCP_LISTEN; + + if (hlist_empty(&tb->owners)) { + tb->fastreuse = reuse; + if (sk->sk_reuseport) { + tb->fastreuseport = FASTREUSEPORT_ANY; + tb->fastuid = uid; + tb->fast_rcv_saddr = sk->sk_rcv_saddr; + tb->fast_ipv6_only = ipv6_only_sock(sk); + tb->fast_sk_family = sk->sk_family; +#if IS_ENABLED(CONFIG_IPV6) + tb->fast_v6_rcv_saddr = sk->sk_v6_rcv_saddr; +#endif + } else { + tb->fastreuseport = 0; + } + } else { + if (!reuse) + tb->fastreuse = 0; + if (sk->sk_reuseport) { + /* We didn't match or we don't have fastreuseport set on + * the tb, but we have sk_reuseport set on this socket + * and we know that there are no bind conflicts with + * this socket in this tb, so reset our tb's reuseport + * settings so that any subsequent sockets that match + * our current socket will be put on the fast path. + * + * If we reset we need to set FASTREUSEPORT_STRICT so we + * do extra checking for all subsequent sk_reuseport + * socks. + */ + if (!sk_reuseport_match(tb, sk)) { + tb->fastreuseport = FASTREUSEPORT_STRICT; + tb->fastuid = uid; + tb->fast_rcv_saddr = sk->sk_rcv_saddr; + tb->fast_ipv6_only = ipv6_only_sock(sk); + tb->fast_sk_family = sk->sk_family; +#if IS_ENABLED(CONFIG_IPV6) + tb->fast_v6_rcv_saddr = sk->sk_v6_rcv_saddr; +#endif + } + } else { + tb->fastreuseport = 0; + } + } +} + /* Obtain a reference to a local port for the given sock, * if snum is zero it means select any available local port. * We try to allocate an odd port (and leave even ports for connect()) @@ -308,7 +359,6 @@ struct inet_bind_hashbucket *head; struct net *net = sock_net(sk); struct inet_bind_bucket *tb = NULL; - kuid_t uid = sock_i_uid(sk); int l3mdev; l3mdev = inet_sk_bound_l3mdev(sk); @@ -345,49 +395,8 @@ goto fail_unlock; } success: - if (hlist_empty(&tb->owners)) { - tb->fastreuse = reuse; - if (sk->sk_reuseport) { - tb->fastreuseport = FASTREUSEPORT_ANY; - tb->fastuid = uid; - tb->fast_rcv_saddr = sk->sk_rcv_saddr; - tb->fast_ipv6_only = ipv6_only_sock(sk); - tb->fast_sk_family = sk->sk_family; -#if IS_ENABLED(CONFIG_IPV6) - tb->fast_v6_rcv_saddr = sk->sk_v6_rcv_saddr; -#endif - } else { - tb->fastreuseport = 0; - } - } else { - if (!reuse) - tb->fastreuse = 0; - if (sk->sk_reuseport) { - /* We didn't match or we don't have fastreuseport set on - * the tb, but we have sk_reuseport set on this socket - * and we know that there are no bind conflicts with - * this socket in this tb, so reset our tb's reuseport - * settings so that any subsequent sockets that match - * our current socket will be put on the fast path. - * - * If we reset we need to set FASTREUSEPORT_STRICT so we - * do extra checking for all subsequent sk_reuseport - * socks. - */ - if (!sk_reuseport_match(tb, sk)) { - tb->fastreuseport = FASTREUSEPORT_STRICT; - tb->fastuid = uid; - tb->fast_rcv_saddr = sk->sk_rcv_saddr; - tb->fast_ipv6_only = ipv6_only_sock(sk); - tb->fast_sk_family = sk->sk_family; -#if IS_ENABLED(CONFIG_IPV6) - tb->fast_v6_rcv_saddr = sk->sk_v6_rcv_saddr; -#endif - } - } else { - tb->fastreuseport = 0; - } - } + inet_csk_update_fastreuse(tb, sk); + if (!inet_csk(sk)->icsk_bind_hash) inet_bind_hash(sk, tb, port); WARN_ON(inet_csk(sk)->icsk_bind_hash != tb); @@ -849,6 +858,7 @@ newicsk->icsk_retransmits = 0; newicsk->icsk_backoff = 0; newicsk->icsk_probes_out = 0; + newicsk->icsk_probes_tstamp = 0; /* Deinitialize accept_queue to trap illegal accesses. */ memset(&newicsk->icsk_accept_queue, 0, sizeof(newicsk->icsk_accept_queue)); --- linux-azure-5.8-5.8.0.orig/net/ipv4/inet_diag.c +++ linux-azure-5.8-5.8.0/net/ipv4/inet_diag.c @@ -431,8 +431,10 @@ r->idiag_inode = 0; if (net_admin && nla_put_u32(skb, INET_DIAG_MARK, - inet_rsk(reqsk)->ir_mark)) + inet_rsk(reqsk)->ir_mark)) { + nlmsg_cancel(skb, nlh); return -EMSGSIZE; + } nlmsg_end(skb, nlh); return 0; --- linux-azure-5.8-5.8.0.orig/net/ipv4/inet_hashtables.c +++ linux-azure-5.8-5.8.0/net/ipv4/inet_hashtables.c @@ -163,6 +163,7 @@ return -ENOMEM; } } + inet_csk_update_fastreuse(tb, child); } inet_bind_hash(child, tb, port); spin_unlock(&head->lock); --- linux-azure-5.8-5.8.0.orig/net/ipv4/ip_gre.c +++ linux-azure-5.8-5.8.0/net/ipv4/ip_gre.c @@ -625,9 +625,7 @@ } if (dev->header_ops) { - /* Need space for new headers */ - if (skb_cow_head(skb, dev->needed_headroom - - (tunnel->hlen + sizeof(struct iphdr)))) + if (skb_cow_head(skb, 0)) goto free_skb; tnl_params = (const struct iphdr *)skb->data; @@ -748,7 +746,11 @@ len = tunnel->tun_hlen - len; tunnel->hlen = tunnel->hlen + len; - dev->needed_headroom = dev->needed_headroom + len; + if (dev->header_ops) + dev->hard_header_len += len; + else + dev->needed_headroom += len; + if (set_mtu) dev->mtu = max_t(int, dev->mtu - len, 68); @@ -944,6 +946,7 @@ tunnel->parms.iph.protocol = IPPROTO_GRE; tunnel->hlen = tunnel->tun_hlen + tunnel->encap_hlen; + dev->needed_headroom = tunnel->hlen + sizeof(tunnel->parms.iph); dev->features |= GRE_FEATURES; dev->hw_features |= GRE_FEATURES; @@ -987,10 +990,14 @@ return -EINVAL; dev->flags = IFF_BROADCAST; dev->header_ops = &ipgre_header_ops; + dev->hard_header_len = tunnel->hlen + sizeof(*iph); + dev->needed_headroom = 0; } #endif } else if (!tunnel->collect_md) { dev->header_ops = &ipgre_header_ops; + dev->hard_header_len = tunnel->hlen + sizeof(*iph); + dev->needed_headroom = 0; } return ip_tunnel_init(dev); --- linux-azure-5.8-5.8.0.orig/net/ipv4/ip_output.c +++ linux-azure-5.8-5.8.0/net/ipv4/ip_output.c @@ -74,6 +74,7 @@ #include #include #include +#include #include #include #include @@ -300,7 +301,7 @@ if (skb_is_gso(skb)) return ip_finish_output_gso(net, sk, skb, mtu); - if (skb->len > mtu || (IPCB(skb)->flags & IPSKB_FRAG_PMTU)) + if (skb->len > mtu || IPCB(skb)->frag_max_size) return ip_fragment(net, sk, skb, mtu, ip_finish_output2); return ip_finish_output2(net, sk, skb); @@ -1697,7 +1698,7 @@ if (IS_ERR(rt)) return; - inet_sk(sk)->tos = arg->tos; + inet_sk(sk)->tos = arg->tos & ~INET_ECN_MASK; sk->sk_protocol = ip_hdr(skb)->protocol; sk->sk_bound_dev_if = arg->bound_dev_if; --- linux-azure-5.8-5.8.0.orig/net/ipv4/ip_sockglue.c +++ linux-azure-5.8-5.8.0/net/ipv4/ip_sockglue.c @@ -130,20 +130,20 @@ static void ip_cmsg_recv_security(struct msghdr *msg, struct sk_buff *skb) { - char *secdata; - u32 seclen, secid; + struct lsmcontext context; + struct lsmblob lb; int err; - err = security_socket_getpeersec_dgram(NULL, skb, &secid); + err = security_socket_getpeersec_dgram(NULL, skb, &lb); if (err) return; - err = security_secid_to_secctx(secid, &secdata, &seclen); + err = security_secid_to_secctx(&lb, &context, LSMBLOB_DISPLAY); if (err) return; - put_cmsg(msg, SOL_IP, SCM_SECURITY, seclen, secdata); - security_release_secctx(secdata, seclen); + put_cmsg(msg, SOL_IP, SCM_SECURITY, context.len, context.context); + security_release_secctx(&context); } static void ip_cmsg_recv_dstaddr(struct msghdr *msg, struct sk_buff *skb) --- linux-azure-5.8-5.8.0.orig/net/ipv4/ip_tunnel.c +++ linux-azure-5.8-5.8.0/net/ipv4/ip_tunnel.c @@ -317,7 +317,7 @@ } dev->needed_headroom = t_hlen + hlen; - mtu -= (dev->hard_header_len + t_hlen); + mtu -= t_hlen; if (mtu < IPV4_MIN_MTU) mtu = IPV4_MIN_MTU; @@ -347,7 +347,7 @@ nt = netdev_priv(dev); t_hlen = nt->hlen + sizeof(struct iphdr); dev->min_mtu = ETH_MIN_MTU; - dev->max_mtu = IP_MAX_MTU - dev->hard_header_len - t_hlen; + dev->max_mtu = IP_MAX_MTU - t_hlen; ip_tunnel_add(itn, nt); return nt; @@ -494,11 +494,10 @@ int mtu; tunnel_hlen = md ? tunnel_hlen : tunnel->hlen; - pkt_size = skb->len - tunnel_hlen - dev->hard_header_len; + pkt_size = skb->len - tunnel_hlen; if (df) - mtu = dst_mtu(&rt->dst) - dev->hard_header_len - - sizeof(struct iphdr) - tunnel_hlen; + mtu = dst_mtu(&rt->dst) - (sizeof(struct iphdr) + tunnel_hlen); else mtu = skb_valid_dst(skb) ? dst_mtu(skb_dst(skb)) : dev->mtu; @@ -614,9 +613,6 @@ ttl = ip4_dst_hoplimit(&rt->dst); } - if (!df && skb->protocol == htons(ETH_P_IP)) - df = inner_iph->frag_off & htons(IP_DF); - headroom += LL_RESERVED_SPACE(rt->dst.dev) + rt->dst.header_len; if (headroom > dev->needed_headroom) dev->needed_headroom = headroom; @@ -768,8 +764,11 @@ goto tx_error; } - if (tnl_update_pmtu(dev, skb, rt, tnl_params->frag_off, inner_iph, - 0, 0, false)) { + df = tnl_params->frag_off; + if (skb->protocol == htons(ETH_P_IP) && !tunnel->ignore_df) + df |= (inner_iph->frag_off & htons(IP_DF)); + + if (tnl_update_pmtu(dev, skb, rt, df, inner_iph, 0, 0, false)) { ip_rt_put(rt); goto tx_error; } @@ -797,10 +796,6 @@ ttl = ip4_dst_hoplimit(&rt->dst); } - df = tnl_params->frag_off; - if (skb->protocol == htons(ETH_P_IP) && !tunnel->ignore_df) - df |= (inner_iph->frag_off&htons(IP_DF)); - max_headroom = LL_RESERVED_SPACE(rt->dst.dev) + sizeof(struct iphdr) + rt->dst.header_len + ip_encap_hlen(&tunnel->encap); if (max_headroom > dev->needed_headroom) @@ -982,7 +977,7 @@ { struct ip_tunnel *tunnel = netdev_priv(dev); int t_hlen = tunnel->hlen + sizeof(struct iphdr); - int max_mtu = IP_MAX_MTU - dev->hard_header_len - t_hlen; + int max_mtu = IP_MAX_MTU - t_hlen; if (new_mtu < ETH_MIN_MTU) return -EINVAL; @@ -1159,10 +1154,9 @@ mtu = ip_tunnel_bind_dev(dev); if (tb[IFLA_MTU]) { - unsigned int max = IP_MAX_MTU - dev->hard_header_len - nt->hlen; + unsigned int max = IP_MAX_MTU - (nt->hlen + sizeof(struct iphdr)); - mtu = clamp(dev->mtu, (unsigned int)ETH_MIN_MTU, - (unsigned int)(max - sizeof(struct iphdr))); + mtu = clamp(dev->mtu, (unsigned int)ETH_MIN_MTU, max); } err = dev_set_mtu(dev, mtu); @@ -1188,7 +1182,7 @@ struct ip_tunnel_net *itn = net_generic(net, tunnel->ip_tnl_net_id); if (dev == itn->fb_tunnel_dev) - return -EINVAL; + return fan_has_map(&tunnel->fan) ? 0 : -EINVAL; t = ip_tunnel_find(itn, p, dev->type); --- linux-azure-5.8-5.8.0.orig/net/ipv4/ipconfig.c +++ linux-azure-5.8-5.8.0/net/ipv4/ipconfig.c @@ -1441,7 +1441,7 @@ int retries = CONF_OPEN_RETRIES; #endif int err; - unsigned int i; + unsigned int i, count; /* Initialise all name servers and NTP servers to NONE (but only if the * "ip=" or "nfsaddrs=" kernel command line parameters weren't decoded, @@ -1575,7 +1575,7 @@ if (ic_dev_mtu) pr_cont(", mtu=%d", ic_dev_mtu); /* Name servers (if any): */ - for (i = 0; i < CONF_NAMESERVERS_MAX; i++) { + for (i = 0, count = 0; i < CONF_NAMESERVERS_MAX; i++) { if (ic_nameservers[i] != NONE) { if (i == 0) pr_info(" nameserver%u=%pI4", @@ -1583,12 +1583,14 @@ else pr_cont(", nameserver%u=%pI4", i, &ic_nameservers[i]); + + count++; } - if (i + 1 == CONF_NAMESERVERS_MAX) + if ((i + 1 == CONF_NAMESERVERS_MAX) && count > 0) pr_cont("\n"); } /* NTP servers (if any): */ - for (i = 0; i < CONF_NTP_SERVERS_MAX; i++) { + for (i = 0, count = 0; i < CONF_NTP_SERVERS_MAX; i++) { if (ic_ntp_servers[i] != NONE) { if (i == 0) pr_info(" ntpserver%u=%pI4", @@ -1596,8 +1598,10 @@ else pr_cont(", ntpserver%u=%pI4", i, &ic_ntp_servers[i]); + + count++; } - if (i + 1 == CONF_NTP_SERVERS_MAX) + if ((i + 1 == CONF_NTP_SERVERS_MAX) && count > 0) pr_cont("\n"); } #endif /* !SILENT */ --- linux-azure-5.8-5.8.0.orig/net/ipv4/ipip.c +++ linux-azure-5.8-5.8.0/net/ipv4/ipip.c @@ -101,6 +101,8 @@ #include #include #include +#include +#include #include #include @@ -264,6 +266,147 @@ } #endif +static struct ip_fan_map *ipip_fan_find_map(struct ip_tunnel *t, __be32 daddr) +{ + struct ip_fan_map *fan_map; + + rcu_read_lock(); + list_for_each_entry_rcu(fan_map, &t->fan.fan_maps, list) { + if (fan_map->overlay == + (daddr & inet_make_mask(fan_map->overlay_prefix))) { + rcu_read_unlock(); + return fan_map; + } + } + rcu_read_unlock(); + + return NULL; +} + +/* Determine fan tunnel endpoint to send packet to, based on the inner IP + * address. + * + * Given a /8 overlay and /16 underlay, for an overlay (inner) address + * Y.A.B.C, the transformation is F.G.A.B, where "F" and "G" are the first + * two octets of the underlay network (the network portion of a /16), "A" + * and "B" are the low order two octets of the underlay network host (the + * host portion of a /16), and "Y" is a configured first octet of the + * overlay network. + * + * E.g., underlay host 10.88.3.4/16 with an overlay of 99.0.0.0/8 would + * host overlay subnet 99.3.4.0/24. An overlay network datagram from + * 99.3.4.5 to 99.6.7.8, would be directed to underlay host 10.88.6.7, + * which hosts overlay network subnet 99.6.7.0/24. This transformation is + * described in detail further below. + * + * Using netmasks for the overlay and underlay other than /8 and /16, as + * shown above, can yield larger (or smaller) overlay subnets, with the + * trade-off of allowing fewer (or more) underlay hosts to participate. + * + * The size of each overlay network subnet is defined by the total of the + * network mask of the overlay plus the size of host portion of the + * underlay network. In the above example, /8 + /16 = /24. + * + * E.g., consider underlay host 10.99.238.5/20 and overlay 99.0.0.0/8. In + * this case, the network portion of the underlay is 10.99.224.0/20, and + * the host portion is 0.0.14.5 (12 bits). To determine the overlay + * network subnet, the 12 bits of host portion are left shifted 12 bits + * (/20 - /8) and ORed with the overlay subnet prefix. This yields an + * overlay subnet of 99.224.80/20, composed of 8 bits overlay, followed by + * 12 bits underlay. This yields 12 bits in the overlay network portion, + * allowing for 4094 addresses in each overlay network subnet. The + * trade-off is that fewer hosts may participate in the underlay network, + * as its host address size has shrunk from 16 bits (65534 addresses) in + * the first example to 12 bits (4094 addresses) here. + * + * For fewer hosts per overlay subnet (permitting a larger number of + * underlay hosts to participate), the underlay netmask may be made + * smaller. + * + * E.g., underlay host 10.111.1.2/12 (network 10.96.0.0/12, host portion + * is 0.15.1.2, 20 bits) with an overlay of 33.0.0.0/8 would left shift + * the 20 bits of host by 4 (so that it's highest order bit is adjacent to + * the lowest order bit of the /8 overlay). This yields an overlay subnet + * of 33.240.16.32/28 (8 bits overlay, 20 bits from the host portion of + * the underlay). This provides more addresses for the underlay network + * (approximately 2^20), but each host's segment of the overlay provides + * only 4 bits of addresses (14 usable). + * + * It is also possible to adjust the overlay subnet. + * + * For an overlay of 240.0.0.0/5 and underlay of 10.88.0.0/20, consider + * underlay host 10.88.129.2; the 12 bits of host, 0.0.1.2, are left + * shifted 15 bits (/20 - /5), yielding an overlay network of + * 240.129.0.0/17. An underlay host of 10.88.244.215 would yield an + * overlay network of 242.107.128.0/17. + * + * For an overlay of 100.64.0.0/10 and underlay of 10.224.220.0/24, for + * underlay host 10.224.220.10, the underlay host portion (.10) is left + * shifted 14 bits, yielding an overlay network subnet of 100.66.128.0/18. + * This would permit 254 addresses on the underlay, with each overlay + * segment providing approximately 2^14 - 2 addresses (16382). + * + * For packets being encapsulated, the overlay network destination IP + * address is deconstructed into its overlay and underlay-derived + * portions. The underlay portion (determined by the overlay mask and + * overlay subnet mask) is right shifted according to the size of the + * underlay network mask. This value is then ORed with the network + * portion of the underlay network to produce the underlay network + * destination for the encapsulated datagram. + * + * For example, using the initial example of underlay 10.88.3.4/16 and + * overlay 99.0.0.0/8, with underlay host 10.88.3.4/16 providing overlay + * subnet 99.3.4.0/24 with specfic host 99.3.4.5. A datagram from + * 99.3.4.5 to 99.6.7.8 would first have the underlay host derived portion + * of the address extracted. This is a number of bits equal to underlay + * network host portion. In the destination address, the highest order of + * these bits is one bit lower than the lowest order bit from the overlay + * network mask. + * + * Using the sample value, 99.6.7.8, the overlay mask is /8, and the + * underlay mask is /16 (leaving 16 bits for the host portion). The bits + * to be shifted are the middle two octets, 0.6.7.0, as this is 99.6.7.8 + * ANDed with the mask 0x00ffff00 (which is 16 bits, the highest order of + * which is 1 bit lower than the lowest order overlay address bit). + * + * These octets, 0.6.7.0, are then right shifted 8 bits, yielding 0.0.6.7. + * This value is then ORed with the underlay network portion, + * 10.88.0.0/16, providing 10.88.6.7 as the final underlay destination for + * the encapuslated datagram. + * + * Another transform using the final example: overlay 100.64.0.0/10 and + * underlay 10.224.220.0/24. Consider overlay address 100.66.128.1 + * sending a datagram to 100.66.200.5. In this case, 8 bits (the host + * portion size of 10.224.220.0/24) beginning after the 100.64/10 overlay + * prefix are masked off, yielding 0.2.192.0. This is right shifted 14 + * (32 - 10 - (32 - 24), i.e., the number of bits between the overlay + * network portion and the underlay host portion) bits, yielding 0.0.0.11. + * This is ORed with the underlay network portion, 10.224.220.0/24, giving + * the underlay destination of 10.224.220.11 for overlay destination + * 100.66.200.5. + */ +static int ipip_build_fan_iphdr(struct ip_tunnel *tunnel, struct sk_buff *skb, struct iphdr *iph) +{ + struct ip_fan_map *f_map; + u32 daddr, underlay; + + f_map = ipip_fan_find_map(tunnel, ip_hdr(skb)->daddr); + if (!f_map) + return -ENOENT; + + daddr = ntohl(ip_hdr(skb)->daddr); + underlay = ntohl(f_map->underlay); + if (!underlay) + return -EINVAL; + + *iph = tunnel->parms.iph; + iph->daddr = htonl(underlay | + ((daddr & ~f_map->overlay_mask) >> + (32 - f_map->overlay_prefix - + (32 - f_map->underlay_prefix)))); + return 0; +} + /* * This function assumes it is being called from dev_queue_xmit() * and that skb is filled properly by that function. @@ -274,6 +417,7 @@ struct ip_tunnel *tunnel = netdev_priv(dev); const struct iphdr *tiph = &tunnel->parms.iph; u8 ipproto; + struct iphdr fiph; if (!pskb_inet_may_pull(skb)) goto tx_error; @@ -297,6 +441,14 @@ if (iptunnel_handle_offloads(skb, SKB_GSO_IPXIP4)) goto tx_error; + if (fan_has_map(&tunnel->fan)) { + if (ipip_build_fan_iphdr(tunnel, skb, &fiph)) + goto tx_error; + tiph = &fiph; + } else { + tiph = &tunnel->parms.iph; + } + skb_set_inner_ipproto(skb, ipproto); if (tunnel->collect_md) @@ -360,6 +512,8 @@ static void ipip_tunnel_setup(struct net_device *dev) { + struct ip_tunnel *t = netdev_priv(dev); + dev->netdev_ops = &ipip_netdev_ops; dev->header_ops = &ip_tunnel_header_ops; @@ -372,6 +526,7 @@ dev->features |= IPIP_FEATURES; dev->hw_features |= IPIP_FEATURES; ip_tunnel_setup(dev, ipip_net_id); + INIT_LIST_HEAD(&t->fan.fan_maps); } static int ipip_tunnel_init(struct net_device *dev) @@ -480,6 +635,93 @@ return ret; } +static void ipip_fan_flush_map(struct ip_tunnel *t) +{ + struct ip_fan_map *fan_map; + + list_for_each_entry_rcu(fan_map, &t->fan.fan_maps, list) { + list_del_rcu(&fan_map->list); + kfree_rcu(fan_map, rcu); + } +} + +static int ipip_fan_del_map(struct ip_tunnel *t, __be32 overlay) +{ + struct ip_fan_map *fan_map; + + fan_map = ipip_fan_find_map(t, overlay); + if (!fan_map) + return -ENOENT; + + list_del_rcu(&fan_map->list); + kfree_rcu(fan_map, rcu); + + return 0; +} + +static int ipip_fan_add_map(struct ip_tunnel *t, struct ifla_fan_map *map) +{ + __be32 overlay_mask, underlay_mask; + struct ip_fan_map *fan_map; + + overlay_mask = inet_make_mask(map->overlay_prefix); + underlay_mask = inet_make_mask(map->underlay_prefix); + + if ((map->overlay & ~overlay_mask) || (map->underlay & ~underlay_mask)) + return -EINVAL; + + if (!(map->overlay & overlay_mask) && (map->underlay & underlay_mask)) + return -EINVAL; + + /* Special case: overlay 0 and underlay 0: flush all mappings */ + if (!map->overlay && !map->underlay) { + ipip_fan_flush_map(t); + return 0; + } + + /* Special case: overlay set and underlay 0: clear map for overlay */ + if (!map->underlay) + return ipip_fan_del_map(t, map->overlay); + + if (ipip_fan_find_map(t, map->overlay)) + return -EEXIST; + + fan_map = kmalloc(sizeof(*fan_map), GFP_KERNEL); + fan_map->underlay = map->underlay; + fan_map->overlay = map->overlay; + fan_map->underlay_prefix = map->underlay_prefix; + fan_map->overlay_mask = ntohl(overlay_mask); + fan_map->overlay_prefix = map->overlay_prefix; + + list_add_tail_rcu(&fan_map->list, &t->fan.fan_maps); + + return 0; +} + + +static int ipip_netlink_fan(struct nlattr *data[], struct ip_tunnel *t, + struct ip_tunnel_parm *parms) +{ + struct ifla_fan_map *map; + struct nlattr *attr; + int rem, rv; + + if (data == NULL || !data[IFLA_IPTUN_FAN_MAP]) + return 0; + + if (parms->iph.daddr) + return -EINVAL; + + nla_for_each_nested(attr, data[IFLA_IPTUN_FAN_MAP], rem) { + map = nla_data(attr); + rv = ipip_fan_add_map(t, map); + if (rv) + return rv; + } + + return 0; +} + static int ipip_newlink(struct net *src_net, struct net_device *dev, struct nlattr *tb[], struct nlattr *data[], struct netlink_ext_ack *extack) @@ -488,15 +730,19 @@ struct ip_tunnel_parm p; struct ip_tunnel_encap ipencap; __u32 fwmark = 0; + int err; if (ipip_netlink_encap_parms(data, &ipencap)) { - int err = ip_tunnel_encap_setup(t, &ipencap); + err = ip_tunnel_encap_setup(t, &ipencap); if (err < 0) return err; } ipip_netlink_parms(data, &p, &t->collect_md, &fwmark); + err = ipip_netlink_fan(data, t, &p); + if (err < 0) + return err; return ip_tunnel_newlink(dev, tb, &p, fwmark); } @@ -509,9 +755,10 @@ struct ip_tunnel_encap ipencap; bool collect_md; __u32 fwmark = t->fwmark; + int err; if (ipip_netlink_encap_parms(data, &ipencap)) { - int err = ip_tunnel_encap_setup(t, &ipencap); + err = ip_tunnel_encap_setup(t, &ipencap); if (err < 0) return err; @@ -520,6 +767,9 @@ ipip_netlink_parms(data, &p, &collect_md, &fwmark); if (collect_md) return -EINVAL; + err = ipip_netlink_fan(data, t, &p); + if (err < 0) + return err; if (((dev->flags & IFF_POINTOPOINT) && !p.iph.daddr) || (!(dev->flags & IFF_POINTOPOINT) && p.iph.daddr)) @@ -557,6 +807,8 @@ nla_total_size(0) + /* IFLA_IPTUN_FWMARK */ nla_total_size(4) + + /* IFLA_IPTUN_FAN_MAP */ + nla_total_size(sizeof(struct ifla_fan_map)) * 256 + 0; } @@ -589,6 +841,26 @@ if (tunnel->collect_md) if (nla_put_flag(skb, IFLA_IPTUN_COLLECT_METADATA)) goto nla_put_failure; + if (fan_has_map(&tunnel->fan)) { + struct nlattr *fan_nest; + struct ip_fan_map *fan_map; + + fan_nest = nla_nest_start(skb, IFLA_IPTUN_FAN_MAP); + if (!fan_nest) + goto nla_put_failure; + list_for_each_entry_rcu(fan_map, &tunnel->fan.fan_maps, list) { + struct ifla_fan_map map; + + map.underlay = fan_map->underlay; + map.underlay_prefix = fan_map->underlay_prefix; + map.overlay = fan_map->overlay; + map.overlay_prefix = fan_map->overlay_prefix; + if (nla_put(skb, IFLA_FAN_MAPPING, sizeof(map), &map)) + goto nla_put_failure; + } + nla_nest_end(skb, fan_nest); + } + return 0; nla_put_failure: @@ -609,6 +881,9 @@ [IFLA_IPTUN_ENCAP_DPORT] = { .type = NLA_U16 }, [IFLA_IPTUN_COLLECT_METADATA] = { .type = NLA_FLAG }, [IFLA_IPTUN_FWMARK] = { .type = NLA_U32 }, + + [__IFLA_IPTUN_VENDOR_BREAK ... IFLA_IPTUN_MAX] = { .type = NLA_BINARY }, + [IFLA_IPTUN_FAN_MAP] = { .type = NLA_NESTED }, }; static struct rtnl_link_ops ipip_link_ops __read_mostly = { @@ -657,6 +932,23 @@ .size = sizeof(struct ip_tunnel_net), }; +#ifdef CONFIG_SYSCTL +static struct ctl_table_header *ipip_fan_header; +static unsigned int ipip_fan_version = 3; + +static struct ctl_table ipip_fan_sysctls[] = { + { + .procname = "version", + .data = &ipip_fan_version, + .maxlen = sizeof(ipip_fan_version), + .mode = 0444, + .proc_handler = proc_dointvec, + }, + {}, +}; + +#endif /* CONFIG_SYSCTL */ + static int __init ipip_init(void) { int err; @@ -682,9 +974,22 @@ if (err < 0) goto rtnl_link_failed; +#ifdef CONFIG_SYSCTL + ipip_fan_header = register_net_sysctl(&init_net, "net/fan", + ipip_fan_sysctls); + if (!ipip_fan_header) { + err = -ENOMEM; + goto sysctl_failed; + } +#endif /* CONFIG_SYSCTL */ + out: return err; +#ifdef CONFIG_SYSCTL +sysctl_failed: + rtnl_link_unregister(&ipip_link_ops); +#endif /* CONFIG_SYSCTL */ rtnl_link_failed: #if IS_ENABLED(CONFIG_MPLS) xfrm4_tunnel_deregister(&mplsip_handler, AF_MPLS); @@ -699,6 +1004,9 @@ static void __exit ipip_fini(void) { +#ifdef CONFIG_SYSCTL + unregister_net_sysctl_table(ipip_fan_header); +#endif /* CONFIG_SYSCTL */ rtnl_link_unregister(&ipip_link_ops); if (xfrm4_tunnel_deregister(&ipip_handler, AF_INET)) pr_info("%s: can't deregister tunnel\n", __func__); --- linux-azure-5.8-5.8.0.orig/net/ipv4/netfilter.c +++ linux-azure-5.8-5.8.0/net/ipv4/netfilter.c @@ -17,17 +17,19 @@ #include /* route_me_harder function, used by iptable_nat, iptable_mangle + ip_queue */ -int ip_route_me_harder(struct net *net, struct sk_buff *skb, unsigned int addr_type) +int ip_route_me_harder(struct net *net, struct sock *sk, struct sk_buff *skb, unsigned int addr_type) { const struct iphdr *iph = ip_hdr(skb); struct rtable *rt; struct flowi4 fl4 = {}; __be32 saddr = iph->saddr; - const struct sock *sk = skb_to_full_sk(skb); - __u8 flags = sk ? inet_sk_flowi_flags(sk) : 0; + __u8 flags; struct net_device *dev = skb_dst(skb)->dev; unsigned int hh_len; + sk = sk_to_full_sk(sk); + flags = sk ? inet_sk_flowi_flags(sk) : 0; + if (addr_type == RTN_UNSPEC) addr_type = inet_addr_type_dev_table(net, dev, saddr); if (addr_type == RTN_LOCAL || addr_type == RTN_UNICAST) --- linux-azure-5.8-5.8.0.orig/net/ipv4/netfilter/arp_tables.c +++ linux-azure-5.8-5.8.0/net/ipv4/netfilter/arp_tables.c @@ -295,6 +295,17 @@ memcmp(&e->arp, &uncond, sizeof(uncond)) == 0; } +static bool next_offset_ok(const struct xt_table_info *t, unsigned int newpos) +{ + if (newpos > t->size - sizeof(struct arpt_entry)) + return false; + + if (newpos % __alignof__(struct arpt_entry) != 0) + return false; + + return true; +} + /* Figures out from what hook each rule can be called: returns 0 if * there are loops. Puts hook bitmask in comefrom. */ @@ -353,6 +364,8 @@ /* Move along one */ size = e->next_offset; + if (!next_offset_ok(newinfo, pos + size)) + return 0; e = entry0 + pos + size; if (pos + size >= newinfo->size) return 0; @@ -374,6 +387,10 @@ if (newpos >= newinfo->size) return 0; } + + if (!next_offset_ok(newinfo, newpos)) + return 0; + e = entry0 + newpos; e->counters.pcnt = pos; pos = newpos; --- linux-azure-5.8-5.8.0.orig/net/ipv4/netfilter/ip_tables.c +++ linux-azure-5.8-5.8.0/net/ipv4/netfilter/ip_tables.c @@ -362,6 +362,17 @@ else return verdict; } +static bool next_offset_ok(const struct xt_table_info *t, unsigned int newpos) +{ + if (newpos > t->size - sizeof(struct ipt_entry)) + return false; + + if (newpos % __alignof__(struct ipt_entry) != 0) + return false; + + return true; +} + /* Figures out from what hook each rule can be called: returns 0 if there are loops. Puts hook bitmask in comefrom. */ static int @@ -417,6 +428,8 @@ /* Move along one */ size = e->next_offset; + if (!next_offset_ok(newinfo, pos + size)) + return 0; e = entry0 + pos + size; if (pos + size >= newinfo->size) return 0; @@ -438,6 +451,10 @@ if (newpos >= newinfo->size) return 0; } + + if (!next_offset_ok(newinfo, newpos)) + return 0; + e = entry0 + newpos; e->counters.pcnt = pos; pos = newpos; --- linux-azure-5.8-5.8.0.orig/net/ipv4/netfilter/ipt_rpfilter.c +++ linux-azure-5.8-5.8.0/net/ipv4/netfilter/ipt_rpfilter.c @@ -76,7 +76,7 @@ flow.daddr = iph->saddr; flow.saddr = rpfilter_get_saddr(iph->daddr); flow.flowi4_mark = info->flags & XT_RPFILTER_VALID_MARK ? skb->mark : 0; - flow.flowi4_tos = RT_TOS(iph->tos); + flow.flowi4_tos = iph->tos & IPTOS_RT_MASK; flow.flowi4_scope = RT_SCOPE_UNIVERSE; flow.flowi4_oif = l3mdev_master_ifindex_rcu(xt_in(par)); --- linux-azure-5.8-5.8.0.orig/net/ipv4/netfilter/iptable_mangle.c +++ linux-azure-5.8-5.8.0/net/ipv4/netfilter/iptable_mangle.c @@ -62,7 +62,7 @@ iph->daddr != daddr || skb->mark != mark || iph->tos != tos) { - err = ip_route_me_harder(state->net, skb, RTN_UNSPEC); + err = ip_route_me_harder(state->net, state->sk, skb, RTN_UNSPEC); if (err < 0) ret = NF_DROP_ERR(err); } --- linux-azure-5.8-5.8.0.orig/net/ipv4/netfilter/nf_log_arp.c +++ linux-azure-5.8-5.8.0/net/ipv4/netfilter/nf_log_arp.c @@ -43,16 +43,31 @@ const struct nf_loginfo *info, const struct sk_buff *skb, unsigned int nhoff) { - const struct arphdr *ah; - struct arphdr _arph; const struct arppayload *ap; struct arppayload _arpp; + const struct arphdr *ah; + unsigned int logflags; + struct arphdr _arph; ah = skb_header_pointer(skb, 0, sizeof(_arph), &_arph); if (ah == NULL) { nf_log_buf_add(m, "TRUNCATED"); return; } + + if (info->type == NF_LOG_TYPE_LOG) + logflags = info->u.log.logflags; + else + logflags = NF_LOG_DEFAULT_MASK; + + if (logflags & NF_LOG_MACDECODE) { + nf_log_buf_add(m, "MACSRC=%pM MACDST=%pM ", + eth_hdr(skb)->h_source, eth_hdr(skb)->h_dest); + nf_log_dump_vlan(m, skb); + nf_log_buf_add(m, "MACPROTO=%04x ", + ntohs(eth_hdr(skb)->h_proto)); + } + nf_log_buf_add(m, "ARP HTYPE=%d PTYPE=0x%04x OPCODE=%d", ntohs(ah->ar_hrd), ntohs(ah->ar_pro), ntohs(ah->ar_op)); --- linux-azure-5.8-5.8.0.orig/net/ipv4/netfilter/nf_log_ipv4.c +++ linux-azure-5.8-5.8.0/net/ipv4/netfilter/nf_log_ipv4.c @@ -284,8 +284,10 @@ switch (dev->type) { case ARPHRD_ETHER: - nf_log_buf_add(m, "MACSRC=%pM MACDST=%pM MACPROTO=%04x ", - eth_hdr(skb)->h_source, eth_hdr(skb)->h_dest, + nf_log_buf_add(m, "MACSRC=%pM MACDST=%pM ", + eth_hdr(skb)->h_source, eth_hdr(skb)->h_dest); + nf_log_dump_vlan(m, skb); + nf_log_buf_add(m, "MACPROTO=%04x ", ntohs(eth_hdr(skb)->h_proto)); return; default: --- linux-azure-5.8-5.8.0.orig/net/ipv4/netfilter/nf_reject_ipv4.c +++ linux-azure-5.8-5.8.0/net/ipv4/netfilter/nf_reject_ipv4.c @@ -127,7 +127,7 @@ ip4_dst_hoplimit(skb_dst(nskb))); nf_reject_ip_tcphdr_put(nskb, oldskb, oth); - if (ip_route_me_harder(net, nskb, RTN_UNSPEC)) + if (ip_route_me_harder(net, nskb->sk, nskb, RTN_UNSPEC)) goto free_nskb; niph = ip_hdr(nskb); --- linux-azure-5.8-5.8.0.orig/net/ipv4/nexthop.c +++ linux-azure-5.8-5.8.0/net/ipv4/nexthop.c @@ -446,7 +446,7 @@ unsigned int i, j; u8 nhg_fdb = 0; - if (len & (sizeof(struct nexthop_grp) - 1)) { + if (!len || len & (sizeof(struct nexthop_grp) - 1)) { NL_SET_ERR_MSG(extack, "Invalid length for nexthop group attribute"); return -EINVAL; @@ -499,7 +499,7 @@ for (i = NHA_GROUP_TYPE + 1; i < __NHA_MAX; ++i) { if (!tb[i]) continue; - if (tb[NHA_FDB]) + if (i == NHA_FDB) continue; NL_SET_ERR_MSG(extack, "No other attributes can be set in nexthop groups"); @@ -842,7 +842,7 @@ remove_nh_grp_entry(net, nhge, nlinfo); /* make sure all see the newly published array before releasing rtnl */ - synchronize_rcu(); + synchronize_net(); } static void remove_nexthop_group(struct nexthop *nh, struct nl_info *nlinfo) @@ -1187,6 +1187,9 @@ struct nexthop *nh; int i; + if (WARN_ON(!num_nh)) + return ERR_PTR(-EINVAL); + nh = nexthop_alloc(); if (!nh) return ERR_PTR(-ENOMEM); @@ -1239,8 +1242,10 @@ return nh; out_no_nh: - for (; i >= 0; --i) + for (i--; i >= 0; --i) { + list_del(&nhg->nh_entries[i].nh_list); nexthop_put(nhg->nh_entries[i].nh); + } kfree(nhg->spare); kfree(nhg); --- linux-azure-5.8-5.8.0.orig/net/ipv4/route.c +++ linux-azure-5.8-5.8.0/net/ipv4/route.c @@ -786,8 +786,10 @@ neigh_event_send(n, NULL); } else { if (fib_lookup(net, fl4, &res, 0) == 0) { - struct fib_nh_common *nhc = FIB_RES_NHC(res); + struct fib_nh_common *nhc; + fib_select_path(net, &res, fl4, skb); + nhc = FIB_RES_NHC(res); update_or_create_fnhe(nhc, fl4->daddr, new_gw, 0, false, jiffies + ip_rt_gc_timeout); @@ -1013,6 +1015,7 @@ static void __ip_rt_update_pmtu(struct rtable *rt, struct flowi4 *fl4, u32 mtu) { struct dst_entry *dst = &rt->dst; + struct net *net = dev_net(dst->dev); u32 old_mtu = ipv4_mtu(dst); struct fib_result res; bool lock = false; @@ -1033,9 +1036,11 @@ return; rcu_read_lock(); - if (fib_lookup(dev_net(dst->dev), fl4, &res, 0) == 0) { - struct fib_nh_common *nhc = FIB_RES_NHC(res); + if (fib_lookup(net, fl4, &res, 0) == 0) { + struct fib_nh_common *nhc; + fib_select_path(net, &res, fl4, NULL); + nhc = FIB_RES_NHC(res); update_or_create_fnhe(nhc, fl4->daddr, 0, mtu, lock, jiffies + ip_rt_mtu_expires); } @@ -2142,6 +2147,7 @@ fl4.daddr = daddr; fl4.saddr = saddr; fl4.flowi4_uid = sock_net_uid(net, NULL); + fl4.flowi4_multipath_hash = 0; if (fib4_rules_early_flow_dissect(net, skb, &fl4, &_flkeys)) { flkeys = &_flkeys; @@ -2662,8 +2668,6 @@ fib_select_path(net, res, fl4, skb); dev_out = FIB_RES_DEV(*res); - fl4->flowi4_oif = dev_out->ifindex; - make_route: rth = __mkroute_output(res, fl4, orig_oif, dev_out, flags); @@ -2760,10 +2764,12 @@ if (IS_ERR(rt)) return rt; - if (flp4->flowi4_proto) + if (flp4->flowi4_proto) { + flp4->flowi4_oif = rt->dst.dev->ifindex; rt = (struct rtable *)xfrm_lookup_route(net, &rt->dst, flowi4_to_flowi(flp4), sk, 0); + } return rt; } @@ -3210,7 +3216,7 @@ fl4.daddr = dst; fl4.saddr = src; - fl4.flowi4_tos = rtm->rtm_tos; + fl4.flowi4_tos = rtm->rtm_tos & IPTOS_RT_MASK; fl4.flowi4_oif = tb[RTA_OIF] ? nla_get_u32(tb[RTA_OIF]) : 0; fl4.flowi4_mark = mark; fl4.flowi4_uid = uid; @@ -3234,8 +3240,9 @@ fl4.flowi4_iif = iif; /* for rt_fill_info */ skb->dev = dev; skb->mark = mark; - err = ip_route_input_rcu(skb, dst, src, rtm->rtm_tos, - dev, &res); + err = ip_route_input_rcu(skb, dst, src, + rtm->rtm_tos & IPTOS_RT_MASK, dev, + &res); rt = skb_rtable(skb); if (err == 0 && rt->dst.error) --- linux-azure-5.8-5.8.0.orig/net/ipv4/syncookies.c +++ linux-azure-5.8-5.8.0/net/ipv4/syncookies.c @@ -291,7 +291,7 @@ __u32 cookie = ntohl(th->ack_seq) - 1; struct sock *ret = sk; struct request_sock *req; - int mss; + int full_space, mss; struct rtable *rt; __u8 rcv_wscale; struct flowi4 fl4; @@ -390,8 +390,13 @@ /* Try to redo what tcp_v4_send_synack did. */ req->rsk_window_clamp = tp->window_clamp ? :dst_metric(&rt->dst, RTAX_WINDOW); + /* limit the window selection if the user enforce a smaller rx buffer */ + full_space = tcp_full_space(sk); + if (sk->sk_userlocks & SOCK_RCVBUF_LOCK && + (req->rsk_window_clamp > full_space || req->rsk_window_clamp == 0)) + req->rsk_window_clamp = full_space; - tcp_select_initial_window(sk, tcp_full_space(sk), req->mss, + tcp_select_initial_window(sk, full_space, req->mss, &req->rsk_rcv_wnd, &req->rsk_window_clamp, ireq->wscale_ok, &rcv_wscale, dst_metric(&rt->dst, RTAX_INITRWND)); --- linux-azure-5.8-5.8.0.orig/net/ipv4/sysctl_net_ipv4.c +++ linux-azure-5.8-5.8.0/net/ipv4/sysctl_net_ipv4.c @@ -301,24 +301,16 @@ struct ctl_table tbl = { .maxlen = ((TCP_FASTOPEN_KEY_LENGTH * 2 * TCP_FASTOPEN_KEY_MAX) + (TCP_FASTOPEN_KEY_MAX * 5)) }; - struct tcp_fastopen_context *ctx; - u32 user_key[TCP_FASTOPEN_KEY_MAX * 4]; - __le32 key[TCP_FASTOPEN_KEY_MAX * 4]; + u32 user_key[TCP_FASTOPEN_KEY_BUF_LENGTH / sizeof(u32)]; + __le32 key[TCP_FASTOPEN_KEY_BUF_LENGTH / sizeof(__le32)]; char *backup_data; - int ret, i = 0, off = 0, n_keys = 0; + int ret, i = 0, off = 0, n_keys; tbl.data = kmalloc(tbl.maxlen, GFP_KERNEL); if (!tbl.data) return -ENOMEM; - rcu_read_lock(); - ctx = rcu_dereference(net->ipv4.tcp_fastopen_ctx); - if (ctx) { - n_keys = tcp_fastopen_context_len(ctx); - memcpy(&key[0], &ctx->key[0], TCP_FASTOPEN_KEY_LENGTH * n_keys); - } - rcu_read_unlock(); - + n_keys = tcp_fastopen_get_cipher(net, NULL, (u64 *)key); if (!n_keys) { memset(&key[0], 0, TCP_FASTOPEN_KEY_LENGTH); n_keys = 1; --- linux-azure-5.8-5.8.0.orig/net/ipv4/tcp.c +++ linux-azure-5.8-5.8.0/net/ipv4/tcp.c @@ -483,6 +483,8 @@ return true; if (tcp_rmem_pressure(sk)) return true; + if (tcp_receive_window(tp) <= inet_csk(sk)->icsk_ack.rcv_mss) + return true; } if (sk->sk_prot->stream_memory_read) return sk->sk_prot->stream_memory_read(sk); @@ -970,7 +972,8 @@ long timeo = sock_sndtimeo(sk, flags & MSG_DONTWAIT); if (IS_ENABLED(CONFIG_DEBUG_VM) && - WARN_ONCE(PageSlab(page), "page must not be a Slab one")) + WARN_ONCE(!sendpage_ok(page), + "page must not be a Slab one and have page_count > 0")) return -EINVAL; /* Wait for a connection to finish. One exception is TCP Fast Open @@ -2684,6 +2687,7 @@ icsk->icsk_backoff = 0; icsk->icsk_probes_out = 0; + icsk->icsk_probes_tstamp = 0; icsk->icsk_rto = TCP_TIMEOUT_INIT; tp->snd_ssthresh = TCP_INFINITE_SSTHRESH; tp->snd_cwnd = TCP_INIT_CWND; @@ -3694,22 +3698,14 @@ return 0; case TCP_FASTOPEN_KEY: { - __u8 key[TCP_FASTOPEN_KEY_BUF_LENGTH]; - struct tcp_fastopen_context *ctx; - unsigned int key_len = 0; + u64 key[TCP_FASTOPEN_KEY_BUF_LENGTH / sizeof(u64)]; + unsigned int key_len; if (get_user(len, optlen)) return -EFAULT; - rcu_read_lock(); - ctx = rcu_dereference(icsk->icsk_accept_queue.fastopenq.ctx); - if (ctx) { - key_len = tcp_fastopen_context_len(ctx) * - TCP_FASTOPEN_KEY_LENGTH; - memcpy(&key[0], &ctx->key[0], key_len); - } - rcu_read_unlock(); - + key_len = tcp_fastopen_get_cipher(net, icsk, key) * + TCP_FASTOPEN_KEY_LENGTH; len = min_t(unsigned int, len, key_len); if (put_user(len, optlen)) return -EFAULT; --- linux-azure-5.8-5.8.0.orig/net/ipv4/tcp_bbr.c +++ linux-azure-5.8-5.8.0/net/ipv4/tcp_bbr.c @@ -945,7 +945,7 @@ filter_expired = after(tcp_jiffies32, bbr->min_rtt_stamp + bbr_min_rtt_win_sec * HZ); if (rs->rtt_us >= 0 && - (rs->rtt_us <= bbr->min_rtt_us || + (rs->rtt_us < bbr->min_rtt_us || (filter_expired && !rs->is_ack_delayed))) { bbr->min_rtt_us = rs->rtt_us; bbr->min_rtt_stamp = tcp_jiffies32; --- linux-azure-5.8-5.8.0.orig/net/ipv4/tcp_bpf.c +++ linux-azure-5.8-5.8.0/net/ipv4/tcp_bpf.c @@ -15,8 +15,8 @@ { struct iov_iter *iter = &msg->msg_iter; int peek = flags & MSG_PEEK; - int i, ret, copied = 0; struct sk_msg *msg_rx; + int i, copied = 0; msg_rx = list_first_entry_or_null(&psock->ingress_msg, struct sk_msg, list); @@ -37,17 +37,16 @@ page = sg_page(sge); if (copied + copy > len) copy = len - copied; - ret = copy_page_to_iter(page, sge->offset, copy, iter); - if (ret != copy) { - msg_rx->sg.start = i; - return -EFAULT; - } + copy = copy_page_to_iter(page, sge->offset, copy, iter); + if (!copy) + return copied ? copied : -EFAULT; copied += copy; if (likely(!peek)) { sge->offset += copy; sge->length -= copy; - sk_mem_uncharge(sk, copy); + if (!msg_rx->skb) + sk_mem_uncharge(sk, copy); msg_rx->sg.size -= copy; if (!sge->length) { @@ -56,6 +55,11 @@ put_page(page); } } else { + /* Lets not optimize peek case if copy_page_to_iter + * didn't copy the entire length lets just break. + */ + if (copy != sge->length) + return copied; sk_msg_iter_var_next(i); } --- linux-azure-5.8-5.8.0.orig/net/ipv4/tcp_cong.c +++ linux-azure-5.8-5.8.0/net/ipv4/tcp_cong.c @@ -197,6 +197,11 @@ icsk->icsk_ca_setsockopt = 1; memset(icsk->icsk_ca_priv, 0, sizeof(icsk->icsk_ca_priv)); + if (ca->flags & TCP_CONG_NEEDS_ECN) + INET_ECN_xmit(sk); + else + INET_ECN_dontxmit(sk); + if (!((1 << sk->sk_state) & (TCPF_CLOSE | TCPF_LISTEN))) tcp_init_congestion_control(sk); } --- linux-azure-5.8-5.8.0.orig/net/ipv4/tcp_fastopen.c +++ linux-azure-5.8-5.8.0/net/ipv4/tcp_fastopen.c @@ -108,6 +108,29 @@ return err; } +int tcp_fastopen_get_cipher(struct net *net, struct inet_connection_sock *icsk, + u64 *key) +{ + struct tcp_fastopen_context *ctx; + int n_keys = 0, i; + + rcu_read_lock(); + if (icsk) + ctx = rcu_dereference(icsk->icsk_accept_queue.fastopenq.ctx); + else + ctx = rcu_dereference(net->ipv4.tcp_fastopen_ctx); + if (ctx) { + n_keys = tcp_fastopen_context_len(ctx); + for (i = 0; i < n_keys; i++) { + put_unaligned_le64(ctx->key[i].key[0], key + (i * 2)); + put_unaligned_le64(ctx->key[i].key[1], key + (i * 2) + 1); + } + } + rcu_read_unlock(); + + return n_keys; +} + static bool __tcp_fastopen_cookie_gen_cipher(struct request_sock *req, struct sk_buff *syn, const siphash_key_t *key, --- linux-azure-5.8-5.8.0.orig/net/ipv4/tcp_input.c +++ linux-azure-5.8-5.8.0/net/ipv4/tcp_input.c @@ -447,7 +447,6 @@ if (!(sk->sk_userlocks & SOCK_SNDBUF_LOCK)) tcp_sndbuf_expand(sk); - tp->rcvq_space.space = min_t(u32, tp->rcv_wnd, TCP_INIT_CWND * tp->advmss); tcp_mstamp_refresh(tp); tp->rcvq_space.time = tp->tcp_mstamp; tp->rcvq_space.seq = tp->copied_seq; @@ -471,6 +470,8 @@ tp->rcv_ssthresh = min(tp->rcv_ssthresh, tp->window_clamp); tp->snd_cwnd_stamp = tcp_jiffies32; + tp->rcvq_space.space = min3(tp->rcv_ssthresh, tp->rcv_wnd, + (u32)TCP_INIT_CWND * tp->advmss); } /* 4. Recalculate window clamp after socket hit its memory bounds. */ @@ -2747,7 +2748,8 @@ } else if (tcp_is_rack(sk)) { u32 prior_retrans = tp->retrans_out; - tcp_rack_mark_lost(sk); + if (tcp_rack_mark_lost(sk)) + *ack_flag &= ~FLAG_SET_XMIT_TIMER; if (prior_retrans > tp->retrans_out) *ack_flag |= FLAG_LOST_RETRANS; } @@ -3266,6 +3268,7 @@ return; if (!after(TCP_SKB_CB(head)->end_seq, tcp_wnd_end(tp))) { icsk->icsk_backoff = 0; + icsk->icsk_probes_tstamp = 0; inet_csk_clear_xmit_timer(sk, ICSK_TIME_PROBE0); /* Socket must be waked up by subsequent tcp_data_snd_check(). * This function is not for random using! @@ -3273,8 +3276,8 @@ } else { unsigned long when = tcp_probe0_when(sk, TCP_RTO_MAX); - tcp_reset_xmit_timer(sk, ICSK_TIME_PROBE0, - when, TCP_RTO_MAX); + when = tcp_clamp_probe0_to_user_timeout(sk, when); + tcp_reset_xmit_timer(sk, ICSK_TIME_PROBE0, when, TCP_RTO_MAX); } } @@ -3692,9 +3695,6 @@ if (tp->tlp_high_seq) tcp_process_tlp_ack(sk, ack, flag); - /* If needed, reset TLP/RTO timer; RACK may later override this. */ - if (flag & FLAG_SET_XMIT_TIMER) - tcp_set_xmit_timer(sk); if (tcp_ack_is_dubious(sk, flag)) { if (!(flag & (FLAG_SND_UNA_ADVANCED | FLAG_NOT_DUP))) { @@ -3707,6 +3707,10 @@ &rexmit); } + /* If needed, reset TLP/RTO timer when RACK doesn't set. */ + if (flag & FLAG_SET_XMIT_TIMER) + tcp_set_xmit_timer(sk); + if ((flag & FLAG_FORWARD_PROGRESS) || !(flag & FLAG_NOT_DUP)) sk_dst_confirm(sk); @@ -4260,10 +4264,9 @@ * The receiver remembers and reflects via DSACKs. Leverage the * DSACK state and change the txhash to re-route speculatively. */ - if (TCP_SKB_CB(skb)->seq == tcp_sk(sk)->duplicate_sack[0].start_seq) { - sk_rethink_txhash(sk); + if (TCP_SKB_CB(skb)->seq == tcp_sk(sk)->duplicate_sack[0].start_seq && + sk_rethink_txhash(sk)) NET_INC_STATS(sock_net(sk), LINUX_MIB_TCPDUPLICATEDATAREHASH); - } } static void tcp_send_dupack(struct sock *sk, const struct sk_buff *skb) @@ -4790,7 +4793,8 @@ int avail = tp->rcv_nxt - tp->copied_seq; if (avail < sk->sk_rcvlowat && !tcp_rmem_pressure(sk) && - !sock_flag(sk, SOCK_DONE)) + !sock_flag(sk, SOCK_DONE) && + tcp_receive_window(tp) > inet_csk(sk)->icsk_ack.rcv_mss) return; sk->sk_data_ready(sk); @@ -5716,6 +5720,8 @@ tcp_data_snd_check(sk); if (!inet_csk_ack_scheduled(sk)) goto no_ack; + } else { + tcp_update_wl(tp, TCP_SKB_CB(skb)->seq); } __tcp_ack_snd_check(sk, 0); --- linux-azure-5.8-5.8.0.orig/net/ipv4/tcp_ipv4.c +++ linux-azure-5.8-5.8.0/net/ipv4/tcp_ipv4.c @@ -1725,6 +1725,7 @@ bool tcp_add_backlog(struct sock *sk, struct sk_buff *skb) { u32 limit = READ_ONCE(sk->sk_rcvbuf) + READ_ONCE(sk->sk_sndbuf); + u32 tail_gso_size, tail_gso_segs; struct skb_shared_info *shinfo; const struct tcphdr *th; struct tcphdr *thtail; @@ -1732,6 +1733,7 @@ unsigned int hdrlen; bool fragstolen; u32 gso_segs; + u32 gso_size; int delta; /* In case all data was pulled from skb frags (in __pskb_pull_tail()), @@ -1757,13 +1759,6 @@ */ th = (const struct tcphdr *)skb->data; hdrlen = th->doff * 4; - shinfo = skb_shinfo(skb); - - if (!shinfo->gso_size) - shinfo->gso_size = skb->len - hdrlen; - - if (!shinfo->gso_segs) - shinfo->gso_segs = 1; tail = sk->sk_backlog.tail; if (!tail) @@ -1786,13 +1781,22 @@ goto no_coalesce; __skb_pull(skb, hdrlen); - if (skb_try_coalesce(tail, skb, &fragstolen, &delta)) { - thtail->window = th->window; + shinfo = skb_shinfo(skb); + gso_size = shinfo->gso_size ?: skb->len; + gso_segs = shinfo->gso_segs ?: 1; + + shinfo = skb_shinfo(tail); + tail_gso_size = shinfo->gso_size ?: (tail->len - hdrlen); + tail_gso_segs = shinfo->gso_segs ?: 1; + + if (skb_try_coalesce(tail, skb, &fragstolen, &delta)) { TCP_SKB_CB(tail)->end_seq = TCP_SKB_CB(skb)->end_seq; - if (after(TCP_SKB_CB(skb)->ack_seq, TCP_SKB_CB(tail)->ack_seq)) + if (likely(!before(TCP_SKB_CB(skb)->ack_seq, TCP_SKB_CB(tail)->ack_seq))) { TCP_SKB_CB(tail)->ack_seq = TCP_SKB_CB(skb)->ack_seq; + thtail->window = th->window; + } /* We have to update both TCP_SKB_CB(tail)->tcp_flags and * thtail->fin, so that the fast path in tcp_rcv_established() @@ -1812,11 +1816,8 @@ } /* Not as strict as GRO. We only need to carry mss max value */ - skb_shinfo(tail)->gso_size = max(shinfo->gso_size, - skb_shinfo(tail)->gso_size); - - gso_segs = skb_shinfo(tail)->gso_segs + shinfo->gso_segs; - skb_shinfo(tail)->gso_segs = min_t(u32, gso_segs, 0xFFFF); + shinfo->gso_size = max(gso_size, tail_gso_size); + shinfo->gso_segs = min_t(u32, gso_segs + tail_gso_segs, 0xFFFF); sk->sk_backlog.len += delta; __NET_INC_STATS(sock_net(sk), --- linux-azure-5.8-5.8.0.orig/net/ipv4/tcp_output.c +++ linux-azure-5.8-5.8.0/net/ipv4/tcp_output.c @@ -1715,7 +1715,8 @@ * window, and remember whether we were cwnd-limited then. */ if (!before(tp->snd_una, tp->max_packets_seq) || - tp->packets_out > tp->max_packets_out) { + tp->packets_out > tp->max_packets_out || + is_cwnd_limited) { tp->max_packets_out = tp->packets_out; tp->max_packets_seq = tp->snd_nxt; tp->is_cwnd_limited = is_cwnd_limited; @@ -2537,6 +2538,10 @@ else tcp_chrono_stop(sk, TCP_CHRONO_RWND_LIMITED); + is_cwnd_limited |= (tcp_packets_in_flight(tp) >= tp->snd_cwnd); + if (likely(sent_pkts || is_cwnd_limited)) + tcp_cwnd_validate(sk, is_cwnd_limited); + if (likely(sent_pkts)) { if (tcp_in_cwnd_reduction(sk)) tp->prr_out += sent_pkts; @@ -2544,8 +2549,6 @@ /* Send one loss probe per tail loss episode. */ if (push_one != 2) tcp_schedule_loss_probe(sk, false); - is_cwnd_limited |= (tcp_packets_in_flight(tp) >= tp->snd_cwnd); - tcp_cwnd_validate(sk, is_cwnd_limited); return false; } return !tp->packets_out && !tcp_write_queue_empty(sk); @@ -3900,6 +3903,7 @@ /* Cancel probe timer, if it is not required. */ icsk->icsk_probes_out = 0; icsk->icsk_backoff = 0; + icsk->icsk_probes_tstamp = 0; return; } @@ -3914,6 +3918,8 @@ */ timeout = TCP_RESOURCE_PROBE_INTERVAL; } + + timeout = tcp_clamp_probe0_to_user_timeout(sk, timeout); tcp_reset_xmit_timer(sk, ICSK_TIME_PROBE0, timeout, TCP_RTO_MAX); } --- linux-azure-5.8-5.8.0.orig/net/ipv4/tcp_recovery.c +++ linux-azure-5.8-5.8.0/net/ipv4/tcp_recovery.c @@ -110,13 +110,13 @@ } } -void tcp_rack_mark_lost(struct sock *sk) +bool tcp_rack_mark_lost(struct sock *sk) { struct tcp_sock *tp = tcp_sk(sk); u32 timeout; if (!tp->rack.advanced) - return; + return false; /* Reset the advanced flag to avoid unnecessary queue scanning */ tp->rack.advanced = 0; @@ -126,6 +126,7 @@ inet_csk_reset_xmit_timer(sk, ICSK_TIME_REO_TIMEOUT, timeout, inet_csk(sk)->icsk_rto); } + return !!timeout; } /* Record the most recently (re)sent time among the (s)acked packets --- linux-azure-5.8-5.8.0.orig/net/ipv4/tcp_timer.c +++ linux-azure-5.8-5.8.0/net/ipv4/tcp_timer.c @@ -40,6 +40,24 @@ return min_t(u32, icsk->icsk_rto, msecs_to_jiffies(remaining)); } +u32 tcp_clamp_probe0_to_user_timeout(const struct sock *sk, u32 when) +{ + struct inet_connection_sock *icsk = inet_csk(sk); + u32 remaining; + s32 elapsed; + + if (!icsk->icsk_user_timeout || !icsk->icsk_probes_tstamp) + return when; + + elapsed = tcp_jiffies32 - icsk->icsk_probes_tstamp; + if (unlikely(elapsed < 0)) + elapsed = 0; + remaining = msecs_to_jiffies(icsk->icsk_user_timeout) - elapsed; + remaining = max_t(u32, remaining, TCP_TIMEOUT_MIN); + + return min_t(u32, remaining, when); +} + /** * tcp_write_err() - close socket and save error info * @sk: The socket the error has appeared on. @@ -219,14 +237,8 @@ int retry_until; if ((1 << sk->sk_state) & (TCPF_SYN_SENT | TCPF_SYN_RECV)) { - if (icsk->icsk_retransmits) { - dst_negative_advice(sk); - } else { - sk_rethink_txhash(sk); - tp->timeout_rehash++; - __NET_INC_STATS(sock_net(sk), - LINUX_MIB_TCPTIMEOUTREHASH); - } + if (icsk->icsk_retransmits) + __dst_negative_advice(sk); retry_until = icsk->icsk_syn_retries ? : net->ipv4.sysctl_tcp_syn_retries; expired = icsk->icsk_retransmits >= retry_until; } else { @@ -234,12 +246,7 @@ /* Black hole detection */ tcp_mtu_probing(icsk, sk); - dst_negative_advice(sk); - } else { - sk_rethink_txhash(sk); - tp->timeout_rehash++; - __NET_INC_STATS(sock_net(sk), - LINUX_MIB_TCPTIMEOUTREHASH); + __dst_negative_advice(sk); } retry_until = net->ipv4.sysctl_tcp_retries2; @@ -270,6 +277,11 @@ return 1; } + if (sk_rethink_txhash(sk)) { + tp->timeout_rehash++; + __NET_INC_STATS(sock_net(sk), LINUX_MIB_TCPTIMEOUTREHASH); + } + return 0; } @@ -350,6 +362,7 @@ if (tp->packets_out || !skb) { icsk->icsk_probes_out = 0; + icsk->icsk_probes_tstamp = 0; return; } @@ -361,13 +374,12 @@ * corresponding system limit. We also implement similar policy when * we use RTO to probe window in tcp_retransmit_timer(). */ - if (icsk->icsk_user_timeout) { - u32 elapsed = tcp_model_timeout(sk, icsk->icsk_probes_out, - tcp_probe0_base(sk)); - - if (elapsed >= icsk->icsk_user_timeout) - goto abort; - } + if (!icsk->icsk_probes_tstamp) + icsk->icsk_probes_tstamp = tcp_jiffies32; + else if (icsk->icsk_user_timeout && + (s32)(tcp_jiffies32 - icsk->icsk_probes_tstamp) >= + msecs_to_jiffies(icsk->icsk_user_timeout)) + goto abort; max_probes = sock_net(sk)->ipv4.sysctl_tcp_retries2; if (sock_flag(sk, SOCK_DEAD)) { --- linux-azure-5.8-5.8.0.orig/net/ipv4/udp.c +++ linux-azure-5.8-5.8.0/net/ipv4/udp.c @@ -2122,7 +2122,7 @@ __skb_pull(skb, skb_transport_offset(skb)); ret = udp_queue_rcv_one_skb(sk, skb); if (ret > 0) - ip_protocol_deliver_rcu(dev_net(skb->dev), skb, -ret); + ip_protocol_deliver_rcu(dev_net(skb->dev), skb, ret); } return 0; } @@ -2502,7 +2502,8 @@ */ if (!inet_sk(sk)->inet_daddr && in_dev) return ip_mc_validate_source(skb, iph->daddr, - iph->saddr, iph->tos, + iph->saddr, + iph->tos & IPTOS_RT_MASK, skb->dev, in_dev, &itag); } return 0; --- linux-azure-5.8-5.8.0.orig/net/ipv4/udp_offload.c +++ linux-azure-5.8-5.8.0/net/ipv4/udp_offload.c @@ -184,8 +184,67 @@ } EXPORT_SYMBOL(skb_udp_tunnel_segment); +static void __udpv4_gso_segment_csum(struct sk_buff *seg, + __be32 *oldip, __be32 *newip, + __be16 *oldport, __be16 *newport) +{ + struct udphdr *uh; + struct iphdr *iph; + + if (*oldip == *newip && *oldport == *newport) + return; + + uh = udp_hdr(seg); + iph = ip_hdr(seg); + + if (uh->check) { + inet_proto_csum_replace4(&uh->check, seg, *oldip, *newip, + true); + inet_proto_csum_replace2(&uh->check, seg, *oldport, *newport, + false); + if (!uh->check) + uh->check = CSUM_MANGLED_0; + } + *oldport = *newport; + + csum_replace4(&iph->check, *oldip, *newip); + *oldip = *newip; +} + +static struct sk_buff *__udpv4_gso_segment_list_csum(struct sk_buff *segs) +{ + struct sk_buff *seg; + struct udphdr *uh, *uh2; + struct iphdr *iph, *iph2; + + seg = segs; + uh = udp_hdr(seg); + iph = ip_hdr(seg); + + if ((udp_hdr(seg)->dest == udp_hdr(seg->next)->dest) && + (udp_hdr(seg)->source == udp_hdr(seg->next)->source) && + (ip_hdr(seg)->daddr == ip_hdr(seg->next)->daddr) && + (ip_hdr(seg)->saddr == ip_hdr(seg->next)->saddr)) + return segs; + + while ((seg = seg->next)) { + uh2 = udp_hdr(seg); + iph2 = ip_hdr(seg); + + __udpv4_gso_segment_csum(seg, + &iph2->saddr, &iph->saddr, + &uh2->source, &uh->source); + __udpv4_gso_segment_csum(seg, + &iph2->daddr, &iph->daddr, + &uh2->dest, &uh->dest); + } + + return segs; +} + static struct sk_buff *__udp_gso_segment_list(struct sk_buff *skb, - netdev_features_t features) + netdev_features_t features, + bool is_ipv6) { unsigned int mss = skb_shinfo(skb)->gso_size; @@ -195,11 +254,11 @@ udp_hdr(skb)->len = htons(sizeof(struct udphdr) + mss); - return skb; + return is_ipv6 ? skb : __udpv4_gso_segment_list_csum(skb); } struct sk_buff *__udp_gso_segment(struct sk_buff *gso_skb, - netdev_features_t features) + netdev_features_t features, bool is_ipv6) { struct sock *sk = gso_skb->sk; unsigned int sum_truesize = 0; @@ -211,7 +270,7 @@ __be16 newlen; if (skb_shinfo(gso_skb)->gso_type & SKB_GSO_FRAGLIST) - return __udp_gso_segment_list(gso_skb, features); + return __udp_gso_segment_list(gso_skb, features, is_ipv6); mss = skb_shinfo(gso_skb)->gso_size; if (gso_skb->len <= sizeof(*uh) + mss) @@ -325,7 +384,7 @@ goto out; if (skb_shinfo(skb)->gso_type & SKB_GSO_UDP_L4) - return __udp_gso_segment(skb, features); + return __udp_gso_segment(skb, features, false); mss = skb_shinfo(skb)->gso_size; if (unlikely(skb->len <= mss)) @@ -366,7 +425,7 @@ static struct sk_buff *udp_gro_receive_segment(struct list_head *head, struct sk_buff *skb) { - struct udphdr *uh = udp_hdr(skb); + struct udphdr *uh = udp_gro_udphdr(skb); struct sk_buff *pp = NULL; struct udphdr *uh2; struct sk_buff *p; @@ -500,12 +559,22 @@ } EXPORT_SYMBOL(udp_gro_receive); +static struct sock *udp4_gro_lookup_skb(struct sk_buff *skb, __be16 sport, + __be16 dport) +{ + const struct iphdr *iph = skb_gro_network_header(skb); + + return __udp4_lib_lookup(dev_net(skb->dev), iph->saddr, sport, + iph->daddr, dport, inet_iif(skb), + inet_sdif(skb), &udp_table, NULL); +} + INDIRECT_CALLABLE_SCOPE struct sk_buff *udp4_gro_receive(struct list_head *head, struct sk_buff *skb) { struct udphdr *uh = udp_gro_udphdr(skb); + struct sock *sk = NULL; struct sk_buff *pp; - struct sock *sk; if (unlikely(!uh)) goto flush; @@ -523,7 +592,10 @@ skip: NAPI_GRO_CB(skb)->is_ipv6 = 0; rcu_read_lock(); - sk = static_branch_unlikely(&udp_encap_needed_key) ? udp4_lib_lookup_skb(skb, uh->source, uh->dest) : NULL; + + if (static_branch_unlikely(&udp_encap_needed_key)) + sk = udp4_gro_lookup_skb(skb, uh->source, uh->dest); + pp = udp_gro_receive(head, skb, uh, sk); rcu_read_unlock(); return pp; --- linux-azure-5.8-5.8.0.orig/net/ipv6/Kconfig +++ linux-azure-5.8-5.8.0/net/ipv6/Kconfig @@ -303,6 +303,7 @@ config IPV6_SEG6_HMAC bool "IPv6: Segment Routing HMAC support" depends on IPV6 + select CRYPTO select CRYPTO_HMAC select CRYPTO_SHA1 select CRYPTO_SHA256 --- linux-azure-5.8-5.8.0.orig/net/ipv6/addrconf.c +++ linux-azure-5.8-5.8.0/net/ipv6/addrconf.c @@ -2441,8 +2441,9 @@ .fc_ifindex = dev->ifindex, .fc_dst_len = 8, .fc_flags = RTF_UP, - .fc_type = RTN_UNICAST, + .fc_type = RTN_MULTICAST, .fc_nlinfo.nl_net = dev_net(dev), + .fc_protocol = RTPROT_KERNEL, }; ipv6_addr_set(&cfg.fc_dst, htonl(0xFF000000), 0, 0, 0); @@ -4997,8 +4998,10 @@ return -EMSGSIZE; if (args->netnsid >= 0 && - nla_put_s32(skb, IFA_TARGET_NETNSID, args->netnsid)) + nla_put_s32(skb, IFA_TARGET_NETNSID, args->netnsid)) { + nlmsg_cancel(skb, nlh); return -EMSGSIZE; + } put_ifaddrmsg(nlh, 128, IFA_F_PERMANENT, scope, ifindex); if (nla_put_in6_addr(skb, IFA_MULTICAST, &ifmca->mca_addr) < 0 || @@ -5029,8 +5032,10 @@ return -EMSGSIZE; if (args->netnsid >= 0 && - nla_put_s32(skb, IFA_TARGET_NETNSID, args->netnsid)) + nla_put_s32(skb, IFA_TARGET_NETNSID, args->netnsid)) { + nlmsg_cancel(skb, nlh); return -EMSGSIZE; + } put_ifaddrmsg(nlh, 128, IFA_F_PERMANENT, scope, ifindex); if (nla_put_in6_addr(skb, IFA_ANYCAST, &ifaca->aca_addr) < 0 || --- linux-azure-5.8-5.8.0.orig/net/ipv6/addrlabel.c +++ linux-azure-5.8-5.8.0/net/ipv6/addrlabel.c @@ -306,7 +306,9 @@ /* add default label */ static int __net_init ip6addrlbl_net_init(struct net *net) { - int err = 0; + struct ip6addrlbl_entry *p = NULL; + struct hlist_node *n; + int err; int i; ADDRLABEL(KERN_DEBUG "%s\n", __func__); @@ -315,14 +317,20 @@ INIT_HLIST_HEAD(&net->ipv6.ip6addrlbl_table.head); for (i = 0; i < ARRAY_SIZE(ip6addrlbl_init_table); i++) { - int ret = ip6addrlbl_add(net, - ip6addrlbl_init_table[i].prefix, - ip6addrlbl_init_table[i].prefixlen, - 0, - ip6addrlbl_init_table[i].label, 0); - /* XXX: should we free all rules when we catch an error? */ - if (ret && (!err || err != -ENOMEM)) - err = ret; + err = ip6addrlbl_add(net, + ip6addrlbl_init_table[i].prefix, + ip6addrlbl_init_table[i].prefixlen, + 0, + ip6addrlbl_init_table[i].label, 0); + if (err) + goto err_ip6addrlbl_add; + } + return 0; + +err_ip6addrlbl_add: + hlist_for_each_entry_safe(p, n, &net->ipv6.ip6addrlbl_table.head, list) { + hlist_del_rcu(&p->list); + kfree_rcu(p, rcu); } return err; } --- linux-azure-5.8-5.8.0.orig/net/ipv6/ah6.c +++ linux-azure-5.8-5.8.0/net/ipv6/ah6.c @@ -588,7 +588,8 @@ memcpy(auth_data, ah->auth_data, ahp->icv_trunc_len); memset(ah->auth_data, 0, ahp->icv_trunc_len); - if (ipv6_clear_mutable_options(ip6h, hdr_len, XFRM_POLICY_IN)) + err = ipv6_clear_mutable_options(ip6h, hdr_len, XFRM_POLICY_IN); + if (err) goto out_free; ip6h->priority = 0; --- linux-azure-5.8-5.8.0.orig/net/ipv6/esp6.c +++ linux-azure-5.8-5.8.0/net/ipv6/esp6.c @@ -478,7 +478,6 @@ int esp6_output_head(struct xfrm_state *x, struct sk_buff *skb, struct esp_info *esp) { u8 *tail; - u8 *vaddr; int nfrags; int esph_offset; struct page *page; @@ -519,14 +518,10 @@ page = pfrag->page; get_page(page); - vaddr = kmap_atomic(page); - - tail = vaddr + pfrag->offset; + tail = page_address(page) + pfrag->offset; esp_output_fill_trailer(tail, esp->tfclen, esp->plen, esp->proto); - kunmap_atomic(vaddr); - nfrags = skb_shinfo(skb)->nr_frags; __skb_fill_page_desc(skb, nfrags, page, pfrag->offset, --- linux-azure-5.8-5.8.0.orig/net/ipv6/icmp.c +++ linux-azure-5.8-5.8.0/net/ipv6/icmp.c @@ -158,7 +158,13 @@ tp = skb_header_pointer(skb, ptr+offsetof(struct icmp6hdr, icmp6_type), sizeof(_type), &_type); - if (!tp || !(*tp & ICMPV6_INFOMSG_MASK)) + + /* Based on RFC 8200, Section 4.5 Fragment Header, return + * false if this is a fragment packet with no icmp header info. + */ + if (!tp && frag_off != 0) + return false; + else if (!tp || !(*tp & ICMPV6_INFOMSG_MASK)) return true; } return false; @@ -439,8 +445,8 @@ /* * Send an ICMP message in response to a packet in error */ -static void icmp6_send(struct sk_buff *skb, u8 type, u8 code, __u32 info, - const struct in6_addr *force_saddr) +void icmp6_send(struct sk_buff *skb, u8 type, u8 code, __u32 info, + const struct in6_addr *force_saddr) { struct inet6_dev *idev = NULL; struct ipv6hdr *hdr = ipv6_hdr(skb); @@ -625,6 +631,7 @@ out_bh_enable: local_bh_enable(); } +EXPORT_SYMBOL(icmp6_send); /* Slightly more convenient version of icmp6_send. */ --- linux-azure-5.8-5.8.0.orig/net/ipv6/ip6_fib.c +++ linux-azure-5.8-5.8.0/net/ipv6/ip6_fib.c @@ -1024,6 +1024,8 @@ { struct fib6_table *table = rt->fib6_table; + /* Flush all cached dst in exception table */ + rt6_flush_exceptions(rt); fib6_drop_pcpu_from(rt, table); if (rt->nh && !list_empty(&rt->nh_list)) @@ -1922,9 +1924,6 @@ net->ipv6.rt6_stats->fib_rt_entries--; net->ipv6.rt6_stats->fib_discarded_routes++; - /* Flush all cached dst in exception table */ - rt6_flush_exceptions(rt); - /* Reset round-robin state, if necessary */ if (rcu_access_pointer(fn->rr_ptr) == rt) fn->rr_ptr = NULL; @@ -1992,14 +1991,19 @@ /* Need to own table->tb6_lock */ int fib6_del(struct fib6_info *rt, struct nl_info *info) { - struct fib6_node *fn = rcu_dereference_protected(rt->fib6_node, - lockdep_is_held(&rt->fib6_table->tb6_lock)); - struct fib6_table *table = rt->fib6_table; struct net *net = info->nl_net; struct fib6_info __rcu **rtp; struct fib6_info __rcu **rtp_next; + struct fib6_table *table; + struct fib6_node *fn; - if (!fn || rt == net->ipv6.fib6_null_entry) + if (rt == net->ipv6.fib6_null_entry) + return -ENOENT; + + table = rt->fib6_table; + fn = rcu_dereference_protected(rt->fib6_node, + lockdep_is_held(&table->tb6_lock)); + if (!fn) return -ENOENT; WARN_ON(!(fn->fn_flags & RTN_RTINFO)); @@ -2612,8 +2616,10 @@ iter->skip = *pos; if (iter->tbl) { + loff_t p = 0; + ipv6_route_seq_setup_walk(iter, net); - return ipv6_route_seq_next(seq, NULL, pos); + return ipv6_route_seq_next(seq, NULL, &p); } else { return NULL; } --- linux-azure-5.8-5.8.0.orig/net/ipv6/ip6_gre.c +++ linux-azure-5.8-5.8.0/net/ipv6/ip6_gre.c @@ -1122,8 +1122,13 @@ return; if (rt->dst.dev) { - dev->needed_headroom = rt->dst.dev->hard_header_len + - t_hlen; + unsigned short dst_len = rt->dst.dev->hard_header_len + + t_hlen; + + if (t->dev->header_ops) + dev->hard_header_len = dst_len; + else + dev->needed_headroom = dst_len; if (set_mtu) { dev->mtu = rt->dst.dev->mtu - t_hlen; @@ -1148,7 +1153,12 @@ tunnel->hlen = tunnel->tun_hlen + tunnel->encap_hlen; t_hlen = tunnel->hlen + sizeof(struct ipv6hdr); - tunnel->dev->needed_headroom = LL_MAX_HEADER + t_hlen; + + if (tunnel->dev->header_ops) + tunnel->dev->hard_header_len = LL_MAX_HEADER + t_hlen; + else + tunnel->dev->needed_headroom = LL_MAX_HEADER + t_hlen; + return t_hlen; } --- linux-azure-5.8-5.8.0.orig/net/ipv6/ip6_icmp.c +++ linux-azure-5.8-5.8.0/net/ipv6/ip6_icmp.c @@ -9,6 +9,8 @@ #if IS_ENABLED(CONFIG_IPV6) +#if !IS_BUILTIN(CONFIG_IPV6) + static ip6_icmp_send_t __rcu *ip6_icmp_send; int inet6_register_icmp_sender(ip6_icmp_send_t *fn) @@ -37,14 +39,12 @@ rcu_read_lock(); send = rcu_dereference(ip6_icmp_send); - - if (!send) - goto out; - send(skb, type, code, info, NULL); -out: + if (send) + send(skb, type, code, info, NULL); rcu_read_unlock(); } EXPORT_SYMBOL(icmpv6_send); +#endif #if IS_ENABLED(CONFIG_NF_NAT) #include --- linux-azure-5.8-5.8.0.orig/net/ipv6/ip6_output.c +++ linux-azure-5.8-5.8.0/net/ipv6/ip6_output.c @@ -125,8 +125,43 @@ return -EINVAL; } +static int +ip6_finish_output_gso_slowpath_drop(struct net *net, struct sock *sk, + struct sk_buff *skb, unsigned int mtu) +{ + struct sk_buff *segs, *nskb; + netdev_features_t features; + int ret = 0; + + /* Please see corresponding comment in ip_finish_output_gso + * describing the cases where GSO segment length exceeds the + * egress MTU. + */ + features = netif_skb_features(skb); + segs = skb_gso_segment(skb, features & ~NETIF_F_GSO_MASK); + if (IS_ERR_OR_NULL(segs)) { + kfree_skb(skb); + return -ENOMEM; + } + + consume_skb(skb); + + skb_list_walk_safe(segs, segs, nskb) { + int err; + + skb_mark_not_on_list(segs); + err = ip6_fragment(net, sk, segs, ip6_finish_output2); + if (err && ret == 0) + ret = err; + } + + return ret; +} + static int __ip6_finish_output(struct net *net, struct sock *sk, struct sk_buff *skb) { + unsigned int mtu; + #if defined(CONFIG_NETFILTER) && defined(CONFIG_XFRM) /* Policy lookup after SNAT yielded a new policy */ if (skb_dst(skb)->xfrm) { @@ -135,7 +170,11 @@ } #endif - if ((skb->len > ip6_skb_dst_mtu(skb) && !skb_is_gso(skb)) || + mtu = ip6_skb_dst_mtu(skb); + if (skb_is_gso(skb) && !skb_gso_validate_network_len(skb, mtu)) + return ip6_finish_output_gso_slowpath_drop(net, sk, skb, mtu); + + if ((skb->len > mtu && !skb_is_gso(skb)) || dst_allfrag(skb_dst(skb)) || (IP6CB(skb)->frag_max_size && skb->len > IP6CB(skb)->frag_max_size)) return ip6_fragment(net, sk, skb, ip6_finish_output2); --- linux-azure-5.8-5.8.0.orig/net/ipv6/ip6_tunnel.c +++ linux-azure-5.8-5.8.0/net/ipv6/ip6_tunnel.c @@ -913,7 +913,15 @@ struct metadata_dst *tun_dst, bool log_ecn_err) { - return __ip6_tnl_rcv(t, skb, tpi, tun_dst, ip6ip6_dscp_ecn_decapsulate, + int (*dscp_ecn_decapsulate)(const struct ip6_tnl *t, + const struct ipv6hdr *ipv6h, + struct sk_buff *skb); + + dscp_ecn_decapsulate = ip6ip6_dscp_ecn_decapsulate; + if (tpi->proto == htons(ETH_P_IP)) + dscp_ecn_decapsulate = ip4ip6_dscp_ecn_decapsulate; + + return __ip6_tnl_rcv(t, skb, tpi, tun_dst, dscp_ecn_decapsulate, log_ecn_err); } EXPORT_SYMBOL(ip6_tnl_rcv); @@ -1261,6 +1269,8 @@ if (max_headroom > dev->needed_headroom) dev->needed_headroom = max_headroom; + skb_set_inner_ipproto(skb, proto); + err = ip6_tnl_encap(skb, t, &proto, fl6); if (err) return err; @@ -1270,8 +1280,6 @@ ipv6_push_frag_opts(skb, &opt.ops, &proto); } - skb_set_inner_ipproto(skb, proto); - skb_push(skb, sizeof(struct ipv6hdr)); skb_reset_network_header(skb); ipv6h = ipv6_hdr(skb); --- linux-azure-5.8-5.8.0.orig/net/ipv6/ip6_vti.c +++ linux-azure-5.8-5.8.0/net/ipv6/ip6_vti.c @@ -515,6 +515,10 @@ goto tx_err_dst_release; } + skb_scrub_packet(skb, !net_eq(t->net, dev_net(dev))); + skb_dst_set(skb, dst); + skb->dev = skb_dst(skb)->dev; + mtu = dst_mtu(dst); if (skb->len > mtu) { skb_dst_update_pmtu_no_confirm(skb, mtu); @@ -529,14 +533,9 @@ htonl(mtu)); } - err = -EMSGSIZE; - goto tx_err_dst_release; + return -EMSGSIZE; } - skb_scrub_packet(skb, !net_eq(t->net, dev_net(dev))); - skb_dst_set(skb, dst); - skb->dev = skb_dst(skb)->dev; - err = dst_output(t->net, skb->sk, skb); if (net_xmit_eval(err) == 0) err = pkt_len; --- linux-azure-5.8-5.8.0.orig/net/ipv6/ndisc.c +++ linux-azure-5.8-5.8.0/net/ipv6/ndisc.c @@ -81,6 +81,7 @@ static int pndisc_constructor(struct pneigh_entry *n); static void pndisc_destructor(struct pneigh_entry *n); static void pndisc_redo(struct sk_buff *skb); +static int ndisc_is_multicast(const void *pkey); static const struct neigh_ops ndisc_generic_ops = { .family = AF_INET6, @@ -115,6 +116,7 @@ .pconstructor = pndisc_constructor, .pdestructor = pndisc_destructor, .proxy_redo = pndisc_redo, + .is_multicast = ndisc_is_multicast, .allow_add = ndisc_allow_add, .id = "ndisc_cache", .parms = { @@ -1706,6 +1708,11 @@ kfree_skb(skb); } +static int ndisc_is_multicast(const void *pkey) +{ + return ipv6_addr_is_multicast((struct in6_addr *)pkey); +} + static bool ndisc_suppress_frag_ndisc(struct sk_buff *skb) { struct inet6_dev *idev = __in6_dev_get(skb->dev); --- linux-azure-5.8-5.8.0.orig/net/ipv6/netfilter.c +++ linux-azure-5.8-5.8.0/net/ipv6/netfilter.c @@ -20,10 +20,10 @@ #include #include "../bridge/br_private.h" -int ip6_route_me_harder(struct net *net, struct sk_buff *skb) +int ip6_route_me_harder(struct net *net, struct sock *sk_partial, struct sk_buff *skb) { const struct ipv6hdr *iph = ipv6_hdr(skb); - struct sock *sk = sk_to_full_sk(skb->sk); + struct sock *sk = sk_to_full_sk(sk_partial); unsigned int hh_len; struct dst_entry *dst; int strict = (ipv6_addr_type(&iph->daddr) & @@ -84,7 +84,7 @@ if (!ipv6_addr_equal(&iph->daddr, &rt_info->daddr) || !ipv6_addr_equal(&iph->saddr, &rt_info->saddr) || skb->mark != rt_info->mark) - return ip6_route_me_harder(entry->state.net, skb); + return ip6_route_me_harder(entry->state.net, entry->state.sk, skb); } return 0; } @@ -245,9 +245,6 @@ .route_input = ip6_route_input, .fragment = ip6_fragment, .reroute = nf_ip6_reroute, -#if IS_MODULE(CONFIG_IPV6) && IS_ENABLED(CONFIG_NF_DEFRAG_IPV6) - .br_defrag = nf_ct_frag6_gather, -#endif #if IS_MODULE(CONFIG_IPV6) .br_fragment = br_ip6_fragment, #endif --- linux-azure-5.8-5.8.0.orig/net/ipv6/netfilter/ip6_tables.c +++ linux-azure-5.8-5.8.0/net/ipv6/netfilter/ip6_tables.c @@ -380,6 +380,17 @@ else return verdict; } +static bool next_offset_ok(const struct xt_table_info *t, unsigned int newpos) +{ + if (newpos > t->size - sizeof(struct ip6t_entry)) + return false; + + if (newpos % __alignof__(struct ip6t_entry) != 0) + return false; + + return true; +} + /* Figures out from what hook each rule can be called: returns 0 if there are loops. Puts hook bitmask in comefrom. */ static int @@ -435,6 +446,8 @@ /* Move along one */ size = e->next_offset; + if (!next_offset_ok(newinfo, pos + size)) + return 0; e = entry0 + pos + size; if (pos + size >= newinfo->size) return 0; @@ -456,6 +469,10 @@ if (newpos >= newinfo->size) return 0; } + + if (!next_offset_ok(newinfo, newpos)) + return 0; + e = entry0 + newpos; e->counters.pcnt = pos; pos = newpos; --- linux-azure-5.8-5.8.0.orig/net/ipv6/netfilter/ip6table_mangle.c +++ linux-azure-5.8-5.8.0/net/ipv6/netfilter/ip6table_mangle.c @@ -57,7 +57,7 @@ skb->mark != mark || ipv6_hdr(skb)->hop_limit != hop_limit || flowlabel != *((u_int32_t *)ipv6_hdr(skb)))) { - err = ip6_route_me_harder(state->net, skb); + err = ip6_route_me_harder(state->net, state->sk, skb); if (err < 0) ret = NF_DROP_ERR(err); } --- linux-azure-5.8-5.8.0.orig/net/ipv6/netfilter/nf_log_ipv6.c +++ linux-azure-5.8-5.8.0/net/ipv6/netfilter/nf_log_ipv6.c @@ -297,9 +297,11 @@ switch (dev->type) { case ARPHRD_ETHER: - nf_log_buf_add(m, "MACSRC=%pM MACDST=%pM MACPROTO=%04x ", - eth_hdr(skb)->h_source, eth_hdr(skb)->h_dest, - ntohs(eth_hdr(skb)->h_proto)); + nf_log_buf_add(m, "MACSRC=%pM MACDST=%pM ", + eth_hdr(skb)->h_source, eth_hdr(skb)->h_dest); + nf_log_dump_vlan(m, skb); + nf_log_buf_add(m, "MACPROTO=%04x ", + ntohs(eth_hdr(skb)->h_proto)); return; default: break; --- linux-azure-5.8-5.8.0.orig/net/ipv6/reassembly.c +++ linux-azure-5.8-5.8.0/net/ipv6/reassembly.c @@ -42,6 +42,8 @@ #include #include #include +#include +#include #include #include @@ -322,7 +324,9 @@ struct frag_queue *fq; const struct ipv6hdr *hdr = ipv6_hdr(skb); struct net *net = dev_net(skb_dst(skb)->dev); - int iif; + __be16 frag_off; + int iif, offset; + u8 nexthdr; if (IP6CB(skb)->flags & IP6SKB_FRAGMENTED) goto fail_hdr; @@ -351,6 +355,33 @@ return 1; } + /* RFC 8200, Section 4.5 Fragment Header: + * If the first fragment does not include all headers through an + * Upper-Layer header, then that fragment should be discarded and + * an ICMP Parameter Problem, Code 3, message should be sent to + * the source of the fragment, with the Pointer field set to zero. + */ + nexthdr = hdr->nexthdr; + offset = ipv6_skip_exthdr(skb, skb_transport_offset(skb), &nexthdr, &frag_off); + if (offset >= 0) { + /* Check some common protocols' header */ + if (nexthdr == IPPROTO_TCP) + offset += sizeof(struct tcphdr); + else if (nexthdr == IPPROTO_UDP) + offset += sizeof(struct udphdr); + else if (nexthdr == IPPROTO_ICMPV6) + offset += sizeof(struct icmp6hdr); + else + offset += 1; + + if (!(frag_off & htons(IP6_OFFSET)) && offset > skb->len) { + __IP6_INC_STATS(net, __in6_dev_get_safely(skb->dev), + IPSTATS_MIB_INHDRERRORS); + icmpv6_param_prob(skb, ICMPV6_HDR_INCOMP, 0); + return -1; + } + } + iif = skb->dev ? skb->dev->ifindex : 0; fq = fq_find(net, fhdr->identification, hdr, iif); if (fq) { --- linux-azure-5.8-5.8.0.orig/net/ipv6/sit.c +++ linux-azure-5.8-5.8.0/net/ipv6/sit.c @@ -1128,7 +1128,6 @@ if (tdev && !netif_is_l3_master(tdev)) { int t_hlen = tunnel->hlen + sizeof(struct iphdr); - dev->hard_header_len = tdev->hard_header_len + sizeof(struct iphdr); dev->mtu = tdev->mtu - t_hlen; if (dev->mtu < IPV6_MIN_MTU) dev->mtu = IPV6_MIN_MTU; @@ -1426,7 +1425,6 @@ dev->priv_destructor = ipip6_dev_free; dev->type = ARPHRD_SIT; - dev->hard_header_len = LL_MAX_HEADER + t_hlen; dev->mtu = ETH_DATA_LEN - t_hlen; dev->min_mtu = IPV6_MIN_MTU; dev->max_mtu = IP6_MAX_MTU - t_hlen; @@ -1647,8 +1645,11 @@ } #ifdef CONFIG_IPV6_SIT_6RD - if (ipip6_netlink_6rd_parms(data, &ip6rd)) + if (ipip6_netlink_6rd_parms(data, &ip6rd)) { err = ipip6_tunnel_update_6rd(nt, &ip6rd); + if (err < 0) + unregister_netdevice_queue(dev, NULL); + } #endif return err; --- linux-azure-5.8-5.8.0.orig/net/ipv6/syncookies.c +++ linux-azure-5.8-5.8.0/net/ipv6/syncookies.c @@ -136,7 +136,7 @@ __u32 cookie = ntohl(th->ack_seq) - 1; struct sock *ret = sk; struct request_sock *req; - int mss; + int full_space, mss; struct dst_entry *dst; __u8 rcv_wscale; u32 tsoff = 0; @@ -244,7 +244,13 @@ } req->rsk_window_clamp = tp->window_clamp ? :dst_metric(dst, RTAX_WINDOW); - tcp_select_initial_window(sk, tcp_full_space(sk), req->mss, + /* limit the window selection if the user enforce a smaller rx buffer */ + full_space = tcp_full_space(sk); + if (sk->sk_userlocks & SOCK_RCVBUF_LOCK && + (req->rsk_window_clamp > full_space || req->rsk_window_clamp == 0)) + req->rsk_window_clamp = full_space; + + tcp_select_initial_window(sk, full_space, req->mss, &req->rsk_rcv_wnd, &req->rsk_window_clamp, ireq->wscale_ok, &rcv_wscale, dst_metric(dst, RTAX_INITRWND)); --- linux-azure-5.8-5.8.0.orig/net/ipv6/sysctl_net_ipv6.c +++ linux-azure-5.8-5.8.0/net/ipv6/sysctl_net_ipv6.c @@ -21,6 +21,7 @@ #include #endif +static int two = 2; static int flowlabel_reflect_max = 0x7; static int auto_flowlabels_min; static int auto_flowlabels_max = IP6_AUTO_FLOW_LABEL_MAX; @@ -150,7 +151,7 @@ .mode = 0644, .proc_handler = proc_rt6_multipath_hash_policy, .extra1 = SYSCTL_ZERO, - .extra2 = SYSCTL_ONE, + .extra2 = &two, }, { .procname = "seg6_flowlabel", --- linux-azure-5.8-5.8.0.orig/net/ipv6/udp_offload.c +++ linux-azure-5.8-5.8.0/net/ipv6/udp_offload.c @@ -46,7 +46,7 @@ goto out; if (skb_shinfo(skb)->gso_type & SKB_GSO_UDP_L4) - return __udp_gso_segment(skb, features); + return __udp_gso_segment(skb, features, true); /* Do software UFO. Complete and fill in the UDP checksum as HW cannot * do checksum of UDP packets sent as multiple IP fragments. @@ -111,12 +111,22 @@ return segs; } +static struct sock *udp6_gro_lookup_skb(struct sk_buff *skb, __be16 sport, + __be16 dport) +{ + const struct ipv6hdr *iph = skb_gro_network_header(skb); + + return __udp6_lib_lookup(dev_net(skb->dev), &iph->saddr, sport, + &iph->daddr, dport, inet6_iif(skb), + inet6_sdif(skb), &udp_table, NULL); +} + INDIRECT_CALLABLE_SCOPE struct sk_buff *udp6_gro_receive(struct list_head *head, struct sk_buff *skb) { struct udphdr *uh = udp_gro_udphdr(skb); + struct sock *sk = NULL; struct sk_buff *pp; - struct sock *sk; if (unlikely(!uh)) goto flush; @@ -135,7 +145,10 @@ skip: NAPI_GRO_CB(skb)->is_ipv6 = 1; rcu_read_lock(); - sk = static_branch_unlikely(&udpv6_encap_needed_key) ? udp6_lib_lookup_skb(skb, uh->source, uh->dest) : NULL; + + if (static_branch_unlikely(&udpv6_encap_needed_key)) + sk = udp6_gro_lookup_skb(skb, uh->source, uh->dest); + pp = udp_gro_receive(head, skb, uh, sk); rcu_read_unlock(); return pp; --- linux-azure-5.8-5.8.0.orig/net/iucv/af_iucv.c +++ linux-azure-5.8-5.8.0/net/iucv/af_iucv.c @@ -1434,7 +1434,8 @@ break; } - if (how == SEND_SHUTDOWN || how == SHUTDOWN_MASK) { + if ((how == SEND_SHUTDOWN || how == SHUTDOWN_MASK) && + sk->sk_state == IUCV_CONNECTED) { if (iucv->transport == AF_IUCV_TRANS_IUCV) { txmsg.class = 0; txmsg.tag = 0; @@ -1644,7 +1645,7 @@ } /* Create the new socket */ - nsk = iucv_sock_alloc(NULL, sk->sk_type, GFP_ATOMIC, 0); + nsk = iucv_sock_alloc(NULL, sk->sk_protocol, GFP_ATOMIC, 0); if (!nsk) { err = pr_iucv->path_sever(path, user_data); iucv_path_free(path); @@ -1850,7 +1851,7 @@ goto out; } - nsk = iucv_sock_alloc(NULL, sk->sk_type, GFP_ATOMIC, 0); + nsk = iucv_sock_alloc(NULL, sk->sk_protocol, GFP_ATOMIC, 0); bh_lock_sock(sk); if ((sk->sk_state != IUCV_LISTEN) || sk_acceptq_is_full(sk) || --- linux-azure-5.8-5.8.0.orig/net/key/af_key.c +++ linux-azure-5.8-5.8.0/net/key/af_key.c @@ -2902,7 +2902,7 @@ break; if (!aalg->pfkey_supported) continue; - if (aalg_tmpl_set(t, aalg) && aalg->available) + if (aalg_tmpl_set(t, aalg)) sz += sizeof(struct sadb_comb); } return sz + sizeof(struct sadb_prop); @@ -2920,7 +2920,7 @@ if (!ealg->pfkey_supported) continue; - if (!(ealg_tmpl_set(t, ealg) && ealg->available)) + if (!(ealg_tmpl_set(t, ealg))) continue; for (k = 1; ; k++) { @@ -2931,7 +2931,7 @@ if (!aalg->pfkey_supported) continue; - if (aalg_tmpl_set(t, aalg) && aalg->available) + if (aalg_tmpl_set(t, aalg)) sz += sizeof(struct sadb_comb); } } --- linux-azure-5.8-5.8.0.orig/net/lapb/lapb_out.c +++ linux-azure-5.8-5.8.0/net/lapb/lapb_out.c @@ -82,7 +82,8 @@ skb = skb_dequeue(&lapb->write_queue); do { - if ((skbn = skb_clone(skb, GFP_ATOMIC)) == NULL) { + skbn = skb_copy(skb, GFP_ATOMIC); + if (!skbn) { skb_queue_head(&lapb->write_queue, skb); break; } --- linux-azure-5.8-5.8.0.orig/net/mac80211/cfg.c +++ linux-azure-5.8-5.8.0/net/mac80211/cfg.c @@ -709,7 +709,8 @@ u16 brate; sband = ieee80211_get_sband(sta->sdata); - if (sband) { + WARN_ON_ONCE(sband && !sband->bitrates); + if (sband && sband->bitrates) { brate = sband->bitrates[rate->idx].bitrate; rinfo->legacy = DIV_ROUND_UP(brate, 1 << shift); } --- linux-azure-5.8-5.8.0.orig/net/mac80211/debugfs.c +++ linux-azure-5.8-5.8.0/net/mac80211/debugfs.c @@ -120,18 +120,17 @@ { struct ieee80211_local *local = file->private_data; char buf[100]; - size_t len; - if (count > sizeof(buf)) + if (count >= sizeof(buf)) return -EINVAL; if (copy_from_user(buf, user_buf, count)) return -EFAULT; - buf[sizeof(buf) - 1] = '\0'; - len = strlen(buf); - if (len > 0 && buf[len-1] == '\n') - buf[len-1] = 0; + if (count && buf[count - 1] == '\n') + buf[count - 1] = '\0'; + else + buf[count] = '\0'; if (sscanf(buf, "fq_limit %u", &local->fq.limit) == 1) return count; @@ -177,18 +176,17 @@ { struct ieee80211_local *local = file->private_data; char buf[16]; - size_t len; - if (count > sizeof(buf)) + if (count >= sizeof(buf)) return -EINVAL; if (copy_from_user(buf, user_buf, count)) return -EFAULT; - buf[sizeof(buf) - 1] = 0; - len = strlen(buf); - if (len > 0 && buf[len - 1] == '\n') - buf[len - 1] = 0; + if (count && buf[count - 1] == '\n') + buf[count - 1] = '\0'; + else + buf[count] = '\0'; if (kstrtou16(buf, 0, &local->airtime_flags)) return -EINVAL; @@ -237,20 +235,19 @@ { struct ieee80211_local *local = file->private_data; char buf[100]; - size_t len; u32 ac, q_limit_low, q_limit_high, q_limit_low_old, q_limit_high_old; struct sta_info *sta; - if (count > sizeof(buf)) + if (count >= sizeof(buf)) return -EINVAL; if (copy_from_user(buf, user_buf, count)) return -EFAULT; - buf[sizeof(buf) - 1] = 0; - len = strlen(buf); - if (len > 0 && buf[len - 1] == '\n') - buf[len - 1] = 0; + if (count && buf[count - 1] == '\n') + buf[count - 1] = '\0'; + else + buf[count] = '\0'; if (sscanf(buf, "%u %u %u", &ac, &q_limit_low, &q_limit_high) != 3) return -EINVAL; @@ -306,18 +303,17 @@ { struct ieee80211_local *local = file->private_data; char buf[3]; - size_t len; - if (count > sizeof(buf)) + if (count >= sizeof(buf)) return -EINVAL; if (copy_from_user(buf, user_buf, count)) return -EFAULT; - buf[sizeof(buf) - 1] = '\0'; - len = strlen(buf); - if (len > 0 && buf[len - 1] == '\n') - buf[len - 1] = 0; + if (count && buf[count - 1] == '\n') + buf[count - 1] = '\0'; + else + buf[count] = '\0'; if (buf[0] == '0' && buf[1] == '\0') local->force_tx_status = 0; --- linux-azure-5.8-5.8.0.orig/net/mac80211/driver-ops.c +++ linux-azure-5.8-5.8.0/net/mac80211/driver-ops.c @@ -125,8 +125,11 @@ } else if (old_state == IEEE80211_STA_AUTH && new_state == IEEE80211_STA_ASSOC) { ret = drv_sta_add(local, sdata, &sta->sta); - if (ret == 0) + if (ret == 0) { sta->uploaded = true; + if (rcu_access_pointer(sta->sta.rates)) + drv_sta_rate_tbl_update(local, sdata, &sta->sta); + } } else if (old_state == IEEE80211_STA_ASSOC && new_state == IEEE80211_STA_AUTH) { drv_sta_remove(local, sdata, &sta->sta); --- linux-azure-5.8-5.8.0.orig/net/mac80211/ieee80211_i.h +++ linux-azure-5.8-5.8.0/net/mac80211/ieee80211_i.h @@ -1069,6 +1069,7 @@ IEEE80211_QUEUE_STOP_REASON_FLUSH, IEEE80211_QUEUE_STOP_REASON_TDLS_TEARDOWN, IEEE80211_QUEUE_STOP_REASON_RESERVE_TID, + IEEE80211_QUEUE_STOP_REASON_IFTYPE_CHANGE, IEEE80211_QUEUE_STOP_REASONS, }; --- linux-azure-5.8-5.8.0.orig/net/mac80211/iface.c +++ linux-azure-5.8-5.8.0/net/mac80211/iface.c @@ -1608,6 +1608,10 @@ if (ret) return ret; + ieee80211_stop_vif_queues(local, sdata, + IEEE80211_QUEUE_STOP_REASON_IFTYPE_CHANGE); + synchronize_net(); + ieee80211_do_stop(sdata, false); ieee80211_teardown_sdata(sdata); @@ -1628,6 +1632,8 @@ err = ieee80211_do_open(&sdata->wdev, false); WARN(err, "type change: do_open returned %d", err); + ieee80211_wake_vif_queues(local, sdata, + IEEE80211_QUEUE_STOP_REASON_IFTYPE_CHANGE); return ret; } --- linux-azure-5.8-5.8.0.orig/net/mac80211/mesh_hwmp.c +++ linux-azure-5.8-5.8.0/net/mac80211/mesh_hwmp.c @@ -356,7 +356,7 @@ */ tx_time = (device_constant + 10 * test_frame_len / rate); estimated_retx = ((1 << (2 * ARITH_SHIFT)) / (s_unit - err)); - result = (tx_time * estimated_retx) >> (2 * ARITH_SHIFT); + result = ((u64)tx_time * estimated_retx) >> (2 * ARITH_SHIFT); return (u32)result; } --- linux-azure-5.8-5.8.0.orig/net/mac80211/mesh_pathtbl.c +++ linux-azure-5.8-5.8.0/net/mac80211/mesh_pathtbl.c @@ -60,6 +60,7 @@ atomic_set(&newtbl->entries, 0); spin_lock_init(&newtbl->gates_lock); spin_lock_init(&newtbl->walk_lock); + rhashtable_init(&newtbl->rhead, &mesh_rht_params); return newtbl; } @@ -775,9 +776,6 @@ goto free_path; } - rhashtable_init(&tbl_path->rhead, &mesh_rht_params); - rhashtable_init(&tbl_mpp->rhead, &mesh_rht_params); - sdata->u.mesh.mesh_paths = tbl_path; sdata->u.mesh.mpp_paths = tbl_mpp; --- linux-azure-5.8-5.8.0.orig/net/mac80211/mlme.c +++ linux-azure-5.8-5.8.0/net/mac80211/mlme.c @@ -4853,6 +4853,7 @@ struct ieee80211_supported_band *sband; struct cfg80211_chan_def chandef; bool is_6ghz = cbss->channel->band == NL80211_BAND_6GHZ; + bool is_5ghz = cbss->channel->band == NL80211_BAND_5GHZ; struct ieee80211_bss *bss = (void *)cbss->priv; int ret; u32 i; @@ -4871,7 +4872,7 @@ ifmgd->flags |= IEEE80211_STA_DISABLE_HE; } - if (!sband->vht_cap.vht_supported && !is_6ghz) { + if (!sband->vht_cap.vht_supported && is_5ghz) { ifmgd->flags |= IEEE80211_STA_DISABLE_VHT; ifmgd->flags |= IEEE80211_STA_DISABLE_HE; } @@ -5350,6 +5351,7 @@ struct cfg80211_assoc_request *req) { bool is_6ghz = req->bss->channel->band == NL80211_BAND_6GHZ; + bool is_5ghz = req->bss->channel->band == NL80211_BAND_5GHZ; struct ieee80211_local *local = sdata->local; struct ieee80211_if_managed *ifmgd = &sdata->u.mgd; struct ieee80211_bss *bss = (void *)req->bss->priv; @@ -5498,7 +5500,7 @@ if (vht_ie && vht_ie[1] >= sizeof(struct ieee80211_vht_cap)) memcpy(&assoc_data->ap_vht_cap, vht_ie + 2, sizeof(struct ieee80211_vht_cap)); - else if (!is_6ghz) + else if (is_5ghz) ifmgd->flags |= IEEE80211_STA_DISABLE_VHT | IEEE80211_STA_DISABLE_HE; rcu_read_unlock(); --- linux-azure-5.8-5.8.0.orig/net/mac80211/rate.c +++ linux-azure-5.8-5.8.0/net/mac80211/rate.c @@ -934,7 +934,8 @@ if (old) kfree_rcu(old, rcu_head); - drv_sta_rate_tbl_update(hw_to_local(hw), sta->sdata, pubsta); + if (sta->uploaded) + drv_sta_rate_tbl_update(hw_to_local(hw), sta->sdata, pubsta); ieee80211_sta_set_expected_throughput(pubsta, sta_get_expected_throughput(sta)); --- linux-azure-5.8-5.8.0.orig/net/mac80211/rc80211_minstrel.c +++ linux-azure-5.8-5.8.0/net/mac80211/rc80211_minstrel.c @@ -274,7 +274,7 @@ success = !!(info->flags & IEEE80211_TX_STAT_ACK); for (i = 0; i < IEEE80211_TX_MAX_RATES; i++) { - if (ar[i].idx < 0) + if (ar[i].idx < 0 || !ar[i].count) break; ndx = rix_to_ndx(mi, ar[i].idx); @@ -287,12 +287,6 @@ mi->r[ndx].stats.success += success; } - if ((info->flags & IEEE80211_TX_CTL_RATE_CTRL_PROBE) && (i >= 0)) - mi->sample_packets++; - - if (mi->sample_deferred > 0) - mi->sample_deferred--; - if (time_after(jiffies, mi->last_stats_update + mp->update_interval / (mp->new_avg ? 2 : 1))) minstrel_update_stats(mp, mi); @@ -367,7 +361,7 @@ return; delta = (mi->total_packets * sampling_ratio / 100) - - (mi->sample_packets + mi->sample_deferred / 2); + mi->sample_packets; /* delta < 0: no sampling required */ prev_sample = mi->prev_sample; @@ -376,7 +370,6 @@ return; if (mi->total_packets >= 10000) { - mi->sample_deferred = 0; mi->sample_packets = 0; mi->total_packets = 0; } else if (delta > mi->n_rates * 2) { @@ -401,19 +394,8 @@ * rate sampling method should be used. * Respect such rates that are not sampled for 20 interations. */ - if (mrr_capable && - msr->perfect_tx_time > mr->perfect_tx_time && - msr->stats.sample_skipped < 20) { - /* Only use IEEE80211_TX_CTL_RATE_CTRL_PROBE to mark - * packets that have the sampling rate deferred to the - * second MRR stage. Increase the sample counter only - * if the deferred sample rate was actually used. - * Use the sample_deferred counter to make sure that - * the sampling is not done in large bursts */ - info->flags |= IEEE80211_TX_CTL_RATE_CTRL_PROBE; - rate++; - mi->sample_deferred++; - } else { + if (msr->perfect_tx_time < mr->perfect_tx_time || + msr->stats.sample_skipped >= 20) { if (!msr->sample_limit) return; @@ -433,6 +415,7 @@ rate->idx = mi->r[ndx].rix; rate->count = minstrel_get_retry_count(&mi->r[ndx], info); + info->flags |= IEEE80211_TX_CTL_RATE_CTRL_PROBE; } --- linux-azure-5.8-5.8.0.orig/net/mac80211/rc80211_minstrel.h +++ linux-azure-5.8-5.8.0/net/mac80211/rc80211_minstrel.h @@ -126,7 +126,6 @@ u8 max_prob_rate; unsigned int total_packets; unsigned int sample_packets; - int sample_deferred; unsigned int sample_row; unsigned int sample_column; --- linux-azure-5.8-5.8.0.orig/net/mac80211/rx.c +++ linux-azure-5.8-5.8.0/net/mac80211/rx.c @@ -451,7 +451,8 @@ else if (status->bw == RATE_INFO_BW_5) channel_flags |= IEEE80211_CHAN_QUARTER; - if (status->band == NL80211_BAND_5GHZ) + if (status->band == NL80211_BAND_5GHZ || + status->band == NL80211_BAND_6GHZ) channel_flags |= IEEE80211_CHAN_OFDM | IEEE80211_CHAN_5GHZ; else if (status->encoding != RX_ENC_LEGACY) channel_flags |= IEEE80211_CHAN_DYN | IEEE80211_CHAN_2GHZ; @@ -4207,6 +4208,8 @@ rcu_read_lock(); key = rcu_dereference(sta->ptk[sta->ptk_idx]); + if (!key) + key = rcu_dereference(sdata->default_unicast_key); if (key) { switch (key->conf.cipher) { case WLAN_CIPHER_SUITE_TKIP: --- linux-azure-5.8-5.8.0.orig/net/mac80211/spectmgmt.c +++ linux-azure-5.8-5.8.0/net/mac80211/spectmgmt.c @@ -133,16 +133,20 @@ } if (wide_bw_chansw_ie) { + u8 new_seg1 = wide_bw_chansw_ie->new_center_freq_seg1; struct ieee80211_vht_operation vht_oper = { .chan_width = wide_bw_chansw_ie->new_channel_width, .center_freq_seg0_idx = wide_bw_chansw_ie->new_center_freq_seg0, - .center_freq_seg1_idx = - wide_bw_chansw_ie->new_center_freq_seg1, + .center_freq_seg1_idx = new_seg1, /* .basic_mcs_set doesn't matter */ }; - struct ieee80211_ht_operation ht_oper = {}; + struct ieee80211_ht_operation ht_oper = { + .operation_mode = + cpu_to_le16(new_seg1 << + IEEE80211_HT_OP_MODE_CCFS2_SHIFT), + }; /* default, for the case of IEEE80211_VHT_CHANWIDTH_USE_HT, * to the previously parsed chandef --- linux-azure-5.8-5.8.0.orig/net/mac80211/sta_info.c +++ linux-azure-5.8-5.8.0/net/mac80211/sta_info.c @@ -258,6 +258,24 @@ */ void sta_info_free(struct ieee80211_local *local, struct sta_info *sta) { + /* + * If we had used sta_info_pre_move_state() then we might not + * have gone through the state transitions down again, so do + * it here now (and warn if it's inserted). + * + * This will clear state such as fast TX/RX that may have been + * allocated during state transitions. + */ + while (sta->sta_state > IEEE80211_STA_NONE) { + int ret; + + WARN_ON_ONCE(test_sta_flag(sta, WLAN_STA_INSERTED)); + + ret = sta_info_move_state(sta, sta->sta_state - 1); + if (WARN_ONCE(ret, "sta_info_move_state() returned %d\n", ret)) + break; + } + if (sta->rate_ctrl) rate_control_free_sta(sta); @@ -687,7 +705,7 @@ out_drop_sta: local->num_sta--; synchronize_net(); - __cleanup_single_sta(sta); + cleanup_single_sta(sta); out_err: mutex_unlock(&local->sta_mtx); kfree(sinfo); @@ -706,19 +724,13 @@ err = sta_info_insert_check(sta); if (err) { + sta_info_free(local, sta); mutex_unlock(&local->sta_mtx); rcu_read_lock(); - goto out_free; + return err; } - err = sta_info_insert_finish(sta); - if (err) - goto out_free; - - return 0; - out_free: - sta_info_free(local, sta); - return err; + return sta_info_insert_finish(sta); } int sta_info_insert(struct sta_info *sta) @@ -1050,7 +1062,7 @@ might_sleep(); lockdep_assert_held(&local->sta_mtx); - while (sta->sta_state == IEEE80211_STA_AUTHORIZED) { + if (sta->sta_state == IEEE80211_STA_AUTHORIZED) { ret = sta_info_move_state(sta, IEEE80211_STA_ASSOC); WARN_ON_ONCE(ret); } @@ -2122,6 +2134,10 @@ int rate_idx = STA_STATS_GET(LEGACY_IDX, rate); sband = local->hw.wiphy->bands[band]; + + if (WARN_ON_ONCE(!sband->bitrates)) + break; + brate = sband->bitrates[rate_idx].bitrate; if (rinfo->bw == RATE_INFO_BW_5) shift = 2; --- linux-azure-5.8-5.8.0.orig/net/mac80211/sta_info.h +++ linux-azure-5.8-5.8.0/net/mac80211/sta_info.h @@ -522,7 +522,7 @@ * @status_stats.retry_failed: # of frames that failed after retry * @status_stats.retry_count: # of retries attempted * @status_stats.lost_packets: # of lost packets - * @status_stats.last_tdls_pkt_time: timestamp of last TDLS packet + * @status_stats.last_pkt_time: timestamp of last ACKed packet * @status_stats.msdu_retries: # of MSDU retries * @status_stats.msdu_failed: # of failed MSDUs * @status_stats.last_ack: last ack timestamp (jiffies) @@ -595,7 +595,7 @@ unsigned long filtered; unsigned long retry_failed, retry_count; unsigned int lost_packets; - unsigned long last_tdls_pkt_time; + unsigned long last_pkt_time; u64 msdu_retries[IEEE80211_NUM_TIDS + 1]; u64 msdu_failed[IEEE80211_NUM_TIDS + 1]; unsigned long last_ack; --- linux-azure-5.8-5.8.0.orig/net/mac80211/status.c +++ linux-azure-5.8-5.8.0/net/mac80211/status.c @@ -755,12 +755,16 @@ * - current throughput (higher value for higher tpt)? */ #define STA_LOST_PKT_THRESHOLD 50 +#define STA_LOST_PKT_TIME HZ /* 1 sec since last ACK */ #define STA_LOST_TDLS_PKT_THRESHOLD 10 #define STA_LOST_TDLS_PKT_TIME (10*HZ) /* 10secs since last ACK */ static void ieee80211_lost_packet(struct sta_info *sta, struct ieee80211_tx_info *info) { + unsigned long pkt_time = STA_LOST_PKT_TIME; + unsigned int pkt_thr = STA_LOST_PKT_THRESHOLD; + /* If driver relies on its own algorithm for station kickout, skip * mac80211 packet loss mechanism. */ @@ -773,21 +777,20 @@ return; sta->status_stats.lost_packets++; - if (!sta->sta.tdls && - sta->status_stats.lost_packets < STA_LOST_PKT_THRESHOLD) - return; + if (sta->sta.tdls) { + pkt_time = STA_LOST_TDLS_PKT_TIME; + pkt_thr = STA_LOST_PKT_THRESHOLD; + } /* * If we're in TDLS mode, make sure that all STA_LOST_TDLS_PKT_THRESHOLD * of the last packets were lost, and that no ACK was received in the * last STA_LOST_TDLS_PKT_TIME ms, before triggering the CQM packet-loss * mechanism. + * For non-TDLS, use STA_LOST_PKT_THRESHOLD and STA_LOST_PKT_TIME */ - if (sta->sta.tdls && - (sta->status_stats.lost_packets < STA_LOST_TDLS_PKT_THRESHOLD || - time_before(jiffies, - sta->status_stats.last_tdls_pkt_time + - STA_LOST_TDLS_PKT_TIME))) + if (sta->status_stats.lost_packets < pkt_thr || + !time_after(jiffies, sta->status_stats.last_pkt_time + pkt_time)) return; cfg80211_cqm_pktloss_notify(sta->sdata->dev, sta->sta.addr, @@ -1035,9 +1038,7 @@ sta->status_stats.lost_packets = 0; /* Track when last TDLS packet was ACKed */ - if (test_sta_flag(sta, WLAN_STA_TDLS_PEER_AUTH)) - sta->status_stats.last_tdls_pkt_time = - jiffies; + sta->status_stats.last_pkt_time = jiffies; } else if (noack_success) { /* nothing to do here, do not account as lost */ } else { @@ -1170,9 +1171,8 @@ if (sta->status_stats.lost_packets) sta->status_stats.lost_packets = 0; - /* Track when last TDLS packet was ACKed */ - if (test_sta_flag(sta, WLAN_STA_TDLS_PEER_AUTH)) - sta->status_stats.last_tdls_pkt_time = jiffies; + /* Track when last packet was ACKed */ + sta->status_stats.last_pkt_time = jiffies; } else if (test_sta_flag(sta, WLAN_STA_PS_STA)) { return; } else if (noack_success) { @@ -1261,8 +1261,7 @@ if (sta->status_stats.lost_packets) sta->status_stats.lost_packets = 0; - if (test_sta_flag(sta, WLAN_STA_TDLS_PEER_AUTH)) - sta->status_stats.last_tdls_pkt_time = jiffies; + sta->status_stats.last_pkt_time = jiffies; } else { ieee80211_lost_packet(sta, info); } --- linux-azure-5.8-5.8.0.orig/net/mac80211/tx.c +++ linux-azure-5.8-5.8.0/net/mac80211/tx.c @@ -657,7 +657,7 @@ if (!skip_hw && tx->key && tx->key->flags & KEY_FLAG_UPLOADED_TO_HARDWARE) info->control.hw_key = &tx->key->conf; - } else if (!ieee80211_is_mgmt(hdr->frame_control) && tx->sta && + } else if (ieee80211_is_data_present(hdr->frame_control) && tx->sta && test_sta_flag(tx->sta, WLAN_STA_USES_ENCRYPTION)) { return TX_DROP; } @@ -1938,19 +1938,24 @@ /* device xmit handlers */ +enum ieee80211_encrypt { + ENCRYPT_NO, + ENCRYPT_MGMT, + ENCRYPT_DATA, +}; + static int ieee80211_skb_resize(struct ieee80211_sub_if_data *sdata, struct sk_buff *skb, - int head_need, bool may_encrypt) + int head_need, + enum ieee80211_encrypt encrypt) { struct ieee80211_local *local = sdata->local; - struct ieee80211_hdr *hdr; bool enc_tailroom; int tail_need = 0; - hdr = (struct ieee80211_hdr *) skb->data; - enc_tailroom = may_encrypt && - (sdata->crypto_tx_tailroom_needed_cnt || - ieee80211_is_mgmt(hdr->frame_control)); + enc_tailroom = encrypt == ENCRYPT_MGMT || + (encrypt == ENCRYPT_DATA && + sdata->crypto_tx_tailroom_needed_cnt); if (enc_tailroom) { tail_need = IEEE80211_ENCRYPT_TAILROOM; @@ -1982,23 +1987,29 @@ { struct ieee80211_local *local = sdata->local; struct ieee80211_tx_info *info = IEEE80211_SKB_CB(skb); - struct ieee80211_hdr *hdr; + struct ieee80211_hdr *hdr = (struct ieee80211_hdr *) skb->data; int headroom; - bool may_encrypt; + enum ieee80211_encrypt encrypt; - may_encrypt = !(info->flags & IEEE80211_TX_INTFL_DONT_ENCRYPT); + if (info->flags & IEEE80211_TX_INTFL_DONT_ENCRYPT) + encrypt = ENCRYPT_NO; + else if (ieee80211_is_mgmt(hdr->frame_control)) + encrypt = ENCRYPT_MGMT; + else + encrypt = ENCRYPT_DATA; headroom = local->tx_headroom; - if (may_encrypt) + if (encrypt != ENCRYPT_NO) headroom += sdata->encrypt_headroom; headroom -= skb_headroom(skb); headroom = max_t(int, 0, headroom); - if (ieee80211_skb_resize(sdata, skb, headroom, may_encrypt)) { + if (ieee80211_skb_resize(sdata, skb, headroom, encrypt)) { ieee80211_free_txskb(&local->hw, skb); return; } + /* reload after potential resize */ hdr = (struct ieee80211_hdr *) skb->data; info->control.vif = &sdata->vif; @@ -2827,7 +2838,7 @@ head_need += sdata->encrypt_headroom; head_need += local->tx_headroom; head_need = max_t(int, 0, head_need); - if (ieee80211_skb_resize(sdata, skb, head_need, true)) { + if (ieee80211_skb_resize(sdata, skb, head_need, ENCRYPT_DATA)) { ieee80211_free_txskb(&local->hw, skb); skb = NULL; return ERR_PTR(-ENOMEM); @@ -3501,7 +3512,7 @@ if (unlikely(ieee80211_skb_resize(sdata, skb, max_t(int, extra_head + hw_headroom - skb_headroom(skb), 0), - false))) { + ENCRYPT_NO))) { kfree_skb(skb); return true; } @@ -3822,7 +3833,7 @@ * get immediately moved to the back of the list on the next * call to ieee80211_next_txq(). */ - if (txqi->txq.sta && + if (txqi->txq.sta && local->airtime_flags && wiphy_ext_feature_isset(local->hw.wiphy, NL80211_EXT_FEATURE_AIRTIME_FAIRNESS)) list_add(&txqi->schedule_order, @@ -4212,6 +4223,12 @@ if (is_zero_ether_addr(ra)) goto out_free; + if (local->ops->wake_tx_queue) { + u16 queue = __ieee80211_select_queue(sdata, sta, skb); + skb_set_queue_mapping(skb, queue); + skb_get_hash(skb); + } + multicast = is_multicast_ether_addr(ra); if (sta) --- linux-azure-5.8-5.8.0.orig/net/mac80211/util.c +++ linux-azure-5.8-5.8.0/net/mac80211/util.c @@ -3354,9 +3354,10 @@ he_chandef.center_freq1 = ieee80211_channel_to_frequency(he_6ghz_oper->ccfs0, NL80211_BAND_6GHZ); - he_chandef.center_freq2 = - ieee80211_channel_to_frequency(he_6ghz_oper->ccfs1, - NL80211_BAND_6GHZ); + if (support_80_80 || support_160) + he_chandef.center_freq2 = + ieee80211_channel_to_frequency(he_6ghz_oper->ccfs1, + NL80211_BAND_6GHZ); } if (!cfg80211_chandef_valid(&he_chandef)) { --- linux-azure-5.8-5.8.0.orig/net/mac80211/vht.c +++ linux-azure-5.8-5.8.0/net/mac80211/vht.c @@ -168,10 +168,7 @@ /* take some capabilities as-is */ cap_info = le32_to_cpu(vht_cap_ie->vht_cap_info); vht_cap->cap = cap_info; - vht_cap->cap &= IEEE80211_VHT_CAP_MAX_MPDU_LENGTH_3895 | - IEEE80211_VHT_CAP_MAX_MPDU_LENGTH_7991 | - IEEE80211_VHT_CAP_MAX_MPDU_LENGTH_11454 | - IEEE80211_VHT_CAP_RXLDPC | + vht_cap->cap &= IEEE80211_VHT_CAP_RXLDPC | IEEE80211_VHT_CAP_VHT_TXOP_PS | IEEE80211_VHT_CAP_HTC_VHT | IEEE80211_VHT_CAP_MAX_A_MPDU_LENGTH_EXPONENT_MASK | @@ -180,6 +177,9 @@ IEEE80211_VHT_CAP_RX_ANTENNA_PATTERN | IEEE80211_VHT_CAP_TX_ANTENNA_PATTERN; + vht_cap->cap |= min_t(u32, cap_info & IEEE80211_VHT_CAP_MAX_MPDU_MASK, + own_cap.cap & IEEE80211_VHT_CAP_MAX_MPDU_MASK); + /* and some based on our own capabilities */ switch (own_cap.cap & IEEE80211_VHT_CAP_SUPP_CHAN_WIDTH_MASK) { case IEEE80211_VHT_CAP_SUPP_CHAN_WIDTH_160MHZ: @@ -469,12 +469,18 @@ * IEEE80211-2016 specification makes higher bandwidth operation * possible on the TDLS link if the peers have wider bandwidth * capability. + * + * However, in this case, and only if the TDLS peer is authorized, + * limit to the tdls_chandef so that the configuration here isn't + * wider than what's actually requested on the channel context. */ if (test_sta_flag(sta, WLAN_STA_TDLS_PEER) && - test_sta_flag(sta, WLAN_STA_TDLS_WIDER_BW)) - return bw; - - bw = min(bw, ieee80211_chan_width_to_rx_bw(bss_width)); + test_sta_flag(sta, WLAN_STA_TDLS_WIDER_BW) && + test_sta_flag(sta, WLAN_STA_AUTHORIZED) && + sta->tdls_chandef.chan) + bw = min(bw, ieee80211_chan_width_to_rx_bw(sta->tdls_chandef.width)); + else + bw = min(bw, ieee80211_chan_width_to_rx_bw(bss_width)); return bw; } --- linux-azure-5.8-5.8.0.orig/net/mac802154/tx.c +++ linux-azure-5.8-5.8.0/net/mac802154/tx.c @@ -34,11 +34,11 @@ if (res) goto err_tx; - ieee802154_xmit_complete(&local->hw, skb, false); - dev->stats.tx_packets++; dev->stats.tx_bytes += skb->len; + ieee802154_xmit_complete(&local->hw, skb, false); + return; err_tx: @@ -78,6 +78,8 @@ /* async is priority, otherwise sync is fallback */ if (local->ops->xmit_async) { + unsigned int len = skb->len; + ret = drv_xmit_async(local, skb); if (ret) { ieee802154_wake_queue(&local->hw); @@ -85,7 +87,7 @@ } dev->stats.tx_packets++; - dev->stats.tx_bytes += skb->len; + dev->stats.tx_bytes += len; } else { local->tx_skb = skb; queue_work(local->workqueue, &local->tx_work); --- linux-azure-5.8-5.8.0.orig/net/mptcp/mib.c +++ linux-azure-5.8-5.8.0/net/mptcp/mib.c @@ -58,6 +58,7 @@ for (i = 0; mptcp_snmp_list[i].name; i++) seq_puts(seq, " 0"); + seq_putc(seq, '\n'); return; } --- linux-azure-5.8-5.8.0.orig/net/mptcp/options.c +++ linux-azure-5.8-5.8.0/net/mptcp/options.c @@ -296,6 +296,7 @@ mp_opt->mp_capable = 0; mp_opt->mp_join = 0; mp_opt->add_addr = 0; + mp_opt->ahmac = 0; mp_opt->rm_addr = 0; mp_opt->dss = 0; @@ -517,7 +518,7 @@ return ret; } - if (subflow->use_64bit_ack) { + if (READ_ONCE(msk->use_64bit_ack)) { ack_size = TCPOLEN_MPTCP_DSS_ACK64; opts->ext_copy.data_ack = msk->ack_seq; opts->ext_copy.ack64 = 1; --- linux-azure-5.8-5.8.0.orig/net/mptcp/protocol.c +++ linux-azure-5.8-5.8.0/net/mptcp/protocol.c @@ -605,8 +605,10 @@ if (!psize) return -EINVAL; - if (!sk_wmem_schedule(sk, psize + dfrag->overhead)) + if (!sk_wmem_schedule(sk, psize + dfrag->overhead)) { + iov_iter_revert(&msg->msg_iter, psize); return -ENOMEM; + } } else { offset = dfrag->offset; psize = min_t(size_t, dfrag->data_len, avail_size); @@ -617,8 +619,10 @@ */ ret = do_tcp_sendpages(ssk, page, offset, psize, msg->msg_flags | MSG_SENDPAGE_NOTLAST | MSG_DONTWAIT); - if (ret <= 0) + if (ret <= 0) { + iov_iter_revert(&msg->msg_iter, psize); return ret; + } frag_truesize += ret; if (!retransmission) { @@ -772,7 +776,6 @@ restart: mptcp_clean_una(sk); -wait_for_sndbuf: __mptcp_flush_join_list(msk); ssk = mptcp_subflow_get_send(msk); while (!sk_stream_memory_free(sk) || @@ -873,7 +876,7 @@ */ mptcp_set_timeout(sk, ssk); release_sock(ssk); - goto wait_for_sndbuf; + goto restart; } } } @@ -1127,8 +1130,11 @@ struct sock *ssk = mptcp_subflow_tcp_sock(subflow); /* still data outstanding at TCP level? Don't retransmit. */ - if (!tcp_write_queue_empty(ssk)) + if (!tcp_write_queue_empty(ssk)) { + if (inet_csk(ssk)->icsk_ca_state >= TCP_CA_Loss) + continue; return NULL; + } if (subflow->backup) { if (!backup) @@ -1475,6 +1481,8 @@ sock_reset_flag(nsk, SOCK_RCU_FREE); /* will be fully established after successful MPC subflow creation */ inet_sk_state_store(nsk, TCP_SYN_RECV); + + security_inet_csk_clone(nsk, req); bh_unlock_sock(nsk); /* keep a single reference */ --- linux-azure-5.8-5.8.0.orig/net/mptcp/protocol.h +++ linux-azure-5.8-5.8.0/net/mptcp/protocol.h @@ -199,6 +199,7 @@ u32 token; unsigned long flags; bool can_ack; + bool use_64bit_ack; /* Set when we received a 64-bit DSN */ spinlock_t join_list_lock; struct work_struct work; struct list_head conn_list; @@ -285,7 +286,6 @@ data_avail : 1, rx_eof : 1, data_fin_tx_enable : 1, - use_64bit_ack : 1, /* Set when we received a 64-bit DSN */ can_ack : 1; /* only after processing the remote a key */ u64 data_fin_tx_seq; u32 remote_nonce; --- linux-azure-5.8-5.8.0.orig/net/mptcp/subflow.c +++ linux-azure-5.8-5.8.0/net/mptcp/subflow.c @@ -682,12 +682,11 @@ if (!mpext->dsn64) { map_seq = expand_seq(subflow->map_seq, subflow->map_data_len, mpext->data_seq); - subflow->use_64bit_ack = 0; pr_debug("expanded seq=%llu", subflow->map_seq); } else { map_seq = mpext->data_seq; - subflow->use_64bit_ack = 1; } + WRITE_ONCE(mptcp_sk(subflow->conn)->use_64bit_ack, !!mpext->dsn64); if (subflow->map_valid) { /* Allow replacing only with an identical map */ --- linux-azure-5.8-5.8.0.orig/net/ncsi/ncsi-manage.c +++ linux-azure-5.8-5.8.0/net/ncsi/ncsi-manage.c @@ -1726,9 +1726,6 @@ ndp->ptype.dev = dev; dev_add_pack(&ndp->ptype); - /* Set up generic netlink interface */ - ncsi_init_netlink(dev); - pdev = to_platform_device(dev->dev.parent); if (pdev) { np = pdev->dev.of_node; @@ -1892,8 +1889,6 @@ list_del_rcu(&ndp->node); spin_unlock_irqrestore(&ncsi_dev_lock, flags); - ncsi_unregister_netlink(nd->dev); - kfree(ndp); } EXPORT_SYMBOL_GPL(ncsi_unregister_dev); --- linux-azure-5.8-5.8.0.orig/net/ncsi/ncsi-netlink.c +++ linux-azure-5.8-5.8.0/net/ncsi/ncsi-netlink.c @@ -766,24 +766,8 @@ .n_ops = ARRAY_SIZE(ncsi_ops), }; -int ncsi_init_netlink(struct net_device *dev) +static int __init ncsi_init_netlink(void) { - int rc; - - rc = genl_register_family(&ncsi_genl_family); - if (rc) - netdev_err(dev, "ncsi: failed to register netlink family\n"); - - return rc; -} - -int ncsi_unregister_netlink(struct net_device *dev) -{ - int rc; - - rc = genl_unregister_family(&ncsi_genl_family); - if (rc) - netdev_err(dev, "ncsi: failed to unregister netlink family\n"); - - return rc; + return genl_register_family(&ncsi_genl_family); } +subsys_initcall(ncsi_init_netlink); --- linux-azure-5.8-5.8.0.orig/net/ncsi/ncsi-netlink.h +++ linux-azure-5.8-5.8.0/net/ncsi/ncsi-netlink.h @@ -22,7 +22,4 @@ struct nlmsghdr *nlhdr, int err); -int ncsi_init_netlink(struct net_device *dev); -int ncsi_unregister_netlink(struct net_device *dev); - #endif /* __NCSI_NETLINK_H__ */ --- linux-azure-5.8-5.8.0.orig/net/ncsi/ncsi-rsp.c +++ linux-azure-5.8-5.8.0/net/ncsi/ncsi-rsp.c @@ -1120,7 +1120,7 @@ int payload, i, ret; /* Find the NCSI device */ - nd = ncsi_find_dev(dev); + nd = ncsi_find_dev(orig_dev); ndp = nd ? TO_NCSI_DEV_PRIV(nd) : NULL; if (!ndp) return -ENODEV; --- linux-azure-5.8-5.8.0.orig/net/netfilter/ipset/ip_set_core.c +++ linux-azure-5.8-5.8.0/net/netfilter/ipset/ip_set_core.c @@ -286,8 +286,7 @@ static const struct nla_policy ipaddr_policy[IPSET_ATTR_IPADDR_MAX + 1] = { [IPSET_ATTR_IPADDR_IPV4] = { .type = NLA_U32 }, - [IPSET_ATTR_IPADDR_IPV6] = { .type = NLA_BINARY, - .len = sizeof(struct in6_addr) }, + [IPSET_ATTR_IPADDR_IPV6] = NLA_POLICY_EXACT_LEN(sizeof(struct in6_addr)), }; int @@ -652,13 +651,14 @@ if (SET_WITH_COUNTER(set)) { struct ip_set_counter *counter = ext_counter(data, set); + ip_set_update_counter(counter, ext, flags); + if (flags & IPSET_FLAG_MATCH_COUNTERS && !(ip_set_match_counter(ip_set_get_packets(counter), mext->packets, mext->packets_op) && ip_set_match_counter(ip_set_get_bytes(counter), mext->bytes, mext->bytes_op))) return false; - ip_set_update_counter(counter, ext, flags); } if (SET_WITH_SKBINFO(set)) ip_set_get_skbinfo(ext_skbinfo(data, set), --- linux-azure-5.8-5.8.0.orig/net/netfilter/ipset/ip_set_hash_gen.h +++ linux-azure-5.8-5.8.0/net/netfilter/ipset/ip_set_hash_gen.h @@ -143,20 +143,6 @@ return hsize * sizeof(struct hbucket *) + sizeof(struct htable); } -/* Compute htable_bits from the user input parameter hashsize */ -static u8 -htable_bits(u32 hashsize) -{ - /* Assume that hashsize == 2^htable_bits */ - u8 bits = fls(hashsize - 1); - - if (jhash_size(bits) != hashsize) - /* Round up to the first 2^n value */ - bits = fls(hashsize); - - return bits; -} - #ifdef IP_SET_HASH_WITH_NETS #if IPSET_NET_COUNT > 1 #define __CIDR(cidr, i) (cidr[i]) @@ -644,7 +630,7 @@ struct htype *h = set->data; struct htable *t, *orig; u8 htable_bits; - size_t dsize = set->dsize; + size_t hsize, dsize = set->dsize; #ifdef IP_SET_HASH_WITH_NETS u8 flags; struct mtype_elem *tmp; @@ -668,14 +654,12 @@ retry: ret = 0; htable_bits++; - if (!htable_bits) { - /* In case we have plenty of memory :-) */ - pr_warn("Cannot increase the hashsize of set %s further\n", - set->name); - ret = -IPSET_ERR_HASH_FULL; - goto out; - } - t = ip_set_alloc(htable_size(htable_bits)); + if (!htable_bits) + goto hbwarn; + hsize = htable_size(htable_bits); + if (!hsize) + goto hbwarn; + t = ip_set_alloc(hsize); if (!t) { ret = -ENOMEM; goto out; @@ -817,6 +801,12 @@ if (ret == -EAGAIN) goto retry; goto out; + +hbwarn: + /* In case we have plenty of memory :-) */ + pr_warn("Cannot increase the hashsize of set %s further\n", set->name); + ret = -IPSET_ERR_HASH_FULL; + goto out; } /* Get the current number of elements and ext_size in the set */ @@ -1520,7 +1510,11 @@ if (!h) return -ENOMEM; - hbits = htable_bits(hashsize); + /* Compute htable_bits from the user input parameter hashsize. + * Assume that hashsize == 2^htable_bits, + * otherwise round up to the first 2^n value. + */ + hbits = fls(hashsize - 1); hsize = htable_size(hbits); if (hsize == 0) { kfree(h); --- linux-azure-5.8-5.8.0.orig/net/netfilter/ipvs/ip_vs_core.c +++ linux-azure-5.8-5.8.0/net/netfilter/ipvs/ip_vs_core.c @@ -748,12 +748,12 @@ struct dst_entry *dst = skb_dst(skb); if (dst->dev && !(dst->dev->flags & IFF_LOOPBACK) && - ip6_route_me_harder(ipvs->net, skb) != 0) + ip6_route_me_harder(ipvs->net, skb->sk, skb) != 0) return 1; } else #endif if (!(skb_rtable(skb)->rt_flags & RTCF_LOCAL) && - ip_route_me_harder(ipvs->net, skb, RTN_LOCAL) != 0) + ip_route_me_harder(ipvs->net, skb->sk, skb, RTN_LOCAL) != 0) return 1; return 0; @@ -2066,14 +2066,14 @@ conn_reuse_mode = sysctl_conn_reuse_mode(ipvs); if (conn_reuse_mode && !iph.fragoffs && is_new_conn(skb, &iph) && cp) { - bool uses_ct = false, resched = false; + bool old_ct = false, resched = false; if (unlikely(sysctl_expire_nodest_conn(ipvs)) && cp->dest && unlikely(!atomic_read(&cp->dest->weight))) { resched = true; - uses_ct = ip_vs_conn_uses_conntrack(cp, skb); + old_ct = ip_vs_conn_uses_old_conntrack(cp, skb); } else if (is_new_conn_expected(cp, conn_reuse_mode)) { - uses_ct = ip_vs_conn_uses_conntrack(cp, skb); + old_ct = ip_vs_conn_uses_old_conntrack(cp, skb); if (!atomic_read(&cp->n_control)) { resched = true; } else { @@ -2081,15 +2081,17 @@ * that uses conntrack while it is still * referenced by controlled connection(s). */ - resched = !uses_ct; + resched = !old_ct; } } if (resched) { + if (!old_ct) + cp->flags &= ~IP_VS_CONN_F_NFCT; if (!atomic_read(&cp->n_control)) ip_vs_conn_expire_now(cp); __ip_vs_conn_put(cp); - if (uses_ct) + if (old_ct) return NF_DROP; cp = NULL; } --- linux-azure-5.8-5.8.0.orig/net/netfilter/ipvs/ip_vs_ctl.c +++ linux-azure-5.8-5.8.0/net/netfilter/ipvs/ip_vs_ctl.c @@ -2471,6 +2471,10 @@ /* Set timeout values for (tcp tcpfin udp) */ ret = ip_vs_set_timeout(ipvs, (struct ip_vs_timeout_user *)arg); goto out_unlock; + } else if (!len) { + /* No more commands with len == 0 below */ + ret = -EINVAL; + goto out_unlock; } usvc_compat = (struct ip_vs_service_user *)arg; @@ -2547,9 +2551,6 @@ break; case IP_VS_SO_SET_DELDEST: ret = ip_vs_del_dest(svc, &udest); - break; - default: - ret = -EINVAL; } out_unlock: @@ -4123,12 +4124,18 @@ spin_lock_init(&ipvs->tot_stats.lock); - proc_create_net("ip_vs", 0, ipvs->net->proc_net, &ip_vs_info_seq_ops, - sizeof(struct ip_vs_iter)); - proc_create_net_single("ip_vs_stats", 0, ipvs->net->proc_net, - ip_vs_stats_show, NULL); - proc_create_net_single("ip_vs_stats_percpu", 0, ipvs->net->proc_net, - ip_vs_stats_percpu_show, NULL); +#ifdef CONFIG_PROC_FS + if (!proc_create_net("ip_vs", 0, ipvs->net->proc_net, + &ip_vs_info_seq_ops, sizeof(struct ip_vs_iter))) + goto err_vs; + if (!proc_create_net_single("ip_vs_stats", 0, ipvs->net->proc_net, + ip_vs_stats_show, NULL)) + goto err_stats; + if (!proc_create_net_single("ip_vs_stats_percpu", 0, + ipvs->net->proc_net, + ip_vs_stats_percpu_show, NULL)) + goto err_percpu; +#endif if (ip_vs_control_net_init_sysctl(ipvs)) goto err; @@ -4136,6 +4143,17 @@ return 0; err: +#ifdef CONFIG_PROC_FS + remove_proc_entry("ip_vs_stats_percpu", ipvs->net->proc_net); + +err_percpu: + remove_proc_entry("ip_vs_stats", ipvs->net->proc_net); + +err_stats: + remove_proc_entry("ip_vs", ipvs->net->proc_net); + +err_vs: +#endif free_percpu(ipvs->tot_stats.cpustats); return -ENOMEM; } @@ -4144,9 +4162,11 @@ { ip_vs_trash_cleanup(ipvs); ip_vs_control_net_cleanup_sysctl(ipvs); +#ifdef CONFIG_PROC_FS remove_proc_entry("ip_vs_stats_percpu", ipvs->net->proc_net); remove_proc_entry("ip_vs_stats", ipvs->net->proc_net); remove_proc_entry("ip_vs", ipvs->net->proc_net); +#endif free_percpu(ipvs->tot_stats.cpustats); } --- linux-azure-5.8-5.8.0.orig/net/netfilter/ipvs/ip_vs_xmit.c +++ linux-azure-5.8-5.8.0/net/netfilter/ipvs/ip_vs_xmit.c @@ -609,6 +609,8 @@ if (ret == NF_ACCEPT) { nf_reset_ct(skb); skb_forward_csum(skb); + if (skb->dev) + skb->tstamp = 0; } return ret; } @@ -649,6 +651,8 @@ if (!local) { skb_forward_csum(skb); + if (skb->dev) + skb->tstamp = 0; NF_HOOK(pf, NF_INET_LOCAL_OUT, cp->ipvs->net, NULL, skb, NULL, skb_dst(skb)->dev, dst_output); } else @@ -669,6 +673,8 @@ if (!local) { ip_vs_drop_early_demux_sk(skb); skb_forward_csum(skb); + if (skb->dev) + skb->tstamp = 0; NF_HOOK(pf, NF_INET_LOCAL_OUT, cp->ipvs->net, NULL, skb, NULL, skb_dst(skb)->dev, dst_output); } else --- linux-azure-5.8-5.8.0.orig/net/netfilter/nf_conntrack_core.c +++ linux-azure-5.8-5.8.0/net/netfilter/nf_conntrack_core.c @@ -1229,7 +1229,8 @@ * Let nf_ct_resolve_clash() deal with this later. */ if (nf_ct_tuple_equal(&ignored_conntrack->tuplehash[IP_CT_DIR_ORIGINAL].tuple, - &ct->tuplehash[IP_CT_DIR_ORIGINAL].tuple)) + &ct->tuplehash[IP_CT_DIR_ORIGINAL].tuple) && + nf_ct_zone_equal(ct, zone, IP_CT_DIR_ORIGINAL)) continue; NF_CT_STAT_INC_ATOMIC(net, found); --- linux-azure-5.8-5.8.0.orig/net/netfilter/nf_conntrack_netlink.c +++ linux-azure-5.8-5.8.0/net/netfilter/nf_conntrack_netlink.c @@ -331,10 +331,15 @@ static int ctnetlink_dump_secctx(struct sk_buff *skb, const struct nf_conn *ct) { struct nlattr *nest_secctx; - int len, ret; - char *secctx; + int ret; + struct lsmblob blob; + struct lsmcontext context; - ret = security_secid_to_secctx(ct->secmark, &secctx, &len); + /* lsmblob_init() puts ct->secmark into all of the secids in blob. + * security_secid_to_secctx() will know which security module + * to use to create the secctx. */ + lsmblob_init(&blob, ct->secmark); + ret = security_secid_to_secctx(&blob, &context, LSMBLOB_DISPLAY); if (ret) return 0; @@ -343,13 +348,13 @@ if (!nest_secctx) goto nla_put_failure; - if (nla_put_string(skb, CTA_SECCTX_NAME, secctx)) + if (nla_put_string(skb, CTA_SECCTX_NAME, context.context)) goto nla_put_failure; nla_nest_end(skb, nest_secctx); ret = 0; nla_put_failure: - security_release_secctx(secctx, len); + security_release_secctx(&context); return ret; } #else @@ -647,11 +652,16 @@ { #ifdef CONFIG_NF_CONNTRACK_SECMARK int len, ret; + struct lsmblob blob; + struct lsmcontext context; - ret = security_secid_to_secctx(ct->secmark, NULL, &len); + ret = security_secid_to_secctx(&blob, &context, LSMBLOB_DISPLAY); if (ret) return 0; + len = context.len; + security_release_secctx(&context); + return nla_total_size(0) /* CTA_SECCTX */ + nla_total_size(sizeof(char) * len); /* CTA_SECCTX_NAME */ #else @@ -851,7 +861,6 @@ } struct ctnetlink_filter { - u_int32_t cta_flags; u8 family; u_int32_t orig_flags; @@ -906,10 +915,6 @@ struct nf_conntrack_zone *zone, u_int32_t flags); -/* applied on filters */ -#define CTA_FILTER_F_CTA_MARK (1 << 0) -#define CTA_FILTER_F_CTA_MARK_MASK (1 << 1) - static struct ctnetlink_filter * ctnetlink_alloc_filter(const struct nlattr * const cda[], u8 family) { @@ -930,14 +935,10 @@ #ifdef CONFIG_NF_CONNTRACK_MARK if (cda[CTA_MARK]) { filter->mark.val = ntohl(nla_get_be32(cda[CTA_MARK])); - filter->cta_flags |= CTA_FILTER_FLAG(CTA_MARK); - - if (cda[CTA_MARK_MASK]) { + if (cda[CTA_MARK_MASK]) filter->mark.mask = ntohl(nla_get_be32(cda[CTA_MARK_MASK])); - filter->cta_flags |= CTA_FILTER_FLAG(CTA_MARK_MASK); - } else { + else filter->mark.mask = 0xffffffff; - } } else if (cda[CTA_MARK_MASK]) { err = -EINVAL; goto err_filter; @@ -1117,11 +1118,7 @@ } #ifdef CONFIG_NF_CONNTRACK_MARK - if ((filter->cta_flags & CTA_FILTER_FLAG(CTA_MARK_MASK)) && - (ct->mark & filter->mark.mask) != filter->mark.val) - goto ignore_entry; - else if ((filter->cta_flags & CTA_FILTER_FLAG(CTA_MARK)) && - ct->mark != filter->mark.val) + if ((ct->mark & filter->mark.mask) != filter->mark.val) goto ignore_entry; #endif @@ -1404,7 +1401,8 @@ if (err < 0) return err; - + if (l3num != NFPROTO_IPV4 && l3num != NFPROTO_IPV6) + return -EOPNOTSUPP; tuple->src.l3num = l3num; if (flags & CTA_FILTER_FLAG(CTA_IP_DST) || --- linux-azure-5.8-5.8.0.orig/net/netfilter/nf_conntrack_proto.c +++ linux-azure-5.8-5.8.0/net/netfilter/nf_conntrack_proto.c @@ -565,6 +565,7 @@ int err; err = nf_ct_netns_do_get(net, NFPROTO_IPV4); +#if IS_ENABLED(CONFIG_IPV6) if (err < 0) goto err1; err = nf_ct_netns_do_get(net, NFPROTO_IPV6); @@ -575,6 +576,7 @@ err2: nf_ct_netns_put(net, NFPROTO_IPV4); err1: +#endif return err; } --- linux-azure-5.8-5.8.0.orig/net/netfilter/nf_conntrack_proto_sctp.c +++ linux-azure-5.8-5.8.0/net/netfilter/nf_conntrack_proto_sctp.c @@ -62,6 +62,8 @@ [SCTP_CONNTRACK_HEARTBEAT_ACKED] = 210 SECS, }; +#define SCTP_FLAG_HEARTBEAT_VTAG_FAILED 1 + #define sNO SCTP_CONNTRACK_NONE #define sCL SCTP_CONNTRACK_CLOSED #define sCW SCTP_CONNTRACK_COOKIE_WAIT @@ -369,6 +371,7 @@ u_int32_t offset, count; unsigned int *timeouts; unsigned long map[256 / sizeof(unsigned long)] = { 0 }; + bool ignore = false; if (sctp_error(skb, dataoff, state)) return -NF_ACCEPT; @@ -427,15 +430,39 @@ /* Sec 8.5.1 (D) */ if (sh->vtag != ct->proto.sctp.vtag[dir]) goto out_unlock; - } else if (sch->type == SCTP_CID_HEARTBEAT || - sch->type == SCTP_CID_HEARTBEAT_ACK) { + } else if (sch->type == SCTP_CID_HEARTBEAT) { + if (ct->proto.sctp.vtag[dir] == 0) { + pr_debug("Setting %d vtag %x for dir %d\n", sch->type, sh->vtag, dir); + ct->proto.sctp.vtag[dir] = sh->vtag; + } else if (sh->vtag != ct->proto.sctp.vtag[dir]) { + if (test_bit(SCTP_CID_DATA, map) || ignore) + goto out_unlock; + + ct->proto.sctp.flags |= SCTP_FLAG_HEARTBEAT_VTAG_FAILED; + ct->proto.sctp.last_dir = dir; + ignore = true; + continue; + } else if (ct->proto.sctp.flags & SCTP_FLAG_HEARTBEAT_VTAG_FAILED) { + ct->proto.sctp.flags &= ~SCTP_FLAG_HEARTBEAT_VTAG_FAILED; + } + } else if (sch->type == SCTP_CID_HEARTBEAT_ACK) { if (ct->proto.sctp.vtag[dir] == 0) { pr_debug("Setting vtag %x for dir %d\n", sh->vtag, dir); ct->proto.sctp.vtag[dir] = sh->vtag; } else if (sh->vtag != ct->proto.sctp.vtag[dir]) { - pr_debug("Verification tag check failed\n"); - goto out_unlock; + if (test_bit(SCTP_CID_DATA, map) || ignore) + goto out_unlock; + + if ((ct->proto.sctp.flags & SCTP_FLAG_HEARTBEAT_VTAG_FAILED) == 0 || + ct->proto.sctp.last_dir == dir) + goto out_unlock; + + ct->proto.sctp.flags &= ~SCTP_FLAG_HEARTBEAT_VTAG_FAILED; + ct->proto.sctp.vtag[dir] = sh->vtag; + ct->proto.sctp.vtag[!dir] = 0; + } else if (ct->proto.sctp.flags & SCTP_FLAG_HEARTBEAT_VTAG_FAILED) { + ct->proto.sctp.flags &= ~SCTP_FLAG_HEARTBEAT_VTAG_FAILED; } } @@ -470,6 +497,10 @@ } spin_unlock_bh(&ct->lock); + /* allow but do not refresh timeout */ + if (ignore) + return NF_ACCEPT; + timeouts = nf_ct_timeout_lookup(ct); if (!timeouts) timeouts = nf_sctp_pernet(nf_ct_net(ct))->timeouts; --- linux-azure-5.8-5.8.0.orig/net/netfilter/nf_conntrack_proto_tcp.c +++ linux-azure-5.8-5.8.0/net/netfilter/nf_conntrack_proto_tcp.c @@ -541,13 +541,20 @@ swin = win << sender->td_scale; sender->td_maxwin = (swin == 0 ? 1 : swin); sender->td_maxend = end + sender->td_maxwin; - /* - * We haven't seen traffic in the other direction yet - * but we have to tweak window tracking to pass III - * and IV until that happens. - */ - if (receiver->td_maxwin == 0) + if (receiver->td_maxwin == 0) { + /* We haven't seen traffic in the other + * direction yet but we have to tweak window + * tracking to pass III and IV until that + * happens. + */ receiver->td_end = receiver->td_maxend = sack; + } else if (sack == receiver->td_end + 1) { + /* Likely a reply to a keepalive. + * Needed for III. + */ + receiver->td_end++; + } + } } else if (((state->state == TCP_CONNTRACK_SYN_SENT && dir == IP_CT_DIR_ORIGINAL) --- linux-azure-5.8-5.8.0.orig/net/netfilter/nf_conntrack_proto_udp.c +++ linux-azure-5.8-5.8.0/net/netfilter/nf_conntrack_proto_udp.c @@ -81,18 +81,6 @@ return false; } -static void nf_conntrack_udp_refresh_unreplied(struct nf_conn *ct, - struct sk_buff *skb, - enum ip_conntrack_info ctinfo, - u32 extra_jiffies) -{ - if (unlikely(ctinfo == IP_CT_ESTABLISHED_REPLY && - ct->status & IPS_NAT_CLASH)) - nf_ct_kill(ct); - else - nf_ct_refresh_acct(ct, ctinfo, skb, extra_jiffies); -} - /* Returns verdict for packet, and may modify conntracktype */ int nf_conntrack_udp_packet(struct nf_conn *ct, struct sk_buff *skb, @@ -124,12 +112,15 @@ nf_ct_refresh_acct(ct, ctinfo, skb, extra); + /* never set ASSURED for IPS_NAT_CLASH, they time out soon */ + if (unlikely((ct->status & IPS_NAT_CLASH))) + return NF_ACCEPT; + /* Also, more likely to be important, and not a probe */ if (!test_and_set_bit(IPS_ASSURED_BIT, &ct->status)) nf_conntrack_event_cache(IPCT_ASSURED, ct); } else { - nf_conntrack_udp_refresh_unreplied(ct, skb, ctinfo, - timeouts[UDP_CT_UNREPLIED]); + nf_ct_refresh_acct(ct, ctinfo, skb, timeouts[UDP_CT_UNREPLIED]); } return NF_ACCEPT; } @@ -206,12 +197,15 @@ if (test_bit(IPS_SEEN_REPLY_BIT, &ct->status)) { nf_ct_refresh_acct(ct, ctinfo, skb, timeouts[UDP_CT_REPLIED]); + + if (unlikely((ct->status & IPS_NAT_CLASH))) + return NF_ACCEPT; + /* Also, more likely to be important, and not a probe */ if (!test_and_set_bit(IPS_ASSURED_BIT, &ct->status)) nf_conntrack_event_cache(IPCT_ASSURED, ct); } else { - nf_conntrack_udp_refresh_unreplied(ct, skb, ctinfo, - timeouts[UDP_CT_UNREPLIED]); + nf_ct_refresh_acct(ct, ctinfo, skb, timeouts[UDP_CT_UNREPLIED]); } return NF_ACCEPT; } --- linux-azure-5.8-5.8.0.orig/net/netfilter/nf_conntrack_standalone.c +++ linux-azure-5.8-5.8.0/net/netfilter/nf_conntrack_standalone.c @@ -173,16 +173,17 @@ static void ct_show_secctx(struct seq_file *s, const struct nf_conn *ct) { int ret; - u32 len; - char *secctx; + struct lsmblob blob; + struct lsmcontext context; - ret = security_secid_to_secctx(ct->secmark, &secctx, &len); + lsmblob_init(&blob, ct->secmark); + ret = security_secid_to_secctx(&blob, &context, LSMBLOB_DISPLAY); if (ret) return; - seq_printf(s, "secctx=%s ", secctx); + seq_printf(s, "secctx=%s ", context.context); - security_release_secctx(secctx, len); + security_release_secctx(&context); } #else static inline void ct_show_secctx(struct seq_file *s, const struct nf_conn *ct) @@ -523,6 +524,9 @@ { int ret; + /* module_param hashsize could have changed value */ + nf_conntrack_htable_size_user = nf_conntrack_htable_size; + ret = proc_dointvec(table, write, buffer, lenp, ppos); if (ret < 0 || !write) return ret; --- linux-azure-5.8-5.8.0.orig/net/netfilter/nf_dup_netdev.c +++ linux-azure-5.8-5.8.0/net/netfilter/nf_dup_netdev.c @@ -19,6 +19,7 @@ skb_push(skb, skb->mac_len); skb->dev = dev; + skb->tstamp = 0; dev_queue_xmit(skb); } --- linux-azure-5.8-5.8.0.orig/net/netfilter/nf_flow_table_core.c +++ linux-azure-5.8-5.8.0/net/netfilter/nf_flow_table_core.c @@ -398,7 +398,7 @@ return -1; tcph = (void *)(skb_network_header(skb) + thoff); - inet_proto_csum_replace2(&tcph->check, skb, port, new_port, true); + inet_proto_csum_replace2(&tcph->check, skb, port, new_port, false); return 0; } @@ -415,7 +415,7 @@ udph = (void *)(skb_network_header(skb) + thoff); if (udph->check || skb->ip_summed == CHECKSUM_PARTIAL) { inet_proto_csum_replace2(&udph->check, skb, port, - new_port, true); + new_port, false); if (!udph->check) udph->check = CSUM_MANGLED_0; } --- linux-azure-5.8-5.8.0.orig/net/netfilter/nf_log_common.c +++ linux-azure-5.8-5.8.0/net/netfilter/nf_log_common.c @@ -171,6 +171,18 @@ } EXPORT_SYMBOL_GPL(nf_log_dump_packet_common); +void nf_log_dump_vlan(struct nf_log_buf *m, const struct sk_buff *skb) +{ + u16 vid; + + if (!skb_vlan_tag_present(skb)) + return; + + vid = skb_vlan_tag_get(skb); + nf_log_buf_add(m, "VPROTO=%04x VID=%u ", ntohs(skb->vlan_proto), vid); +} +EXPORT_SYMBOL_GPL(nf_log_dump_vlan); + /* bridge and netdev logging families share this code. */ void nf_log_l2packet(struct net *net, u_int8_t pf, __be16 protocol, --- linux-azure-5.8-5.8.0.orig/net/netfilter/nf_nat_core.c +++ linux-azure-5.8-5.8.0/net/netfilter/nf_nat_core.c @@ -1174,6 +1174,7 @@ ret = register_pernet_subsys(&nat_net_ops); if (ret < 0) { nf_ct_extend_unregister(&nat_extend); + kvfree(nf_nat_bysource); return ret; } --- linux-azure-5.8-5.8.0.orig/net/netfilter/nf_nat_proto.c +++ linux-azure-5.8-5.8.0/net/netfilter/nf_nat_proto.c @@ -715,7 +715,7 @@ if (ct->tuplehash[dir].tuple.dst.u3.ip != ct->tuplehash[!dir].tuple.src.u3.ip) { - err = ip_route_me_harder(state->net, skb, RTN_UNSPEC); + err = ip_route_me_harder(state->net, state->sk, skb, RTN_UNSPEC); if (err < 0) ret = NF_DROP_ERR(err); } @@ -953,7 +953,7 @@ if (!nf_inet_addr_cmp(&ct->tuplehash[dir].tuple.dst.u3, &ct->tuplehash[!dir].tuple.src.u3)) { - err = nf_ip6_route_me_harder(state->net, skb); + err = nf_ip6_route_me_harder(state->net, state->sk, skb); if (err < 0) ret = NF_DROP_ERR(err); } --- linux-azure-5.8-5.8.0.orig/net/netfilter/nf_synproxy_core.c +++ linux-azure-5.8-5.8.0/net/netfilter/nf_synproxy_core.c @@ -446,7 +446,7 @@ skb_dst_set_noref(nskb, skb_dst(skb)); nskb->protocol = htons(ETH_P_IP); - if (ip_route_me_harder(net, nskb, RTN_UNSPEC)) + if (ip_route_me_harder(net, nskb->sk, nskb, RTN_UNSPEC)) goto free_nskb; if (nfct) { --- linux-azure-5.8-5.8.0.orig/net/netfilter/nf_tables_api.c +++ linux-azure-5.8-5.8.0/net/netfilter/nf_tables_api.c @@ -295,7 +295,7 @@ struct nft_expr *expr; expr = nft_expr_first(rule); - while (expr != nft_expr_last(rule) && expr->ops) { + while (nft_expr_more(rule, expr)) { if (expr->ops->activate) expr->ops->activate(ctx, expr); @@ -310,7 +310,7 @@ struct nft_expr *expr; expr = nft_expr_first(rule); - while (expr != nft_expr_last(rule) && expr->ops) { + while (nft_expr_more(rule, expr)) { if (expr->ops->deactivate) expr->ops->deactivate(ctx, expr, phase); @@ -612,7 +612,8 @@ static void lockdep_nfnl_nft_mutex_not_held(void) { #ifdef CONFIG_PROVE_LOCKING - WARN_ON_ONCE(lockdep_nfnl_is_held(NFNL_SUBSYS_NFTABLES)); + if (debug_locks) + WARN_ON_ONCE(lockdep_nfnl_is_held(NFNL_SUBSYS_NFTABLES)); #endif } @@ -797,11 +798,11 @@ nlh->nlmsg_seq, NFT_MSG_NEWTABLE, 0, family, table); if (err < 0) - goto err; + goto err_fill_table_info; - return nlmsg_unicast(nlsk, skb2, NETLINK_CB(skb).portid); + return nfnetlink_unicast(skb2, net, NETLINK_CB(skb).portid); -err: +err_fill_table_info: kfree_skb(skb2); return err; } @@ -1527,11 +1528,11 @@ nlh->nlmsg_seq, NFT_MSG_NEWCHAIN, 0, family, table, chain); if (err < 0) - goto err; + goto err_fill_chain_info; - return nlmsg_unicast(nlsk, skb2, NETLINK_CB(skb).portid); + return nfnetlink_unicast(skb2, net, NETLINK_CB(skb).portid); -err: +err_fill_chain_info: kfree_skb(skb2); return err; } @@ -2037,7 +2038,7 @@ if (nla[NFTA_CHAIN_HOOK]) { if (!nft_is_base_chain(chain)) - return -EBUSY; + return -EEXIST; err = nft_chain_parse_hook(ctx->net, nla, &hook, ctx->family, false); @@ -2047,21 +2048,21 @@ basechain = nft_base_chain(chain); if (basechain->type != hook.type) { nft_chain_release_hook(&hook); - return -EBUSY; + return -EEXIST; } if (ctx->family == NFPROTO_NETDEV) { if (!nft_hook_list_equal(&basechain->hook_list, &hook.list)) { nft_chain_release_hook(&hook); - return -EBUSY; + return -EEXIST; } } else { ops = &basechain->ops; if (ops->hooknum != hook.num || ops->priority != hook.priority) { nft_chain_release_hook(&hook); - return -EBUSY; + return -EEXIST; } } nft_chain_release_hook(&hook); @@ -2898,11 +2899,11 @@ nlh->nlmsg_seq, NFT_MSG_NEWRULE, 0, family, table, chain, rule, NULL); if (err < 0) - goto err; + goto err_fill_rule_info; - return nlmsg_unicast(nlsk, skb2, NETLINK_CB(skb).portid); + return nfnetlink_unicast(skb2, net, NETLINK_CB(skb).portid); -err: +err_fill_rule_info: kfree_skb(skb2); return err; } @@ -2917,7 +2918,7 @@ * is called on error from nf_tables_newrule(). */ expr = nft_expr_first(rule); - while (expr != nft_expr_last(rule) && expr->ops) { + while (nft_expr_more(rule, expr)) { next = nft_expr_next(expr); nf_tables_expr_destroy(ctx, expr); expr = next; @@ -3538,7 +3539,7 @@ return 0; } -static int nf_msecs_to_jiffies64(const struct nlattr *nla, u64 *result) +int nf_msecs_to_jiffies64(const struct nlattr *nla, u64 *result) { u64 ms = be64_to_cpu(nla_get_be64(nla)); u64 max = (u64)(~((u64)0)); @@ -3552,7 +3553,7 @@ return 0; } -static __be64 nf_jiffies64_to_msecs(u64 input) +__be64 nf_jiffies64_to_msecs(u64 input) { return cpu_to_be64(jiffies64_to_msecs(input)); } @@ -3643,7 +3644,8 @@ goto nla_put_failure; } - if (nla_put(skb, NFTA_SET_USERDATA, set->udlen, set->udata)) + if (set->udata && + nla_put(skb, NFTA_SET_USERDATA, set->udlen, set->udata)) goto nla_put_failure; nest = nla_nest_start_noflag(skb, NFTA_SET_DESC); @@ -3828,11 +3830,11 @@ err = nf_tables_fill_set(skb2, &ctx, set, NFT_MSG_NEWSET, 0); if (err < 0) - goto err; + goto err_fill_set_info; - return nlmsg_unicast(nlsk, skb2, NETLINK_CB(skb).portid); + return nfnetlink_unicast(skb2, net, NETLINK_CB(skb).portid); -err: +err_fill_set_info: kfree_skb(skb2); return err; } @@ -4720,24 +4722,18 @@ err = -ENOMEM; skb = nlmsg_new(NLMSG_GOODSIZE, GFP_ATOMIC); if (skb == NULL) - goto err1; + return err; err = nf_tables_fill_setelem_info(skb, ctx, ctx->seq, ctx->portid, NFT_MSG_NEWSETELEM, 0, set, &elem); if (err < 0) - goto err2; + goto err_fill_setelem; - err = nfnetlink_unicast(skb, ctx->net, ctx->portid, MSG_DONTWAIT); - /* This avoids a loop in nfnetlink. */ - if (err < 0) - goto err1; + return nfnetlink_unicast(skb, ctx->net, ctx->portid); - return 0; -err2: +err_fill_setelem: kfree_skb(skb); -err1: - /* this avoids a loop in nfnetlink. */ - return err == -EAGAIN ? -ENOBUFS : err; + return err; } /* called with rcu_read_lock held */ @@ -5160,10 +5156,8 @@ if (nft_set_ext_exists(ext, NFT_SET_EXT_DATA) ^ nft_set_ext_exists(ext2, NFT_SET_EXT_DATA) || nft_set_ext_exists(ext, NFT_SET_EXT_OBJREF) ^ - nft_set_ext_exists(ext2, NFT_SET_EXT_OBJREF)) { - err = -EBUSY; + nft_set_ext_exists(ext2, NFT_SET_EXT_OBJREF)) goto err_element_clash; - } if ((nft_set_ext_exists(ext, NFT_SET_EXT_DATA) && nft_set_ext_exists(ext2, NFT_SET_EXT_DATA) && memcmp(nft_set_ext_data(ext), @@ -5171,7 +5165,7 @@ (nft_set_ext_exists(ext, NFT_SET_EXT_OBJREF) && nft_set_ext_exists(ext2, NFT_SET_EXT_OBJREF) && *nft_set_ext_obj(ext) != *nft_set_ext_obj(ext2))) - err = -EBUSY; + goto err_element_clash; else if (!(nlmsg_flags & NLM_F_EXCL)) err = 0; } else if (err == -ENOTEMPTY) { @@ -5993,10 +5987,11 @@ nlh->nlmsg_seq, NFT_MSG_NEWOBJ, 0, family, table, obj, reset); if (err < 0) - goto err; + goto err_fill_obj_info; - return nlmsg_unicast(nlsk, skb2, NETLINK_CB(skb).portid); -err: + return nfnetlink_unicast(skb2, net, NETLINK_CB(skb).portid); + +err_fill_obj_info: kfree_skb(skb2); return err; } @@ -6308,7 +6303,7 @@ list_for_each_entry(hook2, &ft->hook_list, list) { if (hook->ops.dev == hook2->ops.dev && hook->ops.pf == hook2->ops.pf) { - err = -EBUSY; + err = -EEXIST; goto err_unregister_net_hooks; } } @@ -6845,10 +6840,11 @@ NFT_MSG_NEWFLOWTABLE, 0, family, flowtable, &flowtable->hook_list); if (err < 0) - goto err; + goto err_fill_flowtable_info; - return nlmsg_unicast(nlsk, skb2, NETLINK_CB(skb).portid); -err: + return nfnetlink_unicast(skb2, net, NETLINK_CB(skb).portid); + +err_fill_flowtable_info: kfree_skb(skb2); return err; } @@ -6861,7 +6857,7 @@ struct sk_buff *skb; int err; - if (ctx->report && + if (!ctx->report && !nfnetlink_has_listeners(ctx->net, NFNLGRP_NFTABLES)) return; @@ -6981,7 +6977,7 @@ struct sk_buff *skb2; int err; - if (nlmsg_report(nlh) && + if (!nlmsg_report(nlh) && !nfnetlink_has_listeners(net, NFNLGRP_NFTABLES)) return; @@ -7019,10 +7015,11 @@ err = nf_tables_fill_gen_info(skb2, net, NETLINK_CB(skb).portid, nlh->nlmsg_seq); if (err < 0) - goto err; + goto err_fill_gen_info; - return nlmsg_unicast(nlsk, skb2, NETLINK_CB(skb).portid); -err: + return nfnetlink_unicast(skb2, net, NETLINK_CB(skb).portid); + +err_fill_gen_info: kfree_skb(skb2); return err; } @@ -7290,6 +7287,12 @@ } } +void nf_tables_trans_destroy_flush_work(void) +{ + flush_work(&trans_destroy_work); +} +EXPORT_SYMBOL_GPL(nf_tables_trans_destroy_flush_work); + static int nf_tables_commit_chain_prepare(struct net *net, struct nft_chain *chain) { struct nft_rule *rule; @@ -7472,9 +7475,9 @@ spin_unlock(&nf_tables_destroy_list_lock); nf_tables_module_autoload_cleanup(net); - mutex_unlock(&net->nft.commit_mutex); - schedule_work(&trans_destroy_work); + + mutex_unlock(&net->nft.commit_mutex); } static int nf_tables_commit(struct net *net, struct sk_buff *skb) @@ -7732,12 +7735,16 @@ kfree(trans); } -static int __nf_tables_abort(struct net *net, bool autoload) +static int __nf_tables_abort(struct net *net, enum nfnl_abort_action action) { struct nft_trans *trans, *next; struct nft_trans_elem *te; struct nft_hook *hook; + if (action == NFNL_ABORT_VALIDATE && + nf_tables_validate(net) < 0) + return -EAGAIN; + list_for_each_entry_safe_reverse(trans, next, &net->nft.commit_list, list) { switch (trans->msg_type) { @@ -7865,7 +7872,7 @@ nf_tables_abort_release(trans); } - if (autoload) + if (action == NFNL_ABORT_AUTOLOAD) nf_tables_module_autoload(net); else nf_tables_module_autoload_cleanup(net); @@ -7878,9 +7885,10 @@ nft_validate_state_update(net, NFT_VALIDATE_SKIP); } -static int nf_tables_abort(struct net *net, struct sk_buff *skb, bool autoload) +static int nf_tables_abort(struct net *net, struct sk_buff *skb, + enum nfnl_abort_action action) { - int ret = __nf_tables_abort(net, autoload); + int ret = __nf_tables_abort(net, action); mutex_unlock(&net->nft.commit_mutex); @@ -8417,6 +8425,17 @@ } EXPORT_SYMBOL_GPL(__nft_release_basechain); +static void __nft_release_hooks(struct net *net) +{ + struct nft_table *table; + struct nft_chain *chain; + + list_for_each_entry(table, &net->nft.tables, list) { + list_for_each_entry(chain, &table->chains, list) + nf_tables_unregister_hook(net, table, chain); + } +} + static void __nft_release_tables(struct net *net) { struct nft_flowtable *flowtable, *nf; @@ -8432,10 +8451,6 @@ list_for_each_entry_safe(table, nt, &net->nft.tables, list) { ctx.family = table->family; - - list_for_each_entry(chain, &table->chains, list) - nf_tables_unregister_hook(net, table, chain); - /* No packets are walking on these chains anymore. */ ctx.table = table; list_for_each_entry(chain, &table->chains, list) { ctx.chain = chain; @@ -8483,11 +8498,16 @@ return 0; } +static void __net_exit nf_tables_pre_exit_net(struct net *net) +{ + __nft_release_hooks(net); +} + static void __net_exit nf_tables_exit_net(struct net *net) { mutex_lock(&net->nft.commit_mutex); if (!list_empty(&net->nft.commit_list)) - __nf_tables_abort(net, false); + __nf_tables_abort(net, NFNL_ABORT_NONE); __nft_release_tables(net); mutex_unlock(&net->nft.commit_mutex); WARN_ON_ONCE(!list_empty(&net->nft.tables)); @@ -8495,8 +8515,9 @@ } static struct pernet_operations nf_tables_net_ops = { - .init = nf_tables_init_net, - .exit = nf_tables_exit_net, + .init = nf_tables_init_net, + .pre_exit = nf_tables_pre_exit_net, + .exit = nf_tables_exit_net, }; static int __init nf_tables_module_init(void) --- linux-azure-5.8-5.8.0.orig/net/netfilter/nf_tables_offload.c +++ linux-azure-5.8-5.8.0/net/netfilter/nf_tables_offload.c @@ -28,6 +28,23 @@ return flow; } +void nft_flow_rule_set_addr_type(struct nft_flow_rule *flow, + enum flow_dissector_key_id addr_type) +{ + struct nft_flow_match *match = &flow->match; + struct nft_flow_key *mask = &match->mask; + struct nft_flow_key *key = &match->key; + + if (match->dissector.used_keys & BIT(FLOW_DISSECTOR_KEY_CONTROL)) + return; + + key->control.addr_type = addr_type; + mask->control.addr_type = 0xffff; + match->dissector.used_keys |= BIT(FLOW_DISSECTOR_KEY_CONTROL); + match->dissector.offset[FLOW_DISSECTOR_KEY_CONTROL] = + offsetof(struct nft_flow_key, control); +} + struct nft_flow_rule *nft_flow_rule_create(struct net *net, const struct nft_rule *rule) { @@ -37,7 +54,7 @@ struct nft_expr *expr; expr = nft_expr_first(rule); - while (expr->ops && expr != nft_expr_last(rule)) { + while (nft_expr_more(rule, expr)) { if (expr->ops->offload_flags & NFT_OFFLOAD_F_ACTION) num_actions++; @@ -61,7 +78,7 @@ ctx->net = net; ctx->dep.type = NFT_OFFLOAD_DEP_UNSPEC; - while (expr->ops && expr != nft_expr_last(rule)) { + while (nft_expr_more(rule, expr)) { if (!expr->ops->offload) { err = -EOPNOTSUPP; goto err_out; --- linux-azure-5.8-5.8.0.orig/net/netfilter/nfnetlink.c +++ linux-azure-5.8-5.8.0/net/netfilter/nfnetlink.c @@ -149,10 +149,15 @@ } EXPORT_SYMBOL_GPL(nfnetlink_set_err); -int nfnetlink_unicast(struct sk_buff *skb, struct net *net, u32 portid, - int flags) +int nfnetlink_unicast(struct sk_buff *skb, struct net *net, u32 portid) { - return netlink_unicast(net->nfnl, skb, portid, flags); + int err; + + err = nlmsg_unicast(net->nfnl, skb, portid); + if (err == -EAGAIN) + err = -ENOBUFS; + + return err; } EXPORT_SYMBOL_GPL(nfnetlink_unicast); @@ -311,7 +316,7 @@ return netlink_ack(skb, nlh, -EINVAL, NULL); replay: status = 0; - +replay_abort: skb = netlink_skb_clone(oskb, GFP_KERNEL); if (!skb) return netlink_ack(oskb, nlh, -ENOMEM, NULL); @@ -477,7 +482,7 @@ } done: if (status & NFNL_BATCH_REPLAY) { - ss->abort(net, oskb, true); + ss->abort(net, oskb, NFNL_ABORT_AUTOLOAD); nfnl_err_reset(&err_list); kfree_skb(skb); module_put(ss->owner); @@ -488,11 +493,25 @@ status |= NFNL_BATCH_REPLAY; goto done; } else if (err) { - ss->abort(net, oskb, false); + ss->abort(net, oskb, NFNL_ABORT_NONE); netlink_ack(oskb, nlmsg_hdr(oskb), err, NULL); } } else { - ss->abort(net, oskb, false); + enum nfnl_abort_action abort_action; + + if (status & NFNL_BATCH_FAILURE) + abort_action = NFNL_ABORT_NONE; + else + abort_action = NFNL_ABORT_VALIDATE; + + err = ss->abort(net, oskb, abort_action); + if (err == -EAGAIN) { + nfnl_err_reset(&err_list); + kfree_skb(skb); + module_put(ss->owner); + status |= NFNL_BATCH_FAILURE; + goto replay_abort; + } } if (ss->cleanup) ss->cleanup(net); --- linux-azure-5.8-5.8.0.orig/net/netfilter/nfnetlink_log.c +++ linux-azure-5.8-5.8.0/net/netfilter/nfnetlink_log.c @@ -356,8 +356,7 @@ goto out; } } - nfnetlink_unicast(inst->skb, inst->net, inst->peer_portid, - MSG_DONTWAIT); + nfnetlink_unicast(inst->skb, inst->net, inst->peer_portid); out: inst->qlen = 0; inst->skb = NULL; --- linux-azure-5.8-5.8.0.orig/net/netfilter/nfnetlink_queue.c +++ linux-azure-5.8-5.8.0/net/netfilter/nfnetlink_queue.c @@ -301,21 +301,29 @@ return -1; } -static u32 nfqnl_get_sk_secctx(struct sk_buff *skb, char **secdata) +static u32 nfqnl_get_sk_secctx(struct sk_buff *skb, struct lsmcontext *context) { - u32 seclen = 0; #if IS_ENABLED(CONFIG_NETWORK_SECMARK) + struct lsmblob blob; + if (!skb || !sk_fullsock(skb->sk)) return 0; read_lock_bh(&skb->sk->sk_callback_lock); - if (skb->secmark) - security_secid_to_secctx(skb->secmark, secdata, &seclen); + if (skb->secmark) { + /* lsmblob_init() puts ct->secmark into all of the secids in + * blob. security_secid_to_secctx() will know which security + * module to use to create the secctx. */ + lsmblob_init(&blob, skb->secmark); + security_secid_to_secctx(&blob, context, LSMBLOB_DISPLAY); + } read_unlock_bh(&skb->sk->sk_callback_lock); + return context->len; +#else + return 0; #endif - return seclen; } static u32 nfqnl_get_bridge_size(struct nf_queue_entry *entry) @@ -391,7 +399,7 @@ enum ip_conntrack_info uninitialized_var(ctinfo); struct nfnl_ct_hook *nfnl_ct; bool csum_verify; - char *secdata = NULL; + struct lsmcontext context = { }; u32 seclen = 0; size = nlmsg_total_size(sizeof(struct nfgenmsg)) @@ -458,7 +466,7 @@ } if ((queue->flags & NFQA_CFG_F_SECCTX) && entskb->sk) { - seclen = nfqnl_get_sk_secctx(entskb, &secdata); + seclen = nfqnl_get_sk_secctx(entskb, &context); if (seclen) size += nla_total_size(seclen); } @@ -593,7 +601,7 @@ nfqnl_put_sk_uidgid(skb, entskb->sk) < 0) goto nla_put_failure; - if (seclen && nla_put(skb, NFQA_SECCTX, seclen, secdata)) + if (seclen && nla_put(skb, NFQA_SECCTX, context.len, context.context)) goto nla_put_failure; if (ct && nfnl_ct->build(skb, ct, ctinfo, NFQA_CT, NFQA_CT_INFO) < 0) @@ -622,7 +630,7 @@ nlh->nlmsg_len = skb->len; if (seclen) - security_release_secctx(secdata, seclen); + security_release_secctx(&context); return skb; nla_put_failure: @@ -631,7 +639,7 @@ net_err_ratelimited("nf_queue: error creating packet message\n"); nlmsg_failure: if (seclen) - security_release_secctx(secdata, seclen); + security_release_secctx(&context); return NULL; } @@ -681,7 +689,7 @@ *packet_id_ptr = htonl(entry->id); /* nfnetlink_unicast will either free the nskb or add it to a socket */ - err = nfnetlink_unicast(nskb, net, queue->peer_portid, MSG_DONTWAIT); + err = nfnetlink_unicast(nskb, net, queue->peer_portid); if (err < 0) { if (queue->flags & NFQA_CFG_F_FAIL_OPEN) { failopen = 1; --- linux-azure-5.8-5.8.0.orig/net/netfilter/nft_chain_route.c +++ linux-azure-5.8-5.8.0/net/netfilter/nft_chain_route.c @@ -42,7 +42,7 @@ iph->daddr != daddr || skb->mark != mark || iph->tos != tos) { - err = ip_route_me_harder(state->net, skb, RTN_UNSPEC); + err = ip_route_me_harder(state->net, state->sk, skb, RTN_UNSPEC); if (err < 0) ret = NF_DROP_ERR(err); } @@ -92,7 +92,7 @@ skb->mark != mark || ipv6_hdr(skb)->hop_limit != hop_limit || flowlabel != *((u32 *)ipv6_hdr(skb)))) { - err = nf_ip6_route_me_harder(state->net, skb); + err = nf_ip6_route_me_harder(state->net, state->sk, skb); if (err < 0) ret = NF_DROP_ERR(err); } --- linux-azure-5.8-5.8.0.orig/net/netfilter/nft_cmp.c +++ linux-azure-5.8-5.8.0/net/netfilter/nft_cmp.c @@ -123,11 +123,11 @@ u8 *mask = (u8 *)&flow->match.mask; u8 *key = (u8 *)&flow->match.key; - if (priv->op != NFT_CMP_EQ || reg->len != priv->len) + if (priv->op != NFT_CMP_EQ || priv->len > reg->len) return -EOPNOTSUPP; - memcpy(key + reg->offset, &priv->data, priv->len); - memcpy(mask + reg->offset, ®->mask, priv->len); + memcpy(key + reg->offset, &priv->data, reg->len); + memcpy(mask + reg->offset, ®->mask, reg->len); flow->match.dissector.used_keys |= BIT(reg->key); flow->match.dissector.offset[reg->key] = reg->base_offset; @@ -137,7 +137,7 @@ nft_reg_load16(priv->data.data) != ARPHRD_ETHER) return -EOPNOTSUPP; - nft_offload_update_dependency(ctx, &priv->data, priv->len); + nft_offload_update_dependency(ctx, &priv->data, reg->len); return 0; } --- linux-azure-5.8-5.8.0.orig/net/netfilter/nft_compat.c +++ linux-azure-5.8-5.8.0/net/netfilter/nft_compat.c @@ -213,6 +213,17 @@ return 0; } +static void nft_compat_wait_for_destructors(void) +{ + /* xtables matches or targets can have side effects, e.g. + * creation/destruction of /proc files. + * The xt ->destroy functions are run asynchronously from + * work queue. If we have pending invocations we thus + * need to wait for those to finish. + */ + nf_tables_trans_destroy_flush_work(); +} + static int nft_target_init(const struct nft_ctx *ctx, const struct nft_expr *expr, const struct nlattr * const tb[]) @@ -236,6 +247,8 @@ nft_target_set_tgchk_param(&par, ctx, target, info, &e, proto, inv); + nft_compat_wait_for_destructors(); + ret = xt_check_target(&par, size, proto, inv); if (ret < 0) return ret; @@ -247,6 +260,12 @@ return 0; } +static void __nft_mt_tg_destroy(struct module *me, const struct nft_expr *expr) +{ + module_put(me); + kfree(expr->ops); +} + static void nft_target_destroy(const struct nft_ctx *ctx, const struct nft_expr *expr) { @@ -262,8 +281,7 @@ if (par.target->destroy != NULL) par.target->destroy(&par); - module_put(me); - kfree(expr->ops); + __nft_mt_tg_destroy(me, expr); } static int nft_extension_dump_info(struct sk_buff *skb, int attr, @@ -451,6 +469,8 @@ nft_match_set_mtchk_param(&par, ctx, match, info, &e, proto, inv); + nft_compat_wait_for_destructors(); + return xt_check_match(&par, size, proto, inv); } @@ -494,8 +514,7 @@ if (par.match->destroy != NULL) par.match->destroy(&par); - module_put(me); - kfree(expr->ops); + __nft_mt_tg_destroy(me, expr); } static void --- linux-azure-5.8-5.8.0.orig/net/netfilter/nft_ct.c +++ linux-azure-5.8-5.8.0/net/netfilter/nft_ct.c @@ -177,8 +177,6 @@ } #endif case NFT_CT_ID: - if (!nf_ct_is_confirmed(ct)) - goto err; *dest = nf_ct_get_id(ct); return; default: --- linux-azure-5.8-5.8.0.orig/net/netfilter/nft_dynset.c +++ linux-azure-5.8-5.8.0/net/netfilter/nft_dynset.c @@ -123,7 +123,7 @@ u32 flags = ntohl(nla_get_be32(tb[NFTA_DYNSET_FLAGS])); if (flags & ~NFT_DYNSET_F_INV) - return -EINVAL; + return -EOPNOTSUPP; if (flags & NFT_DYNSET_F_INV) priv->invert = true; } @@ -156,9 +156,11 @@ timeout = 0; if (tb[NFTA_DYNSET_TIMEOUT] != NULL) { if (!(set->flags & NFT_SET_TIMEOUT)) - return -EINVAL; - timeout = msecs_to_jiffies(be64_to_cpu(nla_get_be64( - tb[NFTA_DYNSET_TIMEOUT]))); + return -EOPNOTSUPP; + + err = nf_msecs_to_jiffies64(tb[NFTA_DYNSET_TIMEOUT], &timeout); + if (err) + return err; } priv->sreg_key = nft_parse_register(tb[NFTA_DYNSET_SREG_KEY]); @@ -168,7 +170,7 @@ if (tb[NFTA_DYNSET_SREG_DATA] != NULL) { if (!(set->flags & NFT_SET_MAP)) - return -EINVAL; + return -EOPNOTSUPP; if (set->dtype == NFT_DATA_VERDICT) return -EOPNOTSUPP; @@ -202,8 +204,10 @@ nft_set_ext_add_length(&priv->tmpl, NFT_SET_EXT_EXPR, priv->expr->ops->size); if (set->flags & NFT_SET_TIMEOUT) { - if (timeout || set->timeout) + if (timeout || set->timeout) { + nft_set_ext_add(&priv->tmpl, NFT_SET_EXT_TIMEOUT); nft_set_ext_add(&priv->tmpl, NFT_SET_EXT_EXPIRATION); + } } priv->timeout = timeout; @@ -267,7 +271,7 @@ if (nla_put_string(skb, NFTA_DYNSET_SET_NAME, priv->set->name)) goto nla_put_failure; if (nla_put_be64(skb, NFTA_DYNSET_TIMEOUT, - cpu_to_be64(jiffies_to_msecs(priv->timeout)), + nf_jiffies64_to_msecs(priv->timeout), NFTA_DYNSET_PAD)) goto nla_put_failure; if (priv->expr && nft_expr_dump(skb, NFTA_DYNSET_EXPR, priv->expr)) --- linux-azure-5.8-5.8.0.orig/net/netfilter/nft_exthdr.c +++ linux-azure-5.8-5.8.0/net/netfilter/nft_exthdr.c @@ -44,7 +44,7 @@ err = ipv6_find_hdr(pkt->skb, &offset, priv->type, NULL, NULL); if (priv->flags & NFT_EXTHDR_F_PRESENT) { - *dest = (err >= 0); + nft_reg_store8(dest, err >= 0); return; } else if (err < 0) { goto err; @@ -141,7 +141,7 @@ err = ipv4_find_option(nft_net(pkt), skb, &offset, priv->type); if (priv->flags & NFT_EXTHDR_F_PRESENT) { - *dest = (err >= 0); + nft_reg_store8(dest, err >= 0); return; } else if (err < 0) { goto err; --- linux-azure-5.8-5.8.0.orig/net/netfilter/nft_flow_offload.c +++ linux-azure-5.8-5.8.0/net/netfilter/nft_flow_offload.c @@ -102,7 +102,7 @@ } if (nf_ct_ext_exist(ct, NF_CT_EXT_HELPER) || - ct->status & IPS_SEQ_ADJUST) + ct->status & (IPS_SEQ_ADJUST | IPS_NAT_CLASH)) goto out; if (!nf_ct_is_confirmed(ct)) --- linux-azure-5.8-5.8.0.orig/net/netfilter/nft_fwd_netdev.c +++ linux-azure-5.8-5.8.0/net/netfilter/nft_fwd_netdev.c @@ -138,6 +138,7 @@ return; skb->dev = dev; + skb->tstamp = 0; neigh_xmit(neigh_table, dev, addr, skb); out: regs->verdict.code = verdict; --- linux-azure-5.8-5.8.0.orig/net/netfilter/nft_meta.c +++ linux-azure-5.8-5.8.0/net/netfilter/nft_meta.c @@ -147,11 +147,11 @@ switch (key) { case NFT_META_SKUID: - *dest = from_kuid_munged(&init_user_ns, + *dest = from_kuid_munged(sock_net(sk)->user_ns, sock->file->f_cred->fsuid); break; case NFT_META_SKGID: - *dest = from_kgid_munged(&init_user_ns, + *dest = from_kgid_munged(sock_net(sk)->user_ns, sock->file->f_cred->fsgid); break; default: @@ -253,7 +253,7 @@ return false; break; case NFT_META_IIFGROUP: - if (!nft_meta_store_ifgroup(dest, nft_out(pkt))) + if (!nft_meta_store_ifgroup(dest, nft_in(pkt))) return false; break; case NFT_META_OIFGROUP: @@ -724,22 +724,22 @@ switch (priv->key) { case NFT_META_PROTOCOL: - NFT_OFFLOAD_MATCH(FLOW_DISSECTOR_KEY_BASIC, basic, n_proto, - sizeof(__u16), reg); + NFT_OFFLOAD_MATCH_EXACT(FLOW_DISSECTOR_KEY_BASIC, basic, n_proto, + sizeof(__u16), reg); nft_offload_set_dependency(ctx, NFT_OFFLOAD_DEP_NETWORK); break; case NFT_META_L4PROTO: - NFT_OFFLOAD_MATCH(FLOW_DISSECTOR_KEY_BASIC, basic, ip_proto, - sizeof(__u8), reg); + NFT_OFFLOAD_MATCH_EXACT(FLOW_DISSECTOR_KEY_BASIC, basic, ip_proto, + sizeof(__u8), reg); nft_offload_set_dependency(ctx, NFT_OFFLOAD_DEP_TRANSPORT); break; case NFT_META_IIF: - NFT_OFFLOAD_MATCH(FLOW_DISSECTOR_KEY_META, meta, - ingress_ifindex, sizeof(__u32), reg); + NFT_OFFLOAD_MATCH_EXACT(FLOW_DISSECTOR_KEY_META, meta, + ingress_ifindex, sizeof(__u32), reg); break; case NFT_META_IIFTYPE: - NFT_OFFLOAD_MATCH(FLOW_DISSECTOR_KEY_META, meta, - ingress_iftype, sizeof(__u16), reg); + NFT_OFFLOAD_MATCH_EXACT(FLOW_DISSECTOR_KEY_META, meta, + ingress_iftype, sizeof(__u16), reg); break; default: return -EOPNOTSUPP; @@ -801,7 +801,7 @@ #ifdef CONFIG_NETWORK_SECMARK struct nft_secmark { - u32 secid; + struct lsmblob lsmdata; char *ctx; }; @@ -811,21 +811,21 @@ static int nft_secmark_compute_secid(struct nft_secmark *priv) { - u32 tmp_secid = 0; + struct lsmblob blob; int err; - err = security_secctx_to_secid(priv->ctx, strlen(priv->ctx), &tmp_secid); + err = security_secctx_to_secid(priv->ctx, strlen(priv->ctx), &blob); if (err) return err; - if (!tmp_secid) + if (!lsmblob_is_set(&blob)) return -ENOENT; - err = security_secmark_relabel_packet(tmp_secid); + err = security_secmark_relabel_packet(&blob); if (err) return err; - priv->secid = tmp_secid; + priv->lsmdata = blob; return 0; } @@ -835,7 +835,11 @@ const struct nft_secmark *priv = nft_obj_data(obj); struct sk_buff *skb = pkt->skb; - skb->secmark = priv->secid; + /* It is not possible for more than one secid to be set in + * the lsmblob structure because it is set using + * security_secctx_to_secid(). Any secid that is set must therefore + * be the one that should go in the secmark. */ + skb->secmark = lsmblob_value(&priv->lsmdata); } static int nft_secmark_obj_init(const struct nft_ctx *ctx, --- linux-azure-5.8-5.8.0.orig/net/netfilter/nft_payload.c +++ linux-azure-5.8-5.8.0/net/netfilter/nft_payload.c @@ -87,7 +87,9 @@ u32 *dest = ®s->data[priv->dreg]; int offset; - dest[priv->len / NFT_REG32_SIZE] = 0; + if (priv->len % NFT_REG32_SIZE) + dest[priv->len / NFT_REG32_SIZE] = 0; + switch (priv->base) { case NFT_PAYLOAD_LL_HEADER: if (!skb_mac_header_was_set(skb)) @@ -162,6 +164,34 @@ return -1; } +static bool nft_payload_offload_mask(struct nft_offload_reg *reg, + u32 priv_len, u32 field_len) +{ + unsigned int remainder, delta, k; + struct nft_data mask = {}; + __be32 remainder_mask; + + if (priv_len == field_len) { + memset(®->mask, 0xff, priv_len); + return true; + } else if (priv_len > field_len) { + return false; + } + + memset(&mask, 0xff, field_len); + remainder = priv_len % sizeof(u32); + if (remainder) { + k = priv_len / sizeof(u32); + delta = field_len - priv_len; + remainder_mask = htonl(~((1 << (delta * BITS_PER_BYTE)) - 1)); + mask.data[k] = (__force u32)remainder_mask; + } + + memcpy(®->mask, &mask, field_len); + + return true; +} + static int nft_payload_offload_ll(struct nft_offload_ctx *ctx, struct nft_flow_rule *flow, const struct nft_payload *priv) @@ -170,21 +200,21 @@ switch (priv->offset) { case offsetof(struct ethhdr, h_source): - if (priv->len != ETH_ALEN) + if (!nft_payload_offload_mask(reg, priv->len, ETH_ALEN)) return -EOPNOTSUPP; NFT_OFFLOAD_MATCH(FLOW_DISSECTOR_KEY_ETH_ADDRS, eth_addrs, src, ETH_ALEN, reg); break; case offsetof(struct ethhdr, h_dest): - if (priv->len != ETH_ALEN) + if (!nft_payload_offload_mask(reg, priv->len, ETH_ALEN)) return -EOPNOTSUPP; NFT_OFFLOAD_MATCH(FLOW_DISSECTOR_KEY_ETH_ADDRS, eth_addrs, dst, ETH_ALEN, reg); break; case offsetof(struct ethhdr, h_proto): - if (priv->len != sizeof(__be16)) + if (!nft_payload_offload_mask(reg, priv->len, sizeof(__be16))) return -EOPNOTSUPP; NFT_OFFLOAD_MATCH(FLOW_DISSECTOR_KEY_BASIC, basic, @@ -192,14 +222,14 @@ nft_offload_set_dependency(ctx, NFT_OFFLOAD_DEP_NETWORK); break; case offsetof(struct vlan_ethhdr, h_vlan_TCI): - if (priv->len != sizeof(__be16)) + if (!nft_payload_offload_mask(reg, priv->len, sizeof(__be16))) return -EOPNOTSUPP; NFT_OFFLOAD_MATCH(FLOW_DISSECTOR_KEY_VLAN, vlan, vlan_tci, sizeof(__be16), reg); break; case offsetof(struct vlan_ethhdr, h_vlan_encapsulated_proto): - if (priv->len != sizeof(__be16)) + if (!nft_payload_offload_mask(reg, priv->len, sizeof(__be16))) return -EOPNOTSUPP; NFT_OFFLOAD_MATCH(FLOW_DISSECTOR_KEY_VLAN, vlan, @@ -207,7 +237,7 @@ nft_offload_set_dependency(ctx, NFT_OFFLOAD_DEP_NETWORK); break; case offsetof(struct vlan_ethhdr, h_vlan_TCI) + sizeof(struct vlan_hdr): - if (priv->len != sizeof(__be16)) + if (!nft_payload_offload_mask(reg, priv->len, sizeof(__be16))) return -EOPNOTSUPP; NFT_OFFLOAD_MATCH(FLOW_DISSECTOR_KEY_CVLAN, vlan, @@ -215,7 +245,7 @@ break; case offsetof(struct vlan_ethhdr, h_vlan_encapsulated_proto) + sizeof(struct vlan_hdr): - if (priv->len != sizeof(__be16)) + if (!nft_payload_offload_mask(reg, priv->len, sizeof(__be16))) return -EOPNOTSUPP; NFT_OFFLOAD_MATCH(FLOW_DISSECTOR_KEY_CVLAN, vlan, @@ -236,21 +266,25 @@ switch (priv->offset) { case offsetof(struct iphdr, saddr): - if (priv->len != sizeof(struct in_addr)) + if (!nft_payload_offload_mask(reg, priv->len, + sizeof(struct in_addr))) return -EOPNOTSUPP; NFT_OFFLOAD_MATCH(FLOW_DISSECTOR_KEY_IPV4_ADDRS, ipv4, src, sizeof(struct in_addr), reg); + nft_flow_rule_set_addr_type(flow, FLOW_DISSECTOR_KEY_IPV4_ADDRS); break; case offsetof(struct iphdr, daddr): - if (priv->len != sizeof(struct in_addr)) + if (!nft_payload_offload_mask(reg, priv->len, + sizeof(struct in_addr))) return -EOPNOTSUPP; NFT_OFFLOAD_MATCH(FLOW_DISSECTOR_KEY_IPV4_ADDRS, ipv4, dst, sizeof(struct in_addr), reg); + nft_flow_rule_set_addr_type(flow, FLOW_DISSECTOR_KEY_IPV4_ADDRS); break; case offsetof(struct iphdr, protocol): - if (priv->len != sizeof(__u8)) + if (!nft_payload_offload_mask(reg, priv->len, sizeof(__u8))) return -EOPNOTSUPP; NFT_OFFLOAD_MATCH(FLOW_DISSECTOR_KEY_BASIC, basic, ip_proto, @@ -272,21 +306,25 @@ switch (priv->offset) { case offsetof(struct ipv6hdr, saddr): - if (priv->len != sizeof(struct in6_addr)) + if (!nft_payload_offload_mask(reg, priv->len, + sizeof(struct in6_addr))) return -EOPNOTSUPP; NFT_OFFLOAD_MATCH(FLOW_DISSECTOR_KEY_IPV6_ADDRS, ipv6, src, sizeof(struct in6_addr), reg); + nft_flow_rule_set_addr_type(flow, FLOW_DISSECTOR_KEY_IPV6_ADDRS); break; case offsetof(struct ipv6hdr, daddr): - if (priv->len != sizeof(struct in6_addr)) + if (!nft_payload_offload_mask(reg, priv->len, + sizeof(struct in6_addr))) return -EOPNOTSUPP; NFT_OFFLOAD_MATCH(FLOW_DISSECTOR_KEY_IPV6_ADDRS, ipv6, dst, sizeof(struct in6_addr), reg); + nft_flow_rule_set_addr_type(flow, FLOW_DISSECTOR_KEY_IPV6_ADDRS); break; case offsetof(struct ipv6hdr, nexthdr): - if (priv->len != sizeof(__u8)) + if (!nft_payload_offload_mask(reg, priv->len, sizeof(__u8))) return -EOPNOTSUPP; NFT_OFFLOAD_MATCH(FLOW_DISSECTOR_KEY_BASIC, basic, ip_proto, @@ -328,14 +366,14 @@ switch (priv->offset) { case offsetof(struct tcphdr, source): - if (priv->len != sizeof(__be16)) + if (!nft_payload_offload_mask(reg, priv->len, sizeof(__be16))) return -EOPNOTSUPP; NFT_OFFLOAD_MATCH(FLOW_DISSECTOR_KEY_PORTS, tp, src, sizeof(__be16), reg); break; case offsetof(struct tcphdr, dest): - if (priv->len != sizeof(__be16)) + if (!nft_payload_offload_mask(reg, priv->len, sizeof(__be16))) return -EOPNOTSUPP; NFT_OFFLOAD_MATCH(FLOW_DISSECTOR_KEY_PORTS, tp, dst, @@ -356,14 +394,14 @@ switch (priv->offset) { case offsetof(struct udphdr, source): - if (priv->len != sizeof(__be16)) + if (!nft_payload_offload_mask(reg, priv->len, sizeof(__be16))) return -EOPNOTSUPP; NFT_OFFLOAD_MATCH(FLOW_DISSECTOR_KEY_PORTS, tp, src, sizeof(__be16), reg); break; case offsetof(struct udphdr, dest): - if (priv->len != sizeof(__be16)) + if (!nft_payload_offload_mask(reg, priv->len, sizeof(__be16))) return -EOPNOTSUPP; NFT_OFFLOAD_MATCH(FLOW_DISSECTOR_KEY_PORTS, tp, dst, --- linux-azure-5.8-5.8.0.orig/net/netfilter/nft_set_rbtree.c +++ linux-azure-5.8-5.8.0/net/netfilter/nft_set_rbtree.c @@ -218,11 +218,11 @@ struct nft_rbtree_elem *new, struct nft_set_ext **ext) { + bool overlap = false, dup_end_left = false, dup_end_right = false; struct nft_rbtree *priv = nft_set_priv(set); u8 genmask = nft_genmask_next(net); struct nft_rbtree_elem *rbe; struct rb_node *parent, **p; - bool overlap = false; int d; /* Detect overlaps as we descend the tree. Set the flag in these cases: @@ -238,24 +238,44 @@ * * b1. _ _ __>| !_ _ __| (insert end before existing start) * b2. _ _ ___| !_ _ _>| (insert end after existing start) - * b3. _ _ ___! >|_ _ __| (insert start after existing end) + * b3. _ _ ___! >|_ _ __| (insert start after existing end, as a leaf) + * '--' no nodes falling in this range + * b4. >|_ _ ! (insert start before existing start) * * Case a3. resolves to b3.: * - if the inserted start element is the leftmost, because the '0' * element in the tree serves as end element - * - otherwise, if an existing end is found. Note that end elements are - * always inserted after corresponding start elements. + * - otherwise, if an existing end is found immediately to the left. If + * there are existing nodes in between, we need to further descend the + * tree before we can conclude the new start isn't causing an overlap + * + * or to b4., which, preceded by a3., means we already traversed one or + * more existing intervals entirely, from the right. * * For a new, rightmost pair of elements, we'll hit cases b3. and b2., * in that order. * * The flag is also cleared in two special cases: * - * b4. |__ _ _!|<_ _ _ (insert start right before existing end) - * b5. |__ _ >|!__ _ _ (insert end right after existing start) + * b5. |__ _ _!|<_ _ _ (insert start right before existing end) + * b6. |__ _ >|!__ _ _ (insert end right after existing start) * * which always happen as last step and imply that no further * overlapping is possible. + * + * Another special case comes from the fact that start elements matching + * an already existing start element are allowed: insertion is not + * performed but we return -EEXIST in that case, and the error will be + * cleared by the caller if NLM_F_EXCL is not present in the request. + * This way, request for insertion of an exact overlap isn't reported as + * error to userspace if not desired. + * + * However, if the existing start matches a pre-existing start, but the + * end element doesn't match the corresponding pre-existing end element, + * we need to report a partial overlap. This is a local condition that + * can be noticed without need for a tracking flag, by checking for a + * local duplicated end for a corresponding start, from left and right, + * separately. */ parent = NULL; @@ -272,26 +292,41 @@ if (nft_rbtree_interval_start(new)) { if (nft_rbtree_interval_end(rbe) && nft_set_elem_active(&rbe->ext, genmask) && - !nft_set_elem_expired(&rbe->ext)) + !nft_set_elem_expired(&rbe->ext) && !*p) overlap = false; } else { + if (dup_end_left && !*p) + return -ENOTEMPTY; + overlap = nft_rbtree_interval_end(rbe) && nft_set_elem_active(&rbe->ext, genmask) && !nft_set_elem_expired(&rbe->ext); + + if (overlap) { + dup_end_right = true; + continue; + } } } else if (d > 0) { p = &parent->rb_right; if (nft_rbtree_interval_end(new)) { + if (dup_end_right && !*p) + return -ENOTEMPTY; + overlap = nft_rbtree_interval_end(rbe) && nft_set_elem_active(&rbe->ext, genmask) && !nft_set_elem_expired(&rbe->ext); - } else if (nft_rbtree_interval_end(rbe) && - nft_set_elem_active(&rbe->ext, genmask) && + + if (overlap) { + dup_end_left = true; + continue; + } + } else if (nft_set_elem_active(&rbe->ext, genmask) && !nft_set_elem_expired(&rbe->ext)) { - overlap = true; + overlap = nft_rbtree_interval_end(rbe); } } else { if (nft_rbtree_interval_end(rbe) && @@ -316,6 +351,8 @@ p = &parent->rb_left; } } + + dup_end_left = dup_end_right = false; } if (overlap) --- linux-azure-5.8-5.8.0.orig/net/netfilter/utils.c +++ linux-azure-5.8-5.8.0/net/netfilter/utils.c @@ -191,8 +191,8 @@ skb->mark == rt_info->mark && iph->daddr == rt_info->daddr && iph->saddr == rt_info->saddr)) - return ip_route_me_harder(entry->state.net, skb, - RTN_UNSPEC); + return ip_route_me_harder(entry->state.net, entry->state.sk, + skb, RTN_UNSPEC); } #endif return 0; --- linux-azure-5.8-5.8.0.orig/net/netfilter/x_tables.c +++ linux-azure-5.8-5.8.0/net/netfilter/x_tables.c @@ -1387,7 +1387,7 @@ table->private = newinfo; /* make sure all cpus see new ->private value */ - smp_wmb(); + smp_mb(); /* * Even though table entries have now been swapped, other CPU's --- linux-azure-5.8-5.8.0.orig/net/netfilter/xt_RATEEST.c +++ linux-azure-5.8-5.8.0/net/netfilter/xt_RATEEST.c @@ -115,6 +115,9 @@ } cfg; int ret; + if (strnlen(info->name, sizeof(est->name)) >= sizeof(est->name)) + return -ENAMETOOLONG; + net_get_random_once(&jhash_rnd, sizeof(jhash_rnd)); mutex_lock(&xn->hash_lock); --- linux-azure-5.8-5.8.0.orig/net/netfilter/xt_SECMARK.c +++ linux-azure-5.8-5.8.0/net/netfilter/xt_SECMARK.c @@ -43,13 +43,14 @@ static int checkentry_lsm(struct xt_secmark_target_info *info) { + struct lsmblob blob; int err; info->secctx[SECMARK_SECCTX_MAX - 1] = '\0'; info->secid = 0; err = security_secctx_to_secid(info->secctx, strlen(info->secctx), - &info->secid); + &blob); if (err) { if (err == -EINVAL) pr_info_ratelimited("invalid security context \'%s\'\n", @@ -57,13 +58,17 @@ return err; } + /* xt_secmark_target_info can't be changed to use lsmblobs because + * it is exposed as an API. Use lsmblob_value() to get the one + * value that got set by security_secctx_to_secid(). */ + info->secid = lsmblob_value(&blob); if (!info->secid) { pr_info_ratelimited("unable to map security context \'%s\'\n", info->secctx); return -ENOENT; } - err = security_secmark_relabel_packet(info->secid); + err = security_secmark_relabel_packet(&blob); if (err) { pr_info_ratelimited("unable to obtain relabeling permission\n"); return err; --- linux-azure-5.8-5.8.0.orig/net/netfilter/xt_recent.c +++ linux-azure-5.8-5.8.0/net/netfilter/xt_recent.c @@ -152,7 +152,8 @@ /* * Drop entries with timestamps older then 'time'. */ -static void recent_entry_reap(struct recent_table *t, unsigned long time) +static void recent_entry_reap(struct recent_table *t, unsigned long time, + struct recent_entry *working, bool update) { struct recent_entry *e; @@ -162,6 +163,12 @@ e = list_entry(t->lru_list.next, struct recent_entry, lru_list); /* + * Do not reap the entry which are going to be updated. + */ + if (e == working && update) + return; + + /* * The last time stamp is the most recent. */ if (time_after(time, e->stamps[e->index-1])) @@ -303,7 +310,8 @@ /* info->seconds must be non-zero */ if (info->check_set & XT_RECENT_REAP) - recent_entry_reap(t, time); + recent_entry_reap(t, time, e, + info->check_set & XT_RECENT_UPDATE && ret); } if (info->check_set & XT_RECENT_SET || --- linux-azure-5.8-5.8.0.orig/net/netlabel/netlabel_domainhash.c +++ linux-azure-5.8-5.8.0/net/netlabel/netlabel_domainhash.c @@ -85,6 +85,7 @@ kfree(netlbl_domhsh_addr6_entry(iter6)); } #endif /* IPv6 */ + kfree(ptr->def.addrsel); } kfree(ptr->domain); kfree(ptr); @@ -537,6 +538,8 @@ goto add_return; } #endif /* IPv6 */ + /* cleanup the new entry since we've moved everything over */ + netlbl_domhsh_free_entry(&entry->rcu); } else ret_val = -EINVAL; @@ -580,6 +583,12 @@ { int ret_val = 0; struct audit_buffer *audit_buf; + struct netlbl_af4list *iter4; + struct netlbl_domaddr4_map *map4; +#if IS_ENABLED(CONFIG_IPV6) + struct netlbl_af6list *iter6; + struct netlbl_domaddr6_map *map6; +#endif /* IPv6 */ if (entry == NULL) return -ENOENT; @@ -597,6 +606,9 @@ ret_val = -ENOENT; spin_unlock(&netlbl_domhsh_lock); + if (ret_val) + return ret_val; + audit_buf = netlbl_audit_start_common(AUDIT_MAC_MAP_DEL, audit_info); if (audit_buf != NULL) { audit_log_format(audit_buf, @@ -606,40 +618,29 @@ audit_log_end(audit_buf); } - if (ret_val == 0) { - struct netlbl_af4list *iter4; - struct netlbl_domaddr4_map *map4; -#if IS_ENABLED(CONFIG_IPV6) - struct netlbl_af6list *iter6; - struct netlbl_domaddr6_map *map6; -#endif /* IPv6 */ - - switch (entry->def.type) { - case NETLBL_NLTYPE_ADDRSELECT: - netlbl_af4list_foreach_rcu(iter4, - &entry->def.addrsel->list4) { - map4 = netlbl_domhsh_addr4_entry(iter4); - cipso_v4_doi_putdef(map4->def.cipso); - } + switch (entry->def.type) { + case NETLBL_NLTYPE_ADDRSELECT: + netlbl_af4list_foreach_rcu(iter4, &entry->def.addrsel->list4) { + map4 = netlbl_domhsh_addr4_entry(iter4); + cipso_v4_doi_putdef(map4->def.cipso); + } #if IS_ENABLED(CONFIG_IPV6) - netlbl_af6list_foreach_rcu(iter6, - &entry->def.addrsel->list6) { - map6 = netlbl_domhsh_addr6_entry(iter6); - calipso_doi_putdef(map6->def.calipso); - } + netlbl_af6list_foreach_rcu(iter6, &entry->def.addrsel->list6) { + map6 = netlbl_domhsh_addr6_entry(iter6); + calipso_doi_putdef(map6->def.calipso); + } #endif /* IPv6 */ - break; - case NETLBL_NLTYPE_CIPSOV4: - cipso_v4_doi_putdef(entry->def.cipso); - break; + break; + case NETLBL_NLTYPE_CIPSOV4: + cipso_v4_doi_putdef(entry->def.cipso); + break; #if IS_ENABLED(CONFIG_IPV6) - case NETLBL_NLTYPE_CALIPSO: - calipso_doi_putdef(entry->def.calipso); - break; + case NETLBL_NLTYPE_CALIPSO: + calipso_doi_putdef(entry->def.calipso); + break; #endif /* IPv6 */ - } - call_rcu(&entry->rcu, netlbl_domhsh_free_entry); } + call_rcu(&entry->rcu, netlbl_domhsh_free_entry); return ret_val; } --- linux-azure-5.8-5.8.0.orig/net/netlabel/netlabel_kapi.c +++ linux-azure-5.8-5.8.0/net/netlabel/netlabel_kapi.c @@ -196,7 +196,7 @@ * @addr: IP address in network byte order (struct in[6]_addr) * @mask: address mask in network byte order (struct in[6]_addr) * @family: address family - * @secid: LSM secid value for the entry + * @lsmblob: LSM data value for the entry * @audit_info: NetLabel audit information * * Description: @@ -210,7 +210,7 @@ const void *addr, const void *mask, u16 family, - u32 secid, + struct lsmblob *lsmblob, struct netlbl_audit *audit_info) { u32 addr_len; @@ -230,7 +230,7 @@ return netlbl_unlhsh_add(net, dev_name, addr, mask, addr_len, - secid, audit_info); + lsmblob, audit_info); } /** --- linux-azure-5.8-5.8.0.orig/net/netlabel/netlabel_unlabeled.c +++ linux-azure-5.8-5.8.0/net/netlabel/netlabel_unlabeled.c @@ -66,7 +66,7 @@ #define netlbl_unlhsh_addr4_entry(iter) \ container_of(iter, struct netlbl_unlhsh_addr4, list) struct netlbl_unlhsh_addr4 { - u32 secid; + struct lsmblob lsmblob; struct netlbl_af4list list; struct rcu_head rcu; @@ -74,7 +74,7 @@ #define netlbl_unlhsh_addr6_entry(iter) \ container_of(iter, struct netlbl_unlhsh_addr6, list) struct netlbl_unlhsh_addr6 { - u32 secid; + struct lsmblob lsmblob; struct netlbl_af6list list; struct rcu_head rcu; @@ -220,7 +220,7 @@ * @iface: the associated interface entry * @addr: IPv4 address in network byte order * @mask: IPv4 address mask in network byte order - * @secid: LSM secid value for entry + * @lsmblob: LSM data value for entry * * Description: * Add a new address entry into the unlabeled connection hash table using the @@ -231,7 +231,7 @@ static int netlbl_unlhsh_add_addr4(struct netlbl_unlhsh_iface *iface, const struct in_addr *addr, const struct in_addr *mask, - u32 secid) + struct lsmblob *lsmblob) { int ret_val; struct netlbl_unlhsh_addr4 *entry; @@ -243,7 +243,7 @@ entry->list.addr = addr->s_addr & mask->s_addr; entry->list.mask = mask->s_addr; entry->list.valid = 1; - entry->secid = secid; + entry->lsmblob = *lsmblob; spin_lock(&netlbl_unlhsh_lock); ret_val = netlbl_af4list_add(&entry->list, &iface->addr4_list); @@ -260,7 +260,7 @@ * @iface: the associated interface entry * @addr: IPv6 address in network byte order * @mask: IPv6 address mask in network byte order - * @secid: LSM secid value for entry + * @lsmblob: LSM data value for entry * * Description: * Add a new address entry into the unlabeled connection hash table using the @@ -271,7 +271,7 @@ static int netlbl_unlhsh_add_addr6(struct netlbl_unlhsh_iface *iface, const struct in6_addr *addr, const struct in6_addr *mask, - u32 secid) + struct lsmblob *lsmblob) { int ret_val; struct netlbl_unlhsh_addr6 *entry; @@ -287,7 +287,7 @@ entry->list.addr.s6_addr32[3] &= mask->s6_addr32[3]; entry->list.mask = *mask; entry->list.valid = 1; - entry->secid = secid; + entry->lsmblob = *lsmblob; spin_lock(&netlbl_unlhsh_lock); ret_val = netlbl_af6list_add(&entry->list, &iface->addr6_list); @@ -366,7 +366,7 @@ const void *addr, const void *mask, u32 addr_len, - u32 secid, + struct lsmblob *lsmblob, struct netlbl_audit *audit_info) { int ret_val; @@ -374,8 +374,7 @@ struct net_device *dev; struct netlbl_unlhsh_iface *iface; struct audit_buffer *audit_buf = NULL; - char *secctx = NULL; - u32 secctx_len; + struct lsmcontext context; if (addr_len != sizeof(struct in_addr) && addr_len != sizeof(struct in6_addr)) @@ -408,7 +407,7 @@ const struct in_addr *addr4 = addr; const struct in_addr *mask4 = mask; - ret_val = netlbl_unlhsh_add_addr4(iface, addr4, mask4, secid); + ret_val = netlbl_unlhsh_add_addr4(iface, addr4, mask4, lsmblob); if (audit_buf != NULL) netlbl_af4list_audit_addr(audit_buf, 1, dev_name, @@ -421,7 +420,7 @@ const struct in6_addr *addr6 = addr; const struct in6_addr *mask6 = mask; - ret_val = netlbl_unlhsh_add_addr6(iface, addr6, mask6, secid); + ret_val = netlbl_unlhsh_add_addr6(iface, addr6, mask6, lsmblob); if (audit_buf != NULL) netlbl_af6list_audit_addr(audit_buf, 1, dev_name, @@ -438,11 +437,11 @@ unlhsh_add_return: rcu_read_unlock(); if (audit_buf != NULL) { - if (security_secid_to_secctx(secid, - &secctx, - &secctx_len) == 0) { - audit_log_format(audit_buf, " sec_obj=%s", secctx); - security_release_secctx(secctx, secctx_len); + if (security_secid_to_secctx(lsmblob, &context, + LSMBLOB_FIRST) == 0) { + audit_log_format(audit_buf, " sec_obj=%s", + context.context); + security_release_secctx(&context); } audit_log_format(audit_buf, " res=%u", ret_val == 0 ? 1 : 0); audit_log_end(audit_buf); @@ -473,8 +472,7 @@ struct netlbl_unlhsh_addr4 *entry; struct audit_buffer *audit_buf; struct net_device *dev; - char *secctx; - u32 secctx_len; + struct lsmcontext context; spin_lock(&netlbl_unlhsh_lock); list_entry = netlbl_af4list_remove(addr->s_addr, mask->s_addr, @@ -495,10 +493,11 @@ if (dev != NULL) dev_put(dev); if (entry != NULL && - security_secid_to_secctx(entry->secid, - &secctx, &secctx_len) == 0) { - audit_log_format(audit_buf, " sec_obj=%s", secctx); - security_release_secctx(secctx, secctx_len); + security_secid_to_secctx(&entry->lsmblob, &context, + LSMBLOB_FIRST) == 0) { + audit_log_format(audit_buf, " sec_obj=%s", + context.context); + security_release_secctx(&context); } audit_log_format(audit_buf, " res=%u", entry != NULL ? 1 : 0); audit_log_end(audit_buf); @@ -535,8 +534,7 @@ struct netlbl_unlhsh_addr6 *entry; struct audit_buffer *audit_buf; struct net_device *dev; - char *secctx; - u32 secctx_len; + struct lsmcontext context; spin_lock(&netlbl_unlhsh_lock); list_entry = netlbl_af6list_remove(addr, mask, &iface->addr6_list); @@ -556,10 +554,11 @@ if (dev != NULL) dev_put(dev); if (entry != NULL && - security_secid_to_secctx(entry->secid, - &secctx, &secctx_len) == 0) { - audit_log_format(audit_buf, " sec_obj=%s", secctx); - security_release_secctx(secctx, secctx_len); + security_secid_to_secctx(&entry->lsmblob, &context, + LSMBLOB_FIRST) == 0) { + audit_log_format(audit_buf, " sec_obj=%s", + context.context); + security_release_secctx(&context); } audit_log_format(audit_buf, " res=%u", entry != NULL ? 1 : 0); audit_log_end(audit_buf); @@ -882,7 +881,7 @@ void *addr; void *mask; u32 addr_len; - u32 secid; + struct lsmblob blob; struct netlbl_audit audit_info; /* Don't allow users to add both IPv4 and IPv6 addresses for a @@ -906,13 +905,12 @@ ret_val = security_secctx_to_secid( nla_data(info->attrs[NLBL_UNLABEL_A_SECCTX]), nla_len(info->attrs[NLBL_UNLABEL_A_SECCTX]), - &secid); + &blob); if (ret_val != 0) return ret_val; - return netlbl_unlhsh_add(&init_net, - dev_name, addr, mask, addr_len, secid, - &audit_info); + return netlbl_unlhsh_add(&init_net, dev_name, addr, mask, addr_len, + &blob, &audit_info); } /** @@ -933,7 +931,7 @@ void *addr; void *mask; u32 addr_len; - u32 secid; + struct lsmblob blob; struct netlbl_audit audit_info; /* Don't allow users to add both IPv4 and IPv6 addresses for a @@ -955,12 +953,11 @@ ret_val = security_secctx_to_secid( nla_data(info->attrs[NLBL_UNLABEL_A_SECCTX]), nla_len(info->attrs[NLBL_UNLABEL_A_SECCTX]), - &secid); + &blob); if (ret_val != 0) return ret_val; - return netlbl_unlhsh_add(&init_net, - NULL, addr, mask, addr_len, secid, + return netlbl_unlhsh_add(&init_net, NULL, addr, mask, addr_len, &blob, &audit_info); } @@ -1071,10 +1068,9 @@ int ret_val = -ENOMEM; struct netlbl_unlhsh_walk_arg *cb_arg = arg; struct net_device *dev; + struct lsmcontext context; void *data; - u32 secid; - char *secctx; - u32 secctx_len; + struct lsmblob *lsmb; data = genlmsg_put(cb_arg->skb, NETLINK_CB(cb_arg->nl_cb->skb).portid, cb_arg->seq, &netlbl_unlabel_gnl_family, @@ -1112,7 +1108,7 @@ if (ret_val != 0) goto list_cb_failure; - secid = addr4->secid; + lsmb = (struct lsmblob *)&addr4->lsmblob; } else { ret_val = nla_put_in6_addr(cb_arg->skb, NLBL_UNLABEL_A_IPV6ADDR, @@ -1126,17 +1122,17 @@ if (ret_val != 0) goto list_cb_failure; - secid = addr6->secid; + lsmb = (struct lsmblob *)&addr6->lsmblob; } - ret_val = security_secid_to_secctx(secid, &secctx, &secctx_len); + ret_val = security_secid_to_secctx(lsmb, &context, LSMBLOB_FIRST); if (ret_val != 0) goto list_cb_failure; ret_val = nla_put(cb_arg->skb, NLBL_UNLABEL_A_SECCTX, - secctx_len, - secctx); - security_release_secctx(secctx, secctx_len); + context.len, + context.context); + security_release_secctx(&context); if (ret_val != 0) goto list_cb_failure; @@ -1166,12 +1162,13 @@ struct netlbl_unlhsh_walk_arg cb_arg; u32 skip_bkt = cb->args[0]; u32 skip_chain = cb->args[1]; - u32 iter_bkt; - u32 iter_chain = 0, iter_addr4 = 0, iter_addr6 = 0; + u32 skip_addr4 = cb->args[2]; + u32 iter_bkt, iter_chain = 0, iter_addr4 = 0, iter_addr6 = 0; struct netlbl_unlhsh_iface *iface; struct list_head *iter_list; struct netlbl_af4list *addr4; #if IS_ENABLED(CONFIG_IPV6) + u32 skip_addr6 = cb->args[3]; struct netlbl_af6list *addr6; #endif @@ -1182,7 +1179,7 @@ rcu_read_lock(); for (iter_bkt = skip_bkt; iter_bkt < rcu_dereference(netlbl_unlhsh)->size; - iter_bkt++, iter_chain = 0, iter_addr4 = 0, iter_addr6 = 0) { + iter_bkt++) { iter_list = &rcu_dereference(netlbl_unlhsh)->tbl[iter_bkt]; list_for_each_entry_rcu(iface, iter_list, list) { if (!iface->valid || @@ -1190,7 +1187,7 @@ continue; netlbl_af4list_foreach_rcu(addr4, &iface->addr4_list) { - if (iter_addr4++ < cb->args[2]) + if (iter_addr4++ < skip_addr4) continue; if (netlbl_unlabel_staticlist_gen( NLBL_UNLABEL_C_STATICLIST, @@ -1203,10 +1200,12 @@ goto unlabel_staticlist_return; } } + iter_addr4 = 0; + skip_addr4 = 0; #if IS_ENABLED(CONFIG_IPV6) netlbl_af6list_foreach_rcu(addr6, &iface->addr6_list) { - if (iter_addr6++ < cb->args[3]) + if (iter_addr6++ < skip_addr6) continue; if (netlbl_unlabel_staticlist_gen( NLBL_UNLABEL_C_STATICLIST, @@ -1219,8 +1218,12 @@ goto unlabel_staticlist_return; } } + iter_addr6 = 0; + skip_addr6 = 0; #endif /* IPv6 */ } + iter_chain = 0; + skip_chain = 0; } unlabel_staticlist_return: @@ -1481,7 +1484,7 @@ &iface->addr4_list); if (addr4 == NULL) goto unlabel_getattr_nolabel; - secattr->attr.secid = netlbl_unlhsh_addr4_entry(addr4)->secid; + secattr->attr.lsmblob = netlbl_unlhsh_addr4_entry(addr4)->lsmblob; break; } #if IS_ENABLED(CONFIG_IPV6) @@ -1494,7 +1497,7 @@ &iface->addr6_list); if (addr6 == NULL) goto unlabel_getattr_nolabel; - secattr->attr.secid = netlbl_unlhsh_addr6_entry(addr6)->secid; + secattr->attr.lsmblob = netlbl_unlhsh_addr6_entry(addr6)->lsmblob; break; } #endif /* IPv6 */ @@ -1532,7 +1535,7 @@ /* Only the kernel is allowed to call this function and the only time * it is called is at bootup before the audit subsystem is reporting * messages so don't worry to much about these values. */ - security_task_getsecid(current, &audit_info.secid); + security_task_getsecid(current, &audit_info.lsmdata); audit_info.loginuid = GLOBAL_ROOT_UID; audit_info.sessionid = 0; --- linux-azure-5.8-5.8.0.orig/net/netlabel/netlabel_unlabeled.h +++ linux-azure-5.8-5.8.0/net/netlabel/netlabel_unlabeled.h @@ -211,7 +211,7 @@ const void *addr, const void *mask, u32 addr_len, - u32 secid, + struct lsmblob *lsmblob, struct netlbl_audit *audit_info); int netlbl_unlhsh_remove(struct net *net, const char *dev_name, --- linux-azure-5.8-5.8.0.orig/net/netlabel/netlabel_user.c +++ linux-azure-5.8-5.8.0/net/netlabel/netlabel_user.c @@ -84,12 +84,12 @@ struct netlbl_audit *audit_info) { struct audit_buffer *audit_buf; - char *secctx; - u32 secctx_len; if (audit_enabled == AUDIT_OFF) return NULL; + audit_stamp_context(audit_context()); + audit_buf = audit_log_start(audit_context(), GFP_ATOMIC, type); if (audit_buf == NULL) return NULL; @@ -98,13 +98,8 @@ from_kuid(&init_user_ns, audit_info->loginuid), audit_info->sessionid); - if (audit_info->secid != 0 && - security_secid_to_secctx(audit_info->secid, - &secctx, - &secctx_len) == 0) { - audit_log_format(audit_buf, " subj=%s", secctx); - security_release_secctx(secctx, secctx_len); - } + audit_log_task_context(audit_buf, &audit_info->lsmdata); + audit_log_lsm(&audit_info->lsmdata, false); return audit_buf; } --- linux-azure-5.8-5.8.0.orig/net/netlabel/netlabel_user.h +++ linux-azure-5.8-5.8.0/net/netlabel/netlabel_user.h @@ -34,7 +34,7 @@ static inline void netlbl_netlink_auditinfo(struct sk_buff *skb, struct netlbl_audit *audit_info) { - security_task_getsecid(current, &audit_info->secid); + security_task_getsecid(current, &audit_info->lsmdata); audit_info->loginuid = audit_get_loginuid(current); audit_info->sessionid = audit_get_sessionid(current); } --- linux-azure-5.8-5.8.0.orig/net/netlink/genetlink.c +++ linux-azure-5.8-5.8.0/net/netlink/genetlink.c @@ -1079,7 +1079,7 @@ if (err) return err; - while (netlink_policy_dump_loop(&cb->args[1])) { + while (netlink_policy_dump_loop(cb->args[1])) { void *hdr; struct nlattr *nest; @@ -1113,6 +1113,12 @@ return skb->len; } +static int ctrl_dumppolicy_done(struct netlink_callback *cb) +{ + netlink_policy_dump_free(cb->args[1]); + return 0; +} + static const struct genl_ops genl_ctrl_ops[] = { { .cmd = CTRL_CMD_GETFAMILY, @@ -1123,6 +1129,7 @@ { .cmd = CTRL_CMD_GETPOLICY, .dumpit = ctrl_dumppolicy, + .done = ctrl_dumppolicy_done, }, }; --- linux-azure-5.8-5.8.0.orig/net/netlink/policy.c +++ linux-azure-5.8-5.8.0/net/netlink/policy.c @@ -51,6 +51,9 @@ if (!state) return -ENOMEM; + memset(&state->policies[state->n_alloc], 0, + flex_array_size(state, policies, n_alloc - state->n_alloc)); + state->policies[state->n_alloc].policy = policy; state->policies[state->n_alloc].maxtype = maxtype; state->n_alloc = n_alloc; @@ -81,7 +84,6 @@ unsigned int policy_idx; int err; - /* also returns 0 if "*_state" is our ERR_PTR() end marker */ if (*_state) return 0; @@ -137,21 +139,11 @@ !state->policies[state->policy_idx].policy; } -bool netlink_policy_dump_loop(unsigned long *_state) +bool netlink_policy_dump_loop(unsigned long _state) { - struct nl_policy_dump *state = (void *)*_state; - - if (IS_ERR(state)) - return false; - - if (netlink_policy_dump_finished(state)) { - kfree(state); - /* store end marker instead of freed state */ - *_state = (unsigned long)ERR_PTR(-ENOENT); - return false; - } + struct nl_policy_dump *state = (void *)_state; - return true; + return !netlink_policy_dump_finished(state); } int netlink_policy_dump_write(struct sk_buff *skb, unsigned long _state) @@ -306,3 +298,10 @@ nla_nest_cancel(skb, policy); return -ENOBUFS; } + +void netlink_policy_dump_free(unsigned long _state) +{ + struct nl_policy_dump *state = (void *)_state; + + kfree(state); +} --- linux-azure-5.8-5.8.0.orig/net/nfc/nci/uart.c +++ linux-azure-5.8-5.8.0/net/nfc/nci/uart.c @@ -292,7 +292,8 @@ /* We don't provide read/write/poll interface for user space. */ static ssize_t nci_uart_tty_read(struct tty_struct *tty, struct file *file, - unsigned char __user *buf, size_t nr) + unsigned char *buf, size_t nr, + void **cookie, unsigned long offset) { return 0; } --- linux-azure-5.8-5.8.0.orig/net/nfc/netlink.c +++ linux-azure-5.8-5.8.0/net/nfc/netlink.c @@ -852,6 +852,7 @@ if (!dev->polling) { device_unlock(&dev->dev); + nfc_put_device(dev); return -EINVAL; } @@ -1217,7 +1218,7 @@ u32 idx; char firmware_name[NFC_FIRMWARE_NAME_MAXSIZE + 1]; - if (!info->attrs[NFC_ATTR_DEVICE_INDEX]) + if (!info->attrs[NFC_ATTR_DEVICE_INDEX] || !info->attrs[NFC_ATTR_FIRMWARE_NAME]) return -EINVAL; idx = nla_get_u32(info->attrs[NFC_ATTR_DEVICE_INDEX]); --- linux-azure-5.8-5.8.0.orig/net/nfc/rawsock.c +++ linux-azure-5.8-5.8.0/net/nfc/rawsock.c @@ -105,7 +105,7 @@ if (addr->target_idx > dev->target_next_idx - 1 || addr->target_idx < dev->target_next_idx - dev->n_targets) { rc = -EINVAL; - goto error; + goto put_dev; } rc = nfc_activate_target(dev, addr->target_idx, addr->nfc_protocol); @@ -332,10 +332,13 @@ if ((sock->type != SOCK_SEQPACKET) && (sock->type != SOCK_RAW)) return -ESOCKTNOSUPPORT; - if (sock->type == SOCK_RAW) + if (sock->type == SOCK_RAW) { + if (!capable(CAP_NET_RAW)) + return -EPERM; sock->ops = &rawsock_raw_ops; - else + } else { sock->ops = &rawsock_ops; + } sk = sk_alloc(net, PF_NFC, GFP_ATOMIC, nfc_proto->proto, kern); if (!sk) --- linux-azure-5.8-5.8.0.orig/net/openvswitch/actions.c +++ linux-azure-5.8-5.8.0/net/openvswitch/actions.c @@ -200,6 +200,9 @@ __be32 lse; int err; + if (!pskb_may_pull(skb, skb_network_offset(skb) + MPLS_HLEN)) + return -ENOMEM; + stack = mpls_hdr(skb); lse = OVS_MASKED(stack->label_stack_entry, *mpls_lse, *mask); err = skb_mpls_update_lse(skb, lse); @@ -968,17 +971,13 @@ struct sw_flow_key *key, const struct nlattr *attr, bool last) { - /* The first action is always 'OVS_DEC_TTL_ATTR_ARG'. */ - struct nlattr *dec_ttl_arg = nla_data(attr); - int rem = nla_len(attr); + /* The first attribute is always 'OVS_DEC_TTL_ATTR_ACTION'. */ + struct nlattr *actions = nla_data(attr); - if (nla_len(dec_ttl_arg)) { - struct nlattr *actions = nla_next(dec_ttl_arg, &rem); + if (nla_len(actions)) + return clone_execute(dp, skb, key, 0, nla_data(actions), + nla_len(actions), last, false); - if (actions) - return clone_execute(dp, skb, key, 0, actions, rem, - last, false); - } consume_skb(skb); return 0; } @@ -1222,7 +1221,7 @@ return -EHOSTUNREACH; key->ip.ttl = --nh->hop_limit; - } else { + } else if (skb->protocol == htons(ETH_P_IP)) { struct iphdr *nh; u8 old_ttl; --- linux-azure-5.8-5.8.0.orig/net/openvswitch/conntrack.c +++ linux-azure-5.8-5.8.0/net/openvswitch/conntrack.c @@ -903,15 +903,19 @@ } err = ovs_ct_nat_execute(skb, ct, ctinfo, &info->range, maniptype); - if (err == NF_ACCEPT && - ct->status & IPS_SRC_NAT && ct->status & IPS_DST_NAT) { - if (maniptype == NF_NAT_MANIP_SRC) - maniptype = NF_NAT_MANIP_DST; - else - maniptype = NF_NAT_MANIP_SRC; + if (err == NF_ACCEPT && ct->status & IPS_DST_NAT) { + if (ct->status & IPS_SRC_NAT) { + if (maniptype == NF_NAT_MANIP_SRC) + maniptype = NF_NAT_MANIP_DST; + else + maniptype = NF_NAT_MANIP_SRC; - err = ovs_ct_nat_execute(skb, ct, ctinfo, &info->range, - maniptype); + err = ovs_ct_nat_execute(skb, ct, ctinfo, &info->range, + maniptype); + } else if (CTINFO2DIR(ctinfo) == IP_CT_DIR_ORIGINAL) { + err = ovs_ct_nat_execute(skb, ct, ctinfo, NULL, + NF_NAT_MANIP_SRC); + } } /* Mark NAT done if successful and update the flow key. */ --- linux-azure-5.8-5.8.0.orig/net/openvswitch/datapath.c +++ linux-azure-5.8-5.8.0/net/openvswitch/datapath.c @@ -1736,6 +1736,7 @@ /* Called with ovs_mutex. */ static void __dp_destroy(struct datapath *dp) { + struct flow_table *table = &dp->table; int i; for (i = 0; i < DP_VPORT_HASH_BUCKETS; i++) { @@ -1754,7 +1755,14 @@ */ ovs_dp_detach_port(ovs_vport_ovsl(dp, OVSP_LOCAL)); - /* RCU destroy the flow table */ + /* Flush sw_flow in the tables. RCU cb only releases resource + * such as dp, ports and tables. That may avoid some issues + * such as RCU usage warning. + */ + table_instance_flow_flush(table, ovsl_dereference(table->ti), + ovsl_dereference(table->ufid_ti)); + + /* RCU destroy the ports, meters and flow tables. */ call_rcu(&dp->rcu, destroy_dp_rcu); } --- linux-azure-5.8-5.8.0.orig/net/openvswitch/flow_netlink.c +++ linux-azure-5.8-5.8.0/net/openvswitch/flow_netlink.c @@ -2503,28 +2503,42 @@ __be16 eth_type, __be16 vlan_tci, u32 mpls_label_count, bool log) { - int start, err; - u32 nested = true; + const struct nlattr *attrs[OVS_DEC_TTL_ATTR_MAX + 1]; + int start, action_start, err, rem; + const struct nlattr *a, *actions; + + memset(attrs, 0, sizeof(attrs)); + nla_for_each_nested(a, attr, rem) { + int type = nla_type(a); + + /* Ignore unknown attributes to be future proof. */ + if (type > OVS_DEC_TTL_ATTR_MAX) + continue; - if (!nla_len(attr)) - return ovs_nla_add_action(sfa, OVS_ACTION_ATTR_DEC_TTL, - NULL, 0, log); + if (!type || attrs[type]) + return -EINVAL; + + attrs[type] = a; + } + + actions = attrs[OVS_DEC_TTL_ATTR_ACTION]; + if (rem || !actions || (nla_len(actions) && nla_len(actions) < NLA_HDRLEN)) + return -EINVAL; start = add_nested_action_start(sfa, OVS_ACTION_ATTR_DEC_TTL, log); if (start < 0) return start; - err = ovs_nla_add_action(sfa, OVS_DEC_TTL_ATTR_ACTION, &nested, - sizeof(nested), log); - - if (err) - return err; + action_start = add_nested_action_start(sfa, OVS_DEC_TTL_ATTR_ACTION, log); + if (action_start < 0) + return start; - err = __ovs_nla_copy_actions(net, attr, key, sfa, eth_type, + err = __ovs_nla_copy_actions(net, actions, key, sfa, eth_type, vlan_tci, mpls_label_count, log); if (err) return err; + add_nested_action_end(*sfa, action_start); add_nested_action_end(*sfa, start); return 0; } @@ -3487,20 +3501,42 @@ static int dec_ttl_action_to_attr(const struct nlattr *attr, struct sk_buff *skb) { - int err = 0, rem = nla_len(attr); - struct nlattr *start; + struct nlattr *start, *action_start; + const struct nlattr *a; + int err = 0, rem; start = nla_nest_start_noflag(skb, OVS_ACTION_ATTR_DEC_TTL); - if (!start) return -EMSGSIZE; - err = ovs_nla_put_actions(nla_data(attr), rem, skb); - if (err) - nla_nest_cancel(skb, start); - else - nla_nest_end(skb, start); + nla_for_each_attr(a, nla_data(attr), nla_len(attr), rem) { + switch (nla_type(a)) { + case OVS_DEC_TTL_ATTR_ACTION: + + action_start = nla_nest_start_noflag(skb, OVS_DEC_TTL_ATTR_ACTION); + if (!action_start) { + err = -EMSGSIZE; + goto out; + } + err = ovs_nla_put_actions(nla_data(a), nla_len(a), skb); + if (err) + goto out; + + nla_nest_end(skb, action_start); + break; + + default: + /* Ignore all other option to be future compatible */ + break; + } + } + + nla_nest_end(skb, start); + return 0; + +out: + nla_nest_cancel(skb, start); return err; } --- linux-azure-5.8-5.8.0.orig/net/openvswitch/flow_table.c +++ linux-azure-5.8-5.8.0/net/openvswitch/flow_table.c @@ -345,19 +345,15 @@ flow_mask_remove(table, flow->mask); } -static void table_instance_destroy(struct flow_table *table, - struct table_instance *ti, - struct table_instance *ufid_ti, - bool deferred) +/* Must be called with OVS mutex held. */ +void table_instance_flow_flush(struct flow_table *table, + struct table_instance *ti, + struct table_instance *ufid_ti) { int i; - if (!ti) - return; - - BUG_ON(!ufid_ti); if (ti->keep_flows) - goto skip_flows; + return; for (i = 0; i < ti->n_buckets; i++) { struct sw_flow *flow; @@ -369,18 +365,16 @@ table_instance_flow_free(table, ti, ufid_ti, flow, false); - ovs_flow_free(flow, deferred); + ovs_flow_free(flow, true); } } +} -skip_flows: - if (deferred) { - call_rcu(&ti->rcu, flow_tbl_destroy_rcu_cb); - call_rcu(&ufid_ti->rcu, flow_tbl_destroy_rcu_cb); - } else { - __table_instance_destroy(ti); - __table_instance_destroy(ufid_ti); - } +static void table_instance_destroy(struct table_instance *ti, + struct table_instance *ufid_ti) +{ + call_rcu(&ti->rcu, flow_tbl_destroy_rcu_cb); + call_rcu(&ufid_ti->rcu, flow_tbl_destroy_rcu_cb); } /* No need for locking this function is called from RCU callback or @@ -393,7 +387,7 @@ free_percpu(table->mask_cache); kfree_rcu(rcu_dereference_raw(table->mask_array), rcu); - table_instance_destroy(table, ti, ufid_ti, false); + table_instance_destroy(ti, ufid_ti); } struct sw_flow *ovs_flow_tbl_dump_next(struct table_instance *ti, @@ -511,7 +505,8 @@ flow_table->count = 0; flow_table->ufid_count = 0; - table_instance_destroy(flow_table, old_ti, old_ufid_ti, true); + table_instance_flow_flush(flow_table, old_ti, old_ufid_ti); + table_instance_destroy(old_ti, old_ufid_ti); return 0; err_free_ti: --- linux-azure-5.8-5.8.0.orig/net/openvswitch/flow_table.h +++ linux-azure-5.8-5.8.0/net/openvswitch/flow_table.h @@ -86,4 +86,7 @@ void ovs_flow_mask_key(struct sw_flow_key *dst, const struct sw_flow_key *src, bool full, const struct sw_flow_mask *mask); +void table_instance_flow_flush(struct flow_table *table, + struct table_instance *ti, + struct table_instance *ufid_ti); #endif /* flow_table.h */ --- linux-azure-5.8-5.8.0.orig/net/packet/af_packet.c +++ linux-azure-5.8-5.8.0/net/packet/af_packet.c @@ -93,38 +93,42 @@ /* Assumptions: - - if device has no dev->hard_header routine, it adds and removes ll header - inside itself. In this case ll header is invisible outside of device, - but higher levels still should reserve dev->hard_header_len. - Some devices are enough clever to reallocate skb, when header - will not fit to reserved space (tunnel), another ones are silly - (PPP). + - If the device has no dev->header_ops->create, there is no LL header + visible above the device. In this case, its hard_header_len should be 0. + The device may prepend its own header internally. In this case, its + needed_headroom should be set to the space needed for it to add its + internal header. + For example, a WiFi driver pretending to be an Ethernet driver should + set its hard_header_len to be the Ethernet header length, and set its + needed_headroom to be (the real WiFi header length - the fake Ethernet + header length). - packet socket receives packets with pulled ll header, so that SOCK_RAW should push it back. On receive: ----------- -Incoming, dev->hard_header!=NULL +Incoming, dev_has_header(dev) == true mac_header -> ll header data -> data -Outgoing, dev->hard_header!=NULL +Outgoing, dev_has_header(dev) == true mac_header -> ll header data -> ll header -Incoming, dev->hard_header==NULL - mac_header -> UNKNOWN position. It is very likely, that it points to ll - header. PPP makes it, that is wrong, because introduce - assymetry between rx and tx paths. +Incoming, dev_has_header(dev) == false + mac_header -> data + However drivers often make it point to the ll header. + This is incorrect because the ll header should be invisible to us. data -> data -Outgoing, dev->hard_header==NULL - mac_header -> data. ll header is still not built! +Outgoing, dev_has_header(dev) == false + mac_header -> data. ll header is invisible to us. data -> data Resume - If dev->hard_header==NULL we are unlikely to restore sensible ll header. + If dev_has_header(dev) == false we are unable to restore the ll header, + because it is invisible to us. On transmit: @@ -942,6 +946,7 @@ } static void prb_clear_blk_fill_status(struct packet_ring_buffer *rb) + __releases(&pkc->blk_fill_in_prog_lock) { struct tpacket_kbdq_core *pkc = GET_PBDQC_FROM_RB(rb); atomic_dec(&pkc->blk_fill_in_prog); @@ -989,6 +994,7 @@ struct tpacket_kbdq_core *pkc, struct tpacket_block_desc *pbd, unsigned int len) + __acquires(&pkc->blk_fill_in_prog_lock) { struct tpacket3_hdr *ppd; @@ -2064,7 +2070,7 @@ skb->dev = dev; - if (dev->header_ops) { + if (dev_has_header(dev)) { /* The device has an explicit notion of ll header, * exported to higher levels. * @@ -2168,7 +2174,8 @@ int skb_len = skb->len; unsigned int snaplen, res; unsigned long status = TP_STATUS_USER; - unsigned short macoff, netoff, hdrlen; + unsigned short macoff, hdrlen; + unsigned int netoff; struct sk_buff *copy_skb = NULL; struct timespec64 ts; __u32 ts_status; @@ -2192,7 +2199,7 @@ if (!net_eq(dev_net(dev), sock_net(sk))) goto drop; - if (dev->header_ops) { + if (dev_has_header(dev)) { if (sk->sk_type != SOCK_DGRAM) skb_push(skb, skb->data - skb_mac_header(skb)); else if (skb->pkt_type == PACKET_OUTGOING) { @@ -2237,6 +2244,10 @@ } macoff = netoff - maclen; } + if (netoff > USHRT_MAX) { + atomic_inc(&po->tp_drops); + goto drop_n_restore; + } if (po->tp_version <= TPACKET_V2) { if (macoff + snaplen > po->rx_ring.frame_size) { if (po->copy_thresh && @@ -2286,8 +2297,11 @@ if (do_vnet && virtio_net_hdr_from_skb(skb, h.raw + macoff - sizeof(struct virtio_net_hdr), - vio_le(), true, 0)) + vio_le(), true, 0)) { + if (po->tp_version == TPACKET_V3) + prb_clear_blk_fill_status(&po->rx_ring); goto drop_n_account; + } if (po->tp_version <= TPACKET_V2) { packet_increment_rx_head(po, &po->rx_ring); @@ -2393,7 +2407,7 @@ __clear_bit(slot_id, po->rx_ring.rx_owner_map); spin_unlock(&sk->sk_receive_queue.lock); sk->sk_data_ready(sk); - } else { + } else if (po->tp_version == TPACKET_V3) { prb_clear_blk_fill_status(&po->rx_ring); } @@ -4628,9 +4642,11 @@ mutex_init(&net->packet.sklist_lock); INIT_HLIST_HEAD(&net->packet.sklist); +#ifdef CONFIG_PROC_FS if (!proc_create_net("packet", 0, net->proc_net, &packet_seq_ops, sizeof(struct seq_net_private))) return -ENOMEM; +#endif /* CONFIG_PROC_FS */ return 0; } --- linux-azure-5.8-5.8.0.orig/net/qrtr/ns.c +++ linux-azure-5.8-5.8.0/net/qrtr/ns.c @@ -193,12 +193,13 @@ struct qrtr_server *srv; struct qrtr_node *node; void __rcu **slot; - int ret; + int ret = 0; node = node_get(qrtr_ns.local_node); if (!node) return 0; + rcu_read_lock(); /* Announce the list of servers registered in this node */ radix_tree_for_each_slot(slot, &node->servers, &iter, 0) { srv = radix_tree_deref_slot(slot); @@ -206,11 +207,14 @@ ret = service_announce_new(sq, srv); if (ret < 0) { pr_err("failed to announce new service\n"); - return ret; + goto err_out; } } - return 0; +err_out: + rcu_read_unlock(); + + return ret; } static struct qrtr_server *server_add(unsigned int service, @@ -335,7 +339,7 @@ struct qrtr_node *node; void __rcu **slot; struct kvec iv; - int ret; + int ret = 0; iv.iov_base = &pkt; iv.iov_len = sizeof(pkt); @@ -344,11 +348,13 @@ if (!node) return 0; + rcu_read_lock(); /* Advertise removal of this client to all servers of remote node */ radix_tree_for_each_slot(slot, &node->servers, &iter, 0) { srv = radix_tree_deref_slot(slot); server_del(node, srv->port); } + rcu_read_unlock(); /* Advertise the removal of this client to all local servers */ local_node = node_get(qrtr_ns.local_node); @@ -359,6 +365,7 @@ pkt.cmd = cpu_to_le32(QRTR_TYPE_BYE); pkt.client.node = cpu_to_le32(from->sq_node); + rcu_read_lock(); radix_tree_for_each_slot(slot, &local_node->servers, &iter, 0) { srv = radix_tree_deref_slot(slot); @@ -372,11 +379,14 @@ ret = kernel_sendmsg(qrtr_ns.sock, &msg, &iv, 1, sizeof(pkt)); if (ret < 0) { pr_err("failed to send bye cmd\n"); - return ret; + goto err_out; } } - return 0; +err_out: + rcu_read_unlock(); + + return ret; } static int ctrl_cmd_del_client(struct sockaddr_qrtr *from, @@ -394,7 +404,7 @@ struct list_head *li; void __rcu **slot; struct kvec iv; - int ret; + int ret = 0; iv.iov_base = &pkt; iv.iov_len = sizeof(pkt); @@ -434,6 +444,7 @@ pkt.client.node = cpu_to_le32(node_id); pkt.client.port = cpu_to_le32(port); + rcu_read_lock(); radix_tree_for_each_slot(slot, &local_node->servers, &iter, 0) { srv = radix_tree_deref_slot(slot); @@ -447,11 +458,14 @@ ret = kernel_sendmsg(qrtr_ns.sock, &msg, &iv, 1, sizeof(pkt)); if (ret < 0) { pr_err("failed to send del client cmd\n"); - return ret; + goto err_out; } } - return 0; +err_out: + rcu_read_unlock(); + + return ret; } static int ctrl_cmd_new_server(struct sockaddr_qrtr *from, @@ -554,6 +568,7 @@ filter.service = service; filter.instance = instance; + rcu_read_lock(); radix_tree_for_each_slot(node_slot, &nodes, &node_iter, 0) { node = radix_tree_deref_slot(node_slot); @@ -568,6 +583,7 @@ lookup_notify(from, srv, true); } } + rcu_read_unlock(); /* Empty notification, to indicate end of listing */ lookup_notify(from, NULL, true); --- linux-azure-5.8-5.8.0.orig/net/qrtr/qrtr.c +++ linux-azure-5.8-5.8.0/net/qrtr/qrtr.c @@ -332,8 +332,7 @@ { struct qrtr_hdr_v1 *hdr; size_t len = skb->len; - int rc = -ENODEV; - int confirm_rx; + int rc, confirm_rx; confirm_rx = qrtr_tx_wait(node, to->sq_node, to->sq_port, type); if (confirm_rx < 0) { @@ -348,7 +347,7 @@ hdr->src_port_id = cpu_to_le32(from->sq_port); if (to->sq_port == QRTR_PORT_CTRL) { hdr->dst_node_id = cpu_to_le32(node->nid); - hdr->dst_port_id = cpu_to_le32(QRTR_NODE_BCAST); + hdr->dst_port_id = cpu_to_le32(QRTR_PORT_CTRL); } else { hdr->dst_node_id = cpu_to_le32(to->sq_node); hdr->dst_port_id = cpu_to_le32(to->sq_port); @@ -357,15 +356,17 @@ hdr->size = cpu_to_le32(len); hdr->confirm_rx = !!confirm_rx; - skb_put_padto(skb, ALIGN(len, 4) + sizeof(*hdr)); - - mutex_lock(&node->ep_lock); - if (node->ep) - rc = node->ep->xmit(node->ep, skb); - else - kfree_skb(skb); - mutex_unlock(&node->ep_lock); + rc = skb_put_padto(skb, ALIGN(len, 4) + sizeof(*hdr)); + if (!rc) { + mutex_lock(&node->ep_lock); + rc = -ENODEV; + if (node->ep) + rc = node->ep->xmit(node->ep, skb); + else + kfree_skb(skb); + mutex_unlock(&node->ep_lock); + } /* Need to ensure that a subsequent message carries the otherwise lost * confirm_rx flag if we dropped this one */ if (rc && confirm_rx) @@ -692,23 +693,25 @@ */ static int qrtr_port_assign(struct qrtr_sock *ipc, int *port) { + u32 min_port; int rc; mutex_lock(&qrtr_port_lock); if (!*port) { - rc = idr_alloc(&qrtr_ports, ipc, - QRTR_MIN_EPH_SOCKET, QRTR_MAX_EPH_SOCKET + 1, - GFP_ATOMIC); - if (rc >= 0) - *port = rc; + min_port = QRTR_MIN_EPH_SOCKET; + rc = idr_alloc_u32(&qrtr_ports, ipc, &min_port, QRTR_MAX_EPH_SOCKET, GFP_ATOMIC); + if (!rc) + *port = min_port; } else if (*port < QRTR_MIN_EPH_SOCKET && !capable(CAP_NET_ADMIN)) { rc = -EACCES; } else if (*port == QRTR_PORT_CTRL) { - rc = idr_alloc(&qrtr_ports, ipc, 0, 1, GFP_ATOMIC); + min_port = 0; + rc = idr_alloc_u32(&qrtr_ports, ipc, &min_port, 0, GFP_ATOMIC); } else { - rc = idr_alloc(&qrtr_ports, ipc, *port, *port + 1, GFP_ATOMIC); - if (rc >= 0) - *port = rc; + min_port = *port; + rc = idr_alloc_u32(&qrtr_ports, ipc, &min_port, *port, GFP_ATOMIC); + if (!rc) + *port = min_port; } mutex_unlock(&qrtr_port_lock); --- linux-azure-5.8-5.8.0.orig/net/qrtr/tun.c +++ linux-azure-5.8-5.8.0/net/qrtr/tun.c @@ -31,6 +31,7 @@ static int qrtr_tun_open(struct inode *inode, struct file *filp) { struct qrtr_tun *tun; + int ret; tun = kzalloc(sizeof(*tun), GFP_KERNEL); if (!tun) @@ -43,7 +44,16 @@ filp->private_data = tun; - return qrtr_endpoint_register(&tun->ep, QRTR_EP_NID_AUTO); + ret = qrtr_endpoint_register(&tun->ep, QRTR_EP_NID_AUTO); + if (ret) + goto out; + + return 0; + +out: + filp->private_data = NULL; + kfree(tun); + return ret; } static ssize_t qrtr_tun_read_iter(struct kiocb *iocb, struct iov_iter *to) @@ -80,6 +90,12 @@ ssize_t ret; void *kbuf; + if (!len) + return -EINVAL; + + if (len > KMALLOC_MAX_SIZE) + return -ENOMEM; + kbuf = kzalloc(len, GFP_KERNEL); if (!kbuf) return -ENOMEM; --- linux-azure-5.8-5.8.0.orig/net/rds/ib.h +++ linux-azure-5.8-5.8.0/net/rds/ib.h @@ -264,13 +264,6 @@ int *vector_load; }; -static inline int ibdev_to_node(struct ib_device *ibdev) -{ - struct device *parent; - - parent = ibdev->dev.parent; - return parent ? dev_to_node(parent) : NUMA_NO_NODE; -} #define rdsibdev_to_node(rdsibdev) ibdev_to_node(rdsibdev->dev) /* bits for i_ack_flags */ --- linux-azure-5.8-5.8.0.orig/net/rds/ib_send.c +++ linux-azure-5.8-5.8.0/net/rds/ib_send.c @@ -504,7 +504,7 @@ int flow_controlled = 0; int nr_sig = 0; - BUG_ON(off % RDS_FRAG_SIZE); + BUG_ON(!conn->c_loopback && off % RDS_FRAG_SIZE); BUG_ON(hdr_off != 0 && hdr_off != sizeof(struct rds_header)); /* Do not send cong updates to IB loopback */ --- linux-azure-5.8-5.8.0.orig/net/rds/rdma.c +++ linux-azure-5.8-5.8.0/net/rds/rdma.c @@ -567,6 +567,9 @@ if (args->nr_local == 0) return -EINVAL; + if (args->nr_local > UIO_MAXIOV) + return -EMSGSIZE; + iov->iov = kcalloc(args->nr_local, sizeof(struct rds_iovec), GFP_KERNEL); --- linux-azure-5.8-5.8.0.orig/net/rfkill/core.c +++ linux-azure-5.8-5.8.0/net/rfkill/core.c @@ -876,6 +876,9 @@ rfkill->suspended = false; + if (!rfkill->registered) + return 0; + if (!rfkill->persistent) { cur = !!(rfkill->state & RFKILL_BLOCK_SW); rfkill_set_block(rfkill, cur); --- linux-azure-5.8-5.8.0.orig/net/rose/rose_loopback.c +++ linux-azure-5.8-5.8.0/net/rose/rose_loopback.c @@ -96,10 +96,19 @@ } if (frametype == ROSE_CALL_REQUEST) { - if ((dev = rose_dev_get(dest)) != NULL) { - if (rose_rx_call_request(skb, dev, rose_loopback_neigh, lci_o) == 0) - kfree_skb(skb); - } else { + if (!rose_loopback_neigh->dev) { + kfree_skb(skb); + continue; + } + + dev = rose_dev_get(dest); + if (!dev) { + kfree_skb(skb); + continue; + } + + if (rose_rx_call_request(skb, dev, rose_loopback_neigh, lci_o) == 0) { + dev_put(dev); kfree_skb(skb); } } else { --- linux-azure-5.8-5.8.0.orig/net/rxrpc/af_rxrpc.c +++ linux-azure-5.8-5.8.0/net/rxrpc/af_rxrpc.c @@ -989,7 +989,7 @@ goto error_security; } - ret = register_pernet_subsys(&rxrpc_net_ops); + ret = register_pernet_device(&rxrpc_net_ops); if (ret) goto error_pernet; @@ -1034,7 +1034,7 @@ error_sock: proto_unregister(&rxrpc_proto); error_proto: - unregister_pernet_subsys(&rxrpc_net_ops); + unregister_pernet_device(&rxrpc_net_ops); error_pernet: rxrpc_exit_security(); error_security: @@ -1056,7 +1056,7 @@ unregister_key_type(&key_type_rxrpc); sock_unregister(PF_RXRPC); proto_unregister(&rxrpc_proto); - unregister_pernet_subsys(&rxrpc_net_ops); + unregister_pernet_device(&rxrpc_net_ops); ASSERTCMP(atomic_read(&rxrpc_n_tx_skbs), ==, 0); ASSERTCMP(atomic_read(&rxrpc_n_rx_skbs), ==, 0); --- linux-azure-5.8-5.8.0.orig/net/rxrpc/ar-internal.h +++ linux-azure-5.8-5.8.0/net/rxrpc/ar-internal.h @@ -488,7 +488,6 @@ RXRPC_CALL_RX_LAST, /* Received the last packet (at rxtx_top) */ RXRPC_CALL_TX_LAST, /* Last packet in Tx buffer (at rxtx_top) */ RXRPC_CALL_SEND_PING, /* A ping will need to be sent */ - RXRPC_CALL_PINGING, /* Ping in process */ RXRPC_CALL_RETRANS_TIMEOUT, /* Retransmission due to timeout occurred */ RXRPC_CALL_BEGAN_RX_TIMER, /* We began the expect_rx_by timer */ RXRPC_CALL_RX_HEARD, /* The peer responded at least once to this call */ @@ -673,9 +672,13 @@ rxrpc_seq_t ackr_consumed; /* Highest packet shown consumed */ rxrpc_seq_t ackr_seen; /* Highest packet shown seen */ - /* ping management */ - rxrpc_serial_t ping_serial; /* Last ping sent */ - ktime_t ping_time; /* Time last ping sent */ + /* RTT management */ + rxrpc_serial_t rtt_serial[4]; /* Serial number of DATA or PING sent */ + ktime_t rtt_sent_at[4]; /* Time packet sent */ + unsigned long rtt_avail; /* Mask of available slots in bits 0-3, + * Mask of pending samples in 8-11 */ +#define RXRPC_CALL_RTT_AVAIL_MASK 0xf +#define RXRPC_CALL_RTT_PEND_SHIFT 8 /* transmission-phase ACK management */ ktime_t acks_latest_ts; /* Timestamp of latest ACK received */ @@ -1037,7 +1040,7 @@ /* * rtt.c */ -void rxrpc_peer_add_rtt(struct rxrpc_call *, enum rxrpc_rtt_rx_trace, +void rxrpc_peer_add_rtt(struct rxrpc_call *, enum rxrpc_rtt_rx_trace, int, rxrpc_serial_t, rxrpc_serial_t, ktime_t, ktime_t); unsigned long rxrpc_get_rto_backoff(struct rxrpc_peer *, bool); void rxrpc_peer_init_rtt(struct rxrpc_peer *); --- linux-azure-5.8-5.8.0.orig/net/rxrpc/call_accept.c +++ linux-azure-5.8-5.8.0/net/rxrpc/call_accept.c @@ -207,6 +207,7 @@ tail = b->peer_backlog_tail; while (CIRC_CNT(head, tail, size) > 0) { struct rxrpc_peer *peer = b->peer_backlog[tail]; + rxrpc_put_local(peer->local); kfree(peer); tail = (tail + 1) & (size - 1); } --- linux-azure-5.8-5.8.0.orig/net/rxrpc/call_object.c +++ linux-azure-5.8-5.8.0/net/rxrpc/call_object.c @@ -153,6 +153,7 @@ call->cong_ssthresh = RXRPC_RXTX_BUFF_SIZE - 1; call->rxnet = rxnet; + call->rtt_avail = RXRPC_CALL_RTT_AVAIL_MASK; atomic_inc(&rxnet->nr_calls); return call; @@ -507,8 +508,6 @@ rxrpc_disconnect_call(call); if (call->security) call->security->free_call_crypto(call); - - rxrpc_cleanup_ring(call); _leave(""); } --- linux-azure-5.8-5.8.0.orig/net/rxrpc/conn_event.c +++ linux-azure-5.8-5.8.0/net/rxrpc/conn_event.c @@ -340,18 +340,18 @@ return ret; spin_lock(&conn->channel_lock); - spin_lock(&conn->state_lock); + spin_lock_bh(&conn->state_lock); if (conn->state == RXRPC_CONN_SERVICE_CHALLENGING) { conn->state = RXRPC_CONN_SERVICE; - spin_unlock(&conn->state_lock); + spin_unlock_bh(&conn->state_lock); for (loop = 0; loop < RXRPC_MAXCALLS; loop++) rxrpc_call_is_secure( rcu_dereference_protected( conn->channels[loop].call, lockdep_is_held(&conn->channel_lock))); } else { - spin_unlock(&conn->state_lock); + spin_unlock_bh(&conn->state_lock); } spin_unlock(&conn->channel_lock); --- linux-azure-5.8-5.8.0.orig/net/rxrpc/input.c +++ linux-azure-5.8-5.8.0/net/rxrpc/input.c @@ -430,7 +430,7 @@ return; } - if (call->state == RXRPC_CALL_SERVER_RECV_REQUEST) { + if (state == RXRPC_CALL_SERVER_RECV_REQUEST) { unsigned long timo = READ_ONCE(call->next_req_timo); unsigned long now, expect_req_by; @@ -608,36 +608,57 @@ } /* - * Process a requested ACK. + * See if there's a cached RTT probe to complete. */ -static void rxrpc_input_requested_ack(struct rxrpc_call *call, - ktime_t resp_time, - rxrpc_serial_t orig_serial, - rxrpc_serial_t ack_serial) +static void rxrpc_complete_rtt_probe(struct rxrpc_call *call, + ktime_t resp_time, + rxrpc_serial_t acked_serial, + rxrpc_serial_t ack_serial, + enum rxrpc_rtt_rx_trace type) { - struct rxrpc_skb_priv *sp; - struct sk_buff *skb; + rxrpc_serial_t orig_serial; + unsigned long avail; ktime_t sent_at; - int ix; + bool matched = false; + int i; - for (ix = 0; ix < RXRPC_RXTX_BUFF_SIZE; ix++) { - skb = call->rxtx_buffer[ix]; - if (!skb) - continue; + avail = READ_ONCE(call->rtt_avail); + smp_rmb(); /* Read avail bits before accessing data. */ - sent_at = skb->tstamp; - smp_rmb(); /* Read timestamp before serial. */ - sp = rxrpc_skb(skb); - if (sp->hdr.serial != orig_serial) + for (i = 0; i < ARRAY_SIZE(call->rtt_serial); i++) { + if (!test_bit(i + RXRPC_CALL_RTT_PEND_SHIFT, &avail)) continue; - goto found; - } - return; + sent_at = call->rtt_sent_at[i]; + orig_serial = call->rtt_serial[i]; + + if (orig_serial == acked_serial) { + clear_bit(i + RXRPC_CALL_RTT_PEND_SHIFT, &call->rtt_avail); + smp_mb(); /* Read data before setting avail bit */ + set_bit(i, &call->rtt_avail); + if (type != rxrpc_rtt_rx_cancel) + rxrpc_peer_add_rtt(call, type, i, acked_serial, ack_serial, + sent_at, resp_time); + else + trace_rxrpc_rtt_rx(call, rxrpc_rtt_rx_cancel, i, + orig_serial, acked_serial, 0, 0); + matched = true; + } + + /* If a later serial is being acked, then mark this slot as + * being available. + */ + if (after(acked_serial, orig_serial)) { + trace_rxrpc_rtt_rx(call, rxrpc_rtt_rx_obsolete, i, + orig_serial, acked_serial, 0, 0); + clear_bit(i + RXRPC_CALL_RTT_PEND_SHIFT, &call->rtt_avail); + smp_wmb(); + set_bit(i, &call->rtt_avail); + } + } -found: - rxrpc_peer_add_rtt(call, rxrpc_rtt_rx_requested_ack, - orig_serial, ack_serial, sent_at, resp_time); + if (!matched) + trace_rxrpc_rtt_rx(call, rxrpc_rtt_rx_lost, 9, 0, acked_serial, 0, 0); } /* @@ -682,27 +703,11 @@ */ static void rxrpc_input_ping_response(struct rxrpc_call *call, ktime_t resp_time, - rxrpc_serial_t orig_serial, + rxrpc_serial_t acked_serial, rxrpc_serial_t ack_serial) { - rxrpc_serial_t ping_serial; - ktime_t ping_time; - - ping_time = call->ping_time; - smp_rmb(); - ping_serial = READ_ONCE(call->ping_serial); - - if (orig_serial == call->acks_lost_ping) + if (acked_serial == call->acks_lost_ping) rxrpc_input_check_for_lost_ack(call); - - if (before(orig_serial, ping_serial) || - !test_and_clear_bit(RXRPC_CALL_PINGING, &call->flags)) - return; - if (after(orig_serial, ping_serial)) - return; - - rxrpc_peer_add_rtt(call, rxrpc_rtt_rx_ping_response, - orig_serial, ack_serial, ping_time, resp_time); } /* @@ -843,7 +848,7 @@ struct rxrpc_ackinfo info; u8 acks[RXRPC_MAXACKS]; } buf; - rxrpc_serial_t acked_serial; + rxrpc_serial_t ack_serial, acked_serial; rxrpc_seq_t first_soft_ack, hard_ack, prev_pkt; int nr_acks, offset, ioffset; @@ -856,6 +861,7 @@ } offset += sizeof(buf.ack); + ack_serial = sp->hdr.serial; acked_serial = ntohl(buf.ack.serial); first_soft_ack = ntohl(buf.ack.firstPacket); prev_pkt = ntohl(buf.ack.previousPacket); @@ -864,31 +870,42 @@ summary.ack_reason = (buf.ack.reason < RXRPC_ACK__INVALID ? buf.ack.reason : RXRPC_ACK__INVALID); - trace_rxrpc_rx_ack(call, sp->hdr.serial, acked_serial, + trace_rxrpc_rx_ack(call, ack_serial, acked_serial, first_soft_ack, prev_pkt, summary.ack_reason, nr_acks); - if (buf.ack.reason == RXRPC_ACK_PING_RESPONSE) + switch (buf.ack.reason) { + case RXRPC_ACK_PING_RESPONSE: rxrpc_input_ping_response(call, skb->tstamp, acked_serial, - sp->hdr.serial); - if (buf.ack.reason == RXRPC_ACK_REQUESTED) - rxrpc_input_requested_ack(call, skb->tstamp, acked_serial, - sp->hdr.serial); + ack_serial); + rxrpc_complete_rtt_probe(call, skb->tstamp, acked_serial, ack_serial, + rxrpc_rtt_rx_ping_response); + break; + case RXRPC_ACK_REQUESTED: + rxrpc_complete_rtt_probe(call, skb->tstamp, acked_serial, ack_serial, + rxrpc_rtt_rx_requested_ack); + break; + default: + if (acked_serial != 0) + rxrpc_complete_rtt_probe(call, skb->tstamp, acked_serial, ack_serial, + rxrpc_rtt_rx_cancel); + break; + } if (buf.ack.reason == RXRPC_ACK_PING) { - _proto("Rx ACK %%%u PING Request", sp->hdr.serial); + _proto("Rx ACK %%%u PING Request", ack_serial); rxrpc_propose_ACK(call, RXRPC_ACK_PING_RESPONSE, - sp->hdr.serial, true, true, + ack_serial, true, true, rxrpc_propose_ack_respond_to_ping); } else if (sp->hdr.flags & RXRPC_REQUEST_ACK) { rxrpc_propose_ACK(call, RXRPC_ACK_REQUESTED, - sp->hdr.serial, true, true, + ack_serial, true, true, rxrpc_propose_ack_respond_to_ack); } /* Discard any out-of-order or duplicate ACKs (outside lock). */ if (!rxrpc_is_ack_valid(call, first_soft_ack, prev_pkt)) { - trace_rxrpc_rx_discard_ack(call->debug_id, sp->hdr.serial, + trace_rxrpc_rx_discard_ack(call->debug_id, ack_serial, first_soft_ack, call->ackr_first_seq, prev_pkt, call->ackr_prev_seq); return; @@ -904,7 +921,7 @@ /* Discard any out-of-order or duplicate ACKs (inside lock). */ if (!rxrpc_is_ack_valid(call, first_soft_ack, prev_pkt)) { - trace_rxrpc_rx_discard_ack(call->debug_id, sp->hdr.serial, + trace_rxrpc_rx_discard_ack(call->debug_id, ack_serial, first_soft_ack, call->ackr_first_seq, prev_pkt, call->ackr_prev_seq); goto out; @@ -964,7 +981,7 @@ RXRPC_TX_ANNO_LAST && summary.nr_acks == call->tx_top - hard_ack && rxrpc_is_client_call(call)) - rxrpc_propose_ACK(call, RXRPC_ACK_PING, sp->hdr.serial, + rxrpc_propose_ACK(call, RXRPC_ACK_PING, ack_serial, false, true, rxrpc_propose_ack_ping_for_lost_reply); --- linux-azure-5.8-5.8.0.orig/net/rxrpc/key.c +++ linux-azure-5.8-5.8.0/net/rxrpc/key.c @@ -903,7 +903,7 @@ _enter(""); - if (optlen <= 0 || optlen > PAGE_SIZE - 1) + if (optlen <= 0 || optlen > PAGE_SIZE - 1 || rx->securities) return -EINVAL; description = memdup_user_nul(optval, optlen); @@ -941,7 +941,7 @@ if (IS_ERR(description)) return PTR_ERR(description); - key = request_key_net(&key_type_keyring, description, sock_net(&rx->sk), NULL); + key = request_key(&key_type_keyring, description, NULL); if (IS_ERR(key)) { kfree(description); _leave(" = %ld", PTR_ERR(key)); @@ -1073,7 +1073,7 @@ switch (token->security_index) { case RXRPC_SECURITY_RXKAD: - toksize += 9 * 4; /* viceid, kvno, key*2 + len, begin, + toksize += 8 * 4; /* viceid, kvno, key*2, begin, * end, primary, tktlen */ toksize += RND(token->kad->ticket_len); break; @@ -1108,8 +1108,9 @@ break; default: /* we have a ticket we can't encode */ - BUG(); - continue; + pr_err("Unsupported key token type (%u)\n", + token->security_index); + return -ENOPKG; } _debug("token[%u]: toksize=%u", ntoks, toksize); @@ -1139,6 +1140,14 @@ memcpy((u8 *)xdr + _l, &zero, 4 - (_l & 3)); \ xdr += (_l + 3) >> 2; \ } while(0) +#define ENCODE_BYTES(l, s) \ + do { \ + u32 _l = (l); \ + memcpy(xdr, (s), _l); \ + if (_l & 3) \ + memcpy((u8 *)xdr + _l, &zero, 4 - (_l & 3)); \ + xdr += (_l + 3) >> 2; \ + } while(0) #define ENCODE64(x) \ do { \ __be64 y = cpu_to_be64(x); \ @@ -1166,7 +1175,7 @@ case RXRPC_SECURITY_RXKAD: ENCODE(token->kad->vice_id); ENCODE(token->kad->kvno); - ENCODE_DATA(8, token->kad->session_key); + ENCODE_BYTES(8, token->kad->session_key); ENCODE(token->kad->start); ENCODE(token->kad->expiry); ENCODE(token->kad->primary_flag); @@ -1216,8 +1225,9 @@ break; default: - BUG(); - break; + pr_err("Unsupported key token type (%u)\n", + token->security_index); + return -ENOPKG; } ASSERTCMP((unsigned long)xdr - (unsigned long)oldxdr, ==, --- linux-azure-5.8-5.8.0.orig/net/rxrpc/output.c +++ linux-azure-5.8-5.8.0/net/rxrpc/output.c @@ -124,6 +124,49 @@ } /* + * Record the beginning of an RTT probe. + */ +static int rxrpc_begin_rtt_probe(struct rxrpc_call *call, rxrpc_serial_t serial, + enum rxrpc_rtt_tx_trace why) +{ + unsigned long avail = call->rtt_avail; + int rtt_slot = 9; + + if (!(avail & RXRPC_CALL_RTT_AVAIL_MASK)) + goto no_slot; + + rtt_slot = __ffs(avail & RXRPC_CALL_RTT_AVAIL_MASK); + if (!test_and_clear_bit(rtt_slot, &call->rtt_avail)) + goto no_slot; + + call->rtt_serial[rtt_slot] = serial; + call->rtt_sent_at[rtt_slot] = ktime_get_real(); + smp_wmb(); /* Write data before avail bit */ + set_bit(rtt_slot + RXRPC_CALL_RTT_PEND_SHIFT, &call->rtt_avail); + + trace_rxrpc_rtt_tx(call, why, rtt_slot, serial); + return rtt_slot; + +no_slot: + trace_rxrpc_rtt_tx(call, rxrpc_rtt_tx_no_slot, rtt_slot, serial); + return -1; +} + +/* + * Cancel an RTT probe. + */ +static void rxrpc_cancel_rtt_probe(struct rxrpc_call *call, + rxrpc_serial_t serial, int rtt_slot) +{ + if (rtt_slot != -1) { + clear_bit(rtt_slot + RXRPC_CALL_RTT_PEND_SHIFT, &call->rtt_avail); + smp_wmb(); /* Clear pending bit before setting slot */ + set_bit(rtt_slot, &call->rtt_avail); + trace_rxrpc_rtt_tx(call, rxrpc_rtt_tx_cancel, rtt_slot, serial); + } +} + +/* * Send an ACK call packet. */ int rxrpc_send_ack_packet(struct rxrpc_call *call, bool ping, @@ -136,7 +179,7 @@ rxrpc_serial_t serial; rxrpc_seq_t hard_ack, top; size_t len, n; - int ret; + int ret, rtt_slot = -1; u8 reason; if (test_bit(RXRPC_CALL_DISCONNECTED, &call->flags)) @@ -196,18 +239,8 @@ if (_serial) *_serial = serial; - if (ping) { - call->ping_serial = serial; - smp_wmb(); - /* We need to stick a time in before we send the packet in case - * the reply gets back before kernel_sendmsg() completes - but - * asking UDP to send the packet can take a relatively long - * time. - */ - call->ping_time = ktime_get_real(); - set_bit(RXRPC_CALL_PINGING, &call->flags); - trace_rxrpc_rtt_tx(call, rxrpc_rtt_tx_ping, serial); - } + if (ping) + rtt_slot = rxrpc_begin_rtt_probe(call, serial, rxrpc_rtt_tx_ping); ret = kernel_sendmsg(conn->params.local->socket, &msg, iov, 2, len); conn->params.peer->last_tx_at = ktime_get_seconds(); @@ -221,8 +254,7 @@ if (call->state < RXRPC_CALL_COMPLETE) { if (ret < 0) { - if (ping) - clear_bit(RXRPC_CALL_PINGING, &call->flags); + rxrpc_cancel_rtt_probe(call, serial, rtt_slot); rxrpc_propose_ACK(call, pkt->ack.reason, ntohl(pkt->ack.serial), false, true, @@ -321,7 +353,7 @@ struct kvec iov[2]; rxrpc_serial_t serial; size_t len; - int ret; + int ret, rtt_slot = -1; _enter(",{%d}", skb->len); @@ -397,6 +429,8 @@ sp->hdr.serial = serial; smp_wmb(); /* Set serial before timestamp */ skb->tstamp = ktime_get_real(); + if (whdr.flags & RXRPC_REQUEST_ACK) + rtt_slot = rxrpc_begin_rtt_probe(call, serial, rxrpc_rtt_tx_data); /* send the packet by UDP * - returns -EMSGSIZE if UDP would have to fragment the packet @@ -408,12 +442,15 @@ conn->params.peer->last_tx_at = ktime_get_seconds(); up_read(&conn->params.local->defrag_sem); - if (ret < 0) + if (ret < 0) { + rxrpc_cancel_rtt_probe(call, serial, rtt_slot); trace_rxrpc_tx_fail(call->debug_id, serial, ret, rxrpc_tx_point_call_data_nofrag); - else + } else { trace_rxrpc_tx_packet(call->debug_id, &whdr, rxrpc_tx_point_call_data_nofrag); + } + rxrpc_tx_backoff(call, ret); if (ret == -EMSGSIZE) goto send_fragmentable; @@ -422,7 +459,6 @@ if (ret >= 0) { if (whdr.flags & RXRPC_REQUEST_ACK) { call->peer->rtt_last_req = skb->tstamp; - trace_rxrpc_rtt_tx(call, rxrpc_rtt_tx_data, serial); if (call->peer->rtt_count > 1) { unsigned long nowj = jiffies, ack_lost_at; @@ -469,6 +505,8 @@ sp->hdr.serial = serial; smp_wmb(); /* Set serial before timestamp */ skb->tstamp = ktime_get_real(); + if (whdr.flags & RXRPC_REQUEST_ACK) + rtt_slot = rxrpc_begin_rtt_probe(call, serial, rxrpc_rtt_tx_data); switch (conn->params.local->srx.transport.family) { case AF_INET6: @@ -487,12 +525,14 @@ BUG(); } - if (ret < 0) + if (ret < 0) { + rxrpc_cancel_rtt_probe(call, serial, rtt_slot); trace_rxrpc_tx_fail(call->debug_id, serial, ret, rxrpc_tx_point_call_data_frag); - else + } else { trace_rxrpc_tx_packet(call->debug_id, &whdr, rxrpc_tx_point_call_data_frag); + } rxrpc_tx_backoff(call, ret); up_write(&conn->params.local->defrag_sem); --- linux-azure-5.8-5.8.0.orig/net/rxrpc/peer_object.c +++ linux-azure-5.8-5.8.0/net/rxrpc/peer_object.c @@ -502,11 +502,21 @@ * rxrpc_kernel_get_srtt - Get a call's peer smoothed RTT * @sock: The socket on which the call is in progress. * @call: The call to query + * @_srtt: Where to store the SRTT value. * - * Get the call's peer smoothed RTT. + * Get the call's peer smoothed RTT in uS. */ -u32 rxrpc_kernel_get_srtt(struct socket *sock, struct rxrpc_call *call) +bool rxrpc_kernel_get_srtt(struct socket *sock, struct rxrpc_call *call, + u32 *_srtt) { - return call->peer->srtt_us >> 3; + struct rxrpc_peer *peer = call->peer; + + if (peer->rtt_count == 0) { + *_srtt = 1000000; /* 1S */ + return false; + } + + *_srtt = call->peer->srtt_us >> 3; + return true; } EXPORT_SYMBOL(rxrpc_kernel_get_srtt); --- linux-azure-5.8-5.8.0.orig/net/rxrpc/rtt.c +++ linux-azure-5.8-5.8.0/net/rxrpc/rtt.c @@ -146,6 +146,7 @@ * exclusive access to the peer RTT data. */ void rxrpc_peer_add_rtt(struct rxrpc_call *call, enum rxrpc_rtt_rx_trace why, + int rtt_slot, rxrpc_serial_t send_serial, rxrpc_serial_t resp_serial, ktime_t send_time, ktime_t resp_time) { @@ -162,7 +163,7 @@ peer->rtt_count++; spin_unlock(&peer->rtt_input_lock); - trace_rxrpc_rtt_rx(call, why, send_serial, resp_serial, + trace_rxrpc_rtt_rx(call, why, rtt_slot, send_serial, resp_serial, peer->srtt_us >> 3, peer->rto_j); } --- linux-azure-5.8-5.8.0.orig/net/sched/Kconfig +++ linux-azure-5.8-5.8.0/net/sched/Kconfig @@ -809,7 +809,7 @@ config NET_ACT_IPT tristate "IPtables targets" - depends on NET_CLS_ACT && NETFILTER && IP_NF_IPTABLES + depends on NET_CLS_ACT && NETFILTER && NETFILTER_XTABLES help Say Y here to be able to invoke iptables targets after successful classification. @@ -908,7 +908,7 @@ config NET_ACT_CONNMARK tristate "Netfilter Connection Mark Retriever" - depends on NET_CLS_ACT && NETFILTER && IP_NF_IPTABLES + depends on NET_CLS_ACT && NETFILTER depends on NF_CONNTRACK && NF_CONNTRACK_MARK help Say Y here to allow retrieving of conn mark @@ -920,7 +920,7 @@ config NET_ACT_CTINFO tristate "Netfilter Connection Mark Actions" - depends on NET_CLS_ACT && NETFILTER && IP_NF_IPTABLES + depends on NET_CLS_ACT && NETFILTER depends on NF_CONNTRACK && NF_CONNTRACK_MARK help Say Y here to allow transfer of a connmark stored information. --- linux-azure-5.8-5.8.0.orig/net/sched/act_api.c +++ linux-azure-5.8-5.8.0/net/sched/act_api.c @@ -307,6 +307,8 @@ mutex_lock(&idrinfo->lock); idr_for_each_entry_ul(idr, p, tmp, id) { + if (IS_ERR(p)) + continue; ret = tcf_idr_release_unsafe(p); if (ret == ACT_P_DELETED) { module_put(ops->owner); @@ -467,17 +469,6 @@ } EXPORT_SYMBOL(tcf_idr_create_from_flags); -void tcf_idr_insert(struct tc_action_net *tn, struct tc_action *a) -{ - struct tcf_idrinfo *idrinfo = tn->idrinfo; - - mutex_lock(&idrinfo->lock); - /* Replace ERR_PTR(-EBUSY) allocated by tcf_idr_check_alloc */ - WARN_ON(!IS_ERR(idr_replace(&idrinfo->action_idr, a, a->tcfa_index))); - mutex_unlock(&idrinfo->lock); -} -EXPORT_SYMBOL(tcf_idr_insert); - /* Cleanup idr index that was allocated but not initialized. */ void tcf_idr_cleanup(struct tc_action_net *tn, u32 index) @@ -731,13 +722,6 @@ return ret; } -static int tcf_action_destroy_1(struct tc_action *a, int bind) -{ - struct tc_action *actions[] = { a, NULL }; - - return tcf_action_destroy(actions, bind); -} - static int tcf_action_put(struct tc_action *p) { return __tcf_action_put(p, false); @@ -902,6 +886,26 @@ [TCA_ACT_HW_STATS] = NLA_POLICY_BITFIELD32(TCA_ACT_HW_STATS_ANY), }; +void tcf_idr_insert_many(struct tc_action *actions[]) +{ + int i; + + for (i = 0; i < TCA_ACT_MAX_PRIO; i++) { + struct tc_action *a = actions[i]; + struct tcf_idrinfo *idrinfo; + + if (!a) + continue; + idrinfo = a->idrinfo; + mutex_lock(&idrinfo->lock); + /* Replace ERR_PTR(-EBUSY) allocated by tcf_idr_check_alloc if + * it is just created, otherwise this is just a nop. + */ + idr_replace(&idrinfo->action_idr, a, a->tcfa_index); + mutex_unlock(&idrinfo->lock); + } +} + struct tc_action *tcf_action_init_1(struct net *net, struct tcf_proto *tp, struct nlattr *nla, struct nlattr *est, char *name, int ovr, int bind, @@ -1002,13 +1006,6 @@ if (err != ACT_P_CREATED) module_put(a_o->owner); - if (TC_ACT_EXT_CMP(a->tcfa_action, TC_ACT_GOTO_CHAIN) && - !rcu_access_pointer(a->goto_chain)) { - tcf_action_destroy_1(a, bind); - NL_SET_ERR_MSG(extack, "can't use goto chain with NULL chain"); - return ERR_PTR(-EINVAL); - } - return a; err_mod: @@ -1051,6 +1048,11 @@ actions[i - 1] = act; } + /* We have to commit them all together, because if any error happened in + * between, we could not handle the failure gracefully. + */ + tcf_idr_insert_many(actions); + *attr_size = tcf_action_full_attrs_size(sz); return i - 1; --- linux-azure-5.8-5.8.0.orig/net/sched/act_bpf.c +++ linux-azure-5.8-5.8.0/net/sched/act_bpf.c @@ -365,9 +365,7 @@ if (goto_ch) tcf_chain_put_by_act(goto_ch); - if (res == ACT_P_CREATED) { - tcf_idr_insert(tn, *act); - } else { + if (res != ACT_P_CREATED) { /* make sure the program being replaced is no longer executing */ synchronize_rcu(); tcf_bpf_cfg_cleanup(&old); --- linux-azure-5.8-5.8.0.orig/net/sched/act_connmark.c +++ linux-azure-5.8-5.8.0/net/sched/act_connmark.c @@ -139,7 +139,6 @@ ci->net = net; ci->zone = parm->zone; - tcf_idr_insert(tn, *a); ret = ACT_P_CREATED; } else if (ret > 0) { ci = to_connmark(*a); --- linux-azure-5.8-5.8.0.orig/net/sched/act_csum.c +++ linux-azure-5.8-5.8.0/net/sched/act_csum.c @@ -110,9 +110,6 @@ if (params_new) kfree_rcu(params_new, rcu); - if (ret == ACT_P_CREATED) - tcf_idr_insert(tn, *a); - return ret; put_chain: if (goto_ch) --- linux-azure-5.8-5.8.0.orig/net/sched/act_ct.c +++ linux-azure-5.8-5.8.0/net/sched/act_ct.c @@ -156,11 +156,11 @@ __be16 target_dst = target.dst.u.udp.port; if (target_src != tuple->src.u.udp.port) - tcf_ct_add_mangle_action(action, FLOW_ACT_MANGLE_HDR_TYPE_TCP, + tcf_ct_add_mangle_action(action, FLOW_ACT_MANGLE_HDR_TYPE_UDP, offsetof(struct udphdr, source), 0xFFFF, be16_to_cpu(target_src)); if (target_dst != tuple->dst.u.udp.port) - tcf_ct_add_mangle_action(action, FLOW_ACT_MANGLE_HDR_TYPE_TCP, + tcf_ct_add_mangle_action(action, FLOW_ACT_MANGLE_HDR_TYPE_UDP, offsetof(struct udphdr, dest), 0xFFFF, be16_to_cpu(target_dst)); } @@ -704,7 +704,7 @@ err = ip_defrag(net, skb, user); local_bh_enable(); if (err && err != -EINPROGRESS) - goto out_free; + return err; if (!err) *defrag = true; @@ -1293,8 +1293,6 @@ tcf_chain_put_by_act(goto_ch); if (params) call_rcu(¶ms->rcu, tcf_ct_params_free); - if (res == ACT_P_CREATED) - tcf_idr_insert(tn, *a); return res; --- linux-azure-5.8-5.8.0.orig/net/sched/act_ctinfo.c +++ linux-azure-5.8-5.8.0/net/sched/act_ctinfo.c @@ -269,9 +269,6 @@ if (cp_new) kfree_rcu(cp_new, rcu); - if (ret == ACT_P_CREATED) - tcf_idr_insert(tn, *a); - return ret; put_chain: --- linux-azure-5.8-5.8.0.orig/net/sched/act_gact.c +++ linux-azure-5.8-5.8.0/net/sched/act_gact.c @@ -140,8 +140,6 @@ if (goto_ch) tcf_chain_put_by_act(goto_ch); - if (ret == ACT_P_CREATED) - tcf_idr_insert(tn, *a); return ret; release_idr: tcf_idr_release(*a, bind); --- linux-azure-5.8-5.8.0.orig/net/sched/act_gate.c +++ linux-azure-5.8-5.8.0/net/sched/act_gate.c @@ -437,9 +437,6 @@ if (goto_ch) tcf_chain_put_by_act(goto_ch); - if (ret == ACT_P_CREATED) - tcf_idr_insert(tn, *a); - return ret; chain_put: --- linux-azure-5.8-5.8.0.orig/net/sched/act_ife.c +++ linux-azure-5.8-5.8.0/net/sched/act_ife.c @@ -436,6 +436,25 @@ kfree_rcu(p, rcu); } +static int load_metalist(struct nlattr **tb, bool rtnl_held) +{ + int i; + + for (i = 1; i < max_metacnt; i++) { + if (tb[i]) { + void *val = nla_data(tb[i]); + int len = nla_len(tb[i]); + int rc; + + rc = load_metaops_and_vet(i, val, len, rtnl_held); + if (rc != 0) + return rc; + } + } + + return 0; +} + static int populate_metalist(struct tcf_ife_info *ife, struct nlattr **tb, bool exists, bool rtnl_held) { @@ -449,10 +468,6 @@ val = nla_data(tb[i]); len = nla_len(tb[i]); - rc = load_metaops_and_vet(i, val, len, rtnl_held); - if (rc != 0) - return rc; - rc = add_metainfo(ife, i, val, len, exists); if (rc) return rc; @@ -509,6 +524,21 @@ if (!p) return -ENOMEM; + if (tb[TCA_IFE_METALST]) { + err = nla_parse_nested_deprecated(tb2, IFE_META_MAX, + tb[TCA_IFE_METALST], NULL, + NULL); + if (err) { + kfree(p); + return err; + } + err = load_metalist(tb2, rtnl_held); + if (err) { + kfree(p); + return err; + } + } + index = parm->index; err = tcf_idr_check_alloc(tn, &index, a, bind); if (err < 0) { @@ -570,15 +600,9 @@ } if (tb[TCA_IFE_METALST]) { - err = nla_parse_nested_deprecated(tb2, IFE_META_MAX, - tb[TCA_IFE_METALST], NULL, - NULL); - if (err) - goto metadata_parse_err; err = populate_metalist(ife, tb2, exists, rtnl_held); if (err) goto metadata_parse_err; - } else { /* if no passed metadata allow list or passed allow-all * then here we process by adding as many supported metadatum @@ -603,9 +627,6 @@ if (p) kfree_rcu(p, rcu); - if (ret == ACT_P_CREATED) - tcf_idr_insert(tn, *a); - return ret; metadata_parse_err: if (goto_ch) --- linux-azure-5.8-5.8.0.orig/net/sched/act_ipt.c +++ linux-azure-5.8-5.8.0/net/sched/act_ipt.c @@ -189,8 +189,6 @@ ipt->tcfi_t = t; ipt->tcfi_hook = hook; spin_unlock_bh(&ipt->tcf_lock); - if (ret == ACT_P_CREATED) - tcf_idr_insert(tn, *a); return ret; err3: --- linux-azure-5.8-5.8.0.orig/net/sched/act_mirred.c +++ linux-azure-5.8-5.8.0/net/sched/act_mirred.c @@ -194,8 +194,6 @@ spin_lock(&mirred_list_lock); list_add(&m->tcfm_list, &mirred_list); spin_unlock(&mirred_list_lock); - - tcf_idr_insert(tn, *a); } return ret; --- linux-azure-5.8-5.8.0.orig/net/sched/act_mpls.c +++ linux-azure-5.8-5.8.0/net/sched/act_mpls.c @@ -88,6 +88,9 @@ goto drop; break; case TCA_MPLS_ACT_MODIFY: + if (!pskb_may_pull(skb, + skb_network_offset(skb) + MPLS_HLEN)) + goto drop; new_lse = tcf_mpls_get_lse(mpls_hdr(skb), p, false); if (skb_mpls_update_lse(skb, new_lse)) goto drop; @@ -273,8 +276,6 @@ if (p) kfree_rcu(p, rcu); - if (ret == ACT_P_CREATED) - tcf_idr_insert(tn, *a); return ret; put_chain: if (goto_ch) @@ -410,6 +411,7 @@ module_init(mpls_init_module); module_exit(mpls_cleanup_module); +MODULE_SOFTDEP("post: mpls_gso"); MODULE_AUTHOR("Netronome Systems "); MODULE_LICENSE("GPL"); MODULE_DESCRIPTION("MPLS manipulation actions"); --- linux-azure-5.8-5.8.0.orig/net/sched/act_nat.c +++ linux-azure-5.8-5.8.0/net/sched/act_nat.c @@ -93,9 +93,6 @@ if (goto_ch) tcf_chain_put_by_act(goto_ch); - if (ret == ACT_P_CREATED) - tcf_idr_insert(tn, *a); - return ret; release_idr: tcf_idr_release(*a, bind); --- linux-azure-5.8-5.8.0.orig/net/sched/act_pedit.c +++ linux-azure-5.8-5.8.0/net/sched/act_pedit.c @@ -238,8 +238,6 @@ spin_unlock_bh(&p->tcf_lock); if (goto_ch) tcf_chain_put_by_act(goto_ch); - if (ret == ACT_P_CREATED) - tcf_idr_insert(tn, *a); return ret; put_chain: --- linux-azure-5.8-5.8.0.orig/net/sched/act_police.c +++ linux-azure-5.8-5.8.0/net/sched/act_police.c @@ -201,8 +201,6 @@ if (new) kfree_rcu(new, rcu); - if (ret == ACT_P_CREATED) - tcf_idr_insert(tn, *a); return ret; failure: --- linux-azure-5.8-5.8.0.orig/net/sched/act_sample.c +++ linux-azure-5.8-5.8.0/net/sched/act_sample.c @@ -116,8 +116,6 @@ if (goto_ch) tcf_chain_put_by_act(goto_ch); - if (ret == ACT_P_CREATED) - tcf_idr_insert(tn, *a); return ret; put_chain: if (goto_ch) --- linux-azure-5.8-5.8.0.orig/net/sched/act_simple.c +++ linux-azure-5.8-5.8.0/net/sched/act_simple.c @@ -157,8 +157,6 @@ goto release_idr; } - if (ret == ACT_P_CREATED) - tcf_idr_insert(tn, *a); return ret; put_chain: if (goto_ch) --- linux-azure-5.8-5.8.0.orig/net/sched/act_skbedit.c +++ linux-azure-5.8-5.8.0/net/sched/act_skbedit.c @@ -224,8 +224,6 @@ if (goto_ch) tcf_chain_put_by_act(goto_ch); - if (ret == ACT_P_CREATED) - tcf_idr_insert(tn, *a); return ret; put_chain: if (goto_ch) --- linux-azure-5.8-5.8.0.orig/net/sched/act_skbmod.c +++ linux-azure-5.8-5.8.0/net/sched/act_skbmod.c @@ -190,8 +190,6 @@ if (goto_ch) tcf_chain_put_by_act(goto_ch); - if (ret == ACT_P_CREATED) - tcf_idr_insert(tn, *a); return ret; put_chain: if (goto_ch) --- linux-azure-5.8-5.8.0.orig/net/sched/act_tunnel_key.c +++ linux-azure-5.8-5.8.0/net/sched/act_tunnel_key.c @@ -458,7 +458,7 @@ metadata = __ipv6_tun_set_dst(&saddr, &daddr, tos, ttl, dst_port, 0, flags, - key_id, 0); + key_id, opts_len); } else { NL_SET_ERR_MSG(extack, "Missing either ipv4 or ipv6 src and dst"); ret = -EINVAL; @@ -536,9 +536,6 @@ if (goto_ch) tcf_chain_put_by_act(goto_ch); - if (ret == ACT_P_CREATED) - tcf_idr_insert(tn, *a); - return ret; put_chain: --- linux-azure-5.8-5.8.0.orig/net/sched/act_vlan.c +++ linux-azure-5.8-5.8.0/net/sched/act_vlan.c @@ -229,8 +229,6 @@ if (p) kfree_rcu(p, rcu); - if (ret == ACT_P_CREATED) - tcf_idr_insert(tn, *a); return ret; put_chain: if (goto_ch) --- linux-azure-5.8-5.8.0.orig/net/sched/cls_api.c +++ linux-azure-5.8-5.8.0/net/sched/cls_api.c @@ -650,12 +650,12 @@ block_cb->indr.binder_type, &block->flow_block, tcf_block_shared(block), &extack); + rtnl_lock(); down_write(&block->cb_lock); list_del(&block_cb->driver_list); list_move(&block_cb->list, &bo.cb_list); - up_write(&block->cb_lock); - rtnl_lock(); tcf_block_unbind(block, &bo); + up_write(&block->cb_lock); rtnl_unlock(); } @@ -3062,6 +3062,7 @@ act->type = exts->type = TCA_OLD_COMPAT; exts->actions[0] = act; exts->nr_actions = 1; + tcf_idr_insert_many(exts->actions); } else if (exts->action && tb[exts->action]) { int err; @@ -3707,7 +3708,7 @@ entry->gate.num_entries = tcf_gate_num_entries(act); err = tcf_gate_get_entries(entry, act); if (err) - goto err_out; + goto err_out_locked; } else { err = -EOPNOTSUPP; goto err_out_locked; --- linux-azure-5.8-5.8.0.orig/net/sched/cls_flower.c +++ linux-azure-5.8-5.8.0/net/sched/cls_flower.c @@ -1215,6 +1215,7 @@ } if (tb[TCA_FLOWER_KEY_ENC_OPT_ERSPAN_INDEX]) { nla = tb[TCA_FLOWER_KEY_ENC_OPT_ERSPAN_INDEX]; + memset(&md->u, 0x00, sizeof(md->u)); md->u.index = nla_get_be32(nla); } } else if (md->version == 2) { @@ -1263,6 +1264,10 @@ nla_opt_msk = nla_data(tb[TCA_FLOWER_KEY_ENC_OPTS_MASK]); msk_depth = nla_len(tb[TCA_FLOWER_KEY_ENC_OPTS_MASK]); + if (!nla_ok(nla_opt_msk, msk_depth)) { + NL_SET_ERR_MSG(extack, "Invalid nested attribute for masks"); + return -EINVAL; + } } nla_for_each_attr(nla_opt_key, nla_enc_key, @@ -1298,9 +1303,6 @@ NL_SET_ERR_MSG(extack, "Key and mask miss aligned"); return -EINVAL; } - - if (msk_depth) - nla_opt_msk = nla_next(nla_opt_msk, &msk_depth); break; case TCA_FLOWER_KEY_ENC_OPTS_VXLAN: if (key->enc_opts.dst_opt_type) { @@ -1331,9 +1333,6 @@ NL_SET_ERR_MSG(extack, "Key and mask miss aligned"); return -EINVAL; } - - if (msk_depth) - nla_opt_msk = nla_next(nla_opt_msk, &msk_depth); break; case TCA_FLOWER_KEY_ENC_OPTS_ERSPAN: if (key->enc_opts.dst_opt_type) { @@ -1364,14 +1363,20 @@ NL_SET_ERR_MSG(extack, "Key and mask miss aligned"); return -EINVAL; } - - if (msk_depth) - nla_opt_msk = nla_next(nla_opt_msk, &msk_depth); break; default: NL_SET_ERR_MSG(extack, "Unknown tunnel option type"); return -EINVAL; } + + if (!msk_depth) + continue; + + if (!nla_ok(nla_opt_msk, msk_depth)) { + NL_SET_ERR_MSG(extack, "A mask attribute is invalid"); + return -EINVAL; + } + nla_opt_msk = nla_next(nla_opt_msk, &msk_depth); } return 0; @@ -2409,8 +2414,8 @@ return err; } if (lse_mask->mpls_label) { - err = nla_put_u8(skb, TCA_FLOWER_KEY_MPLS_OPT_LSE_LABEL, - lse_key->mpls_label); + err = nla_put_u32(skb, TCA_FLOWER_KEY_MPLS_OPT_LSE_LABEL, + lse_key->mpls_label); if (err) return err; } --- linux-azure-5.8-5.8.0.orig/net/sched/cls_tcindex.c +++ linux-azure-5.8-5.8.0/net/sched/cls_tcindex.c @@ -366,9 +366,13 @@ if (tb[TCA_TCINDEX_MASK]) cp->mask = nla_get_u16(tb[TCA_TCINDEX_MASK]); - if (tb[TCA_TCINDEX_SHIFT]) + if (tb[TCA_TCINDEX_SHIFT]) { cp->shift = nla_get_u32(tb[TCA_TCINDEX_SHIFT]); - + if (cp->shift > 16) { + err = -EINVAL; + goto errout; + } + } if (!cp->hash) { /* Hash not specified, use perfect hash if the upper limit * of the hashing index is below the threshold. --- linux-azure-5.8-5.8.0.orig/net/sched/sch_api.c +++ linux-azure-5.8-5.8.0/net/sched/sch_api.c @@ -411,7 +411,8 @@ { struct qdisc_rate_table *rtab; - if (tab == NULL || r->rate == 0 || r->cell_log == 0 || + if (tab == NULL || r->rate == 0 || + r->cell_log == 0 || r->cell_log >= 32 || nla_len(tab) != TC_RTAB_SIZE) { NL_SET_ERR_MSG(extack, "Invalid rate table parameters for searching"); return NULL; --- linux-azure-5.8-5.8.0.orig/net/sched/sch_choke.c +++ linux-azure-5.8-5.8.0/net/sched/sch_choke.c @@ -362,7 +362,7 @@ ctl = nla_data(tb[TCA_CHOKE_PARMS]); - if (!red_check_params(ctl->qth_min, ctl->qth_max, ctl->Wlog)) + if (!red_check_params(ctl->qth_min, ctl->qth_max, ctl->Wlog, ctl->Scell_log)) return -EINVAL; if (ctl->limit > CHOKE_MAX_QUEUE) --- linux-azure-5.8-5.8.0.orig/net/sched/sch_fq_pie.c +++ linux-azure-5.8-5.8.0/net/sched/sch_fq_pie.c @@ -401,6 +401,7 @@ INIT_LIST_HEAD(&q->new_flows); INIT_LIST_HEAD(&q->old_flows); + timer_setup(&q->adapt_timer, fq_pie_timer, 0); if (opt) { err = fq_pie_change(sch, opt, extack); @@ -426,7 +427,6 @@ pie_vars_init(&flow->vars); } - timer_setup(&q->adapt_timer, fq_pie_timer, 0); mod_timer(&q->adapt_timer, jiffies + HZ / 2); return 0; --- linux-azure-5.8-5.8.0.orig/net/sched/sch_generic.c +++ linux-azure-5.8-5.8.0/net/sched/sch_generic.c @@ -1131,24 +1131,10 @@ static void qdisc_deactivate(struct Qdisc *qdisc) { - bool nolock = qdisc->flags & TCQ_F_NOLOCK; - if (qdisc->flags & TCQ_F_BUILTIN) return; - if (test_bit(__QDISC_STATE_DEACTIVATED, &qdisc->state)) - return; - - if (nolock) - spin_lock_bh(&qdisc->seqlock); - spin_lock_bh(qdisc_lock(qdisc)); set_bit(__QDISC_STATE_DEACTIVATED, &qdisc->state); - - qdisc_reset(qdisc); - - spin_unlock_bh(qdisc_lock(qdisc)); - if (nolock) - spin_unlock_bh(&qdisc->seqlock); } static void dev_deactivate_queue(struct net_device *dev, @@ -1165,6 +1151,30 @@ } } +static void dev_reset_queue(struct net_device *dev, + struct netdev_queue *dev_queue, + void *_unused) +{ + struct Qdisc *qdisc; + bool nolock; + + qdisc = dev_queue->qdisc_sleeping; + if (!qdisc) + return; + + nolock = qdisc->flags & TCQ_F_NOLOCK; + + if (nolock) + spin_lock_bh(&qdisc->seqlock); + spin_lock_bh(qdisc_lock(qdisc)); + + qdisc_reset(qdisc); + + spin_unlock_bh(qdisc_lock(qdisc)); + if (nolock) + spin_unlock_bh(&qdisc->seqlock); +} + static bool some_qdisc_is_busy(struct net_device *dev) { unsigned int i; @@ -1213,12 +1223,20 @@ dev_watchdog_down(dev); } - /* Wait for outstanding qdisc-less dev_queue_xmit calls. + /* Wait for outstanding qdisc-less dev_queue_xmit calls or + * outstanding qdisc enqueuing calls. * This is avoided if all devices are in dismantle phase : * Caller will call synchronize_net() for us */ synchronize_net(); + list_for_each_entry(dev, head, close_list) { + netdev_for_each_tx_queue(dev, dev_reset_queue, NULL); + + if (dev_ingress_queue(dev)) + dev_reset_queue(dev, dev_ingress_queue(dev), NULL); + } + /* Wait for outstanding qdisc_run calls. */ list_for_each_entry(dev, head, close_list) { while (some_qdisc_is_busy(dev)) { --- linux-azure-5.8-5.8.0.orig/net/sched/sch_gred.c +++ linux-azure-5.8-5.8.0/net/sched/sch_gred.c @@ -480,7 +480,7 @@ struct gred_sched *table = qdisc_priv(sch); struct gred_sched_data *q = table->tab[dp]; - if (!red_check_params(ctl->qth_min, ctl->qth_max, ctl->Wlog)) { + if (!red_check_params(ctl->qth_min, ctl->qth_max, ctl->Wlog, ctl->Scell_log)) { NL_SET_ERR_MSG_MOD(extack, "invalid RED parameters"); return -EINVAL; } --- linux-azure-5.8-5.8.0.orig/net/sched/sch_netem.c +++ linux-azure-5.8-5.8.0/net/sched/sch_netem.c @@ -330,7 +330,7 @@ /* default uniform distribution */ if (dist == NULL) - return ((rnd % (2 * sigma)) + mu) - sigma; + return ((rnd % (2 * (u32)sigma)) + mu) - sigma; t = dist->table[rnd % dist->size]; x = (sigma % NETEM_DIST_SCALE) * t; @@ -812,6 +812,10 @@ q->slot_config.max_packets = INT_MAX; if (q->slot_config.max_bytes == 0) q->slot_config.max_bytes = INT_MAX; + + /* capping dist_jitter to the range acceptable by tabledist() */ + q->slot_config.dist_jitter = min_t(__s64, INT_MAX, abs(q->slot_config.dist_jitter)); + q->slot.packets_left = q->slot_config.max_packets; q->slot.bytes_left = q->slot_config.max_bytes; if (q->slot_config.min_delay | q->slot_config.max_delay | @@ -1037,6 +1041,9 @@ if (tb[TCA_NETEM_SLOT]) get_slot(q, tb[TCA_NETEM_SLOT]); + /* capping jitter to the range acceptable by tabledist() */ + q->jitter = min_t(s64, abs(q->jitter), INT_MAX); + return ret; get_table_failure: --- linux-azure-5.8-5.8.0.orig/net/sched/sch_red.c +++ linux-azure-5.8-5.8.0/net/sched/sch_red.c @@ -243,7 +243,7 @@ max_P = tb[TCA_RED_MAX_P] ? nla_get_u32(tb[TCA_RED_MAX_P]) : 0; ctl = nla_data(tb[TCA_RED_PARMS]); - if (!red_check_params(ctl->qth_min, ctl->qth_max, ctl->Wlog)) + if (!red_check_params(ctl->qth_min, ctl->qth_max, ctl->Wlog, ctl->Scell_log)) return -EINVAL; err = red_get_flags(ctl->flags, TC_RED_HISTORIC_FLAGS, --- linux-azure-5.8-5.8.0.orig/net/sched/sch_sfq.c +++ linux-azure-5.8-5.8.0/net/sched/sch_sfq.c @@ -647,7 +647,7 @@ } if (ctl_v1 && !red_check_params(ctl_v1->qth_min, ctl_v1->qth_max, - ctl_v1->Wlog)) + ctl_v1->Wlog, ctl_v1->Scell_log)) return -EINVAL; if (ctl_v1 && ctl_v1->qth_min) { p = kmalloc(sizeof(*p), GFP_KERNEL); --- linux-azure-5.8-5.8.0.orig/net/sched/sch_taprio.c +++ linux-azure-5.8-5.8.0/net/sched/sch_taprio.c @@ -777,9 +777,11 @@ [TCA_TAPRIO_ATTR_TXTIME_DELAY] = { .type = NLA_U32 }, }; -static int fill_sched_entry(struct nlattr **tb, struct sched_entry *entry, +static int fill_sched_entry(struct taprio_sched *q, struct nlattr **tb, + struct sched_entry *entry, struct netlink_ext_ack *extack) { + int min_duration = length_to_duration(q, ETH_ZLEN); u32 interval = 0; if (tb[TCA_TAPRIO_SCHED_ENTRY_CMD]) @@ -794,7 +796,10 @@ interval = nla_get_u32( tb[TCA_TAPRIO_SCHED_ENTRY_INTERVAL]); - if (interval == 0) { + /* The interval should allow at least the minimum ethernet + * frame to go out. + */ + if (interval < min_duration) { NL_SET_ERR_MSG(extack, "Invalid interval for schedule entry"); return -EINVAL; } @@ -804,8 +809,9 @@ return 0; } -static int parse_sched_entry(struct nlattr *n, struct sched_entry *entry, - int index, struct netlink_ext_ack *extack) +static int parse_sched_entry(struct taprio_sched *q, struct nlattr *n, + struct sched_entry *entry, int index, + struct netlink_ext_ack *extack) { struct nlattr *tb[TCA_TAPRIO_SCHED_ENTRY_MAX + 1] = { }; int err; @@ -819,10 +825,10 @@ entry->index = index; - return fill_sched_entry(tb, entry, extack); + return fill_sched_entry(q, tb, entry, extack); } -static int parse_sched_list(struct nlattr *list, +static int parse_sched_list(struct taprio_sched *q, struct nlattr *list, struct sched_gate_list *sched, struct netlink_ext_ack *extack) { @@ -847,7 +853,7 @@ return -ENOMEM; } - err = parse_sched_entry(n, entry, i, extack); + err = parse_sched_entry(q, n, entry, i, extack); if (err < 0) { kfree(entry); return err; @@ -862,7 +868,7 @@ return i; } -static int parse_taprio_schedule(struct nlattr **tb, +static int parse_taprio_schedule(struct taprio_sched *q, struct nlattr **tb, struct sched_gate_list *new, struct netlink_ext_ack *extack) { @@ -883,8 +889,8 @@ new->cycle_time = nla_get_s64(tb[TCA_TAPRIO_ATTR_SCHED_CYCLE_TIME]); if (tb[TCA_TAPRIO_ATTR_SCHED_ENTRY_LIST]) - err = parse_sched_list( - tb[TCA_TAPRIO_ATTR_SCHED_ENTRY_LIST], new, extack); + err = parse_sched_list(q, tb[TCA_TAPRIO_ATTR_SCHED_ENTRY_LIST], + new, extack); if (err < 0) return err; @@ -1177,9 +1183,27 @@ spin_unlock(&q->current_entry_lock); } -static void taprio_sched_to_offload(struct taprio_sched *q, +static u32 tc_map_to_queue_mask(struct net_device *dev, u32 tc_mask) +{ + u32 i, queue_mask = 0; + + for (i = 0; i < dev->num_tc; i++) { + u32 offset, count; + + if (!(tc_mask & BIT(i))) + continue; + + offset = dev->tc_to_txq[i].offset; + count = dev->tc_to_txq[i].count; + + queue_mask |= GENMASK(offset + count - 1, offset); + } + + return queue_mask; +} + +static void taprio_sched_to_offload(struct net_device *dev, struct sched_gate_list *sched, - const struct tc_mqprio_qopt *mqprio, struct tc_taprio_qopt_offload *offload) { struct sched_entry *entry; @@ -1194,7 +1218,8 @@ e->command = entry->command; e->interval = entry->interval; - e->gate_mask = entry->gate_mask; + e->gate_mask = tc_map_to_queue_mask(dev, entry->gate_mask); + i++; } @@ -1202,7 +1227,6 @@ } static int taprio_enable_offload(struct net_device *dev, - struct tc_mqprio_qopt *mqprio, struct taprio_sched *q, struct sched_gate_list *sched, struct netlink_ext_ack *extack) @@ -1224,7 +1248,7 @@ return -ENOMEM; } offload->enable = 1; - taprio_sched_to_offload(q, sched, mqprio, offload); + taprio_sched_to_offload(dev, sched, offload); err = ops->ndo_setup_tc(dev, TC_SETUP_QDISC_TAPRIO, offload); if (err < 0) { @@ -1456,7 +1480,7 @@ goto free_sched; } - err = parse_taprio_schedule(tb, new_admin, extack); + err = parse_taprio_schedule(q, tb, new_admin, extack); if (err < 0) goto free_sched; @@ -1486,7 +1510,7 @@ } if (FULL_OFFLOAD_IS_ENABLED(q->flags)) - err = taprio_enable_offload(dev, mqprio, q, new_admin, extack); + err = taprio_enable_offload(dev, q, new_admin, extack); else err = taprio_disable_offload(dev, q, extack); if (err) @@ -1573,6 +1597,22 @@ return err; } +static void taprio_reset(struct Qdisc *sch) +{ + struct taprio_sched *q = qdisc_priv(sch); + struct net_device *dev = qdisc_dev(sch); + int i; + + hrtimer_cancel(&q->advance_timer); + if (q->qdiscs) { + for (i = 0; i < dev->num_tx_queues; i++) + if (q->qdiscs[i]) + qdisc_reset(q->qdiscs[i]); + } + sch->qstats.backlog = 0; + sch->q.qlen = 0; +} + static void taprio_destroy(struct Qdisc *sch) { struct taprio_sched *q = qdisc_priv(sch); @@ -1583,12 +1623,11 @@ list_del(&q->taprio_list); spin_unlock(&taprio_list_lock); - hrtimer_cancel(&q->advance_timer); taprio_disable_offload(dev, q, NULL); if (q->qdiscs) { - for (i = 0; i < dev->num_tx_queues && q->qdiscs[i]; i++) + for (i = 0; i < dev->num_tx_queues; i++) qdisc_put(q->qdiscs[i]); kfree(q->qdiscs); @@ -1930,6 +1969,7 @@ .init = taprio_init, .change = taprio_change, .destroy = taprio_destroy, + .reset = taprio_reset, .peek = taprio_peek, .dequeue = taprio_dequeue, .enqueue = taprio_enqueue, --- linux-azure-5.8-5.8.0.orig/net/sctp/auth.c +++ linux-azure-5.8-5.8.0/net/sctp/auth.c @@ -494,6 +494,7 @@ out_err: /* Clean up any successful allocations */ sctp_auth_destroy_hmacs(ep->auth_hmacs); + ep->auth_hmacs = NULL; return -ENOMEM; } --- linux-azure-5.8-5.8.0.orig/net/sctp/input.c +++ linux-azure-5.8-5.8.0/net/sctp/input.c @@ -449,7 +449,7 @@ else { if (!mod_timer(&t->proto_unreach_timer, jiffies + (HZ/20))) - sctp_association_hold(asoc); + sctp_transport_hold(t); } } else { struct net *net = sock_net(sk); @@ -458,7 +458,7 @@ "encountered!\n", __func__); if (del_timer(&t->proto_unreach_timer)) - sctp_association_put(asoc); + sctp_transport_put(t); sctp_do_sm(net, SCTP_EVENT_T_OTHER, SCTP_ST_OTHER(SCTP_EVENT_ICMP_PROTO_UNREACH), --- linux-azure-5.8-5.8.0.orig/net/sctp/proc.c +++ linux-azure-5.8-5.8.0/net/sctp/proc.c @@ -215,6 +215,12 @@ { struct sctp_ht_iter *iter = seq->private; + if (v && v != SEQ_START_TOKEN) { + struct sctp_transport *transport = v; + + sctp_transport_put(transport); + } + sctp_transport_walk_stop(&iter->hti); } @@ -222,6 +228,12 @@ { struct sctp_ht_iter *iter = seq->private; + if (v && v != SEQ_START_TOKEN) { + struct sctp_transport *transport = v; + + sctp_transport_put(transport); + } + ++*pos; return sctp_transport_get_next(seq_file_net(seq), &iter->hti); @@ -277,8 +289,6 @@ sk->sk_rcvbuf); seq_printf(seq, "\n"); - sctp_transport_put(transport); - return 0; } @@ -354,8 +364,6 @@ seq_printf(seq, "\n"); } - sctp_transport_put(transport); - return 0; } --- linux-azure-5.8-5.8.0.orig/net/sctp/sm_sideeffect.c +++ linux-azure-5.8-5.8.0/net/sctp/sm_sideeffect.c @@ -419,7 +419,7 @@ /* Try again later. */ if (!mod_timer(&transport->proto_unreach_timer, jiffies + (HZ/20))) - sctp_association_hold(asoc); + sctp_transport_hold(transport); goto out_unlock; } @@ -435,7 +435,7 @@ out_unlock: bh_unlock_sock(sk); - sctp_association_put(asoc); + sctp_transport_put(transport); } /* Handle the timeout of the RE-CONFIG timer. */ @@ -1601,12 +1601,12 @@ break; case SCTP_CMD_INIT_FAILED: - sctp_cmd_init_failed(commands, asoc, cmd->obj.u32); + sctp_cmd_init_failed(commands, asoc, cmd->obj.u16); break; case SCTP_CMD_ASSOC_FAILED: sctp_cmd_assoc_failed(commands, asoc, event_type, - subtype, chunk, cmd->obj.u32); + subtype, chunk, cmd->obj.u16); break; case SCTP_CMD_INIT_COUNTER_INC: --- linux-azure-5.8-5.8.0.orig/net/sctp/socket.c +++ linux-azure-5.8-5.8.0/net/sctp/socket.c @@ -1325,7 +1325,7 @@ kaddrs = memdup_user(addrs, addrs_size); if (IS_ERR(kaddrs)) - return PTR_ERR(kaddrs); + return PTR_ERR(kaddrs) == -EFAULT ? -EINVAL : PTR_ERR(kaddrs); /* Allow security module to validate connectx addresses. */ err = security_sctp_bind_connect(sk, SCTP_SOCKOPT_CONNECTX, @@ -8297,8 +8297,6 @@ pr_debug("%s: begins, snum:%d\n", __func__, snum); - local_bh_disable(); - if (snum == 0) { /* Search for an available port. */ int low, high, remaining, index; @@ -8316,20 +8314,21 @@ continue; index = sctp_phashfn(net, rover); head = &sctp_port_hashtable[index]; - spin_lock(&head->lock); + spin_lock_bh(&head->lock); sctp_for_each_hentry(pp, &head->chain) if ((pp->port == rover) && net_eq(net, pp->net)) goto next; break; next: - spin_unlock(&head->lock); + spin_unlock_bh(&head->lock); + cond_resched(); } while (--remaining > 0); /* Exhausted local port range during search? */ ret = 1; if (remaining <= 0) - goto fail; + return ret; /* OK, here is the one we will use. HEAD (the port * hash table list entry) is non-NULL and we hold it's @@ -8344,7 +8343,7 @@ * port iterator, pp being NULL. */ head = &sctp_port_hashtable[sctp_phashfn(net, snum)]; - spin_lock(&head->lock); + spin_lock_bh(&head->lock); sctp_for_each_hentry(pp, &head->chain) { if ((pp->port == snum) && net_eq(pp->net, net)) goto pp_found; @@ -8444,10 +8443,7 @@ ret = 0; fail_unlock: - spin_unlock(&head->lock); - -fail: - local_bh_enable(); + spin_unlock_bh(&head->lock); return ret; } @@ -9461,13 +9457,10 @@ static inline void sctp_copy_descendant(struct sock *sk_to, const struct sock *sk_from) { - int ancestor_size = sizeof(struct inet_sock) + - sizeof(struct sctp_sock) - - offsetof(struct sctp_sock, pd_lobby); - - if (sk_from->sk_family == PF_INET6) - ancestor_size += sizeof(struct ipv6_pinfo); + size_t ancestor_size = sizeof(struct inet_sock); + ancestor_size += sk_from->sk_prot->obj_size; + ancestor_size -= offsetof(struct sctp_sock, pd_lobby); __inet_sk_copy_descendant(sk_to, sk_from, ancestor_size); } --- linux-azure-5.8-5.8.0.orig/net/sctp/stream.c +++ linux-azure-5.8-5.8.0/net/sctp/stream.c @@ -88,12 +88,13 @@ int ret; if (outcnt <= stream->outcnt) - return 0; + goto out; ret = genradix_prealloc(&stream->out, outcnt, gfp); if (ret) return ret; +out: stream->outcnt = outcnt; return 0; } @@ -104,12 +105,13 @@ int ret; if (incnt <= stream->incnt) - return 0; + goto out; ret = genradix_prealloc(&stream->in, incnt, gfp); if (ret) return ret; +out: stream->incnt = incnt; return 0; } --- linux-azure-5.8-5.8.0.orig/net/sctp/transport.c +++ linux-azure-5.8-5.8.0/net/sctp/transport.c @@ -133,7 +133,7 @@ /* Delete the ICMP proto unreachable timer if it's active. */ if (del_timer(&transport->proto_unreach_timer)) - sctp_association_put(transport->asoc); + sctp_transport_put(transport); sctp_transport_put(transport); } --- linux-azure-5.8-5.8.0.orig/net/smc/smc_core.c +++ linux-azure-5.8-5.8.0/net/smc/smc_core.c @@ -1595,7 +1595,7 @@ return rc; } -#define SMCD_DMBE_SIZES 7 /* 0 -> 16KB, 1 -> 32KB, .. 6 -> 1MB */ +#define SMCD_DMBE_SIZES 6 /* 0 -> 16KB, 1 -> 32KB, .. 6 -> 1MB */ static struct smc_buf_desc *smcd_new_buf_create(struct smc_link_group *lgr, bool is_dmb, int bufsize) --- linux-azure-5.8-5.8.0.orig/net/smc/smc_diag.c +++ linux-azure-5.8-5.8.0/net/smc/smc_diag.c @@ -170,13 +170,15 @@ (req->diag_ext & (1 << (SMC_DIAG_DMBINFO - 1))) && !list_empty(&smc->conn.lgr->list)) { struct smc_connection *conn = &smc->conn; - struct smcd_diag_dmbinfo dinfo = { - .linkid = *((u32 *)conn->lgr->id), - .peer_gid = conn->lgr->peer_gid, - .my_gid = conn->lgr->smcd->local_gid, - .token = conn->rmb_desc->token, - .peer_token = conn->peer_token - }; + struct smcd_diag_dmbinfo dinfo; + + memset(&dinfo, 0, sizeof(dinfo)); + + dinfo.linkid = *((u32 *)conn->lgr->id); + dinfo.peer_gid = conn->lgr->peer_gid; + dinfo.my_gid = conn->lgr->smcd->local_gid; + dinfo.token = conn->rmb_desc->token; + dinfo.peer_token = conn->peer_token; if (nla_put(skb, SMC_DIAG_DMBINFO, sizeof(dinfo), &dinfo) < 0) goto errout; --- linux-azure-5.8-5.8.0.orig/net/smc/smc_ib.c +++ linux-azure-5.8-5.8.0/net/smc/smc_ib.c @@ -198,9 +198,9 @@ rcu_read_lock(); ndev = rdma_read_gid_attr_ndev_rcu(attr); if (!IS_ERR(ndev) && - ((!vlan_id && !is_vlan_dev(attr->ndev)) || - (vlan_id && is_vlan_dev(attr->ndev) && - vlan_dev_vlan_id(attr->ndev) == vlan_id)) && + ((!vlan_id && !is_vlan_dev(ndev)) || + (vlan_id && is_vlan_dev(ndev) && + vlan_dev_vlan_id(ndev) == vlan_id)) && attr->gid_type == IB_GID_TYPE_ROCE) { rcu_read_unlock(); if (gid) --- linux-azure-5.8-5.8.0.orig/net/smc/smc_llc.c +++ linux-azure-5.8-5.8.0/net/smc/smc_llc.c @@ -233,8 +233,6 @@ default: flow->type = SMC_LLC_FLOW_NONE; } - if (qentry == lgr->delayed_event) - lgr->delayed_event = NULL; smc_llc_flow_qentry_set(flow, qentry); spin_unlock_bh(&lgr->llc_flow_lock); return true; @@ -1590,13 +1588,12 @@ struct smc_llc_qentry *qentry; if (!lgr->llc_flow_lcl.type && lgr->delayed_event) { - if (smc_link_usable(lgr->delayed_event->link)) { - smc_llc_event_handler(lgr->delayed_event); - } else { - qentry = lgr->delayed_event; - lgr->delayed_event = NULL; + qentry = lgr->delayed_event; + lgr->delayed_event = NULL; + if (smc_link_usable(qentry->link)) + smc_llc_event_handler(qentry); + else kfree(qentry); - } } again: --- linux-azure-5.8-5.8.0.orig/net/socket.c +++ linux-azure-5.8-5.8.0/net/socket.c @@ -500,7 +500,7 @@ if (f.file) { sock = sock_from_file(f.file, err); if (likely(sock)) { - *fput_needed = f.flags; + *fput_needed = f.flags & FDPUT_FPUT; return sock; } fdput(f); --- linux-azure-5.8-5.8.0.orig/net/sunrpc/addr.c +++ linux-azure-5.8-5.8.0/net/sunrpc/addr.c @@ -185,7 +185,7 @@ scope_id = dev->ifindex; dev_put(dev); } else { - if (kstrtou32(p, 10, &scope_id) == 0) { + if (kstrtou32(p, 10, &scope_id) != 0) { kfree(p); return 0; } --- linux-azure-5.8-5.8.0.orig/net/sunrpc/auth_gss/auth_gss.c +++ linux-azure-5.8-5.8.0/net/sunrpc/auth_gss/auth_gss.c @@ -29,6 +29,7 @@ #include #include +#include "auth_gss_internal.h" #include "../netns.h" #include @@ -125,35 +126,6 @@ clear_bit(RPCAUTH_CRED_NEW, &cred->cr_flags); } -static const void * -simple_get_bytes(const void *p, const void *end, void *res, size_t len) -{ - const void *q = (const void *)((const char *)p + len); - if (unlikely(q > end || q < p)) - return ERR_PTR(-EFAULT); - memcpy(res, p, len); - return q; -} - -static inline const void * -simple_get_netobj(const void *p, const void *end, struct xdr_netobj *dest) -{ - const void *q; - unsigned int len; - - p = simple_get_bytes(p, end, &len, sizeof(len)); - if (IS_ERR(p)) - return p; - q = (const void *)((const char *)p + len); - if (unlikely(q > end || q < p)) - return ERR_PTR(-EFAULT); - dest->data = kmemdup(p, len, GFP_NOFS); - if (unlikely(dest->data == NULL)) - return ERR_PTR(-ENOMEM); - dest->len = len; - return q; -} - static struct gss_cl_ctx * gss_cred_get_ctx(struct rpc_cred *cred) { --- linux-azure-5.8-5.8.0.orig/net/sunrpc/auth_gss/auth_gss_internal.h +++ linux-azure-5.8-5.8.0/net/sunrpc/auth_gss/auth_gss_internal.h @@ -0,0 +1,45 @@ +// SPDX-License-Identifier: BSD-3-Clause +/* + * linux/net/sunrpc/auth_gss/auth_gss_internal.h + * + * Internal definitions for RPCSEC_GSS client authentication + * + * Copyright (c) 2000 The Regents of the University of Michigan. + * All rights reserved. + * + */ +#include +#include +#include + +static inline const void * +simple_get_bytes(const void *p, const void *end, void *res, size_t len) +{ + const void *q = (const void *)((const char *)p + len); + if (unlikely(q > end || q < p)) + return ERR_PTR(-EFAULT); + memcpy(res, p, len); + return q; +} + +static inline const void * +simple_get_netobj(const void *p, const void *end, struct xdr_netobj *dest) +{ + const void *q; + unsigned int len; + + p = simple_get_bytes(p, end, &len, sizeof(len)); + if (IS_ERR(p)) + return p; + q = (const void *)((const char *)p + len); + if (unlikely(q > end || q < p)) + return ERR_PTR(-EFAULT); + if (len) { + dest->data = kmemdup(p, len, GFP_NOFS); + if (unlikely(dest->data == NULL)) + return ERR_PTR(-ENOMEM); + } else + dest->data = NULL; + dest->len = len; + return q; +} --- linux-azure-5.8-5.8.0.orig/net/sunrpc/auth_gss/gss_krb5_mech.c +++ linux-azure-5.8-5.8.0/net/sunrpc/auth_gss/gss_krb5_mech.c @@ -21,6 +21,8 @@ #include #include +#include "auth_gss_internal.h" + #if IS_ENABLED(CONFIG_SUNRPC_DEBUG) # define RPCDBG_FACILITY RPCDBG_AUTH #endif @@ -164,35 +166,6 @@ return NULL; } -static const void * -simple_get_bytes(const void *p, const void *end, void *res, int len) -{ - const void *q = (const void *)((const char *)p + len); - if (unlikely(q > end || q < p)) - return ERR_PTR(-EFAULT); - memcpy(res, p, len); - return q; -} - -static const void * -simple_get_netobj(const void *p, const void *end, struct xdr_netobj *res) -{ - const void *q; - unsigned int len; - - p = simple_get_bytes(p, end, &len, sizeof(len)); - if (IS_ERR(p)) - return p; - q = (const void *)((const char *)p + len); - if (unlikely(q > end || q < p)) - return ERR_PTR(-EFAULT); - res->data = kmemdup(p, len, GFP_NOFS); - if (unlikely(res->data == NULL)) - return ERR_PTR(-ENOMEM); - res->len = len; - return q; -} - static inline const void * get_key(const void *p, const void *end, struct krb5_ctx *ctx, struct crypto_sync_skcipher **res) --- linux-azure-5.8-5.8.0.orig/net/sunrpc/auth_gss/gss_krb5_wrap.c +++ linux-azure-5.8-5.8.0/net/sunrpc/auth_gss/gss_krb5_wrap.c @@ -584,7 +584,7 @@ buf->head[0].iov_len); memmove(ptr, ptr + GSS_KRB5_TOK_HDR_LEN + headskip, movelen); buf->head[0].iov_len -= GSS_KRB5_TOK_HDR_LEN + headskip; - buf->len = len - GSS_KRB5_TOK_HDR_LEN + headskip; + buf->len = len - (GSS_KRB5_TOK_HDR_LEN + headskip); /* Trim off the trailing "extra count" and checksum blob */ xdr_buf_trim(buf, ec + GSS_KRB5_TOK_HDR_LEN + tailskip); --- linux-azure-5.8-5.8.0.orig/net/sunrpc/auth_gss/svcauth_gss.c +++ linux-azure-5.8-5.8.0/net/sunrpc/auth_gss/svcauth_gss.c @@ -958,7 +958,6 @@ maj_stat = gss_unwrap(ctx, 0, priv_len, buf); pad = priv_len - buf->len; - buf->len -= pad; /* The upper layers assume the buffer is aligned on 4-byte boundaries. * In the krb5p case, at least, the data ends up offset, so we need to * move it around. */ @@ -1105,9 +1104,9 @@ struct gssp_in_token *in_token) { struct kvec *argv = &rqstp->rq_arg.head[0]; - unsigned int page_base, length; - int pages, i, res; - size_t inlen; + unsigned int length, pgto_offs, pgfrom_offs; + int pages, i, res, pgto, pgfrom; + size_t inlen, to_offs, from_offs; res = gss_read_common_verf(gc, argv, authp, in_handle); if (res) @@ -1135,17 +1134,24 @@ memcpy(page_address(in_token->pages[0]), argv->iov_base, length); inlen -= length; - i = 1; - page_base = rqstp->rq_arg.page_base; + to_offs = length; + from_offs = rqstp->rq_arg.page_base; while (inlen) { - length = min_t(unsigned int, inlen, PAGE_SIZE); - memcpy(page_address(in_token->pages[i]), - page_address(rqstp->rq_arg.pages[i]) + page_base, + pgto = to_offs >> PAGE_SHIFT; + pgfrom = from_offs >> PAGE_SHIFT; + pgto_offs = to_offs & ~PAGE_MASK; + pgfrom_offs = from_offs & ~PAGE_MASK; + + length = min_t(unsigned int, inlen, + min_t(unsigned int, PAGE_SIZE - pgto_offs, + PAGE_SIZE - pgfrom_offs)); + memcpy(page_address(in_token->pages[pgto]) + pgto_offs, + page_address(rqstp->rq_arg.pages[pgfrom]) + pgfrom_offs, length); + to_offs += length; + from_offs += length; inlen -= length; - page_base = 0; - i++; } return 0; } --- linux-azure-5.8-5.8.0.orig/net/sunrpc/debugfs.c +++ linux-azure-5.8-5.8.0/net/sunrpc/debugfs.c @@ -128,13 +128,13 @@ return 0; len = snprintf(name, sizeof(name), "../../rpc_xprt/%s", xprt->debugfs->d_name.name); - if (len > sizeof(name)) + if (len >= sizeof(name)) return -1; if (*nump == 0) strcpy(link, "xprt"); else { len = snprintf(link, sizeof(link), "xprt%d", *nump); - if (len > sizeof(link)) + if (len >= sizeof(link)) return -1; } debugfs_create_symlink(link, clnt->cl_debugfs, name); --- linux-azure-5.8-5.8.0.orig/net/sunrpc/rpcb_clnt.c +++ linux-azure-5.8-5.8.0/net/sunrpc/rpcb_clnt.c @@ -982,8 +982,8 @@ p = xdr_inline_decode(xdr, len); if (unlikely(p == NULL)) goto out_fail; - dprintk("RPC: %5u RPCB_%s reply: %s\n", req->rq_task->tk_pid, - req->rq_task->tk_msg.rpc_proc->p_name, (char *)p); + dprintk("RPC: %5u RPCB_%s reply: %*pE\n", req->rq_task->tk_pid, + req->rq_task->tk_msg.rpc_proc->p_name, len, (char *)p); if (rpc_uaddr2sockaddr(req->rq_xprt->xprt_net, (char *)p, len, sap, sizeof(address)) == 0) --- linux-azure-5.8-5.8.0.orig/net/sunrpc/sched.c +++ linux-azure-5.8-5.8.0/net/sunrpc/sched.c @@ -700,6 +700,23 @@ EXPORT_SYMBOL_GPL(rpc_wake_up_next); /** + * rpc_wake_up_locked - wake up all rpc_tasks + * @queue: rpc_wait_queue on which the tasks are sleeping + * + */ +static void rpc_wake_up_locked(struct rpc_wait_queue *queue) +{ + struct rpc_task *task; + + for (;;) { + task = __rpc_find_next_queued(queue); + if (task == NULL) + break; + rpc_wake_up_task_queue_locked(queue, task); + } +} + +/** * rpc_wake_up - wake up all rpc_tasks * @queue: rpc_wait_queue on which the tasks are sleeping * @@ -707,25 +724,28 @@ */ void rpc_wake_up(struct rpc_wait_queue *queue) { - struct list_head *head; - spin_lock(&queue->lock); - head = &queue->tasks[queue->maxpriority]; + rpc_wake_up_locked(queue); + spin_unlock(&queue->lock); +} +EXPORT_SYMBOL_GPL(rpc_wake_up); + +/** + * rpc_wake_up_status_locked - wake up all rpc_tasks and set their status value. + * @queue: rpc_wait_queue on which the tasks are sleeping + * @status: status value to set + */ +static void rpc_wake_up_status_locked(struct rpc_wait_queue *queue, int status) +{ + struct rpc_task *task; + for (;;) { - while (!list_empty(head)) { - struct rpc_task *task; - task = list_first_entry(head, - struct rpc_task, - u.tk_wait.list); - rpc_wake_up_task_queue_locked(queue, task); - } - if (head == &queue->tasks[0]) + task = __rpc_find_next_queued(queue); + if (task == NULL) break; - head--; + rpc_wake_up_task_queue_set_status_locked(queue, task, status); } - spin_unlock(&queue->lock); } -EXPORT_SYMBOL_GPL(rpc_wake_up); /** * rpc_wake_up_status - wake up all rpc_tasks and set their status value. @@ -736,23 +756,8 @@ */ void rpc_wake_up_status(struct rpc_wait_queue *queue, int status) { - struct list_head *head; - spin_lock(&queue->lock); - head = &queue->tasks[queue->maxpriority]; - for (;;) { - while (!list_empty(head)) { - struct rpc_task *task; - task = list_first_entry(head, - struct rpc_task, - u.tk_wait.list); - task->tk_status = status; - rpc_wake_up_task_queue_locked(queue, task); - } - if (head == &queue->tasks[0]) - break; - head--; - } + rpc_wake_up_status_locked(queue, status); spin_unlock(&queue->lock); } EXPORT_SYMBOL_GPL(rpc_wake_up_status); --- linux-azure-5.8-5.8.0.orig/net/sunrpc/svcsock.c +++ linux-azure-5.8-5.8.0/net/sunrpc/svcsock.c @@ -228,7 +228,7 @@ static void svc_flush_bvec(const struct bio_vec *bvec, size_t size, size_t seek) { struct bvec_iter bi = { - .bi_size = size, + .bi_size = size + seek, }; struct bio_vec bv; @@ -1062,6 +1062,91 @@ return 0; /* record not complete */ } +static int svc_tcp_send_kvec(struct socket *sock, const struct kvec *vec, + int flags) +{ + return kernel_sendpage(sock, virt_to_page(vec->iov_base), + offset_in_page(vec->iov_base), + vec->iov_len, flags); +} + +/* + * kernel_sendpage() is used exclusively to reduce the number of + * copy operations in this path. Therefore the caller must ensure + * that the pages backing @xdr are unchanging. + * + * In addition, the logic assumes that * .bv_len is never larger + * than PAGE_SIZE. + */ +static int svc_tcp_sendmsg(struct socket *sock, struct msghdr *msg, + struct xdr_buf *xdr, rpc_fraghdr marker, + unsigned int *sentp) +{ + const struct kvec *head = xdr->head; + const struct kvec *tail = xdr->tail; + struct kvec rm = { + .iov_base = &marker, + .iov_len = sizeof(marker), + }; + int flags, ret; + + *sentp = 0; + xdr_alloc_bvec(xdr, GFP_KERNEL); + + msg->msg_flags = MSG_MORE; + ret = kernel_sendmsg(sock, msg, &rm, 1, rm.iov_len); + if (ret < 0) + return ret; + *sentp += ret; + if (ret != rm.iov_len) + return -EAGAIN; + + flags = head->iov_len < xdr->len ? MSG_MORE | MSG_SENDPAGE_NOTLAST : 0; + ret = svc_tcp_send_kvec(sock, head, flags); + if (ret < 0) + return ret; + *sentp += ret; + if (ret != head->iov_len) + goto out; + + if (xdr->page_len) { + unsigned int offset, len, remaining; + struct bio_vec *bvec; + + bvec = xdr->bvec + (xdr->page_base >> PAGE_SHIFT); + offset = offset_in_page(xdr->page_base); + remaining = xdr->page_len; + flags = MSG_MORE | MSG_SENDPAGE_NOTLAST; + while (remaining > 0) { + if (remaining <= PAGE_SIZE && tail->iov_len == 0) + flags = 0; + + len = min(remaining, bvec->bv_len - offset); + ret = kernel_sendpage(sock, bvec->bv_page, + bvec->bv_offset + offset, + len, flags); + if (ret < 0) + return ret; + *sentp += ret; + if (ret != len) + goto out; + remaining -= len; + offset = 0; + bvec++; + } + } + + if (tail->iov_len) { + ret = svc_tcp_send_kvec(sock, tail, 0); + if (ret < 0) + return ret; + *sentp += ret; + } + +out: + return 0; +} + /** * svc_tcp_sendto - Send out a reply on a TCP socket * @rqstp: completed svc_rqst @@ -1089,7 +1174,7 @@ mutex_lock(&xprt->xpt_mutex); if (svc_xprt_is_dead(xprt)) goto out_notconn; - err = xprt_sock_sendmsg(svsk->sk_sock, &msg, xdr, 0, marker, &sent); + err = svc_tcp_sendmsg(svsk->sk_sock, &msg, xdr, marker, &sent); xdr_free_bvec(xdr); trace_svcsock_tcp_send(xprt, err < 0 ? err : sent); if (err < 0 || sent != (xdr->len + sizeof(marker))) --- linux-azure-5.8-5.8.0.orig/net/sunrpc/sysctl.c +++ linux-azure-5.8-5.8.0/net/sunrpc/sysctl.c @@ -70,7 +70,13 @@ return 0; } len = svc_print_xprts(tmpbuf, sizeof(tmpbuf)); - return memory_read_from_buffer(buffer, *lenp, ppos, tmpbuf, len); + *lenp = memory_read_from_buffer(buffer, *lenp, ppos, tmpbuf, len); + + if (*lenp < 0) { + *lenp = 0; + return -EINVAL; + } + return 0; } static int --- linux-azure-5.8-5.8.0.orig/net/sunrpc/xprt.c +++ linux-azure-5.8-5.8.0/net/sunrpc/xprt.c @@ -151,31 +151,64 @@ } EXPORT_SYMBOL_GPL(xprt_unregister_transport); +static void +xprt_class_release(const struct xprt_class *t) +{ + module_put(t->owner); +} + +static const struct xprt_class * +xprt_class_find_by_netid_locked(const char *netid) +{ + const struct xprt_class *t; + unsigned int i; + + list_for_each_entry(t, &xprt_list, list) { + for (i = 0; t->netid[i][0] != '\0'; i++) { + if (strcmp(t->netid[i], netid) != 0) + continue; + if (!try_module_get(t->owner)) + continue; + return t; + } + } + return NULL; +} + +static const struct xprt_class * +xprt_class_find_by_netid(const char *netid) +{ + const struct xprt_class *t; + + spin_lock(&xprt_list_lock); + t = xprt_class_find_by_netid_locked(netid); + if (!t) { + spin_unlock(&xprt_list_lock); + request_module("rpc%s", netid); + spin_lock(&xprt_list_lock); + t = xprt_class_find_by_netid_locked(netid); + } + spin_unlock(&xprt_list_lock); + return t; +} + /** * xprt_load_transport - load a transport implementation - * @transport_name: transport to load + * @netid: transport to load * * Returns: * 0: transport successfully loaded * -ENOENT: transport module not available */ -int xprt_load_transport(const char *transport_name) +int xprt_load_transport(const char *netid) { - struct xprt_class *t; - int result; + const struct xprt_class *t; - result = 0; - spin_lock(&xprt_list_lock); - list_for_each_entry(t, &xprt_list, list) { - if (strcmp(t->name, transport_name) == 0) { - spin_unlock(&xprt_list_lock); - goto out; - } - } - spin_unlock(&xprt_list_lock); - result = request_module("xprt%s", transport_name); -out: - return result; + t = xprt_class_find_by_netid(netid); + if (!t) + return -ENOENT; + xprt_class_release(t); + return 0; } EXPORT_SYMBOL_GPL(xprt_load_transport); @@ -1511,10 +1544,13 @@ { struct rpc_rqst *next, *req = task->tk_rqstp; struct rpc_xprt *xprt = req->rq_xprt; - int status; + int counter, status; spin_lock(&xprt->queue_lock); + counter = 0; while (!list_empty(&xprt->xmit_queue)) { + if (++counter == 20) + break; next = list_first_entry(&xprt->xmit_queue, struct rpc_rqst, rq_xmit); xprt_pin_rqst(next); @@ -1522,7 +1558,6 @@ status = xprt_request_transmit(next, task); if (status == -EBADMSG && next != req) status = 0; - cond_resched(); spin_lock(&xprt->queue_lock); xprt_unpin_rqst(next); if (status == 0) { --- linux-azure-5.8-5.8.0.orig/net/sunrpc/xprtrdma/module.c +++ linux-azure-5.8-5.8.0/net/sunrpc/xprtrdma/module.c @@ -24,6 +24,7 @@ MODULE_LICENSE("Dual BSD/GPL"); MODULE_ALIAS("svcrdma"); MODULE_ALIAS("xprtrdma"); +MODULE_ALIAS("rpcrdma6"); static void __exit rpc_rdma_cleanup(void) { --- linux-azure-5.8-5.8.0.orig/net/sunrpc/xprtrdma/rpc_rdma.c +++ linux-azure-5.8-5.8.0/net/sunrpc/xprtrdma/rpc_rdma.c @@ -179,6 +179,31 @@ r_xprt->rx_ep->re_max_inline_recv; } +/* ACL likes to be lazy in allocating pages. For TCP, these + * pages can be allocated during receive processing. Not true + * for RDMA, which must always provision receive buffers + * up front. + */ +static noinline int +rpcrdma_alloc_sparse_pages(struct xdr_buf *buf) +{ + struct page **ppages; + int len; + + len = buf->page_len; + ppages = buf->pages + (buf->page_base >> PAGE_SHIFT); + while (len > 0) { + if (!*ppages) + *ppages = alloc_page(GFP_NOWAIT | __GFP_NOWARN); + if (!*ppages) + return -ENOBUFS; + ppages++; + len -= PAGE_SIZE; + } + + return 0; +} + /* Split @vec on page boundaries into SGEs. FMR registers pages, not * a byte range. Other modes coalesce these SGEs into a single MR * when they can. @@ -233,15 +258,6 @@ ppages = xdrbuf->pages + (xdrbuf->page_base >> PAGE_SHIFT); page_base = offset_in_page(xdrbuf->page_base); while (len) { - /* ACL likes to be lazy in allocating pages - ACLs - * are small by default but can get huge. - */ - if (unlikely(xdrbuf->flags & XDRBUF_SPARSE_PAGES)) { - if (!*ppages) - *ppages = alloc_page(GFP_NOWAIT | __GFP_NOWARN); - if (!*ppages) - return -ENOBUFS; - } seg->mr_page = *ppages; seg->mr_offset = (char *)page_base; seg->mr_len = min_t(u32, PAGE_SIZE - page_base, len); @@ -875,6 +891,12 @@ __be32 *p; int ret; + if (unlikely(rqst->rq_rcv_buf.flags & XDRBUF_SPARSE_PAGES)) { + ret = rpcrdma_alloc_sparse_pages(&rqst->rq_rcv_buf); + if (ret) + return ret; + } + rpcrdma_set_xdrlen(&req->rl_hdrbuf, 0); xdr_init_encode(xdr, &req->rl_hdrbuf, rdmab_data(req->rl_rdmabuf), rqst); --- linux-azure-5.8-5.8.0.orig/net/sunrpc/xprtrdma/svc_rdma_recvfrom.c +++ linux-azure-5.8-5.8.0/net/sunrpc/xprtrdma/svc_rdma_recvfrom.c @@ -265,6 +265,8 @@ { struct svc_rdma_recv_ctxt *ctxt; + if (test_bit(XPT_CLOSE, &rdma->sc_xprt.xpt_flags)) + return 0; ctxt = svc_rdma_recv_ctxt_get(rdma); if (!ctxt) return -ENOMEM; --- linux-azure-5.8-5.8.0.orig/net/sunrpc/xprtrdma/svc_rdma_rw.c +++ linux-azure-5.8-5.8.0/net/sunrpc/xprtrdma/svc_rdma_rw.c @@ -684,7 +684,6 @@ struct svc_rdma_read_info *info, __be32 *p) { - unsigned int i; int ret; ret = -EINVAL; @@ -707,12 +706,6 @@ info->ri_chunklen += rs_length; } - /* Pages under I/O have been copied to head->rc_pages. - * Prevent their premature release by svc_xprt_release() . - */ - for (i = 0; i < info->ri_readctxt->rc_page_count; i++) - rqstp->rq_pages[i] = NULL; - return ret; } @@ -807,6 +800,26 @@ return ret; } +/* Pages under I/O have been copied to head->rc_pages. Ensure they + * are not released by svc_xprt_release() until the I/O is complete. + * + * This has to be done after all Read WRs are constructed to properly + * handle a page that is part of I/O on behalf of two different RDMA + * segments. + * + * Do this only if I/O has been posted. Otherwise, we do indeed want + * svc_xprt_release() to clean things up properly. + */ +static void svc_rdma_save_io_pages(struct svc_rqst *rqstp, + const unsigned int start, + const unsigned int num_pages) +{ + unsigned int i; + + for (i = start; i < num_pages + start; i++) + rqstp->rq_pages[i] = NULL; +} + /** * svc_rdma_recv_read_chunk - Pull a Read chunk from the client * @rdma: controlling RDMA transport @@ -860,6 +873,7 @@ ret = svc_rdma_post_chunk_ctxt(&info->ri_cc); if (ret < 0) goto out_err; + svc_rdma_save_io_pages(rqstp, 0, head->rc_page_count); return 0; out_err: --- linux-azure-5.8-5.8.0.orig/net/sunrpc/xprtrdma/svc_rdma_sendto.c +++ linux-azure-5.8-5.8.0/net/sunrpc/xprtrdma/svc_rdma_sendto.c @@ -637,10 +637,11 @@ while (remaining) { len = min_t(u32, PAGE_SIZE - pageoff, remaining); - memcpy(dst, page_address(*ppages), len); + memcpy(dst, page_address(*ppages) + pageoff, len); remaining -= len; dst += len; pageoff = 0; + ppages++; } } --- linux-azure-5.8-5.8.0.orig/net/sunrpc/xprtrdma/transport.c +++ linux-azure-5.8-5.8.0/net/sunrpc/xprtrdma/transport.c @@ -775,6 +775,7 @@ .owner = THIS_MODULE, .ident = XPRT_TRANSPORT_RDMA, .setup = xprt_setup_rdma, + .netid = { "rdma", "rdma6", "" }, }; void xprt_rdma_cleanup(void) --- linux-azure-5.8-5.8.0.orig/net/sunrpc/xprtrdma/verbs.c +++ linux-azure-5.8-5.8.0/net/sunrpc/xprtrdma/verbs.c @@ -933,6 +933,8 @@ rpcrdma_regbuf_dma_unmap(req->rl_sendbuf); rpcrdma_regbuf_dma_unmap(req->rl_recvbuf); + + frwr_reset(req); } /* ASSUMPTION: the rb_allreqs list is stable for the duration, --- linux-azure-5.8-5.8.0.orig/net/sunrpc/xprtsock.c +++ linux-azure-5.8-5.8.0/net/sunrpc/xprtsock.c @@ -433,7 +433,8 @@ if (ret <= 0) goto sock_err; xs_flush_bvec(buf->bvec, ret, seek + buf->page_base); - offset += ret - buf->page_base; + ret -= buf->page_base; + offset += ret; if (offset == count || msg->msg_flags & (MSG_EOR|MSG_TRUNC)) goto out; if (ret != want) @@ -3062,6 +3063,7 @@ .owner = THIS_MODULE, .ident = XPRT_TRANSPORT_LOCAL, .setup = xs_setup_local, + .netid = { "" }, }; static struct xprt_class xs_udp_transport = { @@ -3070,6 +3072,7 @@ .owner = THIS_MODULE, .ident = XPRT_TRANSPORT_UDP, .setup = xs_setup_udp, + .netid = { "udp", "udp6", "" }, }; static struct xprt_class xs_tcp_transport = { @@ -3078,6 +3081,7 @@ .owner = THIS_MODULE, .ident = XPRT_TRANSPORT_TCP, .setup = xs_setup_tcp, + .netid = { "tcp", "tcp6", "" }, }; static struct xprt_class xs_bc_tcp_transport = { @@ -3086,6 +3090,7 @@ .owner = THIS_MODULE, .ident = XPRT_TRANSPORT_BC_TCP, .setup = xs_setup_bc_tcp, + .netid = { "" }, }; /** --- linux-azure-5.8-5.8.0.orig/net/switchdev/switchdev.c +++ linux-azure-5.8-5.8.0/net/switchdev/switchdev.c @@ -461,10 +461,11 @@ extack = switchdev_notifier_info_to_extack(&port_obj_info->info); if (check_cb(dev)) { - /* This flag is only checked if the return value is success. */ - port_obj_info->handled = true; - return add_cb(dev, port_obj_info->obj, port_obj_info->trans, - extack); + err = add_cb(dev, port_obj_info->obj, port_obj_info->trans, + extack); + if (err != -EOPNOTSUPP) + port_obj_info->handled = true; + return err; } /* Switch ports might be stacked under e.g. a LAG. Ignore the @@ -516,9 +517,10 @@ int err = -EOPNOTSUPP; if (check_cb(dev)) { - /* This flag is only checked if the return value is success. */ - port_obj_info->handled = true; - return del_cb(dev, port_obj_info->obj); + err = del_cb(dev, port_obj_info->obj); + if (err != -EOPNOTSUPP) + port_obj_info->handled = true; + return err; } /* Switch ports might be stacked under e.g. a LAG. Ignore the @@ -569,9 +571,10 @@ int err = -EOPNOTSUPP; if (check_cb(dev)) { - port_attr_info->handled = true; - return set_cb(dev, port_attr_info->attr, - port_attr_info->trans); + err = set_cb(dev, port_attr_info->attr, port_attr_info->trans); + if (err != -EOPNOTSUPP) + port_attr_info->handled = true; + return err; } /* Switch ports might be stacked under e.g. a LAG. Ignore the --- linux-azure-5.8-5.8.0.orig/net/tipc/bcast.c +++ linux-azure-5.8-5.8.0/net/tipc/bcast.c @@ -108,6 +108,8 @@ { struct tipc_bc_base *bb = tipc_bc_base(net); int all_dests = tipc_link_bc_peers(bb->link); + int max_win = tipc_link_max_win(bb->link); + int min_win = tipc_link_min_win(bb->link); int i, mtu, prim; bb->primary_bearer = INVALID_BEARER_ID; @@ -121,8 +123,12 @@ continue; mtu = tipc_bearer_mtu(net, i); - if (mtu < tipc_link_mtu(bb->link)) + if (mtu < tipc_link_mtu(bb->link)) { tipc_link_set_mtu(bb->link, mtu); + tipc_link_set_queue_limits(bb->link, + min_win, + max_win); + } bb->bcast_support &= tipc_bearer_bcast_support(net, i); if (bb->dests[i] < all_dests) continue; @@ -585,7 +591,7 @@ if (max_win > TIPC_MAX_LINK_WIN) return -EINVAL; tipc_bcast_lock(net); - tipc_link_set_queue_limits(l, BCLINK_WIN_MIN, max_win); + tipc_link_set_queue_limits(l, tipc_link_min_win(l), max_win); tipc_bcast_unlock(net); return 0; } --- linux-azure-5.8-5.8.0.orig/net/tipc/core.c +++ linux-azure-5.8-5.8.0/net/tipc/core.c @@ -60,6 +60,7 @@ tn->trial_addr = 0; tn->addr_trial_end = 0; tn->capabilities = TIPC_NODE_CAPABILITIES; + INIT_WORK(&tn->final_work.work, tipc_net_finalize_work); memset(tn->node_id, 0, sizeof(tn->node_id)); memset(tn->node_id_string, 0, sizeof(tn->node_id_string)); tn->mon_threshold = TIPC_DEF_MON_THRESHOLD; @@ -107,8 +108,13 @@ static void __net_exit tipc_exit_net(struct net *net) { + struct tipc_net *tn = tipc_net(net); + tipc_detach_loopback(net); + /* Make sure the tipc_net_finalize_work() finished */ + cancel_work_sync(&tn->final_work.work); tipc_net_stop(net); + tipc_bcast_stop(net); tipc_nametbl_stop(net); tipc_sk_rht_destroy(net); --- linux-azure-5.8-5.8.0.orig/net/tipc/core.h +++ linux-azure-5.8-5.8.0/net/tipc/core.h @@ -90,6 +90,12 @@ extern int sysctl_tipc_rmem[3] __read_mostly; extern int sysctl_tipc_named_timeout __read_mostly; +struct tipc_net_work { + struct work_struct work; + struct net *net; + u32 addr; +}; + struct tipc_net { u8 node_id[NODE_ID_LEN]; u32 node_addr; @@ -143,6 +149,8 @@ /* TX crypto handler */ struct tipc_crypto *crypto_tx; #endif + /* Work item for net finalize */ + struct tipc_net_work final_work; }; static inline struct tipc_net *tipc_net(struct net *net) --- linux-azure-5.8-5.8.0.orig/net/tipc/crypto.c +++ linux-azure-5.8-5.8.0/net/tipc/crypto.c @@ -326,7 +326,8 @@ if (aead->cloned) { tipc_aead_put(aead->cloned); } else { - head = *this_cpu_ptr(aead->tfm_entry); + head = *get_cpu_ptr(aead->tfm_entry); + put_cpu_ptr(aead->tfm_entry); list_for_each_entry_safe(tfm_entry, tmp, &head->list, list) { crypto_free_aead(tfm_entry->tfm); list_del(&tfm_entry->list); @@ -399,10 +400,15 @@ */ static struct crypto_aead *tipc_aead_tfm_next(struct tipc_aead *aead) { - struct tipc_tfm **tfm_entry = this_cpu_ptr(aead->tfm_entry); + struct tipc_tfm **tfm_entry; + struct crypto_aead *tfm; + tfm_entry = get_cpu_ptr(aead->tfm_entry); *tfm_entry = list_next_entry(*tfm_entry, list); - return (*tfm_entry)->tfm; + tfm = (*tfm_entry)->tfm; + put_cpu_ptr(tfm_entry); + + return tfm; } /** @@ -757,10 +763,12 @@ switch (err) { case 0: this_cpu_inc(tx->stats->stat[STAT_ASYNC_OK]); + rcu_read_lock(); if (likely(test_bit(0, &b->up))) b->media->send_msg(net, skb, b, &tx_ctx->dst); else kfree_skb(skb); + rcu_read_unlock(); break; case -EINPROGRESS: return; --- linux-azure-5.8-5.8.0.orig/net/tipc/group.c +++ linux-azure-5.8-5.8.0/net/tipc/group.c @@ -273,8 +273,8 @@ return NULL; } -static void tipc_group_add_to_tree(struct tipc_group *grp, - struct tipc_member *m) +static int tipc_group_add_to_tree(struct tipc_group *grp, + struct tipc_member *m) { u64 nkey, key = (u64)m->node << 32 | m->port; struct rb_node **n, *parent = NULL; @@ -291,10 +291,11 @@ else if (key > nkey) n = &(*n)->rb_right; else - return; + return -EEXIST; } rb_link_node(&m->tree_node, parent, n); rb_insert_color(&m->tree_node, &grp->members); + return 0; } static struct tipc_member *tipc_group_create_member(struct tipc_group *grp, @@ -302,6 +303,7 @@ u32 instance, int state) { struct tipc_member *m; + int ret; m = kzalloc(sizeof(*m), GFP_ATOMIC); if (!m) @@ -314,8 +316,12 @@ m->port = port; m->instance = instance; m->bc_acked = grp->bc_snd_nxt - 1; + ret = tipc_group_add_to_tree(grp, m); + if (ret < 0) { + kfree(m); + return NULL; + } grp->member_cnt++; - tipc_group_add_to_tree(grp, m); tipc_nlist_add(&grp->dests, m->node); m->state = state; return m; --- linux-azure-5.8-5.8.0.orig/net/tipc/link.c +++ linux-azure-5.8-5.8.0/net/tipc/link.c @@ -1000,7 +1000,6 @@ int tipc_link_xmit(struct tipc_link *l, struct sk_buff_head *list, struct sk_buff_head *xmitq) { - struct tipc_msg *hdr = buf_msg(skb_peek(list)); struct sk_buff_head *backlogq = &l->backlogq; struct sk_buff_head *transmq = &l->transmq; struct sk_buff *skb, *_skb; @@ -1008,13 +1007,18 @@ u16 ack = l->rcv_nxt - 1; u16 seqno = l->snd_nxt; int pkt_cnt = skb_queue_len(list); - int imp = msg_importance(hdr); unsigned int mss = tipc_link_mss(l); unsigned int cwin = l->window; unsigned int mtu = l->mtu; + struct tipc_msg *hdr; bool new_bundle; int rc = 0; + int imp; + if (pkt_cnt <= 0) + return 0; + + hdr = buf_msg(skb_peek(list)); if (unlikely(msg_size(hdr) > mtu)) { pr_warn("Too large msg, purging xmit list %d %d %d %d %d!\n", skb_queue_len(list), msg_user(hdr), @@ -1023,6 +1027,7 @@ return -EMSGSIZE; } + imp = msg_importance(hdr); /* Allow oversubscription of one data msg per source at congestion */ if (unlikely(l->backlog[imp].len >= l->backlog[imp].limit)) { if (imp == TIPC_SYSTEM_IMPORTANCE) { --- linux-azure-5.8-5.8.0.orig/net/tipc/msg.c +++ linux-azure-5.8-5.8.0/net/tipc/msg.c @@ -150,10 +150,11 @@ if (fragid == FIRST_FRAGMENT) { if (unlikely(head)) goto err; - if (unlikely(skb_unclone(frag, GFP_ATOMIC))) + *buf = NULL; + frag = skb_unshare(frag, GFP_ATOMIC); + if (unlikely(!frag)) goto err; head = *headbuf = frag; - *buf = NULL; TIPC_SKB_CB(head)->tail = NULL; if (skb_is_nonlinear(head)) { skb_walk_frags(head, tail) { --- linux-azure-5.8-5.8.0.orig/net/tipc/net.c +++ linux-azure-5.8-5.8.0/net/tipc/net.c @@ -105,12 +105,6 @@ * - A local spin_lock protecting the queue of subscriber events. */ -struct tipc_net_work { - struct work_struct work; - struct net *net; - u32 addr; -}; - static void tipc_net_finalize(struct net *net, u32 addr); int tipc_net_init(struct net *net, u8 *node_id, u32 addr) @@ -142,25 +136,21 @@ TIPC_CLUSTER_SCOPE, 0, addr); } -static void tipc_net_finalize_work(struct work_struct *work) +void tipc_net_finalize_work(struct work_struct *work) { struct tipc_net_work *fwork; fwork = container_of(work, struct tipc_net_work, work); tipc_net_finalize(fwork->net, fwork->addr); - kfree(fwork); } void tipc_sched_net_finalize(struct net *net, u32 addr) { - struct tipc_net_work *fwork = kzalloc(sizeof(*fwork), GFP_ATOMIC); + struct tipc_net *tn = tipc_net(net); - if (!fwork) - return; - INIT_WORK(&fwork->work, tipc_net_finalize_work); - fwork->net = net; - fwork->addr = addr; - schedule_work(&fwork->work); + tn->final_work.net = net; + tn->final_work.addr = addr; + schedule_work(&tn->final_work.work); } void tipc_net_stop(struct net *net) --- linux-azure-5.8-5.8.0.orig/net/tipc/net.h +++ linux-azure-5.8-5.8.0/net/tipc/net.h @@ -42,6 +42,7 @@ extern const struct nla_policy tipc_nl_net_policy[]; int tipc_net_init(struct net *net, u8 *node_id, u32 addr); +void tipc_net_finalize_work(struct work_struct *work); void tipc_sched_net_finalize(struct net *net, u32 addr); void tipc_net_stop(struct net *net); int tipc_nl_net_dump(struct sk_buff *skb, struct netlink_callback *cb); --- linux-azure-5.8-5.8.0.orig/net/tipc/netlink_compat.c +++ linux-azure-5.8-5.8.0/net/tipc/netlink_compat.c @@ -275,8 +275,9 @@ static int tipc_nl_compat_dumpit(struct tipc_nl_compat_cmd_dump *cmd, struct tipc_nl_compat_msg *msg) { - int err; + struct nlmsghdr *nlh; struct sk_buff *arg; + int err; if (msg->req_type && (!msg->req_size || !TLV_CHECK_TYPE(msg->req, msg->req_type))) @@ -305,6 +306,15 @@ return -ENOMEM; } + nlh = nlmsg_put(arg, 0, 0, tipc_genl_family.id, 0, NLM_F_MULTI); + if (!nlh) { + kfree_skb(arg); + kfree_skb(msg->rep); + msg->rep = NULL; + return -EMSGSIZE; + } + nlmsg_end(arg, nlh); + err = __tipc_nl_compat_dumpit(cmd, msg, arg); if (err) { kfree_skb(msg->rep); --- linux-azure-5.8-5.8.0.orig/net/tipc/node.c +++ linux-azure-5.8-5.8.0/net/tipc/node.c @@ -2153,7 +2153,11 @@ &xmitq); else if (prop == TIPC_NLA_PROP_MTU) tipc_link_set_mtu(e->link, b->mtu); + + /* Update MTU for node link entry */ + e->mtu = tipc_link_mss(e->link); } + tipc_node_write_unlock(n); tipc_bearer_xmit(net, bearer_id, &xmitq, &e->maddr, NULL); } @@ -2823,17 +2827,22 @@ #ifdef CONFIG_TIPC_CRYPTO static int tipc_nl_retrieve_key(struct nlattr **attrs, - struct tipc_aead_key **key) + struct tipc_aead_key **pkey) { struct nlattr *attr = attrs[TIPC_NLA_NODE_KEY]; + struct tipc_aead_key *key; if (!attr) return -ENODATA; - *key = (struct tipc_aead_key *)nla_data(attr); - if (nla_len(attr) < tipc_aead_key_size(*key)) + if (nla_len(attr) < sizeof(*key)) + return -EINVAL; + key = (struct tipc_aead_key *)nla_data(attr); + if (key->keylen > TIPC_AEAD_KEYLEN_MAX || + nla_len(attr) < tipc_aead_key_size(key)) return -EINVAL; + *pkey = key; return 0; } --- linux-azure-5.8-5.8.0.orig/net/tipc/socket.c +++ linux-azure-5.8-5.8.0/net/tipc/socket.c @@ -2773,18 +2773,18 @@ trace_tipc_sk_shutdown(sk, NULL, TIPC_DUMP_ALL, " "); __tipc_shutdown(sock, TIPC_CONN_SHUTDOWN); - sk->sk_shutdown = SEND_SHUTDOWN; + sk->sk_shutdown = SHUTDOWN_MASK; if (sk->sk_state == TIPC_DISCONNECTING) { /* Discard any unreceived messages */ __skb_queue_purge(&sk->sk_receive_queue); - /* Wake up anyone sleeping in poll */ - sk->sk_state_change(sk); res = 0; } else { res = -ENOTCONN; } + /* Wake up anyone sleeping in poll. */ + sk->sk_state_change(sk); release_sock(sk); return res; --- linux-azure-5.8-5.8.0.orig/net/tipc/topsrv.c +++ linux-azure-5.8-5.8.0/net/tipc/topsrv.c @@ -665,12 +665,18 @@ ret = tipc_topsrv_work_start(srv); if (ret < 0) - return ret; + goto err_start; ret = tipc_topsrv_create_listener(srv); if (ret < 0) - tipc_topsrv_work_stop(srv); + goto err_create; + return 0; + +err_create: + tipc_topsrv_work_stop(srv); +err_start: + kfree(srv); return ret; } --- linux-azure-5.8-5.8.0.orig/net/tls/tls_device.c +++ linux-azure-5.8-5.8.0/net/tls/tls_device.c @@ -418,14 +418,14 @@ struct tls_context *tls_ctx = tls_get_ctx(sk); struct tls_prot_info *prot = &tls_ctx->prot_info; struct tls_offload_context_tx *ctx = tls_offload_ctx_tx(tls_ctx); - int more = flags & (MSG_SENDPAGE_NOTLAST | MSG_MORE); struct tls_record_info *record = ctx->open_record; int tls_push_record_flags; struct page_frag *pfrag; size_t orig_size = size; u32 max_open_record_len; - int copy, rc = 0; + bool more = false; bool done = false; + int copy, rc = 0; long timeo; if (flags & @@ -492,9 +492,8 @@ if (!size) { last_record: tls_push_record_flags = flags; - if (more) { - tls_ctx->pending_open_record_frags = - !!record->num_frags; + if (flags & (MSG_SENDPAGE_NOTLAST | MSG_MORE)) { + more = true; break; } @@ -526,6 +525,8 @@ } } while (!done); + tls_ctx->pending_open_record_frags = more; + if (orig_size - size > 0) rc = orig_size - size; @@ -561,7 +562,7 @@ { struct tls_context *tls_ctx = tls_get_ctx(sk); struct iov_iter msg_iter; - char *kaddr = kmap(page); + char *kaddr; struct kvec iov; int rc; @@ -576,6 +577,7 @@ goto out; } + kaddr = kmap(page); iov.iov_base = kaddr + offset; iov.iov_len = size; iov_iter_kvec(&msg_iter, WRITE, &iov, 1, size); @@ -690,15 +692,71 @@ TLS_INC_STATS(sock_net(sk), LINUX_MIB_TLSRXDEVICERESYNC); } +static bool +tls_device_rx_resync_async(struct tls_offload_resync_async *resync_async, + s64 resync_req, u32 *seq, u16 *rcd_delta) +{ + u32 is_async = resync_req & RESYNC_REQ_ASYNC; + u32 req_seq = resync_req >> 32; + u32 req_end = req_seq + ((resync_req >> 16) & 0xffff); + u16 i; + + *rcd_delta = 0; + + if (is_async) { + /* shouldn't get to wraparound: + * too long in async stage, something bad happened + */ + if (WARN_ON_ONCE(resync_async->rcd_delta == USHRT_MAX)) + return false; + + /* asynchronous stage: log all headers seq such that + * req_seq <= seq <= end_seq, and wait for real resync request + */ + if (before(*seq, req_seq)) + return false; + if (!after(*seq, req_end) && + resync_async->loglen < TLS_DEVICE_RESYNC_ASYNC_LOGMAX) + resync_async->log[resync_async->loglen++] = *seq; + + resync_async->rcd_delta++; + + return false; + } + + /* synchronous stage: check against the logged entries and + * proceed to check the next entries if no match was found + */ + for (i = 0; i < resync_async->loglen; i++) + if (req_seq == resync_async->log[i] && + atomic64_try_cmpxchg(&resync_async->req, &resync_req, 0)) { + *rcd_delta = resync_async->rcd_delta - i; + *seq = req_seq; + resync_async->loglen = 0; + resync_async->rcd_delta = 0; + return true; + } + + resync_async->loglen = 0; + resync_async->rcd_delta = 0; + + if (req_seq == *seq && + atomic64_try_cmpxchg(&resync_async->req, + &resync_req, 0)) + return true; + + return false; +} + void tls_device_rx_resync_new_rec(struct sock *sk, u32 rcd_len, u32 seq) { struct tls_context *tls_ctx = tls_get_ctx(sk); struct tls_offload_context_rx *rx_ctx; - bool is_req_pending, is_force_resync; u8 rcd_sn[TLS_MAX_REC_SEQ_SIZE]; + u32 sock_data, is_req_pending; struct tls_prot_info *prot; s64 resync_req; - u32 sock_data; + u16 rcd_delta; u32 req_seq; if (tls_ctx->rx_conf != TLS_HW) @@ -713,11 +771,9 @@ resync_req = atomic64_read(&rx_ctx->resync_req); req_seq = resync_req >> 32; seq += TLS_HEADER_SIZE - 1; - is_req_pending = resync_req & RESYNC_REQ; - is_force_resync = resync_req & RESYNC_REQ_FORCE; + is_req_pending = resync_req; - if (likely(!is_req_pending) || - (!is_force_resync && req_seq != seq) || + if (likely(!is_req_pending) || req_seq != seq || !atomic64_try_cmpxchg(&rx_ctx->resync_req, &resync_req, 0)) return; break; @@ -739,6 +795,17 @@ seq += rcd_len; tls_bigint_increment(rcd_sn, prot->rec_seq_size); break; + case TLS_OFFLOAD_SYNC_TYPE_DRIVER_REQ_ASYNC: + resync_req = atomic64_read(&rx_ctx->resync_async->req); + is_req_pending = resync_req; + if (likely(!is_req_pending)) + return; + + if (!tls_device_rx_resync_async(rx_ctx->resync_async, + resync_req, &seq, &rcd_delta)) + return; + tls_bigint_subtract(rcd_sn, rcd_delta); + break; } tls_device_resync_rx(tls_ctx, sk, seq, rcd_sn); @@ -1195,6 +1262,8 @@ if (tls_ctx->tx_conf != TLS_HW) { dev_put(netdev); tls_ctx->netdev = NULL; + } else { + set_bit(TLS_RX_DEV_CLOSED, &tls_ctx->flags); } out: up_read(&device_offload_lock); @@ -1224,7 +1293,8 @@ if (ctx->tx_conf == TLS_HW) netdev->tlsdev_ops->tls_dev_del(netdev, ctx, TLS_OFFLOAD_CTX_DIR_TX); - if (ctx->rx_conf == TLS_HW) + if (ctx->rx_conf == TLS_HW && + !test_bit(TLS_RX_DEV_CLOSED, &ctx->flags)) netdev->tlsdev_ops->tls_dev_del(netdev, ctx, TLS_OFFLOAD_CTX_DIR_RX); WRITE_ONCE(ctx->netdev, NULL); --- linux-azure-5.8-5.8.0.orig/net/tls/tls_proc.c +++ linux-azure-5.8-5.8.0/net/tls/tls_proc.c @@ -37,9 +37,12 @@ int __net_init tls_proc_init(struct net *net) { +#ifdef CONFIG_PROC_FS if (!proc_create_net_single("tls_stat", 0444, net->proc_net, tls_statistics_seq_show, NULL)) return -ENOMEM; +#endif /* CONFIG_PROC_FS */ + return 0; } --- linux-azure-5.8-5.8.0.orig/net/tls/tls_sw.c +++ linux-azure-5.8-5.8.0/net/tls/tls_sw.c @@ -1294,6 +1294,12 @@ return NULL; } + if (!skb_queue_empty(&sk->sk_receive_queue)) { + __strp_unpause(&ctx->strp); + if (ctx->recv_pkt) + return ctx->recv_pkt; + } + if (sk->sk_shutdown & RCV_SHUTDOWN) return NULL; @@ -1912,7 +1918,7 @@ * another message type */ msg->msg_flags |= MSG_EOR; - if (ctx->control != TLS_RECORD_TYPE_DATA) + if (control != TLS_RECORD_TYPE_DATA) goto recv_end; } else { break; @@ -2142,10 +2148,15 @@ struct tls_context *tls_ctx = tls_get_ctx(sk); struct tls_sw_context_tx *ctx = tls_sw_ctx_tx(tls_ctx); struct tls_rec *rec, *tmp; + int pending; /* Wait for any pending async encryptions to complete */ - smp_store_mb(ctx->async_notify, true); - if (atomic_read(&ctx->encrypt_pending)) + spin_lock_bh(&ctx->encrypt_compl_lock); + ctx->async_notify = true; + pending = atomic_read(&ctx->encrypt_pending); + spin_unlock_bh(&ctx->encrypt_compl_lock); + + if (pending) crypto_wait_req(-EINPROGRESS, &ctx->async_wait); tls_tx_records(sk, -1); --- linux-azure-5.8-5.8.0.orig/net/unix/af_unix.c +++ linux-azure-5.8-5.8.0/net/unix/af_unix.c @@ -138,17 +138,17 @@ #ifdef CONFIG_SECURITY_NETWORK static void unix_get_secdata(struct scm_cookie *scm, struct sk_buff *skb) { - UNIXCB(skb).secid = scm->secid; + UNIXCB(skb).lsmblob = scm->lsmblob; } static inline void unix_set_secdata(struct scm_cookie *scm, struct sk_buff *skb) { - scm->secid = UNIXCB(skb).secid; + scm->lsmblob = UNIXCB(skb).lsmblob; } static inline bool unix_secdata_eq(struct scm_cookie *scm, struct sk_buff *skb) { - return (scm->secid == UNIXCB(skb).secid); + return lsmblob_equal(&scm->lsmblob, &(UNIXCB(skb).lsmblob)); } #else static inline void unix_get_secdata(struct scm_cookie *scm, struct sk_buff *skb) --- linux-azure-5.8-5.8.0.orig/net/vmw_vsock/af_vsock.c +++ linux-azure-5.8-5.8.0/net/vmw_vsock/af_vsock.c @@ -438,7 +438,7 @@ case SOCK_STREAM: if (vsock_use_local_transport(remote_cid)) new_transport = transport_local; - else if (remote_cid <= VMADDR_CID_HOST) + else if (remote_cid <= VMADDR_CID_HOST || !transport_h2g) new_transport = transport_g2h; else new_transport = transport_h2g; @@ -739,7 +739,7 @@ vsk->buffer_min_size = psk->buffer_min_size; vsk->buffer_max_size = psk->buffer_max_size; } else { - vsk->trusted = capable(CAP_NET_ADMIN); + vsk->trusted = ns_capable_noaudit(&init_user_ns, CAP_NET_ADMIN); vsk->owner = get_current_cred(); vsk->connect_timeout = VSOCK_DEFAULT_CONNECT_TIMEOUT; vsk->buffer_size = VSOCK_DEFAULT_BUFFER_SIZE; @@ -926,10 +926,12 @@ */ sk = sock->sk; + + lock_sock(sk); if (sock->state == SS_UNCONNECTED) { err = -ENOTCONN; if (sk->sk_type == SOCK_STREAM) - return err; + goto out; } else { sock->state = SS_DISCONNECTING; err = 0; @@ -938,10 +940,8 @@ /* Receive and send shutdowns are treated alike. */ mode = mode & (RCV_SHUTDOWN | SEND_SHUTDOWN); if (mode) { - lock_sock(sk); sk->sk_shutdown |= mode; sk->sk_state_change(sk); - release_sock(sk); if (sk->sk_type == SOCK_STREAM) { sock_reset_flag(sk, SOCK_DONE); @@ -949,6 +949,8 @@ } } +out: + release_sock(sk); return err; } @@ -997,9 +999,12 @@ mask |= EPOLLOUT | EPOLLWRNORM | EPOLLWRBAND; } else if (sock->type == SOCK_STREAM) { - const struct vsock_transport *transport = vsk->transport; + const struct vsock_transport *transport; + lock_sock(sk); + transport = vsk->transport; + /* Listening sockets that have connections in their accept * queue can be read. */ @@ -1032,7 +1037,7 @@ } /* Connected sockets that can produce data can be written. */ - if (sk->sk_state == TCP_ESTABLISHED) { + if (transport && sk->sk_state == TCP_ESTABLISHED) { if (!(sk->sk_shutdown & SEND_SHUTDOWN)) { bool space_avail_now = false; int ret = transport->notify_poll_out( @@ -1082,10 +1087,11 @@ err = 0; sk = sock->sk; vsk = vsock_sk(sk); - transport = vsk->transport; lock_sock(sk); + transport = vsk->transport; + err = vsock_auto_bind(vsk); if (err) goto out; @@ -1214,7 +1220,7 @@ { const struct vsock_transport *transport = vsk->transport; - if (!transport->cancel_pkt) + if (!transport || !transport->cancel_pkt) return -EOPNOTSUPP; return transport->cancel_pkt(vsk); @@ -1224,7 +1230,6 @@ { struct sock *sk; struct vsock_sock *vsk; - int cancel = 0; vsk = container_of(work, struct vsock_sock, connect_work.work); sk = sk_vsock(vsk); @@ -1235,11 +1240,9 @@ sk->sk_state = TCP_CLOSE; sk->sk_err = ETIMEDOUT; sk->sk_error_report(sk); - cancel = 1; + vsock_transport_cancel_pkt(vsk); } release_sock(sk); - if (cancel) - vsock_transport_cancel_pkt(vsk); sock_put(sk); } @@ -1546,10 +1549,11 @@ err = 0; sk = sock->sk; vsk = vsock_sk(sk); - transport = vsk->transport; lock_sock(sk); + transport = vsk->transport; + switch (optname) { case SO_VM_SOCKETS_BUFFER_SIZE: COPY_IN(val); @@ -1682,7 +1686,6 @@ sk = sock->sk; vsk = vsock_sk(sk); - transport = vsk->transport; total_written = 0; err = 0; @@ -1691,6 +1694,8 @@ lock_sock(sk); + transport = vsk->transport; + /* Callers should not provide a destination with stream sockets. */ if (msg->msg_namelen) { err = sk->sk_state == TCP_ESTABLISHED ? -EISCONN : -EOPNOTSUPP; @@ -1825,11 +1830,12 @@ sk = sock->sk; vsk = vsock_sk(sk); - transport = vsk->transport; err = 0; lock_sock(sk); + transport = vsk->transport; + if (!transport || sk->sk_state != TCP_ESTABLISHED) { /* Recvmsg is supposed to return 0 if a peer performs an * orderly shutdown. Differentiate between that case and when a --- linux-azure-5.8-5.8.0.orig/net/vmw_vsock/hyperv_transport.c +++ linux-azure-5.8-5.8.0/net/vmw_vsock/hyperv_transport.c @@ -474,14 +474,10 @@ static int hvs_shutdown(struct vsock_sock *vsk, int mode) { - struct sock *sk = sk_vsock(vsk); - if (!(mode & SEND_SHUTDOWN)) return 0; - lock_sock(sk); hvs_shutdown_lock_held(vsk->trans, mode); - release_sock(sk); return 0; } --- linux-azure-5.8-5.8.0.orig/net/vmw_vsock/virtio_transport_common.c +++ linux-azure-5.8-5.8.0/net/vmw_vsock/virtio_transport_common.c @@ -841,8 +841,10 @@ virtio_transport_free_pkt(pkt); } - if (remove_sock) + if (remove_sock) { + sock_set_flag(sk, SOCK_DONE); vsock_remove_sock(vsk); + } } EXPORT_SYMBOL_GPL(virtio_transport_release); @@ -1128,18 +1130,18 @@ vsk = vsock_sk(sk); - space_available = virtio_transport_space_update(sk, pkt); - lock_sock(sk); - /* Check if sk has been released before lock_sock */ - if (sk->sk_shutdown == SHUTDOWN_MASK) { + /* Check if sk has been closed before lock_sock */ + if (sock_flag(sk, SOCK_DONE)) { (void)virtio_transport_reset_no_sock(t, pkt); release_sock(sk); sock_put(sk); goto free_pkt; } + space_available = virtio_transport_space_update(sk, pkt); + /* Update CID in case it has changed after a transport reset event */ vsk->local_addr.svm_cid = dst.svm_cid; --- linux-azure-5.8-5.8.0.orig/net/wireless/Kconfig +++ linux-azure-5.8-5.8.0/net/wireless/Kconfig @@ -21,6 +21,7 @@ tristate "cfg80211 - wireless configuration API" depends on RFKILL || !RFKILL select FW_LOADER + select CRC32 # may need to update this when certificates are changed and are # using a different algorithm, though right now they shouldn't # (this is here rather than below to allow it to be a module) @@ -217,6 +218,7 @@ config LIB80211_CRYPT_CCMP tristate + select CRYPTO select CRYPTO_AES select CRYPTO_CCM --- linux-azure-5.8-5.8.0.orig/net/wireless/chan.c +++ linux-azure-5.8-5.8.0/net/wireless/chan.c @@ -10,6 +10,7 @@ */ #include +#include #include #include "core.h" #include "rdev-ops.h" @@ -892,6 +893,7 @@ struct ieee80211_sta_vht_cap *vht_cap; struct ieee80211_edmg *edmg_cap; u32 width, control_freq, cap; + bool support_80_80 = false; if (WARN_ON(!cfg80211_chandef_valid(chandef))) return false; @@ -944,9 +946,13 @@ return false; break; case NL80211_CHAN_WIDTH_80P80: - cap = vht_cap->cap & IEEE80211_VHT_CAP_SUPP_CHAN_WIDTH_MASK; - if (chandef->chan->band != NL80211_BAND_6GHZ && - cap != IEEE80211_VHT_CAP_SUPP_CHAN_WIDTH_160_80PLUS80MHZ) + cap = vht_cap->cap; + support_80_80 = + (cap & IEEE80211_VHT_CAP_SUPP_CHAN_WIDTH_160_80PLUS80MHZ) || + (cap & IEEE80211_VHT_CAP_SUPP_CHAN_WIDTH_160MHZ && + cap & IEEE80211_VHT_CAP_EXT_NSS_BW_MASK) || + u32_get_bits(cap, IEEE80211_VHT_CAP_EXT_NSS_BW_MASK) > 1; + if (chandef->chan->band != NL80211_BAND_6GHZ && !support_80_80) return false; /* fall through */ case NL80211_CHAN_WIDTH_80: @@ -966,7 +972,8 @@ return false; cap = vht_cap->cap & IEEE80211_VHT_CAP_SUPP_CHAN_WIDTH_MASK; if (cap != IEEE80211_VHT_CAP_SUPP_CHAN_WIDTH_160MHZ && - cap != IEEE80211_VHT_CAP_SUPP_CHAN_WIDTH_160_80PLUS80MHZ) + cap != IEEE80211_VHT_CAP_SUPP_CHAN_WIDTH_160_80PLUS80MHZ && + !(vht_cap->cap & IEEE80211_VHT_CAP_EXT_NSS_BW_MASK)) return false; break; default: --- linux-azure-5.8-5.8.0.orig/net/wireless/core.c +++ linux-azure-5.8-5.8.0/net/wireless/core.c @@ -1247,8 +1247,7 @@ } EXPORT_SYMBOL(cfg80211_stop_iface); -void cfg80211_init_wdev(struct cfg80211_registered_device *rdev, - struct wireless_dev *wdev) +void cfg80211_init_wdev(struct wireless_dev *wdev) { mutex_init(&wdev->mtx); INIT_LIST_HEAD(&wdev->event_list); @@ -1259,6 +1258,30 @@ spin_lock_init(&wdev->pmsr_lock); INIT_WORK(&wdev->pmsr_free_wk, cfg80211_pmsr_free_wk); +#ifdef CONFIG_CFG80211_WEXT + wdev->wext.default_key = -1; + wdev->wext.default_mgmt_key = -1; + wdev->wext.connect.auth_type = NL80211_AUTHTYPE_AUTOMATIC; +#endif + + if (wdev->wiphy->flags & WIPHY_FLAG_PS_ON_BY_DEFAULT) + wdev->ps = true; + else + wdev->ps = false; + /* allow mac80211 to determine the timeout */ + wdev->ps_timeout = -1; + + if ((wdev->iftype == NL80211_IFTYPE_STATION || + wdev->iftype == NL80211_IFTYPE_P2P_CLIENT || + wdev->iftype == NL80211_IFTYPE_ADHOC) && !wdev->use_4addr) + wdev->netdev->priv_flags |= IFF_DONT_BRIDGE; + + INIT_WORK(&wdev->disconnect_wk, cfg80211_autodisconnect_wk); +} + +void cfg80211_register_wdev(struct cfg80211_registered_device *rdev, + struct wireless_dev *wdev) +{ /* * We get here also when the interface changes network namespaces, * as it's registered into the new one, but we don't want it to @@ -1292,6 +1315,11 @@ switch (state) { case NETDEV_POST_INIT: SET_NETDEV_DEVTYPE(dev, &wiphy_type); + wdev->netdev = dev; + /* can only change netns with wiphy */ + dev->features |= NETIF_F_NETNS_LOCAL; + + cfg80211_init_wdev(wdev); break; case NETDEV_REGISTER: /* @@ -1299,35 +1327,12 @@ * called within code protected by it when interfaces * are added with nl80211. */ - /* can only change netns with wiphy */ - dev->features |= NETIF_F_NETNS_LOCAL; - if (sysfs_create_link(&dev->dev.kobj, &rdev->wiphy.dev.kobj, "phy80211")) { pr_err("failed to add phy80211 symlink to netdev!\n"); } - wdev->netdev = dev; -#ifdef CONFIG_CFG80211_WEXT - wdev->wext.default_key = -1; - wdev->wext.default_mgmt_key = -1; - wdev->wext.connect.auth_type = NL80211_AUTHTYPE_AUTOMATIC; -#endif - - if (wdev->wiphy->flags & WIPHY_FLAG_PS_ON_BY_DEFAULT) - wdev->ps = true; - else - wdev->ps = false; - /* allow mac80211 to determine the timeout */ - wdev->ps_timeout = -1; - - if ((wdev->iftype == NL80211_IFTYPE_STATION || - wdev->iftype == NL80211_IFTYPE_P2P_CLIENT || - wdev->iftype == NL80211_IFTYPE_ADHOC) && !wdev->use_4addr) - dev->priv_flags |= IFF_DONT_BRIDGE; - - INIT_WORK(&wdev->disconnect_wk, cfg80211_autodisconnect_wk); - cfg80211_init_wdev(rdev, wdev); + cfg80211_register_wdev(rdev, wdev); break; case NETDEV_GOING_DOWN: cfg80211_leave(rdev, wdev); --- linux-azure-5.8-5.8.0.orig/net/wireless/core.h +++ linux-azure-5.8-5.8.0/net/wireless/core.h @@ -208,8 +208,9 @@ int cfg80211_switch_netns(struct cfg80211_registered_device *rdev, struct net *net); -void cfg80211_init_wdev(struct cfg80211_registered_device *rdev, - struct wireless_dev *wdev); +void cfg80211_init_wdev(struct wireless_dev *wdev); +void cfg80211_register_wdev(struct cfg80211_registered_device *rdev, + struct wireless_dev *wdev); static inline void wdev_lock(struct wireless_dev *wdev) __acquires(wdev) @@ -431,6 +432,8 @@ /* internal helpers */ bool cfg80211_supported_cipher_suite(struct wiphy *wiphy, u32 cipher); +bool cfg80211_valid_key_idx(struct cfg80211_registered_device *rdev, + int key_idx, bool pairwise); int cfg80211_validate_key_settings(struct cfg80211_registered_device *rdev, struct key_params *params, int key_idx, bool pairwise, const u8 *mac_addr); --- linux-azure-5.8-5.8.0.orig/net/wireless/nl80211.c +++ linux-azure-5.8-5.8.0/net/wireless/nl80211.c @@ -2355,7 +2355,10 @@ * case we'll continue with more data in the next round, * but break unconditionally so unsplit data stops here. */ - state->split_start++; + if (state->split) + state->split_start++; + else + state->split_start = 0; break; case 9: if (rdev->wiphy.extended_capabilities && @@ -3798,7 +3801,8 @@ * P2P Device and NAN do not have a netdev, so don't go * through the netdev notifier and must be added here */ - cfg80211_init_wdev(rdev, wdev); + cfg80211_init_wdev(wdev); + cfg80211_register_wdev(rdev, wdev); break; default: break; @@ -4187,6 +4191,10 @@ key.type != NL80211_KEYTYPE_GROUP) return -EINVAL; + if (!cfg80211_valid_key_idx(rdev, key.idx, + key.type == NL80211_KEYTYPE_PAIRWISE)) + return -EINVAL; + if (!rdev->ops->del_key) return -EOPNOTSUPP; @@ -4680,16 +4688,14 @@ if (err) return err; - if (!tb[NL80211_HE_OBSS_PD_ATTR_MIN_OFFSET] || - !tb[NL80211_HE_OBSS_PD_ATTR_MAX_OFFSET]) - return -EINVAL; - - he_obss_pd->min_offset = - nla_get_u32(tb[NL80211_HE_OBSS_PD_ATTR_MIN_OFFSET]); - he_obss_pd->max_offset = - nla_get_u32(tb[NL80211_HE_OBSS_PD_ATTR_MAX_OFFSET]); + if (tb[NL80211_HE_OBSS_PD_ATTR_MIN_OFFSET]) + he_obss_pd->min_offset = + nla_get_u8(tb[NL80211_HE_OBSS_PD_ATTR_MIN_OFFSET]); + if (tb[NL80211_HE_OBSS_PD_ATTR_MAX_OFFSET]) + he_obss_pd->max_offset = + nla_get_u8(tb[NL80211_HE_OBSS_PD_ATTR_MAX_OFFSET]); - if (he_obss_pd->min_offset >= he_obss_pd->max_offset) + if (he_obss_pd->min_offset > he_obss_pd->max_offset) return -EINVAL; he_obss_pd->enable = true; @@ -6010,7 +6016,7 @@ if (info->attrs[NL80211_ATTR_HE_6GHZ_CAPABILITY]) params.he_6ghz_capa = - nla_data(info->attrs[NL80211_ATTR_HE_CAPABILITY]); + nla_data(info->attrs[NL80211_ATTR_HE_6GHZ_CAPABILITY]); if (info->attrs[NL80211_ATTR_AIRTIME_WEIGHT]) params.airtime_weight = @@ -12338,7 +12344,7 @@ struct net_device *dev = info->user_ptr[1]; struct wireless_dev *wdev = dev->ieee80211_ptr; struct nlattr *tb[NUM_NL80211_REKEY_DATA]; - struct cfg80211_gtk_rekey_data rekey_data; + struct cfg80211_gtk_rekey_data rekey_data = {}; int err; if (!info->attrs[NL80211_ATTR_REKEY_DATA]) --- linux-azure-5.8-5.8.0.orig/net/wireless/reg.c +++ linux-azure-5.8-5.8.0/net/wireless/reg.c @@ -2944,6 +2944,9 @@ if (WARN_ON(!alpha2)) return -EINVAL; + if (!is_world_regdom(alpha2) && !is_an_alpha2(alpha2)) + return -EINVAL; + request = kzalloc(sizeof(struct regulatory_request), GFP_KERNEL); if (!request) return -ENOMEM; @@ -3406,7 +3409,7 @@ power_rule = ®_rule->power_rule; if (reg_rule->flags & NL80211_RRF_AUTO_BW) - snprintf(bw, sizeof(bw), "%d KHz, %d KHz AUTO", + snprintf(bw, sizeof(bw), "%d KHz, %u KHz AUTO", freq_range->max_bandwidth_khz, reg_get_max_bandwidth(rd, reg_rule)); else --- linux-azure-5.8-5.8.0.orig/net/wireless/util.c +++ linux-azure-5.8-5.8.0/net/wireless/util.c @@ -95,7 +95,7 @@ /* see 802.11ax D6.1 27.3.23.2 */ if (chan == 2) return MHZ_TO_KHZ(5935); - if (chan <= 253) + if (chan <= 233) return MHZ_TO_KHZ(5950 + chan * 5); break; case NL80211_BAND_60GHZ: @@ -121,11 +121,13 @@ return (freq - 2407) / 5; else if (freq >= 4910 && freq <= 4980) return (freq - 4000) / 5; - else if (freq < 5945) + else if (freq < 5925) return (freq - 5000) / 5; + else if (freq == 5935) + return 2; else if (freq <= 45000) /* DMG band lower limit */ - /* see 802.11ax D4.1 27.3.22.2 */ - return (freq - 5940) / 5; + /* see 802.11ax D6.1 27.3.22.2 */ + return (freq - 5950) / 5; else if (freq >= 58320 && freq <= 70200) return (freq - 56160) / 2160; else @@ -235,18 +237,53 @@ return false; } -int cfg80211_validate_key_settings(struct cfg80211_registered_device *rdev, - struct key_params *params, int key_idx, - bool pairwise, const u8 *mac_addr) +static bool +cfg80211_igtk_cipher_supported(struct cfg80211_registered_device *rdev) +{ + struct wiphy *wiphy = &rdev->wiphy; + int i; + + for (i = 0; i < wiphy->n_cipher_suites; i++) { + switch (wiphy->cipher_suites[i]) { + case WLAN_CIPHER_SUITE_AES_CMAC: + case WLAN_CIPHER_SUITE_BIP_CMAC_256: + case WLAN_CIPHER_SUITE_BIP_GMAC_128: + case WLAN_CIPHER_SUITE_BIP_GMAC_256: + return true; + } + } + + return false; +} + +bool cfg80211_valid_key_idx(struct cfg80211_registered_device *rdev, + int key_idx, bool pairwise) { - int max_key_idx = 5; + int max_key_idx; - if (wiphy_ext_feature_isset(&rdev->wiphy, - NL80211_EXT_FEATURE_BEACON_PROTECTION) || - wiphy_ext_feature_isset(&rdev->wiphy, - NL80211_EXT_FEATURE_BEACON_PROTECTION_CLIENT)) + if (pairwise) + max_key_idx = 3; + else if (wiphy_ext_feature_isset(&rdev->wiphy, + NL80211_EXT_FEATURE_BEACON_PROTECTION) || + wiphy_ext_feature_isset(&rdev->wiphy, + NL80211_EXT_FEATURE_BEACON_PROTECTION_CLIENT)) max_key_idx = 7; + else if (cfg80211_igtk_cipher_supported(rdev)) + max_key_idx = 5; + else + max_key_idx = 3; + if (key_idx < 0 || key_idx > max_key_idx) + return false; + + return true; +} + +int cfg80211_validate_key_settings(struct cfg80211_registered_device *rdev, + struct key_params *params, int key_idx, + bool pairwise, const u8 *mac_addr) +{ + if (!cfg80211_valid_key_idx(rdev, key_idx, pairwise)) return -EINVAL; if (!pairwise && mac_addr && !(rdev->wiphy.flags & WIPHY_FLAG_IBSS_RSN)) --- linux-azure-5.8-5.8.0.orig/net/wireless/wext-core.c +++ linux-azure-5.8-5.8.0/net/wireless/wext-core.c @@ -896,8 +896,9 @@ int call_commit_handler(struct net_device *dev) { #ifdef CONFIG_WIRELESS_EXT - if ((netif_running(dev)) && - (dev->wireless_handlers->standard[0] != NULL)) + if (netif_running(dev) && + dev->wireless_handlers && + dev->wireless_handlers->standard[0]) /* Call the commit handler on the driver */ return dev->wireless_handlers->standard[0](dev, NULL, NULL, NULL); --- linux-azure-5.8-5.8.0.orig/net/x25/af_x25.c +++ linux-azure-5.8-5.8.0/net/x25/af_x25.c @@ -681,7 +681,8 @@ int len, i, rc = 0; if (addr_len != sizeof(struct sockaddr_x25) || - addr->sx25_family != AF_X25) { + addr->sx25_family != AF_X25 || + strnlen(addr->sx25_addr.x25_addr, X25_ADDR_LEN) == X25_ADDR_LEN) { rc = -EINVAL; goto out; } @@ -775,7 +776,8 @@ rc = -EINVAL; if (addr_len != sizeof(struct sockaddr_x25) || - addr->sx25_family != AF_X25) + addr->sx25_family != AF_X25 || + strnlen(addr->sx25_addr.x25_addr, X25_ADDR_LEN) == X25_ADDR_LEN) goto out; rc = -ENETUNREACH; @@ -825,7 +827,7 @@ sock->state = SS_CONNECTED; rc = 0; out_put_neigh: - if (rc) { + if (rc && x25->neighbour) { read_lock_bh(&x25_list_lock); x25_neigh_put(x25->neighbour); x25->neighbour = NULL; @@ -1050,6 +1052,7 @@ makex25->lci = lci; makex25->dest_addr = dest_addr; makex25->source_addr = source_addr; + x25_neigh_hold(nb); makex25->neighbour = nb; makex25->facilities = facilities; makex25->dte_facilities= dte_facilities; --- linux-azure-5.8-5.8.0.orig/net/xdp/xdp_umem.c +++ linux-azure-5.8-5.8.0/net/xdp/xdp_umem.c @@ -303,10 +303,10 @@ static int xdp_umem_reg(struct xdp_umem *umem, struct xdp_umem_reg *mr) { + u32 npgs_rem, chunk_size = mr->chunk_size, headroom = mr->headroom; bool unaligned_chunks = mr->flags & XDP_UMEM_UNALIGNED_CHUNK_FLAG; - u32 chunk_size = mr->chunk_size, headroom = mr->headroom; u64 npgs, addr = mr->addr, size = mr->len; - unsigned int chunks, chunks_per_page; + unsigned int chunks, chunks_rem; int err; if (chunk_size < XDP_UMEM_MIN_CHUNK_SIZE || chunk_size > PAGE_SIZE) { @@ -336,19 +336,18 @@ if ((addr + size) < addr) return -EINVAL; - npgs = size >> PAGE_SHIFT; + npgs = div_u64_rem(size, PAGE_SIZE, &npgs_rem); + if (npgs_rem) + npgs++; if (npgs > U32_MAX) return -EINVAL; - chunks = (unsigned int)div_u64(size, chunk_size); + chunks = (unsigned int)div_u64_rem(size, chunk_size, &chunks_rem); if (chunks == 0) return -EINVAL; - if (!unaligned_chunks) { - chunks_per_page = PAGE_SIZE / chunk_size; - if (chunks < chunks_per_page || chunks % chunks_per_page) - return -EINVAL; - } + if (!unaligned_chunks && chunks_rem) + return -EINVAL; if (headroom >= chunk_size - XDP_PACKET_HEADROOM) return -EINVAL; --- linux-azure-5.8-5.8.0.orig/net/xdp/xsk.c +++ linux-azure-5.8-5.8.0/net/xdp/xsk.c @@ -375,10 +375,19 @@ skb_shinfo(skb)->destructor_arg = (void *)(long)desc.addr; skb->destructor = xsk_destruct_skb; - err = dev_direct_xmit(skb, xs->queue_id); + err = __dev_direct_xmit(skb, xs->queue_id); + if (err == NETDEV_TX_BUSY) { + /* Tell user-space to retry the send */ + skb->destructor = sock_wfree; + /* Free skb without triggering the perf drop trace */ + consume_skb(skb); + err = -EAGAIN; + goto out; + } + xskq_cons_release(xs->tx); /* Ignore NET_XMIT_CN as packet might have been sent */ - if (err == NET_XMIT_DROP || err == NETDEV_TX_BUSY) { + if (err == NET_XMIT_DROP) { /* SKB completed but not sent */ err = -EBUSY; goto out; @@ -424,11 +433,13 @@ static __poll_t xsk_poll(struct file *file, struct socket *sock, struct poll_table_struct *wait) { - __poll_t mask = datagram_poll(file, sock, wait); + __poll_t mask = 0; struct sock *sk = sock->sk; struct xdp_sock *xs = xdp_sk(sk); struct xdp_umem *umem; + sock_poll_wait(file, sock, wait); + if (unlikely(!xsk_is_bound(xs))) return mask; --- linux-azure-5.8-5.8.0.orig/net/xfrm/espintcp.c +++ linux-azure-5.8-5.8.0/net/xfrm/espintcp.c @@ -29,8 +29,12 @@ static void handle_esp(struct sk_buff *skb, struct sock *sk) { + struct tcp_skb_cb *tcp_cb = (struct tcp_skb_cb *)skb->cb; + skb_reset_transport_header(skb); - memset(skb->cb, 0, sizeof(skb->cb)); + + /* restore IP CB, we need at least IP6CB->nhoff */ + memmove(skb->cb, &tcp_cb->header, sizeof(tcp_cb->header)); rcu_read_lock(); skb->dev = dev_get_by_index_rcu(sock_net(sk), skb->skb_iif); --- linux-azure-5.8-5.8.0.orig/net/xfrm/xfrm_input.c +++ linux-azure-5.8-5.8.0/net/xfrm/xfrm_input.c @@ -658,7 +658,7 @@ /* only the first xfrm gets the encap type */ encap_type = 0; - if (async && x->repl->recheck(x, skb, seq)) { + if (x->repl->recheck(x, skb, seq)) { XFRM_INC_STATS(net, LINUX_MIB_XFRMINSTATESEQERROR); goto drop_unlock; } --- linux-azure-5.8-5.8.0.orig/net/xfrm/xfrm_interface.c +++ linux-azure-5.8-5.8.0/net/xfrm/xfrm_interface.c @@ -292,7 +292,7 @@ } mtu = dst_mtu(dst); - if (!skb->ignore_df && skb->len > mtu) { + if (skb->len > mtu) { skb_dst_update_pmtu_no_confirm(skb, mtu); if (skb->protocol == htons(ETH_P_IPV6)) { --- linux-azure-5.8-5.8.0.orig/net/xfrm/xfrm_policy.c +++ linux-azure-5.8-5.8.0/net/xfrm/xfrm_policy.c @@ -793,15 +793,22 @@ const xfrm_address_t *b, u8 prefixlen, u16 family) { + u32 ma, mb, mask; unsigned int pdw, pbi; int delta = 0; switch (family) { case AF_INET: - if (sizeof(long) == 4 && prefixlen == 0) - return ntohl(a->a4) - ntohl(b->a4); - return (ntohl(a->a4) & ((~0UL << (32 - prefixlen)))) - - (ntohl(b->a4) & ((~0UL << (32 - prefixlen)))); + if (prefixlen == 0) + return 0; + mask = ~0U << (32 - prefixlen); + ma = ntohl(a->a4) & mask; + mb = ntohl(b->a4) & mask; + if (ma < mb) + delta = -1; + else if (ma > mb) + delta = 1; + break; case AF_INET6: pdw = prefixlen >> 5; pbi = prefixlen & 0x1f; @@ -812,10 +819,13 @@ return delta; } if (pbi) { - u32 mask = ~0u << (32 - pbi); - - delta = (ntohl(a->a6[pdw]) & mask) - - (ntohl(b->a6[pdw]) & mask); + mask = ~0U << (32 - pbi); + ma = ntohl(a->a6[pdw]) & mask; + mb = ntohl(b->a6[pdw]) & mask; + if (ma < mb) + delta = -1; + else if (ma > mb) + delta = 1; } break; default: @@ -3067,8 +3077,8 @@ xflo.flags = flags; /* To accelerate a bit... */ - if ((dst_orig->flags & DST_NOXFRM) || - !net->xfrm.policy_count[XFRM_POLICY_OUT]) + if (!if_id && ((dst_orig->flags & DST_NOXFRM) || + !net->xfrm.policy_count[XFRM_POLICY_OUT])) goto nopol; xdst = xfrm_bundle_lookup(net, fl, family, dir, &xflo, if_id); --- linux-azure-5.8-5.8.0.orig/net/xfrm/xfrm_state.c +++ linux-azure-5.8-5.8.0/net/xfrm/xfrm_state.c @@ -1019,7 +1019,8 @@ */ if (x->km.state == XFRM_STATE_VALID) { if ((x->sel.family && - !xfrm_selector_match(&x->sel, fl, x->sel.family)) || + (x->sel.family != family || + !xfrm_selector_match(&x->sel, fl, family))) || !security_xfrm_state_pol_flow_match(x, pol, fl)) return; @@ -1032,7 +1033,9 @@ *acq_in_progress = 1; } else if (x->km.state == XFRM_STATE_ERROR || x->km.state == XFRM_STATE_EXPIRED) { - if (xfrm_selector_match(&x->sel, fl, x->sel.family) && + if ((!x->sel.family || + (x->sel.family == family && + xfrm_selector_match(&x->sel, fl, family))) && security_xfrm_state_pol_flow_match(x, pol, fl)) *error = -ESRCH; } @@ -1072,7 +1075,7 @@ tmpl->mode == x->props.mode && tmpl->id.proto == x->id.proto && (tmpl->id.spi == x->id.spi || !tmpl->id.spi)) - xfrm_state_look_at(pol, x, fl, encap_family, + xfrm_state_look_at(pol, x, fl, family, &best, &acquire_in_progress, &error); } if (best || acquire_in_progress) @@ -1089,7 +1092,7 @@ tmpl->mode == x->props.mode && tmpl->id.proto == x->id.proto && (tmpl->id.spi == x->id.spi || !tmpl->id.spi)) - xfrm_state_look_at(pol, x, fl, encap_family, + xfrm_state_look_at(pol, x, fl, family, &best, &acquire_in_progress, &error); } @@ -1441,6 +1444,30 @@ EXPORT_SYMBOL(xfrm_state_add); #ifdef CONFIG_XFRM_MIGRATE +static inline int clone_security(struct xfrm_state *x, struct xfrm_sec_ctx *security) +{ + struct xfrm_user_sec_ctx *uctx; + int size = sizeof(*uctx) + security->ctx_len; + int err; + + uctx = kmalloc(size, GFP_KERNEL); + if (!uctx) + return -ENOMEM; + + uctx->exttype = XFRMA_SEC_CTX; + uctx->len = size; + uctx->ctx_doi = security->ctx_doi; + uctx->ctx_alg = security->ctx_alg; + uctx->ctx_len = security->ctx_len; + memcpy(uctx + 1, security->ctx_str, security->ctx_len); + err = security_xfrm_state_alloc(x, uctx); + kfree(uctx); + if (err) + return err; + + return 0; +} + static struct xfrm_state *xfrm_state_clone(struct xfrm_state *orig, struct xfrm_encap_tmpl *encap) { @@ -1497,6 +1524,10 @@ goto error; } + if (orig->security) + if (clone_security(x, orig->security)) + goto error; + if (orig->coaddr) { x->coaddr = kmemdup(orig->coaddr, sizeof(*x->coaddr), GFP_KERNEL); @@ -1510,6 +1541,7 @@ } memcpy(&x->mark, &orig->mark, sizeof(x->mark)); + memcpy(&x->props.smark, &orig->props.smark, sizeof(x->props.smark)); if (xfrm_init_state(x) < 0) goto error; @@ -1521,7 +1553,7 @@ x->tfcpad = orig->tfcpad; x->replay_maxdiff = orig->replay_maxdiff; x->replay_maxage = orig->replay_maxage; - x->curlft.add_time = orig->curlft.add_time; + memcpy(&x->curlft, &orig->curlft, sizeof(x->curlft)); x->km.state = orig->km.state; x->km.seq = orig->km.seq; x->replay = orig->replay; @@ -1972,6 +2004,7 @@ int err = -ENOENT; __be32 minspi = htonl(low); __be32 maxspi = htonl(high); + __be32 newspi = 0; u32 mark = x->mark.v & x->mark.m; spin_lock_bh(&x->lock); @@ -1990,21 +2023,22 @@ xfrm_state_put(x0); goto unlock; } - x->id.spi = minspi; + newspi = minspi; } else { u32 spi = 0; for (h = 0; h < high-low+1; h++) { spi = low + prandom_u32()%(high-low+1); x0 = xfrm_state_lookup(net, mark, &x->id.daddr, htonl(spi), x->id.proto, x->props.family); if (x0 == NULL) { - x->id.spi = htonl(spi); + newspi = htonl(spi); break; } xfrm_state_put(x0); } } - if (x->id.spi) { + if (newspi) { spin_lock_bh(&net->xfrm.xfrm_state_lock); + x->id.spi = newspi; h = xfrm_spi_hash(net, &x->id.daddr, x->id.spi, x->id.proto, x->props.family); hlist_add_head_rcu(&x->byspi, net->xfrm.state_byspi + h); spin_unlock_bh(&net->xfrm.xfrm_state_lock); --- linux-azure-5.8-5.8.0.orig/samples/Kconfig +++ linux-azure-5.8-5.8.0/samples/Kconfig @@ -210,7 +210,7 @@ depends on CC_CAN_LINK config SAMPLE_WATCH_QUEUE - bool "Build example /dev/watch_queue notification consumer" + bool "Build example watch_queue notification API consumer" depends on CC_CAN_LINK && HEADERS_INSTALL help Build example userspace program to use the new mount_notify(), --- linux-azure-5.8-5.8.0.orig/samples/bpf/fds_example.c +++ linux-azure-5.8-5.8.0/samples/bpf/fds_example.c @@ -30,6 +30,8 @@ #define BPF_M_MAP 1 #define BPF_M_PROG 2 +char bpf_log_buf[BPF_LOG_BUF_SIZE]; + static void usage(void) { printf("Usage: fds_example [...]\n"); @@ -57,7 +59,6 @@ BPF_EXIT_INSN(), }; size_t insns_cnt = sizeof(insns) / sizeof(struct bpf_insn); - char bpf_log_buf[BPF_LOG_BUF_SIZE]; struct bpf_object *obj; int prog_fd; --- linux-azure-5.8-5.8.0.orig/samples/bpf/lwt_len_hist.sh +++ linux-azure-5.8-5.8.0/samples/bpf/lwt_len_hist.sh @@ -8,6 +8,8 @@ TRACE_ROOT=/sys/kernel/debug/tracing function cleanup { + # To reset saved histogram, remove pinned map + rm /sys/fs/bpf/tc/globals/lwt_len_hist_map ip route del 192.168.253.2/32 dev $VETH0 2> /dev/null ip link del $VETH0 2> /dev/null ip link del $VETH1 2> /dev/null --- linux-azure-5.8-5.8.0.orig/samples/bpf/map_perf_test_kern.c +++ linux-azure-5.8-5.8.0/samples/bpf/map_perf_test_kern.c @@ -11,6 +11,8 @@ #include #include "bpf_legacy.h" #include +#include +#include "trace_common.h" #define MAX_ENTRIES 1000 #define MAX_NR_CPUS 1024 @@ -154,9 +156,10 @@ return 0; } -SEC("kprobe/sys_connect") +SEC("kprobe/" SYSCALL(sys_connect)) int stress_lru_hmap_alloc(struct pt_regs *ctx) { + struct pt_regs *real_regs = (struct pt_regs *)PT_REGS_PARM1_CORE(ctx); char fmt[] = "Failed at stress_lru_hmap_alloc. ret:%dn"; union { u16 dst6[8]; @@ -175,8 +178,8 @@ long val = 1; u32 key = 0; - in6 = (struct sockaddr_in6 *)PT_REGS_PARM2(ctx); - addrlen = (int)PT_REGS_PARM3(ctx); + in6 = (struct sockaddr_in6 *)PT_REGS_PARM2_CORE(real_regs); + addrlen = (int)PT_REGS_PARM3_CORE(real_regs); if (addrlen != sizeof(*in6)) return 0; --- linux-azure-5.8-5.8.0.orig/samples/bpf/test_map_in_map_kern.c +++ linux-azure-5.8-5.8.0/samples/bpf/test_map_in_map_kern.c @@ -13,6 +13,8 @@ #include #include "bpf_legacy.h" #include +#include +#include "trace_common.h" #define MAX_NR_PORTS 65536 @@ -102,9 +104,10 @@ return result ? *result : -ENOENT; } -SEC("kprobe/sys_connect") +SEC("kprobe/" SYSCALL(sys_connect)) int trace_sys_connect(struct pt_regs *ctx) { + struct pt_regs *real_regs = (struct pt_regs *)PT_REGS_PARM1_CORE(ctx); struct sockaddr_in6 *in6; u16 test_case, port, dst6[8]; int addrlen, ret, inline_ret, ret_key = 0; @@ -112,8 +115,8 @@ void *outer_map, *inner_map; bool inline_hash = false; - in6 = (struct sockaddr_in6 *)PT_REGS_PARM2(ctx); - addrlen = (int)PT_REGS_PARM3(ctx); + in6 = (struct sockaddr_in6 *)PT_REGS_PARM2_CORE(real_regs); + addrlen = (int)PT_REGS_PARM3_CORE(real_regs); if (addrlen != sizeof(*in6)) return 0; --- linux-azure-5.8-5.8.0.orig/samples/bpf/test_probe_write_user_kern.c +++ linux-azure-5.8-5.8.0/samples/bpf/test_probe_write_user_kern.c @@ -10,6 +10,8 @@ #include #include #include +#include +#include "trace_common.h" struct bpf_map_def SEC("maps") dnat_map = { .type = BPF_MAP_TYPE_HASH, @@ -26,13 +28,14 @@ * This example sits on a syscall, and the syscall ABI is relatively stable * of course, across platforms, and over time, the ABI may change. */ -SEC("kprobe/sys_connect") +SEC("kprobe/" SYSCALL(sys_connect)) int bpf_prog1(struct pt_regs *ctx) { + struct pt_regs *real_regs = (struct pt_regs *)PT_REGS_PARM1_CORE(ctx); + void *sockaddr_arg = (void *)PT_REGS_PARM2_CORE(real_regs); + int sockaddr_len = (int)PT_REGS_PARM3_CORE(real_regs); struct sockaddr_in new_addr, orig_addr = {}; struct sockaddr_in *mapped_addr; - void *sockaddr_arg = (void *)PT_REGS_PARM2(ctx); - int sockaddr_len = (int)PT_REGS_PARM3(ctx); if (sockaddr_len > sizeof(orig_addr)) return 0; --- linux-azure-5.8-5.8.0.orig/samples/bpf/xdpsock_user.c +++ linux-azure-5.8-5.8.0/samples/bpf/xdpsock_user.c @@ -921,7 +921,7 @@ } } -static void tx_only(struct xsk_socket_info *xsk, u32 frame_nb, int batch_size) +static void tx_only(struct xsk_socket_info *xsk, u32 *frame_nb, int batch_size) { u32 idx; unsigned int i; @@ -929,19 +929,21 @@ while (xsk_ring_prod__reserve(&xsk->tx, batch_size, &idx) < batch_size) { complete_tx_only(xsk, batch_size); + if (benchmark_done) + return; } for (i = 0; i < batch_size; i++) { struct xdp_desc *tx_desc = xsk_ring_prod__tx_desc(&xsk->tx, idx + i); - tx_desc->addr = (frame_nb + i) << XSK_UMEM__DEFAULT_FRAME_SHIFT; + tx_desc->addr = (*frame_nb + i) << XSK_UMEM__DEFAULT_FRAME_SHIFT; tx_desc->len = PKT_SIZE; } xsk_ring_prod__submit(&xsk->tx, batch_size); xsk->outstanding_tx += batch_size; - frame_nb += batch_size; - frame_nb %= NUM_FRAMES; + *frame_nb += batch_size; + *frame_nb %= NUM_FRAMES; complete_tx_only(xsk, batch_size); } @@ -997,7 +999,7 @@ } for (i = 0; i < num_socks; i++) - tx_only(xsks[i], frame_nb[i], batch_size); + tx_only(xsks[i], &frame_nb[i], batch_size); pkt_cnt += batch_size; @@ -1028,6 +1030,7 @@ while (ret != rcvd) { if (ret < 0) exit_with_error(-ret); + complete_tx_l2fwd(xsk, fds); if (xsk_ring_prod__needs_wakeup(&xsk->tx)) kick_tx(xsk); ret = xsk_ring_prod__reserve(&xsk->tx, rcvd, &idx_tx); --- linux-azure-5.8-5.8.0.orig/samples/ftrace/ftrace-direct-modify.c +++ linux-azure-5.8-5.8.0/samples/ftrace/ftrace-direct-modify.c @@ -21,6 +21,7 @@ asm ( " .pushsection .text, \"ax\", @progbits\n" " .type my_tramp1, @function\n" +" .globl my_tramp1\n" " my_tramp1:" " pushq %rbp\n" " movq %rsp, %rbp\n" @@ -29,6 +30,7 @@ " .size my_tramp1, .-my_tramp1\n" " ret\n" " .type my_tramp2, @function\n" +" .globl my_tramp2\n" " my_tramp2:" " pushq %rbp\n" " movq %rsp, %rbp\n" --- linux-azure-5.8-5.8.0.orig/samples/ftrace/ftrace-direct-too.c +++ linux-azure-5.8-5.8.0/samples/ftrace/ftrace-direct-too.c @@ -16,6 +16,7 @@ asm ( " .pushsection .text, \"ax\", @progbits\n" " .type my_tramp, @function\n" +" .globl my_tramp\n" " my_tramp:" " pushq %rbp\n" " movq %rsp, %rbp\n" --- linux-azure-5.8-5.8.0.orig/samples/ftrace/ftrace-direct.c +++ linux-azure-5.8-5.8.0/samples/ftrace/ftrace-direct.c @@ -14,6 +14,7 @@ asm ( " .pushsection .text, \"ax\", @progbits\n" " .type my_tramp, @function\n" +" .globl my_tramp\n" " my_tramp:" " pushq %rbp\n" " movq %rsp, %rbp\n" --- linux-azure-5.8-5.8.0.orig/samples/mic/mpssd/mpssd.c +++ linux-azure-5.8-5.8.0/samples/mic/mpssd/mpssd.c @@ -403,9 +403,9 @@ static inline unsigned _vring_size(unsigned int num, unsigned long align) { - return ((sizeof(struct vring_desc) * num + sizeof(__u16) * (3 + num) + return _ALIGN_UP(((sizeof(struct vring_desc) * num + sizeof(__u16) * (3 + num) + align - 1) & ~(align - 1)) - + sizeof(__u16) * 3 + sizeof(struct vring_used_elem) * num; + + sizeof(__u16) * 3 + sizeof(struct vring_used_elem) * num, 4); } /* --- linux-azure-5.8-5.8.0.orig/samples/watch_queue/watch_test.c +++ linux-azure-5.8-5.8.0/samples/watch_queue/watch_test.c @@ -1,5 +1,5 @@ // SPDX-License-Identifier: GPL-2.0 -/* Use /dev/watch_queue to watch for notifications. +/* Use watch_queue API to watch for notifications. * * Copyright (C) 2020 Red Hat, Inc. All Rights Reserved. * Written by David Howells (dhowells@redhat.com) --- linux-azure-5.8-5.8.0.orig/scripts/Makefile +++ linux-azure-5.8-5.8.0/scripts/Makefile @@ -3,6 +3,9 @@ # scripts contains sources for various helper programs used throughout # the kernel for the build process. +CRYPTO_LIBS = $(shell pkg-config --libs libcrypto 2> /dev/null || echo -lcrypto) +CRYPTO_CFLAGS = $(shell pkg-config --cflags libcrypto 2> /dev/null) + always-$(CONFIG_BUILD_BIN2C) += bin2c always-$(CONFIG_KALLSYMS) += kallsyms always-$(BUILD_C_RECORDMCOUNT) += recordmcount @@ -14,8 +17,10 @@ HOSTCFLAGS_sorttable.o = -I$(srctree)/tools/include HOSTCFLAGS_asn1_compiler.o = -I$(srctree)/include -HOSTLDLIBS_sign-file = -lcrypto -HOSTLDLIBS_extract-cert = -lcrypto +HOSTCFLAGS_sign-file.o = $(CRYPTO_CFLAGS) +HOSTLDLIBS_sign-file = $(CRYPTO_LIBS) +HOSTCFLAGS_extract-cert.o = $(CRYPTO_CFLAGS) +HOSTLDLIBS_extract-cert = $(CRYPTO_LIBS) ifdef CONFIG_UNWINDER_ORC ifeq ($(ARCH),x86_64) --- linux-azure-5.8-5.8.0.orig/scripts/Makefile.build +++ linux-azure-5.8-5.8.0/scripts/Makefile.build @@ -249,6 +249,15 @@ ifdef CONFIG_TRIM_UNUSED_KSYMS cmd_gen_ksymdeps = \ $(CONFIG_SHELL) $(srctree)/scripts/gen_ksymdeps.sh $@ >> $(dot-target).cmd + +# List module undefined symbols +undefined_syms = $(NM) $< | $(AWK) '$$1 == "U" { printf("%s%s", x++ ? " " : "", $$2) }'; +endif + +ifdef CONFIG_RETPOLINE +cmd_ubuntu_retpoline = $(CONFIG_SHELL) $(srctree)/scripts/ubuntu-retpoline-extract-one $(@) $(<) "$(filter -m16 %code16gcc.h,$(a_flags))"; +else +cmd_ubuntu_retpoline = endif define rule_cc_o_c @@ -258,6 +267,7 @@ $(call cmd,checkdoc) $(call cmd,objtool) $(call cmd,modversions_c) + $(call cmd,ubuntu-retpoline) $(call cmd,record_mcount) endef @@ -266,23 +276,18 @@ $(call cmd,gen_ksymdeps) $(call cmd,objtool) $(call cmd,modversions_S) + $(call cmd,ubuntu-retpoline) endef -# List module undefined symbols (or empty line if not enabled) -ifdef CONFIG_TRIM_UNUSED_KSYMS -cmd_undef_syms = $(NM) $< | sed -n 's/^ *U //p' | xargs echo -else -cmd_undef_syms = echo -endif - # Built-in and composite module parts $(obj)/%.o: $(src)/%.c $(recordmcount_source) $(objtool_dep) FORCE $(call cmd,force_checksrc) + $(call cmd,force_check_kmsg) $(call if_changed_rule,cc_o_c) cmd_mod = { \ echo $(if $($*-objs)$($*-y)$($*-m), $(addprefix $(obj)/, $($*-objs) $($*-y) $($*-m)), $(@:.mod=.o)); \ - $(cmd_undef_syms); \ + $(undefined_syms) echo; \ } > $@ $(obj)/%.mod: $(obj)/%.o FORCE @@ -489,6 +494,19 @@ endif +# kmsg check tool +ifneq ($(KBUILD_KMSG_CHECK),0) + ifeq ($(KBUILD_KMSG_CHECK),2) + kmsg_cmd := print + quiet_cmd_force_check_kmsg = KMSG_PRINT $< + $(shell [ -d $(objtree)/man ] || mkdir -p $(objtree)/man) + else + kmsg_cmd := check + quiet_cmd_force_check_kmsg = KMSG_CHECK $< + endif + cmd_force_check_kmsg = $(KMSG_CHECK) $(kmsg_cmd) $(CC) $(c_flags) $< ; +endif + # Descending # --------------------------------------------------------------------------- --- linux-azure-5.8-5.8.0.orig/scripts/Makefile.modinst +++ linux-azure-5.8-5.8.0/scripts/Makefile.modinst @@ -20,8 +20,12 @@ mkdir -p $(2) ; \ cp $@ $(2) ; \ $(mod_strip_cmd) $(2)/$(notdir $@) ; \ - $(mod_sign_cmd) $(2)/$(notdir $@) $(patsubst %,|| true,$(KBUILD_EXTMOD)) ; \ - $(mod_compress_cmd) $(2)/$(notdir $@) + if (echo "$(2)/$(notdir $@)" | egrep -q "\/drivers\/staging\/") && \ + [ -f $(srctree)/drivers/staging/signature-inclusion ] && \ + (! egrep -x "$(notdir $@)" $(srctree)/drivers/staging/signature-inclusion) ; \ + then echo Not signing "$(2)/$(notdir $@)"; \ + else $(mod_sign_cmd) $(2)/$(notdir $@) $(patsubst %,|| true,$(KBUILD_EXTMOD)) ; \ + $(mod_compress_cmd) $(2)/$(notdir $@); fi # Modules built outside the kernel source tree go into extra by default INSTALL_MOD_DIR ?= extra --- linux-azure-5.8-5.8.0.orig/scripts/checkpatch.pl +++ linux-azure-5.8-5.8.0/scripts/checkpatch.pl @@ -2636,8 +2636,8 @@ # Check if the commit log has what seems like a diff which can confuse patch if ($in_commit_log && !$commit_log_has_diff && - (($line =~ m@^\s+diff\b.*a/[\w/]+@ && - $line =~ m@^\s+diff\b.*a/([\w/]+)\s+b/$1\b@) || + (($line =~ m@^\s+diff\b.*a/([\w/]+)@ && + $line =~ m@^\s+diff\b.*a/[\w/]+\s+b/$1\b@) || $line =~ m@^\s*(?:\-\-\-\s+a/|\+\+\+\s+b/)@ || $line =~ m/^\s*\@\@ \-\d+,\d+ \+\d+,\d+ \@\@/)) { ERROR("DIFF_IN_COMMIT_MSG", @@ -4265,7 +4265,7 @@ $fix) { fix_delete_line($fixlinenr, $rawline); my $fixed_line = $rawline; - $fixed_line =~ /(^..*$Type\s*$Ident\(.*\)\s*){(.*)$/; + $fixed_line =~ /(^..*$Type\s*$Ident\(.*\)\s*)\{(.*)$/; my $line1 = $1; my $line2 = $2; fix_insert_line($fixlinenr, ltrim($line1)); --- linux-azure-5.8-5.8.0.orig/scripts/coccinelle/misc/add_namespace.cocci +++ linux-azure-5.8-5.8.0/scripts/coccinelle/misc/add_namespace.cocci @@ -6,6 +6,7 @@ /// add a missing namespace tag to a module source file. /// +virtual nsdeps virtual report @has_ns_import@ @@ -16,10 +17,15 @@ // Add missing imports, but only adjacent to a MODULE_LICENSE statement. // That ensures we are adding it only to the main module source file. -@do_import depends on !has_ns_import@ +@do_import depends on !has_ns_import && nsdeps@ declarer name MODULE_LICENSE; expression license; identifier virtual.ns; @@ MODULE_LICENSE(license); + MODULE_IMPORT_NS(ns); + +// Dummy rule for report mode that would otherwise be empty and make spatch +// fail ("No rules apply.") +@script:python depends on report@ +@@ --- linux-azure-5.8-5.8.0.orig/scripts/depmod.sh +++ linux-azure-5.8-5.8.0/scripts/depmod.sh @@ -15,6 +15,8 @@ exit 0 fi +# legacy behavior: "depmod" in /sbin, no /sbin in PATH +PATH="$PATH:/sbin" if [ -z $(command -v $DEPMOD) ]; then echo "Warning: 'make modules_install' requires $DEPMOD. Please install it." >&2 echo "This is probably in the kmod package." >&2 --- linux-azure-5.8-5.8.0.orig/scripts/dtc/Makefile +++ linux-azure-5.8-5.8.0/scripts/dtc/Makefile @@ -10,7 +10,7 @@ dtc-objs += dtc-lexer.lex.o dtc-parser.tab.o # Source files need to get at the userspace version of libfdt_env.h to compile -HOST_EXTRACFLAGS := -I $(srctree)/$(src)/libfdt +HOST_EXTRACFLAGS += -I $(srctree)/$(src)/libfdt ifeq ($(shell pkg-config --exists yaml-0.1 2>/dev/null && echo yes),) ifneq ($(CHECK_DT_BINDING)$(CHECK_DTBS),) --- linux-azure-5.8-5.8.0.orig/scripts/gen_autoksyms.sh +++ linux-azure-5.8-5.8.0/scripts/gen_autoksyms.sh @@ -43,6 +43,9 @@ sed 's/ko$/mod/' $modlist | xargs -n1 sed -n -e '2{s/ /\n/g;/^$/!p;}' -- | cat - "$ksym_wl" | +# Remove the dot prefix for ppc64; symbol names with a dot (.) hold entry +# point addresses. +sed -e 's/^\.//' | sort -u | sed -e 's/\(.*\)/#define __KSYM_\1 1/' >> "$output_file" --- linux-azure-5.8-5.8.0.orig/scripts/insert-sys-cert.c +++ linux-azure-5.8-5.8.0/scripts/insert-sys-cert.c @@ -7,7 +7,8 @@ * This software may be used and distributed according to the terms * of the GNU General Public License, incorporated herein by reference. * - * Usage: insert-sys-cert [-s -b -c + * Usage: insert-sys-cert [-s ] -b -c + * [-s ] -z -c */ #define _GNU_SOURCE @@ -257,6 +258,169 @@ return buf; } +static void get_payload_info(char *bzimage, int *offset, int *size) +{ + unsigned int system_offset; + unsigned char setup_sectors; + + setup_sectors = bzimage[0x1f1] + 1; + system_offset = setup_sectors * 512; + *offset = system_offset + *((int*)&bzimage[0x248]); + *size = *((int*)&bzimage[0x24c]); +} + +static void update_payload_info(char* bzimage, int new_size) +{ + int offset, size; + get_payload_info(bzimage, &offset, &size); + *((int*)&bzimage[0x24c]) = new_size; + if (new_size < size) + memset(bzimage + offset + new_size, 0, size - new_size); +} + +struct zipper { + unsigned char pattern[10]; + int length; + char *command; + char *compress; +}; + +struct zipper zippers[] = { + {{0x7F,'E','L','F'}, 4, "cat", "cat"}, + {{0x1F,0x8B}, 2, "gunzip", "gzip -n -f -9"}, + {{0xFD,'7','z','X','Z',0}, 6, "unxz", "xz"}, + {{'B','Z','h'},3, "bunzip2", "bzip2 -9"}, + {{0xFF,'L','Z','M','A',0}, 6, "unlzma", "lzma -9"}, + {{0xD3,'L','Z','O',0,'\r','\n',0x20,'\n'}, 9, "lzop -d", "lzop -9"} +}; + +static struct zipper* get_zipper(char *p) { + int i; + for (i = 0; i < sizeof(zippers)/sizeof(struct zipper); i++) { + if (memcmp(p, zippers[i].pattern, zippers[i].length) == 0) + return &zippers[i]; + } + return NULL; +} + +/* + * This only works for x86 bzImage + */ +static void extract_vmlinux(char *bzimage, int bzimage_size, + char **file, struct zipper **zipper) +{ + int r; + char src[15] = "vmlinux-XXXXXX"; + char dest[15] = "vmlinux-XXXXXX"; + char cmd[100]; + int src_fd, dest_fd; + int offset, size; + struct zipper *z; + + /* TODO: verify that bzImage is supported */ + + get_payload_info(bzimage, &offset, &size); + z = get_zipper(bzimage + offset); + if (z == NULL) { + err("Unable to determine the compression of vmlinux\n"); + return; + } + + src_fd = mkstemp(src); + if (src_fd == -1) { + perror("Could not create temp file"); + return; + } + + r = write(src_fd, bzimage + offset, size); + if (r != size) { + perror("Could not write vmlinux"); + return; + } + dest_fd = mkstemp(dest); + if (dest_fd == -1) { + perror("Could not create temp file"); + return; + } + + snprintf(cmd, sizeof(cmd), "%s <%s >%s", z->command, src, dest); + info("Executing: %s\n", cmd); + r = system(cmd); + if (r!=0) + warn("Possible errors when extracting\n"); + + r = remove(src); + if (r!=0) + perror(src); + + *file = strdup(dest); + *zipper = z; +} + +static void repack_image(char *bzimage, int bzimage_size, + char* vmlinux_file, struct zipper *z) +{ + char tmp[15] = "vmlinux-XXXXXX"; + char cmd[100]; + int fd; + struct stat st; + int new_size; + int r; + int offset, size; + + get_payload_info(bzimage, &offset, &size); + + fd = mkstemp(tmp); + if (fd == -1) { + perror("Could not create temp file"); + return; + } + snprintf(cmd, sizeof(cmd), "%s <%s >%s", + z->compress, vmlinux_file, tmp); + + info("Executing: %s\n", cmd); + r = system(cmd); + if (r!=0) + warn("Possible errors when compressing\n"); + + r = remove(vmlinux_file); + if (r!=0) + perror(vmlinux_file); + + if (fstat(fd, &st)) { + perror("Could not determine file size"); + close(fd); + + } + new_size = st.st_size; + if (new_size > size) { + err("Increase in compressed size is not supported.\n"); + err("Old size was %d, new size is %d\n", size, new_size); + exit(EXIT_FAILURE); + } + + r = read(fd, bzimage + offset, new_size); + if (r != new_size) + perror(tmp); + + r = remove(tmp); + if (r!=0) + perror(tmp); + + /* x86 specific patching of bzimage */ + update_payload_info(bzimage, new_size); + + /* TODO: update CRC */ + +} + +static void fill_random(unsigned char *p, int n) { + srand(0); + int i; + for (i = 0; i < n; i++) + p[i] = rand(); +} + static void print_sym(Elf_Ehdr *hdr, struct sym *s) { info("sym: %s\n", s->name); @@ -267,18 +431,23 @@ static void print_usage(char *e) { - printf("Usage %s [-s ] -b -c \n", e); + printf("Usage: %s [-s ] -b -c \n", e); + printf(" %s [-s ] -z -c \n", e); } int main(int argc, char **argv) { char *system_map_file = NULL; char *vmlinux_file = NULL; + char *bzimage_file = NULL; char *cert_file = NULL; int vmlinux_size; + int bzimage_size; int cert_size; Elf_Ehdr *hdr; char *cert; + char *bzimage = NULL; + struct zipper *z = NULL; FILE *system_map; unsigned long *lsize; int *used; @@ -286,7 +455,7 @@ Elf_Shdr *symtab = NULL; struct sym cert_sym, lsize_sym, used_sym; - while ((opt = getopt(argc, argv, "b:c:s:")) != -1) { + while ((opt = getopt(argc, argv, "b:z:c:s:")) != -1) { switch (opt) { case 's': system_map_file = optarg; @@ -294,6 +463,9 @@ case 'b': vmlinux_file = optarg; break; + case 'z': + bzimage_file = optarg; + break; case 'c': cert_file = optarg; break; @@ -302,7 +474,9 @@ } } - if (!vmlinux_file || !cert_file) { + if (!cert_file || + (!vmlinux_file && !bzimage_file) || + (vmlinux_file && bzimage_file)) { print_usage(argv[0]); exit(EXIT_FAILURE); } @@ -311,6 +485,16 @@ if (!cert) exit(EXIT_FAILURE); + if (bzimage_file) { + bzimage = map_file(bzimage_file, &bzimage_size); + if (!bzimage) + exit(EXIT_FAILURE); + + extract_vmlinux(bzimage, bzimage_size, &vmlinux_file, &z); + if (!vmlinux_file) + exit(EXIT_FAILURE); + } + hdr = map_file(vmlinux_file, &vmlinux_size); if (!hdr) exit(EXIT_FAILURE); @@ -386,7 +570,7 @@ } /* If the existing cert is the same, don't overwrite */ - if (cert_size == *used && + if (cert_size > 0 && cert_size == *used && strncmp(cert_sym.content, cert, cert_size) == 0) { warn("Certificate was already inserted.\n"); exit(EXIT_SUCCESS); @@ -396,9 +580,11 @@ warn("Replacing previously inserted certificate.\n"); memcpy(cert_sym.content, cert, cert_size); + if (cert_size < cert_sym.size) - memset(cert_sym.content + cert_size, - 0, cert_sym.size - cert_size); + /* This makes the reserved space incompressable */ + fill_random(cert_sym.content + cert_size, + cert_sym.size - cert_size); *lsize = *lsize + cert_size - *used; *used = cert_size; @@ -406,5 +592,15 @@ cert_sym.address); info("Used %d bytes out of %d bytes reserved.\n", *used, cert_sym.size); + + if (munmap(hdr, vmlinux_size) == -1) { + perror(vmlinux_file); + exit(EXIT_FAILURE); + } + + if (bzimage) { + repack_image(bzimage, bzimage_size, vmlinux_file, z); + } + exit(EXIT_SUCCESS); } --- linux-azure-5.8-5.8.0.orig/scripts/kallsyms.c +++ linux-azure-5.8-5.8.0/scripts/kallsyms.c @@ -82,6 +82,7 @@ static bool is_ignored_symbol(const char *name, char type) { + /* Symbol names that exactly match to the following are ignored.*/ static const char * const ignored_symbols[] = { /* * Symbols which vary between passes. Passes 1 and 2 must have @@ -104,14 +105,22 @@ NULL }; + /* Symbol names that begin with the following are ignored.*/ static const char * const ignored_prefixes[] = { "$", /* local symbols for ARM, MIPS, etc. */ ".LASANPC", /* s390 kasan local symbols */ "__crc_", /* modversions */ "__efistub_", /* arm64 EFI stub namespace */ + "__AArch64ADRPThunk_", /* arm64 lld */ + "__ARMV5PILongThunk_", /* arm lld */ + "__ARMV7PILongThunk_", + "__ThumbV7PILongThunk_", + "__LA25Thunk_", /* mips lld */ + "__microLA25Thunk_", NULL }; + /* Symbol names that end with the following are ignored.*/ static const char * const ignored_suffixes[] = { "_from_arm", /* arm */ "_from_thumb", /* arm */ @@ -119,9 +128,15 @@ NULL }; + /* Symbol names that contain the following are ignored.*/ + static const char * const ignored_matches[] = { + ".long_branch.", /* ppc stub */ + ".plt_branch.", /* ppc stub */ + NULL + }; + const char * const *p; - /* Exclude symbols which vary between passes. */ for (p = ignored_symbols; *p; p++) if (!strcmp(name, *p)) return true; @@ -137,6 +152,11 @@ return true; } + for (p = ignored_matches; *p; p++) { + if (strstr(name, *p)) + return true; + } + if (type == 'U' || type == 'u') return true; /* exclude debugging symbols */ --- linux-azure-5.8-5.8.0.orig/scripts/kconfig/lkc.h +++ linux-azure-5.8-5.8.0/scripts/kconfig/lkc.h @@ -60,7 +60,9 @@ /* confdata.c and expr.c */ static inline void xfwrite(const void *str, size_t len, size_t count, FILE *out) { - assert(len != 0); + //assert(len != 0); + if (len == 0) + return; if (fwrite(str, len, count, out) != count) fprintf(stderr, "Error in writing or end of file.\n"); --- linux-azure-5.8-5.8.0.orig/scripts/kconfig/preprocess.c +++ linux-azure-5.8-5.8.0/scripts/kconfig/preprocess.c @@ -114,7 +114,7 @@ if (!strcmp(argv[0], "y")) pperror("%s", argv[1]); - return NULL; + return xstrdup(""); } static char *do_filename(int argc, char *argv[]) --- linux-azure-5.8-5.8.0.orig/scripts/kconfig/qconf.cc +++ linux-azure-5.8-5.8.0/scripts/kconfig/qconf.cc @@ -864,40 +864,40 @@ void ConfigList::contextMenuEvent(QContextMenuEvent *e) { - if (e->y() <= header()->geometry().bottom()) { - if (!headerPopup) { - QAction *action; - - headerPopup = new QMenu(this); - action = new QAction("Show Name", this); - action->setCheckable(true); - connect(action, SIGNAL(toggled(bool)), - parent(), SLOT(setShowName(bool))); - connect(parent(), SIGNAL(showNameChanged(bool)), - action, SLOT(setOn(bool))); - action->setChecked(showName); - headerPopup->addAction(action); - action = new QAction("Show Range", this); - action->setCheckable(true); - connect(action, SIGNAL(toggled(bool)), - parent(), SLOT(setShowRange(bool))); - connect(parent(), SIGNAL(showRangeChanged(bool)), - action, SLOT(setOn(bool))); - action->setChecked(showRange); - headerPopup->addAction(action); - action = new QAction("Show Data", this); - action->setCheckable(true); - connect(action, SIGNAL(toggled(bool)), - parent(), SLOT(setShowData(bool))); - connect(parent(), SIGNAL(showDataChanged(bool)), - action, SLOT(setOn(bool))); - action->setChecked(showData); - headerPopup->addAction(action); - } - headerPopup->exec(e->globalPos()); - e->accept(); - } else - e->ignore(); + if (!headerPopup) { + QAction *action; + + headerPopup = new QMenu(this); + action = new QAction("Show Name", this); + action->setCheckable(true); + connect(action, SIGNAL(toggled(bool)), + parent(), SLOT(setShowName(bool))); + connect(parent(), SIGNAL(showNameChanged(bool)), + action, SLOT(setChecked(bool))); + action->setChecked(showName); + headerPopup->addAction(action); + + action = new QAction("Show Range", this); + action->setCheckable(true); + connect(action, SIGNAL(toggled(bool)), + parent(), SLOT(setShowRange(bool))); + connect(parent(), SIGNAL(showRangeChanged(bool)), + action, SLOT(setChecked(bool))); + action->setChecked(showRange); + headerPopup->addAction(action); + + action = new QAction("Show Data", this); + action->setCheckable(true); + connect(action, SIGNAL(toggled(bool)), + parent(), SLOT(setShowData(bool))); + connect(parent(), SIGNAL(showDataChanged(bool)), + action, SLOT(setChecked(bool))); + action->setChecked(showData); + headerPopup->addAction(action); + } + + headerPopup->exec(e->globalPos()); + e->accept(); } ConfigView*ConfigView::viewList; @@ -1228,7 +1228,6 @@ struct menu *m = NULL; if (count < 1) { - qInfo() << "Clicked link is empty"; delete[] data; return; } @@ -1241,7 +1240,6 @@ strcat(data, "$"); result = sym_re_search(data); if (!result) { - qInfo() << "Clicked symbol is invalid:" << data; delete[] data; return; } @@ -1265,7 +1263,7 @@ } free(result); - delete data; + delete[] data; } QMenu* ConfigInfoView::createStandardContextMenu(const QPoint & pos) @@ -1275,7 +1273,7 @@ action->setCheckable(true); connect(action, SIGNAL(toggled(bool)), SLOT(setShowDebug(bool))); - connect(this, SIGNAL(showDebugChanged(bool)), action, SLOT(setOn(bool))); + connect(this, SIGNAL(showDebugChanged(bool)), action, SLOT(setChecked(bool))); action->setChecked(showDebug()); popup->addSeparator(); popup->addAction(action); --- linux-azure-5.8-5.8.0.orig/scripts/kconfig/streamline_config.pl +++ linux-azure-5.8-5.8.0/scripts/kconfig/streamline_config.pl @@ -593,7 +593,10 @@ } my %setconfigs; -my @preserved_kconfigs = split(/:/,$ENV{LMC_KEEP}); +my @preserved_kconfigs; +if (defined($ENV{'LMC_KEEP'})) { + @preserved_kconfigs = split(/:/,$ENV{LMC_KEEP}); +} sub in_preserved_kconfigs { my $kconfig = $config2kfile{$_[0]}; --- linux-azure-5.8-5.8.0.orig/scripts/kmsg-doc +++ linux-azure-5.8-5.8.0/scripts/kmsg-doc @@ -0,0 +1,478 @@ +#!/usr/bin/perl -w +# +# kmsg kernel messages check and print tool. +# +# To check the source code for missing messages the script is called +# with check, the name compiler and the compile parameters +# kmsg-doc check $(CC) $(c_flags) $< +# To create man pages for the messages the script is called with +# kmsg-doc print $(CC) $(c_flags) $< +# +# Copyright IBM Corp. 2008 +# Author(s): Martin Schwidefsky +# Michael Holzheu +# + +use Cwd; +use bigint; + +my $errors = 0; +my $warnings = 0; +my $srctree = ""; +my $objtree = ""; +my $kmsg_count = 0; + +sub remove_quotes($) +{ + my ($string) = @_; + my $inside = 0; + my $slash = 0; + my $result = ""; + + foreach my $str (split(/([\\"])/, $string)) { + if ($inside && ($str ne "\"" || $slash)) { + $result .= $str; + } + # Check for backslash before quote + if ($str eq "\"") { + if (!$slash) { + $inside = !$inside; + } + $slash = 0; + } elsif ($str eq "\\") { + $slash = !$slash; + } elsif ($str ne "") { + $slash = 0; + } + } + return $result; +} + +sub string_to_bytes($) +{ + my ($string) = @_; + my %is_escape = ('"', 0x22, '\'', 0x27, 'n', 0x0a, 'r', 0x0d, 'b', 0x08, + 't', 0x09, 'f', 0x0c, 'a', 0x07, 'v', 0x0b, '?', 0x3f); + my (@ar, $slash, $len); + + # scan string, interpret backslash escapes and write bytes to @ar + $len = 0; + foreach my $ch (split(//, $string)) { + if ($ch eq '\\') { + $slash = !$slash; + if (!$slash) { + $ar[$len] = ord('\\'); + $len++; + } + } elsif ($slash && defined $is_escape{$ch}) { + # C99 backslash escapes: \\ \" \' \n \r \b \t \f \a \v \? + $ar[$len] = $is_escape{$ch}; + $len++; + $slash = 0; + } elsif ($slash) { + # FIXME: C99 backslash escapes \nnn \xhh + die("Unknown backslash escape in message $string."); + } else { + # normal character + $ar[$len] = ord($ch); + $len++; + } + } + return @ar; +} + +sub calc_jhash($) +{ + my ($string) = @_; + my @ar; + my ($a, $b, $c, $i, $length, $len); + + @ar = string_to_bytes($string); + $length = @ar; + # add dummy elements to @ar to avoid if then else hell + push @ar, (0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0); + $a = 0x9e3779b9; + $b = 0x9e3779b9; + $c = 0; + $i = 0; + for ($len = $length + 12; $len >= 12; $len -= 12) { + if ($len < 24) { + # add length for last round + $c += $length; + } + $a += $ar[$i] + ($ar[$i+1]<<8) + ($ar[$i+2]<<16) + ($ar[$i+3]<<24); + $b += $ar[$i+4] + ($ar[$i+5]<<8) + ($ar[$i+6]<<16) + ($ar[$i+7]<<24); + if ($len >= 24) { + $c += $ar[$i+8] + ($ar[$i+9]<<8) + ($ar[$i+10]<<16) + ($ar[$i+11]<<24); + } else { + $c += ($ar[$i+8]<<8) + ($ar[$i+9]<<16) + ($ar[$i+10]<<24); + } + $a &= 0xffffffff; $b &= 0xffffffff; $c &= 0xffffffff; + $a -= $b; $a -= $c; $a ^= ($c >> 13); $a &= 0xffffffff; + $b -= $c; $b -= $a; $b ^= ($a << 8); $b &= 0xffffffff; + $c -= $a; $c -= $b; $c ^= ($b >> 13); $c &= 0xffffffff; + $a -= $b; $a -= $c; $a ^= ($c >> 12); $a &= 0xffffffff; + $b -= $c; $b -= $a; $b ^= ($a << 16); $b &= 0xffffffff; + $c -= $a; $c -= $b; $c ^= ($b >> 5); $c &= 0xffffffff; + $a -= $b; $a -= $c; $a ^= ($c >> 3); $a &= 0xffffffff; + $b -= $c; $b -= $a; $b ^= ($a << 10); $b &= 0xffffffff; + $c -= $a; $c -= $b; $c ^= ($b >> 15); $c &= 0xffffffff; + $i += 12; + } + return $c; +} + +sub add_kmsg_desc($$$$$$) +{ + my ($component, $text, $sev, $argv, $desc, $user) = @_; + my ($hash, $tag); + + $text = remove_quotes($text); + $hash = substr(sprintf("%08x", calc_jhash($text)), 2, 6); + $tag = $component . "." . $hash; + + if ($kmsg_desc{$tag}) { + if ($text ne $kmsg_desc{$tag}->{'TEXT'}) { + warn "Duplicate message with tag $tag\n"; + warn " --- $kmsg_desc{$tag}->{'TEXT'}\n"; + warn " +++ $text\n"; + } else { + warn "Duplicate message description for \"$text\"\n"; + } + $errors++; + return; + } + $kmsg_desc{$tag}->{'TEXT'} = $text; + $kmsg_desc{$tag}->{'SEV'} = $sev; + $kmsg_desc{$tag}->{'ARGV'} = $argv; + $kmsg_desc{$tag}->{'DESC'} = $desc; + $kmsg_desc{$tag}->{'USER'} = $user; +} + +sub add_kmsg_print($$$$) +{ + my ($component, $sev, $text, $argv) = @_; + my ($hash, $tag, $count, $parm); + + $text = remove_quotes($text); + $hash = substr(sprintf("%08x", calc_jhash($text)), 2, 6); + $tag = $component . "." . $hash; + + # Pretty print severity + $sev =~ s/"0"/Emerg/; + $sev =~ s/"1"/Alert/; + $sev =~ s/"2"/Critical/; + $sev =~ s/"3"/Error/; + $sev =~ s/"4"/Warning/; + $sev =~ s/"5"/Notice/; + $sev =~ s/"6"/Informational/; + $sev =~ s/"7"/Debug/; + $kmsg_print{$kmsg_count}->{'TAG'} = $tag; + $kmsg_print{$kmsg_count}->{'TEXT'} = $text; + $kmsg_print{$kmsg_count}->{'SEV'} = $sev; + $kmsg_print{$kmsg_count}->{'ARGV'} = $argv; + $kmsg_count += 1; +} + +sub process_source_file($$) +{ + my ($component, $file) = @_; + my $state; + my ($text, $sev, $argv, $desc, $user); + + if (!open(FD, "$file")) { + return ""; + } + + $state = 0; + while () { + chomp; + # kmsg message component: #define KMSG_COMPONENT "" + if (/^#define\s+KMSG_COMPONENT\s+\"(.*)\"[^\"]*$/o) { + $component = $1; + } + if ($state == 0) { + # single line kmsg for undocumented messages, format: + # /*? Text: "" */ + if (/^\s*\/\*\?\s*Text:\s*(\".*\")\s*\*\/\s*$/o) { + add_kmsg_desc($component, $1, "", "", "", ""); + } + # kmsg message start: '/*?' + if (/^\s*\/\*\?\s*$/o) { + $state = 1; + ($text, $sev, $argv, $desc, $user) = ( "", "", "", "", "" ); + } + } elsif ($state == 1) { + # kmsg message end: ' */' + if (/^\s*\*\/\s*/o) { + add_kmsg_desc($component, $text, $sev, $argv, $desc, $user); + $state = 0; + } + # kmsg message text: ' * Text: ""' + elsif (/^\s*\*\s*Text:\s*(\".*\")\s*$/o) { + $text = $1; + } + # kmsg message severity: ' * Severity: ' + elsif (/^\s*\*\s*Severity:\s*(\S*)\s*$/o) { + $sev = $1; + } + # kmsg message parameter: ' * Parameter: ' + elsif (/^\s*\*\s*Parameter:\s*(\S*)\s*$/o) { + if (!defined($1)) { + $argv = ""; + } else { + $argv = $1; + } + $state = 2; + } + # kmsg message description start: ' * Description:' + elsif (/^\s*\*\s*Description:\s*(\S*)\s*$/o) { + if (!defined($1)) { + $desc = ""; + } else { + $desc = $1; + } + $state = 3; + } + # kmsg has unrecognizable lines + else { + warn "Warning(${file}:$.): Cannot understand $_"; + $warnings++; + $state = 0; + } + } elsif ($state == 2) { + # kmsg message end: ' */' + if (/^\s*\*\//o) { + warn "Warning(${file}:$.): Missing description, skipping message"; + $warnings++; + $state = 0; + } + # kmsg message description start: ' * Description:' + elsif (/^\s*\*\s*Description:\s*$/o) { + $desc = $1; + $state = 3; + } + # kmsg message parameter line: ' * ' + elsif (/^\s*\*(.*)$/o) { + $argv .= "\n" . $1; + } else { + warn "Warning(${file}:$.): Cannot understand $_"; + $warnings++; + $state = 0; + } + } elsif ($state == 3) { + # kmsg message end: ' */' + if (/^\s*\*\/\s*/o) { + add_kmsg_desc($component, $text, $sev, $argv, $desc, $user); + $state = 0; + } + # kmsg message description start: ' * User action:' + elsif (/^\s*\*\s*User action:\s*$/o) { + $user = $1; + $state = 4; + } + # kmsg message description line: ' * ' + elsif (/^\s*\*\s*(.*)$/o) { + $desc .= "\n" . $1; + } else { + warn "Warning(${file}:$.): Cannot understand $_"; + $warnings++; + $state = 0; + } + } elsif ($state == 4) { + # kmsg message end: ' */' + if (/^\s*\*\/\s*/o) { + add_kmsg_desc($component, $text, $sev, $argv, $desc, $user); + $state = 0; + } + # kmsg message user action line: ' * ' + elsif (/^\s*\*\s*(.*)$/o) { + $user .= "\n" . $1; + } else { + warn "Warning(${file}:$.): Cannot understand $_"; + $warnings++; + $state = 0; + } + } + } + return $component; +} + +sub process_cpp_file($$$$) +{ + my ($cc, $options, $file, $component) = @_; + + open(FD, "$cc $gcc_options|") or die ("Preprocessing failed."); + + while () { + chomp; + if (/.*__KMSG_PRINT\(\s*(\S*)\s*(\S*)\s*_FMT_(.*)_ARGS_\s*(.*)?_END_\s*\)/o) { + if ($component ne "") { + add_kmsg_print($component, $2, $3, $4); + } else { + warn "Error(${file}:$.): kmsg without component\n"; + $errors++; + } + } elsif (/.*__KMSG_DEV\(\s*(\S*)\s*(\S*)\s*_FMT_(.*)_ARGS_\s*(.*)?_END_\s*\)/o) { + if ($component ne "") { + add_kmsg_print($component, $2, "\"%s: \"" . $3, $4); + } else { + warn "Error(${file}:$.): kmsg without component\n"; + $errors++; + } + } + } +} + +sub check_messages($) +{ + my $component = "@_"; + my $failed = 0; + + for ($i = 0; $i < $kmsg_count; $i++) { + $tag = $kmsg_print{$i}->{'TAG'}; + if (!defined($kmsg_desc{$tag})) { + add_kmsg_desc($component, + "\"" . $kmsg_print{$i}->{'TEXT'} . "\"", + $kmsg_print{$i}->{'SEV'}, + $kmsg_print{$i}->{'ARGV'}, + "Please insert description here", + "What is the user supposed to do"); + $kmsg_desc{$tag}->{'CHECK'} = 1; + $failed = 1; + warn "$component: Missing description for: ". + $kmsg_print{$i}->{'TEXT'}."\n"; + $errors++; + next; + } + if ($kmsg_desc{$tag}->{'SEV'} ne "" && + $kmsg_desc{$tag}->{'SEV'} ne $kmsg_print{$i}->{'SEV'}) { + warn "Message severity mismatch for \"$kmsg_print{$i}->{'TEXT'}\"\n"; + warn " --- $kmsg_desc{$tag}->{'SEV'}\n"; + warn " +++ $kmsg_print{$i}->{'SEV'}\n"; + } + } + return $failed; +} + +sub print_templates() +{ + print "Templates for missing messages:\n"; + foreach $tag ( sort { $kmsg_desc{$a} <=> $kmsg_desc{$b} } keys %kmsg_desc ) { + if (!defined($kmsg_desc{$tag}->{'CHECK'})) { + next; + } + print "/*?\n"; + print " * Text: \"$kmsg_desc{$tag}->{'TEXT'}\"\n"; + print " * Severity: $kmsg_desc{$tag}->{'SEV'}\n"; + $argv = $kmsg_desc{$tag}->{'ARGV'}; + if ($argv ne "") { + print " * Parameter:\n"; + @parms = split(/\s*,\s*/,$kmsg_desc{$tag}->{'ARGV'}); + $count = 0; + foreach $parm (@parms) { + $count += 1; + if (!($parm eq "")) { + print " * \@$count: $parm\n"; + } + } + } + print " * Description:\n"; + print " * $kmsg_desc{$tag}->{'DESC'}\n"; + print " * User action:\n"; + print " * $kmsg_desc{$tag}->{'USER'}\n"; + print " */\n\n"; + } +} + +sub write_man_pages() +{ + my ($i, $file); + + for ($i = 0; $i < $kmsg_count; $i++) { + $tag = $kmsg_print{$i}->{'TAG'}; + if (!defined($kmsg_desc{$tag}) || + defined($kmsg_desc{$tag}->{'CHECK'}) || + $kmsg_desc{$tag}->{'DESC'} eq "") { + next; + } + $file = $objtree . "man/" . $tag . ".9"; + if (!open(WR, ">$file")) { + warn "Error: Cannot open file $file\n"; + $errors++; + return; + } + print WR ".TH \"$tag\" 9 \"Linux Messages\" LINUX\n"; + print WR ".SH Message\n"; + print WR $tag . ": " . $kmsg_desc{$tag}->{'TEXT'} . "\n"; + print WR ".SH Severity\n"; + print WR "$kmsg_desc{$tag}->{'SEV'}\n"; + $argv = $kmsg_desc{$tag}->{'ARGV'}; + if ($argv ne "") { + print WR ".SH Parameters\n"; + @parms = split(/\s*\n\s*/,$kmsg_desc{$tag}->{'ARGV'}); + foreach $parm (@parms) { + $parm =~ s/^\s*(.*)\s*$/$1/; + if (!($parm eq "")) { + print WR "$parm\n\n"; + } + } + } + print WR ".SH Description"; + print WR "$kmsg_desc{$tag}->{'DESC'}\n"; + $user = $kmsg_desc{$tag}->{'USER'}; + if ($user ne "") { + print WR ".SH User action"; + print WR "$user\n"; + } + } +} + +if (defined($ENV{'srctree'})) { + $srctree = "$ENV{'srctree'}" . "/"; +} else { + $srctree = getcwd; +} + +if (defined($ENV{'objtree'})) { + $objtree = "$ENV{'objtree'}" . "/"; +} else { + $objtree = getcwd; +} + +if (defined($ENV{'SRCARCH'})) { + $srcarch = "$ENV{'SRCARCH'}" . "/"; +} else { + print "kmsg-doc called without a valid \$SRCARCH\n"; + exit 1; +} + +$option = shift; + +$cc = shift; +$gcc_options = "-E -D __KMSG_CHECKER "; +foreach $tmp (@ARGV) { + $tmp =~ s/\(/\\\(/; + $tmp =~ s/\)/\\\)/; + $gcc_options .= " $tmp"; + $filename = $tmp; +} + +$component = process_source_file("", $filename); +if ($component ne "") { + process_source_file($component, $srctree . "Documentation/kmsg/" . + $srcarch . $component); + process_source_file($component, $srctree . "Documentation/kmsg/" . + $component); +} + +process_cpp_file($cc, $gcc_options, $filename, $component); +if ($option eq "check") { + if (check_messages($component)) { + print_templates(); + } +} elsif ($option eq "print") { + write_man_pages(); +} + +exit($errors); --- linux-azure-5.8-5.8.0.orig/scripts/nsdeps +++ linux-azure-5.8-5.8.0/scripts/nsdeps @@ -29,7 +29,7 @@ generate_deps_for_ns() { $SPATCH --very-quiet --in-place --sp-file \ - $srctree/scripts/coccinelle/misc/add_namespace.cocci -D ns=$1 $2 + $srctree/scripts/coccinelle/misc/add_namespace.cocci -D nsdeps -D ns=$1 $2 } generate_deps() { --- linux-azure-5.8-5.8.0.orig/scripts/package/builddeb +++ linux-azure-5.8-5.8.0/scripts/package/builddeb @@ -202,8 +202,10 @@ done if [ "$ARCH" != "um" ]; then - deploy_kernel_headers debian/linux-headers - create_package linux-headers-$version debian/linux-headers + if is_enabled CONFIG_MODULES; then + deploy_kernel_headers debian/linux-headers + create_package linux-headers-$version debian/linux-headers + fi deploy_libc_headers debian/linux-libc-dev create_package linux-libc-dev debian/linux-libc-dev --- linux-azure-5.8-5.8.0.orig/scripts/package/mkdebian +++ linux-azure-5.8-5.8.0/scripts/package/mkdebian @@ -183,13 +183,6 @@ This package contains the Linux kernel, modules and corresponding other files, version: $version. -Package: $kernel_headers_packagename -Architecture: $debarch -Description: Linux kernel headers for $version on $debarch - This package provides kernel header files for $version on $debarch - . - This is useful for people who need to build external modules - Package: linux-libc-dev Section: devel Provides: linux-kernel-headers @@ -200,6 +193,18 @@ Multi-Arch: same EOF +if is_enabled CONFIG_MODULES; then +cat <> debian/control + +Package: $kernel_headers_packagename +Architecture: $debarch +Description: Linux kernel headers for $version on $debarch + This package provides kernel header files for $version on $debarch + . + This is useful for people who need to build external modules +EOF +fi + if is_enabled CONFIG_DEBUG_INFO; then cat <> debian/control --- linux-azure-5.8-5.8.0.orig/scripts/recordmcount.c +++ linux-azure-5.8-5.8.0/scripts/recordmcount.c @@ -42,6 +42,8 @@ #define R_ARM_THM_CALL 10 #define R_ARM_CALL 28 +#define R_AARCH64_CALL26 283 + static int fd_map; /* File descriptor for file being modified. */ static int mmap_failed; /* Boolean flag. */ static char gpfx; /* prefix for global symbol name (sometimes '_') */ @@ -434,6 +436,11 @@ return 1; } +static int arm64_is_fake_mcount(Elf64_Rel const *rp) +{ + return ELF64_R_TYPE(w(rp->r_info)) != R_AARCH64_CALL26; +} + /* 64-bit EM_MIPS has weird ELF64_Rela.r_info. * http://techpubs.sgi.com/library/manuals/4000/007-4658-001/pdf/007-4658-001.pdf * We interpret Table 29 Relocation Operation (Elf64_Rel, Elf64_Rela) [p.40] @@ -547,6 +554,7 @@ make_nop = make_nop_arm64; rel_type_nop = R_AARCH64_NONE; ideal_nop = ideal_nop4_arm64; + is_fake_mcount64 = arm64_is_fake_mcount; break; case EM_IA_64: reltype = R_IA64_IMM64; break; case EM_MIPS: /* reltype: e_class */ break; --- linux-azure-5.8-5.8.0.orig/scripts/recordmcount.pl +++ linux-azure-5.8-5.8.0/scripts/recordmcount.pl @@ -268,7 +268,11 @@ # force flags for this arch $ld .= " -m shlelf_linux"; - $objcopy .= " -O elf32-sh-linux"; + if ($endian eq "big") { + $objcopy .= " -O elf32-shbig-linux"; + } else { + $objcopy .= " -O elf32-sh-linux"; + } } elsif ($arch eq "powerpc") { my $ldemulation; --- linux-azure-5.8-5.8.0.orig/scripts/selinux/mdp/mdp.c +++ linux-azure-5.8-5.8.0/scripts/selinux/mdp/mdp.c @@ -67,8 +67,14 @@ initial_sid_to_string_len = sizeof(initial_sid_to_string) / sizeof (char *); /* print out the sids */ - for (i = 1; i < initial_sid_to_string_len; i++) - fprintf(fout, "sid %s\n", initial_sid_to_string[i]); + for (i = 1; i < initial_sid_to_string_len; i++) { + const char *name = initial_sid_to_string[i]; + + if (name) + fprintf(fout, "sid %s\n", name); + else + fprintf(fout, "sid unused%d\n", i); + } fprintf(fout, "\n"); /* print out the class permissions */ @@ -126,9 +132,16 @@ #define OBJUSERROLETYPE "user_u:object_r:base_t" /* default sids */ - for (i = 1; i < initial_sid_to_string_len; i++) - fprintf(fout, "sid %s " SUBJUSERROLETYPE "%s\n", - initial_sid_to_string[i], mls ? ":" SYSTEMLOW : ""); + for (i = 1; i < initial_sid_to_string_len; i++) { + const char *name = initial_sid_to_string[i]; + + if (name) + fprintf(fout, "sid %s ", name); + else + fprintf(fout, "sid unused%d\n", i); + fprintf(fout, SUBJUSERROLETYPE "%s\n", + mls ? ":" SYSTEMLOW : ""); + } fprintf(fout, "\n"); #define FS_USE(behavior, fstype) \ --- linux-azure-5.8-5.8.0.orig/scripts/setlocalversion +++ linux-azure-5.8-5.8.0/scripts/setlocalversion @@ -45,7 +45,7 @@ # Check for git and a git repo. if test -z "$(git rev-parse --show-cdup 2>/dev/null)" && - head=$(git rev-parse --verify --short HEAD 2>/dev/null); then + head=$(git rev-parse --verify HEAD 2>/dev/null); then # If we are at a tagged commit (like "v2.6.30-rc6"), we ignore # it, because this version is defined in the top level Makefile. @@ -59,11 +59,22 @@ fi # If we are past a tagged commit (like # "v2.6.30-rc5-302-g72357d5"), we pretty print it. - if atag="$(git describe 2>/dev/null)"; then - echo "$atag" | awk -F- '{printf("-%05d-%s", $(NF-1),$(NF))}' + # + # Ensure the abbreviated sha1 has exactly 12 + # hex characters, to make the output + # independent of git version, local + # core.abbrev settings and/or total number of + # objects in the current repository - passing + # --abbrev=12 ensures a minimum of 12, and the + # awk substr() then picks the 'g' and first 12 + # hex chars. + if atag="$(git describe --abbrev=12 2>/dev/null)"; then + echo "$atag" | awk -F- '{printf("-%05d-%s", $(NF-1),substr($(NF),0,13))}' - # If we don't have a tag at all we print -g{commitish}. + # If we don't have a tag at all we print -g{commitish}, + # again using exactly 12 hex chars. else + head="$(echo $head | cut -c1-12)" printf '%s%s' -g $head fi fi --- linux-azure-5.8-5.8.0.orig/scripts/ubuntu-retpoline-extract-one +++ linux-azure-5.8-5.8.0/scripts/ubuntu-retpoline-extract-one @@ -0,0 +1,270 @@ +#!/bin/bash + +exec &2 + exit 1 + fi +} + +# Form an associative lookup for the section numbers in the ELF symbol table. +# Uses 8 character 0 expanded hexadecimal key for ease of consumption. +__sectionmap_init() +{ + readelf -W --headers "$1" | \ + awk ' + { sub("\\[", ""); sub("\\]", ""); } + ($1 ~ /^[0-9][0-9]*/) { printf("%08x %s %s %s\n", int($1), $2, $3, $4); } + ' | \ + { + while read section_num section_name section_type section_vma + do + echo "sectionmap_$section_num='$section_name'" + echo "sectionvma_$section_num='$section_vma'" + case "$section_type" in + REL|RELA) section_relocation="$section_type" ;; + esac + done + echo "section_relocation='$section_relocation'" + } +} +sectionmap_init() +{ + eval $(__sectionmap_init "$1") +} +sectionmap() +{ + eval RET="\$sectionmap_$1" + if [ "$RET" = '' ]; then + echo "sectionmap: $1: invalid section" 1>&2 + exit 1 + fi +} +sectionvma() +{ + eval RET="\$sectionvma_$1" + if [ "$RET" = '' ]; then + echo "sectionvma: $1: invalid section" 1>&2 + exit 1 + fi +} + +# Read and parse the hex-dump output. +hex="[0-9a-f]" +hex_8="$hex$hex$hex$hex$hex$hex$hex$hex" +hexspc="[0-9a-f ]" +hexspc_8="$hexspc$hexspc$hexspc$hexspc$hexspc$hexspc$hexspc$hexspc" + +raw32() +{ + readelf --hex-dump "$2" "$1" 2>/dev/null | + sed \ + -e '/^Hex/d' -e '/^$/d' -e '/^ *NOTE/d' \ + -e 's/ *[^ ][^ ]* *\('"$hex_8"'\) \('"$hexspc_8"'\) \('"$hexspc_8"'\) \('"$hexspc_8"'\) .*/\1 \2 \3 \4 /' \ + -e 's/\('"$hex$hex"'\)\('"$hex$hex"'\)\('"$hex$hex"'\)\('"$hex$hex"'\) /\4\3\2\1 /g' \ + -e 's/ $//g' -e 's/ /\n/g' +} +#-e 's/\([^ ][^ ][^ ][^ ][^ ][^ ][^ ][^ ]\) \([^ ][^ ][^ ][^ ][^ ][^ ][^ ][^ ]\) /\2\1 /g' \ + +rela() +{ + #file="$(basename "$1")" + file="$1" + + # Read relocation information for a 64bit binary. Each relocation entry + # is 3 long longs so we collect 6 quads here. Note that the dump is in + # listed in increasing byte order not withstanding the quad split. + # + # The record says to take the value of add and + # shove that into in the segment of the . + # + # Format: + # 64 bits + # 32 bits + # 32 bits + # 64 bits + raw32 "$1" ".rela$SECTION" | \ + { + a1=''; a2=''; a3=''; a4=''; a5='' + while read a6 + do + [ "$a1" = '' ] && { a1="$a6"; continue; } + [ "$a2" = '' ] && { a2="$a6"; continue; } + [ "$a3" = '' ] && { a3="$a6"; continue; } + [ "$a4" = '' ] && { a4="$a6"; continue; } + [ "$a5" = '' ] && { a5="$a6"; continue; } + + #echo ">$a1< >$a2< >$a3< >$a4< >$a5< >$a6<" 1>&2 + #echo "type<$a3> symbol<$a4> offset<$a2$a1> addr<$a6a5>" 1>&2 + + symbolmap "$a4"; section_num="$RET" + #echo "section_num<$section_num>" 1>&2 + + sectionmap "$section_num"; section="$RET" + sectionvma "$section_num"; vma="$RET" + #echo "section<$section> vma<$vma>" 1>&2 + + # Adjust the segment addressing by the segment offset. + printf -v addr "%u" "0x$a6$a5" + printf -v vma "%u" "0x$vma" + let offset="$addr + $vma" + printf -v offset "%x" "$offset" + + echo "$file-$section-$offset" + + a1=''; a2=''; a3=''; a4=''; a5='' + done + } | sed -e 's/-00*\([0-9a-f]\)/-\1/' +} + +# Form an associative lookup for the raw contents for an ELF section. +# Uses 8 character 0 expanded hexadecimal key for ease of consumption. +contentmap_init() +{ + raw32 "$1" "$2" >"$tmp" + let offset=0 + while read value + do + printf -v offset_hex "%08x" $offset + eval contentmap_$offset_hex=\'$value\' + + let offset="$offset + 4" + done <"$tmp" + rm -f "$tmp" +} +contentmap() +{ + eval RET="\$contentmap_$1" + if [ "$RET" = '' ]; then + echo "contentmap: $1: invalid offset" 1>&2 + exit 1 + fi +} + +rel() +{ + # Load up the current contents of the $SECTION segment + # as the offsets (see below) are recorded there and we will need + # those to calculate the actuall address. + contentmap_init "$1" "$SECTION" + + #file="$(basename "$1")" + file="$1" + + # Read relocation information for a 32bit binary. Each relocation entry + # is 3 longs so we collect 3 quads here. Note that the dump is in + # listed in increasing byte order not withstanding the quad split. + # + # The record says to take the value of and add that to the + # existing contents of in the segment of the . + # + # Format: + # 32 bits + # 24 bits + # 8 bits + raw32 "$1" ".rel$SECTION" | \ + { + a1='' + while read a2 + do + [ "$a1" = '' ] && { a1="$a2"; continue; } + + #echo ">$a1< >$a2<" + contentmap "$a1"; offset="$RET" + symbolmap "00${a2%??}"; section_num="$RET" + + sectionmap "$section_num"; section="$RET" + sectionvma "$section_num"; vma="$RET" + #echo ">$a1< >$a2< >$offset< >$section<" + + echo "$file-$section-$offset" + + a1='' + done + } | sed -e 's/-00*\([0-9a-f]\)/-\1/' +} + +tmp=$(mktemp --tmpdir "retpoline-extract-XXXXXX") + +disassemble() +{ + local object="$1" + local src="$2" + local options="$3" + local selector="$4" + + objdump $options --disassemble --no-show-raw-insn "$object" | \ + awk -F' ' ' + BEGIN { file="'"$object"'"; src="'"$src"'"; } + /Disassembly of section/ { segment=$4; sub(":", "", segment); } + /^[0-9a-f][0-9a-f]* <.*>:/ { tag=$0; sub(".*<", "", tag); sub(">.*", "", tag); } + $0 ~ /(call|jmp)q? *\*0x[0-9a-f]*\(%rip\)/ { + next + } + $0 ~ /(call|jmp)q? *\*.*%/ { + sub(":", "", $1); + if ('"$selector"') { + offset=$1 + $1=tag + print(file "-" segment "-" offset " " src " " segment " " $0); + } + } + ' +} + +# Accumulate potentially vunerable indirect call/jmp sequences. We do this +# by examining the raw disassembly for affected forms, recording the location +# of each. +case "$bit16" in +'') disassemble "$object" "$src" '' 'segment != ".init.text"' ;; +*) disassemble "$object" "$src" '--disassembler-options=i8086' 'segment != ".init.text" && segment != ".text32" && segment != ".text64"' + disassemble "$object" "$src" '--disassembler-options=i386' 'segment == ".text32"' + disassemble "$object" "$src" '--disassembler-options=x86-64' 'segment == ".text64"' + ;; +esac | sort -k 1b,1 >"$object.ur-detected" +[ ! -s "$object.ur-detected" ] && rm -f "$object.ur-detected" + +# Load up the symbol table and section mappings. +symbolmap_init "$object" +sectionmap_init "$object" + +# Accumulate annotated safe indirect call/jmp sequences. We do this by examining +# the $SECTION sections (and their associated relocation information), +# each entry represents the address of an instruction which has been marked +# as ok. +case "$section_relocation" in +REL) rel "$object" ;; +RELA) rela "$object" ;; +esac | sort -k 1b,1 >"$object.ur-safe" +[ ! -s "$object.ur-safe" ] && rm -f "$object.ur-safe" + +# We will perform the below join on the summarised and sorted fragments +# formed above. This is performed in retpoline-check. +#join -v 1 -j 1 "$tmp.extracted" "$tmp.safe" | sed -s 's/[^ ]* *//' + +rm -f "$tmp" --- linux-azure-5.8-5.8.0.orig/security/Kconfig +++ linux-azure-5.8-5.8.0/security/Kconfig @@ -19,6 +19,15 @@ If you are unsure how to answer this question, answer N. +config SECURITY_PERF_EVENTS_RESTRICT + bool "Restrict unprivileged use of performance events" + depends on PERF_EVENTS + help + If you say Y here, the kernel.perf_event_paranoid sysctl + will be set to 3 by default, and no unprivileged use of the + perf_event_open syscall will be permitted unless it is + changed. + config SECURITY bool "Enable different security models" depends on SYSFS --- linux-azure-5.8-5.8.0.orig/security/apparmor/Makefile +++ linux-azure-5.8-5.8.0/security/apparmor/Makefile @@ -5,7 +5,8 @@ apparmor-y := apparmorfs.o audit.o capability.o task.o ipc.o lib.o match.o \ path.o domain.o policy.o policy_unpack.o procattr.o lsm.o \ - resource.o secid.o file.o policy_ns.o label.o mount.o net.o + resource.o secid.o file.o policy_ns.o label.o mount.o net.o \ + af_unix.o apparmor-$(CONFIG_SECURITY_APPARMOR_HASH) += crypto.o clean-files := capability_names.h rlim_names.h net_names.h --- linux-azure-5.8-5.8.0.orig/security/apparmor/af_unix.c +++ linux-azure-5.8-5.8.0/security/apparmor/af_unix.c @@ -0,0 +1,652 @@ +/* + * AppArmor security module + * + * This file contains AppArmor af_unix fine grained mediation + * + * Copyright 2018 Canonical Ltd. + * + * This program is free software; you can redistribute it and/or + * modify it under the terms of the GNU General Public License as + * published by the Free Software Foundation, version 2 of the + * License. + */ + +#include + +#include "include/audit.h" +#include "include/af_unix.h" +#include "include/apparmor.h" +#include "include/file.h" +#include "include/label.h" +#include "include/path.h" +#include "include/policy.h" +#include "include/cred.h" + +static inline struct sock *aa_unix_sk(struct unix_sock *u) +{ + return &u->sk; +} + +static inline int unix_fs_perm(const char *op, u32 mask, struct aa_label *label, + struct unix_sock *u, int flags) +{ + AA_BUG(!label); + AA_BUG(!u); + AA_BUG(!UNIX_FS(aa_unix_sk(u))); + + if (unconfined(label) || !LABEL_MEDIATES(label, AA_CLASS_FILE)) + return 0; + + mask &= NET_FS_PERMS; + if (!u->path.dentry) { + struct path_cond cond = { }; + struct aa_perms perms = { }; + struct aa_profile *profile; + + /* socket path has been cleared because it is being shutdown + * can only fall back to original sun_path request + */ + struct aa_sk_ctx *ctx = aa_sock(&u->sk); + if (ctx->path.dentry) + return aa_path_perm(op, label, &ctx->path, flags, mask, + &cond); + return fn_for_each_confined(label, profile, + ((flags | profile->path_flags) & PATH_MEDIATE_DELETED) ? + __aa_path_perm(op, profile, + u->addr->name->sun_path, mask, + &cond, flags, &perms) : + aa_audit_file(profile, &nullperms, op, mask, + u->addr->name->sun_path, NULL, + NULL, cond.uid, + "Failed name lookup - " + "deleted entry", -EACCES)); + } else { + /* the sunpath may not be valid for this ns so use the path */ + struct path_cond cond = { u->path.dentry->d_inode->i_uid, + u->path.dentry->d_inode->i_mode + }; + + return aa_path_perm(op, label, &u->path, flags, mask, &cond); + } + + return 0; +} + +/* passing in state returned by PROFILE_MEDIATES_AF */ +static unsigned int match_to_prot(struct aa_profile *profile, + unsigned int state, int type, int protocol, + const char **info) +{ + __be16 buffer[2]; + buffer[0] = cpu_to_be16(type); + buffer[1] = cpu_to_be16(protocol); + state = aa_dfa_match_len(profile->policy.dfa, state, (char *) &buffer, + 4); + if (!state) + *info = "failed type and protocol match"; + return state; +} + +static unsigned int match_addr(struct aa_profile *profile, unsigned int state, + struct sockaddr_un *addr, int addrlen) +{ + if (addr) + /* include leading \0 */ + state = aa_dfa_match_len(profile->policy.dfa, state, + addr->sun_path, + unix_addr_len(addrlen)); + else + /* anonymous end point */ + state = aa_dfa_match_len(profile->policy.dfa, state, "\x01", + 1); + /* todo change to out of band */ + state = aa_dfa_null_transition(profile->policy.dfa, state); + return state; +} + +static unsigned int match_to_local(struct aa_profile *profile, + unsigned int state, int type, int protocol, + struct sockaddr_un *addr, int addrlen, + const char **info) +{ + state = match_to_prot(profile, state, type, protocol, info); + if (state) { + state = match_addr(profile, state, addr, addrlen); + if (state) { + /* todo: local label matching */ + state = aa_dfa_null_transition(profile->policy.dfa, + state); + if (!state) + *info = "failed local label match"; + } else + *info = "failed local address match"; + } + + return state; +} + +static unsigned int match_to_sk(struct aa_profile *profile, + unsigned int state, struct unix_sock *u, + const char **info) +{ + struct sockaddr_un *addr = NULL; + int addrlen = 0; + + if (u->addr) { + addr = u->addr->name; + addrlen = u->addr->len; + } + + return match_to_local(profile, state, u->sk.sk_type, u->sk.sk_protocol, + addr, addrlen, info); +} + +#define CMD_ADDR 1 +#define CMD_LISTEN 2 +#define CMD_OPT 4 + +static inline unsigned int match_to_cmd(struct aa_profile *profile, + unsigned int state, struct unix_sock *u, + char cmd, const char **info) +{ + state = match_to_sk(profile, state, u, info); + if (state) { + state = aa_dfa_match_len(profile->policy.dfa, state, &cmd, 1); + if (!state) + *info = "failed cmd selection match"; + } + + return state; +} + +static inline unsigned int match_to_peer(struct aa_profile *profile, + unsigned int state, + struct unix_sock *u, + struct sockaddr_un *peer_addr, + int peer_addrlen, + const char **info) +{ + state = match_to_cmd(profile, state, u, CMD_ADDR, info); + if (state) { + state = match_addr(profile, state, peer_addr, peer_addrlen); + if (!state) + *info = "failed peer address match"; + } + return state; +} + +static int do_perms(struct aa_profile *profile, unsigned int state, u32 request, + struct common_audit_data *sa) +{ + struct aa_perms perms; + + AA_BUG(!profile); + + aa_compute_perms(profile->policy.dfa, state, &perms); + aa_apply_modes_to_perms(profile, &perms); + return aa_check_perms(profile, &perms, request, sa, + audit_net_cb); +} + +static int match_label(struct aa_profile *profile, struct aa_profile *peer, + unsigned int state, u32 request, + struct common_audit_data *sa) +{ + AA_BUG(!profile); + AA_BUG(!peer); + + aad(sa)->peer = &peer->label; + + if (state) { + state = aa_dfa_match(profile->policy.dfa, state, + peer->base.hname); + if (!state) + aad(sa)->info = "failed peer label match"; + } + return do_perms(profile, state, request, sa); +} + + +/* unix sock creation comes before we know if the socket will be an fs + * socket + * v6 - semantics are handled by mapping in profile load + * v7 - semantics require sock create for tasks creating an fs socket. + */ +static int profile_create_perm(struct aa_profile *profile, int family, + int type, int protocol) +{ + unsigned int state; + DEFINE_AUDIT_NET(sa, OP_CREATE, NULL, family, type, protocol); + + AA_BUG(!profile); + AA_BUG(profile_unconfined(profile)); + + if ((state = PROFILE_MEDIATES_AF(profile, AF_UNIX))) { + state = match_to_prot(profile, state, type, protocol, + &aad(&sa)->info); + return do_perms(profile, state, AA_MAY_CREATE, &sa); + } + + return aa_profile_af_perm(profile, &sa, AA_MAY_CREATE, family, type); +} + +int aa_unix_create_perm(struct aa_label *label, int family, int type, + int protocol) +{ + struct aa_profile *profile; + + if (unconfined(label)) + return 0; + + return fn_for_each_confined(label, profile, + profile_create_perm(profile, family, type, protocol)); +} + + +static inline int profile_sk_perm(struct aa_profile *profile, const char *op, + u32 request, struct sock *sk) +{ + unsigned int state; + DEFINE_AUDIT_SK(sa, op, sk); + + AA_BUG(!profile); + AA_BUG(!sk); + AA_BUG(UNIX_FS(sk)); + AA_BUG(profile_unconfined(profile)); + + state = PROFILE_MEDIATES_AF(profile, AF_UNIX); + if (state) { + state = match_to_sk(profile, state, unix_sk(sk), + &aad(&sa)->info); + return do_perms(profile, state, request, &sa); + } + + return aa_profile_af_sk_perm(profile, &sa, request, sk); +} + +int aa_unix_label_sk_perm(struct aa_label *label, const char *op, u32 request, + struct sock *sk) +{ + struct aa_profile *profile; + + return fn_for_each_confined(label, profile, + profile_sk_perm(profile, op, request, sk)); +} + +static int unix_label_sock_perm(struct aa_label *label, const char *op, u32 request, + struct socket *sock) +{ + if (unconfined(label)) + return 0; + if (UNIX_FS(sock->sk)) + return unix_fs_perm(op, request, label, unix_sk(sock->sk), 0); + + return aa_unix_label_sk_perm(label, op, request, sock->sk); +} + +/* revaliation, get/set attr */ +int aa_unix_sock_perm(const char *op, u32 request, struct socket *sock) +{ + struct aa_label *label; + int error; + + label = begin_current_label_crit_section(); + error = unix_label_sock_perm(label, op, request, sock); + end_current_label_crit_section(label); + + return error; +} + +static int profile_bind_perm(struct aa_profile *profile, struct sock *sk, + struct sockaddr *addr, int addrlen) +{ + unsigned int state; + DEFINE_AUDIT_SK(sa, OP_BIND, sk); + + AA_BUG(!profile); + AA_BUG(!sk); + AA_BUG(addr->sa_family != AF_UNIX); + AA_BUG(profile_unconfined(profile)); + AA_BUG(unix_addr_fs(addr, addrlen)); + + state = PROFILE_MEDIATES_AF(profile, AF_UNIX); + if (state) { + /* bind for abstract socket */ + aad(&sa)->net.addr = unix_addr(addr); + aad(&sa)->net.addrlen = addrlen; + + state = match_to_local(profile, state, + sk->sk_type, sk->sk_protocol, + unix_addr(addr), addrlen, + &aad(&sa)->info); + return do_perms(profile, state, AA_MAY_BIND, &sa); + } + + return aa_profile_af_sk_perm(profile, &sa, AA_MAY_BIND, sk); +} + +int aa_unix_bind_perm(struct socket *sock, struct sockaddr *address, + int addrlen) +{ + struct aa_profile *profile; + struct aa_label *label; + int error = 0; + + label = begin_current_label_crit_section(); + /* fs bind is handled by mknod */ + if (!(unconfined(label) || unix_addr_fs(address, addrlen))) + error = fn_for_each_confined(label, profile, + profile_bind_perm(profile, sock->sk, address, + addrlen)); + end_current_label_crit_section(label); + + return error; +} + +int aa_unix_connect_perm(struct socket *sock, struct sockaddr *address, + int addrlen) +{ + /* unix connections are covered by the + * - unix_stream_connect (stream) and unix_may_send hooks (dgram) + * - fs connect is handled by open + */ + return 0; +} + +static int profile_listen_perm(struct aa_profile *profile, struct sock *sk, + int backlog) +{ + unsigned int state; + DEFINE_AUDIT_SK(sa, OP_LISTEN, sk); + + AA_BUG(!profile); + AA_BUG(!sk); + AA_BUG(UNIX_FS(sk)); + AA_BUG(profile_unconfined(profile)); + + state = PROFILE_MEDIATES_AF(profile, AF_UNIX); + if (state) { + __be16 b = cpu_to_be16(backlog); + + state = match_to_cmd(profile, state, unix_sk(sk), CMD_LISTEN, + &aad(&sa)->info); + if (state) { + state = aa_dfa_match_len(profile->policy.dfa, state, + (char *) &b, 2); + if (!state) + aad(&sa)->info = "failed listen backlog match"; + } + return do_perms(profile, state, AA_MAY_LISTEN, &sa); + } + + return aa_profile_af_sk_perm(profile, &sa, AA_MAY_LISTEN, sk); +} + +int aa_unix_listen_perm(struct socket *sock, int backlog) +{ + struct aa_profile *profile; + struct aa_label *label; + int error = 0; + + label = begin_current_label_crit_section(); + if (!(unconfined(label) || UNIX_FS(sock->sk))) + error = fn_for_each_confined(label, profile, + profile_listen_perm(profile, sock->sk, + backlog)); + end_current_label_crit_section(label); + + return error; +} + + +static inline int profile_accept_perm(struct aa_profile *profile, + struct sock *sk, + struct sock *newsk) +{ + unsigned int state; + DEFINE_AUDIT_SK(sa, OP_ACCEPT, sk); + + AA_BUG(!profile); + AA_BUG(!sk); + AA_BUG(UNIX_FS(sk)); + AA_BUG(profile_unconfined(profile)); + + state = PROFILE_MEDIATES_AF(profile, AF_UNIX); + if (state) { + state = match_to_sk(profile, state, unix_sk(sk), + &aad(&sa)->info); + return do_perms(profile, state, AA_MAY_ACCEPT, &sa); + } + + return aa_profile_af_sk_perm(profile, &sa, AA_MAY_ACCEPT, sk); +} + +/* ability of sock to connect, not peer address binding */ +int aa_unix_accept_perm(struct socket *sock, struct socket *newsock) +{ + struct aa_profile *profile; + struct aa_label *label; + int error = 0; + + label = begin_current_label_crit_section(); + if (!(unconfined(label) || UNIX_FS(sock->sk))) + error = fn_for_each_confined(label, profile, + profile_accept_perm(profile, sock->sk, + newsock->sk)); + end_current_label_crit_section(label); + + return error; +} + + +/* dgram handled by unix_may_sendmsg, right to send on stream done at connect + * could do per msg unix_stream here + */ +/* sendmsg, recvmsg */ +int aa_unix_msg_perm(const char *op, u32 request, struct socket *sock, + struct msghdr *msg, int size) +{ + return 0; +} + + +static int profile_opt_perm(struct aa_profile *profile, const char *op, u32 request, + struct sock *sk, int level, int optname) +{ + unsigned int state; + DEFINE_AUDIT_SK(sa, op, sk); + + AA_BUG(!profile); + AA_BUG(!sk); + AA_BUG(UNIX_FS(sk)); + AA_BUG(profile_unconfined(profile)); + + state = PROFILE_MEDIATES_AF(profile, AF_UNIX); + if (state) { + __be16 b = cpu_to_be16(optname); + + state = match_to_cmd(profile, state, unix_sk(sk), CMD_OPT, + &aad(&sa)->info); + if (state) { + state = aa_dfa_match_len(profile->policy.dfa, state, + (char *) &b, 2); + if (!state) + aad(&sa)->info = "failed sockopt match"; + } + return do_perms(profile, state, request, &sa); + } + + return aa_profile_af_sk_perm(profile, &sa, request, sk); +} + +int aa_unix_opt_perm(const char *op, u32 request, struct socket *sock, int level, + int optname) +{ + struct aa_profile *profile; + struct aa_label *label; + int error = 0; + + label = begin_current_label_crit_section(); + if (!(unconfined(label) || UNIX_FS(sock->sk))) + error = fn_for_each_confined(label, profile, + profile_opt_perm(profile, op, request, + sock->sk, level, optname)); + end_current_label_crit_section(label); + + return error; +} + +/* null peer_label is allowed, in which case the peer_sk label is used */ +static int profile_peer_perm(struct aa_profile *profile, const char *op, u32 request, + struct sock *sk, struct sock *peer_sk, + struct aa_label *peer_label, + struct common_audit_data *sa) +{ + unsigned int state; + + AA_BUG(!profile); + AA_BUG(profile_unconfined(profile)); + AA_BUG(!sk); + AA_BUG(!peer_sk); + AA_BUG(UNIX_FS(peer_sk)); + + state = PROFILE_MEDIATES_AF(profile, AF_UNIX); + if (state) { + struct aa_sk_ctx *peer_ctx = aa_sock(peer_sk); + struct aa_profile *peerp; + struct sockaddr_un *addr = NULL; + int len = 0; + if (unix_sk(peer_sk)->addr) { + addr = unix_sk(peer_sk)->addr->name; + len = unix_sk(peer_sk)->addr->len; + } + state = match_to_peer(profile, state, unix_sk(sk), + addr, len, &aad(sa)->info); + if (!peer_label) + peer_label = peer_ctx->label; + return fn_for_each_in_ns(peer_label, peerp, + match_label(profile, peerp, state, request, + sa)); + } + + return aa_profile_af_sk_perm(profile, sa, request, sk); +} + +/** + * + * Requires: lock held on both @sk and @peer_sk + */ +int aa_unix_peer_perm(struct aa_label *label, const char *op, u32 request, + struct sock *sk, struct sock *peer_sk, + struct aa_label *peer_label) +{ + struct unix_sock *peeru = unix_sk(peer_sk); + struct unix_sock *u = unix_sk(sk); + + AA_BUG(!label); + AA_BUG(!sk); + AA_BUG(!peer_sk); + + if (UNIX_FS(aa_unix_sk(peeru))) + return unix_fs_perm(op, request, label, peeru, 0); + else if (UNIX_FS(aa_unix_sk(u))) + return unix_fs_perm(op, request, label, u, 0); + else { + struct aa_profile *profile; + DEFINE_AUDIT_SK(sa, op, sk); + aad(&sa)->net.peer_sk = peer_sk; + + /* TODO: ns!!! */ + if (!net_eq(sock_net(sk), sock_net(peer_sk))) { + ; + } + + if (unconfined(label)) + return 0; + + return fn_for_each_confined(label, profile, + profile_peer_perm(profile, op, request, sk, + peer_sk, peer_label, &sa)); + } +} + + +/* from net/unix/af_unix.c */ +static void unix_state_double_lock(struct sock *sk1, struct sock *sk2) +{ + if (unlikely(sk1 == sk2) || !sk2) { + unix_state_lock(sk1); + return; + } + if (sk1 < sk2) { + unix_state_lock(sk1); + unix_state_lock_nested(sk2); + } else { + unix_state_lock(sk2); + unix_state_lock_nested(sk1); + } +} + +static void unix_state_double_unlock(struct sock *sk1, struct sock *sk2) +{ + if (unlikely(sk1 == sk2) || !sk2) { + unix_state_unlock(sk1); + return; + } + unix_state_unlock(sk1); + unix_state_unlock(sk2); +} + +int aa_unix_file_perm(struct aa_label *label, const char *op, u32 request, + struct socket *sock) +{ + struct sock *peer_sk = NULL; + u32 sk_req = request & ~NET_PEER_MASK; + int error = 0; + + AA_BUG(!label); + AA_BUG(!sock); + AA_BUG(!sock->sk); + AA_BUG(sock->sk->sk_family != AF_UNIX); + + /* TODO: update sock label with new task label */ + unix_state_lock(sock->sk); + peer_sk = unix_peer(sock->sk); + if (peer_sk) + sock_hold(peer_sk); + if (!unix_connected(sock) && sk_req) { + error = unix_label_sock_perm(label, op, sk_req, sock); + if (!error) { + // update label + } + } + unix_state_unlock(sock->sk); + if (!peer_sk) + return error; + + unix_state_double_lock(sock->sk, peer_sk); + if (UNIX_FS(sock->sk)) { + error = unix_fs_perm(op, request, label, unix_sk(sock->sk), + PATH_SOCK_COND); + } else if (UNIX_FS(peer_sk)) { + error = unix_fs_perm(op, request, label, unix_sk(peer_sk), + PATH_SOCK_COND); + } else { + struct aa_sk_ctx *pctx = aa_sock(peer_sk); + if (sk_req) + error = aa_unix_label_sk_perm(label, op, sk_req, + sock->sk); + last_error(error, + xcheck(aa_unix_peer_perm(label, op, + MAY_READ | MAY_WRITE, + sock->sk, peer_sk, NULL), + aa_unix_peer_perm(pctx->label, op, + MAY_READ | MAY_WRITE, + peer_sk, sock->sk, label))); + } + + unix_state_double_unlock(sock->sk, peer_sk); + sock_put(peer_sk); + + return error; +} --- linux-azure-5.8-5.8.0.orig/security/apparmor/apparmorfs.c +++ linux-azure-5.8-5.8.0/security/apparmor/apparmorfs.c @@ -2348,6 +2348,11 @@ { } }; +static struct aa_sfs_entry aa_sfs_entry_dbus[] = { + AA_SFS_FILE_STRING("mask", "acquire send receive"), + { } +}; + static struct aa_sfs_entry aa_sfs_entry_query_label[] = { AA_SFS_FILE_STRING("perms", "allow deny audit quiet"), AA_SFS_FILE_BOOLEAN("data", 1), @@ -2364,6 +2369,7 @@ AA_SFS_DIR("domain", aa_sfs_entry_domain), AA_SFS_DIR("file", aa_sfs_entry_file), AA_SFS_DIR("network_v8", aa_sfs_entry_network), + AA_SFS_DIR("network", aa_sfs_entry_network_compat), AA_SFS_DIR("mount", aa_sfs_entry_mount), AA_SFS_DIR("namespaces", aa_sfs_entry_ns), AA_SFS_FILE_U64("capability", VFS_CAP_FLAGS_MASK), @@ -2371,6 +2377,7 @@ AA_SFS_DIR("caps", aa_sfs_entry_caps), AA_SFS_DIR("ptrace", aa_sfs_entry_ptrace), AA_SFS_DIR("signal", aa_sfs_entry_signal), + AA_SFS_DIR("dbus", aa_sfs_entry_dbus), AA_SFS_DIR("query", aa_sfs_entry_query), { } }; --- linux-azure-5.8-5.8.0.orig/security/apparmor/crypto.c +++ linux-azure-5.8-5.8.0/security/apparmor/crypto.c @@ -25,6 +25,25 @@ return apparmor_hash_size; } +void aa_snprint_hashstr(char *out, unsigned char *hash, unsigned int hsize) +{ + unsigned int i; + + for (i = 0; i < hsize; i++) + sprintf(out + i*2, "%.2x", hash[i]); + out[hsize*2] = 0; +} + +char *aa_asprint_hashstr(unsigned char *hash, unsigned int hsize, gfp_t gfp) +{ + char *buffer = kmalloc(hsize*2 + 1, gfp); + if (!buffer) + return NULL; + aa_snprint_hashstr(buffer, hash, hsize); + + return buffer; +} + char *aa_calc_hash(void *data, size_t len) { SHASH_DESC_ON_STACK(desc, apparmor_tfm); --- linux-azure-5.8-5.8.0.orig/security/apparmor/file.c +++ linux-azure-5.8-5.8.0/security/apparmor/file.c @@ -12,6 +12,7 @@ #include #include +#include "include/af_unix.h" #include "include/apparmor.h" #include "include/audit.h" #include "include/cred.h" @@ -280,7 +281,8 @@ { int e = 0; - if (profile_unconfined(profile)) + if (profile_unconfined(profile) || + ((flags & PATH_SOCK_COND) && !PROFILE_MEDIATES_AF(profile, AF_UNIX))) return 0; aa_str_perms(profile->file.dfa, profile->file.start, name, cond, perms); if (request & ~perms->allow) --- linux-azure-5.8-5.8.0.orig/security/apparmor/include/af_unix.h +++ linux-azure-5.8-5.8.0/security/apparmor/include/af_unix.h @@ -0,0 +1,114 @@ +/* + * AppArmor security module + * + * This file contains AppArmor af_unix fine grained mediation + * + * Copyright 2014 Canonical Ltd. + * + * This program is free software; you can redistribute it and/or + * modify it under the terms of the GNU General Public License as + * published by the Free Software Foundation, version 2 of the + * License. + */ +#ifndef __AA_AF_UNIX_H + +#include + +#include "label.h" +//#include "include/net.h" + +#define unix_addr_len(L) ((L) - sizeof(sa_family_t)) +#define unix_abstract_name_len(L) (unix_addr_len(L) - 1) +#define unix_abstract_len(U) (unix_abstract_name_len((U)->addr->len)) +#define addr_unix_abstract_name(B) ((B)[0] == 0) +#define addr_unix_anonymous(U) (addr_unix_len(U) <= 0) +#define addr_unix_abstract(U) (!addr_unix_anonymous(U) && addr_unix_abstract_name((U)->addr)) +//#define unix_addr_fs(U) (!unix_addr_anonymous(U) && !unix_addr_abstract_name((U)->addr)) + +#define unix_addr(A) ((struct sockaddr_un *)(A)) +#define unix_addr_anon(A, L) ((A) && unix_addr_len(L) <= 0) +#define unix_addr_fs(A, L) (!unix_addr_anon(A, L) && !addr_unix_abstract_name(unix_addr(A)->sun_path)) + +#define UNIX_ANONYMOUS(U) (!unix_sk(U)->addr) +/* from net/unix/af_unix.c */ +#define UNIX_ABSTRACT(U) (!UNIX_ANONYMOUS(U) && \ + unix_sk(U)->addr->hash < UNIX_HASH_SIZE) +#define UNIX_FS(U) (!UNIX_ANONYMOUS(U) && unix_sk(U)->addr->name->sun_path[0]) +#define unix_peer(sk) (unix_sk(sk)->peer) +#define unix_connected(S) ((S)->state == SS_CONNECTED) + +static inline void print_unix_addr(struct sockaddr_un *A, int L) +{ + char *buf = (A) ? (char *) &(A)->sun_path : NULL; + int len = unix_addr_len(L); + if (!buf || len <= 0) + printk(" "); + else if (buf[0]) + printk(" %s", buf); + else + /* abstract name len includes leading \0 */ + printk(" %d @%.*s", len - 1, len - 1, buf+1); +}; + +/* + printk("%s: %s: f %d, t %d, p %d", __FUNCTION__, \ + #SK , \ +*/ +#define print_unix_sk(SK) \ +do { \ + struct unix_sock *u = unix_sk(SK); \ + printk("%s: f %d, t %d, p %d", #SK , \ + (SK)->sk_family, (SK)->sk_type, (SK)->sk_protocol); \ + if (u->addr) \ + print_unix_addr(u->addr->name, u->addr->len); \ + else \ + print_unix_addr(NULL, sizeof(sa_family_t)); \ + /* printk("\n");*/ \ +} while (0) + +#define print_sk(SK) \ +do { \ + if (!(SK)) { \ + printk("%s: %s is null\n", __FUNCTION__, #SK); \ + } else if ((SK)->sk_family == PF_UNIX) { \ + print_unix_sk(SK); \ + printk("\n"); \ + } else { \ + printk("%s: %s: family %d\n", __FUNCTION__, #SK , \ + (SK)->sk_family); \ + } \ +} while (0) + +#define print_sock_addr(U) \ +do { \ + printk("%s:\n", __FUNCTION__); \ + printk(" sock %s:", sock_ctx && sock_ctx->label ? aa_label_printk(sock_ctx->label, GFP_ATOMIC); : ""); print_sk(sock); \ + printk(" other %s:", other_ctx && other_ctx->label ? aa_label_printk(other_ctx->label, GFP_ATOMIC); : ""); print_sk(other); \ + printk(" new %s", new_ctx && new_ctx->label ? aa_label_printk(new_ctx->label, GFP_ATOMIC); : ""); print_sk(newsk); \ +} while (0) + + + + +int aa_unix_peer_perm(struct aa_label *label, const char *op, u32 request, + struct sock *sk, struct sock *peer_sk, + struct aa_label *peer_label); +int aa_unix_label_sk_perm(struct aa_label *label, const char *op, u32 request, + struct sock *sk); +int aa_unix_sock_perm(const char *op, u32 request, struct socket *sock); +int aa_unix_create_perm(struct aa_label *label, int family, int type, + int protocol); +int aa_unix_bind_perm(struct socket *sock, struct sockaddr *address, + int addrlen); +int aa_unix_connect_perm(struct socket *sock, struct sockaddr *address, + int addrlen); +int aa_unix_listen_perm(struct socket *sock, int backlog); +int aa_unix_accept_perm(struct socket *sock, struct socket *newsock); +int aa_unix_msg_perm(const char *op, u32 request, struct socket *sock, + struct msghdr *msg, int size); +int aa_unix_opt_perm(const char *op, u32 request, struct socket *sock, int level, + int optname); +int aa_unix_file_perm(struct aa_label *label, const char *op, u32 request, + struct socket *sock); + +#endif /* __AA_AF_UNIX_H */ --- linux-azure-5.8-5.8.0.orig/security/apparmor/include/apparmor.h +++ linux-azure-5.8-5.8.0/security/apparmor/include/apparmor.h @@ -20,7 +20,7 @@ #define AA_CLASS_UNKNOWN 1 #define AA_CLASS_FILE 2 #define AA_CLASS_CAP 3 -#define AA_CLASS_DEPRECATED 4 +#define AA_CLASS_NET_COMPAT 4 #define AA_CLASS_RLIMITS 5 #define AA_CLASS_DOMAIN 6 #define AA_CLASS_MOUNT 7 @@ -28,8 +28,9 @@ #define AA_CLASS_SIGNAL 10 #define AA_CLASS_NET 14 #define AA_CLASS_LABEL 16 +#define AA_CLASS_DISPLAY_LSM 17 -#define AA_CLASS_LAST AA_CLASS_LABEL +#define AA_CLASS_LAST AA_CLASS_DISPLAY_LSM /* Control parameters settable through module/boot flags */ extern enum audit_mode aa_g_audit; --- linux-azure-5.8-5.8.0.orig/security/apparmor/include/crypto.h +++ linux-azure-5.8-5.8.0/security/apparmor/include/crypto.h @@ -14,6 +14,8 @@ #ifdef CONFIG_SECURITY_APPARMOR_HASH unsigned int aa_hash_size(void); +void aa_snprint_hashstr(char *out, unsigned char *hash, unsigned int hsize); +char *aa_asprint_hashstr(unsigned char *hash, unsigned int hsize, gfp_t gfp); char *aa_calc_hash(void *data, size_t len); int aa_calc_profile_hash(struct aa_profile *profile, u32 version, void *start, size_t len); @@ -32,6 +34,15 @@ { return 0; } + +void aa_snprint_hashstr(char *out, unsigned char *hash, unsigned int hsize) +{ +} + +char *aa_asprint_hashstr(unsigned char *hash, unsigned int hsize, gfp_t gfp); +{ + return NULL; +} #endif #endif /* __APPARMOR_CRYPTO_H */ --- linux-azure-5.8-5.8.0.orig/security/apparmor/include/net.h +++ linux-azure-5.8-5.8.0/security/apparmor/include/net.h @@ -49,9 +49,14 @@ struct aa_sk_ctx { struct aa_label *label; struct aa_label *peer; + struct path path; }; -#define SK_CTX(X) ((X)->sk_security) +static inline struct aa_sk_ctx *aa_sock(const struct sock *sk) +{ + return sk->sk_security + apparmor_blob_sizes.lbs_sock; +} + #define SOCK_ctx(X) SOCK_INODE(X)->i_security #define DEFINE_AUDIT_NET(NAME, OP, SK, F, T, P) \ struct lsm_network_audit NAME ## _net = { .sk = (SK), \ @@ -68,11 +73,24 @@ DEFINE_AUDIT_NET(NAME, OP, SK, (SK)->sk_family, (SK)->sk_type, \ (SK)->sk_protocol) +/* struct aa_net - network confinement data + * @allow: basic network families permissions + * @audit: which network permissions to force audit + * @quiet: which network permissions to quiet rejects + */ +struct aa_net_compat { + u16 allow[AF_MAX]; + u16 audit[AF_MAX]; + u16 quiet[AF_MAX]; +}; #define af_select(FAMILY, FN, DEF_FN) \ ({ \ int __e; \ switch ((FAMILY)) { \ + case AF_UNIX: \ + __e = aa_unix_ ## FN; \ + break; \ default: \ __e = DEF_FN; \ } \ @@ -87,6 +105,7 @@ }; extern struct aa_sfs_entry aa_sfs_entry_network[]; +extern struct aa_sfs_entry aa_sfs_entry_network_compat[]; void audit_net_cb(struct audit_buffer *ab, void *va); int aa_profile_af_perm(struct aa_profile *profile, struct common_audit_data *sa, --- linux-azure-5.8-5.8.0.orig/security/apparmor/include/path.h +++ linux-azure-5.8-5.8.0/security/apparmor/include/path.h @@ -13,6 +13,7 @@ enum path_flags { PATH_IS_DIR = 0x1, /* path is a directory */ + PATH_SOCK_COND = 0x2, PATH_CONNECT_PATH = 0x4, /* connect disconnected paths to / */ PATH_CHROOT_REL = 0x8, /* do path lookup relative to chroot */ PATH_CHROOT_NSCONNECT = 0x10, /* connect paths that are at ns root */ --- linux-azure-5.8-5.8.0.orig/security/apparmor/include/policy.h +++ linux-azure-5.8-5.8.0/security/apparmor/include/policy.h @@ -108,6 +108,7 @@ * @policy: general match rules governing policy * @file: The set of rules governing basic file access and domain transitions * @caps: capabilities for the profile + * @net_compat: v2 compat network controls for the profile * @rlimits: rlimits for the profile * * @dents: dentries for the profiles file entries in apparmorfs @@ -145,6 +146,7 @@ struct aa_policydb policy; struct aa_file_rules file; struct aa_caps caps; + struct aa_net_compat *net_compat; int xattr_count; char **xattrs; @@ -228,9 +230,13 @@ unsigned int state = PROFILE_MEDIATES(profile, AA_CLASS_NET); __be16 be_af = cpu_to_be16(AF); - if (!state) - return 0; - return aa_dfa_match_len(profile->policy.dfa, state, (char *) &be_af, 2); + if (!state) { + state = PROFILE_MEDIATES(profile, AA_CLASS_NET_COMPAT); + if (!state) + return 0; + } + state = aa_dfa_match_len(profile->policy.dfa, state, (char *) &be_af, 2); + return state; } /** --- linux-azure-5.8-5.8.0.orig/security/apparmor/include/procattr.h +++ linux-azure-5.8-5.8.0/security/apparmor/include/procattr.h @@ -11,7 +11,7 @@ #ifndef __AA_PROCATTR_H #define __AA_PROCATTR_H -int aa_getprocattr(struct aa_label *label, char **string); +int aa_getprocattr(struct aa_label *label, char **string, bool newline); int aa_setprocattr_changehat(char *args, size_t size, int flags); #endif /* __AA_PROCATTR_H */ --- linux-azure-5.8-5.8.0.orig/security/apparmor/include/secid.h +++ linux-azure-5.8-5.8.0/security/apparmor/include/secid.h @@ -21,6 +21,9 @@ /* secid value that matches any other secid */ #define AA_SECID_WILDCARD 1 +/* sysctl to enable displaying mode when converting secid to secctx */ +extern int apparmor_display_secid_mode; + struct aa_label *aa_secid_to_label(u32 secid); int apparmor_secid_to_secctx(u32 secid, char **secdata, u32 *seclen); int apparmor_secctx_to_secid(const char *secdata, u32 seclen, u32 *secid); --- linux-azure-5.8-5.8.0.orig/security/apparmor/label.c +++ linux-azure-5.8-5.8.0/security/apparmor/label.c @@ -1632,13 +1632,10 @@ AA_BUG(!str && size != 0); AA_BUG(!label); - if (flags & FLAG_ABS_ROOT) { + if (flags & FLAG_ABS_ROOT) ns = root_ns; - len = snprintf(str, size, "="); - update_for_len(total, len, size, str); - } else if (!ns) { + else if (!ns) ns = labels_ns(label); - } label_for_each(i, label, profile) { if (aa_ns_visible(ns, profile->ns, flags & FLAG_VIEW_SUBNS)) { --- linux-azure-5.8-5.8.0.orig/security/apparmor/lib.c +++ linux-azure-5.8-5.8.0/security/apparmor/lib.c @@ -334,7 +334,7 @@ /* for v5 perm mapping in the policydb, the other set is used * to extend the general perm set */ - perms->allow |= map_other(dfa_other_allow(dfa, state)); + perms->allow |= map_other(dfa_other_allow(dfa, state)) | AA_MAY_LOCK; perms->audit |= map_other(dfa_other_audit(dfa, state)); perms->quiet |= map_other(dfa_other_quiet(dfa, state)); // perms->xindex = dfa_user_xindex(dfa, state); --- linux-azure-5.8-5.8.0.orig/security/apparmor/lsm.c +++ linux-azure-5.8-5.8.0/security/apparmor/lsm.c @@ -25,6 +25,7 @@ #include #include +#include "include/af_unix.h" #include "include/apparmor.h" #include "include/apparmorfs.h" #include "include/audit.h" @@ -593,6 +594,7 @@ const struct cred *cred = get_task_cred(task); struct aa_task_ctx *ctx = task_ctx(current); struct aa_label *label = NULL; + bool newline = true; if (strcmp(name, "current") == 0) label = aa_get_newest_label(cred_label(cred)); @@ -600,11 +602,14 @@ label = aa_get_newest_label(ctx->previous); else if (strcmp(name, "exec") == 0 && ctx->onexec) label = aa_get_newest_label(ctx->onexec); - else + else if (strcmp(name, "context") == 0) { + label = aa_get_newest_label(cred_label(cred)); + newline = false; + } else error = -EINVAL; if (label) - error = aa_getprocattr(label, value); + error = aa_getprocattr(label, value, newline); aa_put_label(label); put_cred(cred); @@ -612,6 +617,25 @@ return error; } + +static int profile_display_lsm(struct aa_profile *profile, + struct common_audit_data *sa) +{ + struct aa_perms perms = { }; + unsigned int state; + + state = PROFILE_MEDIATES(profile, AA_CLASS_DISPLAY_LSM); + if (state) { + aa_compute_perms(profile->policy.dfa, state, &perms); + aa_apply_modes_to_perms(profile, &perms); + aad(sa)->label = &profile->label; + + return aa_check_perms(profile, &perms, AA_MAY_WRITE, sa, NULL); + } + + return 0; +} + static int apparmor_setprocattr(const char *name, void *value, size_t size) { @@ -623,6 +647,19 @@ if (size == 0) return -EINVAL; + /* LSM infrastructure does actual setting of display if allowed */ + if (!strcmp(name, "display")) { + struct aa_profile *profile; + struct aa_label *label; + + aad(&sa)->info = "set display lsm"; + label = begin_current_label_crit_section(); + error = fn_for_each_confined(label, profile, + profile_display_lsm(profile, &sa)); + end_current_label_crit_section(label); + return error; + } + /* AppArmor requires that the buffer must be null terminated atm */ if (args[size - 1] != '\0') { /* null terminate */ @@ -767,32 +804,15 @@ } /** - * apparmor_sk_alloc_security - allocate and attach the sk_security field - */ -static int apparmor_sk_alloc_security(struct sock *sk, int family, gfp_t flags) -{ - struct aa_sk_ctx *ctx; - - ctx = kzalloc(sizeof(*ctx), flags); - if (!ctx) - return -ENOMEM; - - SK_CTX(sk) = ctx; - - return 0; -} - -/** * apparmor_sk_free_security - free the sk_security field */ static void apparmor_sk_free_security(struct sock *sk) { - struct aa_sk_ctx *ctx = SK_CTX(sk); + struct aa_sk_ctx *ctx = aa_sock(sk); - SK_CTX(sk) = NULL; aa_put_label(ctx->label); aa_put_label(ctx->peer); - kfree(ctx); + path_put(&ctx->path); } /** @@ -801,8 +821,8 @@ static void apparmor_sk_clone_security(const struct sock *sk, struct sock *newsk) { - struct aa_sk_ctx *ctx = SK_CTX(sk); - struct aa_sk_ctx *new = SK_CTX(newsk); + struct aa_sk_ctx *ctx = aa_sock(sk); + struct aa_sk_ctx *new = aa_sock(newsk); if (new->label) aa_put_label(new->label); @@ -811,6 +831,99 @@ if (new->peer) aa_put_label(new->peer); new->peer = aa_get_label(ctx->peer); + new->path = ctx->path; + path_get(&new->path); +} + +static struct path *UNIX_FS_CONN_PATH(struct sock *sk, struct sock *newsk) +{ + if (sk->sk_family == PF_UNIX && UNIX_FS(sk)) + return &unix_sk(sk)->path; + else if (newsk->sk_family == PF_UNIX && UNIX_FS(newsk)) + return &unix_sk(newsk)->path; + return NULL; +} + +/** + * apparmor_unix_stream_connect - check perms before making unix domain conn + * + * peer is locked when this hook is called + */ +static int apparmor_unix_stream_connect(struct sock *sk, struct sock *peer_sk, + struct sock *newsk) +{ + struct aa_sk_ctx *sk_ctx = aa_sock(sk); + struct aa_sk_ctx *peer_ctx = aa_sock(peer_sk); + struct aa_sk_ctx *new_ctx = aa_sock(newsk); + struct aa_label *label; + struct path *path; + int error; + + label = __begin_current_label_crit_section(); + error = aa_unix_peer_perm(label, OP_CONNECT, + (AA_MAY_CONNECT | AA_MAY_SEND | AA_MAY_RECEIVE), + sk, peer_sk, NULL); + if (!UNIX_FS(peer_sk)) { + last_error(error, + aa_unix_peer_perm(peer_ctx->label, OP_CONNECT, + (AA_MAY_ACCEPT | AA_MAY_SEND | AA_MAY_RECEIVE), + peer_sk, sk, label)); + } + __end_current_label_crit_section(label); + + if (error) + return error; + + /* label newsk if it wasn't labeled in post_create. Normally this + * would be done in sock_graft, but because we are directly looking + * at the peer_sk to obtain peer_labeling for unix socks this + * does not work + */ + if (!new_ctx->label) + new_ctx->label = aa_get_label(peer_ctx->label); + + /* Cross reference the peer labels for SO_PEERSEC */ + if (new_ctx->peer) + aa_put_label(new_ctx->peer); + + if (sk_ctx->peer) + aa_put_label(sk_ctx->peer); + + new_ctx->peer = aa_get_label(sk_ctx->label); + sk_ctx->peer = aa_get_label(peer_ctx->label); + + path = UNIX_FS_CONN_PATH(sk, peer_sk); + if (path) { + new_ctx->path = *path; + sk_ctx->path = *path; + path_get(path); + path_get(path); + } + return 0; +} + +/** + * apparmor_unix_may_send - check perms before conn or sending unix dgrams + * + * other is locked when this hook is called + * + * dgram connect calls may_send, peer setup but path not copied????? + */ +static int apparmor_unix_may_send(struct socket *sock, struct socket *peer) +{ + struct aa_sk_ctx *peer_ctx = aa_sock(peer->sk); + struct aa_label *label; + int error; + + label = __begin_current_label_crit_section(); + error = xcheck(aa_unix_peer_perm(label, OP_SENDMSG, AA_MAY_SEND, + sock->sk, peer->sk, NULL), + aa_unix_peer_perm(peer_ctx->label, OP_SENDMSG, + AA_MAY_RECEIVE, + peer->sk, sock->sk, label)); + __end_current_label_crit_section(label); + + return error; } /** @@ -858,7 +971,7 @@ label = aa_get_current_label(); if (sock->sk) { - struct aa_sk_ctx *ctx = SK_CTX(sock->sk); + struct aa_sk_ctx *ctx = aa_sock(sock->sk); aa_put_label(ctx->label); ctx->label = aa_get_label(label); @@ -1043,7 +1156,7 @@ */ static int apparmor_socket_sock_rcv_skb(struct sock *sk, struct sk_buff *skb) { - struct aa_sk_ctx *ctx = SK_CTX(sk); + struct aa_sk_ctx *ctx = aa_sock(sk); if (!skb->secmark) return 0; @@ -1056,12 +1169,28 @@ static struct aa_label *sk_peer_label(struct sock *sk) { - struct aa_sk_ctx *ctx = SK_CTX(sk); + struct sock *peer_sk; + struct aa_sk_ctx *ctx = aa_sock(sk); + struct aa_label *label = ERR_PTR(-ENOPROTOOPT); if (ctx->peer) - return ctx->peer; + return aa_get_label(ctx->peer); - return ERR_PTR(-ENOPROTOOPT); + if (sk->sk_family != PF_UNIX) + return ERR_PTR(-ENOPROTOOPT); + + /* check for sockpair peering which does not go through + * security_unix_stream_connect + */ + peer_sk = unix_peer_get(sk); + if (peer_sk) { + ctx = aa_sock(peer_sk); + if (ctx->label) + label = aa_get_label(ctx->label); + sock_put(peer_sk); + } + + return label; } /** @@ -1105,6 +1234,7 @@ } + aa_put_label(peer); done: end_current_label_crit_section(label); @@ -1112,22 +1242,6 @@ } /** - * apparmor_socket_getpeersec_dgram - get security label of packet - * @sock: the peer socket - * @skb: packet data - * @secid: pointer to where to put the secid of the packet - * - * Sets the netlabel socket state on sk from parent - */ -static int apparmor_socket_getpeersec_dgram(struct socket *sock, - struct sk_buff *skb, u32 *secid) - -{ - /* TODO: requires secid support */ - return -ENOPROTOOPT; -} - -/** * apparmor_sock_graft - Initialize newly created socket * @sk: child sock * @parent: parent socket @@ -1140,7 +1254,7 @@ */ static void apparmor_sock_graft(struct sock *sk, struct socket *parent) { - struct aa_sk_ctx *ctx = SK_CTX(sk); + struct aa_sk_ctx *ctx = aa_sock(sk); if (!ctx->label) ctx->label = aa_get_current_label(); @@ -1150,7 +1264,7 @@ static int apparmor_inet_conn_request(struct sock *sk, struct sk_buff *skb, struct request_sock *req) { - struct aa_sk_ctx *ctx = SK_CTX(sk); + struct aa_sk_ctx *ctx = aa_sock(sk); if (!skb->secmark) return 0; @@ -1167,6 +1281,12 @@ .lbs_cred = sizeof(struct aa_task_ctx *), .lbs_file = sizeof(struct aa_file_ctx), .lbs_task = sizeof(struct aa_task_ctx), + .lbs_sock = sizeof(struct aa_sk_ctx), +}; + +static struct lsm_id apparmor_lsmid __lsm_ro_after_init = { + .lsm = "apparmor", + .slot = LSMBLOB_NEEDED }; static struct security_hook_list apparmor_hooks[] __lsm_ro_after_init = { @@ -1203,10 +1323,12 @@ LSM_HOOK_INIT(getprocattr, apparmor_getprocattr), LSM_HOOK_INIT(setprocattr, apparmor_setprocattr), - LSM_HOOK_INIT(sk_alloc_security, apparmor_sk_alloc_security), LSM_HOOK_INIT(sk_free_security, apparmor_sk_free_security), LSM_HOOK_INIT(sk_clone_security, apparmor_sk_clone_security), + LSM_HOOK_INIT(unix_stream_connect, apparmor_unix_stream_connect), + LSM_HOOK_INIT(unix_may_send, apparmor_unix_may_send), + LSM_HOOK_INIT(socket_create, apparmor_socket_create), LSM_HOOK_INIT(socket_post_create, apparmor_socket_post_create), LSM_HOOK_INIT(socket_bind, apparmor_socket_bind), @@ -1225,8 +1347,6 @@ #endif LSM_HOOK_INIT(socket_getpeersec_stream, apparmor_socket_getpeersec_stream), - LSM_HOOK_INIT(socket_getpeersec_dgram, - apparmor_socket_getpeersec_dgram), LSM_HOOK_INIT(sock_graft, apparmor_sock_graft), #ifdef CONFIG_NETWORK_SECMARK LSM_HOOK_INIT(inet_conn_request, apparmor_inet_conn_request), @@ -1724,6 +1844,14 @@ .mode = 0600, .proc_handler = apparmor_dointvec, }, + { + .procname = "apparmor_display_secid_mode", + .data = &apparmor_display_secid_mode, + .maxlen = sizeof(int), + .mode = 0600, + .proc_handler = apparmor_dointvec, + }, + { } }; @@ -1754,7 +1882,7 @@ if (sk == NULL) return NF_ACCEPT; - ctx = SK_CTX(sk); + ctx = aa_sock(sk); if (!apparmor_secmark_check(ctx->label, OP_SENDMSG, AA_MAY_SEND, skb->secmark, sk)) return NF_ACCEPT; @@ -1870,7 +1998,7 @@ goto buffers_out; } security_add_hooks(apparmor_hooks, ARRAY_SIZE(apparmor_hooks), - "apparmor"); + &apparmor_lsmid); /* Report that AppArmor successfully initialized */ apparmor_initialized = 1; @@ -1895,7 +2023,7 @@ DEFINE_LSM(apparmor) = { .name = "apparmor", - .flags = LSM_FLAG_LEGACY_MAJOR | LSM_FLAG_EXCLUSIVE, + .flags = LSM_FLAG_LEGACY_MAJOR, .enabled = &apparmor_enabled, .blobs = &apparmor_blob_sizes, .init = apparmor_init, --- linux-azure-5.8-5.8.0.orig/security/apparmor/net.c +++ linux-azure-5.8-5.8.0/security/apparmor/net.c @@ -8,6 +8,7 @@ * Copyright 2009-2017 Canonical Ltd. */ +#include "include/af_unix.h" #include "include/apparmor.h" #include "include/audit.h" #include "include/cred.h" @@ -24,6 +25,12 @@ { } }; +struct aa_sfs_entry aa_sfs_entry_network_compat[] = { + AA_SFS_FILE_STRING("af_mask", AA_SFS_AF_MASK), + AA_SFS_FILE_BOOLEAN("af_unix", 1), + { } +}; + static const char * const net_mask_names[] = { "unknown", "send", @@ -66,6 +73,36 @@ "unknown", }; +static void audit_unix_addr(struct audit_buffer *ab, const char *str, + struct sockaddr_un *addr, int addrlen) +{ + int len = unix_addr_len(addrlen); + + if (!addr || len <= 0) { + audit_log_format(ab, " %s=none", str); + } else if (addr->sun_path[0]) { + audit_log_format(ab, " %s=", str); + audit_log_untrustedstring(ab, addr->sun_path); + } else { + audit_log_format(ab, " %s=\"@", str); + if (audit_string_contains_control(&addr->sun_path[1], len - 1)) + audit_log_n_hex(ab, &addr->sun_path[1], len - 1); + else + audit_log_format(ab, "%.*s", len - 1, + &addr->sun_path[1]); + audit_log_format(ab, "\""); + } +} + +static void audit_unix_sk_addr(struct audit_buffer *ab, const char *str, + struct sock *sk) +{ + struct unix_sock *u = unix_sk(sk); + if (u && u->addr) + audit_unix_addr(ab, str, u->addr->name, u->addr->len); + else + audit_unix_addr(ab, str, NULL, 0); +} /* audit callback for net specific fields */ void audit_net_cb(struct audit_buffer *ab, void *va) @@ -95,6 +132,23 @@ net_mask_names, NET_PERMS_MASK); } } + if (sa->u.net->family == AF_UNIX) { + if ((aad(sa)->request & ~NET_PEER_MASK) && aad(sa)->net.addr) + audit_unix_addr(ab, "addr", + unix_addr(aad(sa)->net.addr), + aad(sa)->net.addrlen); + else + audit_unix_sk_addr(ab, "addr", sa->u.net->sk); + if (aad(sa)->request & NET_PEER_MASK) { + if (aad(sa)->net.addr) + audit_unix_addr(ab, "peer_addr", + unix_addr(aad(sa)->net.addr), + aad(sa)->net.addrlen); + else + audit_unix_sk_addr(ab, "peer_addr", + aad(sa)->net.peer_sk); + } + } if (aad(sa)->peer) { audit_log_format(ab, " peer="); aa_label_xaudit(ab, labels_ns(aad(sa)->label), aad(sa)->peer, @@ -116,14 +170,26 @@ if (profile_unconfined(profile)) return 0; state = PROFILE_MEDIATES(profile, AA_CLASS_NET); - if (!state) - return 0; + if (state) { + if (!state) + return 0; + buffer[0] = cpu_to_be16(family); + buffer[1] = cpu_to_be16((u16) type); + state = aa_dfa_match_len(profile->policy.dfa, state, + (char *) &buffer, 4); + aa_compute_perms(profile->policy.dfa, state, &perms); + } else if (profile->net_compat) { + /* 2.x socket mediation compat */ + perms.allow = (profile->net_compat->allow[family] & (1 << type)) ? + ALL_PERMS_MASK : 0; + perms.audit = (profile->net_compat->audit[family] & (1 << type)) ? + ALL_PERMS_MASK : 0; + perms.quiet = (profile->net_compat->quiet[family] & (1 << type)) ? + ALL_PERMS_MASK : 0; - buffer[0] = cpu_to_be16(family); - buffer[1] = cpu_to_be16((u16) type); - state = aa_dfa_match_len(profile->policy.dfa, state, (char *) &buffer, - 4); - aa_compute_perms(profile->policy.dfa, state, &perms); + } else { + return 0; + } aa_apply_modes_to_perms(profile, &perms); return aa_check_perms(profile, &perms, request, sa, audit_net_cb); @@ -183,7 +249,9 @@ AA_BUG(!sock); AA_BUG(!sock->sk); - return aa_label_sk_perm(label, op, request, sock->sk); + return af_select(sock->sk->sk_family, + file_perm(label, op, request, sock), + aa_label_sk_perm(label, op, request, sock->sk)); } #ifdef CONFIG_NETWORK_SECMARK --- linux-azure-5.8-5.8.0.orig/security/apparmor/policy.c +++ linux-azure-5.8-5.8.0/security/apparmor/policy.c @@ -222,6 +222,7 @@ aa_free_file_rules(&profile->file); aa_free_cap_rules(&profile->caps); aa_free_rlimit_rules(&profile->rlimits); + kzfree(profile->net_compat); for (i = 0; i < profile->xattr_count; i++) kzfree(profile->xattrs[i]); --- linux-azure-5.8-5.8.0.orig/security/apparmor/policy_unpack.c +++ linux-azure-5.8-5.8.0/security/apparmor/policy_unpack.c @@ -34,7 +34,7 @@ #define v5 5 /* base version */ #define v6 6 /* per entry policydb mediation check */ -#define v7 7 +#define v7 7 /* v2 compat networking */ #define v8 8 /* full network masking */ /* @@ -314,6 +314,19 @@ return false; } +static bool unpack_u16(struct aa_ext *e, u16 *data, const char *name) +{ + if (unpack_nameX(e, AA_U16, name)) { + if (!inbounds(e, sizeof(u16))) + return 0; + if (data) + *data = le16_to_cpu(get_unaligned((__le16 *) e->pos)); + e->pos += sizeof(u16); + return 1; + } + return 0; +} + static bool unpack_u32(struct aa_ext *e, u32 *data, const char *name) { void *pos = e->pos; @@ -676,7 +689,7 @@ struct aa_profile *profile = NULL; const char *tmpname, *tmpns = NULL, *name = NULL; const char *info = "failed to unpack profile"; - size_t ns_len; + size_t size = 0, ns_len; struct rhashtable_params params = { 0 }; char *key = NULL; struct aa_data *data; @@ -823,6 +836,43 @@ goto fail; } + size = unpack_array(e, "net_allowed_af"); + if (size || VERSION_LT(e->version, v8)) { + profile->net_compat = kzalloc(sizeof(struct aa_net_compat), GFP_KERNEL); + if (!profile->net_compat) { + info = "out of memory"; + goto fail; + } + for (i = 0; i < size; i++) { + /* discard extraneous rules that this kernel will + * never request + */ + if (i >= AF_MAX) { + u16 tmp; + + if (!unpack_u16(e, &tmp, NULL) || + !unpack_u16(e, &tmp, NULL) || + !unpack_u16(e, &tmp, NULL)) + goto fail; + continue; + } + if (!unpack_u16(e, &profile->net_compat->allow[i], NULL)) + goto fail; + if (!unpack_u16(e, &profile->net_compat->audit[i], NULL)) + goto fail; + if (!unpack_u16(e, &profile->net_compat->quiet[i], NULL)) + goto fail; + } + if (size && !unpack_nameX(e, AA_ARRAYEND, NULL)) + goto fail; + if (VERSION_LT(e->version, v7)) { + /* pre v7 policy always allowed these */ + profile->net_compat->allow[AF_UNIX] = 0xffff; + profile->net_compat->allow[AF_NETLINK] = 0xffff; + } + } + + if (unpack_nameX(e, AA_STRUCT, "policydb")) { /* generic policy dfa - optional and may be NULL */ info = "failed to unpack policydb"; --- linux-azure-5.8-5.8.0.orig/security/apparmor/procattr.c +++ linux-azure-5.8-5.8.0/security/apparmor/procattr.c @@ -20,6 +20,7 @@ * aa_getprocattr - Return the profile information for @profile * @profile: the profile to print profile info about (NOT NULL) * @string: Returns - string containing the profile info (NOT NULL) + * @newline: Should a newline be added to @string. * * Returns: length of @string on success else error on failure * @@ -30,20 +31,21 @@ * * Returns: size of string placed in @string else error code on failure */ -int aa_getprocattr(struct aa_label *label, char **string) +int aa_getprocattr(struct aa_label *label, char **string, bool newline) { struct aa_ns *ns = labels_ns(label); struct aa_ns *current_ns = aa_get_current_ns(); + int flags = FLAG_VIEW_SUBNS | FLAG_HIDDEN_UNCONFINED; int len; if (!aa_ns_visible(current_ns, ns, true)) { aa_put_ns(current_ns); return -EACCES; } + if (newline) + flags |= FLAG_SHOW_MODE; - len = aa_label_snxprint(NULL, 0, current_ns, label, - FLAG_SHOW_MODE | FLAG_VIEW_SUBNS | - FLAG_HIDDEN_UNCONFINED); + len = aa_label_snxprint(NULL, 0, current_ns, label, flags); AA_BUG(len < 0); *string = kmalloc(len + 2, GFP_KERNEL); @@ -52,19 +54,19 @@ return -ENOMEM; } - len = aa_label_snxprint(*string, len + 2, current_ns, label, - FLAG_SHOW_MODE | FLAG_VIEW_SUBNS | - FLAG_HIDDEN_UNCONFINED); + len = aa_label_snxprint(*string, len + 2, current_ns, label, flags); if (len < 0) { aa_put_ns(current_ns); return len; } - (*string)[len] = '\n'; - (*string)[len + 1] = 0; + if (newline) { + (*string)[len] = '\n'; + (*string)[++len] = 0; + } aa_put_ns(current_ns); - return len + 1; + return len; } /** --- linux-azure-5.8-5.8.0.orig/security/apparmor/secid.c +++ linux-azure-5.8-5.8.0/security/apparmor/secid.c @@ -32,6 +32,8 @@ static DEFINE_IDR(aa_secids); static DEFINE_SPINLOCK(secid_lock); +int apparmor_display_secid_mode = 0; + /* * TODO: allow policy to reserve a secid range? * TODO: add secid pinning @@ -71,6 +73,7 @@ { /* TODO: cache secctx and ref count so we don't have to recreate */ struct aa_label *label = aa_secid_to_label(secid); + int flags = FLAG_VIEW_SUBNS | FLAG_HIDDEN_UNCONFINED | FLAG_ABS_ROOT; int len; AA_BUG(!seclen); @@ -78,15 +81,15 @@ if (!label) return -EINVAL; + if (apparmor_display_secid_mode) + flags |= FLAG_SHOW_MODE; + if (secdata) len = aa_label_asxprint(secdata, root_ns, label, - FLAG_SHOW_MODE | FLAG_VIEW_SUBNS | - FLAG_HIDDEN_UNCONFINED | FLAG_ABS_ROOT, - GFP_ATOMIC); + flags, GFP_ATOMIC); else - len = aa_label_snxprint(NULL, 0, root_ns, label, - FLAG_SHOW_MODE | FLAG_VIEW_SUBNS | - FLAG_HIDDEN_UNCONFINED | FLAG_ABS_ROOT); + len = aa_label_snxprint(NULL, 0, root_ns, label, flags); + if (len < 0) return -ENOMEM; --- linux-azure-5.8-5.8.0.orig/security/bpf/hooks.c +++ linux-azure-5.8-5.8.0/security/bpf/hooks.c @@ -13,9 +13,19 @@ #undef LSM_HOOK }; +/* + * slot has to be LSMBLOB_NEEDED because some of the hooks + * supplied by this module require a slot. + */ +struct lsm_id bpf_lsmid __lsm_ro_after_init = { + .lsm = "bpf", + .slot = LSMBLOB_NEEDED +}; + static int __init bpf_lsm_init(void) { - security_add_hooks(bpf_lsm_hooks, ARRAY_SIZE(bpf_lsm_hooks), "bpf"); + security_add_hooks(bpf_lsm_hooks, ARRAY_SIZE(bpf_lsm_hooks), + &bpf_lsmid); pr_info("LSM support for eBPF active\n"); return 0; } --- linux-azure-5.8-5.8.0.orig/security/commoncap.c +++ linux-azure-5.8-5.8.0/security/commoncap.c @@ -371,10 +371,11 @@ { int size, ret; kuid_t kroot; + u32 nsmagic, magic; uid_t root, mappedroot; char *tmpbuf = NULL; struct vfs_cap_data *cap; - struct vfs_ns_cap_data *nscap; + struct vfs_ns_cap_data *nscap = NULL; struct dentry *dentry; struct user_namespace *fs_ns; @@ -396,46 +397,61 @@ fs_ns = inode->i_sb->s_user_ns; cap = (struct vfs_cap_data *) tmpbuf; if (is_v2header((size_t) ret, cap)) { - /* If this is sizeof(vfs_cap_data) then we're ok with the - * on-disk value, so return that. */ - if (alloc) - *buffer = tmpbuf; - else - kfree(tmpbuf); - return ret; - } else if (!is_v3header((size_t) ret, cap)) { - kfree(tmpbuf); - return -EINVAL; + root = 0; + } else if (is_v3header((size_t) ret, cap)) { + nscap = (struct vfs_ns_cap_data *) tmpbuf; + root = le32_to_cpu(nscap->rootid); + } else { + size = -EINVAL; + goto out_free; } - nscap = (struct vfs_ns_cap_data *) tmpbuf; - root = le32_to_cpu(nscap->rootid); kroot = make_kuid(fs_ns, root); /* If the root kuid maps to a valid uid in current ns, then return * this as a nscap. */ mappedroot = from_kuid(current_user_ns(), kroot); if (mappedroot != (uid_t)-1 && mappedroot != (uid_t)0) { + size = sizeof(struct vfs_ns_cap_data); if (alloc) { - *buffer = tmpbuf; + if (!nscap) { + /* v2 -> v3 conversion */ + nscap = kzalloc(size, GFP_ATOMIC); + if (!nscap) { + size = -ENOMEM; + goto out_free; + } + nsmagic = VFS_CAP_REVISION_3; + magic = le32_to_cpu(cap->magic_etc); + if (magic & VFS_CAP_FLAGS_EFFECTIVE) + nsmagic |= VFS_CAP_FLAGS_EFFECTIVE; + memcpy(&nscap->data, &cap->data, sizeof(__le32) * 2 * VFS_CAP_U32); + nscap->magic_etc = cpu_to_le32(nsmagic); + } else { + /* use allocated v3 buffer */ + tmpbuf = NULL; + } nscap->rootid = cpu_to_le32(mappedroot); - } else - kfree(tmpbuf); - return size; + *buffer = nscap; + } + goto out_free; } if (!rootid_owns_currentns(kroot)) { - kfree(tmpbuf); - return -EOPNOTSUPP; + size = -EOVERFLOW; + goto out_free; } /* This comes from a parent namespace. Return as a v2 capability */ size = sizeof(struct vfs_cap_data); if (alloc) { - *buffer = kmalloc(size, GFP_ATOMIC); - if (*buffer) { - struct vfs_cap_data *cap = *buffer; - __le32 nsmagic, magic; + if (nscap) { + /* v3 -> v2 conversion */ + cap = kzalloc(size, GFP_ATOMIC); + if (!cap) { + size = -ENOMEM; + goto out_free; + } magic = VFS_CAP_REVISION_2; nsmagic = le32_to_cpu(nscap->magic_etc); if (nsmagic & VFS_CAP_FLAGS_EFFECTIVE) @@ -443,9 +459,12 @@ memcpy(&cap->data, &nscap->data, sizeof(__le32) * 2 * VFS_CAP_U32); cap->magic_etc = cpu_to_le32(magic); } else { - size = -ENOMEM; + /* use unconverted v2 */ + tmpbuf = NULL; } + *buffer = cap; } +out_free: kfree(tmpbuf); return size; } @@ -473,7 +492,7 @@ * * If all is ok, we return the new size, on error return < 0. */ -int cap_convert_nscap(struct dentry *dentry, void **ivalue, size_t size) +int cap_convert_nscap(struct dentry *dentry, const void **ivalue, size_t size) { struct vfs_ns_cap_data *nscap; uid_t nsrootid; @@ -516,7 +535,6 @@ nscap->magic_etc = cpu_to_le32(nsmagic); memcpy(&nscap->data, &cap->data, sizeof(__le32) * 2 * VFS_CAP_U32); - kvfree(*ivalue); *ivalue = nscap; return newsize; } @@ -658,7 +676,7 @@ if (!file_caps_enabled) return 0; - if (!mnt_may_suid(file->f_path.mnt)) + if (path_nosuid(&file->f_path)) return 0; /* @@ -1341,6 +1359,11 @@ #ifdef CONFIG_SECURITY +static struct lsm_id capability_lsmid __lsm_ro_after_init = { + .lsm = "capability", + .slot = LSMBLOB_NOT_NEEDED +}; + static struct security_hook_list capability_hooks[] __lsm_ro_after_init = { LSM_HOOK_INIT(capable, cap_capable), LSM_HOOK_INIT(settime, cap_settime), @@ -1365,7 +1388,7 @@ static int __init capability_init(void) { security_add_hooks(capability_hooks, ARRAY_SIZE(capability_hooks), - "capability"); + &capability_lsmid); return 0; } --- linux-azure-5.8-5.8.0.orig/security/device_cgroup.c +++ linux-azure-5.8-5.8.0/security/device_cgroup.c @@ -354,7 +354,8 @@ { struct dev_exception_item *ex; - list_for_each_entry_rcu(ex, exceptions, list) { + list_for_each_entry_rcu(ex, exceptions, list, + lockdep_is_held(&devcgroup_mutex)) { if ((type & DEVCG_DEV_BLOCK) && !(ex->type & DEVCG_DEV_BLOCK)) continue; if ((type & DEVCG_DEV_CHAR) && !(ex->type & DEVCG_DEV_CHAR)) --- linux-azure-5.8-5.8.0.orig/security/integrity/digsig.c +++ linux-azure-5.8-5.8.0/security/integrity/digsig.c @@ -169,7 +169,7 @@ int __init integrity_load_x509(const unsigned int id, const char *path) { - void *data; + void *data = NULL; loff_t size; int rc; key_perm_t perm; @@ -177,7 +177,7 @@ rc = kernel_read_file_from_path(path, &data, &size, 0, READING_X509_CERTIFICATE); if (rc < 0) { - pr_err("Unable to open file: %s (%d)", path, rc); + pr_warn("Unable to open file: %s (%d)", path, rc); return rc; } --- linux-azure-5.8-5.8.0.orig/security/integrity/evm/evm_crypto.c +++ linux-azure-5.8-5.8.0/security/integrity/evm/evm_crypto.c @@ -73,7 +73,7 @@ { long rc; const char *algo; - struct crypto_shash **tfm, *tmp_tfm; + struct crypto_shash **tfm, *tmp_tfm = NULL; struct shash_desc *desc; if (type == EVM_XATTR_HMAC) { @@ -118,13 +118,16 @@ alloc: desc = kmalloc(sizeof(*desc) + crypto_shash_descsize(*tfm), GFP_KERNEL); - if (!desc) + if (!desc) { + crypto_free_shash(tmp_tfm); return ERR_PTR(-ENOMEM); + } desc->tfm = *tfm; rc = crypto_shash_init(desc); if (rc) { + crypto_free_shash(tmp_tfm); kfree(desc); return ERR_PTR(rc); } --- linux-azure-5.8-5.8.0.orig/security/integrity/evm/evm_main.c +++ linux-azure-5.8-5.8.0/security/integrity/evm/evm_main.c @@ -181,6 +181,12 @@ break; case EVM_IMA_XATTR_DIGSIG: case EVM_XATTR_PORTABLE_DIGSIG: + /* accept xattr with non-empty signature field */ + if (xattr_len <= sizeof(struct signature_v2_hdr)) { + evm_status = INTEGRITY_FAIL; + goto out; + } + hdr = (struct signature_v2_hdr *)xattr_data; digest.hdr.algo = hdr->hash_algo; rc = evm_calc_hash(dentry, xattr_name, xattr_value, --- linux-azure-5.8-5.8.0.orig/security/integrity/ima/Kconfig +++ linux-azure-5.8-5.8.0/security/integrity/ima/Kconfig @@ -232,7 +232,7 @@ config IMA_APPRAISE_BOOTPARAM bool "ima_appraise boot parameter" - depends on IMA_APPRAISE && !IMA_ARCH_POLICY + depends on IMA_APPRAISE default y help This option enables the different "ima_appraise=" modes --- linux-azure-5.8-5.8.0.orig/security/integrity/ima/ima.h +++ linux-azure-5.8-5.8.0/security/integrity/ima/ima.h @@ -236,9 +236,9 @@ #endif /* CONFIG_IMA_QUEUE_EARLY_BOOT_KEYS */ /* LIM API function definitions */ -int ima_get_action(struct inode *inode, const struct cred *cred, u32 secid, - int mask, enum ima_hooks func, int *pcr, - struct ima_template_desc **template_desc, +int ima_get_action(struct inode *inode, const struct cred *cred, + struct lsmblob *blob, int mask, enum ima_hooks func, + int *pcr, struct ima_template_desc **template_desc, const char *keyring); int ima_must_measure(struct inode *inode, int mask, enum ima_hooks func); int ima_collect_measurement(struct integrity_iint_cache *iint, @@ -264,8 +264,9 @@ const char *ima_d_path(const struct path *path, char **pathbuf, char *filename); /* IMA policy related functions */ -int ima_match_policy(struct inode *inode, const struct cred *cred, u32 secid, - enum ima_hooks func, int mask, int flags, int *pcr, +int ima_match_policy(struct inode *inode, const struct cred *cred, + struct lsmblob *blob, enum ima_hooks func, int mask, + int flags, int *pcr, struct ima_template_desc **template_desc, const char *keyring); void ima_init_policy(void); @@ -404,6 +405,7 @@ #ifdef CONFIG_IMA_LSM_RULES #define security_filter_rule_init security_audit_rule_init +#define security_filter_rule_free security_audit_rule_free #define security_filter_rule_match security_audit_rule_match #else @@ -414,7 +416,11 @@ return -EINVAL; } -static inline int security_filter_rule_match(u32 secid, u32 field, u32 op, +static inline void security_filter_rule_free(void *lsmrule) +{ +} + +static inline int security_filter_rule_match(strcut lsmblob *blob, u32 field, u32 op, void *lsmrule) { return -EINVAL; --- linux-azure-5.8-5.8.0.orig/security/integrity/ima/ima_api.c +++ linux-azure-5.8-5.8.0/security/integrity/ima/ima_api.c @@ -164,7 +164,7 @@ * ima_get_action - appraise & measure decision based on policy. * @inode: pointer to inode to measure * @cred: pointer to credentials structure to validate - * @secid: secid of the task being validated + * @blob: LSM data of the task being validated * @mask: contains the permission mask (MAY_READ, MAY_WRITE, MAY_EXEC, * MAY_APPEND) * @func: caller identifier @@ -183,16 +183,16 @@ * Returns IMA_MEASURE, IMA_APPRAISE mask. * */ -int ima_get_action(struct inode *inode, const struct cred *cred, u32 secid, - int mask, enum ima_hooks func, int *pcr, - struct ima_template_desc **template_desc, +int ima_get_action(struct inode *inode, const struct cred *cred, + struct lsmblob *blob, int mask, enum ima_hooks func, + int *pcr, struct ima_template_desc **template_desc, const char *keyring) { int flags = IMA_MEASURE | IMA_AUDIT | IMA_APPRAISE | IMA_HASH; flags &= ima_policy_flag; - return ima_match_policy(inode, cred, secid, func, mask, flags, pcr, + return ima_match_policy(inode, cred, blob, func, mask, flags, pcr, template_desc, keyring); } --- linux-azure-5.8-5.8.0.orig/security/integrity/ima/ima_appraise.c +++ linux-azure-5.8-5.8.0/security/integrity/ima/ima_appraise.c @@ -19,6 +19,12 @@ static int __init default_appraise_setup(char *str) { #ifdef CONFIG_IMA_APPRAISE_BOOTPARAM + if (arch_ima_get_secureboot()) { + pr_info("Secure boot enabled: ignoring ima_appraise=%s boot parameter option", + str); + return 1; + } + if (strncmp(str, "off", 3) == 0) ima_appraise = 0; else if (strncmp(str, "log", 3) == 0) @@ -48,13 +54,13 @@ */ int ima_must_appraise(struct inode *inode, int mask, enum ima_hooks func) { - u32 secid; + struct lsmblob blob; if (!ima_appraise) return 0; - security_task_getsecid(current, &secid); - return ima_match_policy(inode, current_cred(), secid, func, mask, + security_task_getsecid(current, &blob); + return ima_match_policy(inode, current_cred(), &blob, func, mask, IMA_APPRAISE | IMA_HASH, NULL, NULL, NULL); } --- linux-azure-5.8-5.8.0.orig/security/integrity/ima/ima_crypto.c +++ linux-azure-5.8-5.8.0/security/integrity/ima/ima_crypto.c @@ -537,7 +537,7 @@ loff_t i_size; int rc; struct file *f = file; - bool new_file_instance = false, modified_mode = false; + bool new_file_instance = false; /* * For consistency, fail file's opened with the O_DIRECT flag on @@ -555,18 +555,10 @@ O_TRUNC | O_CREAT | O_NOCTTY | O_EXCL); flags |= O_RDONLY; f = dentry_open(&file->f_path, flags, file->f_cred); - if (IS_ERR(f)) { - /* - * Cannot open the file again, lets modify f_mode - * of original and continue - */ - pr_info_ratelimited("Unable to reopen file for reading.\n"); - f = file; - f->f_mode |= FMODE_READ; - modified_mode = true; - } else { - new_file_instance = true; - } + if (IS_ERR(f)) + return PTR_ERR(f); + + new_file_instance = true; } i_size = i_size_read(file_inode(f)); @@ -581,8 +573,6 @@ out: if (new_file_instance) fput(f); - else if (modified_mode) - f->f_mode &= ~FMODE_READ; return rc; } @@ -829,6 +819,8 @@ /* now accumulate with current aggregate */ rc = crypto_shash_update(shash, d.digest, crypto_shash_digestsize(tfm)); + if (rc != 0) + return rc; } /* * Extend cumulative digest over TPM registers 8-9, which contain --- linux-azure-5.8-5.8.0.orig/security/integrity/ima/ima_fs.c +++ linux-azure-5.8-5.8.0/security/integrity/ima/ima_fs.c @@ -272,7 +272,7 @@ static ssize_t ima_read_policy(char *path) { - void *data; + void *data = NULL; char *datap; loff_t size; int rc, pathlen = strlen(path); @@ -285,7 +285,7 @@ rc = kernel_read_file_from_path(path, &data, &size, 0, READING_POLICY); if (rc < 0) { - pr_err("Unable to open file: %s (%d)", path, rc); + pr_warn("Unable to open file: %s (%d)", path, rc); return rc; } --- linux-azure-5.8-5.8.0.orig/security/integrity/ima/ima_kexec.c +++ linux-azure-5.8-5.8.0/security/integrity/ima/ima_kexec.c @@ -119,6 +119,7 @@ ret = kexec_add_buffer(&kbuf); if (ret) { pr_err("Error passing over kexec measurement buffer.\n"); + vfree(kexec_buffer); return; } @@ -128,6 +129,8 @@ return; } + image->ima_buffer = kexec_buffer; + pr_debug("kexec measurement buffer for the loaded kernel at 0x%lx.\n", kbuf.mem); } --- linux-azure-5.8-5.8.0.orig/security/integrity/ima/ima_main.c +++ linux-azure-5.8-5.8.0/security/integrity/ima/ima_main.c @@ -188,8 +188,8 @@ } static int process_measurement(struct file *file, const struct cred *cred, - u32 secid, char *buf, loff_t size, int mask, - enum ima_hooks func) + struct lsmblob *blob, char *buf, loff_t size, + int mask, enum ima_hooks func) { struct inode *inode = file_inode(file); struct integrity_iint_cache *iint = NULL; @@ -212,7 +212,7 @@ * bitmask based on the appraise/audit/measurement policy. * Included is the appraise submask. */ - action = ima_get_action(inode, cred, secid, mask, func, &pcr, + action = ima_get_action(inode, cred, blob, mask, func, &pcr, &template_desc, NULL); violation_check = ((func == FILE_CHECK || func == MMAP_CHECK) && (ima_policy_flag & IMA_MEASURE)); @@ -382,12 +382,12 @@ */ int ima_file_mmap(struct file *file, unsigned long prot) { - u32 secid; + struct lsmblob blob; if (file && (prot & PROT_EXEC)) { - security_task_getsecid(current, &secid); - return process_measurement(file, current_cred(), secid, NULL, - 0, MAY_EXEC, MMAP_CHECK); + security_task_getsecid(current, &blob); + return process_measurement(file, current_cred(), &blob, + NULL, 0, MAY_EXEC, MMAP_CHECK); } return 0; @@ -413,9 +413,9 @@ char *pathbuf = NULL; const char *pathname = NULL; struct inode *inode; + struct lsmblob blob; int result = 0; int action; - u32 secid; int pcr; /* Is mprotect making an mmap'ed file executable? */ @@ -423,9 +423,9 @@ !(prot & PROT_EXEC) || (vma->vm_flags & VM_EXEC)) return 0; - security_task_getsecid(current, &secid); + security_task_getsecid(current, &blob); inode = file_inode(vma->vm_file); - action = ima_get_action(inode, current_cred(), secid, MAY_EXEC, + action = ima_get_action(NULL, current_cred(), &blob, 0, MMAP_CHECK, &pcr, &template, 0); /* Is the mmap'ed file in policy? */ @@ -461,16 +461,16 @@ int ima_bprm_check(struct linux_binprm *bprm) { int ret; - u32 secid; + struct lsmblob blob; - security_task_getsecid(current, &secid); - ret = process_measurement(bprm->file, current_cred(), secid, NULL, 0, + security_task_getsecid(current, &blob); + ret = process_measurement(bprm->file, current_cred(), &blob, NULL, 0, MAY_EXEC, BPRM_CHECK); if (ret) return ret; - security_cred_getsecid(bprm->cred, &secid); - return process_measurement(bprm->file, bprm->cred, secid, NULL, 0, + security_cred_getsecid(bprm->cred, &blob); + return process_measurement(bprm->file, bprm->cred, &blob, NULL, 0, MAY_EXEC, CREDS_CHECK); } @@ -486,10 +486,10 @@ */ int ima_file_check(struct file *file, int mask) { - u32 secid; + struct lsmblob blob; - security_task_getsecid(current, &secid); - return process_measurement(file, current_cred(), secid, NULL, 0, + security_task_getsecid(current, &blob); + return process_measurement(file, current_cred(), &blob, NULL, 0, mask & (MAY_READ | MAY_WRITE | MAY_EXEC | MAY_APPEND), FILE_CHECK); } @@ -531,6 +531,16 @@ return -EOPNOTSUPP; mutex_lock(&iint->mutex); + + /* + * ima_file_hash can be called when ima_collect_measurement has still + * not been called, we might not always have a hash. + */ + if (!iint->ima_hash) { + mutex_unlock(&iint->mutex); + return -EOPNOTSUPP; + } + if (buf) { size_t copied_size; @@ -611,19 +621,17 @@ int ima_read_file(struct file *file, enum kernel_read_file_id read_id) { /* - * READING_FIRMWARE_PREALLOC_BUFFER - * * Do devices using pre-allocated memory run the risk of the * firmware being accessible to the device prior to the completion * of IMA's signature verification any more than when using two - * buffers? + * buffers? It may be desirable to include the buffer address + * in this API and walk all the dma_map_single() mappings to check. */ return 0; } const int read_idmap[READING_MAX_ID] = { [READING_FIRMWARE] = FIRMWARE_CHECK, - [READING_FIRMWARE_PREALLOC_BUFFER] = FIRMWARE_CHECK, [READING_MODULE] = MODULE_CHECK, [READING_KEXEC_IMAGE] = KEXEC_KERNEL_CHECK, [READING_KEXEC_INITRAMFS] = KEXEC_INITRAMFS_CHECK, @@ -647,7 +655,7 @@ enum kernel_read_file_id read_id) { enum ima_hooks func; - u32 secid; + struct lsmblob blob; if (!file && read_id == READING_FIRMWARE) { if ((ima_appraise & IMA_APPRAISE_FIRMWARE) && @@ -669,8 +677,8 @@ } func = read_idmap[read_id] ?: FILE_CHECK; - security_task_getsecid(current, &secid); - return process_measurement(file, current_cred(), secid, buf, size, + security_task_getsecid(current, &blob); + return process_measurement(file, current_cred(), &blob, buf, size, MAY_READ, func); } @@ -753,7 +761,7 @@ } hash = {}; int violation = 0; int action = 0; - u32 secid; + struct lsmblob blob; if (!ima_policy_flag) return; @@ -766,8 +774,8 @@ * buffer measurements. */ if (func) { - security_task_getsecid(current, &secid); - action = ima_get_action(NULL, current_cred(), secid, 0, func, + security_task_getsecid(current, &blob); + action = ima_get_action(NULL, current_cred(), &blob, 0, func, &pcr, &template, keyring); if (!(action & IMA_MEASURE)) return; --- linux-azure-5.8-5.8.0.orig/security/integrity/ima/ima_mok.c +++ linux-azure-5.8-5.8.0/security/integrity/ima/ima_mok.c @@ -38,13 +38,12 @@ (KEY_POS_ALL & ~KEY_POS_SETATTR) | KEY_USR_VIEW | KEY_USR_READ | KEY_USR_WRITE | KEY_USR_SEARCH, - KEY_ALLOC_NOT_IN_QUOTA, + KEY_ALLOC_NOT_IN_QUOTA | + KEY_ALLOC_SET_KEEP, restriction, NULL); if (IS_ERR(ima_blacklist_keyring)) panic("Can't allocate IMA blacklist keyring."); - - set_bit(KEY_FLAG_KEEP, &ima_blacklist_keyring->flags); return 0; } device_initcall(ima_mok_init); --- linux-azure-5.8-5.8.0.orig/security/integrity/ima/ima_policy.c +++ linux-azure-5.8-5.8.0/security/integrity/ima/ima_policy.c @@ -73,7 +73,7 @@ bool (*fowner_op)(kuid_t, kuid_t); /* uid_eq(), uid_gt(), uid_lt() */ int pcr; struct { - void *rule; /* LSM file metadata specific */ + void *rules[LSMBLOB_ENTRIES]; /* LSM file metadata specific */ void *args_p; /* audit value */ int type; /* audit type */ } lsm[MAX_LSM_RULES]; @@ -82,6 +82,22 @@ struct ima_template_desc *template; }; +/** + * ima_lsm_isset - Is a rule set for any of the active security modules + * @rules: The set of IMA rules to check. + * + * If a rule is set for any LSM return true, otherwise return false. + */ +static inline bool ima_lsm_isset(void *rules[]) +{ + int i; + + for (i = 0; i < LSMBLOB_ENTRIES; i++) + if (rules[i]) + return true; + return false; +} + /* * Without LSM specific knowledge, the default policy can only be * written in terms of .action, .func, .mask, .fsmagic, .uid, and .fowner @@ -256,11 +272,28 @@ static void ima_lsm_free_rule(struct ima_rule_entry *entry) { int i; + int r; for (i = 0; i < MAX_LSM_RULES; i++) { - kfree(entry->lsm[i].rule); + for (r = 0; r < LSMBLOB_ENTRIES; r++) + security_filter_rule_free(entry->lsm[i].rules); kfree(entry->lsm[i].args_p); } +} + +static void ima_free_rule(struct ima_rule_entry *entry) +{ + if (!entry) + return; + + /* + * entry->template->fields may be allocated in ima_parse_rule() but that + * reference is owned by the corresponding ima_template_desc element in + * the defined_templates list and cannot be freed here + */ + kfree(entry->fsname); + kfree(entry->keyrings); + ima_lsm_free_rule(entry); kfree(entry); } @@ -293,8 +326,8 @@ security_filter_rule_init(nentry->lsm[i].type, Audit_equal, nentry->lsm[i].args_p, - &nentry->lsm[i].rule); - if (!nentry->lsm[i].rule) + &nentry->lsm[i].rules[0]); + if (!ima_lsm_isset(nentry->lsm[i].rules)) pr_warn("rule for LSM \'%s\' is undefined\n", (char *)entry->lsm[i].args_p); } @@ -302,6 +335,7 @@ out_err: ima_lsm_free_rule(nentry); + kfree(nentry); return NULL; } @@ -315,11 +349,29 @@ list_replace_rcu(&entry->list, &nentry->list); synchronize_rcu(); + /* + * ima_lsm_copy_rule() shallow copied all references, except for the + * LSM references, from entry to nentry so we only want to free the LSM + * references and the entry itself. All other memory refrences will now + * be owned by nentry. + */ ima_lsm_free_rule(entry); + kfree(entry); return 0; } +static bool ima_rule_contains_lsm_cond(struct ima_rule_entry *entry) +{ + int i; + + for (i = 0; i < MAX_LSM_RULES; i++) + if (entry->lsm[i].args_p) + return true; + + return false; +} + /* * The LSM policy can be reloaded, leaving the IMA LSM based rules referring * to the old, stale LSM policy. Update the IMA LSM based rules to reflect @@ -404,7 +456,7 @@ * @rule: a pointer to a rule * @inode: a pointer to an inode * @cred: a pointer to a credentials structure for user validation - * @secid: the secid of the task to be validated + * @blob: the lsm data of the task to be validated * @func: LIM hook identifier * @mask: requested action (MAY_READ | MAY_WRITE | MAY_APPEND | MAY_EXEC) * @keyring: keyring name to check in policy for KEY_CHECK func @@ -412,7 +464,7 @@ * Returns true on rule match, false on failure. */ static bool ima_match_rules(struct ima_rule_entry *rule, struct inode *inode, - const struct cred *cred, u32 secid, + const struct cred *cred, struct lsmblob *blob, enum ima_hooks func, int mask, const char *keyring) { @@ -461,9 +513,9 @@ return false; for (i = 0; i < MAX_LSM_RULES; i++) { int rc = 0; - u32 osid; + struct lsmblob lsmdata; - if (!rule->lsm[i].rule) { + if (!ima_lsm_isset(rule->lsm[i].rules)) { if (!rule->lsm[i].args_p) continue; else @@ -473,19 +525,19 @@ case LSM_OBJ_USER: case LSM_OBJ_ROLE: case LSM_OBJ_TYPE: - security_inode_getsecid(inode, &osid); - rc = security_filter_rule_match(osid, + security_inode_getsecid(inode, &lsmdata); + rc = security_filter_rule_match(&lsmdata, rule->lsm[i].type, Audit_equal, - rule->lsm[i].rule); + rule->lsm[i].rules); break; case LSM_SUBJ_USER: case LSM_SUBJ_ROLE: case LSM_SUBJ_TYPE: - rc = security_filter_rule_match(secid, + rc = security_filter_rule_match(&lsmdata, rule->lsm[i].type, Audit_equal, - rule->lsm[i].rule); + rule->lsm[i].rules); default: break; } @@ -525,7 +577,7 @@ * @inode: pointer to an inode for which the policy decision is being made * @cred: pointer to a credentials structure for which the policy decision is * being made - * @secid: LSM secid of the task to be validated + * @blob: LSM data of the task to be validated * @func: IMA hook identifier * @mask: requested action (MAY_READ | MAY_WRITE | MAY_APPEND | MAY_EXEC) * @pcr: set the pcr to extend @@ -540,8 +592,9 @@ * list when walking it. Reads are many orders of magnitude more numerous * than writes so ima_match_policy() is classical RCU candidate. */ -int ima_match_policy(struct inode *inode, const struct cred *cred, u32 secid, - enum ima_hooks func, int mask, int flags, int *pcr, +int ima_match_policy(struct inode *inode, const struct cred *cred, + struct lsmblob *blob, enum ima_hooks func, int mask, + int flags, int *pcr, struct ima_template_desc **template_desc, const char *keyring) { @@ -557,7 +610,7 @@ if (!(entry->action & actmask)) continue; - if (!ima_match_rules(entry, inode, cred, secid, func, mask, + if (!ima_match_rules(entry, inode, cred, blob, func, mask, keyring)) continue; @@ -872,7 +925,7 @@ { int result; - if (entry->lsm[lsm_rule].rule) + if (ima_lsm_isset(entry->lsm[lsm_rule].rules)) return -EINVAL; entry->lsm[lsm_rule].args_p = match_strdup(args); @@ -883,13 +936,14 @@ result = security_filter_rule_init(entry->lsm[lsm_rule].type, Audit_equal, entry->lsm[lsm_rule].args_p, - &entry->lsm[lsm_rule].rule); - if (!entry->lsm[lsm_rule].rule) { + &entry->lsm[lsm_rule].rules[0]); + if (!ima_lsm_isset(entry->lsm[lsm_rule].rules)) { pr_warn("rule for LSM \'%s\' is undefined\n", (char *)entry->lsm[lsm_rule].args_p); if (ima_rules == &ima_default_rules) { kfree(entry->lsm[lsm_rule].args_p); + entry->lsm[lsm_rule].args_p = NULL; result = -EINVAL; } else result = 0; @@ -949,6 +1003,65 @@ #undef MSG } +static bool ima_validate_rule(struct ima_rule_entry *entry) +{ + /* Ensure that the action is set */ + if (entry->action == UNKNOWN) + return false; + + /* + * Ensure that the hook function is compatible with the other + * components of the rule + */ + switch (entry->func) { + case NONE: + case FILE_CHECK: + case MMAP_CHECK: + case BPRM_CHECK: + case CREDS_CHECK: + case POST_SETATTR: + case MODULE_CHECK: + case FIRMWARE_CHECK: + case KEXEC_KERNEL_CHECK: + case KEXEC_INITRAMFS_CHECK: + case POLICY_CHECK: + /* Validation of these hook functions is in ima_parse_rule() */ + break; + case KEXEC_CMDLINE: + if (entry->action & ~(MEASURE | DONT_MEASURE)) + return false; + + if (entry->flags & ~(IMA_FUNC | IMA_PCR)) + return false; + + if (ima_rule_contains_lsm_cond(entry)) + return false; + + break; + case KEY_CHECK: + if (entry->action & ~(MEASURE | DONT_MEASURE)) + return false; + + if (entry->flags & ~(IMA_FUNC | IMA_UID | IMA_PCR | + IMA_KEYRINGS)) + return false; + + if (ima_rule_contains_lsm_cond(entry)) + return false; + + break; + default: + return false; + } + + /* Ensure that combinations of flags are compatible with each other */ + if (entry->flags & IMA_CHECK_BLACKLIST && + !(entry->flags & IMA_MODSIG_ALLOWED)) + return false; + + return true; +} + static int ima_parse_rule(char *rule, struct ima_rule_entry *entry) { struct audit_buffer *ab; @@ -1126,7 +1239,6 @@ keyrings_len = strlen(args[0].from) + 1; if ((entry->keyrings) || - (entry->action != MEASURE) || (entry->func != KEY_CHECK) || (keyrings_len < 2)) { result = -EINVAL; @@ -1283,9 +1395,17 @@ result = -EINVAL; break; case Opt_appraise_flag: + if (entry->action != APPRAISE) { + result = -EINVAL; + break; + } + ima_log_string(ab, "appraise_flag", args[0].from); - if (strstr(args[0].from, "blacklist")) + if (IS_ENABLED(CONFIG_IMA_APPRAISE_MODSIG) && + strstr(args[0].from, "blacklist")) entry->flags |= IMA_CHECK_BLACKLIST; + else + result = -EINVAL; break; case Opt_permit_directio: entry->flags |= IMA_PERMIT_DIRECTIO; @@ -1332,7 +1452,7 @@ break; } } - if (!result && (entry->action == UNKNOWN)) + if (!result && !ima_validate_rule(entry)) result = -EINVAL; else if (entry->action == APPRAISE) temp_ima_appraise |= ima_appraise_flag(entry->func); @@ -1381,7 +1501,7 @@ result = ima_parse_rule(p, entry); if (result) { - kfree(entry); + ima_free_rule(entry); integrity_audit_msg(AUDIT_INTEGRITY_STATUS, NULL, NULL, op, "invalid-policy", result, audit_info); @@ -1402,15 +1522,11 @@ void ima_delete_rules(void) { struct ima_rule_entry *entry, *tmp; - int i; temp_ima_appraise = 0; list_for_each_entry_safe(entry, tmp, &ima_temp_rules, list) { - for (i = 0; i < MAX_LSM_RULES; i++) - kfree(entry->lsm[i].args_p); - list_del(&entry->list); - kfree(entry); + ima_free_rule(entry); } } @@ -1585,7 +1701,7 @@ } for (i = 0; i < MAX_LSM_RULES; i++) { - if (entry->lsm[i].rule) { + if (ima_lsm_isset(entry->lsm[i].rules)) { switch (i) { case LSM_OBJ_USER: seq_printf(m, pt(Opt_obj_user), --- linux-azure-5.8-5.8.0.orig/security/integrity/integrity_audit.c +++ linux-azure-5.8-5.8.0/security/integrity/integrity_audit.c @@ -41,7 +41,7 @@ from_kuid(&init_user_ns, current_cred()->uid), from_kuid(&init_user_ns, audit_get_loginuid(current)), audit_get_sessionid(current)); - audit_log_task_context(ab); + audit_log_task_context(ab, NULL); audit_log_format(ab, " op=%s cause=%s comm=", op, cause); audit_log_untrustedstring(ab, get_task_comm(name, current)); if (fname) { --- linux-azure-5.8-5.8.0.orig/security/integrity/platform_certs/load_uefi.c +++ linux-azure-5.8-5.8.0/security/integrity/platform_certs/load_uefi.c @@ -46,7 +46,8 @@ return NULL; if (*status != EFI_BUFFER_TOO_SMALL) { - pr_err("Couldn't get size: 0x%lx\n", *status); + pr_err("Couldn't get size: %s (0x%lx)\n", + efi_status_to_str(*status), *status); return NULL; } @@ -57,7 +58,8 @@ *status = efi.get_variable(name, guid, NULL, &lsize, db); if (*status != EFI_SUCCESS) { kfree(db); - pr_err("Error reading db var: 0x%lx\n", *status); + pr_err("Error reading db var: %s (0x%lx)\n", + efi_status_to_str(*status), *status); return NULL; } --- linux-azure-5.8-5.8.0.orig/security/keys/Kconfig +++ linux-azure-5.8-5.8.0/security/keys/Kconfig @@ -119,7 +119,7 @@ bool "Provide key/keyring change notifications" depends on KEYS && WATCH_QUEUE help - This option provides support for getting change notifications on keys - and keyrings on which the caller has View permission. This makes use - of the /dev/watch_queue misc device to handle the notification - buffer and provides KEYCTL_WATCH_KEY to enable/disable watches. + This option provides support for getting change notifications + on keys and keyrings on which the caller has View permission. + This makes use of pipes to handle the notification buffer and + provides KEYCTL_WATCH_KEY to enable/disable watches. --- linux-azure-5.8-5.8.0.orig/security/keys/key.c +++ linux-azure-5.8-5.8.0/security/keys/key.c @@ -303,6 +303,8 @@ key->flags |= 1 << KEY_FLAG_BUILTIN; if (flags & KEY_ALLOC_UID_KEYRING) key->flags |= 1 << KEY_FLAG_UID_KEYRING; + if (flags & KEY_ALLOC_SET_KEEP) + key->flags |= 1 << KEY_FLAG_KEEP; #ifdef KEY_DEBUGGING key->magic = KEY_DEBUG_MAGIC; --- linux-azure-5.8-5.8.0.orig/security/keys/keyctl.c +++ linux-azure-5.8-5.8.0/security/keys/keyctl.c @@ -1693,7 +1693,7 @@ /* the replacement session keyring is applied just prior to userspace * restarting */ - ret = task_work_add(parent, newwork, true); + ret = task_work_add(parent, newwork, TWA_RESUME); if (!ret) newwork = NULL; unlock: --- linux-azure-5.8-5.8.0.orig/security/keys/trusted-keys/trusted_tpm1.c +++ linux-azure-5.8-5.8.0/security/keys/trusted-keys/trusted_tpm1.c @@ -403,9 +403,12 @@ int ret; ret = tpm_get_random(chip, ononce, TPM_NONCE_SIZE); - if (ret != TPM_NONCE_SIZE) + if (ret < 0) return ret; + if (ret != TPM_NONCE_SIZE) + return -EIO; + tpm_buf_reset(tb, TPM_TAG_RQU_COMMAND, TPM_ORD_OSAP); tpm_buf_append_u16(tb, type); tpm_buf_append_u32(tb, handle); @@ -496,8 +499,12 @@ goto out; ret = tpm_get_random(chip, td->nonceodd, TPM_NONCE_SIZE); + if (ret < 0) + return ret; + if (ret != TPM_NONCE_SIZE) - goto out; + return -EIO; + ordinal = htonl(TPM_ORD_SEAL); datsize = htonl(datalen); pcrsize = htonl(pcrinfosize); @@ -601,9 +608,12 @@ ordinal = htonl(TPM_ORD_UNSEAL); ret = tpm_get_random(chip, nonceodd, TPM_NONCE_SIZE); + if (ret < 0) + return ret; + if (ret != TPM_NONCE_SIZE) { pr_info("trusted_key: tpm_get_random failed (%d)\n", ret); - return ret; + return -EIO; } ret = TSS_authhmac(authdata1, keyauth, TPM_NONCE_SIZE, enonce1, nonceodd, cont, sizeof(uint32_t), @@ -791,7 +801,7 @@ case Opt_migratable: if (*args[0].from == '0') pay->migratable = 0; - else + else if (*args[0].from != '1') return -EINVAL; break; case Opt_pcrlock: @@ -1013,8 +1023,12 @@ case Opt_new: key_len = payload->key_len; ret = tpm_get_random(chip, payload->key, key_len); + if (ret < 0) + goto out; + if (ret != key_len) { pr_info("trusted_key: key_create failed (%d)\n", ret); + ret = -EIO; goto out; } if (tpm2) --- linux-azure-5.8-5.8.0.orig/security/keys/trusted-keys/trusted_tpm2.c +++ linux-azure-5.8-5.8.0/security/keys/trusted-keys/trusted_tpm2.c @@ -83,6 +83,12 @@ if (rc) return rc; + rc = tpm_buf_init(&buf, TPM2_ST_SESSIONS, TPM2_CC_CREATE); + if (rc) { + tpm_put_ops(chip); + return rc; + } + tpm_buf_append_u32(&buf, options->keyhandle); tpm2_buf_append_auth(&buf, TPM2_RS_PW, NULL /* nonce */, 0, @@ -130,7 +136,7 @@ goto out; } - rc = tpm_send(chip, buf.data, tpm_buf_length(&buf)); + rc = tpm_transmit_cmd(chip, &buf, 4, "sealing data"); if (rc) goto out; @@ -157,6 +163,7 @@ rc = -EPERM; } + tpm_put_ops(chip); return rc; } @@ -211,7 +218,7 @@ goto out; } - rc = tpm_send(chip, buf.data, tpm_buf_length(&buf)); + rc = tpm_transmit_cmd(chip, &buf, 4, "loading blob"); if (!rc) *blob_handle = be32_to_cpup( (__be32 *) &buf.data[TPM_HEADER_SIZE]); @@ -260,7 +267,7 @@ options->blobauth /* hmac */, TPM_DIGEST_SIZE); - rc = tpm_send(chip, buf.data, tpm_buf_length(&buf)); + rc = tpm_transmit_cmd(chip, &buf, 6, "unsealing"); if (rc > 0) rc = -EPERM; @@ -304,12 +311,19 @@ u32 blob_handle; int rc; - rc = tpm2_load_cmd(chip, payload, options, &blob_handle); + rc = tpm_try_get_ops(chip); if (rc) return rc; + rc = tpm2_load_cmd(chip, payload, options, &blob_handle); + if (rc) + goto out; + rc = tpm2_unseal_cmd(chip, payload, options, blob_handle); tpm2_flush_context(chip, blob_handle); +out: + tpm_put_ops(chip); + return rc; } --- linux-azure-5.8-5.8.0.orig/security/loadpin/loadpin.c +++ linux-azure-5.8-5.8.0/security/loadpin/loadpin.c @@ -180,6 +180,11 @@ return loadpin_read_file(NULL, (enum kernel_read_file_id) id); } +static struct lsm_id loadpin_lsmid __lsm_ro_after_init = { + .lsm = "loadpin", + .slot = LSMBLOB_NOT_NEEDED +}; + static struct security_hook_list loadpin_hooks[] __lsm_ro_after_init = { LSM_HOOK_INIT(sb_free_security, loadpin_sb_free_security), LSM_HOOK_INIT(kernel_read_file, loadpin_read_file), @@ -227,7 +232,8 @@ pr_info("ready to pin (currently %senforcing)\n", enforce ? "" : "not "); parse_exclude(); - security_add_hooks(loadpin_hooks, ARRAY_SIZE(loadpin_hooks), "loadpin"); + security_add_hooks(loadpin_hooks, ARRAY_SIZE(loadpin_hooks), + &loadpin_lsmid); return 0; } --- linux-azure-5.8-5.8.0.orig/security/lockdown/Kconfig +++ linux-azure-5.8-5.8.0/security/lockdown/Kconfig @@ -16,6 +16,19 @@ subsystem is fully initialised. If enabled, lockdown will unconditionally be called before any other LSMs. +config LOCK_DOWN_IN_SECURE_BOOT + bool "Lock down the kernel in Secure Boot mode" + default n + depends on (EFI || S390 || PPC) && SECURITY_LOCKDOWN_LSM_EARLY + help + Secure Boot provides a mechanism for ensuring that the firmware will + only load signed bootloaders and kernels. Secure boot mode + determination is platform-specific; examples include EFI secure boot + and SIPL on s390. + + Enabling this option results in kernel lockdown being triggered if + booted under secure boot. + choice prompt "Kernel default lockdown mode" default LOCK_DOWN_KERNEL_FORCE_NONE --- linux-azure-5.8-5.8.0.orig/security/lockdown/lockdown.c +++ linux-azure-5.8-5.8.0/security/lockdown/lockdown.c @@ -73,6 +73,12 @@ static struct security_hook_list lockdown_hooks[] __lsm_ro_after_init = { LSM_HOOK_INIT(locked_down, lockdown_is_locked_down), + LSM_HOOK_INIT(lock_kernel_down, lock_kernel_down), +}; + +static struct lsm_id lockdown_lsmid __lsm_ro_after_init = { + .lsm = "lockdown", + .slot = LSMBLOB_NOT_NEEDED }; static int __init lockdown_lsm_init(void) @@ -83,7 +89,7 @@ lock_kernel_down("Kernel configuration", LOCKDOWN_CONFIDENTIALITY_MAX); #endif security_add_hooks(lockdown_hooks, ARRAY_SIZE(lockdown_hooks), - "lockdown"); + &lockdown_lsmid); return 0; } --- linux-azure-5.8-5.8.0.orig/security/lsm_audit.c +++ linux-azure-5.8-5.8.0/security/lsm_audit.c @@ -275,7 +275,9 @@ struct inode *inode; audit_log_format(ab, " name="); + spin_lock(&a->u.dentry->d_lock); audit_log_untrustedstring(ab, a->u.dentry->d_name.name); + spin_unlock(&a->u.dentry->d_lock); inode = d_backing_inode(a->u.dentry); if (inode) { @@ -293,8 +295,9 @@ dentry = d_find_alias(inode); if (dentry) { audit_log_format(ab, " name="); - audit_log_untrustedstring(ab, - dentry->d_name.name); + spin_lock(&dentry->d_lock); + audit_log_untrustedstring(ab, dentry->d_name.name); + spin_unlock(&dentry->d_lock); dput(dentry); } audit_log_format(ab, " dev="); --- linux-azure-5.8-5.8.0.orig/security/safesetid/lsm.c +++ linux-azure-5.8-5.8.0/security/safesetid/lsm.c @@ -149,6 +149,11 @@ return -EACCES; } +static struct lsm_id safesetid_lsmid __lsm_ro_after_init = { + .lsm = "safesetid", + .slot = LSMBLOB_NOT_NEEDED +}; + static struct security_hook_list safesetid_security_hooks[] = { LSM_HOOK_INIT(task_fix_setuid, safesetid_task_fix_setuid), LSM_HOOK_INIT(capable, safesetid_security_capable) @@ -157,7 +162,8 @@ static int __init safesetid_security_init(void) { security_add_hooks(safesetid_security_hooks, - ARRAY_SIZE(safesetid_security_hooks), "safesetid"); + ARRAY_SIZE(safesetid_security_hooks), + &safesetid_lsmid); /* Report that SafeSetID successfully initialized */ safesetid_initialized = 1; --- linux-azure-5.8-5.8.0.orig/security/security.c +++ linux-azure-5.8-5.8.0/security/security.c @@ -28,6 +28,7 @@ #include #include #include +#include #define MAX_LSM_EVM_XATTR 2 @@ -74,7 +75,14 @@ static struct kmem_cache *lsm_inode_cache; char *lsm_names; -static struct lsm_blob_sizes blob_sizes __lsm_ro_after_init; + +/* + * The task blob includes the "display" slot used for + * chosing which module presents contexts. + */ +static struct lsm_blob_sizes blob_sizes __lsm_ro_after_init = { + .lbs_task = sizeof(int), +}; /* Boot-time LSM user choice */ static __initdata const char *chosen_lsm_order; @@ -201,6 +209,7 @@ lsm_set_blob_size(&needed->lbs_inode, &blob_sizes.lbs_inode); lsm_set_blob_size(&needed->lbs_ipc, &blob_sizes.lbs_ipc); lsm_set_blob_size(&needed->lbs_msg_msg, &blob_sizes.lbs_msg_msg); + lsm_set_blob_size(&needed->lbs_sock, &blob_sizes.lbs_sock); lsm_set_blob_size(&needed->lbs_task, &blob_sizes.lbs_task); } @@ -336,7 +345,9 @@ init_debug("inode blob size = %d\n", blob_sizes.lbs_inode); init_debug("ipc blob size = %d\n", blob_sizes.lbs_ipc); init_debug("msg_msg blob size = %d\n", blob_sizes.lbs_msg_msg); + init_debug("sock blob size = %d\n", blob_sizes.lbs_sock); init_debug("task blob size = %d\n", blob_sizes.lbs_task); + init_debug("lsmblob size = %zu\n", sizeof(struct lsmblob)); /* * Create any kmem_caches needed for blobs @@ -464,21 +475,63 @@ return 0; } +/* + * Current index to use while initializing the lsmblob secid list. + * Pointers to the LSM id structures for local use. + */ +static int lsm_slot __lsm_ro_after_init; +static struct lsm_id *lsm_slotlist[LSMBLOB_ENTRIES] __lsm_ro_after_init; + +/** + * security_lsm_slot_name - Get the name of the security module in a slot + * @slot: index into the "display" slot list. + * + * Provide the name of the security module associated with + * a display slot. + * + * If @slot is LSMBLOB_INVALID return the value + * for slot 0 if it has been set, otherwise NULL. + * + * Returns a pointer to the name string or NULL. + */ +const char *security_lsm_slot_name(int slot) +{ + if (slot == LSMBLOB_INVALID) + slot = 0; + else if (slot >= LSMBLOB_ENTRIES || slot < 0) + return NULL; + + if (lsm_slotlist[slot] == NULL) + return NULL; + return lsm_slotlist[slot]->lsm; +} + /** * security_add_hooks - Add a modules hooks to the hook lists. * @hooks: the hooks to add * @count: the number of hooks to add - * @lsm: the name of the security module + * @lsmid: the the identification information for the security module * * Each LSM has to register its hooks with the infrastructure. + * If the LSM is using hooks that export secids allocate a slot + * for it in the lsmblob. */ void __init security_add_hooks(struct security_hook_list *hooks, int count, - char *lsm) + struct lsm_id *lsmid) { int i; + if (lsmid->slot == LSMBLOB_NEEDED) { + if (lsm_slot >= LSMBLOB_ENTRIES) + panic("%s Too many LSMs registered.\n", __func__); + lsm_slotlist[lsm_slot] = lsmid; + lsmid->slot = lsm_slot++; + init_debug("%s assigned lsmblob slot %d\n", lsmid->lsm, + lsmid->slot); + } + for (i = 0; i < count; i++) { - hooks[i].lsm = lsm; + hooks[i].lsmid = lsmid; hlist_add_tail_rcu(&hooks[i].list, hooks[i].head); } @@ -487,7 +540,7 @@ * and fix this up afterwards. */ if (slab_is_available()) { - if (lsm_append(lsm, &lsm_names) < 0) + if (lsm_append(lsmid->lsm, &lsm_names) < 0) panic("%s - Cannot get early memory.\n", __func__); } } @@ -601,6 +654,8 @@ */ static int lsm_task_alloc(struct task_struct *task) { + int *display; + if (blob_sizes.lbs_task == 0) { task->security = NULL; return 0; @@ -609,6 +664,15 @@ task->security = kzalloc(blob_sizes.lbs_task, GFP_KERNEL); if (task->security == NULL) return -ENOMEM; + + /* + * The start of the task blob contains the "display" LSM slot number. + * Start with it set to the invalid slot number, indicating that the + * default first registered LSM be displayed. + */ + display = task->security; + *display = LSMBLOB_INVALID; + return 0; } @@ -655,6 +719,28 @@ } /** + * lsm_sock_alloc - allocate a composite sock blob + * @sock: the sock that needs a blob + * @priority: allocation mode + * + * Allocate the sock blob for all the modules + * + * Returns 0, or -ENOMEM if memory can't be allocated. + */ +static int lsm_sock_alloc(struct sock *sock, gfp_t priority) +{ + if (blob_sizes.lbs_sock == 0) { + sock->sk_security = NULL; + return 0; + } + + sock->sk_security = kzalloc(blob_sizes.lbs_sock, priority); + if (sock->sk_security == NULL) + return -ENOMEM; + return 0; +} + +/** * lsm_early_task - during initialization allocate a composite task blob * @task: the task that needs a blob * @@ -668,6 +754,57 @@ panic("%s: Early task alloc failed.\n", __func__); } +/** + * append_ctx - append a lsm/context pair to a compound context + * @ctx: the existing compound context + * @ctxlen: size of the old context, including terminating nul byte + * @lsm: new lsm name, nul terminated + * @new: new context, possibly nul terminated + * @newlen: maximum size of @new + * + * replace @ctx with a new compound context, appending @newlsm and @new + * to @ctx. On exit the new data replaces the old, which is freed. + * @ctxlen is set to the new size, which includes a trailing nul byte. + * + * Returns 0 on success, -ENOMEM if no memory is available. + */ +static int append_ctx(char **ctx, int *ctxlen, const char *lsm, char *new, + int newlen) +{ + char *final; + size_t llen; + size_t nlen; + size_t flen; + + llen = strlen(lsm) + 1; + /* + * A security module may or may not provide a trailing nul on + * when returning a security context. There is no definition + * of which it should be, and there are modules that do it + * each way. + */ + nlen = strnlen(new, newlen); + + flen = *ctxlen + llen + nlen + 1; + final = kzalloc(flen, GFP_KERNEL); + + if (final == NULL) + return -ENOMEM; + + if (*ctxlen) + memcpy(final, *ctx, *ctxlen); + + memcpy(final + *ctxlen, lsm, llen); + memcpy(final + *ctxlen + llen, new, nlen); + + kfree(*ctx); + + *ctx = final; + *ctxlen = flen; + + return 0; +} + /* * The default value of the LSM hook is defined in linux/lsm_hook_defs.h and * can be accessed with: @@ -725,24 +862,57 @@ { return call_int_hook(binder_set_context_mgr, 0, mgr); } +EXPORT_SYMBOL(security_binder_set_context_mgr); +/** + * security_binder_transaction - Binder driver transaction check + * @from: source of the transaction + * @to: destination of the transaction + * + * Verify that the tasks have the same LSM "display", then + * call the security module hooks. + * + * Returns -EINVAL if the displays don't match, or the + * result of the security module checks. + */ int security_binder_transaction(struct task_struct *from, struct task_struct *to) { + int from_display = lsm_task_display(from); + int to_display = lsm_task_display(to); + + /* + * If the display is LSMBLOB_INVALID the first module that has + * an entry is used. This will be in the 0 slot. + * + * This is currently only required if the server has requested + * peer contexts, but it would be unwieldly to have too much of + * the binder driver detail here. + */ + if (from_display == LSMBLOB_INVALID) + from_display = 0; + if (to_display == LSMBLOB_INVALID) + to_display = 0; + if (from_display != to_display) + return -EINVAL; + return call_int_hook(binder_transaction, 0, from, to); } +EXPORT_SYMBOL(security_binder_transaction); int security_binder_transfer_binder(struct task_struct *from, struct task_struct *to) { return call_int_hook(binder_transfer_binder, 0, from, to); } +EXPORT_SYMBOL(security_binder_transfer_binder); int security_binder_transfer_file(struct task_struct *from, struct task_struct *to, struct file *file) { return call_int_hook(binder_transfer_file, 0, from, to, file); } +EXPORT_SYMBOL(security_binder_transfer_file); int security_ptrace_access_check(struct task_struct *child, unsigned int mode) { @@ -1092,6 +1262,7 @@ return 0; return call_int_hook(path_rmdir, 0, dir, dentry); } +EXPORT_SYMBOL_GPL(security_path_rmdir); int security_path_unlink(const struct path *dir, struct dentry *dentry) { @@ -1108,6 +1279,7 @@ return 0; return call_int_hook(path_symlink, 0, dir, dentry, old_name); } +EXPORT_SYMBOL_GPL(security_path_symlink); int security_path_link(struct dentry *old_dentry, const struct path *new_dir, struct dentry *new_dentry) @@ -1116,6 +1288,7 @@ return 0; return call_int_hook(path_link, 0, old_dentry, new_dir, new_dentry); } +EXPORT_SYMBOL_GPL(security_path_link); int security_path_rename(const struct path *old_dir, struct dentry *old_dentry, const struct path *new_dir, struct dentry *new_dentry, @@ -1143,6 +1316,7 @@ return 0; return call_int_hook(path_truncate, 0, path); } +EXPORT_SYMBOL_GPL(security_path_truncate); int security_path_chmod(const struct path *path, umode_t mode) { @@ -1150,6 +1324,7 @@ return 0; return call_int_hook(path_chmod, 0, path, mode); } +EXPORT_SYMBOL_GPL(security_path_chmod); int security_path_chown(const struct path *path, kuid_t uid, kgid_t gid) { @@ -1157,6 +1332,7 @@ return 0; return call_int_hook(path_chown, 0, path, uid, gid); } +EXPORT_SYMBOL_GPL(security_path_chown); int security_path_chroot(const struct path *path) { @@ -1257,6 +1433,7 @@ return 0; return call_int_hook(inode_permission, 0, inode, mask); } +EXPORT_SYMBOL_GPL(security_inode_permission); int security_inode_setattr(struct dentry *dentry, struct iattr *attr) { @@ -1401,9 +1578,16 @@ } EXPORT_SYMBOL(security_inode_listsecurity); -void security_inode_getsecid(struct inode *inode, u32 *secid) +void security_inode_getsecid(struct inode *inode, struct lsmblob *blob) { - call_void_hook(inode_getsecid, inode, secid); + struct security_hook_list *hp; + + lsmblob_init(blob, 0); + hlist_for_each_entry(hp, &security_hook_heads.inode_getsecid, list) { + if (WARN_ON(hp->lsmid->slot < 0 || hp->lsmid->slot >= lsm_slot)) + continue; + hp->hook.inode_getsecid(inode, &blob->secid[hp->lsmid->slot]); + } } int security_inode_copy_up(struct dentry *src, struct cred **new) @@ -1449,6 +1633,7 @@ return fsnotify_perm(file, mask); } +EXPORT_SYMBOL_GPL(security_file_permission); int security_file_alloc(struct file *file) { @@ -1580,14 +1765,26 @@ int security_task_alloc(struct task_struct *task, unsigned long clone_flags) { + int *odisplay = current->security; + int *ndisplay; int rc = lsm_task_alloc(task); - if (rc) + if (unlikely(rc)) return rc; + rc = call_int_hook(task_alloc, 0, task, clone_flags); - if (unlikely(rc)) + if (unlikely(rc)) { security_task_free(task); - return rc; + return rc; + } + + if (odisplay) { + ndisplay = task->security; + if (ndisplay) + *ndisplay = *odisplay; + } + + return 0; } void security_task_free(struct task_struct *task) @@ -1644,16 +1841,32 @@ call_void_hook(cred_transfer, new, old); } -void security_cred_getsecid(const struct cred *c, u32 *secid) +void security_cred_getsecid(const struct cred *c, struct lsmblob *blob) { - *secid = 0; - call_void_hook(cred_getsecid, c, secid); + struct security_hook_list *hp; + + lsmblob_init(blob, 0); + hlist_for_each_entry(hp, &security_hook_heads.cred_getsecid, list) { + if (WARN_ON(hp->lsmid->slot < 0 || hp->lsmid->slot >= lsm_slot)) + continue; + hp->hook.cred_getsecid(c, &blob->secid[hp->lsmid->slot]); + } } EXPORT_SYMBOL(security_cred_getsecid); -int security_kernel_act_as(struct cred *new, u32 secid) +int security_kernel_act_as(struct cred *new, struct lsmblob *blob) { - return call_int_hook(kernel_act_as, 0, new, secid); + struct security_hook_list *hp; + int rc; + + hlist_for_each_entry(hp, &security_hook_heads.kernel_act_as, list) { + if (WARN_ON(hp->lsmid->slot < 0 || hp->lsmid->slot >= lsm_slot)) + continue; + rc = hp->hook.kernel_act_as(new, blob->secid[hp->lsmid->slot]); + if (rc != 0) + return rc; + } + return 0; } int security_kernel_create_files_as(struct cred *new, struct inode *inode) @@ -1732,10 +1945,16 @@ return call_int_hook(task_getsid, 0, p); } -void security_task_getsecid(struct task_struct *p, u32 *secid) +void security_task_getsecid(struct task_struct *p, struct lsmblob *blob) { - *secid = 0; - call_void_hook(task_getsecid, p, secid); + struct security_hook_list *hp; + + lsmblob_init(blob, 0); + hlist_for_each_entry(hp, &security_hook_heads.task_getsecid, list) { + if (WARN_ON(hp->lsmid->slot < 0 || hp->lsmid->slot >= lsm_slot)) + continue; + hp->hook.task_getsecid(p, &blob->secid[hp->lsmid->slot]); + } } EXPORT_SYMBOL(security_task_getsecid); @@ -1815,10 +2034,16 @@ return call_int_hook(ipc_permission, 0, ipcp, flag); } -void security_ipc_getsecid(struct kern_ipc_perm *ipcp, u32 *secid) +void security_ipc_getsecid(struct kern_ipc_perm *ipcp, struct lsmblob *blob) { - *secid = 0; - call_void_hook(ipc_getsecid, ipcp, secid); + struct security_hook_list *hp; + + lsmblob_init(blob, 0); + hlist_for_each_entry(hp, &security_hook_heads.ipc_getsecid, list) { + if (WARN_ON(hp->lsmid->slot < 0 || hp->lsmid->slot >= lsm_slot)) + continue; + hp->hook.ipc_getsecid(ipcp, &blob->secid[hp->lsmid->slot]); + } } int security_msg_msg_alloc(struct msg_msg *msg) @@ -1962,22 +2187,137 @@ char **value) { struct security_hook_list *hp; + char *final = NULL; + char *cp; + int rc = 0; + int finallen = 0; + int display = lsm_task_display(current); + int slot = 0; + + if (!strcmp(name, "display")) { + /* + * lsm_slot will be 0 if there are no displaying modules. + */ + if (lsm_slot == 0) + return -EINVAL; + + /* + * Only allow getting the current process' display. + * There are too few reasons to get another process' + * display and too many LSM policy issues. + */ + if (current != p) + return -EINVAL; + + display = lsm_task_display(p); + if (display != LSMBLOB_INVALID) + slot = display; + *value = kstrdup(lsm_slotlist[slot]->lsm, GFP_KERNEL); + if (*value) + return strlen(*value); + return -ENOMEM; + } + + if (!strcmp(name, "context")) { + hlist_for_each_entry(hp, &security_hook_heads.getprocattr, + list) { + rc = hp->hook.getprocattr(p, "context", &cp); + if (rc == -EINVAL) + continue; + if (rc < 0) { + kfree(final); + return rc; + } + rc = append_ctx(&final, &finallen, hp->lsmid->lsm, + cp, rc); + kfree(cp); + if (rc < 0) { + kfree(final); + return rc; + } + } + if (final == NULL) + return -EINVAL; + *value = final; + return finallen; + } hlist_for_each_entry(hp, &security_hook_heads.getprocattr, list) { - if (lsm != NULL && strcmp(lsm, hp->lsm)) + if (lsm != NULL && strcmp(lsm, hp->lsmid->lsm)) + continue; + if (lsm == NULL && display != LSMBLOB_INVALID && + display != hp->lsmid->slot) continue; return hp->hook.getprocattr(p, name, value); } return LSM_RET_DEFAULT(getprocattr); } +/** + * security_setprocattr - Set process attributes via /proc + * @lsm: name of module involved, or NULL + * @name: name of the attribute + * @value: value to set the attribute to + * @size: size of the value + * + * Set the process attribute for the specified security module + * to the specified value. Note that this can only be used to set + * the process attributes for the current, or "self" process. + * The /proc code has already done this check. + * + * Returns 0 on success, an appropriate code otherwise. + */ int security_setprocattr(const char *lsm, const char *name, void *value, size_t size) { struct security_hook_list *hp; + char *termed; + char *copy; + int *display = current->security; + int rc = -EINVAL; + int slot = 0; + + if (!strcmp(name, "display")) { + /* + * Change the "display" value only if all the security + * modules that support setting a procattr allow it. + * It is assumed that all such security modules will be + * cooperative. + */ + if (size == 0) + return -EINVAL; + + hlist_for_each_entry(hp, &security_hook_heads.setprocattr, + list) { + rc = hp->hook.setprocattr(name, value, size); + if (rc < 0 && rc != -EINVAL) + return rc; + } + + rc = -EINVAL; + + copy = kmemdup_nul(value, size, GFP_KERNEL); + if (copy == NULL) + return -ENOMEM; + + termed = strsep(©, " \n"); + + for (slot = 0; slot < lsm_slot; slot++) + if (!strcmp(termed, lsm_slotlist[slot]->lsm)) { + *display = lsm_slotlist[slot]->slot; + rc = size; + break; + } + + kfree(termed); + return rc; + } hlist_for_each_entry(hp, &security_hook_heads.setprocattr, list) { - if (lsm != NULL && strcmp(lsm, hp->lsm)) + if (lsm != NULL && strcmp(lsm, hp->lsmid->lsm)) + continue; + if (lsm == NULL && *display != LSMBLOB_INVALID && + *display != hp->lsmid->slot) continue; return hp->hook.setprocattr(name, value, size); } @@ -1995,35 +2335,76 @@ } EXPORT_SYMBOL(security_ismaclabel); -int security_secid_to_secctx(u32 secid, char **secdata, u32 *seclen) +int security_secid_to_secctx(struct lsmblob *blob, struct lsmcontext *cp, + int display) { struct security_hook_list *hp; - int rc; + + memset(cp, 0, sizeof(*cp)); /* - * Currently, only one LSM can implement secid_to_secctx (i.e this - * LSM hook is not "stackable"). + * display either is the slot number use for formatting + * or an instruction on which relative slot to use. */ + if (display == LSMBLOB_DISPLAY) + display = lsm_task_display(current); + else if (display == LSMBLOB_FIRST) + display = LSMBLOB_INVALID; + else if (display < 0) { + WARN_ONCE(true, + "LSM: %s unknown display\n", __func__); + display = LSMBLOB_INVALID; + } else if (display >= lsm_slot) { + WARN_ONCE(true, + "LSM: %s invalid display\n", __func__); + display = LSMBLOB_INVALID; + } + + hlist_for_each_entry(hp, &security_hook_heads.secid_to_secctx, list) { - rc = hp->hook.secid_to_secctx(secid, secdata, seclen); - if (rc != LSM_RET_DEFAULT(secid_to_secctx)) - return rc; + if (WARN_ON(hp->lsmid->slot < 0 || hp->lsmid->slot >= lsm_slot)) + continue; + if (display == LSMBLOB_INVALID || display == hp->lsmid->slot) { + cp->slot = hp->lsmid->slot; + return hp->hook.secid_to_secctx( + blob->secid[hp->lsmid->slot], + &cp->context, &cp->len); + } } return LSM_RET_DEFAULT(secid_to_secctx); } EXPORT_SYMBOL(security_secid_to_secctx); -int security_secctx_to_secid(const char *secdata, u32 seclen, u32 *secid) +int security_secctx_to_secid(const char *secdata, u32 seclen, + struct lsmblob *blob) { - *secid = 0; - return call_int_hook(secctx_to_secid, 0, secdata, seclen, secid); + struct security_hook_list *hp; + int display = lsm_task_display(current); + + lsmblob_init(blob, 0); + hlist_for_each_entry(hp, &security_hook_heads.secctx_to_secid, list) { + if (WARN_ON(hp->lsmid->slot < 0 || hp->lsmid->slot >= lsm_slot)) + continue; + if (display == LSMBLOB_INVALID || display == hp->lsmid->slot) + return hp->hook.secctx_to_secid(secdata, seclen, + &blob->secid[hp->lsmid->slot]); + } + return -EOPNOTSUPP; } EXPORT_SYMBOL(security_secctx_to_secid); -void security_release_secctx(char *secdata, u32 seclen) +void security_release_secctx(struct lsmcontext *cp) { - call_void_hook(release_secctx, secdata, seclen); + struct security_hook_list *hp; + + hlist_for_each_entry(hp, &security_hook_heads.release_secctx, list) + if (cp->slot == hp->lsmid->slot) { + hp->hook.release_secctx(cp->context, cp->len); + break; + } + + memset(cp, 0, sizeof(*cp)); } EXPORT_SYMBOL(security_release_secctx); @@ -2045,9 +2426,18 @@ } EXPORT_SYMBOL(security_inode_setsecctx); -int security_inode_getsecctx(struct inode *inode, void **ctx, u32 *ctxlen) +int security_inode_getsecctx(struct inode *inode, struct lsmcontext *cp) { - return call_int_hook(inode_getsecctx, -EOPNOTSUPP, inode, ctx, ctxlen); + struct security_hook_list *hp; + + memset(cp, 0, sizeof(*cp)); + + hlist_for_each_entry(hp, &security_hook_heads.inode_getsecctx, list) { + cp->slot = hp->lsmid->slot; + return hp->hook.inode_getsecctx(inode, (void **)&cp->context, + &cp->len); + } + return -EOPNOTSUPP; } EXPORT_SYMBOL(security_inode_getsecctx); @@ -2164,25 +2554,53 @@ int security_socket_getpeersec_stream(struct socket *sock, char __user *optval, int __user *optlen, unsigned len) { - return call_int_hook(socket_getpeersec_stream, -ENOPROTOOPT, sock, - optval, optlen, len); + int display = lsm_task_display(current); + struct security_hook_list *hp; + + hlist_for_each_entry(hp, &security_hook_heads.socket_getpeersec_stream, + list) + if (display == LSMBLOB_INVALID || display == hp->lsmid->slot) + return hp->hook.socket_getpeersec_stream(sock, optval, + optlen, len); + return -ENOPROTOOPT; } -int security_socket_getpeersec_dgram(struct socket *sock, struct sk_buff *skb, u32 *secid) +int security_socket_getpeersec_dgram(struct socket *sock, struct sk_buff *skb, + struct lsmblob *blob) { - return call_int_hook(socket_getpeersec_dgram, -ENOPROTOOPT, sock, - skb, secid); + struct security_hook_list *hp; + int rc = -ENOPROTOOPT; + + hlist_for_each_entry(hp, &security_hook_heads.socket_getpeersec_dgram, + list) { + if (WARN_ON(hp->lsmid->slot < 0 || hp->lsmid->slot >= lsm_slot)) + continue; + rc = hp->hook.socket_getpeersec_dgram(sock, skb, + &blob->secid[hp->lsmid->slot]); + if (rc != 0) + break; + } + return rc; } EXPORT_SYMBOL(security_socket_getpeersec_dgram); int security_sk_alloc(struct sock *sk, int family, gfp_t priority) { - return call_int_hook(sk_alloc_security, 0, sk, family, priority); + int rc = lsm_sock_alloc(sk, priority); + + if (unlikely(rc)) + return rc; + rc = call_int_hook(sk_alloc_security, 0, sk, family, priority); + if (unlikely(rc)) + security_sk_free(sk); + return rc; } void security_sk_free(struct sock *sk) { call_void_hook(sk_free_security, sk); + kfree(sk->sk_security); + sk->sk_security = NULL; } void security_sk_clone(const struct sock *sk, struct sock *newsk) @@ -2229,9 +2647,21 @@ } EXPORT_SYMBOL(security_inet_conn_established); -int security_secmark_relabel_packet(u32 secid) +int security_secmark_relabel_packet(struct lsmblob *blob) { - return call_int_hook(secmark_relabel_packet, 0, secid); + struct security_hook_list *hp; + int rc = 0; + + hlist_for_each_entry(hp, &security_hook_heads.secmark_relabel_packet, + list) { + if (WARN_ON(hp->lsmid->slot < 0 || hp->lsmid->slot >= lsm_slot)) + continue; + rc = hp->hook.secmark_relabel_packet( + blob->secid[hp->lsmid->slot]); + if (rc != 0) + break; + } + return rc; } EXPORT_SYMBOL(security_secmark_relabel_packet); @@ -2460,7 +2890,18 @@ int security_audit_rule_init(u32 field, u32 op, char *rulestr, void **lsmrule) { - return call_int_hook(audit_rule_init, 0, field, op, rulestr, lsmrule); + struct security_hook_list *hp; + int display = lsm_task_display(current); + + hlist_for_each_entry(hp, &security_hook_heads.audit_rule_init, list) { + if (WARN_ON(hp->lsmid->slot < 0 || hp->lsmid->slot >= lsm_slot)) + continue; + if (display != LSMBLOB_INVALID && display != hp->lsmid->slot) + continue; + return hp->hook.audit_rule_init(field, op, rulestr, + &lsmrule[hp->lsmid->slot]); + } + return 0; } int security_audit_rule_known(struct audit_krule *krule) @@ -2468,14 +2909,39 @@ return call_int_hook(audit_rule_known, 0, krule); } -void security_audit_rule_free(void *lsmrule) +void security_audit_rule_free(void **lsmrule) { - call_void_hook(audit_rule_free, lsmrule); + struct security_hook_list *hp; + + hlist_for_each_entry(hp, &security_hook_heads.audit_rule_free, list) { + if (WARN_ON(hp->lsmid->slot < 0 || hp->lsmid->slot >= lsm_slot)) + continue; + if (lsmrule[hp->lsmid->slot] == NULL) + continue; + hp->hook.audit_rule_free(lsmrule[hp->lsmid->slot]); + } } -int security_audit_rule_match(u32 secid, u32 field, u32 op, void *lsmrule) +int security_audit_rule_match(struct lsmblob *blob, u32 field, u32 op, + void **lsmrule) { - return call_int_hook(audit_rule_match, 0, secid, field, op, lsmrule); + struct security_hook_list *hp; + int rc; + + hlist_for_each_entry(hp, &security_hook_heads.audit_rule_match, list) { + if (WARN_ON(hp->lsmid->slot < 0 || hp->lsmid->slot >= lsm_slot)) + continue; + if (lsmrule[hp->lsmid->slot] == NULL) + continue; + if (lsmrule[hp->lsmid->slot] == NULL) + continue; + rc = hp->hook.audit_rule_match(blob->secid[hp->lsmid->slot], + field, op, + &lsmrule[hp->lsmid->slot]); + if (rc) + return rc; + } + return 0; } #endif /* CONFIG_AUDIT */ @@ -2516,6 +2982,12 @@ } EXPORT_SYMBOL(security_locked_down); +int security_lock_kernel_down(const char *where, enum lockdown_reason level) +{ + return call_int_hook(lock_kernel_down, 0, where, level); +} +EXPORT_SYMBOL(security_lock_kernel_down); + #ifdef CONFIG_PERF_EVENTS int security_perf_event_open(struct perf_event_attr *attr, int type) { --- linux-azure-5.8-5.8.0.orig/security/selinux/hooks.c +++ linux-azure-5.8-5.8.0/security/selinux/hooks.c @@ -1450,7 +1450,7 @@ * inode_doinit with a dentry, before these inodes could * be used again by userspace. */ - goto out; + goto out_invalid; } rc = inode_doinit_use_xattr(inode, dentry, sbsec->def_sid, @@ -1507,7 +1507,7 @@ * could be used again by userspace. */ if (!dentry) - goto out; + goto out_invalid; rc = selinux_genfs_get_sid(dentry, sclass, sbsec->flags, &sid); if (rc) { @@ -1532,11 +1532,10 @@ out: spin_lock(&isec->lock); if (isec->initialized == LABEL_PENDING) { - if (!sid || rc) { + if (rc) { isec->initialized = LABEL_INVALID; goto out_unlock; } - isec->initialized = LABEL_INITIALIZED; isec->sid = sid; } @@ -1544,6 +1543,15 @@ out_unlock: spin_unlock(&isec->lock); return rc; + +out_invalid: + spin_lock(&isec->lock); + if (isec->initialized == LABEL_PENDING) { + isec->initialized = LABEL_INVALID; + isec->sid = sid; + } + spin_unlock(&isec->lock); + return 0; } /* Convert a Linux signal to an access vector. */ @@ -2237,7 +2245,7 @@ const struct task_security_struct *new_tsec) { int nnp = (bprm->unsafe & LSM_UNSAFE_NO_NEW_PRIVS); - int nosuid = !mnt_may_suid(bprm->file->f_path.mnt); + int nosuid = path_nosuid(&bprm->file->f_path); int rc; u32 av; @@ -3397,6 +3405,10 @@ static int selinux_inode_listsecurity(struct inode *inode, char *buffer, size_t buffer_size) { const int len = sizeof(XATTR_NAME_SELINUX); + + if (!selinux_initialized(&selinux_state)) + return 0; + if (buffer && len <= buffer_size) memcpy(buffer, XATTR_NAME_SELINUX, len); return len; @@ -4472,7 +4484,7 @@ static int sock_has_perm(struct sock *sk, u32 perms) { - struct sk_security_struct *sksec = sk->sk_security; + struct sk_security_struct *sksec = selinux_sock(sk); struct common_audit_data ad; struct lsm_network_audit net = {0,}; @@ -4529,7 +4541,7 @@ isec->initialized = LABEL_INITIALIZED; if (sock->sk) { - sksec = sock->sk->sk_security; + sksec = selinux_sock(sock->sk); sksec->sclass = sclass; sksec->sid = sid; /* Allows detection of the first association on this socket */ @@ -4545,8 +4557,8 @@ static int selinux_socket_socketpair(struct socket *socka, struct socket *sockb) { - struct sk_security_struct *sksec_a = socka->sk->sk_security; - struct sk_security_struct *sksec_b = sockb->sk->sk_security; + struct sk_security_struct *sksec_a = selinux_sock(socka->sk); + struct sk_security_struct *sksec_b = selinux_sock(sockb->sk); sksec_a->peer_sid = sksec_b->sid; sksec_b->peer_sid = sksec_a->sid; @@ -4561,7 +4573,7 @@ static int selinux_socket_bind(struct socket *sock, struct sockaddr *address, int addrlen) { struct sock *sk = sock->sk; - struct sk_security_struct *sksec = sk->sk_security; + struct sk_security_struct *sksec = selinux_sock(sk); u16 family; int err; @@ -4696,7 +4708,7 @@ struct sockaddr *address, int addrlen) { struct sock *sk = sock->sk; - struct sk_security_struct *sksec = sk->sk_security; + struct sk_security_struct *sksec = selinux_sock(sk); int err; err = sock_has_perm(sk, SOCKET__CONNECT); @@ -4875,9 +4887,9 @@ struct sock *other, struct sock *newsk) { - struct sk_security_struct *sksec_sock = sock->sk_security; - struct sk_security_struct *sksec_other = other->sk_security; - struct sk_security_struct *sksec_new = newsk->sk_security; + struct sk_security_struct *sksec_sock = selinux_sock(sock); + struct sk_security_struct *sksec_other = selinux_sock(other); + struct sk_security_struct *sksec_new = selinux_sock(newsk); struct common_audit_data ad; struct lsm_network_audit net = {0,}; int err; @@ -4909,8 +4921,8 @@ static int selinux_socket_unix_may_send(struct socket *sock, struct socket *other) { - struct sk_security_struct *ssec = sock->sk->sk_security; - struct sk_security_struct *osec = other->sk->sk_security; + struct sk_security_struct *ssec = selinux_sock(sock->sk); + struct sk_security_struct *osec = selinux_sock(other->sk); struct common_audit_data ad; struct lsm_network_audit net = {0,}; @@ -4952,7 +4964,7 @@ u16 family) { int err = 0; - struct sk_security_struct *sksec = sk->sk_security; + struct sk_security_struct *sksec = selinux_sock(sk); u32 sk_sid = sksec->sid; struct common_audit_data ad; struct lsm_network_audit net = {0,}; @@ -4985,7 +4997,7 @@ static int selinux_socket_sock_rcv_skb(struct sock *sk, struct sk_buff *skb) { int err; - struct sk_security_struct *sksec = sk->sk_security; + struct sk_security_struct *sksec = selinux_sock(sk); u16 family = sk->sk_family; u32 sk_sid = sksec->sid; struct common_audit_data ad; @@ -5053,13 +5065,15 @@ return err; } -static int selinux_socket_getpeersec_stream(struct socket *sock, char __user *optval, - int __user *optlen, unsigned len) +static int selinux_socket_getpeersec_stream(struct socket *sock, + char __user *optval, + int __user *optlen, + unsigned int len) { int err = 0; char *scontext; u32 scontext_len; - struct sk_security_struct *sksec = sock->sk->sk_security; + struct sk_security_struct *sksec = selinux_sock(sock->sk); u32 peer_sid = SECSID_NULL; if (sksec->sclass == SECCLASS_UNIX_STREAM_SOCKET || @@ -5119,34 +5133,27 @@ static int selinux_sk_alloc_security(struct sock *sk, int family, gfp_t priority) { - struct sk_security_struct *sksec; - - sksec = kzalloc(sizeof(*sksec), priority); - if (!sksec) - return -ENOMEM; + struct sk_security_struct *sksec = selinux_sock(sk); sksec->peer_sid = SECINITSID_UNLABELED; sksec->sid = SECINITSID_UNLABELED; sksec->sclass = SECCLASS_SOCKET; selinux_netlbl_sk_security_reset(sksec); - sk->sk_security = sksec; return 0; } static void selinux_sk_free_security(struct sock *sk) { - struct sk_security_struct *sksec = sk->sk_security; + struct sk_security_struct *sksec = selinux_sock(sk); - sk->sk_security = NULL; selinux_netlbl_sk_security_free(sksec); - kfree(sksec); } static void selinux_sk_clone_security(const struct sock *sk, struct sock *newsk) { - struct sk_security_struct *sksec = sk->sk_security; - struct sk_security_struct *newsksec = newsk->sk_security; + struct sk_security_struct *sksec = selinux_sock(sk); + struct sk_security_struct *newsksec = selinux_sock(newsk); newsksec->sid = sksec->sid; newsksec->peer_sid = sksec->peer_sid; @@ -5160,7 +5167,7 @@ if (!sk) *secid = SECINITSID_ANY_SOCKET; else { - struct sk_security_struct *sksec = sk->sk_security; + struct sk_security_struct *sksec = selinux_sock(sk); *secid = sksec->sid; } @@ -5170,7 +5177,7 @@ { struct inode_security_struct *isec = inode_security_novalidate(SOCK_INODE(parent)); - struct sk_security_struct *sksec = sk->sk_security; + struct sk_security_struct *sksec = selinux_sock(sk); if (sk->sk_family == PF_INET || sk->sk_family == PF_INET6 || sk->sk_family == PF_UNIX) @@ -5185,7 +5192,7 @@ static int selinux_sctp_assoc_request(struct sctp_endpoint *ep, struct sk_buff *skb) { - struct sk_security_struct *sksec = ep->base.sk->sk_security; + struct sk_security_struct *sksec = selinux_sock(ep->base.sk); struct common_audit_data ad; struct lsm_network_audit net = {0,}; u8 peerlbl_active; @@ -5336,8 +5343,8 @@ static void selinux_sctp_sk_clone(struct sctp_endpoint *ep, struct sock *sk, struct sock *newsk) { - struct sk_security_struct *sksec = sk->sk_security; - struct sk_security_struct *newsksec = newsk->sk_security; + struct sk_security_struct *sksec = selinux_sock(sk); + struct sk_security_struct *newsksec = selinux_sock(newsk); /* If policy does not support SECCLASS_SCTP_SOCKET then call * the non-sctp clone version. @@ -5354,7 +5361,7 @@ static int selinux_inet_conn_request(struct sock *sk, struct sk_buff *skb, struct request_sock *req) { - struct sk_security_struct *sksec = sk->sk_security; + struct sk_security_struct *sksec = selinux_sock(sk); int err; u16 family = req->rsk_ops->family; u32 connsid; @@ -5375,7 +5382,7 @@ static void selinux_inet_csk_clone(struct sock *newsk, const struct request_sock *req) { - struct sk_security_struct *newsksec = newsk->sk_security; + struct sk_security_struct *newsksec = selinux_sock(newsk); newsksec->sid = req->secid; newsksec->peer_sid = req->peer_secid; @@ -5392,7 +5399,7 @@ static void selinux_inet_conn_established(struct sock *sk, struct sk_buff *skb) { u16 family = sk->sk_family; - struct sk_security_struct *sksec = sk->sk_security; + struct sk_security_struct *sksec = selinux_sock(sk); /* handle mapped IPv4 packets arriving via IPv6 sockets */ if (family == PF_INET6 && skb->protocol == htons(ETH_P_IP)) @@ -5476,7 +5483,7 @@ static int selinux_tun_dev_attach(struct sock *sk, void *security) { struct tun_security_struct *tunsec = security; - struct sk_security_struct *sksec = sk->sk_security; + struct sk_security_struct *sksec = selinux_sock(sk); /* we don't currently perform any NetLabel based labeling here and it * isn't clear that we would want to do so anyway; while we could apply @@ -5620,7 +5627,7 @@ return NF_ACCEPT; /* standard practice, label using the parent socket */ - sksec = sk->sk_security; + sksec = selinux_sock(sk); sid = sksec->sid; } else sid = SECINITSID_KERNEL; @@ -5659,7 +5666,7 @@ if (sk == NULL) return NF_ACCEPT; - sksec = sk->sk_security; + sksec = selinux_sock(sk); ad.type = LSM_AUDIT_DATA_NET; ad.u.net = &net; @@ -5751,7 +5758,7 @@ u32 skb_sid; struct sk_security_struct *sksec; - sksec = sk->sk_security; + sksec = selinux_sock(sk); if (selinux_skb_peerlbl_sid(skb, family, &skb_sid)) return NF_DROP; /* At this point, if the returned skb peerlbl is SECSID_NULL @@ -5780,7 +5787,7 @@ } else { /* Locally generated packet, fetch the security label from the * associated socket. */ - struct sk_security_struct *sksec = sk->sk_security; + struct sk_security_struct *sksec = selinux_sock(sk); peer_sid = sksec->sid; secmark_perm = PACKET__SEND; } @@ -5845,7 +5852,7 @@ unsigned int data_len = skb->len; unsigned char *data = skb->data; struct nlmsghdr *nlh; - struct sk_security_struct *sksec = sk->sk_security; + struct sk_security_struct *sksec = selinux_sock(sk); u16 sclass = sksec->sclass; u32 perm; @@ -6293,7 +6300,7 @@ goto bad; } - if (!strcmp(name, "current")) + if (!strcmp(name, "current") || !strcmp(name, "context")) sid = __tsec->sid; else if (!strcmp(name, "prev")) sid = __tsec->osid; @@ -6335,6 +6342,17 @@ /* * Basic control over ability to set these attributes at all. */ + + /* + * For setting display, we only perform a permission check; + * the actual update to the display value is handled by the + * LSM framework. + */ + if (!strcmp(name, "display")) + return avc_has_perm(&selinux_state, + mysid, mysid, SECCLASS_PROCESS2, + PROCESS2__SETDISPLAY, NULL); + if (!strcmp(name, "exec")) error = avc_has_perm(&selinux_state, mysid, mysid, SECCLASS_PROCESS, @@ -6870,6 +6888,7 @@ .lbs_inode = sizeof(struct inode_security_struct), .lbs_ipc = sizeof(struct ipc_security_struct), .lbs_msg_msg = sizeof(struct msg_security_struct), + .lbs_sock = sizeof(struct sk_security_struct), }; #ifdef CONFIG_PERF_EVENTS @@ -6933,6 +6952,11 @@ } #endif +struct lsm_id selinux_lsmid __lsm_ro_after_init = { + .lsm = "selinux", + .slot = LSMBLOB_NEEDED +}; + /* * IMPORTANT NOTE: When adding new hooks, please be careful to keep this order: * 1. any hooks that don't belong to (2.) or (3.) below, @@ -7244,7 +7268,8 @@ hashtab_cache_init(); - security_add_hooks(selinux_hooks, ARRAY_SIZE(selinux_hooks), "selinux"); + security_add_hooks(selinux_hooks, ARRAY_SIZE(selinux_hooks), + &selinux_lsmid); if (avc_add_callback(selinux_netcache_avc_callback, AVC_CALLBACK_RESET)) panic("SELinux: Unable to register AVC netcache callback\n"); --- linux-azure-5.8-5.8.0.orig/security/selinux/ibpkey.c +++ linux-azure-5.8-5.8.0/security/selinux/ibpkey.c @@ -151,8 +151,10 @@ * is valid, it just won't be added to the cache. */ new = kzalloc(sizeof(*new), GFP_ATOMIC); - if (!new) + if (!new) { + ret = -ENOMEM; goto out; + } new->psec.subnet_prefix = subnet_prefix; new->psec.pkey = pkey_num; --- linux-azure-5.8-5.8.0.orig/security/selinux/include/classmap.h +++ linux-azure-5.8-5.8.0/security/selinux/include/classmap.h @@ -52,7 +52,7 @@ "execmem", "execstack", "execheap", "setkeycreate", "setsockcreate", "getrlimit", NULL } }, { "process2", - { "nnp_transition", "nosuid_transition", NULL } }, + { "nnp_transition", "nosuid_transition", "setdisplay", NULL } }, { "system", { "ipc_info", "syslog_read", "syslog_mod", "syslog_console", "module_request", "module_load", NULL } }, --- linux-azure-5.8-5.8.0.orig/security/selinux/include/objsec.h +++ linux-azure-5.8-5.8.0/security/selinux/include/objsec.h @@ -189,4 +189,9 @@ return tsec->sid; } +static inline struct sk_security_struct *selinux_sock(const struct sock *sock) +{ + return sock->sk_security + selinux_blob_sizes.lbs_sock; +} + #endif /* _SELINUX_OBJSEC_H_ */ --- linux-azure-5.8-5.8.0.orig/security/selinux/include/security.h +++ linux-azure-5.8-5.8.0/security/selinux/include/security.h @@ -71,6 +71,7 @@ struct netlbl_lsm_secattr; extern int selinux_enabled_boot; +extern struct lsm_id selinux_lsmid; /* Policy capabilities */ enum { @@ -177,49 +178,49 @@ { struct selinux_state *state = &selinux_state; - return state->policycap[POLICYDB_CAPABILITY_NETPEER]; + return READ_ONCE(state->policycap[POLICYDB_CAPABILITY_NETPEER]); } static inline bool selinux_policycap_openperm(void) { struct selinux_state *state = &selinux_state; - return state->policycap[POLICYDB_CAPABILITY_OPENPERM]; + return READ_ONCE(state->policycap[POLICYDB_CAPABILITY_OPENPERM]); } static inline bool selinux_policycap_extsockclass(void) { struct selinux_state *state = &selinux_state; - return state->policycap[POLICYDB_CAPABILITY_EXTSOCKCLASS]; + return READ_ONCE(state->policycap[POLICYDB_CAPABILITY_EXTSOCKCLASS]); } static inline bool selinux_policycap_alwaysnetwork(void) { struct selinux_state *state = &selinux_state; - return state->policycap[POLICYDB_CAPABILITY_ALWAYSNETWORK]; + return READ_ONCE(state->policycap[POLICYDB_CAPABILITY_ALWAYSNETWORK]); } static inline bool selinux_policycap_cgroupseclabel(void) { struct selinux_state *state = &selinux_state; - return state->policycap[POLICYDB_CAPABILITY_CGROUPSECLABEL]; + return READ_ONCE(state->policycap[POLICYDB_CAPABILITY_CGROUPSECLABEL]); } static inline bool selinux_policycap_nnp_nosuid_transition(void) { struct selinux_state *state = &selinux_state; - return state->policycap[POLICYDB_CAPABILITY_NNP_NOSUID_TRANSITION]; + return READ_ONCE(state->policycap[POLICYDB_CAPABILITY_NNP_NOSUID_TRANSITION]); } static inline bool selinux_policycap_genfs_seclabel_symlinks(void) { struct selinux_state *state = &selinux_state; - return state->policycap[POLICYDB_CAPABILITY_GENFS_SECLABEL_SYMLINKS]; + return READ_ONCE(state->policycap[POLICYDB_CAPABILITY_GENFS_SECLABEL_SYMLINKS]); } int security_mls_enabled(struct selinux_state *state); --- linux-azure-5.8-5.8.0.orig/security/selinux/netlabel.c +++ linux-azure-5.8-5.8.0/security/selinux/netlabel.c @@ -17,6 +17,7 @@ #include #include #include +#include #include #include #include @@ -67,7 +68,7 @@ static struct netlbl_lsm_secattr *selinux_netlbl_sock_genattr(struct sock *sk) { int rc; - struct sk_security_struct *sksec = sk->sk_security; + struct sk_security_struct *sksec = selinux_sock(sk); struct netlbl_lsm_secattr *secattr; if (sksec->nlbl_secattr != NULL) @@ -100,14 +101,14 @@ const struct sock *sk, u32 sid) { - struct sk_security_struct *sksec = sk->sk_security; + struct sk_security_struct *sksec = selinux_sock(sk); struct netlbl_lsm_secattr *secattr = sksec->nlbl_secattr; if (secattr == NULL) return NULL; if ((secattr->flags & NETLBL_SECATTR_SECID) && - (secattr->attr.secid == sid)) + (secattr->attr.lsmblob.secid[selinux_lsmid.slot] == sid)) return secattr; return NULL; @@ -235,7 +236,7 @@ * being labeled by it's parent socket, if it is just exit */ sk = skb_to_full_sk(skb); if (sk != NULL) { - struct sk_security_struct *sksec = sk->sk_security; + struct sk_security_struct *sksec = selinux_sock(sk); if (sksec->nlbl_state != NLBL_REQSKB) return 0; @@ -273,7 +274,7 @@ { int rc; struct netlbl_lsm_secattr secattr; - struct sk_security_struct *sksec = ep->base.sk->sk_security; + struct sk_security_struct *sksec = selinux_sock(ep->base.sk); struct sockaddr_in addr4; struct sockaddr_in6 addr6; @@ -352,7 +353,7 @@ */ void selinux_netlbl_inet_csk_clone(struct sock *sk, u16 family) { - struct sk_security_struct *sksec = sk->sk_security; + struct sk_security_struct *sksec = selinux_sock(sk); if (family == PF_INET) sksec->nlbl_state = NLBL_LABELED; @@ -370,8 +371,8 @@ */ void selinux_netlbl_sctp_sk_clone(struct sock *sk, struct sock *newsk) { - struct sk_security_struct *sksec = sk->sk_security; - struct sk_security_struct *newsksec = newsk->sk_security; + struct sk_security_struct *sksec = selinux_sock(sk); + struct sk_security_struct *newsksec = selinux_sock(newsk); newsksec->nlbl_state = sksec->nlbl_state; } @@ -389,7 +390,7 @@ int selinux_netlbl_socket_post_create(struct sock *sk, u16 family) { int rc; - struct sk_security_struct *sksec = sk->sk_security; + struct sk_security_struct *sksec = selinux_sock(sk); struct netlbl_lsm_secattr *secattr; if (family != PF_INET && family != PF_INET6) @@ -504,7 +505,7 @@ { int rc = 0; struct sock *sk = sock->sk; - struct sk_security_struct *sksec = sk->sk_security; + struct sk_security_struct *sksec = selinux_sock(sk); struct netlbl_lsm_secattr secattr; if (selinux_netlbl_option(level, optname) && @@ -542,7 +543,7 @@ struct sockaddr *addr) { int rc; - struct sk_security_struct *sksec = sk->sk_security; + struct sk_security_struct *sksec = selinux_sock(sk); struct netlbl_lsm_secattr *secattr; /* connected sockets are allowed to disconnect when the address family @@ -581,7 +582,7 @@ int selinux_netlbl_socket_connect_locked(struct sock *sk, struct sockaddr *addr) { - struct sk_security_struct *sksec = sk->sk_security; + struct sk_security_struct *sksec = selinux_sock(sk); if (sksec->nlbl_state != NLBL_REQSKB && sksec->nlbl_state != NLBL_CONNLABELED) --- linux-azure-5.8-5.8.0.orig/security/selinux/ss/services.c +++ linux-azure-5.8-5.8.0/security/selinux/ss/services.c @@ -2103,7 +2103,8 @@ struct ebitmap_node *node; for (i = 0; i < ARRAY_SIZE(state->policycap); i++) - state->policycap[i] = ebitmap_get_bit(&p->policycaps, i); + WRITE_ONCE(state->policycap[i], + ebitmap_get_bit(&p->policycaps, i)); for (i = 0; i < ARRAY_SIZE(selinux_policycap_names); i++) pr_info("SELinux: policy capability %s=%d\n", @@ -3637,7 +3638,7 @@ if (secattr->flags & NETLBL_SECATTR_CACHE) *sid = *(u32 *)secattr->cache->data; else if (secattr->flags & NETLBL_SECATTR_SECID) - *sid = secattr->attr.secid; + *sid = secattr->attr.lsmblob.secid[selinux_lsmid.slot]; else if (secattr->flags & NETLBL_SECATTR_MLS_LVL) { rc = -EIDRM; ctx = sidtab_search(sidtab, SECINITSID_NETMSG); @@ -3710,7 +3711,7 @@ if (secattr->domain == NULL) goto out; - secattr->attr.secid = sid; + secattr->attr.lsmblob.secid[selinux_lsmid.slot] = sid; secattr->flags |= NETLBL_SECATTR_DOMAIN_CPY | NETLBL_SECATTR_SECID; mls_export_netlbl_lvl(policydb, ctx, secattr); rc = mls_export_netlbl_cat(policydb, ctx, secattr); --- linux-azure-5.8-5.8.0.orig/security/smack/smack.h +++ linux-azure-5.8-5.8.0/security/smack/smack.h @@ -310,6 +310,7 @@ * Shared data. */ extern int smack_enabled; +extern struct lsm_id smack_lsmid; extern int smack_cipso_direct; extern int smack_cipso_mapped; extern struct smack_known *smack_net_ambient; @@ -364,6 +365,11 @@ return ipc->security + smack_blob_sizes.lbs_ipc; } +static inline struct socket_smack *smack_sock(const struct sock *sock) +{ + return sock->sk_security + smack_blob_sizes.lbs_sock; +} + /* * Is the directory transmuting? */ --- linux-azure-5.8-5.8.0.orig/security/smack/smack_access.c +++ linux-azure-5.8-5.8.0/security/smack/smack_access.c @@ -669,9 +669,10 @@ bool smack_privileged(int cap) { /* - * All kernel tasks are privileged + * Kernel threads may not have credentials we can use. + * The io_uring kernel threads do have reliable credentials. */ - if (unlikely(current->flags & PF_KTHREAD)) + if ((current->flags & (PF_KTHREAD | PF_IO_WORKER)) == PF_KTHREAD) return true; return smack_privileged_cred(cap, current_cred()); --- linux-azure-5.8-5.8.0.orig/security/smack/smack_lsm.c +++ linux-azure-5.8-5.8.0/security/smack/smack_lsm.c @@ -1444,7 +1444,7 @@ if (sock == NULL || sock->sk == NULL) return -EOPNOTSUPP; - ssp = sock->sk->sk_security; + ssp = smack_sock(sock->sk); if (strcmp(name, XATTR_SMACK_IPIN) == 0) isp = ssp->smk_in; @@ -1826,7 +1826,7 @@ if (inode->i_sb->s_magic == SOCKFS_MAGIC) { sock = SOCKET_I(inode); - ssp = sock->sk->sk_security; + ssp = smack_sock(sock->sk); tsp = smack_cred(current_cred()); /* * If the receiving process can't write to the @@ -2233,11 +2233,7 @@ static int smack_sk_alloc_security(struct sock *sk, int family, gfp_t gfp_flags) { struct smack_known *skp = smk_of_current(); - struct socket_smack *ssp; - - ssp = kzalloc(sizeof(struct socket_smack), gfp_flags); - if (ssp == NULL) - return -ENOMEM; + struct socket_smack *ssp = smack_sock(sk); /* * Sockets created by kernel threads receive web label. @@ -2251,11 +2247,10 @@ } ssp->smk_packet = NULL; - sk->sk_security = ssp; - return 0; } +#ifdef SMACK_IPV6_PORT_LABELING /** * smack_sk_free_security - Free a socket blob * @sk: the socket @@ -2264,7 +2259,6 @@ */ static void smack_sk_free_security(struct sock *sk) { -#ifdef SMACK_IPV6_PORT_LABELING struct smk_port_label *spp; if (sk->sk_family == PF_INET6) { @@ -2277,9 +2271,8 @@ } rcu_read_unlock(); } -#endif - kfree(sk->sk_security); } +#endif /** * smack_ipv4host_label - check host based restrictions @@ -2395,7 +2388,7 @@ static int smack_netlabel(struct sock *sk, int labeled) { struct smack_known *skp; - struct socket_smack *ssp = sk->sk_security; + struct socket_smack *ssp = smack_sock(sk); int rc = 0; /* @@ -2440,7 +2433,7 @@ int rc; int sk_lbl; struct smack_known *hkp; - struct socket_smack *ssp = sk->sk_security; + struct socket_smack *ssp = smack_sock(sk); struct smk_audit_info ad; rcu_read_lock(); @@ -2514,7 +2507,7 @@ { struct sock *sk = sock->sk; struct sockaddr_in6 *addr6; - struct socket_smack *ssp = sock->sk->sk_security; + struct socket_smack *ssp = smack_sock(sock->sk); struct smk_port_label *spp; unsigned short port = 0; @@ -2603,7 +2596,7 @@ int act) { struct smk_port_label *spp; - struct socket_smack *ssp = sk->sk_security; + struct socket_smack *ssp = smack_sock(sk); struct smack_known *skp = NULL; unsigned short port; struct smack_known *object; @@ -2696,7 +2689,7 @@ if (sock == NULL || sock->sk == NULL) return -EOPNOTSUPP; - ssp = sock->sk->sk_security; + ssp = smack_sock(sock->sk); if (strcmp(name, XATTR_SMACK_IPIN) == 0) ssp->smk_in = skp; @@ -2744,7 +2737,7 @@ * Sockets created by kernel threads receive web label. */ if (unlikely(current->flags & PF_KTHREAD)) { - ssp = sock->sk->sk_security; + ssp = smack_sock(sock->sk); ssp->smk_in = &smack_known_web; ssp->smk_out = &smack_known_web; } @@ -2769,8 +2762,8 @@ static int smack_socket_socketpair(struct socket *socka, struct socket *sockb) { - struct socket_smack *asp = socka->sk->sk_security; - struct socket_smack *bsp = sockb->sk->sk_security; + struct socket_smack *asp = smack_sock(socka->sk); + struct socket_smack *bsp = smack_sock(sockb->sk); asp->smk_packet = bsp->smk_out; bsp->smk_packet = asp->smk_out; @@ -2833,7 +2826,7 @@ if (__is_defined(SMACK_IPV6_SECMARK_LABELING)) rsp = smack_ipv6host_label(sip); if (rsp != NULL) { - struct socket_smack *ssp = sock->sk->sk_security; + struct socket_smack *ssp = smack_sock(sock->sk); rc = smk_ipv6_check(ssp->smk_out, rsp, sip, SMK_CONNECTING); @@ -3470,7 +3463,7 @@ char *cp; int slen; - if (strcmp(name, "current") != 0) + if (strcmp(name, "current") != 0 && strcmp(name, "context") != 0) return -EINVAL; cp = kstrdup(skp->smk_known, GFP_KERNEL); @@ -3501,6 +3494,13 @@ struct smack_known_list_elem *sklep; int rc; + /* + * Allow the /proc/.../attr/current and SO_PEERSEC "display" + * to be reset at will. + */ + if (strcmp(name, "display") == 0) + return 0; + if (!smack_privileged(CAP_MAC_ADMIN) && list_empty(&tsp->smk_relabel)) return -EPERM; @@ -3561,9 +3561,9 @@ { struct smack_known *skp; struct smack_known *okp; - struct socket_smack *ssp = sock->sk_security; - struct socket_smack *osp = other->sk_security; - struct socket_smack *nsp = newsk->sk_security; + struct socket_smack *ssp = smack_sock(sock); + struct socket_smack *osp = smack_sock(other); + struct socket_smack *nsp = smack_sock(newsk); struct smk_audit_info ad; int rc = 0; #ifdef CONFIG_AUDIT @@ -3609,8 +3609,8 @@ */ static int smack_unix_may_send(struct socket *sock, struct socket *other) { - struct socket_smack *ssp = sock->sk->sk_security; - struct socket_smack *osp = other->sk->sk_security; + struct socket_smack *ssp = smack_sock(sock->sk); + struct socket_smack *osp = smack_sock(other->sk); struct smk_audit_info ad; int rc; @@ -3647,7 +3647,7 @@ struct sockaddr_in6 *sap = (struct sockaddr_in6 *) msg->msg_name; #endif #ifdef SMACK_IPV6_SECMARK_LABELING - struct socket_smack *ssp = sock->sk->sk_security; + struct socket_smack *ssp = smack_sock(sock->sk); struct smack_known *rsp; #endif int rc = 0; @@ -3751,7 +3751,8 @@ /* * Looks like a fallback, which gives us a secid. */ - return smack_from_secid(sap->attr.secid); + return smack_from_secid( + sap->attr.lsmblob.secid[smack_lsmid.slot]); /* * Without guidance regarding the smack value * for the packet fall back on the network @@ -3820,7 +3821,7 @@ static int smack_socket_sock_rcv_skb(struct sock *sk, struct sk_buff *skb) { struct netlbl_lsm_secattr secattr; - struct socket_smack *ssp = sk->sk_security; + struct socket_smack *ssp = smack_sock(sk); struct smack_known *skp = NULL; int rc = 0; struct smk_audit_info ad; @@ -3941,7 +3942,7 @@ int slen = 1; int rc = 0; - ssp = sock->sk->sk_security; + ssp = smack_sock(sock->sk); if (ssp->smk_packet != NULL) { rcp = ssp->smk_packet->smk_known; slen = strlen(rcp) + 1; @@ -3991,7 +3992,7 @@ switch (family) { case PF_UNIX: - ssp = sock->sk->sk_security; + ssp = smack_sock(sock->sk); s = ssp->smk_out->smk_secid; break; case PF_INET: @@ -4004,7 +4005,7 @@ * Translate what netlabel gave us. */ if (sock != NULL && sock->sk != NULL) - ssp = sock->sk->sk_security; + ssp = smack_sock(sock->sk); netlbl_secattr_init(&secattr); rc = netlbl_skbuff_getattr(skb, family, &secattr); if (rc == 0) { @@ -4042,7 +4043,7 @@ (sk->sk_family != PF_INET && sk->sk_family != PF_INET6)) return; - ssp = sk->sk_security; + ssp = smack_sock(sk); ssp->smk_in = skp; ssp->smk_out = skp; /* cssp->smk_packet is already set in smack_inet_csk_clone() */ @@ -4062,7 +4063,7 @@ { u16 family = sk->sk_family; struct smack_known *skp; - struct socket_smack *ssp = sk->sk_security; + struct socket_smack *ssp = smack_sock(sk); struct netlbl_lsm_secattr secattr; struct sockaddr_in addr; struct iphdr *hdr; @@ -4161,7 +4162,7 @@ static void smack_inet_csk_clone(struct sock *sk, const struct request_sock *req) { - struct socket_smack *ssp = sk->sk_security; + struct socket_smack *ssp = smack_sock(sk); struct smack_known *skp; if (req->peer_secid != 0) { @@ -4653,6 +4654,12 @@ .lbs_inode = sizeof(struct inode_smack), .lbs_ipc = sizeof(struct smack_known *), .lbs_msg_msg = sizeof(struct smack_known *), + .lbs_sock = sizeof(struct socket_smack), +}; + +struct lsm_id smack_lsmid __lsm_ro_after_init = { + .lsm = "smack", + .slot = LSMBLOB_NEEDED }; static struct security_hook_list smack_hooks[] __lsm_ro_after_init = { @@ -4762,7 +4769,9 @@ LSM_HOOK_INIT(socket_getpeersec_stream, smack_socket_getpeersec_stream), LSM_HOOK_INIT(socket_getpeersec_dgram, smack_socket_getpeersec_dgram), LSM_HOOK_INIT(sk_alloc_security, smack_sk_alloc_security), +#ifdef SMACK_IPV6_PORT_LABELING LSM_HOOK_INIT(sk_free_security, smack_sk_free_security), +#endif LSM_HOOK_INIT(sock_graft, smack_sock_graft), LSM_HOOK_INIT(inet_conn_request, smack_inet_conn_request), LSM_HOOK_INIT(inet_csk_clone, smack_inet_csk_clone), @@ -4852,7 +4861,7 @@ /* * Register with LSM */ - security_add_hooks(smack_hooks, ARRAY_SIZE(smack_hooks), "smack"); + security_add_hooks(smack_hooks, ARRAY_SIZE(smack_hooks), &smack_lsmid); smack_enabled = 1; pr_info("Smack: Initializing.\n"); --- linux-azure-5.8-5.8.0.orig/security/smack/smack_netfilter.c +++ linux-azure-5.8-5.8.0/security/smack/smack_netfilter.c @@ -28,8 +28,8 @@ struct socket_smack *ssp; struct smack_known *skp; - if (sk && sk->sk_security) { - ssp = sk->sk_security; + if (sk && smack_sock(sk)) { + ssp = smack_sock(sk); skp = ssp->smk_out; skb->secmark = skp->smk_secid; } @@ -46,8 +46,8 @@ struct socket_smack *ssp; struct smack_known *skp; - if (sk && sk->sk_security) { - ssp = sk->sk_security; + if (sk && smack_sock(sk)) { + ssp = smack_sock(sk); skp = ssp->smk_out; skb->secmark = skp->smk_secid; } --- linux-azure-5.8-5.8.0.orig/security/smack/smackfs.c +++ linux-azure-5.8-5.8.0/security/smack/smackfs.c @@ -185,7 +185,8 @@ nap->loginuid = audit_get_loginuid(current); nap->sessionid = audit_get_sessionid(current); - nap->secid = skp->smk_secid; + lsmblob_init(&nap->lsmdata, 0); + nap->lsmdata.secid[smack_lsmid.slot] = skp->smk_secid; } /* @@ -884,7 +885,7 @@ } ret = sscanf(rule, "%d", &maplevel); - if (ret != 1 || maplevel > SMACK_CIPSO_MAXLEVEL) + if (ret != 1 || maplevel < 0 || maplevel > SMACK_CIPSO_MAXLEVEL) goto out; rule += SMK_DIGITLEN; @@ -905,6 +906,10 @@ for (i = 0; i < catlen; i++) { rule += SMK_DIGITLEN; + if (rule > data + count) { + rc = -EOVERFLOW; + goto out; + } ret = sscanf(rule, "%u", &cat); if (ret != 1 || cat > SMACK_CIPSO_MAXCATNUM) goto out; @@ -1132,6 +1137,7 @@ static ssize_t smk_write_net4addr(struct file *file, const char __user *buf, size_t count, loff_t *ppos) { + struct lsmblob lsmblob; struct smk_net4addr *snp; struct sockaddr_in newname; char *smack; @@ -1263,10 +1269,13 @@ * this host so that incoming packets get labeled. * but only if we didn't get the special CIPSO option */ - if (rc == 0 && skp != NULL) + if (rc == 0 && skp != NULL) { + lsmblob_init(&lsmblob, 0); + lsmblob.secid[smack_lsmid.slot] = snp->smk_label->smk_secid; rc = netlbl_cfg_unlbl_static_add(&init_net, NULL, - &snp->smk_host, &snp->smk_mask, PF_INET, - snp->smk_label->smk_secid, &audit_info); + &snp->smk_host, &snp->smk_mask, PF_INET, &lsmblob, + &audit_info); + } if (rc == 0) rc = count; @@ -2720,7 +2729,6 @@ static ssize_t smk_write_relabel_self(struct file *file, const char __user *buf, size_t count, loff_t *ppos) { - struct task_smack *tsp = smack_cred(current_cred()); char *data; int rc; LIST_HEAD(list_tmp); @@ -2745,11 +2753,21 @@ kfree(data); if (!rc || (rc == -EINVAL && list_empty(&list_tmp))) { + struct cred *new; + struct task_smack *tsp; + + new = prepare_creds(); + if (!new) { + rc = -ENOMEM; + goto out; + } + tsp = smack_cred(new); smk_destroy_label_list(&tsp->smk_relabel); list_splice(&list_tmp, &tsp->smk_relabel); + commit_creds(new); return count; } - +out: smk_destroy_label_list(&list_tmp); return rc; } --- linux-azure-5.8-5.8.0.orig/security/tomoyo/tomoyo.c +++ linux-azure-5.8-5.8.0/security/tomoyo/tomoyo.c @@ -523,6 +523,11 @@ } } +static struct lsm_id tomoyo_lsmid __lsm_ro_after_init = { + .lsm = "tomoyo", + .slot = LSMBLOB_NOT_NEEDED +}; + /* * tomoyo_security_ops is a "struct security_operations" which is used for * registering TOMOYO. @@ -575,7 +580,8 @@ struct tomoyo_task *s = tomoyo_task(current); /* register ourselves with the security framework */ - security_add_hooks(tomoyo_hooks, ARRAY_SIZE(tomoyo_hooks), "tomoyo"); + security_add_hooks(tomoyo_hooks, ARRAY_SIZE(tomoyo_hooks), + &tomoyo_lsmid); pr_info("TOMOYO Linux initialized\n"); s->domain_info = &tomoyo_kernel_domain; atomic_inc(&tomoyo_kernel_domain.users); --- linux-azure-5.8-5.8.0.orig/security/yama/yama_lsm.c +++ linux-azure-5.8-5.8.0/security/yama/yama_lsm.c @@ -99,7 +99,7 @@ info->access = access; info->target = target; info->agent = agent; - if (task_work_add(current, &info->work, true) == 0) + if (task_work_add(current, &info->work, TWA_RESUME) == 0) return; /* success */ WARN(1, "report_access called from exiting task"); @@ -421,6 +421,11 @@ return rc; } +static struct lsm_id yama_lsmid __lsm_ro_after_init = { + .lsm = "yama", + .slot = LSMBLOB_NOT_NEEDED +}; + static struct security_hook_list yama_hooks[] __lsm_ro_after_init = { LSM_HOOK_INIT(ptrace_access_check, yama_ptrace_access_check), LSM_HOOK_INIT(ptrace_traceme, yama_ptrace_traceme), @@ -477,7 +482,7 @@ static int __init yama_init(void) { pr_info("Yama: becoming mindful.\n"); - security_add_hooks(yama_hooks, ARRAY_SIZE(yama_hooks), "yama"); + security_add_hooks(yama_hooks, ARRAY_SIZE(yama_hooks), &yama_lsmid); yama_init_sysctl(); return 0; } --- linux-azure-5.8-5.8.0.orig/snapcraft.yaml +++ linux-azure-5.8-5.8.0/snapcraft.yaml @@ -0,0 +1,36 @@ +name: pc-kernel +version: null +version-script: | + . debian/debian.env + dpkg-parsechangelog -l $DEBIAN/changelog -S version +summary: The Ubuntu generic Linux kernel +description: This Ubuntu generic Linux kernel +grade: stable +confinement: strict +type: kernel + +parts: + kernel: + plugin: kernel + source: . + source-type: git + kconfigflavour: generic + kconfigs: + - CONFIG_DEBUG_INFO=n + override-build: | + cp debian/scripts/retpoline-extract-one \ + $SNAPCRAFT_PART_BUILD/scripts/ubuntu-retpoline-extract-one + snapcraftctl build + kernel-with-firmware: false + firmware: + plugin: nil + stage-packages: + - linux-firmware + organize: + lib/firmware: firmware + prime: + - -usr + - -lib + build-packages: + - cpio + - libssl-dev --- linux-azure-5.8-5.8.0.orig/sound/core/control.c +++ linux-azure-5.8-5.8.0/sound/core/control.c @@ -1527,7 +1527,7 @@ unlock: up_write(&card->controls_rwsem); - return 0; + return err; } static int snd_ctl_elem_add_user(struct snd_ctl_file *file, --- linux-azure-5.8-5.8.0.orig/sound/core/init.c +++ linux-azure-5.8-5.8.0/sound/core/init.c @@ -14,6 +14,7 @@ #include #include #include +#include #include #include @@ -415,6 +416,9 @@ /* notify all devices that we are disconnected */ snd_device_disconnect_all(card); + if (card->sync_irq > 0) + synchronize_irq(card->sync_irq); + snd_info_card_disconnect(card); if (card->registered) { device_del(&card->card_dev); --- linux-azure-5.8-5.8.0.orig/sound/core/memalloc.c +++ linux-azure-5.8-5.8.0/sound/core/memalloc.c @@ -77,7 +77,8 @@ /* Assign the pool into private_data field */ dmab->private_data = pool; - dmab->area = gen_pool_dma_alloc(pool, size, &dmab->addr); + dmab->area = gen_pool_dma_alloc_align(pool, size, &dmab->addr, + PAGE_SIZE); } /** --- linux-azure-5.8-5.8.0.orig/sound/core/oss/mulaw.c +++ linux-azure-5.8-5.8.0/sound/core/oss/mulaw.c @@ -329,8 +329,8 @@ snd_BUG(); return -EINVAL; } - if (snd_BUG_ON(!snd_pcm_format_linear(format->format))) - return -ENXIO; + if (!snd_pcm_format_linear(format->format)) + return -EINVAL; err = snd_pcm_plugin_build(plug, "Mu-Law<->linear conversion", src_format, dst_format, --- linux-azure-5.8-5.8.0.orig/sound/core/oss/pcm_oss.c +++ linux-azure-5.8-5.8.0/sound/core/oss/pcm_oss.c @@ -693,6 +693,8 @@ oss_buffer_size = snd_pcm_plug_client_size(substream, snd_pcm_hw_param_value_max(slave_params, SNDRV_PCM_HW_PARAM_BUFFER_SIZE, NULL)) * oss_frame_size; + if (!oss_buffer_size) + return -EINVAL; oss_buffer_size = rounddown_pow_of_two(oss_buffer_size); if (atomic_read(&substream->mmap_count)) { if (oss_buffer_size > runtime->oss.mmap_bytes) @@ -728,17 +730,21 @@ min_period_size = snd_pcm_plug_client_size(substream, snd_pcm_hw_param_value_min(slave_params, SNDRV_PCM_HW_PARAM_PERIOD_SIZE, NULL)); - min_period_size *= oss_frame_size; - min_period_size = roundup_pow_of_two(min_period_size); - if (oss_period_size < min_period_size) - oss_period_size = min_period_size; + if (min_period_size) { + min_period_size *= oss_frame_size; + min_period_size = roundup_pow_of_two(min_period_size); + if (oss_period_size < min_period_size) + oss_period_size = min_period_size; + } max_period_size = snd_pcm_plug_client_size(substream, snd_pcm_hw_param_value_max(slave_params, SNDRV_PCM_HW_PARAM_PERIOD_SIZE, NULL)); - max_period_size *= oss_frame_size; - max_period_size = rounddown_pow_of_two(max_period_size); - if (oss_period_size > max_period_size) - oss_period_size = max_period_size; + if (max_period_size) { + max_period_size *= oss_frame_size; + max_period_size = rounddown_pow_of_two(max_period_size); + if (oss_period_size > max_period_size) + oss_period_size = max_period_size; + } oss_periods = oss_buffer_size / oss_period_size; @@ -1935,11 +1941,15 @@ static int snd_pcm_oss_set_fragment1(struct snd_pcm_substream *substream, unsigned int val) { struct snd_pcm_runtime *runtime; + int fragshift; runtime = substream->runtime; if (runtime->oss.subdivision || runtime->oss.fragshift) return -EINVAL; - runtime->oss.fragshift = val & 0xffff; + fragshift = val & 0xffff; + if (fragshift >= 31) + return -EINVAL; + runtime->oss.fragshift = fragshift; runtime->oss.maxfrags = (val >> 16) & 0xffff; if (runtime->oss.fragshift < 4) /* < 16 */ runtime->oss.fragshift = 4; --- linux-azure-5.8-5.8.0.orig/sound/core/pcm.c +++ linux-azure-5.8-5.8.0/sound/core/pcm.c @@ -1109,6 +1109,10 @@ } } + for (cidx = 0; cidx < 2; cidx++) + for (substream = pcm->streams[cidx].substream; substream; substream = substream->next) + snd_pcm_sync_stop(substream, false); + pcm_call_notify(pcm, n_disconnect); for (cidx = 0; cidx < 2; cidx++) { snd_unregister_device(&pcm->streams[cidx].dev); --- linux-azure-5.8-5.8.0.orig/sound/core/pcm_local.h +++ linux-azure-5.8-5.8.0/sound/core/pcm_local.h @@ -63,6 +63,7 @@ void __snd_pcm_xrun(struct snd_pcm_substream *substream); void snd_pcm_group_init(struct snd_pcm_group *group); +void snd_pcm_sync_stop(struct snd_pcm_substream *substream, bool sync_irq); #ifdef CONFIG_SND_DMA_SGBUF struct page *snd_pcm_sgbuf_ops_page(struct snd_pcm_substream *substream, --- linux-azure-5.8-5.8.0.orig/sound/core/pcm_native.c +++ linux-azure-5.8-5.8.0/sound/core/pcm_native.c @@ -583,13 +583,13 @@ #endif } -static void snd_pcm_sync_stop(struct snd_pcm_substream *substream) +void snd_pcm_sync_stop(struct snd_pcm_substream *substream, bool sync_irq) { - if (substream->runtime->stop_operating) { + if (substream->runtime && substream->runtime->stop_operating) { substream->runtime->stop_operating = false; - if (substream->ops->sync_stop) + if (substream->ops && substream->ops->sync_stop) substream->ops->sync_stop(substream); - else if (substream->pcm->card->sync_irq > 0) + else if (sync_irq && substream->pcm->card->sync_irq > 0) synchronize_irq(substream->pcm->card->sync_irq); } } @@ -686,7 +686,7 @@ if (atomic_read(&substream->mmap_count)) return -EBADFD; - snd_pcm_sync_stop(substream); + snd_pcm_sync_stop(substream, true); params->rmask = ~0U; err = snd_pcm_hw_refine(substream, params); @@ -755,8 +755,13 @@ runtime->boundary *= 2; /* clear the buffer for avoiding possible kernel info leaks */ - if (runtime->dma_area && !substream->ops->copy_user) - memset(runtime->dma_area, 0, runtime->dma_bytes); + if (runtime->dma_area && !substream->ops->copy_user) { + size_t size = runtime->dma_bytes; + + if (runtime->info & SNDRV_PCM_INFO_MMAP) + size = PAGE_ALIGN(size); + memset(runtime->dma_area, 0, size); + } snd_pcm_timer_resolution_change(substream); snd_pcm_set_state(substream, SNDRV_PCM_STATE_SETUP); @@ -804,7 +809,7 @@ { int result = 0; - snd_pcm_sync_stop(substream); + snd_pcm_sync_stop(substream, true); if (substream->ops->hw_free) result = substream->ops->hw_free(substream); if (substream->managed_buffer_alloc) @@ -1416,8 +1421,10 @@ snd_pcm_state_t state) { if (substream->runtime->trigger_master == substream && - snd_pcm_running(substream)) + snd_pcm_running(substream)) { substream->ops->trigger(substream, SNDRV_PCM_TRIGGER_STOP); + substream->runtime->stop_operating = true; + } return 0; /* unconditonally stop all substreams */ } @@ -1430,7 +1437,6 @@ runtime->status->state = state; snd_pcm_timer_notify(substream, SNDRV_TIMER_EVENT_MSTOP); } - runtime->stop_operating = true; wake_up(&runtime->sleep); wake_up(&runtime->tsleep); } @@ -1610,6 +1616,7 @@ if (! snd_pcm_running(substream)) return 0; substream->ops->trigger(substream, SNDRV_PCM_TRIGGER_SUSPEND); + runtime->stop_operating = true; return 0; /* suspend unconditionally */ } @@ -1686,6 +1693,12 @@ return err; } } + + for (stream = 0; stream < 2; stream++) + for (substream = pcm->streams[stream].substream; + substream; substream = substream->next) + snd_pcm_sync_stop(substream, false); + return 0; } EXPORT_SYMBOL(snd_pcm_suspend_all); @@ -1731,7 +1744,6 @@ snd_pcm_trigger_tstamp(substream); runtime->status->state = runtime->status->suspended_state; snd_pcm_timer_notify(substream, SNDRV_TIMER_EVENT_MRESUME); - snd_pcm_sync_stop(substream); } static const struct action_ops snd_pcm_action_resume = { @@ -1861,7 +1873,7 @@ snd_pcm_state_t state) { int err; - snd_pcm_sync_stop(substream); + snd_pcm_sync_stop(substream, true); err = substream->ops->prepare(substream); if (err < 0) return err; --- linux-azure-5.8-5.8.0.orig/sound/core/rawmidi.c +++ linux-azure-5.8-5.8.0/sound/core/rawmidi.c @@ -95,11 +95,21 @@ } } -static inline int snd_rawmidi_ready(struct snd_rawmidi_substream *substream) +static inline bool __snd_rawmidi_ready(struct snd_rawmidi_runtime *runtime) +{ + return runtime->avail >= runtime->avail_min; +} + +static bool snd_rawmidi_ready(struct snd_rawmidi_substream *substream) { struct snd_rawmidi_runtime *runtime = substream->runtime; + unsigned long flags; + bool ready; - return runtime->avail >= runtime->avail_min; + spin_lock_irqsave(&runtime->lock, flags); + ready = __snd_rawmidi_ready(runtime); + spin_unlock_irqrestore(&runtime->lock, flags); + return ready; } static inline int snd_rawmidi_ready_append(struct snd_rawmidi_substream *substream, @@ -1019,7 +1029,7 @@ if (result > 0) { if (runtime->event) schedule_work(&runtime->event_work); - else if (snd_rawmidi_ready(substream)) + else if (__snd_rawmidi_ready(runtime)) wake_up(&runtime->sleep); } spin_unlock_irqrestore(&runtime->lock, flags); @@ -1098,7 +1108,7 @@ result = 0; while (count > 0) { spin_lock_irq(&runtime->lock); - while (!snd_rawmidi_ready(substream)) { + while (!__snd_rawmidi_ready(runtime)) { wait_queue_entry_t wait; if ((file->f_flags & O_NONBLOCK) != 0 || result > 0) { @@ -1115,9 +1125,11 @@ return -ENODEV; if (signal_pending(current)) return result > 0 ? result : -ERESTARTSYS; - if (!runtime->avail) - return result > 0 ? result : -EIO; spin_lock_irq(&runtime->lock); + if (!runtime->avail) { + spin_unlock_irq(&runtime->lock); + return result > 0 ? result : -EIO; + } } spin_unlock_irq(&runtime->lock); count1 = snd_rawmidi_kernel_read1(substream, @@ -1255,7 +1267,7 @@ runtime->avail += count; substream->bytes += count; if (count > 0) { - if (runtime->drain || snd_rawmidi_ready(substream)) + if (runtime->drain || __snd_rawmidi_ready(runtime)) wake_up(&runtime->sleep); } return count; @@ -1444,9 +1456,11 @@ return -ENODEV; if (signal_pending(current)) return result > 0 ? result : -ERESTARTSYS; - if (!runtime->avail && !timeout) - return result > 0 ? result : -EIO; spin_lock_irq(&runtime->lock); + if (!runtime->avail && !timeout) { + spin_unlock_irq(&runtime->lock); + return result > 0 ? result : -EIO; + } } spin_unlock_irq(&runtime->lock); count1 = snd_rawmidi_kernel_write1(substream, buf, NULL, count); @@ -1526,6 +1540,7 @@ struct snd_rawmidi *rmidi; struct snd_rawmidi_substream *substream; struct snd_rawmidi_runtime *runtime; + unsigned long buffer_size, avail, xruns; rmidi = entry->private_data; snd_iprintf(buffer, "%s\n\n", rmidi->name); @@ -1544,13 +1559,16 @@ " Owner PID : %d\n", pid_vnr(substream->pid)); runtime = substream->runtime; + spin_lock_irq(&runtime->lock); + buffer_size = runtime->buffer_size; + avail = runtime->avail; + spin_unlock_irq(&runtime->lock); snd_iprintf(buffer, " Mode : %s\n" " Buffer size : %lu\n" " Avail : %lu\n", runtime->oss ? "OSS compatible" : "native", - (unsigned long) runtime->buffer_size, - (unsigned long) runtime->avail); + buffer_size, avail); } } } @@ -1568,13 +1586,16 @@ " Owner PID : %d\n", pid_vnr(substream->pid)); runtime = substream->runtime; + spin_lock_irq(&runtime->lock); + buffer_size = runtime->buffer_size; + avail = runtime->avail; + xruns = runtime->xruns; + spin_unlock_irq(&runtime->lock); snd_iprintf(buffer, " Buffer size : %lu\n" " Avail : %lu\n" " Overruns : %lu\n", - (unsigned long) runtime->buffer_size, - (unsigned long) runtime->avail, - (unsigned long) runtime->xruns); + buffer_size, avail, xruns); } } } --- linux-azure-5.8-5.8.0.orig/sound/core/seq/oss/seq_oss.c +++ linux-azure-5.8-5.8.0/sound/core/seq/oss/seq_oss.c @@ -168,10 +168,19 @@ odev_ioctl(struct file *file, unsigned int cmd, unsigned long arg) { struct seq_oss_devinfo *dp; + long rc; + dp = file->private_data; if (snd_BUG_ON(!dp)) return -ENXIO; - return snd_seq_oss_ioctl(dp, cmd, arg); + + if (cmd != SNDCTL_SEQ_SYNC && + mutex_lock_interruptible(®ister_mutex)) + return -ERESTARTSYS; + rc = snd_seq_oss_ioctl(dp, cmd, arg); + if (cmd != SNDCTL_SEQ_SYNC) + mutex_unlock(®ister_mutex); + return rc; } #ifdef CONFIG_COMPAT --- linux-azure-5.8-5.8.0.orig/sound/core/seq/oss/seq_oss_synth.c +++ linux-azure-5.8-5.8.0/sound/core/seq/oss/seq_oss_synth.c @@ -611,7 +611,8 @@ if (info->is_midi) { struct midi_info minf; - snd_seq_oss_midi_make_info(dp, info->midi_mapped, &minf); + if (snd_seq_oss_midi_make_info(dp, info->midi_mapped, &minf)) + return -ENXIO; inf->synth_type = SYNTH_TYPE_MIDI; inf->synth_subtype = 0; inf->nr_voices = 16; --- linux-azure-5.8-5.8.0.orig/sound/core/seq/seq_queue.h +++ linux-azure-5.8-5.8.0/sound/core/seq/seq_queue.h @@ -26,10 +26,10 @@ struct snd_seq_timer *timer; /* time keeper for this queue */ int owner; /* client that 'owns' the timer */ - unsigned int locked:1, /* timer is only accesibble by owner if set */ - klocked:1, /* kernel lock (after START) */ - check_again:1, - check_blocked:1; + bool locked; /* timer is only accesibble by owner if set */ + bool klocked; /* kernel lock (after START) */ + bool check_again; /* concurrent access happened during check */ + bool check_blocked; /* queue being checked */ unsigned int flags; /* status flags */ unsigned int info_flags; /* info for sync */ --- linux-azure-5.8-5.8.0.orig/sound/firewire/bebob/bebob_hwdep.c +++ linux-azure-5.8-5.8.0/sound/firewire/bebob/bebob_hwdep.c @@ -36,12 +36,11 @@ } memset(&event, 0, sizeof(event)); + count = min_t(long, count, sizeof(event.lock_status)); if (bebob->dev_lock_changed) { event.lock_status.type = SNDRV_FIREWIRE_EVENT_LOCK_STATUS; event.lock_status.status = (bebob->dev_lock_count > 0); bebob->dev_lock_changed = false; - - count = min_t(long, count, sizeof(event.lock_status)); } spin_unlock_irq(&bebob->lock); --- linux-azure-5.8-5.8.0.orig/sound/firewire/digi00x/digi00x.c +++ linux-azure-5.8-5.8.0/sound/firewire/digi00x/digi00x.c @@ -14,6 +14,7 @@ #define VENDOR_DIGIDESIGN 0x00a07e #define MODEL_CONSOLE 0x000001 #define MODEL_RACK 0x000002 +#define SPEC_VERSION 0x000001 static int name_card(struct snd_dg00x *dg00x) { @@ -175,14 +176,18 @@ /* Both of 002/003 use the same ID. */ { .match_flags = IEEE1394_MATCH_VENDOR_ID | + IEEE1394_MATCH_VERSION | IEEE1394_MATCH_MODEL_ID, .vendor_id = VENDOR_DIGIDESIGN, + .version = SPEC_VERSION, .model_id = MODEL_CONSOLE, }, { .match_flags = IEEE1394_MATCH_VENDOR_ID | + IEEE1394_MATCH_VERSION | IEEE1394_MATCH_MODEL_ID, .vendor_id = VENDOR_DIGIDESIGN, + .version = SPEC_VERSION, .model_id = MODEL_RACK, }, {} --- linux-azure-5.8-5.8.0.orig/sound/firewire/fireface/ff-protocol-latter.c +++ linux-azure-5.8-5.8.0/sound/firewire/fireface/ff-protocol-latter.c @@ -15,6 +15,61 @@ #define LATTER_FETCH_MODE 0xffff00000010ULL #define LATTER_SYNC_STATUS 0x0000801c0000ULL +// The content of sync status register differs between models. +// +// Fireface UCX: +// 0xf0000000: (unidentified) +// 0x0f000000: effective rate of sampling clock +// 0x00f00000: detected rate of word clock on BNC interface +// 0x000f0000: detected rate of ADAT or S/PDIF on optical interface +// 0x0000f000: detected rate of S/PDIF on coaxial interface +// 0x00000e00: effective source of sampling clock +// 0x00000e00: Internal +// 0x00000800: (unidentified) +// 0x00000600: Word clock on BNC interface +// 0x00000400: ADAT on optical interface +// 0x00000200: S/PDIF on coaxial or optical interface +// 0x00000100: Optical interface is used for ADAT signal +// 0x00000080: (unidentified) +// 0x00000040: Synchronized to word clock on BNC interface +// 0x00000020: Synchronized to ADAT or S/PDIF on optical interface +// 0x00000010: Synchronized to S/PDIF on coaxial interface +// 0x00000008: (unidentified) +// 0x00000004: Lock word clock on BNC interface +// 0x00000002: Lock ADAT or S/PDIF on optical interface +// 0x00000001: Lock S/PDIF on coaxial interface +// +// Fireface 802 (and perhaps UFX): +// 0xf0000000: effective rate of sampling clock +// 0x0f000000: detected rate of ADAT-B on 2nd optical interface +// 0x00f00000: detected rate of ADAT-A on 1st optical interface +// 0x000f0000: detected rate of AES/EBU on XLR or coaxial interface +// 0x0000f000: detected rate of word clock on BNC interface +// 0x00000e00: effective source of sampling clock +// 0x00000e00: internal +// 0x00000800: ADAT-B +// 0x00000600: ADAT-A +// 0x00000400: AES/EBU +// 0x00000200: Word clock +// 0x00000080: Synchronized to ADAT-B on 2nd optical interface +// 0x00000040: Synchronized to ADAT-A on 1st optical interface +// 0x00000020: Synchronized to AES/EBU on XLR or 2nd optical interface +// 0x00000010: Synchronized to word clock on BNC interface +// 0x00000008: Lock ADAT-B on 2nd optical interface +// 0x00000004: Lock ADAT-A on 1st optical interface +// 0x00000002: Lock AES/EBU on XLR or 2nd optical interface +// 0x00000001: Lock word clock on BNC interface +// +// The pattern for rate bits: +// 0x00: 32.0 kHz +// 0x01: 44.1 kHz +// 0x02: 48.0 kHz +// 0x04: 64.0 kHz +// 0x05: 88.2 kHz +// 0x06: 96.0 kHz +// 0x08: 128.0 kHz +// 0x09: 176.4 kHz +// 0x0a: 192.0 kHz static int parse_clock_bits(u32 data, unsigned int *rate, enum snd_ff_clock_src *src, enum snd_ff_unit_version unit_version) @@ -23,35 +78,48 @@ unsigned int rate; u32 flag; } *rate_entry, rate_entries[] = { - { 32000, 0x00000000, }, - { 44100, 0x01000000, }, - { 48000, 0x02000000, }, - { 64000, 0x04000000, }, - { 88200, 0x05000000, }, - { 96000, 0x06000000, }, - { 128000, 0x08000000, }, - { 176400, 0x09000000, }, - { 192000, 0x0a000000, }, + { 32000, 0x00, }, + { 44100, 0x01, }, + { 48000, 0x02, }, + { 64000, 0x04, }, + { 88200, 0x05, }, + { 96000, 0x06, }, + { 128000, 0x08, }, + { 176400, 0x09, }, + { 192000, 0x0a, }, }; static const struct { enum snd_ff_clock_src src; u32 flag; - } *clk_entry, clk_entries[] = { + } *clk_entry, *clk_entries, ucx_clk_entries[] = { { SND_FF_CLOCK_SRC_SPDIF, 0x00000200, }, { SND_FF_CLOCK_SRC_ADAT1, 0x00000400, }, { SND_FF_CLOCK_SRC_WORD, 0x00000600, }, { SND_FF_CLOCK_SRC_INTERNAL, 0x00000e00, }, + }, ufx_ff802_clk_entries[] = { + { SND_FF_CLOCK_SRC_WORD, 0x00000200, }, + { SND_FF_CLOCK_SRC_SPDIF, 0x00000400, }, + { SND_FF_CLOCK_SRC_ADAT1, 0x00000600, }, + { SND_FF_CLOCK_SRC_ADAT2, 0x00000800, }, + { SND_FF_CLOCK_SRC_INTERNAL, 0x00000e00, }, }; + u32 rate_bits; + unsigned int clk_entry_count; int i; - if (unit_version != SND_FF_UNIT_VERSION_UCX) { - // e.g. 0x00fe0f20 but expected 0x00eff002. - data = ((data & 0xf0f0f0f0) >> 4) | ((data & 0x0f0f0f0f) << 4); + if (unit_version == SND_FF_UNIT_VERSION_UCX) { + rate_bits = (data & 0x0f000000) >> 24; + clk_entries = ucx_clk_entries; + clk_entry_count = ARRAY_SIZE(ucx_clk_entries); + } else { + rate_bits = (data & 0xf0000000) >> 28; + clk_entries = ufx_ff802_clk_entries; + clk_entry_count = ARRAY_SIZE(ufx_ff802_clk_entries); } for (i = 0; i < ARRAY_SIZE(rate_entries); ++i) { rate_entry = rate_entries + i; - if ((data & 0x0f000000) == rate_entry->flag) { + if (rate_bits == rate_entry->flag) { *rate = rate_entry->rate; break; } @@ -59,14 +127,14 @@ if (i == ARRAY_SIZE(rate_entries)) return -EIO; - for (i = 0; i < ARRAY_SIZE(clk_entries); ++i) { + for (i = 0; i < clk_entry_count; ++i) { clk_entry = clk_entries + i; if ((data & 0x000e00) == clk_entry->flag) { *src = clk_entry->src; break; } } - if (i == ARRAY_SIZE(clk_entries)) + if (i == clk_entry_count) return -EIO; return 0; @@ -249,16 +317,22 @@ char *const label; u32 locked_mask; u32 synced_mask; - } *clk_entry, clk_entries[] = { + } *clk_entry, *clk_entries, ucx_clk_entries[] = { { "S/PDIF", 0x00000001, 0x00000010, }, { "ADAT", 0x00000002, 0x00000020, }, { "WDClk", 0x00000004, 0x00000040, }, + }, ufx_ff802_clk_entries[] = { + { "WDClk", 0x00000001, 0x00000010, }, + { "AES/EBU", 0x00000002, 0x00000020, }, + { "ADAT-A", 0x00000004, 0x00000040, }, + { "ADAT-B", 0x00000008, 0x00000080, }, }; __le32 reg; u32 data; unsigned int rate; enum snd_ff_clock_src src; const char *label; + unsigned int clk_entry_count; int i; int err; @@ -270,7 +344,15 @@ snd_iprintf(buffer, "External source detection:\n"); - for (i = 0; i < ARRAY_SIZE(clk_entries); ++i) { + if (ff->unit_version == SND_FF_UNIT_VERSION_UCX) { + clk_entries = ucx_clk_entries; + clk_entry_count = ARRAY_SIZE(ucx_clk_entries); + } else { + clk_entries = ufx_ff802_clk_entries; + clk_entry_count = ARRAY_SIZE(ufx_ff802_clk_entries); + } + + for (i = 0; i < clk_entry_count; ++i) { clk_entry = clk_entries + i; snd_iprintf(buffer, "%s: ", clk_entry->label); if (data & clk_entry->locked_mask) { --- linux-azure-5.8-5.8.0.orig/sound/firewire/fireface/ff-transaction.c +++ linux-azure-5.8-5.8.0/sound/firewire/fireface/ff-transaction.c @@ -88,7 +88,7 @@ /* Set interval to next transaction. */ ff->next_ktime[port] = ktime_add_ns(ktime_get(), - ff->rx_bytes[port] * 8 * NSEC_PER_SEC / 31250); + ff->rx_bytes[port] * 8 * (NSEC_PER_SEC / 31250)); if (quad_count == 1) tcode = TCODE_WRITE_QUADLET_REQUEST; --- linux-azure-5.8-5.8.0.orig/sound/firewire/fireworks/fireworks_transaction.c +++ linux-azure-5.8-5.8.0/sound/firewire/fireworks/fireworks_transaction.c @@ -123,7 +123,7 @@ t = (struct snd_efw_transaction *)data; length = min_t(size_t, be32_to_cpu(t->length) * sizeof(u32), length); - spin_lock_irq(&efw->lock); + spin_lock(&efw->lock); if (efw->push_ptr < efw->pull_ptr) capacity = (unsigned int)(efw->pull_ptr - efw->push_ptr); @@ -190,7 +190,7 @@ copy_resp_to_buf(efw, data, length, rcode); end: - spin_unlock_irq(&instances_lock); + spin_unlock(&instances_lock); } static void --- linux-azure-5.8-5.8.0.orig/sound/firewire/tascam/tascam-transaction.c +++ linux-azure-5.8-5.8.0/sound/firewire/tascam/tascam-transaction.c @@ -209,7 +209,7 @@ /* Set interval to next transaction. */ port->next_ktime = ktime_add_ns(ktime_get(), - port->consume_bytes * 8 * NSEC_PER_SEC / 31250); + port->consume_bytes * 8 * (NSEC_PER_SEC / 31250)); /* Start this transaction. */ port->idling = false; --- linux-azure-5.8-5.8.0.orig/sound/firewire/tascam/tascam.c +++ linux-azure-5.8-5.8.0/sound/firewire/tascam/tascam.c @@ -39,9 +39,6 @@ .midi_capture_ports = 2, .midi_playback_ports = 4, }, - // This kernel module doesn't support FE-8 because the most of features - // can be implemented in userspace without any specific support of this - // module. }; static int identify_model(struct snd_tscm *tscm) @@ -211,11 +208,39 @@ } static const struct ieee1394_device_id snd_tscm_id_table[] = { + // Tascam, FW-1884. + { + .match_flags = IEEE1394_MATCH_VENDOR_ID | + IEEE1394_MATCH_SPECIFIER_ID | + IEEE1394_MATCH_VERSION, + .vendor_id = 0x00022e, + .specifier_id = 0x00022e, + .version = 0x800000, + }, + // Tascam, FE-8 (.version = 0x800001) + // This kernel module doesn't support FE-8 because the most of features + // can be implemented in userspace without any specific support of this + // module. + // + // .version = 0x800002 is unknown. + // + // Tascam, FW-1082. + { + .match_flags = IEEE1394_MATCH_VENDOR_ID | + IEEE1394_MATCH_SPECIFIER_ID | + IEEE1394_MATCH_VERSION, + .vendor_id = 0x00022e, + .specifier_id = 0x00022e, + .version = 0x800003, + }, + // Tascam, FW-1804. { .match_flags = IEEE1394_MATCH_VENDOR_ID | - IEEE1394_MATCH_SPECIFIER_ID, + IEEE1394_MATCH_SPECIFIER_ID | + IEEE1394_MATCH_VERSION, .vendor_id = 0x00022e, .specifier_id = 0x00022e, + .version = 0x800004, }, {} }; --- linux-azure-5.8-5.8.0.orig/sound/hda/ext/hdac_ext_controller.c +++ linux-azure-5.8-5.8.0/sound/hda/ext/hdac_ext_controller.c @@ -148,6 +148,8 @@ return NULL; if (bus->idx != bus_idx) return NULL; + if (addr < 0 || addr > 31) + return NULL; list_for_each_entry(hlink, &bus->hlink_list, list) { for (i = 0; i < HDA_MAX_CODECS; i++) { --- linux-azure-5.8-5.8.0.orig/sound/hda/hdac_bus.c +++ linux-azure-5.8-5.8.0/sound/hda/hdac_bus.c @@ -46,6 +46,18 @@ INIT_LIST_HEAD(&bus->hlink_list); init_waitqueue_head(&bus->rirb_wq); bus->irq = -1; + + /* + * Default value of '8' is as per the HD audio specification (Rev 1.0a). + * Following relation is used to derive STRIPE control value. + * For sample rate <= 48K: + * { ((num_channels * bits_per_sample) / number of SDOs) >= 8 } + * For sample rate > 48K: + * { ((num_channels * bits_per_sample * rate/48000) / + * number of SDOs) >= 8 } + */ + bus->sdo_limit = 8; + return 0; } EXPORT_SYMBOL_GPL(snd_hdac_bus_init); --- linux-azure-5.8-5.8.0.orig/sound/hda/hdac_controller.c +++ linux-azure-5.8-5.8.0/sound/hda/hdac_controller.c @@ -529,17 +529,6 @@ bus->chip_init = true; - /* - * Default value of '8' is as per the HD audio specification (Rev 1.0a). - * Following relation is used to derive STRIPE control value. - * For sample rate <= 48K: - * { ((num_channels * bits_per_sample) / number of SDOs) >= 8 } - * For sample rate > 48K: - * { ((num_channels * bits_per_sample * rate/48000) / - * number of SDOs) >= 8 } - */ - bus->sdo_limit = 8; - return true; } EXPORT_SYMBOL_GPL(snd_hdac_bus_init_chip); --- linux-azure-5.8-5.8.0.orig/sound/hda/hdac_device.c +++ linux-azure-5.8-5.8.0/sound/hda/hdac_device.c @@ -127,6 +127,8 @@ void snd_hdac_device_exit(struct hdac_device *codec) { pm_runtime_put_noidle(&codec->dev); + /* keep balance of runtime PM child_count in parent device */ + pm_runtime_set_suspended(&codec->dev); snd_hdac_bus_remove_device(codec->bus, codec); kfree(codec->vendor_name); kfree(codec->chip_name); --- linux-azure-5.8-5.8.0.orig/sound/hda/intel-dsp-config.c +++ linux-azure-5.8-5.8.0/sound/hda/intel-dsp-config.c @@ -54,7 +54,7 @@ #endif /* * Apollolake (Broxton-P) - * the legacy HDaudio driver is used except on Up Squared (SOF) and + * the legacy HDAudio driver is used except on Up Squared (SOF) and * Chromebooks (SST) */ #if IS_ENABLED(CONFIG_SND_SOC_SOF_APOLLOLAKE) @@ -89,7 +89,7 @@ }, #endif /* - * Skylake and Kabylake use legacy HDaudio driver except for Google + * Skylake and Kabylake use legacy HDAudio driver except for Google * Chromebooks (SST) */ @@ -135,7 +135,7 @@ #endif /* - * Geminilake uses legacy HDaudio driver except for Google + * Geminilake uses legacy HDAudio driver except for Google * Chromebooks */ /* Geminilake */ @@ -157,7 +157,7 @@ /* * CoffeeLake, CannonLake, CometLake, IceLake, TigerLake use legacy - * HDaudio driver except for Google Chromebooks and when DMICs are + * HDAudio driver except for Google Chromebooks and when DMICs are * present. Two cases are required since Coreboot does not expose NHLT * tables. * @@ -306,6 +306,10 @@ .flags = FLAG_SOF | FLAG_SOF_ONLY_IF_DMIC_OR_SOUNDWIRE, .device = 0xa0c8, }, + { + .flags = FLAG_SOF | FLAG_SOF_ONLY_IF_DMIC_OR_SOUNDWIRE, + .device = 0x43c8, + }, #endif /* Elkhart Lake */ @@ -391,7 +395,7 @@ if (pci->class == 0x040300) return SND_INTEL_DSP_DRIVER_LEGACY; if (pci->class != 0x040100 && pci->class != 0x040380) { - dev_err(&pci->dev, "Unknown PCI class/subclass/prog-if information (0x%06x) found, selecting HDA legacy driver\n", pci->class); + dev_err(&pci->dev, "Unknown PCI class/subclass/prog-if information (0x%06x) found, selecting HDAudio legacy driver\n", pci->class); return SND_INTEL_DSP_DRIVER_LEGACY; } --- linux-azure-5.8-5.8.0.orig/sound/pci/asihpi/hpioctl.c +++ linux-azure-5.8-5.8.0/sound/pci/asihpi/hpioctl.c @@ -343,7 +343,7 @@ struct hpi_message hm; struct hpi_response hr; struct hpi_adapter adapter; - struct hpi_pci pci; + struct hpi_pci pci = { 0 }; memset(&adapter, 0, sizeof(adapter)); @@ -499,7 +499,7 @@ return 0; err: - for (idx = 0; idx < HPI_MAX_ADAPTER_MEM_SPACES; idx++) { + while (--idx >= 0) { if (pci.ap_mem_base[idx]) { iounmap(pci.ap_mem_base[idx]); pci.ap_mem_base[idx] = NULL; --- linux-azure-5.8-5.8.0.orig/sound/pci/ca0106/ca0106_main.c +++ linux-azure-5.8-5.8.0/sound/pci/ca0106/ca0106_main.c @@ -537,7 +537,8 @@ else /* Power down */ chip->spi_dac_reg[reg] |= bit; - return snd_ca0106_spi_write(chip, chip->spi_dac_reg[reg]); + if (snd_ca0106_spi_write(chip, chip->spi_dac_reg[reg]) != 0) + return -ENXIO; } return 0; } --- linux-azure-5.8-5.8.0.orig/sound/pci/cs46xx/cs46xx_lib.c +++ linux-azure-5.8-5.8.0/sound/pci/cs46xx/cs46xx_lib.c @@ -766,7 +766,7 @@ rate = 48000 / 9; /* - * We can not capture at at rate greater than the Input Rate (48000). + * We can not capture at a rate greater than the Input Rate (48000). * Return an error if an attempt is made to stray outside that limit. */ if (rate > 48000) --- linux-azure-5.8-5.8.0.orig/sound/pci/cs46xx/dsp_spos_scb_lib.c +++ linux-azure-5.8-5.8.0/sound/pci/cs46xx/dsp_spos_scb_lib.c @@ -1716,7 +1716,7 @@ struct dsp_spos_instance * ins = chip->dsp_spos_instance; if ( ins->spdif_status_out & DSP_SPDIF_STATUS_OUTPUT_ENABLED ) { - /* remove AsynchFGTxSCB and and PCMSerialInput_II */ + /* remove AsynchFGTxSCB and PCMSerialInput_II */ cs46xx_dsp_disable_spdif_out (chip); /* save state */ --- linux-azure-5.8-5.8.0.orig/sound/pci/echoaudio/echoaudio.c +++ linux-azure-5.8-5.8.0/sound/pci/echoaudio/echoaudio.c @@ -2158,7 +2158,6 @@ if (err < 0) { kfree(commpage_bak); dev_err(dev, "resume init_hw err=%d\n", err); - snd_echo_free(chip); return err; } @@ -2185,7 +2184,6 @@ if (request_irq(pci->irq, snd_echo_interrupt, IRQF_SHARED, KBUILD_MODNAME, chip)) { dev_err(chip->card->dev, "cannot grab irq\n"); - snd_echo_free(chip); return -EBUSY; } chip->irq = pci->irq; --- linux-azure-5.8-5.8.0.orig/sound/pci/hda/Kconfig +++ linux-azure-5.8-5.8.0/sound/pci/hda/Kconfig @@ -8,6 +8,9 @@ select SND_JACK select SND_HDA_CORE +config SND_HDA_GENERIC_LEDS + bool + config SND_HDA_INTEL tristate "HD Audio PCI" depends on SND_PCI @@ -91,6 +94,7 @@ config SND_HDA_CODEC_REALTEK tristate "Build Realtek HD-audio codec support" select SND_HDA_GENERIC + select SND_HDA_GENERIC_LEDS help Say Y or M here to include Realtek HD-audio codec support in snd-hda-intel driver, such as ALC880. @@ -111,6 +115,7 @@ config SND_HDA_CODEC_SIGMATEL tristate "Build IDT/Sigmatel HD-audio codec support" select SND_HDA_GENERIC + select SND_HDA_GENERIC_LEDS help Say Y or M here to include IDT (Sigmatel) HD-audio codec support in snd-hda-intel driver, such as STAC9200. @@ -155,6 +160,7 @@ config SND_HDA_CODEC_CONEXANT tristate "Build Conexant HD-audio codec support" select SND_HDA_GENERIC + select SND_HDA_GENERIC_LEDS help Say Y or M here to include Conexant HD-audio codec support in snd-hda-intel driver, such as CX20549. @@ -215,6 +221,9 @@ config SND_HDA_GENERIC tristate "Enable generic HD-audio codec parser" + select LEDS_CLASS if SND_HDA_GENERIC_LEDS + select LEDS_TRIGGERS if SND_HDA_GENERIC_LEDS + select LEDS_TRIGGER_AUDIO if SND_HDA_GENERIC_LEDS help Say Y or M here to enable the generic HD-audio codec parser in snd-hda-intel driver. --- linux-azure-5.8-5.8.0.orig/sound/pci/hda/hda_codec.c +++ linux-azure-5.8-5.8.0/sound/pci/hda/hda_codec.c @@ -1799,7 +1799,7 @@ return -EBUSY; /* OK, let it free */ - snd_hdac_device_unregister(&codec->core); + device_release_driver(hda_codec_dev(codec)); /* allow device access again */ snd_hda_unlock_devices(bus); @@ -2963,21 +2963,22 @@ pm_runtime_mark_last_busy(dev); return 0; } + #endif /* CONFIG_PM */ #ifdef CONFIG_PM_SLEEP -static int hda_codec_force_resume(struct device *dev) +static int hda_codec_pm_prepare(struct device *dev) +{ + return pm_runtime_suspended(dev); +} + +static void hda_codec_pm_complete(struct device *dev) { struct hda_codec *codec = dev_to_hda_codec(dev); - int ret; - ret = pm_runtime_force_resume(dev); - /* schedule jackpoll work for jack detection update */ - if (codec->jackpoll_interval || - (pm_runtime_suspended(dev) && hda_codec_need_resume(codec))) - schedule_delayed_work(&codec->jackpoll_work, - codec->jackpoll_interval); - return ret; + if (pm_runtime_suspended(dev) && (codec->jackpoll_interval || + hda_codec_need_resume(codec) || codec->forced_resume)) + pm_request_resume(dev); } static int hda_codec_pm_suspend(struct device *dev) @@ -2989,7 +2990,7 @@ static int hda_codec_pm_resume(struct device *dev) { dev->power.power_state = PMSG_RESUME; - return hda_codec_force_resume(dev); + return pm_runtime_force_resume(dev); } static int hda_codec_pm_freeze(struct device *dev) @@ -3001,19 +3002,21 @@ static int hda_codec_pm_thaw(struct device *dev) { dev->power.power_state = PMSG_THAW; - return hda_codec_force_resume(dev); + return pm_runtime_force_resume(dev); } static int hda_codec_pm_restore(struct device *dev) { dev->power.power_state = PMSG_RESTORE; - return hda_codec_force_resume(dev); + return pm_runtime_force_resume(dev); } #endif /* CONFIG_PM_SLEEP */ /* referred in hda_bind.c */ const struct dev_pm_ops hda_codec_driver_pm = { #ifdef CONFIG_PM_SLEEP + .prepare = hda_codec_pm_prepare, + .complete = hda_codec_pm_complete, .suspend = hda_codec_pm_suspend, .resume = hda_codec_pm_resume, .freeze = hda_codec_pm_freeze, @@ -3427,7 +3430,7 @@ * @nid: NID to check / update * * Check whether the given NID is in the amp list. If it's in the list, - * check the current AMP status, and update the the power-status according + * check the current AMP status, and update the power-status according * to the mute status. * * This function is supposed to be set or called from the check_power_status --- linux-azure-5.8-5.8.0.orig/sound/pci/hda/hda_controller.h +++ linux-azure-5.8-5.8.0/sound/pci/hda/hda_controller.h @@ -41,7 +41,7 @@ /* 24 unused */ #define AZX_DCAPS_COUNT_LPIB_DELAY (1 << 25) /* Take LPIB as delay */ #define AZX_DCAPS_PM_RUNTIME (1 << 26) /* runtime PM support */ -#define AZX_DCAPS_SUSPEND_SPURIOUS_WAKEUP (1 << 27) /* Workaround for spurious wakeups after suspend */ +/* 27 unused */ #define AZX_DCAPS_CORBRP_SELF_CLEAR (1 << 28) /* CORBRP clears itself after reset */ #define AZX_DCAPS_NO_MSI64 (1 << 29) /* Stick to 32-bit MSIs */ #define AZX_DCAPS_SEPARATE_STREAM_TAG (1 << 30) /* capture and playback use separate stream tag */ @@ -143,6 +143,7 @@ unsigned int align_buffer_size:1; unsigned int region_requested:1; unsigned int disabled:1; /* disabled by vga_switcheroo */ + unsigned int pm_prepared:1; /* GTS present */ unsigned int gts_present:1; --- linux-azure-5.8-5.8.0.orig/sound/pci/hda/hda_generic.c +++ linux-azure-5.8-5.8.0/sound/pci/hda/hda_generic.c @@ -813,7 +813,7 @@ } } -/* sync power of each widget in the the given path */ +/* sync power of each widget in the given path */ static hda_nid_t path_power_update(struct hda_codec *codec, struct nid_path *path, bool allow_powerdown) @@ -1364,16 +1364,20 @@ struct nid_path *path; hda_nid_t pin = pins[i]; - path = snd_hda_get_path_from_idx(codec, path_idx[i]); - if (path) { - badness += assign_out_path_ctls(codec, path); - continue; + if (!spec->obey_preferred_dacs) { + path = snd_hda_get_path_from_idx(codec, path_idx[i]); + if (path) { + badness += assign_out_path_ctls(codec, path); + continue; + } } dacs[i] = get_preferred_dac(codec, pin); if (dacs[i]) { if (is_dac_already_used(codec, dacs[i])) badness += bad->shared_primary; + } else if (spec->obey_preferred_dacs) { + badness += BAD_NO_PRIMARY_DAC; } if (!dacs[i]) @@ -3887,6 +3891,66 @@ return 0; } +#ifdef CONFIG_SND_HDA_GENERIC_LEDS +/* + * vmaster mute LED hook helpers + */ + +static int create_mute_led_cdev(struct hda_codec *codec, + int (*callback)(struct led_classdev *, + enum led_brightness), + bool micmute) +{ + struct led_classdev *cdev; + + cdev = devm_kzalloc(&codec->core.dev, sizeof(*cdev), GFP_KERNEL); + if (!cdev) + return -ENOMEM; + + cdev->name = micmute ? "hda::micmute" : "hda::mute"; + cdev->max_brightness = 1; + cdev->default_trigger = micmute ? "audio-micmute" : "audio-mute"; + cdev->brightness_set_blocking = callback; + cdev->brightness = ledtrig_audio_get(micmute ? LED_AUDIO_MICMUTE : LED_AUDIO_MUTE); + cdev->flags = LED_CORE_SUSPENDRESUME; + + return devm_led_classdev_register(&codec->core.dev, cdev); +} + +static void vmaster_update_mute_led(void *private_data, int enabled) +{ + ledtrig_audio_set(LED_AUDIO_MUTE, enabled ? LED_OFF : LED_ON); +} + +/** + * snd_dha_gen_add_mute_led_cdev - Create a LED classdev and enable as vmaster mute LED + * @codec: the HDA codec + * @callback: the callback for LED classdev brightness_set_blocking + */ +int snd_hda_gen_add_mute_led_cdev(struct hda_codec *codec, + int (*callback)(struct led_classdev *, + enum led_brightness)) +{ + struct hda_gen_spec *spec = codec->spec; + int err; + + if (callback) { + err = create_mute_led_cdev(codec, callback, false); + if (err) { + codec_warn(codec, "failed to create a mute LED cdev\n"); + return err; + } + } + + if (spec->vmaster_mute.hook) + codec_err(codec, "vmaster hook already present before cdev!\n"); + + spec->vmaster_mute.hook = vmaster_update_mute_led; + spec->vmaster_mute_enum = 1; + return 0; +} +EXPORT_SYMBOL_GPL(snd_hda_gen_add_mute_led_cdev); + /* * mic mute LED hook helpers */ @@ -3921,8 +3985,8 @@ if (val == spec->micmute_led.led_value) return; spec->micmute_led.led_value = val; - if (spec->micmute_led.update) - spec->micmute_led.update(codec); + ledtrig_audio_set(LED_AUDIO_MICMUTE, + spec->micmute_led.led_value ? LED_ON : LED_OFF); } static void update_micmute_led(struct hda_codec *codec, @@ -3994,20 +4058,8 @@ .put = micmute_led_mode_put, }; -/** - * snd_hda_gen_add_micmute_led - helper for setting up mic mute LED hook - * @codec: the HDA codec - * @hook: the callback for updating LED - * - * Called from the codec drivers for offering the mic mute LED controls. - * When established, it sets up cap_sync_hook and triggers the callback at - * each time when the capture mixer switch changes. The callback is supposed - * to update the LED accordingly. - * - * Returns 0 if the hook is established or a negative error code. - */ -int snd_hda_gen_add_micmute_led(struct hda_codec *codec, - void (*hook)(struct hda_codec *)) +/* Set up the capture sync hook for controlling the mic-mute LED */ +static int add_micmute_led_hook(struct hda_codec *codec) { struct hda_gen_spec *spec = codec->spec; @@ -4015,48 +4067,44 @@ spec->micmute_led.capture = 0; spec->micmute_led.led_value = 0; spec->micmute_led.old_hook = spec->cap_sync_hook; - spec->micmute_led.update = hook; spec->cap_sync_hook = update_micmute_led; if (!snd_hda_gen_add_kctl(spec, NULL, &micmute_led_mode_ctl)) return -ENOMEM; return 0; } -EXPORT_SYMBOL_GPL(snd_hda_gen_add_micmute_led); - -#if IS_REACHABLE(CONFIG_LEDS_TRIGGER_AUDIO) -static void call_ledtrig_micmute(struct hda_codec *codec) -{ - struct hda_gen_spec *spec = codec->spec; - - ledtrig_audio_set(LED_AUDIO_MICMUTE, - spec->micmute_led.led_value ? LED_ON : LED_OFF); -} -#endif /** - * snd_hda_gen_fixup_micmute_led - A fixup for mic-mute LED trigger - * - * Pass this function to the quirk entry if another driver supports the - * audio mic-mute LED trigger. Then this will bind the mixer capture switch - * change with the LED. + * snd_dha_gen_add_micmute_led_cdev - Create a LED classdev and enable as mic-mute LED + * @codec: the HDA codec + * @callback: the callback for LED classdev brightness_set_blocking * - * Note that this fixup has to be called after other fixup that sets - * cap_sync_hook. Otherwise the chaining wouldn't work. + * Called from the codec drivers for offering the mic mute LED controls. + * This creates a LED classdev and sets up the cap_sync_hook that is called at + * each time when the capture mixer switch changes. * - * @codec: the HDA codec - * @fix: fixup pointer - * @action: only supports HDA_FIXUP_ACT_PROBE value + * When NULL is passed to @callback, no classdev is created but only the + * LED-trigger is set up. * + * Returns 0 or a negative error. */ -void snd_hda_gen_fixup_micmute_led(struct hda_codec *codec, - const struct hda_fixup *fix, int action) +int snd_hda_gen_add_micmute_led_cdev(struct hda_codec *codec, + int (*callback)(struct led_classdev *, + enum led_brightness)) { -#if IS_REACHABLE(CONFIG_LEDS_TRIGGER_AUDIO) - if (action == HDA_FIXUP_ACT_PROBE) - snd_hda_gen_add_micmute_led(codec, call_ledtrig_micmute); -#endif + int err; + + if (callback) { + err = create_mute_led_cdev(codec, callback, true); + if (err) { + codec_warn(codec, "failed to create a mic-mute LED cdev\n"); + return err; + } + } + + return add_micmute_led_hook(codec); } -EXPORT_SYMBOL_GPL(snd_hda_gen_fixup_micmute_led); +EXPORT_SYMBOL_GPL(snd_hda_gen_add_micmute_led_cdev); +#endif /* CONFIG_SND_HDA_GENERIC_LEDS */ /* * parse digital I/Os and set up NIDs in BIOS auto-parse mode --- linux-azure-5.8-5.8.0.orig/sound/pci/hda/hda_generic.h +++ linux-azure-5.8-5.8.0/sound/pci/hda/hda_generic.h @@ -8,6 +8,8 @@ #ifndef __SOUND_HDA_GENERIC_H #define __SOUND_HDA_GENERIC_H +#include + /* table entry for multi-io paths */ struct hda_multi_io { hda_nid_t pin; /* multi-io widget pin NID */ @@ -86,7 +88,6 @@ unsigned int led_mode; unsigned int capture; unsigned int led_value; - void (*update)(struct hda_codec *codec); void (*old_hook)(struct hda_codec *codec, struct snd_kcontrol *kcontrol, struct snd_ctl_elem_value *ucontrol); @@ -236,6 +237,7 @@ unsigned int power_down_unused:1; /* power down unused widgets */ unsigned int dac_min_mute:1; /* minimal = mute for DACs */ unsigned int suppress_vmaster:1; /* don't create vmaster kctls */ + unsigned int obey_preferred_dacs:1; /* obey preferred_dacs assignment */ /* other internal flags */ unsigned int no_analog:1; /* digital I/O only */ @@ -353,9 +355,11 @@ void snd_hda_gen_stream_pm(struct hda_codec *codec, hda_nid_t nid, bool on); int snd_hda_gen_fix_pin_power(struct hda_codec *codec, hda_nid_t pin); -int snd_hda_gen_add_micmute_led(struct hda_codec *codec, - void (*hook)(struct hda_codec *)); -void snd_hda_gen_fixup_micmute_led(struct hda_codec *codec, - const struct hda_fixup *fix, int action); +int snd_hda_gen_add_mute_led_cdev(struct hda_codec *codec, + int (*callback)(struct led_classdev *, + enum led_brightness)); +int snd_hda_gen_add_micmute_led_cdev(struct hda_codec *codec, + int (*callback)(struct led_classdev *, + enum led_brightness)); #endif /* __SOUND_HDA_GENERIC_H */ --- linux-azure-5.8-5.8.0.orig/sound/pci/hda/hda_intel.c +++ linux-azure-5.8-5.8.0/sound/pci/hda/hda_intel.c @@ -298,8 +298,7 @@ /* PCH for HSW/BDW; with runtime PM */ /* no i915 binding for this as HSW/BDW has another controller for HDMI */ #define AZX_DCAPS_INTEL_PCH \ - (AZX_DCAPS_INTEL_PCH_BASE | AZX_DCAPS_PM_RUNTIME |\ - AZX_DCAPS_SUSPEND_SPURIOUS_WAKEUP) + (AZX_DCAPS_INTEL_PCH_BASE | AZX_DCAPS_PM_RUNTIME) /* HSW HDMI */ #define AZX_DCAPS_INTEL_HASWELL \ @@ -986,7 +985,7 @@ display_power(chip, false); } -static void __azx_runtime_resume(struct azx *chip, bool from_rt) +static void __azx_runtime_resume(struct azx *chip) { struct hda_intel *hda = container_of(chip, struct hda_intel, chip); struct hdac_bus *bus = azx_bus(chip); @@ -1003,12 +1002,15 @@ azx_init_pci(chip); hda_intel_init_chip(chip, true); - if (status && from_rt) { - list_for_each_codec(codec, &chip->bus) - if (!codec->relaxed_resume && - (status & (1 << codec->addr))) - schedule_delayed_work(&codec->jackpoll_work, - codec->jackpoll_interval); + /* Avoid codec resume if runtime resume is for system suspend */ + if (!chip->pm_prepared) { + list_for_each_codec(codec, &chip->bus) { + if (codec->relaxed_resume) + continue; + + if (codec->forced_resume || (status & (1 << codec->addr))) + pm_request_resume(hda_codec_dev(codec)); + } } /* power down again for link-controlled chips */ @@ -1017,6 +1019,29 @@ } #ifdef CONFIG_PM_SLEEP +static int azx_prepare(struct device *dev) +{ + struct snd_card *card = dev_get_drvdata(dev); + struct azx *chip; + + chip = card->private_data; + chip->pm_prepared = 1; + + /* HDA controller always requires different WAKEEN for runtime suspend + * and system suspend, so don't use direct-complete here. + */ + return 0; +} + +static void azx_complete(struct device *dev) +{ + struct snd_card *card = dev_get_drvdata(dev); + struct azx *chip; + + chip = card->private_data; + chip->pm_prepared = 0; +} + static int azx_suspend(struct device *dev) { struct snd_card *card = dev_get_drvdata(dev); @@ -1028,15 +1053,7 @@ chip = card->private_data; bus = azx_bus(chip); - snd_power_change_state(card, SNDRV_CTL_POWER_D3hot); - /* An ugly workaround: direct call of __azx_runtime_suspend() and - * __azx_runtime_resume() for old Intel platforms that suffer from - * spurious wakeups after S3 suspend - */ - if (chip->driver_caps & AZX_DCAPS_SUSPEND_SPURIOUS_WAKEUP) - __azx_runtime_suspend(chip); - else - pm_runtime_force_suspend(dev); + __azx_runtime_suspend(chip); if (bus->irq >= 0) { free_irq(bus->irq, chip); bus->irq = -1; @@ -1065,11 +1082,7 @@ if (azx_acquire_irq(chip, 1) < 0) return -EIO; - if (chip->driver_caps & AZX_DCAPS_SUSPEND_SPURIOUS_WAKEUP) - __azx_runtime_resume(chip, false); - else - pm_runtime_force_resume(dev); - snd_power_change_state(card, SNDRV_CTL_POWER_D0); + __azx_runtime_resume(chip); trace_azx_resume(chip); return 0; @@ -1117,10 +1130,7 @@ chip = card->private_data; /* enable controller wake up event */ - if (snd_power_get_state(card) == SNDRV_CTL_POWER_D0) { - azx_writew(chip, WAKEEN, azx_readw(chip, WAKEEN) | - STATESTS_INT_MASK); - } + azx_writew(chip, WAKEEN, azx_readw(chip, WAKEEN) | STATESTS_INT_MASK); __azx_runtime_suspend(chip); trace_azx_runtime_suspend(chip); @@ -1131,18 +1141,14 @@ { struct snd_card *card = dev_get_drvdata(dev); struct azx *chip; - bool from_rt = snd_power_get_state(card) == SNDRV_CTL_POWER_D0; if (!azx_is_pm_ready(card)) return 0; chip = card->private_data; - __azx_runtime_resume(chip, from_rt); + __azx_runtime_resume(chip); /* disable controller Wake Up event*/ - if (from_rt) { - azx_writew(chip, WAKEEN, azx_readw(chip, WAKEEN) & - ~STATESTS_INT_MASK); - } + azx_writew(chip, WAKEEN, azx_readw(chip, WAKEEN) & ~STATESTS_INT_MASK); trace_azx_runtime_resume(chip); return 0; @@ -1176,6 +1182,8 @@ static const struct dev_pm_ops azx_pm = { SET_SYSTEM_SLEEP_PM_OPS(azx_suspend, azx_resume) #ifdef CONFIG_PM_SLEEP + .prepare = azx_prepare, + .complete = azx_complete, .freeze_noirq = azx_freeze_noirq, .thaw_noirq = azx_thaw_noirq, #endif @@ -2212,8 +2220,6 @@ SND_PCI_QUIRK(0x1849, 0x7662, "Asrock H81M-HDS", 0), /* https://bugzilla.redhat.com/show_bug.cgi?id=1525104 */ SND_PCI_QUIRK(0x1043, 0x8733, "Asus Prime X370-Pro", 0), - /* https://bugzilla.redhat.com/show_bug.cgi?id=1581607 */ - SND_PCI_QUIRK(0x1558, 0x3501, "Clevo W35xSS_370SS", 0), /* https://bugzilla.redhat.com/show_bug.cgi?id=1525104 */ SND_PCI_QUIRK(0x1558, 0x6504, "Clevo W65_67SB", 0), /* https://bugzilla.redhat.com/show_bug.cgi?id=1525104 */ @@ -2475,9 +2481,14 @@ /* CometLake-H */ { PCI_DEVICE(0x8086, 0x06C8), .driver_data = AZX_DRIVER_SKL | AZX_DCAPS_INTEL_SKYLAKE}, + { PCI_DEVICE(0x8086, 0xf1c8), + .driver_data = AZX_DRIVER_SKL | AZX_DCAPS_INTEL_SKYLAKE}, /* CometLake-S */ { PCI_DEVICE(0x8086, 0xa3f0), .driver_data = AZX_DRIVER_SKL | AZX_DCAPS_INTEL_SKYLAKE}, + /* CometLake-R */ + { PCI_DEVICE(0x8086, 0xf0c8), + .driver_data = AZX_DRIVER_SKL | AZX_DCAPS_INTEL_SKYLAKE}, /* Icelake */ { PCI_DEVICE(0x8086, 0x34c8), .driver_data = AZX_DRIVER_SKL | AZX_DCAPS_INTEL_SKYLAKE}, @@ -2495,6 +2506,15 @@ /* Tigerlake-H */ { PCI_DEVICE(0x8086, 0x43c8), .driver_data = AZX_DRIVER_SKL | AZX_DCAPS_INTEL_SKYLAKE}, + /* DG1 */ + { PCI_DEVICE(0x8086, 0x490d), + .driver_data = AZX_DRIVER_SKL | AZX_DCAPS_INTEL_SKYLAKE}, + /* Alderlake-S */ + { PCI_DEVICE(0x8086, 0x7ad0), + .driver_data = AZX_DRIVER_SKL | AZX_DCAPS_INTEL_SKYLAKE}, + /* Alderlake-P */ + { PCI_DEVICE(0x8086, 0x51c8), + .driver_data = AZX_DRIVER_SKL | AZX_DCAPS_INTEL_SKYLAKE}, /* Elkhart Lake */ { PCI_DEVICE(0x8086, 0x4b55), .driver_data = AZX_DRIVER_SKL | AZX_DCAPS_INTEL_SKYLAKE}, --- linux-azure-5.8-5.8.0.orig/sound/pci/hda/hda_jack.c +++ linux-azure-5.8-5.8.0/sound/pci/hda/hda_jack.c @@ -275,6 +275,23 @@ } EXPORT_SYMBOL_GPL(snd_hda_jack_detect_state_mst); +static struct hda_jack_callback * +find_callback_from_list(struct hda_jack_tbl *jack, + hda_jack_callback_fn func) +{ + struct hda_jack_callback *cb; + + if (!func) + return NULL; + + for (cb = jack->callback; cb; cb = cb->next) { + if (cb->func == func) + return cb; + } + + return NULL; +} + /** * snd_hda_jack_detect_enable_mst - enable the jack-detection * @codec: the HDA codec @@ -297,7 +314,10 @@ jack = snd_hda_jack_tbl_new(codec, nid, dev_id); if (!jack) return ERR_PTR(-ENOMEM); - if (func) { + + callback = find_callback_from_list(jack, func); + + if (func && !callback) { callback = kzalloc(sizeof(*callback), GFP_KERNEL); if (!callback) return ERR_PTR(-ENOMEM); --- linux-azure-5.8-5.8.0.orig/sound/pci/hda/hda_sysfs.c +++ linux-azure-5.8-5.8.0/sound/pci/hda/hda_sysfs.c @@ -139,7 +139,7 @@ "The codec is being used, can't reconfigure.\n"); goto error; } - err = snd_hda_codec_configure(codec); + err = device_reprobe(hda_codec_dev(codec)); if (err < 0) goto error; err = snd_card_register(codec->card); --- linux-azure-5.8-5.8.0.orig/sound/pci/hda/hda_tegra.c +++ linux-azure-5.8-5.8.0/sound/pci/hda/hda_tegra.c @@ -179,6 +179,10 @@ struct hda_tegra *hda = container_of(chip, struct hda_tegra, chip); if (chip && chip->running) { + /* enable controller wake up event */ + azx_writew(chip, WAKEEN, azx_readw(chip, WAKEEN) | + STATESTS_INT_MASK); + azx_stop_chip(chip); azx_enter_link_reset(chip); } @@ -200,6 +204,9 @@ if (chip && chip->running) { hda_tegra_init(hda); azx_init_chip(chip, 1); + /* disable controller wake up event*/ + azx_writew(chip, WAKEEN, azx_readw(chip, WAKEEN) & + ~STATESTS_INT_MASK); } return 0; @@ -378,7 +385,7 @@ * in powers of 2, next available ratio is 16 which can be * used as a limiting factor here. */ - if (of_device_is_compatible(np, "nvidia,tegra194-hda")) + if (of_device_is_compatible(np, "nvidia,tegra30-hda")) chip->bus.core.sdo_limit = 16; /* codec detection */ --- linux-azure-5.8-5.8.0.orig/sound/pci/hda/patch_ca0132.c +++ linux-azure-5.8-5.8.0/sound/pci/hda/patch_ca0132.c @@ -93,7 +93,7 @@ }; /* Strings for Input Source Enum Control */ -static const char *const in_src_str[3] = {"Rear Mic", "Line", "Front Mic" }; +static const char *const in_src_str[3] = { "Microphone", "Line In", "Front Microphone" }; #define IN_SRC_NUM_OF_INPUTS 3 enum { REAR_MIC, @@ -1065,6 +1065,7 @@ QUIRK_R3DI, QUIRK_R3D, QUIRK_AE5, + QUIRK_AE7, }; #ifdef CONFIG_PCI @@ -1146,7 +1147,7 @@ { 0x0e, 0x01c510f0 }, /* SPDIF In */ { 0x0f, 0x01017114 }, /* Port A -- Rear L/R. */ { 0x10, 0x01017012 }, /* Port D -- Center/LFE or FP Hp */ - { 0x11, 0x01a170ff }, /* Port B -- LineMicIn2 / Rear Headphone */ + { 0x11, 0x012170ff }, /* Port B -- LineMicIn2 / Rear Headphone */ { 0x12, 0x01a170f0 }, /* Port C -- LineIn1 */ { 0x13, 0x908700f0 }, /* What U Hear In*/ { 0x18, 0x50d000f0 }, /* N/A */ @@ -1182,7 +1183,9 @@ SND_PCI_QUIRK(0x1458, 0xA036, "Gigabyte GA-Z170X-Gaming 7", QUIRK_R3DI), SND_PCI_QUIRK(0x3842, 0x1038, "EVGA X99 Classified", QUIRK_R3DI), SND_PCI_QUIRK(0x1102, 0x0013, "Recon3D", QUIRK_R3D), + SND_PCI_QUIRK(0x1102, 0x0018, "Recon3D", QUIRK_R3D), SND_PCI_QUIRK(0x1102, 0x0051, "Sound Blaster AE-5", QUIRK_AE5), + SND_PCI_QUIRK(0x1102, 0x0081, "Sound Blaster AE-7", QUIRK_AE7), {} }; @@ -4671,9 +4674,18 @@ tmp = FLOAT_ONE; break; case QUIRK_AE5: - ca0113_mmio_command_set(codec, 0x48, 0x28, 0x00); + ca0113_mmio_command_set(codec, 0x30, 0x28, 0x00); tmp = FLOAT_THREE; break; + case QUIRK_AE7: + ca0113_mmio_command_set(codec, 0x30, 0x28, 0x00); + tmp = FLOAT_THREE; + chipio_set_conn_rate(codec, MEM_CONNID_MICIN2, + SR_96_000); + chipio_set_conn_rate(codec, MEM_CONNID_MICOUT2, + SR_96_000); + dspio_set_uint_param(codec, 0x80, 0x01, FLOAT_ZERO); + break; default: tmp = FLOAT_ONE; break; @@ -4717,7 +4729,15 @@ r3di_gpio_mic_set(codec, R3DI_REAR_MIC); break; case QUIRK_AE5: - ca0113_mmio_command_set(codec, 0x48, 0x28, 0x00); + ca0113_mmio_command_set(codec, 0x30, 0x28, 0x00); + break; + case QUIRK_AE7: + ca0113_mmio_command_set(codec, 0x30, 0x28, 0x3f); + chipio_set_conn_rate(codec, MEM_CONNID_MICIN2, + SR_96_000); + chipio_set_conn_rate(codec, MEM_CONNID_MICOUT2, + SR_96_000); + dspio_set_uint_param(codec, 0x80, 0x01, FLOAT_ZERO); break; default: break; @@ -4728,7 +4748,10 @@ if (ca0132_quirk(spec) == QUIRK_R3DI) chipio_set_conn_rate(codec, 0x0F, SR_96_000); - tmp = FLOAT_ZERO; + if (ca0132_quirk(spec) == QUIRK_AE7) + tmp = FLOAT_THREE; + else + tmp = FLOAT_ZERO; dspio_set_uint_param(codec, 0x80, 0x00, tmp); switch (ca0132_quirk(spec)) { @@ -4756,7 +4779,7 @@ tmp = FLOAT_ONE; break; case QUIRK_AE5: - ca0113_mmio_command_set(codec, 0x48, 0x28, 0x3f); + ca0113_mmio_command_set(codec, 0x30, 0x28, 0x3f); tmp = FLOAT_THREE; break; default: @@ -5748,6 +5771,11 @@ return 0; } + if (nid == ZXR_HEADPHONE_GAIN) { + *valp = spec->zxr_gain_set; + return 0; + } + return 0; } --- linux-azure-5.8-5.8.0.orig/sound/pci/hda/patch_conexant.c +++ linux-azure-5.8-5.8.0/sound/pci/hda/patch_conexant.c @@ -137,14 +137,16 @@ } /* turn on/off EAPD according to Master switch (inversely!) for mute LED */ -static void cx_auto_vmaster_hook_mute_led(void *private_data, int enabled) +static int cx_auto_vmaster_mute_led(struct led_classdev *led_cdev, + enum led_brightness brightness) { - struct hda_codec *codec = private_data; + struct hda_codec *codec = dev_to_hda_codec(led_cdev->dev->parent); struct conexant_spec *spec = codec->spec; snd_hda_codec_write(codec, spec->mute_led_eapd, 0, AC_VERB_SET_EAPD_BTLENABLE, - enabled ? 0x00 : 0x02); + brightness ? 0x02 : 0x00); + return 0; } static int cx_auto_init(struct hda_codec *codec) @@ -566,7 +568,7 @@ if (action == HDA_FIXUP_ACT_PRE_PROBE) { spec->mute_led_eapd = 0x1b; spec->dynamic_eapd = 1; - spec->gen.vmaster_mute.hook = cx_auto_vmaster_hook_mute_led; + snd_hda_gen_add_mute_led_cdev(codec, cx_auto_vmaster_mute_led); } } @@ -631,21 +633,25 @@ } /* turn on/off mute LED via GPIO per vmaster hook */ -static void cxt_fixup_gpio_mute_hook(void *private_data, int enabled) +static int cxt_gpio_mute_update(struct led_classdev *led_cdev, + enum led_brightness brightness) { - struct hda_codec *codec = private_data; + struct hda_codec *codec = dev_to_hda_codec(led_cdev->dev->parent); struct conexant_spec *spec = codec->spec; - /* muted -> LED on */ - cxt_update_gpio_led(codec, spec->gpio_mute_led_mask, !enabled); + + cxt_update_gpio_led(codec, spec->gpio_mute_led_mask, brightness); + return 0; } /* turn on/off mic-mute LED via GPIO per capture hook */ -static void cxt_gpio_micmute_update(struct hda_codec *codec) +static int cxt_gpio_micmute_update(struct led_classdev *led_cdev, + enum led_brightness brightness) { + struct hda_codec *codec = dev_to_hda_codec(led_cdev->dev->parent); struct conexant_spec *spec = codec->spec; - cxt_update_gpio_led(codec, spec->gpio_mic_led_mask, - spec->gen.micmute_led.led_value); + cxt_update_gpio_led(codec, spec->gpio_mic_led_mask, brightness); + return 0; } @@ -660,12 +666,12 @@ }; if (action == HDA_FIXUP_ACT_PRE_PROBE) { - spec->gen.vmaster_mute.hook = cxt_fixup_gpio_mute_hook; + snd_hda_gen_add_mute_led_cdev(codec, cxt_gpio_mute_update); spec->gpio_led = 0; spec->mute_led_polarity = 0; spec->gpio_mute_led_mask = 0x01; spec->gpio_mic_led_mask = 0x02; - snd_hda_gen_add_micmute_led(codec, cxt_gpio_micmute_update); + snd_hda_gen_add_micmute_led_cdev(codec, cxt_gpio_micmute_update); } snd_hda_add_verbs(codec, gpio_init); if (spec->gpio_led) @@ -988,8 +994,6 @@ cx_auto_parse_eapd(codec); spec->gen.own_eapd_ctl = 1; - if (spec->dynamic_eapd) - spec->gen.vmaster_mute.hook = cx_auto_vmaster_hook; switch (codec->core.vendor_id) { case 0x14f15045: @@ -1022,17 +1026,8 @@ break; } - /* Show mute-led control only on HP laptops - * This is a sort of white-list: on HP laptops, EAPD corresponds - * only to the mute-LED without actualy amp function. Meanwhile, - * others may use EAPD really as an amp switch, so it might be - * not good to expose it blindly. - */ - switch (codec->core.subsystem_id >> 16) { - case 0x103c: - spec->gen.vmaster_mute_enum = 1; - break; - } + if (!spec->gen.vmaster_mute.hook && spec->dynamic_eapd) + spec->gen.vmaster_mute.hook = cx_auto_vmaster_hook; snd_hda_apply_fixup(codec, HDA_FIXUP_ACT_PRE_PROBE); @@ -1075,6 +1070,7 @@ static const struct hda_device_id snd_hda_id_conexant[] = { HDA_CODEC_ENTRY(0x14f11f86, "CX8070", patch_conexant_auto), HDA_CODEC_ENTRY(0x14f12008, "CX8200", patch_conexant_auto), + HDA_CODEC_ENTRY(0x14f120d0, "CX11970", patch_conexant_auto), HDA_CODEC_ENTRY(0x14f15045, "CX20549 (Venice)", patch_conexant_auto), HDA_CODEC_ENTRY(0x14f15047, "CX20551 (Waikiki)", patch_conexant_auto), HDA_CODEC_ENTRY(0x14f15051, "CX20561 (Hermosa)", patch_conexant_auto), --- linux-azure-5.8-5.8.0.orig/sound/pci/hda/patch_hdmi.c +++ linux-azure-5.8-5.8.0/sound/pci/hda/patch_hdmi.c @@ -151,6 +151,7 @@ bool dyn_pin_out; bool dyn_pcm_assign; + bool dyn_pcm_no_legacy; bool intel_hsw_fixup; /* apply Intel platform-specific fixups */ /* * Non-generic VIA/NVIDIA specific @@ -160,6 +161,7 @@ bool use_acomp_notifier; /* use eld_notify callback for hotplug */ bool acomp_registered; /* audio component registered in this driver */ + bool force_connect; /* force connectivity */ struct drm_audio_component_audio_ops drm_audio_ops; int (*port2pin)(struct hda_codec *, int); /* reverse port/pin mapping */ @@ -1333,6 +1335,12 @@ { int i; + /* on the new machines, try to assign the pcm slot dynamically, + * not use the preferred fixed map (legacy way) anymore. + */ + if (spec->dyn_pcm_no_legacy) + goto last_try; + /* * generic_hdmi_build_pcms() may allocate extra PCMs on some * platforms (with maximum of 'num_nids + dev_num - 1') @@ -1362,6 +1370,7 @@ return i; } + last_try: /* the last try; check the empty slots in pins */ for (i = 0; i < spec->num_nids; i++) { if (!test_bit(i, &spec->pcm_bitmap)) @@ -1701,7 +1710,8 @@ * all device entries on the same pin */ config = snd_hda_codec_get_pincfg(codec, pin_nid); - if (get_defcfg_connect(config) == AC_JACK_PORT_NONE) + if (get_defcfg_connect(config) == AC_JACK_PORT_NONE && + !spec->force_connect) return 0; /* @@ -1803,11 +1813,19 @@ return 0; } +static const struct snd_pci_quirk force_connect_list[] = { + SND_PCI_QUIRK(0x103c, 0x870f, "HP", 1), + SND_PCI_QUIRK(0x103c, 0x871a, "HP", 1), + {} +}; + static int hdmi_parse_codec(struct hda_codec *codec) { + struct hdmi_spec *spec = codec->spec; hda_nid_t start_nid; unsigned int caps; int i, nodes; + const struct snd_pci_quirk *q; nodes = snd_hda_get_sub_nodes(codec, codec->core.afg, &start_nid); if (!start_nid || nodes < 0) { @@ -1815,6 +1833,11 @@ return -EINVAL; } + q = snd_pci_quirk_lookup(codec->bus->pci, force_connect_list); + + if (q && q->value) + spec->force_connect = true; + /* * hdmi_add_pin() assumes total amount of converters to * be known, so first discover all converters @@ -1974,22 +1997,24 @@ int pinctl; int err = 0; + mutex_lock(&spec->pcm_lock); if (hinfo->nid) { pcm_idx = hinfo_to_pcm_index(codec, hinfo); - if (snd_BUG_ON(pcm_idx < 0)) - return -EINVAL; + if (snd_BUG_ON(pcm_idx < 0)) { + err = -EINVAL; + goto unlock; + } cvt_idx = cvt_nid_to_cvt_index(codec, hinfo->nid); - if (snd_BUG_ON(cvt_idx < 0)) - return -EINVAL; + if (snd_BUG_ON(cvt_idx < 0)) { + err = -EINVAL; + goto unlock; + } per_cvt = get_cvt(spec, cvt_idx); - - snd_BUG_ON(!per_cvt->assigned); per_cvt->assigned = 0; hinfo->nid = 0; azx_stream(get_azx_dev(substream))->stripe = 0; - mutex_lock(&spec->pcm_lock); snd_hda_spdif_ctls_unassign(codec, pcm_idx); clear_bit(pcm_idx, &spec->pcm_in_use); pin_idx = hinfo_to_pin_index(codec, hinfo); @@ -2019,10 +2044,11 @@ per_pin->setup = false; per_pin->channels = 0; mutex_unlock(&per_pin->lock); - unlock: - mutex_unlock(&spec->pcm_lock); } +unlock: + mutex_unlock(&spec->pcm_lock); + return err; } @@ -2722,6 +2748,7 @@ hda_nid_t cvt_nid) { if (per_pin) { + haswell_verify_D0(codec, per_pin->cvt_nid, per_pin->pin_nid); snd_hda_set_dev_select(codec, per_pin->pin_nid, per_pin->dev_id); intel_verify_pin_cvt_connect(codec, per_pin); @@ -2833,8 +2860,16 @@ * the index indicate the port number. */ static const int map[] = {0x4, 0x6, 0x8, 0xa, 0xb, 0xc, 0xd, 0xe, 0xf}; + int ret; - return intel_hsw_common_init(codec, 0x02, map, ARRAY_SIZE(map)); + ret = intel_hsw_common_init(codec, 0x02, map, ARRAY_SIZE(map)); + if (!ret) { + struct hdmi_spec *spec = codec->spec; + + spec->dyn_pcm_no_legacy = true; + } + + return ret; } /* Intel Baytrail and Braswell; with eld notifier */ @@ -3655,6 +3690,7 @@ static int patch_tegra_hdmi(struct hda_codec *codec) { + struct hdmi_spec *spec; int err; err = patch_generic_hdmi(codec); @@ -3662,6 +3698,10 @@ return err; codec->patch_ops.build_pcms = tegra_hdmi_build_pcms; + spec = codec->spec; + spec->chmap.ops.chmap_cea_alloc_validate_get_type = + nvhdmi_chmap_cea_alloc_validate_get_type; + spec->chmap.ops.chmap_validate = nvhdmi_chmap_validate; return 0; } @@ -4184,6 +4224,10 @@ HDA_CODEC_ENTRY(0x8086280d, "Geminilake HDMI", patch_i915_glk_hdmi), HDA_CODEC_ENTRY(0x8086280f, "Icelake HDMI", patch_i915_icl_hdmi), HDA_CODEC_ENTRY(0x80862812, "Tigerlake HDMI", patch_i915_tgl_hdmi), +HDA_CODEC_ENTRY(0x80862814, "DG1 HDMI", patch_i915_tgl_hdmi), +HDA_CODEC_ENTRY(0x80862815, "Alderlake HDMI", patch_i915_tgl_hdmi), +HDA_CODEC_ENTRY(0x8086281c, "Alderlake-P HDMI", patch_i915_tgl_hdmi), +HDA_CODEC_ENTRY(0x80862816, "Rocketlake HDMI", patch_i915_tgl_hdmi), HDA_CODEC_ENTRY(0x8086281a, "Jasperlake HDMI", patch_i915_icl_hdmi), HDA_CODEC_ENTRY(0x8086281b, "Elkhartlake HDMI", patch_i915_icl_hdmi), HDA_CODEC_ENTRY(0x80862880, "CedarTrail HDMI", patch_generic_hdmi), --- linux-azure-5.8-5.8.0.orig/sound/pci/hda/patch_realtek.c +++ linux-azure-5.8-5.8.0/sound/pci/hda/patch_realtek.c @@ -67,6 +67,13 @@ unsigned int fixup:1; /* Means that this sku is set by driver, not read from hw */ }; +struct alc_coef_led { + unsigned int idx; + unsigned int mask; + unsigned int on; + unsigned int off; +}; + struct alc_spec { struct hda_gen_spec gen; /* must be at head */ @@ -80,7 +87,7 @@ unsigned int gpio_data; bool gpio_write_delay; /* add a delay before writing gpio_data */ - /* mute LED for HP laptops, see alc269_fixup_mic_mute_hook() */ + /* mute LED for HP laptops, see vref_mute_led_set() */ int mute_led_polarity; int micmute_led_polarity; hda_nid_t mute_led_nid; @@ -88,14 +95,8 @@ unsigned int gpio_mute_led_mask; unsigned int gpio_mic_led_mask; - unsigned int mute_led_coef_idx; - unsigned int mute_led_coefbit_mask; - unsigned int mute_led_coefbit_on; - unsigned int mute_led_coefbit_off; - unsigned int mic_led_coef_idx; - unsigned int mic_led_coefbit_mask; - unsigned int mic_led_coefbit_on; - unsigned int mic_led_coefbit_off; + struct alc_coef_led mute_led_coef; + struct alc_coef_led mic_led_coef; hda_nid_t headset_mic_pin; hda_nid_t headphone_mic_pin; @@ -118,6 +119,7 @@ unsigned int no_shutup_pins:1; unsigned int ultra_low_power:1; unsigned int has_hs_key:1; + unsigned int no_internal_mic_pin:1; /* for PLL fix */ hda_nid_t pll_nid; @@ -287,6 +289,13 @@ alc_fixup_gpio(codec, action, 0x04); } +static void alc_fixup_micmute_led(struct hda_codec *codec, + const struct hda_fixup *fix, int action) +{ + if (action == HDA_FIXUP_ACT_PROBE) + snd_hda_gen_add_micmute_led_cdev(codec, NULL); +} + /* * Fix hardware PLL issue * On some codecs, the analog PLL gating control must be off while @@ -437,6 +446,7 @@ alc_update_coef_idx(codec, 0x7, 1<<5, 0); break; case 0x10ec0892: + case 0x10ec0897: alc_update_coef_idx(codec, 0x7, 1<<5, 0); break; case 0x10ec0899: @@ -1142,6 +1152,7 @@ codec->single_adc_amp = 1; /* FIXME: do we need this for all Realtek codec models? */ codec->spdif_status_reset = 1; + codec->forced_resume = 1; codec->patch_ops = alc_patch_ops; err = alc_codec_rename_from_preset(codec); @@ -1894,6 +1905,7 @@ ALC889_FIXUP_FRONT_HP_NO_PRESENCE, ALC889_FIXUP_VAIO_TT, ALC888_FIXUP_EEE1601, + ALC886_FIXUP_EAPD, ALC882_FIXUP_EAPD, ALC883_FIXUP_EAPD, ALC883_FIXUP_ACER_EAPD, @@ -1921,6 +1933,8 @@ ALC1220_FIXUP_CLEVO_P950, ALC1220_FIXUP_CLEVO_PB51ED, ALC1220_FIXUP_CLEVO_PB51ED_PINS, + ALC887_FIXUP_ASUS_AUDIO, + ALC887_FIXUP_ASUS_HMIC, }; static void alc889_fixup_coef(struct hda_codec *codec, @@ -2133,6 +2147,31 @@ alc_fixup_headset_mode_no_hp_mic(codec, fix, action); } +static void alc887_asus_hp_automute_hook(struct hda_codec *codec, + struct hda_jack_callback *jack) +{ + struct alc_spec *spec = codec->spec; + unsigned int vref; + + snd_hda_gen_hp_automute(codec, jack); + + if (spec->gen.hp_jack_present) + vref = AC_PINCTL_VREF_80; + else + vref = AC_PINCTL_VREF_HIZ; + snd_hda_set_pin_ctl(codec, 0x19, PIN_HP | vref); +} + +static void alc887_fixup_asus_jack(struct hda_codec *codec, + const struct hda_fixup *fix, int action) +{ + struct alc_spec *spec = codec->spec; + if (action != HDA_FIXUP_ACT_PROBE) + return; + snd_hda_set_pin_ctl_cache(codec, 0x1b, PIN_HP); + spec->gen.hp_automute_hook = alc887_asus_hp_automute_hook; +} + static const struct hda_fixup alc882_fixups[] = { [ALC882_FIXUP_ABIT_AW9D_MAX] = { .type = HDA_FIXUP_PINS, @@ -2200,6 +2239,15 @@ { } } }, + [ALC886_FIXUP_EAPD] = { + .type = HDA_FIXUP_VERBS, + .v.verbs = (const struct hda_verb[]) { + /* change to EAPD mode */ + { 0x20, AC_VERB_SET_COEF_INDEX, 0x07 }, + { 0x20, AC_VERB_SET_PROC_COEF, 0x0068 }, + { } + } + }, [ALC882_FIXUP_EAPD] = { .type = HDA_FIXUP_VERBS, .v.verbs = (const struct hda_verb[]) { @@ -2390,6 +2438,20 @@ .chained = true, .chain_id = ALC1220_FIXUP_CLEVO_PB51ED, }, + [ALC887_FIXUP_ASUS_AUDIO] = { + .type = HDA_FIXUP_PINS, + .v.pins = (const struct hda_pintbl[]) { + { 0x15, 0x02a14150 }, /* use as headset mic, without its own jack detect */ + { 0x19, 0x22219420 }, + {} + }, + }, + [ALC887_FIXUP_ASUS_HMIC] = { + .type = HDA_FIXUP_FUNC, + .v.func = alc887_fixup_asus_jack, + .chained = true, + .chain_id = ALC887_FIXUP_ASUS_AUDIO, + }, }; static const struct snd_pci_quirk alc882_fixup_tbl[] = { @@ -2423,6 +2485,7 @@ SND_PCI_QUIRK(0x1043, 0x13c2, "Asus A7M", ALC882_FIXUP_EAPD), SND_PCI_QUIRK(0x1043, 0x1873, "ASUS W90V", ALC882_FIXUP_ASUS_W90V), SND_PCI_QUIRK(0x1043, 0x1971, "Asus W2JC", ALC882_FIXUP_ASUS_W2JC), + SND_PCI_QUIRK(0x1043, 0x2390, "Asus D700SA", ALC887_FIXUP_ASUS_HMIC), SND_PCI_QUIRK(0x1043, 0x835f, "Asus Eee 1601", ALC888_FIXUP_EEE1601), SND_PCI_QUIRK(0x1043, 0x84bc, "ASUS ET2700", ALC887_FIXUP_ASUS_BASS), SND_PCI_QUIRK(0x1043, 0x8691, "ASUS ROG Ranger VIII", ALC882_FIXUP_GPIO3), @@ -2457,12 +2520,14 @@ SND_PCI_QUIRK(0x106b, 0x4a00, "Macbook 5,2", ALC889_FIXUP_MBA11_VREF), SND_PCI_QUIRK(0x1071, 0x8258, "Evesham Voyaeger", ALC882_FIXUP_EAPD), + SND_PCI_QUIRK(0x13fe, 0x1009, "Advantech MIT-W101", ALC886_FIXUP_EAPD), SND_PCI_QUIRK(0x1458, 0xa002, "Gigabyte EP45-DS3/Z87X-UD3H", ALC889_FIXUP_FRONT_HP_NO_PRESENCE), SND_PCI_QUIRK(0x1458, 0xa0b8, "Gigabyte AZ370-Gaming", ALC1220_FIXUP_GB_DUAL_CODECS), SND_PCI_QUIRK(0x1458, 0xa0cd, "Gigabyte X570 Aorus Master", ALC1220_FIXUP_CLEVO_P950), SND_PCI_QUIRK(0x1458, 0xa0ce, "Gigabyte X570 Aorus Xtreme", ALC1220_FIXUP_CLEVO_P950), SND_PCI_QUIRK(0x1462, 0x11f7, "MSI-GE63", ALC1220_FIXUP_CLEVO_P950), SND_PCI_QUIRK(0x1462, 0x1228, "MSI-GP63", ALC1220_FIXUP_CLEVO_P950), + SND_PCI_QUIRK(0x1462, 0x1229, "MSI-GP73", ALC1220_FIXUP_CLEVO_P950), SND_PCI_QUIRK(0x1462, 0x1275, "MSI-GL63", ALC1220_FIXUP_CLEVO_P950), SND_PCI_QUIRK(0x1462, 0x1276, "MSI-GL73", ALC1220_FIXUP_CLEVO_P950), SND_PCI_QUIRK(0x1462, 0x1293, "MSI-GP65", ALC1220_FIXUP_CLEVO_P950), @@ -2471,13 +2536,23 @@ SND_PCI_QUIRK_VENDOR(0x1462, "MSI", ALC882_FIXUP_GPIO3), SND_PCI_QUIRK(0x147b, 0x107a, "Abit AW9D-MAX", ALC882_FIXUP_ABIT_AW9D_MAX), SND_PCI_QUIRK(0x1558, 0x9501, "Clevo P950HR", ALC1220_FIXUP_CLEVO_P950), + SND_PCI_QUIRK(0x1558, 0x9506, "Clevo P955HQ", ALC1220_FIXUP_CLEVO_P950), + SND_PCI_QUIRK(0x1558, 0x950A, "Clevo P955H[PR]", ALC1220_FIXUP_CLEVO_P950), SND_PCI_QUIRK(0x1558, 0x95e1, "Clevo P95xER", ALC1220_FIXUP_CLEVO_P950), SND_PCI_QUIRK(0x1558, 0x95e2, "Clevo P950ER", ALC1220_FIXUP_CLEVO_P950), + SND_PCI_QUIRK(0x1558, 0x95e3, "Clevo P955[ER]T", ALC1220_FIXUP_CLEVO_P950), + SND_PCI_QUIRK(0x1558, 0x95e4, "Clevo P955ER", ALC1220_FIXUP_CLEVO_P950), + SND_PCI_QUIRK(0x1558, 0x95e5, "Clevo P955EE6", ALC1220_FIXUP_CLEVO_P950), + SND_PCI_QUIRK(0x1558, 0x95e6, "Clevo P950R[CDF]", ALC1220_FIXUP_CLEVO_P950), SND_PCI_QUIRK(0x1558, 0x96e1, "Clevo P960[ER][CDFN]-K", ALC1220_FIXUP_CLEVO_P950), SND_PCI_QUIRK(0x1558, 0x97e1, "Clevo P970[ER][CDFN]", ALC1220_FIXUP_CLEVO_P950), + SND_PCI_QUIRK(0x1558, 0x97e2, "Clevo P970RC-M", ALC1220_FIXUP_CLEVO_P950), + SND_PCI_QUIRK(0x1558, 0x50d3, "Clevo PC50[ER][CDF]", ALC1220_FIXUP_CLEVO_PB51ED_PINS), SND_PCI_QUIRK(0x1558, 0x65d1, "Clevo PB51[ER][CDF]", ALC1220_FIXUP_CLEVO_PB51ED_PINS), + SND_PCI_QUIRK(0x1558, 0x65d2, "Clevo PB51R[CDF]", ALC1220_FIXUP_CLEVO_PB51ED_PINS), + SND_PCI_QUIRK(0x1558, 0x65e1, "Clevo PB51[ED][DF]", ALC1220_FIXUP_CLEVO_PB51ED_PINS), SND_PCI_QUIRK(0x1558, 0x67d1, "Clevo PB71[ER][CDF]", ALC1220_FIXUP_CLEVO_PB51ED_PINS), - SND_PCI_QUIRK(0x1558, 0x50d3, "Clevo PC50[ER][CDF]", ALC1220_FIXUP_CLEVO_PB51ED_PINS), + SND_PCI_QUIRK(0x1558, 0x67e1, "Clevo PB71[DE][CDF]", ALC1220_FIXUP_CLEVO_PB51ED_PINS), SND_PCI_QUIRK(0x1558, 0x70d1, "Clevo PC70[ER][CDF]", ALC1220_FIXUP_CLEVO_PB51ED_PINS), SND_PCI_QUIRK(0x1558, 0x7714, "Clevo X170", ALC1220_FIXUP_CLEVO_PB51ED_PINS), SND_PCI_QUIRK_VENDOR(0x1558, "Clevo laptop", ALC882_FIXUP_EAPD), @@ -3041,6 +3116,7 @@ case 0x10ec0215: case 0x10ec0225: case 0x10ec0285: + case 0x10ec0287: case 0x10ec0295: case 0x10ec0289: case 0x10ec0299: @@ -3067,6 +3143,7 @@ case 0x10ec0215: case 0x10ec0225: case 0x10ec0285: + case 0x10ec0287: case 0x10ec0295: case 0x10ec0289: case 0x10ec0299: @@ -3419,7 +3496,11 @@ /* 3k pull low control for Headset jack. */ /* NOTE: call this before clearing the pin, otherwise codec stalls */ - alc_update_coef_idx(codec, 0x46, 0, 3 << 12); + /* If disable 3k pulldown control for alc257, the Mic detection will not work correctly + * when booting with headset plugged. So skip setting it for the codec alc257 + */ + if (codec->core.vendor_id != 0x10ec0257) + alc_update_coef_idx(codec, 0x46, 0, 3 << 12); if (!spec->no_shutup_pins) snd_hda_codec_write(codec, hp_pin, 0, @@ -3982,25 +4063,34 @@ } } +static void alc_update_vref_led(struct hda_codec *codec, hda_nid_t pin, + bool polarity, bool on) +{ + unsigned int pinval; + + if (!pin) + return; + if (polarity) + on = !on; + pinval = snd_hda_codec_get_pin_target(codec, pin); + pinval &= ~AC_PINCTL_VREFEN; + pinval |= on ? AC_PINCTL_VREF_80 : AC_PINCTL_VREF_HIZ; + /* temporarily power up/down for setting VREF */ + snd_hda_power_up_pm(codec); + snd_hda_set_pin_ctl_cache(codec, pin, pinval); + snd_hda_power_down_pm(codec); +} /* update mute-LED according to the speaker mute state via mic VREF pin */ -static void alc269_fixup_mic_mute_hook(void *private_data, int enabled) +static int vref_mute_led_set(struct led_classdev *led_cdev, + enum led_brightness brightness) { - struct hda_codec *codec = private_data; + struct hda_codec *codec = dev_to_hda_codec(led_cdev->dev->parent); struct alc_spec *spec = codec->spec; - unsigned int pinval; - if (spec->mute_led_polarity) - enabled = !enabled; - pinval = snd_hda_codec_get_pin_target(codec, spec->mute_led_nid); - pinval &= ~AC_PINCTL_VREFEN; - pinval |= enabled ? AC_PINCTL_VREF_HIZ : AC_PINCTL_VREF_80; - if (spec->mute_led_nid) { - /* temporarily power up/down for setting VREF */ - snd_hda_power_up_pm(codec); - snd_hda_set_pin_ctl_cache(codec, spec->mute_led_nid, pinval); - snd_hda_power_down_pm(codec); - } + alc_update_vref_led(codec, spec->mute_led_nid, + spec->mute_led_polarity, brightness); + return 0; } /* Make sure the led works even in runtime suspend */ @@ -4038,8 +4128,7 @@ break; spec->mute_led_polarity = pol; spec->mute_led_nid = pin - 0x0a + 0x18; - spec->gen.vmaster_mute.hook = alc269_fixup_mic_mute_hook; - spec->gen.vmaster_mute_enum = 1; + snd_hda_gen_add_mute_led_cdev(codec, vref_mute_led_set); codec->power_filter = led_power_filter; codec_dbg(codec, "Detected mute LED for %x:%d\n", spec->mute_led_nid, @@ -4057,8 +4146,7 @@ if (action == HDA_FIXUP_ACT_PRE_PROBE) { spec->mute_led_polarity = 0; spec->mute_led_nid = pin; - spec->gen.vmaster_mute.hook = alc269_fixup_mic_mute_hook; - spec->gen.vmaster_mute_enum = 1; + snd_hda_gen_add_mute_led_cdev(codec, vref_mute_led_set); codec->power_filter = led_power_filter; } } @@ -4091,26 +4179,18 @@ } /* turn on/off mute LED via GPIO per vmaster hook */ -static void alc_fixup_gpio_mute_hook(void *private_data, int enabled) +static int gpio_mute_led_set(struct led_classdev *led_cdev, + enum led_brightness brightness) { - struct hda_codec *codec = private_data; + struct hda_codec *codec = dev_to_hda_codec(led_cdev->dev->parent); struct alc_spec *spec = codec->spec; alc_update_gpio_led(codec, spec->gpio_mute_led_mask, - spec->mute_led_polarity, enabled); + spec->mute_led_polarity, !brightness); + return 0; } /* turn on/off mic-mute LED via GPIO per capture hook */ -static void alc_gpio_micmute_update(struct hda_codec *codec) -{ - struct alc_spec *spec = codec->spec; - - alc_update_gpio_led(codec, spec->gpio_mic_led_mask, - spec->micmute_led_polarity, - spec->gen.micmute_led.led_value); -} - -#if IS_REACHABLE(CONFIG_LEDS_TRIGGER_AUDIO) static int micmute_led_set(struct led_classdev *led_cdev, enum led_brightness brightness) { @@ -4118,18 +4198,10 @@ struct alc_spec *spec = codec->spec; alc_update_gpio_led(codec, spec->gpio_mic_led_mask, - spec->micmute_led_polarity, !!brightness); + spec->micmute_led_polarity, !brightness); return 0; } -static struct led_classdev micmute_led_cdev = { - .name = "hda::micmute", - .max_brightness = 1, - .brightness_set_blocking = micmute_led_set, - .default_trigger = "audio-micmute", -}; -#endif - /* setup mute and mic-mute GPIO bits, add hooks appropriately */ static void alc_fixup_hp_gpio_led(struct hda_codec *codec, int action, @@ -4137,9 +4209,6 @@ unsigned int micmute_mask) { struct alc_spec *spec = codec->spec; -#if IS_REACHABLE(CONFIG_LEDS_TRIGGER_AUDIO) - int err; -#endif alc_fixup_gpio(codec, action, mute_mask | micmute_mask); @@ -4147,21 +4216,20 @@ return; if (mute_mask) { spec->gpio_mute_led_mask = mute_mask; - spec->gen.vmaster_mute.hook = alc_fixup_gpio_mute_hook; + snd_hda_gen_add_mute_led_cdev(codec, gpio_mute_led_set); } if (micmute_mask) { spec->gpio_mic_led_mask = micmute_mask; - snd_hda_gen_add_micmute_led(codec, alc_gpio_micmute_update); - -#if IS_REACHABLE(CONFIG_LEDS_TRIGGER_AUDIO) - micmute_led_cdev.brightness = ledtrig_audio_get(LED_AUDIO_MICMUTE); - err = devm_led_classdev_register(&codec->core.dev, &micmute_led_cdev); - if (err) - codec_warn(codec, "failed to register micmute LED\n"); -#endif + snd_hda_gen_add_micmute_led_cdev(codec, micmute_led_set); } } +static void alc236_fixup_hp_gpio_led(struct hda_codec *codec, + const struct hda_fixup *fix, int action) +{ + alc_fixup_hp_gpio_led(codec, action, 0x02, 0x01); +} + static void alc269_fixup_hp_gpio_led(struct hda_codec *codec, const struct hda_fixup *fix, int action) { @@ -4171,10 +4239,6 @@ static void alc285_fixup_hp_gpio_led(struct hda_codec *codec, const struct hda_fixup *fix, int action) { - struct alc_spec *spec = codec->spec; - - spec->micmute_led_polarity = 1; - alc_fixup_hp_gpio_led(codec, action, 0x04, 0x01); } @@ -4184,21 +4248,22 @@ alc_fixup_hp_gpio_led(codec, action, 0x02, 0x20); } -/* turn on/off mic-mute LED per capture hook */ -static void alc_cap_micmute_update(struct hda_codec *codec) +static void alc287_fixup_hp_gpio_led(struct hda_codec *codec, + const struct hda_fixup *fix, int action) +{ + alc_fixup_hp_gpio_led(codec, action, 0x10, 0); +} + +/* turn on/off mic-mute LED per capture hook via VREF change */ +static int vref_micmute_led_set(struct led_classdev *led_cdev, + enum led_brightness brightness) { + struct hda_codec *codec = dev_to_hda_codec(led_cdev->dev->parent); struct alc_spec *spec = codec->spec; - unsigned int pinval; - if (!spec->cap_mute_led_nid) - return; - pinval = snd_hda_codec_get_pin_target(codec, spec->cap_mute_led_nid); - pinval &= ~AC_PINCTL_VREFEN; - if (spec->gen.micmute_led.led_value) - pinval |= AC_PINCTL_VREF_80; - else - pinval |= AC_PINCTL_VREF_HIZ; - snd_hda_set_pin_ctl_cache(codec, spec->cap_mute_led_nid, pinval); + alc_update_vref_led(codec, spec->cap_mute_led_nid, + spec->micmute_led_polarity, brightness); + return 0; } static void alc269_fixup_hp_gpio_mic1_led(struct hda_codec *codec, @@ -4214,7 +4279,7 @@ spec->gpio_mask |= 0x10; spec->gpio_dir |= 0x10; spec->cap_mute_led_nid = 0x18; - snd_hda_gen_add_micmute_led(codec, alc_cap_micmute_update); + snd_hda_gen_add_micmute_led_cdev(codec, vref_micmute_led_set); codec->power_filter = led_power_filter; } } @@ -4227,25 +4292,54 @@ alc_fixup_hp_gpio_led(codec, action, 0x08, 0); if (action == HDA_FIXUP_ACT_PRE_PROBE) { spec->cap_mute_led_nid = 0x18; - snd_hda_gen_add_micmute_led(codec, alc_cap_micmute_update); + snd_hda_gen_add_micmute_led_cdev(codec, vref_micmute_led_set); codec->power_filter = led_power_filter; } } -/* update mute-LED according to the speaker mute state via COEF bit */ -static void alc_fixup_mute_led_coefbit_hook(void *private_data, int enabled) +/* HP Spectre x360 14 model needs a unique workaround for enabling the amp; + * it needs to toggle the GPIO0 once on and off at each time (bko#210633) + */ +static void alc245_fixup_hp_x360_amp(struct hda_codec *codec, + const struct hda_fixup *fix, int action) { - struct hda_codec *codec = private_data; struct alc_spec *spec = codec->spec; - if (spec->mute_led_polarity) - enabled = !enabled; + switch (action) { + case HDA_FIXUP_ACT_PRE_PROBE: + spec->gpio_mask |= 0x01; + spec->gpio_dir |= 0x01; + break; + case HDA_FIXUP_ACT_INIT: + /* need to toggle GPIO to enable the amp */ + alc_update_gpio_data(codec, 0x01, true); + msleep(100); + alc_update_gpio_data(codec, 0x01, false); + break; + } +} +static void alc_update_coef_led(struct hda_codec *codec, + struct alc_coef_led *led, + bool polarity, bool on) +{ + if (polarity) + on = !on; /* temporarily power up/down for setting COEF bit */ - enabled ? alc_update_coef_idx(codec, spec->mute_led_coef_idx, - spec->mute_led_coefbit_mask, spec->mute_led_coefbit_off) : - alc_update_coef_idx(codec, spec->mute_led_coef_idx, - spec->mute_led_coefbit_mask, spec->mute_led_coefbit_on); + alc_update_coef_idx(codec, led->idx, led->mask, + on ? led->on : led->off); +} + +/* update mute-LED according to the speaker mute state via COEF bit */ +static int coef_mute_led_set(struct led_classdev *led_cdev, + enum led_brightness brightness) +{ + struct hda_codec *codec = dev_to_hda_codec(led_cdev->dev->parent); + struct alc_spec *spec = codec->spec; + + alc_update_coef_led(codec, &spec->mute_led_coef, + spec->mute_led_polarity, brightness); + return 0; } static void alc285_fixup_hp_mute_led_coefbit(struct hda_codec *codec, @@ -4256,12 +4350,11 @@ if (action == HDA_FIXUP_ACT_PRE_PROBE) { spec->mute_led_polarity = 0; - spec->mute_led_coef_idx = 0x0b; - spec->mute_led_coefbit_mask = 1<<3; - spec->mute_led_coefbit_on = 1<<3; - spec->mute_led_coefbit_off = 0; - spec->gen.vmaster_mute.hook = alc_fixup_mute_led_coefbit_hook; - spec->gen.vmaster_mute_enum = 1; + spec->mute_led_coef.idx = 0x0b; + spec->mute_led_coef.mask = 1 << 3; + spec->mute_led_coef.on = 1 << 3; + spec->mute_led_coef.off = 0; + snd_hda_gen_add_mute_led_cdev(codec, coef_mute_led_set); } } @@ -4273,26 +4366,24 @@ if (action == HDA_FIXUP_ACT_PRE_PROBE) { spec->mute_led_polarity = 0; - spec->mute_led_coef_idx = 0x34; - spec->mute_led_coefbit_mask = 1<<5; - spec->mute_led_coefbit_on = 0; - spec->mute_led_coefbit_off = 1<<5; - spec->gen.vmaster_mute.hook = alc_fixup_mute_led_coefbit_hook; - spec->gen.vmaster_mute_enum = 1; + spec->mute_led_coef.idx = 0x34; + spec->mute_led_coef.mask = 1 << 5; + spec->mute_led_coef.on = 0; + spec->mute_led_coef.off = 1 << 5; + snd_hda_gen_add_mute_led_cdev(codec, coef_mute_led_set); } } /* turn on/off mic-mute LED per capture hook by coef bit */ -static void alc_hp_cap_micmute_update(struct hda_codec *codec) +static int coef_micmute_led_set(struct led_classdev *led_cdev, + enum led_brightness brightness) { + struct hda_codec *codec = dev_to_hda_codec(led_cdev->dev->parent); struct alc_spec *spec = codec->spec; - if (spec->gen.micmute_led.led_value) - alc_update_coef_idx(codec, spec->mic_led_coef_idx, - spec->mic_led_coefbit_mask, spec->mic_led_coefbit_on); - else - alc_update_coef_idx(codec, spec->mic_led_coef_idx, - spec->mic_led_coefbit_mask, spec->mic_led_coefbit_off); + alc_update_coef_led(codec, &spec->mic_led_coef, + spec->micmute_led_polarity, brightness); + return 0; } static void alc285_fixup_hp_coef_micmute_led(struct hda_codec *codec, @@ -4301,11 +4392,11 @@ struct alc_spec *spec = codec->spec; if (action == HDA_FIXUP_ACT_PRE_PROBE) { - spec->mic_led_coef_idx = 0x19; - spec->mic_led_coefbit_mask = 1<<13; - spec->mic_led_coefbit_on = 1<<13; - spec->mic_led_coefbit_off = 0; - snd_hda_gen_add_micmute_led(codec, alc_hp_cap_micmute_update); + spec->mic_led_coef.idx = 0x19; + spec->mic_led_coef.mask = 1 << 13; + spec->mic_led_coef.on = 1 << 13; + spec->mic_led_coef.off = 0; + snd_hda_gen_add_micmute_led_cdev(codec, coef_micmute_led_set); } } @@ -4315,11 +4406,11 @@ struct alc_spec *spec = codec->spec; if (action == HDA_FIXUP_ACT_PRE_PROBE) { - spec->mic_led_coef_idx = 0x35; - spec->mic_led_coefbit_mask = 3<<2; - spec->mic_led_coefbit_on = 2<<2; - spec->mic_led_coefbit_off = 1<<2; - snd_hda_gen_add_micmute_led(codec, alc_hp_cap_micmute_update); + spec->mic_led_coef.idx = 0x35; + spec->mic_led_coef.mask = 3 << 2; + spec->mic_led_coef.on = 2 << 2; + spec->mic_led_coef.off = 1 << 2; + snd_hda_gen_add_micmute_led_cdev(codec, coef_micmute_led_set); } } @@ -4459,7 +4550,7 @@ alc269_fixup_hp_mute_led_micx(codec, fix, action, 0x1a); if (action == HDA_FIXUP_ACT_PRE_PROBE) { spec->cap_mute_led_nid = 0x18; - snd_hda_gen_add_micmute_led(codec, alc_cap_micmute_update); + snd_hda_gen_add_micmute_led_cdev(codec, vref_micmute_led_set); } } @@ -4476,6 +4567,7 @@ static void alc_headset_mode_unplugged(struct hda_codec *codec) { + struct alc_spec *spec = codec->spec; static const struct coef_fw coef0255[] = { WRITE_COEF(0x1b, 0x0c0b), /* LDO and MISC control */ WRITE_COEF(0x45, 0xd089), /* UAJ function set to menual mode */ @@ -4550,6 +4642,11 @@ {} }; + if (spec->no_internal_mic_pin) { + alc_update_coef_idx(codec, 0x45, 0xf<<12 | 1<<10, 5<<12); + return; + } + switch (codec->core.vendor_id) { case 0x10ec0255: alc_process_coef_fw(codec, coef0255); @@ -5116,6 +5213,11 @@ {} }; + if (spec->no_internal_mic_pin) { + alc_update_coef_idx(codec, 0x45, 0xf<<12 | 1<<10, 5<<12); + return; + } + switch (codec->core.vendor_id) { case 0x10ec0255: alc_process_coef_fw(codec, coef0255); @@ -5883,6 +5985,39 @@ } } +/* Quirk for Thinkpad X1 7th and 8th Gen + * The following fixed routing needed + * DAC1 (NID 0x02) -> Speaker (NID 0x14); some eq applied secretly + * DAC2 (NID 0x03) -> Bass (NID 0x17) & Headphone (NID 0x21); sharing a DAC + * DAC3 (NID 0x06) -> Unused, due to the lack of volume amp + */ +static void alc285_fixup_thinkpad_x1_gen7(struct hda_codec *codec, + const struct hda_fixup *fix, int action) +{ + static const hda_nid_t conn[] = { 0x02, 0x03 }; /* exclude 0x06 */ + static const hda_nid_t preferred_pairs[] = { + 0x14, 0x02, 0x17, 0x03, 0x21, 0x03, 0 + }; + struct alc_spec *spec = codec->spec; + + switch (action) { + case HDA_FIXUP_ACT_PRE_PROBE: + snd_hda_override_conn_list(codec, 0x17, ARRAY_SIZE(conn), conn); + spec->gen.preferred_dacs = preferred_pairs; + break; + case HDA_FIXUP_ACT_BUILD: + /* The generic parser creates somewhat unintuitive volume ctls + * with the fixed routing above, and the shared DAC2 may be + * confusing for PA. + * Rename those to unique names so that PA doesn't touch them + * and use only Master volume. + */ + rename_ctl(codec, "Front Playback Volume", "DAC1 Playback Volume"); + rename_ctl(codec, "Bass Speaker Playback Volume", "DAC2 Playback Volume"); + break; + } +} + static void alc233_alc662_fixup_lenovo_dual_codecs(struct hda_codec *codec, const struct hda_fixup *fix, int action) @@ -5934,6 +6069,21 @@ codec->power_save_node = 0; } +/* avoid DAC 0x06 for bass speaker 0x17; it has no volume control */ +static void alc289_fixup_asus_ga401(struct hda_codec *codec, + const struct hda_fixup *fix, int action) +{ + static const hda_nid_t preferred_pairs[] = { + 0x14, 0x02, 0x17, 0x02, 0x21, 0x03, 0 + }; + struct alc_spec *spec = codec->spec; + + if (action == HDA_FIXUP_ACT_PRE_PROBE) { + spec->gen.preferred_dacs = preferred_pairs; + spec->gen.obey_preferred_dacs = 1; + } +} + /* The DAC of NID 0x3 will introduce click/pop noise on headphones, so invalidate it */ static void alc285_fixup_invalidate_dacs(struct hda_codec *codec, const struct hda_fixup *fix, int action) @@ -5944,6 +6094,27 @@ snd_hda_override_wcaps(codec, 0x03, 0); } +static void alc_combo_jack_hp_jd_restart(struct hda_codec *codec) +{ + switch (codec->core.vendor_id) { + case 0x10ec0274: + case 0x10ec0294: + case 0x10ec0225: + case 0x10ec0295: + case 0x10ec0299: + alc_update_coef_idx(codec, 0x4a, 0x8000, 1 << 15); /* Reset HP JD */ + alc_update_coef_idx(codec, 0x4a, 0x8000, 0 << 15); + break; + case 0x10ec0235: + case 0x10ec0236: + case 0x10ec0255: + case 0x10ec0256: + alc_update_coef_idx(codec, 0x1b, 0x8000, 1 << 15); /* Reset HP JD */ + alc_update_coef_idx(codec, 0x1b, 0x8000, 0 << 15); + break; + } +} + static void alc295_fixup_chromebook(struct hda_codec *codec, const struct hda_fixup *fix, int action) { @@ -5954,16 +6125,7 @@ spec->ultra_low_power = true; break; case HDA_FIXUP_ACT_INIT: - switch (codec->core.vendor_id) { - case 0x10ec0295: - alc_update_coef_idx(codec, 0x4a, 0x8000, 1 << 15); /* Reset HP JD */ - alc_update_coef_idx(codec, 0x4a, 0x8000, 0 << 15); - break; - case 0x10ec0236: - alc_update_coef_idx(codec, 0x1b, 0x8000, 1 << 15); /* Reset HP JD */ - alc_update_coef_idx(codec, 0x1b, 0x8000, 0 << 15); - break; - } + alc_combo_jack_hp_jd_restart(codec); break; } } @@ -5975,6 +6137,40 @@ snd_hda_codec_set_pin_target(codec, 0x19, PIN_VREFHIZ); } + +static void alc294_gx502_toggle_output(struct hda_codec *codec, + struct hda_jack_callback *cb) +{ + /* The Windows driver sets the codec up in a very different way where + * it appears to leave 0x10 = 0x8a20 set. For Linux we need to toggle it + */ + if (snd_hda_jack_detect_state(codec, 0x21) == HDA_JACK_PRESENT) + alc_write_coef_idx(codec, 0x10, 0x8a20); + else + alc_write_coef_idx(codec, 0x10, 0x0a20); +} + +static void alc294_fixup_gx502_hp(struct hda_codec *codec, + const struct hda_fixup *fix, int action) +{ + /* Pin 0x21: headphones/headset mic */ + if (!is_jack_detectable(codec, 0x21)) + return; + + switch (action) { + case HDA_FIXUP_ACT_PRE_PROBE: + snd_hda_jack_detect_enable_callback(codec, 0x21, + alc294_gx502_toggle_output); + break; + case HDA_FIXUP_ACT_INIT: + /* Make sure to start in a correct state, i.e. if + * headphones have been plugged in before powering up the system + */ + alc294_gx502_toggle_output(codec, NULL); + break; + } +} + static void alc285_fixup_hp_gpio_amp_init(struct hda_codec *codec, const struct hda_fixup *fix, int action) { @@ -5985,6 +6181,33 @@ alc_write_coef_idx(codec, 0x65, 0x0); } +static void alc274_fixup_hp_headset_mic(struct hda_codec *codec, + const struct hda_fixup *fix, int action) +{ + switch (action) { + case HDA_FIXUP_ACT_INIT: + alc_combo_jack_hp_jd_restart(codec); + break; + } +} + +static void alc_fixup_no_int_mic(struct hda_codec *codec, + const struct hda_fixup *fix, int action) +{ + struct alc_spec *spec = codec->spec; + + switch (action) { + case HDA_FIXUP_ACT_PRE_PROBE: + /* Mic RING SLEEVE swap for combo jack */ + alc_update_coef_idx(codec, 0x45, 0xf<<12 | 1<<10, 5<<12); + spec->no_internal_mic_pin = true; + break; + case HDA_FIXUP_ACT_INIT: + alc_combo_jack_hp_jd_restart(codec); + break; + } +} + /* for hda_fixup_thinkpad_acpi() */ #include "thinkpad_helper.c" @@ -5999,6 +6222,7 @@ #include "hp_x360_helper.c" enum { + ALC269_FIXUP_GPIO2, ALC269_FIXUP_SONY_VAIO, ALC275_FIXUP_SONY_VAIO_GPIO2, ALC269_FIXUP_DELL_M101Z, @@ -6081,6 +6305,7 @@ ALC280_FIXUP_HP_DOCK_PINS, ALC269_FIXUP_HP_DOCK_GPIO_MIC1_LED, ALC280_FIXUP_HP_9480M, + ALC245_FIXUP_HP_X360_AMP, ALC288_FIXUP_DELL_HEADSET_MODE, ALC288_FIXUP_DELL1_MIC_NO_PRESENCE, ALC288_FIXUP_DELL_XPS_13, @@ -6104,6 +6329,7 @@ ALC221_FIXUP_HP_FRONT_MIC, ALC292_FIXUP_TPT460, ALC298_FIXUP_SPK_VOLUME, + ALC298_FIXUP_LENOVO_SPK_VOLUME, ALC256_FIXUP_DELL_INSPIRON_7559_SUBWOOFER, ALC269_FIXUP_ATIV_BOOK_8, ALC221_FIXUP_HP_MIC_NO_PRESENCE, @@ -6151,11 +6377,16 @@ ALC289_FIXUP_DUAL_SPK, ALC294_FIXUP_SPK2_TO_DAC1, ALC294_FIXUP_ASUS_DUAL_SPK, + ALC285_FIXUP_THINKPAD_X1_GEN7, ALC285_FIXUP_THINKPAD_HEADSET_JACK, ALC294_FIXUP_ASUS_HPE, ALC294_FIXUP_ASUS_COEF_1B, + ALC294_FIXUP_ASUS_GX502_HP, + ALC294_FIXUP_ASUS_GX502_PINS, + ALC294_FIXUP_ASUS_GX502_VERBS, ALC285_FIXUP_HP_GPIO_LED, ALC285_FIXUP_HP_MUTE_LED, + ALC236_FIXUP_HP_GPIO_LED, ALC236_FIXUP_HP_MUTE_LED, ALC298_FIXUP_SAMSUNG_HEADPHONE_VERY_QUIET, ALC295_FIXUP_ASUS_MIC_NO_PRESENCE, @@ -6166,9 +6397,30 @@ ALC289_FIXUP_ASUS_GA502, ALC256_FIXUP_ACER_MIC_NO_PRESENCE, ALC285_FIXUP_HP_GPIO_AMP_INIT, + ALC269_FIXUP_CZC_B20, + ALC269_FIXUP_CZC_TMI, + ALC269_FIXUP_CZC_L101, + ALC269_FIXUP_LEMOTE_A1802, + ALC269_FIXUP_LEMOTE_A190X, + ALC256_FIXUP_INTEL_NUC8_RUGGED, + ALC256_FIXUP_INTEL_NUC10, + ALC255_FIXUP_XIAOMI_HEADSET_MIC, + ALC274_FIXUP_HP_MIC, + ALC274_FIXUP_HP_HEADSET_MIC, + ALC256_FIXUP_ASUS_HPE, + ALC285_FIXUP_THINKPAD_NO_BASS_SPK_HEADSET_JACK, + ALC287_FIXUP_HP_GPIO_LED, + ALC256_FIXUP_HP_HEADSET_MIC, + ALC236_FIXUP_DELL_AIO_HEADSET_MIC, + ALC282_FIXUP_ACER_DISABLE_LINEOUT, + ALC255_FIXUP_ACER_LIMIT_INT_MIC_BOOST, }; static const struct hda_fixup alc269_fixups[] = { + [ALC269_FIXUP_GPIO2] = { + .type = HDA_FIXUP_FUNC, + .v.func = alc_fixup_gpio2, + }, [ALC269_FIXUP_SONY_VAIO] = { .type = HDA_FIXUP_PINCTLS, .v.pins = (const struct hda_pintbl[]) { @@ -6706,7 +6958,7 @@ }, [ALC255_FIXUP_MIC_MUTE_LED] = { .type = HDA_FIXUP_FUNC, - .v.func = snd_hda_gen_fixup_micmute_led, + .v.func = alc_fixup_micmute_led, }, [ALC282_FIXUP_ASPIRE_V5_PINS] = { .type = HDA_FIXUP_PINS, @@ -6761,6 +7013,10 @@ .type = HDA_FIXUP_FUNC, .v.func = alc280_fixup_hp_9480m, }, + [ALC245_FIXUP_HP_X360_AMP] = { + .type = HDA_FIXUP_FUNC, + .v.func = alc245_fixup_hp_x360_amp, + }, [ALC288_FIXUP_DELL_HEADSET_MODE] = { .type = HDA_FIXUP_FUNC, .v.func = alc_fixup_headset_mode_dell_alc288, @@ -6809,7 +7065,7 @@ }, [ALC292_FIXUP_DELL_E7X] = { .type = HDA_FIXUP_FUNC, - .v.func = snd_hda_gen_fixup_micmute_led, + .v.func = alc_fixup_micmute_led, /* micmute fixup must be applied at last */ .chained_before = true, .chain_id = ALC292_FIXUP_DELL_E7X_AAMIX, @@ -6911,6 +7167,10 @@ .chained = true, .chain_id = ALC298_FIXUP_DELL_AIO_MIC_NO_PRESENCE, }, + [ALC298_FIXUP_LENOVO_SPK_VOLUME] = { + .type = HDA_FIXUP_FUNC, + .v.func = alc298_fixup_speaker_volume, + }, [ALC295_FIXUP_DISABLE_DAC3] = { .type = HDA_FIXUP_FUNC, .v.func = alc295_fixup_disable_dac3, @@ -6988,6 +7248,8 @@ [ALC233_FIXUP_LENOVO_MULTI_CODECS] = { .type = HDA_FIXUP_FUNC, .v.func = alc233_alc662_fixup_lenovo_dual_codecs, + .chained = true, + .chain_id = ALC269_FIXUP_GPIO2 }, [ALC233_FIXUP_ACER_HEADSET_MIC] = { .type = HDA_FIXUP_VERBS, @@ -7290,11 +7552,17 @@ .chained = true, .chain_id = ALC294_FIXUP_SPK2_TO_DAC1 }, + [ALC285_FIXUP_THINKPAD_X1_GEN7] = { + .type = HDA_FIXUP_FUNC, + .v.func = alc285_fixup_thinkpad_x1_gen7, + .chained = true, + .chain_id = ALC269_FIXUP_THINKPAD_ACPI + }, [ALC285_FIXUP_THINKPAD_HEADSET_JACK] = { .type = HDA_FIXUP_FUNC, .v.func = alc_fixup_headset_jack, .chained = true, - .chain_id = ALC285_FIXUP_SPEAKER2_TO_DAC1 + .chain_id = ALC285_FIXUP_THINKPAD_X1_GEN7 }, [ALC294_FIXUP_ASUS_HPE] = { .type = HDA_FIXUP_VERBS, @@ -7307,6 +7575,33 @@ .chained = true, .chain_id = ALC294_FIXUP_ASUS_HEADSET_MIC }, + [ALC294_FIXUP_ASUS_GX502_PINS] = { + .type = HDA_FIXUP_PINS, + .v.pins = (const struct hda_pintbl[]) { + { 0x19, 0x03a11050 }, /* front HP mic */ + { 0x1a, 0x01a11830 }, /* rear external mic */ + { 0x21, 0x03211020 }, /* front HP out */ + { } + }, + .chained = true, + .chain_id = ALC294_FIXUP_ASUS_GX502_VERBS + }, + [ALC294_FIXUP_ASUS_GX502_VERBS] = { + .type = HDA_FIXUP_VERBS, + .v.verbs = (const struct hda_verb[]) { + /* set 0x15 to HP-OUT ctrl */ + { 0x15, AC_VERB_SET_PIN_WIDGET_CONTROL, 0xc0 }, + /* unmute the 0x15 amp */ + { 0x15, AC_VERB_SET_AMP_GAIN_MUTE, 0xb000 }, + { } + }, + .chained = true, + .chain_id = ALC294_FIXUP_ASUS_GX502_HP + }, + [ALC294_FIXUP_ASUS_GX502_HP] = { + .type = HDA_FIXUP_FUNC, + .v.func = alc294_fixup_gx502_hp, + }, [ALC294_FIXUP_ASUS_COEF_1B] = { .type = HDA_FIXUP_VERBS, .v.verbs = (const struct hda_verb[]) { @@ -7326,6 +7621,10 @@ .type = HDA_FIXUP_FUNC, .v.func = alc285_fixup_hp_mute_led, }, + [ALC236_FIXUP_HP_GPIO_LED] = { + .type = HDA_FIXUP_FUNC, + .v.func = alc236_fixup_hp_gpio_led, + }, [ALC236_FIXUP_HP_MUTE_LED] = { .type = HDA_FIXUP_FUNC, .v.func = alc236_fixup_hp_mute_led, @@ -7376,11 +7675,10 @@ .chain_id = ALC269_FIXUP_HEADSET_MIC }, [ALC289_FIXUP_ASUS_GA401] = { - .type = HDA_FIXUP_PINS, - .v.pins = (const struct hda_pintbl[]) { - { 0x19, 0x03a11020 }, /* headset mic with jack detect */ - { } - }, + .type = HDA_FIXUP_FUNC, + .v.func = alc289_fixup_asus_ga401, + .chained = true, + .chain_id = ALC289_FIXUP_ASUS_GA502, }, [ALC289_FIXUP_ASUS_GA502] = { .type = HDA_FIXUP_PINS, @@ -7404,6 +7702,178 @@ .chained = true, .chain_id = ALC285_FIXUP_HP_GPIO_LED }, + [ALC269_FIXUP_CZC_B20] = { + .type = HDA_FIXUP_PINS, + .v.pins = (const struct hda_pintbl[]) { + { 0x12, 0x411111f0 }, + { 0x14, 0x90170110 }, /* speaker */ + { 0x15, 0x032f1020 }, /* HP out */ + { 0x17, 0x411111f0 }, + { 0x18, 0x03ab1040 }, /* mic */ + { 0x19, 0xb7a7013f }, + { 0x1a, 0x0181305f }, + { 0x1b, 0x411111f0 }, + { 0x1d, 0x411111f0 }, + { 0x1e, 0x411111f0 }, + { } + }, + .chain_id = ALC269_FIXUP_DMIC, + }, + [ALC269_FIXUP_CZC_TMI] = { + .type = HDA_FIXUP_PINS, + .v.pins = (const struct hda_pintbl[]) { + { 0x12, 0x4000c000 }, + { 0x14, 0x90170110 }, /* speaker */ + { 0x15, 0x0421401f }, /* HP out */ + { 0x17, 0x411111f0 }, + { 0x18, 0x04a19020 }, /* mic */ + { 0x19, 0x411111f0 }, + { 0x1a, 0x411111f0 }, + { 0x1b, 0x411111f0 }, + { 0x1d, 0x40448505 }, + { 0x1e, 0x411111f0 }, + { 0x20, 0x8000ffff }, + { } + }, + .chain_id = ALC269_FIXUP_DMIC, + }, + [ALC269_FIXUP_CZC_L101] = { + .type = HDA_FIXUP_PINS, + .v.pins = (const struct hda_pintbl[]) { + { 0x12, 0x40000000 }, + { 0x14, 0x01014010 }, /* speaker */ + { 0x15, 0x411111f0 }, /* HP out */ + { 0x16, 0x411111f0 }, + { 0x18, 0x01a19020 }, /* mic */ + { 0x19, 0x02a19021 }, + { 0x1a, 0x0181302f }, + { 0x1b, 0x0221401f }, + { 0x1c, 0x411111f0 }, + { 0x1d, 0x4044c601 }, + { 0x1e, 0x411111f0 }, + { } + }, + .chain_id = ALC269_FIXUP_DMIC, + }, + [ALC269_FIXUP_LEMOTE_A1802] = { + .type = HDA_FIXUP_PINS, + .v.pins = (const struct hda_pintbl[]) { + { 0x12, 0x40000000 }, + { 0x14, 0x90170110 }, /* speaker */ + { 0x17, 0x411111f0 }, + { 0x18, 0x03a19040 }, /* mic1 */ + { 0x19, 0x90a70130 }, /* mic2 */ + { 0x1a, 0x411111f0 }, + { 0x1b, 0x411111f0 }, + { 0x1d, 0x40489d2d }, + { 0x1e, 0x411111f0 }, + { 0x20, 0x0003ffff }, + { 0x21, 0x03214020 }, + { } + }, + .chain_id = ALC269_FIXUP_DMIC, + }, + [ALC269_FIXUP_LEMOTE_A190X] = { + .type = HDA_FIXUP_PINS, + .v.pins = (const struct hda_pintbl[]) { + { 0x14, 0x99130110 }, /* speaker */ + { 0x15, 0x0121401f }, /* HP out */ + { 0x18, 0x01a19c20 }, /* rear mic */ + { 0x19, 0x99a3092f }, /* front mic */ + { 0x1b, 0x0201401f }, /* front lineout */ + { } + }, + .chain_id = ALC269_FIXUP_DMIC, + }, + [ALC256_FIXUP_INTEL_NUC8_RUGGED] = { + .type = HDA_FIXUP_PINS, + .v.pins = (const struct hda_pintbl[]) { + { 0x1b, 0x01a1913c }, /* use as headset mic, without its own jack detect */ + { } + }, + .chained = true, + .chain_id = ALC269_FIXUP_HEADSET_MODE + }, + [ALC256_FIXUP_INTEL_NUC10] = { + .type = HDA_FIXUP_PINS, + .v.pins = (const struct hda_pintbl[]) { + { 0x19, 0x01a1913c }, /* use as headset mic, without its own jack detect */ + { } + }, + .chained = true, + .chain_id = ALC269_FIXUP_HEADSET_MODE + }, + [ALC255_FIXUP_XIAOMI_HEADSET_MIC] = { + .type = HDA_FIXUP_VERBS, + .v.verbs = (const struct hda_verb[]) { + { 0x20, AC_VERB_SET_COEF_INDEX, 0x45 }, + { 0x20, AC_VERB_SET_PROC_COEF, 0x5089 }, + { } + }, + .chained = true, + .chain_id = ALC289_FIXUP_ASUS_GA502 + }, + [ALC274_FIXUP_HP_MIC] = { + .type = HDA_FIXUP_VERBS, + .v.verbs = (const struct hda_verb[]) { + { 0x20, AC_VERB_SET_COEF_INDEX, 0x45 }, + { 0x20, AC_VERB_SET_PROC_COEF, 0x5089 }, + { } + }, + }, + [ALC274_FIXUP_HP_HEADSET_MIC] = { + .type = HDA_FIXUP_FUNC, + .v.func = alc274_fixup_hp_headset_mic, + .chained = true, + .chain_id = ALC274_FIXUP_HP_MIC + }, + [ALC256_FIXUP_ASUS_HPE] = { + .type = HDA_FIXUP_VERBS, + .v.verbs = (const struct hda_verb[]) { + /* Set EAPD high */ + { 0x20, AC_VERB_SET_COEF_INDEX, 0x0f }, + { 0x20, AC_VERB_SET_PROC_COEF, 0x7778 }, + { } + }, + .chained = true, + .chain_id = ALC294_FIXUP_ASUS_HEADSET_MIC + }, + [ALC285_FIXUP_THINKPAD_NO_BASS_SPK_HEADSET_JACK] = { + .type = HDA_FIXUP_FUNC, + .v.func = alc_fixup_headset_jack, + .chained = true, + .chain_id = ALC269_FIXUP_THINKPAD_ACPI + }, + [ALC287_FIXUP_HP_GPIO_LED] = { + .type = HDA_FIXUP_FUNC, + .v.func = alc287_fixup_hp_gpio_led, + }, + [ALC256_FIXUP_HP_HEADSET_MIC] = { + .type = HDA_FIXUP_FUNC, + .v.func = alc274_fixup_hp_headset_mic, + }, + [ALC236_FIXUP_DELL_AIO_HEADSET_MIC] = { + .type = HDA_FIXUP_FUNC, + .v.func = alc_fixup_no_int_mic, + .chained = true, + .chain_id = ALC255_FIXUP_DELL1_MIC_NO_PRESENCE + }, + [ALC282_FIXUP_ACER_DISABLE_LINEOUT] = { + .type = HDA_FIXUP_PINS, + .v.pins = (const struct hda_pintbl[]) { + { 0x1b, 0x411111f0 }, + { 0x18, 0x01a1913c }, /* use as headset mic, without its own jack detect */ + { }, + }, + .chained = true, + .chain_id = ALC269_FIXUP_HEADSET_MODE + }, + [ALC255_FIXUP_ACER_LIMIT_INT_MIC_BOOST] = { + .type = HDA_FIXUP_FUNC, + .v.func = alc269_fixup_limit_int_mic_boost, + .chained = true, + .chain_id = ALC255_FIXUP_ACER_MIC_NO_PRESENCE, + }, }; static const struct snd_pci_quirk alc269_fixup_tbl[] = { @@ -7418,11 +7888,15 @@ SND_PCI_QUIRK(0x1025, 0x0762, "Acer Aspire E1-472", ALC271_FIXUP_HP_GATE_MIC_JACK_E1_572), SND_PCI_QUIRK(0x1025, 0x0775, "Acer Aspire E1-572", ALC271_FIXUP_HP_GATE_MIC_JACK_E1_572), SND_PCI_QUIRK(0x1025, 0x079b, "Acer Aspire V5-573G", ALC282_FIXUP_ASPIRE_V5_PINS), + SND_PCI_QUIRK(0x1025, 0x101c, "Acer Veriton N2510G", ALC269_FIXUP_LIFEBOOK), SND_PCI_QUIRK(0x1025, 0x102b, "Acer Aspire C24-860", ALC286_FIXUP_ACER_AIO_MIC_NO_PRESENCE), SND_PCI_QUIRK(0x1025, 0x1065, "Acer Aspire C20-820", ALC269VC_FIXUP_ACER_HEADSET_MIC), SND_PCI_QUIRK(0x1025, 0x106d, "Acer Cloudbook 14", ALC283_FIXUP_CHROME_BOOK), + SND_PCI_QUIRK(0x1025, 0x1094, "Acer Aspire E5-575T", ALC255_FIXUP_ACER_LIMIT_INT_MIC_BOOST), SND_PCI_QUIRK(0x1025, 0x1099, "Acer Aspire E5-523G", ALC255_FIXUP_ACER_MIC_NO_PRESENCE), SND_PCI_QUIRK(0x1025, 0x110e, "Acer Aspire ES1-432", ALC255_FIXUP_ACER_MIC_NO_PRESENCE), + SND_PCI_QUIRK(0x1025, 0x1166, "Acer Veriton N4640G", ALC269_FIXUP_LIFEBOOK), + SND_PCI_QUIRK(0x1025, 0x1167, "Acer Veriton N6640G", ALC269_FIXUP_LIFEBOOK), SND_PCI_QUIRK(0x1025, 0x1246, "Acer Predator Helios 500", ALC299_FIXUP_PREDATOR_SPK), SND_PCI_QUIRK(0x1025, 0x1247, "Acer vCopperbox", ALC269VC_FIXUP_ACER_VCOPPERBOX_PINS), SND_PCI_QUIRK(0x1025, 0x1248, "Acer Veriton N4660G", ALC269VC_FIXUP_ACER_MIC_NO_PRESENCE), @@ -7481,6 +7955,9 @@ SND_PCI_QUIRK(0x1028, 0x097d, "Dell Precision", ALC289_FIXUP_DUAL_SPK), SND_PCI_QUIRK(0x1028, 0x098d, "Dell Precision", ALC233_FIXUP_ASUS_MIC_NO_PRESENCE), SND_PCI_QUIRK(0x1028, 0x09bf, "Dell Precision", ALC233_FIXUP_ASUS_MIC_NO_PRESENCE), + SND_PCI_QUIRK(0x1028, 0x0a2e, "Dell", ALC236_FIXUP_DELL_AIO_HEADSET_MIC), + SND_PCI_QUIRK(0x1028, 0x0a30, "Dell", ALC236_FIXUP_DELL_AIO_HEADSET_MIC), + SND_PCI_QUIRK(0x1028, 0x0a58, "Dell", ALC255_FIXUP_DELL_HEADSET_MIC), SND_PCI_QUIRK(0x1028, 0x164a, "Dell", ALC293_FIXUP_DELL1_MIC_NO_PRESENCE), SND_PCI_QUIRK(0x1028, 0x164b, "Dell", ALC293_FIXUP_DELL1_MIC_NO_PRESENCE), SND_PCI_QUIRK(0x103c, 0x1586, "HP", ALC269_FIXUP_HP_MUTE_LED_MIC2), @@ -7547,16 +8024,30 @@ SND_PCI_QUIRK(0x103c, 0x820d, "HP Pavilion 15", ALC269_FIXUP_HP_MUTE_LED_MIC3), SND_PCI_QUIRK(0x103c, 0x8256, "HP", ALC221_FIXUP_HP_FRONT_MIC), SND_PCI_QUIRK(0x103c, 0x827e, "HP x360", ALC295_FIXUP_HP_X360), + SND_PCI_QUIRK(0x103c, 0x827f, "HP x360", ALC269_FIXUP_HP_MUTE_LED_MIC3), SND_PCI_QUIRK(0x103c, 0x82bf, "HP G3 mini", ALC221_FIXUP_HP_MIC_NO_PRESENCE), SND_PCI_QUIRK(0x103c, 0x82c0, "HP G3 mini premium", ALC221_FIXUP_HP_MIC_NO_PRESENCE), SND_PCI_QUIRK(0x103c, 0x83b9, "HP Spectre x360", ALC269_FIXUP_HP_MUTE_LED_MIC3), SND_PCI_QUIRK(0x103c, 0x8497, "HP Envy x360", ALC269_FIXUP_HP_MUTE_LED_MIC3), SND_PCI_QUIRK(0x103c, 0x84e7, "HP Pavilion 15", ALC269_FIXUP_HP_MUTE_LED_MIC3), SND_PCI_QUIRK(0x103c, 0x869d, "HP", ALC236_FIXUP_HP_MUTE_LED), + SND_PCI_QUIRK(0x103c, 0x8724, "HP EliteBook 850 G7", ALC285_FIXUP_HP_GPIO_LED), SND_PCI_QUIRK(0x103c, 0x8729, "HP", ALC285_FIXUP_HP_GPIO_LED), SND_PCI_QUIRK(0x103c, 0x8736, "HP", ALC285_FIXUP_HP_GPIO_AMP_INIT), + SND_PCI_QUIRK(0x103c, 0x8760, "HP", ALC285_FIXUP_HP_MUTE_LED), SND_PCI_QUIRK(0x103c, 0x877a, "HP", ALC285_FIXUP_HP_MUTE_LED), SND_PCI_QUIRK(0x103c, 0x877d, "HP", ALC236_FIXUP_HP_MUTE_LED), + SND_PCI_QUIRK(0x103c, 0x8780, "HP ZBook Fury 17 G7 Mobile Workstation", + ALC285_FIXUP_HP_GPIO_AMP_INIT), + SND_PCI_QUIRK(0x103c, 0x8783, "HP ZBook Fury 15 G7 Mobile Workstation", + ALC285_FIXUP_HP_GPIO_AMP_INIT), + SND_PCI_QUIRK(0x103c, 0x87c8, "HP", ALC287_FIXUP_HP_GPIO_LED), + SND_PCI_QUIRK(0x103c, 0x87e5, "HP ProBook 440 G8 Notebook PC", ALC236_FIXUP_HP_GPIO_LED), + SND_PCI_QUIRK(0x103c, 0x87f4, "HP", ALC287_FIXUP_HP_GPIO_LED), + SND_PCI_QUIRK(0x103c, 0x87f5, "HP", ALC287_FIXUP_HP_GPIO_LED), + SND_PCI_QUIRK(0x103c, 0x87f7, "HP Spectre x360 14", ALC245_FIXUP_HP_X360_AMP), + SND_PCI_QUIRK(0x103c, 0x8846, "HP EliteBook 850 G8 Notebook PC", ALC285_FIXUP_HP_GPIO_LED), + SND_PCI_QUIRK(0x103c, 0x884c, "HP EliteBook 840 G8 Notebook PC", ALC285_FIXUP_HP_GPIO_LED), SND_PCI_QUIRK(0x1043, 0x103e, "ASUS X540SA", ALC256_FIXUP_ASUS_MIC), SND_PCI_QUIRK(0x1043, 0x103f, "ASUS TX300", ALC282_FIXUP_ASUS_TX300), SND_PCI_QUIRK(0x1043, 0x106d, "Asus K53BE", ALC269_FIXUP_LIMIT_INT_MIC_BOOST), @@ -7565,6 +8056,7 @@ SND_PCI_QUIRK(0x1043, 0x10d0, "ASUS X540LA/X540LJ", ALC255_FIXUP_ASUS_MIC_NO_PRESENCE), SND_PCI_QUIRK(0x1043, 0x115d, "Asus 1015E", ALC269_FIXUP_LIMIT_INT_MIC_BOOST), SND_PCI_QUIRK(0x1043, 0x11c0, "ASUS X556UR", ALC255_FIXUP_ASUS_MIC_NO_PRESENCE), + SND_PCI_QUIRK(0x1043, 0x1271, "ASUS X430UN", ALC256_FIXUP_ASUS_MIC_NO_PRESENCE), SND_PCI_QUIRK(0x1043, 0x1290, "ASUS X441SA", ALC233_FIXUP_EAPD_COEF_AND_MIC_NO_PRESENCE), SND_PCI_QUIRK(0x1043, 0x12a0, "ASUS X441UV", ALC233_FIXUP_EAPD_COEF_AND_MIC_NO_PRESENCE), SND_PCI_QUIRK(0x1043, 0x12f0, "ASUS X541UV", ALC256_FIXUP_ASUS_MIC), @@ -7577,6 +8069,7 @@ SND_PCI_QUIRK(0x1043, 0x18b1, "Asus MJ401TA", ALC256_FIXUP_ASUS_HEADSET_MIC), SND_PCI_QUIRK(0x1043, 0x18f1, "Asus FX505DT", ALC256_FIXUP_ASUS_HEADSET_MIC), SND_PCI_QUIRK(0x1043, 0x194e, "ASUS UX563FD", ALC294_FIXUP_ASUS_HPE), + SND_PCI_QUIRK(0x1043, 0x1982, "ASUS B1400CEPE", ALC256_FIXUP_ASUS_HPE), SND_PCI_QUIRK(0x1043, 0x19ce, "ASUS B9450FA", ALC294_FIXUP_ASUS_HPE), SND_PCI_QUIRK(0x1043, 0x19e1, "ASUS UX581LV", ALC295_FIXUP_ASUS_MIC_NO_PRESENCE), SND_PCI_QUIRK(0x1043, 0x1a13, "Asus G73Jw", ALC269_FIXUP_ASUS_G73JW), @@ -7585,9 +8078,12 @@ SND_PCI_QUIRK(0x1043, 0x1b13, "Asus U41SV", ALC269_FIXUP_INV_DMIC), SND_PCI_QUIRK(0x1043, 0x1bbd, "ASUS Z550MA", ALC255_FIXUP_ASUS_MIC_NO_PRESENCE), SND_PCI_QUIRK(0x1043, 0x1c23, "Asus X55U", ALC269_FIXUP_LIMIT_INT_MIC_BOOST), + SND_PCI_QUIRK(0x1043, 0x125e, "ASUS Q524UQK", ALC255_FIXUP_ASUS_MIC_NO_PRESENCE), SND_PCI_QUIRK(0x1043, 0x1ccd, "ASUS X555UB", ALC256_FIXUP_ASUS_MIC), + SND_PCI_QUIRK(0x1043, 0x1d4e, "ASUS TM420", ALC256_FIXUP_ASUS_HPE), SND_PCI_QUIRK(0x1043, 0x1e11, "ASUS Zephyrus G15", ALC289_FIXUP_ASUS_GA502), SND_PCI_QUIRK(0x1043, 0x1f11, "ASUS Zephyrus G14", ALC289_FIXUP_ASUS_GA401), + SND_PCI_QUIRK(0x1043, 0x1881, "ASUS Zephyrus S/M", ALC294_FIXUP_ASUS_GX502_PINS), SND_PCI_QUIRK(0x1043, 0x3030, "ASUS ZN270IE", ALC256_FIXUP_ASUS_AIO_GPIO2), SND_PCI_QUIRK(0x1043, 0x831a, "ASUS P901", ALC269_FIXUP_STEREO_DMIC), SND_PCI_QUIRK(0x1043, 0x834a, "ASUS S101", ALC269_FIXUP_STEREO_DMIC), @@ -7608,20 +8104,65 @@ SND_PCI_QUIRK(0x10cf, 0x1845, "Lifebook U904", ALC269_FIXUP_LIFEBOOK_EXTMIC), SND_PCI_QUIRK(0x10ec, 0x10f2, "Intel Reference board", ALC700_FIXUP_INTEL_REFERENCE), SND_PCI_QUIRK(0x10ec, 0x1230, "Intel Reference board", ALC295_FIXUP_CHROME_BOOK), + SND_PCI_QUIRK(0x10ec, 0x1252, "Intel Reference board", ALC295_FIXUP_CHROME_BOOK), + SND_PCI_QUIRK(0x10ec, 0x1254, "Intel Reference board", ALC295_FIXUP_CHROME_BOOK), SND_PCI_QUIRK(0x10f7, 0x8338, "Panasonic CF-SZ6", ALC269_FIXUP_HEADSET_MODE), SND_PCI_QUIRK(0x144d, 0xc109, "Samsung Ativ book 9 (NP900X3G)", ALC269_FIXUP_INV_DMIC), SND_PCI_QUIRK(0x144d, 0xc169, "Samsung Notebook 9 Pen (NP930SBE-K01US)", ALC298_FIXUP_SAMSUNG_HEADPHONE_VERY_QUIET), SND_PCI_QUIRK(0x144d, 0xc176, "Samsung Notebook 9 Pro (NP930MBE-K04US)", ALC298_FIXUP_SAMSUNG_HEADPHONE_VERY_QUIET), + SND_PCI_QUIRK(0x144d, 0xc189, "Samsung Galaxy Flex Book (NT950QCG-X716)", ALC298_FIXUP_SAMSUNG_HEADPHONE_VERY_QUIET), + SND_PCI_QUIRK(0x144d, 0xc18a, "Samsung Galaxy Book Ion (NP930XCJ-K01US)", ALC298_FIXUP_SAMSUNG_HEADPHONE_VERY_QUIET), + SND_PCI_QUIRK(0x144d, 0xc830, "Samsung Galaxy Book Ion (NT950XCJ-X716A)", ALC298_FIXUP_SAMSUNG_HEADPHONE_VERY_QUIET), SND_PCI_QUIRK(0x144d, 0xc740, "Samsung Ativ book 8 (NP870Z5G)", ALC269_FIXUP_ATIV_BOOK_8), SND_PCI_QUIRK(0x144d, 0xc812, "Samsung Notebook Pen S (NT950SBE-X58)", ALC298_FIXUP_SAMSUNG_HEADPHONE_VERY_QUIET), SND_PCI_QUIRK(0x1458, 0xfa53, "Gigabyte BXBT-2807", ALC283_FIXUP_HEADSET_MIC), SND_PCI_QUIRK(0x1462, 0xb120, "MSI Cubi MS-B120", ALC283_FIXUP_HEADSET_MIC), SND_PCI_QUIRK(0x1462, 0xb171, "Cubi N 8GL (MS-B171)", ALC283_FIXUP_HEADSET_MIC), + SND_PCI_QUIRK(0x152d, 0x1082, "Quanta NL3", ALC269_FIXUP_LIFEBOOK), + SND_PCI_QUIRK(0x1558, 0x1323, "Clevo N130ZU", ALC293_FIXUP_SYSTEM76_MIC_NO_PRESENCE), SND_PCI_QUIRK(0x1558, 0x1325, "System76 Darter Pro (darp5)", ALC293_FIXUP_SYSTEM76_MIC_NO_PRESENCE), + SND_PCI_QUIRK(0x1558, 0x1401, "Clevo L140[CZ]U", ALC293_FIXUP_SYSTEM76_MIC_NO_PRESENCE), + SND_PCI_QUIRK(0x1558, 0x1403, "Clevo N140CU", ALC293_FIXUP_SYSTEM76_MIC_NO_PRESENCE), + SND_PCI_QUIRK(0x1558, 0x1404, "Clevo N150CU", ALC293_FIXUP_SYSTEM76_MIC_NO_PRESENCE), + SND_PCI_QUIRK(0x1558, 0x14a1, "Clevo L141MU", ALC293_FIXUP_SYSTEM76_MIC_NO_PRESENCE), + SND_PCI_QUIRK(0x1558, 0x4018, "Clevo NV40M[BE]", ALC293_FIXUP_SYSTEM76_MIC_NO_PRESENCE), + SND_PCI_QUIRK(0x1558, 0x4019, "Clevo NV40MZ", ALC293_FIXUP_SYSTEM76_MIC_NO_PRESENCE), + SND_PCI_QUIRK(0x1558, 0x4020, "Clevo NV40MB", ALC293_FIXUP_SYSTEM76_MIC_NO_PRESENCE), + SND_PCI_QUIRK(0x1558, 0x40a1, "Clevo NL40GU", ALC293_FIXUP_SYSTEM76_MIC_NO_PRESENCE), + SND_PCI_QUIRK(0x1558, 0x40c1, "Clevo NL40[CZ]U", ALC293_FIXUP_SYSTEM76_MIC_NO_PRESENCE), + SND_PCI_QUIRK(0x1558, 0x40d1, "Clevo NL41DU", ALC293_FIXUP_SYSTEM76_MIC_NO_PRESENCE), + SND_PCI_QUIRK(0x1558, 0x50a3, "Clevo NJ51GU", ALC293_FIXUP_SYSTEM76_MIC_NO_PRESENCE), + SND_PCI_QUIRK(0x1558, 0x50b3, "Clevo NK50S[BEZ]", ALC293_FIXUP_SYSTEM76_MIC_NO_PRESENCE), + SND_PCI_QUIRK(0x1558, 0x50b6, "Clevo NK50S5", ALC293_FIXUP_SYSTEM76_MIC_NO_PRESENCE), + SND_PCI_QUIRK(0x1558, 0x50b8, "Clevo NK50SZ", ALC293_FIXUP_SYSTEM76_MIC_NO_PRESENCE), + SND_PCI_QUIRK(0x1558, 0x50d5, "Clevo NP50D5", ALC293_FIXUP_SYSTEM76_MIC_NO_PRESENCE), + SND_PCI_QUIRK(0x1558, 0x50f0, "Clevo NH50A[CDF]", ALC293_FIXUP_SYSTEM76_MIC_NO_PRESENCE), + SND_PCI_QUIRK(0x1558, 0x50f3, "Clevo NH58DPQ", ALC293_FIXUP_SYSTEM76_MIC_NO_PRESENCE), + SND_PCI_QUIRK(0x1558, 0x5101, "Clevo S510WU", ALC293_FIXUP_SYSTEM76_MIC_NO_PRESENCE), + SND_PCI_QUIRK(0x1558, 0x5157, "Clevo W517GU1", ALC293_FIXUP_SYSTEM76_MIC_NO_PRESENCE), + SND_PCI_QUIRK(0x1558, 0x51a1, "Clevo NS50MU", ALC293_FIXUP_SYSTEM76_MIC_NO_PRESENCE), + SND_PCI_QUIRK(0x1558, 0x70a1, "Clevo NB70T[HJK]", ALC293_FIXUP_SYSTEM76_MIC_NO_PRESENCE), + SND_PCI_QUIRK(0x1558, 0x70b3, "Clevo NK70SB", ALC293_FIXUP_SYSTEM76_MIC_NO_PRESENCE), + SND_PCI_QUIRK(0x1558, 0x8228, "Clevo NR40BU", ALC293_FIXUP_SYSTEM76_MIC_NO_PRESENCE), + SND_PCI_QUIRK(0x1558, 0x8520, "Clevo NH50D[CD]", ALC293_FIXUP_SYSTEM76_MIC_NO_PRESENCE), + SND_PCI_QUIRK(0x1558, 0x8521, "Clevo NH77D[CD]", ALC293_FIXUP_SYSTEM76_MIC_NO_PRESENCE), + SND_PCI_QUIRK(0x1558, 0x8535, "Clevo NH50D[BE]", ALC293_FIXUP_SYSTEM76_MIC_NO_PRESENCE), + SND_PCI_QUIRK(0x1558, 0x8536, "Clevo NH79D[BE]", ALC293_FIXUP_SYSTEM76_MIC_NO_PRESENCE), SND_PCI_QUIRK(0x1558, 0x8550, "System76 Gazelle (gaze14)", ALC293_FIXUP_SYSTEM76_MIC_NO_PRESENCE), SND_PCI_QUIRK(0x1558, 0x8551, "System76 Gazelle (gaze14)", ALC293_FIXUP_SYSTEM76_MIC_NO_PRESENCE), SND_PCI_QUIRK(0x1558, 0x8560, "System76 Gazelle (gaze14)", ALC269_FIXUP_HEADSET_MIC), SND_PCI_QUIRK(0x1558, 0x8561, "System76 Gazelle (gaze14)", ALC269_FIXUP_HEADSET_MIC), + SND_PCI_QUIRK(0x1558, 0x8562, "Clevo NH[5|7][0-9]RZ[Q]", ALC269_FIXUP_DMIC), + SND_PCI_QUIRK(0x1558, 0x8668, "Clevo NP50B[BE]", ALC293_FIXUP_SYSTEM76_MIC_NO_PRESENCE), + SND_PCI_QUIRK(0x1558, 0x8680, "Clevo NJ50LU", ALC293_FIXUP_SYSTEM76_MIC_NO_PRESENCE), + SND_PCI_QUIRK(0x1558, 0x8686, "Clevo NH50[CZ]U", ALC293_FIXUP_SYSTEM76_MIC_NO_PRESENCE), + SND_PCI_QUIRK(0x1558, 0x8a20, "Clevo NH55DCQ-Y", ALC293_FIXUP_SYSTEM76_MIC_NO_PRESENCE), + SND_PCI_QUIRK(0x1558, 0x8a51, "Clevo NH70RCQ-Y", ALC293_FIXUP_SYSTEM76_MIC_NO_PRESENCE), + SND_PCI_QUIRK(0x1558, 0x8d50, "Clevo NH55RCQ-M", ALC293_FIXUP_SYSTEM76_MIC_NO_PRESENCE), + SND_PCI_QUIRK(0x1558, 0x951d, "Clevo N950T[CDF]", ALC293_FIXUP_SYSTEM76_MIC_NO_PRESENCE), + SND_PCI_QUIRK(0x1558, 0x961d, "Clevo N960S[CDF]", ALC293_FIXUP_SYSTEM76_MIC_NO_PRESENCE), + SND_PCI_QUIRK(0x1558, 0x971d, "Clevo N970T[CDF]", ALC293_FIXUP_SYSTEM76_MIC_NO_PRESENCE), + SND_PCI_QUIRK(0x1558, 0xa500, "Clevo NL53RU", ALC293_FIXUP_SYSTEM76_MIC_NO_PRESENCE), SND_PCI_QUIRK(0x17aa, 0x1036, "Lenovo P520", ALC233_FIXUP_LENOVO_MULTI_CODECS), SND_PCI_QUIRK(0x17aa, 0x1048, "ThinkCentre Station", ALC283_FIXUP_HEADSET_MIC), SND_PCI_QUIRK(0x17aa, 0x20f2, "Thinkpad SL410/510", ALC269_FIXUP_SKU_IGNORE), @@ -7659,6 +8200,8 @@ SND_PCI_QUIRK(0x17aa, 0x225d, "Thinkpad T480", ALC269_FIXUP_LIMIT_INT_MIC_BOOST), SND_PCI_QUIRK(0x17aa, 0x2292, "Thinkpad X1 Carbon 7th", ALC285_FIXUP_THINKPAD_HEADSET_JACK), SND_PCI_QUIRK(0x17aa, 0x22be, "Thinkpad X1 Carbon 8th", ALC285_FIXUP_THINKPAD_HEADSET_JACK), + SND_PCI_QUIRK(0x17aa, 0x22c1, "Thinkpad P1 Gen 3", ALC285_FIXUP_THINKPAD_NO_BASS_SPK_HEADSET_JACK), + SND_PCI_QUIRK(0x17aa, 0x22c2, "Thinkpad X1 Extreme Gen 3", ALC285_FIXUP_THINKPAD_NO_BASS_SPK_HEADSET_JACK), SND_PCI_QUIRK(0x17aa, 0x30bb, "ThinkCentre AIO", ALC233_FIXUP_LENOVO_LINE2_MIC_HOTKEY), SND_PCI_QUIRK(0x17aa, 0x30e2, "ThinkCentre AIO", ALC233_FIXUP_LENOVO_LINE2_MIC_HOTKEY), SND_PCI_QUIRK(0x17aa, 0x310c, "ThinkCentre Station", ALC294_FIXUP_LENOVO_MIC_LOCATION), @@ -7669,6 +8212,7 @@ SND_PCI_QUIRK(0x17aa, 0x3151, "ThinkCentre Station", ALC283_FIXUP_HEADSET_MIC), SND_PCI_QUIRK(0x17aa, 0x3176, "ThinkCentre Station", ALC283_FIXUP_HEADSET_MIC), SND_PCI_QUIRK(0x17aa, 0x3178, "ThinkCentre Station", ALC283_FIXUP_HEADSET_MIC), + SND_PCI_QUIRK(0x17aa, 0x3818, "Lenovo C940", ALC298_FIXUP_LENOVO_SPK_VOLUME), SND_PCI_QUIRK(0x17aa, 0x3902, "Lenovo E50-80", ALC269_FIXUP_DMIC_THINKPAD_ACPI), SND_PCI_QUIRK(0x17aa, 0x3977, "IdeaPad S210", ALC283_FIXUP_INT_MIC), SND_PCI_QUIRK(0x17aa, 0x3978, "Lenovo B50-70", ALC269_FIXUP_DMIC_THINKPAD_ACPI), @@ -7693,9 +8237,17 @@ SND_PCI_QUIRK(0x17aa, 0x3bf8, "Quanta FL1", ALC269_FIXUP_PCM_44K), SND_PCI_QUIRK(0x17aa, 0x9e54, "LENOVO NB", ALC269_FIXUP_LENOVO_EAPD), SND_PCI_QUIRK(0x19e5, 0x3204, "Huawei MACH-WX9", ALC256_FIXUP_HUAWEI_MACH_WX9_PINS), + SND_PCI_QUIRK(0x1b35, 0x1235, "CZC B20", ALC269_FIXUP_CZC_B20), + SND_PCI_QUIRK(0x1b35, 0x1236, "CZC TMI", ALC269_FIXUP_CZC_TMI), + SND_PCI_QUIRK(0x1b35, 0x1237, "CZC L101", ALC269_FIXUP_CZC_L101), SND_PCI_QUIRK(0x1b7d, 0xa831, "Ordissimo EVE2 ", ALC269VB_FIXUP_ORDISSIMO_EVE2), /* Also known as Malata PC-B1303 */ + SND_PCI_QUIRK(0x1d72, 0x1602, "RedmiBook", ALC255_FIXUP_XIAOMI_HEADSET_MIC), SND_PCI_QUIRK(0x1d72, 0x1901, "RedmiBook 14", ALC256_FIXUP_ASUS_HEADSET_MIC), SND_PCI_QUIRK(0x10ec, 0x118c, "Medion EE4254 MD62100", ALC256_FIXUP_MEDION_HEADSET_NO_PRESENCE), + SND_PCI_QUIRK(0x1c06, 0x2013, "Lemote A1802", ALC269_FIXUP_LEMOTE_A1802), + SND_PCI_QUIRK(0x1c06, 0x2015, "Lemote A190X", ALC269_FIXUP_LEMOTE_A190X), + SND_PCI_QUIRK(0x8086, 0x2080, "Intel NUC 8 Rugged", ALC256_FIXUP_INTEL_NUC8_RUGGED), + SND_PCI_QUIRK(0x8086, 0x2081, "Intel NUC 10", ALC256_FIXUP_INTEL_NUC10), #if 0 /* Below is a quirk table taken from the old code. @@ -7867,6 +8419,10 @@ {.id = ALC299_FIXUP_PREDATOR_SPK, .name = "predator-spk"}, {.id = ALC298_FIXUP_HUAWEI_MBX_STEREO, .name = "huawei-mbx-stereo"}, {.id = ALC256_FIXUP_MEDION_HEADSET_NO_PRESENCE, .name = "alc256-medion-headset"}, + {.id = ALC298_FIXUP_SAMSUNG_HEADPHONE_VERY_QUIET, .name = "alc298-samsung-headphone"}, + {.id = ALC255_FIXUP_XIAOMI_HEADSET_MIC, .name = "alc255-xiaomi-headset"}, + {.id = ALC274_FIXUP_HP_MIC, .name = "alc274-hp-mic-detect"}, + {.id = ALC245_FIXUP_HP_X360_AMP, .name = "alc245-hp-x360-amp"}, {} }; #define ALC225_STANDARD_PINS \ @@ -7961,6 +8517,12 @@ {0x19, 0x02a11020}, {0x1a, 0x02a11030}, {0x21, 0x0221101f}), + SND_HDA_PIN_QUIRK(0x10ec0236, 0x1028, "Dell", ALC236_FIXUP_DELL_AIO_HEADSET_MIC, + {0x21, 0x02211010}), + SND_HDA_PIN_QUIRK(0x10ec0236, 0x103c, "HP", ALC256_FIXUP_HP_HEADSET_MIC, + {0x14, 0x90170110}, + {0x19, 0x02a11020}, + {0x21, 0x02211030}), SND_HDA_PIN_QUIRK(0x10ec0255, 0x1028, "Dell", ALC255_FIXUP_DELL2_MIC_NO_PRESENCE, {0x14, 0x90170110}, {0x21, 0x02211020}), @@ -8063,6 +8625,14 @@ {0x1a, 0x90a70130}, {0x1b, 0x90170110}, {0x21, 0x03211020}), + SND_HDA_PIN_QUIRK(0x10ec0256, 0x103c, "HP", ALC256_FIXUP_HP_HEADSET_MIC, + {0x14, 0x90170110}, + {0x19, 0x02a11020}, + {0x21, 0x0221101f}), + SND_HDA_PIN_QUIRK(0x10ec0274, 0x103c, "HP", ALC274_FIXUP_HP_HEADSET_MIC, + {0x17, 0x90170110}, + {0x19, 0x03a11030}, + {0x21, 0x03211020}), SND_HDA_PIN_QUIRK(0x10ec0280, 0x103c, "HP", ALC280_FIXUP_HP_GPIO4, {0x12, 0x90a60130}, {0x14, 0x90170110}, @@ -8100,6 +8670,22 @@ {0x12, 0x90a60140}, {0x19, 0x04a11030}, {0x21, 0x04211020}), + SND_HDA_PIN_QUIRK(0x10ec0282, 0x1025, "Acer", ALC282_FIXUP_ACER_DISABLE_LINEOUT, + ALC282_STANDARD_PINS, + {0x12, 0x90a609c0}, + {0x18, 0x03a11830}, + {0x19, 0x04a19831}, + {0x1a, 0x0481303f}, + {0x1b, 0x04211020}, + {0x21, 0x0321101f}), + SND_HDA_PIN_QUIRK(0x10ec0282, 0x1025, "Acer", ALC282_FIXUP_ACER_DISABLE_LINEOUT, + ALC282_STANDARD_PINS, + {0x12, 0x90a60940}, + {0x18, 0x03a11830}, + {0x19, 0x04a19831}, + {0x1a, 0x0481303f}, + {0x1b, 0x04211020}, + {0x21, 0x0321101f}), SND_HDA_PIN_QUIRK(0x10ec0283, 0x1028, "Dell", ALC269_FIXUP_DELL1_MIC_NO_PRESENCE, ALC282_STANDARD_PINS, {0x12, 0x90a60130}, @@ -8113,11 +8699,20 @@ {0x12, 0x90a60130}, {0x19, 0x03a11020}, {0x21, 0x0321101f}), + SND_HDA_PIN_QUIRK(0x10ec0285, 0x17aa, "Lenovo", ALC285_FIXUP_THINKPAD_NO_BASS_SPK_HEADSET_JACK, + {0x14, 0x90170110}, + {0x19, 0x04a11040}, + {0x21, 0x04211020}), SND_HDA_PIN_QUIRK(0x10ec0285, 0x17aa, "Lenovo", ALC285_FIXUP_LENOVO_PC_BEEP_IN_NOISE, {0x12, 0x90a60130}, {0x14, 0x90170110}, {0x19, 0x04a11040}, {0x21, 0x04211020}), + SND_HDA_PIN_QUIRK(0x10ec0287, 0x17aa, "Lenovo", ALC285_FIXUP_THINKPAD_HEADSET_JACK, + {0x14, 0x90170110}, + {0x17, 0x90170111}, + {0x19, 0x03a11030}, + {0x21, 0x03211020}), SND_HDA_PIN_QUIRK(0x10ec0286, 0x1025, "Acer", ALC286_FIXUP_ACER_AIO_MIC_NO_PRESENCE, {0x12, 0x90a60130}, {0x17, 0x90170110}, @@ -8181,6 +8776,9 @@ SND_HDA_PIN_QUIRK(0x10ec0293, 0x1028, "Dell", ALC293_FIXUP_DELL1_MIC_NO_PRESENCE, ALC292_STANDARD_PINS, {0x13, 0x90a60140}), + SND_HDA_PIN_QUIRK(0x10ec0294, 0x1043, "ASUS", ALC294_FIXUP_ASUS_HPE, + {0x17, 0x90170110}, + {0x21, 0x04211020}), SND_HDA_PIN_QUIRK(0x10ec0294, 0x1043, "ASUS", ALC294_FIXUP_ASUS_MIC, {0x14, 0x90170110}, {0x1b, 0x90a70130}, @@ -8951,6 +9549,7 @@ ALC662_FIXUP_LED_GPIO1, ALC662_FIXUP_IDEAPAD, ALC272_FIXUP_MARIO, + ALC662_FIXUP_CZC_ET26, ALC662_FIXUP_CZC_P10T, ALC662_FIXUP_SKU_IGNORE, ALC662_FIXUP_HP_RP5800, @@ -9020,6 +9619,25 @@ .type = HDA_FIXUP_FUNC, .v.func = alc272_fixup_mario, }, + [ALC662_FIXUP_CZC_ET26] = { + .type = HDA_FIXUP_PINS, + .v.pins = (const struct hda_pintbl[]) { + {0x12, 0x403cc000}, + {0x14, 0x90170110}, /* speaker */ + {0x15, 0x411111f0}, + {0x16, 0x411111f0}, + {0x18, 0x01a19030}, /* mic */ + {0x19, 0x90a7013f}, /* int-mic */ + {0x1a, 0x01014020}, + {0x1b, 0x0121401f}, + {0x1c, 0x411111f0}, + {0x1d, 0x411111f0}, + {0x1e, 0x40478e35}, + {} + }, + .chained = true, + .chain_id = ALC662_FIXUP_SKU_IGNORE + }, [ALC662_FIXUP_CZC_P10T] = { .type = HDA_FIXUP_VERBS, .v.verbs = (const struct hda_verb[]) { @@ -9381,6 +9999,7 @@ SND_PCI_QUIRK(0x1028, 0x0698, "Dell", ALC668_FIXUP_DELL_MIC_NO_PRESENCE), SND_PCI_QUIRK(0x1028, 0x069f, "Dell", ALC668_FIXUP_DELL_MIC_NO_PRESENCE), SND_PCI_QUIRK(0x103c, 0x1632, "HP RP5800", ALC662_FIXUP_HP_RP5800), + SND_PCI_QUIRK(0x103c, 0x873e, "HP", ALC671_FIXUP_HP_HEADSET_MIC2), SND_PCI_QUIRK(0x1043, 0x1080, "Asus UX501VW", ALC668_FIXUP_HEADSET_MODE), SND_PCI_QUIRK(0x1043, 0x11cd, "Asus N550", ALC662_FIXUP_ASUS_Nx50), SND_PCI_QUIRK(0x1043, 0x13df, "Asus N550JX", ALC662_FIXUP_BASS_1A), @@ -9403,6 +10022,7 @@ SND_PCI_QUIRK(0x1849, 0x5892, "ASRock B150M", ALC892_FIXUP_ASROCK_MOBO), SND_PCI_QUIRK(0x19da, 0xa130, "Zotac Z68", ALC662_FIXUP_ZOTAC_Z68), SND_PCI_QUIRK(0x1b0a, 0x01b8, "ACER Veriton", ALC662_FIXUP_ACER_VERITON), + SND_PCI_QUIRK(0x1b35, 0x1234, "CZC ET26", ALC662_FIXUP_CZC_ET26), SND_PCI_QUIRK(0x1b35, 0x2206, "CZC P10T", ALC662_FIXUP_CZC_P10T), SND_PCI_QUIRK(0x1025, 0x0566, "Acer Aspire Ethos 8951G", ALC669_FIXUP_ACER_ASPIRE_ETHOS), @@ -9745,6 +10365,7 @@ HDA_CODEC_ENTRY(0x10ec0888, "ALC888", patch_alc882), HDA_CODEC_ENTRY(0x10ec0889, "ALC889", patch_alc882), HDA_CODEC_ENTRY(0x10ec0892, "ALC892", patch_alc662), + HDA_CODEC_ENTRY(0x10ec0897, "ALC897", patch_alc662), HDA_CODEC_ENTRY(0x10ec0899, "ALC898", patch_alc882), HDA_CODEC_ENTRY(0x10ec0900, "ALC1150", patch_alc882), HDA_CODEC_ENTRY(0x10ec0b00, "ALCS1200A", patch_alc882), --- linux-azure-5.8-5.8.0.orig/sound/pci/hda/patch_sigmatel.c +++ linux-azure-5.8-5.8.0/sound/pci/hda/patch_sigmatel.c @@ -320,15 +320,18 @@ } /* hook for controlling mic-mute LED GPIO */ -static void stac_capture_led_update(struct hda_codec *codec) +static int stac_capture_led_update(struct led_classdev *led_cdev, + enum led_brightness brightness) { + struct hda_codec *codec = dev_to_hda_codec(led_cdev->dev->parent); struct sigmatel_spec *spec = codec->spec; - if (spec->gen.micmute_led.led_value) + if (brightness) spec->gpio_data |= spec->mic_mute_led_gpio; else spec->gpio_data &= ~spec->mic_mute_led_gpio; stac_gpio_set(codec, spec->gpio_mask, spec->gpio_dir, spec->gpio_data); + return 0; } static int stac_vrefout_set(struct hda_codec *codec, @@ -366,10 +369,9 @@ } /* update mute-LED accoring to the master switch */ -static void stac_update_led_status(struct hda_codec *codec, int enabled) +static void stac_update_led_status(struct hda_codec *codec, bool muted) { struct sigmatel_spec *spec = codec->spec; - int muted = !enabled; if (!spec->gpio_led) return; @@ -393,9 +395,13 @@ } /* vmaster hook to update mute LED */ -static void stac_vmaster_hook(void *private_data, int val) +static int stac_vmaster_hook(struct led_classdev *led_cdev, + enum led_brightness brightness) { - stac_update_led_status(private_data, val); + struct hda_codec *codec = dev_to_hda_codec(led_cdev->dev->parent); + + stac_update_led_status(codec, brightness); + return 0; } /* automute hook to handle GPIO mute and EAPD updates */ @@ -832,7 +838,7 @@ static const struct snd_kcontrol_new beep_vol_ctl = HDA_CODEC_VOLUME(NULL, 0, 0, 0); - /* check for mute support for the the amp */ + /* check for mute support for the amp */ if ((caps & AC_AMPCAP_MUTE) >> AC_AMPCAP_MUTE_SHIFT) { const struct snd_kcontrol_new *temp; if (spec->anabeep_nid == nid) @@ -4313,7 +4319,7 @@ #endif if (spec->gpio_led) - spec->gen.vmaster_mute.hook = stac_vmaster_hook; + snd_hda_gen_add_mute_led_cdev(codec, stac_vmaster_hook); if (spec->aloopback_ctl && snd_hda_get_bool_hint(codec, "loopback") == 1) { @@ -4636,7 +4642,7 @@ spec->gpio_dir |= spec->mic_mute_led_gpio; spec->mic_enabled = 0; spec->gpio_data |= spec->mic_mute_led_gpio; - snd_hda_gen_add_micmute_led(codec, stac_capture_led_update); + snd_hda_gen_add_micmute_led_cdev(codec, stac_capture_led_update); } } --- linux-azure-5.8-5.8.0.orig/sound/pci/hda/patch_via.c +++ linux-azure-5.8-5.8.0/sound/pci/hda/patch_via.c @@ -113,6 +113,7 @@ spec->codec_type = VT1708S; spec->gen.indep_hp = 1; spec->gen.keep_eapd_on = 1; + spec->gen.dac_min_mute = 1; spec->gen.pcm_playback_hook = via_playback_pcm_hook; spec->gen.add_stereo_mix_input = HDA_HINT_STEREO_MIX_AUTO; codec->power_save_node = 1; @@ -1002,6 +1003,7 @@ enum { VIA_FIXUP_INTMIC_BOOST, VIA_FIXUP_ASUS_G75, + VIA_FIXUP_POWER_SAVE, }; static void via_fixup_intmic_boost(struct hda_codec *codec, @@ -1011,6 +1013,13 @@ override_mic_boost(codec, 0x30, 0, 2, 40); } +static void via_fixup_power_save(struct hda_codec *codec, + const struct hda_fixup *fix, int action) +{ + if (action == HDA_FIXUP_ACT_PRE_PROBE) + codec->power_save_node = 0; +} + static const struct hda_fixup via_fixups[] = { [VIA_FIXUP_INTMIC_BOOST] = { .type = HDA_FIXUP_FUNC, @@ -1025,11 +1034,16 @@ { } } }, + [VIA_FIXUP_POWER_SAVE] = { + .type = HDA_FIXUP_FUNC, + .v.func = via_fixup_power_save, + }, }; static const struct snd_pci_quirk vt2002p_fixups[] = { SND_PCI_QUIRK(0x1043, 0x1487, "Asus G75", VIA_FIXUP_ASUS_G75), SND_PCI_QUIRK(0x1043, 0x8532, "Asus X202E", VIA_FIXUP_INTMIC_BOOST), + SND_PCI_QUIRK_VENDOR(0x1558, "Clevo", VIA_FIXUP_POWER_SAVE), {} }; --- linux-azure-5.8-5.8.0.orig/sound/pci/hda/thinkpad_helper.c +++ linux-azure-5.8-5.8.0/sound/pci/hda/thinkpad_helper.c @@ -3,13 +3,11 @@ * to be included from codec driver */ -#if IS_ENABLED(CONFIG_THINKPAD_ACPI) && IS_REACHABLE(CONFIG_LEDS_TRIGGER_AUDIO) +#if IS_ENABLED(CONFIG_THINKPAD_ACPI) #include #include -static void (*old_vmaster_hook)(void *, int); - static bool is_thinkpad(struct hda_codec *codec) { return (codec->core.subsystem_id >> 16 == 0x17aa) && @@ -17,25 +15,14 @@ acpi_dev_found("IBM0068")); } -static void update_tpacpi_mute_led(void *private_data, int enabled) -{ - if (old_vmaster_hook) - old_vmaster_hook(private_data, enabled); - - ledtrig_audio_set(LED_AUDIO_MUTE, enabled ? LED_OFF : LED_ON); -} - static void hda_fixup_thinkpad_acpi(struct hda_codec *codec, const struct hda_fixup *fix, int action) { - struct hda_gen_spec *spec = codec->spec; - if (action == HDA_FIXUP_ACT_PROBE) { if (!is_thinkpad(codec)) return; - old_vmaster_hook = spec->vmaster_mute.hook; - spec->vmaster_mute.hook = update_tpacpi_mute_led; - snd_hda_gen_fixup_micmute_led(codec, fix, action); + snd_hda_gen_add_mute_led_cdev(codec, NULL); + snd_hda_gen_add_micmute_led_cdev(codec, NULL); } } --- linux-azure-5.8-5.8.0.orig/sound/pci/ice1712/prodigy192.c +++ linux-azure-5.8-5.8.0/sound/pci/ice1712/prodigy192.c @@ -32,7 +32,7 @@ * Experimentally I found out that only a combination of * OCKS0=1, OCKS1=1 (128fs, 64fs output) and ice1724 - * VT1724_MT_I2S_MCLK_128X=0 (256fs input) yields correct - * sampling rate. That means the the FPGA doubles the + * sampling rate. That means that the FPGA doubles the * MCK01 rate. * * Copyright (c) 2003 Takashi Iwai --- linux-azure-5.8-5.8.0.orig/sound/pci/mixart/mixart_core.c +++ linux-azure-5.8-5.8.0/sound/pci/mixart/mixart_core.c @@ -70,7 +70,6 @@ unsigned int i; #endif - mutex_lock(&mgr->msg_lock); err = 0; /* copy message descriptor from miXart to driver */ @@ -119,8 +118,6 @@ writel_be(headptr, MIXART_MEM(mgr, MSG_OUTBOUND_FREE_HEAD)); _clean_exit: - mutex_unlock(&mgr->msg_lock); - return err; } @@ -258,7 +255,9 @@ resp.data = resp_data; resp.size = max_resp_size; + mutex_lock(&mgr->msg_lock); err = get_msg(mgr, &resp, msg_frame); + mutex_unlock(&mgr->msg_lock); if( request->message_id != resp.message_id ) dev_err(&mgr->pci->dev, "RESPONSE ERROR!\n"); --- linux-azure-5.8-5.8.0.orig/sound/pci/oxygen/xonar_dg.c +++ linux-azure-5.8-5.8.0/sound/pci/oxygen/xonar_dg.c @@ -29,7 +29,7 @@ * GPIO 4 <- headphone detect * GPIO 5 -> enable ADC analog circuit for the left channel * GPIO 6 -> enable ADC analog circuit for the right channel - * GPIO 7 -> switch green rear output jack between CS4245 and and the first + * GPIO 7 -> switch green rear output jack between CS4245 and the first * channel of CS4361 (mechanical relay) * GPIO 8 -> enable output to speakers * --- linux-azure-5.8-5.8.0.orig/sound/soc/amd/acp-da7219-max98357a.c +++ linux-azure-5.8-5.8.0/sound/soc/amd/acp-da7219-max98357a.c @@ -73,8 +73,13 @@ return ret; } - da7219_dai_wclk = clk_get(component->dev, "da7219-dai-wclk"); - da7219_dai_bclk = clk_get(component->dev, "da7219-dai-bclk"); + da7219_dai_wclk = devm_clk_get(component->dev, "da7219-dai-wclk"); + if (IS_ERR(da7219_dai_wclk)) + return PTR_ERR(da7219_dai_wclk); + + da7219_dai_bclk = devm_clk_get(component->dev, "da7219-dai-bclk"); + if (IS_ERR(da7219_dai_bclk)) + return PTR_ERR(da7219_dai_bclk); ret = snd_soc_card_jack_new(card, "Headset Jack", SND_JACK_HEADSET | SND_JACK_LINEOUT | --- linux-azure-5.8-5.8.0.orig/sound/soc/amd/acp3x-rt5682-max9836.c +++ linux-azure-5.8-5.8.0/sound/soc/amd/acp3x-rt5682-max9836.c @@ -346,12 +346,17 @@ ret = devm_snd_soc_register_card(&pdev->dev, &acp3x_card); if (ret) { - dev_err(&pdev->dev, + if (ret != -EPROBE_DEFER) + dev_err(&pdev->dev, "devm_snd_soc_register_card(%s) failed: %d\n", acp3x_card.name, ret); - return ret; + else + dev_dbg(&pdev->dev, + "devm_snd_soc_register_card(%s) probe deferred: %d\n", + card->name, ret); } - return 0; + + return ret; } static const struct acpi_device_id acp3x_audio_acpi_match[] = { --- linux-azure-5.8-5.8.0.orig/sound/soc/amd/raven/pci-acp3x.c +++ linux-azure-5.8-5.8.0/sound/soc/amd/raven/pci-acp3x.c @@ -115,6 +115,10 @@ int ret, i; u32 addr, val; + /* Raven device detection */ + if (pci->revision != 0x00) + return -ENODEV; + if (pci_enable_device(pci)) { dev_err(&pci->dev, "pci_enable_device failed\n"); return -ENODEV; --- linux-azure-5.8-5.8.0.orig/sound/soc/amd/renoir/acp3x-pdm-dma.c +++ linux-azure-5.8-5.8.0/sound/soc/amd/renoir/acp3x-pdm-dma.c @@ -314,40 +314,30 @@ return 0; } -static int acp_pdm_dai_hw_params(struct snd_pcm_substream *substream, - struct snd_pcm_hw_params *params, - struct snd_soc_dai *dai) +static int acp_pdm_dai_trigger(struct snd_pcm_substream *substream, + int cmd, struct snd_soc_dai *dai) { struct pdm_stream_instance *rtd; + int ret; + bool pdm_status; unsigned int ch_mask; rtd = substream->runtime->private_data; - switch (params_channels(params)) { + ret = 0; + switch (substream->runtime->channels) { case TWO_CH: ch_mask = 0x00; break; default: return -EINVAL; } - rn_writel(ch_mask, rtd->acp_base + ACP_WOV_PDM_NO_OF_CHANNELS); - rn_writel(PDM_DECIMATION_FACTOR, rtd->acp_base + - ACP_WOV_PDM_DECIMATION_FACTOR); - return 0; -} - -static int acp_pdm_dai_trigger(struct snd_pcm_substream *substream, - int cmd, struct snd_soc_dai *dai) -{ - struct pdm_stream_instance *rtd; - int ret; - bool pdm_status; - - rtd = substream->runtime->private_data; - ret = 0; switch (cmd) { case SNDRV_PCM_TRIGGER_START: case SNDRV_PCM_TRIGGER_RESUME: case SNDRV_PCM_TRIGGER_PAUSE_RELEASE: + rn_writel(ch_mask, rtd->acp_base + ACP_WOV_PDM_NO_OF_CHANNELS); + rn_writel(PDM_DECIMATION_FACTOR, rtd->acp_base + + ACP_WOV_PDM_DECIMATION_FACTOR); rtd->bytescount = acp_pdm_get_byte_count(rtd, substream->stream); pdm_status = check_pdm_dma_status(rtd->acp_base); @@ -369,7 +359,6 @@ } static struct snd_soc_dai_ops acp_pdm_dai_ops = { - .hw_params = acp_pdm_dai_hw_params, .trigger = acp_pdm_dai_trigger, }; --- linux-azure-5.8-5.8.0.orig/sound/soc/amd/renoir/rn-pci-acp3x.c +++ linux-azure-5.8-5.8.0/sound/soc/amd/renoir/rn-pci-acp3x.c @@ -5,6 +5,8 @@ //Copyright 2020 Advanced Micro Devices, Inc. #include +#include +#include #include #include #include @@ -18,6 +20,15 @@ module_param(acp_power_gating, int, 0644); MODULE_PARM_DESC(acp_power_gating, "Enable acp power gating"); +/** + * dmic_acpi_check = -1 - Use ACPI/DMI method to detect the DMIC hardware presence at runtime + * = 0 - Skip the DMIC device creation and return probe failure + * = 1 - Force DMIC support + */ +static int dmic_acpi_check = ACP_DMIC_AUTO; +module_param(dmic_acpi_check, bint, 0644); +MODULE_PARM_DESC(dmic_acpi_check, "Digital microphone presence (-1=auto, 0=none, 1=force)"); + struct acp_dev_data { void __iomem *acp_base; struct resource *res; @@ -152,15 +163,56 @@ return 0; } +static const struct dmi_system_id rn_acp_quirk_table[] = { + { + /* Lenovo IdeaPad S340-14API */ + .matches = { + DMI_EXACT_MATCH(DMI_BOARD_VENDOR, "LENOVO"), + DMI_EXACT_MATCH(DMI_PRODUCT_NAME, "81NB"), + } + }, + { + /* Lenovo IdeaPad Flex 5 14ARE05 */ + .matches = { + DMI_EXACT_MATCH(DMI_BOARD_VENDOR, "LENOVO"), + DMI_EXACT_MATCH(DMI_PRODUCT_NAME, "81X2"), + } + }, + { + /* Lenovo IdeaPad 5 15ARE05 */ + .matches = { + DMI_EXACT_MATCH(DMI_BOARD_VENDOR, "LENOVO"), + DMI_EXACT_MATCH(DMI_PRODUCT_NAME, "81YQ"), + } + }, + { + /* Lenovo ThinkPad X395 */ + .matches = { + DMI_EXACT_MATCH(DMI_BOARD_VENDOR, "LENOVO"), + DMI_EXACT_MATCH(DMI_BOARD_NAME, "20NLCTO1WW"), + } + }, + {} +}; + static int snd_rn_acp_probe(struct pci_dev *pci, const struct pci_device_id *pci_id) { struct acp_dev_data *adata; struct platform_device_info pdevinfo[ACP_DEVS]; +#if defined(CONFIG_ACPI) + acpi_handle handle; + acpi_integer dmic_status; +#endif + const struct dmi_system_id *dmi_id; unsigned int irqflags; int ret, index; u32 addr; + /* Renoir device check */ + if (pci->revision != 0x01) + return -ENODEV; + if (pci_enable_device(pci)) { dev_err(&pci->dev, "pci_enable_device failed\n"); return -ENODEV; @@ -201,6 +253,30 @@ if (ret) goto disable_msi; + if (!dmic_acpi_check) { + ret = -ENODEV; + goto de_init; + } else if (dmic_acpi_check == ACP_DMIC_AUTO) { +#if defined(CONFIG_ACPI) + handle = ACPI_HANDLE(&pci->dev); + ret = acpi_evaluate_integer(handle, "_WOV", NULL, &dmic_status); + if (ACPI_FAILURE(ret)) { + ret = -EINVAL; + goto de_init; + } + if (!dmic_status) { + ret = -ENODEV; + goto de_init; + } +#endif + dmi_id = dmi_first_match(rn_acp_quirk_table); + if (dmi_id && !dmi_id->driver_data) { + dev_info(&pci->dev, "ACPI settings override using DMI (ACP mic is not present)"); + ret = -ENODEV; + goto de_init; + } + } + adata->res = devm_kzalloc(&pci->dev, sizeof(struct resource) * 2, GFP_KERNEL); --- linux-azure-5.8-5.8.0.orig/sound/soc/amd/renoir/rn_acp3x.h +++ linux-azure-5.8-5.8.0/sound/soc/amd/renoir/rn_acp3x.h @@ -55,6 +55,8 @@ #define MAX_BUFFER (CAPTURE_MAX_PERIOD_SIZE * CAPTURE_MAX_NUM_PERIODS) #define MIN_BUFFER MAX_BUFFER +#define ACP_DMIC_AUTO -1 + struct pdm_dev_data { u32 pdm_irq; void __iomem *acp_base; --- linux-azure-5.8-5.8.0.orig/sound/soc/codecs/Kconfig +++ linux-azure-5.8-5.8.0/sound/soc/codecs/Kconfig @@ -539,6 +539,7 @@ config SND_SOC_CROS_EC_CODEC tristate "codec driver for ChromeOS EC" depends on CROS_EC + select CRYPTO select CRYPTO_LIB_SHA256 help If you say yes here you will get support for the --- linux-azure-5.8-5.8.0.orig/sound/soc/codecs/ak4458.c +++ linux-azure-5.8-5.8.0/sound/soc/codecs/ak4458.c @@ -523,18 +523,10 @@ .ops = &ak4458_dai_ops, }; -static void ak4458_power_off(struct ak4458_priv *ak4458) +static void ak4458_reset(struct ak4458_priv *ak4458, bool active) { if (ak4458->reset_gpiod) { - gpiod_set_value_cansleep(ak4458->reset_gpiod, 0); - usleep_range(1000, 2000); - } -} - -static void ak4458_power_on(struct ak4458_priv *ak4458) -{ - if (ak4458->reset_gpiod) { - gpiod_set_value_cansleep(ak4458->reset_gpiod, 1); + gpiod_set_value_cansleep(ak4458->reset_gpiod, active); usleep_range(1000, 2000); } } @@ -548,7 +540,7 @@ if (ak4458->mute_gpiod) gpiod_set_value_cansleep(ak4458->mute_gpiod, 1); - ak4458_power_on(ak4458); + ak4458_reset(ak4458, false); ret = snd_soc_component_update_bits(component, AK4458_00_CONTROL1, 0x80, 0x80); /* ACKS bit = 1; 10000000 */ @@ -571,7 +563,7 @@ { struct ak4458_priv *ak4458 = snd_soc_component_get_drvdata(component); - ak4458_power_off(ak4458); + ak4458_reset(ak4458, true); } #ifdef CONFIG_PM @@ -581,7 +573,7 @@ regcache_cache_only(ak4458->regmap, true); - ak4458_power_off(ak4458); + ak4458_reset(ak4458, true); if (ak4458->mute_gpiod) gpiod_set_value_cansleep(ak4458->mute_gpiod, 0); @@ -596,8 +588,8 @@ if (ak4458->mute_gpiod) gpiod_set_value_cansleep(ak4458->mute_gpiod, 1); - ak4458_power_off(ak4458); - ak4458_power_on(ak4458); + ak4458_reset(ak4458, true); + ak4458_reset(ak4458, false); regcache_cache_only(ak4458->regmap, false); regcache_mark_dirty(ak4458->regmap); --- linux-azure-5.8-5.8.0.orig/sound/soc/codecs/cpcap.c +++ linux-azure-5.8-5.8.0/sound/soc/codecs/cpcap.c @@ -1263,12 +1263,12 @@ if (direction == SNDRV_PCM_STREAM_CAPTURE) { mask = 0x0000; - mask |= CPCAP_BIT_MIC1_RX_TIMESLOT0; - mask |= CPCAP_BIT_MIC1_RX_TIMESLOT1; - mask |= CPCAP_BIT_MIC1_RX_TIMESLOT2; - mask |= CPCAP_BIT_MIC2_TIMESLOT0; - mask |= CPCAP_BIT_MIC2_TIMESLOT1; - mask |= CPCAP_BIT_MIC2_TIMESLOT2; + mask |= BIT(CPCAP_BIT_MIC1_RX_TIMESLOT0); + mask |= BIT(CPCAP_BIT_MIC1_RX_TIMESLOT1); + mask |= BIT(CPCAP_BIT_MIC1_RX_TIMESLOT2); + mask |= BIT(CPCAP_BIT_MIC2_TIMESLOT0); + mask |= BIT(CPCAP_BIT_MIC2_TIMESLOT1); + mask |= BIT(CPCAP_BIT_MIC2_TIMESLOT2); val = 0x0000; if (channels >= 2) val = BIT(CPCAP_BIT_MIC1_RX_TIMESLOT0); --- linux-azure-5.8-5.8.0.orig/sound/soc/codecs/cros_ec_codec.c +++ linux-azure-5.8-5.8.0/sound/soc/codecs/cros_ec_codec.c @@ -354,7 +354,7 @@ snd_soc_dapm_to_component(w->dapm); struct cros_ec_codec_priv *priv = snd_soc_component_get_drvdata(component); - struct ec_param_ec_codec_i2s_rx p; + struct ec_param_ec_codec_i2s_rx p = {}; switch (event) { case SND_SOC_DAPM_PRE_PMU: --- linux-azure-5.8-5.8.0.orig/sound/soc/codecs/cs42l51.c +++ linux-azure-5.8-5.8.0/sound/soc/codecs/cs42l51.c @@ -245,8 +245,28 @@ &cs42l51_adcr_mux_controls), }; +static int mclk_event(struct snd_soc_dapm_widget *w, + struct snd_kcontrol *kcontrol, int event) +{ + struct snd_soc_component *comp = snd_soc_dapm_to_component(w->dapm); + struct cs42l51_private *cs42l51 = snd_soc_component_get_drvdata(comp); + + switch (event) { + case SND_SOC_DAPM_PRE_PMU: + return clk_prepare_enable(cs42l51->mclk_handle); + case SND_SOC_DAPM_POST_PMD: + /* Delay mclk shutdown to fulfill power-down sequence requirements */ + msleep(20); + clk_disable_unprepare(cs42l51->mclk_handle); + break; + } + + return 0; +} + static const struct snd_soc_dapm_widget cs42l51_dapm_mclk_widgets[] = { - SND_SOC_DAPM_CLOCK_SUPPLY("MCLK") + SND_SOC_DAPM_SUPPLY("MCLK", SND_SOC_NOPM, 0, 0, mclk_event, + SND_SOC_DAPM_PRE_PMU | SND_SOC_DAPM_POST_PMD), }; static const struct snd_soc_dapm_route cs42l51_routes[] = { --- linux-azure-5.8-5.8.0.orig/sound/soc/codecs/cs42l56.c +++ linux-azure-5.8-5.8.0/sound/soc/codecs/cs42l56.c @@ -1248,6 +1248,7 @@ dev_err(&i2c_client->dev, "CS42L56 Device ID (%X). Expected %X\n", devid, CS42L56_DEVID); + ret = -EINVAL; goto err_enable; } alpha_rev = reg & CS42L56_AREV_MASK; @@ -1305,7 +1306,7 @@ ret = devm_snd_soc_register_component(&i2c_client->dev, &soc_component_dev_cs42l56, &cs42l56_dai, 1); if (ret < 0) - return ret; + goto err_enable; return 0; --- linux-azure-5.8-5.8.0.orig/sound/soc/codecs/cx2072x.c +++ linux-azure-5.8-5.8.0/sound/soc/codecs/cx2072x.c @@ -1579,7 +1579,7 @@ .id = CX2072X_DAI_DSP, .probe = cx2072x_dsp_dai_probe, .playback = { - .stream_name = "Playback", + .stream_name = "DSP Playback", .channels_min = 2, .channels_max = 2, .rates = CX2072X_RATES_DSP, @@ -1591,7 +1591,7 @@ .name = "cx2072x-aec", .id = 3, .capture = { - .stream_name = "Capture", + .stream_name = "AEC Capture", .channels_min = 2, .channels_max = 2, .rates = CX2072X_RATES_DSP, --- linux-azure-5.8-5.8.0.orig/sound/soc/codecs/hdac_hda.c +++ linux-azure-5.8-5.8.0/sound/soc/codecs/hdac_hda.c @@ -289,7 +289,6 @@ struct hdac_hda_priv *hda_pvt; struct hda_pcm_stream *hda_stream; struct hda_pcm *pcm; - int ret; hda_pvt = snd_soc_component_get_drvdata(component); pcm = snd_soc_find_pcm_from_dai(hda_pvt, dai); @@ -300,11 +299,7 @@ hda_stream = &pcm->stream[substream->stream]; - ret = hda_stream->ops.open(hda_stream, &hda_pvt->codec, substream); - if (ret < 0) - snd_hda_codec_pcm_put(pcm); - - return ret; + return hda_stream->ops.open(hda_stream, &hda_pvt->codec, substream); } static void hdac_hda_dai_close(struct snd_pcm_substream *substream, --- linux-azure-5.8-5.8.0.orig/sound/soc/codecs/max98390.c +++ linux-azure-5.8-5.8.0/sound/soc/codecs/max98390.c @@ -784,6 +784,7 @@ if (fw->size < MAX98390_DSM_PARAM_MIN_SIZE) { dev_err(component->dev, "param fw is invalid.\n"); + ret = -EINVAL; goto err_alloc; } dsm_param = (char *)fw->data; @@ -794,6 +795,7 @@ fw->size < param_size + MAX98390_DSM_PAYLOAD_OFFSET) { dev_err(component->dev, "param fw is invalid.\n"); + ret = -EINVAL; goto err_alloc; } regmap_write(max98390->regmap, MAX98390_R203A_AMP_EN, 0x80); --- linux-azure-5.8-5.8.0.orig/sound/soc/codecs/msm8916-wcd-analog.c +++ linux-azure-5.8-5.8.0/sound/soc/codecs/msm8916-wcd-analog.c @@ -19,8 +19,8 @@ #define CDC_D_REVISION1 (0xf000) #define CDC_D_PERPH_SUBTYPE (0xf005) -#define CDC_D_INT_EN_SET (0x015) -#define CDC_D_INT_EN_CLR (0x016) +#define CDC_D_INT_EN_SET (0xf015) +#define CDC_D_INT_EN_CLR (0xf016) #define MBHC_SWITCH_INT BIT(7) #define MBHC_MIC_ELECTRICAL_INS_REM_DET BIT(6) #define MBHC_BUTTON_PRESS_DET BIT(5) --- linux-azure-5.8-5.8.0.orig/sound/soc/codecs/pcm3168a.c +++ linux-azure-5.8-5.8.0/sound/soc/codecs/pcm3168a.c @@ -306,6 +306,13 @@ struct pcm3168a_priv *pcm3168a = snd_soc_component_get_drvdata(dai->component); int ret; + /* + * Some sound card sets 0 Hz as reset, + * but it is impossible to set. Ignore it here + */ + if (freq == 0) + return 0; + if (freq > PCM3168A_MAX_SYSCLK) return -EINVAL; --- linux-azure-5.8-5.8.0.orig/sound/soc/codecs/rt1308-sdw.c +++ linux-azure-5.8-5.8.0/sound/soc/codecs/rt1308-sdw.c @@ -684,8 +684,8 @@ /* Regmap Initialization */ regmap = devm_regmap_init_sdw(slave, &rt1308_sdw_regmap); - if (!regmap) - return -EINVAL; + if (IS_ERR(regmap)) + return PTR_ERR(regmap); rt1308_sdw_init(&slave->dev, regmap, slave); --- linux-azure-5.8-5.8.0.orig/sound/soc/codecs/rt5682-i2c.c +++ linux-azure-5.8-5.8.0/sound/soc/codecs/rt5682-i2c.c @@ -268,6 +268,9 @@ { struct rt5682_priv *rt5682 = i2c_get_clientdata(client); + cancel_delayed_work_sync(&rt5682->jack_detect_work); + cancel_delayed_work_sync(&rt5682->jd_check_work); + rt5682_reset(rt5682); } --- linux-azure-5.8-5.8.0.orig/sound/soc/codecs/rt700-sdw.c +++ linux-azure-5.8-5.8.0/sound/soc/codecs/rt700-sdw.c @@ -452,8 +452,8 @@ /* Regmap Initialization */ sdw_regmap = devm_regmap_init_sdw(slave, &rt700_sdw_regmap); - if (!sdw_regmap) - return -EINVAL; + if (IS_ERR(sdw_regmap)) + return PTR_ERR(sdw_regmap); regmap = devm_regmap_init(&slave->dev, NULL, &slave->dev, &rt700_regmap); --- linux-azure-5.8-5.8.0.orig/sound/soc/codecs/rt711-sdw.c +++ linux-azure-5.8-5.8.0/sound/soc/codecs/rt711-sdw.c @@ -452,8 +452,8 @@ /* Regmap Initialization */ sdw_regmap = devm_regmap_init_sdw(slave, &rt711_sdw_regmap); - if (!sdw_regmap) - return -EINVAL; + if (IS_ERR(sdw_regmap)) + return PTR_ERR(sdw_regmap); regmap = devm_regmap_init(&slave->dev, NULL, &slave->dev, &rt711_regmap); --- linux-azure-5.8-5.8.0.orig/sound/soc/codecs/rt711.c +++ linux-azure-5.8-5.8.0/sound/soc/codecs/rt711.c @@ -462,6 +462,8 @@ unsigned int read_ll, read_rl; int i; + mutex_lock(&rt711->calibrate_mutex); + /* Can't use update bit function, so read the original value first */ addr_h = mc->reg; addr_l = mc->rreg; @@ -547,6 +549,8 @@ if (dapm->bias_level <= SND_SOC_BIAS_STANDBY) regmap_write(rt711->regmap, RT711_SET_AUDIO_POWER_STATE, AC_PWRST_D3); + + mutex_unlock(&rt711->calibrate_mutex); return 0; } @@ -859,9 +863,11 @@ break; case SND_SOC_BIAS_STANDBY: + mutex_lock(&rt711->calibrate_mutex); regmap_write(rt711->regmap, RT711_SET_AUDIO_POWER_STATE, AC_PWRST_D3); + mutex_unlock(&rt711->calibrate_mutex); break; default: --- linux-azure-5.8-5.8.0.orig/sound/soc/codecs/rt715-sdw.c +++ linux-azure-5.8-5.8.0/sound/soc/codecs/rt715-sdw.c @@ -527,8 +527,8 @@ /* Regmap Initialization */ sdw_regmap = devm_regmap_init_sdw(slave, &rt715_sdw_regmap); - if (!sdw_regmap) - return -EINVAL; + if (IS_ERR(sdw_regmap)) + return PTR_ERR(sdw_regmap); regmap = devm_regmap_init(&slave->dev, NULL, &slave->dev, &rt715_regmap); --- linux-azure-5.8-5.8.0.orig/sound/soc/codecs/tas2770.c +++ linux-azure-5.8-5.8.0/sound/soc/codecs/tas2770.c @@ -16,7 +16,6 @@ #include #include #include -#include #include #include #include @@ -57,7 +56,12 @@ TAS2770_PWR_CTRL_MASK, TAS2770_PWR_CTRL_ACTIVE); break; - + case SND_SOC_BIAS_STANDBY: + case SND_SOC_BIAS_PREPARE: + snd_soc_component_update_bits(component, + TAS2770_PWR_CTRL, + TAS2770_PWR_CTRL_MASK, TAS2770_PWR_CTRL_MUTE); + break; case SND_SOC_BIAS_OFF: snd_soc_component_update_bits(component, TAS2770_PWR_CTRL, @@ -135,23 +139,18 @@ TAS2770_PWR_CTRL, TAS2770_PWR_CTRL_MASK, TAS2770_PWR_CTRL_MUTE); - if (ret) - goto end; break; case SND_SOC_DAPM_PRE_PMD: ret = snd_soc_component_update_bits(component, TAS2770_PWR_CTRL, TAS2770_PWR_CTRL_MASK, TAS2770_PWR_CTRL_SHUTDOWN); - if (ret) - goto end; break; default: dev_err(tas2770->dev, "Not supported evevt\n"); return -EINVAL; } -end: if (ret < 0) return ret; @@ -243,6 +242,9 @@ return -EINVAL; } + if (ret < 0) + return ret; + tas2770->channel_size = bitwidth; ret = snd_soc_component_update_bits(component, @@ -251,16 +253,15 @@ TAS2770_TDM_CFG_REG5_50_MASK, TAS2770_TDM_CFG_REG5_VSNS_ENABLE | tas2770->v_sense_slot); - if (ret) - goto end; + if (ret < 0) + return ret; + ret = snd_soc_component_update_bits(component, TAS2770_TDM_CFG_REG6, TAS2770_TDM_CFG_REG6_ISNS_MASK | TAS2770_TDM_CFG_REG6_50_MASK, TAS2770_TDM_CFG_REG6_ISNS_ENABLE | tas2770->i_sense_slot); - -end: if (ret < 0) return ret; @@ -278,36 +279,35 @@ TAS2770_TDM_CFG_REG0, TAS2770_TDM_CFG_REG0_SMP_MASK, TAS2770_TDM_CFG_REG0_SMP_48KHZ); - if (ret) - goto end; + if (ret < 0) + return ret; + ret = snd_soc_component_update_bits(component, TAS2770_TDM_CFG_REG0, TAS2770_TDM_CFG_REG0_31_MASK, TAS2770_TDM_CFG_REG0_31_44_1_48KHZ); - if (ret) - goto end; break; case 44100: ret = snd_soc_component_update_bits(component, TAS2770_TDM_CFG_REG0, TAS2770_TDM_CFG_REG0_SMP_MASK, TAS2770_TDM_CFG_REG0_SMP_44_1KHZ); - if (ret) - goto end; + if (ret < 0) + return ret; + ret = snd_soc_component_update_bits(component, TAS2770_TDM_CFG_REG0, TAS2770_TDM_CFG_REG0_31_MASK, TAS2770_TDM_CFG_REG0_31_44_1_48KHZ); - if (ret) - goto end; break; case 96000: ret = snd_soc_component_update_bits(component, TAS2770_TDM_CFG_REG0, TAS2770_TDM_CFG_REG0_SMP_MASK, TAS2770_TDM_CFG_REG0_SMP_48KHZ); - if (ret) - goto end; + if (ret < 0) + return ret; + ret = snd_soc_component_update_bits(component, TAS2770_TDM_CFG_REG0, TAS2770_TDM_CFG_REG0_31_MASK, @@ -318,8 +318,9 @@ TAS2770_TDM_CFG_REG0, TAS2770_TDM_CFG_REG0_SMP_MASK, TAS2770_TDM_CFG_REG0_SMP_44_1KHZ); - if (ret) - goto end; + if (ret < 0) + return ret; + ret = snd_soc_component_update_bits(component, TAS2770_TDM_CFG_REG0, TAS2770_TDM_CFG_REG0_31_MASK, @@ -330,22 +331,22 @@ TAS2770_TDM_CFG_REG0, TAS2770_TDM_CFG_REG0_SMP_MASK, TAS2770_TDM_CFG_REG0_SMP_48KHZ); - if (ret) - goto end; + if (ret < 0) + return ret; + ret = snd_soc_component_update_bits(component, TAS2770_TDM_CFG_REG0, TAS2770_TDM_CFG_REG0_31_MASK, TAS2770_TDM_CFG_REG0_31_176_4_192KHZ); - if (ret) - goto end; break; case 17640: ret = snd_soc_component_update_bits(component, TAS2770_TDM_CFG_REG0, TAS2770_TDM_CFG_REG0_SMP_MASK, TAS2770_TDM_CFG_REG0_SMP_44_1KHZ); - if (ret) - goto end; + if (ret < 0) + return ret; + ret = snd_soc_component_update_bits(component, TAS2770_TDM_CFG_REG0, TAS2770_TDM_CFG_REG0_31_MASK, @@ -355,7 +356,6 @@ ret = -EINVAL; } -end: if (ret < 0) return ret; @@ -574,6 +574,8 @@ tas2770->component = component; + tas2770_reset(tas2770); + return 0; } @@ -700,29 +702,28 @@ rc = fwnode_property_read_u32(dev->fwnode, "ti,asi-format", &tas2770->asi_format); if (rc) { - dev_err(tas2770->dev, "Looking up %s property failed %d\n", - "ti,asi-format", rc); - goto end; + dev_info(tas2770->dev, "Property %s is missing setting default slot\n", + "ti,asi-format"); + tas2770->asi_format = 0; } rc = fwnode_property_read_u32(dev->fwnode, "ti,imon-slot-no", &tas2770->i_sense_slot); if (rc) { - dev_err(tas2770->dev, "Looking up %s property failed %d\n", - "ti,imon-slot-no", rc); - goto end; + dev_info(tas2770->dev, "Property %s is missing setting default slot\n", + "ti,imon-slot-no"); + tas2770->i_sense_slot = 0; } rc = fwnode_property_read_u32(dev->fwnode, "ti,vmon-slot-no", &tas2770->v_sense_slot); if (rc) { - dev_err(tas2770->dev, "Looking up %s property failed %d\n", - "ti,vmon-slot-no", rc); - goto end; + dev_info(tas2770->dev, "Property %s is missing setting default slot\n", + "ti,vmon-slot-no"); + tas2770->v_sense_slot = 2; } -end: - return rc; + return 0; } static int tas2770_i2c_probe(struct i2c_client *client, @@ -758,8 +759,7 @@ } } - tas2770->reset_gpio = devm_gpiod_get_optional(tas2770->dev, - "reset-gpio", + tas2770->reset_gpio = devm_gpiod_get_optional(tas2770->dev, "reset", GPIOD_OUT_HIGH); if (IS_ERR(tas2770->reset_gpio)) { if (PTR_ERR(tas2770->reset_gpio) == -EPROBE_DEFER) { @@ -771,8 +771,6 @@ tas2770->channel_size = 0; tas2770->slot_width = 0; - tas2770_reset(tas2770); - result = tas2770_register_codec(tas2770); if (result) dev_err(tas2770->dev, "Register codec failed.\n"); @@ -781,13 +779,6 @@ return result; } -static int tas2770_i2c_remove(struct i2c_client *client) -{ - pm_runtime_disable(&client->dev); - return 0; -} - - static const struct i2c_device_id tas2770_i2c_id[] = { { "tas2770", 0}, { } @@ -808,7 +799,6 @@ .of_match_table = of_match_ptr(tas2770_of_match), }, .probe = tas2770_i2c_probe, - .remove = tas2770_i2c_remove, .id_table = tas2770_i2c_id, }; --- linux-azure-5.8-5.8.0.orig/sound/soc/codecs/tlv320adcx140.c +++ linux-azure-5.8-5.8.0/sound/soc/codecs/tlv320adcx140.c @@ -154,7 +154,7 @@ }; /* Digital Volume control. From -100 to 27 dB in 0.5 dB steps */ -static DECLARE_TLV_DB_SCALE(dig_vol_tlv, -10000, 50, 0); +static DECLARE_TLV_DB_SCALE(dig_vol_tlv, -10050, 50, 0); /* ADC gain. From 0 to 42 dB in 1 dB steps */ static DECLARE_TLV_DB_SCALE(adc_tlv, 0, 100, 0); @@ -930,6 +930,8 @@ if (!adcx140) return -ENOMEM; + adcx140->dev = &i2c->dev; + adcx140->gpio_reset = devm_gpiod_get_optional(adcx140->dev, "reset", GPIOD_OUT_LOW); if (IS_ERR(adcx140->gpio_reset)) @@ -957,7 +959,7 @@ ret); return ret; } - adcx140->dev = &i2c->dev; + i2c_set_clientdata(i2c, adcx140); return devm_snd_soc_register_component(&i2c->dev, --- linux-azure-5.8-5.8.0.orig/sound/soc/codecs/tlv320aic32x4.c +++ linux-azure-5.8-5.8.0/sound/soc/codecs/tlv320aic32x4.c @@ -665,7 +665,7 @@ } static int aic32x4_setup_clocks(struct snd_soc_component *component, - unsigned int sample_rate) + unsigned int sample_rate, unsigned int channels) { u8 aosr; u16 dosr; @@ -753,7 +753,9 @@ dosr); clk_set_rate(clocks[5].clk, - sample_rate * 32); + sample_rate * 32 * + channels); + return 0; } } @@ -775,7 +777,8 @@ u8 iface1_reg = 0; u8 dacsetup_reg = 0; - aic32x4_setup_clocks(component, params_rate(params)); + aic32x4_setup_clocks(component, params_rate(params), + params_channels(params)); switch (params_width(params)) { case 16: --- linux-azure-5.8-5.8.0.orig/sound/soc/codecs/wcd9335.c +++ linux-azure-5.8-5.8.0/sound/soc/codecs/wcd9335.c @@ -618,7 +618,7 @@ "ZERO", "RX_MIX_TX8", "DEC8", "DEC8_192" }; -static const DECLARE_TLV_DB_SCALE(digital_gain, 0, 1, 0); +static const DECLARE_TLV_DB_SCALE(digital_gain, -8400, 100, -8400); static const DECLARE_TLV_DB_SCALE(line_gain, 0, 7, 1); static const DECLARE_TLV_DB_SCALE(analog_gain, 0, 25, 1); static const DECLARE_TLV_DB_SCALE(ear_pa_gain, 0, 150, 0); --- linux-azure-5.8-5.8.0.orig/sound/soc/codecs/wcd934x.c +++ linux-azure-5.8-5.8.0/sound/soc/codecs/wcd934x.c @@ -551,7 +551,7 @@ struct soc_bytes_ext bytes_ext; }; -static const DECLARE_TLV_DB_SCALE(digital_gain, 0, 1, 0); +static const DECLARE_TLV_DB_SCALE(digital_gain, -8400, 100, -8400); static const DECLARE_TLV_DB_SCALE(line_gain, 0, 7, 1); static const DECLARE_TLV_DB_SCALE(analog_gain, 0, 25, 1); static const DECLARE_TLV_DB_SCALE(ear_pa_gain, 0, 150, 0); --- linux-azure-5.8-5.8.0.orig/sound/soc/codecs/wm8958-dsp2.c +++ linux-azure-5.8-5.8.0/sound/soc/codecs/wm8958-dsp2.c @@ -412,8 +412,12 @@ struct snd_kcontrol *kcontrol, int event) { struct snd_soc_component *component = snd_soc_dapm_to_component(w->dapm); + struct wm8994 *control = dev_get_drvdata(component->dev->parent); int i; + if (control->type != WM8958) + return 0; + switch (event) { case SND_SOC_DAPM_POST_PMU: case SND_SOC_DAPM_PRE_PMU: --- linux-azure-5.8-5.8.0.orig/sound/soc/codecs/wm8994.c +++ linux-azure-5.8-5.8.0/sound/soc/codecs/wm8994.c @@ -3491,6 +3491,8 @@ return -EINVAL; } + pm_runtime_get_sync(component->dev); + switch (micbias) { case 1: micdet = &wm8994->micdet[0]; @@ -3538,6 +3540,8 @@ snd_soc_dapm_sync(dapm); + pm_runtime_put(component->dev); + return 0; } EXPORT_SYMBOL_GPL(wm8994_mic_detect); @@ -3905,6 +3909,8 @@ return -EINVAL; } + pm_runtime_get_sync(component->dev); + if (jack) { snd_soc_dapm_force_enable_pin(dapm, "CLK_SYS"); snd_soc_dapm_sync(dapm); @@ -3973,6 +3979,8 @@ snd_soc_dapm_sync(dapm); } + pm_runtime_put(component->dev); + return 0; } EXPORT_SYMBOL_GPL(wm8958_mic_detect); @@ -4166,11 +4174,13 @@ wm8994->hubs.dcs_readback_mode = 2; break; } + wm8994->hubs.micd_scthr = true; break; case WM8958: wm8994->hubs.dcs_readback_mode = 1; wm8994->hubs.hp_startup_mode = 1; + wm8994->hubs.micd_scthr = true; switch (control->revision) { case 0: @@ -4600,8 +4610,12 @@ pm_runtime_enable(&pdev->dev); pm_runtime_idle(&pdev->dev); - return devm_snd_soc_register_component(&pdev->dev, &soc_component_dev_wm8994, + ret = devm_snd_soc_register_component(&pdev->dev, &soc_component_dev_wm8994, wm8994_dai, ARRAY_SIZE(wm8994_dai)); + if (ret < 0) + pm_runtime_disable(&pdev->dev); + + return ret; } static int wm8994_remove(struct platform_device *pdev) --- linux-azure-5.8-5.8.0.orig/sound/soc/codecs/wm8997.c +++ linux-azure-5.8-5.8.0/sound/soc/codecs/wm8997.c @@ -1177,6 +1177,8 @@ goto err_spk_irqs; } + return ret; + err_spk_irqs: arizona_free_spk_irqs(arizona); --- linux-azure-5.8-5.8.0.orig/sound/soc/codecs/wm8998.c +++ linux-azure-5.8-5.8.0/sound/soc/codecs/wm8998.c @@ -1375,7 +1375,7 @@ ret = arizona_init_spk_irqs(arizona); if (ret < 0) - return ret; + goto err_pm_disable; ret = devm_snd_soc_register_component(&pdev->dev, &soc_component_dev_wm8998, @@ -1390,6 +1390,8 @@ err_spk_irqs: arizona_free_spk_irqs(arizona); +err_pm_disable: + pm_runtime_disable(&pdev->dev); return ret; } --- linux-azure-5.8-5.8.0.orig/sound/soc/codecs/wm_adsp.c +++ linux-azure-5.8-5.8.0/sound/soc/codecs/wm_adsp.c @@ -1513,7 +1513,7 @@ ctl_work = kzalloc(sizeof(*ctl_work), GFP_KERNEL); if (!ctl_work) { ret = -ENOMEM; - goto err_ctl_cache; + goto err_list_del; } ctl_work->dsp = dsp; @@ -1523,7 +1523,8 @@ return 0; -err_ctl_cache: +err_list_del: + list_del(&ctl->list); kfree(ctl->cache); err_ctl_subname: kfree(ctl->subname); @@ -1931,6 +1932,7 @@ mem = wm_adsp_find_region(dsp, type); if (!mem) { adsp_err(dsp, "No region of type: %x\n", type); + ret = -EINVAL; goto out_fw; } @@ -2023,11 +2025,14 @@ unsigned int alg) { struct wm_coeff_ctl *pos, *rslt = NULL; + const char *fw_txt = wm_adsp_fw_text[dsp->fw]; list_for_each_entry(pos, &dsp->ctl_list, list) { if (!pos->subname) continue; if (strncmp(pos->subname, name, pos->subname_len) == 0 && + strncmp(pos->fw_name, fw_txt, + SNDRV_CTL_ELEM_ID_NAME_MAXLEN) == 0 && pos->alg_region.alg == alg && pos->alg_region.type == type) { rslt = pos; @@ -2043,6 +2048,7 @@ { struct wm_coeff_ctl *ctl; struct snd_kcontrol *kcontrol; + char ctl_name[SNDRV_CTL_ELEM_ID_NAME_MAXLEN]; int ret; ctl = wm_adsp_get_ctl(dsp, name, type, alg); @@ -2053,8 +2059,25 @@ return -EINVAL; ret = wm_coeff_write_ctrl(ctl, buf, len); + if (ret) + return ret; + + if (ctl->flags & WMFW_CTL_FLAG_SYS) + return 0; + + if (dsp->component->name_prefix) + snprintf(ctl_name, SNDRV_CTL_ELEM_ID_NAME_MAXLEN, "%s %s", + dsp->component->name_prefix, ctl->name); + else + snprintf(ctl_name, SNDRV_CTL_ELEM_ID_NAME_MAXLEN, "%s", + ctl->name); + + kcontrol = snd_soc_card_get_kcontrol(dsp->component->card, ctl_name); + if (!kcontrol) { + adsp_err(dsp, "Can't find kcontrol %s\n", ctl_name); + return -EINVAL; + } - kcontrol = snd_soc_card_get_kcontrol(dsp->component->card, ctl->name); snd_ctl_notify(dsp->component->card->snd_card, SNDRV_CTL_EVENT_MASK_VALUE, &kcontrol->id); --- linux-azure-5.8-5.8.0.orig/sound/soc/codecs/wm_hubs.c +++ linux-azure-5.8-5.8.0/sound/soc/codecs/wm_hubs.c @@ -1223,6 +1223,9 @@ snd_soc_component_update_bits(component, WM8993_ADDITIONAL_CONTROL, WM8993_LINEOUT2_FB, WM8993_LINEOUT2_FB); + if (!hubs->micd_scthr) + return 0; + snd_soc_component_update_bits(component, WM8993_MICBIAS, WM8993_JD_SCTHR_MASK | WM8993_JD_THR_MASK | WM8993_MICB1_LVL | WM8993_MICB2_LVL, --- linux-azure-5.8-5.8.0.orig/sound/soc/codecs/wm_hubs.h +++ linux-azure-5.8-5.8.0/sound/soc/codecs/wm_hubs.h @@ -27,6 +27,7 @@ int hp_startup_mode; int series_startup; int no_series_update; + bool micd_scthr; bool no_cache_dac_hp_direct; struct list_head dcs_cache; --- linux-azure-5.8-5.8.0.orig/sound/soc/codecs/wsa881x.c +++ linux-azure-5.8-5.8.0/sound/soc/codecs/wsa881x.c @@ -640,6 +640,7 @@ .val_bits = 8, .cache_type = REGCACHE_RBTREE, .reg_defaults = wsa881x_defaults, + .max_register = WSA881X_SPKR_STATUS3, .num_reg_defaults = ARRAY_SIZE(wsa881x_defaults), .volatile_reg = wsa881x_volatile_register, .readable_reg = wsa881x_readable_register, @@ -1026,6 +1027,8 @@ .id = 0, .playback = { .stream_name = "SPKR Playback", + .rates = SNDRV_PCM_RATE_48000, + .formats = SNDRV_PCM_FMTBIT_S16_LE, .rate_max = 48000, .rate_min = 48000, .channels_min = 1, --- linux-azure-5.8-5.8.0.orig/sound/soc/fsl/fsl_easrc.c +++ linux-azure-5.8-5.8.0/sound/soc/fsl/fsl_easrc.c @@ -1133,7 +1133,7 @@ struct fsl_easrc_ctx_priv *ctx_priv = ctx->private; struct fsl_easrc_data_fmt *in_fmt = &ctx_priv->in_params.fmt; struct fsl_easrc_data_fmt *out_fmt = &ctx_priv->out_params.fmt; - int ret; + int ret = 0; /* Get the bitfield values for input data format */ if (in_raw_format && out_raw_format) { --- linux-azure-5.8-5.8.0.orig/sound/soc/fsl/fsl_sai.c +++ linux-azure-5.8-5.8.0/sound/soc/fsl/fsl_sai.c @@ -680,10 +680,11 @@ regmap_write(sai->regmap, FSL_SAI_RCSR(ofs), 0); regmap_update_bits(sai->regmap, FSL_SAI_TCR1(ofs), - FSL_SAI_CR1_RFW_MASK, + FSL_SAI_CR1_RFW_MASK(sai->soc_data->fifo_depth), sai->soc_data->fifo_depth - FSL_SAI_MAXBURST_TX); regmap_update_bits(sai->regmap, FSL_SAI_RCR1(ofs), - FSL_SAI_CR1_RFW_MASK, FSL_SAI_MAXBURST_RX - 1); + FSL_SAI_CR1_RFW_MASK(sai->soc_data->fifo_depth), + FSL_SAI_MAXBURST_RX - 1); snd_soc_dai_init_dma_data(cpu_dai, &sai->dma_params_tx, &sai->dma_params_rx); @@ -693,7 +694,7 @@ return 0; } -static struct snd_soc_dai_driver fsl_sai_dai = { +static struct snd_soc_dai_driver fsl_sai_dai_template = { .probe = fsl_sai_dai_probe, .playback = { .stream_name = "CPU-Playback", @@ -965,12 +966,15 @@ return ret; } + memcpy(&sai->cpu_dai_drv, &fsl_sai_dai_template, + sizeof(fsl_sai_dai_template)); + /* Sync Tx with Rx as default by following old DT binding */ sai->synchronous[RX] = true; sai->synchronous[TX] = false; - fsl_sai_dai.symmetric_rates = 1; - fsl_sai_dai.symmetric_channels = 1; - fsl_sai_dai.symmetric_samplebits = 1; + sai->cpu_dai_drv.symmetric_rates = 1; + sai->cpu_dai_drv.symmetric_channels = 1; + sai->cpu_dai_drv.symmetric_samplebits = 1; if (of_find_property(np, "fsl,sai-synchronous-rx", NULL) && of_find_property(np, "fsl,sai-asynchronous", NULL)) { @@ -987,9 +991,9 @@ /* Discard all settings for asynchronous mode */ sai->synchronous[RX] = false; sai->synchronous[TX] = false; - fsl_sai_dai.symmetric_rates = 0; - fsl_sai_dai.symmetric_channels = 0; - fsl_sai_dai.symmetric_samplebits = 0; + sai->cpu_dai_drv.symmetric_rates = 0; + sai->cpu_dai_drv.symmetric_channels = 0; + sai->cpu_dai_drv.symmetric_samplebits = 0; } if (of_find_property(np, "fsl,sai-mclk-direction-output", NULL) && @@ -1018,7 +1022,7 @@ pm_runtime_enable(&pdev->dev); ret = devm_snd_soc_register_component(&pdev->dev, &fsl_component, - &fsl_sai_dai, 1); + &sai->cpu_dai_drv, 1); if (ret) goto err_pm_disable; --- linux-azure-5.8-5.8.0.orig/sound/soc/fsl/fsl_sai.h +++ linux-azure-5.8-5.8.0/sound/soc/fsl/fsl_sai.h @@ -94,7 +94,7 @@ #define FSL_SAI_CSR_FRDE BIT(0) /* SAI Transmit and Receive Configuration 1 Register */ -#define FSL_SAI_CR1_RFW_MASK 0x1f +#define FSL_SAI_CR1_RFW_MASK(x) ((x) - 1) /* SAI Transmit and Receive Configuration 2 Register */ #define FSL_SAI_CR2_SYNC BIT(30) @@ -180,6 +180,7 @@ unsigned int bclk_ratio; const struct fsl_sai_soc_data *soc_data; + struct snd_soc_dai_driver cpu_dai_drv; struct snd_dmaengine_dai_dma_data dma_params_rx; struct snd_dmaengine_dai_dma_data dma_params_tx; }; --- linux-azure-5.8-5.8.0.orig/sound/soc/fsl/imx-es8328.c +++ linux-azure-5.8-5.8.0/sound/soc/fsl/imx-es8328.c @@ -145,13 +145,13 @@ data = devm_kzalloc(dev, sizeof(*data), GFP_KERNEL); if (!data) { ret = -ENOMEM; - goto fail; + goto put_device; } comp = devm_kzalloc(dev, 3 * sizeof(*comp), GFP_KERNEL); if (!comp) { ret = -ENOMEM; - goto fail; + goto put_device; } data->dev = dev; @@ -182,12 +182,12 @@ ret = snd_soc_of_parse_card_name(&data->card, "model"); if (ret) { dev_err(dev, "Unable to parse card name\n"); - goto fail; + goto put_device; } ret = snd_soc_of_parse_audio_routing(&data->card, "audio-routing"); if (ret) { dev_err(dev, "Unable to parse routing: %d\n", ret); - goto fail; + goto put_device; } data->card.num_links = 1; data->card.owner = THIS_MODULE; @@ -196,10 +196,12 @@ ret = snd_soc_register_card(&data->card); if (ret) { dev_err(dev, "Unable to register: %d\n", ret); - goto fail; + goto put_device; } platform_set_drvdata(pdev, data); +put_device: + put_device(&ssi_pdev->dev); fail: of_node_put(ssi_np); of_node_put(codec_np); --- linux-azure-5.8-5.8.0.orig/sound/soc/generic/simple-card-utils.c +++ linux-azure-5.8-5.8.0/sound/soc/generic/simple-card-utils.c @@ -172,16 +172,15 @@ * or device's module clock. */ clk = devm_get_clk_from_child(dev, node, NULL); - if (!IS_ERR(clk)) { - simple_dai->sysclk = clk_get_rate(clk); + if (IS_ERR(clk)) + clk = devm_get_clk_from_child(dev, dlc->of_node, NULL); + if (!IS_ERR(clk)) { simple_dai->clk = clk; - } else if (!of_property_read_u32(node, "system-clock-frequency", &val)) { + simple_dai->sysclk = clk_get_rate(clk); + } else if (!of_property_read_u32(node, "system-clock-frequency", + &val)) { simple_dai->sysclk = val; - } else { - clk = devm_get_clk_from_child(dev, dlc->of_node, NULL); - if (!IS_ERR(clk)) - simple_dai->sysclk = clk_get_rate(clk); } if (of_property_read_bool(node, "system-clock-direction-out")) --- linux-azure-5.8-5.8.0.orig/sound/soc/img/img-i2s-in.c +++ linux-azure-5.8-5.8.0/sound/soc/img/img-i2s-in.c @@ -343,8 +343,10 @@ chan_control_mask = IMG_I2S_IN_CH_CTL_CLK_TRANS_MASK; ret = pm_runtime_get_sync(i2s->dev); - if (ret < 0) + if (ret < 0) { + pm_runtime_put_noidle(i2s->dev); return ret; + } for (i = 0; i < i2s->active_channels; i++) img_i2s_in_ch_disable(i2s, i); --- linux-azure-5.8-5.8.0.orig/sound/soc/img/img-parallel-out.c +++ linux-azure-5.8-5.8.0/sound/soc/img/img-parallel-out.c @@ -163,8 +163,10 @@ } ret = pm_runtime_get_sync(prl->dev); - if (ret < 0) + if (ret < 0) { + pm_runtime_put_noidle(prl->dev); return ret; + } reg = img_prl_out_readl(prl, IMG_PRL_OUT_CTL); reg = (reg & ~IMG_PRL_OUT_CTL_EDGE_MASK) | control_set; --- linux-azure-5.8-5.8.0.orig/sound/soc/intel/atom/sst-mfld-platform-pcm.c +++ linux-azure-5.8-5.8.0/sound/soc/intel/atom/sst-mfld-platform-pcm.c @@ -331,7 +331,7 @@ ret_val = power_up_sst(stream); if (ret_val < 0) - return ret_val; + goto out_power_up; /* Make sure, that the period size is always even */ snd_pcm_hw_constraint_step(substream->runtime, 0, @@ -340,8 +340,9 @@ return snd_pcm_hw_constraint_integer(runtime, SNDRV_PCM_HW_PARAM_PERIODS); out_ops: - kfree(stream); mutex_unlock(&sst_lock); +out_power_up: + kfree(stream); return ret_val; } --- linux-azure-5.8-5.8.0.orig/sound/soc/intel/boards/bxt_rt298.c +++ linux-azure-5.8-5.8.0/sound/soc/intel/boards/bxt_rt298.c @@ -565,6 +565,7 @@ /* broxton audio machine driver for SPT + RT298S */ static struct snd_soc_card broxton_rt298 = { .name = "broxton-rt298", + .owner = THIS_MODULE, .dai_link = broxton_rt298_dais, .num_links = ARRAY_SIZE(broxton_rt298_dais), .controls = broxton_controls, @@ -580,6 +581,7 @@ static struct snd_soc_card geminilake_rt298 = { .name = "geminilake-rt298", + .owner = THIS_MODULE, .dai_link = broxton_rt298_dais, .num_links = ARRAY_SIZE(broxton_rt298_dais), .controls = broxton_controls, --- linux-azure-5.8-5.8.0.orig/sound/soc/intel/boards/bytcr_rt5640.c +++ linux-azure-5.8-5.8.0/sound/soc/intel/boards/bytcr_rt5640.c @@ -521,10 +521,10 @@ .driver_data = (void *)(BYT_RT5640_IN1_MAP | BYT_RT5640_MCLK_EN), }, - { /* HP Pavilion x2 10-n000nd */ + { /* HP Pavilion x2 10-k0XX, 10-n0XX */ .matches = { - DMI_EXACT_MATCH(DMI_SYS_VENDOR, "Hewlett-Packard"), - DMI_EXACT_MATCH(DMI_PRODUCT_NAME, "HP Pavilion x2 Detachable"), + DMI_MATCH(DMI_SYS_VENDOR, "Hewlett-Packard"), + DMI_MATCH(DMI_PRODUCT_NAME, "HP Pavilion x2 Detachable"), }, .driver_data = (void *)(BYT_RT5640_DMIC1_MAP | BYT_RT5640_JD_SRC_JD2_IN4N | @@ -533,6 +533,17 @@ BYT_RT5640_SSP0_AIF1 | BYT_RT5640_MCLK_EN), }, + { /* HP Pavilion x2 10-p0XX */ + .matches = { + DMI_MATCH(DMI_SYS_VENDOR, "HP"), + DMI_MATCH(DMI_PRODUCT_NAME, "HP x2 Detachable 10-p0XX"), + }, + .driver_data = (void *)(BYT_RT5640_DMIC1_MAP | + BYT_RT5640_JD_SRC_JD1_IN4P | + BYT_RT5640_OVCD_TH_1500UA | + BYT_RT5640_OVCD_SF_0P75 | + BYT_RT5640_MCLK_EN), + }, { /* HP Stream 7 */ .matches = { DMI_EXACT_MATCH(DMI_SYS_VENDOR, "Hewlett-Packard"), @@ -591,6 +602,16 @@ BYT_RT5640_SSP0_AIF1 | BYT_RT5640_MCLK_EN), }, + { /* MPMAN Converter 9, similar hw as the I.T.Works TW891 2-in-1 */ + .matches = { + DMI_MATCH(DMI_SYS_VENDOR, "MPMAN"), + DMI_MATCH(DMI_PRODUCT_NAME, "Converter9"), + }, + .driver_data = (void *)(BYTCR_INPUT_DEFAULTS | + BYT_RT5640_MONO_SPEAKER | + BYT_RT5640_SSP0_AIF1 | + BYT_RT5640_MCLK_EN), + }, { /* MPMAN MPWIN895CL */ .matches = { --- linux-azure-5.8-5.8.0.orig/sound/soc/intel/boards/cml_rt1011_rt5682.c +++ linux-azure-5.8-5.8.0/sound/soc/intel/boards/cml_rt1011_rt5682.c @@ -34,7 +34,6 @@ #define SOF_RT1011_SPEAKER_WR BIT(1) #define SOF_RT1011_SPEAKER_TL BIT(2) #define SOF_RT1011_SPEAKER_TR BIT(3) -#define SPK_CH 4 /* Default: Woofer speakers */ static unsigned long sof_rt1011_quirk = SOF_RT1011_SPEAKER_WL | @@ -376,10 +375,17 @@ SND_SOC_DAILINK_DEF(ssp1_pin, DAILINK_COMP_ARRAY(COMP_CPU("SSP1 Pin"))); -SND_SOC_DAILINK_DEF(ssp1_codec, +SND_SOC_DAILINK_DEF(ssp1_codec_2spk, DAILINK_COMP_ARRAY( /* WL */ COMP_CODEC("i2c-10EC1011:00", CML_RT1011_CODEC_DAI), /* WR */ COMP_CODEC("i2c-10EC1011:01", CML_RT1011_CODEC_DAI))); +SND_SOC_DAILINK_DEF(ssp1_codec_4spk, + DAILINK_COMP_ARRAY( + /* WL */ COMP_CODEC("i2c-10EC1011:00", CML_RT1011_CODEC_DAI), + /* WR */ COMP_CODEC("i2c-10EC1011:01", CML_RT1011_CODEC_DAI), + /* TL */ COMP_CODEC("i2c-10EC1011:02", CML_RT1011_CODEC_DAI), + /* TR */ COMP_CODEC("i2c-10EC1011:03", CML_RT1011_CODEC_DAI))); + SND_SOC_DAILINK_DEF(dmic_pin, DAILINK_COMP_ARRAY(COMP_CPU("DMIC01 Pin"))); @@ -475,7 +481,7 @@ .no_pcm = 1, .init = cml_rt1011_spk_init, .ops = &cml_rt1011_ops, - SND_SOC_DAILINK_REG(ssp1_pin, ssp1_codec, platform), + SND_SOC_DAILINK_REG(ssp1_pin, ssp1_codec_2spk, platform), }, }; @@ -488,11 +494,21 @@ .dlc = COMP_CODEC_CONF("i2c-10EC1011:01"), .name_prefix = "WR", }, + /* single configuration structure for 2 and 4 channels */ + { + .dlc = COMP_CODEC_CONF("i2c-10EC1011:02"), + .name_prefix = "TL", + }, + { + .dlc = COMP_CODEC_CONF("i2c-10EC1011:03"), + .name_prefix = "TR", + }, }; /* Cometlake audio machine driver for RT1011 and RT5682 */ static struct snd_soc_card snd_soc_card_cml = { .name = "cml_rt1011_rt5682", + .owner = THIS_MODULE, .dai_link = cml_rt1011_rt5682_dailink, .num_links = ARRAY_SIZE(cml_rt1011_rt5682_dailink), .codec_conf = rt1011_conf, @@ -509,8 +525,6 @@ static int snd_cml_rt1011_probe(struct platform_device *pdev) { - struct snd_soc_dai_link_component *rt1011_dais_components; - struct snd_soc_codec_conf *rt1011_dais_confs; struct card_private *ctx; struct snd_soc_acpi_mach *mach; const char *platform_name; @@ -529,65 +543,15 @@ dev_info(&pdev->dev, "sof_rt1011_quirk = %lx\n", sof_rt1011_quirk); + /* when 4 speaker is available, update codec config */ if (sof_rt1011_quirk & (SOF_RT1011_SPEAKER_TL | SOF_RT1011_SPEAKER_TR)) { - rt1011_dais_confs = devm_kzalloc(&pdev->dev, - sizeof(struct snd_soc_codec_conf) * - SPK_CH, GFP_KERNEL); - - if (!rt1011_dais_confs) - return -ENOMEM; - - rt1011_dais_components = devm_kzalloc(&pdev->dev, - sizeof(struct snd_soc_dai_link_component) * - SPK_CH, GFP_KERNEL); - - if (!rt1011_dais_components) - return -ENOMEM; - - for (i = 0; i < SPK_CH; i++) { - rt1011_dais_confs[i].dlc.name = devm_kasprintf(&pdev->dev, - GFP_KERNEL, - "i2c-10EC1011:0%d", - i); - - if (!rt1011_dais_confs[i].dlc.name) - return -ENOMEM; - - switch (i) { - case 0: - rt1011_dais_confs[i].name_prefix = "WL"; - break; - case 1: - rt1011_dais_confs[i].name_prefix = "WR"; - break; - case 2: - rt1011_dais_confs[i].name_prefix = "TL"; - break; - case 3: - rt1011_dais_confs[i].name_prefix = "TR"; - break; - default: - return -EINVAL; - } - rt1011_dais_components[i].name = devm_kasprintf(&pdev->dev, - GFP_KERNEL, - "i2c-10EC1011:0%d", - i); - if (!rt1011_dais_components[i].name) - return -ENOMEM; - - rt1011_dais_components[i].dai_name = CML_RT1011_CODEC_DAI; - } - - snd_soc_card_cml.codec_conf = rt1011_dais_confs; - snd_soc_card_cml.num_configs = SPK_CH; - for (i = 0; i < ARRAY_SIZE(cml_rt1011_rt5682_dailink); i++) { if (!strcmp(cml_rt1011_rt5682_dailink[i].codecs->dai_name, - CML_RT1011_CODEC_DAI)) { - cml_rt1011_rt5682_dailink[i].codecs = rt1011_dais_components; - cml_rt1011_rt5682_dailink[i].num_codecs = SPK_CH; + CML_RT1011_CODEC_DAI)) { + cml_rt1011_rt5682_dailink[i].codecs = ssp1_codec_4spk; + cml_rt1011_rt5682_dailink[i].num_codecs = + ARRAY_SIZE(ssp1_codec_4spk); } } } --- linux-azure-5.8-5.8.0.orig/sound/soc/intel/boards/haswell.c +++ linux-azure-5.8-5.8.0/sound/soc/intel/boards/haswell.c @@ -205,6 +205,7 @@ .probe = haswell_audio_probe, .driver = { .name = "haswell-audio", + .pm = &snd_soc_pm_ops, }, }; --- linux-azure-5.8-5.8.0.orig/sound/soc/intel/boards/kbl_rt5663_max98927.c +++ linux-azure-5.8-5.8.0/sound/soc/intel/boards/kbl_rt5663_max98927.c @@ -401,17 +401,40 @@ struct snd_interval *chan = hw_param_interval(params, SNDRV_PCM_HW_PARAM_CHANNELS); struct snd_mask *fmt = hw_param_mask(params, SNDRV_PCM_HW_PARAM_FORMAT); - struct snd_soc_dpcm *dpcm = container_of( - params, struct snd_soc_dpcm, hw_params); - struct snd_soc_dai_link *fe_dai_link = dpcm->fe->dai_link; - struct snd_soc_dai_link *be_dai_link = dpcm->be->dai_link; + struct snd_soc_dpcm *dpcm, *rtd_dpcm = NULL; + + /* + * The following loop will be called only for playback stream + * In this platform, there is only one playback device on every SSP + */ + for_each_dpcm_fe(rtd, SNDRV_PCM_STREAM_PLAYBACK, dpcm) { + rtd_dpcm = dpcm; + break; + } + + /* + * This following loop will be called only for capture stream + * In this platform, there is only one capture device on every SSP + */ + for_each_dpcm_fe(rtd, SNDRV_PCM_STREAM_CAPTURE, dpcm) { + rtd_dpcm = dpcm; + break; + } + + if (!rtd_dpcm) + return -EINVAL; + + /* + * The above 2 loops are mutually exclusive based on the stream direction, + * thus rtd_dpcm variable will never be overwritten + */ /* * The ADSP will convert the FE rate to 48k, stereo, 24 bit */ - if (!strcmp(fe_dai_link->name, "Kbl Audio Port") || - !strcmp(fe_dai_link->name, "Kbl Audio Headset Playback") || - !strcmp(fe_dai_link->name, "Kbl Audio Capture Port")) { + if (!strcmp(rtd_dpcm->fe->dai_link->name, "Kbl Audio Port") || + !strcmp(rtd_dpcm->fe->dai_link->name, "Kbl Audio Headset Playback") || + !strcmp(rtd_dpcm->fe->dai_link->name, "Kbl Audio Capture Port")) { rate->min = rate->max = 48000; chan->min = chan->max = 2; snd_mask_none(fmt); @@ -421,7 +444,7 @@ * The speaker on the SSP0 supports S16_LE and not S24_LE. * thus changing the mask here */ - if (!strcmp(be_dai_link->name, "SSP0-Codec")) + if (!strcmp(rtd_dpcm->be->dai_link->name, "SSP0-Codec")) snd_mask_set_format(fmt, SNDRV_PCM_FORMAT_S16_LE); return 0; --- linux-azure-5.8-5.8.0.orig/sound/soc/intel/boards/kbl_rt5663_rt5514_max98927.c +++ linux-azure-5.8-5.8.0/sound/soc/intel/boards/kbl_rt5663_rt5514_max98927.c @@ -677,6 +677,8 @@ switch (level) { case SND_SOC_BIAS_PREPARE: if (dapm->bias_level == SND_SOC_BIAS_ON) { + if (!__clk_is_enabled(priv->mclk)) + return 0; dev_dbg(card->dev, "Disable mclk"); clk_disable_unprepare(priv->mclk); } else { --- linux-azure-5.8-5.8.0.orig/sound/soc/intel/boards/skl_hda_dsp_common.h +++ linux-azure-5.8-5.8.0/sound/soc/intel/boards/skl_hda_dsp_common.h @@ -33,6 +33,7 @@ int dai_index; const char *platform_name; bool common_hdmi_codec_drv; + bool idisp_codec; }; extern struct snd_soc_dai_link skl_hda_be_dai_links[HDA_DSP_MAX_BE_DAI_LINKS]; --- linux-azure-5.8-5.8.0.orig/sound/soc/intel/boards/skl_hda_dsp_generic.c +++ linux-azure-5.8-5.8.0/sound/soc/intel/boards/skl_hda_dsp_generic.c @@ -79,6 +79,9 @@ link->platforms->name = ctx->platform_name; link->nonatomic = 1; + if (!ctx->idisp_codec) + return 0; + if (strstr(link->name, "HDMI")) { ret = skl_hda_hdmi_add_pcm(card, ctx->pcm_count); @@ -118,19 +121,20 @@ static int skl_hda_fill_card_info(struct snd_soc_acpi_mach_params *mach_params) { struct snd_soc_card *card = &hda_soc_card; + struct skl_hda_private *ctx = snd_soc_card_get_drvdata(card); struct snd_soc_dai_link *dai_link; - u32 codec_count, codec_mask, idisp_mask; + u32 codec_count, codec_mask; int i, num_links, num_route; codec_mask = mach_params->codec_mask; codec_count = hweight_long(codec_mask); - idisp_mask = codec_mask & IDISP_CODEC_MASK; + ctx->idisp_codec = !!(codec_mask & IDISP_CODEC_MASK); if (!codec_count || codec_count > 2 || - (codec_count == 2 && !idisp_mask)) + (codec_count == 2 && !ctx->idisp_codec)) return -EINVAL; - if (codec_mask == idisp_mask) { + if (codec_mask == IDISP_CODEC_MASK) { /* topology with iDisp as the only HDA codec */ num_links = IDISP_DAI_COUNT + DMIC_DAI_COUNT; num_route = IDISP_ROUTE_COUNT; @@ -152,7 +156,7 @@ num_route = ARRAY_SIZE(skl_hda_map); card->dapm_widgets = skl_hda_widgets; card->num_dapm_widgets = ARRAY_SIZE(skl_hda_widgets); - if (!idisp_mask) { + if (!ctx->idisp_codec) { for (i = 0; i < IDISP_DAI_COUNT; i++) { skl_hda_be_dai_links[i].codecs = dummy_codec; skl_hda_be_dai_links[i].num_codecs = @@ -177,7 +181,7 @@ struct snd_soc_dai *dai; for_each_card_rtds(card, rtd) { - if (!strstr(rtd->dai_link->codecs->name, "ehdaudio")) + if (!strstr(rtd->dai_link->codecs->name, "ehdaudio0D0")) continue; dai = asoc_rtd_to_codec(rtd, 0); hda_pvt = snd_soc_component_get_drvdata(dai->component); @@ -211,6 +215,8 @@ if (!mach) return -EINVAL; + snd_soc_card_set_drvdata(&hda_soc_card, ctx); + ret = skl_hda_fill_card_info(&mach->mach_params); if (ret < 0) { dev_err(&pdev->dev, "Unsupported HDAudio/iDisp configuration found\n"); @@ -223,7 +229,6 @@ ctx->common_hdmi_codec_drv = mach->mach_params.common_hdmi_codec_drv; hda_soc_card.dev = &pdev->dev; - snd_soc_card_set_drvdata(&hda_soc_card, ctx); if (mach->mach_params.dmic_num > 0) { snprintf(hda_soc_components, sizeof(hda_soc_components), --- linux-azure-5.8-5.8.0.orig/sound/soc/intel/boards/sof_rt5682.c +++ linux-azure-5.8-5.8.0/sound/soc/intel/boards/sof_rt5682.c @@ -118,6 +118,19 @@ .driver_data = (void *)(SOF_RT5682_MCLK_EN | SOF_RT5682_SSP_CODEC(0)), }, + { + .callback = sof_rt5682_quirk_cb, + .matches = { + DMI_MATCH(DMI_PRODUCT_FAMILY, "Google_Volteer"), + DMI_MATCH(DMI_PRODUCT_NAME, "Terrador"), + }, + .driver_data = (void *)(SOF_RT5682_MCLK_EN | + SOF_RT5682_SSP_CODEC(0) | + SOF_SPEAKER_AMP_PRESENT | + SOF_MAX98373_SPEAKER_AMP_PRESENT | + SOF_RT5682_SSP_AMP(2) | + SOF_RT5682_NUM_HDMIDEV(4)), + }, {} }; --- linux-azure-5.8-5.8.0.orig/sound/soc/intel/boards/sof_sdw.c +++ linux-azure-5.8-5.8.0/sound/soc/intel/boards/sof_sdw.c @@ -48,6 +48,17 @@ .callback = sof_sdw_quirk_cb, .matches = { DMI_MATCH(DMI_SYS_VENDOR, "Dell Inc"), + DMI_EXACT_MATCH(DMI_PRODUCT_SKU, "0A5E") + }, + .driver_data = (void *)(SOF_SDW_TGL_HDMI | + SOF_RT711_JD_SRC_JD2 | + SOF_RT715_DAI_ID_FIX | + SOF_SDW_FOUR_SPK), + }, + { + .callback = sof_sdw_quirk_cb, + .matches = { + DMI_MATCH(DMI_SYS_VENDOR, "Dell Inc"), DMI_EXACT_MATCH(DMI_PRODUCT_SKU, "098F"), }, .driver_data = (void *)(SOF_RT711_JD_SRC_JD2 | @@ -184,6 +195,7 @@ .direction = {true, true}, .dai_name = "rt711-aif1", .init = sof_sdw_rt711_init, + .exit = sof_sdw_rt711_exit, }, { .id = 0x1308, @@ -893,6 +905,7 @@ static struct snd_soc_card card_sof_sdw = { .name = "soundwire", + .owner = THIS_MODULE, .late_probe = sof_sdw_hdmi_card_late_probe, .codec_conf = codec_conf, .num_configs = ARRAY_SIZE(codec_conf), --- linux-azure-5.8-5.8.0.orig/sound/soc/intel/boards/sof_sdw_common.h +++ linux-azure-5.8-5.8.0/sound/soc/intel/boards/sof_sdw_common.h @@ -84,6 +84,7 @@ struct snd_soc_dai_link *dai_links, struct sof_sdw_codec_info *info, bool playback); +int sof_sdw_rt711_exit(struct device *dev, struct snd_soc_dai_link *dai_link); /* RT700 support */ int sof_sdw_rt700_init(const struct snd_soc_acpi_link_adr *link, --- linux-azure-5.8-5.8.0.orig/sound/soc/intel/boards/sof_sdw_rt711.c +++ linux-azure-5.8-5.8.0/sound/soc/intel/boards/sof_sdw_rt711.c @@ -133,6 +133,21 @@ return ret; } +int sof_sdw_rt711_exit(struct device *dev, struct snd_soc_dai_link *dai_link) +{ + struct device *sdw_dev; + + sdw_dev = bus_find_device_by_name(&sdw_bus_type, NULL, + dai_link->codecs[0].name); + if (!sdw_dev) + return -EINVAL; + + device_remove_properties(sdw_dev); + put_device(sdw_dev); + + return 0; +} + int sof_sdw_rt711_init(const struct snd_soc_acpi_link_adr *link, struct snd_soc_dai_link *dai_links, struct sof_sdw_codec_info *info, --- linux-azure-5.8-5.8.0.orig/sound/soc/intel/haswell/sst-haswell-dsp.c +++ linux-azure-5.8-5.8.0/sound/soc/intel/haswell/sst-haswell-dsp.c @@ -243,92 +243,45 @@ return ret; } -#define CSR_DEFAULT_VALUE 0x8480040E -#define ISC_DEFAULT_VALUE 0x0 -#define ISD_DEFAULT_VALUE 0x0 -#define IMC_DEFAULT_VALUE 0x7FFF0003 -#define IMD_DEFAULT_VALUE 0x7FFF0003 -#define IPCC_DEFAULT_VALUE 0x0 -#define IPCD_DEFAULT_VALUE 0x0 -#define CLKCTL_DEFAULT_VALUE 0x7FF -#define CSR2_DEFAULT_VALUE 0x0 -#define LTR_CTRL_DEFAULT_VALUE 0x0 -#define HMD_CTRL_DEFAULT_VALUE 0x0 - -static void hsw_set_shim_defaults(struct sst_dsp *sst) -{ - sst_dsp_shim_write_unlocked(sst, SST_CSR, CSR_DEFAULT_VALUE); - sst_dsp_shim_write_unlocked(sst, SST_ISRX, ISC_DEFAULT_VALUE); - sst_dsp_shim_write_unlocked(sst, SST_ISRD, ISD_DEFAULT_VALUE); - sst_dsp_shim_write_unlocked(sst, SST_IMRX, IMC_DEFAULT_VALUE); - sst_dsp_shim_write_unlocked(sst, SST_IMRD, IMD_DEFAULT_VALUE); - sst_dsp_shim_write_unlocked(sst, SST_IPCX, IPCC_DEFAULT_VALUE); - sst_dsp_shim_write_unlocked(sst, SST_IPCD, IPCD_DEFAULT_VALUE); - sst_dsp_shim_write_unlocked(sst, SST_CLKCTL, CLKCTL_DEFAULT_VALUE); - sst_dsp_shim_write_unlocked(sst, SST_CSR2, CSR2_DEFAULT_VALUE); - sst_dsp_shim_write_unlocked(sst, SST_LTRC, LTR_CTRL_DEFAULT_VALUE); - sst_dsp_shim_write_unlocked(sst, SST_HMDC, HMD_CTRL_DEFAULT_VALUE); -} - -/* all clock-gating minus DCLCGE and DTCGE */ -#define SST_VDRTCL2_CG_OTHER 0xB7D - static void hsw_set_dsp_D3(struct sst_dsp *sst) { + u32 val; u32 reg; - /* disable clock core gating */ + /* Disable core clock gating (VDRTCTL2.DCLCGE = 0) */ reg = readl(sst->addr.pci_cfg + SST_VDRTCTL2); - reg &= ~(SST_VDRTCL2_DCLCGE); + reg &= ~(SST_VDRTCL2_DCLCGE | SST_VDRTCL2_DTCGE); writel(reg, sst->addr.pci_cfg + SST_VDRTCTL2); - /* stall, reset and set 24MHz XOSC */ - sst_dsp_shim_update_bits_unlocked(sst, SST_CSR, - SST_CSR_24MHZ_LPCS | SST_CSR_STALL | SST_CSR_RST, - SST_CSR_24MHZ_LPCS | SST_CSR_STALL | SST_CSR_RST); + /* enable power gating and switch off DRAM & IRAM blocks */ + val = readl(sst->addr.pci_cfg + SST_VDRTCTL0); + val |= SST_VDRTCL0_DSRAMPGE_MASK | + SST_VDRTCL0_ISRAMPGE_MASK; + val &= ~(SST_VDRTCL0_D3PGD | SST_VDRTCL0_D3SRAMPGD); + writel(val, sst->addr.pci_cfg + SST_VDRTCTL0); - /* DRAM power gating all */ - reg = readl(sst->addr.pci_cfg + SST_VDRTCTL0); - reg |= SST_VDRTCL0_ISRAMPGE_MASK | - SST_VDRTCL0_DSRAMPGE_MASK; - reg &= ~(SST_VDRTCL0_D3SRAMPGD); - reg |= SST_VDRTCL0_D3PGD; - writel(reg, sst->addr.pci_cfg + SST_VDRTCTL0); - udelay(50); - - /* PLL shutdown enable */ - reg = readl(sst->addr.pci_cfg + SST_VDRTCTL2); - reg |= SST_VDRTCL2_APLLSE_MASK; - writel(reg, sst->addr.pci_cfg + SST_VDRTCTL2); + /* switch off audio PLL */ + val = readl(sst->addr.pci_cfg + SST_VDRTCTL2); + val |= SST_VDRTCL2_APLLSE_MASK; + writel(val, sst->addr.pci_cfg + SST_VDRTCTL2); - /* disable MCLK */ + /* disable MCLK(clkctl.smos = 0) */ sst_dsp_shim_update_bits_unlocked(sst, SST_CLKCTL, - SST_CLKCTL_MASK, 0); + SST_CLKCTL_MASK, 0); - /* switch clock gating */ - reg = readl(sst->addr.pci_cfg + SST_VDRTCTL2); - reg |= SST_VDRTCL2_CG_OTHER; - reg &= ~(SST_VDRTCL2_DTCGE); - writel(reg, sst->addr.pci_cfg + SST_VDRTCTL2); - /* enable DTCGE separatelly */ - reg = readl(sst->addr.pci_cfg + SST_VDRTCTL2); - reg |= SST_VDRTCL2_DTCGE; - writel(reg, sst->addr.pci_cfg + SST_VDRTCTL2); - - /* set shim defaults */ - hsw_set_shim_defaults(sst); - - /* set D3 */ - reg = readl(sst->addr.pci_cfg + SST_PMCS); - reg |= SST_PMCS_PS_MASK; - writel(reg, sst->addr.pci_cfg + SST_PMCS); + /* Set D3 state, delay 50 us */ + val = readl(sst->addr.pci_cfg + SST_PMCS); + val |= SST_PMCS_PS_MASK; + writel(val, sst->addr.pci_cfg + SST_PMCS); udelay(50); - /* enable clock core gating */ + /* Enable core clock gating (VDRTCTL2.DCLCGE = 1), delay 50 us */ reg = readl(sst->addr.pci_cfg + SST_VDRTCTL2); - reg |= SST_VDRTCL2_DCLCGE; + reg |= SST_VDRTCL2_DCLCGE | SST_VDRTCL2_DTCGE; writel(reg, sst->addr.pci_cfg + SST_VDRTCTL2); + udelay(50); + } static void hsw_reset(struct sst_dsp *sst) @@ -346,62 +299,75 @@ SST_CSR_RST | SST_CSR_STALL, SST_CSR_STALL); } -/* recommended CSR state for power-up */ -#define SST_CSR_D0_MASK (0x18A09C0C | SST_CSR_DCS_MASK) - static int hsw_set_dsp_D0(struct sst_dsp *sst) { - u32 reg; + int tries = 10; + u32 reg, fw_dump_bit; - /* disable clock core gating */ + /* Disable core clock gating (VDRTCTL2.DCLCGE = 0) */ reg = readl(sst->addr.pci_cfg + SST_VDRTCTL2); - reg &= ~(SST_VDRTCL2_DCLCGE); + reg &= ~(SST_VDRTCL2_DCLCGE | SST_VDRTCL2_DTCGE); writel(reg, sst->addr.pci_cfg + SST_VDRTCTL2); - /* switch clock gating */ - reg = readl(sst->addr.pci_cfg + SST_VDRTCTL2); - reg |= SST_VDRTCL2_CG_OTHER; - reg &= ~(SST_VDRTCL2_DTCGE); - writel(reg, sst->addr.pci_cfg + SST_VDRTCTL2); + /* Disable D3PG (VDRTCTL0.D3PGD = 1) */ + reg = readl(sst->addr.pci_cfg + SST_VDRTCTL0); + reg |= SST_VDRTCL0_D3PGD; + writel(reg, sst->addr.pci_cfg + SST_VDRTCTL0); - /* set D0 */ + /* Set D0 state */ reg = readl(sst->addr.pci_cfg + SST_PMCS); - reg &= ~(SST_PMCS_PS_MASK); + reg &= ~SST_PMCS_PS_MASK; writel(reg, sst->addr.pci_cfg + SST_PMCS); - /* DRAM power gating none */ - reg = readl(sst->addr.pci_cfg + SST_VDRTCTL0); - reg &= ~(SST_VDRTCL0_ISRAMPGE_MASK | - SST_VDRTCL0_DSRAMPGE_MASK); - reg |= SST_VDRTCL0_D3SRAMPGD; - reg |= SST_VDRTCL0_D3PGD; - writel(reg, sst->addr.pci_cfg + SST_VDRTCTL0); - mdelay(10); + /* check that ADSP shim is enabled */ + while (tries--) { + reg = readl(sst->addr.pci_cfg + SST_PMCS) & SST_PMCS_PS_MASK; + if (reg == 0) + goto finish; + + msleep(1); + } - /* set shim defaults */ - hsw_set_shim_defaults(sst); + return -ENODEV; - /* restore MCLK */ +finish: + /* select SSP1 19.2MHz base clock, SSP clock 0, turn off Low Power Clock */ + sst_dsp_shim_update_bits_unlocked(sst, SST_CSR, + SST_CSR_S1IOCS | SST_CSR_SBCS1 | SST_CSR_LPCS, 0x0); + + /* stall DSP core, set clk to 192/96Mhz */ + sst_dsp_shim_update_bits_unlocked(sst, + SST_CSR, SST_CSR_STALL | SST_CSR_DCS_MASK, + SST_CSR_STALL | SST_CSR_DCS(4)); + + /* Set 24MHz MCLK, prevent local clock gating, enable SSP0 clock */ sst_dsp_shim_update_bits_unlocked(sst, SST_CLKCTL, - SST_CLKCTL_MASK, SST_CLKCTL_MASK); + SST_CLKCTL_MASK | SST_CLKCTL_DCPLCG | SST_CLKCTL_SCOE0, + SST_CLKCTL_MASK | SST_CLKCTL_DCPLCG | SST_CLKCTL_SCOE0); - /* PLL shutdown disable */ + /* Stall and reset core, set CSR */ + hsw_reset(sst); + + /* Enable core clock gating (VDRTCTL2.DCLCGE = 1), delay 50 us */ reg = readl(sst->addr.pci_cfg + SST_VDRTCTL2); - reg &= ~(SST_VDRTCL2_APLLSE_MASK); + reg |= SST_VDRTCL2_DCLCGE | SST_VDRTCL2_DTCGE; writel(reg, sst->addr.pci_cfg + SST_VDRTCTL2); - sst_dsp_shim_update_bits_unlocked(sst, SST_CSR, - SST_CSR_D0_MASK, SST_CSR_SBCS0 | SST_CSR_SBCS1 | - SST_CSR_STALL | SST_CSR_DCS(4)); udelay(50); - /* enable clock core gating */ + /* switch on audio PLL */ reg = readl(sst->addr.pci_cfg + SST_VDRTCTL2); - reg |= SST_VDRTCL2_DCLCGE; + reg &= ~SST_VDRTCL2_APLLSE_MASK; writel(reg, sst->addr.pci_cfg + SST_VDRTCTL2); - /* clear reset */ - sst_dsp_shim_update_bits_unlocked(sst, SST_CSR, SST_CSR_RST, 0); + /* set default power gating control, enable power gating control for all blocks. that is, + can't be accessed, please enable each block before accessing. */ + reg = readl(sst->addr.pci_cfg + SST_VDRTCTL0); + reg |= SST_VDRTCL0_DSRAMPGE_MASK | SST_VDRTCL0_ISRAMPGE_MASK; + /* for D0, always enable the block(DSRAM[0]) used for FW dump */ + fw_dump_bit = 1 << SST_VDRTCL0_DSRAMPGE_SHIFT; + writel(reg & ~fw_dump_bit, sst->addr.pci_cfg + SST_VDRTCTL0); + /* disable DMA finish function for SSP0 & SSP1 */ sst_dsp_shim_update_bits_unlocked(sst, SST_CSR2, SST_CSR2_SDFD_SSP1, @@ -418,6 +384,12 @@ sst_dsp_shim_update_bits(sst, SST_IMRD, (SST_IMRD_DONE | SST_IMRD_BUSY | SST_IMRD_SSP0 | SST_IMRD_DMAC), 0x0); + /* clear IPC registers */ + sst_dsp_shim_write(sst, SST_IPCX, 0x0); + sst_dsp_shim_write(sst, SST_IPCD, 0x0); + sst_dsp_shim_write(sst, 0x80, 0x6); + sst_dsp_shim_write(sst, 0xe0, 0x300a); + return 0; } @@ -443,6 +415,11 @@ { dev_dbg(sst->dev, "HSW_PM dsp runtime suspend\n"); + /* put DSP into reset and stall */ + sst_dsp_shim_update_bits(sst, SST_CSR, + SST_CSR_24MHZ_LPCS | SST_CSR_RST | SST_CSR_STALL, + SST_CSR_RST | SST_CSR_STALL | SST_CSR_24MHZ_LPCS); + hsw_set_dsp_D3(sst); dev_dbg(sst->dev, "HSW_PM dsp runtime suspend exit\n"); } --- linux-azure-5.8-5.8.0.orig/sound/soc/intel/skylake/cnl-sst.c +++ linux-azure-5.8-5.8.0/sound/soc/intel/skylake/cnl-sst.c @@ -224,6 +224,7 @@ "dsp boot timeout, status=%#x error=%#x\n", sst_dsp_shim_read(ctx, CNL_ADSP_FW_STATUS), sst_dsp_shim_read(ctx, CNL_ADSP_ERROR_CODE)); + ret = -ETIMEDOUT; goto err; } } else { --- linux-azure-5.8-5.8.0.orig/sound/soc/intel/skylake/skl-topology.c +++ linux-azure-5.8-5.8.0/sound/soc/intel/skylake/skl-topology.c @@ -3619,19 +3619,20 @@ list_for_each_entry(dobj, &component->dobj_list, list) { struct snd_kcontrol *kcontrol = dobj->control.kcontrol; - struct soc_enum *se = - (struct soc_enum *)kcontrol->private_value; - char **texts = dobj->control.dtexts; + struct soc_enum *se; + char **texts; char chan_text[4]; - if (dobj->type != SND_SOC_DOBJ_ENUM || - dobj->control.kcontrol->put != - skl_tplg_multi_config_set_dmic) + if (dobj->type != SND_SOC_DOBJ_ENUM || !kcontrol || + kcontrol->put != skl_tplg_multi_config_set_dmic) continue; + + se = (struct soc_enum *)kcontrol->private_value; + texts = dobj->control.dtexts; sprintf(chan_text, "c%d", mach->mach_params.dmic_num); for (i = 0; i < se->items; i++) { - struct snd_ctl_elem_value val; + struct snd_ctl_elem_value val = {}; if (strstr(texts[i], chan_text)) { val.value.enumerated.item[0] = i; --- linux-azure-5.8-5.8.0.orig/sound/soc/jz4740/jz4740-i2s.c +++ linux-azure-5.8-5.8.0/sound/soc/jz4740/jz4740-i2s.c @@ -312,10 +312,14 @@ switch (clk_id) { case JZ4740_I2S_CLKSRC_EXT: parent = clk_get(NULL, "ext"); + if (IS_ERR(parent)) + return PTR_ERR(parent); clk_set_parent(i2s->clk_i2s, parent); break; case JZ4740_I2S_CLKSRC_PLL: parent = clk_get(NULL, "pll half"); + if (IS_ERR(parent)) + return PTR_ERR(parent); clk_set_parent(i2s->clk_i2s, parent); ret = clk_set_rate(i2s->clk_i2s, freq); break; --- linux-azure-5.8-5.8.0.orig/sound/soc/meson/Kconfig +++ linux-azure-5.8-5.8.0/sound/soc/meson/Kconfig @@ -1,6 +1,6 @@ # SPDX-License-Identifier: GPL-2.0-only menu "ASoC support for Amlogic platforms" - depends on ARCH_MESON || COMPILE_TEST + depends on ARCH_MESON || (COMPILE_TEST && COMMON_CLK) config SND_MESON_AIU tristate "Amlogic AIU" --- linux-azure-5.8-5.8.0.orig/sound/soc/meson/axg-card.c +++ linux-azure-5.8-5.8.0/sound/soc/meson/axg-card.c @@ -116,7 +116,7 @@ lb = &card->dai_link[*index + 1]; - lb->name = kasprintf(GFP_KERNEL, "%s-lb", pad->name); + lb->name = devm_kasprintf(card->dev, GFP_KERNEL, "%s-lb", pad->name); if (!lb->name) return -ENOMEM; @@ -327,20 +327,22 @@ return ret; if (axg_card_cpu_is_playback_fe(dai_link->cpus->of_node)) - ret = meson_card_set_fe_link(card, dai_link, np, true); + return meson_card_set_fe_link(card, dai_link, np, true); else if (axg_card_cpu_is_capture_fe(dai_link->cpus->of_node)) - ret = meson_card_set_fe_link(card, dai_link, np, false); - else - ret = meson_card_set_be_link(card, dai_link, np); + return meson_card_set_fe_link(card, dai_link, np, false); + + ret = meson_card_set_be_link(card, dai_link, np); if (ret) return ret; - if (axg_card_cpu_is_tdm_iface(dai_link->cpus->of_node)) - ret = axg_card_parse_tdm(card, np, index); - else if (axg_card_cpu_is_codec(dai_link->cpus->of_node)) { + if (axg_card_cpu_is_codec(dai_link->cpus->of_node)) { dai_link->params = &codec_params; - dai_link->no_pcm = 0; /* link is not a DPCM BE */ + } else { + dai_link->no_pcm = 1; + snd_soc_dai_link_set_capabilities(dai_link); + if (axg_card_cpu_is_tdm_iface(dai_link->cpus->of_node)) + ret = axg_card_parse_tdm(card, np, index); } return ret; --- linux-azure-5.8-5.8.0.orig/sound/soc/meson/axg-tdm-formatter.c +++ linux-azure-5.8-5.8.0/sound/soc/meson/axg-tdm-formatter.c @@ -70,7 +70,7 @@ static int axg_tdm_formatter_enable(struct axg_tdm_formatter *formatter) { struct axg_tdm_stream *ts = formatter->stream; - bool invert = formatter->drv->quirks->invert_sclk; + bool invert; int ret; /* Do nothing if the formatter is already enabled */ @@ -96,11 +96,12 @@ return ret; /* - * If sclk is inverted, invert it back and provide the inversion - * required by the formatter + * If sclk is inverted, it means the bit should latched on the + * rising edge which is what our HW expects. If not, we need to + * invert it before the formatter. */ - invert ^= axg_tdm_sclk_invert(ts->iface->fmt); - ret = clk_set_phase(formatter->sclk, invert ? 180 : 0); + invert = axg_tdm_sclk_invert(ts->iface->fmt); + ret = clk_set_phase(formatter->sclk, invert ? 0 : 180); if (ret) return ret; --- linux-azure-5.8-5.8.0.orig/sound/soc/meson/axg-tdm-formatter.h +++ linux-azure-5.8-5.8.0/sound/soc/meson/axg-tdm-formatter.h @@ -16,7 +16,6 @@ struct axg_tdm_formatter_hw { unsigned int skew_offset; - bool invert_sclk; }; struct axg_tdm_formatter_ops { --- linux-azure-5.8-5.8.0.orig/sound/soc/meson/axg-tdm-interface.c +++ linux-azure-5.8-5.8.0/sound/soc/meson/axg-tdm-interface.c @@ -119,18 +119,25 @@ { struct axg_tdm_iface *iface = snd_soc_dai_get_drvdata(dai); - /* These modes are not supported */ - if (fmt & (SND_SOC_DAIFMT_CBS_CFM | SND_SOC_DAIFMT_CBM_CFS)) { + switch (fmt & SND_SOC_DAIFMT_MASTER_MASK) { + case SND_SOC_DAIFMT_CBS_CFS: + if (!iface->mclk) { + dev_err(dai->dev, "cpu clock master: mclk missing\n"); + return -ENODEV; + } + break; + + case SND_SOC_DAIFMT_CBM_CFM: + break; + + case SND_SOC_DAIFMT_CBS_CFM: + case SND_SOC_DAIFMT_CBM_CFS: dev_err(dai->dev, "only CBS_CFS and CBM_CFM are supported\n"); + /* Fall-through */ + default: return -EINVAL; } - /* If the TDM interface is the clock master, it requires mclk */ - if (!iface->mclk && (fmt & SND_SOC_DAIFMT_CBS_CFS)) { - dev_err(dai->dev, "cpu clock master: mclk missing\n"); - return -ENODEV; - } - iface->fmt = fmt; return 0; } @@ -319,7 +326,8 @@ if (ret) return ret; - if (iface->fmt & SND_SOC_DAIFMT_CBS_CFS) { + if ((iface->fmt & SND_SOC_DAIFMT_MASTER_MASK) == + SND_SOC_DAIFMT_CBS_CFS) { ret = axg_tdm_iface_set_sclk(dai, params); if (ret) return ret; @@ -459,8 +467,20 @@ return ret; } +static const struct snd_soc_dapm_widget axg_tdm_iface_dapm_widgets[] = { + SND_SOC_DAPM_SIGGEN("Playback Signal"), +}; + +static const struct snd_soc_dapm_route axg_tdm_iface_dapm_routes[] = { + { "Loopback", NULL, "Playback Signal" }, +}; + static const struct snd_soc_component_driver axg_tdm_iface_component_drv = { - .set_bias_level = axg_tdm_iface_set_bias_level, + .dapm_widgets = axg_tdm_iface_dapm_widgets, + .num_dapm_widgets = ARRAY_SIZE(axg_tdm_iface_dapm_widgets), + .dapm_routes = axg_tdm_iface_dapm_routes, + .num_dapm_routes = ARRAY_SIZE(axg_tdm_iface_dapm_routes), + .set_bias_level = axg_tdm_iface_set_bias_level, }; static const struct of_device_id axg_tdm_iface_of_match[] = { --- linux-azure-5.8-5.8.0.orig/sound/soc/meson/axg-tdmin.c +++ linux-azure-5.8-5.8.0/sound/soc/meson/axg-tdmin.c @@ -228,8 +228,7 @@ .regmap_cfg = &axg_tdmin_regmap_cfg, .ops = &axg_tdmin_ops, .quirks = &(const struct axg_tdm_formatter_hw) { - .invert_sclk = false, - .skew_offset = 2, + .skew_offset = 3, }, }; @@ -237,6 +236,12 @@ { .compatible = "amlogic,axg-tdmin", .data = &axg_tdmin_drv, + }, { + .compatible = "amlogic,g12a-tdmin", + .data = &axg_tdmin_drv, + }, { + .compatible = "amlogic,sm1-tdmin", + .data = &axg_tdmin_drv, }, {} }; MODULE_DEVICE_TABLE(of, axg_tdmin_of_match); --- linux-azure-5.8-5.8.0.orig/sound/soc/meson/axg-tdmout.c +++ linux-azure-5.8-5.8.0/sound/soc/meson/axg-tdmout.c @@ -238,7 +238,6 @@ .regmap_cfg = &axg_tdmout_regmap_cfg, .ops = &axg_tdmout_ops, .quirks = &(const struct axg_tdm_formatter_hw) { - .invert_sclk = true, .skew_offset = 1, }, }; @@ -248,7 +247,6 @@ .regmap_cfg = &axg_tdmout_regmap_cfg, .ops = &axg_tdmout_ops, .quirks = &(const struct axg_tdm_formatter_hw) { - .invert_sclk = true, .skew_offset = 2, }, }; @@ -309,7 +307,6 @@ .regmap_cfg = &axg_tdmout_regmap_cfg, .ops = &axg_tdmout_ops, .quirks = &(const struct axg_tdm_formatter_hw) { - .invert_sclk = true, .skew_offset = 2, }, }; --- linux-azure-5.8-5.8.0.orig/sound/soc/meson/axg-toddr.c +++ linux-azure-5.8-5.8.0/sound/soc/meson/axg-toddr.c @@ -18,6 +18,7 @@ #define CTRL0_TODDR_SEL_RESAMPLE BIT(30) #define CTRL0_TODDR_EXT_SIGNED BIT(29) #define CTRL0_TODDR_PP_MODE BIT(28) +#define CTRL0_TODDR_SYNC_CH BIT(27) #define CTRL0_TODDR_TYPE_MASK GENMASK(15, 13) #define CTRL0_TODDR_TYPE(x) ((x) << 13) #define CTRL0_TODDR_MSB_POS_MASK GENMASK(12, 8) @@ -189,10 +190,31 @@ .dai_drv = &axg_toddr_dai_drv }; +static int g12a_toddr_dai_startup(struct snd_pcm_substream *substream, + struct snd_soc_dai *dai) +{ + struct axg_fifo *fifo = snd_soc_dai_get_drvdata(dai); + int ret; + + ret = axg_toddr_dai_startup(substream, dai); + if (ret) + return ret; + + /* + * Make sure the first channel ends up in the at beginning of the output + * As weird as it looks, without this the first channel may be misplaced + * in memory, with a random shift of 2 channels. + */ + regmap_update_bits(fifo->map, FIFO_CTRL0, CTRL0_TODDR_SYNC_CH, + CTRL0_TODDR_SYNC_CH); + + return 0; +} + static const struct snd_soc_dai_ops g12a_toddr_ops = { .prepare = g12a_toddr_dai_prepare, .hw_params = axg_toddr_dai_hw_params, - .startup = axg_toddr_dai_startup, + .startup = g12a_toddr_dai_startup, .shutdown = axg_toddr_dai_shutdown, }; --- linux-azure-5.8-5.8.0.orig/sound/soc/meson/gx-card.c +++ linux-azure-5.8-5.8.0/sound/soc/meson/gx-card.c @@ -96,21 +96,21 @@ return ret; if (gx_card_cpu_identify(dai_link->cpus, "FIFO")) - ret = meson_card_set_fe_link(card, dai_link, np, true); - else - ret = meson_card_set_be_link(card, dai_link, np); + return meson_card_set_fe_link(card, dai_link, np, true); + ret = meson_card_set_be_link(card, dai_link, np); if (ret) return ret; - /* Check if the cpu is the i2s encoder and parse i2s data */ - if (gx_card_cpu_identify(dai_link->cpus, "I2S Encoder")) - ret = gx_card_parse_i2s(card, np, index); - /* Or apply codec to codec params if necessary */ - else if (gx_card_cpu_identify(dai_link->cpus, "CODEC CTRL")) { + if (gx_card_cpu_identify(dai_link->cpus, "CODEC CTRL")) { dai_link->params = &codec_params; - dai_link->no_pcm = 0; /* link is not a DPCM BE */ + } else { + dai_link->no_pcm = 1; + snd_soc_dai_link_set_capabilities(dai_link); + /* Check if the cpu is the i2s encoder and parse i2s data */ + if (gx_card_cpu_identify(dai_link->cpus, "I2S Encoder")) + ret = gx_card_parse_i2s(card, np, index); } return ret; --- linux-azure-5.8-5.8.0.orig/sound/soc/meson/meson-card-utils.c +++ linux-azure-5.8-5.8.0/sound/soc/meson/meson-card-utils.c @@ -147,10 +147,6 @@ struct device_node *np; int ret, num_codecs; - link->no_pcm = 1; - link->dpcm_playback = 1; - link->dpcm_capture = 1; - num_codecs = of_get_child_count(node); if (!num_codecs) { dev_err(card->dev, "be link %s has no codec\n", --- linux-azure-5.8-5.8.0.orig/sound/soc/qcom/Kconfig +++ linux-azure-5.8-5.8.0/sound/soc/qcom/Kconfig @@ -90,6 +90,7 @@ config SND_SOC_MSM8996 tristate "SoC Machine driver for MSM8996 and APQ8096 boards" depends on QCOM_APR + depends on COMMON_CLK select SND_SOC_QDSP6 select SND_SOC_QCOM_COMMON help --- linux-azure-5.8-5.8.0.orig/sound/soc/qcom/apq8016_sbc.c +++ linux-azure-5.8-5.8.0/sound/soc/qcom/apq8016_sbc.c @@ -234,6 +234,7 @@ return -ENOMEM; card->dev = dev; + card->owner = THIS_MODULE; card->dapm_widgets = apq8016_sbc_dapm_widgets; card->num_dapm_widgets = ARRAY_SIZE(apq8016_sbc_dapm_widgets); data = apq8016_sbc_parse_of(card); --- linux-azure-5.8-5.8.0.orig/sound/soc/qcom/apq8096.c +++ linux-azure-5.8-5.8.0/sound/soc/qcom/apq8096.c @@ -114,6 +114,7 @@ return -ENOMEM; card->dev = dev; + card->owner = THIS_MODULE; dev_set_drvdata(dev, card); ret = qcom_snd_parse_of(card); if (ret) --- linux-azure-5.8-5.8.0.orig/sound/soc/qcom/common.c +++ linux-azure-5.8-5.8.0/sound/soc/qcom/common.c @@ -45,8 +45,10 @@ for_each_child_of_node(dev->of_node, np) { dlc = devm_kzalloc(dev, 2 * sizeof(*dlc), GFP_KERNEL); - if (!dlc) - return -ENOMEM; + if (!dlc) { + ret = -ENOMEM; + goto err_put_np; + } link->cpus = &dlc[0]; link->platforms = &dlc[1]; @@ -57,7 +59,7 @@ ret = of_property_read_string(np, "link-name", &link->name); if (ret) { dev_err(card->dev, "error getting codec dai_link name\n"); - goto err; + goto err_put_np; } cpu = of_get_child_by_name(np, "cpu"); @@ -113,8 +115,10 @@ } else { dlc = devm_kzalloc(dev, sizeof(*dlc), GFP_KERNEL); - if (!dlc) - return -ENOMEM; + if (!dlc) { + ret = -ENOMEM; + goto err; + } link->codecs = dlc; link->num_codecs = 1; @@ -139,10 +143,11 @@ return 0; err: - of_node_put(np); of_node_put(cpu); of_node_put(codec); of_node_put(platform); +err_put_np: + of_node_put(np); kfree(card->dai_link); return ret; } --- linux-azure-5.8-5.8.0.orig/sound/soc/qcom/lpass-cpu.c +++ linux-azure-5.8-5.8.0/sound/soc/qcom/lpass-cpu.c @@ -209,21 +209,6 @@ return 0; } -static int lpass_cpu_daiops_hw_free(struct snd_pcm_substream *substream, - struct snd_soc_dai *dai) -{ - struct lpass_data *drvdata = snd_soc_dai_get_drvdata(dai); - int ret; - - ret = regmap_write(drvdata->lpaif_map, - LPAIF_I2SCTL_REG(drvdata->variant, dai->driver->id), - 0); - if (ret) - dev_err(dai->dev, "error writing to i2sctl reg: %d\n", ret); - - return ret; -} - static int lpass_cpu_daiops_prepare(struct snd_pcm_substream *substream, struct snd_soc_dai *dai) { @@ -304,7 +289,6 @@ .startup = lpass_cpu_daiops_startup, .shutdown = lpass_cpu_daiops_shutdown, .hw_params = lpass_cpu_daiops_hw_params, - .hw_free = lpass_cpu_daiops_hw_free, .prepare = lpass_cpu_daiops_prepare, .trigger = lpass_cpu_daiops_trigger, }; --- linux-azure-5.8-5.8.0.orig/sound/soc/qcom/lpass-platform.c +++ linux-azure-5.8-5.8.0/sound/soc/qcom/lpass-platform.c @@ -61,7 +61,7 @@ int ret, dma_ch, dir = substream->stream; struct lpass_pcm_data *data; - data = devm_kzalloc(soc_runtime->dev, sizeof(*data), GFP_KERNEL); + data = kzalloc(sizeof(*data), GFP_KERNEL); if (!data) return -ENOMEM; @@ -73,8 +73,10 @@ else dma_ch = 0; - if (dma_ch < 0) + if (dma_ch < 0) { + kfree(data); return dma_ch; + } drvdata->substream[dma_ch] = substream; @@ -95,6 +97,7 @@ ret = snd_pcm_hw_constraint_integer(runtime, SNDRV_PCM_HW_PARAM_PERIODS); if (ret < 0) { + kfree(data); dev_err(soc_runtime->dev, "setting constraints failed: %d\n", ret); return -EINVAL; @@ -118,6 +121,7 @@ if (v->free_dma_channel) v->free_dma_channel(drvdata, data->dma_ch); + kfree(data); return 0; } --- linux-azure-5.8-5.8.0.orig/sound/soc/qcom/qdsp6/q6afe-dai.c +++ linux-azure-5.8-5.8.0/sound/soc/qcom/qdsp6/q6afe-dai.c @@ -1150,206 +1150,206 @@ } static const struct snd_soc_dapm_widget q6afe_dai_widgets[] = { - SND_SOC_DAPM_AIF_IN("HDMI_RX", NULL, 0, 0, 0, 0), - SND_SOC_DAPM_AIF_IN("SLIMBUS_0_RX", NULL, 0, 0, 0, 0), - SND_SOC_DAPM_AIF_IN("SLIMBUS_1_RX", NULL, 0, 0, 0, 0), - SND_SOC_DAPM_AIF_IN("SLIMBUS_2_RX", NULL, 0, 0, 0, 0), - SND_SOC_DAPM_AIF_IN("SLIMBUS_3_RX", NULL, 0, 0, 0, 0), - SND_SOC_DAPM_AIF_IN("SLIMBUS_4_RX", NULL, 0, 0, 0, 0), - SND_SOC_DAPM_AIF_IN("SLIMBUS_5_RX", NULL, 0, 0, 0, 0), - SND_SOC_DAPM_AIF_IN("SLIMBUS_6_RX", NULL, 0, 0, 0, 0), - SND_SOC_DAPM_AIF_OUT("SLIMBUS_0_TX", NULL, 0, 0, 0, 0), - SND_SOC_DAPM_AIF_OUT("SLIMBUS_1_TX", NULL, 0, 0, 0, 0), - SND_SOC_DAPM_AIF_OUT("SLIMBUS_2_TX", NULL, 0, 0, 0, 0), - SND_SOC_DAPM_AIF_OUT("SLIMBUS_3_TX", NULL, 0, 0, 0, 0), - SND_SOC_DAPM_AIF_OUT("SLIMBUS_4_TX", NULL, 0, 0, 0, 0), - SND_SOC_DAPM_AIF_OUT("SLIMBUS_5_TX", NULL, 0, 0, 0, 0), - SND_SOC_DAPM_AIF_OUT("SLIMBUS_6_TX", NULL, 0, 0, 0, 0), + SND_SOC_DAPM_AIF_IN("HDMI_RX", NULL, 0, SND_SOC_NOPM, 0, 0), + SND_SOC_DAPM_AIF_IN("SLIMBUS_0_RX", NULL, 0, SND_SOC_NOPM, 0, 0), + SND_SOC_DAPM_AIF_IN("SLIMBUS_1_RX", NULL, 0, SND_SOC_NOPM, 0, 0), + SND_SOC_DAPM_AIF_IN("SLIMBUS_2_RX", NULL, 0, SND_SOC_NOPM, 0, 0), + SND_SOC_DAPM_AIF_IN("SLIMBUS_3_RX", NULL, 0, SND_SOC_NOPM, 0, 0), + SND_SOC_DAPM_AIF_IN("SLIMBUS_4_RX", NULL, 0, SND_SOC_NOPM, 0, 0), + SND_SOC_DAPM_AIF_IN("SLIMBUS_5_RX", NULL, 0, SND_SOC_NOPM, 0, 0), + SND_SOC_DAPM_AIF_IN("SLIMBUS_6_RX", NULL, 0, SND_SOC_NOPM, 0, 0), + SND_SOC_DAPM_AIF_OUT("SLIMBUS_0_TX", NULL, 0, SND_SOC_NOPM, 0, 0), + SND_SOC_DAPM_AIF_OUT("SLIMBUS_1_TX", NULL, 0, SND_SOC_NOPM, 0, 0), + SND_SOC_DAPM_AIF_OUT("SLIMBUS_2_TX", NULL, 0, SND_SOC_NOPM, 0, 0), + SND_SOC_DAPM_AIF_OUT("SLIMBUS_3_TX", NULL, 0, SND_SOC_NOPM, 0, 0), + SND_SOC_DAPM_AIF_OUT("SLIMBUS_4_TX", NULL, 0, SND_SOC_NOPM, 0, 0), + SND_SOC_DAPM_AIF_OUT("SLIMBUS_5_TX", NULL, 0, SND_SOC_NOPM, 0, 0), + SND_SOC_DAPM_AIF_OUT("SLIMBUS_6_TX", NULL, 0, SND_SOC_NOPM, 0, 0), SND_SOC_DAPM_AIF_IN("QUAT_MI2S_RX", NULL, - 0, 0, 0, 0), + 0, SND_SOC_NOPM, 0, 0), SND_SOC_DAPM_AIF_OUT("QUAT_MI2S_TX", NULL, - 0, 0, 0, 0), + 0, SND_SOC_NOPM, 0, 0), SND_SOC_DAPM_AIF_IN("TERT_MI2S_RX", NULL, - 0, 0, 0, 0), + 0, SND_SOC_NOPM, 0, 0), SND_SOC_DAPM_AIF_OUT("TERT_MI2S_TX", NULL, - 0, 0, 0, 0), + 0, SND_SOC_NOPM, 0, 0), SND_SOC_DAPM_AIF_IN("SEC_MI2S_RX", NULL, - 0, 0, 0, 0), + 0, SND_SOC_NOPM, 0, 0), SND_SOC_DAPM_AIF_OUT("SEC_MI2S_TX", NULL, - 0, 0, 0, 0), + 0, SND_SOC_NOPM, 0, 0), SND_SOC_DAPM_AIF_IN("SEC_MI2S_RX_SD1", "Secondary MI2S Playback SD1", - 0, 0, 0, 0), + 0, SND_SOC_NOPM, 0, 0), SND_SOC_DAPM_AIF_IN("PRI_MI2S_RX", NULL, - 0, 0, 0, 0), + 0, SND_SOC_NOPM, 0, 0), SND_SOC_DAPM_AIF_OUT("PRI_MI2S_TX", NULL, - 0, 0, 0, 0), + 0, SND_SOC_NOPM, 0, 0), SND_SOC_DAPM_AIF_IN("PRIMARY_TDM_RX_0", NULL, - 0, 0, 0, 0), + 0, SND_SOC_NOPM, 0, 0), SND_SOC_DAPM_AIF_IN("PRIMARY_TDM_RX_1", NULL, - 0, 0, 0, 0), + 0, SND_SOC_NOPM, 0, 0), SND_SOC_DAPM_AIF_IN("PRIMARY_TDM_RX_2", NULL, - 0, 0, 0, 0), + 0, SND_SOC_NOPM, 0, 0), SND_SOC_DAPM_AIF_IN("PRIMARY_TDM_RX_3", NULL, - 0, 0, 0, 0), + 0, SND_SOC_NOPM, 0, 0), SND_SOC_DAPM_AIF_IN("PRIMARY_TDM_RX_4", NULL, - 0, 0, 0, 0), + 0, SND_SOC_NOPM, 0, 0), SND_SOC_DAPM_AIF_IN("PRIMARY_TDM_RX_5", NULL, - 0, 0, 0, 0), + 0, SND_SOC_NOPM, 0, 0), SND_SOC_DAPM_AIF_IN("PRIMARY_TDM_RX_6", NULL, - 0, 0, 0, 0), + 0, SND_SOC_NOPM, 0, 0), SND_SOC_DAPM_AIF_IN("PRIMARY_TDM_RX_7", NULL, - 0, 0, 0, 0), + 0, SND_SOC_NOPM, 0, 0), SND_SOC_DAPM_AIF_OUT("PRIMARY_TDM_TX_0", NULL, - 0, 0, 0, 0), + 0, SND_SOC_NOPM, 0, 0), SND_SOC_DAPM_AIF_OUT("PRIMARY_TDM_TX_1", NULL, - 0, 0, 0, 0), + 0, SND_SOC_NOPM, 0, 0), SND_SOC_DAPM_AIF_OUT("PRIMARY_TDM_TX_2", NULL, - 0, 0, 0, 0), + 0, SND_SOC_NOPM, 0, 0), SND_SOC_DAPM_AIF_OUT("PRIMARY_TDM_TX_3", NULL, - 0, 0, 0, 0), + 0, SND_SOC_NOPM, 0, 0), SND_SOC_DAPM_AIF_OUT("PRIMARY_TDM_TX_4", NULL, - 0, 0, 0, 0), + 0, SND_SOC_NOPM, 0, 0), SND_SOC_DAPM_AIF_OUT("PRIMARY_TDM_TX_5", NULL, - 0, 0, 0, 0), + 0, SND_SOC_NOPM, 0, 0), SND_SOC_DAPM_AIF_OUT("PRIMARY_TDM_TX_6", NULL, - 0, 0, 0, 0), + 0, SND_SOC_NOPM, 0, 0), SND_SOC_DAPM_AIF_OUT("PRIMARY_TDM_TX_7", NULL, - 0, 0, 0, 0), + 0, SND_SOC_NOPM, 0, 0), SND_SOC_DAPM_AIF_IN("SEC_TDM_RX_0", NULL, - 0, 0, 0, 0), + 0, SND_SOC_NOPM, 0, 0), SND_SOC_DAPM_AIF_IN("SEC_TDM_RX_1", NULL, - 0, 0, 0, 0), + 0, SND_SOC_NOPM, 0, 0), SND_SOC_DAPM_AIF_IN("SEC_TDM_RX_2", NULL, - 0, 0, 0, 0), + 0, SND_SOC_NOPM, 0, 0), SND_SOC_DAPM_AIF_IN("SEC_TDM_RX_3", NULL, - 0, 0, 0, 0), + 0, SND_SOC_NOPM, 0, 0), SND_SOC_DAPM_AIF_IN("SEC_TDM_RX_4", NULL, - 0, 0, 0, 0), + 0, SND_SOC_NOPM, 0, 0), SND_SOC_DAPM_AIF_IN("SEC_TDM_RX_5", NULL, - 0, 0, 0, 0), + 0, SND_SOC_NOPM, 0, 0), SND_SOC_DAPM_AIF_IN("SEC_TDM_RX_6", NULL, - 0, 0, 0, 0), + 0, SND_SOC_NOPM, 0, 0), SND_SOC_DAPM_AIF_IN("SEC_TDM_RX_7", NULL, - 0, 0, 0, 0), + 0, SND_SOC_NOPM, 0, 0), SND_SOC_DAPM_AIF_OUT("SEC_TDM_TX_0", NULL, - 0, 0, 0, 0), + 0, SND_SOC_NOPM, 0, 0), SND_SOC_DAPM_AIF_OUT("SEC_TDM_TX_1", NULL, - 0, 0, 0, 0), + 0, SND_SOC_NOPM, 0, 0), SND_SOC_DAPM_AIF_OUT("SEC_TDM_TX_2", NULL, - 0, 0, 0, 0), + 0, SND_SOC_NOPM, 0, 0), SND_SOC_DAPM_AIF_OUT("SEC_TDM_TX_3", NULL, - 0, 0, 0, 0), + 0, SND_SOC_NOPM, 0, 0), SND_SOC_DAPM_AIF_OUT("SEC_TDM_TX_4", NULL, - 0, 0, 0, 0), + 0, SND_SOC_NOPM, 0, 0), SND_SOC_DAPM_AIF_OUT("SEC_TDM_TX_5", NULL, - 0, 0, 0, 0), + 0, SND_SOC_NOPM, 0, 0), SND_SOC_DAPM_AIF_OUT("SEC_TDM_TX_6", NULL, - 0, 0, 0, 0), + 0, SND_SOC_NOPM, 0, 0), SND_SOC_DAPM_AIF_OUT("SEC_TDM_TX_7", NULL, - 0, 0, 0, 0), + 0, SND_SOC_NOPM, 0, 0), SND_SOC_DAPM_AIF_IN("TERT_TDM_RX_0", NULL, - 0, 0, 0, 0), + 0, SND_SOC_NOPM, 0, 0), SND_SOC_DAPM_AIF_IN("TERT_TDM_RX_1", NULL, - 0, 0, 0, 0), + 0, SND_SOC_NOPM, 0, 0), SND_SOC_DAPM_AIF_IN("TERT_TDM_RX_2", NULL, - 0, 0, 0, 0), + 0, SND_SOC_NOPM, 0, 0), SND_SOC_DAPM_AIF_IN("TERT_TDM_RX_3", NULL, - 0, 0, 0, 0), + 0, SND_SOC_NOPM, 0, 0), SND_SOC_DAPM_AIF_IN("TERT_TDM_RX_4", NULL, - 0, 0, 0, 0), + 0, SND_SOC_NOPM, 0, 0), SND_SOC_DAPM_AIF_IN("TERT_TDM_RX_5", NULL, - 0, 0, 0, 0), + 0, SND_SOC_NOPM, 0, 0), SND_SOC_DAPM_AIF_IN("TERT_TDM_RX_6", NULL, - 0, 0, 0, 0), + 0, SND_SOC_NOPM, 0, 0), SND_SOC_DAPM_AIF_IN("TERT_TDM_RX_7", NULL, - 0, 0, 0, 0), + 0, SND_SOC_NOPM, 0, 0), SND_SOC_DAPM_AIF_OUT("TERT_TDM_TX_0", NULL, - 0, 0, 0, 0), + 0, SND_SOC_NOPM, 0, 0), SND_SOC_DAPM_AIF_OUT("TERT_TDM_TX_1", NULL, - 0, 0, 0, 0), + 0, SND_SOC_NOPM, 0, 0), SND_SOC_DAPM_AIF_OUT("TERT_TDM_TX_2", NULL, - 0, 0, 0, 0), + 0, SND_SOC_NOPM, 0, 0), SND_SOC_DAPM_AIF_OUT("TERT_TDM_TX_3", NULL, - 0, 0, 0, 0), + 0, SND_SOC_NOPM, 0, 0), SND_SOC_DAPM_AIF_OUT("TERT_TDM_TX_4", NULL, - 0, 0, 0, 0), + 0, SND_SOC_NOPM, 0, 0), SND_SOC_DAPM_AIF_OUT("TERT_TDM_TX_5", NULL, - 0, 0, 0, 0), + 0, SND_SOC_NOPM, 0, 0), SND_SOC_DAPM_AIF_OUT("TERT_TDM_TX_6", NULL, - 0, 0, 0, 0), + 0, SND_SOC_NOPM, 0, 0), SND_SOC_DAPM_AIF_OUT("TERT_TDM_TX_7", NULL, - 0, 0, 0, 0), + 0, SND_SOC_NOPM, 0, 0), SND_SOC_DAPM_AIF_IN("QUAT_TDM_RX_0", NULL, - 0, 0, 0, 0), + 0, SND_SOC_NOPM, 0, 0), SND_SOC_DAPM_AIF_IN("QUAT_TDM_RX_1", NULL, - 0, 0, 0, 0), + 0, SND_SOC_NOPM, 0, 0), SND_SOC_DAPM_AIF_IN("QUAT_TDM_RX_2", NULL, - 0, 0, 0, 0), + 0, SND_SOC_NOPM, 0, 0), SND_SOC_DAPM_AIF_IN("QUAT_TDM_RX_3", NULL, - 0, 0, 0, 0), + 0, SND_SOC_NOPM, 0, 0), SND_SOC_DAPM_AIF_IN("QUAT_TDM_RX_4", NULL, - 0, 0, 0, 0), + 0, SND_SOC_NOPM, 0, 0), SND_SOC_DAPM_AIF_IN("QUAT_TDM_RX_5", NULL, - 0, 0, 0, 0), + 0, SND_SOC_NOPM, 0, 0), SND_SOC_DAPM_AIF_IN("QUAT_TDM_RX_6", NULL, - 0, 0, 0, 0), + 0, SND_SOC_NOPM, 0, 0), SND_SOC_DAPM_AIF_IN("QUAT_TDM_RX_7", NULL, - 0, 0, 0, 0), + 0, SND_SOC_NOPM, 0, 0), SND_SOC_DAPM_AIF_OUT("QUAT_TDM_TX_0", NULL, - 0, 0, 0, 0), + 0, SND_SOC_NOPM, 0, 0), SND_SOC_DAPM_AIF_OUT("QUAT_TDM_TX_1", NULL, - 0, 0, 0, 0), + 0, SND_SOC_NOPM, 0, 0), SND_SOC_DAPM_AIF_OUT("QUAT_TDM_TX_2", NULL, - 0, 0, 0, 0), + 0, SND_SOC_NOPM, 0, 0), SND_SOC_DAPM_AIF_OUT("QUAT_TDM_TX_3", NULL, - 0, 0, 0, 0), + 0, SND_SOC_NOPM, 0, 0), SND_SOC_DAPM_AIF_OUT("QUAT_TDM_TX_4", NULL, - 0, 0, 0, 0), + 0, SND_SOC_NOPM, 0, 0), SND_SOC_DAPM_AIF_OUT("QUAT_TDM_TX_5", NULL, - 0, 0, 0, 0), + 0, SND_SOC_NOPM, 0, 0), SND_SOC_DAPM_AIF_OUT("QUAT_TDM_TX_6", NULL, - 0, 0, 0, 0), + 0, SND_SOC_NOPM, 0, 0), SND_SOC_DAPM_AIF_OUT("QUAT_TDM_TX_7", NULL, - 0, 0, 0, 0), + 0, SND_SOC_NOPM, 0, 0), SND_SOC_DAPM_AIF_IN("QUIN_TDM_RX_0", NULL, - 0, 0, 0, 0), + 0, SND_SOC_NOPM, 0, 0), SND_SOC_DAPM_AIF_IN("QUIN_TDM_RX_1", NULL, - 0, 0, 0, 0), + 0, SND_SOC_NOPM, 0, 0), SND_SOC_DAPM_AIF_IN("QUIN_TDM_RX_2", NULL, - 0, 0, 0, 0), + 0, SND_SOC_NOPM, 0, 0), SND_SOC_DAPM_AIF_IN("QUIN_TDM_RX_3", NULL, - 0, 0, 0, 0), + 0, SND_SOC_NOPM, 0, 0), SND_SOC_DAPM_AIF_IN("QUIN_TDM_RX_4", NULL, - 0, 0, 0, 0), + 0, SND_SOC_NOPM, 0, 0), SND_SOC_DAPM_AIF_IN("QUIN_TDM_RX_5", NULL, - 0, 0, 0, 0), + 0, SND_SOC_NOPM, 0, 0), SND_SOC_DAPM_AIF_IN("QUIN_TDM_RX_6", NULL, - 0, 0, 0, 0), + 0, SND_SOC_NOPM, 0, 0), SND_SOC_DAPM_AIF_IN("QUIN_TDM_RX_7", NULL, - 0, 0, 0, 0), + 0, SND_SOC_NOPM, 0, 0), SND_SOC_DAPM_AIF_OUT("QUIN_TDM_TX_0", NULL, - 0, 0, 0, 0), + 0, SND_SOC_NOPM, 0, 0), SND_SOC_DAPM_AIF_OUT("QUIN_TDM_TX_1", NULL, - 0, 0, 0, 0), + 0, SND_SOC_NOPM, 0, 0), SND_SOC_DAPM_AIF_OUT("QUIN_TDM_TX_2", NULL, - 0, 0, 0, 0), + 0, SND_SOC_NOPM, 0, 0), SND_SOC_DAPM_AIF_OUT("QUIN_TDM_TX_3", NULL, - 0, 0, 0, 0), + 0, SND_SOC_NOPM, 0, 0), SND_SOC_DAPM_AIF_OUT("QUIN_TDM_TX_4", NULL, - 0, 0, 0, 0), + 0, SND_SOC_NOPM, 0, 0), SND_SOC_DAPM_AIF_OUT("QUIN_TDM_TX_5", NULL, - 0, 0, 0, 0), + 0, SND_SOC_NOPM, 0, 0), SND_SOC_DAPM_AIF_OUT("QUIN_TDM_TX_6", NULL, - 0, 0, 0, 0), + 0, SND_SOC_NOPM, 0, 0), SND_SOC_DAPM_AIF_OUT("QUIN_TDM_TX_7", NULL, - 0, 0, 0, 0), - SND_SOC_DAPM_AIF_OUT("DISPLAY_PORT_RX", "NULL", 0, 0, 0, 0), + 0, SND_SOC_NOPM, 0, 0), + SND_SOC_DAPM_AIF_OUT("DISPLAY_PORT_RX", "NULL", 0, SND_SOC_NOPM, 0, 0), }; static const struct snd_soc_component_driver q6afe_dai_component = { --- linux-azure-5.8-5.8.0.orig/sound/soc/qcom/qdsp6/q6asm-dai.c +++ linux-azure-5.8-5.8.0/sound/soc/qcom/qdsp6/q6asm-dai.c @@ -1015,6 +1015,25 @@ } } +static const struct snd_soc_dapm_widget q6asm_dapm_widgets[] = { + SND_SOC_DAPM_AIF_IN("MM_DL1", "MultiMedia1 Playback", 0, SND_SOC_NOPM, 0, 0), + SND_SOC_DAPM_AIF_IN("MM_DL2", "MultiMedia2 Playback", 0, SND_SOC_NOPM, 0, 0), + SND_SOC_DAPM_AIF_IN("MM_DL3", "MultiMedia3 Playback", 0, SND_SOC_NOPM, 0, 0), + SND_SOC_DAPM_AIF_IN("MM_DL4", "MultiMedia4 Playback", 0, SND_SOC_NOPM, 0, 0), + SND_SOC_DAPM_AIF_IN("MM_DL5", "MultiMedia5 Playback", 0, SND_SOC_NOPM, 0, 0), + SND_SOC_DAPM_AIF_IN("MM_DL6", "MultiMedia6 Playback", 0, SND_SOC_NOPM, 0, 0), + SND_SOC_DAPM_AIF_IN("MM_DL7", "MultiMedia7 Playback", 0, SND_SOC_NOPM, 0, 0), + SND_SOC_DAPM_AIF_IN("MM_DL8", "MultiMedia8 Playback", 0, SND_SOC_NOPM, 0, 0), + SND_SOC_DAPM_AIF_OUT("MM_UL1", "MultiMedia1 Capture", 0, SND_SOC_NOPM, 0, 0), + SND_SOC_DAPM_AIF_OUT("MM_UL2", "MultiMedia2 Capture", 0, SND_SOC_NOPM, 0, 0), + SND_SOC_DAPM_AIF_OUT("MM_UL3", "MultiMedia3 Capture", 0, SND_SOC_NOPM, 0, 0), + SND_SOC_DAPM_AIF_OUT("MM_UL4", "MultiMedia4 Capture", 0, SND_SOC_NOPM, 0, 0), + SND_SOC_DAPM_AIF_OUT("MM_UL5", "MultiMedia5 Capture", 0, SND_SOC_NOPM, 0, 0), + SND_SOC_DAPM_AIF_OUT("MM_UL6", "MultiMedia6 Capture", 0, SND_SOC_NOPM, 0, 0), + SND_SOC_DAPM_AIF_OUT("MM_UL7", "MultiMedia7 Capture", 0, SND_SOC_NOPM, 0, 0), + SND_SOC_DAPM_AIF_OUT("MM_UL8", "MultiMedia8 Capture", 0, SND_SOC_NOPM, 0, 0), +}; + static const struct snd_soc_component_driver q6asm_fe_dai_component = { .name = DRV_NAME, .open = q6asm_dai_open, @@ -1027,6 +1046,8 @@ .pcm_construct = q6asm_dai_pcm_new, .pcm_destruct = q6asm_dai_pcm_free, .compress_ops = &q6asm_dai_compress_ops, + .dapm_widgets = q6asm_dapm_widgets, + .num_dapm_widgets = ARRAY_SIZE(q6asm_dapm_widgets), }; static struct snd_soc_dai_driver q6asm_fe_dais_template[] = { --- linux-azure-5.8-5.8.0.orig/sound/soc/qcom/qdsp6/q6routing.c +++ linux-azure-5.8-5.8.0/sound/soc/qcom/qdsp6/q6routing.c @@ -635,24 +635,6 @@ Q6ROUTING_TX_MIXERS(MSM_FRONTEND_DAI_MULTIMEDIA8) }; static const struct snd_soc_dapm_widget msm_qdsp6_widgets[] = { - /* Frontend AIF */ - SND_SOC_DAPM_AIF_IN("MM_DL1", "MultiMedia1 Playback", 0, 0, 0, 0), - SND_SOC_DAPM_AIF_IN("MM_DL2", "MultiMedia2 Playback", 0, 0, 0, 0), - SND_SOC_DAPM_AIF_IN("MM_DL3", "MultiMedia3 Playback", 0, 0, 0, 0), - SND_SOC_DAPM_AIF_IN("MM_DL4", "MultiMedia4 Playback", 0, 0, 0, 0), - SND_SOC_DAPM_AIF_IN("MM_DL5", "MultiMedia5 Playback", 0, 0, 0, 0), - SND_SOC_DAPM_AIF_IN("MM_DL6", "MultiMedia6 Playback", 0, 0, 0, 0), - SND_SOC_DAPM_AIF_IN("MM_DL7", "MultiMedia7 Playback", 0, 0, 0, 0), - SND_SOC_DAPM_AIF_IN("MM_DL8", "MultiMedia8 Playback", 0, 0, 0, 0), - SND_SOC_DAPM_AIF_OUT("MM_UL1", "MultiMedia1 Capture", 0, 0, 0, 0), - SND_SOC_DAPM_AIF_OUT("MM_UL2", "MultiMedia2 Capture", 0, 0, 0, 0), - SND_SOC_DAPM_AIF_OUT("MM_UL3", "MultiMedia3 Capture", 0, 0, 0, 0), - SND_SOC_DAPM_AIF_OUT("MM_UL4", "MultiMedia4 Capture", 0, 0, 0, 0), - SND_SOC_DAPM_AIF_OUT("MM_UL5", "MultiMedia5 Capture", 0, 0, 0, 0), - SND_SOC_DAPM_AIF_OUT("MM_UL6", "MultiMedia6 Capture", 0, 0, 0, 0), - SND_SOC_DAPM_AIF_OUT("MM_UL7", "MultiMedia7 Capture", 0, 0, 0, 0), - SND_SOC_DAPM_AIF_OUT("MM_UL8", "MultiMedia8 Capture", 0, 0, 0, 0), - /* Mixer definitions */ SND_SOC_DAPM_MIXER("HDMI Mixer", SND_SOC_NOPM, 0, 0, hdmi_mixer_controls, @@ -973,6 +955,20 @@ return 0; } +static unsigned int q6routing_reg_read(struct snd_soc_component *component, + unsigned int reg) +{ + /* default value */ + return 0; +} + +static int q6routing_reg_write(struct snd_soc_component *component, + unsigned int reg, unsigned int val) +{ + /* dummy */ + return 0; +} + static const struct snd_soc_component_driver msm_soc_routing_component = { .probe = msm_routing_probe, .name = DRV_NAME, @@ -981,6 +977,8 @@ .num_dapm_widgets = ARRAY_SIZE(msm_qdsp6_widgets), .dapm_routes = intercon, .num_dapm_routes = ARRAY_SIZE(intercon), + .read = q6routing_reg_read, + .write = q6routing_reg_write, }; static int q6pcm_routing_probe(struct platform_device *pdev) --- linux-azure-5.8-5.8.0.orig/sound/soc/qcom/sdm845.c +++ linux-azure-5.8-5.8.0/sound/soc/qcom/sdm845.c @@ -17,6 +17,7 @@ #include "qdsp6/q6afe.h" #include "../codecs/rt5663.h" +#define DRIVER_NAME "sdm845" #define DEFAULT_SAMPLE_RATE_48K 48000 #define DEFAULT_MCLK_RATE 24576000 #define TDM_BCLK_RATE 6144000 @@ -554,9 +555,11 @@ goto data_alloc_fail; } + card->driver_name = DRIVER_NAME; card->dapm_widgets = sdm845_snd_widgets; card->num_dapm_widgets = ARRAY_SIZE(sdm845_snd_widgets); card->dev = dev; + card->owner = THIS_MODULE; dev_set_drvdata(dev, card); ret = qcom_snd_parse_of(card); if (ret) --- linux-azure-5.8-5.8.0.orig/sound/soc/qcom/storm.c +++ linux-azure-5.8-5.8.0/sound/soc/qcom/storm.c @@ -96,6 +96,7 @@ return -ENOMEM; card->dev = &pdev->dev; + card->owner = THIS_MODULE; ret = snd_soc_of_parse_card_name(card, "qcom,model"); if (ret) { --- linux-azure-5.8-5.8.0.orig/sound/soc/sh/siu.h +++ linux-azure-5.8-5.8.0/sound/soc/sh/siu.h @@ -169,7 +169,7 @@ #define SIU_BRGBSEL (0x108 / sizeof(u32)) #define SIU_BRRB (0x10c / sizeof(u32)) -extern struct snd_soc_component_driver siu_component; +extern const struct snd_soc_component_driver siu_component; extern struct siu_info *siu_i2s_data; int siu_init_port(int port, struct siu_port **port_info, struct snd_card *card); --- linux-azure-5.8-5.8.0.orig/sound/soc/sh/siu_pcm.c +++ linux-azure-5.8-5.8.0/sound/soc/sh/siu_pcm.c @@ -544,7 +544,7 @@ dev_dbg(pcm->card->dev, "%s\n", __func__); } -struct const snd_soc_component_driver siu_component = { +const struct snd_soc_component_driver siu_component = { .name = DRV_NAME, .open = siu_pcm_open, .close = siu_pcm_close, --- linux-azure-5.8-5.8.0.orig/sound/soc/soc-core.c +++ linux-azure-5.8-5.8.0/sound/soc/soc-core.c @@ -446,7 +446,6 @@ dev->parent = card->dev; dev->release = soc_release_rtd_dev; - dev->groups = soc_dev_attr_groups; dev_set_name(dev, "%s", dai_link->name); @@ -503,6 +502,10 @@ /* see for_each_card_rtds */ list_add_tail(&rtd->list, &card->rtd_list); + ret = device_add_groups(dev, soc_dev_attr_groups); + if (ret < 0) + goto free_rtd; + return rtd; free_rtd: @@ -831,6 +834,19 @@ } EXPORT_SYMBOL_GPL(snd_soc_find_dai); +struct snd_soc_dai *snd_soc_find_dai_with_mutex( + const struct snd_soc_dai_link_component *dlc) +{ + struct snd_soc_dai *dai; + + mutex_lock(&client_mutex); + dai = snd_soc_find_dai(dlc); + mutex_unlock(&client_mutex); + + return dai; +} +EXPORT_SYMBOL_GPL(snd_soc_find_dai_with_mutex); + static int soc_dai_link_sanity_check(struct snd_soc_card *card, struct snd_soc_dai_link *link) { --- linux-azure-5.8-5.8.0.orig/sound/soc/soc-dai.c +++ linux-azure-5.8-5.8.0/sound/soc/soc-dai.c @@ -400,28 +400,30 @@ struct snd_soc_dai_link_component *codec; struct snd_soc_dai *dai; bool supported[SNDRV_PCM_STREAM_LAST + 1]; + bool supported_cpu; + bool supported_codec; int direction; int i; for_each_pcm_streams(direction) { - supported[direction] = true; + supported_cpu = false; + supported_codec = false; for_each_link_cpus(dai_link, i, cpu) { - dai = snd_soc_find_dai(cpu); - if (!dai || !snd_soc_dai_stream_valid(dai, direction)) { - supported[direction] = false; + dai = snd_soc_find_dai_with_mutex(cpu); + if (dai && snd_soc_dai_stream_valid(dai, direction)) { + supported_cpu = true; break; } } - if (!supported[direction]) - continue; for_each_link_codecs(dai_link, i, codec) { - dai = snd_soc_find_dai(codec); - if (!dai || !snd_soc_dai_stream_valid(dai, direction)) { - supported[direction] = false; + dai = snd_soc_find_dai_with_mutex(codec); + if (dai && snd_soc_dai_stream_valid(dai, direction)) { + supported_codec = true; break; } } + supported[direction] = supported_cpu && supported_codec; } dai_link->dpcm_playback = supported[SNDRV_PCM_STREAM_PLAYBACK]; --- linux-azure-5.8-5.8.0.orig/sound/soc/soc-dapm.c +++ linux-azure-5.8-5.8.0/sound/soc/soc-dapm.c @@ -2487,6 +2487,7 @@ enum snd_soc_dapm_direction dir; list_del(&w->list); + list_del(&w->dirty); /* * remove source and sink paths associated to this widget. * While removing the path, remove reference to it from both --- linux-azure-5.8-5.8.0.orig/sound/soc/soc-pcm.c +++ linux-azure-5.8-5.8.0/sound/soc/soc-pcm.c @@ -811,7 +811,7 @@ return 0; config_err: - for_each_rtd_dais(rtd, i, dai) + for_each_rtd_dais_rollback(rtd, i, dai) snd_soc_dai_shutdown(dai, substream); snd_soc_link_shutdown(substream); @@ -2329,6 +2329,7 @@ case SNDRV_PCM_TRIGGER_START: case SNDRV_PCM_TRIGGER_RESUME: case SNDRV_PCM_TRIGGER_PAUSE_RELEASE: + case SNDRV_PCM_TRIGGER_DRAIN: ret = dpcm_dai_trigger_fe_be(substream, cmd, true); break; case SNDRV_PCM_TRIGGER_STOP: @@ -2346,6 +2347,7 @@ case SNDRV_PCM_TRIGGER_START: case SNDRV_PCM_TRIGGER_RESUME: case SNDRV_PCM_TRIGGER_PAUSE_RELEASE: + case SNDRV_PCM_TRIGGER_DRAIN: ret = dpcm_dai_trigger_fe_be(substream, cmd, false); break; case SNDRV_PCM_TRIGGER_STOP: @@ -2802,30 +2804,36 @@ if (rtd->dai_link->dpcm_playback) { stream = SNDRV_PCM_STREAM_PLAYBACK; - for_each_rtd_cpu_dais(rtd, i, cpu_dai) - if (!snd_soc_dai_stream_valid(cpu_dai, - stream)) { - dev_err(rtd->card->dev, - "CPU DAI %s for rtd %s does not support playback\n", - cpu_dai->name, - rtd->dai_link->stream_name); - return -EINVAL; + for_each_rtd_cpu_dais(rtd, i, cpu_dai) { + if (snd_soc_dai_stream_valid(cpu_dai, stream)) { + playback = 1; + break; } - playback = 1; + } + + if (!playback) { + dev_err(rtd->card->dev, + "No CPU DAIs support playback for stream %s\n", + rtd->dai_link->stream_name); + return -EINVAL; + } } if (rtd->dai_link->dpcm_capture) { stream = SNDRV_PCM_STREAM_CAPTURE; - for_each_rtd_cpu_dais(rtd, i, cpu_dai) - if (!snd_soc_dai_stream_valid(cpu_dai, - stream)) { - dev_err(rtd->card->dev, - "CPU DAI %s for rtd %s does not support capture\n", - cpu_dai->name, - rtd->dai_link->stream_name); - return -EINVAL; + for_each_rtd_cpu_dais(rtd, i, cpu_dai) { + if (snd_soc_dai_stream_valid(cpu_dai, stream)) { + capture = 1; + break; } - capture = 1; + } + + if (!capture) { + dev_err(rtd->card->dev, + "No CPU DAIs support capture for stream %s\n", + rtd->dai_link->stream_name); + return -EINVAL; + } } } else { /* Adapt stream for codec2codec links */ --- linux-azure-5.8-5.8.0.orig/sound/soc/soc-topology.c +++ linux-azure-5.8-5.8.0/sound/soc/soc-topology.c @@ -506,7 +506,7 @@ { struct snd_soc_dai_driver *dai_drv = container_of(dobj, struct snd_soc_dai_driver, dobj); - struct snd_soc_dai *dai; + struct snd_soc_dai *dai, *_dai; if (pass != SOC_TPLG_PASS_PCM_DAI) return; @@ -514,9 +514,9 @@ if (dobj->ops && dobj->ops->dai_unload) dobj->ops->dai_unload(comp, dobj); - for_each_component_dais(comp, dai) + for_each_component_dais_safe(comp, dai, _dai) if (dai->driver == dai_drv) - dai->driver = NULL; + snd_soc_unregister_dai(dai); kfree(dai_drv->playback.stream_name); kfree(dai_drv->capture.stream_name); @@ -592,6 +592,17 @@ k->info = snd_soc_bytes_info_ext; k->tlv.c = snd_soc_bytes_tlv_callback; + /* + * When a topology-based implementation abuses the + * control interface and uses bytes_ext controls of + * more than 512 bytes, we need to disable the size + * checks, otherwise accesses to such controls will + * return an -EINVAL error and prevent the card from + * being configured. + */ + if (IS_ENABLED(CONFIG_SND_CTL_VALIDATION) && sbe->max > 512) + k->access |= SNDRV_CTL_ELEM_ACCESS_SKIP_CHECK; + ext_ops = tplg->bytes_ext_ops; num_ops = tplg->bytes_ext_ops_count; for (i = 0; i < num_ops; i++) { @@ -973,7 +984,7 @@ return -EINVAL; se->dobj.control.dvalues = kzalloc(le32_to_cpu(ec->items) * - sizeof(u32), + sizeof(*se->dobj.control.dvalues), GFP_KERNEL); if (!se->dobj.control.dvalues) return -ENOMEM; @@ -1863,7 +1874,7 @@ list_add(&dai_drv->dobj.list, &tplg->comp->dobj_list); /* register the DAI to the component */ - dai = devm_snd_soc_register_dai(tplg->comp->dev, tplg->comp, dai_drv, false); + dai = snd_soc_register_dai(tplg->comp, dai_drv, false); if (!dai) return -ENOMEM; @@ -1871,6 +1882,7 @@ ret = snd_soc_dapm_new_dai_widgets(dapm, dai); if (ret != 0) { dev_err(dai->dev, "Failed to create DAI widgets %d\n", ret); + snd_soc_unregister_dai(dai); return ret; } --- linux-azure-5.8-5.8.0.orig/sound/soc/sof/control.c +++ linux-azure-5.8-5.8.0/sound/soc/sof/control.c @@ -298,6 +298,10 @@ const struct snd_ctl_tlv __user *tlvd = (const struct snd_ctl_tlv __user *)binary_data; + /* make sure we have at least a header */ + if (size < sizeof(struct snd_ctl_tlv)) + return -EINVAL; + /* * The beginning of bytes data contains a header from where * the length (as bytes) is needed to know the correct copy @@ -306,6 +310,13 @@ if (copy_from_user(&header, tlvd, sizeof(const struct snd_ctl_tlv))) return -EFAULT; + /* make sure TLV info is consistent */ + if (header.length + sizeof(struct snd_ctl_tlv) > size) { + dev_err_ratelimited(scomp->dev, "error: inconsistent TLV, data %d + header %zu > %d\n", + header.length, sizeof(struct snd_ctl_tlv), size); + return -EINVAL; + } + /* be->max is coming from topology */ if (header.length > be->max) { dev_err_ratelimited(scomp->dev, "error: Bytes data size %d exceeds max %d.\n", --- linux-azure-5.8-5.8.0.orig/sound/soc/sof/debug.c +++ linux-azure-5.8-5.8.0/sound/soc/sof/debug.c @@ -350,7 +350,7 @@ char *string; int ret; - string = kzalloc(count, GFP_KERNEL); + string = kzalloc(count+1, GFP_KERNEL); if (!string) return -ENOMEM; --- linux-azure-5.8-5.8.0.orig/sound/soc/sof/intel/Kconfig +++ linux-azure-5.8-5.8.0/sound/soc/sof/intel/Kconfig @@ -265,6 +265,7 @@ config SND_SOC_SOF_HDA_COMMON tristate + select SND_INTEL_DSP_CONFIG select SND_SOC_SOF_INTEL_COMMON select SND_SOC_SOF_HDA_LINK_BASELINE help @@ -324,7 +325,6 @@ tristate select SND_HDA_EXT_CORE if SND_SOC_SOF_HDA_LINK select SND_SOC_HDAC_HDA if SND_SOC_SOF_HDA_AUDIO_CODEC - select SND_INTEL_DSP_CONFIG help This option is not user-selectable but automagically handled by 'select' statements at a higher level --- linux-azure-5.8-5.8.0.orig/sound/soc/sof/intel/hda-codec.c +++ linux-azure-5.8-5.8.0/sound/soc/sof/intel/hda-codec.c @@ -63,16 +63,18 @@ } /* enable controller wake up event for all codecs with jack connectors */ -void hda_codec_jack_wake_enable(struct snd_sof_dev *sdev) +void hda_codec_jack_wake_enable(struct snd_sof_dev *sdev, bool enable) { struct hda_bus *hbus = sof_to_hbus(sdev); struct hdac_bus *bus = sof_to_bus(sdev); struct hda_codec *codec; unsigned int mask = 0; - list_for_each_codec(codec, hbus) - if (codec->jacktbl.used) - mask |= BIT(codec->core.addr); + if (enable) { + list_for_each_codec(codec, hbus) + if (codec->jacktbl.used) + mask |= BIT(codec->core.addr); + } snd_hdac_chip_updatew(bus, WAKEEN, STATESTS_INT_MASK, mask); } @@ -81,23 +83,18 @@ void hda_codec_jack_check(struct snd_sof_dev *sdev) { struct hda_bus *hbus = sof_to_hbus(sdev); - struct hdac_bus *bus = sof_to_bus(sdev); struct hda_codec *codec; - /* disable controller Wake Up event*/ - snd_hdac_chip_updatew(bus, WAKEEN, STATESTS_INT_MASK, 0); - list_for_each_codec(codec, hbus) /* * Wake up all jack-detecting codecs regardless whether an event * has been recorded in STATESTS */ if (codec->jacktbl.used) - schedule_delayed_work(&codec->jackpoll_work, - codec->jackpoll_interval); + pm_request_resume(&codec->core.dev); } #else -void hda_codec_jack_wake_enable(struct snd_sof_dev *sdev) {} +void hda_codec_jack_wake_enable(struct snd_sof_dev *sdev, bool enable) {} void hda_codec_jack_check(struct snd_sof_dev *sdev) {} #endif /* CONFIG_SND_SOC_SOF_HDA_AUDIO_CODEC */ EXPORT_SYMBOL_NS(hda_codec_jack_wake_enable, SND_SOC_SOF_HDA_AUDIO_CODEC); @@ -151,7 +148,8 @@ if (!hdev->bus->audio_component) { dev_dbg(sdev->dev, "iDisp hw present but no driver\n"); - return -ENOENT; + ret = -ENOENT; + goto out; } hda_priv->need_display_power = true; } @@ -177,16 +175,20 @@ ret = -ENOENT; } - return ret; +out: + if (ret < 0) { + snd_hdac_device_unregister(hdev); + put_device(&hdev->dev); + } #else hdev = devm_kzalloc(sdev->dev, sizeof(*hdev), GFP_KERNEL); if (!hdev) return -ENOMEM; ret = snd_hdac_ext_bus_device_init(&hbus->core, address, hdev); +#endif return ret; -#endif } /* Codec initialization */ --- linux-azure-5.8-5.8.0.orig/sound/soc/sof/intel/hda-dsp.c +++ linux-azure-5.8-5.8.0/sound/soc/sof/intel/hda-dsp.c @@ -601,7 +601,7 @@ #if IS_ENABLED(CONFIG_SND_SOC_SOF_HDA) if (runtime_suspend) - hda_codec_jack_wake_enable(sdev); + hda_codec_jack_wake_enable(sdev, true); /* power down all hda link */ snd_hdac_ext_bus_link_power_down_all(bus); @@ -667,8 +667,11 @@ #if IS_ENABLED(CONFIG_SND_SOC_SOF_HDA) /* check jack status */ - if (runtime_resume) - hda_codec_jack_check(sdev); + if (runtime_resume) { + hda_codec_jack_wake_enable(sdev, false); + if (sdev->system_suspend_target == SOF_SUSPEND_NONE) + hda_codec_jack_check(sdev); + } /* turn off the links that were off before suspend */ list_for_each_entry(hlink, &bus->hlink_list, list) { @@ -760,11 +763,15 @@ int hda_dsp_runtime_suspend(struct snd_sof_dev *sdev) { + struct sof_intel_hda_dev *hda = sdev->pdata->hw_pdata; const struct sof_dsp_power_state target_state = { .state = SOF_DSP_PM_D3, }; int ret; + /* cancel any attempt for DSP D0I3 */ + cancel_delayed_work_sync(&hda->d0i3_work); + /* stop hda controller and power dsp off */ ret = hda_suspend(sdev, true); if (ret < 0) --- linux-azure-5.8-5.8.0.orig/sound/soc/sof/intel/hda.c +++ linux-azure-5.8-5.8.0/sound/soc/sof/intel/hda.c @@ -544,7 +544,7 @@ if (nhlt) { dmic_num = intel_nhlt_get_dmic_geo(sdev->dev, nhlt); intel_nhlt_free(nhlt); - if (dmic_num == 2 || dmic_num == 4) + if (dmic_num >= 1 && dmic_num <= 4) return dmic_num; } @@ -992,9 +992,15 @@ dmic_num = hda_dmic_num; switch (dmic_num) { + case 1: + dmic_str = "-1ch"; + break; case 2: dmic_str = "-2ch"; break; + case 3: + dmic_str = "-3ch"; + break; case 4: dmic_str = "-4ch"; break; @@ -1179,7 +1185,13 @@ mach = snd_soc_acpi_find_machine(desc->machines); if (mach) { - sof_pdata->tplg_filename = mach->sof_tplg_filename; + /* + * If tplg file name is overridden, use it instead of + * the one set in mach table + */ + if (!sof_pdata->tplg_filename) + sof_pdata->tplg_filename = mach->sof_tplg_filename; + sof_pdata->machine = mach; if (mach->link_mask) { --- linux-azure-5.8-5.8.0.orig/sound/soc/sof/intel/hda.h +++ linux-azure-5.8-5.8.0/sound/soc/sof/intel/hda.h @@ -636,7 +636,7 @@ */ void hda_codec_probe_bus(struct snd_sof_dev *sdev, bool hda_codec_use_common_hdmi); -void hda_codec_jack_wake_enable(struct snd_sof_dev *sdev); +void hda_codec_jack_wake_enable(struct snd_sof_dev *sdev, bool enable); void hda_codec_jack_check(struct snd_sof_dev *sdev); #endif /* CONFIG_SND_SOC_SOF_HDA */ --- linux-azure-5.8-5.8.0.orig/sound/soc/sof/loader.c +++ linux-azure-5.8-5.8.0/sound/soc/sof/loader.c @@ -118,6 +118,11 @@ case SOF_IPC_EXT_CC_INFO: ret = get_cc_info(sdev, ext_hdr); break; + case SOF_IPC_EXT_UNUSED: + case SOF_IPC_EXT_PROBE_INFO: + case SOF_IPC_EXT_USER_ABI_INFO: + /* They are supported but we don't do anything here */ + break; default: dev_warn(sdev->dev, "warning: unknown ext header type %d size 0x%x\n", ext_hdr->type, ext_hdr->hdr.size); --- linux-azure-5.8-5.8.0.orig/sound/soc/sof/nocodec.c +++ linux-azure-5.8-5.8.0/sound/soc/sof/nocodec.c @@ -14,6 +14,7 @@ static struct snd_soc_card sof_nocodec_card = { .name = "nocodec", /* the sof- prefix is added by the core */ + .owner = THIS_MODULE }; static int sof_nocodec_bes_setup(struct device *dev, --- linux-azure-5.8-5.8.0.orig/sound/soc/sof/sof-pci-dev.c +++ linux-azure-5.8-5.8.0/sound/soc/sof/sof-pci-dev.c @@ -35,8 +35,28 @@ module_param_named(sof_pci_debug, sof_pci_debug, int, 0444); MODULE_PARM_DESC(sof_pci_debug, "SOF PCI debug options (0x0 all off)"); +static const char *sof_override_tplg_name; + #define SOF_PCI_DISABLE_PM_RUNTIME BIT(0) +static int sof_tplg_cb(const struct dmi_system_id *id) +{ + sof_override_tplg_name = id->driver_data; + return 1; +} + +static const struct dmi_system_id sof_tplg_table[] = { + { + .callback = sof_tplg_cb, + .matches = { + DMI_MATCH(DMI_PRODUCT_FAMILY, "Google_Volteer"), + DMI_MATCH(DMI_PRODUCT_NAME, "Terrador"), + }, + .driver_data = "sof-tgl-rt5682-ssp0-max98373-ssp2.tplg", + }, + {} +}; + static const struct dmi_system_id community_key_platforms[] = { { .ident = "Up Squared", @@ -46,6 +66,13 @@ } }, { + .ident = "Up Extreme", + .matches = { + DMI_MATCH(DMI_SYS_VENDOR, "AAEON"), + DMI_MATCH(DMI_BOARD_NAME, "UP-WHL01"), + } + }, + { .ident = "Google Chromebooks", .matches = { DMI_MATCH(DMI_SYS_VENDOR, "Google"), @@ -347,6 +374,10 @@ sof_pdata->tplg_filename_prefix = sof_pdata->desc->default_tplg_path; + dmi_check_system(sof_tplg_table); + if (sof_override_tplg_name) + sof_pdata->tplg_filename = sof_override_tplg_name; + #if IS_ENABLED(CONFIG_SND_SOC_SOF_PROBE_WORK_QUEUE) /* set callback to enable runtime_pm */ sof_pdata->sof_probe_complete = sof_pci_probe_complete; --- linux-azure-5.8-5.8.0.orig/sound/soc/sunxi/sun4i-i2s.c +++ linux-azure-5.8-5.8.0/sound/soc/sunxi/sun4i-i2s.c @@ -442,11 +442,11 @@ switch (i2s->format & SND_SOC_DAIFMT_FORMAT_MASK) { case SND_SOC_DAIFMT_DSP_A: case SND_SOC_DAIFMT_DSP_B: - case SND_SOC_DAIFMT_LEFT_J: - case SND_SOC_DAIFMT_RIGHT_J: lrck_period = params_physical_width(params) * slots; break; + case SND_SOC_DAIFMT_LEFT_J: + case SND_SOC_DAIFMT_RIGHT_J: case SND_SOC_DAIFMT_I2S: lrck_period = params_physical_width(params); break; --- linux-azure-5.8-5.8.0.orig/sound/soc/tegra/tegra30_ahub.c +++ linux-azure-5.8-5.8.0/sound/soc/tegra/tegra30_ahub.c @@ -643,8 +643,10 @@ int ret; ret = pm_runtime_get_sync(dev); - if (ret < 0) + if (ret < 0) { + pm_runtime_put(dev); return ret; + } ret = regcache_sync(ahub->regmap_ahub); ret |= regcache_sync(ahub->regmap_apbif); pm_runtime_put(dev); --- linux-azure-5.8-5.8.0.orig/sound/soc/tegra/tegra30_i2s.c +++ linux-azure-5.8-5.8.0/sound/soc/tegra/tegra30_i2s.c @@ -567,8 +567,10 @@ int ret; ret = pm_runtime_get_sync(dev); - if (ret < 0) + if (ret < 0) { + pm_runtime_put(dev); return ret; + } ret = regcache_sync(i2s->regmap); pm_runtime_put(dev); --- linux-azure-5.8-5.8.0.orig/sound/usb/card.h +++ linux-azure-5.8-5.8.0/sound/usb/card.h @@ -137,6 +137,7 @@ unsigned int tx_length_quirk:1; /* add length specifier to transfers */ unsigned int fmt_type; /* USB audio format type (1-3) */ unsigned int pkt_offset_adj; /* Bytes to drop from beginning of packets (for non-compliant devices) */ + unsigned int stream_offset_adj; /* Bytes to drop from beginning of stream (for non-compliant devices) */ unsigned int running: 1; /* running status */ --- linux-azure-5.8-5.8.0.orig/sound/usb/clock.c +++ linux-azure-5.8-5.8.0/sound/usb/clock.c @@ -531,6 +531,12 @@ } crate = data[0] | (data[1] << 8) | (data[2] << 16); + if (!crate) { + dev_info(&dev->dev, "failed to read current rate; disabling the check\n"); + chip->sample_rate_read_error = 3; /* three strikes, see above */ + return 0; + } + if (crate != rate) { dev_warn(&dev->dev, "current rate %d is different from the runtime rate %d\n", crate, rate); // runtime->rate = crate; --- linux-azure-5.8-5.8.0.orig/sound/usb/format.c +++ linux-azure-5.8-5.8.0/sound/usb/format.c @@ -40,6 +40,8 @@ case UAC_VERSION_1: default: { struct uac_format_type_i_discrete_descriptor *fmt = _fmt; + if (format >= 64) + return 0; /* invalid format */ sample_width = fmt->bBitResolution; sample_bytes = fmt->bSubframeSize; format = 1ULL << format; @@ -406,6 +408,7 @@ case USB_ID(0x0e41, 0x4242): /* Line6 Helix Rack */ case USB_ID(0x0e41, 0x4244): /* Line6 Helix LT */ case USB_ID(0x0e41, 0x4246): /* Line6 HX-Stomp */ + case USB_ID(0x0e41, 0x4247): /* Line6 Pod Go */ case USB_ID(0x0e41, 0x4248): /* Line6 Helix >= fw 2.82 */ case USB_ID(0x0e41, 0x4249): /* Line6 Helix Rack >= fw 2.82 */ case USB_ID(0x0e41, 0x424a): /* Line6 Helix LT >= fw 2.82 */ --- linux-azure-5.8-5.8.0.orig/sound/usb/midi.c +++ linux-azure-5.8-5.8.0/sound/usb/midi.c @@ -1889,6 +1889,8 @@ ms_ep = find_usb_ms_endpoint_descriptor(hostep); if (!ms_ep) continue; + if (ms_ep->bNumEmbMIDIJack > 0x10) + continue; if (usb_endpoint_dir_out(ep)) { if (endpoints[epidx].out_ep) { if (++epidx >= MIDI_MAX_ENDPOINTS) { @@ -2141,6 +2143,8 @@ cs_desc[1] == USB_DT_CS_INTERFACE && cs_desc[2] == 0xf1 && cs_desc[3] == 0x02) { + if (cs_desc[4] > 0x10 || cs_desc[5] > 0x10) + continue; endpoint->in_cables = (1 << cs_desc[4]) - 1; endpoint->out_cables = (1 << cs_desc[5]) - 1; return snd_usbmidi_detect_endpoints(umidi, endpoint, 1); --- linux-azure-5.8-5.8.0.orig/sound/usb/mixer.c +++ linux-azure-5.8-5.8.0/sound/usb/mixer.c @@ -1463,6 +1463,10 @@ snd_usb_unlock_shutdown(chip); if (ret < 0) { + if (strstr(kcontrol->id.name, "Speaker")) { + ucontrol->value.integer.value[0] = 1; + return 0; + } error: usb_audio_err(chip, "cannot get connectors status: req = %#x, wValue = %#x, wIndex = %#x, type = %d\n", @@ -2367,7 +2371,7 @@ int num_ins; struct usb_mixer_elem_info *cval; struct snd_kcontrol *kctl; - int i, err, nameid, type, len; + int i, err, nameid, type, len, val; const struct procunit_info *info; const struct procunit_value_info *valinfo; const struct usbmix_name_map *map; @@ -2470,6 +2474,12 @@ break; } + err = get_cur_ctl_value(cval, cval->control << 8, &val); + if (err < 0) { + usb_mixer_elem_info_free(cval); + return -EINVAL; + } + kctl = snd_ctl_new1(&mixer_procunit_ctl, cval); if (!kctl) { usb_mixer_elem_info_free(cval); --- linux-azure-5.8-5.8.0.orig/sound/usb/mixer_maps.c +++ linux-azure-5.8-5.8.0/sound/usb/mixer_maps.c @@ -370,6 +370,12 @@ {} }; +static const struct usbmix_name_map lenovo_p620_rear_map[] = { + { 19, NULL, 2 }, /* FU, Volume */ + { 19, NULL, 12 }, /* FU, Input Gain Pad */ + {} +}; + /* TRX40 mobos with Realtek ALC1220-VB */ static const struct usbmix_name_map trx40_mobo_map[] = { { 18, NULL }, /* OT, IEC958 - broken response, disabled */ @@ -573,6 +579,10 @@ .map = trx40_mobo_map, .connector_map = trx40_mobo_connector_map, }, + { /* Lenovo ThinkStation P620 Rear */ + .id = USB_ID(0x17aa, 0x1046), + .map = lenovo_p620_rear_map, + }, { 0 } /* terminator */ }; --- linux-azure-5.8-5.8.0.orig/sound/usb/mixer_quirks.c +++ linux-azure-5.8-5.8.0/sound/usb/mixer_quirks.c @@ -185,6 +185,7 @@ { USB_ID(0x041e, 0x3042), 0, 1, 1, 1, 1, 0x000d }, /* Usb X-Fi S51 */ { USB_ID(0x041e, 0x30df), 0, 1, 1, 1, 1, 0x000d }, /* Usb X-Fi S51 Pro */ { USB_ID(0x041e, 0x3237), 0, 1, 1, 1, 1, 0x000d }, /* Usb X-Fi S51 Pro */ + { USB_ID(0x041e, 0x3263), 0, 1, 1, 1, 1, 0x000d }, /* Usb X-Fi S51 Pro */ { USB_ID(0x041e, 0x3048), 2, 2, 6, 6, 2, 0x6e91 }, /* Toshiba SB0500 */ }; --- linux-azure-5.8-5.8.0.orig/sound/usb/mixer_us16x08.c +++ linux-azure-5.8-5.8.0/sound/usb/mixer_us16x08.c @@ -607,7 +607,7 @@ static int snd_us16x08_meter_info(struct snd_kcontrol *kcontrol, struct snd_ctl_elem_info *uinfo) { - uinfo->count = 1; + uinfo->count = 34; uinfo->type = SNDRV_CTL_ELEM_TYPE_INTEGER; uinfo->value.integer.max = 0x7FFF; uinfo->value.integer.min = 0; --- linux-azure-5.8-5.8.0.orig/sound/usb/pcm.c +++ linux-azure-5.8-5.8.0/sound/usb/pcm.c @@ -336,6 +336,7 @@ switch (subs->stream->chip->usb_id) { case USB_ID(0x0763, 0x2030): /* M-Audio Fast Track C400 */ case USB_ID(0x0763, 0x2031): /* M-Audio Fast Track C600 */ + case USB_ID(0x22f0, 0x0006): /* Allen&Heath Qu-16 */ ep = 0x81; ifnum = 3; goto add_sync_ep_from_ifnum; @@ -345,6 +346,7 @@ ifnum = 2; goto add_sync_ep_from_ifnum; case USB_ID(0x2466, 0x8003): /* Fractal Audio Axe-Fx II */ + case USB_ID(0x0499, 0x172a): /* Yamaha MODX */ ep = 0x86; ifnum = 2; goto add_sync_ep_from_ifnum; @@ -352,6 +354,10 @@ ep = 0x81; ifnum = 2; goto add_sync_ep_from_ifnum; + case USB_ID(0x1686, 0xf029): /* Zoom UAC-2 */ + ep = 0x82; + ifnum = 2; + goto add_sync_ep_from_ifnum; case USB_ID(0x1397, 0x0001): /* Behringer UFX1604 */ case USB_ID(0x1397, 0x0002): /* Behringer UFX1204 */ ep = 0x81; @@ -369,11 +375,13 @@ case USB_ID(0x07fd, 0x0008): /* MOTU M Series */ case USB_ID(0x31e9, 0x0001): /* Solid State Logic SSL2 */ case USB_ID(0x31e9, 0x0002): /* Solid State Logic SSL2+ */ + case USB_ID(0x0499, 0x172f): /* Steinberg UR22C */ case USB_ID(0x0d9a, 0x00df): /* RTX6001 */ ep = 0x81; ifnum = 2; goto add_sync_ep_from_ifnum; case USB_ID(0x2b73, 0x000a): /* Pioneer DJ DJM-900NXS2 */ + case USB_ID(0x2b73, 0x0017): /* Pioneer DJ DJM-250MK2 */ ep = 0x82; ifnum = 0; goto add_sync_ep_from_ifnum; @@ -1420,6 +1428,12 @@ // continue; } bytes = urb->iso_frame_desc[i].actual_length; + if (subs->stream_offset_adj > 0) { + unsigned int adj = min(subs->stream_offset_adj, bytes); + cp += adj; + bytes -= adj; + subs->stream_offset_adj -= adj; + } frames = bytes / stride; if (!subs->txfr_quirk) bytes = frames * stride; @@ -1847,7 +1861,7 @@ { struct snd_pcm *pcm = subs->stream->pcm; struct snd_pcm_substream *s = pcm->streams[subs->direction].substream; - struct device *dev = subs->dev->bus->controller; + struct device *dev = subs->dev->bus->sysdev; if (snd_usb_use_vmalloc) snd_pcm_set_managed_buffer(s, SNDRV_DMA_TYPE_VMALLOC, --- linux-azure-5.8-5.8.0.orig/sound/usb/quirks-table.h +++ linux-azure-5.8-5.8.0/sound/usb/quirks-table.h @@ -2680,6 +2680,10 @@ .data = (const struct snd_usb_audio_quirk[]) { { .ifnum = 0, + .type = QUIRK_AUDIO_STANDARD_MIXER, + }, + { + .ifnum = 0, .type = QUIRK_AUDIO_FIXED_ENDPOINT, .data = &(const struct audioformat) { .formats = SNDRV_PCM_FMTBIT_S24_3LE, @@ -2690,6 +2694,32 @@ .attributes = UAC_EP_CS_ATTR_SAMPLE_RATE, .endpoint = 0x01, .ep_attr = USB_ENDPOINT_XFER_ISOC, + .datainterval = 1, + .maxpacksize = 0x024c, + .rates = SNDRV_PCM_RATE_44100 | + SNDRV_PCM_RATE_48000, + .rate_min = 44100, + .rate_max = 48000, + .nr_rates = 2, + .rate_table = (unsigned int[]) { + 44100, 48000 + } + } + }, + { + .ifnum = 0, + .type = QUIRK_AUDIO_FIXED_ENDPOINT, + .data = &(const struct audioformat) { + .formats = SNDRV_PCM_FMTBIT_S24_3LE, + .channels = 2, + .iface = 0, + .altsetting = 1, + .altset_idx = 1, + .attributes = 0, + .endpoint = 0x82, + .ep_attr = USB_ENDPOINT_XFER_ISOC, + .datainterval = 1, + .maxpacksize = 0x0126, .rates = SNDRV_PCM_RATE_44100 | SNDRV_PCM_RATE_48000, .rate_min = 44100, @@ -2794,6 +2824,19 @@ QUIRK_RENAME_DEVICE("Rane", "SL-1") }, +/* Lenovo ThinkStation P620 Rear Line-in, Line-out and Microphone */ +{ + USB_DEVICE(0x17aa, 0x1046), + QUIRK_DEVICE_PROFILE("Lenovo", "ThinkStation P620 Rear", + "Lenovo-ThinkStation-P620-Rear"), +}, +/* Lenovo ThinkStation P620 Internal Speaker + Front Headset */ +{ + USB_DEVICE(0x17aa, 0x104d), + QUIRK_DEVICE_PROFILE("Lenovo", "ThinkStation P620 Main", + "Lenovo-ThinkStation-P620-Main"), +}, + /* Native Instruments MK2 series */ { /* Komplete Audio 6 */ @@ -3502,14 +3545,40 @@ { /* * Pioneer DJ DJM-250MK2 - * PCM is 8 channels out @ 48 fixed (endpoints 0x01). - * The output from computer to the mixer is usable. + * PCM is 8 channels out @ 48 fixed (endpoint 0x01) + * and 8 channels in @ 48 fixed (endpoint 0x82). + * + * Both playback and recording is working, even simultaneously. + * + * Playback channels could be mapped to: + * - CH1 + * - CH2 + * - AUX + * + * Recording channels could be mapped to: + * - Post CH1 Fader + * - Post CH2 Fader + * - Cross Fader A + * - Cross Fader B + * - MIC + * - AUX + * - REC OUT + * + * There is remaining problem with recording directly from PHONO/LINE. + * If we map a channel to: + * - CH1 Control Tone PHONO + * - CH1 Control Tone LINE + * - CH2 Control Tone PHONO + * - CH2 Control Tone LINE + * it is silent. + * There is no signal even on other operating systems with official drivers. + * The signal appears only when a supported application is started. + * This needs to be investigated yet... + * (there is quite a lot communication on the USB in both directions) * - * The input (phono or line to computer) is not working. - * It should be at endpoint 0x82 and probably also 8 channels, - * but it seems that it works only with Pioneer proprietary software. - * Even on officially supported OS, the Audacity was unable to record - * and Mixxx to recognize the control vinyls. + * In current version this mixer could be used for playback + * and for recording from vinyls (through Post CH* Fader) + * but not for DVS (Digital Vinyl Systems) like in Mixxx. */ USB_DEVICE_VENDOR_SPEC(0x2b73, 0x0017), .driver_info = (unsigned long) &(const struct snd_usb_audio_quirk) { @@ -3533,6 +3602,82 @@ .rate_max = 48000, .nr_rates = 1, .rate_table = (unsigned int[]) { 48000 } + } + }, + { + .ifnum = 0, + .type = QUIRK_AUDIO_FIXED_ENDPOINT, + .data = &(const struct audioformat) { + .formats = SNDRV_PCM_FMTBIT_S24_3LE, + .channels = 8, // inputs + .iface = 0, + .altsetting = 1, + .altset_idx = 1, + .endpoint = 0x82, + .ep_attr = USB_ENDPOINT_XFER_ISOC| + USB_ENDPOINT_SYNC_ASYNC| + USB_ENDPOINT_USAGE_IMPLICIT_FB, + .rates = SNDRV_PCM_RATE_48000, + .rate_min = 48000, + .rate_max = 48000, + .nr_rates = 1, + .rate_table = (unsigned int[]) { 48000 } + } + }, + { + .ifnum = -1 + } + } + } +}, +{ + /* + * PIONEER DJ DDJ-RB + * PCM is 4 channels out, 2 dummy channels in @ 44.1 fixed + * The feedback for the output is the dummy input. + */ + USB_DEVICE_VENDOR_SPEC(0x2b73, 0x000e), + .driver_info = (unsigned long) &(const struct snd_usb_audio_quirk) { + .ifnum = QUIRK_ANY_INTERFACE, + .type = QUIRK_COMPOSITE, + .data = (const struct snd_usb_audio_quirk[]) { + { + .ifnum = 0, + .type = QUIRK_AUDIO_FIXED_ENDPOINT, + .data = &(const struct audioformat) { + .formats = SNDRV_PCM_FMTBIT_S24_3LE, + .channels = 4, + .iface = 0, + .altsetting = 1, + .altset_idx = 1, + .endpoint = 0x01, + .ep_attr = USB_ENDPOINT_XFER_ISOC| + USB_ENDPOINT_SYNC_ASYNC, + .rates = SNDRV_PCM_RATE_44100, + .rate_min = 44100, + .rate_max = 44100, + .nr_rates = 1, + .rate_table = (unsigned int[]) { 44100 } + } + }, + { + .ifnum = 0, + .type = QUIRK_AUDIO_FIXED_ENDPOINT, + .data = &(const struct audioformat) { + .formats = SNDRV_PCM_FMTBIT_S24_3LE, + .channels = 2, + .iface = 0, + .altsetting = 1, + .altset_idx = 1, + .endpoint = 0x82, + .ep_attr = USB_ENDPOINT_XFER_ISOC| + USB_ENDPOINT_SYNC_ASYNC| + USB_ENDPOINT_USAGE_IMPLICIT_FB, + .rates = SNDRV_PCM_RATE_44100, + .rate_min = 44100, + .rate_max = 44100, + .nr_rates = 1, + .rate_table = (unsigned int[]) { 44100 } } }, { @@ -3641,11 +3786,17 @@ * they pretend to be 96kHz mono as a workaround for stereo being broken * by that... * - * They also have swapped L-R channels, but that's for userspace to deal - * with. + * They also have an issue with initial stream alignment that causes the + * channels to be swapped and out of phase, which is dealt with in quirks.c. */ { - USB_DEVICE(0x534d, 0x2109), + .match_flags = USB_DEVICE_ID_MATCH_DEVICE | + USB_DEVICE_ID_MATCH_INT_CLASS | + USB_DEVICE_ID_MATCH_INT_SUBCLASS, + .idVendor = 0x534d, + .idProduct = 0x2109, + .bInterfaceClass = USB_CLASS_AUDIO, + .bInterfaceSubClass = USB_SUBCLASS_AUDIOCONTROL, .driver_info = (unsigned long) &(const struct snd_usb_audio_quirk) { .vendor_name = "MacroSilicon", .product_name = "MS2109", --- linux-azure-5.8-5.8.0.orig/sound/usb/quirks.c +++ linux-azure-5.8-5.8.0/sound/usb/quirks.c @@ -1493,8 +1493,12 @@ set_format_emu_quirk(subs, fmt); break; case USB_ID(0x2b73, 0x000a): /* Pioneer DJ DJM-900NXS2 */ + case USB_ID(0x2b73, 0x0017): /* Pioneer DJ DJM-250MK2 */ pioneer_djm_set_format_quirk(subs); break; + case USB_ID(0x534d, 0x2109): /* MacroSilicon MS2109 */ + subs->stream_offset_adj = 2; + break; } } @@ -1664,12 +1668,13 @@ && (requesttype & USB_TYPE_MASK) == USB_TYPE_CLASS) msleep(20); - /* Zoom R16/24, Logitech H650e, Jabra 550a, Kingston HyperX needs a tiny - * delay here, otherwise requests like get/set frequency return as - * failed despite actually succeeding. + /* Zoom R16/24, many Logitech(at least H650e/H570e/BCC950), + * Jabra 550a, Kingston HyperX needs a tiny delay here, + * otherwise requests like get/set frequency return + * as failed despite actually succeeding. */ if ((chip->usb_id == USB_ID(0x1686, 0x00dd) || - chip->usb_id == USB_ID(0x046d, 0x0a46) || + USB_ID_VENDOR(chip->usb_id) == 0x046d || /* Logitech */ chip->usb_id == USB_ID(0x0b0e, 0x0349) || chip->usb_id == USB_ID(0x0951, 0x16ad)) && (requesttype & USB_TYPE_MASK) == USB_TYPE_CLASS) @@ -1790,7 +1795,9 @@ case 0x25ce: /* Mytek devices */ case 0x278b: /* Rotel? */ case 0x292b: /* Gustard/Ess based devices */ + case 0x2972: /* FiiO devices */ case 0x2ab6: /* T+A devices */ + case 0x3353: /* Khadas devices */ case 0x3842: /* EVGA */ case 0xc502: /* HiBy devices */ if (fp->dsd_raw) --- linux-azure-5.8-5.8.0.orig/sound/usb/stream.c +++ linux-azure-5.8-5.8.0/sound/usb/stream.c @@ -94,6 +94,7 @@ subs->tx_length_quirk = as->chip->tx_length_quirk; subs->speed = snd_usb_get_speed(subs->dev); subs->pkt_offset_adj = 0; + subs->stream_offset_adj = 0; snd_usb_set_pcm_ops(as->pcm, stream); @@ -192,16 +193,16 @@ struct snd_pcm_chmap *info = snd_kcontrol_chip(kcontrol); struct snd_usb_substream *subs = info->private_data; struct snd_pcm_chmap_elem *chmap = NULL; - int i; + int i = 0; - memset(ucontrol->value.integer.value, 0, - sizeof(ucontrol->value.integer.value)); if (subs->cur_audiofmt) chmap = subs->cur_audiofmt->chmap; if (chmap) { for (i = 0; i < chmap->channels; i++) ucontrol->value.integer.value[i] = chmap->map[i]; } + for (; i < subs->channels_max; i++) + ucontrol->value.integer.value[i] = 0; return 0; } --- linux-azure-5.8-5.8.0.orig/sound/x86/Kconfig +++ linux-azure-5.8-5.8.0/sound/x86/Kconfig @@ -9,7 +9,7 @@ if SND_X86 config HDMI_LPE_AUDIO - tristate "HDMI audio without HDaudio on Intel Atom platforms" + tristate "HDMI audio without HDAudio on Intel Atom platforms" depends on DRM_I915 select SND_PCM help --- linux-azure-5.8-5.8.0.orig/tools/arch/x86/include/asm/insn.h +++ linux-azure-5.8-5.8.0/tools/arch/x86/include/asm/insn.h @@ -201,6 +201,21 @@ return insn_offset_displacement(insn) + insn->displacement.nbytes; } +/** + * for_each_insn_prefix() -- Iterate prefixes in the instruction + * @insn: Pointer to struct insn. + * @idx: Index storage. + * @prefix: Prefix byte. + * + * Iterate prefix bytes of given @insn. Each prefix byte is stored in @prefix + * and the index is stored in @idx (note that this @idx is just for a cursor, + * do not change it.) + * Since prefixes.nbytes can be bigger than 4 if some prefixes + * are repeated, it cannot be used for looping over the prefixes. + */ +#define for_each_insn_prefix(insn, idx, prefix) \ + for (idx = 0; idx < ARRAY_SIZE(insn->prefixes.bytes) && (prefix = insn->prefixes.bytes[idx]) != 0; idx++) + #define POP_SS_OPCODE 0x1f #define MOV_SREG_OPCODE 0x8e --- linux-azure-5.8-5.8.0.orig/tools/arch/x86/lib/memcpy_64.S +++ linux-azure-5.8-5.8.0/tools/arch/x86/lib/memcpy_64.S @@ -4,7 +4,6 @@ #include #include #include -#include #include #include @@ -187,117 +186,3 @@ SYM_FUNC_END(memcpy_orig) .popsection - -#ifndef CONFIG_UML - -MCSAFE_TEST_CTL - -/* - * __memcpy_mcsafe - memory copy with machine check exception handling - * Note that we only catch machine checks when reading the source addresses. - * Writes to target are posted and don't generate machine checks. - */ -SYM_FUNC_START(__memcpy_mcsafe) - cmpl $8, %edx - /* Less than 8 bytes? Go to byte copy loop */ - jb .L_no_whole_words - - /* Check for bad alignment of source */ - testl $7, %esi - /* Already aligned */ - jz .L_8byte_aligned - - /* Copy one byte at a time until source is 8-byte aligned */ - movl %esi, %ecx - andl $7, %ecx - subl $8, %ecx - negl %ecx - subl %ecx, %edx -.L_read_leading_bytes: - movb (%rsi), %al - MCSAFE_TEST_SRC %rsi 1 .E_leading_bytes - MCSAFE_TEST_DST %rdi 1 .E_leading_bytes -.L_write_leading_bytes: - movb %al, (%rdi) - incq %rsi - incq %rdi - decl %ecx - jnz .L_read_leading_bytes - -.L_8byte_aligned: - movl %edx, %ecx - andl $7, %edx - shrl $3, %ecx - jz .L_no_whole_words - -.L_read_words: - movq (%rsi), %r8 - MCSAFE_TEST_SRC %rsi 8 .E_read_words - MCSAFE_TEST_DST %rdi 8 .E_write_words -.L_write_words: - movq %r8, (%rdi) - addq $8, %rsi - addq $8, %rdi - decl %ecx - jnz .L_read_words - - /* Any trailing bytes? */ -.L_no_whole_words: - andl %edx, %edx - jz .L_done_memcpy_trap - - /* Copy trailing bytes */ - movl %edx, %ecx -.L_read_trailing_bytes: - movb (%rsi), %al - MCSAFE_TEST_SRC %rsi 1 .E_trailing_bytes - MCSAFE_TEST_DST %rdi 1 .E_trailing_bytes -.L_write_trailing_bytes: - movb %al, (%rdi) - incq %rsi - incq %rdi - decl %ecx - jnz .L_read_trailing_bytes - - /* Copy successful. Return zero */ -.L_done_memcpy_trap: - xorl %eax, %eax -.L_done: - ret -SYM_FUNC_END(__memcpy_mcsafe) -EXPORT_SYMBOL_GPL(__memcpy_mcsafe) - - .section .fixup, "ax" - /* - * Return number of bytes not copied for any failure. Note that - * there is no "tail" handling since the source buffer is 8-byte - * aligned and poison is cacheline aligned. - */ -.E_read_words: - shll $3, %ecx -.E_leading_bytes: - addl %edx, %ecx -.E_trailing_bytes: - mov %ecx, %eax - jmp .L_done - - /* - * For write fault handling, given the destination is unaligned, - * we handle faults on multi-byte writes with a byte-by-byte - * copy up to the write-protected page. - */ -.E_write_words: - shll $3, %ecx - addl %edx, %ecx - movl %ecx, %edx - jmp mcsafe_handle_tail - - .previous - - _ASM_EXTABLE_FAULT(.L_read_leading_bytes, .E_leading_bytes) - _ASM_EXTABLE_FAULT(.L_read_words, .E_read_words) - _ASM_EXTABLE_FAULT(.L_read_trailing_bytes, .E_trailing_bytes) - _ASM_EXTABLE(.L_write_leading_bytes, .E_leading_bytes) - _ASM_EXTABLE(.L_write_words, .E_write_words) - _ASM_EXTABLE(.L_write_trailing_bytes, .E_trailing_bytes) -#endif --- linux-azure-5.8-5.8.0.orig/tools/bootconfig/main.c +++ linux-azure-5.8-5.8.0/tools/bootconfig/main.c @@ -274,6 +274,7 @@ int apply_xbc(const char *path, const char *xbc_path) { + struct stat stat; u32 size, csum; char *buf, *data; int ret, fd; @@ -330,16 +331,26 @@ return fd; } /* TODO: Ensure the @path is initramfs/initrd image */ + if (fstat(fd, &stat) < 0) { + pr_err("Failed to get the size of %s\n", path); + goto out; + } ret = write(fd, data, size + 8); - if (ret < 0) { + if (ret < size + 8) { + if (ret < 0) + ret = -errno; pr_err("Failed to apply a boot config: %d\n", ret); - goto out; + if (ret < 0) + goto out; + goto out_rollback; } /* Write a magic word of the bootconfig */ ret = write(fd, BOOTCONFIG_MAGIC, BOOTCONFIG_MAGIC_LEN); - if (ret < 0) { + if (ret < BOOTCONFIG_MAGIC_LEN) { + if (ret < 0) + ret = -errno; pr_err("Failed to apply a boot config magic: %d\n", ret); - goto out; + goto out_rollback; } ret = 0; out: @@ -347,6 +358,17 @@ free(data); return ret; + +out_rollback: + /* Map the partial write to -ENOSPC */ + if (ret >= 0) + ret = -ENOSPC; + if (ftruncate(fd, stat.st_size) < 0) { + ret = -errno; + pr_err("Failed to rollback the write error: %d\n", ret); + pr_err("The initrd %s may be corrupted. Recommend to rebuild.\n", path); + } + goto out; } int usage(void) --- linux-azure-5.8-5.8.0.orig/tools/bpf/bpftool/btf.c +++ linux-azure-5.8-5.8.0/tools/bpf/bpftool/btf.c @@ -596,7 +596,7 @@ goto done; } if (!btf) { - err = ENOENT; + err = -ENOENT; p_err("can't find btf with ID (%u)", btf_id); goto done; } @@ -745,6 +745,7 @@ obj_node = calloc(1, sizeof(*obj_node)); if (!obj_node) { p_err("failed to allocate memory: %s", strerror(errno)); + err = -ENOMEM; goto err_free; } --- linux-azure-5.8-5.8.0.orig/tools/bpf/bpftool/btf_dumper.c +++ linux-azure-5.8-5.8.0/tools/bpf/bpftool/btf_dumper.c @@ -67,7 +67,7 @@ if (!info->btf_id || !info->nr_func_info || btf__get_from_id(info->btf_id, &prog_btf)) goto print; - finfo = (struct bpf_func_info *)info->func_info; + finfo = u64_to_ptr(info->func_info); func_type = btf__type_by_id(prog_btf, finfo->type_id); if (!func_type || !btf_is_func(func_type)) goto print; --- linux-azure-5.8-5.8.0.orig/tools/bpf/bpftool/feature.c +++ linux-azure-5.8-5.8.0/tools/bpf/bpftool/feature.c @@ -835,9 +835,14 @@ else p_err("missing %s%s%s%s%s%s%s%srequired for full feature probing; run as root or use 'unprivileged'", capability_msg(bpf_caps, 0), +#ifdef CAP_BPF capability_msg(bpf_caps, 1), capability_msg(bpf_caps, 2), - capability_msg(bpf_caps, 3)); + capability_msg(bpf_caps, 3) +#else + "", "", "", "", "", "" +#endif /* CAP_BPF */ + ); goto exit_free; } --- linux-azure-5.8-5.8.0.orig/tools/bpf/bpftool/gen.c +++ linux-azure-5.8-5.8.0/tools/bpf/bpftool/gen.c @@ -305,8 +305,11 @@ opts.object_name = obj_name; obj = bpf_object__open_mem(obj_data, file_sz, &opts); if (IS_ERR(obj)) { + char err_buf[256]; + + libbpf_strerror(PTR_ERR(obj), err_buf, sizeof(err_buf)); + p_err("failed to open BPF object file: %s", err_buf); obj = NULL; - p_err("failed to open BPF object file: %ld", PTR_ERR(obj)); goto out; } @@ -397,7 +400,7 @@ { \n\ struct %1$s *obj; \n\ \n\ - obj = (typeof(obj))calloc(1, sizeof(*obj)); \n\ + obj = (struct %1$s *)calloc(1, sizeof(*obj)); \n\ if (!obj) \n\ return NULL; \n\ if (%1$s__create_skeleton(obj)) \n\ @@ -461,7 +464,7 @@ { \n\ struct bpf_object_skeleton *s; \n\ \n\ - s = (typeof(s))calloc(1, sizeof(*s)); \n\ + s = (struct bpf_object_skeleton *)calloc(1, sizeof(*s));\n\ if (!s) \n\ return -1; \n\ obj->skeleton = s; \n\ @@ -479,7 +482,7 @@ /* maps */ \n\ s->map_cnt = %zu; \n\ s->map_skel_sz = sizeof(*s->maps); \n\ - s->maps = (typeof(s->maps))calloc(s->map_cnt, s->map_skel_sz);\n\ + s->maps = (struct bpf_map_skeleton *)calloc(s->map_cnt, s->map_skel_sz);\n\ if (!s->maps) \n\ goto err; \n\ ", @@ -515,7 +518,7 @@ /* programs */ \n\ s->prog_cnt = %zu; \n\ s->prog_skel_sz = sizeof(*s->progs); \n\ - s->progs = (typeof(s->progs))calloc(s->prog_cnt, s->prog_skel_sz);\n\ + s->progs = (struct bpf_prog_skeleton *)calloc(s->prog_cnt, s->prog_skel_sz);\n\ if (!s->progs) \n\ goto err; \n\ ", --- linux-azure-5.8-5.8.0.orig/tools/bpf/bpftool/link.c +++ linux-azure-5.8-5.8.0/tools/bpf/bpftool/link.c @@ -101,7 +101,7 @@ switch (info->type) { case BPF_LINK_TYPE_RAW_TRACEPOINT: jsonw_string_field(json_wtr, "tp_name", - (const char *)info->raw_tracepoint.tp_name); + u64_to_ptr(info->raw_tracepoint.tp_name)); break; case BPF_LINK_TYPE_TRACING: err = get_prog_info(info->prog_id, &prog_info); @@ -177,7 +177,7 @@ switch (info->type) { case BPF_LINK_TYPE_RAW_TRACEPOINT: printf("\n\ttp '%s' ", - (const char *)info->raw_tracepoint.tp_name); + (const char *)u64_to_ptr(info->raw_tracepoint.tp_name)); break; case BPF_LINK_TYPE_TRACING: err = get_prog_info(info->prog_id, &prog_info); --- linux-azure-5.8-5.8.0.orig/tools/bpf/bpftool/main.h +++ linux-azure-5.8-5.8.0/tools/bpf/bpftool/main.h @@ -21,7 +21,15 @@ /* Make sure we do not use kernel-only integer typedefs */ #pragma GCC poison u8 u16 u32 u64 s8 s16 s32 s64 -#define ptr_to_u64(ptr) ((__u64)(unsigned long)(ptr)) +static inline __u64 ptr_to_u64(const void *ptr) +{ + return (__u64)(unsigned long)ptr; +} + +static inline void *u64_to_ptr(__u64 ptr) +{ + return (void *)(unsigned long)ptr; +} #define NEXT_ARG() ({ argc--; argv++; if (argc < 0) usage(); }) #define NEXT_ARGP() ({ (*argc)--; (*argv)++; if (*argc < 0) usage(); }) --- linux-azure-5.8-5.8.0.orig/tools/bpf/bpftool/net.c +++ linux-azure-5.8-5.8.0/tools/bpf/bpftool/net.c @@ -10,7 +10,6 @@ #include #include #include -#include #include #include #include @@ -313,8 +312,8 @@ ifindex = net_parse_dev(&argc, &argv); if (ifindex < 1) { - close(progfd); - return -EINVAL; + err = -EINVAL; + goto cleanup; } if (argc) { @@ -322,8 +321,8 @@ overwrite = true; } else { p_err("expected 'overwrite', got: '%s'?", *argv); - close(progfd); - return -EINVAL; + err = -EINVAL; + goto cleanup; } } @@ -331,17 +330,17 @@ if (is_prefix("xdp", attach_type_strings[attach_type])) err = do_attach_detach_xdp(progfd, attach_type, ifindex, overwrite); - - if (err < 0) { + if (err) { p_err("interface %s attach failed: %s", attach_type_strings[attach_type], strerror(-err)); - return err; + goto cleanup; } if (json_output) jsonw_null(json_wtr); - - return 0; +cleanup: + close(progfd); + return err; } static int do_detach(int argc, char **argv) --- linux-azure-5.8-5.8.0.orig/tools/bpf/bpftool/prog.c +++ linux-azure-5.8-5.8.0/tools/bpf/bpftool/prog.c @@ -537,14 +537,14 @@ p_info("no instructions returned"); return -1; } - buf = (unsigned char *)(info->jited_prog_insns); + buf = u64_to_ptr(info->jited_prog_insns); member_len = info->jited_prog_len; } else { /* DUMP_XLATED */ if (info->xlated_prog_len == 0 || !info->xlated_prog_insns) { p_err("error retrieving insn dump: kernel.kptr_restrict set?"); return -1; } - buf = (unsigned char *)info->xlated_prog_insns; + buf = u64_to_ptr(info->xlated_prog_insns); member_len = info->xlated_prog_len; } @@ -553,7 +553,7 @@ return -1; } - func_info = (void *)info->func_info; + func_info = u64_to_ptr(info->func_info); if (info->nr_line_info) { prog_linfo = bpf_prog_linfo__new(info); @@ -571,7 +571,7 @@ n = write(fd, buf, member_len); close(fd); - if (n != member_len) { + if (n != (ssize_t)member_len) { p_err("error writing output file: %s", n < 0 ? strerror(errno) : "short write"); return -1; @@ -601,13 +601,13 @@ __u32 i; if (info->nr_jited_ksyms) { kernel_syms_load(&dd); - ksyms = (__u64 *) info->jited_ksyms; + ksyms = u64_to_ptr(info->jited_ksyms); } if (json_output) jsonw_start_array(json_wtr); - lens = (__u32 *) info->jited_func_lens; + lens = u64_to_ptr(info->jited_func_lens); for (i = 0; i < info->nr_jited_func_lens; i++) { if (ksyms) { sym = kernel_syms_search(&dd, ksyms[i]); @@ -668,7 +668,7 @@ } else { kernel_syms_load(&dd); dd.nr_jited_ksyms = info->nr_jited_ksyms; - dd.jited_ksyms = (__u64 *) info->jited_ksyms; + dd.jited_ksyms = u64_to_ptr(info->jited_ksyms); dd.btf = btf; dd.func_info = func_info; dd.finfo_rec_size = info->func_info_rec_size; @@ -850,7 +850,7 @@ } if (*attach_type == BPF_FLOW_DISSECTOR) { - *mapfd = -1; + *mapfd = 0; return 0; } @@ -1790,7 +1790,7 @@ goto out; } - func_info = (struct bpf_func_info *)(info_linear->info.func_info); + func_info = u64_to_ptr(info_linear->info.func_info); t = btf__type_by_id(btf, func_info[0].type_id); if (!t) { p_err("btf %d doesn't have type %d", --- linux-azure-5.8-5.8.0.orig/tools/build/Build.include +++ linux-azure-5.8-5.8.0/tools/build/Build.include @@ -74,7 +74,8 @@ # dependencies in the cmd file if_changed_dep = $(if $(strip $(any-prereq) $(arg-check)), \ @set -e; \ - $(echo-cmd) $(cmd_$(1)) && $(dep-cmd)) + $(echo-cmd) $(cmd_$(1)); \ + $(dep-cmd)) # if_changed - execute command if any prerequisite is newer than # target, or command line has changed --- linux-azure-5.8-5.8.0.orig/tools/build/Makefile +++ linux-azure-5.8-5.8.0/tools/build/Makefile @@ -15,10 +15,6 @@ $(call allow-override,CC,$(CROSS_COMPILE)gcc) $(call allow-override,LD,$(CROSS_COMPILE)ld) -HOSTCC ?= gcc -HOSTLD ?= ld -HOSTAR ?= ar - export HOSTCC HOSTLD HOSTAR ifeq ($(V),1) --- linux-azure-5.8-5.8.0.orig/tools/build/Makefile.feature +++ linux-azure-5.8-5.8.0/tools/build/Makefile.feature @@ -8,7 +8,7 @@ feature_check = $(eval $(feature_check_code)) define feature_check_code - feature-$(1) := $(shell $(MAKE) OUTPUT=$(OUTPUT_FEATURES) CFLAGS="$(EXTRA_CFLAGS) $(FEATURE_CHECK_CFLAGS-$(1))" CXXFLAGS="$(EXTRA_CXXFLAGS) $(FEATURE_CHECK_CXXFLAGS-$(1))" LDFLAGS="$(LDFLAGS) $(FEATURE_CHECK_LDFLAGS-$(1))" -C $(feature_dir) $(OUTPUT_FEATURES)test-$1.bin >/dev/null 2>/dev/null && echo 1 || echo 0) + feature-$(1) := $(shell $(MAKE) OUTPUT=$(OUTPUT_FEATURES) CC="$(CC)" CXX="$(CXX)" CFLAGS="$(EXTRA_CFLAGS) $(FEATURE_CHECK_CFLAGS-$(1))" CXXFLAGS="$(EXTRA_CXXFLAGS) $(FEATURE_CHECK_CXXFLAGS-$(1))" LDFLAGS="$(LDFLAGS) $(FEATURE_CHECK_LDFLAGS-$(1))" -C $(feature_dir) $(OUTPUT_FEATURES)test-$1.bin >/dev/null 2>/dev/null && echo 1 || echo 0) endef feature_set = $(eval $(feature_set_code)) @@ -38,8 +38,6 @@ get_current_dir_name \ gettid \ glibc \ - gtk2 \ - gtk2-infobar \ libbfd \ libcap \ libelf \ @@ -81,6 +79,8 @@ compile-32 \ compile-x32 \ cplus-demangle \ + gtk2 \ + gtk2-infobar \ hello \ libbabeltrace \ libbfd-liberty \ @@ -110,7 +110,6 @@ dwarf \ dwarf_getlocations \ glibc \ - gtk2 \ libbfd \ libcap \ libelf \ --- linux-azure-5.8-5.8.0.orig/tools/build/feature/Makefile +++ linux-azure-5.8-5.8.0/tools/build/feature/Makefile @@ -74,8 +74,6 @@ FILES := $(addprefix $(OUTPUT),$(FILES)) -CC ?= $(CROSS_COMPILE)gcc -CXX ?= $(CROSS_COMPILE)g++ PKG_CONFIG ?= $(CROSS_COMPILE)pkg-config LLVM_CONFIG ?= llvm-config CLANG ?= clang @@ -91,7 +89,7 @@ ############################### $(OUTPUT)test-all.bin: - $(BUILD) -fstack-protector-all -O2 -D_FORTIFY_SOURCE=2 -ldw -lelf -lnuma -lelf -I/usr/include/slang -lslang $(shell $(PKG_CONFIG) --libs --cflags gtk+-2.0 2>/dev/null) $(FLAGS_PERL_EMBED) $(FLAGS_PYTHON_EMBED) -DPACKAGE='"perf"' -lbfd -ldl -lz -llzma + $(BUILD) -fstack-protector-all -O2 -D_FORTIFY_SOURCE=2 -ldw -lelf -lnuma -lelf -I/usr/include/slang -lslang $(FLAGS_PERL_EMBED) $(FLAGS_PYTHON_EMBED) -DPACKAGE='"perf"' -lbfd -ldl -lz -llzma -lzstd -lcap $(OUTPUT)test-hello.bin: $(BUILD) --- linux-azure-5.8-5.8.0.orig/tools/build/feature/test-all.c +++ linux-azure-5.8-5.8.0/tools/build/feature/test-all.c @@ -78,14 +78,6 @@ # include "test-libslang.c" #undef main -#define main main_test_gtk2 -# include "test-gtk2.c" -#undef main - -#define main main_test_gtk2_infobar -# include "test-gtk2-infobar.c" -#undef main - #define main main_test_libbfd # include "test-libbfd.c" #undef main @@ -205,8 +197,6 @@ main_test_libelf_getshdrstrndx(); main_test_libunwind(); main_test_libslang(); - main_test_gtk2(argc, argv); - main_test_gtk2_infobar(argc, argv); main_test_libbfd(); main_test_backtrace(); main_test_libnuma(); --- linux-azure-5.8-5.8.0.orig/tools/hv/70-hv_fcopy.rules +++ linux-azure-5.8-5.8.0/tools/hv/70-hv_fcopy.rules @@ -0,0 +1 @@ +SUBSYSTEM=="misc", KERNEL=="vmbus/hv_fcopy", TAG+="systemd", ENV{SYSTEMD_WANTS}+="hv_fcopy_daemon.service" --- linux-azure-5.8-5.8.0.orig/tools/hv/70-hv_kvp.rules +++ linux-azure-5.8-5.8.0/tools/hv/70-hv_kvp.rules @@ -0,0 +1 @@ +SUBSYSTEM=="misc", KERNEL=="vmbus/hv_kvp", TAG+="systemd", ENV{SYSTEMD_WANTS}+="hv_kvp_daemon.service" --- linux-azure-5.8-5.8.0.orig/tools/hv/70-hv_vss.rules +++ linux-azure-5.8-5.8.0/tools/hv/70-hv_vss.rules @@ -0,0 +1 @@ +SUBSYSTEM=="misc", KERNEL=="vmbus/hv_vss", TAG+="systemd", ENV{SYSTEMD_WANTS}+="hv_vss_daemon.service" --- linux-azure-5.8-5.8.0.orig/tools/hv/hv_fcopy_daemon.service +++ linux-azure-5.8-5.8.0/tools/hv/hv_fcopy_daemon.service @@ -0,0 +1,9 @@ +[Unit] +Description=Hyper-V FCOPY daemon +BindsTo=sys-devices-virtual-misc-vmbus\x21hv_fcopy.device + +[Service] +ExecStart=/usr/sbin/hv_fcopy_daemon -n + +[Install] +WantedBy=multi-user.target --- linux-azure-5.8-5.8.0.orig/tools/hv/hv_kvp_daemon.8 +++ linux-azure-5.8-5.8.0/tools/hv/hv_kvp_daemon.8 @@ -0,0 +1,26 @@ +.\" This page Copyright (C) 2012 Andy Whitcroft +.\" Distributed under the GPL v2 or later. +.TH HV_KVP_DAEMON 8 +.SH NAME +hv_kvp_daemon \- Hyper-V Key Value Pair daemon +.SH SYNOPSIS +.ft B +.B hv_kvp_daemon +.br +.SH DESCRIPTION +\fBhv_kvp_daemon\fP +is the userspace component of the Hyper-V key value pair functionality, +communicating via a netlink socket with the kernel HV-KVP driver. +This pairing allows the Hyper-V host to pass configuration information +(such as IP addresses) to the guest and allows the host to obtain guest +version information. + +.SH FILES +.ta +.nf +/var/opt/hyperv/.kvp_pool_* +.fi + +.SH AUTHORS +.nf +Written by K. Y. Srinivasan --- linux-azure-5.8-5.8.0.orig/tools/hv/hv_kvp_daemon.c +++ linux-azure-5.8-5.8.0/tools/hv/hv_kvp_daemon.c @@ -95,7 +95,7 @@ #define KVP_CONFIG_LOC "/var/lib/hyperv" #ifndef KVP_SCRIPTS_PATH -#define KVP_SCRIPTS_PATH "/usr/libexec/hypervkvpd/" +#define KVP_SCRIPTS_PATH "/usr/sbin/" #endif #define KVP_NET_DIR "/sys/class/net/" --- linux-azure-5.8-5.8.0.orig/tools/hv/hv_kvp_daemon.service +++ linux-azure-5.8-5.8.0/tools/hv/hv_kvp_daemon.service @@ -0,0 +1,10 @@ +[Unit] +Description=Hyper-V KVP daemon +BindsTo=sys-devices-virtual-misc-vmbus\x21hv_kvp.device + +[Service] +Type=simple +ExecStart=/usr/sbin/hv_kvp_daemon -n + +[Install] +WantedBy=multi-user.target --- linux-azure-5.8-5.8.0.orig/tools/hv/hv_vss_daemon.service +++ linux-azure-5.8-5.8.0/tools/hv/hv_vss_daemon.service @@ -0,0 +1,9 @@ +[Unit] +Description=Hyper-V VSS daemon +BindsTo=sys-devices-virtual-misc-vmbus\x21hv_vss.device + +[Service] +ExecStart=/usr/sbin/hv_vss_daemon -n + +[Install] +WantedBy=multi-user.target --- linux-azure-5.8-5.8.0.orig/tools/hv/lis-daemon.spec +++ linux-azure-5.8-5.8.0/tools/hv/lis-daemon.spec @@ -0,0 +1,137 @@ + +# nodebuginfo +# norootforbuild + + +%define releasetag public +%define release %(date +%Y%m%d) +%define _unpackaged_files_terminate_build 0 + +Name: msft-daemons +License: GPLv2+ +Summary: Microsoft hyper-v daemons +Version: 1 +Release: 0.29%{?snapver}%{?dist} +Source0: hv_kvp_daemon.c +Source1: hv_kvp_daemon.service +Source2: 70-hv_kvp.rules +Source3: hv_get_dhcp_info.sh +Source4: hv_get_dns_info.sh +Source5: hv_set_ifconfig.sh +Source6: hv_kvp_daemon.service +Source7: hv_vss_daemon.c +Source8: 70-hv_vss.rules +Source9: hv_vss_daemon.service +Source10: hv_fcopy_daemon.c +Source11: 70-hv_fcopy.rules +Source12: hv_fcopy_daemon.service +BuildRoot: %{_tmppath}/%{name}-%{version}-build +Requires: kernel >= 3.10.0-384.el7 +BuildRequires: systemd, kernel-headers +Requires(post): systemd +Requires(preun): systemd +Requires(postun): systemd + + +%description +This package utilities for the Microsoft Hyper-V environment. + +%prep +%setup -Tc +cp -pvL %{SOURCE0} hv_kvp_daemon.c +cp -pvL %{SOURCE3} hv_get_dhcp_info.sh +cp -pvL %{SOURCE4} hv_get_dns_info.sh +cp -pvL %{SOURCE5} hv_set_ifconfig.sh +cp -pvL %{SOURCE1} hv_kvp_daemon.service + +cp -pvL %{SOURCE7} hv_vss_daemon.c +cp -pvL %{SOURCE9} hv_vss_daemon.service + +cp -pvL %{SOURCE10} hv_fcopy_daemon.c +cp -pvL %{SOURCE12} hv_fcopy_daemon.service + +%build +make + +%install + +mkdir -p %{buildroot}%{_sbindir} +install -p -m 0755 %{hv_kvp_daemon} %{buildroot}%{_sbindir} +install -p -m 0755 %{hv_vss_daemon} %{buildroot}%{_sbindir} +install -p -m 0755 %{hv_fcopy_daemon} %{buildroot}%{_sbindir} + +# Systemd unit file +mkdir -p %{buildroot}%{_unitdir} +install -p -m 0644 %{SOURCE1} %{buildroot}%{_unitdir} +install -p -m 0644 %{SOURCE9} %{buildroot}%{_unitdir} +install -p -m 0644 %{SOURCE12} %{buildroot}%{_unitdir} + +# Udev rules +mkdir -p %{buildroot}%{_udevrulesdir} +install -p -m 0644 %{SOURCE2} %{buildroot}%{_udevrulesdir}/%{udev_prefix}-70-hv_kvp.rules +install -p -m 0644 %{SOURCE8} %{buildroot}%{_udevrulesdir}/%{udev_prefix}-70-hv_vss.rules +install -p -m 0644 %{SOURCE11} %{buildroot}%{_udevrulesdir}/%{udev_prefix}-70-hv_fcopy.rules + +# Shell scripts for the KVP daemon +mkdir -p %{buildroot}%{_libexecdir}/%{hv_kvp_daemon} +install -p -m 0755 %{SOURCE3} %{buildroot}%{_libexecdir}/%{hv_kvp_daemon}/hv_get_dhcp_info +install -p -m 0755 %{SOURCE4} %{buildroot}%{_libexecdir}/%{hv_kvp_daemon}/hv_get_dns_info +install -p -m 0755 %{SOURCE5} %{buildroot}%{_libexecdir}/%{hv_kvp_daemon}/hv_set_ifconfig + +# Directory for pool files +mkdir -p %{buildroot}%{_sharedstatedir}/hyperv + + +echo "Starting KVP Daemon...." +systemctl daemon-reload +systemctl enable hv_kvp_daemon.service > /dev/null 2>&1 + +echo "Starting VSS Daemon...." +systemctl enable hv_vss_daemon.service > /dev/null 2>&1 + +echo "Starting FCOPY Daemon...." +systemctl enable hv_fcopy_daemon.service > /dev/null 2>&1 + +%preun +if [ $1 -eq 0 ]; then # package is being erased, not upgraded + echo "Removing Package.." + echo "Stopping KVP Daemon...." + systemctl stop hv_kvp_daemon + echo "Stopping FCOPY Daemon...." + systemctl stop hv_fcopy_daemon + echo "Stopping VSS Daemon...." + systemctl stop hv_vss_daemon + rm -rf %{_sharedstatedir}/hyperv || : +fi + +%post +if [ $1 > 1 ] ; then + # Upgrade + systemctl --no-reload disable hv_kvp_daemon.service >/dev/null 2>&1 || : + systemctl --no-reload disable hv_vss_daemon.service >/dev/null 2>&1 || : + systemctl --no-reload disable hv_fcopy_daemon.service >/dev/null 2>&1 || : +fi + +%postun +%systemd_postun hypervkvpd.service +%systemd_postun hypervkvpd.service +%systemd_postun hypervkvpd.service + +%files +%defattr(0644, root, root) +%{_sbindir}/%{hv_kvp_daemon} +%{_unitdir}/hv_kvp_daemon.service +%{_udevrulesdir}/%{udev_prefix}-70-hv_kvp.rules +%dir %{_libexecdir}/%{hv_kvp_daemon} +%{_libexecdir}/%{hv_kvp_daemon}/* +%dir %{_sharedstatedir}/hyperv +%{_sbindir}/%{hv_vss_daemon} +%{_unitdir}/hv_vss_daemon.service +%{_udevrulesdir}/%{udev_prefix}-70-hv_vss.rules +%{_sbindir}/%{hv_fcopy_daemon} +%{_unitdir}/hv_fcopy_daemon.service +%{_udevrulesdir}/%{udev_prefix}-70-hv_fcopy.rules + + + +%changelog --- linux-azure-5.8-5.8.0.orig/tools/hv/lsvmbus +++ linux-azure-5.8-5.8.0/tools/hv/lsvmbus @@ -1,4 +1,4 @@ -#!/usr/bin/env python +#!/usr/bin/env python3 # SPDX-License-Identifier: GPL-2.0 import os --- linux-azure-5.8-5.8.0.orig/tools/hv/lsvmbus.8 +++ linux-azure-5.8-5.8.0/tools/hv/lsvmbus.8 @@ -0,0 +1,23 @@ +.\" This page Copyright (C) 2016 Andy Whitcroft +.\" Distributed under the GPL v2 or later. +.TH LSVMBUS 8 +.SH NAME +lsvmbus \- List Hyper-V VMBus devices +.SH SYNOPSIS +.ft B +.B lsvmbus [-vv] +.br +.SH DESCRIPTION +\fBlsvmbus\fP +displays devices attached to the Hyper-V VMBus. +.SH OPTIONS +.\" +.TP +.B -v +With -v more information is printed including the VMBus Rel_ID, class ID, +Rel_ID, and which channel is bound to which virtual processor. Use -vv +for additional detail including the Device_ID and the sysfs path. +.\" +.SH AUTHORS +.nf +Written by Dexuan Cui --- linux-azure-5.8-5.8.0.orig/tools/include/uapi/linux/bpf.h +++ linux-azure-5.8-5.8.0/tools/include/uapi/linux/bpf.h @@ -1416,8 +1416,8 @@ * Return * The return value depends on the result of the test, and can be: * - * * 0, if the *skb* task belongs to the cgroup2. - * * 1, if the *skb* task does not belong to the cgroup2. + * * 0, if current task belongs to the cgroup2. + * * 1, if current task does not belong to the cgroup2. * * A negative error code, if an error occurred. * * int bpf_skb_change_tail(struct sk_buff *skb, u32 len, u64 flags) @@ -3168,7 +3168,7 @@ * Return * The id is returned or 0 in case the id could not be retrieved. * - * int bpf_ringbuf_output(void *ringbuf, void *data, u64 size, u64 flags) + * long bpf_ringbuf_output(void *ringbuf, void *data, u64 size, u64 flags) * Description * Copy *size* bytes from *data* into a ring buffer *ringbuf*. * If **BPF_RB_NO_WAKEUP** is specified in *flags*, no notification --- linux-azure-5.8-5.8.0.orig/tools/include/uapi/linux/const.h +++ linux-azure-5.8-5.8.0/tools/include/uapi/linux/const.h @@ -28,4 +28,9 @@ #define _BITUL(x) (_UL(1) << (x)) #define _BITULL(x) (_ULL(1) << (x)) +#define __ALIGN_KERNEL(x, a) __ALIGN_KERNEL_MASK(x, (typeof(x))(a) - 1) +#define __ALIGN_KERNEL_MASK(x, mask) (((x) + (mask)) & ~(mask)) + +#define __KERNEL_DIV_ROUND_UP(n, d) (((n) + (d) - 1) / (d)) + #endif /* _UAPI_LINUX_CONST_H */ --- linux-azure-5.8-5.8.0.orig/tools/include/uapi/linux/fscrypt.h +++ linux-azure-5.8-5.8.0/tools/include/uapi/linux/fscrypt.h @@ -20,7 +20,6 @@ #define FSCRYPT_POLICY_FLAG_DIRECT_KEY 0x04 #define FSCRYPT_POLICY_FLAG_IV_INO_LBLK_64 0x08 #define FSCRYPT_POLICY_FLAG_IV_INO_LBLK_32 0x10 -#define FSCRYPT_POLICY_FLAGS_VALID 0x1F /* Encryption algorithms */ #define FSCRYPT_MODE_AES_256_XTS 1 @@ -28,7 +27,7 @@ #define FSCRYPT_MODE_AES_128_CBC 5 #define FSCRYPT_MODE_AES_128_CTS 6 #define FSCRYPT_MODE_ADIANTUM 9 -#define __FSCRYPT_MODE_MAX 9 +/* If adding a mode number > 9, update FSCRYPT_MODE_MAX in fscrypt_private.h */ /* * Legacy policy version; ad-hoc KDF and no key verification. @@ -177,7 +176,7 @@ #define FS_POLICY_FLAGS_PAD_32 FSCRYPT_POLICY_FLAGS_PAD_32 #define FS_POLICY_FLAGS_PAD_MASK FSCRYPT_POLICY_FLAGS_PAD_MASK #define FS_POLICY_FLAG_DIRECT_KEY FSCRYPT_POLICY_FLAG_DIRECT_KEY -#define FS_POLICY_FLAGS_VALID FSCRYPT_POLICY_FLAGS_VALID +#define FS_POLICY_FLAGS_VALID 0x07 /* contains old flags only */ #define FS_ENCRYPTION_MODE_INVALID 0 /* never used */ #define FS_ENCRYPTION_MODE_AES_256_XTS FSCRYPT_MODE_AES_256_XTS #define FS_ENCRYPTION_MODE_AES_256_GCM 2 /* never used */ --- linux-azure-5.8-5.8.0.orig/tools/include/uapi/linux/perf_event.h +++ linux-azure-5.8-5.8.0/tools/include/uapi/linux/perf_event.h @@ -1155,7 +1155,7 @@ #define PERF_MEM_SNOOPX_FWD 0x01 /* forward */ /* 1 free */ -#define PERF_MEM_SNOOPX_SHIFT 37 +#define PERF_MEM_SNOOPX_SHIFT 38 /* locked instruction */ #define PERF_MEM_LOCK_NA 0x01 /* not available */ --- linux-azure-5.8-5.8.0.orig/tools/io_uring/io_uring-bench.c +++ linux-azure-5.8-5.8.0/tools/io_uring/io_uring-bench.c @@ -130,7 +130,7 @@ s->nr_files); } -static int gettid(void) +static int lk_gettid(void) { return syscall(__NR_gettid); } @@ -281,7 +281,7 @@ struct io_sq_ring *ring = &s->sq_ring; int ret, prepped; - printf("submitter=%d\n", gettid()); + printf("submitter=%d\n", lk_gettid()); srand48_r(pthread_self(), &s->rand); --- linux-azure-5.8-5.8.0.orig/tools/lib/bpf/Makefile +++ linux-azure-5.8-5.8.0/tools/lib/bpf/Makefile @@ -59,7 +59,7 @@ FEATURE_TESTS = libelf libelf-mmap zlib bpf reallocarray FEATURE_DISPLAY = libelf zlib bpf -INCLUDES = -I. -I$(srctree)/tools/include -I$(srctree)/tools/arch/$(ARCH)/include/uapi -I$(srctree)/tools/include/uapi +INCLUDES = -I. -I$(srctree)/tools/include -I$(srctree)/tools/include/uapi FEATURE_CHECK_CFLAGS-bpf = $(INCLUDES) check_feat := 1 @@ -152,6 +152,8 @@ awk '/GLOBAL/ && /DEFAULT/ && !/UND/ {print $$NF}' | \ sort -u | wc -l) VERSIONED_SYM_COUNT = $(shell readelf --dyn-syms --wide $(OUTPUT)libbpf.so | \ + sed 's/\[.*\]//' | \ + awk '/GLOBAL/ && /DEFAULT/ && !/UND/ {print $$NF}' | \ grep -Eo '[^ ]+@LIBBPF_' | cut -d@ -f1 | sort -u | wc -l) CMD_TARGETS = $(LIB_TARGET) $(PC_FILE) @@ -219,6 +221,8 @@ awk '/GLOBAL/ && /DEFAULT/ && !/UND/ {print $$NF}'| \ sort -u > $(OUTPUT)libbpf_global_syms.tmp; \ readelf --dyn-syms --wide $(OUTPUT)libbpf.so | \ + sed 's/\[.*\]//' | \ + awk '/GLOBAL/ && /DEFAULT/ && !/UND/ {print $$NF}'| \ grep -Eo '[^ ]+@LIBBPF_' | cut -d@ -f1 | \ sort -u > $(OUTPUT)libbpf_versioned_syms.tmp; \ diff -u $(OUTPUT)libbpf_global_syms.tmp \ --- linux-azure-5.8-5.8.0.orig/tools/lib/bpf/bpf_tracing.h +++ linux-azure-5.8-5.8.0/tools/lib/bpf/bpf_tracing.h @@ -215,7 +215,7 @@ #define PT_REGS_PARM5(x) ((x)->regs[8]) #define PT_REGS_RET(x) ((x)->regs[31]) #define PT_REGS_FP(x) ((x)->regs[30]) /* Works only with CONFIG_FRAME_POINTER */ -#define PT_REGS_RC(x) ((x)->regs[1]) +#define PT_REGS_RC(x) ((x)->regs[2]) #define PT_REGS_SP(x) ((x)->regs[29]) #define PT_REGS_IP(x) ((x)->cp0_epc) @@ -226,7 +226,7 @@ #define PT_REGS_PARM5_CORE(x) BPF_CORE_READ((x), regs[8]) #define PT_REGS_RET_CORE(x) BPF_CORE_READ((x), regs[31]) #define PT_REGS_FP_CORE(x) BPF_CORE_READ((x), regs[30]) -#define PT_REGS_RC_CORE(x) BPF_CORE_READ((x), regs[1]) +#define PT_REGS_RC_CORE(x) BPF_CORE_READ((x), regs[2]) #define PT_REGS_SP_CORE(x) BPF_CORE_READ((x), regs[29]) #define PT_REGS_IP_CORE(x) BPF_CORE_READ((x), cp0_epc) --- linux-azure-5.8-5.8.0.orig/tools/lib/bpf/hashmap.h +++ linux-azure-5.8-5.8.0/tools/lib/bpf/hashmap.h @@ -15,6 +15,9 @@ static inline size_t hash_bits(size_t h, int bits) { /* shuffle bits and return requested number of upper bits */ + if (bits == 0) + return 0; + #if (__SIZEOF_SIZE_T__ == __SIZEOF_LONG_LONG__) /* LP64 case */ return (h * 11400714819323198485llu) >> (__SIZEOF_LONG_LONG__ * 8 - bits); @@ -162,17 +165,17 @@ * @key: key to iterate entries for */ #define hashmap__for_each_key_entry(map, cur, _key) \ - for (cur = ({ size_t bkt = hash_bits(map->hash_fn((_key), map->ctx),\ - map->cap_bits); \ - map->buckets ? map->buckets[bkt] : NULL; }); \ + for (cur = map->buckets \ + ? map->buckets[hash_bits(map->hash_fn((_key), map->ctx), map->cap_bits)] \ + : NULL; \ cur; \ cur = cur->next) \ if (map->equal_fn(cur->key, (_key), map->ctx)) #define hashmap__for_each_key_entry_safe(map, cur, tmp, _key) \ - for (cur = ({ size_t bkt = hash_bits(map->hash_fn((_key), map->ctx),\ - map->cap_bits); \ - cur = map->buckets ? map->buckets[bkt] : NULL; }); \ + for (cur = map->buckets \ + ? map->buckets[hash_bits(map->hash_fn((_key), map->ctx), map->cap_bits)] \ + : NULL; \ cur && ({ tmp = cur->next; true; }); \ cur = tmp) \ if (map->equal_fn(cur->key, (_key), map->ctx)) --- linux-azure-5.8-5.8.0.orig/tools/lib/bpf/libbpf.c +++ linux-azure-5.8-5.8.0/tools/lib/bpf/libbpf.c @@ -811,24 +811,24 @@ if (btf_is_ptr(mtype)) { struct bpf_program *prog; - mtype = skip_mods_and_typedefs(btf, mtype->type, &mtype_id); + prog = st_ops->progs[i]; + if (!prog) + continue; + kern_mtype = skip_mods_and_typedefs(kern_btf, kern_mtype->type, &kern_mtype_id); - if (!btf_is_func_proto(mtype) || - !btf_is_func_proto(kern_mtype)) { - pr_warn("struct_ops init_kern %s: non func ptr %s is not supported\n", + + /* mtype->type must be a func_proto which was + * guaranteed in bpf_object__collect_st_ops_relos(), + * so only check kern_mtype for func_proto here. + */ + if (!btf_is_func_proto(kern_mtype)) { + pr_warn("struct_ops init_kern %s: kernel member %s is not a func ptr\n", map->name, mname); return -ENOTSUP; } - prog = st_ops->progs[i]; - if (!prog) { - pr_debug("struct_ops init_kern %s: func ptr %s is not set\n", - map->name, mname); - continue; - } - prog->attach_btf_id = kern_type_id; prog->expected_attach_type = kern_member_idx; @@ -2237,7 +2237,7 @@ data = elf_getdata(scn, NULL); if (!scn || !data) { pr_warn("failed to get Elf_Data from map section %d (%s)\n", - obj->efile.maps_shndx, MAPS_ELF_SEC); + obj->efile.btf_maps_shndx, MAPS_ELF_SEC); return -EINVAL; } @@ -3319,10 +3319,11 @@ map = bpf_create_map_xattr(&map_attr); if (map < 0) { - cp = libbpf_strerror_r(errno, errmsg, sizeof(errmsg)); + ret = -errno; + cp = libbpf_strerror_r(ret, errmsg, sizeof(errmsg)); pr_warn("Error in %s():%s(%d). Couldn't create simple array map.\n", - __func__, cp, errno); - return -errno; + __func__, cp, -ret); + return ret; } insns[0].imm = map; @@ -3676,6 +3677,36 @@ return 0; } +static int init_map_slots(struct bpf_map *map) +{ + const struct bpf_map *targ_map; + unsigned int i; + int fd, err; + + for (i = 0; i < map->init_slots_sz; i++) { + if (!map->init_slots[i]) + continue; + + targ_map = map->init_slots[i]; + fd = bpf_map__fd(targ_map); + err = bpf_map_update_elem(map->fd, &i, &fd, 0); + if (err) { + err = -errno; + pr_warn("map '%s': failed to initialize slot [%d] to map '%s' fd=%d: %d\n", + map->name, i, targ_map->name, + fd, err); + return err; + } + pr_debug("map '%s': slot [%d] set to map '%s' fd=%d\n", + map->name, i, targ_map->name, fd); + } + + zfree(&map->init_slots); + map->init_slots_sz = 0; + + return 0; +} + static int bpf_object__create_maps(struct bpf_object *obj) { @@ -3718,28 +3749,11 @@ } if (map->init_slots_sz) { - for (j = 0; j < map->init_slots_sz; j++) { - const struct bpf_map *targ_map; - int fd; - - if (!map->init_slots[j]) - continue; - - targ_map = map->init_slots[j]; - fd = bpf_map__fd(targ_map); - err = bpf_map_update_elem(map->fd, &j, &fd, 0); - if (err) { - err = -errno; - pr_warn("map '%s': failed to initialize slot [%d] to map '%s' fd=%d: %d\n", - map->name, j, targ_map->name, - fd, err); - goto err_out; - } - pr_debug("map '%s': slot [%d] set to map '%s' fd=%d\n", - map->name, j, targ_map->name, fd); + err = init_map_slots(map); + if (err < 0) { + zclose(map->fd); + goto err_out; } - zfree(&map->init_slots); - map->init_slots_sz = 0; } if (map->pin_path && !map->pinned) { @@ -5025,11 +5039,12 @@ static int bpf_object__collect_map_relos(struct bpf_object *obj, GElf_Shdr *shdr, Elf_Data *data) { - int i, j, nrels, new_sz, ptr_sz = sizeof(void *); + const int bpf_ptr_sz = 8, host_ptr_sz = sizeof(void *); + int i, j, nrels, new_sz; const struct btf_var_secinfo *vi = NULL; const struct btf_type *sec, *var, *def; + struct bpf_map *map = NULL, *targ_map; const struct btf_member *member; - struct bpf_map *map, *targ_map; const char *name, *mname; Elf_Data *symbols; unsigned int moff; @@ -5074,7 +5089,7 @@ vi = btf_var_secinfos(sec) + map->btf_var_idx; if (vi->offset <= rel.r_offset && - rel.r_offset + sizeof(void *) <= vi->offset + vi->size) + rel.r_offset + bpf_ptr_sz <= vi->offset + vi->size) break; } if (j == obj->nr_maps) { @@ -5110,17 +5125,20 @@ return -EINVAL; moff = rel.r_offset - vi->offset - moff; - if (moff % ptr_sz) + /* here we use BPF pointer size, which is always 64 bit, as we + * are parsing ELF that was built for BPF target + */ + if (moff % bpf_ptr_sz) return -EINVAL; - moff /= ptr_sz; + moff /= bpf_ptr_sz; if (moff >= map->init_slots_sz) { new_sz = moff + 1; - tmp = realloc(map->init_slots, new_sz * ptr_sz); + tmp = realloc(map->init_slots, new_sz * host_ptr_sz); if (!tmp) return -ENOMEM; map->init_slots = tmp; memset(map->init_slots + map->init_slots_sz, 0, - (new_sz - map->init_slots_sz) * ptr_sz); + (new_sz - map->init_slots_sz) * host_ptr_sz); map->init_slots_sz = new_sz; } map->init_slots[moff] = targ_map; @@ -5248,7 +5266,7 @@ free(log_buf); goto retry_load; } - ret = -errno; + ret = errno ? -errno : -LIBBPF_ERRNO__LOAD; cp = libbpf_strerror_r(errno, errmsg, sizeof(errmsg)); pr_warn("load bpf program failed: %s\n", cp); pr_perm_msg(ret); @@ -5775,9 +5793,10 @@ } if (bpf_obj_pin(prog->instances.fds[instance], path)) { - cp = libbpf_strerror_r(errno, errmsg, sizeof(errmsg)); + err = -errno; + cp = libbpf_strerror_r(err, errmsg, sizeof(errmsg)); pr_warn("failed to pin program: %s\n", cp); - return -errno; + return err; } pr_debug("pinned program '%s'\n", path); @@ -6047,6 +6066,16 @@ return map->pinned; } +static void sanitize_pin_path(char *s) +{ + /* bpffs disallows periods in path names */ + while (*s) { + if (*s == '.') + *s = '_'; + s++; + } +} + int bpf_object__pin_maps(struct bpf_object *obj, const char *path) { struct bpf_map *map; @@ -6076,6 +6105,7 @@ err = -ENAMETOOLONG; goto err_unpin_maps; } + sanitize_pin_path(buf); pin_path = buf; } else if (!map->pin_path) { continue; @@ -6120,6 +6150,7 @@ return -EINVAL; else if (len >= PATH_MAX) return -ENAMETOOLONG; + sanitize_pin_path(buf); pin_path = buf; } else if (!map->pin_path) { continue; --- linux-azure-5.8-5.8.0.orig/tools/lib/perf/evlist.c +++ linux-azure-5.8-5.8.0/tools/lib/perf/evlist.c @@ -45,6 +45,9 @@ if (!evsel->own_cpus || evlist->has_user_cpus) { perf_cpu_map__put(evsel->cpus); evsel->cpus = perf_cpu_map__get(evlist->cpus); + } else if (!evsel->system_wide && perf_cpu_map__empty(evlist->cpus)) { + perf_cpu_map__put(evsel->cpus); + evsel->cpus = perf_cpu_map__get(evlist->cpus); } else if (evsel->cpus != evsel->own_cpus) { perf_cpu_map__put(evsel->cpus); evsel->cpus = perf_cpu_map__get(evsel->own_cpus); @@ -364,21 +367,13 @@ return map; } -static void perf_evlist__set_sid_idx(struct perf_evlist *evlist, - struct perf_evsel *evsel, int idx, int cpu, - int thread) +static void perf_evsel__set_sid_idx(struct perf_evsel *evsel, int idx, int cpu, int thread) { struct perf_sample_id *sid = SID(evsel, cpu, thread); sid->idx = idx; - if (evlist->cpus && cpu >= 0) - sid->cpu = evlist->cpus->map[cpu]; - else - sid->cpu = -1; - if (!evsel->system_wide && evlist->threads && thread >= 0) - sid->tid = perf_thread_map__pid(evlist->threads, thread); - else - sid->tid = -1; + sid->cpu = perf_cpu_map__cpu(evsel->cpus, cpu); + sid->tid = perf_thread_map__pid(evsel->threads, thread); } static struct perf_mmap* @@ -497,8 +492,7 @@ if (perf_evlist__id_add_fd(evlist, evsel, cpu, thread, fd) < 0) return -1; - perf_evlist__set_sid_idx(evlist, evsel, idx, cpu, - thread); + perf_evsel__set_sid_idx(evsel, idx, cpu, thread); } } --- linux-azure-5.8-5.8.0.orig/tools/lib/perf/tests/test-cpumap.c +++ linux-azure-5.8-5.8.0/tools/lib/perf/tests/test-cpumap.c @@ -27,5 +27,5 @@ perf_cpu_map__put(cpus); __T_END; - return 0; + return tests_failed == 0 ? 0 : -1; } --- linux-azure-5.8-5.8.0.orig/tools/lib/perf/tests/test-evlist.c +++ linux-azure-5.8-5.8.0/tools/lib/perf/tests/test-evlist.c @@ -215,6 +215,7 @@ sysfs__mountpoint()); if (filename__read_int(path, &id)) { + tests_failed++; fprintf(stderr, "error: failed to get tracepoint id: %s\n", path); return -1; } @@ -409,5 +410,5 @@ test_mmap_cpus(); __T_END; - return 0; + return tests_failed == 0 ? 0 : -1; } --- linux-azure-5.8-5.8.0.orig/tools/lib/perf/tests/test-evsel.c +++ linux-azure-5.8-5.8.0/tools/lib/perf/tests/test-evsel.c @@ -131,5 +131,5 @@ test_stat_thread_enable(); __T_END; - return 0; + return tests_failed == 0 ? 0 : -1; } --- linux-azure-5.8-5.8.0.orig/tools/lib/perf/tests/test-threadmap.c +++ linux-azure-5.8-5.8.0/tools/lib/perf/tests/test-threadmap.c @@ -27,5 +27,5 @@ perf_thread_map__put(threads); __T_END; - return 0; + return tests_failed == 0 ? 0 : -1; } --- linux-azure-5.8-5.8.0.orig/tools/objtool/Makefile +++ linux-azure-5.8-5.8.0/tools/objtool/Makefile @@ -3,15 +3,6 @@ include ../scripts/Makefile.arch # always use the host compiler -ifneq ($(LLVM),) -HOSTAR ?= llvm-ar -HOSTCC ?= clang -HOSTLD ?= ld.lld -else -HOSTAR ?= ar -HOSTCC ?= gcc -HOSTLD ?= ld -endif AR = $(HOSTAR) CC = $(HOSTCC) LD = $(HOSTLD) --- linux-azure-5.8-5.8.0.orig/tools/objtool/check.c +++ linux-azure-5.8-5.8.0/tools/objtool/check.c @@ -548,8 +548,9 @@ "__ubsan_handle_shift_out_of_bounds", /* misc */ "csum_partial_copy_generic", - "__memcpy_mcsafe", - "mcsafe_handle_tail", + "copy_mc_fragile", + "copy_mc_fragile_handle_tail", + "copy_mc_enhanced_fast_string", "ftrace_likely_update", /* CONFIG_TRACE_BRANCH_PROFILING */ NULL }; @@ -619,7 +620,7 @@ if (!is_static_jump(insn)) continue; - if (insn->ignore || insn->offset == FAKE_JUMP_OFFSET) + if (insn->offset == FAKE_JUMP_OFFSET) continue; rela = find_rela_by_dest_range(file->elf, insn->sec, @@ -690,8 +691,8 @@ * case where the parent function's only reference to a * subfunction is through a jump table. */ - if (!strstr(insn->func->name, ".cold.") && - strstr(insn->jump_dest->func->name, ".cold.")) { + if (!strstr(insn->func->name, ".cold") && + strstr(insn->jump_dest->func->name, ".cold")) { insn->func->cfunc = insn->jump_dest->func; insn->jump_dest->func->pfunc = insn->func; @@ -2501,15 +2502,19 @@ break; case INSN_STD: - if (state.df) + if (state.df) { WARN_FUNC("recursive STD", sec, insn->offset); + return 1; + } state.df = true; break; case INSN_CLD: - if (!state.df && func) + if (!state.df && func) { WARN_FUNC("redundant CLD", sec, insn->offset); + return 1; + } state.df = false; break; @@ -2855,14 +2860,10 @@ } out: - if (ret < 0) { - /* - * Fatal error. The binary is corrupt or otherwise broken in - * some way, or objtool itself is broken. Fail the kernel - * build. - */ - return ret; - } - + /* + * For now, don't fail the kernel build on fatal warnings. These + * errors are still fairly common due to the growing matrix of + * supported toolchains and their recent pace of change. + */ return 0; } --- linux-azure-5.8-5.8.0.orig/tools/objtool/elf.c +++ linux-azure-5.8-5.8.0/tools/objtool/elf.c @@ -354,8 +354,11 @@ symtab = find_section_by_name(elf, ".symtab"); if (!symtab) { - WARN("missing symbol table"); - return -1; + /* + * A missing symbol table is actually possible if it's an empty + * .o file. This can happen for thunk_64.o. + */ + return 0; } symtab_shndx = find_section_by_name(elf, ".symtab_shndx"); @@ -422,6 +425,13 @@ list_add(&sym->list, entry); elf_hash_add(elf->symbol_hash, &sym->hash, sym->idx); elf_hash_add(elf->symbol_name_hash, &sym->name_hash, str_hash(sym->name)); + + /* + * Don't store empty STT_NOTYPE symbols in the rbtree. They + * can exist within a function, confusing the sorting. + */ + if (!sym->len) + rb_erase(&sym->node, &sym->sec->symbol_tree); } if (stats) --- linux-azure-5.8-5.8.0.orig/tools/perf/Documentation/perf-record.txt +++ linux-azure-5.8-5.8.0/tools/perf/Documentation/perf-record.txt @@ -33,6 +33,10 @@ - a raw PMU event (eventsel+umask) in the form of rNNN where NNN is a hexadecimal event descriptor. + - a symbolic or raw PMU event followed by an optional colon + and a list of event modifiers, e.g., cpu-cycles:p. See the + linkperf:perf-list[1] man page for details on event modifiers. + - a symbolically formed PMU event like 'pmu/param1=0x3,param2/' where 'param1', 'param2', etc are defined as formats for the PMU in /sys/bus/event_source/devices//format/*. --- linux-azure-5.8-5.8.0.orig/tools/perf/Documentation/perf-stat.txt +++ linux-azure-5.8-5.8.0/tools/perf/Documentation/perf-stat.txt @@ -39,6 +39,10 @@ - a raw PMU event (eventsel+umask) in the form of rNNN where NNN is a hexadecimal event descriptor. + - a symbolic or raw PMU event followed by an optional colon + and a list of event modifiers, e.g., cpu-cycles:p. See the + linkperf:perf-list[1] man page for details on event modifiers. + - a symbolically formed event like 'pmu/param1=0x3,param2/' where param1 and param2 are defined as formats for the PMU in /sys/bus/event_source/devices//format/* @@ -376,6 +380,9 @@ hardware thread. This is essentially a replacement for the any bit and convenient for post processing. +--summary:: +Print summary for interval mode (-I). + EXAMPLES -------- --- linux-azure-5.8-5.8.0.orig/tools/perf/Makefile.config +++ linux-azure-5.8-5.8.0/tools/perf/Makefile.config @@ -716,12 +716,14 @@ endif endif -ifndef NO_GTK2 +ifdef GTK2 FLAGS_GTK2=$(CFLAGS) $(LDFLAGS) $(EXTLIBS) $(shell $(PKG_CONFIG) --libs --cflags gtk+-2.0 2>/dev/null) + $(call feature_check,gtk2) ifneq ($(feature-gtk2), 1) msg := $(warning GTK2 not found, disables GTK2 support. Please install gtk2-devel or libgtk2.0-dev); NO_GTK2 := 1 else + $(call feature_check,gtk2-infobar) ifeq ($(feature-gtk2-infobar), 1) GTK_CFLAGS := -DHAVE_GTK_INFO_BAR_SUPPORT endif @@ -794,6 +796,11 @@ endif endif +ifdef HAVE_NO_LIBBFD + feature-libbfd := 0 + $(info libbfd overidden OFF) +else + ifeq ($(feature-libbfd), 1) EXTLIBS += -lbfd -lopcodes else @@ -817,6 +824,8 @@ $(call feature_check,disassembler-four-args) endif +endif + ifdef NO_DEMANGLE CFLAGS += -DNO_DEMANGLE else --- linux-azure-5.8-5.8.0.orig/tools/perf/Makefile.perf +++ linux-azure-5.8-5.8.0/tools/perf/Makefile.perf @@ -48,7 +48,7 @@ # # Define NO_SLANG if you do not want TUI support. # -# Define NO_GTK2 if you do not want GTK+ GUI support. +# Define GTK2 if you want GTK+ GUI support. # # Define NO_DEMANGLE if you do not want C++ symbol demangling. # @@ -173,10 +173,6 @@ LD += $(EXTRA_LDFLAGS) -HOSTCC ?= gcc -HOSTLD ?= ld -HOSTAR ?= ar - PKG_CONFIG = $(CROSS_COMPILE)pkg-config LLVM_CONFIG ?= llvm-config @@ -384,7 +380,7 @@ CFLAGS += -I$(OUTPUT) endif -ifndef NO_GTK2 +ifdef GTK2 ALL_PROGRAMS += $(OUTPUT)libperf-gtk.so GTK_IN := $(OUTPUT)gtk-in.o endif @@ -876,7 +872,7 @@ ### Installation rules -ifndef NO_GTK2 +ifdef GTK2 install-gtk: $(OUTPUT)libperf-gtk.so $(call QUIET_INSTALL, 'GTK UI') \ $(INSTALL) -d -m 755 '$(DESTDIR_SQ)$(libdir_SQ)'; \ --- linux-azure-5.8-5.8.0.orig/tools/perf/bench/Build +++ linux-azure-5.8-5.8.0/tools/perf/bench/Build @@ -11,7 +11,6 @@ perf-y += synthesize.o perf-y += kallsyms-parse.o -perf-$(CONFIG_X86_64) += mem-memcpy-x86-64-lib.o perf-$(CONFIG_X86_64) += mem-memcpy-x86-64-asm.o perf-$(CONFIG_X86_64) += mem-memset-x86-64-asm.o --- linux-azure-5.8-5.8.0.orig/tools/perf/bench/mem-functions.c +++ linux-azure-5.8-5.8.0/tools/perf/bench/mem-functions.c @@ -223,12 +223,8 @@ return 0; } -static u64 do_memcpy_cycles(const struct function *r, size_t size, void *src, void *dst) +static void memcpy_prefault(memcpy_t fn, size_t size, void *src, void *dst) { - u64 cycle_start = 0ULL, cycle_end = 0ULL; - memcpy_t fn = r->fn.memcpy; - int i; - /* Make sure to always prefault zero pages even if MMAP_THRESH is crossed: */ memset(src, 0, size); @@ -237,6 +233,15 @@ * to not measure page fault overhead: */ fn(dst, src, size); +} + +static u64 do_memcpy_cycles(const struct function *r, size_t size, void *src, void *dst) +{ + u64 cycle_start = 0ULL, cycle_end = 0ULL; + memcpy_t fn = r->fn.memcpy; + int i; + + memcpy_prefault(fn, size, src, dst); cycle_start = get_cycles(); for (i = 0; i < nr_loops; ++i) @@ -252,11 +257,7 @@ memcpy_t fn = r->fn.memcpy; int i; - /* - * We prefault the freshly allocated memory range here, - * to not measure page fault overhead: - */ - fn(dst, src, size); + memcpy_prefault(fn, size, src, dst); BUG_ON(gettimeofday(&tv_start, NULL)); for (i = 0; i < nr_loops; ++i) --- linux-azure-5.8-5.8.0.orig/tools/perf/bench/synthesize.c +++ linux-azure-5.8-5.8.0/tools/perf/bench/synthesize.c @@ -162,8 +162,8 @@ init_stats(&event_stats); for (i = 0; i < multi_iterations; i++) { session = perf_session__new(NULL, false, NULL); - if (!session) - return -ENOMEM; + if (IS_ERR(session)) + return PTR_ERR(session); atomic_set(&event_count, 0); gettimeofday(&start, NULL); --- linux-azure-5.8-5.8.0.orig/tools/perf/builtin-lock.c +++ linux-azure-5.8-5.8.0/tools/perf/builtin-lock.c @@ -406,7 +406,7 @@ struct lock_seq_stat *seq; const char *name = evsel__strval(evsel, sample, "name"); u64 tmp = evsel__intval(evsel, sample, "lockdep_addr"); - int flag = evsel__intval(evsel, sample, "flag"); + int flag = evsel__intval(evsel, sample, "flags"); memcpy(&addr, &tmp, sizeof(void *)); @@ -621,7 +621,7 @@ case SEQ_STATE_READ_ACQUIRED: seq->read_count--; BUG_ON(seq->read_count < 0); - if (!seq->read_count) { + if (seq->read_count) { ls->nr_release++; goto end; } --- linux-azure-5.8-5.8.0.orig/tools/perf/builtin-record.c +++ linux-azure-5.8-5.8.0/tools/perf/builtin-record.c @@ -1489,7 +1489,7 @@ evlist__set_cb(rec->sb_evlist, record__process_signal_event, rec); rec->thread_id = pthread_self(); } - +#ifdef HAVE_LIBBPF_SUPPORT if (!opts->no_bpf_event) { if (rec->sb_evlist == NULL) { rec->sb_evlist = evlist__new(); @@ -1505,7 +1505,7 @@ return -1; } } - +#endif if (perf_evlist__start_sb_thread(rec->sb_evlist, &rec->opts.target)) { pr_debug("Couldn't start the BPF side band thread:\nBPF programs starting from now on won't be annotatable\n"); opts->no_bpf_event = true; @@ -2417,7 +2417,7 @@ OPT_BOOLEAN(0, "tail-synthesize", &record.opts.tail_synthesize, "synthesize non-sample events at the end of output"), OPT_BOOLEAN(0, "overwrite", &record.opts.overwrite, "use overwrite mode"), - OPT_BOOLEAN(0, "no-bpf-event", &record.opts.no_bpf_event, "record bpf events"), + OPT_BOOLEAN(0, "no-bpf-event", &record.opts.no_bpf_event, "do not record bpf events"), OPT_BOOLEAN(0, "strict-freq", &record.opts.strict_freq, "Fail if the specified frequency can't be used"), OPT_CALLBACK('F', "freq", &record.opts, "freq or 'max'", --- linux-azure-5.8-5.8.0.orig/tools/perf/builtin-sched.c +++ linux-azure-5.8-5.8.0/tools/perf/builtin-sched.c @@ -2575,7 +2575,8 @@ } if (!sched->idle_hist || thread->tid == 0) { - timehist_update_runtime_stats(tr, t, tprev); + if (!cpu_list || test_bit(sample->cpu, cpu_bitmap)) + timehist_update_runtime_stats(tr, t, tprev); if (sched->idle_hist) { struct idle_thread_runtime *itr = (void *)tr; @@ -2848,6 +2849,9 @@ printf("\nIdle stats:\n"); for (i = 0; i < idle_max_cpu; ++i) { + if (cpu_list && !test_bit(i, cpu_bitmap)) + continue; + t = idle_threads[i]; if (!t) continue; --- linux-azure-5.8-5.8.0.orig/tools/perf/builtin-stat.c +++ linux-azure-5.8-5.8.0/tools/perf/builtin-stat.c @@ -402,7 +402,7 @@ { struct evsel *counter; - if (!stat_config.summary && (read_affinity_counters(rs) < 0)) + if (!stat_config.stop_read_counter && (read_affinity_counters(rs) < 0)) return; evlist__for_each_entry(evsel_list, counter) { @@ -826,9 +826,9 @@ if (stat_config.walltime_run_table) stat_config.walltime_run[run_idx] = t1 - t0; - if (interval) { + if (interval && stat_config.summary) { stat_config.interval = 0; - stat_config.summary = true; + stat_config.stop_read_counter = true; init_stats(&walltime_nsecs_stats); update_stats(&walltime_nsecs_stats, t1 - t0); @@ -1066,6 +1066,8 @@ "Use with 'percore' event qualifier to show the event " "counts of one hardware thread by sum up total hardware " "threads of same physical core"), + OPT_BOOLEAN(0, "summary", &stat_config.summary, + "print summary for interval mode"), #ifdef HAVE_LIBPFM OPT_CALLBACK(0, "pfm-events", &evsel_list, "event", "libpfm4 event selector. use 'perf list' to list available events", @@ -1961,8 +1963,10 @@ struct evsel *counter; evlist__for_each_entry(evsel_list, counter) { - if (!counter->core.system_wide) + if (!counter->core.system_wide && + strcmp(counter->name, "duration_time")) { return; + } } if (evsel_list->core.nr_entries) --- linux-azure-5.8-5.8.0.orig/tools/perf/builtin-top.c +++ linux-azure-5.8-5.8.0/tools/perf/builtin-top.c @@ -1746,6 +1746,7 @@ goto out_delete_evlist; } +#ifdef HAVE_LIBBPF_SUPPORT if (!top.record_opts.no_bpf_event) { top.sb_evlist = evlist__new(); @@ -1759,6 +1760,7 @@ goto out_delete_evlist; } } +#endif if (perf_evlist__start_sb_thread(top.sb_evlist, target)) { pr_debug("Couldn't start the BPF side band thread:\nBPF programs starting from now on won't be annotatable\n"); --- linux-azure-5.8-5.8.0.orig/tools/perf/builtin-trace.c +++ linux-azure-5.8-5.8.0/tools/perf/builtin-trace.c @@ -1762,7 +1762,11 @@ if (table == NULL) return -ENOMEM; - memset(table + trace->sctbl->syscalls.max_id, 0, (id - trace->sctbl->syscalls.max_id) * sizeof(*sc)); + // Need to memset from offset 0 and +1 members if brand new + if (trace->syscalls.table == NULL) + memset(table, 0, (id + 1) * sizeof(*sc)); + else + memset(table + trace->sctbl->syscalls.max_id + 1, 0, (id - trace->sctbl->syscalls.max_id) * sizeof(*sc)); trace->syscalls.table = table; trace->sctbl->syscalls.max_id = id; @@ -4636,9 +4640,9 @@ err = 0; if (lists[0]) { - struct option o = OPT_CALLBACK('e', "event", &trace->evlist, "event", - "event selector. use 'perf list' to list available events", - parse_events_option); + struct option o = { + .value = &trace->evlist, + }; err = parse_events_option(&o, lists[0], 0); } out: @@ -4652,9 +4656,12 @@ { struct trace *trace = opt->value; - if (!list_empty(&trace->evlist->core.entries)) - return parse_cgroups(opt, str, unset); - + if (!list_empty(&trace->evlist->core.entries)) { + struct option o = { + .value = &trace->evlist, + }; + return parse_cgroups(&o, str, unset); + } trace->cgroup = evlist__findnew_cgroup(trace->evlist, str); return 0; --- linux-azure-5.8-5.8.0.orig/tools/perf/builtin-version.c +++ linux-azure-5.8-5.8.0/tools/perf/builtin-version.c @@ -60,7 +60,6 @@ STATUS(HAVE_DWARF_SUPPORT, dwarf); STATUS(HAVE_DWARF_GETLOCATIONS_SUPPORT, dwarf_getlocations); STATUS(HAVE_GLIBC_SUPPORT, glibc); - STATUS(HAVE_GTK2_SUPPORT, gtk2); #ifndef HAVE_SYSCALL_TABLE_SUPPORT STATUS(HAVE_LIBAUDIT_SUPPORT, libaudit); #endif --- linux-azure-5.8-5.8.0.orig/tools/perf/pmu-events/arch/arm64/ampere/emag/cache.json +++ linux-azure-5.8-5.8.0/tools/perf/pmu-events/arch/arm64/ampere/emag/cache.json @@ -114,7 +114,7 @@ "PublicDescription": "Level 2 access to instruciton TLB that caused a page table walk. This event counts on any instruciton access which causes L2I_TLB_REFILL to count", "EventCode": "0x35", "EventName": "L2I_TLB_ACCESS", - "BriefDescription": "L2D TLB access" + "BriefDescription": "L2I TLB access" }, { "PublicDescription": "Branch target buffer misprediction", --- linux-azure-5.8-5.8.0.orig/tools/perf/pmu-events/arch/x86/amdzen1/cache.json +++ linux-azure-5.8-5.8.0/tools/perf/pmu-events/arch/x86/amdzen1/cache.json @@ -250,6 +250,24 @@ "UMask": "0x1" }, { + "EventName": "l2_pf_hit_l2", + "EventCode": "0x70", + "BriefDescription": "L2 prefetch hit in L2.", + "UMask": "0xff" + }, + { + "EventName": "l2_pf_miss_l2_hit_l3", + "EventCode": "0x71", + "BriefDescription": "L2 prefetcher hits in L3. Counts all L2 prefetches accepted by the L2 pipeline which miss the L2 cache and hit the L3.", + "UMask": "0xff" + }, + { + "EventName": "l2_pf_miss_l2_l3", + "EventCode": "0x72", + "BriefDescription": "L2 prefetcher misses in L3. All L2 prefetches accepted by the L2 pipeline which miss the L2 and the L3 caches.", + "UMask": "0xff" + }, + { "EventName": "l3_request_g1.caching_l3_cache_accesses", "EventCode": "0x01", "BriefDescription": "Caching: L3 cache accesses", --- linux-azure-5.8-5.8.0.orig/tools/perf/pmu-events/jevents.c +++ linux-azure-5.8-5.8.0/tools/perf/pmu-events/jevents.c @@ -137,7 +137,7 @@ return s; /* allocate space for a new string */ - fixed = (char *) malloc(len + 1); + fixed = (char *) malloc(len + esc_count + 1); if (!fixed) return NULL; --- linux-azure-5.8-5.8.0.orig/tools/perf/tests/bp_signal.c +++ linux-azure-5.8-5.8.0/tools/perf/tests/bp_signal.c @@ -45,10 +45,13 @@ #if defined (__x86_64__) extern void __test_function(volatile long *ptr); asm ( + ".pushsection .text;" ".globl __test_function\n" + ".type __test_function, @function;" "__test_function:\n" "incq (%rdi)\n" - "ret\n"); + "ret\n" + ".popsection\n"); #else static void __test_function(volatile long *ptr) { --- linux-azure-5.8-5.8.0.orig/tools/perf/tests/parse-events.c +++ linux-azure-5.8-5.8.0/tools/perf/tests/parse-events.c @@ -631,6 +631,34 @@ TEST_ASSERT_VAL("wrong val", term->val.num == 1); TEST_ASSERT_VAL("wrong config", !strcmp(term->config, "umask")); + /* + * read + * + * The perf_pmu__test_parse_init injects 'read' term into + * perf_pmu_events_list, so 'read' is evaluated as read term + * and not as raw event with 'ead' hex value. + */ + term = list_entry(term->list.next, struct parse_events_term, list); + TEST_ASSERT_VAL("wrong type term", + term->type_term == PARSE_EVENTS__TERM_TYPE_USER); + TEST_ASSERT_VAL("wrong type val", + term->type_val == PARSE_EVENTS__TERM_TYPE_NUM); + TEST_ASSERT_VAL("wrong val", term->val.num == 1); + TEST_ASSERT_VAL("wrong config", !strcmp(term->config, "read")); + + /* + * r0xead + * + * To be still able to pass 'ead' value with 'r' syntax, + * we added support to parse 'r0xHEX' event. + */ + term = list_entry(term->list.next, struct parse_events_term, list); + TEST_ASSERT_VAL("wrong type term", + term->type_term == PARSE_EVENTS__TERM_TYPE_CONFIG); + TEST_ASSERT_VAL("wrong type val", + term->type_val == PARSE_EVENTS__TERM_TYPE_NUM); + TEST_ASSERT_VAL("wrong val", term->val.num == 0xead); + TEST_ASSERT_VAL("wrong config", !term->config); return 0; } @@ -1776,7 +1804,7 @@ static struct terms_test test__terms[] = { [0] = { - .str = "config=10,config1,config2=3,umask=1", + .str = "config=10,config1,config2=3,umask=1,read,r0xead", .check = test__checkterms_simple, }, }; @@ -1836,6 +1864,13 @@ INIT_LIST_HEAD(&terms); + /* + * The perf_pmu__test_parse_init prepares perf_pmu_events_list + * which gets freed in parse_events_terms. + */ + if (perf_pmu__test_parse_init()) + return -1; + ret = parse_events_terms(&terms, t->str); if (ret) { pr_debug("failed to parse terms '%s', err %d\n", --- linux-azure-5.8-5.8.0.orig/tools/perf/tests/pmu-events.c +++ linux-azure-5.8-5.8.0/tools/perf/tests/pmu-events.c @@ -274,6 +274,7 @@ int res = 0; bool use_uncore_table; struct pmu_events_map *map = __test_pmu_get_events_map(); + struct perf_pmu_alias *a, *tmp; if (!map) return -1; @@ -347,6 +348,10 @@ pmu_name, alias->name); } + list_for_each_entry_safe(a, tmp, &aliases, list) { + list_del(&a->list); + perf_pmu_free_alias(a); + } free(pmu); return res; } --- linux-azure-5.8-5.8.0.orig/tools/perf/tests/pmu.c +++ linux-azure-5.8-5.8.0/tools/perf/tests/pmu.c @@ -173,6 +173,7 @@ ret = 0; } while (0); + perf_pmu__del_formats(&formats); test_format_dir_put(format); return ret; } --- linux-azure-5.8-5.8.0.orig/tools/perf/tests/sample-parsing.c +++ linux-azure-5.8-5.8.0/tools/perf/tests/sample-parsing.c @@ -193,7 +193,7 @@ .data = {1, -1ULL, 211, 212, 213}, }; u64 regs[64]; - const u64 raw_data[] = {0x123456780a0b0c0dULL, 0x1102030405060708ULL}; + const u32 raw_data[] = {0x12345678, 0x0a0b0c0d, 0x11020304, 0x05060708, 0 }; const u64 data[] = {0x2211443366558877ULL, 0, 0xaabbccddeeff4321ULL}; const u64 aux_data[] = {0xa55a, 0, 0xeeddee, 0x0282028202820282}; struct perf_sample sample = { --- linux-azure-5.8-5.8.0.orig/tools/perf/ui/browsers/hists.c +++ linux-azure-5.8-5.8.0/tools/perf/ui/browsers/hists.c @@ -2963,7 +2963,7 @@ struct popup_action actions[MAX_OPTIONS]; int nr_options = 0; int key = -1; - char buf[64]; + char buf[128]; int delay_secs = hbt ? hbt->refresh : 0; #define HIST_BROWSER_HELP_COMMON \ @@ -3629,8 +3629,8 @@ { int nr_entries = evlist->core.nr_entries; -single_entry: if (perf_evlist__single_entry(evlist)) { +single_entry: { struct evsel *first = evlist__first(evlist); return perf_evsel__hists_browse(first, nr_entries, help, @@ -3638,6 +3638,7 @@ env, warn_lost_event, annotation_opts); } + } if (symbol_conf.event_group) { struct evsel *pos; --- linux-azure-5.8-5.8.0.orig/tools/perf/util/cs-etm.c +++ linux-azure-5.8-5.8.0/tools/perf/util/cs-etm.c @@ -1344,8 +1344,15 @@ attr.sample_type &= ~(u64)PERF_SAMPLE_ADDR; } - if (etm->synth_opts.last_branch) + if (etm->synth_opts.last_branch) { attr.sample_type |= PERF_SAMPLE_BRANCH_STACK; + /* + * We don't use the hardware index, but the sample generation + * code uses the new format branch_stack with this field, + * so the event attributes must indicate that it's present. + */ + attr.branch_sample_type |= PERF_SAMPLE_BRANCH_HW_INDEX; + } if (etm->synth_opts.instructions) { attr.config = PERF_COUNT_HW_INSTRUCTIONS; --- linux-azure-5.8-5.8.0.orig/tools/perf/util/dwarf-aux.c +++ linux-azure-5.8-5.8.0/tools/perf/util/dwarf-aux.c @@ -373,6 +373,7 @@ int die_entrypc(Dwarf_Die *dw_die, Dwarf_Addr *addr) { Dwarf_Addr base, end; + Dwarf_Attribute attr; if (!addr) return -EINVAL; @@ -380,6 +381,13 @@ if (dwarf_entrypc(dw_die, addr) == 0) return 0; + /* + * Since the dwarf_ranges() will return 0 if there is no + * DW_AT_ranges attribute, we should check it first. + */ + if (!dwarf_attr(dw_die, DW_AT_ranges, &attr)) + return -ENOENT; + return dwarf_ranges(dw_die, 0, &base, addr, &end) < 0 ? -ENOENT : 0; } --- linux-azure-5.8-5.8.0.orig/tools/perf/util/event.c +++ linux-azure-5.8-5.8.0/tools/perf/util/event.c @@ -615,6 +615,8 @@ } al->sym = map__find_symbol(al->map, al->addr); + } else if (symbol_conf.dso_list) { + al->filtered |= (1 << HIST_FILTER__DSO); } if (symbol_conf.sym_list) { --- linux-azure-5.8-5.8.0.orig/tools/perf/util/evlist.c +++ linux-azure-5.8-5.8.0/tools/perf/util/evlist.c @@ -946,6 +946,10 @@ perf_evlist__set_maps(&evlist->core, cpus, threads); + /* as evlist now has references, put count here */ + perf_cpu_map__put(cpus); + perf_thread_map__put(threads); + return 0; out_delete_threads: @@ -1273,11 +1277,12 @@ goto out_put; perf_evlist__set_maps(&evlist->core, cpus, threads); -out: - return err; + + perf_thread_map__put(threads); out_put: perf_cpu_map__put(cpus); - goto out; +out: + return err; } int evlist__open(struct evlist *evlist) --- linux-azure-5.8-5.8.0.orig/tools/perf/util/evsel.c +++ linux-azure-5.8-5.8.0/tools/perf/util/evsel.c @@ -1014,12 +1014,14 @@ if (callchain && callchain->enabled && !evsel->no_aux_samples) evsel__config_callchain(evsel, opts, callchain); - if (opts->sample_intr_regs && !evsel->no_aux_samples) { + if (opts->sample_intr_regs && !evsel->no_aux_samples && + !evsel__is_dummy_event(evsel)) { attr->sample_regs_intr = opts->sample_intr_regs; evsel__set_sample_bit(evsel, REGS_INTR); } - if (opts->sample_user_regs && !evsel->no_aux_samples) { + if (opts->sample_user_regs && !evsel->no_aux_samples && + !evsel__is_dummy_event(evsel)) { attr->sample_regs_user |= opts->sample_user_regs; evsel__set_sample_bit(evsel, REGS_USER); } --- linux-azure-5.8-5.8.0.orig/tools/perf/util/intel-pt-decoder/intel-pt-decoder.c +++ linux-azure-5.8-5.8.0/tools/perf/util/intel-pt-decoder/intel-pt-decoder.c @@ -24,6 +24,13 @@ #include "intel-pt-decoder.h" #include "intel-pt-log.h" +#define BITULL(x) (1ULL << (x)) + +/* IA32_RTIT_CTL MSR bits */ +#define INTEL_PT_CYC_ENABLE BITULL(1) +#define INTEL_PT_CYC_THRESHOLD (BITULL(22) | BITULL(21) | BITULL(20) | BITULL(19)) +#define INTEL_PT_CYC_THRESHOLD_SHIFT 19 + #define INTEL_PT_BLK_SIZE 1024 #define BIT63 (((uint64_t)1 << 63)) @@ -162,6 +169,8 @@ uint64_t sample_tot_cyc_cnt; uint64_t base_cyc_cnt; uint64_t cyc_cnt_timestamp; + uint64_t ctl; + uint64_t cyc_threshold; double tsc_to_cyc; bool continuous_period; bool overflow; @@ -199,6 +208,14 @@ return x << i; } +static uint64_t intel_pt_cyc_threshold(uint64_t ctl) +{ + if (!(ctl & INTEL_PT_CYC_ENABLE)) + return 0; + + return (ctl & INTEL_PT_CYC_THRESHOLD) >> INTEL_PT_CYC_THRESHOLD_SHIFT; +} + static void intel_pt_setup_period(struct intel_pt_decoder *decoder) { if (decoder->period_type == INTEL_PT_PERIOD_TICKS) { @@ -238,12 +255,15 @@ decoder->flags = params->flags; + decoder->ctl = params->ctl; decoder->period = params->period; decoder->period_type = params->period_type; decoder->max_non_turbo_ratio = params->max_non_turbo_ratio; decoder->max_non_turbo_ratio_fp = params->max_non_turbo_ratio; + decoder->cyc_threshold = intel_pt_cyc_threshold(decoder->ctl); + intel_pt_setup_period(decoder); decoder->mtc_shift = params->mtc_period; @@ -1164,6 +1184,7 @@ return 0; if (err == -EAGAIN || intel_pt_fup_with_nlip(decoder, &intel_pt_insn, ip, err)) { + decoder->pkt_state = INTEL_PT_STATE_IN_SYNC; if (intel_pt_fup_event(decoder)) return 0; return -EAGAIN; @@ -1744,6 +1765,9 @@ break; case INTEL_PT_CYC: + intel_pt_calc_cyc_timestamp(decoder); + break; + case INTEL_PT_VMCS: case INTEL_PT_MNT: case INTEL_PT_PAD: @@ -1876,6 +1900,7 @@ static int intel_pt_walk_trace(struct intel_pt_decoder *decoder) { + int last_packet_type = INTEL_PT_PAD; bool no_tip = false; int err; @@ -1884,6 +1909,12 @@ if (err) return err; next: + if (decoder->cyc_threshold) { + if (decoder->sample_cyc && last_packet_type != INTEL_PT_CYC) + decoder->sample_cyc = false; + last_packet_type = decoder->packet.type; + } + switch (decoder->packet.type) { case INTEL_PT_TNT: if (!decoder->packet.count) @@ -1942,17 +1973,13 @@ } if (decoder->set_fup_mwait) no_tip = true; + if (no_tip) + decoder->pkt_state = INTEL_PT_STATE_FUP_NO_TIP; + else + decoder->pkt_state = INTEL_PT_STATE_FUP; err = intel_pt_walk_fup(decoder); - if (err != -EAGAIN) { - if (err) - return err; - if (no_tip) - decoder->pkt_state = - INTEL_PT_STATE_FUP_NO_TIP; - else - decoder->pkt_state = INTEL_PT_STATE_FUP; - return 0; - } + if (err != -EAGAIN) + return err; if (no_tip) { no_tip = false; break; @@ -1980,8 +2007,10 @@ * possibility of another CBR change that gets caught up * in the PSB+. */ - if (decoder->cbr != decoder->cbr_seen) + if (decoder->cbr != decoder->cbr_seen) { + decoder->state.type = 0; return 0; + } break; case INTEL_PT_PIP: @@ -2022,8 +2051,10 @@ case INTEL_PT_CBR: intel_pt_calc_cbr(decoder); - if (decoder->cbr != decoder->cbr_seen) + if (decoder->cbr != decoder->cbr_seen) { + decoder->state.type = 0; return 0; + } break; case INTEL_PT_MODE_EXEC: @@ -2599,15 +2630,11 @@ err = intel_pt_walk_tip(decoder); break; case INTEL_PT_STATE_FUP: - decoder->pkt_state = INTEL_PT_STATE_IN_SYNC; err = intel_pt_walk_fup(decoder); if (err == -EAGAIN) err = intel_pt_walk_fup_tip(decoder); - else if (!err) - decoder->pkt_state = INTEL_PT_STATE_FUP; break; case INTEL_PT_STATE_FUP_NO_TIP: - decoder->pkt_state = INTEL_PT_STATE_IN_SYNC; err = intel_pt_walk_fup(decoder); if (err == -EAGAIN) err = intel_pt_walk_trace(decoder); @@ -2637,9 +2664,18 @@ } if (intel_pt_sample_time(decoder->pkt_state)) { intel_pt_update_sample_time(decoder); - if (decoder->sample_cyc) + if (decoder->sample_cyc) { decoder->sample_tot_cyc_cnt = decoder->tot_cyc_cnt; + decoder->state.flags |= INTEL_PT_SAMPLE_IPC; + decoder->sample_cyc = false; + } } + /* + * When using only TSC/MTC to compute cycles, IPC can be + * sampled as soon as the cycle count changes. + */ + if (!decoder->have_cyc) + decoder->state.flags |= INTEL_PT_SAMPLE_IPC; } decoder->state.timestamp = decoder->sample_timestamp; --- linux-azure-5.8-5.8.0.orig/tools/perf/util/intel-pt-decoder/intel-pt-decoder.h +++ linux-azure-5.8-5.8.0/tools/perf/util/intel-pt-decoder/intel-pt-decoder.h @@ -17,6 +17,7 @@ #define INTEL_PT_ABORT_TX (1 << 1) #define INTEL_PT_ASYNC (1 << 2) #define INTEL_PT_FUP_IP (1 << 3) +#define INTEL_PT_SAMPLE_IPC (1 << 4) enum intel_pt_sample_type { INTEL_PT_BRANCH = 1 << 0, @@ -243,6 +244,7 @@ void *data; bool return_compression; bool branch_enable; + uint64_t ctl; uint64_t period; enum intel_pt_period_type period_type; unsigned max_non_turbo_ratio; --- linux-azure-5.8-5.8.0.orig/tools/perf/util/intel-pt.c +++ linux-azure-5.8-5.8.0/tools/perf/util/intel-pt.c @@ -864,6 +864,18 @@ return false; } +static u64 intel_pt_ctl(struct intel_pt *pt) +{ + struct evsel *evsel; + u64 config; + + evlist__for_each_entry(pt->session->evlist, evsel) { + if (intel_pt_get_config(pt, &evsel->core.attr, &config)) + return config; + } + return 0; +} + static u64 intel_pt_ns_to_ticks(const struct intel_pt *pt, u64 ns) { u64 quot, rem; @@ -997,6 +1009,7 @@ params.data = ptq; params.return_compression = intel_pt_return_compression(pt); params.branch_enable = intel_pt_branch_enable(pt); + params.ctl = intel_pt_ctl(pt); params.max_non_turbo_ratio = pt->max_non_turbo_ratio; params.mtc_period = intel_pt_mtc_period(pt); params.tsc_ctc_ratio_n = pt->tsc_ctc_ratio_n; @@ -1071,6 +1084,8 @@ if (queue->tid == -1 || pt->have_sched_switch) { ptq->tid = machine__get_current_tid(pt->machine, ptq->cpu); + if (ptq->tid == -1) + ptq->pid = -1; thread__zput(ptq->thread); } @@ -1349,7 +1364,8 @@ sample.branch_stack = (struct branch_stack *)&dummy_bs; } - sample.cyc_cnt = ptq->ipc_cyc_cnt - ptq->last_br_cyc_cnt; + if (ptq->state->flags & INTEL_PT_SAMPLE_IPC) + sample.cyc_cnt = ptq->ipc_cyc_cnt - ptq->last_br_cyc_cnt; if (sample.cyc_cnt) { sample.insn_cnt = ptq->ipc_insn_cnt - ptq->last_br_insn_cnt; ptq->last_br_insn_cnt = ptq->ipc_insn_cnt; @@ -1396,7 +1412,8 @@ sample.stream_id = ptq->pt->instructions_id; sample.period = ptq->state->tot_insn_cnt - ptq->last_insn_cnt; - sample.cyc_cnt = ptq->ipc_cyc_cnt - ptq->last_in_cyc_cnt; + if (ptq->state->flags & INTEL_PT_SAMPLE_IPC) + sample.cyc_cnt = ptq->ipc_cyc_cnt - ptq->last_in_cyc_cnt; if (sample.cyc_cnt) { sample.insn_cnt = ptq->ipc_insn_cnt - ptq->last_in_insn_cnt; ptq->last_in_insn_cnt = ptq->ipc_insn_cnt; @@ -1922,14 +1939,8 @@ ptq->have_sample = false; - if (ptq->state->tot_cyc_cnt > ptq->ipc_cyc_cnt) { - /* - * Cycle count and instruction count only go together to create - * a valid IPC ratio when the cycle count changes. - */ - ptq->ipc_insn_cnt = ptq->state->tot_insn_cnt; - ptq->ipc_cyc_cnt = ptq->state->tot_cyc_cnt; - } + ptq->ipc_insn_cnt = ptq->state->tot_insn_cnt; + ptq->ipc_cyc_cnt = ptq->state->tot_cyc_cnt; /* * Do PEBS first to allow for the possibility that the PEBS timestamp @@ -2561,10 +2572,8 @@ tid = sample->tid; } - if (tid == -1) { - pr_err("context_switch event has no tid\n"); - return -EINVAL; - } + if (tid == -1) + intel_pt_log("context_switch event has no tid\n"); intel_pt_log("context_switch: cpu %d pid %d tid %d time %"PRIu64" tsc %#"PRIx64"\n", cpu, pid, tid, sample->time, perf_time_to_tsc(sample->time, @@ -2913,8 +2922,15 @@ if (pt->synth_opts.callchain) attr.sample_type |= PERF_SAMPLE_CALLCHAIN; - if (pt->synth_opts.last_branch) + if (pt->synth_opts.last_branch) { attr.sample_type |= PERF_SAMPLE_BRANCH_STACK; + /* + * We don't use the hardware index, but the sample generation + * code uses the new format branch_stack with this field, + * so the event attributes must indicate that it's present. + */ + attr.branch_sample_type |= PERF_SAMPLE_BRANCH_HW_INDEX; + } if (pt->synth_opts.instructions) { attr.config = PERF_COUNT_HW_INSTRUCTIONS; --- linux-azure-5.8-5.8.0.orig/tools/perf/util/machine.c +++ linux-azure-5.8-5.8.0/tools/perf/util/machine.c @@ -2921,7 +2921,7 @@ pid_t machine__get_current_tid(struct machine *machine, int cpu) { - int nr_cpus = min(machine->env->nr_cpus_online, MAX_NR_CPUS); + int nr_cpus = min(machine->env->nr_cpus_avail, MAX_NR_CPUS); if (cpu < 0 || cpu >= nr_cpus || !machine->current_tid) return -1; @@ -2933,7 +2933,7 @@ pid_t tid) { struct thread *thread; - int nr_cpus = min(machine->env->nr_cpus_online, MAX_NR_CPUS); + int nr_cpus = min(machine->env->nr_cpus_avail, MAX_NR_CPUS); if (cpu < 0) return -EINVAL; --- linux-azure-5.8-5.8.0.orig/tools/perf/util/metricgroup.c +++ linux-azure-5.8-5.8.0/tools/perf/util/metricgroup.c @@ -443,6 +443,9 @@ continue; strlist__add(me->metrics, s); } + + if (!raw) + free(s); } free(omg); } @@ -726,7 +729,7 @@ ret = metricgroup__add_metric_list(str, metric_no_group, &extra_events, &group_list); if (ret) - return ret; + goto out; pr_debug("adding %s\n", extra_events.buf); bzero(&parse_error, sizeof(parse_error)); ret = parse_events(perf_evlist, extra_events.buf, &parse_error); @@ -734,11 +737,11 @@ parse_events_print_error(&parse_error, extra_events.buf); goto out; } - strbuf_release(&extra_events); ret = metricgroup__setup_events(&group_list, metric_no_merge, perf_evlist, metric_events); out: metricgroup__free_egroups(&group_list); + strbuf_release(&extra_events); return ret; } --- linux-azure-5.8-5.8.0.orig/tools/perf/util/parse-events.c +++ linux-azure-5.8-5.8.0/tools/perf/util/parse-events.c @@ -410,7 +410,7 @@ return -ENOMEM; evsel->tool_event = tool_event; if (tool_event == PERF_TOOL_DURATION_TIME) - evsel->unit = strdup("ns"); + evsel->unit = "ns"; return 0; } @@ -2017,6 +2017,32 @@ perf_pmu__parse_cleanup(); } +/* + * This function injects special term in + * perf_pmu_events_list so the test code + * can check on this functionality. + */ +int perf_pmu__test_parse_init(void) +{ + struct perf_pmu_event_symbol *list; + + list = malloc(sizeof(*list) * 1); + if (!list) + return -ENOMEM; + + list->type = PMU_EVENT_SYMBOL; + list->symbol = strdup("read"); + + if (!list->symbol) { + free(list); + return -ENOMEM; + } + + perf_pmu_events_list = list; + perf_pmu_events_list_num = 1; + return 0; +} + enum perf_pmu_event_symbol_type perf_pmu__parse_check(const char *name) { @@ -2078,6 +2104,8 @@ int ret; ret = parse_events__scanner(str, &parse_state); + perf_pmu__parse_cleanup(); + if (!ret) { list_splice(parse_state.terms, terms); zfree(&parse_state.terms); --- linux-azure-5.8-5.8.0.orig/tools/perf/util/parse-events.h +++ linux-azure-5.8-5.8.0/tools/perf/util/parse-events.h @@ -253,4 +253,6 @@ } #endif /* HAVE_LIBELF_SUPPORT */ +int perf_pmu__test_parse_init(void); + #endif /* __PERF_PARSE_EVENTS_H */ --- linux-azure-5.8-5.8.0.orig/tools/perf/util/parse-events.l +++ linux-azure-5.8-5.8.0/tools/perf/util/parse-events.l @@ -41,14 +41,6 @@ return __value(yylval, text, base, PE_VALUE); } -static int raw(yyscan_t scanner) -{ - YYSTYPE *yylval = parse_events_get_lval(scanner); - char *text = parse_events_get_text(scanner); - - return __value(yylval, text + 1, 16, PE_RAW); -} - static int str(yyscan_t scanner, int token) { YYSTYPE *yylval = parse_events_get_lval(scanner); @@ -72,6 +64,17 @@ return token; } +static int raw(yyscan_t scanner) +{ + YYSTYPE *yylval = parse_events_get_lval(scanner); + char *text = parse_events_get_text(scanner); + + if (perf_pmu__parse_check(text) == PMU_EVENT_SYMBOL) + return str(scanner, PE_NAME); + + return __value(yylval, text + 1, 16, PE_RAW); +} + static bool isbpf_suffix(char *text) { int len = strlen(text); --- linux-azure-5.8-5.8.0.orig/tools/perf/util/parse-regs-options.c +++ linux-azure-5.8-5.8.0/tools/perf/util/parse-regs-options.c @@ -54,7 +54,7 @@ #endif fputc('\n', stderr); /* just printing available regs */ - return -1; + goto error; } #ifdef HAVE_PERF_REGS_SUPPORT for (r = sample_reg_masks; r->name; r++) { --- linux-azure-5.8-5.8.0.orig/tools/perf/util/pmu.c +++ linux-azure-5.8-5.8.0/tools/perf/util/pmu.c @@ -272,7 +272,7 @@ } /* Delete an alias entry. */ -static void perf_pmu_free_alias(struct perf_pmu_alias *newalias) +void perf_pmu_free_alias(struct perf_pmu_alias *newalias) { zfree(&newalias->name); zfree(&newalias->desc); @@ -1352,6 +1352,17 @@ set_bit(b, bits); } +void perf_pmu__del_formats(struct list_head *formats) +{ + struct perf_pmu_format *fmt, *tmp; + + list_for_each_entry_safe(fmt, tmp, formats, list) { + list_del(&fmt->list); + free(fmt->name); + free(fmt); + } +} + static int sub_non_neg(int a, int b) { if (b > a) --- linux-azure-5.8-5.8.0.orig/tools/perf/util/pmu.h +++ linux-azure-5.8-5.8.0/tools/perf/util/pmu.h @@ -92,6 +92,7 @@ int config, unsigned long *bits); void perf_pmu__set_format(unsigned long *bits, long from, long to); int perf_pmu__format_parse(char *dir, struct list_head *head); +void perf_pmu__del_formats(struct list_head *formats); struct perf_pmu *perf_pmu__scan(struct perf_pmu *pmu); @@ -111,6 +112,7 @@ struct pmu_events_map *perf_pmu__find_map(struct perf_pmu *pmu); bool pmu_uncore_alias_match(const char *pmu_name, const char *name); +void perf_pmu_free_alias(struct perf_pmu_alias *alias); int perf_pmu__convert_scale(const char *scale, char **end, double *sval); --- linux-azure-5.8-5.8.0.orig/tools/perf/util/print_binary.c +++ linux-azure-5.8-5.8.0/tools/perf/util/print_binary.c @@ -50,7 +50,7 @@ len--; - for (i = 0; i < len; i++) { + for (i = 0; i < len && p[i]; i++) { if (!isprint(p[i]) && !isspace(p[i])) return 0; } --- linux-azure-5.8-5.8.0.orig/tools/perf/util/probe-file.c +++ linux-azure-5.8-5.8.0/tools/perf/util/probe-file.c @@ -791,7 +791,7 @@ const char *sdtgrp) { struct strbuf buf; - char *ret = NULL, **args; + char *ret = NULL; int i, args_count, err; unsigned long long ref_ctr_offset; @@ -813,12 +813,19 @@ goto out; if (note->args) { - args = argv_split(note->args, &args_count); + char **args = argv_split(note->args, &args_count); + + if (args == NULL) + goto error; for (i = 0; i < args_count; ++i) { - if (synthesize_sdt_probe_arg(&buf, i, args[i]) < 0) + if (synthesize_sdt_probe_arg(&buf, i, args[i]) < 0) { + argv_free(args); goto error; + } } + + argv_free(args); } out: --- linux-azure-5.8-5.8.0.orig/tools/perf/util/probe-finder.c +++ linux-azure-5.8-5.8.0/tools/perf/util/probe-finder.c @@ -1408,6 +1408,9 @@ char *type; int i, j, ret; + if (!ntevs) + return -ENOENT; + for (i = 0; i < pev->nargs; i++) { type = NULL; for (j = 0; j < ntevs; j++) { @@ -1464,7 +1467,7 @@ if (ret >= 0 && tf.pf.skip_empty_arg) ret = fill_empty_trace_arg(pev, tf.tevs, tf.ntevs); - if (ret < 0) { + if (ret < 0 || tf.ntevs == 0) { for (i = 0; i < tf.ntevs; i++) clear_probe_trace_event(&tf.tevs[i]); zfree(tevs); --- linux-azure-5.8-5.8.0.orig/tools/perf/util/record.c +++ linux-azure-5.8-5.8.0/tools/perf/util/record.c @@ -2,6 +2,7 @@ #include "debug.h" #include "evlist.h" #include "evsel.h" +#include "evsel_config.h" #include "parse-events.h" #include #include @@ -33,11 +34,24 @@ return leader; } +static u64 evsel__config_term_mask(struct evsel *evsel) +{ + struct evsel_config_term *term; + struct list_head *config_terms = &evsel->config_terms; + u64 term_types = 0; + + list_for_each_entry(term, config_terms, list) { + term_types |= 1 << term->type; + } + return term_types; +} + static void evsel__config_leader_sampling(struct evsel *evsel, struct evlist *evlist) { struct perf_event_attr *attr = &evsel->core.attr; struct evsel *leader = evsel->leader; struct evsel *read_sampler; + u64 term_types, freq_mask; if (!leader->sample_read) return; @@ -47,16 +61,20 @@ if (evsel == read_sampler) return; + term_types = evsel__config_term_mask(evsel); /* - * Disable sampling for all group members other than the leader in - * case the leader 'leads' the sampling, except when the leader is an - * AUX area event, in which case the 2nd event in the group is the one - * that 'leads' the sampling. + * Disable sampling for all group members except those with explicit + * config terms or the leader. In the case of an AUX area event, the 2nd + * event in the group is the one that 'leads' the sampling. */ - attr->freq = 0; - attr->sample_freq = 0; - attr->sample_period = 0; - attr->write_backward = 0; + freq_mask = (1 << EVSEL__CONFIG_TERM_FREQ) | (1 << EVSEL__CONFIG_TERM_PERIOD); + if ((term_types & freq_mask) == 0) { + attr->freq = 0; + attr->sample_freq = 0; + attr->sample_period = 0; + } + if ((term_types & (1 << EVSEL__CONFIG_TERM_OVERWRITE)) == 0) + attr->write_backward = 0; /* * We don't get a sample for slave events, we make them when delivering --- linux-azure-5.8-5.8.0.orig/tools/perf/util/scripting-engines/trace-event-python.c +++ linux-azure-5.8-5.8.0/tools/perf/util/scripting-engines/trace-event-python.c @@ -1592,7 +1592,6 @@ static int python_start_script(const char *script, int argc, const char **argv) { struct tables *tables = &tables_global; - PyMODINIT_FUNC (*initfunc)(void); #if PY_MAJOR_VERSION < 3 const char **command_line; #else @@ -1607,20 +1606,18 @@ FILE *fp; #if PY_MAJOR_VERSION < 3 - initfunc = initperf_trace_context; command_line = malloc((argc + 1) * sizeof(const char *)); command_line[0] = script; for (i = 1; i < argc + 1; i++) command_line[i] = argv[i - 1]; + PyImport_AppendInittab(name, initperf_trace_context); #else - initfunc = PyInit_perf_trace_context; command_line = malloc((argc + 1) * sizeof(wchar_t *)); command_line[0] = Py_DecodeLocale(script, NULL); for (i = 1; i < argc + 1; i++) command_line[i] = Py_DecodeLocale(argv[i - 1], NULL); + PyImport_AppendInittab(name, PyInit_perf_trace_context); #endif - - PyImport_AppendInittab(name, initfunc); Py_Initialize(); #if PY_MAJOR_VERSION < 3 --- linux-azure-5.8-5.8.0.orig/tools/perf/util/session.c +++ linux-azure-5.8-5.8.0/tools/perf/util/session.c @@ -593,6 +593,7 @@ event->mmap2.maj = bswap_32(event->mmap2.maj); event->mmap2.min = bswap_32(event->mmap2.min); event->mmap2.ino = bswap_64(event->mmap2.ino); + event->mmap2.ino_generation = bswap_64(event->mmap2.ino_generation); if (sample_id_all) { void *data = &event->mmap2.filename; @@ -690,6 +691,18 @@ swap_sample_id_all(event, &event->namespaces.link_info[i]); } +static void perf_event__cgroup_swap(union perf_event *event, bool sample_id_all) +{ + event->cgroup.id = bswap_64(event->cgroup.id); + + if (sample_id_all) { + void *data = &event->cgroup.path; + + data += PERF_ALIGN(strlen(data) + 1, sizeof(u64)); + swap_sample_id_all(event, data); + } +} + static u8 revbyte(u8 b) { int rev = (b >> 4) | ((b & 0xf) << 4); @@ -932,6 +945,7 @@ [PERF_RECORD_SWITCH] = perf_event__switch_swap, [PERF_RECORD_SWITCH_CPU_WIDE] = perf_event__switch_swap, [PERF_RECORD_NAMESPACES] = perf_event__namespaces_swap, + [PERF_RECORD_CGROUP] = perf_event__cgroup_swap, [PERF_RECORD_HEADER_ATTR] = perf_event__hdr_attr_swap, [PERF_RECORD_HEADER_EVENT_TYPE] = perf_event__event_type_swap, [PERF_RECORD_HEADER_TRACING_DATA] = perf_event__tracing_data_swap, @@ -2360,7 +2374,7 @@ { int i, err = -1; struct perf_cpu_map *map; - int nr_cpus = min(session->header.env.nr_cpus_online, MAX_NR_CPUS); + int nr_cpus = min(session->header.env.nr_cpus_avail, MAX_NR_CPUS); for (i = 0; i < PERF_TYPE_MAX; ++i) { struct evsel *evsel; --- linux-azure-5.8-5.8.0.orig/tools/perf/util/stat-display.c +++ linux-azure-5.8-5.8.0/tools/perf/util/stat-display.c @@ -118,10 +118,11 @@ config->csv_output ? 0 : -3, cpu_map__id_to_cpu(id), config->csv_sep); } else { - fprintf(config->output, "CPU%*d%s", - config->csv_output ? 0 : -7, - evsel__cpus(evsel)->map[id], - config->csv_sep); + if (id > -1) + fprintf(config->output, "CPU%*d%s", + config->csv_output ? 0 : -7, + evsel__cpus(evsel)->map[id], + config->csv_sep); } break; case AGGR_THREAD: @@ -324,13 +325,10 @@ struct evlist *evlist = evsel->evlist; int i; - if (!config->aggr_get_id) - return 0; - if (config->aggr_mode == AGGR_NONE) return id; - if (config->aggr_mode == AGGR_GLOBAL) + if (!config->aggr_get_id) return 0; for (i = 0; i < evsel__nr_cpus(evsel); i++) { --- linux-azure-5.8-5.8.0.orig/tools/perf/util/stat.h +++ linux-azure-5.8-5.8.0/tools/perf/util/stat.h @@ -113,6 +113,7 @@ bool summary; bool metric_no_group; bool metric_no_merge; + bool stop_read_counter; FILE *output; unsigned int interval; unsigned int timeout; --- linux-azure-5.8-5.8.0.orig/tools/perf/util/synthetic-events.c +++ linux-azure-5.8-5.8.0/tools/perf/util/synthetic-events.c @@ -563,6 +563,9 @@ char cgrp_root[PATH_MAX]; size_t mount_len; /* length of mount point in the path */ + if (!tool || !tool->cgroup_events) + return 0; + if (cgroupfs_find_mountpoint(cgrp_root, PATH_MAX, "perf_event") < 0) { pr_debug("cannot find cgroup mount point\n"); return -1; --- linux-azure-5.8-5.8.0.orig/tools/power/acpi/Makefile.config +++ linux-azure-5.8-5.8.0/tools/power/acpi/Makefile.config @@ -54,7 +54,6 @@ CROSS = #/usr/i386-linux-uclibc/usr/bin/i386-uclibc- CROSS_COMPILE ?= $(CROSS) LD = $(CC) -HOSTCC = gcc # check if compiler option is supported cc-supports = ${shell if $(CC) ${1} -S -o /dev/null -x c /dev/null > /dev/null 2>&1; then echo "$(1)"; fi;} --- linux-azure-5.8-5.8.0.orig/tools/power/acpi/Makefile.rules +++ linux-azure-5.8-5.8.0/tools/power/acpi/Makefile.rules @@ -9,7 +9,7 @@ toolobjs := $(addprefix $(objdir),$(TOOL_OBJS)) $(OUTPUT)$(TOOL): $(toolobjs) FORCE $(ECHO) " LD " $(subst $(OUTPUT),,$@) - $(QUIET) $(LD) $(CFLAGS) $(LDFLAGS) $(toolobjs) -L$(OUTPUT) -o $@ + $(QUIET_LINK)$(CC) $(CFLAGS) $(LDFLAGS) $(toolobjs) -L$(OUTPUT) -o $@ $(ECHO) " STRIP " $(subst $(OUTPUT),,$@) $(QUIET) $(STRIPCMD) $@ --- linux-azure-5.8-5.8.0.orig/tools/power/x86/intel-speed-select/isst-config.c +++ linux-azure-5.8-5.8.0/tools/power/x86/intel-speed-select/isst-config.c @@ -1224,6 +1224,8 @@ isst_ctdp_display_information_end(outf); } +static void adjust_scaling_max_from_base_freq(int cpu); + static void set_tdp_level_for_cpu(int cpu, void *arg1, void *arg2, void *arg3, void *arg4) { @@ -1242,6 +1244,9 @@ int pkg_id = get_physical_package_id(cpu); int die_id = get_physical_die_id(cpu); + /* Wait for updated base frequencies */ + usleep(2000); + fprintf(stderr, "Option is set to online/offline\n"); ctdp_level.core_cpumask_size = alloc_cpu_set(&ctdp_level.core_cpumask); @@ -1254,6 +1259,7 @@ if (CPU_ISSET_S(i, ctdp_level.core_cpumask_size, ctdp_level.core_cpumask)) { fprintf(stderr, "online cpu %d\n", i); set_cpu_online_offline(i, 1); + adjust_scaling_max_from_base_freq(i); } else { fprintf(stderr, "offline cpu %d\n", i); set_cpu_online_offline(i, 0); @@ -1411,6 +1417,31 @@ return 0; } +static int no_turbo(void) +{ + return parse_int_file(0, "/sys/devices/system/cpu/intel_pstate/no_turbo"); +} + +static void adjust_scaling_max_from_base_freq(int cpu) +{ + int base_freq, scaling_max_freq; + + scaling_max_freq = parse_int_file(0, "/sys/devices/system/cpu/cpu%d/cpufreq/scaling_max_freq", cpu); + base_freq = get_cpufreq_base_freq(cpu); + if (scaling_max_freq < base_freq || no_turbo()) + set_cpufreq_scaling_min_max(cpu, 1, base_freq); +} + +static void adjust_scaling_min_from_base_freq(int cpu) +{ + int base_freq, scaling_min_freq; + + scaling_min_freq = parse_int_file(0, "/sys/devices/system/cpu/cpu%d/cpufreq/scaling_min_freq", cpu); + base_freq = get_cpufreq_base_freq(cpu); + if (scaling_min_freq < base_freq) + set_cpufreq_scaling_min_max(cpu, 0, base_freq); +} + static int set_clx_pbf_cpufreq_scaling_min_max(int cpu) { struct isst_pkg_ctdp_level_info *ctdp_level; @@ -1508,6 +1539,7 @@ continue; set_cpufreq_scaling_min_max_from_cpuinfo(i, 1, 0); + adjust_scaling_min_from_base_freq(i); } } --- linux-azure-5.8-5.8.0.orig/tools/power/x86/turbostat/Makefile +++ linux-azure-5.8-5.8.0/tools/power/x86/turbostat/Makefile @@ -16,7 +16,7 @@ %: %.c @mkdir -p $(BUILD_OUTPUT) - $(CC) $(CFLAGS) $< -o $(BUILD_OUTPUT)/$@ $(LDFLAGS) -lcap + $(CC) $(CFLAGS) $< -o $(BUILD_OUTPUT)/$@ $(LDFLAGS) .PHONY : clean clean : --- linux-azure-5.8-5.8.0.orig/tools/power/x86/turbostat/turbostat.c +++ linux-azure-5.8-5.8.0/tools/power/x86/turbostat/turbostat.c @@ -30,7 +30,7 @@ #include #include #include -#include +#include #include #include @@ -3150,42 +3150,28 @@ err(-5, "no /dev/cpu/0/msr, Try \"# modprobe msr\" "); } -/* - * check for CAP_SYS_RAWIO - * return 0 on success - * return 1 on fail - */ -int check_for_cap_sys_rawio(void) +void check_permissions() { - cap_t caps; - cap_flag_value_t cap_flag_value; - - caps = cap_get_proc(); - if (caps == NULL) - err(-6, "cap_get_proc\n"); + struct __user_cap_header_struct cap_header_data; + cap_user_header_t cap_header = &cap_header_data; + struct __user_cap_data_struct cap_data_data; + cap_user_data_t cap_data = &cap_data_data; + extern int capget(cap_user_header_t hdrp, cap_user_data_t datap); + int do_exit = 0; + char pathname[32]; - if (cap_get_flag(caps, CAP_SYS_RAWIO, CAP_EFFECTIVE, &cap_flag_value)) - err(-6, "cap_get\n"); + /* check for CAP_SYS_RAWIO */ + cap_header->pid = getpid(); + cap_header->version = _LINUX_CAPABILITY_VERSION; + if (capget(cap_header, cap_data) < 0) + err(-6, "capget(2) failed"); - if (cap_flag_value != CAP_SET) { + if ((cap_data->effective & (1 << CAP_SYS_RAWIO)) == 0) { + do_exit++; warnx("capget(CAP_SYS_RAWIO) failed," " try \"# setcap cap_sys_rawio=ep %s\"", progname); - return 1; } - if (cap_free(caps) == -1) - err(-6, "cap_free\n"); - - return 0; -} -void check_permissions(void) -{ - int do_exit = 0; - char pathname[32]; - - /* check for CAP_SYS_RAWIO */ - do_exit += check_for_cap_sys_rawio(); - /* test file permissions */ sprintf(pathname, "/dev/cpu/%d/msr", base_cpu); if (euidaccess(pathname, R_OK)) { --- linux-azure-5.8-5.8.0.orig/tools/scripts/Makefile.include +++ linux-azure-5.8-5.8.0/tools/scripts/Makefile.include @@ -59,6 +59,16 @@ $(call allow-override,CXX,$(CROSS_COMPILE)g++) $(call allow-override,STRIP,$(CROSS_COMPILE)strip) +ifneq ($(LLVM),) +HOSTAR ?= llvm-ar +HOSTCC ?= clang +HOSTLD ?= ld.lld +else +HOSTAR ?= ar +HOSTCC ?= gcc +HOSTLD ?= ld +endif + ifeq ($(CC_NO_CLANG), 1) EXTRA_WARNINGS += -Wstrict-aliasing=3 endif --- linux-azure-5.8-5.8.0.orig/tools/testing/ktest/ktest.pl +++ linux-azure-5.8-5.8.0/tools/testing/ktest/ktest.pl @@ -2008,7 +2008,7 @@ if ($reboot_type eq "grub") { run_ssh "'(echo \"savedefault --default=$grub_number --once\" | grub --batch)'"; - } elsif ($reboot_type eq "grub2") { + } elsif (($reboot_type eq "grub2") or ($reboot_type eq "grub2bls")) { run_ssh "$grub_reboot $grub_number"; } elsif ($reboot_type eq "syslinux") { run_ssh "$syslinux --once \\\"$syslinux_label\\\" $syslinux_path"; @@ -4197,7 +4197,12 @@ $mail_command =~ s/\$SUBJECT/$subject/g; $mail_command =~ s/\$MESSAGE/$message/g; - run_command $mail_command; + my $ret = run_command $mail_command; + if (!$ret && defined($file)) { + # try again without the file + $message .= "\n\n*** FAILED TO SEND LOG ***\n\n"; + do_send_email($subject, $message); + } } sub send_email { --- linux-azure-5.8-5.8.0.orig/tools/testing/kunit/kunit.py +++ linux-azure-5.8-5.8.0/tools/testing/kunit/kunit.py @@ -240,12 +240,6 @@ if cli_args.subcommand == 'run': if not os.path.exists(cli_args.build_dir): os.mkdir(cli_args.build_dir) - kunit_kernel.kunitconfig_path = os.path.join( - cli_args.build_dir, - kunit_kernel.kunitconfig_path) - - if not os.path.exists(kunit_kernel.kunitconfig_path): - create_default_kunitconfig() if not linux: linux = kunit_kernel.LinuxSourceTree() @@ -263,12 +257,6 @@ if cli_args.build_dir: if not os.path.exists(cli_args.build_dir): os.mkdir(cli_args.build_dir) - kunit_kernel.kunitconfig_path = os.path.join( - cli_args.build_dir, - kunit_kernel.kunitconfig_path) - - if not os.path.exists(kunit_kernel.kunitconfig_path): - create_default_kunitconfig() if not linux: linux = kunit_kernel.LinuxSourceTree() @@ -285,12 +273,6 @@ if cli_args.build_dir: if not os.path.exists(cli_args.build_dir): os.mkdir(cli_args.build_dir) - kunit_kernel.kunitconfig_path = os.path.join( - cli_args.build_dir, - kunit_kernel.kunitconfig_path) - - if not os.path.exists(kunit_kernel.kunitconfig_path): - create_default_kunitconfig() if not linux: linux = kunit_kernel.LinuxSourceTree() @@ -309,12 +291,6 @@ if cli_args.build_dir: if not os.path.exists(cli_args.build_dir): os.mkdir(cli_args.build_dir) - kunit_kernel.kunitconfig_path = os.path.join( - cli_args.build_dir, - kunit_kernel.kunitconfig_path) - - if not os.path.exists(kunit_kernel.kunitconfig_path): - create_default_kunitconfig() if not linux: linux = kunit_kernel.LinuxSourceTree() --- linux-azure-5.8-5.8.0.orig/tools/testing/kunit/kunit_kernel.py +++ linux-azure-5.8-5.8.0/tools/testing/kunit/kunit_kernel.py @@ -34,7 +34,7 @@ def make_mrproper(self): try: - subprocess.check_output(['make', 'mrproper']) + subprocess.check_output(['make', 'mrproper'], stderr=subprocess.STDOUT) except OSError as e: raise ConfigError('Could not call make command: ' + e) except subprocess.CalledProcessError as e: @@ -47,7 +47,7 @@ if build_dir: command += ['O=' + build_dir] try: - subprocess.check_output(command, stderr=subprocess.PIPE) + subprocess.check_output(command, stderr=subprocess.STDOUT) except OSError as e: raise ConfigError('Could not call make command: ' + e) except subprocess.CalledProcessError as e: @@ -77,7 +77,7 @@ if build_dir: command += ['O=' + build_dir] try: - subprocess.check_output(command) + subprocess.check_output(command, stderr=subprocess.STDOUT) except OSError as e: raise BuildError('Could not call execute make: ' + e) except subprocess.CalledProcessError as e: --- linux-azure-5.8-5.8.0.orig/tools/testing/kunit/kunit_parser.py +++ linux-azure-5.8-5.8.0/tools/testing/kunit/kunit_parser.py @@ -65,7 +65,6 @@ def raw_output(kernel_output): for line in kernel_output: print(line) - yield line DIVIDER = '=' * 60 @@ -233,7 +232,7 @@ return None test_suite.name = name expected_test_case_num = parse_subtest_plan(lines) - if not expected_test_case_num: + if expected_test_case_num is None: return None while expected_test_case_num > 0: test_case = parse_test_case(lines) --- linux-azure-5.8-5.8.0.orig/tools/testing/kunit/kunit_tool_test.py +++ linux-azure-5.8-5.8.0/tools/testing/kunit/kunit_tool_test.py @@ -237,35 +237,33 @@ class KUnitMainTest(unittest.TestCase): def setUp(self): path = get_absolute_path('test_data/test_is_test_passed-all_passed.log') - file = open(path) - all_passed_log = file.readlines() - self.print_patch = mock.patch('builtins.print') - self.print_mock = self.print_patch.start() + with open(path) as file: + all_passed_log = file.readlines() + + self.print_mock = mock.patch('builtins.print').start() + self.addCleanup(mock.patch.stopall) + self.linux_source_mock = mock.Mock() self.linux_source_mock.build_reconfig = mock.Mock(return_value=True) self.linux_source_mock.build_um_kernel = mock.Mock(return_value=True) self.linux_source_mock.run_kernel = mock.Mock(return_value=all_passed_log) - def tearDown(self): - self.print_patch.stop() - pass - def test_config_passes_args_pass(self): - kunit.main(['config'], self.linux_source_mock) + kunit.main(['config', '--build_dir=.kunit'], self.linux_source_mock) assert self.linux_source_mock.build_reconfig.call_count == 1 assert self.linux_source_mock.run_kernel.call_count == 0 def test_build_passes_args_pass(self): kunit.main(['build'], self.linux_source_mock) assert self.linux_source_mock.build_reconfig.call_count == 0 - self.linux_source_mock.build_um_kernel.assert_called_once_with(False, 8, '', None) + self.linux_source_mock.build_um_kernel.assert_called_once_with(False, 8, '.kunit', None) assert self.linux_source_mock.run_kernel.call_count == 0 def test_exec_passes_args_pass(self): kunit.main(['exec'], self.linux_source_mock) assert self.linux_source_mock.build_reconfig.call_count == 0 assert self.linux_source_mock.run_kernel.call_count == 1 - self.linux_source_mock.run_kernel.assert_called_once_with(build_dir='', timeout=300) + self.linux_source_mock.run_kernel.assert_called_once_with(build_dir='.kunit', timeout=300) self.print_mock.assert_any_call(StrContains('Testing complete.')) def test_run_passes_args_pass(self): @@ -273,7 +271,7 @@ assert self.linux_source_mock.build_reconfig.call_count == 1 assert self.linux_source_mock.run_kernel.call_count == 1 self.linux_source_mock.run_kernel.assert_called_once_with( - build_dir='', timeout=300) + build_dir='.kunit', timeout=300) self.print_mock.assert_any_call(StrContains('Testing complete.')) def test_exec_passes_args_fail(self): @@ -313,7 +311,7 @@ def test_exec_timeout(self): timeout = 3453 kunit.main(['exec', '--timeout', str(timeout)], self.linux_source_mock) - self.linux_source_mock.run_kernel.assert_called_once_with(build_dir='', timeout=timeout) + self.linux_source_mock.run_kernel.assert_called_once_with(build_dir='.kunit', timeout=timeout) self.print_mock.assert_any_call(StrContains('Testing complete.')) def test_run_timeout(self): @@ -321,12 +319,12 @@ kunit.main(['run', '--timeout', str(timeout)], self.linux_source_mock) assert self.linux_source_mock.build_reconfig.call_count == 1 self.linux_source_mock.run_kernel.assert_called_once_with( - build_dir='', timeout=timeout) + build_dir='.kunit', timeout=timeout) self.print_mock.assert_any_call(StrContains('Testing complete.')) def test_run_builddir(self): build_dir = '.kunit' - kunit.main(['run', '--build_dir', build_dir], self.linux_source_mock) + kunit.main(['run', '--build_dir=.kunit'], self.linux_source_mock) assert self.linux_source_mock.build_reconfig.call_count == 1 self.linux_source_mock.run_kernel.assert_called_once_with( build_dir=build_dir, timeout=300) --- linux-azure-5.8-5.8.0.orig/tools/testing/nvdimm/test/nfit.c +++ linux-azure-5.8-5.8.0/tools/testing/nvdimm/test/nfit.c @@ -23,7 +23,8 @@ #include "nfit_test.h" #include "../watermark.h" -#include +#include +#include /* * Generate an NFIT table to describe the following topology: @@ -3052,7 +3053,7 @@ .id_table = nfit_test_id, }; -static char mcsafe_buf[PAGE_SIZE] __attribute__((__aligned__(PAGE_SIZE))); +static char copy_mc_buf[PAGE_SIZE] __attribute__((__aligned__(PAGE_SIZE))); enum INJECT { INJECT_NONE, @@ -3060,7 +3061,7 @@ INJECT_DST, }; -static void mcsafe_test_init(char *dst, char *src, size_t size) +static void copy_mc_test_init(char *dst, char *src, size_t size) { size_t i; @@ -3069,7 +3070,7 @@ src[i] = (char) i; } -static bool mcsafe_test_validate(unsigned char *dst, unsigned char *src, +static bool copy_mc_test_validate(unsigned char *dst, unsigned char *src, size_t size, unsigned long rem) { size_t i; @@ -3090,12 +3091,12 @@ return true; } -void mcsafe_test(void) +void copy_mc_test(void) { char *inject_desc[] = { "none", "source", "destination" }; enum INJECT inj; - if (IS_ENABLED(CONFIG_MCSAFE_TEST)) { + if (IS_ENABLED(CONFIG_COPY_MC_TEST)) { pr_info("%s: run...\n", __func__); } else { pr_info("%s: disabled, skip.\n", __func__); @@ -3113,31 +3114,31 @@ switch (inj) { case INJECT_NONE: - mcsafe_inject_src(NULL); - mcsafe_inject_dst(NULL); - dst = &mcsafe_buf[2048]; - src = &mcsafe_buf[1024 - i]; + copy_mc_inject_src(NULL); + copy_mc_inject_dst(NULL); + dst = ©_mc_buf[2048]; + src = ©_mc_buf[1024 - i]; expect = 0; break; case INJECT_SRC: - mcsafe_inject_src(&mcsafe_buf[1024]); - mcsafe_inject_dst(NULL); - dst = &mcsafe_buf[2048]; - src = &mcsafe_buf[1024 - i]; + copy_mc_inject_src(©_mc_buf[1024]); + copy_mc_inject_dst(NULL); + dst = ©_mc_buf[2048]; + src = ©_mc_buf[1024 - i]; expect = 512 - i; break; case INJECT_DST: - mcsafe_inject_src(NULL); - mcsafe_inject_dst(&mcsafe_buf[2048]); - dst = &mcsafe_buf[2048 - i]; - src = &mcsafe_buf[1024]; + copy_mc_inject_src(NULL); + copy_mc_inject_dst(©_mc_buf[2048]); + dst = ©_mc_buf[2048 - i]; + src = ©_mc_buf[1024]; expect = 512 - i; break; } - mcsafe_test_init(dst, src, 512); - rem = __memcpy_mcsafe(dst, src, 512); - valid = mcsafe_test_validate(dst, src, 512, expect); + copy_mc_test_init(dst, src, 512); + rem = copy_mc_fragile(dst, src, 512); + valid = copy_mc_test_validate(dst, src, 512, expect); if (rem == expect && valid) continue; pr_info("%s: copy(%#lx, %#lx, %d) off: %d rem: %ld %s expect: %ld\n", @@ -3149,8 +3150,8 @@ } } - mcsafe_inject_src(NULL); - mcsafe_inject_dst(NULL); + copy_mc_inject_src(NULL); + copy_mc_inject_dst(NULL); } static __init int nfit_test_init(void) @@ -3161,7 +3162,7 @@ libnvdimm_test(); acpi_nfit_test(); device_dax_test(); - mcsafe_test(); + copy_mc_test(); dax_pmem_test(); dax_pmem_core_test(); #ifdef CONFIG_DEV_DAX_PMEM_COMPAT --- linux-azure-5.8-5.8.0.orig/tools/testing/radix-tree/idr-test.c +++ linux-azure-5.8-5.8.0/tools/testing/radix-tree/idr-test.c @@ -523,8 +523,27 @@ return NULL; } +static void *ida_leak_fn(void *arg) +{ + struct ida *ida = arg; + time_t s = time(NULL); + int i, ret; + + rcu_register_thread(); + + do for (i = 0; i < 1000; i++) { + ret = ida_alloc_range(ida, 128, 128, GFP_KERNEL); + if (ret >= 0) + ida_free(ida, 128); + } while (time(NULL) < s + 2); + + rcu_unregister_thread(); + return NULL; +} + void ida_thread_tests(void) { + DEFINE_IDA(ida); pthread_t threads[20]; int i; @@ -536,6 +555,16 @@ while (i--) pthread_join(threads[i], NULL); + + for (i = 0; i < ARRAY_SIZE(threads); i++) + if (pthread_create(&threads[i], NULL, ida_leak_fn, &ida)) { + perror("creating ida thread"); + exit(1); + } + + while (i--) + pthread_join(threads[i], NULL); + assert(ida_is_empty(&ida)); } void ida_tests(void) --- linux-azure-5.8-5.8.0.orig/tools/testing/selftests/Makefile +++ linux-azure-5.8-5.8.0/tools/testing/selftests/Makefile @@ -71,8 +71,10 @@ TARGETS_HOTPLUG = cpu-hotplug TARGETS_HOTPLUG += memory-hotplug -# User can optionally provide a TARGETS skiplist. -SKIP_TARGETS ?= +# User can optionally provide a TARGETS skiplist. By default we skip +# BPF since it has cutting edge build time dependencies which require +# more effort to install. +SKIP_TARGETS ?= bpf ifneq ($(SKIP_TARGETS),) TMP := $(filter-out $(SKIP_TARGETS), $(TARGETS)) override TARGETS := $(TMP) --- linux-azure-5.8-5.8.0.orig/tools/testing/selftests/bpf/Makefile +++ linux-azure-5.8-5.8.0/tools/testing/selftests/bpf/Makefile @@ -32,7 +32,7 @@ # Order correspond to 'make run_tests' order TEST_GEN_PROGS = test_verifier test_tag test_maps test_lru_map test_lpm_map test_progs \ - test_align test_verifier_log test_dev_cgroup test_tcpbpf_user \ + test_verifier_log test_dev_cgroup test_tcpbpf_user \ test_sock test_btf test_sockmap get_cgroup_id_user test_socket_cookie \ test_cgroup_storage \ test_netcnt test_tcpnotify_user test_sock_fields test_sysctl \ @@ -102,7 +102,7 @@ OVERRIDE_TARGETS := 1 override define CLEAN $(call msg,CLEAN) - $(RM) -r $(TEST_GEN_PROGS) $(TEST_GEN_PROGS_EXTENDED) $(TEST_GEN_FILES) $(EXTRA_CLEAN) + $(Q)$(RM) -r $(TEST_GEN_PROGS) $(TEST_GEN_PROGS_EXTENDED) $(TEST_GEN_FILES) $(EXTRA_CLEAN) endef include ../lib.mk @@ -122,17 +122,21 @@ $(TEST_GEN_PROGS_EXTENDED) \ $(TEST_CUSTOM_PROGS)): %: $(OUTPUT)/% ; +$(OUTPUT)/%.o: %.c + $(call msg,CC,,$@) + $(Q)$(CC) $(CFLAGS) -c $(filter %.c,$^) $(LDLIBS) -o $@ + $(OUTPUT)/%:%.c $(call msg,BINARY,,$@) - $(LINK.c) $^ $(LDLIBS) -o $@ + $(Q)$(LINK.c) $^ $(LDLIBS) -o $@ $(OUTPUT)/urandom_read: urandom_read.c $(call msg,BINARY,,$@) - $(CC) $(LDFLAGS) -o $@ $< $(LDLIBS) -Wl,--build-id + $(Q)$(CC) $(LDFLAGS) -o $@ $< $(LDLIBS) -Wl,--build-id=sha1 $(OUTPUT)/test_stub.o: test_stub.c $(BPFOBJ) $(call msg,CC,,$@) - $(CC) -c $(CFLAGS) -o $@ $< + $(Q)$(CC) -c $(CFLAGS) -o $@ $< VMLINUX_BTF_PATHS := $(if $(O),$(O)/vmlinux) \ $(if $(KBUILD_OUTPUT),$(KBUILD_OUTPUT)/vmlinux) \ @@ -140,8 +144,13 @@ /sys/kernel/btf/vmlinux \ /boot/vmlinux-$(shell uname -r) VMLINUX_BTF := $(abspath $(firstword $(wildcard $(VMLINUX_BTF_PATHS)))) +ifeq ($(VMLINUX_BTF),) +$(error Cannot find a vmlinux for VMLINUX_BTF at any of "$(VMLINUX_BTF_PATHS)") +endif -$(OUTPUT)/runqslower: $(BPFOBJ) +DEFAULT_BPFTOOL := $(SCRATCH_DIR)/sbin/bpftool + +$(OUTPUT)/runqslower: $(BPFOBJ) | $(DEFAULT_BPFTOOL) $(Q)$(MAKE) $(submake_extras) -C $(TOOLSDIR)/bpf/runqslower \ OUTPUT=$(SCRATCH_DIR)/ VMLINUX_BTF=$(VMLINUX_BTF) \ BPFOBJ=$(BPFOBJ) BPF_INCLUDE=$(INCLUDE_DIR) && \ @@ -163,7 +172,6 @@ $(OUTPUT)/test_sock_fields: cgroup_helpers.c $(OUTPUT)/test_sysctl: cgroup_helpers.c -DEFAULT_BPFTOOL := $(SCRATCH_DIR)/sbin/bpftool BPFTOOL ?= $(DEFAULT_BPFTOOL) $(DEFAULT_BPFTOOL): $(wildcard $(BPFTOOLDIR)/*.[ch] $(BPFTOOLDIR)/Makefile) \ $(BPFOBJ) | $(BUILD_DIR)/bpftool @@ -179,11 +187,11 @@ $(BUILD_DIR)/libbpf $(BUILD_DIR)/bpftool $(INCLUDE_DIR): $(call msg,MKDIR,,$@) - mkdir -p $@ + $(Q)mkdir -p $@ $(INCLUDE_DIR)/vmlinux.h: $(VMLINUX_BTF) | $(BPFTOOL) $(INCLUDE_DIR) $(call msg,GEN,,$@) - $(BPFTOOL) btf dump file $(VMLINUX_BTF) format c > $@ + $(Q)$(BPFTOOL) btf dump file $(VMLINUX_BTF) format c > $@ # Get Clang's default includes on this system, as opposed to those seen by # '-target bpf'. This fixes "missing" files on some architectures/distros, @@ -193,7 +201,8 @@ # build would have failed anyways. define get_sys_includes $(shell $(1) -v -E - &1 \ - | sed -n '/<...> search starts here:/,/End of search list./{ s| \(/.*\)|-idirafter \1|p }') + | sed -n '/<...> search starts here:/,/End of search list./{ s| \(/.*\)|-idirafter \1|p }') \ +$(shell $(1) -dM -E - $$@ + $(Q)$$(BPFTOOL) gen skeleton $$< > $$@ endif # ensure we set up tests.h header generation rule just once @@ -328,7 +337,7 @@ $(TRUNNER_BPF_SKELS) \ $$(BPFOBJ) | $(TRUNNER_OUTPUT) $$(call msg,TEST-OBJ,$(TRUNNER_BINARY),$$@) - cd $$(@D) && $$(CC) -I. $$(CFLAGS) -c $(CURDIR)/$$< $$(LDLIBS) -o $$(@F) + $(Q)cd $$(@D) && $$(CC) -I. $$(CFLAGS) -c $(CURDIR)/$$< $$(LDLIBS) -o $$(@F) $(TRUNNER_EXTRA_OBJS): $(TRUNNER_OUTPUT)/%.o: \ %.c \ @@ -336,20 +345,20 @@ $(TRUNNER_TESTS_HDR) \ $$(BPFOBJ) | $(TRUNNER_OUTPUT) $$(call msg,EXT-OBJ,$(TRUNNER_BINARY),$$@) - $$(CC) $$(CFLAGS) -c $$< $$(LDLIBS) -o $$@ + $(Q)$$(CC) $$(CFLAGS) -c $$< $$(LDLIBS) -o $$@ # only copy extra resources if in flavored build $(TRUNNER_BINARY)-extras: $(TRUNNER_EXTRA_FILES) | $(TRUNNER_OUTPUT) ifneq ($2,) $$(call msg,EXT-COPY,$(TRUNNER_BINARY),$(TRUNNER_EXTRA_FILES)) - cp -a $$^ $(TRUNNER_OUTPUT)/ + $(Q)cp -a $$^ $(TRUNNER_OUTPUT)/ endif $(OUTPUT)/$(TRUNNER_BINARY): $(TRUNNER_TEST_OBJS) \ $(TRUNNER_EXTRA_OBJS) $$(BPFOBJ) \ | $(TRUNNER_BINARY)-extras $$(call msg,BINARY,,$$@) - $$(CC) $$(CFLAGS) $$(filter %.a %.o,$$^) $$(LDLIBS) -o $$@ + $(Q)$$(CC) $$(CFLAGS) $$(filter %.a %.o,$$^) $$(LDLIBS) -o $$@ endef @@ -402,17 +411,17 @@ ) > verifier/tests.h) $(OUTPUT)/test_verifier: test_verifier.c verifier/tests.h $(BPFOBJ) | $(OUTPUT) $(call msg,BINARY,,$@) - $(CC) $(CFLAGS) $(filter %.a %.o %.c,$^) $(LDLIBS) -o $@ + $(Q)$(CC) $(CFLAGS) $(filter %.a %.o %.c,$^) $(LDLIBS) -o $@ # Make sure we are able to include and link libbpf against c++. $(OUTPUT)/test_cpp: test_cpp.cpp $(OUTPUT)/test_core_extern.skel.h $(BPFOBJ) $(call msg,CXX,,$@) - $(CXX) $(CFLAGS) $^ $(LDLIBS) -o $@ + $(Q)$(CXX) $(CFLAGS) $^ $(LDLIBS) -o $@ # Benchmark runner $(OUTPUT)/bench_%.o: benchs/bench_%.c bench.h $(call msg,CC,,$@) - $(CC) $(CFLAGS) -c $(filter %.c,$^) $(LDLIBS) -o $@ + $(Q)$(CC) $(CFLAGS) -c $(filter %.c,$^) $(LDLIBS) -o $@ $(OUTPUT)/bench_rename.o: $(OUTPUT)/test_overhead.skel.h $(OUTPUT)/bench_trigger.o: $(OUTPUT)/trigger_bench.skel.h $(OUTPUT)/bench_ringbufs.o: $(OUTPUT)/ringbuf_bench.skel.h \ @@ -425,7 +434,7 @@ $(OUTPUT)/bench_trigger.o \ $(OUTPUT)/bench_ringbufs.o $(call msg,BINARY,,$@) - $(CC) $(LDFLAGS) -o $@ $(filter %.a %.o,$^) $(LDLIBS) + $(Q)$(CC) $(LDFLAGS) -o $@ $(filter %.a %.o,$^) $(LDLIBS) EXTRA_CLEAN := $(TEST_CUSTOM_PROGS) $(SCRATCH_DIR) \ prog_tests/tests.h map_tests/tests.h verifier/tests.h \ --- linux-azure-5.8-5.8.0.orig/tools/testing/selftests/bpf/bench.c +++ linux-azure-5.8-5.8.0/tools/testing/selftests/bpf/bench.c @@ -311,7 +311,6 @@ extern const struct bench bench_rename_rawtp; extern const struct bench bench_rename_fentry; extern const struct bench bench_rename_fexit; -extern const struct bench bench_rename_fmodret; extern const struct bench bench_trig_base; extern const struct bench bench_trig_tp; extern const struct bench bench_trig_rawtp; @@ -332,7 +331,6 @@ &bench_rename_rawtp, &bench_rename_fentry, &bench_rename_fexit, - &bench_rename_fmodret, &bench_trig_base, &bench_trig_tp, &bench_trig_rawtp, @@ -462,4 +460,3 @@ return 0; } - --- linux-azure-5.8-5.8.0.orig/tools/testing/selftests/bpf/benchs/bench_rename.c +++ linux-azure-5.8-5.8.0/tools/testing/selftests/bpf/benchs/bench_rename.c @@ -106,12 +106,6 @@ attach_bpf(ctx.skel->progs.prog5); } -static void setup_fmodret() -{ - setup_ctx(); - attach_bpf(ctx.skel->progs.prog6); -} - static void *consumer(void *input) { return NULL; @@ -179,17 +173,6 @@ .producer_thread = producer, .consumer_thread = consumer, .measure = measure, - .report_progress = hits_drops_report_progress, - .report_final = hits_drops_report_final, -}; - -const struct bench bench_rename_fmodret = { - .name = "rename-fmodret", - .validate = validate, - .setup = setup_fmodret, - .producer_thread = producer, - .consumer_thread = consumer, - .measure = measure, .report_progress = hits_drops_report_progress, .report_final = hits_drops_report_final, }; --- linux-azure-5.8-5.8.0.orig/tools/testing/selftests/bpf/prog_tests/bpf_obj_id.c +++ linux-azure-5.8-5.8.0/tools/testing/selftests/bpf/prog_tests/bpf_obj_id.c @@ -159,15 +159,15 @@ /* Check getting link info */ info_len = sizeof(struct bpf_link_info) * 2; bzero(&link_infos[i], info_len); - link_infos[i].raw_tracepoint.tp_name = (__u64)&tp_name; + link_infos[i].raw_tracepoint.tp_name = ptr_to_u64(&tp_name); link_infos[i].raw_tracepoint.tp_name_len = sizeof(tp_name); err = bpf_obj_get_info_by_fd(bpf_link__fd(links[i]), &link_infos[i], &info_len); if (CHECK(err || link_infos[i].type != BPF_LINK_TYPE_RAW_TRACEPOINT || link_infos[i].prog_id != prog_infos[i].id || - link_infos[i].raw_tracepoint.tp_name != (__u64)&tp_name || - strcmp((char *)link_infos[i].raw_tracepoint.tp_name, + link_infos[i].raw_tracepoint.tp_name != ptr_to_u64(&tp_name) || + strcmp(u64_to_ptr(link_infos[i].raw_tracepoint.tp_name), "sys_enter") || info_len != sizeof(struct bpf_link_info), "get-link-info(fd)", @@ -178,7 +178,7 @@ link_infos[i].type, BPF_LINK_TYPE_RAW_TRACEPOINT, link_infos[i].id, link_infos[i].prog_id, prog_infos[i].id, - (char *)link_infos[i].raw_tracepoint.tp_name, + (const char *)u64_to_ptr(link_infos[i].raw_tracepoint.tp_name), "sys_enter")) goto done; --- linux-azure-5.8-5.8.0.orig/tools/testing/selftests/bpf/prog_tests/core_extern.c +++ linux-azure-5.8-5.8.0/tools/testing/selftests/bpf/prog_tests/core_extern.c @@ -159,8 +159,8 @@ exp = (uint64_t *)&t->data; for (j = 0; j < n; j++) { CHECK(got[j] != exp[j], "check_res", - "result #%d: expected %lx, but got %lx\n", - j, exp[j], got[j]); + "result #%d: expected %llx, but got %llx\n", + j, (__u64)exp[j], (__u64)got[j]); } cleanup: test_core_extern__destroy(skel); --- linux-azure-5.8-5.8.0.orig/tools/testing/selftests/bpf/prog_tests/core_reloc.c +++ linux-azure-5.8-5.8.0/tools/testing/selftests/bpf/prog_tests/core_reloc.c @@ -237,8 +237,8 @@ .union_sz = sizeof(((type *)0)->union_field), \ .arr_sz = sizeof(((type *)0)->arr_field), \ .arr_elem_sz = sizeof(((type *)0)->arr_field[0]), \ - .ptr_sz = sizeof(((type *)0)->ptr_field), \ - .enum_sz = sizeof(((type *)0)->enum_field), \ + .ptr_sz = 8, /* always 8-byte pointer for BPF */ \ + .enum_sz = sizeof(((type *)0)->enum_field), \ } #define SIZE_CASE(name) { \ @@ -432,20 +432,20 @@ .sb4 = -1, .sb20 = -0x17654321, .u32 = 0xBEEF, - .s32 = -0x3FEDCBA987654321, + .s32 = -0x3FEDCBA987654321LL, }), BITFIELDS_CASE(bitfields___bitfield_vs_int, { - .ub1 = 0xFEDCBA9876543210, + .ub1 = 0xFEDCBA9876543210LL, .ub2 = 0xA6, - .ub7 = -0x7EDCBA987654321, - .sb4 = -0x6123456789ABCDE, - .sb20 = 0xD00D, + .ub7 = -0x7EDCBA987654321LL, + .sb4 = -0x6123456789ABCDELL, + .sb20 = 0xD00DLL, .u32 = -0x76543, - .s32 = 0x0ADEADBEEFBADB0B, + .s32 = 0x0ADEADBEEFBADB0BLL, }), BITFIELDS_CASE(bitfields___just_big_enough, { - .ub1 = 0xF, - .ub2 = 0x0812345678FEDCBA, + .ub1 = 0xFLL, + .ub2 = 0x0812345678FEDCBALL, }), BITFIELDS_ERR_CASE(bitfields___err_too_big_bitfield), --- linux-azure-5.8-5.8.0.orig/tools/testing/selftests/bpf/prog_tests/fexit_bpf2bpf.c +++ linux-azure-5.8-5.8.0/tools/testing/selftests/bpf/prog_tests/fexit_bpf2bpf.c @@ -16,7 +16,7 @@ __u32 duration = 0, retval; struct bpf_map *data_map; const int zero = 0; - u64 *result = NULL; + __u64 *result = NULL; err = bpf_prog_load(target_obj_file, BPF_PROG_TYPE_UNSPEC, &pkt_obj, &pkt_fd); @@ -29,7 +29,7 @@ link = calloc(sizeof(struct bpf_link *), prog_cnt); prog = calloc(sizeof(struct bpf_program *), prog_cnt); - result = malloc((prog_cnt + 32 /* spare */) * sizeof(u64)); + result = malloc((prog_cnt + 32 /* spare */) * sizeof(__u64)); if (CHECK(!link || !prog || !result, "alloc_memory", "failed to alloc memory")) goto close_prog; @@ -72,7 +72,7 @@ goto close_prog; for (i = 0; i < prog_cnt; i++) - if (CHECK(result[i] != 1, "result", "fexit_bpf2bpf failed err %ld\n", + if (CHECK(result[i] != 1, "result", "fexit_bpf2bpf failed err %llu\n", result[i])) goto close_prog; --- linux-azure-5.8-5.8.0.orig/tools/testing/selftests/bpf/prog_tests/flow_dissector.c +++ linux-azure-5.8-5.8.0/tools/testing/selftests/bpf/prog_tests/flow_dissector.c @@ -591,7 +591,7 @@ CHECK_ATTR(tattr.data_size_out != sizeof(flow_keys) || err || tattr.retval != 1, tests[i].name, - "err %d errno %d retval %d duration %d size %u/%lu\n", + "err %d errno %d retval %d duration %d size %u/%zu\n", err, errno, tattr.retval, tattr.duration, tattr.data_size_out, sizeof(flow_keys)); CHECK_FLOW_KEYS(tests[i].name, flow_keys, tests[i].keys); --- linux-azure-5.8-5.8.0.orig/tools/testing/selftests/bpf/prog_tests/global_data.c +++ linux-azure-5.8-5.8.0/tools/testing/selftests/bpf/prog_tests/global_data.c @@ -5,7 +5,7 @@ static void test_global_data_number(struct bpf_object *obj, __u32 duration) { int i, err, map_fd; - uint64_t num; + __u64 num; map_fd = bpf_find_map(__func__, obj, "result_number"); if (CHECK_FAIL(map_fd < 0)) @@ -14,7 +14,7 @@ struct { char *name; uint32_t key; - uint64_t num; + __u64 num; } tests[] = { { "relocate .bss reference", 0, 0 }, { "relocate .data reference", 1, 42 }, @@ -32,7 +32,7 @@ for (i = 0; i < sizeof(tests) / sizeof(tests[0]); i++) { err = bpf_map_lookup_elem(map_fd, &tests[i].key, &num); CHECK(err || num != tests[i].num, tests[i].name, - "err %d result %lx expected %lx\n", + "err %d result %llx expected %llx\n", err, num, tests[i].num); } } --- linux-azure-5.8-5.8.0.orig/tools/testing/selftests/bpf/prog_tests/mmap.c +++ linux-azure-5.8-5.8.0/tools/testing/selftests/bpf/prog_tests/mmap.c @@ -21,7 +21,7 @@ const long page_size = sysconf(_SC_PAGE_SIZE); int err, duration = 0, i, data_map_fd, data_map_id, tmp_fd, rdmap_fd; struct bpf_map *data_map, *bss_map; - void *bss_mmaped = NULL, *map_mmaped = NULL, *tmp1, *tmp2; + void *bss_mmaped = NULL, *map_mmaped = NULL, *tmp0, *tmp1, *tmp2; struct test_mmap__bss *bss_data; struct bpf_map_info map_info; __u32 map_info_sz = sizeof(map_info); @@ -183,16 +183,23 @@ /* check some more advanced mmap() manipulations */ + tmp0 = mmap(NULL, 4 * page_size, PROT_READ, MAP_SHARED | MAP_ANONYMOUS, + -1, 0); + if (CHECK(tmp0 == MAP_FAILED, "adv_mmap0", "errno %d\n", errno)) + goto cleanup; + /* map all but last page: pages 1-3 mapped */ - tmp1 = mmap(NULL, 3 * page_size, PROT_READ, MAP_SHARED, + tmp1 = mmap(tmp0, 3 * page_size, PROT_READ, MAP_SHARED | MAP_FIXED, data_map_fd, 0); - if (CHECK(tmp1 == MAP_FAILED, "adv_mmap1", "errno %d\n", errno)) + if (CHECK(tmp0 != tmp1, "adv_mmap1", "tmp0: %p, tmp1: %p\n", tmp0, tmp1)) { + munmap(tmp0, 4 * page_size); goto cleanup; + } /* unmap second page: pages 1, 3 mapped */ err = munmap(tmp1 + page_size, page_size); if (CHECK(err, "adv_mmap2", "errno %d\n", errno)) { - munmap(tmp1, map_sz); + munmap(tmp1, 4 * page_size); goto cleanup; } @@ -201,7 +208,7 @@ MAP_SHARED | MAP_FIXED, data_map_fd, 0); if (CHECK(tmp2 == MAP_FAILED, "adv_mmap3", "errno %d\n", errno)) { munmap(tmp1, page_size); - munmap(tmp1 + 2*page_size, page_size); + munmap(tmp1 + 2*page_size, 2 * page_size); goto cleanup; } CHECK(tmp1 + page_size != tmp2, "adv_mmap4", @@ -211,7 +218,7 @@ tmp2 = mmap(tmp1, 4 * page_size, PROT_READ, MAP_SHARED | MAP_FIXED, data_map_fd, 0); if (CHECK(tmp2 == MAP_FAILED, "adv_mmap5", "errno %d\n", errno)) { - munmap(tmp1, 3 * page_size); /* unmap page 1 */ + munmap(tmp1, 4 * page_size); /* unmap page 1 */ goto cleanup; } CHECK(tmp1 != tmp2, "adv_mmap6", "tmp1: %p, tmp2: %p\n", tmp1, tmp2); --- linux-azure-5.8-5.8.0.orig/tools/testing/selftests/bpf/prog_tests/prog_run_xattr.c +++ linux-azure-5.8-5.8.0/tools/testing/selftests/bpf/prog_tests/prog_run_xattr.c @@ -28,7 +28,7 @@ "err %d errno %d retval %d\n", err, errno, tattr.retval); CHECK_ATTR(tattr.data_size_out != sizeof(pkt_v4), "data_size_out", - "incorrect output size, want %lu have %u\n", + "incorrect output size, want %zu have %u\n", sizeof(pkt_v4), tattr.data_size_out); CHECK_ATTR(buf[5] != 0, "overflow", --- linux-azure-5.8-5.8.0.orig/tools/testing/selftests/bpf/prog_tests/sk_assign.c +++ linux-azure-5.8-5.8.0/tools/testing/selftests/bpf/prog_tests/sk_assign.c @@ -265,7 +265,7 @@ TEST("ipv6 udp port redir", AF_INET6, SOCK_DGRAM, false), TEST("ipv6 udp addr redir", AF_INET6, SOCK_DGRAM, true), }; - int server = -1; + __s64 server = -1; int server_map; int self_net; --- linux-azure-5.8-5.8.0.orig/tools/testing/selftests/bpf/prog_tests/skb_ctx.c +++ linux-azure-5.8-5.8.0/tools/testing/selftests/bpf/prog_tests/skb_ctx.c @@ -80,7 +80,7 @@ CHECK_ATTR(tattr.ctx_size_out != sizeof(skb), "ctx_size_out", - "incorrect output size, want %lu have %u\n", + "incorrect output size, want %zu have %u\n", sizeof(skb), tattr.ctx_size_out); for (i = 0; i < 5; i++) --- linux-azure-5.8-5.8.0.orig/tools/testing/selftests/bpf/prog_tests/sockopt_multi.c +++ linux-azure-5.8-5.8.0/tools/testing/selftests/bpf/prog_tests/sockopt_multi.c @@ -138,7 +138,8 @@ */ buf = 0x40; - if (setsockopt(sock_fd, SOL_IP, IP_TOS, &buf, 1) < 0) { + err = setsockopt(sock_fd, SOL_IP, IP_TOS, &buf, 1); + if (err < 0) { log_err("Failed to call setsockopt(IP_TOS)"); goto detach; } --- linux-azure-5.8-5.8.0.orig/tools/testing/selftests/bpf/prog_tests/sockopt_sk.c +++ linux-azure-5.8-5.8.0/tools/testing/selftests/bpf/prog_tests/sockopt_sk.c @@ -45,9 +45,9 @@ goto err; } - if (*(int *)big_buf != 0x08) { + if (*big_buf != 0x08) { log_err("Unexpected getsockopt(IP_TOS) optval 0x%x != 0x08", - *(int *)big_buf); + (int)*big_buf); goto err; } --- linux-azure-5.8-5.8.0.orig/tools/testing/selftests/bpf/prog_tests/test_global_funcs.c +++ linux-azure-5.8-5.8.0/tools/testing/selftests/bpf/prog_tests/test_global_funcs.c @@ -19,7 +19,7 @@ log_buf = va_arg(args, char *); if (!log_buf) goto out; - if (strstr(log_buf, err_str) == 0) + if (err_str && strstr(log_buf, err_str) == 0) found = true; out: printf(format, log_buf); --- linux-azure-5.8-5.8.0.orig/tools/testing/selftests/bpf/prog_tests/test_overhead.c +++ linux-azure-5.8-5.8.0/tools/testing/selftests/bpf/prog_tests/test_overhead.c @@ -61,10 +61,9 @@ const char *raw_tp_name = "raw_tp/task_rename"; const char *fentry_name = "fentry/__set_task_comm"; const char *fexit_name = "fexit/__set_task_comm"; - const char *fmodret_name = "fmod_ret/__set_task_comm"; const char *kprobe_func = "__set_task_comm"; struct bpf_program *kprobe_prog, *kretprobe_prog, *raw_tp_prog; - struct bpf_program *fentry_prog, *fexit_prog, *fmodret_prog; + struct bpf_program *fentry_prog, *fexit_prog; struct bpf_object *obj; struct bpf_link *link; int err, duration = 0; @@ -97,11 +96,6 @@ if (CHECK(!fexit_prog, "find_probe", "prog '%s' not found\n", fexit_name)) goto cleanup; - fmodret_prog = bpf_object__find_program_by_title(obj, fmodret_name); - if (CHECK(!fmodret_prog, "find_probe", - "prog '%s' not found\n", fmodret_name)) - goto cleanup; - err = bpf_object__load(obj); if (CHECK(err, "obj_load", "err %d\n", err)) goto cleanup; @@ -148,12 +142,6 @@ test_run("fexit"); bpf_link__destroy(link); - /* attach fmod_ret */ - link = bpf_program__attach_trace(fmodret_prog); - if (CHECK(IS_ERR(link), "attach fmod_ret", "err %ld\n", PTR_ERR(link))) - goto cleanup; - test_run("fmod_ret"); - bpf_link__destroy(link); cleanup: prctl(PR_SET_NAME, comm, 0L, 0L, 0L); bpf_object__close(obj); --- linux-azure-5.8-5.8.0.orig/tools/testing/selftests/bpf/progs/core_reloc_types.h +++ linux-azure-5.8-5.8.0/tools/testing/selftests/bpf/progs/core_reloc_types.h @@ -1,5 +1,10 @@ #include #include + +void preserce_ptr_sz_fn(long x) {} + +#define __bpf_aligned __attribute__((aligned(8))) + /* * KERNEL */ @@ -444,51 +449,51 @@ char a; int b; enum core_reloc_primitives_enum c; - void *d; - int (*f)(const char *); + void *d __bpf_aligned; + int (*f)(const char *) __bpf_aligned; }; struct core_reloc_primitives___diff_enum_def { char a; int b; - void *d; - int (*f)(const char *); + void *d __bpf_aligned; + int (*f)(const char *) __bpf_aligned; enum { X = 100, Y = 200, - } c; /* inline enum def with differing set of values */ + } c __bpf_aligned; /* inline enum def with differing set of values */ }; struct core_reloc_primitives___diff_func_proto { - void (*f)(int); /* incompatible function prototype */ - void *d; - enum core_reloc_primitives_enum c; + void (*f)(int) __bpf_aligned; /* incompatible function prototype */ + void *d __bpf_aligned; + enum core_reloc_primitives_enum c __bpf_aligned; int b; char a; }; struct core_reloc_primitives___diff_ptr_type { - const char * const d; /* different pointee type + modifiers */ - char a; + const char * const d __bpf_aligned; /* different pointee type + modifiers */ + char a __bpf_aligned; int b; enum core_reloc_primitives_enum c; - int (*f)(const char *); + int (*f)(const char *) __bpf_aligned; }; struct core_reloc_primitives___err_non_enum { char a[1]; int b; int c; /* int instead of enum */ - void *d; - int (*f)(const char *); + void *d __bpf_aligned; + int (*f)(const char *) __bpf_aligned; }; struct core_reloc_primitives___err_non_int { char a[1]; - int *b; /* ptr instead of int */ - enum core_reloc_primitives_enum c; - void *d; - int (*f)(const char *); + int *b __bpf_aligned; /* ptr instead of int */ + enum core_reloc_primitives_enum c __bpf_aligned; + void *d __bpf_aligned; + int (*f)(const char *) __bpf_aligned; }; struct core_reloc_primitives___err_non_ptr { @@ -496,7 +501,7 @@ int b; enum core_reloc_primitives_enum c; int d; /* int instead of ptr */ - int (*f)(const char *); + int (*f)(const char *) __bpf_aligned; }; /* @@ -507,7 +512,7 @@ }; typedef const int int_t; -typedef const char *char_ptr_t; +typedef const char *char_ptr_t __bpf_aligned; typedef const int arr_t[7]; struct core_reloc_mods_substruct { @@ -523,9 +528,9 @@ struct core_reloc_mods { int a; int_t b; - char *c; + char *c __bpf_aligned; char_ptr_t d; - int e[3]; + int e[3] __bpf_aligned; arr_t f; struct core_reloc_mods_substruct g; core_reloc_mods_substruct_t h; @@ -535,9 +540,9 @@ struct core_reloc_mods___mod_swap { int b; int_t a; - char *d; + char *d __bpf_aligned; char_ptr_t c; - int f[3]; + int f[3] __bpf_aligned; arr_t e; struct { int y; @@ -555,7 +560,7 @@ typedef arr2_t arr3_t; typedef arr3_t arr4_t; -typedef const char * const volatile fancy_char_ptr_t; +typedef const char * const volatile fancy_char_ptr_t __bpf_aligned; typedef core_reloc_mods_substruct_t core_reloc_mods_substruct_tt; @@ -567,7 +572,7 @@ arr4_t e; fancy_char_ptr_t d; fancy_char_ptr_t c; - int3_t b; + int3_t b __bpf_aligned; int3_t a; }; @@ -739,19 +744,19 @@ int8_t sb4: 1; /* 4 -> 1 */ int32_t sb20: 30; /* 20 -> 30 */ /* non-bitfields */ - uint16_t u32; /* 32 -> 16 */ - int64_t s32; /* 32 -> 64 */ + uint16_t u32; /* 32 -> 16 */ + int64_t s32 __bpf_aligned; /* 32 -> 64 */ }; /* turn bitfield into non-bitfield and vice versa */ struct core_reloc_bitfields___bitfield_vs_int { uint64_t ub1; /* 3 -> 64 non-bitfield */ uint8_t ub2; /* 20 -> 8 non-bitfield */ - int64_t ub7; /* 7 -> 64 non-bitfield signed */ - int64_t sb4; /* 4 -> 64 non-bitfield signed */ - uint64_t sb20; /* 20 -> 16 non-bitfield unsigned */ - int32_t u32: 20; /* 32 non-bitfield -> 20 bitfield */ - uint64_t s32: 60; /* 32 non-bitfield -> 60 bitfield */ + int64_t ub7 __bpf_aligned; /* 7 -> 64 non-bitfield signed */ + int64_t sb4 __bpf_aligned; /* 4 -> 64 non-bitfield signed */ + uint64_t sb20 __bpf_aligned; /* 20 -> 16 non-bitfield unsigned */ + int32_t u32: 20; /* 32 non-bitfield -> 20 bitfield */ + uint64_t s32: 60 __bpf_aligned; /* 32 non-bitfield -> 60 bitfield */ }; struct core_reloc_bitfields___just_big_enough { --- linux-azure-5.8-5.8.0.orig/tools/testing/selftests/bpf/progs/test_overhead.c +++ linux-azure-5.8-5.8.0/tools/testing/selftests/bpf/progs/test_overhead.c @@ -39,10 +39,4 @@ return 0; } -SEC("fmod_ret/__set_task_comm") -int BPF_PROG(prog6, struct task_struct *tsk, const char *buf, bool exec) -{ - return !tsk; -} - char _license[] SEC("license") = "GPL"; --- linux-azure-5.8-5.8.0.orig/tools/testing/selftests/bpf/progs/test_sysctl_loop1.c +++ linux-azure-5.8-5.8.0/tools/testing/selftests/bpf/progs/test_sysctl_loop1.c @@ -18,11 +18,11 @@ #define MAX_ULONG_STR_LEN 7 #define MAX_VALUE_STR_LEN (TCP_MEM_LOOPS * MAX_ULONG_STR_LEN) +const char tcp_mem_name[] = "net/ipv4/tcp_mem/very_very_very_very_long_pointless_string"; static __always_inline int is_tcp_mem(struct bpf_sysctl *ctx) { - volatile char tcp_mem_name[] = "net/ipv4/tcp_mem/very_very_very_very_long_pointless_string"; unsigned char i; - char name[64]; + char name[sizeof(tcp_mem_name)]; int ret; memset(name, 0, sizeof(name)); --- linux-azure-5.8-5.8.0.orig/tools/testing/selftests/bpf/progs/test_sysctl_loop2.c +++ linux-azure-5.8-5.8.0/tools/testing/selftests/bpf/progs/test_sysctl_loop2.c @@ -18,11 +18,11 @@ #define MAX_ULONG_STR_LEN 7 #define MAX_VALUE_STR_LEN (TCP_MEM_LOOPS * MAX_ULONG_STR_LEN) +const char tcp_mem_name[] = "net/ipv4/tcp_mem/very_very_very_very_long_pointless_string_to_stress_byte_loop"; static __attribute__((noinline)) int is_tcp_mem(struct bpf_sysctl *ctx) { - volatile char tcp_mem_name[] = "net/ipv4/tcp_mem/very_very_very_very_long_pointless_string_to_stress_byte_loop"; unsigned char i; - char name[64]; + char name[sizeof(tcp_mem_name)]; int ret; memset(name, 0, sizeof(name)); --- linux-azure-5.8-5.8.0.orig/tools/testing/selftests/bpf/progs/test_sysctl_prog.c +++ linux-azure-5.8-5.8.0/tools/testing/selftests/bpf/progs/test_sysctl_prog.c @@ -19,11 +19,11 @@ #define ARRAY_SIZE(x) (sizeof(x) / sizeof((x)[0])) #endif +const char tcp_mem_name[] = "net/ipv4/tcp_mem"; static __always_inline int is_tcp_mem(struct bpf_sysctl *ctx) { - char tcp_mem_name[] = "net/ipv4/tcp_mem"; unsigned char i; - char name[64]; + char name[sizeof(tcp_mem_name)]; int ret; memset(name, 0, sizeof(name)); --- linux-azure-5.8-5.8.0.orig/tools/testing/selftests/bpf/progs/test_tunnel_kern.c +++ linux-azure-5.8-5.8.0/tools/testing/selftests/bpf/progs/test_tunnel_kern.c @@ -15,7 +15,6 @@ #include #include #include -#include #include #include #include @@ -528,12 +527,11 @@ struct bpf_tunnel_key key = {}; void *data = (void *)(long)skb->data; struct iphdr *iph = data; - struct tcphdr *tcp = data + sizeof(*iph); void *data_end = (void *)(long)skb->data_end; int ret; /* single length check */ - if (data + sizeof(*iph) + sizeof(*tcp) > data_end) { + if (data + sizeof(*iph) > data_end) { ERROR(1); return TC_ACT_SHOT; } @@ -541,16 +539,6 @@ key.tunnel_ttl = 64; if (iph->protocol == IPPROTO_ICMP) { key.remote_ipv4 = 0xac100164; /* 172.16.1.100 */ - } else { - if (iph->protocol != IPPROTO_TCP || iph->ihl != 5) - return TC_ACT_SHOT; - - if (tcp->dest == bpf_htons(5200)) - key.remote_ipv4 = 0xac100164; /* 172.16.1.100 */ - else if (tcp->dest == bpf_htons(5201)) - key.remote_ipv4 = 0xac100165; /* 172.16.1.101 */ - else - return TC_ACT_SHOT; } ret = bpf_skb_set_tunnel_key(skb, &key, sizeof(key), 0); @@ -585,19 +573,20 @@ struct bpf_tunnel_key key = {}; void *data = (void *)(long)skb->data; struct iphdr *iph = data; - struct tcphdr *tcp = data + sizeof(*iph); void *data_end = (void *)(long)skb->data_end; int ret; /* single length check */ - if (data + sizeof(*iph) + sizeof(*tcp) > data_end) { + if (data + sizeof(*iph) > data_end) { ERROR(1); return TC_ACT_SHOT; } __builtin_memset(&key, 0x0, sizeof(key)); - key.remote_ipv6[3] = bpf_htonl(0x11); /* ::11 */ key.tunnel_ttl = 64; + if (iph->protocol == IPPROTO_ICMP) { + key.remote_ipv6[3] = bpf_htonl(0x11); /* ::11 */ + } ret = bpf_skb_set_tunnel_key(skb, &key, sizeof(key), BPF_F_TUNINFO_IPV6); @@ -634,35 +623,18 @@ struct bpf_tunnel_key key = {}; void *data = (void *)(long)skb->data; struct ipv6hdr *iph = data; - struct tcphdr *tcp = data + sizeof(*iph); void *data_end = (void *)(long)skb->data_end; int ret; /* single length check */ - if (data + sizeof(*iph) + sizeof(*tcp) > data_end) { + if (data + sizeof(*iph) > data_end) { ERROR(1); return TC_ACT_SHOT; } - key.remote_ipv6[0] = bpf_htonl(0x2401db00); key.tunnel_ttl = 64; - if (iph->nexthdr == 58 /* NEXTHDR_ICMP */) { - key.remote_ipv6[3] = bpf_htonl(1); - } else { - if (iph->nexthdr != 6 /* NEXTHDR_TCP */) { - ERROR(iph->nexthdr); - return TC_ACT_SHOT; - } - - if (tcp->dest == bpf_htons(5200)) { - key.remote_ipv6[3] = bpf_htonl(1); - } else if (tcp->dest == bpf_htons(5201)) { - key.remote_ipv6[3] = bpf_htonl(2); - } else { - ERROR(tcp->dest); - return TC_ACT_SHOT; - } + key.remote_ipv6[3] = bpf_htonl(0x11); /* ::11 */ } ret = bpf_skb_set_tunnel_key(skb, &key, sizeof(key), --- linux-azure-5.8-5.8.0.orig/tools/testing/selftests/bpf/progs/test_vmlinux.c +++ linux-azure-5.8-5.8.0/tools/testing/selftests/bpf/progs/test_vmlinux.c @@ -19,12 +19,14 @@ int handle__tp(struct trace_event_raw_sys_enter *args) { struct __kernel_timespec *ts; + long tv_nsec; if (args->id != __NR_nanosleep) return 0; ts = (void *)args->args[0]; - if (BPF_CORE_READ(ts, tv_nsec) != MY_TV_NSEC) + if (bpf_probe_read_user(&tv_nsec, sizeof(ts->tv_nsec), &ts->tv_nsec) || + tv_nsec != MY_TV_NSEC) return 0; tp_called = true; @@ -35,12 +37,14 @@ int BPF_PROG(handle__raw_tp, struct pt_regs *regs, long id) { struct __kernel_timespec *ts; + long tv_nsec; if (id != __NR_nanosleep) return 0; ts = (void *)PT_REGS_PARM1_CORE(regs); - if (BPF_CORE_READ(ts, tv_nsec) != MY_TV_NSEC) + if (bpf_probe_read_user(&tv_nsec, sizeof(ts->tv_nsec), &ts->tv_nsec) || + tv_nsec != MY_TV_NSEC) return 0; raw_tp_called = true; @@ -51,12 +55,14 @@ int BPF_PROG(handle__tp_btf, struct pt_regs *regs, long id) { struct __kernel_timespec *ts; + long tv_nsec; if (id != __NR_nanosleep) return 0; ts = (void *)PT_REGS_PARM1_CORE(regs); - if (BPF_CORE_READ(ts, tv_nsec) != MY_TV_NSEC) + if (bpf_probe_read_user(&tv_nsec, sizeof(ts->tv_nsec), &ts->tv_nsec) || + tv_nsec != MY_TV_NSEC) return 0; tp_btf_called = true; --- linux-azure-5.8-5.8.0.orig/tools/testing/selftests/bpf/test_btf.c +++ linux-azure-5.8-5.8.0/tools/testing/selftests/bpf/test_btf.c @@ -3883,7 +3883,7 @@ info_garbage.garbage = 0; err = bpf_obj_get_info_by_fd(btf_fd, info, &info_len); if (CHECK(err || info_len != sizeof(*info), - "err:%d errno:%d info_len:%u sizeof(*info):%lu", + "err:%d errno:%d info_len:%u sizeof(*info):%zu", err, errno, info_len, sizeof(*info))) { err = -1; goto done; @@ -4094,7 +4094,7 @@ if (CHECK(err || !info.id || info_len != sizeof(info) || info.btf_size != raw_btf_size || (ret = memcmp(raw_btf, user_btf, expected_nbytes)), - "err:%d errno:%d info.id:%u info_len:%u sizeof(info):%lu raw_btf_size:%u info.btf_size:%u expected_nbytes:%u memcmp:%d", + "err:%d errno:%d info.id:%u info_len:%u sizeof(info):%zu raw_btf_size:%u info.btf_size:%u expected_nbytes:%u memcmp:%d", err, errno, info.id, info_len, sizeof(info), raw_btf_size, info.btf_size, expected_nbytes, ret)) { err = -1; @@ -4730,7 +4730,7 @@ nexpected_line = snprintf(expected_line, line_size, "%s%u: {%u,0,%d,0x%x,0x%x,0x%x," - "{%lu|[%u,%u,%u,%u,%u,%u,%u,%u]},%s," + "{%llu|[%u,%u,%u,%u,%u,%u,%u,%u]},%s," "%u,0x%x,[[%d,%d],[%d,%d]]}\n", percpu_map ? "\tcpu" : "", percpu_map ? cpu : next_key, @@ -4738,7 +4738,7 @@ v->unused_bits2a, v->bits28, v->unused_bits2b, - v->ui64, + (__u64)v->ui64, v->ui8a[0], v->ui8a[1], v->ui8a[2], v->ui8a[3], v->ui8a[4], v->ui8a[5], --- linux-azure-5.8-5.8.0.orig/tools/testing/selftests/bpf/test_maps.c +++ linux-azure-5.8-5.8.0/tools/testing/selftests/bpf/test_maps.c @@ -1274,6 +1274,8 @@ pid_t pid[tasks]; int i; + fflush(stdout); + for (i = 0; i < tasks; i++) { pid[i] = fork(); if (pid[i] == 0) { --- linux-azure-5.8-5.8.0.orig/tools/testing/selftests/bpf/test_offload.py +++ linux-azure-5.8-5.8.0/tools/testing/selftests/bpf/test_offload.py @@ -941,6 +941,7 @@ start_test("Test disabling TC offloads is rejected while filters installed...") ret, _ = sim.set_ethtool_tc_offloads(False, fail=False) fail(ret == 0, "Driver should refuse to disable TC offloads with filters installed...") + sim.set_ethtool_tc_offloads(True) start_test("Test qdisc removal frees things...") sim.tc_flush_filters() --- linux-azure-5.8-5.8.0.orig/tools/testing/selftests/bpf/test_progs.c +++ linux-azure-5.8-5.8.0/tools/testing/selftests/bpf/test_progs.c @@ -12,6 +12,9 @@ #include #include /* backtrace */ +#define EXIT_NO_TEST 2 +#define EXIT_ERR_SETUP_INFRA 3 + /* defined in test_progs.h */ struct test_env env = {}; @@ -111,13 +114,31 @@ if (err < 0) { stdio_restore(); fprintf(stderr, "Failed to reset process affinity: %d!\n", err); - exit(-1); + exit(EXIT_ERR_SETUP_INFRA); } err = pthread_setaffinity_np(pthread_self(), sizeof(cpuset), &cpuset); if (err < 0) { stdio_restore(); fprintf(stderr, "Failed to reset thread affinity: %d!\n", err); - exit(-1); + exit(EXIT_ERR_SETUP_INFRA); + } +} + +static void save_netns(void) +{ + env.saved_netns_fd = open("/proc/self/ns/net", O_RDONLY); + if (env.saved_netns_fd == -1) { + perror("open(/proc/self/ns/net)"); + exit(EXIT_ERR_SETUP_INFRA); + } +} + +static void restore_netns(void) +{ + if (setns(env.saved_netns_fd, CLONE_NEWNET) == -1) { + stdio_restore(); + perror("setns(CLONE_NEWNS)"); + exit(EXIT_ERR_SETUP_INFRA); } } @@ -138,8 +159,6 @@ test->test_num, test->subtest_num, test->subtest_name, sub_error_cnt ? "FAIL" : "OK"); - reset_affinity(); - free(test->subtest_name); test->subtest_name = NULL; } @@ -643,6 +662,7 @@ return -1; } + save_netns(); stdio_hijack(); for (i = 0; i < prog_test_cnt; i++) { struct prog_test_def *test = &prog_test_defs[i]; @@ -673,6 +693,7 @@ test->error_cnt ? "FAIL" : "OK"); reset_affinity(); + restore_netns(); if (test->need_cgroup_cleanup) cleanup_cgroup_environment(); } @@ -686,6 +707,10 @@ free_str_set(&env.subtest_selector.blacklist); free_str_set(&env.subtest_selector.whitelist); free(env.subtest_selector.num_set); + close(env.saved_netns_fd); + + if (env.succ_cnt + env.fail_cnt + env.skip_cnt == 0) + return EXIT_NO_TEST; return env.fail_cnt ? EXIT_FAILURE : EXIT_SUCCESS; } --- linux-azure-5.8-5.8.0.orig/tools/testing/selftests/bpf/test_progs.h +++ linux-azure-5.8-5.8.0/tools/testing/selftests/bpf/test_progs.h @@ -78,6 +78,8 @@ int sub_succ_cnt; /* successful sub-tests */ int fail_cnt; /* total failed tests + sub-tests */ int skip_cnt; /* skipped tests */ + + int saved_netns_fd; }; extern struct test_env env; @@ -131,6 +133,11 @@ return (__u64) (unsigned long) ptr; } +static inline void *u64_to_ptr(__u64 ptr) +{ + return (void *) (unsigned long) ptr; +} + int bpf_find_map(const char *test, struct bpf_object *obj, const char *name); int compare_map_keys(int map1_fd, int map2_fd); int compare_stack_ips(int smap_fd, int amap_fd, int stack_trace_len); --- linux-azure-5.8-5.8.0.orig/tools/testing/selftests/bpf/test_sockmap.c +++ linux-azure-5.8-5.8.0/tools/testing/selftests/bpf/test_sockmap.c @@ -1281,6 +1281,16 @@ return "unknown"; } +static void append_str(char *dst, const char *src, size_t dst_cap) +{ + size_t avail = dst_cap - strlen(dst); + + if (avail <= 1) /* just zero byte could be written */ + return; + + strncat(dst, src, avail - 1); /* strncat() adds + 1 for zero byte */ +} + #define OPTSTRING 60 static void test_options(char *options) { @@ -1289,42 +1299,42 @@ memset(options, 0, OPTSTRING); if (txmsg_pass) - strncat(options, "pass,", OPTSTRING); + append_str(options, "pass,", OPTSTRING); if (txmsg_redir) - strncat(options, "redir,", OPTSTRING); + append_str(options, "redir,", OPTSTRING); if (txmsg_drop) - strncat(options, "drop,", OPTSTRING); + append_str(options, "drop,", OPTSTRING); if (txmsg_apply) { snprintf(tstr, OPTSTRING, "apply %d,", txmsg_apply); - strncat(options, tstr, OPTSTRING); + append_str(options, tstr, OPTSTRING); } if (txmsg_cork) { snprintf(tstr, OPTSTRING, "cork %d,", txmsg_cork); - strncat(options, tstr, OPTSTRING); + append_str(options, tstr, OPTSTRING); } if (txmsg_start) { snprintf(tstr, OPTSTRING, "start %d,", txmsg_start); - strncat(options, tstr, OPTSTRING); + append_str(options, tstr, OPTSTRING); } if (txmsg_end) { snprintf(tstr, OPTSTRING, "end %d,", txmsg_end); - strncat(options, tstr, OPTSTRING); + append_str(options, tstr, OPTSTRING); } if (txmsg_start_pop) { snprintf(tstr, OPTSTRING, "pop (%d,%d),", txmsg_start_pop, txmsg_start_pop + txmsg_pop); - strncat(options, tstr, OPTSTRING); + append_str(options, tstr, OPTSTRING); } if (txmsg_ingress) - strncat(options, "ingress,", OPTSTRING); + append_str(options, "ingress,", OPTSTRING); if (txmsg_redir_skb) - strncat(options, "redir_skb,", OPTSTRING); + append_str(options, "redir_skb,", OPTSTRING); if (txmsg_ktls_skb) - strncat(options, "ktls_skb,", OPTSTRING); + append_str(options, "ktls_skb,", OPTSTRING); if (ktls) - strncat(options, "ktls,", OPTSTRING); + append_str(options, "ktls,", OPTSTRING); if (peek_flag) - strncat(options, "peek,", OPTSTRING); + append_str(options, "peek,", OPTSTRING); } static int __test_exec(int cgrp, int test, struct sockmap_options *opt) --- linux-azure-5.8-5.8.0.orig/tools/testing/selftests/bpf/test_tunnel.sh +++ linux-azure-5.8-5.8.0/tools/testing/selftests/bpf/test_tunnel.sh @@ -24,12 +24,12 @@ # Root namespace with metadata-mode tunnel + BPF # Device names and addresses: # veth1 IP: 172.16.1.200, IPv6: 00::22 (underlay) -# tunnel dev 11, ex: gre11, IPv4: 10.1.1.200 (overlay) +# tunnel dev 11, ex: gre11, IPv4: 10.1.1.200, IPv6: 1::22 (overlay) # # Namespace at_ns0 with native tunnel # Device names and addresses: # veth0 IPv4: 172.16.1.100, IPv6: 00::11 (underlay) -# tunnel dev 00, ex: gre00, IPv4: 10.1.1.100 (overlay) +# tunnel dev 00, ex: gre00, IPv4: 10.1.1.100, IPv6: 1::11 (overlay) # # # End-to-end ping packet flow @@ -250,7 +250,7 @@ ip addr add dev $DEV 10.1.1.200/24 } -add_ipip6tnl_tunnel() +add_ip6tnl_tunnel() { ip netns exec at_ns0 ip addr add ::11/96 dev veth0 ip netns exec at_ns0 ip link set dev veth0 up @@ -262,11 +262,13 @@ ip link add dev $DEV_NS type $TYPE \ local ::11 remote ::22 ip netns exec at_ns0 ip addr add dev $DEV_NS 10.1.1.100/24 + ip netns exec at_ns0 ip addr add dev $DEV_NS 1::11/96 ip netns exec at_ns0 ip link set dev $DEV_NS up # root namespace ip link add dev $DEV type $TYPE external ip addr add dev $DEV 10.1.1.200/24 + ip addr add dev $DEV 1::22/96 ip link set dev $DEV up } @@ -534,7 +536,7 @@ check $TYPE config_device - add_ipip6tnl_tunnel + add_ip6tnl_tunnel ip link set dev veth1 mtu 1500 attach_bpf $DEV ipip6_set_tunnel ipip6_get_tunnel # underlay @@ -553,6 +555,34 @@ echo -e ${GREEN}"PASS: $TYPE"${NC} } +test_ip6ip6() +{ + TYPE=ip6tnl + DEV_NS=ip6ip6tnl00 + DEV=ip6ip6tnl11 + ret=0 + + check $TYPE + config_device + add_ip6tnl_tunnel + ip link set dev veth1 mtu 1500 + attach_bpf $DEV ip6ip6_set_tunnel ip6ip6_get_tunnel + # underlay + ping6 $PING_ARG ::11 + # ip6 over ip6 + ping6 $PING_ARG 1::11 + check_err $? + ip netns exec at_ns0 ping6 $PING_ARG 1::22 + check_err $? + cleanup + + if [ $ret -ne 0 ]; then + echo -e ${RED}"FAIL: ip6$TYPE"${NC} + return 1 + fi + echo -e ${GREEN}"PASS: ip6$TYPE"${NC} +} + setup_xfrm_tunnel() { auth=0x$(printf '1%.0s' {1..40}) @@ -646,6 +676,7 @@ ip link del veth1 2> /dev/null ip link del ipip11 2> /dev/null ip link del ipip6tnl11 2> /dev/null + ip link del ip6ip6tnl11 2> /dev/null ip link del gretap11 2> /dev/null ip link del ip6gre11 2> /dev/null ip link del ip6gretap11 2> /dev/null @@ -742,6 +773,10 @@ test_ipip6 errors=$(( $errors + $? )) + echo "Testing IP6IP6 tunnel..." + test_ip6ip6 + errors=$(( $errors + $? )) + echo "Testing IPSec tunnel..." test_xfrm_tunnel errors=$(( $errors + $? )) --- linux-azure-5.8-5.8.0.orig/tools/testing/selftests/bpf/verifier/bounds_deduction.c +++ linux-azure-5.8-5.8.0/tools/testing/selftests/bpf/verifier/bounds_deduction.c @@ -6,8 +6,9 @@ BPF_ALU64_REG(BPF_SUB, BPF_REG_0, BPF_REG_1), BPF_EXIT_INSN(), }, - .result = REJECT, + .errstr_unpriv = "R0 tried to sub from different maps, paths, or prohibited types", .errstr = "R0 tried to subtract pointer from scalar", + .result = REJECT, }, { "check deducing bounds from const, 2", @@ -20,6 +21,8 @@ BPF_ALU64_REG(BPF_SUB, BPF_REG_1, BPF_REG_0), BPF_EXIT_INSN(), }, + .errstr_unpriv = "R1 tried to sub from different maps, paths, or prohibited types", + .result_unpriv = REJECT, .result = ACCEPT, .retval = 1, }, @@ -31,8 +34,9 @@ BPF_ALU64_REG(BPF_SUB, BPF_REG_0, BPF_REG_1), BPF_EXIT_INSN(), }, - .result = REJECT, + .errstr_unpriv = "R0 tried to sub from different maps, paths, or prohibited types", .errstr = "R0 tried to subtract pointer from scalar", + .result = REJECT, }, { "check deducing bounds from const, 4", @@ -45,6 +49,8 @@ BPF_ALU64_REG(BPF_SUB, BPF_REG_1, BPF_REG_0), BPF_EXIT_INSN(), }, + .errstr_unpriv = "R1 tried to sub from different maps, paths, or prohibited types", + .result_unpriv = REJECT, .result = ACCEPT, }, { @@ -55,8 +61,9 @@ BPF_ALU64_REG(BPF_SUB, BPF_REG_0, BPF_REG_1), BPF_EXIT_INSN(), }, - .result = REJECT, + .errstr_unpriv = "R0 tried to sub from different maps, paths, or prohibited types", .errstr = "R0 tried to subtract pointer from scalar", + .result = REJECT, }, { "check deducing bounds from const, 6", @@ -67,8 +74,9 @@ BPF_ALU64_REG(BPF_SUB, BPF_REG_0, BPF_REG_1), BPF_EXIT_INSN(), }, - .result = REJECT, + .errstr_unpriv = "R0 tried to sub from different maps, paths, or prohibited types", .errstr = "R0 tried to subtract pointer from scalar", + .result = REJECT, }, { "check deducing bounds from const, 7", @@ -80,8 +88,9 @@ offsetof(struct __sk_buff, mark)), BPF_EXIT_INSN(), }, - .result = REJECT, + .errstr_unpriv = "R1 tried to sub from different maps, paths, or prohibited types", .errstr = "dereference of modified ctx ptr", + .result = REJECT, .flags = F_NEEDS_EFFICIENT_UNALIGNED_ACCESS, }, { @@ -94,8 +103,9 @@ offsetof(struct __sk_buff, mark)), BPF_EXIT_INSN(), }, - .result = REJECT, + .errstr_unpriv = "R1 tried to add from different maps, paths, or prohibited types", .errstr = "dereference of modified ctx ptr", + .result = REJECT, .flags = F_NEEDS_EFFICIENT_UNALIGNED_ACCESS, }, { @@ -106,8 +116,9 @@ BPF_ALU64_REG(BPF_SUB, BPF_REG_0, BPF_REG_1), BPF_EXIT_INSN(), }, - .result = REJECT, + .errstr_unpriv = "R0 tried to sub from different maps, paths, or prohibited types", .errstr = "R0 tried to subtract pointer from scalar", + .result = REJECT, }, { "check deducing bounds from const, 10", @@ -119,6 +130,6 @@ BPF_ALU64_REG(BPF_SUB, BPF_REG_0, BPF_REG_1), BPF_EXIT_INSN(), }, - .result = REJECT, .errstr = "math between ctx pointer and register with unbounded min value is not allowed", + .result = REJECT, }, --- linux-azure-5.8-5.8.0.orig/tools/testing/selftests/bpf/verifier/unpriv.c +++ linux-azure-5.8-5.8.0/tools/testing/selftests/bpf/verifier/unpriv.c @@ -495,7 +495,7 @@ .result = ACCEPT, }, { - "unpriv: adding of fp", + "unpriv: adding of fp, reg", .insns = { BPF_MOV64_IMM(BPF_REG_0, 0), BPF_MOV64_IMM(BPF_REG_1, 0), @@ -503,6 +503,19 @@ BPF_STX_MEM(BPF_DW, BPF_REG_1, BPF_REG_0, -8), BPF_EXIT_INSN(), }, + .errstr_unpriv = "R1 tried to add from different maps, paths, or prohibited types", + .result_unpriv = REJECT, + .result = ACCEPT, +}, +{ + "unpriv: adding of fp, imm", + .insns = { + BPF_MOV64_IMM(BPF_REG_0, 0), + BPF_MOV64_REG(BPF_REG_1, BPF_REG_10), + BPF_ALU64_IMM(BPF_ADD, BPF_REG_1, 0), + BPF_STX_MEM(BPF_DW, BPF_REG_1, BPF_REG_0, -8), + BPF_EXIT_INSN(), + }, .errstr_unpriv = "R1 stack pointer arithmetic goes out of range", .result_unpriv = REJECT, .result = ACCEPT, --- linux-azure-5.8-5.8.0.orig/tools/testing/selftests/bpf/verifier/value_ptr_arith.c +++ linux-azure-5.8-5.8.0/tools/testing/selftests/bpf/verifier/value_ptr_arith.c @@ -169,7 +169,7 @@ .fixup_map_array_48b = { 1 }, .result = ACCEPT, .result_unpriv = REJECT, - .errstr_unpriv = "R2 tried to add from different maps or paths", + .errstr_unpriv = "R2 tried to add from different maps, paths, or prohibited types", .retval = 0, }, { @@ -517,6 +517,27 @@ .retval = 0xabcdef12, }, { + "map access: value_ptr += N, value_ptr -= N known scalar", + .insns = { + BPF_ST_MEM(BPF_DW, BPF_REG_10, -8, 0), + BPF_MOV64_REG(BPF_REG_2, BPF_REG_10), + BPF_ALU64_IMM(BPF_ADD, BPF_REG_2, -8), + BPF_LD_MAP_FD(BPF_REG_1, 0), + BPF_RAW_INSN(BPF_JMP | BPF_CALL, 0, 0, 0, BPF_FUNC_map_lookup_elem), + BPF_JMP_IMM(BPF_JEQ, BPF_REG_0, 0, 6), + BPF_MOV32_IMM(BPF_REG_1, 0x12345678), + BPF_STX_MEM(BPF_W, BPF_REG_0, BPF_REG_1, 0), + BPF_ALU64_IMM(BPF_ADD, BPF_REG_0, 2), + BPF_MOV64_IMM(BPF_REG_1, 2), + BPF_ALU64_REG(BPF_SUB, BPF_REG_0, BPF_REG_1), + BPF_LDX_MEM(BPF_W, BPF_REG_0, BPF_REG_0, 0), + BPF_EXIT_INSN(), + }, + .fixup_map_array_48b = { 3 }, + .result = ACCEPT, + .retval = 0x12345678, +}, +{ "map access: unknown scalar += value_ptr, 1", .insns = { BPF_ST_MEM(BPF_DW, BPF_REG_10, -8, 0), --- linux-azure-5.8-5.8.0.orig/tools/testing/selftests/cgroup/cgroup_util.c +++ linux-azure-5.8-5.8.0/tools/testing/selftests/cgroup/cgroup_util.c @@ -106,7 +106,7 @@ /* Handle the case of comparing against empty string */ if (!expected) - size = 32; + return -1; else size = strlen(expected) + 1; --- linux-azure-5.8-5.8.0.orig/tools/testing/selftests/dmabuf-heaps/Makefile +++ linux-azure-5.8-5.8.0/tools/testing/selftests/dmabuf-heaps/Makefile @@ -1,5 +1,5 @@ # SPDX-License-Identifier: GPL-2.0 -CFLAGS += -static -O3 -Wl,-no-as-needed -Wall -I../../../../usr/include +CFLAGS += -static -O3 -Wl,-no-as-needed -Wall TEST_GEN_PROGS = dmabuf-heap --- linux-azure-5.8-5.8.0.orig/tools/testing/selftests/ftrace/test.d/kprobe/kprobe_args_user.tc +++ linux-azure-5.8-5.8.0/tools/testing/selftests/ftrace/test.d/kprobe/kprobe_args_user.tc @@ -9,12 +9,16 @@ :;: "user-memory access syntax and ustring working on user memory";: echo 'p:myevent do_sys_open path=+0($arg2):ustring path2=+u0($arg2):string' \ > kprobe_events +echo 'p:myevent2 do_sys_openat2 path=+0($arg2):ustring path2=+u0($arg2):string' \ + >> kprobe_events grep myevent kprobe_events | \ grep -q 'path=+0($arg2):ustring path2=+u0($arg2):string' echo 1 > events/kprobes/myevent/enable +echo 1 > events/kprobes/myevent2/enable echo > /dev/null echo 0 > events/kprobes/myevent/enable +echo 0 > events/kprobes/myevent2/enable grep myevent trace | grep -q 'path="/dev/null" path2="/dev/null"' --- linux-azure-5.8-5.8.0.orig/tools/testing/selftests/ftrace/test.d/trigger/inter-event/trigger-inter-event-combined-hist.tc +++ linux-azure-5.8-5.8.0/tools/testing/selftests/ftrace/test.d/trigger/inter-event/trigger-inter-event-combined-hist.tc @@ -25,12 +25,12 @@ echo 'hist:keys=pid:ts1=common_timestamp.usecs if comm=="ping"' >> events/sched/sched_wakeup/trigger echo 'hist:keys=next_pid:wakeup_lat=common_timestamp.usecs-$ts1:onmatch(sched.sched_wakeup).wakeup_latency($wakeup_lat,next_pid) if next_comm=="ping"' > events/sched/sched_switch/trigger -echo 'waking+wakeup_latency u64 lat; pid_t pid' >> synthetic_events -echo 'hist:keys=pid,lat:sort=pid,lat:ww_lat=$waking_lat+$wakeup_lat:onmatch(synthetic.wakeup_latency).waking+wakeup_latency($ww_lat,pid)' >> events/synthetic/wakeup_latency/trigger -echo 'hist:keys=pid,lat:sort=pid,lat' >> events/synthetic/waking+wakeup_latency/trigger +echo 'waking_plus_wakeup_latency u64 lat; pid_t pid' >> synthetic_events +echo 'hist:keys=pid,lat:sort=pid,lat:ww_lat=$waking_lat+$wakeup_lat:onmatch(synthetic.wakeup_latency).waking_plus_wakeup_latency($ww_lat,pid)' >> events/synthetic/wakeup_latency/trigger +echo 'hist:keys=pid,lat:sort=pid,lat' >> events/synthetic/waking_plus_wakeup_latency/trigger ping $LOCALHOST -c 3 -if ! grep -q "pid:" events/synthetic/waking+wakeup_latency/hist; then +if ! grep -q "pid:" events/synthetic/waking_plus_wakeup_latency/hist; then fail "Failed to create combined histogram" fi --- linux-azure-5.8-5.8.0.orig/tools/testing/selftests/ftrace/test.d/trigger/trigger-trace-marker-snapshot.tc +++ linux-azure-5.8-5.8.0/tools/testing/selftests/ftrace/test.d/trigger/trigger-trace-marker-snapshot.tc @@ -14,12 +14,12 @@ x=$2 cat $file | while read line; do - comment=`echo $line | sed -e 's/^#//'` + comment=`echo "$line" | sed -e 's/^#//'` if [ "$line" != "$comment" ]; then continue fi echo "testing $line for >$x<" - match=`echo $line | sed -e "s/>$x$x$x< in it" fi --- linux-azure-5.8-5.8.0.orig/tools/testing/selftests/kselftest/runner.sh +++ linux-azure-5.8-5.8.0/tools/testing/selftests/kselftest/runner.sh @@ -32,7 +32,7 @@ tap_timeout() { # Make sure tests will time out if utility is available. - if [ -x /usr/bin/timeout ] ; then + if [ -x /usr/bin/timeout ] && [ $kselftest_timeout -gt 0 ] ; then /usr/bin/timeout --foreground "$kselftest_timeout" "$1" else "$1" --- linux-azure-5.8-5.8.0.orig/tools/testing/selftests/kvm/include/x86_64/processor.h +++ linux-azure-5.8-5.8.0/tools/testing/selftests/kvm/include/x86_64/processor.h @@ -59,7 +59,7 @@ struct desc64 { uint16_t limit0; uint16_t base0; - unsigned base1:8, s:1, type:4, dpl:2, p:1; + unsigned base1:8, type:4, s:1, dpl:2, p:1; unsigned limit1:4, avl:1, l:1, db:1, g:1, base2:8; uint32_t base3; uint32_t zero1; --- linux-azure-5.8-5.8.0.orig/tools/testing/selftests/kvm/lib/x86_64/processor.c +++ linux-azure-5.8-5.8.0/tools/testing/selftests/kvm/lib/x86_64/processor.c @@ -392,11 +392,12 @@ desc->limit0 = segp->limit & 0xFFFF; desc->base0 = segp->base & 0xFFFF; desc->base1 = segp->base >> 16; - desc->s = segp->s; desc->type = segp->type; + desc->s = segp->s; desc->dpl = segp->dpl; desc->p = segp->present; desc->limit1 = segp->limit >> 16; + desc->avl = segp->avl; desc->l = segp->l; desc->db = segp->db; desc->g = segp->g; --- linux-azure-5.8-5.8.0.orig/tools/testing/selftests/kvm/x86_64/debug_regs.c +++ linux-azure-5.8-5.8.0/tools/testing/selftests/kvm/x86_64/debug_regs.c @@ -40,11 +40,11 @@ /* Single step test, covers 2 basic instructions and 2 emulated */ asm volatile("ss_start: " - "xor %%rax,%%rax\n\t" + "xor %%eax,%%eax\n\t" "cpuid\n\t" "movl $0x1a0,%%ecx\n\t" "rdmsr\n\t" - : : : "rax", "ecx"); + : : : "eax", "ebx", "ecx", "edx"); /* DR6.BD test */ asm volatile("bd_start: mov %%dr0, %%rax" : : : "rax"); --- linux-azure-5.8-5.8.0.orig/tools/testing/selftests/lib.mk +++ linux-azure-5.8-5.8.0/tools/testing/selftests/lib.mk @@ -139,7 +139,7 @@ ifeq ($(OVERRIDE_TARGETS),) LOCAL_HDRS := $(selfdir)/kselftest_harness.h $(selfdir)/kselftest.h $(OUTPUT)/%:%.c $(LOCAL_HDRS) - $(LINK.c) $^ $(LDLIBS) -o $@ + $(LINK.c) $(filter-out $(LOCAL_HDRS),$^) $(LDLIBS) -o $@ $(OUTPUT)/%.o:%.S $(COMPILE.S) $^ -o $@ --- linux-azure-5.8-5.8.0.orig/tools/testing/selftests/lkdtm/run.sh +++ linux-azure-5.8-5.8.0/tools/testing/selftests/lkdtm/run.sh @@ -8,6 +8,7 @@ # set -e TRIGGER=/sys/kernel/debug/provoke-crash/DIRECT +CLEAR_ONCE=/sys/kernel/debug/clear_warn_once KSELFTEST_SKIP_TEST=4 # Verify we have LKDTM available in the kernel. @@ -67,6 +68,11 @@ } trap cleanup EXIT +# Reset WARN_ONCE counters so we trip it each time this runs. +if [ -w $CLEAR_ONCE ] ; then + echo 1 > $CLEAR_ONCE +fi + # Save existing dmesg so we can detect new content below dmesg > "$DMESG" @@ -76,7 +82,7 @@ ($SHELL -c 'cat <(echo '"$test"') >'"$TRIGGER" 2>/dev/null) || true # Record and dump the results -dmesg | diff --changed-group-format='%>' --unchanged-group-format='' "$DMESG" - > "$LOG" || true +dmesg | comm --nocheck-order -13 "$DMESG" - > "$LOG" || true cat "$LOG" # Check for expected output --- linux-azure-5.8-5.8.0.orig/tools/testing/selftests/lkdtm/tests.txt +++ linux-azure-5.8-5.8.0/tools/testing/selftests/lkdtm/tests.txt @@ -14,6 +14,7 @@ STACK_GUARD_PAGE_TRAILING UNSET_SMEP CR4 bits went missing DOUBLE_FAULT +CORRUPT_PAC UNALIGNED_LOAD_STORE_WRITE #OVERWRITE_ALLOCATION Corrupts memory on failure #WRITE_AFTER_FREE Corrupts memory on failure --- linux-azure-5.8-5.8.0.orig/tools/testing/selftests/memfd/fuse_test.c +++ linux-azure-5.8-5.8.0/tools/testing/selftests/memfd/fuse_test.c @@ -20,7 +20,7 @@ #include #include #include -#include +#include #include #include #include --- linux-azure-5.8-5.8.0.orig/tools/testing/selftests/memfd/memfd_test.c +++ linux-azure-5.8-5.8.0/tools/testing/selftests/memfd/memfd_test.c @@ -6,7 +6,7 @@ #include #include #include -#include +#include #include #include #include --- linux-azure-5.8-5.8.0.orig/tools/testing/selftests/net/Makefile +++ linux-azure-5.8-5.8.0/tools/testing/selftests/net/Makefile @@ -10,7 +10,7 @@ TEST_PROGS += udpgso_bench.sh fib_rule_tests.sh msg_zerocopy.sh psock_snd.sh TEST_PROGS += udpgro_bench.sh udpgro.sh test_vxlan_under_vrf.sh reuseport_addr_any.sh TEST_PROGS += test_vxlan_fdb_changelink.sh so_txtime.sh ipv6_flowlabel.sh -TEST_PROGS += tcp_fastopen_backup_key.sh fcnal-test.sh l2tp.sh traceroute.sh +TEST_PROGS += tcp_fastopen_backup_key.sh fcnal-test.sh traceroute.sh TEST_PROGS += fin_ack_lat.sh fib_nexthop_multiprefix.sh fib_nexthops.sh TEST_PROGS += altnames.sh icmp_redirect.sh ip6_gre_headroom.sh TEST_PROGS += route_localnet.sh @@ -30,6 +30,8 @@ TEST_GEN_PROGS = reuseport_bpf reuseport_bpf_cpu reuseport_bpf_numa TEST_GEN_PROGS += reuseport_dualstack reuseaddr_conflict tls +TEST_FILES := settings + KSFT_KHDR_INSTALL := 1 include ../lib.mk --- linux-azure-5.8-5.8.0.orig/tools/testing/selftests/net/config +++ linux-azure-5.8-5.8.0/tools/testing/selftests/net/config @@ -31,3 +31,4 @@ CONFIG_NET_SCH_NETEM=y CONFIG_TEST_BLACKHOLE_DEV=m CONFIG_KALLSYMS=y +CONFIG_NET_FOU=m --- linux-azure-5.8-5.8.0.orig/tools/testing/selftests/net/fcnal-test.sh +++ linux-azure-5.8-5.8.0/tools/testing/selftests/net/fcnal-test.sh @@ -256,6 +256,28 @@ fi } +setup_cmd_nsc() +{ + local cmd="$*" + local rc + + run_cmd_nsc ${cmd} + rc=$? + if [ $rc -ne 0 ]; then + # show user the command if not done so already + if [ "$VERBOSE" = "0" ]; then + echo "setup command: $cmd" + fi + echo "failed. stopping tests" + if [ "${PAUSE_ON_FAIL}" = "yes" ]; then + echo + echo "hit enter to continue" + read a + fi + exit $rc + fi +} + # set sysctl values in NS-A set_sysctl() { @@ -471,6 +493,36 @@ sleep 1 } +setup_lla_only() +{ + # make sure we are starting with a clean slate + kill_procs + cleanup 2>/dev/null + + log_debug "Configuring network namespaces" + set -e + + create_ns ${NSA} "-" "-" + create_ns ${NSB} "-" "-" + create_ns ${NSC} "-" "-" + connect_ns ${NSA} ${NSA_DEV} "-" "-" \ + ${NSB} ${NSB_DEV} "-" "-" + connect_ns ${NSA} ${NSA_DEV2} "-" "-" \ + ${NSC} ${NSC_DEV} "-" "-" + + NSA_LINKIP6=$(get_linklocal ${NSA} ${NSA_DEV}) + NSB_LINKIP6=$(get_linklocal ${NSB} ${NSB_DEV}) + NSC_LINKIP6=$(get_linklocal ${NSC} ${NSC_DEV}) + + create_vrf ${NSA} ${VRF} ${VRF_TABLE} "-" "-" + ip -netns ${NSA} link set dev ${NSA_DEV} vrf ${VRF} + ip -netns ${NSA} link set dev ${NSA_DEV2} vrf ${VRF} + + set +e + + sleep 1 +} + ################################################################################ # IPv4 @@ -3787,10 +3839,53 @@ setup_cmd_nsb ip li del vlan100 2>/dev/null } +# VRF only. +# ns-A device is connected to both ns-B and ns-C on a single VRF but only has +# LLA on the interfaces +use_case_ping_lla_multi() +{ + setup_lla_only + # only want reply from ns-A + setup_cmd_nsb sysctl -qw net.ipv6.icmp.echo_ignore_multicast=1 + setup_cmd_nsc sysctl -qw net.ipv6.icmp.echo_ignore_multicast=1 + + log_start + run_cmd_nsb ping -c1 -w1 ${MCAST}%${NSB_DEV} + log_test_addr ${MCAST}%${NSB_DEV} $? 0 "Pre cycle, ping out ns-B" + + run_cmd_nsc ping -c1 -w1 ${MCAST}%${NSC_DEV} + log_test_addr ${MCAST}%${NSC_DEV} $? 0 "Pre cycle, ping out ns-C" + + # cycle/flap the first ns-A interface + setup_cmd ip link set ${NSA_DEV} down + setup_cmd ip link set ${NSA_DEV} up + sleep 1 + + log_start + run_cmd_nsb ping -c1 -w1 ${MCAST}%${NSB_DEV} + log_test_addr ${MCAST}%${NSB_DEV} $? 0 "Post cycle ${NSA} ${NSA_DEV}, ping out ns-B" + run_cmd_nsc ping -c1 -w1 ${MCAST}%${NSC_DEV} + log_test_addr ${MCAST}%${NSC_DEV} $? 0 "Post cycle ${NSA} ${NSA_DEV}, ping out ns-C" + + # cycle/flap the second ns-A interface + setup_cmd ip link set ${NSA_DEV2} down + setup_cmd ip link set ${NSA_DEV2} up + sleep 1 + + log_start + run_cmd_nsb ping -c1 -w1 ${MCAST}%${NSB_DEV} + log_test_addr ${MCAST}%${NSB_DEV} $? 0 "Post cycle ${NSA} ${NSA_DEV2}, ping out ns-B" + run_cmd_nsc ping -c1 -w1 ${MCAST}%${NSC_DEV} + log_test_addr ${MCAST}%${NSC_DEV} $? 0 "Post cycle ${NSA} ${NSA_DEV2}, ping out ns-C" +} + use_cases() { log_section "Use cases" + log_subsection "Device enslaved to bridge" use_case_br + log_subsection "Ping LLA with multiple interfaces" + use_case_ping_lla_multi } ################################################################################ --- linux-azure-5.8-5.8.0.orig/tools/testing/selftests/net/fib_nexthops.sh +++ linux-azure-5.8-5.8.0/tools/testing/selftests/net/fib_nexthops.sh @@ -825,7 +825,7 @@ pid3=$! ip netns exec me ping -f 2001:db8:101::2 >/dev/null 2>&1 & pid4=$! - ip netns exec me mausezahn veth1 -B 2001:db8:101::2 -A 2001:db8:91::1 -c 0 -t tcp "dp=1-1023, flags=syn" >/dev/null 2>&1 & + ip netns exec me mausezahn -6 veth1 -B 2001:db8:101::2 -A 2001:db8:91::1 -c 0 -t tcp "dp=1-1023, flags=syn" >/dev/null 2>&1 & pid5=$! sleep 300 --- linux-azure-5.8-5.8.0.orig/tools/testing/selftests/net/fib_rule_tests.sh +++ linux-azure-5.8-5.8.0/tools/testing/selftests/net/fib_rule_tests.sh @@ -59,6 +59,8 @@ $IP address add $DEV_ADDR/24 dev dummy0 $IP -6 address add $DEV_ADDR6/64 dev dummy0 + ip netns exec testns sysctl -w net.ipv4.ip_forward=1 + set +e } --- linux-azure-5.8-5.8.0.orig/tools/testing/selftests/net/fib_tests.sh +++ linux-azure-5.8-5.8.0/tools/testing/selftests/net/fib_tests.sh @@ -449,6 +449,7 @@ $IP link add dummy1 type dummy $IP link set dummy1 address 52:54:00:6a:c7:5e $IP link set dev dummy1 up + $IP address add 192.0.2.1/24 dev dummy1 $NS_EXEC sysctl -qw net.ipv4.conf.all.rp_filter=1 $NS_EXEC sysctl -qw net.ipv4.conf.all.accept_local=1 $NS_EXEC sysctl -qw net.ipv4.conf.all.route_localnet=1 @@ -1055,7 +1056,6 @@ check_route6 "2001:db8:104::1 dev dummy2 proto kernel metric 260" log_test $? 0 "Set metric with peer route on local side" - log_test $? 0 "User specified metric on local address" check_route6 "2001:db8:104::2 dev dummy2 proto kernel metric 260" log_test $? 0 "Set metric with peer route on peer side" --- linux-azure-5.8-5.8.0.orig/tools/testing/selftests/net/forwarding/router_mpath_nh.sh +++ linux-azure-5.8-5.8.0/tools/testing/selftests/net/forwarding/router_mpath_nh.sh @@ -197,7 +197,7 @@ t0_rp12=$(link_stats_tx_packets_get $rp12) t0_rp13=$(link_stats_tx_packets_get $rp13) - ip vrf exec vrf-h1 $MZ -q -p 64 -A 192.0.2.2 -B 198.51.100.2 \ + ip vrf exec vrf-h1 $MZ $h1 -q -p 64 -A 192.0.2.2 -B 198.51.100.2 \ -d 1msec -t udp "sp=1024,dp=0-32768" t1_rp12=$(link_stats_tx_packets_get $rp12) --- linux-azure-5.8-5.8.0.orig/tools/testing/selftests/net/forwarding/router_multipath.sh +++ linux-azure-5.8-5.8.0/tools/testing/selftests/net/forwarding/router_multipath.sh @@ -178,7 +178,7 @@ t0_rp12=$(link_stats_tx_packets_get $rp12) t0_rp13=$(link_stats_tx_packets_get $rp13) - ip vrf exec vrf-h1 $MZ -q -p 64 -A 192.0.2.2 -B 198.51.100.2 \ + ip vrf exec vrf-h1 $MZ $h1 -q -p 64 -A 192.0.2.2 -B 198.51.100.2 \ -d 1msec -t udp "sp=1024,dp=0-32768" t1_rp12=$(link_stats_tx_packets_get $rp12) --- linux-azure-5.8-5.8.0.orig/tools/testing/selftests/net/forwarding/vxlan_asymmetric.sh +++ linux-azure-5.8-5.8.0/tools/testing/selftests/net/forwarding/vxlan_asymmetric.sh @@ -215,10 +215,16 @@ bridge fdb add 00:00:5e:00:01:01 dev br1 self local vlan 10 bridge fdb add 00:00:5e:00:01:01 dev br1 self local vlan 20 + + sysctl_set net.ipv4.conf.all.rp_filter 0 + sysctl_set net.ipv4.conf.vlan10-v.rp_filter 0 + sysctl_set net.ipv4.conf.vlan20-v.rp_filter 0 } switch_destroy() { + sysctl_restore net.ipv4.conf.all.rp_filter + bridge fdb del 00:00:5e:00:01:01 dev br1 self local vlan 20 bridge fdb del 00:00:5e:00:01:01 dev br1 self local vlan 10 @@ -359,6 +365,10 @@ bridge fdb add 00:00:5e:00:01:01 dev br1 self local vlan 10 bridge fdb add 00:00:5e:00:01:01 dev br1 self local vlan 20 + + sysctl_set net.ipv4.conf.all.rp_filter 0 + sysctl_set net.ipv4.conf.vlan10-v.rp_filter 0 + sysctl_set net.ipv4.conf.vlan20-v.rp_filter 0 } export -f ns_switch_create --- linux-azure-5.8-5.8.0.orig/tools/testing/selftests/net/forwarding/vxlan_symmetric.sh +++ linux-azure-5.8-5.8.0/tools/testing/selftests/net/forwarding/vxlan_symmetric.sh @@ -237,10 +237,16 @@ bridge fdb add 00:00:5e:00:01:01 dev br1 self local vlan 10 bridge fdb add 00:00:5e:00:01:01 dev br1 self local vlan 20 + + sysctl_set net.ipv4.conf.all.rp_filter 0 + sysctl_set net.ipv4.conf.vlan10-v.rp_filter 0 + sysctl_set net.ipv4.conf.vlan20-v.rp_filter 0 } switch_destroy() { + sysctl_restore net.ipv4.conf.all.rp_filter + bridge fdb del 00:00:5e:00:01:01 dev br1 self local vlan 20 bridge fdb del 00:00:5e:00:01:01 dev br1 self local vlan 10 @@ -402,6 +408,10 @@ bridge fdb add 00:00:5e:00:01:01 dev br1 self local vlan 10 bridge fdb add 00:00:5e:00:01:01 dev br1 self local vlan 20 + + sysctl_set net.ipv4.conf.all.rp_filter 0 + sysctl_set net.ipv4.conf.vlan10-v.rp_filter 0 + sysctl_set net.ipv4.conf.vlan20-v.rp_filter 0 } export -f ns_switch_create --- linux-azure-5.8-5.8.0.orig/tools/testing/selftests/net/icmp_redirect.sh +++ linux-azure-5.8-5.8.0/tools/testing/selftests/net/icmp_redirect.sh @@ -180,6 +180,8 @@ ;; r[12]) ip netns exec $ns sysctl -q -w net.ipv4.ip_forward=1 ip netns exec $ns sysctl -q -w net.ipv4.conf.all.send_redirects=1 + ip netns exec $ns sysctl -q -w net.ipv4.conf.default.rp_filter=0 + ip netns exec $ns sysctl -q -w net.ipv4.conf.all.rp_filter=0 ip netns exec $ns sysctl -q -w net.ipv6.conf.all.forwarding=1 ip netns exec $ns sysctl -q -w net.ipv6.route.mtu_expires=10 --- linux-azure-5.8-5.8.0.orig/tools/testing/selftests/net/mptcp/mptcp_connect.sh +++ linux-azure-5.8-5.8.0/tools/testing/selftests/net/mptcp/mptcp_connect.sh @@ -421,9 +421,9 @@ duration=$(printf "(duration %05sms)" $duration) if [ ${rets} -ne 0 ] || [ ${retc} -ne 0 ]; then echo "$duration [ FAIL ] client exit code $retc, server $rets" 1>&2 - echo "\nnetns ${listener_ns} socket stat for $port:" 1>&2 + echo -e "\nnetns ${listener_ns} socket stat for ${port}:" 1>&2 ip netns exec ${listener_ns} ss -nita 1>&2 -o "sport = :$port" - echo "\nnetns ${connector_ns} socket stat for $port:" 1>&2 + echo -e "\nnetns ${connector_ns} socket stat for ${port}:" 1>&2 ip netns exec ${connector_ns} ss -nita 1>&2 -o "dport = :$port" cat "$capout" --- linux-azure-5.8-5.8.0.orig/tools/testing/selftests/net/mptcp/mptcp_join.sh +++ linux-azure-5.8-5.8.0/tools/testing/selftests/net/mptcp/mptcp_join.sh @@ -167,9 +167,9 @@ if [ ${rets} -ne 0 ] || [ ${retc} -ne 0 ]; then echo " client exit code $retc, server $rets" 1>&2 - echo "\nnetns ${listener_ns} socket stat for $port:" 1>&2 + echo -e "\nnetns ${listener_ns} socket stat for ${port}:" 1>&2 ip netns exec ${listener_ns} ss -nita 1>&2 -o "sport = :$port" - echo "\nnetns ${connector_ns} socket stat for $port:" 1>&2 + echo -e "\nnetns ${connector_ns} socket stat for ${port}:" 1>&2 ip netns exec ${connector_ns} ss -nita 1>&2 -o "dport = :$port" cat "$capout" --- linux-azure-5.8-5.8.0.orig/tools/testing/selftests/net/msg_zerocopy.c +++ linux-azure-5.8-5.8.0/tools/testing/selftests/net/msg_zerocopy.c @@ -125,9 +125,8 @@ CPU_ZERO(&mask); CPU_SET(cpu, &mask); if (sched_setaffinity(0, sizeof(mask), &mask)) - error(1, 0, "setaffinity %d", cpu); - - if (cfg_verbose) + fprintf(stderr, "cpu: unable to pin, may increase variance.\n"); + else if (cfg_verbose) fprintf(stderr, "cpu: %u\n", cpu); return 0; --- linux-azure-5.8-5.8.0.orig/tools/testing/selftests/net/pmtu.sh +++ linux-azure-5.8-5.8.0/tools/testing/selftests/net/pmtu.sh @@ -123,7 +123,15 @@ # - list_flush_ipv6_exception # Using the same topology as in pmtu_ipv6, create exceptions, and check # they are shown when listing exception caches, gone after flushing them - +# +# - pmtu_ipv4_route_change +# Use the same topology as in pmtu_ipv4, but issue a route replacement +# command and delete the corresponding device afterward. This tests for +# proper cleanup of the PMTU exceptions by the route replacement path. +# Device unregistration should complete successfully +# +# - pmtu_ipv6_route_change +# Same as above but with IPv6 # Kselftest framework requirement - SKIP code is 4. ksft_skip=4 @@ -169,7 +177,9 @@ cleanup_ipv4_exception ipv4: cleanup of cached exceptions 1 cleanup_ipv6_exception ipv6: cleanup of cached exceptions 1 list_flush_ipv4_exception ipv4: list and flush cached exceptions 1 - list_flush_ipv6_exception ipv6: list and flush cached exceptions 1" + list_flush_ipv6_exception ipv6: list and flush cached exceptions 1 + pmtu_ipv4_route_change ipv4: PMTU exception w/route replace 1 + pmtu_ipv6_route_change ipv6: PMTU exception w/route replace 1" NS_A="ns-A" NS_B="ns-B" @@ -1438,6 +1448,63 @@ return ${fail} } +test_pmtu_ipvX_route_change() { + family=${1} + + setup namespaces routing || return 2 + trace "${ns_a}" veth_A-R1 "${ns_r1}" veth_R1-A \ + "${ns_r1}" veth_R1-B "${ns_b}" veth_B-R1 \ + "${ns_a}" veth_A-R2 "${ns_r2}" veth_R2-A \ + "${ns_r2}" veth_R2-B "${ns_b}" veth_B-R2 + + if [ ${family} -eq 4 ]; then + ping=ping + dst1="${prefix4}.${b_r1}.1" + dst2="${prefix4}.${b_r2}.1" + gw="${prefix4}.${a_r1}.2" + else + ping=${ping6} + dst1="${prefix6}:${b_r1}::1" + dst2="${prefix6}:${b_r2}::1" + gw="${prefix6}:${a_r1}::2" + fi + + # Set up initial MTU values + mtu "${ns_a}" veth_A-R1 2000 + mtu "${ns_r1}" veth_R1-A 2000 + mtu "${ns_r1}" veth_R1-B 1400 + mtu "${ns_b}" veth_B-R1 1400 + + mtu "${ns_a}" veth_A-R2 2000 + mtu "${ns_r2}" veth_R2-A 2000 + mtu "${ns_r2}" veth_R2-B 1500 + mtu "${ns_b}" veth_B-R2 1500 + + # Create route exceptions + run_cmd ${ns_a} ${ping} -q -M want -i 0.1 -w 1 -s 1800 ${dst1} + run_cmd ${ns_a} ${ping} -q -M want -i 0.1 -w 1 -s 1800 ${dst2} + + # Check that exceptions have been created with the correct PMTU + pmtu_1="$(route_get_dst_pmtu_from_exception "${ns_a}" ${dst1})" + check_pmtu_value "1400" "${pmtu_1}" "exceeding MTU" || return 1 + pmtu_2="$(route_get_dst_pmtu_from_exception "${ns_a}" ${dst2})" + check_pmtu_value "1500" "${pmtu_2}" "exceeding MTU" || return 1 + + # Replace the route from A to R1 + run_cmd ${ns_a} ip route change default via ${gw} + + # Delete the device in A + run_cmd ${ns_a} ip link del "veth_A-R1" +} + +test_pmtu_ipv4_route_change() { + test_pmtu_ipvX_route_change 4 +} + +test_pmtu_ipv6_route_change() { + test_pmtu_ipvX_route_change 6 +} + usage() { echo echo "$0 [OPTIONS] [TEST]..." --- linux-azure-5.8-5.8.0.orig/tools/testing/selftests/net/psock_snd.sh +++ linux-azure-5.8-5.8.0/tools/testing/selftests/net/psock_snd.sh @@ -45,7 +45,7 @@ echo "raw csum_off" ./in_netns.sh ./psock_snd -v -c -echo "raw csum_off with bad offset (fails)" +echo "raw csum_off with bad offset (expected to fail)" (! ./in_netns.sh ./psock_snd -v -c -C) @@ -57,7 +57,7 @@ echo "raw mtu size" ./in_netns.sh ./psock_snd -l "${mss}" -echo "raw mtu size + 1 (fails)" +echo "raw mtu size + 1 (expected to fail)" (! ./in_netns.sh ./psock_snd -l "${mss_exceeds}") # fails due to ARPHRD_ETHER check in packet_extra_vlan_len_allowed @@ -65,19 +65,19 @@ # echo "raw vlan mtu size" # ./in_netns.sh ./psock_snd -V -l "${mss}" -echo "raw vlan mtu size + 1 (fails)" +echo "raw vlan mtu size + 1 (expected to fail)" (! ./in_netns.sh ./psock_snd -V -l "${mss_exceeds}") echo "dgram mtu size" ./in_netns.sh ./psock_snd -d -l "${mss}" -echo "dgram mtu size + 1 (fails)" +echo "dgram mtu size + 1 (expected to fail)" (! ./in_netns.sh ./psock_snd -d -l "${mss_exceeds}") -echo "raw truncate hlen (fails: does not arrive)" +echo "raw truncate hlen (expected to fail: does not arrive)" (! ./in_netns.sh ./psock_snd -t "$((${vnet_hlen} + ${eth_hlen}))") -echo "raw truncate hlen - 1 (fails: EINVAL)" +echo "raw truncate hlen - 1 (expected to fail: EINVAL)" (! ./in_netns.sh ./psock_snd -t "$((${vnet_hlen} + ${eth_hlen} - 1))") @@ -86,13 +86,13 @@ echo "raw gso min size" ./in_netns.sh ./psock_snd -v -c -g -l "${mss_exceeds}" -echo "raw gso min size - 1 (fails)" +echo "raw gso min size - 1 (expected to fail)" (! ./in_netns.sh ./psock_snd -v -c -g -l "${mss}") echo "raw gso max size" ./in_netns.sh ./psock_snd -v -c -g -l "${max_mss}" -echo "raw gso max size + 1 (fails)" +echo "raw gso max size + 1 (expected to fail)" (! ./in_netns.sh ./psock_snd -v -c -g -l "${max_mss_exceeds}") echo "OK. All tests passed" --- linux-azure-5.8-5.8.0.orig/tools/testing/selftests/net/rtnetlink.sh +++ linux-azure-5.8-5.8.0/tools/testing/selftests/net/rtnetlink.sh @@ -5,7 +5,6 @@ # set -e devdummy="test-dummy0" -ret=0 # Kselftest framework requirement - SKIP code is 4. ksft_skip=4 @@ -66,7 +65,7 @@ devbr="test-br0" vlandev="testbr-vlan1" - ret=0 + local ret=0 ip link add name "$devbr" type bridge check_err $? @@ -113,7 +112,7 @@ rem=10.42.42.1 loc=10.0.0.1 - ret=0 + local ret=0 ip tunnel add $gredev mode gre remote $rem local $loc ttl 1 check_err $? ip link set $gredev up @@ -149,7 +148,7 @@ kci_test_tc() { dev=lo - ret=0 + local ret=0 tc qdisc add dev "$dev" root handle 1: htb check_err $? @@ -184,7 +183,7 @@ kci_test_polrouting() { - ret=0 + local ret=0 ip rule add fwmark 1 lookup 100 check_err $? ip route add local 0.0.0.0/0 dev lo table 100 @@ -207,7 +206,7 @@ { local hash_policy=$(sysctl -n net.ipv4.fib_multipath_hash_policy) - ret=0 + local ret=0 ip route get 127.0.0.1 > /dev/null check_err $? @@ -290,7 +289,7 @@ kci_test_addrlabel() { - ret=0 + local ret=0 ip addrlabel add prefix dead::/64 dev lo label 1 check_err $? @@ -330,7 +329,7 @@ kci_test_ifalias() { - ret=0 + local ret=0 namewant=$(uuidgen) syspathname="/sys/class/net/$devdummy/ifalias" @@ -385,7 +384,7 @@ kci_test_vrf() { vrfname="test-vrf" - ret=0 + local ret=0 ip link show type vrf 2>/dev/null if [ $? -ne 0 ]; then @@ -425,7 +424,7 @@ kci_test_encap_vxlan() { - ret=0 + local ret=0 vxlan="test-vxlan0" vlan="test-vlan0" testns="$1" @@ -511,7 +510,7 @@ kci_test_encap_fou() { - ret=0 + local ret=0 name="test-fou" testns="$1" @@ -521,6 +520,11 @@ return $ksft_skip fi + if ! /sbin/modprobe -q -n fou; then + echo "SKIP: module fou is not found" + return $ksft_skip + fi + /sbin/modprobe -q fou ip -netns "$testns" fou add port 7777 ipproto 47 2>/dev/null if [ $? -ne 0 ];then echo "FAIL: can't add fou port 7777, skipping test" @@ -548,7 +552,7 @@ kci_test_encap() { testns="testns" - ret=0 + local ret=0 ip netns add "$testns" if [ $? -ne 0 ]; then @@ -565,15 +569,18 @@ check_err $? kci_test_encap_vxlan "$testns" + check_err $? kci_test_encap_fou "$testns" + check_err $? ip netns del "$testns" + return $ret } kci_test_macsec() { msname="test_macsec0" - ret=0 + local ret=0 ip macsec help 2>&1 | grep -q "^Usage: ip macsec" if [ $? -ne 0 ]; then @@ -631,7 +638,7 @@ #------------------------------------------------------------------- kci_test_ipsec() { - ret=0 + local ret=0 algo="aead rfc4106(gcm(aes)) 0x3132333435363738393031323334353664636261 128" srcip=192.168.123.1 dstip=192.168.123.2 @@ -731,7 +738,7 @@ #------------------------------------------------------------------- kci_test_ipsec_offload() { - ret=0 + local ret=0 algo="aead rfc4106(gcm(aes)) 0x3132333435363738393031323334353664636261 128" srcip=192.168.123.3 dstip=192.168.123.4 @@ -841,7 +848,7 @@ { testns="testns" DEV_NS=gretap00 - ret=0 + local ret=0 ip netns add "$testns" if [ $? -ne 0 ]; then @@ -891,7 +898,7 @@ { testns="testns" DEV_NS=ip6gretap00 - ret=0 + local ret=0 ip netns add "$testns" if [ $? -ne 0 ]; then @@ -941,7 +948,7 @@ { testns="testns" DEV_NS=erspan00 - ret=0 + local ret=0 ip link help erspan 2>&1 | grep -q "^Usage:" if [ $? -ne 0 ];then @@ -1006,7 +1013,7 @@ { testns="testns" DEV_NS=ip6erspan00 - ret=0 + local ret=0 ip link help ip6erspan 2>&1 | grep -q "^Usage:" if [ $? -ne 0 ];then @@ -1077,7 +1084,7 @@ test_mac=de:ad:be:ef:13:37 localip="10.0.2.2" dstip="10.0.2.3" - ret=0 + local ret=0 bridge fdb help 2>&1 |grep -q 'bridge fdb get' if [ $? -ne 0 ];then @@ -1125,7 +1132,7 @@ dstmac=de:ad:be:ef:13:37 dstip=10.0.2.4 dstip6=dead::2 - ret=0 + local ret=0 ip neigh help 2>&1 |grep -q 'ip neigh get' if [ $? -ne 0 ];then @@ -1175,6 +1182,7 @@ kci_test_rtnl() { + local ret=0 kci_add_dummy if [ $ret -ne 0 ];then echo "FAIL: cannot add dummy interface" @@ -1182,27 +1190,48 @@ fi kci_test_polrouting + check_err $? kci_test_route_get + check_err $? kci_test_addrlft + check_err $? kci_test_promote_secondaries + check_err $? kci_test_tc + check_err $? kci_test_gre + check_err $? kci_test_gretap + check_err $? kci_test_ip6gretap + check_err $? kci_test_erspan + check_err $? kci_test_ip6erspan + check_err $? kci_test_bridge + check_err $? kci_test_addrlabel + check_err $? kci_test_ifalias + check_err $? kci_test_vrf + check_err $? kci_test_encap + check_err $? kci_test_macsec + check_err $? kci_test_ipsec + check_err $? kci_test_ipsec_offload + check_err $? kci_test_fdb_get + check_err $? kci_test_neigh_get + check_err $? kci_del_dummy + return $ret } #check for needed privileges @@ -1221,4 +1250,4 @@ kci_test_rtnl -exit $ret +exit $? --- linux-azure-5.8-5.8.0.orig/tools/testing/selftests/net/settings +++ linux-azure-5.8-5.8.0/tools/testing/selftests/net/settings @@ -0,0 +1 @@ +timeout=0 --- linux-azure-5.8-5.8.0.orig/tools/testing/selftests/net/socket.c +++ linux-azure-5.8-5.8.0/tools/testing/selftests/net/socket.c @@ -6,6 +6,7 @@ #include #include #include +#include struct socket_testcase { int domain; @@ -24,7 +25,10 @@ }; static struct socket_testcase tests[] = { - { AF_MAX, 0, 0, -EAFNOSUPPORT, 0 }, + /* libc might have a smaller value of AF_MAX than the kernel + * actually supports, so use INT_MAX instead. + */ + { INT_MAX, 0, 0, -EAFNOSUPPORT, 0 }, { AF_INET, SOCK_STREAM, IPPROTO_TCP, 0, 1 }, { AF_INET, SOCK_DGRAM, IPPROTO_TCP, -EPROTONOSUPPORT, 1 }, { AF_INET, SOCK_DGRAM, IPPROTO_UDP, 0, 1 }, --- linux-azure-5.8-5.8.0.orig/tools/testing/selftests/net/test_bpf.sh +++ linux-azure-5.8-5.8.0/tools/testing/selftests/net/test_bpf.sh @@ -2,7 +2,10 @@ # SPDX-License-Identifier: GPL-2.0 # Runs bpf test using test_bpf kernel module -if /sbin/modprobe -q test_bpf ; then +# Test whether test_bpf module exists +if ! /sbin/modprobe -q -n test_bpf; then + echo "SKIP: test_bpf module not found" +elif /sbin/modprobe -q test_bpf ; then /sbin/modprobe -q -r test_bpf; echo "test_bpf: ok"; else --- linux-azure-5.8-5.8.0.orig/tools/testing/selftests/net/test_vxlan_under_vrf.sh +++ linux-azure-5.8-5.8.0/tools/testing/selftests/net/test_vxlan_under_vrf.sh @@ -50,7 +50,7 @@ ip link del veth-tap 2>/dev/null || true for ns in hv-1 hv-2 vm-1 vm-2; do - ip netns del $ns || true + ip netns del $ns 2>/dev/null || true done } @@ -125,5 +125,8 @@ ip -netns hv-2 link set veth0 up echo -n "Check VM connectivity through VXLAN (underlay in a VRF) " -ip netns exec vm-1 ping -c 1 -W 1 10.0.0.2 &> /dev/null || (echo "[FAIL]"; false) -echo "[ OK ]" +if ! ip netns exec vm-1 ping -c 1 -W 1 10.0.0.2 &> /dev/null; then + echo "[XFAIL]" +else + echo "[ OK ]" +fi --- linux-azure-5.8-5.8.0.orig/tools/testing/selftests/net/txtimestamp.c +++ linux-azure-5.8-5.8.0/tools/testing/selftests/net/txtimestamp.c @@ -26,6 +26,7 @@ #include #include #include +#include #include #include #include @@ -34,7 +35,6 @@ #include #include #include -#include #include #include #include @@ -493,12 +493,12 @@ total_len = cfg_payload_len; if (cfg_use_pf_packet || cfg_proto == SOCK_RAW) { total_len += sizeof(struct udphdr); - if (cfg_use_pf_packet || cfg_ipproto == IPPROTO_RAW) + if (cfg_use_pf_packet || cfg_ipproto == IPPROTO_RAW) { if (family == PF_INET) total_len += sizeof(struct iphdr); else total_len += sizeof(struct ipv6hdr); - + } /* special case, only rawv6_sendmsg: * pass proto in sin6_port if not connected * also see ANK comment in net/ipv4/raw.c --- linux-azure-5.8-5.8.0.orig/tools/testing/selftests/net/udpgro.sh +++ linux-azure-5.8-5.8.0/tools/testing/selftests/net/udpgro.sh @@ -5,6 +5,14 @@ readonly PEER_NS="ns-peer-$(mktemp -u XXXXXX)" +# set global exit status, but never reset nonzero one. +check_err() +{ + if [ $ret -eq 0 ]; then + ret=$1 + fi +} + cleanup() { local -r jobs="$(jobs -p)" local -r ns="$(ip netns list|grep $PEER_NS)" @@ -44,7 +52,9 @@ # Hack: let bg programs complete the startup sleep 0.1 ./udpgso_bench_tx ${tx_args} + ret=$? wait $(jobs -p) + return $ret } run_test() { @@ -87,8 +97,10 @@ sleep 0.1 ./udpgso_bench_tx ${tx_args} + ret=$? kill -INT $pid wait $(jobs -p) + return $ret } run_one_2sock() { @@ -110,7 +122,9 @@ sleep 0.1 # first UDP GSO socket should be closed at this point ./udpgso_bench_tx ${tx_args} + ret=$? wait $(jobs -p) + return $ret } run_nat_test() { @@ -131,36 +145,54 @@ local -r core_args="-l 4" local -r ipv4_args="${core_args} -4 -D 192.168.1.1" local -r ipv6_args="${core_args} -6 -D 2001:db8::1" + ret=0 echo "ipv4" run_test "no GRO" "${ipv4_args} -M 10 -s 1400" "-4 -n 10 -l 1400" + check_err $? # explicitly check we are not receiving UDP_SEGMENT cmsg (-S -1) # when GRO does not take place run_test "no GRO chk cmsg" "${ipv4_args} -M 10 -s 1400" "-4 -n 10 -l 1400 -S -1" + check_err $? # the GSO packets are aggregated because: # * veth schedule napi after each xmit # * segmentation happens in BH context, veth napi poll is delayed after # the transmission of the last segment run_test "GRO" "${ipv4_args} -M 1 -s 14720 -S 0 " "-4 -n 1 -l 14720" + check_err $? run_test "GRO chk cmsg" "${ipv4_args} -M 1 -s 14720 -S 0 " "-4 -n 1 -l 14720 -S 1472" + check_err $? run_test "GRO with custom segment size" "${ipv4_args} -M 1 -s 14720 -S 500 " "-4 -n 1 -l 14720" + check_err $? run_test "GRO with custom segment size cmsg" "${ipv4_args} -M 1 -s 14720 -S 500 " "-4 -n 1 -l 14720 -S 500" + check_err $? run_nat_test "bad GRO lookup" "${ipv4_args} -M 1 -s 14720 -S 0" "-n 10 -l 1472" + check_err $? run_2sock_test "multiple GRO socks" "${ipv4_args} -M 1 -s 14720 -S 0 " "-4 -n 1 -l 14720 -S 1472" + check_err $? echo "ipv6" run_test "no GRO" "${ipv6_args} -M 10 -s 1400" "-n 10 -l 1400" + check_err $? run_test "no GRO chk cmsg" "${ipv6_args} -M 10 -s 1400" "-n 10 -l 1400 -S -1" + check_err $? run_test "GRO" "${ipv6_args} -M 1 -s 14520 -S 0" "-n 1 -l 14520" + check_err $? run_test "GRO chk cmsg" "${ipv6_args} -M 1 -s 14520 -S 0" "-n 1 -l 14520 -S 1452" + check_err $? run_test "GRO with custom segment size" "${ipv6_args} -M 1 -s 14520 -S 500" "-n 1 -l 14520" + check_err $? run_test "GRO with custom segment size cmsg" "${ipv6_args} -M 1 -s 14520 -S 500" "-n 1 -l 14520 -S 500" + check_err $? run_nat_test "bad GRO lookup" "${ipv6_args} -M 1 -s 14520 -S 0" "-n 10 -l 1452" + check_err $? run_2sock_test "multiple GRO socks" "${ipv6_args} -M 1 -s 14520 -S 0 " "-n 1 -l 14520 -S 1452" + check_err $? + return $ret } if [ ! -f ../bpf/xdp_dummy.o ]; then @@ -180,3 +212,5 @@ shift run_one_2sock $@ fi + +exit $? --- linux-azure-5.8-5.8.0.orig/tools/testing/selftests/net/udpgso_bench_rx.c +++ linux-azure-5.8-5.8.0/tools/testing/selftests/net/udpgso_bench_rx.c @@ -113,6 +113,9 @@ interrupted = true; break; } + + /* no events and more time to wait, do poll again */ + continue; } if (pfd.revents != POLLIN) error(1, errno, "poll: 0x%x expected 0x%x\n", --- linux-azure-5.8-5.8.0.orig/tools/testing/selftests/net/xfrm_policy.sh +++ linux-azure-5.8-5.8.0/tools/testing/selftests/net/xfrm_policy.sh @@ -202,7 +202,7 @@ # 1: iptables -m policy rule count != 0 rval=$1 ip=$2 - lret=0 + local lret=0 ip netns exec ns1 ping -q -c 1 10.0.2.$ip > /dev/null @@ -287,6 +287,47 @@ return 0 } +# insert non-overlapping policies in a random order and check that +# all of them can be fetched using the traffic selectors. +check_random_order() +{ + local ns=$1 + local log=$2 + + for i in $(seq 100); do + ip -net $ns xfrm policy flush + for j in $(seq 0 16 255 | sort -R); do + ip -net $ns xfrm policy add dst $j.0.0.0/24 dir out priority 10 action allow + done + for j in $(seq 0 16 255); do + if ! ip -net $ns xfrm policy get dst $j.0.0.0/24 dir out > /dev/null; then + echo "FAIL: $log" 1>&2 + return 1 + fi + done + done + + for i in $(seq 100); do + ip -net $ns xfrm policy flush + for j in $(seq 0 16 255 | sort -R); do + local addr=$(printf "e000:0000:%02x00::/56" $j) + ip -net $ns xfrm policy add dst $addr dir out priority 10 action allow + done + for j in $(seq 0 16 255); do + local addr=$(printf "e000:0000:%02x00::/56" $j) + if ! ip -net $ns xfrm policy get dst $addr dir out > /dev/null; then + echo "FAIL: $log" 1>&2 + return 1 + fi + done + done + + ip -net $ns xfrm policy flush + + echo "PASS: $log" + return 0 +} + #check for needed privileges if [ "$(id -u)" -ne 0 ];then echo "SKIP: Need root privileges" @@ -438,6 +479,8 @@ check_hthresh_repeat "policies with repeated htresh change" +check_random_order ns3 "policies inserted in random order" + for i in 1 2 3 4;do ip netns del ns$i;done exit $ret --- linux-azure-5.8-5.8.0.orig/tools/testing/selftests/netfilter/nft_conntrack_helper.sh +++ linux-azure-5.8-5.8.0/tools/testing/selftests/netfilter/nft_conntrack_helper.sh @@ -94,7 +94,13 @@ local message=$2 local port=$3 - ip netns exec ${netns} conntrack -L -p tcp --dport $port 2> /dev/null |grep -q 'helper=ftp' + if echo $message |grep -q 'ipv6';then + local family="ipv6" + else + local family="ipv4" + fi + + ip netns exec ${netns} conntrack -L -f $family -p tcp --dport $port 2> /dev/null |grep -q 'helper=ftp' if [ $? -ne 0 ] ; then echo "FAIL: ${netns} did not show attached helper $message" 1>&2 ret=1 @@ -111,8 +117,8 @@ sleep 3 | ip netns exec ${ns2} nc -w 2 -l -p $port > /dev/null & - sleep 1 sleep 1 | ip netns exec ${ns1} nc -w 2 10.0.1.2 $port > /dev/null & + sleep 1 check_for_helper "$ns1" "ip $msg" $port check_for_helper "$ns2" "ip $msg" $port @@ -128,8 +134,8 @@ sleep 3 | ip netns exec ${ns2} nc -w 2 -6 -l -p $port > /dev/null & - sleep 1 sleep 1 | ip netns exec ${ns1} nc -w 2 -6 dead:1::2 $port > /dev/null & + sleep 1 check_for_helper "$ns1" "ipv6 $msg" $port check_for_helper "$ns2" "ipv6 $msg" $port --- linux-azure-5.8-5.8.0.orig/tools/testing/selftests/pidfd/pidfd_open_test.c +++ linux-azure-5.8-5.8.0/tools/testing/selftests/pidfd/pidfd_open_test.c @@ -6,7 +6,6 @@ #include #include #include -#include #include #include #include --- linux-azure-5.8-5.8.0.orig/tools/testing/selftests/pidfd/pidfd_poll_test.c +++ linux-azure-5.8-5.8.0/tools/testing/selftests/pidfd/pidfd_poll_test.c @@ -3,7 +3,6 @@ #define _GNU_SOURCE #include #include -#include #include #include #include --- linux-azure-5.8-5.8.0.orig/tools/testing/selftests/powerpc/alignment/alignment_handler.c +++ linux-azure-5.8-5.8.0/tools/testing/selftests/powerpc/alignment/alignment_handler.c @@ -226,8 +226,12 @@ } rc = 0; - /* offset = 0 no alignment fault, so skip */ - for (offset = 1; offset < 16; offset++) { + /* + * offset = 0 is aligned but tests the workaround for the P9N + * DD2.1 vector CI load issue (see 5080332c2c89 "powerpc/64s: + * Add workaround for P9 vector CI load issue") + */ + for (offset = 0; offset < 16; offset++) { width = 16; /* vsx == 16 bytes */ r = 0; @@ -380,7 +384,6 @@ LOAD_DFORM_TEST(ldu); LOAD_XFORM_TEST(ldx); LOAD_XFORM_TEST(ldux); - LOAD_DFORM_TEST(lmw); STORE_DFORM_TEST(stb); STORE_XFORM_TEST(stbx); STORE_DFORM_TEST(stbu); @@ -399,7 +402,11 @@ STORE_XFORM_TEST(stdx); STORE_DFORM_TEST(stdu); STORE_XFORM_TEST(stdux); + +#ifdef __BIG_ENDIAN__ + LOAD_DFORM_TEST(lmw); STORE_DFORM_TEST(stmw); +#endif return rc; } --- linux-azure-5.8-5.8.0.orig/tools/testing/selftests/powerpc/benchmarks/context_switch.c +++ linux-azure-5.8-5.8.0/tools/testing/selftests/powerpc/benchmarks/context_switch.c @@ -19,6 +19,7 @@ #include #include #include +#include #include #include #include @@ -104,8 +105,9 @@ static void start_process_on(void *(*fn)(void *), void *arg, unsigned long cpu) { - int pid; - cpu_set_t cpuset; + int pid, ncpus; + cpu_set_t *cpuset; + size_t size; pid = fork(); if (pid == -1) { @@ -116,14 +118,23 @@ if (pid) return; - CPU_ZERO(&cpuset); - CPU_SET(cpu, &cpuset); + ncpus = get_nprocs(); + size = CPU_ALLOC_SIZE(ncpus); + cpuset = CPU_ALLOC(ncpus); + if (!cpuset) { + perror("malloc"); + exit(1); + } + CPU_ZERO_S(size, cpuset); + CPU_SET_S(cpu, size, cpuset); - if (sched_setaffinity(0, sizeof(cpuset), &cpuset)) { + if (sched_setaffinity(0, size, cpuset)) { perror("sched_setaffinity"); + CPU_FREE(cpuset); exit(1); } + CPU_FREE(cpuset); fn(arg); exit(0); --- linux-azure-5.8-5.8.0.orig/tools/testing/selftests/powerpc/copyloops/Makefile +++ linux-azure-5.8-5.8.0/tools/testing/selftests/powerpc/copyloops/Makefile @@ -12,7 +12,7 @@ TEST_GEN_PROGS := copyuser_64_t0 copyuser_64_t1 copyuser_64_t2 \ copyuser_p7_t0 copyuser_p7_t1 \ memcpy_64_t0 memcpy_64_t1 memcpy_64_t2 \ - memcpy_p7_t0 memcpy_p7_t1 memcpy_mcsafe_64 \ + memcpy_p7_t0 memcpy_p7_t1 copy_mc_64 \ copyuser_64_exc_t0 copyuser_64_exc_t1 copyuser_64_exc_t2 EXTRA_SOURCES := validate.c ../harness.c stubs.S @@ -45,9 +45,9 @@ -D SELFTEST_CASE=$(subst memcpy_p7_t,,$(notdir $@)) \ -o $@ $^ -$(OUTPUT)/memcpy_mcsafe_64: memcpy_mcsafe_64.S $(EXTRA_SOURCES) +$(OUTPUT)/copy_mc_64: copy_mc_64.S $(EXTRA_SOURCES) $(CC) $(CPPFLAGS) $(CFLAGS) \ - -D COPY_LOOP=test_memcpy_mcsafe \ + -D COPY_LOOP=test_copy_mc_generic \ -o $@ $^ $(OUTPUT)/copyuser_64_exc_t%: copyuser_64.S exc_validate.c ../harness.c \ --- linux-azure-5.8-5.8.0.orig/tools/testing/selftests/powerpc/copyloops/copy_mc_64.S +++ linux-azure-5.8-5.8.0/tools/testing/selftests/powerpc/copyloops/copy_mc_64.S @@ -0,0 +1,242 @@ +/* SPDX-License-Identifier: GPL-2.0 */ +/* + * Copyright (C) IBM Corporation, 2011 + * Derived from copyuser_power7.s by Anton Blanchard + * Author - Balbir Singh + */ +#include +#include +#include + + .macro err1 +100: + EX_TABLE(100b,.Ldo_err1) + .endm + + .macro err2 +200: + EX_TABLE(200b,.Ldo_err2) + .endm + + .macro err3 +300: EX_TABLE(300b,.Ldone) + .endm + +.Ldo_err2: + ld r22,STK_REG(R22)(r1) + ld r21,STK_REG(R21)(r1) + ld r20,STK_REG(R20)(r1) + ld r19,STK_REG(R19)(r1) + ld r18,STK_REG(R18)(r1) + ld r17,STK_REG(R17)(r1) + ld r16,STK_REG(R16)(r1) + ld r15,STK_REG(R15)(r1) + ld r14,STK_REG(R14)(r1) + addi r1,r1,STACKFRAMESIZE +.Ldo_err1: + /* Do a byte by byte copy to get the exact remaining size */ + mtctr r7 +46: +err3; lbz r0,0(r4) + addi r4,r4,1 +err3; stb r0,0(r3) + addi r3,r3,1 + bdnz 46b + li r3,0 + blr + +.Ldone: + mfctr r3 + blr + + +_GLOBAL(copy_mc_generic) + mr r7,r5 + cmpldi r5,16 + blt .Lshort_copy + +.Lcopy: + /* Get the source 8B aligned */ + neg r6,r4 + mtocrf 0x01,r6 + clrldi r6,r6,(64-3) + + bf cr7*4+3,1f +err1; lbz r0,0(r4) + addi r4,r4,1 +err1; stb r0,0(r3) + addi r3,r3,1 + subi r7,r7,1 + +1: bf cr7*4+2,2f +err1; lhz r0,0(r4) + addi r4,r4,2 +err1; sth r0,0(r3) + addi r3,r3,2 + subi r7,r7,2 + +2: bf cr7*4+1,3f +err1; lwz r0,0(r4) + addi r4,r4,4 +err1; stw r0,0(r3) + addi r3,r3,4 + subi r7,r7,4 + +3: sub r5,r5,r6 + cmpldi r5,128 + + mflr r0 + stdu r1,-STACKFRAMESIZE(r1) + std r14,STK_REG(R14)(r1) + std r15,STK_REG(R15)(r1) + std r16,STK_REG(R16)(r1) + std r17,STK_REG(R17)(r1) + std r18,STK_REG(R18)(r1) + std r19,STK_REG(R19)(r1) + std r20,STK_REG(R20)(r1) + std r21,STK_REG(R21)(r1) + std r22,STK_REG(R22)(r1) + std r0,STACKFRAMESIZE+16(r1) + + blt 5f + srdi r6,r5,7 + mtctr r6 + + /* Now do cacheline (128B) sized loads and stores. */ + .align 5 +4: +err2; ld r0,0(r4) +err2; ld r6,8(r4) +err2; ld r8,16(r4) +err2; ld r9,24(r4) +err2; ld r10,32(r4) +err2; ld r11,40(r4) +err2; ld r12,48(r4) +err2; ld r14,56(r4) +err2; ld r15,64(r4) +err2; ld r16,72(r4) +err2; ld r17,80(r4) +err2; ld r18,88(r4) +err2; ld r19,96(r4) +err2; ld r20,104(r4) +err2; ld r21,112(r4) +err2; ld r22,120(r4) + addi r4,r4,128 +err2; std r0,0(r3) +err2; std r6,8(r3) +err2; std r8,16(r3) +err2; std r9,24(r3) +err2; std r10,32(r3) +err2; std r11,40(r3) +err2; std r12,48(r3) +err2; std r14,56(r3) +err2; std r15,64(r3) +err2; std r16,72(r3) +err2; std r17,80(r3) +err2; std r18,88(r3) +err2; std r19,96(r3) +err2; std r20,104(r3) +err2; std r21,112(r3) +err2; std r22,120(r3) + addi r3,r3,128 + subi r7,r7,128 + bdnz 4b + + clrldi r5,r5,(64-7) + + /* Up to 127B to go */ +5: srdi r6,r5,4 + mtocrf 0x01,r6 + +6: bf cr7*4+1,7f +err2; ld r0,0(r4) +err2; ld r6,8(r4) +err2; ld r8,16(r4) +err2; ld r9,24(r4) +err2; ld r10,32(r4) +err2; ld r11,40(r4) +err2; ld r12,48(r4) +err2; ld r14,56(r4) + addi r4,r4,64 +err2; std r0,0(r3) +err2; std r6,8(r3) +err2; std r8,16(r3) +err2; std r9,24(r3) +err2; std r10,32(r3) +err2; std r11,40(r3) +err2; std r12,48(r3) +err2; std r14,56(r3) + addi r3,r3,64 + subi r7,r7,64 + +7: ld r14,STK_REG(R14)(r1) + ld r15,STK_REG(R15)(r1) + ld r16,STK_REG(R16)(r1) + ld r17,STK_REG(R17)(r1) + ld r18,STK_REG(R18)(r1) + ld r19,STK_REG(R19)(r1) + ld r20,STK_REG(R20)(r1) + ld r21,STK_REG(R21)(r1) + ld r22,STK_REG(R22)(r1) + addi r1,r1,STACKFRAMESIZE + + /* Up to 63B to go */ + bf cr7*4+2,8f +err1; ld r0,0(r4) +err1; ld r6,8(r4) +err1; ld r8,16(r4) +err1; ld r9,24(r4) + addi r4,r4,32 +err1; std r0,0(r3) +err1; std r6,8(r3) +err1; std r8,16(r3) +err1; std r9,24(r3) + addi r3,r3,32 + subi r7,r7,32 + + /* Up to 31B to go */ +8: bf cr7*4+3,9f +err1; ld r0,0(r4) +err1; ld r6,8(r4) + addi r4,r4,16 +err1; std r0,0(r3) +err1; std r6,8(r3) + addi r3,r3,16 + subi r7,r7,16 + +9: clrldi r5,r5,(64-4) + + /* Up to 15B to go */ +.Lshort_copy: + mtocrf 0x01,r5 + bf cr7*4+0,12f +err1; lwz r0,0(r4) /* Less chance of a reject with word ops */ +err1; lwz r6,4(r4) + addi r4,r4,8 +err1; stw r0,0(r3) +err1; stw r6,4(r3) + addi r3,r3,8 + subi r7,r7,8 + +12: bf cr7*4+1,13f +err1; lwz r0,0(r4) + addi r4,r4,4 +err1; stw r0,0(r3) + addi r3,r3,4 + subi r7,r7,4 + +13: bf cr7*4+2,14f +err1; lhz r0,0(r4) + addi r4,r4,2 +err1; sth r0,0(r3) + addi r3,r3,2 + subi r7,r7,2 + +14: bf cr7*4+3,15f +err1; lbz r0,0(r4) +err1; stb r0,0(r3) + +15: li r3,0 + blr + +EXPORT_SYMBOL_GPL(copy_mc_generic); --- linux-azure-5.8-5.8.0.orig/tools/testing/selftests/powerpc/eeh/Makefile +++ linux-azure-5.8-5.8.0/tools/testing/selftests/powerpc/eeh/Makefile @@ -3,7 +3,7 @@ $(MAKE) -C ../ TEST_PROGS := eeh-basic.sh -TEST_FILES := eeh-functions.sh +TEST_FILES := eeh-functions.sh settings top_srcdir = ../../../../.. include ../../lib.mk --- linux-azure-5.8-5.8.0.orig/tools/testing/selftests/powerpc/eeh/eeh-basic.sh +++ linux-azure-5.8-5.8.0/tools/testing/selftests/powerpc/eeh/eeh-basic.sh @@ -1,17 +1,19 @@ #!/bin/sh # SPDX-License-Identifier: GPL-2.0-only +KSELFTESTS_SKIP=4 + . ./eeh-functions.sh if ! eeh_supported ; then echo "EEH not supported on this system, skipping" - exit 0; + exit $KSELFTESTS_SKIP; fi if [ ! -e "/sys/kernel/debug/powerpc/eeh_dev_check" ] && \ [ ! -e "/sys/kernel/debug/powerpc/eeh_dev_break" ] ; then echo "debugfs EEH testing files are missing. Is debugfs mounted?" - exit 1; + exit $KSELFTESTS_SKIP; fi pre_lspci=`mktemp` @@ -84,4 +86,5 @@ lspci | diff -u $pre_lspci - rm -f $pre_lspci -exit $failed +test "$failed" -eq 0 +exit $? --- linux-azure-5.8-5.8.0.orig/tools/testing/selftests/powerpc/eeh/eeh-functions.sh +++ linux-azure-5.8-5.8.0/tools/testing/selftests/powerpc/eeh/eeh-functions.sh @@ -5,12 +5,17 @@ local dev="$1" local path="/sys/bus/pci/devices/$dev/eeh_pe_state" - if ! [ -e "$path" ] ; then + # if a driver doesn't support the error handling callbacks then the + # device is recovered by removing and re-probing it. This causes the + # sysfs directory to disappear so read the PE state once and squash + # any potential error messages + local eeh_state="$(cat $path 2>/dev/null)" + if [ -z "$eeh_state" ]; then return 1; fi - local fw_state="$(cut -d' ' -f1 < $path)" - local sw_state="$(cut -d' ' -f2 < $path)" + local fw_state="$(echo $eeh_state | cut -d' ' -f1)" + local sw_state="$(echo $eeh_state | cut -d' ' -f2)" # If EEH_PE_ISOLATED or EEH_PE_RECOVERING are set then the PE is in an # error state or being recovered. Either way, not ok. --- linux-azure-5.8-5.8.0.orig/tools/testing/selftests/powerpc/eeh/settings +++ linux-azure-5.8-5.8.0/tools/testing/selftests/powerpc/eeh/settings @@ -0,0 +1 @@ +timeout=300 --- linux-azure-5.8-5.8.0.orig/tools/testing/selftests/powerpc/pmu/ebb/back_to_back_ebbs_test.c +++ linux-azure-5.8-5.8.0/tools/testing/selftests/powerpc/pmu/ebb/back_to_back_ebbs_test.c @@ -91,8 +91,6 @@ ebb_global_disable(); ebb_freeze_pmcs(); - count_pmc(1, sample_period); - dump_ebb_state(); event_close(&event); --- linux-azure-5.8-5.8.0.orig/tools/testing/selftests/powerpc/pmu/ebb/cycles_test.c +++ linux-azure-5.8-5.8.0/tools/testing/selftests/powerpc/pmu/ebb/cycles_test.c @@ -42,8 +42,6 @@ ebb_global_disable(); ebb_freeze_pmcs(); - count_pmc(1, sample_period); - dump_ebb_state(); event_close(&event); --- linux-azure-5.8-5.8.0.orig/tools/testing/selftests/powerpc/pmu/ebb/cycles_with_freeze_test.c +++ linux-azure-5.8-5.8.0/tools/testing/selftests/powerpc/pmu/ebb/cycles_with_freeze_test.c @@ -99,8 +99,6 @@ ebb_global_disable(); ebb_freeze_pmcs(); - count_pmc(1, sample_period); - dump_ebb_state(); printf("EBBs while frozen %d\n", ebbs_while_frozen); --- linux-azure-5.8-5.8.0.orig/tools/testing/selftests/powerpc/pmu/ebb/cycles_with_mmcr2_test.c +++ linux-azure-5.8-5.8.0/tools/testing/selftests/powerpc/pmu/ebb/cycles_with_mmcr2_test.c @@ -71,8 +71,6 @@ ebb_global_disable(); ebb_freeze_pmcs(); - count_pmc(1, sample_period); - dump_ebb_state(); event_close(&event); --- linux-azure-5.8-5.8.0.orig/tools/testing/selftests/powerpc/pmu/ebb/ebb.c +++ linux-azure-5.8-5.8.0/tools/testing/selftests/powerpc/pmu/ebb/ebb.c @@ -396,8 +396,6 @@ ebb_global_disable(); ebb_freeze_pmcs(); - count_pmc(1, sample_period); - dump_ebb_state(); event_close(&event); --- linux-azure-5.8-5.8.0.orig/tools/testing/selftests/powerpc/pmu/ebb/ebb_on_willing_child_test.c +++ linux-azure-5.8-5.8.0/tools/testing/selftests/powerpc/pmu/ebb/ebb_on_willing_child_test.c @@ -38,8 +38,6 @@ ebb_global_disable(); ebb_freeze_pmcs(); - count_pmc(1, sample_period); - dump_ebb_state(); FAIL_IF(ebb_state.stats.ebb_count == 0); --- linux-azure-5.8-5.8.0.orig/tools/testing/selftests/powerpc/pmu/ebb/lost_exception_test.c +++ linux-azure-5.8-5.8.0/tools/testing/selftests/powerpc/pmu/ebb/lost_exception_test.c @@ -75,7 +75,6 @@ ebb_freeze_pmcs(); ebb_global_disable(); - count_pmc(4, sample_period); mtspr(SPRN_PMC4, 0xdead); dump_summary_ebb_state(); --- linux-azure-5.8-5.8.0.orig/tools/testing/selftests/powerpc/pmu/ebb/multi_counter_test.c +++ linux-azure-5.8-5.8.0/tools/testing/selftests/powerpc/pmu/ebb/multi_counter_test.c @@ -70,13 +70,6 @@ ebb_global_disable(); ebb_freeze_pmcs(); - count_pmc(1, sample_period); - count_pmc(2, sample_period); - count_pmc(3, sample_period); - count_pmc(4, sample_period); - count_pmc(5, sample_period); - count_pmc(6, sample_period); - dump_ebb_state(); for (i = 0; i < 6; i++) --- linux-azure-5.8-5.8.0.orig/tools/testing/selftests/powerpc/pmu/ebb/multi_ebb_procs_test.c +++ linux-azure-5.8-5.8.0/tools/testing/selftests/powerpc/pmu/ebb/multi_ebb_procs_test.c @@ -61,8 +61,6 @@ ebb_global_disable(); ebb_freeze_pmcs(); - count_pmc(1, sample_period); - dump_summary_ebb_state(); event_close(&event); --- linux-azure-5.8-5.8.0.orig/tools/testing/selftests/powerpc/pmu/ebb/pmae_handling_test.c +++ linux-azure-5.8-5.8.0/tools/testing/selftests/powerpc/pmu/ebb/pmae_handling_test.c @@ -82,8 +82,6 @@ ebb_global_disable(); ebb_freeze_pmcs(); - count_pmc(1, sample_period); - dump_ebb_state(); if (mmcr0_mismatch) --- linux-azure-5.8-5.8.0.orig/tools/testing/selftests/powerpc/pmu/ebb/pmc56_overflow_test.c +++ linux-azure-5.8-5.8.0/tools/testing/selftests/powerpc/pmu/ebb/pmc56_overflow_test.c @@ -76,8 +76,6 @@ ebb_global_disable(); ebb_freeze_pmcs(); - count_pmc(2, sample_period); - dump_ebb_state(); printf("PMC5/6 overflow %d\n", pmc56_overflowed); --- linux-azure-5.8-5.8.0.orig/tools/testing/selftests/powerpc/ptrace/Makefile +++ linux-azure-5.8-5.8.0/tools/testing/selftests/powerpc/ptrace/Makefile @@ -7,7 +7,7 @@ top_srcdir = ../../../../.. include ../../lib.mk -CFLAGS += -m64 -I../../../../../usr/include -I../tm -mhtm -fno-pie +CFLAGS += -m64 -I../../../../../usr/include -I../tm -mhtm -fno-pie -Wno-error=deprecated $(OUTPUT)/ptrace-pkey $(OUTPUT)/core-pkey: child.h $(OUTPUT)/ptrace-pkey $(OUTPUT)/core-pkey: LDLIBS += -pthread --- linux-azure-5.8-5.8.0.orig/tools/testing/selftests/powerpc/ptrace/ptrace-pkey.c +++ linux-azure-5.8-5.8.0/tools/testing/selftests/powerpc/ptrace/ptrace-pkey.c @@ -44,7 +44,7 @@ unsigned long amr2; /* AMR value that ptrace should refuse to write to the child. */ - unsigned long amr3; + unsigned long invalid_amr; /* IAMR value the parent expects to read from the child. */ unsigned long expected_iamr; @@ -57,8 +57,8 @@ * (even though they're valid ones) because userspace doesn't have * access to those registers. */ - unsigned long new_iamr; - unsigned long new_uamor; + unsigned long invalid_iamr; + unsigned long invalid_uamor; }; static int sys_pkey_alloc(unsigned long flags, unsigned long init_access_rights) @@ -66,11 +66,6 @@ return syscall(__NR_pkey_alloc, flags, init_access_rights); } -static int sys_pkey_free(int pkey) -{ - return syscall(__NR_pkey_free, pkey); -} - static int child(struct shared_info *info) { unsigned long reg; @@ -100,28 +95,32 @@ info->amr1 |= 3ul << pkeyshift(pkey1); info->amr2 |= 3ul << pkeyshift(pkey2); - info->amr3 |= info->amr2 | 3ul << pkeyshift(pkey3); + /* + * invalid amr value where we try to force write + * things which are deined by a uamor setting. + */ + info->invalid_amr = info->amr2 | (~0x0UL & ~info->expected_uamor); + /* + * if PKEY_DISABLE_EXECUTE succeeded we should update the expected_iamr + */ if (disable_execute) info->expected_iamr |= 1ul << pkeyshift(pkey1); else info->expected_iamr &= ~(1ul << pkeyshift(pkey1)); - info->expected_iamr &= ~(1ul << pkeyshift(pkey2) | 1ul << pkeyshift(pkey3)); - - info->expected_uamor |= 3ul << pkeyshift(pkey1) | - 3ul << pkeyshift(pkey2); - info->new_iamr |= 1ul << pkeyshift(pkey1) | 1ul << pkeyshift(pkey2); - info->new_uamor |= 3ul << pkeyshift(pkey1); + /* + * We allocated pkey2 and pkey 3 above. Clear the IAMR bits. + */ + info->expected_iamr &= ~(1ul << pkeyshift(pkey2)); + info->expected_iamr &= ~(1ul << pkeyshift(pkey3)); /* - * We won't use pkey3. We just want a plausible but invalid key to test - * whether ptrace will let us write to AMR bits we are not supposed to. - * - * This also tests whether the kernel restores the UAMOR permissions - * after a key is freed. + * Create an IAMR value different from expected value. + * Kernel will reject an IAMR and UAMOR change. */ - sys_pkey_free(pkey3); + info->invalid_iamr = info->expected_iamr | (1ul << pkeyshift(pkey1) | 1ul << pkeyshift(pkey2)); + info->invalid_uamor = info->expected_uamor & ~(0x3ul << pkeyshift(pkey1)); printf("%-30s AMR: %016lx pkey1: %d pkey2: %d pkey3: %d\n", user_write, info->amr1, pkey1, pkey2, pkey3); @@ -196,9 +195,9 @@ PARENT_SKIP_IF_UNSUPPORTED(ret, &info->child_sync); PARENT_FAIL_IF(ret, &info->child_sync); - info->amr1 = info->amr2 = info->amr3 = regs[0]; - info->expected_iamr = info->new_iamr = regs[1]; - info->expected_uamor = info->new_uamor = regs[2]; + info->amr1 = info->amr2 = regs[0]; + info->expected_iamr = regs[1]; + info->expected_uamor = regs[2]; /* Wake up child so that it can set itself up. */ ret = prod_child(&info->child_sync); @@ -234,10 +233,10 @@ return ret; /* Write invalid AMR value in child. */ - ret = ptrace_write_regs(pid, NT_PPC_PKEY, &info->amr3, 1); + ret = ptrace_write_regs(pid, NT_PPC_PKEY, &info->invalid_amr, 1); PARENT_FAIL_IF(ret, &info->child_sync); - printf("%-30s AMR: %016lx\n", ptrace_write_running, info->amr3); + printf("%-30s AMR: %016lx\n", ptrace_write_running, info->invalid_amr); /* Wake up child so that it can verify it didn't change. */ ret = prod_child(&info->child_sync); @@ -249,7 +248,7 @@ /* Try to write to IAMR. */ regs[0] = info->amr1; - regs[1] = info->new_iamr; + regs[1] = info->invalid_iamr; ret = ptrace_write_regs(pid, NT_PPC_PKEY, regs, 2); PARENT_FAIL_IF(!ret, &info->child_sync); @@ -257,7 +256,7 @@ ptrace_write_running, regs[0], regs[1]); /* Try to write to IAMR and UAMOR. */ - regs[2] = info->new_uamor; + regs[2] = info->invalid_uamor; ret = ptrace_write_regs(pid, NT_PPC_PKEY, regs, 3); PARENT_FAIL_IF(!ret, &info->child_sync); --- linux-azure-5.8-5.8.0.orig/tools/testing/selftests/powerpc/security/Makefile +++ linux-azure-5.8-5.8.0/tools/testing/selftests/powerpc/security/Makefile @@ -1,6 +1,6 @@ # SPDX-License-Identifier: GPL-2.0+ -TEST_GEN_PROGS := rfi_flush spectre_v2 +TEST_GEN_PROGS := rfi_flush entry_flush spectre_v2 top_srcdir = ../../../../.. CFLAGS += -I../../../../../usr/include --- linux-azure-5.8-5.8.0.orig/tools/testing/selftests/powerpc/security/entry_flush.c +++ linux-azure-5.8-5.8.0/tools/testing/selftests/powerpc/security/entry_flush.c @@ -0,0 +1,164 @@ +// SPDX-License-Identifier: GPL-2.0+ + +/* + * Copyright 2018 IBM Corporation. + */ + +#define __SANE_USERSPACE_TYPES__ + +#include +#include +#include +#include +#include +#include +#include +#include +#include "utils.h" + +#define CACHELINE_SIZE 128 + +struct perf_event_read { + __u64 nr; + __u64 l1d_misses; +}; + +static inline __u64 load(void *addr) +{ + __u64 tmp; + + asm volatile("ld %0,0(%1)" : "=r"(tmp) : "b"(addr)); + + return tmp; +} + +static void syscall_loop(char *p, unsigned long iterations, + unsigned long zero_size) +{ + for (unsigned long i = 0; i < iterations; i++) { + for (unsigned long j = 0; j < zero_size; j += CACHELINE_SIZE) + load(p + j); + getppid(); + } +} + +int entry_flush_test(void) +{ + char *p; + int repetitions = 10; + int fd, passes = 0, iter, rc = 0; + struct perf_event_read v; + __u64 l1d_misses_total = 0; + unsigned long iterations = 100000, zero_size = 24 * 1024; + unsigned long l1d_misses_expected; + int rfi_flush_orig; + int entry_flush, entry_flush_orig; + + SKIP_IF(geteuid() != 0); + + // The PMU event we use only works on Power7 or later + SKIP_IF(!have_hwcap(PPC_FEATURE_ARCH_2_06)); + + if (read_debugfs_file("powerpc/rfi_flush", &rfi_flush_orig) < 0) { + perror("Unable to read powerpc/rfi_flush debugfs file"); + SKIP_IF(1); + } + + if (read_debugfs_file("powerpc/entry_flush", &entry_flush_orig) < 0) { + perror("Unable to read powerpc/entry_flush debugfs file"); + SKIP_IF(1); + } + + if (rfi_flush_orig != 0) { + if (write_debugfs_file("powerpc/rfi_flush", 0) < 0) { + perror("error writing to powerpc/rfi_flush debugfs file"); + FAIL_IF(1); + } + } + + entry_flush = entry_flush_orig; + + fd = perf_event_open_counter(PERF_TYPE_RAW, /* L1d miss */ 0x400f0, -1); + FAIL_IF(fd < 0); + + p = (char *)memalign(zero_size, CACHELINE_SIZE); + + FAIL_IF(perf_event_enable(fd)); + + // disable L1 prefetching + set_dscr(1); + + iter = repetitions; + + /* + * We expect to see l1d miss for each cacheline access when entry_flush + * is set. Allow a small variation on this. + */ + l1d_misses_expected = iterations * (zero_size / CACHELINE_SIZE - 2); + +again: + FAIL_IF(perf_event_reset(fd)); + + syscall_loop(p, iterations, zero_size); + + FAIL_IF(read(fd, &v, sizeof(v)) != sizeof(v)); + + if (entry_flush && v.l1d_misses >= l1d_misses_expected) + passes++; + else if (!entry_flush && v.l1d_misses < (l1d_misses_expected / 2)) + passes++; + + l1d_misses_total += v.l1d_misses; + + while (--iter) + goto again; + + if (passes < repetitions) { + printf("FAIL (L1D misses with entry_flush=%d: %llu %c %lu) [%d/%d failures]\n", + entry_flush, l1d_misses_total, entry_flush ? '<' : '>', + entry_flush ? repetitions * l1d_misses_expected : + repetitions * l1d_misses_expected / 2, + repetitions - passes, repetitions); + rc = 1; + } else { + printf("PASS (L1D misses with entry_flush=%d: %llu %c %lu) [%d/%d pass]\n", + entry_flush, l1d_misses_total, entry_flush ? '>' : '<', + entry_flush ? repetitions * l1d_misses_expected : + repetitions * l1d_misses_expected / 2, + passes, repetitions); + } + + if (entry_flush == entry_flush_orig) { + entry_flush = !entry_flush_orig; + if (write_debugfs_file("powerpc/entry_flush", entry_flush) < 0) { + perror("error writing to powerpc/entry_flush debugfs file"); + return 1; + } + iter = repetitions; + l1d_misses_total = 0; + passes = 0; + goto again; + } + + perf_event_disable(fd); + close(fd); + + set_dscr(0); + + if (write_debugfs_file("powerpc/rfi_flush", rfi_flush_orig) < 0) { + perror("unable to restore original value of powerpc/rfi_flush debugfs file"); + return 1; + } + + if (write_debugfs_file("powerpc/entry_flush", entry_flush_orig) < 0) { + perror("unable to restore original value of powerpc/entry_flush debugfs file"); + return 1; + } + + return rc; +} + +int main(int argc, char *argv[]) +{ + return test_harness(entry_flush_test, "entry_flush_test"); +} --- linux-azure-5.8-5.8.0.orig/tools/testing/selftests/powerpc/security/rfi_flush.c +++ linux-azure-5.8-5.8.0/tools/testing/selftests/powerpc/security/rfi_flush.c @@ -50,16 +50,30 @@ __u64 l1d_misses_total = 0; unsigned long iterations = 100000, zero_size = 24 * 1024; unsigned long l1d_misses_expected; - int rfi_flush_org, rfi_flush; + int rfi_flush_orig, rfi_flush; + int have_entry_flush, entry_flush_orig; SKIP_IF(geteuid() != 0); - if (read_debugfs_file("powerpc/rfi_flush", &rfi_flush_org)) { + if (read_debugfs_file("powerpc/rfi_flush", &rfi_flush_orig) < 0) { perror("Unable to read powerpc/rfi_flush debugfs file"); SKIP_IF(1); } - rfi_flush = rfi_flush_org; + if (read_debugfs_file("powerpc/entry_flush", &entry_flush_orig) < 0) { + have_entry_flush = 0; + } else { + have_entry_flush = 1; + + if (entry_flush_orig != 0) { + if (write_debugfs_file("powerpc/entry_flush", 0) < 0) { + perror("error writing to powerpc/entry_flush debugfs file"); + return 1; + } + } + } + + rfi_flush = rfi_flush_orig; fd = perf_event_open_counter(PERF_TYPE_RAW, /* L1d miss */ 0x400f0, -1); FAIL_IF(fd < 0); @@ -68,6 +82,7 @@ FAIL_IF(perf_event_enable(fd)); + // disable L1 prefetching set_dscr(1); iter = repetitions; @@ -109,8 +124,8 @@ repetitions * l1d_misses_expected / 2, passes, repetitions); - if (rfi_flush == rfi_flush_org) { - rfi_flush = !rfi_flush_org; + if (rfi_flush == rfi_flush_orig) { + rfi_flush = !rfi_flush_orig; if (write_debugfs_file("powerpc/rfi_flush", rfi_flush) < 0) { perror("error writing to powerpc/rfi_flush debugfs file"); return 1; @@ -126,11 +141,19 @@ set_dscr(0); - if (write_debugfs_file("powerpc/rfi_flush", rfi_flush_org) < 0) { + if (write_debugfs_file("powerpc/rfi_flush", rfi_flush_orig) < 0) { perror("unable to restore original value of powerpc/rfi_flush debugfs file"); return 1; } + if (have_entry_flush) { + if (write_debugfs_file("powerpc/entry_flush", entry_flush_orig) < 0) { + perror("unable to restore original value of powerpc/entry_flush " + "debugfs file"); + return 1; + } + } + return rc; } --- linux-azure-5.8-5.8.0.orig/tools/testing/selftests/powerpc/security/spectre_v2.c +++ linux-azure-5.8-5.8.0/tools/testing/selftests/powerpc/security/spectre_v2.c @@ -183,6 +183,14 @@ if (miss_percent > 15) { printf("Branch misses > 15%% unexpected in this configuration!\n"); printf("Possible mis-match between reported & actual mitigation\n"); + /* Such a mismatch may be caused by a guest system + * reporting as vulnerable when the host is mitigated. + * Return skip code to avoid detecting this as an + * error. We are not vulnerable and reporting otherwise, + * so missing such a mismatch is safe. + */ + if (state == VULNERABLE) + return 4; return 1; } break; --- linux-azure-5.8-5.8.0.orig/tools/testing/selftests/powerpc/utils.c +++ linux-azure-5.8-5.8.0/tools/testing/selftests/powerpc/utils.c @@ -16,6 +16,7 @@ #include #include #include +#include #include #include #include @@ -88,28 +89,40 @@ int pick_online_cpu(void) { - cpu_set_t mask; - int cpu; + int ncpus, cpu = -1; + cpu_set_t *mask; + size_t size; + + ncpus = get_nprocs_conf(); + size = CPU_ALLOC_SIZE(ncpus); + mask = CPU_ALLOC(ncpus); + if (!mask) { + perror("malloc"); + return -1; + } - CPU_ZERO(&mask); + CPU_ZERO_S(size, mask); - if (sched_getaffinity(0, sizeof(mask), &mask)) { + if (sched_getaffinity(0, size, mask)) { perror("sched_getaffinity"); - return -1; + goto done; } /* We prefer a primary thread, but skip 0 */ - for (cpu = 8; cpu < CPU_SETSIZE; cpu += 8) - if (CPU_ISSET(cpu, &mask)) - return cpu; + for (cpu = 8; cpu < ncpus; cpu += 8) + if (CPU_ISSET_S(cpu, size, mask)) + goto done; /* Search for anything, but in reverse */ - for (cpu = CPU_SETSIZE - 1; cpu >= 0; cpu--) - if (CPU_ISSET(cpu, &mask)) - return cpu; + for (cpu = ncpus - 1; cpu >= 0; cpu--) + if (CPU_ISSET_S(cpu, size, mask)) + goto done; printf("No cpus in affinity mask?!\n"); - return -1; + +done: + CPU_FREE(mask); + return cpu; } bool is_ppc64le(void) --- linux-azure-5.8-5.8.0.orig/tools/testing/selftests/proc/proc-loadavg-001.c +++ linux-azure-5.8-5.8.0/tools/testing/selftests/proc/proc-loadavg-001.c @@ -14,7 +14,6 @@ * OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. */ /* Test that /proc/loadavg correctly reports last pid in pid namespace. */ -#define _GNU_SOURCE #include #include #include --- linux-azure-5.8-5.8.0.orig/tools/testing/selftests/proc/proc-self-syscall.c +++ linux-azure-5.8-5.8.0/tools/testing/selftests/proc/proc-self-syscall.c @@ -13,7 +13,6 @@ * ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF * OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. */ -#define _GNU_SOURCE #include #include #include --- linux-azure-5.8-5.8.0.orig/tools/testing/selftests/proc/proc-uptime-002.c +++ linux-azure-5.8-5.8.0/tools/testing/selftests/proc/proc-uptime-002.c @@ -15,7 +15,6 @@ */ // Test that values in /proc/uptime increment monotonically // while shifting across CPUs. -#define _GNU_SOURCE #undef NDEBUG #include #include --- linux-azure-5.8-5.8.0.orig/tools/testing/selftests/seccomp/Makefile +++ linux-azure-5.8-5.8.0/tools/testing/selftests/seccomp/Makefile @@ -2,5 +2,7 @@ CFLAGS += -Wl,-no-as-needed -Wall LDFLAGS += -lpthread +TEST_FILES := settings + TEST_GEN_PROGS := seccomp_bpf seccomp_benchmark include ../lib.mk --- linux-azure-5.8-5.8.0.orig/tools/testing/selftests/seccomp/config +++ linux-azure-5.8-5.8.0/tools/testing/selftests/seccomp/config @@ -1,2 +1,3 @@ +CONFIG_PID_NS=y CONFIG_SECCOMP=y CONFIG_SECCOMP_FILTER=y --- linux-azure-5.8-5.8.0.orig/tools/testing/selftests/seccomp/seccomp_bpf.c +++ linux-azure-5.8-5.8.0/tools/testing/selftests/seccomp/seccomp_bpf.c @@ -180,7 +180,7 @@ #define SECCOMP_IOCTL_NOTIF_RECV SECCOMP_IOWR(0, struct seccomp_notif) #define SECCOMP_IOCTL_NOTIF_SEND SECCOMP_IOWR(1, \ struct seccomp_notif_resp) -#define SECCOMP_IOCTL_NOTIF_ID_VALID SECCOMP_IOR(2, __u64) +#define SECCOMP_IOCTL_NOTIF_ID_VALID SECCOMP_IOW(2, __u64) struct seccomp_notif { __u64 id; @@ -1738,6 +1738,14 @@ TH_LOG("Can't modify syscall return on this architecture"); #else regs.SYSCALL_RET = result; +# if defined(__powerpc__) + if (result < 0) { + regs.SYSCALL_RET = -result; + regs.ccr |= 0x10000000; + } else { + regs.ccr &= ~0x10000000; + } +# endif #endif #ifdef HAVE_GETREGS @@ -1796,6 +1804,7 @@ int ret, nr; unsigned long msg; static bool entry; + int *syscall_nr = args; /* * The traditional way to tell PTRACE_SYSCALL entry/exit @@ -1809,10 +1818,15 @@ EXPECT_EQ(entry ? PTRACE_EVENTMSG_SYSCALL_ENTRY : PTRACE_EVENTMSG_SYSCALL_EXIT, msg); - if (!entry) + if (!entry && !syscall_nr) return; - nr = get_syscall(_metadata, tracee); + if (entry) + nr = get_syscall(_metadata, tracee); + else + nr = *syscall_nr; + if (syscall_nr) + *syscall_nr = nr; if (nr == __NR_getpid) change_syscall(_metadata, tracee, __NR_getppid, 0); @@ -1889,9 +1903,10 @@ TEST_F(TRACE_syscall, ptrace_syscall_errno) { + int syscall_nr = -1; /* Swap SECCOMP_RET_TRACE tracer for PTRACE_SYSCALL tracer. */ teardown_trace_fixture(_metadata, self->tracer); - self->tracer = setup_trace_fixture(_metadata, tracer_ptrace, NULL, + self->tracer = setup_trace_fixture(_metadata, tracer_ptrace, &syscall_nr, true); /* Tracer should skip the open syscall, resulting in ESRCH. */ @@ -1900,9 +1915,10 @@ TEST_F(TRACE_syscall, ptrace_syscall_faked) { + int syscall_nr = -1; /* Swap SECCOMP_RET_TRACE tracer for PTRACE_SYSCALL tracer. */ teardown_trace_fixture(_metadata, self->tracer); - self->tracer = setup_trace_fixture(_metadata, tracer_ptrace, NULL, + self->tracer = setup_trace_fixture(_metadata, tracer_ptrace, &syscall_nr, true); /* Tracer should skip the gettid syscall, resulting fake pid. */ @@ -3258,6 +3274,11 @@ int ret; unsigned int flags; + ret = prctl(PR_SET_NO_NEW_PRIVS, 1, 0, 0, 0); + ASSERT_EQ(0, ret) { + TH_LOG("Kernel does not support PR_SET_NO_NEW_PRIVS!"); + } + /* these were exclusive */ flags = SECCOMP_FILTER_FLAG_NEW_LISTENER | SECCOMP_FILTER_FLAG_TSYNC; --- linux-azure-5.8-5.8.0.orig/tools/testing/selftests/seccomp/settings +++ linux-azure-5.8-5.8.0/tools/testing/selftests/seccomp/settings @@ -0,0 +1 @@ +timeout=90 --- linux-azure-5.8-5.8.0.orig/tools/testing/selftests/tc-testing/tc-tests/filters/tests.json +++ linux-azure-5.8-5.8.0/tools/testing/selftests/tc-testing/tc-tests/filters/tests.json @@ -100,7 +100,7 @@ ], "cmdUnderTest": "$TC filter add dev $DEV2 protocol ip pref 1 ingress flower dst_mac e4:11:22:11:4a:51 action drop", "expExitCode": "0", - "verifyCmd": "$TC filter show terse dev $DEV2 ingress", + "verifyCmd": "$TC -br filter show dev $DEV2 ingress", "matchPattern": "filter protocol ip pref 1 flower.*handle", "matchCount": "1", "teardown": [ @@ -119,7 +119,7 @@ ], "cmdUnderTest": "$TC filter add dev $DEV2 protocol ip pref 1 ingress flower dst_mac e4:11:22:11:4a:51 action drop", "expExitCode": "0", - "verifyCmd": "$TC filter show terse dev $DEV2 ingress", + "verifyCmd": "$TC -br filter show dev $DEV2 ingress", "matchPattern": " dst_mac e4:11:22:11:4a:51", "matchCount": "0", "teardown": [ --- linux-azure-5.8-5.8.0.orig/tools/testing/selftests/timers/Makefile +++ linux-azure-5.8-5.8.0/tools/testing/selftests/timers/Makefile @@ -13,6 +13,7 @@ TEST_GEN_PROGS_EXTENDED = $(DESTRUCTIVE_TESTS) +TEST_FILES := settings include ../lib.mk --- linux-azure-5.8-5.8.0.orig/tools/testing/selftests/timers/settings +++ linux-azure-5.8-5.8.0/tools/testing/selftests/timers/settings @@ -0,0 +1 @@ +timeout=0 --- linux-azure-5.8-5.8.0.orig/tools/testing/selftests/vm/config +++ linux-azure-5.8-5.8.0/tools/testing/selftests/vm/config @@ -3,3 +3,4 @@ CONFIG_TEST_VMALLOC=m CONFIG_DEVICE_PRIVATE=y CONFIG_TEST_HMM=m +CONFIG_GUP_BENCHMARK=y --- linux-azure-5.8-5.8.0.orig/tools/testing/selftests/vm/map_hugetlb.c +++ linux-azure-5.8-5.8.0/tools/testing/selftests/vm/map_hugetlb.c @@ -83,7 +83,7 @@ } if (shift) - printf("%u kB hugepages\n", 1 << shift); + printf("%u kB hugepages\n", 1 << (shift - 10)); else printf("Default size hugepages\n"); printf("Mapping %lu Mbytes\n", (unsigned long)length >> 20); --- linux-azure-5.8-5.8.0.orig/tools/testing/selftests/wireguard/netns.sh +++ linux-azure-5.8-5.8.0/tools/testing/selftests/wireguard/netns.sh @@ -39,7 +39,7 @@ ip1() { pretty 1 "ip $*"; ip -n $netns1 "$@"; } ip2() { pretty 2 "ip $*"; ip -n $netns2 "$@"; } sleep() { read -t "$1" -N 1 || true; } -waitiperf() { pretty "${1//*-}" "wait for iperf:5201 pid $2"; while [[ $(ss -N "$1" -tlpH 'sport = 5201') != *\"iperf3\",pid=$2,fd=* ]]; do sleep 0.1; done; } +waitiperf() { pretty "${1//*-}" "wait for iperf:${3:-5201} pid $2"; while [[ $(ss -N "$1" -tlpH "sport = ${3:-5201}") != *\"iperf3\",pid=$2,fd=* ]]; do sleep 0.1; done; } waitncatudp() { pretty "${1//*-}" "wait for udp:1111 pid $2"; while [[ $(ss -N "$1" -ulpH 'sport = 1111') != *\"ncat\",pid=$2,fd=* ]]; do sleep 0.1; done; } waitiface() { pretty "${1//*-}" "wait for $2 to come up"; ip netns exec "$1" bash -c "while [[ \$(< \"/sys/class/net/$2/operstate\") != up ]]; do read -t .1 -N 0 || true; done;"; } @@ -141,6 +141,19 @@ n2 iperf3 -s -1 -B fd00::2 & waitiperf $netns2 $! n1 iperf3 -Z -t 3 -b 0 -u -c fd00::2 + + # TCP over IPv4, in parallel + for max in 4 5 50; do + local pids=( ) + for ((i=0; i < max; ++i)) do + n2 iperf3 -p $(( 5200 + i )) -s -1 -B 192.168.241.2 & + pids+=( $! ); waitiperf $netns2 $! $(( 5200 + i )) + done + for ((i=0; i < max; ++i)) do + n1 iperf3 -Z -t 3 -p $(( 5200 + i )) -c 192.168.241.2 & + done + wait "${pids[@]}" + done } [[ $(ip1 link show dev wg0) =~ mtu\ ([0-9]+) ]] && orig_mtu="${BASH_REMATCH[1]}" @@ -316,6 +329,14 @@ n2 ping -W 1 -c 1 192.168.241.1 n1 wg set wg0 peer "$pub2" persistent-keepalive 0 +# Test that sk_bound_dev_if works +n1 ping -I wg0 -c 1 -W 1 192.168.241.2 +# What about when the mark changes and the packet must be rerouted? +n1 iptables -t mangle -I OUTPUT -j MARK --set-xmark 1 +n1 ping -c 1 -W 1 192.168.241.2 # First the boring case +n1 ping -I wg0 -c 1 -W 1 192.168.241.2 # Then the sk_bound_dev_if case +n1 iptables -t mangle -D OUTPUT -j MARK --set-xmark 1 + # Test that onion routing works, even when it loops n1 wg set wg0 peer "$pub3" allowed-ips 192.168.242.2/32 endpoint 192.168.241.2:5 ip1 addr add 192.168.242.1/24 dev wg0 --- linux-azure-5.8-5.8.0.orig/tools/testing/selftests/wireguard/qemu/kernel.config +++ linux-azure-5.8-5.8.0/tools/testing/selftests/wireguard/qemu/kernel.config @@ -18,10 +18,12 @@ CONFIG_NETFILTER_XTABLES=y CONFIG_NETFILTER_XT_NAT=y CONFIG_NETFILTER_XT_MATCH_LENGTH=y +CONFIG_NETFILTER_XT_MARK=y CONFIG_NF_CONNTRACK_IPV4=y CONFIG_NF_NAT_IPV4=y CONFIG_IP_NF_IPTABLES=y CONFIG_IP_NF_FILTER=y +CONFIG_IP_NF_MANGLE=y CONFIG_IP_NF_NAT=y CONFIG_IP_ADVANCED_ROUTER=y CONFIG_IP_MULTIPLE_TABLES=y --- linux-azure-5.8-5.8.0.orig/tools/testing/selftests/x86/Makefile +++ linux-azure-5.8-5.8.0/tools/testing/selftests/x86/Makefile @@ -13,7 +13,7 @@ TARGETS_C_BOTHBITS := single_step_syscall sysret_ss_attrs syscall_nt test_mremap_vdso \ check_initial_reg_state sigreturn iopl ioperm \ test_vdso test_vsyscall mov_ss_trap \ - syscall_arg_fault + syscall_arg_fault fsgsbase_restore TARGETS_C_32BIT_ONLY := entry_from_vm86 test_syscall_vdso unwind_vdso \ test_FCMOV test_FCOMI test_FISTTP \ vdso_restorer --- linux-azure-5.8-5.8.0.orig/tools/testing/selftests/x86/fsgsbase.c +++ linux-azure-5.8-5.8.0/tools/testing/selftests/x86/fsgsbase.c @@ -442,6 +442,68 @@ #define USER_REGS_OFFSET(r) offsetof(struct user_regs_struct, r) +static void test_ptrace_write_gs_read_base(void) +{ + int status; + pid_t child = fork(); + + if (child < 0) + err(1, "fork"); + + if (child == 0) { + printf("[RUN]\tPTRACE_POKE GS, read GSBASE back\n"); + + printf("[RUN]\tARCH_SET_GS to 1\n"); + if (syscall(SYS_arch_prctl, ARCH_SET_GS, 1) != 0) + err(1, "ARCH_SET_GS"); + + if (ptrace(PTRACE_TRACEME, 0, NULL, NULL) != 0) + err(1, "PTRACE_TRACEME"); + + raise(SIGTRAP); + _exit(0); + } + + wait(&status); + + if (WSTOPSIG(status) == SIGTRAP) { + unsigned long base; + unsigned long gs_offset = USER_REGS_OFFSET(gs); + unsigned long base_offset = USER_REGS_OFFSET(gs_base); + + /* Read the initial base. It should be 1. */ + base = ptrace(PTRACE_PEEKUSER, child, base_offset, NULL); + if (base == 1) { + printf("[OK]\tGSBASE started at 1\n"); + } else { + nerrs++; + printf("[FAIL]\tGSBASE started at 0x%lx\n", base); + } + + printf("[RUN]\tSet GS = 0x7, read GSBASE\n"); + + /* Poke an LDT selector into GS. */ + if (ptrace(PTRACE_POKEUSER, child, gs_offset, 0x7) != 0) + err(1, "PTRACE_POKEUSER"); + + /* And read the base. */ + base = ptrace(PTRACE_PEEKUSER, child, base_offset, NULL); + + if (base == 0 || base == 1) { + printf("[OK]\tGSBASE reads as 0x%lx with invalid GS\n", base); + } else { + nerrs++; + printf("[FAIL]\tGSBASE=0x%lx (should be 0 or 1)\n", base); + } + } + + ptrace(PTRACE_CONT, child, NULL, NULL); + + wait(&status); + if (!WIFEXITED(status)) + printf("[WARN]\tChild didn't exit cleanly.\n"); +} + static void test_ptrace_write_gsbase(void) { int status; @@ -489,16 +551,35 @@ * selector value is changed or not by the GSBASE write in * a ptracer. */ - if (gs == 0 && base == 0xFF) { - printf("[OK]\tGS was reset as expected\n"); - } else { + if (gs != *shared_scratch) { + nerrs++; + printf("[FAIL]\tGS changed to %lx\n", gs); + + /* + * On older kernels, poking a nonzero value into the + * base would zero the selector. On newer kernels, + * this behavior has changed -- poking the base + * changes only the base and, if FSGSBASE is not + * available, this may not effect. + */ + if (gs == 0) + printf("\tNote: this is expected behavior on older kernels.\n"); + } else if (have_fsgsbase && (base != 0xFF)) { nerrs++; - printf("[FAIL]\tGS=0x%lx, GSBASE=0x%lx (should be 0, 0xFF)\n", gs, base); + printf("[FAIL]\tGSBASE changed to %lx\n", base); + } else { + printf("[OK]\tGS remained 0x%hx", *shared_scratch); + if (have_fsgsbase) + printf(" and GSBASE changed to 0xFF"); + printf("\n"); } } END: ptrace(PTRACE_CONT, child, NULL, NULL); + wait(&status); + if (!WIFEXITED(status)) + printf("[WARN]\tChild didn't exit cleanly.\n"); } int main() @@ -508,6 +589,9 @@ shared_scratch = mmap(NULL, 4096, PROT_READ | PROT_WRITE, MAP_ANONYMOUS | MAP_SHARED, -1, 0); + /* Do these tests before we have an LDT. */ + test_ptrace_write_gs_read_base(); + /* Probe FSGSBASE */ sethandler(SIGILL, sigill, 0); if (sigsetjmp(jmpbuf, 1) == 0) { --- linux-azure-5.8-5.8.0.orig/tools/testing/selftests/x86/fsgsbase_restore.c +++ linux-azure-5.8-5.8.0/tools/testing/selftests/x86/fsgsbase_restore.c @@ -0,0 +1,245 @@ +// SPDX-License-Identifier: GPL-2.0-only +/* + * fsgsbase_restore.c, test ptrace vs fsgsbase + * Copyright (c) 2020 Andy Lutomirski + * + * This test case simulates a tracer redirecting tracee execution to + * a function and then restoring tracee state using PTRACE_GETREGS and + * PTRACE_SETREGS. This is similar to what gdb does when doing + * 'p func()'. The catch is that this test has the called function + * modify a segment register. This makes sure that ptrace correctly + * restores segment state when using PTRACE_SETREGS. + * + * This is not part of fsgsbase.c, because that test is 64-bit only. + */ + +#define _GNU_SOURCE +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include + +#define EXPECTED_VALUE 0x1337f00d + +#ifdef __x86_64__ +# define SEG "%gs" +#else +# define SEG "%fs" +#endif + +static unsigned int dereference_seg_base(void) +{ + int ret; + asm volatile ("mov %" SEG ":(0), %0" : "=rm" (ret)); + return ret; +} + +static void init_seg(void) +{ + unsigned int *target = mmap( + NULL, sizeof(unsigned int), + PROT_READ | PROT_WRITE, + MAP_PRIVATE | MAP_ANONYMOUS | MAP_32BIT, -1, 0); + if (target == MAP_FAILED) + err(1, "mmap"); + + *target = EXPECTED_VALUE; + + printf("\tsegment base address = 0x%lx\n", (unsigned long)target); + + struct user_desc desc = { + .entry_number = 0, + .base_addr = (unsigned int)(uintptr_t)target, + .limit = sizeof(unsigned int) - 1, + .seg_32bit = 1, + .contents = 0, /* Data, grow-up */ + .read_exec_only = 0, + .limit_in_pages = 0, + .seg_not_present = 0, + .useable = 0 + }; + if (syscall(SYS_modify_ldt, 1, &desc, sizeof(desc)) == 0) { + printf("\tusing LDT slot 0\n"); + asm volatile ("mov %0, %" SEG :: "rm" ((unsigned short)0x7)); + } else { + /* No modify_ldt for us (configured out, perhaps) */ + + struct user_desc *low_desc = mmap( + NULL, sizeof(desc), + PROT_READ | PROT_WRITE, + MAP_PRIVATE | MAP_ANONYMOUS | MAP_32BIT, -1, 0); + memcpy(low_desc, &desc, sizeof(desc)); + + low_desc->entry_number = -1; + + /* 32-bit set_thread_area */ + long ret; + asm volatile ("int $0x80" + : "=a" (ret), "+m" (*low_desc) + : "a" (243), "b" (low_desc) +#ifdef __x86_64__ + : "r8", "r9", "r10", "r11" +#endif + ); + memcpy(&desc, low_desc, sizeof(desc)); + munmap(low_desc, sizeof(desc)); + + if (ret != 0) { + printf("[NOTE]\tcould not create a segment -- can't test anything\n"); + exit(0); + } + printf("\tusing GDT slot %d\n", desc.entry_number); + + unsigned short sel = (unsigned short)((desc.entry_number << 3) | 0x3); + asm volatile ("mov %0, %" SEG :: "rm" (sel)); + } +} + +static void tracee_zap_segment(void) +{ + /* + * The tracer will redirect execution here. This is meant to + * work like gdb's 'p func()' feature. The tricky bit is that + * we modify a segment register in order to make sure that ptrace + * can correctly restore segment registers. + */ + printf("\tTracee: in tracee_zap_segment()\n"); + + /* + * Write a nonzero selector with base zero to the segment register. + * Using a null selector would defeat the test on AMD pre-Zen2 + * CPUs, as such CPUs don't clear the base when loading a null + * selector. + */ + unsigned short sel; + asm volatile ("mov %%ss, %0\n\t" + "mov %0, %" SEG + : "=rm" (sel)); + + pid_t pid = getpid(), tid = syscall(SYS_gettid); + + printf("\tTracee is going back to sleep\n"); + syscall(SYS_tgkill, pid, tid, SIGSTOP); + + /* Should not get here. */ + while (true) { + printf("[FAIL]\tTracee hit unreachable code\n"); + pause(); + } +} + +int main() +{ + printf("\tSetting up a segment\n"); + init_seg(); + + unsigned int val = dereference_seg_base(); + if (val != EXPECTED_VALUE) { + printf("[FAIL]\tseg[0] == %x; should be %x\n", val, EXPECTED_VALUE); + return 1; + } + printf("[OK]\tThe segment points to the right place.\n"); + + pid_t chld = fork(); + if (chld < 0) + err(1, "fork"); + + if (chld == 0) { + prctl(PR_SET_PDEATHSIG, SIGKILL, 0, 0, 0, 0); + + if (ptrace(PTRACE_TRACEME, 0, 0, 0) != 0) + err(1, "PTRACE_TRACEME"); + + pid_t pid = getpid(), tid = syscall(SYS_gettid); + + printf("\tTracee will take a nap until signaled\n"); + syscall(SYS_tgkill, pid, tid, SIGSTOP); + + printf("\tTracee was resumed. Will re-check segment.\n"); + + val = dereference_seg_base(); + if (val != EXPECTED_VALUE) { + printf("[FAIL]\tseg[0] == %x; should be %x\n", val, EXPECTED_VALUE); + exit(1); + } + + printf("[OK]\tThe segment points to the right place.\n"); + exit(0); + } + + int status; + + /* Wait for SIGSTOP. */ + if (waitpid(chld, &status, 0) != chld || !WIFSTOPPED(status)) + err(1, "waitpid"); + + struct user_regs_struct regs; + + if (ptrace(PTRACE_GETREGS, chld, NULL, ®s) != 0) + err(1, "PTRACE_GETREGS"); + +#ifdef __x86_64__ + printf("\tChild GS=0x%lx, GSBASE=0x%lx\n", (unsigned long)regs.gs, (unsigned long)regs.gs_base); +#else + printf("\tChild FS=0x%lx\n", (unsigned long)regs.xfs); +#endif + + struct user_regs_struct regs2 = regs; +#ifdef __x86_64__ + regs2.rip = (unsigned long)tracee_zap_segment; + regs2.rsp -= 128; /* Don't clobber the redzone. */ +#else + regs2.eip = (unsigned long)tracee_zap_segment; +#endif + + printf("\tTracer: redirecting tracee to tracee_zap_segment()\n"); + if (ptrace(PTRACE_SETREGS, chld, NULL, ®s2) != 0) + err(1, "PTRACE_GETREGS"); + if (ptrace(PTRACE_CONT, chld, NULL, NULL) != 0) + err(1, "PTRACE_GETREGS"); + + /* Wait for SIGSTOP. */ + if (waitpid(chld, &status, 0) != chld || !WIFSTOPPED(status)) + err(1, "waitpid"); + + printf("\tTracer: restoring tracee state\n"); + if (ptrace(PTRACE_SETREGS, chld, NULL, ®s) != 0) + err(1, "PTRACE_GETREGS"); + if (ptrace(PTRACE_DETACH, chld, NULL, NULL) != 0) + err(1, "PTRACE_GETREGS"); + + /* Wait for SIGSTOP. */ + if (waitpid(chld, &status, 0) != chld) + err(1, "waitpid"); + + if (WIFSIGNALED(status)) { + printf("[FAIL]\tTracee crashed\n"); + return 1; + } + + if (!WIFEXITED(status)) { + printf("[FAIL]\tTracee stopped for an unexpected reason: %d\n", status); + return 1; + } + + int exitcode = WEXITSTATUS(status); + if (exitcode != 0) { + printf("[FAIL]\tTracee reported failure\n"); + return 1; + } + + printf("[OK]\tAll is well.\n"); + return 0; +} --- linux-azure-5.8-5.8.0.orig/tools/testing/selftests/x86/test_vsyscall.c +++ linux-azure-5.8-5.8.0/tools/testing/selftests/x86/test_vsyscall.c @@ -462,6 +462,17 @@ return 0; } +/* + * Debuggers expect ptrace() to be able to peek at the vsyscall page. + * Use process_vm_readv() as a proxy for ptrace() to test this. We + * want it to work in the vsyscall=emulate case and to fail in the + * vsyscall=xonly case. + * + * It's worth noting that this ABI is a bit nutty. write(2) can't + * read from the vsyscall page on any kernel version or mode. The + * fact that ptrace() ever worked was a nice courtesy of old kernels, + * but the code to support it is fairly gross. + */ static int test_process_vm_readv(void) { #ifdef __x86_64__ @@ -477,8 +488,12 @@ remote.iov_len = 4096; ret = process_vm_readv(getpid(), &local, 1, &remote, 1, 0); if (ret != 4096) { - printf("[OK]\tprocess_vm_readv() failed (ret = %d, errno = %d)\n", ret, errno); - return 0; + /* + * We expect process_vm_readv() to work if and only if the + * vsyscall page is readable. + */ + printf("[%s]\tprocess_vm_readv() failed (ret = %d, errno = %d)\n", vsyscall_map_r ? "FAIL" : "OK", ret, errno); + return vsyscall_map_r ? 1 : 0; } if (vsyscall_map_r) { @@ -488,6 +503,9 @@ printf("[FAIL]\tIt worked but returned incorrect data\n"); return 1; } + } else { + printf("[FAIL]\tprocess_rm_readv() succeeded, but it should have failed in this configuration\n"); + return 1; } #endif --- linux-azure-5.8-5.8.0.orig/tools/usb/usbip/configure.ac +++ linux-azure-5.8-5.8.0/tools/usb/usbip/configure.ac @@ -18,7 +18,7 @@ # Silent build for automake >= 1.11 m4_ifdef([AM_SILENT_RULES], [AM_SILENT_RULES([yes])]) -AC_SUBST([EXTRA_CFLAGS], ["-Wall -Werror -Wextra -std=gnu99"]) +AC_SUBST([EXTRA_CFLAGS], ["-Wall -Werror -Wextra -Wno-address-of-packed-member -std=gnu99"]) # Checks for programs. AC_PROG_CC --- linux-azure-5.8-5.8.0.orig/tools/usb/usbip/libsrc/usbip_host_common.c +++ linux-azure-5.8-5.8.0/tools/usb/usbip/libsrc/usbip_host_common.c @@ -23,7 +23,7 @@ #include "list.h" #include "sysfs_utils.h" -struct udev *udev_context; +extern struct udev *udev_context; static int32_t read_attr_usbip_status(struct usbip_usb_device *udev) { --- linux-azure-5.8-5.8.0.orig/ubuntu/Kconfig +++ linux-azure-5.8-5.8.0/ubuntu/Kconfig @@ -0,0 +1,25 @@ +menu "Ubuntu Supplied Third-Party Device Drivers" + +# +# NOTE: to allow drivers to be added and removed without causing merge +# collisions you should add new entries in the middle of the six lines +# of ## at the bottom of the list. Always add three lines of ## above +# your new entry and maintain the six lines below. +# + +## +## +## +source "ubuntu/hio/Kconfig" +## +## +## +source "ubuntu/ubuntu-host/Kconfig" +## +## +## +## +## +## + +endmenu --- linux-azure-5.8-5.8.0.orig/ubuntu/Makefile +++ linux-azure-5.8-5.8.0/ubuntu/Makefile @@ -0,0 +1,41 @@ +# +# Makefile for the Linux kernel ubuntu supplied third-party device drivers. +# + +# +# NOTE: to allow drivers to be added and removed without causing merge +# collisions you should add new entries in the middle of the six lines +# of ## at the bottom of the list. Always add three lines of ## above +# your new entry and maintain the six lines below. +# + +## +## +## +## +## +## +obj-$(CONFIG_HIO) += hio/ +## +## +## +obj-$(CONFIG_UBUNTU_HOST) += ubuntu-host/ +## +## +## +ifeq ($(ARCH),x86) +obj-$(CONFIG_USB) += xr-usb-serial/ +endif +## +## +## +obj-y += sgx/ +## +## +## +## +## +## + +# This is a stupid trick to get kbuild to create ubuntu/built-in.o +obj- += foo.o --- linux-azure-5.8-5.8.0.orig/ubuntu/hio/Kconfig +++ linux-azure-5.8-5.8.0/ubuntu/hio/Kconfig @@ -0,0 +1,4 @@ +config HIO + tristate "ES3000 V2 High-Performance PCIe SSD" + ---help--- + Driver for ES3000 V2 High-Performance PCIe SSD. --- linux-azure-5.8-5.8.0.orig/ubuntu/hio/Makefile +++ linux-azure-5.8-5.8.0/ubuntu/hio/Makefile @@ -0,0 +1 @@ +obj-$(CONFIG_HIO) += hio.o --- linux-azure-5.8-5.8.0.orig/ubuntu/hio/hio.c +++ linux-azure-5.8-5.8.0/ubuntu/hio/hio.c @@ -0,0 +1,13285 @@ +/* +* Huawei SSD device driver +* Copyright (c) 2016, Huawei Technologies Co., Ltd. +* +* This program is free software; you can redistribute it and/or modify it +* under the terms and conditions of the GNU General Public License, +* version 2, as published by the Free Software Foundation. +* +* This program is distributed in the hope it will be useful, but WITHOUT +* ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or +* FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for +* more details. +*/ + +#ifndef LINUX_VERSION_CODE +#include +#endif +#if (LINUX_VERSION_CODE < KERNEL_VERSION(2,6,16)) +#include +#endif +#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 /* HDIO_GETGEO */ +#include +#include +#include +#if (LINUX_VERSION_CODE >= KERNEL_VERSION(3,2,0)) +#include +#endif +#include +#if (LINUX_VERSION_CODE >= KERNEL_VERSION(4,2,0)) +#include +#include +#else +#include +#endif +#include +#if (LINUX_VERSION_CODE <= KERNEL_VERSION(2,6,17)) +#include +#endif +#if (LINUX_VERSION_CODE > KERNEL_VERSION(5,6,0)) +#include +#endif + +/* driver */ +#define MODULE_NAME "hio" +#define DRIVER_VERSION "2.1.0.40" +#define DRIVER_VERSION_LEN 16 + +#define SSD_FW_MIN 0x1 + +#define SSD_DEV_NAME MODULE_NAME +#define SSD_DEV_NAME_LEN 16 +#define SSD_CDEV_NAME "c"SSD_DEV_NAME +#define SSD_SDEV_NAME "s"SSD_DEV_NAME + + +#define SSD_CMAJOR 0 +#define SSD_MAJOR 0 +#define SSD_MAJOR_SL 0 +#define SSD_MINORS 16 + +#define SSD_MAX_DEV 702 +#define SSD_ALPHABET_NUM 26 + +#define hio_info(f, arg...) printk(KERN_INFO MODULE_NAME"info: " f , ## arg) +#define hio_note(f, arg...) printk(KERN_NOTICE MODULE_NAME"note: " f , ## arg) +#define hio_warn(f, arg...) printk(KERN_WARNING MODULE_NAME"warn: " f , ## arg) +#define hio_err(f, arg...) printk(KERN_ERR MODULE_NAME"err: " f , ## arg) + +#if (LINUX_VERSION_CODE > KERNEL_VERSION(5,6,0)) +struct hd_struct *disk_map_sector_rcu(struct gendisk *disk, sector_t sector); +#endif + +/* slave port */ +#define SSD_SLAVE_PORT_DEVID 0x000a + +/* int mode */ + +/* 2.6.9 msi affinity bug, should turn msi & msi-x off */ +//#define SSD_MSI +#define SSD_ESCAPE_IRQ + +//#define SSD_MSIX +#ifndef MODULE +#define SSD_MSIX +#endif +#define SSD_MSIX_VEC 8 +#ifdef SSD_MSIX +#undef SSD_MSI +#undef SSD_ESCAPE_IRQ +#define SSD_MSIX_AFFINITY_FORCE +#endif + +#define SSD_TRIM + +/* Over temperature protect */ +#define SSD_OT_PROTECT + +#ifdef SSD_QUEUE_PBIO +#define BIO_SSD_PBIO 20 +#endif + +/* debug */ +//#define SSD_DEBUG_ERR + +/* cmd timer */ +#define SSD_CMD_TIMEOUT (60*HZ) + +/* i2c & smbus */ +#define SSD_SPI_TIMEOUT (5*HZ) +#define SSD_I2C_TIMEOUT (5*HZ) + +#define SSD_I2C_MAX_DATA (127) +#define SSD_SMBUS_BLOCK_MAX (32) +#define SSD_SMBUS_DATA_MAX (SSD_SMBUS_BLOCK_MAX + 2) + +/* wait for init */ +#define SSD_INIT_WAIT (1000) //1s +#define SSD_CONTROLLER_WAIT (20*1000/SSD_INIT_WAIT) //20s +#define SSD_INIT_MAX_WAIT (500*1000/SSD_INIT_WAIT) //500s +#define SSD_INIT_MAX_WAIT_V3_2 (1400*1000/SSD_INIT_WAIT) //1400s +#define SSD_RAM_INIT_MAX_WAIT (10*1000/SSD_INIT_WAIT) //10s +#define SSD_CH_INFO_MAX_WAIT (10*1000/SSD_INIT_WAIT) //10s + +/* blkdev busy wait */ +#define SSD_DEV_BUSY_WAIT 1000 //ms +#define SSD_DEV_BUSY_MAX_WAIT (8*1000/SSD_DEV_BUSY_WAIT) //8s + +/* smbus retry */ +#define SSD_SMBUS_RETRY_INTERVAL (5) //ms +#define SSD_SMBUS_RETRY_MAX (1000/SSD_SMBUS_RETRY_INTERVAL) + +#define SSD_BM_RETRY_MAX 7 + +/* bm routine interval */ +#define SSD_BM_CAP_LEARNING_DELAY (10*60*1000) + +/* routine interval */ +#define SSD_ROUTINE_INTERVAL (10*1000) //10s +#define SSD_HWMON_ROUTINE_TICK (60*1000/SSD_ROUTINE_INTERVAL) +#define SSD_CAPMON_ROUTINE_TICK ((3600*1000/SSD_ROUTINE_INTERVAL)*24*30) +#define SSD_CAPMON2_ROUTINE_TICK (10*60*1000/SSD_ROUTINE_INTERVAL) //fault recover + +/* dma align */ +#define SSD_DMA_ALIGN (16) + +/* some hw defalut */ +#define SSD_LOG_MAX_SZ 4096 + +#define SSD_NAND_OOB_SZ 1024 +#define SSD_NAND_ID_SZ 8 +#define SSD_NAND_ID_BUFF_SZ 1024 +#define SSD_NAND_MAX_CE 2 + +#define SSD_BBT_RESERVED 8 + +#define SSD_ECC_MAX_FLIP (64+1) + +#define SSD_RAM_ALIGN 16 + + +#define SSD_RELOAD_FLAG 0x3333CCCC +#define SSD_RELOAD_FW 0xAA5555AA +#define SSD_RESET_NOINIT 0xAA5555AA +#define SSD_RESET 0x55AAAA55 +#define SSD_RESET_FULL 0x5A +//#define SSD_RESET_WAIT 1000 //1s +//#define SSD_RESET_MAX_WAIT (200*1000/SSD_RESET_WAIT) //200s + + +/* reverion 1 */ +#define SSD_PROTOCOL_V1 0x0 + +#define SSD_ROM_SIZE (16*1024*1024) +#define SSD_ROM_BLK_SIZE (256*1024) +#define SSD_ROM_PAGE_SIZE (256) +#define SSD_ROM_NR_BRIDGE_FW 2 +#define SSD_ROM_NR_CTRL_FW 2 +#define SSD_ROM_BRIDGE_FW_BASE 0 +#define SSD_ROM_BRIDGE_FW_SIZE (2*1024*1024) +#define SSD_ROM_CTRL_FW_BASE (SSD_ROM_NR_BRIDGE_FW*SSD_ROM_BRIDGE_FW_SIZE) +#define SSD_ROM_CTRL_FW_SIZE (5*1024*1024) +#define SSD_ROM_LABEL_BASE (SSD_ROM_CTRL_FW_BASE+SSD_ROM_CTRL_FW_SIZE*SSD_ROM_NR_CTRL_FW) +#define SSD_ROM_VP_BASE (SSD_ROM_LABEL_BASE+SSD_ROM_BLK_SIZE) + +/* reverion 3 */ +#define SSD_PROTOCOL_V3 0x3000000 +#define SSD_PROTOCOL_V3_1_1 0x3010001 +#define SSD_PROTOCOL_V3_1_3 0x3010003 +#define SSD_PROTOCOL_V3_2 0x3020000 +#define SSD_PROTOCOL_V3_2_1 0x3020001 /* <4KB improved */ +#define SSD_PROTOCOL_V3_2_2 0x3020002 /* ot protect */ +#define SSD_PROTOCOL_V3_2_4 0x3020004 + + +#define SSD_PV3_ROM_NR_BM_FW 1 +#define SSD_PV3_ROM_BM_FW_SZ (64*1024*8) + +#define SSD_ROM_LOG_SZ (64*1024*4) + +#define SSD_ROM_NR_SMART_MAX 2 +#define SSD_PV3_ROM_NR_SMART SSD_ROM_NR_SMART_MAX +#define SSD_PV3_ROM_SMART_SZ (64*1024) + +/* reverion 3.2 */ +#define SSD_PV3_2_ROM_LOG_SZ (64*1024*80) /* 5MB */ +#define SSD_PV3_2_ROM_SEC_SZ (256*1024) /* 256KB */ + + +/* register */ +#define SSD_REQ_FIFO_REG 0x0000 +#define SSD_RESP_FIFO_REG 0x0008 //0x0010 +#define SSD_RESP_PTR_REG 0x0010 //0x0018 +#define SSD_INTR_INTERVAL_REG 0x0018 +#define SSD_READY_REG 0x001C +#define SSD_BRIDGE_TEST_REG 0x0020 +#define SSD_STRIPE_SIZE_REG 0x0028 +#define SSD_CTRL_VER_REG 0x0030 //controller +#define SSD_BRIDGE_VER_REG 0x0034 //bridge +#define SSD_PCB_VER_REG 0x0038 +#define SSD_BURN_FLAG_REG 0x0040 +#define SSD_BRIDGE_INFO_REG 0x0044 + +#define SSD_WL_VAL_REG 0x0048 //32-bit + +#define SSD_BB_INFO_REG 0x004C + +#define SSD_ECC_TEST_REG 0x0050 //test only +#define SSD_ERASE_TEST_REG 0x0058 //test only +#define SSD_WRITE_TEST_REG 0x0060 //test only + +#define SSD_RESET_REG 0x0068 +#define SSD_RELOAD_FW_REG 0x0070 + +#define SSD_RESERVED_BLKS_REG 0x0074 +#define SSD_VALID_PAGES_REG 0x0078 +#define SSD_CH_INFO_REG 0x007C + +#define SSD_CTRL_TEST_REG_SZ 0x8 +#define SSD_CTRL_TEST_REG0 0x0080 +#define SSD_CTRL_TEST_REG1 0x0088 +#define SSD_CTRL_TEST_REG2 0x0090 +#define SSD_CTRL_TEST_REG3 0x0098 +#define SSD_CTRL_TEST_REG4 0x00A0 +#define SSD_CTRL_TEST_REG5 0x00A8 +#define SSD_CTRL_TEST_REG6 0x00B0 +#define SSD_CTRL_TEST_REG7 0x00B8 + +#define SSD_FLASH_INFO_REG0 0x00C0 +#define SSD_FLASH_INFO_REG1 0x00C8 +#define SSD_FLASH_INFO_REG2 0x00D0 +#define SSD_FLASH_INFO_REG3 0x00D8 +#define SSD_FLASH_INFO_REG4 0x00E0 +#define SSD_FLASH_INFO_REG5 0x00E8 +#define SSD_FLASH_INFO_REG6 0x00F0 +#define SSD_FLASH_INFO_REG7 0x00F8 + +#define SSD_RESP_INFO_REG 0x01B8 +#define SSD_NAND_BUFF_BASE 0x01BC //for nand write + +#define SSD_CHIP_INFO_REG_SZ 0x10 +#define SSD_CHIP_INFO_REG0 0x0100 //128 bit +#define SSD_CHIP_INFO_REG1 0x0110 +#define SSD_CHIP_INFO_REG2 0x0120 +#define SSD_CHIP_INFO_REG3 0x0130 +#define SSD_CHIP_INFO_REG4 0x0140 +#define SSD_CHIP_INFO_REG5 0x0150 +#define SSD_CHIP_INFO_REG6 0x0160 +#define SSD_CHIP_INFO_REG7 0x0170 + +#define SSD_RAM_INFO_REG 0x01C4 + +#define SSD_BBT_BASE_REG 0x01C8 +#define SSD_ECT_BASE_REG 0x01CC + +#define SSD_CLEAR_INTR_REG 0x01F0 + +#define SSD_INIT_STATE_REG_SZ 0x8 +#define SSD_INIT_STATE_REG0 0x0200 +#define SSD_INIT_STATE_REG1 0x0208 +#define SSD_INIT_STATE_REG2 0x0210 +#define SSD_INIT_STATE_REG3 0x0218 +#define SSD_INIT_STATE_REG4 0x0220 +#define SSD_INIT_STATE_REG5 0x0228 +#define SSD_INIT_STATE_REG6 0x0230 +#define SSD_INIT_STATE_REG7 0x0238 + +#define SSD_ROM_INFO_REG 0x0600 +#define SSD_ROM_BRIDGE_FW_INFO_REG 0x0604 +#define SSD_ROM_CTRL_FW_INFO_REG 0x0608 +#define SSD_ROM_VP_INFO_REG 0x060C + +#define SSD_LOG_INFO_REG 0x0610 +#define SSD_LED_REG 0x0614 +#define SSD_MSG_BASE_REG 0x06F8 + +/*spi reg */ +#define SSD_SPI_REG_CMD 0x0180 +#define SSD_SPI_REG_CMD_HI 0x0184 +#define SSD_SPI_REG_WDATA 0x0188 +#define SSD_SPI_REG_ID 0x0190 +#define SSD_SPI_REG_STATUS 0x0198 +#define SSD_SPI_REG_RDATA 0x01A0 +#define SSD_SPI_REG_READY 0x01A8 + +/* i2c register */ +#define SSD_I2C_CTRL_REG 0x06F0 +#define SSD_I2C_RDATA_REG 0x06F4 + +/* temperature reg */ +#define SSD_BRIGE_TEMP_REG 0x0618 + +#define SSD_CTRL_TEMP_REG0 0x0700 +#define SSD_CTRL_TEMP_REG1 0x0708 +#define SSD_CTRL_TEMP_REG2 0x0710 +#define SSD_CTRL_TEMP_REG3 0x0718 +#define SSD_CTRL_TEMP_REG4 0x0720 +#define SSD_CTRL_TEMP_REG5 0x0728 +#define SSD_CTRL_TEMP_REG6 0x0730 +#define SSD_CTRL_TEMP_REG7 0x0738 + +/* reversion 3 reg */ +#define SSD_PROTOCOL_VER_REG 0x01B4 + +#define SSD_FLUSH_TIMEOUT_REG 0x02A4 +#define SSD_BM_FAULT_REG 0x0660 + +#define SSD_PV3_RAM_STATUS_REG_SZ 0x4 +#define SSD_PV3_RAM_STATUS_REG0 0x0260 +#define SSD_PV3_RAM_STATUS_REG1 0x0264 +#define SSD_PV3_RAM_STATUS_REG2 0x0268 +#define SSD_PV3_RAM_STATUS_REG3 0x026C +#define SSD_PV3_RAM_STATUS_REG4 0x0270 +#define SSD_PV3_RAM_STATUS_REG5 0x0274 +#define SSD_PV3_RAM_STATUS_REG6 0x0278 +#define SSD_PV3_RAM_STATUS_REG7 0x027C + +#define SSD_PV3_CHIP_INFO_REG_SZ 0x40 +#define SSD_PV3_CHIP_INFO_REG0 0x0300 +#define SSD_PV3_CHIP_INFO_REG1 0x0340 +#define SSD_PV3_CHIP_INFO_REG2 0x0380 +#define SSD_PV3_CHIP_INFO_REG3 0x03B0 +#define SSD_PV3_CHIP_INFO_REG4 0x0400 +#define SSD_PV3_CHIP_INFO_REG5 0x0440 +#define SSD_PV3_CHIP_INFO_REG6 0x0480 +#define SSD_PV3_CHIP_INFO_REG7 0x04B0 + +#define SSD_PV3_INIT_STATE_REG_SZ 0x20 +#define SSD_PV3_INIT_STATE_REG0 0x0500 +#define SSD_PV3_INIT_STATE_REG1 0x0520 +#define SSD_PV3_INIT_STATE_REG2 0x0540 +#define SSD_PV3_INIT_STATE_REG3 0x0560 +#define SSD_PV3_INIT_STATE_REG4 0x0580 +#define SSD_PV3_INIT_STATE_REG5 0x05A0 +#define SSD_PV3_INIT_STATE_REG6 0x05C0 +#define SSD_PV3_INIT_STATE_REG7 0x05E0 + +/* reversion 3.1.1 reg */ +#define SSD_FULL_RESET_REG 0x01B0 + +#define SSD_CTRL_REG_ZONE_SZ 0x800 + +#define SSD_BB_THRESHOLD_L1_REG 0x2C0 +#define SSD_BB_THRESHOLD_L2_REG 0x2C4 + +#define SSD_BB_ACC_REG_SZ 0x4 +#define SSD_BB_ACC_REG0 0x21C0 +#define SSD_BB_ACC_REG1 0x29C0 +#define SSD_BB_ACC_REG2 0x31C0 + +#define SSD_EC_THRESHOLD_L1_REG 0x2C8 +#define SSD_EC_THRESHOLD_L2_REG 0x2CC + +#define SSD_EC_ACC_REG_SZ 0x4 +#define SSD_EC_ACC_REG0 0x21E0 +#define SSD_EC_ACC_REG1 0x29E0 +#define SSD_EC_ACC_REG2 0x31E0 + +/* reversion 3.1.2 & 3.1.3 reg */ +#define SSD_HW_STATUS_REG 0x02AC + +#define SSD_PLP_INFO_REG 0x0664 + +/*reversion 3.2 reg*/ +#define SSD_POWER_ON_REG 0x01EC +#define SSD_PCIE_LINKSTATUS_REG 0x01F8 +#define SSD_PL_CAP_LEARN_REG 0x01FC + +#define SSD_FPGA_1V0_REG0 0x2070 +#define SSD_FPGA_1V8_REG0 0x2078 +#define SSD_FPGA_1V0_REG1 0x2870 +#define SSD_FPGA_1V8_REG1 0x2878 + +/*reversion 3.2 reg*/ +#define SSD_READ_OT_REG0 0x2260 +#define SSD_WRITE_OT_REG0 0x2264 +#define SSD_READ_OT_REG1 0x2A60 +#define SSD_WRITE_OT_REG1 0x2A64 + + +/* function */ +#define SSD_FUNC_READ 0x01 +#define SSD_FUNC_WRITE 0x02 +#define SSD_FUNC_NAND_READ_WOOB 0x03 +#define SSD_FUNC_NAND_READ 0x04 +#define SSD_FUNC_NAND_WRITE 0x05 +#define SSD_FUNC_NAND_ERASE 0x06 +#define SSD_FUNC_NAND_READ_ID 0x07 +#define SSD_FUNC_READ_LOG 0x08 +#define SSD_FUNC_TRIM 0x09 +#define SSD_FUNC_RAM_READ 0x10 +#define SSD_FUNC_RAM_WRITE 0x11 +#define SSD_FUNC_FLUSH 0x12 //cache / bbt + +/* spi function */ +#define SSD_SPI_CMD_PROGRAM 0x02 +#define SSD_SPI_CMD_READ 0x03 +#define SSD_SPI_CMD_W_DISABLE 0x04 +#define SSD_SPI_CMD_READ_STATUS 0x05 +#define SSD_SPI_CMD_W_ENABLE 0x06 +#define SSD_SPI_CMD_ERASE 0xd8 +#define SSD_SPI_CMD_CLSR 0x30 +#define SSD_SPI_CMD_READ_ID 0x9f + +/* i2c */ +#define SSD_I2C_CTRL_READ 0x00 +#define SSD_I2C_CTRL_WRITE 0x01 + +/* i2c internal register */ +#define SSD_I2C_CFG_REG 0x00 +#define SSD_I2C_DATA_REG 0x01 +#define SSD_I2C_CMD_REG 0x02 +#define SSD_I2C_STATUS_REG 0x03 +#define SSD_I2C_SADDR_REG 0x04 +#define SSD_I2C_LEN_REG 0x05 +#define SSD_I2C_RLEN_REG 0x06 +#define SSD_I2C_WLEN_REG 0x07 +#define SSD_I2C_RESET_REG 0x08 //write for reset +#define SSD_I2C_PRER_REG 0x09 + + +/* hw mon */ +/* FPGA volt = ADC_value / 4096 * 3v */ +#define SSD_FPGA_1V0_ADC_MIN 1228 // 0.9v +#define SSD_FPGA_1V0_ADC_MAX 1502 // 1.1v +#define SSD_FPGA_1V8_ADC_MIN 2211 // 1.62v +#define SSD_FPGA_1V8_ADC_MAX 2703 // 1.98 + +/* ADC value */ +#define SSD_FPGA_VOLT_MAX(val) (((val) & 0xffff) >> 4) +#define SSD_FPGA_VOLT_MIN(val) (((val >> 16) & 0xffff) >> 4) +#define SSD_FPGA_VOLT_CUR(val) (((val >> 32) & 0xffff) >> 4) +#define SSD_FPGA_VOLT(val) ((val * 3000) >> 12) + +#define SSD_VOLT_LOG_DATA(idx, ctrl, volt) (((uint32_t)idx << 24) | ((uint32_t)ctrl << 16) | ((uint32_t)volt)) + +enum ssd_fpga_volt +{ + SSD_FPGA_1V0 = 0, + SSD_FPGA_1V8, + SSD_FPGA_VOLT_NR +}; + +enum ssd_clock +{ + SSD_CLOCK_166M_LOST = 0, + SSD_CLOCK_166M_SKEW, + SSD_CLOCK_156M_LOST, + SSD_CLOCK_156M_SKEW, + SSD_CLOCK_NR +}; + +/* sensor */ +#define SSD_SENSOR_LM75_SADDRESS (0x49 << 1) +#define SSD_SENSOR_LM80_SADDRESS (0x28 << 1) + +#define SSD_SENSOR_CONVERT_TEMP(val) ((int)(val >> 8)) + +#define SSD_INLET_OT_TEMP (55) //55 DegC +#define SSD_INLET_OT_HYST (50) //50 DegC +#define SSD_FLASH_OT_TEMP (70) //70 DegC +#define SSD_FLASH_OT_HYST (65) //65 DegC + +enum ssd_sensor +{ + SSD_SENSOR_LM80 = 0, + SSD_SENSOR_LM75, + SSD_SENSOR_NR +}; + + +/* lm75 */ +enum ssd_lm75_reg +{ + SSD_LM75_REG_TEMP = 0, + SSD_LM75_REG_CONF, + SSD_LM75_REG_THYST, + SSD_LM75_REG_TOS +}; + +/* lm96080 */ +#define SSD_LM80_REG_IN_MAX(nr) (0x2a + (nr) * 2) +#define SSD_LM80_REG_IN_MIN(nr) (0x2b + (nr) * 2) +#define SSD_LM80_REG_IN(nr) (0x20 + (nr)) + +#define SSD_LM80_REG_FAN1 0x28 +#define SSD_LM80_REG_FAN2 0x29 +#define SSD_LM80_REG_FAN_MIN(nr) (0x3b + (nr)) + +#define SSD_LM80_REG_TEMP 0x27 +#define SSD_LM80_REG_TEMP_HOT_MAX 0x38 +#define SSD_LM80_REG_TEMP_HOT_HYST 0x39 +#define SSD_LM80_REG_TEMP_OS_MAX 0x3a +#define SSD_LM80_REG_TEMP_OS_HYST 0x3b + +#define SSD_LM80_REG_CONFIG 0x00 +#define SSD_LM80_REG_ALARM1 0x01 +#define SSD_LM80_REG_ALARM2 0x02 +#define SSD_LM80_REG_MASK1 0x03 +#define SSD_LM80_REG_MASK2 0x04 +#define SSD_LM80_REG_FANDIV 0x05 +#define SSD_LM80_REG_RES 0x06 + +#define SSD_LM80_CONVERT_VOLT(val) ((val * 10) >> 8) + +#define SSD_LM80_3V3_VOLT(val) ((val)*33/19) + +#define SSD_LM80_CONV_INTERVAL (1000) + +enum ssd_lm80_in +{ + SSD_LM80_IN_CAP = 0, + SSD_LM80_IN_1V2, + SSD_LM80_IN_1V2a, + SSD_LM80_IN_1V5, + SSD_LM80_IN_1V8, + SSD_LM80_IN_FPGA_3V3, + SSD_LM80_IN_3V3, + SSD_LM80_IN_NR +}; + +struct ssd_lm80_limit +{ + uint8_t low; + uint8_t high; +}; + +/* +/- 5% except cap in*/ +static struct ssd_lm80_limit ssd_lm80_limit[SSD_LM80_IN_NR] = { + {171, 217}, /* CAP in: 1710 ~ 2170 */ + {114, 126}, + {114, 126}, + {142, 158}, + {171, 189}, + {180, 200}, + {180, 200}, +}; + +/* temperature sensors */ +enum ssd_temp_sensor +{ + SSD_TEMP_INLET = 0, + SSD_TEMP_FLASH, + SSD_TEMP_CTRL, + SSD_TEMP_NR +}; + + +#ifdef SSD_OT_PROTECT +#define SSD_OT_DELAY (60) //ms + +#define SSD_OT_TEMP (90) //90 DegC + +#define SSD_OT_TEMP_HYST (85) //85 DegC +#endif + +/* fpga temperature */ +//#define CONVERT_TEMP(val) ((float)(val)*503.975f/4096.0f-273.15f) +#define CONVERT_TEMP(val) ((val)*504/4096-273) + +#define MAX_TEMP(val) CONVERT_TEMP(((val & 0xffff) >> 4)) +#define MIN_TEMP(val) CONVERT_TEMP((((val>>16) & 0xffff) >> 4)) +#define CUR_TEMP(val) CONVERT_TEMP((((val>>32) & 0xffff) >> 4)) + + +/* CAP monitor */ +#define SSD_PL_CAP_U1 SSD_LM80_REG_IN(SSD_LM80_IN_CAP) +#define SSD_PL_CAP_U2 SSD_LM80_REG_IN(SSD_LM80_IN_1V8) +#define SSD_PL_CAP_LEARN(u1, u2, t) ((t*(u1+u2))/(2*162*(u1-u2))) +#define SSD_PL_CAP_LEARN_WAIT (20) //20ms +#define SSD_PL_CAP_LEARN_MAX_WAIT (1000/SSD_PL_CAP_LEARN_WAIT) //1s + +#define SSD_PL_CAP_CHARGE_WAIT (1000) +#define SSD_PL_CAP_CHARGE_MAX_WAIT ((120*1000)/SSD_PL_CAP_CHARGE_WAIT) //120s + +#define SSD_PL_CAP_VOLT(val) (val*7) + +#define SSD_PL_CAP_VOLT_FULL (13700) +#define SSD_PL_CAP_VOLT_READY (12880) + +#define SSD_PL_CAP_THRESHOLD (8900) +#define SSD_PL_CAP_CP_THRESHOLD (5800) +#define SSD_PL_CAP_THRESHOLD_HYST (100) + +enum ssd_pl_cap_status +{ + SSD_PL_CAP = 0, + SSD_PL_CAP_NR +}; + +enum ssd_pl_cap_type +{ + SSD_PL_CAP_DEFAULT = 0, /* 4 cap */ + SSD_PL_CAP_CP /* 3 cap */ +}; + + +/* hwmon offset */ +#define SSD_HWMON_OFFS_TEMP (0) +#define SSD_HWMON_OFFS_SENSOR (SSD_HWMON_OFFS_TEMP + SSD_TEMP_NR) +#define SSD_HWMON_OFFS_PL_CAP (SSD_HWMON_OFFS_SENSOR + SSD_SENSOR_NR) +#define SSD_HWMON_OFFS_LM80 (SSD_HWMON_OFFS_PL_CAP + SSD_PL_CAP_NR) +#define SSD_HWMON_OFFS_CLOCK (SSD_HWMON_OFFS_LM80 + SSD_LM80_IN_NR) +#define SSD_HWMON_OFFS_FPGA (SSD_HWMON_OFFS_CLOCK + SSD_CLOCK_NR) + +#define SSD_HWMON_TEMP(idx) (SSD_HWMON_OFFS_TEMP + idx) +#define SSD_HWMON_SENSOR(idx) (SSD_HWMON_OFFS_SENSOR + idx) +#define SSD_HWMON_PL_CAP(idx) (SSD_HWMON_OFFS_PL_CAP + idx) +#define SSD_HWMON_LM80(idx) (SSD_HWMON_OFFS_LM80 + idx) +#define SSD_HWMON_CLOCK(idx) (SSD_HWMON_OFFS_CLOCK + idx) +#define SSD_HWMON_FPGA(ctrl, idx) (SSD_HWMON_OFFS_FPGA + (ctrl * SSD_FPGA_VOLT_NR) + idx) + + + +/* fifo */ +typedef struct sfifo +{ + uint32_t in; + uint32_t out; + uint32_t size; + uint32_t esize; + uint32_t mask; + spinlock_t lock; + void *data; +} sfifo_t; + +static int sfifo_alloc(struct sfifo *fifo, uint32_t size, uint32_t esize) +{ + uint32_t __size = 1; + + if (!fifo || size > INT_MAX || esize == 0) { + return -EINVAL; + } + + while (__size < size) __size <<= 1; + + if (__size < 2) { + return -EINVAL; + } + + fifo->data = vmalloc(esize * __size); + if (!fifo->data) { + return -ENOMEM; + } + + fifo->in = 0; + fifo->out = 0; + fifo->mask = __size - 1; + fifo->size = __size; + fifo->esize = esize; + spin_lock_init(&fifo->lock); + + return 0; +} + +static void sfifo_free(struct sfifo *fifo) +{ + if (!fifo) { + return; + } + + vfree(fifo->data); + fifo->data = NULL; + fifo->in = 0; + fifo->out = 0; + fifo->mask = 0; + fifo->size = 0; + fifo->esize = 0; +} + +static int __sfifo_put(struct sfifo *fifo, void *val) +{ + if (((fifo->in + 1) & fifo->mask) == fifo->out) { + return -1; + } + + memcpy((fifo->data + (fifo->in * fifo->esize)), val, fifo->esize); + fifo->in = (fifo->in + 1) & fifo->mask; + + return 0; +} + +static int sfifo_put(struct sfifo *fifo, void *val) +{ + int ret = 0; + + if (!fifo || !val) { + return -EINVAL; + } + + if (!in_interrupt()) { + spin_lock_irq(&fifo->lock); + ret = __sfifo_put(fifo, val); + spin_unlock_irq(&fifo->lock); + } else { + spin_lock(&fifo->lock); + ret = __sfifo_put(fifo, val); + spin_unlock(&fifo->lock); + } + + return ret; +} + +static int __sfifo_get(struct sfifo *fifo, void *val) +{ + if (fifo->out == fifo->in) { + return -1; + } + + memcpy(val, (fifo->data + (fifo->out * fifo->esize)), fifo->esize); + fifo->out = (fifo->out + 1) & fifo->mask; + + return 0; +} + +static int sfifo_get(struct sfifo *fifo, void *val) +{ + int ret = 0; + + if (!fifo || !val) { + return -EINVAL; + } + + if (!in_interrupt()) { + spin_lock_irq(&fifo->lock); + ret = __sfifo_get(fifo, val); + spin_unlock_irq(&fifo->lock); + } else { + spin_lock(&fifo->lock); + ret = __sfifo_get(fifo, val); + spin_unlock(&fifo->lock); + } + + return ret; +} + +/* bio list */ +#if (LINUX_VERSION_CODE < KERNEL_VERSION(2,6,30)) +struct ssd_blist { + struct bio *prev; + struct bio *next; +}; + +static inline void ssd_blist_init(struct ssd_blist *ssd_bl) +{ + ssd_bl->prev = NULL; + ssd_bl->next = NULL; +} + +static inline struct bio *ssd_blist_get(struct ssd_blist *ssd_bl) +{ + struct bio *bio = ssd_bl->prev; + + ssd_bl->prev = NULL; + ssd_bl->next = NULL; + + return bio; +} + +static inline void ssd_blist_add(struct ssd_blist *ssd_bl, struct bio *bio) +{ + bio->bi_next = NULL; + + if (ssd_bl->next) { + ssd_bl->next->bi_next = bio; + } else { + ssd_bl->prev = bio; + } + + ssd_bl->next = bio; +} + +#else +#define ssd_blist bio_list +#define ssd_blist_init bio_list_init +#define ssd_blist_get bio_list_get +#define ssd_blist_add bio_list_add +#endif + +#if (LINUX_VERSION_CODE < KERNEL_VERSION(3,14,0)) +#define bio_start(bio) (bio->bi_sector) +#else +#define bio_start(bio) (bio->bi_iter.bi_sector) +#endif + +/* mutex */ +#if (LINUX_VERSION_CODE < KERNEL_VERSION(2,6,16)) +#define mutex_lock down +#define mutex_unlock up +#define mutex semaphore +#define mutex_init init_MUTEX +#endif + +/* i2c */ +typedef union ssd_i2c_ctrl { + uint32_t val; + struct { + uint8_t wdata; + uint8_t addr; + uint16_t rw:1; + uint16_t pad:15; + } bits; +}__attribute__((packed)) ssd_i2c_ctrl_t; + +typedef union ssd_i2c_data { + uint32_t val; + struct { + uint32_t rdata:8; + uint32_t valid:1; + uint32_t pad:23; + } bits; +}__attribute__((packed)) ssd_i2c_data_t; + +/* write mode */ +enum ssd_write_mode +{ + SSD_WMODE_BUFFER = 0, + SSD_WMODE_BUFFER_EX, + SSD_WMODE_FUA, + /* dummy */ + SSD_WMODE_AUTO, + SSD_WMODE_DEFAULT +}; + +/* reset type */ +enum ssd_reset_type +{ + SSD_RST_NOINIT = 0, + SSD_RST_NORMAL, + SSD_RST_FULL +}; + +/* ssd msg */ +typedef struct ssd_sg_entry +{ + uint64_t block:48; + uint64_t length:16; + uint64_t buf; +}__attribute__((packed))ssd_sg_entry_t; + +typedef struct ssd_rw_msg +{ + uint8_t tag; + uint8_t flag; + uint8_t nsegs; + uint8_t fun; + uint32_t reserved; //for 64-bit align + struct ssd_sg_entry sge[1]; //base +}__attribute__((packed))ssd_rw_msg_t; + +typedef struct ssd_resp_msg +{ + uint8_t tag; + uint8_t status:2; + uint8_t bitflip:6; + uint8_t log; + uint8_t fun; + uint32_t reserved; +}__attribute__((packed))ssd_resp_msg_t; + +typedef struct ssd_flush_msg +{ + uint8_t tag; + uint8_t flag:2; //flash cache 0 or bbt 1 + uint8_t flash:6; + uint8_t ctrl_idx; + uint8_t fun; + uint32_t reserved; //align +}__attribute__((packed))ssd_flush_msg_t; + +typedef struct ssd_nand_op_msg +{ + uint8_t tag; + uint8_t flag; + uint8_t ctrl_idx; + uint8_t fun; + uint32_t reserved; //align + uint16_t page_count; + uint8_t chip_ce; + uint8_t chip_no; + uint32_t page_no; + uint64_t buf; +}__attribute__((packed))ssd_nand_op_msg_t; + +typedef struct ssd_ram_op_msg +{ + uint8_t tag; + uint8_t flag; + uint8_t ctrl_idx; + uint8_t fun; + uint32_t reserved; //align + uint32_t start; + uint32_t length; + uint64_t buf; +}__attribute__((packed))ssd_ram_op_msg_t; + + +/* log msg */ +typedef struct ssd_log_msg +{ + uint8_t tag; + uint8_t flag; + uint8_t ctrl_idx; + uint8_t fun; + uint32_t reserved; //align + uint64_t buf; +}__attribute__((packed))ssd_log_msg_t; + +typedef struct ssd_log_op_msg +{ + uint8_t tag; + uint8_t flag; + uint8_t ctrl_idx; + uint8_t fun; + uint32_t reserved; //align + uint64_t reserved1; //align + uint64_t buf; +}__attribute__((packed))ssd_log_op_msg_t; + +typedef struct ssd_log_resp_msg +{ + uint8_t tag; + uint16_t status :2; + uint16_t reserved1 :2; //align with the normal resp msg + uint16_t nr_log :12; + uint8_t fun; + uint32_t reserved; +}__attribute__((packed))ssd_log_resp_msg_t; + + +/* resp msg */ +typedef union ssd_response_msq +{ + ssd_resp_msg_t resp_msg; + ssd_log_resp_msg_t log_resp_msg; + uint64_t u64_msg; + uint32_t u32_msg[2]; +} ssd_response_msq_t; + + +/* custom struct */ +typedef struct ssd_protocol_info +{ + uint32_t ver; + uint32_t init_state_reg; + uint32_t init_state_reg_sz; + uint32_t chip_info_reg; + uint32_t chip_info_reg_sz; +} ssd_protocol_info_t; + +typedef struct ssd_hw_info +{ + uint32_t bridge_ver; + uint32_t ctrl_ver; + + uint32_t cmd_fifo_sz; + uint32_t cmd_fifo_sz_mask; + uint32_t cmd_max_sg; + uint32_t sg_max_sec; + uint32_t resp_ptr_sz; + uint32_t resp_msg_sz; + + uint16_t nr_ctrl; + + uint16_t nr_data_ch; + uint16_t nr_ch; + uint16_t max_ch; + uint16_t nr_chip; + + uint8_t pcb_ver; + uint8_t upper_pcb_ver; + + uint8_t nand_vendor_id; + uint8_t nand_dev_id; + + uint8_t max_ce; + uint8_t id_size; + uint16_t oob_size; + + uint16_t bbf_pages; + uint16_t bbf_seek; // + + uint16_t page_count; //per block + uint32_t page_size; + uint32_t block_count; //per flash + + uint64_t ram_size; + uint32_t ram_align; + uint32_t ram_max_len; + + uint64_t bbt_base; + uint32_t bbt_size; + uint64_t md_base; //metadata + uint32_t md_size; + uint32_t md_entry_sz; + + uint32_t log_sz; + + uint64_t nand_wbuff_base; + + uint32_t md_reserved_blks; + uint32_t reserved_blks; + uint32_t valid_pages; + uint32_t max_valid_pages; + uint64_t size; +} ssd_hw_info_t; + +typedef struct ssd_hw_info_extend +{ + uint8_t board_type; + uint8_t cap_type; + uint8_t plp_type; + uint8_t work_mode; + uint8_t form_factor; + + uint8_t pad[59]; +}ssd_hw_info_extend_t; + +typedef struct ssd_rom_info +{ + uint32_t size; + uint32_t block_size; + uint16_t page_size; + uint8_t nr_bridge_fw; + uint8_t nr_ctrl_fw; + uint8_t nr_bm_fw; + uint8_t nr_smart; + uint32_t bridge_fw_base; + uint32_t bridge_fw_sz; + uint32_t ctrl_fw_base; + uint32_t ctrl_fw_sz; + uint32_t bm_fw_base; + uint32_t bm_fw_sz; + uint32_t log_base; + uint32_t log_sz; + uint32_t smart_base; + uint32_t smart_sz; + uint32_t vp_base; + uint32_t label_base; +} ssd_rom_info_t; + +/* debug info */ +enum ssd_debug_type +{ + SSD_DEBUG_NONE = 0, + SSD_DEBUG_READ_ERR, + SSD_DEBUG_WRITE_ERR, + SSD_DEBUG_RW_ERR, + SSD_DEBUG_READ_TO, + SSD_DEBUG_WRITE_TO, + SSD_DEBUG_RW_TO, + SSD_DEBUG_LOG, + SSD_DEBUG_OFFLINE, + SSD_DEBUG_NR +}; + +typedef struct ssd_debug_info +{ + int type; + union { + struct { + uint64_t off; + uint32_t len; + } loc; + struct { + int event; + uint32_t extra; + } log; + } data; +}ssd_debug_info_t; + +/* label */ +#define SSD_LABEL_FIELD_SZ 32 +#define SSD_SN_SZ 16 + +typedef struct ssd_label +{ + char date[SSD_LABEL_FIELD_SZ]; + char sn[SSD_LABEL_FIELD_SZ]; + char part[SSD_LABEL_FIELD_SZ]; + char desc[SSD_LABEL_FIELD_SZ]; + char other[SSD_LABEL_FIELD_SZ]; + char maf[SSD_LABEL_FIELD_SZ]; +} ssd_label_t; + +#define SSD_LABEL_DESC_SZ 256 + +typedef struct ssd_labelv3 +{ + char boardtype[SSD_LABEL_FIELD_SZ]; + char barcode[SSD_LABEL_FIELD_SZ]; + char item[SSD_LABEL_FIELD_SZ]; + char description[SSD_LABEL_DESC_SZ]; + char manufactured[SSD_LABEL_FIELD_SZ]; + char vendorname[SSD_LABEL_FIELD_SZ]; + char issuenumber[SSD_LABEL_FIELD_SZ]; + char cleicode[SSD_LABEL_FIELD_SZ]; + char bom[SSD_LABEL_FIELD_SZ]; +} ssd_labelv3_t; + +/* battery */ +typedef struct ssd_battery_info +{ + uint32_t fw_ver; +} ssd_battery_info_t; + +/* ssd power stat */ +typedef struct ssd_power_stat +{ + uint64_t nr_poweron; + uint64_t nr_powerloss; + uint64_t init_failed; +} ssd_power_stat_t; + +/* io stat */ +typedef struct ssd_io_stat +{ + uint64_t run_time; + uint64_t nr_to; + uint64_t nr_ioerr; + uint64_t nr_rwerr; + uint64_t nr_read; + uint64_t nr_write; + uint64_t rsectors; + uint64_t wsectors; +} ssd_io_stat_t; + +/* ecc */ +typedef struct ssd_ecc_info +{ + uint64_t bitflip[SSD_ECC_MAX_FLIP]; +} ssd_ecc_info_t; + +/* log */ +enum ssd_log_level +{ + SSD_LOG_LEVEL_INFO = 0, + SSD_LOG_LEVEL_NOTICE, + SSD_LOG_LEVEL_WARNING, + SSD_LOG_LEVEL_ERR, + SSD_LOG_NR_LEVEL +}; + +typedef struct ssd_log_info +{ + uint64_t nr_log; + uint64_t stat[SSD_LOG_NR_LEVEL]; +} ssd_log_info_t; + +/* S.M.A.R.T. */ +#define SSD_SMART_MAGIC (0x5452414D53445353ull) + +typedef struct ssd_smart +{ + struct ssd_power_stat pstat; + struct ssd_io_stat io_stat; + struct ssd_ecc_info ecc_info; + struct ssd_log_info log_info; + uint64_t version; + uint64_t magic; +} ssd_smart_t; + +/* internal log */ +typedef struct ssd_internal_log +{ + uint32_t nr_log; + void *log; +} ssd_internal_log_t; + +/* ssd cmd */ +typedef struct ssd_cmd +{ + struct bio *bio; + struct scatterlist *sgl; + struct list_head list; + void *dev; + int nsegs; + int flag; /*pbio(1) or bio(0)*/ + + int tag; + void *msg; + dma_addr_t msg_dma; + + unsigned long start_time; + + int errors; + unsigned int nr_log; + + struct timer_list cmd_timer; + struct completion *waiting; +} ssd_cmd_t; + +typedef void (*send_cmd_func)(struct ssd_cmd *); +typedef int (*ssd_event_call)(struct gendisk *, int, int); /* gendisk, event id, event level */ + +/* dcmd sz */ +#define SSD_DCMD_MAX_SZ 32 + +typedef struct ssd_dcmd +{ + struct list_head list; + void *dev; + uint8_t msg[SSD_DCMD_MAX_SZ]; +} ssd_dcmd_t; + + +enum ssd_state { + SSD_INIT_WORKQ, + SSD_INIT_BD, + SSD_ONLINE, + /* full reset */ + SSD_RESETING, + /* hw log */ + SSD_LOG_HW, + /* log err */ + SSD_LOG_ERR, +}; + +#define SSD_QUEUE_NAME_LEN 16 +typedef struct ssd_queue { + char name[SSD_QUEUE_NAME_LEN]; + void *dev; + + int idx; + + uint32_t resp_idx; + uint32_t resp_idx_mask; + uint32_t resp_msg_sz; + + void *resp_msg; + void *resp_ptr; + + struct ssd_cmd *cmd; + + struct ssd_io_stat io_stat; + struct ssd_ecc_info ecc_info; +} ssd_queue_t; + +typedef struct ssd_device { + char name[SSD_DEV_NAME_LEN]; + + int idx; + int major; + int readonly; + + int int_mode; +#ifdef SSD_ESCAPE_IRQ + int irq_cpu; +#endif + + int reload_fw; + + int ot_delay; //in ms + + atomic_t refcnt; + atomic_t tocnt; + atomic_t in_flight[2]; //r&w + + uint64_t uptime; + + struct list_head list; + struct pci_dev *pdev; + + unsigned long mmio_base; + unsigned long mmio_len; + void __iomem *ctrlp; + + struct mutex spi_mutex; + struct mutex i2c_mutex; + + struct ssd_protocol_info protocol_info; + struct ssd_hw_info hw_info; + struct ssd_rom_info rom_info; + struct ssd_label label; + + struct ssd_smart smart; + + atomic_t in_sendq; + spinlock_t sendq_lock; + struct ssd_blist sendq; + struct task_struct *send_thread; + wait_queue_head_t send_waitq; + + atomic_t in_doneq; + spinlock_t doneq_lock; + struct ssd_blist doneq; + struct task_struct *done_thread; + wait_queue_head_t done_waitq; + + struct ssd_dcmd *dcmd; + spinlock_t dcmd_lock; + struct list_head dcmd_list; /* direct cmd list */ + wait_queue_head_t dcmd_wq; + + unsigned long *tag_map; + wait_queue_head_t tag_wq; + + spinlock_t cmd_lock; + struct ssd_cmd *cmd; + send_cmd_func scmd; + + ssd_event_call event_call; + void *msg_base; + dma_addr_t msg_base_dma; + + uint32_t resp_idx; + void *resp_msg_base; + void *resp_ptr_base; + dma_addr_t resp_msg_base_dma; + dma_addr_t resp_ptr_base_dma; + + int nr_queue; + struct msix_entry entry[SSD_MSIX_VEC]; + struct ssd_queue queue[SSD_MSIX_VEC]; + + struct request_queue *rq; /* The device request queue */ + struct gendisk *gd; /* The gendisk structure */ + + struct mutex internal_log_mutex; + struct ssd_internal_log internal_log; + struct workqueue_struct *workq; + struct work_struct log_work; /* get log */ + void *log_buf; + + unsigned long state; /* device state, for example, block device inited */ + + struct module *owner; + + /* extend */ + + int slave; + int cmajor; + int save_md; + int ot_protect; + + struct kref kref; + + struct mutex gd_mutex; + struct ssd_log_info log_info; /* volatile */ + + atomic_t queue_depth; + struct mutex barrier_mutex; + struct mutex fw_mutex; + + struct ssd_hw_info_extend hw_info_ext; + struct ssd_labelv3 labelv3; + + int wmode; + int user_wmode; + struct mutex bm_mutex; + struct work_struct bm_work; /* check bm */ + struct timer_list bm_timer; + struct sfifo log_fifo; + + struct timer_list routine_timer; + unsigned long routine_tick; + unsigned long hwmon; + + struct work_struct hwmon_work; /* check hw */ + struct work_struct capmon_work; /* check battery */ + struct work_struct tempmon_work; /* check temp */ + + /* debug info */ + struct ssd_debug_info db_info; + uint64_t reset_time; + int has_non_0x98_reg_access; + spinlock_t in_flight_lock; + + uint64_t last_poweron_id; + +} ssd_device_t; + + +/* Ioctl struct */ +typedef struct ssd_acc_info { + uint32_t threshold_l1; + uint32_t threshold_l2; + uint32_t val; +} ssd_acc_info_t; + +typedef struct ssd_reg_op_info +{ + uint32_t offset; + uint32_t value; +} ssd_reg_op_info_t; + +typedef struct ssd_spi_op_info +{ + void __user *buf; + uint32_t off; + uint32_t len; +} ssd_spi_op_info_t; + +typedef struct ssd_i2c_op_info +{ + uint8_t saddr; + uint8_t wsize; + uint8_t rsize; + void __user *wbuf; + void __user *rbuf; +} ssd_i2c_op_info_t; + +typedef struct ssd_smbus_op_info +{ + uint8_t saddr; + uint8_t cmd; + uint8_t size; + void __user *buf; +} ssd_smbus_op_info_t; + +typedef struct ssd_ram_op_info { + uint8_t ctrl_idx; + uint32_t length; + uint64_t start; + uint8_t __user *buf; +} ssd_ram_op_info_t; + +typedef struct ssd_flash_op_info { + uint32_t page; + uint16_t flash; + uint8_t chip; + uint8_t ctrl_idx; + uint8_t __user *buf; +} ssd_flash_op_info_t; + +typedef struct ssd_sw_log_info { + uint16_t event; + uint16_t pad; + uint32_t data; +} ssd_sw_log_info_t; + +typedef struct ssd_version_info +{ + uint32_t bridge_ver; /* bridge fw version */ + uint32_t ctrl_ver; /* controller fw version */ + uint32_t bm_ver; /* battery manager fw version */ + uint8_t pcb_ver; /* main pcb version */ + uint8_t upper_pcb_ver; + uint8_t pad0; + uint8_t pad1; +} ssd_version_info_t; + +typedef struct pci_addr +{ + uint16_t domain; + uint8_t bus; + uint8_t slot; + uint8_t func; +} pci_addr_t; + +typedef struct ssd_drv_param_info { + int mode; + int status_mask; + int int_mode; + int threaded_irq; + int log_level; + int wmode; + int ot_protect; + int finject; + int pad[8]; +} ssd_drv_param_info_t; + + +/* form factor */ +enum ssd_form_factor +{ + SSD_FORM_FACTOR_HHHL = 0, + SSD_FORM_FACTOR_FHHL +}; + + +/* ssd power loss protect */ +enum ssd_plp_type +{ + SSD_PLP_SCAP = 0, + SSD_PLP_CAP, + SSD_PLP_NONE +}; + +/* ssd bm */ +#define SSD_BM_SLAVE_ADDRESS 0x16 +#define SSD_BM_CAP 5 + +/* SBS cmd */ +#define SSD_BM_SAFETYSTATUS 0x51 +#define SSD_BM_OPERATIONSTATUS 0x54 + +/* ManufacturerAccess */ +#define SSD_BM_MANUFACTURERACCESS 0x00 +#define SSD_BM_ENTER_CAP_LEARNING 0x0023 /* cap learning */ + +/* Data flash access */ +#define SSD_BM_DATA_FLASH_SUBCLASS_ID 0x77 +#define SSD_BM_DATA_FLASH_SUBCLASS_ID_PAGE1 0x78 +#define SSD_BM_SYSTEM_DATA_SUBCLASS_ID 56 +#define SSD_BM_CONFIGURATION_REGISTERS_ID 64 + +/* min cap voltage */ +#define SSD_BM_CAP_VOLT_MIN 500 + +/* +enum ssd_bm_cap +{ + SSD_BM_CAP_VINA = 1, + SSD_BM_CAP_JH = 3 +};*/ + +enum ssd_bmstatus +{ + SSD_BMSTATUS_OK = 0, + SSD_BMSTATUS_CHARGING, /* not fully charged */ + SSD_BMSTATUS_WARNING +}; + +enum sbs_unit { + SBS_UNIT_VALUE = 0, + SBS_UNIT_TEMPERATURE, + SBS_UNIT_VOLTAGE, + SBS_UNIT_CURRENT, + SBS_UNIT_ESR, + SBS_UNIT_PERCENT, + SBS_UNIT_CAPACITANCE +}; + +enum sbs_size { + SBS_SIZE_BYTE = 1, + SBS_SIZE_WORD, + SBS_SIZE_BLK, +}; + +struct sbs_cmd { + uint8_t cmd; + uint8_t size; + uint8_t unit; + uint8_t off; + uint16_t mask; + char *desc; +}; + +struct ssd_bm { + uint16_t temp; + uint16_t volt; + uint16_t curr; + uint16_t esr; + uint16_t rsoc; + uint16_t health; + uint16_t cap; + uint16_t chg_curr; + uint16_t chg_volt; + uint16_t cap_volt[SSD_BM_CAP]; + uint16_t sf_alert; + uint16_t sf_status; + uint16_t op_status; + uint16_t sys_volt; +}; + +struct ssd_bm_manufacturer_data +{ + uint16_t pack_lot_code; + uint16_t pcb_lot_code; + uint16_t firmware_ver; + uint16_t hardware_ver; +}; + +struct ssd_bm_configuration_registers +{ + struct { + uint16_t cc:3; + uint16_t rsvd:5; + uint16_t stack:1; + uint16_t rsvd1:2; + uint16_t temp:2; + uint16_t rsvd2:1; + uint16_t lt_en:1; + uint16_t rsvd3:1; + } operation_cfg; + uint16_t pad; + uint16_t fet_action; + uint16_t pad1; + uint16_t fault; +}; + +#define SBS_VALUE_MASK 0xffff + +#define bm_var_offset(var) ((size_t) &((struct ssd_bm *)0)->var) +#define bm_var(start, offset) ((void *) start + (offset)) + +static struct sbs_cmd ssd_bm_sbs[] = { + {0x08, SBS_SIZE_WORD, SBS_UNIT_TEMPERATURE, bm_var_offset(temp), SBS_VALUE_MASK, "Temperature"}, + {0x09, SBS_SIZE_WORD, SBS_UNIT_VOLTAGE, bm_var_offset(volt), SBS_VALUE_MASK, "Voltage"}, + {0x0a, SBS_SIZE_WORD, SBS_UNIT_CURRENT, bm_var_offset(curr), SBS_VALUE_MASK, "Current"}, + {0x0b, SBS_SIZE_WORD, SBS_UNIT_ESR, bm_var_offset(esr), SBS_VALUE_MASK, "ESR"}, + {0x0d, SBS_SIZE_BYTE, SBS_UNIT_PERCENT, bm_var_offset(rsoc), SBS_VALUE_MASK, "RelativeStateOfCharge"}, + {0x0e, SBS_SIZE_BYTE, SBS_UNIT_PERCENT, bm_var_offset(health), SBS_VALUE_MASK, "Health"}, + {0x10, SBS_SIZE_WORD, SBS_UNIT_CAPACITANCE, bm_var_offset(cap), SBS_VALUE_MASK, "Capacitance"}, + {0x14, SBS_SIZE_WORD, SBS_UNIT_CURRENT, bm_var_offset(chg_curr), SBS_VALUE_MASK, "ChargingCurrent"}, + {0x15, SBS_SIZE_WORD, SBS_UNIT_VOLTAGE, bm_var_offset(chg_volt), SBS_VALUE_MASK, "ChargingVoltage"}, + {0x3b, SBS_SIZE_WORD, SBS_UNIT_VOLTAGE, (uint8_t)bm_var_offset(cap_volt[4]), SBS_VALUE_MASK, "CapacitorVoltage5"}, + {0x3c, SBS_SIZE_WORD, SBS_UNIT_VOLTAGE, (uint8_t)bm_var_offset(cap_volt[3]), SBS_VALUE_MASK, "CapacitorVoltage4"}, + {0x3d, SBS_SIZE_WORD, SBS_UNIT_VOLTAGE, (uint8_t)bm_var_offset(cap_volt[2]), SBS_VALUE_MASK, "CapacitorVoltage3"}, + {0x3e, SBS_SIZE_WORD, SBS_UNIT_VOLTAGE, (uint8_t)bm_var_offset(cap_volt[1]), SBS_VALUE_MASK, "CapacitorVoltage2"}, + {0x3f, SBS_SIZE_WORD, SBS_UNIT_VOLTAGE, (uint8_t)bm_var_offset(cap_volt[0]), SBS_VALUE_MASK, "CapacitorVoltage1"}, + {0x50, SBS_SIZE_WORD, SBS_UNIT_VALUE, bm_var_offset(sf_alert), 0x870F, "SafetyAlert"}, + {0x51, SBS_SIZE_WORD, SBS_UNIT_VALUE, bm_var_offset(sf_status), 0xE7BF, "SafetyStatus"}, + {0x54, SBS_SIZE_WORD, SBS_UNIT_VALUE, bm_var_offset(op_status), 0x79F4, "OperationStatus"}, + {0x5a, SBS_SIZE_WORD, SBS_UNIT_VOLTAGE, bm_var_offset(sys_volt), SBS_VALUE_MASK, "SystemVoltage"}, + {0, 0, 0, 0, 0, NULL}, +}; + +/* ssd ioctl */ +#define SSD_CMD_GET_PROTOCOL_INFO _IOR('H', 100, struct ssd_protocol_info) +#define SSD_CMD_GET_HW_INFO _IOR('H', 101, struct ssd_hw_info) +#define SSD_CMD_GET_ROM_INFO _IOR('H', 102, struct ssd_rom_info) +#define SSD_CMD_GET_SMART _IOR('H', 103, struct ssd_smart) +#define SSD_CMD_GET_IDX _IOR('H', 105, int) +#define SSD_CMD_GET_AMOUNT _IOR('H', 106, int) +#define SSD_CMD_GET_TO_INFO _IOR('H', 107, int) +#define SSD_CMD_GET_DRV_VER _IOR('H', 108, char[DRIVER_VERSION_LEN]) + +#define SSD_CMD_GET_BBACC_INFO _IOR('H', 109, struct ssd_acc_info) +#define SSD_CMD_GET_ECACC_INFO _IOR('H', 110, struct ssd_acc_info) + +#define SSD_CMD_GET_HW_INFO_EXT _IOR('H', 111, struct ssd_hw_info_extend) + +#define SSD_CMD_REG_READ _IOWR('H', 120, struct ssd_reg_op_info) +#define SSD_CMD_REG_WRITE _IOWR('H', 121, struct ssd_reg_op_info) + +#define SSD_CMD_SPI_READ _IOWR('H', 125, struct ssd_spi_op_info) +#define SSD_CMD_SPI_WRITE _IOWR('H', 126, struct ssd_spi_op_info) +#define SSD_CMD_SPI_ERASE _IOWR('H', 127, struct ssd_spi_op_info) + +#define SSD_CMD_I2C_READ _IOWR('H', 128, struct ssd_i2c_op_info) +#define SSD_CMD_I2C_WRITE _IOWR('H', 129, struct ssd_i2c_op_info) +#define SSD_CMD_I2C_WRITE_READ _IOWR('H', 130, struct ssd_i2c_op_info) + +#define SSD_CMD_SMBUS_SEND_BYTE _IOWR('H', 131, struct ssd_smbus_op_info) +#define SSD_CMD_SMBUS_RECEIVE_BYTE _IOWR('H', 132, struct ssd_smbus_op_info) +#define SSD_CMD_SMBUS_WRITE_BYTE _IOWR('H', 133, struct ssd_smbus_op_info) +#define SSD_CMD_SMBUS_READ_BYTE _IOWR('H', 135, struct ssd_smbus_op_info) +#define SSD_CMD_SMBUS_WRITE_WORD _IOWR('H', 136, struct ssd_smbus_op_info) +#define SSD_CMD_SMBUS_READ_WORD _IOWR('H', 137, struct ssd_smbus_op_info) +#define SSD_CMD_SMBUS_WRITE_BLOCK _IOWR('H', 138, struct ssd_smbus_op_info) +#define SSD_CMD_SMBUS_READ_BLOCK _IOWR('H', 139, struct ssd_smbus_op_info) + +#define SSD_CMD_BM_GET_VER _IOR('H', 140, uint16_t) +#define SSD_CMD_BM_GET_NR_CAP _IOR('H', 141, int) +#define SSD_CMD_BM_CAP_LEARNING _IOW('H', 142, int) +#define SSD_CMD_CAP_LEARN _IOR('H', 143, uint32_t) +#define SSD_CMD_GET_CAP_STATUS _IOR('H', 144, int) + +#define SSD_CMD_RAM_READ _IOWR('H', 150, struct ssd_ram_op_info) +#define SSD_CMD_RAM_WRITE _IOWR('H', 151, struct ssd_ram_op_info) + +#define SSD_CMD_NAND_READ_ID _IOR('H', 160, struct ssd_flash_op_info) +#define SSD_CMD_NAND_READ _IOWR('H', 161, struct ssd_flash_op_info) //with oob +#define SSD_CMD_NAND_WRITE _IOWR('H', 162, struct ssd_flash_op_info) +#define SSD_CMD_NAND_ERASE _IOWR('H', 163, struct ssd_flash_op_info) +#define SSD_CMD_NAND_READ_EXT _IOWR('H', 164, struct ssd_flash_op_info) //ingore EIO + +#define SSD_CMD_UPDATE_BBT _IOW('H', 180, struct ssd_flash_op_info) + +#define SSD_CMD_CLEAR_ALARM _IOW('H', 190, int) +#define SSD_CMD_SET_ALARM _IOW('H', 191, int) + +#define SSD_CMD_RESET _IOW('H', 200, int) +#define SSD_CMD_RELOAD_FW _IOW('H', 201, int) +#define SSD_CMD_UNLOAD_DEV _IOW('H', 202, int) +#define SSD_CMD_LOAD_DEV _IOW('H', 203, int) +#define SSD_CMD_UPDATE_VP _IOWR('H', 205, uint32_t) +#define SSD_CMD_FULL_RESET _IOW('H', 206, int) + +#define SSD_CMD_GET_NR_LOG _IOR('H', 220, uint32_t) +#define SSD_CMD_GET_LOG _IOR('H', 221, void *) +#define SSD_CMD_LOG_LEVEL _IOW('H', 222, int) + +#define SSD_CMD_OT_PROTECT _IOW('H', 223, int) +#define SSD_CMD_GET_OT_STATUS _IOR('H', 224, int) + +#define SSD_CMD_CLEAR_LOG _IOW('H', 230, int) +#define SSD_CMD_CLEAR_SMART _IOW('H', 231, int) + +#define SSD_CMD_SW_LOG _IOW('H', 232, struct ssd_sw_log_info) + +#define SSD_CMD_GET_LABEL _IOR('H', 235, struct ssd_label) +#define SSD_CMD_GET_VERSION _IOR('H', 236, struct ssd_version_info) +#define SSD_CMD_GET_TEMPERATURE _IOR('H', 237, int) +#define SSD_CMD_GET_BMSTATUS _IOR('H', 238, int) +#define SSD_CMD_GET_LABEL2 _IOR('H', 239, void *) + + +#define SSD_CMD_FLUSH _IOW('H', 240, int) +#define SSD_CMD_SAVE_MD _IOW('H', 241, int) + +#define SSD_CMD_SET_WMODE _IOW('H', 242, int) +#define SSD_CMD_GET_WMODE _IOR('H', 243, int) +#define SSD_CMD_GET_USER_WMODE _IOR('H', 244, int) + +#define SSD_CMD_DEBUG _IOW('H', 250, struct ssd_debug_info) +#define SSD_CMD_DRV_PARAM_INFO _IOR('H', 251, struct ssd_drv_param_info) + +#define SSD_CMD_CLEAR_WARNING _IOW('H', 260, int) + + +/* log */ +#define SSD_LOG_MAX_SZ 4096 +#define SSD_LOG_LEVEL SSD_LOG_LEVEL_NOTICE +#define SSD_DIF_WITH_OLD_LOG 0x3f + +enum ssd_log_data +{ + SSD_LOG_DATA_NONE = 0, + SSD_LOG_DATA_LOC, + SSD_LOG_DATA_HEX +}; + +typedef struct ssd_log_entry +{ + union { + struct { + uint32_t page:10; + uint32_t block:14; + uint32_t flash:8; + } loc; + struct { + uint32_t page:12; + uint32_t block:12; + uint32_t flash:8; + } loc1; + uint32_t val; + } data; + uint16_t event:10; + uint16_t mod:6; + uint16_t idx; +}__attribute__((packed))ssd_log_entry_t; + +typedef struct ssd_log +{ + uint64_t time:56; + uint64_t ctrl_idx:8; + ssd_log_entry_t le; +} __attribute__((packed)) ssd_log_t; + +typedef struct ssd_log_desc +{ + uint16_t event; + uint8_t level; + uint8_t data; + uint8_t sblock; + uint8_t spage; + char *desc; +} __attribute__((packed)) ssd_log_desc_t; + +#define SSD_LOG_SW_IDX 0xF +#define SSD_UNKNOWN_EVENT ((uint16_t)-1) +static struct ssd_log_desc ssd_log_desc[] = { + /* event, level, show flash, show block, show page, desc */ + {0x0, SSD_LOG_LEVEL_WARNING, SSD_LOG_DATA_LOC, 0, 0, "Create BBT failure"}, //g3 + {0x1, SSD_LOG_LEVEL_WARNING, SSD_LOG_DATA_LOC, 0, 0, "Read BBT failure"}, //g3 + {0x2, SSD_LOG_LEVEL_NOTICE, SSD_LOG_DATA_LOC, 1, 0, "Mark bad block"}, + {0x3, SSD_LOG_LEVEL_NOTICE, SSD_LOG_DATA_LOC, 0, 0, "Flush BBT failure"}, + {0x4, SSD_LOG_LEVEL_NOTICE, SSD_LOG_DATA_LOC, 1, 1, "Program failure"}, + {0x7, SSD_LOG_LEVEL_ERR, SSD_LOG_DATA_LOC, 1, 1, "No available blocks"}, + {0x8, SSD_LOG_LEVEL_NOTICE, SSD_LOG_DATA_LOC, 1, 0, "Bad EC header"}, + {0x9, SSD_LOG_LEVEL_WARNING, SSD_LOG_DATA_LOC, 1, 0, "Bad VID header"}, //g3 + {0xa, SSD_LOG_LEVEL_INFO, SSD_LOG_DATA_LOC, 1, 0, "Wear leveling"}, + {0xb, SSD_LOG_LEVEL_NOTICE, SSD_LOG_DATA_LOC, 1, 1, "WL read back failure"}, + {0x11, SSD_LOG_LEVEL_ERR, SSD_LOG_DATA_LOC, 1, 1, "Data recovery failure"}, // err + {0x20, SSD_LOG_LEVEL_ERR, SSD_LOG_DATA_LOC, 1, 1, "Init: scan mapping table failure"}, // err g3 + {0x21, SSD_LOG_LEVEL_NOTICE, SSD_LOG_DATA_LOC, 1, 1, "Program failure"}, + {0x22, SSD_LOG_LEVEL_NOTICE, SSD_LOG_DATA_LOC, 1, 1, "Program failure"}, + {0x23, SSD_LOG_LEVEL_NOTICE, SSD_LOG_DATA_LOC, 1, 1, "Program failure"}, + {0x24, SSD_LOG_LEVEL_NOTICE, SSD_LOG_DATA_LOC, 1, 0, "Merge: read mapping page failure"}, + {0x25, SSD_LOG_LEVEL_NOTICE, SSD_LOG_DATA_LOC, 1, 1, "Merge: read back failure"}, + {0x26, SSD_LOG_LEVEL_NOTICE, SSD_LOG_DATA_LOC, 1, 1, "Program failure"}, + {0x27, SSD_LOG_LEVEL_WARNING, SSD_LOG_DATA_LOC, 1, 1, "Data corrupted for abnormal power down"}, //g3 + {0x28, SSD_LOG_LEVEL_NOTICE, SSD_LOG_DATA_LOC, 1, 1, "Merge: mapping page corrupted"}, + {0x29, SSD_LOG_LEVEL_NOTICE, SSD_LOG_DATA_LOC, 1, 0, "Init: no mapping page"}, + {0x2a, SSD_LOG_LEVEL_NOTICE, SSD_LOG_DATA_LOC, 1, 1, "Init: mapping pages incomplete"}, + {0x2b, SSD_LOG_LEVEL_ERR, SSD_LOG_DATA_LOC, 1, 1, "Read back failure after programming failure"}, // err + {0xf1, SSD_LOG_LEVEL_ERR, SSD_LOG_DATA_LOC, 1, 1, "Read failure without recovery"}, // err + {0xf2, SSD_LOG_LEVEL_ERR, SSD_LOG_DATA_LOC, 0, 0, "No available blocks"}, // maybe err g3 + {0xf3, SSD_LOG_LEVEL_ERR, SSD_LOG_DATA_LOC, 1, 0, "Init: RAID incomplete"}, // err g3 + {0xf4, SSD_LOG_LEVEL_NOTICE, SSD_LOG_DATA_LOC, 1, 1, "Program failure"}, + {0xf5, SSD_LOG_LEVEL_NOTICE, SSD_LOG_DATA_LOC, 1, 1, "Read failure in moving data"}, + {0xf6, SSD_LOG_LEVEL_NOTICE, SSD_LOG_DATA_LOC, 1, 1, "Program failure"}, + {0xf7, SSD_LOG_LEVEL_WARNING, SSD_LOG_DATA_LOC, 1, 1, "Init: RAID not complete"}, + {0xf8, SSD_LOG_LEVEL_NOTICE, SSD_LOG_DATA_LOC, 1, 0, "Init: data moving interrupted"}, + {0xfe, SSD_LOG_LEVEL_NOTICE, SSD_LOG_DATA_LOC, 1, 1, "Data inspection failure"}, + {0xff, SSD_LOG_LEVEL_NOTICE, SSD_LOG_DATA_LOC, 1, 1, "IO: ECC failed"}, + + /* new */ + {0x2e, SSD_LOG_LEVEL_ERR, SSD_LOG_DATA_LOC, 0, 0, "No available reserved blocks" }, // err + {0x30, SSD_LOG_LEVEL_NOTICE, SSD_LOG_DATA_LOC, 0, 0, "Init: PMT membership not found"}, + {0x31, SSD_LOG_LEVEL_NOTICE, SSD_LOG_DATA_HEX, 0, 0, "Init: PMT corrupted"}, + {0x32, SSD_LOG_LEVEL_NOTICE, SSD_LOG_DATA_LOC, 0, 0, "Init: PBT membership not found"}, + {0x33, SSD_LOG_LEVEL_NOTICE, SSD_LOG_DATA_LOC, 0, 0, "Init: PBT not found"}, + {0x34, SSD_LOG_LEVEL_NOTICE, SSD_LOG_DATA_LOC, 0, 0, "Init: PBT corrupted"}, + {0x35, SSD_LOG_LEVEL_NOTICE, SSD_LOG_DATA_LOC, 1, 1, "Init: PMT page read failure"}, + {0x36, SSD_LOG_LEVEL_NOTICE, SSD_LOG_DATA_LOC, 1, 1, "Init: PBT page read failure"}, + {0x37, SSD_LOG_LEVEL_NOTICE, SSD_LOG_DATA_LOC, 1, 1, "Init: PBT backup page read failure"}, + {0x38, SSD_LOG_LEVEL_NOTICE, SSD_LOG_DATA_LOC, 1, 1, "Init: PBMT read failure"}, + {0x39, SSD_LOG_LEVEL_ERR, SSD_LOG_DATA_LOC, 1, 1, "Init: PBMT scan failure"}, // err + {0x3a, SSD_LOG_LEVEL_NOTICE, SSD_LOG_DATA_LOC, 1, 1, "Init: first page read failure"}, + {0x3b, SSD_LOG_LEVEL_ERR, SSD_LOG_DATA_LOC, 1, 1, "Init: first page scan failure"}, // err + {0x3c, SSD_LOG_LEVEL_ERR, SSD_LOG_DATA_LOC, 1, 1, "Init: scan unclosed block failure"}, // err + {0x3d, SSD_LOG_LEVEL_NOTICE, SSD_LOG_DATA_LOC, 1, 1, "Init: write pointer mismatch"}, + {0x3e, SSD_LOG_LEVEL_NOTICE, SSD_LOG_DATA_LOC, 1, 1, "Init: PMT recovery: PBMT read failure"}, + {0x3f, SSD_LOG_LEVEL_NOTICE, SSD_LOG_DATA_LOC, 1, 0, "Init: PMT recovery: PBMT scan failure"}, + {0x40, SSD_LOG_LEVEL_ERR, SSD_LOG_DATA_LOC, 1, 1, "Init: PMT recovery: data page read failure"}, //err + {0x41, SSD_LOG_LEVEL_NOTICE, SSD_LOG_DATA_LOC, 1, 1, "Init: PBT write pointer mismatch"}, + {0x42, SSD_LOG_LEVEL_NOTICE, SSD_LOG_DATA_LOC, 1, 1, "Init: PBT latest version corrupted"}, + {0x43, SSD_LOG_LEVEL_ERR, SSD_LOG_DATA_LOC, 1, 0, "Init: too many unclosed blocks"}, + {0x44, SSD_LOG_LEVEL_NOTICE, SSD_LOG_DATA_HEX, 0, 0, "Init: PDW block found"}, + {0x45, SSD_LOG_LEVEL_ERR, SSD_LOG_DATA_HEX, 0, 0, "Init: more than one PDW block found"}, //err + {0x46, SSD_LOG_LEVEL_NOTICE, SSD_LOG_DATA_LOC, 1, 1, "Init: first page is blank or read failure"}, + {0x47, SSD_LOG_LEVEL_NOTICE, SSD_LOG_DATA_LOC, 0, 0, "Init: PDW block not found"}, + + {0x50, SSD_LOG_LEVEL_ERR, SSD_LOG_DATA_LOC, 1, 0, "Cache: hit error data"}, // err + {0x51, SSD_LOG_LEVEL_ERR, SSD_LOG_DATA_LOC, 1, 0, "Cache: read back failure"}, // err + {0x52, SSD_LOG_LEVEL_NOTICE, SSD_LOG_DATA_NONE, 0, 0, "Cache: unknown command"}, //? + {0x53, SSD_LOG_LEVEL_ERR, SSD_LOG_DATA_LOC, 1, 1, "GC/WL read back failure"}, // err + + {0x60, SSD_LOG_LEVEL_NOTICE, SSD_LOG_DATA_LOC, 1, 0, "Erase failure"}, + + {0x70, SSD_LOG_LEVEL_NOTICE, SSD_LOG_DATA_LOC, 1, 1, "LPA not matched"}, + {0x71, SSD_LOG_LEVEL_NOTICE, SSD_LOG_DATA_LOC, 1, 1, "PBN not matched"}, + {0x72, SSD_LOG_LEVEL_NOTICE, SSD_LOG_DATA_LOC, 1, 1, "Read retry failure"}, + {0x73, SSD_LOG_LEVEL_NOTICE, SSD_LOG_DATA_LOC, 1, 1, "Need raid recovery"}, + {0x74, SSD_LOG_LEVEL_INFO, SSD_LOG_DATA_LOC, 1, 1, "Need read retry"}, + {0x75, SSD_LOG_LEVEL_NOTICE, SSD_LOG_DATA_LOC, 1, 1, "Read invalid data page"}, + {0x76, SSD_LOG_LEVEL_INFO, SSD_LOG_DATA_LOC, 1, 1, "ECC error, data in cache, PBN matched"}, + {0x77, SSD_LOG_LEVEL_NOTICE, SSD_LOG_DATA_LOC, 1, 1, "ECC error, data in cache, PBN not matched"}, + {0x78, SSD_LOG_LEVEL_NOTICE, SSD_LOG_DATA_LOC, 1, 1, "ECC error, data in flash, PBN not matched"}, + {0x79, SSD_LOG_LEVEL_NOTICE, SSD_LOG_DATA_LOC, 1, 1, "ECC ok, data in cache, LPA not matched"}, + {0x7a, SSD_LOG_LEVEL_NOTICE, SSD_LOG_DATA_LOC, 1, 1, "ECC ok, data in flash, LPA not matched"}, + {0x7b, SSD_LOG_LEVEL_NOTICE, SSD_LOG_DATA_LOC, 1, 1, "RAID data in cache, LPA not matched"}, + {0x7c, SSD_LOG_LEVEL_NOTICE, SSD_LOG_DATA_LOC, 1, 1, "RAID data in flash, LPA not matched"}, + {0x7d, SSD_LOG_LEVEL_NOTICE, SSD_LOG_DATA_LOC, 1, 1, "Read data page status error"}, + {0x7e, SSD_LOG_LEVEL_NOTICE, SSD_LOG_DATA_LOC, 1, 1, "Read blank page"}, + {0x7f, SSD_LOG_LEVEL_NOTICE, SSD_LOG_DATA_LOC, 1, 1, "Access flash timeout"}, + + {0x80, SSD_LOG_LEVEL_NOTICE, SSD_LOG_DATA_LOC, 1, 0, "EC overflow"}, + {0x81, SSD_LOG_LEVEL_INFO, SSD_LOG_DATA_NONE, 0, 0, "Scrubbing completed"}, + {0x82, SSD_LOG_LEVEL_INFO, SSD_LOG_DATA_LOC, 1, 0, "Unstable block(too much bit flip)"}, + {0x83, SSD_LOG_LEVEL_NOTICE, SSD_LOG_DATA_LOC, 1, 0, "GC: ram error"}, //? + {0x84, SSD_LOG_LEVEL_NOTICE, SSD_LOG_DATA_LOC, 1, 0, "GC: one PBMT read failure"}, + + {0x88, SSD_LOG_LEVEL_NOTICE, SSD_LOG_DATA_LOC, 1, 0, "GC: mark bad block"}, + {0x89, SSD_LOG_LEVEL_NOTICE, SSD_LOG_DATA_LOC, 1, 0, "GC: invalid page count error"}, // maybe err + {0x8a, SSD_LOG_LEVEL_WARNING, SSD_LOG_DATA_NONE, 0, 0, "Warning: Bad Block close to limit"}, + {0x8b, SSD_LOG_LEVEL_ERR, SSD_LOG_DATA_NONE, 0, 0, "Error: Bad Block over limit"}, + {0x8c, SSD_LOG_LEVEL_WARNING, SSD_LOG_DATA_NONE, 0, 0, "Warning: P/E cycles close to limit"}, + {0x8d, SSD_LOG_LEVEL_ERR, SSD_LOG_DATA_NONE, 0, 0, "Error: P/E cycles over limit"}, + + {0x90, SSD_LOG_LEVEL_NOTICE, SSD_LOG_DATA_NONE, 0, 0, "Warning: Over temperature"}, //90 + {0x91, SSD_LOG_LEVEL_NOTICE, SSD_LOG_DATA_NONE, 0, 0, "Info: Temperature is OK"}, //80 + {0x92, SSD_LOG_LEVEL_WARNING, SSD_LOG_DATA_NONE, 0, 0, "Battery fault"}, + {0x93, SSD_LOG_LEVEL_WARNING, SSD_LOG_DATA_NONE, 0, 0, "SEU fault"}, //err + {0x94, SSD_LOG_LEVEL_ERR, SSD_LOG_DATA_NONE, 0, 0, "DDR error"}, //err + {0x95, SSD_LOG_LEVEL_ERR, SSD_LOG_DATA_NONE, 0, 0, "Controller serdes error"}, //err + {0x96, SSD_LOG_LEVEL_ERR, SSD_LOG_DATA_NONE, 0, 0, "Bridge serdes 1 error"}, //err + {0x97, SSD_LOG_LEVEL_ERR, SSD_LOG_DATA_NONE, 0, 0, "Bridge serdes 2 error"}, //err + {0x98, SSD_LOG_LEVEL_NOTICE, SSD_LOG_DATA_NONE, 0, 0, "SEU fault (corrected)"}, //err + {0x99, SSD_LOG_LEVEL_NOTICE, SSD_LOG_DATA_NONE, 0, 0, "Battery is OK"}, + {0x9a, SSD_LOG_LEVEL_NOTICE, SSD_LOG_DATA_NONE, 0, 0, "Info: Temperature close to limit"}, //85 + + {0x9b, SSD_LOG_LEVEL_NOTICE, SSD_LOG_DATA_HEX, 0, 0, "SEU fault address (low)"}, + {0x9c, SSD_LOG_LEVEL_NOTICE, SSD_LOG_DATA_HEX, 0, 0, "SEU fault address (high)"}, + {0x9d, SSD_LOG_LEVEL_NOTICE, SSD_LOG_DATA_NONE, 0, 0, "I2C fault" }, + {0x9e, SSD_LOG_LEVEL_NOTICE, SSD_LOG_DATA_NONE, 0, 0, "DDR single bit error" }, + {0x9f, SSD_LOG_LEVEL_NOTICE, SSD_LOG_DATA_NONE, 0, 0, "Board voltage fault" }, + + {0xa0, SSD_LOG_LEVEL_NOTICE, SSD_LOG_DATA_HEX, 0, 0, "LPA not matched"}, + {0xa1, SSD_LOG_LEVEL_NOTICE, SSD_LOG_DATA_LOC, 1, 1, "Re-read data in cache"}, + {0xa2, SSD_LOG_LEVEL_NOTICE, SSD_LOG_DATA_LOC, 1, 1, "Read blank page"}, + {0xa3, SSD_LOG_LEVEL_NOTICE, SSD_LOG_DATA_LOC, 1, 1, "RAID recovery: Read blank page"}, + {0xa4, SSD_LOG_LEVEL_NOTICE, SSD_LOG_DATA_LOC, 1, 1, "RAID recovery: new data in cache"}, + {0xa5, SSD_LOG_LEVEL_NOTICE, SSD_LOG_DATA_LOC, 1, 1, "RAID recovery: PBN not matched"}, + {0xa6, SSD_LOG_LEVEL_NOTICE, SSD_LOG_DATA_LOC, 1, 1, "Read data with error flag"}, + {0xa7, SSD_LOG_LEVEL_NOTICE, SSD_LOG_DATA_LOC, 1, 1, "RAID recovery: recoverd data with error flag"}, + {0xa8, SSD_LOG_LEVEL_NOTICE, SSD_LOG_DATA_LOC, 1, 1, "Blank page in cache, PBN matched"}, + {0xa9, SSD_LOG_LEVEL_NOTICE, SSD_LOG_DATA_LOC, 1, 1, "RAID recovery: Blank page in cache, PBN matched"}, + {0xaa, SSD_LOG_LEVEL_NOTICE, SSD_LOG_DATA_LOC, 0, 0, "Flash init failure"}, + {0xab, SSD_LOG_LEVEL_NOTICE, SSD_LOG_DATA_LOC, 1, 1, "Mapping table recovery failure"}, + {0xac, SSD_LOG_LEVEL_NOTICE, SSD_LOG_DATA_LOC, 1, 1, "RAID recovery: ECC failed"}, + {0xb0, SSD_LOG_LEVEL_NOTICE, SSD_LOG_DATA_NONE, 0, 0, "Warning: Temperature is 95 degrees C"}, + {0xb1, SSD_LOG_LEVEL_NOTICE, SSD_LOG_DATA_NONE, 0, 0, "Warning: Temperature is 100 degrees C"}, + + {0x300, SSD_LOG_LEVEL_ERR, SSD_LOG_DATA_HEX, 0, 0, "CMD timeout"}, + {0x301, SSD_LOG_LEVEL_NOTICE, SSD_LOG_DATA_HEX, 0, 0, "Power on"}, + {0x302, SSD_LOG_LEVEL_NOTICE, SSD_LOG_DATA_NONE, 0, 0, "Power off"}, + {0x303, SSD_LOG_LEVEL_NOTICE, SSD_LOG_DATA_NONE, 0, 0, "Clear log"}, + {0x304, SSD_LOG_LEVEL_NOTICE, SSD_LOG_DATA_HEX, 0, 0, "Set capacity"}, + {0x305, SSD_LOG_LEVEL_NOTICE, SSD_LOG_DATA_NONE, 0, 0, "Clear data"}, + {0x306, SSD_LOG_LEVEL_NOTICE, SSD_LOG_DATA_HEX, 0, 0, "BM safety status"}, + {0x307, SSD_LOG_LEVEL_ERR, SSD_LOG_DATA_HEX, 0, 0, "I/O error"}, + {0x308, SSD_LOG_LEVEL_NOTICE, SSD_LOG_DATA_HEX, 0, 0, "CMD error"}, + {0x309, SSD_LOG_LEVEL_NOTICE, SSD_LOG_DATA_HEX, 0, 0, "Set wmode"}, + {0x30a, SSD_LOG_LEVEL_ERR, SSD_LOG_DATA_HEX, 0, 0, "DDR init failed" }, + {0x30b, SSD_LOG_LEVEL_NOTICE, SSD_LOG_DATA_HEX, 0, 0, "PCIe link status" }, + {0x30c, SSD_LOG_LEVEL_ERR, SSD_LOG_DATA_HEX, 0, 0, "Controller reset sync error" }, + {0x30d, SSD_LOG_LEVEL_ERR, SSD_LOG_DATA_HEX, 0, 0, "Clock fault" }, + {0x30e, SSD_LOG_LEVEL_NOTICE, SSD_LOG_DATA_HEX, 0, 0, "FPGA voltage fault status" }, + {0x30f, SSD_LOG_LEVEL_NOTICE, SSD_LOG_DATA_HEX, 0, 0, "Set capacity finished"}, + {0x310, SSD_LOG_LEVEL_NOTICE, SSD_LOG_DATA_NONE, 0, 0, "Clear data finished"}, + {0x311, SSD_LOG_LEVEL_NOTICE, SSD_LOG_DATA_HEX, 0, 0, "Reset"}, + {0x312, SSD_LOG_LEVEL_WARNING,SSD_LOG_DATA_HEX, 0, 0, "CAP: voltage fault"}, + {0x313, SSD_LOG_LEVEL_WARNING,SSD_LOG_DATA_NONE, 0, 0, "CAP: learn fault"}, + {0x314, SSD_LOG_LEVEL_NOTICE, SSD_LOG_DATA_HEX, 0, 0, "CAP status"}, + {0x315, SSD_LOG_LEVEL_NOTICE, SSD_LOG_DATA_HEX, 0, 0, "Board voltage fault status"}, + {0x316, SSD_LOG_LEVEL_NOTICE, SSD_LOG_DATA_NONE, 0, 0, "Info: Inlet temperature is 55 degrees C"}, //55 + {0x317, SSD_LOG_LEVEL_NOTICE, SSD_LOG_DATA_NONE, 0, 0, "Info: Inlet temperature is 50 degrees C"}, //50 + {0x318, SSD_LOG_LEVEL_NOTICE, SSD_LOG_DATA_NONE, 0, 0, "Info: Flash over temperature"}, //70 + {0x319, SSD_LOG_LEVEL_NOTICE, SSD_LOG_DATA_NONE, 0, 0, "Info: Flash temperature is OK"}, //65 + {0x31a, SSD_LOG_LEVEL_WARNING,SSD_LOG_DATA_NONE, 0, 0, "CAP: short circuit"}, + {0x31b, SSD_LOG_LEVEL_WARNING,SSD_LOG_DATA_HEX, 0, 0, "Sensor fault"}, + {0x31c, SSD_LOG_LEVEL_NOTICE, SSD_LOG_DATA_NONE, 0, 0, "Erase all data"}, + {0x31d, SSD_LOG_LEVEL_NOTICE, SSD_LOG_DATA_NONE, 0, 0, "Erase all data finished"}, + {0x320, SSD_LOG_LEVEL_NOTICE, SSD_LOG_DATA_HEX, 0, 0, "Temperature sensor event"}, + + {0x350, SSD_LOG_LEVEL_NOTICE, SSD_LOG_DATA_NONE, 0, 0, "Clear smart"}, + {0x351, SSD_LOG_LEVEL_NOTICE, SSD_LOG_DATA_NONE, 0, 0, "Clear warning"}, + + {SSD_UNKNOWN_EVENT, SSD_LOG_LEVEL_NOTICE, SSD_LOG_DATA_HEX, 0, 0, "unknown event"}, +}; +/* */ +#define SSD_LOG_OVER_TEMP 0x90 +#define SSD_LOG_NORMAL_TEMP 0x91 +#define SSD_LOG_WARN_TEMP 0x9a +#define SSD_LOG_SEU_FAULT 0x93 +#define SSD_LOG_SEU_FAULT1 0x98 +#define SSD_LOG_BATTERY_FAULT 0x92 +#define SSD_LOG_BATTERY_OK 0x99 +#define SSD_LOG_BOARD_VOLT_FAULT 0x9f + +/* software log */ +#define SSD_LOG_TIMEOUT 0x300 +#define SSD_LOG_POWER_ON 0x301 +#define SSD_LOG_POWER_OFF 0x302 +#define SSD_LOG_CLEAR_LOG 0x303 +#define SSD_LOG_SET_CAPACITY 0x304 +#define SSD_LOG_CLEAR_DATA 0x305 +#define SSD_LOG_BM_SFSTATUS 0x306 +#define SSD_LOG_EIO 0x307 +#define SSD_LOG_ECMD 0x308 +#define SSD_LOG_SET_WMODE 0x309 +#define SSD_LOG_DDR_INIT_ERR 0x30a +#define SSD_LOG_PCIE_LINK_STATUS 0x30b +#define SSD_LOG_CTRL_RST_SYNC 0x30c +#define SSD_LOG_CLK_FAULT 0x30d +#define SSD_LOG_VOLT_FAULT 0x30e +#define SSD_LOG_SET_CAPACITY_END 0x30F +#define SSD_LOG_CLEAR_DATA_END 0x310 +#define SSD_LOG_RESET 0x311 +#define SSD_LOG_CAP_VOLT_FAULT 0x312 +#define SSD_LOG_CAP_LEARN_FAULT 0x313 +#define SSD_LOG_CAP_STATUS 0x314 +#define SSD_LOG_VOLT_STATUS 0x315 +#define SSD_LOG_INLET_OVER_TEMP 0x316 +#define SSD_LOG_INLET_NORMAL_TEMP 0x317 +#define SSD_LOG_FLASH_OVER_TEMP 0x318 +#define SSD_LOG_FLASH_NORMAL_TEMP 0x319 +#define SSD_LOG_CAP_SHORT_CIRCUIT 0x31a +#define SSD_LOG_SENSOR_FAULT 0x31b +#define SSD_LOG_ERASE_ALL 0x31c +#define SSD_LOG_ERASE_ALL_END 0x31d +#define SSD_LOG_TEMP_SENSOR_EVENT 0x320 +#define SSD_LOG_CLEAR_SMART 0x350 +#define SSD_LOG_CLEAR_WARNING 0x351 + + +/* sw log fifo depth */ +#define SSD_LOG_FIFO_SZ 1024 + + +/* done queue */ +static DEFINE_PER_CPU(struct list_head, ssd_doneq); +static DEFINE_PER_CPU(struct tasklet_struct, ssd_tasklet); + + +/* unloading driver */ +static volatile int ssd_exiting = 0; + +#if (LINUX_VERSION_CODE <= KERNEL_VERSION(2,6,12)) +static struct class_simple *ssd_class; +#else +static struct class *ssd_class; +#endif + +static int ssd_cmajor = SSD_CMAJOR; + +/* ssd block device major, minors */ +static int ssd_major = SSD_MAJOR; +static int ssd_major_sl = SSD_MAJOR_SL; +static int ssd_minors = SSD_MINORS; + +/* ssd device list */ +static struct list_head ssd_list; +static unsigned long ssd_index_bits[SSD_MAX_DEV / BITS_PER_LONG + 1]; +static unsigned long ssd_index_bits_sl[SSD_MAX_DEV / BITS_PER_LONG + 1]; +static atomic_t ssd_nr; + +/* module param */ +enum ssd_drv_mode +{ + SSD_DRV_MODE_STANDARD = 0, /* full */ + SSD_DRV_MODE_DEBUG = 2, /* debug */ + SSD_DRV_MODE_BASE /* base only */ +}; + +enum ssd_int_mode +{ + SSD_INT_LEGACY = 0, + SSD_INT_MSI, + SSD_INT_MSIX +}; + +#if (defined SSD_MSIX) +#define SSD_INT_MODE_DEFAULT SSD_INT_MSIX +#elif (defined SSD_MSI) +#define SSD_INT_MODE_DEFAULT SSD_INT_MSI +#else +/* auto select the defaut int mode according to the kernel version*/ +/* suse 11 sp1 irqbalance bug: use msi instead*/ +#if ((LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,35)) || (defined RHEL_MAJOR && RHEL_MAJOR >= 6) || (defined RHEL_MAJOR && RHEL_MAJOR == 5 && RHEL_MINOR >= 5)) +#define SSD_INT_MODE_DEFAULT SSD_INT_MSIX +#else +#define SSD_INT_MODE_DEFAULT SSD_INT_MSI +#endif +#endif + +static int mode = SSD_DRV_MODE_STANDARD; +static int status_mask = 0xFF; +static int int_mode = SSD_INT_MODE_DEFAULT; +static int threaded_irq = 0; +static int log_level = SSD_LOG_LEVEL_WARNING; +static int ot_protect = 1; +static int wmode = SSD_WMODE_DEFAULT; +static int finject = 0; + +module_param(mode, int, 0); +module_param(status_mask, int, 0); +module_param(int_mode, int, 0); +module_param(threaded_irq, int, 0); +module_param(log_level, int, 0); +module_param(ot_protect, int, 0); +module_param(wmode, int, 0); +module_param(finject, int, 0); + + +MODULE_PARM_DESC(mode, "driver mode, 0 - standard, 1 - debug, 2 - debug without IO, 3 - basic debug mode"); +MODULE_PARM_DESC(status_mask, "command status mask, 0 - without command error, 0xff - with command error"); +MODULE_PARM_DESC(int_mode, "preferred interrupt mode, 0 - legacy, 1 - msi, 2 - msix"); +MODULE_PARM_DESC(threaded_irq, "threaded irq, 0 - normal irq, 1 - threaded irq"); +MODULE_PARM_DESC(log_level, "log level to display, 0 - info and above, 1 - notice and above, 2 - warning and above, 3 - error only"); +MODULE_PARM_DESC(ot_protect, "over temperature protect, 0 - disable, 1 - enable"); +MODULE_PARM_DESC(wmode, "write mode, 0 - write buffer (with risk for the 6xx firmware), 1 - write buffer ex, 2 - write through, 3 - auto, 4 - default"); +MODULE_PARM_DESC(finject, "enable fault simulation, 0 - off, 1 - on, for debug purpose only"); + +// API adaption layer +static inline void ssd_bio_endio(struct bio *bio, int error) +{ +#if (LINUX_VERSION_CODE >= KERNEL_VERSION(4,4,0)) +#if (LINUX_VERSION_CODE < KERNEL_VERSION(4,13,0)) + bio->bi_error = error; +#else + bio->bi_status = errno_to_blk_status(error); +#endif + bio_endio(bio); +#elif (LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,24)) + bio_endio(bio, error); +#else + bio_endio(bio, bio->bi_size, error); +#endif +} + +static inline int ssd_bio_has_discard(struct bio *bio) +{ +#ifndef SSD_TRIM + return 0; +#elif (LINUX_VERSION_CODE >= KERNEL_VERSION(4,8,0)) + return bio_op(bio) == REQ_OP_DISCARD; +#elif (LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,36)) + return bio->bi_rw & REQ_DISCARD; +#elif (LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,32)) + return bio_rw_flagged(bio, BIO_RW_DISCARD); +#else + return 0; +#endif +} + +static inline int ssd_bio_has_flush(struct bio *bio) +{ +#if (LINUX_VERSION_CODE >= KERNEL_VERSION(4,8,0)) + return bio_op(bio) == REQ_OP_FLUSH; +#elif (LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,37)) + return bio->bi_rw & REQ_FLUSH; +#else + return 0; +#endif +} + +static inline int ssd_bio_has_barrier_or_fua(struct bio * bio) +{ +#if (LINUX_VERSION_CODE >= KERNEL_VERSION(4,8,0)) + return bio->bi_opf & REQ_FUA; +#elif (LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,37)) + return bio->bi_rw & REQ_FUA; +#elif (LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,36)) + return bio->bi_rw & REQ_HARDBARRIER; +#elif (LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,32)) + return bio_rw_flagged(bio, BIO_RW_BARRIER); +#else + return bio_barrier(bio); +#endif +} + +#ifndef MODULE +static int __init ssd_drv_mode(char *str) +{ + mode = (int)simple_strtoul(str, NULL, 0); + + return 1; +} + +static int __init ssd_status_mask(char *str) +{ + status_mask = (int)simple_strtoul(str, NULL, 16); + + return 1; +} + +static int __init ssd_int_mode(char *str) +{ + int_mode = (int)simple_strtoul(str, NULL, 0); + + return 1; +} + +static int __init ssd_threaded_irq(char *str) +{ + threaded_irq = (int)simple_strtoul(str, NULL, 0); + + return 1; +} + +static int __init ssd_log_level(char *str) +{ + log_level = (int)simple_strtoul(str, NULL, 0); + + return 1; +} + +static int __init ssd_ot_protect(char *str) +{ + ot_protect = (int)simple_strtoul(str, NULL, 0); + + return 1; +} + +static int __init ssd_wmode(char *str) +{ + wmode = (int)simple_strtoul(str, NULL, 0); + + return 1; +} + +static int __init ssd_finject(char *str) +{ + finject = (int)simple_strtoul(str, NULL, 0); + + return 1; +} + +__setup(MODULE_NAME"_mode=", ssd_drv_mode); +__setup(MODULE_NAME"_status_mask=", ssd_status_mask); +__setup(MODULE_NAME"_int_mode=", ssd_int_mode); +__setup(MODULE_NAME"_threaded_irq=", ssd_threaded_irq); +__setup(MODULE_NAME"_log_level=", ssd_log_level); +__setup(MODULE_NAME"_ot_protect=", ssd_ot_protect); +__setup(MODULE_NAME"_wmode=", ssd_wmode); +__setup(MODULE_NAME"_finject=", ssd_finject); +#endif + + +#ifdef CONFIG_PROC_FS +#include +#include + +#define SSD_PROC_DIR MODULE_NAME +#define SSD_PROC_INFO "info" + +static struct proc_dir_entry *ssd_proc_dir = NULL; +static struct proc_dir_entry *ssd_proc_info = NULL; + +#if (LINUX_VERSION_CODE < KERNEL_VERSION(3,2,0)) +static int ssd_proc_read(char *page, char **start, + off_t off, int count, int *eof, void *data) +{ + struct ssd_device *dev = NULL; + struct ssd_device *n = NULL; + uint64_t size; + int idx; + int len = 0; + //char type; //xx + + if (ssd_exiting || off != 0) { + return 0; + } + + len += snprintf((page + len), (count - len), "Driver Version:\t%s\n", DRIVER_VERSION); + + list_for_each_entry_safe(dev, n, &ssd_list, list) { + idx = dev->idx + 1; + size = dev->hw_info.size ; + do_div(size, 1000000000); + + len += snprintf((page + len), (count - len), "\n"); + + len += snprintf((page + len), (count - len), "HIO %d Size:\t%uGB\n", idx, (uint32_t)size); + + len += snprintf((page + len), (count - len), "HIO %d Bridge FW VER:\t%03X\n", idx, dev->hw_info.bridge_ver); + if (dev->hw_info.ctrl_ver != 0) { + len += snprintf((page + len), (count - len), "HIO %d Controller FW VER:\t%03X\n", idx, dev->hw_info.ctrl_ver); + } + + len += snprintf((page + len), (count - len), "HIO %d PCB VER:\t.%c\n", idx, dev->hw_info.pcb_ver); + + if (dev->hw_info.upper_pcb_ver >= 'A') { + len += snprintf((page + len), (count - len), "HIO %d Upper PCB VER:\t.%c\n", idx, dev->hw_info.upper_pcb_ver); + } + + len += snprintf((page + len), (count - len), "HIO %d Device:\t%s\n", idx, dev->name); + } + + *eof = 1; + return len; +} + +#else + +static int ssd_proc_show(struct seq_file *m, void *v) +{ + struct ssd_device *dev = NULL; + struct ssd_device *n = NULL; + uint64_t size; + int idx; + + if (ssd_exiting) { + return 0; + } + + seq_printf(m, "Driver Version:\t%s\n", DRIVER_VERSION); + + list_for_each_entry_safe(dev, n, &ssd_list, list) { + idx = dev->idx + 1; + size = dev->hw_info.size ; + do_div(size, 1000000000); + + seq_printf(m, "\n"); + + seq_printf(m, "HIO %d Size:\t%uGB\n", idx, (uint32_t)size); + + seq_printf(m, "HIO %d Bridge FW VER:\t%03X\n", idx, dev->hw_info.bridge_ver); + if (dev->hw_info.ctrl_ver != 0) { + seq_printf(m, "HIO %d Controller FW VER:\t%03X\n", idx, dev->hw_info.ctrl_ver); + } + + seq_printf(m, "HIO %d PCB VER:\t.%c\n", idx, dev->hw_info.pcb_ver); + + if (dev->hw_info.upper_pcb_ver >= 'A') { + seq_printf(m, "HIO %d Upper PCB VER:\t.%c\n", idx, dev->hw_info.upper_pcb_ver); + } + + seq_printf(m, "HIO %d Device:\t%s\n", idx, dev->name); + } + + return 0; +} + +static int ssd_proc_open(struct inode *inode, struct file *file) +{ +#if (LINUX_VERSION_CODE <= KERNEL_VERSION(3,9,0)) + return single_open(file, ssd_proc_show, PDE(inode)->data); +#else + return single_open(file, ssd_proc_show, PDE_DATA(inode)); +#endif +} + +#if (LINUX_VERSION_CODE < KERNEL_VERSION(5,6,0)) +static const struct file_operations ssd_proc_fops = { + .open = ssd_proc_open, + .read = seq_read, + .llseek = seq_lseek, + .release = single_release, +}; +#else +static const struct proc_ops ssd_proc_fops = { + .proc_open = ssd_proc_open, + .proc_read = seq_read, + .proc_lseek = seq_lseek, + .proc_release = single_release, +}; +#endif +#endif + + +static void ssd_cleanup_proc(void) +{ + if (ssd_proc_info) { + remove_proc_entry(SSD_PROC_INFO, ssd_proc_dir); + ssd_proc_info = NULL; + } + if (ssd_proc_dir) { + remove_proc_entry(SSD_PROC_DIR, NULL); + ssd_proc_dir = NULL; + } +} +static int ssd_init_proc(void) +{ + ssd_proc_dir = proc_mkdir(SSD_PROC_DIR, NULL); + if (!ssd_proc_dir) + goto out_proc_mkdir; + +#if (LINUX_VERSION_CODE < KERNEL_VERSION(3,2,0)) + ssd_proc_info = create_proc_entry(SSD_PROC_INFO, S_IFREG | S_IRUGO | S_IWUSR, ssd_proc_dir); + if (!ssd_proc_info) + goto out_create_proc_entry; + + ssd_proc_info->read_proc = ssd_proc_read; + +/* kernel bug */ +#if (LINUX_VERSION_CODE < KERNEL_VERSION(2,6,30)) + ssd_proc_info->owner = THIS_MODULE; +#endif +#else + ssd_proc_info = proc_create(SSD_PROC_INFO, 0600, ssd_proc_dir, &ssd_proc_fops); + if (!ssd_proc_info) + goto out_create_proc_entry; +#endif + + return 0; + +out_create_proc_entry: + remove_proc_entry(SSD_PROC_DIR, NULL); +out_proc_mkdir: + return -ENOMEM; +} + +#else +static void ssd_cleanup_proc(void) +{ + return; +} +static int ssd_init_proc(void) +{ + return 0; +} +#endif /* CONFIG_PROC_FS */ + +/* sysfs */ +static void ssd_unregister_sysfs(struct ssd_device *dev) +{ + return; +} + +static int ssd_register_sysfs(struct ssd_device *dev) +{ + return 0; +} + +static void ssd_cleanup_sysfs(void) +{ + return; +} + +static int ssd_init_sysfs(void) +{ + return 0; +} + +static inline void ssd_put_index(int slave, int index) +{ + unsigned long *index_bits = ssd_index_bits; + + if (slave) { + index_bits = ssd_index_bits_sl; + } + + if (test_and_clear_bit(index, index_bits)) { + atomic_dec(&ssd_nr); + } +} + +static inline int ssd_get_index(int slave) +{ + unsigned long *index_bits = ssd_index_bits; + int index; + + if (slave) { + index_bits = ssd_index_bits_sl; + } + +find_index: + if ((index = find_first_zero_bit(index_bits, SSD_MAX_DEV)) >= SSD_MAX_DEV) { + return -1; + } + + if (test_and_set_bit(index, index_bits)) { + goto find_index; + } + + atomic_inc(&ssd_nr); + + return index; +} + +static void ssd_cleanup_index(void) +{ + return; +} + +static int ssd_init_index(void) +{ + INIT_LIST_HEAD(&ssd_list); + atomic_set(&ssd_nr, 0); + memset(ssd_index_bits, 0, sizeof(ssd_index_bits)); + memset(ssd_index_bits_sl, 0, sizeof(ssd_index_bits_sl)); + + return 0; +} + +static void ssd_set_dev_name(char *name, size_t size, int idx) +{ + if(idx < SSD_ALPHABET_NUM) { + snprintf(name, size, "%c", 'a'+idx); + } else { + idx -= SSD_ALPHABET_NUM; + snprintf(name, size, "%c%c", 'a'+(idx/SSD_ALPHABET_NUM), 'a'+(idx%SSD_ALPHABET_NUM)); + } +} + +/* pci register r&w */ +static inline void ssd_reg_write(void *addr, uint64_t val) +{ + iowrite32((uint32_t)val, addr); + iowrite32((uint32_t)(val >> 32), addr + 4); + wmb(); +} + +static inline uint64_t ssd_reg_read(void *addr) +{ + uint64_t val; + uint32_t val_lo, val_hi; + + val_lo = ioread32(addr); + val_hi = ioread32(addr + 4); + + rmb(); + val = val_lo | ((uint64_t)val_hi << 32); + + return val; +} + + +#define ssd_reg32_write(addr, val) writel(val, addr) +#define ssd_reg32_read(addr) readl(addr) + +/* alarm led */ +static void ssd_clear_alarm(struct ssd_device *dev) +{ + uint32_t val; + + if (dev->protocol_info.ver <= SSD_PROTOCOL_V3) { + return; + } + + val = ssd_reg32_read(dev->ctrlp + SSD_LED_REG); + + /* firmware control */ + val &= ~0x2; + + ssd_reg32_write(dev->ctrlp + SSD_LED_REG, val); +} + +static void ssd_set_alarm(struct ssd_device *dev) +{ + uint32_t val; + + if (dev->protocol_info.ver <= SSD_PROTOCOL_V3) { + return; + } + + val = ssd_reg32_read(dev->ctrlp + SSD_LED_REG); + + /* light up */ + val &= ~0x1; + /* software control */ + val |= 0x2; + + ssd_reg32_write(dev->ctrlp + SSD_LED_REG, val); +} + +#define u32_swap(x) \ + ((uint32_t)( \ + (((uint32_t)(x) & (uint32_t)0x000000ffUL) << 24) | \ + (((uint32_t)(x) & (uint32_t)0x0000ff00UL) << 8) | \ + (((uint32_t)(x) & (uint32_t)0x00ff0000UL) >> 8) | \ + (((uint32_t)(x) & (uint32_t)0xff000000UL) >> 24))) + +#define u16_swap(x) \ + ((uint16_t)( \ + (((uint16_t)(x) & (uint16_t)0x00ff) << 8) | \ + (((uint16_t)(x) & (uint16_t)0xff00) >> 8) )) + + +#if 0 +/* No lock, for init only*/ +static int ssd_spi_read_id(struct ssd_device *dev, uint32_t *id) +{ + uint32_t val; + unsigned long st; + int ret = 0; + + if (!dev || !id) { + return -EINVAL; + } + + ssd_reg32_write(dev->ctrlp + SSD_SPI_REG_CMD, SSD_SPI_CMD_READ_ID); + + val = ssd_reg32_read(dev->ctrlp + SSD_SPI_REG_READY); + val = ssd_reg32_read(dev->ctrlp + SSD_SPI_REG_READY); + val = ssd_reg32_read(dev->ctrlp + SSD_SPI_REG_READY); + val = ssd_reg32_read(dev->ctrlp + SSD_SPI_REG_READY); + + st = jiffies; + for (;;) { + val = ssd_reg32_read(dev->ctrlp + SSD_SPI_REG_READY); + if (val == 0x1000000) { + break; + } + + if (time_after(jiffies, (st + SSD_SPI_TIMEOUT))) { + ret = -ETIMEDOUT; + goto out; + } + cond_resched(); + } + + val = ssd_reg32_read(dev->ctrlp + SSD_SPI_REG_ID); + *id = val; + +out: + return ret; +} +#endif + +/* spi access */ +static int ssd_init_spi(struct ssd_device *dev) +{ + uint32_t val; + unsigned long st; + int ret = 0; + + mutex_lock(&dev->spi_mutex); + st = jiffies; + for(;;) { + ssd_reg32_write(dev->ctrlp + SSD_SPI_REG_CMD, SSD_SPI_CMD_READ_STATUS); + + do { + val = ssd_reg32_read(dev->ctrlp + SSD_SPI_REG_READY); + + if (time_after(jiffies, (st + SSD_SPI_TIMEOUT))) { + ret = -ETIMEDOUT; + goto out; + } + cond_resched(); + } while (val != 0x1000000); + + val = ssd_reg32_read(dev->ctrlp + SSD_SPI_REG_STATUS); + if (!(val & 0x1)) { + break; + } + + if (time_after(jiffies, (st + SSD_SPI_TIMEOUT))) { + ret = -ETIMEDOUT; + goto out; + } + cond_resched(); + } + +out: + if (dev->protocol_info.ver >= SSD_PROTOCOL_V3_2) { + if (val & 0x1) { + ssd_reg32_write(dev->ctrlp + SSD_SPI_REG_CMD, SSD_SPI_CMD_CLSR); + } + } + ssd_reg32_write(dev->ctrlp + SSD_SPI_REG_CMD, SSD_SPI_CMD_W_DISABLE); + mutex_unlock(&dev->spi_mutex); + + ret = 0; + + return ret; +} + +static int ssd_spi_page_read(struct ssd_device *dev, void *buf, uint32_t off, uint32_t size) +{ + uint32_t val; + uint32_t rlen = 0; + unsigned long st; + int ret = 0; + + if (!dev || !buf) { + return -EINVAL; + } + + if ((off % sizeof(uint32_t)) != 0 || (size % sizeof(uint32_t)) != 0 || size == 0 || + ((uint64_t)off + (uint64_t)size) > dev->rom_info.size || size > dev->rom_info.page_size) { + return -EINVAL; + } + + mutex_lock(&dev->spi_mutex); + while (rlen < size) { + ssd_reg32_write(dev->ctrlp + SSD_SPI_REG_CMD_HI, ((off + rlen) >> 24)); + wmb(); + ssd_reg32_write(dev->ctrlp + SSD_SPI_REG_CMD, (((off + rlen) << 8) | SSD_SPI_CMD_READ)); + + (void)ssd_reg32_read(dev->ctrlp + SSD_SPI_REG_READY); + (void)ssd_reg32_read(dev->ctrlp + SSD_SPI_REG_READY); + (void)ssd_reg32_read(dev->ctrlp + SSD_SPI_REG_READY); + (void)ssd_reg32_read(dev->ctrlp + SSD_SPI_REG_READY); + + st = jiffies; + for (;;) { + val = ssd_reg32_read(dev->ctrlp + SSD_SPI_REG_READY); + if (val == 0x1000000) { + break; + } + + if (time_after(jiffies, (st + SSD_SPI_TIMEOUT))) { + ret = -ETIMEDOUT; + goto out; + } + cond_resched(); + } + + val = ssd_reg32_read(dev->ctrlp + SSD_SPI_REG_RDATA); + *(uint32_t *)(buf + rlen)= u32_swap(val); + + rlen += sizeof(uint32_t); + } + +out: + mutex_unlock(&dev->spi_mutex); + return ret; +} + +static int ssd_spi_page_write(struct ssd_device *dev, void *buf, uint32_t off, uint32_t size) +{ + uint32_t val; + uint32_t wlen; + unsigned long st; + int i; + int ret = 0; + + if (!dev || !buf) { + return -EINVAL; + } + + if ((off % sizeof(uint32_t)) != 0 || (size % sizeof(uint32_t)) != 0 || size == 0 || + ((uint64_t)off + (uint64_t)size) > dev->rom_info.size || size > dev->rom_info.page_size || + (off / dev->rom_info.page_size) != ((off + size - 1) / dev->rom_info.page_size)) { + return -EINVAL; + } + + mutex_lock(&dev->spi_mutex); + + ssd_reg32_write(dev->ctrlp + SSD_SPI_REG_CMD, SSD_SPI_CMD_W_ENABLE); + + wlen = size / sizeof(uint32_t); + for (i=0; i<(int)wlen; i++) { + ssd_reg32_write(dev->ctrlp + SSD_SPI_REG_WDATA, u32_swap(*((uint32_t *)buf + i))); + } + + wmb(); + ssd_reg32_write(dev->ctrlp + SSD_SPI_REG_CMD_HI, (off >> 24)); + wmb(); + ssd_reg32_write(dev->ctrlp + SSD_SPI_REG_CMD, ((off << 8) | SSD_SPI_CMD_PROGRAM)); + + udelay(1); + + st = jiffies; + for (;;) { + ssd_reg32_write(dev->ctrlp + SSD_SPI_REG_CMD, SSD_SPI_CMD_READ_STATUS); + do { + val = ssd_reg32_read(dev->ctrlp + SSD_SPI_REG_READY); + + if (time_after(jiffies, (st + SSD_SPI_TIMEOUT))) { + ret = -ETIMEDOUT; + goto out; + } + cond_resched(); + } while (val != 0x1000000); + + val = ssd_reg32_read(dev->ctrlp + SSD_SPI_REG_STATUS); + if (!(val & 0x1)) { + break; + } + + if (time_after(jiffies, (st + SSD_SPI_TIMEOUT))) { + ret = -ETIMEDOUT; + goto out; + } + cond_resched(); + } + + if (dev->protocol_info.ver >= SSD_PROTOCOL_V3_2) { + if ((val >> 6) & 0x1) { + ret = -EIO; + goto out; + } + } + +out: + if (dev->protocol_info.ver >= SSD_PROTOCOL_V3_2) { + if (val & 0x1) { + ssd_reg32_write(dev->ctrlp + SSD_SPI_REG_CMD, SSD_SPI_CMD_CLSR); + } + } + ssd_reg32_write(dev->ctrlp + SSD_SPI_REG_CMD, SSD_SPI_CMD_W_DISABLE); + + mutex_unlock(&dev->spi_mutex); + + return ret; +} + +static int ssd_spi_block_erase(struct ssd_device *dev, uint32_t off) +{ + uint32_t val; + unsigned long st; + int ret = 0; + + if (!dev) { + return -EINVAL; + } + + if ((off % dev->rom_info.block_size) != 0 || off >= dev->rom_info.size) { + return -EINVAL; + } + + mutex_lock(&dev->spi_mutex); + + ssd_reg32_write(dev->ctrlp + SSD_SPI_REG_CMD, SSD_SPI_CMD_W_ENABLE); + ssd_reg32_write(dev->ctrlp + SSD_SPI_REG_CMD, SSD_SPI_CMD_W_ENABLE); + + wmb(); + ssd_reg32_write(dev->ctrlp + SSD_SPI_REG_CMD_HI, (off >> 24)); + wmb(); + ssd_reg32_write(dev->ctrlp + SSD_SPI_REG_CMD, ((off << 8) | SSD_SPI_CMD_ERASE)); + + st = jiffies; + for (;;) { + ssd_reg32_write(dev->ctrlp + SSD_SPI_REG_CMD, SSD_SPI_CMD_READ_STATUS); + + do { + val = ssd_reg32_read(dev->ctrlp + SSD_SPI_REG_READY); + + if (time_after(jiffies, (st + SSD_SPI_TIMEOUT))) { + ret = -ETIMEDOUT; + goto out; + } + cond_resched(); + } while (val != 0x1000000); + + val = ssd_reg32_read(dev->ctrlp + SSD_SPI_REG_STATUS); + if (!(val & 0x1)) { + break; + } + + if (time_after(jiffies, (st + SSD_SPI_TIMEOUT))) { + ret = -ETIMEDOUT; + goto out; + } + cond_resched(); + } + + if (dev->protocol_info.ver >= SSD_PROTOCOL_V3_2) { + if ((val >> 5) & 0x1) { + ret = -EIO; + goto out; + } + } + +out: + if (dev->protocol_info.ver >= SSD_PROTOCOL_V3_2) { + if (val & 0x1) { + ssd_reg32_write(dev->ctrlp + SSD_SPI_REG_CMD, SSD_SPI_CMD_CLSR); + } + } + ssd_reg32_write(dev->ctrlp + SSD_SPI_REG_CMD, SSD_SPI_CMD_W_DISABLE); + + mutex_unlock(&dev->spi_mutex); + + return ret; +} + +static int ssd_spi_read(struct ssd_device *dev, void *buf, uint32_t off, uint32_t size) +{ + uint32_t len = 0; + uint32_t roff; + uint32_t rsize; + int ret = 0; + + if (!dev || !buf) { + return -EINVAL; + } + + if ((off % sizeof(uint32_t)) != 0 || (size % sizeof(uint32_t)) != 0 || size == 0 || + ((uint64_t)off + (uint64_t)size) > dev->rom_info.size) { + return -EINVAL; + } + + while (len < size) { + roff = (off + len) % dev->rom_info.page_size; + rsize = dev->rom_info.page_size - roff; + if ((size - len) < rsize) { + rsize = (size - len); + } + roff = off + len; + + ret = ssd_spi_page_read(dev, (buf + len), roff, rsize); + if (ret) { + goto out; + } + + len += rsize; + + cond_resched(); + } + +out: + return ret; +} + +static int ssd_spi_write(struct ssd_device *dev, void *buf, uint32_t off, uint32_t size) +{ + uint32_t len = 0; + uint32_t woff; + uint32_t wsize; + int ret = 0; + + if (!dev || !buf) { + return -EINVAL; + } + + if ((off % sizeof(uint32_t)) != 0 || (size % sizeof(uint32_t)) != 0 || size == 0 || + ((uint64_t)off + (uint64_t)size) > dev->rom_info.size) { + return -EINVAL; + } + + while (len < size) { + woff = (off + len) % dev->rom_info.page_size; + wsize = dev->rom_info.page_size - woff; + if ((size - len) < wsize) { + wsize = (size - len); + } + woff = off + len; + + ret = ssd_spi_page_write(dev, (buf + len), woff, wsize); + if (ret) { + goto out; + } + + len += wsize; + + cond_resched(); + } + +out: + return ret; +} + +static int ssd_spi_erase(struct ssd_device *dev, uint32_t off, uint32_t size) +{ + uint32_t len = 0; + uint32_t eoff; + int ret = 0; + + if (!dev) { + return -EINVAL; + } + + if (size == 0 || ((uint64_t)off + (uint64_t)size) > dev->rom_info.size || + (off % dev->rom_info.block_size) != 0 || (size % dev->rom_info.block_size) != 0) { + return -EINVAL; + } + + while (len < size) { + eoff = (off + len); + + ret = ssd_spi_block_erase(dev, eoff); + if (ret) { + goto out; + } + + len += dev->rom_info.block_size; + + cond_resched(); + } + +out: + return ret; +} + +/* i2c access */ +static uint32_t __ssd_i2c_reg32_read(void *addr) +{ + return ssd_reg32_read(addr); +} + +static void __ssd_i2c_reg32_write(void *addr, uint32_t val) +{ + ssd_reg32_write(addr, val); + ssd_reg32_read(addr); +} + +static int __ssd_i2c_clear(struct ssd_device *dev, uint8_t saddr) +{ + ssd_i2c_ctrl_t ctrl; + ssd_i2c_data_t data; + uint8_t status = 0; + int nr_data = 0; + unsigned long st; + int ret = 0; + +check_status: + ctrl.bits.wdata = 0; + ctrl.bits.addr = SSD_I2C_STATUS_REG; + ctrl.bits.rw = SSD_I2C_CTRL_READ; + __ssd_i2c_reg32_write(dev->ctrlp + SSD_I2C_CTRL_REG, ctrl.val); + + st = jiffies; + for (;;) { + data.val = __ssd_i2c_reg32_read(dev->ctrlp + SSD_I2C_RDATA_REG); + if (data.bits.valid == 0) { + break; + } + + /* retry */ + if (time_after(jiffies, (st + SSD_I2C_TIMEOUT))) { + ret = -ETIMEDOUT; + goto out; + } + cond_resched(); + } + status = data.bits.rdata; + + if (!(status & 0x4)) { + /* clear read fifo data */ + ctrl.bits.wdata = 0; + ctrl.bits.addr = SSD_I2C_DATA_REG; + ctrl.bits.rw = SSD_I2C_CTRL_READ; + __ssd_i2c_reg32_write(dev->ctrlp + SSD_I2C_CTRL_REG, ctrl.val); + + st = jiffies; + for (;;) { + data.val = __ssd_i2c_reg32_read(dev->ctrlp + SSD_I2C_RDATA_REG); + if (data.bits.valid == 0) { + break; + } + + /* retry */ + if (time_after(jiffies, (st + SSD_I2C_TIMEOUT))) { + ret = -ETIMEDOUT; + goto out; + } + cond_resched(); + } + + nr_data++; + if (nr_data <= SSD_I2C_MAX_DATA) { + goto check_status; + } else { + goto out_reset; + } + } + + if (status & 0x3) { + /* clear int */ + ctrl.bits.wdata = 0x04; + ctrl.bits.addr = SSD_I2C_CMD_REG; + ctrl.bits.rw = SSD_I2C_CTRL_WRITE; + __ssd_i2c_reg32_write(dev->ctrlp + SSD_I2C_CTRL_REG, ctrl.val); + } + + if (!(status & 0x8)) { +out_reset: + /* reset i2c controller */ + ctrl.bits.wdata = 0x0; + ctrl.bits.addr = SSD_I2C_RESET_REG; + ctrl.bits.rw = SSD_I2C_CTRL_WRITE; + __ssd_i2c_reg32_write(dev->ctrlp + SSD_I2C_CTRL_REG, ctrl.val); + } + +out: + return ret; +} + +static int ssd_i2c_write(struct ssd_device *dev, uint8_t saddr, uint8_t size, uint8_t *buf) +{ + ssd_i2c_ctrl_t ctrl; + ssd_i2c_data_t data; + uint8_t off = 0; + uint8_t status = 0; + unsigned long st; + int ret = 0; + + mutex_lock(&dev->i2c_mutex); + + ctrl.val = 0; + + /* slave addr */ + ctrl.bits.wdata = saddr; + ctrl.bits.addr = SSD_I2C_SADDR_REG; + ctrl.bits.rw = SSD_I2C_CTRL_WRITE; + __ssd_i2c_reg32_write(dev->ctrlp + SSD_I2C_CTRL_REG, ctrl.val); + + /* data */ + while (off < size) { + ctrl.bits.wdata = buf[off]; + ctrl.bits.addr = SSD_I2C_DATA_REG; + ctrl.bits.rw = SSD_I2C_CTRL_WRITE; + __ssd_i2c_reg32_write(dev->ctrlp + SSD_I2C_CTRL_REG, ctrl.val); + + off++; + } + + /* write */ + ctrl.bits.wdata = 0x01; + ctrl.bits.addr = SSD_I2C_CMD_REG; + ctrl.bits.rw = SSD_I2C_CTRL_WRITE; + __ssd_i2c_reg32_write(dev->ctrlp + SSD_I2C_CTRL_REG, ctrl.val); + + /* wait */ + st = jiffies; + for (;;) { + ctrl.bits.wdata = 0; + ctrl.bits.addr = SSD_I2C_STATUS_REG; + ctrl.bits.rw = SSD_I2C_CTRL_READ; + __ssd_i2c_reg32_write(dev->ctrlp + SSD_I2C_CTRL_REG, ctrl.val); + + for (;;) { + data.val = __ssd_i2c_reg32_read(dev->ctrlp + SSD_I2C_RDATA_REG); + if (data.bits.valid == 0) { + break; + } + + /* retry */ + if (time_after(jiffies, (st + SSD_I2C_TIMEOUT))) { + ret = -ETIMEDOUT; + goto out_clear; + } + cond_resched(); + } + + status = data.bits.rdata; + if (status & 0x1) { + break; + } + + if (time_after(jiffies, (st + SSD_I2C_TIMEOUT))) { + ret = -ETIMEDOUT; + goto out_clear; + } + cond_resched(); + } + + if (!(status & 0x1)) { + ret = -1; + goto out_clear; + } + + /* busy ? */ + if (status & 0x20) { + ret = -2; + goto out_clear; + } + + /* ack ? */ + if (status & 0x10) { + ret = -3; + goto out_clear; + } + + /* clear */ +out_clear: + if (__ssd_i2c_clear(dev, saddr)) { + if (!ret) ret = -4; + } + + mutex_unlock(&dev->i2c_mutex); + + return ret; +} + +static int ssd_i2c_read(struct ssd_device *dev, uint8_t saddr, uint8_t size, uint8_t *buf) +{ + ssd_i2c_ctrl_t ctrl; + ssd_i2c_data_t data; + uint8_t off = 0; + uint8_t status = 0; + unsigned long st; + int ret = 0; + + mutex_lock(&dev->i2c_mutex); + + ctrl.val = 0; + + /* slave addr */ + ctrl.bits.wdata = saddr; + ctrl.bits.addr = SSD_I2C_SADDR_REG; + ctrl.bits.rw = SSD_I2C_CTRL_WRITE; + __ssd_i2c_reg32_write(dev->ctrlp + SSD_I2C_CTRL_REG, ctrl.val); + + /* read len */ + ctrl.bits.wdata = size; + ctrl.bits.addr = SSD_I2C_LEN_REG; + ctrl.bits.rw = SSD_I2C_CTRL_WRITE; + __ssd_i2c_reg32_write(dev->ctrlp + SSD_I2C_CTRL_REG, ctrl.val); + + /* read */ + ctrl.bits.wdata = 0x02; + ctrl.bits.addr = SSD_I2C_CMD_REG; + ctrl.bits.rw = SSD_I2C_CTRL_WRITE; + __ssd_i2c_reg32_write(dev->ctrlp + SSD_I2C_CTRL_REG, ctrl.val); + + /* wait */ + st = jiffies; + for (;;) { + ctrl.bits.wdata = 0; + ctrl.bits.addr = SSD_I2C_STATUS_REG; + ctrl.bits.rw = SSD_I2C_CTRL_READ; + __ssd_i2c_reg32_write(dev->ctrlp + SSD_I2C_CTRL_REG, ctrl.val); + + for (;;) { + data.val = __ssd_i2c_reg32_read(dev->ctrlp + SSD_I2C_RDATA_REG); + if (data.bits.valid == 0) { + break; + } + + /* retry */ + if (time_after(jiffies, (st + SSD_I2C_TIMEOUT))) { + ret = -ETIMEDOUT; + goto out_clear; + } + cond_resched(); + } + + status = data.bits.rdata; + if (status & 0x2) { + break; + } + + if (time_after(jiffies, (st + SSD_I2C_TIMEOUT))) { + ret = -ETIMEDOUT; + goto out_clear; + } + cond_resched(); + } + + if (!(status & 0x2)) { + ret = -1; + goto out_clear; + } + + /* busy ? */ + if (status & 0x20) { + ret = -2; + goto out_clear; + } + + /* ack ? */ + if (status & 0x10) { + ret = -3; + goto out_clear; + } + + /* data */ + while (off < size) { + ctrl.bits.wdata = 0; + ctrl.bits.addr = SSD_I2C_DATA_REG; + ctrl.bits.rw = SSD_I2C_CTRL_READ; + __ssd_i2c_reg32_write(dev->ctrlp + SSD_I2C_CTRL_REG, ctrl.val); + + st = jiffies; + for (;;) { + data.val = __ssd_i2c_reg32_read(dev->ctrlp + SSD_I2C_RDATA_REG); + if (data.bits.valid == 0) { + break; + } + + /* retry */ + if (time_after(jiffies, (st + SSD_I2C_TIMEOUT))) { + ret = -ETIMEDOUT; + goto out_clear; + } + cond_resched(); + } + + buf[off] = data.bits.rdata; + + off++; + } + + /* clear */ +out_clear: + if (__ssd_i2c_clear(dev, saddr)) { + if (!ret) ret = -4; + } + + mutex_unlock(&dev->i2c_mutex); + + return ret; +} + +static int ssd_i2c_write_read(struct ssd_device *dev, uint8_t saddr, uint8_t wsize, uint8_t *wbuf, uint8_t rsize, uint8_t *rbuf) +{ + ssd_i2c_ctrl_t ctrl; + ssd_i2c_data_t data; + uint8_t off = 0; + uint8_t status = 0; + unsigned long st; + int ret = 0; + + mutex_lock(&dev->i2c_mutex); + + ctrl.val = 0; + + /* slave addr */ + ctrl.bits.wdata = saddr; + ctrl.bits.addr = SSD_I2C_SADDR_REG; + ctrl.bits.rw = SSD_I2C_CTRL_WRITE; + __ssd_i2c_reg32_write(dev->ctrlp + SSD_I2C_CTRL_REG, ctrl.val); + + /* data */ + off = 0; + while (off < wsize) { + ctrl.bits.wdata = wbuf[off]; + ctrl.bits.addr = SSD_I2C_DATA_REG; + ctrl.bits.rw = SSD_I2C_CTRL_WRITE; + __ssd_i2c_reg32_write(dev->ctrlp + SSD_I2C_CTRL_REG, ctrl.val); + + off++; + } + + /* read len */ + ctrl.bits.wdata = rsize; + ctrl.bits.addr = SSD_I2C_LEN_REG; + ctrl.bits.rw = SSD_I2C_CTRL_WRITE; + __ssd_i2c_reg32_write(dev->ctrlp + SSD_I2C_CTRL_REG, ctrl.val); + + /* write -> read */ + ctrl.bits.wdata = 0x03; + ctrl.bits.addr = SSD_I2C_CMD_REG; + ctrl.bits.rw = SSD_I2C_CTRL_WRITE; + __ssd_i2c_reg32_write(dev->ctrlp + SSD_I2C_CTRL_REG, ctrl.val); + + /* wait */ + st = jiffies; + for (;;) { + ctrl.bits.wdata = 0; + ctrl.bits.addr = SSD_I2C_STATUS_REG; + ctrl.bits.rw = SSD_I2C_CTRL_READ; + __ssd_i2c_reg32_write(dev->ctrlp + SSD_I2C_CTRL_REG, ctrl.val); + + for (;;) { + data.val = __ssd_i2c_reg32_read(dev->ctrlp + SSD_I2C_RDATA_REG); + if (data.bits.valid == 0) { + break; + } + + /* retry */ + if (time_after(jiffies, (st + SSD_I2C_TIMEOUT))) { + ret = -ETIMEDOUT; + goto out_clear; + } + cond_resched(); + } + + status = data.bits.rdata; + if (status & 0x2) { + break; + } + + if (time_after(jiffies, (st + SSD_I2C_TIMEOUT))) { + ret = -ETIMEDOUT; + goto out_clear; + } + cond_resched(); + } + + if (!(status & 0x2)) { + ret = -1; + goto out_clear; + } + + /* busy ? */ + if (status & 0x20) { + ret = -2; + goto out_clear; + } + + /* ack ? */ + if (status & 0x10) { + ret = -3; + goto out_clear; + } + + /* data */ + off = 0; + while (off < rsize) { + ctrl.bits.wdata = 0; + ctrl.bits.addr = SSD_I2C_DATA_REG; + ctrl.bits.rw = SSD_I2C_CTRL_READ; + __ssd_i2c_reg32_write(dev->ctrlp + SSD_I2C_CTRL_REG, ctrl.val); + + st = jiffies; + for (;;) { + data.val = __ssd_i2c_reg32_read(dev->ctrlp + SSD_I2C_RDATA_REG); + if (data.bits.valid == 0) { + break; + } + + /* retry */ + if (time_after(jiffies, (st + SSD_I2C_TIMEOUT))) { + ret = -ETIMEDOUT; + goto out_clear; + } + cond_resched(); + } + + rbuf[off] = data.bits.rdata; + + off++; + } + + /* clear */ +out_clear: + if (__ssd_i2c_clear(dev, saddr)) { + if (!ret) ret = -4; + } + mutex_unlock(&dev->i2c_mutex); + + return ret; +} + +static int ssd_smbus_send_byte(struct ssd_device *dev, uint8_t saddr, uint8_t *buf) +{ + int i = 0; + int ret = 0; + + for (;;) { + ret = ssd_i2c_write(dev, saddr, 1, buf); + if (!ret || -ETIMEDOUT == ret) { + break; + } + + i++; + if (i >= SSD_SMBUS_RETRY_MAX) { + break; + } + msleep(SSD_SMBUS_RETRY_INTERVAL); + } + + return ret; +} + +static int ssd_smbus_receive_byte(struct ssd_device *dev, uint8_t saddr, uint8_t *buf) +{ + int i = 0; + int ret = 0; + + for (;;) { + ret = ssd_i2c_read(dev, saddr, 1, buf); + if (!ret || -ETIMEDOUT == ret) { + break; + } + + i++; + if (i >= SSD_SMBUS_RETRY_MAX) { + break; + } + msleep(SSD_SMBUS_RETRY_INTERVAL); + } + + return ret; +} + +static int ssd_smbus_write_byte(struct ssd_device *dev, uint8_t saddr, uint8_t cmd, uint8_t *buf) +{ + uint8_t smb_data[SSD_SMBUS_DATA_MAX] = {0}; + int i = 0; + int ret = 0; + + smb_data[0] = cmd; + memcpy((smb_data + 1), buf, 1); + + for (;;) { + ret = ssd_i2c_write(dev, saddr, 2, smb_data); + if (!ret || -ETIMEDOUT == ret) { + break; + } + + i++; + if (i >= SSD_SMBUS_RETRY_MAX) { + break; + } + msleep(SSD_SMBUS_RETRY_INTERVAL); + } + + return ret; +} + +static int ssd_smbus_read_byte(struct ssd_device *dev, uint8_t saddr, uint8_t cmd, uint8_t *buf) +{ + uint8_t smb_data[SSD_SMBUS_DATA_MAX] = {0}; + int i = 0; + int ret = 0; + + smb_data[0] = cmd; + + for (;;) { + ret = ssd_i2c_write_read(dev, saddr, 1, smb_data, 1, buf); + if (!ret || -ETIMEDOUT == ret) { + break; + } + + i++; + if (i >= SSD_SMBUS_RETRY_MAX) { + break; + } + msleep(SSD_SMBUS_RETRY_INTERVAL); + } + + return ret; +} + +static int ssd_smbus_write_word(struct ssd_device *dev, uint8_t saddr, uint8_t cmd, uint8_t *buf) +{ + uint8_t smb_data[SSD_SMBUS_DATA_MAX] = {0}; + int i = 0; + int ret = 0; + + smb_data[0] = cmd; + memcpy((smb_data + 1), buf, 2); + + for (;;) { + ret = ssd_i2c_write(dev, saddr, 3, smb_data); + if (!ret || -ETIMEDOUT == ret) { + break; + } + + i++; + if (i >= SSD_SMBUS_RETRY_MAX) { + break; + } + msleep(SSD_SMBUS_RETRY_INTERVAL); + } + + return ret; +} + +static int ssd_smbus_read_word(struct ssd_device *dev, uint8_t saddr, uint8_t cmd, uint8_t *buf) +{ + uint8_t smb_data[SSD_SMBUS_DATA_MAX] = {0}; + int i = 0; + int ret = 0; + + smb_data[0] = cmd; + + for (;;) { + ret = ssd_i2c_write_read(dev, saddr, 1, smb_data, 2, buf); + if (!ret || -ETIMEDOUT == ret) { + break; + } + + i++; + if (i >= SSD_SMBUS_RETRY_MAX) { + break; + } + msleep(SSD_SMBUS_RETRY_INTERVAL); + } + + return ret; +} + +static int ssd_smbus_write_block(struct ssd_device *dev, uint8_t saddr, uint8_t cmd, uint8_t size, uint8_t *buf) +{ + uint8_t smb_data[SSD_SMBUS_DATA_MAX] = {0}; + int i = 0; + int ret = 0; + + smb_data[0] = cmd; + smb_data[1] = size; + memcpy((smb_data + 2), buf, size); + + for (;;) { + ret = ssd_i2c_write(dev, saddr, (2 + size), smb_data); + if (!ret || -ETIMEDOUT == ret) { + break; + } + + i++; + if (i >= SSD_SMBUS_RETRY_MAX) { + break; + } + msleep(SSD_SMBUS_RETRY_INTERVAL); + } + + return ret; +} + +static int ssd_smbus_read_block(struct ssd_device *dev, uint8_t saddr, uint8_t cmd, uint8_t size, uint8_t *buf) +{ + uint8_t smb_data[SSD_SMBUS_DATA_MAX] = {0}; + uint8_t rsize; + int i = 0; + int ret = 0; + + smb_data[0] = cmd; + + for (;;) { + ret = ssd_i2c_write_read(dev, saddr, 1, smb_data, (SSD_SMBUS_BLOCK_MAX + 1), (smb_data + 1)); + if (!ret || -ETIMEDOUT == ret) { + break; + } + + i++; + if (i >= SSD_SMBUS_RETRY_MAX) { + break; + } + msleep(SSD_SMBUS_RETRY_INTERVAL); + } + if (ret) { + return ret; + } + + rsize = smb_data[1]; + + if (rsize > size ) { + rsize = size; + } + + memcpy(buf, (smb_data + 2), rsize); + + return 0; +} + + +static int ssd_gen_swlog(struct ssd_device *dev, uint16_t event, uint32_t data); + +/* sensor */ +static int ssd_init_lm75(struct ssd_device *dev, uint8_t saddr) +{ + uint8_t conf = 0; + int ret = 0; + + ret = ssd_smbus_read_byte(dev, saddr, SSD_LM75_REG_CONF, &conf); + if (ret) { + goto out; + } + + conf &= (uint8_t)(~1u); + + ret = ssd_smbus_write_byte(dev, saddr, SSD_LM75_REG_CONF, &conf); + if (ret) { + goto out; + } + +out: + return ret; +} + +static int ssd_lm75_read(struct ssd_device *dev, uint8_t saddr, uint16_t *data) +{ + uint16_t val = 0; + int ret; + + ret = ssd_smbus_read_word(dev, saddr, SSD_LM75_REG_TEMP, (uint8_t *)&val); + if (ret) { + return ret; + } + + *data = u16_swap(val); + + return 0; +} + +static int ssd_init_lm80(struct ssd_device *dev, uint8_t saddr) +{ + uint8_t val; + uint8_t low, high; + int i; + int ret = 0; + + /* init */ + val = 0x80; + ret = ssd_smbus_write_byte(dev, saddr, SSD_LM80_REG_CONFIG, &val); + if (ret) { + goto out; + } + + /* 11-bit temp */ + val = 0x08; + ret = ssd_smbus_write_byte(dev, saddr, SSD_LM80_REG_RES, &val); + if (ret) { + goto out; + } + + /* set volt limit */ + for (i=0; ihw_info.nr_ctrl <= 1 && SSD_LM80_IN_1V2 == i) { + high = 0xFF; + low = 0; + } + + /* high limit */ + ret = ssd_smbus_write_byte(dev, saddr, SSD_LM80_REG_IN_MAX(i), &high); + if (ret) { + goto out; + } + + /* low limit*/ + ret = ssd_smbus_write_byte(dev, saddr, SSD_LM80_REG_IN_MIN(i), &low); + if (ret) { + goto out; + } + } + + /* set interrupt mask: allow volt in interrupt except cap in*/ + val = 0x81; + ret = ssd_smbus_write_byte(dev, saddr, SSD_LM80_REG_MASK1, &val); + if (ret) { + goto out; + } + + /* set interrupt mask: disable others */ + val = 0xFF; + ret = ssd_smbus_write_byte(dev, saddr, SSD_LM80_REG_MASK2, &val); + if (ret) { + goto out; + } + + /* start */ + val = 0x03; + ret = ssd_smbus_write_byte(dev, saddr, SSD_LM80_REG_CONFIG, &val); + if (ret) { + goto out; + } + +out: + return ret; +} + +static int ssd_lm80_enable_in(struct ssd_device *dev, uint8_t saddr, int idx) +{ + uint8_t val = 0; + int ret = 0; + + if (idx >= SSD_LM80_IN_NR || idx < 0) { + return -EINVAL; + } + + ret = ssd_smbus_read_byte(dev, saddr, SSD_LM80_REG_MASK1, &val); + if (ret) { + goto out; + } + + val &= ~(1UL << (uint32_t)idx); + + ret = ssd_smbus_write_byte(dev, saddr, SSD_LM80_REG_MASK1, &val); + if (ret) { + goto out; + } + +out: + return ret; +} + +static int ssd_lm80_disable_in(struct ssd_device *dev, uint8_t saddr, int idx) +{ + uint8_t val = 0; + int ret = 0; + + if (idx >= SSD_LM80_IN_NR || idx < 0) { + return -EINVAL; + } + + ret = ssd_smbus_read_byte(dev, saddr, SSD_LM80_REG_MASK1, &val); + if (ret) { + goto out; + } + + val |= (1UL << (uint32_t)idx); + + ret = ssd_smbus_write_byte(dev, saddr, SSD_LM80_REG_MASK1, &val); + if (ret) { + goto out; + } + +out: + return ret; +} + +static int ssd_lm80_read_temp(struct ssd_device *dev, uint8_t saddr, uint16_t *data) +{ + uint16_t val = 0; + int ret; + + ret = ssd_smbus_read_word(dev, saddr, SSD_LM80_REG_TEMP, (uint8_t *)&val); + if (ret) { + return ret; + } + + *data = u16_swap(val); + + return 0; +} +static int ssd_generate_sensor_fault_log(struct ssd_device *dev, uint16_t event, uint8_t addr,uint32_t ret) +{ + uint32_t data; + data = ((ret & 0xffff) << 16) | (addr << 8) | addr; + ssd_gen_swlog(dev,event,data); + return 0; +} +static int ssd_lm80_check_event(struct ssd_device *dev, uint8_t saddr) +{ + uint32_t volt; + uint16_t val = 0, status; + uint8_t alarm1 = 0, alarm2 = 0; + uint32_t low, high; + int i,j=0; + int ret = 0; + + /* read interrupt status to clear interrupt */ + ret = ssd_smbus_read_byte(dev, saddr, SSD_LM80_REG_ALARM1, &alarm1); + if (ret) { + goto out; + } + + ret = ssd_smbus_read_byte(dev, saddr, SSD_LM80_REG_ALARM2, &alarm2); + if (ret) { + goto out; + } + + status = (uint16_t)alarm1 | ((uint16_t)alarm2 << 8); + + /* parse inetrrupt status */ + for (i=0; i> (uint32_t)i) & 0x1)) { + if (test_and_clear_bit(SSD_HWMON_LM80(i), &dev->hwmon)) { + /* enable INx irq */ + ret = ssd_lm80_enable_in(dev, saddr, i); + if (ret) { + goto out; + } + } + + continue; + } + + /* disable INx irq */ + ret = ssd_lm80_disable_in(dev, saddr, i); + if (ret) { + goto out; + } + + if (test_and_set_bit(SSD_HWMON_LM80(i), &dev->hwmon)) { + continue; + } + + high = (uint32_t)ssd_lm80_limit[i].high * (uint32_t)10; + low = (uint32_t)ssd_lm80_limit[i].low * (uint32_t)10; + + for (j=0; j<3; j++) { + ret = ssd_smbus_read_word(dev, saddr, SSD_LM80_REG_IN(i), (uint8_t *)&val); + if (ret) { + goto out; + } + volt = SSD_LM80_CONVERT_VOLT(u16_swap(val)); + if ((volt>high) || (volt<=low)) { + if(j<2) { + msleep(SSD_LM80_CONV_INTERVAL); + } + } else { + break; + } + } + + if (j<3) { + continue; + } + + switch (i) { + case SSD_LM80_IN_CAP: { + if (0 == volt) { + ssd_gen_swlog(dev, SSD_LOG_CAP_SHORT_CIRCUIT, 0); + } else { + ssd_gen_swlog(dev, SSD_LOG_CAP_VOLT_FAULT, SSD_PL_CAP_VOLT(volt)); + } + break; + } + + case SSD_LM80_IN_1V2: + case SSD_LM80_IN_1V2a: + case SSD_LM80_IN_1V5: + case SSD_LM80_IN_1V8: { + ssd_gen_swlog(dev, SSD_LOG_VOLT_STATUS, SSD_VOLT_LOG_DATA(i, 0, volt)); + break; + } + case SSD_LM80_IN_FPGA_3V3: + case SSD_LM80_IN_3V3: { + ssd_gen_swlog(dev, SSD_LOG_VOLT_STATUS, SSD_VOLT_LOG_DATA(i, 0, SSD_LM80_3V3_VOLT(volt))); + break; + } + default: + break; + } + } + +out: + if (ret) { + if (!test_and_set_bit(SSD_HWMON_SENSOR(SSD_SENSOR_LM80), &dev->hwmon)) { + ssd_generate_sensor_fault_log(dev, SSD_LOG_SENSOR_FAULT, (uint32_t)saddr,ret); + } + } else { + test_and_clear_bit(SSD_HWMON_SENSOR(SSD_SENSOR_LM80), &dev->hwmon); + } + return ret; +} + + +static int ssd_init_sensor(struct ssd_device *dev) +{ + int ret = 0; + + if (dev->protocol_info.ver < SSD_PROTOCOL_V3_2) { + goto out; + } + + ret = ssd_init_lm75(dev, SSD_SENSOR_LM75_SADDRESS); + if (ret) { + hio_warn("%s: init lm75 failed\n", dev->name); + if (!test_and_set_bit(SSD_HWMON_SENSOR(SSD_SENSOR_LM75), &dev->hwmon)) { + ssd_generate_sensor_fault_log(dev, SSD_LOG_SENSOR_FAULT, SSD_SENSOR_LM75_SADDRESS,ret); + } + goto out; + } + + if (dev->hw_info.pcb_ver >= 'B' || dev->hw_info_ext.form_factor == SSD_FORM_FACTOR_HHHL) { + ret = ssd_init_lm80(dev, SSD_SENSOR_LM80_SADDRESS); + if (ret) { + hio_warn("%s: init lm80 failed\n", dev->name); + if (!test_and_set_bit(SSD_HWMON_SENSOR(SSD_SENSOR_LM80), &dev->hwmon)) { + ssd_generate_sensor_fault_log(dev, SSD_LOG_SENSOR_FAULT, SSD_SENSOR_LM80_SADDRESS,ret); + } + goto out; + } + } + +out: + /* skip error if not in standard mode */ + if (mode != SSD_DRV_MODE_STANDARD) { + ret = 0; + } + return ret; +} + +/* board volt */ +static int ssd_mon_boardvolt(struct ssd_device *dev) +{ + if (dev->protocol_info.ver < SSD_PROTOCOL_V3_2) { + return 0; + } + + if (dev->hw_info_ext.form_factor == SSD_FORM_FACTOR_FHHL && dev->hw_info.pcb_ver < 'B') { + return 0; + } + + return ssd_lm80_check_event(dev, SSD_SENSOR_LM80_SADDRESS); +} + +/* temperature */ +static int ssd_mon_temp(struct ssd_device *dev) +{ + int cur; + uint16_t val = 0; + int ret = 0; + + if (dev->protocol_info.ver < SSD_PROTOCOL_V3_2) { + return 0; + } + + if (dev->hw_info_ext.form_factor == SSD_FORM_FACTOR_FHHL && dev->hw_info.pcb_ver < 'B') { + return 0; + } + + /* inlet */ + ret = ssd_lm80_read_temp(dev, SSD_SENSOR_LM80_SADDRESS, &val); + if (ret) { + if (!test_and_set_bit(SSD_HWMON_SENSOR(SSD_SENSOR_LM80), &dev->hwmon)) { + ssd_generate_sensor_fault_log(dev, SSD_LOG_TEMP_SENSOR_EVENT, SSD_SENSOR_LM80_SADDRESS,ret); + } + goto out; + } + test_and_clear_bit(SSD_HWMON_SENSOR(SSD_SENSOR_LM80), &dev->hwmon); + + cur = SSD_SENSOR_CONVERT_TEMP(val); + if (cur >= SSD_INLET_OT_TEMP) { + if (!test_and_set_bit(SSD_HWMON_TEMP(SSD_TEMP_INLET), &dev->hwmon)) { + ssd_gen_swlog(dev, SSD_LOG_INLET_OVER_TEMP, (uint32_t)cur); + } + } else if(cur < SSD_INLET_OT_HYST) { + if (test_and_clear_bit(SSD_HWMON_TEMP(SSD_TEMP_INLET), &dev->hwmon)) { + ssd_gen_swlog(dev, SSD_LOG_INLET_NORMAL_TEMP, (uint32_t)cur); + } + } + + /* flash */ + ret = ssd_lm75_read(dev, SSD_SENSOR_LM75_SADDRESS, &val); + if (ret) { + if (!test_and_set_bit(SSD_HWMON_SENSOR(SSD_SENSOR_LM75), &dev->hwmon)) { + ssd_generate_sensor_fault_log(dev, SSD_LOG_TEMP_SENSOR_EVENT, SSD_SENSOR_LM75_SADDRESS,ret); + } + goto out; + } + test_and_clear_bit(SSD_HWMON_SENSOR(SSD_SENSOR_LM75), &dev->hwmon); + + cur = SSD_SENSOR_CONVERT_TEMP(val); + if (cur >= SSD_FLASH_OT_TEMP) { + if (!test_and_set_bit(SSD_HWMON_TEMP(SSD_TEMP_FLASH), &dev->hwmon)) { + ssd_gen_swlog(dev, SSD_LOG_FLASH_OVER_TEMP, (uint32_t)cur); + } + } else if(cur < SSD_FLASH_OT_HYST) { + if (test_and_clear_bit(SSD_HWMON_TEMP(SSD_TEMP_FLASH), &dev->hwmon)) { + ssd_gen_swlog(dev, SSD_LOG_FLASH_NORMAL_TEMP, (uint32_t)cur); + } + } + +out: + return ret; +} + +/* cmd tag */ +static inline void ssd_put_tag(struct ssd_device *dev, int tag) +{ + test_and_clear_bit(tag, dev->tag_map); + wake_up(&dev->tag_wq); +} + +static inline int ssd_get_tag(struct ssd_device *dev, int wait) +{ + int tag; + +find_tag: + while ((tag = find_first_zero_bit(dev->tag_map, dev->hw_info.cmd_fifo_sz)) >= atomic_read(&dev->queue_depth)) { + DEFINE_WAIT(__wait); + + if (!wait) { + return -1; + } + + prepare_to_wait_exclusive(&dev->tag_wq, &__wait, TASK_UNINTERRUPTIBLE); + schedule(); + + finish_wait(&dev->tag_wq, &__wait); + } + + if (test_and_set_bit(tag, dev->tag_map)) { + goto find_tag; + } + + return tag; +} + +static void ssd_barrier_put_tag(struct ssd_device *dev, int tag) +{ + test_and_clear_bit(tag, dev->tag_map); +} + +static int ssd_barrier_get_tag(struct ssd_device *dev) +{ + int tag = 0; + + if (test_and_set_bit(tag, dev->tag_map)) { + return -1; + } + + return tag; +} + +static void ssd_barrier_end(struct ssd_device *dev) +{ + atomic_set(&dev->queue_depth, dev->hw_info.cmd_fifo_sz); + wake_up_all(&dev->tag_wq); + + mutex_unlock(&dev->barrier_mutex); +} + +static int ssd_barrier_start(struct ssd_device *dev) +{ + int i; + + mutex_lock(&dev->barrier_mutex); + + atomic_set(&dev->queue_depth, 0); + + for (i=0; itag_map, dev->hw_info.cmd_fifo_sz) >= dev->hw_info.cmd_fifo_sz) { + return 0; + } + + __set_current_state(TASK_INTERRUPTIBLE); + schedule_timeout(1); + } + + atomic_set(&dev->queue_depth, dev->hw_info.cmd_fifo_sz); + wake_up_all(&dev->tag_wq); + + mutex_unlock(&dev->barrier_mutex); + + return -EBUSY; +} + +static int ssd_busy(struct ssd_device *dev) +{ + if (find_first_bit(dev->tag_map, dev->hw_info.cmd_fifo_sz) >= dev->hw_info.cmd_fifo_sz) { + return 0; + } + + return 1; +} + +static int ssd_wait_io(struct ssd_device *dev) +{ + int i; + + for (i=0; itag_map, dev->hw_info.cmd_fifo_sz) >= dev->hw_info.cmd_fifo_sz) { + return 0; + } + + __set_current_state(TASK_INTERRUPTIBLE); + schedule_timeout(1); + } + + return -EBUSY; +} + +#if 0 +static int ssd_in_barrier(struct ssd_device *dev) +{ + return (0 == atomic_read(&dev->queue_depth)); +} +#endif + +static void ssd_cleanup_tag(struct ssd_device *dev) +{ + kfree(dev->tag_map); +} + +static int ssd_init_tag(struct ssd_device *dev) +{ + int nr_ulongs = ALIGN(dev->hw_info.cmd_fifo_sz, BITS_PER_LONG) / BITS_PER_LONG; + + mutex_init(&dev->barrier_mutex); + + atomic_set(&dev->queue_depth, dev->hw_info.cmd_fifo_sz); + + dev->tag_map = kmalloc(nr_ulongs * sizeof(unsigned long), GFP_ATOMIC); + if (!dev->tag_map) { + return -ENOMEM; + } + + memset(dev->tag_map, 0, nr_ulongs * sizeof(unsigned long)); + + init_waitqueue_head(&dev->tag_wq); + + return 0; +} + +/* io stat */ +static void ssd_end_io_acct(struct ssd_cmd *cmd) +{ + struct ssd_device *dev = cmd->dev; + struct bio *bio = cmd->bio; + unsigned long dur = jiffies - cmd->start_time; + int rw = bio_data_dir(bio); +#if ((LINUX_VERSION_CODE >= KERNEL_VERSION(3,0,0)) || (defined RHEL_MAJOR && RHEL_MAJOR == 6 && RHEL_MINOR >= 7)) +#else + unsigned long flag; +#endif + +#if (LINUX_VERSION_CODE >= KERNEL_VERSION(5,8,0)) + bio_end_io_acct(bio, cmd->start_time); +#elif (LINUX_VERSION_CODE >= KERNEL_VERSION(4,14,0)) + struct hd_struct *part = disk_map_sector_rcu(dev->gd, bio_start(bio)); + generic_end_io_acct(dev->rq, rw, part, cmd->start_time); +#elif ((LINUX_VERSION_CODE >= KERNEL_VERSION(3,0,0)) || (defined RHEL_MAJOR && RHEL_MAJOR == 6 && RHEL_MINOR >= 7)) + int cpu = part_stat_lock(); + struct hd_struct *part = disk_map_sector_rcu(dev->gd, bio_start(bio)); + part_round_stats(cpu, part); + part_stat_add(cpu, part, ticks[rw], dur); + part_dec_in_flight(part, rw); + part_stat_unlock(); +#elif (LINUX_VERSION_CODE > KERNEL_VERSION(2,6,27)) + int cpu = part_stat_lock(); + struct hd_struct *part = &dev->gd->part0; + part_round_stats(cpu, part); + part_stat_add(cpu, part, ticks[rw], dur); + + spin_lock_irqsave(&dev->in_flight_lock,flag); + part->in_flight[rw]--; + spin_unlock_irqrestore(&dev->in_flight_lock,flag); + + part_stat_unlock(); + +#elif (LINUX_VERSION_CODE > KERNEL_VERSION(2,6,14)) + preempt_disable(); + disk_round_stats(dev->gd); + disk_stat_add(dev->gd, ticks[rw], dur); + + spin_lock_irqsave(&dev->in_flight_lock,flag); + dev->gd->in_flight--; + spin_unlock_irqrestore(&dev->in_flight_lock,flag); + + preempt_enable(); + +#else + preempt_disable(); + disk_round_stats(dev->gd); + if (rw == WRITE) { + disk_stat_add(dev->gd, write_ticks, dur); + } else { + disk_stat_add(dev->gd, read_ticks, dur); + } + spin_lock_irqsave(&dev->in_flight_lock,flag); + dev->gd->in_flight--; + spin_unlock_irqrestore(&dev->in_flight_lock,flag); + + preempt_enable(); + +#endif +} + +static void ssd_start_io_acct(struct ssd_cmd *cmd) +{ + struct ssd_device *dev = cmd->dev; + struct bio *bio = cmd->bio; + int rw = bio_data_dir(bio); +#if ((LINUX_VERSION_CODE >= KERNEL_VERSION(3,0,0)) || (defined RHEL_MAJOR && RHEL_MAJOR == 6 && RHEL_MINOR >= 7)) +#else + unsigned long flag; +#endif + +#if (LINUX_VERSION_CODE >= KERNEL_VERSION(5,8,0)) + cmd->start_time = bio_start_io_acct(bio); +#elif (LINUX_VERSION_CODE >= KERNEL_VERSION(4,14,0)) + struct hd_struct *part = disk_map_sector_rcu(dev->gd, bio_start(bio)); + generic_start_io_acct(dev->rq, rw, bio_sectors(bio), part); + cmd->start_time = jiffies; +#elif ((LINUX_VERSION_CODE >= KERNEL_VERSION(3,0,0)) || (defined RHEL_MAJOR && RHEL_MAJOR == 6 && RHEL_MINOR >= 7)) + int cpu = part_stat_lock(); + struct hd_struct *part = disk_map_sector_rcu(dev->gd, bio_start(bio)); + part_round_stats(cpu, part); + part_stat_inc(cpu, part, ios[rw]); + part_stat_add(cpu, part, sectors[rw], bio_sectors(bio)); + part_inc_in_flight(part, rw); + part_stat_unlock(); + cmd->start_time = jiffies; +#elif (LINUX_VERSION_CODE > KERNEL_VERSION(2,6,27)) + int cpu = part_stat_lock(); + struct hd_struct *part = &dev->gd->part0; + part_round_stats(cpu, part); + part_stat_inc(cpu, part, ios[rw]); + part_stat_add(cpu, part, sectors[rw], bio_sectors(bio)); + + spin_lock_irqsave(&dev->in_flight_lock,flag); + part->in_flight[rw]++; + spin_unlock_irqrestore(&dev->in_flight_lock,flag); + + part_stat_unlock(); + cmd->start_time = jiffies; + +#elif (LINUX_VERSION_CODE > KERNEL_VERSION(2,6,14)) + preempt_disable(); + disk_round_stats(dev->gd); + disk_stat_inc(dev->gd, ios[rw]); + disk_stat_add(dev->gd, sectors[rw], bio_sectors(bio)); + + spin_lock_irqsave(&dev->in_flight_lock,flag); + dev->gd->in_flight++; + spin_unlock_irqrestore(&dev->in_flight_lock,flag); + + preempt_enable(); + cmd->start_time = jiffies; +#else + preempt_disable(); + disk_round_stats(dev->gd); + if (rw == WRITE) { + disk_stat_inc(dev->gd, writes); + disk_stat_add(dev->gd, write_sectors, bio_sectors(bio)); + } else { + disk_stat_inc(dev->gd, reads); + disk_stat_add(dev->gd, read_sectors, bio_sectors(bio)); + } + + spin_lock_irqsave(&dev->in_flight_lock,flag); + dev->gd->in_flight++; + spin_unlock_irqrestore(&dev->in_flight_lock,flag); + + preempt_enable(); + cmd->start_time = jiffies; +#endif +} + +/* io */ +static void ssd_queue_bio(struct ssd_device *dev, struct bio *bio) +{ + spin_lock(&dev->sendq_lock); + ssd_blist_add(&dev->sendq, bio); + spin_unlock(&dev->sendq_lock); + + atomic_inc(&dev->in_sendq); + wake_up(&dev->send_waitq); +} + +static inline void ssd_end_request(struct ssd_cmd *cmd) +{ + struct ssd_device *dev = cmd->dev; + struct bio *bio = cmd->bio; + int errors = cmd->errors; + int tag = cmd->tag; + + if (bio) { + if (!ssd_bio_has_discard(bio)) { + ssd_end_io_acct(cmd); + if (!cmd->flag) { + pci_unmap_sg(dev->pdev, cmd->sgl, cmd->nsegs, + bio_data_dir(bio) == READ ? PCI_DMA_FROMDEVICE : PCI_DMA_TODEVICE); + } + } + + cmd->bio = NULL; + ssd_put_tag(dev, tag); + + if (SSD_INT_MSIX == dev->int_mode || tag < 16 || errors) { + ssd_bio_endio(bio, errors); + } else /* if (bio->bi_idx >= bio->bi_vcnt)*/ { + spin_lock(&dev->doneq_lock); + ssd_blist_add(&dev->doneq, bio); + spin_unlock(&dev->doneq_lock); + + atomic_inc(&dev->in_doneq); + wake_up(&dev->done_waitq); + } + } else { + if (cmd->waiting) { + complete(cmd->waiting); + } + } +} + +static void ssd_end_timeout_request(struct ssd_cmd *cmd) +{ + struct ssd_device *dev = cmd->dev; + struct ssd_rw_msg *msg = (struct ssd_rw_msg *)cmd->msg; + int i; + + for (i=0; inr_queue; i++) { +#if (LINUX_VERSION_CODE < KERNEL_VERSION(4,10,0)) + disable_irq(dev->entry[i].vector); +#else + disable_irq(pci_irq_vector(dev->pdev, i)); +#endif + } + + atomic_inc(&dev->tocnt); + //if (cmd->bio) { + hio_err("%s: cmd timeout: tag %d fun %#x\n", dev->name, msg->tag, msg->fun); + cmd->errors = -ETIMEDOUT; + ssd_end_request(cmd); + //} + + for (i=0; inr_queue; i++) { +#if (LINUX_VERSION_CODE < KERNEL_VERSION(4,10,0)) + enable_irq(dev->entry[i].vector); +#else + enable_irq(pci_irq_vector(dev->pdev, i)); +#endif + } + + /* alarm led */ + ssd_set_alarm(dev); +} + +/* cmd timer */ +#if (LINUX_VERSION_CODE < KERNEL_VERSION(4,15,0)) +static void ssd_cmd_add_timer(struct ssd_cmd *cmd, int timeout, void (*complt)(struct ssd_cmd *)) +#else +static void ssd_cmd_add_timer(struct ssd_cmd *cmd, int timeout, void (*complt)(struct timer_list *)) +#endif +{ +#if (LINUX_VERSION_CODE < KERNEL_VERSION(4,15,0)) + init_timer(&cmd->cmd_timer); + + cmd->cmd_timer.data = (unsigned long)cmd; + cmd->cmd_timer.function = (void (*)(unsigned long)) complt; +#else + timer_setup(&cmd->cmd_timer, complt, 0); +#endif + + cmd->cmd_timer.expires = jiffies + timeout; + add_timer(&cmd->cmd_timer); +} + +static int ssd_cmd_del_timer(struct ssd_cmd *cmd) +{ + return del_timer(&cmd->cmd_timer); +} + +#if (LINUX_VERSION_CODE < KERNEL_VERSION(4,15,0)) +static void ssd_add_timer(struct timer_list *timer, int timeout, void (*complt)(void *), void *data) +#else +static void ssd_add_timer(struct timer_list *timer, int timeout, void (*complt)(struct timer_list *), void *data) +#endif +{ +#if (LINUX_VERSION_CODE < KERNEL_VERSION(4,15,0)) + init_timer(timer); + + timer->data = (unsigned long)data; + timer->function = (void (*)(unsigned long)) complt; +#else + timer_setup(timer, complt, 0); +#endif + + timer->expires = jiffies + timeout; + add_timer(timer); +} + +static int ssd_del_timer(struct timer_list *timer) +{ + return del_timer(timer); +} + +#if (LINUX_VERSION_CODE < KERNEL_VERSION(4,15,0)) +static void ssd_cmd_timeout(struct ssd_cmd *cmd) +#else +static void ssd_cmd_timeout(struct timer_list *t) +#endif +{ +#if (LINUX_VERSION_CODE >= KERNEL_VERSION(4,15,0)) + struct ssd_cmd *cmd = from_timer(cmd, t, cmd_timer); +#endif + struct ssd_device *dev = cmd->dev; + uint32_t msg = *(uint32_t *)cmd->msg; + + ssd_end_timeout_request(cmd); + + ssd_gen_swlog(dev, SSD_LOG_TIMEOUT, msg); +} + + +static void __ssd_done(unsigned long data) +{ + struct ssd_cmd *cmd; + LIST_HEAD(localq); + + local_irq_disable(); +#if (LINUX_VERSION_CODE < KERNEL_VERSION(3,13,0)) + list_splice_init(&__get_cpu_var(ssd_doneq), &localq); +#else + list_splice_init(this_cpu_ptr(&ssd_doneq), &localq); +#endif + local_irq_enable(); + + while (!list_empty(&localq)) { + cmd = list_entry(localq.next, struct ssd_cmd, list); + list_del_init(&cmd->list); + + ssd_end_request(cmd); + } +} + +static void __ssd_done_db(unsigned long data) +{ + struct ssd_cmd *cmd; + struct ssd_device *dev; + struct bio *bio; + LIST_HEAD(localq); + + local_irq_disable(); +#if (LINUX_VERSION_CODE < KERNEL_VERSION(3,13,0)) + list_splice_init(&__get_cpu_var(ssd_doneq), &localq); +#else + list_splice_init(this_cpu_ptr(&ssd_doneq), &localq); +#endif + local_irq_enable(); + + while (!list_empty(&localq)) { + cmd = list_entry(localq.next, struct ssd_cmd, list); + list_del_init(&cmd->list); + + dev = (struct ssd_device *)cmd->dev; + bio = cmd->bio; + + if (bio) { + sector_t off = dev->db_info.data.loc.off; + uint32_t len = dev->db_info.data.loc.len; + + switch (dev->db_info.type) { + case SSD_DEBUG_READ_ERR: + if (bio_data_dir(bio) == READ && + !((off + len) <= bio_start(bio) || off >= (bio_start(bio) + bio_sectors(bio)))) { + cmd->errors = -EIO; + } + break; + case SSD_DEBUG_WRITE_ERR: + if (bio_data_dir(bio) == WRITE && + !((off + len) <= bio_start(bio) || off >= (bio_start(bio) + bio_sectors(bio)))) { + cmd->errors = -EROFS; + } + break; + case SSD_DEBUG_RW_ERR: + if (!((off + len) <= bio_start(bio) || off >= (bio_start(bio) + bio_sectors(bio)))) { + if (bio_data_dir(bio) == READ) { + cmd->errors = -EIO; + } else { + cmd->errors = -EROFS; + } + } + break; + default: + break; + } + } + + ssd_end_request(cmd); + } +} + +static inline void ssd_done_bh(struct ssd_cmd *cmd) +{ + unsigned long flags = 0; + + if (unlikely(!ssd_cmd_del_timer(cmd))) { + struct ssd_device *dev = cmd->dev; + struct ssd_rw_msg *msg = (struct ssd_rw_msg *)cmd->msg; + hio_err("%s: unknown cmd: tag %d fun %#x\n", dev->name, msg->tag, msg->fun); + + /* alarm led */ + ssd_set_alarm(dev); + return; + } + + local_irq_save(flags); +#if (LINUX_VERSION_CODE < KERNEL_VERSION(3,13,0)) + list_add_tail(&cmd->list, &__get_cpu_var(ssd_doneq)); + tasklet_hi_schedule(&__get_cpu_var(ssd_tasklet)); +#else + list_add_tail(&cmd->list, this_cpu_ptr(&ssd_doneq)); + tasklet_hi_schedule(this_cpu_ptr(&ssd_tasklet)); +#endif + local_irq_restore(flags); + + return; +} + +static inline void ssd_done(struct ssd_cmd *cmd) +{ + if (unlikely(!ssd_cmd_del_timer(cmd))) { + struct ssd_device *dev = cmd->dev; + struct ssd_rw_msg *msg = (struct ssd_rw_msg *)cmd->msg; + hio_err("%s: unknown cmd: tag %d fun %#x\n", dev->name, msg->tag, msg->fun); + + /* alarm led */ + ssd_set_alarm(dev); + return; + } + + ssd_end_request(cmd); + + return; +} + +static inline void ssd_dispatch_cmd(struct ssd_cmd *cmd) +{ + struct ssd_device *dev = (struct ssd_device *)cmd->dev; + + ssd_cmd_add_timer(cmd, SSD_CMD_TIMEOUT, ssd_cmd_timeout); + + spin_lock(&dev->cmd_lock); + ssd_reg_write(dev->ctrlp + SSD_REQ_FIFO_REG, cmd->msg_dma); + spin_unlock(&dev->cmd_lock); +} + +static inline void ssd_send_cmd(struct ssd_cmd *cmd) +{ + struct ssd_device *dev = (struct ssd_device *)cmd->dev; + + ssd_cmd_add_timer(cmd, SSD_CMD_TIMEOUT, ssd_cmd_timeout); + + ssd_reg32_write(dev->ctrlp + SSD_REQ_FIFO_REG, ((uint32_t)cmd->tag | ((uint32_t)cmd->nsegs << 16))); +} + +static inline void ssd_send_cmd_db(struct ssd_cmd *cmd) +{ + struct ssd_device *dev = (struct ssd_device *)cmd->dev; + struct bio *bio = cmd->bio; + + ssd_cmd_add_timer(cmd, SSD_CMD_TIMEOUT, ssd_cmd_timeout); + + if (bio) { + switch (dev->db_info.type) { + case SSD_DEBUG_READ_TO: + if (bio_data_dir(bio) == READ) { + return; + } + break; + case SSD_DEBUG_WRITE_TO: + if (bio_data_dir(bio) == WRITE) { + return; + } + break; + case SSD_DEBUG_RW_TO: + return; + break; + default: + break; + } + } + + ssd_reg32_write(dev->ctrlp + SSD_REQ_FIFO_REG, ((uint32_t)cmd->tag | ((uint32_t)cmd->nsegs << 16))); +} + + +/* fixed for BIOVEC_PHYS_MERGEABLE */ +#ifdef SSD_BIOVEC_PHYS_MERGEABLE_FIXED +#include +#include +#include + +static bool xen_biovec_phys_mergeable_fixed(const struct bio_vec *vec1, + const struct bio_vec *vec2) +{ + unsigned long mfn1 = pfn_to_mfn(page_to_pfn(vec1->bv_page)); + unsigned long mfn2 = pfn_to_mfn(page_to_pfn(vec2->bv_page)); + + return __BIOVEC_PHYS_MERGEABLE(vec1, vec2) && + ((mfn1 == mfn2) || ((mfn1+1) == mfn2)); +} + +#ifdef BIOVEC_PHYS_MERGEABLE +#undef BIOVEC_PHYS_MERGEABLE +#endif +#define BIOVEC_PHYS_MERGEABLE(vec1, vec2) \ + (__BIOVEC_PHYS_MERGEABLE(vec1, vec2) && \ + (!xen_domain() || xen_biovec_phys_mergeable_fixed(vec1, vec2))) + +#endif + +/* + * BIOVEC_PHYS_MERGEABLE not available from 4.20 onward, and it seems likely + * that all the merging that can be done has been done by the block core + * already. Just stub it out. + */ +#if (LINUX_VERSION_CODE > KERNEL_VERSION(4,20,0)) +# ifdef BIOVEC_PHYS_MERGEABLE +# undef BIOVEC_PHYS_MERGEABLE +# endif +# define BIOVEC_PHYS_MERGEABLE(vec1, vec2) (0) +#endif + +static inline int ssd_bio_map_sg(struct ssd_device *dev, struct bio *bio, struct scatterlist *sgl) +{ +#if (LINUX_VERSION_CODE < KERNEL_VERSION(3,14,0)) + struct bio_vec *bvec, *bvprv = NULL; + struct scatterlist *sg = NULL; + int i = 0, nsegs = 0; + +#if (LINUX_VERSION_CODE > KERNEL_VERSION(2,6,23)) + sg_init_table(sgl, dev->hw_info.cmd_max_sg); +#endif + + /* + * for each segment in bio + */ + bio_for_each_segment(bvec, bio, i) { + if (bvprv && BIOVEC_PHYS_MERGEABLE(bvprv, bvec)) { + sg->length += bvec->bv_len; + } else { + if (unlikely(nsegs >= (int)dev->hw_info.cmd_max_sg)) { + break; + } + + sg = sg ? (sg + 1) : sgl; +#if (LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,24)) + sg_set_page(sg, bvec->bv_page, bvec->bv_len, bvec->bv_offset); +#else + sg->page = bvec->bv_page; + sg->length = bvec->bv_len; + sg->offset = bvec->bv_offset; +#endif + nsegs++; + } + bvprv = bvec; + } + +#if (LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,24)) + if (sg) { + sg_mark_end(sg); + } +#endif + + bio->bi_idx = i; + + return nsegs; +#else + struct bio_vec bvec, bvprv; + struct bvec_iter iter; + struct scatterlist *sg = NULL; + int nsegs = 0; + int first = 1; + + sg_init_table(sgl, dev->hw_info.cmd_max_sg); + + /* + * for each segment in bio + */ + bio_for_each_segment(bvec, bio, iter) { + if (!first && BIOVEC_PHYS_MERGEABLE(&bvprv, &bvec)) { + sg->length += bvec.bv_len; + } else { + if (unlikely(nsegs >= (int)dev->hw_info.cmd_max_sg)) { + break; + } + + sg = sg ? (sg + 1) : sgl; + + sg_set_page(sg, bvec.bv_page, bvec.bv_len, bvec.bv_offset); + + nsegs++; + first = 0; + } + bvprv = bvec; + } + + if (sg) { + sg_mark_end(sg); + } + + return nsegs; +#endif +} + + +static int __ssd_submit_pbio(struct ssd_device *dev, struct bio *bio, int wait) +{ + struct ssd_cmd *cmd; + struct ssd_rw_msg *msg; + struct ssd_sg_entry *sge; + sector_t block = bio_start(bio); + int tag; + int i; + + tag = ssd_get_tag(dev, wait); + if (tag < 0) { + return -EBUSY; + } + + cmd = &dev->cmd[tag]; + cmd->bio = bio; + cmd->flag = 1; + + msg = (struct ssd_rw_msg *)cmd->msg; + + if (ssd_bio_has_discard(bio)) { + unsigned int length = bio_sectors(bio); + + //printk(KERN_WARNING "%s: discard len %u, block %llu\n", dev->name, bio_sectors(bio), block); + msg->tag = tag; + msg->fun = SSD_FUNC_TRIM; + + sge = msg->sge; + for (i=0; i<(dev->hw_info.cmd_max_sg); i++) { + sge->block = block; + sge->length = (length >= dev->hw_info.sg_max_sec) ? dev->hw_info.sg_max_sec : length; + sge->buf = 0; + + block += sge->length; + length -= sge->length; + sge++; + + if (length <= 0) { + ++i; + break; + } + } + msg->nsegs = cmd->nsegs = i; + + dev->scmd(cmd); + return 0; + } + + //msg->nsegs = cmd->nsegs = ssd_bio_map_sg(dev, bio, sgl); + msg->nsegs = cmd->nsegs = bio->bi_vcnt; + + //xx + if (bio_data_dir(bio) == READ) { + msg->fun = SSD_FUNC_READ; + msg->flag = 0; + } else { + msg->fun = SSD_FUNC_WRITE; + msg->flag = dev->wmode; + } + + sge = msg->sge; + for (i=0; ibi_vcnt; i++) { + sge->block = block; + sge->length = bio->bi_io_vec[i].bv_len >> 9; + sge->buf = (uint64_t)((void *)bio->bi_io_vec[i].bv_page + bio->bi_io_vec[i].bv_offset); + + block += sge->length; + sge++; + } + + msg->tag = tag; + +#ifdef SSD_OT_PROTECT + if (unlikely(dev->ot_delay > 0 && dev->ot_protect != 0)) { + msleep_interruptible(dev->ot_delay); + } +#endif + + ssd_start_io_acct(cmd); + dev->scmd(cmd); + + return 0; +} + +static inline int ssd_submit_bio(struct ssd_device *dev, struct bio *bio, int wait) +{ + struct ssd_cmd *cmd; + struct ssd_rw_msg *msg; + struct ssd_sg_entry *sge; + struct scatterlist *sgl; + sector_t block = bio_start(bio); + int tag; + int i; + + tag = ssd_get_tag(dev, wait); + if (tag < 0) { + return -EBUSY; + } + + cmd = &dev->cmd[tag]; + cmd->bio = bio; + cmd->flag = 0; + + msg = (struct ssd_rw_msg *)cmd->msg; + + sgl = cmd->sgl; + + if (ssd_bio_has_discard(bio)) { + unsigned int length = bio_sectors(bio); + + //printk(KERN_WARNING "%s: discard len %u, block %llu\n", dev->name, bio_sectors(bio), block); + msg->tag = tag; + msg->fun = SSD_FUNC_TRIM; + + sge = msg->sge; + for (i=0; i<(dev->hw_info.cmd_max_sg); i++) { + sge->block = block; + sge->length = (length >= dev->hw_info.sg_max_sec) ? dev->hw_info.sg_max_sec : length; + sge->buf = 0; + + block += sge->length; + length -= sge->length; + sge++; + + if (length <= 0) { + ++i; + break; + } + } + msg->nsegs = cmd->nsegs = i; + + dev->scmd(cmd); + return 0; + } + + msg->nsegs = cmd->nsegs = ssd_bio_map_sg(dev, bio, sgl); + + //xx + if (bio_data_dir(bio) == READ) { + msg->fun = SSD_FUNC_READ; + msg->flag = 0; + pci_map_sg(dev->pdev, sgl, cmd->nsegs, PCI_DMA_FROMDEVICE); + } else { + msg->fun = SSD_FUNC_WRITE; + msg->flag = dev->wmode; + pci_map_sg(dev->pdev, sgl, cmd->nsegs, PCI_DMA_TODEVICE); + } + + sge = msg->sge; + for (i=0; insegs; i++) { + sge->block = block; + sge->length = sg_dma_len(sgl) >> 9; + sge->buf = sg_dma_address(sgl); + + block += sge->length; + sgl++; + sge++; + } + + msg->tag = tag; + +#ifdef SSD_OT_PROTECT + if (unlikely(dev->ot_delay > 0 && dev->ot_protect != 0)) { + msleep_interruptible(dev->ot_delay); + } +#endif + + ssd_start_io_acct(cmd); + dev->scmd(cmd); + + return 0; +} + +/* threads */ +static int ssd_done_thread(void *data) +{ + struct ssd_device *dev; + struct bio *bio; + struct bio *next; + + if (!data) { + return -EINVAL; + } + dev = data; + + current->flags |= PF_NOFREEZE; + //set_user_nice(current, -5); + + while (!kthread_should_stop()) { + wait_event_interruptible(dev->done_waitq, (atomic_read(&dev->in_doneq) || kthread_should_stop())); + + while (atomic_read(&dev->in_doneq)) { + if (threaded_irq) { + spin_lock(&dev->doneq_lock); + bio = ssd_blist_get(&dev->doneq); + spin_unlock(&dev->doneq_lock); + } else { + spin_lock_irq(&dev->doneq_lock); + bio = ssd_blist_get(&dev->doneq); + spin_unlock_irq(&dev->doneq_lock); + } + + while (bio) { + next = bio->bi_next; + bio->bi_next = NULL; + ssd_bio_endio(bio, 0); + atomic_dec(&dev->in_doneq); + bio = next; + } + + cond_resched(); + +#ifdef SSD_ESCAPE_IRQ + if (unlikely(smp_processor_id() == dev->irq_cpu)) { +#if (LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,28)) + cpumask_var_t new_mask; + if (alloc_cpumask_var(&new_mask, GFP_ATOMIC)) { + cpumask_setall(new_mask); + cpumask_clear_cpu(dev->irq_cpu, new_mask); + set_cpus_allowed_ptr(current, new_mask); + free_cpumask_var(new_mask); + } +#else + cpumask_t new_mask; + cpus_setall(new_mask); + cpu_clear(dev->irq_cpu, new_mask); + set_cpus_allowed(current, new_mask); +#endif + } +#endif + } + } + return 0; +} + +static int ssd_send_thread(void *data) +{ + struct ssd_device *dev; + struct bio *bio; + struct bio *next; + + if (!data) { + return -EINVAL; + } + dev = data; + + current->flags |= PF_NOFREEZE; + //set_user_nice(current, -5); + + while (!kthread_should_stop()) { + wait_event_interruptible(dev->send_waitq, (atomic_read(&dev->in_sendq) || kthread_should_stop())); + + while (atomic_read(&dev->in_sendq)) { + spin_lock(&dev->sendq_lock); + bio = ssd_blist_get(&dev->sendq); + spin_unlock(&dev->sendq_lock); + + while (bio) { + next = bio->bi_next; + bio->bi_next = NULL; +#ifdef SSD_QUEUE_PBIO + if (test_and_clear_bit(BIO_SSD_PBIO, &bio->bi_flags)) { + __ssd_submit_pbio(dev, bio, 1); + } else { + ssd_submit_bio(dev, bio, 1); + } +#else + ssd_submit_bio(dev, bio, 1); +#endif + atomic_dec(&dev->in_sendq); + bio = next; + } + + cond_resched(); + +#ifdef SSD_ESCAPE_IRQ + if (unlikely(smp_processor_id() == dev->irq_cpu)) { +#if (LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,28)) + cpumask_var_t new_mask; + if (alloc_cpumask_var(&new_mask, GFP_ATOMIC)) { + cpumask_setall(new_mask); + cpumask_clear_cpu(dev->irq_cpu, new_mask); + set_cpus_allowed_ptr(current, new_mask); + free_cpumask_var(new_mask); + } +#else + cpumask_t new_mask; + cpus_setall(new_mask); + cpu_clear(dev->irq_cpu, new_mask); + set_cpus_allowed(current, new_mask); +#endif + } +#endif + } + } + + return 0; +} + +static void ssd_cleanup_thread(struct ssd_device *dev) +{ + kthread_stop(dev->send_thread); + kthread_stop(dev->done_thread); +} + +static int ssd_init_thread(struct ssd_device *dev) +{ + int ret; + + atomic_set(&dev->in_doneq, 0); + atomic_set(&dev->in_sendq, 0); + + spin_lock_init(&dev->doneq_lock); + spin_lock_init(&dev->sendq_lock); + + ssd_blist_init(&dev->doneq); + ssd_blist_init(&dev->sendq); + + init_waitqueue_head(&dev->done_waitq); + init_waitqueue_head(&dev->send_waitq); + + dev->done_thread = kthread_run(ssd_done_thread, dev, "%s/d", dev->name); + if (IS_ERR(dev->done_thread)) { + ret = PTR_ERR(dev->done_thread); + goto out_done_thread; + } + + dev->send_thread = kthread_run(ssd_send_thread, dev, "%s/s", dev->name); + if (IS_ERR(dev->send_thread)) { + ret = PTR_ERR(dev->send_thread); + goto out_send_thread; + } + + return 0; + +out_send_thread: + kthread_stop(dev->done_thread); +out_done_thread: + return ret; +} + +/* dcmd pool */ +static void ssd_put_dcmd(struct ssd_dcmd *dcmd) +{ + struct ssd_device *dev = (struct ssd_device *)dcmd->dev; + + spin_lock(&dev->dcmd_lock); + list_add_tail(&dcmd->list, &dev->dcmd_list); + spin_unlock(&dev->dcmd_lock); +} + +static struct ssd_dcmd *ssd_get_dcmd(struct ssd_device *dev) +{ + struct ssd_dcmd *dcmd = NULL; + + spin_lock(&dev->dcmd_lock); + if (!list_empty(&dev->dcmd_list)) { + dcmd = list_entry(dev->dcmd_list.next, + struct ssd_dcmd, list); + list_del_init(&dcmd->list); + } + spin_unlock(&dev->dcmd_lock); + + return dcmd; +} + +static void ssd_cleanup_dcmd(struct ssd_device *dev) +{ + kfree(dev->dcmd); +} + +static int ssd_init_dcmd(struct ssd_device *dev) +{ + struct ssd_dcmd *dcmd; + int dcmd_sz = sizeof(struct ssd_dcmd)*dev->hw_info.cmd_fifo_sz; + int i; + + spin_lock_init(&dev->dcmd_lock); + INIT_LIST_HEAD(&dev->dcmd_list); + init_waitqueue_head(&dev->dcmd_wq); + + dev->dcmd = kmalloc(dcmd_sz, GFP_KERNEL); + if (!dev->dcmd) { + hio_warn("%s: can not alloc dcmd\n", dev->name); + goto out_alloc_dcmd; + } + memset(dev->dcmd, 0, dcmd_sz); + + for (i=0, dcmd=dev->dcmd; i<(int)dev->hw_info.cmd_fifo_sz; i++, dcmd++) { + dcmd->dev = dev; + INIT_LIST_HEAD(&dcmd->list); + list_add_tail(&dcmd->list, &dev->dcmd_list); + } + + return 0; + +out_alloc_dcmd: + return -ENOMEM; +} + +static void ssd_put_dmsg(void *msg) +{ + struct ssd_dcmd *dcmd = container_of(msg, struct ssd_dcmd, msg); + struct ssd_device *dev = (struct ssd_device *)dcmd->dev; + + memset(dcmd->msg, 0, SSD_DCMD_MAX_SZ); + ssd_put_dcmd(dcmd); + wake_up(&dev->dcmd_wq); +} + +static void *ssd_get_dmsg(struct ssd_device *dev) +{ + struct ssd_dcmd *dcmd = ssd_get_dcmd(dev); + + while (!dcmd) { + DEFINE_WAIT(wait); + prepare_to_wait_exclusive(&dev->dcmd_wq, &wait, TASK_UNINTERRUPTIBLE); + schedule(); + + dcmd = ssd_get_dcmd(dev); + + finish_wait(&dev->dcmd_wq, &wait); + } + return dcmd->msg; +} + +/* do direct cmd */ +static int ssd_do_request(struct ssd_device *dev, int rw, void *msg, int *done) +{ + DECLARE_COMPLETION(wait); + struct ssd_cmd *cmd; + int tag; + int ret = 0; + + tag = ssd_get_tag(dev, 1); + if (tag < 0) { + return -EBUSY; + } + + cmd = &dev->cmd[tag]; + cmd->nsegs = 1; + memcpy(cmd->msg, msg, SSD_DCMD_MAX_SZ); + ((struct ssd_rw_msg *)cmd->msg)->tag = tag; + + cmd->waiting = &wait; + + dev->scmd(cmd); + + wait_for_completion(cmd->waiting); + cmd->waiting = NULL; + + if (cmd->errors == -ETIMEDOUT) { + ret = cmd->errors; + } else if (cmd->errors) { + ret = -EIO; + } + + if (done != NULL) { + *done = cmd->nr_log; + } + ssd_put_tag(dev, cmd->tag); + + return ret; +} + +static int ssd_do_barrier_request(struct ssd_device *dev, int rw, void *msg, int *done) +{ + DECLARE_COMPLETION(wait); + struct ssd_cmd *cmd; + int tag; + int ret = 0; + + tag = ssd_barrier_get_tag(dev); + if (tag < 0) { + return -EBUSY; + } + + cmd = &dev->cmd[tag]; + cmd->nsegs = 1; + memcpy(cmd->msg, msg, SSD_DCMD_MAX_SZ); + ((struct ssd_rw_msg *)cmd->msg)->tag = tag; + + cmd->waiting = &wait; + + dev->scmd(cmd); + + wait_for_completion(cmd->waiting); + cmd->waiting = NULL; + + if (cmd->errors == -ETIMEDOUT) { + ret = cmd->errors; + } else if (cmd->errors) { + ret = -EIO; + } + + if (done != NULL) { + *done = cmd->nr_log; + } + ssd_barrier_put_tag(dev, cmd->tag); + + return ret; +} + +#ifdef SSD_OT_PROTECT +static void ssd_check_temperature(struct ssd_device *dev, int temp) +{ + uint64_t val; + uint32_t off; + int cur; + int i; + + if (mode != SSD_DRV_MODE_STANDARD) { + return; + } + + if (dev->protocol_info.ver <= SSD_PROTOCOL_V3) { + } + + for (i=0; ihw_info.nr_ctrl; i++) { + off = SSD_CTRL_TEMP_REG0 + i * sizeof(uint64_t); + + val = ssd_reg_read(dev->ctrlp + off); + if (val == 0xffffffffffffffffull) { + continue; + } + + cur = (int)CUR_TEMP(val); + if (cur >= temp) { + if (!test_and_set_bit(SSD_HWMON_TEMP(SSD_TEMP_CTRL), &dev->hwmon)) { + if (dev->protocol_info.ver > SSD_PROTOCOL_V3 && dev->protocol_info.ver < SSD_PROTOCOL_V3_2_2) { + hio_warn("%s: Over temperature, please check the fans.\n", dev->name); + dev->ot_delay = SSD_OT_DELAY; + } + } + return; + } + } + + if (test_and_clear_bit(SSD_HWMON_TEMP(SSD_TEMP_CTRL), &dev->hwmon)) { + if (dev->protocol_info.ver > SSD_PROTOCOL_V3 && dev->protocol_info.ver < SSD_PROTOCOL_V3_2_2) { + hio_warn("%s: Temperature is OK.\n", dev->name); + dev->ot_delay = 0; + } + } +} +#endif + +static int ssd_get_ot_status(struct ssd_device *dev, int *status) +{ + uint32_t off; + uint32_t val; + int i; + + if (!dev || !status) { + return -EINVAL; + } + + if (dev->protocol_info.ver >= SSD_PROTOCOL_V3_2_2) { + for (i=0; ihw_info.nr_ctrl; i++) { + off = SSD_READ_OT_REG0 + (i * SSD_CTRL_REG_ZONE_SZ); + val = ssd_reg32_read(dev->ctrlp + off); + if ((val >> 22) & 0x1) { + *status = 1; + goto out; + } + + + off = SSD_WRITE_OT_REG0 + (i * SSD_CTRL_REG_ZONE_SZ); + val = ssd_reg32_read(dev->ctrlp + off); + if ((val >> 22) & 0x1) { + *status = 1; + goto out; + } + } + } else { + *status = !!dev->ot_delay; + } + +out: + return 0; +} + +static void ssd_set_ot_protect(struct ssd_device *dev, int protect) +{ + uint32_t off; + uint32_t val; + int i; + + mutex_lock(&dev->fw_mutex); + + dev->ot_protect = !!protect; + + if (dev->protocol_info.ver >= SSD_PROTOCOL_V3_2_2) { + for (i=0; ihw_info.nr_ctrl; i++) { + off = SSD_READ_OT_REG0 + (i * SSD_CTRL_REG_ZONE_SZ); + val = ssd_reg32_read(dev->ctrlp + off); + if (dev->ot_protect) { + val |= (1U << 21); + } else { + val &= ~(1U << 21); + } + ssd_reg32_write(dev->ctrlp + off, val); + + + off = SSD_WRITE_OT_REG0 + (i * SSD_CTRL_REG_ZONE_SZ); + val = ssd_reg32_read(dev->ctrlp + off); + if (dev->ot_protect) { + val |= (1U << 21); + } else { + val &= ~(1U << 21); + } + ssd_reg32_write(dev->ctrlp + off, val); + } + } + + mutex_unlock(&dev->fw_mutex); +} + +static int ssd_init_ot_protect(struct ssd_device *dev) +{ + ssd_set_ot_protect(dev, ot_protect); + +#ifdef SSD_OT_PROTECT + ssd_check_temperature(dev, SSD_OT_TEMP); +#endif + + return 0; +} + +/* log */ +static int ssd_read_log(struct ssd_device *dev, int ctrl_idx, void *buf, int *nr_log) +{ + struct ssd_log_op_msg *msg; + struct ssd_log_msg *lmsg; + dma_addr_t buf_dma; + size_t length = dev->hw_info.log_sz; + int ret = 0; + + if (ctrl_idx >= dev->hw_info.nr_ctrl) { + return -EINVAL; + } + + buf_dma = pci_map_single(dev->pdev, buf, length, PCI_DMA_FROMDEVICE); +#if (LINUX_VERSION_CODE <= KERNEL_VERSION(2,6,26)) + ret = dma_mapping_error(buf_dma); +#else + ret = dma_mapping_error(&(dev->pdev->dev), buf_dma); +#endif + if (ret) { + hio_warn("%s: unable to map read DMA buffer\n", dev->name); + goto out_dma_mapping; + } + + msg = (struct ssd_log_op_msg *)ssd_get_dmsg(dev); + + if (dev->protocol_info.ver < SSD_PROTOCOL_V3) { + lmsg = (struct ssd_log_msg *)msg; + lmsg->fun = SSD_FUNC_READ_LOG; + lmsg->ctrl_idx = ctrl_idx; + lmsg->buf = buf_dma; + } else { + msg->fun = SSD_FUNC_READ_LOG; + msg->ctrl_idx = ctrl_idx; + msg->buf = buf_dma; + } + + ret = ssd_do_request(dev, READ, msg, nr_log); + ssd_put_dmsg(msg); + + pci_unmap_single(dev->pdev, buf_dma, length, PCI_DMA_FROMDEVICE); + +out_dma_mapping: + return ret; +} + +#define SSD_LOG_PRINT_BUF_SZ 256 +static int ssd_parse_log(struct ssd_device *dev, struct ssd_log *log, int print) +{ + struct ssd_log_desc *log_desc = ssd_log_desc; + struct ssd_log_entry *le; + char *sn = NULL; + char print_buf[SSD_LOG_PRINT_BUF_SZ]; + int print_len; + + le = &log->le; + + /* find desc */ + while (log_desc->event != SSD_UNKNOWN_EVENT) { + if (log_desc->event == le->event) { + break; + } + log_desc++; + } + + if (!print) { + goto out; + } + + if (log_desc->level < log_level) { + goto out; + } + + /* parse */ + if (dev->protocol_info.ver < SSD_PROTOCOL_V3_2) { + sn = dev->label.sn; + } else { + sn = dev->labelv3.barcode; + } + + print_len = snprintf(print_buf, SSD_LOG_PRINT_BUF_SZ, "%s (%s): <%#x>", dev->name, sn, le->event); + + if (log->ctrl_idx != SSD_LOG_SW_IDX) { + print_len += snprintf((print_buf + print_len), (SSD_LOG_PRINT_BUF_SZ - print_len), " controller %d", log->ctrl_idx); + } + + switch (log_desc->data) { + case SSD_LOG_DATA_NONE: + break; + case SSD_LOG_DATA_LOC: + if (dev->protocol_info.ver < SSD_PROTOCOL_V3_2) { + print_len += snprintf((print_buf + print_len), (SSD_LOG_PRINT_BUF_SZ - print_len), " flash %d", le->data.loc.flash); + if (log_desc->sblock) { + print_len += snprintf((print_buf + print_len), (SSD_LOG_PRINT_BUF_SZ - print_len), " block %d", le->data.loc.block); + } + if (log_desc->spage) { + print_len += snprintf((print_buf + print_len), (SSD_LOG_PRINT_BUF_SZ - print_len), " page %d", le->data.loc.page); + } + } else { + print_len += snprintf((print_buf + print_len), (SSD_LOG_PRINT_BUF_SZ - print_len), " flash %d", le->data.loc1.flash); + if (log_desc->sblock) { + print_len += snprintf((print_buf + print_len), (SSD_LOG_PRINT_BUF_SZ - print_len), " block %d", le->data.loc1.block); + } + if (log_desc->spage) { + print_len += snprintf((print_buf + print_len), (SSD_LOG_PRINT_BUF_SZ - print_len), " page %d", le->data.loc1.page); + } + } + break; + case SSD_LOG_DATA_HEX: + print_len += snprintf((print_buf + print_len), (SSD_LOG_PRINT_BUF_SZ - print_len), " info %#x", le->data.val); + break; + default: + break; + } + /*print_len += */snprintf((print_buf + print_len), (SSD_LOG_PRINT_BUF_SZ - print_len), ": %s", log_desc->desc); + + switch (log_desc->level) { + case SSD_LOG_LEVEL_INFO: + hio_info("%s\n", print_buf); + break; + case SSD_LOG_LEVEL_NOTICE: + hio_note("%s\n", print_buf); + break; + case SSD_LOG_LEVEL_WARNING: + hio_warn("%s\n", print_buf); + break; + case SSD_LOG_LEVEL_ERR: + hio_err("%s\n", print_buf); + //printk(KERN_ERR MODULE_NAME": some exception occurred, please check the data or refer to FAQ."); + break; + default: + hio_warn("%s\n", print_buf); + break; + } + +out: + return log_desc->level; +} + +static int ssd_bm_get_sfstatus(struct ssd_device *dev, uint16_t *status); +static int ssd_switch_wmode(struct ssd_device *dev, int wmode); + + +static int ssd_handle_event(struct ssd_device *dev, uint16_t event, int level) +{ + int ret = 0; + + switch (event) { + case SSD_LOG_OVER_TEMP: { +#ifdef SSD_OT_PROTECT + if (!test_and_set_bit(SSD_HWMON_TEMP(SSD_TEMP_CTRL), &dev->hwmon)) { + if (dev->protocol_info.ver > SSD_PROTOCOL_V3 && dev->protocol_info.ver < SSD_PROTOCOL_V3_2_2) { + hio_warn("%s: Over temperature, please check the fans.\n", dev->name); + dev->ot_delay = SSD_OT_DELAY; + } + } +#endif + break; + } + + case SSD_LOG_NORMAL_TEMP: { +#ifdef SSD_OT_PROTECT + /* need to check all controller's temperature */ + ssd_check_temperature(dev, SSD_OT_TEMP_HYST); +#endif + break; + } + + case SSD_LOG_BATTERY_FAULT: { + uint16_t sfstatus; + + if (dev->protocol_info.ver < SSD_PROTOCOL_V3_2) { + if (!ssd_bm_get_sfstatus(dev, &sfstatus)) { + ssd_gen_swlog(dev, SSD_LOG_BM_SFSTATUS, sfstatus); + } + } + + if (!test_and_set_bit(SSD_HWMON_PL_CAP(SSD_PL_CAP), &dev->hwmon)) { + ssd_switch_wmode(dev, dev->user_wmode); + } + break; + } + + case SSD_LOG_BATTERY_OK: { + if (test_and_clear_bit(SSD_HWMON_PL_CAP(SSD_PL_CAP), &dev->hwmon)) { + ssd_switch_wmode(dev, dev->user_wmode); + } + break; + } + + case SSD_LOG_BOARD_VOLT_FAULT: { + ssd_mon_boardvolt(dev); + break; + } + + case SSD_LOG_CLEAR_LOG: { + /* update smart */ + memset(&dev->smart.log_info, 0, sizeof(struct ssd_log_info)); + break; + } + + case SSD_LOG_CAP_VOLT_FAULT: + case SSD_LOG_CAP_LEARN_FAULT: + case SSD_LOG_CAP_SHORT_CIRCUIT: { + if (!test_and_set_bit(SSD_HWMON_PL_CAP(SSD_PL_CAP), &dev->hwmon)) { + ssd_switch_wmode(dev, dev->user_wmode); + } + break; + } + + default: + break; + } + + /* ssd event call */ + if (dev->event_call) { + dev->event_call(dev->gd, event, level); + + /* FIXME */ + if (SSD_LOG_CAP_VOLT_FAULT == event || SSD_LOG_CAP_LEARN_FAULT == event || SSD_LOG_CAP_SHORT_CIRCUIT == event) { + dev->event_call(dev->gd, SSD_LOG_BATTERY_FAULT, level); + } + } + + return ret; +} + +static int ssd_save_log(struct ssd_device *dev, struct ssd_log *log) +{ + uint32_t off, size; + void *internal_log; + int ret = 0; + + mutex_lock(&dev->internal_log_mutex); + + size = sizeof(struct ssd_log); + off = dev->internal_log.nr_log * size; + + if (off == dev->rom_info.log_sz) { + if (dev->internal_log.nr_log == dev->smart.log_info.nr_log) { + hio_warn("%s: internal log is full\n", dev->name); + } + goto out; + } + + internal_log = dev->internal_log.log + off; + memcpy(internal_log, log, size); + + if (dev->protocol_info.ver > SSD_PROTOCOL_V3) { + off += dev->rom_info.log_base; + + ret = ssd_spi_write(dev, log, off, size); + if (ret) { + goto out; + } + } + + dev->internal_log.nr_log++; + +out: + mutex_unlock(&dev->internal_log_mutex); + return ret; +} + +/** CRC table for the CRC-16. The poly is 0x8005 (x^16 + x^15 + x^2 + 1) */ +static unsigned short const crc16_table[256] = { + 0x0000, 0xC0C1, 0xC181, 0x0140, 0xC301, 0x03C0, 0x0280, 0xC241, + 0xC601, 0x06C0, 0x0780, 0xC741, 0x0500, 0xC5C1, 0xC481, 0x0440, + 0xCC01, 0x0CC0, 0x0D80, 0xCD41, 0x0F00, 0xCFC1, 0xCE81, 0x0E40, + 0x0A00, 0xCAC1, 0xCB81, 0x0B40, 0xC901, 0x09C0, 0x0880, 0xC841, + 0xD801, 0x18C0, 0x1980, 0xD941, 0x1B00, 0xDBC1, 0xDA81, 0x1A40, + 0x1E00, 0xDEC1, 0xDF81, 0x1F40, 0xDD01, 0x1DC0, 0x1C80, 0xDC41, + 0x1400, 0xD4C1, 0xD581, 0x1540, 0xD701, 0x17C0, 0x1680, 0xD641, + 0xD201, 0x12C0, 0x1380, 0xD341, 0x1100, 0xD1C1, 0xD081, 0x1040, + 0xF001, 0x30C0, 0x3180, 0xF141, 0x3300, 0xF3C1, 0xF281, 0x3240, + 0x3600, 0xF6C1, 0xF781, 0x3740, 0xF501, 0x35C0, 0x3480, 0xF441, + 0x3C00, 0xFCC1, 0xFD81, 0x3D40, 0xFF01, 0x3FC0, 0x3E80, 0xFE41, + 0xFA01, 0x3AC0, 0x3B80, 0xFB41, 0x3900, 0xF9C1, 0xF881, 0x3840, + 0x2800, 0xE8C1, 0xE981, 0x2940, 0xEB01, 0x2BC0, 0x2A80, 0xEA41, + 0xEE01, 0x2EC0, 0x2F80, 0xEF41, 0x2D00, 0xEDC1, 0xEC81, 0x2C40, + 0xE401, 0x24C0, 0x2580, 0xE541, 0x2700, 0xE7C1, 0xE681, 0x2640, + 0x2200, 0xE2C1, 0xE381, 0x2340, 0xE101, 0x21C0, 0x2080, 0xE041, + 0xA001, 0x60C0, 0x6180, 0xA141, 0x6300, 0xA3C1, 0xA281, 0x6240, + 0x6600, 0xA6C1, 0xA781, 0x6740, 0xA501, 0x65C0, 0x6480, 0xA441, + 0x6C00, 0xACC1, 0xAD81, 0x6D40, 0xAF01, 0x6FC0, 0x6E80, 0xAE41, + 0xAA01, 0x6AC0, 0x6B80, 0xAB41, 0x6900, 0xA9C1, 0xA881, 0x6840, + 0x7800, 0xB8C1, 0xB981, 0x7940, 0xBB01, 0x7BC0, 0x7A80, 0xBA41, + 0xBE01, 0x7EC0, 0x7F80, 0xBF41, 0x7D00, 0xBDC1, 0xBC81, 0x7C40, + 0xB401, 0x74C0, 0x7580, 0xB541, 0x7700, 0xB7C1, 0xB681, 0x7640, + 0x7200, 0xB2C1, 0xB381, 0x7340, 0xB101, 0x71C0, 0x7080, 0xB041, + 0x5000, 0x90C1, 0x9181, 0x5140, 0x9301, 0x53C0, 0x5280, 0x9241, + 0x9601, 0x56C0, 0x5780, 0x9741, 0x5500, 0x95C1, 0x9481, 0x5440, + 0x9C01, 0x5CC0, 0x5D80, 0x9D41, 0x5F00, 0x9FC1, 0x9E81, 0x5E40, + 0x5A00, 0x9AC1, 0x9B81, 0x5B40, 0x9901, 0x59C0, 0x5880, 0x9841, + 0x8801, 0x48C0, 0x4980, 0x8941, 0x4B00, 0x8BC1, 0x8A81, 0x4A40, + 0x4E00, 0x8EC1, 0x8F81, 0x4F40, 0x8D01, 0x4DC0, 0x4C80, 0x8C41, + 0x4400, 0x84C1, 0x8581, 0x4540, 0x8701, 0x47C0, 0x4680, 0x8641, + 0x8201, 0x42C0, 0x4380, 0x8341, 0x4100, 0x81C1, 0x8081, 0x4040 +}; + +static unsigned short crc16_byte(unsigned short crc, const unsigned char data) +{ + return (crc >> 8) ^ crc16_table[(crc ^ data) & 0xff]; +} +/** + * crc16 - compute the CRC-16 for the data buffer + * @crc: previous CRC value + * @buffer: data pointer + * @len: number of bytes in the buffer + * + * Returns the updated CRC value. + */ +static unsigned short crc16(unsigned short crc, unsigned char const *buffer, int len) +{ + while (len--) + crc = crc16_byte(crc, *buffer++); + return crc; +} + +static int ssd_save_swlog(struct ssd_device *dev, uint16_t event, uint32_t data) +{ + struct ssd_log log; + int level; + int ret = 0; + + if (unlikely(mode != SSD_DRV_MODE_STANDARD)) + return 0; + + memset(&log, 0, sizeof(struct ssd_log)); + + log.ctrl_idx = SSD_LOG_SW_IDX; + log.time = ktime_get_real_seconds(); + log.le.event = event; + log.le.data.val = data; + + log.le.mod = SSD_DIF_WITH_OLD_LOG; + log.le.idx = crc16(0,(const unsigned char *)&log,14); + level = ssd_parse_log(dev, &log, 0); + if (level >= SSD_LOG_LEVEL) { + ret = ssd_save_log(dev, &log); + } + + /* set alarm */ + if (SSD_LOG_LEVEL_ERR == level) { + ssd_set_alarm(dev); + } + + /* update smart */ + dev->smart.log_info.nr_log++; + dev->smart.log_info.stat[level]++; + + /* handle event */ + ssd_handle_event(dev, event, level); + + return ret; +} + +static int ssd_gen_swlog(struct ssd_device *dev, uint16_t event, uint32_t data) +{ + struct ssd_log_entry le; + int ret; + + if (unlikely(mode != SSD_DRV_MODE_STANDARD)) + return 0; + + /* slave port ? */ + if (dev->slave) { + return 0; + } + + memset(&le, 0, sizeof(struct ssd_log_entry)); + le.event = event; + le.data.val = data; + + ret = sfifo_put(&dev->log_fifo, &le); + if (ret) { + return ret; + } + + if (test_bit(SSD_INIT_WORKQ, &dev->state)) { + queue_work(dev->workq, &dev->log_work); + } + + return 0; +} + +static int ssd_do_swlog(struct ssd_device *dev) +{ + struct ssd_log_entry le; + int ret = 0; + + memset(&le, 0, sizeof(struct ssd_log_entry)); + while (!sfifo_get(&dev->log_fifo, &le)) { + ret = ssd_save_swlog(dev, le.event, le.data.val); + if (ret) { + break; + } + } + + return ret; +} + +static int __ssd_clear_log(struct ssd_device *dev) +{ + uint32_t off, length; + int ret; + + if (dev->protocol_info.ver <= SSD_PROTOCOL_V3) { + return 0; + } + + if (dev->internal_log.nr_log == 0) { + return 0; + } + + mutex_lock(&dev->internal_log_mutex); + + off = dev->rom_info.log_base; + length = dev->rom_info.log_sz; + + ret = ssd_spi_erase(dev, off, length); + if (ret) { + hio_warn("%s: log erase: failed\n", dev->name); + goto out; + } + + dev->internal_log.nr_log = 0; + +out: + mutex_unlock(&dev->internal_log_mutex); + return ret; +} + +static int ssd_clear_log(struct ssd_device *dev) +{ + int ret; + + ret = __ssd_clear_log(dev); + if(!ret) { + ssd_gen_swlog(dev, SSD_LOG_CLEAR_LOG, 0); + } + + return ret; +} + +static int ssd_do_log(struct ssd_device *dev, int ctrl_idx, void *buf) +{ + struct ssd_log_entry *le; + struct ssd_log log; + int nr_log = 0; + int level; + int ret = 0; + + ret = ssd_read_log(dev, ctrl_idx, buf, &nr_log); + if (ret) { + return ret; + } + + log.time = ktime_get_real_seconds(); + log.ctrl_idx = ctrl_idx; + + le = (ssd_log_entry_t *)buf; + while (nr_log > 0) { + memcpy(&log.le, le, sizeof(struct ssd_log_entry)); + + log.le.mod = SSD_DIF_WITH_OLD_LOG; + log.le.idx = crc16(0,(const unsigned char *)&log,14); + level = ssd_parse_log(dev, &log, 1); + if (level >= SSD_LOG_LEVEL) { + ssd_save_log(dev, &log); + } + + /* set alarm */ + if (SSD_LOG_LEVEL_ERR == level) { + ssd_set_alarm(dev); + } + + dev->smart.log_info.nr_log++; + if (SSD_LOG_SEU_FAULT != le->event && SSD_LOG_SEU_FAULT1 != le->event) { + dev->smart.log_info.stat[level]++; + } else { + /* SEU fault */ + + /* log to the volatile log info */ + dev->log_info.nr_log++; + dev->log_info.stat[level]++; + + /* do something */ + dev->reload_fw = 1; + ssd_reg32_write(dev->ctrlp + SSD_RELOAD_FW_REG, SSD_RELOAD_FLAG); + if (le->event != SSD_LOG_SEU_FAULT1) { + dev->has_non_0x98_reg_access = 1; + } + + /*dev->readonly = 1; + set_disk_ro(dev->gd, 1); + hio_warn("%s: switched to read-only mode.\n", dev->name);*/ + } + + /* handle event */ + ssd_handle_event(dev, le->event, level); + + le++; + nr_log--; + } + + return 0; +} + +#if (LINUX_VERSION_CODE < KERNEL_VERSION(2,6,20)) +static void ssd_log_worker(void *data) +{ + struct ssd_device *dev = (struct ssd_device *)data; +#else +static void ssd_log_worker(struct work_struct *work) +{ + struct ssd_device *dev = container_of(work, struct ssd_device, log_work); +#endif + int i; + int ret; + + if (!test_bit(SSD_LOG_ERR, &dev->state) && test_bit(SSD_ONLINE, &dev->state)) { + /* alloc log buf */ + if (!dev->log_buf) { + dev->log_buf = kmalloc(dev->hw_info.log_sz, GFP_KERNEL); + if (!dev->log_buf) { + hio_warn("%s: ssd_log_worker: no mem\n", dev->name); + return; + } + } + + /* get log */ + if (test_and_clear_bit(SSD_LOG_HW, &dev->state)) { + for (i=0; ihw_info.nr_ctrl; i++) { + ret = ssd_do_log(dev, i, dev->log_buf); + if (ret) { + (void)test_and_set_bit(SSD_LOG_ERR, &dev->state); + hio_warn("%s: do log fail\n", dev->name); + } + } + } + } + + ret = ssd_do_swlog(dev); + if (ret) { + hio_warn("%s: do swlog fail\n", dev->name); + } +} + +static void ssd_cleanup_log(struct ssd_device *dev) +{ + if (dev->log_buf) { + kfree(dev->log_buf); + dev->log_buf = NULL; + } + + sfifo_free(&dev->log_fifo); + + if (dev->internal_log.log) { + vfree(dev->internal_log.log); + dev->internal_log.nr_log = 0; + dev->internal_log.log = NULL; + } +} + +static int ssd_init_log(struct ssd_device *dev) +{ + struct ssd_log *log; + uint32_t off, size; + uint32_t len = 0; + int ret = 0; + + mutex_init(&dev->internal_log_mutex); + +#if (LINUX_VERSION_CODE < KERNEL_VERSION(2,6,20)) + INIT_WORK(&dev->log_work, ssd_log_worker, dev); +#else + INIT_WORK(&dev->log_work, ssd_log_worker); +#endif + + off = dev->rom_info.log_base; + size = dev->rom_info.log_sz; + + dev->internal_log.nr_log = 0; + dev->internal_log.log = vmalloc(size); + if (!dev->internal_log.log) { + ret = -ENOMEM; + goto out_alloc_log; + } + + ret = sfifo_alloc(&dev->log_fifo, SSD_LOG_FIFO_SZ, sizeof(struct ssd_log_entry)); + if (ret < 0) { + goto out_alloc_log_fifo; + } + + if (dev->protocol_info.ver <= SSD_PROTOCOL_V3) { + return 0; + } + + log = (struct ssd_log *)dev->internal_log.log; + while (len < size) { + ret = ssd_spi_read(dev, log, off, sizeof(struct ssd_log)); + if (ret) { + goto out_read_log; + } + + if (log->ctrl_idx == 0xff) { + break; + } + + if (log->le.event == SSD_LOG_POWER_ON) { + if (dev->internal_log.nr_log > dev->last_poweron_id) { + dev->last_poweron_id = dev->internal_log.nr_log; + } + } + + dev->internal_log.nr_log++; + log++; + len += sizeof(struct ssd_log); + off += sizeof(struct ssd_log); + } + + return 0; + +out_read_log: + sfifo_free(&dev->log_fifo); +out_alloc_log_fifo: + vfree(dev->internal_log.log); + dev->internal_log.log = NULL; + dev->internal_log.nr_log = 0; +out_alloc_log: + /* skip error if not in standard mode */ + if (mode != SSD_DRV_MODE_STANDARD) { + ret = 0; + } + return ret; +} + +/* work queue */ +static void ssd_stop_workq(struct ssd_device *dev) +{ + test_and_clear_bit(SSD_INIT_WORKQ, &dev->state); + flush_workqueue(dev->workq); +} + +static void ssd_start_workq(struct ssd_device *dev) +{ + (void)test_and_set_bit(SSD_INIT_WORKQ, &dev->state); + + /* log ? */ + queue_work(dev->workq, &dev->log_work); +} + +static void ssd_cleanup_workq(struct ssd_device *dev) +{ + flush_workqueue(dev->workq); + destroy_workqueue(dev->workq); + dev->workq = NULL; +} + +static int ssd_init_workq(struct ssd_device *dev) +{ + int ret = 0; + + dev->workq = create_singlethread_workqueue(dev->name); + if (!dev->workq) { + ret = -ESRCH; + goto out; + } + +out: + return ret; +} + +/* rom */ +static int ssd_init_rom_info(struct ssd_device *dev) +{ + uint32_t val; + + mutex_init(&dev->spi_mutex); + mutex_init(&dev->i2c_mutex); + + if (dev->protocol_info.ver < SSD_PROTOCOL_V3) { + /* fix bug: read data to clear status */ + (void)ssd_reg32_read(dev->ctrlp + SSD_SPI_REG_RDATA); + + dev->rom_info.size = SSD_ROM_SIZE; + dev->rom_info.block_size = SSD_ROM_BLK_SIZE; + dev->rom_info.page_size = SSD_ROM_PAGE_SIZE; + + dev->rom_info.bridge_fw_base = SSD_ROM_BRIDGE_FW_BASE; + dev->rom_info.bridge_fw_sz = SSD_ROM_BRIDGE_FW_SIZE; + dev->rom_info.nr_bridge_fw = SSD_ROM_NR_BRIDGE_FW; + + dev->rom_info.ctrl_fw_base = SSD_ROM_CTRL_FW_BASE; + dev->rom_info.ctrl_fw_sz = SSD_ROM_CTRL_FW_SIZE; + dev->rom_info.nr_ctrl_fw = SSD_ROM_NR_CTRL_FW; + + dev->rom_info.log_sz = SSD_ROM_LOG_SZ; + + dev->rom_info.vp_base = SSD_ROM_VP_BASE; + dev->rom_info.label_base = SSD_ROM_LABEL_BASE; + } else if (dev->protocol_info.ver < SSD_PROTOCOL_V3_2) { + val = ssd_reg32_read(dev->ctrlp + SSD_ROM_INFO_REG); + dev->rom_info.size = 0x100000 * (1U << (val & 0xFF)); + dev->rom_info.block_size = 0x10000 * (1U << ((val>>8) & 0xFF)); + dev->rom_info.page_size = (val>>16) & 0xFFFF; + + val = ssd_reg32_read(dev->ctrlp + SSD_ROM_BRIDGE_FW_INFO_REG); + dev->rom_info.bridge_fw_base = dev->rom_info.block_size * (val & 0xFFFF); + dev->rom_info.bridge_fw_sz = dev->rom_info.block_size * ((val>>16) & 0x3FFF); + dev->rom_info.nr_bridge_fw = ((val >> 30) & 0x3) + 1; + + val = ssd_reg32_read(dev->ctrlp + SSD_ROM_CTRL_FW_INFO_REG); + dev->rom_info.ctrl_fw_base = dev->rom_info.block_size * (val & 0xFFFF); + dev->rom_info.ctrl_fw_sz = dev->rom_info.block_size * ((val>>16) & 0x3FFF); + dev->rom_info.nr_ctrl_fw = ((val >> 30) & 0x3) + 1; + + dev->rom_info.bm_fw_base = dev->rom_info.ctrl_fw_base + (dev->rom_info.nr_ctrl_fw * dev->rom_info.ctrl_fw_sz); + dev->rom_info.bm_fw_sz = SSD_PV3_ROM_BM_FW_SZ; + dev->rom_info.nr_bm_fw = SSD_PV3_ROM_NR_BM_FW; + + dev->rom_info.log_base = dev->rom_info.bm_fw_base + (dev->rom_info.nr_bm_fw * dev->rom_info.bm_fw_sz); + dev->rom_info.log_sz = SSD_ROM_LOG_SZ; + + dev->rom_info.smart_base = dev->rom_info.log_base + dev->rom_info.log_sz; + dev->rom_info.smart_sz = SSD_PV3_ROM_SMART_SZ; + dev->rom_info.nr_smart = SSD_PV3_ROM_NR_SMART; + + val = ssd_reg32_read(dev->ctrlp + SSD_ROM_VP_INFO_REG); + dev->rom_info.vp_base = dev->rom_info.block_size * val; + dev->rom_info.label_base = dev->rom_info.vp_base + dev->rom_info.block_size; + if (dev->rom_info.label_base >= dev->rom_info.size) { + dev->rom_info.label_base = dev->rom_info.vp_base - dev->rom_info.block_size; + } + } else { + val = ssd_reg32_read(dev->ctrlp + SSD_ROM_INFO_REG); + dev->rom_info.size = 0x100000 * (1U << (val & 0xFF)); + dev->rom_info.block_size = 0x10000 * (1U << ((val>>8) & 0xFF)); + dev->rom_info.page_size = (val>>16) & 0xFFFF; + + val = ssd_reg32_read(dev->ctrlp + SSD_ROM_BRIDGE_FW_INFO_REG); + dev->rom_info.bridge_fw_base = dev->rom_info.block_size * (val & 0xFFFF); + dev->rom_info.bridge_fw_sz = dev->rom_info.block_size * ((val>>16) & 0x3FFF); + dev->rom_info.nr_bridge_fw = ((val >> 30) & 0x3) + 1; + + val = ssd_reg32_read(dev->ctrlp + SSD_ROM_CTRL_FW_INFO_REG); + dev->rom_info.ctrl_fw_base = dev->rom_info.block_size * (val & 0xFFFF); + dev->rom_info.ctrl_fw_sz = dev->rom_info.block_size * ((val>>16) & 0x3FFF); + dev->rom_info.nr_ctrl_fw = ((val >> 30) & 0x3) + 1; + + val = ssd_reg32_read(dev->ctrlp + SSD_ROM_VP_INFO_REG); + dev->rom_info.vp_base = dev->rom_info.block_size * val; + dev->rom_info.label_base = dev->rom_info.vp_base - SSD_PV3_2_ROM_SEC_SZ; + + dev->rom_info.nr_smart = SSD_PV3_ROM_NR_SMART; + dev->rom_info.smart_sz = SSD_PV3_2_ROM_SEC_SZ; + dev->rom_info.smart_base = dev->rom_info.label_base - (dev->rom_info.smart_sz * dev->rom_info.nr_smart); + if (dev->rom_info.smart_sz > dev->rom_info.block_size) { + dev->rom_info.smart_sz = dev->rom_info.block_size; + } + + dev->rom_info.log_sz = SSD_PV3_2_ROM_LOG_SZ; + dev->rom_info.log_base = dev->rom_info.smart_base - dev->rom_info.log_sz; + } + + return ssd_init_spi(dev); +} + +/* smart */ +static int ssd_update_smart(struct ssd_device *dev, struct ssd_smart *smart) +{ + uint64_t cur_time, run_time; +#if (LINUX_VERSION_CODE > KERNEL_VERSION(2,6,27)) + struct hd_struct *part; + int cpu; +#endif + int i, j; + int ret = 0; + + if (!test_bit(SSD_INIT_BD, &dev->state)) { + return 0; + } + + cur_time = (uint64_t)ktime_get_real_seconds(); + if (cur_time < dev->uptime) { + run_time = 0; + } else { + run_time = cur_time - dev->uptime; + } + + /* avoid frequently update */ + if (run_time >= 60) { + ret = 1; + } + + /* io stat */ + smart->io_stat.run_time += run_time; + +#if (LINUX_VERSION_CODE > KERNEL_VERSION(2,6,27)) +#if (LINUX_VERSION_CODE < KERNEL_VERSION(5,0,0)) + cpu = part_stat_lock(); + part = &dev->gd->part0; +#if (LINUX_VERSION_CODE >= KERNEL_VERSION(4,14,0)) + part_round_stats(dev->rq, cpu, part); +#else + part_round_stats(cpu, part); +#endif + part_stat_unlock(); +#endif + + smart->io_stat.nr_read += part_stat_read(part, ios[READ]); + smart->io_stat.nr_write += part_stat_read(part, ios[WRITE]); + smart->io_stat.rsectors += part_stat_read(part, sectors[READ]); + smart->io_stat.wsectors += part_stat_read(part, sectors[WRITE]); +#elif (LINUX_VERSION_CODE > KERNEL_VERSION(2,6,14)) + preempt_disable(); + disk_round_stats(dev->gd); + preempt_enable(); + + smart->io_stat.nr_read += disk_stat_read(dev->gd, ios[READ]); + smart->io_stat.nr_write += disk_stat_read(dev->gd, ios[WRITE]); + smart->io_stat.rsectors += disk_stat_read(dev->gd, sectors[READ]); + smart->io_stat.wsectors += disk_stat_read(dev->gd, sectors[WRITE]); +#else + preempt_disable(); + disk_round_stats(dev->gd); + preempt_enable(); + + smart->io_stat.nr_read += disk_stat_read(dev->gd, reads); + smart->io_stat.nr_write += disk_stat_read(dev->gd, writes); + smart->io_stat.rsectors += disk_stat_read(dev->gd, read_sectors); + smart->io_stat.wsectors += disk_stat_read(dev->gd, write_sectors); +#endif + + smart->io_stat.nr_to += atomic_read(&dev->tocnt); + + for (i=0; inr_queue; i++) { + smart->io_stat.nr_rwerr += dev->queue[i].io_stat.nr_rwerr; + smart->io_stat.nr_ioerr += dev->queue[i].io_stat.nr_ioerr; + } + + for (i=0; inr_queue; i++) { + for (j=0; jecc_info.bitflip[j] += dev->queue[i].ecc_info.bitflip[j]; + } + } + + //dev->uptime = tv.tv_sec; + + return ret; +} + +static int __ssd_clear_smart(struct ssd_device *dev) +{ + uint64_t sversion; + uint32_t off, length; + int i; + int ret; + + if (dev->protocol_info.ver <= SSD_PROTOCOL_V3) { + return 0; + } + + /* clear smart */ + off = dev->rom_info.smart_base; + length = dev->rom_info.smart_sz * dev->rom_info.nr_smart; + + ret = ssd_spi_erase(dev, off, length); + if (ret) { + hio_warn("%s: info erase: failed\n", dev->name); + goto out; + } + + sversion = dev->smart.version; + + memset(&dev->smart, 0, sizeof(struct ssd_smart)); + dev->smart.version = sversion + 1; + dev->smart.magic = SSD_SMART_MAGIC; + + /* clear all tmp acc */ + for (i=0; inr_queue; i++) { + memset(&(dev->queue[i].io_stat), 0, sizeof(struct ssd_io_stat)); + memset(&(dev->queue[i].ecc_info), 0, sizeof(struct ssd_ecc_info)); + } + + atomic_set(&dev->tocnt, 0); + + /* clear tmp log info */ + memset(&dev->log_info, 0, sizeof(struct ssd_log_info)); + + dev->uptime = (uint64_t)ktime_get_real_seconds(); + + /* clear alarm ? */ + //ssd_clear_alarm(dev); +out: + return ret; +} + +static int __ssd_clear_warning(struct ssd_device *dev) +{ + uint32_t off, size; + int i, ret = 0; + + if (dev->protocol_info.ver <= SSD_PROTOCOL_V3) { + return 0; + } + + /* clear log_info warning */ + memset(&dev->smart.log_info, 0, sizeof(dev->smart.log_info)); + + /* clear io_stat warning */ + dev->smart.io_stat.nr_to = 0; + dev->smart.io_stat.nr_rwerr = 0; + dev->smart.io_stat.nr_ioerr = 0; + + /* clear ecc_info warning */ + memset(&dev->smart.ecc_info, 0, sizeof(dev->smart.ecc_info)); + + /* clear queued warnings */ + for (i=0; inr_queue; i++) { + /* queued io_stat warning */ + dev->queue[i].io_stat.nr_to = 0; + dev->queue[i].io_stat.nr_rwerr = 0; + dev->queue[i].io_stat.nr_ioerr = 0; + + /* queued ecc_info warning */ + memset(&(dev->queue[i].ecc_info), 0, sizeof(dev->queue[i].ecc_info)); + } + + /* write smart back to nor */ + for (i = 0; i < dev->rom_info.nr_smart; i++) { + off = dev->rom_info.smart_base + (dev->rom_info.smart_sz * i); + size = dev->rom_info.smart_sz; + + ret = ssd_spi_erase(dev, off, size); + if (ret) { + hio_warn("%s: warning erase: failed with code 1\n", dev->name); + goto out; + } + + size = sizeof(struct ssd_smart); + + ret = ssd_spi_write(dev, &dev->smart, off, size); + if (ret) { + hio_warn("%s: warning erase: failed with code 2\n", dev->name); + goto out; + } + } + + dev->smart.version++; + + /* clear cmd timeout warning */ + atomic_set(&dev->tocnt, 0); + + /* clear tmp log info */ + memset(&dev->log_info, 0, sizeof(dev->log_info)); + +out: + return ret; +} + +static int ssd_clear_smart(struct ssd_device *dev) +{ + int ret; + + ret = __ssd_clear_smart(dev); + if(!ret) { + ssd_gen_swlog(dev, SSD_LOG_CLEAR_SMART, 0); + } + + return ret; +} + +static int ssd_clear_warning(struct ssd_device *dev) +{ + int ret; + + ret = __ssd_clear_warning(dev); + if(!ret) { + ssd_gen_swlog(dev, SSD_LOG_CLEAR_WARNING, 0); + } + + return ret; +} + +static int ssd_save_smart(struct ssd_device *dev) +{ + uint32_t off, size; + int i; + int ret = 0; + + if (unlikely(mode != SSD_DRV_MODE_STANDARD)) + return 0; + + if (dev->protocol_info.ver <= SSD_PROTOCOL_V3) { + return 0; + } + + if (!ssd_update_smart(dev, &dev->smart)) { + return 0; + } + + dev->smart.version++; + + for (i=0; irom_info.nr_smart; i++) { + off = dev->rom_info.smart_base + (dev->rom_info.smart_sz * i); + size = dev->rom_info.smart_sz; + + ret = ssd_spi_erase(dev, off, size); + if (ret) { + hio_warn("%s: info erase failed\n", dev->name); + goto out; + } + + size = sizeof(struct ssd_smart); + + ret = ssd_spi_write(dev, &dev->smart, off, size); + if (ret) { + hio_warn("%s: info write failed\n", dev->name); + goto out; + } + + //xx + } + +out: + return ret; +} + +static int ssd_init_smart(struct ssd_device *dev) +{ + struct ssd_smart *smart; + uint32_t off, size, val; + int i; + int ret = 0; + int update_smart = 0; + + dev->uptime = (uint64_t)ktime_get_real_seconds(); + + if (dev->protocol_info.ver <= SSD_PROTOCOL_V3) { + return 0; + } + + smart = kmalloc(sizeof(struct ssd_smart) * SSD_ROM_NR_SMART_MAX, GFP_KERNEL); + if (!smart) { + ret = -ENOMEM; + goto out_nomem; + } + + memset(&dev->smart, 0, sizeof(struct ssd_smart)); + + /* read smart */ + for (i=0; irom_info.nr_smart; i++) { + memset(&smart[i], 0, sizeof(struct ssd_smart)); + + off = dev->rom_info.smart_base + (dev->rom_info.smart_sz * i); + size = sizeof(struct ssd_smart); + + ret = ssd_spi_read(dev, &smart[i], off, size); + if (ret) { + hio_warn("%s: info read failed\n", dev->name); + goto out; + } + + if (smart[i].magic != SSD_SMART_MAGIC) { + smart[i].magic = 0; + smart[i].version = 0; + continue; + } + + if (smart[i].version > dev->smart.version) { + memcpy(&dev->smart, &smart[i], sizeof(struct ssd_smart)); + } + } + + if (dev->smart.magic != SSD_SMART_MAGIC) { + /* first time power up */ + dev->smart.magic = SSD_SMART_MAGIC; + dev->smart.version = 1; + } + + val = ssd_reg32_read(dev->ctrlp + SSD_INTR_INTERVAL_REG); + if (!val) { + dev->last_poweron_id = ~0; + ssd_gen_swlog(dev, SSD_LOG_POWER_ON, dev->hw_info.bridge_ver); + if (dev->smart.io_stat.nr_to) { + dev->smart.io_stat.nr_to = 0; + update_smart = 1; + } + } + + /* check log info */ + { + struct ssd_log_info log_info; + struct ssd_log *log = (struct ssd_log *)dev->internal_log.log; + + memset(&log_info, 0, sizeof(struct ssd_log_info)); + + while (log_info.nr_log < dev->internal_log.nr_log) { + int skip = 0; + + switch (log->le.event) { + /* skip the volatile log info */ + case SSD_LOG_SEU_FAULT: + case SSD_LOG_SEU_FAULT1: + skip = 1; + break; + case SSD_LOG_TIMEOUT: + skip = (dev->last_poweron_id >= log_info.nr_log); + break; + } + + if (!skip) { + log_info.stat[ssd_parse_log(dev, log, 0)]++; + } + + log_info.nr_log++; + log++; + } + + /* check */ + for (i=(SSD_LOG_NR_LEVEL-1); i>=0; i--) { + if (log_info.stat[i] != dev->smart.log_info.stat[i]) { + /* unclean */ + memcpy(&dev->smart.log_info, &log_info, sizeof(struct ssd_log_info)); + update_smart = 1; + break; + } + } + + if (update_smart) { + ++dev->smart.version; + } + } + + for (i=0; irom_info.nr_smart; i++) { + if (smart[i].magic == SSD_SMART_MAGIC && smart[i].version == dev->smart.version) { + continue; + } + + off = dev->rom_info.smart_base + (dev->rom_info.smart_sz * i); + size = dev->rom_info.smart_sz; + + ret = ssd_spi_erase(dev, off, size); + if (ret) { + hio_warn("%s: info erase failed\n", dev->name); + goto out; + } + + size = sizeof(struct ssd_smart); + ret = ssd_spi_write(dev, &dev->smart, off, size); + if (ret) { + hio_warn("%s: info write failed\n", dev->name); + goto out; + } + + //xx + } + + /* sync smart with alarm led */ + if (dev->smart.io_stat.nr_to || dev->smart.io_stat.nr_rwerr || dev->smart.log_info.stat[SSD_LOG_LEVEL_ERR]) { + hio_warn("%s: some fault found in the history info\n", dev->name); + ssd_set_alarm(dev); + } + +out: + kfree(smart); +out_nomem: + /* skip error if not in standard mode */ + if (mode != SSD_DRV_MODE_STANDARD) { + ret = 0; + } + return ret; +} + +/* bm */ +static int __ssd_bm_get_version(struct ssd_device *dev, uint16_t *ver) +{ + struct ssd_bm_manufacturer_data bm_md = {0}; + uint16_t sc_id = SSD_BM_SYSTEM_DATA_SUBCLASS_ID; + uint8_t cmd; + int ret = 0; + + if (!dev || !ver) { + return -EINVAL; + } + + mutex_lock(&dev->bm_mutex); + + cmd = SSD_BM_DATA_FLASH_SUBCLASS_ID; + ret = ssd_smbus_write_word(dev, SSD_BM_SLAVE_ADDRESS, cmd, (uint8_t *)&sc_id); + if (ret) { + goto out; + } + + cmd = SSD_BM_DATA_FLASH_SUBCLASS_ID_PAGE1; + ret = ssd_smbus_read_block(dev, SSD_BM_SLAVE_ADDRESS, cmd, sizeof(struct ssd_bm_manufacturer_data), (uint8_t *)&bm_md); + if (ret) { + goto out; + } + + if (bm_md.firmware_ver & 0xF000) { + ret = -EIO; + goto out; + } + + *ver = bm_md.firmware_ver; + +out: + mutex_unlock(&dev->bm_mutex); + return ret; +} + +static int ssd_bm_get_version(struct ssd_device *dev, uint16_t *ver) +{ + uint16_t tmp = 0; + int i = SSD_BM_RETRY_MAX; + int ret = 0; + + while (i-- > 0) { + ret = __ssd_bm_get_version(dev, &tmp); + if (!ret) { + break; + } + } + if (ret) { + return ret; + } + + *ver = tmp; + + return 0; +} + +static int __ssd_bm_nr_cap(struct ssd_device *dev, int *nr_cap) +{ + struct ssd_bm_configuration_registers bm_cr; + uint16_t sc_id = SSD_BM_CONFIGURATION_REGISTERS_ID; + uint8_t cmd; + int ret; + + mutex_lock(&dev->bm_mutex); + + cmd = SSD_BM_DATA_FLASH_SUBCLASS_ID; + ret = ssd_smbus_write_word(dev, SSD_BM_SLAVE_ADDRESS, cmd, (uint8_t *)&sc_id); + if (ret) { + goto out; + } + + cmd = SSD_BM_DATA_FLASH_SUBCLASS_ID_PAGE1; + ret = ssd_smbus_read_block(dev, SSD_BM_SLAVE_ADDRESS, cmd, sizeof(struct ssd_bm_configuration_registers), (uint8_t *)&bm_cr); + if (ret) { + goto out; + } + + if (bm_cr.operation_cfg.cc == 0 || bm_cr.operation_cfg.cc > 4) { + ret = -EIO; + goto out; + } + + *nr_cap = bm_cr.operation_cfg.cc + 1; + +out: + mutex_unlock(&dev->bm_mutex); + return ret; +} + +static int ssd_bm_nr_cap(struct ssd_device *dev, int *nr_cap) +{ + int tmp = 0; + int i = SSD_BM_RETRY_MAX; + int ret = 0; + + while (i-- > 0) { + ret = __ssd_bm_nr_cap(dev, &tmp); + if (!ret) { + break; + } + } + if (ret) { + return ret; + } + + *nr_cap = tmp; + + return 0; +} + +static int ssd_bm_enter_cap_learning(struct ssd_device *dev) +{ + uint16_t buf = SSD_BM_ENTER_CAP_LEARNING; + uint8_t cmd = SSD_BM_MANUFACTURERACCESS; + int ret; + + ret = ssd_smbus_write_word(dev, SSD_BM_SLAVE_ADDRESS, cmd, (uint8_t *)&buf); + if (ret) { + goto out; + } + +out: + return ret; +} + +static int ssd_bm_get_sfstatus(struct ssd_device *dev, uint16_t *status) +{ + uint16_t val = 0; + uint8_t cmd = SSD_BM_SAFETYSTATUS; + int ret; + + ret = ssd_smbus_read_word(dev, SSD_BM_SLAVE_ADDRESS, cmd, (uint8_t *)&val); + if (ret) { + goto out; + } + + *status = val; +out: + return ret; +} + +static int ssd_bm_get_opstatus(struct ssd_device *dev, uint16_t *status) +{ + uint16_t val = 0; + uint8_t cmd = SSD_BM_OPERATIONSTATUS; + int ret; + + ret = ssd_smbus_read_word(dev, SSD_BM_SLAVE_ADDRESS, cmd, (uint8_t *)&val); + if (ret) { + goto out; + } + + *status = val; +out: + return ret; +} + +static int ssd_get_bmstruct(struct ssd_device *dev, struct ssd_bm *bm_status_out) +{ + struct sbs_cmd *bm_sbs = ssd_bm_sbs; + struct ssd_bm bm_status; + uint8_t buf[2] = {0, }; + uint16_t val = 0; + uint16_t cval; + int ret = 0; + + memset(&bm_status, 0, sizeof(struct ssd_bm)); + + while (bm_sbs->desc != NULL) { + switch (bm_sbs->size) { + case SBS_SIZE_BYTE: + ret = ssd_smbus_read_byte(dev, SSD_BM_SLAVE_ADDRESS, bm_sbs->cmd, buf); + if (ret) { + //printf("Error: smbus read byte %#x\n", bm_sbs->cmd); + goto out; + } + val = buf[0]; + break; + case SBS_SIZE_WORD: + ret = ssd_smbus_read_word(dev, SSD_BM_SLAVE_ADDRESS, bm_sbs->cmd, (uint8_t *)&val); + if (ret) { + //printf("Error: smbus read word %#x\n", bm_sbs->cmd); + goto out; + } + //val = *(uint16_t *)buf; + break; + default: + ret = -1; + goto out; + break; + } + + switch (bm_sbs->unit) { + case SBS_UNIT_VALUE: + *(uint16_t *)bm_var(&bm_status, bm_sbs->off) = val & bm_sbs->mask; + break; + case SBS_UNIT_TEMPERATURE: + cval = (uint16_t)(val - 2731) / 10; + *(uint16_t *)bm_var(&bm_status, bm_sbs->off) = cval; + break; + case SBS_UNIT_VOLTAGE: + *(uint16_t *)bm_var(&bm_status, bm_sbs->off) = val; + break; + case SBS_UNIT_CURRENT: + *(uint16_t *)bm_var(&bm_status, bm_sbs->off) = val; + break; + case SBS_UNIT_ESR: + *(uint16_t *)bm_var(&bm_status, bm_sbs->off) = val; + break; + case SBS_UNIT_PERCENT: + *(uint16_t *)bm_var(&bm_status, bm_sbs->off) = val; + break; + case SBS_UNIT_CAPACITANCE: + *(uint16_t *)bm_var(&bm_status, bm_sbs->off) = val; + break; + default: + ret = -1; + goto out; + break; + } + + bm_sbs++; + } + + memcpy(bm_status_out, &bm_status, sizeof(struct ssd_bm)); + +out: + return ret; +} + +static int __ssd_bm_status(struct ssd_device *dev, int *status) +{ + struct ssd_bm bm_status = {0}; + int nr_cap = 0; + int i; + int ret = 0; + + ret = ssd_get_bmstruct(dev, &bm_status); + if (ret) { + goto out; + } + + /* capacitor voltage */ + ret = ssd_bm_nr_cap(dev, &nr_cap); + if (ret) { + goto out; + } + + for (i=0; i> 12) & 0x1)) { + *status = SSD_BMSTATUS_CHARGING; + }else{ + *status = SSD_BMSTATUS_OK; + } + +out: + return ret; +} + +static void ssd_set_flush_timeout(struct ssd_device *dev, int mode); + +#if (LINUX_VERSION_CODE < KERNEL_VERSION(2,6,20)) +static void ssd_bm_worker(void *data) +{ + struct ssd_device *dev = (struct ssd_device *)data; +#else +static void ssd_bm_worker(struct work_struct *work) +{ + struct ssd_device *dev = container_of(work, struct ssd_device, bm_work); +#endif + + uint16_t opstatus; + int ret = 0; + + if (mode != SSD_DRV_MODE_STANDARD) { + return; + } + + if (dev->protocol_info.ver < SSD_PROTOCOL_V3_1_1) { + return; + } + + if (dev->hw_info_ext.plp_type != SSD_PLP_SCAP) { + return; + } + + ret = ssd_bm_get_opstatus(dev, &opstatus); + if (ret) { + hio_warn("%s: get bm operationstatus failed\n", dev->name); + return; + } + + /* need cap learning ? */ + if (!(opstatus & 0xF0)) { + ret = ssd_bm_enter_cap_learning(dev); + if (ret) { + hio_warn("%s: enter capacitance learning failed\n", dev->name); + return; + } + } +} + +#if (LINUX_VERSION_CODE < KERNEL_VERSION(4,15,0)) +static void ssd_bm_routine_start(void *data) +#else +static void ssd_bm_routine_start(struct timer_list *t) +#endif +{ + struct ssd_device *dev; + +#if (LINUX_VERSION_CODE < KERNEL_VERSION(4,15,0)) + if (!data) { + return; + } + dev = data; +#else + dev = from_timer(dev, t, bm_timer); +#endif + + if (test_bit(SSD_INIT_WORKQ, &dev->state)) { + if (dev->protocol_info.ver < SSD_PROTOCOL_V3_2) { + queue_work(dev->workq, &dev->bm_work); + } else { + queue_work(dev->workq, &dev->capmon_work); + } + } +} + +/* CAP */ +static int ssd_do_cap_learn(struct ssd_device *dev, uint32_t *cap) +{ + uint32_t u1, u2, t; + uint16_t val = 0; + int wait = 0; + int ret = 0; + + if (dev->protocol_info.ver < SSD_PROTOCOL_V3_2) { + *cap = 0; + return 0; + } + + if (dev->hw_info_ext.form_factor == SSD_FORM_FACTOR_FHHL && dev->hw_info.pcb_ver < 'B') { + *cap = 0; + return 0; + } + + /* make sure the lm80 voltage value is updated */ + msleep(SSD_LM80_CONV_INTERVAL); + + /* check if full charged */ + wait = 0; + for (;;) { + ret = ssd_smbus_read_word(dev, SSD_SENSOR_LM80_SADDRESS, SSD_PL_CAP_U1, (uint8_t *)&val); + if (ret) { + if (!test_and_set_bit(SSD_HWMON_SENSOR(SSD_SENSOR_LM80), &dev->hwmon)) { + ssd_generate_sensor_fault_log(dev, SSD_LOG_SENSOR_FAULT, SSD_SENSOR_LM80_SADDRESS,ret); + } + goto out; + } + u1 = SSD_LM80_CONVERT_VOLT(u16_swap(val)); + if (SSD_PL_CAP_VOLT(u1) >= SSD_PL_CAP_VOLT_FULL) { + break; + } + + wait++; + if (wait > SSD_PL_CAP_CHARGE_MAX_WAIT) { + ret = -ETIMEDOUT; + goto out; + } + msleep(SSD_PL_CAP_CHARGE_WAIT); + } + + ret = ssd_smbus_read_word(dev, SSD_SENSOR_LM80_SADDRESS, SSD_PL_CAP_U2, (uint8_t *)&val); + if (ret) { + if (!test_and_set_bit(SSD_HWMON_SENSOR(SSD_SENSOR_LM80), &dev->hwmon)) { + ssd_generate_sensor_fault_log(dev, SSD_LOG_SENSOR_FAULT, SSD_SENSOR_LM80_SADDRESS,ret); + } + goto out; + } + u2 = SSD_LM80_CONVERT_VOLT(u16_swap(val)); + + if (u1 == u2) { + ret = -EINVAL; + goto out; + } + + /* enter cap learn */ + ssd_reg32_write(dev->ctrlp + SSD_PL_CAP_LEARN_REG, 0x1); + + wait = 0; + for (;;) { + msleep(SSD_PL_CAP_LEARN_WAIT); + + t = ssd_reg32_read(dev->ctrlp + SSD_PL_CAP_LEARN_REG); + if (!((t >> 1) & 0x1)) { + break; + } + + wait++; + if (wait > SSD_PL_CAP_LEARN_MAX_WAIT) { + ret = -ETIMEDOUT; + goto out; + } + } + + if ((t >> 4) & 0x1) { + ret = -ETIMEDOUT; + goto out; + } + + t = (t >> 8); + if (0 == t) { + ret = -EINVAL; + goto out; + } + + *cap = SSD_PL_CAP_LEARN(u1, u2, t); + +out: + return ret; +} + +static int ssd_cap_learn(struct ssd_device *dev, uint32_t *cap) +{ + int ret = 0; + + if (!dev || !cap) { + return -EINVAL; + } + + mutex_lock(&dev->bm_mutex); + + ssd_stop_workq(dev); + + ret = ssd_do_cap_learn(dev, cap); + if (ret) { + ssd_gen_swlog(dev, SSD_LOG_CAP_LEARN_FAULT, 0); + goto out; + } + + ssd_gen_swlog(dev, SSD_LOG_CAP_STATUS, *cap); + +out: + ssd_start_workq(dev); + mutex_unlock(&dev->bm_mutex); + + return ret; +} + +static int ssd_check_pl_cap(struct ssd_device *dev) +{ + uint32_t u1; + uint16_t val = 0; + uint8_t low = 0; + int wait = 0; + int ret = 0; + + if (dev->protocol_info.ver < SSD_PROTOCOL_V3_2) { + return 0; + } + + if (dev->hw_info_ext.form_factor == SSD_FORM_FACTOR_FHHL && dev->hw_info.pcb_ver < 'B') { + return 0; + } + + /* cap ready ? */ + wait = 0; + for (;;) { + ret = ssd_smbus_read_word(dev, SSD_SENSOR_LM80_SADDRESS, SSD_PL_CAP_U1, (uint8_t *)&val); + if (ret) { + if (!test_and_set_bit(SSD_HWMON_SENSOR(SSD_SENSOR_LM80), &dev->hwmon)) { + ssd_generate_sensor_fault_log(dev, SSD_LOG_SENSOR_FAULT, SSD_SENSOR_LM80_SADDRESS,ret); + } + goto out; + } + u1 = SSD_LM80_CONVERT_VOLT(u16_swap(val)); + if (SSD_PL_CAP_VOLT(u1) >= SSD_PL_CAP_VOLT_READY) { + break; + } + + wait++; + if (wait > SSD_PL_CAP_CHARGE_MAX_WAIT) { + ret = -ETIMEDOUT; + ssd_gen_swlog(dev, SSD_LOG_CAP_VOLT_FAULT, SSD_PL_CAP_VOLT(u1)); + goto out; + } + msleep(SSD_PL_CAP_CHARGE_WAIT); + } + + low = ssd_lm80_limit[SSD_LM80_IN_CAP].low; + ret = ssd_smbus_write_byte(dev, SSD_SENSOR_LM80_SADDRESS, SSD_LM80_REG_IN_MIN(SSD_LM80_IN_CAP), &low); + if (ret) { + goto out; + } + + /* enable cap INx */ + ret = ssd_lm80_enable_in(dev, SSD_SENSOR_LM80_SADDRESS, SSD_LM80_IN_CAP); + if (ret) { + if (!test_and_set_bit(SSD_HWMON_SENSOR(SSD_SENSOR_LM80), &dev->hwmon)) { + ssd_generate_sensor_fault_log(dev, SSD_LOG_SENSOR_FAULT, SSD_SENSOR_LM80_SADDRESS,ret); + } + goto out; + } + +out: + /* skip error if not in standard mode */ + if (mode != SSD_DRV_MODE_STANDARD) { + ret = 0; + } + return ret; +} + +static int ssd_check_pl_cap_fast(struct ssd_device *dev) +{ + uint32_t u1; + uint16_t val = 0; + int ret = 0; + + if (dev->protocol_info.ver < SSD_PROTOCOL_V3_2) { + return 0; + } + + if (dev->hw_info_ext.form_factor == SSD_FORM_FACTOR_FHHL && dev->hw_info.pcb_ver < 'B') { + return 0; + } + + /* cap ready ? */ + ret = ssd_smbus_read_word(dev, SSD_SENSOR_LM80_SADDRESS, SSD_PL_CAP_U1, (uint8_t *)&val); + if (ret) { + goto out; + } + u1 = SSD_LM80_CONVERT_VOLT(u16_swap(val)); + if (SSD_PL_CAP_VOLT(u1) < SSD_PL_CAP_VOLT_READY) { + ret = 1; + } + +out: + return ret; +} + +static int ssd_init_pl_cap(struct ssd_device *dev) +{ + int ret = 0; + + /* set here: user write mode */ + dev->user_wmode = wmode; + + mutex_init(&dev->bm_mutex); + + if (dev->protocol_info.ver < SSD_PROTOCOL_V3_2) { + uint32_t val; + val = ssd_reg32_read(dev->ctrlp + SSD_BM_FAULT_REG); + if ((val >> 1) & 0x1) { + (void)test_and_set_bit(SSD_HWMON_PL_CAP(SSD_PL_CAP), &dev->hwmon); + } + } else { + ret = ssd_check_pl_cap(dev); + if (ret) { + (void)test_and_set_bit(SSD_HWMON_PL_CAP(SSD_PL_CAP), &dev->hwmon); + } + } + + return 0; +} + +/* label */ +static void __end_str(char *str, int len) +{ + int i; + + for(i=0; irom_info.label_base; + + if (dev->protocol_info.ver < SSD_PROTOCOL_V3_2) { + size = sizeof(struct ssd_label); + + /* read label */ + ret = ssd_spi_read(dev, &dev->label, off, size); + if (ret) { + memset(&dev->label, 0, size); + goto out; + } + + __end_str(dev->label.date, SSD_LABEL_FIELD_SZ); + __end_str(dev->label.sn, SSD_LABEL_FIELD_SZ); + __end_str(dev->label.part, SSD_LABEL_FIELD_SZ); + __end_str(dev->label.desc, SSD_LABEL_FIELD_SZ); + __end_str(dev->label.other, SSD_LABEL_FIELD_SZ); + __end_str(dev->label.maf, SSD_LABEL_FIELD_SZ); + } else { + size = sizeof(struct ssd_labelv3); + + /* read label */ + ret = ssd_spi_read(dev, &dev->labelv3, off, size); + if (ret) { + memset(&dev->labelv3, 0, size); + goto out; + } + + __end_str(dev->labelv3.boardtype, SSD_LABEL_FIELD_SZ); + __end_str(dev->labelv3.barcode, SSD_LABEL_FIELD_SZ); + __end_str(dev->labelv3.item, SSD_LABEL_FIELD_SZ); + __end_str(dev->labelv3.description, SSD_LABEL_DESC_SZ); + __end_str(dev->labelv3.manufactured, SSD_LABEL_FIELD_SZ); + __end_str(dev->labelv3.vendorname, SSD_LABEL_FIELD_SZ); + __end_str(dev->labelv3.issuenumber, SSD_LABEL_FIELD_SZ); + __end_str(dev->labelv3.cleicode, SSD_LABEL_FIELD_SZ); + __end_str(dev->labelv3.bom, SSD_LABEL_FIELD_SZ); + } + +out: + /* skip error if not in standard mode */ + if (mode != SSD_DRV_MODE_STANDARD) { + ret = 0; + } + return ret; +} + +int ssd_get_label(struct block_device *bdev, struct ssd_label *label) +{ + struct ssd_device *dev; + + if (!bdev || !label || !(bdev->bd_disk)) { + return -EINVAL; + } + + dev = bdev->bd_disk->private_data; + + if (dev->protocol_info.ver >= SSD_PROTOCOL_V3_2) { + memset(label, 0, sizeof(struct ssd_label)); + memcpy(label->date, dev->labelv3.manufactured, SSD_LABEL_FIELD_SZ); + memcpy(label->sn, dev->labelv3.barcode, SSD_LABEL_FIELD_SZ); + memcpy(label->desc, dev->labelv3.boardtype, SSD_LABEL_FIELD_SZ); + memcpy(label->maf, dev->labelv3.vendorname, SSD_LABEL_FIELD_SZ); + } else { + memcpy(label, &dev->label, sizeof(struct ssd_label)); + } + + return 0; +} + +static int __ssd_get_version(struct ssd_device *dev, struct ssd_version_info *ver) +{ + uint16_t bm_ver = 0; + int ret = 0; + + if (dev->protocol_info.ver > SSD_PROTOCOL_V3 && dev->protocol_info.ver < SSD_PROTOCOL_V3_2) { + ret = ssd_bm_get_version(dev, &bm_ver); + if(ret){ + goto out; + } + } + + ver->bridge_ver = dev->hw_info.bridge_ver; + ver->ctrl_ver = dev->hw_info.ctrl_ver; + ver->bm_ver = bm_ver; + ver->pcb_ver = dev->hw_info.pcb_ver; + ver->upper_pcb_ver = dev->hw_info.upper_pcb_ver; + +out: + return ret; + +} + +int ssd_get_version(struct block_device *bdev, struct ssd_version_info *ver) +{ + struct ssd_device *dev; + int ret; + + if (!bdev || !ver || !(bdev->bd_disk)) { + return -EINVAL; + } + + dev = bdev->bd_disk->private_data; + + mutex_lock(&dev->fw_mutex); + ret = __ssd_get_version(dev, ver); + mutex_unlock(&dev->fw_mutex); + + return ret; +} + +static int __ssd_get_temperature(struct ssd_device *dev, int *temp) +{ + uint64_t val; + uint32_t off; + int max = -300; + int cur; + int i; + + if (dev->protocol_info.ver <= SSD_PROTOCOL_V3) { + *temp = 0; + return 0; + } + + if (finject) { + if (dev->db_info.type == SSD_DEBUG_LOG && + (dev->db_info.data.log.event == SSD_LOG_OVER_TEMP || + dev->db_info.data.log.event == SSD_LOG_NORMAL_TEMP || + dev->db_info.data.log.event == SSD_LOG_WARN_TEMP)) { + *temp = (int)dev->db_info.data.log.extra; + return 0; + } + } + + for (i=0; ihw_info.nr_ctrl; i++) { + off = SSD_CTRL_TEMP_REG0 + i * sizeof(uint64_t); + + val = ssd_reg_read(dev->ctrlp + off); + if (val == 0xffffffffffffffffull) { + continue; + } + + cur = (int)CUR_TEMP(val); + if (cur >= max) { + max = cur; + } + } + + *temp = max; + + return 0; +} + +int ssd_get_temperature(struct block_device *bdev, int *temp) +{ + struct ssd_device *dev; + int ret; + + if (!bdev || !temp || !(bdev->bd_disk)) { + return -EINVAL; + } + + dev = bdev->bd_disk->private_data; + + + mutex_lock(&dev->fw_mutex); + ret = __ssd_get_temperature(dev, temp); + mutex_unlock(&dev->fw_mutex); + + return ret; +} + +int ssd_set_otprotect(struct block_device *bdev, int otprotect) + { + struct ssd_device *dev; + + if (!bdev || !(bdev->bd_disk)) { + return -EINVAL; + } + + dev = bdev->bd_disk->private_data; + ssd_set_ot_protect(dev, !!otprotect); + + return 0; + } + +int ssd_bm_status(struct block_device *bdev, int *status) +{ + struct ssd_device *dev; + int ret = 0; + + if (!bdev || !status || !(bdev->bd_disk)) { + return -EINVAL; + } + + dev = bdev->bd_disk->private_data; + + mutex_lock(&dev->fw_mutex); + if (dev->protocol_info.ver >= SSD_PROTOCOL_V3_2) { + if (test_bit(SSD_HWMON_PL_CAP(SSD_PL_CAP), &dev->hwmon)) { + *status = SSD_BMSTATUS_WARNING; + } else { + *status = SSD_BMSTATUS_OK; + } + } else if(dev->protocol_info.ver > SSD_PROTOCOL_V3) { + ret = __ssd_bm_status(dev, status); + } else { + *status = SSD_BMSTATUS_OK; + } + mutex_unlock(&dev->fw_mutex); + + return ret; +} + +int ssd_get_pciaddr(struct block_device *bdev, struct pci_addr *paddr) +{ + struct ssd_device *dev; + + if (!bdev || !paddr || !bdev->bd_disk) { + return -EINVAL; + } + + dev = bdev->bd_disk->private_data; + + paddr->domain = pci_domain_nr(dev->pdev->bus); + paddr->bus = dev->pdev->bus->number; + paddr->slot = PCI_SLOT(dev->pdev->devfn); + paddr->func= PCI_FUNC(dev->pdev->devfn); + + return 0; +} + +/* acc */ +static int ssd_bb_acc(struct ssd_device *dev, struct ssd_acc_info *acc) +{ + uint32_t val; + int ctrl, chip; + + if (dev->protocol_info.ver < SSD_PROTOCOL_V3_1_1) { + return -EOPNOTSUPP; + } + + acc->threshold_l1 = ssd_reg32_read(dev->ctrlp + SSD_BB_THRESHOLD_L1_REG); + if (0xffffffffull == acc->threshold_l1) { + return -EIO; + } + acc->threshold_l2 = ssd_reg32_read(dev->ctrlp + SSD_BB_THRESHOLD_L2_REG); + if (0xffffffffull == acc->threshold_l2) { + return -EIO; + } + acc->val = 0; + + for (ctrl=0; ctrlhw_info.nr_ctrl; ctrl++) { + for (chip=0; chiphw_info.nr_chip; chip++) { + val = ssd_reg32_read(dev->ctrlp + SSD_BB_ACC_REG0 + (SSD_CTRL_REG_ZONE_SZ * ctrl) + (SSD_BB_ACC_REG_SZ * chip)); + if (0xffffffffull == acc->val) { + return -EIO; + } + if (val > acc->val) { + acc->val = val; + } + } + } + + return 0; +} + +static int ssd_ec_acc(struct ssd_device *dev, struct ssd_acc_info *acc) +{ + uint32_t val; + int ctrl, chip; + + if (dev->protocol_info.ver < SSD_PROTOCOL_V3_1_1) { + return -EOPNOTSUPP; + } + + acc->threshold_l1 = ssd_reg32_read(dev->ctrlp + SSD_EC_THRESHOLD_L1_REG); + if (0xffffffffull == acc->threshold_l1) { + return -EIO; + } + acc->threshold_l2 = ssd_reg32_read(dev->ctrlp + SSD_EC_THRESHOLD_L2_REG); + if (0xffffffffull == acc->threshold_l2) { + return -EIO; + } + acc->val = 0; + + for (ctrl=0; ctrlhw_info.nr_ctrl; ctrl++) { + for (chip=0; chiphw_info.nr_chip; chip++) { + val = ssd_reg32_read(dev->ctrlp + SSD_EC_ACC_REG0 + (SSD_CTRL_REG_ZONE_SZ * ctrl) + (SSD_EC_ACC_REG_SZ * chip)); + if (0xffffffffull == acc->val) { + return -EIO; + } + + if (val > acc->val) { + acc->val = val; + } + } + } + + return 0; +} + + +/* ram r&w */ +static int ssd_ram_read_4k(struct ssd_device *dev, void *buf, size_t length, loff_t ofs, int ctrl_idx) +{ + struct ssd_ram_op_msg *msg; + dma_addr_t buf_dma; + size_t len = length; + loff_t ofs_w = ofs; + int ret = 0; + + if (ctrl_idx >= dev->hw_info.nr_ctrl || (uint64_t)(ofs + length) > dev->hw_info.ram_size + || !length || length > dev->hw_info.ram_max_len + || (length & (dev->hw_info.ram_align - 1)) != 0 || ((uint64_t)ofs & (dev->hw_info.ram_align - 1)) != 0) { + return -EINVAL; + } + + len /= dev->hw_info.ram_align; + do_div(ofs_w, dev->hw_info.ram_align); + + buf_dma = pci_map_single(dev->pdev, buf, length, PCI_DMA_FROMDEVICE); +#if (LINUX_VERSION_CODE <= KERNEL_VERSION(2,6,26)) + ret = dma_mapping_error(buf_dma); +#else + ret = dma_mapping_error(&(dev->pdev->dev), buf_dma); +#endif + if (ret) { + hio_warn("%s: unable to map read DMA buffer\n", dev->name); + goto out_dma_mapping; + } + + msg = (struct ssd_ram_op_msg *)ssd_get_dmsg(dev); + + msg->fun = SSD_FUNC_RAM_READ; + msg->ctrl_idx = ctrl_idx; + msg->start = (uint32_t)ofs_w; + msg->length = len; + msg->buf = buf_dma; + + ret = ssd_do_request(dev, READ, msg, NULL); + ssd_put_dmsg(msg); + + pci_unmap_single(dev->pdev, buf_dma, length, PCI_DMA_FROMDEVICE); + +out_dma_mapping: + return ret; +} + +static int ssd_ram_write_4k(struct ssd_device *dev, void *buf, size_t length, loff_t ofs, int ctrl_idx) +{ + struct ssd_ram_op_msg *msg; + dma_addr_t buf_dma; + size_t len = length; + loff_t ofs_w = ofs; + int ret = 0; + + if (ctrl_idx >= dev->hw_info.nr_ctrl || (uint64_t)(ofs + length) > dev->hw_info.ram_size + || !length || length > dev->hw_info.ram_max_len + || (length & (dev->hw_info.ram_align - 1)) != 0 || ((uint64_t)ofs & (dev->hw_info.ram_align - 1)) != 0) { + return -EINVAL; + } + + len /= dev->hw_info.ram_align; + do_div(ofs_w, dev->hw_info.ram_align); + + buf_dma = pci_map_single(dev->pdev, buf, length, PCI_DMA_TODEVICE); +#if (LINUX_VERSION_CODE <= KERNEL_VERSION(2,6,26)) + ret = dma_mapping_error(buf_dma); +#else + ret = dma_mapping_error(&(dev->pdev->dev), buf_dma); +#endif + if (ret) { + hio_warn("%s: unable to map write DMA buffer\n", dev->name); + goto out_dma_mapping; + } + + msg = (struct ssd_ram_op_msg *)ssd_get_dmsg(dev); + + msg->fun = SSD_FUNC_RAM_WRITE; + msg->ctrl_idx = ctrl_idx; + msg->start = (uint32_t)ofs_w; + msg->length = len; + msg->buf = buf_dma; + + ret = ssd_do_request(dev, WRITE, msg, NULL); + ssd_put_dmsg(msg); + + pci_unmap_single(dev->pdev, buf_dma, length, PCI_DMA_TODEVICE); + +out_dma_mapping: + return ret; + +} + +static int ssd_ram_read(struct ssd_device *dev, void *buf, size_t length, loff_t ofs, int ctrl_idx) +{ + int left = length; + size_t len; + loff_t off = ofs; + int ret = 0; + + if (ctrl_idx >= dev->hw_info.nr_ctrl || (uint64_t)(ofs + length) > dev->hw_info.ram_size || !length + || (length & (dev->hw_info.ram_align - 1)) != 0 || ((uint64_t)ofs & (dev->hw_info.ram_align - 1)) != 0) { + return -EINVAL; + } + + while (left > 0) { + len = dev->hw_info.ram_max_len; + if (left < (int)dev->hw_info.ram_max_len) { + len = left; + } + + ret = ssd_ram_read_4k(dev, buf, len, off, ctrl_idx); + if (ret) { + break; + } + + left -= len; + off += len; + buf += len; + } + + return ret; +} + +static int ssd_ram_write(struct ssd_device *dev, void *buf, size_t length, loff_t ofs, int ctrl_idx) +{ + int left = length; + size_t len; + loff_t off = ofs; + int ret = 0; + + if (ctrl_idx >= dev->hw_info.nr_ctrl || (uint64_t)(ofs + length) > dev->hw_info.ram_size || !length + || (length & (dev->hw_info.ram_align - 1)) != 0 || ((uint64_t)ofs & (dev->hw_info.ram_align - 1)) != 0) { + return -EINVAL; + } + + while (left > 0) { + len = dev->hw_info.ram_max_len; + if (left < (int)dev->hw_info.ram_max_len) { + len = left; + } + + ret = ssd_ram_write_4k(dev, buf, len, off, ctrl_idx); + if (ret) { + break; + } + + left -= len; + off += len; + buf += len; + } + + return ret; +} + + +/* flash op */ +static int ssd_check_flash(struct ssd_device *dev, int flash, int page, int ctrl_idx) +{ + int cur_ch = flash % dev->hw_info.max_ch; + int cur_chip = flash /dev->hw_info.max_ch; + + if (ctrl_idx >= dev->hw_info.nr_ctrl) { + return -EINVAL; + } + + if (cur_ch >= dev->hw_info.nr_ch || cur_chip >= dev->hw_info.nr_chip) { + return -EINVAL; + } + + if (page >= (int)(dev->hw_info.block_count * dev->hw_info.page_count)) { + return -EINVAL; + } + return 0; +} + +static int ssd_nand_read_id(struct ssd_device *dev, void *id, int flash, int chip, int ctrl_idx) +{ + struct ssd_nand_op_msg *msg; + dma_addr_t buf_dma; + int ret = 0; + + if (unlikely(!id)) + return -EINVAL; + + buf_dma = pci_map_single(dev->pdev, id, SSD_NAND_ID_BUFF_SZ, PCI_DMA_FROMDEVICE); +#if (LINUX_VERSION_CODE <= KERNEL_VERSION(2,6,26)) + ret = dma_mapping_error(buf_dma); +#else + ret = dma_mapping_error(&(dev->pdev->dev), buf_dma); +#endif + if (ret) { + hio_warn("%s: unable to map read DMA buffer\n", dev->name); + goto out_dma_mapping; + } + + if (dev->protocol_info.ver < SSD_PROTOCOL_V3) { + flash = ((uint32_t)flash << 1) | (uint32_t)chip; + chip = 0; + } + + msg = (struct ssd_nand_op_msg *)ssd_get_dmsg(dev); + + msg->fun = SSD_FUNC_NAND_READ_ID; + msg->chip_no = flash; + msg->chip_ce = chip; + msg->ctrl_idx = ctrl_idx; + msg->buf = buf_dma; + + ret = ssd_do_request(dev, READ, msg, NULL); + ssd_put_dmsg(msg); + + pci_unmap_single(dev->pdev, buf_dma, SSD_NAND_ID_BUFF_SZ, PCI_DMA_FROMDEVICE); + +out_dma_mapping: + return ret; +} + +#if 0 +static int ssd_nand_read(struct ssd_device *dev, void *buf, + int flash, int chip, int page, int page_count, int ctrl_idx) +{ + struct ssd_nand_op_msg *msg; + dma_addr_t buf_dma; + int length; + int ret = 0; + + if (!buf) { + return -EINVAL; + } + + if ((page + page_count) > dev->hw_info.block_count*dev->hw_info.page_count) { + return -EINVAL; + } + + ret = ssd_check_flash(dev, flash, page, ctrl_idx); + if (ret) { + return ret; + } + + length = page_count * dev->hw_info.page_size; + + buf_dma = pci_map_single(dev->pdev, buf, length, PCI_DMA_FROMDEVICE); +#if (LINUX_VERSION_CODE <= KERNEL_VERSION(2,6,26)) + ret = dma_mapping_error(buf_dma); +#else + ret = dma_mapping_error(&(dev->pdev->dev), buf_dma); +#endif + if (ret) { + hio_warn("%s: unable to map read DMA buffer\n", dev->name); + goto out_dma_mapping; + } + + if (dev->protocol_info.ver < SSD_PROTOCOL_V3) { + flash = (flash << 1) | chip; + chip = 0; + } + + msg = (struct ssd_nand_op_msg *)ssd_get_dmsg(dev); + + msg->fun = SSD_FUNC_NAND_READ; + msg->ctrl_idx = ctrl_idx; + msg->chip_no = flash; + msg->chip_ce = chip; + msg->page_no = page; + msg->page_count = page_count; + msg->buf = buf_dma; + + ret = ssd_do_request(dev, READ, msg, NULL); + ssd_put_dmsg(msg); + + pci_unmap_single(dev->pdev, buf_dma, length, PCI_DMA_FROMDEVICE); + +out_dma_mapping: + return ret; +} +#endif + +static int ssd_nand_read_w_oob(struct ssd_device *dev, void *buf, + int flash, int chip, int page, int count, int ctrl_idx) +{ + struct ssd_nand_op_msg *msg; + dma_addr_t buf_dma; + int length; + int ret = 0; + + if (!buf) { + return -EINVAL; + } + + if ((page + count) > (int)(dev->hw_info.block_count * dev->hw_info.page_count)) { + return -EINVAL; + } + + ret = ssd_check_flash(dev, flash, page, ctrl_idx); + if (ret) { + return ret; + } + + length = count * (dev->hw_info.page_size + dev->hw_info.oob_size); + + buf_dma = pci_map_single(dev->pdev, buf, length, PCI_DMA_FROMDEVICE); +#if (LINUX_VERSION_CODE <= KERNEL_VERSION(2,6,26)) + ret = dma_mapping_error(buf_dma); +#else + ret = dma_mapping_error(&(dev->pdev->dev), buf_dma); +#endif + if (ret) { + hio_warn("%s: unable to map read DMA buffer\n", dev->name); + goto out_dma_mapping; + } + + if (dev->protocol_info.ver < SSD_PROTOCOL_V3) { + flash = ((uint32_t)flash << 1) | (uint32_t)chip; + chip = 0; + } + + msg = (struct ssd_nand_op_msg *)ssd_get_dmsg(dev); + + msg->fun = SSD_FUNC_NAND_READ_WOOB; + msg->ctrl_idx = ctrl_idx; + msg->chip_no = flash; + msg->chip_ce = chip; + msg->page_no = page; + msg->page_count = count; + msg->buf = buf_dma; + + ret = ssd_do_request(dev, READ, msg, NULL); + ssd_put_dmsg(msg); + + pci_unmap_single(dev->pdev, buf_dma, length, PCI_DMA_FROMDEVICE); + +out_dma_mapping: + return ret; +} + +/* write 1 page */ +static int ssd_nand_write(struct ssd_device *dev, void *buf, + int flash, int chip, int page, int count, int ctrl_idx) +{ + struct ssd_nand_op_msg *msg; + dma_addr_t buf_dma; + int length; + int ret = 0; + + if (dev->protocol_info.ver < SSD_PROTOCOL_V3) { + return -EINVAL; + } + + if (!buf) { + return -EINVAL; + } + + if (count != 1) { + return -EINVAL; + } + + ret = ssd_check_flash(dev, flash, page, ctrl_idx); + if (ret) { + return ret; + } + + length = count * (dev->hw_info.page_size + dev->hw_info.oob_size); + + /* write data to ram */ + /*ret = ssd_ram_write(dev, buf, length, dev->hw_info.nand_wbuff_base, ctrl_idx); + if (ret) { + return ret; + }*/ + + buf_dma = pci_map_single(dev->pdev, buf, length, PCI_DMA_TODEVICE); +#if (LINUX_VERSION_CODE <= KERNEL_VERSION(2,6,26)) + ret = dma_mapping_error(buf_dma); +#else + ret = dma_mapping_error(&(dev->pdev->dev), buf_dma); +#endif + if (ret) { + hio_warn("%s: unable to map write DMA buffer\n", dev->name); + goto out_dma_mapping; + } + + if (dev->protocol_info.ver < SSD_PROTOCOL_V3) { + flash = ((uint32_t)flash << 1) | (uint32_t)chip; + chip = 0; + } + + msg = (struct ssd_nand_op_msg *)ssd_get_dmsg(dev); + + msg->fun = SSD_FUNC_NAND_WRITE; + msg->ctrl_idx = ctrl_idx; + msg->chip_no = flash; + msg->chip_ce = chip; + + msg->page_no = page; + msg->page_count = count; + msg->buf = buf_dma; + + ret = ssd_do_request(dev, WRITE, msg, NULL); + ssd_put_dmsg(msg); + + pci_unmap_single(dev->pdev, buf_dma, length, PCI_DMA_TODEVICE); + +out_dma_mapping: + return ret; +} + +static int ssd_nand_erase(struct ssd_device *dev, int flash, int chip, int page, int ctrl_idx) +{ + struct ssd_nand_op_msg *msg; + int ret = 0; + + ret = ssd_check_flash(dev, flash, page, ctrl_idx); + if (ret) { + return ret; + } + + if (dev->protocol_info.ver < SSD_PROTOCOL_V3) { + flash = ((uint32_t)flash << 1) | (uint32_t)chip; + chip = 0; + } + + msg = (struct ssd_nand_op_msg *)ssd_get_dmsg(dev); + + msg->fun = SSD_FUNC_NAND_ERASE; + msg->ctrl_idx = ctrl_idx; + msg->chip_no = flash; + msg->chip_ce = chip; + msg->page_no = page; + + ret = ssd_do_request(dev, WRITE, msg, NULL); + ssd_put_dmsg(msg); + + return ret; +} + +static int ssd_update_bbt(struct ssd_device *dev, int flash, int ctrl_idx) +{ + struct ssd_nand_op_msg *msg; + struct ssd_flush_msg *fmsg; + int ret = 0; + + ret = ssd_check_flash(dev, flash, 0, ctrl_idx); + if (ret) { + return ret; + } + + msg = (struct ssd_nand_op_msg *)ssd_get_dmsg(dev); + + if (dev->protocol_info.ver < SSD_PROTOCOL_V3) { + fmsg = (struct ssd_flush_msg *)msg; + + fmsg->fun = SSD_FUNC_FLUSH; + fmsg->flag = 0x1; + fmsg->flash = flash; + fmsg->ctrl_idx = ctrl_idx; + } else { + msg->fun = SSD_FUNC_FLUSH; + msg->flag = 0x1; + msg->chip_no = flash; + msg->ctrl_idx = ctrl_idx; + } + + ret = ssd_do_request(dev, WRITE, msg, NULL); + ssd_put_dmsg(msg); + + return ret; +} + +/* flash controller init state */ +static int __ssd_check_init_state(struct ssd_device *dev) +{ + uint32_t *init_state = NULL; + int reg_base, reg_sz; + int max_wait = SSD_INIT_MAX_WAIT; + int init_wait = 0; + int i, j, k; + int ch_start = 0; + +/* + for (i=0; ihw_info.nr_ctrl; i++) { + ssd_reg32_write(dev->ctrlp + SSD_CTRL_TEST_REG0 + i * 8, test_data); + read_data = ssd_reg32_read(dev->ctrlp + SSD_CTRL_TEST_REG0 + i * 8); + if (read_data == ~test_data) { + //dev->hw_info.nr_ctrl++; + dev->hw_info.nr_ctrl_map |= 1<ctrlp + SSD_READY_REG); + j=0; + for (i=0; ihw_info.nr_ctrl; i++) { + if (((read_data>>i) & 0x1) == 0) { + j++; + } + } + + if (dev->hw_info.nr_ctrl != j) { + printk(KERN_WARNING "%s: nr_ctrl mismatch: %d %d\n", dev->name, dev->hw_info.nr_ctrl, j); + return -1; + } +*/ + +/* + init_state = ssd_reg_read(dev->ctrlp + SSD_FLASH_INFO_REG0); + for (j=1; jhw_info.nr_ctrl;j++) { + if (init_state != ssd_reg_read(dev->ctrlp + SSD_FLASH_INFO_REG0 + j*8)) { + printk(KERN_WARNING "SSD_FLASH_INFO_REG[%d], not match\n", j); + return -1; + } + } +*/ + +/* init_state = ssd_reg_read(dev->ctrlp + SSD_CHIP_INFO_REG0); + for (j=1; jhw_info.nr_ctrl; j++) { + if (init_state != ssd_reg_read(dev->ctrlp + SSD_CHIP_INFO_REG0 + j*16)) { + printk(KERN_WARNING "SSD_CHIP_INFO_REG Lo [%d], not match\n", j); + return -1; + } + } + + init_state = ssd_reg_read(dev->ctrlp + SSD_CHIP_INFO_REG0 + 8); + for (j=1; jhw_info.nr_ctrl; j++) { + if (init_state != ssd_reg_read(dev->ctrlp + SSD_CHIP_INFO_REG0 + 8 + j*16)) { + printk(KERN_WARNING "SSD_CHIP_INFO_REG Hi [%d], not match\n", j); + return -1; + } + } +*/ + + if (dev->protocol_info.ver >= SSD_PROTOCOL_V3_2) { + max_wait = SSD_INIT_MAX_WAIT_V3_2; + } + + reg_base = dev->protocol_info.init_state_reg; + reg_sz = dev->protocol_info.init_state_reg_sz; + + init_state = (uint32_t *)kmalloc(reg_sz, GFP_KERNEL); + if (!init_state) { + return -ENOMEM; + } + + for (i=0; ihw_info.nr_ctrl; i++) { +check_init: + for (j=0, k=0; jctrlp + reg_base + j); + } + + if (dev->protocol_info.ver > SSD_PROTOCOL_V3) { + /* just check the last bit, no need to check all channel */ + ch_start = dev->hw_info.max_ch - 1; + } else { + ch_start = 0; + } + + for (j=0; jhw_info.nr_chip; j++) { + for (k=ch_start; khw_info.max_ch; k++) { + if (test_bit((j*dev->hw_info.max_ch + k), (void *)init_state)) { + continue; + } + + init_wait++; + if (init_wait <= max_wait) { + msleep(SSD_INIT_WAIT); + goto check_init; + } else { + if (k < dev->hw_info.nr_ch) { + hio_warn("%s: controller %d chip %d ch %d init failed\n", + dev->name, i, j, k); + } else { + hio_warn("%s: controller %d chip %d init failed\n", + dev->name, i, j); + } + + kfree(init_state); + return -1; + } + } + } + reg_base += reg_sz; + } + //printk(KERN_WARNING "%s: init wait %d\n", dev->name, init_wait); + + kfree(init_state); + return 0; +} + +static int ssd_check_init_state(struct ssd_device *dev) +{ + if (mode != SSD_DRV_MODE_STANDARD) { + return 0; + } + + return __ssd_check_init_state(dev); +} + +static void ssd_reset_resp_ptr(struct ssd_device *dev); + +/* reset flash controller etc */ +static int __ssd_reset(struct ssd_device *dev, int type) +{ + if (type < SSD_RST_NOINIT || type > SSD_RST_FULL) { + return -EINVAL; + } + + mutex_lock(&dev->fw_mutex); + + if (type == SSD_RST_NOINIT) { //no init + ssd_reg32_write(dev->ctrlp + SSD_RESET_REG, SSD_RESET_NOINIT); + } else if (type == SSD_RST_NORMAL) { //reset & init + ssd_reg32_write(dev->ctrlp + SSD_RESET_REG, SSD_RESET); + } else { // full reset + if (dev->protocol_info.ver < SSD_PROTOCOL_V3_2) { + mutex_unlock(&dev->fw_mutex); + return -EINVAL; + } + + ssd_reg32_write(dev->ctrlp + SSD_FULL_RESET_REG, SSD_RESET_FULL); + + /* ?? */ + ssd_reset_resp_ptr(dev); + } + +#ifdef SSD_OT_PROTECT + dev->ot_delay = 0; +#endif + + msleep(1000); + + /* xx */ + ssd_set_flush_timeout(dev, dev->wmode); + + mutex_unlock(&dev->fw_mutex); + ssd_gen_swlog(dev, SSD_LOG_RESET, (uint32_t)type); + dev->reset_time = (uint64_t)ktime_get_real_seconds(); + + return __ssd_check_init_state(dev); +} + +static int ssd_save_md(struct ssd_device *dev) +{ + struct ssd_nand_op_msg *msg; + int ret = 0; + + if (unlikely(mode != SSD_DRV_MODE_STANDARD)) + return 0; + + if (dev->protocol_info.ver <= SSD_PROTOCOL_V3) { + return 0; + } + + if (!dev->save_md) { + return 0; + } + + msg = (struct ssd_nand_op_msg *)ssd_get_dmsg(dev); + + msg->fun = SSD_FUNC_FLUSH; + msg->flag = 0x2; + msg->ctrl_idx = 0; + msg->chip_no = 0; + + ret = ssd_do_request(dev, WRITE, msg, NULL); + ssd_put_dmsg(msg); + + return ret; +} + +static int ssd_barrier_save_md(struct ssd_device *dev) +{ + struct ssd_nand_op_msg *msg; + int ret = 0; + + if (unlikely(mode != SSD_DRV_MODE_STANDARD)) + return 0; + + if (dev->protocol_info.ver <= SSD_PROTOCOL_V3) { + return 0; + } + + if (!dev->save_md) { + return 0; + } + + msg = (struct ssd_nand_op_msg *)ssd_get_dmsg(dev); + + msg->fun = SSD_FUNC_FLUSH; + msg->flag = 0x2; + msg->ctrl_idx = 0; + msg->chip_no = 0; + + ret = ssd_do_barrier_request(dev, WRITE, msg, NULL); + ssd_put_dmsg(msg); + + return ret; +} + +static int ssd_flush(struct ssd_device *dev) +{ + struct ssd_nand_op_msg *msg; + struct ssd_flush_msg *fmsg; + int ret = 0; + + if (unlikely(mode != SSD_DRV_MODE_STANDARD)) + return 0; + + msg = (struct ssd_nand_op_msg *)ssd_get_dmsg(dev); + + if (dev->protocol_info.ver < SSD_PROTOCOL_V3) { + fmsg = (struct ssd_flush_msg *)msg; + + fmsg->fun = SSD_FUNC_FLUSH; + fmsg->flag = 0; + fmsg->ctrl_idx = 0; + fmsg->flash = 0; + } else { + msg->fun = SSD_FUNC_FLUSH; + msg->flag = 0; + msg->ctrl_idx = 0; + msg->chip_no = 0; + } + + ret = ssd_do_request(dev, WRITE, msg, NULL); + ssd_put_dmsg(msg); + + return ret; +} + +static int ssd_barrier_flush(struct ssd_device *dev) +{ + struct ssd_nand_op_msg *msg; + struct ssd_flush_msg *fmsg; + int ret = 0; + + if (unlikely(mode != SSD_DRV_MODE_STANDARD)) + return 0; + + msg = (struct ssd_nand_op_msg *)ssd_get_dmsg(dev); + + if (dev->protocol_info.ver < SSD_PROTOCOL_V3) { + fmsg = (struct ssd_flush_msg *)msg; + + fmsg->fun = SSD_FUNC_FLUSH; + fmsg->flag = 0; + fmsg->ctrl_idx = 0; + fmsg->flash = 0; + } else { + msg->fun = SSD_FUNC_FLUSH; + msg->flag = 0; + msg->ctrl_idx = 0; + msg->chip_no = 0; + } + + ret = ssd_do_barrier_request(dev, WRITE, msg, NULL); + ssd_put_dmsg(msg); + + return ret; +} + +#define SSD_WMODE_BUFFER_TIMEOUT 0x00c82710 +#define SSD_WMODE_BUFFER_EX_TIMEOUT 0x000500c8 +#define SSD_WMODE_FUA_TIMEOUT 0x000503E8 +static void ssd_set_flush_timeout(struct ssd_device *dev, int m) +{ + uint32_t to; + uint32_t val = 0; + + if (dev->protocol_info.ver < SSD_PROTOCOL_V3_1_1) { + return; + } + + switch(m) { + case SSD_WMODE_BUFFER: + to = SSD_WMODE_BUFFER_TIMEOUT; + break; + case SSD_WMODE_BUFFER_EX: + if (dev->protocol_info.ver < SSD_PROTOCOL_V3_2_1) { + to = SSD_WMODE_BUFFER_EX_TIMEOUT; + } else { + to = SSD_WMODE_BUFFER_TIMEOUT; + } + break; + case SSD_WMODE_FUA: + to = SSD_WMODE_FUA_TIMEOUT; + break; + default: + return; + } + + val = (((uint32_t)((uint32_t)m & 0x3) << 28) | to); + + ssd_reg32_write(dev->ctrlp + SSD_FLUSH_TIMEOUT_REG, val); +} + +static int ssd_do_switch_wmode(struct ssd_device *dev, int m) +{ + int ret = 0; + + ret = ssd_barrier_start(dev); + if (ret) { + goto out; + } + + ret = ssd_barrier_flush(dev); + if (ret) { + goto out_barrier_end; + } + + /* set contoller flush timeout */ + ssd_set_flush_timeout(dev, m); + + dev->wmode = m; + mb(); + +out_barrier_end: + ssd_barrier_end(dev); +out: + return ret; +} + +static int ssd_switch_wmode(struct ssd_device *dev, int m) +{ + int default_wmode; + int next_wmode; + int ret = 0; + + if (!test_bit(SSD_ONLINE, &dev->state)) { + return -ENODEV; + } + + if (dev->protocol_info.ver < SSD_PROTOCOL_V3_2) { + default_wmode = SSD_WMODE_BUFFER; + } else { + default_wmode = SSD_WMODE_BUFFER_EX; + } + + if (SSD_WMODE_AUTO == m) { + /* battery fault ? */ + if (test_bit(SSD_HWMON_PL_CAP(SSD_PL_CAP), &dev->hwmon)) { + next_wmode = SSD_WMODE_FUA; + } else { + next_wmode = default_wmode; + } + } else if (SSD_WMODE_DEFAULT == m) { + next_wmode = default_wmode; + } else { + next_wmode = m; + } + + if (next_wmode != dev->wmode) { + hio_warn("%s: switch write mode (%d -> %d)\n", dev->name, dev->wmode, next_wmode); + ret = ssd_do_switch_wmode(dev, next_wmode); + if (ret) { + hio_err("%s: can not switch write mode (%d -> %d)\n", dev->name, dev->wmode, next_wmode); + } + } + + return ret; +} + +static int ssd_init_wmode(struct ssd_device *dev) +{ + int default_wmode; + int ret = 0; + + if (dev->protocol_info.ver < SSD_PROTOCOL_V3_2) { + default_wmode = SSD_WMODE_BUFFER; + } else { + default_wmode = SSD_WMODE_BUFFER_EX; + } + + /* dummy mode */ + if (SSD_WMODE_AUTO == dev->user_wmode) { + /* battery fault ? */ + if (test_bit(SSD_HWMON_PL_CAP(SSD_PL_CAP), &dev->hwmon)) { + dev->wmode = SSD_WMODE_FUA; + } else { + dev->wmode = default_wmode; + } + } else if (SSD_WMODE_DEFAULT == dev->user_wmode) { + dev->wmode = default_wmode; + } else { + dev->wmode = dev->user_wmode; + } + ssd_set_flush_timeout(dev, dev->wmode); + + return ret; +} + +static int __ssd_set_wmode(struct ssd_device *dev, int m) +{ + int ret = 0; + + /* not support old fw*/ + if (dev->protocol_info.ver < SSD_PROTOCOL_V3_1_1) { + ret = -EOPNOTSUPP; + goto out; + } + + if (m < SSD_WMODE_BUFFER || m > SSD_WMODE_DEFAULT) { + ret = -EINVAL; + goto out; + } + + ssd_gen_swlog(dev, SSD_LOG_SET_WMODE, m); + + dev->user_wmode = m; + + ret = ssd_switch_wmode(dev, dev->user_wmode); + if (ret) { + goto out; + } + +out: + return ret; +} + +int ssd_set_wmode(struct block_device *bdev, int m) +{ + struct ssd_device *dev; + + if (!bdev || !(bdev->bd_disk)) { + return -EINVAL; + } + + dev = bdev->bd_disk->private_data; + + return __ssd_set_wmode(dev, m); +} + +static int ssd_do_reset(struct ssd_device *dev) +{ + int ret = 0; + + if (test_and_set_bit(SSD_RESETING, &dev->state)) { + return 0; + } + + ssd_stop_workq(dev); + + ret = ssd_barrier_start(dev); + if (ret) { + goto out; + } + + if (dev->protocol_info.ver < SSD_PROTOCOL_V3_2) { + /* old reset */ + ret = __ssd_reset(dev, SSD_RST_NORMAL); + } else { + /* full reset */ + //ret = __ssd_reset(dev, SSD_RST_FULL); + ret = __ssd_reset(dev, SSD_RST_NORMAL); + } + if (ret) { + goto out_barrier_end; + } + +out_barrier_end: + ssd_barrier_end(dev); +out: + ssd_start_workq(dev); + test_and_clear_bit(SSD_RESETING, &dev->state); + return ret; +} + +static int ssd_full_reset(struct ssd_device *dev) +{ + int ret = 0; + + if (test_and_set_bit(SSD_RESETING, &dev->state)) { + return 0; + } + + ssd_stop_workq(dev); + + ret = ssd_barrier_start(dev); + if (ret) { + goto out; + } + + ret = ssd_barrier_flush(dev); + if (ret) { + goto out_barrier_end; + } + + ret = ssd_barrier_save_md(dev); + if (ret) { + goto out_barrier_end; + } + + if (dev->protocol_info.ver < SSD_PROTOCOL_V3_2) { + /* old reset */ + ret = __ssd_reset(dev, SSD_RST_NORMAL); + } else { + /* full reset */ + //ret = __ssd_reset(dev, SSD_RST_FULL); + ret = __ssd_reset(dev, SSD_RST_NORMAL); + } + if (ret) { + goto out_barrier_end; + } + +out_barrier_end: + ssd_barrier_end(dev); +out: + ssd_start_workq(dev); + test_and_clear_bit(SSD_RESETING, &dev->state); + return ret; +} + +int ssd_reset(struct block_device *bdev) +{ + int ret; + struct ssd_device *dev; + + if (!bdev || !(bdev->bd_disk)) { + return -EINVAL; + } + + dev = bdev->bd_disk->private_data; + + ret = ssd_full_reset(dev); + if (!ret) { + if (!dev->has_non_0x98_reg_access) { + ssd_reg32_write(dev->ctrlp + SSD_RELOAD_FW_REG, 0); + } + } + + return ret ; +} + +#if (LINUX_VERSION_CODE < KERNEL_VERSION(2,6,20)) +static int ssd_issue_flush_fn(struct request_queue *q, struct gendisk *disk, + sector_t *error_sector) +{ + struct ssd_device *dev = q->queuedata; + + return ssd_flush(dev); +} +#endif + +void ssd_submit_pbio(struct request_queue *q, struct bio *bio) +{ + struct ssd_device *dev = q->queuedata; +#ifdef SSD_QUEUE_PBIO + int ret = -EBUSY; +#endif + + if (!test_bit(SSD_ONLINE, &dev->state)) { + ssd_bio_endio(bio, -ENODEV); + goto out; + } + +#ifdef SSD_DEBUG_ERR + if (atomic_read(&dev->tocnt)) { + hio_warn("%s: IO rejected because of IO timeout!\n", dev->name); + ssd_bio_endio(bio, -EIO); + goto out; + } +#endif + + if (unlikely(ssd_bio_has_barrier_or_fua(bio))) { + ssd_bio_endio(bio, -EOPNOTSUPP); + goto out; + } + + if (unlikely(dev->readonly && bio_data_dir(bio) == WRITE)) { + ssd_bio_endio(bio, -EROFS); + goto out; + } + +#ifdef SSD_QUEUE_PBIO + if (0 == atomic_read(&dev->in_sendq)) { + ret = __ssd_submit_pbio(dev, bio, 0); + } + + if (ret) { + (void)test_and_set_bit(BIO_SSD_PBIO, &bio->bi_flags); + ssd_queue_bio(dev, bio); + } +#else + __ssd_submit_pbio(dev, bio, 1); +#endif + +out: + return; +} + +#if (LINUX_VERSION_CODE >= KERNEL_VERSION(4,4,0)) +static blk_qc_t ssd_make_request(struct request_queue *q, struct bio *bio) +#elif (LINUX_VERSION_CODE >= KERNEL_VERSION(3,2,0)) +static void ssd_make_request(struct request_queue *q, struct bio *bio) +#else +static int ssd_make_request(struct request_queue *q, struct bio *bio) +#endif +{ + struct ssd_device *dev = q->queuedata; + int ret = -EBUSY; + + if (!test_bit(SSD_ONLINE, &dev->state)) { + ssd_bio_endio(bio, -ENODEV); + goto out; + } + +#if (LINUX_VERSION_CODE >= KERNEL_VERSION(4,13,0)) + blk_queue_split(q, &bio); +#elif (LINUX_VERSION_CODE >= KERNEL_VERSION(4,3,0)) + blk_queue_split(q, &bio, q->bio_split); +#endif + +#ifdef SSD_DEBUG_ERR + if (atomic_read(&dev->tocnt)) { + hio_warn("%s: IO rejected because of IO timeout!\n", dev->name); + ssd_bio_endio(bio, -EIO); + goto out; + } +#endif + + if (unlikely(ssd_bio_has_barrier_or_fua(bio))) { + ssd_bio_endio(bio, -EOPNOTSUPP); + goto out; + } + + /* writeback_cache_control.txt: REQ_FLUSH requests without data can be completed successfully without doing any work */ + if (unlikely(ssd_bio_has_flush(bio) && !bio_sectors(bio))) { + ssd_bio_endio(bio, 0); + goto out; + } + + if (0 == atomic_read(&dev->in_sendq)) { + ret = ssd_submit_bio(dev, bio, 0); + } + + if (ret) { + ssd_queue_bio(dev, bio); + } + +out: +#if (LINUX_VERSION_CODE >= KERNEL_VERSION(4,4,0)) + return BLK_QC_T_NONE; +#elif (LINUX_VERSION_CODE >= KERNEL_VERSION(3,2,0)) + return; +#else + return 0; +#endif +} + +#if (LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,16)) +static int ssd_block_getgeo(struct block_device *bdev, struct hd_geometry *geo) +{ + struct ssd_device *dev; + + if (!bdev) { + return -EINVAL; + } + + dev = bdev->bd_disk->private_data; + if (!dev) { + return -EINVAL; + } + + geo->heads = 4; + geo->sectors = 16; + geo->cylinders = (dev->hw_info.size & ~0x3f) >> 6; + return 0; +} +#endif + +static int ssd_init_queue(struct ssd_device *dev); +static void ssd_cleanup_queue(struct ssd_device *dev); +static void ssd_cleanup_blkdev(struct ssd_device *dev); +static int ssd_init_blkdev(struct ssd_device *dev); +static int ssd_ioctl_common(struct ssd_device *dev, unsigned int cmd, unsigned long arg) +{ + void __user *argp = (void __user *)arg; + void __user *buf = NULL; + void *kbuf = NULL; + int ret = 0; + + switch (cmd) { + case SSD_CMD_GET_PROTOCOL_INFO: + if (copy_to_user(argp, &dev->protocol_info, sizeof(struct ssd_protocol_info))) { + hio_warn("%s: copy_to_user: failed\n", dev->name); + ret = -EFAULT; + break; + } + break; + + case SSD_CMD_GET_HW_INFO: + if (copy_to_user(argp, &dev->hw_info, sizeof(struct ssd_hw_info))) { + hio_warn("%s: copy_to_user: failed\n", dev->name); + ret = -EFAULT; + break; + } + break; + + case SSD_CMD_GET_ROM_INFO: + if (copy_to_user(argp, &dev->rom_info, sizeof(struct ssd_rom_info))) { + hio_warn("%s: copy_to_user: failed\n", dev->name); + ret = -EFAULT; + break; + } + break; + + case SSD_CMD_GET_SMART: { + struct ssd_smart smart; + int i; + + memcpy(&smart, &dev->smart, sizeof(struct ssd_smart)); + + mutex_lock(&dev->gd_mutex); + ssd_update_smart(dev, &smart); + mutex_unlock(&dev->gd_mutex); + + /* combine the volatile log info */ + if (dev->log_info.nr_log) { + for (i=0; ilog_info.stat[i]; + } + } + + if (copy_to_user(argp, &smart, sizeof(struct ssd_smart))) { + hio_warn("%s: copy_to_user: failed\n", dev->name); + ret = -EFAULT; + break; + } + + break; + } + + case SSD_CMD_GET_IDX: + if (copy_to_user(argp, &dev->idx, sizeof(int))) { + hio_warn("%s: copy_to_user: failed\n", dev->name); + ret = -EFAULT; + break; + } + break; + + case SSD_CMD_GET_AMOUNT: { + int nr_ssd = atomic_read(&ssd_nr); + if (copy_to_user(argp, &nr_ssd, sizeof(int))) { + hio_warn("%s: copy_to_user: failed\n", dev->name); + ret = -EFAULT; + break; + } + break; + } + + case SSD_CMD_GET_TO_INFO: { + int tocnt = atomic_read(&dev->tocnt); + + if (copy_to_user(argp, &tocnt, sizeof(int))) { + hio_warn("%s: copy_to_user: failed\n", dev->name); + ret = -EFAULT; + break; + } + break; + } + + case SSD_CMD_GET_DRV_VER: { + char ver[] = DRIVER_VERSION; + int len = sizeof(ver); + + if (len > (DRIVER_VERSION_LEN - 1)) { + len = (DRIVER_VERSION_LEN - 1); + } + if (copy_to_user(argp, ver, len)) { + hio_warn("%s: copy_to_user: failed\n", dev->name); + ret = -EFAULT; + break; + } + break; + } + + case SSD_CMD_GET_BBACC_INFO: { + struct ssd_acc_info acc; + + mutex_lock(&dev->fw_mutex); + ret = ssd_bb_acc(dev, &acc); + mutex_unlock(&dev->fw_mutex); + if (ret) { + break; + } + + if (copy_to_user(argp, &acc, sizeof(struct ssd_acc_info))) { + hio_warn("%s: copy_to_user: failed\n", dev->name); + ret = -EFAULT; + break; + } + break; + } + + case SSD_CMD_GET_ECACC_INFO: { + struct ssd_acc_info acc; + + mutex_lock(&dev->fw_mutex); + ret = ssd_ec_acc(dev, &acc); + mutex_unlock(&dev->fw_mutex); + if (ret) { + break; + } + + if (copy_to_user(argp, &acc, sizeof(struct ssd_acc_info))) { + hio_warn("%s: copy_to_user: failed\n", dev->name); + ret = -EFAULT; + break; + } + break; + } + + case SSD_CMD_GET_HW_INFO_EXT: + if (copy_to_user(argp, &dev->hw_info_ext, sizeof(struct ssd_hw_info_extend))) { + hio_warn("%s: copy_to_user: failed\n", dev->name); + ret = -EFAULT; + break; + } + break; + + case SSD_CMD_REG_READ: { + struct ssd_reg_op_info reg_info; + + if (copy_from_user(®_info, argp, sizeof(struct ssd_reg_op_info))) { + hio_warn("%s: copy_from_user: failed\n", dev->name); + ret = -EFAULT; + break; + } + + if (reg_info.offset > dev->mmio_len-sizeof(uint32_t)) { + ret = -EINVAL; + break; + } + + reg_info.value = ssd_reg32_read(dev->ctrlp + reg_info.offset); + if (copy_to_user(argp, ®_info, sizeof(struct ssd_reg_op_info))) { + hio_warn("%s: copy_to_user: failed\n", dev->name); + ret = -EFAULT; + break; + } + + break; + } + + case SSD_CMD_REG_WRITE: { + struct ssd_reg_op_info reg_info; + + if (copy_from_user(®_info, argp, sizeof(struct ssd_reg_op_info))) { + hio_warn("%s: copy_from_user: failed\n", dev->name); + ret = -EFAULT; + break; + } + + if (reg_info.offset > dev->mmio_len-sizeof(uint32_t)) { + ret = -EINVAL; + break; + } + + ssd_reg32_write(dev->ctrlp + reg_info.offset, reg_info.value); + + break; + } + + case SSD_CMD_SPI_READ: { + struct ssd_spi_op_info spi_info; + uint32_t off, size; + + if (copy_from_user(&spi_info, argp, sizeof(struct ssd_spi_op_info))) { + hio_warn("%s: copy_from_user: failed\n", dev->name); + ret = -EFAULT; + break; + } + + off = spi_info.off; + size = spi_info.len; + buf = spi_info.buf; + + if (size > dev->rom_info.size || 0 == size || (off + size) > dev->rom_info.size) { + ret = -EINVAL; + break; + } + + kbuf = kmalloc(size, GFP_KERNEL); + if (!kbuf) { + ret = -ENOMEM; + break; + } + + ret = ssd_spi_page_read(dev, kbuf, off, size); + if (ret) { + kfree(kbuf); + break; + } + + if (copy_to_user(buf, kbuf, size)) { + hio_warn("%s: copy_to_user: failed\n", dev->name); + kfree(kbuf); + ret = -EFAULT; + break; + } + + kfree(kbuf); + + break; + } + + case SSD_CMD_SPI_WRITE: { + struct ssd_spi_op_info spi_info; + uint32_t off, size; + + if (copy_from_user(&spi_info, argp, sizeof(struct ssd_spi_op_info))) { + hio_warn("%s: copy_from_user: failed\n", dev->name); + ret = -EFAULT; + break; + } + + off = spi_info.off; + size = spi_info.len; + buf = spi_info.buf; + + if (size > dev->rom_info.size || 0 == size || (off + size) > dev->rom_info.size) { + ret = -EINVAL; + break; + } + + kbuf = kmalloc(size, GFP_KERNEL); + if (!kbuf) { + ret = -ENOMEM; + break; + } + + if (copy_from_user(kbuf, buf, size)) { + hio_warn("%s: copy_from_user: failed\n", dev->name); + kfree(kbuf); + ret = -EFAULT; + break; + } + + ret = ssd_spi_page_write(dev, kbuf, off, size); + if (ret) { + kfree(kbuf); + break; + } + + kfree(kbuf); + + break; + } + + case SSD_CMD_SPI_ERASE: { + struct ssd_spi_op_info spi_info; + uint32_t off; + + if (copy_from_user(&spi_info, argp, sizeof(struct ssd_spi_op_info))) { + hio_warn("%s: copy_from_user: failed\n", dev->name); + ret = -EFAULT; + break; + } + + off = spi_info.off; + + if ((off + dev->rom_info.block_size) > dev->rom_info.size) { + ret = -EINVAL; + break; + } + + ret = ssd_spi_block_erase(dev, off); + if (ret) { + break; + } + + break; + } + + case SSD_CMD_I2C_READ: { + struct ssd_i2c_op_info i2c_info; + uint8_t saddr; + uint8_t rsize; + + if (copy_from_user(&i2c_info, argp, sizeof(struct ssd_i2c_op_info))) { + hio_warn("%s: copy_from_user: failed\n", dev->name); + ret = -EFAULT; + break; + } + + saddr = i2c_info.saddr; + rsize = i2c_info.rsize; + buf = i2c_info.rbuf; + + if (rsize <= 0 || rsize > SSD_I2C_MAX_DATA) { + ret = -EINVAL; + break; + } + + kbuf = kmalloc(rsize, GFP_KERNEL); + if (!kbuf) { + ret = -ENOMEM; + break; + } + + ret = ssd_i2c_read(dev, saddr, rsize, kbuf); + if (ret) { + kfree(kbuf); + break; + } + + if (copy_to_user(buf, kbuf, rsize)) { + hio_warn("%s: copy_to_user: failed\n", dev->name); + kfree(kbuf); + ret = -EFAULT; + break; + } + + kfree(kbuf); + + break; + } + + case SSD_CMD_I2C_WRITE: { + struct ssd_i2c_op_info i2c_info; + uint8_t saddr; + uint8_t wsize; + + if (copy_from_user(&i2c_info, argp, sizeof(struct ssd_i2c_op_info))) { + hio_warn("%s: copy_from_user: failed\n", dev->name); + ret = -EFAULT; + break; + } + + saddr = i2c_info.saddr; + wsize = i2c_info.wsize; + buf = i2c_info.wbuf; + + if (wsize <= 0 || wsize > SSD_I2C_MAX_DATA) { + ret = -EINVAL; + break; + } + + kbuf = kmalloc(wsize, GFP_KERNEL); + if (!kbuf) { + ret = -ENOMEM; + break; + } + + if (copy_from_user(kbuf, buf, wsize)) { + hio_warn("%s: copy_from_user: failed\n", dev->name); + kfree(kbuf); + ret = -EFAULT; + break; + } + + ret = ssd_i2c_write(dev, saddr, wsize, kbuf); + if (ret) { + kfree(kbuf); + break; + } + + kfree(kbuf); + + break; + } + + case SSD_CMD_I2C_WRITE_READ: { + struct ssd_i2c_op_info i2c_info; + uint8_t saddr; + uint8_t wsize; + uint8_t rsize; + uint8_t size; + + if (copy_from_user(&i2c_info, argp, sizeof(struct ssd_i2c_op_info))) { + hio_warn("%s: copy_from_user: failed\n", dev->name); + ret = -EFAULT; + break; + } + + saddr = i2c_info.saddr; + wsize = i2c_info.wsize; + rsize = i2c_info.rsize; + buf = i2c_info.wbuf; + + if (wsize <= 0 || wsize > SSD_I2C_MAX_DATA) { + ret = -EINVAL; + break; + } + + if (rsize <= 0 || rsize > SSD_I2C_MAX_DATA) { + ret = -EINVAL; + break; + } + + size = wsize + rsize; + + kbuf = kmalloc(size, GFP_KERNEL); + if (!kbuf) { + ret = -ENOMEM; + break; + } + + if (copy_from_user((kbuf + rsize), buf, wsize)) { + hio_warn("%s: copy_from_user: failed\n", dev->name); + kfree(kbuf); + ret = -EFAULT; + break; + } + + buf = i2c_info.rbuf; + + ret = ssd_i2c_write_read(dev, saddr, wsize, (kbuf + rsize), rsize, kbuf); + if (ret) { + kfree(kbuf); + break; + } + + if (copy_to_user(buf, kbuf, rsize)) { + hio_warn("%s: copy_to_user: failed\n", dev->name); + kfree(kbuf); + ret = -EFAULT; + break; + } + + kfree(kbuf); + + break; + } + + case SSD_CMD_SMBUS_SEND_BYTE: { + struct ssd_smbus_op_info smbus_info; + uint8_t smb_data[SSD_SMBUS_BLOCK_MAX]; + uint8_t saddr; + uint8_t size; + + if (copy_from_user(&smbus_info, argp, sizeof(struct ssd_smbus_op_info))) { + hio_warn("%s: copy_from_user: failed\n", dev->name); + ret = -EFAULT; + break; + } + + saddr = smbus_info.saddr; + buf = smbus_info.buf; + size = 1; + + if (copy_from_user(smb_data, buf, size)) { + hio_warn("%s: copy_from_user: failed\n", dev->name); + ret = -EFAULT; + break; + } + + ret = ssd_smbus_send_byte(dev, saddr, smb_data); + if (ret) { + break; + } + + break; + } + + case SSD_CMD_SMBUS_RECEIVE_BYTE: { + struct ssd_smbus_op_info smbus_info; + uint8_t smb_data[SSD_SMBUS_BLOCK_MAX]; + uint8_t saddr; + uint8_t size; + + if (copy_from_user(&smbus_info, argp, sizeof(struct ssd_smbus_op_info))) { + hio_warn("%s: copy_from_user: failed\n", dev->name); + ret = -EFAULT; + break; + } + + saddr = smbus_info.saddr; + buf = smbus_info.buf; + size = 1; + + ret = ssd_smbus_receive_byte(dev, saddr, smb_data); + if (ret) { + break; + } + + if (copy_to_user(buf, smb_data, size)) { + hio_warn("%s: copy_to_user: failed\n", dev->name); + ret = -EFAULT; + break; + } + + break; + } + + case SSD_CMD_SMBUS_WRITE_BYTE: { + struct ssd_smbus_op_info smbus_info; + uint8_t smb_data[SSD_SMBUS_BLOCK_MAX]; + uint8_t saddr; + uint8_t command; + uint8_t size; + + if (copy_from_user(&smbus_info, argp, sizeof(struct ssd_smbus_op_info))) { + hio_warn("%s: copy_from_user: failed\n", dev->name); + ret = -EFAULT; + break; + } + + saddr = smbus_info.saddr; + command = smbus_info.cmd; + buf = smbus_info.buf; + size = 1; + + if (copy_from_user(smb_data, buf, size)) { + hio_warn("%s: copy_from_user: failed\n", dev->name); + ret = -EFAULT; + break; + } + + ret = ssd_smbus_write_byte(dev, saddr, command, smb_data); + if (ret) { + break; + } + + break; + } + + case SSD_CMD_SMBUS_READ_BYTE: { + struct ssd_smbus_op_info smbus_info; + uint8_t smb_data[SSD_SMBUS_BLOCK_MAX]; + uint8_t saddr; + uint8_t command; + uint8_t size; + + if (copy_from_user(&smbus_info, argp, sizeof(struct ssd_smbus_op_info))) { + hio_warn("%s: copy_from_user: failed\n", dev->name); + ret = -EFAULT; + break; + } + + saddr = smbus_info.saddr; + command = smbus_info.cmd; + buf = smbus_info.buf; + size = 1; + + ret = ssd_smbus_read_byte(dev, saddr, command, smb_data); + if (ret) { + break; + } + + if (copy_to_user(buf, smb_data, size)) { + hio_warn("%s: copy_to_user: failed\n", dev->name); + ret = -EFAULT; + break; + } + + break; + } + + case SSD_CMD_SMBUS_WRITE_WORD: { + struct ssd_smbus_op_info smbus_info; + uint8_t smb_data[SSD_SMBUS_BLOCK_MAX]; + uint8_t saddr; + uint8_t command; + uint8_t size; + + if (copy_from_user(&smbus_info, argp, sizeof(struct ssd_smbus_op_info))) { + hio_warn("%s: copy_from_user: failed\n", dev->name); + ret = -EFAULT; + break; + } + + saddr = smbus_info.saddr; + command = smbus_info.cmd; + buf = smbus_info.buf; + size = 2; + + if (copy_from_user(smb_data, buf, size)) { + hio_warn("%s: copy_from_user: failed\n", dev->name); + ret = -EFAULT; + break; + } + + ret = ssd_smbus_write_word(dev, saddr, command, smb_data); + if (ret) { + break; + } + + break; + } + + case SSD_CMD_SMBUS_READ_WORD: { + struct ssd_smbus_op_info smbus_info; + uint8_t smb_data[SSD_SMBUS_BLOCK_MAX]; + uint8_t saddr; + uint8_t command; + uint8_t size; + + if (copy_from_user(&smbus_info, argp, sizeof(struct ssd_smbus_op_info))) { + hio_warn("%s: copy_from_user: failed\n", dev->name); + ret = -EFAULT; + break; + } + + saddr = smbus_info.saddr; + command = smbus_info.cmd; + buf = smbus_info.buf; + size = 2; + + ret = ssd_smbus_read_word(dev, saddr, command, smb_data); + if (ret) { + break; + } + + if (copy_to_user(buf, smb_data, size)) { + hio_warn("%s: copy_to_user: failed\n", dev->name); + ret = -EFAULT; + break; + } + + break; + } + + case SSD_CMD_SMBUS_WRITE_BLOCK: { + struct ssd_smbus_op_info smbus_info; + uint8_t smb_data[SSD_SMBUS_BLOCK_MAX]; + uint8_t saddr; + uint8_t command; + uint8_t size; + + if (copy_from_user(&smbus_info, argp, sizeof(struct ssd_smbus_op_info))) { + hio_warn("%s: copy_from_user: failed\n", dev->name); + ret = -EFAULT; + break; + } + + saddr = smbus_info.saddr; + command = smbus_info.cmd; + buf = smbus_info.buf; + size = smbus_info.size; + + if (size > SSD_SMBUS_BLOCK_MAX) { + ret = -EINVAL; + break; + } + + if (copy_from_user(smb_data, buf, size)) { + hio_warn("%s: copy_from_user: failed\n", dev->name); + ret = -EFAULT; + break; + } + + ret = ssd_smbus_write_block(dev, saddr, command, size, smb_data); + if (ret) { + break; + } + + break; + } + + case SSD_CMD_SMBUS_READ_BLOCK: { + struct ssd_smbus_op_info smbus_info; + uint8_t smb_data[SSD_SMBUS_BLOCK_MAX]; + uint8_t saddr; + uint8_t command; + uint8_t size; + + if (copy_from_user(&smbus_info, argp, sizeof(struct ssd_smbus_op_info))) { + hio_warn("%s: copy_from_user: failed\n", dev->name); + ret = -EFAULT; + break; + } + + saddr = smbus_info.saddr; + command = smbus_info.cmd; + buf = smbus_info.buf; + size = smbus_info.size; + + if (size > SSD_SMBUS_BLOCK_MAX) { + ret = -EINVAL; + break; + } + + ret = ssd_smbus_read_block(dev, saddr, command, size, smb_data); + if (ret) { + break; + } + + if (copy_to_user(buf, smb_data, size)) { + hio_warn("%s: copy_to_user: failed\n", dev->name); + ret = -EFAULT; + break; + } + + break; + } + + case SSD_CMD_BM_GET_VER: { + uint16_t ver; + + ret = ssd_bm_get_version(dev, &ver); + if (ret) { + break; + } + + if (copy_to_user(argp, &ver, sizeof(uint16_t))) { + hio_warn("%s: copy_to_user: failed\n", dev->name); + ret = -EFAULT; + break; + } + + break; + } + + case SSD_CMD_BM_GET_NR_CAP: { + int nr_cap; + + ret = ssd_bm_nr_cap(dev, &nr_cap); + if (ret) { + break; + } + + if (copy_to_user(argp, &nr_cap, sizeof(int))) { + hio_warn("%s: copy_to_user: failed\n", dev->name); + ret = -EFAULT; + break; + } + + break; + } + + case SSD_CMD_BM_CAP_LEARNING: { + ret = ssd_bm_enter_cap_learning(dev); + + if (ret) { + break; + } + + break; + } + + case SSD_CMD_CAP_LEARN: { + uint32_t cap = 0; + + ret = ssd_cap_learn(dev, &cap); + if (ret) { + break; + } + + if (copy_to_user(argp, &cap, sizeof(uint32_t))) { + hio_warn("%s: copy_to_user: failed\n", dev->name); + ret = -EFAULT; + break; + } + + break; + } + + case SSD_CMD_GET_CAP_STATUS: { + int cap_status = 0; + + if (test_bit(SSD_HWMON_PL_CAP(SSD_PL_CAP), &dev->hwmon)) { + cap_status = 1; + } + + if (copy_to_user(argp, &cap_status, sizeof(int))) { + hio_warn("%s: copy_to_user: failed\n", dev->name); + ret = -EFAULT; + break; + } + + break; + } + + case SSD_CMD_RAM_READ: { + struct ssd_ram_op_info ram_info; + uint64_t ofs; + uint32_t length; + size_t rlen, len = dev->hw_info.ram_max_len; + int ctrl_idx; + + if (copy_from_user(&ram_info, argp, sizeof(struct ssd_ram_op_info))) { + hio_warn("%s: copy_from_user: failed\n", dev->name); + ret = -EFAULT; + break; + } + + ofs = ram_info.start; + length = ram_info.length; + buf = ram_info.buf; + ctrl_idx = ram_info.ctrl_idx; + + if (ofs >= dev->hw_info.ram_size || length > dev->hw_info.ram_size || 0 == length || (ofs + length) > dev->hw_info.ram_size) { + ret = -EINVAL; + break; + } + + kbuf = kmalloc(len, GFP_KERNEL); + if (!kbuf) { + ret = -ENOMEM; + break; + } + + for (rlen=0; rlenhw_info.ram_max_len; + int ctrl_idx; + + if (copy_from_user(&ram_info, argp, sizeof(struct ssd_ram_op_info))) { + hio_warn("%s: copy_from_user: failed\n", dev->name); + ret = -EFAULT; + break; + } + ofs = ram_info.start; + length = ram_info.length; + buf = ram_info.buf; + ctrl_idx = ram_info.ctrl_idx; + + if (ofs >= dev->hw_info.ram_size || length > dev->hw_info.ram_size || 0 == length || (ofs + length) > dev->hw_info.ram_size) { + ret = -EINVAL; + break; + } + + kbuf = kmalloc(len, GFP_KERNEL); + if (!kbuf) { + ret = -ENOMEM; + break; + } + + for (wlen=0; wlenname); + ret = -EFAULT; + break; + } + + chip_no = flash_info.flash; + chip_ce = flash_info.chip; + ctrl_idx = flash_info.ctrl_idx; + buf = flash_info.buf; + length = dev->hw_info.id_size; + + //kbuf = kmalloc(length, GFP_KERNEL); + kbuf = kmalloc(SSD_NAND_ID_BUFF_SZ, GFP_KERNEL); //xx + if (!kbuf) { + ret = -ENOMEM; + break; + } + memset(kbuf, 0, length); + + ret = ssd_nand_read_id(dev, kbuf, chip_no, chip_ce, ctrl_idx); + if (ret) { + kfree(kbuf); + break; + } + + if (copy_to_user(buf, kbuf, length)) { + kfree(kbuf); + ret = -EFAULT; + break; + } + + kfree(kbuf); + + break; + } + + case SSD_CMD_NAND_READ: { //with oob + struct ssd_flash_op_info flash_info; + uint32_t length; + int flash, chip, page, ctrl_idx; + int err = 0; + + if (copy_from_user(&flash_info, argp, sizeof(struct ssd_flash_op_info))) { + hio_warn("%s: copy_from_user: failed\n", dev->name); + ret = -EFAULT; + break; + } + + flash = flash_info.flash; + chip = flash_info.chip; + page = flash_info.page; + buf = flash_info.buf; + ctrl_idx = flash_info.ctrl_idx; + + length = dev->hw_info.page_size + dev->hw_info.oob_size; + + kbuf = kmalloc(length, GFP_KERNEL); + if (!kbuf) { + ret = -ENOMEM; + break; + } + + err = ret = ssd_nand_read_w_oob(dev, kbuf, flash, chip, page, 1, ctrl_idx); + if (ret && (-EIO != ret)) { + kfree(kbuf); + break; + } + + if (copy_to_user(buf, kbuf, length)) { + kfree(kbuf); + ret = -EFAULT; + break; + } + + ret = err; + + kfree(kbuf); + break; + } + + case SSD_CMD_NAND_WRITE: { + struct ssd_flash_op_info flash_info; + int flash, chip, page, ctrl_idx; + uint32_t length; + + if (copy_from_user(&flash_info, argp, sizeof(struct ssd_flash_op_info))) { + hio_warn("%s: copy_from_user: failed\n", dev->name); + ret = -EFAULT; + break; + } + + flash = flash_info.flash; + chip = flash_info.chip; + page = flash_info.page; + buf = flash_info.buf; + ctrl_idx = flash_info.ctrl_idx; + + length = dev->hw_info.page_size + dev->hw_info.oob_size; + + kbuf = kmalloc(length, GFP_KERNEL); + if (!kbuf) { + ret = -ENOMEM; + break; + } + + if (copy_from_user(kbuf, buf, length)) { + kfree(kbuf); + ret = -EFAULT; + break; + } + + ret = ssd_nand_write(dev, kbuf, flash, chip, page, 1, ctrl_idx); + if (ret) { + kfree(kbuf); + break; + } + + kfree(kbuf); + break; + } + + case SSD_CMD_NAND_ERASE: { + struct ssd_flash_op_info flash_info; + int flash, chip, page, ctrl_idx; + + if (copy_from_user(&flash_info, argp, sizeof(struct ssd_flash_op_info))) { + hio_warn("%s: copy_from_user: failed\n", dev->name); + ret = -EFAULT; + break; + } + + flash = flash_info.flash; + chip = flash_info.chip; + page = flash_info.page; + ctrl_idx = flash_info.ctrl_idx; + + if ((page % dev->hw_info.page_count) != 0) { + ret = -EINVAL; + break; + } + + //hio_warn("erase fs = %llx\n", ofs); + ret = ssd_nand_erase(dev, flash, chip, page, ctrl_idx); + if (ret) { + break; + } + + break; + } + + case SSD_CMD_NAND_READ_EXT: { //ingore EIO + struct ssd_flash_op_info flash_info; + uint32_t length; + int flash, chip, page, ctrl_idx; + + if (copy_from_user(&flash_info, argp, sizeof(struct ssd_flash_op_info))) { + hio_warn("%s: copy_from_user: failed\n", dev->name); + ret = -EFAULT; + break; + } + + flash = flash_info.flash; + chip = flash_info.chip; + page = flash_info.page; + buf = flash_info.buf; + ctrl_idx = flash_info.ctrl_idx; + + length = dev->hw_info.page_size + dev->hw_info.oob_size; + + kbuf = kmalloc(length, GFP_KERNEL); + if (!kbuf) { + ret = -ENOMEM; + break; + } + + ret = ssd_nand_read_w_oob(dev, kbuf, flash, chip, page, 1, ctrl_idx); + if (-EIO == ret) { //ingore EIO + ret = 0; + } + if (ret) { + kfree(kbuf); + break; + } + + if (copy_to_user(buf, kbuf, length)) { + kfree(kbuf); + ret = -EFAULT; + break; + } + + kfree(kbuf); + break; + } + + case SSD_CMD_UPDATE_BBT: { + struct ssd_flash_op_info flash_info; + int ctrl_idx, flash; + + if (copy_from_user(&flash_info, argp, sizeof(struct ssd_flash_op_info))) { + hio_warn("%s: copy_from_user: failed\n", dev->name); + ret = -EFAULT; + break; + } + + ctrl_idx = flash_info.ctrl_idx; + flash = flash_info.flash; + ret = ssd_update_bbt(dev, flash, ctrl_idx); + if (ret) { + break; + } + + break; + } + + case SSD_CMD_CLEAR_ALARM: + ssd_clear_alarm(dev); + break; + + case SSD_CMD_SET_ALARM: + ssd_set_alarm(dev); + break; + + case SSD_CMD_RESET: + ret = ssd_do_reset(dev); + break; + + case SSD_CMD_RELOAD_FW: + dev->reload_fw = 1; + dev->has_non_0x98_reg_access = 1; + if (dev->protocol_info.ver >= SSD_PROTOCOL_V3_2) { + ssd_reg32_write(dev->ctrlp + SSD_RELOAD_FW_REG, SSD_RELOAD_FLAG); + } else if (dev->protocol_info.ver >= SSD_PROTOCOL_V3_1_1) { + ssd_reg32_write(dev->ctrlp + SSD_RELOAD_FW_REG, SSD_RELOAD_FW); + + } + break; + + case SSD_CMD_UNLOAD_DEV: { + if (atomic_read(&dev->refcnt)) { + ret = -EBUSY; + break; + } + + /* save smart */ + ssd_save_smart(dev); + + ret = ssd_flush(dev); + if (ret) { + break; + } + + /* cleanup the block device */ + if (test_and_clear_bit(SSD_INIT_BD, &dev->state)) { + mutex_lock(&dev->gd_mutex); + ssd_cleanup_blkdev(dev); + ssd_cleanup_queue(dev); + mutex_unlock(&dev->gd_mutex); + } + + break; + } + + case SSD_CMD_LOAD_DEV: { + + if (test_bit(SSD_INIT_BD, &dev->state)) { + ret = -EINVAL; + break; + } + + ret = ssd_init_smart(dev); + if (ret) { + hio_warn("%s: init info: failed\n", dev->name); + break; + } + + ret = ssd_init_queue(dev); + if (ret) { + hio_warn("%s: init queue failed\n", dev->name); + break; + } + ret = ssd_init_blkdev(dev); + if (ret) { + hio_warn("%s: register block device: failed\n", dev->name); + break; + } + (void)test_and_set_bit(SSD_INIT_BD, &dev->state); + + break; + } + + case SSD_CMD_UPDATE_VP: { + uint32_t val; + uint32_t new_vp, new_vp1 = 0; + + if (test_bit(SSD_INIT_BD, &dev->state)) { + ret = -EINVAL; + break; + } + + if (copy_from_user(&new_vp, argp, sizeof(uint32_t))) { + hio_warn("%s: copy_from_user: failed\n", dev->name); + ret = -EFAULT; + break; + } + + if (new_vp > dev->hw_info.max_valid_pages || new_vp <= 0) { + ret = -EINVAL; + break; + } + + while (new_vp <= dev->hw_info.max_valid_pages) { + ssd_reg32_write(dev->ctrlp + SSD_VALID_PAGES_REG, new_vp); + msleep(10); + val = ssd_reg32_read(dev->ctrlp + SSD_VALID_PAGES_REG); + if (dev->protocol_info.ver < SSD_PROTOCOL_V3_2) { + new_vp1 = val & 0x3FF; + } else { + new_vp1 = val & 0x7FFF; + } + + if (new_vp1 == new_vp) { + break; + } + + new_vp++; + /*if (new_vp == dev->hw_info.valid_pages) { + new_vp++; + }*/ + } + + if (new_vp1 != new_vp || new_vp > dev->hw_info.max_valid_pages) { + /* restore */ + ssd_reg32_write(dev->ctrlp + SSD_VALID_PAGES_REG, dev->hw_info.valid_pages); + ret = -EINVAL; + break; + } + + if (copy_to_user(argp, &new_vp, sizeof(uint32_t))) { + hio_warn("%s: copy_to_user: failed\n", dev->name); + ssd_reg32_write(dev->ctrlp + SSD_VALID_PAGES_REG, dev->hw_info.valid_pages); + ret = -EFAULT; + break; + } + + /* new */ + dev->hw_info.valid_pages = new_vp; + dev->hw_info.size = (uint64_t)dev->hw_info.valid_pages * dev->hw_info.page_size; + dev->hw_info.size *= (dev->hw_info.block_count - dev->hw_info.reserved_blks); + dev->hw_info.size *= ((uint64_t)dev->hw_info.nr_data_ch * (uint64_t)dev->hw_info.nr_chip * (uint64_t)dev->hw_info.nr_ctrl); + + break; + } + + case SSD_CMD_FULL_RESET: { + ret = ssd_full_reset(dev); + break; + } + + case SSD_CMD_GET_NR_LOG: { + if (copy_to_user(argp, &dev->internal_log.nr_log, sizeof(dev->internal_log.nr_log))) { + ret = -EFAULT; + break; + } + break; + } + + case SSD_CMD_GET_LOG: { + uint32_t length = dev->rom_info.log_sz; + + buf = argp; + + if (copy_to_user(buf, dev->internal_log.log, length)) { + ret = -EFAULT; + break; + } + + break; + } + + case SSD_CMD_LOG_LEVEL: { + int level = 0; + if (copy_from_user(&level, argp, sizeof(int))) { + hio_warn("%s: copy_from_user: failed\n", dev->name); + ret = -EFAULT; + break; + } + + if (level >= SSD_LOG_NR_LEVEL || level < SSD_LOG_LEVEL_INFO) { + level = SSD_LOG_LEVEL_ERR; + } + + //just for showing log, no need to protect + log_level = level; + break; + } + + case SSD_CMD_OT_PROTECT: { + int protect = 0; + + if (copy_from_user(&protect, argp, sizeof(int))) { + hio_warn("%s: copy_from_user: failed\n", dev->name); + ret = -EFAULT; + break; + } + + ssd_set_ot_protect(dev, !!protect); + break; + } + + case SSD_CMD_GET_OT_STATUS: { + int status = ssd_get_ot_status(dev, &status); + + if (copy_to_user(argp, &status, sizeof(int))) { + hio_warn("%s: copy_to_user: failed\n", dev->name); + ret = -EFAULT; + break; + } + break; + } + + case SSD_CMD_CLEAR_LOG: { + ret = ssd_clear_log(dev); + break; + } + + case SSD_CMD_CLEAR_SMART: { + ret = ssd_clear_smart(dev); + break; + } + + case SSD_CMD_CLEAR_WARNING: { + ret = ssd_clear_warning(dev); + break; + } + + case SSD_CMD_SW_LOG: { + struct ssd_sw_log_info sw_log; + + if (copy_from_user(&sw_log, argp, sizeof(struct ssd_sw_log_info))) { + hio_warn("%s: copy_from_user: failed\n", dev->name); + ret = -EFAULT; + break; + } + + ret = ssd_gen_swlog(dev, sw_log.event, sw_log.data); + break; + } + + case SSD_CMD_GET_LABEL: { + + if (dev->protocol_info.ver >= SSD_PROTOCOL_V3_2) { + ret = -EINVAL; + break; + } + + if (copy_to_user(argp, &dev->label, sizeof(struct ssd_label))) { + hio_warn("%s: copy_to_user: failed\n", dev->name); + ret = -EFAULT; + break; + } + break; + } + + case SSD_CMD_GET_VERSION: { + struct ssd_version_info ver; + + mutex_lock(&dev->fw_mutex); + ret = __ssd_get_version(dev, &ver); + mutex_unlock(&dev->fw_mutex); + if (ret) { + break; + } + + if (copy_to_user(argp, &ver, sizeof(struct ssd_version_info))) { + hio_warn("%s: copy_to_user: failed\n", dev->name); + ret = -EFAULT; + break; + } + break; + } + + case SSD_CMD_GET_TEMPERATURE: { + int temp; + + mutex_lock(&dev->fw_mutex); + ret = __ssd_get_temperature(dev, &temp); + mutex_unlock(&dev->fw_mutex); + if (ret) { + break; + } + + if (copy_to_user(argp, &temp, sizeof(int))) { + hio_warn("%s: copy_to_user: failed\n", dev->name); + ret = -EFAULT; + break; + } + break; + } + + case SSD_CMD_GET_BMSTATUS: { + int status; + + mutex_lock(&dev->fw_mutex); + if (dev->protocol_info.ver >= SSD_PROTOCOL_V3_2) { + if (test_bit(SSD_HWMON_PL_CAP(SSD_PL_CAP), &dev->hwmon)) { + status = SSD_BMSTATUS_WARNING; + } else { + status = SSD_BMSTATUS_OK; + } + } else if(dev->protocol_info.ver > SSD_PROTOCOL_V3) { + ret = __ssd_bm_status(dev, &status); + } else { + status = SSD_BMSTATUS_OK; + } + mutex_unlock(&dev->fw_mutex); + if (ret) { + break; + } + + if (copy_to_user(argp, &status, sizeof(int))) { + hio_warn("%s: copy_to_user: failed\n", dev->name); + ret = -EFAULT; + break; + } + break; + } + + case SSD_CMD_GET_LABEL2: { + void *label; + int length; + + if (dev->protocol_info.ver < SSD_PROTOCOL_V3_2) { + label = &dev->label; + length = sizeof(struct ssd_label); + } else { + label = &dev->labelv3; + length = sizeof(struct ssd_labelv3); + } + + if (copy_to_user(argp, label, length)) { + ret = -EFAULT; + break; + } + break; + } + + case SSD_CMD_FLUSH: + ret = ssd_flush(dev); + if (ret) { + hio_warn("%s: ssd_flush: failed\n", dev->name); + ret = -EFAULT; + break; + } + break; + + case SSD_CMD_SAVE_MD: { + int save_md = 0; + + if (copy_from_user(&save_md, argp, sizeof(int))) { + hio_warn("%s: copy_from_user: failed\n", dev->name); + ret = -EFAULT; + break; + } + + dev->save_md = !!save_md; + break; + } + + case SSD_CMD_SET_WMODE: { + int new_wmode = 0; + + if (copy_from_user(&new_wmode, argp, sizeof(int))) { + hio_warn("%s: copy_from_user: failed\n", dev->name); + ret = -EFAULT; + break; + } + + ret = __ssd_set_wmode(dev, new_wmode); + if (ret) { + break; + } + + break; + } + + case SSD_CMD_GET_WMODE: { + if (copy_to_user(argp, &dev->wmode, sizeof(int))) { + hio_warn("%s: copy_to_user: failed\n", dev->name); + ret = -EFAULT; + break; + } + + break; + } + + case SSD_CMD_GET_USER_WMODE: { + if (copy_to_user(argp, &dev->user_wmode, sizeof(int))) { + hio_warn("%s: copy_to_user: failed\n", dev->name); + ret = -EFAULT; + break; + } + + break; + } + + case SSD_CMD_DEBUG: { + struct ssd_debug_info db_info; + + if (!finject) { + ret = -EOPNOTSUPP; + break; + } + + if (copy_from_user(&db_info, argp, sizeof(struct ssd_debug_info))) { + hio_warn("%s: copy_from_user: failed\n", dev->name); + ret = -EFAULT; + break; + } + + if (db_info.type < SSD_DEBUG_NONE || db_info.type >= SSD_DEBUG_NR) { + ret = -EINVAL; + break; + } + + /* IO */ + if (db_info.type >= SSD_DEBUG_READ_ERR && db_info.type <= SSD_DEBUG_RW_ERR && + (db_info.data.loc.off + db_info.data.loc.len) > (dev->hw_info.size >> 9)) { + ret = -EINVAL; + break; + } + + memcpy(&dev->db_info, &db_info, sizeof(struct ssd_debug_info)); + +#ifdef SSD_OT_PROTECT + /* temperature */ + if (db_info.type == SSD_DEBUG_NONE) { + ssd_check_temperature(dev, SSD_OT_TEMP); + } else if (db_info.type == SSD_DEBUG_LOG) { + if (db_info.data.log.event == SSD_LOG_OVER_TEMP) { + dev->ot_delay = SSD_OT_DELAY; + } else if (db_info.data.log.event == SSD_LOG_NORMAL_TEMP) { + dev->ot_delay = 0; + } + } +#endif + + /* offline */ + if (db_info.type == SSD_DEBUG_OFFLINE) { + test_and_clear_bit(SSD_ONLINE, &dev->state); + } else if (db_info.type == SSD_DEBUG_NONE) { + (void)test_and_set_bit(SSD_ONLINE, &dev->state); + } + + /* log */ + if (db_info.type == SSD_DEBUG_LOG && dev->event_call && dev->gd) { + dev->event_call(dev->gd, db_info.data.log.event, 0); + } + + break; + } + + case SSD_CMD_DRV_PARAM_INFO: { + struct ssd_drv_param_info drv_param; + + memset(&drv_param, 0, sizeof(struct ssd_drv_param_info)); + + drv_param.mode = mode; + drv_param.status_mask = status_mask; + drv_param.int_mode = int_mode; + drv_param.threaded_irq = threaded_irq; + drv_param.log_level = log_level; + drv_param.wmode = wmode; + drv_param.ot_protect = ot_protect; + drv_param.finject = finject; + + if (copy_to_user(argp, &drv_param, sizeof(struct ssd_drv_param_info))) { + hio_warn("%s: copy_to_user: failed\n", dev->name); + ret = -EFAULT; + break; + } + break; + } + + default: + ret = -EINVAL; + break; + } + + return ret; +} + + +#if (LINUX_VERSION_CODE <= KERNEL_VERSION(2,6,27)) +static int ssd_block_ioctl(struct inode *inode, struct file *file, + unsigned int cmd, unsigned long arg) +{ + struct ssd_device *dev; + void __user *argp = (void __user *)arg; + int ret = 0; + + if (!inode) { + return -EINVAL; + } + dev = inode->i_bdev->bd_disk->private_data; + if (!dev) { + return -EINVAL; + } +#else +static int ssd_block_ioctl(struct block_device *bdev, fmode_t mode, + unsigned int cmd, unsigned long arg) +{ + struct ssd_device *dev; + void __user *argp = (void __user *)arg; + int ret = 0; + + if (!bdev) { + return -EINVAL; + } + + dev = bdev->bd_disk->private_data; + if (!dev) { + return -EINVAL; + } +#endif + + switch (cmd) { + case HDIO_GETGEO: { + struct hd_geometry geo; + geo.cylinders = (dev->hw_info.size & ~0x3f) >> 6; + geo.heads = 4; + geo.sectors = 16; +#if (LINUX_VERSION_CODE <= KERNEL_VERSION(2,6,27)) + geo.start = get_start_sect(inode->i_bdev); +#else + geo.start = get_start_sect(bdev); +#endif + if (copy_to_user(argp, &geo, sizeof(geo))) { + ret = -EFAULT; + break; + } + + break; + } + + case BLKFLSBUF: + ret = ssd_flush(dev); + if (ret) { + hio_warn("%s: ssd_flush: failed\n", dev->name); + ret = -EFAULT; + break; + } + break; + + default: + if (!dev->slave) { + ret = ssd_ioctl_common(dev, cmd, arg); + } else { + ret = -EFAULT; + } + break; + } + + return ret; +} + + +static void ssd_free_dev(struct kref *kref) +{ + struct ssd_device *dev; + + if (!kref) { + return; + } + + dev = container_of(kref, struct ssd_device, kref); + + put_disk(dev->gd); + + ssd_put_index(dev->slave, dev->idx); + + kfree(dev); +} + +static void ssd_put(struct ssd_device *dev) +{ + kref_put(&dev->kref, ssd_free_dev); +} + +static int ssd_get(struct ssd_device *dev) +{ + kref_get(&dev->kref); + return 0; +} + +/* block device */ +#if (LINUX_VERSION_CODE <= KERNEL_VERSION(2,6,27)) +static int ssd_block_open(struct inode *inode, struct file *filp) +{ + struct ssd_device *dev; + + if (!inode) { + return -EINVAL; + } + + dev = inode->i_bdev->bd_disk->private_data; + if (!dev) { + return -EINVAL; + } +#else +static int ssd_block_open(struct block_device *bdev, fmode_t mode) +{ + struct ssd_device *dev; + + if (!bdev) { + return -EINVAL; + } + + dev = bdev->bd_disk->private_data; + if (!dev) { + return -EINVAL; + } +#endif + + /*if (!try_module_get(dev->owner)) + return -ENODEV; + */ + + ssd_get(dev); + + atomic_inc(&dev->refcnt); + + return 0; +} + +#if (LINUX_VERSION_CODE <= KERNEL_VERSION(2,6,27)) +static int ssd_block_release(struct inode *inode, struct file *filp) +{ + struct ssd_device *dev; + + if (!inode) { + return -EINVAL; + } + + dev = inode->i_bdev->bd_disk->private_data; + if (!dev) { + return -EINVAL; + } +#elif (LINUX_VERSION_CODE <= KERNEL_VERSION(3,9,0)) +static int ssd_block_release(struct gendisk *disk, fmode_t mode) +{ + struct ssd_device *dev; + + if (!disk) { + return -EINVAL; + } + + dev = disk->private_data; + if (!dev) { + return -EINVAL; + } +#else +static void ssd_block_release(struct gendisk *disk, fmode_t mode) +{ + struct ssd_device *dev; + + if (!disk) { + return; + } + + dev = disk->private_data; + if (!dev) { + return; + } +#endif + + atomic_dec(&dev->refcnt); + + ssd_put(dev); + + //module_put(dev->owner); +#if (LINUX_VERSION_CODE <= KERNEL_VERSION(3,9,0)) + return 0; +#endif +} + +static struct block_device_operations ssd_fops = { + .owner = THIS_MODULE, + .open = ssd_block_open, + .release = ssd_block_release, + .ioctl = ssd_block_ioctl, +#if (LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,16)) + .getgeo = ssd_block_getgeo, +#endif +}; + +static void ssd_init_trim(ssd_device_t *dev) +{ +#if (defined SSD_TRIM && (LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,32))) + if (dev->protocol_info.ver <= SSD_PROTOCOL_V3) { + return; + } +#if (LINUX_VERSION_CODE >= KERNEL_VERSION(4,17,0)) + blk_queue_flag_set(QUEUE_FLAG_DISCARD, dev->rq); +#else + queue_flag_set_unlocked(QUEUE_FLAG_DISCARD, dev->rq); +#endif + +#if ((LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,33)) || (defined RHEL_MAJOR && RHEL_MAJOR >= 6)) +#if (LINUX_VERSION_CODE < KERNEL_VERSION(4,12,0)) + dev->rq->limits.discard_zeroes_data = 1; +#endif + dev->rq->limits.discard_alignment = 4096; + dev->rq->limits.discard_granularity = 4096; +#endif + if (dev->protocol_info.ver < SSD_PROTOCOL_V3_2_4) { + dev->rq->limits.max_discard_sectors = dev->hw_info.sg_max_sec; + } else { + dev->rq->limits.max_discard_sectors = (dev->hw_info.sg_max_sec) * (dev->hw_info.cmd_max_sg); + } +#endif +} + +static void ssd_cleanup_queue(struct ssd_device *dev) +{ + ssd_wait_io(dev); + + blk_cleanup_queue(dev->rq); + dev->rq = NULL; +} + +static int ssd_init_queue(struct ssd_device *dev) +{ +#if (LINUX_VERSION_CODE < KERNEL_VERSION(5,7,0)) + dev->rq = blk_alloc_queue(GFP_KERNEL); + if (dev->rq == NULL) { + hio_warn("%s: alloc queue: failed\n ", dev->name); + goto out_init_queue; + } + + /* must be first */ + blk_queue_make_request(dev->rq, ssd_make_request); +#else + dev->rq = blk_alloc_queue(ssd_make_request, NUMA_NO_NODE); + if (dev->rq == NULL) { + hio_warn("%s: blk_alloc_queue(): failed\n ", dev->name); + goto out_init_queue; + } +#endif +#if ((LINUX_VERSION_CODE < KERNEL_VERSION(2,6,34)) && !(defined RHEL_MAJOR && RHEL_MAJOR == 6)) + blk_queue_max_hw_segments(dev->rq, dev->hw_info.cmd_max_sg); + blk_queue_max_phys_segments(dev->rq, dev->hw_info.cmd_max_sg); + blk_queue_max_sectors(dev->rq, dev->hw_info.sg_max_sec); +#else + blk_queue_max_segments(dev->rq, dev->hw_info.cmd_max_sg); + blk_queue_max_hw_sectors(dev->rq, dev->hw_info.sg_max_sec); +#endif + +#if (LINUX_VERSION_CODE < KERNEL_VERSION(2,6,31)) + blk_queue_hardsect_size(dev->rq, 512); +#else + blk_queue_logical_block_size(dev->rq, 512); +#endif + /* not work for make_request based drivers(bio) */ + blk_queue_max_segment_size(dev->rq, dev->hw_info.sg_max_sec << 9); + + blk_queue_bounce_limit(dev->rq, BLK_BOUNCE_HIGH); + + dev->rq->queuedata = dev; + +#if (LINUX_VERSION_CODE < KERNEL_VERSION(2,6,20)) + blk_queue_issue_flush_fn(dev->rq, ssd_issue_flush_fn); +#endif + +#if (LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,28)) +#if (LINUX_VERSION_CODE >= KERNEL_VERSION(4,17,0)) + blk_queue_flag_set(QUEUE_FLAG_NONROT, dev->rq); +#else + queue_flag_set_unlocked(QUEUE_FLAG_NONROT, dev->rq); +#endif +#endif + + ssd_init_trim(dev); + + return 0; + +out_init_queue: + return -ENOMEM; +} + +static void ssd_cleanup_blkdev(struct ssd_device *dev) +{ + del_gendisk(dev->gd); +} + +static int ssd_init_blkdev(struct ssd_device *dev) +{ + if (dev->gd) { + put_disk(dev->gd); + } + + dev->gd = alloc_disk(ssd_minors); + if (!dev->gd) { + hio_warn("%s: alloc_disk fail\n", dev->name); + goto out_alloc_gd; + } + dev->gd->major = dev->major; + dev->gd->first_minor = dev->idx * ssd_minors; + dev->gd->fops = &ssd_fops; + dev->gd->queue = dev->rq; + dev->gd->private_data = dev; + + snprintf (dev->gd->disk_name, sizeof(dev->gd->disk_name), "%s", dev->name); + + set_capacity(dev->gd, dev->hw_info.size >> 9); + +#if (LINUX_VERSION_CODE >= KERNEL_VERSION(4,20,0)) + device_add_disk(&dev->pdev->dev, dev->gd, NULL); +#elif (LINUX_VERSION_CODE >= KERNEL_VERSION(4,8,0)) + device_add_disk(&dev->pdev->dev, dev->gd); +#else + dev->gd->driverfs_dev = &dev->pdev->dev; + add_disk(dev->gd); +#endif + + return 0; + +out_alloc_gd: + return -ENOMEM; +} + +#if (LINUX_VERSION_CODE <= KERNEL_VERSION(2,6,10)) +static int ssd_ioctl(struct inode *inode, struct file *file, + unsigned int cmd, unsigned long arg) +#else +static long ssd_ioctl(struct file *file, + unsigned int cmd, unsigned long arg) +#endif +{ + struct ssd_device *dev; + + if (!file) { + return -EINVAL; + } + + dev = file->private_data; + if (!dev) { + return -EINVAL; + } + + return (long)ssd_ioctl_common(dev, cmd, arg); +} + +static int ssd_open(struct inode *inode, struct file *file) +{ + struct ssd_device *dev = NULL; + struct ssd_device *n = NULL; + int idx; + int ret = -ENODEV; + + if (!inode || !file) { + return -EINVAL; + } + + idx = iminor(inode); + + list_for_each_entry_safe(dev, n, &ssd_list, list) { + if (dev->idx == idx) { + ret = 0; + break; + } + } + + if (ret) { + return ret; + } + + file->private_data = dev; + + ssd_get(dev); + + return 0; +} + +static int ssd_release(struct inode *inode, struct file *file) +{ + struct ssd_device *dev; + + if (!file) { + return -EINVAL; + } + + dev = file->private_data; + if (!dev) { + return -EINVAL; + } + + ssd_put(dev); + + file->private_data = NULL; + + return 0; +} + +static int ssd_reload_ssd_ptr(struct ssd_device *dev) +{ + ssd_reset_resp_ptr(dev); + + //update base reg address + if (dev->protocol_info.ver >= SSD_PROTOCOL_V3) { + + ssd_reg_write(dev->ctrlp + SSD_MSG_BASE_REG, dev->msg_base_dma); + } + + //update response base reg address + ssd_reg_write(dev->ctrlp + SSD_RESP_FIFO_REG, dev->resp_msg_base_dma); + ssd_reg_write(dev->ctrlp + SSD_RESP_PTR_REG, dev->resp_ptr_base_dma); + + return 0; +} + +static struct file_operations ssd_cfops = { + .owner = THIS_MODULE, + .open = ssd_open, + .release = ssd_release, +#if (LINUX_VERSION_CODE <= KERNEL_VERSION(2,6,10)) + .ioctl = ssd_ioctl, +#else + .unlocked_ioctl = ssd_ioctl, +#endif +}; + +static void ssd_cleanup_chardev(struct ssd_device *dev) +{ + if (dev->slave) { + return; + } + +#if (LINUX_VERSION_CODE <= KERNEL_VERSION(2,6,12)) + class_simple_device_remove(MKDEV((dev_t)dev->cmajor, (dev_t)dev->idx)); + devfs_remove("c%s", dev->name); +#elif (LINUX_VERSION_CODE <= KERNEL_VERSION(2,6,14)) + class_device_destroy(ssd_class, MKDEV((dev_t)dev->cmajor, (dev_t)dev->idx)); + devfs_remove("c%s", dev->name); +#elif (LINUX_VERSION_CODE <= KERNEL_VERSION(2,6,17)) + class_device_destroy(ssd_class, MKDEV((dev_t)dev->cmajor, (dev_t)dev->idx)); + devfs_remove("c%s", dev->name); +#elif (LINUX_VERSION_CODE <= KERNEL_VERSION(2,6,24)) + class_device_destroy(ssd_class, MKDEV((dev_t)dev->cmajor, (dev_t)dev->idx)); +#else + device_destroy(ssd_class, MKDEV((dev_t)dev->cmajor, (dev_t)dev->idx)); +#endif +} + +static int ssd_init_chardev(struct ssd_device *dev) +{ + int ret = 0; + + if (dev->slave) { + return 0; + } + +#if (LINUX_VERSION_CODE <= KERNEL_VERSION(2,6,12)) + ret = devfs_mk_cdev(MKDEV((dev_t)dev->cmajor, (dev_t)dev->idx), S_IFCHR|S_IRUSR|S_IWUSR, "c%s", dev->name); + if (ret) { + goto out; + } + class_simple_device_add(ssd_class, MKDEV((dev_t)dev->cmajor, (dev_t)dev->idx), NULL, "c%s", dev->name); +out: +#elif (LINUX_VERSION_CODE <= KERNEL_VERSION(2,6,14)) + ret = devfs_mk_cdev(MKDEV((dev_t)dev->cmajor, (dev_t)dev->idx), S_IFCHR|S_IRUSR|S_IWUSR, "c%s", dev->name); + if (ret) { + goto out; + } + class_device_create(ssd_class, MKDEV((dev_t)dev->cmajor, (dev_t)dev->idx), NULL, "c%s", dev->name); +out: +#elif (LINUX_VERSION_CODE <= KERNEL_VERSION(2,6,17)) + ret = devfs_mk_cdev(MKDEV((dev_t)dev->cmajor, (dev_t)dev->idx), S_IFCHR|S_IRUSR|S_IWUSR, "c%s", dev->name); + if (ret) { + goto out; + } + class_device_create(ssd_class, NULL, MKDEV((dev_t)dev->cmajor, (dev_t)dev->idx), NULL, "c%s", dev->name); +out: +#elif (LINUX_VERSION_CODE <= KERNEL_VERSION(2,6,24)) + class_device_create(ssd_class, NULL, MKDEV((dev_t)dev->cmajor, (dev_t)dev->idx), NULL, "c%s", dev->name); +#elif (LINUX_VERSION_CODE <= KERNEL_VERSION(2,6,26)) + device_create(ssd_class, NULL, MKDEV((dev_t)dev->cmajor, (dev_t)dev->idx), "c%s", dev->name); +#elif (LINUX_VERSION_CODE <= KERNEL_VERSION(2,6,27)) + device_create_drvdata(ssd_class, NULL, MKDEV((dev_t)dev->cmajor, (dev_t)dev->idx), NULL, "c%s", dev->name); +#else + device_create(ssd_class, NULL, MKDEV((dev_t)dev->cmajor, (dev_t)dev->idx), NULL, "c%s", dev->name); +#endif + + return ret; +} + +static int ssd_check_hw(struct ssd_device *dev) +{ + uint32_t test_data = 0x55AA5AA5; + uint32_t read_data; + + ssd_reg32_write(dev->ctrlp + SSD_BRIDGE_TEST_REG, test_data); + read_data = ssd_reg32_read(dev->ctrlp + SSD_BRIDGE_TEST_REG); + if (read_data != ~(test_data)) { + //hio_warn("%s: check bridge error: %#x\n", dev->name, read_data); + return -1; + } + + return 0; +} + +static int ssd_check_fw(struct ssd_device *dev) +{ + uint32_t val = 0; + int i; + + if (dev->protocol_info.ver < SSD_PROTOCOL_V3_1_3) { + return 0; + } + + for (i=0; ictrlp + SSD_HW_STATUS_REG); + if ((val & 0x1) && ((val >> 8) & 0x1)) { + break; + } + + msleep(SSD_INIT_WAIT); + } + + if (!(val & 0x1)) { + /* controller fw status */ + hio_warn("%s: controller firmware load failed: %#x\n", dev->name, val); + return -1; + } else if (!((val >> 8) & 0x1)) { + /* controller state */ + hio_warn("%s: controller state error: %#x\n", dev->name, val); + return -1; + } + + val = ssd_reg32_read(dev->ctrlp + SSD_RELOAD_FW_REG); + if (val) { + dev->reload_fw = 1; + } + + return 0; +} + +static int ssd_init_fw_info(struct ssd_device *dev) +{ + uint32_t val; + int ret = 0; + + val = ssd_reg32_read(dev->ctrlp + SSD_BRIDGE_VER_REG); + dev->hw_info.bridge_ver = val & 0xFFF; + if (dev->hw_info.bridge_ver < SSD_FW_MIN) { + hio_warn("%s: bridge firmware version %03X is not supported\n", dev->name, dev->hw_info.bridge_ver); + return -EINVAL; + } + hio_info("%s: bridge firmware version: %03X\n", dev->name, dev->hw_info.bridge_ver); + + ret = ssd_check_fw(dev); + if (ret) { + goto out; + } + +out: + /* skip error if not in standard mode */ + if (mode != SSD_DRV_MODE_STANDARD) { + ret = 0; + } + return ret; +} + +static int ssd_check_clock(struct ssd_device *dev) +{ + uint32_t val; + int ret = 0; + + if (dev->protocol_info.ver < SSD_PROTOCOL_V3_1_3) { + return 0; + } + + val = ssd_reg32_read(dev->ctrlp + SSD_HW_STATUS_REG); + + /* clock status */ + if (!((val >> 4 ) & 0x1)) { + if (!test_and_set_bit(SSD_HWMON_CLOCK(SSD_CLOCK_166M_LOST), &dev->hwmon)) { + hio_warn("%s: 166MHz clock losed: %#x\n", dev->name, val); + ssd_gen_swlog(dev, SSD_LOG_CLK_FAULT, val); + } + ret = -1; + } + + if (dev->protocol_info.ver >= SSD_PROTOCOL_V3_2) { + if (!((val >> 5 ) & 0x1)) { + if (!test_and_set_bit(SSD_HWMON_CLOCK(SSD_CLOCK_166M_SKEW), &dev->hwmon)) { + hio_warn("%s: 166MHz clock is skew: %#x\n", dev->name, val); + ssd_gen_swlog(dev, SSD_LOG_CLK_FAULT, val); + } + ret = -1; + } + if (!((val >> 6 ) & 0x1)) { + if (!test_and_set_bit(SSD_HWMON_CLOCK(SSD_CLOCK_156M_LOST), &dev->hwmon)) { + hio_warn("%s: 156.25MHz clock lost: %#x\n", dev->name, val); + ssd_gen_swlog(dev, SSD_LOG_CLK_FAULT, val); + } + ret = -1; + } + if (!((val >> 7 ) & 0x1)) { + if (!test_and_set_bit(SSD_HWMON_CLOCK(SSD_CLOCK_156M_SKEW), &dev->hwmon)) { + hio_warn("%s: 156.25MHz clock is skew: %#x\n", dev->name, val); + ssd_gen_swlog(dev, SSD_LOG_CLK_FAULT, val); + } + ret = -1; + } + } + + return ret; +} + +static int ssd_check_volt(struct ssd_device *dev) +{ + int i = 0; + uint64_t val; + uint32_t adc_val; + int ret =0; + + if (dev->protocol_info.ver < SSD_PROTOCOL_V3_2) { + return 0; + } + + for (i=0; ihw_info.nr_ctrl; i++) { + /* 1.0v */ + if (!test_bit(SSD_HWMON_FPGA(i, SSD_FPGA_1V0), &dev->hwmon)) { + val = ssd_reg_read(dev->ctrlp + SSD_FPGA_1V0_REG0 + i * SSD_CTRL_REG_ZONE_SZ); + adc_val = SSD_FPGA_VOLT_MAX(val); + if (adc_val < SSD_FPGA_1V0_ADC_MIN || adc_val > SSD_FPGA_1V0_ADC_MAX) { + (void)test_and_set_bit(SSD_HWMON_FPGA(i, SSD_FPGA_1V0), &dev->hwmon); + hio_warn("%s: controller %d 1.0V fault: %d mV.\n", dev->name, i, SSD_FPGA_VOLT(adc_val)); + ssd_gen_swlog(dev, SSD_LOG_VOLT_FAULT, SSD_VOLT_LOG_DATA(SSD_FPGA_1V0, i, adc_val)); + ret = -1; + } + + adc_val = SSD_FPGA_VOLT_MIN(val); + if (adc_val < SSD_FPGA_1V0_ADC_MIN || adc_val > SSD_FPGA_1V0_ADC_MAX) { + (void)test_and_set_bit(SSD_HWMON_FPGA(i, SSD_FPGA_1V0), &dev->hwmon); + hio_warn("%s: controller %d 1.0V fault: %d mV.\n", dev->name, i, SSD_FPGA_VOLT(adc_val)); + ssd_gen_swlog(dev, SSD_LOG_VOLT_FAULT, SSD_VOLT_LOG_DATA(SSD_FPGA_1V0, i, adc_val)); + ret = -2; + } + } + + /* 1.8v */ + if (!test_bit(SSD_HWMON_FPGA(i, SSD_FPGA_1V8), &dev->hwmon)) { + val = ssd_reg_read(dev->ctrlp + SSD_FPGA_1V8_REG0 + i * SSD_CTRL_REG_ZONE_SZ); + adc_val = SSD_FPGA_VOLT_MAX(val); + if (adc_val < SSD_FPGA_1V8_ADC_MIN || adc_val > SSD_FPGA_1V8_ADC_MAX) { + (void)test_and_set_bit(SSD_HWMON_FPGA(i, SSD_FPGA_1V8), &dev->hwmon); + hio_warn("%s: controller %d 1.8V fault: %d mV.\n", dev->name, i, SSD_FPGA_VOLT(adc_val)); + ssd_gen_swlog(dev, SSD_LOG_VOLT_FAULT, SSD_VOLT_LOG_DATA(SSD_FPGA_1V8, i, adc_val)); + ret = -3; + } + + adc_val = SSD_FPGA_VOLT_MIN(val); + if (adc_val < SSD_FPGA_1V8_ADC_MIN || adc_val > SSD_FPGA_1V8_ADC_MAX) { + (void)test_and_set_bit(SSD_HWMON_FPGA(i, SSD_FPGA_1V8), &dev->hwmon); + hio_warn("%s: controller %d 1.8V fault: %d mV.\n", dev->name, i, SSD_FPGA_VOLT(adc_val)); + ssd_gen_swlog(dev, SSD_LOG_VOLT_FAULT, SSD_VOLT_LOG_DATA(SSD_FPGA_1V8, i, adc_val)); + ret = -4; + } + } + } + + return ret; +} + +static int ssd_check_reset_sync(struct ssd_device *dev) +{ + uint32_t val; + + if (dev->protocol_info.ver < SSD_PROTOCOL_V3_1_3) { + return 0; + } + + val = ssd_reg32_read(dev->ctrlp + SSD_HW_STATUS_REG); + if (!((val >> 8) & 0x1)) { + /* controller state */ + hio_warn("%s: controller state error: %#x\n", dev->name, val); + return -1; + } + + if (dev->protocol_info.ver < SSD_PROTOCOL_V3_2) { + return 0; + } + + if (((val >> 9 ) & 0x1)) { + hio_warn("%s: controller reset asynchronously: %#x\n", dev->name, val); + ssd_gen_swlog(dev, SSD_LOG_CTRL_RST_SYNC, val); + return -1; + } + + return 0; +} + +static int ssd_check_hw_bh(struct ssd_device *dev) +{ + int ret; + + if (dev->protocol_info.ver < SSD_PROTOCOL_V3_1_3) { + return 0; + } + + /* clock status */ + ret = ssd_check_clock(dev); + if (ret) { + goto out; + } + +out: + /* skip error if not in standard mode */ + if (mode != SSD_DRV_MODE_STANDARD) { + ret = 0; + } + return ret; +} + +static int ssd_check_controller(struct ssd_device *dev) +{ + int ret; + + if (dev->protocol_info.ver < SSD_PROTOCOL_V3_1_3) { + return 0; + } + + /* sync reset */ + ret = ssd_check_reset_sync(dev); + if (ret) { + goto out; + } + +out: + /* skip error if not in standard mode */ + if (mode != SSD_DRV_MODE_STANDARD) { + ret = 0; + } + return ret; +} + +static int ssd_check_controller_bh(struct ssd_device *dev) +{ + uint32_t test_data = 0x55AA5AA5; + uint32_t val; + int reg_base, reg_sz; + int init_wait = 0; + int i; + int ret = 0; + + if (mode != SSD_DRV_MODE_STANDARD) { + return 0; + } + + /* controller */ + val = ssd_reg32_read(dev->ctrlp + SSD_READY_REG); + if (val & 0x1) { + hio_warn("%s: controller 0 not ready\n", dev->name); + return -1; + } + + for (i=0; ihw_info.nr_ctrl; i++) { + reg_base = SSD_CTRL_TEST_REG0 + i * SSD_CTRL_TEST_REG_SZ; + ssd_reg32_write(dev->ctrlp + reg_base, test_data); + val = ssd_reg32_read(dev->ctrlp + reg_base); + if (val != ~(test_data)) { + hio_warn("%s: check controller %d error: %#x\n", dev->name, i, val); + return -1; + } + } + + /* clock */ + ret = ssd_check_volt(dev); + if (ret) { + return ret; + } + + /* ddr */ + if (dev->protocol_info.ver > SSD_PROTOCOL_V3) { + reg_base = SSD_PV3_RAM_STATUS_REG0; + reg_sz = SSD_PV3_RAM_STATUS_REG_SZ; + + for (i=0; ihw_info.nr_ctrl; i++) { +check_ram_status: + val = ssd_reg32_read(dev->ctrlp + reg_base); + + if (!((val >> 1) & 0x1)) { + init_wait++; + if (init_wait <= SSD_RAM_INIT_MAX_WAIT) { + msleep(SSD_INIT_WAIT); + goto check_ram_status; + } else { + hio_warn("%s: controller %d ram init failed: %#x\n", dev->name, i, val); + ssd_gen_swlog(dev, SSD_LOG_DDR_INIT_ERR, i); + return -1; + } + } + + reg_base += reg_sz; + } + } + + /* ch info */ + for (i=0; ictrlp + SSD_CH_INFO_REG); + if (!((val >> 31) & 0x1)) { + break; + } + + msleep(SSD_INIT_WAIT); + } + if ((val >> 31) & 0x1) { + hio_warn("%s: channel info init failed: %#x\n", dev->name, val); + return -1; + } + + return 0; +} + +static int ssd_init_protocol_info(struct ssd_device *dev) +{ + uint32_t val; + + val = ssd_reg32_read(dev->ctrlp + SSD_PROTOCOL_VER_REG); + if (val == (uint32_t)-1) { + hio_warn("%s: protocol version error: %#x\n", dev->name, val); + return -EINVAL; + } + dev->protocol_info.ver = val; + + if (dev->protocol_info.ver < SSD_PROTOCOL_V3) { + dev->protocol_info.init_state_reg = SSD_INIT_STATE_REG0; + dev->protocol_info.init_state_reg_sz = SSD_INIT_STATE_REG_SZ; + + dev->protocol_info.chip_info_reg = SSD_CHIP_INFO_REG0; + dev->protocol_info.chip_info_reg_sz = SSD_CHIP_INFO_REG_SZ; + } else { + dev->protocol_info.init_state_reg = SSD_PV3_INIT_STATE_REG0; + dev->protocol_info.init_state_reg_sz = SSD_PV3_INIT_STATE_REG_SZ; + + dev->protocol_info.chip_info_reg = SSD_PV3_CHIP_INFO_REG0; + dev->protocol_info.chip_info_reg_sz = SSD_PV3_CHIP_INFO_REG_SZ; + } + + return 0; +} + +static int ssd_init_hw_info(struct ssd_device *dev) +{ + uint64_t val64; + uint32_t val; + uint32_t nr_ctrl; + int ret = 0; + + /* base info */ + val = ssd_reg32_read(dev->ctrlp + SSD_RESP_INFO_REG); + dev->hw_info.resp_ptr_sz = 16 * (1U << (val & 0xFF)); + dev->hw_info.resp_msg_sz = 16 * (1U << ((val >> 8) & 0xFF)); + + if (0 == dev->hw_info.resp_ptr_sz || 0 == dev->hw_info.resp_msg_sz) { + hio_warn("%s: response info error\n", dev->name); + ret = -EINVAL; + goto out; + } + + val = ssd_reg32_read(dev->ctrlp + SSD_BRIDGE_INFO_REG); + dev->hw_info.cmd_fifo_sz = 1U << ((val >> 4) & 0xF); + dev->hw_info.cmd_max_sg = 1U << ((val >> 8) & 0xF); + dev->hw_info.sg_max_sec = 1U << ((val >> 12) & 0xF); + dev->hw_info.cmd_fifo_sz_mask = dev->hw_info.cmd_fifo_sz - 1; + + if (0 == dev->hw_info.cmd_fifo_sz || 0 == dev->hw_info.cmd_max_sg || 0 == dev->hw_info.sg_max_sec) { + hio_warn("%s: cmd info error\n", dev->name); + ret = -EINVAL; + goto out; + } + + /* check hw */ + if (ssd_check_hw_bh(dev)) { + hio_warn("%s: check hardware status failed\n", dev->name); + ret = -EINVAL; + goto out; + } + + if (ssd_check_controller(dev)) { + hio_warn("%s: check controller state failed\n", dev->name); + ret = -EINVAL; + goto out; + } + + /* nr controller : read again*/ + val = ssd_reg32_read(dev->ctrlp + SSD_BRIDGE_INFO_REG); + dev->hw_info.nr_ctrl = (val >> 16) & 0xF; + + /* nr ctrl configured */ + nr_ctrl = (val >> 20) & 0xF; + if (0 == dev->hw_info.nr_ctrl) { + hio_warn("%s: nr controller error: %u\n", dev->name, dev->hw_info.nr_ctrl); + ret = -EINVAL; + goto out; + } else if (0 != nr_ctrl && nr_ctrl != dev->hw_info.nr_ctrl) { + hio_warn("%s: nr controller error: configured %u but found %u\n", dev->name, nr_ctrl, dev->hw_info.nr_ctrl); + if (mode <= SSD_DRV_MODE_STANDARD) { + ret = -EINVAL; + goto out; + } + } + + if (ssd_check_controller_bh(dev)) { + hio_warn("%s: check controller failed\n", dev->name); + ret = -EINVAL; + goto out; + } + + val = ssd_reg32_read(dev->ctrlp + SSD_PCB_VER_REG); + dev->hw_info.pcb_ver = (uint8_t) ((val >> 4) & 0xF) + 'A' -1; + if ((val & 0xF) != 0xF) { + dev->hw_info.upper_pcb_ver = (uint8_t) (val & 0xF) + 'A' -1; + } + + if (dev->hw_info.pcb_ver < 'A' || (0 != dev->hw_info.upper_pcb_ver && dev->hw_info.upper_pcb_ver < 'A')) { + hio_warn("%s: PCB version error: %#x %#x\n", dev->name, dev->hw_info.pcb_ver, dev->hw_info.upper_pcb_ver); + ret = -EINVAL; + goto out; + } + + /* channel info */ + if (mode <= SSD_DRV_MODE_DEBUG) { + val = ssd_reg32_read(dev->ctrlp + SSD_CH_INFO_REG); + dev->hw_info.nr_data_ch = val & 0xFF; + dev->hw_info.nr_ch = dev->hw_info.nr_data_ch + ((val >> 8) & 0xFF); + dev->hw_info.nr_chip = (val >> 16) & 0xFF; + + if (dev->protocol_info.ver < SSD_PROTOCOL_V3_2) { + dev->hw_info.max_ch = 1; + while (dev->hw_info.max_ch < dev->hw_info.nr_ch) dev->hw_info.max_ch <<= 1; + } else { + /* set max channel 32 */ + dev->hw_info.max_ch = 32; + } + + if (0 == dev->hw_info.nr_chip) { + //for debug mode + dev->hw_info.nr_chip = 1; + } + + //xx + dev->hw_info.id_size = SSD_NAND_ID_SZ; + dev->hw_info.max_ce = SSD_NAND_MAX_CE; + + if (0 == dev->hw_info.nr_data_ch || 0 == dev->hw_info.nr_ch || 0 == dev->hw_info.nr_chip) { + hio_warn("%s: channel info error: data_ch %u ch %u chip %u\n", dev->name, dev->hw_info.nr_data_ch, dev->hw_info.nr_ch, dev->hw_info.nr_chip); + ret = -EINVAL; + goto out; + } + } + + /* ram info */ + if (mode <= SSD_DRV_MODE_DEBUG) { + val = ssd_reg32_read(dev->ctrlp + SSD_RAM_INFO_REG); + dev->hw_info.ram_size = 0x4000000ull * (1ULL << (val & 0xF)); + dev->hw_info.ram_align = 1U << ((val >> 12) & 0xF); + if (dev->hw_info.ram_align < SSD_RAM_ALIGN) { + if (dev->protocol_info.ver < SSD_PROTOCOL_V3) { + dev->hw_info.ram_align = SSD_RAM_ALIGN; + } else { + hio_warn("%s: ram align error: %u\n", dev->name, dev->hw_info.ram_align); + ret = -EINVAL; + goto out; + } + } + dev->hw_info.ram_max_len = 0x1000 * (1U << ((val >> 16) & 0xF)); + + if (0 == dev->hw_info.ram_size || 0 == dev->hw_info.ram_align || 0 == dev->hw_info.ram_max_len || dev->hw_info.ram_align > dev->hw_info.ram_max_len) { + hio_warn("%s: ram info error\n", dev->name); + ret = -EINVAL; + goto out; + } + + if (dev->protocol_info.ver < SSD_PROTOCOL_V3) { + dev->hw_info.log_sz = SSD_LOG_MAX_SZ; + } else { + val = ssd_reg32_read(dev->ctrlp + SSD_LOG_INFO_REG); + dev->hw_info.log_sz = 0x1000 * (1U << (val & 0xFF)); + } + if (0 == dev->hw_info.log_sz) { + hio_warn("%s: log size error\n", dev->name); + ret = -EINVAL; + goto out; + } + + val = ssd_reg32_read(dev->ctrlp + SSD_BBT_BASE_REG); + dev->hw_info.bbt_base = 0x40000ull * (val & 0xFFFF); + dev->hw_info.bbt_size = 0x40000 * (((val >> 16) & 0xFFFF) + 1) / (dev->hw_info.max_ch * dev->hw_info.nr_chip); + if (dev->protocol_info.ver < SSD_PROTOCOL_V3) { + if (dev->hw_info.bbt_base > dev->hw_info.ram_size || 0 == dev->hw_info.bbt_size) { + hio_warn("%s: bbt info error\n", dev->name); + ret = -EINVAL; + goto out; + } + } + + val = ssd_reg32_read(dev->ctrlp + SSD_ECT_BASE_REG); + dev->hw_info.md_base = 0x40000ull * (val & 0xFFFF); + if (dev->protocol_info.ver <= SSD_PROTOCOL_V3) { + dev->hw_info.md_size = 0x40000 * (((val >> 16) & 0xFFF) + 1) / (dev->hw_info.max_ch * dev->hw_info.nr_chip); + } else { + dev->hw_info.md_size = 0x40000 * (((val >> 16) & 0xFFF) + 1) / (dev->hw_info.nr_chip); + } + dev->hw_info.md_entry_sz = 8 * (1U << ((val >> 28) & 0xF)); + if (dev->protocol_info.ver >= SSD_PROTOCOL_V3) { + if (dev->hw_info.md_base > dev->hw_info.ram_size || 0 == dev->hw_info.md_size || + 0 == dev->hw_info.md_entry_sz || dev->hw_info.md_entry_sz > dev->hw_info.md_size) { + hio_warn("%s: md info error\n", dev->name); + ret = -EINVAL; + goto out; + } + } + + if (dev->protocol_info.ver < SSD_PROTOCOL_V3) { + dev->hw_info.nand_wbuff_base = dev->hw_info.ram_size + 1; + } else { + val = ssd_reg32_read(dev->ctrlp + SSD_NAND_BUFF_BASE); + dev->hw_info.nand_wbuff_base = 0x8000ull * val; + } + } + + /* flash info */ + if (mode <= SSD_DRV_MODE_DEBUG) { + if (dev->hw_info.nr_ctrl > 1) { + val = ssd_reg32_read(dev->ctrlp + SSD_CTRL_VER_REG); + dev->hw_info.ctrl_ver = val & 0xFFF; + hio_info("%s: controller firmware version: %03X\n", dev->name, dev->hw_info.ctrl_ver); + } + + val64 = ssd_reg_read(dev->ctrlp + SSD_FLASH_INFO_REG0); + dev->hw_info.nand_vendor_id = ((val64 >> 56) & 0xFF); + dev->hw_info.nand_dev_id = ((val64 >> 48) & 0xFF); + + dev->hw_info.block_count = (((val64 >> 32) & 0xFFFF) + 1); + dev->hw_info.page_count = ((val64>>16) & 0xFFFF); + dev->hw_info.page_size = (val64 & 0xFFFF); + + val = ssd_reg32_read(dev->ctrlp + SSD_BB_INFO_REG); + dev->hw_info.bbf_pages = val & 0xFF; + dev->hw_info.bbf_seek = (val >> 8) & 0x1; + + if (0 == dev->hw_info.block_count || 0 == dev->hw_info.page_count || 0 == dev->hw_info.page_size || dev->hw_info.block_count > INT_MAX) { + hio_warn("%s: flash info error\n", dev->name); + ret = -EINVAL; + goto out; + } + + //xx + dev->hw_info.oob_size = SSD_NAND_OOB_SZ; //(dev->hw_info.page_size) >> 5; + + val = ssd_reg32_read(dev->ctrlp + SSD_VALID_PAGES_REG); + if (dev->protocol_info.ver < SSD_PROTOCOL_V3_2) { + dev->hw_info.valid_pages = val & 0x3FF; + dev->hw_info.max_valid_pages = (val>>20) & 0x3FF; + } else { + dev->hw_info.valid_pages = val & 0x7FFF; + dev->hw_info.max_valid_pages = (val>>15) & 0x7FFF; + } + if (0 == dev->hw_info.valid_pages || 0 == dev->hw_info.max_valid_pages || + dev->hw_info.valid_pages > dev->hw_info.max_valid_pages || dev->hw_info.max_valid_pages > dev->hw_info.page_count) { + hio_warn("%s: valid page info error: valid_pages %d, max_valid_pages %d\n", dev->name, dev->hw_info.valid_pages, dev->hw_info.max_valid_pages); + ret = -EINVAL; + goto out; + } + + val = ssd_reg32_read(dev->ctrlp + SSD_RESERVED_BLKS_REG); + dev->hw_info.reserved_blks = val & 0xFFFF; + dev->hw_info.md_reserved_blks = (val >> 16) & 0xFF; + if (dev->protocol_info.ver <= SSD_PROTOCOL_V3) { + dev->hw_info.md_reserved_blks = SSD_BBT_RESERVED; + } + if (dev->hw_info.reserved_blks > dev->hw_info.block_count || dev->hw_info.md_reserved_blks > dev->hw_info.block_count) { + hio_warn("%s: reserved blocks info error: reserved_blks %d, md_reserved_blks %d\n", dev->name, dev->hw_info.reserved_blks, dev->hw_info.md_reserved_blks); + ret = -EINVAL; + goto out; + } + } + + /* size */ + if (mode < SSD_DRV_MODE_DEBUG) { + dev->hw_info.size = (uint64_t)dev->hw_info.valid_pages * dev->hw_info.page_size; + dev->hw_info.size *= (dev->hw_info.block_count - dev->hw_info.reserved_blks); + dev->hw_info.size *= ((uint64_t)dev->hw_info.nr_data_ch * (uint64_t)dev->hw_info.nr_chip * (uint64_t)dev->hw_info.nr_ctrl); + } + + /* extend hardware info */ + val = ssd_reg32_read(dev->ctrlp + SSD_PCB_VER_REG); + dev->hw_info_ext.board_type = (val >> 24) & 0xF; + + dev->hw_info_ext.form_factor = SSD_FORM_FACTOR_FHHL; + if (dev->protocol_info.ver >= SSD_PROTOCOL_V3_2_1) { + dev->hw_info_ext.form_factor = (val >> 31) & 0x1; + } + /* + dev->hw_info_ext.cap_type = (val >> 28) & 0x3; + if (SSD_BM_CAP_VINA != dev->hw_info_ext.cap_type && SSD_BM_CAP_JH != dev->hw_info_ext.cap_type) { + dev->hw_info_ext.cap_type = SSD_BM_CAP_VINA; + }*/ + + /* power loss protect */ + val = ssd_reg32_read(dev->ctrlp + SSD_PLP_INFO_REG); + dev->hw_info_ext.plp_type = (val & 0x3); + if (dev->protocol_info.ver >= SSD_PROTOCOL_V3_2) { + /* 3 or 4 cap */ + dev->hw_info_ext.cap_type = ((val >> 2)& 0x1); + } + + /* work mode */ + val = ssd_reg32_read(dev->ctrlp + SSD_CH_INFO_REG); + dev->hw_info_ext.work_mode = (val >> 25) & 0x1; + +out: + /* skip error if not in standard mode */ + if (mode != SSD_DRV_MODE_STANDARD) { + ret = 0; + } + return ret; +} + +static void ssd_cleanup_response(struct ssd_device *dev) +{ + int resp_msg_sz = dev->hw_info.resp_msg_sz * dev->hw_info.cmd_fifo_sz * SSD_MSIX_VEC; + int resp_ptr_sz = dev->hw_info.resp_ptr_sz * SSD_MSIX_VEC; + + pci_free_consistent(dev->pdev, resp_ptr_sz, dev->resp_ptr_base, dev->resp_ptr_base_dma); + pci_free_consistent(dev->pdev, resp_msg_sz, dev->resp_msg_base, dev->resp_msg_base_dma); +} + +static int ssd_init_response(struct ssd_device *dev) +{ + int resp_msg_sz = dev->hw_info.resp_msg_sz * dev->hw_info.cmd_fifo_sz * SSD_MSIX_VEC; + int resp_ptr_sz = dev->hw_info.resp_ptr_sz * SSD_MSIX_VEC; + + dev->resp_msg_base = pci_alloc_consistent(dev->pdev, resp_msg_sz, &(dev->resp_msg_base_dma)); + if (!dev->resp_msg_base) { + hio_warn("%s: unable to allocate resp msg DMA buffer\n", dev->name); + goto out_alloc_resp_msg; + } + memset(dev->resp_msg_base, 0xFF, resp_msg_sz); + + dev->resp_ptr_base = pci_alloc_consistent(dev->pdev, resp_ptr_sz, &(dev->resp_ptr_base_dma)); + if (!dev->resp_ptr_base){ + hio_warn("%s: unable to allocate resp ptr DMA buffer\n", dev->name); + goto out_alloc_resp_ptr; + } + memset(dev->resp_ptr_base, 0, resp_ptr_sz); + dev->resp_idx = *(uint32_t *)(dev->resp_ptr_base) = dev->hw_info.cmd_fifo_sz * 2 - 1; + + ssd_reg_write(dev->ctrlp + SSD_RESP_FIFO_REG, dev->resp_msg_base_dma); + ssd_reg_write(dev->ctrlp + SSD_RESP_PTR_REG, dev->resp_ptr_base_dma); + + return 0; + +out_alloc_resp_ptr: + pci_free_consistent(dev->pdev, resp_msg_sz, dev->resp_msg_base, dev->resp_msg_base_dma); +out_alloc_resp_msg: + return -ENOMEM; +} + +static int ssd_cleanup_cmd(struct ssd_device *dev) +{ + int msg_sz = ALIGN(sizeof(struct ssd_rw_msg) + (dev->hw_info.cmd_max_sg - 1) * sizeof(struct ssd_sg_entry), SSD_DMA_ALIGN); + int i; + + for (i=0; i<(int)dev->hw_info.cmd_fifo_sz; i++) { + kfree(dev->cmd[i].sgl); + } + kfree(dev->cmd); + pci_free_consistent(dev->pdev, (msg_sz * dev->hw_info.cmd_fifo_sz), dev->msg_base, dev->msg_base_dma); + return 0; +} + +static int ssd_init_cmd(struct ssd_device *dev) +{ + int sgl_sz = sizeof(struct scatterlist) * dev->hw_info.cmd_max_sg; + int cmd_sz = sizeof(struct ssd_cmd) * dev->hw_info.cmd_fifo_sz; + int msg_sz = ALIGN(sizeof(struct ssd_rw_msg) + (dev->hw_info.cmd_max_sg - 1) * sizeof(struct ssd_sg_entry), SSD_DMA_ALIGN); + int i; + + spin_lock_init(&dev->cmd_lock); + + dev->msg_base = pci_alloc_consistent(dev->pdev, (msg_sz * dev->hw_info.cmd_fifo_sz), &dev->msg_base_dma); + if (!dev->msg_base) { + hio_warn("%s: can not alloc cmd msg\n", dev->name); + goto out_alloc_msg; + } + + dev->cmd = kmalloc(cmd_sz, GFP_KERNEL); + if (!dev->cmd) { + hio_warn("%s: can not alloc cmd\n", dev->name); + goto out_alloc_cmd; + } + memset(dev->cmd, 0, cmd_sz); + + for (i=0; i<(int)dev->hw_info.cmd_fifo_sz; i++) { + dev->cmd[i].sgl = kmalloc(sgl_sz, GFP_KERNEL); + if (!dev->cmd[i].sgl) { + hio_warn("%s: can not alloc cmd sgl %d\n", dev->name, i); + goto out_alloc_sgl; + } + + dev->cmd[i].msg = dev->msg_base + (msg_sz * i); + dev->cmd[i].msg_dma = dev->msg_base_dma + ((dma_addr_t)msg_sz * i); + + dev->cmd[i].dev = dev; + dev->cmd[i].tag = i; + dev->cmd[i].flag = 0; + + INIT_LIST_HEAD(&dev->cmd[i].list); + } + + if (dev->protocol_info.ver < SSD_PROTOCOL_V3) { + dev->scmd = ssd_dispatch_cmd; + } else { + ssd_reg_write(dev->ctrlp + SSD_MSG_BASE_REG, dev->msg_base_dma); + if (finject) { + dev->scmd = ssd_send_cmd_db; + } else { + dev->scmd = ssd_send_cmd; + } + } + + return 0; + +out_alloc_sgl: + for (i--; i>=0; i--) { + kfree(dev->cmd[i].sgl); + } + kfree(dev->cmd); +out_alloc_cmd: + pci_free_consistent(dev->pdev, (msg_sz * dev->hw_info.cmd_fifo_sz), dev->msg_base, dev->msg_base_dma); +out_alloc_msg: + return -ENOMEM; +} + +#if (LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,30)) +static irqreturn_t ssd_interrupt_check(int irq, void *dev_id) +{ + struct ssd_queue *queue = (struct ssd_queue *)dev_id; + + if (*(uint32_t *)queue->resp_ptr == queue->resp_idx) { + return IRQ_NONE; + } + + return IRQ_WAKE_THREAD; +} + +static irqreturn_t ssd_interrupt_threaded(int irq, void *dev_id) +{ + struct ssd_queue *queue = (struct ssd_queue *)dev_id; + struct ssd_device *dev = (struct ssd_device *)queue->dev; + struct ssd_cmd *cmd; + union ssd_response_msq __msg; + union ssd_response_msq *msg = &__msg; + uint64_t *u64_msg; + uint32_t resp_idx = queue->resp_idx; + uint32_t new_resp_idx = *(uint32_t *)queue->resp_ptr; + uint32_t end_resp_idx; + + if (unlikely(resp_idx == new_resp_idx)) { + return IRQ_NONE; + } + + end_resp_idx = new_resp_idx & queue->resp_idx_mask; + + do { + resp_idx = (resp_idx + 1) & queue->resp_idx_mask; + + /* the resp msg */ + u64_msg = (uint64_t *)(queue->resp_msg + queue->resp_msg_sz * resp_idx); + msg->u64_msg = *u64_msg; + + if (unlikely(msg->u64_msg == (uint64_t)(-1))) { + hio_err("%s: empty resp msg: queue %d idx %u\n", dev->name, queue->idx, resp_idx); + continue; + } + /* clear the resp msg */ + *u64_msg = (uint64_t)(-1); + + cmd = &queue->cmd[msg->resp_msg.tag]; + /*if (unlikely(!cmd->bio)) { + printk(KERN_WARNING "%s: unknown tag %d fun %#x\n", + dev->name, msg->resp_msg.tag, msg->resp_msg.fun); + continue; + }*/ + + if(unlikely(msg->resp_msg.status & (uint32_t)status_mask)) { + cmd->errors = -EIO; + } else { + cmd->errors = 0; + } + cmd->nr_log = msg->log_resp_msg.nr_log; + + ssd_done(cmd); + + if (unlikely(msg->resp_msg.fun != SSD_FUNC_READ_LOG && msg->resp_msg.log > 0)) { + (void)test_and_set_bit(SSD_LOG_HW, &dev->state); + if (test_bit(SSD_INIT_WORKQ, &dev->state)) { + queue_work(dev->workq, &dev->log_work); + } + } + + if (unlikely(msg->resp_msg.status)) { + if (msg->resp_msg.fun == SSD_FUNC_READ || msg->resp_msg.fun == SSD_FUNC_WRITE) { + hio_err("%s: I/O error %d: tag %d fun %#x\n", + dev->name, msg->resp_msg.status, msg->resp_msg.tag, msg->resp_msg.fun); + + /* alarm led */ + ssd_set_alarm(dev); + queue->io_stat.nr_rwerr++; + ssd_gen_swlog(dev, SSD_LOG_EIO, msg->u32_msg[0]); + } else { + hio_info("%s: CMD error %d: tag %d fun %#x\n", + dev->name, msg->resp_msg.status, msg->resp_msg.tag, msg->resp_msg.fun); + + ssd_gen_swlog(dev, SSD_LOG_ECMD, msg->u32_msg[0]); + } + queue->io_stat.nr_ioerr++; + } + + if (msg->resp_msg.fun == SSD_FUNC_READ || + msg->resp_msg.fun == SSD_FUNC_NAND_READ_WOOB || + msg->resp_msg.fun == SSD_FUNC_NAND_READ) { + + queue->ecc_info.bitflip[msg->resp_msg.bitflip]++; + } + }while (resp_idx != end_resp_idx); + + queue->resp_idx = new_resp_idx; + + return IRQ_HANDLED; +} +#endif + +#if (LINUX_VERSION_CODE < KERNEL_VERSION(2,6,19)) +static irqreturn_t ssd_interrupt(int irq, void *dev_id, struct pt_regs *regs) +#else +static irqreturn_t ssd_interrupt(int irq, void *dev_id) +#endif +{ + struct ssd_queue *queue = (struct ssd_queue *)dev_id; + struct ssd_device *dev = (struct ssd_device *)queue->dev; + struct ssd_cmd *cmd; + union ssd_response_msq __msg; + union ssd_response_msq *msg = &__msg; + uint64_t *u64_msg; + uint32_t resp_idx = queue->resp_idx; + uint32_t new_resp_idx = *(uint32_t *)queue->resp_ptr; + uint32_t end_resp_idx; + + if (unlikely(resp_idx == new_resp_idx)) { + return IRQ_NONE; + } + +#if (defined SSD_ESCAPE_IRQ) + if (SSD_INT_MSIX != dev->int_mode) { + dev->irq_cpu = smp_processor_id(); + } +#endif + + end_resp_idx = new_resp_idx & queue->resp_idx_mask; + + do { + resp_idx = (resp_idx + 1) & queue->resp_idx_mask; + + /* the resp msg */ + u64_msg = (uint64_t *)(queue->resp_msg + queue->resp_msg_sz * resp_idx); + msg->u64_msg = *u64_msg; + + if (unlikely(msg->u64_msg == (uint64_t)(-1))) { + hio_err("%s: empty resp msg: queue %d idx %u\n", dev->name, queue->idx, resp_idx); + continue; + } + /* clear the resp msg */ + *u64_msg = (uint64_t)(-1); + + cmd = &queue->cmd[msg->resp_msg.tag]; + /*if (unlikely(!cmd->bio)) { + printk(KERN_WARNING "%s: unknown tag %d fun %#x\n", + dev->name, msg->resp_msg.tag, msg->resp_msg.fun); + continue; + }*/ + + if(unlikely(msg->resp_msg.status & (uint32_t)status_mask)) { + cmd->errors = -EIO; + } else { + cmd->errors = 0; + } + cmd->nr_log = msg->log_resp_msg.nr_log; + + ssd_done_bh(cmd); + + if (unlikely(msg->resp_msg.fun != SSD_FUNC_READ_LOG && msg->resp_msg.log > 0)) { + (void)test_and_set_bit(SSD_LOG_HW, &dev->state); + if (test_bit(SSD_INIT_WORKQ, &dev->state)) { + queue_work(dev->workq, &dev->log_work); + } + } + + if (unlikely(msg->resp_msg.status)) { + if (msg->resp_msg.fun == SSD_FUNC_READ || msg->resp_msg.fun == SSD_FUNC_WRITE) { + hio_err("%s: I/O error %d: tag %d fun %#x\n", + dev->name, msg->resp_msg.status, msg->resp_msg.tag, msg->resp_msg.fun); + + /* alarm led */ + ssd_set_alarm(dev); + queue->io_stat.nr_rwerr++; + ssd_gen_swlog(dev, SSD_LOG_EIO, msg->u32_msg[0]); + } else { + hio_info("%s: CMD error %d: tag %d fun %#x\n", + dev->name, msg->resp_msg.status, msg->resp_msg.tag, msg->resp_msg.fun); + + ssd_gen_swlog(dev, SSD_LOG_ECMD, msg->u32_msg[0]); + } + queue->io_stat.nr_ioerr++; + } + + if (msg->resp_msg.fun == SSD_FUNC_READ || + msg->resp_msg.fun == SSD_FUNC_NAND_READ_WOOB || + msg->resp_msg.fun == SSD_FUNC_NAND_READ) { + + queue->ecc_info.bitflip[msg->resp_msg.bitflip]++; + } + }while (resp_idx != end_resp_idx); + + queue->resp_idx = new_resp_idx; + + return IRQ_HANDLED; +} + +#if (LINUX_VERSION_CODE < KERNEL_VERSION(2,6,19)) +static irqreturn_t ssd_interrupt_legacy(int irq, void *dev_id, struct pt_regs *regs) +#else +static irqreturn_t ssd_interrupt_legacy(int irq, void *dev_id) +#endif +{ + irqreturn_t ret; + struct ssd_queue *queue = (struct ssd_queue *)dev_id; + struct ssd_device *dev = (struct ssd_device *)queue->dev; + +#if (LINUX_VERSION_CODE < KERNEL_VERSION(2,6,19)) + ret = ssd_interrupt(irq, dev_id, regs); +#else + ret = ssd_interrupt(irq, dev_id); +#endif + + /* clear intr */ + if (IRQ_HANDLED == ret) { + ssd_reg32_write(dev->ctrlp + SSD_CLEAR_INTR_REG, 1); + } + + return ret; +} + +static void ssd_reset_resp_ptr(struct ssd_device *dev) +{ + int i; + + for (i=0; inr_queue; i++) { + *(uint32_t *)dev->queue[i].resp_ptr = dev->queue[i].resp_idx = (dev->hw_info.cmd_fifo_sz * 2) - 1; + } +} + +static void ssd_free_irq(struct ssd_device *dev) +{ + int i; + +#if ((LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,35)) || (defined RHEL_MAJOR && RHEL_MAJOR == 6)) && (LINUX_VERSION_CODE < KERNEL_VERSION(4,10,0)) + if (SSD_INT_MSIX == dev->int_mode) { + for (i=0; inr_queue; i++) { + irq_set_affinity_hint(dev->entry[i].vector, NULL); + } + } +#endif + + for (i=0; inr_queue; i++) { +#if (LINUX_VERSION_CODE < KERNEL_VERSION(4,10,0)) + free_irq(dev->entry[i].vector, &dev->queue[i]); +#else + free_irq(pci_irq_vector(dev->pdev, i), &dev->queue[i]); +#endif + } + + if (SSD_INT_MSIX == dev->int_mode) { + pci_disable_msix(dev->pdev); + } else if (SSD_INT_MSI == dev->int_mode) { + pci_disable_msi(dev->pdev); + } + +} + +static int ssd_init_irq(struct ssd_device *dev) +{ +#if (!defined MODULE) && (defined SSD_MSIX_AFFINITY_FORCE) && (LINUX_VERSION_CODE < KERNEL_VERSION(4,10,0)) + const struct cpumask *cpu_mask = NULL; + static int cpu_affinity = 0; +#endif +#if ((LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,35)) || (defined RHEL_MAJOR && RHEL_MAJOR == 6)) && (LINUX_VERSION_CODE < KERNEL_VERSION(4,10,0)) + const struct cpumask *mask = NULL; + static int cpu = 0; + int j; +#endif + int i; + unsigned long flags = 0; + int ret = 0; + + ssd_reg32_write(dev->ctrlp + SSD_INTR_INTERVAL_REG, 0x800); + +#ifdef SSD_ESCAPE_IRQ + dev->irq_cpu = -1; +#endif + +#if (LINUX_VERSION_CODE < KERNEL_VERSION(4,10,0)) + if (int_mode >= SSD_INT_MSIX && pci_find_capability(dev->pdev, PCI_CAP_ID_MSIX)) { + dev->nr_queue = SSD_MSIX_VEC; + + for (i=0; inr_queue; i++) { + dev->entry[i].entry = i; + } + for (;;) { + ret = pci_enable_msix(dev->pdev, dev->entry, dev->nr_queue); + if (ret == 0) { + break; + } else if (ret > 0) { + dev->nr_queue = ret; + } else { + hio_warn("%s: can not enable msix\n", dev->name); + /* alarm led */ + ssd_set_alarm(dev); + goto out; + } + } + +#if ((LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,35)) || (defined RHEL_MAJOR && RHEL_MAJOR == 6)) + mask = (dev_to_node(&dev->pdev->dev) == -1) ? cpu_online_mask : cpumask_of_node(dev_to_node(&dev->pdev->dev)); + if ((0 == cpu) || (!cpumask_intersects(mask, cpumask_of(cpu)))) { + cpu = cpumask_first(mask); + } + for (i=0; inr_queue; i++) { + irq_set_affinity_hint(dev->entry[i].vector, cpumask_of(cpu)); + cpu = cpumask_next(cpu, mask); + if (cpu >= nr_cpu_ids) { + cpu = cpumask_first(mask); + } + } +#endif + + dev->int_mode = SSD_INT_MSIX; + } else if (int_mode >= SSD_INT_MSI && pci_find_capability(dev->pdev, PCI_CAP_ID_MSI)) { + ret = pci_enable_msi(dev->pdev); + if (ret) { + hio_warn("%s: can not enable msi\n", dev->name); + /* alarm led */ + ssd_set_alarm(dev); + goto out; + } + + dev->nr_queue = 1; + dev->entry[0].vector = dev->pdev->irq; + + dev->int_mode = SSD_INT_MSI; + } else { + dev->nr_queue = 1; + dev->entry[0].vector = dev->pdev->irq; + + dev->int_mode = SSD_INT_LEGACY; + } +#else + if (int_mode >= SSD_INT_MSIX && pci_find_capability(dev->pdev, PCI_CAP_ID_MSIX)) { + dev->nr_queue = SSD_MSIX_VEC; + + dev->nr_queue = pci_alloc_irq_vectors(dev->pdev, 1, dev->nr_queue, PCI_IRQ_MSIX | PCI_IRQ_AFFINITY); + if (dev->nr_queue <= 0) { + ret = -EIO; + hio_warn("%s: can not enable msix\n", dev->name); + ssd_set_alarm(dev); + goto out; + } + + dev->int_mode = SSD_INT_MSIX; + } else if (int_mode >= SSD_INT_MSI && pci_find_capability(dev->pdev, PCI_CAP_ID_MSI)) { + + ret = pci_alloc_irq_vectors(dev->pdev, 1, 1, PCI_IRQ_MSI | PCI_IRQ_AFFINITY); + if (ret <= 0) { + ret = -EIO; + hio_warn("%s: can not enable msi\n", dev->name); + /* alarm led */ + ssd_set_alarm(dev); + goto out; + } + dev->nr_queue = 1; + + dev->int_mode = SSD_INT_MSI; + } else { + ret = pci_alloc_irq_vectors(dev->pdev, 1, 1, PCI_IRQ_LEGACY); + + if (ret <= 0) { + ret = -EIO; + hio_warn("%s: can not enable msi\n", dev->name); + /* alarm led */ + ssd_set_alarm(dev); + goto out; + } + dev->nr_queue = 1; + + dev->int_mode = SSD_INT_LEGACY; + } +#endif + + for (i=0; inr_queue; i++) { + if (dev->nr_queue > 1) { + snprintf(dev->queue[i].name, SSD_QUEUE_NAME_LEN, "%s_e100-%d", dev->name, i); + } else { + snprintf(dev->queue[i].name, SSD_QUEUE_NAME_LEN, "%s_e100", dev->name); + } + + dev->queue[i].dev = dev; + dev->queue[i].idx = i; + + dev->queue[i].resp_idx = (dev->hw_info.cmd_fifo_sz * 2) - 1; + dev->queue[i].resp_idx_mask = dev->hw_info.cmd_fifo_sz - 1; + + dev->queue[i].resp_msg_sz = dev->hw_info.resp_msg_sz; + dev->queue[i].resp_msg = dev->resp_msg_base + dev->hw_info.resp_msg_sz * dev->hw_info.cmd_fifo_sz * i; + dev->queue[i].resp_ptr = dev->resp_ptr_base + dev->hw_info.resp_ptr_sz * i; + *(uint32_t *)dev->queue[i].resp_ptr = dev->queue[i].resp_idx; + + dev->queue[i].cmd = dev->cmd; + } + +#if (LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,20)) + flags = IRQF_SHARED; +#else + flags = SA_SHIRQ; +#endif + + for (i=0; inr_queue; i++) { +#if (LINUX_VERSION_CODE < KERNEL_VERSION(2,6,30)) + if (dev->int_mode == SSD_INT_LEGACY) { + ret = request_irq(dev->entry[i].vector, &ssd_interrupt_legacy, flags, dev->queue[i].name, &dev->queue[i]); + } else { + ret = request_irq(dev->entry[i].vector, &ssd_interrupt, flags, dev->queue[i].name, &dev->queue[i]); + } +#elif (LINUX_VERSION_CODE < KERNEL_VERSION(4,10,0)) + if (threaded_irq) { + ret = request_threaded_irq(dev->entry[i].vector, ssd_interrupt_check, ssd_interrupt_threaded, flags, dev->queue[i].name, &dev->queue[i]); + } else if (dev->int_mode == SSD_INT_LEGACY) { + ret = request_irq(dev->entry[i].vector, &ssd_interrupt_legacy, flags, dev->queue[i].name, &dev->queue[i]); + } else { + ret = request_irq(dev->entry[i].vector, &ssd_interrupt, flags, dev->queue[i].name, &dev->queue[i]); + } +#else + if (threaded_irq) { + ret = request_threaded_irq(pci_irq_vector(dev->pdev, i), ssd_interrupt_check, ssd_interrupt_threaded, flags, dev->queue[i].name, &dev->queue[i]); + } else if (dev->int_mode == SSD_INT_LEGACY) { + ret = request_irq(pci_irq_vector(dev->pdev, i), &ssd_interrupt_legacy, flags, dev->queue[i].name, &dev->queue[i]); + } else { + ret = request_irq(pci_irq_vector(dev->pdev, i), &ssd_interrupt, flags, dev->queue[i].name, &dev->queue[i]); + } +#endif + if (ret) { + hio_warn("%s: request irq failed\n", dev->name); + /* alarm led */ + ssd_set_alarm(dev); + goto out_request_irq; + } + +#if (!defined MODULE) && (defined SSD_MSIX_AFFINITY_FORCE) && (LINUX_VERSION_CODE < KERNEL_VERSION(4,10,0)) + cpu_mask = (dev_to_node(&dev->pdev->dev) == -1) ? cpu_online_mask : cpumask_of_node(dev_to_node(&dev->pdev->dev)); + if (SSD_INT_MSIX == dev->int_mode) { + if ((0 == cpu_affinity) || (!cpumask_intersects(mask, cpumask_of(cpu_affinity)))) { + cpu_affinity = cpumask_first(cpu_mask); + } + + irq_set_affinity(dev->entry[i].vector, cpumask_of(cpu_affinity)); + cpu_affinity = cpumask_next(cpu_affinity, cpu_mask); + if (cpu_affinity >= nr_cpu_ids) { + cpu_affinity = cpumask_first(cpu_mask); + } + } +#endif + } + + return ret; + +out_request_irq: +#if ((LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,35)) || (defined RHEL_MAJOR && RHEL_MAJOR == 6)) && (LINUX_VERSION_CODE < KERNEL_VERSION(4,10,0)) + if (SSD_INT_MSIX == dev->int_mode) { + for (j=0; jnr_queue; j++) { + irq_set_affinity_hint(dev->entry[j].vector, NULL); + } + } +#endif + + for (i--; i>=0; i--) { +#if (LINUX_VERSION_CODE < KERNEL_VERSION(4,10,0)) + free_irq(dev->entry[i].vector, &dev->queue[i]); +#else + free_irq(pci_irq_vector(dev->pdev, i), &dev->queue[i]); +#endif + } + + if (SSD_INT_MSIX == dev->int_mode) { + pci_disable_msix(dev->pdev); + } else if (SSD_INT_MSI == dev->int_mode) { + pci_disable_msi(dev->pdev); + } + +out: + return ret; +} + +static void ssd_initial_log(struct ssd_device *dev) +{ + uint32_t val; + uint32_t speed, width; + + if (dev->protocol_info.ver < SSD_PROTOCOL_V3_2) { + return; + } + + val = ssd_reg32_read(dev->ctrlp + SSD_POWER_ON_REG); + if (val) { + // Poweron detection switched to SSD_INTR_INTERVAL_REG in 'ssd_init_smart' + //ssd_gen_swlog(dev, SSD_LOG_POWER_ON, dev->hw_info.bridge_ver); + } + + val = ssd_reg32_read(dev->ctrlp + SSD_PCIE_LINKSTATUS_REG); + speed = val & 0xF; + width = (val >> 4)& 0x3F; + if (0x1 == speed) { + hio_info("%s: PCIe: 2.5GT/s, x%u\n", dev->name, width); + } else if (0x2 == speed) { + hio_info("%s: PCIe: 5GT/s, x%u\n", dev->name, width); + } else { + hio_info("%s: PCIe: unknown GT/s, x%u\n", dev->name, width); + } + ssd_gen_swlog(dev, SSD_LOG_PCIE_LINK_STATUS, val); + + return; +} + +#if (LINUX_VERSION_CODE < KERNEL_VERSION(2,6,20)) +static void ssd_hwmon_worker(void *data) +{ + struct ssd_device *dev = (struct ssd_device *)data; +#else +static void ssd_hwmon_worker(struct work_struct *work) +{ + struct ssd_device *dev = container_of(work, struct ssd_device, hwmon_work); +#endif + + if (ssd_check_hw(dev)) { + //hio_err("%s: check hardware failed\n", dev->name); + return; + } + + ssd_check_clock(dev); + ssd_check_volt(dev); + + ssd_mon_boardvolt(dev); +} + +#if (LINUX_VERSION_CODE < KERNEL_VERSION(2,6,20)) +static void ssd_tempmon_worker(void *data) +{ + struct ssd_device *dev = (struct ssd_device *)data; +#else +static void ssd_tempmon_worker(struct work_struct *work) +{ + struct ssd_device *dev = container_of(work, struct ssd_device, tempmon_work); +#endif + + if (ssd_check_hw(dev)) { + //hio_err("%s: check hardware failed\n", dev->name); + return; + } + + ssd_mon_temp(dev); +} + + +#if (LINUX_VERSION_CODE < KERNEL_VERSION(2,6,20)) +static void ssd_capmon_worker(void *data) +{ + struct ssd_device *dev = (struct ssd_device *)data; +#else +static void ssd_capmon_worker(struct work_struct *work) +{ + struct ssd_device *dev = container_of(work, struct ssd_device, capmon_work); +#endif + uint32_t cap = 0; + uint32_t cap_threshold = SSD_PL_CAP_THRESHOLD; + int ret = 0; + + if (dev->protocol_info.ver < SSD_PROTOCOL_V3_2) { + return; + } + + if (dev->hw_info_ext.form_factor == SSD_FORM_FACTOR_FHHL && dev->hw_info.pcb_ver < 'B') { + return; + } + + /* fault before? */ + if (test_bit(SSD_HWMON_PL_CAP(SSD_PL_CAP), &dev->hwmon)) { + ret = ssd_check_pl_cap_fast(dev); + if (ret) { + return; + } + } + + /* learn */ + ret = ssd_do_cap_learn(dev, &cap); + if (ret) { + hio_err("%s: cap learn failed\n", dev->name); + ssd_gen_swlog(dev, SSD_LOG_CAP_LEARN_FAULT, 0); + return; + } + + ssd_gen_swlog(dev, SSD_LOG_CAP_STATUS, cap); + + if (SSD_PL_CAP_CP == dev->hw_info_ext.cap_type) { + cap_threshold = SSD_PL_CAP_CP_THRESHOLD; + } + + //use the fw event id? + if (cap < cap_threshold) { + if (!test_bit(SSD_HWMON_PL_CAP(SSD_PL_CAP), &dev->hwmon)) { + ssd_gen_swlog(dev, SSD_LOG_BATTERY_FAULT, 0); + } + } else if (cap >= (cap_threshold + SSD_PL_CAP_THRESHOLD_HYST)) { + if (test_bit(SSD_HWMON_PL_CAP(SSD_PL_CAP), &dev->hwmon)) { + ssd_gen_swlog(dev, SSD_LOG_BATTERY_OK, 0); + } + } +} + +#if (LINUX_VERSION_CODE < KERNEL_VERSION(4,15,0)) +static void ssd_routine_start(void *data) +#else +static void ssd_routine_start(struct timer_list *t) +#endif +{ + struct ssd_device *dev; + +#if (LINUX_VERSION_CODE < KERNEL_VERSION(4,15,0)) + if (!data) { + return; + } + dev = data; +#else + dev = from_timer(dev, t, routine_timer); +#endif + + dev->routine_tick++; + + if (test_bit(SSD_INIT_WORKQ, &dev->state) && !ssd_busy(dev)) { + (void)test_and_set_bit(SSD_LOG_HW, &dev->state); + queue_work(dev->workq, &dev->log_work); + } + + if ((dev->routine_tick % SSD_HWMON_ROUTINE_TICK) == 0 && test_bit(SSD_INIT_WORKQ, &dev->state)) { + queue_work(dev->workq, &dev->hwmon_work); + } + + if ((dev->routine_tick % SSD_CAPMON_ROUTINE_TICK) == 0 && test_bit(SSD_INIT_WORKQ, &dev->state)) { + queue_work(dev->workq, &dev->capmon_work); + } + + if ((dev->routine_tick % SSD_CAPMON2_ROUTINE_TICK) == 0 && test_bit(SSD_HWMON_PL_CAP(SSD_PL_CAP), &dev->hwmon) && test_bit(SSD_INIT_WORKQ, &dev->state)) { + /* CAP fault? check again */ + queue_work(dev->workq, &dev->capmon_work); + } + + if (test_bit(SSD_INIT_WORKQ, &dev->state)) { + queue_work(dev->workq, &dev->tempmon_work); + } + + /* schedule routine */ + mod_timer(&dev->routine_timer, jiffies + msecs_to_jiffies(SSD_ROUTINE_INTERVAL)); +} + +static void ssd_cleanup_routine(struct ssd_device *dev) +{ + if (unlikely(mode != SSD_DRV_MODE_STANDARD)) + return; + + (void)ssd_del_timer(&dev->routine_timer); + + (void)ssd_del_timer(&dev->bm_timer); +} + +static int ssd_init_routine(struct ssd_device *dev) +{ + if (unlikely(mode != SSD_DRV_MODE_STANDARD)) + return 0; + +#if (LINUX_VERSION_CODE < KERNEL_VERSION(2,6,20)) + INIT_WORK(&dev->bm_work, ssd_bm_worker, dev); + INIT_WORK(&dev->hwmon_work, ssd_hwmon_worker, dev); + INIT_WORK(&dev->capmon_work, ssd_capmon_worker, dev); + INIT_WORK(&dev->tempmon_work, ssd_tempmon_worker, dev); +#else + INIT_WORK(&dev->bm_work, ssd_bm_worker); + INIT_WORK(&dev->hwmon_work, ssd_hwmon_worker); + INIT_WORK(&dev->capmon_work, ssd_capmon_worker); + INIT_WORK(&dev->tempmon_work, ssd_tempmon_worker); +#endif + + /* initial log */ + ssd_initial_log(dev); + + /* schedule bm routine */ + ssd_add_timer(&dev->bm_timer, msecs_to_jiffies(SSD_BM_CAP_LEARNING_DELAY), ssd_bm_routine_start, dev); + + /* schedule routine */ + ssd_add_timer(&dev->routine_timer, msecs_to_jiffies(SSD_ROUTINE_INTERVAL), ssd_routine_start, dev); + + return 0; +} + +static void +#if (LINUX_VERSION_CODE < KERNEL_VERSION(2,6,38)) +__devexit +#endif +ssd_remove_one (struct pci_dev *pdev) +{ + struct ssd_device *dev; + + if (!pdev) { + return; + } + + dev = pci_get_drvdata(pdev); + if (!dev) { + return; + } + + list_del_init(&dev->list); + + ssd_unregister_sysfs(dev); + + /* offline firstly */ + test_and_clear_bit(SSD_ONLINE, &dev->state); + + /* clean work queue first */ + if (!dev->slave) { + test_and_clear_bit(SSD_INIT_WORKQ, &dev->state); + ssd_cleanup_workq(dev); + } + + /* flush cache */ + (void)ssd_flush(dev); + (void)ssd_save_md(dev); + + /* save smart */ + if (!dev->slave) { + ssd_save_smart(dev); + } + + if (test_and_clear_bit(SSD_INIT_BD, &dev->state)) { + ssd_cleanup_blkdev(dev); + } + + if (!dev->slave) { + ssd_cleanup_chardev(dev); + } + + /* clean routine */ + if (!dev->slave) { + ssd_cleanup_routine(dev); + } + + ssd_cleanup_queue(dev); + + ssd_cleanup_tag(dev); + ssd_cleanup_thread(dev); + + ssd_free_irq(dev); + + ssd_cleanup_dcmd(dev); + ssd_cleanup_cmd(dev); + ssd_cleanup_response(dev); + + if (!dev->slave) { + ssd_cleanup_log(dev); + } + + if (dev->reload_fw) { //reload fw + dev->has_non_0x98_reg_access = 1; + ssd_reg32_write(dev->ctrlp + SSD_RELOAD_FW_REG, SSD_RELOAD_FW); + } + + /* unmap physical adress */ +#ifdef LINUX_SUSE_OS + iounmap(dev->ctrlp); +#else + pci_iounmap(pdev, dev->ctrlp); +#endif + + release_mem_region(dev->mmio_base, dev->mmio_len); + + pci_disable_device(pdev); + + pci_set_drvdata(pdev, NULL); + + ssd_put(dev); +} + +static int +#if (LINUX_VERSION_CODE < KERNEL_VERSION(2,6,38)) +__devinit +#endif +ssd_init_one(struct pci_dev *pdev, + const struct pci_device_id *ent) +{ + struct ssd_device *dev; + int ret = 0; + + if (!pdev || !ent) { + ret = -EINVAL; + goto out; + } + + dev = kmalloc(sizeof(struct ssd_device), GFP_KERNEL); + if (!dev) { + ret = -ENOMEM; + goto out_alloc_dev; + } + memset(dev, 0, sizeof(struct ssd_device)); + + dev->owner = THIS_MODULE; + + if (SSD_SLAVE_PORT_DEVID == ent->device) { + dev->slave = 1; + } + + dev->idx = ssd_get_index(dev->slave); + if (dev->idx < 0) { + ret = -ENOMEM; + goto out_get_index; + } + + if (!dev->slave) { + snprintf(dev->name, SSD_DEV_NAME_LEN, SSD_DEV_NAME); + ssd_set_dev_name(&dev->name[strlen(SSD_DEV_NAME)], SSD_DEV_NAME_LEN-strlen(SSD_DEV_NAME), dev->idx); + + dev->major = ssd_major; + dev->cmajor = ssd_cmajor; + } else { + snprintf(dev->name, SSD_DEV_NAME_LEN, SSD_SDEV_NAME); + ssd_set_dev_name(&dev->name[strlen(SSD_SDEV_NAME)], SSD_DEV_NAME_LEN-strlen(SSD_SDEV_NAME), dev->idx); + dev->major = ssd_major_sl; + dev->cmajor = 0; + } + + dev->reset_time = (uint64_t)ktime_get_real_seconds(); + + atomic_set(&(dev->refcnt), 0); + atomic_set(&(dev->tocnt), 0); + + mutex_init(&dev->fw_mutex); + + //xx + mutex_init(&dev->gd_mutex); + dev->has_non_0x98_reg_access = 0; + + //init in_flight lock + spin_lock_init(&dev->in_flight_lock); + + dev->pdev = pdev; + pci_set_drvdata(pdev, dev); + + kref_init(&dev->kref); + + ret = pci_enable_device(pdev); + if (ret) { + hio_warn("%s: can not enable device\n", dev->name); + goto out_enable_device; + } + + pci_set_master(pdev); + +#if (LINUX_VERSION_CODE < KERNEL_VERSION(2,6,31)) + ret = pci_set_dma_mask(pdev, DMA_64BIT_MASK); +#else + ret = pci_set_dma_mask(pdev, DMA_BIT_MASK(64)); +#endif + if (ret) { + hio_warn("%s: set dma mask: failed\n", dev->name); + goto out_set_dma_mask; + } + +#if (LINUX_VERSION_CODE < KERNEL_VERSION(2,6,31)) + ret = pci_set_consistent_dma_mask(pdev, DMA_64BIT_MASK); +#else + ret = pci_set_consistent_dma_mask(pdev, DMA_BIT_MASK(64)); +#endif + if (ret) { + hio_warn("%s: set consistent dma mask: failed\n", dev->name); + goto out_set_dma_mask; + } + + dev->mmio_base = pci_resource_start(pdev, 0); + dev->mmio_len = pci_resource_len(pdev, 0); + + if (!request_mem_region(dev->mmio_base, dev->mmio_len, SSD_DEV_NAME)) { + hio_warn("%s: can not reserve MMIO region 0\n", dev->name); + ret = -EBUSY; + goto out_request_mem_region; + } + + /* 2.6.9 kernel bug */ + dev->ctrlp = pci_iomap(pdev, 0, 0); + if (!dev->ctrlp) { + hio_warn("%s: can not remap IO region 0\n", dev->name); + ret = -ENOMEM; + goto out_pci_iomap; + } + + ret = ssd_check_hw(dev); + if (ret) { + hio_err("%s: check hardware failed\n", dev->name); + goto out_check_hw; + } + + ret = ssd_init_protocol_info(dev); + if (ret) { + hio_err("%s: init protocol info failed\n", dev->name); + goto out_init_protocol_info; + } + + /* alarm led ? */ + ssd_clear_alarm(dev); + + ret = ssd_init_fw_info(dev); + if (ret) { + hio_err("%s: init firmware info failed\n", dev->name); + /* alarm led */ + ssd_set_alarm(dev); + goto out_init_fw_info; + } + + /* slave port ? */ + if (dev->slave) { + goto init_next1; + } + + ret = ssd_init_rom_info(dev); + if (ret) { + hio_err("%s: init rom info failed\n", dev->name); + /* alarm led */ + ssd_set_alarm(dev); + goto out_init_rom_info; + } + + ret = ssd_init_label(dev); + if (ret) { + hio_err("%s: init label failed\n", dev->name); + /* alarm led */ + ssd_set_alarm(dev); + goto out_init_label; + } + + ret = ssd_init_workq(dev); + if (ret) { + hio_warn("%s: init workq failed\n", dev->name); + goto out_init_workq; + } + (void)test_and_set_bit(SSD_INIT_WORKQ, &dev->state); + + ret = ssd_init_log(dev); + if (ret) { + hio_err("%s: init log failed\n", dev->name); + /* alarm led */ + ssd_set_alarm(dev); + goto out_init_log; + } + + ret = ssd_init_smart(dev); + if (ret) { + hio_err("%s: init info failed\n", dev->name); + /* alarm led */ + ssd_set_alarm(dev); + goto out_init_smart; + } + +init_next1: + ret = ssd_init_hw_info(dev); + if (ret) { + hio_err("%s: init hardware info failed\n", dev->name); + /* alarm led */ + ssd_set_alarm(dev); + goto out_init_hw_info; + } + + /* slave port ? */ + if (dev->slave) { + goto init_next2; + } + + ret = ssd_init_sensor(dev); + if (ret) { + hio_err("%s: init sensor failed\n", dev->name); + /* alarm led */ + ssd_set_alarm(dev); + goto out_init_sensor; + } + + ret = ssd_init_pl_cap(dev); + if (ret) { + hio_err("%s: int pl_cap failed\n", dev->name); + /* alarm led */ + ssd_set_alarm(dev); + goto out_init_pl_cap; + } + +init_next2: + ret = ssd_check_init_state(dev); + if (ret) { + hio_err("%s: check init state failed\n", dev->name); + /* alarm led */ + ssd_set_alarm(dev); + goto out_check_init_state; + } + + ret = ssd_init_response(dev); + if (ret) { + hio_warn("%s: init resp_msg failed\n", dev->name); + goto out_init_response; + } + + ret = ssd_init_cmd(dev); + if (ret) { + hio_warn("%s: init msg failed\n", dev->name); + goto out_init_cmd; + } + + ret = ssd_init_dcmd(dev); + if (ret) { + hio_warn("%s: init cmd failed\n", dev->name); + goto out_init_dcmd; + } + + ret = ssd_init_irq(dev); + if (ret) { + hio_warn("%s: init irq failed\n", dev->name); + goto out_init_irq; + } + + ret = ssd_init_thread(dev); + if (ret) { + hio_warn("%s: init thread failed\n", dev->name); + goto out_init_thread; + } + + ret = ssd_init_tag(dev); + if(ret) { + hio_warn("%s: init tags failed\n", dev->name); + goto out_init_tags; + } + + /* */ + (void)test_and_set_bit(SSD_ONLINE, &dev->state); + + ret = ssd_init_queue(dev); + if (ret) { + hio_warn("%s: init queue failed\n", dev->name); + goto out_init_queue; + } + + /* slave port ? */ + if (dev->slave) { + goto init_next3; + } + + ret = ssd_init_ot_protect(dev); + if (ret) { + hio_err("%s: int ot_protect failed\n", dev->name); + /* alarm led */ + ssd_set_alarm(dev); + goto out_int_ot_protect; + } + + ret = ssd_init_wmode(dev); + if (ret) { + hio_warn("%s: init write mode\n", dev->name); + goto out_init_wmode; + } + + /* init routine after hw is ready */ + ret = ssd_init_routine(dev); + if (ret) { + hio_warn("%s: init routine\n", dev->name); + goto out_init_routine; + } + + ret = ssd_init_chardev(dev); + if (ret) { + hio_warn("%s: register char device failed\n", dev->name); + goto out_init_chardev; + } + +init_next3: + ret = ssd_init_blkdev(dev); + if (ret) { + hio_warn("%s: register block device failed\n", dev->name); + goto out_init_blkdev; + } + (void)test_and_set_bit(SSD_INIT_BD, &dev->state); + + ret = ssd_register_sysfs(dev); + if (ret) { + hio_warn("%s: register sysfs failed\n", dev->name); + goto out_register_sysfs; + } + + dev->save_md = 1; + + list_add_tail(&dev->list, &ssd_list); + + return 0; + +out_register_sysfs: + test_and_clear_bit(SSD_INIT_BD, &dev->state); + ssd_cleanup_blkdev(dev); +out_init_blkdev: + /* slave port ? */ + if (!dev->slave) { + ssd_cleanup_chardev(dev); + } +out_init_chardev: + /* slave port ? */ + if (!dev->slave) { + ssd_cleanup_routine(dev); + } +out_init_routine: +out_init_wmode: +out_int_ot_protect: + ssd_cleanup_queue(dev); +out_init_queue: + test_and_clear_bit(SSD_ONLINE, &dev->state); + ssd_cleanup_tag(dev); +out_init_tags: + ssd_cleanup_thread(dev); +out_init_thread: + ssd_free_irq(dev); +out_init_irq: + ssd_cleanup_dcmd(dev); +out_init_dcmd: + ssd_cleanup_cmd(dev); +out_init_cmd: + ssd_cleanup_response(dev); +out_init_response: +out_check_init_state: +out_init_pl_cap: +out_init_sensor: +out_init_hw_info: +out_init_smart: + /* slave port ? */ + if (!dev->slave) { + ssd_cleanup_log(dev); + } +out_init_log: + /* slave port ? */ + if (!dev->slave) { + test_and_clear_bit(SSD_INIT_WORKQ, &dev->state); + ssd_cleanup_workq(dev); + } +out_init_workq: +out_init_label: +out_init_rom_info: +out_init_fw_info: +out_init_protocol_info: +out_check_hw: +#ifdef LINUX_SUSE_OS + iounmap(dev->ctrlp); +#else + pci_iounmap(pdev, dev->ctrlp); +#endif +out_pci_iomap: + release_mem_region(dev->mmio_base, dev->mmio_len); +out_request_mem_region: +out_set_dma_mask: + pci_disable_device(pdev); +out_enable_device: + pci_set_drvdata(pdev, NULL); +out_get_index: + kfree(dev); +out_alloc_dev: +out: + return ret; +} + +static void ssd_cleanup_tasklet(void) +{ + int i; + for_each_online_cpu(i) { + tasklet_kill(&per_cpu(ssd_tasklet, i)); + } +} + +static int ssd_init_tasklet(void) +{ + int i; + + for_each_online_cpu(i) { + INIT_LIST_HEAD(&per_cpu(ssd_doneq, i)); + + if (finject) { + tasklet_init(&per_cpu(ssd_tasklet, i), __ssd_done_db, 0); + } else { + tasklet_init(&per_cpu(ssd_tasklet, i), __ssd_done, 0); + } + } + + return 0; +} + +static struct pci_device_id ssd_pci_tbl[] = { + { 0x10ee, 0x0007, PCI_ANY_ID, PCI_ANY_ID, }, /* g3 */ + { 0x19e5, 0x0007, PCI_ANY_ID, PCI_ANY_ID, }, /* v1 */ + //{ 0x19e5, 0x0008, PCI_ANY_ID, PCI_ANY_ID, }, /* v1 sp*/ + { 0x19e5, 0x0009, PCI_ANY_ID, PCI_ANY_ID, }, /* v2 */ + { 0x19e5, 0x000a, PCI_ANY_ID, PCI_ANY_ID, }, /* v2 dp slave*/ + { 0, } +}; + +/*driver power management handler for pm_ops*/ +#if (LINUX_VERSION_CODE < KERNEL_VERSION(2,6,32)) +static int ssd_hio_suspend(struct pci_dev *pdev, pm_message_t state) +{ +#else +static int ssd_hio_suspend(struct device *ddev) +{ + struct pci_dev *pdev = to_pci_dev(ddev); +#endif + struct ssd_device *dev; + + + if (!pdev) { + return -EINVAL; + } + + dev = pci_get_drvdata(pdev); + if (!dev) { + return -EINVAL; + } + + hio_warn("%s: suspend disk start.\n", dev->name); + ssd_unregister_sysfs(dev); + + /* offline firstly */ + test_and_clear_bit(SSD_ONLINE, &dev->state); + + /* clean work queue first */ + if (!dev->slave) { + test_and_clear_bit(SSD_INIT_WORKQ, &dev->state); + ssd_cleanup_workq(dev); + } + + /* flush cache */ + (void)ssd_flush(dev); + (void)ssd_save_md(dev); + + /* save smart */ + if (!dev->slave) { + ssd_save_smart(dev); + } + + /* clean routine */ + if (!dev->slave) { + ssd_cleanup_routine(dev); + } + + ssd_cleanup_thread(dev); + + ssd_free_irq(dev); + + if (!dev->slave) { + ssd_cleanup_log(dev); + } + + if (dev->reload_fw) { //reload fw + dev->has_non_0x98_reg_access = 1; + ssd_reg32_write(dev->ctrlp + SSD_RELOAD_FW_REG, SSD_RELOAD_FW); + } + + /* unmap physical adress */ + if (dev->ctrlp) { +#ifdef LINUX_SUSE_OS + iounmap(dev->ctrlp); +#else + pci_iounmap(pdev, dev->ctrlp); +#endif + dev->ctrlp = NULL; + } + + if (dev->mmio_base) { + release_mem_region(dev->mmio_base, dev->mmio_len); + dev->mmio_base = 0; + } + + pci_disable_device(pdev); + + hio_warn("%s: suspend disk finish.\n", dev->name); + + return 0; +} + + +#if (LINUX_VERSION_CODE < KERNEL_VERSION(2,6,32)) +static int ssd_hio_resume(struct pci_dev *pdev) +{ +#else +static int ssd_hio_resume(struct device *ddev) +{ + struct pci_dev *pdev = to_pci_dev(ddev); +#endif + struct ssd_device *dev = NULL; + int ret = 0; + + if (!pdev ) { + ret = -EINVAL; + goto out; + } + + dev = pci_get_drvdata(pdev); + if (!dev) { + ret = -ENOMEM; + goto out_alloc_dev; + } + + hio_warn("%s: resume disk start.\n", dev->name); + ret = pci_enable_device(pdev); + if (ret) { + hio_warn("%s: can not enable device\n", dev->name); + goto out_enable_device; + } + + pci_set_master(pdev); + +#if (LINUX_VERSION_CODE < KERNEL_VERSION(2,6,31)) + ret = pci_set_dma_mask(pdev, DMA_64BIT_MASK); +#else + ret = pci_set_dma_mask(pdev, DMA_BIT_MASK(64)); +#endif + if (ret) { + hio_warn("%s: set dma mask: failed\n", dev->name); + goto out_set_dma_mask; + } + +#if (LINUX_VERSION_CODE < KERNEL_VERSION(2,6,31)) + ret = pci_set_consistent_dma_mask(pdev, DMA_64BIT_MASK); +#else + ret = pci_set_consistent_dma_mask(pdev, DMA_BIT_MASK(64)); +#endif + if (ret) { + hio_warn("%s: set consistent dma mask: failed\n", dev->name); + goto out_set_dma_mask; + } + + dev->mmio_base = pci_resource_start(pdev, 0); + dev->mmio_len = pci_resource_len(pdev, 0); + + if (!request_mem_region(dev->mmio_base, dev->mmio_len, SSD_DEV_NAME)) { + hio_warn("%s: can not reserve MMIO region 0\n", dev->name); + ret = -EBUSY; + goto out_request_mem_region; + } + + /* 2.6.9 kernel bug */ + dev->ctrlp = pci_iomap(pdev, 0, 0); + if (!dev->ctrlp) { + hio_warn("%s: can not remap IO region 0\n", dev->name); + ret = -ENOMEM; + goto out_pci_iomap; + } + + ret = ssd_check_hw(dev); + if (ret) { + hio_err("%s: check hardware failed\n", dev->name); + goto out_check_hw; + } + + /* alarm led ? */ + ssd_clear_alarm(dev); + + ret = ssd_init_fw_info(dev); + if (ret) { + hio_err("%s: init firmware info failed\n", dev->name); + /* alarm led */ + ssd_set_alarm(dev); + goto out_init_fw_info; + } + + /* slave port ? */ + if (dev->slave) { + goto init_next1; + } + + ret = ssd_init_rom_info(dev); + if (ret) { + hio_err("%s: init rom info failed\n", dev->name); + /* alarm led */ + ssd_set_alarm(dev); + goto out_init_rom_info; + } + + ret = ssd_init_label(dev); + if (ret) { + hio_err("%s: init label failed\n", dev->name); + /* alarm led */ + ssd_set_alarm(dev); + goto out_init_label; + } + + ret = ssd_init_workq(dev); + if (ret) { + hio_warn("%s: init workq failed\n", dev->name); + goto out_init_workq; + } + (void)test_and_set_bit(SSD_INIT_WORKQ, &dev->state); + + ret = ssd_init_log(dev); + if (ret) { + hio_err("%s: init log failed\n", dev->name); + /* alarm led */ + ssd_set_alarm(dev); + goto out_init_log; + } + + ret = ssd_init_smart(dev); + if (ret) { + hio_err("%s: init info failed\n", dev->name); + /* alarm led */ + ssd_set_alarm(dev); + goto out_init_smart; + } + +init_next1: + ret = ssd_init_hw_info(dev); + if (ret) { + hio_err("%s: init hardware info failed\n", dev->name); + /* alarm led */ + ssd_set_alarm(dev); + goto out_init_hw_info; + } + + /* slave port ? */ + if (dev->slave) { + goto init_next2; + } + + ret = ssd_init_sensor(dev); + if (ret) { + hio_err("%s: init sensor failed\n", dev->name); + /* alarm led */ + ssd_set_alarm(dev); + goto out_init_sensor; + } + + ret = ssd_init_pl_cap(dev); + if (ret) { + hio_err("%s: int pl_cap failed\n", dev->name); + /* alarm led */ + ssd_set_alarm(dev); + goto out_init_pl_cap; + } + +init_next2: + ret = ssd_check_init_state(dev); + if (ret) { + hio_err("%s: check init state failed\n", dev->name); + /* alarm led */ + ssd_set_alarm(dev); + goto out_check_init_state; + } + + //flush all base pointer to ssd + (void)ssd_reload_ssd_ptr(dev); + + ret = ssd_init_irq(dev); + if (ret) { + hio_warn("%s: init irq failed\n", dev->name); + goto out_init_irq; + } + + ret = ssd_init_thread(dev); + if (ret) { + hio_warn("%s: init thread failed\n", dev->name); + goto out_init_thread; + } + + /* */ + (void)test_and_set_bit(SSD_ONLINE, &dev->state); + + /* slave port ? */ + if (dev->slave) { + goto init_next3; + } + + ret = ssd_init_ot_protect(dev); + if (ret) { + hio_err("%s: int ot_protect failed\n", dev->name); + /* alarm led */ + ssd_set_alarm(dev); + goto out_int_ot_protect; + } + + ret = ssd_init_wmode(dev); + if (ret) { + hio_warn("%s: init write mode\n", dev->name); + goto out_init_wmode; + } + + /* init routine after hw is ready */ + ret = ssd_init_routine(dev); + if (ret) { + hio_warn("%s: init routine\n", dev->name); + goto out_init_routine; + } + +init_next3: + (void)test_and_set_bit(SSD_INIT_BD, &dev->state); + + dev->save_md = 1; + + hio_warn("%s: resume disk finish.\n", dev->name); + + return 0; + +out_init_routine: +out_init_wmode: +out_int_ot_protect: + ssd_cleanup_thread(dev); +out_init_thread: + ssd_free_irq(dev); +out_init_irq: +out_check_init_state: +out_init_pl_cap: +out_init_sensor: +out_init_hw_info: +out_init_smart: + /* slave port ? */ + if (!dev->slave) { + ssd_cleanup_log(dev); + } +out_init_log: + /* slave port ? */ + if (!dev->slave) { + test_and_clear_bit(SSD_INIT_WORKQ, &dev->state); + ssd_cleanup_workq(dev); + } +out_init_workq: +out_init_label: +out_init_rom_info: +out_init_fw_info: +out_check_hw: +#ifdef LINUX_SUSE_OS + iounmap(dev->ctrlp); +#else + pci_iounmap(pdev, dev->ctrlp); +#endif +out_pci_iomap: + release_mem_region(dev->mmio_base, dev->mmio_len); +out_request_mem_region: +out_set_dma_mask: + pci_disable_device(pdev); +out_enable_device: +out_alloc_dev: +out: + + hio_warn("%s: resume disk fail.\n", dev->name); + + return ret; +} + +MODULE_DEVICE_TABLE(pci, ssd_pci_tbl); + +#if (LINUX_VERSION_CODE < KERNEL_VERSION(2,6,32)) +#else +SIMPLE_DEV_PM_OPS(hio_pm_ops, ssd_hio_suspend, ssd_hio_resume); +#endif + +struct pci_driver ssd_driver = { + .name = MODULE_NAME, + .id_table = ssd_pci_tbl, + .probe = ssd_init_one, +#if (LINUX_VERSION_CODE < KERNEL_VERSION(2,6,38)) + .remove = __devexit_p(ssd_remove_one), +#else + .remove = ssd_remove_one, +#endif + +#if (LINUX_VERSION_CODE < KERNEL_VERSION(2,6,32)) + .suspend = ssd_hio_suspend, + .resume = ssd_hio_resume, +#else + .driver = { + .pm = &hio_pm_ops, + }, +#endif +}; + +/* notifier block to get a notify on system shutdown/halt/reboot */ +static int ssd_notify_reboot(struct notifier_block *nb, unsigned long event, void *buf) +{ + struct ssd_device *dev = NULL; + struct ssd_device *n = NULL; + + list_for_each_entry_safe(dev, n, &ssd_list, list) { + ssd_gen_swlog(dev, SSD_LOG_POWER_OFF, 0); + + (void)ssd_flush(dev); + (void)ssd_save_md(dev); + + /* slave port ? */ + if (!dev->slave) { + ssd_save_smart(dev); + + ssd_stop_workq(dev); + + if (dev->reload_fw) { + dev->has_non_0x98_reg_access = 1; + ssd_reg32_write(dev->ctrlp + SSD_RELOAD_FW_REG, SSD_RELOAD_FW); + } + } + } + + return NOTIFY_OK; +} + +static struct notifier_block ssd_notifier = { + ssd_notify_reboot, NULL, 0 +}; + +static int __init ssd_init_module(void) +{ + int ret = 0; + + hio_info("driver version: %s\n", DRIVER_VERSION); + + ret = ssd_init_index(); + if (ret) { + hio_warn("init index failed\n"); + goto out_init_index; + } + + ret = ssd_init_proc(); + if (ret) { + hio_warn("init proc failed\n"); + goto out_init_proc; + } + + ret = ssd_init_sysfs(); + if (ret) { + hio_warn("init sysfs failed\n"); + goto out_init_sysfs; + } + + ret = ssd_init_tasklet(); + if (ret) { + hio_warn("init tasklet failed\n"); + goto out_init_tasklet; + } + +#if (LINUX_VERSION_CODE <= KERNEL_VERSION(2,6,12)) + ssd_class = class_simple_create(THIS_MODULE, SSD_DEV_NAME); +#else + ssd_class = class_create(THIS_MODULE, SSD_DEV_NAME); +#endif + if (IS_ERR(ssd_class)) { + ret = PTR_ERR(ssd_class); + goto out_class_create; + } + + if (ssd_cmajor > 0) { + ret = register_chrdev(ssd_cmajor, SSD_CDEV_NAME, &ssd_cfops); + } else { + ret = ssd_cmajor = register_chrdev(ssd_cmajor, SSD_CDEV_NAME, &ssd_cfops); + } + if (ret < 0) { + hio_warn("unable to register chardev major number\n"); + goto out_register_chardev; + } + + if (ssd_major > 0) { + ret = register_blkdev(ssd_major, SSD_DEV_NAME); + } else { + ret = ssd_major = register_blkdev(ssd_major, SSD_DEV_NAME); + } + if (ret < 0) { + hio_warn("unable to register major number\n"); + goto out_register_blkdev; + } + + if (ssd_major_sl > 0) { + ret = register_blkdev(ssd_major_sl, SSD_SDEV_NAME); + } else { + ret = ssd_major_sl = register_blkdev(ssd_major_sl, SSD_SDEV_NAME); + } + if (ret < 0) { + hio_warn("unable to register slave major number\n"); + goto out_register_blkdev_sl; + } + + if (mode < SSD_DRV_MODE_STANDARD || mode > SSD_DRV_MODE_BASE) { + mode = SSD_DRV_MODE_STANDARD; + } + + /* for debug */ + if (mode != SSD_DRV_MODE_STANDARD) { + ssd_minors = 1; + } + + if (int_mode < SSD_INT_LEGACY || int_mode > SSD_INT_MSIX) { + int_mode = SSD_INT_MODE_DEFAULT; + } + + if (threaded_irq) { + int_mode = SSD_INT_MSI; + } + + if (log_level >= SSD_LOG_NR_LEVEL || log_level < SSD_LOG_LEVEL_INFO) { + log_level = SSD_LOG_LEVEL_ERR; + } + + if (wmode < SSD_WMODE_BUFFER || wmode > SSD_WMODE_DEFAULT) { + wmode = SSD_WMODE_DEFAULT; + } + +#if (LINUX_VERSION_CODE < KERNEL_VERSION(2,6,20)) + ret = pci_module_init(&ssd_driver); +#else + ret = pci_register_driver(&ssd_driver); +#endif + if (ret) { + hio_warn("pci init failed\n"); + goto out_pci_init; + } + + ret = register_reboot_notifier(&ssd_notifier); + if (ret) { + hio_warn("register reboot notifier failed\n"); + goto out_register_reboot_notifier; + } + + return 0; + +out_register_reboot_notifier: +out_pci_init: + pci_unregister_driver(&ssd_driver); + unregister_blkdev(ssd_major_sl, SSD_SDEV_NAME); +out_register_blkdev_sl: + unregister_blkdev(ssd_major, SSD_DEV_NAME); +out_register_blkdev: + unregister_chrdev(ssd_cmajor, SSD_CDEV_NAME); +out_register_chardev: +#if (LINUX_VERSION_CODE <= KERNEL_VERSION(2,6,12)) + class_simple_destroy(ssd_class); +#else + class_destroy(ssd_class); +#endif +out_class_create: + ssd_cleanup_tasklet(); +out_init_tasklet: + ssd_cleanup_sysfs(); +out_init_sysfs: + ssd_cleanup_proc(); +out_init_proc: + ssd_cleanup_index(); +out_init_index: + return ret; + +} + +static void __exit ssd_cleanup_module(void) +{ + + hio_info("unload driver: %s\n", DRIVER_VERSION); + /* exiting */ + ssd_exiting = 1; + + unregister_reboot_notifier(&ssd_notifier); + + pci_unregister_driver(&ssd_driver); + + unregister_blkdev(ssd_major_sl, SSD_SDEV_NAME); + unregister_blkdev(ssd_major, SSD_DEV_NAME); + unregister_chrdev(ssd_cmajor, SSD_CDEV_NAME); +#if (LINUX_VERSION_CODE <= KERNEL_VERSION(2,6,12)) + class_simple_destroy(ssd_class); +#else + class_destroy(ssd_class); +#endif + + ssd_cleanup_tasklet(); + ssd_cleanup_sysfs(); + ssd_cleanup_proc(); + ssd_cleanup_index(); +} + +int ssd_register_event_notifier(struct block_device *bdev, ssd_event_call event_call) +{ + struct ssd_device *dev; + struct ssd_log *le, *temp_le = NULL; + uint64_t cur; + int temp = 0; + int log_nr; + + if (!bdev || !event_call || !(bdev->bd_disk)) { + return -EINVAL; + } + + dev = bdev->bd_disk->private_data; + dev->event_call = event_call; + + cur = (uint64_t)ktime_get_real_seconds(); + + le = (struct ssd_log *)(dev->internal_log.log); + log_nr = dev->internal_log.nr_log; + + while (log_nr--) { + if (le->time <= cur && le->time >= dev->uptime) { + if ((le->le.event == SSD_LOG_SEU_FAULT1) && (le->time < dev->reset_time)) { + le++; + continue; + } + if (le->le.event == SSD_LOG_OVER_TEMP || le->le.event == SSD_LOG_NORMAL_TEMP || le->le.event == SSD_LOG_WARN_TEMP) { + if (!temp_le || le->time >= temp_le->time) { + temp_le = le; + } + le++; + continue; + } + (void)dev->event_call(dev->gd, le->le.event, ssd_parse_log(dev, le, 0)); + } + le++; + } + + ssd_get_temperature(bdev, &temp); + if (temp_le && (temp >= SSD_OT_TEMP_HYST)) { + (void)dev->event_call(dev->gd, temp_le->le.event, ssd_parse_log(dev, temp_le, 0)); + } + + return 0; +} + +int ssd_unregister_event_notifier(struct block_device *bdev) +{ + struct ssd_device *dev; + + if (!bdev || !(bdev->bd_disk)) { + return -EINVAL; + } + + dev = bdev->bd_disk->private_data; + dev->event_call = NULL; + + return 0; +} + +EXPORT_SYMBOL(ssd_get_label); +EXPORT_SYMBOL(ssd_get_version); +EXPORT_SYMBOL(ssd_set_otprotect); +EXPORT_SYMBOL(ssd_bm_status); +EXPORT_SYMBOL(ssd_submit_pbio); +EXPORT_SYMBOL(ssd_get_pciaddr); +EXPORT_SYMBOL(ssd_get_temperature); +EXPORT_SYMBOL(ssd_register_event_notifier); +EXPORT_SYMBOL(ssd_unregister_event_notifier); +EXPORT_SYMBOL(ssd_reset); +EXPORT_SYMBOL(ssd_set_wmode); + + + +module_init(ssd_init_module); +module_exit(ssd_cleanup_module); +MODULE_VERSION(DRIVER_VERSION); +MODULE_LICENSE("GPL"); +MODULE_AUTHOR("Huawei SSD DEV Team"); +MODULE_DESCRIPTION("Huawei SSD driver"); --- linux-azure-5.8-5.8.0.orig/ubuntu/hio/hio.h +++ linux-azure-5.8-5.8.0/ubuntu/hio/hio.h @@ -0,0 +1,104 @@ +/* +* Huawei SSD device driver +* Copyright (c) 2016, Huawei Technologies Co., Ltd. +* +* This program is free software; you can redistribute it and/or modify it +* under the terms and conditions of the GNU General Public License, +* version 2, as published by the Free Software Foundation. +* +* This program is distributed in the hope it will be useful, but WITHOUT +* ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or +* FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for +* more details. +*/ + +#ifndef _HIO_H +#define _HIO_H + +#include +#include +#include +#include + + + +typedef int (*ssd_event_call)(struct gendisk *, int, int); /* gendisk, event id, event level */ +extern int ssd_register_event_notifier(struct block_device *bdev, ssd_event_call event_call); +/* unregister event notifier before module exit */ +extern int ssd_unregister_event_notifier(struct block_device *bdev); + + +/* label */ +#define SSD_LABEL_FIELD_SZ 32 +#define SSD_SN_SZ 16 + +typedef struct ssd_label +{ + char date[SSD_LABEL_FIELD_SZ]; + char sn[SSD_LABEL_FIELD_SZ]; + char part[SSD_LABEL_FIELD_SZ]; + char desc[SSD_LABEL_FIELD_SZ]; + char other[SSD_LABEL_FIELD_SZ]; + char maf[SSD_LABEL_FIELD_SZ]; +} ssd_label_t; + + +/* version */ +typedef struct ssd_version_info +{ + uint32_t bridge_ver; /* bridge fw version: hex */ + uint32_t ctrl_ver; /* controller fw version: hex */ + uint32_t bm_ver; /* battery manager fw version: hex */ + uint8_t pcb_ver; /* main pcb version: char */ + uint8_t upper_pcb_ver; + uint8_t pad0; + uint8_t pad1; +} ssd_version_info_t; + +extern int ssd_get_label(struct block_device *bdev, struct ssd_label *label); +extern int ssd_get_version(struct block_device *bdev, struct ssd_version_info *ver); +extern int ssd_get_temperature(struct block_device *bdev, int *temp); + + +enum ssd_bmstatus +{ + SSD_BMSTATUS_OK = 0, + SSD_BMSTATUS_CHARGING, + SSD_BMSTATUS_WARNING +}; +extern int ssd_bm_status(struct block_device *bdev, int *status); + +enum ssd_otprotect +{ + SSD_OTPROTECT_OFF = 0, + SSD_OTPROTECT_ON +}; +extern int ssd_set_otprotect(struct block_device *bdev, int otprotect); + +typedef struct pci_addr +{ + uint16_t domain; + uint8_t bus; + uint8_t slot; + uint8_t func; +} pci_addr_t; +extern int ssd_get_pciaddr(struct block_device *bdev, struct pci_addr *paddr); + +/* submit phys bio: phys addr in iovec */ +extern void ssd_submit_pbio(struct request_queue *q, struct bio *bio); + +extern int ssd_reset(struct block_device *bdev); + +enum ssd_write_mode +{ + SSD_WMODE_BUFFER = 0, + SSD_WMODE_BUFFER_EX, + SSD_WMODE_FUA, + /* dummy */ + SSD_WMODE_AUTO, + SSD_WMODE_DEFAULT +}; +extern int ssd_set_wmode(struct block_device *bdev, int wmode); + +#endif + --- linux-azure-5.8-5.8.0.orig/ubuntu/include/Kbuild +++ linux-azure-5.8-5.8.0/ubuntu/include/Kbuild @@ -0,0 +1,2 @@ + + --- linux-azure-5.8-5.8.0.orig/ubuntu/include/README +++ linux-azure-5.8-5.8.0/ubuntu/include/README @@ -0,0 +1,4 @@ +Only use this directory for things which need to share their headers with +other parts of the kernel or other modules in ubuntu/ + +Otherwise, keep them local to the module directory. --- linux-azure-5.8-5.8.0.orig/ubuntu/sgx/License.txt +++ linux-azure-5.8-5.8.0/ubuntu/sgx/License.txt @@ -0,0 +1,46 @@ +Copyright (C) 2018 Intel Corporation +  +This software is licensed under +(a) a 3-clause BSD license; or alternatively +(b) the GPL v2 license +  +-- A. BSD-3-Clause ---------------------------- +Redistribution and use in source and binary forms, with or without modification, +are permitted provided that the following conditions are met: +1. Redistributions of source code must retain the above copyright notice, +   this list of conditions and the following disclaimer. +2. Redistributions in binary form must reproduce the above copyright notice, +   this list of conditions and the following disclaimer in the documentation +   and/or other materials provided with the distribution. +3. Neither the name of the copyright holder nor the names of its contributors +   may be used to endorse or promote products derived from this software +   without specific prior written permission. +  +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" +AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, +THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE +ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS +BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, +OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT +OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; +OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, +WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE +OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, +EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. +  +-- B. GPL-2.0 ---------------------------- +This program is free software; you can redistribute it and/or modify it +under the terms of the GNU General Public License, as published +by the Free Software Foundation; either version 2 of the License, +or (at your option) any later version. +  +This program is distributed in the hope that it will be useful, +but WITHOUT ANY WARRANTY; without even the implied warranty of +MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the +GNU General Public License for more details. +  +You should have received a copy of the GNU General Public License +along with this program; if not, see . +------------------------------ + +SPDX-License-Identifier: (BSD-3-Clause OR GPL-2.0) --- linux-azure-5.8-5.8.0.orig/ubuntu/sgx/Makefile +++ linux-azure-5.8-5.8.0/ubuntu/sgx/Makefile @@ -0,0 +1,28 @@ +# SPDX-License-Identifier: (GPL-2.0 OR BSD-3-Clause) +# Copyright(c) 2016-19 Intel Corporation. + +ifneq ($(KERNELRELEASE),) + +obj-m += intel_sgx.o +intel_sgx-y := encl.o main.o reclaim.o driver.o ioctl.o + +else + +KDIR := /lib/modules/$(shell uname -r)/build + +INKERNEL_SGX :=$(shell cat $(KDIR)/.config | grep "CONFIG_INTEL_SGX=y") +ifneq ($(INKERNEL_SGX),) +default: + $(error Can't install DCAP SGX driver with inkernel SGX support) + +else + +PWD := $(shell pwd) +default: + $(MAKE) -C $(KDIR) M=$(PWD) CFLAGS_MODULE="-I$(PWD) -I$(PWD)/include" modules + +endif +endif + +clean: + rm -vrf *.o *.ko *.order *.symvers *.mod.c .tmp_versions .*.cmd *.o.ur-safe *.mod --- linux-azure-5.8-5.8.0.orig/ubuntu/sgx/arch.h +++ linux-azure-5.8-5.8.0/ubuntu/sgx/arch.h @@ -0,0 +1,342 @@ +/* SPDX-License-Identifier: (GPL-2.0 OR BSD-3-Clause) */ +/** + * Copyright(c) 2016-18 Intel Corporation. + * + * Contains data structures defined by the SGX architecture. Data structures + * defined by the Linux software stack should not be placed here. + */ +#ifndef _ASM_X86_SGX_ARCH_H +#define _ASM_X86_SGX_ARCH_H + +#include + +#define SGX_CPUID 0x12 +#define SGX_CPUID_FIRST_VARIABLE_SUB_LEAF 2 + +/** + * enum sgx_return_code - The return code type for ENCLS, ENCLU and ENCLV + * %SGX_NOT_TRACKED: Previous ETRACK's shootdown sequence has not + * been completed yet. + * %SGX_INVALID_EINITTOKEN: EINITTOKEN is invalid and enclave signer's + * public key does not match IA32_SGXLEPUBKEYHASH. + * %SGX_UNMASKED_EVENT: An unmasked event, e.g. INTR, was received + */ +enum sgx_return_code { + SGX_NOT_TRACKED = 11, + SGX_INVALID_EINITTOKEN = 16, + SGX_UNMASKED_EVENT = 128, +}; + +/** + * enum sgx_sub_leaf_types - SGX CPUID variable sub-leaf types + * %SGX_CPUID_SUB_LEAF_INVALID: Indicates this sub-leaf is invalid. + * %SGX_CPUID_SUB_LEAF_EPC_SECTION: Sub-leaf enumerates an EPC section. + */ +enum sgx_sub_leaf_types { + SGX_CPUID_SUB_LEAF_INVALID = 0x0, + SGX_CPUID_SUB_LEAF_EPC_SECTION = 0x1, +}; + +#define SGX_CPUID_SUB_LEAF_TYPE_MASK GENMASK(3, 0) + +#define SGX_MODULUS_SIZE 384 + +/** + * enum sgx_miscselect - additional information to an SSA frame + * %SGX_MISC_EXINFO: Report #PF or #GP to the SSA frame. + * + * Save State Area (SSA) is a stack inside the enclave used to store processor + * state when an exception or interrupt occurs. This enum defines additional + * information stored to an SSA frame. + */ +enum sgx_miscselect { + SGX_MISC_EXINFO = BIT(0), +}; + +#define SGX_MISC_RESERVED_MASK GENMASK_ULL(63, 1) + +#define SGX_SSA_GPRS_SIZE 184 +#define SGX_SSA_MISC_EXINFO_SIZE 16 + +/** + * enum sgx_attributes - the attributes field in &struct sgx_secs + * %SGX_ATTR_INIT: Enclave can be entered (is initialized). + * %SGX_ATTR_DEBUG: Allow ENCLS(EDBGRD) and ENCLS(EDBGWR). + * %SGX_ATTR_MODE64BIT: Tell that this a 64-bit enclave. + * %SGX_ATTR_PROVISIONKEY: Allow to use provisioning keys for remote + * attestation. + * %SGX_ATTR_KSS: Allow to use key separation and sharing (KSS). + * %SGX_ATTR_EINITTOKENKEY: Allow to use token signing key that is used to + * sign cryptographic tokens that can be passed to + * EINIT as an authorization to run an enclave. + */ +enum sgx_attribute { + SGX_ATTR_INIT = BIT(0), + SGX_ATTR_DEBUG = BIT(1), + SGX_ATTR_MODE64BIT = BIT(2), + SGX_ATTR_PROVISIONKEY = BIT(4), + SGX_ATTR_EINITTOKENKEY = BIT(5), + SGX_ATTR_KSS = BIT(7), +}; + +#define SGX_ATTR_RESERVED_MASK (BIT_ULL(3) | BIT_ULL(6) | GENMASK_ULL(63, 8)) +#define SGX_ATTR_ALLOWED_MASK (SGX_ATTR_DEBUG | SGX_ATTR_MODE64BIT | \ + SGX_ATTR_KSS) + +/** + * struct sgx_secs - SGX Enclave Control Structure (SECS) + * @size: size of the address space + * @base: base address of the address space + * @ssa_frame_size: size of an SSA frame + * @miscselect: additional information stored to an SSA frame + * @attributes: attributes for enclave + * @xfrm: XSave-Feature Request Mask (subset of XCR0) + * @mrenclave: SHA256-hash of the enclave contents + * @mrsigner: SHA256-hash of the public key used to sign the SIGSTRUCT + * @config_id: a user-defined value that is used in key derivation + * @isv_prod_id: a user-defined value that is used in key derivation + * @isv_svn: a user-defined value that is used in key derivation + * @config_svn: a user-defined value that is used in key derivation + * + * SGX Enclave Control Structure (SECS) is a special enclave page that is not + * visible in the address space. In fact, this structure defines the address + * range and other global attributes for the enclave and it is the first EPC + * page created for any enclave. It is moved from a temporary buffer to an EPC + * by the means of ENCLS(ECREATE) leaf. + */ +struct sgx_secs { + u64 size; + u64 base; + u32 ssa_frame_size; + u32 miscselect; + u8 reserved1[24]; + u64 attributes; + u64 xfrm; + u32 mrenclave[8]; + u8 reserved2[32]; + u32 mrsigner[8]; + u8 reserved3[32]; + u32 config_id[16]; + u16 isv_prod_id; + u16 isv_svn; + u16 config_svn; + u8 reserved4[3834]; +} __packed; + +/** + * enum sgx_tcs_flags - execution flags for TCS + * %SGX_TCS_DBGOPTIN: If enabled allows single-stepping and breakpoints + * inside an enclave. It is cleared by EADD but can + * be set later with EDBGWR. + */ +enum sgx_tcs_flags { + SGX_TCS_DBGOPTIN = 0x01, +}; + +#define SGX_TCS_RESERVED_MASK GENMASK_ULL(63, 1) +#define SGX_TCS_RESERVED_SIZE 4024 + +/** + * struct sgx_tcs - Thread Control Structure (TCS) + * @state: used to mark an entered TCS + * @flags: execution flags (cleared by EADD) + * @ssa_offset: SSA stack offset relative to the enclave base + * @ssa_index: the current SSA frame index (cleard by EADD) + * @nr_ssa_frames: the number of frame in the SSA stack + * @entry_offset: entry point offset relative to the enclave base + * @exit_addr: address outside the enclave to exit on an exception or + * interrupt + * @fs_offset: offset relative to the enclave base to become FS + * segment inside the enclave + * @gs_offset: offset relative to the enclave base to become GS + * segment inside the enclave + * @fs_limit: size to become a new FS-limit (only 32-bit enclaves) + * @gs_limit: size to become a new GS-limit (only 32-bit enclaves) + * + * Thread Control Structure (TCS) is an enclave page visible in its address + * space that defines an entry point inside the enclave. A thread enters inside + * an enclave by supplying address of TCS to ENCLU(EENTER). A TCS can be entered + * by only one thread at a time. + */ +struct sgx_tcs { + u64 state; + u64 flags; + u64 ssa_offset; + u32 ssa_index; + u32 nr_ssa_frames; + u64 entry_offset; + u64 exit_addr; + u64 fs_offset; + u64 gs_offset; + u32 fs_limit; + u32 gs_limit; + u8 reserved[SGX_TCS_RESERVED_SIZE]; +} __packed; + +/** + * struct sgx_pageinfo - an enclave page descriptor + * @addr: address of the enclave page + * @contents: pointer to the page contents + * @metadata: pointer either to a SECINFO or PCMD instance + * @secs: address of the SECS page + */ +struct sgx_pageinfo { + u64 addr; + u64 contents; + u64 metadata; + u64 secs; +} __packed __aligned(32); + + +/** + * enum sgx_page_type - bits in the SECINFO flags defining the page type + * %SGX_PAGE_TYPE_SECS: a SECS page + * %SGX_PAGE_TYPE_TCS: a TCS page + * %SGX_PAGE_TYPE_REG: a regular page + * %SGX_PAGE_TYPE_VA: a VA page + * %SGX_PAGE_TYPE_TRIM: a page in trimmed state + */ +enum sgx_page_type { + SGX_PAGE_TYPE_SECS, + SGX_PAGE_TYPE_TCS, + SGX_PAGE_TYPE_REG, + SGX_PAGE_TYPE_VA, + SGX_PAGE_TYPE_TRIM, +}; + +#define SGX_NR_PAGE_TYPES 5 +#define SGX_PAGE_TYPE_MASK GENMASK(7, 0) + +/** + * enum sgx_secinfo_flags - the flags field in &struct sgx_secinfo + * %SGX_SECINFO_R: allow read + * %SGX_SECINFO_W: allow write + * %SGX_SECINFO_X: allow execution + * %SGX_SECINFO_SECS: a SECS page + * %SGX_SECINFO_TCS: a TCS page + * %SGX_SECINFO_REG: a regular page + * %SGX_SECINFO_VA: a VA page + * %SGX_SECINFO_TRIM: a page in trimmed state + */ +enum sgx_secinfo_flags { + SGX_SECINFO_R = BIT(0), + SGX_SECINFO_W = BIT(1), + SGX_SECINFO_X = BIT(2), + SGX_SECINFO_SECS = (SGX_PAGE_TYPE_SECS << 8), + SGX_SECINFO_TCS = (SGX_PAGE_TYPE_TCS << 8), + SGX_SECINFO_REG = (SGX_PAGE_TYPE_REG << 8), + SGX_SECINFO_VA = (SGX_PAGE_TYPE_VA << 8), + SGX_SECINFO_TRIM = (SGX_PAGE_TYPE_TRIM << 8), +}; + +#define SGX_SECINFO_PERMISSION_MASK GENMASK_ULL(2, 0) +#define SGX_SECINFO_PAGE_TYPE_MASK (SGX_PAGE_TYPE_MASK << 8) +#define SGX_SECINFO_RESERVED_MASK ~(SGX_SECINFO_PERMISSION_MASK | \ + SGX_SECINFO_PAGE_TYPE_MASK) + +/** + * struct sgx_secinfo - describes attributes of an EPC page + * @flags: permissions and type + * + * Used together with ENCLS leaves that add or modify an EPC page to an + * enclave to define page permissions and type. + */ +struct sgx_secinfo { + u64 flags; + u8 reserved[56]; +} __packed __aligned(64); + +#define SGX_PCMD_RESERVED_SIZE 40 + +/** + * struct sgx_pcmd - Paging Crypto Metadata (PCMD) + * @enclave_id: enclave identifier + * @mac: MAC over PCMD, page contents and isvsvn + * + * PCMD is stored for every swapped page to the regular memory. When ELDU loads + * the page back it recalculates the MAC by using a isvsvn number stored in a + * VA page. Together these two structures bring integrity and rollback + * protection. + */ +struct sgx_pcmd { + struct sgx_secinfo secinfo; + u64 enclave_id; + u8 reserved[SGX_PCMD_RESERVED_SIZE]; + u8 mac[16]; +} __packed __aligned(128); + +#define SGX_SIGSTRUCT_RESERVED1_SIZE 84 +#define SGX_SIGSTRUCT_RESERVED2_SIZE 20 +#define SGX_SIGSTRUCT_RESERVED3_SIZE 32 +#define SGX_SIGSTRUCT_RESERVED4_SIZE 12 + +/** + * struct sgx_sigstruct_header - defines author of the enclave + * @header1: constant byte string + * @vendor: must be either 0x0000 or 0x8086 + * @date: YYYYMMDD in BCD + * @header2: costant byte string + * @swdefined: software defined value + */ +struct sgx_sigstruct_header { + u64 header1[2]; + u32 vendor; + u32 date; + u64 header2[2]; + u32 swdefined; + u8 reserved1[84]; +} __packed; + +/** + * struct sgx_sigstruct_body - defines contents of the enclave + * @miscselect: additional information stored to an SSA frame + * @misc_mask: required miscselect in SECS + * @attributes: attributes for enclave + * @xfrm: XSave-Feature Request Mask (subset of XCR0) + * @attributes_mask: required attributes in SECS + * @xfrm_mask: required XFRM in SECS + * @mrenclave: SHA256-hash of the enclave contents + * @isvprodid: a user-defined value that is used in key derivation + * @isvsvn: a user-defined value that is used in key derivation + */ +struct sgx_sigstruct_body { + u32 miscselect; + u32 misc_mask; + u8 reserved2[20]; + u64 attributes; + u64 xfrm; + u64 attributes_mask; + u64 xfrm_mask; + u8 mrenclave[32]; + u8 reserved3[32]; + u16 isvprodid; + u16 isvsvn; +} __packed; + +/** + * struct sgx_sigstruct - an enclave signature + * @header: defines author of the enclave + * @modulus: the modulus of the public key + * @exponent: the exponent of the public key + * @signature: the signature calculated over the fields except modulus, + * @body: defines contents of the enclave + * @q1: a value used in RSA signature verification + * @q2: a value used in RSA signature verification + * + * Header and body are the parts that are actual signed. The remaining fields + * define the signature of the enclave. + */ +struct sgx_sigstruct { + struct sgx_sigstruct_header header; + u8 modulus[SGX_MODULUS_SIZE]; + u32 exponent; + u8 signature[SGX_MODULUS_SIZE]; + struct sgx_sigstruct_body body; + u8 reserved4[12]; + u8 q1[SGX_MODULUS_SIZE]; + u8 q2[SGX_MODULUS_SIZE]; +} __packed; + +#define SGX_LAUNCH_TOKEN_SIZE 304 + +#endif /* _ASM_X86_SGX_ARCH_H */ --- linux-azure-5.8-5.8.0.orig/ubuntu/sgx/dkms.conf +++ linux-azure-5.8-5.8.0/ubuntu/sgx/dkms.conf @@ -0,0 +1,6 @@ +PACKAGE_NAME="sgx" +PACKAGE_VERSION="1.33" +BUILT_MODULE_NAME[0]="intel_sgx" +DEST_MODULE_LOCATION[0]="/kernel/drivers/intel/sgx" +AUTOINSTALL="yes" +MAKE[0]="'make' KDIR=/lib/modules/${kernelver}/build" --- linux-azure-5.8-5.8.0.orig/ubuntu/sgx/driver.c +++ linux-azure-5.8-5.8.0/ubuntu/sgx/driver.c @@ -0,0 +1,231 @@ +// SPDX-License-Identifier: (GPL-2.0 OR BSD-3-Clause) +// Copyright(c) 2016-18 Intel Corporation. + +#include +#include +#include +#include +#include +#include +#include "driver.h" +#include "encl.h" +#include "dcap.h" + +#include "version.h" + +MODULE_DESCRIPTION(DRV_DESCRIPTION); +MODULE_AUTHOR("Jarkko Sakkinen "); +MODULE_LICENSE("Dual BSD/GPL"); +MODULE_VERSION(DRV_VERSION); + +u64 sgx_encl_size_max_32; +u64 sgx_encl_size_max_64; +u32 sgx_misc_reserved_mask; +u64 sgx_attributes_reserved_mask; +u64 sgx_xfrm_reserved_mask = ~0x3; +u32 sgx_xsave_size_tbl[64]; + +static int sgx_open(struct inode *inode, struct file *file) +{ + struct sgx_encl *encl; + int ret; + + encl = kzalloc(sizeof(*encl), GFP_KERNEL); + if (!encl) + return -ENOMEM; + + atomic_set(&encl->flags, 0); + kref_init(&encl->refcount); + INIT_LIST_HEAD(&encl->va_pages); + INIT_RADIX_TREE(&encl->page_tree, GFP_KERNEL); + mutex_init(&encl->lock); + INIT_LIST_HEAD(&encl->mm_list); + spin_lock_init(&encl->mm_lock); + + ret = init_srcu_struct(&encl->srcu); + if (ret) { + kfree(encl); + return ret; + } + + file->private_data = encl; + + return 0; +} + +static int sgx_release(struct inode *inode, struct file *file) +{ + struct sgx_encl *encl = file->private_data; + struct sgx_encl_mm *encl_mm; + + for ( ; ; ) { + spin_lock(&encl->mm_lock); + + if (list_empty(&encl->mm_list)) { + encl_mm = NULL; + } else { + encl_mm = list_first_entry(&encl->mm_list, + struct sgx_encl_mm, list); + list_del_rcu(&encl_mm->list); + } + + spin_unlock(&encl->mm_lock); + + /* The list is empty, ready to go. */ + if (!encl_mm) + break; + + synchronize_srcu(&encl->srcu); + mmu_notifier_unregister(&encl_mm->mmu_notifier, encl_mm->mm); + kfree(encl_mm); + }; + + mutex_lock(&encl->lock); + atomic_or(SGX_ENCL_DEAD, &encl->flags); + mutex_unlock(&encl->lock); + + kref_put(&encl->refcount, sgx_encl_release); + return 0; +} + +#ifdef CONFIG_COMPAT +static long sgx_compat_ioctl(struct file *filep, unsigned int cmd, + unsigned long arg) +{ + return sgx_ioctl(filep, cmd, arg); +} +#endif + +static int sgx_mmap(struct file *file, struct vm_area_struct *vma) +{ + struct sgx_encl *encl = file->private_data; + int ret; + + ret = sgx_encl_may_map(encl, vma->vm_start, vma->vm_end, + vma->vm_flags & (VM_READ | VM_WRITE | VM_EXEC)); + if (ret) + return ret; + + ret = sgx_encl_mm_add(encl, vma->vm_mm); + if (ret) + return ret; + + vma->vm_ops = &sgx_vm_ops; + vma->vm_flags |= VM_PFNMAP | VM_DONTEXPAND | VM_DONTDUMP | VM_IO; + vma->vm_private_data = encl; + + return 0; +} + +static unsigned long sgx_get_unmapped_area(struct file *file, + unsigned long addr, + unsigned long len, + unsigned long pgoff, + unsigned long flags) +{ + if (flags & MAP_PRIVATE) + return -EINVAL; + + if (flags & MAP_FIXED) + return addr; + + return current->mm->get_unmapped_area(file, addr, len, pgoff, flags); +} + +static const struct file_operations sgx_encl_fops = { + .owner = THIS_MODULE, + .open = sgx_open, + .release = sgx_release, + .unlocked_ioctl = sgx_ioctl, +#ifdef CONFIG_COMPAT + .compat_ioctl = sgx_compat_ioctl, +#endif + .mmap = sgx_mmap, + .get_unmapped_area = sgx_get_unmapped_area, +}; + +const struct file_operations sgx_provision_fops = { + .owner = THIS_MODULE, +}; + +static struct miscdevice sgx_dev_enclave = { + .minor = MISC_DYNAMIC_MINOR, + .name = "enclave", + .nodename = "sgx/enclave", + .fops = &sgx_encl_fops, +}; + +static struct miscdevice sgx_dev_provision = { + .minor = MISC_DYNAMIC_MINOR, + .name = "provision", + .nodename = "sgx/provision", + .fops = &sgx_provision_fops, +}; + + +int __init sgx_drv_init(void) +{ + unsigned int eax, ebx, ecx, edx; + u64 attr_mask, xfrm_mask; + int ret; + int i; + + if (!boot_cpu_has(X86_FEATURE_SGX_LC)) { + pr_info("The public key MSRs are not writable.\n"); + return -ENODEV; + } + + cpuid_count(SGX_CPUID, 0, &eax, &ebx, &ecx, &edx); + sgx_misc_reserved_mask = ~ebx | SGX_MISC_RESERVED_MASK; + sgx_encl_size_max_64 = 1ULL << ((edx >> 8) & 0xFF); + sgx_encl_size_max_32 = 1ULL << (edx & 0xFF); + + cpuid_count(SGX_CPUID, 1, &eax, &ebx, &ecx, &edx); + + attr_mask = (((u64)ebx) << 32) + (u64)eax; + sgx_attributes_reserved_mask = ~attr_mask | SGX_ATTR_RESERVED_MASK; + + if (boot_cpu_has(X86_FEATURE_OSXSAVE)) { + xfrm_mask = (((u64)edx) << 32) + (u64)ecx; + + for (i = 2; i < 64; i++) { + cpuid_count(0x0D, i, &eax, &ebx, &ecx, &edx); + if ((1 << i) & xfrm_mask) + sgx_xsave_size_tbl[i] = eax + ebx; + } + + sgx_xfrm_reserved_mask = ~xfrm_mask; + } + + ret = misc_register(&sgx_dev_enclave); + if (ret) { + pr_err("Creating /dev/sgx/enclave failed with %d.\n", ret); + return ret; + } + + ret = misc_register(&sgx_dev_provision); + if (ret) { + pr_err("Creating /dev/sgx/provision failed with %d.\n", ret); + misc_deregister(&sgx_dev_enclave); + return ret; + } + + + return 0; +} + +int __exit sgx_drv_exit(void) +{ + misc_deregister(&sgx_dev_enclave); + misc_deregister(&sgx_dev_provision); + + return 0; +} + +#ifdef CONFIG_ACPI +static struct acpi_device_id sgx_device_ids[] = { + {"INT0E0C", 0}, + {"", 0}, +}; +MODULE_DEVICE_TABLE(acpi, sgx_device_ids); +#endif --- linux-azure-5.8-5.8.0.orig/ubuntu/sgx/driver.h +++ linux-azure-5.8-5.8.0/ubuntu/sgx/driver.h @@ -0,0 +1,33 @@ +/* SPDX-License-Identifier: (GPL-2.0 OR BSD-3-Clause) */ +#ifndef __ARCH_SGX_DRIVER_H__ +#define __ARCH_SGX_DRIVER_H__ + +#include +#include +#include +#include +#include +#include +#include +#include "uapi/asm/sgx_oot.h" +#include "sgx.h" + +#define SGX_EINIT_SPIN_COUNT 20 +#define SGX_EINIT_SLEEP_COUNT 50 +#define SGX_EINIT_SLEEP_TIME 20 + +extern u64 sgx_encl_size_max_32; +extern u64 sgx_encl_size_max_64; +extern u32 sgx_misc_reserved_mask; +extern u64 sgx_attributes_reserved_mask; +extern u64 sgx_xfrm_reserved_mask; +extern u32 sgx_xsave_size_tbl[64]; + +extern const struct file_operations sgx_provision_fops; + +long sgx_ioctl(struct file *filep, unsigned int cmd, unsigned long arg); + +int sgx_drv_init(void); +int sgx_drv_exit(void); + +#endif /* __ARCH_X86_SGX_DRIVER_H__ */ --- linux-azure-5.8-5.8.0.orig/ubuntu/sgx/encl.c +++ linux-azure-5.8-5.8.0/ubuntu/sgx/encl.c @@ -0,0 +1,821 @@ +// SPDX-License-Identifier: (GPL-2.0 OR BSD-3-Clause) +// Copyright(c) 2016-18 Intel Corporation. + +#include +#include +#include +#include +#include +#include +#include "arch.h" +#include "encl.h" +#include "encls.h" +#include "sgx.h" +#include "dcap.h" + +#include + +static int __sgx_encl_eldu(struct sgx_encl_page *encl_page, + struct sgx_epc_page *epc_page, + struct sgx_epc_page *secs_page) +{ + unsigned long va_offset = SGX_ENCL_PAGE_VA_OFFSET(encl_page); + struct sgx_encl *encl = encl_page->encl; + struct sgx_pageinfo pginfo; + struct sgx_backing b; + pgoff_t page_index; + int ret; + + if (secs_page) + page_index = SGX_ENCL_PAGE_INDEX(encl_page); + else + page_index = PFN_DOWN(encl->size); + + ret = sgx_encl_get_backing(encl, page_index, &b); + if (ret) + return ret; + + pginfo.addr = SGX_ENCL_PAGE_ADDR(encl_page); + pginfo.contents = (unsigned long)kmap_atomic(b.contents); + pginfo.metadata = (unsigned long)kmap_atomic(b.pcmd) + + b.pcmd_offset; + + if (secs_page) + pginfo.secs = (u64)sgx_epc_addr(secs_page); + else + pginfo.secs = 0; + + ret = __eldu(&pginfo, sgx_epc_addr(epc_page), + sgx_epc_addr(encl_page->va_page->epc_page) + va_offset); + if (ret) { + if (encls_failed(ret)) + ENCLS_WARN(ret, "ELDU"); + + ret = -EFAULT; + } + + kunmap_atomic((void *)(unsigned long)(pginfo.metadata - b.pcmd_offset)); + kunmap_atomic((void *)(unsigned long)pginfo.contents); + + sgx_encl_put_backing(&b, false); + + return ret; +} + +static struct sgx_epc_page *sgx_encl_eldu(struct sgx_encl_page *encl_page, + struct sgx_epc_page *secs_page) +{ + unsigned long va_offset = SGX_ENCL_PAGE_VA_OFFSET(encl_page); + struct sgx_encl *encl = encl_page->encl; + struct sgx_epc_page *epc_page; + int ret; + + epc_page = sgx_alloc_page(encl_page, false); + if (IS_ERR(epc_page)) + return epc_page; + + ret = __sgx_encl_eldu(encl_page, epc_page, secs_page); + if (ret) { + sgx_free_page(epc_page); + return ERR_PTR(ret); + } + + sgx_free_va_slot(encl_page->va_page, va_offset); + list_move(&encl_page->va_page->list, &encl->va_pages); + encl_page->desc &= ~SGX_ENCL_PAGE_VA_OFFSET_MASK; + encl_page->epc_page = epc_page; + + return epc_page; +} + +static struct sgx_encl_page *sgx_encl_load_page(struct sgx_encl *encl, + unsigned long addr) +{ + struct sgx_epc_page *epc_page; + struct sgx_encl_page *entry; + unsigned int flags; + + /* If process was forked, VMA is still there but vm_private_data is set + * to NULL. + */ + if (!encl) + return ERR_PTR(-EFAULT); + + flags = atomic_read(&encl->flags); + + if ((flags & SGX_ENCL_DEAD) || !(flags & SGX_ENCL_INITIALIZED)) + return ERR_PTR(-EFAULT); + + entry = radix_tree_lookup(&encl->page_tree, addr >> PAGE_SHIFT); + if (!entry) + return ERR_PTR(-EFAULT); + + /* Page is already resident in the EPC. */ + if (entry->epc_page) { + if (entry->desc & SGX_ENCL_PAGE_RECLAIMED) + return ERR_PTR(-EBUSY); + + 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_eldu(entry, encl->secs.epc_page); + if (IS_ERR(epc_page)) + return ERR_CAST(epc_page); + + encl->secs_child_cnt++; + sgx_mark_page_reclaimable(entry->epc_page); + + return entry; +} + +#if (LINUX_VERSION_CODE < KERNEL_VERSION(5,4,0)) +static void sgx_encl_mm_release_deferred(struct rcu_head *rcu) +{ + struct sgx_encl_mm *encl_mm = + container_of(rcu, struct sgx_encl_mm, rcu); + + kfree(encl_mm); +} +#endif + +static void sgx_mmu_notifier_release(struct mmu_notifier *mn, + struct mm_struct *mm) +{ + struct sgx_encl_mm *encl_mm = + container_of(mn, struct sgx_encl_mm, mmu_notifier); + struct sgx_encl_mm *tmp = NULL; + + /* + * The enclave itself can remove encl_mm. Note, objects can't be moved + * off an RCU protected list, but deletion is ok. + */ + spin_lock(&encl_mm->encl->mm_lock); + list_for_each_entry(tmp, &encl_mm->encl->mm_list, list) { + if (tmp == encl_mm) { + list_del_rcu(&encl_mm->list); + break; + } + } + spin_unlock(&encl_mm->encl->mm_lock); + + if (tmp == encl_mm) { + synchronize_srcu(&encl_mm->encl->srcu); +#if (LINUX_VERSION_CODE >= KERNEL_VERSION(5,4,0)) + mmu_notifier_put(mn); +#else + /* + * Delay freeing encl_mm until after mmu_notifier synchronizes + * its SRCU to ensure encl_mm cannot be dereferenced. + */ + mmu_notifier_unregister_no_release(mn, mm); + mmu_notifier_call_srcu(&encl_mm->rcu, + &sgx_encl_mm_release_deferred); +#endif + } +} + +#if (LINUX_VERSION_CODE >= KERNEL_VERSION(5,4,0)) +static void sgx_mmu_notifier_free(struct mmu_notifier *mn) +{ + struct sgx_encl_mm *encl_mm = + container_of(mn, struct sgx_encl_mm, mmu_notifier); + + kfree(encl_mm); +} +#endif + +static const struct mmu_notifier_ops sgx_mmu_notifier_ops = { + .release = sgx_mmu_notifier_release, +#if (LINUX_VERSION_CODE >= KERNEL_VERSION(5,4,0)) + .free_notifier = sgx_mmu_notifier_free, +#endif +}; + +static struct sgx_encl_mm *sgx_encl_find_mm(struct sgx_encl *encl, + struct mm_struct *mm) +{ + struct sgx_encl_mm *encl_mm = NULL; + struct sgx_encl_mm *tmp; + int idx; + + idx = srcu_read_lock(&encl->srcu); + + list_for_each_entry_rcu(tmp, &encl->mm_list, list) { + if (tmp->mm == mm) { + encl_mm = tmp; + break; + } + } + + srcu_read_unlock(&encl->srcu, idx); + + return encl_mm; +} + +int sgx_encl_mm_add(struct sgx_encl *encl, struct mm_struct *mm) +{ + struct sgx_encl_mm *encl_mm; + int ret; + + /* + * This flow relies on mmap_sem being held for write to prevent adding + * multiple encl_mm instances for a single mm_struct, i.e. it prevents + * races between checking sgx_encl_find_mm() and adding to mm_list. + */ +#if (LINUX_VERSION_CODE >= KERNEL_VERSION(5,3,0)) + lockdep_assert_held_write(&mm->mmap_lock); +#else + lockdep_assert_held_exclusive(&mm->mmap_sem); +#endif + + if (atomic_read(&encl->flags) & SGX_ENCL_DEAD) + return -EINVAL; + + /* + * mm_structs are kept on mm_list until the mm or the enclave dies, + * i.e. once an mm is off the list, it's gone for good, therefore it's + * impossible to get a false positive on @mm due to a stale mm_list. + */ + if (sgx_encl_find_mm(encl, mm)) + return 0; + + encl_mm = kzalloc(sizeof(*encl_mm), GFP_KERNEL); + if (!encl_mm) + return -ENOMEM; + + encl_mm->encl = encl; + encl_mm->mm = mm; + encl_mm->mmu_notifier.ops = &sgx_mmu_notifier_ops; + + ret = __mmu_notifier_register(&encl_mm->mmu_notifier, mm); + if (ret) { + kfree(encl_mm); + return ret; + } + + spin_lock(&encl->mm_lock); + list_add_rcu(&encl_mm->list, &encl->mm_list); + /* + * Ensure the mm is added to mm_list before updating the generation. + * Pairs with the smp_rmb() in sgx_reclaimer_block(). + */ + smp_wmb(); + encl->mm_list_gen++; + spin_unlock(&encl->mm_lock); + + /* + * DO NOT call synchronize_srcu()! When this is called via dup_mmap(), + * mmap_sem is held for write in both the old mm and new mm, and the + * reclaimer may be holding srcu for read while waiting on down_read() + * for the old mm's mmap_sem, i.e. synchronize_srcu() will deadlock. + * Incrementing mm_list_gen ensures readers that must not race with a + * mm being added will see the updated list. + */ + return 0; +} + +static void sgx_vma_open(struct vm_area_struct *vma) +{ + struct sgx_encl *encl = vma->vm_private_data; + + if (!encl) + return; + + if (sgx_encl_mm_add(encl, vma->vm_mm)) + vma->vm_private_data = NULL; +} + +#if (LINUX_VERSION_CODE >= KERNEL_VERSION(5,1,0)) +static unsigned int sgx_vma_fault(struct vm_fault *vmf) +#else +static int sgx_vma_fault(struct vm_fault *vmf) +#endif +{ + unsigned long addr = (unsigned long)vmf->address; + struct vm_area_struct *vma = vmf->vma; + struct sgx_encl *encl = vma->vm_private_data; + struct sgx_encl_page *entry; + int ret = VM_FAULT_NOPAGE; + unsigned long pfn; + + if (!encl) + return VM_FAULT_SIGBUS; + + mutex_lock(&encl->lock); + + entry = sgx_encl_load_page(encl, addr); + if (IS_ERR(entry)) { + if (unlikely(PTR_ERR(entry) != -EBUSY)) + ret = VM_FAULT_SIGBUS; + + goto out; + } + + if (!follow_pfn(vma, addr, &pfn)) + goto out; + +#if (LINUX_VERSION_CODE >= KERNEL_VERSION(4, 20, 0)) + ret = vmf_insert_pfn(vma, addr, PFN_DOWN(entry->epc_page->desc)); + if (ret != VM_FAULT_NOPAGE) { +#else + ret = vm_insert_pfn(vma, addr, PFN_DOWN(entry->epc_page->desc)); + if (!ret){ + ret = VM_FAULT_NOPAGE; + } + else{ +#endif + ret = VM_FAULT_SIGBUS; + goto out; + } + sgx_encl_test_and_clear_young(vma->vm_mm, entry); + +out: + mutex_unlock(&encl->lock); + return ret; +} + +/** + * sgx_encl_may_map() - Check if a requested VMA mapping is allowed + * @encl: an enclave + * @start: lower bound of the address range, inclusive + * @end: upper bound of the address range, exclusive + * @vm_prot_bits: requested protections of the address range + * + * Iterate through the enclave pages contained within [@start, @end) to verify + * the permissions requested by @vm_prot_bits do not exceed that of any enclave + * page to be mapped. Page addresses that do not have an associated enclave + * page are interpreted to zero permissions. + * + * Return: + * 0 on success, + * -EACCES if VMA permissions exceed enclave page permissions + */ +int sgx_encl_may_map(struct sgx_encl *encl, unsigned long start, + unsigned long end, unsigned long vm_prot_bits) +{ + unsigned long idx, idx_start, idx_end; + struct sgx_encl_page *page; + /* + * Disallow RIE tasks as their VMA permissions might conflict with the + * enclave page permissions. + */ + if (!!(current->personality & READ_IMPLIES_EXEC)) + return -EACCES; + + /* PROT_NONE always succeeds. */ + if (!vm_prot_bits) + return 0; + + idx_start = PFN_DOWN(start); + idx_end = PFN_DOWN(end - 1); + + for (idx = idx_start; idx <= idx_end; ++idx) { + mutex_lock(&encl->lock); + page = radix_tree_lookup(&encl->page_tree, idx); + mutex_unlock(&encl->lock); + + if (!page || (~page->vm_max_prot_bits & vm_prot_bits)) + return -EACCES; + } + + return 0; +} + +/* +static int sgx_vma_mprotect(struct vm_area_struct *vma, unsigned long start, + unsigned long end, unsigned long prot) +{ + return sgx_encl_may_map(vma->vm_private_data, start, end, + calc_vm_prot_bits(prot, 0)); +} +*/ + +static int sgx_edbgrd(struct sgx_encl *encl, struct sgx_encl_page *page, + unsigned long addr, void *data) +{ + unsigned long offset = addr & ~PAGE_MASK; + int ret; + + + ret = __edbgrd(sgx_epc_addr(page->epc_page) + offset, data); + if (ret) + return -EIO; + + return 0; +} + +static int sgx_edbgwr(struct sgx_encl *encl, struct sgx_encl_page *page, + unsigned long addr, void *data) +{ + unsigned long offset = addr & ~PAGE_MASK; + int ret; + + ret = __edbgwr(sgx_epc_addr(page->epc_page) + offset, data); + if (ret) + return -EIO; + + return 0; +} + +static int sgx_vma_access(struct vm_area_struct *vma, unsigned long addr, + void *buf, int len, int write) +{ + struct sgx_encl *encl = vma->vm_private_data; + struct sgx_encl_page *entry = NULL; + char data[sizeof(unsigned long)]; + unsigned long align; + unsigned int flags; + int offset; + int cnt; + int ret = 0; + int i; + + /* If process was forked, VMA is still there but vm_private_data is set + * to NULL. + */ + if (!encl) + return -EFAULT; + + flags = atomic_read(&encl->flags); + + if (!(flags & SGX_ENCL_DEBUG) || !(flags & SGX_ENCL_INITIALIZED) || + (flags & SGX_ENCL_DEAD)) + return -EFAULT; + + for (i = 0; i < len; i += cnt) { + entry = sgx_encl_reserve_page(encl, (addr + i) & PAGE_MASK); + if (IS_ERR(entry)) { + ret = PTR_ERR(entry); + break; + } + + align = ALIGN_DOWN(addr + i, sizeof(unsigned long)); + offset = (addr + i) & (sizeof(unsigned long) - 1); + cnt = sizeof(unsigned long) - offset; + cnt = min(cnt, len - i); + + ret = sgx_edbgrd(encl, entry, align, data); + if (ret) + goto out; + + if (write) { + memcpy(data + offset, buf + i, cnt); + ret = sgx_edbgwr(encl, entry, align, data); + if (ret) + goto out; + } else + memcpy(buf + i, data + offset, cnt); + +out: + mutex_unlock(&encl->lock); + + if (ret) + break; + } + + return ret < 0 ? ret : i; +} + +const struct vm_operations_struct sgx_vm_ops = { + .open = sgx_vma_open, + .fault = sgx_vma_fault, +// .may_mprotect = sgx_vma_mprotect, + .access = sgx_vma_access, +}; + +/** + * sgx_encl_find - find an enclave + * @mm: mm struct of the current process + * @addr: address in the ELRANGE + * @vma: the resulting VMA + * + * Find an enclave identified by the given address. Give back a VMA that is + * part of the enclave and located in that address. The VMA is given back if it + * is a proper enclave VMA even if an &sgx_encl instance does not exist yet + * (enclave creation has not been performed). + * + * Return: + * 0 on success, + * -EINVAL if an enclave was not found, + * -ENOENT if the enclave has not been created yet + */ +int sgx_encl_find(struct mm_struct *mm, unsigned long addr, + struct vm_area_struct **vma) +{ + struct vm_area_struct *result; + struct sgx_encl *encl; + + result = find_vma(mm, addr); + if (!result || result->vm_ops != &sgx_vm_ops || addr < result->vm_start) + return -EINVAL; + + encl = result->vm_private_data; + *vma = result; + + return encl ? 0 : -ENOENT; +} + +/** + * sgx_encl_destroy() - destroy enclave resources + * @encl: an &sgx_encl instance + */ +void sgx_encl_destroy(struct sgx_encl *encl) +{ + struct sgx_va_page *va_page; + struct sgx_encl_page *entry; + struct radix_tree_iter iter; + void **slot; + + atomic_or(SGX_ENCL_DEAD, &encl->flags); + + radix_tree_for_each_slot(slot, &encl->page_tree, &iter, 0) { + entry = *slot; + + if (entry->epc_page) { + /* + * The page and its radix tree entry cannot be freed + * if the page is being held by the reclaimer. + */ + if (sgx_unmark_page_reclaimable(entry->epc_page)) + continue; + + sgx_free_page(entry->epc_page); + encl->secs_child_cnt--; + entry->epc_page = NULL; + } + + radix_tree_delete(&entry->encl->page_tree, + PFN_DOWN(entry->desc)); + kfree(entry); + } + + if (!encl->secs_child_cnt && encl->secs.epc_page) { + sgx_free_page(encl->secs.epc_page); + encl->secs.epc_page = NULL; + } + + /* + * The reclaimer is responsible for checking SGX_ENCL_DEAD before doing + * EWB, thus it's safe to free VA pages even if the reclaimer holds a + * reference to the enclave. + */ + while (!list_empty(&encl->va_pages)) { + va_page = list_first_entry(&encl->va_pages, struct sgx_va_page, + list); + list_del(&va_page->list); + sgx_free_page(va_page->epc_page); + kfree(va_page); + } +} + +/** + * sgx_encl_release - Destroy an enclave instance + * @kref: address of a kref inside &sgx_encl + * + * Used together with kref_put(). Frees all the resources associated with the + * enclave and the instance itself. + */ +void sgx_encl_release(struct kref *ref) +{ + struct sgx_encl *encl = container_of(ref, struct sgx_encl, refcount); + + sgx_encl_destroy(encl); + + if (encl->backing) + fput(encl->backing); + + WARN_ON_ONCE(!list_empty(&encl->mm_list)); + + /* Detect EPC page leak's. */ + WARN_ON_ONCE(encl->secs_child_cnt); + WARN_ON_ONCE(encl->secs.epc_page); + + kfree(encl); +} + +static struct page *sgx_encl_get_backing_page(struct sgx_encl *encl, + pgoff_t index) +{ + struct inode *inode = encl->backing->f_path.dentry->d_inode; + struct address_space *mapping = inode->i_mapping; + gfp_t gfpmask = mapping_gfp_mask(mapping); + + return shmem_read_mapping_page_gfp(mapping, index, gfpmask); +} + +/** + * sgx_encl_get_backing() - Pin the backing storage + * @encl: an enclave + * @page_index: enclave page index + * @backing: data for accessing backing storage for the page + * + * Pin the backing storage pages for storing the encrypted contents and Paging + * Crypto MetaData (PCMD) of an enclave page. + * + * Return: + * 0 on success, + * -errno otherwise. + */ +int sgx_encl_get_backing(struct sgx_encl *encl, unsigned long page_index, + struct sgx_backing *backing) +{ + pgoff_t pcmd_index = PFN_DOWN(encl->size) + 1 + (page_index >> 5); + struct page *contents; + struct page *pcmd; + + contents = sgx_encl_get_backing_page(encl, page_index); + if (IS_ERR(contents)) + return PTR_ERR(contents); + + pcmd = sgx_encl_get_backing_page(encl, pcmd_index); + if (IS_ERR(pcmd)) { + put_page(contents); + return PTR_ERR(pcmd); + } + + backing->page_index = page_index; + backing->contents = contents; + backing->pcmd = pcmd; + backing->pcmd_offset = + (page_index & (PAGE_SIZE / sizeof(struct sgx_pcmd) - 1)) * + sizeof(struct sgx_pcmd); + + return 0; +} + +/** + * sgx_encl_put_backing() - Unpin the backing storage + * @backing: data for accessing backing storage for the page + * @do_write: mark pages dirty + */ +void sgx_encl_put_backing(struct sgx_backing *backing, bool do_write) +{ + if (do_write) { + set_page_dirty(backing->pcmd); + set_page_dirty(backing->contents); + } + + put_page(backing->pcmd); + put_page(backing->contents); +} + +static int sgx_encl_test_and_clear_young_cb(pte_t *ptep, +#if (LINUX_VERSION_CODE < KERNEL_VERSION(5, 3, 0)) + pgtable_t token, +#endif + unsigned long addr, void *data) +{ + pte_t pte; + int ret; + + ret = pte_young(*ptep); + if (ret) { + pte = pte_mkold(*ptep); + set_pte_at((struct mm_struct *)data, addr, ptep, pte); + } + + return ret; +} + +/** + * sgx_encl_test_and_clear_young() - Test and reset the accessed bit + * @mm: mm_struct that is checked + * @page: enclave page to be tested for recent access + * + * Checks the Access (A) bit from the PTE corresponding to the enclave page and + * clears it. + * + * Return: 1 if the page has been recently accessed and 0 if not. + */ +int sgx_encl_test_and_clear_young(struct mm_struct *mm, + struct sgx_encl_page *page) +{ + unsigned long addr = SGX_ENCL_PAGE_ADDR(page); + struct sgx_encl *encl = page->encl; + struct vm_area_struct *vma; + int ret; + + ret = sgx_encl_find(mm, addr, &vma); + if (ret) + return 0; + + if (encl != vma->vm_private_data) + return 0; + + ret = apply_to_page_range(vma->vm_mm, addr, PAGE_SIZE, + sgx_encl_test_and_clear_young_cb, vma->vm_mm); + if (ret < 0) + return 0; + + return ret; +} + +/** + * sgx_encl_reserve_page() - Reserve an enclave page + * @encl: an enclave + * @addr: a page address + * + * Load an enclave page and lock the enclave so that the page can be used by + * EDBG* and EMOD*. + * + * Return: + * an enclave page on success + * -EFAULT if the load fails + */ +struct sgx_encl_page *sgx_encl_reserve_page(struct sgx_encl *encl, + unsigned long addr) +{ + struct sgx_encl_page *entry; + + for ( ; ; ) { + mutex_lock(&encl->lock); + + entry = sgx_encl_load_page(encl, addr); + if (PTR_ERR(entry) != -EBUSY) + break; + + mutex_unlock(&encl->lock); + } + + if (IS_ERR(entry)) + mutex_unlock(&encl->lock); + + return entry; +} + +/** + * sgx_alloc_page - allocate a VA page + * + * Allocates an &sgx_epc_page instance and converts it to a VA page. + * + * Return: + * a &struct sgx_va_page instance, + * -errno otherwise + */ +struct sgx_epc_page *sgx_alloc_va_page(void) +{ + struct sgx_epc_page *epc_page; + int ret; + + epc_page = sgx_alloc_page(NULL, true); + if (IS_ERR(epc_page)) + return ERR_CAST(epc_page); + + ret = __epa(sgx_epc_addr(epc_page)); + if (ret) { + WARN_ONCE(1, "EPA returned %d (0x%x)", ret, ret); + sgx_free_page(epc_page); + return ERR_PTR(-EFAULT); + } + + return epc_page; +} + +/** + * sgx_alloc_va_slot - allocate a VA slot + * @va_page: a &struct sgx_va_page instance + * + * Allocates a slot from a &struct sgx_va_page instance. + * + * Return: offset of the slot inside the VA page + */ +unsigned int sgx_alloc_va_slot(struct sgx_va_page *va_page) +{ + int slot = find_first_zero_bit(va_page->slots, SGX_VA_SLOT_COUNT); + + if (slot < SGX_VA_SLOT_COUNT) + set_bit(slot, va_page->slots); + + return slot << 3; +} + +/** + * sgx_free_va_slot - free a VA slot + * @va_page: a &struct sgx_va_page instance + * @offset: offset of the slot inside the VA page + * + * Frees a slot from a &struct sgx_va_page instance. + */ +void sgx_free_va_slot(struct sgx_va_page *va_page, unsigned int offset) +{ + clear_bit(offset >> 3, va_page->slots); +} + +/** + * sgx_va_page_full - is the VA page full? + * @va_page: a &struct sgx_va_page instance + * + * Return: true if all slots have been taken + */ +bool sgx_va_page_full(struct sgx_va_page *va_page) +{ + int slot = find_first_zero_bit(va_page->slots, SGX_VA_SLOT_COUNT); + + return slot == SGX_VA_SLOT_COUNT; +} --- linux-azure-5.8-5.8.0.orig/ubuntu/sgx/encl.h +++ linux-azure-5.8-5.8.0/ubuntu/sgx/encl.h @@ -0,0 +1,132 @@ +/* SPDX-License-Identifier: (GPL-2.0 OR BSD-3-Clause) */ +/** + * Copyright(c) 2016-19 Intel Corporation. + */ +#ifndef _X86_ENCL_H +#define _X86_ENCL_H + +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include "sgx.h" + +/** + * enum sgx_encl_page_desc - defines bits for an enclave page's descriptor + * %SGX_ENCL_PAGE_RECLAIMED: The page is in the process of being + * reclaimed. + * %SGX_ENCL_PAGE_VA_OFFSET_MASK: Holds the offset in the Version Array + * (VA) page for a swapped page. + * %SGX_ENCL_PAGE_ADDR_MASK: Holds the virtual address of the page. + * + * The page address for SECS is zero and is used by the subsystem to recognize + * the SECS page. + */ +enum sgx_encl_page_desc { + /* Bits 11:3 are available when the page is not swapped. */ + SGX_ENCL_PAGE_RECLAIMED = BIT(3), + SGX_ENCL_PAGE_VA_OFFSET_MASK = GENMASK_ULL(11, 3), + SGX_ENCL_PAGE_ADDR_MASK = PAGE_MASK, +}; + +#define SGX_ENCL_PAGE_ADDR(page) \ + ((page)->desc & SGX_ENCL_PAGE_ADDR_MASK) +#define SGX_ENCL_PAGE_VA_OFFSET(page) \ + ((page)->desc & SGX_ENCL_PAGE_VA_OFFSET_MASK) +#define SGX_ENCL_PAGE_INDEX(page) \ + PFN_DOWN((page)->desc - (page)->encl->base) + +struct sgx_encl_page { + unsigned long desc; + unsigned long vm_max_prot_bits; + struct sgx_epc_page *epc_page; + struct sgx_va_page *va_page; + struct sgx_encl *encl; +}; + +enum sgx_encl_flags { + SGX_ENCL_CREATED = BIT(0), + SGX_ENCL_INITIALIZED = BIT(1), + SGX_ENCL_DEBUG = BIT(2), + SGX_ENCL_DEAD = BIT(3), + SGX_ENCL_IOCTL = BIT(4), +}; + +struct sgx_encl_mm { + struct sgx_encl *encl; + struct mm_struct *mm; + struct list_head list; + struct mmu_notifier mmu_notifier; +#if (LINUX_VERSION_CODE < KERNEL_VERSION(5,4,0)) + struct rcu_head rcu; +#endif +}; + +struct sgx_encl { + atomic_t flags; + u64 secs_attributes; + u64 allowed_attributes; + unsigned int page_cnt; + unsigned int secs_child_cnt; + struct mutex lock; + struct list_head mm_list; + spinlock_t mm_lock; + unsigned long mm_list_gen; + struct file *backing; + struct kref refcount; + struct srcu_struct srcu; + unsigned long base; + unsigned long size; + unsigned long ssaframesize; + struct list_head va_pages; + struct radix_tree_root page_tree; + struct sgx_encl_page secs; + cpumask_t cpumask; +}; + +#define SGX_VA_SLOT_COUNT 512 + +struct sgx_va_page { + struct sgx_epc_page *epc_page; + DECLARE_BITMAP(slots, SGX_VA_SLOT_COUNT); + struct list_head list; +}; + +extern const struct vm_operations_struct sgx_vm_ops; + +int sgx_encl_find(struct mm_struct *mm, unsigned long addr, + struct vm_area_struct **vma); +void sgx_encl_destroy(struct sgx_encl *encl); +void sgx_encl_release(struct kref *ref); +int sgx_encl_mm_add(struct sgx_encl *encl, struct mm_struct *mm); +int sgx_encl_may_map(struct sgx_encl *encl, unsigned long start, + unsigned long end, unsigned long vm_prot_bits); + +struct sgx_backing { + pgoff_t page_index; + struct page *contents; + struct page *pcmd; + unsigned long pcmd_offset; +}; + +int sgx_encl_get_backing(struct sgx_encl *encl, unsigned long page_index, + struct sgx_backing *backing); +void sgx_encl_put_backing(struct sgx_backing *backing, bool do_write); +int sgx_encl_test_and_clear_young(struct mm_struct *mm, + struct sgx_encl_page *page); +struct sgx_encl_page *sgx_encl_reserve_page(struct sgx_encl *encl, + unsigned long addr); + +struct sgx_epc_page *sgx_alloc_va_page(void); +unsigned int sgx_alloc_va_slot(struct sgx_va_page *va_page); +void sgx_free_va_slot(struct sgx_va_page *va_page, unsigned int offset); +bool sgx_va_page_full(struct sgx_va_page *va_page); + +#endif /* _X86_ENCL_H */ --- linux-azure-5.8-5.8.0.orig/ubuntu/sgx/encls.h +++ linux-azure-5.8-5.8.0/ubuntu/sgx/encls.h @@ -0,0 +1,239 @@ +/* SPDX-License-Identifier: (GPL-2.0 OR BSD-3-Clause) */ +#ifndef _X86_ENCLS_H +#define _X86_ENCLS_H + +#include +#include +#include +#include +#include +#include +#include +#include "sgx.h" +#include "dcap.h" + +enum sgx_encls_leaf { + ECREATE = 0x00, + EADD = 0x01, + EINIT = 0x02, + EREMOVE = 0x03, + EDGBRD = 0x04, + EDGBWR = 0x05, + EEXTEND = 0x06, + ELDU = 0x08, + EBLOCK = 0x09, + EPA = 0x0A, + EWB = 0x0B, + ETRACK = 0x0C, +}; + +/** + * ENCLS_FAULT_FLAG - flag signifying an ENCLS return code is a trapnr + * + * ENCLS has its own (positive value) error codes and also generates + * ENCLS specific #GP and #PF faults. And the ENCLS values get munged + * with system error codes as everything percolates back up the stack. + * Unfortunately (for us), we need to precisely identify each unique + * error code, e.g. the action taken if EWB fails varies based on the + * type of fault and on the exact SGX error code, i.e. we can't simply + * convert all faults to -EFAULT. + * + * To make all three error types coexist, we set bit 30 to identify an + * ENCLS fault. Bit 31 (technically bits N:31) is used to differentiate + * between positive (faults and SGX error codes) and negative (system + * error codes) values. + */ +#define ENCLS_FAULT_FLAG 0x40000000 + +/* Retrieve the encoded trapnr from the specified return code. */ +#define ENCLS_TRAPNR(r) ((r) & ~ENCLS_FAULT_FLAG) + +/* Issue a WARN() about an ENCLS leaf. */ +#define ENCLS_WARN(r, name) { \ + do { \ + int _r = (r); \ + WARN(_r, "%s returned %d (0x%x)\n", (name), _r, _r); \ + } while (0); \ +} + +/** + * encls_failed() - Check if an ENCLS leaf function failed + * @ret: the return value of an ENCLS leaf function call + * + * Check if an ENCLS leaf function failed. This happens when the leaf function + * causes a fault that is not caused by an EPCM conflict or when the leaf + * function returns a non-zero value. + */ +static inline bool encls_failed(int ret) +{ + int epcm_trapnr; + + if (boot_cpu_has(X86_FEATURE_SGX2)) + epcm_trapnr = X86_TRAP_PF; + else + epcm_trapnr = X86_TRAP_GP; + + if (ret & ENCLS_FAULT_FLAG) + return ENCLS_TRAPNR(ret) != epcm_trapnr; + + return !!ret; +} + +/** + * __encls_ret_N - encode an ENCLS leaf that returns an error code in EAX + * @rax: leaf number + * @inputs: asm inputs for the leaf + * + * Emit assembly for an ENCLS leaf that returns an error code, e.g. EREMOVE. + * And because SGX isn't complex enough as it is, leafs that return an error + * code also modify flags. + * + * Return: + * 0 on success, + * SGX error code on failure + */ +#define __encls_ret_N(rax, inputs...) \ + ({ \ + int ret; \ + asm volatile( \ + "1: .byte 0x0f, 0x01, 0xcf;\n\t" \ + "2:\n" \ + ".section .fixup,\"ax\"\n" \ + "3: orl $"__stringify(ENCLS_FAULT_FLAG)",%%eax\n" \ + " jmp 2b\n" \ + ".previous\n" \ + _ASM_EXTABLE_FAULT(1b, 3b) \ + : "=a"(ret) \ + : "a"(rax), inputs \ + : "memory", "cc"); \ + ret; \ + }) + +#define __encls_ret_1(rax, rcx) \ + ({ \ + __encls_ret_N(rax, "c"(rcx)); \ + }) + +#define __encls_ret_2(rax, rbx, rcx) \ + ({ \ + __encls_ret_N(rax, "b"(rbx), "c"(rcx)); \ + }) + +#define __encls_ret_3(rax, rbx, rcx, rdx) \ + ({ \ + __encls_ret_N(rax, "b"(rbx), "c"(rcx), "d"(rdx)); \ + }) + +/** + * __encls_N - encode an ENCLS leaf that doesn't return an error code + * @rax: leaf number + * @rbx_out: optional output variable + * @inputs: asm inputs for the leaf + * + * Emit assembly for an ENCLS leaf that does not return an error code, + * e.g. ECREATE. Leaves without error codes either succeed or fault. + * @rbx_out is an optional parameter for use by EDGBRD, which returns + * the the requested value in RBX. + * + * Return: + * 0 on success, + * trapnr with ENCLS_FAULT_FLAG set on fault + */ +#define __encls_N(rax, rbx_out, inputs...) \ + ({ \ + int ret; \ + asm volatile( \ + "1: .byte 0x0f, 0x01, 0xcf;\n\t" \ + " xor %%eax,%%eax;\n" \ + "2:\n" \ + ".section .fixup,\"ax\"\n" \ + "3: orl $"__stringify(ENCLS_FAULT_FLAG)",%%eax\n" \ + " jmp 2b\n" \ + ".previous\n" \ + _ASM_EXTABLE_FAULT(1b, 3b) \ + : "=a"(ret), "=b"(rbx_out) \ + : "a"(rax), inputs \ + : "memory"); \ + ret; \ + }) + +#define __encls_2(rax, rbx, rcx) \ + ({ \ + unsigned long ign_rbx_out; \ + __encls_N(rax, ign_rbx_out, "b"(rbx), "c"(rcx)); \ + }) + +#define __encls_1_1(rax, data, rcx) \ + ({ \ + unsigned long rbx_out; \ + int ret = __encls_N(rax, rbx_out, "c"(rcx)); \ + if (!ret) \ + data = rbx_out; \ + ret; \ + }) + +static inline int __ecreate(struct sgx_pageinfo *pginfo, void *secs) +{ + return __encls_2(ECREATE, pginfo, secs); +} + +static inline int __eextend(void *secs, void *addr) +{ + return __encls_2(EEXTEND, secs, addr); +} + +static inline int __eadd(struct sgx_pageinfo *pginfo, void *addr) +{ + return __encls_2(EADD, pginfo, addr); +} + +static inline int __einit(void *sigstruct, void* token, void *secs) +{ + return __encls_ret_3(EINIT, sigstruct, secs, token); +} + +static inline int __eremove(void *addr) +{ + return __encls_ret_1(EREMOVE, addr); +} + +static inline int __edbgwr(void *addr, unsigned long *data) +{ + return __encls_2(EDGBWR, *data, addr); +} + +static inline int __edbgrd(void *addr, unsigned long *data) +{ + return __encls_1_1(EDGBRD, *data, addr); +} + +static inline int __etrack(void *addr) +{ + return __encls_ret_1(ETRACK, addr); +} + +static inline int __eldu(struct sgx_pageinfo *pginfo, void *addr, + void *va) +{ + return __encls_ret_3(ELDU, pginfo, addr, va); +} + +static inline int __eblock(void *addr) +{ + return __encls_ret_1(EBLOCK, addr); +} + +static inline int __epa(void *addr) +{ + unsigned long rbx = SGX_PAGE_TYPE_VA; + + return __encls_2(EPA, rbx, addr); +} + +static inline int __ewb(struct sgx_pageinfo *pginfo, void *addr, + void *va) +{ + return __encls_ret_3(EWB, pginfo, addr, va); +} + +#endif /* _X86_ENCLS_H */ --- linux-azure-5.8-5.8.0.orig/ubuntu/sgx/ioctl.c +++ linux-azure-5.8-5.8.0/ubuntu/sgx/ioctl.c @@ -0,0 +1,829 @@ +// SPDX-License-Identifier: (GPL-2.0 OR BSD-3-Clause) +// Copyright(c) 2016-19 Intel Corporation. + +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include "driver.h" +#include "encl.h" +#include "encls.h" + +#include +#include "sgx_wl.h" + +/* A per-cpu cache for the last known values of IA32_SGXLEPUBKEYHASHx MSRs. */ +static DEFINE_PER_CPU(u64 [4], sgx_lepubkeyhash_cache); + +static struct sgx_va_page *sgx_encl_grow(struct sgx_encl *encl) +{ + struct sgx_va_page *va_page = NULL; + void *err; + + BUILD_BUG_ON(SGX_VA_SLOT_COUNT != + (SGX_ENCL_PAGE_VA_OFFSET_MASK >> 3) + 1); + + if (!(encl->page_cnt % SGX_VA_SLOT_COUNT)) { + va_page = kzalloc(sizeof(*va_page), GFP_KERNEL); + if (!va_page) + return ERR_PTR(-ENOMEM); + + va_page->epc_page = sgx_alloc_va_page(); + if (IS_ERR(va_page->epc_page)) { + err = ERR_CAST(va_page->epc_page); + kfree(va_page); + return err; + } + + WARN_ON_ONCE(encl->page_cnt % SGX_VA_SLOT_COUNT); + } + encl->page_cnt++; + return va_page; +} + +static void sgx_encl_shrink(struct sgx_encl *encl, struct sgx_va_page *va_page) +{ + encl->page_cnt--; + + if (va_page) { + sgx_free_page(va_page->epc_page); + list_del(&va_page->list); + kfree(va_page); + } +} + +static u32 sgx_calc_ssaframesize(u32 miscselect, u64 xfrm) +{ + u32 size_max = PAGE_SIZE; + u32 size; + int i; + + for (i = 2; i < 64; i++) { + if (!((1 << i) & xfrm)) + continue; + + size = SGX_SSA_GPRS_SIZE + sgx_xsave_size_tbl[i]; + if (miscselect & SGX_MISC_EXINFO) + size += SGX_SSA_MISC_EXINFO_SIZE; + + if (size > size_max) + size_max = size; + } + + return PFN_UP(size_max); +} + +static int sgx_validate_secs(const struct sgx_secs *secs, + unsigned long ssaframesize) +{ + if (secs->size < (2 * PAGE_SIZE) || !is_power_of_2(secs->size)) + return -EINVAL; + + if (secs->base & (secs->size - 1)) + return -EINVAL; + + if (secs->miscselect & sgx_misc_reserved_mask || + secs->attributes & sgx_attributes_reserved_mask || + secs->xfrm & sgx_xfrm_reserved_mask) + return -EINVAL; + + if (secs->attributes & SGX_ATTR_MODE64BIT) { + if (secs->size > sgx_encl_size_max_64) + return -EINVAL; + } else if (secs->size > sgx_encl_size_max_32) + return -EINVAL; + + if (!(secs->xfrm & XFEATURE_MASK_FP) || + !(secs->xfrm & XFEATURE_MASK_SSE) || + (((secs->xfrm >> XFEATURE_BNDREGS) & 1) != + ((secs->xfrm >> XFEATURE_BNDCSR) & 1))) + return -EINVAL; + + if (!secs->ssa_frame_size || ssaframesize > secs->ssa_frame_size) + return -EINVAL; + + if (memchr_inv(secs->reserved1, 0, sizeof(secs->reserved1)) || + memchr_inv(secs->reserved2, 0, sizeof(secs->reserved2)) || + memchr_inv(secs->reserved3, 0, sizeof(secs->reserved3)) || + memchr_inv(secs->reserved4, 0, sizeof(secs->reserved4))) + return -EINVAL; + + return 0; +} + +static struct sgx_encl_page *sgx_encl_page_alloc(struct sgx_encl *encl, + unsigned long offset, + u64 secinfo_flags) +{ + struct sgx_encl_page *encl_page; + unsigned long prot; + + encl_page = kzalloc(sizeof(*encl_page), GFP_KERNEL); + if (!encl_page) + return ERR_PTR(-ENOMEM); + + encl_page->desc = encl->base + offset; + encl_page->encl = encl; + + prot = _calc_vm_trans(secinfo_flags, SGX_SECINFO_R, PROT_READ) | + _calc_vm_trans(secinfo_flags, SGX_SECINFO_W, PROT_WRITE) | + _calc_vm_trans(secinfo_flags, SGX_SECINFO_X, PROT_EXEC); + + /* + * TCS pages must always RW set for CPU access while the SECINFO + * permissions are *always* zero - the CPU ignores the user provided + * values and silently overwrites them with zero permissions. + */ + if ((secinfo_flags & SGX_SECINFO_PAGE_TYPE_MASK) == SGX_SECINFO_TCS) + prot |= PROT_READ | PROT_WRITE; + + /* Calculate maximum of the VM flags for the page. */ + encl_page->vm_max_prot_bits = calc_vm_prot_bits(prot, 0); + + return encl_page; +} + +static int sgx_encl_create(struct sgx_encl *encl, struct sgx_secs *secs) +{ + unsigned long encl_size = secs->size + PAGE_SIZE; + struct sgx_epc_page *secs_epc; + struct sgx_va_page *va_page; + unsigned long ssaframesize; + struct sgx_pageinfo pginfo; + struct sgx_secinfo secinfo; + struct file *backing; + long ret; + + if (atomic_read(&encl->flags) & SGX_ENCL_CREATED) + return -EINVAL; + + va_page = sgx_encl_grow(encl); + if (IS_ERR(va_page)) + return PTR_ERR(va_page); + else if (va_page) + list_add(&va_page->list, &encl->va_pages); + + ssaframesize = sgx_calc_ssaframesize(secs->miscselect, secs->xfrm); + if (sgx_validate_secs(secs, ssaframesize)) { + pr_debug("invalid SECS\n"); + ret = -EINVAL; + goto err_out_shrink; + } + + backing = shmem_file_setup("SGX backing", encl_size + (encl_size >> 5), + VM_NORESERVE); + if (IS_ERR(backing)) { + ret = PTR_ERR(backing); + goto err_out_shrink; + } + + encl->backing = backing; + + secs_epc = sgx_alloc_page(&encl->secs, true); + if (IS_ERR(secs_epc)) { + ret = PTR_ERR(secs_epc); + goto err_out_backing; + } + + encl->secs.epc_page = secs_epc; + + pginfo.addr = 0; + pginfo.contents = (unsigned long)secs; + pginfo.metadata = (unsigned long)&secinfo; + pginfo.secs = 0; + memset(&secinfo, 0, sizeof(secinfo)); + + ret = __ecreate((void *)&pginfo, sgx_epc_addr(secs_epc)); + if (ret) { + pr_debug("ECREATE returned %ld\n", ret); + goto err_out; + } + + if (secs->attributes & SGX_ATTR_DEBUG) + atomic_or(SGX_ENCL_DEBUG, &encl->flags); + + encl->secs.encl = encl; + encl->secs_attributes = secs->attributes; + encl->allowed_attributes |= SGX_ATTR_ALLOWED_MASK; + encl->base = secs->base; + encl->size = secs->size; + encl->ssaframesize = secs->ssa_frame_size; + + /* + * Set SGX_ENCL_CREATED only after the enclave is fully prepped. This + * allows setting and checking enclave creation without having to take + * encl->lock. + */ + atomic_or(SGX_ENCL_CREATED, &encl->flags); + + return 0; + +err_out: + sgx_free_page(encl->secs.epc_page); + encl->secs.epc_page = NULL; + +err_out_backing: + fput(encl->backing); + encl->backing = NULL; + +err_out_shrink: + sgx_encl_shrink(encl, va_page); + + return ret; +} + +/** + * sgx_ioc_enclave_create - handler for %SGX_IOC_ENCLAVE_CREATE + * @filep: open file to /dev/sgx + * @arg: userspace pointer to a struct sgx_enclave_create instance + * + * Allocate kernel data structures for a new enclave and execute ECREATE after + * verifying the correctness of the provided SECS. + * + * Note, enforcement of restricted and disallowed attributes is deferred until + * sgx_ioc_enclave_init(), only the architectural correctness of the SECS is + * checked by sgx_ioc_enclave_create(). + * + * Return: + * 0 on success, + * -errno otherwise + */ +static long sgx_ioc_enclave_create(struct sgx_encl *encl, void __user *arg) +{ + struct sgx_enclave_create ecreate; + struct page *secs_page; + struct sgx_secs *secs; + int ret; + + if (copy_from_user(&ecreate, arg, sizeof(ecreate))) + return -EFAULT; + + secs_page = alloc_page(GFP_KERNEL); + if (!secs_page) + return -ENOMEM; + + secs = kmap(secs_page); + if (copy_from_user(secs, (void __user *)ecreate.src, sizeof(*secs))) { + ret = -EFAULT; + goto out; + } + + ret = sgx_encl_create(encl, secs); + +out: + kunmap(secs_page); + __free_page(secs_page); + return ret; +} + +static int sgx_validate_secinfo(struct sgx_secinfo *secinfo) +{ + u64 perm = secinfo->flags & SGX_SECINFO_PERMISSION_MASK; + u64 pt = secinfo->flags & SGX_SECINFO_PAGE_TYPE_MASK; + + if (pt != SGX_SECINFO_REG && pt != SGX_SECINFO_TCS) + return -EINVAL; + + if ((perm & SGX_SECINFO_W) && !(perm & SGX_SECINFO_R)) + return -EINVAL; + + /* + * CPU will silently overwrite the permissions as zero, which means + * that we need to validate it ourselves. + */ + if (pt == SGX_SECINFO_TCS && perm) + return -EINVAL; + + if (secinfo->flags & SGX_SECINFO_RESERVED_MASK) + return -EINVAL; + + if (memchr_inv(secinfo->reserved, 0, sizeof(secinfo->reserved))) + return -EINVAL; + + return 0; +} + +static int __sgx_encl_add_page(struct sgx_encl *encl, + struct sgx_encl_page *encl_page, + struct sgx_epc_page *epc_page, + struct sgx_secinfo *secinfo, unsigned long src) +{ + struct sgx_pageinfo pginfo; + struct vm_area_struct *vma; + struct page *src_page; + int ret; + + /* Query vma's VM_MAYEXEC as an indirect path_noexec() check. */ + if (encl_page->vm_max_prot_bits & VM_EXEC) { + vma = find_vma(current->mm, src); + if (!vma) + return -EFAULT; + + if (!(vma->vm_flags & VM_MAYEXEC)) + return -EACCES; + } + + ret = get_user_pages(src, 1, 0, &src_page, NULL); + if (ret < 1) + return ret; + + pginfo.secs = (unsigned long)sgx_epc_addr(encl->secs.epc_page); + pginfo.addr = SGX_ENCL_PAGE_ADDR(encl_page); + pginfo.metadata = (unsigned long)secinfo; + pginfo.contents = (unsigned long)kmap_atomic(src_page); + + ret = __eadd(&pginfo, sgx_epc_addr(epc_page)); + + kunmap_atomic((void *)pginfo.contents); + put_page(src_page); + + return ret ? -EIO : 0; +} + +static int __sgx_encl_extend(struct sgx_encl *encl, + struct sgx_epc_page *epc_page) +{ + int ret; + int i; + + for (i = 0; i < 16; i++) { + ret = __eextend(sgx_epc_addr(encl->secs.epc_page), + sgx_epc_addr(epc_page) + (i * 0x100)); + if (ret) { + if (encls_failed(ret)) + ENCLS_WARN(ret, "EEXTEND"); + return -EIO; + } + } + + return 0; +} + +static int sgx_encl_add_page(struct sgx_encl *encl, unsigned long src, + unsigned long offset, unsigned long length, + struct sgx_secinfo *secinfo, unsigned long flags) +{ + struct sgx_encl_page *encl_page; + struct sgx_epc_page *epc_page; + struct sgx_va_page *va_page; + int ret; + + encl_page = sgx_encl_page_alloc(encl, offset, secinfo->flags); + if (IS_ERR(encl_page)) + return PTR_ERR(encl_page); + + epc_page = sgx_alloc_page(encl_page, true); + if (IS_ERR(epc_page)) { + kfree(encl_page); + return PTR_ERR(epc_page); + } + + if (atomic_read(&encl->flags) & + (SGX_ENCL_INITIALIZED | SGX_ENCL_DEAD)) { + ret = -EFAULT; + goto err_out_free; + } + + va_page = sgx_encl_grow(encl); + if (IS_ERR(va_page)) { + ret = PTR_ERR(va_page); + goto err_out_free; + } + + down_read(¤t->mm->mmap_lock); + mutex_lock(&encl->lock); + + /* + * Adding to encl->va_pages must be done under encl->lock. Ditto for + * deleting (via sgx_encl_shrink()) in the error path. + */ + if (va_page) + list_add(&va_page->list, &encl->va_pages); + + /* + * Insert prior to EADD in case of OOM. EADD modifies MRENCLAVE, i.e. + * can't be gracefully unwound, while failure on EADD/EXTEND is limited + * to userspace errors (or kernel/hardware bugs). + */ + ret = radix_tree_insert(&encl->page_tree, PFN_DOWN(encl_page->desc), + encl_page); + if (ret) + goto err_out_unlock; + + ret = __sgx_encl_add_page(encl, encl_page, epc_page, secinfo, + src); + if (ret) + goto err_out; + + /* + * Complete the "add" before doing the "extend" so that the "add" + * isn't in a half-baked state in the extremely unlikely scenario the + * the enclave will be destroyed in response to EEXTEND failure. + */ + encl_page->encl = encl; + encl_page->epc_page = epc_page; + encl->secs_child_cnt++; + + if (flags & SGX_PAGE_MEASURE) { + ret = __sgx_encl_extend(encl, epc_page); + if (ret) + goto err_out; + } + + sgx_mark_page_reclaimable(encl_page->epc_page); + mutex_unlock(&encl->lock); + up_read(¤t->mm->mmap_lock); + return ret; + +err_out: + radix_tree_delete(&encl_page->encl->page_tree, + PFN_DOWN(encl_page->desc)); + +err_out_unlock: + sgx_encl_shrink(encl, va_page); + mutex_unlock(&encl->lock); + up_read(¤t->mm->mmap_lock); + +err_out_free: + sgx_free_page(epc_page); + kfree(encl_page); + + /* + * Destroy enclave on ENCLS failure as this means that EPC has been + * invalidated. + */ + if (ret == -EIO) + sgx_encl_destroy(encl); + + return ret; +} + +/** + * sgx_ioc_enclave_add_pages() - The handler for %SGX_IOC_ENCLAVE_ADD_PAGES + * @encl: pointer to an enclave instance (via ioctl() file pointer) + * @arg: a user pointer to a struct sgx_enclave_add_pages instance + * + * Add one or more pages to an uninitialized enclave, and optionally extend the + * measurement with the contents of the page. The address range of pages must + * be contiguous. The SECINFO and measurement mask are applied to all pages. + * + * A SECINFO for a TCS is required to always contain zero permissions because + * CPU silently zeros them. Allowing anything else would cause a mismatch in + * the measurement. + * + * mmap()'s protection bits are capped by the page permissions. For each page + * address, the maximum protection bits are computed with the following + * heuristics: + * + * 1. A regular page: PROT_R, PROT_W and PROT_X match the SECINFO permissions. + * 2. A TCS page: PROT_R | PROT_W. + * 3. No page: PROT_NONE. + * + * mmap() is not allowed to surpass the minimum of the maximum protection bits + * within the given address range. + * + * As stated above, a non-existent page is interpreted as a page with no + * permissions. In effect, this allows mmap() with PROT_NONE to be used to seek + * an address range for the enclave that can be then populated into SECS. + * + * If ENCLS opcode fails, that effectively means that EPC has been invalidated. + * When this happens the enclave is destroyed and -EIO is returned to the + * caller. + * + * Return: + * 0 on success, + * -EACCES if an executable source page is located in a noexec partition, + * -EIO if either ENCLS[EADD] or ENCLS[EEXTEND] fails + * -errno otherwise + */ +static long sgx_ioc_enclave_add_pages(struct sgx_encl *encl, void __user *arg) +{ + struct sgx_enclave_add_pages addp; + struct sgx_secinfo secinfo; + unsigned long c; + int ret; + + if (!(atomic_read(&encl->flags) & SGX_ENCL_CREATED)) + return -EINVAL; + + if (copy_from_user(&addp, arg, sizeof(addp))) + return -EFAULT; + + if (!IS_ALIGNED(addp.offset, PAGE_SIZE) || + !IS_ALIGNED(addp.src, PAGE_SIZE)) + return -EINVAL; + + if (!(access_ok( +#if (LINUX_VERSION_CODE < KERNEL_VERSION(5, 0, 0) && (!defined(RHEL_RELEASE_CODE))) + VERIFY_READ, +#else + #if( defined(RHEL_RELEASE_VERSION) && defined(RHEL_RELEASE_CODE)) + #if (RHEL_RELEASE_CODE < RHEL_RELEASE_VERSION(8, 0)) + #error "RHEL version not supported" + #elif (RHEL_RELEASE_CODE < RHEL_RELEASE_VERSION(8, 1)) + VERIFY_READ, + #endif + #endif +#endif + addp.src, PAGE_SIZE))) + return -EFAULT; + + if (addp.length & (PAGE_SIZE - 1)) + return -EINVAL; + + if (addp.offset + addp.length - PAGE_SIZE >= encl->size) + return -EINVAL; + + if (copy_from_user(&secinfo, (void __user *)addp.secinfo, + sizeof(secinfo))) + return -EFAULT; + + if (sgx_validate_secinfo(&secinfo)) + return -EINVAL; + + for (c = 0 ; c < addp.length; c += PAGE_SIZE) { + if (signal_pending(current)) { + ret = -EINTR; + break; + } + + if (need_resched()) + cond_resched(); + + ret = sgx_encl_add_page(encl, addp.src + c, addp.offset + c, + addp.length - c, &secinfo, addp.flags); + if (ret) + break; + } + + addp.count = c; + + if (copy_to_user(arg, &addp, sizeof(addp))) + return -EFAULT; + + return ret; +} + +static int __sgx_get_key_hash(struct crypto_shash *tfm, const void *modulus, + void *hash) +{ + SHASH_DESC_ON_STACK(shash, tfm); + + shash->tfm = tfm; + + return crypto_shash_digest(shash, modulus, SGX_MODULUS_SIZE, hash); +} + +static int sgx_get_key_hash(const void *modulus, void *hash) +{ + struct crypto_shash *tfm; + int ret; + + tfm = crypto_alloc_shash("sha256", 0, CRYPTO_ALG_ASYNC); + if (IS_ERR(tfm)) + return PTR_ERR(tfm); + + ret = __sgx_get_key_hash(tfm, modulus, hash); + + crypto_free_shash(tfm); + return ret; +} + +static void sgx_update_lepubkeyhash_msrs(u64 *lepubkeyhash, bool enforce) +{ + u64 *cache; + int i; + + cache = per_cpu(sgx_lepubkeyhash_cache, smp_processor_id()); + for (i = 0; i < 4; i++) { + if (enforce || (lepubkeyhash[i] != cache[i])) { + wrmsrl(MSR_IA32_SGXLEPUBKEYHASH0 + i, lepubkeyhash[i]); + cache[i] = lepubkeyhash[i]; + } + } +} + +static int sgx_einit(struct sgx_sigstruct *sigstruct, void *token, + struct sgx_epc_page *secs, u64 *lepubkeyhash) +{ + int ret; + + preempt_disable(); + sgx_update_lepubkeyhash_msrs(lepubkeyhash, false); + ret = __einit(sigstruct, token, sgx_epc_addr(secs)); + if (ret == SGX_INVALID_EINITTOKEN) { + sgx_update_lepubkeyhash_msrs(lepubkeyhash, true); + ret = __einit(sigstruct, token, sgx_epc_addr(secs)); + } + preempt_enable(); + return ret; +} + +static int sgx_encl_init(struct sgx_encl *encl, struct sgx_sigstruct *sigstruct, + void *token) +{ + u64 mrsigner[4]; + int ret; + int i; + int j; + + ret = sgx_get_key_hash(sigstruct->modulus, mrsigner); + if (ret) + return ret; + + if((encl->secs_attributes & ~encl->allowed_attributes) && (encl->secs_attributes & SGX_ATTR_PROVISIONKEY)) { + for(i = 0; i < (sizeof(G_SERVICE_ENCLAVE_MRSIGNER) / sizeof(G_SERVICE_ENCLAVE_MRSIGNER[0])); i++) { + if(0 == memcmp(&G_SERVICE_ENCLAVE_MRSIGNER[i], mrsigner, sizeof(G_SERVICE_ENCLAVE_MRSIGNER[0]))) { + encl->allowed_attributes |= SGX_ATTR_PROVISIONKEY; + break; + } + } + } + + /* Check that the required attributes have been authorized. */ + if (encl->secs_attributes & ~encl->allowed_attributes) + return -EACCES; + + mutex_lock(&encl->lock); + + if (atomic_read(&encl->flags) & SGX_ENCL_INITIALIZED) { + ret = -EFAULT; + goto err_out; + } + + for (i = 0; i < SGX_EINIT_SLEEP_COUNT; i++) { + for (j = 0; j < SGX_EINIT_SPIN_COUNT; j++) { + ret = sgx_einit(sigstruct, token, encl->secs.epc_page, + mrsigner); + if (ret == SGX_UNMASKED_EVENT) + continue; + else + break; + } + + if (ret != SGX_UNMASKED_EVENT) + break; + + msleep_interruptible(SGX_EINIT_SLEEP_TIME); + + if (signal_pending(current)) { + ret = -ERESTARTSYS; + goto err_out; + } + } + + if (ret & ENCLS_FAULT_FLAG) { + if (encls_failed(ret)) + ENCLS_WARN(ret, "EINIT"); + + sgx_encl_destroy(encl); + ret = -EFAULT; + } else if (ret) { + pr_debug("EINIT returned %d\n", ret); + ret = -EPERM; + } else { + atomic_or(SGX_ENCL_INITIALIZED, &encl->flags); + } + +err_out: + mutex_unlock(&encl->lock); + return ret; +} + +/** + * sgx_ioc_enclave_init - handler for %SGX_IOC_ENCLAVE_INIT + * + * @filep: open file to /dev/sgx + * @arg: userspace pointer to a struct sgx_enclave_init instance + * + * Flush any outstanding enqueued EADD operations and perform EINIT. The + * Launch Enclave Public Key Hash MSRs are rewritten as necessary to match + * the enclave's MRSIGNER, which is caculated from the provided sigstruct. + * + * Return: + * 0 on success, + * SGX error code on EINIT failure, + * -errno otherwise + */ +static long sgx_ioc_enclave_init(struct sgx_encl *encl, void __user *arg) +{ + struct sgx_sigstruct *sigstruct; + struct sgx_enclave_init einit; + struct page *initp_page; + void* token; + int ret; + + if (!(atomic_read(&encl->flags) & SGX_ENCL_CREATED)) + return -EINVAL; + + if (copy_from_user(&einit, arg, sizeof(einit))) + return -EFAULT; + + initp_page = alloc_page(GFP_KERNEL); + if (!initp_page) + return -ENOMEM; + + sigstruct = kmap(initp_page); + token = (void *)((unsigned long)sigstruct + PAGE_SIZE / 2); + memset(token, 0, SGX_LAUNCH_TOKEN_SIZE); + + if (copy_from_user(sigstruct, (void __user *)einit.sigstruct, + sizeof(*sigstruct))) { + ret = -EFAULT; + goto out; + } + + ret = sgx_encl_init(encl, sigstruct, token); + +out: + kunmap(initp_page); + __free_page(initp_page); + return ret; +} + +/** + * sgx_ioc_enclave_set_attribute - handler for %SGX_IOC_ENCLAVE_SET_ATTRIBUTE + * @filep: open file to /dev/sgx + * @arg: userspace pointer to a struct sgx_enclave_set_attribute instance + * + * Mark the enclave as being allowed to access a restricted attribute bit. + * The requested attribute is specified via the attribute_fd field in the + * provided struct sgx_enclave_set_attribute. The attribute_fd must be a + * handle to an SGX attribute file, e.g. “/dev/sgx/provision". + * + * Failure to explicitly request access to a restricted attribute will cause + * sgx_ioc_enclave_init() to fail. Currently, the only restricted attribute + * is access to the PROVISION_KEY. + * + * Note, access to the EINITTOKEN_KEY is disallowed entirely. + * + * Return: 0 on success, -errno otherwise + */ +static long sgx_ioc_enclave_set_attribute(struct sgx_encl *encl, + void __user *arg) +{ + struct sgx_enclave_set_attribute params; + struct file *attribute_file; + int ret; + + if (copy_from_user(¶ms, arg, sizeof(params))) + return -EFAULT; + + attribute_file = fget(params.attribute_fd); + if (!attribute_file) + return -EINVAL; + + if (attribute_file->f_op != &sgx_provision_fops) { + ret = -EINVAL; + goto out; + } + + encl->allowed_attributes |= SGX_ATTR_PROVISIONKEY; + ret = 0; + +out: + fput(attribute_file); + return ret; +} + +long sgx_ioctl(struct file *filep, unsigned int cmd, unsigned long arg) +{ + struct sgx_encl *encl = filep->private_data; + int ret, encl_flags; + + encl_flags = atomic_fetch_or(SGX_ENCL_IOCTL, &encl->flags); + if (encl_flags & SGX_ENCL_IOCTL) + return -EBUSY; + + if (encl_flags & SGX_ENCL_DEAD) + return -EFAULT; + + switch (cmd) { + case SGX_IOC_ENCLAVE_CREATE: + ret = sgx_ioc_enclave_create(encl, (void __user *)arg); + break; + case SGX_IOC_ENCLAVE_ADD_PAGES: + ret = sgx_ioc_enclave_add_pages(encl, (void __user *)arg); + break; + case SGX_IOC_ENCLAVE_INIT: + ret = sgx_ioc_enclave_init(encl, (void __user *)arg); + break; + case SGX_IOC_ENCLAVE_SET_ATTRIBUTE: + ret = sgx_ioc_enclave_set_attribute(encl, (void __user *)arg); + break; + default: + ret = -ENOIOCTLCMD; + break; + } + + atomic_andnot(SGX_ENCL_IOCTL, &encl->flags); + + return ret; +} --- linux-azure-5.8-5.8.0.orig/ubuntu/sgx/main.c +++ linux-azure-5.8-5.8.0/ubuntu/sgx/main.c @@ -0,0 +1,329 @@ +// SPDX-License-Identifier: (GPL-2.0 OR BSD-3-Clause) +// Copyright(c) 2016-17 Intel Corporation. + +#include +#include +#include +#include +#include +#include +#include +#include "driver.h" +#include "encls.h" + +#include +#include "version.h" +#include "dcap.h" +#ifndef MSR_IA32_FEAT_CTL +#define MSR_IA32_FEAT_CTL MSR_IA32_FEATURE_CONTROL +#endif + +#ifndef FEAT_CTL_LOCKED +#define FEAT_CTL_LOCKED FEATURE_CONTROL_LOCKED +#endif + +struct sgx_epc_section sgx_epc_sections[SGX_MAX_EPC_SECTIONS]; +int sgx_nr_epc_sections; + +// Based on arch/x86/kernel/cpu/intel.c +static bool detect_sgx(struct cpuinfo_x86 *c) +{ + unsigned long long fc; + + rdmsrl(MSR_IA32_FEAT_CTL, fc); + if (!(fc & FEAT_CTL_LOCKED)) { + pr_err_once("sgx: The feature control MSR is not locked\n"); + return false; + } + + if (!(fc & FEAT_CTL_SGX_ENABLED)) { + pr_err_once("sgx: SGX is not enabled in IA32_FEATURE_CONTROL MSR\n"); + return false; + } + + if (!cpu_has(c, X86_FEATURE_SGX)) { + pr_err_once("sgx: SGX1 instruction set is not supported\n"); + return false; + } + + if (!(fc & FEAT_CTL_SGX_LC_ENABLED)) { + pr_info_once("sgx: The launch control MSRs are not writable\n"); + return false; + } + + return true; +} +static struct sgx_epc_page *__sgx_try_alloc_page(struct sgx_epc_section *section) +{ + struct sgx_epc_page *page; + + if (list_empty(§ion->page_list)) + return NULL; + + page = list_first_entry(§ion->page_list, struct sgx_epc_page, list); + list_del_init(&page->list); + section->free_cnt--; + + return page; +} + +/** + * sgx_try_alloc_page() - Allocate an EPC page + * + * Try to grab a page from the free EPC page list. + * + * Return: + * a pointer to a &struct sgx_epc_page instance, + * -errno on error + */ +struct sgx_epc_page *sgx_try_alloc_page(void) +{ + struct sgx_epc_section *section; + struct sgx_epc_page *page; + int i; + + for (i = 0; i < sgx_nr_epc_sections; i++) { + section = &sgx_epc_sections[i]; + spin_lock(§ion->lock); + page = __sgx_try_alloc_page(section); + spin_unlock(§ion->lock); + + if (page) + return page; + } + + return ERR_PTR(-ENOMEM); +} + +/** + * sgx_alloc_page() - Allocate an EPC page + * @owner: the owner of the EPC page + * @reclaim: reclaim pages if necessary + * + * Try to grab a page from the free EPC page list. If there is a free page + * available, it is returned to the caller. The @reclaim parameter hints + * the EPC memory manager to swap pages when required. + * + * Return: + * a pointer to a &struct sgx_epc_page instance, + * -errno on error + */ +struct sgx_epc_page *sgx_alloc_page(void *owner, bool reclaim) +{ + struct sgx_epc_page *entry; + + for ( ; ; ) { + entry = sgx_try_alloc_page(); + if (!IS_ERR(entry)) { + entry->owner = owner; + break; + } + + if (list_empty(&sgx_active_page_list)) + return ERR_PTR(-ENOMEM); + + if (!reclaim) { + entry = ERR_PTR(-EBUSY); + break; + } + + if (signal_pending(current)) { + entry = ERR_PTR(-ERESTARTSYS); + break; + } + + sgx_reclaim_pages(); + schedule(); + } + + if (sgx_should_reclaim(SGX_NR_LOW_PAGES)) + wake_up(&ksgxswapd_waitq); + + return entry; +} + +/** + * sgx_free_page() - Free an EPC page + * @page: pointer a previously allocated EPC page + * + * EREMOVE an EPC page and insert it back to the list of free pages. The page + * must not be reclaimable. + */ +void sgx_free_page(struct sgx_epc_page *page) +{ + struct sgx_epc_section *section = sgx_epc_section(page); + int ret; + + /* + * Don't take sgx_active_page_list_lock when asserting the page isn't + * reclaimable, missing a WARN in the very rare case is preferable to + * unnecessarily taking a global lock in the common case. + */ + WARN_ON_ONCE(page->desc & SGX_EPC_PAGE_RECLAIMABLE); + + ret = __eremove(sgx_epc_addr(page)); + if (WARN_ONCE(ret, "EREMOVE returned %d (0x%x)", ret, ret)) + return; + + spin_lock(§ion->lock); + list_add_tail(&page->list, §ion->page_list); + section->free_cnt++; + spin_unlock(§ion->lock); +} + +static void sgx_free_epc_section(struct sgx_epc_section *section) +{ + struct sgx_epc_page *page; + + while (!list_empty(§ion->page_list)) { + page = list_first_entry(§ion->page_list, + struct sgx_epc_page, list); + list_del(&page->list); + kfree(page); + } + + while (!list_empty(§ion->unsanitized_page_list)) { + page = list_first_entry(§ion->unsanitized_page_list, + struct sgx_epc_page, list); + list_del(&page->list); + kfree(page); + } + + memunmap(section->va); +} + +static bool __init sgx_alloc_epc_section(u64 addr, u64 size, + unsigned long index, + struct sgx_epc_section *section) +{ + unsigned long nr_pages = size >> PAGE_SHIFT; + struct sgx_epc_page *page; + unsigned long i; + + section->va = memremap(addr, size, MEMREMAP_WB); + if (!section->va) + return false; + + section->pa = addr; + spin_lock_init(§ion->lock); + INIT_LIST_HEAD(§ion->page_list); + INIT_LIST_HEAD(§ion->unsanitized_page_list); + + for (i = 0; i < nr_pages; i++) { + page = kzalloc(sizeof(*page), GFP_KERNEL); + if (!page) + goto err_out; + + page->desc = (addr + (i << PAGE_SHIFT)) | index; + list_add_tail(&page->list, §ion->unsanitized_page_list); + } + + section->free_cnt = nr_pages; + return true; + +err_out: + sgx_free_epc_section(section); + return false; +} + +static void sgx_page_cache_teardown(void) +{ + int i; + + for (i = 0; i < sgx_nr_epc_sections; i++) + sgx_free_epc_section(&sgx_epc_sections[i]); +} + +/** + * A section metric is concatenated in a way that @low bits 12-31 define the + * bits 12-31 of the metric and @high bits 0-19 define the bits 32-51 of the + * metric. + */ +static inline u64 __init sgx_calc_section_metric(u64 low, u64 high) +{ + return (low & GENMASK_ULL(31, 12)) + + ((high & GENMASK_ULL(19, 0)) << 32); +} + +static bool __init sgx_page_cache_init(void) +{ + u32 eax, ebx, ecx, edx, type; + u64 pa, size; + int i; + + for (i = 0; i <= ARRAY_SIZE(sgx_epc_sections); i++) { + cpuid_count(SGX_CPUID, i + SGX_CPUID_FIRST_VARIABLE_SUB_LEAF, + &eax, &ebx, &ecx, &edx); + + type = eax & SGX_CPUID_SUB_LEAF_TYPE_MASK; + if (type == SGX_CPUID_SUB_LEAF_INVALID) + break; + + if (type != SGX_CPUID_SUB_LEAF_EPC_SECTION) { + pr_err_once("Unknown EPC section type: %u\n", type); + break; + } + + if (i == ARRAY_SIZE(sgx_epc_sections)) { + pr_warn("No free slot for an EPC section\n"); + break; + } + + pa = sgx_calc_section_metric(eax, ebx); + size = sgx_calc_section_metric(ecx, edx); + + pr_info("EPC section 0x%llx-0x%llx\n", pa, pa + size - 1); + + if (!sgx_alloc_epc_section(pa, size, i, &sgx_epc_sections[i])) { + pr_err("No free memory for an EPC section\n"); + break; + } + + sgx_nr_epc_sections++; + } + + if (!sgx_nr_epc_sections) { + pr_err("There are zero EPC sections.\n"); + return false; + } + + return true; +} + +static int __init sgx_init(void) +{ + int ret; + + if (!detect_sgx(&boot_cpu_data)) + return -ENODEV; + + if (!sgx_page_cache_init()) + return -EFAULT; + + if (!sgx_page_reclaimer_init()) + goto err_page_cache; + + ret = sgx_drv_init(); + if (ret) + goto err_kthread; + + pr_info("intel_sgx: " DRV_DESCRIPTION " v" DRV_VERSION "\n"); + + return 0; + +err_kthread: + kthread_stop(ksgxswapd_tsk); + +err_page_cache: + sgx_page_cache_teardown(); + return -EFAULT; +} +module_init(sgx_init); + +static void __exit sgx_exit(void) +{ + sgx_drv_exit(); + kthread_stop(ksgxswapd_tsk); + sgx_page_cache_teardown(); +} +module_exit(sgx_exit); --- linux-azure-5.8-5.8.0.orig/ubuntu/sgx/reclaim.c +++ linux-azure-5.8-5.8.0/ubuntu/sgx/reclaim.c @@ -0,0 +1,505 @@ +// SPDX-License-Identifier: (GPL-2.0 OR BSD-3-Clause) +// Copyright(c) 2016-19 Intel Corporation. + +#include +#include +#include +#include +#include +#include +#include +#include +#include "encl.h" +#include "encls.h" +#include "driver.h" + +#include + +struct task_struct *ksgxswapd_tsk; +DECLARE_WAIT_QUEUE_HEAD(ksgxswapd_waitq); +LIST_HEAD(sgx_active_page_list); +DEFINE_SPINLOCK(sgx_active_page_list_lock); + +static void sgx_sanitize_section(struct sgx_epc_section *section) +{ + struct sgx_epc_page *page; + LIST_HEAD(secs_list); + int ret; + + while (!list_empty(§ion->unsanitized_page_list)) { + if (kthread_should_stop()) + return; + + spin_lock(§ion->lock); + + page = list_first_entry(§ion->unsanitized_page_list, + struct sgx_epc_page, list); + + ret = __eremove(sgx_epc_addr(page)); + if (!ret) + list_move(&page->list, §ion->page_list); + else + list_move_tail(&page->list, &secs_list); + + spin_unlock(§ion->lock); + + cond_resched(); + } +} + +static int ksgxswapd(void *p) +{ + int i; + + set_freezable(); + + /* + * Reset all pages to uninitialized state. Pages could be in initialized + * on kmemexec. + */ + for (i = 0; i < sgx_nr_epc_sections; i++) + sgx_sanitize_section(&sgx_epc_sections[i]); + + /* + * 2nd round for the SECS pages as they cannot be removed when they + * still hold child pages. + */ + for (i = 0; i < sgx_nr_epc_sections; i++) { + sgx_sanitize_section(&sgx_epc_sections[i]); + + /* Should never happen. */ + if (!list_empty(&sgx_epc_sections[i].unsanitized_page_list)) + WARN(1, "EPC section %d has unsanitized pages.\n", i); + } + + while (!kthread_should_stop()) { + if (try_to_freeze()) + continue; + + wait_event_freezable(ksgxswapd_waitq, + kthread_should_stop() || + sgx_should_reclaim(SGX_NR_HIGH_PAGES)); + + if (sgx_should_reclaim(SGX_NR_HIGH_PAGES)) + sgx_reclaim_pages(); + + cond_resched(); + } + + return 0; +} + +bool __init sgx_page_reclaimer_init(void) +{ + struct task_struct *tsk; + + tsk = kthread_run(ksgxswapd, NULL, "ksgxswapd"); + if (IS_ERR(tsk)) + return false; + + ksgxswapd_tsk = tsk; + + return true; +} + +/** + * sgx_mark_page_reclaimable() - Mark a page as reclaimable + * @page: EPC page + * + * Mark a page as reclaimable and add it to the active page list. Pages + * are automatically removed from the active list when freed. + */ +void sgx_mark_page_reclaimable(struct sgx_epc_page *page) +{ + spin_lock(&sgx_active_page_list_lock); + page->desc |= SGX_EPC_PAGE_RECLAIMABLE; + list_add_tail(&page->list, &sgx_active_page_list); + spin_unlock(&sgx_active_page_list_lock); +} + +/** + * sgx_unmark_page_reclaimable() - Remove a page from the reclaim list + * @page: EPC page + * + * Clear the reclaimable flag and remove the page from the active page list. + * + * Return: + * 0 on success, + * -EBUSY if the page is in the process of being reclaimed + */ +int sgx_unmark_page_reclaimable(struct sgx_epc_page *page) +{ + /* + * Remove the page from the active list if necessary. If the page + * is actively being reclaimed, i.e. RECLAIMABLE is set but the + * page isn't on the active list, return -EBUSY as we can't free + * the page at this time since it is "owned" by the reclaimer. + */ + spin_lock(&sgx_active_page_list_lock); + if (page->desc & SGX_EPC_PAGE_RECLAIMABLE) { + if (list_empty(&page->list)) { + spin_unlock(&sgx_active_page_list_lock); + return -EBUSY; + } + list_del(&page->list); + page->desc &= ~SGX_EPC_PAGE_RECLAIMABLE; + } + spin_unlock(&sgx_active_page_list_lock); + + return 0; +} + +static bool sgx_reclaimer_age(struct sgx_epc_page *epc_page) +{ + struct sgx_encl_page *page = epc_page->owner; + struct sgx_encl *encl = page->encl; + struct sgx_encl_mm *encl_mm; + bool ret = true; + int idx; + + /* + * Note, this can race with sgx_encl_mm_add(), but worst case scenario + * a page will be reclaimed immediately after it's accessed in the new + * process/mm. + */ + idx = srcu_read_lock(&encl->srcu); + + list_for_each_entry_rcu(encl_mm, &encl->mm_list, list) { + if (!mmget_not_zero(encl_mm->mm)) + continue; + + down_read(&encl_mm->mm->mmap_lock); + ret = !sgx_encl_test_and_clear_young(encl_mm->mm, page); + up_read(&encl_mm->mm->mmap_lock); + +#if (LINUX_VERSION_CODE < KERNEL_VERSION(5, 0, 0) || LINUX_VERSION_CODE > KERNEL_VERSION(5, 4, 0) ) + mmput(encl_mm->mm); +#else + mmput_async(encl_mm->mm); +#endif + + if (!ret || (atomic_read(&encl->flags) & SGX_ENCL_DEAD)) + break; + } + + srcu_read_unlock(&encl->srcu, idx); + + if (!ret && !(atomic_read(&encl->flags) & SGX_ENCL_DEAD)) + return false; + + return true; +} + +static void sgx_reclaimer_block(struct sgx_epc_page *epc_page) +{ + struct sgx_encl_page *page = epc_page->owner; + unsigned long addr = SGX_ENCL_PAGE_ADDR(page); + struct sgx_encl *encl = page->encl; + struct sgx_encl_mm *encl_mm; + struct vm_area_struct *vma; + unsigned long mm_list_gen; + int idx, ret; + +retry: + mm_list_gen = encl->mm_list_gen; + /* + * Ensure mm_list_gen is snapshotted before walking mm_list to prevent + * beginning the walk with the old list in the new generation. Pairs + * with the smp_wmb() in sgx_encl_mm_add(). + */ + smp_rmb(); + + idx = srcu_read_lock(&encl->srcu); + + list_for_each_entry_rcu(encl_mm, &encl->mm_list, list) { + if (!mmget_not_zero(encl_mm->mm)) + continue; + + down_read(&encl_mm->mm->mmap_lock); + + ret = sgx_encl_find(encl_mm->mm, addr, &vma); + if (!ret && encl == vma->vm_private_data) + zap_vma_ptes(vma, addr, PAGE_SIZE); + + up_read(&encl_mm->mm->mmap_lock); + +#if (LINUX_VERSION_CODE < KERNEL_VERSION(5, 0, 0) || LINUX_VERSION_CODE > KERNEL_VERSION(5, 4, 0) ) + mmput(encl_mm->mm); +#else + mmput_async(encl_mm->mm); +#endif + } + + srcu_read_unlock(&encl->srcu, idx); + + /* + * Redo the zapping if a mm was added to mm_list while zapping was in + * progress. dup_mmap() copies the PTEs for VM_PFNMAP VMAs, i.e. the + * new mm won't take a page fault and so won't see that the page is + * tagged RECLAIMED. Note, vm_ops->open()/sgx_encl_mm_add() is called + * _after_ PTEs are copied, and dup_mmap() holds the old mm's mmap_sem + * for write, so the generation check is only needed to protect against + * dup_mmap() running after the mm_list walk started but before the old + * mm's PTEs were zapped. + */ + if (unlikely(encl->mm_list_gen != mm_list_gen)) + goto retry; + + mutex_lock(&encl->lock); + + if (!(atomic_read(&encl->flags) & SGX_ENCL_DEAD)) { + ret = __eblock(sgx_epc_addr(epc_page)); + if (encls_failed(ret)) + ENCLS_WARN(ret, "EBLOCK"); + } + + mutex_unlock(&encl->lock); +} + +static int __sgx_encl_ewb(struct sgx_epc_page *epc_page, void *va_slot, + struct sgx_backing *backing) +{ + struct sgx_pageinfo pginfo; + int ret; + + pginfo.addr = 0; + pginfo.secs = 0; + + pginfo.contents = (unsigned long)kmap_atomic(backing->contents); + pginfo.metadata = (unsigned long)kmap_atomic(backing->pcmd) + + backing->pcmd_offset; + + ret = __ewb(&pginfo, sgx_epc_addr(epc_page), va_slot); + + kunmap_atomic((void *)(unsigned long)(pginfo.metadata - + backing->pcmd_offset)); + kunmap_atomic((void *)(unsigned long)pginfo.contents); + + return ret; +} + +static void sgx_ipi_cb(void *info) +{ +} + +static const cpumask_t *sgx_encl_ewb_cpumask(struct sgx_encl *encl) +{ + cpumask_t *cpumask = &encl->cpumask; + struct sgx_encl_mm *encl_mm; + int idx; + + /* + * Note, this can race with sgx_encl_mm_add(), but ETRACK has already + * been executed, so CPUs running in the new mm will enter the enclave + * in a different epoch. + */ + cpumask_clear(cpumask); + + idx = srcu_read_lock(&encl->srcu); + + list_for_each_entry_rcu(encl_mm, &encl->mm_list, list) { + if (!mmget_not_zero(encl_mm->mm)) + continue; + + cpumask_or(cpumask, cpumask, mm_cpumask(encl_mm->mm)); + +#if (LINUX_VERSION_CODE < KERNEL_VERSION(5, 0, 0) || LINUX_VERSION_CODE > KERNEL_VERSION(5, 4, 0) ) + mmput(encl_mm->mm); +#else + mmput_async(encl_mm->mm); +#endif + } + + srcu_read_unlock(&encl->srcu, idx); + + return cpumask; +} + +static void sgx_encl_ewb(struct sgx_epc_page *epc_page, + struct sgx_backing *backing) +{ + struct sgx_encl_page *encl_page = epc_page->owner; + struct sgx_encl *encl = encl_page->encl; + struct sgx_va_page *va_page; + unsigned int va_offset; + void *va_slot; + int ret; + + encl_page->desc &= ~SGX_ENCL_PAGE_RECLAIMED; + + va_page = list_first_entry(&encl->va_pages, struct sgx_va_page, + list); + va_offset = sgx_alloc_va_slot(va_page); + va_slot = sgx_epc_addr(va_page->epc_page) + va_offset; + if (sgx_va_page_full(va_page)) + list_move_tail(&va_page->list, &encl->va_pages); + + ret = __sgx_encl_ewb(epc_page, va_slot, backing); + if (ret == SGX_NOT_TRACKED) { + ret = __etrack(sgx_epc_addr(encl->secs.epc_page)); + if (ret) { + if (encls_failed(ret)) + ENCLS_WARN(ret, "ETRACK"); + } + + ret = __sgx_encl_ewb(epc_page, va_slot, backing); + if (ret == SGX_NOT_TRACKED) { + /* + * Slow path, send IPIs to kick cpus out of the + * enclave. Note, it's imperative that the cpu + * mask is generated *after* ETRACK, else we'll + * miss cpus that entered the enclave between + * generating the mask and incrementing epoch. + */ + on_each_cpu_mask(sgx_encl_ewb_cpumask(encl), + sgx_ipi_cb, NULL, 1); + ret = __sgx_encl_ewb(epc_page, va_slot, backing); + } + } + + if (ret) { + if (encls_failed(ret)) + ENCLS_WARN(ret, "EWB"); + + sgx_free_va_slot(va_page, va_offset); + } else { + encl_page->desc |= va_offset; + encl_page->va_page = va_page; + } +} + +static void sgx_reclaimer_write(struct sgx_epc_page *epc_page, + struct sgx_backing *backing) +{ + struct sgx_encl_page *encl_page = epc_page->owner; + struct sgx_encl *encl = encl_page->encl; + struct sgx_backing secs_backing; + int ret; + + mutex_lock(&encl->lock); + + if (atomic_read(&encl->flags) & SGX_ENCL_DEAD) { + ret = __eremove(sgx_epc_addr(epc_page)); + WARN(ret, "EREMOVE returned %d\n", ret); + } else { + sgx_encl_ewb(epc_page, backing); + } + + encl_page->epc_page = NULL; + encl->secs_child_cnt--; + + if (!encl->secs_child_cnt) { + if (atomic_read(&encl->flags) & SGX_ENCL_DEAD) { + sgx_free_page(encl->secs.epc_page); + encl->secs.epc_page = NULL; + } else if (atomic_read(&encl->flags) & SGX_ENCL_INITIALIZED) { + ret = sgx_encl_get_backing(encl, PFN_DOWN(encl->size), + &secs_backing); + if (ret) + goto out; + + sgx_encl_ewb(encl->secs.epc_page, &secs_backing); + + sgx_free_page(encl->secs.epc_page); + encl->secs.epc_page = NULL; + + sgx_encl_put_backing(&secs_backing, true); + } + } + +out: + mutex_unlock(&encl->lock); +} + +/** + * sgx_reclaim_pages() - Reclaim EPC pages from the consumers + * + * Take a fixed number of pages from the head of the active page pool and + * reclaim them to the enclave's private shmem files. Skip the pages, which + * have been accessed since the last scan. Move those pages to the tail of + * active page pool so that the pages get scanned in LRU like fashion. + */ +void sgx_reclaim_pages(void) +{ + struct sgx_epc_page *chunk[SGX_NR_TO_SCAN]; + struct sgx_backing backing[SGX_NR_TO_SCAN]; + struct sgx_epc_section *section; + struct sgx_encl_page *encl_page; + struct sgx_epc_page *epc_page; + int cnt = 0; + int ret; + int i; + + spin_lock(&sgx_active_page_list_lock); + for (i = 0; i < SGX_NR_TO_SCAN; i++) { + if (list_empty(&sgx_active_page_list)) + break; + + epc_page = list_first_entry(&sgx_active_page_list, + struct sgx_epc_page, list); + list_del_init(&epc_page->list); + encl_page = epc_page->owner; + + if (kref_get_unless_zero(&encl_page->encl->refcount) != 0) + chunk[cnt++] = epc_page; + else + /* The owner is freeing the page. No need to add the + * page back to the list of reclaimable pages. + */ + epc_page->desc &= ~SGX_EPC_PAGE_RECLAIMABLE; + } + spin_unlock(&sgx_active_page_list_lock); + + for (i = 0; i < cnt; i++) { + epc_page = chunk[i]; + encl_page = epc_page->owner; + + if (!sgx_reclaimer_age(epc_page)) + goto skip; + + ret = sgx_encl_get_backing(encl_page->encl, + SGX_ENCL_PAGE_INDEX(encl_page), + &backing[i]); + if (ret) + goto skip; + + mutex_lock(&encl_page->encl->lock); + encl_page->desc |= SGX_ENCL_PAGE_RECLAIMED; + mutex_unlock(&encl_page->encl->lock); + continue; + +skip: + kref_put(&encl_page->encl->refcount, sgx_encl_release); + + spin_lock(&sgx_active_page_list_lock); + list_add_tail(&epc_page->list, &sgx_active_page_list); + spin_unlock(&sgx_active_page_list_lock); + + chunk[i] = NULL; + } + + for (i = 0; i < cnt; i++) { + epc_page = chunk[i]; + if (epc_page) + sgx_reclaimer_block(epc_page); + } + + for (i = 0; i < cnt; i++) { + epc_page = chunk[i]; + if (!epc_page) + continue; + + encl_page = epc_page->owner; + sgx_reclaimer_write(epc_page, &backing[i]); + sgx_encl_put_backing(&backing[i], true); + + kref_put(&encl_page->encl->refcount, sgx_encl_release); + epc_page->desc &= ~SGX_EPC_PAGE_RECLAIMABLE; + + section = sgx_epc_section(epc_page); + spin_lock(§ion->lock); + list_add_tail(&epc_page->list, §ion->page_list); + section->free_cnt++; + spin_unlock(§ion->lock); + } +} --- linux-azure-5.8-5.8.0.orig/ubuntu/sgx/sgx.h +++ linux-azure-5.8-5.8.0/ubuntu/sgx/sgx.h @@ -0,0 +1,108 @@ +/* SPDX-License-Identifier: (GPL-2.0 OR BSD-3-Clause) */ +#ifndef _X86_SGX_H +#define _X86_SGX_H + +#include +#include +#include +#include +#include +#include +#include "arch.h" + +#undef pr_fmt +#define pr_fmt(fmt) "sgx: " fmt + +struct sgx_epc_page { + unsigned long desc; + struct sgx_encl_page *owner; + struct list_head list; +}; + +/** + * struct sgx_epc_section + * + * The firmware can define multiple chunks of EPC to the different areas of the + * physical memory e.g. for memory areas of the each node. This structure is + * used to store EPC pages for one EPC section and virtual memory area where + * the pages have been mapped. + */ +struct sgx_epc_section { + unsigned long pa; + void *va; + unsigned long free_cnt; + struct list_head page_list; + struct list_head unsanitized_page_list; + spinlock_t lock; +}; + +/** + * enum sgx_epc_page_desc - bits and masks for an EPC page's descriptor + * %SGX_EPC_SECTION_MASK: SGX allows to have multiple EPC sections in the + * physical memory. The existing and near-future + * hardware defines at most eight sections, hence + * three bits to hold a section. + * %SGX_EPC_PAGE_RECLAIMABLE: The page has been been marked as reclaimable. + * Pages need to be colored this way because a page + * can be out of the active page list in the + * process of being swapped out. + */ +enum sgx_epc_page_desc { + SGX_EPC_SECTION_MASK = GENMASK_ULL(3, 0), + SGX_EPC_PAGE_RECLAIMABLE = BIT(4), + /* bits 12-63 are reserved for the physical page address of the page */ +}; + +#define SGX_MAX_EPC_SECTIONS (SGX_EPC_SECTION_MASK + 1) + +extern struct sgx_epc_section sgx_epc_sections[SGX_MAX_EPC_SECTIONS]; + +static inline struct sgx_epc_section *sgx_epc_section(struct sgx_epc_page *page) +{ + return &sgx_epc_sections[page->desc & SGX_EPC_SECTION_MASK]; +} + +static inline void *sgx_epc_addr(struct sgx_epc_page *page) +{ + struct sgx_epc_section *section = sgx_epc_section(page); + + return section->va + (page->desc & PAGE_MASK) - section->pa; +} + +#define SGX_NR_TO_SCAN 16 +#define SGX_NR_LOW_PAGES 32 +#define SGX_NR_HIGH_PAGES 64 + +extern int sgx_nr_epc_sections; +extern struct task_struct *ksgxswapd_tsk; +extern struct wait_queue_head(ksgxswapd_waitq); +extern struct list_head sgx_active_page_list; +extern spinlock_t sgx_active_page_list_lock; + +static inline unsigned long sgx_nr_free_pages(void) +{ + unsigned long cnt = 0; + int i; + + for (i = 0; i < sgx_nr_epc_sections; i++) + cnt += sgx_epc_sections[i].free_cnt; + + return cnt; +} + +static inline bool sgx_should_reclaim(unsigned long watermark) +{ + return sgx_nr_free_pages() < watermark && + !list_empty(&sgx_active_page_list); +} + +bool __init sgx_page_reclaimer_init(void); +void sgx_mark_page_reclaimable(struct sgx_epc_page *page); +int sgx_unmark_page_reclaimable(struct sgx_epc_page *page); +void sgx_reclaim_pages(void); + +struct sgx_epc_page *sgx_try_alloc_page(void); +struct sgx_epc_page *sgx_alloc_page(void *owner, bool reclaim); +void sgx_free_page(struct sgx_epc_page *page); + +#endif /* _X86_SGX_H */ --- linux-azure-5.8-5.8.0.orig/ubuntu/sgx/sgx_wl.h +++ linux-azure-5.8-5.8.0/ubuntu/sgx/sgx_wl.h @@ -0,0 +1,82 @@ +// This file is provided under a dual BSD/GPLv2 license. When using or +// redistributing this file, you may do so under either license. +// +// GPL LICENSE SUMMARY +// +// Copyright(c) 2016-2018 Intel Corporation. +// +// This program is free software; you can redistribute it and/or modify +// it under the terms of version 2 of the GNU General Public License as +// published by the Free Software Foundation. +// +// This program is distributed in the hope that it will be useful, but +// WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +// General Public License for more details. +// +// Contact Information: +// Jarkko Sakkinen +// Intel Finland Oy - BIC 0357606-4 - Westendinkatu 7, 02160 Espoo +// +// BSD LICENSE +// +// Copyright(c) 2016-2018 Intel Corporation. +// +// Redistribution and use in source and binary forms, with or without +// modification, are permitted provided that the following conditions +// are met: +// +// * Redistributions of source code must retain the above copyright +// notice, this list of conditions and the following disclaimer. +// * Redistributions in binary form must reproduce the above copyright +// notice, this list of conditions and the following disclaimer in +// the documentation and/or other materials provided with the +// distribution. +// * Neither the name of Intel Corporation nor the names of its +// contributors may be used to endorse or promote products derived +// from this software without specific prior written permission. +// +// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR +// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT +// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT +// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. +// +// Authors: +// + +#ifndef _WHITELIST_H_ +#define _WHITELIST_H_ + + +uint8_t G_SERVICE_ENCLAVE_MRSIGNER[][32] = +{ + {//MR_SIGNER of PvE provided + 0XEC, 0X15, 0XB1, 0X07, 0X87, 0XD2, 0XF8, 0X46, + 0X67, 0XCE, 0XB0, 0XB5, 0X98, 0XFF, 0XC4, 0X4A, + 0X1F, 0X1C, 0XB8, 0X0F, 0X67, 0X0A, 0XAE, 0X5D, + 0XF9, 0XE8, 0XFA, 0X9F, 0X63, 0X76, 0XE1, 0XF8 + }, + {//MR_SIGNER of PCE provided + 0xC5, 0x4A, 0x62, 0xF2, 0xBE, 0x9E, 0xF7, 0x6E, + 0xFB, 0x1F, 0x39, 0x30, 0xAD, 0x81, 0xEA, 0x7F, + 0x60, 0xDE, 0xFC, 0x1F, 0x5F, 0x25, 0xE0, 0x9B, + 0x7C, 0x06, 0x7A, 0x81, 0x5A, 0xE0, 0xC6, 0xCB + }, + {//MR_SIGNER of ECDSA/QE + 0X8C, 0X4F, 0X57, 0X75, 0XD7, 0X96, 0X50, 0X3E, + 0X96, 0X13, 0X7F, 0X77, 0XC6, 0X8A, 0X82, 0X9A, + 0X00, 0X56, 0XAC, 0X8D, 0XED, 0X70, 0X14, 0X0B, + 0X08, 0X1B, 0X09, 0X44, 0X90, 0XC5, 0X7B, 0XFF + } +}; + + +#endif //_WHITELIST_H_ + --- linux-azure-5.8-5.8.0.orig/ubuntu/sgx/version.h +++ linux-azure-5.8-5.8.0/ubuntu/sgx/version.h @@ -0,0 +1,10 @@ +// SPDX-License-Identifier: (GPL-2.0 OR BSD-3-Clause) +// Copyright(c) 2016-18 Intel Corporation. + +#ifndef _SGX_VERSION_H +#define _SGX_VERSION_H + +#define DRV_DESCRIPTION "Intel SGX DCAP Driver" +#define DRV_VERSION "1.33" + +#endif /* _SGX_VERSION_H */ --- linux-azure-5.8-5.8.0.orig/ubuntu/ubuntu-host/Kconfig +++ linux-azure-5.8-5.8.0/ubuntu/ubuntu-host/Kconfig @@ -0,0 +1,5 @@ +config UBUNTU_HOST + tristate "proc dir for exporting host data to containers" + help + Creates an ubuntu-host directory in proc for providing data from + Ubuntu hosts to containers. --- linux-azure-5.8-5.8.0.orig/ubuntu/ubuntu-host/Makefile +++ linux-azure-5.8-5.8.0/ubuntu/ubuntu-host/Makefile @@ -0,0 +1 @@ +obj-$(CONFIG_UBUNTU_HOST) += ubuntu-host.o --- linux-azure-5.8-5.8.0.orig/ubuntu/ubuntu-host/ubuntu-host.c +++ linux-azure-5.8-5.8.0/ubuntu/ubuntu-host/ubuntu-host.c @@ -0,0 +1,68 @@ +#include +#include +#include +#include +#include + +#define PROC_DIR "ubuntu-host" + +#define ESM_TOKEN_FILE "esm-token" +#define ESM_TOKEN_MAX_SIZE 64 + +static struct proc_dir_entry *proc_dir; +static char esm_token_buffer[ESM_TOKEN_MAX_SIZE]; + +static ssize_t esm_token_read(struct file *f, char __user *buf, size_t len, + loff_t *off) +{ + return simple_read_from_buffer(buf, len, off, esm_token_buffer, + strlen(esm_token_buffer)); +} + +static ssize_t esm_token_write(struct file *f, const char __user *buf, + size_t len, loff_t *off) +{ + ssize_t ret; + + if (len >= ESM_TOKEN_MAX_SIZE - 1) + return -EINVAL; + + ret = simple_write_to_buffer(esm_token_buffer, ESM_TOKEN_MAX_SIZE - 1, + off, buf, len); + if (ret >= 0) + esm_token_buffer[ret] = '\0'; + + return ret; +} + +static const struct proc_ops esm_token_fops = { + .proc_read = esm_token_read, + .proc_write = esm_token_write, +}; + +static void ubuntu_host_cleanup(void) +{ + remove_proc_entry(ESM_TOKEN_FILE, proc_dir); + proc_remove(proc_dir); +} + +static int __init ubuntu_host_init(void) +{ + proc_dir = proc_mkdir(PROC_DIR, NULL); + if (!proc_dir) { + pr_err("Failed to create ubuntu-host dir\n"); + return -ENOMEM; + } + + if (!proc_create_data(ESM_TOKEN_FILE, 0644, proc_dir, &esm_token_fops, NULL)) { + pr_err("Failed to create esm-tokan file\n"); + ubuntu_host_cleanup(); + return -ENOMEM; + } + + return 0; +} + +module_init(ubuntu_host_init); +module_exit(ubuntu_host_cleanup); +MODULE_LICENSE("GPL"); --- linux-azure-5.8-5.8.0.orig/ubuntu/xr-usb-serial/Makefile +++ linux-azure-5.8-5.8.0/ubuntu/xr-usb-serial/Makefile @@ -0,0 +1,15 @@ +obj-m := xr_usb_serial_common.o + +KERNELDIR ?= /lib/modules/$(shell uname -r)/build +PWD := $(shell pwd) + +EXTRA_CFLAGS := -DDEBUG=0 + +all: + $(MAKE) -C $(KERNELDIR) M=$(PWD) + +modules_install: + $(MAKE) -C $(KERNELDIR) M=$(PWD) modules_install + +clean: + rm -rf *.o *~ core .depend .*.cmd *.ko *.mod.c .tmp_versions vtty --- linux-azure-5.8-5.8.0.orig/ubuntu/xr-usb-serial/README.txt +++ linux-azure-5.8-5.8.0/ubuntu/xr-usb-serial/README.txt @@ -0,0 +1,50 @@ +Exar USB Serial Driver +====================== +Version 1A, 1/9/2015 + +This driver will work with any USB UART function in these Exar devices: + XR21V1410/1412/1414 + XR21B1411 + XR21B1420/1422/1424 + XR22801/802/804 + +The source code has been tested on various Linux kernels from 3.6.x to 3.17.x. +This may also work with newer kernels as well. + + +Installation +------------ + +* Compile and install the common usb serial driver module + + # make + # insmod ./xr_usb_serial_common.ko + + +* Plug the device into the USB host. You should see up to four devices created, + typically /dev/ttyXRUSB[0-3]. + + +Tips for Debugging +------------------ + +* Check that the USB UART is detected by the system + + # lsusb + +* Check that the CDC-ACM driver was not installed for the Exar USB UART + + # ls /dev/tty* + + To remove the CDC-ACM driver and install the driver: + + # rmmod cdc-acm + # modprobe -r usbserial + # modprobe usbserial + # insmod ./xr_usb_serial_common.ko + + +Technical Support +----------------- +Send any technical questions/issues to uarttechsupport@exar.com. + --- linux-azure-5.8-5.8.0.orig/ubuntu/xr-usb-serial/xr_usb_serial_common.c +++ linux-azure-5.8-5.8.0/ubuntu/xr-usb-serial/xr_usb_serial_common.c @@ -0,0 +1,1802 @@ +/* + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; either version 2 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA + */ + + /* + * Copyright (c) 2015 Exar Corporation, Inc. + * + * This driver will work with any USB UART function in these Exar devices: + * XR21V1410/1412/1414 + * XR21B1411 + * XR21B1420/1422/1424 + * XR22801/802/804 + * + * The driver has been tested on various kernel versions from 3.6.x to 3.17.x. + * This driver may work on newer versions as well. There is a different driver available + * from www.exar.com that will work with kernel versions 2.6.18 to 3.4.x. + * + * ChangeLog: + * Version 1A - Initial released version. + */ + +//#undef DEBUG +#undef VERBOSE_DEBUG + +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include "linux/version.h" + +#include "xr_usb_serial_common.h" +#include "xr_usb_serial_ioctl.h" + + +#define DRIVER_AUTHOR "" +#define DRIVER_DESC "Exar USB UART (serial port) driver" + +static struct usb_driver xr_usb_serial_driver; +static struct tty_driver *xr_usb_serial_tty_driver; +static struct xr_usb_serial *xr_usb_serial_table[XR_USB_SERIAL_TTY_MINORS]; + +static DEFINE_MUTEX(xr_usb_serial_table_lock); + +/* + * xr_usb_serial_table accessors + */ + +/* + * Look up an XR_USB_SERIAL structure by index. If found and not disconnected, increment + * its refcount and return it with its mutex held. + */ +static struct xr_usb_serial *xr_usb_serial_get_by_index(unsigned index) +{ + struct xr_usb_serial *xr_usb_serial; + + mutex_lock(&xr_usb_serial_table_lock); + xr_usb_serial = xr_usb_serial_table[index]; + if (xr_usb_serial) { + mutex_lock(&xr_usb_serial->mutex); + if (xr_usb_serial->disconnected) { + mutex_unlock(&xr_usb_serial->mutex); + xr_usb_serial = NULL; + } else { + tty_port_get(&xr_usb_serial->port); + mutex_unlock(&xr_usb_serial->mutex); + } + } + mutex_unlock(&xr_usb_serial_table_lock); + return xr_usb_serial; +} + +/* + * Try to find an available minor number and if found, associate it with 'xr_usb_serial'. + */ +static int xr_usb_serial_alloc_minor(struct xr_usb_serial *xr_usb_serial) +{ + int minor; + + mutex_lock(&xr_usb_serial_table_lock); + for (minor = 0; minor < XR_USB_SERIAL_TTY_MINORS; minor++) { + if (!xr_usb_serial_table[minor]) { + xr_usb_serial_table[minor] = xr_usb_serial; + break; + } + } + mutex_unlock(&xr_usb_serial_table_lock); + + return minor; +} + +/* Release the minor number associated with 'xr_usb_serial'. */ +static void xr_usb_serial_release_minor(struct xr_usb_serial *xr_usb_serial) +{ + mutex_lock(&xr_usb_serial_table_lock); + xr_usb_serial_table[xr_usb_serial->minor] = NULL; + mutex_unlock(&xr_usb_serial_table_lock); +} + +/* + * Functions for XR_USB_SERIAL control messages. + */ + +static int xr_usb_serial_ctrl_msg(struct xr_usb_serial *xr_usb_serial, int request, int value, + void *buf, int len) +{ + int retval = usb_control_msg(xr_usb_serial->dev, usb_sndctrlpipe(xr_usb_serial->dev, 0), + request, USB_RT_XR_USB_SERIAL, value, + xr_usb_serial->control->altsetting[0].desc.bInterfaceNumber, + buf, len, 5000); + dev_dbg(&xr_usb_serial->control->dev, + "%s - rq 0x%02x, val %#x, len %#x, result %d\n", + __func__, request, value, len, retval); + return retval < 0 ? retval : 0; +} + +#include "xr_usb_serial_hal.c" + + +/* + * Write buffer management. + * All of these assume proper locks taken by the caller. + */ + +static int xr_usb_serial_wb_alloc(struct xr_usb_serial *xr_usb_serial) +{ + int i, wbn; + struct xr_usb_serial_wb *wb; + + wbn = 0; + i = 0; + for (;;) { + wb = &xr_usb_serial->wb[wbn]; + if (!wb->use) { + wb->use = 1; + return wbn; + } + wbn = (wbn + 1) % XR_USB_SERIAL_NW; + if (++i >= XR_USB_SERIAL_NW) + return -1; + } +} + +static int xr_usb_serial_wb_is_avail(struct xr_usb_serial *xr_usb_serial) +{ + int i, n; + unsigned long flags; + + n = XR_USB_SERIAL_NW; + spin_lock_irqsave(&xr_usb_serial->write_lock, flags); + for (i = 0; i < XR_USB_SERIAL_NW; i++) + n -= xr_usb_serial->wb[i].use; + spin_unlock_irqrestore(&xr_usb_serial->write_lock, flags); + return n; +} + +/* + * Finish write. Caller must hold xr_usb_serial->write_lock + */ +static void xr_usb_serial_write_done(struct xr_usb_serial *xr_usb_serial, struct xr_usb_serial_wb *wb) +{ + wb->use = 0; + xr_usb_serial->transmitting--; + usb_autopm_put_interface_async(xr_usb_serial->control); +} + +/* + * Poke write. + * + * the caller is responsible for locking + */ + +static int xr_usb_serial_start_wb(struct xr_usb_serial *xr_usb_serial, struct xr_usb_serial_wb *wb) +{ + int rc; + + xr_usb_serial->transmitting++; + + wb->urb->transfer_buffer = wb->buf; + wb->urb->transfer_dma = wb->dmah; + wb->urb->transfer_buffer_length = wb->len; + wb->urb->dev = xr_usb_serial->dev; + + rc = usb_submit_urb(wb->urb, GFP_ATOMIC); + if (rc < 0) { + dev_err(&xr_usb_serial->data->dev, + "%s - usb_submit_urb(write bulk) failed: %d\n", + __func__, rc); + xr_usb_serial_write_done(xr_usb_serial, wb); + } + return rc; +} + +/* + * attributes exported through sysfs + */ +static ssize_t show_caps +(struct device *dev, struct device_attribute *attr, char *buf) +{ + struct usb_interface *intf = to_usb_interface(dev); + struct xr_usb_serial *xr_usb_serial = usb_get_intfdata(intf); + + return sprintf(buf, "%d", xr_usb_serial->ctrl_caps); +} +static DEVICE_ATTR(bmCapabilities, S_IRUGO, show_caps, NULL); + +static ssize_t show_country_codes +(struct device *dev, struct device_attribute *attr, char *buf) +{ + struct usb_interface *intf = to_usb_interface(dev); + struct xr_usb_serial *xr_usb_serial = usb_get_intfdata(intf); + + memcpy(buf, xr_usb_serial->country_codes, xr_usb_serial->country_code_size); + return xr_usb_serial->country_code_size; +} + +static DEVICE_ATTR(wCountryCodes, S_IRUGO, show_country_codes, NULL); + +static ssize_t show_country_rel_date +(struct device *dev, struct device_attribute *attr, char *buf) +{ + struct usb_interface *intf = to_usb_interface(dev); + struct xr_usb_serial *xr_usb_serial = usb_get_intfdata(intf); + + return sprintf(buf, "%d", xr_usb_serial->country_rel_date); +} + +static DEVICE_ATTR(iCountryCodeRelDate, S_IRUGO, show_country_rel_date, NULL); + +static ssize_t set_rs485_422_en(struct device *dev, + struct device_attribute *attr, const char *buf, + size_t count) +{ + struct usb_interface *intf = to_usb_interface(dev); + struct xr_usb_serial *xr_usb_serial = usb_get_intfdata(intf); + int error, value = 0; + + error = kstrtoint(buf, 0, &value); + if (error) + return error; + + if (value == 0) { + xr_usb_serial->rs485_422_en = false; + } else if (value == 1) { + // RS485,RS422 HD/FD mode + xr_usb_serial->rs485_422_en = true; + } + + return count; +} + +static ssize_t show_rs485_422_en(struct device *dev, + struct device_attribute *attr, char *buf) +{ + struct usb_interface *intf = to_usb_interface(dev); + struct xr_usb_serial *xr_usb_serial = usb_get_intfdata(intf); + + if (xr_usb_serial->rs485_422_en == false) { + return sprintf(buf, "0"); + } else if (xr_usb_serial->rs485_422_en == true) { + // RS485,RS422 HD/FD mode + return sprintf(buf, "1"); + } + return 0; +} + +static DEVICE_ATTR(bRS485_422_en, 0644, show_rs485_422_en, set_rs485_422_en); + +/* + * Interrupt handlers for various XR_USB_SERIAL device responses + */ + +/* control interface reports status changes with "interrupt" transfers */ +static void xr_usb_serial_ctrl_irq(struct urb *urb) +{ + struct xr_usb_serial *xr_usb_serial = urb->context; + struct usb_cdc_notification *dr = urb->transfer_buffer; + struct tty_struct *tty; + unsigned char *data; + int newctrl; + int retval; + int status = urb->status; + int i; + unsigned char *p; + + switch (status) { + case 0: + p = (unsigned char *)(urb->transfer_buffer); + for(i=0;iactual_length;i++) + { + dev_dbg(&xr_usb_serial->control->dev,"0x%02x\n",p[i]); + } + /* success */ + break; + case -ECONNRESET: + case -ENOENT: + case -ESHUTDOWN: + /* this urb is terminated, clean up */ + dev_dbg(&xr_usb_serial->control->dev, + "%s - urb shutting down with status: %d\n", + __func__, status); + return; + default: + dev_dbg(&xr_usb_serial->control->dev, + "%s - nonzero urb status received: %d\n", + __func__, status); + goto exit; + } + + usb_mark_last_busy(xr_usb_serial->dev); + + data = (unsigned char *)(dr + 1); + switch (dr->bNotificationType) { + case USB_CDC_NOTIFY_NETWORK_CONNECTION: + dev_dbg(&xr_usb_serial->control->dev, "%s - network connection: %d\n", + __func__, dr->wValue); + break; + + case USB_CDC_NOTIFY_SERIAL_STATE: +#if LINUX_VERSION_CODE > KERNEL_VERSION(3, 9, 0) + newctrl = get_unaligned_le16(data); + if (!xr_usb_serial->clocal && (xr_usb_serial->ctrlin & ~newctrl & XR_USB_SERIAL_CTRL_DCD)) { + dev_dbg(&xr_usb_serial->control->dev, "%s - calling hangup\n", + __func__); + tty_port_tty_hangup(&xr_usb_serial->port, false); + } +#else + tty = tty_port_tty_get(&xr_usb_serial->port); + newctrl = get_unaligned_le16(data); + if (tty) + { + if (!xr_usb_serial->clocal && + (xr_usb_serial->ctrlin & ~newctrl & XR_USB_SERIAL_CTRL_DCD)) { + dev_dbg(&xr_usb_serial->control->dev, + "%s - calling hangup\n", __func__); + tty_hangup(tty); + } + tty_kref_put(tty); + } +#endif + xr_usb_serial->ctrlin = newctrl; + + dev_dbg(&xr_usb_serial->control->dev, + "%s - input control lines: dcd%c dsr%c break%c " + "ring%c framing%c parity%c overrun%c\n", + __func__, + xr_usb_serial->ctrlin & XR_USB_SERIAL_CTRL_DCD ? '+' : '-', + xr_usb_serial->ctrlin & XR_USB_SERIAL_CTRL_DSR ? '+' : '-', + xr_usb_serial->ctrlin & XR_USB_SERIAL_CTRL_BRK ? '+' : '-', + xr_usb_serial->ctrlin & XR_USB_SERIAL_CTRL_RI ? '+' : '-', + xr_usb_serial->ctrlin & XR_USB_SERIAL_CTRL_FRAMING ? '+' : '-', + xr_usb_serial->ctrlin & XR_USB_SERIAL_CTRL_PARITY ? '+' : '-', + xr_usb_serial->ctrlin & XR_USB_SERIAL_CTRL_OVERRUN ? '+' : '-'); + break; + + default: + dev_dbg(&xr_usb_serial->control->dev, + "%s - unknown notification %d received: index %d " + "len %d data0 %d data1 %d\n", + __func__, + dr->bNotificationType, dr->wIndex, + dr->wLength, data[0], data[1]); + break; + } +exit: + retval = usb_submit_urb(urb, GFP_ATOMIC); + if (retval) + dev_err(&xr_usb_serial->control->dev, "%s - usb_submit_urb failed: %d\n", + __func__, retval); +} + +static int xr_usb_serial_submit_read_urb(struct xr_usb_serial *xr_usb_serial, int index, gfp_t mem_flags) +{ + int res; + + if (!test_and_clear_bit(index, &xr_usb_serial->read_urbs_free)) + return 0; + + dev_vdbg(&xr_usb_serial->data->dev, "%s - urb %d\n", __func__, index); + + res = usb_submit_urb(xr_usb_serial->read_urbs[index], mem_flags); + if (res) { + if (res != -EPERM) { + dev_err(&xr_usb_serial->data->dev, + "%s - usb_submit_urb failed: %d\n", + __func__, res); + } + set_bit(index, &xr_usb_serial->read_urbs_free); + return res; + } + + return 0; +} + +static int xr_usb_serial_submit_read_urbs(struct xr_usb_serial *xr_usb_serial, gfp_t mem_flags) +{ + int res; + int i; + + for (i = 0; i < xr_usb_serial->rx_buflimit; ++i) { + res = xr_usb_serial_submit_read_urb(xr_usb_serial, i, mem_flags); + if (res) + return res; + } + + return 0; +} +static void xr_usb_serial_process_read_urb(struct xr_usb_serial *xr_usb_serial, struct urb *urb) +{ + struct tty_struct *tty; + if (!urb->actual_length) + return; +#if LINUX_VERSION_CODE > KERNEL_VERSION(3, 9, 0) + tty_insert_flip_string(&xr_usb_serial->port, urb->transfer_buffer, + urb->actual_length); + tty_flip_buffer_push(&xr_usb_serial->port); +#else + tty = tty_port_tty_get(&xr_usb_serial->port); + if (!tty) + return; + tty_insert_flip_string(tty, urb->transfer_buffer, urb->actual_length); + tty_flip_buffer_push(tty); + + tty_kref_put(tty); +#endif +} + +static void xr_usb_serial_read_bulk_callback(struct urb *urb) +{ + struct xr_usb_serial_rb *rb = urb->context; + struct xr_usb_serial *xr_usb_serial = rb->instance; + unsigned long flags; + + dev_vdbg(&xr_usb_serial->data->dev, "%s - urb %d, len %d\n", __func__, + rb->index, urb->actual_length); + set_bit(rb->index, &xr_usb_serial->read_urbs_free); + + if (!xr_usb_serial->dev) { + dev_dbg(&xr_usb_serial->data->dev, "%s - disconnected\n", __func__); + return; + } + usb_mark_last_busy(xr_usb_serial->dev); + + if (urb->status) { + dev_dbg(&xr_usb_serial->data->dev, "%s - non-zero urb status: %d\n", + __func__, urb->status); + return; + } + xr_usb_serial_process_read_urb(xr_usb_serial, urb); + + /* throttle device if requested by tty */ + spin_lock_irqsave(&xr_usb_serial->read_lock, flags); + xr_usb_serial->throttled = xr_usb_serial->throttle_req; + if (!xr_usb_serial->throttled && !xr_usb_serial->susp_count) { + spin_unlock_irqrestore(&xr_usb_serial->read_lock, flags); + xr_usb_serial_submit_read_urb(xr_usb_serial, rb->index, GFP_ATOMIC); + } else { + spin_unlock_irqrestore(&xr_usb_serial->read_lock, flags); + } +} + +/* data interface wrote those outgoing bytes */ +static void xr_usb_serial_write_bulk(struct urb *urb) +{ + struct xr_usb_serial_wb *wb = urb->context; + struct xr_usb_serial *xr_usb_serial = wb->instance; + unsigned long flags; + + if (urb->status || (urb->actual_length != urb->transfer_buffer_length)) + dev_vdbg(&xr_usb_serial->data->dev, "%s - len %d/%d, status %d\n", + __func__, + urb->actual_length, + urb->transfer_buffer_length, + urb->status); + + spin_lock_irqsave(&xr_usb_serial->write_lock, flags); + xr_usb_serial_write_done(xr_usb_serial, wb); + spin_unlock_irqrestore(&xr_usb_serial->write_lock, flags); + schedule_work(&xr_usb_serial->work); +} + +static void xr_usb_serial_softint(struct work_struct *work) +{ + struct xr_usb_serial *xr_usb_serial = container_of(work, struct xr_usb_serial, work); + struct tty_struct *tty; + + dev_vdbg(&xr_usb_serial->data->dev, "%s\n", __func__); +#if LINUX_VERSION_CODE > KERNEL_VERSION(3, 9, 0) + tty_port_tty_wakeup(&xr_usb_serial->port); +#else + tty = tty_port_tty_get(&xr_usb_serial->port); + if (!tty) + return; + tty_wakeup(tty); + tty_kref_put(tty); +#endif +} + +/* + * TTY handlers + */ + +static int xr_usb_serial_tty_install(struct tty_driver *driver, struct tty_struct *tty) +{ + struct xr_usb_serial *xr_usb_serial; + int retval; + + dev_dbg(tty->dev, "%s\n", __func__); + + xr_usb_serial = xr_usb_serial_get_by_index(tty->index); + if (!xr_usb_serial) + return -ENODEV; + + retval = tty_standard_install(driver, tty); + if (retval) + goto error_init_termios; + + tty->driver_data = xr_usb_serial; + + return 0; + +error_init_termios: + tty_port_put(&xr_usb_serial->port); + return retval; +} + +static int xr_usb_serial_tty_open(struct tty_struct *tty, struct file *filp) +{ + struct xr_usb_serial *xr_usb_serial = tty->driver_data; + + dev_dbg(tty->dev, "%s\n", __func__); + + return tty_port_open(&xr_usb_serial->port, tty, filp); +} + +static int xr_usb_serial_port_activate(struct tty_port *port, struct tty_struct *tty) +{ + struct xr_usb_serial *xr_usb_serial = container_of(port, struct xr_usb_serial, port); + int retval = -ENODEV; + + dev_dbg(&xr_usb_serial->control->dev, "%s\n", __func__); + + mutex_lock(&xr_usb_serial->mutex); + if (xr_usb_serial->disconnected) + goto disconnected; + + retval = usb_autopm_get_interface(xr_usb_serial->control); + if (retval) + goto error_get_interface; + + /* + * FIXME: Why do we need this? Allocating 64K of physically contiguous + * memory is really nasty... + */ + set_bit(TTY_NO_WRITE_SPLIT, &tty->flags); + xr_usb_serial->control->needs_remote_wakeup = 1; + + xr_usb_serial->ctrlurb->dev = xr_usb_serial->dev; + if (usb_submit_urb(xr_usb_serial->ctrlurb, GFP_KERNEL)) { + dev_err(&xr_usb_serial->control->dev, + "%s - usb_submit_urb(ctrl irq) failed\n", __func__); + goto error_submit_urb; + } + + xr_usb_serial->ctrlout = XR_USB_SERIAL_CTRL_DTR | XR_USB_SERIAL_CTRL_RTS; + if (xr_usb_serial_set_control(xr_usb_serial, xr_usb_serial->ctrlout) < 0 && + (xr_usb_serial->ctrl_caps & USB_CDC_CAP_LINE)) + goto error_set_control; + + usb_autopm_put_interface(xr_usb_serial->control); + + /* + * Unthrottle device in case the TTY was closed while throttled. + */ + spin_lock_irq(&xr_usb_serial->read_lock); + xr_usb_serial->throttled = 0; + xr_usb_serial->throttle_req = 0; + spin_unlock_irq(&xr_usb_serial->read_lock); + + if (xr_usb_serial_submit_read_urbs(xr_usb_serial, GFP_KERNEL)) + goto error_submit_read_urbs; + + mutex_unlock(&xr_usb_serial->mutex); + + return 0; + +error_submit_read_urbs: + xr_usb_serial->ctrlout = 0; + xr_usb_serial_set_control(xr_usb_serial, xr_usb_serial->ctrlout); +error_set_control: + usb_kill_urb(xr_usb_serial->ctrlurb); +error_submit_urb: + usb_autopm_put_interface(xr_usb_serial->control); +error_get_interface: +disconnected: + mutex_unlock(&xr_usb_serial->mutex); + return retval; +} + +static void xr_usb_serial_port_destruct(struct tty_port *port) +{ + struct xr_usb_serial *xr_usb_serial = container_of(port, struct xr_usb_serial, port); + + dev_dbg(&xr_usb_serial->control->dev, "%s\n", __func__); + #if LINUX_VERSION_CODE < KERNEL_VERSION(3, 7, 0) + tty_unregister_device(xr_usb_serial_tty_driver, xr_usb_serial->minor); + #endif + xr_usb_serial_release_minor(xr_usb_serial); + usb_put_intf(xr_usb_serial->control); + kfree(xr_usb_serial->country_codes); + kfree(xr_usb_serial); +} + +static void xr_usb_serial_port_shutdown(struct tty_port *port) +{ + struct xr_usb_serial *xr_usb_serial = container_of(port, struct xr_usb_serial, port); + int i; + + dev_dbg(&xr_usb_serial->control->dev, "%s\n", __func__); + + mutex_lock(&xr_usb_serial->mutex); + if (!xr_usb_serial->disconnected) { + usb_autopm_get_interface(xr_usb_serial->control); + xr_usb_serial_set_control(xr_usb_serial, xr_usb_serial->ctrlout = 0); + usb_kill_urb(xr_usb_serial->ctrlurb); + for (i = 0; i < XR_USB_SERIAL_NW; i++) + usb_kill_urb(xr_usb_serial->wb[i].urb); + for (i = 0; i < xr_usb_serial->rx_buflimit; i++) + usb_kill_urb(xr_usb_serial->read_urbs[i]); + xr_usb_serial->control->needs_remote_wakeup = 0; + usb_autopm_put_interface(xr_usb_serial->control); + } + mutex_unlock(&xr_usb_serial->mutex); +} + +static void xr_usb_serial_tty_cleanup(struct tty_struct *tty) +{ + struct xr_usb_serial *xr_usb_serial = tty->driver_data; + dev_dbg(&xr_usb_serial->control->dev, "%s\n", __func__); + tty_port_put(&xr_usb_serial->port); +} + +static void xr_usb_serial_tty_hangup(struct tty_struct *tty) +{ + struct xr_usb_serial *xr_usb_serial = tty->driver_data; + dev_dbg(&xr_usb_serial->control->dev, "%s\n", __func__); + tty_port_hangup(&xr_usb_serial->port); +} + +static void xr_usb_serial_tty_close(struct tty_struct *tty, struct file *filp) +{ + struct xr_usb_serial *xr_usb_serial = tty->driver_data; + dev_dbg(&xr_usb_serial->control->dev, "%s\n", __func__); + tty_port_close(&xr_usb_serial->port, tty, filp); +} + +static int xr_usb_serial_tty_write(struct tty_struct *tty, + const unsigned char *buf, int count) +{ + struct xr_usb_serial *xr_usb_serial = tty->driver_data; + int stat; + unsigned long flags; + int wbn; + struct xr_usb_serial_wb *wb; + + if (!count) + return 0; + + dev_vdbg(&xr_usb_serial->data->dev, "%s - count %d\n", __func__, count); + + spin_lock_irqsave(&xr_usb_serial->write_lock, flags); + wbn = xr_usb_serial_wb_alloc(xr_usb_serial); + if (wbn < 0) { + spin_unlock_irqrestore(&xr_usb_serial->write_lock, flags); + return 0; + } + wb = &xr_usb_serial->wb[wbn]; + + if (!xr_usb_serial->dev) { + wb->use = 0; + spin_unlock_irqrestore(&xr_usb_serial->write_lock, flags); + return -ENODEV; + } + + count = (count > xr_usb_serial->writesize) ? xr_usb_serial->writesize : count; + dev_vdbg(&xr_usb_serial->data->dev, "%s - write %d\n", __func__, count); + memcpy(wb->buf, buf, count); + wb->len = count; + + usb_autopm_get_interface_async(xr_usb_serial->control); + if (xr_usb_serial->susp_count) { + if (!xr_usb_serial->delayed_wb) + xr_usb_serial->delayed_wb = wb; + else + usb_autopm_put_interface_async(xr_usb_serial->control); + spin_unlock_irqrestore(&xr_usb_serial->write_lock, flags); + return count; /* A white lie */ + } + usb_mark_last_busy(xr_usb_serial->dev); + + stat = xr_usb_serial_start_wb(xr_usb_serial, wb); + spin_unlock_irqrestore(&xr_usb_serial->write_lock, flags); + + if (stat < 0) + return stat; + return count; +} + +static int xr_usb_serial_tty_write_room(struct tty_struct *tty) +{ + struct xr_usb_serial *xr_usb_serial = tty->driver_data; + /* + * Do not let the line discipline to know that we have a reserve, + * or it might get too enthusiastic. + */ + return xr_usb_serial_wb_is_avail(xr_usb_serial) ? xr_usb_serial->writesize : 0; +} + +static int xr_usb_serial_tty_chars_in_buffer(struct tty_struct *tty) +{ + struct xr_usb_serial *xr_usb_serial = tty->driver_data; + /* + * if the device was unplugged then any remaining characters fell out + * of the connector ;) + */ + if (xr_usb_serial->disconnected) + return 0; + /* + * This is inaccurate (overcounts), but it works. + */ + return (XR_USB_SERIAL_NW - xr_usb_serial_wb_is_avail(xr_usb_serial)) * xr_usb_serial->writesize; +} + +static void xr_usb_serial_tty_throttle(struct tty_struct *tty) +{ + struct xr_usb_serial *xr_usb_serial = tty->driver_data; + + spin_lock_irq(&xr_usb_serial->read_lock); + xr_usb_serial->throttle_req = 1; + spin_unlock_irq(&xr_usb_serial->read_lock); +} + +static void xr_usb_serial_tty_unthrottle(struct tty_struct *tty) +{ + struct xr_usb_serial *xr_usb_serial = tty->driver_data; + unsigned int was_throttled; + + spin_lock_irq(&xr_usb_serial->read_lock); + was_throttled = xr_usb_serial->throttled; + xr_usb_serial->throttled = 0; + xr_usb_serial->throttle_req = 0; + spin_unlock_irq(&xr_usb_serial->read_lock); + + if (was_throttled) + xr_usb_serial_submit_read_urbs(xr_usb_serial, GFP_KERNEL); +} + +static int xr_usb_serial_tty_break_ctl(struct tty_struct *tty, int state) +{ + struct xr_usb_serial *xr_usb_serial = tty->driver_data; + int retval; + + retval = xr_usb_serial_send_break(xr_usb_serial, state ? 0xffff : 0); + if (retval < 0) + dev_dbg(&xr_usb_serial->control->dev, "%s - send break failed\n", + __func__); + return retval; +} + +static int xr_usb_serial_tty_tiocmget(struct tty_struct *tty) +{ + struct xr_usb_serial *xr_usb_serial = tty->driver_data; + dev_dbg(&xr_usb_serial->control->dev, "xr_usb_serial_tty_tiocmget\n"); + return xr_usb_serial_tiocmget(xr_usb_serial); + +} + +static int xr_usb_serial_tty_tiocmset(struct tty_struct *tty, + unsigned int set, unsigned int clear) +{ + struct xr_usb_serial *xr_usb_serial = tty->driver_data; + dev_dbg(&xr_usb_serial->control->dev, "xr_usb_serial_tty_tiocmset set=0x%x clear=0x%x\n",set,clear); + return xr_usb_serial_tiocmset(xr_usb_serial,set,clear); + +} + +static int get_serial_info(struct xr_usb_serial *xr_usb_serial, struct serial_struct __user *info) +{ + struct serial_struct tmp; + + if (!info) + return -EINVAL; + + memset(&tmp, 0, sizeof(tmp)); + tmp.flags = ASYNC_LOW_LATENCY; + tmp.xmit_fifo_size = xr_usb_serial->writesize; + tmp.baud_base = le32_to_cpu(xr_usb_serial->line.dwDTERate); + tmp.close_delay = xr_usb_serial->port.close_delay / 10; + tmp.closing_wait = xr_usb_serial->port.closing_wait == ASYNC_CLOSING_WAIT_NONE ? + ASYNC_CLOSING_WAIT_NONE : + xr_usb_serial->port.closing_wait / 10; + + if (copy_to_user(info, &tmp, sizeof(tmp))) + return -EFAULT; + else + return 0; +} + +static int set_serial_info(struct xr_usb_serial *xr_usb_serial, + struct serial_struct __user *newinfo) +{ + struct serial_struct new_serial; + unsigned int closing_wait, close_delay; + int retval = 0; + + if (copy_from_user(&new_serial, newinfo, sizeof(new_serial))) + return -EFAULT; + + close_delay = new_serial.close_delay * 10; + closing_wait = new_serial.closing_wait == ASYNC_CLOSING_WAIT_NONE ? + ASYNC_CLOSING_WAIT_NONE : new_serial.closing_wait * 10; + + mutex_lock(&xr_usb_serial->port.mutex); + + if (!capable(CAP_SYS_ADMIN)) { + if ((close_delay != xr_usb_serial->port.close_delay) || + (closing_wait != xr_usb_serial->port.closing_wait)) + retval = -EPERM; + else + retval = -EOPNOTSUPP; + } else { + xr_usb_serial->port.close_delay = close_delay; + xr_usb_serial->port.closing_wait = closing_wait; + } + + mutex_unlock(&xr_usb_serial->port.mutex); + return retval; +} + +static int xr_usb_serial_tty_ioctl(struct tty_struct *tty, + unsigned int cmd, unsigned long arg) +{ + struct xr_usb_serial *xr_usb_serial = tty->driver_data; + int rv = -ENOIOCTLCMD; + unsigned int channel, reg, val; + + short *data; + switch (cmd) { + case TIOCGSERIAL: /* gets serial port data */ + rv = get_serial_info(xr_usb_serial, (struct serial_struct __user *) arg); + break; + case TIOCSSERIAL: + rv = set_serial_info(xr_usb_serial, (struct serial_struct __user *) arg); + break; + case XR_USB_SERIAL_GET_REG: + if (get_user(channel, (int __user *)arg)) + return -EFAULT; + if (get_user(reg, (int __user *)(arg + sizeof(int)))) + return -EFAULT; + + data = kmalloc(2, GFP_KERNEL); + if (data == NULL) { + dev_err(&xr_usb_serial->control->dev, "%s - Cannot allocate USB buffer.\n", __func__); + return -ENOMEM; + } + + if (channel == -1) + { + rv = xr_usb_serial_get_reg(xr_usb_serial,reg, data); + } + else + { + rv = xr_usb_serial_get_reg_ext(xr_usb_serial,channel,reg, data); + } + if (rv != 1) { + dev_err(&xr_usb_serial->control->dev, "Cannot get register (%d)\n", rv); + kfree(data); + return -EFAULT; + } + if (put_user(le16_to_cpu(*data), (int __user *)(arg + 2 * sizeof(int)))) + { + dev_err(&xr_usb_serial->control->dev, "Cannot put user result\n"); + kfree(data); + return -EFAULT; + } + rv = 0; + kfree(data); + break; + + case XR_USB_SERIAL_SET_REG: + if (get_user(channel, (int __user *)arg)) + return -EFAULT; + if (get_user(reg, (int __user *)(arg + sizeof(int)))) + return -EFAULT; + if (get_user(val, (int __user *)(arg + 2 * sizeof(int)))) + return -EFAULT; + + if (channel == -1) + { + rv = xr_usb_serial_set_reg(xr_usb_serial,reg, val); + } + else + { + rv = xr_usb_serial_set_reg_ext(xr_usb_serial,channel,reg, val); + + } + if (rv < 0) + return -EFAULT; + rv = 0; + break; + case XR_USB_SERIAL_LOOPBACK: + if (get_user(channel, (int __user *)arg)) + return -EFAULT; + if (channel == -1) + channel = xr_usb_serial->channel; + rv = xr_usb_serial_set_loopback(xr_usb_serial,channel); + if (rv < 0) + return -EFAULT; + rv = 0; + break; + + } + + return rv; +} + +static void xr_usb_serial_tty_set_termios(struct tty_struct *tty, + struct ktermios *termios_old) +{ + struct xr_usb_serial *xr_usb_serial = tty->driver_data; +#if LINUX_VERSION_CODE < KERNEL_VERSION(3, 7, 0) + struct ktermios *termios = tty->termios; +#else + struct ktermios *termios = &tty->termios; +#endif + unsigned int cflag = termios->c_cflag; + struct usb_cdc_line_coding newline; + int newctrl = xr_usb_serial->ctrlout; + xr_usb_serial_disable(xr_usb_serial); + newline.dwDTERate = cpu_to_le32(tty_get_baud_rate(tty)); + newline.bCharFormat = termios->c_cflag & CSTOPB ? 1 : 0; + newline.bParityType = termios->c_cflag & PARENB ? + (termios->c_cflag & PARODD ? 1 : 2) + + (termios->c_cflag & CMSPAR ? 2 : 0) : 0; + switch (termios->c_cflag & CSIZE) { + case CS5:/*using CS5 replace of the 9 bit data mode*/ + newline.bDataBits = 9; + break; + case CS6: + newline.bDataBits = 6; + break; + case CS7: + newline.bDataBits = 7; + break; + case CS8: + default: + newline.bDataBits = 8; + break; + } + /* FIXME: Needs to clear unsupported bits in the termios */ + xr_usb_serial->clocal = ((termios->c_cflag & CLOCAL) != 0); + + if (!newline.dwDTERate) { + newline.dwDTERate = xr_usb_serial->line.dwDTERate; + newctrl &= ~XR_USB_SERIAL_CTRL_DTR; + } else + newctrl |= XR_USB_SERIAL_CTRL_DTR; + + if (newctrl != xr_usb_serial->ctrlout) + xr_usb_serial_set_control(xr_usb_serial, xr_usb_serial->ctrlout = newctrl); + + xr_usb_serial_set_flow_mode(xr_usb_serial,tty,cflag);/*set the serial flow mode*/ + + if (memcmp(&xr_usb_serial->line, &newline, sizeof newline)) + { + memcpy(&xr_usb_serial->line, &newline, sizeof newline); + dev_dbg(&xr_usb_serial->control->dev, "%s - set line: %d %d %d %d\n", + __func__, + le32_to_cpu(newline.dwDTERate), + newline.bCharFormat, newline.bParityType, + newline.bDataBits); + xr_usb_serial_set_line(xr_usb_serial, &xr_usb_serial->line); + } + xr_usb_serial_enable(xr_usb_serial); +} + +static const struct tty_port_operations xr_usb_serial_port_ops = { + .shutdown = xr_usb_serial_port_shutdown, + .activate = xr_usb_serial_port_activate, + .destruct = xr_usb_serial_port_destruct, +}; + +/* + * USB probe and disconnect routines. + */ + +/* Little helpers: write/read buffers free */ +static void xr_usb_serial_write_buffers_free(struct xr_usb_serial *xr_usb_serial) +{ + int i; + struct xr_usb_serial_wb *wb; + struct usb_device *usb_dev = interface_to_usbdev(xr_usb_serial->control); + + for (wb = &xr_usb_serial->wb[0], i = 0; i < XR_USB_SERIAL_NW; i++, wb++) + usb_free_coherent(usb_dev, xr_usb_serial->writesize, wb->buf, wb->dmah); +} + +static void xr_usb_serial_read_buffers_free(struct xr_usb_serial *xr_usb_serial) +{ + struct usb_device *usb_dev = interface_to_usbdev(xr_usb_serial->control); + int i; + + for (i = 0; i < xr_usb_serial->rx_buflimit; i++) + usb_free_coherent(usb_dev, xr_usb_serial->readsize, + xr_usb_serial->read_buffers[i].base, xr_usb_serial->read_buffers[i].dma); +} + +/* Little helper: write buffers allocate */ +static int xr_usb_serial_write_buffers_alloc(struct xr_usb_serial *xr_usb_serial) +{ + int i; + struct xr_usb_serial_wb *wb; + + for (wb = &xr_usb_serial->wb[0], i = 0; i < XR_USB_SERIAL_NW; i++, wb++) { + wb->buf = usb_alloc_coherent(xr_usb_serial->dev, xr_usb_serial->writesize, GFP_KERNEL, + &wb->dmah); + if (!wb->buf) { + while (i != 0) { + --i; + --wb; + usb_free_coherent(xr_usb_serial->dev, xr_usb_serial->writesize, + wb->buf, wb->dmah); + } + return -ENOMEM; + } + } + return 0; +} + +static int xr_usb_serial_probe(struct usb_interface *intf, + const struct usb_device_id *id) +{ + struct usb_cdc_union_desc *union_header = NULL; + struct usb_cdc_country_functional_desc *cfd = NULL; + unsigned char *buffer = intf->altsetting->extra; + int buflen = intf->altsetting->extralen; + struct usb_interface *control_interface; + struct usb_interface *data_interface; + struct usb_endpoint_descriptor *epctrl = NULL; + struct usb_endpoint_descriptor *epread = NULL; + struct usb_endpoint_descriptor *epwrite = NULL; + struct usb_device *usb_dev = interface_to_usbdev(intf); + struct xr_usb_serial *xr_usb_serial; + int minor; + int ctrlsize, readsize; + u8 *buf; + u8 ac_management_function = 0; + u8 call_management_function = 0; + int call_interface_num = -1; + int data_interface_num = -1; + unsigned long quirks; + int num_rx_buf; + int i; + int combined_interfaces = 0; + struct device *tty_dev; + int rv = -ENOMEM; + + /* normal quirks */ + quirks = (unsigned long)id->driver_info; + + if (quirks == IGNORE_DEVICE) + return -ENODEV; + + num_rx_buf = (quirks == SINGLE_RX_URB) ? 1 : XR_USB_SERIAL_NR; + + dev_dbg(&intf->dev, "USB_device_id idVendor:%04x, idProduct %04x\n",id->idVendor,id->idProduct); + + /* handle quirks deadly to normal probing*/ + if (quirks == NO_UNION_NORMAL) { + data_interface = usb_ifnum_to_if(usb_dev, 1); + control_interface = usb_ifnum_to_if(usb_dev, 0); + goto skip_normal_probe; + } + + /* normal probing*/ + if (!buffer) { + dev_err(&intf->dev, "Weird descriptor references\n"); + return -EINVAL; + } + + if (!buflen) { + if (intf->cur_altsetting->endpoint && + intf->cur_altsetting->endpoint->extralen && + intf->cur_altsetting->endpoint->extra) { + dev_dbg(&intf->dev, + "Seeking extra descriptors on endpoint\n"); + buflen = intf->cur_altsetting->endpoint->extralen; + buffer = intf->cur_altsetting->endpoint->extra; + } else { + dev_err(&intf->dev, + "Zero length descriptor references\n"); + return -EINVAL; + } + } + + while (buflen > 0) { + if (buffer[1] != USB_DT_CS_INTERFACE) { + dev_err(&intf->dev, "skipping garbage\n"); + goto next_desc; + } + + switch (buffer[2]) { + case USB_CDC_UNION_TYPE: /* we've found it */ + if (union_header) { + dev_err(&intf->dev, "More than one " + "union descriptor, skipping ...\n"); + goto next_desc; + } + union_header = (struct usb_cdc_union_desc *)buffer; + break; + case USB_CDC_COUNTRY_TYPE: /* export through sysfs*/ + cfd = (struct usb_cdc_country_functional_desc *)buffer; + break; + case USB_CDC_HEADER_TYPE: /* maybe check version */ + break; /* for now we ignore it */ + case USB_CDC_ACM_TYPE: + ac_management_function = buffer[3]; + break; + case USB_CDC_CALL_MANAGEMENT_TYPE: + call_management_function = buffer[3]; + call_interface_num = buffer[4]; + if ((quirks & NOT_A_MODEM) == 0 && (call_management_function & 3) != 3) + dev_err(&intf->dev, "This device cannot do calls on its own. It is not a modem.\n"); + break; + default: + /* there are LOTS more CDC descriptors that + * could legitimately be found here. + */ + dev_dbg(&intf->dev, "Ignoring descriptor: " + "type %02x, length %d\n", + buffer[2], buffer[0]); + break; + } +next_desc: + buflen -= buffer[0]; + buffer += buffer[0]; + } + + if (!union_header) { + if (call_interface_num > 0) { + dev_dbg(&intf->dev, "No union descriptor, using call management descriptor\n"); + /* quirks for Droids MuIn LCD */ + if (quirks & NO_DATA_INTERFACE) + data_interface = usb_ifnum_to_if(usb_dev, 0); + else + data_interface = usb_ifnum_to_if(usb_dev, (data_interface_num = call_interface_num)); + control_interface = intf; + } else { + if (intf->cur_altsetting->desc.bNumEndpoints != 3) { + dev_dbg(&intf->dev,"No union descriptor, giving up\n"); + return -ENODEV; + } else { + dev_warn(&intf->dev,"No union descriptor, testing for castrated device\n"); + combined_interfaces = 1; + control_interface = data_interface = intf; + goto look_for_collapsed_interface; + } + } + } else { + control_interface = usb_ifnum_to_if(usb_dev, union_header->bMasterInterface0); + data_interface = usb_ifnum_to_if(usb_dev, (data_interface_num = union_header->bSlaveInterface0)); + if (!control_interface || !data_interface) { + dev_dbg(&intf->dev, "no interfaces\n"); + return -ENODEV; + } + } + + if (data_interface_num != call_interface_num) + dev_dbg(&intf->dev, "Separate call control interface. That is not fully supported.\n"); + + if (control_interface == data_interface) { + /* some broken devices designed for windows work this way */ + dev_warn(&intf->dev,"Control and data interfaces are not separated!\n"); + combined_interfaces = 1; + /* a popular other OS doesn't use it */ + quirks |= NO_CAP_LINE; + if (data_interface->cur_altsetting->desc.bNumEndpoints != 3) { + dev_err(&intf->dev, "This needs exactly 3 endpoints\n"); + return -EINVAL; + } +look_for_collapsed_interface: + for (i = 0; i < 3; i++) { + struct usb_endpoint_descriptor *ep; + ep = &data_interface->cur_altsetting->endpoint[i].desc; + + if (usb_endpoint_is_int_in(ep)) + epctrl = ep; + else if (usb_endpoint_is_bulk_out(ep)) + epwrite = ep; + else if (usb_endpoint_is_bulk_in(ep)) + epread = ep; + else + return -EINVAL; + } + if (!epctrl || !epread || !epwrite) + return -ENODEV; + else + goto made_compressed_probe; + } + +skip_normal_probe: + + /*workaround for switched interfaces */ + if (data_interface->cur_altsetting->desc.bInterfaceClass + != CDC_DATA_INTERFACE_TYPE) { + if (control_interface->cur_altsetting->desc.bInterfaceClass + == CDC_DATA_INTERFACE_TYPE) { + struct usb_interface *t; + dev_dbg(&intf->dev, + "Your device has switched interfaces.\n"); + t = control_interface; + control_interface = data_interface; + data_interface = t; + } else { + return -EINVAL; + } + } + + /* Accept probe requests only for the control interface */ + if (!combined_interfaces && intf != control_interface) + return -ENODEV; + + if (!combined_interfaces && usb_interface_claimed(data_interface)) { + /* valid in this context */ + dev_dbg(&intf->dev, "The data interface isn't available\n"); + return -EBUSY; + } + + + if (data_interface->cur_altsetting->desc.bNumEndpoints < 2 || + control_interface->cur_altsetting->desc.bNumEndpoints == 0) + return -EINVAL; + + epctrl = &control_interface->cur_altsetting->endpoint[0].desc; + epread = &data_interface->cur_altsetting->endpoint[0].desc; + epwrite = &data_interface->cur_altsetting->endpoint[1].desc; + + + /* workaround for switched endpoints */ + if (!usb_endpoint_dir_in(epread)) { + /* descriptors are swapped */ + struct usb_endpoint_descriptor *t; + dev_dbg(&intf->dev, + "The data interface has switched endpoints\n"); + t = epread; + epread = epwrite; + epwrite = t; + } +made_compressed_probe: + dev_dbg(&intf->dev, "interfaces are valid\n"); + + xr_usb_serial = kzalloc(sizeof(struct xr_usb_serial), GFP_KERNEL); + if (xr_usb_serial == NULL) { + dev_err(&intf->dev, "out of memory (xr_usb_serial kzalloc)\n"); + goto alloc_fail; + } + + minor = xr_usb_serial_alloc_minor(xr_usb_serial); + if (minor == XR_USB_SERIAL_TTY_MINORS) { + dev_err(&intf->dev, "no more free xr_usb_serial devices\n"); + kfree(xr_usb_serial); + return -ENODEV; + } + + ctrlsize = usb_endpoint_maxp(epctrl); + readsize = usb_endpoint_maxp(epread) * + (quirks == SINGLE_RX_URB ? 1 : 2); + xr_usb_serial->combined_interfaces = combined_interfaces; + xr_usb_serial->writesize = usb_endpoint_maxp(epwrite) * 20; + xr_usb_serial->control = control_interface; + xr_usb_serial->data = data_interface; + xr_usb_serial->minor = minor; + xr_usb_serial->dev = usb_dev; + xr_usb_serial->ctrl_caps = ac_management_function; + if (quirks & NO_CAP_LINE) + xr_usb_serial->ctrl_caps &= ~USB_CDC_CAP_LINE; + xr_usb_serial->ctrlsize = ctrlsize; + xr_usb_serial->readsize = readsize; + xr_usb_serial->rx_buflimit = num_rx_buf; + INIT_WORK(&xr_usb_serial->work, xr_usb_serial_softint); + spin_lock_init(&xr_usb_serial->write_lock); + spin_lock_init(&xr_usb_serial->read_lock); + mutex_init(&xr_usb_serial->mutex); + xr_usb_serial->rx_endpoint = usb_rcvbulkpipe(usb_dev, epread->bEndpointAddress); + xr_usb_serial->is_int_ep = usb_endpoint_xfer_int(epread); + if (xr_usb_serial->is_int_ep) + xr_usb_serial->bInterval = epread->bInterval; + tty_port_init(&xr_usb_serial->port); + xr_usb_serial->port.ops = &xr_usb_serial_port_ops; + xr_usb_serial->DeviceVendor = id->idVendor; + xr_usb_serial->DeviceProduct = id->idProduct; + #if 0 + if((xr_usb_serial->DeviceProduct&0xfff0) == 0x1410) + {//map the serial port A B C D to blocknum 0 1 2 3 for the xr21v141x device + xr_usb_serial->channel = epwrite->bEndpointAddress - 1; + } + else if((xr_usb_serial->DeviceProduct&0xfff0) == 0x1420) + {//map the serial port A B C D to blocknum 0 2 4 6 for the xr21B142x device + xr_usb_serial->channel = (epwrite->bEndpointAddress - 4)*2; + } + else + { + xr_usb_serial->channel = epwrite->bEndpointAddress; + } + #else + xr_usb_serial->channel = epwrite->bEndpointAddress; + dev_dbg(&intf->dev, "epwrite->bEndpointAddress =%d\n",epwrite->bEndpointAddress); + #endif + buf = usb_alloc_coherent(usb_dev, ctrlsize, GFP_KERNEL, &xr_usb_serial->ctrl_dma); + if (!buf) { + dev_err(&intf->dev, "out of memory (ctrl buffer alloc)\n"); + goto alloc_fail2; + } + xr_usb_serial->ctrl_buffer = buf; + + if (xr_usb_serial_write_buffers_alloc(xr_usb_serial) < 0) { + dev_err(&intf->dev, "out of memory (write buffer alloc)\n"); + goto alloc_fail4; + } + + xr_usb_serial->ctrlurb = usb_alloc_urb(0, GFP_KERNEL); + if (!xr_usb_serial->ctrlurb) { + dev_err(&intf->dev, "out of memory (ctrlurb kmalloc)\n"); + goto alloc_fail5; + } + for (i = 0; i < num_rx_buf; i++) { + struct xr_usb_serial_rb *rb = &(xr_usb_serial->read_buffers[i]); + struct urb *urb; + + rb->base = usb_alloc_coherent(xr_usb_serial->dev, readsize, GFP_KERNEL, + &rb->dma); + if (!rb->base) { + dev_err(&intf->dev, "out of memory " + "(read bufs usb_alloc_coherent)\n"); + goto alloc_fail6; + } + rb->index = i; + rb->instance = xr_usb_serial; + + urb = usb_alloc_urb(0, GFP_KERNEL); + if (!urb) { + dev_err(&intf->dev, + "out of memory (read urbs usb_alloc_urb)\n"); + goto alloc_fail6; + } + urb->transfer_flags |= URB_NO_TRANSFER_DMA_MAP; + urb->transfer_dma = rb->dma; + if (xr_usb_serial->is_int_ep) { + usb_fill_int_urb(urb, xr_usb_serial->dev, + xr_usb_serial->rx_endpoint, + rb->base, + xr_usb_serial->readsize, + xr_usb_serial_read_bulk_callback, rb, + xr_usb_serial->bInterval); + } else { + usb_fill_bulk_urb(urb, xr_usb_serial->dev, + xr_usb_serial->rx_endpoint, + rb->base, + xr_usb_serial->readsize, + xr_usb_serial_read_bulk_callback, rb); + } + + xr_usb_serial->read_urbs[i] = urb; + __set_bit(i, &xr_usb_serial->read_urbs_free); + } + for (i = 0; i < XR_USB_SERIAL_NW; i++) { + struct xr_usb_serial_wb *snd = &(xr_usb_serial->wb[i]); + + snd->urb = usb_alloc_urb(0, GFP_KERNEL); + if (snd->urb == NULL) { + dev_err(&intf->dev, + "out of memory (write urbs usb_alloc_urb)\n"); + goto alloc_fail7; + } + + if (usb_endpoint_xfer_int(epwrite)) + usb_fill_int_urb(snd->urb, usb_dev, +#if LINUX_VERSION_CODE < KERNEL_VERSION(3, 7, 0) + usb_sndbulkpipe(usb_dev, epwrite->bEndpointAddress), +#else + usb_sndintpipe(usb_dev, epwrite->bEndpointAddress), +#endif + NULL, xr_usb_serial->writesize, xr_usb_serial_write_bulk, snd, epwrite->bInterval); + else + usb_fill_bulk_urb(snd->urb, usb_dev, + usb_sndbulkpipe(usb_dev, epwrite->bEndpointAddress), + NULL, xr_usb_serial->writesize, xr_usb_serial_write_bulk, snd); + snd->urb->transfer_flags |= URB_NO_TRANSFER_DMA_MAP; + snd->instance = xr_usb_serial; + } + + usb_set_intfdata(intf, xr_usb_serial); + + xr_usb_serial->rs485_422_en = false; //default enable rs232 + i = device_create_file(&intf->dev, &dev_attr_bRS485_422_en); + if (i < 0) + goto alloc_fail7; + + i = device_create_file(&intf->dev, &dev_attr_bmCapabilities); + if (i < 0) + goto alloc_fail8; + + if (cfd) { /* export the country data */ + xr_usb_serial->country_codes = kmalloc(cfd->bLength - 4, GFP_KERNEL); + if (!xr_usb_serial->country_codes) + goto skip_countries; + xr_usb_serial->country_code_size = cfd->bLength - 4; + memcpy(xr_usb_serial->country_codes, (u8 *)&cfd->wCountyCode0, + cfd->bLength - 4); + xr_usb_serial->country_rel_date = cfd->iCountryCodeRelDate; + + i = device_create_file(&intf->dev, &dev_attr_wCountryCodes); + if (i < 0) { + kfree(xr_usb_serial->country_codes); + xr_usb_serial->country_codes = NULL; + xr_usb_serial->country_code_size = 0; + goto skip_countries; + } + + i = device_create_file(&intf->dev, + &dev_attr_iCountryCodeRelDate); + if (i < 0) { + device_remove_file(&intf->dev, &dev_attr_wCountryCodes); + kfree(xr_usb_serial->country_codes); + xr_usb_serial->country_codes = NULL; + xr_usb_serial->country_code_size = 0; + goto skip_countries; + } + } + +skip_countries: + usb_fill_int_urb(xr_usb_serial->ctrlurb, usb_dev, + usb_rcvintpipe(usb_dev, epctrl->bEndpointAddress), + xr_usb_serial->ctrl_buffer, ctrlsize, xr_usb_serial_ctrl_irq, xr_usb_serial, + /* works around buggy devices */ + epctrl->bInterval ? epctrl->bInterval : 0xff); + xr_usb_serial->ctrlurb->transfer_flags |= URB_NO_TRANSFER_DMA_MAP; + xr_usb_serial->ctrlurb->transfer_dma = xr_usb_serial->ctrl_dma; + + dev_info(&intf->dev, "ttyXR_USB_SERIAL%d: USB XR_USB_SERIAL device\n", minor); + + xr_usb_serial_pre_setup(xr_usb_serial); + + xr_usb_serial_set_control(xr_usb_serial, xr_usb_serial->ctrlout); + + xr_usb_serial->line.dwDTERate = cpu_to_le32(9600); + xr_usb_serial->line.bDataBits = 8; + xr_usb_serial_set_line(xr_usb_serial, &xr_usb_serial->line); + + usb_driver_claim_interface(&xr_usb_serial_driver, data_interface, xr_usb_serial); + usb_set_intfdata(data_interface, xr_usb_serial); + + usb_get_intf(control_interface); +#if LINUX_VERSION_CODE < KERNEL_VERSION(3, 7, 0) + tty_register_device(xr_usb_serial_tty_driver, minor, &control_interface->dev); +#else + tty_dev = tty_port_register_device(&xr_usb_serial->port, xr_usb_serial_tty_driver, minor, + &control_interface->dev); + if (IS_ERR(tty_dev)) { + rv = PTR_ERR(tty_dev); + goto alloc_fail9; + } +#endif + + return 0; +alloc_fail9: + if (xr_usb_serial->country_codes) { + device_remove_file(&xr_usb_serial->control->dev, + &dev_attr_wCountryCodes); + device_remove_file(&xr_usb_serial->control->dev, + &dev_attr_iCountryCodeRelDate); + } + device_remove_file(&xr_usb_serial->control->dev, &dev_attr_bmCapabilities); +alloc_fail8: + device_remove_file(&xr_usb_serial->control->dev, &dev_attr_bRS485_422_en); +alloc_fail7: + usb_set_intfdata(intf, NULL); + for (i = 0; i < XR_USB_SERIAL_NW; i++) + usb_free_urb(xr_usb_serial->wb[i].urb); +alloc_fail6: + for (i = 0; i < num_rx_buf; i++) + usb_free_urb(xr_usb_serial->read_urbs[i]); + xr_usb_serial_read_buffers_free(xr_usb_serial); + usb_free_urb(xr_usb_serial->ctrlurb); +alloc_fail5: + xr_usb_serial_write_buffers_free(xr_usb_serial); +alloc_fail4: + usb_free_coherent(usb_dev, ctrlsize, xr_usb_serial->ctrl_buffer, xr_usb_serial->ctrl_dma); +alloc_fail2: + xr_usb_serial_release_minor(xr_usb_serial); + kfree(xr_usb_serial); +alloc_fail: + return rv; +} + +static void stop_data_traffic(struct xr_usb_serial *xr_usb_serial) +{ + int i; + + dev_dbg(&xr_usb_serial->control->dev, "%s\n", __func__); + + usb_kill_urb(xr_usb_serial->ctrlurb); + for (i = 0; i < XR_USB_SERIAL_NW; i++) + usb_kill_urb(xr_usb_serial->wb[i].urb); + for (i = 0; i < xr_usb_serial->rx_buflimit; i++) + usb_kill_urb(xr_usb_serial->read_urbs[i]); + + cancel_work_sync(&xr_usb_serial->work); +} + +static void xr_usb_serial_disconnect(struct usb_interface *intf) +{ + struct xr_usb_serial *xr_usb_serial = usb_get_intfdata(intf); + struct usb_device *usb_dev = interface_to_usbdev(intf); + struct tty_struct *tty; + int i; + + dev_dbg(&intf->dev, "%s\n", __func__); + + /* sibling interface is already cleaning up */ + if (!xr_usb_serial) + return; + + mutex_lock(&xr_usb_serial->mutex); + xr_usb_serial->disconnected = true; + if (xr_usb_serial->country_codes) { + device_remove_file(&xr_usb_serial->control->dev, + &dev_attr_wCountryCodes); + device_remove_file(&xr_usb_serial->control->dev, + &dev_attr_iCountryCodeRelDate); + } + device_remove_file(&xr_usb_serial->control->dev, &dev_attr_bmCapabilities); + device_remove_file(&xr_usb_serial->control->dev, &dev_attr_bRS485_422_en); + usb_set_intfdata(xr_usb_serial->control, NULL); + usb_set_intfdata(xr_usb_serial->data, NULL); + mutex_unlock(&xr_usb_serial->mutex); + + tty = tty_port_tty_get(&xr_usb_serial->port); + if (tty) { + tty_vhangup(tty); + tty_kref_put(tty); + } + stop_data_traffic(xr_usb_serial); +#if LINUX_VERSION_CODE > KERNEL_VERSION(3, 7, 0) + tty_unregister_device(xr_usb_serial_tty_driver, xr_usb_serial->minor); +#endif + + usb_free_urb(xr_usb_serial->ctrlurb); + for (i = 0; i < XR_USB_SERIAL_NW; i++) + usb_free_urb(xr_usb_serial->wb[i].urb); + for (i = 0; i < xr_usb_serial->rx_buflimit; i++) + usb_free_urb(xr_usb_serial->read_urbs[i]); + xr_usb_serial_write_buffers_free(xr_usb_serial); + usb_free_coherent(usb_dev, xr_usb_serial->ctrlsize, xr_usb_serial->ctrl_buffer, xr_usb_serial->ctrl_dma); + xr_usb_serial_read_buffers_free(xr_usb_serial); + + if (!xr_usb_serial->combined_interfaces) + usb_driver_release_interface(&xr_usb_serial_driver, intf == xr_usb_serial->control ? + xr_usb_serial->data : xr_usb_serial->control); + + tty_port_put(&xr_usb_serial->port); +} + +#ifdef CONFIG_PM +static int xr_usb_serial_suspend(struct usb_interface *intf, pm_message_t message) +{ + struct xr_usb_serial *xr_usb_serial = usb_get_intfdata(intf); + int cnt; + + if (PMSG_IS_AUTO(message)) { + int b; + + spin_lock_irq(&xr_usb_serial->write_lock); + b = xr_usb_serial->transmitting; + spin_unlock_irq(&xr_usb_serial->write_lock); + if (b) + return -EBUSY; + } + + spin_lock_irq(&xr_usb_serial->read_lock); + spin_lock(&xr_usb_serial->write_lock); + cnt = xr_usb_serial->susp_count++; + spin_unlock(&xr_usb_serial->write_lock); + spin_unlock_irq(&xr_usb_serial->read_lock); + + if (cnt) + return 0; + + if (test_bit(ASYNCB_INITIALIZED, &xr_usb_serial->port.flags)) + stop_data_traffic(xr_usb_serial); + + return 0; +} + +static int xr_usb_serial_resume(struct usb_interface *intf) +{ + struct xr_usb_serial *xr_usb_serial = usb_get_intfdata(intf); + struct xr_usb_serial_wb *wb; + int rv = 0; + int cnt; + + spin_lock_irq(&xr_usb_serial->read_lock); + xr_usb_serial->susp_count -= 1; + cnt = xr_usb_serial->susp_count; + spin_unlock_irq(&xr_usb_serial->read_lock); + + if (cnt) + return 0; + + if (test_bit(ASYNCB_INITIALIZED, &xr_usb_serial->port.flags)) { + rv = usb_submit_urb(xr_usb_serial->ctrlurb, GFP_NOIO); + + spin_lock_irq(&xr_usb_serial->write_lock); + if (xr_usb_serial->delayed_wb) { + wb = xr_usb_serial->delayed_wb; + xr_usb_serial->delayed_wb = NULL; + spin_unlock_irq(&xr_usb_serial->write_lock); + xr_usb_serial_start_wb(xr_usb_serial, wb); + } else { + spin_unlock_irq(&xr_usb_serial->write_lock); + } + + /* + * delayed error checking because we must + * do the write path at all cost + */ + if (rv < 0) + goto err_out; + + rv = xr_usb_serial_submit_read_urbs(xr_usb_serial, GFP_NOIO); + } + +err_out: + return rv; +} + +static int xr_usb_serial_reset_resume(struct usb_interface *intf) +{ + struct xr_usb_serial *xr_usb_serial = usb_get_intfdata(intf); + struct tty_struct *tty; + if (test_bit(ASYNCB_INITIALIZED, &xr_usb_serial->port.flags)){ +#if LINUX_VERSION_CODE > KERNEL_VERSION(3, 9, 0) + tty_port_tty_hangup(&xr_usb_serial->port, false); +#else + tty = tty_port_tty_get(&xr_usb_serial->port); + if (tty) { + tty_hangup(tty); + tty_kref_put(tty); + } +#endif + } + return xr_usb_serial_resume(intf); +} + +#endif /* CONFIG_PM */ + +/* + * USB driver structure. + */ +static const struct usb_device_id xr_usb_serial_ids[] = { + { USB_DEVICE(0x04e2, 0x1410)}, + { USB_DEVICE(0x04e2, 0x1411)}, + { USB_DEVICE(0x04e2, 0x1412)}, + { USB_DEVICE(0x04e2, 0x1414)}, + { USB_DEVICE(0x04e2, 0x1420)}, + { USB_DEVICE(0x04e2, 0x1421)}, + { USB_DEVICE(0x04e2, 0x1422)}, + { USB_DEVICE(0x04e2, 0x1424)}, + { USB_DEVICE(0x04e2, 0x1400)}, + { USB_DEVICE(0x04e2, 0x1401)}, + { USB_DEVICE(0x04e2, 0x1402)}, + { USB_DEVICE(0x04e2, 0x1403)}, + { } +}; + +MODULE_DEVICE_TABLE(usb, xr_usb_serial_ids); + +static struct usb_driver xr_usb_serial_driver = { + .name = "cdc_xr_usb_serial", + .probe = xr_usb_serial_probe, + .disconnect = xr_usb_serial_disconnect, +#ifdef CONFIG_PM + .suspend = xr_usb_serial_suspend, + .resume = xr_usb_serial_resume, + .reset_resume = xr_usb_serial_reset_resume, +#endif + .id_table = xr_usb_serial_ids, +#ifdef CONFIG_PM + .supports_autosuspend = 1, +#endif + .disable_hub_initiated_lpm = 1, +}; + +/* + * TTY driver structures. + */ + +static const struct tty_operations xr_usb_serial_ops = { + .install = xr_usb_serial_tty_install, + .open = xr_usb_serial_tty_open, + .close = xr_usb_serial_tty_close, + .cleanup = xr_usb_serial_tty_cleanup, + .hangup = xr_usb_serial_tty_hangup, + .write = xr_usb_serial_tty_write, + .write_room = xr_usb_serial_tty_write_room, + .ioctl = xr_usb_serial_tty_ioctl, + .throttle = xr_usb_serial_tty_throttle, + .unthrottle = xr_usb_serial_tty_unthrottle, + .chars_in_buffer = xr_usb_serial_tty_chars_in_buffer, + .break_ctl = xr_usb_serial_tty_break_ctl, + .set_termios = xr_usb_serial_tty_set_termios, + .tiocmget = xr_usb_serial_tty_tiocmget, + .tiocmset = xr_usb_serial_tty_tiocmset, +}; + +/* + * Init / exit. + */ + +static int __init xr_usb_serial_init(void) +{ + int retval; + xr_usb_serial_tty_driver = alloc_tty_driver(XR_USB_SERIAL_TTY_MINORS); + if (!xr_usb_serial_tty_driver) + return -ENOMEM; + xr_usb_serial_tty_driver->driver_name = "xr_usb_serial", + xr_usb_serial_tty_driver->name = "ttyXRUSB", + xr_usb_serial_tty_driver->major = XR_USB_SERIAL_TTY_MAJOR, + xr_usb_serial_tty_driver->minor_start = 0, + xr_usb_serial_tty_driver->type = TTY_DRIVER_TYPE_SERIAL, + xr_usb_serial_tty_driver->subtype = SERIAL_TYPE_NORMAL, + xr_usb_serial_tty_driver->flags = TTY_DRIVER_REAL_RAW | TTY_DRIVER_DYNAMIC_DEV; + xr_usb_serial_tty_driver->init_termios = tty_std_termios; + xr_usb_serial_tty_driver->init_termios.c_cflag = B9600 | CS8 | CREAD | + HUPCL | CLOCAL; + tty_set_operations(xr_usb_serial_tty_driver, &xr_usb_serial_ops); + + retval = tty_register_driver(xr_usb_serial_tty_driver); + if (retval) { + put_tty_driver(xr_usb_serial_tty_driver); + return retval; + } + + retval = usb_register(&xr_usb_serial_driver); + if (retval) { + tty_unregister_driver(xr_usb_serial_tty_driver); + put_tty_driver(xr_usb_serial_tty_driver); + return retval; + } + + printk(KERN_INFO KBUILD_MODNAME ": " DRIVER_DESC "\n"); + + return 0; +} + +static void __exit xr_usb_serial_exit(void) +{ + usb_deregister(&xr_usb_serial_driver); + tty_unregister_driver(xr_usb_serial_tty_driver); + put_tty_driver(xr_usb_serial_tty_driver); +} + +module_init(xr_usb_serial_init); +module_exit(xr_usb_serial_exit); + +MODULE_AUTHOR(DRIVER_AUTHOR); +MODULE_DESCRIPTION(DRIVER_DESC); +MODULE_LICENSE("GPL"); +MODULE_ALIAS_CHARDEV_MAJOR(XR_USB_SERIAL_TTY_MAJOR); --- linux-azure-5.8-5.8.0.orig/ubuntu/xr-usb-serial/xr_usb_serial_common.h +++ linux-azure-5.8-5.8.0/ubuntu/xr-usb-serial/xr_usb_serial_common.h @@ -0,0 +1,187 @@ +/* + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; either version 2 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA + */ + +/* + * CMSPAR, some architectures can't have space and mark parity. + */ + +#ifndef CMSPAR +#define CMSPAR 0 +#endif + +/* + * Major and minor numbers. + */ + +#define XR_USB_SERIAL_TTY_MAJOR 266 +#define XR_USB_SERIAL_TTY_MINORS 32 + +/* + * Requests. + */ + +#define USB_RT_XR_USB_SERIAL (USB_TYPE_CLASS | USB_RECIP_INTERFACE) + +/* + * Output control lines. + */ + +#define XR_USB_SERIAL_CTRL_DTR 0x01 +#define XR_USB_SERIAL_CTRL_RTS 0x02 + +/* + * Input control lines and line errors. + */ + +#define XR_USB_SERIAL_CTRL_DCD 0x01 +#define XR_USB_SERIAL_CTRL_DSR 0x02 +#define XR_USB_SERIAL_CTRL_BRK 0x04 +#define XR_USB_SERIAL_CTRL_RI 0x08 + +#define XR_USB_SERIAL_CTRL_FRAMING 0x10 +#define XR_USB_SERIAL_CTRL_PARITY 0x20 +#define XR_USB_SERIAL_CTRL_OVERRUN 0x40 + +/* + * Internal driver structures. + */ + +/* + * The only reason to have several buffers is to accommodate assumptions + * in line disciplines. They ask for empty space amount, receive our URB size, + * and proceed to issue several 1-character writes, assuming they will fit. + * The very first write takes a complete URB. Fortunately, this only happens + * when processing onlcr, so we only need 2 buffers. These values must be + * powers of 2. + */ +#define XR_USB_SERIAL_NW 16 +#define XR_USB_SERIAL_NR 16 + +struct xr_usb_serial_wb { + unsigned char *buf; + dma_addr_t dmah; + int len; + int use; + struct urb *urb; + struct xr_usb_serial *instance; +}; + +struct xr_usb_serial_rb { + int size; + unsigned char *base; + dma_addr_t dma; + int index; + struct xr_usb_serial *instance; +}; + +struct reg_addr_map { + unsigned int uart_enable_addr; + unsigned int uart_format_addr; + unsigned int uart_flow_addr; + unsigned int uart_loopback_addr; + unsigned int uart_xon_char_addr; + unsigned int uart_xoff_char_addr; + unsigned int uart_gpio_mode_addr; + unsigned int uart_gpio_dir_addr; + unsigned int uart_gpio_set_addr; + unsigned int uart_gpio_clr_addr; + unsigned int uart_gpio_status_addr; + unsigned int tx_break_addr; + unsigned int uart_custom_driver; + unsigned int uart_low_latency; +}; + +struct xr_usb_serial { + struct usb_device *dev; /* the corresponding usb device */ + struct usb_interface *control; /* control interface */ + struct usb_interface *data; /* data interface */ + struct tty_port port; /* our tty port data */ + struct urb *ctrlurb; /* urbs */ + u8 *ctrl_buffer; /* buffers of urbs */ + dma_addr_t ctrl_dma; /* dma handles of buffers */ + u8 *country_codes; /* country codes from device */ + unsigned int country_code_size; /* size of this buffer */ + unsigned int country_rel_date; /* release date of version */ + struct xr_usb_serial_wb wb[XR_USB_SERIAL_NW]; + unsigned long read_urbs_free; + struct urb *read_urbs[XR_USB_SERIAL_NR]; + struct xr_usb_serial_rb read_buffers[XR_USB_SERIAL_NR]; + int rx_buflimit; + int rx_endpoint; + spinlock_t read_lock; + int write_used; /* number of non-empty write buffers */ + int transmitting; + spinlock_t write_lock; + struct mutex mutex; + bool disconnected; + struct usb_cdc_line_coding line; /* bits, stop, parity */ + struct work_struct work; /* work queue entry for line discipline waking up */ + unsigned int ctrlin; /* input control lines (DCD, DSR, RI, break, overruns) */ + unsigned int ctrlout; /* output control lines (DTR, RTS) */ + unsigned int writesize; /* max packet size for the output bulk endpoint */ + unsigned int readsize,ctrlsize; /* buffer sizes for freeing */ + unsigned int minor; /* xr_usb_serial minor number */ + unsigned char clocal; /* termios CLOCAL */ + unsigned int ctrl_caps; /* control capabilities from the class specific header */ + unsigned int susp_count; /* number of suspended interfaces */ + unsigned int combined_interfaces:1; /* control and data collapsed */ + unsigned int is_int_ep:1; /* interrupt endpoints contrary to spec used */ + unsigned int throttled:1; /* actually throttled */ + unsigned int throttle_req:1; /* throttle requested */ + u8 bInterval; + struct xr_usb_serial_wb *delayed_wb; /* write queued for a device about to be woken */ + unsigned int channel; + unsigned short DeviceVendor; + unsigned short DeviceProduct; + struct reg_addr_map reg_map; + bool rs485_422_en; +}; + +#define CDC_DATA_INTERFACE_TYPE 0x0a + +/* constants describing various quirks and errors */ +#define NO_UNION_NORMAL 1 +#define SINGLE_RX_URB 2 +#define NO_CAP_LINE 4 +#define NOT_A_MODEM 8 +#define NO_DATA_INTERFACE 16 +#define IGNORE_DEVICE 32 + + +#define UART_ENABLE_TX 1 +#define UART_ENABLE_RX 2 + +#define UART_GPIO_CLR_DTR 0x8 +#define UART_GPIO_SET_DTR 0x8 +#define UART_GPIO_CLR_RTS 0x20 +#define UART_GPIO_SET_RTS 0x20 + +#define LOOPBACK_ENABLE_TX_RX 1 +#define LOOPBACK_ENABLE_RTS_CTS 2 +#define LOOPBACK_ENABLE_DTR_DSR 4 + +#define UART_FLOW_MODE_NONE 0x0 +#define UART_FLOW_MODE_HW 0x1 +#define UART_FLOW_MODE_SW 0x2 + +#define UART_GPIO_MODE_SEL_GPIO 0x0 +#define UART_GPIO_MODE_SEL_RTS_CTS 0x1 + +#define XR2280x_FUNC_MGR_OFFSET 0x40 + + + + --- linux-azure-5.8-5.8.0.orig/ubuntu/xr-usb-serial/xr_usb_serial_hal.c +++ linux-azure-5.8-5.8.0/ubuntu/xr-usb-serial/xr_usb_serial_hal.c @@ -0,0 +1,724 @@ +/* + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; either version 2 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA + */ + +#define XR_SET_MAP_XR2280X 5 +#define XR_GET_MAP_XR2280X 5 + +#define XR_SET_MAP_XR21B142X 0 +#define XR_GET_MAP_XR21B142X 0 + +#define XR_SET_MAP_XR21V141X 0 +#define XR_GET_MAP_XR21V141X 1 + +#define XR_SET_MAP_XR21B1411 0 +#define XR_GET_MAP_XR21B1411 1 + + +int xr_usb_serial_set_reg(struct xr_usb_serial *xr_usb_serial,int regnum, int value) +{ + int result; + int channel = 0; + dev_dbg(&xr_usb_serial->control->dev, "%s Channel:%d 0x%02x = 0x%02x\n", __func__,channel,regnum, value); + if((xr_usb_serial->DeviceProduct&0xfff0) == 0x1400) + { + int XR2280xaddr = XR2280x_FUNC_MGR_OFFSET + regnum; + result = usb_control_msg(xr_usb_serial->dev, /* usb device */ + usb_sndctrlpipe(xr_usb_serial->dev, 0), /* endpoint pipe */ + XR_SET_MAP_XR2280X, /* request */ + USB_DIR_OUT | USB_TYPE_VENDOR, /* request_type */ + value, /* request value */ + XR2280xaddr, /* index */ + NULL, /* data */ + 0, /* size */ + 5000); /* timeout */ + + } + else if((xr_usb_serial->DeviceProduct == 0x1410) || + (xr_usb_serial->DeviceProduct == 0x1412) || + (xr_usb_serial->DeviceProduct == 0x1414)) + { + + if(xr_usb_serial->channel) + channel = xr_usb_serial->channel - 1; + result = usb_control_msg(xr_usb_serial->dev, /* usb device */ + usb_sndctrlpipe(xr_usb_serial->dev, 0), /* endpoint pipe */ + XR_SET_MAP_XR21V141X, /* request */ + USB_DIR_OUT | USB_TYPE_VENDOR, /* request_type */ + value, /* request value */ + regnum | (channel << 8), /* index */ + NULL, /* data */ + 0, /* size */ + 5000); /* timeout */ + } + else if(xr_usb_serial->DeviceProduct == 0x1411) + { + result = usb_control_msg(xr_usb_serial->dev, /* usb device */ + usb_sndctrlpipe(xr_usb_serial->dev, 0), /* endpoint pipe */ + XR_SET_MAP_XR21B1411, /* request */ + USB_DIR_OUT | USB_TYPE_VENDOR , /* request_type */ + value, /* request value */ + regnum , /* index */ + NULL, /* data */ + 0, /* size */ + 5000); /* timeout */ + } + else if((xr_usb_serial->DeviceProduct == 0x1420)|| + (xr_usb_serial->DeviceProduct == 0x1422)|| + (xr_usb_serial->DeviceProduct == 0x1424)) + + { + + channel = (xr_usb_serial->channel - 4)*2; + result = usb_control_msg(xr_usb_serial->dev, /* usb device */ + usb_sndctrlpipe(xr_usb_serial->dev, 0), /* endpoint pipe */ + XR_SET_MAP_XR21B142X, /* request */ + USB_DIR_OUT | USB_TYPE_VENDOR | 1, /* request_type */ + value, /* request value */ + regnum | (channel << 8), /* index */ + NULL, /* data */ + 0, /* size */ + 5000); /* timeout */ + } + else + { + result = -1; + } + if(result < 0) + dev_dbg(&xr_usb_serial->control->dev, "%s Error:%d\n", __func__,result); + return result; + + +} +int xr_usb_serial_set_reg_ext(struct xr_usb_serial *xr_usb_serial,int channel,int regnum, int value) +{ + int result; + int XR2280xaddr = XR2280x_FUNC_MGR_OFFSET + regnum; + dev_dbg(&xr_usb_serial->control->dev, "%s channel:%d 0x%02x = 0x%02x\n", __func__,channel,regnum, value); + if((xr_usb_serial->DeviceProduct&0xfff0) == 0x1400) + { + result = usb_control_msg(xr_usb_serial->dev, /* usb device */ + usb_sndctrlpipe(xr_usb_serial->dev, 0), /* endpoint pipe */ + XR_SET_MAP_XR2280X, /* request */ + USB_DIR_OUT | USB_TYPE_VENDOR, /* request_type */ + value, /* request value */ + XR2280xaddr, /* index */ + NULL, /* data */ + 0, /* size */ + 5000); /* timeout */ + + } + else if((xr_usb_serial->DeviceProduct == 0x1410) || + (xr_usb_serial->DeviceProduct == 0x1412) || + (xr_usb_serial->DeviceProduct == 0x1414)) + { + result = usb_control_msg(xr_usb_serial->dev, /* usb device */ + usb_sndctrlpipe(xr_usb_serial->dev, 0), /* endpoint pipe */ + XR_SET_MAP_XR21V141X, /* request */ + USB_DIR_OUT | USB_TYPE_VENDOR, /* request_type */ + value, /* request value */ + regnum | (channel << 8), /* index */ + NULL, /* data */ + 0, /* size */ + 5000); /* timeout */ + } + else if(xr_usb_serial->DeviceProduct == 0x1411) + { + result = usb_control_msg(xr_usb_serial->dev, /* usb device */ + usb_sndctrlpipe(xr_usb_serial->dev, 0), /* endpoint pipe */ + XR_SET_MAP_XR21B1411, /* request */ + USB_DIR_OUT | USB_TYPE_VENDOR , /* request_type */ + value, /* request value */ + regnum , /* index */ + NULL, /* data */ + 0, /* size */ + 5000); /* timeout */ + } + else if((xr_usb_serial->DeviceProduct == 0x1420)|| + (xr_usb_serial->DeviceProduct == 0x1422)|| + (xr_usb_serial->DeviceProduct == 0x1424)) + { + result = usb_control_msg(xr_usb_serial->dev, /* usb device */ + usb_sndctrlpipe(xr_usb_serial->dev, 0), /* endpoint pipe */ + XR_SET_MAP_XR21B142X, /* request */ + USB_DIR_OUT | USB_TYPE_VENDOR | 1, /* request_type */ + value, /* request value */ + regnum | (channel << 8), /* index */ + NULL, /* data */ + 0, /* size */ + 5000); /* timeout */ + } + else + { + result = -1; + } + if(result < 0) + dev_dbg(&xr_usb_serial->control->dev, "%s Error:%d\n", __func__,result); + return result; + + +} + +int xr_usb_serial_get_reg(struct xr_usb_serial *xr_usb_serial,int regnum, short *value) +{ + int result; + int channel = 0; + + if((xr_usb_serial->DeviceProduct&0xfff0) == 0x1400) + { + int XR2280xaddr = XR2280x_FUNC_MGR_OFFSET + regnum; + result = usb_control_msg(xr_usb_serial->dev, /* usb device */ + usb_rcvctrlpipe(xr_usb_serial->dev, 0), /* endpoint pipe */ + XR_GET_MAP_XR2280X, /* request */ + USB_DIR_IN | USB_TYPE_VENDOR , /* request_type */ + 0, /* request value */ + XR2280xaddr, /* index */ + value, /* data */ + 2, /* size */ + 5000); /* timeout */ + + + + } + else if((xr_usb_serial->DeviceProduct == 0x1410) || + (xr_usb_serial->DeviceProduct == 0x1412) || + (xr_usb_serial->DeviceProduct == 0x1414)) + { + if(xr_usb_serial->channel) + channel = xr_usb_serial->channel -1; + result = usb_control_msg(xr_usb_serial->dev, /* usb device */ + usb_rcvctrlpipe(xr_usb_serial->dev, 0), /* endpoint pipe */ + XR_GET_MAP_XR21V141X, /* request */ + USB_DIR_IN | USB_TYPE_VENDOR, /* request_type */ + 0, /* request value */ + regnum | (channel << 8), /* index */ + value, /* data */ + 1, /* size */ + 5000); /* timeout */ + } + else if(xr_usb_serial->DeviceProduct == 0x1411) + { + result = usb_control_msg(xr_usb_serial->dev, /* usb device */ + usb_rcvctrlpipe(xr_usb_serial->dev, 0), /* endpoint pipe */ + XR_GET_MAP_XR21B1411, /* request */ + USB_DIR_IN | USB_TYPE_VENDOR, /* request_type */ + 0, /* request value */ + regnum, /* index */ + value, /* data */ + 2, /* size */ + 5000); /* timeout */ + } + else if((xr_usb_serial->DeviceProduct == 0x1420)|| + (xr_usb_serial->DeviceProduct == 0x1422)|| + (xr_usb_serial->DeviceProduct == 0x1424)) + + { + channel = (xr_usb_serial->channel -4)*2; + result = usb_control_msg(xr_usb_serial->dev, /* usb device */ + usb_rcvctrlpipe(xr_usb_serial->dev, 0), /* endpoint pipe */ + XR_GET_MAP_XR21B142X, /* request */ + USB_DIR_IN | USB_TYPE_VENDOR | 1, /* request_type */ + 0, /* request value */ + regnum | (channel << 8), /* index */ + value, /* data */ + 2, /* size */ + 5000); /* timeout */ + } + else + { + result = -1; + } + + if(result < 0) + dev_dbg(&xr_usb_serial->control->dev, "%s channel:%d Reg 0x%x Error:%d\n", __func__,channel,regnum,result); + else + dev_dbg(&xr_usb_serial->control->dev, "%s channel:%d 0x%x = 0x%04x\n", __func__,channel,regnum, *value); + + return result; + +} + + +int xr_usb_serial_get_reg_ext(struct xr_usb_serial *xr_usb_serial,int channel,int regnum, short *value) +{ + int result; + int XR2280xaddr = XR2280x_FUNC_MGR_OFFSET + regnum; + if((xr_usb_serial->DeviceProduct&0xfff0) == 0x1400) + { + + result = usb_control_msg(xr_usb_serial->dev, /* usb device */ + usb_rcvctrlpipe(xr_usb_serial->dev, 0), /* endpoint pipe */ + XR_GET_MAP_XR2280X, /* request */ + USB_DIR_IN | USB_TYPE_VENDOR , /* request_type */ + 0, /* request value */ + XR2280xaddr, /* index */ + value, /* data */ + 2, /* size */ + 5000); /* timeout */ + + + + } + else if((xr_usb_serial->DeviceProduct == 0x1410) || + (xr_usb_serial->DeviceProduct == 0x1412) || + (xr_usb_serial->DeviceProduct == 0x1414)) + { + unsigned char reg_value = 0; + result = usb_control_msg(xr_usb_serial->dev, /* usb device */ + usb_rcvctrlpipe(xr_usb_serial->dev, 0), /* endpoint pipe */ + XR_GET_MAP_XR21V141X, /* request */ + USB_DIR_IN | USB_TYPE_VENDOR, /* request_type */ + 0, /* request value */ + regnum | (channel << 8), /* index */ + ®_value, /* data */ + 1, /* size */ + 5000); /* timeout */ + dev_dbg(&xr_usb_serial->control->dev, "xr_usb_serial_get_reg_ext reg:%x\n",reg_value); + *value = reg_value; + } + else if(xr_usb_serial->DeviceProduct == 0x1411) + { + result = usb_control_msg(xr_usb_serial->dev, /* usb device */ + usb_rcvctrlpipe(xr_usb_serial->dev, 0), /* endpoint pipe */ + XR_GET_MAP_XR21B1411, /* request */ + USB_DIR_IN | USB_TYPE_VENDOR , /* request_type */ + 0, /* request value */ + regnum | (channel << 8), /* index */ + value, /* data */ + 2, /* size */ + 5000); /* timeout */ + } + else if((xr_usb_serial->DeviceProduct == 0x1420)|| + (xr_usb_serial->DeviceProduct == 0x1422)|| + (xr_usb_serial->DeviceProduct == 0x1424)) + { + result = usb_control_msg(xr_usb_serial->dev, /* usb device */ + usb_rcvctrlpipe(xr_usb_serial->dev, 0), /* endpoint pipe */ + XR_GET_MAP_XR21B142X, /* request */ + USB_DIR_IN | USB_TYPE_VENDOR | 1, /* request_type */ + 0, /* request value */ + regnum | (channel << 8), /* index */ + value, /* data */ + 2, /* size */ + 5000); /* timeout */ + } + else + { + result = -1; + } + + if(result < 0) + dev_dbg(&xr_usb_serial->control->dev, "%s Error:%d\n", __func__,result); + else + dev_dbg(&xr_usb_serial->control->dev, "%s channel:%d 0x%x = 0x%04x\n", __func__,channel,regnum, *value); + + return result; + +} + +struct xr21v141x_baud_rate +{ + unsigned int tx; + unsigned int rx0; + unsigned int rx1; +}; + +static struct xr21v141x_baud_rate xr21v141x_baud_rates[] = { + { 0x000, 0x000, 0x000 }, + { 0x000, 0x000, 0x000 }, + { 0x100, 0x000, 0x100 }, + { 0x020, 0x400, 0x020 }, + { 0x010, 0x100, 0x010 }, + { 0x208, 0x040, 0x208 }, + { 0x104, 0x820, 0x108 }, + { 0x844, 0x210, 0x884 }, + { 0x444, 0x110, 0x444 }, + { 0x122, 0x888, 0x224 }, + { 0x912, 0x448, 0x924 }, + { 0x492, 0x248, 0x492 }, + { 0x252, 0x928, 0x292 }, + { 0X94A, 0X4A4, 0XA52 }, + { 0X52A, 0XAA4, 0X54A }, + { 0XAAA, 0x954, 0X4AA }, + { 0XAAA, 0x554, 0XAAA }, + { 0x555, 0XAD4, 0X5AA }, + { 0XB55, 0XAB4, 0X55A }, + { 0X6B5, 0X5AC, 0XB56 }, + { 0X5B5, 0XD6C, 0X6D6 }, + { 0XB6D, 0XB6A, 0XDB6 }, + { 0X76D, 0X6DA, 0XBB6 }, + { 0XEDD, 0XDDA, 0X76E }, + { 0XDDD, 0XBBA, 0XEEE }, + { 0X7BB, 0XF7A, 0XDDE }, + { 0XF7B, 0XEF6, 0X7DE }, + { 0XDF7, 0XBF6, 0XF7E }, + { 0X7F7, 0XFEE, 0XEFE }, + { 0XFDF, 0XFBE, 0X7FE }, + { 0XF7F, 0XEFE, 0XFFE }, + { 0XFFF, 0XFFE, 0XFFD }, +}; +#define UART_CLOCK_DIVISOR_0 0x004 +#define UART_CLOCK_DIVISOR_1 0x005 +#define UART_CLOCK_DIVISOR_2 0x006 +#define UART_TX_CLOCK_MASK_0 0x007 +#define UART_TX_CLOCK_MASK_1 0x008 +#define UART_RX_CLOCK_MASK_0 0x009 +#define UART_RX_CLOCK_MASK_1 0x00a + +static int xr21v141x_set_baud_rate(struct xr_usb_serial *xr_usb_serial, unsigned int rate) +{ + unsigned int divisor = 48000000 / rate; + unsigned int i = ((32 * 48000000) / rate) & 0x1f; + unsigned int tx_mask = xr21v141x_baud_rates[i].tx; + unsigned int rx_mask = (divisor & 1) ? xr21v141x_baud_rates[i].rx1 : xr21v141x_baud_rates[i].rx0; + + dev_dbg(&xr_usb_serial->control->dev, "Setting baud rate to %d: i=%u div=%u tx=%03x rx=%03x\n", rate, i, divisor, tx_mask, rx_mask); + + xr_usb_serial_set_reg(xr_usb_serial,UART_CLOCK_DIVISOR_0, (divisor >> 0) & 0xff); + xr_usb_serial_set_reg(xr_usb_serial,UART_CLOCK_DIVISOR_1, (divisor >> 8) & 0xff); + xr_usb_serial_set_reg(xr_usb_serial,UART_CLOCK_DIVISOR_2, (divisor >> 16) & 0xff); + xr_usb_serial_set_reg(xr_usb_serial,UART_TX_CLOCK_MASK_0, (tx_mask >> 0) & 0xff); + xr_usb_serial_set_reg(xr_usb_serial,UART_TX_CLOCK_MASK_1, (tx_mask >> 8) & 0xff); + xr_usb_serial_set_reg(xr_usb_serial,UART_RX_CLOCK_MASK_0, (rx_mask >> 0) & 0xff); + xr_usb_serial_set_reg(xr_usb_serial,UART_RX_CLOCK_MASK_1, (rx_mask >> 8) & 0xff); + + return 0; +} +/* devices aren't required to support these requests. + * the cdc xr_usb_serial descriptor tells whether they do... + */ +int xr_usb_serial_set_control(struct xr_usb_serial *xr_usb_serial, unsigned int control) +{ + int ret = 0; + + if((xr_usb_serial->DeviceProduct == 0x1410) || + (xr_usb_serial->DeviceProduct == 0x1412) || + (xr_usb_serial->DeviceProduct == 0x1414)) + { + if (control & XR_USB_SERIAL_CTRL_DTR) + xr_usb_serial_set_reg(xr_usb_serial,xr_usb_serial->reg_map.uart_gpio_clr_addr, 0x08); + else + xr_usb_serial_set_reg(xr_usb_serial,xr_usb_serial->reg_map.uart_gpio_set_addr, 0x08); + + if (control & XR_USB_SERIAL_CTRL_RTS) + xr_usb_serial_set_reg(xr_usb_serial,xr_usb_serial->reg_map.uart_gpio_clr_addr, 0x20); + else + xr_usb_serial_set_reg(xr_usb_serial,xr_usb_serial->reg_map.uart_gpio_set_addr, 0x20); + } + else + { + ret = xr_usb_serial_ctrl_msg(xr_usb_serial, USB_CDC_REQ_SET_CONTROL_LINE_STATE, control, NULL, 0); + } + + return ret; +} + +int xr_usb_serial_set_line(struct xr_usb_serial *xr_usb_serial, struct usb_cdc_line_coding* line) + { + int ret = 0; + unsigned int format_size; + unsigned int format_parity; + unsigned int format_stop; + if((xr_usb_serial->DeviceProduct == 0x1410) || + (xr_usb_serial->DeviceProduct == 0x1412) || + (xr_usb_serial->DeviceProduct == 0x1414)) + { + xr21v141x_set_baud_rate(xr_usb_serial,line->dwDTERate); + format_size = line->bDataBits; + format_parity = line->bParityType; + format_stop = line->bCharFormat; + xr_usb_serial_set_reg(xr_usb_serial, + xr_usb_serial->reg_map.uart_format_addr, + (format_size << 0) | (format_parity << 4) | (format_stop << 7) ); + + } + else + { + ret = xr_usb_serial_ctrl_msg(xr_usb_serial, USB_CDC_REQ_SET_LINE_CODING, 0, line, sizeof *(line)); + } + return ret; + } + int xr_usb_serial_set_flow_mode(struct xr_usb_serial *xr_usb_serial, + struct tty_struct *tty, unsigned int cflag) + { + unsigned int flow; + unsigned int gpio_mode; + + if (cflag & CRTSCTS) + { + dev_dbg(&xr_usb_serial->control->dev, "xr_usb_serial_set_flow_mode:hardware\n"); + flow = UART_FLOW_MODE_HW; + gpio_mode = UART_GPIO_MODE_SEL_RTS_CTS; + } + else if (I_IXOFF(tty) || I_IXON(tty)) + { + unsigned char start_char = START_CHAR(tty); + unsigned char stop_char = STOP_CHAR(tty); + dev_dbg(&xr_usb_serial->control->dev, "xr_usb_serial_set_flow_mode:software\n"); + flow = UART_FLOW_MODE_SW; + gpio_mode = UART_GPIO_MODE_SEL_GPIO; + + xr_usb_serial_set_reg(xr_usb_serial, xr_usb_serial->reg_map.uart_xon_char_addr, start_char); + xr_usb_serial_set_reg(xr_usb_serial, xr_usb_serial->reg_map.uart_xoff_char_addr, stop_char); + } + else + { + dev_dbg(&xr_usb_serial->control->dev, "xr_usb_serial_set_flow_mode:none\n"); + flow = UART_FLOW_MODE_NONE; + gpio_mode = UART_GPIO_MODE_SEL_GPIO; + } + // rs485,rs422 FD/HD mode + if (xr_usb_serial->rs485_422_en) { + xr_usb_serial_set_reg(xr_usb_serial, xr_usb_serial->reg_map.uart_flow_addr, 0x00); + xr_usb_serial_set_reg(xr_usb_serial, xr_usb_serial->reg_map.uart_gpio_mode_addr, 0x0B); + } else { + //rs232, default mode + xr_usb_serial_set_reg(xr_usb_serial, xr_usb_serial->reg_map.uart_flow_addr, flow); + xr_usb_serial_set_reg(xr_usb_serial, xr_usb_serial->reg_map.uart_gpio_mode_addr, gpio_mode); + } + return 0; + + + } + +int xr_usb_serial_send_break(struct xr_usb_serial *xr_usb_serial, int state) +{ + int ret = 0; + if((xr_usb_serial->DeviceProduct == 0x1410)|| + (xr_usb_serial->DeviceProduct == 0x1412)|| + (xr_usb_serial->DeviceProduct == 0x1414)) + { + if(state) + ret = xr_usb_serial_set_reg(xr_usb_serial,xr_usb_serial->reg_map.tx_break_addr,0xffff); + else + ret = xr_usb_serial_set_reg(xr_usb_serial,xr_usb_serial->reg_map.tx_break_addr,0); + } + else + { + ret = xr_usb_serial_ctrl_msg(xr_usb_serial, USB_CDC_REQ_SEND_BREAK, state, NULL, 0); + } + return ret; +} + +#define URM_REG_BLOCK 4 +#define URM_ENABLE_BASE 0x010 +#define URM_ENABLE_0_TX 0x001 +#define URM_ENABLE_0_RX 0x002 + +int xr_usb_serial_enable(struct xr_usb_serial *xr_usb_serial) +{ + int ret = 0; + int channel = xr_usb_serial->channel; + if((xr_usb_serial->DeviceProduct == 0x1410)|| + (xr_usb_serial->DeviceProduct == 0x1412)|| + (xr_usb_serial->DeviceProduct == 0x1414)) + { + ret = xr_usb_serial_set_reg_ext(xr_usb_serial,URM_REG_BLOCK,URM_ENABLE_BASE + channel,URM_ENABLE_0_TX); + ret = xr_usb_serial_set_reg(xr_usb_serial,xr_usb_serial->reg_map.uart_enable_addr,UART_ENABLE_TX | UART_ENABLE_RX); + ret = xr_usb_serial_set_reg_ext(xr_usb_serial,URM_REG_BLOCK,URM_ENABLE_BASE + channel,URM_ENABLE_0_TX | URM_ENABLE_0_RX); + } + else + { + ret = xr_usb_serial_set_reg(xr_usb_serial,xr_usb_serial->reg_map.uart_enable_addr,UART_ENABLE_TX | UART_ENABLE_RX); + } + + return ret; +} +int xr_usb_serial_disable(struct xr_usb_serial *xr_usb_serial) +{ + int ret = 0; + int channel = xr_usb_serial->channel; + ret = xr_usb_serial_set_reg(xr_usb_serial,xr_usb_serial->reg_map.uart_enable_addr,0); + if((xr_usb_serial->DeviceProduct == 0x1410)|| + (xr_usb_serial->DeviceProduct == 0x1412)|| + (xr_usb_serial->DeviceProduct == 0x1414)) + { + ret = xr_usb_serial_set_reg_ext(xr_usb_serial,URM_REG_BLOCK,URM_ENABLE_BASE + channel,URM_ENABLE_0_TX); + } + + return ret; +} +int xr_usb_serial_set_loopback(struct xr_usb_serial *xr_usb_serial, int channel) +{ + int ret = 0; + xr_usb_serial_disable(xr_usb_serial); + ret = xr_usb_serial_set_reg_ext(xr_usb_serial,channel, + xr_usb_serial->reg_map.uart_loopback_addr,0x07); + xr_usb_serial_enable(xr_usb_serial); + return ret; +} + + +static int xr_usb_serial_tiocmget(struct xr_usb_serial *xr_usb_serial) + +{ + short data; + int result; + result = xr_usb_serial_get_reg(xr_usb_serial,xr_usb_serial->reg_map.uart_gpio_status_addr, &data); + dev_dbg(&xr_usb_serial->control->dev, "xr_usb_serial_tiocmget uart_gpio_status_addr:0x%04x\n",data); + if (result) + return ((data & 0x8) ? 0: TIOCM_DTR) | ((data & 0x20) ? 0:TIOCM_RTS ) | ((data & 0x4) ? 0:TIOCM_DSR) | ((data & 0x1) ? 0 : TIOCM_RI) | ((data & 0x2) ? 0:TIOCM_CD) | ((data & 0x10) ? 0 : TIOCM_CTS); + else + return -EFAULT; +} +static int xr_usb_serial_tiocmset(struct xr_usb_serial *xr_usb_serial, + + unsigned int set, unsigned int clear) + +{ + unsigned int newctrl = 0; + newctrl = xr_usb_serial->ctrlout; + + set = (set & TIOCM_DTR ? XR_USB_SERIAL_CTRL_DTR : 0) | (set & TIOCM_RTS ? XR_USB_SERIAL_CTRL_RTS : 0); + + clear = (clear & TIOCM_DTR ? XR_USB_SERIAL_CTRL_DTR : 0) | (clear & TIOCM_RTS ? XR_USB_SERIAL_CTRL_RTS : 0); + + newctrl = (newctrl & ~clear) | set; + + if (xr_usb_serial->ctrlout == newctrl) + return 0; + + xr_usb_serial->ctrlout = newctrl; + + if (newctrl & XR_USB_SERIAL_CTRL_DTR) + xr_usb_serial_set_reg(xr_usb_serial, xr_usb_serial->reg_map.uart_gpio_clr_addr, 0x08); + else + xr_usb_serial_set_reg(xr_usb_serial, xr_usb_serial->reg_map.uart_gpio_set_addr, 0x08); + + if (newctrl & XR_USB_SERIAL_CTRL_RTS) + xr_usb_serial_set_reg(xr_usb_serial, xr_usb_serial->reg_map.uart_gpio_clr_addr, 0x20); + else + xr_usb_serial_set_reg(xr_usb_serial, xr_usb_serial->reg_map.uart_gpio_set_addr, 0x20); + + return 0; +} + + +static struct reg_addr_map xr21b140x_reg_map; +static struct reg_addr_map xr21b1411_reg_map; +static struct reg_addr_map xr21v141x_reg_map; +static struct reg_addr_map xr21b142x_reg_map; + +static void init_xr21b140x_reg_map(void) +{ + xr21b140x_reg_map.uart_enable_addr = 0x00; + xr21b140x_reg_map.uart_format_addr = 0x05; + xr21b140x_reg_map.uart_flow_addr = 0x06; + xr21b140x_reg_map.uart_loopback_addr = 0x16; + xr21b140x_reg_map.uart_xon_char_addr = 0x07; + xr21b140x_reg_map.uart_xoff_char_addr = 0x08; + xr21b140x_reg_map.uart_gpio_mode_addr = 0x0c; + xr21b140x_reg_map.uart_gpio_dir_addr = 0x0d; + xr21b140x_reg_map.uart_gpio_set_addr = 0x0e; + xr21b140x_reg_map.uart_gpio_clr_addr = 0x0f; + xr21b140x_reg_map.uart_gpio_status_addr = 0x10; + xr21b140x_reg_map.tx_break_addr = 0x0a; + xr21b140x_reg_map.uart_custom_driver = 0x41; +} + +static void init_xr21b1411_reg_map(void) +{ + xr21b1411_reg_map.uart_enable_addr = 0xc00; + xr21b1411_reg_map.uart_flow_addr = 0xc06; + xr21b1411_reg_map.uart_loopback_addr = 0xc16; + xr21b1411_reg_map.uart_xon_char_addr = 0xc07; + xr21b1411_reg_map.uart_xoff_char_addr = 0xc08; + xr21b1411_reg_map.uart_gpio_mode_addr = 0xc0c; + xr21b1411_reg_map.uart_gpio_dir_addr = 0xc0d; + xr21b1411_reg_map.uart_gpio_set_addr = 0xc0e; + xr21b1411_reg_map.uart_gpio_clr_addr = 0xc0f; + xr21b1411_reg_map.uart_gpio_status_addr = 0xc10; + xr21b1411_reg_map.tx_break_addr = 0xc0a; + xr21b1411_reg_map.uart_custom_driver = 0x20d; +} + +static void init_xr21v141x_reg_map(void) +{ + xr21v141x_reg_map.uart_enable_addr = 0x03; + xr21v141x_reg_map.uart_format_addr = 0x0b; + xr21v141x_reg_map.uart_flow_addr = 0x0c; + xr21v141x_reg_map.uart_loopback_addr = 0x12; + xr21v141x_reg_map.uart_xon_char_addr = 0x10; + xr21v141x_reg_map.uart_xoff_char_addr = 0x11; + xr21v141x_reg_map.uart_gpio_mode_addr = 0x1a; + xr21v141x_reg_map.uart_gpio_dir_addr = 0x1b; + xr21v141x_reg_map.uart_gpio_set_addr = 0x1d; + xr21v141x_reg_map.uart_gpio_clr_addr = 0x1e; + xr21v141x_reg_map.uart_gpio_status_addr = 0x1f; + xr21v141x_reg_map.tx_break_addr = 0x14; +} +static void init_xr21b142x_reg_map(void) +{ + xr21b142x_reg_map.uart_enable_addr = 0x00; + xr21b142x_reg_map.uart_flow_addr = 0x06; + xr21b142x_reg_map.uart_loopback_addr = 0x16; + xr21b142x_reg_map.uart_xon_char_addr = 0x07; + xr21b142x_reg_map.uart_xoff_char_addr = 0x08; + xr21b142x_reg_map.uart_gpio_mode_addr = 0x0c; + xr21b142x_reg_map.uart_gpio_dir_addr = 0x0d; + xr21b142x_reg_map.uart_gpio_set_addr = 0x0e; + xr21b142x_reg_map.uart_gpio_clr_addr = 0x0f; + xr21b142x_reg_map.uart_gpio_status_addr = 0x10; + xr21b140x_reg_map.tx_break_addr = 0x0a; + xr21b140x_reg_map.uart_custom_driver = 0x60; + xr21b140x_reg_map.uart_low_latency = 0x46; +} + +int xr_usb_serial_pre_setup(struct xr_usb_serial *xr_usb_serial) +{ + int ret = 0; + + init_xr21b140x_reg_map(); + init_xr21b1411_reg_map(); + init_xr21v141x_reg_map(); + init_xr21b142x_reg_map(); + if((xr_usb_serial->DeviceProduct&0xfff0) == 0x1400) + { + memcpy(&(xr_usb_serial->reg_map),&xr21b140x_reg_map,sizeof(struct reg_addr_map)); + + } + else if(xr_usb_serial->DeviceProduct == 0x1411) + { + memcpy(&(xr_usb_serial->reg_map),&xr21b1411_reg_map,sizeof(struct reg_addr_map)); + } + else if((xr_usb_serial->DeviceProduct == 0x1410)|| + (xr_usb_serial->DeviceProduct == 0x1412)|| + (xr_usb_serial->DeviceProduct == 0x1414)) + { + memcpy(&(xr_usb_serial->reg_map),&xr21v141x_reg_map,sizeof(struct reg_addr_map)); + } + else if((xr_usb_serial->DeviceProduct == 0x1420)|| + (xr_usb_serial->DeviceProduct == 0x1422)|| + (xr_usb_serial->DeviceProduct == 0x1424)) + { + memcpy(&(xr_usb_serial->reg_map),&xr21b142x_reg_map,sizeof(struct reg_addr_map)); + } + else + { + ret = -1; + } + if(xr_usb_serial->reg_map.uart_custom_driver) + xr_usb_serial_set_reg(xr_usb_serial, xr_usb_serial->reg_map.uart_custom_driver, 1); + + xr_usb_serial_set_reg(xr_usb_serial, xr_usb_serial->reg_map.uart_gpio_mode_addr, 0); + xr_usb_serial_set_reg(xr_usb_serial, xr_usb_serial->reg_map.uart_gpio_dir_addr, 0x28); + xr_usb_serial_set_reg(xr_usb_serial, xr_usb_serial->reg_map.uart_gpio_set_addr, UART_GPIO_SET_DTR | UART_GPIO_SET_RTS); + + return ret; + +} + + + --- linux-azure-5.8-5.8.0.orig/ubuntu/xr-usb-serial/xr_usb_serial_ioctl.h +++ linux-azure-5.8-5.8.0/ubuntu/xr-usb-serial/xr_usb_serial_ioctl.h @@ -0,0 +1,31 @@ +/* + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; either version 2 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA + */ + +#include + +#define XR_USB_SERIAL_IOC_MAGIC 'v' + +#define XR_USB_SERIAL_GET_REG _IOWR(XR_USB_SERIAL_IOC_MAGIC, 1, int) +#define XR_USB_SERIAL_SET_REG _IOWR(XR_USB_SERIAL_IOC_MAGIC, 2, int) +#define XR_USB_SERIAL_SET_ADDRESS_MATCH _IO(XR_USB_SERIAL_IOC_MAGIC, 3) +#define XR_USB_SERIAL_SET_PRECISE_FLAGS _IO(XR_USB_SERIAL_IOC_MAGIC, 4) +#define XR_USB_SERIAL_TEST_MODE _IO(XR_USB_SERIAL_IOC_MAGIC, 5) +#define XR_USB_SERIAL_LOOPBACK _IO(XR_USB_SERIAL_IOC_MAGIC, 6) + +#define VZ_ADDRESS_UNICAST_S 0 +#define VZ_ADDRESS_BROADCAST_S 8 +#define VZ_ADDRESS_MATCH(U, B) (0x8000000 | ((B) << VZ_ADDRESS_BROADCAST_S) | ((U) << VZ_ADDRESS_UNICAST_S)) +#define VZ_ADDRESS_MATCH_DISABLE 0 --- linux-azure-5.8-5.8.0.orig/update-version-dkms +++ linux-azure-5.8-5.8.0/update-version-dkms @@ -0,0 +1,58 @@ +#!/bin/bash + +if [ "$#" -ne 1 ]; then + echo "Usage: $0 " 1>&2 + exit 1 +fi +pocket="$1" + +case "$pocket" in +proposed) pocket_list="-$pocket -updates -release" ;; +updates|security) pocket_list="-$pocket -release" ;; +release) pocket_list="-release" ;; +*) + echo "$0: $pocket: unknown archive pocket" 1>&2 + exit 1 + ;; +esac + +# find our changelog. +debian=$(awk -F= '($1 == "DEBIAN") { print $2 }' "debian/dkms-versions.new" +while read package version remainder +do + for pocket_raw in $pocket_list + do + pocket="${pocket_raw#-release}" + read x x pocket_version x <&2 + exit 1 + else + echo "$package: $pocket_version found in $pocket_raw" + fi + if [ "$version" != "$pocket_version" ]; then + echo "$package: updated to $pocket_version" + fi + echo "$package $pocket_version $remainder" | sed -e 's/ *$//' >>"debian/dkms-versions.new" +done <"debian/dkms-versions" +if ! cmp -s "debian/dkms-versions.new" "debian/dkms-versions"; then + mv -f "debian/dkms-versions.new" "debian/dkms-versions" + git commit -s -m "UBUNTU: update dkms package versions" \ + -m "BugLink: https://bugs.launchpad.net/bugs/1786013" \ + "debian/dkms-versions" +else + rm -f "debian/dkms-versions.new" +fi --- linux-azure-5.8-5.8.0.orig/virt/kvm/kvm_main.c +++ linux-azure-5.8-5.8.0/virt/kvm/kvm_main.c @@ -427,10 +427,10 @@ * count is also read inside the mmu_lock critical section. */ kvm->mmu_notifier_count++; - need_tlb_flush = kvm_unmap_hva_range(kvm, range->start, range->end); - need_tlb_flush |= kvm->tlbs_dirty; + need_tlb_flush = kvm_unmap_hva_range(kvm, range->start, range->end, + range->flags); /* we've to flush the tlb before the pages can be freed */ - if (need_tlb_flush) + if (need_tlb_flush || kvm->tlbs_dirty) kvm_flush_remote_tlbs(kvm); spin_unlock(&kvm->mmu_lock); @@ -1231,6 +1231,7 @@ return -EINVAL; /* We can read the guest memory with __xxx_user() later on. */ if ((mem->userspace_addr & (PAGE_SIZE - 1)) || + (mem->userspace_addr != untagged_addr(mem->userspace_addr)) || !access_ok((void __user *)(unsigned long)mem->userspace_addr, mem->memory_size)) return -EINVAL; @@ -1820,10 +1821,12 @@ bool write_fault, bool *writable, kvm_pfn_t *p_pfn) { - unsigned long pfn; + kvm_pfn_t pfn; + pte_t *ptep; + spinlock_t *ptl; int r; - r = follow_pfn(vma, addr, &pfn); + r = follow_pte(vma->vm_mm, addr, &ptep, &ptl); if (r) { /* * get_user_pages fails for VM_IO and VM_PFNMAP vmas and does @@ -1838,14 +1841,19 @@ if (r) return r; - r = follow_pfn(vma, addr, &pfn); + r = follow_pte(vma->vm_mm, addr, &ptep, &ptl); if (r) return r; + } + if (write_fault && !pte_write(*ptep)) { + pfn = KVM_PFN_ERR_RO_FAULT; + goto out; } if (writable) - *writable = true; + *writable = pte_write(*ptep); + pfn = pte_pfn(*ptep); /* * Get a reference here because callers of *hva_to_pfn* and @@ -1860,6 +1868,8 @@ */ kvm_get_pfn(pfn); +out: + pte_unmap_unlock(ptep, ptl); *p_pfn = pfn; return 0; } @@ -4268,7 +4278,7 @@ void kvm_io_bus_unregister_dev(struct kvm *kvm, enum kvm_bus bus_idx, struct kvm_io_device *dev) { - int i; + int i, j; struct kvm_io_bus *new_bus, *bus; bus = kvm_get_bus(kvm, bus_idx); @@ -4285,17 +4295,20 @@ new_bus = kmalloc(struct_size(bus, range, bus->dev_count - 1), GFP_KERNEL_ACCOUNT); - if (!new_bus) { + if (new_bus) { + memcpy(new_bus, bus, sizeof(*bus) + i * sizeof(struct kvm_io_range)); + new_bus->dev_count--; + memcpy(new_bus->range + i, bus->range + i + 1, + (new_bus->dev_count - i) * sizeof(struct kvm_io_range)); + } else { pr_err("kvm: failed to shrink bus, removing it completely\n"); - goto broken; + for (j = 0; j < bus->dev_count; j++) { + if (j == i) + continue; + kvm_iodevice_destructor(bus->range[j].dev); + } } - memcpy(new_bus, bus, sizeof(*bus) + i * sizeof(struct kvm_io_range)); - new_bus->dev_count--; - memcpy(new_bus->range + i, bus->range + i + 1, - (new_bus->dev_count - i) * sizeof(struct kvm_io_range)); - -broken: rcu_assign_pointer(kvm->buses[bus_idx], new_bus); synchronize_srcu_expedited(&kvm->srcu); kfree(bus);